diff --git a/build.ts b/build.ts index dfcc8d3..18fabc9 100644 --- a/build.ts +++ b/build.ts @@ -1,12 +1,21 @@ import { build } from 'esbuild' -;(async () => { - const res = await build({ +void (async () => { + await build({ entryPoints: ['./src/index.ts'], bundle: true, minify: true, + keepNames: true, + sourcemap: 'inline', + sourcesContent: true, outfile: './dist/index.js', platform: 'node', format: 'cjs', - external: [''], + define: { + 'process.env.NODE_ENV': `"production"`, + }, + metafile: true, + alias: { + '@': './src', + }, }) })() diff --git a/dist/index.js b/dist/index.js index f7066bd..832219a 100644 --- a/dist/index.js +++ b/dist/index.js @@ -1,51 +1,51 @@ #!/usr/bin/env node -"use strict";var YU=Object.create;var g4=Object.defineProperty;var QU=Object.getOwnPropertyDescriptor;var XU=Object.getOwnPropertyNames;var ej=Object.getPrototypeOf,tj=Object.prototype.hasOwnProperty;var pi=(t,e)=>()=>(t&&(e=t(t=0)),e);var b=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Ik=(t,e)=>{for(var r in e)g4(t,r,{get:e[r],enumerable:!0})},Mk=(t,e,r,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of XU(e))!tj.call(t,a)&&a!==r&&g4(t,a,{get:()=>e[a],enumerable:!(i=QU(e,a))||i.enumerable});return t};var Fr=(t,e,r)=>(r=t!=null?YU(ej(t)):{},Mk(e||!t||!t.__esModule?g4(r,"default",{value:t,enumerable:!0}):r,t)),J9=t=>Mk(g4({},"__esModule",{value:!0}),t);var b4=b(mi=>{"use strict";Object.defineProperty(mi,"__esModule",{value:!0});mi.output=mi.exists=mi.hash=mi.bytes=mi.bool=mi.number=void 0;function y4(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}mi.number=y4;function Dk(t){if(typeof t!="boolean")throw new Error(`Expected boolean, not ${t}`)}mi.bool=Dk;function Y9(t,...e){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}mi.bytes=Y9;function Rk(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");y4(t.outputLen),y4(t.blockLen)}mi.hash=Rk;function Bk(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}mi.exists=Bk;function Ck(t,e){Y9(t);let r=e.outputLen;if(t.length{"use strict";Object.defineProperty(S4,"__esModule",{value:!0});S4.crypto=void 0;var v4=require("node:crypto");S4.crypto=v4&&typeof v4=="object"&&"webcrypto"in v4?v4.webcrypto:void 0});var An=b(ze=>{"use strict";Object.defineProperty(ze,"__esModule",{value:!0});ze.randomBytes=ze.wrapXOFConstructorWithOpts=ze.wrapConstructorWithOpts=ze.wrapConstructor=ze.checkOpts=ze.Hash=ze.concatBytes=ze.toBytes=ze.utf8ToBytes=ze.asyncLoop=ze.nextTick=ze.hexToBytes=ze.bytesToHex=ze.isLE=ze.rotr=ze.createView=ze.u32=ze.u8=void 0;var Q9=Ok(),ey=t=>t instanceof Uint8Array,ij=t=>new Uint8Array(t.buffer,t.byteOffset,t.byteLength);ze.u8=ij;var aj=t=>new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4));ze.u32=aj;var nj=t=>new DataView(t.buffer,t.byteOffset,t.byteLength);ze.createView=nj;var sj=(t,e)=>t<<32-e|t>>>e;ze.rotr=sj;ze.isLE=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!ze.isLE)throw new Error("Non little-endian hardware is not supported");var oj=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function lj(t){if(!ey(t))throw new Error("Uint8Array expected");let e="";for(let r=0;r{};ze.nextTick=uj;async function cj(t,e,r){let i=Date.now();for(let a=0;a=0&&ni+a.length,0)),r=0;return t.forEach(i=>{if(!ey(i))throw new Error("Uint8Array expected");e.set(i,r),r+=i.length}),e}ze.concatBytes=pj;var X9=class{clone(){return this._cloneInto()}};ze.Hash=X9;var mj={}.toString;function fj(t,e){if(e!==void 0&&mj.call(e)!=="[object Object]")throw new Error("Options should be object or undefined");return Object.assign(t,e)}ze.checkOpts=fj;function hj(t){let e=i=>t().update(w4(i)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}ze.wrapConstructor=hj;function gj(t){let e=(i,a)=>t(a).update(w4(i)).digest(),r=t({});return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=i=>t(i),e}ze.wrapConstructorWithOpts=gj;function yj(t){let e=(i,a)=>t(a).update(w4(i)).digest(),r=t({});return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=i=>t(i),e}ze.wrapXOFConstructorWithOpts=yj;function bj(t=32){if(Q9.crypto&&typeof Q9.crypto.getRandomValues=="function")return Q9.crypto.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}ze.randomBytes=bj});var iy=b(x4=>{"use strict";Object.defineProperty(x4,"__esModule",{value:!0});x4.SHA2=void 0;var ty=b4(),zp=An();function vj(t,e,r,i){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,i);let a=BigInt(32),n=BigInt(4294967295),s=Number(r>>a&n),o=Number(r&n),l=i?4:0,d=i?0:4;t.setUint32(e+l,s,i),t.setUint32(e+d,o,i)}var ry=class extends zp.Hash{constructor(e,r,i,a){super(),this.blockLen=e,this.outputLen=r,this.padOffset=i,this.isLE=a,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=(0,zp.createView)(this.buffer)}update(e){(0,ty.exists)(this);let{view:r,buffer:i,blockLen:a}=this;e=(0,zp.toBytes)(e);let n=e.length;for(let s=0;sa-s&&(this.process(i,0),s=0);for(let c=s;cu.length)throw new Error("_sha2: outputLen bigger than state");for(let c=0;c{"use strict";Object.defineProperty(ve,"__esModule",{value:!0});ve.add5L=ve.add5H=ve.add4H=ve.add4L=ve.add3H=ve.add3L=ve.add=ve.rotlBL=ve.rotlBH=ve.rotlSL=ve.rotlSH=ve.rotr32L=ve.rotr32H=ve.rotrBL=ve.rotrBH=ve.rotrSL=ve.rotrSH=ve.shrSL=ve.shrSH=ve.toBig=ve.split=ve.fromBig=void 0;var A4=BigInt(2**32-1),ay=BigInt(32);function ny(t,e=!1){return e?{h:Number(t&A4),l:Number(t>>ay&A4)}:{h:Number(t>>ay&A4)|0,l:Number(t&A4)|0}}ve.fromBig=ny;function qk(t,e=!1){let r=new Uint32Array(t.length),i=new Uint32Array(t.length);for(let a=0;aBigInt(t>>>0)<>>0);ve.toBig=Wk;var Vk=(t,e,r)=>t>>>r;ve.shrSH=Vk;var Fk=(t,e,r)=>t<<32-r|e>>>r;ve.shrSL=Fk;var Kk=(t,e,r)=>t>>>r|e<<32-r;ve.rotrSH=Kk;var Lk=(t,e,r)=>t<<32-r|e>>>r;ve.rotrSL=Lk;var Uk=(t,e,r)=>t<<64-r|e>>>r-32;ve.rotrBH=Uk;var jk=(t,e,r)=>t>>>r-32|e<<64-r;ve.rotrBL=jk;var Hk=(t,e)=>e;ve.rotr32H=Hk;var $k=(t,e)=>t;ve.rotr32L=$k;var Gk=(t,e,r)=>t<>>32-r;ve.rotlSH=Gk;var Zk=(t,e,r)=>e<>>32-r;ve.rotlSL=Zk;var Jk=(t,e,r)=>e<>>64-r;ve.rotlBH=Jk;var Yk=(t,e,r)=>t<>>64-r;ve.rotlBL=Yk;function Qk(t,e,r,i){let a=(e>>>0)+(i>>>0);return{h:t+r+(a/2**32|0)|0,l:a|0}}ve.add=Qk;var Xk=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0);ve.add3L=Xk;var eE=(t,e,r,i)=>e+r+i+(t/2**32|0)|0;ve.add3H=eE;var tE=(t,e,r,i)=>(t>>>0)+(e>>>0)+(r>>>0)+(i>>>0);ve.add4L=tE;var rE=(t,e,r,i,a)=>e+r+i+a+(t/2**32|0)|0;ve.add4H=rE;var iE=(t,e,r,i,a)=>(t>>>0)+(e>>>0)+(r>>>0)+(i>>>0)+(a>>>0);ve.add5L=iE;var aE=(t,e,r,i,a,n)=>e+r+i+a+n+(t/2**32|0)|0;ve.add5H=aE;var Sj={fromBig:ny,split:qk,toBig:Wk,shrSH:Vk,shrSL:Fk,rotrSH:Kk,rotrSL:Lk,rotrBH:Uk,rotrBL:jk,rotr32H:Hk,rotr32L:$k,rotlSH:Gk,rotlSL:Zk,rotlBH:Jk,rotlBL:Yk,add:Qk,add3L:Xk,add3H:eE,add4L:tE,add4H:rE,add5H:aE,add5L:iE};ve.default=Sj});var nE=b(Ui=>{"use strict";Object.defineProperty(Ui,"__esModule",{value:!0});Ui.sha384=Ui.sha512_256=Ui.sha512_224=Ui.sha512=Ui.SHA512=void 0;var wj=iy(),Ie=sy(),_4=An(),[xj,Aj]=(()=>Ie.default.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(t=>BigInt(t))))(),Ss=new Uint32Array(80),ws=new Uint32Array(80),Yo=class extends wj.SHA2{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:e,Al:r,Bh:i,Bl:a,Ch:n,Cl:s,Dh:o,Dl:l,Eh:d,El:u,Fh:c,Fl:w,Gh:k,Gl:z,Hh:_,Hl:T}=this;return[e,r,i,a,n,s,o,l,d,u,c,w,k,z,_,T]}set(e,r,i,a,n,s,o,l,d,u,c,w,k,z,_,T){this.Ah=e|0,this.Al=r|0,this.Bh=i|0,this.Bl=a|0,this.Ch=n|0,this.Cl=s|0,this.Dh=o|0,this.Dl=l|0,this.Eh=d|0,this.El=u|0,this.Fh=c|0,this.Fl=w|0,this.Gh=k|0,this.Gl=z|0,this.Hh=_|0,this.Hl=T|0}process(e,r){for(let R=0;R<16;R++,r+=4)Ss[R]=e.getUint32(r),ws[R]=e.getUint32(r+=4);for(let R=16;R<80;R++){let B=Ss[R-15]|0,q=ws[R-15]|0,K=Ie.default.rotrSH(B,q,1)^Ie.default.rotrSH(B,q,8)^Ie.default.shrSH(B,q,7),j=Ie.default.rotrSL(B,q,1)^Ie.default.rotrSL(B,q,8)^Ie.default.shrSL(B,q,7),G=Ss[R-2]|0,ne=ws[R-2]|0,oe=Ie.default.rotrSH(G,ne,19)^Ie.default.rotrBH(G,ne,61)^Ie.default.shrSH(G,ne,6),Y=Ie.default.rotrSL(G,ne,19)^Ie.default.rotrBL(G,ne,61)^Ie.default.shrSL(G,ne,6),ce=Ie.default.add4L(j,Y,ws[R-7],ws[R-16]),I=Ie.default.add4H(ce,K,oe,Ss[R-7],Ss[R-16]);Ss[R]=I|0,ws[R]=ce|0}let{Ah:i,Al:a,Bh:n,Bl:s,Ch:o,Cl:l,Dh:d,Dl:u,Eh:c,El:w,Fh:k,Fl:z,Gh:_,Gl:T,Hh:D,Hl:V}=this;for(let R=0;R<80;R++){let B=Ie.default.rotrSH(c,w,14)^Ie.default.rotrSH(c,w,18)^Ie.default.rotrBH(c,w,41),q=Ie.default.rotrSL(c,w,14)^Ie.default.rotrSL(c,w,18)^Ie.default.rotrBL(c,w,41),K=c&k^~c&_,j=w&z^~w&T,G=Ie.default.add5L(V,q,j,Aj[R],ws[R]),ne=Ie.default.add5H(G,D,B,K,xj[R],Ss[R]),oe=G|0,Y=Ie.default.rotrSH(i,a,28)^Ie.default.rotrBH(i,a,34)^Ie.default.rotrBH(i,a,39),ce=Ie.default.rotrSL(i,a,28)^Ie.default.rotrBL(i,a,34)^Ie.default.rotrBL(i,a,39),I=i&n^i&o^n&o,p=a&s^a&l^s&l;D=_|0,V=T|0,_=k|0,T=z|0,k=c|0,z=w|0,{h:c,l:w}=Ie.default.add(d|0,u|0,ne|0,oe|0),d=o|0,u=l|0,o=n|0,l=s|0,n=i|0,s=a|0;let h=Ie.default.add3L(oe,ce,p);i=Ie.default.add3H(h,ne,Y,I),a=h|0}({h:i,l:a}=Ie.default.add(this.Ah|0,this.Al|0,i|0,a|0)),{h:n,l:s}=Ie.default.add(this.Bh|0,this.Bl|0,n|0,s|0),{h:o,l}=Ie.default.add(this.Ch|0,this.Cl|0,o|0,l|0),{h:d,l:u}=Ie.default.add(this.Dh|0,this.Dl|0,d|0,u|0),{h:c,l:w}=Ie.default.add(this.Eh|0,this.El|0,c|0,w|0),{h:k,l:z}=Ie.default.add(this.Fh|0,this.Fl|0,k|0,z|0),{h:_,l:T}=Ie.default.add(this.Gh|0,this.Gl|0,_|0,T|0),{h:D,l:V}=Ie.default.add(this.Hh|0,this.Hl|0,D|0,V|0),this.set(i,a,n,s,o,l,d,u,c,w,k,z,_,T,D,V)}roundClean(){Ss.fill(0),ws.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};Ui.SHA512=Yo;var oy=class extends Yo{constructor(){super(),this.Ah=-1942145080,this.Al=424955298,this.Bh=1944164710,this.Bl=-1982016298,this.Ch=502970286,this.Cl=855612546,this.Dh=1738396948,this.Dl=1479516111,this.Eh=258812777,this.El=2077511080,this.Fh=2011393907,this.Fl=79989058,this.Gh=1067287976,this.Gl=1780299464,this.Hh=286451373,this.Hl=-1848208735,this.outputLen=28}},ly=class extends Yo{constructor(){super(),this.Ah=573645204,this.Al=-64227540,this.Bh=-1621794909,this.Bl=-934517566,this.Ch=596883563,this.Cl=1867755857,this.Dh=-1774684391,this.Dl=1497426621,this.Eh=-1775747358,this.El=-1467023389,this.Fh=-1101128155,this.Fl=1401305490,this.Gh=721525244,this.Gl=746961066,this.Hh=246885852,this.Hl=-2117784414,this.outputLen=32}},dy=class extends Yo{constructor(){super(),this.Ah=-876896931,this.Al=-1056596264,this.Bh=1654270250,this.Bl=914150663,this.Ch=-1856437926,this.Cl=812702999,this.Dh=355462360,this.Dl=-150054599,this.Eh=1731405415,this.El=-4191439,this.Fh=-1900787065,this.Fl=1750603025,this.Gh=-619958771,this.Gl=1694076839,this.Hh=1203062813,this.Hl=-1090891868,this.outputLen=48}};Ui.sha512=(0,_4.wrapConstructor)(()=>new Yo);Ui.sha512_224=(0,_4.wrapConstructor)(()=>new oy);Ui.sha512_256=(0,_4.wrapConstructor)(()=>new ly);Ui.sha384=(0,_4.wrapConstructor)(()=>new dy)});var wa=b(Me=>{"use strict";Object.defineProperty(Me,"__esModule",{value:!0});Me.validateObject=Me.createHmacDrbg=Me.bitMask=Me.bitSet=Me.bitGet=Me.bitLen=Me.utf8ToBytes=Me.equalBytes=Me.concatBytes=Me.ensureBytes=Me.numberToVarBytesBE=Me.numberToBytesLE=Me.numberToBytesBE=Me.bytesToNumberLE=Me.bytesToNumberBE=Me.hexToBytes=Me.hexToNumber=Me.numberToHexUnpadded=Me.bytesToHex=void 0;var oE=BigInt(0),k4=BigInt(1),_j=BigInt(2),E4=t=>t instanceof Uint8Array,kj=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function cy(t){if(!E4(t))throw new Error("Uint8Array expected");let e="";for(let r=0;ri+a.length,0)),r=0;return t.forEach(i=>{if(!E4(i))throw new Error("Uint8Array expected");e.set(i,r),r+=i.length}),e}Me.concatBytes=uE;function Mj(t,e){if(t.length!==e.length)return!1;for(let r=0;roE;t>>=k4,e+=1);return e}Me.bitLen=Rj;function Bj(t,e){return t>>BigInt(e)&k4}Me.bitGet=Bj;var Cj=(t,e,r)=>t|(r?k4:oE)<(_j<new Uint8Array(t),sE=t=>Uint8Array.from(t);function Nj(t,e,r){if(typeof t!="number"||t<2)throw new Error("hashLen must be a number");if(typeof e!="number"||e<2)throw new Error("qByteLen must be a number");if(typeof r!="function")throw new Error("hmacFn must be a function");let i=uy(t),a=uy(t),n=0,s=()=>{i.fill(1),a.fill(0),n=0},o=(...c)=>r(a,i,...c),l=(c=uy())=>{a=o(sE([0]),c),i=o(),c.length!==0&&(a=o(sE([1]),c),i=o())},d=()=>{if(n++>=1e3)throw new Error("drbg: tried 1000 values");let c=0,w=[];for(;c{s(),l(c);let k;for(;!(k=w(d()));)l();return s(),k}}Me.createHmacDrbg=Nj;var qj={bigint:t=>typeof t=="bigint",function:t=>typeof t=="function",boolean:t=>typeof t=="boolean",string:t=>typeof t=="string",stringOrUint8Array:t=>typeof t=="string"||t instanceof Uint8Array,isSafeInteger:t=>Number.isSafeInteger(t),array:t=>Array.isArray(t),field:(t,e)=>e.Fp.isValid(t),hash:t=>typeof t=="function"&&Number.isSafeInteger(t.outputLen)};function Wj(t,e,r={}){let i=(a,n,s)=>{let o=qj[n];if(typeof o!="function")throw new Error(`Invalid validator "${n}", expected function`);let l=t[a];if(!(s&&l===void 0)&&!o(l,t))throw new Error(`Invalid param ${String(a)}=${l} (${typeof l}), expected ${n}`)};for(let[a,n]of Object.entries(e))i(a,n,!1);for(let[a,n]of Object.entries(r))i(a,n,!0);return t}Me.validateObject=Wj});var As=b(Pe=>{"use strict";Object.defineProperty(Pe,"__esModule",{value:!0});Pe.mapHashToField=Pe.getMinHashLength=Pe.getFieldBytesLength=Pe.hashToPrivateScalar=Pe.FpSqrtEven=Pe.FpSqrtOdd=Pe.Field=Pe.nLength=Pe.FpIsSquare=Pe.FpDiv=Pe.FpInvertBatch=Pe.FpPow=Pe.validateField=Pe.isNegativeLE=Pe.FpSqrt=Pe.tonelliShanks=Pe.invert=Pe.pow2=Pe.pow=Pe.mod=void 0;var Mi=wa(),vr=BigInt(0),it=BigInt(1),xs=BigInt(2),Vj=BigInt(3),my=BigInt(4),cE=BigInt(5),pE=BigInt(8),Fj=BigInt(9),Kj=BigInt(16);function Ii(t,e){let r=t%e;return r>=vr?r:e+r}Pe.mod=Ii;function mE(t,e,r){if(r<=vr||e 0");if(r===it)return vr;let i=it;for(;e>vr;)e&it&&(i=i*t%r),t=t*t%r,e>>=it;return i}Pe.pow=mE;function Lj(t,e,r){let i=t;for(;e-- >vr;)i*=i,i%=r;return i}Pe.pow2=Lj;function T4(t,e){if(t===vr||e<=vr)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=Ii(t,e),i=e,a=vr,n=it,s=it,o=vr;for(;r!==vr;){let d=i/r,u=i%r,c=a-s*d,w=n-o*d;i=r,r=u,a=s,n=o,s=c,o=w}if(i!==it)throw new Error("invert: does not exist");return Ii(a,e)}Pe.invert=T4;function fE(t){let e=(t-it)/xs,r,i,a;for(r=t-it,i=0;r%xs===vr;r/=xs,i++);for(a=xs;a(Ii(t,e)&it)===it;Pe.isNegativeLE=Uj;var jj=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Hj(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=jj.reduce((i,a)=>(i[a]="function",i),e);return(0,Mi.validateObject)(t,r)}Pe.validateField=Hj;function gE(t,e,r){if(r 0");if(r===vr)return t.ONE;if(r===it)return e;let i=t.ONE,a=e;for(;r>vr;)r&it&&(i=t.mul(i,a)),a=t.sqr(a),r>>=it;return i}Pe.FpPow=gE;function yE(t,e){let r=new Array(e.length),i=e.reduce((n,s,o)=>t.is0(s)?n:(r[o]=n,t.mul(n,s)),t.ONE),a=t.inv(i);return e.reduceRight((n,s,o)=>t.is0(s)?n:(r[o]=t.mul(n,r[o]),t.mul(n,s)),a),r}Pe.FpInvertBatch=yE;function $j(t,e,r){return t.mul(e,typeof r=="bigint"?T4(r,t.ORDER):t.inv(r))}Pe.FpDiv=$j;function Gj(t){let e=(t.ORDER-it)/xs;return r=>{let i=t.pow(r,e);return t.eql(i,t.ZERO)||t.eql(i,t.ONE)}}Pe.FpIsSquare=Gj;function fy(t,e){let r=e!==void 0?e:t.toString(2).length,i=Math.ceil(r/8);return{nBitLength:r,nByteLength:i}}Pe.nLength=fy;function Zj(t,e,r=!1,i={}){if(t<=vr)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:a,nByteLength:n}=fy(t,e);if(n>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=hE(t),o=Object.freeze({ORDER:t,BITS:a,BYTES:n,MASK:(0,Mi.bitMask)(a),ZERO:vr,ONE:it,create:l=>Ii(l,t),isValid:l=>{if(typeof l!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof l}`);return vr<=l&&ll===vr,isOdd:l=>(l&it)===it,neg:l=>Ii(-l,t),eql:(l,d)=>l===d,sqr:l=>Ii(l*l,t),add:(l,d)=>Ii(l+d,t),sub:(l,d)=>Ii(l-d,t),mul:(l,d)=>Ii(l*d,t),pow:(l,d)=>gE(o,l,d),div:(l,d)=>Ii(l*T4(d,t),t),sqrN:l=>l*l,addN:(l,d)=>l+d,subN:(l,d)=>l-d,mulN:(l,d)=>l*d,inv:l=>T4(l,t),sqrt:i.sqrt||(l=>s(o,l)),invertBatch:l=>yE(o,l),cmov:(l,d,u)=>u?d:l,toBytes:l=>r?(0,Mi.numberToBytesLE)(l,n):(0,Mi.numberToBytesBE)(l,n),fromBytes:l=>{if(l.length!==n)throw new Error(`Fp.fromBytes: expected ${n}, got ${l.length}`);return r?(0,Mi.bytesToNumberLE)(l):(0,Mi.bytesToNumberBE)(l)}});return Object.freeze(o)}Pe.Field=Zj;function Jj(t,e){if(!t.isOdd)throw new Error("Field doesn't have isOdd");let r=t.sqrt(e);return t.isOdd(r)?r:t.neg(r)}Pe.FpSqrtOdd=Jj;function Yj(t,e){if(!t.isOdd)throw new Error("Field doesn't have isOdd");let r=t.sqrt(e);return t.isOdd(r)?t.neg(r):r}Pe.FpSqrtEven=Yj;function Qj(t,e,r=!1){t=(0,Mi.ensureBytes)("privateHash",t);let i=t.length,a=fy(e).nByteLength+8;if(a<24||i1024)throw new Error(`hashToPrivateScalar: expected ${a}-1024 bytes of input, got ${i}`);let n=r?(0,Mi.bytesToNumberLE)(t):(0,Mi.bytesToNumberBE)(t);return Ii(n,e-it)+it}Pe.hashToPrivateScalar=Qj;function hy(t){if(typeof t!="bigint")throw new Error("field order must be bigint");let e=t.toString(2).length;return Math.ceil(e/8)}Pe.getFieldBytesLength=hy;function bE(t){let e=hy(t);return e+Math.ceil(e/2)}Pe.getMinHashLength=bE;function Xj(t,e,r=!1){let i=t.length,a=hy(e),n=bE(e);if(i<16||i1024)throw new Error(`expected ${n}-1024 bytes of input, got ${i}`);let s=r?(0,Mi.bytesToNumberBE)(t):(0,Mi.bytesToNumberLE)(t),o=Ii(s,e-it)+it;return r?(0,Mi.numberToBytesLE)(o,a):(0,Mi.numberToBytesBE)(o,a)}Pe.mapHashToField=Xj});var yy=b(v1=>{"use strict";Object.defineProperty(v1,"__esModule",{value:!0});v1.validateBasic=v1.wNAF=void 0;var vE=As(),eH=wa(),tH=BigInt(0),gy=BigInt(1);function rH(t,e){let r=(a,n)=>{let s=n.negate();return a?s:n},i=a=>{let n=Math.ceil(e/a)+1,s=2**(a-1);return{windows:n,windowSize:s}};return{constTimeNegate:r,unsafeLadder(a,n){let s=t.ZERO,o=a;for(;n>tH;)n&gy&&(s=s.add(o)),o=o.double(),n>>=gy;return s},precomputeWindow(a,n){let{windows:s,windowSize:o}=i(n),l=[],d=a,u=d;for(let c=0;c>=k,T>l&&(T-=w,s+=gy);let D=_,V=_+Math.abs(T)-1,R=z%2!==0,B=T<0;T===0?u=u.add(r(R,n[D])):d=d.add(r(B,n[V]))}return{p:d,f:u}},wNAFCached(a,n,s,o){let l=a._WINDOW_SIZE||1,d=n.get(a);return d||(d=this.precomputeWindow(a,l),l!==1&&n.set(a,o(d))),this.wNAF(l,d,s)}}}v1.wNAF=rH;function iH(t){return(0,vE.validateField)(t.Fp),(0,eH.validateObject)(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...(0,vE.nLength)(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}v1.validateBasic=iH});var wE=b(I4=>{"use strict";Object.defineProperty(I4,"__esModule",{value:!0});I4.twistedEdwards=void 0;var aH=As(),_n=wa(),_s=wa(),SE=yy(),xa=BigInt(0),Di=BigInt(1),z4=BigInt(2),nH=BigInt(8),sH={zip215:!0};function oH(t){let e=(0,SE.validateBasic)(t);return _n.validateObject(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function lH(t){let e=oH(t),{Fp:r,n:i,prehash:a,hash:n,randomBytes:s,nByteLength:o,h:l}=e,d=z4<{try{return{isValid:!0,value:r.sqrt(y*r.inv(S))}}catch{return{isValid:!1,value:xa}}}),w=e.adjustScalarBytes||(y=>y),k=e.domain||((y,S,P)=>{if(S.length||P)throw new Error("Contexts/pre-hash are not supported");return y}),z=y=>typeof y=="bigint"&&xaz(y)&&z(S)&&yy===xa||_(y,d);function D(y,S){if(_(y,S))return y;throw new Error(`Expected valid scalar < ${S}, got ${typeof y} ${y}`)}function V(y){return y===xa?y:D(y,i)}let R=new Map;function B(y){if(!(y instanceof q))throw new Error("ExtendedPoint expected")}class q{constructor(S,P,x,f){if(this.ex=S,this.ey=P,this.ez=x,this.et=f,!T(S))throw new Error("x required");if(!T(P))throw new Error("y required");if(!T(x))throw new Error("z required");if(!T(f))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(S){if(S instanceof q)throw new Error("extended point not allowed");let{x:P,y:x}=S||{};if(!T(P)||!T(x))throw new Error("invalid affine point");return new q(P,x,Di,u(P*x))}static normalizeZ(S){let P=r.invertBatch(S.map(x=>x.ez));return S.map((x,f)=>x.toAffine(P[f])).map(q.fromAffine)}_setWindowSize(S){this._WINDOW_SIZE=S,R.delete(this)}assertValidity(){let{a:S,d:P}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:x,ey:f,ez:E,et:U}=this,$=u(x*x),H=u(f*f),J=u(E*E),se=u(J*J),le=u($*S),Oe=u(J*u(le+H)),pe=u(se+u(P*u($*H)));if(Oe!==pe)throw new Error("bad point: equation left != right (1)");let me=u(x*f),Ye=u(E*U);if(me!==Ye)throw new Error("bad point: equation left != right (2)")}equals(S){B(S);let{ex:P,ey:x,ez:f}=this,{ex:E,ey:U,ez:$}=S,H=u(P*$),J=u(E*f),se=u(x*$),le=u(U*f);return H===J&&se===le}is0(){return this.equals(q.ZERO)}negate(){return new q(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:S}=e,{ex:P,ey:x,ez:f}=this,E=u(P*P),U=u(x*x),$=u(z4*u(f*f)),H=u(S*E),J=P+x,se=u(u(J*J)-E-U),le=H+U,Oe=le-$,pe=H-U,me=u(se*Oe),Ye=u(le*pe),Ve=u(se*pe),Fe=u(Oe*le);return new q(me,Ye,Fe,Ve)}add(S){B(S);let{a:P,d:x}=e,{ex:f,ey:E,ez:U,et:$}=this,{ex:H,ey:J,ez:se,et:le}=S;if(P===BigInt(-1)){let ys=u((E-f)*(J+H)),ot=u((E+f)*(J-H)),et=u(ot-ys);if(et===xa)return this.double();let bs=u(U*z4*le),lt=u($*z4*se),dt=lt+bs,vs=ot+ys,ut=lt-bs,gt=u(dt*et),b1=u(vs*ut),yt=u(dt*ut),bt=u(et*vs);return new q(gt,b1,bt,yt)}let Oe=u(f*H),pe=u(E*J),me=u($*x*le),Ye=u(U*se),Ve=u((f+E)*(H+J)-Oe-pe),Fe=Ye-me,Sa=Ye+me,st=u(pe-P*Oe),mt=u(Ve*Fe),y1=u(Sa*st),ft=u(Ve*st),ht=u(Fe*Sa);return new q(mt,y1,ht,ft)}subtract(S){return this.add(S.negate())}wNAF(S){return G.wNAFCached(this,R,S,q.normalizeZ)}multiply(S){let{p:P,f:x}=this.wNAF(D(S,i));return q.normalizeZ([P,x])[0]}multiplyUnsafe(S){let P=V(S);return P===xa?j:this.equals(j)||P===Di?this:this.equals(K)?this.wNAF(P).p:G.unsafeLadder(this,P)}isSmallOrder(){return this.multiplyUnsafe(l).is0()}isTorsionFree(){return G.unsafeLadder(this,i).is0()}toAffine(S){let{ex:P,ey:x,ez:f}=this,E=this.is0();S==null&&(S=E?nH:r.inv(f));let U=u(P*S),$=u(x*S),H=u(f*S);if(E)return{x:xa,y:Di};if(H!==Di)throw new Error("invZ was invalid");return{x:U,y:$}}clearCofactor(){let{h:S}=e;return S===Di?this:this.multiplyUnsafe(S)}static fromHex(S,P=!1){let{d:x,a:f}=e,E=r.BYTES;S=(0,_s.ensureBytes)("pointHex",S,E);let U=S.slice(),$=S[E-1];U[E-1]=$&-129;let H=_n.bytesToNumberLE(U);H===xa||(P?D(H,d):D(H,r.ORDER));let J=u(H*H),se=u(J-Di),le=u(x*J-f),{isValid:Oe,value:pe}=c(se,le);if(!Oe)throw new Error("Point.fromHex: invalid y coordinate");let me=(pe&Di)===Di,Ye=($&128)!==0;if(!P&&pe===xa&&Ye)throw new Error("Point.fromHex: x=0 and x_0=1");return Ye!==me&&(pe=u(-pe)),q.fromAffine({x:pe,y:H})}static fromPrivateKey(S){return Y(S).point}toRawBytes(){let{x:S,y:P}=this.toAffine(),x=_n.numberToBytesLE(P,r.BYTES);return x[x.length-1]|=S&Di?128:0,x}toHex(){return _n.bytesToHex(this.toRawBytes())}}q.BASE=new q(e.Gx,e.Gy,Di,u(e.Gx*e.Gy)),q.ZERO=new q(xa,Di,Di,xa);let{BASE:K,ZERO:j}=q,G=(0,SE.wNAF)(q,o*8);function ne(y){return(0,aH.mod)(y,i)}function oe(y){return ne(_n.bytesToNumberLE(y))}function Y(y){let S=o;y=(0,_s.ensureBytes)("private key",y,S);let P=(0,_s.ensureBytes)("hashed private key",n(y),2*S),x=w(P.slice(0,S)),f=P.slice(S,2*S),E=oe(x),U=K.multiply(E),$=U.toRawBytes();return{head:x,prefix:f,scalar:E,point:U,pointBytes:$}}function ce(y){return Y(y).pointBytes}function I(y=new Uint8Array,...S){let P=_n.concatBytes(...S);return oe(n(k(P,(0,_s.ensureBytes)("context",y),!!a)))}function p(y,S,P={}){y=(0,_s.ensureBytes)("message",y),a&&(y=a(y));let{prefix:x,scalar:f,pointBytes:E}=Y(S),U=I(P.context,x,y),$=K.multiply(U).toRawBytes(),H=I(P.context,$,E,y),J=ne(U+H*f);V(J);let se=_n.concatBytes($,_n.numberToBytesLE(J,r.BYTES));return(0,_s.ensureBytes)("result",se,o*2)}let h=sH;function g(y,S,P,x=h){let{context:f,zip215:E}=x,U=r.BYTES;y=(0,_s.ensureBytes)("signature",y,2*U),S=(0,_s.ensureBytes)("message",S),a&&(S=a(S));let $=_n.bytesToNumberLE(y.slice(U,2*U)),H,J,se;try{H=q.fromHex(P,E),J=q.fromHex(y.slice(0,U),E),se=K.multiplyUnsafe($)}catch{return!1}if(!E&&H.isSmallOrder())return!1;let le=I(f,J.toRawBytes(),H.toRawBytes(),S);return J.add(H.multiplyUnsafe(le)).subtract(se).clearCofactor().equals(q.ZERO)}return K._setWindowSize(8),{CURVE:e,getPublicKey:ce,sign:p,verify:g,ExtendedPoint:q,utils:{getExtendedPublicKey:Y,randomPrivateKey:()=>s(r.BYTES),precompute(y=8,S=q.BASE){return S._setWindowSize(y),S.multiply(BigInt(3)),S}}}}I4.twistedEdwards=lH});var AE=b(M4=>{"use strict";Object.defineProperty(M4,"__esModule",{value:!0});M4.montgomery=void 0;var xE=As(),S1=wa(),Ip=BigInt(0),by=BigInt(1);function dH(t){return(0,S1.validateObject)(t,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...t})}function uH(t){let e=dH(t),{P:r}=e,i=R=>(0,xE.mod)(R,r),a=e.montgomeryBits,n=Math.ceil(a/8),s=e.nByteLength,o=e.adjustScalarBytes||(R=>R),l=e.powPminus2||(R=>(0,xE.pow)(R,r-BigInt(2),r));function d(R,B,q){let K=i(R*(B-q));return B=i(B-K),q=i(q+K),[B,q]}function u(R){if(typeof R=="bigint"&&Ip<=R&&R=Ip;h--){let g=K>>h&by;ce^=g,I=d(ce,G,oe),G=I[0],oe=I[1],I=d(ce,ne,Y),ne=I[0],Y=I[1],ce=g;let v=G+ne,y=i(v*v),S=G-ne,P=i(S*S),x=y-P,f=oe+Y,E=oe-Y,U=i(E*v),$=i(f*S),H=U+$,J=U-$;oe=i(H*H),Y=i(j*i(J*J)),G=i(y*P),ne=i(x*(y+i(c*x)))}I=d(ce,G,oe),G=I[0],oe=I[1],I=d(ce,ne,Y),ne=I[0],Y=I[1];let p=l(ne);return i(G*p)}function k(R){return(0,S1.numberToBytesLE)(i(R),n)}function z(R){let B=(0,S1.ensureBytes)("u coordinate",R,n);return s===n&&(B[s-1]&=127),(0,S1.bytesToNumberLE)(B)}function _(R){let B=(0,S1.ensureBytes)("scalar",R);if(B.length!==n&&B.length!==s)throw new Error(`Expected ${n} or ${s} bytes, got ${B.length}`);return(0,S1.bytesToNumberLE)(o(B))}function T(R,B){let q=z(B),K=_(R),j=w(q,K);if(j===Ip)throw new Error("Invalid private or public key received");return k(j)}let D=k(e.Gu);function V(R){return T(R,D)}return{scalarMult:T,scalarMultBase:V,getSharedSecret:(R,B)=>T(R,B),getPublicKey:R=>V(R),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:D}}M4.montgomery=uH});var wy=b(ji=>{"use strict";Object.defineProperty(ji,"__esModule",{value:!0});ji.createHasher=ji.isogenyMap=ji.hash_to_field=ji.expand_message_xof=ji.expand_message_xmd=void 0;var cH=As(),Aa=wa();function pH(t){if(t instanceof Uint8Array)return t;if(typeof t=="string")return(0,Aa.utf8ToBytes)(t);throw new Error("DST must be Uint8Array or string")}var mH=Aa.bytesToNumberBE;function ks(t,e){if(t<0||t>=1<<8*e)throw new Error(`bad I2OSP call: value=${t} length=${e}`);let r=Array.from({length:e}).fill(0);for(let i=e-1;i>=0;i--)r[i]=t&255,t>>>=8;return new Uint8Array(r)}function fH(t,e){let r=new Uint8Array(t.length);for(let i=0;i255&&(e=i((0,Aa.concatBytes)((0,Aa.utf8ToBytes)("H2C-OVERSIZE-DST-"),e)));let{outputLen:a,blockLen:n}=i,s=Math.ceil(r/a);if(s>255)throw new Error("Invalid xmd length");let o=(0,Aa.concatBytes)(e,ks(e.length,1)),l=ks(0,n),d=ks(r,2),u=new Array(s),c=i((0,Aa.concatBytes)(l,t,d,ks(0,1),o));u[0]=i((0,Aa.concatBytes)(c,ks(1,1),o));for(let k=1;k<=s;k++){let z=[fH(c,u[k-1]),ks(k+1,1),o];u[k]=i((0,Aa.concatBytes)(...z))}return(0,Aa.concatBytes)(...u).slice(0,r)}ji.expand_message_xmd=_E;function kE(t,e,r,i,a){if(Mp(t),Mp(e),Sy(r),e.length>255){let n=Math.ceil(2*i/8);e=a.create({dkLen:n}).update((0,Aa.utf8ToBytes)("H2C-OVERSIZE-DST-")).update(e).digest()}if(r>65535||e.length>255)throw new Error("expand_message_xof: invalid lenInBytes");return a.create({dkLen:r}).update(t).update(ks(r,2)).update(e).update(ks(e.length,1)).digest()}ji.expand_message_xof=kE;function vy(t,e,r){(0,Aa.validateObject)(r,{DST:"stringOrUint8Array",p:"bigint",m:"isSafeInteger",k:"isSafeInteger",hash:"hash"});let{p:i,k:a,m:n,hash:s,expand:o,DST:l}=r;Mp(t),Sy(e);let d=pH(l),u=i.toString(2).length,c=Math.ceil((u+a)/8),w=e*n*c,k;if(o==="xmd")k=_E(t,d,w,s);else if(o==="xof")k=kE(t,d,w,a,s);else if(o==="_internal_pass")k=t;else throw new Error('expand must be "xmd" or "xof"');let z=new Array(e);for(let _=0;_Array.from(i).reverse());return(i,a)=>{let[n,s,o,l]=r.map(d=>d.reduce((u,c)=>t.add(t.mul(u,i),c)));return i=t.div(n,s),a=t.mul(a,t.div(o,l)),{x:i,y:a}}}ji.isogenyMap=hH;function gH(t,e,r){if(typeof e!="function")throw new Error("mapToCurve() must be defined");return{hashToCurve(i,a){let n=vy(i,2,{...r,DST:r.DST,...a}),s=t.fromAffine(e(n[0])),o=t.fromAffine(e(n[1])),l=s.add(o).clearCofactor();return l.assertValidity(),l},encodeToCurve(i,a){let n=vy(i,1,{...r,DST:r.encodeDST,...a}),s=t.fromAffine(e(n[0])).clearCofactor();return s.assertValidity(),s}}}ji.createHasher=gH});var qE=b(Se=>{"use strict";Object.defineProperty(Se,"__esModule",{value:!0});Se.hash_to_ristretto255=Se.hashToRistretto255=Se.RistrettoPoint=Se.encodeToCurve=Se.hashToCurve=Se.edwardsToMontgomeryPriv=Se.edwardsToMontgomery=Se.edwardsToMontgomeryPub=Se.x25519=Se.ed25519ph=Se.ed25519ctx=Se.ed25519=Se.ED25519_TORSION_SUBGROUP=void 0;var R4=nE(),Dp=An(),Ey=wE(),yH=AE(),Ze=As(),Qo=wa(),DE=wy(),Rp=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),_y=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),bH=BigInt(0),ja=BigInt(1),D4=BigInt(2),vH=BigInt(5),EE=BigInt(10),SH=BigInt(20),wH=BigInt(40),PE=BigInt(80);function RE(t){let e=Rp,i=t*t%e*t%e,a=(0,Ze.pow2)(i,D4,e)*i%e,n=(0,Ze.pow2)(a,ja,e)*t%e,s=(0,Ze.pow2)(n,vH,e)*n%e,o=(0,Ze.pow2)(s,EE,e)*s%e,l=(0,Ze.pow2)(o,SH,e)*o%e,d=(0,Ze.pow2)(l,wH,e)*l%e,u=(0,Ze.pow2)(d,PE,e)*d%e,c=(0,Ze.pow2)(u,PE,e)*d%e,w=(0,Ze.pow2)(c,EE,e)*s%e;return{pow_p_5_8:(0,Ze.pow2)(w,D4,e)*t%e,b2:i}}function BE(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function Py(t,e){let r=Rp,i=(0,Ze.mod)(e*e*e,r),a=(0,Ze.mod)(i*i*e,r),n=RE(t*a).pow_p_5_8,s=(0,Ze.mod)(t*i*n,r),o=(0,Ze.mod)(e*s*s,r),l=s,d=(0,Ze.mod)(s*_y,r),u=o===t,c=o===(0,Ze.mod)(-t,r),w=o===(0,Ze.mod)(-t*_y,r);return u&&(s=l),(c||w)&&(s=d),(0,Ze.isNegativeLE)(s,r)&&(s=(0,Ze.mod)(-s,r)),{isValid:u||c,value:s}}Se.ED25519_TORSION_SUBGROUP=["0100000000000000000000000000000000000000000000000000000000000000","c7176a703d4dd84fba3c0b760d10670f2a2053fa2c39ccc64ec7fd7792ac037a","0000000000000000000000000000000000000000000000000000000000000080","26e8958fc2b227b045c3f489f2ef98f0d5dfac05d3c63339b13802886d53fc05","ecffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f","26e8958fc2b227b045c3f489f2ef98f0d5dfac05d3c63339b13802886d53fc85","0000000000000000000000000000000000000000000000000000000000000000","c7176a703d4dd84fba3c0b760d10670f2a2053fa2c39ccc64ec7fd7792ac03fa"];var ae=(0,Ze.Field)(Rp,void 0,!0),Bp={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:ae,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:R4.sha512,randomBytes:Dp.randomBytes,adjustScalarBytes:BE,uvRatio:Py};Se.ed25519=(0,Ey.twistedEdwards)(Bp);function CE(t,e,r){if(e.length>255)throw new Error("Context is too big");return(0,Dp.concatBytes)((0,Dp.utf8ToBytes)("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}Se.ed25519ctx=(0,Ey.twistedEdwards)({...Bp,domain:CE});Se.ed25519ph=(0,Ey.twistedEdwards)({...Bp,domain:CE,prehash:R4.sha512});Se.x25519=(()=>(0,yH.montgomery)({P:Rp,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:t=>{let e=Rp,{pow_p_5_8:r,b2:i}=RE(t);return(0,Ze.mod)((0,Ze.pow2)(r,BigInt(3),e)*i,e)},adjustScalarBytes:BE,randomBytes:Dp.randomBytes}))();function OE(t){let{y:e}=Se.ed25519.ExtendedPoint.fromHex(t),r=BigInt(1);return ae.toBytes(ae.create((r+e)*ae.inv(r-e)))}Se.edwardsToMontgomeryPub=OE;Se.edwardsToMontgomery=OE;function xH(t){let e=Bp.hash(t.subarray(0,32));return Bp.adjustScalarBytes(e).subarray(0,32)}Se.edwardsToMontgomeryPriv=xH;var AH=(ae.ORDER+BigInt(3))/BigInt(8),_H=ae.pow(D4,AH),TE=ae.sqrt(ae.neg(ae.ONE)),kH=(ae.ORDER-BigInt(5))/BigInt(8),zE=BigInt(486662);function EH(t){let e=ae.sqr(t);e=ae.mul(e,D4);let r=ae.add(e,ae.ONE),i=ae.neg(zE),a=ae.sqr(r),n=ae.mul(a,r),s=ae.mul(e,zE);s=ae.mul(s,i),s=ae.add(s,a),s=ae.mul(s,i);let o=ae.sqr(n);a=ae.sqr(o),o=ae.mul(o,n),o=ae.mul(o,s),a=ae.mul(a,o);let l=ae.pow(a,kH);l=ae.mul(l,o);let d=ae.mul(l,TE);a=ae.sqr(l),a=ae.mul(a,n);let u=ae.eql(a,s),c=ae.cmov(d,l,u),w=ae.mul(i,e),k=ae.mul(l,t);k=ae.mul(k,_H);let z=ae.mul(k,TE),_=ae.mul(s,e);a=ae.sqr(k),a=ae.mul(a,n);let T=ae.eql(a,_),D=ae.cmov(z,k,T);a=ae.sqr(c),a=ae.mul(a,n);let V=ae.eql(a,s),R=ae.cmov(w,i,V),B=ae.cmov(D,c,V),q=ae.isOdd(B);return B=ae.cmov(B,ae.neg(B),V!==q),{xMn:R,xMd:r,yMn:B,yMd:ja}}var PH=(0,Ze.FpSqrtEven)(ae,ae.neg(BigInt(486664)));function TH(t){let{xMn:e,xMd:r,yMn:i,yMd:a}=EH(t),n=ae.mul(e,a);n=ae.mul(n,PH);let s=ae.mul(r,i),o=ae.sub(e,r),l=ae.add(e,r),d=ae.mul(s,l),u=ae.eql(d,ae.ZERO);n=ae.cmov(n,ae.ZERO,u),s=ae.cmov(s,ae.ONE,u),o=ae.cmov(o,ae.ONE,u),l=ae.cmov(l,ae.ONE,u);let c=ae.invertBatch([s,l]);return{x:ae.mul(n,c[0]),y:ae.mul(o,c[1])}}var NE=(()=>(0,DE.createHasher)(Se.ed25519.ExtendedPoint,t=>TH(t[0]),{DST:"edwards25519_XMD:SHA-512_ELL2_RO_",encodeDST:"edwards25519_XMD:SHA-512_ELL2_NU_",p:ae.ORDER,m:1,k:128,expand:"xmd",hash:R4.sha512}))();Se.hashToCurve=(()=>NE.hashToCurve)();Se.encodeToCurve=(()=>NE.encodeToCurve)();function xy(t){if(!(t instanceof _a))throw new Error("RistrettoPoint expected")}var ky=_y,zH=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),IH=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),MH=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),DH=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952"),IE=t=>Py(ja,t),RH=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),Ay=t=>Se.ed25519.CURVE.Fp.create((0,Qo.bytesToNumberLE)(t)&RH);function ME(t){let{d:e}=Se.ed25519.CURVE,r=Se.ed25519.CURVE.Fp.ORDER,i=Se.ed25519.CURVE.Fp.create,a=i(ky*t*t),n=i((a+ja)*MH),s=BigInt(-1),o=i((s-e*a)*i(a+e)),{isValid:l,value:d}=Py(n,o),u=i(d*t);(0,Ze.isNegativeLE)(u,r)||(u=i(-u)),l||(d=u),l||(s=a);let c=i(s*(a-ja)*DH-o),w=d*d,k=i((d+d)*o),z=i(c*zH),_=i(ja-w),T=i(ja+w);return new Se.ed25519.ExtendedPoint(i(k*T),i(_*z),i(z*T),i(k*_))}var _a=class t{constructor(e){this.ep=e}static fromAffine(e){return new t(Se.ed25519.ExtendedPoint.fromAffine(e))}static hashToCurve(e){e=(0,Qo.ensureBytes)("ristrettoHash",e,64);let r=Ay(e.slice(0,32)),i=ME(r),a=Ay(e.slice(32,64)),n=ME(a);return new t(i.add(n))}static fromHex(e){e=(0,Qo.ensureBytes)("ristrettoHex",e,32);let{a:r,d:i}=Se.ed25519.CURVE,a=Se.ed25519.CURVE.Fp.ORDER,n=Se.ed25519.CURVE.Fp.create,s="RistrettoPoint.fromHex: the hex is not valid encoding of RistrettoPoint",o=Ay(e);if(!(0,Qo.equalBytes)((0,Qo.numberToBytesLE)(o,32),e)||(0,Ze.isNegativeLE)(o,a))throw new Error(s);let l=n(o*o),d=n(ja+r*l),u=n(ja-r*l),c=n(d*d),w=n(u*u),k=n(r*i*c-w),{isValid:z,value:_}=IE(n(k*w)),T=n(_*u),D=n(_*T*k),V=n((o+o)*T);(0,Ze.isNegativeLE)(V,a)&&(V=n(-V));let R=n(d*D),B=n(V*R);if(!z||(0,Ze.isNegativeLE)(B,a)||R===bH)throw new Error(s);return new t(new Se.ed25519.ExtendedPoint(V,R,ja,B))}toRawBytes(){let{ex:e,ey:r,ez:i,et:a}=this.ep,n=Se.ed25519.CURVE.Fp.ORDER,s=Se.ed25519.CURVE.Fp.create,o=s(s(i+r)*s(i-r)),l=s(e*r),d=s(l*l),{value:u}=IE(s(o*d)),c=s(u*o),w=s(u*l),k=s(c*w*a),z;if((0,Ze.isNegativeLE)(a*k,n)){let T=s(r*ky),D=s(e*ky);e=T,r=D,z=s(c*IH)}else z=w;(0,Ze.isNegativeLE)(e*k,n)&&(r=s(-r));let _=s((i-r)*z);return(0,Ze.isNegativeLE)(_,n)&&(_=s(-_)),(0,Qo.numberToBytesLE)(_,32)}toHex(){return(0,Qo.bytesToHex)(this.toRawBytes())}toString(){return this.toHex()}equals(e){xy(e);let{ex:r,ey:i}=this.ep,{ex:a,ey:n}=e.ep,s=Se.ed25519.CURVE.Fp.create,o=s(r*n)===s(i*a),l=s(i*n)===s(r*a);return o||l}add(e){return xy(e),new t(this.ep.add(e.ep))}subtract(e){return xy(e),new t(this.ep.subtract(e.ep))}multiply(e){return new t(this.ep.multiply(e))}multiplyUnsafe(e){return new t(this.ep.multiplyUnsafe(e))}};Se.RistrettoPoint=(()=>(_a.BASE||(_a.BASE=new _a(Se.ed25519.ExtendedPoint.BASE)),_a.ZERO||(_a.ZERO=new _a(Se.ed25519.ExtendedPoint.ZERO)),_a))();var BH=(t,e)=>{let r=e.DST,i=typeof r=="string"?(0,Dp.utf8ToBytes)(r):r,a=(0,DE.expand_message_xmd)(t,i,64,R4.sha512);return _a.hashToCurve(a)};Se.hashToRistretto255=BH;Se.hash_to_ristretto255=Se.hashToRistretto255});var zy=b((WE,Ty)=>{(function(t,e){"use strict";function r(I,p){if(!I)throw new Error(p||"Assertion failed")}function i(I,p){I.super_=p;var h=function(){};h.prototype=p.prototype,I.prototype=new h,I.prototype.constructor=I}function a(I,p,h){if(a.isBN(I))return I;this.negative=0,this.words=null,this.length=0,this.red=null,I!==null&&((p==="le"||p==="be")&&(h=p,p=10),this._init(I||0,p||10,h||"be"))}typeof t=="object"?t.exports=a:e.BN=a,a.BN=a,a.wordSize=26;var n;try{typeof window<"u"&&typeof window.Buffer<"u"?n=window.Buffer:n=require("buffer").Buffer}catch{}a.isBN=function(p){return p instanceof a?!0:p!==null&&typeof p=="object"&&p.constructor.wordSize===a.wordSize&&Array.isArray(p.words)},a.max=function(p,h){return p.cmp(h)>0?p:h},a.min=function(p,h){return p.cmp(h)<0?p:h},a.prototype._init=function(p,h,g){if(typeof p=="number")return this._initNumber(p,h,g);if(typeof p=="object")return this._initArray(p,h,g);h==="hex"&&(h=16),r(h===(h|0)&&h>=2&&h<=36),p=p.toString().replace(/\s+/g,"");var v=0;p[0]==="-"&&(v++,this.negative=1),v=0;v-=3)S=p[v]|p[v-1]<<8|p[v-2]<<16,this.words[y]|=S<>>26-P&67108863,P+=24,P>=26&&(P-=26,y++);else if(g==="le")for(v=0,y=0;v>>26-P&67108863,P+=24,P>=26&&(P-=26,y++);return this._strip()};function s(I,p){var h=I.charCodeAt(p);if(h>=48&&h<=57)return h-48;if(h>=65&&h<=70)return h-55;if(h>=97&&h<=102)return h-87;r(!1,"Invalid character in "+I)}function o(I,p,h){var g=s(I,h);return h-1>=p&&(g|=s(I,h-1)<<4),g}a.prototype._parseHex=function(p,h,g){this.length=Math.ceil((p.length-h)/6),this.words=new Array(this.length);for(var v=0;v=h;v-=2)P=o(p,h,v)<=18?(y-=18,S+=1,this.words[S]|=P>>>26):y+=8;else{var x=p.length-h;for(v=x%2===0?h+1:h;v=18?(y-=18,S+=1,this.words[S]|=P>>>26):y+=8}this._strip()};function l(I,p,h,g){for(var v=0,y=0,S=Math.min(I.length,h),P=p;P=49?y=x-49+10:x>=17?y=x-17+10:y=x,r(x>=0&&y1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},a.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},typeof Symbol<"u"&&typeof Symbol.for=="function")try{a.prototype[Symbol.for("nodejs.util.inspect.custom")]=u}catch{a.prototype.inspect=u}else a.prototype.inspect=u;function u(){return(this.red?""}var c=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],w=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],k=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];a.prototype.toString=function(p,h){p=p||10,h=h|0||1;var g;if(p===16||p==="hex"){g="";for(var v=0,y=0,S=0;S>>24-v&16777215,v+=2,v>=26&&(v-=26,S--),y!==0||S!==this.length-1?g=c[6-x.length]+x+g:g=x+g}for(y!==0&&(g=y.toString(16)+g);g.length%h!==0;)g="0"+g;return this.negative!==0&&(g="-"+g),g}if(p===(p|0)&&p>=2&&p<=36){var f=w[p],E=k[p];g="";var U=this.clone();for(U.negative=0;!U.isZero();){var $=U.modrn(E).toString(p);U=U.idivn(E),U.isZero()?g=$+g:g=c[f-$.length]+$+g}for(this.isZero()&&(g="0"+g);g.length%h!==0;)g="0"+g;return this.negative!==0&&(g="-"+g),g}r(!1,"Base should be between 2 and 36")},a.prototype.toNumber=function(){var p=this.words[0];return this.length===2?p+=this.words[1]*67108864:this.length===3&&this.words[2]===1?p+=4503599627370496+this.words[1]*67108864:this.length>2&&r(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-p:p},a.prototype.toJSON=function(){return this.toString(16,2)},n&&(a.prototype.toBuffer=function(p,h){return this.toArrayLike(n,p,h)}),a.prototype.toArray=function(p,h){return this.toArrayLike(Array,p,h)};var z=function(p,h){return p.allocUnsafe?p.allocUnsafe(h):new p(h)};a.prototype.toArrayLike=function(p,h,g){this._strip();var v=this.byteLength(),y=g||Math.max(1,v);r(v<=y,"byte array longer than desired length"),r(y>0,"Requested array length <= 0");var S=z(p,y),P=h==="le"?"LE":"BE";return this["_toArrayLike"+P](S,v),S},a.prototype._toArrayLikeLE=function(p,h){for(var g=0,v=0,y=0,S=0;y>8&255),g>16&255),S===6?(g>24&255),v=0,S=0):(v=P>>>24,S+=2)}if(g=0&&(p[g--]=P>>8&255),g>=0&&(p[g--]=P>>16&255),S===6?(g>=0&&(p[g--]=P>>24&255),v=0,S=0):(v=P>>>24,S+=2)}if(g>=0)for(p[g--]=v;g>=0;)p[g--]=0},Math.clz32?a.prototype._countBits=function(p){return 32-Math.clz32(p)}:a.prototype._countBits=function(p){var h=p,g=0;return h>=4096&&(g+=13,h>>>=13),h>=64&&(g+=7,h>>>=7),h>=8&&(g+=4,h>>>=4),h>=2&&(g+=2,h>>>=2),g+h},a.prototype._zeroBits=function(p){if(p===0)return 26;var h=p,g=0;return h&8191||(g+=13,h>>>=13),h&127||(g+=7,h>>>=7),h&15||(g+=4,h>>>=4),h&3||(g+=2,h>>>=2),h&1||g++,g},a.prototype.bitLength=function(){var p=this.words[this.length-1],h=this._countBits(p);return(this.length-1)*26+h};function _(I){for(var p=new Array(I.bitLength()),h=0;h>>v&1}return p}a.prototype.zeroBits=function(){if(this.isZero())return 0;for(var p=0,h=0;hp.length?this.clone().ior(p):p.clone().ior(this)},a.prototype.uor=function(p){return this.length>p.length?this.clone().iuor(p):p.clone().iuor(this)},a.prototype.iuand=function(p){var h;this.length>p.length?h=p:h=this;for(var g=0;gp.length?this.clone().iand(p):p.clone().iand(this)},a.prototype.uand=function(p){return this.length>p.length?this.clone().iuand(p):p.clone().iuand(this)},a.prototype.iuxor=function(p){var h,g;this.length>p.length?(h=this,g=p):(h=p,g=this);for(var v=0;vp.length?this.clone().ixor(p):p.clone().ixor(this)},a.prototype.uxor=function(p){return this.length>p.length?this.clone().iuxor(p):p.clone().iuxor(this)},a.prototype.inotn=function(p){r(typeof p=="number"&&p>=0);var h=Math.ceil(p/26)|0,g=p%26;this._expand(h),g>0&&h--;for(var v=0;v0&&(this.words[v]=~this.words[v]&67108863>>26-g),this._strip()},a.prototype.notn=function(p){return this.clone().inotn(p)},a.prototype.setn=function(p,h){r(typeof p=="number"&&p>=0);var g=p/26|0,v=p%26;return this._expand(g+1),h?this.words[g]=this.words[g]|1<p.length?(g=this,v=p):(g=p,v=this);for(var y=0,S=0;S>>26;for(;y!==0&&S>>26;if(this.length=g.length,y!==0)this.words[this.length]=y,this.length++;else if(g!==this)for(;Sp.length?this.clone().iadd(p):p.clone().iadd(this)},a.prototype.isub=function(p){if(p.negative!==0){p.negative=0;var h=this.iadd(p);return p.negative=1,h._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(p),this.negative=1,this._normSign();var g=this.cmp(p);if(g===0)return this.negative=0,this.length=1,this.words[0]=0,this;var v,y;g>0?(v=this,y=p):(v=p,y=this);for(var S=0,P=0;P>26,this.words[P]=h&67108863;for(;S!==0&&P>26,this.words[P]=h&67108863;if(S===0&&P>>26,U=x&67108863,$=Math.min(f,p.length-1),H=Math.max(0,f-I.length+1);H<=$;H++){var J=f-H|0;v=I.words[J]|0,y=p.words[H]|0,S=v*y+U,E+=S/67108864|0,U=S&67108863}h.words[f]=U|0,x=E|0}return x!==0?h.words[f]=x|0:h.length--,h._strip()}var D=function(p,h,g){var v=p.words,y=h.words,S=g.words,P=0,x,f,E,U=v[0]|0,$=U&8191,H=U>>>13,J=v[1]|0,se=J&8191,le=J>>>13,Oe=v[2]|0,pe=Oe&8191,me=Oe>>>13,Ye=v[3]|0,Ve=Ye&8191,Fe=Ye>>>13,Sa=v[4]|0,st=Sa&8191,mt=Sa>>>13,y1=v[5]|0,ft=y1&8191,ht=y1>>>13,ys=v[6]|0,ot=ys&8191,et=ys>>>13,bs=v[7]|0,lt=bs&8191,dt=bs>>>13,vs=v[8]|0,ut=vs&8191,gt=vs>>>13,b1=v[9]|0,yt=b1&8191,bt=b1>>>13,Sk=y[0]|0,Zt=Sk&8191,Jt=Sk>>>13,wk=y[1]|0,Yt=wk&8191,Qt=wk>>>13,xk=y[2]|0,Xt=xk&8191,er=xk>>>13,Ak=y[3]|0,tr=Ak&8191,rr=Ak>>>13,_k=y[4]|0,ir=_k&8191,ar=_k>>>13,kk=y[5]|0,nr=kk&8191,sr=kk>>>13,Ek=y[6]|0,or=Ek&8191,lr=Ek>>>13,Pk=y[7]|0,dr=Pk&8191,ur=Pk>>>13,Tk=y[8]|0,cr=Tk&8191,pr=Tk>>>13,zk=y[9]|0,mr=zk&8191,fr=zk>>>13;g.negative=p.negative^h.negative,g.length=19,x=Math.imul($,Zt),f=Math.imul($,Jt),f=f+Math.imul(H,Zt)|0,E=Math.imul(H,Jt);var M9=(P+x|0)+((f&8191)<<13)|0;P=(E+(f>>>13)|0)+(M9>>>26)|0,M9&=67108863,x=Math.imul(se,Zt),f=Math.imul(se,Jt),f=f+Math.imul(le,Zt)|0,E=Math.imul(le,Jt),x=x+Math.imul($,Yt)|0,f=f+Math.imul($,Qt)|0,f=f+Math.imul(H,Yt)|0,E=E+Math.imul(H,Qt)|0;var D9=(P+x|0)+((f&8191)<<13)|0;P=(E+(f>>>13)|0)+(D9>>>26)|0,D9&=67108863,x=Math.imul(pe,Zt),f=Math.imul(pe,Jt),f=f+Math.imul(me,Zt)|0,E=Math.imul(me,Jt),x=x+Math.imul(se,Yt)|0,f=f+Math.imul(se,Qt)|0,f=f+Math.imul(le,Yt)|0,E=E+Math.imul(le,Qt)|0,x=x+Math.imul($,Xt)|0,f=f+Math.imul($,er)|0,f=f+Math.imul(H,Xt)|0,E=E+Math.imul(H,er)|0;var R9=(P+x|0)+((f&8191)<<13)|0;P=(E+(f>>>13)|0)+(R9>>>26)|0,R9&=67108863,x=Math.imul(Ve,Zt),f=Math.imul(Ve,Jt),f=f+Math.imul(Fe,Zt)|0,E=Math.imul(Fe,Jt),x=x+Math.imul(pe,Yt)|0,f=f+Math.imul(pe,Qt)|0,f=f+Math.imul(me,Yt)|0,E=E+Math.imul(me,Qt)|0,x=x+Math.imul(se,Xt)|0,f=f+Math.imul(se,er)|0,f=f+Math.imul(le,Xt)|0,E=E+Math.imul(le,er)|0,x=x+Math.imul($,tr)|0,f=f+Math.imul($,rr)|0,f=f+Math.imul(H,tr)|0,E=E+Math.imul(H,rr)|0;var B9=(P+x|0)+((f&8191)<<13)|0;P=(E+(f>>>13)|0)+(B9>>>26)|0,B9&=67108863,x=Math.imul(st,Zt),f=Math.imul(st,Jt),f=f+Math.imul(mt,Zt)|0,E=Math.imul(mt,Jt),x=x+Math.imul(Ve,Yt)|0,f=f+Math.imul(Ve,Qt)|0,f=f+Math.imul(Fe,Yt)|0,E=E+Math.imul(Fe,Qt)|0,x=x+Math.imul(pe,Xt)|0,f=f+Math.imul(pe,er)|0,f=f+Math.imul(me,Xt)|0,E=E+Math.imul(me,er)|0,x=x+Math.imul(se,tr)|0,f=f+Math.imul(se,rr)|0,f=f+Math.imul(le,tr)|0,E=E+Math.imul(le,rr)|0,x=x+Math.imul($,ir)|0,f=f+Math.imul($,ar)|0,f=f+Math.imul(H,ir)|0,E=E+Math.imul(H,ar)|0;var C9=(P+x|0)+((f&8191)<<13)|0;P=(E+(f>>>13)|0)+(C9>>>26)|0,C9&=67108863,x=Math.imul(ft,Zt),f=Math.imul(ft,Jt),f=f+Math.imul(ht,Zt)|0,E=Math.imul(ht,Jt),x=x+Math.imul(st,Yt)|0,f=f+Math.imul(st,Qt)|0,f=f+Math.imul(mt,Yt)|0,E=E+Math.imul(mt,Qt)|0,x=x+Math.imul(Ve,Xt)|0,f=f+Math.imul(Ve,er)|0,f=f+Math.imul(Fe,Xt)|0,E=E+Math.imul(Fe,er)|0,x=x+Math.imul(pe,tr)|0,f=f+Math.imul(pe,rr)|0,f=f+Math.imul(me,tr)|0,E=E+Math.imul(me,rr)|0,x=x+Math.imul(se,ir)|0,f=f+Math.imul(se,ar)|0,f=f+Math.imul(le,ir)|0,E=E+Math.imul(le,ar)|0,x=x+Math.imul($,nr)|0,f=f+Math.imul($,sr)|0,f=f+Math.imul(H,nr)|0,E=E+Math.imul(H,sr)|0;var O9=(P+x|0)+((f&8191)<<13)|0;P=(E+(f>>>13)|0)+(O9>>>26)|0,O9&=67108863,x=Math.imul(ot,Zt),f=Math.imul(ot,Jt),f=f+Math.imul(et,Zt)|0,E=Math.imul(et,Jt),x=x+Math.imul(ft,Yt)|0,f=f+Math.imul(ft,Qt)|0,f=f+Math.imul(ht,Yt)|0,E=E+Math.imul(ht,Qt)|0,x=x+Math.imul(st,Xt)|0,f=f+Math.imul(st,er)|0,f=f+Math.imul(mt,Xt)|0,E=E+Math.imul(mt,er)|0,x=x+Math.imul(Ve,tr)|0,f=f+Math.imul(Ve,rr)|0,f=f+Math.imul(Fe,tr)|0,E=E+Math.imul(Fe,rr)|0,x=x+Math.imul(pe,ir)|0,f=f+Math.imul(pe,ar)|0,f=f+Math.imul(me,ir)|0,E=E+Math.imul(me,ar)|0,x=x+Math.imul(se,nr)|0,f=f+Math.imul(se,sr)|0,f=f+Math.imul(le,nr)|0,E=E+Math.imul(le,sr)|0,x=x+Math.imul($,or)|0,f=f+Math.imul($,lr)|0,f=f+Math.imul(H,or)|0,E=E+Math.imul(H,lr)|0;var N9=(P+x|0)+((f&8191)<<13)|0;P=(E+(f>>>13)|0)+(N9>>>26)|0,N9&=67108863,x=Math.imul(lt,Zt),f=Math.imul(lt,Jt),f=f+Math.imul(dt,Zt)|0,E=Math.imul(dt,Jt),x=x+Math.imul(ot,Yt)|0,f=f+Math.imul(ot,Qt)|0,f=f+Math.imul(et,Yt)|0,E=E+Math.imul(et,Qt)|0,x=x+Math.imul(ft,Xt)|0,f=f+Math.imul(ft,er)|0,f=f+Math.imul(ht,Xt)|0,E=E+Math.imul(ht,er)|0,x=x+Math.imul(st,tr)|0,f=f+Math.imul(st,rr)|0,f=f+Math.imul(mt,tr)|0,E=E+Math.imul(mt,rr)|0,x=x+Math.imul(Ve,ir)|0,f=f+Math.imul(Ve,ar)|0,f=f+Math.imul(Fe,ir)|0,E=E+Math.imul(Fe,ar)|0,x=x+Math.imul(pe,nr)|0,f=f+Math.imul(pe,sr)|0,f=f+Math.imul(me,nr)|0,E=E+Math.imul(me,sr)|0,x=x+Math.imul(se,or)|0,f=f+Math.imul(se,lr)|0,f=f+Math.imul(le,or)|0,E=E+Math.imul(le,lr)|0,x=x+Math.imul($,dr)|0,f=f+Math.imul($,ur)|0,f=f+Math.imul(H,dr)|0,E=E+Math.imul(H,ur)|0;var q9=(P+x|0)+((f&8191)<<13)|0;P=(E+(f>>>13)|0)+(q9>>>26)|0,q9&=67108863,x=Math.imul(ut,Zt),f=Math.imul(ut,Jt),f=f+Math.imul(gt,Zt)|0,E=Math.imul(gt,Jt),x=x+Math.imul(lt,Yt)|0,f=f+Math.imul(lt,Qt)|0,f=f+Math.imul(dt,Yt)|0,E=E+Math.imul(dt,Qt)|0,x=x+Math.imul(ot,Xt)|0,f=f+Math.imul(ot,er)|0,f=f+Math.imul(et,Xt)|0,E=E+Math.imul(et,er)|0,x=x+Math.imul(ft,tr)|0,f=f+Math.imul(ft,rr)|0,f=f+Math.imul(ht,tr)|0,E=E+Math.imul(ht,rr)|0,x=x+Math.imul(st,ir)|0,f=f+Math.imul(st,ar)|0,f=f+Math.imul(mt,ir)|0,E=E+Math.imul(mt,ar)|0,x=x+Math.imul(Ve,nr)|0,f=f+Math.imul(Ve,sr)|0,f=f+Math.imul(Fe,nr)|0,E=E+Math.imul(Fe,sr)|0,x=x+Math.imul(pe,or)|0,f=f+Math.imul(pe,lr)|0,f=f+Math.imul(me,or)|0,E=E+Math.imul(me,lr)|0,x=x+Math.imul(se,dr)|0,f=f+Math.imul(se,ur)|0,f=f+Math.imul(le,dr)|0,E=E+Math.imul(le,ur)|0,x=x+Math.imul($,cr)|0,f=f+Math.imul($,pr)|0,f=f+Math.imul(H,cr)|0,E=E+Math.imul(H,pr)|0;var W9=(P+x|0)+((f&8191)<<13)|0;P=(E+(f>>>13)|0)+(W9>>>26)|0,W9&=67108863,x=Math.imul(yt,Zt),f=Math.imul(yt,Jt),f=f+Math.imul(bt,Zt)|0,E=Math.imul(bt,Jt),x=x+Math.imul(ut,Yt)|0,f=f+Math.imul(ut,Qt)|0,f=f+Math.imul(gt,Yt)|0,E=E+Math.imul(gt,Qt)|0,x=x+Math.imul(lt,Xt)|0,f=f+Math.imul(lt,er)|0,f=f+Math.imul(dt,Xt)|0,E=E+Math.imul(dt,er)|0,x=x+Math.imul(ot,tr)|0,f=f+Math.imul(ot,rr)|0,f=f+Math.imul(et,tr)|0,E=E+Math.imul(et,rr)|0,x=x+Math.imul(ft,ir)|0,f=f+Math.imul(ft,ar)|0,f=f+Math.imul(ht,ir)|0,E=E+Math.imul(ht,ar)|0,x=x+Math.imul(st,nr)|0,f=f+Math.imul(st,sr)|0,f=f+Math.imul(mt,nr)|0,E=E+Math.imul(mt,sr)|0,x=x+Math.imul(Ve,or)|0,f=f+Math.imul(Ve,lr)|0,f=f+Math.imul(Fe,or)|0,E=E+Math.imul(Fe,lr)|0,x=x+Math.imul(pe,dr)|0,f=f+Math.imul(pe,ur)|0,f=f+Math.imul(me,dr)|0,E=E+Math.imul(me,ur)|0,x=x+Math.imul(se,cr)|0,f=f+Math.imul(se,pr)|0,f=f+Math.imul(le,cr)|0,E=E+Math.imul(le,pr)|0,x=x+Math.imul($,mr)|0,f=f+Math.imul($,fr)|0,f=f+Math.imul(H,mr)|0,E=E+Math.imul(H,fr)|0;var V9=(P+x|0)+((f&8191)<<13)|0;P=(E+(f>>>13)|0)+(V9>>>26)|0,V9&=67108863,x=Math.imul(yt,Yt),f=Math.imul(yt,Qt),f=f+Math.imul(bt,Yt)|0,E=Math.imul(bt,Qt),x=x+Math.imul(ut,Xt)|0,f=f+Math.imul(ut,er)|0,f=f+Math.imul(gt,Xt)|0,E=E+Math.imul(gt,er)|0,x=x+Math.imul(lt,tr)|0,f=f+Math.imul(lt,rr)|0,f=f+Math.imul(dt,tr)|0,E=E+Math.imul(dt,rr)|0,x=x+Math.imul(ot,ir)|0,f=f+Math.imul(ot,ar)|0,f=f+Math.imul(et,ir)|0,E=E+Math.imul(et,ar)|0,x=x+Math.imul(ft,nr)|0,f=f+Math.imul(ft,sr)|0,f=f+Math.imul(ht,nr)|0,E=E+Math.imul(ht,sr)|0,x=x+Math.imul(st,or)|0,f=f+Math.imul(st,lr)|0,f=f+Math.imul(mt,or)|0,E=E+Math.imul(mt,lr)|0,x=x+Math.imul(Ve,dr)|0,f=f+Math.imul(Ve,ur)|0,f=f+Math.imul(Fe,dr)|0,E=E+Math.imul(Fe,ur)|0,x=x+Math.imul(pe,cr)|0,f=f+Math.imul(pe,pr)|0,f=f+Math.imul(me,cr)|0,E=E+Math.imul(me,pr)|0,x=x+Math.imul(se,mr)|0,f=f+Math.imul(se,fr)|0,f=f+Math.imul(le,mr)|0,E=E+Math.imul(le,fr)|0;var F9=(P+x|0)+((f&8191)<<13)|0;P=(E+(f>>>13)|0)+(F9>>>26)|0,F9&=67108863,x=Math.imul(yt,Xt),f=Math.imul(yt,er),f=f+Math.imul(bt,Xt)|0,E=Math.imul(bt,er),x=x+Math.imul(ut,tr)|0,f=f+Math.imul(ut,rr)|0,f=f+Math.imul(gt,tr)|0,E=E+Math.imul(gt,rr)|0,x=x+Math.imul(lt,ir)|0,f=f+Math.imul(lt,ar)|0,f=f+Math.imul(dt,ir)|0,E=E+Math.imul(dt,ar)|0,x=x+Math.imul(ot,nr)|0,f=f+Math.imul(ot,sr)|0,f=f+Math.imul(et,nr)|0,E=E+Math.imul(et,sr)|0,x=x+Math.imul(ft,or)|0,f=f+Math.imul(ft,lr)|0,f=f+Math.imul(ht,or)|0,E=E+Math.imul(ht,lr)|0,x=x+Math.imul(st,dr)|0,f=f+Math.imul(st,ur)|0,f=f+Math.imul(mt,dr)|0,E=E+Math.imul(mt,ur)|0,x=x+Math.imul(Ve,cr)|0,f=f+Math.imul(Ve,pr)|0,f=f+Math.imul(Fe,cr)|0,E=E+Math.imul(Fe,pr)|0,x=x+Math.imul(pe,mr)|0,f=f+Math.imul(pe,fr)|0,f=f+Math.imul(me,mr)|0,E=E+Math.imul(me,fr)|0;var K9=(P+x|0)+((f&8191)<<13)|0;P=(E+(f>>>13)|0)+(K9>>>26)|0,K9&=67108863,x=Math.imul(yt,tr),f=Math.imul(yt,rr),f=f+Math.imul(bt,tr)|0,E=Math.imul(bt,rr),x=x+Math.imul(ut,ir)|0,f=f+Math.imul(ut,ar)|0,f=f+Math.imul(gt,ir)|0,E=E+Math.imul(gt,ar)|0,x=x+Math.imul(lt,nr)|0,f=f+Math.imul(lt,sr)|0,f=f+Math.imul(dt,nr)|0,E=E+Math.imul(dt,sr)|0,x=x+Math.imul(ot,or)|0,f=f+Math.imul(ot,lr)|0,f=f+Math.imul(et,or)|0,E=E+Math.imul(et,lr)|0,x=x+Math.imul(ft,dr)|0,f=f+Math.imul(ft,ur)|0,f=f+Math.imul(ht,dr)|0,E=E+Math.imul(ht,ur)|0,x=x+Math.imul(st,cr)|0,f=f+Math.imul(st,pr)|0,f=f+Math.imul(mt,cr)|0,E=E+Math.imul(mt,pr)|0,x=x+Math.imul(Ve,mr)|0,f=f+Math.imul(Ve,fr)|0,f=f+Math.imul(Fe,mr)|0,E=E+Math.imul(Fe,fr)|0;var L9=(P+x|0)+((f&8191)<<13)|0;P=(E+(f>>>13)|0)+(L9>>>26)|0,L9&=67108863,x=Math.imul(yt,ir),f=Math.imul(yt,ar),f=f+Math.imul(bt,ir)|0,E=Math.imul(bt,ar),x=x+Math.imul(ut,nr)|0,f=f+Math.imul(ut,sr)|0,f=f+Math.imul(gt,nr)|0,E=E+Math.imul(gt,sr)|0,x=x+Math.imul(lt,or)|0,f=f+Math.imul(lt,lr)|0,f=f+Math.imul(dt,or)|0,E=E+Math.imul(dt,lr)|0,x=x+Math.imul(ot,dr)|0,f=f+Math.imul(ot,ur)|0,f=f+Math.imul(et,dr)|0,E=E+Math.imul(et,ur)|0,x=x+Math.imul(ft,cr)|0,f=f+Math.imul(ft,pr)|0,f=f+Math.imul(ht,cr)|0,E=E+Math.imul(ht,pr)|0,x=x+Math.imul(st,mr)|0,f=f+Math.imul(st,fr)|0,f=f+Math.imul(mt,mr)|0,E=E+Math.imul(mt,fr)|0;var U9=(P+x|0)+((f&8191)<<13)|0;P=(E+(f>>>13)|0)+(U9>>>26)|0,U9&=67108863,x=Math.imul(yt,nr),f=Math.imul(yt,sr),f=f+Math.imul(bt,nr)|0,E=Math.imul(bt,sr),x=x+Math.imul(ut,or)|0,f=f+Math.imul(ut,lr)|0,f=f+Math.imul(gt,or)|0,E=E+Math.imul(gt,lr)|0,x=x+Math.imul(lt,dr)|0,f=f+Math.imul(lt,ur)|0,f=f+Math.imul(dt,dr)|0,E=E+Math.imul(dt,ur)|0,x=x+Math.imul(ot,cr)|0,f=f+Math.imul(ot,pr)|0,f=f+Math.imul(et,cr)|0,E=E+Math.imul(et,pr)|0,x=x+Math.imul(ft,mr)|0,f=f+Math.imul(ft,fr)|0,f=f+Math.imul(ht,mr)|0,E=E+Math.imul(ht,fr)|0;var j9=(P+x|0)+((f&8191)<<13)|0;P=(E+(f>>>13)|0)+(j9>>>26)|0,j9&=67108863,x=Math.imul(yt,or),f=Math.imul(yt,lr),f=f+Math.imul(bt,or)|0,E=Math.imul(bt,lr),x=x+Math.imul(ut,dr)|0,f=f+Math.imul(ut,ur)|0,f=f+Math.imul(gt,dr)|0,E=E+Math.imul(gt,ur)|0,x=x+Math.imul(lt,cr)|0,f=f+Math.imul(lt,pr)|0,f=f+Math.imul(dt,cr)|0,E=E+Math.imul(dt,pr)|0,x=x+Math.imul(ot,mr)|0,f=f+Math.imul(ot,fr)|0,f=f+Math.imul(et,mr)|0,E=E+Math.imul(et,fr)|0;var H9=(P+x|0)+((f&8191)<<13)|0;P=(E+(f>>>13)|0)+(H9>>>26)|0,H9&=67108863,x=Math.imul(yt,dr),f=Math.imul(yt,ur),f=f+Math.imul(bt,dr)|0,E=Math.imul(bt,ur),x=x+Math.imul(ut,cr)|0,f=f+Math.imul(ut,pr)|0,f=f+Math.imul(gt,cr)|0,E=E+Math.imul(gt,pr)|0,x=x+Math.imul(lt,mr)|0,f=f+Math.imul(lt,fr)|0,f=f+Math.imul(dt,mr)|0,E=E+Math.imul(dt,fr)|0;var $9=(P+x|0)+((f&8191)<<13)|0;P=(E+(f>>>13)|0)+($9>>>26)|0,$9&=67108863,x=Math.imul(yt,cr),f=Math.imul(yt,pr),f=f+Math.imul(bt,cr)|0,E=Math.imul(bt,pr),x=x+Math.imul(ut,mr)|0,f=f+Math.imul(ut,fr)|0,f=f+Math.imul(gt,mr)|0,E=E+Math.imul(gt,fr)|0;var G9=(P+x|0)+((f&8191)<<13)|0;P=(E+(f>>>13)|0)+(G9>>>26)|0,G9&=67108863,x=Math.imul(yt,mr),f=Math.imul(yt,fr),f=f+Math.imul(bt,mr)|0,E=Math.imul(bt,fr);var Z9=(P+x|0)+((f&8191)<<13)|0;return P=(E+(f>>>13)|0)+(Z9>>>26)|0,Z9&=67108863,S[0]=M9,S[1]=D9,S[2]=R9,S[3]=B9,S[4]=C9,S[5]=O9,S[6]=N9,S[7]=q9,S[8]=W9,S[9]=V9,S[10]=F9,S[11]=K9,S[12]=L9,S[13]=U9,S[14]=j9,S[15]=H9,S[16]=$9,S[17]=G9,S[18]=Z9,P!==0&&(S[19]=P,g.length++),g};Math.imul||(D=T);function V(I,p,h){h.negative=p.negative^I.negative,h.length=I.length+p.length;for(var g=0,v=0,y=0;y>>26)|0,v+=S>>>26,S&=67108863}h.words[y]=P,g=S,S=v}return g!==0?h.words[y]=g:h.length--,h._strip()}function R(I,p,h){return V(I,p,h)}a.prototype.mulTo=function(p,h){var g,v=this.length+p.length;return this.length===10&&p.length===10?g=D(this,p,h):v<63?g=T(this,p,h):v<1024?g=V(this,p,h):g=R(this,p,h),g};function B(I,p){this.x=I,this.y=p}B.prototype.makeRBT=function(p){for(var h=new Array(p),g=a.prototype._countBits(p)-1,v=0;v>=1;return v},B.prototype.permute=function(p,h,g,v,y,S){for(var P=0;P>>1)y++;return 1<>>13,g[2*S+1]=y&8191,y=y>>>13;for(S=2*h;S>=26,g+=y/67108864|0,g+=S>>>26,this.words[v]=S&67108863}return g!==0&&(this.words[v]=g,this.length++),h?this.ineg():this},a.prototype.muln=function(p){return this.clone().imuln(p)},a.prototype.sqr=function(){return this.mul(this)},a.prototype.isqr=function(){return this.imul(this.clone())},a.prototype.pow=function(p){var h=_(p);if(h.length===0)return new a(1);for(var g=this,v=0;v=0);var h=p%26,g=(p-h)/26,v=67108863>>>26-h<<26-h,y;if(h!==0){var S=0;for(y=0;y>>26-h}S&&(this.words[y]=S,this.length++)}if(g!==0){for(y=this.length-1;y>=0;y--)this.words[y+g]=this.words[y];for(y=0;y=0);var v;h?v=(h-h%26)/26:v=0;var y=p%26,S=Math.min((p-y)/26,this.length),P=67108863^67108863>>>y<S)for(this.length-=S,f=0;f=0&&(E!==0||f>=v);f--){var U=this.words[f]|0;this.words[f]=E<<26-y|U>>>y,E=U&P}return x&&E!==0&&(x.words[x.length++]=E),this.length===0&&(this.words[0]=0,this.length=1),this._strip()},a.prototype.ishrn=function(p,h,g){return r(this.negative===0),this.iushrn(p,h,g)},a.prototype.shln=function(p){return this.clone().ishln(p)},a.prototype.ushln=function(p){return this.clone().iushln(p)},a.prototype.shrn=function(p){return this.clone().ishrn(p)},a.prototype.ushrn=function(p){return this.clone().iushrn(p)},a.prototype.testn=function(p){r(typeof p=="number"&&p>=0);var h=p%26,g=(p-h)/26,v=1<=0);var h=p%26,g=(p-h)/26;if(r(this.negative===0,"imaskn works only with positive numbers"),this.length<=g)return this;if(h!==0&&g++,this.length=Math.min(g,this.length),h!==0){var v=67108863^67108863>>>h<=67108864;h++)this.words[h]-=67108864,h===this.length-1?this.words[h+1]=1:this.words[h+1]++;return this.length=Math.max(this.length,h+1),this},a.prototype.isubn=function(p){if(r(typeof p=="number"),r(p<67108864),p<0)return this.iaddn(-p);if(this.negative!==0)return this.negative=0,this.iaddn(p),this.negative=1,this;if(this.words[0]-=p,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var h=0;h>26)-(x/67108864|0),this.words[y+g]=S&67108863}for(;y>26,this.words[y+g]=S&67108863;if(P===0)return this._strip();for(r(P===-1),P=0,y=0;y>26,this.words[y]=S&67108863;return this.negative=1,this._strip()},a.prototype._wordDiv=function(p,h){var g=this.length-p.length,v=this.clone(),y=p,S=y.words[y.length-1]|0,P=this._countBits(S);g=26-P,g!==0&&(y=y.ushln(g),v.iushln(g),S=y.words[y.length-1]|0);var x=v.length-y.length,f;if(h!=="mod"){f=new a(null),f.length=x+1,f.words=new Array(f.length);for(var E=0;E=0;$--){var H=(v.words[y.length+$]|0)*67108864+(v.words[y.length+$-1]|0);for(H=Math.min(H/S|0,67108863),v._ishlnsubmul(y,H,$);v.negative!==0;)H--,v.negative=0,v._ishlnsubmul(y,1,$),v.isZero()||(v.negative^=1);f&&(f.words[$]=H)}return f&&f._strip(),v._strip(),h!=="div"&&g!==0&&v.iushrn(g),{div:f||null,mod:v}},a.prototype.divmod=function(p,h,g){if(r(!p.isZero()),this.isZero())return{div:new a(0),mod:new a(0)};var v,y,S;return this.negative!==0&&p.negative===0?(S=this.neg().divmod(p,h),h!=="mod"&&(v=S.div.neg()),h!=="div"&&(y=S.mod.neg(),g&&y.negative!==0&&y.iadd(p)),{div:v,mod:y}):this.negative===0&&p.negative!==0?(S=this.divmod(p.neg(),h),h!=="mod"&&(v=S.div.neg()),{div:v,mod:S.mod}):this.negative&p.negative?(S=this.neg().divmod(p.neg(),h),h!=="div"&&(y=S.mod.neg(),g&&y.negative!==0&&y.isub(p)),{div:S.div,mod:y}):p.length>this.length||this.cmp(p)<0?{div:new a(0),mod:this}:p.length===1?h==="div"?{div:this.divn(p.words[0]),mod:null}:h==="mod"?{div:null,mod:new a(this.modrn(p.words[0]))}:{div:this.divn(p.words[0]),mod:new a(this.modrn(p.words[0]))}:this._wordDiv(p,h)},a.prototype.div=function(p){return this.divmod(p,"div",!1).div},a.prototype.mod=function(p){return this.divmod(p,"mod",!1).mod},a.prototype.umod=function(p){return this.divmod(p,"mod",!0).mod},a.prototype.divRound=function(p){var h=this.divmod(p);if(h.mod.isZero())return h.div;var g=h.div.negative!==0?h.mod.isub(p):h.mod,v=p.ushrn(1),y=p.andln(1),S=g.cmp(v);return S<0||y===1&&S===0?h.div:h.div.negative!==0?h.div.isubn(1):h.div.iaddn(1)},a.prototype.modrn=function(p){var h=p<0;h&&(p=-p),r(p<=67108863);for(var g=(1<<26)%p,v=0,y=this.length-1;y>=0;y--)v=(g*v+(this.words[y]|0))%p;return h?-v:v},a.prototype.modn=function(p){return this.modrn(p)},a.prototype.idivn=function(p){var h=p<0;h&&(p=-p),r(p<=67108863);for(var g=0,v=this.length-1;v>=0;v--){var y=(this.words[v]|0)+g*67108864;this.words[v]=y/p|0,g=y%p}return this._strip(),h?this.ineg():this},a.prototype.divn=function(p){return this.clone().idivn(p)},a.prototype.egcd=function(p){r(p.negative===0),r(!p.isZero());var h=this,g=p.clone();h.negative!==0?h=h.umod(p):h=h.clone();for(var v=new a(1),y=new a(0),S=new a(0),P=new a(1),x=0;h.isEven()&&g.isEven();)h.iushrn(1),g.iushrn(1),++x;for(var f=g.clone(),E=h.clone();!h.isZero();){for(var U=0,$=1;!(h.words[0]&$)&&U<26;++U,$<<=1);if(U>0)for(h.iushrn(U);U-- >0;)(v.isOdd()||y.isOdd())&&(v.iadd(f),y.isub(E)),v.iushrn(1),y.iushrn(1);for(var H=0,J=1;!(g.words[0]&J)&&H<26;++H,J<<=1);if(H>0)for(g.iushrn(H);H-- >0;)(S.isOdd()||P.isOdd())&&(S.iadd(f),P.isub(E)),S.iushrn(1),P.iushrn(1);h.cmp(g)>=0?(h.isub(g),v.isub(S),y.isub(P)):(g.isub(h),S.isub(v),P.isub(y))}return{a:S,b:P,gcd:g.iushln(x)}},a.prototype._invmp=function(p){r(p.negative===0),r(!p.isZero());var h=this,g=p.clone();h.negative!==0?h=h.umod(p):h=h.clone();for(var v=new a(1),y=new a(0),S=g.clone();h.cmpn(1)>0&&g.cmpn(1)>0;){for(var P=0,x=1;!(h.words[0]&x)&&P<26;++P,x<<=1);if(P>0)for(h.iushrn(P);P-- >0;)v.isOdd()&&v.iadd(S),v.iushrn(1);for(var f=0,E=1;!(g.words[0]&E)&&f<26;++f,E<<=1);if(f>0)for(g.iushrn(f);f-- >0;)y.isOdd()&&y.iadd(S),y.iushrn(1);h.cmp(g)>=0?(h.isub(g),v.isub(y)):(g.isub(h),y.isub(v))}var U;return h.cmpn(1)===0?U=v:U=y,U.cmpn(0)<0&&U.iadd(p),U},a.prototype.gcd=function(p){if(this.isZero())return p.abs();if(p.isZero())return this.abs();var h=this.clone(),g=p.clone();h.negative=0,g.negative=0;for(var v=0;h.isEven()&&g.isEven();v++)h.iushrn(1),g.iushrn(1);do{for(;h.isEven();)h.iushrn(1);for(;g.isEven();)g.iushrn(1);var y=h.cmp(g);if(y<0){var S=h;h=g,g=S}else if(y===0||g.cmpn(1)===0)break;h.isub(g)}while(!0);return g.iushln(v)},a.prototype.invm=function(p){return this.egcd(p).a.umod(p)},a.prototype.isEven=function(){return(this.words[0]&1)===0},a.prototype.isOdd=function(){return(this.words[0]&1)===1},a.prototype.andln=function(p){return this.words[0]&p},a.prototype.bincn=function(p){r(typeof p=="number");var h=p%26,g=(p-h)/26,v=1<>>26,P&=67108863,this.words[S]=P}return y!==0&&(this.words[S]=y,this.length++),this},a.prototype.isZero=function(){return this.length===1&&this.words[0]===0},a.prototype.cmpn=function(p){var h=p<0;if(this.negative!==0&&!h)return-1;if(this.negative===0&&h)return 1;this._strip();var g;if(this.length>1)g=1;else{h&&(p=-p),r(p<=67108863,"Number is too big");var v=this.words[0]|0;g=v===p?0:vp.length)return 1;if(this.length=0;g--){var v=this.words[g]|0,y=p.words[g]|0;if(v!==y){vy&&(h=1);break}}return h},a.prototype.gtn=function(p){return this.cmpn(p)===1},a.prototype.gt=function(p){return this.cmp(p)===1},a.prototype.gten=function(p){return this.cmpn(p)>=0},a.prototype.gte=function(p){return this.cmp(p)>=0},a.prototype.ltn=function(p){return this.cmpn(p)===-1},a.prototype.lt=function(p){return this.cmp(p)===-1},a.prototype.lten=function(p){return this.cmpn(p)<=0},a.prototype.lte=function(p){return this.cmp(p)<=0},a.prototype.eqn=function(p){return this.cmpn(p)===0},a.prototype.eq=function(p){return this.cmp(p)===0},a.red=function(p){return new Y(p)},a.prototype.toRed=function(p){return r(!this.red,"Already a number in reduction context"),r(this.negative===0,"red works only with positives"),p.convertTo(this)._forceRed(p)},a.prototype.fromRed=function(){return r(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},a.prototype._forceRed=function(p){return this.red=p,this},a.prototype.forceRed=function(p){return r(!this.red,"Already a number in reduction context"),this._forceRed(p)},a.prototype.redAdd=function(p){return r(this.red,"redAdd works only with red numbers"),this.red.add(this,p)},a.prototype.redIAdd=function(p){return r(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,p)},a.prototype.redSub=function(p){return r(this.red,"redSub works only with red numbers"),this.red.sub(this,p)},a.prototype.redISub=function(p){return r(this.red,"redISub works only with red numbers"),this.red.isub(this,p)},a.prototype.redShl=function(p){return r(this.red,"redShl works only with red numbers"),this.red.shl(this,p)},a.prototype.redMul=function(p){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,p),this.red.mul(this,p)},a.prototype.redIMul=function(p){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,p),this.red.imul(this,p)},a.prototype.redSqr=function(){return r(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},a.prototype.redISqr=function(){return r(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},a.prototype.redSqrt=function(){return r(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},a.prototype.redInvm=function(){return r(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},a.prototype.redNeg=function(){return r(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},a.prototype.redPow=function(p){return r(this.red&&!p.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,p)};var q={k256:null,p224:null,p192:null,p25519:null};function K(I,p){this.name=I,this.p=new a(p,16),this.n=this.p.bitLength(),this.k=new a(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}K.prototype._tmp=function(){var p=new a(null);return p.words=new Array(Math.ceil(this.n/13)),p},K.prototype.ireduce=function(p){var h=p,g;do this.split(h,this.tmp),h=this.imulK(h),h=h.iadd(this.tmp),g=h.bitLength();while(g>this.n);var v=g0?h.isub(this.p):h.strip!==void 0?h.strip():h._strip(),h},K.prototype.split=function(p,h){p.iushrn(this.n,0,h)},K.prototype.imulK=function(p){return p.imul(this.k)};function j(){K.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}i(j,K),j.prototype.split=function(p,h){for(var g=4194303,v=Math.min(p.length,9),y=0;y>>22,S=P}S>>>=22,p.words[y-10]=S,S===0&&p.length>10?p.length-=10:p.length-=9},j.prototype.imulK=function(p){p.words[p.length]=0,p.words[p.length+1]=0,p.length+=2;for(var h=0,g=0;g>>=26,p.words[g]=y,h=v}return h!==0&&(p.words[p.length++]=h),p},a._prime=function(p){if(q[p])return q[p];var h;if(p==="k256")h=new j;else if(p==="p224")h=new G;else if(p==="p192")h=new ne;else if(p==="p25519")h=new oe;else throw new Error("Unknown prime "+p);return q[p]=h,h};function Y(I){if(typeof I=="string"){var p=a._prime(I);this.m=p.p,this.prime=p}else r(I.gtn(1),"modulus must be greater than 1"),this.m=I,this.prime=null}Y.prototype._verify1=function(p){r(p.negative===0,"red works only with positives"),r(p.red,"red works only with red numbers")},Y.prototype._verify2=function(p,h){r((p.negative|h.negative)===0,"red works only with positives"),r(p.red&&p.red===h.red,"red works only with red numbers")},Y.prototype.imod=function(p){return this.prime?this.prime.ireduce(p)._forceRed(this):(d(p,p.umod(this.m)._forceRed(this)),p)},Y.prototype.neg=function(p){return p.isZero()?p.clone():this.m.sub(p)._forceRed(this)},Y.prototype.add=function(p,h){this._verify2(p,h);var g=p.add(h);return g.cmp(this.m)>=0&&g.isub(this.m),g._forceRed(this)},Y.prototype.iadd=function(p,h){this._verify2(p,h);var g=p.iadd(h);return g.cmp(this.m)>=0&&g.isub(this.m),g},Y.prototype.sub=function(p,h){this._verify2(p,h);var g=p.sub(h);return g.cmpn(0)<0&&g.iadd(this.m),g._forceRed(this)},Y.prototype.isub=function(p,h){this._verify2(p,h);var g=p.isub(h);return g.cmpn(0)<0&&g.iadd(this.m),g},Y.prototype.shl=function(p,h){return this._verify1(p),this.imod(p.ushln(h))},Y.prototype.imul=function(p,h){return this._verify2(p,h),this.imod(p.imul(h))},Y.prototype.mul=function(p,h){return this._verify2(p,h),this.imod(p.mul(h))},Y.prototype.isqr=function(p){return this.imul(p,p.clone())},Y.prototype.sqr=function(p){return this.mul(p,p)},Y.prototype.sqrt=function(p){if(p.isZero())return p.clone();var h=this.m.andln(3);if(r(h%2===1),h===3){var g=this.m.add(new a(1)).iushrn(2);return this.pow(p,g)}for(var v=this.m.subn(1),y=0;!v.isZero()&&v.andln(1)===0;)y++,v.iushrn(1);r(!v.isZero());var S=new a(1).toRed(this),P=S.redNeg(),x=this.m.subn(1).iushrn(1),f=this.m.bitLength();for(f=new a(2*f*f).toRed(this);this.pow(f,x).cmp(P)!==0;)f.redIAdd(P);for(var E=this.pow(f,v),U=this.pow(p,v.addn(1).iushrn(1)),$=this.pow(p,v),H=y;$.cmp(S)!==0;){for(var J=$,se=0;J.cmp(S)!==0;se++)J=J.redSqr();r(se=0;y--){for(var E=h.words[y],U=f-1;U>=0;U--){var $=E>>U&1;if(S!==v[0]&&(S=this.sqr(S)),$===0&&P===0){x=0;continue}P<<=1,P|=$,x++,!(x!==g&&(y!==0||U!==0))&&(S=this.mul(S,v[P]),x=0,P=0)}f=26}return S},Y.prototype.convertTo=function(p){var h=p.umod(this.m);return h===p?h.clone():h},Y.prototype.convertFrom=function(p){var h=p.clone();return h.red=null,h},a.mont=function(p){return new ce(p)};function ce(I){Y.call(this,I),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new a(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}i(ce,Y),ce.prototype.convertTo=function(p){return this.imod(p.ushln(this.shift))},ce.prototype.convertFrom=function(p){var h=this.imod(p.mul(this.rinv));return h.red=null,h},ce.prototype.imul=function(p,h){if(p.isZero()||h.isZero())return p.words[0]=0,p.length=1,p;var g=p.imul(h),v=g.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),y=g.isub(v).iushrn(this.shift),S=y;return y.cmp(this.m)>=0?S=y.isub(this.m):y.cmpn(0)<0&&(S=y.iadd(this.m)),S._forceRed(this)},ce.prototype.mul=function(p,h){if(p.isZero()||h.isZero())return new a(0)._forceRed(this);var g=p.mul(h),v=g.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),y=g.isub(v).iushrn(this.shift),S=y;return y.cmp(this.m)>=0?S=y.isub(this.m):y.cmpn(0)<0&&(S=y.iadd(this.m)),S._forceRed(this)},ce.prototype.invm=function(p){var h=this.imod(p._invmp(this.m).mul(this.r2));return h._forceRed(this)}})(typeof Ty>"u"||Ty,WE)});var KE=b((Iy,FE)=>{var B4=require("buffer"),Ha=B4.Buffer;function VE(t,e){for(var r in t)e[r]=t[r]}Ha.from&&Ha.alloc&&Ha.allocUnsafe&&Ha.allocUnsafeSlow?FE.exports=B4:(VE(B4,Iy),Iy.Buffer=Xo);function Xo(t,e,r){return Ha(t,e,r)}Xo.prototype=Object.create(Ha.prototype);VE(Ha,Xo);Xo.from=function(t,e,r){if(typeof t=="number")throw new TypeError("Argument must not be a number");return Ha(t,e,r)};Xo.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError("Argument must be a number");var i=Ha(t);return e!==void 0?typeof r=="string"?i.fill(e,r):i.fill(e):i.fill(0),i};Xo.allocUnsafe=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return Ha(t)};Xo.allocUnsafeSlow=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return B4.SlowBuffer(t)}});var UE=b((B4e,LE)=>{"use strict";var C4=KE().Buffer;function CH(t){if(t.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Array(256),r=0;r>>0,R=new Uint8Array(V);T!==D;){for(var B=k[T],q=0,K=V-1;(B!==0||q<_)&&K!==-1;K--,q++)B+=256*R[K]>>>0,R[K]=B%s>>>0,B=B/s>>>0;if(B!==0)throw new Error("Non-zero carry");_=q,T++}for(var j=V-_;j!==V&&R[j]===0;)j++;for(var G=o.repeat(z);j>>0,V=new Uint8Array(D);k[z];){var R=e[k.charCodeAt(z)];if(R===255)return;for(var B=0,q=D-1;(R!==0||B>>0,V[q]=R%256>>>0,R=R/256>>>0;if(R!==0)throw new Error("Non-zero carry");T=B,z++}for(var K=D-T;K!==D&&V[K]===0;)K++;var j=C4.allocUnsafe(_+(D-K));j.fill(0,0,_);for(var G=_;K!==D;)j[G++]=V[K++];return j}function w(k){var z=c(k);if(z)return z;throw new Error("Non-base"+s+" character")}return{encode:u,decodeUnsafe:c,decode:w}}LE.exports=CH});var My=b((C4e,jE)=>{var OH=UE(),NH="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";jE.exports=OH(NH)});var Ry=b(w1=>{"use strict";Object.defineProperty(w1,"__esModule",{value:!0});w1.sha224=w1.sha256=void 0;var qH=iy(),Hi=An(),WH=(t,e,r)=>t&e^~t&r,VH=(t,e,r)=>t&e^t&r^e&r,FH=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Es=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Ps=new Uint32Array(64),O4=class extends qH.SHA2{constructor(){super(64,32,8,!1),this.A=Es[0]|0,this.B=Es[1]|0,this.C=Es[2]|0,this.D=Es[3]|0,this.E=Es[4]|0,this.F=Es[5]|0,this.G=Es[6]|0,this.H=Es[7]|0}get(){let{A:e,B:r,C:i,D:a,E:n,F:s,G:o,H:l}=this;return[e,r,i,a,n,s,o,l]}set(e,r,i,a,n,s,o,l){this.A=e|0,this.B=r|0,this.C=i|0,this.D=a|0,this.E=n|0,this.F=s|0,this.G=o|0,this.H=l|0}process(e,r){for(let c=0;c<16;c++,r+=4)Ps[c]=e.getUint32(r,!1);for(let c=16;c<64;c++){let w=Ps[c-15],k=Ps[c-2],z=(0,Hi.rotr)(w,7)^(0,Hi.rotr)(w,18)^w>>>3,_=(0,Hi.rotr)(k,17)^(0,Hi.rotr)(k,19)^k>>>10;Ps[c]=_+Ps[c-7]+z+Ps[c-16]|0}let{A:i,B:a,C:n,D:s,E:o,F:l,G:d,H:u}=this;for(let c=0;c<64;c++){let w=(0,Hi.rotr)(o,6)^(0,Hi.rotr)(o,11)^(0,Hi.rotr)(o,25),k=u+w+WH(o,l,d)+FH[c]+Ps[c]|0,_=((0,Hi.rotr)(i,2)^(0,Hi.rotr)(i,13)^(0,Hi.rotr)(i,22))+VH(i,a,n)|0;u=d,d=l,l=o,o=s+k|0,s=n,n=a,a=i,i=k+_|0}i=i+this.A|0,a=a+this.B|0,n=n+this.C|0,s=s+this.D|0,o=o+this.E|0,l=l+this.F|0,d=d+this.G|0,u=u+this.H|0,this.set(i,a,n,s,o,l,d,u)}roundClean(){Ps.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}},Dy=class extends O4{constructor(){super(),this.A=-1056596264,this.B=914150663,this.C=812702999,this.D=-150054599,this.E=-4191439,this.F=1750603025,this.G=1694076839,this.H=-1090891868,this.outputLen=28}};w1.sha256=(0,Hi.wrapConstructor)(()=>new O4);w1.sha224=(0,Hi.wrapConstructor)(()=>new Dy)});var HE=b(Oy=>{"use strict";function kn(t,e,r){return e<=t&&t<=r}function F4(t){if(t===void 0)return{};if(t===Object(t))return t;throw TypeError("Could not convert argument to dictionary")}function KH(t){for(var e=String(t),r=e.length,i=0,a=[];i57343)a.push(n);else if(56320<=n&&n<=57343)a.push(65533);else if(55296<=n&&n<=56319)if(i===r-1)a.push(65533);else{var s=t.charCodeAt(i+1);if(56320<=s&&s<=57343){var o=n&1023,l=s&1023;a.push(65536+(o<<10)+l),i+=1}else a.push(65533)}i+=1}return a}function LH(t){for(var e="",r=0;r>10)+55296,(i&1023)+56320))}return e}var N4=-1;function Cy(t){this.tokens=[].slice.call(t)}Cy.prototype={endOfStream:function(){return!this.tokens.length},read:function(){return this.tokens.length?this.tokens.shift():N4},prepend:function(t){if(Array.isArray(t))for(var e=t;e.length;)this.tokens.unshift(e.pop());else this.tokens.unshift(t)},push:function(t){if(Array.isArray(t))for(var e=t;e.length;)this.tokens.push(e.shift());else this.tokens.push(t)}};var x1=-1;function By(t,e){if(t)throw TypeError("Decoder error");return e||65533}var q4="utf-8";function W4(t,e){if(!(this instanceof W4))return new W4(t,e);if(t=t!==void 0?String(t).toLowerCase():q4,t!==q4)throw new Error("Encoding not supported. Only utf-8 is supported");e=F4(e),this._streaming=!1,this._BOMseen=!1,this._decoder=null,this._fatal=!!e.fatal,this._ignoreBOM=!!e.ignoreBOM,Object.defineProperty(this,"encoding",{value:"utf-8"}),Object.defineProperty(this,"fatal",{value:this._fatal}),Object.defineProperty(this,"ignoreBOM",{value:this._ignoreBOM})}W4.prototype={decode:function(e,r){var i;typeof e=="object"&&e instanceof ArrayBuffer?i=new Uint8Array(e):typeof e=="object"&&"buffer"in e&&e.buffer instanceof ArrayBuffer?i=new Uint8Array(e.buffer,e.byteOffset,e.byteLength):i=new Uint8Array(0),r=F4(r),this._streaming||(this._decoder=new UH({fatal:this._fatal}),this._BOMseen=!1),this._streaming=!!r.stream;for(var a=new Cy(i),n=[],s;!a.endOfStream()&&(s=this._decoder.handler(a,a.read()),s!==x1);)s!==null&&(Array.isArray(s)?n.push.apply(n,s):n.push(s));if(!this._streaming){do{if(s=this._decoder.handler(a,a.read()),s===x1)break;s!==null&&(Array.isArray(s)?n.push.apply(n,s):n.push(s))}while(!a.endOfStream());this._decoder=null}return n.length&&["utf-8"].indexOf(this.encoding)!==-1&&!this._ignoreBOM&&!this._BOMseen&&(n[0]===65279?(this._BOMseen=!0,n.shift()):this._BOMseen=!0),LH(n)}};function V4(t,e){if(!(this instanceof V4))return new V4(t,e);if(t=t!==void 0?String(t).toLowerCase():q4,t!==q4)throw new Error("Encoding not supported. Only utf-8 is supported");e=F4(e),this._streaming=!1,this._encoder=null,this._options={fatal:!!e.fatal},Object.defineProperty(this,"encoding",{value:"utf-8"})}V4.prototype={encode:function(e,r){e=e?String(e):"",r=F4(r),this._streaming||(this._encoder=new jH(this._options)),this._streaming=!!r.stream;for(var i=[],a=new Cy(KH(e)),n;!a.endOfStream()&&(n=this._encoder.handler(a,a.read()),n!==x1);)Array.isArray(n)?i.push.apply(i,n):i.push(n);if(!this._streaming){for(;n=this._encoder.handler(a,a.read()),n!==x1;)Array.isArray(n)?i.push.apply(i,n):i.push(n);this._encoder=null}return new Uint8Array(i)}};function UH(t){var e=t.fatal,r=0,i=0,a=0,n=128,s=191;this.handler=function(o,l){if(l===N4&&a!==0)return a=0,By(e);if(l===N4)return x1;if(a===0){if(kn(l,0,127))return l;if(kn(l,194,223))a=1,r=l-192;else if(kn(l,224,239))l===224&&(n=160),l===237&&(s=159),a=2,r=l-224;else if(kn(l,240,244))l===240&&(n=144),l===244&&(s=143),a=3,r=l-240;else return By(e);return r=r<<6*a,null}if(!kn(l,n,s))return r=a=i=0,n=128,s=191,o.prepend(l),By(e);if(n=128,s=191,i+=1,r+=l-128<<6*(a-i),i!==a)return null;var d=r;return r=a=i=0,d}}function jH(t){var e=t.fatal;this.handler=function(r,i){if(i===N4)return x1;if(kn(i,0,127))return i;var a,n;kn(i,128,2047)?(a=1,n=192):kn(i,2048,65535)?(a=2,n=224):kn(i,65536,1114111)&&(a=3,n=240);for(var s=[(i>>6*a)+n];a>0;){var o=i>>6*(a-1);s.push(128|o&63),a-=1}return s}}Oy.TextEncoder=V4;Oy.TextDecoder=W4});var YE=b(tt=>{"use strict";var HH=tt&&tt.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),$H=tt&&tt.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),$a=tt&&tt.__decorate||function(t,e,r,i){var a=arguments.length,n=a<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,r):i,s;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(t,e,r,i);else for(var o=t.length-1;o>=0;o--)(s=t[o])&&(n=(a<3?s(n):a>3?s(e,r,n):s(e,r))||n);return a>3&&n&&Object.defineProperty(e,r,n),n},GH=tt&&tt.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.hasOwnProperty.call(t,r)&&HH(e,t,r);return $H(e,t),e},$E=tt&&tt.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(tt,"__esModule",{value:!0});tt.deserializeUnchecked=tt.deserialize=tt.serialize=tt.BinaryReader=tt.BinaryWriter=tt.BorshError=tt.baseDecode=tt.baseEncode=void 0;var Ts=$E(zy()),GE=$E(My()),ZH=GH(HE()),JH=typeof TextDecoder!="function"?ZH.TextDecoder:TextDecoder,YH=new JH("utf-8",{fatal:!0});function QH(t){return typeof t=="string"&&(t=Buffer.from(t,"utf8")),GE.default.encode(Buffer.from(t))}tt.baseEncode=QH;function XH(t){return Buffer.from(GE.default.decode(t))}tt.baseDecode=XH;var Ny=1024,Kr=class extends Error{constructor(e){super(e),this.fieldPath=[],this.originalMessage=e}addToFieldPath(e){this.fieldPath.splice(0,0,e),this.message=this.originalMessage+": "+this.fieldPath.join(".")}};tt.BorshError=Kr;var K4=class{constructor(){this.buf=Buffer.alloc(Ny),this.length=0}maybeResize(){this.buf.length<16+this.length&&(this.buf=Buffer.concat([this.buf,Buffer.alloc(Ny)]))}writeU8(e){this.maybeResize(),this.buf.writeUInt8(e,this.length),this.length+=1}writeU16(e){this.maybeResize(),this.buf.writeUInt16LE(e,this.length),this.length+=2}writeU32(e){this.maybeResize(),this.buf.writeUInt32LE(e,this.length),this.length+=4}writeU64(e){this.maybeResize(),this.writeBuffer(Buffer.from(new Ts.default(e).toArray("le",8)))}writeU128(e){this.maybeResize(),this.writeBuffer(Buffer.from(new Ts.default(e).toArray("le",16)))}writeU256(e){this.maybeResize(),this.writeBuffer(Buffer.from(new Ts.default(e).toArray("le",32)))}writeU512(e){this.maybeResize(),this.writeBuffer(Buffer.from(new Ts.default(e).toArray("le",64)))}writeBuffer(e){this.buf=Buffer.concat([Buffer.from(this.buf.subarray(0,this.length)),e,Buffer.alloc(Ny)]),this.length+=e.length}writeString(e){this.maybeResize();let r=Buffer.from(e,"utf8");this.writeU32(r.length),this.writeBuffer(r)}writeFixedArray(e){this.writeBuffer(Buffer.from(e))}writeArray(e,r){this.maybeResize(),this.writeU32(e.length);for(let i of e)this.maybeResize(),r(i)}toArray(){return this.buf.subarray(0,this.length)}};tt.BinaryWriter=K4;function Ga(t,e,r){let i=r.value;r.value=function(...a){try{return i.apply(this,a)}catch(n){if(n instanceof RangeError){let s=n.code;if(["ERR_BUFFER_OUT_OF_BOUNDS","ERR_OUT_OF_RANGE"].indexOf(s)>=0)throw new Kr("Reached the end of buffer when deserializing")}throw n}}}var fi=class{constructor(e){this.buf=e,this.offset=0}readU8(){let e=this.buf.readUInt8(this.offset);return this.offset+=1,e}readU16(){let e=this.buf.readUInt16LE(this.offset);return this.offset+=2,e}readU32(){let e=this.buf.readUInt32LE(this.offset);return this.offset+=4,e}readU64(){let e=this.readBuffer(8);return new Ts.default(e,"le")}readU128(){let e=this.readBuffer(16);return new Ts.default(e,"le")}readU256(){let e=this.readBuffer(32);return new Ts.default(e,"le")}readU512(){let e=this.readBuffer(64);return new Ts.default(e,"le")}readBuffer(e){if(this.offset+e>this.buf.length)throw new Kr(`Expected buffer length ${e} isn't within bounds`);let r=this.buf.slice(this.offset,this.offset+e);return this.offset+=e,r}readString(){let e=this.readU32(),r=this.readBuffer(e);try{return YH.decode(r)}catch(i){throw new Kr(`Error decoding UTF-8 string: ${i}`)}}readFixedArray(e){return new Uint8Array(this.readBuffer(e))}readArray(e){let r=this.readU32(),i=Array();for(let a=0;a{el(t,e,n,i[0],a)});else if(i.kind!==void 0)switch(i.kind){case"option":{r==null?a.writeU8(0):(a.writeU8(1),el(t,e,r,i.type,a));break}case"map":{a.writeU32(r.size),r.forEach((n,s)=>{el(t,e,s,i.key,a),el(t,e,n,i.value,a)});break}default:throw new Kr(`FieldType ${i} unrecognized`)}else JE(t,r,a)}catch(n){throw n instanceof Kr&&n.addToFieldPath(e),n}}function JE(t,e,r){if(typeof e.borshSerialize=="function"){e.borshSerialize(r);return}let i=t.get(e.constructor);if(!i)throw new Kr(`Class ${e.constructor.name} is missing in schema`);if(i.kind==="struct")i.fields.map(([a,n])=>{el(t,a,e[a],n,r)});else if(i.kind==="enum"){let a=e[i.field];for(let n=0;ntl(t,e,r[0],i))}if(r.kind==="option")return i.readU8()?tl(t,e,r.type,i):void 0;if(r.kind==="map"){let a=new Map,n=i.readU32();for(let s=0;s=i.values.length)throw new Kr(`Enum index: ${a} is out of range`);let[n,s]=i.values[a],o=tl(t,n,s,r);return new e({[n]:o})}throw new Kr(`Unexpected schema kind: ${i.kind} for ${e.constructor.name}`)}function t$(t,e,r,i=fi){let a=new i(r),n=qy(t,e,a);if(a.offset{"use strict";Object.defineProperty(L,"__esModule",{value:!0});L.s16=L.s8=L.nu64be=L.u48be=L.u40be=L.u32be=L.u24be=L.u16be=L.nu64=L.u48=L.u40=L.u32=L.u24=L.u16=L.u8=L.offset=L.greedy=L.Constant=L.UTF8=L.CString=L.Blob=L.Boolean=L.BitField=L.BitStructure=L.VariantLayout=L.Union=L.UnionLayoutDiscriminator=L.UnionDiscriminator=L.Structure=L.Sequence=L.DoubleBE=L.Double=L.FloatBE=L.Float=L.NearInt64BE=L.NearInt64=L.NearUInt64BE=L.NearUInt64=L.IntBE=L.Int=L.UIntBE=L.UInt=L.OffsetLayout=L.GreedyCount=L.ExternalLayout=L.bindConstructorLayout=L.nameWithProperty=L.Layout=L.uint8ArrayToBuffer=L.checkUint8Array=void 0;L.constant=L.utf8=L.cstr=L.blob=L.unionLayoutDiscriminator=L.union=L.seq=L.bits=L.struct=L.f64be=L.f64=L.f32be=L.f32=L.ns64be=L.s48be=L.s40be=L.s32be=L.s24be=L.s16be=L.ns64=L.s48=L.s40=L.s32=L.s24=void 0;var Vy=require("buffer");function k1(t){if(!(t instanceof Uint8Array))throw new TypeError("b must be a Uint8Array")}L.checkUint8Array=k1;function Ue(t){return k1(t),Vy.Buffer.from(t.buffer,t.byteOffset,t.length)}L.uint8ArrayToBuffer=Ue;var He=class{constructor(e,r){if(!Number.isInteger(e))throw new TypeError("span must be an integer");this.span=e,this.property=r}makeDestinationObject(){return{}}getSpan(e,r){if(0>this.span)throw new RangeError("indeterminate span");return this.span}replicate(e){let r=Object.create(this.constructor.prototype);return Object.assign(r,this),r.property=e,r}fromArray(e){}};L.Layout=He;function Fy(t,e){return e.property?t+"["+e.property+"]":t}L.nameWithProperty=Fy;function i$(t,e){if(typeof t!="function")throw new TypeError("Class must be constructor");if(Object.prototype.hasOwnProperty.call(t,"layout_"))throw new Error("Class is already bound to a layout");if(!(e&&e instanceof He))throw new TypeError("layout must be a Layout");if(Object.prototype.hasOwnProperty.call(e,"boundConstructor_"))throw new Error("layout is already bound to a constructor");t.layout_=e,e.boundConstructor_=t,e.makeDestinationObject=()=>new t,Object.defineProperty(t.prototype,"encode",{value(r,i){return e.encode(this,r,i)},writable:!0}),Object.defineProperty(t,"decode",{value(r,i){return e.decode(r,i)},writable:!0})}L.bindConstructorLayout=i$;var Xr=class extends He{isCount(){throw new Error("ExternalLayout is abstract")}};L.ExternalLayout=Xr;var L4=class extends Xr{constructor(e=1,r){if(!Number.isInteger(e)||0>=e)throw new TypeError("elementSpan must be a (positive) integer");super(-1,r),this.elementSpan=e}isCount(){return!0}decode(e,r=0){k1(e);let i=e.length-r;return Math.floor(i/this.elementSpan)}encode(e,r,i){return 0}};L.GreedyCount=L4;var Cp=class extends Xr{constructor(e,r=0,i){if(!(e instanceof He))throw new TypeError("layout must be a Layout");if(!Number.isInteger(r))throw new TypeError("offset must be integer or undefined");super(e.span,i||e.property),this.layout=e,this.offset=r}isCount(){return this.layout instanceof vi||this.layout instanceof Ri}decode(e,r=0){return this.layout.decode(e,r+this.offset)}encode(e,r,i=0){return this.layout.encode(e,r,i+this.offset)}};L.OffsetLayout=Cp;var vi=class extends He{constructor(e,r){if(super(e,r),6s+a.encode(o,r,i+s),0);return this.count instanceof Xr&&this.count.encode(e.length,r,i),n}};L.Sequence=Q4;var X4=class extends He{constructor(e,r,i){if(!(Array.isArray(e)&&e.reduce((n,s)=>n&&s instanceof He,!0)))throw new TypeError("fields must be array of Layout instances");typeof r=="boolean"&&i===void 0&&(i=r,r=void 0);for(let n of e)if(0>n.span&&n.property===void 0)throw new Error("fields cannot contain unnamed variable-length layout");let a=-1;try{a=e.reduce((n,s)=>n+s.getSpan(),0)}catch{}super(a,r),this.fields=e,this.decodePrefixes=!!i}getSpan(e,r=0){if(0<=this.span)return this.span;let i=0;try{i=this.fields.reduce((a,n)=>{let s=n.getSpan(e,r);return r+=s,a+s},0)}catch{throw new RangeError("indeterminate span")}return i}decode(e,r=0){k1(e);let i=this.makeDestinationObject();for(let a of this.fields)if(a.property!==void 0&&(i[a.property]=a.decode(e,r)),r+=a.getSpan(e,r),this.decodePrefixes&&e.length===r)break;return i}encode(e,r,i=0){let a=i,n=0,s=0;for(let o of this.fields){let l=o.span;if(s=0l&&(l=o.getSpan(r,i)))}n=i,i+=l}return n+s-a}fromArray(e){let r=this.makeDestinationObject();for(let i of this.fields)i.property!==void 0&&0i.span?r=-1:0<=r&&(r+=i.span)}}};L.Structure=X4;var Op=class{constructor(e){this.property=e}decode(e,r){throw new Error("UnionDiscriminator is abstract")}encode(e,r,i){throw new Error("UnionDiscriminator is abstract")}};L.UnionDiscriminator=Op;var _1=class extends Op{constructor(e,r){if(!(e instanceof Xr&&e.isCount()))throw new TypeError("layout must be an unsigned integer ExternalLayout");super(r||e.property||"variant"),this.layout=e}decode(e,r){return this.layout.decode(e,r)}encode(e,r,i){return this.layout.encode(e,r,i)}};L.UnionLayoutDiscriminator=_1;var Np=class extends He{constructor(e,r,i){let a;if(e instanceof vi||e instanceof Ri)a=new _1(new Cp(e));else if(e instanceof Xr&&e.isCount())a=new _1(e);else if(e instanceof Op)a=e;else throw new TypeError("discr must be a UnionDiscriminator or an unsigned integer layout");if(r===void 0&&(r=null),!(r===null||r instanceof He))throw new TypeError("defaultLayout must be null or a Layout");if(r!==null){if(0>r.span)throw new Error("defaultLayout must have constant span");r.property===void 0&&(r=r.replicate("content"))}let n=-1;r&&(n=r.span,0<=n&&(e instanceof vi||e instanceof Ri)&&(n+=a.layout.span)),super(n,i),this.discriminator=a,this.usesPrefixDiscriminator=e instanceof vi||e instanceof Ri,this.defaultLayout=r,this.registry={};let s=this.defaultGetSourceVariant.bind(this);this.getSourceVariant=function(o){return s(o)},this.configGetSourceVariant=function(o){s=o.bind(this)}}getSpan(e,r=0){if(0<=this.span)return this.span;let i=this.getVariant(e,r);if(!i)throw new Error("unable to determine span for unrecognized variant");return i.getSpan(e,r)}defaultGetSourceVariant(e){if(Object.prototype.hasOwnProperty.call(e,this.discriminator.property)){if(this.defaultLayout&&this.defaultLayout.property&&Object.prototype.hasOwnProperty.call(e,this.defaultLayout.property))return;let r=this.registry[e[this.discriminator.property]];if(r&&(!r.layout||r.property&&Object.prototype.hasOwnProperty.call(e,r.property)))return r}else for(let r in this.registry){let i=this.registry[r];if(i.property&&Object.prototype.hasOwnProperty.call(e,i.property))return i}throw new Error("unable to infer src variant")}decode(e,r=0){let i,a=this.discriminator,n=a.decode(e,r),s=this.registry[n];if(s===void 0){let o=this.defaultLayout,l=0;this.usesPrefixDiscriminator&&(l=a.layout.span),i=this.makeDestinationObject(),i[a.property]=n,i[o.property]=o.decode(e,r+l)}else i=s.decode(e,r);return i}encode(e,r,i=0){let a=this.getSourceVariant(e);if(a===void 0){let n=this.discriminator,s=this.defaultLayout,o=0;return this.usesPrefixDiscriminator&&(o=n.layout.span),n.encode(e[n.property],r,i),o+s.encode(e[s.property],r,i+o)}return a.encode(e,r,i)}addVariant(e,r,i){let a=new e8(this,e,r,i);return this.registry[e]=a,a}getVariant(e,r=0){let i;return e instanceof Uint8Array?i=this.discriminator.decode(e,r):i=e,this.registry[i]}};L.Union=Np;var e8=class extends He{constructor(e,r,i,a){if(!(e instanceof Np))throw new TypeError("union must be a Union");if(!Number.isInteger(r)||0>r)throw new TypeError("variant must be a (non-negative) integer");if(typeof i=="string"&&a===void 0&&(a=i,i=null),i){if(!(i instanceof He))throw new TypeError("layout must be a Layout");if(e.defaultLayout!==null&&0<=i.span&&i.span>e.defaultLayout.span)throw new Error("variant span exceeds span of containing union");if(typeof a!="string")throw new TypeError("variant must have a String property")}let n=e.span;0>e.span&&(n=i?i.span:0,0<=n&&e.usesPrefixDiscriminator&&(n+=e.discriminator.layout.span)),super(n,a),this.union=e,this.variant=r,this.layout=i||null}getSpan(e,r=0){if(0<=this.span)return this.span;let i=0;this.union.usesPrefixDiscriminator&&(i=this.union.discriminator.layout.span);let a=0;return this.layout&&(a=this.layout.getSpan(e,r+i)),i+a}decode(e,r=0){let i=this.makeDestinationObject();if(this!==this.union.getVariant(e,r))throw new Error("variant mismatch");let a=0;return this.union.usesPrefixDiscriminator&&(a=this.union.discriminator.layout.span),this.layout?i[this.property]=this.layout.decode(e,r+a):this.property?i[this.property]=!0:this.union.usesPrefixDiscriminator&&(i[this.union.discriminator.property]=this.variant),i}encode(e,r,i=0){let a=0;if(this.union.usesPrefixDiscriminator&&(a=this.union.discriminator.layout.span),this.layout&&!Object.prototype.hasOwnProperty.call(e,this.property))throw new TypeError("variant lacks property "+this.property);this.union.discriminator.encode(this.variant,r,i);let n=a;if(this.layout&&(this.layout.encode(e[this.property],r,i+a),n+=this.layout.getSpan(r,i+a),0<=this.union.span&&n>this.union.span))throw new Error("encoded variant overruns containing union");return n}fromArray(e){if(this.layout)return this.layout.fromArray(e)}};L.VariantLayout=e8;function A1(t){return 0>t&&(t+=4294967296),t}var qp=class extends He{constructor(e,r,i){if(!(e instanceof vi||e instanceof Ri))throw new TypeError("word must be a UInt or UIntBE layout");if(typeof r=="string"&&i===void 0&&(i=r,r=!1),4=r)throw new TypeError("bits must be positive integer");let a=8*e.span,n=e.fields.reduce((s,o)=>s+o.bits,0);if(r+n>a)throw new Error("bits too long for span remainder ("+(a-n)+" of "+a+" remain)");this.container=e,this.bits=r,this.valueMask=(1<>>this.start}encode(e){if(typeof e!="number"||!Number.isInteger(e)||e!==A1(e&this.valueMask))throw new TypeError(Fy("BitField.encode",this)+" value must be integer not exceeding "+this.valueMask);let r=this.container._packedGetValue(),i=A1(e<i&&(i=this.length.decode(e,r)),i}decode(e,r=0){let i=this.span;return 0>i&&(i=this.length.decode(e,r)),Ue(e).slice(r,r+i)}encode(e,r,i){let a=this.length;if(this.length instanceof Xr&&(a=e.length),!(e instanceof Uint8Array&&a===e.length))throw new TypeError(Fy("Blob.encode",this)+" requires (length "+a+") Uint8Array as src");if(i+a>r.length)throw new RangeError("encoding overruns Uint8Array");let n=Ue(e);return Ue(r).write(n.toString("hex"),i,a,"hex"),this.length instanceof Xr&&this.length.encode(a,r,i),a}};L.Blob=r8;var i8=class extends He{constructor(e){super(-1,e)}getSpan(e,r=0){k1(e);let i=r;for(;ir.length)throw new RangeError("encoding overruns Buffer");let s=Ue(r);return a.copy(s,i),s[i+n]=0,n+1}};L.CString=i8;var a8=class extends He{constructor(e,r){if(typeof e=="string"&&r===void 0&&(r=e,e=void 0),e===void 0)e=-1;else if(!Number.isInteger(e))throw new TypeError("maxSpan must be an integer");super(-1,r),this.maxSpan=e}getSpan(e,r=0){return k1(e),e.length-r}decode(e,r=0){let i=this.getSpan(e,r);if(0<=this.maxSpan&&this.maxSpanr.length)throw new RangeError("encoding overruns Buffer");return a.copy(Ue(r),i),n}};L.UTF8=a8;var n8=class extends He{constructor(e,r){super(0,r),this.value=e}decode(e,r){return this.value}encode(e,r,i){return 0}};L.Constant=n8;L.greedy=(t,e)=>new L4(t,e);L.offset=(t,e,r)=>new Cp(t,e,r);L.u8=t=>new vi(1,t);L.u16=t=>new vi(2,t);L.u24=t=>new vi(3,t);L.u32=t=>new vi(4,t);L.u40=t=>new vi(5,t);L.u48=t=>new vi(6,t);L.nu64=t=>new U4(t);L.u16be=t=>new Ri(2,t);L.u24be=t=>new Ri(3,t);L.u32be=t=>new Ri(4,t);L.u40be=t=>new Ri(5,t);L.u48be=t=>new Ri(6,t);L.nu64be=t=>new j4(t);L.s8=t=>new En(1,t);L.s16=t=>new En(2,t);L.s24=t=>new En(3,t);L.s32=t=>new En(4,t);L.s40=t=>new En(5,t);L.s48=t=>new En(6,t);L.ns64=t=>new H4(t);L.s16be=t=>new zs(2,t);L.s24be=t=>new zs(3,t);L.s32be=t=>new zs(4,t);L.s40be=t=>new zs(5,t);L.s48be=t=>new zs(6,t);L.ns64be=t=>new $4(t);L.f32=t=>new G4(t);L.f32be=t=>new Z4(t);L.f64=t=>new J4(t);L.f64be=t=>new Y4(t);L.struct=(t,e,r)=>new X4(t,e,r);L.bits=(t,e,r)=>new qp(t,e,r);L.seq=(t,e,r)=>new Q4(t,e,r);L.union=(t,e,r)=>new Np(t,e,r);L.unionLayoutDiscriminator=(t,e)=>new _1(t,e);L.blob=(t,e)=>new r8(t,e);L.cstr=t=>new i8(t);L.utf8=(t,e)=>new a8(t,e);L.constant=(t,e)=>new n8(t,e)});var eP=b((V4e,XE)=>{var l8=require("path").sep||"/";XE.exports=a$;function a$(t){if(typeof t!="string"||t.length<=7||t.substring(0,7)!="file://")throw new TypeError("must pass in a file:// URI to convert to a file path");var e=decodeURI(t.substring(7)),r=e.indexOf("/"),i=e.substring(0,r),a=e.substring(r+1);return i=="localhost"&&(i=""),i&&(i=l8+l8+i),a=a.replace(/^(.+)\|/,"$1:"),l8=="\\"&&(a=a.replace(/\//g,"\\")),/^.+\:/.test(a)||(a=l8+a),i+a}});var aP=b((E1,iP)=>{var Ky=require("fs"),u8=require("path"),n$=eP(),d8=u8.join,s$=u8.dirname,tP=Ky.accessSync&&function(t){try{Ky.accessSync(t)}catch{return!1}return!0}||Ky.existsSync||u8.existsSync,rP={arrow:process.env.NODE_BINDINGS_ARROW||" \u2192 ",compiled:process.env.NODE_BINDINGS_COMPILED_DIR||"compiled",platform:process.platform,arch:process.arch,nodePreGyp:"node-v"+process.versions.modules+"-"+process.platform+"-"+process.arch,version:process.versions.node,bindings:"bindings.node",try:[["module_root","build","bindings"],["module_root","build","Debug","bindings"],["module_root","build","Release","bindings"],["module_root","out","Debug","bindings"],["module_root","Debug","bindings"],["module_root","out","Release","bindings"],["module_root","Release","bindings"],["module_root","build","default","bindings"],["module_root","compiled","version","platform","arch","bindings"],["module_root","addon-build","release","install-root","bindings"],["module_root","addon-build","debug","install-root","bindings"],["module_root","addon-build","default","install-root","bindings"],["module_root","lib","binding","nodePreGyp","bindings"]]};function o$(t){typeof t=="string"?t={bindings:t}:t||(t={}),Object.keys(rP).map(function(l){l in t||(t[l]=rP[l])}),t.module_root||(t.module_root=E1.getRoot(E1.getFileName())),u8.extname(t.bindings)!=".node"&&(t.bindings+=".node");for(var e=typeof __webpack_require__=="function"?__non_webpack_require__:require,r=[],i=0,a=t.try.length,n,s,o;i{"use strict";Object.defineProperty(P1,"__esModule",{value:!0});var Pn;try{Pn=aP()("bigint_buffer")}catch{console.warn("bigint: Failed to load bindings, pure JS will be used (try npm run rebuild?)")}function l$(t){if(Pn===void 0){let e=Buffer.from(t);e.reverse();let r=e.toString("hex");return r.length===0?BigInt(0):BigInt(`0x${r}`)}return Pn.toBigInt(t,!1)}P1.toBigIntLE=l$;function d$(t){if(Pn===void 0){let e=t.toString("hex");return e.length===0?BigInt(0):BigInt(`0x${e}`)}return Pn.toBigInt(t,!0)}P1.toBigIntBE=d$;function u$(t,e){if(Pn===void 0){let r=t.toString(16),i=Buffer.from(r.padStart(e*2,"0").slice(0,e*2),"hex");return i.reverse(),i}return Pn.fromBigInt(t,Buffer.allocUnsafe(e),!1)}P1.toBufferLE=u$;function c$(t,e){if(Pn===void 0){let r=t.toString(16);return Buffer.from(r.padStart(e*2,"0").slice(0,e*2),"hex")}return Pn.fromBigInt(t,Buffer.allocUnsafe(e),!0)}P1.toBufferBE=c$});var mP=b(he=>{"use strict";Object.defineProperty(he,"__esModule",{value:!0});var c8=class extends TypeError{constructor(e,r){let i,{message:a,...n}=e,{path:s}=e,o=s.length===0?a:"At path: "+s.join(".")+" -- "+a;super(o),Object.assign(this,n),this.name=this.constructor.name,this.failures=()=>{var l;return(l=i)!=null?l:i=[e,...r()]}}};function p$(t){return ka(t)&&typeof t[Symbol.iterator]=="function"}function ka(t){return typeof t=="object"&&t!=null}function sP(t){if(Object.prototype.toString.call(t)!=="[object Object]")return!1;let e=Object.getPrototypeOf(t);return e===null||e===Object.prototype}function Sr(t){return typeof t=="string"?JSON.stringify(t):""+t}function m$(t){let{done:e,value:r}=t.next();return e?void 0:r}function f$(t,e,r,i){if(t===!0)return;t===!1?t={}:typeof t=="string"&&(t={message:t});let{path:a,branch:n}=e,{type:s}=r,{refinement:o,message:l="Expected a value of type `"+s+"`"+(o?" with refinement `"+o+"`":"")+", but received: `"+Sr(i)+"`"}=t;return{value:i,type:s,refinement:o,key:a[a.length-1],path:a,branch:n,...t,message:l}}function*Ly(t,e,r,i){p$(t)||(t=[t]);for(let a of t){let n=f$(a,e,r,i);n&&(yield n)}}function*Uy(t,e,r={}){let{path:i=[],branch:a=[t],coerce:n=!1,mask:s=!1}=r,o={path:i,branch:a};if(n&&(t=e.coercer(t,o),s&&e.type!=="type"&&ka(e.schema)&&ka(t)&&!Array.isArray(t)))for(let d in t)e.schema[d]===void 0&&delete t[d];let l=!0;for(let d of e.validator(t,o))l=!1,yield[d,void 0];for(let[d,u,c]of e.entries(t,o)){let w=Uy(u,c,{path:d===void 0?i:[...i,d],branch:d===void 0?a:[...a,u],coerce:n,mask:s});for(let k of w)k[0]?(l=!1,yield[k[0],void 0]):n&&(u=k[1],d===void 0?t=u:t instanceof Map?t.set(d,u):t instanceof Set?t.add(u):ka(t)&&(t[d]=u))}if(l)for(let d of e.refiner(t,o))l=!1,yield[d,void 0];l&&(yield[void 0,t])}var Tt=class{constructor(e){let{type:r,schema:i,validator:a,refiner:n,coercer:s=l=>l,entries:o=function*(){}}=e;this.type=r,this.schema=i,this.entries=o,this.coercer=s,a?this.validator=(l,d)=>{let u=a(l,d);return Ly(u,d,this,l)}:this.validator=()=>[],n?this.refiner=(l,d)=>{let u=n(l,d);return Ly(u,d,this,l)}:this.refiner=()=>[]}assert(e){return oP(e,this)}create(e){return lP(e,this)}is(e){return jy(e,this)}mask(e){return dP(e,this)}validate(e,r={}){return T1(e,this,r)}};function oP(t,e){let r=T1(t,e);if(r[0])throw r[0]}function lP(t,e){let r=T1(t,e,{coerce:!0});if(r[0])throw r[0];return r[1]}function dP(t,e){let r=T1(t,e,{coerce:!0,mask:!0});if(r[0])throw r[0];return r[1]}function jy(t,e){return!T1(t,e)[0]}function T1(t,e,r={}){let i=Uy(t,e,r),a=m$(i);return a[0]?[new c8(a[0],function*(){for(let s of i)s[0]&&(yield s[0])}),void 0]:[void 0,a[1]]}function h$(...t){let e=t.map(i=>i.schema),r=Object.assign({},...e);return Vp(r)}function Bi(t,e){return new Tt({type:t,schema:null,validator:e})}function g$(t,e){return new Tt({...t,refiner:(r,i)=>r===void 0||t.refiner(r,i),validator(r,i){return r===void 0?!0:(e(r,i),t.validator(r,i))}})}function y$(t){return new Tt({type:"dynamic",schema:null,*entries(e,r){yield*t(e,r).entries(e,r)},validator(e,r){return t(e,r).validator(e,r)},coercer(e,r){return t(e,r).coercer(e,r)}})}function b$(t){let e;return new Tt({type:"lazy",schema:null,*entries(r,i){var a;(a=e)!=null||(e=t()),yield*e.entries(r,i)},validator(r,i){var a;return(a=e)!=null||(e=t()),e.validator(r,i)},coercer(r,i){var a;return(a=e)!=null||(e=t()),e.coercer(r,i)}})}function v$(t,e){let{schema:r}=t,i={...r};for(let a of e)delete i[a];return Vp(i)}function S$(t){let e=t instanceof Tt?{...t.schema}:{...t};for(let r in e)e[r]=uP(e[r]);return Vp(e)}function w$(t,e){let{schema:r}=t,i={};for(let a of e)i[a]=r[a];return Vp(i)}function x$(t,e){return console.warn("superstruct@0.11 - The `struct` helper has been renamed to `define`."),Bi(t,e)}function A$(){return Bi("any",()=>!0)}function _$(t){return new Tt({type:"array",schema:t,*entries(e){if(t&&Array.isArray(e))for(let[r,i]of e.entries())yield[r,i,t]},coercer(e){return Array.isArray(e)?e.slice():e},validator(e){return Array.isArray(e)||"Expected an array value, but received: "+Sr(e)}})}function k$(){return Bi("boolean",t=>typeof t=="boolean")}function E$(){return Bi("date",t=>t instanceof Date&&!isNaN(t.getTime())||"Expected a valid `Date` object, but received: "+Sr(t))}function P$(t){let e={},r=t.map(i=>Sr(i)).join();for(let i of t)e[i]=i;return new Tt({type:"enums",schema:e,validator(i){return t.includes(i)||"Expected one of `"+r+"`, but received: "+Sr(i)}})}function T$(){return Bi("func",t=>typeof t=="function"||"Expected a function, but received: "+Sr(t))}function z$(t){return Bi("instance",e=>e instanceof t||"Expected a `"+t.name+"` instance, but received: "+Sr(e))}function I$(){return Bi("integer",t=>typeof t=="number"&&!isNaN(t)&&Number.isInteger(t)||"Expected an integer, but received: "+Sr(t))}function M$(t){return new Tt({type:"intersection",schema:null,*entries(e,r){for(let i of t)yield*i.entries(e,r)},*validator(e,r){for(let i of t)yield*i.validator(e,r)},*refiner(e,r){for(let i of t)yield*i.refiner(e,r)}})}function D$(t){let e=Sr(t),r=typeof t;return new Tt({type:"literal",schema:r==="string"||r==="number"||r==="boolean"?t:null,validator(i){return i===t||"Expected the literal `"+e+"`, but received: "+Sr(i)}})}function R$(t,e){return new Tt({type:"map",schema:null,*entries(r){if(t&&e&&r instanceof Map)for(let[i,a]of r.entries())yield[i,i,t],yield[i,a,e]},coercer(r){return r instanceof Map?new Map(r):r},validator(r){return r instanceof Map||"Expected a `Map` object, but received: "+Sr(r)}})}function Hy(){return Bi("never",()=>!1)}function B$(t){return new Tt({...t,validator:(e,r)=>e===null||t.validator(e,r),refiner:(e,r)=>e===null||t.refiner(e,r)})}function C$(){return Bi("number",t=>typeof t=="number"&&!isNaN(t)||"Expected a number, but received: "+Sr(t))}function Vp(t){let e=t?Object.keys(t):[],r=Hy();return new Tt({type:"object",schema:t||null,*entries(i){if(t&&ka(i)){let a=new Set(Object.keys(i));for(let n of e)a.delete(n),yield[n,i[n],t[n]];for(let n of a)yield[n,i[n],r]}},validator(i){return ka(i)||"Expected an object, but received: "+Sr(i)},coercer(i){return ka(i)?{...i}:i}})}function uP(t){return new Tt({...t,validator:(e,r)=>e===void 0||t.validator(e,r),refiner:(e,r)=>e===void 0||t.refiner(e,r)})}function O$(t,e){return new Tt({type:"record",schema:null,*entries(r){if(ka(r))for(let i in r){let a=r[i];yield[i,i,t],yield[i,a,e]}},validator(r){return ka(r)||"Expected an object, but received: "+Sr(r)}})}function N$(){return Bi("regexp",t=>t instanceof RegExp)}function q$(t){return new Tt({type:"set",schema:null,*entries(e){if(t&&e instanceof Set)for(let r of e)yield[r,r,t]},coercer(e){return e instanceof Set?new Set(e):e},validator(e){return e instanceof Set||"Expected a `Set` object, but received: "+Sr(e)}})}function cP(){return Bi("string",t=>typeof t=="string"||"Expected a string, but received: "+Sr(t))}function W$(t){let e=Hy();return new Tt({type:"tuple",schema:null,*entries(r){if(Array.isArray(r)){let i=Math.max(t.length,r.length);for(let a=0;ar.type).join(" | ");return new Tt({type:"union",schema:null,validator(r,i){let a=[];for(let n of t){let[...s]=Uy(r,n,i),[o]=s;if(o[0])for(let[l]of s)l&&a.push(l);else return[]}return["Expected the value to satisfy a union of `"+e+"`, but received: "+Sr(r),...a]}})}function pP(){return Bi("unknown",()=>!0)}function $y(t,e,r){return new Tt({...t,coercer:(i,a)=>jy(i,e)?t.coercer(r(i,a),a):t.coercer(i,a)})}function K$(t,e,r={}){return $y(t,pP(),i=>{let a=typeof e=="function"?e():e;if(i===void 0)return a;if(!r.strict&&sP(i)&&sP(a)){let n={...i},s=!1;for(let o in a)n[o]===void 0&&(n[o]=a[o],s=!0);if(s)return n}return i})}function L$(t){return $y(t,cP(),e=>e.trim())}function U$(t){let e="Expected an empty "+t.type;return z1(t,"empty",r=>{if(r instanceof Map||r instanceof Set){let{size:i}=r;return i===0||e+" but received one with a size of `"+i+"`"}else{let{length:i}=r;return i===0||e+" but received one with a length of `"+i+"`"}})}function j$(t,e,r={}){let{exclusive:i}=r;return z1(t,"max",a=>i?ai?a>e:a>=e||"Expected a "+t.type+" greater than "+(i?"":"or equal to ")+e+" but received `"+a+"`")}function $$(t,e){return z1(t,"pattern",r=>e.test(r)||"Expected a "+t.type+" matching `/"+e.source+'/` but received "'+r+'"')}function G$(t,e,r=e){let i="Expected a "+t.type,a=e===r?"of `"+e+"`":"between `"+e+"` and `"+r+"`";return z1(t,"size",n=>{if(typeof n=="number"||n instanceof Date)return e<=n&&n<=r||i+" "+a+" but received `"+n+"`";if(n instanceof Map||n instanceof Set){let{size:s}=n;return e<=s&&s<=r||i+" with a size "+a+" but received one with a size of `"+s+"`"}else{let{length:s}=n;return e<=s&&s<=r||i+" with a length "+a+" but received one with a length of `"+s+"`"}})}function z1(t,e,r){return new Tt({...t,*refiner(i,a){yield*t.refiner(i,a);let n=r(i,a),s=Ly(n,a,t,i);for(let o of s)yield{...o,refinement:e}}})}he.Struct=Tt;he.StructError=c8;he.any=A$;he.array=_$;he.assert=oP;he.assign=h$;he.boolean=k$;he.coerce=$y;he.create=lP;he.date=E$;he.defaulted=K$;he.define=Bi;he.deprecated=g$;he.dynamic=y$;he.empty=U$;he.enums=P$;he.func=T$;he.instance=z$;he.integer=I$;he.intersection=M$;he.is=jy;he.lazy=b$;he.literal=D$;he.map=R$;he.mask=dP;he.max=j$;he.min=H$;he.never=Hy;he.nullable=B$;he.number=C$;he.object=Vp;he.omit=v$;he.optional=uP;he.partial=S$;he.pattern=$$;he.pick=w$;he.record=O$;he.refine=z1;he.regexp=N$;he.set=q$;he.size=G$;he.string=cP;he.struct=x$;he.trimmed=L$;he.tuple=W$;he.type=V$;he.union=F$;he.unknown=pP;he.validate=T1});function Fp(){return p8>m8.length-16&&(fP.default.randomFillSync(m8),p8=0),m8.slice(p8,p8+=16)}var fP,m8,p8,Gy=pi(()=>{fP=Fr(require("crypto")),m8=new Uint8Array(256),p8=m8.length});var hP,gP=pi(()=>{hP=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i});function Z$(t){return typeof t=="string"&&hP.test(t)}var Is,Kp=pi(()=>{gP();Is=Z$});function J$(t,e=0){let r=(Lr[t[e+0]]+Lr[t[e+1]]+Lr[t[e+2]]+Lr[t[e+3]]+"-"+Lr[t[e+4]]+Lr[t[e+5]]+"-"+Lr[t[e+6]]+Lr[t[e+7]]+"-"+Lr[t[e+8]]+Lr[t[e+9]]+"-"+Lr[t[e+10]]+Lr[t[e+11]]+Lr[t[e+12]]+Lr[t[e+13]]+Lr[t[e+14]]+Lr[t[e+15]]).toLowerCase();if(!Is(r))throw TypeError("Stringified UUID is invalid");return r}var Lr,Ms,Lp=pi(()=>{Kp();Lr=[];for(let t=0;t<256;++t)Lr.push((t+256).toString(16).substr(1));Ms=J$});function Y$(t,e,r){let i=e&&r||0,a=e||new Array(16);t=t||{};let n=t.node||yP,s=t.clockseq!==void 0?t.clockseq:Zy;if(n==null||s==null){let w=t.random||(t.rng||Fp)();n==null&&(n=yP=[w[0]|1,w[1],w[2],w[3],w[4],w[5]]),s==null&&(s=Zy=(w[6]<<8|w[7])&16383)}let o=t.msecs!==void 0?t.msecs:Date.now(),l=t.nsecs!==void 0?t.nsecs:Yy+1,d=o-Jy+(l-Yy)/1e4;if(d<0&&t.clockseq===void 0&&(s=s+1&16383),(d<0||o>Jy)&&t.nsecs===void 0&&(l=0),l>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");Jy=o,Yy=l,Zy=s,o+=122192928e5;let u=((o&268435455)*1e4+l)%4294967296;a[i++]=u>>>24&255,a[i++]=u>>>16&255,a[i++]=u>>>8&255,a[i++]=u&255;let c=o/4294967296*1e4&268435455;a[i++]=c>>>8&255,a[i++]=c&255,a[i++]=c>>>24&15|16,a[i++]=c>>>16&255,a[i++]=s>>>8|128,a[i++]=s&255;for(let w=0;w<6;++w)a[i+w]=n[w];return e||Ms(a)}var yP,Zy,Jy,Yy,bP,vP=pi(()=>{Gy();Lp();Jy=0,Yy=0;bP=Y$});function Q$(t){if(!Is(t))throw TypeError("Invalid UUID");let e,r=new Uint8Array(16);return r[0]=(e=parseInt(t.slice(0,8),16))>>>24,r[1]=e>>>16&255,r[2]=e>>>8&255,r[3]=e&255,r[4]=(e=parseInt(t.slice(9,13),16))>>>8,r[5]=e&255,r[6]=(e=parseInt(t.slice(14,18),16))>>>8,r[7]=e&255,r[8]=(e=parseInt(t.slice(19,23),16))>>>8,r[9]=e&255,r[10]=(e=parseInt(t.slice(24,36),16))/1099511627776&255,r[11]=e/4294967296&255,r[12]=e>>>24&255,r[13]=e>>>16&255,r[14]=e>>>8&255,r[15]=e&255,r}var f8,Qy=pi(()=>{Kp();f8=Q$});function X$(t){t=unescape(encodeURIComponent(t));let e=[];for(let r=0;r{Lp();Qy();eG="6ba7b810-9dad-11d1-80b4-00c04fd430c8",tG="6ba7b811-9dad-11d1-80b4-00c04fd430c8"});function rG(t){return Array.isArray(t)?t=Buffer.from(t):typeof t=="string"&&(t=Buffer.from(t,"utf8")),SP.default.createHash("md5").update(t).digest()}var SP,wP,xP=pi(()=>{SP=Fr(require("crypto"));wP=rG});var iG,AP,_P=pi(()=>{Xy();xP();iG=h8("v3",48,wP),AP=iG});function aG(t,e,r){t=t||{};let i=t.random||(t.rng||Fp)();if(i[6]=i[6]&15|64,i[8]=i[8]&63|128,e){r=r||0;for(let a=0;a<16;++a)e[r+a]=i[a];return e}return Ms(i)}var kP,EP=pi(()=>{Gy();Lp();kP=aG});function nG(t){return Array.isArray(t)?t=Buffer.from(t):typeof t=="string"&&(t=Buffer.from(t,"utf8")),PP.default.createHash("sha1").update(t).digest()}var PP,TP,zP=pi(()=>{PP=Fr(require("crypto"));TP=nG});var sG,IP,MP=pi(()=>{Xy();zP();sG=h8("v5",80,TP),IP=sG});var DP,RP=pi(()=>{DP="00000000-0000-0000-0000-000000000000"});function oG(t){if(!Is(t))throw TypeError("Invalid UUID");return parseInt(t.substr(14,1),16)}var BP,CP=pi(()=>{Kp();BP=oG});var e7={};Ik(e7,{NIL:()=>DP,parse:()=>f8,stringify:()=>Ms,v1:()=>bP,v3:()=>AP,v4:()=>kP,v5:()=>IP,validate:()=>Is,version:()=>BP});var t7=pi(()=>{vP();_P();EP();MP();RP();CP();Kp();Lp();Qy()});var NP=b((E8e,OP)=>{"use strict";var lG=(t7(),J9(e7)).v4,dG=function(t,e,r,i){if(typeof t!="string")throw new TypeError(t+" must be a string");i=i||{};let a=typeof i.version=="number"?i.version:2;if(a!==1&&a!==2)throw new TypeError(a+" must be 1 or 2");let n={method:t};if(a===2&&(n.jsonrpc="2.0"),e){if(typeof e!="object"&&!Array.isArray(e))throw new TypeError(e+" must be an object, array or omitted");n.params=e}if(typeof r>"u"){let s=typeof i.generator=="function"?i.generator:function(){return lG()};n.id=s(n,i)}else a===2&&r===null?i.notificationIdNull&&(n.id=null):n.id=r;return n};OP.exports=dG});var WP=b((P8e,qP)=>{"use strict";var uG=(t7(),J9(e7)).v4,cG=NP(),Up=function(t,e){if(!(this instanceof Up))return new Up(t,e);e||(e={}),this.options={reviver:typeof e.reviver<"u"?e.reviver:null,replacer:typeof e.replacer<"u"?e.replacer:null,generator:typeof e.generator<"u"?e.generator:function(){return uG()},version:typeof e.version<"u"?e.version:2,notificationIdNull:typeof e.notificationIdNull=="boolean"?e.notificationIdNull:!1},this.callServer=t};qP.exports=Up;Up.prototype.request=function(t,e,r,i){let a=this,n=null,s=Array.isArray(t)&&typeof e=="function";if(this.options.version===1&&s)throw new TypeError("JSON-RPC 1.0 does not support batching");if(s||!s&&t&&typeof t=="object"&&typeof e=="function")i=e,n=t;else{typeof r=="function"&&(i=r,r=void 0);let d=typeof i=="function";try{n=cG(t,e,r,{generator:this.options.generator,version:this.options.version,notificationIdNull:this.options.notificationIdNull})}catch(u){if(d)return i(u);throw u}if(!d)return n}let l;try{l=JSON.stringify(n,this.options.replacer)}catch(d){return i(d)}return this.callServer(l,function(d,u){a._parseResponse(d,u,i)}),n};Up.prototype._parseResponse=function(t,e,r){if(t){r(t);return}if(!e)return r();let i;try{i=JSON.parse(e,this.options.reviver)}catch(a){return r(a)}if(r.length===3)if(Array.isArray(i)){let a=function(s){return typeof s.error<"u"},n=function(s){return!a(s)};return r(null,i.filter(a),i.filter(n))}else return r(null,i.error,i.result);r(null,i)}});var KP=b((T8e,FP)=>{"use strict";var It={};FP.exports=It;function VP(t){return t<0?-1:1}function pG(t){return t%1===.5&&!(t&1)?Math.floor(t):Math.round(t)}function Ds(t,e){e.unsigned||--t;let r=e.unsigned?0:-Math.pow(2,t),i=Math.pow(2,t)-1,a=e.moduloBitLength?Math.pow(2,e.moduloBitLength):Math.pow(2,t),n=e.moduloBitLength?Math.pow(2,e.moduloBitLength-1):Math.pow(2,t-1);return function(s,o){o||(o={});let l=+s;if(o.enforceRange){if(!Number.isFinite(l))throw new TypeError("Argument is not a finite number");if(l=VP(l)*Math.floor(Math.abs(l)),li)throw new TypeError("Argument is not in byte range");return l}if(!isNaN(l)&&o.clamp)return l=pG(l),li&&(l=i),l;if(!Number.isFinite(l)||l===0)return 0;if(l=VP(l)*Math.floor(Math.abs(l)),l=l%a,!e.unsigned&&l>=n)return l-a;if(e.unsigned){if(l<0)l+=a;else if(l===-0)return 0}return l}}It.void=function(){};It.boolean=function(t){return!!t};It.byte=Ds(8,{unsigned:!1});It.octet=Ds(8,{unsigned:!0});It.short=Ds(16,{unsigned:!1});It["unsigned short"]=Ds(16,{unsigned:!0});It.long=Ds(32,{unsigned:!1});It["unsigned long"]=Ds(32,{unsigned:!0});It["long long"]=Ds(32,{unsigned:!1,moduloBitLength:64});It["unsigned long long"]=Ds(32,{unsigned:!0,moduloBitLength:64});It.double=function(t){let e=+t;if(!Number.isFinite(e))throw new TypeError("Argument is not a finite floating-point value");return e};It["unrestricted double"]=function(t){let e=+t;if(isNaN(e))throw new TypeError("Argument is NaN");return e};It.float=It.double;It["unrestricted float"]=It["unrestricted double"];It.DOMString=function(t,e){return e||(e={}),e.treatNullAsEmptyString&&t===null?"":String(t)};It.ByteString=function(t,e){let r=String(t),i;for(let a=0;(i=r.codePointAt(a))!==void 0;++a)if(i>255)throw new TypeError("Argument is not a valid bytestring");return r};It.USVString=function(t){let e=String(t),r=e.length,i=[];for(let a=0;a57343)i.push(String.fromCodePoint(n));else if(56320<=n&&n<=57343)i.push(String.fromCodePoint(65533));else if(a===r-1)i.push(String.fromCodePoint(65533));else{let s=e.charCodeAt(a+1);if(56320<=s&&s<=57343){let o=n&1023,l=s&1023;i.push(String.fromCodePoint(65536+1024*o+l)),++a}else i.push(String.fromCodePoint(65533))}}return i.join("")};It.Date=function(t,e){if(!(t instanceof Date))throw new TypeError("Argument is not a Date object");if(!isNaN(t))return t};It.RegExp=function(t,e){return t instanceof RegExp||(t=new RegExp(t)),t}});var LP=b((z8e,Rs)=>{"use strict";Rs.exports.mixin=function(e,r){let i=Object.getOwnPropertyNames(r);for(let a=0;a{mG.exports=[[[0,44],"disallowed_STD3_valid"],[[45,46],"valid"],[[47,47],"disallowed_STD3_valid"],[[48,57],"valid"],[[58,64],"disallowed_STD3_valid"],[[65,65],"mapped",[97]],[[66,66],"mapped",[98]],[[67,67],"mapped",[99]],[[68,68],"mapped",[100]],[[69,69],"mapped",[101]],[[70,70],"mapped",[102]],[[71,71],"mapped",[103]],[[72,72],"mapped",[104]],[[73,73],"mapped",[105]],[[74,74],"mapped",[106]],[[75,75],"mapped",[107]],[[76,76],"mapped",[108]],[[77,77],"mapped",[109]],[[78,78],"mapped",[110]],[[79,79],"mapped",[111]],[[80,80],"mapped",[112]],[[81,81],"mapped",[113]],[[82,82],"mapped",[114]],[[83,83],"mapped",[115]],[[84,84],"mapped",[116]],[[85,85],"mapped",[117]],[[86,86],"mapped",[118]],[[87,87],"mapped",[119]],[[88,88],"mapped",[120]],[[89,89],"mapped",[121]],[[90,90],"mapped",[122]],[[91,96],"disallowed_STD3_valid"],[[97,122],"valid"],[[123,127],"disallowed_STD3_valid"],[[128,159],"disallowed"],[[160,160],"disallowed_STD3_mapped",[32]],[[161,167],"valid",[],"NV8"],[[168,168],"disallowed_STD3_mapped",[32,776]],[[169,169],"valid",[],"NV8"],[[170,170],"mapped",[97]],[[171,172],"valid",[],"NV8"],[[173,173],"ignored"],[[174,174],"valid",[],"NV8"],[[175,175],"disallowed_STD3_mapped",[32,772]],[[176,177],"valid",[],"NV8"],[[178,178],"mapped",[50]],[[179,179],"mapped",[51]],[[180,180],"disallowed_STD3_mapped",[32,769]],[[181,181],"mapped",[956]],[[182,182],"valid",[],"NV8"],[[183,183],"valid"],[[184,184],"disallowed_STD3_mapped",[32,807]],[[185,185],"mapped",[49]],[[186,186],"mapped",[111]],[[187,187],"valid",[],"NV8"],[[188,188],"mapped",[49,8260,52]],[[189,189],"mapped",[49,8260,50]],[[190,190],"mapped",[51,8260,52]],[[191,191],"valid",[],"NV8"],[[192,192],"mapped",[224]],[[193,193],"mapped",[225]],[[194,194],"mapped",[226]],[[195,195],"mapped",[227]],[[196,196],"mapped",[228]],[[197,197],"mapped",[229]],[[198,198],"mapped",[230]],[[199,199],"mapped",[231]],[[200,200],"mapped",[232]],[[201,201],"mapped",[233]],[[202,202],"mapped",[234]],[[203,203],"mapped",[235]],[[204,204],"mapped",[236]],[[205,205],"mapped",[237]],[[206,206],"mapped",[238]],[[207,207],"mapped",[239]],[[208,208],"mapped",[240]],[[209,209],"mapped",[241]],[[210,210],"mapped",[242]],[[211,211],"mapped",[243]],[[212,212],"mapped",[244]],[[213,213],"mapped",[245]],[[214,214],"mapped",[246]],[[215,215],"valid",[],"NV8"],[[216,216],"mapped",[248]],[[217,217],"mapped",[249]],[[218,218],"mapped",[250]],[[219,219],"mapped",[251]],[[220,220],"mapped",[252]],[[221,221],"mapped",[253]],[[222,222],"mapped",[254]],[[223,223],"deviation",[115,115]],[[224,246],"valid"],[[247,247],"valid",[],"NV8"],[[248,255],"valid"],[[256,256],"mapped",[257]],[[257,257],"valid"],[[258,258],"mapped",[259]],[[259,259],"valid"],[[260,260],"mapped",[261]],[[261,261],"valid"],[[262,262],"mapped",[263]],[[263,263],"valid"],[[264,264],"mapped",[265]],[[265,265],"valid"],[[266,266],"mapped",[267]],[[267,267],"valid"],[[268,268],"mapped",[269]],[[269,269],"valid"],[[270,270],"mapped",[271]],[[271,271],"valid"],[[272,272],"mapped",[273]],[[273,273],"valid"],[[274,274],"mapped",[275]],[[275,275],"valid"],[[276,276],"mapped",[277]],[[277,277],"valid"],[[278,278],"mapped",[279]],[[279,279],"valid"],[[280,280],"mapped",[281]],[[281,281],"valid"],[[282,282],"mapped",[283]],[[283,283],"valid"],[[284,284],"mapped",[285]],[[285,285],"valid"],[[286,286],"mapped",[287]],[[287,287],"valid"],[[288,288],"mapped",[289]],[[289,289],"valid"],[[290,290],"mapped",[291]],[[291,291],"valid"],[[292,292],"mapped",[293]],[[293,293],"valid"],[[294,294],"mapped",[295]],[[295,295],"valid"],[[296,296],"mapped",[297]],[[297,297],"valid"],[[298,298],"mapped",[299]],[[299,299],"valid"],[[300,300],"mapped",[301]],[[301,301],"valid"],[[302,302],"mapped",[303]],[[303,303],"valid"],[[304,304],"mapped",[105,775]],[[305,305],"valid"],[[306,307],"mapped",[105,106]],[[308,308],"mapped",[309]],[[309,309],"valid"],[[310,310],"mapped",[311]],[[311,312],"valid"],[[313,313],"mapped",[314]],[[314,314],"valid"],[[315,315],"mapped",[316]],[[316,316],"valid"],[[317,317],"mapped",[318]],[[318,318],"valid"],[[319,320],"mapped",[108,183]],[[321,321],"mapped",[322]],[[322,322],"valid"],[[323,323],"mapped",[324]],[[324,324],"valid"],[[325,325],"mapped",[326]],[[326,326],"valid"],[[327,327],"mapped",[328]],[[328,328],"valid"],[[329,329],"mapped",[700,110]],[[330,330],"mapped",[331]],[[331,331],"valid"],[[332,332],"mapped",[333]],[[333,333],"valid"],[[334,334],"mapped",[335]],[[335,335],"valid"],[[336,336],"mapped",[337]],[[337,337],"valid"],[[338,338],"mapped",[339]],[[339,339],"valid"],[[340,340],"mapped",[341]],[[341,341],"valid"],[[342,342],"mapped",[343]],[[343,343],"valid"],[[344,344],"mapped",[345]],[[345,345],"valid"],[[346,346],"mapped",[347]],[[347,347],"valid"],[[348,348],"mapped",[349]],[[349,349],"valid"],[[350,350],"mapped",[351]],[[351,351],"valid"],[[352,352],"mapped",[353]],[[353,353],"valid"],[[354,354],"mapped",[355]],[[355,355],"valid"],[[356,356],"mapped",[357]],[[357,357],"valid"],[[358,358],"mapped",[359]],[[359,359],"valid"],[[360,360],"mapped",[361]],[[361,361],"valid"],[[362,362],"mapped",[363]],[[363,363],"valid"],[[364,364],"mapped",[365]],[[365,365],"valid"],[[366,366],"mapped",[367]],[[367,367],"valid"],[[368,368],"mapped",[369]],[[369,369],"valid"],[[370,370],"mapped",[371]],[[371,371],"valid"],[[372,372],"mapped",[373]],[[373,373],"valid"],[[374,374],"mapped",[375]],[[375,375],"valid"],[[376,376],"mapped",[255]],[[377,377],"mapped",[378]],[[378,378],"valid"],[[379,379],"mapped",[380]],[[380,380],"valid"],[[381,381],"mapped",[382]],[[382,382],"valid"],[[383,383],"mapped",[115]],[[384,384],"valid"],[[385,385],"mapped",[595]],[[386,386],"mapped",[387]],[[387,387],"valid"],[[388,388],"mapped",[389]],[[389,389],"valid"],[[390,390],"mapped",[596]],[[391,391],"mapped",[392]],[[392,392],"valid"],[[393,393],"mapped",[598]],[[394,394],"mapped",[599]],[[395,395],"mapped",[396]],[[396,397],"valid"],[[398,398],"mapped",[477]],[[399,399],"mapped",[601]],[[400,400],"mapped",[603]],[[401,401],"mapped",[402]],[[402,402],"valid"],[[403,403],"mapped",[608]],[[404,404],"mapped",[611]],[[405,405],"valid"],[[406,406],"mapped",[617]],[[407,407],"mapped",[616]],[[408,408],"mapped",[409]],[[409,411],"valid"],[[412,412],"mapped",[623]],[[413,413],"mapped",[626]],[[414,414],"valid"],[[415,415],"mapped",[629]],[[416,416],"mapped",[417]],[[417,417],"valid"],[[418,418],"mapped",[419]],[[419,419],"valid"],[[420,420],"mapped",[421]],[[421,421],"valid"],[[422,422],"mapped",[640]],[[423,423],"mapped",[424]],[[424,424],"valid"],[[425,425],"mapped",[643]],[[426,427],"valid"],[[428,428],"mapped",[429]],[[429,429],"valid"],[[430,430],"mapped",[648]],[[431,431],"mapped",[432]],[[432,432],"valid"],[[433,433],"mapped",[650]],[[434,434],"mapped",[651]],[[435,435],"mapped",[436]],[[436,436],"valid"],[[437,437],"mapped",[438]],[[438,438],"valid"],[[439,439],"mapped",[658]],[[440,440],"mapped",[441]],[[441,443],"valid"],[[444,444],"mapped",[445]],[[445,451],"valid"],[[452,454],"mapped",[100,382]],[[455,457],"mapped",[108,106]],[[458,460],"mapped",[110,106]],[[461,461],"mapped",[462]],[[462,462],"valid"],[[463,463],"mapped",[464]],[[464,464],"valid"],[[465,465],"mapped",[466]],[[466,466],"valid"],[[467,467],"mapped",[468]],[[468,468],"valid"],[[469,469],"mapped",[470]],[[470,470],"valid"],[[471,471],"mapped",[472]],[[472,472],"valid"],[[473,473],"mapped",[474]],[[474,474],"valid"],[[475,475],"mapped",[476]],[[476,477],"valid"],[[478,478],"mapped",[479]],[[479,479],"valid"],[[480,480],"mapped",[481]],[[481,481],"valid"],[[482,482],"mapped",[483]],[[483,483],"valid"],[[484,484],"mapped",[485]],[[485,485],"valid"],[[486,486],"mapped",[487]],[[487,487],"valid"],[[488,488],"mapped",[489]],[[489,489],"valid"],[[490,490],"mapped",[491]],[[491,491],"valid"],[[492,492],"mapped",[493]],[[493,493],"valid"],[[494,494],"mapped",[495]],[[495,496],"valid"],[[497,499],"mapped",[100,122]],[[500,500],"mapped",[501]],[[501,501],"valid"],[[502,502],"mapped",[405]],[[503,503],"mapped",[447]],[[504,504],"mapped",[505]],[[505,505],"valid"],[[506,506],"mapped",[507]],[[507,507],"valid"],[[508,508],"mapped",[509]],[[509,509],"valid"],[[510,510],"mapped",[511]],[[511,511],"valid"],[[512,512],"mapped",[513]],[[513,513],"valid"],[[514,514],"mapped",[515]],[[515,515],"valid"],[[516,516],"mapped",[517]],[[517,517],"valid"],[[518,518],"mapped",[519]],[[519,519],"valid"],[[520,520],"mapped",[521]],[[521,521],"valid"],[[522,522],"mapped",[523]],[[523,523],"valid"],[[524,524],"mapped",[525]],[[525,525],"valid"],[[526,526],"mapped",[527]],[[527,527],"valid"],[[528,528],"mapped",[529]],[[529,529],"valid"],[[530,530],"mapped",[531]],[[531,531],"valid"],[[532,532],"mapped",[533]],[[533,533],"valid"],[[534,534],"mapped",[535]],[[535,535],"valid"],[[536,536],"mapped",[537]],[[537,537],"valid"],[[538,538],"mapped",[539]],[[539,539],"valid"],[[540,540],"mapped",[541]],[[541,541],"valid"],[[542,542],"mapped",[543]],[[543,543],"valid"],[[544,544],"mapped",[414]],[[545,545],"valid"],[[546,546],"mapped",[547]],[[547,547],"valid"],[[548,548],"mapped",[549]],[[549,549],"valid"],[[550,550],"mapped",[551]],[[551,551],"valid"],[[552,552],"mapped",[553]],[[553,553],"valid"],[[554,554],"mapped",[555]],[[555,555],"valid"],[[556,556],"mapped",[557]],[[557,557],"valid"],[[558,558],"mapped",[559]],[[559,559],"valid"],[[560,560],"mapped",[561]],[[561,561],"valid"],[[562,562],"mapped",[563]],[[563,563],"valid"],[[564,566],"valid"],[[567,569],"valid"],[[570,570],"mapped",[11365]],[[571,571],"mapped",[572]],[[572,572],"valid"],[[573,573],"mapped",[410]],[[574,574],"mapped",[11366]],[[575,576],"valid"],[[577,577],"mapped",[578]],[[578,578],"valid"],[[579,579],"mapped",[384]],[[580,580],"mapped",[649]],[[581,581],"mapped",[652]],[[582,582],"mapped",[583]],[[583,583],"valid"],[[584,584],"mapped",[585]],[[585,585],"valid"],[[586,586],"mapped",[587]],[[587,587],"valid"],[[588,588],"mapped",[589]],[[589,589],"valid"],[[590,590],"mapped",[591]],[[591,591],"valid"],[[592,680],"valid"],[[681,685],"valid"],[[686,687],"valid"],[[688,688],"mapped",[104]],[[689,689],"mapped",[614]],[[690,690],"mapped",[106]],[[691,691],"mapped",[114]],[[692,692],"mapped",[633]],[[693,693],"mapped",[635]],[[694,694],"mapped",[641]],[[695,695],"mapped",[119]],[[696,696],"mapped",[121]],[[697,705],"valid"],[[706,709],"valid",[],"NV8"],[[710,721],"valid"],[[722,727],"valid",[],"NV8"],[[728,728],"disallowed_STD3_mapped",[32,774]],[[729,729],"disallowed_STD3_mapped",[32,775]],[[730,730],"disallowed_STD3_mapped",[32,778]],[[731,731],"disallowed_STD3_mapped",[32,808]],[[732,732],"disallowed_STD3_mapped",[32,771]],[[733,733],"disallowed_STD3_mapped",[32,779]],[[734,734],"valid",[],"NV8"],[[735,735],"valid",[],"NV8"],[[736,736],"mapped",[611]],[[737,737],"mapped",[108]],[[738,738],"mapped",[115]],[[739,739],"mapped",[120]],[[740,740],"mapped",[661]],[[741,745],"valid",[],"NV8"],[[746,747],"valid",[],"NV8"],[[748,748],"valid"],[[749,749],"valid",[],"NV8"],[[750,750],"valid"],[[751,767],"valid",[],"NV8"],[[768,831],"valid"],[[832,832],"mapped",[768]],[[833,833],"mapped",[769]],[[834,834],"valid"],[[835,835],"mapped",[787]],[[836,836],"mapped",[776,769]],[[837,837],"mapped",[953]],[[838,846],"valid"],[[847,847],"ignored"],[[848,855],"valid"],[[856,860],"valid"],[[861,863],"valid"],[[864,865],"valid"],[[866,866],"valid"],[[867,879],"valid"],[[880,880],"mapped",[881]],[[881,881],"valid"],[[882,882],"mapped",[883]],[[883,883],"valid"],[[884,884],"mapped",[697]],[[885,885],"valid"],[[886,886],"mapped",[887]],[[887,887],"valid"],[[888,889],"disallowed"],[[890,890],"disallowed_STD3_mapped",[32,953]],[[891,893],"valid"],[[894,894],"disallowed_STD3_mapped",[59]],[[895,895],"mapped",[1011]],[[896,899],"disallowed"],[[900,900],"disallowed_STD3_mapped",[32,769]],[[901,901],"disallowed_STD3_mapped",[32,776,769]],[[902,902],"mapped",[940]],[[903,903],"mapped",[183]],[[904,904],"mapped",[941]],[[905,905],"mapped",[942]],[[906,906],"mapped",[943]],[[907,907],"disallowed"],[[908,908],"mapped",[972]],[[909,909],"disallowed"],[[910,910],"mapped",[973]],[[911,911],"mapped",[974]],[[912,912],"valid"],[[913,913],"mapped",[945]],[[914,914],"mapped",[946]],[[915,915],"mapped",[947]],[[916,916],"mapped",[948]],[[917,917],"mapped",[949]],[[918,918],"mapped",[950]],[[919,919],"mapped",[951]],[[920,920],"mapped",[952]],[[921,921],"mapped",[953]],[[922,922],"mapped",[954]],[[923,923],"mapped",[955]],[[924,924],"mapped",[956]],[[925,925],"mapped",[957]],[[926,926],"mapped",[958]],[[927,927],"mapped",[959]],[[928,928],"mapped",[960]],[[929,929],"mapped",[961]],[[930,930],"disallowed"],[[931,931],"mapped",[963]],[[932,932],"mapped",[964]],[[933,933],"mapped",[965]],[[934,934],"mapped",[966]],[[935,935],"mapped",[967]],[[936,936],"mapped",[968]],[[937,937],"mapped",[969]],[[938,938],"mapped",[970]],[[939,939],"mapped",[971]],[[940,961],"valid"],[[962,962],"deviation",[963]],[[963,974],"valid"],[[975,975],"mapped",[983]],[[976,976],"mapped",[946]],[[977,977],"mapped",[952]],[[978,978],"mapped",[965]],[[979,979],"mapped",[973]],[[980,980],"mapped",[971]],[[981,981],"mapped",[966]],[[982,982],"mapped",[960]],[[983,983],"valid"],[[984,984],"mapped",[985]],[[985,985],"valid"],[[986,986],"mapped",[987]],[[987,987],"valid"],[[988,988],"mapped",[989]],[[989,989],"valid"],[[990,990],"mapped",[991]],[[991,991],"valid"],[[992,992],"mapped",[993]],[[993,993],"valid"],[[994,994],"mapped",[995]],[[995,995],"valid"],[[996,996],"mapped",[997]],[[997,997],"valid"],[[998,998],"mapped",[999]],[[999,999],"valid"],[[1e3,1e3],"mapped",[1001]],[[1001,1001],"valid"],[[1002,1002],"mapped",[1003]],[[1003,1003],"valid"],[[1004,1004],"mapped",[1005]],[[1005,1005],"valid"],[[1006,1006],"mapped",[1007]],[[1007,1007],"valid"],[[1008,1008],"mapped",[954]],[[1009,1009],"mapped",[961]],[[1010,1010],"mapped",[963]],[[1011,1011],"valid"],[[1012,1012],"mapped",[952]],[[1013,1013],"mapped",[949]],[[1014,1014],"valid",[],"NV8"],[[1015,1015],"mapped",[1016]],[[1016,1016],"valid"],[[1017,1017],"mapped",[963]],[[1018,1018],"mapped",[1019]],[[1019,1019],"valid"],[[1020,1020],"valid"],[[1021,1021],"mapped",[891]],[[1022,1022],"mapped",[892]],[[1023,1023],"mapped",[893]],[[1024,1024],"mapped",[1104]],[[1025,1025],"mapped",[1105]],[[1026,1026],"mapped",[1106]],[[1027,1027],"mapped",[1107]],[[1028,1028],"mapped",[1108]],[[1029,1029],"mapped",[1109]],[[1030,1030],"mapped",[1110]],[[1031,1031],"mapped",[1111]],[[1032,1032],"mapped",[1112]],[[1033,1033],"mapped",[1113]],[[1034,1034],"mapped",[1114]],[[1035,1035],"mapped",[1115]],[[1036,1036],"mapped",[1116]],[[1037,1037],"mapped",[1117]],[[1038,1038],"mapped",[1118]],[[1039,1039],"mapped",[1119]],[[1040,1040],"mapped",[1072]],[[1041,1041],"mapped",[1073]],[[1042,1042],"mapped",[1074]],[[1043,1043],"mapped",[1075]],[[1044,1044],"mapped",[1076]],[[1045,1045],"mapped",[1077]],[[1046,1046],"mapped",[1078]],[[1047,1047],"mapped",[1079]],[[1048,1048],"mapped",[1080]],[[1049,1049],"mapped",[1081]],[[1050,1050],"mapped",[1082]],[[1051,1051],"mapped",[1083]],[[1052,1052],"mapped",[1084]],[[1053,1053],"mapped",[1085]],[[1054,1054],"mapped",[1086]],[[1055,1055],"mapped",[1087]],[[1056,1056],"mapped",[1088]],[[1057,1057],"mapped",[1089]],[[1058,1058],"mapped",[1090]],[[1059,1059],"mapped",[1091]],[[1060,1060],"mapped",[1092]],[[1061,1061],"mapped",[1093]],[[1062,1062],"mapped",[1094]],[[1063,1063],"mapped",[1095]],[[1064,1064],"mapped",[1096]],[[1065,1065],"mapped",[1097]],[[1066,1066],"mapped",[1098]],[[1067,1067],"mapped",[1099]],[[1068,1068],"mapped",[1100]],[[1069,1069],"mapped",[1101]],[[1070,1070],"mapped",[1102]],[[1071,1071],"mapped",[1103]],[[1072,1103],"valid"],[[1104,1104],"valid"],[[1105,1116],"valid"],[[1117,1117],"valid"],[[1118,1119],"valid"],[[1120,1120],"mapped",[1121]],[[1121,1121],"valid"],[[1122,1122],"mapped",[1123]],[[1123,1123],"valid"],[[1124,1124],"mapped",[1125]],[[1125,1125],"valid"],[[1126,1126],"mapped",[1127]],[[1127,1127],"valid"],[[1128,1128],"mapped",[1129]],[[1129,1129],"valid"],[[1130,1130],"mapped",[1131]],[[1131,1131],"valid"],[[1132,1132],"mapped",[1133]],[[1133,1133],"valid"],[[1134,1134],"mapped",[1135]],[[1135,1135],"valid"],[[1136,1136],"mapped",[1137]],[[1137,1137],"valid"],[[1138,1138],"mapped",[1139]],[[1139,1139],"valid"],[[1140,1140],"mapped",[1141]],[[1141,1141],"valid"],[[1142,1142],"mapped",[1143]],[[1143,1143],"valid"],[[1144,1144],"mapped",[1145]],[[1145,1145],"valid"],[[1146,1146],"mapped",[1147]],[[1147,1147],"valid"],[[1148,1148],"mapped",[1149]],[[1149,1149],"valid"],[[1150,1150],"mapped",[1151]],[[1151,1151],"valid"],[[1152,1152],"mapped",[1153]],[[1153,1153],"valid"],[[1154,1154],"valid",[],"NV8"],[[1155,1158],"valid"],[[1159,1159],"valid"],[[1160,1161],"valid",[],"NV8"],[[1162,1162],"mapped",[1163]],[[1163,1163],"valid"],[[1164,1164],"mapped",[1165]],[[1165,1165],"valid"],[[1166,1166],"mapped",[1167]],[[1167,1167],"valid"],[[1168,1168],"mapped",[1169]],[[1169,1169],"valid"],[[1170,1170],"mapped",[1171]],[[1171,1171],"valid"],[[1172,1172],"mapped",[1173]],[[1173,1173],"valid"],[[1174,1174],"mapped",[1175]],[[1175,1175],"valid"],[[1176,1176],"mapped",[1177]],[[1177,1177],"valid"],[[1178,1178],"mapped",[1179]],[[1179,1179],"valid"],[[1180,1180],"mapped",[1181]],[[1181,1181],"valid"],[[1182,1182],"mapped",[1183]],[[1183,1183],"valid"],[[1184,1184],"mapped",[1185]],[[1185,1185],"valid"],[[1186,1186],"mapped",[1187]],[[1187,1187],"valid"],[[1188,1188],"mapped",[1189]],[[1189,1189],"valid"],[[1190,1190],"mapped",[1191]],[[1191,1191],"valid"],[[1192,1192],"mapped",[1193]],[[1193,1193],"valid"],[[1194,1194],"mapped",[1195]],[[1195,1195],"valid"],[[1196,1196],"mapped",[1197]],[[1197,1197],"valid"],[[1198,1198],"mapped",[1199]],[[1199,1199],"valid"],[[1200,1200],"mapped",[1201]],[[1201,1201],"valid"],[[1202,1202],"mapped",[1203]],[[1203,1203],"valid"],[[1204,1204],"mapped",[1205]],[[1205,1205],"valid"],[[1206,1206],"mapped",[1207]],[[1207,1207],"valid"],[[1208,1208],"mapped",[1209]],[[1209,1209],"valid"],[[1210,1210],"mapped",[1211]],[[1211,1211],"valid"],[[1212,1212],"mapped",[1213]],[[1213,1213],"valid"],[[1214,1214],"mapped",[1215]],[[1215,1215],"valid"],[[1216,1216],"disallowed"],[[1217,1217],"mapped",[1218]],[[1218,1218],"valid"],[[1219,1219],"mapped",[1220]],[[1220,1220],"valid"],[[1221,1221],"mapped",[1222]],[[1222,1222],"valid"],[[1223,1223],"mapped",[1224]],[[1224,1224],"valid"],[[1225,1225],"mapped",[1226]],[[1226,1226],"valid"],[[1227,1227],"mapped",[1228]],[[1228,1228],"valid"],[[1229,1229],"mapped",[1230]],[[1230,1230],"valid"],[[1231,1231],"valid"],[[1232,1232],"mapped",[1233]],[[1233,1233],"valid"],[[1234,1234],"mapped",[1235]],[[1235,1235],"valid"],[[1236,1236],"mapped",[1237]],[[1237,1237],"valid"],[[1238,1238],"mapped",[1239]],[[1239,1239],"valid"],[[1240,1240],"mapped",[1241]],[[1241,1241],"valid"],[[1242,1242],"mapped",[1243]],[[1243,1243],"valid"],[[1244,1244],"mapped",[1245]],[[1245,1245],"valid"],[[1246,1246],"mapped",[1247]],[[1247,1247],"valid"],[[1248,1248],"mapped",[1249]],[[1249,1249],"valid"],[[1250,1250],"mapped",[1251]],[[1251,1251],"valid"],[[1252,1252],"mapped",[1253]],[[1253,1253],"valid"],[[1254,1254],"mapped",[1255]],[[1255,1255],"valid"],[[1256,1256],"mapped",[1257]],[[1257,1257],"valid"],[[1258,1258],"mapped",[1259]],[[1259,1259],"valid"],[[1260,1260],"mapped",[1261]],[[1261,1261],"valid"],[[1262,1262],"mapped",[1263]],[[1263,1263],"valid"],[[1264,1264],"mapped",[1265]],[[1265,1265],"valid"],[[1266,1266],"mapped",[1267]],[[1267,1267],"valid"],[[1268,1268],"mapped",[1269]],[[1269,1269],"valid"],[[1270,1270],"mapped",[1271]],[[1271,1271],"valid"],[[1272,1272],"mapped",[1273]],[[1273,1273],"valid"],[[1274,1274],"mapped",[1275]],[[1275,1275],"valid"],[[1276,1276],"mapped",[1277]],[[1277,1277],"valid"],[[1278,1278],"mapped",[1279]],[[1279,1279],"valid"],[[1280,1280],"mapped",[1281]],[[1281,1281],"valid"],[[1282,1282],"mapped",[1283]],[[1283,1283],"valid"],[[1284,1284],"mapped",[1285]],[[1285,1285],"valid"],[[1286,1286],"mapped",[1287]],[[1287,1287],"valid"],[[1288,1288],"mapped",[1289]],[[1289,1289],"valid"],[[1290,1290],"mapped",[1291]],[[1291,1291],"valid"],[[1292,1292],"mapped",[1293]],[[1293,1293],"valid"],[[1294,1294],"mapped",[1295]],[[1295,1295],"valid"],[[1296,1296],"mapped",[1297]],[[1297,1297],"valid"],[[1298,1298],"mapped",[1299]],[[1299,1299],"valid"],[[1300,1300],"mapped",[1301]],[[1301,1301],"valid"],[[1302,1302],"mapped",[1303]],[[1303,1303],"valid"],[[1304,1304],"mapped",[1305]],[[1305,1305],"valid"],[[1306,1306],"mapped",[1307]],[[1307,1307],"valid"],[[1308,1308],"mapped",[1309]],[[1309,1309],"valid"],[[1310,1310],"mapped",[1311]],[[1311,1311],"valid"],[[1312,1312],"mapped",[1313]],[[1313,1313],"valid"],[[1314,1314],"mapped",[1315]],[[1315,1315],"valid"],[[1316,1316],"mapped",[1317]],[[1317,1317],"valid"],[[1318,1318],"mapped",[1319]],[[1319,1319],"valid"],[[1320,1320],"mapped",[1321]],[[1321,1321],"valid"],[[1322,1322],"mapped",[1323]],[[1323,1323],"valid"],[[1324,1324],"mapped",[1325]],[[1325,1325],"valid"],[[1326,1326],"mapped",[1327]],[[1327,1327],"valid"],[[1328,1328],"disallowed"],[[1329,1329],"mapped",[1377]],[[1330,1330],"mapped",[1378]],[[1331,1331],"mapped",[1379]],[[1332,1332],"mapped",[1380]],[[1333,1333],"mapped",[1381]],[[1334,1334],"mapped",[1382]],[[1335,1335],"mapped",[1383]],[[1336,1336],"mapped",[1384]],[[1337,1337],"mapped",[1385]],[[1338,1338],"mapped",[1386]],[[1339,1339],"mapped",[1387]],[[1340,1340],"mapped",[1388]],[[1341,1341],"mapped",[1389]],[[1342,1342],"mapped",[1390]],[[1343,1343],"mapped",[1391]],[[1344,1344],"mapped",[1392]],[[1345,1345],"mapped",[1393]],[[1346,1346],"mapped",[1394]],[[1347,1347],"mapped",[1395]],[[1348,1348],"mapped",[1396]],[[1349,1349],"mapped",[1397]],[[1350,1350],"mapped",[1398]],[[1351,1351],"mapped",[1399]],[[1352,1352],"mapped",[1400]],[[1353,1353],"mapped",[1401]],[[1354,1354],"mapped",[1402]],[[1355,1355],"mapped",[1403]],[[1356,1356],"mapped",[1404]],[[1357,1357],"mapped",[1405]],[[1358,1358],"mapped",[1406]],[[1359,1359],"mapped",[1407]],[[1360,1360],"mapped",[1408]],[[1361,1361],"mapped",[1409]],[[1362,1362],"mapped",[1410]],[[1363,1363],"mapped",[1411]],[[1364,1364],"mapped",[1412]],[[1365,1365],"mapped",[1413]],[[1366,1366],"mapped",[1414]],[[1367,1368],"disallowed"],[[1369,1369],"valid"],[[1370,1375],"valid",[],"NV8"],[[1376,1376],"disallowed"],[[1377,1414],"valid"],[[1415,1415],"mapped",[1381,1410]],[[1416,1416],"disallowed"],[[1417,1417],"valid",[],"NV8"],[[1418,1418],"valid",[],"NV8"],[[1419,1420],"disallowed"],[[1421,1422],"valid",[],"NV8"],[[1423,1423],"valid",[],"NV8"],[[1424,1424],"disallowed"],[[1425,1441],"valid"],[[1442,1442],"valid"],[[1443,1455],"valid"],[[1456,1465],"valid"],[[1466,1466],"valid"],[[1467,1469],"valid"],[[1470,1470],"valid",[],"NV8"],[[1471,1471],"valid"],[[1472,1472],"valid",[],"NV8"],[[1473,1474],"valid"],[[1475,1475],"valid",[],"NV8"],[[1476,1476],"valid"],[[1477,1477],"valid"],[[1478,1478],"valid",[],"NV8"],[[1479,1479],"valid"],[[1480,1487],"disallowed"],[[1488,1514],"valid"],[[1515,1519],"disallowed"],[[1520,1524],"valid"],[[1525,1535],"disallowed"],[[1536,1539],"disallowed"],[[1540,1540],"disallowed"],[[1541,1541],"disallowed"],[[1542,1546],"valid",[],"NV8"],[[1547,1547],"valid",[],"NV8"],[[1548,1548],"valid",[],"NV8"],[[1549,1551],"valid",[],"NV8"],[[1552,1557],"valid"],[[1558,1562],"valid"],[[1563,1563],"valid",[],"NV8"],[[1564,1564],"disallowed"],[[1565,1565],"disallowed"],[[1566,1566],"valid",[],"NV8"],[[1567,1567],"valid",[],"NV8"],[[1568,1568],"valid"],[[1569,1594],"valid"],[[1595,1599],"valid"],[[1600,1600],"valid",[],"NV8"],[[1601,1618],"valid"],[[1619,1621],"valid"],[[1622,1624],"valid"],[[1625,1630],"valid"],[[1631,1631],"valid"],[[1632,1641],"valid"],[[1642,1645],"valid",[],"NV8"],[[1646,1647],"valid"],[[1648,1652],"valid"],[[1653,1653],"mapped",[1575,1652]],[[1654,1654],"mapped",[1608,1652]],[[1655,1655],"mapped",[1735,1652]],[[1656,1656],"mapped",[1610,1652]],[[1657,1719],"valid"],[[1720,1721],"valid"],[[1722,1726],"valid"],[[1727,1727],"valid"],[[1728,1742],"valid"],[[1743,1743],"valid"],[[1744,1747],"valid"],[[1748,1748],"valid",[],"NV8"],[[1749,1756],"valid"],[[1757,1757],"disallowed"],[[1758,1758],"valid",[],"NV8"],[[1759,1768],"valid"],[[1769,1769],"valid",[],"NV8"],[[1770,1773],"valid"],[[1774,1775],"valid"],[[1776,1785],"valid"],[[1786,1790],"valid"],[[1791,1791],"valid"],[[1792,1805],"valid",[],"NV8"],[[1806,1806],"disallowed"],[[1807,1807],"disallowed"],[[1808,1836],"valid"],[[1837,1839],"valid"],[[1840,1866],"valid"],[[1867,1868],"disallowed"],[[1869,1871],"valid"],[[1872,1901],"valid"],[[1902,1919],"valid"],[[1920,1968],"valid"],[[1969,1969],"valid"],[[1970,1983],"disallowed"],[[1984,2037],"valid"],[[2038,2042],"valid",[],"NV8"],[[2043,2047],"disallowed"],[[2048,2093],"valid"],[[2094,2095],"disallowed"],[[2096,2110],"valid",[],"NV8"],[[2111,2111],"disallowed"],[[2112,2139],"valid"],[[2140,2141],"disallowed"],[[2142,2142],"valid",[],"NV8"],[[2143,2207],"disallowed"],[[2208,2208],"valid"],[[2209,2209],"valid"],[[2210,2220],"valid"],[[2221,2226],"valid"],[[2227,2228],"valid"],[[2229,2274],"disallowed"],[[2275,2275],"valid"],[[2276,2302],"valid"],[[2303,2303],"valid"],[[2304,2304],"valid"],[[2305,2307],"valid"],[[2308,2308],"valid"],[[2309,2361],"valid"],[[2362,2363],"valid"],[[2364,2381],"valid"],[[2382,2382],"valid"],[[2383,2383],"valid"],[[2384,2388],"valid"],[[2389,2389],"valid"],[[2390,2391],"valid"],[[2392,2392],"mapped",[2325,2364]],[[2393,2393],"mapped",[2326,2364]],[[2394,2394],"mapped",[2327,2364]],[[2395,2395],"mapped",[2332,2364]],[[2396,2396],"mapped",[2337,2364]],[[2397,2397],"mapped",[2338,2364]],[[2398,2398],"mapped",[2347,2364]],[[2399,2399],"mapped",[2351,2364]],[[2400,2403],"valid"],[[2404,2405],"valid",[],"NV8"],[[2406,2415],"valid"],[[2416,2416],"valid",[],"NV8"],[[2417,2418],"valid"],[[2419,2423],"valid"],[[2424,2424],"valid"],[[2425,2426],"valid"],[[2427,2428],"valid"],[[2429,2429],"valid"],[[2430,2431],"valid"],[[2432,2432],"valid"],[[2433,2435],"valid"],[[2436,2436],"disallowed"],[[2437,2444],"valid"],[[2445,2446],"disallowed"],[[2447,2448],"valid"],[[2449,2450],"disallowed"],[[2451,2472],"valid"],[[2473,2473],"disallowed"],[[2474,2480],"valid"],[[2481,2481],"disallowed"],[[2482,2482],"valid"],[[2483,2485],"disallowed"],[[2486,2489],"valid"],[[2490,2491],"disallowed"],[[2492,2492],"valid"],[[2493,2493],"valid"],[[2494,2500],"valid"],[[2501,2502],"disallowed"],[[2503,2504],"valid"],[[2505,2506],"disallowed"],[[2507,2509],"valid"],[[2510,2510],"valid"],[[2511,2518],"disallowed"],[[2519,2519],"valid"],[[2520,2523],"disallowed"],[[2524,2524],"mapped",[2465,2492]],[[2525,2525],"mapped",[2466,2492]],[[2526,2526],"disallowed"],[[2527,2527],"mapped",[2479,2492]],[[2528,2531],"valid"],[[2532,2533],"disallowed"],[[2534,2545],"valid"],[[2546,2554],"valid",[],"NV8"],[[2555,2555],"valid",[],"NV8"],[[2556,2560],"disallowed"],[[2561,2561],"valid"],[[2562,2562],"valid"],[[2563,2563],"valid"],[[2564,2564],"disallowed"],[[2565,2570],"valid"],[[2571,2574],"disallowed"],[[2575,2576],"valid"],[[2577,2578],"disallowed"],[[2579,2600],"valid"],[[2601,2601],"disallowed"],[[2602,2608],"valid"],[[2609,2609],"disallowed"],[[2610,2610],"valid"],[[2611,2611],"mapped",[2610,2620]],[[2612,2612],"disallowed"],[[2613,2613],"valid"],[[2614,2614],"mapped",[2616,2620]],[[2615,2615],"disallowed"],[[2616,2617],"valid"],[[2618,2619],"disallowed"],[[2620,2620],"valid"],[[2621,2621],"disallowed"],[[2622,2626],"valid"],[[2627,2630],"disallowed"],[[2631,2632],"valid"],[[2633,2634],"disallowed"],[[2635,2637],"valid"],[[2638,2640],"disallowed"],[[2641,2641],"valid"],[[2642,2648],"disallowed"],[[2649,2649],"mapped",[2582,2620]],[[2650,2650],"mapped",[2583,2620]],[[2651,2651],"mapped",[2588,2620]],[[2652,2652],"valid"],[[2653,2653],"disallowed"],[[2654,2654],"mapped",[2603,2620]],[[2655,2661],"disallowed"],[[2662,2676],"valid"],[[2677,2677],"valid"],[[2678,2688],"disallowed"],[[2689,2691],"valid"],[[2692,2692],"disallowed"],[[2693,2699],"valid"],[[2700,2700],"valid"],[[2701,2701],"valid"],[[2702,2702],"disallowed"],[[2703,2705],"valid"],[[2706,2706],"disallowed"],[[2707,2728],"valid"],[[2729,2729],"disallowed"],[[2730,2736],"valid"],[[2737,2737],"disallowed"],[[2738,2739],"valid"],[[2740,2740],"disallowed"],[[2741,2745],"valid"],[[2746,2747],"disallowed"],[[2748,2757],"valid"],[[2758,2758],"disallowed"],[[2759,2761],"valid"],[[2762,2762],"disallowed"],[[2763,2765],"valid"],[[2766,2767],"disallowed"],[[2768,2768],"valid"],[[2769,2783],"disallowed"],[[2784,2784],"valid"],[[2785,2787],"valid"],[[2788,2789],"disallowed"],[[2790,2799],"valid"],[[2800,2800],"valid",[],"NV8"],[[2801,2801],"valid",[],"NV8"],[[2802,2808],"disallowed"],[[2809,2809],"valid"],[[2810,2816],"disallowed"],[[2817,2819],"valid"],[[2820,2820],"disallowed"],[[2821,2828],"valid"],[[2829,2830],"disallowed"],[[2831,2832],"valid"],[[2833,2834],"disallowed"],[[2835,2856],"valid"],[[2857,2857],"disallowed"],[[2858,2864],"valid"],[[2865,2865],"disallowed"],[[2866,2867],"valid"],[[2868,2868],"disallowed"],[[2869,2869],"valid"],[[2870,2873],"valid"],[[2874,2875],"disallowed"],[[2876,2883],"valid"],[[2884,2884],"valid"],[[2885,2886],"disallowed"],[[2887,2888],"valid"],[[2889,2890],"disallowed"],[[2891,2893],"valid"],[[2894,2901],"disallowed"],[[2902,2903],"valid"],[[2904,2907],"disallowed"],[[2908,2908],"mapped",[2849,2876]],[[2909,2909],"mapped",[2850,2876]],[[2910,2910],"disallowed"],[[2911,2913],"valid"],[[2914,2915],"valid"],[[2916,2917],"disallowed"],[[2918,2927],"valid"],[[2928,2928],"valid",[],"NV8"],[[2929,2929],"valid"],[[2930,2935],"valid",[],"NV8"],[[2936,2945],"disallowed"],[[2946,2947],"valid"],[[2948,2948],"disallowed"],[[2949,2954],"valid"],[[2955,2957],"disallowed"],[[2958,2960],"valid"],[[2961,2961],"disallowed"],[[2962,2965],"valid"],[[2966,2968],"disallowed"],[[2969,2970],"valid"],[[2971,2971],"disallowed"],[[2972,2972],"valid"],[[2973,2973],"disallowed"],[[2974,2975],"valid"],[[2976,2978],"disallowed"],[[2979,2980],"valid"],[[2981,2983],"disallowed"],[[2984,2986],"valid"],[[2987,2989],"disallowed"],[[2990,2997],"valid"],[[2998,2998],"valid"],[[2999,3001],"valid"],[[3002,3005],"disallowed"],[[3006,3010],"valid"],[[3011,3013],"disallowed"],[[3014,3016],"valid"],[[3017,3017],"disallowed"],[[3018,3021],"valid"],[[3022,3023],"disallowed"],[[3024,3024],"valid"],[[3025,3030],"disallowed"],[[3031,3031],"valid"],[[3032,3045],"disallowed"],[[3046,3046],"valid"],[[3047,3055],"valid"],[[3056,3058],"valid",[],"NV8"],[[3059,3066],"valid",[],"NV8"],[[3067,3071],"disallowed"],[[3072,3072],"valid"],[[3073,3075],"valid"],[[3076,3076],"disallowed"],[[3077,3084],"valid"],[[3085,3085],"disallowed"],[[3086,3088],"valid"],[[3089,3089],"disallowed"],[[3090,3112],"valid"],[[3113,3113],"disallowed"],[[3114,3123],"valid"],[[3124,3124],"valid"],[[3125,3129],"valid"],[[3130,3132],"disallowed"],[[3133,3133],"valid"],[[3134,3140],"valid"],[[3141,3141],"disallowed"],[[3142,3144],"valid"],[[3145,3145],"disallowed"],[[3146,3149],"valid"],[[3150,3156],"disallowed"],[[3157,3158],"valid"],[[3159,3159],"disallowed"],[[3160,3161],"valid"],[[3162,3162],"valid"],[[3163,3167],"disallowed"],[[3168,3169],"valid"],[[3170,3171],"valid"],[[3172,3173],"disallowed"],[[3174,3183],"valid"],[[3184,3191],"disallowed"],[[3192,3199],"valid",[],"NV8"],[[3200,3200],"disallowed"],[[3201,3201],"valid"],[[3202,3203],"valid"],[[3204,3204],"disallowed"],[[3205,3212],"valid"],[[3213,3213],"disallowed"],[[3214,3216],"valid"],[[3217,3217],"disallowed"],[[3218,3240],"valid"],[[3241,3241],"disallowed"],[[3242,3251],"valid"],[[3252,3252],"disallowed"],[[3253,3257],"valid"],[[3258,3259],"disallowed"],[[3260,3261],"valid"],[[3262,3268],"valid"],[[3269,3269],"disallowed"],[[3270,3272],"valid"],[[3273,3273],"disallowed"],[[3274,3277],"valid"],[[3278,3284],"disallowed"],[[3285,3286],"valid"],[[3287,3293],"disallowed"],[[3294,3294],"valid"],[[3295,3295],"disallowed"],[[3296,3297],"valid"],[[3298,3299],"valid"],[[3300,3301],"disallowed"],[[3302,3311],"valid"],[[3312,3312],"disallowed"],[[3313,3314],"valid"],[[3315,3328],"disallowed"],[[3329,3329],"valid"],[[3330,3331],"valid"],[[3332,3332],"disallowed"],[[3333,3340],"valid"],[[3341,3341],"disallowed"],[[3342,3344],"valid"],[[3345,3345],"disallowed"],[[3346,3368],"valid"],[[3369,3369],"valid"],[[3370,3385],"valid"],[[3386,3386],"valid"],[[3387,3388],"disallowed"],[[3389,3389],"valid"],[[3390,3395],"valid"],[[3396,3396],"valid"],[[3397,3397],"disallowed"],[[3398,3400],"valid"],[[3401,3401],"disallowed"],[[3402,3405],"valid"],[[3406,3406],"valid"],[[3407,3414],"disallowed"],[[3415,3415],"valid"],[[3416,3422],"disallowed"],[[3423,3423],"valid"],[[3424,3425],"valid"],[[3426,3427],"valid"],[[3428,3429],"disallowed"],[[3430,3439],"valid"],[[3440,3445],"valid",[],"NV8"],[[3446,3448],"disallowed"],[[3449,3449],"valid",[],"NV8"],[[3450,3455],"valid"],[[3456,3457],"disallowed"],[[3458,3459],"valid"],[[3460,3460],"disallowed"],[[3461,3478],"valid"],[[3479,3481],"disallowed"],[[3482,3505],"valid"],[[3506,3506],"disallowed"],[[3507,3515],"valid"],[[3516,3516],"disallowed"],[[3517,3517],"valid"],[[3518,3519],"disallowed"],[[3520,3526],"valid"],[[3527,3529],"disallowed"],[[3530,3530],"valid"],[[3531,3534],"disallowed"],[[3535,3540],"valid"],[[3541,3541],"disallowed"],[[3542,3542],"valid"],[[3543,3543],"disallowed"],[[3544,3551],"valid"],[[3552,3557],"disallowed"],[[3558,3567],"valid"],[[3568,3569],"disallowed"],[[3570,3571],"valid"],[[3572,3572],"valid",[],"NV8"],[[3573,3584],"disallowed"],[[3585,3634],"valid"],[[3635,3635],"mapped",[3661,3634]],[[3636,3642],"valid"],[[3643,3646],"disallowed"],[[3647,3647],"valid",[],"NV8"],[[3648,3662],"valid"],[[3663,3663],"valid",[],"NV8"],[[3664,3673],"valid"],[[3674,3675],"valid",[],"NV8"],[[3676,3712],"disallowed"],[[3713,3714],"valid"],[[3715,3715],"disallowed"],[[3716,3716],"valid"],[[3717,3718],"disallowed"],[[3719,3720],"valid"],[[3721,3721],"disallowed"],[[3722,3722],"valid"],[[3723,3724],"disallowed"],[[3725,3725],"valid"],[[3726,3731],"disallowed"],[[3732,3735],"valid"],[[3736,3736],"disallowed"],[[3737,3743],"valid"],[[3744,3744],"disallowed"],[[3745,3747],"valid"],[[3748,3748],"disallowed"],[[3749,3749],"valid"],[[3750,3750],"disallowed"],[[3751,3751],"valid"],[[3752,3753],"disallowed"],[[3754,3755],"valid"],[[3756,3756],"disallowed"],[[3757,3762],"valid"],[[3763,3763],"mapped",[3789,3762]],[[3764,3769],"valid"],[[3770,3770],"disallowed"],[[3771,3773],"valid"],[[3774,3775],"disallowed"],[[3776,3780],"valid"],[[3781,3781],"disallowed"],[[3782,3782],"valid"],[[3783,3783],"disallowed"],[[3784,3789],"valid"],[[3790,3791],"disallowed"],[[3792,3801],"valid"],[[3802,3803],"disallowed"],[[3804,3804],"mapped",[3755,3737]],[[3805,3805],"mapped",[3755,3745]],[[3806,3807],"valid"],[[3808,3839],"disallowed"],[[3840,3840],"valid"],[[3841,3850],"valid",[],"NV8"],[[3851,3851],"valid"],[[3852,3852],"mapped",[3851]],[[3853,3863],"valid",[],"NV8"],[[3864,3865],"valid"],[[3866,3871],"valid",[],"NV8"],[[3872,3881],"valid"],[[3882,3892],"valid",[],"NV8"],[[3893,3893],"valid"],[[3894,3894],"valid",[],"NV8"],[[3895,3895],"valid"],[[3896,3896],"valid",[],"NV8"],[[3897,3897],"valid"],[[3898,3901],"valid",[],"NV8"],[[3902,3906],"valid"],[[3907,3907],"mapped",[3906,4023]],[[3908,3911],"valid"],[[3912,3912],"disallowed"],[[3913,3916],"valid"],[[3917,3917],"mapped",[3916,4023]],[[3918,3921],"valid"],[[3922,3922],"mapped",[3921,4023]],[[3923,3926],"valid"],[[3927,3927],"mapped",[3926,4023]],[[3928,3931],"valid"],[[3932,3932],"mapped",[3931,4023]],[[3933,3944],"valid"],[[3945,3945],"mapped",[3904,4021]],[[3946,3946],"valid"],[[3947,3948],"valid"],[[3949,3952],"disallowed"],[[3953,3954],"valid"],[[3955,3955],"mapped",[3953,3954]],[[3956,3956],"valid"],[[3957,3957],"mapped",[3953,3956]],[[3958,3958],"mapped",[4018,3968]],[[3959,3959],"mapped",[4018,3953,3968]],[[3960,3960],"mapped",[4019,3968]],[[3961,3961],"mapped",[4019,3953,3968]],[[3962,3968],"valid"],[[3969,3969],"mapped",[3953,3968]],[[3970,3972],"valid"],[[3973,3973],"valid",[],"NV8"],[[3974,3979],"valid"],[[3980,3983],"valid"],[[3984,3986],"valid"],[[3987,3987],"mapped",[3986,4023]],[[3988,3989],"valid"],[[3990,3990],"valid"],[[3991,3991],"valid"],[[3992,3992],"disallowed"],[[3993,3996],"valid"],[[3997,3997],"mapped",[3996,4023]],[[3998,4001],"valid"],[[4002,4002],"mapped",[4001,4023]],[[4003,4006],"valid"],[[4007,4007],"mapped",[4006,4023]],[[4008,4011],"valid"],[[4012,4012],"mapped",[4011,4023]],[[4013,4013],"valid"],[[4014,4016],"valid"],[[4017,4023],"valid"],[[4024,4024],"valid"],[[4025,4025],"mapped",[3984,4021]],[[4026,4028],"valid"],[[4029,4029],"disallowed"],[[4030,4037],"valid",[],"NV8"],[[4038,4038],"valid"],[[4039,4044],"valid",[],"NV8"],[[4045,4045],"disallowed"],[[4046,4046],"valid",[],"NV8"],[[4047,4047],"valid",[],"NV8"],[[4048,4049],"valid",[],"NV8"],[[4050,4052],"valid",[],"NV8"],[[4053,4056],"valid",[],"NV8"],[[4057,4058],"valid",[],"NV8"],[[4059,4095],"disallowed"],[[4096,4129],"valid"],[[4130,4130],"valid"],[[4131,4135],"valid"],[[4136,4136],"valid"],[[4137,4138],"valid"],[[4139,4139],"valid"],[[4140,4146],"valid"],[[4147,4149],"valid"],[[4150,4153],"valid"],[[4154,4159],"valid"],[[4160,4169],"valid"],[[4170,4175],"valid",[],"NV8"],[[4176,4185],"valid"],[[4186,4249],"valid"],[[4250,4253],"valid"],[[4254,4255],"valid",[],"NV8"],[[4256,4293],"disallowed"],[[4294,4294],"disallowed"],[[4295,4295],"mapped",[11559]],[[4296,4300],"disallowed"],[[4301,4301],"mapped",[11565]],[[4302,4303],"disallowed"],[[4304,4342],"valid"],[[4343,4344],"valid"],[[4345,4346],"valid"],[[4347,4347],"valid",[],"NV8"],[[4348,4348],"mapped",[4316]],[[4349,4351],"valid"],[[4352,4441],"valid",[],"NV8"],[[4442,4446],"valid",[],"NV8"],[[4447,4448],"disallowed"],[[4449,4514],"valid",[],"NV8"],[[4515,4519],"valid",[],"NV8"],[[4520,4601],"valid",[],"NV8"],[[4602,4607],"valid",[],"NV8"],[[4608,4614],"valid"],[[4615,4615],"valid"],[[4616,4678],"valid"],[[4679,4679],"valid"],[[4680,4680],"valid"],[[4681,4681],"disallowed"],[[4682,4685],"valid"],[[4686,4687],"disallowed"],[[4688,4694],"valid"],[[4695,4695],"disallowed"],[[4696,4696],"valid"],[[4697,4697],"disallowed"],[[4698,4701],"valid"],[[4702,4703],"disallowed"],[[4704,4742],"valid"],[[4743,4743],"valid"],[[4744,4744],"valid"],[[4745,4745],"disallowed"],[[4746,4749],"valid"],[[4750,4751],"disallowed"],[[4752,4782],"valid"],[[4783,4783],"valid"],[[4784,4784],"valid"],[[4785,4785],"disallowed"],[[4786,4789],"valid"],[[4790,4791],"disallowed"],[[4792,4798],"valid"],[[4799,4799],"disallowed"],[[4800,4800],"valid"],[[4801,4801],"disallowed"],[[4802,4805],"valid"],[[4806,4807],"disallowed"],[[4808,4814],"valid"],[[4815,4815],"valid"],[[4816,4822],"valid"],[[4823,4823],"disallowed"],[[4824,4846],"valid"],[[4847,4847],"valid"],[[4848,4878],"valid"],[[4879,4879],"valid"],[[4880,4880],"valid"],[[4881,4881],"disallowed"],[[4882,4885],"valid"],[[4886,4887],"disallowed"],[[4888,4894],"valid"],[[4895,4895],"valid"],[[4896,4934],"valid"],[[4935,4935],"valid"],[[4936,4954],"valid"],[[4955,4956],"disallowed"],[[4957,4958],"valid"],[[4959,4959],"valid"],[[4960,4960],"valid",[],"NV8"],[[4961,4988],"valid",[],"NV8"],[[4989,4991],"disallowed"],[[4992,5007],"valid"],[[5008,5017],"valid",[],"NV8"],[[5018,5023],"disallowed"],[[5024,5108],"valid"],[[5109,5109],"valid"],[[5110,5111],"disallowed"],[[5112,5112],"mapped",[5104]],[[5113,5113],"mapped",[5105]],[[5114,5114],"mapped",[5106]],[[5115,5115],"mapped",[5107]],[[5116,5116],"mapped",[5108]],[[5117,5117],"mapped",[5109]],[[5118,5119],"disallowed"],[[5120,5120],"valid",[],"NV8"],[[5121,5740],"valid"],[[5741,5742],"valid",[],"NV8"],[[5743,5750],"valid"],[[5751,5759],"valid"],[[5760,5760],"disallowed"],[[5761,5786],"valid"],[[5787,5788],"valid",[],"NV8"],[[5789,5791],"disallowed"],[[5792,5866],"valid"],[[5867,5872],"valid",[],"NV8"],[[5873,5880],"valid"],[[5881,5887],"disallowed"],[[5888,5900],"valid"],[[5901,5901],"disallowed"],[[5902,5908],"valid"],[[5909,5919],"disallowed"],[[5920,5940],"valid"],[[5941,5942],"valid",[],"NV8"],[[5943,5951],"disallowed"],[[5952,5971],"valid"],[[5972,5983],"disallowed"],[[5984,5996],"valid"],[[5997,5997],"disallowed"],[[5998,6e3],"valid"],[[6001,6001],"disallowed"],[[6002,6003],"valid"],[[6004,6015],"disallowed"],[[6016,6067],"valid"],[[6068,6069],"disallowed"],[[6070,6099],"valid"],[[6100,6102],"valid",[],"NV8"],[[6103,6103],"valid"],[[6104,6107],"valid",[],"NV8"],[[6108,6108],"valid"],[[6109,6109],"valid"],[[6110,6111],"disallowed"],[[6112,6121],"valid"],[[6122,6127],"disallowed"],[[6128,6137],"valid",[],"NV8"],[[6138,6143],"disallowed"],[[6144,6149],"valid",[],"NV8"],[[6150,6150],"disallowed"],[[6151,6154],"valid",[],"NV8"],[[6155,6157],"ignored"],[[6158,6158],"disallowed"],[[6159,6159],"disallowed"],[[6160,6169],"valid"],[[6170,6175],"disallowed"],[[6176,6263],"valid"],[[6264,6271],"disallowed"],[[6272,6313],"valid"],[[6314,6314],"valid"],[[6315,6319],"disallowed"],[[6320,6389],"valid"],[[6390,6399],"disallowed"],[[6400,6428],"valid"],[[6429,6430],"valid"],[[6431,6431],"disallowed"],[[6432,6443],"valid"],[[6444,6447],"disallowed"],[[6448,6459],"valid"],[[6460,6463],"disallowed"],[[6464,6464],"valid",[],"NV8"],[[6465,6467],"disallowed"],[[6468,6469],"valid",[],"NV8"],[[6470,6509],"valid"],[[6510,6511],"disallowed"],[[6512,6516],"valid"],[[6517,6527],"disallowed"],[[6528,6569],"valid"],[[6570,6571],"valid"],[[6572,6575],"disallowed"],[[6576,6601],"valid"],[[6602,6607],"disallowed"],[[6608,6617],"valid"],[[6618,6618],"valid",[],"XV8"],[[6619,6621],"disallowed"],[[6622,6623],"valid",[],"NV8"],[[6624,6655],"valid",[],"NV8"],[[6656,6683],"valid"],[[6684,6685],"disallowed"],[[6686,6687],"valid",[],"NV8"],[[6688,6750],"valid"],[[6751,6751],"disallowed"],[[6752,6780],"valid"],[[6781,6782],"disallowed"],[[6783,6793],"valid"],[[6794,6799],"disallowed"],[[6800,6809],"valid"],[[6810,6815],"disallowed"],[[6816,6822],"valid",[],"NV8"],[[6823,6823],"valid"],[[6824,6829],"valid",[],"NV8"],[[6830,6831],"disallowed"],[[6832,6845],"valid"],[[6846,6846],"valid",[],"NV8"],[[6847,6911],"disallowed"],[[6912,6987],"valid"],[[6988,6991],"disallowed"],[[6992,7001],"valid"],[[7002,7018],"valid",[],"NV8"],[[7019,7027],"valid"],[[7028,7036],"valid",[],"NV8"],[[7037,7039],"disallowed"],[[7040,7082],"valid"],[[7083,7085],"valid"],[[7086,7097],"valid"],[[7098,7103],"valid"],[[7104,7155],"valid"],[[7156,7163],"disallowed"],[[7164,7167],"valid",[],"NV8"],[[7168,7223],"valid"],[[7224,7226],"disallowed"],[[7227,7231],"valid",[],"NV8"],[[7232,7241],"valid"],[[7242,7244],"disallowed"],[[7245,7293],"valid"],[[7294,7295],"valid",[],"NV8"],[[7296,7359],"disallowed"],[[7360,7367],"valid",[],"NV8"],[[7368,7375],"disallowed"],[[7376,7378],"valid"],[[7379,7379],"valid",[],"NV8"],[[7380,7410],"valid"],[[7411,7414],"valid"],[[7415,7415],"disallowed"],[[7416,7417],"valid"],[[7418,7423],"disallowed"],[[7424,7467],"valid"],[[7468,7468],"mapped",[97]],[[7469,7469],"mapped",[230]],[[7470,7470],"mapped",[98]],[[7471,7471],"valid"],[[7472,7472],"mapped",[100]],[[7473,7473],"mapped",[101]],[[7474,7474],"mapped",[477]],[[7475,7475],"mapped",[103]],[[7476,7476],"mapped",[104]],[[7477,7477],"mapped",[105]],[[7478,7478],"mapped",[106]],[[7479,7479],"mapped",[107]],[[7480,7480],"mapped",[108]],[[7481,7481],"mapped",[109]],[[7482,7482],"mapped",[110]],[[7483,7483],"valid"],[[7484,7484],"mapped",[111]],[[7485,7485],"mapped",[547]],[[7486,7486],"mapped",[112]],[[7487,7487],"mapped",[114]],[[7488,7488],"mapped",[116]],[[7489,7489],"mapped",[117]],[[7490,7490],"mapped",[119]],[[7491,7491],"mapped",[97]],[[7492,7492],"mapped",[592]],[[7493,7493],"mapped",[593]],[[7494,7494],"mapped",[7426]],[[7495,7495],"mapped",[98]],[[7496,7496],"mapped",[100]],[[7497,7497],"mapped",[101]],[[7498,7498],"mapped",[601]],[[7499,7499],"mapped",[603]],[[7500,7500],"mapped",[604]],[[7501,7501],"mapped",[103]],[[7502,7502],"valid"],[[7503,7503],"mapped",[107]],[[7504,7504],"mapped",[109]],[[7505,7505],"mapped",[331]],[[7506,7506],"mapped",[111]],[[7507,7507],"mapped",[596]],[[7508,7508],"mapped",[7446]],[[7509,7509],"mapped",[7447]],[[7510,7510],"mapped",[112]],[[7511,7511],"mapped",[116]],[[7512,7512],"mapped",[117]],[[7513,7513],"mapped",[7453]],[[7514,7514],"mapped",[623]],[[7515,7515],"mapped",[118]],[[7516,7516],"mapped",[7461]],[[7517,7517],"mapped",[946]],[[7518,7518],"mapped",[947]],[[7519,7519],"mapped",[948]],[[7520,7520],"mapped",[966]],[[7521,7521],"mapped",[967]],[[7522,7522],"mapped",[105]],[[7523,7523],"mapped",[114]],[[7524,7524],"mapped",[117]],[[7525,7525],"mapped",[118]],[[7526,7526],"mapped",[946]],[[7527,7527],"mapped",[947]],[[7528,7528],"mapped",[961]],[[7529,7529],"mapped",[966]],[[7530,7530],"mapped",[967]],[[7531,7531],"valid"],[[7532,7543],"valid"],[[7544,7544],"mapped",[1085]],[[7545,7578],"valid"],[[7579,7579],"mapped",[594]],[[7580,7580],"mapped",[99]],[[7581,7581],"mapped",[597]],[[7582,7582],"mapped",[240]],[[7583,7583],"mapped",[604]],[[7584,7584],"mapped",[102]],[[7585,7585],"mapped",[607]],[[7586,7586],"mapped",[609]],[[7587,7587],"mapped",[613]],[[7588,7588],"mapped",[616]],[[7589,7589],"mapped",[617]],[[7590,7590],"mapped",[618]],[[7591,7591],"mapped",[7547]],[[7592,7592],"mapped",[669]],[[7593,7593],"mapped",[621]],[[7594,7594],"mapped",[7557]],[[7595,7595],"mapped",[671]],[[7596,7596],"mapped",[625]],[[7597,7597],"mapped",[624]],[[7598,7598],"mapped",[626]],[[7599,7599],"mapped",[627]],[[7600,7600],"mapped",[628]],[[7601,7601],"mapped",[629]],[[7602,7602],"mapped",[632]],[[7603,7603],"mapped",[642]],[[7604,7604],"mapped",[643]],[[7605,7605],"mapped",[427]],[[7606,7606],"mapped",[649]],[[7607,7607],"mapped",[650]],[[7608,7608],"mapped",[7452]],[[7609,7609],"mapped",[651]],[[7610,7610],"mapped",[652]],[[7611,7611],"mapped",[122]],[[7612,7612],"mapped",[656]],[[7613,7613],"mapped",[657]],[[7614,7614],"mapped",[658]],[[7615,7615],"mapped",[952]],[[7616,7619],"valid"],[[7620,7626],"valid"],[[7627,7654],"valid"],[[7655,7669],"valid"],[[7670,7675],"disallowed"],[[7676,7676],"valid"],[[7677,7677],"valid"],[[7678,7679],"valid"],[[7680,7680],"mapped",[7681]],[[7681,7681],"valid"],[[7682,7682],"mapped",[7683]],[[7683,7683],"valid"],[[7684,7684],"mapped",[7685]],[[7685,7685],"valid"],[[7686,7686],"mapped",[7687]],[[7687,7687],"valid"],[[7688,7688],"mapped",[7689]],[[7689,7689],"valid"],[[7690,7690],"mapped",[7691]],[[7691,7691],"valid"],[[7692,7692],"mapped",[7693]],[[7693,7693],"valid"],[[7694,7694],"mapped",[7695]],[[7695,7695],"valid"],[[7696,7696],"mapped",[7697]],[[7697,7697],"valid"],[[7698,7698],"mapped",[7699]],[[7699,7699],"valid"],[[7700,7700],"mapped",[7701]],[[7701,7701],"valid"],[[7702,7702],"mapped",[7703]],[[7703,7703],"valid"],[[7704,7704],"mapped",[7705]],[[7705,7705],"valid"],[[7706,7706],"mapped",[7707]],[[7707,7707],"valid"],[[7708,7708],"mapped",[7709]],[[7709,7709],"valid"],[[7710,7710],"mapped",[7711]],[[7711,7711],"valid"],[[7712,7712],"mapped",[7713]],[[7713,7713],"valid"],[[7714,7714],"mapped",[7715]],[[7715,7715],"valid"],[[7716,7716],"mapped",[7717]],[[7717,7717],"valid"],[[7718,7718],"mapped",[7719]],[[7719,7719],"valid"],[[7720,7720],"mapped",[7721]],[[7721,7721],"valid"],[[7722,7722],"mapped",[7723]],[[7723,7723],"valid"],[[7724,7724],"mapped",[7725]],[[7725,7725],"valid"],[[7726,7726],"mapped",[7727]],[[7727,7727],"valid"],[[7728,7728],"mapped",[7729]],[[7729,7729],"valid"],[[7730,7730],"mapped",[7731]],[[7731,7731],"valid"],[[7732,7732],"mapped",[7733]],[[7733,7733],"valid"],[[7734,7734],"mapped",[7735]],[[7735,7735],"valid"],[[7736,7736],"mapped",[7737]],[[7737,7737],"valid"],[[7738,7738],"mapped",[7739]],[[7739,7739],"valid"],[[7740,7740],"mapped",[7741]],[[7741,7741],"valid"],[[7742,7742],"mapped",[7743]],[[7743,7743],"valid"],[[7744,7744],"mapped",[7745]],[[7745,7745],"valid"],[[7746,7746],"mapped",[7747]],[[7747,7747],"valid"],[[7748,7748],"mapped",[7749]],[[7749,7749],"valid"],[[7750,7750],"mapped",[7751]],[[7751,7751],"valid"],[[7752,7752],"mapped",[7753]],[[7753,7753],"valid"],[[7754,7754],"mapped",[7755]],[[7755,7755],"valid"],[[7756,7756],"mapped",[7757]],[[7757,7757],"valid"],[[7758,7758],"mapped",[7759]],[[7759,7759],"valid"],[[7760,7760],"mapped",[7761]],[[7761,7761],"valid"],[[7762,7762],"mapped",[7763]],[[7763,7763],"valid"],[[7764,7764],"mapped",[7765]],[[7765,7765],"valid"],[[7766,7766],"mapped",[7767]],[[7767,7767],"valid"],[[7768,7768],"mapped",[7769]],[[7769,7769],"valid"],[[7770,7770],"mapped",[7771]],[[7771,7771],"valid"],[[7772,7772],"mapped",[7773]],[[7773,7773],"valid"],[[7774,7774],"mapped",[7775]],[[7775,7775],"valid"],[[7776,7776],"mapped",[7777]],[[7777,7777],"valid"],[[7778,7778],"mapped",[7779]],[[7779,7779],"valid"],[[7780,7780],"mapped",[7781]],[[7781,7781],"valid"],[[7782,7782],"mapped",[7783]],[[7783,7783],"valid"],[[7784,7784],"mapped",[7785]],[[7785,7785],"valid"],[[7786,7786],"mapped",[7787]],[[7787,7787],"valid"],[[7788,7788],"mapped",[7789]],[[7789,7789],"valid"],[[7790,7790],"mapped",[7791]],[[7791,7791],"valid"],[[7792,7792],"mapped",[7793]],[[7793,7793],"valid"],[[7794,7794],"mapped",[7795]],[[7795,7795],"valid"],[[7796,7796],"mapped",[7797]],[[7797,7797],"valid"],[[7798,7798],"mapped",[7799]],[[7799,7799],"valid"],[[7800,7800],"mapped",[7801]],[[7801,7801],"valid"],[[7802,7802],"mapped",[7803]],[[7803,7803],"valid"],[[7804,7804],"mapped",[7805]],[[7805,7805],"valid"],[[7806,7806],"mapped",[7807]],[[7807,7807],"valid"],[[7808,7808],"mapped",[7809]],[[7809,7809],"valid"],[[7810,7810],"mapped",[7811]],[[7811,7811],"valid"],[[7812,7812],"mapped",[7813]],[[7813,7813],"valid"],[[7814,7814],"mapped",[7815]],[[7815,7815],"valid"],[[7816,7816],"mapped",[7817]],[[7817,7817],"valid"],[[7818,7818],"mapped",[7819]],[[7819,7819],"valid"],[[7820,7820],"mapped",[7821]],[[7821,7821],"valid"],[[7822,7822],"mapped",[7823]],[[7823,7823],"valid"],[[7824,7824],"mapped",[7825]],[[7825,7825],"valid"],[[7826,7826],"mapped",[7827]],[[7827,7827],"valid"],[[7828,7828],"mapped",[7829]],[[7829,7833],"valid"],[[7834,7834],"mapped",[97,702]],[[7835,7835],"mapped",[7777]],[[7836,7837],"valid"],[[7838,7838],"mapped",[115,115]],[[7839,7839],"valid"],[[7840,7840],"mapped",[7841]],[[7841,7841],"valid"],[[7842,7842],"mapped",[7843]],[[7843,7843],"valid"],[[7844,7844],"mapped",[7845]],[[7845,7845],"valid"],[[7846,7846],"mapped",[7847]],[[7847,7847],"valid"],[[7848,7848],"mapped",[7849]],[[7849,7849],"valid"],[[7850,7850],"mapped",[7851]],[[7851,7851],"valid"],[[7852,7852],"mapped",[7853]],[[7853,7853],"valid"],[[7854,7854],"mapped",[7855]],[[7855,7855],"valid"],[[7856,7856],"mapped",[7857]],[[7857,7857],"valid"],[[7858,7858],"mapped",[7859]],[[7859,7859],"valid"],[[7860,7860],"mapped",[7861]],[[7861,7861],"valid"],[[7862,7862],"mapped",[7863]],[[7863,7863],"valid"],[[7864,7864],"mapped",[7865]],[[7865,7865],"valid"],[[7866,7866],"mapped",[7867]],[[7867,7867],"valid"],[[7868,7868],"mapped",[7869]],[[7869,7869],"valid"],[[7870,7870],"mapped",[7871]],[[7871,7871],"valid"],[[7872,7872],"mapped",[7873]],[[7873,7873],"valid"],[[7874,7874],"mapped",[7875]],[[7875,7875],"valid"],[[7876,7876],"mapped",[7877]],[[7877,7877],"valid"],[[7878,7878],"mapped",[7879]],[[7879,7879],"valid"],[[7880,7880],"mapped",[7881]],[[7881,7881],"valid"],[[7882,7882],"mapped",[7883]],[[7883,7883],"valid"],[[7884,7884],"mapped",[7885]],[[7885,7885],"valid"],[[7886,7886],"mapped",[7887]],[[7887,7887],"valid"],[[7888,7888],"mapped",[7889]],[[7889,7889],"valid"],[[7890,7890],"mapped",[7891]],[[7891,7891],"valid"],[[7892,7892],"mapped",[7893]],[[7893,7893],"valid"],[[7894,7894],"mapped",[7895]],[[7895,7895],"valid"],[[7896,7896],"mapped",[7897]],[[7897,7897],"valid"],[[7898,7898],"mapped",[7899]],[[7899,7899],"valid"],[[7900,7900],"mapped",[7901]],[[7901,7901],"valid"],[[7902,7902],"mapped",[7903]],[[7903,7903],"valid"],[[7904,7904],"mapped",[7905]],[[7905,7905],"valid"],[[7906,7906],"mapped",[7907]],[[7907,7907],"valid"],[[7908,7908],"mapped",[7909]],[[7909,7909],"valid"],[[7910,7910],"mapped",[7911]],[[7911,7911],"valid"],[[7912,7912],"mapped",[7913]],[[7913,7913],"valid"],[[7914,7914],"mapped",[7915]],[[7915,7915],"valid"],[[7916,7916],"mapped",[7917]],[[7917,7917],"valid"],[[7918,7918],"mapped",[7919]],[[7919,7919],"valid"],[[7920,7920],"mapped",[7921]],[[7921,7921],"valid"],[[7922,7922],"mapped",[7923]],[[7923,7923],"valid"],[[7924,7924],"mapped",[7925]],[[7925,7925],"valid"],[[7926,7926],"mapped",[7927]],[[7927,7927],"valid"],[[7928,7928],"mapped",[7929]],[[7929,7929],"valid"],[[7930,7930],"mapped",[7931]],[[7931,7931],"valid"],[[7932,7932],"mapped",[7933]],[[7933,7933],"valid"],[[7934,7934],"mapped",[7935]],[[7935,7935],"valid"],[[7936,7943],"valid"],[[7944,7944],"mapped",[7936]],[[7945,7945],"mapped",[7937]],[[7946,7946],"mapped",[7938]],[[7947,7947],"mapped",[7939]],[[7948,7948],"mapped",[7940]],[[7949,7949],"mapped",[7941]],[[7950,7950],"mapped",[7942]],[[7951,7951],"mapped",[7943]],[[7952,7957],"valid"],[[7958,7959],"disallowed"],[[7960,7960],"mapped",[7952]],[[7961,7961],"mapped",[7953]],[[7962,7962],"mapped",[7954]],[[7963,7963],"mapped",[7955]],[[7964,7964],"mapped",[7956]],[[7965,7965],"mapped",[7957]],[[7966,7967],"disallowed"],[[7968,7975],"valid"],[[7976,7976],"mapped",[7968]],[[7977,7977],"mapped",[7969]],[[7978,7978],"mapped",[7970]],[[7979,7979],"mapped",[7971]],[[7980,7980],"mapped",[7972]],[[7981,7981],"mapped",[7973]],[[7982,7982],"mapped",[7974]],[[7983,7983],"mapped",[7975]],[[7984,7991],"valid"],[[7992,7992],"mapped",[7984]],[[7993,7993],"mapped",[7985]],[[7994,7994],"mapped",[7986]],[[7995,7995],"mapped",[7987]],[[7996,7996],"mapped",[7988]],[[7997,7997],"mapped",[7989]],[[7998,7998],"mapped",[7990]],[[7999,7999],"mapped",[7991]],[[8e3,8005],"valid"],[[8006,8007],"disallowed"],[[8008,8008],"mapped",[8e3]],[[8009,8009],"mapped",[8001]],[[8010,8010],"mapped",[8002]],[[8011,8011],"mapped",[8003]],[[8012,8012],"mapped",[8004]],[[8013,8013],"mapped",[8005]],[[8014,8015],"disallowed"],[[8016,8023],"valid"],[[8024,8024],"disallowed"],[[8025,8025],"mapped",[8017]],[[8026,8026],"disallowed"],[[8027,8027],"mapped",[8019]],[[8028,8028],"disallowed"],[[8029,8029],"mapped",[8021]],[[8030,8030],"disallowed"],[[8031,8031],"mapped",[8023]],[[8032,8039],"valid"],[[8040,8040],"mapped",[8032]],[[8041,8041],"mapped",[8033]],[[8042,8042],"mapped",[8034]],[[8043,8043],"mapped",[8035]],[[8044,8044],"mapped",[8036]],[[8045,8045],"mapped",[8037]],[[8046,8046],"mapped",[8038]],[[8047,8047],"mapped",[8039]],[[8048,8048],"valid"],[[8049,8049],"mapped",[940]],[[8050,8050],"valid"],[[8051,8051],"mapped",[941]],[[8052,8052],"valid"],[[8053,8053],"mapped",[942]],[[8054,8054],"valid"],[[8055,8055],"mapped",[943]],[[8056,8056],"valid"],[[8057,8057],"mapped",[972]],[[8058,8058],"valid"],[[8059,8059],"mapped",[973]],[[8060,8060],"valid"],[[8061,8061],"mapped",[974]],[[8062,8063],"disallowed"],[[8064,8064],"mapped",[7936,953]],[[8065,8065],"mapped",[7937,953]],[[8066,8066],"mapped",[7938,953]],[[8067,8067],"mapped",[7939,953]],[[8068,8068],"mapped",[7940,953]],[[8069,8069],"mapped",[7941,953]],[[8070,8070],"mapped",[7942,953]],[[8071,8071],"mapped",[7943,953]],[[8072,8072],"mapped",[7936,953]],[[8073,8073],"mapped",[7937,953]],[[8074,8074],"mapped",[7938,953]],[[8075,8075],"mapped",[7939,953]],[[8076,8076],"mapped",[7940,953]],[[8077,8077],"mapped",[7941,953]],[[8078,8078],"mapped",[7942,953]],[[8079,8079],"mapped",[7943,953]],[[8080,8080],"mapped",[7968,953]],[[8081,8081],"mapped",[7969,953]],[[8082,8082],"mapped",[7970,953]],[[8083,8083],"mapped",[7971,953]],[[8084,8084],"mapped",[7972,953]],[[8085,8085],"mapped",[7973,953]],[[8086,8086],"mapped",[7974,953]],[[8087,8087],"mapped",[7975,953]],[[8088,8088],"mapped",[7968,953]],[[8089,8089],"mapped",[7969,953]],[[8090,8090],"mapped",[7970,953]],[[8091,8091],"mapped",[7971,953]],[[8092,8092],"mapped",[7972,953]],[[8093,8093],"mapped",[7973,953]],[[8094,8094],"mapped",[7974,953]],[[8095,8095],"mapped",[7975,953]],[[8096,8096],"mapped",[8032,953]],[[8097,8097],"mapped",[8033,953]],[[8098,8098],"mapped",[8034,953]],[[8099,8099],"mapped",[8035,953]],[[8100,8100],"mapped",[8036,953]],[[8101,8101],"mapped",[8037,953]],[[8102,8102],"mapped",[8038,953]],[[8103,8103],"mapped",[8039,953]],[[8104,8104],"mapped",[8032,953]],[[8105,8105],"mapped",[8033,953]],[[8106,8106],"mapped",[8034,953]],[[8107,8107],"mapped",[8035,953]],[[8108,8108],"mapped",[8036,953]],[[8109,8109],"mapped",[8037,953]],[[8110,8110],"mapped",[8038,953]],[[8111,8111],"mapped",[8039,953]],[[8112,8113],"valid"],[[8114,8114],"mapped",[8048,953]],[[8115,8115],"mapped",[945,953]],[[8116,8116],"mapped",[940,953]],[[8117,8117],"disallowed"],[[8118,8118],"valid"],[[8119,8119],"mapped",[8118,953]],[[8120,8120],"mapped",[8112]],[[8121,8121],"mapped",[8113]],[[8122,8122],"mapped",[8048]],[[8123,8123],"mapped",[940]],[[8124,8124],"mapped",[945,953]],[[8125,8125],"disallowed_STD3_mapped",[32,787]],[[8126,8126],"mapped",[953]],[[8127,8127],"disallowed_STD3_mapped",[32,787]],[[8128,8128],"disallowed_STD3_mapped",[32,834]],[[8129,8129],"disallowed_STD3_mapped",[32,776,834]],[[8130,8130],"mapped",[8052,953]],[[8131,8131],"mapped",[951,953]],[[8132,8132],"mapped",[942,953]],[[8133,8133],"disallowed"],[[8134,8134],"valid"],[[8135,8135],"mapped",[8134,953]],[[8136,8136],"mapped",[8050]],[[8137,8137],"mapped",[941]],[[8138,8138],"mapped",[8052]],[[8139,8139],"mapped",[942]],[[8140,8140],"mapped",[951,953]],[[8141,8141],"disallowed_STD3_mapped",[32,787,768]],[[8142,8142],"disallowed_STD3_mapped",[32,787,769]],[[8143,8143],"disallowed_STD3_mapped",[32,787,834]],[[8144,8146],"valid"],[[8147,8147],"mapped",[912]],[[8148,8149],"disallowed"],[[8150,8151],"valid"],[[8152,8152],"mapped",[8144]],[[8153,8153],"mapped",[8145]],[[8154,8154],"mapped",[8054]],[[8155,8155],"mapped",[943]],[[8156,8156],"disallowed"],[[8157,8157],"disallowed_STD3_mapped",[32,788,768]],[[8158,8158],"disallowed_STD3_mapped",[32,788,769]],[[8159,8159],"disallowed_STD3_mapped",[32,788,834]],[[8160,8162],"valid"],[[8163,8163],"mapped",[944]],[[8164,8167],"valid"],[[8168,8168],"mapped",[8160]],[[8169,8169],"mapped",[8161]],[[8170,8170],"mapped",[8058]],[[8171,8171],"mapped",[973]],[[8172,8172],"mapped",[8165]],[[8173,8173],"disallowed_STD3_mapped",[32,776,768]],[[8174,8174],"disallowed_STD3_mapped",[32,776,769]],[[8175,8175],"disallowed_STD3_mapped",[96]],[[8176,8177],"disallowed"],[[8178,8178],"mapped",[8060,953]],[[8179,8179],"mapped",[969,953]],[[8180,8180],"mapped",[974,953]],[[8181,8181],"disallowed"],[[8182,8182],"valid"],[[8183,8183],"mapped",[8182,953]],[[8184,8184],"mapped",[8056]],[[8185,8185],"mapped",[972]],[[8186,8186],"mapped",[8060]],[[8187,8187],"mapped",[974]],[[8188,8188],"mapped",[969,953]],[[8189,8189],"disallowed_STD3_mapped",[32,769]],[[8190,8190],"disallowed_STD3_mapped",[32,788]],[[8191,8191],"disallowed"],[[8192,8202],"disallowed_STD3_mapped",[32]],[[8203,8203],"ignored"],[[8204,8205],"deviation",[]],[[8206,8207],"disallowed"],[[8208,8208],"valid",[],"NV8"],[[8209,8209],"mapped",[8208]],[[8210,8214],"valid",[],"NV8"],[[8215,8215],"disallowed_STD3_mapped",[32,819]],[[8216,8227],"valid",[],"NV8"],[[8228,8230],"disallowed"],[[8231,8231],"valid",[],"NV8"],[[8232,8238],"disallowed"],[[8239,8239],"disallowed_STD3_mapped",[32]],[[8240,8242],"valid",[],"NV8"],[[8243,8243],"mapped",[8242,8242]],[[8244,8244],"mapped",[8242,8242,8242]],[[8245,8245],"valid",[],"NV8"],[[8246,8246],"mapped",[8245,8245]],[[8247,8247],"mapped",[8245,8245,8245]],[[8248,8251],"valid",[],"NV8"],[[8252,8252],"disallowed_STD3_mapped",[33,33]],[[8253,8253],"valid",[],"NV8"],[[8254,8254],"disallowed_STD3_mapped",[32,773]],[[8255,8262],"valid",[],"NV8"],[[8263,8263],"disallowed_STD3_mapped",[63,63]],[[8264,8264],"disallowed_STD3_mapped",[63,33]],[[8265,8265],"disallowed_STD3_mapped",[33,63]],[[8266,8269],"valid",[],"NV8"],[[8270,8274],"valid",[],"NV8"],[[8275,8276],"valid",[],"NV8"],[[8277,8278],"valid",[],"NV8"],[[8279,8279],"mapped",[8242,8242,8242,8242]],[[8280,8286],"valid",[],"NV8"],[[8287,8287],"disallowed_STD3_mapped",[32]],[[8288,8288],"ignored"],[[8289,8291],"disallowed"],[[8292,8292],"ignored"],[[8293,8293],"disallowed"],[[8294,8297],"disallowed"],[[8298,8303],"disallowed"],[[8304,8304],"mapped",[48]],[[8305,8305],"mapped",[105]],[[8306,8307],"disallowed"],[[8308,8308],"mapped",[52]],[[8309,8309],"mapped",[53]],[[8310,8310],"mapped",[54]],[[8311,8311],"mapped",[55]],[[8312,8312],"mapped",[56]],[[8313,8313],"mapped",[57]],[[8314,8314],"disallowed_STD3_mapped",[43]],[[8315,8315],"mapped",[8722]],[[8316,8316],"disallowed_STD3_mapped",[61]],[[8317,8317],"disallowed_STD3_mapped",[40]],[[8318,8318],"disallowed_STD3_mapped",[41]],[[8319,8319],"mapped",[110]],[[8320,8320],"mapped",[48]],[[8321,8321],"mapped",[49]],[[8322,8322],"mapped",[50]],[[8323,8323],"mapped",[51]],[[8324,8324],"mapped",[52]],[[8325,8325],"mapped",[53]],[[8326,8326],"mapped",[54]],[[8327,8327],"mapped",[55]],[[8328,8328],"mapped",[56]],[[8329,8329],"mapped",[57]],[[8330,8330],"disallowed_STD3_mapped",[43]],[[8331,8331],"mapped",[8722]],[[8332,8332],"disallowed_STD3_mapped",[61]],[[8333,8333],"disallowed_STD3_mapped",[40]],[[8334,8334],"disallowed_STD3_mapped",[41]],[[8335,8335],"disallowed"],[[8336,8336],"mapped",[97]],[[8337,8337],"mapped",[101]],[[8338,8338],"mapped",[111]],[[8339,8339],"mapped",[120]],[[8340,8340],"mapped",[601]],[[8341,8341],"mapped",[104]],[[8342,8342],"mapped",[107]],[[8343,8343],"mapped",[108]],[[8344,8344],"mapped",[109]],[[8345,8345],"mapped",[110]],[[8346,8346],"mapped",[112]],[[8347,8347],"mapped",[115]],[[8348,8348],"mapped",[116]],[[8349,8351],"disallowed"],[[8352,8359],"valid",[],"NV8"],[[8360,8360],"mapped",[114,115]],[[8361,8362],"valid",[],"NV8"],[[8363,8363],"valid",[],"NV8"],[[8364,8364],"valid",[],"NV8"],[[8365,8367],"valid",[],"NV8"],[[8368,8369],"valid",[],"NV8"],[[8370,8373],"valid",[],"NV8"],[[8374,8376],"valid",[],"NV8"],[[8377,8377],"valid",[],"NV8"],[[8378,8378],"valid",[],"NV8"],[[8379,8381],"valid",[],"NV8"],[[8382,8382],"valid",[],"NV8"],[[8383,8399],"disallowed"],[[8400,8417],"valid",[],"NV8"],[[8418,8419],"valid",[],"NV8"],[[8420,8426],"valid",[],"NV8"],[[8427,8427],"valid",[],"NV8"],[[8428,8431],"valid",[],"NV8"],[[8432,8432],"valid",[],"NV8"],[[8433,8447],"disallowed"],[[8448,8448],"disallowed_STD3_mapped",[97,47,99]],[[8449,8449],"disallowed_STD3_mapped",[97,47,115]],[[8450,8450],"mapped",[99]],[[8451,8451],"mapped",[176,99]],[[8452,8452],"valid",[],"NV8"],[[8453,8453],"disallowed_STD3_mapped",[99,47,111]],[[8454,8454],"disallowed_STD3_mapped",[99,47,117]],[[8455,8455],"mapped",[603]],[[8456,8456],"valid",[],"NV8"],[[8457,8457],"mapped",[176,102]],[[8458,8458],"mapped",[103]],[[8459,8462],"mapped",[104]],[[8463,8463],"mapped",[295]],[[8464,8465],"mapped",[105]],[[8466,8467],"mapped",[108]],[[8468,8468],"valid",[],"NV8"],[[8469,8469],"mapped",[110]],[[8470,8470],"mapped",[110,111]],[[8471,8472],"valid",[],"NV8"],[[8473,8473],"mapped",[112]],[[8474,8474],"mapped",[113]],[[8475,8477],"mapped",[114]],[[8478,8479],"valid",[],"NV8"],[[8480,8480],"mapped",[115,109]],[[8481,8481],"mapped",[116,101,108]],[[8482,8482],"mapped",[116,109]],[[8483,8483],"valid",[],"NV8"],[[8484,8484],"mapped",[122]],[[8485,8485],"valid",[],"NV8"],[[8486,8486],"mapped",[969]],[[8487,8487],"valid",[],"NV8"],[[8488,8488],"mapped",[122]],[[8489,8489],"valid",[],"NV8"],[[8490,8490],"mapped",[107]],[[8491,8491],"mapped",[229]],[[8492,8492],"mapped",[98]],[[8493,8493],"mapped",[99]],[[8494,8494],"valid",[],"NV8"],[[8495,8496],"mapped",[101]],[[8497,8497],"mapped",[102]],[[8498,8498],"disallowed"],[[8499,8499],"mapped",[109]],[[8500,8500],"mapped",[111]],[[8501,8501],"mapped",[1488]],[[8502,8502],"mapped",[1489]],[[8503,8503],"mapped",[1490]],[[8504,8504],"mapped",[1491]],[[8505,8505],"mapped",[105]],[[8506,8506],"valid",[],"NV8"],[[8507,8507],"mapped",[102,97,120]],[[8508,8508],"mapped",[960]],[[8509,8510],"mapped",[947]],[[8511,8511],"mapped",[960]],[[8512,8512],"mapped",[8721]],[[8513,8516],"valid",[],"NV8"],[[8517,8518],"mapped",[100]],[[8519,8519],"mapped",[101]],[[8520,8520],"mapped",[105]],[[8521,8521],"mapped",[106]],[[8522,8523],"valid",[],"NV8"],[[8524,8524],"valid",[],"NV8"],[[8525,8525],"valid",[],"NV8"],[[8526,8526],"valid"],[[8527,8527],"valid",[],"NV8"],[[8528,8528],"mapped",[49,8260,55]],[[8529,8529],"mapped",[49,8260,57]],[[8530,8530],"mapped",[49,8260,49,48]],[[8531,8531],"mapped",[49,8260,51]],[[8532,8532],"mapped",[50,8260,51]],[[8533,8533],"mapped",[49,8260,53]],[[8534,8534],"mapped",[50,8260,53]],[[8535,8535],"mapped",[51,8260,53]],[[8536,8536],"mapped",[52,8260,53]],[[8537,8537],"mapped",[49,8260,54]],[[8538,8538],"mapped",[53,8260,54]],[[8539,8539],"mapped",[49,8260,56]],[[8540,8540],"mapped",[51,8260,56]],[[8541,8541],"mapped",[53,8260,56]],[[8542,8542],"mapped",[55,8260,56]],[[8543,8543],"mapped",[49,8260]],[[8544,8544],"mapped",[105]],[[8545,8545],"mapped",[105,105]],[[8546,8546],"mapped",[105,105,105]],[[8547,8547],"mapped",[105,118]],[[8548,8548],"mapped",[118]],[[8549,8549],"mapped",[118,105]],[[8550,8550],"mapped",[118,105,105]],[[8551,8551],"mapped",[118,105,105,105]],[[8552,8552],"mapped",[105,120]],[[8553,8553],"mapped",[120]],[[8554,8554],"mapped",[120,105]],[[8555,8555],"mapped",[120,105,105]],[[8556,8556],"mapped",[108]],[[8557,8557],"mapped",[99]],[[8558,8558],"mapped",[100]],[[8559,8559],"mapped",[109]],[[8560,8560],"mapped",[105]],[[8561,8561],"mapped",[105,105]],[[8562,8562],"mapped",[105,105,105]],[[8563,8563],"mapped",[105,118]],[[8564,8564],"mapped",[118]],[[8565,8565],"mapped",[118,105]],[[8566,8566],"mapped",[118,105,105]],[[8567,8567],"mapped",[118,105,105,105]],[[8568,8568],"mapped",[105,120]],[[8569,8569],"mapped",[120]],[[8570,8570],"mapped",[120,105]],[[8571,8571],"mapped",[120,105,105]],[[8572,8572],"mapped",[108]],[[8573,8573],"mapped",[99]],[[8574,8574],"mapped",[100]],[[8575,8575],"mapped",[109]],[[8576,8578],"valid",[],"NV8"],[[8579,8579],"disallowed"],[[8580,8580],"valid"],[[8581,8584],"valid",[],"NV8"],[[8585,8585],"mapped",[48,8260,51]],[[8586,8587],"valid",[],"NV8"],[[8588,8591],"disallowed"],[[8592,8682],"valid",[],"NV8"],[[8683,8691],"valid",[],"NV8"],[[8692,8703],"valid",[],"NV8"],[[8704,8747],"valid",[],"NV8"],[[8748,8748],"mapped",[8747,8747]],[[8749,8749],"mapped",[8747,8747,8747]],[[8750,8750],"valid",[],"NV8"],[[8751,8751],"mapped",[8750,8750]],[[8752,8752],"mapped",[8750,8750,8750]],[[8753,8799],"valid",[],"NV8"],[[8800,8800],"disallowed_STD3_valid"],[[8801,8813],"valid",[],"NV8"],[[8814,8815],"disallowed_STD3_valid"],[[8816,8945],"valid",[],"NV8"],[[8946,8959],"valid",[],"NV8"],[[8960,8960],"valid",[],"NV8"],[[8961,8961],"valid",[],"NV8"],[[8962,9e3],"valid",[],"NV8"],[[9001,9001],"mapped",[12296]],[[9002,9002],"mapped",[12297]],[[9003,9082],"valid",[],"NV8"],[[9083,9083],"valid",[],"NV8"],[[9084,9084],"valid",[],"NV8"],[[9085,9114],"valid",[],"NV8"],[[9115,9166],"valid",[],"NV8"],[[9167,9168],"valid",[],"NV8"],[[9169,9179],"valid",[],"NV8"],[[9180,9191],"valid",[],"NV8"],[[9192,9192],"valid",[],"NV8"],[[9193,9203],"valid",[],"NV8"],[[9204,9210],"valid",[],"NV8"],[[9211,9215],"disallowed"],[[9216,9252],"valid",[],"NV8"],[[9253,9254],"valid",[],"NV8"],[[9255,9279],"disallowed"],[[9280,9290],"valid",[],"NV8"],[[9291,9311],"disallowed"],[[9312,9312],"mapped",[49]],[[9313,9313],"mapped",[50]],[[9314,9314],"mapped",[51]],[[9315,9315],"mapped",[52]],[[9316,9316],"mapped",[53]],[[9317,9317],"mapped",[54]],[[9318,9318],"mapped",[55]],[[9319,9319],"mapped",[56]],[[9320,9320],"mapped",[57]],[[9321,9321],"mapped",[49,48]],[[9322,9322],"mapped",[49,49]],[[9323,9323],"mapped",[49,50]],[[9324,9324],"mapped",[49,51]],[[9325,9325],"mapped",[49,52]],[[9326,9326],"mapped",[49,53]],[[9327,9327],"mapped",[49,54]],[[9328,9328],"mapped",[49,55]],[[9329,9329],"mapped",[49,56]],[[9330,9330],"mapped",[49,57]],[[9331,9331],"mapped",[50,48]],[[9332,9332],"disallowed_STD3_mapped",[40,49,41]],[[9333,9333],"disallowed_STD3_mapped",[40,50,41]],[[9334,9334],"disallowed_STD3_mapped",[40,51,41]],[[9335,9335],"disallowed_STD3_mapped",[40,52,41]],[[9336,9336],"disallowed_STD3_mapped",[40,53,41]],[[9337,9337],"disallowed_STD3_mapped",[40,54,41]],[[9338,9338],"disallowed_STD3_mapped",[40,55,41]],[[9339,9339],"disallowed_STD3_mapped",[40,56,41]],[[9340,9340],"disallowed_STD3_mapped",[40,57,41]],[[9341,9341],"disallowed_STD3_mapped",[40,49,48,41]],[[9342,9342],"disallowed_STD3_mapped",[40,49,49,41]],[[9343,9343],"disallowed_STD3_mapped",[40,49,50,41]],[[9344,9344],"disallowed_STD3_mapped",[40,49,51,41]],[[9345,9345],"disallowed_STD3_mapped",[40,49,52,41]],[[9346,9346],"disallowed_STD3_mapped",[40,49,53,41]],[[9347,9347],"disallowed_STD3_mapped",[40,49,54,41]],[[9348,9348],"disallowed_STD3_mapped",[40,49,55,41]],[[9349,9349],"disallowed_STD3_mapped",[40,49,56,41]],[[9350,9350],"disallowed_STD3_mapped",[40,49,57,41]],[[9351,9351],"disallowed_STD3_mapped",[40,50,48,41]],[[9352,9371],"disallowed"],[[9372,9372],"disallowed_STD3_mapped",[40,97,41]],[[9373,9373],"disallowed_STD3_mapped",[40,98,41]],[[9374,9374],"disallowed_STD3_mapped",[40,99,41]],[[9375,9375],"disallowed_STD3_mapped",[40,100,41]],[[9376,9376],"disallowed_STD3_mapped",[40,101,41]],[[9377,9377],"disallowed_STD3_mapped",[40,102,41]],[[9378,9378],"disallowed_STD3_mapped",[40,103,41]],[[9379,9379],"disallowed_STD3_mapped",[40,104,41]],[[9380,9380],"disallowed_STD3_mapped",[40,105,41]],[[9381,9381],"disallowed_STD3_mapped",[40,106,41]],[[9382,9382],"disallowed_STD3_mapped",[40,107,41]],[[9383,9383],"disallowed_STD3_mapped",[40,108,41]],[[9384,9384],"disallowed_STD3_mapped",[40,109,41]],[[9385,9385],"disallowed_STD3_mapped",[40,110,41]],[[9386,9386],"disallowed_STD3_mapped",[40,111,41]],[[9387,9387],"disallowed_STD3_mapped",[40,112,41]],[[9388,9388],"disallowed_STD3_mapped",[40,113,41]],[[9389,9389],"disallowed_STD3_mapped",[40,114,41]],[[9390,9390],"disallowed_STD3_mapped",[40,115,41]],[[9391,9391],"disallowed_STD3_mapped",[40,116,41]],[[9392,9392],"disallowed_STD3_mapped",[40,117,41]],[[9393,9393],"disallowed_STD3_mapped",[40,118,41]],[[9394,9394],"disallowed_STD3_mapped",[40,119,41]],[[9395,9395],"disallowed_STD3_mapped",[40,120,41]],[[9396,9396],"disallowed_STD3_mapped",[40,121,41]],[[9397,9397],"disallowed_STD3_mapped",[40,122,41]],[[9398,9398],"mapped",[97]],[[9399,9399],"mapped",[98]],[[9400,9400],"mapped",[99]],[[9401,9401],"mapped",[100]],[[9402,9402],"mapped",[101]],[[9403,9403],"mapped",[102]],[[9404,9404],"mapped",[103]],[[9405,9405],"mapped",[104]],[[9406,9406],"mapped",[105]],[[9407,9407],"mapped",[106]],[[9408,9408],"mapped",[107]],[[9409,9409],"mapped",[108]],[[9410,9410],"mapped",[109]],[[9411,9411],"mapped",[110]],[[9412,9412],"mapped",[111]],[[9413,9413],"mapped",[112]],[[9414,9414],"mapped",[113]],[[9415,9415],"mapped",[114]],[[9416,9416],"mapped",[115]],[[9417,9417],"mapped",[116]],[[9418,9418],"mapped",[117]],[[9419,9419],"mapped",[118]],[[9420,9420],"mapped",[119]],[[9421,9421],"mapped",[120]],[[9422,9422],"mapped",[121]],[[9423,9423],"mapped",[122]],[[9424,9424],"mapped",[97]],[[9425,9425],"mapped",[98]],[[9426,9426],"mapped",[99]],[[9427,9427],"mapped",[100]],[[9428,9428],"mapped",[101]],[[9429,9429],"mapped",[102]],[[9430,9430],"mapped",[103]],[[9431,9431],"mapped",[104]],[[9432,9432],"mapped",[105]],[[9433,9433],"mapped",[106]],[[9434,9434],"mapped",[107]],[[9435,9435],"mapped",[108]],[[9436,9436],"mapped",[109]],[[9437,9437],"mapped",[110]],[[9438,9438],"mapped",[111]],[[9439,9439],"mapped",[112]],[[9440,9440],"mapped",[113]],[[9441,9441],"mapped",[114]],[[9442,9442],"mapped",[115]],[[9443,9443],"mapped",[116]],[[9444,9444],"mapped",[117]],[[9445,9445],"mapped",[118]],[[9446,9446],"mapped",[119]],[[9447,9447],"mapped",[120]],[[9448,9448],"mapped",[121]],[[9449,9449],"mapped",[122]],[[9450,9450],"mapped",[48]],[[9451,9470],"valid",[],"NV8"],[[9471,9471],"valid",[],"NV8"],[[9472,9621],"valid",[],"NV8"],[[9622,9631],"valid",[],"NV8"],[[9632,9711],"valid",[],"NV8"],[[9712,9719],"valid",[],"NV8"],[[9720,9727],"valid",[],"NV8"],[[9728,9747],"valid",[],"NV8"],[[9748,9749],"valid",[],"NV8"],[[9750,9751],"valid",[],"NV8"],[[9752,9752],"valid",[],"NV8"],[[9753,9753],"valid",[],"NV8"],[[9754,9839],"valid",[],"NV8"],[[9840,9841],"valid",[],"NV8"],[[9842,9853],"valid",[],"NV8"],[[9854,9855],"valid",[],"NV8"],[[9856,9865],"valid",[],"NV8"],[[9866,9873],"valid",[],"NV8"],[[9874,9884],"valid",[],"NV8"],[[9885,9885],"valid",[],"NV8"],[[9886,9887],"valid",[],"NV8"],[[9888,9889],"valid",[],"NV8"],[[9890,9905],"valid",[],"NV8"],[[9906,9906],"valid",[],"NV8"],[[9907,9916],"valid",[],"NV8"],[[9917,9919],"valid",[],"NV8"],[[9920,9923],"valid",[],"NV8"],[[9924,9933],"valid",[],"NV8"],[[9934,9934],"valid",[],"NV8"],[[9935,9953],"valid",[],"NV8"],[[9954,9954],"valid",[],"NV8"],[[9955,9955],"valid",[],"NV8"],[[9956,9959],"valid",[],"NV8"],[[9960,9983],"valid",[],"NV8"],[[9984,9984],"valid",[],"NV8"],[[9985,9988],"valid",[],"NV8"],[[9989,9989],"valid",[],"NV8"],[[9990,9993],"valid",[],"NV8"],[[9994,9995],"valid",[],"NV8"],[[9996,10023],"valid",[],"NV8"],[[10024,10024],"valid",[],"NV8"],[[10025,10059],"valid",[],"NV8"],[[10060,10060],"valid",[],"NV8"],[[10061,10061],"valid",[],"NV8"],[[10062,10062],"valid",[],"NV8"],[[10063,10066],"valid",[],"NV8"],[[10067,10069],"valid",[],"NV8"],[[10070,10070],"valid",[],"NV8"],[[10071,10071],"valid",[],"NV8"],[[10072,10078],"valid",[],"NV8"],[[10079,10080],"valid",[],"NV8"],[[10081,10087],"valid",[],"NV8"],[[10088,10101],"valid",[],"NV8"],[[10102,10132],"valid",[],"NV8"],[[10133,10135],"valid",[],"NV8"],[[10136,10159],"valid",[],"NV8"],[[10160,10160],"valid",[],"NV8"],[[10161,10174],"valid",[],"NV8"],[[10175,10175],"valid",[],"NV8"],[[10176,10182],"valid",[],"NV8"],[[10183,10186],"valid",[],"NV8"],[[10187,10187],"valid",[],"NV8"],[[10188,10188],"valid",[],"NV8"],[[10189,10189],"valid",[],"NV8"],[[10190,10191],"valid",[],"NV8"],[[10192,10219],"valid",[],"NV8"],[[10220,10223],"valid",[],"NV8"],[[10224,10239],"valid",[],"NV8"],[[10240,10495],"valid",[],"NV8"],[[10496,10763],"valid",[],"NV8"],[[10764,10764],"mapped",[8747,8747,8747,8747]],[[10765,10867],"valid",[],"NV8"],[[10868,10868],"disallowed_STD3_mapped",[58,58,61]],[[10869,10869],"disallowed_STD3_mapped",[61,61]],[[10870,10870],"disallowed_STD3_mapped",[61,61,61]],[[10871,10971],"valid",[],"NV8"],[[10972,10972],"mapped",[10973,824]],[[10973,11007],"valid",[],"NV8"],[[11008,11021],"valid",[],"NV8"],[[11022,11027],"valid",[],"NV8"],[[11028,11034],"valid",[],"NV8"],[[11035,11039],"valid",[],"NV8"],[[11040,11043],"valid",[],"NV8"],[[11044,11084],"valid",[],"NV8"],[[11085,11087],"valid",[],"NV8"],[[11088,11092],"valid",[],"NV8"],[[11093,11097],"valid",[],"NV8"],[[11098,11123],"valid",[],"NV8"],[[11124,11125],"disallowed"],[[11126,11157],"valid",[],"NV8"],[[11158,11159],"disallowed"],[[11160,11193],"valid",[],"NV8"],[[11194,11196],"disallowed"],[[11197,11208],"valid",[],"NV8"],[[11209,11209],"disallowed"],[[11210,11217],"valid",[],"NV8"],[[11218,11243],"disallowed"],[[11244,11247],"valid",[],"NV8"],[[11248,11263],"disallowed"],[[11264,11264],"mapped",[11312]],[[11265,11265],"mapped",[11313]],[[11266,11266],"mapped",[11314]],[[11267,11267],"mapped",[11315]],[[11268,11268],"mapped",[11316]],[[11269,11269],"mapped",[11317]],[[11270,11270],"mapped",[11318]],[[11271,11271],"mapped",[11319]],[[11272,11272],"mapped",[11320]],[[11273,11273],"mapped",[11321]],[[11274,11274],"mapped",[11322]],[[11275,11275],"mapped",[11323]],[[11276,11276],"mapped",[11324]],[[11277,11277],"mapped",[11325]],[[11278,11278],"mapped",[11326]],[[11279,11279],"mapped",[11327]],[[11280,11280],"mapped",[11328]],[[11281,11281],"mapped",[11329]],[[11282,11282],"mapped",[11330]],[[11283,11283],"mapped",[11331]],[[11284,11284],"mapped",[11332]],[[11285,11285],"mapped",[11333]],[[11286,11286],"mapped",[11334]],[[11287,11287],"mapped",[11335]],[[11288,11288],"mapped",[11336]],[[11289,11289],"mapped",[11337]],[[11290,11290],"mapped",[11338]],[[11291,11291],"mapped",[11339]],[[11292,11292],"mapped",[11340]],[[11293,11293],"mapped",[11341]],[[11294,11294],"mapped",[11342]],[[11295,11295],"mapped",[11343]],[[11296,11296],"mapped",[11344]],[[11297,11297],"mapped",[11345]],[[11298,11298],"mapped",[11346]],[[11299,11299],"mapped",[11347]],[[11300,11300],"mapped",[11348]],[[11301,11301],"mapped",[11349]],[[11302,11302],"mapped",[11350]],[[11303,11303],"mapped",[11351]],[[11304,11304],"mapped",[11352]],[[11305,11305],"mapped",[11353]],[[11306,11306],"mapped",[11354]],[[11307,11307],"mapped",[11355]],[[11308,11308],"mapped",[11356]],[[11309,11309],"mapped",[11357]],[[11310,11310],"mapped",[11358]],[[11311,11311],"disallowed"],[[11312,11358],"valid"],[[11359,11359],"disallowed"],[[11360,11360],"mapped",[11361]],[[11361,11361],"valid"],[[11362,11362],"mapped",[619]],[[11363,11363],"mapped",[7549]],[[11364,11364],"mapped",[637]],[[11365,11366],"valid"],[[11367,11367],"mapped",[11368]],[[11368,11368],"valid"],[[11369,11369],"mapped",[11370]],[[11370,11370],"valid"],[[11371,11371],"mapped",[11372]],[[11372,11372],"valid"],[[11373,11373],"mapped",[593]],[[11374,11374],"mapped",[625]],[[11375,11375],"mapped",[592]],[[11376,11376],"mapped",[594]],[[11377,11377],"valid"],[[11378,11378],"mapped",[11379]],[[11379,11379],"valid"],[[11380,11380],"valid"],[[11381,11381],"mapped",[11382]],[[11382,11383],"valid"],[[11384,11387],"valid"],[[11388,11388],"mapped",[106]],[[11389,11389],"mapped",[118]],[[11390,11390],"mapped",[575]],[[11391,11391],"mapped",[576]],[[11392,11392],"mapped",[11393]],[[11393,11393],"valid"],[[11394,11394],"mapped",[11395]],[[11395,11395],"valid"],[[11396,11396],"mapped",[11397]],[[11397,11397],"valid"],[[11398,11398],"mapped",[11399]],[[11399,11399],"valid"],[[11400,11400],"mapped",[11401]],[[11401,11401],"valid"],[[11402,11402],"mapped",[11403]],[[11403,11403],"valid"],[[11404,11404],"mapped",[11405]],[[11405,11405],"valid"],[[11406,11406],"mapped",[11407]],[[11407,11407],"valid"],[[11408,11408],"mapped",[11409]],[[11409,11409],"valid"],[[11410,11410],"mapped",[11411]],[[11411,11411],"valid"],[[11412,11412],"mapped",[11413]],[[11413,11413],"valid"],[[11414,11414],"mapped",[11415]],[[11415,11415],"valid"],[[11416,11416],"mapped",[11417]],[[11417,11417],"valid"],[[11418,11418],"mapped",[11419]],[[11419,11419],"valid"],[[11420,11420],"mapped",[11421]],[[11421,11421],"valid"],[[11422,11422],"mapped",[11423]],[[11423,11423],"valid"],[[11424,11424],"mapped",[11425]],[[11425,11425],"valid"],[[11426,11426],"mapped",[11427]],[[11427,11427],"valid"],[[11428,11428],"mapped",[11429]],[[11429,11429],"valid"],[[11430,11430],"mapped",[11431]],[[11431,11431],"valid"],[[11432,11432],"mapped",[11433]],[[11433,11433],"valid"],[[11434,11434],"mapped",[11435]],[[11435,11435],"valid"],[[11436,11436],"mapped",[11437]],[[11437,11437],"valid"],[[11438,11438],"mapped",[11439]],[[11439,11439],"valid"],[[11440,11440],"mapped",[11441]],[[11441,11441],"valid"],[[11442,11442],"mapped",[11443]],[[11443,11443],"valid"],[[11444,11444],"mapped",[11445]],[[11445,11445],"valid"],[[11446,11446],"mapped",[11447]],[[11447,11447],"valid"],[[11448,11448],"mapped",[11449]],[[11449,11449],"valid"],[[11450,11450],"mapped",[11451]],[[11451,11451],"valid"],[[11452,11452],"mapped",[11453]],[[11453,11453],"valid"],[[11454,11454],"mapped",[11455]],[[11455,11455],"valid"],[[11456,11456],"mapped",[11457]],[[11457,11457],"valid"],[[11458,11458],"mapped",[11459]],[[11459,11459],"valid"],[[11460,11460],"mapped",[11461]],[[11461,11461],"valid"],[[11462,11462],"mapped",[11463]],[[11463,11463],"valid"],[[11464,11464],"mapped",[11465]],[[11465,11465],"valid"],[[11466,11466],"mapped",[11467]],[[11467,11467],"valid"],[[11468,11468],"mapped",[11469]],[[11469,11469],"valid"],[[11470,11470],"mapped",[11471]],[[11471,11471],"valid"],[[11472,11472],"mapped",[11473]],[[11473,11473],"valid"],[[11474,11474],"mapped",[11475]],[[11475,11475],"valid"],[[11476,11476],"mapped",[11477]],[[11477,11477],"valid"],[[11478,11478],"mapped",[11479]],[[11479,11479],"valid"],[[11480,11480],"mapped",[11481]],[[11481,11481],"valid"],[[11482,11482],"mapped",[11483]],[[11483,11483],"valid"],[[11484,11484],"mapped",[11485]],[[11485,11485],"valid"],[[11486,11486],"mapped",[11487]],[[11487,11487],"valid"],[[11488,11488],"mapped",[11489]],[[11489,11489],"valid"],[[11490,11490],"mapped",[11491]],[[11491,11492],"valid"],[[11493,11498],"valid",[],"NV8"],[[11499,11499],"mapped",[11500]],[[11500,11500],"valid"],[[11501,11501],"mapped",[11502]],[[11502,11505],"valid"],[[11506,11506],"mapped",[11507]],[[11507,11507],"valid"],[[11508,11512],"disallowed"],[[11513,11519],"valid",[],"NV8"],[[11520,11557],"valid"],[[11558,11558],"disallowed"],[[11559,11559],"valid"],[[11560,11564],"disallowed"],[[11565,11565],"valid"],[[11566,11567],"disallowed"],[[11568,11621],"valid"],[[11622,11623],"valid"],[[11624,11630],"disallowed"],[[11631,11631],"mapped",[11617]],[[11632,11632],"valid",[],"NV8"],[[11633,11646],"disallowed"],[[11647,11647],"valid"],[[11648,11670],"valid"],[[11671,11679],"disallowed"],[[11680,11686],"valid"],[[11687,11687],"disallowed"],[[11688,11694],"valid"],[[11695,11695],"disallowed"],[[11696,11702],"valid"],[[11703,11703],"disallowed"],[[11704,11710],"valid"],[[11711,11711],"disallowed"],[[11712,11718],"valid"],[[11719,11719],"disallowed"],[[11720,11726],"valid"],[[11727,11727],"disallowed"],[[11728,11734],"valid"],[[11735,11735],"disallowed"],[[11736,11742],"valid"],[[11743,11743],"disallowed"],[[11744,11775],"valid"],[[11776,11799],"valid",[],"NV8"],[[11800,11803],"valid",[],"NV8"],[[11804,11805],"valid",[],"NV8"],[[11806,11822],"valid",[],"NV8"],[[11823,11823],"valid"],[[11824,11824],"valid",[],"NV8"],[[11825,11825],"valid",[],"NV8"],[[11826,11835],"valid",[],"NV8"],[[11836,11842],"valid",[],"NV8"],[[11843,11903],"disallowed"],[[11904,11929],"valid",[],"NV8"],[[11930,11930],"disallowed"],[[11931,11934],"valid",[],"NV8"],[[11935,11935],"mapped",[27597]],[[11936,12018],"valid",[],"NV8"],[[12019,12019],"mapped",[40863]],[[12020,12031],"disallowed"],[[12032,12032],"mapped",[19968]],[[12033,12033],"mapped",[20008]],[[12034,12034],"mapped",[20022]],[[12035,12035],"mapped",[20031]],[[12036,12036],"mapped",[20057]],[[12037,12037],"mapped",[20101]],[[12038,12038],"mapped",[20108]],[[12039,12039],"mapped",[20128]],[[12040,12040],"mapped",[20154]],[[12041,12041],"mapped",[20799]],[[12042,12042],"mapped",[20837]],[[12043,12043],"mapped",[20843]],[[12044,12044],"mapped",[20866]],[[12045,12045],"mapped",[20886]],[[12046,12046],"mapped",[20907]],[[12047,12047],"mapped",[20960]],[[12048,12048],"mapped",[20981]],[[12049,12049],"mapped",[20992]],[[12050,12050],"mapped",[21147]],[[12051,12051],"mapped",[21241]],[[12052,12052],"mapped",[21269]],[[12053,12053],"mapped",[21274]],[[12054,12054],"mapped",[21304]],[[12055,12055],"mapped",[21313]],[[12056,12056],"mapped",[21340]],[[12057,12057],"mapped",[21353]],[[12058,12058],"mapped",[21378]],[[12059,12059],"mapped",[21430]],[[12060,12060],"mapped",[21448]],[[12061,12061],"mapped",[21475]],[[12062,12062],"mapped",[22231]],[[12063,12063],"mapped",[22303]],[[12064,12064],"mapped",[22763]],[[12065,12065],"mapped",[22786]],[[12066,12066],"mapped",[22794]],[[12067,12067],"mapped",[22805]],[[12068,12068],"mapped",[22823]],[[12069,12069],"mapped",[22899]],[[12070,12070],"mapped",[23376]],[[12071,12071],"mapped",[23424]],[[12072,12072],"mapped",[23544]],[[12073,12073],"mapped",[23567]],[[12074,12074],"mapped",[23586]],[[12075,12075],"mapped",[23608]],[[12076,12076],"mapped",[23662]],[[12077,12077],"mapped",[23665]],[[12078,12078],"mapped",[24027]],[[12079,12079],"mapped",[24037]],[[12080,12080],"mapped",[24049]],[[12081,12081],"mapped",[24062]],[[12082,12082],"mapped",[24178]],[[12083,12083],"mapped",[24186]],[[12084,12084],"mapped",[24191]],[[12085,12085],"mapped",[24308]],[[12086,12086],"mapped",[24318]],[[12087,12087],"mapped",[24331]],[[12088,12088],"mapped",[24339]],[[12089,12089],"mapped",[24400]],[[12090,12090],"mapped",[24417]],[[12091,12091],"mapped",[24435]],[[12092,12092],"mapped",[24515]],[[12093,12093],"mapped",[25096]],[[12094,12094],"mapped",[25142]],[[12095,12095],"mapped",[25163]],[[12096,12096],"mapped",[25903]],[[12097,12097],"mapped",[25908]],[[12098,12098],"mapped",[25991]],[[12099,12099],"mapped",[26007]],[[12100,12100],"mapped",[26020]],[[12101,12101],"mapped",[26041]],[[12102,12102],"mapped",[26080]],[[12103,12103],"mapped",[26085]],[[12104,12104],"mapped",[26352]],[[12105,12105],"mapped",[26376]],[[12106,12106],"mapped",[26408]],[[12107,12107],"mapped",[27424]],[[12108,12108],"mapped",[27490]],[[12109,12109],"mapped",[27513]],[[12110,12110],"mapped",[27571]],[[12111,12111],"mapped",[27595]],[[12112,12112],"mapped",[27604]],[[12113,12113],"mapped",[27611]],[[12114,12114],"mapped",[27663]],[[12115,12115],"mapped",[27668]],[[12116,12116],"mapped",[27700]],[[12117,12117],"mapped",[28779]],[[12118,12118],"mapped",[29226]],[[12119,12119],"mapped",[29238]],[[12120,12120],"mapped",[29243]],[[12121,12121],"mapped",[29247]],[[12122,12122],"mapped",[29255]],[[12123,12123],"mapped",[29273]],[[12124,12124],"mapped",[29275]],[[12125,12125],"mapped",[29356]],[[12126,12126],"mapped",[29572]],[[12127,12127],"mapped",[29577]],[[12128,12128],"mapped",[29916]],[[12129,12129],"mapped",[29926]],[[12130,12130],"mapped",[29976]],[[12131,12131],"mapped",[29983]],[[12132,12132],"mapped",[29992]],[[12133,12133],"mapped",[3e4]],[[12134,12134],"mapped",[30091]],[[12135,12135],"mapped",[30098]],[[12136,12136],"mapped",[30326]],[[12137,12137],"mapped",[30333]],[[12138,12138],"mapped",[30382]],[[12139,12139],"mapped",[30399]],[[12140,12140],"mapped",[30446]],[[12141,12141],"mapped",[30683]],[[12142,12142],"mapped",[30690]],[[12143,12143],"mapped",[30707]],[[12144,12144],"mapped",[31034]],[[12145,12145],"mapped",[31160]],[[12146,12146],"mapped",[31166]],[[12147,12147],"mapped",[31348]],[[12148,12148],"mapped",[31435]],[[12149,12149],"mapped",[31481]],[[12150,12150],"mapped",[31859]],[[12151,12151],"mapped",[31992]],[[12152,12152],"mapped",[32566]],[[12153,12153],"mapped",[32593]],[[12154,12154],"mapped",[32650]],[[12155,12155],"mapped",[32701]],[[12156,12156],"mapped",[32769]],[[12157,12157],"mapped",[32780]],[[12158,12158],"mapped",[32786]],[[12159,12159],"mapped",[32819]],[[12160,12160],"mapped",[32895]],[[12161,12161],"mapped",[32905]],[[12162,12162],"mapped",[33251]],[[12163,12163],"mapped",[33258]],[[12164,12164],"mapped",[33267]],[[12165,12165],"mapped",[33276]],[[12166,12166],"mapped",[33292]],[[12167,12167],"mapped",[33307]],[[12168,12168],"mapped",[33311]],[[12169,12169],"mapped",[33390]],[[12170,12170],"mapped",[33394]],[[12171,12171],"mapped",[33400]],[[12172,12172],"mapped",[34381]],[[12173,12173],"mapped",[34411]],[[12174,12174],"mapped",[34880]],[[12175,12175],"mapped",[34892]],[[12176,12176],"mapped",[34915]],[[12177,12177],"mapped",[35198]],[[12178,12178],"mapped",[35211]],[[12179,12179],"mapped",[35282]],[[12180,12180],"mapped",[35328]],[[12181,12181],"mapped",[35895]],[[12182,12182],"mapped",[35910]],[[12183,12183],"mapped",[35925]],[[12184,12184],"mapped",[35960]],[[12185,12185],"mapped",[35997]],[[12186,12186],"mapped",[36196]],[[12187,12187],"mapped",[36208]],[[12188,12188],"mapped",[36275]],[[12189,12189],"mapped",[36523]],[[12190,12190],"mapped",[36554]],[[12191,12191],"mapped",[36763]],[[12192,12192],"mapped",[36784]],[[12193,12193],"mapped",[36789]],[[12194,12194],"mapped",[37009]],[[12195,12195],"mapped",[37193]],[[12196,12196],"mapped",[37318]],[[12197,12197],"mapped",[37324]],[[12198,12198],"mapped",[37329]],[[12199,12199],"mapped",[38263]],[[12200,12200],"mapped",[38272]],[[12201,12201],"mapped",[38428]],[[12202,12202],"mapped",[38582]],[[12203,12203],"mapped",[38585]],[[12204,12204],"mapped",[38632]],[[12205,12205],"mapped",[38737]],[[12206,12206],"mapped",[38750]],[[12207,12207],"mapped",[38754]],[[12208,12208],"mapped",[38761]],[[12209,12209],"mapped",[38859]],[[12210,12210],"mapped",[38893]],[[12211,12211],"mapped",[38899]],[[12212,12212],"mapped",[38913]],[[12213,12213],"mapped",[39080]],[[12214,12214],"mapped",[39131]],[[12215,12215],"mapped",[39135]],[[12216,12216],"mapped",[39318]],[[12217,12217],"mapped",[39321]],[[12218,12218],"mapped",[39340]],[[12219,12219],"mapped",[39592]],[[12220,12220],"mapped",[39640]],[[12221,12221],"mapped",[39647]],[[12222,12222],"mapped",[39717]],[[12223,12223],"mapped",[39727]],[[12224,12224],"mapped",[39730]],[[12225,12225],"mapped",[39740]],[[12226,12226],"mapped",[39770]],[[12227,12227],"mapped",[40165]],[[12228,12228],"mapped",[40565]],[[12229,12229],"mapped",[40575]],[[12230,12230],"mapped",[40613]],[[12231,12231],"mapped",[40635]],[[12232,12232],"mapped",[40643]],[[12233,12233],"mapped",[40653]],[[12234,12234],"mapped",[40657]],[[12235,12235],"mapped",[40697]],[[12236,12236],"mapped",[40701]],[[12237,12237],"mapped",[40718]],[[12238,12238],"mapped",[40723]],[[12239,12239],"mapped",[40736]],[[12240,12240],"mapped",[40763]],[[12241,12241],"mapped",[40778]],[[12242,12242],"mapped",[40786]],[[12243,12243],"mapped",[40845]],[[12244,12244],"mapped",[40860]],[[12245,12245],"mapped",[40864]],[[12246,12271],"disallowed"],[[12272,12283],"disallowed"],[[12284,12287],"disallowed"],[[12288,12288],"disallowed_STD3_mapped",[32]],[[12289,12289],"valid",[],"NV8"],[[12290,12290],"mapped",[46]],[[12291,12292],"valid",[],"NV8"],[[12293,12295],"valid"],[[12296,12329],"valid",[],"NV8"],[[12330,12333],"valid"],[[12334,12341],"valid",[],"NV8"],[[12342,12342],"mapped",[12306]],[[12343,12343],"valid",[],"NV8"],[[12344,12344],"mapped",[21313]],[[12345,12345],"mapped",[21316]],[[12346,12346],"mapped",[21317]],[[12347,12347],"valid",[],"NV8"],[[12348,12348],"valid"],[[12349,12349],"valid",[],"NV8"],[[12350,12350],"valid",[],"NV8"],[[12351,12351],"valid",[],"NV8"],[[12352,12352],"disallowed"],[[12353,12436],"valid"],[[12437,12438],"valid"],[[12439,12440],"disallowed"],[[12441,12442],"valid"],[[12443,12443],"disallowed_STD3_mapped",[32,12441]],[[12444,12444],"disallowed_STD3_mapped",[32,12442]],[[12445,12446],"valid"],[[12447,12447],"mapped",[12424,12426]],[[12448,12448],"valid",[],"NV8"],[[12449,12542],"valid"],[[12543,12543],"mapped",[12467,12488]],[[12544,12548],"disallowed"],[[12549,12588],"valid"],[[12589,12589],"valid"],[[12590,12592],"disallowed"],[[12593,12593],"mapped",[4352]],[[12594,12594],"mapped",[4353]],[[12595,12595],"mapped",[4522]],[[12596,12596],"mapped",[4354]],[[12597,12597],"mapped",[4524]],[[12598,12598],"mapped",[4525]],[[12599,12599],"mapped",[4355]],[[12600,12600],"mapped",[4356]],[[12601,12601],"mapped",[4357]],[[12602,12602],"mapped",[4528]],[[12603,12603],"mapped",[4529]],[[12604,12604],"mapped",[4530]],[[12605,12605],"mapped",[4531]],[[12606,12606],"mapped",[4532]],[[12607,12607],"mapped",[4533]],[[12608,12608],"mapped",[4378]],[[12609,12609],"mapped",[4358]],[[12610,12610],"mapped",[4359]],[[12611,12611],"mapped",[4360]],[[12612,12612],"mapped",[4385]],[[12613,12613],"mapped",[4361]],[[12614,12614],"mapped",[4362]],[[12615,12615],"mapped",[4363]],[[12616,12616],"mapped",[4364]],[[12617,12617],"mapped",[4365]],[[12618,12618],"mapped",[4366]],[[12619,12619],"mapped",[4367]],[[12620,12620],"mapped",[4368]],[[12621,12621],"mapped",[4369]],[[12622,12622],"mapped",[4370]],[[12623,12623],"mapped",[4449]],[[12624,12624],"mapped",[4450]],[[12625,12625],"mapped",[4451]],[[12626,12626],"mapped",[4452]],[[12627,12627],"mapped",[4453]],[[12628,12628],"mapped",[4454]],[[12629,12629],"mapped",[4455]],[[12630,12630],"mapped",[4456]],[[12631,12631],"mapped",[4457]],[[12632,12632],"mapped",[4458]],[[12633,12633],"mapped",[4459]],[[12634,12634],"mapped",[4460]],[[12635,12635],"mapped",[4461]],[[12636,12636],"mapped",[4462]],[[12637,12637],"mapped",[4463]],[[12638,12638],"mapped",[4464]],[[12639,12639],"mapped",[4465]],[[12640,12640],"mapped",[4466]],[[12641,12641],"mapped",[4467]],[[12642,12642],"mapped",[4468]],[[12643,12643],"mapped",[4469]],[[12644,12644],"disallowed"],[[12645,12645],"mapped",[4372]],[[12646,12646],"mapped",[4373]],[[12647,12647],"mapped",[4551]],[[12648,12648],"mapped",[4552]],[[12649,12649],"mapped",[4556]],[[12650,12650],"mapped",[4558]],[[12651,12651],"mapped",[4563]],[[12652,12652],"mapped",[4567]],[[12653,12653],"mapped",[4569]],[[12654,12654],"mapped",[4380]],[[12655,12655],"mapped",[4573]],[[12656,12656],"mapped",[4575]],[[12657,12657],"mapped",[4381]],[[12658,12658],"mapped",[4382]],[[12659,12659],"mapped",[4384]],[[12660,12660],"mapped",[4386]],[[12661,12661],"mapped",[4387]],[[12662,12662],"mapped",[4391]],[[12663,12663],"mapped",[4393]],[[12664,12664],"mapped",[4395]],[[12665,12665],"mapped",[4396]],[[12666,12666],"mapped",[4397]],[[12667,12667],"mapped",[4398]],[[12668,12668],"mapped",[4399]],[[12669,12669],"mapped",[4402]],[[12670,12670],"mapped",[4406]],[[12671,12671],"mapped",[4416]],[[12672,12672],"mapped",[4423]],[[12673,12673],"mapped",[4428]],[[12674,12674],"mapped",[4593]],[[12675,12675],"mapped",[4594]],[[12676,12676],"mapped",[4439]],[[12677,12677],"mapped",[4440]],[[12678,12678],"mapped",[4441]],[[12679,12679],"mapped",[4484]],[[12680,12680],"mapped",[4485]],[[12681,12681],"mapped",[4488]],[[12682,12682],"mapped",[4497]],[[12683,12683],"mapped",[4498]],[[12684,12684],"mapped",[4500]],[[12685,12685],"mapped",[4510]],[[12686,12686],"mapped",[4513]],[[12687,12687],"disallowed"],[[12688,12689],"valid",[],"NV8"],[[12690,12690],"mapped",[19968]],[[12691,12691],"mapped",[20108]],[[12692,12692],"mapped",[19977]],[[12693,12693],"mapped",[22235]],[[12694,12694],"mapped",[19978]],[[12695,12695],"mapped",[20013]],[[12696,12696],"mapped",[19979]],[[12697,12697],"mapped",[30002]],[[12698,12698],"mapped",[20057]],[[12699,12699],"mapped",[19993]],[[12700,12700],"mapped",[19969]],[[12701,12701],"mapped",[22825]],[[12702,12702],"mapped",[22320]],[[12703,12703],"mapped",[20154]],[[12704,12727],"valid"],[[12728,12730],"valid"],[[12731,12735],"disallowed"],[[12736,12751],"valid",[],"NV8"],[[12752,12771],"valid",[],"NV8"],[[12772,12783],"disallowed"],[[12784,12799],"valid"],[[12800,12800],"disallowed_STD3_mapped",[40,4352,41]],[[12801,12801],"disallowed_STD3_mapped",[40,4354,41]],[[12802,12802],"disallowed_STD3_mapped",[40,4355,41]],[[12803,12803],"disallowed_STD3_mapped",[40,4357,41]],[[12804,12804],"disallowed_STD3_mapped",[40,4358,41]],[[12805,12805],"disallowed_STD3_mapped",[40,4359,41]],[[12806,12806],"disallowed_STD3_mapped",[40,4361,41]],[[12807,12807],"disallowed_STD3_mapped",[40,4363,41]],[[12808,12808],"disallowed_STD3_mapped",[40,4364,41]],[[12809,12809],"disallowed_STD3_mapped",[40,4366,41]],[[12810,12810],"disallowed_STD3_mapped",[40,4367,41]],[[12811,12811],"disallowed_STD3_mapped",[40,4368,41]],[[12812,12812],"disallowed_STD3_mapped",[40,4369,41]],[[12813,12813],"disallowed_STD3_mapped",[40,4370,41]],[[12814,12814],"disallowed_STD3_mapped",[40,44032,41]],[[12815,12815],"disallowed_STD3_mapped",[40,45208,41]],[[12816,12816],"disallowed_STD3_mapped",[40,45796,41]],[[12817,12817],"disallowed_STD3_mapped",[40,46972,41]],[[12818,12818],"disallowed_STD3_mapped",[40,47560,41]],[[12819,12819],"disallowed_STD3_mapped",[40,48148,41]],[[12820,12820],"disallowed_STD3_mapped",[40,49324,41]],[[12821,12821],"disallowed_STD3_mapped",[40,50500,41]],[[12822,12822],"disallowed_STD3_mapped",[40,51088,41]],[[12823,12823],"disallowed_STD3_mapped",[40,52264,41]],[[12824,12824],"disallowed_STD3_mapped",[40,52852,41]],[[12825,12825],"disallowed_STD3_mapped",[40,53440,41]],[[12826,12826],"disallowed_STD3_mapped",[40,54028,41]],[[12827,12827],"disallowed_STD3_mapped",[40,54616,41]],[[12828,12828],"disallowed_STD3_mapped",[40,51452,41]],[[12829,12829],"disallowed_STD3_mapped",[40,50724,51204,41]],[[12830,12830],"disallowed_STD3_mapped",[40,50724,54980,41]],[[12831,12831],"disallowed"],[[12832,12832],"disallowed_STD3_mapped",[40,19968,41]],[[12833,12833],"disallowed_STD3_mapped",[40,20108,41]],[[12834,12834],"disallowed_STD3_mapped",[40,19977,41]],[[12835,12835],"disallowed_STD3_mapped",[40,22235,41]],[[12836,12836],"disallowed_STD3_mapped",[40,20116,41]],[[12837,12837],"disallowed_STD3_mapped",[40,20845,41]],[[12838,12838],"disallowed_STD3_mapped",[40,19971,41]],[[12839,12839],"disallowed_STD3_mapped",[40,20843,41]],[[12840,12840],"disallowed_STD3_mapped",[40,20061,41]],[[12841,12841],"disallowed_STD3_mapped",[40,21313,41]],[[12842,12842],"disallowed_STD3_mapped",[40,26376,41]],[[12843,12843],"disallowed_STD3_mapped",[40,28779,41]],[[12844,12844],"disallowed_STD3_mapped",[40,27700,41]],[[12845,12845],"disallowed_STD3_mapped",[40,26408,41]],[[12846,12846],"disallowed_STD3_mapped",[40,37329,41]],[[12847,12847],"disallowed_STD3_mapped",[40,22303,41]],[[12848,12848],"disallowed_STD3_mapped",[40,26085,41]],[[12849,12849],"disallowed_STD3_mapped",[40,26666,41]],[[12850,12850],"disallowed_STD3_mapped",[40,26377,41]],[[12851,12851],"disallowed_STD3_mapped",[40,31038,41]],[[12852,12852],"disallowed_STD3_mapped",[40,21517,41]],[[12853,12853],"disallowed_STD3_mapped",[40,29305,41]],[[12854,12854],"disallowed_STD3_mapped",[40,36001,41]],[[12855,12855],"disallowed_STD3_mapped",[40,31069,41]],[[12856,12856],"disallowed_STD3_mapped",[40,21172,41]],[[12857,12857],"disallowed_STD3_mapped",[40,20195,41]],[[12858,12858],"disallowed_STD3_mapped",[40,21628,41]],[[12859,12859],"disallowed_STD3_mapped",[40,23398,41]],[[12860,12860],"disallowed_STD3_mapped",[40,30435,41]],[[12861,12861],"disallowed_STD3_mapped",[40,20225,41]],[[12862,12862],"disallowed_STD3_mapped",[40,36039,41]],[[12863,12863],"disallowed_STD3_mapped",[40,21332,41]],[[12864,12864],"disallowed_STD3_mapped",[40,31085,41]],[[12865,12865],"disallowed_STD3_mapped",[40,20241,41]],[[12866,12866],"disallowed_STD3_mapped",[40,33258,41]],[[12867,12867],"disallowed_STD3_mapped",[40,33267,41]],[[12868,12868],"mapped",[21839]],[[12869,12869],"mapped",[24188]],[[12870,12870],"mapped",[25991]],[[12871,12871],"mapped",[31631]],[[12872,12879],"valid",[],"NV8"],[[12880,12880],"mapped",[112,116,101]],[[12881,12881],"mapped",[50,49]],[[12882,12882],"mapped",[50,50]],[[12883,12883],"mapped",[50,51]],[[12884,12884],"mapped",[50,52]],[[12885,12885],"mapped",[50,53]],[[12886,12886],"mapped",[50,54]],[[12887,12887],"mapped",[50,55]],[[12888,12888],"mapped",[50,56]],[[12889,12889],"mapped",[50,57]],[[12890,12890],"mapped",[51,48]],[[12891,12891],"mapped",[51,49]],[[12892,12892],"mapped",[51,50]],[[12893,12893],"mapped",[51,51]],[[12894,12894],"mapped",[51,52]],[[12895,12895],"mapped",[51,53]],[[12896,12896],"mapped",[4352]],[[12897,12897],"mapped",[4354]],[[12898,12898],"mapped",[4355]],[[12899,12899],"mapped",[4357]],[[12900,12900],"mapped",[4358]],[[12901,12901],"mapped",[4359]],[[12902,12902],"mapped",[4361]],[[12903,12903],"mapped",[4363]],[[12904,12904],"mapped",[4364]],[[12905,12905],"mapped",[4366]],[[12906,12906],"mapped",[4367]],[[12907,12907],"mapped",[4368]],[[12908,12908],"mapped",[4369]],[[12909,12909],"mapped",[4370]],[[12910,12910],"mapped",[44032]],[[12911,12911],"mapped",[45208]],[[12912,12912],"mapped",[45796]],[[12913,12913],"mapped",[46972]],[[12914,12914],"mapped",[47560]],[[12915,12915],"mapped",[48148]],[[12916,12916],"mapped",[49324]],[[12917,12917],"mapped",[50500]],[[12918,12918],"mapped",[51088]],[[12919,12919],"mapped",[52264]],[[12920,12920],"mapped",[52852]],[[12921,12921],"mapped",[53440]],[[12922,12922],"mapped",[54028]],[[12923,12923],"mapped",[54616]],[[12924,12924],"mapped",[52280,44256]],[[12925,12925],"mapped",[51452,51032]],[[12926,12926],"mapped",[50864]],[[12927,12927],"valid",[],"NV8"],[[12928,12928],"mapped",[19968]],[[12929,12929],"mapped",[20108]],[[12930,12930],"mapped",[19977]],[[12931,12931],"mapped",[22235]],[[12932,12932],"mapped",[20116]],[[12933,12933],"mapped",[20845]],[[12934,12934],"mapped",[19971]],[[12935,12935],"mapped",[20843]],[[12936,12936],"mapped",[20061]],[[12937,12937],"mapped",[21313]],[[12938,12938],"mapped",[26376]],[[12939,12939],"mapped",[28779]],[[12940,12940],"mapped",[27700]],[[12941,12941],"mapped",[26408]],[[12942,12942],"mapped",[37329]],[[12943,12943],"mapped",[22303]],[[12944,12944],"mapped",[26085]],[[12945,12945],"mapped",[26666]],[[12946,12946],"mapped",[26377]],[[12947,12947],"mapped",[31038]],[[12948,12948],"mapped",[21517]],[[12949,12949],"mapped",[29305]],[[12950,12950],"mapped",[36001]],[[12951,12951],"mapped",[31069]],[[12952,12952],"mapped",[21172]],[[12953,12953],"mapped",[31192]],[[12954,12954],"mapped",[30007]],[[12955,12955],"mapped",[22899]],[[12956,12956],"mapped",[36969]],[[12957,12957],"mapped",[20778]],[[12958,12958],"mapped",[21360]],[[12959,12959],"mapped",[27880]],[[12960,12960],"mapped",[38917]],[[12961,12961],"mapped",[20241]],[[12962,12962],"mapped",[20889]],[[12963,12963],"mapped",[27491]],[[12964,12964],"mapped",[19978]],[[12965,12965],"mapped",[20013]],[[12966,12966],"mapped",[19979]],[[12967,12967],"mapped",[24038]],[[12968,12968],"mapped",[21491]],[[12969,12969],"mapped",[21307]],[[12970,12970],"mapped",[23447]],[[12971,12971],"mapped",[23398]],[[12972,12972],"mapped",[30435]],[[12973,12973],"mapped",[20225]],[[12974,12974],"mapped",[36039]],[[12975,12975],"mapped",[21332]],[[12976,12976],"mapped",[22812]],[[12977,12977],"mapped",[51,54]],[[12978,12978],"mapped",[51,55]],[[12979,12979],"mapped",[51,56]],[[12980,12980],"mapped",[51,57]],[[12981,12981],"mapped",[52,48]],[[12982,12982],"mapped",[52,49]],[[12983,12983],"mapped",[52,50]],[[12984,12984],"mapped",[52,51]],[[12985,12985],"mapped",[52,52]],[[12986,12986],"mapped",[52,53]],[[12987,12987],"mapped",[52,54]],[[12988,12988],"mapped",[52,55]],[[12989,12989],"mapped",[52,56]],[[12990,12990],"mapped",[52,57]],[[12991,12991],"mapped",[53,48]],[[12992,12992],"mapped",[49,26376]],[[12993,12993],"mapped",[50,26376]],[[12994,12994],"mapped",[51,26376]],[[12995,12995],"mapped",[52,26376]],[[12996,12996],"mapped",[53,26376]],[[12997,12997],"mapped",[54,26376]],[[12998,12998],"mapped",[55,26376]],[[12999,12999],"mapped",[56,26376]],[[13e3,13e3],"mapped",[57,26376]],[[13001,13001],"mapped",[49,48,26376]],[[13002,13002],"mapped",[49,49,26376]],[[13003,13003],"mapped",[49,50,26376]],[[13004,13004],"mapped",[104,103]],[[13005,13005],"mapped",[101,114,103]],[[13006,13006],"mapped",[101,118]],[[13007,13007],"mapped",[108,116,100]],[[13008,13008],"mapped",[12450]],[[13009,13009],"mapped",[12452]],[[13010,13010],"mapped",[12454]],[[13011,13011],"mapped",[12456]],[[13012,13012],"mapped",[12458]],[[13013,13013],"mapped",[12459]],[[13014,13014],"mapped",[12461]],[[13015,13015],"mapped",[12463]],[[13016,13016],"mapped",[12465]],[[13017,13017],"mapped",[12467]],[[13018,13018],"mapped",[12469]],[[13019,13019],"mapped",[12471]],[[13020,13020],"mapped",[12473]],[[13021,13021],"mapped",[12475]],[[13022,13022],"mapped",[12477]],[[13023,13023],"mapped",[12479]],[[13024,13024],"mapped",[12481]],[[13025,13025],"mapped",[12484]],[[13026,13026],"mapped",[12486]],[[13027,13027],"mapped",[12488]],[[13028,13028],"mapped",[12490]],[[13029,13029],"mapped",[12491]],[[13030,13030],"mapped",[12492]],[[13031,13031],"mapped",[12493]],[[13032,13032],"mapped",[12494]],[[13033,13033],"mapped",[12495]],[[13034,13034],"mapped",[12498]],[[13035,13035],"mapped",[12501]],[[13036,13036],"mapped",[12504]],[[13037,13037],"mapped",[12507]],[[13038,13038],"mapped",[12510]],[[13039,13039],"mapped",[12511]],[[13040,13040],"mapped",[12512]],[[13041,13041],"mapped",[12513]],[[13042,13042],"mapped",[12514]],[[13043,13043],"mapped",[12516]],[[13044,13044],"mapped",[12518]],[[13045,13045],"mapped",[12520]],[[13046,13046],"mapped",[12521]],[[13047,13047],"mapped",[12522]],[[13048,13048],"mapped",[12523]],[[13049,13049],"mapped",[12524]],[[13050,13050],"mapped",[12525]],[[13051,13051],"mapped",[12527]],[[13052,13052],"mapped",[12528]],[[13053,13053],"mapped",[12529]],[[13054,13054],"mapped",[12530]],[[13055,13055],"disallowed"],[[13056,13056],"mapped",[12450,12497,12540,12488]],[[13057,13057],"mapped",[12450,12523,12501,12449]],[[13058,13058],"mapped",[12450,12531,12506,12450]],[[13059,13059],"mapped",[12450,12540,12523]],[[13060,13060],"mapped",[12452,12491,12531,12464]],[[13061,13061],"mapped",[12452,12531,12481]],[[13062,13062],"mapped",[12454,12457,12531]],[[13063,13063],"mapped",[12456,12473,12463,12540,12489]],[[13064,13064],"mapped",[12456,12540,12459,12540]],[[13065,13065],"mapped",[12458,12531,12473]],[[13066,13066],"mapped",[12458,12540,12512]],[[13067,13067],"mapped",[12459,12452,12522]],[[13068,13068],"mapped",[12459,12521,12483,12488]],[[13069,13069],"mapped",[12459,12525,12522,12540]],[[13070,13070],"mapped",[12460,12525,12531]],[[13071,13071],"mapped",[12460,12531,12510]],[[13072,13072],"mapped",[12462,12460]],[[13073,13073],"mapped",[12462,12491,12540]],[[13074,13074],"mapped",[12461,12517,12522,12540]],[[13075,13075],"mapped",[12462,12523,12480,12540]],[[13076,13076],"mapped",[12461,12525]],[[13077,13077],"mapped",[12461,12525,12464,12521,12512]],[[13078,13078],"mapped",[12461,12525,12513,12540,12488,12523]],[[13079,13079],"mapped",[12461,12525,12527,12483,12488]],[[13080,13080],"mapped",[12464,12521,12512]],[[13081,13081],"mapped",[12464,12521,12512,12488,12531]],[[13082,13082],"mapped",[12463,12523,12476,12452,12525]],[[13083,13083],"mapped",[12463,12525,12540,12493]],[[13084,13084],"mapped",[12465,12540,12473]],[[13085,13085],"mapped",[12467,12523,12490]],[[13086,13086],"mapped",[12467,12540,12509]],[[13087,13087],"mapped",[12469,12452,12463,12523]],[[13088,13088],"mapped",[12469,12531,12481,12540,12512]],[[13089,13089],"mapped",[12471,12522,12531,12464]],[[13090,13090],"mapped",[12475,12531,12481]],[[13091,13091],"mapped",[12475,12531,12488]],[[13092,13092],"mapped",[12480,12540,12473]],[[13093,13093],"mapped",[12487,12471]],[[13094,13094],"mapped",[12489,12523]],[[13095,13095],"mapped",[12488,12531]],[[13096,13096],"mapped",[12490,12494]],[[13097,13097],"mapped",[12494,12483,12488]],[[13098,13098],"mapped",[12495,12452,12484]],[[13099,13099],"mapped",[12497,12540,12475,12531,12488]],[[13100,13100],"mapped",[12497,12540,12484]],[[13101,13101],"mapped",[12496,12540,12524,12523]],[[13102,13102],"mapped",[12500,12450,12473,12488,12523]],[[13103,13103],"mapped",[12500,12463,12523]],[[13104,13104],"mapped",[12500,12467]],[[13105,13105],"mapped",[12499,12523]],[[13106,13106],"mapped",[12501,12449,12521,12483,12489]],[[13107,13107],"mapped",[12501,12451,12540,12488]],[[13108,13108],"mapped",[12502,12483,12471,12455,12523]],[[13109,13109],"mapped",[12501,12521,12531]],[[13110,13110],"mapped",[12504,12463,12479,12540,12523]],[[13111,13111],"mapped",[12506,12477]],[[13112,13112],"mapped",[12506,12491,12498]],[[13113,13113],"mapped",[12504,12523,12484]],[[13114,13114],"mapped",[12506,12531,12473]],[[13115,13115],"mapped",[12506,12540,12472]],[[13116,13116],"mapped",[12505,12540,12479]],[[13117,13117],"mapped",[12509,12452,12531,12488]],[[13118,13118],"mapped",[12508,12523,12488]],[[13119,13119],"mapped",[12507,12531]],[[13120,13120],"mapped",[12509,12531,12489]],[[13121,13121],"mapped",[12507,12540,12523]],[[13122,13122],"mapped",[12507,12540,12531]],[[13123,13123],"mapped",[12510,12452,12463,12525]],[[13124,13124],"mapped",[12510,12452,12523]],[[13125,13125],"mapped",[12510,12483,12495]],[[13126,13126],"mapped",[12510,12523,12463]],[[13127,13127],"mapped",[12510,12531,12471,12519,12531]],[[13128,13128],"mapped",[12511,12463,12525,12531]],[[13129,13129],"mapped",[12511,12522]],[[13130,13130],"mapped",[12511,12522,12496,12540,12523]],[[13131,13131],"mapped",[12513,12460]],[[13132,13132],"mapped",[12513,12460,12488,12531]],[[13133,13133],"mapped",[12513,12540,12488,12523]],[[13134,13134],"mapped",[12516,12540,12489]],[[13135,13135],"mapped",[12516,12540,12523]],[[13136,13136],"mapped",[12518,12450,12531]],[[13137,13137],"mapped",[12522,12483,12488,12523]],[[13138,13138],"mapped",[12522,12521]],[[13139,13139],"mapped",[12523,12500,12540]],[[13140,13140],"mapped",[12523,12540,12502,12523]],[[13141,13141],"mapped",[12524,12512]],[[13142,13142],"mapped",[12524,12531,12488,12466,12531]],[[13143,13143],"mapped",[12527,12483,12488]],[[13144,13144],"mapped",[48,28857]],[[13145,13145],"mapped",[49,28857]],[[13146,13146],"mapped",[50,28857]],[[13147,13147],"mapped",[51,28857]],[[13148,13148],"mapped",[52,28857]],[[13149,13149],"mapped",[53,28857]],[[13150,13150],"mapped",[54,28857]],[[13151,13151],"mapped",[55,28857]],[[13152,13152],"mapped",[56,28857]],[[13153,13153],"mapped",[57,28857]],[[13154,13154],"mapped",[49,48,28857]],[[13155,13155],"mapped",[49,49,28857]],[[13156,13156],"mapped",[49,50,28857]],[[13157,13157],"mapped",[49,51,28857]],[[13158,13158],"mapped",[49,52,28857]],[[13159,13159],"mapped",[49,53,28857]],[[13160,13160],"mapped",[49,54,28857]],[[13161,13161],"mapped",[49,55,28857]],[[13162,13162],"mapped",[49,56,28857]],[[13163,13163],"mapped",[49,57,28857]],[[13164,13164],"mapped",[50,48,28857]],[[13165,13165],"mapped",[50,49,28857]],[[13166,13166],"mapped",[50,50,28857]],[[13167,13167],"mapped",[50,51,28857]],[[13168,13168],"mapped",[50,52,28857]],[[13169,13169],"mapped",[104,112,97]],[[13170,13170],"mapped",[100,97]],[[13171,13171],"mapped",[97,117]],[[13172,13172],"mapped",[98,97,114]],[[13173,13173],"mapped",[111,118]],[[13174,13174],"mapped",[112,99]],[[13175,13175],"mapped",[100,109]],[[13176,13176],"mapped",[100,109,50]],[[13177,13177],"mapped",[100,109,51]],[[13178,13178],"mapped",[105,117]],[[13179,13179],"mapped",[24179,25104]],[[13180,13180],"mapped",[26157,21644]],[[13181,13181],"mapped",[22823,27491]],[[13182,13182],"mapped",[26126,27835]],[[13183,13183],"mapped",[26666,24335,20250,31038]],[[13184,13184],"mapped",[112,97]],[[13185,13185],"mapped",[110,97]],[[13186,13186],"mapped",[956,97]],[[13187,13187],"mapped",[109,97]],[[13188,13188],"mapped",[107,97]],[[13189,13189],"mapped",[107,98]],[[13190,13190],"mapped",[109,98]],[[13191,13191],"mapped",[103,98]],[[13192,13192],"mapped",[99,97,108]],[[13193,13193],"mapped",[107,99,97,108]],[[13194,13194],"mapped",[112,102]],[[13195,13195],"mapped",[110,102]],[[13196,13196],"mapped",[956,102]],[[13197,13197],"mapped",[956,103]],[[13198,13198],"mapped",[109,103]],[[13199,13199],"mapped",[107,103]],[[13200,13200],"mapped",[104,122]],[[13201,13201],"mapped",[107,104,122]],[[13202,13202],"mapped",[109,104,122]],[[13203,13203],"mapped",[103,104,122]],[[13204,13204],"mapped",[116,104,122]],[[13205,13205],"mapped",[956,108]],[[13206,13206],"mapped",[109,108]],[[13207,13207],"mapped",[100,108]],[[13208,13208],"mapped",[107,108]],[[13209,13209],"mapped",[102,109]],[[13210,13210],"mapped",[110,109]],[[13211,13211],"mapped",[956,109]],[[13212,13212],"mapped",[109,109]],[[13213,13213],"mapped",[99,109]],[[13214,13214],"mapped",[107,109]],[[13215,13215],"mapped",[109,109,50]],[[13216,13216],"mapped",[99,109,50]],[[13217,13217],"mapped",[109,50]],[[13218,13218],"mapped",[107,109,50]],[[13219,13219],"mapped",[109,109,51]],[[13220,13220],"mapped",[99,109,51]],[[13221,13221],"mapped",[109,51]],[[13222,13222],"mapped",[107,109,51]],[[13223,13223],"mapped",[109,8725,115]],[[13224,13224],"mapped",[109,8725,115,50]],[[13225,13225],"mapped",[112,97]],[[13226,13226],"mapped",[107,112,97]],[[13227,13227],"mapped",[109,112,97]],[[13228,13228],"mapped",[103,112,97]],[[13229,13229],"mapped",[114,97,100]],[[13230,13230],"mapped",[114,97,100,8725,115]],[[13231,13231],"mapped",[114,97,100,8725,115,50]],[[13232,13232],"mapped",[112,115]],[[13233,13233],"mapped",[110,115]],[[13234,13234],"mapped",[956,115]],[[13235,13235],"mapped",[109,115]],[[13236,13236],"mapped",[112,118]],[[13237,13237],"mapped",[110,118]],[[13238,13238],"mapped",[956,118]],[[13239,13239],"mapped",[109,118]],[[13240,13240],"mapped",[107,118]],[[13241,13241],"mapped",[109,118]],[[13242,13242],"mapped",[112,119]],[[13243,13243],"mapped",[110,119]],[[13244,13244],"mapped",[956,119]],[[13245,13245],"mapped",[109,119]],[[13246,13246],"mapped",[107,119]],[[13247,13247],"mapped",[109,119]],[[13248,13248],"mapped",[107,969]],[[13249,13249],"mapped",[109,969]],[[13250,13250],"disallowed"],[[13251,13251],"mapped",[98,113]],[[13252,13252],"mapped",[99,99]],[[13253,13253],"mapped",[99,100]],[[13254,13254],"mapped",[99,8725,107,103]],[[13255,13255],"disallowed"],[[13256,13256],"mapped",[100,98]],[[13257,13257],"mapped",[103,121]],[[13258,13258],"mapped",[104,97]],[[13259,13259],"mapped",[104,112]],[[13260,13260],"mapped",[105,110]],[[13261,13261],"mapped",[107,107]],[[13262,13262],"mapped",[107,109]],[[13263,13263],"mapped",[107,116]],[[13264,13264],"mapped",[108,109]],[[13265,13265],"mapped",[108,110]],[[13266,13266],"mapped",[108,111,103]],[[13267,13267],"mapped",[108,120]],[[13268,13268],"mapped",[109,98]],[[13269,13269],"mapped",[109,105,108]],[[13270,13270],"mapped",[109,111,108]],[[13271,13271],"mapped",[112,104]],[[13272,13272],"disallowed"],[[13273,13273],"mapped",[112,112,109]],[[13274,13274],"mapped",[112,114]],[[13275,13275],"mapped",[115,114]],[[13276,13276],"mapped",[115,118]],[[13277,13277],"mapped",[119,98]],[[13278,13278],"mapped",[118,8725,109]],[[13279,13279],"mapped",[97,8725,109]],[[13280,13280],"mapped",[49,26085]],[[13281,13281],"mapped",[50,26085]],[[13282,13282],"mapped",[51,26085]],[[13283,13283],"mapped",[52,26085]],[[13284,13284],"mapped",[53,26085]],[[13285,13285],"mapped",[54,26085]],[[13286,13286],"mapped",[55,26085]],[[13287,13287],"mapped",[56,26085]],[[13288,13288],"mapped",[57,26085]],[[13289,13289],"mapped",[49,48,26085]],[[13290,13290],"mapped",[49,49,26085]],[[13291,13291],"mapped",[49,50,26085]],[[13292,13292],"mapped",[49,51,26085]],[[13293,13293],"mapped",[49,52,26085]],[[13294,13294],"mapped",[49,53,26085]],[[13295,13295],"mapped",[49,54,26085]],[[13296,13296],"mapped",[49,55,26085]],[[13297,13297],"mapped",[49,56,26085]],[[13298,13298],"mapped",[49,57,26085]],[[13299,13299],"mapped",[50,48,26085]],[[13300,13300],"mapped",[50,49,26085]],[[13301,13301],"mapped",[50,50,26085]],[[13302,13302],"mapped",[50,51,26085]],[[13303,13303],"mapped",[50,52,26085]],[[13304,13304],"mapped",[50,53,26085]],[[13305,13305],"mapped",[50,54,26085]],[[13306,13306],"mapped",[50,55,26085]],[[13307,13307],"mapped",[50,56,26085]],[[13308,13308],"mapped",[50,57,26085]],[[13309,13309],"mapped",[51,48,26085]],[[13310,13310],"mapped",[51,49,26085]],[[13311,13311],"mapped",[103,97,108]],[[13312,19893],"valid"],[[19894,19903],"disallowed"],[[19904,19967],"valid",[],"NV8"],[[19968,40869],"valid"],[[40870,40891],"valid"],[[40892,40899],"valid"],[[40900,40907],"valid"],[[40908,40908],"valid"],[[40909,40917],"valid"],[[40918,40959],"disallowed"],[[40960,42124],"valid"],[[42125,42127],"disallowed"],[[42128,42145],"valid",[],"NV8"],[[42146,42147],"valid",[],"NV8"],[[42148,42163],"valid",[],"NV8"],[[42164,42164],"valid",[],"NV8"],[[42165,42176],"valid",[],"NV8"],[[42177,42177],"valid",[],"NV8"],[[42178,42180],"valid",[],"NV8"],[[42181,42181],"valid",[],"NV8"],[[42182,42182],"valid",[],"NV8"],[[42183,42191],"disallowed"],[[42192,42237],"valid"],[[42238,42239],"valid",[],"NV8"],[[42240,42508],"valid"],[[42509,42511],"valid",[],"NV8"],[[42512,42539],"valid"],[[42540,42559],"disallowed"],[[42560,42560],"mapped",[42561]],[[42561,42561],"valid"],[[42562,42562],"mapped",[42563]],[[42563,42563],"valid"],[[42564,42564],"mapped",[42565]],[[42565,42565],"valid"],[[42566,42566],"mapped",[42567]],[[42567,42567],"valid"],[[42568,42568],"mapped",[42569]],[[42569,42569],"valid"],[[42570,42570],"mapped",[42571]],[[42571,42571],"valid"],[[42572,42572],"mapped",[42573]],[[42573,42573],"valid"],[[42574,42574],"mapped",[42575]],[[42575,42575],"valid"],[[42576,42576],"mapped",[42577]],[[42577,42577],"valid"],[[42578,42578],"mapped",[42579]],[[42579,42579],"valid"],[[42580,42580],"mapped",[42581]],[[42581,42581],"valid"],[[42582,42582],"mapped",[42583]],[[42583,42583],"valid"],[[42584,42584],"mapped",[42585]],[[42585,42585],"valid"],[[42586,42586],"mapped",[42587]],[[42587,42587],"valid"],[[42588,42588],"mapped",[42589]],[[42589,42589],"valid"],[[42590,42590],"mapped",[42591]],[[42591,42591],"valid"],[[42592,42592],"mapped",[42593]],[[42593,42593],"valid"],[[42594,42594],"mapped",[42595]],[[42595,42595],"valid"],[[42596,42596],"mapped",[42597]],[[42597,42597],"valid"],[[42598,42598],"mapped",[42599]],[[42599,42599],"valid"],[[42600,42600],"mapped",[42601]],[[42601,42601],"valid"],[[42602,42602],"mapped",[42603]],[[42603,42603],"valid"],[[42604,42604],"mapped",[42605]],[[42605,42607],"valid"],[[42608,42611],"valid",[],"NV8"],[[42612,42619],"valid"],[[42620,42621],"valid"],[[42622,42622],"valid",[],"NV8"],[[42623,42623],"valid"],[[42624,42624],"mapped",[42625]],[[42625,42625],"valid"],[[42626,42626],"mapped",[42627]],[[42627,42627],"valid"],[[42628,42628],"mapped",[42629]],[[42629,42629],"valid"],[[42630,42630],"mapped",[42631]],[[42631,42631],"valid"],[[42632,42632],"mapped",[42633]],[[42633,42633],"valid"],[[42634,42634],"mapped",[42635]],[[42635,42635],"valid"],[[42636,42636],"mapped",[42637]],[[42637,42637],"valid"],[[42638,42638],"mapped",[42639]],[[42639,42639],"valid"],[[42640,42640],"mapped",[42641]],[[42641,42641],"valid"],[[42642,42642],"mapped",[42643]],[[42643,42643],"valid"],[[42644,42644],"mapped",[42645]],[[42645,42645],"valid"],[[42646,42646],"mapped",[42647]],[[42647,42647],"valid"],[[42648,42648],"mapped",[42649]],[[42649,42649],"valid"],[[42650,42650],"mapped",[42651]],[[42651,42651],"valid"],[[42652,42652],"mapped",[1098]],[[42653,42653],"mapped",[1100]],[[42654,42654],"valid"],[[42655,42655],"valid"],[[42656,42725],"valid"],[[42726,42735],"valid",[],"NV8"],[[42736,42737],"valid"],[[42738,42743],"valid",[],"NV8"],[[42744,42751],"disallowed"],[[42752,42774],"valid",[],"NV8"],[[42775,42778],"valid"],[[42779,42783],"valid"],[[42784,42785],"valid",[],"NV8"],[[42786,42786],"mapped",[42787]],[[42787,42787],"valid"],[[42788,42788],"mapped",[42789]],[[42789,42789],"valid"],[[42790,42790],"mapped",[42791]],[[42791,42791],"valid"],[[42792,42792],"mapped",[42793]],[[42793,42793],"valid"],[[42794,42794],"mapped",[42795]],[[42795,42795],"valid"],[[42796,42796],"mapped",[42797]],[[42797,42797],"valid"],[[42798,42798],"mapped",[42799]],[[42799,42801],"valid"],[[42802,42802],"mapped",[42803]],[[42803,42803],"valid"],[[42804,42804],"mapped",[42805]],[[42805,42805],"valid"],[[42806,42806],"mapped",[42807]],[[42807,42807],"valid"],[[42808,42808],"mapped",[42809]],[[42809,42809],"valid"],[[42810,42810],"mapped",[42811]],[[42811,42811],"valid"],[[42812,42812],"mapped",[42813]],[[42813,42813],"valid"],[[42814,42814],"mapped",[42815]],[[42815,42815],"valid"],[[42816,42816],"mapped",[42817]],[[42817,42817],"valid"],[[42818,42818],"mapped",[42819]],[[42819,42819],"valid"],[[42820,42820],"mapped",[42821]],[[42821,42821],"valid"],[[42822,42822],"mapped",[42823]],[[42823,42823],"valid"],[[42824,42824],"mapped",[42825]],[[42825,42825],"valid"],[[42826,42826],"mapped",[42827]],[[42827,42827],"valid"],[[42828,42828],"mapped",[42829]],[[42829,42829],"valid"],[[42830,42830],"mapped",[42831]],[[42831,42831],"valid"],[[42832,42832],"mapped",[42833]],[[42833,42833],"valid"],[[42834,42834],"mapped",[42835]],[[42835,42835],"valid"],[[42836,42836],"mapped",[42837]],[[42837,42837],"valid"],[[42838,42838],"mapped",[42839]],[[42839,42839],"valid"],[[42840,42840],"mapped",[42841]],[[42841,42841],"valid"],[[42842,42842],"mapped",[42843]],[[42843,42843],"valid"],[[42844,42844],"mapped",[42845]],[[42845,42845],"valid"],[[42846,42846],"mapped",[42847]],[[42847,42847],"valid"],[[42848,42848],"mapped",[42849]],[[42849,42849],"valid"],[[42850,42850],"mapped",[42851]],[[42851,42851],"valid"],[[42852,42852],"mapped",[42853]],[[42853,42853],"valid"],[[42854,42854],"mapped",[42855]],[[42855,42855],"valid"],[[42856,42856],"mapped",[42857]],[[42857,42857],"valid"],[[42858,42858],"mapped",[42859]],[[42859,42859],"valid"],[[42860,42860],"mapped",[42861]],[[42861,42861],"valid"],[[42862,42862],"mapped",[42863]],[[42863,42863],"valid"],[[42864,42864],"mapped",[42863]],[[42865,42872],"valid"],[[42873,42873],"mapped",[42874]],[[42874,42874],"valid"],[[42875,42875],"mapped",[42876]],[[42876,42876],"valid"],[[42877,42877],"mapped",[7545]],[[42878,42878],"mapped",[42879]],[[42879,42879],"valid"],[[42880,42880],"mapped",[42881]],[[42881,42881],"valid"],[[42882,42882],"mapped",[42883]],[[42883,42883],"valid"],[[42884,42884],"mapped",[42885]],[[42885,42885],"valid"],[[42886,42886],"mapped",[42887]],[[42887,42888],"valid"],[[42889,42890],"valid",[],"NV8"],[[42891,42891],"mapped",[42892]],[[42892,42892],"valid"],[[42893,42893],"mapped",[613]],[[42894,42894],"valid"],[[42895,42895],"valid"],[[42896,42896],"mapped",[42897]],[[42897,42897],"valid"],[[42898,42898],"mapped",[42899]],[[42899,42899],"valid"],[[42900,42901],"valid"],[[42902,42902],"mapped",[42903]],[[42903,42903],"valid"],[[42904,42904],"mapped",[42905]],[[42905,42905],"valid"],[[42906,42906],"mapped",[42907]],[[42907,42907],"valid"],[[42908,42908],"mapped",[42909]],[[42909,42909],"valid"],[[42910,42910],"mapped",[42911]],[[42911,42911],"valid"],[[42912,42912],"mapped",[42913]],[[42913,42913],"valid"],[[42914,42914],"mapped",[42915]],[[42915,42915],"valid"],[[42916,42916],"mapped",[42917]],[[42917,42917],"valid"],[[42918,42918],"mapped",[42919]],[[42919,42919],"valid"],[[42920,42920],"mapped",[42921]],[[42921,42921],"valid"],[[42922,42922],"mapped",[614]],[[42923,42923],"mapped",[604]],[[42924,42924],"mapped",[609]],[[42925,42925],"mapped",[620]],[[42926,42927],"disallowed"],[[42928,42928],"mapped",[670]],[[42929,42929],"mapped",[647]],[[42930,42930],"mapped",[669]],[[42931,42931],"mapped",[43859]],[[42932,42932],"mapped",[42933]],[[42933,42933],"valid"],[[42934,42934],"mapped",[42935]],[[42935,42935],"valid"],[[42936,42998],"disallowed"],[[42999,42999],"valid"],[[43e3,43e3],"mapped",[295]],[[43001,43001],"mapped",[339]],[[43002,43002],"valid"],[[43003,43007],"valid"],[[43008,43047],"valid"],[[43048,43051],"valid",[],"NV8"],[[43052,43055],"disallowed"],[[43056,43065],"valid",[],"NV8"],[[43066,43071],"disallowed"],[[43072,43123],"valid"],[[43124,43127],"valid",[],"NV8"],[[43128,43135],"disallowed"],[[43136,43204],"valid"],[[43205,43213],"disallowed"],[[43214,43215],"valid",[],"NV8"],[[43216,43225],"valid"],[[43226,43231],"disallowed"],[[43232,43255],"valid"],[[43256,43258],"valid",[],"NV8"],[[43259,43259],"valid"],[[43260,43260],"valid",[],"NV8"],[[43261,43261],"valid"],[[43262,43263],"disallowed"],[[43264,43309],"valid"],[[43310,43311],"valid",[],"NV8"],[[43312,43347],"valid"],[[43348,43358],"disallowed"],[[43359,43359],"valid",[],"NV8"],[[43360,43388],"valid",[],"NV8"],[[43389,43391],"disallowed"],[[43392,43456],"valid"],[[43457,43469],"valid",[],"NV8"],[[43470,43470],"disallowed"],[[43471,43481],"valid"],[[43482,43485],"disallowed"],[[43486,43487],"valid",[],"NV8"],[[43488,43518],"valid"],[[43519,43519],"disallowed"],[[43520,43574],"valid"],[[43575,43583],"disallowed"],[[43584,43597],"valid"],[[43598,43599],"disallowed"],[[43600,43609],"valid"],[[43610,43611],"disallowed"],[[43612,43615],"valid",[],"NV8"],[[43616,43638],"valid"],[[43639,43641],"valid",[],"NV8"],[[43642,43643],"valid"],[[43644,43647],"valid"],[[43648,43714],"valid"],[[43715,43738],"disallowed"],[[43739,43741],"valid"],[[43742,43743],"valid",[],"NV8"],[[43744,43759],"valid"],[[43760,43761],"valid",[],"NV8"],[[43762,43766],"valid"],[[43767,43776],"disallowed"],[[43777,43782],"valid"],[[43783,43784],"disallowed"],[[43785,43790],"valid"],[[43791,43792],"disallowed"],[[43793,43798],"valid"],[[43799,43807],"disallowed"],[[43808,43814],"valid"],[[43815,43815],"disallowed"],[[43816,43822],"valid"],[[43823,43823],"disallowed"],[[43824,43866],"valid"],[[43867,43867],"valid",[],"NV8"],[[43868,43868],"mapped",[42791]],[[43869,43869],"mapped",[43831]],[[43870,43870],"mapped",[619]],[[43871,43871],"mapped",[43858]],[[43872,43875],"valid"],[[43876,43877],"valid"],[[43878,43887],"disallowed"],[[43888,43888],"mapped",[5024]],[[43889,43889],"mapped",[5025]],[[43890,43890],"mapped",[5026]],[[43891,43891],"mapped",[5027]],[[43892,43892],"mapped",[5028]],[[43893,43893],"mapped",[5029]],[[43894,43894],"mapped",[5030]],[[43895,43895],"mapped",[5031]],[[43896,43896],"mapped",[5032]],[[43897,43897],"mapped",[5033]],[[43898,43898],"mapped",[5034]],[[43899,43899],"mapped",[5035]],[[43900,43900],"mapped",[5036]],[[43901,43901],"mapped",[5037]],[[43902,43902],"mapped",[5038]],[[43903,43903],"mapped",[5039]],[[43904,43904],"mapped",[5040]],[[43905,43905],"mapped",[5041]],[[43906,43906],"mapped",[5042]],[[43907,43907],"mapped",[5043]],[[43908,43908],"mapped",[5044]],[[43909,43909],"mapped",[5045]],[[43910,43910],"mapped",[5046]],[[43911,43911],"mapped",[5047]],[[43912,43912],"mapped",[5048]],[[43913,43913],"mapped",[5049]],[[43914,43914],"mapped",[5050]],[[43915,43915],"mapped",[5051]],[[43916,43916],"mapped",[5052]],[[43917,43917],"mapped",[5053]],[[43918,43918],"mapped",[5054]],[[43919,43919],"mapped",[5055]],[[43920,43920],"mapped",[5056]],[[43921,43921],"mapped",[5057]],[[43922,43922],"mapped",[5058]],[[43923,43923],"mapped",[5059]],[[43924,43924],"mapped",[5060]],[[43925,43925],"mapped",[5061]],[[43926,43926],"mapped",[5062]],[[43927,43927],"mapped",[5063]],[[43928,43928],"mapped",[5064]],[[43929,43929],"mapped",[5065]],[[43930,43930],"mapped",[5066]],[[43931,43931],"mapped",[5067]],[[43932,43932],"mapped",[5068]],[[43933,43933],"mapped",[5069]],[[43934,43934],"mapped",[5070]],[[43935,43935],"mapped",[5071]],[[43936,43936],"mapped",[5072]],[[43937,43937],"mapped",[5073]],[[43938,43938],"mapped",[5074]],[[43939,43939],"mapped",[5075]],[[43940,43940],"mapped",[5076]],[[43941,43941],"mapped",[5077]],[[43942,43942],"mapped",[5078]],[[43943,43943],"mapped",[5079]],[[43944,43944],"mapped",[5080]],[[43945,43945],"mapped",[5081]],[[43946,43946],"mapped",[5082]],[[43947,43947],"mapped",[5083]],[[43948,43948],"mapped",[5084]],[[43949,43949],"mapped",[5085]],[[43950,43950],"mapped",[5086]],[[43951,43951],"mapped",[5087]],[[43952,43952],"mapped",[5088]],[[43953,43953],"mapped",[5089]],[[43954,43954],"mapped",[5090]],[[43955,43955],"mapped",[5091]],[[43956,43956],"mapped",[5092]],[[43957,43957],"mapped",[5093]],[[43958,43958],"mapped",[5094]],[[43959,43959],"mapped",[5095]],[[43960,43960],"mapped",[5096]],[[43961,43961],"mapped",[5097]],[[43962,43962],"mapped",[5098]],[[43963,43963],"mapped",[5099]],[[43964,43964],"mapped",[5100]],[[43965,43965],"mapped",[5101]],[[43966,43966],"mapped",[5102]],[[43967,43967],"mapped",[5103]],[[43968,44010],"valid"],[[44011,44011],"valid",[],"NV8"],[[44012,44013],"valid"],[[44014,44015],"disallowed"],[[44016,44025],"valid"],[[44026,44031],"disallowed"],[[44032,55203],"valid"],[[55204,55215],"disallowed"],[[55216,55238],"valid",[],"NV8"],[[55239,55242],"disallowed"],[[55243,55291],"valid",[],"NV8"],[[55292,55295],"disallowed"],[[55296,57343],"disallowed"],[[57344,63743],"disallowed"],[[63744,63744],"mapped",[35912]],[[63745,63745],"mapped",[26356]],[[63746,63746],"mapped",[36554]],[[63747,63747],"mapped",[36040]],[[63748,63748],"mapped",[28369]],[[63749,63749],"mapped",[20018]],[[63750,63750],"mapped",[21477]],[[63751,63752],"mapped",[40860]],[[63753,63753],"mapped",[22865]],[[63754,63754],"mapped",[37329]],[[63755,63755],"mapped",[21895]],[[63756,63756],"mapped",[22856]],[[63757,63757],"mapped",[25078]],[[63758,63758],"mapped",[30313]],[[63759,63759],"mapped",[32645]],[[63760,63760],"mapped",[34367]],[[63761,63761],"mapped",[34746]],[[63762,63762],"mapped",[35064]],[[63763,63763],"mapped",[37007]],[[63764,63764],"mapped",[27138]],[[63765,63765],"mapped",[27931]],[[63766,63766],"mapped",[28889]],[[63767,63767],"mapped",[29662]],[[63768,63768],"mapped",[33853]],[[63769,63769],"mapped",[37226]],[[63770,63770],"mapped",[39409]],[[63771,63771],"mapped",[20098]],[[63772,63772],"mapped",[21365]],[[63773,63773],"mapped",[27396]],[[63774,63774],"mapped",[29211]],[[63775,63775],"mapped",[34349]],[[63776,63776],"mapped",[40478]],[[63777,63777],"mapped",[23888]],[[63778,63778],"mapped",[28651]],[[63779,63779],"mapped",[34253]],[[63780,63780],"mapped",[35172]],[[63781,63781],"mapped",[25289]],[[63782,63782],"mapped",[33240]],[[63783,63783],"mapped",[34847]],[[63784,63784],"mapped",[24266]],[[63785,63785],"mapped",[26391]],[[63786,63786],"mapped",[28010]],[[63787,63787],"mapped",[29436]],[[63788,63788],"mapped",[37070]],[[63789,63789],"mapped",[20358]],[[63790,63790],"mapped",[20919]],[[63791,63791],"mapped",[21214]],[[63792,63792],"mapped",[25796]],[[63793,63793],"mapped",[27347]],[[63794,63794],"mapped",[29200]],[[63795,63795],"mapped",[30439]],[[63796,63796],"mapped",[32769]],[[63797,63797],"mapped",[34310]],[[63798,63798],"mapped",[34396]],[[63799,63799],"mapped",[36335]],[[63800,63800],"mapped",[38706]],[[63801,63801],"mapped",[39791]],[[63802,63802],"mapped",[40442]],[[63803,63803],"mapped",[30860]],[[63804,63804],"mapped",[31103]],[[63805,63805],"mapped",[32160]],[[63806,63806],"mapped",[33737]],[[63807,63807],"mapped",[37636]],[[63808,63808],"mapped",[40575]],[[63809,63809],"mapped",[35542]],[[63810,63810],"mapped",[22751]],[[63811,63811],"mapped",[24324]],[[63812,63812],"mapped",[31840]],[[63813,63813],"mapped",[32894]],[[63814,63814],"mapped",[29282]],[[63815,63815],"mapped",[30922]],[[63816,63816],"mapped",[36034]],[[63817,63817],"mapped",[38647]],[[63818,63818],"mapped",[22744]],[[63819,63819],"mapped",[23650]],[[63820,63820],"mapped",[27155]],[[63821,63821],"mapped",[28122]],[[63822,63822],"mapped",[28431]],[[63823,63823],"mapped",[32047]],[[63824,63824],"mapped",[32311]],[[63825,63825],"mapped",[38475]],[[63826,63826],"mapped",[21202]],[[63827,63827],"mapped",[32907]],[[63828,63828],"mapped",[20956]],[[63829,63829],"mapped",[20940]],[[63830,63830],"mapped",[31260]],[[63831,63831],"mapped",[32190]],[[63832,63832],"mapped",[33777]],[[63833,63833],"mapped",[38517]],[[63834,63834],"mapped",[35712]],[[63835,63835],"mapped",[25295]],[[63836,63836],"mapped",[27138]],[[63837,63837],"mapped",[35582]],[[63838,63838],"mapped",[20025]],[[63839,63839],"mapped",[23527]],[[63840,63840],"mapped",[24594]],[[63841,63841],"mapped",[29575]],[[63842,63842],"mapped",[30064]],[[63843,63843],"mapped",[21271]],[[63844,63844],"mapped",[30971]],[[63845,63845],"mapped",[20415]],[[63846,63846],"mapped",[24489]],[[63847,63847],"mapped",[19981]],[[63848,63848],"mapped",[27852]],[[63849,63849],"mapped",[25976]],[[63850,63850],"mapped",[32034]],[[63851,63851],"mapped",[21443]],[[63852,63852],"mapped",[22622]],[[63853,63853],"mapped",[30465]],[[63854,63854],"mapped",[33865]],[[63855,63855],"mapped",[35498]],[[63856,63856],"mapped",[27578]],[[63857,63857],"mapped",[36784]],[[63858,63858],"mapped",[27784]],[[63859,63859],"mapped",[25342]],[[63860,63860],"mapped",[33509]],[[63861,63861],"mapped",[25504]],[[63862,63862],"mapped",[30053]],[[63863,63863],"mapped",[20142]],[[63864,63864],"mapped",[20841]],[[63865,63865],"mapped",[20937]],[[63866,63866],"mapped",[26753]],[[63867,63867],"mapped",[31975]],[[63868,63868],"mapped",[33391]],[[63869,63869],"mapped",[35538]],[[63870,63870],"mapped",[37327]],[[63871,63871],"mapped",[21237]],[[63872,63872],"mapped",[21570]],[[63873,63873],"mapped",[22899]],[[63874,63874],"mapped",[24300]],[[63875,63875],"mapped",[26053]],[[63876,63876],"mapped",[28670]],[[63877,63877],"mapped",[31018]],[[63878,63878],"mapped",[38317]],[[63879,63879],"mapped",[39530]],[[63880,63880],"mapped",[40599]],[[63881,63881],"mapped",[40654]],[[63882,63882],"mapped",[21147]],[[63883,63883],"mapped",[26310]],[[63884,63884],"mapped",[27511]],[[63885,63885],"mapped",[36706]],[[63886,63886],"mapped",[24180]],[[63887,63887],"mapped",[24976]],[[63888,63888],"mapped",[25088]],[[63889,63889],"mapped",[25754]],[[63890,63890],"mapped",[28451]],[[63891,63891],"mapped",[29001]],[[63892,63892],"mapped",[29833]],[[63893,63893],"mapped",[31178]],[[63894,63894],"mapped",[32244]],[[63895,63895],"mapped",[32879]],[[63896,63896],"mapped",[36646]],[[63897,63897],"mapped",[34030]],[[63898,63898],"mapped",[36899]],[[63899,63899],"mapped",[37706]],[[63900,63900],"mapped",[21015]],[[63901,63901],"mapped",[21155]],[[63902,63902],"mapped",[21693]],[[63903,63903],"mapped",[28872]],[[63904,63904],"mapped",[35010]],[[63905,63905],"mapped",[35498]],[[63906,63906],"mapped",[24265]],[[63907,63907],"mapped",[24565]],[[63908,63908],"mapped",[25467]],[[63909,63909],"mapped",[27566]],[[63910,63910],"mapped",[31806]],[[63911,63911],"mapped",[29557]],[[63912,63912],"mapped",[20196]],[[63913,63913],"mapped",[22265]],[[63914,63914],"mapped",[23527]],[[63915,63915],"mapped",[23994]],[[63916,63916],"mapped",[24604]],[[63917,63917],"mapped",[29618]],[[63918,63918],"mapped",[29801]],[[63919,63919],"mapped",[32666]],[[63920,63920],"mapped",[32838]],[[63921,63921],"mapped",[37428]],[[63922,63922],"mapped",[38646]],[[63923,63923],"mapped",[38728]],[[63924,63924],"mapped",[38936]],[[63925,63925],"mapped",[20363]],[[63926,63926],"mapped",[31150]],[[63927,63927],"mapped",[37300]],[[63928,63928],"mapped",[38584]],[[63929,63929],"mapped",[24801]],[[63930,63930],"mapped",[20102]],[[63931,63931],"mapped",[20698]],[[63932,63932],"mapped",[23534]],[[63933,63933],"mapped",[23615]],[[63934,63934],"mapped",[26009]],[[63935,63935],"mapped",[27138]],[[63936,63936],"mapped",[29134]],[[63937,63937],"mapped",[30274]],[[63938,63938],"mapped",[34044]],[[63939,63939],"mapped",[36988]],[[63940,63940],"mapped",[40845]],[[63941,63941],"mapped",[26248]],[[63942,63942],"mapped",[38446]],[[63943,63943],"mapped",[21129]],[[63944,63944],"mapped",[26491]],[[63945,63945],"mapped",[26611]],[[63946,63946],"mapped",[27969]],[[63947,63947],"mapped",[28316]],[[63948,63948],"mapped",[29705]],[[63949,63949],"mapped",[30041]],[[63950,63950],"mapped",[30827]],[[63951,63951],"mapped",[32016]],[[63952,63952],"mapped",[39006]],[[63953,63953],"mapped",[20845]],[[63954,63954],"mapped",[25134]],[[63955,63955],"mapped",[38520]],[[63956,63956],"mapped",[20523]],[[63957,63957],"mapped",[23833]],[[63958,63958],"mapped",[28138]],[[63959,63959],"mapped",[36650]],[[63960,63960],"mapped",[24459]],[[63961,63961],"mapped",[24900]],[[63962,63962],"mapped",[26647]],[[63963,63963],"mapped",[29575]],[[63964,63964],"mapped",[38534]],[[63965,63965],"mapped",[21033]],[[63966,63966],"mapped",[21519]],[[63967,63967],"mapped",[23653]],[[63968,63968],"mapped",[26131]],[[63969,63969],"mapped",[26446]],[[63970,63970],"mapped",[26792]],[[63971,63971],"mapped",[27877]],[[63972,63972],"mapped",[29702]],[[63973,63973],"mapped",[30178]],[[63974,63974],"mapped",[32633]],[[63975,63975],"mapped",[35023]],[[63976,63976],"mapped",[35041]],[[63977,63977],"mapped",[37324]],[[63978,63978],"mapped",[38626]],[[63979,63979],"mapped",[21311]],[[63980,63980],"mapped",[28346]],[[63981,63981],"mapped",[21533]],[[63982,63982],"mapped",[29136]],[[63983,63983],"mapped",[29848]],[[63984,63984],"mapped",[34298]],[[63985,63985],"mapped",[38563]],[[63986,63986],"mapped",[40023]],[[63987,63987],"mapped",[40607]],[[63988,63988],"mapped",[26519]],[[63989,63989],"mapped",[28107]],[[63990,63990],"mapped",[33256]],[[63991,63991],"mapped",[31435]],[[63992,63992],"mapped",[31520]],[[63993,63993],"mapped",[31890]],[[63994,63994],"mapped",[29376]],[[63995,63995],"mapped",[28825]],[[63996,63996],"mapped",[35672]],[[63997,63997],"mapped",[20160]],[[63998,63998],"mapped",[33590]],[[63999,63999],"mapped",[21050]],[[64e3,64e3],"mapped",[20999]],[[64001,64001],"mapped",[24230]],[[64002,64002],"mapped",[25299]],[[64003,64003],"mapped",[31958]],[[64004,64004],"mapped",[23429]],[[64005,64005],"mapped",[27934]],[[64006,64006],"mapped",[26292]],[[64007,64007],"mapped",[36667]],[[64008,64008],"mapped",[34892]],[[64009,64009],"mapped",[38477]],[[64010,64010],"mapped",[35211]],[[64011,64011],"mapped",[24275]],[[64012,64012],"mapped",[20800]],[[64013,64013],"mapped",[21952]],[[64014,64015],"valid"],[[64016,64016],"mapped",[22618]],[[64017,64017],"valid"],[[64018,64018],"mapped",[26228]],[[64019,64020],"valid"],[[64021,64021],"mapped",[20958]],[[64022,64022],"mapped",[29482]],[[64023,64023],"mapped",[30410]],[[64024,64024],"mapped",[31036]],[[64025,64025],"mapped",[31070]],[[64026,64026],"mapped",[31077]],[[64027,64027],"mapped",[31119]],[[64028,64028],"mapped",[38742]],[[64029,64029],"mapped",[31934]],[[64030,64030],"mapped",[32701]],[[64031,64031],"valid"],[[64032,64032],"mapped",[34322]],[[64033,64033],"valid"],[[64034,64034],"mapped",[35576]],[[64035,64036],"valid"],[[64037,64037],"mapped",[36920]],[[64038,64038],"mapped",[37117]],[[64039,64041],"valid"],[[64042,64042],"mapped",[39151]],[[64043,64043],"mapped",[39164]],[[64044,64044],"mapped",[39208]],[[64045,64045],"mapped",[40372]],[[64046,64046],"mapped",[37086]],[[64047,64047],"mapped",[38583]],[[64048,64048],"mapped",[20398]],[[64049,64049],"mapped",[20711]],[[64050,64050],"mapped",[20813]],[[64051,64051],"mapped",[21193]],[[64052,64052],"mapped",[21220]],[[64053,64053],"mapped",[21329]],[[64054,64054],"mapped",[21917]],[[64055,64055],"mapped",[22022]],[[64056,64056],"mapped",[22120]],[[64057,64057],"mapped",[22592]],[[64058,64058],"mapped",[22696]],[[64059,64059],"mapped",[23652]],[[64060,64060],"mapped",[23662]],[[64061,64061],"mapped",[24724]],[[64062,64062],"mapped",[24936]],[[64063,64063],"mapped",[24974]],[[64064,64064],"mapped",[25074]],[[64065,64065],"mapped",[25935]],[[64066,64066],"mapped",[26082]],[[64067,64067],"mapped",[26257]],[[64068,64068],"mapped",[26757]],[[64069,64069],"mapped",[28023]],[[64070,64070],"mapped",[28186]],[[64071,64071],"mapped",[28450]],[[64072,64072],"mapped",[29038]],[[64073,64073],"mapped",[29227]],[[64074,64074],"mapped",[29730]],[[64075,64075],"mapped",[30865]],[[64076,64076],"mapped",[31038]],[[64077,64077],"mapped",[31049]],[[64078,64078],"mapped",[31048]],[[64079,64079],"mapped",[31056]],[[64080,64080],"mapped",[31062]],[[64081,64081],"mapped",[31069]],[[64082,64082],"mapped",[31117]],[[64083,64083],"mapped",[31118]],[[64084,64084],"mapped",[31296]],[[64085,64085],"mapped",[31361]],[[64086,64086],"mapped",[31680]],[[64087,64087],"mapped",[32244]],[[64088,64088],"mapped",[32265]],[[64089,64089],"mapped",[32321]],[[64090,64090],"mapped",[32626]],[[64091,64091],"mapped",[32773]],[[64092,64092],"mapped",[33261]],[[64093,64094],"mapped",[33401]],[[64095,64095],"mapped",[33879]],[[64096,64096],"mapped",[35088]],[[64097,64097],"mapped",[35222]],[[64098,64098],"mapped",[35585]],[[64099,64099],"mapped",[35641]],[[64100,64100],"mapped",[36051]],[[64101,64101],"mapped",[36104]],[[64102,64102],"mapped",[36790]],[[64103,64103],"mapped",[36920]],[[64104,64104],"mapped",[38627]],[[64105,64105],"mapped",[38911]],[[64106,64106],"mapped",[38971]],[[64107,64107],"mapped",[24693]],[[64108,64108],"mapped",[148206]],[[64109,64109],"mapped",[33304]],[[64110,64111],"disallowed"],[[64112,64112],"mapped",[20006]],[[64113,64113],"mapped",[20917]],[[64114,64114],"mapped",[20840]],[[64115,64115],"mapped",[20352]],[[64116,64116],"mapped",[20805]],[[64117,64117],"mapped",[20864]],[[64118,64118],"mapped",[21191]],[[64119,64119],"mapped",[21242]],[[64120,64120],"mapped",[21917]],[[64121,64121],"mapped",[21845]],[[64122,64122],"mapped",[21913]],[[64123,64123],"mapped",[21986]],[[64124,64124],"mapped",[22618]],[[64125,64125],"mapped",[22707]],[[64126,64126],"mapped",[22852]],[[64127,64127],"mapped",[22868]],[[64128,64128],"mapped",[23138]],[[64129,64129],"mapped",[23336]],[[64130,64130],"mapped",[24274]],[[64131,64131],"mapped",[24281]],[[64132,64132],"mapped",[24425]],[[64133,64133],"mapped",[24493]],[[64134,64134],"mapped",[24792]],[[64135,64135],"mapped",[24910]],[[64136,64136],"mapped",[24840]],[[64137,64137],"mapped",[24974]],[[64138,64138],"mapped",[24928]],[[64139,64139],"mapped",[25074]],[[64140,64140],"mapped",[25140]],[[64141,64141],"mapped",[25540]],[[64142,64142],"mapped",[25628]],[[64143,64143],"mapped",[25682]],[[64144,64144],"mapped",[25942]],[[64145,64145],"mapped",[26228]],[[64146,64146],"mapped",[26391]],[[64147,64147],"mapped",[26395]],[[64148,64148],"mapped",[26454]],[[64149,64149],"mapped",[27513]],[[64150,64150],"mapped",[27578]],[[64151,64151],"mapped",[27969]],[[64152,64152],"mapped",[28379]],[[64153,64153],"mapped",[28363]],[[64154,64154],"mapped",[28450]],[[64155,64155],"mapped",[28702]],[[64156,64156],"mapped",[29038]],[[64157,64157],"mapped",[30631]],[[64158,64158],"mapped",[29237]],[[64159,64159],"mapped",[29359]],[[64160,64160],"mapped",[29482]],[[64161,64161],"mapped",[29809]],[[64162,64162],"mapped",[29958]],[[64163,64163],"mapped",[30011]],[[64164,64164],"mapped",[30237]],[[64165,64165],"mapped",[30239]],[[64166,64166],"mapped",[30410]],[[64167,64167],"mapped",[30427]],[[64168,64168],"mapped",[30452]],[[64169,64169],"mapped",[30538]],[[64170,64170],"mapped",[30528]],[[64171,64171],"mapped",[30924]],[[64172,64172],"mapped",[31409]],[[64173,64173],"mapped",[31680]],[[64174,64174],"mapped",[31867]],[[64175,64175],"mapped",[32091]],[[64176,64176],"mapped",[32244]],[[64177,64177],"mapped",[32574]],[[64178,64178],"mapped",[32773]],[[64179,64179],"mapped",[33618]],[[64180,64180],"mapped",[33775]],[[64181,64181],"mapped",[34681]],[[64182,64182],"mapped",[35137]],[[64183,64183],"mapped",[35206]],[[64184,64184],"mapped",[35222]],[[64185,64185],"mapped",[35519]],[[64186,64186],"mapped",[35576]],[[64187,64187],"mapped",[35531]],[[64188,64188],"mapped",[35585]],[[64189,64189],"mapped",[35582]],[[64190,64190],"mapped",[35565]],[[64191,64191],"mapped",[35641]],[[64192,64192],"mapped",[35722]],[[64193,64193],"mapped",[36104]],[[64194,64194],"mapped",[36664]],[[64195,64195],"mapped",[36978]],[[64196,64196],"mapped",[37273]],[[64197,64197],"mapped",[37494]],[[64198,64198],"mapped",[38524]],[[64199,64199],"mapped",[38627]],[[64200,64200],"mapped",[38742]],[[64201,64201],"mapped",[38875]],[[64202,64202],"mapped",[38911]],[[64203,64203],"mapped",[38923]],[[64204,64204],"mapped",[38971]],[[64205,64205],"mapped",[39698]],[[64206,64206],"mapped",[40860]],[[64207,64207],"mapped",[141386]],[[64208,64208],"mapped",[141380]],[[64209,64209],"mapped",[144341]],[[64210,64210],"mapped",[15261]],[[64211,64211],"mapped",[16408]],[[64212,64212],"mapped",[16441]],[[64213,64213],"mapped",[152137]],[[64214,64214],"mapped",[154832]],[[64215,64215],"mapped",[163539]],[[64216,64216],"mapped",[40771]],[[64217,64217],"mapped",[40846]],[[64218,64255],"disallowed"],[[64256,64256],"mapped",[102,102]],[[64257,64257],"mapped",[102,105]],[[64258,64258],"mapped",[102,108]],[[64259,64259],"mapped",[102,102,105]],[[64260,64260],"mapped",[102,102,108]],[[64261,64262],"mapped",[115,116]],[[64263,64274],"disallowed"],[[64275,64275],"mapped",[1396,1398]],[[64276,64276],"mapped",[1396,1381]],[[64277,64277],"mapped",[1396,1387]],[[64278,64278],"mapped",[1406,1398]],[[64279,64279],"mapped",[1396,1389]],[[64280,64284],"disallowed"],[[64285,64285],"mapped",[1497,1460]],[[64286,64286],"valid"],[[64287,64287],"mapped",[1522,1463]],[[64288,64288],"mapped",[1506]],[[64289,64289],"mapped",[1488]],[[64290,64290],"mapped",[1491]],[[64291,64291],"mapped",[1492]],[[64292,64292],"mapped",[1499]],[[64293,64293],"mapped",[1500]],[[64294,64294],"mapped",[1501]],[[64295,64295],"mapped",[1512]],[[64296,64296],"mapped",[1514]],[[64297,64297],"disallowed_STD3_mapped",[43]],[[64298,64298],"mapped",[1513,1473]],[[64299,64299],"mapped",[1513,1474]],[[64300,64300],"mapped",[1513,1468,1473]],[[64301,64301],"mapped",[1513,1468,1474]],[[64302,64302],"mapped",[1488,1463]],[[64303,64303],"mapped",[1488,1464]],[[64304,64304],"mapped",[1488,1468]],[[64305,64305],"mapped",[1489,1468]],[[64306,64306],"mapped",[1490,1468]],[[64307,64307],"mapped",[1491,1468]],[[64308,64308],"mapped",[1492,1468]],[[64309,64309],"mapped",[1493,1468]],[[64310,64310],"mapped",[1494,1468]],[[64311,64311],"disallowed"],[[64312,64312],"mapped",[1496,1468]],[[64313,64313],"mapped",[1497,1468]],[[64314,64314],"mapped",[1498,1468]],[[64315,64315],"mapped",[1499,1468]],[[64316,64316],"mapped",[1500,1468]],[[64317,64317],"disallowed"],[[64318,64318],"mapped",[1502,1468]],[[64319,64319],"disallowed"],[[64320,64320],"mapped",[1504,1468]],[[64321,64321],"mapped",[1505,1468]],[[64322,64322],"disallowed"],[[64323,64323],"mapped",[1507,1468]],[[64324,64324],"mapped",[1508,1468]],[[64325,64325],"disallowed"],[[64326,64326],"mapped",[1510,1468]],[[64327,64327],"mapped",[1511,1468]],[[64328,64328],"mapped",[1512,1468]],[[64329,64329],"mapped",[1513,1468]],[[64330,64330],"mapped",[1514,1468]],[[64331,64331],"mapped",[1493,1465]],[[64332,64332],"mapped",[1489,1471]],[[64333,64333],"mapped",[1499,1471]],[[64334,64334],"mapped",[1508,1471]],[[64335,64335],"mapped",[1488,1500]],[[64336,64337],"mapped",[1649]],[[64338,64341],"mapped",[1659]],[[64342,64345],"mapped",[1662]],[[64346,64349],"mapped",[1664]],[[64350,64353],"mapped",[1658]],[[64354,64357],"mapped",[1663]],[[64358,64361],"mapped",[1657]],[[64362,64365],"mapped",[1700]],[[64366,64369],"mapped",[1702]],[[64370,64373],"mapped",[1668]],[[64374,64377],"mapped",[1667]],[[64378,64381],"mapped",[1670]],[[64382,64385],"mapped",[1671]],[[64386,64387],"mapped",[1677]],[[64388,64389],"mapped",[1676]],[[64390,64391],"mapped",[1678]],[[64392,64393],"mapped",[1672]],[[64394,64395],"mapped",[1688]],[[64396,64397],"mapped",[1681]],[[64398,64401],"mapped",[1705]],[[64402,64405],"mapped",[1711]],[[64406,64409],"mapped",[1715]],[[64410,64413],"mapped",[1713]],[[64414,64415],"mapped",[1722]],[[64416,64419],"mapped",[1723]],[[64420,64421],"mapped",[1728]],[[64422,64425],"mapped",[1729]],[[64426,64429],"mapped",[1726]],[[64430,64431],"mapped",[1746]],[[64432,64433],"mapped",[1747]],[[64434,64449],"valid",[],"NV8"],[[64450,64466],"disallowed"],[[64467,64470],"mapped",[1709]],[[64471,64472],"mapped",[1735]],[[64473,64474],"mapped",[1734]],[[64475,64476],"mapped",[1736]],[[64477,64477],"mapped",[1735,1652]],[[64478,64479],"mapped",[1739]],[[64480,64481],"mapped",[1733]],[[64482,64483],"mapped",[1737]],[[64484,64487],"mapped",[1744]],[[64488,64489],"mapped",[1609]],[[64490,64491],"mapped",[1574,1575]],[[64492,64493],"mapped",[1574,1749]],[[64494,64495],"mapped",[1574,1608]],[[64496,64497],"mapped",[1574,1735]],[[64498,64499],"mapped",[1574,1734]],[[64500,64501],"mapped",[1574,1736]],[[64502,64504],"mapped",[1574,1744]],[[64505,64507],"mapped",[1574,1609]],[[64508,64511],"mapped",[1740]],[[64512,64512],"mapped",[1574,1580]],[[64513,64513],"mapped",[1574,1581]],[[64514,64514],"mapped",[1574,1605]],[[64515,64515],"mapped",[1574,1609]],[[64516,64516],"mapped",[1574,1610]],[[64517,64517],"mapped",[1576,1580]],[[64518,64518],"mapped",[1576,1581]],[[64519,64519],"mapped",[1576,1582]],[[64520,64520],"mapped",[1576,1605]],[[64521,64521],"mapped",[1576,1609]],[[64522,64522],"mapped",[1576,1610]],[[64523,64523],"mapped",[1578,1580]],[[64524,64524],"mapped",[1578,1581]],[[64525,64525],"mapped",[1578,1582]],[[64526,64526],"mapped",[1578,1605]],[[64527,64527],"mapped",[1578,1609]],[[64528,64528],"mapped",[1578,1610]],[[64529,64529],"mapped",[1579,1580]],[[64530,64530],"mapped",[1579,1605]],[[64531,64531],"mapped",[1579,1609]],[[64532,64532],"mapped",[1579,1610]],[[64533,64533],"mapped",[1580,1581]],[[64534,64534],"mapped",[1580,1605]],[[64535,64535],"mapped",[1581,1580]],[[64536,64536],"mapped",[1581,1605]],[[64537,64537],"mapped",[1582,1580]],[[64538,64538],"mapped",[1582,1581]],[[64539,64539],"mapped",[1582,1605]],[[64540,64540],"mapped",[1587,1580]],[[64541,64541],"mapped",[1587,1581]],[[64542,64542],"mapped",[1587,1582]],[[64543,64543],"mapped",[1587,1605]],[[64544,64544],"mapped",[1589,1581]],[[64545,64545],"mapped",[1589,1605]],[[64546,64546],"mapped",[1590,1580]],[[64547,64547],"mapped",[1590,1581]],[[64548,64548],"mapped",[1590,1582]],[[64549,64549],"mapped",[1590,1605]],[[64550,64550],"mapped",[1591,1581]],[[64551,64551],"mapped",[1591,1605]],[[64552,64552],"mapped",[1592,1605]],[[64553,64553],"mapped",[1593,1580]],[[64554,64554],"mapped",[1593,1605]],[[64555,64555],"mapped",[1594,1580]],[[64556,64556],"mapped",[1594,1605]],[[64557,64557],"mapped",[1601,1580]],[[64558,64558],"mapped",[1601,1581]],[[64559,64559],"mapped",[1601,1582]],[[64560,64560],"mapped",[1601,1605]],[[64561,64561],"mapped",[1601,1609]],[[64562,64562],"mapped",[1601,1610]],[[64563,64563],"mapped",[1602,1581]],[[64564,64564],"mapped",[1602,1605]],[[64565,64565],"mapped",[1602,1609]],[[64566,64566],"mapped",[1602,1610]],[[64567,64567],"mapped",[1603,1575]],[[64568,64568],"mapped",[1603,1580]],[[64569,64569],"mapped",[1603,1581]],[[64570,64570],"mapped",[1603,1582]],[[64571,64571],"mapped",[1603,1604]],[[64572,64572],"mapped",[1603,1605]],[[64573,64573],"mapped",[1603,1609]],[[64574,64574],"mapped",[1603,1610]],[[64575,64575],"mapped",[1604,1580]],[[64576,64576],"mapped",[1604,1581]],[[64577,64577],"mapped",[1604,1582]],[[64578,64578],"mapped",[1604,1605]],[[64579,64579],"mapped",[1604,1609]],[[64580,64580],"mapped",[1604,1610]],[[64581,64581],"mapped",[1605,1580]],[[64582,64582],"mapped",[1605,1581]],[[64583,64583],"mapped",[1605,1582]],[[64584,64584],"mapped",[1605,1605]],[[64585,64585],"mapped",[1605,1609]],[[64586,64586],"mapped",[1605,1610]],[[64587,64587],"mapped",[1606,1580]],[[64588,64588],"mapped",[1606,1581]],[[64589,64589],"mapped",[1606,1582]],[[64590,64590],"mapped",[1606,1605]],[[64591,64591],"mapped",[1606,1609]],[[64592,64592],"mapped",[1606,1610]],[[64593,64593],"mapped",[1607,1580]],[[64594,64594],"mapped",[1607,1605]],[[64595,64595],"mapped",[1607,1609]],[[64596,64596],"mapped",[1607,1610]],[[64597,64597],"mapped",[1610,1580]],[[64598,64598],"mapped",[1610,1581]],[[64599,64599],"mapped",[1610,1582]],[[64600,64600],"mapped",[1610,1605]],[[64601,64601],"mapped",[1610,1609]],[[64602,64602],"mapped",[1610,1610]],[[64603,64603],"mapped",[1584,1648]],[[64604,64604],"mapped",[1585,1648]],[[64605,64605],"mapped",[1609,1648]],[[64606,64606],"disallowed_STD3_mapped",[32,1612,1617]],[[64607,64607],"disallowed_STD3_mapped",[32,1613,1617]],[[64608,64608],"disallowed_STD3_mapped",[32,1614,1617]],[[64609,64609],"disallowed_STD3_mapped",[32,1615,1617]],[[64610,64610],"disallowed_STD3_mapped",[32,1616,1617]],[[64611,64611],"disallowed_STD3_mapped",[32,1617,1648]],[[64612,64612],"mapped",[1574,1585]],[[64613,64613],"mapped",[1574,1586]],[[64614,64614],"mapped",[1574,1605]],[[64615,64615],"mapped",[1574,1606]],[[64616,64616],"mapped",[1574,1609]],[[64617,64617],"mapped",[1574,1610]],[[64618,64618],"mapped",[1576,1585]],[[64619,64619],"mapped",[1576,1586]],[[64620,64620],"mapped",[1576,1605]],[[64621,64621],"mapped",[1576,1606]],[[64622,64622],"mapped",[1576,1609]],[[64623,64623],"mapped",[1576,1610]],[[64624,64624],"mapped",[1578,1585]],[[64625,64625],"mapped",[1578,1586]],[[64626,64626],"mapped",[1578,1605]],[[64627,64627],"mapped",[1578,1606]],[[64628,64628],"mapped",[1578,1609]],[[64629,64629],"mapped",[1578,1610]],[[64630,64630],"mapped",[1579,1585]],[[64631,64631],"mapped",[1579,1586]],[[64632,64632],"mapped",[1579,1605]],[[64633,64633],"mapped",[1579,1606]],[[64634,64634],"mapped",[1579,1609]],[[64635,64635],"mapped",[1579,1610]],[[64636,64636],"mapped",[1601,1609]],[[64637,64637],"mapped",[1601,1610]],[[64638,64638],"mapped",[1602,1609]],[[64639,64639],"mapped",[1602,1610]],[[64640,64640],"mapped",[1603,1575]],[[64641,64641],"mapped",[1603,1604]],[[64642,64642],"mapped",[1603,1605]],[[64643,64643],"mapped",[1603,1609]],[[64644,64644],"mapped",[1603,1610]],[[64645,64645],"mapped",[1604,1605]],[[64646,64646],"mapped",[1604,1609]],[[64647,64647],"mapped",[1604,1610]],[[64648,64648],"mapped",[1605,1575]],[[64649,64649],"mapped",[1605,1605]],[[64650,64650],"mapped",[1606,1585]],[[64651,64651],"mapped",[1606,1586]],[[64652,64652],"mapped",[1606,1605]],[[64653,64653],"mapped",[1606,1606]],[[64654,64654],"mapped",[1606,1609]],[[64655,64655],"mapped",[1606,1610]],[[64656,64656],"mapped",[1609,1648]],[[64657,64657],"mapped",[1610,1585]],[[64658,64658],"mapped",[1610,1586]],[[64659,64659],"mapped",[1610,1605]],[[64660,64660],"mapped",[1610,1606]],[[64661,64661],"mapped",[1610,1609]],[[64662,64662],"mapped",[1610,1610]],[[64663,64663],"mapped",[1574,1580]],[[64664,64664],"mapped",[1574,1581]],[[64665,64665],"mapped",[1574,1582]],[[64666,64666],"mapped",[1574,1605]],[[64667,64667],"mapped",[1574,1607]],[[64668,64668],"mapped",[1576,1580]],[[64669,64669],"mapped",[1576,1581]],[[64670,64670],"mapped",[1576,1582]],[[64671,64671],"mapped",[1576,1605]],[[64672,64672],"mapped",[1576,1607]],[[64673,64673],"mapped",[1578,1580]],[[64674,64674],"mapped",[1578,1581]],[[64675,64675],"mapped",[1578,1582]],[[64676,64676],"mapped",[1578,1605]],[[64677,64677],"mapped",[1578,1607]],[[64678,64678],"mapped",[1579,1605]],[[64679,64679],"mapped",[1580,1581]],[[64680,64680],"mapped",[1580,1605]],[[64681,64681],"mapped",[1581,1580]],[[64682,64682],"mapped",[1581,1605]],[[64683,64683],"mapped",[1582,1580]],[[64684,64684],"mapped",[1582,1605]],[[64685,64685],"mapped",[1587,1580]],[[64686,64686],"mapped",[1587,1581]],[[64687,64687],"mapped",[1587,1582]],[[64688,64688],"mapped",[1587,1605]],[[64689,64689],"mapped",[1589,1581]],[[64690,64690],"mapped",[1589,1582]],[[64691,64691],"mapped",[1589,1605]],[[64692,64692],"mapped",[1590,1580]],[[64693,64693],"mapped",[1590,1581]],[[64694,64694],"mapped",[1590,1582]],[[64695,64695],"mapped",[1590,1605]],[[64696,64696],"mapped",[1591,1581]],[[64697,64697],"mapped",[1592,1605]],[[64698,64698],"mapped",[1593,1580]],[[64699,64699],"mapped",[1593,1605]],[[64700,64700],"mapped",[1594,1580]],[[64701,64701],"mapped",[1594,1605]],[[64702,64702],"mapped",[1601,1580]],[[64703,64703],"mapped",[1601,1581]],[[64704,64704],"mapped",[1601,1582]],[[64705,64705],"mapped",[1601,1605]],[[64706,64706],"mapped",[1602,1581]],[[64707,64707],"mapped",[1602,1605]],[[64708,64708],"mapped",[1603,1580]],[[64709,64709],"mapped",[1603,1581]],[[64710,64710],"mapped",[1603,1582]],[[64711,64711],"mapped",[1603,1604]],[[64712,64712],"mapped",[1603,1605]],[[64713,64713],"mapped",[1604,1580]],[[64714,64714],"mapped",[1604,1581]],[[64715,64715],"mapped",[1604,1582]],[[64716,64716],"mapped",[1604,1605]],[[64717,64717],"mapped",[1604,1607]],[[64718,64718],"mapped",[1605,1580]],[[64719,64719],"mapped",[1605,1581]],[[64720,64720],"mapped",[1605,1582]],[[64721,64721],"mapped",[1605,1605]],[[64722,64722],"mapped",[1606,1580]],[[64723,64723],"mapped",[1606,1581]],[[64724,64724],"mapped",[1606,1582]],[[64725,64725],"mapped",[1606,1605]],[[64726,64726],"mapped",[1606,1607]],[[64727,64727],"mapped",[1607,1580]],[[64728,64728],"mapped",[1607,1605]],[[64729,64729],"mapped",[1607,1648]],[[64730,64730],"mapped",[1610,1580]],[[64731,64731],"mapped",[1610,1581]],[[64732,64732],"mapped",[1610,1582]],[[64733,64733],"mapped",[1610,1605]],[[64734,64734],"mapped",[1610,1607]],[[64735,64735],"mapped",[1574,1605]],[[64736,64736],"mapped",[1574,1607]],[[64737,64737],"mapped",[1576,1605]],[[64738,64738],"mapped",[1576,1607]],[[64739,64739],"mapped",[1578,1605]],[[64740,64740],"mapped",[1578,1607]],[[64741,64741],"mapped",[1579,1605]],[[64742,64742],"mapped",[1579,1607]],[[64743,64743],"mapped",[1587,1605]],[[64744,64744],"mapped",[1587,1607]],[[64745,64745],"mapped",[1588,1605]],[[64746,64746],"mapped",[1588,1607]],[[64747,64747],"mapped",[1603,1604]],[[64748,64748],"mapped",[1603,1605]],[[64749,64749],"mapped",[1604,1605]],[[64750,64750],"mapped",[1606,1605]],[[64751,64751],"mapped",[1606,1607]],[[64752,64752],"mapped",[1610,1605]],[[64753,64753],"mapped",[1610,1607]],[[64754,64754],"mapped",[1600,1614,1617]],[[64755,64755],"mapped",[1600,1615,1617]],[[64756,64756],"mapped",[1600,1616,1617]],[[64757,64757],"mapped",[1591,1609]],[[64758,64758],"mapped",[1591,1610]],[[64759,64759],"mapped",[1593,1609]],[[64760,64760],"mapped",[1593,1610]],[[64761,64761],"mapped",[1594,1609]],[[64762,64762],"mapped",[1594,1610]],[[64763,64763],"mapped",[1587,1609]],[[64764,64764],"mapped",[1587,1610]],[[64765,64765],"mapped",[1588,1609]],[[64766,64766],"mapped",[1588,1610]],[[64767,64767],"mapped",[1581,1609]],[[64768,64768],"mapped",[1581,1610]],[[64769,64769],"mapped",[1580,1609]],[[64770,64770],"mapped",[1580,1610]],[[64771,64771],"mapped",[1582,1609]],[[64772,64772],"mapped",[1582,1610]],[[64773,64773],"mapped",[1589,1609]],[[64774,64774],"mapped",[1589,1610]],[[64775,64775],"mapped",[1590,1609]],[[64776,64776],"mapped",[1590,1610]],[[64777,64777],"mapped",[1588,1580]],[[64778,64778],"mapped",[1588,1581]],[[64779,64779],"mapped",[1588,1582]],[[64780,64780],"mapped",[1588,1605]],[[64781,64781],"mapped",[1588,1585]],[[64782,64782],"mapped",[1587,1585]],[[64783,64783],"mapped",[1589,1585]],[[64784,64784],"mapped",[1590,1585]],[[64785,64785],"mapped",[1591,1609]],[[64786,64786],"mapped",[1591,1610]],[[64787,64787],"mapped",[1593,1609]],[[64788,64788],"mapped",[1593,1610]],[[64789,64789],"mapped",[1594,1609]],[[64790,64790],"mapped",[1594,1610]],[[64791,64791],"mapped",[1587,1609]],[[64792,64792],"mapped",[1587,1610]],[[64793,64793],"mapped",[1588,1609]],[[64794,64794],"mapped",[1588,1610]],[[64795,64795],"mapped",[1581,1609]],[[64796,64796],"mapped",[1581,1610]],[[64797,64797],"mapped",[1580,1609]],[[64798,64798],"mapped",[1580,1610]],[[64799,64799],"mapped",[1582,1609]],[[64800,64800],"mapped",[1582,1610]],[[64801,64801],"mapped",[1589,1609]],[[64802,64802],"mapped",[1589,1610]],[[64803,64803],"mapped",[1590,1609]],[[64804,64804],"mapped",[1590,1610]],[[64805,64805],"mapped",[1588,1580]],[[64806,64806],"mapped",[1588,1581]],[[64807,64807],"mapped",[1588,1582]],[[64808,64808],"mapped",[1588,1605]],[[64809,64809],"mapped",[1588,1585]],[[64810,64810],"mapped",[1587,1585]],[[64811,64811],"mapped",[1589,1585]],[[64812,64812],"mapped",[1590,1585]],[[64813,64813],"mapped",[1588,1580]],[[64814,64814],"mapped",[1588,1581]],[[64815,64815],"mapped",[1588,1582]],[[64816,64816],"mapped",[1588,1605]],[[64817,64817],"mapped",[1587,1607]],[[64818,64818],"mapped",[1588,1607]],[[64819,64819],"mapped",[1591,1605]],[[64820,64820],"mapped",[1587,1580]],[[64821,64821],"mapped",[1587,1581]],[[64822,64822],"mapped",[1587,1582]],[[64823,64823],"mapped",[1588,1580]],[[64824,64824],"mapped",[1588,1581]],[[64825,64825],"mapped",[1588,1582]],[[64826,64826],"mapped",[1591,1605]],[[64827,64827],"mapped",[1592,1605]],[[64828,64829],"mapped",[1575,1611]],[[64830,64831],"valid",[],"NV8"],[[64832,64847],"disallowed"],[[64848,64848],"mapped",[1578,1580,1605]],[[64849,64850],"mapped",[1578,1581,1580]],[[64851,64851],"mapped",[1578,1581,1605]],[[64852,64852],"mapped",[1578,1582,1605]],[[64853,64853],"mapped",[1578,1605,1580]],[[64854,64854],"mapped",[1578,1605,1581]],[[64855,64855],"mapped",[1578,1605,1582]],[[64856,64857],"mapped",[1580,1605,1581]],[[64858,64858],"mapped",[1581,1605,1610]],[[64859,64859],"mapped",[1581,1605,1609]],[[64860,64860],"mapped",[1587,1581,1580]],[[64861,64861],"mapped",[1587,1580,1581]],[[64862,64862],"mapped",[1587,1580,1609]],[[64863,64864],"mapped",[1587,1605,1581]],[[64865,64865],"mapped",[1587,1605,1580]],[[64866,64867],"mapped",[1587,1605,1605]],[[64868,64869],"mapped",[1589,1581,1581]],[[64870,64870],"mapped",[1589,1605,1605]],[[64871,64872],"mapped",[1588,1581,1605]],[[64873,64873],"mapped",[1588,1580,1610]],[[64874,64875],"mapped",[1588,1605,1582]],[[64876,64877],"mapped",[1588,1605,1605]],[[64878,64878],"mapped",[1590,1581,1609]],[[64879,64880],"mapped",[1590,1582,1605]],[[64881,64882],"mapped",[1591,1605,1581]],[[64883,64883],"mapped",[1591,1605,1605]],[[64884,64884],"mapped",[1591,1605,1610]],[[64885,64885],"mapped",[1593,1580,1605]],[[64886,64887],"mapped",[1593,1605,1605]],[[64888,64888],"mapped",[1593,1605,1609]],[[64889,64889],"mapped",[1594,1605,1605]],[[64890,64890],"mapped",[1594,1605,1610]],[[64891,64891],"mapped",[1594,1605,1609]],[[64892,64893],"mapped",[1601,1582,1605]],[[64894,64894],"mapped",[1602,1605,1581]],[[64895,64895],"mapped",[1602,1605,1605]],[[64896,64896],"mapped",[1604,1581,1605]],[[64897,64897],"mapped",[1604,1581,1610]],[[64898,64898],"mapped",[1604,1581,1609]],[[64899,64900],"mapped",[1604,1580,1580]],[[64901,64902],"mapped",[1604,1582,1605]],[[64903,64904],"mapped",[1604,1605,1581]],[[64905,64905],"mapped",[1605,1581,1580]],[[64906,64906],"mapped",[1605,1581,1605]],[[64907,64907],"mapped",[1605,1581,1610]],[[64908,64908],"mapped",[1605,1580,1581]],[[64909,64909],"mapped",[1605,1580,1605]],[[64910,64910],"mapped",[1605,1582,1580]],[[64911,64911],"mapped",[1605,1582,1605]],[[64912,64913],"disallowed"],[[64914,64914],"mapped",[1605,1580,1582]],[[64915,64915],"mapped",[1607,1605,1580]],[[64916,64916],"mapped",[1607,1605,1605]],[[64917,64917],"mapped",[1606,1581,1605]],[[64918,64918],"mapped",[1606,1581,1609]],[[64919,64920],"mapped",[1606,1580,1605]],[[64921,64921],"mapped",[1606,1580,1609]],[[64922,64922],"mapped",[1606,1605,1610]],[[64923,64923],"mapped",[1606,1605,1609]],[[64924,64925],"mapped",[1610,1605,1605]],[[64926,64926],"mapped",[1576,1582,1610]],[[64927,64927],"mapped",[1578,1580,1610]],[[64928,64928],"mapped",[1578,1580,1609]],[[64929,64929],"mapped",[1578,1582,1610]],[[64930,64930],"mapped",[1578,1582,1609]],[[64931,64931],"mapped",[1578,1605,1610]],[[64932,64932],"mapped",[1578,1605,1609]],[[64933,64933],"mapped",[1580,1605,1610]],[[64934,64934],"mapped",[1580,1581,1609]],[[64935,64935],"mapped",[1580,1605,1609]],[[64936,64936],"mapped",[1587,1582,1609]],[[64937,64937],"mapped",[1589,1581,1610]],[[64938,64938],"mapped",[1588,1581,1610]],[[64939,64939],"mapped",[1590,1581,1610]],[[64940,64940],"mapped",[1604,1580,1610]],[[64941,64941],"mapped",[1604,1605,1610]],[[64942,64942],"mapped",[1610,1581,1610]],[[64943,64943],"mapped",[1610,1580,1610]],[[64944,64944],"mapped",[1610,1605,1610]],[[64945,64945],"mapped",[1605,1605,1610]],[[64946,64946],"mapped",[1602,1605,1610]],[[64947,64947],"mapped",[1606,1581,1610]],[[64948,64948],"mapped",[1602,1605,1581]],[[64949,64949],"mapped",[1604,1581,1605]],[[64950,64950],"mapped",[1593,1605,1610]],[[64951,64951],"mapped",[1603,1605,1610]],[[64952,64952],"mapped",[1606,1580,1581]],[[64953,64953],"mapped",[1605,1582,1610]],[[64954,64954],"mapped",[1604,1580,1605]],[[64955,64955],"mapped",[1603,1605,1605]],[[64956,64956],"mapped",[1604,1580,1605]],[[64957,64957],"mapped",[1606,1580,1581]],[[64958,64958],"mapped",[1580,1581,1610]],[[64959,64959],"mapped",[1581,1580,1610]],[[64960,64960],"mapped",[1605,1580,1610]],[[64961,64961],"mapped",[1601,1605,1610]],[[64962,64962],"mapped",[1576,1581,1610]],[[64963,64963],"mapped",[1603,1605,1605]],[[64964,64964],"mapped",[1593,1580,1605]],[[64965,64965],"mapped",[1589,1605,1605]],[[64966,64966],"mapped",[1587,1582,1610]],[[64967,64967],"mapped",[1606,1580,1610]],[[64968,64975],"disallowed"],[[64976,65007],"disallowed"],[[65008,65008],"mapped",[1589,1604,1746]],[[65009,65009],"mapped",[1602,1604,1746]],[[65010,65010],"mapped",[1575,1604,1604,1607]],[[65011,65011],"mapped",[1575,1603,1576,1585]],[[65012,65012],"mapped",[1605,1581,1605,1583]],[[65013,65013],"mapped",[1589,1604,1593,1605]],[[65014,65014],"mapped",[1585,1587,1608,1604]],[[65015,65015],"mapped",[1593,1604,1610,1607]],[[65016,65016],"mapped",[1608,1587,1604,1605]],[[65017,65017],"mapped",[1589,1604,1609]],[[65018,65018],"disallowed_STD3_mapped",[1589,1604,1609,32,1575,1604,1604,1607,32,1593,1604,1610,1607,32,1608,1587,1604,1605]],[[65019,65019],"disallowed_STD3_mapped",[1580,1604,32,1580,1604,1575,1604,1607]],[[65020,65020],"mapped",[1585,1740,1575,1604]],[[65021,65021],"valid",[],"NV8"],[[65022,65023],"disallowed"],[[65024,65039],"ignored"],[[65040,65040],"disallowed_STD3_mapped",[44]],[[65041,65041],"mapped",[12289]],[[65042,65042],"disallowed"],[[65043,65043],"disallowed_STD3_mapped",[58]],[[65044,65044],"disallowed_STD3_mapped",[59]],[[65045,65045],"disallowed_STD3_mapped",[33]],[[65046,65046],"disallowed_STD3_mapped",[63]],[[65047,65047],"mapped",[12310]],[[65048,65048],"mapped",[12311]],[[65049,65049],"disallowed"],[[65050,65055],"disallowed"],[[65056,65059],"valid"],[[65060,65062],"valid"],[[65063,65069],"valid"],[[65070,65071],"valid"],[[65072,65072],"disallowed"],[[65073,65073],"mapped",[8212]],[[65074,65074],"mapped",[8211]],[[65075,65076],"disallowed_STD3_mapped",[95]],[[65077,65077],"disallowed_STD3_mapped",[40]],[[65078,65078],"disallowed_STD3_mapped",[41]],[[65079,65079],"disallowed_STD3_mapped",[123]],[[65080,65080],"disallowed_STD3_mapped",[125]],[[65081,65081],"mapped",[12308]],[[65082,65082],"mapped",[12309]],[[65083,65083],"mapped",[12304]],[[65084,65084],"mapped",[12305]],[[65085,65085],"mapped",[12298]],[[65086,65086],"mapped",[12299]],[[65087,65087],"mapped",[12296]],[[65088,65088],"mapped",[12297]],[[65089,65089],"mapped",[12300]],[[65090,65090],"mapped",[12301]],[[65091,65091],"mapped",[12302]],[[65092,65092],"mapped",[12303]],[[65093,65094],"valid",[],"NV8"],[[65095,65095],"disallowed_STD3_mapped",[91]],[[65096,65096],"disallowed_STD3_mapped",[93]],[[65097,65100],"disallowed_STD3_mapped",[32,773]],[[65101,65103],"disallowed_STD3_mapped",[95]],[[65104,65104],"disallowed_STD3_mapped",[44]],[[65105,65105],"mapped",[12289]],[[65106,65106],"disallowed"],[[65107,65107],"disallowed"],[[65108,65108],"disallowed_STD3_mapped",[59]],[[65109,65109],"disallowed_STD3_mapped",[58]],[[65110,65110],"disallowed_STD3_mapped",[63]],[[65111,65111],"disallowed_STD3_mapped",[33]],[[65112,65112],"mapped",[8212]],[[65113,65113],"disallowed_STD3_mapped",[40]],[[65114,65114],"disallowed_STD3_mapped",[41]],[[65115,65115],"disallowed_STD3_mapped",[123]],[[65116,65116],"disallowed_STD3_mapped",[125]],[[65117,65117],"mapped",[12308]],[[65118,65118],"mapped",[12309]],[[65119,65119],"disallowed_STD3_mapped",[35]],[[65120,65120],"disallowed_STD3_mapped",[38]],[[65121,65121],"disallowed_STD3_mapped",[42]],[[65122,65122],"disallowed_STD3_mapped",[43]],[[65123,65123],"mapped",[45]],[[65124,65124],"disallowed_STD3_mapped",[60]],[[65125,65125],"disallowed_STD3_mapped",[62]],[[65126,65126],"disallowed_STD3_mapped",[61]],[[65127,65127],"disallowed"],[[65128,65128],"disallowed_STD3_mapped",[92]],[[65129,65129],"disallowed_STD3_mapped",[36]],[[65130,65130],"disallowed_STD3_mapped",[37]],[[65131,65131],"disallowed_STD3_mapped",[64]],[[65132,65135],"disallowed"],[[65136,65136],"disallowed_STD3_mapped",[32,1611]],[[65137,65137],"mapped",[1600,1611]],[[65138,65138],"disallowed_STD3_mapped",[32,1612]],[[65139,65139],"valid"],[[65140,65140],"disallowed_STD3_mapped",[32,1613]],[[65141,65141],"disallowed"],[[65142,65142],"disallowed_STD3_mapped",[32,1614]],[[65143,65143],"mapped",[1600,1614]],[[65144,65144],"disallowed_STD3_mapped",[32,1615]],[[65145,65145],"mapped",[1600,1615]],[[65146,65146],"disallowed_STD3_mapped",[32,1616]],[[65147,65147],"mapped",[1600,1616]],[[65148,65148],"disallowed_STD3_mapped",[32,1617]],[[65149,65149],"mapped",[1600,1617]],[[65150,65150],"disallowed_STD3_mapped",[32,1618]],[[65151,65151],"mapped",[1600,1618]],[[65152,65152],"mapped",[1569]],[[65153,65154],"mapped",[1570]],[[65155,65156],"mapped",[1571]],[[65157,65158],"mapped",[1572]],[[65159,65160],"mapped",[1573]],[[65161,65164],"mapped",[1574]],[[65165,65166],"mapped",[1575]],[[65167,65170],"mapped",[1576]],[[65171,65172],"mapped",[1577]],[[65173,65176],"mapped",[1578]],[[65177,65180],"mapped",[1579]],[[65181,65184],"mapped",[1580]],[[65185,65188],"mapped",[1581]],[[65189,65192],"mapped",[1582]],[[65193,65194],"mapped",[1583]],[[65195,65196],"mapped",[1584]],[[65197,65198],"mapped",[1585]],[[65199,65200],"mapped",[1586]],[[65201,65204],"mapped",[1587]],[[65205,65208],"mapped",[1588]],[[65209,65212],"mapped",[1589]],[[65213,65216],"mapped",[1590]],[[65217,65220],"mapped",[1591]],[[65221,65224],"mapped",[1592]],[[65225,65228],"mapped",[1593]],[[65229,65232],"mapped",[1594]],[[65233,65236],"mapped",[1601]],[[65237,65240],"mapped",[1602]],[[65241,65244],"mapped",[1603]],[[65245,65248],"mapped",[1604]],[[65249,65252],"mapped",[1605]],[[65253,65256],"mapped",[1606]],[[65257,65260],"mapped",[1607]],[[65261,65262],"mapped",[1608]],[[65263,65264],"mapped",[1609]],[[65265,65268],"mapped",[1610]],[[65269,65270],"mapped",[1604,1570]],[[65271,65272],"mapped",[1604,1571]],[[65273,65274],"mapped",[1604,1573]],[[65275,65276],"mapped",[1604,1575]],[[65277,65278],"disallowed"],[[65279,65279],"ignored"],[[65280,65280],"disallowed"],[[65281,65281],"disallowed_STD3_mapped",[33]],[[65282,65282],"disallowed_STD3_mapped",[34]],[[65283,65283],"disallowed_STD3_mapped",[35]],[[65284,65284],"disallowed_STD3_mapped",[36]],[[65285,65285],"disallowed_STD3_mapped",[37]],[[65286,65286],"disallowed_STD3_mapped",[38]],[[65287,65287],"disallowed_STD3_mapped",[39]],[[65288,65288],"disallowed_STD3_mapped",[40]],[[65289,65289],"disallowed_STD3_mapped",[41]],[[65290,65290],"disallowed_STD3_mapped",[42]],[[65291,65291],"disallowed_STD3_mapped",[43]],[[65292,65292],"disallowed_STD3_mapped",[44]],[[65293,65293],"mapped",[45]],[[65294,65294],"mapped",[46]],[[65295,65295],"disallowed_STD3_mapped",[47]],[[65296,65296],"mapped",[48]],[[65297,65297],"mapped",[49]],[[65298,65298],"mapped",[50]],[[65299,65299],"mapped",[51]],[[65300,65300],"mapped",[52]],[[65301,65301],"mapped",[53]],[[65302,65302],"mapped",[54]],[[65303,65303],"mapped",[55]],[[65304,65304],"mapped",[56]],[[65305,65305],"mapped",[57]],[[65306,65306],"disallowed_STD3_mapped",[58]],[[65307,65307],"disallowed_STD3_mapped",[59]],[[65308,65308],"disallowed_STD3_mapped",[60]],[[65309,65309],"disallowed_STD3_mapped",[61]],[[65310,65310],"disallowed_STD3_mapped",[62]],[[65311,65311],"disallowed_STD3_mapped",[63]],[[65312,65312],"disallowed_STD3_mapped",[64]],[[65313,65313],"mapped",[97]],[[65314,65314],"mapped",[98]],[[65315,65315],"mapped",[99]],[[65316,65316],"mapped",[100]],[[65317,65317],"mapped",[101]],[[65318,65318],"mapped",[102]],[[65319,65319],"mapped",[103]],[[65320,65320],"mapped",[104]],[[65321,65321],"mapped",[105]],[[65322,65322],"mapped",[106]],[[65323,65323],"mapped",[107]],[[65324,65324],"mapped",[108]],[[65325,65325],"mapped",[109]],[[65326,65326],"mapped",[110]],[[65327,65327],"mapped",[111]],[[65328,65328],"mapped",[112]],[[65329,65329],"mapped",[113]],[[65330,65330],"mapped",[114]],[[65331,65331],"mapped",[115]],[[65332,65332],"mapped",[116]],[[65333,65333],"mapped",[117]],[[65334,65334],"mapped",[118]],[[65335,65335],"mapped",[119]],[[65336,65336],"mapped",[120]],[[65337,65337],"mapped",[121]],[[65338,65338],"mapped",[122]],[[65339,65339],"disallowed_STD3_mapped",[91]],[[65340,65340],"disallowed_STD3_mapped",[92]],[[65341,65341],"disallowed_STD3_mapped",[93]],[[65342,65342],"disallowed_STD3_mapped",[94]],[[65343,65343],"disallowed_STD3_mapped",[95]],[[65344,65344],"disallowed_STD3_mapped",[96]],[[65345,65345],"mapped",[97]],[[65346,65346],"mapped",[98]],[[65347,65347],"mapped",[99]],[[65348,65348],"mapped",[100]],[[65349,65349],"mapped",[101]],[[65350,65350],"mapped",[102]],[[65351,65351],"mapped",[103]],[[65352,65352],"mapped",[104]],[[65353,65353],"mapped",[105]],[[65354,65354],"mapped",[106]],[[65355,65355],"mapped",[107]],[[65356,65356],"mapped",[108]],[[65357,65357],"mapped",[109]],[[65358,65358],"mapped",[110]],[[65359,65359],"mapped",[111]],[[65360,65360],"mapped",[112]],[[65361,65361],"mapped",[113]],[[65362,65362],"mapped",[114]],[[65363,65363],"mapped",[115]],[[65364,65364],"mapped",[116]],[[65365,65365],"mapped",[117]],[[65366,65366],"mapped",[118]],[[65367,65367],"mapped",[119]],[[65368,65368],"mapped",[120]],[[65369,65369],"mapped",[121]],[[65370,65370],"mapped",[122]],[[65371,65371],"disallowed_STD3_mapped",[123]],[[65372,65372],"disallowed_STD3_mapped",[124]],[[65373,65373],"disallowed_STD3_mapped",[125]],[[65374,65374],"disallowed_STD3_mapped",[126]],[[65375,65375],"mapped",[10629]],[[65376,65376],"mapped",[10630]],[[65377,65377],"mapped",[46]],[[65378,65378],"mapped",[12300]],[[65379,65379],"mapped",[12301]],[[65380,65380],"mapped",[12289]],[[65381,65381],"mapped",[12539]],[[65382,65382],"mapped",[12530]],[[65383,65383],"mapped",[12449]],[[65384,65384],"mapped",[12451]],[[65385,65385],"mapped",[12453]],[[65386,65386],"mapped",[12455]],[[65387,65387],"mapped",[12457]],[[65388,65388],"mapped",[12515]],[[65389,65389],"mapped",[12517]],[[65390,65390],"mapped",[12519]],[[65391,65391],"mapped",[12483]],[[65392,65392],"mapped",[12540]],[[65393,65393],"mapped",[12450]],[[65394,65394],"mapped",[12452]],[[65395,65395],"mapped",[12454]],[[65396,65396],"mapped",[12456]],[[65397,65397],"mapped",[12458]],[[65398,65398],"mapped",[12459]],[[65399,65399],"mapped",[12461]],[[65400,65400],"mapped",[12463]],[[65401,65401],"mapped",[12465]],[[65402,65402],"mapped",[12467]],[[65403,65403],"mapped",[12469]],[[65404,65404],"mapped",[12471]],[[65405,65405],"mapped",[12473]],[[65406,65406],"mapped",[12475]],[[65407,65407],"mapped",[12477]],[[65408,65408],"mapped",[12479]],[[65409,65409],"mapped",[12481]],[[65410,65410],"mapped",[12484]],[[65411,65411],"mapped",[12486]],[[65412,65412],"mapped",[12488]],[[65413,65413],"mapped",[12490]],[[65414,65414],"mapped",[12491]],[[65415,65415],"mapped",[12492]],[[65416,65416],"mapped",[12493]],[[65417,65417],"mapped",[12494]],[[65418,65418],"mapped",[12495]],[[65419,65419],"mapped",[12498]],[[65420,65420],"mapped",[12501]],[[65421,65421],"mapped",[12504]],[[65422,65422],"mapped",[12507]],[[65423,65423],"mapped",[12510]],[[65424,65424],"mapped",[12511]],[[65425,65425],"mapped",[12512]],[[65426,65426],"mapped",[12513]],[[65427,65427],"mapped",[12514]],[[65428,65428],"mapped",[12516]],[[65429,65429],"mapped",[12518]],[[65430,65430],"mapped",[12520]],[[65431,65431],"mapped",[12521]],[[65432,65432],"mapped",[12522]],[[65433,65433],"mapped",[12523]],[[65434,65434],"mapped",[12524]],[[65435,65435],"mapped",[12525]],[[65436,65436],"mapped",[12527]],[[65437,65437],"mapped",[12531]],[[65438,65438],"mapped",[12441]],[[65439,65439],"mapped",[12442]],[[65440,65440],"disallowed"],[[65441,65441],"mapped",[4352]],[[65442,65442],"mapped",[4353]],[[65443,65443],"mapped",[4522]],[[65444,65444],"mapped",[4354]],[[65445,65445],"mapped",[4524]],[[65446,65446],"mapped",[4525]],[[65447,65447],"mapped",[4355]],[[65448,65448],"mapped",[4356]],[[65449,65449],"mapped",[4357]],[[65450,65450],"mapped",[4528]],[[65451,65451],"mapped",[4529]],[[65452,65452],"mapped",[4530]],[[65453,65453],"mapped",[4531]],[[65454,65454],"mapped",[4532]],[[65455,65455],"mapped",[4533]],[[65456,65456],"mapped",[4378]],[[65457,65457],"mapped",[4358]],[[65458,65458],"mapped",[4359]],[[65459,65459],"mapped",[4360]],[[65460,65460],"mapped",[4385]],[[65461,65461],"mapped",[4361]],[[65462,65462],"mapped",[4362]],[[65463,65463],"mapped",[4363]],[[65464,65464],"mapped",[4364]],[[65465,65465],"mapped",[4365]],[[65466,65466],"mapped",[4366]],[[65467,65467],"mapped",[4367]],[[65468,65468],"mapped",[4368]],[[65469,65469],"mapped",[4369]],[[65470,65470],"mapped",[4370]],[[65471,65473],"disallowed"],[[65474,65474],"mapped",[4449]],[[65475,65475],"mapped",[4450]],[[65476,65476],"mapped",[4451]],[[65477,65477],"mapped",[4452]],[[65478,65478],"mapped",[4453]],[[65479,65479],"mapped",[4454]],[[65480,65481],"disallowed"],[[65482,65482],"mapped",[4455]],[[65483,65483],"mapped",[4456]],[[65484,65484],"mapped",[4457]],[[65485,65485],"mapped",[4458]],[[65486,65486],"mapped",[4459]],[[65487,65487],"mapped",[4460]],[[65488,65489],"disallowed"],[[65490,65490],"mapped",[4461]],[[65491,65491],"mapped",[4462]],[[65492,65492],"mapped",[4463]],[[65493,65493],"mapped",[4464]],[[65494,65494],"mapped",[4465]],[[65495,65495],"mapped",[4466]],[[65496,65497],"disallowed"],[[65498,65498],"mapped",[4467]],[[65499,65499],"mapped",[4468]],[[65500,65500],"mapped",[4469]],[[65501,65503],"disallowed"],[[65504,65504],"mapped",[162]],[[65505,65505],"mapped",[163]],[[65506,65506],"mapped",[172]],[[65507,65507],"disallowed_STD3_mapped",[32,772]],[[65508,65508],"mapped",[166]],[[65509,65509],"mapped",[165]],[[65510,65510],"mapped",[8361]],[[65511,65511],"disallowed"],[[65512,65512],"mapped",[9474]],[[65513,65513],"mapped",[8592]],[[65514,65514],"mapped",[8593]],[[65515,65515],"mapped",[8594]],[[65516,65516],"mapped",[8595]],[[65517,65517],"mapped",[9632]],[[65518,65518],"mapped",[9675]],[[65519,65528],"disallowed"],[[65529,65531],"disallowed"],[[65532,65532],"disallowed"],[[65533,65533],"disallowed"],[[65534,65535],"disallowed"],[[65536,65547],"valid"],[[65548,65548],"disallowed"],[[65549,65574],"valid"],[[65575,65575],"disallowed"],[[65576,65594],"valid"],[[65595,65595],"disallowed"],[[65596,65597],"valid"],[[65598,65598],"disallowed"],[[65599,65613],"valid"],[[65614,65615],"disallowed"],[[65616,65629],"valid"],[[65630,65663],"disallowed"],[[65664,65786],"valid"],[[65787,65791],"disallowed"],[[65792,65794],"valid",[],"NV8"],[[65795,65798],"disallowed"],[[65799,65843],"valid",[],"NV8"],[[65844,65846],"disallowed"],[[65847,65855],"valid",[],"NV8"],[[65856,65930],"valid",[],"NV8"],[[65931,65932],"valid",[],"NV8"],[[65933,65935],"disallowed"],[[65936,65947],"valid",[],"NV8"],[[65948,65951],"disallowed"],[[65952,65952],"valid",[],"NV8"],[[65953,65999],"disallowed"],[[66e3,66044],"valid",[],"NV8"],[[66045,66045],"valid"],[[66046,66175],"disallowed"],[[66176,66204],"valid"],[[66205,66207],"disallowed"],[[66208,66256],"valid"],[[66257,66271],"disallowed"],[[66272,66272],"valid"],[[66273,66299],"valid",[],"NV8"],[[66300,66303],"disallowed"],[[66304,66334],"valid"],[[66335,66335],"valid"],[[66336,66339],"valid",[],"NV8"],[[66340,66351],"disallowed"],[[66352,66368],"valid"],[[66369,66369],"valid",[],"NV8"],[[66370,66377],"valid"],[[66378,66378],"valid",[],"NV8"],[[66379,66383],"disallowed"],[[66384,66426],"valid"],[[66427,66431],"disallowed"],[[66432,66461],"valid"],[[66462,66462],"disallowed"],[[66463,66463],"valid",[],"NV8"],[[66464,66499],"valid"],[[66500,66503],"disallowed"],[[66504,66511],"valid"],[[66512,66517],"valid",[],"NV8"],[[66518,66559],"disallowed"],[[66560,66560],"mapped",[66600]],[[66561,66561],"mapped",[66601]],[[66562,66562],"mapped",[66602]],[[66563,66563],"mapped",[66603]],[[66564,66564],"mapped",[66604]],[[66565,66565],"mapped",[66605]],[[66566,66566],"mapped",[66606]],[[66567,66567],"mapped",[66607]],[[66568,66568],"mapped",[66608]],[[66569,66569],"mapped",[66609]],[[66570,66570],"mapped",[66610]],[[66571,66571],"mapped",[66611]],[[66572,66572],"mapped",[66612]],[[66573,66573],"mapped",[66613]],[[66574,66574],"mapped",[66614]],[[66575,66575],"mapped",[66615]],[[66576,66576],"mapped",[66616]],[[66577,66577],"mapped",[66617]],[[66578,66578],"mapped",[66618]],[[66579,66579],"mapped",[66619]],[[66580,66580],"mapped",[66620]],[[66581,66581],"mapped",[66621]],[[66582,66582],"mapped",[66622]],[[66583,66583],"mapped",[66623]],[[66584,66584],"mapped",[66624]],[[66585,66585],"mapped",[66625]],[[66586,66586],"mapped",[66626]],[[66587,66587],"mapped",[66627]],[[66588,66588],"mapped",[66628]],[[66589,66589],"mapped",[66629]],[[66590,66590],"mapped",[66630]],[[66591,66591],"mapped",[66631]],[[66592,66592],"mapped",[66632]],[[66593,66593],"mapped",[66633]],[[66594,66594],"mapped",[66634]],[[66595,66595],"mapped",[66635]],[[66596,66596],"mapped",[66636]],[[66597,66597],"mapped",[66637]],[[66598,66598],"mapped",[66638]],[[66599,66599],"mapped",[66639]],[[66600,66637],"valid"],[[66638,66717],"valid"],[[66718,66719],"disallowed"],[[66720,66729],"valid"],[[66730,66815],"disallowed"],[[66816,66855],"valid"],[[66856,66863],"disallowed"],[[66864,66915],"valid"],[[66916,66926],"disallowed"],[[66927,66927],"valid",[],"NV8"],[[66928,67071],"disallowed"],[[67072,67382],"valid"],[[67383,67391],"disallowed"],[[67392,67413],"valid"],[[67414,67423],"disallowed"],[[67424,67431],"valid"],[[67432,67583],"disallowed"],[[67584,67589],"valid"],[[67590,67591],"disallowed"],[[67592,67592],"valid"],[[67593,67593],"disallowed"],[[67594,67637],"valid"],[[67638,67638],"disallowed"],[[67639,67640],"valid"],[[67641,67643],"disallowed"],[[67644,67644],"valid"],[[67645,67646],"disallowed"],[[67647,67647],"valid"],[[67648,67669],"valid"],[[67670,67670],"disallowed"],[[67671,67679],"valid",[],"NV8"],[[67680,67702],"valid"],[[67703,67711],"valid",[],"NV8"],[[67712,67742],"valid"],[[67743,67750],"disallowed"],[[67751,67759],"valid",[],"NV8"],[[67760,67807],"disallowed"],[[67808,67826],"valid"],[[67827,67827],"disallowed"],[[67828,67829],"valid"],[[67830,67834],"disallowed"],[[67835,67839],"valid",[],"NV8"],[[67840,67861],"valid"],[[67862,67865],"valid",[],"NV8"],[[67866,67867],"valid",[],"NV8"],[[67868,67870],"disallowed"],[[67871,67871],"valid",[],"NV8"],[[67872,67897],"valid"],[[67898,67902],"disallowed"],[[67903,67903],"valid",[],"NV8"],[[67904,67967],"disallowed"],[[67968,68023],"valid"],[[68024,68027],"disallowed"],[[68028,68029],"valid",[],"NV8"],[[68030,68031],"valid"],[[68032,68047],"valid",[],"NV8"],[[68048,68049],"disallowed"],[[68050,68095],"valid",[],"NV8"],[[68096,68099],"valid"],[[68100,68100],"disallowed"],[[68101,68102],"valid"],[[68103,68107],"disallowed"],[[68108,68115],"valid"],[[68116,68116],"disallowed"],[[68117,68119],"valid"],[[68120,68120],"disallowed"],[[68121,68147],"valid"],[[68148,68151],"disallowed"],[[68152,68154],"valid"],[[68155,68158],"disallowed"],[[68159,68159],"valid"],[[68160,68167],"valid",[],"NV8"],[[68168,68175],"disallowed"],[[68176,68184],"valid",[],"NV8"],[[68185,68191],"disallowed"],[[68192,68220],"valid"],[[68221,68223],"valid",[],"NV8"],[[68224,68252],"valid"],[[68253,68255],"valid",[],"NV8"],[[68256,68287],"disallowed"],[[68288,68295],"valid"],[[68296,68296],"valid",[],"NV8"],[[68297,68326],"valid"],[[68327,68330],"disallowed"],[[68331,68342],"valid",[],"NV8"],[[68343,68351],"disallowed"],[[68352,68405],"valid"],[[68406,68408],"disallowed"],[[68409,68415],"valid",[],"NV8"],[[68416,68437],"valid"],[[68438,68439],"disallowed"],[[68440,68447],"valid",[],"NV8"],[[68448,68466],"valid"],[[68467,68471],"disallowed"],[[68472,68479],"valid",[],"NV8"],[[68480,68497],"valid"],[[68498,68504],"disallowed"],[[68505,68508],"valid",[],"NV8"],[[68509,68520],"disallowed"],[[68521,68527],"valid",[],"NV8"],[[68528,68607],"disallowed"],[[68608,68680],"valid"],[[68681,68735],"disallowed"],[[68736,68736],"mapped",[68800]],[[68737,68737],"mapped",[68801]],[[68738,68738],"mapped",[68802]],[[68739,68739],"mapped",[68803]],[[68740,68740],"mapped",[68804]],[[68741,68741],"mapped",[68805]],[[68742,68742],"mapped",[68806]],[[68743,68743],"mapped",[68807]],[[68744,68744],"mapped",[68808]],[[68745,68745],"mapped",[68809]],[[68746,68746],"mapped",[68810]],[[68747,68747],"mapped",[68811]],[[68748,68748],"mapped",[68812]],[[68749,68749],"mapped",[68813]],[[68750,68750],"mapped",[68814]],[[68751,68751],"mapped",[68815]],[[68752,68752],"mapped",[68816]],[[68753,68753],"mapped",[68817]],[[68754,68754],"mapped",[68818]],[[68755,68755],"mapped",[68819]],[[68756,68756],"mapped",[68820]],[[68757,68757],"mapped",[68821]],[[68758,68758],"mapped",[68822]],[[68759,68759],"mapped",[68823]],[[68760,68760],"mapped",[68824]],[[68761,68761],"mapped",[68825]],[[68762,68762],"mapped",[68826]],[[68763,68763],"mapped",[68827]],[[68764,68764],"mapped",[68828]],[[68765,68765],"mapped",[68829]],[[68766,68766],"mapped",[68830]],[[68767,68767],"mapped",[68831]],[[68768,68768],"mapped",[68832]],[[68769,68769],"mapped",[68833]],[[68770,68770],"mapped",[68834]],[[68771,68771],"mapped",[68835]],[[68772,68772],"mapped",[68836]],[[68773,68773],"mapped",[68837]],[[68774,68774],"mapped",[68838]],[[68775,68775],"mapped",[68839]],[[68776,68776],"mapped",[68840]],[[68777,68777],"mapped",[68841]],[[68778,68778],"mapped",[68842]],[[68779,68779],"mapped",[68843]],[[68780,68780],"mapped",[68844]],[[68781,68781],"mapped",[68845]],[[68782,68782],"mapped",[68846]],[[68783,68783],"mapped",[68847]],[[68784,68784],"mapped",[68848]],[[68785,68785],"mapped",[68849]],[[68786,68786],"mapped",[68850]],[[68787,68799],"disallowed"],[[68800,68850],"valid"],[[68851,68857],"disallowed"],[[68858,68863],"valid",[],"NV8"],[[68864,69215],"disallowed"],[[69216,69246],"valid",[],"NV8"],[[69247,69631],"disallowed"],[[69632,69702],"valid"],[[69703,69709],"valid",[],"NV8"],[[69710,69713],"disallowed"],[[69714,69733],"valid",[],"NV8"],[[69734,69743],"valid"],[[69744,69758],"disallowed"],[[69759,69759],"valid"],[[69760,69818],"valid"],[[69819,69820],"valid",[],"NV8"],[[69821,69821],"disallowed"],[[69822,69825],"valid",[],"NV8"],[[69826,69839],"disallowed"],[[69840,69864],"valid"],[[69865,69871],"disallowed"],[[69872,69881],"valid"],[[69882,69887],"disallowed"],[[69888,69940],"valid"],[[69941,69941],"disallowed"],[[69942,69951],"valid"],[[69952,69955],"valid",[],"NV8"],[[69956,69967],"disallowed"],[[69968,70003],"valid"],[[70004,70005],"valid",[],"NV8"],[[70006,70006],"valid"],[[70007,70015],"disallowed"],[[70016,70084],"valid"],[[70085,70088],"valid",[],"NV8"],[[70089,70089],"valid",[],"NV8"],[[70090,70092],"valid"],[[70093,70093],"valid",[],"NV8"],[[70094,70095],"disallowed"],[[70096,70105],"valid"],[[70106,70106],"valid"],[[70107,70107],"valid",[],"NV8"],[[70108,70108],"valid"],[[70109,70111],"valid",[],"NV8"],[[70112,70112],"disallowed"],[[70113,70132],"valid",[],"NV8"],[[70133,70143],"disallowed"],[[70144,70161],"valid"],[[70162,70162],"disallowed"],[[70163,70199],"valid"],[[70200,70205],"valid",[],"NV8"],[[70206,70271],"disallowed"],[[70272,70278],"valid"],[[70279,70279],"disallowed"],[[70280,70280],"valid"],[[70281,70281],"disallowed"],[[70282,70285],"valid"],[[70286,70286],"disallowed"],[[70287,70301],"valid"],[[70302,70302],"disallowed"],[[70303,70312],"valid"],[[70313,70313],"valid",[],"NV8"],[[70314,70319],"disallowed"],[[70320,70378],"valid"],[[70379,70383],"disallowed"],[[70384,70393],"valid"],[[70394,70399],"disallowed"],[[70400,70400],"valid"],[[70401,70403],"valid"],[[70404,70404],"disallowed"],[[70405,70412],"valid"],[[70413,70414],"disallowed"],[[70415,70416],"valid"],[[70417,70418],"disallowed"],[[70419,70440],"valid"],[[70441,70441],"disallowed"],[[70442,70448],"valid"],[[70449,70449],"disallowed"],[[70450,70451],"valid"],[[70452,70452],"disallowed"],[[70453,70457],"valid"],[[70458,70459],"disallowed"],[[70460,70468],"valid"],[[70469,70470],"disallowed"],[[70471,70472],"valid"],[[70473,70474],"disallowed"],[[70475,70477],"valid"],[[70478,70479],"disallowed"],[[70480,70480],"valid"],[[70481,70486],"disallowed"],[[70487,70487],"valid"],[[70488,70492],"disallowed"],[[70493,70499],"valid"],[[70500,70501],"disallowed"],[[70502,70508],"valid"],[[70509,70511],"disallowed"],[[70512,70516],"valid"],[[70517,70783],"disallowed"],[[70784,70853],"valid"],[[70854,70854],"valid",[],"NV8"],[[70855,70855],"valid"],[[70856,70863],"disallowed"],[[70864,70873],"valid"],[[70874,71039],"disallowed"],[[71040,71093],"valid"],[[71094,71095],"disallowed"],[[71096,71104],"valid"],[[71105,71113],"valid",[],"NV8"],[[71114,71127],"valid",[],"NV8"],[[71128,71133],"valid"],[[71134,71167],"disallowed"],[[71168,71232],"valid"],[[71233,71235],"valid",[],"NV8"],[[71236,71236],"valid"],[[71237,71247],"disallowed"],[[71248,71257],"valid"],[[71258,71295],"disallowed"],[[71296,71351],"valid"],[[71352,71359],"disallowed"],[[71360,71369],"valid"],[[71370,71423],"disallowed"],[[71424,71449],"valid"],[[71450,71452],"disallowed"],[[71453,71467],"valid"],[[71468,71471],"disallowed"],[[71472,71481],"valid"],[[71482,71487],"valid",[],"NV8"],[[71488,71839],"disallowed"],[[71840,71840],"mapped",[71872]],[[71841,71841],"mapped",[71873]],[[71842,71842],"mapped",[71874]],[[71843,71843],"mapped",[71875]],[[71844,71844],"mapped",[71876]],[[71845,71845],"mapped",[71877]],[[71846,71846],"mapped",[71878]],[[71847,71847],"mapped",[71879]],[[71848,71848],"mapped",[71880]],[[71849,71849],"mapped",[71881]],[[71850,71850],"mapped",[71882]],[[71851,71851],"mapped",[71883]],[[71852,71852],"mapped",[71884]],[[71853,71853],"mapped",[71885]],[[71854,71854],"mapped",[71886]],[[71855,71855],"mapped",[71887]],[[71856,71856],"mapped",[71888]],[[71857,71857],"mapped",[71889]],[[71858,71858],"mapped",[71890]],[[71859,71859],"mapped",[71891]],[[71860,71860],"mapped",[71892]],[[71861,71861],"mapped",[71893]],[[71862,71862],"mapped",[71894]],[[71863,71863],"mapped",[71895]],[[71864,71864],"mapped",[71896]],[[71865,71865],"mapped",[71897]],[[71866,71866],"mapped",[71898]],[[71867,71867],"mapped",[71899]],[[71868,71868],"mapped",[71900]],[[71869,71869],"mapped",[71901]],[[71870,71870],"mapped",[71902]],[[71871,71871],"mapped",[71903]],[[71872,71913],"valid"],[[71914,71922],"valid",[],"NV8"],[[71923,71934],"disallowed"],[[71935,71935],"valid"],[[71936,72383],"disallowed"],[[72384,72440],"valid"],[[72441,73727],"disallowed"],[[73728,74606],"valid"],[[74607,74648],"valid"],[[74649,74649],"valid"],[[74650,74751],"disallowed"],[[74752,74850],"valid",[],"NV8"],[[74851,74862],"valid",[],"NV8"],[[74863,74863],"disallowed"],[[74864,74867],"valid",[],"NV8"],[[74868,74868],"valid",[],"NV8"],[[74869,74879],"disallowed"],[[74880,75075],"valid"],[[75076,77823],"disallowed"],[[77824,78894],"valid"],[[78895,82943],"disallowed"],[[82944,83526],"valid"],[[83527,92159],"disallowed"],[[92160,92728],"valid"],[[92729,92735],"disallowed"],[[92736,92766],"valid"],[[92767,92767],"disallowed"],[[92768,92777],"valid"],[[92778,92781],"disallowed"],[[92782,92783],"valid",[],"NV8"],[[92784,92879],"disallowed"],[[92880,92909],"valid"],[[92910,92911],"disallowed"],[[92912,92916],"valid"],[[92917,92917],"valid",[],"NV8"],[[92918,92927],"disallowed"],[[92928,92982],"valid"],[[92983,92991],"valid",[],"NV8"],[[92992,92995],"valid"],[[92996,92997],"valid",[],"NV8"],[[92998,93007],"disallowed"],[[93008,93017],"valid"],[[93018,93018],"disallowed"],[[93019,93025],"valid",[],"NV8"],[[93026,93026],"disallowed"],[[93027,93047],"valid"],[[93048,93052],"disallowed"],[[93053,93071],"valid"],[[93072,93951],"disallowed"],[[93952,94020],"valid"],[[94021,94031],"disallowed"],[[94032,94078],"valid"],[[94079,94094],"disallowed"],[[94095,94111],"valid"],[[94112,110591],"disallowed"],[[110592,110593],"valid"],[[110594,113663],"disallowed"],[[113664,113770],"valid"],[[113771,113775],"disallowed"],[[113776,113788],"valid"],[[113789,113791],"disallowed"],[[113792,113800],"valid"],[[113801,113807],"disallowed"],[[113808,113817],"valid"],[[113818,113819],"disallowed"],[[113820,113820],"valid",[],"NV8"],[[113821,113822],"valid"],[[113823,113823],"valid",[],"NV8"],[[113824,113827],"ignored"],[[113828,118783],"disallowed"],[[118784,119029],"valid",[],"NV8"],[[119030,119039],"disallowed"],[[119040,119078],"valid",[],"NV8"],[[119079,119080],"disallowed"],[[119081,119081],"valid",[],"NV8"],[[119082,119133],"valid",[],"NV8"],[[119134,119134],"mapped",[119127,119141]],[[119135,119135],"mapped",[119128,119141]],[[119136,119136],"mapped",[119128,119141,119150]],[[119137,119137],"mapped",[119128,119141,119151]],[[119138,119138],"mapped",[119128,119141,119152]],[[119139,119139],"mapped",[119128,119141,119153]],[[119140,119140],"mapped",[119128,119141,119154]],[[119141,119154],"valid",[],"NV8"],[[119155,119162],"disallowed"],[[119163,119226],"valid",[],"NV8"],[[119227,119227],"mapped",[119225,119141]],[[119228,119228],"mapped",[119226,119141]],[[119229,119229],"mapped",[119225,119141,119150]],[[119230,119230],"mapped",[119226,119141,119150]],[[119231,119231],"mapped",[119225,119141,119151]],[[119232,119232],"mapped",[119226,119141,119151]],[[119233,119261],"valid",[],"NV8"],[[119262,119272],"valid",[],"NV8"],[[119273,119295],"disallowed"],[[119296,119365],"valid",[],"NV8"],[[119366,119551],"disallowed"],[[119552,119638],"valid",[],"NV8"],[[119639,119647],"disallowed"],[[119648,119665],"valid",[],"NV8"],[[119666,119807],"disallowed"],[[119808,119808],"mapped",[97]],[[119809,119809],"mapped",[98]],[[119810,119810],"mapped",[99]],[[119811,119811],"mapped",[100]],[[119812,119812],"mapped",[101]],[[119813,119813],"mapped",[102]],[[119814,119814],"mapped",[103]],[[119815,119815],"mapped",[104]],[[119816,119816],"mapped",[105]],[[119817,119817],"mapped",[106]],[[119818,119818],"mapped",[107]],[[119819,119819],"mapped",[108]],[[119820,119820],"mapped",[109]],[[119821,119821],"mapped",[110]],[[119822,119822],"mapped",[111]],[[119823,119823],"mapped",[112]],[[119824,119824],"mapped",[113]],[[119825,119825],"mapped",[114]],[[119826,119826],"mapped",[115]],[[119827,119827],"mapped",[116]],[[119828,119828],"mapped",[117]],[[119829,119829],"mapped",[118]],[[119830,119830],"mapped",[119]],[[119831,119831],"mapped",[120]],[[119832,119832],"mapped",[121]],[[119833,119833],"mapped",[122]],[[119834,119834],"mapped",[97]],[[119835,119835],"mapped",[98]],[[119836,119836],"mapped",[99]],[[119837,119837],"mapped",[100]],[[119838,119838],"mapped",[101]],[[119839,119839],"mapped",[102]],[[119840,119840],"mapped",[103]],[[119841,119841],"mapped",[104]],[[119842,119842],"mapped",[105]],[[119843,119843],"mapped",[106]],[[119844,119844],"mapped",[107]],[[119845,119845],"mapped",[108]],[[119846,119846],"mapped",[109]],[[119847,119847],"mapped",[110]],[[119848,119848],"mapped",[111]],[[119849,119849],"mapped",[112]],[[119850,119850],"mapped",[113]],[[119851,119851],"mapped",[114]],[[119852,119852],"mapped",[115]],[[119853,119853],"mapped",[116]],[[119854,119854],"mapped",[117]],[[119855,119855],"mapped",[118]],[[119856,119856],"mapped",[119]],[[119857,119857],"mapped",[120]],[[119858,119858],"mapped",[121]],[[119859,119859],"mapped",[122]],[[119860,119860],"mapped",[97]],[[119861,119861],"mapped",[98]],[[119862,119862],"mapped",[99]],[[119863,119863],"mapped",[100]],[[119864,119864],"mapped",[101]],[[119865,119865],"mapped",[102]],[[119866,119866],"mapped",[103]],[[119867,119867],"mapped",[104]],[[119868,119868],"mapped",[105]],[[119869,119869],"mapped",[106]],[[119870,119870],"mapped",[107]],[[119871,119871],"mapped",[108]],[[119872,119872],"mapped",[109]],[[119873,119873],"mapped",[110]],[[119874,119874],"mapped",[111]],[[119875,119875],"mapped",[112]],[[119876,119876],"mapped",[113]],[[119877,119877],"mapped",[114]],[[119878,119878],"mapped",[115]],[[119879,119879],"mapped",[116]],[[119880,119880],"mapped",[117]],[[119881,119881],"mapped",[118]],[[119882,119882],"mapped",[119]],[[119883,119883],"mapped",[120]],[[119884,119884],"mapped",[121]],[[119885,119885],"mapped",[122]],[[119886,119886],"mapped",[97]],[[119887,119887],"mapped",[98]],[[119888,119888],"mapped",[99]],[[119889,119889],"mapped",[100]],[[119890,119890],"mapped",[101]],[[119891,119891],"mapped",[102]],[[119892,119892],"mapped",[103]],[[119893,119893],"disallowed"],[[119894,119894],"mapped",[105]],[[119895,119895],"mapped",[106]],[[119896,119896],"mapped",[107]],[[119897,119897],"mapped",[108]],[[119898,119898],"mapped",[109]],[[119899,119899],"mapped",[110]],[[119900,119900],"mapped",[111]],[[119901,119901],"mapped",[112]],[[119902,119902],"mapped",[113]],[[119903,119903],"mapped",[114]],[[119904,119904],"mapped",[115]],[[119905,119905],"mapped",[116]],[[119906,119906],"mapped",[117]],[[119907,119907],"mapped",[118]],[[119908,119908],"mapped",[119]],[[119909,119909],"mapped",[120]],[[119910,119910],"mapped",[121]],[[119911,119911],"mapped",[122]],[[119912,119912],"mapped",[97]],[[119913,119913],"mapped",[98]],[[119914,119914],"mapped",[99]],[[119915,119915],"mapped",[100]],[[119916,119916],"mapped",[101]],[[119917,119917],"mapped",[102]],[[119918,119918],"mapped",[103]],[[119919,119919],"mapped",[104]],[[119920,119920],"mapped",[105]],[[119921,119921],"mapped",[106]],[[119922,119922],"mapped",[107]],[[119923,119923],"mapped",[108]],[[119924,119924],"mapped",[109]],[[119925,119925],"mapped",[110]],[[119926,119926],"mapped",[111]],[[119927,119927],"mapped",[112]],[[119928,119928],"mapped",[113]],[[119929,119929],"mapped",[114]],[[119930,119930],"mapped",[115]],[[119931,119931],"mapped",[116]],[[119932,119932],"mapped",[117]],[[119933,119933],"mapped",[118]],[[119934,119934],"mapped",[119]],[[119935,119935],"mapped",[120]],[[119936,119936],"mapped",[121]],[[119937,119937],"mapped",[122]],[[119938,119938],"mapped",[97]],[[119939,119939],"mapped",[98]],[[119940,119940],"mapped",[99]],[[119941,119941],"mapped",[100]],[[119942,119942],"mapped",[101]],[[119943,119943],"mapped",[102]],[[119944,119944],"mapped",[103]],[[119945,119945],"mapped",[104]],[[119946,119946],"mapped",[105]],[[119947,119947],"mapped",[106]],[[119948,119948],"mapped",[107]],[[119949,119949],"mapped",[108]],[[119950,119950],"mapped",[109]],[[119951,119951],"mapped",[110]],[[119952,119952],"mapped",[111]],[[119953,119953],"mapped",[112]],[[119954,119954],"mapped",[113]],[[119955,119955],"mapped",[114]],[[119956,119956],"mapped",[115]],[[119957,119957],"mapped",[116]],[[119958,119958],"mapped",[117]],[[119959,119959],"mapped",[118]],[[119960,119960],"mapped",[119]],[[119961,119961],"mapped",[120]],[[119962,119962],"mapped",[121]],[[119963,119963],"mapped",[122]],[[119964,119964],"mapped",[97]],[[119965,119965],"disallowed"],[[119966,119966],"mapped",[99]],[[119967,119967],"mapped",[100]],[[119968,119969],"disallowed"],[[119970,119970],"mapped",[103]],[[119971,119972],"disallowed"],[[119973,119973],"mapped",[106]],[[119974,119974],"mapped",[107]],[[119975,119976],"disallowed"],[[119977,119977],"mapped",[110]],[[119978,119978],"mapped",[111]],[[119979,119979],"mapped",[112]],[[119980,119980],"mapped",[113]],[[119981,119981],"disallowed"],[[119982,119982],"mapped",[115]],[[119983,119983],"mapped",[116]],[[119984,119984],"mapped",[117]],[[119985,119985],"mapped",[118]],[[119986,119986],"mapped",[119]],[[119987,119987],"mapped",[120]],[[119988,119988],"mapped",[121]],[[119989,119989],"mapped",[122]],[[119990,119990],"mapped",[97]],[[119991,119991],"mapped",[98]],[[119992,119992],"mapped",[99]],[[119993,119993],"mapped",[100]],[[119994,119994],"disallowed"],[[119995,119995],"mapped",[102]],[[119996,119996],"disallowed"],[[119997,119997],"mapped",[104]],[[119998,119998],"mapped",[105]],[[119999,119999],"mapped",[106]],[[12e4,12e4],"mapped",[107]],[[120001,120001],"mapped",[108]],[[120002,120002],"mapped",[109]],[[120003,120003],"mapped",[110]],[[120004,120004],"disallowed"],[[120005,120005],"mapped",[112]],[[120006,120006],"mapped",[113]],[[120007,120007],"mapped",[114]],[[120008,120008],"mapped",[115]],[[120009,120009],"mapped",[116]],[[120010,120010],"mapped",[117]],[[120011,120011],"mapped",[118]],[[120012,120012],"mapped",[119]],[[120013,120013],"mapped",[120]],[[120014,120014],"mapped",[121]],[[120015,120015],"mapped",[122]],[[120016,120016],"mapped",[97]],[[120017,120017],"mapped",[98]],[[120018,120018],"mapped",[99]],[[120019,120019],"mapped",[100]],[[120020,120020],"mapped",[101]],[[120021,120021],"mapped",[102]],[[120022,120022],"mapped",[103]],[[120023,120023],"mapped",[104]],[[120024,120024],"mapped",[105]],[[120025,120025],"mapped",[106]],[[120026,120026],"mapped",[107]],[[120027,120027],"mapped",[108]],[[120028,120028],"mapped",[109]],[[120029,120029],"mapped",[110]],[[120030,120030],"mapped",[111]],[[120031,120031],"mapped",[112]],[[120032,120032],"mapped",[113]],[[120033,120033],"mapped",[114]],[[120034,120034],"mapped",[115]],[[120035,120035],"mapped",[116]],[[120036,120036],"mapped",[117]],[[120037,120037],"mapped",[118]],[[120038,120038],"mapped",[119]],[[120039,120039],"mapped",[120]],[[120040,120040],"mapped",[121]],[[120041,120041],"mapped",[122]],[[120042,120042],"mapped",[97]],[[120043,120043],"mapped",[98]],[[120044,120044],"mapped",[99]],[[120045,120045],"mapped",[100]],[[120046,120046],"mapped",[101]],[[120047,120047],"mapped",[102]],[[120048,120048],"mapped",[103]],[[120049,120049],"mapped",[104]],[[120050,120050],"mapped",[105]],[[120051,120051],"mapped",[106]],[[120052,120052],"mapped",[107]],[[120053,120053],"mapped",[108]],[[120054,120054],"mapped",[109]],[[120055,120055],"mapped",[110]],[[120056,120056],"mapped",[111]],[[120057,120057],"mapped",[112]],[[120058,120058],"mapped",[113]],[[120059,120059],"mapped",[114]],[[120060,120060],"mapped",[115]],[[120061,120061],"mapped",[116]],[[120062,120062],"mapped",[117]],[[120063,120063],"mapped",[118]],[[120064,120064],"mapped",[119]],[[120065,120065],"mapped",[120]],[[120066,120066],"mapped",[121]],[[120067,120067],"mapped",[122]],[[120068,120068],"mapped",[97]],[[120069,120069],"mapped",[98]],[[120070,120070],"disallowed"],[[120071,120071],"mapped",[100]],[[120072,120072],"mapped",[101]],[[120073,120073],"mapped",[102]],[[120074,120074],"mapped",[103]],[[120075,120076],"disallowed"],[[120077,120077],"mapped",[106]],[[120078,120078],"mapped",[107]],[[120079,120079],"mapped",[108]],[[120080,120080],"mapped",[109]],[[120081,120081],"mapped",[110]],[[120082,120082],"mapped",[111]],[[120083,120083],"mapped",[112]],[[120084,120084],"mapped",[113]],[[120085,120085],"disallowed"],[[120086,120086],"mapped",[115]],[[120087,120087],"mapped",[116]],[[120088,120088],"mapped",[117]],[[120089,120089],"mapped",[118]],[[120090,120090],"mapped",[119]],[[120091,120091],"mapped",[120]],[[120092,120092],"mapped",[121]],[[120093,120093],"disallowed"],[[120094,120094],"mapped",[97]],[[120095,120095],"mapped",[98]],[[120096,120096],"mapped",[99]],[[120097,120097],"mapped",[100]],[[120098,120098],"mapped",[101]],[[120099,120099],"mapped",[102]],[[120100,120100],"mapped",[103]],[[120101,120101],"mapped",[104]],[[120102,120102],"mapped",[105]],[[120103,120103],"mapped",[106]],[[120104,120104],"mapped",[107]],[[120105,120105],"mapped",[108]],[[120106,120106],"mapped",[109]],[[120107,120107],"mapped",[110]],[[120108,120108],"mapped",[111]],[[120109,120109],"mapped",[112]],[[120110,120110],"mapped",[113]],[[120111,120111],"mapped",[114]],[[120112,120112],"mapped",[115]],[[120113,120113],"mapped",[116]],[[120114,120114],"mapped",[117]],[[120115,120115],"mapped",[118]],[[120116,120116],"mapped",[119]],[[120117,120117],"mapped",[120]],[[120118,120118],"mapped",[121]],[[120119,120119],"mapped",[122]],[[120120,120120],"mapped",[97]],[[120121,120121],"mapped",[98]],[[120122,120122],"disallowed"],[[120123,120123],"mapped",[100]],[[120124,120124],"mapped",[101]],[[120125,120125],"mapped",[102]],[[120126,120126],"mapped",[103]],[[120127,120127],"disallowed"],[[120128,120128],"mapped",[105]],[[120129,120129],"mapped",[106]],[[120130,120130],"mapped",[107]],[[120131,120131],"mapped",[108]],[[120132,120132],"mapped",[109]],[[120133,120133],"disallowed"],[[120134,120134],"mapped",[111]],[[120135,120137],"disallowed"],[[120138,120138],"mapped",[115]],[[120139,120139],"mapped",[116]],[[120140,120140],"mapped",[117]],[[120141,120141],"mapped",[118]],[[120142,120142],"mapped",[119]],[[120143,120143],"mapped",[120]],[[120144,120144],"mapped",[121]],[[120145,120145],"disallowed"],[[120146,120146],"mapped",[97]],[[120147,120147],"mapped",[98]],[[120148,120148],"mapped",[99]],[[120149,120149],"mapped",[100]],[[120150,120150],"mapped",[101]],[[120151,120151],"mapped",[102]],[[120152,120152],"mapped",[103]],[[120153,120153],"mapped",[104]],[[120154,120154],"mapped",[105]],[[120155,120155],"mapped",[106]],[[120156,120156],"mapped",[107]],[[120157,120157],"mapped",[108]],[[120158,120158],"mapped",[109]],[[120159,120159],"mapped",[110]],[[120160,120160],"mapped",[111]],[[120161,120161],"mapped",[112]],[[120162,120162],"mapped",[113]],[[120163,120163],"mapped",[114]],[[120164,120164],"mapped",[115]],[[120165,120165],"mapped",[116]],[[120166,120166],"mapped",[117]],[[120167,120167],"mapped",[118]],[[120168,120168],"mapped",[119]],[[120169,120169],"mapped",[120]],[[120170,120170],"mapped",[121]],[[120171,120171],"mapped",[122]],[[120172,120172],"mapped",[97]],[[120173,120173],"mapped",[98]],[[120174,120174],"mapped",[99]],[[120175,120175],"mapped",[100]],[[120176,120176],"mapped",[101]],[[120177,120177],"mapped",[102]],[[120178,120178],"mapped",[103]],[[120179,120179],"mapped",[104]],[[120180,120180],"mapped",[105]],[[120181,120181],"mapped",[106]],[[120182,120182],"mapped",[107]],[[120183,120183],"mapped",[108]],[[120184,120184],"mapped",[109]],[[120185,120185],"mapped",[110]],[[120186,120186],"mapped",[111]],[[120187,120187],"mapped",[112]],[[120188,120188],"mapped",[113]],[[120189,120189],"mapped",[114]],[[120190,120190],"mapped",[115]],[[120191,120191],"mapped",[116]],[[120192,120192],"mapped",[117]],[[120193,120193],"mapped",[118]],[[120194,120194],"mapped",[119]],[[120195,120195],"mapped",[120]],[[120196,120196],"mapped",[121]],[[120197,120197],"mapped",[122]],[[120198,120198],"mapped",[97]],[[120199,120199],"mapped",[98]],[[120200,120200],"mapped",[99]],[[120201,120201],"mapped",[100]],[[120202,120202],"mapped",[101]],[[120203,120203],"mapped",[102]],[[120204,120204],"mapped",[103]],[[120205,120205],"mapped",[104]],[[120206,120206],"mapped",[105]],[[120207,120207],"mapped",[106]],[[120208,120208],"mapped",[107]],[[120209,120209],"mapped",[108]],[[120210,120210],"mapped",[109]],[[120211,120211],"mapped",[110]],[[120212,120212],"mapped",[111]],[[120213,120213],"mapped",[112]],[[120214,120214],"mapped",[113]],[[120215,120215],"mapped",[114]],[[120216,120216],"mapped",[115]],[[120217,120217],"mapped",[116]],[[120218,120218],"mapped",[117]],[[120219,120219],"mapped",[118]],[[120220,120220],"mapped",[119]],[[120221,120221],"mapped",[120]],[[120222,120222],"mapped",[121]],[[120223,120223],"mapped",[122]],[[120224,120224],"mapped",[97]],[[120225,120225],"mapped",[98]],[[120226,120226],"mapped",[99]],[[120227,120227],"mapped",[100]],[[120228,120228],"mapped",[101]],[[120229,120229],"mapped",[102]],[[120230,120230],"mapped",[103]],[[120231,120231],"mapped",[104]],[[120232,120232],"mapped",[105]],[[120233,120233],"mapped",[106]],[[120234,120234],"mapped",[107]],[[120235,120235],"mapped",[108]],[[120236,120236],"mapped",[109]],[[120237,120237],"mapped",[110]],[[120238,120238],"mapped",[111]],[[120239,120239],"mapped",[112]],[[120240,120240],"mapped",[113]],[[120241,120241],"mapped",[114]],[[120242,120242],"mapped",[115]],[[120243,120243],"mapped",[116]],[[120244,120244],"mapped",[117]],[[120245,120245],"mapped",[118]],[[120246,120246],"mapped",[119]],[[120247,120247],"mapped",[120]],[[120248,120248],"mapped",[121]],[[120249,120249],"mapped",[122]],[[120250,120250],"mapped",[97]],[[120251,120251],"mapped",[98]],[[120252,120252],"mapped",[99]],[[120253,120253],"mapped",[100]],[[120254,120254],"mapped",[101]],[[120255,120255],"mapped",[102]],[[120256,120256],"mapped",[103]],[[120257,120257],"mapped",[104]],[[120258,120258],"mapped",[105]],[[120259,120259],"mapped",[106]],[[120260,120260],"mapped",[107]],[[120261,120261],"mapped",[108]],[[120262,120262],"mapped",[109]],[[120263,120263],"mapped",[110]],[[120264,120264],"mapped",[111]],[[120265,120265],"mapped",[112]],[[120266,120266],"mapped",[113]],[[120267,120267],"mapped",[114]],[[120268,120268],"mapped",[115]],[[120269,120269],"mapped",[116]],[[120270,120270],"mapped",[117]],[[120271,120271],"mapped",[118]],[[120272,120272],"mapped",[119]],[[120273,120273],"mapped",[120]],[[120274,120274],"mapped",[121]],[[120275,120275],"mapped",[122]],[[120276,120276],"mapped",[97]],[[120277,120277],"mapped",[98]],[[120278,120278],"mapped",[99]],[[120279,120279],"mapped",[100]],[[120280,120280],"mapped",[101]],[[120281,120281],"mapped",[102]],[[120282,120282],"mapped",[103]],[[120283,120283],"mapped",[104]],[[120284,120284],"mapped",[105]],[[120285,120285],"mapped",[106]],[[120286,120286],"mapped",[107]],[[120287,120287],"mapped",[108]],[[120288,120288],"mapped",[109]],[[120289,120289],"mapped",[110]],[[120290,120290],"mapped",[111]],[[120291,120291],"mapped",[112]],[[120292,120292],"mapped",[113]],[[120293,120293],"mapped",[114]],[[120294,120294],"mapped",[115]],[[120295,120295],"mapped",[116]],[[120296,120296],"mapped",[117]],[[120297,120297],"mapped",[118]],[[120298,120298],"mapped",[119]],[[120299,120299],"mapped",[120]],[[120300,120300],"mapped",[121]],[[120301,120301],"mapped",[122]],[[120302,120302],"mapped",[97]],[[120303,120303],"mapped",[98]],[[120304,120304],"mapped",[99]],[[120305,120305],"mapped",[100]],[[120306,120306],"mapped",[101]],[[120307,120307],"mapped",[102]],[[120308,120308],"mapped",[103]],[[120309,120309],"mapped",[104]],[[120310,120310],"mapped",[105]],[[120311,120311],"mapped",[106]],[[120312,120312],"mapped",[107]],[[120313,120313],"mapped",[108]],[[120314,120314],"mapped",[109]],[[120315,120315],"mapped",[110]],[[120316,120316],"mapped",[111]],[[120317,120317],"mapped",[112]],[[120318,120318],"mapped",[113]],[[120319,120319],"mapped",[114]],[[120320,120320],"mapped",[115]],[[120321,120321],"mapped",[116]],[[120322,120322],"mapped",[117]],[[120323,120323],"mapped",[118]],[[120324,120324],"mapped",[119]],[[120325,120325],"mapped",[120]],[[120326,120326],"mapped",[121]],[[120327,120327],"mapped",[122]],[[120328,120328],"mapped",[97]],[[120329,120329],"mapped",[98]],[[120330,120330],"mapped",[99]],[[120331,120331],"mapped",[100]],[[120332,120332],"mapped",[101]],[[120333,120333],"mapped",[102]],[[120334,120334],"mapped",[103]],[[120335,120335],"mapped",[104]],[[120336,120336],"mapped",[105]],[[120337,120337],"mapped",[106]],[[120338,120338],"mapped",[107]],[[120339,120339],"mapped",[108]],[[120340,120340],"mapped",[109]],[[120341,120341],"mapped",[110]],[[120342,120342],"mapped",[111]],[[120343,120343],"mapped",[112]],[[120344,120344],"mapped",[113]],[[120345,120345],"mapped",[114]],[[120346,120346],"mapped",[115]],[[120347,120347],"mapped",[116]],[[120348,120348],"mapped",[117]],[[120349,120349],"mapped",[118]],[[120350,120350],"mapped",[119]],[[120351,120351],"mapped",[120]],[[120352,120352],"mapped",[121]],[[120353,120353],"mapped",[122]],[[120354,120354],"mapped",[97]],[[120355,120355],"mapped",[98]],[[120356,120356],"mapped",[99]],[[120357,120357],"mapped",[100]],[[120358,120358],"mapped",[101]],[[120359,120359],"mapped",[102]],[[120360,120360],"mapped",[103]],[[120361,120361],"mapped",[104]],[[120362,120362],"mapped",[105]],[[120363,120363],"mapped",[106]],[[120364,120364],"mapped",[107]],[[120365,120365],"mapped",[108]],[[120366,120366],"mapped",[109]],[[120367,120367],"mapped",[110]],[[120368,120368],"mapped",[111]],[[120369,120369],"mapped",[112]],[[120370,120370],"mapped",[113]],[[120371,120371],"mapped",[114]],[[120372,120372],"mapped",[115]],[[120373,120373],"mapped",[116]],[[120374,120374],"mapped",[117]],[[120375,120375],"mapped",[118]],[[120376,120376],"mapped",[119]],[[120377,120377],"mapped",[120]],[[120378,120378],"mapped",[121]],[[120379,120379],"mapped",[122]],[[120380,120380],"mapped",[97]],[[120381,120381],"mapped",[98]],[[120382,120382],"mapped",[99]],[[120383,120383],"mapped",[100]],[[120384,120384],"mapped",[101]],[[120385,120385],"mapped",[102]],[[120386,120386],"mapped",[103]],[[120387,120387],"mapped",[104]],[[120388,120388],"mapped",[105]],[[120389,120389],"mapped",[106]],[[120390,120390],"mapped",[107]],[[120391,120391],"mapped",[108]],[[120392,120392],"mapped",[109]],[[120393,120393],"mapped",[110]],[[120394,120394],"mapped",[111]],[[120395,120395],"mapped",[112]],[[120396,120396],"mapped",[113]],[[120397,120397],"mapped",[114]],[[120398,120398],"mapped",[115]],[[120399,120399],"mapped",[116]],[[120400,120400],"mapped",[117]],[[120401,120401],"mapped",[118]],[[120402,120402],"mapped",[119]],[[120403,120403],"mapped",[120]],[[120404,120404],"mapped",[121]],[[120405,120405],"mapped",[122]],[[120406,120406],"mapped",[97]],[[120407,120407],"mapped",[98]],[[120408,120408],"mapped",[99]],[[120409,120409],"mapped",[100]],[[120410,120410],"mapped",[101]],[[120411,120411],"mapped",[102]],[[120412,120412],"mapped",[103]],[[120413,120413],"mapped",[104]],[[120414,120414],"mapped",[105]],[[120415,120415],"mapped",[106]],[[120416,120416],"mapped",[107]],[[120417,120417],"mapped",[108]],[[120418,120418],"mapped",[109]],[[120419,120419],"mapped",[110]],[[120420,120420],"mapped",[111]],[[120421,120421],"mapped",[112]],[[120422,120422],"mapped",[113]],[[120423,120423],"mapped",[114]],[[120424,120424],"mapped",[115]],[[120425,120425],"mapped",[116]],[[120426,120426],"mapped",[117]],[[120427,120427],"mapped",[118]],[[120428,120428],"mapped",[119]],[[120429,120429],"mapped",[120]],[[120430,120430],"mapped",[121]],[[120431,120431],"mapped",[122]],[[120432,120432],"mapped",[97]],[[120433,120433],"mapped",[98]],[[120434,120434],"mapped",[99]],[[120435,120435],"mapped",[100]],[[120436,120436],"mapped",[101]],[[120437,120437],"mapped",[102]],[[120438,120438],"mapped",[103]],[[120439,120439],"mapped",[104]],[[120440,120440],"mapped",[105]],[[120441,120441],"mapped",[106]],[[120442,120442],"mapped",[107]],[[120443,120443],"mapped",[108]],[[120444,120444],"mapped",[109]],[[120445,120445],"mapped",[110]],[[120446,120446],"mapped",[111]],[[120447,120447],"mapped",[112]],[[120448,120448],"mapped",[113]],[[120449,120449],"mapped",[114]],[[120450,120450],"mapped",[115]],[[120451,120451],"mapped",[116]],[[120452,120452],"mapped",[117]],[[120453,120453],"mapped",[118]],[[120454,120454],"mapped",[119]],[[120455,120455],"mapped",[120]],[[120456,120456],"mapped",[121]],[[120457,120457],"mapped",[122]],[[120458,120458],"mapped",[97]],[[120459,120459],"mapped",[98]],[[120460,120460],"mapped",[99]],[[120461,120461],"mapped",[100]],[[120462,120462],"mapped",[101]],[[120463,120463],"mapped",[102]],[[120464,120464],"mapped",[103]],[[120465,120465],"mapped",[104]],[[120466,120466],"mapped",[105]],[[120467,120467],"mapped",[106]],[[120468,120468],"mapped",[107]],[[120469,120469],"mapped",[108]],[[120470,120470],"mapped",[109]],[[120471,120471],"mapped",[110]],[[120472,120472],"mapped",[111]],[[120473,120473],"mapped",[112]],[[120474,120474],"mapped",[113]],[[120475,120475],"mapped",[114]],[[120476,120476],"mapped",[115]],[[120477,120477],"mapped",[116]],[[120478,120478],"mapped",[117]],[[120479,120479],"mapped",[118]],[[120480,120480],"mapped",[119]],[[120481,120481],"mapped",[120]],[[120482,120482],"mapped",[121]],[[120483,120483],"mapped",[122]],[[120484,120484],"mapped",[305]],[[120485,120485],"mapped",[567]],[[120486,120487],"disallowed"],[[120488,120488],"mapped",[945]],[[120489,120489],"mapped",[946]],[[120490,120490],"mapped",[947]],[[120491,120491],"mapped",[948]],[[120492,120492],"mapped",[949]],[[120493,120493],"mapped",[950]],[[120494,120494],"mapped",[951]],[[120495,120495],"mapped",[952]],[[120496,120496],"mapped",[953]],[[120497,120497],"mapped",[954]],[[120498,120498],"mapped",[955]],[[120499,120499],"mapped",[956]],[[120500,120500],"mapped",[957]],[[120501,120501],"mapped",[958]],[[120502,120502],"mapped",[959]],[[120503,120503],"mapped",[960]],[[120504,120504],"mapped",[961]],[[120505,120505],"mapped",[952]],[[120506,120506],"mapped",[963]],[[120507,120507],"mapped",[964]],[[120508,120508],"mapped",[965]],[[120509,120509],"mapped",[966]],[[120510,120510],"mapped",[967]],[[120511,120511],"mapped",[968]],[[120512,120512],"mapped",[969]],[[120513,120513],"mapped",[8711]],[[120514,120514],"mapped",[945]],[[120515,120515],"mapped",[946]],[[120516,120516],"mapped",[947]],[[120517,120517],"mapped",[948]],[[120518,120518],"mapped",[949]],[[120519,120519],"mapped",[950]],[[120520,120520],"mapped",[951]],[[120521,120521],"mapped",[952]],[[120522,120522],"mapped",[953]],[[120523,120523],"mapped",[954]],[[120524,120524],"mapped",[955]],[[120525,120525],"mapped",[956]],[[120526,120526],"mapped",[957]],[[120527,120527],"mapped",[958]],[[120528,120528],"mapped",[959]],[[120529,120529],"mapped",[960]],[[120530,120530],"mapped",[961]],[[120531,120532],"mapped",[963]],[[120533,120533],"mapped",[964]],[[120534,120534],"mapped",[965]],[[120535,120535],"mapped",[966]],[[120536,120536],"mapped",[967]],[[120537,120537],"mapped",[968]],[[120538,120538],"mapped",[969]],[[120539,120539],"mapped",[8706]],[[120540,120540],"mapped",[949]],[[120541,120541],"mapped",[952]],[[120542,120542],"mapped",[954]],[[120543,120543],"mapped",[966]],[[120544,120544],"mapped",[961]],[[120545,120545],"mapped",[960]],[[120546,120546],"mapped",[945]],[[120547,120547],"mapped",[946]],[[120548,120548],"mapped",[947]],[[120549,120549],"mapped",[948]],[[120550,120550],"mapped",[949]],[[120551,120551],"mapped",[950]],[[120552,120552],"mapped",[951]],[[120553,120553],"mapped",[952]],[[120554,120554],"mapped",[953]],[[120555,120555],"mapped",[954]],[[120556,120556],"mapped",[955]],[[120557,120557],"mapped",[956]],[[120558,120558],"mapped",[957]],[[120559,120559],"mapped",[958]],[[120560,120560],"mapped",[959]],[[120561,120561],"mapped",[960]],[[120562,120562],"mapped",[961]],[[120563,120563],"mapped",[952]],[[120564,120564],"mapped",[963]],[[120565,120565],"mapped",[964]],[[120566,120566],"mapped",[965]],[[120567,120567],"mapped",[966]],[[120568,120568],"mapped",[967]],[[120569,120569],"mapped",[968]],[[120570,120570],"mapped",[969]],[[120571,120571],"mapped",[8711]],[[120572,120572],"mapped",[945]],[[120573,120573],"mapped",[946]],[[120574,120574],"mapped",[947]],[[120575,120575],"mapped",[948]],[[120576,120576],"mapped",[949]],[[120577,120577],"mapped",[950]],[[120578,120578],"mapped",[951]],[[120579,120579],"mapped",[952]],[[120580,120580],"mapped",[953]],[[120581,120581],"mapped",[954]],[[120582,120582],"mapped",[955]],[[120583,120583],"mapped",[956]],[[120584,120584],"mapped",[957]],[[120585,120585],"mapped",[958]],[[120586,120586],"mapped",[959]],[[120587,120587],"mapped",[960]],[[120588,120588],"mapped",[961]],[[120589,120590],"mapped",[963]],[[120591,120591],"mapped",[964]],[[120592,120592],"mapped",[965]],[[120593,120593],"mapped",[966]],[[120594,120594],"mapped",[967]],[[120595,120595],"mapped",[968]],[[120596,120596],"mapped",[969]],[[120597,120597],"mapped",[8706]],[[120598,120598],"mapped",[949]],[[120599,120599],"mapped",[952]],[[120600,120600],"mapped",[954]],[[120601,120601],"mapped",[966]],[[120602,120602],"mapped",[961]],[[120603,120603],"mapped",[960]],[[120604,120604],"mapped",[945]],[[120605,120605],"mapped",[946]],[[120606,120606],"mapped",[947]],[[120607,120607],"mapped",[948]],[[120608,120608],"mapped",[949]],[[120609,120609],"mapped",[950]],[[120610,120610],"mapped",[951]],[[120611,120611],"mapped",[952]],[[120612,120612],"mapped",[953]],[[120613,120613],"mapped",[954]],[[120614,120614],"mapped",[955]],[[120615,120615],"mapped",[956]],[[120616,120616],"mapped",[957]],[[120617,120617],"mapped",[958]],[[120618,120618],"mapped",[959]],[[120619,120619],"mapped",[960]],[[120620,120620],"mapped",[961]],[[120621,120621],"mapped",[952]],[[120622,120622],"mapped",[963]],[[120623,120623],"mapped",[964]],[[120624,120624],"mapped",[965]],[[120625,120625],"mapped",[966]],[[120626,120626],"mapped",[967]],[[120627,120627],"mapped",[968]],[[120628,120628],"mapped",[969]],[[120629,120629],"mapped",[8711]],[[120630,120630],"mapped",[945]],[[120631,120631],"mapped",[946]],[[120632,120632],"mapped",[947]],[[120633,120633],"mapped",[948]],[[120634,120634],"mapped",[949]],[[120635,120635],"mapped",[950]],[[120636,120636],"mapped",[951]],[[120637,120637],"mapped",[952]],[[120638,120638],"mapped",[953]],[[120639,120639],"mapped",[954]],[[120640,120640],"mapped",[955]],[[120641,120641],"mapped",[956]],[[120642,120642],"mapped",[957]],[[120643,120643],"mapped",[958]],[[120644,120644],"mapped",[959]],[[120645,120645],"mapped",[960]],[[120646,120646],"mapped",[961]],[[120647,120648],"mapped",[963]],[[120649,120649],"mapped",[964]],[[120650,120650],"mapped",[965]],[[120651,120651],"mapped",[966]],[[120652,120652],"mapped",[967]],[[120653,120653],"mapped",[968]],[[120654,120654],"mapped",[969]],[[120655,120655],"mapped",[8706]],[[120656,120656],"mapped",[949]],[[120657,120657],"mapped",[952]],[[120658,120658],"mapped",[954]],[[120659,120659],"mapped",[966]],[[120660,120660],"mapped",[961]],[[120661,120661],"mapped",[960]],[[120662,120662],"mapped",[945]],[[120663,120663],"mapped",[946]],[[120664,120664],"mapped",[947]],[[120665,120665],"mapped",[948]],[[120666,120666],"mapped",[949]],[[120667,120667],"mapped",[950]],[[120668,120668],"mapped",[951]],[[120669,120669],"mapped",[952]],[[120670,120670],"mapped",[953]],[[120671,120671],"mapped",[954]],[[120672,120672],"mapped",[955]],[[120673,120673],"mapped",[956]],[[120674,120674],"mapped",[957]],[[120675,120675],"mapped",[958]],[[120676,120676],"mapped",[959]],[[120677,120677],"mapped",[960]],[[120678,120678],"mapped",[961]],[[120679,120679],"mapped",[952]],[[120680,120680],"mapped",[963]],[[120681,120681],"mapped",[964]],[[120682,120682],"mapped",[965]],[[120683,120683],"mapped",[966]],[[120684,120684],"mapped",[967]],[[120685,120685],"mapped",[968]],[[120686,120686],"mapped",[969]],[[120687,120687],"mapped",[8711]],[[120688,120688],"mapped",[945]],[[120689,120689],"mapped",[946]],[[120690,120690],"mapped",[947]],[[120691,120691],"mapped",[948]],[[120692,120692],"mapped",[949]],[[120693,120693],"mapped",[950]],[[120694,120694],"mapped",[951]],[[120695,120695],"mapped",[952]],[[120696,120696],"mapped",[953]],[[120697,120697],"mapped",[954]],[[120698,120698],"mapped",[955]],[[120699,120699],"mapped",[956]],[[120700,120700],"mapped",[957]],[[120701,120701],"mapped",[958]],[[120702,120702],"mapped",[959]],[[120703,120703],"mapped",[960]],[[120704,120704],"mapped",[961]],[[120705,120706],"mapped",[963]],[[120707,120707],"mapped",[964]],[[120708,120708],"mapped",[965]],[[120709,120709],"mapped",[966]],[[120710,120710],"mapped",[967]],[[120711,120711],"mapped",[968]],[[120712,120712],"mapped",[969]],[[120713,120713],"mapped",[8706]],[[120714,120714],"mapped",[949]],[[120715,120715],"mapped",[952]],[[120716,120716],"mapped",[954]],[[120717,120717],"mapped",[966]],[[120718,120718],"mapped",[961]],[[120719,120719],"mapped",[960]],[[120720,120720],"mapped",[945]],[[120721,120721],"mapped",[946]],[[120722,120722],"mapped",[947]],[[120723,120723],"mapped",[948]],[[120724,120724],"mapped",[949]],[[120725,120725],"mapped",[950]],[[120726,120726],"mapped",[951]],[[120727,120727],"mapped",[952]],[[120728,120728],"mapped",[953]],[[120729,120729],"mapped",[954]],[[120730,120730],"mapped",[955]],[[120731,120731],"mapped",[956]],[[120732,120732],"mapped",[957]],[[120733,120733],"mapped",[958]],[[120734,120734],"mapped",[959]],[[120735,120735],"mapped",[960]],[[120736,120736],"mapped",[961]],[[120737,120737],"mapped",[952]],[[120738,120738],"mapped",[963]],[[120739,120739],"mapped",[964]],[[120740,120740],"mapped",[965]],[[120741,120741],"mapped",[966]],[[120742,120742],"mapped",[967]],[[120743,120743],"mapped",[968]],[[120744,120744],"mapped",[969]],[[120745,120745],"mapped",[8711]],[[120746,120746],"mapped",[945]],[[120747,120747],"mapped",[946]],[[120748,120748],"mapped",[947]],[[120749,120749],"mapped",[948]],[[120750,120750],"mapped",[949]],[[120751,120751],"mapped",[950]],[[120752,120752],"mapped",[951]],[[120753,120753],"mapped",[952]],[[120754,120754],"mapped",[953]],[[120755,120755],"mapped",[954]],[[120756,120756],"mapped",[955]],[[120757,120757],"mapped",[956]],[[120758,120758],"mapped",[957]],[[120759,120759],"mapped",[958]],[[120760,120760],"mapped",[959]],[[120761,120761],"mapped",[960]],[[120762,120762],"mapped",[961]],[[120763,120764],"mapped",[963]],[[120765,120765],"mapped",[964]],[[120766,120766],"mapped",[965]],[[120767,120767],"mapped",[966]],[[120768,120768],"mapped",[967]],[[120769,120769],"mapped",[968]],[[120770,120770],"mapped",[969]],[[120771,120771],"mapped",[8706]],[[120772,120772],"mapped",[949]],[[120773,120773],"mapped",[952]],[[120774,120774],"mapped",[954]],[[120775,120775],"mapped",[966]],[[120776,120776],"mapped",[961]],[[120777,120777],"mapped",[960]],[[120778,120779],"mapped",[989]],[[120780,120781],"disallowed"],[[120782,120782],"mapped",[48]],[[120783,120783],"mapped",[49]],[[120784,120784],"mapped",[50]],[[120785,120785],"mapped",[51]],[[120786,120786],"mapped",[52]],[[120787,120787],"mapped",[53]],[[120788,120788],"mapped",[54]],[[120789,120789],"mapped",[55]],[[120790,120790],"mapped",[56]],[[120791,120791],"mapped",[57]],[[120792,120792],"mapped",[48]],[[120793,120793],"mapped",[49]],[[120794,120794],"mapped",[50]],[[120795,120795],"mapped",[51]],[[120796,120796],"mapped",[52]],[[120797,120797],"mapped",[53]],[[120798,120798],"mapped",[54]],[[120799,120799],"mapped",[55]],[[120800,120800],"mapped",[56]],[[120801,120801],"mapped",[57]],[[120802,120802],"mapped",[48]],[[120803,120803],"mapped",[49]],[[120804,120804],"mapped",[50]],[[120805,120805],"mapped",[51]],[[120806,120806],"mapped",[52]],[[120807,120807],"mapped",[53]],[[120808,120808],"mapped",[54]],[[120809,120809],"mapped",[55]],[[120810,120810],"mapped",[56]],[[120811,120811],"mapped",[57]],[[120812,120812],"mapped",[48]],[[120813,120813],"mapped",[49]],[[120814,120814],"mapped",[50]],[[120815,120815],"mapped",[51]],[[120816,120816],"mapped",[52]],[[120817,120817],"mapped",[53]],[[120818,120818],"mapped",[54]],[[120819,120819],"mapped",[55]],[[120820,120820],"mapped",[56]],[[120821,120821],"mapped",[57]],[[120822,120822],"mapped",[48]],[[120823,120823],"mapped",[49]],[[120824,120824],"mapped",[50]],[[120825,120825],"mapped",[51]],[[120826,120826],"mapped",[52]],[[120827,120827],"mapped",[53]],[[120828,120828],"mapped",[54]],[[120829,120829],"mapped",[55]],[[120830,120830],"mapped",[56]],[[120831,120831],"mapped",[57]],[[120832,121343],"valid",[],"NV8"],[[121344,121398],"valid"],[[121399,121402],"valid",[],"NV8"],[[121403,121452],"valid"],[[121453,121460],"valid",[],"NV8"],[[121461,121461],"valid"],[[121462,121475],"valid",[],"NV8"],[[121476,121476],"valid"],[[121477,121483],"valid",[],"NV8"],[[121484,121498],"disallowed"],[[121499,121503],"valid"],[[121504,121504],"disallowed"],[[121505,121519],"valid"],[[121520,124927],"disallowed"],[[124928,125124],"valid"],[[125125,125126],"disallowed"],[[125127,125135],"valid",[],"NV8"],[[125136,125142],"valid"],[[125143,126463],"disallowed"],[[126464,126464],"mapped",[1575]],[[126465,126465],"mapped",[1576]],[[126466,126466],"mapped",[1580]],[[126467,126467],"mapped",[1583]],[[126468,126468],"disallowed"],[[126469,126469],"mapped",[1608]],[[126470,126470],"mapped",[1586]],[[126471,126471],"mapped",[1581]],[[126472,126472],"mapped",[1591]],[[126473,126473],"mapped",[1610]],[[126474,126474],"mapped",[1603]],[[126475,126475],"mapped",[1604]],[[126476,126476],"mapped",[1605]],[[126477,126477],"mapped",[1606]],[[126478,126478],"mapped",[1587]],[[126479,126479],"mapped",[1593]],[[126480,126480],"mapped",[1601]],[[126481,126481],"mapped",[1589]],[[126482,126482],"mapped",[1602]],[[126483,126483],"mapped",[1585]],[[126484,126484],"mapped",[1588]],[[126485,126485],"mapped",[1578]],[[126486,126486],"mapped",[1579]],[[126487,126487],"mapped",[1582]],[[126488,126488],"mapped",[1584]],[[126489,126489],"mapped",[1590]],[[126490,126490],"mapped",[1592]],[[126491,126491],"mapped",[1594]],[[126492,126492],"mapped",[1646]],[[126493,126493],"mapped",[1722]],[[126494,126494],"mapped",[1697]],[[126495,126495],"mapped",[1647]],[[126496,126496],"disallowed"],[[126497,126497],"mapped",[1576]],[[126498,126498],"mapped",[1580]],[[126499,126499],"disallowed"],[[126500,126500],"mapped",[1607]],[[126501,126502],"disallowed"],[[126503,126503],"mapped",[1581]],[[126504,126504],"disallowed"],[[126505,126505],"mapped",[1610]],[[126506,126506],"mapped",[1603]],[[126507,126507],"mapped",[1604]],[[126508,126508],"mapped",[1605]],[[126509,126509],"mapped",[1606]],[[126510,126510],"mapped",[1587]],[[126511,126511],"mapped",[1593]],[[126512,126512],"mapped",[1601]],[[126513,126513],"mapped",[1589]],[[126514,126514],"mapped",[1602]],[[126515,126515],"disallowed"],[[126516,126516],"mapped",[1588]],[[126517,126517],"mapped",[1578]],[[126518,126518],"mapped",[1579]],[[126519,126519],"mapped",[1582]],[[126520,126520],"disallowed"],[[126521,126521],"mapped",[1590]],[[126522,126522],"disallowed"],[[126523,126523],"mapped",[1594]],[[126524,126529],"disallowed"],[[126530,126530],"mapped",[1580]],[[126531,126534],"disallowed"],[[126535,126535],"mapped",[1581]],[[126536,126536],"disallowed"],[[126537,126537],"mapped",[1610]],[[126538,126538],"disallowed"],[[126539,126539],"mapped",[1604]],[[126540,126540],"disallowed"],[[126541,126541],"mapped",[1606]],[[126542,126542],"mapped",[1587]],[[126543,126543],"mapped",[1593]],[[126544,126544],"disallowed"],[[126545,126545],"mapped",[1589]],[[126546,126546],"mapped",[1602]],[[126547,126547],"disallowed"],[[126548,126548],"mapped",[1588]],[[126549,126550],"disallowed"],[[126551,126551],"mapped",[1582]],[[126552,126552],"disallowed"],[[126553,126553],"mapped",[1590]],[[126554,126554],"disallowed"],[[126555,126555],"mapped",[1594]],[[126556,126556],"disallowed"],[[126557,126557],"mapped",[1722]],[[126558,126558],"disallowed"],[[126559,126559],"mapped",[1647]],[[126560,126560],"disallowed"],[[126561,126561],"mapped",[1576]],[[126562,126562],"mapped",[1580]],[[126563,126563],"disallowed"],[[126564,126564],"mapped",[1607]],[[126565,126566],"disallowed"],[[126567,126567],"mapped",[1581]],[[126568,126568],"mapped",[1591]],[[126569,126569],"mapped",[1610]],[[126570,126570],"mapped",[1603]],[[126571,126571],"disallowed"],[[126572,126572],"mapped",[1605]],[[126573,126573],"mapped",[1606]],[[126574,126574],"mapped",[1587]],[[126575,126575],"mapped",[1593]],[[126576,126576],"mapped",[1601]],[[126577,126577],"mapped",[1589]],[[126578,126578],"mapped",[1602]],[[126579,126579],"disallowed"],[[126580,126580],"mapped",[1588]],[[126581,126581],"mapped",[1578]],[[126582,126582],"mapped",[1579]],[[126583,126583],"mapped",[1582]],[[126584,126584],"disallowed"],[[126585,126585],"mapped",[1590]],[[126586,126586],"mapped",[1592]],[[126587,126587],"mapped",[1594]],[[126588,126588],"mapped",[1646]],[[126589,126589],"disallowed"],[[126590,126590],"mapped",[1697]],[[126591,126591],"disallowed"],[[126592,126592],"mapped",[1575]],[[126593,126593],"mapped",[1576]],[[126594,126594],"mapped",[1580]],[[126595,126595],"mapped",[1583]],[[126596,126596],"mapped",[1607]],[[126597,126597],"mapped",[1608]],[[126598,126598],"mapped",[1586]],[[126599,126599],"mapped",[1581]],[[126600,126600],"mapped",[1591]],[[126601,126601],"mapped",[1610]],[[126602,126602],"disallowed"],[[126603,126603],"mapped",[1604]],[[126604,126604],"mapped",[1605]],[[126605,126605],"mapped",[1606]],[[126606,126606],"mapped",[1587]],[[126607,126607],"mapped",[1593]],[[126608,126608],"mapped",[1601]],[[126609,126609],"mapped",[1589]],[[126610,126610],"mapped",[1602]],[[126611,126611],"mapped",[1585]],[[126612,126612],"mapped",[1588]],[[126613,126613],"mapped",[1578]],[[126614,126614],"mapped",[1579]],[[126615,126615],"mapped",[1582]],[[126616,126616],"mapped",[1584]],[[126617,126617],"mapped",[1590]],[[126618,126618],"mapped",[1592]],[[126619,126619],"mapped",[1594]],[[126620,126624],"disallowed"],[[126625,126625],"mapped",[1576]],[[126626,126626],"mapped",[1580]],[[126627,126627],"mapped",[1583]],[[126628,126628],"disallowed"],[[126629,126629],"mapped",[1608]],[[126630,126630],"mapped",[1586]],[[126631,126631],"mapped",[1581]],[[126632,126632],"mapped",[1591]],[[126633,126633],"mapped",[1610]],[[126634,126634],"disallowed"],[[126635,126635],"mapped",[1604]],[[126636,126636],"mapped",[1605]],[[126637,126637],"mapped",[1606]],[[126638,126638],"mapped",[1587]],[[126639,126639],"mapped",[1593]],[[126640,126640],"mapped",[1601]],[[126641,126641],"mapped",[1589]],[[126642,126642],"mapped",[1602]],[[126643,126643],"mapped",[1585]],[[126644,126644],"mapped",[1588]],[[126645,126645],"mapped",[1578]],[[126646,126646],"mapped",[1579]],[[126647,126647],"mapped",[1582]],[[126648,126648],"mapped",[1584]],[[126649,126649],"mapped",[1590]],[[126650,126650],"mapped",[1592]],[[126651,126651],"mapped",[1594]],[[126652,126703],"disallowed"],[[126704,126705],"valid",[],"NV8"],[[126706,126975],"disallowed"],[[126976,127019],"valid",[],"NV8"],[[127020,127023],"disallowed"],[[127024,127123],"valid",[],"NV8"],[[127124,127135],"disallowed"],[[127136,127150],"valid",[],"NV8"],[[127151,127152],"disallowed"],[[127153,127166],"valid",[],"NV8"],[[127167,127167],"valid",[],"NV8"],[[127168,127168],"disallowed"],[[127169,127183],"valid",[],"NV8"],[[127184,127184],"disallowed"],[[127185,127199],"valid",[],"NV8"],[[127200,127221],"valid",[],"NV8"],[[127222,127231],"disallowed"],[[127232,127232],"disallowed"],[[127233,127233],"disallowed_STD3_mapped",[48,44]],[[127234,127234],"disallowed_STD3_mapped",[49,44]],[[127235,127235],"disallowed_STD3_mapped",[50,44]],[[127236,127236],"disallowed_STD3_mapped",[51,44]],[[127237,127237],"disallowed_STD3_mapped",[52,44]],[[127238,127238],"disallowed_STD3_mapped",[53,44]],[[127239,127239],"disallowed_STD3_mapped",[54,44]],[[127240,127240],"disallowed_STD3_mapped",[55,44]],[[127241,127241],"disallowed_STD3_mapped",[56,44]],[[127242,127242],"disallowed_STD3_mapped",[57,44]],[[127243,127244],"valid",[],"NV8"],[[127245,127247],"disallowed"],[[127248,127248],"disallowed_STD3_mapped",[40,97,41]],[[127249,127249],"disallowed_STD3_mapped",[40,98,41]],[[127250,127250],"disallowed_STD3_mapped",[40,99,41]],[[127251,127251],"disallowed_STD3_mapped",[40,100,41]],[[127252,127252],"disallowed_STD3_mapped",[40,101,41]],[[127253,127253],"disallowed_STD3_mapped",[40,102,41]],[[127254,127254],"disallowed_STD3_mapped",[40,103,41]],[[127255,127255],"disallowed_STD3_mapped",[40,104,41]],[[127256,127256],"disallowed_STD3_mapped",[40,105,41]],[[127257,127257],"disallowed_STD3_mapped",[40,106,41]],[[127258,127258],"disallowed_STD3_mapped",[40,107,41]],[[127259,127259],"disallowed_STD3_mapped",[40,108,41]],[[127260,127260],"disallowed_STD3_mapped",[40,109,41]],[[127261,127261],"disallowed_STD3_mapped",[40,110,41]],[[127262,127262],"disallowed_STD3_mapped",[40,111,41]],[[127263,127263],"disallowed_STD3_mapped",[40,112,41]],[[127264,127264],"disallowed_STD3_mapped",[40,113,41]],[[127265,127265],"disallowed_STD3_mapped",[40,114,41]],[[127266,127266],"disallowed_STD3_mapped",[40,115,41]],[[127267,127267],"disallowed_STD3_mapped",[40,116,41]],[[127268,127268],"disallowed_STD3_mapped",[40,117,41]],[[127269,127269],"disallowed_STD3_mapped",[40,118,41]],[[127270,127270],"disallowed_STD3_mapped",[40,119,41]],[[127271,127271],"disallowed_STD3_mapped",[40,120,41]],[[127272,127272],"disallowed_STD3_mapped",[40,121,41]],[[127273,127273],"disallowed_STD3_mapped",[40,122,41]],[[127274,127274],"mapped",[12308,115,12309]],[[127275,127275],"mapped",[99]],[[127276,127276],"mapped",[114]],[[127277,127277],"mapped",[99,100]],[[127278,127278],"mapped",[119,122]],[[127279,127279],"disallowed"],[[127280,127280],"mapped",[97]],[[127281,127281],"mapped",[98]],[[127282,127282],"mapped",[99]],[[127283,127283],"mapped",[100]],[[127284,127284],"mapped",[101]],[[127285,127285],"mapped",[102]],[[127286,127286],"mapped",[103]],[[127287,127287],"mapped",[104]],[[127288,127288],"mapped",[105]],[[127289,127289],"mapped",[106]],[[127290,127290],"mapped",[107]],[[127291,127291],"mapped",[108]],[[127292,127292],"mapped",[109]],[[127293,127293],"mapped",[110]],[[127294,127294],"mapped",[111]],[[127295,127295],"mapped",[112]],[[127296,127296],"mapped",[113]],[[127297,127297],"mapped",[114]],[[127298,127298],"mapped",[115]],[[127299,127299],"mapped",[116]],[[127300,127300],"mapped",[117]],[[127301,127301],"mapped",[118]],[[127302,127302],"mapped",[119]],[[127303,127303],"mapped",[120]],[[127304,127304],"mapped",[121]],[[127305,127305],"mapped",[122]],[[127306,127306],"mapped",[104,118]],[[127307,127307],"mapped",[109,118]],[[127308,127308],"mapped",[115,100]],[[127309,127309],"mapped",[115,115]],[[127310,127310],"mapped",[112,112,118]],[[127311,127311],"mapped",[119,99]],[[127312,127318],"valid",[],"NV8"],[[127319,127319],"valid",[],"NV8"],[[127320,127326],"valid",[],"NV8"],[[127327,127327],"valid",[],"NV8"],[[127328,127337],"valid",[],"NV8"],[[127338,127338],"mapped",[109,99]],[[127339,127339],"mapped",[109,100]],[[127340,127343],"disallowed"],[[127344,127352],"valid",[],"NV8"],[[127353,127353],"valid",[],"NV8"],[[127354,127354],"valid",[],"NV8"],[[127355,127356],"valid",[],"NV8"],[[127357,127358],"valid",[],"NV8"],[[127359,127359],"valid",[],"NV8"],[[127360,127369],"valid",[],"NV8"],[[127370,127373],"valid",[],"NV8"],[[127374,127375],"valid",[],"NV8"],[[127376,127376],"mapped",[100,106]],[[127377,127386],"valid",[],"NV8"],[[127387,127461],"disallowed"],[[127462,127487],"valid",[],"NV8"],[[127488,127488],"mapped",[12411,12363]],[[127489,127489],"mapped",[12467,12467]],[[127490,127490],"mapped",[12469]],[[127491,127503],"disallowed"],[[127504,127504],"mapped",[25163]],[[127505,127505],"mapped",[23383]],[[127506,127506],"mapped",[21452]],[[127507,127507],"mapped",[12487]],[[127508,127508],"mapped",[20108]],[[127509,127509],"mapped",[22810]],[[127510,127510],"mapped",[35299]],[[127511,127511],"mapped",[22825]],[[127512,127512],"mapped",[20132]],[[127513,127513],"mapped",[26144]],[[127514,127514],"mapped",[28961]],[[127515,127515],"mapped",[26009]],[[127516,127516],"mapped",[21069]],[[127517,127517],"mapped",[24460]],[[127518,127518],"mapped",[20877]],[[127519,127519],"mapped",[26032]],[[127520,127520],"mapped",[21021]],[[127521,127521],"mapped",[32066]],[[127522,127522],"mapped",[29983]],[[127523,127523],"mapped",[36009]],[[127524,127524],"mapped",[22768]],[[127525,127525],"mapped",[21561]],[[127526,127526],"mapped",[28436]],[[127527,127527],"mapped",[25237]],[[127528,127528],"mapped",[25429]],[[127529,127529],"mapped",[19968]],[[127530,127530],"mapped",[19977]],[[127531,127531],"mapped",[36938]],[[127532,127532],"mapped",[24038]],[[127533,127533],"mapped",[20013]],[[127534,127534],"mapped",[21491]],[[127535,127535],"mapped",[25351]],[[127536,127536],"mapped",[36208]],[[127537,127537],"mapped",[25171]],[[127538,127538],"mapped",[31105]],[[127539,127539],"mapped",[31354]],[[127540,127540],"mapped",[21512]],[[127541,127541],"mapped",[28288]],[[127542,127542],"mapped",[26377]],[[127543,127543],"mapped",[26376]],[[127544,127544],"mapped",[30003]],[[127545,127545],"mapped",[21106]],[[127546,127546],"mapped",[21942]],[[127547,127551],"disallowed"],[[127552,127552],"mapped",[12308,26412,12309]],[[127553,127553],"mapped",[12308,19977,12309]],[[127554,127554],"mapped",[12308,20108,12309]],[[127555,127555],"mapped",[12308,23433,12309]],[[127556,127556],"mapped",[12308,28857,12309]],[[127557,127557],"mapped",[12308,25171,12309]],[[127558,127558],"mapped",[12308,30423,12309]],[[127559,127559],"mapped",[12308,21213,12309]],[[127560,127560],"mapped",[12308,25943,12309]],[[127561,127567],"disallowed"],[[127568,127568],"mapped",[24471]],[[127569,127569],"mapped",[21487]],[[127570,127743],"disallowed"],[[127744,127776],"valid",[],"NV8"],[[127777,127788],"valid",[],"NV8"],[[127789,127791],"valid",[],"NV8"],[[127792,127797],"valid",[],"NV8"],[[127798,127798],"valid",[],"NV8"],[[127799,127868],"valid",[],"NV8"],[[127869,127869],"valid",[],"NV8"],[[127870,127871],"valid",[],"NV8"],[[127872,127891],"valid",[],"NV8"],[[127892,127903],"valid",[],"NV8"],[[127904,127940],"valid",[],"NV8"],[[127941,127941],"valid",[],"NV8"],[[127942,127946],"valid",[],"NV8"],[[127947,127950],"valid",[],"NV8"],[[127951,127955],"valid",[],"NV8"],[[127956,127967],"valid",[],"NV8"],[[127968,127984],"valid",[],"NV8"],[[127985,127991],"valid",[],"NV8"],[[127992,127999],"valid",[],"NV8"],[[128e3,128062],"valid",[],"NV8"],[[128063,128063],"valid",[],"NV8"],[[128064,128064],"valid",[],"NV8"],[[128065,128065],"valid",[],"NV8"],[[128066,128247],"valid",[],"NV8"],[[128248,128248],"valid",[],"NV8"],[[128249,128252],"valid",[],"NV8"],[[128253,128254],"valid",[],"NV8"],[[128255,128255],"valid",[],"NV8"],[[128256,128317],"valid",[],"NV8"],[[128318,128319],"valid",[],"NV8"],[[128320,128323],"valid",[],"NV8"],[[128324,128330],"valid",[],"NV8"],[[128331,128335],"valid",[],"NV8"],[[128336,128359],"valid",[],"NV8"],[[128360,128377],"valid",[],"NV8"],[[128378,128378],"disallowed"],[[128379,128419],"valid",[],"NV8"],[[128420,128420],"disallowed"],[[128421,128506],"valid",[],"NV8"],[[128507,128511],"valid",[],"NV8"],[[128512,128512],"valid",[],"NV8"],[[128513,128528],"valid",[],"NV8"],[[128529,128529],"valid",[],"NV8"],[[128530,128532],"valid",[],"NV8"],[[128533,128533],"valid",[],"NV8"],[[128534,128534],"valid",[],"NV8"],[[128535,128535],"valid",[],"NV8"],[[128536,128536],"valid",[],"NV8"],[[128537,128537],"valid",[],"NV8"],[[128538,128538],"valid",[],"NV8"],[[128539,128539],"valid",[],"NV8"],[[128540,128542],"valid",[],"NV8"],[[128543,128543],"valid",[],"NV8"],[[128544,128549],"valid",[],"NV8"],[[128550,128551],"valid",[],"NV8"],[[128552,128555],"valid",[],"NV8"],[[128556,128556],"valid",[],"NV8"],[[128557,128557],"valid",[],"NV8"],[[128558,128559],"valid",[],"NV8"],[[128560,128563],"valid",[],"NV8"],[[128564,128564],"valid",[],"NV8"],[[128565,128576],"valid",[],"NV8"],[[128577,128578],"valid",[],"NV8"],[[128579,128580],"valid",[],"NV8"],[[128581,128591],"valid",[],"NV8"],[[128592,128639],"valid",[],"NV8"],[[128640,128709],"valid",[],"NV8"],[[128710,128719],"valid",[],"NV8"],[[128720,128720],"valid",[],"NV8"],[[128721,128735],"disallowed"],[[128736,128748],"valid",[],"NV8"],[[128749,128751],"disallowed"],[[128752,128755],"valid",[],"NV8"],[[128756,128767],"disallowed"],[[128768,128883],"valid",[],"NV8"],[[128884,128895],"disallowed"],[[128896,128980],"valid",[],"NV8"],[[128981,129023],"disallowed"],[[129024,129035],"valid",[],"NV8"],[[129036,129039],"disallowed"],[[129040,129095],"valid",[],"NV8"],[[129096,129103],"disallowed"],[[129104,129113],"valid",[],"NV8"],[[129114,129119],"disallowed"],[[129120,129159],"valid",[],"NV8"],[[129160,129167],"disallowed"],[[129168,129197],"valid",[],"NV8"],[[129198,129295],"disallowed"],[[129296,129304],"valid",[],"NV8"],[[129305,129407],"disallowed"],[[129408,129412],"valid",[],"NV8"],[[129413,129471],"disallowed"],[[129472,129472],"valid",[],"NV8"],[[129473,131069],"disallowed"],[[131070,131071],"disallowed"],[[131072,173782],"valid"],[[173783,173823],"disallowed"],[[173824,177972],"valid"],[[177973,177983],"disallowed"],[[177984,178205],"valid"],[[178206,178207],"disallowed"],[[178208,183969],"valid"],[[183970,194559],"disallowed"],[[194560,194560],"mapped",[20029]],[[194561,194561],"mapped",[20024]],[[194562,194562],"mapped",[20033]],[[194563,194563],"mapped",[131362]],[[194564,194564],"mapped",[20320]],[[194565,194565],"mapped",[20398]],[[194566,194566],"mapped",[20411]],[[194567,194567],"mapped",[20482]],[[194568,194568],"mapped",[20602]],[[194569,194569],"mapped",[20633]],[[194570,194570],"mapped",[20711]],[[194571,194571],"mapped",[20687]],[[194572,194572],"mapped",[13470]],[[194573,194573],"mapped",[132666]],[[194574,194574],"mapped",[20813]],[[194575,194575],"mapped",[20820]],[[194576,194576],"mapped",[20836]],[[194577,194577],"mapped",[20855]],[[194578,194578],"mapped",[132380]],[[194579,194579],"mapped",[13497]],[[194580,194580],"mapped",[20839]],[[194581,194581],"mapped",[20877]],[[194582,194582],"mapped",[132427]],[[194583,194583],"mapped",[20887]],[[194584,194584],"mapped",[20900]],[[194585,194585],"mapped",[20172]],[[194586,194586],"mapped",[20908]],[[194587,194587],"mapped",[20917]],[[194588,194588],"mapped",[168415]],[[194589,194589],"mapped",[20981]],[[194590,194590],"mapped",[20995]],[[194591,194591],"mapped",[13535]],[[194592,194592],"mapped",[21051]],[[194593,194593],"mapped",[21062]],[[194594,194594],"mapped",[21106]],[[194595,194595],"mapped",[21111]],[[194596,194596],"mapped",[13589]],[[194597,194597],"mapped",[21191]],[[194598,194598],"mapped",[21193]],[[194599,194599],"mapped",[21220]],[[194600,194600],"mapped",[21242]],[[194601,194601],"mapped",[21253]],[[194602,194602],"mapped",[21254]],[[194603,194603],"mapped",[21271]],[[194604,194604],"mapped",[21321]],[[194605,194605],"mapped",[21329]],[[194606,194606],"mapped",[21338]],[[194607,194607],"mapped",[21363]],[[194608,194608],"mapped",[21373]],[[194609,194611],"mapped",[21375]],[[194612,194612],"mapped",[133676]],[[194613,194613],"mapped",[28784]],[[194614,194614],"mapped",[21450]],[[194615,194615],"mapped",[21471]],[[194616,194616],"mapped",[133987]],[[194617,194617],"mapped",[21483]],[[194618,194618],"mapped",[21489]],[[194619,194619],"mapped",[21510]],[[194620,194620],"mapped",[21662]],[[194621,194621],"mapped",[21560]],[[194622,194622],"mapped",[21576]],[[194623,194623],"mapped",[21608]],[[194624,194624],"mapped",[21666]],[[194625,194625],"mapped",[21750]],[[194626,194626],"mapped",[21776]],[[194627,194627],"mapped",[21843]],[[194628,194628],"mapped",[21859]],[[194629,194630],"mapped",[21892]],[[194631,194631],"mapped",[21913]],[[194632,194632],"mapped",[21931]],[[194633,194633],"mapped",[21939]],[[194634,194634],"mapped",[21954]],[[194635,194635],"mapped",[22294]],[[194636,194636],"mapped",[22022]],[[194637,194637],"mapped",[22295]],[[194638,194638],"mapped",[22097]],[[194639,194639],"mapped",[22132]],[[194640,194640],"mapped",[20999]],[[194641,194641],"mapped",[22766]],[[194642,194642],"mapped",[22478]],[[194643,194643],"mapped",[22516]],[[194644,194644],"mapped",[22541]],[[194645,194645],"mapped",[22411]],[[194646,194646],"mapped",[22578]],[[194647,194647],"mapped",[22577]],[[194648,194648],"mapped",[22700]],[[194649,194649],"mapped",[136420]],[[194650,194650],"mapped",[22770]],[[194651,194651],"mapped",[22775]],[[194652,194652],"mapped",[22790]],[[194653,194653],"mapped",[22810]],[[194654,194654],"mapped",[22818]],[[194655,194655],"mapped",[22882]],[[194656,194656],"mapped",[136872]],[[194657,194657],"mapped",[136938]],[[194658,194658],"mapped",[23020]],[[194659,194659],"mapped",[23067]],[[194660,194660],"mapped",[23079]],[[194661,194661],"mapped",[23e3]],[[194662,194662],"mapped",[23142]],[[194663,194663],"mapped",[14062]],[[194664,194664],"disallowed"],[[194665,194665],"mapped",[23304]],[[194666,194667],"mapped",[23358]],[[194668,194668],"mapped",[137672]],[[194669,194669],"mapped",[23491]],[[194670,194670],"mapped",[23512]],[[194671,194671],"mapped",[23527]],[[194672,194672],"mapped",[23539]],[[194673,194673],"mapped",[138008]],[[194674,194674],"mapped",[23551]],[[194675,194675],"mapped",[23558]],[[194676,194676],"disallowed"],[[194677,194677],"mapped",[23586]],[[194678,194678],"mapped",[14209]],[[194679,194679],"mapped",[23648]],[[194680,194680],"mapped",[23662]],[[194681,194681],"mapped",[23744]],[[194682,194682],"mapped",[23693]],[[194683,194683],"mapped",[138724]],[[194684,194684],"mapped",[23875]],[[194685,194685],"mapped",[138726]],[[194686,194686],"mapped",[23918]],[[194687,194687],"mapped",[23915]],[[194688,194688],"mapped",[23932]],[[194689,194689],"mapped",[24033]],[[194690,194690],"mapped",[24034]],[[194691,194691],"mapped",[14383]],[[194692,194692],"mapped",[24061]],[[194693,194693],"mapped",[24104]],[[194694,194694],"mapped",[24125]],[[194695,194695],"mapped",[24169]],[[194696,194696],"mapped",[14434]],[[194697,194697],"mapped",[139651]],[[194698,194698],"mapped",[14460]],[[194699,194699],"mapped",[24240]],[[194700,194700],"mapped",[24243]],[[194701,194701],"mapped",[24246]],[[194702,194702],"mapped",[24266]],[[194703,194703],"mapped",[172946]],[[194704,194704],"mapped",[24318]],[[194705,194706],"mapped",[140081]],[[194707,194707],"mapped",[33281]],[[194708,194709],"mapped",[24354]],[[194710,194710],"mapped",[14535]],[[194711,194711],"mapped",[144056]],[[194712,194712],"mapped",[156122]],[[194713,194713],"mapped",[24418]],[[194714,194714],"mapped",[24427]],[[194715,194715],"mapped",[14563]],[[194716,194716],"mapped",[24474]],[[194717,194717],"mapped",[24525]],[[194718,194718],"mapped",[24535]],[[194719,194719],"mapped",[24569]],[[194720,194720],"mapped",[24705]],[[194721,194721],"mapped",[14650]],[[194722,194722],"mapped",[14620]],[[194723,194723],"mapped",[24724]],[[194724,194724],"mapped",[141012]],[[194725,194725],"mapped",[24775]],[[194726,194726],"mapped",[24904]],[[194727,194727],"mapped",[24908]],[[194728,194728],"mapped",[24910]],[[194729,194729],"mapped",[24908]],[[194730,194730],"mapped",[24954]],[[194731,194731],"mapped",[24974]],[[194732,194732],"mapped",[25010]],[[194733,194733],"mapped",[24996]],[[194734,194734],"mapped",[25007]],[[194735,194735],"mapped",[25054]],[[194736,194736],"mapped",[25074]],[[194737,194737],"mapped",[25078]],[[194738,194738],"mapped",[25104]],[[194739,194739],"mapped",[25115]],[[194740,194740],"mapped",[25181]],[[194741,194741],"mapped",[25265]],[[194742,194742],"mapped",[25300]],[[194743,194743],"mapped",[25424]],[[194744,194744],"mapped",[142092]],[[194745,194745],"mapped",[25405]],[[194746,194746],"mapped",[25340]],[[194747,194747],"mapped",[25448]],[[194748,194748],"mapped",[25475]],[[194749,194749],"mapped",[25572]],[[194750,194750],"mapped",[142321]],[[194751,194751],"mapped",[25634]],[[194752,194752],"mapped",[25541]],[[194753,194753],"mapped",[25513]],[[194754,194754],"mapped",[14894]],[[194755,194755],"mapped",[25705]],[[194756,194756],"mapped",[25726]],[[194757,194757],"mapped",[25757]],[[194758,194758],"mapped",[25719]],[[194759,194759],"mapped",[14956]],[[194760,194760],"mapped",[25935]],[[194761,194761],"mapped",[25964]],[[194762,194762],"mapped",[143370]],[[194763,194763],"mapped",[26083]],[[194764,194764],"mapped",[26360]],[[194765,194765],"mapped",[26185]],[[194766,194766],"mapped",[15129]],[[194767,194767],"mapped",[26257]],[[194768,194768],"mapped",[15112]],[[194769,194769],"mapped",[15076]],[[194770,194770],"mapped",[20882]],[[194771,194771],"mapped",[20885]],[[194772,194772],"mapped",[26368]],[[194773,194773],"mapped",[26268]],[[194774,194774],"mapped",[32941]],[[194775,194775],"mapped",[17369]],[[194776,194776],"mapped",[26391]],[[194777,194777],"mapped",[26395]],[[194778,194778],"mapped",[26401]],[[194779,194779],"mapped",[26462]],[[194780,194780],"mapped",[26451]],[[194781,194781],"mapped",[144323]],[[194782,194782],"mapped",[15177]],[[194783,194783],"mapped",[26618]],[[194784,194784],"mapped",[26501]],[[194785,194785],"mapped",[26706]],[[194786,194786],"mapped",[26757]],[[194787,194787],"mapped",[144493]],[[194788,194788],"mapped",[26766]],[[194789,194789],"mapped",[26655]],[[194790,194790],"mapped",[26900]],[[194791,194791],"mapped",[15261]],[[194792,194792],"mapped",[26946]],[[194793,194793],"mapped",[27043]],[[194794,194794],"mapped",[27114]],[[194795,194795],"mapped",[27304]],[[194796,194796],"mapped",[145059]],[[194797,194797],"mapped",[27355]],[[194798,194798],"mapped",[15384]],[[194799,194799],"mapped",[27425]],[[194800,194800],"mapped",[145575]],[[194801,194801],"mapped",[27476]],[[194802,194802],"mapped",[15438]],[[194803,194803],"mapped",[27506]],[[194804,194804],"mapped",[27551]],[[194805,194805],"mapped",[27578]],[[194806,194806],"mapped",[27579]],[[194807,194807],"mapped",[146061]],[[194808,194808],"mapped",[138507]],[[194809,194809],"mapped",[146170]],[[194810,194810],"mapped",[27726]],[[194811,194811],"mapped",[146620]],[[194812,194812],"mapped",[27839]],[[194813,194813],"mapped",[27853]],[[194814,194814],"mapped",[27751]],[[194815,194815],"mapped",[27926]],[[194816,194816],"mapped",[27966]],[[194817,194817],"mapped",[28023]],[[194818,194818],"mapped",[27969]],[[194819,194819],"mapped",[28009]],[[194820,194820],"mapped",[28024]],[[194821,194821],"mapped",[28037]],[[194822,194822],"mapped",[146718]],[[194823,194823],"mapped",[27956]],[[194824,194824],"mapped",[28207]],[[194825,194825],"mapped",[28270]],[[194826,194826],"mapped",[15667]],[[194827,194827],"mapped",[28363]],[[194828,194828],"mapped",[28359]],[[194829,194829],"mapped",[147153]],[[194830,194830],"mapped",[28153]],[[194831,194831],"mapped",[28526]],[[194832,194832],"mapped",[147294]],[[194833,194833],"mapped",[147342]],[[194834,194834],"mapped",[28614]],[[194835,194835],"mapped",[28729]],[[194836,194836],"mapped",[28702]],[[194837,194837],"mapped",[28699]],[[194838,194838],"mapped",[15766]],[[194839,194839],"mapped",[28746]],[[194840,194840],"mapped",[28797]],[[194841,194841],"mapped",[28791]],[[194842,194842],"mapped",[28845]],[[194843,194843],"mapped",[132389]],[[194844,194844],"mapped",[28997]],[[194845,194845],"mapped",[148067]],[[194846,194846],"mapped",[29084]],[[194847,194847],"disallowed"],[[194848,194848],"mapped",[29224]],[[194849,194849],"mapped",[29237]],[[194850,194850],"mapped",[29264]],[[194851,194851],"mapped",[149e3]],[[194852,194852],"mapped",[29312]],[[194853,194853],"mapped",[29333]],[[194854,194854],"mapped",[149301]],[[194855,194855],"mapped",[149524]],[[194856,194856],"mapped",[29562]],[[194857,194857],"mapped",[29579]],[[194858,194858],"mapped",[16044]],[[194859,194859],"mapped",[29605]],[[194860,194861],"mapped",[16056]],[[194862,194862],"mapped",[29767]],[[194863,194863],"mapped",[29788]],[[194864,194864],"mapped",[29809]],[[194865,194865],"mapped",[29829]],[[194866,194866],"mapped",[29898]],[[194867,194867],"mapped",[16155]],[[194868,194868],"mapped",[29988]],[[194869,194869],"mapped",[150582]],[[194870,194870],"mapped",[30014]],[[194871,194871],"mapped",[150674]],[[194872,194872],"mapped",[30064]],[[194873,194873],"mapped",[139679]],[[194874,194874],"mapped",[30224]],[[194875,194875],"mapped",[151457]],[[194876,194876],"mapped",[151480]],[[194877,194877],"mapped",[151620]],[[194878,194878],"mapped",[16380]],[[194879,194879],"mapped",[16392]],[[194880,194880],"mapped",[30452]],[[194881,194881],"mapped",[151795]],[[194882,194882],"mapped",[151794]],[[194883,194883],"mapped",[151833]],[[194884,194884],"mapped",[151859]],[[194885,194885],"mapped",[30494]],[[194886,194887],"mapped",[30495]],[[194888,194888],"mapped",[30538]],[[194889,194889],"mapped",[16441]],[[194890,194890],"mapped",[30603]],[[194891,194891],"mapped",[16454]],[[194892,194892],"mapped",[16534]],[[194893,194893],"mapped",[152605]],[[194894,194894],"mapped",[30798]],[[194895,194895],"mapped",[30860]],[[194896,194896],"mapped",[30924]],[[194897,194897],"mapped",[16611]],[[194898,194898],"mapped",[153126]],[[194899,194899],"mapped",[31062]],[[194900,194900],"mapped",[153242]],[[194901,194901],"mapped",[153285]],[[194902,194902],"mapped",[31119]],[[194903,194903],"mapped",[31211]],[[194904,194904],"mapped",[16687]],[[194905,194905],"mapped",[31296]],[[194906,194906],"mapped",[31306]],[[194907,194907],"mapped",[31311]],[[194908,194908],"mapped",[153980]],[[194909,194910],"mapped",[154279]],[[194911,194911],"disallowed"],[[194912,194912],"mapped",[16898]],[[194913,194913],"mapped",[154539]],[[194914,194914],"mapped",[31686]],[[194915,194915],"mapped",[31689]],[[194916,194916],"mapped",[16935]],[[194917,194917],"mapped",[154752]],[[194918,194918],"mapped",[31954]],[[194919,194919],"mapped",[17056]],[[194920,194920],"mapped",[31976]],[[194921,194921],"mapped",[31971]],[[194922,194922],"mapped",[32e3]],[[194923,194923],"mapped",[155526]],[[194924,194924],"mapped",[32099]],[[194925,194925],"mapped",[17153]],[[194926,194926],"mapped",[32199]],[[194927,194927],"mapped",[32258]],[[194928,194928],"mapped",[32325]],[[194929,194929],"mapped",[17204]],[[194930,194930],"mapped",[156200]],[[194931,194931],"mapped",[156231]],[[194932,194932],"mapped",[17241]],[[194933,194933],"mapped",[156377]],[[194934,194934],"mapped",[32634]],[[194935,194935],"mapped",[156478]],[[194936,194936],"mapped",[32661]],[[194937,194937],"mapped",[32762]],[[194938,194938],"mapped",[32773]],[[194939,194939],"mapped",[156890]],[[194940,194940],"mapped",[156963]],[[194941,194941],"mapped",[32864]],[[194942,194942],"mapped",[157096]],[[194943,194943],"mapped",[32880]],[[194944,194944],"mapped",[144223]],[[194945,194945],"mapped",[17365]],[[194946,194946],"mapped",[32946]],[[194947,194947],"mapped",[33027]],[[194948,194948],"mapped",[17419]],[[194949,194949],"mapped",[33086]],[[194950,194950],"mapped",[23221]],[[194951,194951],"mapped",[157607]],[[194952,194952],"mapped",[157621]],[[194953,194953],"mapped",[144275]],[[194954,194954],"mapped",[144284]],[[194955,194955],"mapped",[33281]],[[194956,194956],"mapped",[33284]],[[194957,194957],"mapped",[36766]],[[194958,194958],"mapped",[17515]],[[194959,194959],"mapped",[33425]],[[194960,194960],"mapped",[33419]],[[194961,194961],"mapped",[33437]],[[194962,194962],"mapped",[21171]],[[194963,194963],"mapped",[33457]],[[194964,194964],"mapped",[33459]],[[194965,194965],"mapped",[33469]],[[194966,194966],"mapped",[33510]],[[194967,194967],"mapped",[158524]],[[194968,194968],"mapped",[33509]],[[194969,194969],"mapped",[33565]],[[194970,194970],"mapped",[33635]],[[194971,194971],"mapped",[33709]],[[194972,194972],"mapped",[33571]],[[194973,194973],"mapped",[33725]],[[194974,194974],"mapped",[33767]],[[194975,194975],"mapped",[33879]],[[194976,194976],"mapped",[33619]],[[194977,194977],"mapped",[33738]],[[194978,194978],"mapped",[33740]],[[194979,194979],"mapped",[33756]],[[194980,194980],"mapped",[158774]],[[194981,194981],"mapped",[159083]],[[194982,194982],"mapped",[158933]],[[194983,194983],"mapped",[17707]],[[194984,194984],"mapped",[34033]],[[194985,194985],"mapped",[34035]],[[194986,194986],"mapped",[34070]],[[194987,194987],"mapped",[160714]],[[194988,194988],"mapped",[34148]],[[194989,194989],"mapped",[159532]],[[194990,194990],"mapped",[17757]],[[194991,194991],"mapped",[17761]],[[194992,194992],"mapped",[159665]],[[194993,194993],"mapped",[159954]],[[194994,194994],"mapped",[17771]],[[194995,194995],"mapped",[34384]],[[194996,194996],"mapped",[34396]],[[194997,194997],"mapped",[34407]],[[194998,194998],"mapped",[34409]],[[194999,194999],"mapped",[34473]],[[195e3,195e3],"mapped",[34440]],[[195001,195001],"mapped",[34574]],[[195002,195002],"mapped",[34530]],[[195003,195003],"mapped",[34681]],[[195004,195004],"mapped",[34600]],[[195005,195005],"mapped",[34667]],[[195006,195006],"mapped",[34694]],[[195007,195007],"disallowed"],[[195008,195008],"mapped",[34785]],[[195009,195009],"mapped",[34817]],[[195010,195010],"mapped",[17913]],[[195011,195011],"mapped",[34912]],[[195012,195012],"mapped",[34915]],[[195013,195013],"mapped",[161383]],[[195014,195014],"mapped",[35031]],[[195015,195015],"mapped",[35038]],[[195016,195016],"mapped",[17973]],[[195017,195017],"mapped",[35066]],[[195018,195018],"mapped",[13499]],[[195019,195019],"mapped",[161966]],[[195020,195020],"mapped",[162150]],[[195021,195021],"mapped",[18110]],[[195022,195022],"mapped",[18119]],[[195023,195023],"mapped",[35488]],[[195024,195024],"mapped",[35565]],[[195025,195025],"mapped",[35722]],[[195026,195026],"mapped",[35925]],[[195027,195027],"mapped",[162984]],[[195028,195028],"mapped",[36011]],[[195029,195029],"mapped",[36033]],[[195030,195030],"mapped",[36123]],[[195031,195031],"mapped",[36215]],[[195032,195032],"mapped",[163631]],[[195033,195033],"mapped",[133124]],[[195034,195034],"mapped",[36299]],[[195035,195035],"mapped",[36284]],[[195036,195036],"mapped",[36336]],[[195037,195037],"mapped",[133342]],[[195038,195038],"mapped",[36564]],[[195039,195039],"mapped",[36664]],[[195040,195040],"mapped",[165330]],[[195041,195041],"mapped",[165357]],[[195042,195042],"mapped",[37012]],[[195043,195043],"mapped",[37105]],[[195044,195044],"mapped",[37137]],[[195045,195045],"mapped",[165678]],[[195046,195046],"mapped",[37147]],[[195047,195047],"mapped",[37432]],[[195048,195048],"mapped",[37591]],[[195049,195049],"mapped",[37592]],[[195050,195050],"mapped",[37500]],[[195051,195051],"mapped",[37881]],[[195052,195052],"mapped",[37909]],[[195053,195053],"mapped",[166906]],[[195054,195054],"mapped",[38283]],[[195055,195055],"mapped",[18837]],[[195056,195056],"mapped",[38327]],[[195057,195057],"mapped",[167287]],[[195058,195058],"mapped",[18918]],[[195059,195059],"mapped",[38595]],[[195060,195060],"mapped",[23986]],[[195061,195061],"mapped",[38691]],[[195062,195062],"mapped",[168261]],[[195063,195063],"mapped",[168474]],[[195064,195064],"mapped",[19054]],[[195065,195065],"mapped",[19062]],[[195066,195066],"mapped",[38880]],[[195067,195067],"mapped",[168970]],[[195068,195068],"mapped",[19122]],[[195069,195069],"mapped",[169110]],[[195070,195071],"mapped",[38923]],[[195072,195072],"mapped",[38953]],[[195073,195073],"mapped",[169398]],[[195074,195074],"mapped",[39138]],[[195075,195075],"mapped",[19251]],[[195076,195076],"mapped",[39209]],[[195077,195077],"mapped",[39335]],[[195078,195078],"mapped",[39362]],[[195079,195079],"mapped",[39422]],[[195080,195080],"mapped",[19406]],[[195081,195081],"mapped",[170800]],[[195082,195082],"mapped",[39698]],[[195083,195083],"mapped",[4e4]],[[195084,195084],"mapped",[40189]],[[195085,195085],"mapped",[19662]],[[195086,195086],"mapped",[19693]],[[195087,195087],"mapped",[40295]],[[195088,195088],"mapped",[172238]],[[195089,195089],"mapped",[19704]],[[195090,195090],"mapped",[172293]],[[195091,195091],"mapped",[172558]],[[195092,195092],"mapped",[172689]],[[195093,195093],"mapped",[40635]],[[195094,195094],"mapped",[19798]],[[195095,195095],"mapped",[40697]],[[195096,195096],"mapped",[40702]],[[195097,195097],"mapped",[40709]],[[195098,195098],"mapped",[40719]],[[195099,195099],"mapped",[40726]],[[195100,195100],"mapped",[40763]],[[195101,195101],"mapped",[173568]],[[195102,196605],"disallowed"],[[196606,196607],"disallowed"],[[196608,262141],"disallowed"],[[262142,262143],"disallowed"],[[262144,327677],"disallowed"],[[327678,327679],"disallowed"],[[327680,393213],"disallowed"],[[393214,393215],"disallowed"],[[393216,458749],"disallowed"],[[458750,458751],"disallowed"],[[458752,524285],"disallowed"],[[524286,524287],"disallowed"],[[524288,589821],"disallowed"],[[589822,589823],"disallowed"],[[589824,655357],"disallowed"],[[655358,655359],"disallowed"],[[655360,720893],"disallowed"],[[720894,720895],"disallowed"],[[720896,786429],"disallowed"],[[786430,786431],"disallowed"],[[786432,851965],"disallowed"],[[851966,851967],"disallowed"],[[851968,917501],"disallowed"],[[917502,917503],"disallowed"],[[917504,917504],"disallowed"],[[917505,917505],"disallowed"],[[917506,917535],"disallowed"],[[917536,917631],"disallowed"],[[917632,917759],"disallowed"],[[917760,917999],"ignored"],[[918e3,983037],"disallowed"],[[983038,983039],"disallowed"],[[983040,1048573],"disallowed"],[[1048574,1048575],"disallowed"],[[1048576,1114109],"disallowed"],[[1114110,1114111],"disallowed"]]});var JP=b((M8e,y8)=>{"use strict";var HP=require("punycode"),jP=UP(),I1={TRANSITIONAL:0,NONTRANSITIONAL:1};function $P(t){return t.split("\0").map(function(e){return e.normalize("NFC")}).join("\0")}function GP(t){for(var e=0,r=jP.length-1;e<=r;){var i=Math.floor((e+r)/2),a=jP[i];if(a[0][0]<=t&&a[0][1]>=t)return a;a[0][0]>t?r=i-1:e=i+1}return null}var fG=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;function ZP(t){return t.replace(fG,"_").length}function hG(t,e,r){for(var i=!1,a="",n=ZP(t),s=0;s253||s.length===0)&&(a.error=!0);for(var o=0;o63||n.length===0){a.error=!0;break}}return a.error?null:n.join(".")};y8.exports.toUnicode=function(t,e){var r=g8(t,e,I1.NONTRANSITIONAL);return{domain:r.string,error:r.error}};y8.exports.PROCESSING_OPTIONS=I1});var Za=b((D8e,Ci)=>{"use strict";var M1=require("punycode"),YP=JP(),tT={ftp:21,file:null,gopher:70,http:80,https:443,ws:80,wss:443},Ne=Symbol("failure");function QP(t){return M1.ucs2.decode(t).length}function XP(t,e){let r=t[e];return isNaN(r)?void 0:String.fromCodePoint(r)}function jp(t){return t>=48&&t<=57}function Hp(t){return t>=65&&t<=90||t>=97&&t<=122}function bG(t){return Hp(t)||jp(t)}function Ea(t){return jp(t)||t>=65&&t<=70||t>=97&&t<=102}function eT(t){return t==="."||t.toLowerCase()==="%2e"}function vG(t){return t=t.toLowerCase(),t===".."||t==="%2e."||t===".%2e"||t==="%2e%2e"}function SG(t,e){return Hp(t)&&(e===58||e===124)}function rT(t){return t.length===2&&Hp(t.codePointAt(0))&&(t[1]===":"||t[1]==="|")}function wG(t){return t.length===2&&Hp(t.codePointAt(0))&&t[1]===":"}function xG(t){return t.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|%|\/|:|\?|@|\[|\\|\]/)!==-1}function AG(t){return t.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|\/|:|\?|@|\[|\\|\]/)!==-1}function r7(t){return tT[t]!==void 0}function wr(t){return r7(t.scheme)}function _G(t){return tT[t]}function iT(t){let e=t.toString(16).toUpperCase();return e.length===1&&(e="0"+e),"%"+e}function kG(t){let e=new Buffer(t),r="";for(let i=0;i126}var PG=new Set([32,34,35,60,62,63,96,123,125]);function aT(t){return b8(t)||PG.has(t)}var TG=new Set([47,58,59,61,64,91,92,93,94,124]);function a7(t){return aT(t)||TG.has(t)}function rl(t,e){let r=String.fromCodePoint(t);return e(t)?kG(r):r}function zG(t){let e=10;return t.length>=2&&t.charAt(0)==="0"&&t.charAt(1).toLowerCase()==="x"?(t=t.substring(2),e=16):t.length>=2&&t.charAt(0)==="0"&&(t=t.substring(1),e=8),t===""?0:(e===10?/[^0-9]/:e===16?/[^0-9A-Fa-f]/:/[^0-7]/).test(t)?Ne:parseInt(t,e)}function IG(t){let e=t.split(".");if(e[e.length-1]===""&&e.length>1&&e.pop(),e.length>4)return t;let r=[];for(let n of e){if(n==="")return t;let s=zG(n);if(s===Ne)return t;r.push(s)}for(let n=0;n255)return Ne;if(r[r.length-1]>=Math.pow(256,5-r.length))return Ne;let i=r.pop(),a=0;for(let n of r)i+=n*Math.pow(256,3-a),++a;return i}function MG(t){let e="",r=t;for(let i=1;i<=4;++i)e=String(r%256)+e,i!==4&&(e="."+e),r=Math.floor(r/256);return e}function DG(t){let e=[0,0,0,0,0,0,0,0],r=0,i=null,a=0;if(t=M1.ucs2.decode(t),t[a]===58){if(t[a+1]!==58)return Ne;a+=2,++r,i=r}for(;a6))return Ne;let o=0;for(;t[a]!==void 0;){let l=null;if(o>0)if(t[a]===46&&o<4)++a;else return Ne;if(!jp(t[a]))return Ne;for(;jp(t[a]);){let d=parseInt(XP(t,a));if(l===null)l=d;else{if(l===0)return Ne;l=l*10+d}if(l>255)return Ne;++a}e[r]=e[r]*256+l,++o,(o===2||o===4)&&++r}if(o!==4)return Ne;break}else if(t[a]===58){if(++a,t[a]===void 0)return Ne}else if(t[a]!==void 0)return Ne;e[r]=n,++r}if(i!==null){let n=r-i;for(r=7;r!==0&&n>0;){let s=e[i+n-1];e[i+n-1]=e[r],e[r]=s,--r,--n}}else if(i===null&&r!==8)return Ne;return e}function RG(t){let e="",i=CG(t).idx,a=!1;for(let n=0;n<=7;++n)if(!(a&&t[n]===0)){if(a&&(a=!1),i===n){e+=n===0?"::":":",a=!0;continue}e+=t[n].toString(16),n!==7&&(e+=":")}return e}function i7(t,e){if(t[0]==="[")return t[t.length-1]!=="]"?Ne:DG(t.substring(1,t.length-1));if(!e)return BG(t);let r=EG(t),i=YP.toASCII(r,!1,YP.PROCESSING_OPTIONS.NONTRANSITIONAL,!1);if(i===null||xG(i))return Ne;let a=IG(i);return typeof a=="number"||a===Ne?a:i}function BG(t){if(AG(t))return Ne;let e="",r=M1.ucs2.decode(t);for(let i=0;ir&&(e=i,r=a),i=null,a=0):(i===null&&(i=n),++a);return a>r&&(e=i,r=a),{idx:e,len:r}}function n7(t){return typeof t=="number"?MG(t):t instanceof Array?"["+RG(t)+"]":t}function OG(t){return t.replace(/^[\u0000-\u001F\u0020]+|[\u0000-\u001F\u0020]+$/g,"")}function NG(t){return t.replace(/\u0009|\u000A|\u000D/g,"")}function nT(t){let e=t.path;e.length!==0&&(t.scheme==="file"&&e.length===1&&WG(e[0])||e.pop())}function sT(t){return t.username!==""||t.password!==""}function qG(t){return t.host===null||t.host===""||t.cannotBeABaseURL||t.scheme==="file"}function WG(t){return/^[A-Za-z]:$/.test(t)}function Mt(t,e,r,i,a){if(this.pointer=0,this.input=t,this.base=e||null,this.encodingOverride=r||"utf-8",this.stateOverride=a,this.url=i,this.failure=!1,this.parseError=!1,!this.url){this.url={scheme:"",username:"",password:"",host:null,port:null,path:[],query:null,fragment:null,cannotBeABaseURL:!1};let s=OG(this.input);s!==this.input&&(this.parseError=!0),this.input=s}let n=NG(this.input);for(n!==this.input&&(this.parseError=!0),this.input=n,this.state=a||"scheme start",this.buffer="",this.atFlag=!1,this.arrFlag=!1,this.passwordTokenSeenFlag=!1,this.input=M1.ucs2.decode(this.input);this.pointer<=this.input.length;++this.pointer){let s=this.input[this.pointer],o=isNaN(s)?void 0:String.fromCodePoint(s),l=this["parse "+this.state](s,o);if(l){if(l===Ne){this.failure=!0;break}}else break}}Mt.prototype["parse scheme start"]=function(e,r){if(Hp(e))this.buffer+=r.toLowerCase(),this.state="scheme";else if(!this.stateOverride)this.state="no scheme",--this.pointer;else return this.parseError=!0,Ne;return!0};Mt.prototype["parse scheme"]=function(e,r){if(bG(e)||e===43||e===45||e===46)this.buffer+=r.toLowerCase();else if(e===58){if(this.stateOverride&&(wr(this.url)&&!r7(this.buffer)||!wr(this.url)&&r7(this.buffer)||(sT(this.url)||this.url.port!==null)&&this.buffer==="file"||this.url.scheme==="file"&&(this.url.host===""||this.url.host===null))||(this.url.scheme=this.buffer,this.buffer="",this.stateOverride))return!1;this.url.scheme==="file"?((this.input[this.pointer+1]!==47||this.input[this.pointer+2]!==47)&&(this.parseError=!0),this.state="file"):wr(this.url)&&this.base!==null&&this.base.scheme===this.url.scheme?this.state="special relative or authority":wr(this.url)?this.state="special authority slashes":this.input[this.pointer+1]===47?(this.state="path or authority",++this.pointer):(this.url.cannotBeABaseURL=!0,this.url.path.push(""),this.state="cannot-be-a-base-URL path")}else if(!this.stateOverride)this.buffer="",this.state="no scheme",this.pointer=-1;else return this.parseError=!0,Ne;return!0};Mt.prototype["parse no scheme"]=function(e){return this.base===null||this.base.cannotBeABaseURL&&e!==35?Ne:(this.base.cannotBeABaseURL&&e===35?(this.url.scheme=this.base.scheme,this.url.path=this.base.path.slice(),this.url.query=this.base.query,this.url.fragment="",this.url.cannotBeABaseURL=!0,this.state="fragment"):this.base.scheme==="file"?(this.state="file",--this.pointer):(this.state="relative",--this.pointer),!0)};Mt.prototype["parse special relative or authority"]=function(e){return e===47&&this.input[this.pointer+1]===47?(this.state="special authority ignore slashes",++this.pointer):(this.parseError=!0,this.state="relative",--this.pointer),!0};Mt.prototype["parse path or authority"]=function(e){return e===47?this.state="authority":(this.state="path",--this.pointer),!0};Mt.prototype["parse relative"]=function(e){return this.url.scheme=this.base.scheme,isNaN(e)?(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(),this.url.query=this.base.query):e===47?this.state="relative slash":e===63?(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(),this.url.query="",this.state="query"):e===35?(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(),this.url.query=this.base.query,this.url.fragment="",this.state="fragment"):wr(this.url)&&e===92?(this.parseError=!0,this.state="relative slash"):(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(0,this.base.path.length-1),this.state="path",--this.pointer),!0};Mt.prototype["parse relative slash"]=function(e){return wr(this.url)&&(e===47||e===92)?(e===92&&(this.parseError=!0),this.state="special authority ignore slashes"):e===47?this.state="authority":(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.state="path",--this.pointer),!0};Mt.prototype["parse special authority slashes"]=function(e){return e===47&&this.input[this.pointer+1]===47?(this.state="special authority ignore slashes",++this.pointer):(this.parseError=!0,this.state="special authority ignore slashes",--this.pointer),!0};Mt.prototype["parse special authority ignore slashes"]=function(e){return e!==47&&e!==92?(this.state="authority",--this.pointer):this.parseError=!0,!0};Mt.prototype["parse authority"]=function(e,r){if(e===64){this.parseError=!0,this.atFlag&&(this.buffer="%40"+this.buffer),this.atFlag=!0;let i=QP(this.buffer);for(let a=0;aMath.pow(2,16)-1)return this.parseError=!0,Ne;this.url.port=i===_G(this.url.scheme)?null:i,this.buffer=""}if(this.stateOverride)return!1;this.state="path start",--this.pointer}else return this.parseError=!0,Ne;return!0};var VG=new Set([47,92,63,35]);Mt.prototype["parse file"]=function(e){return this.url.scheme="file",e===47||e===92?(e===92&&(this.parseError=!0),this.state="file slash"):this.base!==null&&this.base.scheme==="file"?isNaN(e)?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),this.url.query=this.base.query):e===63?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),this.url.query="",this.state="query"):e===35?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),this.url.query=this.base.query,this.url.fragment="",this.state="fragment"):(this.input.length-this.pointer-1===0||!SG(e,this.input[this.pointer+1])||this.input.length-this.pointer-1>=2&&!VG.has(this.input[this.pointer+2])?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),nT(this.url)):this.parseError=!0,this.state="path",--this.pointer):(this.state="path",--this.pointer),!0};Mt.prototype["parse file slash"]=function(e){return e===47||e===92?(e===92&&(this.parseError=!0),this.state="file host"):(this.base!==null&&this.base.scheme==="file"&&(wG(this.base.path[0])?this.url.path.push(this.base.path[0]):this.url.host=this.base.host),this.state="path",--this.pointer),!0};Mt.prototype["parse file host"]=function(e,r){if(isNaN(e)||e===47||e===92||e===63||e===35)if(--this.pointer,!this.stateOverride&&rT(this.buffer))this.parseError=!0,this.state="path";else if(this.buffer===""){if(this.url.host="",this.stateOverride)return!1;this.state="path start"}else{let i=i7(this.buffer,wr(this.url));if(i===Ne)return Ne;if(i==="localhost"&&(i=""),this.url.host=i,this.stateOverride)return!1;this.buffer="",this.state="path start"}else this.buffer+=r;return!0};Mt.prototype["parse path start"]=function(e){return wr(this.url)?(e===92&&(this.parseError=!0),this.state="path",e!==47&&e!==92&&--this.pointer):!this.stateOverride&&e===63?(this.url.query="",this.state="query"):!this.stateOverride&&e===35?(this.url.fragment="",this.state="fragment"):e!==void 0&&(this.state="path",e!==47&&--this.pointer),!0};Mt.prototype["parse path"]=function(e){if(isNaN(e)||e===47||wr(this.url)&&e===92||!this.stateOverride&&(e===63||e===35)){if(wr(this.url)&&e===92&&(this.parseError=!0),vG(this.buffer)?(nT(this.url),e!==47&&!(wr(this.url)&&e===92)&&this.url.path.push("")):eT(this.buffer)&&e!==47&&!(wr(this.url)&&e===92)?this.url.path.push(""):eT(this.buffer)||(this.url.scheme==="file"&&this.url.path.length===0&&rT(this.buffer)&&(this.url.host!==""&&this.url.host!==null&&(this.parseError=!0,this.url.host=""),this.buffer=this.buffer[0]+":"),this.url.path.push(this.buffer)),this.buffer="",this.url.scheme==="file"&&(e===void 0||e===63||e===35))for(;this.url.path.length>1&&this.url.path[0]==="";)this.parseError=!0,this.url.path.shift();e===63&&(this.url.query="",this.state="query"),e===35&&(this.url.fragment="",this.state="fragment")}else e===37&&(!Ea(this.input[this.pointer+1])||!Ea(this.input[this.pointer+2]))&&(this.parseError=!0),this.buffer+=rl(e,aT);return!0};Mt.prototype["parse cannot-be-a-base-URL path"]=function(e){return e===63?(this.url.query="",this.state="query"):e===35?(this.url.fragment="",this.state="fragment"):(!isNaN(e)&&e!==37&&(this.parseError=!0),e===37&&(!Ea(this.input[this.pointer+1])||!Ea(this.input[this.pointer+2]))&&(this.parseError=!0),isNaN(e)||(this.url.path[0]=this.url.path[0]+rl(e,b8))),!0};Mt.prototype["parse query"]=function(e,r){if(isNaN(e)||!this.stateOverride&&e===35){(!wr(this.url)||this.url.scheme==="ws"||this.url.scheme==="wss")&&(this.encodingOverride="utf-8");let i=new Buffer(this.buffer);for(let a=0;a126||i[a]===34||i[a]===35||i[a]===60||i[a]===62?this.url.query+=iT(i[a]):this.url.query+=String.fromCodePoint(i[a]);this.buffer="",e===35&&(this.url.fragment="",this.state="fragment")}else e===37&&(!Ea(this.input[this.pointer+1])||!Ea(this.input[this.pointer+2]))&&(this.parseError=!0),this.buffer+=r;return!0};Mt.prototype["parse fragment"]=function(e){return isNaN(e)||(e===0?this.parseError=!0:(e===37&&(!Ea(this.input[this.pointer+1])||!Ea(this.input[this.pointer+2]))&&(this.parseError=!0),this.url.fragment+=rl(e,b8))),!0};function FG(t,e){let r=t.scheme+":";if(t.host!==null?(r+="//",(t.username!==""||t.password!=="")&&(r+=t.username,t.password!==""&&(r+=":"+t.password),r+="@"),r+=n7(t.host),t.port!==null&&(r+=":"+t.port)):t.host===null&&t.scheme==="file"&&(r+="//"),t.cannotBeABaseURL)r+=t.path[0];else for(let i of t.path)r+="/"+i;return t.query!==null&&(r+="?"+t.query),!e&&t.fragment!==null&&(r+="#"+t.fragment),r}function KG(t){let e=t.scheme+"://";return e+=n7(t.host),t.port!==null&&(e+=":"+t.port),e}Ci.exports.serializeURL=FG;Ci.exports.serializeURLOrigin=function(t){switch(t.scheme){case"blob":try{return Ci.exports.serializeURLOrigin(Ci.exports.parseURL(t.path[0]))}catch{return"null"}case"ftp":case"gopher":case"http":case"https":case"ws":case"wss":return KG({scheme:t.scheme,host:t.host,port:t.port});case"file":return"file://";default:return"null"}};Ci.exports.basicURLParse=function(t,e){e===void 0&&(e={});let r=new Mt(t,e.baseURL,e.encodingOverride,e.url,e.stateOverride);return r.failure?"failure":r.url};Ci.exports.setTheUsername=function(t,e){t.username="";let r=M1.ucs2.decode(e);for(let i=0;i{"use strict";var Dt=Za();oT.implementation=class{constructor(e){let r=e[0],i=e[1],a=null;if(i!==void 0&&(a=Dt.basicURLParse(i),a==="failure"))throw new TypeError("Invalid base URL");let n=Dt.basicURLParse(r,{baseURL:a});if(n==="failure")throw new TypeError("Invalid URL");this._url=n}get href(){return Dt.serializeURL(this._url)}set href(e){let r=Dt.basicURLParse(e);if(r==="failure")throw new TypeError("Invalid URL");this._url=r}get origin(){return Dt.serializeURLOrigin(this._url)}get protocol(){return this._url.scheme+":"}set protocol(e){Dt.basicURLParse(e+":",{url:this._url,stateOverride:"scheme start"})}get username(){return this._url.username}set username(e){Dt.cannotHaveAUsernamePasswordPort(this._url)||Dt.setTheUsername(this._url,e)}get password(){return this._url.password}set password(e){Dt.cannotHaveAUsernamePasswordPort(this._url)||Dt.setThePassword(this._url,e)}get host(){let e=this._url;return e.host===null?"":e.port===null?Dt.serializeHost(e.host):Dt.serializeHost(e.host)+":"+Dt.serializeInteger(e.port)}set host(e){this._url.cannotBeABaseURL||Dt.basicURLParse(e,{url:this._url,stateOverride:"host"})}get hostname(){return this._url.host===null?"":Dt.serializeHost(this._url.host)}set hostname(e){this._url.cannotBeABaseURL||Dt.basicURLParse(e,{url:this._url,stateOverride:"hostname"})}get port(){return this._url.port===null?"":Dt.serializeInteger(this._url.port)}set port(e){Dt.cannotHaveAUsernamePasswordPort(this._url)||(e===""?this._url.port=null:Dt.basicURLParse(e,{url:this._url,stateOverride:"port"}))}get pathname(){return this._url.cannotBeABaseURL?this._url.path[0]:this._url.path.length===0?"":"/"+this._url.path.join("/")}set pathname(e){this._url.cannotBeABaseURL||(this._url.path=[],Dt.basicURLParse(e,{url:this._url,stateOverride:"path start"}))}get search(){return this._url.query===null||this._url.query===""?"":"?"+this._url.query}set search(e){let r=this._url;if(e===""){r.query=null;return}let i=e[0]==="?"?e.substring(1):e;r.query="",Dt.basicURLParse(i,{url:r,stateOverride:"query"})}get hash(){return this._url.fragment===null||this._url.fragment===""?"":"#"+this._url.fragment}set hash(e){if(e===""){this._url.fragment=null;return}let r=e[0]==="#"?e.substring(1):e;this._url.fragment="",Dt.basicURLParse(r,{url:this._url,stateOverride:"fragment"})}toJSON(){return this.href}}});var cT=b((C8e,$p)=>{"use strict";var $i=KP(),uT=LP(),dT=lT(),at=uT.implSymbol;function zr(t){if(!this||this[at]||!(this instanceof zr))throw new TypeError("Failed to construct 'URL': Please use the 'new' operator, this DOM object constructor cannot be called as a function.");if(arguments.length<1)throw new TypeError("Failed to construct 'URL': 1 argument required, but only "+arguments.length+" present.");let e=[];for(let r=0;r{"use strict";Ja.URL=cT().interface;Ja.serializeURL=Za().serializeURL;Ja.serializeURLOrigin=Za().serializeURLOrigin;Ja.basicURLParse=Za().basicURLParse;Ja.setTheUsername=Za().setTheUsername;Ja.setThePassword=Za().setThePassword;Ja.serializeHost=Za().serializeHost;Ja.serializeInteger=Za().serializeInteger;Ja.parseURL=Za().parseURL});var Tn=b((N8e,mT)=>{"use strict";var v8=require("buffer"),D1=v8.Buffer,Gi={},Zi;for(Zi in v8)v8.hasOwnProperty(Zi)&&(Zi==="SlowBuffer"||Zi==="Buffer"||(Gi[Zi]=v8[Zi]));var R1=Gi.Buffer={};for(Zi in D1)D1.hasOwnProperty(Zi)&&(Zi==="allocUnsafe"||Zi==="allocUnsafeSlow"||(R1[Zi]=D1[Zi]));Gi.Buffer.prototype=D1.prototype;(!R1.from||R1.from===Uint8Array.from)&&(R1.from=function(t,e,r){if(typeof t=="number")throw new TypeError('The "value" argument must not be of type number. Received type '+typeof t);if(t&&typeof t.length>"u")throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);return D1(t,e,r)});R1.alloc||(R1.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError('The "size" argument must be of type number. Received type '+typeof t);if(t<0||t>=2*(1<<30))throw new RangeError('The value "'+t+'" is invalid for option "size"');var i=D1(t);return!e||e.length===0?i.fill(0):typeof r=="string"?i.fill(e,r):i.fill(e),i});if(!Gi.kStringMaxLength)try{Gi.kStringMaxLength=process.binding("buffer").kStringMaxLength}catch{}Gi.constants||(Gi.constants={MAX_LENGTH:Gi.kMaxLength},Gi.kStringMaxLength&&(Gi.constants.MAX_STRING_LENGTH=Gi.kStringMaxLength));mT.exports=Gi});var hT=b(l7=>{"use strict";var fT="\uFEFF";l7.PrependBOM=s7;function s7(t,e){this.encoder=t,this.addBOM=!0}s7.prototype.write=function(t){return this.addBOM&&(t=fT+t,this.addBOM=!1),this.encoder.write(t)};s7.prototype.end=function(){return this.encoder.end()};l7.StripBOM=o7;function o7(t,e){this.decoder=t,this.pass=!1,this.options=e||{}}o7.prototype.write=function(t){var e=this.decoder.write(t);return this.pass||!e||(e[0]===fT&&(e=e.slice(1),typeof this.options.stripBOM=="function"&&this.options.stripBOM()),this.pass=!0),e};o7.prototype.end=function(){return this.decoder.end()}});var yT=b((W8e,gT)=>{"use strict";var il=Tn().Buffer;gT.exports={utf8:{type:"_internal",bomAware:!0},cesu8:{type:"_internal",bomAware:!0},unicode11utf8:"utf8",ucs2:{type:"_internal",bomAware:!0},utf16le:"ucs2",binary:{type:"_internal"},base64:{type:"_internal"},hex:{type:"_internal"},_internal:u7};function u7(t,e){this.enc=t.encodingName,this.bomAware=t.bomAware,this.enc==="base64"?this.encoder=m7:this.enc==="cesu8"&&(this.enc="utf8",this.encoder=f7,il.from("eda0bdedb2a9","hex").toString()!=="\u{1F4A9}"&&(this.decoder=h7,this.defaultCharUnicode=e.defaultCharUnicode))}u7.prototype.encoder=p7;u7.prototype.decoder=c7;var d7=require("string_decoder").StringDecoder;d7.prototype.end||(d7.prototype.end=function(){});function c7(t,e){this.decoder=new d7(e.enc)}c7.prototype.write=function(t){return il.isBuffer(t)||(t=il.from(t)),this.decoder.write(t)};c7.prototype.end=function(){return this.decoder.end()};function p7(t,e){this.enc=e.enc}p7.prototype.write=function(t){return il.from(t,this.enc)};p7.prototype.end=function(){};function m7(t,e){this.prevStr=""}m7.prototype.write=function(t){t=this.prevStr+t;var e=t.length-t.length%4;return this.prevStr=t.slice(e),t=t.slice(0,e),il.from(t,"base64")};m7.prototype.end=function(){return il.from(this.prevStr,"base64")};function f7(t,e){}f7.prototype.write=function(t){for(var e=il.alloc(t.length*3),r=0,i=0;i>>6),e[r++]=128+(a&63)):(e[r++]=224+(a>>>12),e[r++]=128+(a>>>6&63),e[r++]=128+(a&63))}return e.slice(0,r)};f7.prototype.end=function(){};function h7(t,e){this.acc=0,this.contBytes=0,this.accBytes=0,this.defaultCharUnicode=e.defaultCharUnicode}h7.prototype.write=function(t){for(var e=this.acc,r=this.contBytes,i=this.accBytes,a="",n=0;n0&&(a+=this.defaultCharUnicode,r=0),s<128?a+=String.fromCharCode(s):s<224?(e=s&31,r=1,i=1):s<240?(e=s&15,r=2,i=1):a+=this.defaultCharUnicode):r>0?(e=e<<6|s&63,r--,i++,r===0&&(i===2&&e<128&&e>0?a+=this.defaultCharUnicode:i===3&&e<2048?a+=this.defaultCharUnicode:a+=String.fromCharCode(e))):a+=this.defaultCharUnicode}return this.acc=e,this.contBytes=r,this.accBytes=i,a};h7.prototype.end=function(){var t=0;return this.contBytes>0&&(t+=this.defaultCharUnicode),t}});var ST=b(Bs=>{"use strict";var S8=Tn().Buffer;Bs._utf32=g7;function g7(t,e){this.iconv=e,this.bomAware=!0,this.isLE=t.isLE}Bs.utf32le={type:"_utf32",isLE:!0};Bs.utf32be={type:"_utf32",isLE:!1};Bs.ucs4le="utf32le";Bs.ucs4be="utf32be";g7.prototype.encoder=y7;g7.prototype.decoder=b7;function y7(t,e){this.isLE=e.isLE,this.highSurrogate=0}y7.prototype.write=function(t){for(var e=S8.from(t,"ucs2"),r=S8.alloc(e.length*2),i=this.isLE?r.writeUInt32LE:r.writeUInt32BE,a=0,n=0;n0){for(;e1114111)&&(r=i),r>=65536){r-=65536;var a=55296|r>>10;t[e++]=a&255,t[e++]=a>>8;var r=56320|r&1023}return t[e++]=r&255,t[e++]=r>>8,e}b7.prototype.end=function(){this.overflow.length=0};Bs.utf32=v7;Bs.ucs4="utf32";function v7(t,e){this.iconv=e}v7.prototype.encoder=S7;v7.prototype.decoder=w7;function S7(t,e){t=t||{},t.addBOM===void 0&&(t.addBOM=!0),this.encoder=e.iconv.getEncoder(t.defaultEncoding||"utf-32le",t)}S7.prototype.write=function(t){return this.encoder.write(t)};S7.prototype.end=function(){return this.encoder.end()};function w7(t,e){this.decoder=null,this.initialBufs=[],this.initialBufsLen=0,this.options=t||{},this.iconv=e.iconv}w7.prototype.write=function(t){if(!this.decoder){if(this.initialBufs.push(t),this.initialBufsLen+=t.length,this.initialBufsLen<32)return"";var e=vT(this.initialBufs,this.options.defaultEncoding);this.decoder=this.iconv.getDecoder(e,this.options);for(var r="",i=0;i16)&&n++,(r[3]!==0||r[2]>16)&&a++,r[0]===0&&r[1]===0&&(r[2]!==0||r[3]!==0)&&o++,(r[0]!==0||r[1]!==0)&&r[2]===0&&r[3]===0&&s++,r.length=0,i++,i>=100)break e}return o-n>s-a?"utf-32be":o-n{"use strict";var wT=Tn().Buffer;P7.utf16be=w8;function w8(){}w8.prototype.encoder=x7;w8.prototype.decoder=A7;w8.prototype.bomAware=!0;function x7(){}x7.prototype.write=function(t){for(var e=wT.from(t,"ucs2"),r=0;r=100)break e}return n>a?"utf-16be":n{"use strict";var Ya=Tn().Buffer;_8.utf7=x8;_8.unicode11utf7="utf7";function x8(t,e){this.iconv=e}x8.prototype.encoder=z7;x8.prototype.decoder=I7;x8.prototype.bomAware=!0;var LG=/[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g;function z7(t,e){this.iconv=e.iconv}z7.prototype.write=function(t){return Ya.from(t.replace(LG,function(e){return"+"+(e==="+"?"":this.iconv.encode(e,"utf16-be").toString("base64").replace(/=+$/,""))+"-"}.bind(this)))};z7.prototype.end=function(){};function I7(t,e){this.iconv=e.iconv,this.inBase64=!1,this.base64Accum=""}var UG=/[A-Za-z0-9\/+]/,M7=[];for(Gp=0;Gp<256;Gp++)M7[Gp]=UG.test(String.fromCharCode(Gp));var Gp,jG="+".charCodeAt(0),al="-".charCodeAt(0),T7="&".charCodeAt(0);I7.prototype.write=function(t){for(var e="",r=0,i=this.inBase64,a=this.base64Accum,n=0;n0&&(t=this.iconv.decode(Ya.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",t};_8.utf7imap=A8;function A8(t,e){this.iconv=e}A8.prototype.encoder=D7;A8.prototype.decoder=R7;A8.prototype.bomAware=!0;function D7(t,e){this.iconv=e.iconv,this.inBase64=!1,this.base64Accum=Ya.alloc(6),this.base64AccumIdx=0}D7.prototype.write=function(t){for(var e=this.inBase64,r=this.base64Accum,i=this.base64AccumIdx,a=Ya.alloc(t.length*5+10),n=0,s=0;s0&&(n+=a.write(r.slice(0,i).toString("base64").replace(/\//g,",").replace(/=+$/,""),n),i=0),a[n++]=al,e=!1),e||(a[n++]=o,o===T7&&(a[n++]=al))):(e||(a[n++]=T7,e=!0),e&&(r[i++]=o>>8,r[i++]=o&255,i==r.length&&(n+=a.write(r.toString("base64").replace(/\//g,","),n),i=0)))}return this.inBase64=e,this.base64AccumIdx=i,a.slice(0,n)};D7.prototype.end=function(){var t=Ya.alloc(10),e=0;return this.inBase64&&(this.base64AccumIdx>0&&(e+=t.write(this.base64Accum.slice(0,this.base64AccumIdx).toString("base64").replace(/\//g,",").replace(/=+$/,""),e),this.base64AccumIdx=0),t[e++]=al,this.inBase64=!1),t.slice(0,e)};function R7(t,e){this.iconv=e.iconv,this.inBase64=!1,this.base64Accum=""}var _T=M7.slice();_T[",".charCodeAt(0)]=!0;R7.prototype.write=function(t){for(var e="",r=0,i=this.inBase64,a=this.base64Accum,n=0;n0&&(t=this.iconv.decode(Ya.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",t}});var PT=b(ET=>{"use strict";var k8=Tn().Buffer;ET._sbcs=B7;function B7(t,e){if(!t)throw new Error("SBCS codec is called without the data.");if(!t.chars||t.chars.length!==128&&t.chars.length!==256)throw new Error("Encoding '"+t.type+"' has incorrect 'chars' (must be of len 128 or 256)");if(t.chars.length===128){for(var r="",i=0;i<128;i++)r+=String.fromCharCode(i);t.chars=r+t.chars}this.decodeBuf=k8.from(t.chars,"ucs2");for(var a=k8.alloc(65536,e.defaultCharSingleByte.charCodeAt(0)),i=0;i{"use strict";TT.exports={10029:"maccenteuro",maccenteuro:{type:"_sbcs",chars:"\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026\xA0\u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7"},808:"cp808",ibm808:"cp808",cp808:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\u20AC\u25A0\xA0"},mik:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2514\u2534\u252C\u251C\u2500\u253C\u2563\u2551\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2510\u2591\u2592\u2593\u2502\u2524\u2116\xA7\u2557\u255D\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},cp720:{type:"_sbcs",chars:"\x80\x81\xE9\xE2\x84\xE0\x86\xE7\xEA\xEB\xE8\xEF\xEE\x8D\x8E\x8F\x90\u0651\u0652\xF4\xA4\u0640\xFB\xF9\u0621\u0622\u0623\u0624\xA3\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0636\u0637\u0638\u0639\u063A\u0641\xB5\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u2261\u064B\u064C\u064D\u064E\u064F\u0650\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ascii8bit:"ascii",usascii:"ascii",ansix34:"ascii",ansix341968:"ascii",ansix341986:"ascii",csascii:"ascii",cp367:"ascii",ibm367:"ascii",isoir6:"ascii",iso646us:"ascii",iso646irv:"ascii",us:"ascii",latin1:"iso88591",latin2:"iso88592",latin3:"iso88593",latin4:"iso88594",latin5:"iso88599",latin6:"iso885910",latin7:"iso885913",latin8:"iso885914",latin9:"iso885915",latin10:"iso885916",csisolatin1:"iso88591",csisolatin2:"iso88592",csisolatin3:"iso88593",csisolatin4:"iso88594",csisolatincyrillic:"iso88595",csisolatinarabic:"iso88596",csisolatingreek:"iso88597",csisolatinhebrew:"iso88598",csisolatin5:"iso88599",csisolatin6:"iso885910",l1:"iso88591",l2:"iso88592",l3:"iso88593",l4:"iso88594",l5:"iso88599",l6:"iso885910",l7:"iso885913",l8:"iso885914",l9:"iso885915",l10:"iso885916",isoir14:"iso646jp",isoir57:"iso646cn",isoir100:"iso88591",isoir101:"iso88592",isoir109:"iso88593",isoir110:"iso88594",isoir144:"iso88595",isoir127:"iso88596",isoir126:"iso88597",isoir138:"iso88598",isoir148:"iso88599",isoir157:"iso885910",isoir166:"tis620",isoir179:"iso885913",isoir199:"iso885914",isoir203:"iso885915",isoir226:"iso885916",cp819:"iso88591",ibm819:"iso88591",cyrillic:"iso88595",arabic:"iso88596",arabic8:"iso88596",ecma114:"iso88596",asmo708:"iso88596",greek:"iso88597",greek8:"iso88597",ecma118:"iso88597",elot928:"iso88597",hebrew:"iso88598",hebrew8:"iso88598",turkish:"iso88599",turkish8:"iso88599",thai:"iso885911",thai8:"iso885911",celtic:"iso885914",celtic8:"iso885914",isoceltic:"iso885914",tis6200:"tis620",tis62025291:"tis620",tis62025330:"tis620",1e4:"macroman",10006:"macgreek",10007:"maccyrillic",10079:"maciceland",10081:"macturkish",cspc8codepage437:"cp437",cspc775baltic:"cp775",cspc850multilingual:"cp850",cspcp852:"cp852",cspc862latinhebrew:"cp862",cpgr:"cp869",msee:"cp1250",mscyrl:"cp1251",msansi:"cp1252",msgreek:"cp1253",msturk:"cp1254",mshebr:"cp1255",msarab:"cp1256",winbaltrim:"cp1257",cp20866:"koi8r",20866:"koi8r",ibm878:"koi8r",cskoi8r:"koi8r",cp21866:"koi8u",21866:"koi8u",ibm1168:"koi8u",strk10482002:"rk1048",tcvn5712:"tcvn",tcvn57121:"tcvn",gb198880:"iso646cn",cn:"iso646cn",csiso14jisc6220ro:"iso646jp",jisc62201969ro:"iso646jp",jp:"iso646jp",cshproman8:"hproman8",r8:"hproman8",roman8:"hproman8",xroman8:"hproman8",ibm1051:"hproman8",mac:"macintosh",csmacintosh:"macintosh"}});var MT=b((j8e,IT)=>{"use strict";IT.exports={437:"cp437",737:"cp737",775:"cp775",850:"cp850",852:"cp852",855:"cp855",856:"cp856",857:"cp857",858:"cp858",860:"cp860",861:"cp861",862:"cp862",863:"cp863",864:"cp864",865:"cp865",866:"cp866",869:"cp869",874:"windows874",922:"cp922",1046:"cp1046",1124:"cp1124",1125:"cp1125",1129:"cp1129",1133:"cp1133",1161:"cp1161",1162:"cp1162",1163:"cp1163",1250:"windows1250",1251:"windows1251",1252:"windows1252",1253:"windows1253",1254:"windows1254",1255:"windows1255",1256:"windows1256",1257:"windows1257",1258:"windows1258",28591:"iso88591",28592:"iso88592",28593:"iso88593",28594:"iso88594",28595:"iso88595",28596:"iso88596",28597:"iso88597",28598:"iso88598",28599:"iso88599",28600:"iso885910",28601:"iso885911",28603:"iso885913",28604:"iso885914",28605:"iso885915",28606:"iso885916",windows874:{type:"_sbcs",chars:"\u20AC\uFFFD\uFFFD\uFFFD\uFFFD\u2026\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},win874:"windows874",cp874:"windows874",windows1250:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\u0160\u2039\u015A\u0164\u017D\u0179\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0161\u203A\u015B\u0165\u017E\u017A\xA0\u02C7\u02D8\u0141\xA4\u0104\xA6\xA7\xA8\xA9\u015E\xAB\xAC\xAD\xAE\u017B\xB0\xB1\u02DB\u0142\xB4\xB5\xB6\xB7\xB8\u0105\u015F\xBB\u013D\u02DD\u013E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"},win1250:"windows1250",cp1250:"windows1250",windows1251:{type:"_sbcs",chars:"\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u040C\u040B\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u045C\u045B\u045F\xA0\u040E\u045E\u0408\xA4\u0490\xA6\xA7\u0401\xA9\u0404\xAB\xAC\xAD\xAE\u0407\xB0\xB1\u0406\u0456\u0491\xB5\xB6\xB7\u0451\u2116\u0454\xBB\u0458\u0405\u0455\u0457\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},win1251:"windows1251",cp1251:"windows1251",windows1252:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\u017D\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\u017E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},win1252:"windows1252",cp1252:"windows1252",windows1253:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0385\u0386\xA3\xA4\xA5\xA6\xA7\xA8\xA9\uFFFD\xAB\xAC\xAD\xAE\u2015\xB0\xB1\xB2\xB3\u0384\xB5\xB6\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"},win1253:"windows1253",cp1253:"windows1253",windows1254:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"},win1254:"windows1254",cp1254:"windows1254",windows1255:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\xA1\xA2\xA3\u20AA\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\xBF\u05B0\u05B1\u05B2\u05B3\u05B4\u05B5\u05B6\u05B7\u05B8\u05B9\u05BA\u05BB\u05BC\u05BD\u05BE\u05BF\u05C0\u05C1\u05C2\u05C3\u05F0\u05F1\u05F2\u05F3\u05F4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"},win1255:"windows1255",cp1255:"windows1255",windows1256:{type:"_sbcs",chars:"\u20AC\u067E\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0679\u2039\u0152\u0686\u0698\u0688\u06AF\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u06A9\u2122\u0691\u203A\u0153\u200C\u200D\u06BA\xA0\u060C\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\u06BE\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\u061B\xBB\xBC\xBD\xBE\u061F\u06C1\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\xD7\u0637\u0638\u0639\u063A\u0640\u0641\u0642\u0643\xE0\u0644\xE2\u0645\u0646\u0647\u0648\xE7\xE8\xE9\xEA\xEB\u0649\u064A\xEE\xEF\u064B\u064C\u064D\u064E\xF4\u064F\u0650\xF7\u0651\xF9\u0652\xFB\xFC\u200E\u200F\u06D2"},win1256:"windows1256",cp1256:"windows1256",windows1257:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\xA8\u02C7\xB8\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\xAF\u02DB\uFFFD\xA0\uFFFD\xA2\xA3\xA4\uFFFD\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u02D9"},win1257:"windows1257",cp1257:"windows1257",windows1258:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},win1258:"windows1258",cp1258:"windows1258",iso88591:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},cp28591:"iso88591",iso88592:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u02D8\u0141\xA4\u013D\u015A\xA7\xA8\u0160\u015E\u0164\u0179\xAD\u017D\u017B\xB0\u0105\u02DB\u0142\xB4\u013E\u015B\u02C7\xB8\u0161\u015F\u0165\u017A\u02DD\u017E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"},cp28592:"iso88592",iso88593:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0126\u02D8\xA3\xA4\uFFFD\u0124\xA7\xA8\u0130\u015E\u011E\u0134\xAD\uFFFD\u017B\xB0\u0127\xB2\xB3\xB4\xB5\u0125\xB7\xB8\u0131\u015F\u011F\u0135\xBD\uFFFD\u017C\xC0\xC1\xC2\uFFFD\xC4\u010A\u0108\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\uFFFD\xD1\xD2\xD3\xD4\u0120\xD6\xD7\u011C\xD9\xDA\xDB\xDC\u016C\u015C\xDF\xE0\xE1\xE2\uFFFD\xE4\u010B\u0109\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\uFFFD\xF1\xF2\xF3\xF4\u0121\xF6\xF7\u011D\xF9\xFA\xFB\xFC\u016D\u015D\u02D9"},cp28593:"iso88593",iso88594:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0138\u0156\xA4\u0128\u013B\xA7\xA8\u0160\u0112\u0122\u0166\xAD\u017D\xAF\xB0\u0105\u02DB\u0157\xB4\u0129\u013C\u02C7\xB8\u0161\u0113\u0123\u0167\u014A\u017E\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\u012A\u0110\u0145\u014C\u0136\xD4\xD5\xD6\xD7\xD8\u0172\xDA\xDB\xDC\u0168\u016A\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\u012B\u0111\u0146\u014D\u0137\xF4\xF5\xF6\xF7\xF8\u0173\xFA\xFB\xFC\u0169\u016B\u02D9"},cp28594:"iso88594",iso88595:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0403\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0453\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"},cp28595:"iso88595",iso88596:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\uFFFD\uFFFD\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u060C\xAD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u061B\uFFFD\uFFFD\uFFFD\u061F\uFFFD\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\u0638\u0639\u063A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},cp28596:"iso88596",iso88597:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u2018\u2019\xA3\u20AC\u20AF\xA6\xA7\xA8\xA9\u037A\xAB\xAC\xAD\uFFFD\u2015\xB0\xB1\xB2\xB3\u0384\u0385\u0386\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"},cp28597:"iso88597",iso88598:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2017\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"},cp28598:"iso88598",iso88599:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"},cp28599:"iso88599",iso885910:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0112\u0122\u012A\u0128\u0136\xA7\u013B\u0110\u0160\u0166\u017D\xAD\u016A\u014A\xB0\u0105\u0113\u0123\u012B\u0129\u0137\xB7\u013C\u0111\u0161\u0167\u017E\u2015\u016B\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\xCF\xD0\u0145\u014C\xD3\xD4\xD5\xD6\u0168\xD8\u0172\xDA\xDB\xDC\xDD\xDE\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\xEF\xF0\u0146\u014D\xF3\xF4\xF5\xF6\u0169\xF8\u0173\xFA\xFB\xFC\xFD\xFE\u0138"},cp28600:"iso885910",iso885911:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},cp28601:"iso885911",iso885913:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u201D\xA2\xA3\xA4\u201E\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\u201C\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u2019"},cp28603:"iso885913",iso885914:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u1E02\u1E03\xA3\u010A\u010B\u1E0A\xA7\u1E80\xA9\u1E82\u1E0B\u1EF2\xAD\xAE\u0178\u1E1E\u1E1F\u0120\u0121\u1E40\u1E41\xB6\u1E56\u1E81\u1E57\u1E83\u1E60\u1EF3\u1E84\u1E85\u1E61\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0174\xD1\xD2\xD3\xD4\xD5\xD6\u1E6A\xD8\xD9\xDA\xDB\xDC\xDD\u0176\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0175\xF1\xF2\xF3\xF4\xF5\xF6\u1E6B\xF8\xF9\xFA\xFB\xFC\xFD\u0177\xFF"},cp28604:"iso885914",iso885915:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\u0160\xA7\u0161\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u017D\xB5\xB6\xB7\u017E\xB9\xBA\xBB\u0152\u0153\u0178\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},cp28605:"iso885915",iso885916:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0105\u0141\u20AC\u201E\u0160\xA7\u0161\xA9\u0218\xAB\u0179\xAD\u017A\u017B\xB0\xB1\u010C\u0142\u017D\u201D\xB6\xB7\u017E\u010D\u0219\xBB\u0152\u0153\u0178\u017C\xC0\xC1\xC2\u0102\xC4\u0106\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0110\u0143\xD2\xD3\xD4\u0150\xD6\u015A\u0170\xD9\xDA\xDB\xDC\u0118\u021A\xDF\xE0\xE1\xE2\u0103\xE4\u0107\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0111\u0144\xF2\xF3\xF4\u0151\xF6\u015B\u0171\xF9\xFA\xFB\xFC\u0119\u021B\xFF"},cp28606:"iso885916",cp437:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm437:"cp437",csibm437:"cp437",cp737:{type:"_sbcs",chars:"\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u03C5\u03C6\u03C7\u03C8\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03C9\u03AC\u03AD\u03AE\u03CA\u03AF\u03CC\u03CD\u03CB\u03CE\u0386\u0388\u0389\u038A\u038C\u038E\u038F\xB1\u2265\u2264\u03AA\u03AB\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm737:"cp737",csibm737:"cp737",cp775:{type:"_sbcs",chars:"\u0106\xFC\xE9\u0101\xE4\u0123\xE5\u0107\u0142\u0113\u0156\u0157\u012B\u0179\xC4\xC5\xC9\xE6\xC6\u014D\xF6\u0122\xA2\u015A\u015B\xD6\xDC\xF8\xA3\xD8\xD7\xA4\u0100\u012A\xF3\u017B\u017C\u017A\u201D\xA6\xA9\xAE\xAC\xBD\xBC\u0141\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0104\u010C\u0118\u0116\u2563\u2551\u2557\u255D\u012E\u0160\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0172\u016A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u017D\u0105\u010D\u0119\u0117\u012F\u0161\u0173\u016B\u017E\u2518\u250C\u2588\u2584\u258C\u2590\u2580\xD3\xDF\u014C\u0143\xF5\xD5\xB5\u0144\u0136\u0137\u013B\u013C\u0146\u0112\u0145\u2019\xAD\xB1\u201C\xBE\xB6\xA7\xF7\u201E\xB0\u2219\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm775:"cp775",csibm775:"cp775",cp850:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u0131\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm850:"cp850",csibm850:"cp850",cp852:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\u016F\u0107\xE7\u0142\xEB\u0150\u0151\xEE\u0179\xC4\u0106\xC9\u0139\u013A\xF4\xF6\u013D\u013E\u015A\u015B\xD6\xDC\u0164\u0165\u0141\xD7\u010D\xE1\xED\xF3\xFA\u0104\u0105\u017D\u017E\u0118\u0119\xAC\u017A\u010C\u015F\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\u011A\u015E\u2563\u2551\u2557\u255D\u017B\u017C\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0102\u0103\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u0111\u0110\u010E\xCB\u010F\u0147\xCD\xCE\u011B\u2518\u250C\u2588\u2584\u0162\u016E\u2580\xD3\xDF\xD4\u0143\u0144\u0148\u0160\u0161\u0154\xDA\u0155\u0170\xFD\xDD\u0163\xB4\xAD\u02DD\u02DB\u02C7\u02D8\xA7\xF7\xB8\xB0\xA8\u02D9\u0171\u0158\u0159\u25A0\xA0"},ibm852:"cp852",csibm852:"cp852",cp855:{type:"_sbcs",chars:"\u0452\u0402\u0453\u0403\u0451\u0401\u0454\u0404\u0455\u0405\u0456\u0406\u0457\u0407\u0458\u0408\u0459\u0409\u045A\u040A\u045B\u040B\u045C\u040C\u045E\u040E\u045F\u040F\u044E\u042E\u044A\u042A\u0430\u0410\u0431\u0411\u0446\u0426\u0434\u0414\u0435\u0415\u0444\u0424\u0433\u0413\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0445\u0425\u0438\u0418\u2563\u2551\u2557\u255D\u0439\u0419\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u043A\u041A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u043B\u041B\u043C\u041C\u043D\u041D\u043E\u041E\u043F\u2518\u250C\u2588\u2584\u041F\u044F\u2580\u042F\u0440\u0420\u0441\u0421\u0442\u0422\u0443\u0423\u0436\u0416\u0432\u0412\u044C\u042C\u2116\xAD\u044B\u042B\u0437\u0417\u0448\u0428\u044D\u042D\u0449\u0429\u0447\u0427\xA7\u25A0\xA0"},ibm855:"cp855",csibm855:"cp855",cp856:{type:"_sbcs",chars:"\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\xA3\uFFFD\xD7\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAE\xAC\xBD\xBC\uFFFD\xAB\xBB\u2591\u2592\u2593\u2502\u2524\uFFFD\uFFFD\uFFFD\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\uFFFD\uFFFD\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2518\u250C\u2588\u2584\xA6\uFFFD\u2580\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xB5\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm856:"cp856",csibm856:"cp856",cp857:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\u0131\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\u0130\xD6\xDC\xF8\xA3\xD8\u015E\u015F\xE1\xED\xF3\xFA\xF1\xD1\u011E\u011F\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xBA\xAA\xCA\xCB\xC8\uFFFD\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\uFFFD\xD7\xDA\xDB\xD9\xEC\xFF\xAF\xB4\xAD\xB1\uFFFD\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm857:"cp857",csibm857:"cp857",cp858:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u20AC\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm858:"cp858",csibm858:"cp858",cp860:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE3\xE0\xC1\xE7\xEA\xCA\xE8\xCD\xD4\xEC\xC3\xC2\xC9\xC0\xC8\xF4\xF5\xF2\xDA\xF9\xCC\xD5\xDC\xA2\xA3\xD9\u20A7\xD3\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xD2\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm860:"cp860",csibm860:"cp860",cp861:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xD0\xF0\xDE\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xFE\xFB\xDD\xFD\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xC1\xCD\xD3\xDA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm861:"cp861",csibm861:"cp861",cp862:{type:"_sbcs",chars:"\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm862:"cp862",csibm862:"cp862",cp863:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xC2\xE0\xB6\xE7\xEA\xEB\xE8\xEF\xEE\u2017\xC0\xA7\xC9\xC8\xCA\xF4\xCB\xCF\xFB\xF9\xA4\xD4\xDC\xA2\xA3\xD9\xDB\u0192\xA6\xB4\xF3\xFA\xA8\xB8\xB3\xAF\xCE\u2310\xAC\xBD\xBC\xBE\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm863:"cp863",csibm863:"cp863",cp864:{type:"_sbcs",chars:`\0\x07\b +"use strict";var QU=Object.create;var Ip=Object.defineProperty;var XU=Object.getOwnPropertyDescriptor;var ej=Object.getOwnPropertyNames;var tj=Object.getPrototypeOf,rj=Object.prototype.hasOwnProperty;var n=(t,e)=>Ip(t,"name",{value:e,configurable:!0});var mi=(t,e)=>()=>(t&&(e=t(t=0)),e);var v=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Mk=(t,e)=>{for(var r in e)Ip(t,r,{get:e[r],enumerable:!0})},Dk=(t,e,r,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of ej(e))!rj.call(t,a)&&a!==r&&Ip(t,a,{get:()=>e[a],enumerable:!(i=XU(e,a))||i.enumerable});return t};var Kr=(t,e,r)=>(r=t!=null?QU(tj(t)):{},Dk(e||!t||!t.__esModule?Ip(r,"default",{value:t,enumerable:!0}):r,t)),Y9=t=>Dk(Ip({},"__esModule",{value:!0}),t);var S4=v(fi=>{"use strict";Object.defineProperty(fi,"__esModule",{value:!0});fi.output=fi.exists=fi.hash=fi.bytes=fi.bool=fi.number=void 0;function v4(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}n(v4,"number");fi.number=v4;function Rk(t){if(typeof t!="boolean")throw new Error(`Expected boolean, not ${t}`)}n(Rk,"bool");fi.bool=Rk;function Q9(t,...e){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}n(Q9,"bytes");fi.bytes=Q9;function Bk(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");v4(t.outputLen),v4(t.blockLen)}n(Bk,"hash");fi.hash=Bk;function Ck(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}n(Ck,"exists");fi.exists=Ck;function Ok(t,e){Q9(t);let r=e.outputLen;if(t.length{"use strict";Object.defineProperty(x4,"__esModule",{value:!0});x4.crypto=void 0;var w4=require("node:crypto");x4.crypto=w4&&typeof w4=="object"&&"webcrypto"in w4?w4.webcrypto:void 0});var _n=v(Ie=>{"use strict";Object.defineProperty(Ie,"__esModule",{value:!0});Ie.randomBytes=Ie.wrapXOFConstructorWithOpts=Ie.wrapConstructorWithOpts=Ie.wrapConstructor=Ie.checkOpts=Ie.Hash=Ie.concatBytes=Ie.toBytes=Ie.utf8ToBytes=Ie.asyncLoop=Ie.nextTick=Ie.hexToBytes=Ie.bytesToHex=Ie.isLE=Ie.rotr=Ie.createView=Ie.u32=Ie.u8=void 0;var X9=Nk(),ty=n(t=>t instanceof Uint8Array,"u8a"),aj=n(t=>new Uint8Array(t.buffer,t.byteOffset,t.byteLength),"u8");Ie.u8=aj;var nj=n(t=>new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4)),"u32");Ie.u32=nj;var sj=n(t=>new DataView(t.buffer,t.byteOffset,t.byteLength),"createView");Ie.createView=sj;var oj=n((t,e)=>t<<32-e|t>>>e,"rotr");Ie.rotr=oj;Ie.isLE=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!Ie.isLE)throw new Error("Non little-endian hardware is not supported");var lj=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function dj(t){if(!ty(t))throw new Error("Uint8Array expected");let e="";for(let r=0;r{},"nextTick");Ie.nextTick=cj;async function pj(t,e,r){let i=Date.now();for(let a=0;a=0&&si+a.length,0)),r=0;return t.forEach(i=>{if(!ty(i))throw new Error("Uint8Array expected");e.set(i,r),r+=i.length}),e}n(mj,"concatBytes");Ie.concatBytes=mj;var ey=class{static{n(this,"Hash")}clone(){return this._cloneInto()}};Ie.Hash=ey;var fj={}.toString;function hj(t,e){if(e!==void 0&&fj.call(e)!=="[object Object]")throw new Error("Options should be object or undefined");return Object.assign(t,e)}n(hj,"checkOpts");Ie.checkOpts=hj;function gj(t){let e=n(i=>t().update(A4(i)).digest(),"hashC"),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}n(gj,"wrapConstructor");Ie.wrapConstructor=gj;function yj(t){let e=n((i,a)=>t(a).update(A4(i)).digest(),"hashC"),r=t({});return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=i=>t(i),e}n(yj,"wrapConstructorWithOpts");Ie.wrapConstructorWithOpts=yj;function bj(t){let e=n((i,a)=>t(a).update(A4(i)).digest(),"hashC"),r=t({});return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=i=>t(i),e}n(bj,"wrapXOFConstructorWithOpts");Ie.wrapXOFConstructorWithOpts=bj;function vj(t=32){if(X9.crypto&&typeof X9.crypto.getRandomValues=="function")return X9.crypto.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}n(vj,"randomBytes");Ie.randomBytes=vj});var ay=v(_4=>{"use strict";Object.defineProperty(_4,"__esModule",{value:!0});_4.SHA2=void 0;var ry=S4(),Mp=_n();function Sj(t,e,r,i){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,i);let a=BigInt(32),s=BigInt(4294967295),o=Number(r>>a&s),l=Number(r&s),d=i?4:0,u=i?0:4;t.setUint32(e+d,o,i),t.setUint32(e+u,l,i)}n(Sj,"setBigUint64");var iy=class extends Mp.Hash{static{n(this,"SHA2")}constructor(e,r,i,a){super(),this.blockLen=e,this.outputLen=r,this.padOffset=i,this.isLE=a,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=(0,Mp.createView)(this.buffer)}update(e){(0,ry.exists)(this);let{view:r,buffer:i,blockLen:a}=this;e=(0,Mp.toBytes)(e);let s=e.length;for(let o=0;oa-o&&(this.process(i,0),o=0);for(let p=o;pc.length)throw new Error("_sha2: outputLen bigger than state");for(let p=0;p{"use strict";Object.defineProperty(Se,"__esModule",{value:!0});Se.add5L=Se.add5H=Se.add4H=Se.add4L=Se.add3H=Se.add3L=Se.add=Se.rotlBL=Se.rotlBH=Se.rotlSL=Se.rotlSH=Se.rotr32L=Se.rotr32H=Se.rotrBL=Se.rotrBH=Se.rotrSL=Se.rotrSH=Se.shrSL=Se.shrSH=Se.toBig=Se.split=Se.fromBig=void 0;var k4=BigInt(2**32-1),ny=BigInt(32);function sy(t,e=!1){return e?{h:Number(t&k4),l:Number(t>>ny&k4)}:{h:Number(t>>ny&k4)|0,l:Number(t&k4)|0}}n(sy,"fromBig");Se.fromBig=sy;function Wk(t,e=!1){let r=new Uint32Array(t.length),i=new Uint32Array(t.length);for(let a=0;aBigInt(t>>>0)<>>0),"toBig");Se.toBig=Vk;var Fk=n((t,e,r)=>t>>>r,"shrSH");Se.shrSH=Fk;var Kk=n((t,e,r)=>t<<32-r|e>>>r,"shrSL");Se.shrSL=Kk;var Lk=n((t,e,r)=>t>>>r|e<<32-r,"rotrSH");Se.rotrSH=Lk;var Uk=n((t,e,r)=>t<<32-r|e>>>r,"rotrSL");Se.rotrSL=Uk;var jk=n((t,e,r)=>t<<64-r|e>>>r-32,"rotrBH");Se.rotrBH=jk;var Hk=n((t,e,r)=>t>>>r-32|e<<64-r,"rotrBL");Se.rotrBL=Hk;var $k=n((t,e)=>e,"rotr32H");Se.rotr32H=$k;var Gk=n((t,e)=>t,"rotr32L");Se.rotr32L=Gk;var Zk=n((t,e,r)=>t<>>32-r,"rotlSH");Se.rotlSH=Zk;var Jk=n((t,e,r)=>e<>>32-r,"rotlSL");Se.rotlSL=Jk;var Yk=n((t,e,r)=>e<>>64-r,"rotlBH");Se.rotlBH=Yk;var Qk=n((t,e,r)=>t<>>64-r,"rotlBL");Se.rotlBL=Qk;function Xk(t,e,r,i){let a=(e>>>0)+(i>>>0);return{h:t+r+(a/2**32|0)|0,l:a|0}}n(Xk,"add");Se.add=Xk;var eE=n((t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),"add3L");Se.add3L=eE;var tE=n((t,e,r,i)=>e+r+i+(t/2**32|0)|0,"add3H");Se.add3H=tE;var rE=n((t,e,r,i)=>(t>>>0)+(e>>>0)+(r>>>0)+(i>>>0),"add4L");Se.add4L=rE;var iE=n((t,e,r,i,a)=>e+r+i+a+(t/2**32|0)|0,"add4H");Se.add4H=iE;var aE=n((t,e,r,i,a)=>(t>>>0)+(e>>>0)+(r>>>0)+(i>>>0)+(a>>>0),"add5L");Se.add5L=aE;var nE=n((t,e,r,i,a,s)=>e+r+i+a+s+(t/2**32|0)|0,"add5H");Se.add5H=nE;var wj={fromBig:sy,split:Wk,toBig:Vk,shrSH:Fk,shrSL:Kk,rotrSH:Lk,rotrSL:Uk,rotrBH:jk,rotrBL:Hk,rotr32H:$k,rotr32L:Gk,rotlSH:Zk,rotlSL:Jk,rotlBH:Yk,rotlBL:Qk,add:Xk,add3L:eE,add3H:tE,add4L:rE,add4H:iE,add5H:nE,add5L:aE};Se.default=wj});var sE=v(ji=>{"use strict";Object.defineProperty(ji,"__esModule",{value:!0});ji.sha384=ji.sha512_256=ji.sha512_224=ji.sha512=ji.SHA512=void 0;var xj=ay(),Me=oy(),E4=_n(),[Aj,_j]=(()=>Me.default.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(t=>BigInt(t))))(),ws=new Uint32Array(80),xs=new Uint32Array(80),Qo=class extends xj.SHA2{static{n(this,"SHA512")}constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:e,Al:r,Bh:i,Bl:a,Ch:s,Cl:o,Dh:l,Dl:d,Eh:u,El:c,Fh:p,Fl:x,Gh:E,Gl:I,Hh:k,Hl:z}=this;return[e,r,i,a,s,o,l,d,u,c,p,x,E,I,k,z]}set(e,r,i,a,s,o,l,d,u,c,p,x,E,I,k,z){this.Ah=e|0,this.Al=r|0,this.Bh=i|0,this.Bl=a|0,this.Ch=s|0,this.Cl=o|0,this.Dh=l|0,this.Dl=d|0,this.Eh=u|0,this.El=c|0,this.Fh=p|0,this.Fl=x|0,this.Gh=E|0,this.Gl=I|0,this.Hh=k|0,this.Hl=z|0}process(e,r){for(let B=0;B<16;B++,r+=4)ws[B]=e.getUint32(r),xs[B]=e.getUint32(r+=4);for(let B=16;B<80;B++){let C=ws[B-15]|0,W=xs[B-15]|0,L=Me.default.rotrSH(C,W,1)^Me.default.rotrSH(C,W,8)^Me.default.shrSH(C,W,7),H=Me.default.rotrSL(C,W,1)^Me.default.rotrSL(C,W,8)^Me.default.shrSL(C,W,7),Z=ws[B-2]|0,se=xs[B-2]|0,le=Me.default.rotrSH(Z,se,19)^Me.default.rotrBH(Z,se,61)^Me.default.shrSH(Z,se,6),Q=Me.default.rotrSL(Z,se,19)^Me.default.rotrBL(Z,se,61)^Me.default.shrSL(Z,se,6),pe=Me.default.add4L(H,Q,xs[B-7],xs[B-16]),M=Me.default.add4H(pe,L,le,ws[B-7],ws[B-16]);ws[B]=M|0,xs[B]=pe|0}let{Ah:i,Al:a,Bh:s,Bl:o,Ch:l,Cl:d,Dh:u,Dl:c,Eh:p,El:x,Fh:E,Fl:I,Gh:k,Gl:z,Hh:R,Hl:F}=this;for(let B=0;B<80;B++){let C=Me.default.rotrSH(p,x,14)^Me.default.rotrSH(p,x,18)^Me.default.rotrBH(p,x,41),W=Me.default.rotrSL(p,x,14)^Me.default.rotrSL(p,x,18)^Me.default.rotrBL(p,x,41),L=p&E^~p&k,H=x&I^~x&z,Z=Me.default.add5L(F,W,H,_j[B],xs[B]),se=Me.default.add5H(Z,R,C,L,Aj[B],ws[B]),le=Z|0,Q=Me.default.rotrSH(i,a,28)^Me.default.rotrBH(i,a,34)^Me.default.rotrBH(i,a,39),pe=Me.default.rotrSL(i,a,28)^Me.default.rotrBL(i,a,34)^Me.default.rotrBL(i,a,39),M=i&s^i&l^s&l,m=a&o^a&d^o&d;R=k|0,F=z|0,k=E|0,z=I|0,E=p|0,I=x|0,{h:p,l:x}=Me.default.add(u|0,c|0,se|0,le|0),u=l|0,c=d|0,l=s|0,d=o|0,s=i|0,o=a|0;let g=Me.default.add3L(le,pe,m);i=Me.default.add3H(g,se,Q,M),a=g|0}({h:i,l:a}=Me.default.add(this.Ah|0,this.Al|0,i|0,a|0)),{h:s,l:o}=Me.default.add(this.Bh|0,this.Bl|0,s|0,o|0),{h:l,l:d}=Me.default.add(this.Ch|0,this.Cl|0,l|0,d|0),{h:u,l:c}=Me.default.add(this.Dh|0,this.Dl|0,u|0,c|0),{h:p,l:x}=Me.default.add(this.Eh|0,this.El|0,p|0,x|0),{h:E,l:I}=Me.default.add(this.Fh|0,this.Fl|0,E|0,I|0),{h:k,l:z}=Me.default.add(this.Gh|0,this.Gl|0,k|0,z|0),{h:R,l:F}=Me.default.add(this.Hh|0,this.Hl|0,R|0,F|0),this.set(i,a,s,o,l,d,u,c,p,x,E,I,k,z,R,F)}roundClean(){ws.fill(0),xs.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};ji.SHA512=Qo;var ly=class extends Qo{static{n(this,"SHA512_224")}constructor(){super(),this.Ah=-1942145080,this.Al=424955298,this.Bh=1944164710,this.Bl=-1982016298,this.Ch=502970286,this.Cl=855612546,this.Dh=1738396948,this.Dl=1479516111,this.Eh=258812777,this.El=2077511080,this.Fh=2011393907,this.Fl=79989058,this.Gh=1067287976,this.Gl=1780299464,this.Hh=286451373,this.Hl=-1848208735,this.outputLen=28}},dy=class extends Qo{static{n(this,"SHA512_256")}constructor(){super(),this.Ah=573645204,this.Al=-64227540,this.Bh=-1621794909,this.Bl=-934517566,this.Ch=596883563,this.Cl=1867755857,this.Dh=-1774684391,this.Dl=1497426621,this.Eh=-1775747358,this.El=-1467023389,this.Fh=-1101128155,this.Fl=1401305490,this.Gh=721525244,this.Gl=746961066,this.Hh=246885852,this.Hl=-2117784414,this.outputLen=32}},uy=class extends Qo{static{n(this,"SHA384")}constructor(){super(),this.Ah=-876896931,this.Al=-1056596264,this.Bh=1654270250,this.Bl=914150663,this.Ch=-1856437926,this.Cl=812702999,this.Dh=355462360,this.Dl=-150054599,this.Eh=1731405415,this.El=-4191439,this.Fh=-1900787065,this.Fl=1750603025,this.Gh=-619958771,this.Gl=1694076839,this.Hh=1203062813,this.Hl=-1090891868,this.outputLen=48}};ji.sha512=(0,E4.wrapConstructor)(()=>new Qo);ji.sha512_224=(0,E4.wrapConstructor)(()=>new ly);ji.sha512_256=(0,E4.wrapConstructor)(()=>new dy);ji.sha384=(0,E4.wrapConstructor)(()=>new uy)});var xa=v(De=>{"use strict";Object.defineProperty(De,"__esModule",{value:!0});De.validateObject=De.createHmacDrbg=De.bitMask=De.bitSet=De.bitGet=De.bitLen=De.utf8ToBytes=De.equalBytes=De.concatBytes=De.ensureBytes=De.numberToVarBytesBE=De.numberToBytesLE=De.numberToBytesBE=De.bytesToNumberLE=De.bytesToNumberBE=De.hexToBytes=De.hexToNumber=De.numberToHexUnpadded=De.bytesToHex=void 0;var lE=BigInt(0),P4=BigInt(1),kj=BigInt(2),T4=n(t=>t instanceof Uint8Array,"u8a"),Ej=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function py(t){if(!T4(t))throw new Error("Uint8Array expected");let e="";for(let r=0;ri+a.length,0)),r=0;return t.forEach(i=>{if(!T4(i))throw new Error("Uint8Array expected");e.set(i,r),r+=i.length}),e}n(cE,"concatBytes");De.concatBytes=cE;function Dj(t,e){if(t.length!==e.length)return!1;for(let r=0;rlE;t>>=P4,e+=1);return e}n(Bj,"bitLen");De.bitLen=Bj;function Cj(t,e){return t>>BigInt(e)&P4}n(Cj,"bitGet");De.bitGet=Cj;var Oj=n((t,e,r)=>t|(r?P4:lE)<(kj<new Uint8Array(t),"u8n"),oE=n(t=>Uint8Array.from(t),"u8fr");function qj(t,e,r){if(typeof t!="number"||t<2)throw new Error("hashLen must be a number");if(typeof e!="number"||e<2)throw new Error("qByteLen must be a number");if(typeof r!="function")throw new Error("hmacFn must be a function");let i=cy(t),a=cy(t),s=0,o=n(()=>{i.fill(1),a.fill(0),s=0},"reset"),l=n((...p)=>r(a,i,...p),"h"),d=n((p=cy())=>{a=l(oE([0]),p),i=l(),p.length!==0&&(a=l(oE([1]),p),i=l())},"reseed"),u=n(()=>{if(s++>=1e3)throw new Error("drbg: tried 1000 values");let p=0,x=[];for(;p{o(),d(p);let E;for(;!(E=x(u()));)d();return o(),E},"genUntil")}n(qj,"createHmacDrbg");De.createHmacDrbg=qj;var Wj={bigint:t=>typeof t=="bigint",function:t=>typeof t=="function",boolean:t=>typeof t=="boolean",string:t=>typeof t=="string",stringOrUint8Array:t=>typeof t=="string"||t instanceof Uint8Array,isSafeInteger:t=>Number.isSafeInteger(t),array:t=>Array.isArray(t),field:(t,e)=>e.Fp.isValid(t),hash:t=>typeof t=="function"&&Number.isSafeInteger(t.outputLen)};function Vj(t,e,r={}){let i=n((a,s,o)=>{let l=Wj[s];if(typeof l!="function")throw new Error(`Invalid validator "${s}", expected function`);let d=t[a];if(!(o&&d===void 0)&&!l(d,t))throw new Error(`Invalid param ${String(a)}=${d} (${typeof d}), expected ${s}`)},"checkField");for(let[a,s]of Object.entries(e))i(a,s,!1);for(let[a,s]of Object.entries(r))i(a,s,!0);return t}n(Vj,"validateObject");De.validateObject=Vj});var _s=v(Te=>{"use strict";Object.defineProperty(Te,"__esModule",{value:!0});Te.mapHashToField=Te.getMinHashLength=Te.getFieldBytesLength=Te.hashToPrivateScalar=Te.FpSqrtEven=Te.FpSqrtOdd=Te.Field=Te.nLength=Te.FpIsSquare=Te.FpDiv=Te.FpInvertBatch=Te.FpPow=Te.validateField=Te.isNegativeLE=Te.FpSqrt=Te.tonelliShanks=Te.invert=Te.pow2=Te.pow=Te.mod=void 0;var Di=xa(),Sr=BigInt(0),at=BigInt(1),As=BigInt(2),Fj=BigInt(3),fy=BigInt(4),pE=BigInt(5),mE=BigInt(8),Kj=BigInt(9),Lj=BigInt(16);function Mi(t,e){let r=t%e;return r>=Sr?r:e+r}n(Mi,"mod");Te.mod=Mi;function fE(t,e,r){if(r<=Sr||e 0");if(r===at)return Sr;let i=at;for(;e>Sr;)e&at&&(i=i*t%r),t=t*t%r,e>>=at;return i}n(fE,"pow");Te.pow=fE;function Uj(t,e,r){let i=t;for(;e-- >Sr;)i*=i,i%=r;return i}n(Uj,"pow2");Te.pow2=Uj;function I4(t,e){if(t===Sr||e<=Sr)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=Mi(t,e),i=e,a=Sr,s=at,o=at,l=Sr;for(;r!==Sr;){let u=i/r,c=i%r,p=a-o*u,x=s-l*u;i=r,r=c,a=o,s=l,o=p,l=x}if(i!==at)throw new Error("invert: does not exist");return Mi(a,e)}n(I4,"invert");Te.invert=I4;function hE(t){let e=(t-at)/As,r,i,a;for(r=t-at,i=0;r%As===Sr;r/=As,i++);for(a=As;a(Mi(t,e)&at)===at,"isNegativeLE");Te.isNegativeLE=jj;var Hj=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function $j(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=Hj.reduce((i,a)=>(i[a]="function",i),e);return(0,Di.validateObject)(t,r)}n($j,"validateField");Te.validateField=$j;function yE(t,e,r){if(r 0");if(r===Sr)return t.ONE;if(r===at)return e;let i=t.ONE,a=e;for(;r>Sr;)r&at&&(i=t.mul(i,a)),a=t.sqr(a),r>>=at;return i}n(yE,"FpPow");Te.FpPow=yE;function bE(t,e){let r=new Array(e.length),i=e.reduce((s,o,l)=>t.is0(o)?s:(r[l]=s,t.mul(s,o)),t.ONE),a=t.inv(i);return e.reduceRight((s,o,l)=>t.is0(o)?s:(r[l]=t.mul(s,r[l]),t.mul(s,o)),a),r}n(bE,"FpInvertBatch");Te.FpInvertBatch=bE;function Gj(t,e,r){return t.mul(e,typeof r=="bigint"?I4(r,t.ORDER):t.inv(r))}n(Gj,"FpDiv");Te.FpDiv=Gj;function Zj(t){let e=(t.ORDER-at)/As;return r=>{let i=t.pow(r,e);return t.eql(i,t.ZERO)||t.eql(i,t.ONE)}}n(Zj,"FpIsSquare");Te.FpIsSquare=Zj;function hy(t,e){let r=e!==void 0?e:t.toString(2).length,i=Math.ceil(r/8);return{nBitLength:r,nByteLength:i}}n(hy,"nLength");Te.nLength=hy;function Jj(t,e,r=!1,i={}){if(t<=Sr)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:a,nByteLength:s}=hy(t,e);if(s>2048)throw new Error("Field lengths over 2048 bytes are not supported");let o=gE(t),l=Object.freeze({ORDER:t,BITS:a,BYTES:s,MASK:(0,Di.bitMask)(a),ZERO:Sr,ONE:at,create:d=>Mi(d,t),isValid:d=>{if(typeof d!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof d}`);return Sr<=d&&dd===Sr,isOdd:d=>(d&at)===at,neg:d=>Mi(-d,t),eql:(d,u)=>d===u,sqr:d=>Mi(d*d,t),add:(d,u)=>Mi(d+u,t),sub:(d,u)=>Mi(d-u,t),mul:(d,u)=>Mi(d*u,t),pow:(d,u)=>yE(l,d,u),div:(d,u)=>Mi(d*I4(u,t),t),sqrN:d=>d*d,addN:(d,u)=>d+u,subN:(d,u)=>d-u,mulN:(d,u)=>d*u,inv:d=>I4(d,t),sqrt:i.sqrt||(d=>o(l,d)),invertBatch:d=>bE(l,d),cmov:(d,u,c)=>c?u:d,toBytes:d=>r?(0,Di.numberToBytesLE)(d,s):(0,Di.numberToBytesBE)(d,s),fromBytes:d=>{if(d.length!==s)throw new Error(`Fp.fromBytes: expected ${s}, got ${d.length}`);return r?(0,Di.bytesToNumberLE)(d):(0,Di.bytesToNumberBE)(d)}});return Object.freeze(l)}n(Jj,"Field");Te.Field=Jj;function Yj(t,e){if(!t.isOdd)throw new Error("Field doesn't have isOdd");let r=t.sqrt(e);return t.isOdd(r)?r:t.neg(r)}n(Yj,"FpSqrtOdd");Te.FpSqrtOdd=Yj;function Qj(t,e){if(!t.isOdd)throw new Error("Field doesn't have isOdd");let r=t.sqrt(e);return t.isOdd(r)?t.neg(r):r}n(Qj,"FpSqrtEven");Te.FpSqrtEven=Qj;function Xj(t,e,r=!1){t=(0,Di.ensureBytes)("privateHash",t);let i=t.length,a=hy(e).nByteLength+8;if(a<24||i1024)throw new Error(`hashToPrivateScalar: expected ${a}-1024 bytes of input, got ${i}`);let s=r?(0,Di.bytesToNumberLE)(t):(0,Di.bytesToNumberBE)(t);return Mi(s,e-at)+at}n(Xj,"hashToPrivateScalar");Te.hashToPrivateScalar=Xj;function gy(t){if(typeof t!="bigint")throw new Error("field order must be bigint");let e=t.toString(2).length;return Math.ceil(e/8)}n(gy,"getFieldBytesLength");Te.getFieldBytesLength=gy;function vE(t){let e=gy(t);return e+Math.ceil(e/2)}n(vE,"getMinHashLength");Te.getMinHashLength=vE;function eH(t,e,r=!1){let i=t.length,a=gy(e),s=vE(e);if(i<16||i1024)throw new Error(`expected ${s}-1024 bytes of input, got ${i}`);let o=r?(0,Di.bytesToNumberBE)(t):(0,Di.bytesToNumberLE)(t),l=Mi(o,e-at)+at;return r?(0,Di.numberToBytesLE)(l,a):(0,Di.numberToBytesBE)(l,a)}n(eH,"mapHashToField");Te.mapHashToField=eH});var by=v(S1=>{"use strict";Object.defineProperty(S1,"__esModule",{value:!0});S1.validateBasic=S1.wNAF=void 0;var SE=_s(),tH=xa(),rH=BigInt(0),yy=BigInt(1);function iH(t,e){let r=n((a,s)=>{let o=s.negate();return a?o:s},"constTimeNegate"),i=n(a=>{let s=Math.ceil(e/a)+1,o=2**(a-1);return{windows:s,windowSize:o}},"opts");return{constTimeNegate:r,unsafeLadder(a,s){let o=t.ZERO,l=a;for(;s>rH;)s&yy&&(o=o.add(l)),l=l.double(),s>>=yy;return o},precomputeWindow(a,s){let{windows:o,windowSize:l}=i(s),d=[],u=a,c=u;for(let p=0;p>=E,z>d&&(z-=x,o+=yy);let R=k,F=k+Math.abs(z)-1,B=I%2!==0,C=z<0;z===0?c=c.add(r(B,s[R])):u=u.add(r(C,s[F]))}return{p:u,f:c}},wNAFCached(a,s,o,l){let d=a._WINDOW_SIZE||1,u=s.get(a);return u||(u=this.precomputeWindow(a,d),d!==1&&s.set(a,l(u))),this.wNAF(d,u,o)}}}n(iH,"wNAF");S1.wNAF=iH;function aH(t){return(0,SE.validateField)(t.Fp),(0,tH.validateObject)(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...(0,SE.nLength)(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}n(aH,"validateBasic");S1.validateBasic=aH});var xE=v(D4=>{"use strict";Object.defineProperty(D4,"__esModule",{value:!0});D4.twistedEdwards=void 0;var nH=_s(),kn=xa(),ks=xa(),wE=by(),Aa=BigInt(0),Ri=BigInt(1),M4=BigInt(2),sH=BigInt(8),oH={zip215:!0};function lH(t){let e=(0,wE.validateBasic)(t);return kn.validateObject(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}n(lH,"validateOpts");function dH(t){let e=lH(t),{Fp:r,n:i,prehash:a,hash:s,randomBytes:o,nByteLength:l,h:d}=e,u=M4<{try{return{isValid:!0,value:r.sqrt(b*r.inv(w))}}catch{return{isValid:!1,value:Aa}}}),x=e.adjustScalarBytes||(b=>b),E=e.domain||((b,w,T)=>{if(w.length||T)throw new Error("Contexts/pre-hash are not supported");return b}),I=n(b=>typeof b=="bigint"&&AaI(b)&&I(w)&&bb===Aa||k(b,u),"in0MaskRange");function R(b,w){if(k(b,w))return b;throw new Error(`Expected valid scalar < ${w}, got ${typeof b} ${b}`)}n(R,"assertInRange");function F(b){return b===Aa?b:R(b,i)}n(F,"assertGE0");let B=new Map;function C(b){if(!(b instanceof W))throw new Error("ExtendedPoint expected")}n(C,"isPoint");class W{static{n(this,"Point")}constructor(w,T,A,h){if(this.ex=w,this.ey=T,this.ez=A,this.et=h,!z(w))throw new Error("x required");if(!z(T))throw new Error("y required");if(!z(A))throw new Error("z required");if(!z(h))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(w){if(w instanceof W)throw new Error("extended point not allowed");let{x:T,y:A}=w||{};if(!z(T)||!z(A))throw new Error("invalid affine point");return new W(T,A,Ri,c(T*A))}static normalizeZ(w){let T=r.invertBatch(w.map(A=>A.ez));return w.map((A,h)=>A.toAffine(T[h])).map(W.fromAffine)}_setWindowSize(w){this._WINDOW_SIZE=w,B.delete(this)}assertValidity(){let{a:w,d:T}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:A,ey:h,ez:P,et:j}=this,G=c(A*A),$=c(h*h),Y=c(P*P),oe=c(Y*Y),de=c(G*w),Ne=c(Y*c(de+$)),me=c(oe+c(T*c(G*$)));if(Ne!==me)throw new Error("bad point: equation left != right (1)");let fe=c(A*h),Qe=c(P*j);if(fe!==Qe)throw new Error("bad point: equation left != right (2)")}equals(w){C(w);let{ex:T,ey:A,ez:h}=this,{ex:P,ey:j,ez:G}=w,$=c(T*G),Y=c(P*h),oe=c(A*G),de=c(j*h);return $===Y&&oe===de}is0(){return this.equals(W.ZERO)}negate(){return new W(c(-this.ex),this.ey,this.ez,c(-this.et))}double(){let{a:w}=e,{ex:T,ey:A,ez:h}=this,P=c(T*T),j=c(A*A),G=c(M4*c(h*h)),$=c(w*P),Y=T+A,oe=c(c(Y*Y)-P-j),de=$+j,Ne=de-G,me=$-j,fe=c(oe*Ne),Qe=c(de*me),Fe=c(oe*me),Ke=c(Ne*de);return new W(fe,Qe,Ke,Fe)}add(w){C(w);let{a:T,d:A}=e,{ex:h,ey:P,ez:j,et:G}=this,{ex:$,ey:Y,ez:oe,et:de}=w;if(T===BigInt(-1)){let bs=c((P-h)*(Y+$)),lt=c((P+h)*(Y-$)),tt=c(lt-bs);if(tt===Aa)return this.double();let vs=c(j*M4*de),dt=c(G*M4*oe),ut=dt+vs,Ss=lt+bs,ct=dt-vs,yt=c(ut*tt),v1=c(Ss*ct),bt=c(ut*ct),vt=c(tt*Ss);return new W(yt,v1,vt,bt)}let Ne=c(h*$),me=c(P*Y),fe=c(G*A*de),Qe=c(j*oe),Fe=c((h+P)*($+Y)-Ne-me),Ke=Qe-fe,wa=Qe+fe,ot=c(me-T*Ne),ft=c(Fe*Ke),b1=c(wa*ot),ht=c(Fe*ot),gt=c(Ke*wa);return new W(ft,b1,gt,ht)}subtract(w){return this.add(w.negate())}wNAF(w){return Z.wNAFCached(this,B,w,W.normalizeZ)}multiply(w){let{p:T,f:A}=this.wNAF(R(w,i));return W.normalizeZ([T,A])[0]}multiplyUnsafe(w){let T=F(w);return T===Aa?H:this.equals(H)||T===Ri?this:this.equals(L)?this.wNAF(T).p:Z.unsafeLadder(this,T)}isSmallOrder(){return this.multiplyUnsafe(d).is0()}isTorsionFree(){return Z.unsafeLadder(this,i).is0()}toAffine(w){let{ex:T,ey:A,ez:h}=this,P=this.is0();w==null&&(w=P?sH:r.inv(h));let j=c(T*w),G=c(A*w),$=c(h*w);if(P)return{x:Aa,y:Ri};if($!==Ri)throw new Error("invZ was invalid");return{x:j,y:G}}clearCofactor(){let{h:w}=e;return w===Ri?this:this.multiplyUnsafe(w)}static fromHex(w,T=!1){let{d:A,a:h}=e,P=r.BYTES;w=(0,ks.ensureBytes)("pointHex",w,P);let j=w.slice(),G=w[P-1];j[P-1]=G&-129;let $=kn.bytesToNumberLE(j);$===Aa||(T?R($,u):R($,r.ORDER));let Y=c($*$),oe=c(Y-Ri),de=c(A*Y-h),{isValid:Ne,value:me}=p(oe,de);if(!Ne)throw new Error("Point.fromHex: invalid y coordinate");let fe=(me&Ri)===Ri,Qe=(G&128)!==0;if(!T&&me===Aa&&Qe)throw new Error("Point.fromHex: x=0 and x_0=1");return Qe!==fe&&(me=c(-me)),W.fromAffine({x:me,y:$})}static fromPrivateKey(w){return Q(w).point}toRawBytes(){let{x:w,y:T}=this.toAffine(),A=kn.numberToBytesLE(T,r.BYTES);return A[A.length-1]|=w&Ri?128:0,A}toHex(){return kn.bytesToHex(this.toRawBytes())}}W.BASE=new W(e.Gx,e.Gy,Ri,c(e.Gx*e.Gy)),W.ZERO=new W(Aa,Ri,Ri,Aa);let{BASE:L,ZERO:H}=W,Z=(0,wE.wNAF)(W,l*8);function se(b){return(0,nH.mod)(b,i)}n(se,"modN");function le(b){return se(kn.bytesToNumberLE(b))}n(le,"modN_LE");function Q(b){let w=l;b=(0,ks.ensureBytes)("private key",b,w);let T=(0,ks.ensureBytes)("hashed private key",s(b),2*w),A=x(T.slice(0,w)),h=T.slice(w,2*w),P=le(A),j=L.multiply(P),G=j.toRawBytes();return{head:A,prefix:h,scalar:P,point:j,pointBytes:G}}n(Q,"getExtendedPublicKey");function pe(b){return Q(b).pointBytes}n(pe,"getPublicKey");function M(b=new Uint8Array,...w){let T=kn.concatBytes(...w);return le(s(E(T,(0,ks.ensureBytes)("context",b),!!a)))}n(M,"hashDomainToScalar");function m(b,w,T={}){b=(0,ks.ensureBytes)("message",b),a&&(b=a(b));let{prefix:A,scalar:h,pointBytes:P}=Q(w),j=M(T.context,A,b),G=L.multiply(j).toRawBytes(),$=M(T.context,G,P,b),Y=se(j+$*h);F(Y);let oe=kn.concatBytes(G,kn.numberToBytesLE(Y,r.BYTES));return(0,ks.ensureBytes)("result",oe,l*2)}n(m,"sign");let g=oH;function y(b,w,T,A=g){let{context:h,zip215:P}=A,j=r.BYTES;b=(0,ks.ensureBytes)("signature",b,2*j),w=(0,ks.ensureBytes)("message",w),a&&(w=a(w));let G=kn.bytesToNumberLE(b.slice(j,2*j)),$,Y,oe;try{$=W.fromHex(T,P),Y=W.fromHex(b.slice(0,j),P),oe=L.multiplyUnsafe(G)}catch{return!1}if(!P&&$.isSmallOrder())return!1;let de=M(h,Y.toRawBytes(),$.toRawBytes(),w);return Y.add($.multiplyUnsafe(de)).subtract(oe).clearCofactor().equals(W.ZERO)}return n(y,"verify"),L._setWindowSize(8),{CURVE:e,getPublicKey:pe,sign:m,verify:y,ExtendedPoint:W,utils:{getExtendedPublicKey:Q,randomPrivateKey:()=>o(r.BYTES),precompute(b=8,w=W.BASE){return w._setWindowSize(b),w.multiply(BigInt(3)),w}}}}n(dH,"twistedEdwards");D4.twistedEdwards=dH});var _E=v(R4=>{"use strict";Object.defineProperty(R4,"__esModule",{value:!0});R4.montgomery=void 0;var AE=_s(),w1=xa(),Dp=BigInt(0),vy=BigInt(1);function uH(t){return(0,w1.validateObject)(t,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...t})}n(uH,"validateOpts");function cH(t){let e=uH(t),{P:r}=e,i=n(B=>(0,AE.mod)(B,r),"modP"),a=e.montgomeryBits,s=Math.ceil(a/8),o=e.nByteLength,l=e.adjustScalarBytes||(B=>B),d=e.powPminus2||(B=>(0,AE.pow)(B,r-BigInt(2),r));function u(B,C,W){let L=i(B*(C-W));return C=i(C-L),W=i(W+L),[C,W]}n(u,"cswap");function c(B){if(typeof B=="bigint"&&Dp<=B&&B=Dp;g--){let y=L>>g&vy;pe^=y,M=u(pe,Z,le),Z=M[0],le=M[1],M=u(pe,se,Q),se=M[0],Q=M[1],pe=y;let S=Z+se,b=i(S*S),w=Z-se,T=i(w*w),A=b-T,h=le+Q,P=le-Q,j=i(P*S),G=i(h*w),$=j+G,Y=j-G;le=i($*$),Q=i(H*i(Y*Y)),Z=i(b*T),se=i(A*(b+i(p*A)))}M=u(pe,Z,le),Z=M[0],le=M[1],M=u(pe,se,Q),se=M[0],Q=M[1];let m=d(se);return i(Z*m)}n(x,"montgomeryLadder");function E(B){return(0,w1.numberToBytesLE)(i(B),s)}n(E,"encodeUCoordinate");function I(B){let C=(0,w1.ensureBytes)("u coordinate",B,s);return o===s&&(C[o-1]&=127),(0,w1.bytesToNumberLE)(C)}n(I,"decodeUCoordinate");function k(B){let C=(0,w1.ensureBytes)("scalar",B);if(C.length!==s&&C.length!==o)throw new Error(`Expected ${s} or ${o} bytes, got ${C.length}`);return(0,w1.bytesToNumberLE)(l(C))}n(k,"decodeScalar");function z(B,C){let W=I(C),L=k(B),H=x(W,L);if(H===Dp)throw new Error("Invalid private or public key received");return E(H)}n(z,"scalarMult");let R=E(e.Gu);function F(B){return z(B,R)}return n(F,"scalarMultBase"),{scalarMult:z,scalarMultBase:F,getSharedSecret:(B,C)=>z(B,C),getPublicKey:B=>F(B),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:R}}n(cH,"montgomery");R4.montgomery=cH});var xy=v(Hi=>{"use strict";Object.defineProperty(Hi,"__esModule",{value:!0});Hi.createHasher=Hi.isogenyMap=Hi.hash_to_field=Hi.expand_message_xof=Hi.expand_message_xmd=void 0;var pH=_s(),_a=xa();function mH(t){if(t instanceof Uint8Array)return t;if(typeof t=="string")return(0,_a.utf8ToBytes)(t);throw new Error("DST must be Uint8Array or string")}n(mH,"validateDST");var fH=_a.bytesToNumberBE;function Es(t,e){if(t<0||t>=1<<8*e)throw new Error(`bad I2OSP call: value=${t} length=${e}`);let r=Array.from({length:e}).fill(0);for(let i=e-1;i>=0;i--)r[i]=t&255,t>>>=8;return new Uint8Array(r)}n(Es,"i2osp");function hH(t,e){let r=new Uint8Array(t.length);for(let i=0;i255&&(e=i((0,_a.concatBytes)((0,_a.utf8ToBytes)("H2C-OVERSIZE-DST-"),e)));let{outputLen:a,blockLen:s}=i,o=Math.ceil(r/a);if(o>255)throw new Error("Invalid xmd length");let l=(0,_a.concatBytes)(e,Es(e.length,1)),d=Es(0,s),u=Es(r,2),c=new Array(o),p=i((0,_a.concatBytes)(d,t,u,Es(0,1),l));c[0]=i((0,_a.concatBytes)(p,Es(1,1),l));for(let E=1;E<=o;E++){let I=[hH(p,c[E-1]),Es(E+1,1),l];c[E]=i((0,_a.concatBytes)(...I))}return(0,_a.concatBytes)(...c).slice(0,r)}n(kE,"expand_message_xmd");Hi.expand_message_xmd=kE;function EE(t,e,r,i,a){if(Rp(t),Rp(e),wy(r),e.length>255){let s=Math.ceil(2*i/8);e=a.create({dkLen:s}).update((0,_a.utf8ToBytes)("H2C-OVERSIZE-DST-")).update(e).digest()}if(r>65535||e.length>255)throw new Error("expand_message_xof: invalid lenInBytes");return a.create({dkLen:r}).update(t).update(Es(r,2)).update(e).update(Es(e.length,1)).digest()}n(EE,"expand_message_xof");Hi.expand_message_xof=EE;function Sy(t,e,r){(0,_a.validateObject)(r,{DST:"stringOrUint8Array",p:"bigint",m:"isSafeInteger",k:"isSafeInteger",hash:"hash"});let{p:i,k:a,m:s,hash:o,expand:l,DST:d}=r;Rp(t),wy(e);let u=mH(d),c=i.toString(2).length,p=Math.ceil((c+a)/8),x=e*s*p,E;if(l==="xmd")E=kE(t,u,x,o);else if(l==="xof")E=EE(t,u,x,a,o);else if(l==="_internal_pass")E=t;else throw new Error('expand must be "xmd" or "xof"');let I=new Array(e);for(let k=0;kArray.from(i).reverse());return(i,a)=>{let[s,o,l,d]=r.map(u=>u.reduce((c,p)=>t.add(t.mul(c,i),p)));return i=t.div(s,o),a=t.mul(a,t.div(l,d)),{x:i,y:a}}}n(gH,"isogenyMap");Hi.isogenyMap=gH;function yH(t,e,r){if(typeof e!="function")throw new Error("mapToCurve() must be defined");return{hashToCurve(i,a){let s=Sy(i,2,{...r,DST:r.DST,...a}),o=t.fromAffine(e(s[0])),l=t.fromAffine(e(s[1])),d=o.add(l).clearCofactor();return d.assertValidity(),d},encodeToCurve(i,a){let s=Sy(i,1,{...r,DST:r.encodeDST,...a}),o=t.fromAffine(e(s[0])).clearCofactor();return o.assertValidity(),o}}}n(yH,"createHasher");Hi.createHasher=yH});var WE=v(we=>{"use strict";Object.defineProperty(we,"__esModule",{value:!0});we.hash_to_ristretto255=we.hashToRistretto255=we.RistrettoPoint=we.encodeToCurve=we.hashToCurve=we.edwardsToMontgomeryPriv=we.edwardsToMontgomery=we.edwardsToMontgomeryPub=we.x25519=we.ed25519ph=we.ed25519ctx=we.ed25519=we.ED25519_TORSION_SUBGROUP=void 0;var C4=sE(),Bp=_n(),Py=xE(),bH=_E(),Je=_s(),Xo=xa(),RE=xy(),Cp=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),ky=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),vH=BigInt(0),Ha=BigInt(1),B4=BigInt(2),SH=BigInt(5),PE=BigInt(10),wH=BigInt(20),xH=BigInt(40),TE=BigInt(80);function BE(t){let e=Cp,i=t*t%e*t%e,a=(0,Je.pow2)(i,B4,e)*i%e,s=(0,Je.pow2)(a,Ha,e)*t%e,o=(0,Je.pow2)(s,SH,e)*s%e,l=(0,Je.pow2)(o,PE,e)*o%e,d=(0,Je.pow2)(l,wH,e)*l%e,u=(0,Je.pow2)(d,xH,e)*d%e,c=(0,Je.pow2)(u,TE,e)*u%e,p=(0,Je.pow2)(c,TE,e)*u%e,x=(0,Je.pow2)(p,PE,e)*o%e;return{pow_p_5_8:(0,Je.pow2)(x,B4,e)*t%e,b2:i}}n(BE,"ed25519_pow_2_252_3");function CE(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}n(CE,"adjustScalarBytes");function Ty(t,e){let r=Cp,i=(0,Je.mod)(e*e*e,r),a=(0,Je.mod)(i*i*e,r),s=BE(t*a).pow_p_5_8,o=(0,Je.mod)(t*i*s,r),l=(0,Je.mod)(e*o*o,r),d=o,u=(0,Je.mod)(o*ky,r),c=l===t,p=l===(0,Je.mod)(-t,r),x=l===(0,Je.mod)(-t*ky,r);return c&&(o=d),(p||x)&&(o=u),(0,Je.isNegativeLE)(o,r)&&(o=(0,Je.mod)(-o,r)),{isValid:c||p,value:o}}n(Ty,"uvRatio");we.ED25519_TORSION_SUBGROUP=["0100000000000000000000000000000000000000000000000000000000000000","c7176a703d4dd84fba3c0b760d10670f2a2053fa2c39ccc64ec7fd7792ac037a","0000000000000000000000000000000000000000000000000000000000000080","26e8958fc2b227b045c3f489f2ef98f0d5dfac05d3c63339b13802886d53fc05","ecffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f","26e8958fc2b227b045c3f489f2ef98f0d5dfac05d3c63339b13802886d53fc85","0000000000000000000000000000000000000000000000000000000000000000","c7176a703d4dd84fba3c0b760d10670f2a2053fa2c39ccc64ec7fd7792ac03fa"];var ne=(0,Je.Field)(Cp,void 0,!0),Op={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:ne,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:C4.sha512,randomBytes:Bp.randomBytes,adjustScalarBytes:CE,uvRatio:Ty};we.ed25519=(0,Py.twistedEdwards)(Op);function OE(t,e,r){if(e.length>255)throw new Error("Context is too big");return(0,Bp.concatBytes)((0,Bp.utf8ToBytes)("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}n(OE,"ed25519_domain");we.ed25519ctx=(0,Py.twistedEdwards)({...Op,domain:OE});we.ed25519ph=(0,Py.twistedEdwards)({...Op,domain:OE,prehash:C4.sha512});we.x25519=(()=>(0,bH.montgomery)({P:Cp,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:t=>{let e=Cp,{pow_p_5_8:r,b2:i}=BE(t);return(0,Je.mod)((0,Je.pow2)(r,BigInt(3),e)*i,e)},adjustScalarBytes:CE,randomBytes:Bp.randomBytes}))();function NE(t){let{y:e}=we.ed25519.ExtendedPoint.fromHex(t),r=BigInt(1);return ne.toBytes(ne.create((r+e)*ne.inv(r-e)))}n(NE,"edwardsToMontgomeryPub");we.edwardsToMontgomeryPub=NE;we.edwardsToMontgomery=NE;function AH(t){let e=Op.hash(t.subarray(0,32));return Op.adjustScalarBytes(e).subarray(0,32)}n(AH,"edwardsToMontgomeryPriv");we.edwardsToMontgomeryPriv=AH;var _H=(ne.ORDER+BigInt(3))/BigInt(8),kH=ne.pow(B4,_H),zE=ne.sqrt(ne.neg(ne.ONE)),EH=(ne.ORDER-BigInt(5))/BigInt(8),IE=BigInt(486662);function PH(t){let e=ne.sqr(t);e=ne.mul(e,B4);let r=ne.add(e,ne.ONE),i=ne.neg(IE),a=ne.sqr(r),s=ne.mul(a,r),o=ne.mul(e,IE);o=ne.mul(o,i),o=ne.add(o,a),o=ne.mul(o,i);let l=ne.sqr(s);a=ne.sqr(l),l=ne.mul(l,s),l=ne.mul(l,o),a=ne.mul(a,l);let d=ne.pow(a,EH);d=ne.mul(d,l);let u=ne.mul(d,zE);a=ne.sqr(d),a=ne.mul(a,s);let c=ne.eql(a,o),p=ne.cmov(u,d,c),x=ne.mul(i,e),E=ne.mul(d,t);E=ne.mul(E,kH);let I=ne.mul(E,zE),k=ne.mul(o,e);a=ne.sqr(E),a=ne.mul(a,s);let z=ne.eql(a,k),R=ne.cmov(I,E,z);a=ne.sqr(p),a=ne.mul(a,s);let F=ne.eql(a,o),B=ne.cmov(x,i,F),C=ne.cmov(R,p,F),W=ne.isOdd(C);return C=ne.cmov(C,ne.neg(C),F!==W),{xMn:B,xMd:r,yMn:C,yMd:Ha}}n(PH,"map_to_curve_elligator2_curve25519");var TH=(0,Je.FpSqrtEven)(ne,ne.neg(BigInt(486664)));function zH(t){let{xMn:e,xMd:r,yMn:i,yMd:a}=PH(t),s=ne.mul(e,a);s=ne.mul(s,TH);let o=ne.mul(r,i),l=ne.sub(e,r),d=ne.add(e,r),u=ne.mul(o,d),c=ne.eql(u,ne.ZERO);s=ne.cmov(s,ne.ZERO,c),o=ne.cmov(o,ne.ONE,c),l=ne.cmov(l,ne.ONE,c),d=ne.cmov(d,ne.ONE,c);let p=ne.invertBatch([o,d]);return{x:ne.mul(s,p[0]),y:ne.mul(l,p[1])}}n(zH,"map_to_curve_elligator2_edwards25519");var qE=(()=>(0,RE.createHasher)(we.ed25519.ExtendedPoint,t=>zH(t[0]),{DST:"edwards25519_XMD:SHA-512_ELL2_RO_",encodeDST:"edwards25519_XMD:SHA-512_ELL2_NU_",p:ne.ORDER,m:1,k:128,expand:"xmd",hash:C4.sha512}))();we.hashToCurve=(()=>qE.hashToCurve)();we.encodeToCurve=(()=>qE.encodeToCurve)();function Ay(t){if(!(t instanceof ka))throw new Error("RistrettoPoint expected")}n(Ay,"assertRstPoint");var Ey=ky,IH=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),MH=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),DH=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),RH=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952"),ME=n(t=>Ty(Ha,t),"invertSqrt"),BH=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),_y=n(t=>we.ed25519.CURVE.Fp.create((0,Xo.bytesToNumberLE)(t)&BH),"bytes255ToNumberLE");function DE(t){let{d:e}=we.ed25519.CURVE,r=we.ed25519.CURVE.Fp.ORDER,i=we.ed25519.CURVE.Fp.create,a=i(Ey*t*t),s=i((a+Ha)*DH),o=BigInt(-1),l=i((o-e*a)*i(a+e)),{isValid:d,value:u}=Ty(s,l),c=i(u*t);(0,Je.isNegativeLE)(c,r)||(c=i(-c)),d||(u=c),d||(o=a);let p=i(o*(a-Ha)*RH-l),x=u*u,E=i((u+u)*l),I=i(p*IH),k=i(Ha-x),z=i(Ha+x);return new we.ed25519.ExtendedPoint(i(E*z),i(k*I),i(I*z),i(E*k))}n(DE,"calcElligatorRistrettoMap");var ka=class t{static{n(this,"RistPoint")}constructor(e){this.ep=e}static fromAffine(e){return new t(we.ed25519.ExtendedPoint.fromAffine(e))}static hashToCurve(e){e=(0,Xo.ensureBytes)("ristrettoHash",e,64);let r=_y(e.slice(0,32)),i=DE(r),a=_y(e.slice(32,64)),s=DE(a);return new t(i.add(s))}static fromHex(e){e=(0,Xo.ensureBytes)("ristrettoHex",e,32);let{a:r,d:i}=we.ed25519.CURVE,a=we.ed25519.CURVE.Fp.ORDER,s=we.ed25519.CURVE.Fp.create,o="RistrettoPoint.fromHex: the hex is not valid encoding of RistrettoPoint",l=_y(e);if(!(0,Xo.equalBytes)((0,Xo.numberToBytesLE)(l,32),e)||(0,Je.isNegativeLE)(l,a))throw new Error(o);let d=s(l*l),u=s(Ha+r*d),c=s(Ha-r*d),p=s(u*u),x=s(c*c),E=s(r*i*p-x),{isValid:I,value:k}=ME(s(E*x)),z=s(k*c),R=s(k*z*E),F=s((l+l)*z);(0,Je.isNegativeLE)(F,a)&&(F=s(-F));let B=s(u*R),C=s(F*B);if(!I||(0,Je.isNegativeLE)(C,a)||B===vH)throw new Error(o);return new t(new we.ed25519.ExtendedPoint(F,B,Ha,C))}toRawBytes(){let{ex:e,ey:r,ez:i,et:a}=this.ep,s=we.ed25519.CURVE.Fp.ORDER,o=we.ed25519.CURVE.Fp.create,l=o(o(i+r)*o(i-r)),d=o(e*r),u=o(d*d),{value:c}=ME(o(l*u)),p=o(c*l),x=o(c*d),E=o(p*x*a),I;if((0,Je.isNegativeLE)(a*E,s)){let z=o(r*Ey),R=o(e*Ey);e=z,r=R,I=o(p*MH)}else I=x;(0,Je.isNegativeLE)(e*E,s)&&(r=o(-r));let k=o((i-r)*I);return(0,Je.isNegativeLE)(k,s)&&(k=o(-k)),(0,Xo.numberToBytesLE)(k,32)}toHex(){return(0,Xo.bytesToHex)(this.toRawBytes())}toString(){return this.toHex()}equals(e){Ay(e);let{ex:r,ey:i}=this.ep,{ex:a,ey:s}=e.ep,o=we.ed25519.CURVE.Fp.create,l=o(r*s)===o(i*a),d=o(i*s)===o(r*a);return l||d}add(e){return Ay(e),new t(this.ep.add(e.ep))}subtract(e){return Ay(e),new t(this.ep.subtract(e.ep))}multiply(e){return new t(this.ep.multiply(e))}multiplyUnsafe(e){return new t(this.ep.multiplyUnsafe(e))}};we.RistrettoPoint=(()=>(ka.BASE||(ka.BASE=new ka(we.ed25519.ExtendedPoint.BASE)),ka.ZERO||(ka.ZERO=new ka(we.ed25519.ExtendedPoint.ZERO)),ka))();var CH=n((t,e)=>{let r=e.DST,i=typeof r=="string"?(0,Bp.utf8ToBytes)(r):r,a=(0,RE.expand_message_xmd)(t,i,64,C4.sha512);return ka.hashToCurve(a)},"hashToRistretto255");we.hashToRistretto255=CH;we.hash_to_ristretto255=we.hashToRistretto255});var Iy=v((VE,zy)=>{(function(t,e){"use strict";function r(M,m){if(!M)throw new Error(m||"Assertion failed")}n(r,"assert");function i(M,m){M.super_=m;var g=n(function(){},"TempCtor");g.prototype=m.prototype,M.prototype=new g,M.prototype.constructor=M}n(i,"inherits");function a(M,m,g){if(a.isBN(M))return M;this.negative=0,this.words=null,this.length=0,this.red=null,M!==null&&((m==="le"||m==="be")&&(g=m,m=10),this._init(M||0,m||10,g||"be"))}n(a,"BN"),typeof t=="object"?t.exports=a:e.BN=a,a.BN=a,a.wordSize=26;var s;try{typeof window<"u"&&typeof window.Buffer<"u"?s=window.Buffer:s=require("buffer").Buffer}catch{}a.isBN=n(function(m){return m instanceof a?!0:m!==null&&typeof m=="object"&&m.constructor.wordSize===a.wordSize&&Array.isArray(m.words)},"isBN"),a.max=n(function(m,g){return m.cmp(g)>0?m:g},"max"),a.min=n(function(m,g){return m.cmp(g)<0?m:g},"min"),a.prototype._init=n(function(m,g,y){if(typeof m=="number")return this._initNumber(m,g,y);if(typeof m=="object")return this._initArray(m,g,y);g==="hex"&&(g=16),r(g===(g|0)&&g>=2&&g<=36),m=m.toString().replace(/\s+/g,"");var S=0;m[0]==="-"&&(S++,this.negative=1),S=0;S-=3)w=m[S]|m[S-1]<<8|m[S-2]<<16,this.words[b]|=w<>>26-T&67108863,T+=24,T>=26&&(T-=26,b++);else if(y==="le")for(S=0,b=0;S>>26-T&67108863,T+=24,T>=26&&(T-=26,b++);return this._strip()},"_initArray");function o(M,m){var g=M.charCodeAt(m);if(g>=48&&g<=57)return g-48;if(g>=65&&g<=70)return g-55;if(g>=97&&g<=102)return g-87;r(!1,"Invalid character in "+M)}n(o,"parseHex4Bits");function l(M,m,g){var y=o(M,g);return g-1>=m&&(y|=o(M,g-1)<<4),y}n(l,"parseHexByte"),a.prototype._parseHex=n(function(m,g,y){this.length=Math.ceil((m.length-g)/6),this.words=new Array(this.length);for(var S=0;S=g;S-=2)T=l(m,g,S)<=18?(b-=18,w+=1,this.words[w]|=T>>>26):b+=8;else{var A=m.length-g;for(S=A%2===0?g+1:g;S=18?(b-=18,w+=1,this.words[w]|=T>>>26):b+=8}this._strip()},"_parseHex");function d(M,m,g,y){for(var S=0,b=0,w=Math.min(M.length,g),T=m;T=49?b=A-49+10:A>=17?b=A-17+10:b=A,r(A>=0&&b1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},"strip"),a.prototype._normSign=n(function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},"_normSign"),typeof Symbol<"u"&&typeof Symbol.for=="function")try{a.prototype[Symbol.for("nodejs.util.inspect.custom")]=c}catch{a.prototype.inspect=c}else a.prototype.inspect=c;function c(){return(this.red?""}n(c,"inspect");var p=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],x=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],E=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];a.prototype.toString=n(function(m,g){m=m||10,g=g|0||1;var y;if(m===16||m==="hex"){y="";for(var S=0,b=0,w=0;w>>24-S&16777215,S+=2,S>=26&&(S-=26,w--),b!==0||w!==this.length-1?y=p[6-A.length]+A+y:y=A+y}for(b!==0&&(y=b.toString(16)+y);y.length%g!==0;)y="0"+y;return this.negative!==0&&(y="-"+y),y}if(m===(m|0)&&m>=2&&m<=36){var h=x[m],P=E[m];y="";var j=this.clone();for(j.negative=0;!j.isZero();){var G=j.modrn(P).toString(m);j=j.idivn(P),j.isZero()?y=G+y:y=p[h-G.length]+G+y}for(this.isZero()&&(y="0"+y);y.length%g!==0;)y="0"+y;return this.negative!==0&&(y="-"+y),y}r(!1,"Base should be between 2 and 36")},"toString"),a.prototype.toNumber=n(function(){var m=this.words[0];return this.length===2?m+=this.words[1]*67108864:this.length===3&&this.words[2]===1?m+=4503599627370496+this.words[1]*67108864:this.length>2&&r(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-m:m},"toNumber"),a.prototype.toJSON=n(function(){return this.toString(16,2)},"toJSON"),s&&(a.prototype.toBuffer=n(function(m,g){return this.toArrayLike(s,m,g)},"toBuffer")),a.prototype.toArray=n(function(m,g){return this.toArrayLike(Array,m,g)},"toArray");var I=n(function(m,g){return m.allocUnsafe?m.allocUnsafe(g):new m(g)},"allocate");a.prototype.toArrayLike=n(function(m,g,y){this._strip();var S=this.byteLength(),b=y||Math.max(1,S);r(S<=b,"byte array longer than desired length"),r(b>0,"Requested array length <= 0");var w=I(m,b),T=g==="le"?"LE":"BE";return this["_toArrayLike"+T](w,S),w},"toArrayLike"),a.prototype._toArrayLikeLE=n(function(m,g){for(var y=0,S=0,b=0,w=0;b>8&255),y>16&255),w===6?(y>24&255),S=0,w=0):(S=T>>>24,w+=2)}if(y=0&&(m[y--]=T>>8&255),y>=0&&(m[y--]=T>>16&255),w===6?(y>=0&&(m[y--]=T>>24&255),S=0,w=0):(S=T>>>24,w+=2)}if(y>=0)for(m[y--]=S;y>=0;)m[y--]=0},"_toArrayLikeBE"),Math.clz32?a.prototype._countBits=n(function(m){return 32-Math.clz32(m)},"_countBits"):a.prototype._countBits=n(function(m){var g=m,y=0;return g>=4096&&(y+=13,g>>>=13),g>=64&&(y+=7,g>>>=7),g>=8&&(y+=4,g>>>=4),g>=2&&(y+=2,g>>>=2),y+g},"_countBits"),a.prototype._zeroBits=n(function(m){if(m===0)return 26;var g=m,y=0;return g&8191||(y+=13,g>>>=13),g&127||(y+=7,g>>>=7),g&15||(y+=4,g>>>=4),g&3||(y+=2,g>>>=2),g&1||y++,y},"_zeroBits"),a.prototype.bitLength=n(function(){var m=this.words[this.length-1],g=this._countBits(m);return(this.length-1)*26+g},"bitLength");function k(M){for(var m=new Array(M.bitLength()),g=0;g>>S&1}return m}n(k,"toBitArray"),a.prototype.zeroBits=n(function(){if(this.isZero())return 0;for(var m=0,g=0;gm.length?this.clone().ior(m):m.clone().ior(this)},"or"),a.prototype.uor=n(function(m){return this.length>m.length?this.clone().iuor(m):m.clone().iuor(this)},"uor"),a.prototype.iuand=n(function(m){var g;this.length>m.length?g=m:g=this;for(var y=0;ym.length?this.clone().iand(m):m.clone().iand(this)},"and"),a.prototype.uand=n(function(m){return this.length>m.length?this.clone().iuand(m):m.clone().iuand(this)},"uand"),a.prototype.iuxor=n(function(m){var g,y;this.length>m.length?(g=this,y=m):(g=m,y=this);for(var S=0;Sm.length?this.clone().ixor(m):m.clone().ixor(this)},"xor"),a.prototype.uxor=n(function(m){return this.length>m.length?this.clone().iuxor(m):m.clone().iuxor(this)},"uxor"),a.prototype.inotn=n(function(m){r(typeof m=="number"&&m>=0);var g=Math.ceil(m/26)|0,y=m%26;this._expand(g),y>0&&g--;for(var S=0;S0&&(this.words[S]=~this.words[S]&67108863>>26-y),this._strip()},"inotn"),a.prototype.notn=n(function(m){return this.clone().inotn(m)},"notn"),a.prototype.setn=n(function(m,g){r(typeof m=="number"&&m>=0);var y=m/26|0,S=m%26;return this._expand(y+1),g?this.words[y]=this.words[y]|1<m.length?(y=this,S=m):(y=m,S=this);for(var b=0,w=0;w>>26;for(;b!==0&&w>>26;if(this.length=y.length,b!==0)this.words[this.length]=b,this.length++;else if(y!==this)for(;wm.length?this.clone().iadd(m):m.clone().iadd(this)},"add"),a.prototype.isub=n(function(m){if(m.negative!==0){m.negative=0;var g=this.iadd(m);return m.negative=1,g._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(m),this.negative=1,this._normSign();var y=this.cmp(m);if(y===0)return this.negative=0,this.length=1,this.words[0]=0,this;var S,b;y>0?(S=this,b=m):(S=m,b=this);for(var w=0,T=0;T>26,this.words[T]=g&67108863;for(;w!==0&&T>26,this.words[T]=g&67108863;if(w===0&&T>>26,j=A&67108863,G=Math.min(h,m.length-1),$=Math.max(0,h-M.length+1);$<=G;$++){var Y=h-$|0;S=M.words[Y]|0,b=m.words[$]|0,w=S*b+j,P+=w/67108864|0,j=w&67108863}g.words[h]=j|0,A=P|0}return A!==0?g.words[h]=A|0:g.length--,g._strip()}n(z,"smallMulTo");var R=n(function(m,g,y){var S=m.words,b=g.words,w=y.words,T=0,A,h,P,j=S[0]|0,G=j&8191,$=j>>>13,Y=S[1]|0,oe=Y&8191,de=Y>>>13,Ne=S[2]|0,me=Ne&8191,fe=Ne>>>13,Qe=S[3]|0,Fe=Qe&8191,Ke=Qe>>>13,wa=S[4]|0,ot=wa&8191,ft=wa>>>13,b1=S[5]|0,ht=b1&8191,gt=b1>>>13,bs=S[6]|0,lt=bs&8191,tt=bs>>>13,vs=S[7]|0,dt=vs&8191,ut=vs>>>13,Ss=S[8]|0,ct=Ss&8191,yt=Ss>>>13,v1=S[9]|0,bt=v1&8191,vt=v1>>>13,wk=b[0]|0,Jt=wk&8191,Yt=wk>>>13,xk=b[1]|0,Qt=xk&8191,Xt=xk>>>13,Ak=b[2]|0,er=Ak&8191,tr=Ak>>>13,_k=b[3]|0,rr=_k&8191,ir=_k>>>13,kk=b[4]|0,ar=kk&8191,nr=kk>>>13,Ek=b[5]|0,sr=Ek&8191,or=Ek>>>13,Pk=b[6]|0,lr=Pk&8191,dr=Pk>>>13,Tk=b[7]|0,ur=Tk&8191,cr=Tk>>>13,zk=b[8]|0,pr=zk&8191,mr=zk>>>13,Ik=b[9]|0,fr=Ik&8191,hr=Ik>>>13;y.negative=m.negative^g.negative,y.length=19,A=Math.imul(G,Jt),h=Math.imul(G,Yt),h=h+Math.imul($,Jt)|0,P=Math.imul($,Yt);var D9=(T+A|0)+((h&8191)<<13)|0;T=(P+(h>>>13)|0)+(D9>>>26)|0,D9&=67108863,A=Math.imul(oe,Jt),h=Math.imul(oe,Yt),h=h+Math.imul(de,Jt)|0,P=Math.imul(de,Yt),A=A+Math.imul(G,Qt)|0,h=h+Math.imul(G,Xt)|0,h=h+Math.imul($,Qt)|0,P=P+Math.imul($,Xt)|0;var R9=(T+A|0)+((h&8191)<<13)|0;T=(P+(h>>>13)|0)+(R9>>>26)|0,R9&=67108863,A=Math.imul(me,Jt),h=Math.imul(me,Yt),h=h+Math.imul(fe,Jt)|0,P=Math.imul(fe,Yt),A=A+Math.imul(oe,Qt)|0,h=h+Math.imul(oe,Xt)|0,h=h+Math.imul(de,Qt)|0,P=P+Math.imul(de,Xt)|0,A=A+Math.imul(G,er)|0,h=h+Math.imul(G,tr)|0,h=h+Math.imul($,er)|0,P=P+Math.imul($,tr)|0;var B9=(T+A|0)+((h&8191)<<13)|0;T=(P+(h>>>13)|0)+(B9>>>26)|0,B9&=67108863,A=Math.imul(Fe,Jt),h=Math.imul(Fe,Yt),h=h+Math.imul(Ke,Jt)|0,P=Math.imul(Ke,Yt),A=A+Math.imul(me,Qt)|0,h=h+Math.imul(me,Xt)|0,h=h+Math.imul(fe,Qt)|0,P=P+Math.imul(fe,Xt)|0,A=A+Math.imul(oe,er)|0,h=h+Math.imul(oe,tr)|0,h=h+Math.imul(de,er)|0,P=P+Math.imul(de,tr)|0,A=A+Math.imul(G,rr)|0,h=h+Math.imul(G,ir)|0,h=h+Math.imul($,rr)|0,P=P+Math.imul($,ir)|0;var C9=(T+A|0)+((h&8191)<<13)|0;T=(P+(h>>>13)|0)+(C9>>>26)|0,C9&=67108863,A=Math.imul(ot,Jt),h=Math.imul(ot,Yt),h=h+Math.imul(ft,Jt)|0,P=Math.imul(ft,Yt),A=A+Math.imul(Fe,Qt)|0,h=h+Math.imul(Fe,Xt)|0,h=h+Math.imul(Ke,Qt)|0,P=P+Math.imul(Ke,Xt)|0,A=A+Math.imul(me,er)|0,h=h+Math.imul(me,tr)|0,h=h+Math.imul(fe,er)|0,P=P+Math.imul(fe,tr)|0,A=A+Math.imul(oe,rr)|0,h=h+Math.imul(oe,ir)|0,h=h+Math.imul(de,rr)|0,P=P+Math.imul(de,ir)|0,A=A+Math.imul(G,ar)|0,h=h+Math.imul(G,nr)|0,h=h+Math.imul($,ar)|0,P=P+Math.imul($,nr)|0;var O9=(T+A|0)+((h&8191)<<13)|0;T=(P+(h>>>13)|0)+(O9>>>26)|0,O9&=67108863,A=Math.imul(ht,Jt),h=Math.imul(ht,Yt),h=h+Math.imul(gt,Jt)|0,P=Math.imul(gt,Yt),A=A+Math.imul(ot,Qt)|0,h=h+Math.imul(ot,Xt)|0,h=h+Math.imul(ft,Qt)|0,P=P+Math.imul(ft,Xt)|0,A=A+Math.imul(Fe,er)|0,h=h+Math.imul(Fe,tr)|0,h=h+Math.imul(Ke,er)|0,P=P+Math.imul(Ke,tr)|0,A=A+Math.imul(me,rr)|0,h=h+Math.imul(me,ir)|0,h=h+Math.imul(fe,rr)|0,P=P+Math.imul(fe,ir)|0,A=A+Math.imul(oe,ar)|0,h=h+Math.imul(oe,nr)|0,h=h+Math.imul(de,ar)|0,P=P+Math.imul(de,nr)|0,A=A+Math.imul(G,sr)|0,h=h+Math.imul(G,or)|0,h=h+Math.imul($,sr)|0,P=P+Math.imul($,or)|0;var N9=(T+A|0)+((h&8191)<<13)|0;T=(P+(h>>>13)|0)+(N9>>>26)|0,N9&=67108863,A=Math.imul(lt,Jt),h=Math.imul(lt,Yt),h=h+Math.imul(tt,Jt)|0,P=Math.imul(tt,Yt),A=A+Math.imul(ht,Qt)|0,h=h+Math.imul(ht,Xt)|0,h=h+Math.imul(gt,Qt)|0,P=P+Math.imul(gt,Xt)|0,A=A+Math.imul(ot,er)|0,h=h+Math.imul(ot,tr)|0,h=h+Math.imul(ft,er)|0,P=P+Math.imul(ft,tr)|0,A=A+Math.imul(Fe,rr)|0,h=h+Math.imul(Fe,ir)|0,h=h+Math.imul(Ke,rr)|0,P=P+Math.imul(Ke,ir)|0,A=A+Math.imul(me,ar)|0,h=h+Math.imul(me,nr)|0,h=h+Math.imul(fe,ar)|0,P=P+Math.imul(fe,nr)|0,A=A+Math.imul(oe,sr)|0,h=h+Math.imul(oe,or)|0,h=h+Math.imul(de,sr)|0,P=P+Math.imul(de,or)|0,A=A+Math.imul(G,lr)|0,h=h+Math.imul(G,dr)|0,h=h+Math.imul($,lr)|0,P=P+Math.imul($,dr)|0;var q9=(T+A|0)+((h&8191)<<13)|0;T=(P+(h>>>13)|0)+(q9>>>26)|0,q9&=67108863,A=Math.imul(dt,Jt),h=Math.imul(dt,Yt),h=h+Math.imul(ut,Jt)|0,P=Math.imul(ut,Yt),A=A+Math.imul(lt,Qt)|0,h=h+Math.imul(lt,Xt)|0,h=h+Math.imul(tt,Qt)|0,P=P+Math.imul(tt,Xt)|0,A=A+Math.imul(ht,er)|0,h=h+Math.imul(ht,tr)|0,h=h+Math.imul(gt,er)|0,P=P+Math.imul(gt,tr)|0,A=A+Math.imul(ot,rr)|0,h=h+Math.imul(ot,ir)|0,h=h+Math.imul(ft,rr)|0,P=P+Math.imul(ft,ir)|0,A=A+Math.imul(Fe,ar)|0,h=h+Math.imul(Fe,nr)|0,h=h+Math.imul(Ke,ar)|0,P=P+Math.imul(Ke,nr)|0,A=A+Math.imul(me,sr)|0,h=h+Math.imul(me,or)|0,h=h+Math.imul(fe,sr)|0,P=P+Math.imul(fe,or)|0,A=A+Math.imul(oe,lr)|0,h=h+Math.imul(oe,dr)|0,h=h+Math.imul(de,lr)|0,P=P+Math.imul(de,dr)|0,A=A+Math.imul(G,ur)|0,h=h+Math.imul(G,cr)|0,h=h+Math.imul($,ur)|0,P=P+Math.imul($,cr)|0;var W9=(T+A|0)+((h&8191)<<13)|0;T=(P+(h>>>13)|0)+(W9>>>26)|0,W9&=67108863,A=Math.imul(ct,Jt),h=Math.imul(ct,Yt),h=h+Math.imul(yt,Jt)|0,P=Math.imul(yt,Yt),A=A+Math.imul(dt,Qt)|0,h=h+Math.imul(dt,Xt)|0,h=h+Math.imul(ut,Qt)|0,P=P+Math.imul(ut,Xt)|0,A=A+Math.imul(lt,er)|0,h=h+Math.imul(lt,tr)|0,h=h+Math.imul(tt,er)|0,P=P+Math.imul(tt,tr)|0,A=A+Math.imul(ht,rr)|0,h=h+Math.imul(ht,ir)|0,h=h+Math.imul(gt,rr)|0,P=P+Math.imul(gt,ir)|0,A=A+Math.imul(ot,ar)|0,h=h+Math.imul(ot,nr)|0,h=h+Math.imul(ft,ar)|0,P=P+Math.imul(ft,nr)|0,A=A+Math.imul(Fe,sr)|0,h=h+Math.imul(Fe,or)|0,h=h+Math.imul(Ke,sr)|0,P=P+Math.imul(Ke,or)|0,A=A+Math.imul(me,lr)|0,h=h+Math.imul(me,dr)|0,h=h+Math.imul(fe,lr)|0,P=P+Math.imul(fe,dr)|0,A=A+Math.imul(oe,ur)|0,h=h+Math.imul(oe,cr)|0,h=h+Math.imul(de,ur)|0,P=P+Math.imul(de,cr)|0,A=A+Math.imul(G,pr)|0,h=h+Math.imul(G,mr)|0,h=h+Math.imul($,pr)|0,P=P+Math.imul($,mr)|0;var V9=(T+A|0)+((h&8191)<<13)|0;T=(P+(h>>>13)|0)+(V9>>>26)|0,V9&=67108863,A=Math.imul(bt,Jt),h=Math.imul(bt,Yt),h=h+Math.imul(vt,Jt)|0,P=Math.imul(vt,Yt),A=A+Math.imul(ct,Qt)|0,h=h+Math.imul(ct,Xt)|0,h=h+Math.imul(yt,Qt)|0,P=P+Math.imul(yt,Xt)|0,A=A+Math.imul(dt,er)|0,h=h+Math.imul(dt,tr)|0,h=h+Math.imul(ut,er)|0,P=P+Math.imul(ut,tr)|0,A=A+Math.imul(lt,rr)|0,h=h+Math.imul(lt,ir)|0,h=h+Math.imul(tt,rr)|0,P=P+Math.imul(tt,ir)|0,A=A+Math.imul(ht,ar)|0,h=h+Math.imul(ht,nr)|0,h=h+Math.imul(gt,ar)|0,P=P+Math.imul(gt,nr)|0,A=A+Math.imul(ot,sr)|0,h=h+Math.imul(ot,or)|0,h=h+Math.imul(ft,sr)|0,P=P+Math.imul(ft,or)|0,A=A+Math.imul(Fe,lr)|0,h=h+Math.imul(Fe,dr)|0,h=h+Math.imul(Ke,lr)|0,P=P+Math.imul(Ke,dr)|0,A=A+Math.imul(me,ur)|0,h=h+Math.imul(me,cr)|0,h=h+Math.imul(fe,ur)|0,P=P+Math.imul(fe,cr)|0,A=A+Math.imul(oe,pr)|0,h=h+Math.imul(oe,mr)|0,h=h+Math.imul(de,pr)|0,P=P+Math.imul(de,mr)|0,A=A+Math.imul(G,fr)|0,h=h+Math.imul(G,hr)|0,h=h+Math.imul($,fr)|0,P=P+Math.imul($,hr)|0;var F9=(T+A|0)+((h&8191)<<13)|0;T=(P+(h>>>13)|0)+(F9>>>26)|0,F9&=67108863,A=Math.imul(bt,Qt),h=Math.imul(bt,Xt),h=h+Math.imul(vt,Qt)|0,P=Math.imul(vt,Xt),A=A+Math.imul(ct,er)|0,h=h+Math.imul(ct,tr)|0,h=h+Math.imul(yt,er)|0,P=P+Math.imul(yt,tr)|0,A=A+Math.imul(dt,rr)|0,h=h+Math.imul(dt,ir)|0,h=h+Math.imul(ut,rr)|0,P=P+Math.imul(ut,ir)|0,A=A+Math.imul(lt,ar)|0,h=h+Math.imul(lt,nr)|0,h=h+Math.imul(tt,ar)|0,P=P+Math.imul(tt,nr)|0,A=A+Math.imul(ht,sr)|0,h=h+Math.imul(ht,or)|0,h=h+Math.imul(gt,sr)|0,P=P+Math.imul(gt,or)|0,A=A+Math.imul(ot,lr)|0,h=h+Math.imul(ot,dr)|0,h=h+Math.imul(ft,lr)|0,P=P+Math.imul(ft,dr)|0,A=A+Math.imul(Fe,ur)|0,h=h+Math.imul(Fe,cr)|0,h=h+Math.imul(Ke,ur)|0,P=P+Math.imul(Ke,cr)|0,A=A+Math.imul(me,pr)|0,h=h+Math.imul(me,mr)|0,h=h+Math.imul(fe,pr)|0,P=P+Math.imul(fe,mr)|0,A=A+Math.imul(oe,fr)|0,h=h+Math.imul(oe,hr)|0,h=h+Math.imul(de,fr)|0,P=P+Math.imul(de,hr)|0;var K9=(T+A|0)+((h&8191)<<13)|0;T=(P+(h>>>13)|0)+(K9>>>26)|0,K9&=67108863,A=Math.imul(bt,er),h=Math.imul(bt,tr),h=h+Math.imul(vt,er)|0,P=Math.imul(vt,tr),A=A+Math.imul(ct,rr)|0,h=h+Math.imul(ct,ir)|0,h=h+Math.imul(yt,rr)|0,P=P+Math.imul(yt,ir)|0,A=A+Math.imul(dt,ar)|0,h=h+Math.imul(dt,nr)|0,h=h+Math.imul(ut,ar)|0,P=P+Math.imul(ut,nr)|0,A=A+Math.imul(lt,sr)|0,h=h+Math.imul(lt,or)|0,h=h+Math.imul(tt,sr)|0,P=P+Math.imul(tt,or)|0,A=A+Math.imul(ht,lr)|0,h=h+Math.imul(ht,dr)|0,h=h+Math.imul(gt,lr)|0,P=P+Math.imul(gt,dr)|0,A=A+Math.imul(ot,ur)|0,h=h+Math.imul(ot,cr)|0,h=h+Math.imul(ft,ur)|0,P=P+Math.imul(ft,cr)|0,A=A+Math.imul(Fe,pr)|0,h=h+Math.imul(Fe,mr)|0,h=h+Math.imul(Ke,pr)|0,P=P+Math.imul(Ke,mr)|0,A=A+Math.imul(me,fr)|0,h=h+Math.imul(me,hr)|0,h=h+Math.imul(fe,fr)|0,P=P+Math.imul(fe,hr)|0;var L9=(T+A|0)+((h&8191)<<13)|0;T=(P+(h>>>13)|0)+(L9>>>26)|0,L9&=67108863,A=Math.imul(bt,rr),h=Math.imul(bt,ir),h=h+Math.imul(vt,rr)|0,P=Math.imul(vt,ir),A=A+Math.imul(ct,ar)|0,h=h+Math.imul(ct,nr)|0,h=h+Math.imul(yt,ar)|0,P=P+Math.imul(yt,nr)|0,A=A+Math.imul(dt,sr)|0,h=h+Math.imul(dt,or)|0,h=h+Math.imul(ut,sr)|0,P=P+Math.imul(ut,or)|0,A=A+Math.imul(lt,lr)|0,h=h+Math.imul(lt,dr)|0,h=h+Math.imul(tt,lr)|0,P=P+Math.imul(tt,dr)|0,A=A+Math.imul(ht,ur)|0,h=h+Math.imul(ht,cr)|0,h=h+Math.imul(gt,ur)|0,P=P+Math.imul(gt,cr)|0,A=A+Math.imul(ot,pr)|0,h=h+Math.imul(ot,mr)|0,h=h+Math.imul(ft,pr)|0,P=P+Math.imul(ft,mr)|0,A=A+Math.imul(Fe,fr)|0,h=h+Math.imul(Fe,hr)|0,h=h+Math.imul(Ke,fr)|0,P=P+Math.imul(Ke,hr)|0;var U9=(T+A|0)+((h&8191)<<13)|0;T=(P+(h>>>13)|0)+(U9>>>26)|0,U9&=67108863,A=Math.imul(bt,ar),h=Math.imul(bt,nr),h=h+Math.imul(vt,ar)|0,P=Math.imul(vt,nr),A=A+Math.imul(ct,sr)|0,h=h+Math.imul(ct,or)|0,h=h+Math.imul(yt,sr)|0,P=P+Math.imul(yt,or)|0,A=A+Math.imul(dt,lr)|0,h=h+Math.imul(dt,dr)|0,h=h+Math.imul(ut,lr)|0,P=P+Math.imul(ut,dr)|0,A=A+Math.imul(lt,ur)|0,h=h+Math.imul(lt,cr)|0,h=h+Math.imul(tt,ur)|0,P=P+Math.imul(tt,cr)|0,A=A+Math.imul(ht,pr)|0,h=h+Math.imul(ht,mr)|0,h=h+Math.imul(gt,pr)|0,P=P+Math.imul(gt,mr)|0,A=A+Math.imul(ot,fr)|0,h=h+Math.imul(ot,hr)|0,h=h+Math.imul(ft,fr)|0,P=P+Math.imul(ft,hr)|0;var j9=(T+A|0)+((h&8191)<<13)|0;T=(P+(h>>>13)|0)+(j9>>>26)|0,j9&=67108863,A=Math.imul(bt,sr),h=Math.imul(bt,or),h=h+Math.imul(vt,sr)|0,P=Math.imul(vt,or),A=A+Math.imul(ct,lr)|0,h=h+Math.imul(ct,dr)|0,h=h+Math.imul(yt,lr)|0,P=P+Math.imul(yt,dr)|0,A=A+Math.imul(dt,ur)|0,h=h+Math.imul(dt,cr)|0,h=h+Math.imul(ut,ur)|0,P=P+Math.imul(ut,cr)|0,A=A+Math.imul(lt,pr)|0,h=h+Math.imul(lt,mr)|0,h=h+Math.imul(tt,pr)|0,P=P+Math.imul(tt,mr)|0,A=A+Math.imul(ht,fr)|0,h=h+Math.imul(ht,hr)|0,h=h+Math.imul(gt,fr)|0,P=P+Math.imul(gt,hr)|0;var H9=(T+A|0)+((h&8191)<<13)|0;T=(P+(h>>>13)|0)+(H9>>>26)|0,H9&=67108863,A=Math.imul(bt,lr),h=Math.imul(bt,dr),h=h+Math.imul(vt,lr)|0,P=Math.imul(vt,dr),A=A+Math.imul(ct,ur)|0,h=h+Math.imul(ct,cr)|0,h=h+Math.imul(yt,ur)|0,P=P+Math.imul(yt,cr)|0,A=A+Math.imul(dt,pr)|0,h=h+Math.imul(dt,mr)|0,h=h+Math.imul(ut,pr)|0,P=P+Math.imul(ut,mr)|0,A=A+Math.imul(lt,fr)|0,h=h+Math.imul(lt,hr)|0,h=h+Math.imul(tt,fr)|0,P=P+Math.imul(tt,hr)|0;var $9=(T+A|0)+((h&8191)<<13)|0;T=(P+(h>>>13)|0)+($9>>>26)|0,$9&=67108863,A=Math.imul(bt,ur),h=Math.imul(bt,cr),h=h+Math.imul(vt,ur)|0,P=Math.imul(vt,cr),A=A+Math.imul(ct,pr)|0,h=h+Math.imul(ct,mr)|0,h=h+Math.imul(yt,pr)|0,P=P+Math.imul(yt,mr)|0,A=A+Math.imul(dt,fr)|0,h=h+Math.imul(dt,hr)|0,h=h+Math.imul(ut,fr)|0,P=P+Math.imul(ut,hr)|0;var G9=(T+A|0)+((h&8191)<<13)|0;T=(P+(h>>>13)|0)+(G9>>>26)|0,G9&=67108863,A=Math.imul(bt,pr),h=Math.imul(bt,mr),h=h+Math.imul(vt,pr)|0,P=Math.imul(vt,mr),A=A+Math.imul(ct,fr)|0,h=h+Math.imul(ct,hr)|0,h=h+Math.imul(yt,fr)|0,P=P+Math.imul(yt,hr)|0;var Z9=(T+A|0)+((h&8191)<<13)|0;T=(P+(h>>>13)|0)+(Z9>>>26)|0,Z9&=67108863,A=Math.imul(bt,fr),h=Math.imul(bt,hr),h=h+Math.imul(vt,fr)|0,P=Math.imul(vt,hr);var J9=(T+A|0)+((h&8191)<<13)|0;return T=(P+(h>>>13)|0)+(J9>>>26)|0,J9&=67108863,w[0]=D9,w[1]=R9,w[2]=B9,w[3]=C9,w[4]=O9,w[5]=N9,w[6]=q9,w[7]=W9,w[8]=V9,w[9]=F9,w[10]=K9,w[11]=L9,w[12]=U9,w[13]=j9,w[14]=H9,w[15]=$9,w[16]=G9,w[17]=Z9,w[18]=J9,T!==0&&(w[19]=T,y.length++),y},"comb10MulTo");Math.imul||(R=z);function F(M,m,g){g.negative=m.negative^M.negative,g.length=M.length+m.length;for(var y=0,S=0,b=0;b>>26)|0,S+=w>>>26,w&=67108863}g.words[b]=T,y=w,w=S}return y!==0?g.words[b]=y:g.length--,g._strip()}n(F,"bigMulTo");function B(M,m,g){return F(M,m,g)}n(B,"jumboMulTo"),a.prototype.mulTo=n(function(m,g){var y,S=this.length+m.length;return this.length===10&&m.length===10?y=R(this,m,g):S<63?y=z(this,m,g):S<1024?y=F(this,m,g):y=B(this,m,g),y},"mulTo");function C(M,m){this.x=M,this.y=m}n(C,"FFTM"),C.prototype.makeRBT=n(function(m){for(var g=new Array(m),y=a.prototype._countBits(m)-1,S=0;S>=1;return S},"revBin"),C.prototype.permute=n(function(m,g,y,S,b,w){for(var T=0;T>>1)b++;return 1<>>13,y[2*w+1]=b&8191,b=b>>>13;for(w=2*g;w>=26,y+=b/67108864|0,y+=w>>>26,this.words[S]=w&67108863}return y!==0&&(this.words[S]=y,this.length++),g?this.ineg():this},"imuln"),a.prototype.muln=n(function(m){return this.clone().imuln(m)},"muln"),a.prototype.sqr=n(function(){return this.mul(this)},"sqr"),a.prototype.isqr=n(function(){return this.imul(this.clone())},"isqr"),a.prototype.pow=n(function(m){var g=k(m);if(g.length===0)return new a(1);for(var y=this,S=0;S=0);var g=m%26,y=(m-g)/26,S=67108863>>>26-g<<26-g,b;if(g!==0){var w=0;for(b=0;b>>26-g}w&&(this.words[b]=w,this.length++)}if(y!==0){for(b=this.length-1;b>=0;b--)this.words[b+y]=this.words[b];for(b=0;b=0);var S;g?S=(g-g%26)/26:S=0;var b=m%26,w=Math.min((m-b)/26,this.length),T=67108863^67108863>>>b<w)for(this.length-=w,h=0;h=0&&(P!==0||h>=S);h--){var j=this.words[h]|0;this.words[h]=P<<26-b|j>>>b,P=j&T}return A&&P!==0&&(A.words[A.length++]=P),this.length===0&&(this.words[0]=0,this.length=1),this._strip()},"iushrn"),a.prototype.ishrn=n(function(m,g,y){return r(this.negative===0),this.iushrn(m,g,y)},"ishrn"),a.prototype.shln=n(function(m){return this.clone().ishln(m)},"shln"),a.prototype.ushln=n(function(m){return this.clone().iushln(m)},"ushln"),a.prototype.shrn=n(function(m){return this.clone().ishrn(m)},"shrn"),a.prototype.ushrn=n(function(m){return this.clone().iushrn(m)},"ushrn"),a.prototype.testn=n(function(m){r(typeof m=="number"&&m>=0);var g=m%26,y=(m-g)/26,S=1<=0);var g=m%26,y=(m-g)/26;if(r(this.negative===0,"imaskn works only with positive numbers"),this.length<=y)return this;if(g!==0&&y++,this.length=Math.min(y,this.length),g!==0){var S=67108863^67108863>>>g<=67108864;g++)this.words[g]-=67108864,g===this.length-1?this.words[g+1]=1:this.words[g+1]++;return this.length=Math.max(this.length,g+1),this},"_iaddn"),a.prototype.isubn=n(function(m){if(r(typeof m=="number"),r(m<67108864),m<0)return this.iaddn(-m);if(this.negative!==0)return this.negative=0,this.iaddn(m),this.negative=1,this;if(this.words[0]-=m,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var g=0;g>26)-(A/67108864|0),this.words[b+y]=w&67108863}for(;b>26,this.words[b+y]=w&67108863;if(T===0)return this._strip();for(r(T===-1),T=0,b=0;b>26,this.words[b]=w&67108863;return this.negative=1,this._strip()},"_ishlnsubmul"),a.prototype._wordDiv=n(function(m,g){var y=this.length-m.length,S=this.clone(),b=m,w=b.words[b.length-1]|0,T=this._countBits(w);y=26-T,y!==0&&(b=b.ushln(y),S.iushln(y),w=b.words[b.length-1]|0);var A=S.length-b.length,h;if(g!=="mod"){h=new a(null),h.length=A+1,h.words=new Array(h.length);for(var P=0;P=0;G--){var $=(S.words[b.length+G]|0)*67108864+(S.words[b.length+G-1]|0);for($=Math.min($/w|0,67108863),S._ishlnsubmul(b,$,G);S.negative!==0;)$--,S.negative=0,S._ishlnsubmul(b,1,G),S.isZero()||(S.negative^=1);h&&(h.words[G]=$)}return h&&h._strip(),S._strip(),g!=="div"&&y!==0&&S.iushrn(y),{div:h||null,mod:S}},"_wordDiv"),a.prototype.divmod=n(function(m,g,y){if(r(!m.isZero()),this.isZero())return{div:new a(0),mod:new a(0)};var S,b,w;return this.negative!==0&&m.negative===0?(w=this.neg().divmod(m,g),g!=="mod"&&(S=w.div.neg()),g!=="div"&&(b=w.mod.neg(),y&&b.negative!==0&&b.iadd(m)),{div:S,mod:b}):this.negative===0&&m.negative!==0?(w=this.divmod(m.neg(),g),g!=="mod"&&(S=w.div.neg()),{div:S,mod:w.mod}):this.negative&m.negative?(w=this.neg().divmod(m.neg(),g),g!=="div"&&(b=w.mod.neg(),y&&b.negative!==0&&b.isub(m)),{div:w.div,mod:b}):m.length>this.length||this.cmp(m)<0?{div:new a(0),mod:this}:m.length===1?g==="div"?{div:this.divn(m.words[0]),mod:null}:g==="mod"?{div:null,mod:new a(this.modrn(m.words[0]))}:{div:this.divn(m.words[0]),mod:new a(this.modrn(m.words[0]))}:this._wordDiv(m,g)},"divmod"),a.prototype.div=n(function(m){return this.divmod(m,"div",!1).div},"div"),a.prototype.mod=n(function(m){return this.divmod(m,"mod",!1).mod},"mod"),a.prototype.umod=n(function(m){return this.divmod(m,"mod",!0).mod},"umod"),a.prototype.divRound=n(function(m){var g=this.divmod(m);if(g.mod.isZero())return g.div;var y=g.div.negative!==0?g.mod.isub(m):g.mod,S=m.ushrn(1),b=m.andln(1),w=y.cmp(S);return w<0||b===1&&w===0?g.div:g.div.negative!==0?g.div.isubn(1):g.div.iaddn(1)},"divRound"),a.prototype.modrn=n(function(m){var g=m<0;g&&(m=-m),r(m<=67108863);for(var y=(1<<26)%m,S=0,b=this.length-1;b>=0;b--)S=(y*S+(this.words[b]|0))%m;return g?-S:S},"modrn"),a.prototype.modn=n(function(m){return this.modrn(m)},"modn"),a.prototype.idivn=n(function(m){var g=m<0;g&&(m=-m),r(m<=67108863);for(var y=0,S=this.length-1;S>=0;S--){var b=(this.words[S]|0)+y*67108864;this.words[S]=b/m|0,y=b%m}return this._strip(),g?this.ineg():this},"idivn"),a.prototype.divn=n(function(m){return this.clone().idivn(m)},"divn"),a.prototype.egcd=n(function(m){r(m.negative===0),r(!m.isZero());var g=this,y=m.clone();g.negative!==0?g=g.umod(m):g=g.clone();for(var S=new a(1),b=new a(0),w=new a(0),T=new a(1),A=0;g.isEven()&&y.isEven();)g.iushrn(1),y.iushrn(1),++A;for(var h=y.clone(),P=g.clone();!g.isZero();){for(var j=0,G=1;!(g.words[0]&G)&&j<26;++j,G<<=1);if(j>0)for(g.iushrn(j);j-- >0;)(S.isOdd()||b.isOdd())&&(S.iadd(h),b.isub(P)),S.iushrn(1),b.iushrn(1);for(var $=0,Y=1;!(y.words[0]&Y)&&$<26;++$,Y<<=1);if($>0)for(y.iushrn($);$-- >0;)(w.isOdd()||T.isOdd())&&(w.iadd(h),T.isub(P)),w.iushrn(1),T.iushrn(1);g.cmp(y)>=0?(g.isub(y),S.isub(w),b.isub(T)):(y.isub(g),w.isub(S),T.isub(b))}return{a:w,b:T,gcd:y.iushln(A)}},"egcd"),a.prototype._invmp=n(function(m){r(m.negative===0),r(!m.isZero());var g=this,y=m.clone();g.negative!==0?g=g.umod(m):g=g.clone();for(var S=new a(1),b=new a(0),w=y.clone();g.cmpn(1)>0&&y.cmpn(1)>0;){for(var T=0,A=1;!(g.words[0]&A)&&T<26;++T,A<<=1);if(T>0)for(g.iushrn(T);T-- >0;)S.isOdd()&&S.iadd(w),S.iushrn(1);for(var h=0,P=1;!(y.words[0]&P)&&h<26;++h,P<<=1);if(h>0)for(y.iushrn(h);h-- >0;)b.isOdd()&&b.iadd(w),b.iushrn(1);g.cmp(y)>=0?(g.isub(y),S.isub(b)):(y.isub(g),b.isub(S))}var j;return g.cmpn(1)===0?j=S:j=b,j.cmpn(0)<0&&j.iadd(m),j},"_invmp"),a.prototype.gcd=n(function(m){if(this.isZero())return m.abs();if(m.isZero())return this.abs();var g=this.clone(),y=m.clone();g.negative=0,y.negative=0;for(var S=0;g.isEven()&&y.isEven();S++)g.iushrn(1),y.iushrn(1);do{for(;g.isEven();)g.iushrn(1);for(;y.isEven();)y.iushrn(1);var b=g.cmp(y);if(b<0){var w=g;g=y,y=w}else if(b===0||y.cmpn(1)===0)break;g.isub(y)}while(!0);return y.iushln(S)},"gcd"),a.prototype.invm=n(function(m){return this.egcd(m).a.umod(m)},"invm"),a.prototype.isEven=n(function(){return(this.words[0]&1)===0},"isEven"),a.prototype.isOdd=n(function(){return(this.words[0]&1)===1},"isOdd"),a.prototype.andln=n(function(m){return this.words[0]&m},"andln"),a.prototype.bincn=n(function(m){r(typeof m=="number");var g=m%26,y=(m-g)/26,S=1<>>26,T&=67108863,this.words[w]=T}return b!==0&&(this.words[w]=b,this.length++),this},"bincn"),a.prototype.isZero=n(function(){return this.length===1&&this.words[0]===0},"isZero"),a.prototype.cmpn=n(function(m){var g=m<0;if(this.negative!==0&&!g)return-1;if(this.negative===0&&g)return 1;this._strip();var y;if(this.length>1)y=1;else{g&&(m=-m),r(m<=67108863,"Number is too big");var S=this.words[0]|0;y=S===m?0:Sm.length)return 1;if(this.length=0;y--){var S=this.words[y]|0,b=m.words[y]|0;if(S!==b){Sb&&(g=1);break}}return g},"ucmp"),a.prototype.gtn=n(function(m){return this.cmpn(m)===1},"gtn"),a.prototype.gt=n(function(m){return this.cmp(m)===1},"gt"),a.prototype.gten=n(function(m){return this.cmpn(m)>=0},"gten"),a.prototype.gte=n(function(m){return this.cmp(m)>=0},"gte"),a.prototype.ltn=n(function(m){return this.cmpn(m)===-1},"ltn"),a.prototype.lt=n(function(m){return this.cmp(m)===-1},"lt"),a.prototype.lten=n(function(m){return this.cmpn(m)<=0},"lten"),a.prototype.lte=n(function(m){return this.cmp(m)<=0},"lte"),a.prototype.eqn=n(function(m){return this.cmpn(m)===0},"eqn"),a.prototype.eq=n(function(m){return this.cmp(m)===0},"eq"),a.red=n(function(m){return new Q(m)},"red"),a.prototype.toRed=n(function(m){return r(!this.red,"Already a number in reduction context"),r(this.negative===0,"red works only with positives"),m.convertTo(this)._forceRed(m)},"toRed"),a.prototype.fromRed=n(function(){return r(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},"fromRed"),a.prototype._forceRed=n(function(m){return this.red=m,this},"_forceRed"),a.prototype.forceRed=n(function(m){return r(!this.red,"Already a number in reduction context"),this._forceRed(m)},"forceRed"),a.prototype.redAdd=n(function(m){return r(this.red,"redAdd works only with red numbers"),this.red.add(this,m)},"redAdd"),a.prototype.redIAdd=n(function(m){return r(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,m)},"redIAdd"),a.prototype.redSub=n(function(m){return r(this.red,"redSub works only with red numbers"),this.red.sub(this,m)},"redSub"),a.prototype.redISub=n(function(m){return r(this.red,"redISub works only with red numbers"),this.red.isub(this,m)},"redISub"),a.prototype.redShl=n(function(m){return r(this.red,"redShl works only with red numbers"),this.red.shl(this,m)},"redShl"),a.prototype.redMul=n(function(m){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,m),this.red.mul(this,m)},"redMul"),a.prototype.redIMul=n(function(m){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,m),this.red.imul(this,m)},"redIMul"),a.prototype.redSqr=n(function(){return r(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},"redSqr"),a.prototype.redISqr=n(function(){return r(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},"redISqr"),a.prototype.redSqrt=n(function(){return r(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},"redSqrt"),a.prototype.redInvm=n(function(){return r(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},"redInvm"),a.prototype.redNeg=n(function(){return r(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},"redNeg"),a.prototype.redPow=n(function(m){return r(this.red&&!m.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,m)},"redPow");var W={k256:null,p224:null,p192:null,p25519:null};function L(M,m){this.name=M,this.p=new a(m,16),this.n=this.p.bitLength(),this.k=new a(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}n(L,"MPrime"),L.prototype._tmp=n(function(){var m=new a(null);return m.words=new Array(Math.ceil(this.n/13)),m},"_tmp"),L.prototype.ireduce=n(function(m){var g=m,y;do this.split(g,this.tmp),g=this.imulK(g),g=g.iadd(this.tmp),y=g.bitLength();while(y>this.n);var S=y0?g.isub(this.p):g.strip!==void 0?g.strip():g._strip(),g},"ireduce"),L.prototype.split=n(function(m,g){m.iushrn(this.n,0,g)},"split"),L.prototype.imulK=n(function(m){return m.imul(this.k)},"imulK");function H(){L.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}n(H,"K256"),i(H,L),H.prototype.split=n(function(m,g){for(var y=4194303,S=Math.min(m.length,9),b=0;b>>22,w=T}w>>>=22,m.words[b-10]=w,w===0&&m.length>10?m.length-=10:m.length-=9},"split"),H.prototype.imulK=n(function(m){m.words[m.length]=0,m.words[m.length+1]=0,m.length+=2;for(var g=0,y=0;y>>=26,m.words[y]=b,g=S}return g!==0&&(m.words[m.length++]=g),m},"imulK"),a._prime=n(function(m){if(W[m])return W[m];var g;if(m==="k256")g=new H;else if(m==="p224")g=new Z;else if(m==="p192")g=new se;else if(m==="p25519")g=new le;else throw new Error("Unknown prime "+m);return W[m]=g,g},"prime");function Q(M){if(typeof M=="string"){var m=a._prime(M);this.m=m.p,this.prime=m}else r(M.gtn(1),"modulus must be greater than 1"),this.m=M,this.prime=null}n(Q,"Red"),Q.prototype._verify1=n(function(m){r(m.negative===0,"red works only with positives"),r(m.red,"red works only with red numbers")},"_verify1"),Q.prototype._verify2=n(function(m,g){r((m.negative|g.negative)===0,"red works only with positives"),r(m.red&&m.red===g.red,"red works only with red numbers")},"_verify2"),Q.prototype.imod=n(function(m){return this.prime?this.prime.ireduce(m)._forceRed(this):(u(m,m.umod(this.m)._forceRed(this)),m)},"imod"),Q.prototype.neg=n(function(m){return m.isZero()?m.clone():this.m.sub(m)._forceRed(this)},"neg"),Q.prototype.add=n(function(m,g){this._verify2(m,g);var y=m.add(g);return y.cmp(this.m)>=0&&y.isub(this.m),y._forceRed(this)},"add"),Q.prototype.iadd=n(function(m,g){this._verify2(m,g);var y=m.iadd(g);return y.cmp(this.m)>=0&&y.isub(this.m),y},"iadd"),Q.prototype.sub=n(function(m,g){this._verify2(m,g);var y=m.sub(g);return y.cmpn(0)<0&&y.iadd(this.m),y._forceRed(this)},"sub"),Q.prototype.isub=n(function(m,g){this._verify2(m,g);var y=m.isub(g);return y.cmpn(0)<0&&y.iadd(this.m),y},"isub"),Q.prototype.shl=n(function(m,g){return this._verify1(m),this.imod(m.ushln(g))},"shl"),Q.prototype.imul=n(function(m,g){return this._verify2(m,g),this.imod(m.imul(g))},"imul"),Q.prototype.mul=n(function(m,g){return this._verify2(m,g),this.imod(m.mul(g))},"mul"),Q.prototype.isqr=n(function(m){return this.imul(m,m.clone())},"isqr"),Q.prototype.sqr=n(function(m){return this.mul(m,m)},"sqr"),Q.prototype.sqrt=n(function(m){if(m.isZero())return m.clone();var g=this.m.andln(3);if(r(g%2===1),g===3){var y=this.m.add(new a(1)).iushrn(2);return this.pow(m,y)}for(var S=this.m.subn(1),b=0;!S.isZero()&&S.andln(1)===0;)b++,S.iushrn(1);r(!S.isZero());var w=new a(1).toRed(this),T=w.redNeg(),A=this.m.subn(1).iushrn(1),h=this.m.bitLength();for(h=new a(2*h*h).toRed(this);this.pow(h,A).cmp(T)!==0;)h.redIAdd(T);for(var P=this.pow(h,S),j=this.pow(m,S.addn(1).iushrn(1)),G=this.pow(m,S),$=b;G.cmp(w)!==0;){for(var Y=G,oe=0;Y.cmp(w)!==0;oe++)Y=Y.redSqr();r(oe<$);var de=this.pow(P,new a(1).iushln($-oe-1));j=j.redMul(de),P=de.redSqr(),G=G.redMul(P),$=oe}return j},"sqrt"),Q.prototype.invm=n(function(m){var g=m._invmp(this.m);return g.negative!==0?(g.negative=0,this.imod(g).redNeg()):this.imod(g)},"invm"),Q.prototype.pow=n(function(m,g){if(g.isZero())return new a(1).toRed(this);if(g.cmpn(1)===0)return m.clone();var y=4,S=new Array(1<=0;b--){for(var P=g.words[b],j=h-1;j>=0;j--){var G=P>>j&1;if(w!==S[0]&&(w=this.sqr(w)),G===0&&T===0){A=0;continue}T<<=1,T|=G,A++,!(A!==y&&(b!==0||j!==0))&&(w=this.mul(w,S[T]),A=0,T=0)}h=26}return w},"pow"),Q.prototype.convertTo=n(function(m){var g=m.umod(this.m);return g===m?g.clone():g},"convertTo"),Q.prototype.convertFrom=n(function(m){var g=m.clone();return g.red=null,g},"convertFrom"),a.mont=n(function(m){return new pe(m)},"mont");function pe(M){Q.call(this,M),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new a(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}n(pe,"Mont"),i(pe,Q),pe.prototype.convertTo=n(function(m){return this.imod(m.ushln(this.shift))},"convertTo"),pe.prototype.convertFrom=n(function(m){var g=this.imod(m.mul(this.rinv));return g.red=null,g},"convertFrom"),pe.prototype.imul=n(function(m,g){if(m.isZero()||g.isZero())return m.words[0]=0,m.length=1,m;var y=m.imul(g),S=y.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),b=y.isub(S).iushrn(this.shift),w=b;return b.cmp(this.m)>=0?w=b.isub(this.m):b.cmpn(0)<0&&(w=b.iadd(this.m)),w._forceRed(this)},"imul"),pe.prototype.mul=n(function(m,g){if(m.isZero()||g.isZero())return new a(0)._forceRed(this);var y=m.mul(g),S=y.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),b=y.isub(S).iushrn(this.shift),w=b;return b.cmp(this.m)>=0?w=b.isub(this.m):b.cmpn(0)<0&&(w=b.iadd(this.m)),w._forceRed(this)},"mul"),pe.prototype.invm=n(function(m){var g=this.imod(m._invmp(this.m).mul(this.r2));return g._forceRed(this)},"invm")})(typeof zy>"u"||zy,VE)});var LE=v((My,KE)=>{var O4=require("buffer"),$a=O4.Buffer;function FE(t,e){for(var r in t)e[r]=t[r]}n(FE,"copyProps");$a.from&&$a.alloc&&$a.allocUnsafe&&$a.allocUnsafeSlow?KE.exports=O4:(FE(O4,My),My.Buffer=el);function el(t,e,r){return $a(t,e,r)}n(el,"SafeBuffer");el.prototype=Object.create($a.prototype);FE($a,el);el.from=function(t,e,r){if(typeof t=="number")throw new TypeError("Argument must not be a number");return $a(t,e,r)};el.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError("Argument must be a number");var i=$a(t);return e!==void 0?typeof r=="string"?i.fill(e,r):i.fill(e):i.fill(0),i};el.allocUnsafe=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return $a(t)};el.allocUnsafeSlow=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return O4.SlowBuffer(t)}});var jE=v((Z4e,UE)=>{"use strict";var N4=LE().Buffer;function OH(t){if(t.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Array(256),r=0;r>>0,B=new Uint8Array(F);z!==R;){for(var C=E[z],W=0,L=F-1;(C!==0||W>>0,B[L]=C%o>>>0,C=C/o>>>0;if(C!==0)throw new Error("Non-zero carry");k=W,z++}for(var H=F-k;H!==F&&B[H]===0;)H++;for(var Z=l.repeat(I);H>>0,F=new Uint8Array(R);E[I];){var B=e[E.charCodeAt(I)];if(B===255)return;for(var C=0,W=R-1;(B!==0||C>>0,F[W]=B%256>>>0,B=B/256>>>0;if(B!==0)throw new Error("Non-zero carry");z=C,I++}for(var L=R-z;L!==R&&F[L]===0;)L++;var H=N4.allocUnsafe(k+(R-L));H.fill(0,0,k);for(var Z=k;L!==R;)H[Z++]=F[L++];return H}n(p,"decodeUnsafe");function x(E){var I=p(E);if(I)return I;throw new Error("Non-base"+o+" character")}return n(x,"decode"),{encode:c,decodeUnsafe:p,decode:x}}n(OH,"base");UE.exports=OH});var Dy=v((Y4e,HE)=>{var NH=jE(),qH="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";HE.exports=NH(qH)});var By=v(x1=>{"use strict";Object.defineProperty(x1,"__esModule",{value:!0});x1.sha224=x1.sha256=void 0;var WH=ay(),$i=_n(),VH=n((t,e,r)=>t&e^~t&r,"Chi"),FH=n((t,e,r)=>t&e^t&r^e&r,"Maj"),KH=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Ps=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Ts=new Uint32Array(64),q4=class extends WH.SHA2{static{n(this,"SHA256")}constructor(){super(64,32,8,!1),this.A=Ps[0]|0,this.B=Ps[1]|0,this.C=Ps[2]|0,this.D=Ps[3]|0,this.E=Ps[4]|0,this.F=Ps[5]|0,this.G=Ps[6]|0,this.H=Ps[7]|0}get(){let{A:e,B:r,C:i,D:a,E:s,F:o,G:l,H:d}=this;return[e,r,i,a,s,o,l,d]}set(e,r,i,a,s,o,l,d){this.A=e|0,this.B=r|0,this.C=i|0,this.D=a|0,this.E=s|0,this.F=o|0,this.G=l|0,this.H=d|0}process(e,r){for(let p=0;p<16;p++,r+=4)Ts[p]=e.getUint32(r,!1);for(let p=16;p<64;p++){let x=Ts[p-15],E=Ts[p-2],I=(0,$i.rotr)(x,7)^(0,$i.rotr)(x,18)^x>>>3,k=(0,$i.rotr)(E,17)^(0,$i.rotr)(E,19)^E>>>10;Ts[p]=k+Ts[p-7]+I+Ts[p-16]|0}let{A:i,B:a,C:s,D:o,E:l,F:d,G:u,H:c}=this;for(let p=0;p<64;p++){let x=(0,$i.rotr)(l,6)^(0,$i.rotr)(l,11)^(0,$i.rotr)(l,25),E=c+x+VH(l,d,u)+KH[p]+Ts[p]|0,k=((0,$i.rotr)(i,2)^(0,$i.rotr)(i,13)^(0,$i.rotr)(i,22))+FH(i,a,s)|0;c=u,u=d,d=l,l=o+E|0,o=s,s=a,a=i,i=E+k|0}i=i+this.A|0,a=a+this.B|0,s=s+this.C|0,o=o+this.D|0,l=l+this.E|0,d=d+this.F|0,u=u+this.G|0,c=c+this.H|0,this.set(i,a,s,o,l,d,u,c)}roundClean(){Ts.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}},Ry=class extends q4{static{n(this,"SHA224")}constructor(){super(),this.A=-1056596264,this.B=914150663,this.C=812702999,this.D=-150054599,this.E=-4191439,this.F=1750603025,this.G=1694076839,this.H=-1090891868,this.outputLen=28}};x1.sha256=(0,$i.wrapConstructor)(()=>new q4);x1.sha224=(0,$i.wrapConstructor)(()=>new Ry)});var $E=v(Ny=>{"use strict";function En(t,e,r){return e<=t&&t<=r}n(En,"inRange");function L4(t){if(t===void 0)return{};if(t===Object(t))return t;throw TypeError("Could not convert argument to dictionary")}n(L4,"ToDictionary");function LH(t){for(var e=String(t),r=e.length,i=0,a=[];i57343)a.push(s);else if(56320<=s&&s<=57343)a.push(65533);else if(55296<=s&&s<=56319)if(i===r-1)a.push(65533);else{var o=t.charCodeAt(i+1);if(56320<=o&&o<=57343){var l=s&1023,d=o&1023;a.push(65536+(l<<10)+d),i+=1}else a.push(65533)}i+=1}return a}n(LH,"stringToCodePoints");function UH(t){for(var e="",r=0;r>10)+55296,(i&1023)+56320))}return e}n(UH,"codePointsToString");var W4=-1;function Oy(t){this.tokens=[].slice.call(t)}n(Oy,"Stream");Oy.prototype={endOfStream:function(){return!this.tokens.length},read:function(){return this.tokens.length?this.tokens.shift():W4},prepend:function(t){if(Array.isArray(t))for(var e=t;e.length;)this.tokens.unshift(e.pop());else this.tokens.unshift(t)},push:function(t){if(Array.isArray(t))for(var e=t;e.length;)this.tokens.push(e.shift());else this.tokens.push(t)}};var A1=-1;function Cy(t,e){if(t)throw TypeError("Decoder error");return e||65533}n(Cy,"decoderError");var V4="utf-8";function F4(t,e){if(!(this instanceof F4))return new F4(t,e);if(t=t!==void 0?String(t).toLowerCase():V4,t!==V4)throw new Error("Encoding not supported. Only utf-8 is supported");e=L4(e),this._streaming=!1,this._BOMseen=!1,this._decoder=null,this._fatal=!!e.fatal,this._ignoreBOM=!!e.ignoreBOM,Object.defineProperty(this,"encoding",{value:"utf-8"}),Object.defineProperty(this,"fatal",{value:this._fatal}),Object.defineProperty(this,"ignoreBOM",{value:this._ignoreBOM})}n(F4,"TextDecoder");F4.prototype={decode:n(function(e,r){var i;typeof e=="object"&&e instanceof ArrayBuffer?i=new Uint8Array(e):typeof e=="object"&&"buffer"in e&&e.buffer instanceof ArrayBuffer?i=new Uint8Array(e.buffer,e.byteOffset,e.byteLength):i=new Uint8Array(0),r=L4(r),this._streaming||(this._decoder=new jH({fatal:this._fatal}),this._BOMseen=!1),this._streaming=!!r.stream;for(var a=new Oy(i),s=[],o;!a.endOfStream()&&(o=this._decoder.handler(a,a.read()),o!==A1);)o!==null&&(Array.isArray(o)?s.push.apply(s,o):s.push(o));if(!this._streaming){do{if(o=this._decoder.handler(a,a.read()),o===A1)break;o!==null&&(Array.isArray(o)?s.push.apply(s,o):s.push(o))}while(!a.endOfStream());this._decoder=null}return s.length&&["utf-8"].indexOf(this.encoding)!==-1&&!this._ignoreBOM&&!this._BOMseen&&(s[0]===65279?(this._BOMseen=!0,s.shift()):this._BOMseen=!0),UH(s)},"decode")};function K4(t,e){if(!(this instanceof K4))return new K4(t,e);if(t=t!==void 0?String(t).toLowerCase():V4,t!==V4)throw new Error("Encoding not supported. Only utf-8 is supported");e=L4(e),this._streaming=!1,this._encoder=null,this._options={fatal:!!e.fatal},Object.defineProperty(this,"encoding",{value:"utf-8"})}n(K4,"TextEncoder");K4.prototype={encode:n(function(e,r){e=e?String(e):"",r=L4(r),this._streaming||(this._encoder=new HH(this._options)),this._streaming=!!r.stream;for(var i=[],a=new Oy(LH(e)),s;!a.endOfStream()&&(s=this._encoder.handler(a,a.read()),s!==A1);)Array.isArray(s)?i.push.apply(i,s):i.push(s);if(!this._streaming){for(;s=this._encoder.handler(a,a.read()),s!==A1;)Array.isArray(s)?i.push.apply(i,s):i.push(s);this._encoder=null}return new Uint8Array(i)},"encode")};function jH(t){var e=t.fatal,r=0,i=0,a=0,s=128,o=191;this.handler=function(l,d){if(d===W4&&a!==0)return a=0,Cy(e);if(d===W4)return A1;if(a===0){if(En(d,0,127))return d;if(En(d,194,223))a=1,r=d-192;else if(En(d,224,239))d===224&&(s=160),d===237&&(o=159),a=2,r=d-224;else if(En(d,240,244))d===240&&(s=144),d===244&&(o=143),a=3,r=d-240;else return Cy(e);return r=r<<6*a,null}if(!En(d,s,o))return r=a=i=0,s=128,o=191,l.prepend(d),Cy(e);if(s=128,o=191,i+=1,r+=d-128<<6*(a-i),i!==a)return null;var u=r;return r=a=i=0,u}}n(jH,"UTF8Decoder");function HH(t){var e=t.fatal;this.handler=function(r,i){if(i===W4)return A1;if(En(i,0,127))return i;var a,s;En(i,128,2047)?(a=1,s=192):En(i,2048,65535)?(a=2,s=224):En(i,65536,1114111)&&(a=3,s=240);for(var o=[(i>>6*a)+s];a>0;){var l=i>>6*(a-1);o.push(128|l&63),a-=1}return o}}n(HH,"UTF8Encoder");Ny.TextEncoder=K4;Ny.TextDecoder=F4});var QE=v(rt=>{"use strict";var $H=rt&&rt.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),GH=rt&&rt.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Ga=rt&&rt.__decorate||function(t,e,r,i){var a=arguments.length,s=a<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,r):i,o;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(t,e,r,i);else for(var l=t.length-1;l>=0;l--)(o=t[l])&&(s=(a<3?o(s):a>3?o(e,r,s):o(e,r))||s);return a>3&&s&&Object.defineProperty(e,r,s),s},ZH=rt&&rt.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.hasOwnProperty.call(t,r)&&$H(e,t,r);return GH(e,t),e},GE=rt&&rt.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(rt,"__esModule",{value:!0});rt.deserializeUnchecked=rt.deserialize=rt.serialize=rt.BinaryReader=rt.BinaryWriter=rt.BorshError=rt.baseDecode=rt.baseEncode=void 0;var zs=GE(Iy()),ZE=GE(Dy()),JH=ZH($E()),YH=typeof TextDecoder!="function"?JH.TextDecoder:TextDecoder,QH=new YH("utf-8",{fatal:!0});function XH(t){return typeof t=="string"&&(t=Buffer.from(t,"utf8")),ZE.default.encode(Buffer.from(t))}n(XH,"baseEncode");rt.baseEncode=XH;function e$(t){return Buffer.from(ZE.default.decode(t))}n(e$,"baseDecode");rt.baseDecode=e$;var qy=1024,Lr=class extends Error{static{n(this,"BorshError")}constructor(e){super(e),this.fieldPath=[],this.originalMessage=e}addToFieldPath(e){this.fieldPath.splice(0,0,e),this.message=this.originalMessage+": "+this.fieldPath.join(".")}};rt.BorshError=Lr;var U4=class{static{n(this,"BinaryWriter")}constructor(){this.buf=Buffer.alloc(qy),this.length=0}maybeResize(){this.buf.length<16+this.length&&(this.buf=Buffer.concat([this.buf,Buffer.alloc(qy)]))}writeU8(e){this.maybeResize(),this.buf.writeUInt8(e,this.length),this.length+=1}writeU16(e){this.maybeResize(),this.buf.writeUInt16LE(e,this.length),this.length+=2}writeU32(e){this.maybeResize(),this.buf.writeUInt32LE(e,this.length),this.length+=4}writeU64(e){this.maybeResize(),this.writeBuffer(Buffer.from(new zs.default(e).toArray("le",8)))}writeU128(e){this.maybeResize(),this.writeBuffer(Buffer.from(new zs.default(e).toArray("le",16)))}writeU256(e){this.maybeResize(),this.writeBuffer(Buffer.from(new zs.default(e).toArray("le",32)))}writeU512(e){this.maybeResize(),this.writeBuffer(Buffer.from(new zs.default(e).toArray("le",64)))}writeBuffer(e){this.buf=Buffer.concat([Buffer.from(this.buf.subarray(0,this.length)),e,Buffer.alloc(qy)]),this.length+=e.length}writeString(e){this.maybeResize();let r=Buffer.from(e,"utf8");this.writeU32(r.length),this.writeBuffer(r)}writeFixedArray(e){this.writeBuffer(Buffer.from(e))}writeArray(e,r){this.maybeResize(),this.writeU32(e.length);for(let i of e)this.maybeResize(),r(i)}toArray(){return this.buf.subarray(0,this.length)}};rt.BinaryWriter=U4;function Za(t,e,r){let i=r.value;r.value=function(...a){try{return i.apply(this,a)}catch(s){if(s instanceof RangeError){let o=s.code;if(["ERR_BUFFER_OUT_OF_BOUNDS","ERR_OUT_OF_RANGE"].indexOf(o)>=0)throw new Lr("Reached the end of buffer when deserializing")}throw s}}}n(Za,"handlingRangeError");var hi=class{static{n(this,"BinaryReader")}constructor(e){this.buf=e,this.offset=0}readU8(){let e=this.buf.readUInt8(this.offset);return this.offset+=1,e}readU16(){let e=this.buf.readUInt16LE(this.offset);return this.offset+=2,e}readU32(){let e=this.buf.readUInt32LE(this.offset);return this.offset+=4,e}readU64(){let e=this.readBuffer(8);return new zs.default(e,"le")}readU128(){let e=this.readBuffer(16);return new zs.default(e,"le")}readU256(){let e=this.readBuffer(32);return new zs.default(e,"le")}readU512(){let e=this.readBuffer(64);return new zs.default(e,"le")}readBuffer(e){if(this.offset+e>this.buf.length)throw new Lr(`Expected buffer length ${e} isn't within bounds`);let r=this.buf.slice(this.offset,this.offset+e);return this.offset+=e,r}readString(){let e=this.readU32(),r=this.readBuffer(e);try{return QH.decode(r)}catch(i){throw new Lr(`Error decoding UTF-8 string: ${i}`)}}readFixedArray(e){return new Uint8Array(this.readBuffer(e))}readArray(e){let r=this.readU32(),i=Array();for(let a=0;a{tl(t,e,s,i[0],a)});else if(i.kind!==void 0)switch(i.kind){case"option":{r==null?a.writeU8(0):(a.writeU8(1),tl(t,e,r,i.type,a));break}case"map":{a.writeU32(r.size),r.forEach((s,o)=>{tl(t,e,o,i.key,a),tl(t,e,s,i.value,a)});break}default:throw new Lr(`FieldType ${i} unrecognized`)}else YE(t,r,a)}catch(s){throw s instanceof Lr&&s.addToFieldPath(e),s}}n(tl,"serializeField");function YE(t,e,r){if(typeof e.borshSerialize=="function"){e.borshSerialize(r);return}let i=t.get(e.constructor);if(!i)throw new Lr(`Class ${e.constructor.name} is missing in schema`);if(i.kind==="struct")i.fields.map(([a,s])=>{tl(t,a,e[a],s,r)});else if(i.kind==="enum"){let a=e[i.field];for(let s=0;srl(t,e,r[0],i))}if(r.kind==="option")return i.readU8()?rl(t,e,r.type,i):void 0;if(r.kind==="map"){let a=new Map,s=i.readU32();for(let o=0;o=i.values.length)throw new Lr(`Enum index: ${a} is out of range`);let[s,o]=i.values[a],l=rl(t,s,o,r);return new e({[s]:l})}throw new Lr(`Unexpected schema kind: ${i.kind} for ${e.constructor.name}`)}n(Wy,"deserializeStruct");function r$(t,e,r,i=hi){let a=new i(r),s=Wy(t,e,a);if(a.offset{"use strict";Object.defineProperty(U,"__esModule",{value:!0});U.s16=U.s8=U.nu64be=U.u48be=U.u40be=U.u32be=U.u24be=U.u16be=U.nu64=U.u48=U.u40=U.u32=U.u24=U.u16=U.u8=U.offset=U.greedy=U.Constant=U.UTF8=U.CString=U.Blob=U.Boolean=U.BitField=U.BitStructure=U.VariantLayout=U.Union=U.UnionLayoutDiscriminator=U.UnionDiscriminator=U.Structure=U.Sequence=U.DoubleBE=U.Double=U.FloatBE=U.Float=U.NearInt64BE=U.NearInt64=U.NearUInt64BE=U.NearUInt64=U.IntBE=U.Int=U.UIntBE=U.UInt=U.OffsetLayout=U.GreedyCount=U.ExternalLayout=U.bindConstructorLayout=U.nameWithProperty=U.Layout=U.uint8ArrayToBuffer=U.checkUint8Array=void 0;U.constant=U.utf8=U.cstr=U.blob=U.unionLayoutDiscriminator=U.union=U.seq=U.bits=U.struct=U.f64be=U.f64=U.f32be=U.f32=U.ns64be=U.s48be=U.s40be=U.s32be=U.s24be=U.s16be=U.ns64=U.s48=U.s40=U.s32=U.s24=void 0;var Fy=require("buffer");function E1(t){if(!(t instanceof Uint8Array))throw new TypeError("b must be a Uint8Array")}n(E1,"checkUint8Array");U.checkUint8Array=E1;function je(t){return E1(t),Fy.Buffer.from(t.buffer,t.byteOffset,t.length)}n(je,"uint8ArrayToBuffer");U.uint8ArrayToBuffer=je;var $e=class{static{n(this,"Layout")}constructor(e,r){if(!Number.isInteger(e))throw new TypeError("span must be an integer");this.span=e,this.property=r}makeDestinationObject(){return{}}getSpan(e,r){if(0>this.span)throw new RangeError("indeterminate span");return this.span}replicate(e){let r=Object.create(this.constructor.prototype);return Object.assign(r,this),r.property=e,r}fromArray(e){}};U.Layout=$e;function Ky(t,e){return e.property?t+"["+e.property+"]":t}n(Ky,"nameWithProperty");U.nameWithProperty=Ky;function a$(t,e){if(typeof t!="function")throw new TypeError("Class must be constructor");if(Object.prototype.hasOwnProperty.call(t,"layout_"))throw new Error("Class is already bound to a layout");if(!(e&&e instanceof $e))throw new TypeError("layout must be a Layout");if(Object.prototype.hasOwnProperty.call(e,"boundConstructor_"))throw new Error("layout is already bound to a constructor");t.layout_=e,e.boundConstructor_=t,e.makeDestinationObject=()=>new t,Object.defineProperty(t.prototype,"encode",{value(r,i){return e.encode(this,r,i)},writable:!0}),Object.defineProperty(t,"decode",{value(r,i){return e.decode(r,i)},writable:!0})}n(a$,"bindConstructorLayout");U.bindConstructorLayout=a$;var ei=class extends $e{static{n(this,"ExternalLayout")}isCount(){throw new Error("ExternalLayout is abstract")}};U.ExternalLayout=ei;var j4=class extends ei{static{n(this,"GreedyCount")}constructor(e=1,r){if(!Number.isInteger(e)||0>=e)throw new TypeError("elementSpan must be a (positive) integer");super(-1,r),this.elementSpan=e}isCount(){return!0}decode(e,r=0){E1(e);let i=e.length-r;return Math.floor(i/this.elementSpan)}encode(e,r,i){return 0}};U.GreedyCount=j4;var Np=class extends ei{static{n(this,"OffsetLayout")}constructor(e,r=0,i){if(!(e instanceof $e))throw new TypeError("layout must be a Layout");if(!Number.isInteger(r))throw new TypeError("offset must be integer or undefined");super(e.span,i||e.property),this.layout=e,this.offset=r}isCount(){return this.layout instanceof Si||this.layout instanceof Bi}decode(e,r=0){return this.layout.decode(e,r+this.offset)}encode(e,r,i=0){return this.layout.encode(e,r,i+this.offset)}};U.OffsetLayout=Np;var Si=class extends $e{static{n(this,"UInt")}constructor(e,r){if(super(e,r),6o+a.encode(l,r,i+o),0);return this.count instanceof ei&&this.count.encode(e.length,r,i),s}};U.Sequence=e8;var t8=class extends $e{static{n(this,"Structure")}constructor(e,r,i){if(!(Array.isArray(e)&&e.reduce((s,o)=>s&&o instanceof $e,!0)))throw new TypeError("fields must be array of Layout instances");typeof r=="boolean"&&i===void 0&&(i=r,r=void 0);for(let s of e)if(0>s.span&&s.property===void 0)throw new Error("fields cannot contain unnamed variable-length layout");let a=-1;try{a=e.reduce((s,o)=>s+o.getSpan(),0)}catch{}super(a,r),this.fields=e,this.decodePrefixes=!!i}getSpan(e,r=0){if(0<=this.span)return this.span;let i=0;try{i=this.fields.reduce((a,s)=>{let o=s.getSpan(e,r);return r+=o,a+o},0)}catch{throw new RangeError("indeterminate span")}return i}decode(e,r=0){E1(e);let i=this.makeDestinationObject();for(let a of this.fields)if(a.property!==void 0&&(i[a.property]=a.decode(e,r)),r+=a.getSpan(e,r),this.decodePrefixes&&e.length===r)break;return i}encode(e,r,i=0){let a=i,s=0,o=0;for(let l of this.fields){let d=l.span;if(o=0d&&(d=l.getSpan(r,i)))}s=i,i+=d}return s+o-a}fromArray(e){let r=this.makeDestinationObject();for(let i of this.fields)i.property!==void 0&&0i.span?r=-1:0<=r&&(r+=i.span)}}};U.Structure=t8;var qp=class{static{n(this,"UnionDiscriminator")}constructor(e){this.property=e}decode(e,r){throw new Error("UnionDiscriminator is abstract")}encode(e,r,i){throw new Error("UnionDiscriminator is abstract")}};U.UnionDiscriminator=qp;var k1=class extends qp{static{n(this,"UnionLayoutDiscriminator")}constructor(e,r){if(!(e instanceof ei&&e.isCount()))throw new TypeError("layout must be an unsigned integer ExternalLayout");super(r||e.property||"variant"),this.layout=e}decode(e,r){return this.layout.decode(e,r)}encode(e,r,i){return this.layout.encode(e,r,i)}};U.UnionLayoutDiscriminator=k1;var Wp=class extends $e{static{n(this,"Union")}constructor(e,r,i){let a;if(e instanceof Si||e instanceof Bi)a=new k1(new Np(e));else if(e instanceof ei&&e.isCount())a=new k1(e);else if(e instanceof qp)a=e;else throw new TypeError("discr must be a UnionDiscriminator or an unsigned integer layout");if(r===void 0&&(r=null),!(r===null||r instanceof $e))throw new TypeError("defaultLayout must be null or a Layout");if(r!==null){if(0>r.span)throw new Error("defaultLayout must have constant span");r.property===void 0&&(r=r.replicate("content"))}let s=-1;r&&(s=r.span,0<=s&&(e instanceof Si||e instanceof Bi)&&(s+=a.layout.span)),super(s,i),this.discriminator=a,this.usesPrefixDiscriminator=e instanceof Si||e instanceof Bi,this.defaultLayout=r,this.registry={};let o=this.defaultGetSourceVariant.bind(this);this.getSourceVariant=function(l){return o(l)},this.configGetSourceVariant=function(l){o=l.bind(this)}}getSpan(e,r=0){if(0<=this.span)return this.span;let i=this.getVariant(e,r);if(!i)throw new Error("unable to determine span for unrecognized variant");return i.getSpan(e,r)}defaultGetSourceVariant(e){if(Object.prototype.hasOwnProperty.call(e,this.discriminator.property)){if(this.defaultLayout&&this.defaultLayout.property&&Object.prototype.hasOwnProperty.call(e,this.defaultLayout.property))return;let r=this.registry[e[this.discriminator.property]];if(r&&(!r.layout||r.property&&Object.prototype.hasOwnProperty.call(e,r.property)))return r}else for(let r in this.registry){let i=this.registry[r];if(i.property&&Object.prototype.hasOwnProperty.call(e,i.property))return i}throw new Error("unable to infer src variant")}decode(e,r=0){let i,a=this.discriminator,s=a.decode(e,r),o=this.registry[s];if(o===void 0){let l=this.defaultLayout,d=0;this.usesPrefixDiscriminator&&(d=a.layout.span),i=this.makeDestinationObject(),i[a.property]=s,i[l.property]=l.decode(e,r+d)}else i=o.decode(e,r);return i}encode(e,r,i=0){let a=this.getSourceVariant(e);if(a===void 0){let s=this.discriminator,o=this.defaultLayout,l=0;return this.usesPrefixDiscriminator&&(l=s.layout.span),s.encode(e[s.property],r,i),l+o.encode(e[o.property],r,i+l)}return a.encode(e,r,i)}addVariant(e,r,i){let a=new r8(this,e,r,i);return this.registry[e]=a,a}getVariant(e,r=0){let i;return e instanceof Uint8Array?i=this.discriminator.decode(e,r):i=e,this.registry[i]}};U.Union=Wp;var r8=class extends $e{static{n(this,"VariantLayout")}constructor(e,r,i,a){if(!(e instanceof Wp))throw new TypeError("union must be a Union");if(!Number.isInteger(r)||0>r)throw new TypeError("variant must be a (non-negative) integer");if(typeof i=="string"&&a===void 0&&(a=i,i=null),i){if(!(i instanceof $e))throw new TypeError("layout must be a Layout");if(e.defaultLayout!==null&&0<=i.span&&i.span>e.defaultLayout.span)throw new Error("variant span exceeds span of containing union");if(typeof a!="string")throw new TypeError("variant must have a String property")}let s=e.span;0>e.span&&(s=i?i.span:0,0<=s&&e.usesPrefixDiscriminator&&(s+=e.discriminator.layout.span)),super(s,a),this.union=e,this.variant=r,this.layout=i||null}getSpan(e,r=0){if(0<=this.span)return this.span;let i=0;this.union.usesPrefixDiscriminator&&(i=this.union.discriminator.layout.span);let a=0;return this.layout&&(a=this.layout.getSpan(e,r+i)),i+a}decode(e,r=0){let i=this.makeDestinationObject();if(this!==this.union.getVariant(e,r))throw new Error("variant mismatch");let a=0;return this.union.usesPrefixDiscriminator&&(a=this.union.discriminator.layout.span),this.layout?i[this.property]=this.layout.decode(e,r+a):this.property?i[this.property]=!0:this.union.usesPrefixDiscriminator&&(i[this.union.discriminator.property]=this.variant),i}encode(e,r,i=0){let a=0;if(this.union.usesPrefixDiscriminator&&(a=this.union.discriminator.layout.span),this.layout&&!Object.prototype.hasOwnProperty.call(e,this.property))throw new TypeError("variant lacks property "+this.property);this.union.discriminator.encode(this.variant,r,i);let s=a;if(this.layout&&(this.layout.encode(e[this.property],r,i+a),s+=this.layout.getSpan(r,i+a),0<=this.union.span&&s>this.union.span))throw new Error("encoded variant overruns containing union");return s}fromArray(e){if(this.layout)return this.layout.fromArray(e)}};U.VariantLayout=r8;function _1(t){return 0>t&&(t+=4294967296),t}n(_1,"fixBitwiseResult");var Vp=class extends $e{static{n(this,"BitStructure")}constructor(e,r,i){if(!(e instanceof Si||e instanceof Bi))throw new TypeError("word must be a UInt or UIntBE layout");if(typeof r=="string"&&i===void 0&&(i=r,r=!1),4=r)throw new TypeError("bits must be positive integer");let a=8*e.span,s=e.fields.reduce((o,l)=>o+l.bits,0);if(r+s>a)throw new Error("bits too long for span remainder ("+(a-s)+" of "+a+" remain)");this.container=e,this.bits=r,this.valueMask=(1<>>this.start}encode(e){if(typeof e!="number"||!Number.isInteger(e)||e!==_1(e&this.valueMask))throw new TypeError(Ky("BitField.encode",this)+" value must be integer not exceeding "+this.valueMask);let r=this.container._packedGetValue(),i=_1(e<i&&(i=this.length.decode(e,r)),i}decode(e,r=0){let i=this.span;return 0>i&&(i=this.length.decode(e,r)),je(e).slice(r,r+i)}encode(e,r,i){let a=this.length;if(this.length instanceof ei&&(a=e.length),!(e instanceof Uint8Array&&a===e.length))throw new TypeError(Ky("Blob.encode",this)+" requires (length "+a+") Uint8Array as src");if(i+a>r.length)throw new RangeError("encoding overruns Uint8Array");let s=je(e);return je(r).write(s.toString("hex"),i,a,"hex"),this.length instanceof ei&&this.length.encode(a,r,i),a}};U.Blob=a8;var n8=class extends $e{static{n(this,"CString")}constructor(e){super(-1,e)}getSpan(e,r=0){E1(e);let i=r;for(;ir.length)throw new RangeError("encoding overruns Buffer");let o=je(r);return a.copy(o,i),o[i+s]=0,s+1}};U.CString=n8;var s8=class extends $e{static{n(this,"UTF8")}constructor(e,r){if(typeof e=="string"&&r===void 0&&(r=e,e=void 0),e===void 0)e=-1;else if(!Number.isInteger(e))throw new TypeError("maxSpan must be an integer");super(-1,r),this.maxSpan=e}getSpan(e,r=0){return E1(e),e.length-r}decode(e,r=0){let i=this.getSpan(e,r);if(0<=this.maxSpan&&this.maxSpanr.length)throw new RangeError("encoding overruns Buffer");return a.copy(je(r),i),s}};U.UTF8=s8;var o8=class extends $e{static{n(this,"Constant")}constructor(e,r){super(0,r),this.value=e}decode(e,r){return this.value}encode(e,r,i){return 0}};U.Constant=o8;U.greedy=(t,e)=>new j4(t,e);U.offset=(t,e,r)=>new Np(t,e,r);U.u8=t=>new Si(1,t);U.u16=t=>new Si(2,t);U.u24=t=>new Si(3,t);U.u32=t=>new Si(4,t);U.u40=t=>new Si(5,t);U.u48=t=>new Si(6,t);U.nu64=t=>new H4(t);U.u16be=t=>new Bi(2,t);U.u24be=t=>new Bi(3,t);U.u32be=t=>new Bi(4,t);U.u40be=t=>new Bi(5,t);U.u48be=t=>new Bi(6,t);U.nu64be=t=>new $4(t);U.s8=t=>new Pn(1,t);U.s16=t=>new Pn(2,t);U.s24=t=>new Pn(3,t);U.s32=t=>new Pn(4,t);U.s40=t=>new Pn(5,t);U.s48=t=>new Pn(6,t);U.ns64=t=>new G4(t);U.s16be=t=>new Is(2,t);U.s24be=t=>new Is(3,t);U.s32be=t=>new Is(4,t);U.s40be=t=>new Is(5,t);U.s48be=t=>new Is(6,t);U.ns64be=t=>new Z4(t);U.f32=t=>new J4(t);U.f32be=t=>new Y4(t);U.f64=t=>new Q4(t);U.f64be=t=>new X4(t);U.struct=(t,e,r)=>new t8(t,e,r);U.bits=(t,e,r)=>new Vp(t,e,r);U.seq=(t,e,r)=>new e8(t,e,r);U.union=(t,e,r)=>new Wp(t,e,r);U.unionLayoutDiscriminator=(t,e)=>new k1(t,e);U.blob=(t,e)=>new a8(t,e);U.cstr=t=>new n8(t);U.utf8=(t,e)=>new s8(t,e);U.constant=(t,e)=>new o8(t,e)});var tP=v((s8e,eP)=>{var u8=require("path").sep||"/";eP.exports=n$;function n$(t){if(typeof t!="string"||t.length<=7||t.substring(0,7)!="file://")throw new TypeError("must pass in a file:// URI to convert to a file path");var e=decodeURI(t.substring(7)),r=e.indexOf("/"),i=e.substring(0,r),a=e.substring(r+1);return i=="localhost"&&(i=""),i&&(i=u8+u8+i),a=a.replace(/^(.+)\|/,"$1:"),u8=="\\"&&(a=a.replace(/\//g,"\\")),/^.+\:/.test(a)||(a=u8+a),i+a}n(n$,"fileUriToPath")});var nP=v((P1,aP)=>{var Ly=require("fs"),p8=require("path"),s$=tP(),c8=p8.join,o$=p8.dirname,rP=Ly.accessSync&&function(t){try{Ly.accessSync(t)}catch{return!1}return!0}||Ly.existsSync||p8.existsSync,iP={arrow:process.env.NODE_BINDINGS_ARROW||" \u2192 ",compiled:process.env.NODE_BINDINGS_COMPILED_DIR||"compiled",platform:process.platform,arch:process.arch,nodePreGyp:"node-v"+process.versions.modules+"-"+process.platform+"-"+process.arch,version:process.versions.node,bindings:"bindings.node",try:[["module_root","build","bindings"],["module_root","build","Debug","bindings"],["module_root","build","Release","bindings"],["module_root","out","Debug","bindings"],["module_root","Debug","bindings"],["module_root","out","Release","bindings"],["module_root","Release","bindings"],["module_root","build","default","bindings"],["module_root","compiled","version","platform","arch","bindings"],["module_root","addon-build","release","install-root","bindings"],["module_root","addon-build","debug","install-root","bindings"],["module_root","addon-build","default","install-root","bindings"],["module_root","lib","binding","nodePreGyp","bindings"]]};function l$(t){typeof t=="string"?t={bindings:t}:t||(t={}),Object.keys(iP).map(function(d){d in t||(t[d]=iP[d])}),t.module_root||(t.module_root=P1.getRoot(P1.getFileName())),p8.extname(t.bindings)!=".node"&&(t.bindings+=".node");for(var e=typeof __webpack_require__=="function"?__non_webpack_require__:require,r=[],i=0,a=t.try.length,s,o,l;i{"use strict";Object.defineProperty(T1,"__esModule",{value:!0});var Tn;try{Tn=nP()("bigint_buffer")}catch{console.warn("bigint: Failed to load bindings, pure JS will be used (try npm run rebuild?)")}function d$(t){if(Tn===void 0){let e=Buffer.from(t);e.reverse();let r=e.toString("hex");return r.length===0?BigInt(0):BigInt(`0x${r}`)}return Tn.toBigInt(t,!1)}n(d$,"toBigIntLE");T1.toBigIntLE=d$;function u$(t){if(Tn===void 0){let e=t.toString("hex");return e.length===0?BigInt(0):BigInt(`0x${e}`)}return Tn.toBigInt(t,!0)}n(u$,"toBigIntBE");T1.toBigIntBE=u$;function c$(t,e){if(Tn===void 0){let r=t.toString(16),i=Buffer.from(r.padStart(e*2,"0").slice(0,e*2),"hex");return i.reverse(),i}return Tn.fromBigInt(t,Buffer.allocUnsafe(e),!1)}n(c$,"toBufferLE");T1.toBufferLE=c$;function p$(t,e){if(Tn===void 0){let r=t.toString(16);return Buffer.from(r.padStart(e*2,"0").slice(0,e*2),"hex")}return Tn.fromBigInt(t,Buffer.allocUnsafe(e),!0)}n(p$,"toBufferBE");T1.toBufferBE=p$});var fP=v(ge=>{"use strict";Object.defineProperty(ge,"__esModule",{value:!0});var m8=class extends TypeError{static{n(this,"StructError")}constructor(e,r){let i,{message:a,...s}=e,{path:o}=e,l=o.length===0?a:"At path: "+o.join(".")+" -- "+a;super(l),Object.assign(this,s),this.name=this.constructor.name,this.failures=()=>{var d;return(d=i)!=null?d:i=[e,...r()]}}};function m$(t){return Ea(t)&&typeof t[Symbol.iterator]=="function"}n(m$,"isIterable");function Ea(t){return typeof t=="object"&&t!=null}n(Ea,"isObject");function oP(t){if(Object.prototype.toString.call(t)!=="[object Object]")return!1;let e=Object.getPrototypeOf(t);return e===null||e===Object.prototype}n(oP,"isPlainObject");function wr(t){return typeof t=="string"?JSON.stringify(t):""+t}n(wr,"print");function f$(t){let{done:e,value:r}=t.next();return e?void 0:r}n(f$,"shiftIterator");function h$(t,e,r,i){if(t===!0)return;t===!1?t={}:typeof t=="string"&&(t={message:t});let{path:a,branch:s}=e,{type:o}=r,{refinement:l,message:d="Expected a value of type `"+o+"`"+(l?" with refinement `"+l+"`":"")+", but received: `"+wr(i)+"`"}=t;return{value:i,type:o,refinement:l,key:a[a.length-1],path:a,branch:s,...t,message:d}}n(h$,"toFailure");function*Uy(t,e,r,i){m$(t)||(t=[t]);for(let a of t){let s=h$(a,e,r,i);s&&(yield s)}}n(Uy,"toFailures");function*jy(t,e,r={}){let{path:i=[],branch:a=[t],coerce:s=!1,mask:o=!1}=r,l={path:i,branch:a};if(s&&(t=e.coercer(t,l),o&&e.type!=="type"&&Ea(e.schema)&&Ea(t)&&!Array.isArray(t)))for(let u in t)e.schema[u]===void 0&&delete t[u];let d=!0;for(let u of e.validator(t,l))d=!1,yield[u,void 0];for(let[u,c,p]of e.entries(t,l)){let x=jy(c,p,{path:u===void 0?i:[...i,u],branch:u===void 0?a:[...a,c],coerce:s,mask:o});for(let E of x)E[0]?(d=!1,yield[E[0],void 0]):s&&(c=E[1],u===void 0?t=c:t instanceof Map?t.set(u,c):t instanceof Set?t.add(c):Ea(t)&&(t[u]=c))}if(d)for(let u of e.refiner(t,l))d=!1,yield[u,void 0];d&&(yield[void 0,t])}n(jy,"run");var zt=class{static{n(this,"Struct")}constructor(e){let{type:r,schema:i,validator:a,refiner:s,coercer:o=n(d=>d,"coercer"),entries:l=n(function*(){},"entries")}=e;this.type=r,this.schema=i,this.entries=l,this.coercer=o,a?this.validator=(d,u)=>{let c=a(d,u);return Uy(c,u,this,d)}:this.validator=()=>[],s?this.refiner=(d,u)=>{let c=s(d,u);return Uy(c,u,this,d)}:this.refiner=()=>[]}assert(e){return lP(e,this)}create(e){return dP(e,this)}is(e){return Hy(e,this)}mask(e){return uP(e,this)}validate(e,r={}){return z1(e,this,r)}};function lP(t,e){let r=z1(t,e);if(r[0])throw r[0]}n(lP,"assert");function dP(t,e){let r=z1(t,e,{coerce:!0});if(r[0])throw r[0];return r[1]}n(dP,"create");function uP(t,e){let r=z1(t,e,{coerce:!0,mask:!0});if(r[0])throw r[0];return r[1]}n(uP,"mask");function Hy(t,e){return!z1(t,e)[0]}n(Hy,"is");function z1(t,e,r={}){let i=jy(t,e,r),a=f$(i);return a[0]?[new m8(a[0],function*(){for(let o of i)o[0]&&(yield o[0])}),void 0]:[void 0,a[1]]}n(z1,"validate");function g$(...t){let e=t.map(i=>i.schema),r=Object.assign({},...e);return Kp(r)}n(g$,"assign");function Ci(t,e){return new zt({type:t,schema:null,validator:e})}n(Ci,"define");function y$(t,e){return new zt({...t,refiner:(r,i)=>r===void 0||t.refiner(r,i),validator(r,i){return r===void 0?!0:(e(r,i),t.validator(r,i))}})}n(y$,"deprecated");function b$(t){return new zt({type:"dynamic",schema:null,*entries(e,r){yield*t(e,r).entries(e,r)},validator(e,r){return t(e,r).validator(e,r)},coercer(e,r){return t(e,r).coercer(e,r)}})}n(b$,"dynamic");function v$(t){let e;return new zt({type:"lazy",schema:null,*entries(r,i){var a;(a=e)!=null||(e=t()),yield*e.entries(r,i)},validator(r,i){var a;return(a=e)!=null||(e=t()),e.validator(r,i)},coercer(r,i){var a;return(a=e)!=null||(e=t()),e.coercer(r,i)}})}n(v$,"lazy");function S$(t,e){let{schema:r}=t,i={...r};for(let a of e)delete i[a];return Kp(i)}n(S$,"omit");function w$(t){let e=t instanceof zt?{...t.schema}:{...t};for(let r in e)e[r]=cP(e[r]);return Kp(e)}n(w$,"partial");function x$(t,e){let{schema:r}=t,i={};for(let a of e)i[a]=r[a];return Kp(i)}n(x$,"pick");function A$(t,e){return console.warn("superstruct@0.11 - The `struct` helper has been renamed to `define`."),Ci(t,e)}n(A$,"struct");function _$(){return Ci("any",()=>!0)}n(_$,"any");function k$(t){return new zt({type:"array",schema:t,*entries(e){if(t&&Array.isArray(e))for(let[r,i]of e.entries())yield[r,i,t]},coercer(e){return Array.isArray(e)?e.slice():e},validator(e){return Array.isArray(e)||"Expected an array value, but received: "+wr(e)}})}n(k$,"array");function E$(){return Ci("boolean",t=>typeof t=="boolean")}n(E$,"boolean");function P$(){return Ci("date",t=>t instanceof Date&&!isNaN(t.getTime())||"Expected a valid `Date` object, but received: "+wr(t))}n(P$,"date");function T$(t){let e={},r=t.map(i=>wr(i)).join();for(let i of t)e[i]=i;return new zt({type:"enums",schema:e,validator(i){return t.includes(i)||"Expected one of `"+r+"`, but received: "+wr(i)}})}n(T$,"enums");function z$(){return Ci("func",t=>typeof t=="function"||"Expected a function, but received: "+wr(t))}n(z$,"func");function I$(t){return Ci("instance",e=>e instanceof t||"Expected a `"+t.name+"` instance, but received: "+wr(e))}n(I$,"instance");function M$(){return Ci("integer",t=>typeof t=="number"&&!isNaN(t)&&Number.isInteger(t)||"Expected an integer, but received: "+wr(t))}n(M$,"integer");function D$(t){return new zt({type:"intersection",schema:null,*entries(e,r){for(let i of t)yield*i.entries(e,r)},*validator(e,r){for(let i of t)yield*i.validator(e,r)},*refiner(e,r){for(let i of t)yield*i.refiner(e,r)}})}n(D$,"intersection");function R$(t){let e=wr(t),r=typeof t;return new zt({type:"literal",schema:r==="string"||r==="number"||r==="boolean"?t:null,validator(i){return i===t||"Expected the literal `"+e+"`, but received: "+wr(i)}})}n(R$,"literal");function B$(t,e){return new zt({type:"map",schema:null,*entries(r){if(t&&e&&r instanceof Map)for(let[i,a]of r.entries())yield[i,i,t],yield[i,a,e]},coercer(r){return r instanceof Map?new Map(r):r},validator(r){return r instanceof Map||"Expected a `Map` object, but received: "+wr(r)}})}n(B$,"map");function $y(){return Ci("never",()=>!1)}n($y,"never");function C$(t){return new zt({...t,validator:(e,r)=>e===null||t.validator(e,r),refiner:(e,r)=>e===null||t.refiner(e,r)})}n(C$,"nullable");function O$(){return Ci("number",t=>typeof t=="number"&&!isNaN(t)||"Expected a number, but received: "+wr(t))}n(O$,"number");function Kp(t){let e=t?Object.keys(t):[],r=$y();return new zt({type:"object",schema:t||null,*entries(i){if(t&&Ea(i)){let a=new Set(Object.keys(i));for(let s of e)a.delete(s),yield[s,i[s],t[s]];for(let s of a)yield[s,i[s],r]}},validator(i){return Ea(i)||"Expected an object, but received: "+wr(i)},coercer(i){return Ea(i)?{...i}:i}})}n(Kp,"object");function cP(t){return new zt({...t,validator:(e,r)=>e===void 0||t.validator(e,r),refiner:(e,r)=>e===void 0||t.refiner(e,r)})}n(cP,"optional");function N$(t,e){return new zt({type:"record",schema:null,*entries(r){if(Ea(r))for(let i in r){let a=r[i];yield[i,i,t],yield[i,a,e]}},validator(r){return Ea(r)||"Expected an object, but received: "+wr(r)}})}n(N$,"record");function q$(){return Ci("regexp",t=>t instanceof RegExp)}n(q$,"regexp");function W$(t){return new zt({type:"set",schema:null,*entries(e){if(t&&e instanceof Set)for(let r of e)yield[r,r,t]},coercer(e){return e instanceof Set?new Set(e):e},validator(e){return e instanceof Set||"Expected a `Set` object, but received: "+wr(e)}})}n(W$,"set");function pP(){return Ci("string",t=>typeof t=="string"||"Expected a string, but received: "+wr(t))}n(pP,"string");function V$(t){let e=$y();return new zt({type:"tuple",schema:null,*entries(r){if(Array.isArray(r)){let i=Math.max(t.length,r.length);for(let a=0;ar.type).join(" | ");return new zt({type:"union",schema:null,validator(r,i){let a=[];for(let s of t){let[...o]=jy(r,s,i),[l]=o;if(l[0])for(let[d]of o)d&&a.push(d);else return[]}return["Expected the value to satisfy a union of `"+e+"`, but received: "+wr(r),...a]}})}n(K$,"union");function mP(){return Ci("unknown",()=>!0)}n(mP,"unknown");function Gy(t,e,r){return new zt({...t,coercer:(i,a)=>Hy(i,e)?t.coercer(r(i,a),a):t.coercer(i,a)})}n(Gy,"coerce");function L$(t,e,r={}){return Gy(t,mP(),i=>{let a=typeof e=="function"?e():e;if(i===void 0)return a;if(!r.strict&&oP(i)&&oP(a)){let s={...i},o=!1;for(let l in a)s[l]===void 0&&(s[l]=a[l],o=!0);if(o)return s}return i})}n(L$,"defaulted");function U$(t){return Gy(t,pP(),e=>e.trim())}n(U$,"trimmed");function j$(t){let e="Expected an empty "+t.type;return I1(t,"empty",r=>{if(r instanceof Map||r instanceof Set){let{size:i}=r;return i===0||e+" but received one with a size of `"+i+"`"}else{let{length:i}=r;return i===0||e+" but received one with a length of `"+i+"`"}})}n(j$,"empty");function H$(t,e,r={}){let{exclusive:i}=r;return I1(t,"max",a=>i?ai?a>e:a>=e||"Expected a "+t.type+" greater than "+(i?"":"or equal to ")+e+" but received `"+a+"`")}n($$,"min");function G$(t,e){return I1(t,"pattern",r=>e.test(r)||"Expected a "+t.type+" matching `/"+e.source+'/` but received "'+r+'"')}n(G$,"pattern");function Z$(t,e,r=e){let i="Expected a "+t.type,a=e===r?"of `"+e+"`":"between `"+e+"` and `"+r+"`";return I1(t,"size",s=>{if(typeof s=="number"||s instanceof Date)return e<=s&&s<=r||i+" "+a+" but received `"+s+"`";if(s instanceof Map||s instanceof Set){let{size:o}=s;return e<=o&&o<=r||i+" with a size "+a+" but received one with a size of `"+o+"`"}else{let{length:o}=s;return e<=o&&o<=r||i+" with a length "+a+" but received one with a length of `"+o+"`"}})}n(Z$,"size");function I1(t,e,r){return new zt({...t,*refiner(i,a){yield*t.refiner(i,a);let s=r(i,a),o=Uy(s,a,t,i);for(let l of o)yield{...l,refinement:e}}})}n(I1,"refine");ge.Struct=zt;ge.StructError=m8;ge.any=_$;ge.array=k$;ge.assert=lP;ge.assign=g$;ge.boolean=E$;ge.coerce=Gy;ge.create=dP;ge.date=P$;ge.defaulted=L$;ge.define=Ci;ge.deprecated=y$;ge.dynamic=b$;ge.empty=j$;ge.enums=T$;ge.func=z$;ge.instance=I$;ge.integer=M$;ge.intersection=D$;ge.is=Hy;ge.lazy=v$;ge.literal=R$;ge.map=B$;ge.mask=uP;ge.max=H$;ge.min=$$;ge.never=$y;ge.nullable=C$;ge.number=O$;ge.object=Kp;ge.omit=S$;ge.optional=cP;ge.partial=w$;ge.pattern=G$;ge.pick=x$;ge.record=N$;ge.refine=I1;ge.regexp=q$;ge.set=W$;ge.size=Z$;ge.string=pP;ge.struct=A$;ge.trimmed=U$;ge.tuple=V$;ge.type=F$;ge.union=K$;ge.unknown=mP;ge.validate=z1});function Lp(){return f8>h8.length-16&&(hP.default.randomFillSync(h8),f8=0),h8.slice(f8,f8+=16)}var hP,h8,f8,Zy=mi(()=>{hP=Kr(require("crypto")),h8=new Uint8Array(256),f8=h8.length;n(Lp,"rng")});var gP,yP=mi(()=>{gP=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i});function J$(t){return typeof t=="string"&&gP.test(t)}var Ms,Up=mi(()=>{yP();n(J$,"validate");Ms=J$});function Y$(t,e=0){let r=(Ur[t[e+0]]+Ur[t[e+1]]+Ur[t[e+2]]+Ur[t[e+3]]+"-"+Ur[t[e+4]]+Ur[t[e+5]]+"-"+Ur[t[e+6]]+Ur[t[e+7]]+"-"+Ur[t[e+8]]+Ur[t[e+9]]+"-"+Ur[t[e+10]]+Ur[t[e+11]]+Ur[t[e+12]]+Ur[t[e+13]]+Ur[t[e+14]]+Ur[t[e+15]]).toLowerCase();if(!Ms(r))throw TypeError("Stringified UUID is invalid");return r}var Ur,Ds,jp=mi(()=>{Up();Ur=[];for(let t=0;t<256;++t)Ur.push((t+256).toString(16).substr(1));n(Y$,"stringify");Ds=Y$});function Q$(t,e,r){let i=e&&r||0,a=e||new Array(16);t=t||{};let s=t.node||bP,o=t.clockseq!==void 0?t.clockseq:Jy;if(s==null||o==null){let x=t.random||(t.rng||Lp)();s==null&&(s=bP=[x[0]|1,x[1],x[2],x[3],x[4],x[5]]),o==null&&(o=Jy=(x[6]<<8|x[7])&16383)}let l=t.msecs!==void 0?t.msecs:Date.now(),d=t.nsecs!==void 0?t.nsecs:Qy+1,u=l-Yy+(d-Qy)/1e4;if(u<0&&t.clockseq===void 0&&(o=o+1&16383),(u<0||l>Yy)&&t.nsecs===void 0&&(d=0),d>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");Yy=l,Qy=d,Jy=o,l+=122192928e5;let c=((l&268435455)*1e4+d)%4294967296;a[i++]=c>>>24&255,a[i++]=c>>>16&255,a[i++]=c>>>8&255,a[i++]=c&255;let p=l/4294967296*1e4&268435455;a[i++]=p>>>8&255,a[i++]=p&255,a[i++]=p>>>24&15|16,a[i++]=p>>>16&255,a[i++]=o>>>8|128,a[i++]=o&255;for(let x=0;x<6;++x)a[i+x]=s[x];return e||Ds(a)}var bP,Jy,Yy,Qy,vP,SP=mi(()=>{Zy();jp();Yy=0,Qy=0;n(Q$,"v1");vP=Q$});function X$(t){if(!Ms(t))throw TypeError("Invalid UUID");let e,r=new Uint8Array(16);return r[0]=(e=parseInt(t.slice(0,8),16))>>>24,r[1]=e>>>16&255,r[2]=e>>>8&255,r[3]=e&255,r[4]=(e=parseInt(t.slice(9,13),16))>>>8,r[5]=e&255,r[6]=(e=parseInt(t.slice(14,18),16))>>>8,r[7]=e&255,r[8]=(e=parseInt(t.slice(19,23),16))>>>8,r[9]=e&255,r[10]=(e=parseInt(t.slice(24,36),16))/1099511627776&255,r[11]=e/4294967296&255,r[12]=e>>>24&255,r[13]=e>>>16&255,r[14]=e>>>8&255,r[15]=e&255,r}var g8,Xy=mi(()=>{Up();n(X$,"parse");g8=X$});function eG(t){t=unescape(encodeURIComponent(t));let e=[];for(let r=0;r{jp();Xy();n(eG,"stringToBytes");tG="6ba7b810-9dad-11d1-80b4-00c04fd430c8",rG="6ba7b811-9dad-11d1-80b4-00c04fd430c8";n(Hp,"default")});function iG(t){return Array.isArray(t)?t=Buffer.from(t):typeof t=="string"&&(t=Buffer.from(t,"utf8")),wP.default.createHash("md5").update(t).digest()}var wP,xP,AP=mi(()=>{wP=Kr(require("crypto"));n(iG,"md5");xP=iG});var aG,_P,kP=mi(()=>{e7();AP();aG=Hp("v3",48,xP),_P=aG});function nG(t,e,r){t=t||{};let i=t.random||(t.rng||Lp)();if(i[6]=i[6]&15|64,i[8]=i[8]&63|128,e){r=r||0;for(let a=0;a<16;++a)e[r+a]=i[a];return e}return Ds(i)}var EP,PP=mi(()=>{Zy();jp();n(nG,"v4");EP=nG});function sG(t){return Array.isArray(t)?t=Buffer.from(t):typeof t=="string"&&(t=Buffer.from(t,"utf8")),TP.default.createHash("sha1").update(t).digest()}var TP,zP,IP=mi(()=>{TP=Kr(require("crypto"));n(sG,"sha1");zP=sG});var oG,MP,DP=mi(()=>{e7();IP();oG=Hp("v5",80,zP),MP=oG});var RP,BP=mi(()=>{RP="00000000-0000-0000-0000-000000000000"});function lG(t){if(!Ms(t))throw TypeError("Invalid UUID");return parseInt(t.substr(14,1),16)}var CP,OP=mi(()=>{Up();n(lG,"version");CP=lG});var t7={};Mk(t7,{NIL:()=>RP,parse:()=>g8,stringify:()=>Ds,v1:()=>vP,v3:()=>_P,v4:()=>EP,v5:()=>MP,validate:()=>Ms,version:()=>CP});var r7=mi(()=>{SP();kP();PP();DP();BP();OP();Up();jp();Xy()});var qP=v((s3e,NP)=>{"use strict";var dG=(r7(),Y9(t7)).v4,uG=n(function(t,e,r,i){if(typeof t!="string")throw new TypeError(t+" must be a string");i=i||{};let a=typeof i.version=="number"?i.version:2;if(a!==1&&a!==2)throw new TypeError(a+" must be 1 or 2");let s={method:t};if(a===2&&(s.jsonrpc="2.0"),e){if(typeof e!="object"&&!Array.isArray(e))throw new TypeError(e+" must be an object, array or omitted");s.params=e}if(typeof r>"u"){let o=typeof i.generator=="function"?i.generator:function(){return dG()};s.id=o(s,i)}else a===2&&r===null?i.notificationIdNull&&(s.id=null):s.id=r;return s},"generateRequest");NP.exports=uG});var VP=v((l3e,WP)=>{"use strict";var cG=(r7(),Y9(t7)).v4,pG=qP(),$p=n(function(t,e){if(!(this instanceof $p))return new $p(t,e);e||(e={}),this.options={reviver:typeof e.reviver<"u"?e.reviver:null,replacer:typeof e.replacer<"u"?e.replacer:null,generator:typeof e.generator<"u"?e.generator:function(){return cG()},version:typeof e.version<"u"?e.version:2,notificationIdNull:typeof e.notificationIdNull=="boolean"?e.notificationIdNull:!1},this.callServer=t},"ClientBrowser");WP.exports=$p;$p.prototype.request=function(t,e,r,i){let a=this,s=null,o=Array.isArray(t)&&typeof e=="function";if(this.options.version===1&&o)throw new TypeError("JSON-RPC 1.0 does not support batching");if(o||!o&&t&&typeof t=="object"&&typeof e=="function")i=e,s=t;else{typeof r=="function"&&(i=r,r=void 0);let u=typeof i=="function";try{s=pG(t,e,r,{generator:this.options.generator,version:this.options.version,notificationIdNull:this.options.notificationIdNull})}catch(c){if(u)return i(c);throw c}if(!u)return s}let d;try{d=JSON.stringify(s,this.options.replacer)}catch(u){return i(u)}return this.callServer(d,function(u,c){a._parseResponse(u,c,i)}),s};$p.prototype._parseResponse=function(t,e,r){if(t){r(t);return}if(!e)return r();let i;try{i=JSON.parse(e,this.options.reviver)}catch(a){return r(a)}if(r.length===3)if(Array.isArray(i)){let a=n(function(o){return typeof o.error<"u"},"isError"),s=n(function(o){return!a(o)},"isNotError");return r(null,i.filter(a),i.filter(s))}else return r(null,i.error,i.result);r(null,i)}});var LP=v((u3e,KP)=>{"use strict";var Mt={};KP.exports=Mt;function FP(t){return t<0?-1:1}n(FP,"sign");function mG(t){return t%1===.5&&!(t&1)?Math.floor(t):Math.round(t)}n(mG,"evenRound");function Rs(t,e){e.unsigned||--t;let r=e.unsigned?0:-Math.pow(2,t),i=Math.pow(2,t)-1,a=e.moduloBitLength?Math.pow(2,e.moduloBitLength):Math.pow(2,t),s=e.moduloBitLength?Math.pow(2,e.moduloBitLength-1):Math.pow(2,t-1);return function(o,l){l||(l={});let d=+o;if(l.enforceRange){if(!Number.isFinite(d))throw new TypeError("Argument is not a finite number");if(d=FP(d)*Math.floor(Math.abs(d)),di)throw new TypeError("Argument is not in byte range");return d}if(!isNaN(d)&&l.clamp)return d=mG(d),di&&(d=i),d;if(!Number.isFinite(d)||d===0)return 0;if(d=FP(d)*Math.floor(Math.abs(d)),d=d%a,!e.unsigned&&d>=s)return d-a;if(e.unsigned){if(d<0)d+=a;else if(d===-0)return 0}return d}}n(Rs,"createNumberConversion");Mt.void=function(){};Mt.boolean=function(t){return!!t};Mt.byte=Rs(8,{unsigned:!1});Mt.octet=Rs(8,{unsigned:!0});Mt.short=Rs(16,{unsigned:!1});Mt["unsigned short"]=Rs(16,{unsigned:!0});Mt.long=Rs(32,{unsigned:!1});Mt["unsigned long"]=Rs(32,{unsigned:!0});Mt["long long"]=Rs(32,{unsigned:!1,moduloBitLength:64});Mt["unsigned long long"]=Rs(32,{unsigned:!0,moduloBitLength:64});Mt.double=function(t){let e=+t;if(!Number.isFinite(e))throw new TypeError("Argument is not a finite floating-point value");return e};Mt["unrestricted double"]=function(t){let e=+t;if(isNaN(e))throw new TypeError("Argument is NaN");return e};Mt.float=Mt.double;Mt["unrestricted float"]=Mt["unrestricted double"];Mt.DOMString=function(t,e){return e||(e={}),e.treatNullAsEmptyString&&t===null?"":String(t)};Mt.ByteString=function(t,e){let r=String(t),i;for(let a=0;(i=r.codePointAt(a))!==void 0;++a)if(i>255)throw new TypeError("Argument is not a valid bytestring");return r};Mt.USVString=function(t){let e=String(t),r=e.length,i=[];for(let a=0;a57343)i.push(String.fromCodePoint(s));else if(56320<=s&&s<=57343)i.push(String.fromCodePoint(65533));else if(a===r-1)i.push(String.fromCodePoint(65533));else{let o=e.charCodeAt(a+1);if(56320<=o&&o<=57343){let l=s&1023,d=o&1023;i.push(String.fromCodePoint(65536+1024*l+d)),++a}else i.push(String.fromCodePoint(65533))}}return i.join("")};Mt.Date=function(t,e){if(!(t instanceof Date))throw new TypeError("Argument is not a Date object");if(!isNaN(t))return t};Mt.RegExp=function(t,e){return t instanceof RegExp||(t=new RegExp(t)),t}});var UP=v((p3e,Bs)=>{"use strict";Bs.exports.mixin=n(function(e,r){let i=Object.getOwnPropertyNames(r);for(let a=0;a{fG.exports=[[[0,44],"disallowed_STD3_valid"],[[45,46],"valid"],[[47,47],"disallowed_STD3_valid"],[[48,57],"valid"],[[58,64],"disallowed_STD3_valid"],[[65,65],"mapped",[97]],[[66,66],"mapped",[98]],[[67,67],"mapped",[99]],[[68,68],"mapped",[100]],[[69,69],"mapped",[101]],[[70,70],"mapped",[102]],[[71,71],"mapped",[103]],[[72,72],"mapped",[104]],[[73,73],"mapped",[105]],[[74,74],"mapped",[106]],[[75,75],"mapped",[107]],[[76,76],"mapped",[108]],[[77,77],"mapped",[109]],[[78,78],"mapped",[110]],[[79,79],"mapped",[111]],[[80,80],"mapped",[112]],[[81,81],"mapped",[113]],[[82,82],"mapped",[114]],[[83,83],"mapped",[115]],[[84,84],"mapped",[116]],[[85,85],"mapped",[117]],[[86,86],"mapped",[118]],[[87,87],"mapped",[119]],[[88,88],"mapped",[120]],[[89,89],"mapped",[121]],[[90,90],"mapped",[122]],[[91,96],"disallowed_STD3_valid"],[[97,122],"valid"],[[123,127],"disallowed_STD3_valid"],[[128,159],"disallowed"],[[160,160],"disallowed_STD3_mapped",[32]],[[161,167],"valid",[],"NV8"],[[168,168],"disallowed_STD3_mapped",[32,776]],[[169,169],"valid",[],"NV8"],[[170,170],"mapped",[97]],[[171,172],"valid",[],"NV8"],[[173,173],"ignored"],[[174,174],"valid",[],"NV8"],[[175,175],"disallowed_STD3_mapped",[32,772]],[[176,177],"valid",[],"NV8"],[[178,178],"mapped",[50]],[[179,179],"mapped",[51]],[[180,180],"disallowed_STD3_mapped",[32,769]],[[181,181],"mapped",[956]],[[182,182],"valid",[],"NV8"],[[183,183],"valid"],[[184,184],"disallowed_STD3_mapped",[32,807]],[[185,185],"mapped",[49]],[[186,186],"mapped",[111]],[[187,187],"valid",[],"NV8"],[[188,188],"mapped",[49,8260,52]],[[189,189],"mapped",[49,8260,50]],[[190,190],"mapped",[51,8260,52]],[[191,191],"valid",[],"NV8"],[[192,192],"mapped",[224]],[[193,193],"mapped",[225]],[[194,194],"mapped",[226]],[[195,195],"mapped",[227]],[[196,196],"mapped",[228]],[[197,197],"mapped",[229]],[[198,198],"mapped",[230]],[[199,199],"mapped",[231]],[[200,200],"mapped",[232]],[[201,201],"mapped",[233]],[[202,202],"mapped",[234]],[[203,203],"mapped",[235]],[[204,204],"mapped",[236]],[[205,205],"mapped",[237]],[[206,206],"mapped",[238]],[[207,207],"mapped",[239]],[[208,208],"mapped",[240]],[[209,209],"mapped",[241]],[[210,210],"mapped",[242]],[[211,211],"mapped",[243]],[[212,212],"mapped",[244]],[[213,213],"mapped",[245]],[[214,214],"mapped",[246]],[[215,215],"valid",[],"NV8"],[[216,216],"mapped",[248]],[[217,217],"mapped",[249]],[[218,218],"mapped",[250]],[[219,219],"mapped",[251]],[[220,220],"mapped",[252]],[[221,221],"mapped",[253]],[[222,222],"mapped",[254]],[[223,223],"deviation",[115,115]],[[224,246],"valid"],[[247,247],"valid",[],"NV8"],[[248,255],"valid"],[[256,256],"mapped",[257]],[[257,257],"valid"],[[258,258],"mapped",[259]],[[259,259],"valid"],[[260,260],"mapped",[261]],[[261,261],"valid"],[[262,262],"mapped",[263]],[[263,263],"valid"],[[264,264],"mapped",[265]],[[265,265],"valid"],[[266,266],"mapped",[267]],[[267,267],"valid"],[[268,268],"mapped",[269]],[[269,269],"valid"],[[270,270],"mapped",[271]],[[271,271],"valid"],[[272,272],"mapped",[273]],[[273,273],"valid"],[[274,274],"mapped",[275]],[[275,275],"valid"],[[276,276],"mapped",[277]],[[277,277],"valid"],[[278,278],"mapped",[279]],[[279,279],"valid"],[[280,280],"mapped",[281]],[[281,281],"valid"],[[282,282],"mapped",[283]],[[283,283],"valid"],[[284,284],"mapped",[285]],[[285,285],"valid"],[[286,286],"mapped",[287]],[[287,287],"valid"],[[288,288],"mapped",[289]],[[289,289],"valid"],[[290,290],"mapped",[291]],[[291,291],"valid"],[[292,292],"mapped",[293]],[[293,293],"valid"],[[294,294],"mapped",[295]],[[295,295],"valid"],[[296,296],"mapped",[297]],[[297,297],"valid"],[[298,298],"mapped",[299]],[[299,299],"valid"],[[300,300],"mapped",[301]],[[301,301],"valid"],[[302,302],"mapped",[303]],[[303,303],"valid"],[[304,304],"mapped",[105,775]],[[305,305],"valid"],[[306,307],"mapped",[105,106]],[[308,308],"mapped",[309]],[[309,309],"valid"],[[310,310],"mapped",[311]],[[311,312],"valid"],[[313,313],"mapped",[314]],[[314,314],"valid"],[[315,315],"mapped",[316]],[[316,316],"valid"],[[317,317],"mapped",[318]],[[318,318],"valid"],[[319,320],"mapped",[108,183]],[[321,321],"mapped",[322]],[[322,322],"valid"],[[323,323],"mapped",[324]],[[324,324],"valid"],[[325,325],"mapped",[326]],[[326,326],"valid"],[[327,327],"mapped",[328]],[[328,328],"valid"],[[329,329],"mapped",[700,110]],[[330,330],"mapped",[331]],[[331,331],"valid"],[[332,332],"mapped",[333]],[[333,333],"valid"],[[334,334],"mapped",[335]],[[335,335],"valid"],[[336,336],"mapped",[337]],[[337,337],"valid"],[[338,338],"mapped",[339]],[[339,339],"valid"],[[340,340],"mapped",[341]],[[341,341],"valid"],[[342,342],"mapped",[343]],[[343,343],"valid"],[[344,344],"mapped",[345]],[[345,345],"valid"],[[346,346],"mapped",[347]],[[347,347],"valid"],[[348,348],"mapped",[349]],[[349,349],"valid"],[[350,350],"mapped",[351]],[[351,351],"valid"],[[352,352],"mapped",[353]],[[353,353],"valid"],[[354,354],"mapped",[355]],[[355,355],"valid"],[[356,356],"mapped",[357]],[[357,357],"valid"],[[358,358],"mapped",[359]],[[359,359],"valid"],[[360,360],"mapped",[361]],[[361,361],"valid"],[[362,362],"mapped",[363]],[[363,363],"valid"],[[364,364],"mapped",[365]],[[365,365],"valid"],[[366,366],"mapped",[367]],[[367,367],"valid"],[[368,368],"mapped",[369]],[[369,369],"valid"],[[370,370],"mapped",[371]],[[371,371],"valid"],[[372,372],"mapped",[373]],[[373,373],"valid"],[[374,374],"mapped",[375]],[[375,375],"valid"],[[376,376],"mapped",[255]],[[377,377],"mapped",[378]],[[378,378],"valid"],[[379,379],"mapped",[380]],[[380,380],"valid"],[[381,381],"mapped",[382]],[[382,382],"valid"],[[383,383],"mapped",[115]],[[384,384],"valid"],[[385,385],"mapped",[595]],[[386,386],"mapped",[387]],[[387,387],"valid"],[[388,388],"mapped",[389]],[[389,389],"valid"],[[390,390],"mapped",[596]],[[391,391],"mapped",[392]],[[392,392],"valid"],[[393,393],"mapped",[598]],[[394,394],"mapped",[599]],[[395,395],"mapped",[396]],[[396,397],"valid"],[[398,398],"mapped",[477]],[[399,399],"mapped",[601]],[[400,400],"mapped",[603]],[[401,401],"mapped",[402]],[[402,402],"valid"],[[403,403],"mapped",[608]],[[404,404],"mapped",[611]],[[405,405],"valid"],[[406,406],"mapped",[617]],[[407,407],"mapped",[616]],[[408,408],"mapped",[409]],[[409,411],"valid"],[[412,412],"mapped",[623]],[[413,413],"mapped",[626]],[[414,414],"valid"],[[415,415],"mapped",[629]],[[416,416],"mapped",[417]],[[417,417],"valid"],[[418,418],"mapped",[419]],[[419,419],"valid"],[[420,420],"mapped",[421]],[[421,421],"valid"],[[422,422],"mapped",[640]],[[423,423],"mapped",[424]],[[424,424],"valid"],[[425,425],"mapped",[643]],[[426,427],"valid"],[[428,428],"mapped",[429]],[[429,429],"valid"],[[430,430],"mapped",[648]],[[431,431],"mapped",[432]],[[432,432],"valid"],[[433,433],"mapped",[650]],[[434,434],"mapped",[651]],[[435,435],"mapped",[436]],[[436,436],"valid"],[[437,437],"mapped",[438]],[[438,438],"valid"],[[439,439],"mapped",[658]],[[440,440],"mapped",[441]],[[441,443],"valid"],[[444,444],"mapped",[445]],[[445,451],"valid"],[[452,454],"mapped",[100,382]],[[455,457],"mapped",[108,106]],[[458,460],"mapped",[110,106]],[[461,461],"mapped",[462]],[[462,462],"valid"],[[463,463],"mapped",[464]],[[464,464],"valid"],[[465,465],"mapped",[466]],[[466,466],"valid"],[[467,467],"mapped",[468]],[[468,468],"valid"],[[469,469],"mapped",[470]],[[470,470],"valid"],[[471,471],"mapped",[472]],[[472,472],"valid"],[[473,473],"mapped",[474]],[[474,474],"valid"],[[475,475],"mapped",[476]],[[476,477],"valid"],[[478,478],"mapped",[479]],[[479,479],"valid"],[[480,480],"mapped",[481]],[[481,481],"valid"],[[482,482],"mapped",[483]],[[483,483],"valid"],[[484,484],"mapped",[485]],[[485,485],"valid"],[[486,486],"mapped",[487]],[[487,487],"valid"],[[488,488],"mapped",[489]],[[489,489],"valid"],[[490,490],"mapped",[491]],[[491,491],"valid"],[[492,492],"mapped",[493]],[[493,493],"valid"],[[494,494],"mapped",[495]],[[495,496],"valid"],[[497,499],"mapped",[100,122]],[[500,500],"mapped",[501]],[[501,501],"valid"],[[502,502],"mapped",[405]],[[503,503],"mapped",[447]],[[504,504],"mapped",[505]],[[505,505],"valid"],[[506,506],"mapped",[507]],[[507,507],"valid"],[[508,508],"mapped",[509]],[[509,509],"valid"],[[510,510],"mapped",[511]],[[511,511],"valid"],[[512,512],"mapped",[513]],[[513,513],"valid"],[[514,514],"mapped",[515]],[[515,515],"valid"],[[516,516],"mapped",[517]],[[517,517],"valid"],[[518,518],"mapped",[519]],[[519,519],"valid"],[[520,520],"mapped",[521]],[[521,521],"valid"],[[522,522],"mapped",[523]],[[523,523],"valid"],[[524,524],"mapped",[525]],[[525,525],"valid"],[[526,526],"mapped",[527]],[[527,527],"valid"],[[528,528],"mapped",[529]],[[529,529],"valid"],[[530,530],"mapped",[531]],[[531,531],"valid"],[[532,532],"mapped",[533]],[[533,533],"valid"],[[534,534],"mapped",[535]],[[535,535],"valid"],[[536,536],"mapped",[537]],[[537,537],"valid"],[[538,538],"mapped",[539]],[[539,539],"valid"],[[540,540],"mapped",[541]],[[541,541],"valid"],[[542,542],"mapped",[543]],[[543,543],"valid"],[[544,544],"mapped",[414]],[[545,545],"valid"],[[546,546],"mapped",[547]],[[547,547],"valid"],[[548,548],"mapped",[549]],[[549,549],"valid"],[[550,550],"mapped",[551]],[[551,551],"valid"],[[552,552],"mapped",[553]],[[553,553],"valid"],[[554,554],"mapped",[555]],[[555,555],"valid"],[[556,556],"mapped",[557]],[[557,557],"valid"],[[558,558],"mapped",[559]],[[559,559],"valid"],[[560,560],"mapped",[561]],[[561,561],"valid"],[[562,562],"mapped",[563]],[[563,563],"valid"],[[564,566],"valid"],[[567,569],"valid"],[[570,570],"mapped",[11365]],[[571,571],"mapped",[572]],[[572,572],"valid"],[[573,573],"mapped",[410]],[[574,574],"mapped",[11366]],[[575,576],"valid"],[[577,577],"mapped",[578]],[[578,578],"valid"],[[579,579],"mapped",[384]],[[580,580],"mapped",[649]],[[581,581],"mapped",[652]],[[582,582],"mapped",[583]],[[583,583],"valid"],[[584,584],"mapped",[585]],[[585,585],"valid"],[[586,586],"mapped",[587]],[[587,587],"valid"],[[588,588],"mapped",[589]],[[589,589],"valid"],[[590,590],"mapped",[591]],[[591,591],"valid"],[[592,680],"valid"],[[681,685],"valid"],[[686,687],"valid"],[[688,688],"mapped",[104]],[[689,689],"mapped",[614]],[[690,690],"mapped",[106]],[[691,691],"mapped",[114]],[[692,692],"mapped",[633]],[[693,693],"mapped",[635]],[[694,694],"mapped",[641]],[[695,695],"mapped",[119]],[[696,696],"mapped",[121]],[[697,705],"valid"],[[706,709],"valid",[],"NV8"],[[710,721],"valid"],[[722,727],"valid",[],"NV8"],[[728,728],"disallowed_STD3_mapped",[32,774]],[[729,729],"disallowed_STD3_mapped",[32,775]],[[730,730],"disallowed_STD3_mapped",[32,778]],[[731,731],"disallowed_STD3_mapped",[32,808]],[[732,732],"disallowed_STD3_mapped",[32,771]],[[733,733],"disallowed_STD3_mapped",[32,779]],[[734,734],"valid",[],"NV8"],[[735,735],"valid",[],"NV8"],[[736,736],"mapped",[611]],[[737,737],"mapped",[108]],[[738,738],"mapped",[115]],[[739,739],"mapped",[120]],[[740,740],"mapped",[661]],[[741,745],"valid",[],"NV8"],[[746,747],"valid",[],"NV8"],[[748,748],"valid"],[[749,749],"valid",[],"NV8"],[[750,750],"valid"],[[751,767],"valid",[],"NV8"],[[768,831],"valid"],[[832,832],"mapped",[768]],[[833,833],"mapped",[769]],[[834,834],"valid"],[[835,835],"mapped",[787]],[[836,836],"mapped",[776,769]],[[837,837],"mapped",[953]],[[838,846],"valid"],[[847,847],"ignored"],[[848,855],"valid"],[[856,860],"valid"],[[861,863],"valid"],[[864,865],"valid"],[[866,866],"valid"],[[867,879],"valid"],[[880,880],"mapped",[881]],[[881,881],"valid"],[[882,882],"mapped",[883]],[[883,883],"valid"],[[884,884],"mapped",[697]],[[885,885],"valid"],[[886,886],"mapped",[887]],[[887,887],"valid"],[[888,889],"disallowed"],[[890,890],"disallowed_STD3_mapped",[32,953]],[[891,893],"valid"],[[894,894],"disallowed_STD3_mapped",[59]],[[895,895],"mapped",[1011]],[[896,899],"disallowed"],[[900,900],"disallowed_STD3_mapped",[32,769]],[[901,901],"disallowed_STD3_mapped",[32,776,769]],[[902,902],"mapped",[940]],[[903,903],"mapped",[183]],[[904,904],"mapped",[941]],[[905,905],"mapped",[942]],[[906,906],"mapped",[943]],[[907,907],"disallowed"],[[908,908],"mapped",[972]],[[909,909],"disallowed"],[[910,910],"mapped",[973]],[[911,911],"mapped",[974]],[[912,912],"valid"],[[913,913],"mapped",[945]],[[914,914],"mapped",[946]],[[915,915],"mapped",[947]],[[916,916],"mapped",[948]],[[917,917],"mapped",[949]],[[918,918],"mapped",[950]],[[919,919],"mapped",[951]],[[920,920],"mapped",[952]],[[921,921],"mapped",[953]],[[922,922],"mapped",[954]],[[923,923],"mapped",[955]],[[924,924],"mapped",[956]],[[925,925],"mapped",[957]],[[926,926],"mapped",[958]],[[927,927],"mapped",[959]],[[928,928],"mapped",[960]],[[929,929],"mapped",[961]],[[930,930],"disallowed"],[[931,931],"mapped",[963]],[[932,932],"mapped",[964]],[[933,933],"mapped",[965]],[[934,934],"mapped",[966]],[[935,935],"mapped",[967]],[[936,936],"mapped",[968]],[[937,937],"mapped",[969]],[[938,938],"mapped",[970]],[[939,939],"mapped",[971]],[[940,961],"valid"],[[962,962],"deviation",[963]],[[963,974],"valid"],[[975,975],"mapped",[983]],[[976,976],"mapped",[946]],[[977,977],"mapped",[952]],[[978,978],"mapped",[965]],[[979,979],"mapped",[973]],[[980,980],"mapped",[971]],[[981,981],"mapped",[966]],[[982,982],"mapped",[960]],[[983,983],"valid"],[[984,984],"mapped",[985]],[[985,985],"valid"],[[986,986],"mapped",[987]],[[987,987],"valid"],[[988,988],"mapped",[989]],[[989,989],"valid"],[[990,990],"mapped",[991]],[[991,991],"valid"],[[992,992],"mapped",[993]],[[993,993],"valid"],[[994,994],"mapped",[995]],[[995,995],"valid"],[[996,996],"mapped",[997]],[[997,997],"valid"],[[998,998],"mapped",[999]],[[999,999],"valid"],[[1e3,1e3],"mapped",[1001]],[[1001,1001],"valid"],[[1002,1002],"mapped",[1003]],[[1003,1003],"valid"],[[1004,1004],"mapped",[1005]],[[1005,1005],"valid"],[[1006,1006],"mapped",[1007]],[[1007,1007],"valid"],[[1008,1008],"mapped",[954]],[[1009,1009],"mapped",[961]],[[1010,1010],"mapped",[963]],[[1011,1011],"valid"],[[1012,1012],"mapped",[952]],[[1013,1013],"mapped",[949]],[[1014,1014],"valid",[],"NV8"],[[1015,1015],"mapped",[1016]],[[1016,1016],"valid"],[[1017,1017],"mapped",[963]],[[1018,1018],"mapped",[1019]],[[1019,1019],"valid"],[[1020,1020],"valid"],[[1021,1021],"mapped",[891]],[[1022,1022],"mapped",[892]],[[1023,1023],"mapped",[893]],[[1024,1024],"mapped",[1104]],[[1025,1025],"mapped",[1105]],[[1026,1026],"mapped",[1106]],[[1027,1027],"mapped",[1107]],[[1028,1028],"mapped",[1108]],[[1029,1029],"mapped",[1109]],[[1030,1030],"mapped",[1110]],[[1031,1031],"mapped",[1111]],[[1032,1032],"mapped",[1112]],[[1033,1033],"mapped",[1113]],[[1034,1034],"mapped",[1114]],[[1035,1035],"mapped",[1115]],[[1036,1036],"mapped",[1116]],[[1037,1037],"mapped",[1117]],[[1038,1038],"mapped",[1118]],[[1039,1039],"mapped",[1119]],[[1040,1040],"mapped",[1072]],[[1041,1041],"mapped",[1073]],[[1042,1042],"mapped",[1074]],[[1043,1043],"mapped",[1075]],[[1044,1044],"mapped",[1076]],[[1045,1045],"mapped",[1077]],[[1046,1046],"mapped",[1078]],[[1047,1047],"mapped",[1079]],[[1048,1048],"mapped",[1080]],[[1049,1049],"mapped",[1081]],[[1050,1050],"mapped",[1082]],[[1051,1051],"mapped",[1083]],[[1052,1052],"mapped",[1084]],[[1053,1053],"mapped",[1085]],[[1054,1054],"mapped",[1086]],[[1055,1055],"mapped",[1087]],[[1056,1056],"mapped",[1088]],[[1057,1057],"mapped",[1089]],[[1058,1058],"mapped",[1090]],[[1059,1059],"mapped",[1091]],[[1060,1060],"mapped",[1092]],[[1061,1061],"mapped",[1093]],[[1062,1062],"mapped",[1094]],[[1063,1063],"mapped",[1095]],[[1064,1064],"mapped",[1096]],[[1065,1065],"mapped",[1097]],[[1066,1066],"mapped",[1098]],[[1067,1067],"mapped",[1099]],[[1068,1068],"mapped",[1100]],[[1069,1069],"mapped",[1101]],[[1070,1070],"mapped",[1102]],[[1071,1071],"mapped",[1103]],[[1072,1103],"valid"],[[1104,1104],"valid"],[[1105,1116],"valid"],[[1117,1117],"valid"],[[1118,1119],"valid"],[[1120,1120],"mapped",[1121]],[[1121,1121],"valid"],[[1122,1122],"mapped",[1123]],[[1123,1123],"valid"],[[1124,1124],"mapped",[1125]],[[1125,1125],"valid"],[[1126,1126],"mapped",[1127]],[[1127,1127],"valid"],[[1128,1128],"mapped",[1129]],[[1129,1129],"valid"],[[1130,1130],"mapped",[1131]],[[1131,1131],"valid"],[[1132,1132],"mapped",[1133]],[[1133,1133],"valid"],[[1134,1134],"mapped",[1135]],[[1135,1135],"valid"],[[1136,1136],"mapped",[1137]],[[1137,1137],"valid"],[[1138,1138],"mapped",[1139]],[[1139,1139],"valid"],[[1140,1140],"mapped",[1141]],[[1141,1141],"valid"],[[1142,1142],"mapped",[1143]],[[1143,1143],"valid"],[[1144,1144],"mapped",[1145]],[[1145,1145],"valid"],[[1146,1146],"mapped",[1147]],[[1147,1147],"valid"],[[1148,1148],"mapped",[1149]],[[1149,1149],"valid"],[[1150,1150],"mapped",[1151]],[[1151,1151],"valid"],[[1152,1152],"mapped",[1153]],[[1153,1153],"valid"],[[1154,1154],"valid",[],"NV8"],[[1155,1158],"valid"],[[1159,1159],"valid"],[[1160,1161],"valid",[],"NV8"],[[1162,1162],"mapped",[1163]],[[1163,1163],"valid"],[[1164,1164],"mapped",[1165]],[[1165,1165],"valid"],[[1166,1166],"mapped",[1167]],[[1167,1167],"valid"],[[1168,1168],"mapped",[1169]],[[1169,1169],"valid"],[[1170,1170],"mapped",[1171]],[[1171,1171],"valid"],[[1172,1172],"mapped",[1173]],[[1173,1173],"valid"],[[1174,1174],"mapped",[1175]],[[1175,1175],"valid"],[[1176,1176],"mapped",[1177]],[[1177,1177],"valid"],[[1178,1178],"mapped",[1179]],[[1179,1179],"valid"],[[1180,1180],"mapped",[1181]],[[1181,1181],"valid"],[[1182,1182],"mapped",[1183]],[[1183,1183],"valid"],[[1184,1184],"mapped",[1185]],[[1185,1185],"valid"],[[1186,1186],"mapped",[1187]],[[1187,1187],"valid"],[[1188,1188],"mapped",[1189]],[[1189,1189],"valid"],[[1190,1190],"mapped",[1191]],[[1191,1191],"valid"],[[1192,1192],"mapped",[1193]],[[1193,1193],"valid"],[[1194,1194],"mapped",[1195]],[[1195,1195],"valid"],[[1196,1196],"mapped",[1197]],[[1197,1197],"valid"],[[1198,1198],"mapped",[1199]],[[1199,1199],"valid"],[[1200,1200],"mapped",[1201]],[[1201,1201],"valid"],[[1202,1202],"mapped",[1203]],[[1203,1203],"valid"],[[1204,1204],"mapped",[1205]],[[1205,1205],"valid"],[[1206,1206],"mapped",[1207]],[[1207,1207],"valid"],[[1208,1208],"mapped",[1209]],[[1209,1209],"valid"],[[1210,1210],"mapped",[1211]],[[1211,1211],"valid"],[[1212,1212],"mapped",[1213]],[[1213,1213],"valid"],[[1214,1214],"mapped",[1215]],[[1215,1215],"valid"],[[1216,1216],"disallowed"],[[1217,1217],"mapped",[1218]],[[1218,1218],"valid"],[[1219,1219],"mapped",[1220]],[[1220,1220],"valid"],[[1221,1221],"mapped",[1222]],[[1222,1222],"valid"],[[1223,1223],"mapped",[1224]],[[1224,1224],"valid"],[[1225,1225],"mapped",[1226]],[[1226,1226],"valid"],[[1227,1227],"mapped",[1228]],[[1228,1228],"valid"],[[1229,1229],"mapped",[1230]],[[1230,1230],"valid"],[[1231,1231],"valid"],[[1232,1232],"mapped",[1233]],[[1233,1233],"valid"],[[1234,1234],"mapped",[1235]],[[1235,1235],"valid"],[[1236,1236],"mapped",[1237]],[[1237,1237],"valid"],[[1238,1238],"mapped",[1239]],[[1239,1239],"valid"],[[1240,1240],"mapped",[1241]],[[1241,1241],"valid"],[[1242,1242],"mapped",[1243]],[[1243,1243],"valid"],[[1244,1244],"mapped",[1245]],[[1245,1245],"valid"],[[1246,1246],"mapped",[1247]],[[1247,1247],"valid"],[[1248,1248],"mapped",[1249]],[[1249,1249],"valid"],[[1250,1250],"mapped",[1251]],[[1251,1251],"valid"],[[1252,1252],"mapped",[1253]],[[1253,1253],"valid"],[[1254,1254],"mapped",[1255]],[[1255,1255],"valid"],[[1256,1256],"mapped",[1257]],[[1257,1257],"valid"],[[1258,1258],"mapped",[1259]],[[1259,1259],"valid"],[[1260,1260],"mapped",[1261]],[[1261,1261],"valid"],[[1262,1262],"mapped",[1263]],[[1263,1263],"valid"],[[1264,1264],"mapped",[1265]],[[1265,1265],"valid"],[[1266,1266],"mapped",[1267]],[[1267,1267],"valid"],[[1268,1268],"mapped",[1269]],[[1269,1269],"valid"],[[1270,1270],"mapped",[1271]],[[1271,1271],"valid"],[[1272,1272],"mapped",[1273]],[[1273,1273],"valid"],[[1274,1274],"mapped",[1275]],[[1275,1275],"valid"],[[1276,1276],"mapped",[1277]],[[1277,1277],"valid"],[[1278,1278],"mapped",[1279]],[[1279,1279],"valid"],[[1280,1280],"mapped",[1281]],[[1281,1281],"valid"],[[1282,1282],"mapped",[1283]],[[1283,1283],"valid"],[[1284,1284],"mapped",[1285]],[[1285,1285],"valid"],[[1286,1286],"mapped",[1287]],[[1287,1287],"valid"],[[1288,1288],"mapped",[1289]],[[1289,1289],"valid"],[[1290,1290],"mapped",[1291]],[[1291,1291],"valid"],[[1292,1292],"mapped",[1293]],[[1293,1293],"valid"],[[1294,1294],"mapped",[1295]],[[1295,1295],"valid"],[[1296,1296],"mapped",[1297]],[[1297,1297],"valid"],[[1298,1298],"mapped",[1299]],[[1299,1299],"valid"],[[1300,1300],"mapped",[1301]],[[1301,1301],"valid"],[[1302,1302],"mapped",[1303]],[[1303,1303],"valid"],[[1304,1304],"mapped",[1305]],[[1305,1305],"valid"],[[1306,1306],"mapped",[1307]],[[1307,1307],"valid"],[[1308,1308],"mapped",[1309]],[[1309,1309],"valid"],[[1310,1310],"mapped",[1311]],[[1311,1311],"valid"],[[1312,1312],"mapped",[1313]],[[1313,1313],"valid"],[[1314,1314],"mapped",[1315]],[[1315,1315],"valid"],[[1316,1316],"mapped",[1317]],[[1317,1317],"valid"],[[1318,1318],"mapped",[1319]],[[1319,1319],"valid"],[[1320,1320],"mapped",[1321]],[[1321,1321],"valid"],[[1322,1322],"mapped",[1323]],[[1323,1323],"valid"],[[1324,1324],"mapped",[1325]],[[1325,1325],"valid"],[[1326,1326],"mapped",[1327]],[[1327,1327],"valid"],[[1328,1328],"disallowed"],[[1329,1329],"mapped",[1377]],[[1330,1330],"mapped",[1378]],[[1331,1331],"mapped",[1379]],[[1332,1332],"mapped",[1380]],[[1333,1333],"mapped",[1381]],[[1334,1334],"mapped",[1382]],[[1335,1335],"mapped",[1383]],[[1336,1336],"mapped",[1384]],[[1337,1337],"mapped",[1385]],[[1338,1338],"mapped",[1386]],[[1339,1339],"mapped",[1387]],[[1340,1340],"mapped",[1388]],[[1341,1341],"mapped",[1389]],[[1342,1342],"mapped",[1390]],[[1343,1343],"mapped",[1391]],[[1344,1344],"mapped",[1392]],[[1345,1345],"mapped",[1393]],[[1346,1346],"mapped",[1394]],[[1347,1347],"mapped",[1395]],[[1348,1348],"mapped",[1396]],[[1349,1349],"mapped",[1397]],[[1350,1350],"mapped",[1398]],[[1351,1351],"mapped",[1399]],[[1352,1352],"mapped",[1400]],[[1353,1353],"mapped",[1401]],[[1354,1354],"mapped",[1402]],[[1355,1355],"mapped",[1403]],[[1356,1356],"mapped",[1404]],[[1357,1357],"mapped",[1405]],[[1358,1358],"mapped",[1406]],[[1359,1359],"mapped",[1407]],[[1360,1360],"mapped",[1408]],[[1361,1361],"mapped",[1409]],[[1362,1362],"mapped",[1410]],[[1363,1363],"mapped",[1411]],[[1364,1364],"mapped",[1412]],[[1365,1365],"mapped",[1413]],[[1366,1366],"mapped",[1414]],[[1367,1368],"disallowed"],[[1369,1369],"valid"],[[1370,1375],"valid",[],"NV8"],[[1376,1376],"disallowed"],[[1377,1414],"valid"],[[1415,1415],"mapped",[1381,1410]],[[1416,1416],"disallowed"],[[1417,1417],"valid",[],"NV8"],[[1418,1418],"valid",[],"NV8"],[[1419,1420],"disallowed"],[[1421,1422],"valid",[],"NV8"],[[1423,1423],"valid",[],"NV8"],[[1424,1424],"disallowed"],[[1425,1441],"valid"],[[1442,1442],"valid"],[[1443,1455],"valid"],[[1456,1465],"valid"],[[1466,1466],"valid"],[[1467,1469],"valid"],[[1470,1470],"valid",[],"NV8"],[[1471,1471],"valid"],[[1472,1472],"valid",[],"NV8"],[[1473,1474],"valid"],[[1475,1475],"valid",[],"NV8"],[[1476,1476],"valid"],[[1477,1477],"valid"],[[1478,1478],"valid",[],"NV8"],[[1479,1479],"valid"],[[1480,1487],"disallowed"],[[1488,1514],"valid"],[[1515,1519],"disallowed"],[[1520,1524],"valid"],[[1525,1535],"disallowed"],[[1536,1539],"disallowed"],[[1540,1540],"disallowed"],[[1541,1541],"disallowed"],[[1542,1546],"valid",[],"NV8"],[[1547,1547],"valid",[],"NV8"],[[1548,1548],"valid",[],"NV8"],[[1549,1551],"valid",[],"NV8"],[[1552,1557],"valid"],[[1558,1562],"valid"],[[1563,1563],"valid",[],"NV8"],[[1564,1564],"disallowed"],[[1565,1565],"disallowed"],[[1566,1566],"valid",[],"NV8"],[[1567,1567],"valid",[],"NV8"],[[1568,1568],"valid"],[[1569,1594],"valid"],[[1595,1599],"valid"],[[1600,1600],"valid",[],"NV8"],[[1601,1618],"valid"],[[1619,1621],"valid"],[[1622,1624],"valid"],[[1625,1630],"valid"],[[1631,1631],"valid"],[[1632,1641],"valid"],[[1642,1645],"valid",[],"NV8"],[[1646,1647],"valid"],[[1648,1652],"valid"],[[1653,1653],"mapped",[1575,1652]],[[1654,1654],"mapped",[1608,1652]],[[1655,1655],"mapped",[1735,1652]],[[1656,1656],"mapped",[1610,1652]],[[1657,1719],"valid"],[[1720,1721],"valid"],[[1722,1726],"valid"],[[1727,1727],"valid"],[[1728,1742],"valid"],[[1743,1743],"valid"],[[1744,1747],"valid"],[[1748,1748],"valid",[],"NV8"],[[1749,1756],"valid"],[[1757,1757],"disallowed"],[[1758,1758],"valid",[],"NV8"],[[1759,1768],"valid"],[[1769,1769],"valid",[],"NV8"],[[1770,1773],"valid"],[[1774,1775],"valid"],[[1776,1785],"valid"],[[1786,1790],"valid"],[[1791,1791],"valid"],[[1792,1805],"valid",[],"NV8"],[[1806,1806],"disallowed"],[[1807,1807],"disallowed"],[[1808,1836],"valid"],[[1837,1839],"valid"],[[1840,1866],"valid"],[[1867,1868],"disallowed"],[[1869,1871],"valid"],[[1872,1901],"valid"],[[1902,1919],"valid"],[[1920,1968],"valid"],[[1969,1969],"valid"],[[1970,1983],"disallowed"],[[1984,2037],"valid"],[[2038,2042],"valid",[],"NV8"],[[2043,2047],"disallowed"],[[2048,2093],"valid"],[[2094,2095],"disallowed"],[[2096,2110],"valid",[],"NV8"],[[2111,2111],"disallowed"],[[2112,2139],"valid"],[[2140,2141],"disallowed"],[[2142,2142],"valid",[],"NV8"],[[2143,2207],"disallowed"],[[2208,2208],"valid"],[[2209,2209],"valid"],[[2210,2220],"valid"],[[2221,2226],"valid"],[[2227,2228],"valid"],[[2229,2274],"disallowed"],[[2275,2275],"valid"],[[2276,2302],"valid"],[[2303,2303],"valid"],[[2304,2304],"valid"],[[2305,2307],"valid"],[[2308,2308],"valid"],[[2309,2361],"valid"],[[2362,2363],"valid"],[[2364,2381],"valid"],[[2382,2382],"valid"],[[2383,2383],"valid"],[[2384,2388],"valid"],[[2389,2389],"valid"],[[2390,2391],"valid"],[[2392,2392],"mapped",[2325,2364]],[[2393,2393],"mapped",[2326,2364]],[[2394,2394],"mapped",[2327,2364]],[[2395,2395],"mapped",[2332,2364]],[[2396,2396],"mapped",[2337,2364]],[[2397,2397],"mapped",[2338,2364]],[[2398,2398],"mapped",[2347,2364]],[[2399,2399],"mapped",[2351,2364]],[[2400,2403],"valid"],[[2404,2405],"valid",[],"NV8"],[[2406,2415],"valid"],[[2416,2416],"valid",[],"NV8"],[[2417,2418],"valid"],[[2419,2423],"valid"],[[2424,2424],"valid"],[[2425,2426],"valid"],[[2427,2428],"valid"],[[2429,2429],"valid"],[[2430,2431],"valid"],[[2432,2432],"valid"],[[2433,2435],"valid"],[[2436,2436],"disallowed"],[[2437,2444],"valid"],[[2445,2446],"disallowed"],[[2447,2448],"valid"],[[2449,2450],"disallowed"],[[2451,2472],"valid"],[[2473,2473],"disallowed"],[[2474,2480],"valid"],[[2481,2481],"disallowed"],[[2482,2482],"valid"],[[2483,2485],"disallowed"],[[2486,2489],"valid"],[[2490,2491],"disallowed"],[[2492,2492],"valid"],[[2493,2493],"valid"],[[2494,2500],"valid"],[[2501,2502],"disallowed"],[[2503,2504],"valid"],[[2505,2506],"disallowed"],[[2507,2509],"valid"],[[2510,2510],"valid"],[[2511,2518],"disallowed"],[[2519,2519],"valid"],[[2520,2523],"disallowed"],[[2524,2524],"mapped",[2465,2492]],[[2525,2525],"mapped",[2466,2492]],[[2526,2526],"disallowed"],[[2527,2527],"mapped",[2479,2492]],[[2528,2531],"valid"],[[2532,2533],"disallowed"],[[2534,2545],"valid"],[[2546,2554],"valid",[],"NV8"],[[2555,2555],"valid",[],"NV8"],[[2556,2560],"disallowed"],[[2561,2561],"valid"],[[2562,2562],"valid"],[[2563,2563],"valid"],[[2564,2564],"disallowed"],[[2565,2570],"valid"],[[2571,2574],"disallowed"],[[2575,2576],"valid"],[[2577,2578],"disallowed"],[[2579,2600],"valid"],[[2601,2601],"disallowed"],[[2602,2608],"valid"],[[2609,2609],"disallowed"],[[2610,2610],"valid"],[[2611,2611],"mapped",[2610,2620]],[[2612,2612],"disallowed"],[[2613,2613],"valid"],[[2614,2614],"mapped",[2616,2620]],[[2615,2615],"disallowed"],[[2616,2617],"valid"],[[2618,2619],"disallowed"],[[2620,2620],"valid"],[[2621,2621],"disallowed"],[[2622,2626],"valid"],[[2627,2630],"disallowed"],[[2631,2632],"valid"],[[2633,2634],"disallowed"],[[2635,2637],"valid"],[[2638,2640],"disallowed"],[[2641,2641],"valid"],[[2642,2648],"disallowed"],[[2649,2649],"mapped",[2582,2620]],[[2650,2650],"mapped",[2583,2620]],[[2651,2651],"mapped",[2588,2620]],[[2652,2652],"valid"],[[2653,2653],"disallowed"],[[2654,2654],"mapped",[2603,2620]],[[2655,2661],"disallowed"],[[2662,2676],"valid"],[[2677,2677],"valid"],[[2678,2688],"disallowed"],[[2689,2691],"valid"],[[2692,2692],"disallowed"],[[2693,2699],"valid"],[[2700,2700],"valid"],[[2701,2701],"valid"],[[2702,2702],"disallowed"],[[2703,2705],"valid"],[[2706,2706],"disallowed"],[[2707,2728],"valid"],[[2729,2729],"disallowed"],[[2730,2736],"valid"],[[2737,2737],"disallowed"],[[2738,2739],"valid"],[[2740,2740],"disallowed"],[[2741,2745],"valid"],[[2746,2747],"disallowed"],[[2748,2757],"valid"],[[2758,2758],"disallowed"],[[2759,2761],"valid"],[[2762,2762],"disallowed"],[[2763,2765],"valid"],[[2766,2767],"disallowed"],[[2768,2768],"valid"],[[2769,2783],"disallowed"],[[2784,2784],"valid"],[[2785,2787],"valid"],[[2788,2789],"disallowed"],[[2790,2799],"valid"],[[2800,2800],"valid",[],"NV8"],[[2801,2801],"valid",[],"NV8"],[[2802,2808],"disallowed"],[[2809,2809],"valid"],[[2810,2816],"disallowed"],[[2817,2819],"valid"],[[2820,2820],"disallowed"],[[2821,2828],"valid"],[[2829,2830],"disallowed"],[[2831,2832],"valid"],[[2833,2834],"disallowed"],[[2835,2856],"valid"],[[2857,2857],"disallowed"],[[2858,2864],"valid"],[[2865,2865],"disallowed"],[[2866,2867],"valid"],[[2868,2868],"disallowed"],[[2869,2869],"valid"],[[2870,2873],"valid"],[[2874,2875],"disallowed"],[[2876,2883],"valid"],[[2884,2884],"valid"],[[2885,2886],"disallowed"],[[2887,2888],"valid"],[[2889,2890],"disallowed"],[[2891,2893],"valid"],[[2894,2901],"disallowed"],[[2902,2903],"valid"],[[2904,2907],"disallowed"],[[2908,2908],"mapped",[2849,2876]],[[2909,2909],"mapped",[2850,2876]],[[2910,2910],"disallowed"],[[2911,2913],"valid"],[[2914,2915],"valid"],[[2916,2917],"disallowed"],[[2918,2927],"valid"],[[2928,2928],"valid",[],"NV8"],[[2929,2929],"valid"],[[2930,2935],"valid",[],"NV8"],[[2936,2945],"disallowed"],[[2946,2947],"valid"],[[2948,2948],"disallowed"],[[2949,2954],"valid"],[[2955,2957],"disallowed"],[[2958,2960],"valid"],[[2961,2961],"disallowed"],[[2962,2965],"valid"],[[2966,2968],"disallowed"],[[2969,2970],"valid"],[[2971,2971],"disallowed"],[[2972,2972],"valid"],[[2973,2973],"disallowed"],[[2974,2975],"valid"],[[2976,2978],"disallowed"],[[2979,2980],"valid"],[[2981,2983],"disallowed"],[[2984,2986],"valid"],[[2987,2989],"disallowed"],[[2990,2997],"valid"],[[2998,2998],"valid"],[[2999,3001],"valid"],[[3002,3005],"disallowed"],[[3006,3010],"valid"],[[3011,3013],"disallowed"],[[3014,3016],"valid"],[[3017,3017],"disallowed"],[[3018,3021],"valid"],[[3022,3023],"disallowed"],[[3024,3024],"valid"],[[3025,3030],"disallowed"],[[3031,3031],"valid"],[[3032,3045],"disallowed"],[[3046,3046],"valid"],[[3047,3055],"valid"],[[3056,3058],"valid",[],"NV8"],[[3059,3066],"valid",[],"NV8"],[[3067,3071],"disallowed"],[[3072,3072],"valid"],[[3073,3075],"valid"],[[3076,3076],"disallowed"],[[3077,3084],"valid"],[[3085,3085],"disallowed"],[[3086,3088],"valid"],[[3089,3089],"disallowed"],[[3090,3112],"valid"],[[3113,3113],"disallowed"],[[3114,3123],"valid"],[[3124,3124],"valid"],[[3125,3129],"valid"],[[3130,3132],"disallowed"],[[3133,3133],"valid"],[[3134,3140],"valid"],[[3141,3141],"disallowed"],[[3142,3144],"valid"],[[3145,3145],"disallowed"],[[3146,3149],"valid"],[[3150,3156],"disallowed"],[[3157,3158],"valid"],[[3159,3159],"disallowed"],[[3160,3161],"valid"],[[3162,3162],"valid"],[[3163,3167],"disallowed"],[[3168,3169],"valid"],[[3170,3171],"valid"],[[3172,3173],"disallowed"],[[3174,3183],"valid"],[[3184,3191],"disallowed"],[[3192,3199],"valid",[],"NV8"],[[3200,3200],"disallowed"],[[3201,3201],"valid"],[[3202,3203],"valid"],[[3204,3204],"disallowed"],[[3205,3212],"valid"],[[3213,3213],"disallowed"],[[3214,3216],"valid"],[[3217,3217],"disallowed"],[[3218,3240],"valid"],[[3241,3241],"disallowed"],[[3242,3251],"valid"],[[3252,3252],"disallowed"],[[3253,3257],"valid"],[[3258,3259],"disallowed"],[[3260,3261],"valid"],[[3262,3268],"valid"],[[3269,3269],"disallowed"],[[3270,3272],"valid"],[[3273,3273],"disallowed"],[[3274,3277],"valid"],[[3278,3284],"disallowed"],[[3285,3286],"valid"],[[3287,3293],"disallowed"],[[3294,3294],"valid"],[[3295,3295],"disallowed"],[[3296,3297],"valid"],[[3298,3299],"valid"],[[3300,3301],"disallowed"],[[3302,3311],"valid"],[[3312,3312],"disallowed"],[[3313,3314],"valid"],[[3315,3328],"disallowed"],[[3329,3329],"valid"],[[3330,3331],"valid"],[[3332,3332],"disallowed"],[[3333,3340],"valid"],[[3341,3341],"disallowed"],[[3342,3344],"valid"],[[3345,3345],"disallowed"],[[3346,3368],"valid"],[[3369,3369],"valid"],[[3370,3385],"valid"],[[3386,3386],"valid"],[[3387,3388],"disallowed"],[[3389,3389],"valid"],[[3390,3395],"valid"],[[3396,3396],"valid"],[[3397,3397],"disallowed"],[[3398,3400],"valid"],[[3401,3401],"disallowed"],[[3402,3405],"valid"],[[3406,3406],"valid"],[[3407,3414],"disallowed"],[[3415,3415],"valid"],[[3416,3422],"disallowed"],[[3423,3423],"valid"],[[3424,3425],"valid"],[[3426,3427],"valid"],[[3428,3429],"disallowed"],[[3430,3439],"valid"],[[3440,3445],"valid",[],"NV8"],[[3446,3448],"disallowed"],[[3449,3449],"valid",[],"NV8"],[[3450,3455],"valid"],[[3456,3457],"disallowed"],[[3458,3459],"valid"],[[3460,3460],"disallowed"],[[3461,3478],"valid"],[[3479,3481],"disallowed"],[[3482,3505],"valid"],[[3506,3506],"disallowed"],[[3507,3515],"valid"],[[3516,3516],"disallowed"],[[3517,3517],"valid"],[[3518,3519],"disallowed"],[[3520,3526],"valid"],[[3527,3529],"disallowed"],[[3530,3530],"valid"],[[3531,3534],"disallowed"],[[3535,3540],"valid"],[[3541,3541],"disallowed"],[[3542,3542],"valid"],[[3543,3543],"disallowed"],[[3544,3551],"valid"],[[3552,3557],"disallowed"],[[3558,3567],"valid"],[[3568,3569],"disallowed"],[[3570,3571],"valid"],[[3572,3572],"valid",[],"NV8"],[[3573,3584],"disallowed"],[[3585,3634],"valid"],[[3635,3635],"mapped",[3661,3634]],[[3636,3642],"valid"],[[3643,3646],"disallowed"],[[3647,3647],"valid",[],"NV8"],[[3648,3662],"valid"],[[3663,3663],"valid",[],"NV8"],[[3664,3673],"valid"],[[3674,3675],"valid",[],"NV8"],[[3676,3712],"disallowed"],[[3713,3714],"valid"],[[3715,3715],"disallowed"],[[3716,3716],"valid"],[[3717,3718],"disallowed"],[[3719,3720],"valid"],[[3721,3721],"disallowed"],[[3722,3722],"valid"],[[3723,3724],"disallowed"],[[3725,3725],"valid"],[[3726,3731],"disallowed"],[[3732,3735],"valid"],[[3736,3736],"disallowed"],[[3737,3743],"valid"],[[3744,3744],"disallowed"],[[3745,3747],"valid"],[[3748,3748],"disallowed"],[[3749,3749],"valid"],[[3750,3750],"disallowed"],[[3751,3751],"valid"],[[3752,3753],"disallowed"],[[3754,3755],"valid"],[[3756,3756],"disallowed"],[[3757,3762],"valid"],[[3763,3763],"mapped",[3789,3762]],[[3764,3769],"valid"],[[3770,3770],"disallowed"],[[3771,3773],"valid"],[[3774,3775],"disallowed"],[[3776,3780],"valid"],[[3781,3781],"disallowed"],[[3782,3782],"valid"],[[3783,3783],"disallowed"],[[3784,3789],"valid"],[[3790,3791],"disallowed"],[[3792,3801],"valid"],[[3802,3803],"disallowed"],[[3804,3804],"mapped",[3755,3737]],[[3805,3805],"mapped",[3755,3745]],[[3806,3807],"valid"],[[3808,3839],"disallowed"],[[3840,3840],"valid"],[[3841,3850],"valid",[],"NV8"],[[3851,3851],"valid"],[[3852,3852],"mapped",[3851]],[[3853,3863],"valid",[],"NV8"],[[3864,3865],"valid"],[[3866,3871],"valid",[],"NV8"],[[3872,3881],"valid"],[[3882,3892],"valid",[],"NV8"],[[3893,3893],"valid"],[[3894,3894],"valid",[],"NV8"],[[3895,3895],"valid"],[[3896,3896],"valid",[],"NV8"],[[3897,3897],"valid"],[[3898,3901],"valid",[],"NV8"],[[3902,3906],"valid"],[[3907,3907],"mapped",[3906,4023]],[[3908,3911],"valid"],[[3912,3912],"disallowed"],[[3913,3916],"valid"],[[3917,3917],"mapped",[3916,4023]],[[3918,3921],"valid"],[[3922,3922],"mapped",[3921,4023]],[[3923,3926],"valid"],[[3927,3927],"mapped",[3926,4023]],[[3928,3931],"valid"],[[3932,3932],"mapped",[3931,4023]],[[3933,3944],"valid"],[[3945,3945],"mapped",[3904,4021]],[[3946,3946],"valid"],[[3947,3948],"valid"],[[3949,3952],"disallowed"],[[3953,3954],"valid"],[[3955,3955],"mapped",[3953,3954]],[[3956,3956],"valid"],[[3957,3957],"mapped",[3953,3956]],[[3958,3958],"mapped",[4018,3968]],[[3959,3959],"mapped",[4018,3953,3968]],[[3960,3960],"mapped",[4019,3968]],[[3961,3961],"mapped",[4019,3953,3968]],[[3962,3968],"valid"],[[3969,3969],"mapped",[3953,3968]],[[3970,3972],"valid"],[[3973,3973],"valid",[],"NV8"],[[3974,3979],"valid"],[[3980,3983],"valid"],[[3984,3986],"valid"],[[3987,3987],"mapped",[3986,4023]],[[3988,3989],"valid"],[[3990,3990],"valid"],[[3991,3991],"valid"],[[3992,3992],"disallowed"],[[3993,3996],"valid"],[[3997,3997],"mapped",[3996,4023]],[[3998,4001],"valid"],[[4002,4002],"mapped",[4001,4023]],[[4003,4006],"valid"],[[4007,4007],"mapped",[4006,4023]],[[4008,4011],"valid"],[[4012,4012],"mapped",[4011,4023]],[[4013,4013],"valid"],[[4014,4016],"valid"],[[4017,4023],"valid"],[[4024,4024],"valid"],[[4025,4025],"mapped",[3984,4021]],[[4026,4028],"valid"],[[4029,4029],"disallowed"],[[4030,4037],"valid",[],"NV8"],[[4038,4038],"valid"],[[4039,4044],"valid",[],"NV8"],[[4045,4045],"disallowed"],[[4046,4046],"valid",[],"NV8"],[[4047,4047],"valid",[],"NV8"],[[4048,4049],"valid",[],"NV8"],[[4050,4052],"valid",[],"NV8"],[[4053,4056],"valid",[],"NV8"],[[4057,4058],"valid",[],"NV8"],[[4059,4095],"disallowed"],[[4096,4129],"valid"],[[4130,4130],"valid"],[[4131,4135],"valid"],[[4136,4136],"valid"],[[4137,4138],"valid"],[[4139,4139],"valid"],[[4140,4146],"valid"],[[4147,4149],"valid"],[[4150,4153],"valid"],[[4154,4159],"valid"],[[4160,4169],"valid"],[[4170,4175],"valid",[],"NV8"],[[4176,4185],"valid"],[[4186,4249],"valid"],[[4250,4253],"valid"],[[4254,4255],"valid",[],"NV8"],[[4256,4293],"disallowed"],[[4294,4294],"disallowed"],[[4295,4295],"mapped",[11559]],[[4296,4300],"disallowed"],[[4301,4301],"mapped",[11565]],[[4302,4303],"disallowed"],[[4304,4342],"valid"],[[4343,4344],"valid"],[[4345,4346],"valid"],[[4347,4347],"valid",[],"NV8"],[[4348,4348],"mapped",[4316]],[[4349,4351],"valid"],[[4352,4441],"valid",[],"NV8"],[[4442,4446],"valid",[],"NV8"],[[4447,4448],"disallowed"],[[4449,4514],"valid",[],"NV8"],[[4515,4519],"valid",[],"NV8"],[[4520,4601],"valid",[],"NV8"],[[4602,4607],"valid",[],"NV8"],[[4608,4614],"valid"],[[4615,4615],"valid"],[[4616,4678],"valid"],[[4679,4679],"valid"],[[4680,4680],"valid"],[[4681,4681],"disallowed"],[[4682,4685],"valid"],[[4686,4687],"disallowed"],[[4688,4694],"valid"],[[4695,4695],"disallowed"],[[4696,4696],"valid"],[[4697,4697],"disallowed"],[[4698,4701],"valid"],[[4702,4703],"disallowed"],[[4704,4742],"valid"],[[4743,4743],"valid"],[[4744,4744],"valid"],[[4745,4745],"disallowed"],[[4746,4749],"valid"],[[4750,4751],"disallowed"],[[4752,4782],"valid"],[[4783,4783],"valid"],[[4784,4784],"valid"],[[4785,4785],"disallowed"],[[4786,4789],"valid"],[[4790,4791],"disallowed"],[[4792,4798],"valid"],[[4799,4799],"disallowed"],[[4800,4800],"valid"],[[4801,4801],"disallowed"],[[4802,4805],"valid"],[[4806,4807],"disallowed"],[[4808,4814],"valid"],[[4815,4815],"valid"],[[4816,4822],"valid"],[[4823,4823],"disallowed"],[[4824,4846],"valid"],[[4847,4847],"valid"],[[4848,4878],"valid"],[[4879,4879],"valid"],[[4880,4880],"valid"],[[4881,4881],"disallowed"],[[4882,4885],"valid"],[[4886,4887],"disallowed"],[[4888,4894],"valid"],[[4895,4895],"valid"],[[4896,4934],"valid"],[[4935,4935],"valid"],[[4936,4954],"valid"],[[4955,4956],"disallowed"],[[4957,4958],"valid"],[[4959,4959],"valid"],[[4960,4960],"valid",[],"NV8"],[[4961,4988],"valid",[],"NV8"],[[4989,4991],"disallowed"],[[4992,5007],"valid"],[[5008,5017],"valid",[],"NV8"],[[5018,5023],"disallowed"],[[5024,5108],"valid"],[[5109,5109],"valid"],[[5110,5111],"disallowed"],[[5112,5112],"mapped",[5104]],[[5113,5113],"mapped",[5105]],[[5114,5114],"mapped",[5106]],[[5115,5115],"mapped",[5107]],[[5116,5116],"mapped",[5108]],[[5117,5117],"mapped",[5109]],[[5118,5119],"disallowed"],[[5120,5120],"valid",[],"NV8"],[[5121,5740],"valid"],[[5741,5742],"valid",[],"NV8"],[[5743,5750],"valid"],[[5751,5759],"valid"],[[5760,5760],"disallowed"],[[5761,5786],"valid"],[[5787,5788],"valid",[],"NV8"],[[5789,5791],"disallowed"],[[5792,5866],"valid"],[[5867,5872],"valid",[],"NV8"],[[5873,5880],"valid"],[[5881,5887],"disallowed"],[[5888,5900],"valid"],[[5901,5901],"disallowed"],[[5902,5908],"valid"],[[5909,5919],"disallowed"],[[5920,5940],"valid"],[[5941,5942],"valid",[],"NV8"],[[5943,5951],"disallowed"],[[5952,5971],"valid"],[[5972,5983],"disallowed"],[[5984,5996],"valid"],[[5997,5997],"disallowed"],[[5998,6e3],"valid"],[[6001,6001],"disallowed"],[[6002,6003],"valid"],[[6004,6015],"disallowed"],[[6016,6067],"valid"],[[6068,6069],"disallowed"],[[6070,6099],"valid"],[[6100,6102],"valid",[],"NV8"],[[6103,6103],"valid"],[[6104,6107],"valid",[],"NV8"],[[6108,6108],"valid"],[[6109,6109],"valid"],[[6110,6111],"disallowed"],[[6112,6121],"valid"],[[6122,6127],"disallowed"],[[6128,6137],"valid",[],"NV8"],[[6138,6143],"disallowed"],[[6144,6149],"valid",[],"NV8"],[[6150,6150],"disallowed"],[[6151,6154],"valid",[],"NV8"],[[6155,6157],"ignored"],[[6158,6158],"disallowed"],[[6159,6159],"disallowed"],[[6160,6169],"valid"],[[6170,6175],"disallowed"],[[6176,6263],"valid"],[[6264,6271],"disallowed"],[[6272,6313],"valid"],[[6314,6314],"valid"],[[6315,6319],"disallowed"],[[6320,6389],"valid"],[[6390,6399],"disallowed"],[[6400,6428],"valid"],[[6429,6430],"valid"],[[6431,6431],"disallowed"],[[6432,6443],"valid"],[[6444,6447],"disallowed"],[[6448,6459],"valid"],[[6460,6463],"disallowed"],[[6464,6464],"valid",[],"NV8"],[[6465,6467],"disallowed"],[[6468,6469],"valid",[],"NV8"],[[6470,6509],"valid"],[[6510,6511],"disallowed"],[[6512,6516],"valid"],[[6517,6527],"disallowed"],[[6528,6569],"valid"],[[6570,6571],"valid"],[[6572,6575],"disallowed"],[[6576,6601],"valid"],[[6602,6607],"disallowed"],[[6608,6617],"valid"],[[6618,6618],"valid",[],"XV8"],[[6619,6621],"disallowed"],[[6622,6623],"valid",[],"NV8"],[[6624,6655],"valid",[],"NV8"],[[6656,6683],"valid"],[[6684,6685],"disallowed"],[[6686,6687],"valid",[],"NV8"],[[6688,6750],"valid"],[[6751,6751],"disallowed"],[[6752,6780],"valid"],[[6781,6782],"disallowed"],[[6783,6793],"valid"],[[6794,6799],"disallowed"],[[6800,6809],"valid"],[[6810,6815],"disallowed"],[[6816,6822],"valid",[],"NV8"],[[6823,6823],"valid"],[[6824,6829],"valid",[],"NV8"],[[6830,6831],"disallowed"],[[6832,6845],"valid"],[[6846,6846],"valid",[],"NV8"],[[6847,6911],"disallowed"],[[6912,6987],"valid"],[[6988,6991],"disallowed"],[[6992,7001],"valid"],[[7002,7018],"valid",[],"NV8"],[[7019,7027],"valid"],[[7028,7036],"valid",[],"NV8"],[[7037,7039],"disallowed"],[[7040,7082],"valid"],[[7083,7085],"valid"],[[7086,7097],"valid"],[[7098,7103],"valid"],[[7104,7155],"valid"],[[7156,7163],"disallowed"],[[7164,7167],"valid",[],"NV8"],[[7168,7223],"valid"],[[7224,7226],"disallowed"],[[7227,7231],"valid",[],"NV8"],[[7232,7241],"valid"],[[7242,7244],"disallowed"],[[7245,7293],"valid"],[[7294,7295],"valid",[],"NV8"],[[7296,7359],"disallowed"],[[7360,7367],"valid",[],"NV8"],[[7368,7375],"disallowed"],[[7376,7378],"valid"],[[7379,7379],"valid",[],"NV8"],[[7380,7410],"valid"],[[7411,7414],"valid"],[[7415,7415],"disallowed"],[[7416,7417],"valid"],[[7418,7423],"disallowed"],[[7424,7467],"valid"],[[7468,7468],"mapped",[97]],[[7469,7469],"mapped",[230]],[[7470,7470],"mapped",[98]],[[7471,7471],"valid"],[[7472,7472],"mapped",[100]],[[7473,7473],"mapped",[101]],[[7474,7474],"mapped",[477]],[[7475,7475],"mapped",[103]],[[7476,7476],"mapped",[104]],[[7477,7477],"mapped",[105]],[[7478,7478],"mapped",[106]],[[7479,7479],"mapped",[107]],[[7480,7480],"mapped",[108]],[[7481,7481],"mapped",[109]],[[7482,7482],"mapped",[110]],[[7483,7483],"valid"],[[7484,7484],"mapped",[111]],[[7485,7485],"mapped",[547]],[[7486,7486],"mapped",[112]],[[7487,7487],"mapped",[114]],[[7488,7488],"mapped",[116]],[[7489,7489],"mapped",[117]],[[7490,7490],"mapped",[119]],[[7491,7491],"mapped",[97]],[[7492,7492],"mapped",[592]],[[7493,7493],"mapped",[593]],[[7494,7494],"mapped",[7426]],[[7495,7495],"mapped",[98]],[[7496,7496],"mapped",[100]],[[7497,7497],"mapped",[101]],[[7498,7498],"mapped",[601]],[[7499,7499],"mapped",[603]],[[7500,7500],"mapped",[604]],[[7501,7501],"mapped",[103]],[[7502,7502],"valid"],[[7503,7503],"mapped",[107]],[[7504,7504],"mapped",[109]],[[7505,7505],"mapped",[331]],[[7506,7506],"mapped",[111]],[[7507,7507],"mapped",[596]],[[7508,7508],"mapped",[7446]],[[7509,7509],"mapped",[7447]],[[7510,7510],"mapped",[112]],[[7511,7511],"mapped",[116]],[[7512,7512],"mapped",[117]],[[7513,7513],"mapped",[7453]],[[7514,7514],"mapped",[623]],[[7515,7515],"mapped",[118]],[[7516,7516],"mapped",[7461]],[[7517,7517],"mapped",[946]],[[7518,7518],"mapped",[947]],[[7519,7519],"mapped",[948]],[[7520,7520],"mapped",[966]],[[7521,7521],"mapped",[967]],[[7522,7522],"mapped",[105]],[[7523,7523],"mapped",[114]],[[7524,7524],"mapped",[117]],[[7525,7525],"mapped",[118]],[[7526,7526],"mapped",[946]],[[7527,7527],"mapped",[947]],[[7528,7528],"mapped",[961]],[[7529,7529],"mapped",[966]],[[7530,7530],"mapped",[967]],[[7531,7531],"valid"],[[7532,7543],"valid"],[[7544,7544],"mapped",[1085]],[[7545,7578],"valid"],[[7579,7579],"mapped",[594]],[[7580,7580],"mapped",[99]],[[7581,7581],"mapped",[597]],[[7582,7582],"mapped",[240]],[[7583,7583],"mapped",[604]],[[7584,7584],"mapped",[102]],[[7585,7585],"mapped",[607]],[[7586,7586],"mapped",[609]],[[7587,7587],"mapped",[613]],[[7588,7588],"mapped",[616]],[[7589,7589],"mapped",[617]],[[7590,7590],"mapped",[618]],[[7591,7591],"mapped",[7547]],[[7592,7592],"mapped",[669]],[[7593,7593],"mapped",[621]],[[7594,7594],"mapped",[7557]],[[7595,7595],"mapped",[671]],[[7596,7596],"mapped",[625]],[[7597,7597],"mapped",[624]],[[7598,7598],"mapped",[626]],[[7599,7599],"mapped",[627]],[[7600,7600],"mapped",[628]],[[7601,7601],"mapped",[629]],[[7602,7602],"mapped",[632]],[[7603,7603],"mapped",[642]],[[7604,7604],"mapped",[643]],[[7605,7605],"mapped",[427]],[[7606,7606],"mapped",[649]],[[7607,7607],"mapped",[650]],[[7608,7608],"mapped",[7452]],[[7609,7609],"mapped",[651]],[[7610,7610],"mapped",[652]],[[7611,7611],"mapped",[122]],[[7612,7612],"mapped",[656]],[[7613,7613],"mapped",[657]],[[7614,7614],"mapped",[658]],[[7615,7615],"mapped",[952]],[[7616,7619],"valid"],[[7620,7626],"valid"],[[7627,7654],"valid"],[[7655,7669],"valid"],[[7670,7675],"disallowed"],[[7676,7676],"valid"],[[7677,7677],"valid"],[[7678,7679],"valid"],[[7680,7680],"mapped",[7681]],[[7681,7681],"valid"],[[7682,7682],"mapped",[7683]],[[7683,7683],"valid"],[[7684,7684],"mapped",[7685]],[[7685,7685],"valid"],[[7686,7686],"mapped",[7687]],[[7687,7687],"valid"],[[7688,7688],"mapped",[7689]],[[7689,7689],"valid"],[[7690,7690],"mapped",[7691]],[[7691,7691],"valid"],[[7692,7692],"mapped",[7693]],[[7693,7693],"valid"],[[7694,7694],"mapped",[7695]],[[7695,7695],"valid"],[[7696,7696],"mapped",[7697]],[[7697,7697],"valid"],[[7698,7698],"mapped",[7699]],[[7699,7699],"valid"],[[7700,7700],"mapped",[7701]],[[7701,7701],"valid"],[[7702,7702],"mapped",[7703]],[[7703,7703],"valid"],[[7704,7704],"mapped",[7705]],[[7705,7705],"valid"],[[7706,7706],"mapped",[7707]],[[7707,7707],"valid"],[[7708,7708],"mapped",[7709]],[[7709,7709],"valid"],[[7710,7710],"mapped",[7711]],[[7711,7711],"valid"],[[7712,7712],"mapped",[7713]],[[7713,7713],"valid"],[[7714,7714],"mapped",[7715]],[[7715,7715],"valid"],[[7716,7716],"mapped",[7717]],[[7717,7717],"valid"],[[7718,7718],"mapped",[7719]],[[7719,7719],"valid"],[[7720,7720],"mapped",[7721]],[[7721,7721],"valid"],[[7722,7722],"mapped",[7723]],[[7723,7723],"valid"],[[7724,7724],"mapped",[7725]],[[7725,7725],"valid"],[[7726,7726],"mapped",[7727]],[[7727,7727],"valid"],[[7728,7728],"mapped",[7729]],[[7729,7729],"valid"],[[7730,7730],"mapped",[7731]],[[7731,7731],"valid"],[[7732,7732],"mapped",[7733]],[[7733,7733],"valid"],[[7734,7734],"mapped",[7735]],[[7735,7735],"valid"],[[7736,7736],"mapped",[7737]],[[7737,7737],"valid"],[[7738,7738],"mapped",[7739]],[[7739,7739],"valid"],[[7740,7740],"mapped",[7741]],[[7741,7741],"valid"],[[7742,7742],"mapped",[7743]],[[7743,7743],"valid"],[[7744,7744],"mapped",[7745]],[[7745,7745],"valid"],[[7746,7746],"mapped",[7747]],[[7747,7747],"valid"],[[7748,7748],"mapped",[7749]],[[7749,7749],"valid"],[[7750,7750],"mapped",[7751]],[[7751,7751],"valid"],[[7752,7752],"mapped",[7753]],[[7753,7753],"valid"],[[7754,7754],"mapped",[7755]],[[7755,7755],"valid"],[[7756,7756],"mapped",[7757]],[[7757,7757],"valid"],[[7758,7758],"mapped",[7759]],[[7759,7759],"valid"],[[7760,7760],"mapped",[7761]],[[7761,7761],"valid"],[[7762,7762],"mapped",[7763]],[[7763,7763],"valid"],[[7764,7764],"mapped",[7765]],[[7765,7765],"valid"],[[7766,7766],"mapped",[7767]],[[7767,7767],"valid"],[[7768,7768],"mapped",[7769]],[[7769,7769],"valid"],[[7770,7770],"mapped",[7771]],[[7771,7771],"valid"],[[7772,7772],"mapped",[7773]],[[7773,7773],"valid"],[[7774,7774],"mapped",[7775]],[[7775,7775],"valid"],[[7776,7776],"mapped",[7777]],[[7777,7777],"valid"],[[7778,7778],"mapped",[7779]],[[7779,7779],"valid"],[[7780,7780],"mapped",[7781]],[[7781,7781],"valid"],[[7782,7782],"mapped",[7783]],[[7783,7783],"valid"],[[7784,7784],"mapped",[7785]],[[7785,7785],"valid"],[[7786,7786],"mapped",[7787]],[[7787,7787],"valid"],[[7788,7788],"mapped",[7789]],[[7789,7789],"valid"],[[7790,7790],"mapped",[7791]],[[7791,7791],"valid"],[[7792,7792],"mapped",[7793]],[[7793,7793],"valid"],[[7794,7794],"mapped",[7795]],[[7795,7795],"valid"],[[7796,7796],"mapped",[7797]],[[7797,7797],"valid"],[[7798,7798],"mapped",[7799]],[[7799,7799],"valid"],[[7800,7800],"mapped",[7801]],[[7801,7801],"valid"],[[7802,7802],"mapped",[7803]],[[7803,7803],"valid"],[[7804,7804],"mapped",[7805]],[[7805,7805],"valid"],[[7806,7806],"mapped",[7807]],[[7807,7807],"valid"],[[7808,7808],"mapped",[7809]],[[7809,7809],"valid"],[[7810,7810],"mapped",[7811]],[[7811,7811],"valid"],[[7812,7812],"mapped",[7813]],[[7813,7813],"valid"],[[7814,7814],"mapped",[7815]],[[7815,7815],"valid"],[[7816,7816],"mapped",[7817]],[[7817,7817],"valid"],[[7818,7818],"mapped",[7819]],[[7819,7819],"valid"],[[7820,7820],"mapped",[7821]],[[7821,7821],"valid"],[[7822,7822],"mapped",[7823]],[[7823,7823],"valid"],[[7824,7824],"mapped",[7825]],[[7825,7825],"valid"],[[7826,7826],"mapped",[7827]],[[7827,7827],"valid"],[[7828,7828],"mapped",[7829]],[[7829,7833],"valid"],[[7834,7834],"mapped",[97,702]],[[7835,7835],"mapped",[7777]],[[7836,7837],"valid"],[[7838,7838],"mapped",[115,115]],[[7839,7839],"valid"],[[7840,7840],"mapped",[7841]],[[7841,7841],"valid"],[[7842,7842],"mapped",[7843]],[[7843,7843],"valid"],[[7844,7844],"mapped",[7845]],[[7845,7845],"valid"],[[7846,7846],"mapped",[7847]],[[7847,7847],"valid"],[[7848,7848],"mapped",[7849]],[[7849,7849],"valid"],[[7850,7850],"mapped",[7851]],[[7851,7851],"valid"],[[7852,7852],"mapped",[7853]],[[7853,7853],"valid"],[[7854,7854],"mapped",[7855]],[[7855,7855],"valid"],[[7856,7856],"mapped",[7857]],[[7857,7857],"valid"],[[7858,7858],"mapped",[7859]],[[7859,7859],"valid"],[[7860,7860],"mapped",[7861]],[[7861,7861],"valid"],[[7862,7862],"mapped",[7863]],[[7863,7863],"valid"],[[7864,7864],"mapped",[7865]],[[7865,7865],"valid"],[[7866,7866],"mapped",[7867]],[[7867,7867],"valid"],[[7868,7868],"mapped",[7869]],[[7869,7869],"valid"],[[7870,7870],"mapped",[7871]],[[7871,7871],"valid"],[[7872,7872],"mapped",[7873]],[[7873,7873],"valid"],[[7874,7874],"mapped",[7875]],[[7875,7875],"valid"],[[7876,7876],"mapped",[7877]],[[7877,7877],"valid"],[[7878,7878],"mapped",[7879]],[[7879,7879],"valid"],[[7880,7880],"mapped",[7881]],[[7881,7881],"valid"],[[7882,7882],"mapped",[7883]],[[7883,7883],"valid"],[[7884,7884],"mapped",[7885]],[[7885,7885],"valid"],[[7886,7886],"mapped",[7887]],[[7887,7887],"valid"],[[7888,7888],"mapped",[7889]],[[7889,7889],"valid"],[[7890,7890],"mapped",[7891]],[[7891,7891],"valid"],[[7892,7892],"mapped",[7893]],[[7893,7893],"valid"],[[7894,7894],"mapped",[7895]],[[7895,7895],"valid"],[[7896,7896],"mapped",[7897]],[[7897,7897],"valid"],[[7898,7898],"mapped",[7899]],[[7899,7899],"valid"],[[7900,7900],"mapped",[7901]],[[7901,7901],"valid"],[[7902,7902],"mapped",[7903]],[[7903,7903],"valid"],[[7904,7904],"mapped",[7905]],[[7905,7905],"valid"],[[7906,7906],"mapped",[7907]],[[7907,7907],"valid"],[[7908,7908],"mapped",[7909]],[[7909,7909],"valid"],[[7910,7910],"mapped",[7911]],[[7911,7911],"valid"],[[7912,7912],"mapped",[7913]],[[7913,7913],"valid"],[[7914,7914],"mapped",[7915]],[[7915,7915],"valid"],[[7916,7916],"mapped",[7917]],[[7917,7917],"valid"],[[7918,7918],"mapped",[7919]],[[7919,7919],"valid"],[[7920,7920],"mapped",[7921]],[[7921,7921],"valid"],[[7922,7922],"mapped",[7923]],[[7923,7923],"valid"],[[7924,7924],"mapped",[7925]],[[7925,7925],"valid"],[[7926,7926],"mapped",[7927]],[[7927,7927],"valid"],[[7928,7928],"mapped",[7929]],[[7929,7929],"valid"],[[7930,7930],"mapped",[7931]],[[7931,7931],"valid"],[[7932,7932],"mapped",[7933]],[[7933,7933],"valid"],[[7934,7934],"mapped",[7935]],[[7935,7935],"valid"],[[7936,7943],"valid"],[[7944,7944],"mapped",[7936]],[[7945,7945],"mapped",[7937]],[[7946,7946],"mapped",[7938]],[[7947,7947],"mapped",[7939]],[[7948,7948],"mapped",[7940]],[[7949,7949],"mapped",[7941]],[[7950,7950],"mapped",[7942]],[[7951,7951],"mapped",[7943]],[[7952,7957],"valid"],[[7958,7959],"disallowed"],[[7960,7960],"mapped",[7952]],[[7961,7961],"mapped",[7953]],[[7962,7962],"mapped",[7954]],[[7963,7963],"mapped",[7955]],[[7964,7964],"mapped",[7956]],[[7965,7965],"mapped",[7957]],[[7966,7967],"disallowed"],[[7968,7975],"valid"],[[7976,7976],"mapped",[7968]],[[7977,7977],"mapped",[7969]],[[7978,7978],"mapped",[7970]],[[7979,7979],"mapped",[7971]],[[7980,7980],"mapped",[7972]],[[7981,7981],"mapped",[7973]],[[7982,7982],"mapped",[7974]],[[7983,7983],"mapped",[7975]],[[7984,7991],"valid"],[[7992,7992],"mapped",[7984]],[[7993,7993],"mapped",[7985]],[[7994,7994],"mapped",[7986]],[[7995,7995],"mapped",[7987]],[[7996,7996],"mapped",[7988]],[[7997,7997],"mapped",[7989]],[[7998,7998],"mapped",[7990]],[[7999,7999],"mapped",[7991]],[[8e3,8005],"valid"],[[8006,8007],"disallowed"],[[8008,8008],"mapped",[8e3]],[[8009,8009],"mapped",[8001]],[[8010,8010],"mapped",[8002]],[[8011,8011],"mapped",[8003]],[[8012,8012],"mapped",[8004]],[[8013,8013],"mapped",[8005]],[[8014,8015],"disallowed"],[[8016,8023],"valid"],[[8024,8024],"disallowed"],[[8025,8025],"mapped",[8017]],[[8026,8026],"disallowed"],[[8027,8027],"mapped",[8019]],[[8028,8028],"disallowed"],[[8029,8029],"mapped",[8021]],[[8030,8030],"disallowed"],[[8031,8031],"mapped",[8023]],[[8032,8039],"valid"],[[8040,8040],"mapped",[8032]],[[8041,8041],"mapped",[8033]],[[8042,8042],"mapped",[8034]],[[8043,8043],"mapped",[8035]],[[8044,8044],"mapped",[8036]],[[8045,8045],"mapped",[8037]],[[8046,8046],"mapped",[8038]],[[8047,8047],"mapped",[8039]],[[8048,8048],"valid"],[[8049,8049],"mapped",[940]],[[8050,8050],"valid"],[[8051,8051],"mapped",[941]],[[8052,8052],"valid"],[[8053,8053],"mapped",[942]],[[8054,8054],"valid"],[[8055,8055],"mapped",[943]],[[8056,8056],"valid"],[[8057,8057],"mapped",[972]],[[8058,8058],"valid"],[[8059,8059],"mapped",[973]],[[8060,8060],"valid"],[[8061,8061],"mapped",[974]],[[8062,8063],"disallowed"],[[8064,8064],"mapped",[7936,953]],[[8065,8065],"mapped",[7937,953]],[[8066,8066],"mapped",[7938,953]],[[8067,8067],"mapped",[7939,953]],[[8068,8068],"mapped",[7940,953]],[[8069,8069],"mapped",[7941,953]],[[8070,8070],"mapped",[7942,953]],[[8071,8071],"mapped",[7943,953]],[[8072,8072],"mapped",[7936,953]],[[8073,8073],"mapped",[7937,953]],[[8074,8074],"mapped",[7938,953]],[[8075,8075],"mapped",[7939,953]],[[8076,8076],"mapped",[7940,953]],[[8077,8077],"mapped",[7941,953]],[[8078,8078],"mapped",[7942,953]],[[8079,8079],"mapped",[7943,953]],[[8080,8080],"mapped",[7968,953]],[[8081,8081],"mapped",[7969,953]],[[8082,8082],"mapped",[7970,953]],[[8083,8083],"mapped",[7971,953]],[[8084,8084],"mapped",[7972,953]],[[8085,8085],"mapped",[7973,953]],[[8086,8086],"mapped",[7974,953]],[[8087,8087],"mapped",[7975,953]],[[8088,8088],"mapped",[7968,953]],[[8089,8089],"mapped",[7969,953]],[[8090,8090],"mapped",[7970,953]],[[8091,8091],"mapped",[7971,953]],[[8092,8092],"mapped",[7972,953]],[[8093,8093],"mapped",[7973,953]],[[8094,8094],"mapped",[7974,953]],[[8095,8095],"mapped",[7975,953]],[[8096,8096],"mapped",[8032,953]],[[8097,8097],"mapped",[8033,953]],[[8098,8098],"mapped",[8034,953]],[[8099,8099],"mapped",[8035,953]],[[8100,8100],"mapped",[8036,953]],[[8101,8101],"mapped",[8037,953]],[[8102,8102],"mapped",[8038,953]],[[8103,8103],"mapped",[8039,953]],[[8104,8104],"mapped",[8032,953]],[[8105,8105],"mapped",[8033,953]],[[8106,8106],"mapped",[8034,953]],[[8107,8107],"mapped",[8035,953]],[[8108,8108],"mapped",[8036,953]],[[8109,8109],"mapped",[8037,953]],[[8110,8110],"mapped",[8038,953]],[[8111,8111],"mapped",[8039,953]],[[8112,8113],"valid"],[[8114,8114],"mapped",[8048,953]],[[8115,8115],"mapped",[945,953]],[[8116,8116],"mapped",[940,953]],[[8117,8117],"disallowed"],[[8118,8118],"valid"],[[8119,8119],"mapped",[8118,953]],[[8120,8120],"mapped",[8112]],[[8121,8121],"mapped",[8113]],[[8122,8122],"mapped",[8048]],[[8123,8123],"mapped",[940]],[[8124,8124],"mapped",[945,953]],[[8125,8125],"disallowed_STD3_mapped",[32,787]],[[8126,8126],"mapped",[953]],[[8127,8127],"disallowed_STD3_mapped",[32,787]],[[8128,8128],"disallowed_STD3_mapped",[32,834]],[[8129,8129],"disallowed_STD3_mapped",[32,776,834]],[[8130,8130],"mapped",[8052,953]],[[8131,8131],"mapped",[951,953]],[[8132,8132],"mapped",[942,953]],[[8133,8133],"disallowed"],[[8134,8134],"valid"],[[8135,8135],"mapped",[8134,953]],[[8136,8136],"mapped",[8050]],[[8137,8137],"mapped",[941]],[[8138,8138],"mapped",[8052]],[[8139,8139],"mapped",[942]],[[8140,8140],"mapped",[951,953]],[[8141,8141],"disallowed_STD3_mapped",[32,787,768]],[[8142,8142],"disallowed_STD3_mapped",[32,787,769]],[[8143,8143],"disallowed_STD3_mapped",[32,787,834]],[[8144,8146],"valid"],[[8147,8147],"mapped",[912]],[[8148,8149],"disallowed"],[[8150,8151],"valid"],[[8152,8152],"mapped",[8144]],[[8153,8153],"mapped",[8145]],[[8154,8154],"mapped",[8054]],[[8155,8155],"mapped",[943]],[[8156,8156],"disallowed"],[[8157,8157],"disallowed_STD3_mapped",[32,788,768]],[[8158,8158],"disallowed_STD3_mapped",[32,788,769]],[[8159,8159],"disallowed_STD3_mapped",[32,788,834]],[[8160,8162],"valid"],[[8163,8163],"mapped",[944]],[[8164,8167],"valid"],[[8168,8168],"mapped",[8160]],[[8169,8169],"mapped",[8161]],[[8170,8170],"mapped",[8058]],[[8171,8171],"mapped",[973]],[[8172,8172],"mapped",[8165]],[[8173,8173],"disallowed_STD3_mapped",[32,776,768]],[[8174,8174],"disallowed_STD3_mapped",[32,776,769]],[[8175,8175],"disallowed_STD3_mapped",[96]],[[8176,8177],"disallowed"],[[8178,8178],"mapped",[8060,953]],[[8179,8179],"mapped",[969,953]],[[8180,8180],"mapped",[974,953]],[[8181,8181],"disallowed"],[[8182,8182],"valid"],[[8183,8183],"mapped",[8182,953]],[[8184,8184],"mapped",[8056]],[[8185,8185],"mapped",[972]],[[8186,8186],"mapped",[8060]],[[8187,8187],"mapped",[974]],[[8188,8188],"mapped",[969,953]],[[8189,8189],"disallowed_STD3_mapped",[32,769]],[[8190,8190],"disallowed_STD3_mapped",[32,788]],[[8191,8191],"disallowed"],[[8192,8202],"disallowed_STD3_mapped",[32]],[[8203,8203],"ignored"],[[8204,8205],"deviation",[]],[[8206,8207],"disallowed"],[[8208,8208],"valid",[],"NV8"],[[8209,8209],"mapped",[8208]],[[8210,8214],"valid",[],"NV8"],[[8215,8215],"disallowed_STD3_mapped",[32,819]],[[8216,8227],"valid",[],"NV8"],[[8228,8230],"disallowed"],[[8231,8231],"valid",[],"NV8"],[[8232,8238],"disallowed"],[[8239,8239],"disallowed_STD3_mapped",[32]],[[8240,8242],"valid",[],"NV8"],[[8243,8243],"mapped",[8242,8242]],[[8244,8244],"mapped",[8242,8242,8242]],[[8245,8245],"valid",[],"NV8"],[[8246,8246],"mapped",[8245,8245]],[[8247,8247],"mapped",[8245,8245,8245]],[[8248,8251],"valid",[],"NV8"],[[8252,8252],"disallowed_STD3_mapped",[33,33]],[[8253,8253],"valid",[],"NV8"],[[8254,8254],"disallowed_STD3_mapped",[32,773]],[[8255,8262],"valid",[],"NV8"],[[8263,8263],"disallowed_STD3_mapped",[63,63]],[[8264,8264],"disallowed_STD3_mapped",[63,33]],[[8265,8265],"disallowed_STD3_mapped",[33,63]],[[8266,8269],"valid",[],"NV8"],[[8270,8274],"valid",[],"NV8"],[[8275,8276],"valid",[],"NV8"],[[8277,8278],"valid",[],"NV8"],[[8279,8279],"mapped",[8242,8242,8242,8242]],[[8280,8286],"valid",[],"NV8"],[[8287,8287],"disallowed_STD3_mapped",[32]],[[8288,8288],"ignored"],[[8289,8291],"disallowed"],[[8292,8292],"ignored"],[[8293,8293],"disallowed"],[[8294,8297],"disallowed"],[[8298,8303],"disallowed"],[[8304,8304],"mapped",[48]],[[8305,8305],"mapped",[105]],[[8306,8307],"disallowed"],[[8308,8308],"mapped",[52]],[[8309,8309],"mapped",[53]],[[8310,8310],"mapped",[54]],[[8311,8311],"mapped",[55]],[[8312,8312],"mapped",[56]],[[8313,8313],"mapped",[57]],[[8314,8314],"disallowed_STD3_mapped",[43]],[[8315,8315],"mapped",[8722]],[[8316,8316],"disallowed_STD3_mapped",[61]],[[8317,8317],"disallowed_STD3_mapped",[40]],[[8318,8318],"disallowed_STD3_mapped",[41]],[[8319,8319],"mapped",[110]],[[8320,8320],"mapped",[48]],[[8321,8321],"mapped",[49]],[[8322,8322],"mapped",[50]],[[8323,8323],"mapped",[51]],[[8324,8324],"mapped",[52]],[[8325,8325],"mapped",[53]],[[8326,8326],"mapped",[54]],[[8327,8327],"mapped",[55]],[[8328,8328],"mapped",[56]],[[8329,8329],"mapped",[57]],[[8330,8330],"disallowed_STD3_mapped",[43]],[[8331,8331],"mapped",[8722]],[[8332,8332],"disallowed_STD3_mapped",[61]],[[8333,8333],"disallowed_STD3_mapped",[40]],[[8334,8334],"disallowed_STD3_mapped",[41]],[[8335,8335],"disallowed"],[[8336,8336],"mapped",[97]],[[8337,8337],"mapped",[101]],[[8338,8338],"mapped",[111]],[[8339,8339],"mapped",[120]],[[8340,8340],"mapped",[601]],[[8341,8341],"mapped",[104]],[[8342,8342],"mapped",[107]],[[8343,8343],"mapped",[108]],[[8344,8344],"mapped",[109]],[[8345,8345],"mapped",[110]],[[8346,8346],"mapped",[112]],[[8347,8347],"mapped",[115]],[[8348,8348],"mapped",[116]],[[8349,8351],"disallowed"],[[8352,8359],"valid",[],"NV8"],[[8360,8360],"mapped",[114,115]],[[8361,8362],"valid",[],"NV8"],[[8363,8363],"valid",[],"NV8"],[[8364,8364],"valid",[],"NV8"],[[8365,8367],"valid",[],"NV8"],[[8368,8369],"valid",[],"NV8"],[[8370,8373],"valid",[],"NV8"],[[8374,8376],"valid",[],"NV8"],[[8377,8377],"valid",[],"NV8"],[[8378,8378],"valid",[],"NV8"],[[8379,8381],"valid",[],"NV8"],[[8382,8382],"valid",[],"NV8"],[[8383,8399],"disallowed"],[[8400,8417],"valid",[],"NV8"],[[8418,8419],"valid",[],"NV8"],[[8420,8426],"valid",[],"NV8"],[[8427,8427],"valid",[],"NV8"],[[8428,8431],"valid",[],"NV8"],[[8432,8432],"valid",[],"NV8"],[[8433,8447],"disallowed"],[[8448,8448],"disallowed_STD3_mapped",[97,47,99]],[[8449,8449],"disallowed_STD3_mapped",[97,47,115]],[[8450,8450],"mapped",[99]],[[8451,8451],"mapped",[176,99]],[[8452,8452],"valid",[],"NV8"],[[8453,8453],"disallowed_STD3_mapped",[99,47,111]],[[8454,8454],"disallowed_STD3_mapped",[99,47,117]],[[8455,8455],"mapped",[603]],[[8456,8456],"valid",[],"NV8"],[[8457,8457],"mapped",[176,102]],[[8458,8458],"mapped",[103]],[[8459,8462],"mapped",[104]],[[8463,8463],"mapped",[295]],[[8464,8465],"mapped",[105]],[[8466,8467],"mapped",[108]],[[8468,8468],"valid",[],"NV8"],[[8469,8469],"mapped",[110]],[[8470,8470],"mapped",[110,111]],[[8471,8472],"valid",[],"NV8"],[[8473,8473],"mapped",[112]],[[8474,8474],"mapped",[113]],[[8475,8477],"mapped",[114]],[[8478,8479],"valid",[],"NV8"],[[8480,8480],"mapped",[115,109]],[[8481,8481],"mapped",[116,101,108]],[[8482,8482],"mapped",[116,109]],[[8483,8483],"valid",[],"NV8"],[[8484,8484],"mapped",[122]],[[8485,8485],"valid",[],"NV8"],[[8486,8486],"mapped",[969]],[[8487,8487],"valid",[],"NV8"],[[8488,8488],"mapped",[122]],[[8489,8489],"valid",[],"NV8"],[[8490,8490],"mapped",[107]],[[8491,8491],"mapped",[229]],[[8492,8492],"mapped",[98]],[[8493,8493],"mapped",[99]],[[8494,8494],"valid",[],"NV8"],[[8495,8496],"mapped",[101]],[[8497,8497],"mapped",[102]],[[8498,8498],"disallowed"],[[8499,8499],"mapped",[109]],[[8500,8500],"mapped",[111]],[[8501,8501],"mapped",[1488]],[[8502,8502],"mapped",[1489]],[[8503,8503],"mapped",[1490]],[[8504,8504],"mapped",[1491]],[[8505,8505],"mapped",[105]],[[8506,8506],"valid",[],"NV8"],[[8507,8507],"mapped",[102,97,120]],[[8508,8508],"mapped",[960]],[[8509,8510],"mapped",[947]],[[8511,8511],"mapped",[960]],[[8512,8512],"mapped",[8721]],[[8513,8516],"valid",[],"NV8"],[[8517,8518],"mapped",[100]],[[8519,8519],"mapped",[101]],[[8520,8520],"mapped",[105]],[[8521,8521],"mapped",[106]],[[8522,8523],"valid",[],"NV8"],[[8524,8524],"valid",[],"NV8"],[[8525,8525],"valid",[],"NV8"],[[8526,8526],"valid"],[[8527,8527],"valid",[],"NV8"],[[8528,8528],"mapped",[49,8260,55]],[[8529,8529],"mapped",[49,8260,57]],[[8530,8530],"mapped",[49,8260,49,48]],[[8531,8531],"mapped",[49,8260,51]],[[8532,8532],"mapped",[50,8260,51]],[[8533,8533],"mapped",[49,8260,53]],[[8534,8534],"mapped",[50,8260,53]],[[8535,8535],"mapped",[51,8260,53]],[[8536,8536],"mapped",[52,8260,53]],[[8537,8537],"mapped",[49,8260,54]],[[8538,8538],"mapped",[53,8260,54]],[[8539,8539],"mapped",[49,8260,56]],[[8540,8540],"mapped",[51,8260,56]],[[8541,8541],"mapped",[53,8260,56]],[[8542,8542],"mapped",[55,8260,56]],[[8543,8543],"mapped",[49,8260]],[[8544,8544],"mapped",[105]],[[8545,8545],"mapped",[105,105]],[[8546,8546],"mapped",[105,105,105]],[[8547,8547],"mapped",[105,118]],[[8548,8548],"mapped",[118]],[[8549,8549],"mapped",[118,105]],[[8550,8550],"mapped",[118,105,105]],[[8551,8551],"mapped",[118,105,105,105]],[[8552,8552],"mapped",[105,120]],[[8553,8553],"mapped",[120]],[[8554,8554],"mapped",[120,105]],[[8555,8555],"mapped",[120,105,105]],[[8556,8556],"mapped",[108]],[[8557,8557],"mapped",[99]],[[8558,8558],"mapped",[100]],[[8559,8559],"mapped",[109]],[[8560,8560],"mapped",[105]],[[8561,8561],"mapped",[105,105]],[[8562,8562],"mapped",[105,105,105]],[[8563,8563],"mapped",[105,118]],[[8564,8564],"mapped",[118]],[[8565,8565],"mapped",[118,105]],[[8566,8566],"mapped",[118,105,105]],[[8567,8567],"mapped",[118,105,105,105]],[[8568,8568],"mapped",[105,120]],[[8569,8569],"mapped",[120]],[[8570,8570],"mapped",[120,105]],[[8571,8571],"mapped",[120,105,105]],[[8572,8572],"mapped",[108]],[[8573,8573],"mapped",[99]],[[8574,8574],"mapped",[100]],[[8575,8575],"mapped",[109]],[[8576,8578],"valid",[],"NV8"],[[8579,8579],"disallowed"],[[8580,8580],"valid"],[[8581,8584],"valid",[],"NV8"],[[8585,8585],"mapped",[48,8260,51]],[[8586,8587],"valid",[],"NV8"],[[8588,8591],"disallowed"],[[8592,8682],"valid",[],"NV8"],[[8683,8691],"valid",[],"NV8"],[[8692,8703],"valid",[],"NV8"],[[8704,8747],"valid",[],"NV8"],[[8748,8748],"mapped",[8747,8747]],[[8749,8749],"mapped",[8747,8747,8747]],[[8750,8750],"valid",[],"NV8"],[[8751,8751],"mapped",[8750,8750]],[[8752,8752],"mapped",[8750,8750,8750]],[[8753,8799],"valid",[],"NV8"],[[8800,8800],"disallowed_STD3_valid"],[[8801,8813],"valid",[],"NV8"],[[8814,8815],"disallowed_STD3_valid"],[[8816,8945],"valid",[],"NV8"],[[8946,8959],"valid",[],"NV8"],[[8960,8960],"valid",[],"NV8"],[[8961,8961],"valid",[],"NV8"],[[8962,9e3],"valid",[],"NV8"],[[9001,9001],"mapped",[12296]],[[9002,9002],"mapped",[12297]],[[9003,9082],"valid",[],"NV8"],[[9083,9083],"valid",[],"NV8"],[[9084,9084],"valid",[],"NV8"],[[9085,9114],"valid",[],"NV8"],[[9115,9166],"valid",[],"NV8"],[[9167,9168],"valid",[],"NV8"],[[9169,9179],"valid",[],"NV8"],[[9180,9191],"valid",[],"NV8"],[[9192,9192],"valid",[],"NV8"],[[9193,9203],"valid",[],"NV8"],[[9204,9210],"valid",[],"NV8"],[[9211,9215],"disallowed"],[[9216,9252],"valid",[],"NV8"],[[9253,9254],"valid",[],"NV8"],[[9255,9279],"disallowed"],[[9280,9290],"valid",[],"NV8"],[[9291,9311],"disallowed"],[[9312,9312],"mapped",[49]],[[9313,9313],"mapped",[50]],[[9314,9314],"mapped",[51]],[[9315,9315],"mapped",[52]],[[9316,9316],"mapped",[53]],[[9317,9317],"mapped",[54]],[[9318,9318],"mapped",[55]],[[9319,9319],"mapped",[56]],[[9320,9320],"mapped",[57]],[[9321,9321],"mapped",[49,48]],[[9322,9322],"mapped",[49,49]],[[9323,9323],"mapped",[49,50]],[[9324,9324],"mapped",[49,51]],[[9325,9325],"mapped",[49,52]],[[9326,9326],"mapped",[49,53]],[[9327,9327],"mapped",[49,54]],[[9328,9328],"mapped",[49,55]],[[9329,9329],"mapped",[49,56]],[[9330,9330],"mapped",[49,57]],[[9331,9331],"mapped",[50,48]],[[9332,9332],"disallowed_STD3_mapped",[40,49,41]],[[9333,9333],"disallowed_STD3_mapped",[40,50,41]],[[9334,9334],"disallowed_STD3_mapped",[40,51,41]],[[9335,9335],"disallowed_STD3_mapped",[40,52,41]],[[9336,9336],"disallowed_STD3_mapped",[40,53,41]],[[9337,9337],"disallowed_STD3_mapped",[40,54,41]],[[9338,9338],"disallowed_STD3_mapped",[40,55,41]],[[9339,9339],"disallowed_STD3_mapped",[40,56,41]],[[9340,9340],"disallowed_STD3_mapped",[40,57,41]],[[9341,9341],"disallowed_STD3_mapped",[40,49,48,41]],[[9342,9342],"disallowed_STD3_mapped",[40,49,49,41]],[[9343,9343],"disallowed_STD3_mapped",[40,49,50,41]],[[9344,9344],"disallowed_STD3_mapped",[40,49,51,41]],[[9345,9345],"disallowed_STD3_mapped",[40,49,52,41]],[[9346,9346],"disallowed_STD3_mapped",[40,49,53,41]],[[9347,9347],"disallowed_STD3_mapped",[40,49,54,41]],[[9348,9348],"disallowed_STD3_mapped",[40,49,55,41]],[[9349,9349],"disallowed_STD3_mapped",[40,49,56,41]],[[9350,9350],"disallowed_STD3_mapped",[40,49,57,41]],[[9351,9351],"disallowed_STD3_mapped",[40,50,48,41]],[[9352,9371],"disallowed"],[[9372,9372],"disallowed_STD3_mapped",[40,97,41]],[[9373,9373],"disallowed_STD3_mapped",[40,98,41]],[[9374,9374],"disallowed_STD3_mapped",[40,99,41]],[[9375,9375],"disallowed_STD3_mapped",[40,100,41]],[[9376,9376],"disallowed_STD3_mapped",[40,101,41]],[[9377,9377],"disallowed_STD3_mapped",[40,102,41]],[[9378,9378],"disallowed_STD3_mapped",[40,103,41]],[[9379,9379],"disallowed_STD3_mapped",[40,104,41]],[[9380,9380],"disallowed_STD3_mapped",[40,105,41]],[[9381,9381],"disallowed_STD3_mapped",[40,106,41]],[[9382,9382],"disallowed_STD3_mapped",[40,107,41]],[[9383,9383],"disallowed_STD3_mapped",[40,108,41]],[[9384,9384],"disallowed_STD3_mapped",[40,109,41]],[[9385,9385],"disallowed_STD3_mapped",[40,110,41]],[[9386,9386],"disallowed_STD3_mapped",[40,111,41]],[[9387,9387],"disallowed_STD3_mapped",[40,112,41]],[[9388,9388],"disallowed_STD3_mapped",[40,113,41]],[[9389,9389],"disallowed_STD3_mapped",[40,114,41]],[[9390,9390],"disallowed_STD3_mapped",[40,115,41]],[[9391,9391],"disallowed_STD3_mapped",[40,116,41]],[[9392,9392],"disallowed_STD3_mapped",[40,117,41]],[[9393,9393],"disallowed_STD3_mapped",[40,118,41]],[[9394,9394],"disallowed_STD3_mapped",[40,119,41]],[[9395,9395],"disallowed_STD3_mapped",[40,120,41]],[[9396,9396],"disallowed_STD3_mapped",[40,121,41]],[[9397,9397],"disallowed_STD3_mapped",[40,122,41]],[[9398,9398],"mapped",[97]],[[9399,9399],"mapped",[98]],[[9400,9400],"mapped",[99]],[[9401,9401],"mapped",[100]],[[9402,9402],"mapped",[101]],[[9403,9403],"mapped",[102]],[[9404,9404],"mapped",[103]],[[9405,9405],"mapped",[104]],[[9406,9406],"mapped",[105]],[[9407,9407],"mapped",[106]],[[9408,9408],"mapped",[107]],[[9409,9409],"mapped",[108]],[[9410,9410],"mapped",[109]],[[9411,9411],"mapped",[110]],[[9412,9412],"mapped",[111]],[[9413,9413],"mapped",[112]],[[9414,9414],"mapped",[113]],[[9415,9415],"mapped",[114]],[[9416,9416],"mapped",[115]],[[9417,9417],"mapped",[116]],[[9418,9418],"mapped",[117]],[[9419,9419],"mapped",[118]],[[9420,9420],"mapped",[119]],[[9421,9421],"mapped",[120]],[[9422,9422],"mapped",[121]],[[9423,9423],"mapped",[122]],[[9424,9424],"mapped",[97]],[[9425,9425],"mapped",[98]],[[9426,9426],"mapped",[99]],[[9427,9427],"mapped",[100]],[[9428,9428],"mapped",[101]],[[9429,9429],"mapped",[102]],[[9430,9430],"mapped",[103]],[[9431,9431],"mapped",[104]],[[9432,9432],"mapped",[105]],[[9433,9433],"mapped",[106]],[[9434,9434],"mapped",[107]],[[9435,9435],"mapped",[108]],[[9436,9436],"mapped",[109]],[[9437,9437],"mapped",[110]],[[9438,9438],"mapped",[111]],[[9439,9439],"mapped",[112]],[[9440,9440],"mapped",[113]],[[9441,9441],"mapped",[114]],[[9442,9442],"mapped",[115]],[[9443,9443],"mapped",[116]],[[9444,9444],"mapped",[117]],[[9445,9445],"mapped",[118]],[[9446,9446],"mapped",[119]],[[9447,9447],"mapped",[120]],[[9448,9448],"mapped",[121]],[[9449,9449],"mapped",[122]],[[9450,9450],"mapped",[48]],[[9451,9470],"valid",[],"NV8"],[[9471,9471],"valid",[],"NV8"],[[9472,9621],"valid",[],"NV8"],[[9622,9631],"valid",[],"NV8"],[[9632,9711],"valid",[],"NV8"],[[9712,9719],"valid",[],"NV8"],[[9720,9727],"valid",[],"NV8"],[[9728,9747],"valid",[],"NV8"],[[9748,9749],"valid",[],"NV8"],[[9750,9751],"valid",[],"NV8"],[[9752,9752],"valid",[],"NV8"],[[9753,9753],"valid",[],"NV8"],[[9754,9839],"valid",[],"NV8"],[[9840,9841],"valid",[],"NV8"],[[9842,9853],"valid",[],"NV8"],[[9854,9855],"valid",[],"NV8"],[[9856,9865],"valid",[],"NV8"],[[9866,9873],"valid",[],"NV8"],[[9874,9884],"valid",[],"NV8"],[[9885,9885],"valid",[],"NV8"],[[9886,9887],"valid",[],"NV8"],[[9888,9889],"valid",[],"NV8"],[[9890,9905],"valid",[],"NV8"],[[9906,9906],"valid",[],"NV8"],[[9907,9916],"valid",[],"NV8"],[[9917,9919],"valid",[],"NV8"],[[9920,9923],"valid",[],"NV8"],[[9924,9933],"valid",[],"NV8"],[[9934,9934],"valid",[],"NV8"],[[9935,9953],"valid",[],"NV8"],[[9954,9954],"valid",[],"NV8"],[[9955,9955],"valid",[],"NV8"],[[9956,9959],"valid",[],"NV8"],[[9960,9983],"valid",[],"NV8"],[[9984,9984],"valid",[],"NV8"],[[9985,9988],"valid",[],"NV8"],[[9989,9989],"valid",[],"NV8"],[[9990,9993],"valid",[],"NV8"],[[9994,9995],"valid",[],"NV8"],[[9996,10023],"valid",[],"NV8"],[[10024,10024],"valid",[],"NV8"],[[10025,10059],"valid",[],"NV8"],[[10060,10060],"valid",[],"NV8"],[[10061,10061],"valid",[],"NV8"],[[10062,10062],"valid",[],"NV8"],[[10063,10066],"valid",[],"NV8"],[[10067,10069],"valid",[],"NV8"],[[10070,10070],"valid",[],"NV8"],[[10071,10071],"valid",[],"NV8"],[[10072,10078],"valid",[],"NV8"],[[10079,10080],"valid",[],"NV8"],[[10081,10087],"valid",[],"NV8"],[[10088,10101],"valid",[],"NV8"],[[10102,10132],"valid",[],"NV8"],[[10133,10135],"valid",[],"NV8"],[[10136,10159],"valid",[],"NV8"],[[10160,10160],"valid",[],"NV8"],[[10161,10174],"valid",[],"NV8"],[[10175,10175],"valid",[],"NV8"],[[10176,10182],"valid",[],"NV8"],[[10183,10186],"valid",[],"NV8"],[[10187,10187],"valid",[],"NV8"],[[10188,10188],"valid",[],"NV8"],[[10189,10189],"valid",[],"NV8"],[[10190,10191],"valid",[],"NV8"],[[10192,10219],"valid",[],"NV8"],[[10220,10223],"valid",[],"NV8"],[[10224,10239],"valid",[],"NV8"],[[10240,10495],"valid",[],"NV8"],[[10496,10763],"valid",[],"NV8"],[[10764,10764],"mapped",[8747,8747,8747,8747]],[[10765,10867],"valid",[],"NV8"],[[10868,10868],"disallowed_STD3_mapped",[58,58,61]],[[10869,10869],"disallowed_STD3_mapped",[61,61]],[[10870,10870],"disallowed_STD3_mapped",[61,61,61]],[[10871,10971],"valid",[],"NV8"],[[10972,10972],"mapped",[10973,824]],[[10973,11007],"valid",[],"NV8"],[[11008,11021],"valid",[],"NV8"],[[11022,11027],"valid",[],"NV8"],[[11028,11034],"valid",[],"NV8"],[[11035,11039],"valid",[],"NV8"],[[11040,11043],"valid",[],"NV8"],[[11044,11084],"valid",[],"NV8"],[[11085,11087],"valid",[],"NV8"],[[11088,11092],"valid",[],"NV8"],[[11093,11097],"valid",[],"NV8"],[[11098,11123],"valid",[],"NV8"],[[11124,11125],"disallowed"],[[11126,11157],"valid",[],"NV8"],[[11158,11159],"disallowed"],[[11160,11193],"valid",[],"NV8"],[[11194,11196],"disallowed"],[[11197,11208],"valid",[],"NV8"],[[11209,11209],"disallowed"],[[11210,11217],"valid",[],"NV8"],[[11218,11243],"disallowed"],[[11244,11247],"valid",[],"NV8"],[[11248,11263],"disallowed"],[[11264,11264],"mapped",[11312]],[[11265,11265],"mapped",[11313]],[[11266,11266],"mapped",[11314]],[[11267,11267],"mapped",[11315]],[[11268,11268],"mapped",[11316]],[[11269,11269],"mapped",[11317]],[[11270,11270],"mapped",[11318]],[[11271,11271],"mapped",[11319]],[[11272,11272],"mapped",[11320]],[[11273,11273],"mapped",[11321]],[[11274,11274],"mapped",[11322]],[[11275,11275],"mapped",[11323]],[[11276,11276],"mapped",[11324]],[[11277,11277],"mapped",[11325]],[[11278,11278],"mapped",[11326]],[[11279,11279],"mapped",[11327]],[[11280,11280],"mapped",[11328]],[[11281,11281],"mapped",[11329]],[[11282,11282],"mapped",[11330]],[[11283,11283],"mapped",[11331]],[[11284,11284],"mapped",[11332]],[[11285,11285],"mapped",[11333]],[[11286,11286],"mapped",[11334]],[[11287,11287],"mapped",[11335]],[[11288,11288],"mapped",[11336]],[[11289,11289],"mapped",[11337]],[[11290,11290],"mapped",[11338]],[[11291,11291],"mapped",[11339]],[[11292,11292],"mapped",[11340]],[[11293,11293],"mapped",[11341]],[[11294,11294],"mapped",[11342]],[[11295,11295],"mapped",[11343]],[[11296,11296],"mapped",[11344]],[[11297,11297],"mapped",[11345]],[[11298,11298],"mapped",[11346]],[[11299,11299],"mapped",[11347]],[[11300,11300],"mapped",[11348]],[[11301,11301],"mapped",[11349]],[[11302,11302],"mapped",[11350]],[[11303,11303],"mapped",[11351]],[[11304,11304],"mapped",[11352]],[[11305,11305],"mapped",[11353]],[[11306,11306],"mapped",[11354]],[[11307,11307],"mapped",[11355]],[[11308,11308],"mapped",[11356]],[[11309,11309],"mapped",[11357]],[[11310,11310],"mapped",[11358]],[[11311,11311],"disallowed"],[[11312,11358],"valid"],[[11359,11359],"disallowed"],[[11360,11360],"mapped",[11361]],[[11361,11361],"valid"],[[11362,11362],"mapped",[619]],[[11363,11363],"mapped",[7549]],[[11364,11364],"mapped",[637]],[[11365,11366],"valid"],[[11367,11367],"mapped",[11368]],[[11368,11368],"valid"],[[11369,11369],"mapped",[11370]],[[11370,11370],"valid"],[[11371,11371],"mapped",[11372]],[[11372,11372],"valid"],[[11373,11373],"mapped",[593]],[[11374,11374],"mapped",[625]],[[11375,11375],"mapped",[592]],[[11376,11376],"mapped",[594]],[[11377,11377],"valid"],[[11378,11378],"mapped",[11379]],[[11379,11379],"valid"],[[11380,11380],"valid"],[[11381,11381],"mapped",[11382]],[[11382,11383],"valid"],[[11384,11387],"valid"],[[11388,11388],"mapped",[106]],[[11389,11389],"mapped",[118]],[[11390,11390],"mapped",[575]],[[11391,11391],"mapped",[576]],[[11392,11392],"mapped",[11393]],[[11393,11393],"valid"],[[11394,11394],"mapped",[11395]],[[11395,11395],"valid"],[[11396,11396],"mapped",[11397]],[[11397,11397],"valid"],[[11398,11398],"mapped",[11399]],[[11399,11399],"valid"],[[11400,11400],"mapped",[11401]],[[11401,11401],"valid"],[[11402,11402],"mapped",[11403]],[[11403,11403],"valid"],[[11404,11404],"mapped",[11405]],[[11405,11405],"valid"],[[11406,11406],"mapped",[11407]],[[11407,11407],"valid"],[[11408,11408],"mapped",[11409]],[[11409,11409],"valid"],[[11410,11410],"mapped",[11411]],[[11411,11411],"valid"],[[11412,11412],"mapped",[11413]],[[11413,11413],"valid"],[[11414,11414],"mapped",[11415]],[[11415,11415],"valid"],[[11416,11416],"mapped",[11417]],[[11417,11417],"valid"],[[11418,11418],"mapped",[11419]],[[11419,11419],"valid"],[[11420,11420],"mapped",[11421]],[[11421,11421],"valid"],[[11422,11422],"mapped",[11423]],[[11423,11423],"valid"],[[11424,11424],"mapped",[11425]],[[11425,11425],"valid"],[[11426,11426],"mapped",[11427]],[[11427,11427],"valid"],[[11428,11428],"mapped",[11429]],[[11429,11429],"valid"],[[11430,11430],"mapped",[11431]],[[11431,11431],"valid"],[[11432,11432],"mapped",[11433]],[[11433,11433],"valid"],[[11434,11434],"mapped",[11435]],[[11435,11435],"valid"],[[11436,11436],"mapped",[11437]],[[11437,11437],"valid"],[[11438,11438],"mapped",[11439]],[[11439,11439],"valid"],[[11440,11440],"mapped",[11441]],[[11441,11441],"valid"],[[11442,11442],"mapped",[11443]],[[11443,11443],"valid"],[[11444,11444],"mapped",[11445]],[[11445,11445],"valid"],[[11446,11446],"mapped",[11447]],[[11447,11447],"valid"],[[11448,11448],"mapped",[11449]],[[11449,11449],"valid"],[[11450,11450],"mapped",[11451]],[[11451,11451],"valid"],[[11452,11452],"mapped",[11453]],[[11453,11453],"valid"],[[11454,11454],"mapped",[11455]],[[11455,11455],"valid"],[[11456,11456],"mapped",[11457]],[[11457,11457],"valid"],[[11458,11458],"mapped",[11459]],[[11459,11459],"valid"],[[11460,11460],"mapped",[11461]],[[11461,11461],"valid"],[[11462,11462],"mapped",[11463]],[[11463,11463],"valid"],[[11464,11464],"mapped",[11465]],[[11465,11465],"valid"],[[11466,11466],"mapped",[11467]],[[11467,11467],"valid"],[[11468,11468],"mapped",[11469]],[[11469,11469],"valid"],[[11470,11470],"mapped",[11471]],[[11471,11471],"valid"],[[11472,11472],"mapped",[11473]],[[11473,11473],"valid"],[[11474,11474],"mapped",[11475]],[[11475,11475],"valid"],[[11476,11476],"mapped",[11477]],[[11477,11477],"valid"],[[11478,11478],"mapped",[11479]],[[11479,11479],"valid"],[[11480,11480],"mapped",[11481]],[[11481,11481],"valid"],[[11482,11482],"mapped",[11483]],[[11483,11483],"valid"],[[11484,11484],"mapped",[11485]],[[11485,11485],"valid"],[[11486,11486],"mapped",[11487]],[[11487,11487],"valid"],[[11488,11488],"mapped",[11489]],[[11489,11489],"valid"],[[11490,11490],"mapped",[11491]],[[11491,11492],"valid"],[[11493,11498],"valid",[],"NV8"],[[11499,11499],"mapped",[11500]],[[11500,11500],"valid"],[[11501,11501],"mapped",[11502]],[[11502,11505],"valid"],[[11506,11506],"mapped",[11507]],[[11507,11507],"valid"],[[11508,11512],"disallowed"],[[11513,11519],"valid",[],"NV8"],[[11520,11557],"valid"],[[11558,11558],"disallowed"],[[11559,11559],"valid"],[[11560,11564],"disallowed"],[[11565,11565],"valid"],[[11566,11567],"disallowed"],[[11568,11621],"valid"],[[11622,11623],"valid"],[[11624,11630],"disallowed"],[[11631,11631],"mapped",[11617]],[[11632,11632],"valid",[],"NV8"],[[11633,11646],"disallowed"],[[11647,11647],"valid"],[[11648,11670],"valid"],[[11671,11679],"disallowed"],[[11680,11686],"valid"],[[11687,11687],"disallowed"],[[11688,11694],"valid"],[[11695,11695],"disallowed"],[[11696,11702],"valid"],[[11703,11703],"disallowed"],[[11704,11710],"valid"],[[11711,11711],"disallowed"],[[11712,11718],"valid"],[[11719,11719],"disallowed"],[[11720,11726],"valid"],[[11727,11727],"disallowed"],[[11728,11734],"valid"],[[11735,11735],"disallowed"],[[11736,11742],"valid"],[[11743,11743],"disallowed"],[[11744,11775],"valid"],[[11776,11799],"valid",[],"NV8"],[[11800,11803],"valid",[],"NV8"],[[11804,11805],"valid",[],"NV8"],[[11806,11822],"valid",[],"NV8"],[[11823,11823],"valid"],[[11824,11824],"valid",[],"NV8"],[[11825,11825],"valid",[],"NV8"],[[11826,11835],"valid",[],"NV8"],[[11836,11842],"valid",[],"NV8"],[[11843,11903],"disallowed"],[[11904,11929],"valid",[],"NV8"],[[11930,11930],"disallowed"],[[11931,11934],"valid",[],"NV8"],[[11935,11935],"mapped",[27597]],[[11936,12018],"valid",[],"NV8"],[[12019,12019],"mapped",[40863]],[[12020,12031],"disallowed"],[[12032,12032],"mapped",[19968]],[[12033,12033],"mapped",[20008]],[[12034,12034],"mapped",[20022]],[[12035,12035],"mapped",[20031]],[[12036,12036],"mapped",[20057]],[[12037,12037],"mapped",[20101]],[[12038,12038],"mapped",[20108]],[[12039,12039],"mapped",[20128]],[[12040,12040],"mapped",[20154]],[[12041,12041],"mapped",[20799]],[[12042,12042],"mapped",[20837]],[[12043,12043],"mapped",[20843]],[[12044,12044],"mapped",[20866]],[[12045,12045],"mapped",[20886]],[[12046,12046],"mapped",[20907]],[[12047,12047],"mapped",[20960]],[[12048,12048],"mapped",[20981]],[[12049,12049],"mapped",[20992]],[[12050,12050],"mapped",[21147]],[[12051,12051],"mapped",[21241]],[[12052,12052],"mapped",[21269]],[[12053,12053],"mapped",[21274]],[[12054,12054],"mapped",[21304]],[[12055,12055],"mapped",[21313]],[[12056,12056],"mapped",[21340]],[[12057,12057],"mapped",[21353]],[[12058,12058],"mapped",[21378]],[[12059,12059],"mapped",[21430]],[[12060,12060],"mapped",[21448]],[[12061,12061],"mapped",[21475]],[[12062,12062],"mapped",[22231]],[[12063,12063],"mapped",[22303]],[[12064,12064],"mapped",[22763]],[[12065,12065],"mapped",[22786]],[[12066,12066],"mapped",[22794]],[[12067,12067],"mapped",[22805]],[[12068,12068],"mapped",[22823]],[[12069,12069],"mapped",[22899]],[[12070,12070],"mapped",[23376]],[[12071,12071],"mapped",[23424]],[[12072,12072],"mapped",[23544]],[[12073,12073],"mapped",[23567]],[[12074,12074],"mapped",[23586]],[[12075,12075],"mapped",[23608]],[[12076,12076],"mapped",[23662]],[[12077,12077],"mapped",[23665]],[[12078,12078],"mapped",[24027]],[[12079,12079],"mapped",[24037]],[[12080,12080],"mapped",[24049]],[[12081,12081],"mapped",[24062]],[[12082,12082],"mapped",[24178]],[[12083,12083],"mapped",[24186]],[[12084,12084],"mapped",[24191]],[[12085,12085],"mapped",[24308]],[[12086,12086],"mapped",[24318]],[[12087,12087],"mapped",[24331]],[[12088,12088],"mapped",[24339]],[[12089,12089],"mapped",[24400]],[[12090,12090],"mapped",[24417]],[[12091,12091],"mapped",[24435]],[[12092,12092],"mapped",[24515]],[[12093,12093],"mapped",[25096]],[[12094,12094],"mapped",[25142]],[[12095,12095],"mapped",[25163]],[[12096,12096],"mapped",[25903]],[[12097,12097],"mapped",[25908]],[[12098,12098],"mapped",[25991]],[[12099,12099],"mapped",[26007]],[[12100,12100],"mapped",[26020]],[[12101,12101],"mapped",[26041]],[[12102,12102],"mapped",[26080]],[[12103,12103],"mapped",[26085]],[[12104,12104],"mapped",[26352]],[[12105,12105],"mapped",[26376]],[[12106,12106],"mapped",[26408]],[[12107,12107],"mapped",[27424]],[[12108,12108],"mapped",[27490]],[[12109,12109],"mapped",[27513]],[[12110,12110],"mapped",[27571]],[[12111,12111],"mapped",[27595]],[[12112,12112],"mapped",[27604]],[[12113,12113],"mapped",[27611]],[[12114,12114],"mapped",[27663]],[[12115,12115],"mapped",[27668]],[[12116,12116],"mapped",[27700]],[[12117,12117],"mapped",[28779]],[[12118,12118],"mapped",[29226]],[[12119,12119],"mapped",[29238]],[[12120,12120],"mapped",[29243]],[[12121,12121],"mapped",[29247]],[[12122,12122],"mapped",[29255]],[[12123,12123],"mapped",[29273]],[[12124,12124],"mapped",[29275]],[[12125,12125],"mapped",[29356]],[[12126,12126],"mapped",[29572]],[[12127,12127],"mapped",[29577]],[[12128,12128],"mapped",[29916]],[[12129,12129],"mapped",[29926]],[[12130,12130],"mapped",[29976]],[[12131,12131],"mapped",[29983]],[[12132,12132],"mapped",[29992]],[[12133,12133],"mapped",[3e4]],[[12134,12134],"mapped",[30091]],[[12135,12135],"mapped",[30098]],[[12136,12136],"mapped",[30326]],[[12137,12137],"mapped",[30333]],[[12138,12138],"mapped",[30382]],[[12139,12139],"mapped",[30399]],[[12140,12140],"mapped",[30446]],[[12141,12141],"mapped",[30683]],[[12142,12142],"mapped",[30690]],[[12143,12143],"mapped",[30707]],[[12144,12144],"mapped",[31034]],[[12145,12145],"mapped",[31160]],[[12146,12146],"mapped",[31166]],[[12147,12147],"mapped",[31348]],[[12148,12148],"mapped",[31435]],[[12149,12149],"mapped",[31481]],[[12150,12150],"mapped",[31859]],[[12151,12151],"mapped",[31992]],[[12152,12152],"mapped",[32566]],[[12153,12153],"mapped",[32593]],[[12154,12154],"mapped",[32650]],[[12155,12155],"mapped",[32701]],[[12156,12156],"mapped",[32769]],[[12157,12157],"mapped",[32780]],[[12158,12158],"mapped",[32786]],[[12159,12159],"mapped",[32819]],[[12160,12160],"mapped",[32895]],[[12161,12161],"mapped",[32905]],[[12162,12162],"mapped",[33251]],[[12163,12163],"mapped",[33258]],[[12164,12164],"mapped",[33267]],[[12165,12165],"mapped",[33276]],[[12166,12166],"mapped",[33292]],[[12167,12167],"mapped",[33307]],[[12168,12168],"mapped",[33311]],[[12169,12169],"mapped",[33390]],[[12170,12170],"mapped",[33394]],[[12171,12171],"mapped",[33400]],[[12172,12172],"mapped",[34381]],[[12173,12173],"mapped",[34411]],[[12174,12174],"mapped",[34880]],[[12175,12175],"mapped",[34892]],[[12176,12176],"mapped",[34915]],[[12177,12177],"mapped",[35198]],[[12178,12178],"mapped",[35211]],[[12179,12179],"mapped",[35282]],[[12180,12180],"mapped",[35328]],[[12181,12181],"mapped",[35895]],[[12182,12182],"mapped",[35910]],[[12183,12183],"mapped",[35925]],[[12184,12184],"mapped",[35960]],[[12185,12185],"mapped",[35997]],[[12186,12186],"mapped",[36196]],[[12187,12187],"mapped",[36208]],[[12188,12188],"mapped",[36275]],[[12189,12189],"mapped",[36523]],[[12190,12190],"mapped",[36554]],[[12191,12191],"mapped",[36763]],[[12192,12192],"mapped",[36784]],[[12193,12193],"mapped",[36789]],[[12194,12194],"mapped",[37009]],[[12195,12195],"mapped",[37193]],[[12196,12196],"mapped",[37318]],[[12197,12197],"mapped",[37324]],[[12198,12198],"mapped",[37329]],[[12199,12199],"mapped",[38263]],[[12200,12200],"mapped",[38272]],[[12201,12201],"mapped",[38428]],[[12202,12202],"mapped",[38582]],[[12203,12203],"mapped",[38585]],[[12204,12204],"mapped",[38632]],[[12205,12205],"mapped",[38737]],[[12206,12206],"mapped",[38750]],[[12207,12207],"mapped",[38754]],[[12208,12208],"mapped",[38761]],[[12209,12209],"mapped",[38859]],[[12210,12210],"mapped",[38893]],[[12211,12211],"mapped",[38899]],[[12212,12212],"mapped",[38913]],[[12213,12213],"mapped",[39080]],[[12214,12214],"mapped",[39131]],[[12215,12215],"mapped",[39135]],[[12216,12216],"mapped",[39318]],[[12217,12217],"mapped",[39321]],[[12218,12218],"mapped",[39340]],[[12219,12219],"mapped",[39592]],[[12220,12220],"mapped",[39640]],[[12221,12221],"mapped",[39647]],[[12222,12222],"mapped",[39717]],[[12223,12223],"mapped",[39727]],[[12224,12224],"mapped",[39730]],[[12225,12225],"mapped",[39740]],[[12226,12226],"mapped",[39770]],[[12227,12227],"mapped",[40165]],[[12228,12228],"mapped",[40565]],[[12229,12229],"mapped",[40575]],[[12230,12230],"mapped",[40613]],[[12231,12231],"mapped",[40635]],[[12232,12232],"mapped",[40643]],[[12233,12233],"mapped",[40653]],[[12234,12234],"mapped",[40657]],[[12235,12235],"mapped",[40697]],[[12236,12236],"mapped",[40701]],[[12237,12237],"mapped",[40718]],[[12238,12238],"mapped",[40723]],[[12239,12239],"mapped",[40736]],[[12240,12240],"mapped",[40763]],[[12241,12241],"mapped",[40778]],[[12242,12242],"mapped",[40786]],[[12243,12243],"mapped",[40845]],[[12244,12244],"mapped",[40860]],[[12245,12245],"mapped",[40864]],[[12246,12271],"disallowed"],[[12272,12283],"disallowed"],[[12284,12287],"disallowed"],[[12288,12288],"disallowed_STD3_mapped",[32]],[[12289,12289],"valid",[],"NV8"],[[12290,12290],"mapped",[46]],[[12291,12292],"valid",[],"NV8"],[[12293,12295],"valid"],[[12296,12329],"valid",[],"NV8"],[[12330,12333],"valid"],[[12334,12341],"valid",[],"NV8"],[[12342,12342],"mapped",[12306]],[[12343,12343],"valid",[],"NV8"],[[12344,12344],"mapped",[21313]],[[12345,12345],"mapped",[21316]],[[12346,12346],"mapped",[21317]],[[12347,12347],"valid",[],"NV8"],[[12348,12348],"valid"],[[12349,12349],"valid",[],"NV8"],[[12350,12350],"valid",[],"NV8"],[[12351,12351],"valid",[],"NV8"],[[12352,12352],"disallowed"],[[12353,12436],"valid"],[[12437,12438],"valid"],[[12439,12440],"disallowed"],[[12441,12442],"valid"],[[12443,12443],"disallowed_STD3_mapped",[32,12441]],[[12444,12444],"disallowed_STD3_mapped",[32,12442]],[[12445,12446],"valid"],[[12447,12447],"mapped",[12424,12426]],[[12448,12448],"valid",[],"NV8"],[[12449,12542],"valid"],[[12543,12543],"mapped",[12467,12488]],[[12544,12548],"disallowed"],[[12549,12588],"valid"],[[12589,12589],"valid"],[[12590,12592],"disallowed"],[[12593,12593],"mapped",[4352]],[[12594,12594],"mapped",[4353]],[[12595,12595],"mapped",[4522]],[[12596,12596],"mapped",[4354]],[[12597,12597],"mapped",[4524]],[[12598,12598],"mapped",[4525]],[[12599,12599],"mapped",[4355]],[[12600,12600],"mapped",[4356]],[[12601,12601],"mapped",[4357]],[[12602,12602],"mapped",[4528]],[[12603,12603],"mapped",[4529]],[[12604,12604],"mapped",[4530]],[[12605,12605],"mapped",[4531]],[[12606,12606],"mapped",[4532]],[[12607,12607],"mapped",[4533]],[[12608,12608],"mapped",[4378]],[[12609,12609],"mapped",[4358]],[[12610,12610],"mapped",[4359]],[[12611,12611],"mapped",[4360]],[[12612,12612],"mapped",[4385]],[[12613,12613],"mapped",[4361]],[[12614,12614],"mapped",[4362]],[[12615,12615],"mapped",[4363]],[[12616,12616],"mapped",[4364]],[[12617,12617],"mapped",[4365]],[[12618,12618],"mapped",[4366]],[[12619,12619],"mapped",[4367]],[[12620,12620],"mapped",[4368]],[[12621,12621],"mapped",[4369]],[[12622,12622],"mapped",[4370]],[[12623,12623],"mapped",[4449]],[[12624,12624],"mapped",[4450]],[[12625,12625],"mapped",[4451]],[[12626,12626],"mapped",[4452]],[[12627,12627],"mapped",[4453]],[[12628,12628],"mapped",[4454]],[[12629,12629],"mapped",[4455]],[[12630,12630],"mapped",[4456]],[[12631,12631],"mapped",[4457]],[[12632,12632],"mapped",[4458]],[[12633,12633],"mapped",[4459]],[[12634,12634],"mapped",[4460]],[[12635,12635],"mapped",[4461]],[[12636,12636],"mapped",[4462]],[[12637,12637],"mapped",[4463]],[[12638,12638],"mapped",[4464]],[[12639,12639],"mapped",[4465]],[[12640,12640],"mapped",[4466]],[[12641,12641],"mapped",[4467]],[[12642,12642],"mapped",[4468]],[[12643,12643],"mapped",[4469]],[[12644,12644],"disallowed"],[[12645,12645],"mapped",[4372]],[[12646,12646],"mapped",[4373]],[[12647,12647],"mapped",[4551]],[[12648,12648],"mapped",[4552]],[[12649,12649],"mapped",[4556]],[[12650,12650],"mapped",[4558]],[[12651,12651],"mapped",[4563]],[[12652,12652],"mapped",[4567]],[[12653,12653],"mapped",[4569]],[[12654,12654],"mapped",[4380]],[[12655,12655],"mapped",[4573]],[[12656,12656],"mapped",[4575]],[[12657,12657],"mapped",[4381]],[[12658,12658],"mapped",[4382]],[[12659,12659],"mapped",[4384]],[[12660,12660],"mapped",[4386]],[[12661,12661],"mapped",[4387]],[[12662,12662],"mapped",[4391]],[[12663,12663],"mapped",[4393]],[[12664,12664],"mapped",[4395]],[[12665,12665],"mapped",[4396]],[[12666,12666],"mapped",[4397]],[[12667,12667],"mapped",[4398]],[[12668,12668],"mapped",[4399]],[[12669,12669],"mapped",[4402]],[[12670,12670],"mapped",[4406]],[[12671,12671],"mapped",[4416]],[[12672,12672],"mapped",[4423]],[[12673,12673],"mapped",[4428]],[[12674,12674],"mapped",[4593]],[[12675,12675],"mapped",[4594]],[[12676,12676],"mapped",[4439]],[[12677,12677],"mapped",[4440]],[[12678,12678],"mapped",[4441]],[[12679,12679],"mapped",[4484]],[[12680,12680],"mapped",[4485]],[[12681,12681],"mapped",[4488]],[[12682,12682],"mapped",[4497]],[[12683,12683],"mapped",[4498]],[[12684,12684],"mapped",[4500]],[[12685,12685],"mapped",[4510]],[[12686,12686],"mapped",[4513]],[[12687,12687],"disallowed"],[[12688,12689],"valid",[],"NV8"],[[12690,12690],"mapped",[19968]],[[12691,12691],"mapped",[20108]],[[12692,12692],"mapped",[19977]],[[12693,12693],"mapped",[22235]],[[12694,12694],"mapped",[19978]],[[12695,12695],"mapped",[20013]],[[12696,12696],"mapped",[19979]],[[12697,12697],"mapped",[30002]],[[12698,12698],"mapped",[20057]],[[12699,12699],"mapped",[19993]],[[12700,12700],"mapped",[19969]],[[12701,12701],"mapped",[22825]],[[12702,12702],"mapped",[22320]],[[12703,12703],"mapped",[20154]],[[12704,12727],"valid"],[[12728,12730],"valid"],[[12731,12735],"disallowed"],[[12736,12751],"valid",[],"NV8"],[[12752,12771],"valid",[],"NV8"],[[12772,12783],"disallowed"],[[12784,12799],"valid"],[[12800,12800],"disallowed_STD3_mapped",[40,4352,41]],[[12801,12801],"disallowed_STD3_mapped",[40,4354,41]],[[12802,12802],"disallowed_STD3_mapped",[40,4355,41]],[[12803,12803],"disallowed_STD3_mapped",[40,4357,41]],[[12804,12804],"disallowed_STD3_mapped",[40,4358,41]],[[12805,12805],"disallowed_STD3_mapped",[40,4359,41]],[[12806,12806],"disallowed_STD3_mapped",[40,4361,41]],[[12807,12807],"disallowed_STD3_mapped",[40,4363,41]],[[12808,12808],"disallowed_STD3_mapped",[40,4364,41]],[[12809,12809],"disallowed_STD3_mapped",[40,4366,41]],[[12810,12810],"disallowed_STD3_mapped",[40,4367,41]],[[12811,12811],"disallowed_STD3_mapped",[40,4368,41]],[[12812,12812],"disallowed_STD3_mapped",[40,4369,41]],[[12813,12813],"disallowed_STD3_mapped",[40,4370,41]],[[12814,12814],"disallowed_STD3_mapped",[40,44032,41]],[[12815,12815],"disallowed_STD3_mapped",[40,45208,41]],[[12816,12816],"disallowed_STD3_mapped",[40,45796,41]],[[12817,12817],"disallowed_STD3_mapped",[40,46972,41]],[[12818,12818],"disallowed_STD3_mapped",[40,47560,41]],[[12819,12819],"disallowed_STD3_mapped",[40,48148,41]],[[12820,12820],"disallowed_STD3_mapped",[40,49324,41]],[[12821,12821],"disallowed_STD3_mapped",[40,50500,41]],[[12822,12822],"disallowed_STD3_mapped",[40,51088,41]],[[12823,12823],"disallowed_STD3_mapped",[40,52264,41]],[[12824,12824],"disallowed_STD3_mapped",[40,52852,41]],[[12825,12825],"disallowed_STD3_mapped",[40,53440,41]],[[12826,12826],"disallowed_STD3_mapped",[40,54028,41]],[[12827,12827],"disallowed_STD3_mapped",[40,54616,41]],[[12828,12828],"disallowed_STD3_mapped",[40,51452,41]],[[12829,12829],"disallowed_STD3_mapped",[40,50724,51204,41]],[[12830,12830],"disallowed_STD3_mapped",[40,50724,54980,41]],[[12831,12831],"disallowed"],[[12832,12832],"disallowed_STD3_mapped",[40,19968,41]],[[12833,12833],"disallowed_STD3_mapped",[40,20108,41]],[[12834,12834],"disallowed_STD3_mapped",[40,19977,41]],[[12835,12835],"disallowed_STD3_mapped",[40,22235,41]],[[12836,12836],"disallowed_STD3_mapped",[40,20116,41]],[[12837,12837],"disallowed_STD3_mapped",[40,20845,41]],[[12838,12838],"disallowed_STD3_mapped",[40,19971,41]],[[12839,12839],"disallowed_STD3_mapped",[40,20843,41]],[[12840,12840],"disallowed_STD3_mapped",[40,20061,41]],[[12841,12841],"disallowed_STD3_mapped",[40,21313,41]],[[12842,12842],"disallowed_STD3_mapped",[40,26376,41]],[[12843,12843],"disallowed_STD3_mapped",[40,28779,41]],[[12844,12844],"disallowed_STD3_mapped",[40,27700,41]],[[12845,12845],"disallowed_STD3_mapped",[40,26408,41]],[[12846,12846],"disallowed_STD3_mapped",[40,37329,41]],[[12847,12847],"disallowed_STD3_mapped",[40,22303,41]],[[12848,12848],"disallowed_STD3_mapped",[40,26085,41]],[[12849,12849],"disallowed_STD3_mapped",[40,26666,41]],[[12850,12850],"disallowed_STD3_mapped",[40,26377,41]],[[12851,12851],"disallowed_STD3_mapped",[40,31038,41]],[[12852,12852],"disallowed_STD3_mapped",[40,21517,41]],[[12853,12853],"disallowed_STD3_mapped",[40,29305,41]],[[12854,12854],"disallowed_STD3_mapped",[40,36001,41]],[[12855,12855],"disallowed_STD3_mapped",[40,31069,41]],[[12856,12856],"disallowed_STD3_mapped",[40,21172,41]],[[12857,12857],"disallowed_STD3_mapped",[40,20195,41]],[[12858,12858],"disallowed_STD3_mapped",[40,21628,41]],[[12859,12859],"disallowed_STD3_mapped",[40,23398,41]],[[12860,12860],"disallowed_STD3_mapped",[40,30435,41]],[[12861,12861],"disallowed_STD3_mapped",[40,20225,41]],[[12862,12862],"disallowed_STD3_mapped",[40,36039,41]],[[12863,12863],"disallowed_STD3_mapped",[40,21332,41]],[[12864,12864],"disallowed_STD3_mapped",[40,31085,41]],[[12865,12865],"disallowed_STD3_mapped",[40,20241,41]],[[12866,12866],"disallowed_STD3_mapped",[40,33258,41]],[[12867,12867],"disallowed_STD3_mapped",[40,33267,41]],[[12868,12868],"mapped",[21839]],[[12869,12869],"mapped",[24188]],[[12870,12870],"mapped",[25991]],[[12871,12871],"mapped",[31631]],[[12872,12879],"valid",[],"NV8"],[[12880,12880],"mapped",[112,116,101]],[[12881,12881],"mapped",[50,49]],[[12882,12882],"mapped",[50,50]],[[12883,12883],"mapped",[50,51]],[[12884,12884],"mapped",[50,52]],[[12885,12885],"mapped",[50,53]],[[12886,12886],"mapped",[50,54]],[[12887,12887],"mapped",[50,55]],[[12888,12888],"mapped",[50,56]],[[12889,12889],"mapped",[50,57]],[[12890,12890],"mapped",[51,48]],[[12891,12891],"mapped",[51,49]],[[12892,12892],"mapped",[51,50]],[[12893,12893],"mapped",[51,51]],[[12894,12894],"mapped",[51,52]],[[12895,12895],"mapped",[51,53]],[[12896,12896],"mapped",[4352]],[[12897,12897],"mapped",[4354]],[[12898,12898],"mapped",[4355]],[[12899,12899],"mapped",[4357]],[[12900,12900],"mapped",[4358]],[[12901,12901],"mapped",[4359]],[[12902,12902],"mapped",[4361]],[[12903,12903],"mapped",[4363]],[[12904,12904],"mapped",[4364]],[[12905,12905],"mapped",[4366]],[[12906,12906],"mapped",[4367]],[[12907,12907],"mapped",[4368]],[[12908,12908],"mapped",[4369]],[[12909,12909],"mapped",[4370]],[[12910,12910],"mapped",[44032]],[[12911,12911],"mapped",[45208]],[[12912,12912],"mapped",[45796]],[[12913,12913],"mapped",[46972]],[[12914,12914],"mapped",[47560]],[[12915,12915],"mapped",[48148]],[[12916,12916],"mapped",[49324]],[[12917,12917],"mapped",[50500]],[[12918,12918],"mapped",[51088]],[[12919,12919],"mapped",[52264]],[[12920,12920],"mapped",[52852]],[[12921,12921],"mapped",[53440]],[[12922,12922],"mapped",[54028]],[[12923,12923],"mapped",[54616]],[[12924,12924],"mapped",[52280,44256]],[[12925,12925],"mapped",[51452,51032]],[[12926,12926],"mapped",[50864]],[[12927,12927],"valid",[],"NV8"],[[12928,12928],"mapped",[19968]],[[12929,12929],"mapped",[20108]],[[12930,12930],"mapped",[19977]],[[12931,12931],"mapped",[22235]],[[12932,12932],"mapped",[20116]],[[12933,12933],"mapped",[20845]],[[12934,12934],"mapped",[19971]],[[12935,12935],"mapped",[20843]],[[12936,12936],"mapped",[20061]],[[12937,12937],"mapped",[21313]],[[12938,12938],"mapped",[26376]],[[12939,12939],"mapped",[28779]],[[12940,12940],"mapped",[27700]],[[12941,12941],"mapped",[26408]],[[12942,12942],"mapped",[37329]],[[12943,12943],"mapped",[22303]],[[12944,12944],"mapped",[26085]],[[12945,12945],"mapped",[26666]],[[12946,12946],"mapped",[26377]],[[12947,12947],"mapped",[31038]],[[12948,12948],"mapped",[21517]],[[12949,12949],"mapped",[29305]],[[12950,12950],"mapped",[36001]],[[12951,12951],"mapped",[31069]],[[12952,12952],"mapped",[21172]],[[12953,12953],"mapped",[31192]],[[12954,12954],"mapped",[30007]],[[12955,12955],"mapped",[22899]],[[12956,12956],"mapped",[36969]],[[12957,12957],"mapped",[20778]],[[12958,12958],"mapped",[21360]],[[12959,12959],"mapped",[27880]],[[12960,12960],"mapped",[38917]],[[12961,12961],"mapped",[20241]],[[12962,12962],"mapped",[20889]],[[12963,12963],"mapped",[27491]],[[12964,12964],"mapped",[19978]],[[12965,12965],"mapped",[20013]],[[12966,12966],"mapped",[19979]],[[12967,12967],"mapped",[24038]],[[12968,12968],"mapped",[21491]],[[12969,12969],"mapped",[21307]],[[12970,12970],"mapped",[23447]],[[12971,12971],"mapped",[23398]],[[12972,12972],"mapped",[30435]],[[12973,12973],"mapped",[20225]],[[12974,12974],"mapped",[36039]],[[12975,12975],"mapped",[21332]],[[12976,12976],"mapped",[22812]],[[12977,12977],"mapped",[51,54]],[[12978,12978],"mapped",[51,55]],[[12979,12979],"mapped",[51,56]],[[12980,12980],"mapped",[51,57]],[[12981,12981],"mapped",[52,48]],[[12982,12982],"mapped",[52,49]],[[12983,12983],"mapped",[52,50]],[[12984,12984],"mapped",[52,51]],[[12985,12985],"mapped",[52,52]],[[12986,12986],"mapped",[52,53]],[[12987,12987],"mapped",[52,54]],[[12988,12988],"mapped",[52,55]],[[12989,12989],"mapped",[52,56]],[[12990,12990],"mapped",[52,57]],[[12991,12991],"mapped",[53,48]],[[12992,12992],"mapped",[49,26376]],[[12993,12993],"mapped",[50,26376]],[[12994,12994],"mapped",[51,26376]],[[12995,12995],"mapped",[52,26376]],[[12996,12996],"mapped",[53,26376]],[[12997,12997],"mapped",[54,26376]],[[12998,12998],"mapped",[55,26376]],[[12999,12999],"mapped",[56,26376]],[[13e3,13e3],"mapped",[57,26376]],[[13001,13001],"mapped",[49,48,26376]],[[13002,13002],"mapped",[49,49,26376]],[[13003,13003],"mapped",[49,50,26376]],[[13004,13004],"mapped",[104,103]],[[13005,13005],"mapped",[101,114,103]],[[13006,13006],"mapped",[101,118]],[[13007,13007],"mapped",[108,116,100]],[[13008,13008],"mapped",[12450]],[[13009,13009],"mapped",[12452]],[[13010,13010],"mapped",[12454]],[[13011,13011],"mapped",[12456]],[[13012,13012],"mapped",[12458]],[[13013,13013],"mapped",[12459]],[[13014,13014],"mapped",[12461]],[[13015,13015],"mapped",[12463]],[[13016,13016],"mapped",[12465]],[[13017,13017],"mapped",[12467]],[[13018,13018],"mapped",[12469]],[[13019,13019],"mapped",[12471]],[[13020,13020],"mapped",[12473]],[[13021,13021],"mapped",[12475]],[[13022,13022],"mapped",[12477]],[[13023,13023],"mapped",[12479]],[[13024,13024],"mapped",[12481]],[[13025,13025],"mapped",[12484]],[[13026,13026],"mapped",[12486]],[[13027,13027],"mapped",[12488]],[[13028,13028],"mapped",[12490]],[[13029,13029],"mapped",[12491]],[[13030,13030],"mapped",[12492]],[[13031,13031],"mapped",[12493]],[[13032,13032],"mapped",[12494]],[[13033,13033],"mapped",[12495]],[[13034,13034],"mapped",[12498]],[[13035,13035],"mapped",[12501]],[[13036,13036],"mapped",[12504]],[[13037,13037],"mapped",[12507]],[[13038,13038],"mapped",[12510]],[[13039,13039],"mapped",[12511]],[[13040,13040],"mapped",[12512]],[[13041,13041],"mapped",[12513]],[[13042,13042],"mapped",[12514]],[[13043,13043],"mapped",[12516]],[[13044,13044],"mapped",[12518]],[[13045,13045],"mapped",[12520]],[[13046,13046],"mapped",[12521]],[[13047,13047],"mapped",[12522]],[[13048,13048],"mapped",[12523]],[[13049,13049],"mapped",[12524]],[[13050,13050],"mapped",[12525]],[[13051,13051],"mapped",[12527]],[[13052,13052],"mapped",[12528]],[[13053,13053],"mapped",[12529]],[[13054,13054],"mapped",[12530]],[[13055,13055],"disallowed"],[[13056,13056],"mapped",[12450,12497,12540,12488]],[[13057,13057],"mapped",[12450,12523,12501,12449]],[[13058,13058],"mapped",[12450,12531,12506,12450]],[[13059,13059],"mapped",[12450,12540,12523]],[[13060,13060],"mapped",[12452,12491,12531,12464]],[[13061,13061],"mapped",[12452,12531,12481]],[[13062,13062],"mapped",[12454,12457,12531]],[[13063,13063],"mapped",[12456,12473,12463,12540,12489]],[[13064,13064],"mapped",[12456,12540,12459,12540]],[[13065,13065],"mapped",[12458,12531,12473]],[[13066,13066],"mapped",[12458,12540,12512]],[[13067,13067],"mapped",[12459,12452,12522]],[[13068,13068],"mapped",[12459,12521,12483,12488]],[[13069,13069],"mapped",[12459,12525,12522,12540]],[[13070,13070],"mapped",[12460,12525,12531]],[[13071,13071],"mapped",[12460,12531,12510]],[[13072,13072],"mapped",[12462,12460]],[[13073,13073],"mapped",[12462,12491,12540]],[[13074,13074],"mapped",[12461,12517,12522,12540]],[[13075,13075],"mapped",[12462,12523,12480,12540]],[[13076,13076],"mapped",[12461,12525]],[[13077,13077],"mapped",[12461,12525,12464,12521,12512]],[[13078,13078],"mapped",[12461,12525,12513,12540,12488,12523]],[[13079,13079],"mapped",[12461,12525,12527,12483,12488]],[[13080,13080],"mapped",[12464,12521,12512]],[[13081,13081],"mapped",[12464,12521,12512,12488,12531]],[[13082,13082],"mapped",[12463,12523,12476,12452,12525]],[[13083,13083],"mapped",[12463,12525,12540,12493]],[[13084,13084],"mapped",[12465,12540,12473]],[[13085,13085],"mapped",[12467,12523,12490]],[[13086,13086],"mapped",[12467,12540,12509]],[[13087,13087],"mapped",[12469,12452,12463,12523]],[[13088,13088],"mapped",[12469,12531,12481,12540,12512]],[[13089,13089],"mapped",[12471,12522,12531,12464]],[[13090,13090],"mapped",[12475,12531,12481]],[[13091,13091],"mapped",[12475,12531,12488]],[[13092,13092],"mapped",[12480,12540,12473]],[[13093,13093],"mapped",[12487,12471]],[[13094,13094],"mapped",[12489,12523]],[[13095,13095],"mapped",[12488,12531]],[[13096,13096],"mapped",[12490,12494]],[[13097,13097],"mapped",[12494,12483,12488]],[[13098,13098],"mapped",[12495,12452,12484]],[[13099,13099],"mapped",[12497,12540,12475,12531,12488]],[[13100,13100],"mapped",[12497,12540,12484]],[[13101,13101],"mapped",[12496,12540,12524,12523]],[[13102,13102],"mapped",[12500,12450,12473,12488,12523]],[[13103,13103],"mapped",[12500,12463,12523]],[[13104,13104],"mapped",[12500,12467]],[[13105,13105],"mapped",[12499,12523]],[[13106,13106],"mapped",[12501,12449,12521,12483,12489]],[[13107,13107],"mapped",[12501,12451,12540,12488]],[[13108,13108],"mapped",[12502,12483,12471,12455,12523]],[[13109,13109],"mapped",[12501,12521,12531]],[[13110,13110],"mapped",[12504,12463,12479,12540,12523]],[[13111,13111],"mapped",[12506,12477]],[[13112,13112],"mapped",[12506,12491,12498]],[[13113,13113],"mapped",[12504,12523,12484]],[[13114,13114],"mapped",[12506,12531,12473]],[[13115,13115],"mapped",[12506,12540,12472]],[[13116,13116],"mapped",[12505,12540,12479]],[[13117,13117],"mapped",[12509,12452,12531,12488]],[[13118,13118],"mapped",[12508,12523,12488]],[[13119,13119],"mapped",[12507,12531]],[[13120,13120],"mapped",[12509,12531,12489]],[[13121,13121],"mapped",[12507,12540,12523]],[[13122,13122],"mapped",[12507,12540,12531]],[[13123,13123],"mapped",[12510,12452,12463,12525]],[[13124,13124],"mapped",[12510,12452,12523]],[[13125,13125],"mapped",[12510,12483,12495]],[[13126,13126],"mapped",[12510,12523,12463]],[[13127,13127],"mapped",[12510,12531,12471,12519,12531]],[[13128,13128],"mapped",[12511,12463,12525,12531]],[[13129,13129],"mapped",[12511,12522]],[[13130,13130],"mapped",[12511,12522,12496,12540,12523]],[[13131,13131],"mapped",[12513,12460]],[[13132,13132],"mapped",[12513,12460,12488,12531]],[[13133,13133],"mapped",[12513,12540,12488,12523]],[[13134,13134],"mapped",[12516,12540,12489]],[[13135,13135],"mapped",[12516,12540,12523]],[[13136,13136],"mapped",[12518,12450,12531]],[[13137,13137],"mapped",[12522,12483,12488,12523]],[[13138,13138],"mapped",[12522,12521]],[[13139,13139],"mapped",[12523,12500,12540]],[[13140,13140],"mapped",[12523,12540,12502,12523]],[[13141,13141],"mapped",[12524,12512]],[[13142,13142],"mapped",[12524,12531,12488,12466,12531]],[[13143,13143],"mapped",[12527,12483,12488]],[[13144,13144],"mapped",[48,28857]],[[13145,13145],"mapped",[49,28857]],[[13146,13146],"mapped",[50,28857]],[[13147,13147],"mapped",[51,28857]],[[13148,13148],"mapped",[52,28857]],[[13149,13149],"mapped",[53,28857]],[[13150,13150],"mapped",[54,28857]],[[13151,13151],"mapped",[55,28857]],[[13152,13152],"mapped",[56,28857]],[[13153,13153],"mapped",[57,28857]],[[13154,13154],"mapped",[49,48,28857]],[[13155,13155],"mapped",[49,49,28857]],[[13156,13156],"mapped",[49,50,28857]],[[13157,13157],"mapped",[49,51,28857]],[[13158,13158],"mapped",[49,52,28857]],[[13159,13159],"mapped",[49,53,28857]],[[13160,13160],"mapped",[49,54,28857]],[[13161,13161],"mapped",[49,55,28857]],[[13162,13162],"mapped",[49,56,28857]],[[13163,13163],"mapped",[49,57,28857]],[[13164,13164],"mapped",[50,48,28857]],[[13165,13165],"mapped",[50,49,28857]],[[13166,13166],"mapped",[50,50,28857]],[[13167,13167],"mapped",[50,51,28857]],[[13168,13168],"mapped",[50,52,28857]],[[13169,13169],"mapped",[104,112,97]],[[13170,13170],"mapped",[100,97]],[[13171,13171],"mapped",[97,117]],[[13172,13172],"mapped",[98,97,114]],[[13173,13173],"mapped",[111,118]],[[13174,13174],"mapped",[112,99]],[[13175,13175],"mapped",[100,109]],[[13176,13176],"mapped",[100,109,50]],[[13177,13177],"mapped",[100,109,51]],[[13178,13178],"mapped",[105,117]],[[13179,13179],"mapped",[24179,25104]],[[13180,13180],"mapped",[26157,21644]],[[13181,13181],"mapped",[22823,27491]],[[13182,13182],"mapped",[26126,27835]],[[13183,13183],"mapped",[26666,24335,20250,31038]],[[13184,13184],"mapped",[112,97]],[[13185,13185],"mapped",[110,97]],[[13186,13186],"mapped",[956,97]],[[13187,13187],"mapped",[109,97]],[[13188,13188],"mapped",[107,97]],[[13189,13189],"mapped",[107,98]],[[13190,13190],"mapped",[109,98]],[[13191,13191],"mapped",[103,98]],[[13192,13192],"mapped",[99,97,108]],[[13193,13193],"mapped",[107,99,97,108]],[[13194,13194],"mapped",[112,102]],[[13195,13195],"mapped",[110,102]],[[13196,13196],"mapped",[956,102]],[[13197,13197],"mapped",[956,103]],[[13198,13198],"mapped",[109,103]],[[13199,13199],"mapped",[107,103]],[[13200,13200],"mapped",[104,122]],[[13201,13201],"mapped",[107,104,122]],[[13202,13202],"mapped",[109,104,122]],[[13203,13203],"mapped",[103,104,122]],[[13204,13204],"mapped",[116,104,122]],[[13205,13205],"mapped",[956,108]],[[13206,13206],"mapped",[109,108]],[[13207,13207],"mapped",[100,108]],[[13208,13208],"mapped",[107,108]],[[13209,13209],"mapped",[102,109]],[[13210,13210],"mapped",[110,109]],[[13211,13211],"mapped",[956,109]],[[13212,13212],"mapped",[109,109]],[[13213,13213],"mapped",[99,109]],[[13214,13214],"mapped",[107,109]],[[13215,13215],"mapped",[109,109,50]],[[13216,13216],"mapped",[99,109,50]],[[13217,13217],"mapped",[109,50]],[[13218,13218],"mapped",[107,109,50]],[[13219,13219],"mapped",[109,109,51]],[[13220,13220],"mapped",[99,109,51]],[[13221,13221],"mapped",[109,51]],[[13222,13222],"mapped",[107,109,51]],[[13223,13223],"mapped",[109,8725,115]],[[13224,13224],"mapped",[109,8725,115,50]],[[13225,13225],"mapped",[112,97]],[[13226,13226],"mapped",[107,112,97]],[[13227,13227],"mapped",[109,112,97]],[[13228,13228],"mapped",[103,112,97]],[[13229,13229],"mapped",[114,97,100]],[[13230,13230],"mapped",[114,97,100,8725,115]],[[13231,13231],"mapped",[114,97,100,8725,115,50]],[[13232,13232],"mapped",[112,115]],[[13233,13233],"mapped",[110,115]],[[13234,13234],"mapped",[956,115]],[[13235,13235],"mapped",[109,115]],[[13236,13236],"mapped",[112,118]],[[13237,13237],"mapped",[110,118]],[[13238,13238],"mapped",[956,118]],[[13239,13239],"mapped",[109,118]],[[13240,13240],"mapped",[107,118]],[[13241,13241],"mapped",[109,118]],[[13242,13242],"mapped",[112,119]],[[13243,13243],"mapped",[110,119]],[[13244,13244],"mapped",[956,119]],[[13245,13245],"mapped",[109,119]],[[13246,13246],"mapped",[107,119]],[[13247,13247],"mapped",[109,119]],[[13248,13248],"mapped",[107,969]],[[13249,13249],"mapped",[109,969]],[[13250,13250],"disallowed"],[[13251,13251],"mapped",[98,113]],[[13252,13252],"mapped",[99,99]],[[13253,13253],"mapped",[99,100]],[[13254,13254],"mapped",[99,8725,107,103]],[[13255,13255],"disallowed"],[[13256,13256],"mapped",[100,98]],[[13257,13257],"mapped",[103,121]],[[13258,13258],"mapped",[104,97]],[[13259,13259],"mapped",[104,112]],[[13260,13260],"mapped",[105,110]],[[13261,13261],"mapped",[107,107]],[[13262,13262],"mapped",[107,109]],[[13263,13263],"mapped",[107,116]],[[13264,13264],"mapped",[108,109]],[[13265,13265],"mapped",[108,110]],[[13266,13266],"mapped",[108,111,103]],[[13267,13267],"mapped",[108,120]],[[13268,13268],"mapped",[109,98]],[[13269,13269],"mapped",[109,105,108]],[[13270,13270],"mapped",[109,111,108]],[[13271,13271],"mapped",[112,104]],[[13272,13272],"disallowed"],[[13273,13273],"mapped",[112,112,109]],[[13274,13274],"mapped",[112,114]],[[13275,13275],"mapped",[115,114]],[[13276,13276],"mapped",[115,118]],[[13277,13277],"mapped",[119,98]],[[13278,13278],"mapped",[118,8725,109]],[[13279,13279],"mapped",[97,8725,109]],[[13280,13280],"mapped",[49,26085]],[[13281,13281],"mapped",[50,26085]],[[13282,13282],"mapped",[51,26085]],[[13283,13283],"mapped",[52,26085]],[[13284,13284],"mapped",[53,26085]],[[13285,13285],"mapped",[54,26085]],[[13286,13286],"mapped",[55,26085]],[[13287,13287],"mapped",[56,26085]],[[13288,13288],"mapped",[57,26085]],[[13289,13289],"mapped",[49,48,26085]],[[13290,13290],"mapped",[49,49,26085]],[[13291,13291],"mapped",[49,50,26085]],[[13292,13292],"mapped",[49,51,26085]],[[13293,13293],"mapped",[49,52,26085]],[[13294,13294],"mapped",[49,53,26085]],[[13295,13295],"mapped",[49,54,26085]],[[13296,13296],"mapped",[49,55,26085]],[[13297,13297],"mapped",[49,56,26085]],[[13298,13298],"mapped",[49,57,26085]],[[13299,13299],"mapped",[50,48,26085]],[[13300,13300],"mapped",[50,49,26085]],[[13301,13301],"mapped",[50,50,26085]],[[13302,13302],"mapped",[50,51,26085]],[[13303,13303],"mapped",[50,52,26085]],[[13304,13304],"mapped",[50,53,26085]],[[13305,13305],"mapped",[50,54,26085]],[[13306,13306],"mapped",[50,55,26085]],[[13307,13307],"mapped",[50,56,26085]],[[13308,13308],"mapped",[50,57,26085]],[[13309,13309],"mapped",[51,48,26085]],[[13310,13310],"mapped",[51,49,26085]],[[13311,13311],"mapped",[103,97,108]],[[13312,19893],"valid"],[[19894,19903],"disallowed"],[[19904,19967],"valid",[],"NV8"],[[19968,40869],"valid"],[[40870,40891],"valid"],[[40892,40899],"valid"],[[40900,40907],"valid"],[[40908,40908],"valid"],[[40909,40917],"valid"],[[40918,40959],"disallowed"],[[40960,42124],"valid"],[[42125,42127],"disallowed"],[[42128,42145],"valid",[],"NV8"],[[42146,42147],"valid",[],"NV8"],[[42148,42163],"valid",[],"NV8"],[[42164,42164],"valid",[],"NV8"],[[42165,42176],"valid",[],"NV8"],[[42177,42177],"valid",[],"NV8"],[[42178,42180],"valid",[],"NV8"],[[42181,42181],"valid",[],"NV8"],[[42182,42182],"valid",[],"NV8"],[[42183,42191],"disallowed"],[[42192,42237],"valid"],[[42238,42239],"valid",[],"NV8"],[[42240,42508],"valid"],[[42509,42511],"valid",[],"NV8"],[[42512,42539],"valid"],[[42540,42559],"disallowed"],[[42560,42560],"mapped",[42561]],[[42561,42561],"valid"],[[42562,42562],"mapped",[42563]],[[42563,42563],"valid"],[[42564,42564],"mapped",[42565]],[[42565,42565],"valid"],[[42566,42566],"mapped",[42567]],[[42567,42567],"valid"],[[42568,42568],"mapped",[42569]],[[42569,42569],"valid"],[[42570,42570],"mapped",[42571]],[[42571,42571],"valid"],[[42572,42572],"mapped",[42573]],[[42573,42573],"valid"],[[42574,42574],"mapped",[42575]],[[42575,42575],"valid"],[[42576,42576],"mapped",[42577]],[[42577,42577],"valid"],[[42578,42578],"mapped",[42579]],[[42579,42579],"valid"],[[42580,42580],"mapped",[42581]],[[42581,42581],"valid"],[[42582,42582],"mapped",[42583]],[[42583,42583],"valid"],[[42584,42584],"mapped",[42585]],[[42585,42585],"valid"],[[42586,42586],"mapped",[42587]],[[42587,42587],"valid"],[[42588,42588],"mapped",[42589]],[[42589,42589],"valid"],[[42590,42590],"mapped",[42591]],[[42591,42591],"valid"],[[42592,42592],"mapped",[42593]],[[42593,42593],"valid"],[[42594,42594],"mapped",[42595]],[[42595,42595],"valid"],[[42596,42596],"mapped",[42597]],[[42597,42597],"valid"],[[42598,42598],"mapped",[42599]],[[42599,42599],"valid"],[[42600,42600],"mapped",[42601]],[[42601,42601],"valid"],[[42602,42602],"mapped",[42603]],[[42603,42603],"valid"],[[42604,42604],"mapped",[42605]],[[42605,42607],"valid"],[[42608,42611],"valid",[],"NV8"],[[42612,42619],"valid"],[[42620,42621],"valid"],[[42622,42622],"valid",[],"NV8"],[[42623,42623],"valid"],[[42624,42624],"mapped",[42625]],[[42625,42625],"valid"],[[42626,42626],"mapped",[42627]],[[42627,42627],"valid"],[[42628,42628],"mapped",[42629]],[[42629,42629],"valid"],[[42630,42630],"mapped",[42631]],[[42631,42631],"valid"],[[42632,42632],"mapped",[42633]],[[42633,42633],"valid"],[[42634,42634],"mapped",[42635]],[[42635,42635],"valid"],[[42636,42636],"mapped",[42637]],[[42637,42637],"valid"],[[42638,42638],"mapped",[42639]],[[42639,42639],"valid"],[[42640,42640],"mapped",[42641]],[[42641,42641],"valid"],[[42642,42642],"mapped",[42643]],[[42643,42643],"valid"],[[42644,42644],"mapped",[42645]],[[42645,42645],"valid"],[[42646,42646],"mapped",[42647]],[[42647,42647],"valid"],[[42648,42648],"mapped",[42649]],[[42649,42649],"valid"],[[42650,42650],"mapped",[42651]],[[42651,42651],"valid"],[[42652,42652],"mapped",[1098]],[[42653,42653],"mapped",[1100]],[[42654,42654],"valid"],[[42655,42655],"valid"],[[42656,42725],"valid"],[[42726,42735],"valid",[],"NV8"],[[42736,42737],"valid"],[[42738,42743],"valid",[],"NV8"],[[42744,42751],"disallowed"],[[42752,42774],"valid",[],"NV8"],[[42775,42778],"valid"],[[42779,42783],"valid"],[[42784,42785],"valid",[],"NV8"],[[42786,42786],"mapped",[42787]],[[42787,42787],"valid"],[[42788,42788],"mapped",[42789]],[[42789,42789],"valid"],[[42790,42790],"mapped",[42791]],[[42791,42791],"valid"],[[42792,42792],"mapped",[42793]],[[42793,42793],"valid"],[[42794,42794],"mapped",[42795]],[[42795,42795],"valid"],[[42796,42796],"mapped",[42797]],[[42797,42797],"valid"],[[42798,42798],"mapped",[42799]],[[42799,42801],"valid"],[[42802,42802],"mapped",[42803]],[[42803,42803],"valid"],[[42804,42804],"mapped",[42805]],[[42805,42805],"valid"],[[42806,42806],"mapped",[42807]],[[42807,42807],"valid"],[[42808,42808],"mapped",[42809]],[[42809,42809],"valid"],[[42810,42810],"mapped",[42811]],[[42811,42811],"valid"],[[42812,42812],"mapped",[42813]],[[42813,42813],"valid"],[[42814,42814],"mapped",[42815]],[[42815,42815],"valid"],[[42816,42816],"mapped",[42817]],[[42817,42817],"valid"],[[42818,42818],"mapped",[42819]],[[42819,42819],"valid"],[[42820,42820],"mapped",[42821]],[[42821,42821],"valid"],[[42822,42822],"mapped",[42823]],[[42823,42823],"valid"],[[42824,42824],"mapped",[42825]],[[42825,42825],"valid"],[[42826,42826],"mapped",[42827]],[[42827,42827],"valid"],[[42828,42828],"mapped",[42829]],[[42829,42829],"valid"],[[42830,42830],"mapped",[42831]],[[42831,42831],"valid"],[[42832,42832],"mapped",[42833]],[[42833,42833],"valid"],[[42834,42834],"mapped",[42835]],[[42835,42835],"valid"],[[42836,42836],"mapped",[42837]],[[42837,42837],"valid"],[[42838,42838],"mapped",[42839]],[[42839,42839],"valid"],[[42840,42840],"mapped",[42841]],[[42841,42841],"valid"],[[42842,42842],"mapped",[42843]],[[42843,42843],"valid"],[[42844,42844],"mapped",[42845]],[[42845,42845],"valid"],[[42846,42846],"mapped",[42847]],[[42847,42847],"valid"],[[42848,42848],"mapped",[42849]],[[42849,42849],"valid"],[[42850,42850],"mapped",[42851]],[[42851,42851],"valid"],[[42852,42852],"mapped",[42853]],[[42853,42853],"valid"],[[42854,42854],"mapped",[42855]],[[42855,42855],"valid"],[[42856,42856],"mapped",[42857]],[[42857,42857],"valid"],[[42858,42858],"mapped",[42859]],[[42859,42859],"valid"],[[42860,42860],"mapped",[42861]],[[42861,42861],"valid"],[[42862,42862],"mapped",[42863]],[[42863,42863],"valid"],[[42864,42864],"mapped",[42863]],[[42865,42872],"valid"],[[42873,42873],"mapped",[42874]],[[42874,42874],"valid"],[[42875,42875],"mapped",[42876]],[[42876,42876],"valid"],[[42877,42877],"mapped",[7545]],[[42878,42878],"mapped",[42879]],[[42879,42879],"valid"],[[42880,42880],"mapped",[42881]],[[42881,42881],"valid"],[[42882,42882],"mapped",[42883]],[[42883,42883],"valid"],[[42884,42884],"mapped",[42885]],[[42885,42885],"valid"],[[42886,42886],"mapped",[42887]],[[42887,42888],"valid"],[[42889,42890],"valid",[],"NV8"],[[42891,42891],"mapped",[42892]],[[42892,42892],"valid"],[[42893,42893],"mapped",[613]],[[42894,42894],"valid"],[[42895,42895],"valid"],[[42896,42896],"mapped",[42897]],[[42897,42897],"valid"],[[42898,42898],"mapped",[42899]],[[42899,42899],"valid"],[[42900,42901],"valid"],[[42902,42902],"mapped",[42903]],[[42903,42903],"valid"],[[42904,42904],"mapped",[42905]],[[42905,42905],"valid"],[[42906,42906],"mapped",[42907]],[[42907,42907],"valid"],[[42908,42908],"mapped",[42909]],[[42909,42909],"valid"],[[42910,42910],"mapped",[42911]],[[42911,42911],"valid"],[[42912,42912],"mapped",[42913]],[[42913,42913],"valid"],[[42914,42914],"mapped",[42915]],[[42915,42915],"valid"],[[42916,42916],"mapped",[42917]],[[42917,42917],"valid"],[[42918,42918],"mapped",[42919]],[[42919,42919],"valid"],[[42920,42920],"mapped",[42921]],[[42921,42921],"valid"],[[42922,42922],"mapped",[614]],[[42923,42923],"mapped",[604]],[[42924,42924],"mapped",[609]],[[42925,42925],"mapped",[620]],[[42926,42927],"disallowed"],[[42928,42928],"mapped",[670]],[[42929,42929],"mapped",[647]],[[42930,42930],"mapped",[669]],[[42931,42931],"mapped",[43859]],[[42932,42932],"mapped",[42933]],[[42933,42933],"valid"],[[42934,42934],"mapped",[42935]],[[42935,42935],"valid"],[[42936,42998],"disallowed"],[[42999,42999],"valid"],[[43e3,43e3],"mapped",[295]],[[43001,43001],"mapped",[339]],[[43002,43002],"valid"],[[43003,43007],"valid"],[[43008,43047],"valid"],[[43048,43051],"valid",[],"NV8"],[[43052,43055],"disallowed"],[[43056,43065],"valid",[],"NV8"],[[43066,43071],"disallowed"],[[43072,43123],"valid"],[[43124,43127],"valid",[],"NV8"],[[43128,43135],"disallowed"],[[43136,43204],"valid"],[[43205,43213],"disallowed"],[[43214,43215],"valid",[],"NV8"],[[43216,43225],"valid"],[[43226,43231],"disallowed"],[[43232,43255],"valid"],[[43256,43258],"valid",[],"NV8"],[[43259,43259],"valid"],[[43260,43260],"valid",[],"NV8"],[[43261,43261],"valid"],[[43262,43263],"disallowed"],[[43264,43309],"valid"],[[43310,43311],"valid",[],"NV8"],[[43312,43347],"valid"],[[43348,43358],"disallowed"],[[43359,43359],"valid",[],"NV8"],[[43360,43388],"valid",[],"NV8"],[[43389,43391],"disallowed"],[[43392,43456],"valid"],[[43457,43469],"valid",[],"NV8"],[[43470,43470],"disallowed"],[[43471,43481],"valid"],[[43482,43485],"disallowed"],[[43486,43487],"valid",[],"NV8"],[[43488,43518],"valid"],[[43519,43519],"disallowed"],[[43520,43574],"valid"],[[43575,43583],"disallowed"],[[43584,43597],"valid"],[[43598,43599],"disallowed"],[[43600,43609],"valid"],[[43610,43611],"disallowed"],[[43612,43615],"valid",[],"NV8"],[[43616,43638],"valid"],[[43639,43641],"valid",[],"NV8"],[[43642,43643],"valid"],[[43644,43647],"valid"],[[43648,43714],"valid"],[[43715,43738],"disallowed"],[[43739,43741],"valid"],[[43742,43743],"valid",[],"NV8"],[[43744,43759],"valid"],[[43760,43761],"valid",[],"NV8"],[[43762,43766],"valid"],[[43767,43776],"disallowed"],[[43777,43782],"valid"],[[43783,43784],"disallowed"],[[43785,43790],"valid"],[[43791,43792],"disallowed"],[[43793,43798],"valid"],[[43799,43807],"disallowed"],[[43808,43814],"valid"],[[43815,43815],"disallowed"],[[43816,43822],"valid"],[[43823,43823],"disallowed"],[[43824,43866],"valid"],[[43867,43867],"valid",[],"NV8"],[[43868,43868],"mapped",[42791]],[[43869,43869],"mapped",[43831]],[[43870,43870],"mapped",[619]],[[43871,43871],"mapped",[43858]],[[43872,43875],"valid"],[[43876,43877],"valid"],[[43878,43887],"disallowed"],[[43888,43888],"mapped",[5024]],[[43889,43889],"mapped",[5025]],[[43890,43890],"mapped",[5026]],[[43891,43891],"mapped",[5027]],[[43892,43892],"mapped",[5028]],[[43893,43893],"mapped",[5029]],[[43894,43894],"mapped",[5030]],[[43895,43895],"mapped",[5031]],[[43896,43896],"mapped",[5032]],[[43897,43897],"mapped",[5033]],[[43898,43898],"mapped",[5034]],[[43899,43899],"mapped",[5035]],[[43900,43900],"mapped",[5036]],[[43901,43901],"mapped",[5037]],[[43902,43902],"mapped",[5038]],[[43903,43903],"mapped",[5039]],[[43904,43904],"mapped",[5040]],[[43905,43905],"mapped",[5041]],[[43906,43906],"mapped",[5042]],[[43907,43907],"mapped",[5043]],[[43908,43908],"mapped",[5044]],[[43909,43909],"mapped",[5045]],[[43910,43910],"mapped",[5046]],[[43911,43911],"mapped",[5047]],[[43912,43912],"mapped",[5048]],[[43913,43913],"mapped",[5049]],[[43914,43914],"mapped",[5050]],[[43915,43915],"mapped",[5051]],[[43916,43916],"mapped",[5052]],[[43917,43917],"mapped",[5053]],[[43918,43918],"mapped",[5054]],[[43919,43919],"mapped",[5055]],[[43920,43920],"mapped",[5056]],[[43921,43921],"mapped",[5057]],[[43922,43922],"mapped",[5058]],[[43923,43923],"mapped",[5059]],[[43924,43924],"mapped",[5060]],[[43925,43925],"mapped",[5061]],[[43926,43926],"mapped",[5062]],[[43927,43927],"mapped",[5063]],[[43928,43928],"mapped",[5064]],[[43929,43929],"mapped",[5065]],[[43930,43930],"mapped",[5066]],[[43931,43931],"mapped",[5067]],[[43932,43932],"mapped",[5068]],[[43933,43933],"mapped",[5069]],[[43934,43934],"mapped",[5070]],[[43935,43935],"mapped",[5071]],[[43936,43936],"mapped",[5072]],[[43937,43937],"mapped",[5073]],[[43938,43938],"mapped",[5074]],[[43939,43939],"mapped",[5075]],[[43940,43940],"mapped",[5076]],[[43941,43941],"mapped",[5077]],[[43942,43942],"mapped",[5078]],[[43943,43943],"mapped",[5079]],[[43944,43944],"mapped",[5080]],[[43945,43945],"mapped",[5081]],[[43946,43946],"mapped",[5082]],[[43947,43947],"mapped",[5083]],[[43948,43948],"mapped",[5084]],[[43949,43949],"mapped",[5085]],[[43950,43950],"mapped",[5086]],[[43951,43951],"mapped",[5087]],[[43952,43952],"mapped",[5088]],[[43953,43953],"mapped",[5089]],[[43954,43954],"mapped",[5090]],[[43955,43955],"mapped",[5091]],[[43956,43956],"mapped",[5092]],[[43957,43957],"mapped",[5093]],[[43958,43958],"mapped",[5094]],[[43959,43959],"mapped",[5095]],[[43960,43960],"mapped",[5096]],[[43961,43961],"mapped",[5097]],[[43962,43962],"mapped",[5098]],[[43963,43963],"mapped",[5099]],[[43964,43964],"mapped",[5100]],[[43965,43965],"mapped",[5101]],[[43966,43966],"mapped",[5102]],[[43967,43967],"mapped",[5103]],[[43968,44010],"valid"],[[44011,44011],"valid",[],"NV8"],[[44012,44013],"valid"],[[44014,44015],"disallowed"],[[44016,44025],"valid"],[[44026,44031],"disallowed"],[[44032,55203],"valid"],[[55204,55215],"disallowed"],[[55216,55238],"valid",[],"NV8"],[[55239,55242],"disallowed"],[[55243,55291],"valid",[],"NV8"],[[55292,55295],"disallowed"],[[55296,57343],"disallowed"],[[57344,63743],"disallowed"],[[63744,63744],"mapped",[35912]],[[63745,63745],"mapped",[26356]],[[63746,63746],"mapped",[36554]],[[63747,63747],"mapped",[36040]],[[63748,63748],"mapped",[28369]],[[63749,63749],"mapped",[20018]],[[63750,63750],"mapped",[21477]],[[63751,63752],"mapped",[40860]],[[63753,63753],"mapped",[22865]],[[63754,63754],"mapped",[37329]],[[63755,63755],"mapped",[21895]],[[63756,63756],"mapped",[22856]],[[63757,63757],"mapped",[25078]],[[63758,63758],"mapped",[30313]],[[63759,63759],"mapped",[32645]],[[63760,63760],"mapped",[34367]],[[63761,63761],"mapped",[34746]],[[63762,63762],"mapped",[35064]],[[63763,63763],"mapped",[37007]],[[63764,63764],"mapped",[27138]],[[63765,63765],"mapped",[27931]],[[63766,63766],"mapped",[28889]],[[63767,63767],"mapped",[29662]],[[63768,63768],"mapped",[33853]],[[63769,63769],"mapped",[37226]],[[63770,63770],"mapped",[39409]],[[63771,63771],"mapped",[20098]],[[63772,63772],"mapped",[21365]],[[63773,63773],"mapped",[27396]],[[63774,63774],"mapped",[29211]],[[63775,63775],"mapped",[34349]],[[63776,63776],"mapped",[40478]],[[63777,63777],"mapped",[23888]],[[63778,63778],"mapped",[28651]],[[63779,63779],"mapped",[34253]],[[63780,63780],"mapped",[35172]],[[63781,63781],"mapped",[25289]],[[63782,63782],"mapped",[33240]],[[63783,63783],"mapped",[34847]],[[63784,63784],"mapped",[24266]],[[63785,63785],"mapped",[26391]],[[63786,63786],"mapped",[28010]],[[63787,63787],"mapped",[29436]],[[63788,63788],"mapped",[37070]],[[63789,63789],"mapped",[20358]],[[63790,63790],"mapped",[20919]],[[63791,63791],"mapped",[21214]],[[63792,63792],"mapped",[25796]],[[63793,63793],"mapped",[27347]],[[63794,63794],"mapped",[29200]],[[63795,63795],"mapped",[30439]],[[63796,63796],"mapped",[32769]],[[63797,63797],"mapped",[34310]],[[63798,63798],"mapped",[34396]],[[63799,63799],"mapped",[36335]],[[63800,63800],"mapped",[38706]],[[63801,63801],"mapped",[39791]],[[63802,63802],"mapped",[40442]],[[63803,63803],"mapped",[30860]],[[63804,63804],"mapped",[31103]],[[63805,63805],"mapped",[32160]],[[63806,63806],"mapped",[33737]],[[63807,63807],"mapped",[37636]],[[63808,63808],"mapped",[40575]],[[63809,63809],"mapped",[35542]],[[63810,63810],"mapped",[22751]],[[63811,63811],"mapped",[24324]],[[63812,63812],"mapped",[31840]],[[63813,63813],"mapped",[32894]],[[63814,63814],"mapped",[29282]],[[63815,63815],"mapped",[30922]],[[63816,63816],"mapped",[36034]],[[63817,63817],"mapped",[38647]],[[63818,63818],"mapped",[22744]],[[63819,63819],"mapped",[23650]],[[63820,63820],"mapped",[27155]],[[63821,63821],"mapped",[28122]],[[63822,63822],"mapped",[28431]],[[63823,63823],"mapped",[32047]],[[63824,63824],"mapped",[32311]],[[63825,63825],"mapped",[38475]],[[63826,63826],"mapped",[21202]],[[63827,63827],"mapped",[32907]],[[63828,63828],"mapped",[20956]],[[63829,63829],"mapped",[20940]],[[63830,63830],"mapped",[31260]],[[63831,63831],"mapped",[32190]],[[63832,63832],"mapped",[33777]],[[63833,63833],"mapped",[38517]],[[63834,63834],"mapped",[35712]],[[63835,63835],"mapped",[25295]],[[63836,63836],"mapped",[27138]],[[63837,63837],"mapped",[35582]],[[63838,63838],"mapped",[20025]],[[63839,63839],"mapped",[23527]],[[63840,63840],"mapped",[24594]],[[63841,63841],"mapped",[29575]],[[63842,63842],"mapped",[30064]],[[63843,63843],"mapped",[21271]],[[63844,63844],"mapped",[30971]],[[63845,63845],"mapped",[20415]],[[63846,63846],"mapped",[24489]],[[63847,63847],"mapped",[19981]],[[63848,63848],"mapped",[27852]],[[63849,63849],"mapped",[25976]],[[63850,63850],"mapped",[32034]],[[63851,63851],"mapped",[21443]],[[63852,63852],"mapped",[22622]],[[63853,63853],"mapped",[30465]],[[63854,63854],"mapped",[33865]],[[63855,63855],"mapped",[35498]],[[63856,63856],"mapped",[27578]],[[63857,63857],"mapped",[36784]],[[63858,63858],"mapped",[27784]],[[63859,63859],"mapped",[25342]],[[63860,63860],"mapped",[33509]],[[63861,63861],"mapped",[25504]],[[63862,63862],"mapped",[30053]],[[63863,63863],"mapped",[20142]],[[63864,63864],"mapped",[20841]],[[63865,63865],"mapped",[20937]],[[63866,63866],"mapped",[26753]],[[63867,63867],"mapped",[31975]],[[63868,63868],"mapped",[33391]],[[63869,63869],"mapped",[35538]],[[63870,63870],"mapped",[37327]],[[63871,63871],"mapped",[21237]],[[63872,63872],"mapped",[21570]],[[63873,63873],"mapped",[22899]],[[63874,63874],"mapped",[24300]],[[63875,63875],"mapped",[26053]],[[63876,63876],"mapped",[28670]],[[63877,63877],"mapped",[31018]],[[63878,63878],"mapped",[38317]],[[63879,63879],"mapped",[39530]],[[63880,63880],"mapped",[40599]],[[63881,63881],"mapped",[40654]],[[63882,63882],"mapped",[21147]],[[63883,63883],"mapped",[26310]],[[63884,63884],"mapped",[27511]],[[63885,63885],"mapped",[36706]],[[63886,63886],"mapped",[24180]],[[63887,63887],"mapped",[24976]],[[63888,63888],"mapped",[25088]],[[63889,63889],"mapped",[25754]],[[63890,63890],"mapped",[28451]],[[63891,63891],"mapped",[29001]],[[63892,63892],"mapped",[29833]],[[63893,63893],"mapped",[31178]],[[63894,63894],"mapped",[32244]],[[63895,63895],"mapped",[32879]],[[63896,63896],"mapped",[36646]],[[63897,63897],"mapped",[34030]],[[63898,63898],"mapped",[36899]],[[63899,63899],"mapped",[37706]],[[63900,63900],"mapped",[21015]],[[63901,63901],"mapped",[21155]],[[63902,63902],"mapped",[21693]],[[63903,63903],"mapped",[28872]],[[63904,63904],"mapped",[35010]],[[63905,63905],"mapped",[35498]],[[63906,63906],"mapped",[24265]],[[63907,63907],"mapped",[24565]],[[63908,63908],"mapped",[25467]],[[63909,63909],"mapped",[27566]],[[63910,63910],"mapped",[31806]],[[63911,63911],"mapped",[29557]],[[63912,63912],"mapped",[20196]],[[63913,63913],"mapped",[22265]],[[63914,63914],"mapped",[23527]],[[63915,63915],"mapped",[23994]],[[63916,63916],"mapped",[24604]],[[63917,63917],"mapped",[29618]],[[63918,63918],"mapped",[29801]],[[63919,63919],"mapped",[32666]],[[63920,63920],"mapped",[32838]],[[63921,63921],"mapped",[37428]],[[63922,63922],"mapped",[38646]],[[63923,63923],"mapped",[38728]],[[63924,63924],"mapped",[38936]],[[63925,63925],"mapped",[20363]],[[63926,63926],"mapped",[31150]],[[63927,63927],"mapped",[37300]],[[63928,63928],"mapped",[38584]],[[63929,63929],"mapped",[24801]],[[63930,63930],"mapped",[20102]],[[63931,63931],"mapped",[20698]],[[63932,63932],"mapped",[23534]],[[63933,63933],"mapped",[23615]],[[63934,63934],"mapped",[26009]],[[63935,63935],"mapped",[27138]],[[63936,63936],"mapped",[29134]],[[63937,63937],"mapped",[30274]],[[63938,63938],"mapped",[34044]],[[63939,63939],"mapped",[36988]],[[63940,63940],"mapped",[40845]],[[63941,63941],"mapped",[26248]],[[63942,63942],"mapped",[38446]],[[63943,63943],"mapped",[21129]],[[63944,63944],"mapped",[26491]],[[63945,63945],"mapped",[26611]],[[63946,63946],"mapped",[27969]],[[63947,63947],"mapped",[28316]],[[63948,63948],"mapped",[29705]],[[63949,63949],"mapped",[30041]],[[63950,63950],"mapped",[30827]],[[63951,63951],"mapped",[32016]],[[63952,63952],"mapped",[39006]],[[63953,63953],"mapped",[20845]],[[63954,63954],"mapped",[25134]],[[63955,63955],"mapped",[38520]],[[63956,63956],"mapped",[20523]],[[63957,63957],"mapped",[23833]],[[63958,63958],"mapped",[28138]],[[63959,63959],"mapped",[36650]],[[63960,63960],"mapped",[24459]],[[63961,63961],"mapped",[24900]],[[63962,63962],"mapped",[26647]],[[63963,63963],"mapped",[29575]],[[63964,63964],"mapped",[38534]],[[63965,63965],"mapped",[21033]],[[63966,63966],"mapped",[21519]],[[63967,63967],"mapped",[23653]],[[63968,63968],"mapped",[26131]],[[63969,63969],"mapped",[26446]],[[63970,63970],"mapped",[26792]],[[63971,63971],"mapped",[27877]],[[63972,63972],"mapped",[29702]],[[63973,63973],"mapped",[30178]],[[63974,63974],"mapped",[32633]],[[63975,63975],"mapped",[35023]],[[63976,63976],"mapped",[35041]],[[63977,63977],"mapped",[37324]],[[63978,63978],"mapped",[38626]],[[63979,63979],"mapped",[21311]],[[63980,63980],"mapped",[28346]],[[63981,63981],"mapped",[21533]],[[63982,63982],"mapped",[29136]],[[63983,63983],"mapped",[29848]],[[63984,63984],"mapped",[34298]],[[63985,63985],"mapped",[38563]],[[63986,63986],"mapped",[40023]],[[63987,63987],"mapped",[40607]],[[63988,63988],"mapped",[26519]],[[63989,63989],"mapped",[28107]],[[63990,63990],"mapped",[33256]],[[63991,63991],"mapped",[31435]],[[63992,63992],"mapped",[31520]],[[63993,63993],"mapped",[31890]],[[63994,63994],"mapped",[29376]],[[63995,63995],"mapped",[28825]],[[63996,63996],"mapped",[35672]],[[63997,63997],"mapped",[20160]],[[63998,63998],"mapped",[33590]],[[63999,63999],"mapped",[21050]],[[64e3,64e3],"mapped",[20999]],[[64001,64001],"mapped",[24230]],[[64002,64002],"mapped",[25299]],[[64003,64003],"mapped",[31958]],[[64004,64004],"mapped",[23429]],[[64005,64005],"mapped",[27934]],[[64006,64006],"mapped",[26292]],[[64007,64007],"mapped",[36667]],[[64008,64008],"mapped",[34892]],[[64009,64009],"mapped",[38477]],[[64010,64010],"mapped",[35211]],[[64011,64011],"mapped",[24275]],[[64012,64012],"mapped",[20800]],[[64013,64013],"mapped",[21952]],[[64014,64015],"valid"],[[64016,64016],"mapped",[22618]],[[64017,64017],"valid"],[[64018,64018],"mapped",[26228]],[[64019,64020],"valid"],[[64021,64021],"mapped",[20958]],[[64022,64022],"mapped",[29482]],[[64023,64023],"mapped",[30410]],[[64024,64024],"mapped",[31036]],[[64025,64025],"mapped",[31070]],[[64026,64026],"mapped",[31077]],[[64027,64027],"mapped",[31119]],[[64028,64028],"mapped",[38742]],[[64029,64029],"mapped",[31934]],[[64030,64030],"mapped",[32701]],[[64031,64031],"valid"],[[64032,64032],"mapped",[34322]],[[64033,64033],"valid"],[[64034,64034],"mapped",[35576]],[[64035,64036],"valid"],[[64037,64037],"mapped",[36920]],[[64038,64038],"mapped",[37117]],[[64039,64041],"valid"],[[64042,64042],"mapped",[39151]],[[64043,64043],"mapped",[39164]],[[64044,64044],"mapped",[39208]],[[64045,64045],"mapped",[40372]],[[64046,64046],"mapped",[37086]],[[64047,64047],"mapped",[38583]],[[64048,64048],"mapped",[20398]],[[64049,64049],"mapped",[20711]],[[64050,64050],"mapped",[20813]],[[64051,64051],"mapped",[21193]],[[64052,64052],"mapped",[21220]],[[64053,64053],"mapped",[21329]],[[64054,64054],"mapped",[21917]],[[64055,64055],"mapped",[22022]],[[64056,64056],"mapped",[22120]],[[64057,64057],"mapped",[22592]],[[64058,64058],"mapped",[22696]],[[64059,64059],"mapped",[23652]],[[64060,64060],"mapped",[23662]],[[64061,64061],"mapped",[24724]],[[64062,64062],"mapped",[24936]],[[64063,64063],"mapped",[24974]],[[64064,64064],"mapped",[25074]],[[64065,64065],"mapped",[25935]],[[64066,64066],"mapped",[26082]],[[64067,64067],"mapped",[26257]],[[64068,64068],"mapped",[26757]],[[64069,64069],"mapped",[28023]],[[64070,64070],"mapped",[28186]],[[64071,64071],"mapped",[28450]],[[64072,64072],"mapped",[29038]],[[64073,64073],"mapped",[29227]],[[64074,64074],"mapped",[29730]],[[64075,64075],"mapped",[30865]],[[64076,64076],"mapped",[31038]],[[64077,64077],"mapped",[31049]],[[64078,64078],"mapped",[31048]],[[64079,64079],"mapped",[31056]],[[64080,64080],"mapped",[31062]],[[64081,64081],"mapped",[31069]],[[64082,64082],"mapped",[31117]],[[64083,64083],"mapped",[31118]],[[64084,64084],"mapped",[31296]],[[64085,64085],"mapped",[31361]],[[64086,64086],"mapped",[31680]],[[64087,64087],"mapped",[32244]],[[64088,64088],"mapped",[32265]],[[64089,64089],"mapped",[32321]],[[64090,64090],"mapped",[32626]],[[64091,64091],"mapped",[32773]],[[64092,64092],"mapped",[33261]],[[64093,64094],"mapped",[33401]],[[64095,64095],"mapped",[33879]],[[64096,64096],"mapped",[35088]],[[64097,64097],"mapped",[35222]],[[64098,64098],"mapped",[35585]],[[64099,64099],"mapped",[35641]],[[64100,64100],"mapped",[36051]],[[64101,64101],"mapped",[36104]],[[64102,64102],"mapped",[36790]],[[64103,64103],"mapped",[36920]],[[64104,64104],"mapped",[38627]],[[64105,64105],"mapped",[38911]],[[64106,64106],"mapped",[38971]],[[64107,64107],"mapped",[24693]],[[64108,64108],"mapped",[148206]],[[64109,64109],"mapped",[33304]],[[64110,64111],"disallowed"],[[64112,64112],"mapped",[20006]],[[64113,64113],"mapped",[20917]],[[64114,64114],"mapped",[20840]],[[64115,64115],"mapped",[20352]],[[64116,64116],"mapped",[20805]],[[64117,64117],"mapped",[20864]],[[64118,64118],"mapped",[21191]],[[64119,64119],"mapped",[21242]],[[64120,64120],"mapped",[21917]],[[64121,64121],"mapped",[21845]],[[64122,64122],"mapped",[21913]],[[64123,64123],"mapped",[21986]],[[64124,64124],"mapped",[22618]],[[64125,64125],"mapped",[22707]],[[64126,64126],"mapped",[22852]],[[64127,64127],"mapped",[22868]],[[64128,64128],"mapped",[23138]],[[64129,64129],"mapped",[23336]],[[64130,64130],"mapped",[24274]],[[64131,64131],"mapped",[24281]],[[64132,64132],"mapped",[24425]],[[64133,64133],"mapped",[24493]],[[64134,64134],"mapped",[24792]],[[64135,64135],"mapped",[24910]],[[64136,64136],"mapped",[24840]],[[64137,64137],"mapped",[24974]],[[64138,64138],"mapped",[24928]],[[64139,64139],"mapped",[25074]],[[64140,64140],"mapped",[25140]],[[64141,64141],"mapped",[25540]],[[64142,64142],"mapped",[25628]],[[64143,64143],"mapped",[25682]],[[64144,64144],"mapped",[25942]],[[64145,64145],"mapped",[26228]],[[64146,64146],"mapped",[26391]],[[64147,64147],"mapped",[26395]],[[64148,64148],"mapped",[26454]],[[64149,64149],"mapped",[27513]],[[64150,64150],"mapped",[27578]],[[64151,64151],"mapped",[27969]],[[64152,64152],"mapped",[28379]],[[64153,64153],"mapped",[28363]],[[64154,64154],"mapped",[28450]],[[64155,64155],"mapped",[28702]],[[64156,64156],"mapped",[29038]],[[64157,64157],"mapped",[30631]],[[64158,64158],"mapped",[29237]],[[64159,64159],"mapped",[29359]],[[64160,64160],"mapped",[29482]],[[64161,64161],"mapped",[29809]],[[64162,64162],"mapped",[29958]],[[64163,64163],"mapped",[30011]],[[64164,64164],"mapped",[30237]],[[64165,64165],"mapped",[30239]],[[64166,64166],"mapped",[30410]],[[64167,64167],"mapped",[30427]],[[64168,64168],"mapped",[30452]],[[64169,64169],"mapped",[30538]],[[64170,64170],"mapped",[30528]],[[64171,64171],"mapped",[30924]],[[64172,64172],"mapped",[31409]],[[64173,64173],"mapped",[31680]],[[64174,64174],"mapped",[31867]],[[64175,64175],"mapped",[32091]],[[64176,64176],"mapped",[32244]],[[64177,64177],"mapped",[32574]],[[64178,64178],"mapped",[32773]],[[64179,64179],"mapped",[33618]],[[64180,64180],"mapped",[33775]],[[64181,64181],"mapped",[34681]],[[64182,64182],"mapped",[35137]],[[64183,64183],"mapped",[35206]],[[64184,64184],"mapped",[35222]],[[64185,64185],"mapped",[35519]],[[64186,64186],"mapped",[35576]],[[64187,64187],"mapped",[35531]],[[64188,64188],"mapped",[35585]],[[64189,64189],"mapped",[35582]],[[64190,64190],"mapped",[35565]],[[64191,64191],"mapped",[35641]],[[64192,64192],"mapped",[35722]],[[64193,64193],"mapped",[36104]],[[64194,64194],"mapped",[36664]],[[64195,64195],"mapped",[36978]],[[64196,64196],"mapped",[37273]],[[64197,64197],"mapped",[37494]],[[64198,64198],"mapped",[38524]],[[64199,64199],"mapped",[38627]],[[64200,64200],"mapped",[38742]],[[64201,64201],"mapped",[38875]],[[64202,64202],"mapped",[38911]],[[64203,64203],"mapped",[38923]],[[64204,64204],"mapped",[38971]],[[64205,64205],"mapped",[39698]],[[64206,64206],"mapped",[40860]],[[64207,64207],"mapped",[141386]],[[64208,64208],"mapped",[141380]],[[64209,64209],"mapped",[144341]],[[64210,64210],"mapped",[15261]],[[64211,64211],"mapped",[16408]],[[64212,64212],"mapped",[16441]],[[64213,64213],"mapped",[152137]],[[64214,64214],"mapped",[154832]],[[64215,64215],"mapped",[163539]],[[64216,64216],"mapped",[40771]],[[64217,64217],"mapped",[40846]],[[64218,64255],"disallowed"],[[64256,64256],"mapped",[102,102]],[[64257,64257],"mapped",[102,105]],[[64258,64258],"mapped",[102,108]],[[64259,64259],"mapped",[102,102,105]],[[64260,64260],"mapped",[102,102,108]],[[64261,64262],"mapped",[115,116]],[[64263,64274],"disallowed"],[[64275,64275],"mapped",[1396,1398]],[[64276,64276],"mapped",[1396,1381]],[[64277,64277],"mapped",[1396,1387]],[[64278,64278],"mapped",[1406,1398]],[[64279,64279],"mapped",[1396,1389]],[[64280,64284],"disallowed"],[[64285,64285],"mapped",[1497,1460]],[[64286,64286],"valid"],[[64287,64287],"mapped",[1522,1463]],[[64288,64288],"mapped",[1506]],[[64289,64289],"mapped",[1488]],[[64290,64290],"mapped",[1491]],[[64291,64291],"mapped",[1492]],[[64292,64292],"mapped",[1499]],[[64293,64293],"mapped",[1500]],[[64294,64294],"mapped",[1501]],[[64295,64295],"mapped",[1512]],[[64296,64296],"mapped",[1514]],[[64297,64297],"disallowed_STD3_mapped",[43]],[[64298,64298],"mapped",[1513,1473]],[[64299,64299],"mapped",[1513,1474]],[[64300,64300],"mapped",[1513,1468,1473]],[[64301,64301],"mapped",[1513,1468,1474]],[[64302,64302],"mapped",[1488,1463]],[[64303,64303],"mapped",[1488,1464]],[[64304,64304],"mapped",[1488,1468]],[[64305,64305],"mapped",[1489,1468]],[[64306,64306],"mapped",[1490,1468]],[[64307,64307],"mapped",[1491,1468]],[[64308,64308],"mapped",[1492,1468]],[[64309,64309],"mapped",[1493,1468]],[[64310,64310],"mapped",[1494,1468]],[[64311,64311],"disallowed"],[[64312,64312],"mapped",[1496,1468]],[[64313,64313],"mapped",[1497,1468]],[[64314,64314],"mapped",[1498,1468]],[[64315,64315],"mapped",[1499,1468]],[[64316,64316],"mapped",[1500,1468]],[[64317,64317],"disallowed"],[[64318,64318],"mapped",[1502,1468]],[[64319,64319],"disallowed"],[[64320,64320],"mapped",[1504,1468]],[[64321,64321],"mapped",[1505,1468]],[[64322,64322],"disallowed"],[[64323,64323],"mapped",[1507,1468]],[[64324,64324],"mapped",[1508,1468]],[[64325,64325],"disallowed"],[[64326,64326],"mapped",[1510,1468]],[[64327,64327],"mapped",[1511,1468]],[[64328,64328],"mapped",[1512,1468]],[[64329,64329],"mapped",[1513,1468]],[[64330,64330],"mapped",[1514,1468]],[[64331,64331],"mapped",[1493,1465]],[[64332,64332],"mapped",[1489,1471]],[[64333,64333],"mapped",[1499,1471]],[[64334,64334],"mapped",[1508,1471]],[[64335,64335],"mapped",[1488,1500]],[[64336,64337],"mapped",[1649]],[[64338,64341],"mapped",[1659]],[[64342,64345],"mapped",[1662]],[[64346,64349],"mapped",[1664]],[[64350,64353],"mapped",[1658]],[[64354,64357],"mapped",[1663]],[[64358,64361],"mapped",[1657]],[[64362,64365],"mapped",[1700]],[[64366,64369],"mapped",[1702]],[[64370,64373],"mapped",[1668]],[[64374,64377],"mapped",[1667]],[[64378,64381],"mapped",[1670]],[[64382,64385],"mapped",[1671]],[[64386,64387],"mapped",[1677]],[[64388,64389],"mapped",[1676]],[[64390,64391],"mapped",[1678]],[[64392,64393],"mapped",[1672]],[[64394,64395],"mapped",[1688]],[[64396,64397],"mapped",[1681]],[[64398,64401],"mapped",[1705]],[[64402,64405],"mapped",[1711]],[[64406,64409],"mapped",[1715]],[[64410,64413],"mapped",[1713]],[[64414,64415],"mapped",[1722]],[[64416,64419],"mapped",[1723]],[[64420,64421],"mapped",[1728]],[[64422,64425],"mapped",[1729]],[[64426,64429],"mapped",[1726]],[[64430,64431],"mapped",[1746]],[[64432,64433],"mapped",[1747]],[[64434,64449],"valid",[],"NV8"],[[64450,64466],"disallowed"],[[64467,64470],"mapped",[1709]],[[64471,64472],"mapped",[1735]],[[64473,64474],"mapped",[1734]],[[64475,64476],"mapped",[1736]],[[64477,64477],"mapped",[1735,1652]],[[64478,64479],"mapped",[1739]],[[64480,64481],"mapped",[1733]],[[64482,64483],"mapped",[1737]],[[64484,64487],"mapped",[1744]],[[64488,64489],"mapped",[1609]],[[64490,64491],"mapped",[1574,1575]],[[64492,64493],"mapped",[1574,1749]],[[64494,64495],"mapped",[1574,1608]],[[64496,64497],"mapped",[1574,1735]],[[64498,64499],"mapped",[1574,1734]],[[64500,64501],"mapped",[1574,1736]],[[64502,64504],"mapped",[1574,1744]],[[64505,64507],"mapped",[1574,1609]],[[64508,64511],"mapped",[1740]],[[64512,64512],"mapped",[1574,1580]],[[64513,64513],"mapped",[1574,1581]],[[64514,64514],"mapped",[1574,1605]],[[64515,64515],"mapped",[1574,1609]],[[64516,64516],"mapped",[1574,1610]],[[64517,64517],"mapped",[1576,1580]],[[64518,64518],"mapped",[1576,1581]],[[64519,64519],"mapped",[1576,1582]],[[64520,64520],"mapped",[1576,1605]],[[64521,64521],"mapped",[1576,1609]],[[64522,64522],"mapped",[1576,1610]],[[64523,64523],"mapped",[1578,1580]],[[64524,64524],"mapped",[1578,1581]],[[64525,64525],"mapped",[1578,1582]],[[64526,64526],"mapped",[1578,1605]],[[64527,64527],"mapped",[1578,1609]],[[64528,64528],"mapped",[1578,1610]],[[64529,64529],"mapped",[1579,1580]],[[64530,64530],"mapped",[1579,1605]],[[64531,64531],"mapped",[1579,1609]],[[64532,64532],"mapped",[1579,1610]],[[64533,64533],"mapped",[1580,1581]],[[64534,64534],"mapped",[1580,1605]],[[64535,64535],"mapped",[1581,1580]],[[64536,64536],"mapped",[1581,1605]],[[64537,64537],"mapped",[1582,1580]],[[64538,64538],"mapped",[1582,1581]],[[64539,64539],"mapped",[1582,1605]],[[64540,64540],"mapped",[1587,1580]],[[64541,64541],"mapped",[1587,1581]],[[64542,64542],"mapped",[1587,1582]],[[64543,64543],"mapped",[1587,1605]],[[64544,64544],"mapped",[1589,1581]],[[64545,64545],"mapped",[1589,1605]],[[64546,64546],"mapped",[1590,1580]],[[64547,64547],"mapped",[1590,1581]],[[64548,64548],"mapped",[1590,1582]],[[64549,64549],"mapped",[1590,1605]],[[64550,64550],"mapped",[1591,1581]],[[64551,64551],"mapped",[1591,1605]],[[64552,64552],"mapped",[1592,1605]],[[64553,64553],"mapped",[1593,1580]],[[64554,64554],"mapped",[1593,1605]],[[64555,64555],"mapped",[1594,1580]],[[64556,64556],"mapped",[1594,1605]],[[64557,64557],"mapped",[1601,1580]],[[64558,64558],"mapped",[1601,1581]],[[64559,64559],"mapped",[1601,1582]],[[64560,64560],"mapped",[1601,1605]],[[64561,64561],"mapped",[1601,1609]],[[64562,64562],"mapped",[1601,1610]],[[64563,64563],"mapped",[1602,1581]],[[64564,64564],"mapped",[1602,1605]],[[64565,64565],"mapped",[1602,1609]],[[64566,64566],"mapped",[1602,1610]],[[64567,64567],"mapped",[1603,1575]],[[64568,64568],"mapped",[1603,1580]],[[64569,64569],"mapped",[1603,1581]],[[64570,64570],"mapped",[1603,1582]],[[64571,64571],"mapped",[1603,1604]],[[64572,64572],"mapped",[1603,1605]],[[64573,64573],"mapped",[1603,1609]],[[64574,64574],"mapped",[1603,1610]],[[64575,64575],"mapped",[1604,1580]],[[64576,64576],"mapped",[1604,1581]],[[64577,64577],"mapped",[1604,1582]],[[64578,64578],"mapped",[1604,1605]],[[64579,64579],"mapped",[1604,1609]],[[64580,64580],"mapped",[1604,1610]],[[64581,64581],"mapped",[1605,1580]],[[64582,64582],"mapped",[1605,1581]],[[64583,64583],"mapped",[1605,1582]],[[64584,64584],"mapped",[1605,1605]],[[64585,64585],"mapped",[1605,1609]],[[64586,64586],"mapped",[1605,1610]],[[64587,64587],"mapped",[1606,1580]],[[64588,64588],"mapped",[1606,1581]],[[64589,64589],"mapped",[1606,1582]],[[64590,64590],"mapped",[1606,1605]],[[64591,64591],"mapped",[1606,1609]],[[64592,64592],"mapped",[1606,1610]],[[64593,64593],"mapped",[1607,1580]],[[64594,64594],"mapped",[1607,1605]],[[64595,64595],"mapped",[1607,1609]],[[64596,64596],"mapped",[1607,1610]],[[64597,64597],"mapped",[1610,1580]],[[64598,64598],"mapped",[1610,1581]],[[64599,64599],"mapped",[1610,1582]],[[64600,64600],"mapped",[1610,1605]],[[64601,64601],"mapped",[1610,1609]],[[64602,64602],"mapped",[1610,1610]],[[64603,64603],"mapped",[1584,1648]],[[64604,64604],"mapped",[1585,1648]],[[64605,64605],"mapped",[1609,1648]],[[64606,64606],"disallowed_STD3_mapped",[32,1612,1617]],[[64607,64607],"disallowed_STD3_mapped",[32,1613,1617]],[[64608,64608],"disallowed_STD3_mapped",[32,1614,1617]],[[64609,64609],"disallowed_STD3_mapped",[32,1615,1617]],[[64610,64610],"disallowed_STD3_mapped",[32,1616,1617]],[[64611,64611],"disallowed_STD3_mapped",[32,1617,1648]],[[64612,64612],"mapped",[1574,1585]],[[64613,64613],"mapped",[1574,1586]],[[64614,64614],"mapped",[1574,1605]],[[64615,64615],"mapped",[1574,1606]],[[64616,64616],"mapped",[1574,1609]],[[64617,64617],"mapped",[1574,1610]],[[64618,64618],"mapped",[1576,1585]],[[64619,64619],"mapped",[1576,1586]],[[64620,64620],"mapped",[1576,1605]],[[64621,64621],"mapped",[1576,1606]],[[64622,64622],"mapped",[1576,1609]],[[64623,64623],"mapped",[1576,1610]],[[64624,64624],"mapped",[1578,1585]],[[64625,64625],"mapped",[1578,1586]],[[64626,64626],"mapped",[1578,1605]],[[64627,64627],"mapped",[1578,1606]],[[64628,64628],"mapped",[1578,1609]],[[64629,64629],"mapped",[1578,1610]],[[64630,64630],"mapped",[1579,1585]],[[64631,64631],"mapped",[1579,1586]],[[64632,64632],"mapped",[1579,1605]],[[64633,64633],"mapped",[1579,1606]],[[64634,64634],"mapped",[1579,1609]],[[64635,64635],"mapped",[1579,1610]],[[64636,64636],"mapped",[1601,1609]],[[64637,64637],"mapped",[1601,1610]],[[64638,64638],"mapped",[1602,1609]],[[64639,64639],"mapped",[1602,1610]],[[64640,64640],"mapped",[1603,1575]],[[64641,64641],"mapped",[1603,1604]],[[64642,64642],"mapped",[1603,1605]],[[64643,64643],"mapped",[1603,1609]],[[64644,64644],"mapped",[1603,1610]],[[64645,64645],"mapped",[1604,1605]],[[64646,64646],"mapped",[1604,1609]],[[64647,64647],"mapped",[1604,1610]],[[64648,64648],"mapped",[1605,1575]],[[64649,64649],"mapped",[1605,1605]],[[64650,64650],"mapped",[1606,1585]],[[64651,64651],"mapped",[1606,1586]],[[64652,64652],"mapped",[1606,1605]],[[64653,64653],"mapped",[1606,1606]],[[64654,64654],"mapped",[1606,1609]],[[64655,64655],"mapped",[1606,1610]],[[64656,64656],"mapped",[1609,1648]],[[64657,64657],"mapped",[1610,1585]],[[64658,64658],"mapped",[1610,1586]],[[64659,64659],"mapped",[1610,1605]],[[64660,64660],"mapped",[1610,1606]],[[64661,64661],"mapped",[1610,1609]],[[64662,64662],"mapped",[1610,1610]],[[64663,64663],"mapped",[1574,1580]],[[64664,64664],"mapped",[1574,1581]],[[64665,64665],"mapped",[1574,1582]],[[64666,64666],"mapped",[1574,1605]],[[64667,64667],"mapped",[1574,1607]],[[64668,64668],"mapped",[1576,1580]],[[64669,64669],"mapped",[1576,1581]],[[64670,64670],"mapped",[1576,1582]],[[64671,64671],"mapped",[1576,1605]],[[64672,64672],"mapped",[1576,1607]],[[64673,64673],"mapped",[1578,1580]],[[64674,64674],"mapped",[1578,1581]],[[64675,64675],"mapped",[1578,1582]],[[64676,64676],"mapped",[1578,1605]],[[64677,64677],"mapped",[1578,1607]],[[64678,64678],"mapped",[1579,1605]],[[64679,64679],"mapped",[1580,1581]],[[64680,64680],"mapped",[1580,1605]],[[64681,64681],"mapped",[1581,1580]],[[64682,64682],"mapped",[1581,1605]],[[64683,64683],"mapped",[1582,1580]],[[64684,64684],"mapped",[1582,1605]],[[64685,64685],"mapped",[1587,1580]],[[64686,64686],"mapped",[1587,1581]],[[64687,64687],"mapped",[1587,1582]],[[64688,64688],"mapped",[1587,1605]],[[64689,64689],"mapped",[1589,1581]],[[64690,64690],"mapped",[1589,1582]],[[64691,64691],"mapped",[1589,1605]],[[64692,64692],"mapped",[1590,1580]],[[64693,64693],"mapped",[1590,1581]],[[64694,64694],"mapped",[1590,1582]],[[64695,64695],"mapped",[1590,1605]],[[64696,64696],"mapped",[1591,1581]],[[64697,64697],"mapped",[1592,1605]],[[64698,64698],"mapped",[1593,1580]],[[64699,64699],"mapped",[1593,1605]],[[64700,64700],"mapped",[1594,1580]],[[64701,64701],"mapped",[1594,1605]],[[64702,64702],"mapped",[1601,1580]],[[64703,64703],"mapped",[1601,1581]],[[64704,64704],"mapped",[1601,1582]],[[64705,64705],"mapped",[1601,1605]],[[64706,64706],"mapped",[1602,1581]],[[64707,64707],"mapped",[1602,1605]],[[64708,64708],"mapped",[1603,1580]],[[64709,64709],"mapped",[1603,1581]],[[64710,64710],"mapped",[1603,1582]],[[64711,64711],"mapped",[1603,1604]],[[64712,64712],"mapped",[1603,1605]],[[64713,64713],"mapped",[1604,1580]],[[64714,64714],"mapped",[1604,1581]],[[64715,64715],"mapped",[1604,1582]],[[64716,64716],"mapped",[1604,1605]],[[64717,64717],"mapped",[1604,1607]],[[64718,64718],"mapped",[1605,1580]],[[64719,64719],"mapped",[1605,1581]],[[64720,64720],"mapped",[1605,1582]],[[64721,64721],"mapped",[1605,1605]],[[64722,64722],"mapped",[1606,1580]],[[64723,64723],"mapped",[1606,1581]],[[64724,64724],"mapped",[1606,1582]],[[64725,64725],"mapped",[1606,1605]],[[64726,64726],"mapped",[1606,1607]],[[64727,64727],"mapped",[1607,1580]],[[64728,64728],"mapped",[1607,1605]],[[64729,64729],"mapped",[1607,1648]],[[64730,64730],"mapped",[1610,1580]],[[64731,64731],"mapped",[1610,1581]],[[64732,64732],"mapped",[1610,1582]],[[64733,64733],"mapped",[1610,1605]],[[64734,64734],"mapped",[1610,1607]],[[64735,64735],"mapped",[1574,1605]],[[64736,64736],"mapped",[1574,1607]],[[64737,64737],"mapped",[1576,1605]],[[64738,64738],"mapped",[1576,1607]],[[64739,64739],"mapped",[1578,1605]],[[64740,64740],"mapped",[1578,1607]],[[64741,64741],"mapped",[1579,1605]],[[64742,64742],"mapped",[1579,1607]],[[64743,64743],"mapped",[1587,1605]],[[64744,64744],"mapped",[1587,1607]],[[64745,64745],"mapped",[1588,1605]],[[64746,64746],"mapped",[1588,1607]],[[64747,64747],"mapped",[1603,1604]],[[64748,64748],"mapped",[1603,1605]],[[64749,64749],"mapped",[1604,1605]],[[64750,64750],"mapped",[1606,1605]],[[64751,64751],"mapped",[1606,1607]],[[64752,64752],"mapped",[1610,1605]],[[64753,64753],"mapped",[1610,1607]],[[64754,64754],"mapped",[1600,1614,1617]],[[64755,64755],"mapped",[1600,1615,1617]],[[64756,64756],"mapped",[1600,1616,1617]],[[64757,64757],"mapped",[1591,1609]],[[64758,64758],"mapped",[1591,1610]],[[64759,64759],"mapped",[1593,1609]],[[64760,64760],"mapped",[1593,1610]],[[64761,64761],"mapped",[1594,1609]],[[64762,64762],"mapped",[1594,1610]],[[64763,64763],"mapped",[1587,1609]],[[64764,64764],"mapped",[1587,1610]],[[64765,64765],"mapped",[1588,1609]],[[64766,64766],"mapped",[1588,1610]],[[64767,64767],"mapped",[1581,1609]],[[64768,64768],"mapped",[1581,1610]],[[64769,64769],"mapped",[1580,1609]],[[64770,64770],"mapped",[1580,1610]],[[64771,64771],"mapped",[1582,1609]],[[64772,64772],"mapped",[1582,1610]],[[64773,64773],"mapped",[1589,1609]],[[64774,64774],"mapped",[1589,1610]],[[64775,64775],"mapped",[1590,1609]],[[64776,64776],"mapped",[1590,1610]],[[64777,64777],"mapped",[1588,1580]],[[64778,64778],"mapped",[1588,1581]],[[64779,64779],"mapped",[1588,1582]],[[64780,64780],"mapped",[1588,1605]],[[64781,64781],"mapped",[1588,1585]],[[64782,64782],"mapped",[1587,1585]],[[64783,64783],"mapped",[1589,1585]],[[64784,64784],"mapped",[1590,1585]],[[64785,64785],"mapped",[1591,1609]],[[64786,64786],"mapped",[1591,1610]],[[64787,64787],"mapped",[1593,1609]],[[64788,64788],"mapped",[1593,1610]],[[64789,64789],"mapped",[1594,1609]],[[64790,64790],"mapped",[1594,1610]],[[64791,64791],"mapped",[1587,1609]],[[64792,64792],"mapped",[1587,1610]],[[64793,64793],"mapped",[1588,1609]],[[64794,64794],"mapped",[1588,1610]],[[64795,64795],"mapped",[1581,1609]],[[64796,64796],"mapped",[1581,1610]],[[64797,64797],"mapped",[1580,1609]],[[64798,64798],"mapped",[1580,1610]],[[64799,64799],"mapped",[1582,1609]],[[64800,64800],"mapped",[1582,1610]],[[64801,64801],"mapped",[1589,1609]],[[64802,64802],"mapped",[1589,1610]],[[64803,64803],"mapped",[1590,1609]],[[64804,64804],"mapped",[1590,1610]],[[64805,64805],"mapped",[1588,1580]],[[64806,64806],"mapped",[1588,1581]],[[64807,64807],"mapped",[1588,1582]],[[64808,64808],"mapped",[1588,1605]],[[64809,64809],"mapped",[1588,1585]],[[64810,64810],"mapped",[1587,1585]],[[64811,64811],"mapped",[1589,1585]],[[64812,64812],"mapped",[1590,1585]],[[64813,64813],"mapped",[1588,1580]],[[64814,64814],"mapped",[1588,1581]],[[64815,64815],"mapped",[1588,1582]],[[64816,64816],"mapped",[1588,1605]],[[64817,64817],"mapped",[1587,1607]],[[64818,64818],"mapped",[1588,1607]],[[64819,64819],"mapped",[1591,1605]],[[64820,64820],"mapped",[1587,1580]],[[64821,64821],"mapped",[1587,1581]],[[64822,64822],"mapped",[1587,1582]],[[64823,64823],"mapped",[1588,1580]],[[64824,64824],"mapped",[1588,1581]],[[64825,64825],"mapped",[1588,1582]],[[64826,64826],"mapped",[1591,1605]],[[64827,64827],"mapped",[1592,1605]],[[64828,64829],"mapped",[1575,1611]],[[64830,64831],"valid",[],"NV8"],[[64832,64847],"disallowed"],[[64848,64848],"mapped",[1578,1580,1605]],[[64849,64850],"mapped",[1578,1581,1580]],[[64851,64851],"mapped",[1578,1581,1605]],[[64852,64852],"mapped",[1578,1582,1605]],[[64853,64853],"mapped",[1578,1605,1580]],[[64854,64854],"mapped",[1578,1605,1581]],[[64855,64855],"mapped",[1578,1605,1582]],[[64856,64857],"mapped",[1580,1605,1581]],[[64858,64858],"mapped",[1581,1605,1610]],[[64859,64859],"mapped",[1581,1605,1609]],[[64860,64860],"mapped",[1587,1581,1580]],[[64861,64861],"mapped",[1587,1580,1581]],[[64862,64862],"mapped",[1587,1580,1609]],[[64863,64864],"mapped",[1587,1605,1581]],[[64865,64865],"mapped",[1587,1605,1580]],[[64866,64867],"mapped",[1587,1605,1605]],[[64868,64869],"mapped",[1589,1581,1581]],[[64870,64870],"mapped",[1589,1605,1605]],[[64871,64872],"mapped",[1588,1581,1605]],[[64873,64873],"mapped",[1588,1580,1610]],[[64874,64875],"mapped",[1588,1605,1582]],[[64876,64877],"mapped",[1588,1605,1605]],[[64878,64878],"mapped",[1590,1581,1609]],[[64879,64880],"mapped",[1590,1582,1605]],[[64881,64882],"mapped",[1591,1605,1581]],[[64883,64883],"mapped",[1591,1605,1605]],[[64884,64884],"mapped",[1591,1605,1610]],[[64885,64885],"mapped",[1593,1580,1605]],[[64886,64887],"mapped",[1593,1605,1605]],[[64888,64888],"mapped",[1593,1605,1609]],[[64889,64889],"mapped",[1594,1605,1605]],[[64890,64890],"mapped",[1594,1605,1610]],[[64891,64891],"mapped",[1594,1605,1609]],[[64892,64893],"mapped",[1601,1582,1605]],[[64894,64894],"mapped",[1602,1605,1581]],[[64895,64895],"mapped",[1602,1605,1605]],[[64896,64896],"mapped",[1604,1581,1605]],[[64897,64897],"mapped",[1604,1581,1610]],[[64898,64898],"mapped",[1604,1581,1609]],[[64899,64900],"mapped",[1604,1580,1580]],[[64901,64902],"mapped",[1604,1582,1605]],[[64903,64904],"mapped",[1604,1605,1581]],[[64905,64905],"mapped",[1605,1581,1580]],[[64906,64906],"mapped",[1605,1581,1605]],[[64907,64907],"mapped",[1605,1581,1610]],[[64908,64908],"mapped",[1605,1580,1581]],[[64909,64909],"mapped",[1605,1580,1605]],[[64910,64910],"mapped",[1605,1582,1580]],[[64911,64911],"mapped",[1605,1582,1605]],[[64912,64913],"disallowed"],[[64914,64914],"mapped",[1605,1580,1582]],[[64915,64915],"mapped",[1607,1605,1580]],[[64916,64916],"mapped",[1607,1605,1605]],[[64917,64917],"mapped",[1606,1581,1605]],[[64918,64918],"mapped",[1606,1581,1609]],[[64919,64920],"mapped",[1606,1580,1605]],[[64921,64921],"mapped",[1606,1580,1609]],[[64922,64922],"mapped",[1606,1605,1610]],[[64923,64923],"mapped",[1606,1605,1609]],[[64924,64925],"mapped",[1610,1605,1605]],[[64926,64926],"mapped",[1576,1582,1610]],[[64927,64927],"mapped",[1578,1580,1610]],[[64928,64928],"mapped",[1578,1580,1609]],[[64929,64929],"mapped",[1578,1582,1610]],[[64930,64930],"mapped",[1578,1582,1609]],[[64931,64931],"mapped",[1578,1605,1610]],[[64932,64932],"mapped",[1578,1605,1609]],[[64933,64933],"mapped",[1580,1605,1610]],[[64934,64934],"mapped",[1580,1581,1609]],[[64935,64935],"mapped",[1580,1605,1609]],[[64936,64936],"mapped",[1587,1582,1609]],[[64937,64937],"mapped",[1589,1581,1610]],[[64938,64938],"mapped",[1588,1581,1610]],[[64939,64939],"mapped",[1590,1581,1610]],[[64940,64940],"mapped",[1604,1580,1610]],[[64941,64941],"mapped",[1604,1605,1610]],[[64942,64942],"mapped",[1610,1581,1610]],[[64943,64943],"mapped",[1610,1580,1610]],[[64944,64944],"mapped",[1610,1605,1610]],[[64945,64945],"mapped",[1605,1605,1610]],[[64946,64946],"mapped",[1602,1605,1610]],[[64947,64947],"mapped",[1606,1581,1610]],[[64948,64948],"mapped",[1602,1605,1581]],[[64949,64949],"mapped",[1604,1581,1605]],[[64950,64950],"mapped",[1593,1605,1610]],[[64951,64951],"mapped",[1603,1605,1610]],[[64952,64952],"mapped",[1606,1580,1581]],[[64953,64953],"mapped",[1605,1582,1610]],[[64954,64954],"mapped",[1604,1580,1605]],[[64955,64955],"mapped",[1603,1605,1605]],[[64956,64956],"mapped",[1604,1580,1605]],[[64957,64957],"mapped",[1606,1580,1581]],[[64958,64958],"mapped",[1580,1581,1610]],[[64959,64959],"mapped",[1581,1580,1610]],[[64960,64960],"mapped",[1605,1580,1610]],[[64961,64961],"mapped",[1601,1605,1610]],[[64962,64962],"mapped",[1576,1581,1610]],[[64963,64963],"mapped",[1603,1605,1605]],[[64964,64964],"mapped",[1593,1580,1605]],[[64965,64965],"mapped",[1589,1605,1605]],[[64966,64966],"mapped",[1587,1582,1610]],[[64967,64967],"mapped",[1606,1580,1610]],[[64968,64975],"disallowed"],[[64976,65007],"disallowed"],[[65008,65008],"mapped",[1589,1604,1746]],[[65009,65009],"mapped",[1602,1604,1746]],[[65010,65010],"mapped",[1575,1604,1604,1607]],[[65011,65011],"mapped",[1575,1603,1576,1585]],[[65012,65012],"mapped",[1605,1581,1605,1583]],[[65013,65013],"mapped",[1589,1604,1593,1605]],[[65014,65014],"mapped",[1585,1587,1608,1604]],[[65015,65015],"mapped",[1593,1604,1610,1607]],[[65016,65016],"mapped",[1608,1587,1604,1605]],[[65017,65017],"mapped",[1589,1604,1609]],[[65018,65018],"disallowed_STD3_mapped",[1589,1604,1609,32,1575,1604,1604,1607,32,1593,1604,1610,1607,32,1608,1587,1604,1605]],[[65019,65019],"disallowed_STD3_mapped",[1580,1604,32,1580,1604,1575,1604,1607]],[[65020,65020],"mapped",[1585,1740,1575,1604]],[[65021,65021],"valid",[],"NV8"],[[65022,65023],"disallowed"],[[65024,65039],"ignored"],[[65040,65040],"disallowed_STD3_mapped",[44]],[[65041,65041],"mapped",[12289]],[[65042,65042],"disallowed"],[[65043,65043],"disallowed_STD3_mapped",[58]],[[65044,65044],"disallowed_STD3_mapped",[59]],[[65045,65045],"disallowed_STD3_mapped",[33]],[[65046,65046],"disallowed_STD3_mapped",[63]],[[65047,65047],"mapped",[12310]],[[65048,65048],"mapped",[12311]],[[65049,65049],"disallowed"],[[65050,65055],"disallowed"],[[65056,65059],"valid"],[[65060,65062],"valid"],[[65063,65069],"valid"],[[65070,65071],"valid"],[[65072,65072],"disallowed"],[[65073,65073],"mapped",[8212]],[[65074,65074],"mapped",[8211]],[[65075,65076],"disallowed_STD3_mapped",[95]],[[65077,65077],"disallowed_STD3_mapped",[40]],[[65078,65078],"disallowed_STD3_mapped",[41]],[[65079,65079],"disallowed_STD3_mapped",[123]],[[65080,65080],"disallowed_STD3_mapped",[125]],[[65081,65081],"mapped",[12308]],[[65082,65082],"mapped",[12309]],[[65083,65083],"mapped",[12304]],[[65084,65084],"mapped",[12305]],[[65085,65085],"mapped",[12298]],[[65086,65086],"mapped",[12299]],[[65087,65087],"mapped",[12296]],[[65088,65088],"mapped",[12297]],[[65089,65089],"mapped",[12300]],[[65090,65090],"mapped",[12301]],[[65091,65091],"mapped",[12302]],[[65092,65092],"mapped",[12303]],[[65093,65094],"valid",[],"NV8"],[[65095,65095],"disallowed_STD3_mapped",[91]],[[65096,65096],"disallowed_STD3_mapped",[93]],[[65097,65100],"disallowed_STD3_mapped",[32,773]],[[65101,65103],"disallowed_STD3_mapped",[95]],[[65104,65104],"disallowed_STD3_mapped",[44]],[[65105,65105],"mapped",[12289]],[[65106,65106],"disallowed"],[[65107,65107],"disallowed"],[[65108,65108],"disallowed_STD3_mapped",[59]],[[65109,65109],"disallowed_STD3_mapped",[58]],[[65110,65110],"disallowed_STD3_mapped",[63]],[[65111,65111],"disallowed_STD3_mapped",[33]],[[65112,65112],"mapped",[8212]],[[65113,65113],"disallowed_STD3_mapped",[40]],[[65114,65114],"disallowed_STD3_mapped",[41]],[[65115,65115],"disallowed_STD3_mapped",[123]],[[65116,65116],"disallowed_STD3_mapped",[125]],[[65117,65117],"mapped",[12308]],[[65118,65118],"mapped",[12309]],[[65119,65119],"disallowed_STD3_mapped",[35]],[[65120,65120],"disallowed_STD3_mapped",[38]],[[65121,65121],"disallowed_STD3_mapped",[42]],[[65122,65122],"disallowed_STD3_mapped",[43]],[[65123,65123],"mapped",[45]],[[65124,65124],"disallowed_STD3_mapped",[60]],[[65125,65125],"disallowed_STD3_mapped",[62]],[[65126,65126],"disallowed_STD3_mapped",[61]],[[65127,65127],"disallowed"],[[65128,65128],"disallowed_STD3_mapped",[92]],[[65129,65129],"disallowed_STD3_mapped",[36]],[[65130,65130],"disallowed_STD3_mapped",[37]],[[65131,65131],"disallowed_STD3_mapped",[64]],[[65132,65135],"disallowed"],[[65136,65136],"disallowed_STD3_mapped",[32,1611]],[[65137,65137],"mapped",[1600,1611]],[[65138,65138],"disallowed_STD3_mapped",[32,1612]],[[65139,65139],"valid"],[[65140,65140],"disallowed_STD3_mapped",[32,1613]],[[65141,65141],"disallowed"],[[65142,65142],"disallowed_STD3_mapped",[32,1614]],[[65143,65143],"mapped",[1600,1614]],[[65144,65144],"disallowed_STD3_mapped",[32,1615]],[[65145,65145],"mapped",[1600,1615]],[[65146,65146],"disallowed_STD3_mapped",[32,1616]],[[65147,65147],"mapped",[1600,1616]],[[65148,65148],"disallowed_STD3_mapped",[32,1617]],[[65149,65149],"mapped",[1600,1617]],[[65150,65150],"disallowed_STD3_mapped",[32,1618]],[[65151,65151],"mapped",[1600,1618]],[[65152,65152],"mapped",[1569]],[[65153,65154],"mapped",[1570]],[[65155,65156],"mapped",[1571]],[[65157,65158],"mapped",[1572]],[[65159,65160],"mapped",[1573]],[[65161,65164],"mapped",[1574]],[[65165,65166],"mapped",[1575]],[[65167,65170],"mapped",[1576]],[[65171,65172],"mapped",[1577]],[[65173,65176],"mapped",[1578]],[[65177,65180],"mapped",[1579]],[[65181,65184],"mapped",[1580]],[[65185,65188],"mapped",[1581]],[[65189,65192],"mapped",[1582]],[[65193,65194],"mapped",[1583]],[[65195,65196],"mapped",[1584]],[[65197,65198],"mapped",[1585]],[[65199,65200],"mapped",[1586]],[[65201,65204],"mapped",[1587]],[[65205,65208],"mapped",[1588]],[[65209,65212],"mapped",[1589]],[[65213,65216],"mapped",[1590]],[[65217,65220],"mapped",[1591]],[[65221,65224],"mapped",[1592]],[[65225,65228],"mapped",[1593]],[[65229,65232],"mapped",[1594]],[[65233,65236],"mapped",[1601]],[[65237,65240],"mapped",[1602]],[[65241,65244],"mapped",[1603]],[[65245,65248],"mapped",[1604]],[[65249,65252],"mapped",[1605]],[[65253,65256],"mapped",[1606]],[[65257,65260],"mapped",[1607]],[[65261,65262],"mapped",[1608]],[[65263,65264],"mapped",[1609]],[[65265,65268],"mapped",[1610]],[[65269,65270],"mapped",[1604,1570]],[[65271,65272],"mapped",[1604,1571]],[[65273,65274],"mapped",[1604,1573]],[[65275,65276],"mapped",[1604,1575]],[[65277,65278],"disallowed"],[[65279,65279],"ignored"],[[65280,65280],"disallowed"],[[65281,65281],"disallowed_STD3_mapped",[33]],[[65282,65282],"disallowed_STD3_mapped",[34]],[[65283,65283],"disallowed_STD3_mapped",[35]],[[65284,65284],"disallowed_STD3_mapped",[36]],[[65285,65285],"disallowed_STD3_mapped",[37]],[[65286,65286],"disallowed_STD3_mapped",[38]],[[65287,65287],"disallowed_STD3_mapped",[39]],[[65288,65288],"disallowed_STD3_mapped",[40]],[[65289,65289],"disallowed_STD3_mapped",[41]],[[65290,65290],"disallowed_STD3_mapped",[42]],[[65291,65291],"disallowed_STD3_mapped",[43]],[[65292,65292],"disallowed_STD3_mapped",[44]],[[65293,65293],"mapped",[45]],[[65294,65294],"mapped",[46]],[[65295,65295],"disallowed_STD3_mapped",[47]],[[65296,65296],"mapped",[48]],[[65297,65297],"mapped",[49]],[[65298,65298],"mapped",[50]],[[65299,65299],"mapped",[51]],[[65300,65300],"mapped",[52]],[[65301,65301],"mapped",[53]],[[65302,65302],"mapped",[54]],[[65303,65303],"mapped",[55]],[[65304,65304],"mapped",[56]],[[65305,65305],"mapped",[57]],[[65306,65306],"disallowed_STD3_mapped",[58]],[[65307,65307],"disallowed_STD3_mapped",[59]],[[65308,65308],"disallowed_STD3_mapped",[60]],[[65309,65309],"disallowed_STD3_mapped",[61]],[[65310,65310],"disallowed_STD3_mapped",[62]],[[65311,65311],"disallowed_STD3_mapped",[63]],[[65312,65312],"disallowed_STD3_mapped",[64]],[[65313,65313],"mapped",[97]],[[65314,65314],"mapped",[98]],[[65315,65315],"mapped",[99]],[[65316,65316],"mapped",[100]],[[65317,65317],"mapped",[101]],[[65318,65318],"mapped",[102]],[[65319,65319],"mapped",[103]],[[65320,65320],"mapped",[104]],[[65321,65321],"mapped",[105]],[[65322,65322],"mapped",[106]],[[65323,65323],"mapped",[107]],[[65324,65324],"mapped",[108]],[[65325,65325],"mapped",[109]],[[65326,65326],"mapped",[110]],[[65327,65327],"mapped",[111]],[[65328,65328],"mapped",[112]],[[65329,65329],"mapped",[113]],[[65330,65330],"mapped",[114]],[[65331,65331],"mapped",[115]],[[65332,65332],"mapped",[116]],[[65333,65333],"mapped",[117]],[[65334,65334],"mapped",[118]],[[65335,65335],"mapped",[119]],[[65336,65336],"mapped",[120]],[[65337,65337],"mapped",[121]],[[65338,65338],"mapped",[122]],[[65339,65339],"disallowed_STD3_mapped",[91]],[[65340,65340],"disallowed_STD3_mapped",[92]],[[65341,65341],"disallowed_STD3_mapped",[93]],[[65342,65342],"disallowed_STD3_mapped",[94]],[[65343,65343],"disallowed_STD3_mapped",[95]],[[65344,65344],"disallowed_STD3_mapped",[96]],[[65345,65345],"mapped",[97]],[[65346,65346],"mapped",[98]],[[65347,65347],"mapped",[99]],[[65348,65348],"mapped",[100]],[[65349,65349],"mapped",[101]],[[65350,65350],"mapped",[102]],[[65351,65351],"mapped",[103]],[[65352,65352],"mapped",[104]],[[65353,65353],"mapped",[105]],[[65354,65354],"mapped",[106]],[[65355,65355],"mapped",[107]],[[65356,65356],"mapped",[108]],[[65357,65357],"mapped",[109]],[[65358,65358],"mapped",[110]],[[65359,65359],"mapped",[111]],[[65360,65360],"mapped",[112]],[[65361,65361],"mapped",[113]],[[65362,65362],"mapped",[114]],[[65363,65363],"mapped",[115]],[[65364,65364],"mapped",[116]],[[65365,65365],"mapped",[117]],[[65366,65366],"mapped",[118]],[[65367,65367],"mapped",[119]],[[65368,65368],"mapped",[120]],[[65369,65369],"mapped",[121]],[[65370,65370],"mapped",[122]],[[65371,65371],"disallowed_STD3_mapped",[123]],[[65372,65372],"disallowed_STD3_mapped",[124]],[[65373,65373],"disallowed_STD3_mapped",[125]],[[65374,65374],"disallowed_STD3_mapped",[126]],[[65375,65375],"mapped",[10629]],[[65376,65376],"mapped",[10630]],[[65377,65377],"mapped",[46]],[[65378,65378],"mapped",[12300]],[[65379,65379],"mapped",[12301]],[[65380,65380],"mapped",[12289]],[[65381,65381],"mapped",[12539]],[[65382,65382],"mapped",[12530]],[[65383,65383],"mapped",[12449]],[[65384,65384],"mapped",[12451]],[[65385,65385],"mapped",[12453]],[[65386,65386],"mapped",[12455]],[[65387,65387],"mapped",[12457]],[[65388,65388],"mapped",[12515]],[[65389,65389],"mapped",[12517]],[[65390,65390],"mapped",[12519]],[[65391,65391],"mapped",[12483]],[[65392,65392],"mapped",[12540]],[[65393,65393],"mapped",[12450]],[[65394,65394],"mapped",[12452]],[[65395,65395],"mapped",[12454]],[[65396,65396],"mapped",[12456]],[[65397,65397],"mapped",[12458]],[[65398,65398],"mapped",[12459]],[[65399,65399],"mapped",[12461]],[[65400,65400],"mapped",[12463]],[[65401,65401],"mapped",[12465]],[[65402,65402],"mapped",[12467]],[[65403,65403],"mapped",[12469]],[[65404,65404],"mapped",[12471]],[[65405,65405],"mapped",[12473]],[[65406,65406],"mapped",[12475]],[[65407,65407],"mapped",[12477]],[[65408,65408],"mapped",[12479]],[[65409,65409],"mapped",[12481]],[[65410,65410],"mapped",[12484]],[[65411,65411],"mapped",[12486]],[[65412,65412],"mapped",[12488]],[[65413,65413],"mapped",[12490]],[[65414,65414],"mapped",[12491]],[[65415,65415],"mapped",[12492]],[[65416,65416],"mapped",[12493]],[[65417,65417],"mapped",[12494]],[[65418,65418],"mapped",[12495]],[[65419,65419],"mapped",[12498]],[[65420,65420],"mapped",[12501]],[[65421,65421],"mapped",[12504]],[[65422,65422],"mapped",[12507]],[[65423,65423],"mapped",[12510]],[[65424,65424],"mapped",[12511]],[[65425,65425],"mapped",[12512]],[[65426,65426],"mapped",[12513]],[[65427,65427],"mapped",[12514]],[[65428,65428],"mapped",[12516]],[[65429,65429],"mapped",[12518]],[[65430,65430],"mapped",[12520]],[[65431,65431],"mapped",[12521]],[[65432,65432],"mapped",[12522]],[[65433,65433],"mapped",[12523]],[[65434,65434],"mapped",[12524]],[[65435,65435],"mapped",[12525]],[[65436,65436],"mapped",[12527]],[[65437,65437],"mapped",[12531]],[[65438,65438],"mapped",[12441]],[[65439,65439],"mapped",[12442]],[[65440,65440],"disallowed"],[[65441,65441],"mapped",[4352]],[[65442,65442],"mapped",[4353]],[[65443,65443],"mapped",[4522]],[[65444,65444],"mapped",[4354]],[[65445,65445],"mapped",[4524]],[[65446,65446],"mapped",[4525]],[[65447,65447],"mapped",[4355]],[[65448,65448],"mapped",[4356]],[[65449,65449],"mapped",[4357]],[[65450,65450],"mapped",[4528]],[[65451,65451],"mapped",[4529]],[[65452,65452],"mapped",[4530]],[[65453,65453],"mapped",[4531]],[[65454,65454],"mapped",[4532]],[[65455,65455],"mapped",[4533]],[[65456,65456],"mapped",[4378]],[[65457,65457],"mapped",[4358]],[[65458,65458],"mapped",[4359]],[[65459,65459],"mapped",[4360]],[[65460,65460],"mapped",[4385]],[[65461,65461],"mapped",[4361]],[[65462,65462],"mapped",[4362]],[[65463,65463],"mapped",[4363]],[[65464,65464],"mapped",[4364]],[[65465,65465],"mapped",[4365]],[[65466,65466],"mapped",[4366]],[[65467,65467],"mapped",[4367]],[[65468,65468],"mapped",[4368]],[[65469,65469],"mapped",[4369]],[[65470,65470],"mapped",[4370]],[[65471,65473],"disallowed"],[[65474,65474],"mapped",[4449]],[[65475,65475],"mapped",[4450]],[[65476,65476],"mapped",[4451]],[[65477,65477],"mapped",[4452]],[[65478,65478],"mapped",[4453]],[[65479,65479],"mapped",[4454]],[[65480,65481],"disallowed"],[[65482,65482],"mapped",[4455]],[[65483,65483],"mapped",[4456]],[[65484,65484],"mapped",[4457]],[[65485,65485],"mapped",[4458]],[[65486,65486],"mapped",[4459]],[[65487,65487],"mapped",[4460]],[[65488,65489],"disallowed"],[[65490,65490],"mapped",[4461]],[[65491,65491],"mapped",[4462]],[[65492,65492],"mapped",[4463]],[[65493,65493],"mapped",[4464]],[[65494,65494],"mapped",[4465]],[[65495,65495],"mapped",[4466]],[[65496,65497],"disallowed"],[[65498,65498],"mapped",[4467]],[[65499,65499],"mapped",[4468]],[[65500,65500],"mapped",[4469]],[[65501,65503],"disallowed"],[[65504,65504],"mapped",[162]],[[65505,65505],"mapped",[163]],[[65506,65506],"mapped",[172]],[[65507,65507],"disallowed_STD3_mapped",[32,772]],[[65508,65508],"mapped",[166]],[[65509,65509],"mapped",[165]],[[65510,65510],"mapped",[8361]],[[65511,65511],"disallowed"],[[65512,65512],"mapped",[9474]],[[65513,65513],"mapped",[8592]],[[65514,65514],"mapped",[8593]],[[65515,65515],"mapped",[8594]],[[65516,65516],"mapped",[8595]],[[65517,65517],"mapped",[9632]],[[65518,65518],"mapped",[9675]],[[65519,65528],"disallowed"],[[65529,65531],"disallowed"],[[65532,65532],"disallowed"],[[65533,65533],"disallowed"],[[65534,65535],"disallowed"],[[65536,65547],"valid"],[[65548,65548],"disallowed"],[[65549,65574],"valid"],[[65575,65575],"disallowed"],[[65576,65594],"valid"],[[65595,65595],"disallowed"],[[65596,65597],"valid"],[[65598,65598],"disallowed"],[[65599,65613],"valid"],[[65614,65615],"disallowed"],[[65616,65629],"valid"],[[65630,65663],"disallowed"],[[65664,65786],"valid"],[[65787,65791],"disallowed"],[[65792,65794],"valid",[],"NV8"],[[65795,65798],"disallowed"],[[65799,65843],"valid",[],"NV8"],[[65844,65846],"disallowed"],[[65847,65855],"valid",[],"NV8"],[[65856,65930],"valid",[],"NV8"],[[65931,65932],"valid",[],"NV8"],[[65933,65935],"disallowed"],[[65936,65947],"valid",[],"NV8"],[[65948,65951],"disallowed"],[[65952,65952],"valid",[],"NV8"],[[65953,65999],"disallowed"],[[66e3,66044],"valid",[],"NV8"],[[66045,66045],"valid"],[[66046,66175],"disallowed"],[[66176,66204],"valid"],[[66205,66207],"disallowed"],[[66208,66256],"valid"],[[66257,66271],"disallowed"],[[66272,66272],"valid"],[[66273,66299],"valid",[],"NV8"],[[66300,66303],"disallowed"],[[66304,66334],"valid"],[[66335,66335],"valid"],[[66336,66339],"valid",[],"NV8"],[[66340,66351],"disallowed"],[[66352,66368],"valid"],[[66369,66369],"valid",[],"NV8"],[[66370,66377],"valid"],[[66378,66378],"valid",[],"NV8"],[[66379,66383],"disallowed"],[[66384,66426],"valid"],[[66427,66431],"disallowed"],[[66432,66461],"valid"],[[66462,66462],"disallowed"],[[66463,66463],"valid",[],"NV8"],[[66464,66499],"valid"],[[66500,66503],"disallowed"],[[66504,66511],"valid"],[[66512,66517],"valid",[],"NV8"],[[66518,66559],"disallowed"],[[66560,66560],"mapped",[66600]],[[66561,66561],"mapped",[66601]],[[66562,66562],"mapped",[66602]],[[66563,66563],"mapped",[66603]],[[66564,66564],"mapped",[66604]],[[66565,66565],"mapped",[66605]],[[66566,66566],"mapped",[66606]],[[66567,66567],"mapped",[66607]],[[66568,66568],"mapped",[66608]],[[66569,66569],"mapped",[66609]],[[66570,66570],"mapped",[66610]],[[66571,66571],"mapped",[66611]],[[66572,66572],"mapped",[66612]],[[66573,66573],"mapped",[66613]],[[66574,66574],"mapped",[66614]],[[66575,66575],"mapped",[66615]],[[66576,66576],"mapped",[66616]],[[66577,66577],"mapped",[66617]],[[66578,66578],"mapped",[66618]],[[66579,66579],"mapped",[66619]],[[66580,66580],"mapped",[66620]],[[66581,66581],"mapped",[66621]],[[66582,66582],"mapped",[66622]],[[66583,66583],"mapped",[66623]],[[66584,66584],"mapped",[66624]],[[66585,66585],"mapped",[66625]],[[66586,66586],"mapped",[66626]],[[66587,66587],"mapped",[66627]],[[66588,66588],"mapped",[66628]],[[66589,66589],"mapped",[66629]],[[66590,66590],"mapped",[66630]],[[66591,66591],"mapped",[66631]],[[66592,66592],"mapped",[66632]],[[66593,66593],"mapped",[66633]],[[66594,66594],"mapped",[66634]],[[66595,66595],"mapped",[66635]],[[66596,66596],"mapped",[66636]],[[66597,66597],"mapped",[66637]],[[66598,66598],"mapped",[66638]],[[66599,66599],"mapped",[66639]],[[66600,66637],"valid"],[[66638,66717],"valid"],[[66718,66719],"disallowed"],[[66720,66729],"valid"],[[66730,66815],"disallowed"],[[66816,66855],"valid"],[[66856,66863],"disallowed"],[[66864,66915],"valid"],[[66916,66926],"disallowed"],[[66927,66927],"valid",[],"NV8"],[[66928,67071],"disallowed"],[[67072,67382],"valid"],[[67383,67391],"disallowed"],[[67392,67413],"valid"],[[67414,67423],"disallowed"],[[67424,67431],"valid"],[[67432,67583],"disallowed"],[[67584,67589],"valid"],[[67590,67591],"disallowed"],[[67592,67592],"valid"],[[67593,67593],"disallowed"],[[67594,67637],"valid"],[[67638,67638],"disallowed"],[[67639,67640],"valid"],[[67641,67643],"disallowed"],[[67644,67644],"valid"],[[67645,67646],"disallowed"],[[67647,67647],"valid"],[[67648,67669],"valid"],[[67670,67670],"disallowed"],[[67671,67679],"valid",[],"NV8"],[[67680,67702],"valid"],[[67703,67711],"valid",[],"NV8"],[[67712,67742],"valid"],[[67743,67750],"disallowed"],[[67751,67759],"valid",[],"NV8"],[[67760,67807],"disallowed"],[[67808,67826],"valid"],[[67827,67827],"disallowed"],[[67828,67829],"valid"],[[67830,67834],"disallowed"],[[67835,67839],"valid",[],"NV8"],[[67840,67861],"valid"],[[67862,67865],"valid",[],"NV8"],[[67866,67867],"valid",[],"NV8"],[[67868,67870],"disallowed"],[[67871,67871],"valid",[],"NV8"],[[67872,67897],"valid"],[[67898,67902],"disallowed"],[[67903,67903],"valid",[],"NV8"],[[67904,67967],"disallowed"],[[67968,68023],"valid"],[[68024,68027],"disallowed"],[[68028,68029],"valid",[],"NV8"],[[68030,68031],"valid"],[[68032,68047],"valid",[],"NV8"],[[68048,68049],"disallowed"],[[68050,68095],"valid",[],"NV8"],[[68096,68099],"valid"],[[68100,68100],"disallowed"],[[68101,68102],"valid"],[[68103,68107],"disallowed"],[[68108,68115],"valid"],[[68116,68116],"disallowed"],[[68117,68119],"valid"],[[68120,68120],"disallowed"],[[68121,68147],"valid"],[[68148,68151],"disallowed"],[[68152,68154],"valid"],[[68155,68158],"disallowed"],[[68159,68159],"valid"],[[68160,68167],"valid",[],"NV8"],[[68168,68175],"disallowed"],[[68176,68184],"valid",[],"NV8"],[[68185,68191],"disallowed"],[[68192,68220],"valid"],[[68221,68223],"valid",[],"NV8"],[[68224,68252],"valid"],[[68253,68255],"valid",[],"NV8"],[[68256,68287],"disallowed"],[[68288,68295],"valid"],[[68296,68296],"valid",[],"NV8"],[[68297,68326],"valid"],[[68327,68330],"disallowed"],[[68331,68342],"valid",[],"NV8"],[[68343,68351],"disallowed"],[[68352,68405],"valid"],[[68406,68408],"disallowed"],[[68409,68415],"valid",[],"NV8"],[[68416,68437],"valid"],[[68438,68439],"disallowed"],[[68440,68447],"valid",[],"NV8"],[[68448,68466],"valid"],[[68467,68471],"disallowed"],[[68472,68479],"valid",[],"NV8"],[[68480,68497],"valid"],[[68498,68504],"disallowed"],[[68505,68508],"valid",[],"NV8"],[[68509,68520],"disallowed"],[[68521,68527],"valid",[],"NV8"],[[68528,68607],"disallowed"],[[68608,68680],"valid"],[[68681,68735],"disallowed"],[[68736,68736],"mapped",[68800]],[[68737,68737],"mapped",[68801]],[[68738,68738],"mapped",[68802]],[[68739,68739],"mapped",[68803]],[[68740,68740],"mapped",[68804]],[[68741,68741],"mapped",[68805]],[[68742,68742],"mapped",[68806]],[[68743,68743],"mapped",[68807]],[[68744,68744],"mapped",[68808]],[[68745,68745],"mapped",[68809]],[[68746,68746],"mapped",[68810]],[[68747,68747],"mapped",[68811]],[[68748,68748],"mapped",[68812]],[[68749,68749],"mapped",[68813]],[[68750,68750],"mapped",[68814]],[[68751,68751],"mapped",[68815]],[[68752,68752],"mapped",[68816]],[[68753,68753],"mapped",[68817]],[[68754,68754],"mapped",[68818]],[[68755,68755],"mapped",[68819]],[[68756,68756],"mapped",[68820]],[[68757,68757],"mapped",[68821]],[[68758,68758],"mapped",[68822]],[[68759,68759],"mapped",[68823]],[[68760,68760],"mapped",[68824]],[[68761,68761],"mapped",[68825]],[[68762,68762],"mapped",[68826]],[[68763,68763],"mapped",[68827]],[[68764,68764],"mapped",[68828]],[[68765,68765],"mapped",[68829]],[[68766,68766],"mapped",[68830]],[[68767,68767],"mapped",[68831]],[[68768,68768],"mapped",[68832]],[[68769,68769],"mapped",[68833]],[[68770,68770],"mapped",[68834]],[[68771,68771],"mapped",[68835]],[[68772,68772],"mapped",[68836]],[[68773,68773],"mapped",[68837]],[[68774,68774],"mapped",[68838]],[[68775,68775],"mapped",[68839]],[[68776,68776],"mapped",[68840]],[[68777,68777],"mapped",[68841]],[[68778,68778],"mapped",[68842]],[[68779,68779],"mapped",[68843]],[[68780,68780],"mapped",[68844]],[[68781,68781],"mapped",[68845]],[[68782,68782],"mapped",[68846]],[[68783,68783],"mapped",[68847]],[[68784,68784],"mapped",[68848]],[[68785,68785],"mapped",[68849]],[[68786,68786],"mapped",[68850]],[[68787,68799],"disallowed"],[[68800,68850],"valid"],[[68851,68857],"disallowed"],[[68858,68863],"valid",[],"NV8"],[[68864,69215],"disallowed"],[[69216,69246],"valid",[],"NV8"],[[69247,69631],"disallowed"],[[69632,69702],"valid"],[[69703,69709],"valid",[],"NV8"],[[69710,69713],"disallowed"],[[69714,69733],"valid",[],"NV8"],[[69734,69743],"valid"],[[69744,69758],"disallowed"],[[69759,69759],"valid"],[[69760,69818],"valid"],[[69819,69820],"valid",[],"NV8"],[[69821,69821],"disallowed"],[[69822,69825],"valid",[],"NV8"],[[69826,69839],"disallowed"],[[69840,69864],"valid"],[[69865,69871],"disallowed"],[[69872,69881],"valid"],[[69882,69887],"disallowed"],[[69888,69940],"valid"],[[69941,69941],"disallowed"],[[69942,69951],"valid"],[[69952,69955],"valid",[],"NV8"],[[69956,69967],"disallowed"],[[69968,70003],"valid"],[[70004,70005],"valid",[],"NV8"],[[70006,70006],"valid"],[[70007,70015],"disallowed"],[[70016,70084],"valid"],[[70085,70088],"valid",[],"NV8"],[[70089,70089],"valid",[],"NV8"],[[70090,70092],"valid"],[[70093,70093],"valid",[],"NV8"],[[70094,70095],"disallowed"],[[70096,70105],"valid"],[[70106,70106],"valid"],[[70107,70107],"valid",[],"NV8"],[[70108,70108],"valid"],[[70109,70111],"valid",[],"NV8"],[[70112,70112],"disallowed"],[[70113,70132],"valid",[],"NV8"],[[70133,70143],"disallowed"],[[70144,70161],"valid"],[[70162,70162],"disallowed"],[[70163,70199],"valid"],[[70200,70205],"valid",[],"NV8"],[[70206,70271],"disallowed"],[[70272,70278],"valid"],[[70279,70279],"disallowed"],[[70280,70280],"valid"],[[70281,70281],"disallowed"],[[70282,70285],"valid"],[[70286,70286],"disallowed"],[[70287,70301],"valid"],[[70302,70302],"disallowed"],[[70303,70312],"valid"],[[70313,70313],"valid",[],"NV8"],[[70314,70319],"disallowed"],[[70320,70378],"valid"],[[70379,70383],"disallowed"],[[70384,70393],"valid"],[[70394,70399],"disallowed"],[[70400,70400],"valid"],[[70401,70403],"valid"],[[70404,70404],"disallowed"],[[70405,70412],"valid"],[[70413,70414],"disallowed"],[[70415,70416],"valid"],[[70417,70418],"disallowed"],[[70419,70440],"valid"],[[70441,70441],"disallowed"],[[70442,70448],"valid"],[[70449,70449],"disallowed"],[[70450,70451],"valid"],[[70452,70452],"disallowed"],[[70453,70457],"valid"],[[70458,70459],"disallowed"],[[70460,70468],"valid"],[[70469,70470],"disallowed"],[[70471,70472],"valid"],[[70473,70474],"disallowed"],[[70475,70477],"valid"],[[70478,70479],"disallowed"],[[70480,70480],"valid"],[[70481,70486],"disallowed"],[[70487,70487],"valid"],[[70488,70492],"disallowed"],[[70493,70499],"valid"],[[70500,70501],"disallowed"],[[70502,70508],"valid"],[[70509,70511],"disallowed"],[[70512,70516],"valid"],[[70517,70783],"disallowed"],[[70784,70853],"valid"],[[70854,70854],"valid",[],"NV8"],[[70855,70855],"valid"],[[70856,70863],"disallowed"],[[70864,70873],"valid"],[[70874,71039],"disallowed"],[[71040,71093],"valid"],[[71094,71095],"disallowed"],[[71096,71104],"valid"],[[71105,71113],"valid",[],"NV8"],[[71114,71127],"valid",[],"NV8"],[[71128,71133],"valid"],[[71134,71167],"disallowed"],[[71168,71232],"valid"],[[71233,71235],"valid",[],"NV8"],[[71236,71236],"valid"],[[71237,71247],"disallowed"],[[71248,71257],"valid"],[[71258,71295],"disallowed"],[[71296,71351],"valid"],[[71352,71359],"disallowed"],[[71360,71369],"valid"],[[71370,71423],"disallowed"],[[71424,71449],"valid"],[[71450,71452],"disallowed"],[[71453,71467],"valid"],[[71468,71471],"disallowed"],[[71472,71481],"valid"],[[71482,71487],"valid",[],"NV8"],[[71488,71839],"disallowed"],[[71840,71840],"mapped",[71872]],[[71841,71841],"mapped",[71873]],[[71842,71842],"mapped",[71874]],[[71843,71843],"mapped",[71875]],[[71844,71844],"mapped",[71876]],[[71845,71845],"mapped",[71877]],[[71846,71846],"mapped",[71878]],[[71847,71847],"mapped",[71879]],[[71848,71848],"mapped",[71880]],[[71849,71849],"mapped",[71881]],[[71850,71850],"mapped",[71882]],[[71851,71851],"mapped",[71883]],[[71852,71852],"mapped",[71884]],[[71853,71853],"mapped",[71885]],[[71854,71854],"mapped",[71886]],[[71855,71855],"mapped",[71887]],[[71856,71856],"mapped",[71888]],[[71857,71857],"mapped",[71889]],[[71858,71858],"mapped",[71890]],[[71859,71859],"mapped",[71891]],[[71860,71860],"mapped",[71892]],[[71861,71861],"mapped",[71893]],[[71862,71862],"mapped",[71894]],[[71863,71863],"mapped",[71895]],[[71864,71864],"mapped",[71896]],[[71865,71865],"mapped",[71897]],[[71866,71866],"mapped",[71898]],[[71867,71867],"mapped",[71899]],[[71868,71868],"mapped",[71900]],[[71869,71869],"mapped",[71901]],[[71870,71870],"mapped",[71902]],[[71871,71871],"mapped",[71903]],[[71872,71913],"valid"],[[71914,71922],"valid",[],"NV8"],[[71923,71934],"disallowed"],[[71935,71935],"valid"],[[71936,72383],"disallowed"],[[72384,72440],"valid"],[[72441,73727],"disallowed"],[[73728,74606],"valid"],[[74607,74648],"valid"],[[74649,74649],"valid"],[[74650,74751],"disallowed"],[[74752,74850],"valid",[],"NV8"],[[74851,74862],"valid",[],"NV8"],[[74863,74863],"disallowed"],[[74864,74867],"valid",[],"NV8"],[[74868,74868],"valid",[],"NV8"],[[74869,74879],"disallowed"],[[74880,75075],"valid"],[[75076,77823],"disallowed"],[[77824,78894],"valid"],[[78895,82943],"disallowed"],[[82944,83526],"valid"],[[83527,92159],"disallowed"],[[92160,92728],"valid"],[[92729,92735],"disallowed"],[[92736,92766],"valid"],[[92767,92767],"disallowed"],[[92768,92777],"valid"],[[92778,92781],"disallowed"],[[92782,92783],"valid",[],"NV8"],[[92784,92879],"disallowed"],[[92880,92909],"valid"],[[92910,92911],"disallowed"],[[92912,92916],"valid"],[[92917,92917],"valid",[],"NV8"],[[92918,92927],"disallowed"],[[92928,92982],"valid"],[[92983,92991],"valid",[],"NV8"],[[92992,92995],"valid"],[[92996,92997],"valid",[],"NV8"],[[92998,93007],"disallowed"],[[93008,93017],"valid"],[[93018,93018],"disallowed"],[[93019,93025],"valid",[],"NV8"],[[93026,93026],"disallowed"],[[93027,93047],"valid"],[[93048,93052],"disallowed"],[[93053,93071],"valid"],[[93072,93951],"disallowed"],[[93952,94020],"valid"],[[94021,94031],"disallowed"],[[94032,94078],"valid"],[[94079,94094],"disallowed"],[[94095,94111],"valid"],[[94112,110591],"disallowed"],[[110592,110593],"valid"],[[110594,113663],"disallowed"],[[113664,113770],"valid"],[[113771,113775],"disallowed"],[[113776,113788],"valid"],[[113789,113791],"disallowed"],[[113792,113800],"valid"],[[113801,113807],"disallowed"],[[113808,113817],"valid"],[[113818,113819],"disallowed"],[[113820,113820],"valid",[],"NV8"],[[113821,113822],"valid"],[[113823,113823],"valid",[],"NV8"],[[113824,113827],"ignored"],[[113828,118783],"disallowed"],[[118784,119029],"valid",[],"NV8"],[[119030,119039],"disallowed"],[[119040,119078],"valid",[],"NV8"],[[119079,119080],"disallowed"],[[119081,119081],"valid",[],"NV8"],[[119082,119133],"valid",[],"NV8"],[[119134,119134],"mapped",[119127,119141]],[[119135,119135],"mapped",[119128,119141]],[[119136,119136],"mapped",[119128,119141,119150]],[[119137,119137],"mapped",[119128,119141,119151]],[[119138,119138],"mapped",[119128,119141,119152]],[[119139,119139],"mapped",[119128,119141,119153]],[[119140,119140],"mapped",[119128,119141,119154]],[[119141,119154],"valid",[],"NV8"],[[119155,119162],"disallowed"],[[119163,119226],"valid",[],"NV8"],[[119227,119227],"mapped",[119225,119141]],[[119228,119228],"mapped",[119226,119141]],[[119229,119229],"mapped",[119225,119141,119150]],[[119230,119230],"mapped",[119226,119141,119150]],[[119231,119231],"mapped",[119225,119141,119151]],[[119232,119232],"mapped",[119226,119141,119151]],[[119233,119261],"valid",[],"NV8"],[[119262,119272],"valid",[],"NV8"],[[119273,119295],"disallowed"],[[119296,119365],"valid",[],"NV8"],[[119366,119551],"disallowed"],[[119552,119638],"valid",[],"NV8"],[[119639,119647],"disallowed"],[[119648,119665],"valid",[],"NV8"],[[119666,119807],"disallowed"],[[119808,119808],"mapped",[97]],[[119809,119809],"mapped",[98]],[[119810,119810],"mapped",[99]],[[119811,119811],"mapped",[100]],[[119812,119812],"mapped",[101]],[[119813,119813],"mapped",[102]],[[119814,119814],"mapped",[103]],[[119815,119815],"mapped",[104]],[[119816,119816],"mapped",[105]],[[119817,119817],"mapped",[106]],[[119818,119818],"mapped",[107]],[[119819,119819],"mapped",[108]],[[119820,119820],"mapped",[109]],[[119821,119821],"mapped",[110]],[[119822,119822],"mapped",[111]],[[119823,119823],"mapped",[112]],[[119824,119824],"mapped",[113]],[[119825,119825],"mapped",[114]],[[119826,119826],"mapped",[115]],[[119827,119827],"mapped",[116]],[[119828,119828],"mapped",[117]],[[119829,119829],"mapped",[118]],[[119830,119830],"mapped",[119]],[[119831,119831],"mapped",[120]],[[119832,119832],"mapped",[121]],[[119833,119833],"mapped",[122]],[[119834,119834],"mapped",[97]],[[119835,119835],"mapped",[98]],[[119836,119836],"mapped",[99]],[[119837,119837],"mapped",[100]],[[119838,119838],"mapped",[101]],[[119839,119839],"mapped",[102]],[[119840,119840],"mapped",[103]],[[119841,119841],"mapped",[104]],[[119842,119842],"mapped",[105]],[[119843,119843],"mapped",[106]],[[119844,119844],"mapped",[107]],[[119845,119845],"mapped",[108]],[[119846,119846],"mapped",[109]],[[119847,119847],"mapped",[110]],[[119848,119848],"mapped",[111]],[[119849,119849],"mapped",[112]],[[119850,119850],"mapped",[113]],[[119851,119851],"mapped",[114]],[[119852,119852],"mapped",[115]],[[119853,119853],"mapped",[116]],[[119854,119854],"mapped",[117]],[[119855,119855],"mapped",[118]],[[119856,119856],"mapped",[119]],[[119857,119857],"mapped",[120]],[[119858,119858],"mapped",[121]],[[119859,119859],"mapped",[122]],[[119860,119860],"mapped",[97]],[[119861,119861],"mapped",[98]],[[119862,119862],"mapped",[99]],[[119863,119863],"mapped",[100]],[[119864,119864],"mapped",[101]],[[119865,119865],"mapped",[102]],[[119866,119866],"mapped",[103]],[[119867,119867],"mapped",[104]],[[119868,119868],"mapped",[105]],[[119869,119869],"mapped",[106]],[[119870,119870],"mapped",[107]],[[119871,119871],"mapped",[108]],[[119872,119872],"mapped",[109]],[[119873,119873],"mapped",[110]],[[119874,119874],"mapped",[111]],[[119875,119875],"mapped",[112]],[[119876,119876],"mapped",[113]],[[119877,119877],"mapped",[114]],[[119878,119878],"mapped",[115]],[[119879,119879],"mapped",[116]],[[119880,119880],"mapped",[117]],[[119881,119881],"mapped",[118]],[[119882,119882],"mapped",[119]],[[119883,119883],"mapped",[120]],[[119884,119884],"mapped",[121]],[[119885,119885],"mapped",[122]],[[119886,119886],"mapped",[97]],[[119887,119887],"mapped",[98]],[[119888,119888],"mapped",[99]],[[119889,119889],"mapped",[100]],[[119890,119890],"mapped",[101]],[[119891,119891],"mapped",[102]],[[119892,119892],"mapped",[103]],[[119893,119893],"disallowed"],[[119894,119894],"mapped",[105]],[[119895,119895],"mapped",[106]],[[119896,119896],"mapped",[107]],[[119897,119897],"mapped",[108]],[[119898,119898],"mapped",[109]],[[119899,119899],"mapped",[110]],[[119900,119900],"mapped",[111]],[[119901,119901],"mapped",[112]],[[119902,119902],"mapped",[113]],[[119903,119903],"mapped",[114]],[[119904,119904],"mapped",[115]],[[119905,119905],"mapped",[116]],[[119906,119906],"mapped",[117]],[[119907,119907],"mapped",[118]],[[119908,119908],"mapped",[119]],[[119909,119909],"mapped",[120]],[[119910,119910],"mapped",[121]],[[119911,119911],"mapped",[122]],[[119912,119912],"mapped",[97]],[[119913,119913],"mapped",[98]],[[119914,119914],"mapped",[99]],[[119915,119915],"mapped",[100]],[[119916,119916],"mapped",[101]],[[119917,119917],"mapped",[102]],[[119918,119918],"mapped",[103]],[[119919,119919],"mapped",[104]],[[119920,119920],"mapped",[105]],[[119921,119921],"mapped",[106]],[[119922,119922],"mapped",[107]],[[119923,119923],"mapped",[108]],[[119924,119924],"mapped",[109]],[[119925,119925],"mapped",[110]],[[119926,119926],"mapped",[111]],[[119927,119927],"mapped",[112]],[[119928,119928],"mapped",[113]],[[119929,119929],"mapped",[114]],[[119930,119930],"mapped",[115]],[[119931,119931],"mapped",[116]],[[119932,119932],"mapped",[117]],[[119933,119933],"mapped",[118]],[[119934,119934],"mapped",[119]],[[119935,119935],"mapped",[120]],[[119936,119936],"mapped",[121]],[[119937,119937],"mapped",[122]],[[119938,119938],"mapped",[97]],[[119939,119939],"mapped",[98]],[[119940,119940],"mapped",[99]],[[119941,119941],"mapped",[100]],[[119942,119942],"mapped",[101]],[[119943,119943],"mapped",[102]],[[119944,119944],"mapped",[103]],[[119945,119945],"mapped",[104]],[[119946,119946],"mapped",[105]],[[119947,119947],"mapped",[106]],[[119948,119948],"mapped",[107]],[[119949,119949],"mapped",[108]],[[119950,119950],"mapped",[109]],[[119951,119951],"mapped",[110]],[[119952,119952],"mapped",[111]],[[119953,119953],"mapped",[112]],[[119954,119954],"mapped",[113]],[[119955,119955],"mapped",[114]],[[119956,119956],"mapped",[115]],[[119957,119957],"mapped",[116]],[[119958,119958],"mapped",[117]],[[119959,119959],"mapped",[118]],[[119960,119960],"mapped",[119]],[[119961,119961],"mapped",[120]],[[119962,119962],"mapped",[121]],[[119963,119963],"mapped",[122]],[[119964,119964],"mapped",[97]],[[119965,119965],"disallowed"],[[119966,119966],"mapped",[99]],[[119967,119967],"mapped",[100]],[[119968,119969],"disallowed"],[[119970,119970],"mapped",[103]],[[119971,119972],"disallowed"],[[119973,119973],"mapped",[106]],[[119974,119974],"mapped",[107]],[[119975,119976],"disallowed"],[[119977,119977],"mapped",[110]],[[119978,119978],"mapped",[111]],[[119979,119979],"mapped",[112]],[[119980,119980],"mapped",[113]],[[119981,119981],"disallowed"],[[119982,119982],"mapped",[115]],[[119983,119983],"mapped",[116]],[[119984,119984],"mapped",[117]],[[119985,119985],"mapped",[118]],[[119986,119986],"mapped",[119]],[[119987,119987],"mapped",[120]],[[119988,119988],"mapped",[121]],[[119989,119989],"mapped",[122]],[[119990,119990],"mapped",[97]],[[119991,119991],"mapped",[98]],[[119992,119992],"mapped",[99]],[[119993,119993],"mapped",[100]],[[119994,119994],"disallowed"],[[119995,119995],"mapped",[102]],[[119996,119996],"disallowed"],[[119997,119997],"mapped",[104]],[[119998,119998],"mapped",[105]],[[119999,119999],"mapped",[106]],[[12e4,12e4],"mapped",[107]],[[120001,120001],"mapped",[108]],[[120002,120002],"mapped",[109]],[[120003,120003],"mapped",[110]],[[120004,120004],"disallowed"],[[120005,120005],"mapped",[112]],[[120006,120006],"mapped",[113]],[[120007,120007],"mapped",[114]],[[120008,120008],"mapped",[115]],[[120009,120009],"mapped",[116]],[[120010,120010],"mapped",[117]],[[120011,120011],"mapped",[118]],[[120012,120012],"mapped",[119]],[[120013,120013],"mapped",[120]],[[120014,120014],"mapped",[121]],[[120015,120015],"mapped",[122]],[[120016,120016],"mapped",[97]],[[120017,120017],"mapped",[98]],[[120018,120018],"mapped",[99]],[[120019,120019],"mapped",[100]],[[120020,120020],"mapped",[101]],[[120021,120021],"mapped",[102]],[[120022,120022],"mapped",[103]],[[120023,120023],"mapped",[104]],[[120024,120024],"mapped",[105]],[[120025,120025],"mapped",[106]],[[120026,120026],"mapped",[107]],[[120027,120027],"mapped",[108]],[[120028,120028],"mapped",[109]],[[120029,120029],"mapped",[110]],[[120030,120030],"mapped",[111]],[[120031,120031],"mapped",[112]],[[120032,120032],"mapped",[113]],[[120033,120033],"mapped",[114]],[[120034,120034],"mapped",[115]],[[120035,120035],"mapped",[116]],[[120036,120036],"mapped",[117]],[[120037,120037],"mapped",[118]],[[120038,120038],"mapped",[119]],[[120039,120039],"mapped",[120]],[[120040,120040],"mapped",[121]],[[120041,120041],"mapped",[122]],[[120042,120042],"mapped",[97]],[[120043,120043],"mapped",[98]],[[120044,120044],"mapped",[99]],[[120045,120045],"mapped",[100]],[[120046,120046],"mapped",[101]],[[120047,120047],"mapped",[102]],[[120048,120048],"mapped",[103]],[[120049,120049],"mapped",[104]],[[120050,120050],"mapped",[105]],[[120051,120051],"mapped",[106]],[[120052,120052],"mapped",[107]],[[120053,120053],"mapped",[108]],[[120054,120054],"mapped",[109]],[[120055,120055],"mapped",[110]],[[120056,120056],"mapped",[111]],[[120057,120057],"mapped",[112]],[[120058,120058],"mapped",[113]],[[120059,120059],"mapped",[114]],[[120060,120060],"mapped",[115]],[[120061,120061],"mapped",[116]],[[120062,120062],"mapped",[117]],[[120063,120063],"mapped",[118]],[[120064,120064],"mapped",[119]],[[120065,120065],"mapped",[120]],[[120066,120066],"mapped",[121]],[[120067,120067],"mapped",[122]],[[120068,120068],"mapped",[97]],[[120069,120069],"mapped",[98]],[[120070,120070],"disallowed"],[[120071,120071],"mapped",[100]],[[120072,120072],"mapped",[101]],[[120073,120073],"mapped",[102]],[[120074,120074],"mapped",[103]],[[120075,120076],"disallowed"],[[120077,120077],"mapped",[106]],[[120078,120078],"mapped",[107]],[[120079,120079],"mapped",[108]],[[120080,120080],"mapped",[109]],[[120081,120081],"mapped",[110]],[[120082,120082],"mapped",[111]],[[120083,120083],"mapped",[112]],[[120084,120084],"mapped",[113]],[[120085,120085],"disallowed"],[[120086,120086],"mapped",[115]],[[120087,120087],"mapped",[116]],[[120088,120088],"mapped",[117]],[[120089,120089],"mapped",[118]],[[120090,120090],"mapped",[119]],[[120091,120091],"mapped",[120]],[[120092,120092],"mapped",[121]],[[120093,120093],"disallowed"],[[120094,120094],"mapped",[97]],[[120095,120095],"mapped",[98]],[[120096,120096],"mapped",[99]],[[120097,120097],"mapped",[100]],[[120098,120098],"mapped",[101]],[[120099,120099],"mapped",[102]],[[120100,120100],"mapped",[103]],[[120101,120101],"mapped",[104]],[[120102,120102],"mapped",[105]],[[120103,120103],"mapped",[106]],[[120104,120104],"mapped",[107]],[[120105,120105],"mapped",[108]],[[120106,120106],"mapped",[109]],[[120107,120107],"mapped",[110]],[[120108,120108],"mapped",[111]],[[120109,120109],"mapped",[112]],[[120110,120110],"mapped",[113]],[[120111,120111],"mapped",[114]],[[120112,120112],"mapped",[115]],[[120113,120113],"mapped",[116]],[[120114,120114],"mapped",[117]],[[120115,120115],"mapped",[118]],[[120116,120116],"mapped",[119]],[[120117,120117],"mapped",[120]],[[120118,120118],"mapped",[121]],[[120119,120119],"mapped",[122]],[[120120,120120],"mapped",[97]],[[120121,120121],"mapped",[98]],[[120122,120122],"disallowed"],[[120123,120123],"mapped",[100]],[[120124,120124],"mapped",[101]],[[120125,120125],"mapped",[102]],[[120126,120126],"mapped",[103]],[[120127,120127],"disallowed"],[[120128,120128],"mapped",[105]],[[120129,120129],"mapped",[106]],[[120130,120130],"mapped",[107]],[[120131,120131],"mapped",[108]],[[120132,120132],"mapped",[109]],[[120133,120133],"disallowed"],[[120134,120134],"mapped",[111]],[[120135,120137],"disallowed"],[[120138,120138],"mapped",[115]],[[120139,120139],"mapped",[116]],[[120140,120140],"mapped",[117]],[[120141,120141],"mapped",[118]],[[120142,120142],"mapped",[119]],[[120143,120143],"mapped",[120]],[[120144,120144],"mapped",[121]],[[120145,120145],"disallowed"],[[120146,120146],"mapped",[97]],[[120147,120147],"mapped",[98]],[[120148,120148],"mapped",[99]],[[120149,120149],"mapped",[100]],[[120150,120150],"mapped",[101]],[[120151,120151],"mapped",[102]],[[120152,120152],"mapped",[103]],[[120153,120153],"mapped",[104]],[[120154,120154],"mapped",[105]],[[120155,120155],"mapped",[106]],[[120156,120156],"mapped",[107]],[[120157,120157],"mapped",[108]],[[120158,120158],"mapped",[109]],[[120159,120159],"mapped",[110]],[[120160,120160],"mapped",[111]],[[120161,120161],"mapped",[112]],[[120162,120162],"mapped",[113]],[[120163,120163],"mapped",[114]],[[120164,120164],"mapped",[115]],[[120165,120165],"mapped",[116]],[[120166,120166],"mapped",[117]],[[120167,120167],"mapped",[118]],[[120168,120168],"mapped",[119]],[[120169,120169],"mapped",[120]],[[120170,120170],"mapped",[121]],[[120171,120171],"mapped",[122]],[[120172,120172],"mapped",[97]],[[120173,120173],"mapped",[98]],[[120174,120174],"mapped",[99]],[[120175,120175],"mapped",[100]],[[120176,120176],"mapped",[101]],[[120177,120177],"mapped",[102]],[[120178,120178],"mapped",[103]],[[120179,120179],"mapped",[104]],[[120180,120180],"mapped",[105]],[[120181,120181],"mapped",[106]],[[120182,120182],"mapped",[107]],[[120183,120183],"mapped",[108]],[[120184,120184],"mapped",[109]],[[120185,120185],"mapped",[110]],[[120186,120186],"mapped",[111]],[[120187,120187],"mapped",[112]],[[120188,120188],"mapped",[113]],[[120189,120189],"mapped",[114]],[[120190,120190],"mapped",[115]],[[120191,120191],"mapped",[116]],[[120192,120192],"mapped",[117]],[[120193,120193],"mapped",[118]],[[120194,120194],"mapped",[119]],[[120195,120195],"mapped",[120]],[[120196,120196],"mapped",[121]],[[120197,120197],"mapped",[122]],[[120198,120198],"mapped",[97]],[[120199,120199],"mapped",[98]],[[120200,120200],"mapped",[99]],[[120201,120201],"mapped",[100]],[[120202,120202],"mapped",[101]],[[120203,120203],"mapped",[102]],[[120204,120204],"mapped",[103]],[[120205,120205],"mapped",[104]],[[120206,120206],"mapped",[105]],[[120207,120207],"mapped",[106]],[[120208,120208],"mapped",[107]],[[120209,120209],"mapped",[108]],[[120210,120210],"mapped",[109]],[[120211,120211],"mapped",[110]],[[120212,120212],"mapped",[111]],[[120213,120213],"mapped",[112]],[[120214,120214],"mapped",[113]],[[120215,120215],"mapped",[114]],[[120216,120216],"mapped",[115]],[[120217,120217],"mapped",[116]],[[120218,120218],"mapped",[117]],[[120219,120219],"mapped",[118]],[[120220,120220],"mapped",[119]],[[120221,120221],"mapped",[120]],[[120222,120222],"mapped",[121]],[[120223,120223],"mapped",[122]],[[120224,120224],"mapped",[97]],[[120225,120225],"mapped",[98]],[[120226,120226],"mapped",[99]],[[120227,120227],"mapped",[100]],[[120228,120228],"mapped",[101]],[[120229,120229],"mapped",[102]],[[120230,120230],"mapped",[103]],[[120231,120231],"mapped",[104]],[[120232,120232],"mapped",[105]],[[120233,120233],"mapped",[106]],[[120234,120234],"mapped",[107]],[[120235,120235],"mapped",[108]],[[120236,120236],"mapped",[109]],[[120237,120237],"mapped",[110]],[[120238,120238],"mapped",[111]],[[120239,120239],"mapped",[112]],[[120240,120240],"mapped",[113]],[[120241,120241],"mapped",[114]],[[120242,120242],"mapped",[115]],[[120243,120243],"mapped",[116]],[[120244,120244],"mapped",[117]],[[120245,120245],"mapped",[118]],[[120246,120246],"mapped",[119]],[[120247,120247],"mapped",[120]],[[120248,120248],"mapped",[121]],[[120249,120249],"mapped",[122]],[[120250,120250],"mapped",[97]],[[120251,120251],"mapped",[98]],[[120252,120252],"mapped",[99]],[[120253,120253],"mapped",[100]],[[120254,120254],"mapped",[101]],[[120255,120255],"mapped",[102]],[[120256,120256],"mapped",[103]],[[120257,120257],"mapped",[104]],[[120258,120258],"mapped",[105]],[[120259,120259],"mapped",[106]],[[120260,120260],"mapped",[107]],[[120261,120261],"mapped",[108]],[[120262,120262],"mapped",[109]],[[120263,120263],"mapped",[110]],[[120264,120264],"mapped",[111]],[[120265,120265],"mapped",[112]],[[120266,120266],"mapped",[113]],[[120267,120267],"mapped",[114]],[[120268,120268],"mapped",[115]],[[120269,120269],"mapped",[116]],[[120270,120270],"mapped",[117]],[[120271,120271],"mapped",[118]],[[120272,120272],"mapped",[119]],[[120273,120273],"mapped",[120]],[[120274,120274],"mapped",[121]],[[120275,120275],"mapped",[122]],[[120276,120276],"mapped",[97]],[[120277,120277],"mapped",[98]],[[120278,120278],"mapped",[99]],[[120279,120279],"mapped",[100]],[[120280,120280],"mapped",[101]],[[120281,120281],"mapped",[102]],[[120282,120282],"mapped",[103]],[[120283,120283],"mapped",[104]],[[120284,120284],"mapped",[105]],[[120285,120285],"mapped",[106]],[[120286,120286],"mapped",[107]],[[120287,120287],"mapped",[108]],[[120288,120288],"mapped",[109]],[[120289,120289],"mapped",[110]],[[120290,120290],"mapped",[111]],[[120291,120291],"mapped",[112]],[[120292,120292],"mapped",[113]],[[120293,120293],"mapped",[114]],[[120294,120294],"mapped",[115]],[[120295,120295],"mapped",[116]],[[120296,120296],"mapped",[117]],[[120297,120297],"mapped",[118]],[[120298,120298],"mapped",[119]],[[120299,120299],"mapped",[120]],[[120300,120300],"mapped",[121]],[[120301,120301],"mapped",[122]],[[120302,120302],"mapped",[97]],[[120303,120303],"mapped",[98]],[[120304,120304],"mapped",[99]],[[120305,120305],"mapped",[100]],[[120306,120306],"mapped",[101]],[[120307,120307],"mapped",[102]],[[120308,120308],"mapped",[103]],[[120309,120309],"mapped",[104]],[[120310,120310],"mapped",[105]],[[120311,120311],"mapped",[106]],[[120312,120312],"mapped",[107]],[[120313,120313],"mapped",[108]],[[120314,120314],"mapped",[109]],[[120315,120315],"mapped",[110]],[[120316,120316],"mapped",[111]],[[120317,120317],"mapped",[112]],[[120318,120318],"mapped",[113]],[[120319,120319],"mapped",[114]],[[120320,120320],"mapped",[115]],[[120321,120321],"mapped",[116]],[[120322,120322],"mapped",[117]],[[120323,120323],"mapped",[118]],[[120324,120324],"mapped",[119]],[[120325,120325],"mapped",[120]],[[120326,120326],"mapped",[121]],[[120327,120327],"mapped",[122]],[[120328,120328],"mapped",[97]],[[120329,120329],"mapped",[98]],[[120330,120330],"mapped",[99]],[[120331,120331],"mapped",[100]],[[120332,120332],"mapped",[101]],[[120333,120333],"mapped",[102]],[[120334,120334],"mapped",[103]],[[120335,120335],"mapped",[104]],[[120336,120336],"mapped",[105]],[[120337,120337],"mapped",[106]],[[120338,120338],"mapped",[107]],[[120339,120339],"mapped",[108]],[[120340,120340],"mapped",[109]],[[120341,120341],"mapped",[110]],[[120342,120342],"mapped",[111]],[[120343,120343],"mapped",[112]],[[120344,120344],"mapped",[113]],[[120345,120345],"mapped",[114]],[[120346,120346],"mapped",[115]],[[120347,120347],"mapped",[116]],[[120348,120348],"mapped",[117]],[[120349,120349],"mapped",[118]],[[120350,120350],"mapped",[119]],[[120351,120351],"mapped",[120]],[[120352,120352],"mapped",[121]],[[120353,120353],"mapped",[122]],[[120354,120354],"mapped",[97]],[[120355,120355],"mapped",[98]],[[120356,120356],"mapped",[99]],[[120357,120357],"mapped",[100]],[[120358,120358],"mapped",[101]],[[120359,120359],"mapped",[102]],[[120360,120360],"mapped",[103]],[[120361,120361],"mapped",[104]],[[120362,120362],"mapped",[105]],[[120363,120363],"mapped",[106]],[[120364,120364],"mapped",[107]],[[120365,120365],"mapped",[108]],[[120366,120366],"mapped",[109]],[[120367,120367],"mapped",[110]],[[120368,120368],"mapped",[111]],[[120369,120369],"mapped",[112]],[[120370,120370],"mapped",[113]],[[120371,120371],"mapped",[114]],[[120372,120372],"mapped",[115]],[[120373,120373],"mapped",[116]],[[120374,120374],"mapped",[117]],[[120375,120375],"mapped",[118]],[[120376,120376],"mapped",[119]],[[120377,120377],"mapped",[120]],[[120378,120378],"mapped",[121]],[[120379,120379],"mapped",[122]],[[120380,120380],"mapped",[97]],[[120381,120381],"mapped",[98]],[[120382,120382],"mapped",[99]],[[120383,120383],"mapped",[100]],[[120384,120384],"mapped",[101]],[[120385,120385],"mapped",[102]],[[120386,120386],"mapped",[103]],[[120387,120387],"mapped",[104]],[[120388,120388],"mapped",[105]],[[120389,120389],"mapped",[106]],[[120390,120390],"mapped",[107]],[[120391,120391],"mapped",[108]],[[120392,120392],"mapped",[109]],[[120393,120393],"mapped",[110]],[[120394,120394],"mapped",[111]],[[120395,120395],"mapped",[112]],[[120396,120396],"mapped",[113]],[[120397,120397],"mapped",[114]],[[120398,120398],"mapped",[115]],[[120399,120399],"mapped",[116]],[[120400,120400],"mapped",[117]],[[120401,120401],"mapped",[118]],[[120402,120402],"mapped",[119]],[[120403,120403],"mapped",[120]],[[120404,120404],"mapped",[121]],[[120405,120405],"mapped",[122]],[[120406,120406],"mapped",[97]],[[120407,120407],"mapped",[98]],[[120408,120408],"mapped",[99]],[[120409,120409],"mapped",[100]],[[120410,120410],"mapped",[101]],[[120411,120411],"mapped",[102]],[[120412,120412],"mapped",[103]],[[120413,120413],"mapped",[104]],[[120414,120414],"mapped",[105]],[[120415,120415],"mapped",[106]],[[120416,120416],"mapped",[107]],[[120417,120417],"mapped",[108]],[[120418,120418],"mapped",[109]],[[120419,120419],"mapped",[110]],[[120420,120420],"mapped",[111]],[[120421,120421],"mapped",[112]],[[120422,120422],"mapped",[113]],[[120423,120423],"mapped",[114]],[[120424,120424],"mapped",[115]],[[120425,120425],"mapped",[116]],[[120426,120426],"mapped",[117]],[[120427,120427],"mapped",[118]],[[120428,120428],"mapped",[119]],[[120429,120429],"mapped",[120]],[[120430,120430],"mapped",[121]],[[120431,120431],"mapped",[122]],[[120432,120432],"mapped",[97]],[[120433,120433],"mapped",[98]],[[120434,120434],"mapped",[99]],[[120435,120435],"mapped",[100]],[[120436,120436],"mapped",[101]],[[120437,120437],"mapped",[102]],[[120438,120438],"mapped",[103]],[[120439,120439],"mapped",[104]],[[120440,120440],"mapped",[105]],[[120441,120441],"mapped",[106]],[[120442,120442],"mapped",[107]],[[120443,120443],"mapped",[108]],[[120444,120444],"mapped",[109]],[[120445,120445],"mapped",[110]],[[120446,120446],"mapped",[111]],[[120447,120447],"mapped",[112]],[[120448,120448],"mapped",[113]],[[120449,120449],"mapped",[114]],[[120450,120450],"mapped",[115]],[[120451,120451],"mapped",[116]],[[120452,120452],"mapped",[117]],[[120453,120453],"mapped",[118]],[[120454,120454],"mapped",[119]],[[120455,120455],"mapped",[120]],[[120456,120456],"mapped",[121]],[[120457,120457],"mapped",[122]],[[120458,120458],"mapped",[97]],[[120459,120459],"mapped",[98]],[[120460,120460],"mapped",[99]],[[120461,120461],"mapped",[100]],[[120462,120462],"mapped",[101]],[[120463,120463],"mapped",[102]],[[120464,120464],"mapped",[103]],[[120465,120465],"mapped",[104]],[[120466,120466],"mapped",[105]],[[120467,120467],"mapped",[106]],[[120468,120468],"mapped",[107]],[[120469,120469],"mapped",[108]],[[120470,120470],"mapped",[109]],[[120471,120471],"mapped",[110]],[[120472,120472],"mapped",[111]],[[120473,120473],"mapped",[112]],[[120474,120474],"mapped",[113]],[[120475,120475],"mapped",[114]],[[120476,120476],"mapped",[115]],[[120477,120477],"mapped",[116]],[[120478,120478],"mapped",[117]],[[120479,120479],"mapped",[118]],[[120480,120480],"mapped",[119]],[[120481,120481],"mapped",[120]],[[120482,120482],"mapped",[121]],[[120483,120483],"mapped",[122]],[[120484,120484],"mapped",[305]],[[120485,120485],"mapped",[567]],[[120486,120487],"disallowed"],[[120488,120488],"mapped",[945]],[[120489,120489],"mapped",[946]],[[120490,120490],"mapped",[947]],[[120491,120491],"mapped",[948]],[[120492,120492],"mapped",[949]],[[120493,120493],"mapped",[950]],[[120494,120494],"mapped",[951]],[[120495,120495],"mapped",[952]],[[120496,120496],"mapped",[953]],[[120497,120497],"mapped",[954]],[[120498,120498],"mapped",[955]],[[120499,120499],"mapped",[956]],[[120500,120500],"mapped",[957]],[[120501,120501],"mapped",[958]],[[120502,120502],"mapped",[959]],[[120503,120503],"mapped",[960]],[[120504,120504],"mapped",[961]],[[120505,120505],"mapped",[952]],[[120506,120506],"mapped",[963]],[[120507,120507],"mapped",[964]],[[120508,120508],"mapped",[965]],[[120509,120509],"mapped",[966]],[[120510,120510],"mapped",[967]],[[120511,120511],"mapped",[968]],[[120512,120512],"mapped",[969]],[[120513,120513],"mapped",[8711]],[[120514,120514],"mapped",[945]],[[120515,120515],"mapped",[946]],[[120516,120516],"mapped",[947]],[[120517,120517],"mapped",[948]],[[120518,120518],"mapped",[949]],[[120519,120519],"mapped",[950]],[[120520,120520],"mapped",[951]],[[120521,120521],"mapped",[952]],[[120522,120522],"mapped",[953]],[[120523,120523],"mapped",[954]],[[120524,120524],"mapped",[955]],[[120525,120525],"mapped",[956]],[[120526,120526],"mapped",[957]],[[120527,120527],"mapped",[958]],[[120528,120528],"mapped",[959]],[[120529,120529],"mapped",[960]],[[120530,120530],"mapped",[961]],[[120531,120532],"mapped",[963]],[[120533,120533],"mapped",[964]],[[120534,120534],"mapped",[965]],[[120535,120535],"mapped",[966]],[[120536,120536],"mapped",[967]],[[120537,120537],"mapped",[968]],[[120538,120538],"mapped",[969]],[[120539,120539],"mapped",[8706]],[[120540,120540],"mapped",[949]],[[120541,120541],"mapped",[952]],[[120542,120542],"mapped",[954]],[[120543,120543],"mapped",[966]],[[120544,120544],"mapped",[961]],[[120545,120545],"mapped",[960]],[[120546,120546],"mapped",[945]],[[120547,120547],"mapped",[946]],[[120548,120548],"mapped",[947]],[[120549,120549],"mapped",[948]],[[120550,120550],"mapped",[949]],[[120551,120551],"mapped",[950]],[[120552,120552],"mapped",[951]],[[120553,120553],"mapped",[952]],[[120554,120554],"mapped",[953]],[[120555,120555],"mapped",[954]],[[120556,120556],"mapped",[955]],[[120557,120557],"mapped",[956]],[[120558,120558],"mapped",[957]],[[120559,120559],"mapped",[958]],[[120560,120560],"mapped",[959]],[[120561,120561],"mapped",[960]],[[120562,120562],"mapped",[961]],[[120563,120563],"mapped",[952]],[[120564,120564],"mapped",[963]],[[120565,120565],"mapped",[964]],[[120566,120566],"mapped",[965]],[[120567,120567],"mapped",[966]],[[120568,120568],"mapped",[967]],[[120569,120569],"mapped",[968]],[[120570,120570],"mapped",[969]],[[120571,120571],"mapped",[8711]],[[120572,120572],"mapped",[945]],[[120573,120573],"mapped",[946]],[[120574,120574],"mapped",[947]],[[120575,120575],"mapped",[948]],[[120576,120576],"mapped",[949]],[[120577,120577],"mapped",[950]],[[120578,120578],"mapped",[951]],[[120579,120579],"mapped",[952]],[[120580,120580],"mapped",[953]],[[120581,120581],"mapped",[954]],[[120582,120582],"mapped",[955]],[[120583,120583],"mapped",[956]],[[120584,120584],"mapped",[957]],[[120585,120585],"mapped",[958]],[[120586,120586],"mapped",[959]],[[120587,120587],"mapped",[960]],[[120588,120588],"mapped",[961]],[[120589,120590],"mapped",[963]],[[120591,120591],"mapped",[964]],[[120592,120592],"mapped",[965]],[[120593,120593],"mapped",[966]],[[120594,120594],"mapped",[967]],[[120595,120595],"mapped",[968]],[[120596,120596],"mapped",[969]],[[120597,120597],"mapped",[8706]],[[120598,120598],"mapped",[949]],[[120599,120599],"mapped",[952]],[[120600,120600],"mapped",[954]],[[120601,120601],"mapped",[966]],[[120602,120602],"mapped",[961]],[[120603,120603],"mapped",[960]],[[120604,120604],"mapped",[945]],[[120605,120605],"mapped",[946]],[[120606,120606],"mapped",[947]],[[120607,120607],"mapped",[948]],[[120608,120608],"mapped",[949]],[[120609,120609],"mapped",[950]],[[120610,120610],"mapped",[951]],[[120611,120611],"mapped",[952]],[[120612,120612],"mapped",[953]],[[120613,120613],"mapped",[954]],[[120614,120614],"mapped",[955]],[[120615,120615],"mapped",[956]],[[120616,120616],"mapped",[957]],[[120617,120617],"mapped",[958]],[[120618,120618],"mapped",[959]],[[120619,120619],"mapped",[960]],[[120620,120620],"mapped",[961]],[[120621,120621],"mapped",[952]],[[120622,120622],"mapped",[963]],[[120623,120623],"mapped",[964]],[[120624,120624],"mapped",[965]],[[120625,120625],"mapped",[966]],[[120626,120626],"mapped",[967]],[[120627,120627],"mapped",[968]],[[120628,120628],"mapped",[969]],[[120629,120629],"mapped",[8711]],[[120630,120630],"mapped",[945]],[[120631,120631],"mapped",[946]],[[120632,120632],"mapped",[947]],[[120633,120633],"mapped",[948]],[[120634,120634],"mapped",[949]],[[120635,120635],"mapped",[950]],[[120636,120636],"mapped",[951]],[[120637,120637],"mapped",[952]],[[120638,120638],"mapped",[953]],[[120639,120639],"mapped",[954]],[[120640,120640],"mapped",[955]],[[120641,120641],"mapped",[956]],[[120642,120642],"mapped",[957]],[[120643,120643],"mapped",[958]],[[120644,120644],"mapped",[959]],[[120645,120645],"mapped",[960]],[[120646,120646],"mapped",[961]],[[120647,120648],"mapped",[963]],[[120649,120649],"mapped",[964]],[[120650,120650],"mapped",[965]],[[120651,120651],"mapped",[966]],[[120652,120652],"mapped",[967]],[[120653,120653],"mapped",[968]],[[120654,120654],"mapped",[969]],[[120655,120655],"mapped",[8706]],[[120656,120656],"mapped",[949]],[[120657,120657],"mapped",[952]],[[120658,120658],"mapped",[954]],[[120659,120659],"mapped",[966]],[[120660,120660],"mapped",[961]],[[120661,120661],"mapped",[960]],[[120662,120662],"mapped",[945]],[[120663,120663],"mapped",[946]],[[120664,120664],"mapped",[947]],[[120665,120665],"mapped",[948]],[[120666,120666],"mapped",[949]],[[120667,120667],"mapped",[950]],[[120668,120668],"mapped",[951]],[[120669,120669],"mapped",[952]],[[120670,120670],"mapped",[953]],[[120671,120671],"mapped",[954]],[[120672,120672],"mapped",[955]],[[120673,120673],"mapped",[956]],[[120674,120674],"mapped",[957]],[[120675,120675],"mapped",[958]],[[120676,120676],"mapped",[959]],[[120677,120677],"mapped",[960]],[[120678,120678],"mapped",[961]],[[120679,120679],"mapped",[952]],[[120680,120680],"mapped",[963]],[[120681,120681],"mapped",[964]],[[120682,120682],"mapped",[965]],[[120683,120683],"mapped",[966]],[[120684,120684],"mapped",[967]],[[120685,120685],"mapped",[968]],[[120686,120686],"mapped",[969]],[[120687,120687],"mapped",[8711]],[[120688,120688],"mapped",[945]],[[120689,120689],"mapped",[946]],[[120690,120690],"mapped",[947]],[[120691,120691],"mapped",[948]],[[120692,120692],"mapped",[949]],[[120693,120693],"mapped",[950]],[[120694,120694],"mapped",[951]],[[120695,120695],"mapped",[952]],[[120696,120696],"mapped",[953]],[[120697,120697],"mapped",[954]],[[120698,120698],"mapped",[955]],[[120699,120699],"mapped",[956]],[[120700,120700],"mapped",[957]],[[120701,120701],"mapped",[958]],[[120702,120702],"mapped",[959]],[[120703,120703],"mapped",[960]],[[120704,120704],"mapped",[961]],[[120705,120706],"mapped",[963]],[[120707,120707],"mapped",[964]],[[120708,120708],"mapped",[965]],[[120709,120709],"mapped",[966]],[[120710,120710],"mapped",[967]],[[120711,120711],"mapped",[968]],[[120712,120712],"mapped",[969]],[[120713,120713],"mapped",[8706]],[[120714,120714],"mapped",[949]],[[120715,120715],"mapped",[952]],[[120716,120716],"mapped",[954]],[[120717,120717],"mapped",[966]],[[120718,120718],"mapped",[961]],[[120719,120719],"mapped",[960]],[[120720,120720],"mapped",[945]],[[120721,120721],"mapped",[946]],[[120722,120722],"mapped",[947]],[[120723,120723],"mapped",[948]],[[120724,120724],"mapped",[949]],[[120725,120725],"mapped",[950]],[[120726,120726],"mapped",[951]],[[120727,120727],"mapped",[952]],[[120728,120728],"mapped",[953]],[[120729,120729],"mapped",[954]],[[120730,120730],"mapped",[955]],[[120731,120731],"mapped",[956]],[[120732,120732],"mapped",[957]],[[120733,120733],"mapped",[958]],[[120734,120734],"mapped",[959]],[[120735,120735],"mapped",[960]],[[120736,120736],"mapped",[961]],[[120737,120737],"mapped",[952]],[[120738,120738],"mapped",[963]],[[120739,120739],"mapped",[964]],[[120740,120740],"mapped",[965]],[[120741,120741],"mapped",[966]],[[120742,120742],"mapped",[967]],[[120743,120743],"mapped",[968]],[[120744,120744],"mapped",[969]],[[120745,120745],"mapped",[8711]],[[120746,120746],"mapped",[945]],[[120747,120747],"mapped",[946]],[[120748,120748],"mapped",[947]],[[120749,120749],"mapped",[948]],[[120750,120750],"mapped",[949]],[[120751,120751],"mapped",[950]],[[120752,120752],"mapped",[951]],[[120753,120753],"mapped",[952]],[[120754,120754],"mapped",[953]],[[120755,120755],"mapped",[954]],[[120756,120756],"mapped",[955]],[[120757,120757],"mapped",[956]],[[120758,120758],"mapped",[957]],[[120759,120759],"mapped",[958]],[[120760,120760],"mapped",[959]],[[120761,120761],"mapped",[960]],[[120762,120762],"mapped",[961]],[[120763,120764],"mapped",[963]],[[120765,120765],"mapped",[964]],[[120766,120766],"mapped",[965]],[[120767,120767],"mapped",[966]],[[120768,120768],"mapped",[967]],[[120769,120769],"mapped",[968]],[[120770,120770],"mapped",[969]],[[120771,120771],"mapped",[8706]],[[120772,120772],"mapped",[949]],[[120773,120773],"mapped",[952]],[[120774,120774],"mapped",[954]],[[120775,120775],"mapped",[966]],[[120776,120776],"mapped",[961]],[[120777,120777],"mapped",[960]],[[120778,120779],"mapped",[989]],[[120780,120781],"disallowed"],[[120782,120782],"mapped",[48]],[[120783,120783],"mapped",[49]],[[120784,120784],"mapped",[50]],[[120785,120785],"mapped",[51]],[[120786,120786],"mapped",[52]],[[120787,120787],"mapped",[53]],[[120788,120788],"mapped",[54]],[[120789,120789],"mapped",[55]],[[120790,120790],"mapped",[56]],[[120791,120791],"mapped",[57]],[[120792,120792],"mapped",[48]],[[120793,120793],"mapped",[49]],[[120794,120794],"mapped",[50]],[[120795,120795],"mapped",[51]],[[120796,120796],"mapped",[52]],[[120797,120797],"mapped",[53]],[[120798,120798],"mapped",[54]],[[120799,120799],"mapped",[55]],[[120800,120800],"mapped",[56]],[[120801,120801],"mapped",[57]],[[120802,120802],"mapped",[48]],[[120803,120803],"mapped",[49]],[[120804,120804],"mapped",[50]],[[120805,120805],"mapped",[51]],[[120806,120806],"mapped",[52]],[[120807,120807],"mapped",[53]],[[120808,120808],"mapped",[54]],[[120809,120809],"mapped",[55]],[[120810,120810],"mapped",[56]],[[120811,120811],"mapped",[57]],[[120812,120812],"mapped",[48]],[[120813,120813],"mapped",[49]],[[120814,120814],"mapped",[50]],[[120815,120815],"mapped",[51]],[[120816,120816],"mapped",[52]],[[120817,120817],"mapped",[53]],[[120818,120818],"mapped",[54]],[[120819,120819],"mapped",[55]],[[120820,120820],"mapped",[56]],[[120821,120821],"mapped",[57]],[[120822,120822],"mapped",[48]],[[120823,120823],"mapped",[49]],[[120824,120824],"mapped",[50]],[[120825,120825],"mapped",[51]],[[120826,120826],"mapped",[52]],[[120827,120827],"mapped",[53]],[[120828,120828],"mapped",[54]],[[120829,120829],"mapped",[55]],[[120830,120830],"mapped",[56]],[[120831,120831],"mapped",[57]],[[120832,121343],"valid",[],"NV8"],[[121344,121398],"valid"],[[121399,121402],"valid",[],"NV8"],[[121403,121452],"valid"],[[121453,121460],"valid",[],"NV8"],[[121461,121461],"valid"],[[121462,121475],"valid",[],"NV8"],[[121476,121476],"valid"],[[121477,121483],"valid",[],"NV8"],[[121484,121498],"disallowed"],[[121499,121503],"valid"],[[121504,121504],"disallowed"],[[121505,121519],"valid"],[[121520,124927],"disallowed"],[[124928,125124],"valid"],[[125125,125126],"disallowed"],[[125127,125135],"valid",[],"NV8"],[[125136,125142],"valid"],[[125143,126463],"disallowed"],[[126464,126464],"mapped",[1575]],[[126465,126465],"mapped",[1576]],[[126466,126466],"mapped",[1580]],[[126467,126467],"mapped",[1583]],[[126468,126468],"disallowed"],[[126469,126469],"mapped",[1608]],[[126470,126470],"mapped",[1586]],[[126471,126471],"mapped",[1581]],[[126472,126472],"mapped",[1591]],[[126473,126473],"mapped",[1610]],[[126474,126474],"mapped",[1603]],[[126475,126475],"mapped",[1604]],[[126476,126476],"mapped",[1605]],[[126477,126477],"mapped",[1606]],[[126478,126478],"mapped",[1587]],[[126479,126479],"mapped",[1593]],[[126480,126480],"mapped",[1601]],[[126481,126481],"mapped",[1589]],[[126482,126482],"mapped",[1602]],[[126483,126483],"mapped",[1585]],[[126484,126484],"mapped",[1588]],[[126485,126485],"mapped",[1578]],[[126486,126486],"mapped",[1579]],[[126487,126487],"mapped",[1582]],[[126488,126488],"mapped",[1584]],[[126489,126489],"mapped",[1590]],[[126490,126490],"mapped",[1592]],[[126491,126491],"mapped",[1594]],[[126492,126492],"mapped",[1646]],[[126493,126493],"mapped",[1722]],[[126494,126494],"mapped",[1697]],[[126495,126495],"mapped",[1647]],[[126496,126496],"disallowed"],[[126497,126497],"mapped",[1576]],[[126498,126498],"mapped",[1580]],[[126499,126499],"disallowed"],[[126500,126500],"mapped",[1607]],[[126501,126502],"disallowed"],[[126503,126503],"mapped",[1581]],[[126504,126504],"disallowed"],[[126505,126505],"mapped",[1610]],[[126506,126506],"mapped",[1603]],[[126507,126507],"mapped",[1604]],[[126508,126508],"mapped",[1605]],[[126509,126509],"mapped",[1606]],[[126510,126510],"mapped",[1587]],[[126511,126511],"mapped",[1593]],[[126512,126512],"mapped",[1601]],[[126513,126513],"mapped",[1589]],[[126514,126514],"mapped",[1602]],[[126515,126515],"disallowed"],[[126516,126516],"mapped",[1588]],[[126517,126517],"mapped",[1578]],[[126518,126518],"mapped",[1579]],[[126519,126519],"mapped",[1582]],[[126520,126520],"disallowed"],[[126521,126521],"mapped",[1590]],[[126522,126522],"disallowed"],[[126523,126523],"mapped",[1594]],[[126524,126529],"disallowed"],[[126530,126530],"mapped",[1580]],[[126531,126534],"disallowed"],[[126535,126535],"mapped",[1581]],[[126536,126536],"disallowed"],[[126537,126537],"mapped",[1610]],[[126538,126538],"disallowed"],[[126539,126539],"mapped",[1604]],[[126540,126540],"disallowed"],[[126541,126541],"mapped",[1606]],[[126542,126542],"mapped",[1587]],[[126543,126543],"mapped",[1593]],[[126544,126544],"disallowed"],[[126545,126545],"mapped",[1589]],[[126546,126546],"mapped",[1602]],[[126547,126547],"disallowed"],[[126548,126548],"mapped",[1588]],[[126549,126550],"disallowed"],[[126551,126551],"mapped",[1582]],[[126552,126552],"disallowed"],[[126553,126553],"mapped",[1590]],[[126554,126554],"disallowed"],[[126555,126555],"mapped",[1594]],[[126556,126556],"disallowed"],[[126557,126557],"mapped",[1722]],[[126558,126558],"disallowed"],[[126559,126559],"mapped",[1647]],[[126560,126560],"disallowed"],[[126561,126561],"mapped",[1576]],[[126562,126562],"mapped",[1580]],[[126563,126563],"disallowed"],[[126564,126564],"mapped",[1607]],[[126565,126566],"disallowed"],[[126567,126567],"mapped",[1581]],[[126568,126568],"mapped",[1591]],[[126569,126569],"mapped",[1610]],[[126570,126570],"mapped",[1603]],[[126571,126571],"disallowed"],[[126572,126572],"mapped",[1605]],[[126573,126573],"mapped",[1606]],[[126574,126574],"mapped",[1587]],[[126575,126575],"mapped",[1593]],[[126576,126576],"mapped",[1601]],[[126577,126577],"mapped",[1589]],[[126578,126578],"mapped",[1602]],[[126579,126579],"disallowed"],[[126580,126580],"mapped",[1588]],[[126581,126581],"mapped",[1578]],[[126582,126582],"mapped",[1579]],[[126583,126583],"mapped",[1582]],[[126584,126584],"disallowed"],[[126585,126585],"mapped",[1590]],[[126586,126586],"mapped",[1592]],[[126587,126587],"mapped",[1594]],[[126588,126588],"mapped",[1646]],[[126589,126589],"disallowed"],[[126590,126590],"mapped",[1697]],[[126591,126591],"disallowed"],[[126592,126592],"mapped",[1575]],[[126593,126593],"mapped",[1576]],[[126594,126594],"mapped",[1580]],[[126595,126595],"mapped",[1583]],[[126596,126596],"mapped",[1607]],[[126597,126597],"mapped",[1608]],[[126598,126598],"mapped",[1586]],[[126599,126599],"mapped",[1581]],[[126600,126600],"mapped",[1591]],[[126601,126601],"mapped",[1610]],[[126602,126602],"disallowed"],[[126603,126603],"mapped",[1604]],[[126604,126604],"mapped",[1605]],[[126605,126605],"mapped",[1606]],[[126606,126606],"mapped",[1587]],[[126607,126607],"mapped",[1593]],[[126608,126608],"mapped",[1601]],[[126609,126609],"mapped",[1589]],[[126610,126610],"mapped",[1602]],[[126611,126611],"mapped",[1585]],[[126612,126612],"mapped",[1588]],[[126613,126613],"mapped",[1578]],[[126614,126614],"mapped",[1579]],[[126615,126615],"mapped",[1582]],[[126616,126616],"mapped",[1584]],[[126617,126617],"mapped",[1590]],[[126618,126618],"mapped",[1592]],[[126619,126619],"mapped",[1594]],[[126620,126624],"disallowed"],[[126625,126625],"mapped",[1576]],[[126626,126626],"mapped",[1580]],[[126627,126627],"mapped",[1583]],[[126628,126628],"disallowed"],[[126629,126629],"mapped",[1608]],[[126630,126630],"mapped",[1586]],[[126631,126631],"mapped",[1581]],[[126632,126632],"mapped",[1591]],[[126633,126633],"mapped",[1610]],[[126634,126634],"disallowed"],[[126635,126635],"mapped",[1604]],[[126636,126636],"mapped",[1605]],[[126637,126637],"mapped",[1606]],[[126638,126638],"mapped",[1587]],[[126639,126639],"mapped",[1593]],[[126640,126640],"mapped",[1601]],[[126641,126641],"mapped",[1589]],[[126642,126642],"mapped",[1602]],[[126643,126643],"mapped",[1585]],[[126644,126644],"mapped",[1588]],[[126645,126645],"mapped",[1578]],[[126646,126646],"mapped",[1579]],[[126647,126647],"mapped",[1582]],[[126648,126648],"mapped",[1584]],[[126649,126649],"mapped",[1590]],[[126650,126650],"mapped",[1592]],[[126651,126651],"mapped",[1594]],[[126652,126703],"disallowed"],[[126704,126705],"valid",[],"NV8"],[[126706,126975],"disallowed"],[[126976,127019],"valid",[],"NV8"],[[127020,127023],"disallowed"],[[127024,127123],"valid",[],"NV8"],[[127124,127135],"disallowed"],[[127136,127150],"valid",[],"NV8"],[[127151,127152],"disallowed"],[[127153,127166],"valid",[],"NV8"],[[127167,127167],"valid",[],"NV8"],[[127168,127168],"disallowed"],[[127169,127183],"valid",[],"NV8"],[[127184,127184],"disallowed"],[[127185,127199],"valid",[],"NV8"],[[127200,127221],"valid",[],"NV8"],[[127222,127231],"disallowed"],[[127232,127232],"disallowed"],[[127233,127233],"disallowed_STD3_mapped",[48,44]],[[127234,127234],"disallowed_STD3_mapped",[49,44]],[[127235,127235],"disallowed_STD3_mapped",[50,44]],[[127236,127236],"disallowed_STD3_mapped",[51,44]],[[127237,127237],"disallowed_STD3_mapped",[52,44]],[[127238,127238],"disallowed_STD3_mapped",[53,44]],[[127239,127239],"disallowed_STD3_mapped",[54,44]],[[127240,127240],"disallowed_STD3_mapped",[55,44]],[[127241,127241],"disallowed_STD3_mapped",[56,44]],[[127242,127242],"disallowed_STD3_mapped",[57,44]],[[127243,127244],"valid",[],"NV8"],[[127245,127247],"disallowed"],[[127248,127248],"disallowed_STD3_mapped",[40,97,41]],[[127249,127249],"disallowed_STD3_mapped",[40,98,41]],[[127250,127250],"disallowed_STD3_mapped",[40,99,41]],[[127251,127251],"disallowed_STD3_mapped",[40,100,41]],[[127252,127252],"disallowed_STD3_mapped",[40,101,41]],[[127253,127253],"disallowed_STD3_mapped",[40,102,41]],[[127254,127254],"disallowed_STD3_mapped",[40,103,41]],[[127255,127255],"disallowed_STD3_mapped",[40,104,41]],[[127256,127256],"disallowed_STD3_mapped",[40,105,41]],[[127257,127257],"disallowed_STD3_mapped",[40,106,41]],[[127258,127258],"disallowed_STD3_mapped",[40,107,41]],[[127259,127259],"disallowed_STD3_mapped",[40,108,41]],[[127260,127260],"disallowed_STD3_mapped",[40,109,41]],[[127261,127261],"disallowed_STD3_mapped",[40,110,41]],[[127262,127262],"disallowed_STD3_mapped",[40,111,41]],[[127263,127263],"disallowed_STD3_mapped",[40,112,41]],[[127264,127264],"disallowed_STD3_mapped",[40,113,41]],[[127265,127265],"disallowed_STD3_mapped",[40,114,41]],[[127266,127266],"disallowed_STD3_mapped",[40,115,41]],[[127267,127267],"disallowed_STD3_mapped",[40,116,41]],[[127268,127268],"disallowed_STD3_mapped",[40,117,41]],[[127269,127269],"disallowed_STD3_mapped",[40,118,41]],[[127270,127270],"disallowed_STD3_mapped",[40,119,41]],[[127271,127271],"disallowed_STD3_mapped",[40,120,41]],[[127272,127272],"disallowed_STD3_mapped",[40,121,41]],[[127273,127273],"disallowed_STD3_mapped",[40,122,41]],[[127274,127274],"mapped",[12308,115,12309]],[[127275,127275],"mapped",[99]],[[127276,127276],"mapped",[114]],[[127277,127277],"mapped",[99,100]],[[127278,127278],"mapped",[119,122]],[[127279,127279],"disallowed"],[[127280,127280],"mapped",[97]],[[127281,127281],"mapped",[98]],[[127282,127282],"mapped",[99]],[[127283,127283],"mapped",[100]],[[127284,127284],"mapped",[101]],[[127285,127285],"mapped",[102]],[[127286,127286],"mapped",[103]],[[127287,127287],"mapped",[104]],[[127288,127288],"mapped",[105]],[[127289,127289],"mapped",[106]],[[127290,127290],"mapped",[107]],[[127291,127291],"mapped",[108]],[[127292,127292],"mapped",[109]],[[127293,127293],"mapped",[110]],[[127294,127294],"mapped",[111]],[[127295,127295],"mapped",[112]],[[127296,127296],"mapped",[113]],[[127297,127297],"mapped",[114]],[[127298,127298],"mapped",[115]],[[127299,127299],"mapped",[116]],[[127300,127300],"mapped",[117]],[[127301,127301],"mapped",[118]],[[127302,127302],"mapped",[119]],[[127303,127303],"mapped",[120]],[[127304,127304],"mapped",[121]],[[127305,127305],"mapped",[122]],[[127306,127306],"mapped",[104,118]],[[127307,127307],"mapped",[109,118]],[[127308,127308],"mapped",[115,100]],[[127309,127309],"mapped",[115,115]],[[127310,127310],"mapped",[112,112,118]],[[127311,127311],"mapped",[119,99]],[[127312,127318],"valid",[],"NV8"],[[127319,127319],"valid",[],"NV8"],[[127320,127326],"valid",[],"NV8"],[[127327,127327],"valid",[],"NV8"],[[127328,127337],"valid",[],"NV8"],[[127338,127338],"mapped",[109,99]],[[127339,127339],"mapped",[109,100]],[[127340,127343],"disallowed"],[[127344,127352],"valid",[],"NV8"],[[127353,127353],"valid",[],"NV8"],[[127354,127354],"valid",[],"NV8"],[[127355,127356],"valid",[],"NV8"],[[127357,127358],"valid",[],"NV8"],[[127359,127359],"valid",[],"NV8"],[[127360,127369],"valid",[],"NV8"],[[127370,127373],"valid",[],"NV8"],[[127374,127375],"valid",[],"NV8"],[[127376,127376],"mapped",[100,106]],[[127377,127386],"valid",[],"NV8"],[[127387,127461],"disallowed"],[[127462,127487],"valid",[],"NV8"],[[127488,127488],"mapped",[12411,12363]],[[127489,127489],"mapped",[12467,12467]],[[127490,127490],"mapped",[12469]],[[127491,127503],"disallowed"],[[127504,127504],"mapped",[25163]],[[127505,127505],"mapped",[23383]],[[127506,127506],"mapped",[21452]],[[127507,127507],"mapped",[12487]],[[127508,127508],"mapped",[20108]],[[127509,127509],"mapped",[22810]],[[127510,127510],"mapped",[35299]],[[127511,127511],"mapped",[22825]],[[127512,127512],"mapped",[20132]],[[127513,127513],"mapped",[26144]],[[127514,127514],"mapped",[28961]],[[127515,127515],"mapped",[26009]],[[127516,127516],"mapped",[21069]],[[127517,127517],"mapped",[24460]],[[127518,127518],"mapped",[20877]],[[127519,127519],"mapped",[26032]],[[127520,127520],"mapped",[21021]],[[127521,127521],"mapped",[32066]],[[127522,127522],"mapped",[29983]],[[127523,127523],"mapped",[36009]],[[127524,127524],"mapped",[22768]],[[127525,127525],"mapped",[21561]],[[127526,127526],"mapped",[28436]],[[127527,127527],"mapped",[25237]],[[127528,127528],"mapped",[25429]],[[127529,127529],"mapped",[19968]],[[127530,127530],"mapped",[19977]],[[127531,127531],"mapped",[36938]],[[127532,127532],"mapped",[24038]],[[127533,127533],"mapped",[20013]],[[127534,127534],"mapped",[21491]],[[127535,127535],"mapped",[25351]],[[127536,127536],"mapped",[36208]],[[127537,127537],"mapped",[25171]],[[127538,127538],"mapped",[31105]],[[127539,127539],"mapped",[31354]],[[127540,127540],"mapped",[21512]],[[127541,127541],"mapped",[28288]],[[127542,127542],"mapped",[26377]],[[127543,127543],"mapped",[26376]],[[127544,127544],"mapped",[30003]],[[127545,127545],"mapped",[21106]],[[127546,127546],"mapped",[21942]],[[127547,127551],"disallowed"],[[127552,127552],"mapped",[12308,26412,12309]],[[127553,127553],"mapped",[12308,19977,12309]],[[127554,127554],"mapped",[12308,20108,12309]],[[127555,127555],"mapped",[12308,23433,12309]],[[127556,127556],"mapped",[12308,28857,12309]],[[127557,127557],"mapped",[12308,25171,12309]],[[127558,127558],"mapped",[12308,30423,12309]],[[127559,127559],"mapped",[12308,21213,12309]],[[127560,127560],"mapped",[12308,25943,12309]],[[127561,127567],"disallowed"],[[127568,127568],"mapped",[24471]],[[127569,127569],"mapped",[21487]],[[127570,127743],"disallowed"],[[127744,127776],"valid",[],"NV8"],[[127777,127788],"valid",[],"NV8"],[[127789,127791],"valid",[],"NV8"],[[127792,127797],"valid",[],"NV8"],[[127798,127798],"valid",[],"NV8"],[[127799,127868],"valid",[],"NV8"],[[127869,127869],"valid",[],"NV8"],[[127870,127871],"valid",[],"NV8"],[[127872,127891],"valid",[],"NV8"],[[127892,127903],"valid",[],"NV8"],[[127904,127940],"valid",[],"NV8"],[[127941,127941],"valid",[],"NV8"],[[127942,127946],"valid",[],"NV8"],[[127947,127950],"valid",[],"NV8"],[[127951,127955],"valid",[],"NV8"],[[127956,127967],"valid",[],"NV8"],[[127968,127984],"valid",[],"NV8"],[[127985,127991],"valid",[],"NV8"],[[127992,127999],"valid",[],"NV8"],[[128e3,128062],"valid",[],"NV8"],[[128063,128063],"valid",[],"NV8"],[[128064,128064],"valid",[],"NV8"],[[128065,128065],"valid",[],"NV8"],[[128066,128247],"valid",[],"NV8"],[[128248,128248],"valid",[],"NV8"],[[128249,128252],"valid",[],"NV8"],[[128253,128254],"valid",[],"NV8"],[[128255,128255],"valid",[],"NV8"],[[128256,128317],"valid",[],"NV8"],[[128318,128319],"valid",[],"NV8"],[[128320,128323],"valid",[],"NV8"],[[128324,128330],"valid",[],"NV8"],[[128331,128335],"valid",[],"NV8"],[[128336,128359],"valid",[],"NV8"],[[128360,128377],"valid",[],"NV8"],[[128378,128378],"disallowed"],[[128379,128419],"valid",[],"NV8"],[[128420,128420],"disallowed"],[[128421,128506],"valid",[],"NV8"],[[128507,128511],"valid",[],"NV8"],[[128512,128512],"valid",[],"NV8"],[[128513,128528],"valid",[],"NV8"],[[128529,128529],"valid",[],"NV8"],[[128530,128532],"valid",[],"NV8"],[[128533,128533],"valid",[],"NV8"],[[128534,128534],"valid",[],"NV8"],[[128535,128535],"valid",[],"NV8"],[[128536,128536],"valid",[],"NV8"],[[128537,128537],"valid",[],"NV8"],[[128538,128538],"valid",[],"NV8"],[[128539,128539],"valid",[],"NV8"],[[128540,128542],"valid",[],"NV8"],[[128543,128543],"valid",[],"NV8"],[[128544,128549],"valid",[],"NV8"],[[128550,128551],"valid",[],"NV8"],[[128552,128555],"valid",[],"NV8"],[[128556,128556],"valid",[],"NV8"],[[128557,128557],"valid",[],"NV8"],[[128558,128559],"valid",[],"NV8"],[[128560,128563],"valid",[],"NV8"],[[128564,128564],"valid",[],"NV8"],[[128565,128576],"valid",[],"NV8"],[[128577,128578],"valid",[],"NV8"],[[128579,128580],"valid",[],"NV8"],[[128581,128591],"valid",[],"NV8"],[[128592,128639],"valid",[],"NV8"],[[128640,128709],"valid",[],"NV8"],[[128710,128719],"valid",[],"NV8"],[[128720,128720],"valid",[],"NV8"],[[128721,128735],"disallowed"],[[128736,128748],"valid",[],"NV8"],[[128749,128751],"disallowed"],[[128752,128755],"valid",[],"NV8"],[[128756,128767],"disallowed"],[[128768,128883],"valid",[],"NV8"],[[128884,128895],"disallowed"],[[128896,128980],"valid",[],"NV8"],[[128981,129023],"disallowed"],[[129024,129035],"valid",[],"NV8"],[[129036,129039],"disallowed"],[[129040,129095],"valid",[],"NV8"],[[129096,129103],"disallowed"],[[129104,129113],"valid",[],"NV8"],[[129114,129119],"disallowed"],[[129120,129159],"valid",[],"NV8"],[[129160,129167],"disallowed"],[[129168,129197],"valid",[],"NV8"],[[129198,129295],"disallowed"],[[129296,129304],"valid",[],"NV8"],[[129305,129407],"disallowed"],[[129408,129412],"valid",[],"NV8"],[[129413,129471],"disallowed"],[[129472,129472],"valid",[],"NV8"],[[129473,131069],"disallowed"],[[131070,131071],"disallowed"],[[131072,173782],"valid"],[[173783,173823],"disallowed"],[[173824,177972],"valid"],[[177973,177983],"disallowed"],[[177984,178205],"valid"],[[178206,178207],"disallowed"],[[178208,183969],"valid"],[[183970,194559],"disallowed"],[[194560,194560],"mapped",[20029]],[[194561,194561],"mapped",[20024]],[[194562,194562],"mapped",[20033]],[[194563,194563],"mapped",[131362]],[[194564,194564],"mapped",[20320]],[[194565,194565],"mapped",[20398]],[[194566,194566],"mapped",[20411]],[[194567,194567],"mapped",[20482]],[[194568,194568],"mapped",[20602]],[[194569,194569],"mapped",[20633]],[[194570,194570],"mapped",[20711]],[[194571,194571],"mapped",[20687]],[[194572,194572],"mapped",[13470]],[[194573,194573],"mapped",[132666]],[[194574,194574],"mapped",[20813]],[[194575,194575],"mapped",[20820]],[[194576,194576],"mapped",[20836]],[[194577,194577],"mapped",[20855]],[[194578,194578],"mapped",[132380]],[[194579,194579],"mapped",[13497]],[[194580,194580],"mapped",[20839]],[[194581,194581],"mapped",[20877]],[[194582,194582],"mapped",[132427]],[[194583,194583],"mapped",[20887]],[[194584,194584],"mapped",[20900]],[[194585,194585],"mapped",[20172]],[[194586,194586],"mapped",[20908]],[[194587,194587],"mapped",[20917]],[[194588,194588],"mapped",[168415]],[[194589,194589],"mapped",[20981]],[[194590,194590],"mapped",[20995]],[[194591,194591],"mapped",[13535]],[[194592,194592],"mapped",[21051]],[[194593,194593],"mapped",[21062]],[[194594,194594],"mapped",[21106]],[[194595,194595],"mapped",[21111]],[[194596,194596],"mapped",[13589]],[[194597,194597],"mapped",[21191]],[[194598,194598],"mapped",[21193]],[[194599,194599],"mapped",[21220]],[[194600,194600],"mapped",[21242]],[[194601,194601],"mapped",[21253]],[[194602,194602],"mapped",[21254]],[[194603,194603],"mapped",[21271]],[[194604,194604],"mapped",[21321]],[[194605,194605],"mapped",[21329]],[[194606,194606],"mapped",[21338]],[[194607,194607],"mapped",[21363]],[[194608,194608],"mapped",[21373]],[[194609,194611],"mapped",[21375]],[[194612,194612],"mapped",[133676]],[[194613,194613],"mapped",[28784]],[[194614,194614],"mapped",[21450]],[[194615,194615],"mapped",[21471]],[[194616,194616],"mapped",[133987]],[[194617,194617],"mapped",[21483]],[[194618,194618],"mapped",[21489]],[[194619,194619],"mapped",[21510]],[[194620,194620],"mapped",[21662]],[[194621,194621],"mapped",[21560]],[[194622,194622],"mapped",[21576]],[[194623,194623],"mapped",[21608]],[[194624,194624],"mapped",[21666]],[[194625,194625],"mapped",[21750]],[[194626,194626],"mapped",[21776]],[[194627,194627],"mapped",[21843]],[[194628,194628],"mapped",[21859]],[[194629,194630],"mapped",[21892]],[[194631,194631],"mapped",[21913]],[[194632,194632],"mapped",[21931]],[[194633,194633],"mapped",[21939]],[[194634,194634],"mapped",[21954]],[[194635,194635],"mapped",[22294]],[[194636,194636],"mapped",[22022]],[[194637,194637],"mapped",[22295]],[[194638,194638],"mapped",[22097]],[[194639,194639],"mapped",[22132]],[[194640,194640],"mapped",[20999]],[[194641,194641],"mapped",[22766]],[[194642,194642],"mapped",[22478]],[[194643,194643],"mapped",[22516]],[[194644,194644],"mapped",[22541]],[[194645,194645],"mapped",[22411]],[[194646,194646],"mapped",[22578]],[[194647,194647],"mapped",[22577]],[[194648,194648],"mapped",[22700]],[[194649,194649],"mapped",[136420]],[[194650,194650],"mapped",[22770]],[[194651,194651],"mapped",[22775]],[[194652,194652],"mapped",[22790]],[[194653,194653],"mapped",[22810]],[[194654,194654],"mapped",[22818]],[[194655,194655],"mapped",[22882]],[[194656,194656],"mapped",[136872]],[[194657,194657],"mapped",[136938]],[[194658,194658],"mapped",[23020]],[[194659,194659],"mapped",[23067]],[[194660,194660],"mapped",[23079]],[[194661,194661],"mapped",[23e3]],[[194662,194662],"mapped",[23142]],[[194663,194663],"mapped",[14062]],[[194664,194664],"disallowed"],[[194665,194665],"mapped",[23304]],[[194666,194667],"mapped",[23358]],[[194668,194668],"mapped",[137672]],[[194669,194669],"mapped",[23491]],[[194670,194670],"mapped",[23512]],[[194671,194671],"mapped",[23527]],[[194672,194672],"mapped",[23539]],[[194673,194673],"mapped",[138008]],[[194674,194674],"mapped",[23551]],[[194675,194675],"mapped",[23558]],[[194676,194676],"disallowed"],[[194677,194677],"mapped",[23586]],[[194678,194678],"mapped",[14209]],[[194679,194679],"mapped",[23648]],[[194680,194680],"mapped",[23662]],[[194681,194681],"mapped",[23744]],[[194682,194682],"mapped",[23693]],[[194683,194683],"mapped",[138724]],[[194684,194684],"mapped",[23875]],[[194685,194685],"mapped",[138726]],[[194686,194686],"mapped",[23918]],[[194687,194687],"mapped",[23915]],[[194688,194688],"mapped",[23932]],[[194689,194689],"mapped",[24033]],[[194690,194690],"mapped",[24034]],[[194691,194691],"mapped",[14383]],[[194692,194692],"mapped",[24061]],[[194693,194693],"mapped",[24104]],[[194694,194694],"mapped",[24125]],[[194695,194695],"mapped",[24169]],[[194696,194696],"mapped",[14434]],[[194697,194697],"mapped",[139651]],[[194698,194698],"mapped",[14460]],[[194699,194699],"mapped",[24240]],[[194700,194700],"mapped",[24243]],[[194701,194701],"mapped",[24246]],[[194702,194702],"mapped",[24266]],[[194703,194703],"mapped",[172946]],[[194704,194704],"mapped",[24318]],[[194705,194706],"mapped",[140081]],[[194707,194707],"mapped",[33281]],[[194708,194709],"mapped",[24354]],[[194710,194710],"mapped",[14535]],[[194711,194711],"mapped",[144056]],[[194712,194712],"mapped",[156122]],[[194713,194713],"mapped",[24418]],[[194714,194714],"mapped",[24427]],[[194715,194715],"mapped",[14563]],[[194716,194716],"mapped",[24474]],[[194717,194717],"mapped",[24525]],[[194718,194718],"mapped",[24535]],[[194719,194719],"mapped",[24569]],[[194720,194720],"mapped",[24705]],[[194721,194721],"mapped",[14650]],[[194722,194722],"mapped",[14620]],[[194723,194723],"mapped",[24724]],[[194724,194724],"mapped",[141012]],[[194725,194725],"mapped",[24775]],[[194726,194726],"mapped",[24904]],[[194727,194727],"mapped",[24908]],[[194728,194728],"mapped",[24910]],[[194729,194729],"mapped",[24908]],[[194730,194730],"mapped",[24954]],[[194731,194731],"mapped",[24974]],[[194732,194732],"mapped",[25010]],[[194733,194733],"mapped",[24996]],[[194734,194734],"mapped",[25007]],[[194735,194735],"mapped",[25054]],[[194736,194736],"mapped",[25074]],[[194737,194737],"mapped",[25078]],[[194738,194738],"mapped",[25104]],[[194739,194739],"mapped",[25115]],[[194740,194740],"mapped",[25181]],[[194741,194741],"mapped",[25265]],[[194742,194742],"mapped",[25300]],[[194743,194743],"mapped",[25424]],[[194744,194744],"mapped",[142092]],[[194745,194745],"mapped",[25405]],[[194746,194746],"mapped",[25340]],[[194747,194747],"mapped",[25448]],[[194748,194748],"mapped",[25475]],[[194749,194749],"mapped",[25572]],[[194750,194750],"mapped",[142321]],[[194751,194751],"mapped",[25634]],[[194752,194752],"mapped",[25541]],[[194753,194753],"mapped",[25513]],[[194754,194754],"mapped",[14894]],[[194755,194755],"mapped",[25705]],[[194756,194756],"mapped",[25726]],[[194757,194757],"mapped",[25757]],[[194758,194758],"mapped",[25719]],[[194759,194759],"mapped",[14956]],[[194760,194760],"mapped",[25935]],[[194761,194761],"mapped",[25964]],[[194762,194762],"mapped",[143370]],[[194763,194763],"mapped",[26083]],[[194764,194764],"mapped",[26360]],[[194765,194765],"mapped",[26185]],[[194766,194766],"mapped",[15129]],[[194767,194767],"mapped",[26257]],[[194768,194768],"mapped",[15112]],[[194769,194769],"mapped",[15076]],[[194770,194770],"mapped",[20882]],[[194771,194771],"mapped",[20885]],[[194772,194772],"mapped",[26368]],[[194773,194773],"mapped",[26268]],[[194774,194774],"mapped",[32941]],[[194775,194775],"mapped",[17369]],[[194776,194776],"mapped",[26391]],[[194777,194777],"mapped",[26395]],[[194778,194778],"mapped",[26401]],[[194779,194779],"mapped",[26462]],[[194780,194780],"mapped",[26451]],[[194781,194781],"mapped",[144323]],[[194782,194782],"mapped",[15177]],[[194783,194783],"mapped",[26618]],[[194784,194784],"mapped",[26501]],[[194785,194785],"mapped",[26706]],[[194786,194786],"mapped",[26757]],[[194787,194787],"mapped",[144493]],[[194788,194788],"mapped",[26766]],[[194789,194789],"mapped",[26655]],[[194790,194790],"mapped",[26900]],[[194791,194791],"mapped",[15261]],[[194792,194792],"mapped",[26946]],[[194793,194793],"mapped",[27043]],[[194794,194794],"mapped",[27114]],[[194795,194795],"mapped",[27304]],[[194796,194796],"mapped",[145059]],[[194797,194797],"mapped",[27355]],[[194798,194798],"mapped",[15384]],[[194799,194799],"mapped",[27425]],[[194800,194800],"mapped",[145575]],[[194801,194801],"mapped",[27476]],[[194802,194802],"mapped",[15438]],[[194803,194803],"mapped",[27506]],[[194804,194804],"mapped",[27551]],[[194805,194805],"mapped",[27578]],[[194806,194806],"mapped",[27579]],[[194807,194807],"mapped",[146061]],[[194808,194808],"mapped",[138507]],[[194809,194809],"mapped",[146170]],[[194810,194810],"mapped",[27726]],[[194811,194811],"mapped",[146620]],[[194812,194812],"mapped",[27839]],[[194813,194813],"mapped",[27853]],[[194814,194814],"mapped",[27751]],[[194815,194815],"mapped",[27926]],[[194816,194816],"mapped",[27966]],[[194817,194817],"mapped",[28023]],[[194818,194818],"mapped",[27969]],[[194819,194819],"mapped",[28009]],[[194820,194820],"mapped",[28024]],[[194821,194821],"mapped",[28037]],[[194822,194822],"mapped",[146718]],[[194823,194823],"mapped",[27956]],[[194824,194824],"mapped",[28207]],[[194825,194825],"mapped",[28270]],[[194826,194826],"mapped",[15667]],[[194827,194827],"mapped",[28363]],[[194828,194828],"mapped",[28359]],[[194829,194829],"mapped",[147153]],[[194830,194830],"mapped",[28153]],[[194831,194831],"mapped",[28526]],[[194832,194832],"mapped",[147294]],[[194833,194833],"mapped",[147342]],[[194834,194834],"mapped",[28614]],[[194835,194835],"mapped",[28729]],[[194836,194836],"mapped",[28702]],[[194837,194837],"mapped",[28699]],[[194838,194838],"mapped",[15766]],[[194839,194839],"mapped",[28746]],[[194840,194840],"mapped",[28797]],[[194841,194841],"mapped",[28791]],[[194842,194842],"mapped",[28845]],[[194843,194843],"mapped",[132389]],[[194844,194844],"mapped",[28997]],[[194845,194845],"mapped",[148067]],[[194846,194846],"mapped",[29084]],[[194847,194847],"disallowed"],[[194848,194848],"mapped",[29224]],[[194849,194849],"mapped",[29237]],[[194850,194850],"mapped",[29264]],[[194851,194851],"mapped",[149e3]],[[194852,194852],"mapped",[29312]],[[194853,194853],"mapped",[29333]],[[194854,194854],"mapped",[149301]],[[194855,194855],"mapped",[149524]],[[194856,194856],"mapped",[29562]],[[194857,194857],"mapped",[29579]],[[194858,194858],"mapped",[16044]],[[194859,194859],"mapped",[29605]],[[194860,194861],"mapped",[16056]],[[194862,194862],"mapped",[29767]],[[194863,194863],"mapped",[29788]],[[194864,194864],"mapped",[29809]],[[194865,194865],"mapped",[29829]],[[194866,194866],"mapped",[29898]],[[194867,194867],"mapped",[16155]],[[194868,194868],"mapped",[29988]],[[194869,194869],"mapped",[150582]],[[194870,194870],"mapped",[30014]],[[194871,194871],"mapped",[150674]],[[194872,194872],"mapped",[30064]],[[194873,194873],"mapped",[139679]],[[194874,194874],"mapped",[30224]],[[194875,194875],"mapped",[151457]],[[194876,194876],"mapped",[151480]],[[194877,194877],"mapped",[151620]],[[194878,194878],"mapped",[16380]],[[194879,194879],"mapped",[16392]],[[194880,194880],"mapped",[30452]],[[194881,194881],"mapped",[151795]],[[194882,194882],"mapped",[151794]],[[194883,194883],"mapped",[151833]],[[194884,194884],"mapped",[151859]],[[194885,194885],"mapped",[30494]],[[194886,194887],"mapped",[30495]],[[194888,194888],"mapped",[30538]],[[194889,194889],"mapped",[16441]],[[194890,194890],"mapped",[30603]],[[194891,194891],"mapped",[16454]],[[194892,194892],"mapped",[16534]],[[194893,194893],"mapped",[152605]],[[194894,194894],"mapped",[30798]],[[194895,194895],"mapped",[30860]],[[194896,194896],"mapped",[30924]],[[194897,194897],"mapped",[16611]],[[194898,194898],"mapped",[153126]],[[194899,194899],"mapped",[31062]],[[194900,194900],"mapped",[153242]],[[194901,194901],"mapped",[153285]],[[194902,194902],"mapped",[31119]],[[194903,194903],"mapped",[31211]],[[194904,194904],"mapped",[16687]],[[194905,194905],"mapped",[31296]],[[194906,194906],"mapped",[31306]],[[194907,194907],"mapped",[31311]],[[194908,194908],"mapped",[153980]],[[194909,194910],"mapped",[154279]],[[194911,194911],"disallowed"],[[194912,194912],"mapped",[16898]],[[194913,194913],"mapped",[154539]],[[194914,194914],"mapped",[31686]],[[194915,194915],"mapped",[31689]],[[194916,194916],"mapped",[16935]],[[194917,194917],"mapped",[154752]],[[194918,194918],"mapped",[31954]],[[194919,194919],"mapped",[17056]],[[194920,194920],"mapped",[31976]],[[194921,194921],"mapped",[31971]],[[194922,194922],"mapped",[32e3]],[[194923,194923],"mapped",[155526]],[[194924,194924],"mapped",[32099]],[[194925,194925],"mapped",[17153]],[[194926,194926],"mapped",[32199]],[[194927,194927],"mapped",[32258]],[[194928,194928],"mapped",[32325]],[[194929,194929],"mapped",[17204]],[[194930,194930],"mapped",[156200]],[[194931,194931],"mapped",[156231]],[[194932,194932],"mapped",[17241]],[[194933,194933],"mapped",[156377]],[[194934,194934],"mapped",[32634]],[[194935,194935],"mapped",[156478]],[[194936,194936],"mapped",[32661]],[[194937,194937],"mapped",[32762]],[[194938,194938],"mapped",[32773]],[[194939,194939],"mapped",[156890]],[[194940,194940],"mapped",[156963]],[[194941,194941],"mapped",[32864]],[[194942,194942],"mapped",[157096]],[[194943,194943],"mapped",[32880]],[[194944,194944],"mapped",[144223]],[[194945,194945],"mapped",[17365]],[[194946,194946],"mapped",[32946]],[[194947,194947],"mapped",[33027]],[[194948,194948],"mapped",[17419]],[[194949,194949],"mapped",[33086]],[[194950,194950],"mapped",[23221]],[[194951,194951],"mapped",[157607]],[[194952,194952],"mapped",[157621]],[[194953,194953],"mapped",[144275]],[[194954,194954],"mapped",[144284]],[[194955,194955],"mapped",[33281]],[[194956,194956],"mapped",[33284]],[[194957,194957],"mapped",[36766]],[[194958,194958],"mapped",[17515]],[[194959,194959],"mapped",[33425]],[[194960,194960],"mapped",[33419]],[[194961,194961],"mapped",[33437]],[[194962,194962],"mapped",[21171]],[[194963,194963],"mapped",[33457]],[[194964,194964],"mapped",[33459]],[[194965,194965],"mapped",[33469]],[[194966,194966],"mapped",[33510]],[[194967,194967],"mapped",[158524]],[[194968,194968],"mapped",[33509]],[[194969,194969],"mapped",[33565]],[[194970,194970],"mapped",[33635]],[[194971,194971],"mapped",[33709]],[[194972,194972],"mapped",[33571]],[[194973,194973],"mapped",[33725]],[[194974,194974],"mapped",[33767]],[[194975,194975],"mapped",[33879]],[[194976,194976],"mapped",[33619]],[[194977,194977],"mapped",[33738]],[[194978,194978],"mapped",[33740]],[[194979,194979],"mapped",[33756]],[[194980,194980],"mapped",[158774]],[[194981,194981],"mapped",[159083]],[[194982,194982],"mapped",[158933]],[[194983,194983],"mapped",[17707]],[[194984,194984],"mapped",[34033]],[[194985,194985],"mapped",[34035]],[[194986,194986],"mapped",[34070]],[[194987,194987],"mapped",[160714]],[[194988,194988],"mapped",[34148]],[[194989,194989],"mapped",[159532]],[[194990,194990],"mapped",[17757]],[[194991,194991],"mapped",[17761]],[[194992,194992],"mapped",[159665]],[[194993,194993],"mapped",[159954]],[[194994,194994],"mapped",[17771]],[[194995,194995],"mapped",[34384]],[[194996,194996],"mapped",[34396]],[[194997,194997],"mapped",[34407]],[[194998,194998],"mapped",[34409]],[[194999,194999],"mapped",[34473]],[[195e3,195e3],"mapped",[34440]],[[195001,195001],"mapped",[34574]],[[195002,195002],"mapped",[34530]],[[195003,195003],"mapped",[34681]],[[195004,195004],"mapped",[34600]],[[195005,195005],"mapped",[34667]],[[195006,195006],"mapped",[34694]],[[195007,195007],"disallowed"],[[195008,195008],"mapped",[34785]],[[195009,195009],"mapped",[34817]],[[195010,195010],"mapped",[17913]],[[195011,195011],"mapped",[34912]],[[195012,195012],"mapped",[34915]],[[195013,195013],"mapped",[161383]],[[195014,195014],"mapped",[35031]],[[195015,195015],"mapped",[35038]],[[195016,195016],"mapped",[17973]],[[195017,195017],"mapped",[35066]],[[195018,195018],"mapped",[13499]],[[195019,195019],"mapped",[161966]],[[195020,195020],"mapped",[162150]],[[195021,195021],"mapped",[18110]],[[195022,195022],"mapped",[18119]],[[195023,195023],"mapped",[35488]],[[195024,195024],"mapped",[35565]],[[195025,195025],"mapped",[35722]],[[195026,195026],"mapped",[35925]],[[195027,195027],"mapped",[162984]],[[195028,195028],"mapped",[36011]],[[195029,195029],"mapped",[36033]],[[195030,195030],"mapped",[36123]],[[195031,195031],"mapped",[36215]],[[195032,195032],"mapped",[163631]],[[195033,195033],"mapped",[133124]],[[195034,195034],"mapped",[36299]],[[195035,195035],"mapped",[36284]],[[195036,195036],"mapped",[36336]],[[195037,195037],"mapped",[133342]],[[195038,195038],"mapped",[36564]],[[195039,195039],"mapped",[36664]],[[195040,195040],"mapped",[165330]],[[195041,195041],"mapped",[165357]],[[195042,195042],"mapped",[37012]],[[195043,195043],"mapped",[37105]],[[195044,195044],"mapped",[37137]],[[195045,195045],"mapped",[165678]],[[195046,195046],"mapped",[37147]],[[195047,195047],"mapped",[37432]],[[195048,195048],"mapped",[37591]],[[195049,195049],"mapped",[37592]],[[195050,195050],"mapped",[37500]],[[195051,195051],"mapped",[37881]],[[195052,195052],"mapped",[37909]],[[195053,195053],"mapped",[166906]],[[195054,195054],"mapped",[38283]],[[195055,195055],"mapped",[18837]],[[195056,195056],"mapped",[38327]],[[195057,195057],"mapped",[167287]],[[195058,195058],"mapped",[18918]],[[195059,195059],"mapped",[38595]],[[195060,195060],"mapped",[23986]],[[195061,195061],"mapped",[38691]],[[195062,195062],"mapped",[168261]],[[195063,195063],"mapped",[168474]],[[195064,195064],"mapped",[19054]],[[195065,195065],"mapped",[19062]],[[195066,195066],"mapped",[38880]],[[195067,195067],"mapped",[168970]],[[195068,195068],"mapped",[19122]],[[195069,195069],"mapped",[169110]],[[195070,195071],"mapped",[38923]],[[195072,195072],"mapped",[38953]],[[195073,195073],"mapped",[169398]],[[195074,195074],"mapped",[39138]],[[195075,195075],"mapped",[19251]],[[195076,195076],"mapped",[39209]],[[195077,195077],"mapped",[39335]],[[195078,195078],"mapped",[39362]],[[195079,195079],"mapped",[39422]],[[195080,195080],"mapped",[19406]],[[195081,195081],"mapped",[170800]],[[195082,195082],"mapped",[39698]],[[195083,195083],"mapped",[4e4]],[[195084,195084],"mapped",[40189]],[[195085,195085],"mapped",[19662]],[[195086,195086],"mapped",[19693]],[[195087,195087],"mapped",[40295]],[[195088,195088],"mapped",[172238]],[[195089,195089],"mapped",[19704]],[[195090,195090],"mapped",[172293]],[[195091,195091],"mapped",[172558]],[[195092,195092],"mapped",[172689]],[[195093,195093],"mapped",[40635]],[[195094,195094],"mapped",[19798]],[[195095,195095],"mapped",[40697]],[[195096,195096],"mapped",[40702]],[[195097,195097],"mapped",[40709]],[[195098,195098],"mapped",[40719]],[[195099,195099],"mapped",[40726]],[[195100,195100],"mapped",[40763]],[[195101,195101],"mapped",[173568]],[[195102,196605],"disallowed"],[[196606,196607],"disallowed"],[[196608,262141],"disallowed"],[[262142,262143],"disallowed"],[[262144,327677],"disallowed"],[[327678,327679],"disallowed"],[[327680,393213],"disallowed"],[[393214,393215],"disallowed"],[[393216,458749],"disallowed"],[[458750,458751],"disallowed"],[[458752,524285],"disallowed"],[[524286,524287],"disallowed"],[[524288,589821],"disallowed"],[[589822,589823],"disallowed"],[[589824,655357],"disallowed"],[[655358,655359],"disallowed"],[[655360,720893],"disallowed"],[[720894,720895],"disallowed"],[[720896,786429],"disallowed"],[[786430,786431],"disallowed"],[[786432,851965],"disallowed"],[[851966,851967],"disallowed"],[[851968,917501],"disallowed"],[[917502,917503],"disallowed"],[[917504,917504],"disallowed"],[[917505,917505],"disallowed"],[[917506,917535],"disallowed"],[[917536,917631],"disallowed"],[[917632,917759],"disallowed"],[[917760,917999],"ignored"],[[918e3,983037],"disallowed"],[[983038,983039],"disallowed"],[[983040,1048573],"disallowed"],[[1048574,1048575],"disallowed"],[[1048576,1114109],"disallowed"],[[1114110,1114111],"disallowed"]]});var YP=v((h3e,b8)=>{"use strict";var $P=require("punycode"),HP=jP(),M1={TRANSITIONAL:0,NONTRANSITIONAL:1};function GP(t){return t.split("\0").map(function(e){return e.normalize("NFC")}).join("\0")}n(GP,"normalize");function ZP(t){for(var e=0,r=HP.length-1;e<=r;){var i=Math.floor((e+r)/2),a=HP[i];if(a[0][0]<=t&&a[0][1]>=t)return a;a[0][0]>t?r=i-1:e=i+1}return null}n(ZP,"findStatus");var hG=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;function JP(t){return t.replace(hG,"_").length}n(JP,"countSymbols");function gG(t,e,r){for(var i=!1,a="",s=JP(t),o=0;o253||o.length===0)&&(a.error=!0);for(var l=0;l63||s.length===0){a.error=!0;break}}return a.error?null:s.join(".")};b8.exports.toUnicode=function(t,e){var r=y8(t,e,M1.NONTRANSITIONAL);return{domain:r.string,error:r.error}};b8.exports.PROCESSING_OPTIONS=M1});var Ja=v((y3e,Oi)=>{"use strict";var D1=require("punycode"),QP=YP(),rT={ftp:21,file:null,gopher:70,http:80,https:443,ws:80,wss:443},qe=Symbol("failure");function XP(t){return D1.ucs2.decode(t).length}n(XP,"countSymbols");function eT(t,e){let r=t[e];return isNaN(r)?void 0:String.fromCodePoint(r)}n(eT,"at");function Gp(t){return t>=48&&t<=57}n(Gp,"isASCIIDigit");function Zp(t){return t>=65&&t<=90||t>=97&&t<=122}n(Zp,"isASCIIAlpha");function vG(t){return Zp(t)||Gp(t)}n(vG,"isASCIIAlphanumeric");function Pa(t){return Gp(t)||t>=65&&t<=70||t>=97&&t<=102}n(Pa,"isASCIIHex");function tT(t){return t==="."||t.toLowerCase()==="%2e"}n(tT,"isSingleDot");function SG(t){return t=t.toLowerCase(),t===".."||t==="%2e."||t===".%2e"||t==="%2e%2e"}n(SG,"isDoubleDot");function wG(t,e){return Zp(t)&&(e===58||e===124)}n(wG,"isWindowsDriveLetterCodePoints");function iT(t){return t.length===2&&Zp(t.codePointAt(0))&&(t[1]===":"||t[1]==="|")}n(iT,"isWindowsDriveLetterString");function xG(t){return t.length===2&&Zp(t.codePointAt(0))&&t[1]===":"}n(xG,"isNormalizedWindowsDriveLetterString");function AG(t){return t.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|%|\/|:|\?|@|\[|\\|\]/)!==-1}n(AG,"containsForbiddenHostCodePoint");function _G(t){return t.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|\/|:|\?|@|\[|\\|\]/)!==-1}n(_G,"containsForbiddenHostCodePointExcludingPercent");function i7(t){return rT[t]!==void 0}n(i7,"isSpecialScheme");function xr(t){return i7(t.scheme)}n(xr,"isSpecial");function kG(t){return rT[t]}n(kG,"defaultPort");function aT(t){let e=t.toString(16).toUpperCase();return e.length===1&&(e="0"+e),"%"+e}n(aT,"percentEncode");function EG(t){let e=new Buffer(t),r="";for(let i=0;i126}n(v8,"isC0ControlPercentEncode");var TG=new Set([32,34,35,60,62,63,96,123,125]);function nT(t){return v8(t)||TG.has(t)}n(nT,"isPathPercentEncode");var zG=new Set([47,58,59,61,64,91,92,93,94,124]);function n7(t){return nT(t)||zG.has(t)}n(n7,"isUserinfoPercentEncode");function il(t,e){let r=String.fromCodePoint(t);return e(t)?EG(r):r}n(il,"percentEncodeChar");function IG(t){let e=10;return t.length>=2&&t.charAt(0)==="0"&&t.charAt(1).toLowerCase()==="x"?(t=t.substring(2),e=16):t.length>=2&&t.charAt(0)==="0"&&(t=t.substring(1),e=8),t===""?0:(e===10?/[^0-9]/:e===16?/[^0-9A-Fa-f]/:/[^0-7]/).test(t)?qe:parseInt(t,e)}n(IG,"parseIPv4Number");function MG(t){let e=t.split(".");if(e[e.length-1]===""&&e.length>1&&e.pop(),e.length>4)return t;let r=[];for(let s of e){if(s==="")return t;let o=IG(s);if(o===qe)return t;r.push(o)}for(let s=0;s255)return qe;if(r[r.length-1]>=Math.pow(256,5-r.length))return qe;let i=r.pop(),a=0;for(let s of r)i+=s*Math.pow(256,3-a),++a;return i}n(MG,"parseIPv4");function DG(t){let e="",r=t;for(let i=1;i<=4;++i)e=String(r%256)+e,i!==4&&(e="."+e),r=Math.floor(r/256);return e}n(DG,"serializeIPv4");function RG(t){let e=[0,0,0,0,0,0,0,0],r=0,i=null,a=0;if(t=D1.ucs2.decode(t),t[a]===58){if(t[a+1]!==58)return qe;a+=2,++r,i=r}for(;a6))return qe;let l=0;for(;t[a]!==void 0;){let d=null;if(l>0)if(t[a]===46&&l<4)++a;else return qe;if(!Gp(t[a]))return qe;for(;Gp(t[a]);){let u=parseInt(eT(t,a));if(d===null)d=u;else{if(d===0)return qe;d=d*10+u}if(d>255)return qe;++a}e[r]=e[r]*256+d,++l,(l===2||l===4)&&++r}if(l!==4)return qe;break}else if(t[a]===58){if(++a,t[a]===void 0)return qe}else if(t[a]!==void 0)return qe;e[r]=s,++r}if(i!==null){let s=r-i;for(r=7;r!==0&&s>0;){let o=e[i+s-1];e[i+s-1]=e[r],e[r]=o,--r,--s}}else if(i===null&&r!==8)return qe;return e}n(RG,"parseIPv6");function BG(t){let e="",i=OG(t).idx,a=!1;for(let s=0;s<=7;++s)if(!(a&&t[s]===0)){if(a&&(a=!1),i===s){e+=s===0?"::":":",a=!0;continue}e+=t[s].toString(16),s!==7&&(e+=":")}return e}n(BG,"serializeIPv6");function a7(t,e){if(t[0]==="[")return t[t.length-1]!=="]"?qe:RG(t.substring(1,t.length-1));if(!e)return CG(t);let r=PG(t),i=QP.toASCII(r,!1,QP.PROCESSING_OPTIONS.NONTRANSITIONAL,!1);if(i===null||AG(i))return qe;let a=MG(i);return typeof a=="number"||a===qe?a:i}n(a7,"parseHost");function CG(t){if(_G(t))return qe;let e="",r=D1.ucs2.decode(t);for(let i=0;ir&&(e=i,r=a),i=null,a=0):(i===null&&(i=s),++a);return a>r&&(e=i,r=a),{idx:e,len:r}}n(OG,"findLongestZeroSequence");function s7(t){return typeof t=="number"?DG(t):t instanceof Array?"["+BG(t)+"]":t}n(s7,"serializeHost");function NG(t){return t.replace(/^[\u0000-\u001F\u0020]+|[\u0000-\u001F\u0020]+$/g,"")}n(NG,"trimControlChars");function qG(t){return t.replace(/\u0009|\u000A|\u000D/g,"")}n(qG,"trimTabAndNewline");function sT(t){let e=t.path;e.length!==0&&(t.scheme==="file"&&e.length===1&&VG(e[0])||e.pop())}n(sT,"shortenPath");function oT(t){return t.username!==""||t.password!==""}n(oT,"includesCredentials");function WG(t){return t.host===null||t.host===""||t.cannotBeABaseURL||t.scheme==="file"}n(WG,"cannotHaveAUsernamePasswordPort");function VG(t){return/^[A-Za-z]:$/.test(t)}n(VG,"isNormalizedWindowsDriveLetter");function Dt(t,e,r,i,a){if(this.pointer=0,this.input=t,this.base=e||null,this.encodingOverride=r||"utf-8",this.stateOverride=a,this.url=i,this.failure=!1,this.parseError=!1,!this.url){this.url={scheme:"",username:"",password:"",host:null,port:null,path:[],query:null,fragment:null,cannotBeABaseURL:!1};let o=NG(this.input);o!==this.input&&(this.parseError=!0),this.input=o}let s=qG(this.input);for(s!==this.input&&(this.parseError=!0),this.input=s,this.state=a||"scheme start",this.buffer="",this.atFlag=!1,this.arrFlag=!1,this.passwordTokenSeenFlag=!1,this.input=D1.ucs2.decode(this.input);this.pointer<=this.input.length;++this.pointer){let o=this.input[this.pointer],l=isNaN(o)?void 0:String.fromCodePoint(o),d=this["parse "+this.state](o,l);if(d){if(d===qe){this.failure=!0;break}}else break}}n(Dt,"URLStateMachine");Dt.prototype["parse scheme start"]=n(function(e,r){if(Zp(e))this.buffer+=r.toLowerCase(),this.state="scheme";else if(!this.stateOverride)this.state="no scheme",--this.pointer;else return this.parseError=!0,qe;return!0},"parseSchemeStart");Dt.prototype["parse scheme"]=n(function(e,r){if(vG(e)||e===43||e===45||e===46)this.buffer+=r.toLowerCase();else if(e===58){if(this.stateOverride&&(xr(this.url)&&!i7(this.buffer)||!xr(this.url)&&i7(this.buffer)||(oT(this.url)||this.url.port!==null)&&this.buffer==="file"||this.url.scheme==="file"&&(this.url.host===""||this.url.host===null))||(this.url.scheme=this.buffer,this.buffer="",this.stateOverride))return!1;this.url.scheme==="file"?((this.input[this.pointer+1]!==47||this.input[this.pointer+2]!==47)&&(this.parseError=!0),this.state="file"):xr(this.url)&&this.base!==null&&this.base.scheme===this.url.scheme?this.state="special relative or authority":xr(this.url)?this.state="special authority slashes":this.input[this.pointer+1]===47?(this.state="path or authority",++this.pointer):(this.url.cannotBeABaseURL=!0,this.url.path.push(""),this.state="cannot-be-a-base-URL path")}else if(!this.stateOverride)this.buffer="",this.state="no scheme",this.pointer=-1;else return this.parseError=!0,qe;return!0},"parseScheme");Dt.prototype["parse no scheme"]=n(function(e){return this.base===null||this.base.cannotBeABaseURL&&e!==35?qe:(this.base.cannotBeABaseURL&&e===35?(this.url.scheme=this.base.scheme,this.url.path=this.base.path.slice(),this.url.query=this.base.query,this.url.fragment="",this.url.cannotBeABaseURL=!0,this.state="fragment"):this.base.scheme==="file"?(this.state="file",--this.pointer):(this.state="relative",--this.pointer),!0)},"parseNoScheme");Dt.prototype["parse special relative or authority"]=n(function(e){return e===47&&this.input[this.pointer+1]===47?(this.state="special authority ignore slashes",++this.pointer):(this.parseError=!0,this.state="relative",--this.pointer),!0},"parseSpecialRelativeOrAuthority");Dt.prototype["parse path or authority"]=n(function(e){return e===47?this.state="authority":(this.state="path",--this.pointer),!0},"parsePathOrAuthority");Dt.prototype["parse relative"]=n(function(e){return this.url.scheme=this.base.scheme,isNaN(e)?(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(),this.url.query=this.base.query):e===47?this.state="relative slash":e===63?(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(),this.url.query="",this.state="query"):e===35?(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(),this.url.query=this.base.query,this.url.fragment="",this.state="fragment"):xr(this.url)&&e===92?(this.parseError=!0,this.state="relative slash"):(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(0,this.base.path.length-1),this.state="path",--this.pointer),!0},"parseRelative");Dt.prototype["parse relative slash"]=n(function(e){return xr(this.url)&&(e===47||e===92)?(e===92&&(this.parseError=!0),this.state="special authority ignore slashes"):e===47?this.state="authority":(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.state="path",--this.pointer),!0},"parseRelativeSlash");Dt.prototype["parse special authority slashes"]=n(function(e){return e===47&&this.input[this.pointer+1]===47?(this.state="special authority ignore slashes",++this.pointer):(this.parseError=!0,this.state="special authority ignore slashes",--this.pointer),!0},"parseSpecialAuthoritySlashes");Dt.prototype["parse special authority ignore slashes"]=n(function(e){return e!==47&&e!==92?(this.state="authority",--this.pointer):this.parseError=!0,!0},"parseSpecialAuthorityIgnoreSlashes");Dt.prototype["parse authority"]=n(function(e,r){if(e===64){this.parseError=!0,this.atFlag&&(this.buffer="%40"+this.buffer),this.atFlag=!0;let i=XP(this.buffer);for(let a=0;aMath.pow(2,16)-1)return this.parseError=!0,qe;this.url.port=i===kG(this.url.scheme)?null:i,this.buffer=""}if(this.stateOverride)return!1;this.state="path start",--this.pointer}else return this.parseError=!0,qe;return!0},"parsePort");var FG=new Set([47,92,63,35]);Dt.prototype["parse file"]=n(function(e){return this.url.scheme="file",e===47||e===92?(e===92&&(this.parseError=!0),this.state="file slash"):this.base!==null&&this.base.scheme==="file"?isNaN(e)?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),this.url.query=this.base.query):e===63?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),this.url.query="",this.state="query"):e===35?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),this.url.query=this.base.query,this.url.fragment="",this.state="fragment"):(this.input.length-this.pointer-1===0||!wG(e,this.input[this.pointer+1])||this.input.length-this.pointer-1>=2&&!FG.has(this.input[this.pointer+2])?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),sT(this.url)):this.parseError=!0,this.state="path",--this.pointer):(this.state="path",--this.pointer),!0},"parseFile");Dt.prototype["parse file slash"]=n(function(e){return e===47||e===92?(e===92&&(this.parseError=!0),this.state="file host"):(this.base!==null&&this.base.scheme==="file"&&(xG(this.base.path[0])?this.url.path.push(this.base.path[0]):this.url.host=this.base.host),this.state="path",--this.pointer),!0},"parseFileSlash");Dt.prototype["parse file host"]=n(function(e,r){if(isNaN(e)||e===47||e===92||e===63||e===35)if(--this.pointer,!this.stateOverride&&iT(this.buffer))this.parseError=!0,this.state="path";else if(this.buffer===""){if(this.url.host="",this.stateOverride)return!1;this.state="path start"}else{let i=a7(this.buffer,xr(this.url));if(i===qe)return qe;if(i==="localhost"&&(i=""),this.url.host=i,this.stateOverride)return!1;this.buffer="",this.state="path start"}else this.buffer+=r;return!0},"parseFileHost");Dt.prototype["parse path start"]=n(function(e){return xr(this.url)?(e===92&&(this.parseError=!0),this.state="path",e!==47&&e!==92&&--this.pointer):!this.stateOverride&&e===63?(this.url.query="",this.state="query"):!this.stateOverride&&e===35?(this.url.fragment="",this.state="fragment"):e!==void 0&&(this.state="path",e!==47&&--this.pointer),!0},"parsePathStart");Dt.prototype["parse path"]=n(function(e){if(isNaN(e)||e===47||xr(this.url)&&e===92||!this.stateOverride&&(e===63||e===35)){if(xr(this.url)&&e===92&&(this.parseError=!0),SG(this.buffer)?(sT(this.url),e!==47&&!(xr(this.url)&&e===92)&&this.url.path.push("")):tT(this.buffer)&&e!==47&&!(xr(this.url)&&e===92)?this.url.path.push(""):tT(this.buffer)||(this.url.scheme==="file"&&this.url.path.length===0&&iT(this.buffer)&&(this.url.host!==""&&this.url.host!==null&&(this.parseError=!0,this.url.host=""),this.buffer=this.buffer[0]+":"),this.url.path.push(this.buffer)),this.buffer="",this.url.scheme==="file"&&(e===void 0||e===63||e===35))for(;this.url.path.length>1&&this.url.path[0]==="";)this.parseError=!0,this.url.path.shift();e===63&&(this.url.query="",this.state="query"),e===35&&(this.url.fragment="",this.state="fragment")}else e===37&&(!Pa(this.input[this.pointer+1])||!Pa(this.input[this.pointer+2]))&&(this.parseError=!0),this.buffer+=il(e,nT);return!0},"parsePath");Dt.prototype["parse cannot-be-a-base-URL path"]=n(function(e){return e===63?(this.url.query="",this.state="query"):e===35?(this.url.fragment="",this.state="fragment"):(!isNaN(e)&&e!==37&&(this.parseError=!0),e===37&&(!Pa(this.input[this.pointer+1])||!Pa(this.input[this.pointer+2]))&&(this.parseError=!0),isNaN(e)||(this.url.path[0]=this.url.path[0]+il(e,v8))),!0},"parseCannotBeABaseURLPath");Dt.prototype["parse query"]=n(function(e,r){if(isNaN(e)||!this.stateOverride&&e===35){(!xr(this.url)||this.url.scheme==="ws"||this.url.scheme==="wss")&&(this.encodingOverride="utf-8");let i=new Buffer(this.buffer);for(let a=0;a126||i[a]===34||i[a]===35||i[a]===60||i[a]===62?this.url.query+=aT(i[a]):this.url.query+=String.fromCodePoint(i[a]);this.buffer="",e===35&&(this.url.fragment="",this.state="fragment")}else e===37&&(!Pa(this.input[this.pointer+1])||!Pa(this.input[this.pointer+2]))&&(this.parseError=!0),this.buffer+=r;return!0},"parseQuery");Dt.prototype["parse fragment"]=n(function(e){return isNaN(e)||(e===0?this.parseError=!0:(e===37&&(!Pa(this.input[this.pointer+1])||!Pa(this.input[this.pointer+2]))&&(this.parseError=!0),this.url.fragment+=il(e,v8))),!0},"parseFragment");function KG(t,e){let r=t.scheme+":";if(t.host!==null?(r+="//",(t.username!==""||t.password!=="")&&(r+=t.username,t.password!==""&&(r+=":"+t.password),r+="@"),r+=s7(t.host),t.port!==null&&(r+=":"+t.port)):t.host===null&&t.scheme==="file"&&(r+="//"),t.cannotBeABaseURL)r+=t.path[0];else for(let i of t.path)r+="/"+i;return t.query!==null&&(r+="?"+t.query),!e&&t.fragment!==null&&(r+="#"+t.fragment),r}n(KG,"serializeURL");function LG(t){let e=t.scheme+"://";return e+=s7(t.host),t.port!==null&&(e+=":"+t.port),e}n(LG,"serializeOrigin");Oi.exports.serializeURL=KG;Oi.exports.serializeURLOrigin=function(t){switch(t.scheme){case"blob":try{return Oi.exports.serializeURLOrigin(Oi.exports.parseURL(t.path[0]))}catch{return"null"}case"ftp":case"gopher":case"http":case"https":case"ws":case"wss":return LG({scheme:t.scheme,host:t.host,port:t.port});case"file":return"file://";default:return"null"}};Oi.exports.basicURLParse=function(t,e){e===void 0&&(e={});let r=new Dt(t,e.baseURL,e.encodingOverride,e.url,e.stateOverride);return r.failure?"failure":r.url};Oi.exports.setTheUsername=function(t,e){t.username="";let r=D1.ucs2.decode(e);for(let i=0;i{"use strict";var Rt=Ja();lT.implementation=class{static{n(this,"URLImpl")}constructor(e){let r=e[0],i=e[1],a=null;if(i!==void 0&&(a=Rt.basicURLParse(i),a==="failure"))throw new TypeError("Invalid base URL");let s=Rt.basicURLParse(r,{baseURL:a});if(s==="failure")throw new TypeError("Invalid URL");this._url=s}get href(){return Rt.serializeURL(this._url)}set href(e){let r=Rt.basicURLParse(e);if(r==="failure")throw new TypeError("Invalid URL");this._url=r}get origin(){return Rt.serializeURLOrigin(this._url)}get protocol(){return this._url.scheme+":"}set protocol(e){Rt.basicURLParse(e+":",{url:this._url,stateOverride:"scheme start"})}get username(){return this._url.username}set username(e){Rt.cannotHaveAUsernamePasswordPort(this._url)||Rt.setTheUsername(this._url,e)}get password(){return this._url.password}set password(e){Rt.cannotHaveAUsernamePasswordPort(this._url)||Rt.setThePassword(this._url,e)}get host(){let e=this._url;return e.host===null?"":e.port===null?Rt.serializeHost(e.host):Rt.serializeHost(e.host)+":"+Rt.serializeInteger(e.port)}set host(e){this._url.cannotBeABaseURL||Rt.basicURLParse(e,{url:this._url,stateOverride:"host"})}get hostname(){return this._url.host===null?"":Rt.serializeHost(this._url.host)}set hostname(e){this._url.cannotBeABaseURL||Rt.basicURLParse(e,{url:this._url,stateOverride:"hostname"})}get port(){return this._url.port===null?"":Rt.serializeInteger(this._url.port)}set port(e){Rt.cannotHaveAUsernamePasswordPort(this._url)||(e===""?this._url.port=null:Rt.basicURLParse(e,{url:this._url,stateOverride:"port"}))}get pathname(){return this._url.cannotBeABaseURL?this._url.path[0]:this._url.path.length===0?"":"/"+this._url.path.join("/")}set pathname(e){this._url.cannotBeABaseURL||(this._url.path=[],Rt.basicURLParse(e,{url:this._url,stateOverride:"path start"}))}get search(){return this._url.query===null||this._url.query===""?"":"?"+this._url.query}set search(e){let r=this._url;if(e===""){r.query=null;return}let i=e[0]==="?"?e.substring(1):e;r.query="",Rt.basicURLParse(i,{url:r,stateOverride:"query"})}get hash(){return this._url.fragment===null||this._url.fragment===""?"":"#"+this._url.fragment}set hash(e){if(e===""){this._url.fragment=null;return}let r=e[0]==="#"?e.substring(1):e;this._url.fragment="",Rt.basicURLParse(r,{url:this._url,stateOverride:"fragment"})}toJSON(){return this.href}}});var pT=v((x3e,Jp)=>{"use strict";var Gi=LP(),cT=UP(),uT=dT(),nt=cT.implSymbol;function Ir(t){if(!this||this[nt]||!(this instanceof Ir))throw new TypeError("Failed to construct 'URL': Please use the 'new' operator, this DOM object constructor cannot be called as a function.");if(arguments.length<1)throw new TypeError("Failed to construct 'URL': 1 argument required, but only "+arguments.length+" present.");let e=[];for(let r=0;r{"use strict";Ya.URL=pT().interface;Ya.serializeURL=Ja().serializeURL;Ya.serializeURLOrigin=Ja().serializeURLOrigin;Ya.basicURLParse=Ja().basicURLParse;Ya.setTheUsername=Ja().setTheUsername;Ya.setThePassword=Ja().setThePassword;Ya.serializeHost=Ja().serializeHost;Ya.serializeInteger=Ja().serializeInteger;Ya.parseURL=Ja().parseURL});var zn=v((k3e,fT)=>{"use strict";var S8=require("buffer"),R1=S8.Buffer,Zi={},Ji;for(Ji in S8)S8.hasOwnProperty(Ji)&&(Ji==="SlowBuffer"||Ji==="Buffer"||(Zi[Ji]=S8[Ji]));var B1=Zi.Buffer={};for(Ji in R1)R1.hasOwnProperty(Ji)&&(Ji==="allocUnsafe"||Ji==="allocUnsafeSlow"||(B1[Ji]=R1[Ji]));Zi.Buffer.prototype=R1.prototype;(!B1.from||B1.from===Uint8Array.from)&&(B1.from=function(t,e,r){if(typeof t=="number")throw new TypeError('The "value" argument must not be of type number. Received type '+typeof t);if(t&&typeof t.length>"u")throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);return R1(t,e,r)});B1.alloc||(B1.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError('The "size" argument must be of type number. Received type '+typeof t);if(t<0||t>=2*(1<<30))throw new RangeError('The value "'+t+'" is invalid for option "size"');var i=R1(t);return!e||e.length===0?i.fill(0):typeof r=="string"?i.fill(e,r):i.fill(e),i});if(!Zi.kStringMaxLength)try{Zi.kStringMaxLength=process.binding("buffer").kStringMaxLength}catch{}Zi.constants||(Zi.constants={MAX_LENGTH:Zi.kMaxLength},Zi.kStringMaxLength&&(Zi.constants.MAX_STRING_LENGTH=Zi.kStringMaxLength));fT.exports=Zi});var gT=v(d7=>{"use strict";var hT="\uFEFF";d7.PrependBOM=o7;function o7(t,e){this.encoder=t,this.addBOM=!0}n(o7,"PrependBOMWrapper");o7.prototype.write=function(t){return this.addBOM&&(t=hT+t,this.addBOM=!1),this.encoder.write(t)};o7.prototype.end=function(){return this.encoder.end()};d7.StripBOM=l7;function l7(t,e){this.decoder=t,this.pass=!1,this.options=e||{}}n(l7,"StripBOMWrapper");l7.prototype.write=function(t){var e=this.decoder.write(t);return this.pass||!e||(e[0]===hT&&(e=e.slice(1),typeof this.options.stripBOM=="function"&&this.options.stripBOM()),this.pass=!0),e};l7.prototype.end=function(){return this.decoder.end()}});var bT=v((T3e,yT)=>{"use strict";var al=zn().Buffer;yT.exports={utf8:{type:"_internal",bomAware:!0},cesu8:{type:"_internal",bomAware:!0},unicode11utf8:"utf8",ucs2:{type:"_internal",bomAware:!0},utf16le:"ucs2",binary:{type:"_internal"},base64:{type:"_internal"},hex:{type:"_internal"},_internal:c7};function c7(t,e){this.enc=t.encodingName,this.bomAware=t.bomAware,this.enc==="base64"?this.encoder=f7:this.enc==="cesu8"&&(this.enc="utf8",this.encoder=h7,al.from("eda0bdedb2a9","hex").toString()!=="\u{1F4A9}"&&(this.decoder=g7,this.defaultCharUnicode=e.defaultCharUnicode))}n(c7,"InternalCodec");c7.prototype.encoder=m7;c7.prototype.decoder=p7;var u7=require("string_decoder").StringDecoder;u7.prototype.end||(u7.prototype.end=function(){});function p7(t,e){this.decoder=new u7(e.enc)}n(p7,"InternalDecoder");p7.prototype.write=function(t){return al.isBuffer(t)||(t=al.from(t)),this.decoder.write(t)};p7.prototype.end=function(){return this.decoder.end()};function m7(t,e){this.enc=e.enc}n(m7,"InternalEncoder");m7.prototype.write=function(t){return al.from(t,this.enc)};m7.prototype.end=function(){};function f7(t,e){this.prevStr=""}n(f7,"InternalEncoderBase64");f7.prototype.write=function(t){t=this.prevStr+t;var e=t.length-t.length%4;return this.prevStr=t.slice(e),t=t.slice(0,e),al.from(t,"base64")};f7.prototype.end=function(){return al.from(this.prevStr,"base64")};function h7(t,e){}n(h7,"InternalEncoderCesu8");h7.prototype.write=function(t){for(var e=al.alloc(t.length*3),r=0,i=0;i>>6),e[r++]=128+(a&63)):(e[r++]=224+(a>>>12),e[r++]=128+(a>>>6&63),e[r++]=128+(a&63))}return e.slice(0,r)};h7.prototype.end=function(){};function g7(t,e){this.acc=0,this.contBytes=0,this.accBytes=0,this.defaultCharUnicode=e.defaultCharUnicode}n(g7,"InternalDecoderCesu8");g7.prototype.write=function(t){for(var e=this.acc,r=this.contBytes,i=this.accBytes,a="",s=0;s0&&(a+=this.defaultCharUnicode,r=0),o<128?a+=String.fromCharCode(o):o<224?(e=o&31,r=1,i=1):o<240?(e=o&15,r=2,i=1):a+=this.defaultCharUnicode):r>0?(e=e<<6|o&63,r--,i++,r===0&&(i===2&&e<128&&e>0?a+=this.defaultCharUnicode:i===3&&e<2048?a+=this.defaultCharUnicode:a+=String.fromCharCode(e))):a+=this.defaultCharUnicode}return this.acc=e,this.contBytes=r,this.accBytes=i,a};g7.prototype.end=function(){var t=0;return this.contBytes>0&&(t+=this.defaultCharUnicode),t}});var wT=v(Cs=>{"use strict";var w8=zn().Buffer;Cs._utf32=y7;function y7(t,e){this.iconv=e,this.bomAware=!0,this.isLE=t.isLE}n(y7,"Utf32Codec");Cs.utf32le={type:"_utf32",isLE:!0};Cs.utf32be={type:"_utf32",isLE:!1};Cs.ucs4le="utf32le";Cs.ucs4be="utf32be";y7.prototype.encoder=b7;y7.prototype.decoder=v7;function b7(t,e){this.isLE=e.isLE,this.highSurrogate=0}n(b7,"Utf32Encoder");b7.prototype.write=function(t){for(var e=w8.from(t,"ucs2"),r=w8.alloc(e.length*2),i=this.isLE?r.writeUInt32LE:r.writeUInt32BE,a=0,s=0;s0){for(;e1114111)&&(r=i),r>=65536){r-=65536;var a=55296|r>>10;t[e++]=a&255,t[e++]=a>>8;var r=56320|r&1023}return t[e++]=r&255,t[e++]=r>>8,e}n(vT,"_writeCodepoint");v7.prototype.end=function(){this.overflow.length=0};Cs.utf32=S7;Cs.ucs4="utf32";function S7(t,e){this.iconv=e}n(S7,"Utf32AutoCodec");S7.prototype.encoder=w7;S7.prototype.decoder=x7;function w7(t,e){t=t||{},t.addBOM===void 0&&(t.addBOM=!0),this.encoder=e.iconv.getEncoder(t.defaultEncoding||"utf-32le",t)}n(w7,"Utf32AutoEncoder");w7.prototype.write=function(t){return this.encoder.write(t)};w7.prototype.end=function(){return this.encoder.end()};function x7(t,e){this.decoder=null,this.initialBufs=[],this.initialBufsLen=0,this.options=t||{},this.iconv=e.iconv}n(x7,"Utf32AutoDecoder");x7.prototype.write=function(t){if(!this.decoder){if(this.initialBufs.push(t),this.initialBufsLen+=t.length,this.initialBufsLen<32)return"";var e=ST(this.initialBufs,this.options.defaultEncoding);this.decoder=this.iconv.getDecoder(e,this.options);for(var r="",i=0;i16)&&s++,(r[3]!==0||r[2]>16)&&a++,r[0]===0&&r[1]===0&&(r[2]!==0||r[3]!==0)&&l++,(r[0]!==0||r[1]!==0)&&r[2]===0&&r[3]===0&&o++,r.length=0,i++,i>=100)break e}return l-s>o-a?"utf-32be":l-s{"use strict";var xT=zn().Buffer;T7.utf16be=x8;function x8(){}n(x8,"Utf16BECodec");x8.prototype.encoder=A7;x8.prototype.decoder=_7;x8.prototype.bomAware=!0;function A7(){}n(A7,"Utf16BEEncoder");A7.prototype.write=function(t){for(var e=xT.from(t,"ucs2"),r=0;r=100)break e}return s>a?"utf-16be":s{"use strict";var Qa=zn().Buffer;k8.utf7=A8;k8.unicode11utf7="utf7";function A8(t,e){this.iconv=e}n(A8,"Utf7Codec");A8.prototype.encoder=I7;A8.prototype.decoder=M7;A8.prototype.bomAware=!0;var UG=/[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g;function I7(t,e){this.iconv=e.iconv}n(I7,"Utf7Encoder");I7.prototype.write=function(t){return Qa.from(t.replace(UG,function(e){return"+"+(e==="+"?"":this.iconv.encode(e,"utf16-be").toString("base64").replace(/=+$/,""))+"-"}.bind(this)))};I7.prototype.end=function(){};function M7(t,e){this.iconv=e.iconv,this.inBase64=!1,this.base64Accum=""}n(M7,"Utf7Decoder");var jG=/[A-Za-z0-9\/+]/,D7=[];for(Yp=0;Yp<256;Yp++)D7[Yp]=jG.test(String.fromCharCode(Yp));var Yp,HG="+".charCodeAt(0),nl="-".charCodeAt(0),z7="&".charCodeAt(0);M7.prototype.write=function(t){for(var e="",r=0,i=this.inBase64,a=this.base64Accum,s=0;s0&&(t=this.iconv.decode(Qa.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",t};k8.utf7imap=_8;function _8(t,e){this.iconv=e}n(_8,"Utf7IMAPCodec");_8.prototype.encoder=R7;_8.prototype.decoder=B7;_8.prototype.bomAware=!0;function R7(t,e){this.iconv=e.iconv,this.inBase64=!1,this.base64Accum=Qa.alloc(6),this.base64AccumIdx=0}n(R7,"Utf7IMAPEncoder");R7.prototype.write=function(t){for(var e=this.inBase64,r=this.base64Accum,i=this.base64AccumIdx,a=Qa.alloc(t.length*5+10),s=0,o=0;o0&&(s+=a.write(r.slice(0,i).toString("base64").replace(/\//g,",").replace(/=+$/,""),s),i=0),a[s++]=nl,e=!1),e||(a[s++]=l,l===z7&&(a[s++]=nl))):(e||(a[s++]=z7,e=!0),e&&(r[i++]=l>>8,r[i++]=l&255,i==r.length&&(s+=a.write(r.toString("base64").replace(/\//g,","),s),i=0)))}return this.inBase64=e,this.base64AccumIdx=i,a.slice(0,s)};R7.prototype.end=function(){var t=Qa.alloc(10),e=0;return this.inBase64&&(this.base64AccumIdx>0&&(e+=t.write(this.base64Accum.slice(0,this.base64AccumIdx).toString("base64").replace(/\//g,",").replace(/=+$/,""),e),this.base64AccumIdx=0),t[e++]=nl,this.inBase64=!1),t.slice(0,e)};function B7(t,e){this.iconv=e.iconv,this.inBase64=!1,this.base64Accum=""}n(B7,"Utf7IMAPDecoder");var kT=D7.slice();kT[",".charCodeAt(0)]=!0;B7.prototype.write=function(t){for(var e="",r=0,i=this.inBase64,a=this.base64Accum,s=0;s0&&(t=this.iconv.decode(Qa.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",t}});var TT=v(PT=>{"use strict";var E8=zn().Buffer;PT._sbcs=C7;function C7(t,e){if(!t)throw new Error("SBCS codec is called without the data.");if(!t.chars||t.chars.length!==128&&t.chars.length!==256)throw new Error("Encoding '"+t.type+"' has incorrect 'chars' (must be of len 128 or 256)");if(t.chars.length===128){for(var r="",i=0;i<128;i++)r+=String.fromCharCode(i);t.chars=r+t.chars}this.decodeBuf=E8.from(t.chars,"ucs2");for(var a=E8.alloc(65536,e.defaultCharSingleByte.charCodeAt(0)),i=0;i{"use strict";zT.exports={10029:"maccenteuro",maccenteuro:{type:"_sbcs",chars:"\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026\xA0\u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7"},808:"cp808",ibm808:"cp808",cp808:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\u20AC\u25A0\xA0"},mik:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2514\u2534\u252C\u251C\u2500\u253C\u2563\u2551\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2510\u2591\u2592\u2593\u2502\u2524\u2116\xA7\u2557\u255D\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},cp720:{type:"_sbcs",chars:"\x80\x81\xE9\xE2\x84\xE0\x86\xE7\xEA\xEB\xE8\xEF\xEE\x8D\x8E\x8F\x90\u0651\u0652\xF4\xA4\u0640\xFB\xF9\u0621\u0622\u0623\u0624\xA3\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0636\u0637\u0638\u0639\u063A\u0641\xB5\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u2261\u064B\u064C\u064D\u064E\u064F\u0650\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ascii8bit:"ascii",usascii:"ascii",ansix34:"ascii",ansix341968:"ascii",ansix341986:"ascii",csascii:"ascii",cp367:"ascii",ibm367:"ascii",isoir6:"ascii",iso646us:"ascii",iso646irv:"ascii",us:"ascii",latin1:"iso88591",latin2:"iso88592",latin3:"iso88593",latin4:"iso88594",latin5:"iso88599",latin6:"iso885910",latin7:"iso885913",latin8:"iso885914",latin9:"iso885915",latin10:"iso885916",csisolatin1:"iso88591",csisolatin2:"iso88592",csisolatin3:"iso88593",csisolatin4:"iso88594",csisolatincyrillic:"iso88595",csisolatinarabic:"iso88596",csisolatingreek:"iso88597",csisolatinhebrew:"iso88598",csisolatin5:"iso88599",csisolatin6:"iso885910",l1:"iso88591",l2:"iso88592",l3:"iso88593",l4:"iso88594",l5:"iso88599",l6:"iso885910",l7:"iso885913",l8:"iso885914",l9:"iso885915",l10:"iso885916",isoir14:"iso646jp",isoir57:"iso646cn",isoir100:"iso88591",isoir101:"iso88592",isoir109:"iso88593",isoir110:"iso88594",isoir144:"iso88595",isoir127:"iso88596",isoir126:"iso88597",isoir138:"iso88598",isoir148:"iso88599",isoir157:"iso885910",isoir166:"tis620",isoir179:"iso885913",isoir199:"iso885914",isoir203:"iso885915",isoir226:"iso885916",cp819:"iso88591",ibm819:"iso88591",cyrillic:"iso88595",arabic:"iso88596",arabic8:"iso88596",ecma114:"iso88596",asmo708:"iso88596",greek:"iso88597",greek8:"iso88597",ecma118:"iso88597",elot928:"iso88597",hebrew:"iso88598",hebrew8:"iso88598",turkish:"iso88599",turkish8:"iso88599",thai:"iso885911",thai8:"iso885911",celtic:"iso885914",celtic8:"iso885914",isoceltic:"iso885914",tis6200:"tis620",tis62025291:"tis620",tis62025330:"tis620",1e4:"macroman",10006:"macgreek",10007:"maccyrillic",10079:"maciceland",10081:"macturkish",cspc8codepage437:"cp437",cspc775baltic:"cp775",cspc850multilingual:"cp850",cspcp852:"cp852",cspc862latinhebrew:"cp862",cpgr:"cp869",msee:"cp1250",mscyrl:"cp1251",msansi:"cp1252",msgreek:"cp1253",msturk:"cp1254",mshebr:"cp1255",msarab:"cp1256",winbaltrim:"cp1257",cp20866:"koi8r",20866:"koi8r",ibm878:"koi8r",cskoi8r:"koi8r",cp21866:"koi8u",21866:"koi8u",ibm1168:"koi8u",strk10482002:"rk1048",tcvn5712:"tcvn",tcvn57121:"tcvn",gb198880:"iso646cn",cn:"iso646cn",csiso14jisc6220ro:"iso646jp",jisc62201969ro:"iso646jp",jp:"iso646jp",cshproman8:"hproman8",r8:"hproman8",roman8:"hproman8",xroman8:"hproman8",ibm1051:"hproman8",mac:"macintosh",csmacintosh:"macintosh"}});var DT=v((W3e,MT)=>{"use strict";MT.exports={437:"cp437",737:"cp737",775:"cp775",850:"cp850",852:"cp852",855:"cp855",856:"cp856",857:"cp857",858:"cp858",860:"cp860",861:"cp861",862:"cp862",863:"cp863",864:"cp864",865:"cp865",866:"cp866",869:"cp869",874:"windows874",922:"cp922",1046:"cp1046",1124:"cp1124",1125:"cp1125",1129:"cp1129",1133:"cp1133",1161:"cp1161",1162:"cp1162",1163:"cp1163",1250:"windows1250",1251:"windows1251",1252:"windows1252",1253:"windows1253",1254:"windows1254",1255:"windows1255",1256:"windows1256",1257:"windows1257",1258:"windows1258",28591:"iso88591",28592:"iso88592",28593:"iso88593",28594:"iso88594",28595:"iso88595",28596:"iso88596",28597:"iso88597",28598:"iso88598",28599:"iso88599",28600:"iso885910",28601:"iso885911",28603:"iso885913",28604:"iso885914",28605:"iso885915",28606:"iso885916",windows874:{type:"_sbcs",chars:"\u20AC\uFFFD\uFFFD\uFFFD\uFFFD\u2026\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},win874:"windows874",cp874:"windows874",windows1250:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\u0160\u2039\u015A\u0164\u017D\u0179\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0161\u203A\u015B\u0165\u017E\u017A\xA0\u02C7\u02D8\u0141\xA4\u0104\xA6\xA7\xA8\xA9\u015E\xAB\xAC\xAD\xAE\u017B\xB0\xB1\u02DB\u0142\xB4\xB5\xB6\xB7\xB8\u0105\u015F\xBB\u013D\u02DD\u013E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"},win1250:"windows1250",cp1250:"windows1250",windows1251:{type:"_sbcs",chars:"\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u040C\u040B\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u045C\u045B\u045F\xA0\u040E\u045E\u0408\xA4\u0490\xA6\xA7\u0401\xA9\u0404\xAB\xAC\xAD\xAE\u0407\xB0\xB1\u0406\u0456\u0491\xB5\xB6\xB7\u0451\u2116\u0454\xBB\u0458\u0405\u0455\u0457\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},win1251:"windows1251",cp1251:"windows1251",windows1252:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\u017D\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\u017E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},win1252:"windows1252",cp1252:"windows1252",windows1253:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0385\u0386\xA3\xA4\xA5\xA6\xA7\xA8\xA9\uFFFD\xAB\xAC\xAD\xAE\u2015\xB0\xB1\xB2\xB3\u0384\xB5\xB6\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"},win1253:"windows1253",cp1253:"windows1253",windows1254:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"},win1254:"windows1254",cp1254:"windows1254",windows1255:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\xA1\xA2\xA3\u20AA\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\xBF\u05B0\u05B1\u05B2\u05B3\u05B4\u05B5\u05B6\u05B7\u05B8\u05B9\u05BA\u05BB\u05BC\u05BD\u05BE\u05BF\u05C0\u05C1\u05C2\u05C3\u05F0\u05F1\u05F2\u05F3\u05F4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"},win1255:"windows1255",cp1255:"windows1255",windows1256:{type:"_sbcs",chars:"\u20AC\u067E\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0679\u2039\u0152\u0686\u0698\u0688\u06AF\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u06A9\u2122\u0691\u203A\u0153\u200C\u200D\u06BA\xA0\u060C\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\u06BE\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\u061B\xBB\xBC\xBD\xBE\u061F\u06C1\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\xD7\u0637\u0638\u0639\u063A\u0640\u0641\u0642\u0643\xE0\u0644\xE2\u0645\u0646\u0647\u0648\xE7\xE8\xE9\xEA\xEB\u0649\u064A\xEE\xEF\u064B\u064C\u064D\u064E\xF4\u064F\u0650\xF7\u0651\xF9\u0652\xFB\xFC\u200E\u200F\u06D2"},win1256:"windows1256",cp1256:"windows1256",windows1257:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\xA8\u02C7\xB8\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\xAF\u02DB\uFFFD\xA0\uFFFD\xA2\xA3\xA4\uFFFD\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u02D9"},win1257:"windows1257",cp1257:"windows1257",windows1258:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},win1258:"windows1258",cp1258:"windows1258",iso88591:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},cp28591:"iso88591",iso88592:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u02D8\u0141\xA4\u013D\u015A\xA7\xA8\u0160\u015E\u0164\u0179\xAD\u017D\u017B\xB0\u0105\u02DB\u0142\xB4\u013E\u015B\u02C7\xB8\u0161\u015F\u0165\u017A\u02DD\u017E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"},cp28592:"iso88592",iso88593:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0126\u02D8\xA3\xA4\uFFFD\u0124\xA7\xA8\u0130\u015E\u011E\u0134\xAD\uFFFD\u017B\xB0\u0127\xB2\xB3\xB4\xB5\u0125\xB7\xB8\u0131\u015F\u011F\u0135\xBD\uFFFD\u017C\xC0\xC1\xC2\uFFFD\xC4\u010A\u0108\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\uFFFD\xD1\xD2\xD3\xD4\u0120\xD6\xD7\u011C\xD9\xDA\xDB\xDC\u016C\u015C\xDF\xE0\xE1\xE2\uFFFD\xE4\u010B\u0109\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\uFFFD\xF1\xF2\xF3\xF4\u0121\xF6\xF7\u011D\xF9\xFA\xFB\xFC\u016D\u015D\u02D9"},cp28593:"iso88593",iso88594:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0138\u0156\xA4\u0128\u013B\xA7\xA8\u0160\u0112\u0122\u0166\xAD\u017D\xAF\xB0\u0105\u02DB\u0157\xB4\u0129\u013C\u02C7\xB8\u0161\u0113\u0123\u0167\u014A\u017E\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\u012A\u0110\u0145\u014C\u0136\xD4\xD5\xD6\xD7\xD8\u0172\xDA\xDB\xDC\u0168\u016A\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\u012B\u0111\u0146\u014D\u0137\xF4\xF5\xF6\xF7\xF8\u0173\xFA\xFB\xFC\u0169\u016B\u02D9"},cp28594:"iso88594",iso88595:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0403\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0453\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"},cp28595:"iso88595",iso88596:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\uFFFD\uFFFD\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u060C\xAD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u061B\uFFFD\uFFFD\uFFFD\u061F\uFFFD\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\u0638\u0639\u063A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},cp28596:"iso88596",iso88597:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u2018\u2019\xA3\u20AC\u20AF\xA6\xA7\xA8\xA9\u037A\xAB\xAC\xAD\uFFFD\u2015\xB0\xB1\xB2\xB3\u0384\u0385\u0386\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"},cp28597:"iso88597",iso88598:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2017\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"},cp28598:"iso88598",iso88599:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"},cp28599:"iso88599",iso885910:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0112\u0122\u012A\u0128\u0136\xA7\u013B\u0110\u0160\u0166\u017D\xAD\u016A\u014A\xB0\u0105\u0113\u0123\u012B\u0129\u0137\xB7\u013C\u0111\u0161\u0167\u017E\u2015\u016B\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\xCF\xD0\u0145\u014C\xD3\xD4\xD5\xD6\u0168\xD8\u0172\xDA\xDB\xDC\xDD\xDE\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\xEF\xF0\u0146\u014D\xF3\xF4\xF5\xF6\u0169\xF8\u0173\xFA\xFB\xFC\xFD\xFE\u0138"},cp28600:"iso885910",iso885911:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},cp28601:"iso885911",iso885913:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u201D\xA2\xA3\xA4\u201E\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\u201C\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u2019"},cp28603:"iso885913",iso885914:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u1E02\u1E03\xA3\u010A\u010B\u1E0A\xA7\u1E80\xA9\u1E82\u1E0B\u1EF2\xAD\xAE\u0178\u1E1E\u1E1F\u0120\u0121\u1E40\u1E41\xB6\u1E56\u1E81\u1E57\u1E83\u1E60\u1EF3\u1E84\u1E85\u1E61\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0174\xD1\xD2\xD3\xD4\xD5\xD6\u1E6A\xD8\xD9\xDA\xDB\xDC\xDD\u0176\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0175\xF1\xF2\xF3\xF4\xF5\xF6\u1E6B\xF8\xF9\xFA\xFB\xFC\xFD\u0177\xFF"},cp28604:"iso885914",iso885915:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\u0160\xA7\u0161\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u017D\xB5\xB6\xB7\u017E\xB9\xBA\xBB\u0152\u0153\u0178\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},cp28605:"iso885915",iso885916:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0105\u0141\u20AC\u201E\u0160\xA7\u0161\xA9\u0218\xAB\u0179\xAD\u017A\u017B\xB0\xB1\u010C\u0142\u017D\u201D\xB6\xB7\u017E\u010D\u0219\xBB\u0152\u0153\u0178\u017C\xC0\xC1\xC2\u0102\xC4\u0106\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0110\u0143\xD2\xD3\xD4\u0150\xD6\u015A\u0170\xD9\xDA\xDB\xDC\u0118\u021A\xDF\xE0\xE1\xE2\u0103\xE4\u0107\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0111\u0144\xF2\xF3\xF4\u0151\xF6\u015B\u0171\xF9\xFA\xFB\xFC\u0119\u021B\xFF"},cp28606:"iso885916",cp437:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm437:"cp437",csibm437:"cp437",cp737:{type:"_sbcs",chars:"\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u03C5\u03C6\u03C7\u03C8\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03C9\u03AC\u03AD\u03AE\u03CA\u03AF\u03CC\u03CD\u03CB\u03CE\u0386\u0388\u0389\u038A\u038C\u038E\u038F\xB1\u2265\u2264\u03AA\u03AB\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm737:"cp737",csibm737:"cp737",cp775:{type:"_sbcs",chars:"\u0106\xFC\xE9\u0101\xE4\u0123\xE5\u0107\u0142\u0113\u0156\u0157\u012B\u0179\xC4\xC5\xC9\xE6\xC6\u014D\xF6\u0122\xA2\u015A\u015B\xD6\xDC\xF8\xA3\xD8\xD7\xA4\u0100\u012A\xF3\u017B\u017C\u017A\u201D\xA6\xA9\xAE\xAC\xBD\xBC\u0141\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0104\u010C\u0118\u0116\u2563\u2551\u2557\u255D\u012E\u0160\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0172\u016A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u017D\u0105\u010D\u0119\u0117\u012F\u0161\u0173\u016B\u017E\u2518\u250C\u2588\u2584\u258C\u2590\u2580\xD3\xDF\u014C\u0143\xF5\xD5\xB5\u0144\u0136\u0137\u013B\u013C\u0146\u0112\u0145\u2019\xAD\xB1\u201C\xBE\xB6\xA7\xF7\u201E\xB0\u2219\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm775:"cp775",csibm775:"cp775",cp850:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u0131\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm850:"cp850",csibm850:"cp850",cp852:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\u016F\u0107\xE7\u0142\xEB\u0150\u0151\xEE\u0179\xC4\u0106\xC9\u0139\u013A\xF4\xF6\u013D\u013E\u015A\u015B\xD6\xDC\u0164\u0165\u0141\xD7\u010D\xE1\xED\xF3\xFA\u0104\u0105\u017D\u017E\u0118\u0119\xAC\u017A\u010C\u015F\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\u011A\u015E\u2563\u2551\u2557\u255D\u017B\u017C\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0102\u0103\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u0111\u0110\u010E\xCB\u010F\u0147\xCD\xCE\u011B\u2518\u250C\u2588\u2584\u0162\u016E\u2580\xD3\xDF\xD4\u0143\u0144\u0148\u0160\u0161\u0154\xDA\u0155\u0170\xFD\xDD\u0163\xB4\xAD\u02DD\u02DB\u02C7\u02D8\xA7\xF7\xB8\xB0\xA8\u02D9\u0171\u0158\u0159\u25A0\xA0"},ibm852:"cp852",csibm852:"cp852",cp855:{type:"_sbcs",chars:"\u0452\u0402\u0453\u0403\u0451\u0401\u0454\u0404\u0455\u0405\u0456\u0406\u0457\u0407\u0458\u0408\u0459\u0409\u045A\u040A\u045B\u040B\u045C\u040C\u045E\u040E\u045F\u040F\u044E\u042E\u044A\u042A\u0430\u0410\u0431\u0411\u0446\u0426\u0434\u0414\u0435\u0415\u0444\u0424\u0433\u0413\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0445\u0425\u0438\u0418\u2563\u2551\u2557\u255D\u0439\u0419\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u043A\u041A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u043B\u041B\u043C\u041C\u043D\u041D\u043E\u041E\u043F\u2518\u250C\u2588\u2584\u041F\u044F\u2580\u042F\u0440\u0420\u0441\u0421\u0442\u0422\u0443\u0423\u0436\u0416\u0432\u0412\u044C\u042C\u2116\xAD\u044B\u042B\u0437\u0417\u0448\u0428\u044D\u042D\u0449\u0429\u0447\u0427\xA7\u25A0\xA0"},ibm855:"cp855",csibm855:"cp855",cp856:{type:"_sbcs",chars:"\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\xA3\uFFFD\xD7\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAE\xAC\xBD\xBC\uFFFD\xAB\xBB\u2591\u2592\u2593\u2502\u2524\uFFFD\uFFFD\uFFFD\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\uFFFD\uFFFD\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2518\u250C\u2588\u2584\xA6\uFFFD\u2580\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xB5\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm856:"cp856",csibm856:"cp856",cp857:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\u0131\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\u0130\xD6\xDC\xF8\xA3\xD8\u015E\u015F\xE1\xED\xF3\xFA\xF1\xD1\u011E\u011F\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xBA\xAA\xCA\xCB\xC8\uFFFD\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\uFFFD\xD7\xDA\xDB\xD9\xEC\xFF\xAF\xB4\xAD\xB1\uFFFD\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm857:"cp857",csibm857:"cp857",cp858:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u20AC\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm858:"cp858",csibm858:"cp858",cp860:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE3\xE0\xC1\xE7\xEA\xCA\xE8\xCD\xD4\xEC\xC3\xC2\xC9\xC0\xC8\xF4\xF5\xF2\xDA\xF9\xCC\xD5\xDC\xA2\xA3\xD9\u20A7\xD3\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xD2\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm860:"cp860",csibm860:"cp860",cp861:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xD0\xF0\xDE\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xFE\xFB\xDD\xFD\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xC1\xCD\xD3\xDA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm861:"cp861",csibm861:"cp861",cp862:{type:"_sbcs",chars:"\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm862:"cp862",csibm862:"cp862",cp863:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xC2\xE0\xB6\xE7\xEA\xEB\xE8\xEF\xEE\u2017\xC0\xA7\xC9\xC8\xCA\xF4\xCB\xCF\xFB\xF9\xA4\xD4\xDC\xA2\xA3\xD9\xDB\u0192\xA6\xB4\xF3\xFA\xA8\xB8\xB3\xAF\xCE\u2310\xAC\xBD\xBC\xBE\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm863:"cp863",csibm863:"cp863",cp864:{type:"_sbcs",chars:`\0\x07\b \v\f\r\x1B !"#$\u066A&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xB0\xB7\u2219\u221A\u2592\u2500\u2502\u253C\u2524\u252C\u251C\u2534\u2510\u250C\u2514\u2518\u03B2\u221E\u03C6\xB1\xBD\xBC\u2248\xAB\xBB\uFEF7\uFEF8\uFFFD\uFFFD\uFEFB\uFEFC\uFFFD\xA0\xAD\uFE82\xA3\xA4\uFE84\uFFFD\uFFFD\uFE8E\uFE8F\uFE95\uFE99\u060C\uFE9D\uFEA1\uFEA5\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFED1\u061B\uFEB1\uFEB5\uFEB9\u061F\xA2\uFE80\uFE81\uFE83\uFE85\uFECA\uFE8B\uFE8D\uFE91\uFE93\uFE97\uFE9B\uFE9F\uFEA3\uFEA7\uFEA9\uFEAB\uFEAD\uFEAF\uFEB3\uFEB7\uFEBB\uFEBF\uFEC1\uFEC5\uFECB\uFECF\xA6\xAC\xF7\xD7\uFEC9\u0640\uFED3\uFED7\uFEDB\uFEDF\uFEE3\uFEE7\uFEEB\uFEED\uFEEF\uFEF3\uFEBD\uFECC\uFECE\uFECD\uFEE1\uFE7D\u0651\uFEE5\uFEE9\uFEEC\uFEF0\uFEF2\uFED0\uFED5\uFEF5\uFEF6\uFEDD\uFED9\uFEF1\u25A0\uFFFD`},ibm864:"cp864",csibm864:"cp864",cp865:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xA4\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm865:"cp865",csibm865:"cp865",cp866:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\xA4\u25A0\xA0"},ibm866:"cp866",csibm866:"cp866",cp869:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0386\uFFFD\xB7\xAC\xA6\u2018\u2019\u0388\u2015\u0389\u038A\u03AA\u038C\uFFFD\uFFFD\u038E\u03AB\xA9\u038F\xB2\xB3\u03AC\xA3\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03CD\u0391\u0392\u0393\u0394\u0395\u0396\u0397\xBD\u0398\u0399\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u039A\u039B\u039C\u039D\u2563\u2551\u2557\u255D\u039E\u039F\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u03A0\u03A1\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u2518\u250C\u2588\u2584\u03B4\u03B5\u2580\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u0384\xAD\xB1\u03C5\u03C6\u03C7\xA7\u03C8\u0385\xB0\xA8\u03C9\u03CB\u03B0\u03CE\u25A0\xA0"},ibm869:"cp869",csibm869:"cp869",cp922:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\u203E\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0160\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\u017D\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0161\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\u017E\xFF"},ibm922:"cp922",csibm922:"cp922",cp1046:{type:"_sbcs",chars:"\uFE88\xD7\xF7\uF8F6\uF8F5\uF8F4\uF8F7\uFE71\x88\u25A0\u2502\u2500\u2510\u250C\u2514\u2518\uFE79\uFE7B\uFE7D\uFE7F\uFE77\uFE8A\uFEF0\uFEF3\uFEF2\uFECE\uFECF\uFED0\uFEF6\uFEF8\uFEFA\uFEFC\xA0\uF8FA\uF8F9\uF8F8\xA4\uF8FB\uFE8B\uFE91\uFE97\uFE9B\uFE9F\uFEA3\u060C\xAD\uFEA7\uFEB3\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFEB7\u061B\uFEBB\uFEBF\uFECA\u061F\uFECB\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\uFEC7\u0639\u063A\uFECC\uFE82\uFE84\uFE8E\uFED3\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFED7\uFEDB\uFEDF\uF8FC\uFEF5\uFEF7\uFEF9\uFEFB\uFEE3\uFEE7\uFEEC\uFEE9\uFFFD"},ibm1046:"cp1046",csibm1046:"cp1046",cp1124:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0490\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0491\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"},ibm1124:"cp1124",csibm1124:"cp1124",cp1125:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0490\u0491\u0404\u0454\u0406\u0456\u0407\u0457\xB7\u221A\u2116\xA4\u25A0\xA0"},ibm1125:"cp1125",csibm1125:"cp1125",cp1129:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},ibm1129:"cp1129",csibm1129:"cp1129",cp1133:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E81\u0E82\u0E84\u0E87\u0E88\u0EAA\u0E8A\u0E8D\u0E94\u0E95\u0E96\u0E97\u0E99\u0E9A\u0E9B\u0E9C\u0E9D\u0E9E\u0E9F\u0EA1\u0EA2\u0EA3\u0EA5\u0EA7\u0EAB\u0EAD\u0EAE\uFFFD\uFFFD\uFFFD\u0EAF\u0EB0\u0EB2\u0EB3\u0EB4\u0EB5\u0EB6\u0EB7\u0EB8\u0EB9\u0EBC\u0EB1\u0EBB\u0EBD\uFFFD\uFFFD\uFFFD\u0EC0\u0EC1\u0EC2\u0EC3\u0EC4\u0EC8\u0EC9\u0ECA\u0ECB\u0ECC\u0ECD\u0EC6\uFFFD\u0EDC\u0EDD\u20AD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0ED0\u0ED1\u0ED2\u0ED3\u0ED4\u0ED5\u0ED6\u0ED7\u0ED8\u0ED9\uFFFD\uFFFD\xA2\xAC\xA6\uFFFD"},ibm1133:"cp1133",csibm1133:"cp1133",cp1161:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E48\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\u0E49\u0E4A\u0E4B\u20AC\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\xA2\xAC\xA6\xA0"},ibm1161:"cp1161",csibm1161:"cp1161",cp1162:{type:"_sbcs",chars:"\u20AC\x81\x82\x83\x84\u2026\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},ibm1162:"cp1162",csibm1162:"cp1162",cp1163:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},ibm1163:"cp1163",csibm1163:"cp1163",maccroatian:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\u0160\u2122\xB4\xA8\u2260\u017D\xD8\u221E\xB1\u2264\u2265\u2206\xB5\u2202\u2211\u220F\u0161\u222B\xAA\xBA\u2126\u017E\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u0106\xAB\u010C\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u0110\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\uFFFD\xA9\u2044\xA4\u2039\u203A\xC6\xBB\u2013\xB7\u201A\u201E\u2030\xC2\u0107\xC1\u010D\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u0111\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u03C0\xCB\u02DA\xB8\xCA\xE6\u02C7"},maccyrillic:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\xA2\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u2202\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"},macgreek:{type:"_sbcs",chars:"\xC4\xB9\xB2\xC9\xB3\xD6\xDC\u0385\xE0\xE2\xE4\u0384\xA8\xE7\xE9\xE8\xEA\xEB\xA3\u2122\xEE\xEF\u2022\xBD\u2030\xF4\xF6\xA6\xAD\xF9\xFB\xFC\u2020\u0393\u0394\u0398\u039B\u039E\u03A0\xDF\xAE\xA9\u03A3\u03AA\xA7\u2260\xB0\u0387\u0391\xB1\u2264\u2265\xA5\u0392\u0395\u0396\u0397\u0399\u039A\u039C\u03A6\u03AB\u03A8\u03A9\u03AC\u039D\xAC\u039F\u03A1\u2248\u03A4\xAB\xBB\u2026\xA0\u03A5\u03A7\u0386\u0388\u0153\u2013\u2015\u201C\u201D\u2018\u2019\xF7\u0389\u038A\u038C\u038E\u03AD\u03AE\u03AF\u03CC\u038F\u03CD\u03B1\u03B2\u03C8\u03B4\u03B5\u03C6\u03B3\u03B7\u03B9\u03BE\u03BA\u03BB\u03BC\u03BD\u03BF\u03C0\u03CE\u03C1\u03C3\u03C4\u03B8\u03C9\u03C2\u03C7\u03C5\u03B6\u03CA\u03CB\u0390\u03B0\uFFFD"},maciceland:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\xDD\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\xD0\xF0\xDE\xFE\xFD\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macroman:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macromania:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\u0102\u015E\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\u0103\u015F\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\u0162\u0163\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macthai:{type:"_sbcs",chars:"\xAB\xBB\u2026\uF88C\uF88F\uF892\uF895\uF898\uF88B\uF88E\uF891\uF894\uF897\u201C\u201D\uF899\uFFFD\u2022\uF884\uF889\uF885\uF886\uF887\uF888\uF88A\uF88D\uF890\uF893\uF896\u2018\u2019\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFEFF\u200B\u2013\u2014\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u2122\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\xAE\xA9\uFFFD\uFFFD\uFFFD\uFFFD"},macturkish:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u011E\u011F\u0130\u0131\u015E\u015F\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\uFFFD\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macukraine:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\u0490\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u0491\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"},koi8r:{type:"_sbcs",chars:"\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u2553\u2554\u2555\u2556\u2557\u2558\u2559\u255A\u255B\u255C\u255D\u255E\u255F\u2560\u2561\u0401\u2562\u2563\u2564\u2565\u2566\u2567\u2568\u2569\u256A\u256B\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},koi8u:{type:"_sbcs",chars:"\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u255D\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},koi8ru:{type:"_sbcs",chars:"\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u045E\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u040E\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},koi8t:{type:"_sbcs",chars:"\u049B\u0493\u201A\u0492\u201E\u2026\u2020\u2021\uFFFD\u2030\u04B3\u2039\u04B2\u04B7\u04B6\uFFFD\u049A\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u04EF\u04EE\u0451\xA4\u04E3\xA6\xA7\uFFFD\uFFFD\uFFFD\xAB\xAC\xAD\xAE\uFFFD\xB0\xB1\xB2\u0401\uFFFD\u04E2\xB6\xB7\uFFFD\u2116\uFFFD\xBB\uFFFD\uFFFD\uFFFD\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},armscii8:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\u0587\u0589)(\xBB\xAB\u2014.\u055D,-\u058A\u2026\u055C\u055B\u055E\u0531\u0561\u0532\u0562\u0533\u0563\u0534\u0564\u0535\u0565\u0536\u0566\u0537\u0567\u0538\u0568\u0539\u0569\u053A\u056A\u053B\u056B\u053C\u056C\u053D\u056D\u053E\u056E\u053F\u056F\u0540\u0570\u0541\u0571\u0542\u0572\u0543\u0573\u0544\u0574\u0545\u0575\u0546\u0576\u0547\u0577\u0548\u0578\u0549\u0579\u054A\u057A\u054B\u057B\u054C\u057C\u054D\u057D\u054E\u057E\u054F\u057F\u0550\u0580\u0551\u0581\u0552\u0582\u0553\u0583\u0554\u0584\u0555\u0585\u0556\u0586\u055A\uFFFD"},rk1048:{type:"_sbcs",chars:"\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u049A\u04BA\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u049B\u04BB\u045F\xA0\u04B0\u04B1\u04D8\xA4\u04E8\xA6\xA7\u0401\xA9\u0492\xAB\xAC\xAD\xAE\u04AE\xB0\xB1\u0406\u0456\u04E9\xB5\xB6\xB7\u0451\u2116\u0493\xBB\u04D9\u04A2\u04A3\u04AF\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},tcvn:{type:"_sbcs",chars:`\0\xDA\u1EE4\u1EEA\u1EEC\u1EEE\x07\b \v\f\r\u1EE8\u1EF0\u1EF2\u1EF6\u1EF8\xDD\u1EF4\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xC0\u1EA2\xC3\xC1\u1EA0\u1EB6\u1EAC\xC8\u1EBA\u1EBC\xC9\u1EB8\u1EC6\xCC\u1EC8\u0128\xCD\u1ECA\xD2\u1ECE\xD5\xD3\u1ECC\u1ED8\u1EDC\u1EDE\u1EE0\u1EDA\u1EE2\xD9\u1EE6\u0168\xA0\u0102\xC2\xCA\xD4\u01A0\u01AF\u0110\u0103\xE2\xEA\xF4\u01A1\u01B0\u0111\u1EB0\u0300\u0309\u0303\u0301\u0323\xE0\u1EA3\xE3\xE1\u1EA1\u1EB2\u1EB1\u1EB3\u1EB5\u1EAF\u1EB4\u1EAE\u1EA6\u1EA8\u1EAA\u1EA4\u1EC0\u1EB7\u1EA7\u1EA9\u1EAB\u1EA5\u1EAD\xE8\u1EC2\u1EBB\u1EBD\xE9\u1EB9\u1EC1\u1EC3\u1EC5\u1EBF\u1EC7\xEC\u1EC9\u1EC4\u1EBE\u1ED2\u0129\xED\u1ECB\xF2\u1ED4\u1ECF\xF5\xF3\u1ECD\u1ED3\u1ED5\u1ED7\u1ED1\u1ED9\u1EDD\u1EDF\u1EE1\u1EDB\u1EE3\xF9\u1ED6\u1EE7\u0169\xFA\u1EE5\u1EEB\u1EED\u1EEF\u1EE9\u1EF1\u1EF3\u1EF7\u1EF9\xFD\u1EF5\u1ED0`},georgianacademy:{type:"_sbcs",chars:"\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10EF\u10F0\u10F1\u10F2\u10F3\u10F4\u10F5\u10F6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},georgianps:{type:"_sbcs",chars:"\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10F1\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10F2\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10F3\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10F4\u10EF\u10F0\u10F5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},pt154:{type:"_sbcs",chars:"\u0496\u0492\u04EE\u0493\u201E\u2026\u04B6\u04AE\u04B2\u04AF\u04A0\u04E2\u04A2\u049A\u04BA\u04B8\u0497\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u04B3\u04B7\u04A1\u04E3\u04A3\u049B\u04BB\u04B9\xA0\u040E\u045E\u0408\u04E8\u0498\u04B0\xA7\u0401\xA9\u04D8\xAB\xAC\u04EF\xAE\u049C\xB0\u04B1\u0406\u0456\u0499\u04E9\xB6\xB7\u0451\u2116\u04D9\xBB\u0458\u04AA\u04AB\u049D\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},viscii:{type:"_sbcs",chars:`\0\u1EB2\u1EB4\u1EAA\x07\b \v\f\r\u1EF6\u1EF8\x1B\u1EF4 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\u1EA0\u1EAE\u1EB0\u1EB6\u1EA4\u1EA6\u1EA8\u1EAC\u1EBC\u1EB8\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EE2\u1EDA\u1EDC\u1EDE\u1ECA\u1ECE\u1ECC\u1EC8\u1EE6\u0168\u1EE4\u1EF2\xD5\u1EAF\u1EB1\u1EB7\u1EA5\u1EA7\u1EA9\u1EAD\u1EBD\u1EB9\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1ED1\u1ED3\u1ED5\u1ED7\u1EE0\u01A0\u1ED9\u1EDD\u1EDF\u1ECB\u1EF0\u1EE8\u1EEA\u1EEC\u01A1\u1EDB\u01AF\xC0\xC1\xC2\xC3\u1EA2\u0102\u1EB3\u1EB5\xC8\xC9\xCA\u1EBA\xCC\xCD\u0128\u1EF3\u0110\u1EE9\xD2\xD3\xD4\u1EA1\u1EF7\u1EEB\u1EED\xD9\xDA\u1EF9\u1EF5\xDD\u1EE1\u01B0\xE0\xE1\xE2\xE3\u1EA3\u0103\u1EEF\u1EAB\xE8\xE9\xEA\u1EBB\xEC\xED\u0129\u1EC9\u0111\u1EF1\xF2\xF3\xF4\xF5\u1ECF\u1ECD\u1EE5\xF9\xFA\u0169\u1EE7\xFD\u1EE3\u1EEE`},iso646cn:{type:"_sbcs",chars:`\0\x07\b \v\f\r\x1B !"#\xA5%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD`},iso646jp:{type:"_sbcs",chars:`\0\x07\b -\v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\xA5]^_\`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD`},hproman8:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xC0\xC2\xC8\xCA\xCB\xCE\xCF\xB4\u02CB\u02C6\xA8\u02DC\xD9\xDB\u20A4\xAF\xDD\xFD\xB0\xC7\xE7\xD1\xF1\xA1\xBF\xA4\xA3\xA5\xA7\u0192\xA2\xE2\xEA\xF4\xFB\xE1\xE9\xF3\xFA\xE0\xE8\xF2\xF9\xE4\xEB\xF6\xFC\xC5\xEE\xD8\xC6\xE5\xED\xF8\xE6\xC4\xEC\xD6\xDC\xC9\xEF\xDF\xD4\xC1\xC3\xE3\xD0\xF0\xCD\xCC\xD3\xD2\xD5\xF5\u0160\u0161\xDA\u0178\xFF\xDE\xFE\xB7\xB5\xB6\xBE\u2014\xBC\xBD\xAA\xBA\xAB\u25A0\xBB\xB1\uFFFD"},macintosh:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},ascii:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},tis620:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"}}});var BT=b(RT=>{"use strict";var N7=Tn().Buffer;RT._dbcs=zn;var Ur=-1,DT=-2,Ji=-10,hi=-1e3,B1=new Array(256),Zp=-1;for(E8=0;E8<256;E8++)B1[E8]=Ur;var E8;function zn(t,e){if(this.encodingName=t.encodingName,!t)throw new Error("DBCS codec is called without the data.");if(!t.table)throw new Error("Encoding '"+this.encodingName+"' has no data.");var r=t.table();this.decodeTables=[],this.decodeTables[0]=B1.slice(0),this.decodeTableSeq=[];for(var i=0;ihi)throw new Error("gb18030 decode tables conflict at byte 2");for(var d=this.decodeTables[hi-o[l]],u=129;u<=254;u++){if(d[u]===Ur)d[u]=hi-n;else{if(d[u]===hi-n)continue;if(d[u]>hi)throw new Error("gb18030 decode tables conflict at byte 3")}for(var c=this.decodeTables[hi-d[u]],w=48;w<=57;w++)c[w]===Ur&&(c[w]=DT)}}}this.defaultCharUnicode=e.defaultCharUnicode,this.encodeTable=[],this.encodeTableSeq=[];var k={};if(t.encodeSkipVals)for(var i=0;i0;t>>>=8)e.push(t&255);e.length==0&&e.push(0);for(var r=this.decodeTables[0],i=e.length-1;i>0;i--){var a=r[e[i]];if(a==Ur)r[e[i]]=hi-this.decodeTables.length,this.decodeTables.push(r=B1.slice(0));else if(a<=hi)r=this.decodeTables[hi-a];else throw new Error("Overwrite byte in "+this.encodingName+", addr: "+t.toString(16))}return r};zn.prototype._addDecodeChunk=function(t){var e=parseInt(t[0],16),r=this._getDecodeTrieNode(e);e=e&255;for(var i=1;i255)throw new Error("Incorrect chunk in "+this.encodingName+" at addr "+t[0]+": too long"+e)};zn.prototype._getEncodeBucket=function(t){var e=t>>8;return this.encodeTable[e]===void 0&&(this.encodeTable[e]=B1.slice(0)),this.encodeTable[e]};zn.prototype._setEncodeChar=function(t,e){var r=this._getEncodeBucket(t),i=t&255;r[i]<=Ji?this.encodeTableSeq[Ji-r[i]][Zp]=e:r[i]==Ur&&(r[i]=e)};zn.prototype._setEncodeSequence=function(t,e){var r=t[0],i=this._getEncodeBucket(r),a=r&255,n;i[a]<=Ji?n=this.encodeTableSeq[Ji-i[a]]:(n={},i[a]!==Ur&&(n[Zp]=i[a]),i[a]=Ji-this.encodeTableSeq.length,this.encodeTableSeq.push(n));for(var s=1;s=0)this._setEncodeChar(o,l),a=!0;else if(o<=hi){var d=hi-o;if(!n[d]){var u=l<<8>>>0;this._fillEncodeTable(d,u,r)?a=!0:n[d]=!0}}else o<=Ji&&(this._setEncodeSequence(this.decodeTableSeq[Ji-o],l),a=!0)}return a};function P8(t,e){this.leadSurrogate=-1,this.seqObj=void 0,this.encodeTable=e.encodeTable,this.encodeTableSeq=e.encodeTableSeq,this.defaultCharSingleByte=e.defCharSB,this.gb18030=e.gb18030}P8.prototype.write=function(t){for(var e=N7.alloc(t.length*(this.gb18030?4:3)),r=this.leadSurrogate,i=this.seqObj,a=-1,n=0,s=0;;){if(a===-1){if(n==t.length)break;var o=t.charCodeAt(n++)}else{var o=a;a=-1}if(55296<=o&&o<57344)if(o<56320)if(r===-1){r=o;continue}else r=o,o=Ur;else r!==-1?(o=65536+(r-55296)*1024+(o-56320),r=-1):o=Ur;else r!==-1&&(a=o,o=Ur,r=-1);var l=Ur;if(i!==void 0&&o!=Ur){var d=i[o];if(typeof d=="object"){i=d;continue}else typeof d=="number"?l=d:d==null&&(d=i[Zp],d!==void 0&&(l=d,a=o));i=void 0}else if(o>=0){var u=this.encodeTable[o>>8];if(u!==void 0&&(l=u[o&255]),l<=Ji){i=this.encodeTableSeq[Ji-l];continue}if(l==Ur&&this.gb18030){var c=W7(this.gb18030.uChars,o);if(c!=-1){var l=this.gb18030.gbChars[c]+(o-this.gb18030.uChars[c]);e[s++]=129+Math.floor(l/12600),l=l%12600,e[s++]=48+Math.floor(l/1260),l=l%1260,e[s++]=129+Math.floor(l/10),l=l%10,e[s++]=48+l;continue}}}l===Ur&&(l=this.defaultCharSingleByte),l<256?e[s++]=l:l<65536?(e[s++]=l>>8,e[s++]=l&255):l<16777216?(e[s++]=l>>16,e[s++]=l>>8&255,e[s++]=l&255):(e[s++]=l>>>24,e[s++]=l>>>16&255,e[s++]=l>>>8&255,e[s++]=l&255)}return this.seqObj=i,this.leadSurrogate=r,e.slice(0,s)};P8.prototype.end=function(){if(!(this.leadSurrogate===-1&&this.seqObj===void 0)){var t=N7.alloc(10),e=0;if(this.seqObj){var r=this.seqObj[Zp];r!==void 0&&(r<256?t[e++]=r:(t[e++]=r>>8,t[e++]=r&255)),this.seqObj=void 0}return this.leadSurrogate!==-1&&(t[e++]=this.defaultCharSingleByte,this.leadSurrogate=-1),t.slice(0,e)}};P8.prototype.findIdx=W7;function q7(t,e){this.nodeIdx=0,this.prevBytes=[],this.decodeTables=e.decodeTables,this.decodeTableSeq=e.decodeTableSeq,this.defaultCharUnicode=e.defaultCharUnicode,this.gb18030=e.gb18030}q7.prototype.write=function(t){for(var e=N7.alloc(t.length*2),r=this.nodeIdx,i=this.prevBytes,a=this.prevBytes.length,n=-this.prevBytes.length,s,o=0,l=0;o=0?t[o]:i[o+a],s=this.decodeTables[r][d];if(!(s>=0))if(s===Ur)s=this.defaultCharUnicode.charCodeAt(0),o=n;else if(s===DT){if(o>=3)var u=(t[o-3]-129)*12600+(t[o-2]-48)*1260+(t[o-1]-129)*10+(d-48);else var u=(i[o-3+a]-129)*12600+((o-2>=0?t[o-2]:i[o-2+a])-48)*1260+((o-1>=0?t[o-1]:i[o-1+a])-129)*10+(d-48);var c=W7(this.gb18030.gbChars,u);s=this.gb18030.uChars[c]+u-this.gb18030.gbChars[c]}else if(s<=hi){r=hi-s;continue}else if(s<=Ji){for(var w=this.decodeTableSeq[Ji-s],k=0;k>8;s=w[w.length-1]}else throw new Error("iconv-lite internal error: invalid decoding table value "+s+" at "+r+"/"+d);if(s>=65536){s-=65536;var z=55296|s>>10;e[l++]=z&255,e[l++]=z>>8,s=56320|s&1023}e[l++]=s&255,e[l++]=s>>8,r=0,n=o+1}return this.nodeIdx=r,this.prevBytes=n>=0?Array.prototype.slice.call(t,n):i.slice(n+a).concat(Array.prototype.slice.call(t)),e.slice(0,l).toString("ucs2")};q7.prototype.end=function(){for(var t="";this.prevBytes.length>0;){t+=this.defaultCharUnicode;var e=this.prevBytes.slice(1);this.prevBytes=[],this.nodeIdx=0,e.length>0&&(t+=this.write(e))}return this.prevBytes=[],this.nodeIdx=0,t};function W7(t,e){if(t[0]>e)return-1;for(var r=0,i=t.length;r>1);t[a]<=e?r=a:i=a}return r}});var CT=b(($8e,HG)=>{HG.exports=[["0","\0",128],["a1","\uFF61",62],["8140","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7"],["8180","\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["81b8","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["81c8","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["81da","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["81f0","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["81fc","\u25EF"],["824f","\uFF10",9],["8260","\uFF21",25],["8281","\uFF41",25],["829f","\u3041",82],["8340","\u30A1",62],["8380","\u30E0",22],["839f","\u0391",16,"\u03A3",6],["83bf","\u03B1",16,"\u03C3",6],["8440","\u0410",5,"\u0401\u0416",25],["8470","\u0430",5,"\u0451\u0436",7],["8480","\u043E",17],["849f","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["8740","\u2460",19,"\u2160",9],["875f","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["877e","\u337B"],["8780","\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["889f","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["8940","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186"],["8980","\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["8a40","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B"],["8a80","\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["8b40","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551"],["8b80","\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["8c40","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8"],["8c80","\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["8d40","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D"],["8d80","\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["8e40","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62"],["8e80","\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["8f40","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3"],["8f80","\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["9040","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8"],["9080","\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["9140","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB"],["9180","\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["9240","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4"],["9280","\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["9340","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC"],["9380","\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["9440","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885"],["9480","\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["9540","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577"],["9580","\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["9640","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6"],["9680","\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["9740","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32"],["9780","\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["9840","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["989f","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["9940","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED"],["9980","\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["9a40","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638"],["9a80","\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["9b40","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80"],["9b80","\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["9c40","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060"],["9c80","\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["9d40","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B"],["9d80","\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["9e40","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E"],["9e80","\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["9f40","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF"],["9f80","\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["e040","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD"],["e080","\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e140","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF"],["e180","\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e240","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0"],["e280","\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e340","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37"],["e380","\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e440","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264"],["e480","\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e540","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC"],["e580","\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["e640","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7"],["e680","\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["e740","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C"],["e780","\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["e840","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599"],["e880","\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["e940","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43"],["e980","\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["ea40","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF"],["ea80","\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0\u582F\u69C7\u9059\u7464\u51DC\u7199"],["ed40","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F"],["ed80","\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["ee40","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559"],["ee80","\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["eeef","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["f040","\uE000",62],["f080","\uE03F",124],["f140","\uE0BC",62],["f180","\uE0FB",124],["f240","\uE178",62],["f280","\uE1B7",124],["f340","\uE234",62],["f380","\uE273",124],["f440","\uE2F0",62],["f480","\uE32F",124],["f540","\uE3AC",62],["f580","\uE3EB",124],["f640","\uE468",62],["f680","\uE4A7",124],["f740","\uE524",62],["f780","\uE563",124],["f840","\uE5E0",62],["f880","\uE61F",124],["f940","\uE69C"],["fa40","\u2170",9,"\u2160",9,"\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u2235\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A"],["fa80","\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F"],["fb40","\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19"],["fb80","\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9"],["fc40","\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"]]});var OT=b((G8e,$G)=>{$G.exports=[["0","\0",127],["8ea1","\uFF61",62],["a1a1","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7"],["a2a1","\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["a2ba","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["a2ca","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["a2dc","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["a2f2","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["a2fe","\u25EF"],["a3b0","\uFF10",9],["a3c1","\uFF21",25],["a3e1","\uFF41",25],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a8a1","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["ada1","\u2460",19,"\u2160",9],["adc0","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["addf","\u337B\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["b0a1","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["b1a1","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC"],["b2a1","\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["b3a1","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431"],["b4a1","\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["b5a1","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC"],["b6a1","\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["b7a1","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372"],["b8a1","\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["b9a1","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC"],["baa1","\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["bba1","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642"],["bca1","\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["bda1","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F"],["bea1","\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["bfa1","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE"],["c0a1","\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["c1a1","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E"],["c2a1","\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["c3a1","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5"],["c4a1","\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["c5a1","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230"],["c6a1","\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["c7a1","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6"],["c8a1","\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["c9a1","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D"],["caa1","\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["cba1","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80"],["cca1","\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["cda1","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483"],["cea1","\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["cfa1","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["d0a1","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["d1a1","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8"],["d2a1","\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["d3a1","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709"],["d4a1","\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["d5a1","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53"],["d6a1","\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["d7a1","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A"],["d8a1","\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["d9a1","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC"],["daa1","\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["dba1","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD"],["dca1","\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["dda1","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE"],["dea1","\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["dfa1","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC"],["e0a1","\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e1a1","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670"],["e2a1","\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e3a1","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50"],["e4a1","\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e5a1","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A"],["e6a1","\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e7a1","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9"],["e8a1","\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e9a1","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759"],["eaa1","\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["eba1","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B"],["eca1","\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["eda1","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8"],["eea1","\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["efa1","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E"],["f0a1","\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["f1a1","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7"],["f2a1","\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["f3a1","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0"],["f4a1","\u582F\u69C7\u9059\u7464\u51DC\u7199"],["f9a1","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7"],["faa1","\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["fba1","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA"],["fca1","\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["fcf1","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["8fa2af","\u02D8\u02C7\xB8\u02D9\u02DD\xAF\u02DB\u02DA\uFF5E\u0384\u0385"],["8fa2c2","\xA1\xA6\xBF"],["8fa2eb","\xBA\xAA\xA9\xAE\u2122\xA4\u2116"],["8fa6e1","\u0386\u0388\u0389\u038A\u03AA"],["8fa6e7","\u038C"],["8fa6e9","\u038E\u03AB"],["8fa6ec","\u038F"],["8fa6f1","\u03AC\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03C2\u03CD\u03CB\u03B0\u03CE"],["8fa7c2","\u0402",10,"\u040E\u040F"],["8fa7f2","\u0452",10,"\u045E\u045F"],["8fa9a1","\xC6\u0110"],["8fa9a4","\u0126"],["8fa9a6","\u0132"],["8fa9a8","\u0141\u013F"],["8fa9ab","\u014A\xD8\u0152"],["8fa9af","\u0166\xDE"],["8fa9c1","\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0142\u0140\u0149\u014B\xF8\u0153\xDF\u0167\xFE"],["8faaa1","\xC1\xC0\xC4\xC2\u0102\u01CD\u0100\u0104\xC5\xC3\u0106\u0108\u010C\xC7\u010A\u010E\xC9\xC8\xCB\xCA\u011A\u0116\u0112\u0118"],["8faaba","\u011C\u011E\u0122\u0120\u0124\xCD\xCC\xCF\xCE\u01CF\u0130\u012A\u012E\u0128\u0134\u0136\u0139\u013D\u013B\u0143\u0147\u0145\xD1\xD3\xD2\xD6\xD4\u01D1\u0150\u014C\xD5\u0154\u0158\u0156\u015A\u015C\u0160\u015E\u0164\u0162\xDA\xD9\xDC\xDB\u016C\u01D3\u0170\u016A\u0172\u016E\u0168\u01D7\u01DB\u01D9\u01D5\u0174\xDD\u0178\u0176\u0179\u017D\u017B"],["8faba1","\xE1\xE0\xE4\xE2\u0103\u01CE\u0101\u0105\xE5\xE3\u0107\u0109\u010D\xE7\u010B\u010F\xE9\xE8\xEB\xEA\u011B\u0117\u0113\u0119\u01F5\u011D\u011F"],["8fabbd","\u0121\u0125\xED\xEC\xEF\xEE\u01D0"],["8fabc5","\u012B\u012F\u0129\u0135\u0137\u013A\u013E\u013C\u0144\u0148\u0146\xF1\xF3\xF2\xF6\xF4\u01D2\u0151\u014D\xF5\u0155\u0159\u0157\u015B\u015D\u0161\u015F\u0165\u0163\xFA\xF9\xFC\xFB\u016D\u01D4\u0171\u016B\u0173\u016F\u0169\u01D8\u01DC\u01DA\u01D6\u0175\xFD\xFF\u0177\u017A\u017E\u017C"],["8fb0a1","\u4E02\u4E04\u4E05\u4E0C\u4E12\u4E1F\u4E23\u4E24\u4E28\u4E2B\u4E2E\u4E2F\u4E30\u4E35\u4E40\u4E41\u4E44\u4E47\u4E51\u4E5A\u4E5C\u4E63\u4E68\u4E69\u4E74\u4E75\u4E79\u4E7F\u4E8D\u4E96\u4E97\u4E9D\u4EAF\u4EB9\u4EC3\u4ED0\u4EDA\u4EDB\u4EE0\u4EE1\u4EE2\u4EE8\u4EEF\u4EF1\u4EF3\u4EF5\u4EFD\u4EFE\u4EFF\u4F00\u4F02\u4F03\u4F08\u4F0B\u4F0C\u4F12\u4F15\u4F16\u4F17\u4F19\u4F2E\u4F31\u4F60\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E\u4F40\u4F42\u4F48\u4F49\u4F4B\u4F4C\u4F52\u4F54\u4F56\u4F58\u4F5F\u4F63\u4F6A\u4F6C\u4F6E\u4F71\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F7E\u4F81\u4F82\u4F84"],["8fb1a1","\u4F85\u4F89\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F94\u4F97\u4F99\u4F9A\u4F9E\u4F9F\u4FB2\u4FB7\u4FB9\u4FBB\u4FBC\u4FBD\u4FBE\u4FC0\u4FC1\u4FC5\u4FC6\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FCF\u4FD2\u4FDC\u4FE0\u4FE2\u4FF0\u4FF2\u4FFC\u4FFD\u4FFF\u5000\u5001\u5004\u5007\u500A\u500C\u500E\u5010\u5013\u5017\u5018\u501B\u501C\u501D\u501E\u5022\u5027\u502E\u5030\u5032\u5033\u5035\u5040\u5041\u5042\u5045\u5046\u504A\u504C\u504E\u5051\u5052\u5053\u5057\u5059\u505F\u5060\u5062\u5063\u5066\u5067\u506A\u506D\u5070\u5071\u503B\u5081\u5083\u5084\u5086\u508A\u508E\u508F\u5090"],["8fb2a1","\u5092\u5093\u5094\u5096\u509B\u509C\u509E",4,"\u50AA\u50AF\u50B0\u50B9\u50BA\u50BD\u50C0\u50C3\u50C4\u50C7\u50CC\u50CE\u50D0\u50D3\u50D4\u50D8\u50DC\u50DD\u50DF\u50E2\u50E4\u50E6\u50E8\u50E9\u50EF\u50F1\u50F6\u50FA\u50FE\u5103\u5106\u5107\u5108\u510B\u510C\u510D\u510E\u50F2\u5110\u5117\u5119\u511B\u511C\u511D\u511E\u5123\u5127\u5128\u512C\u512D\u512F\u5131\u5133\u5134\u5135\u5138\u5139\u5142\u514A\u514F\u5153\u5155\u5157\u5158\u515F\u5164\u5166\u517E\u5183\u5184\u518B\u518E\u5198\u519D\u51A1\u51A3\u51AD\u51B8\u51BA\u51BC\u51BE\u51BF\u51C2"],["8fb3a1","\u51C8\u51CF\u51D1\u51D2\u51D3\u51D5\u51D8\u51DE\u51E2\u51E5\u51EE\u51F2\u51F3\u51F4\u51F7\u5201\u5202\u5205\u5212\u5213\u5215\u5216\u5218\u5222\u5228\u5231\u5232\u5235\u523C\u5245\u5249\u5255\u5257\u5258\u525A\u525C\u525F\u5260\u5261\u5266\u526E\u5277\u5278\u5279\u5280\u5282\u5285\u528A\u528C\u5293\u5295\u5296\u5297\u5298\u529A\u529C\u52A4\u52A5\u52A6\u52A7\u52AF\u52B0\u52B6\u52B7\u52B8\u52BA\u52BB\u52BD\u52C0\u52C4\u52C6\u52C8\u52CC\u52CF\u52D1\u52D4\u52D6\u52DB\u52DC\u52E1\u52E5\u52E8\u52E9\u52EA\u52EC\u52F0\u52F1\u52F4\u52F6\u52F7\u5300\u5303\u530A\u530B"],["8fb4a1","\u530C\u5311\u5313\u5318\u531B\u531C\u531E\u531F\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u5330\u5332\u5335\u533C\u533D\u533E\u5342\u534C\u534B\u5359\u535B\u5361\u5363\u5365\u536C\u536D\u5372\u5379\u537E\u5383\u5387\u5388\u538E\u5393\u5394\u5399\u539D\u53A1\u53A4\u53AA\u53AB\u53AF\u53B2\u53B4\u53B5\u53B7\u53B8\u53BA\u53BD\u53C0\u53C5\u53CF\u53D2\u53D3\u53D5\u53DA\u53DD\u53DE\u53E0\u53E6\u53E7\u53F5\u5402\u5413\u541A\u5421\u5427\u5428\u542A\u542F\u5431\u5434\u5435\u5443\u5444\u5447\u544D\u544F\u545E\u5462\u5464\u5466\u5467\u5469\u546B\u546D\u546E\u5474\u547F"],["8fb5a1","\u5481\u5483\u5485\u5488\u5489\u548D\u5491\u5495\u5496\u549C\u549F\u54A1\u54A6\u54A7\u54A9\u54AA\u54AD\u54AE\u54B1\u54B7\u54B9\u54BA\u54BB\u54BF\u54C6\u54CA\u54CD\u54CE\u54E0\u54EA\u54EC\u54EF\u54F6\u54FC\u54FE\u54FF\u5500\u5501\u5505\u5508\u5509\u550C\u550D\u550E\u5515\u552A\u552B\u5532\u5535\u5536\u553B\u553C\u553D\u5541\u5547\u5549\u554A\u554D\u5550\u5551\u5558\u555A\u555B\u555E\u5560\u5561\u5564\u5566\u557F\u5581\u5582\u5586\u5588\u558E\u558F\u5591\u5592\u5593\u5594\u5597\u55A3\u55A4\u55AD\u55B2\u55BF\u55C1\u55C3\u55C6\u55C9\u55CB\u55CC\u55CE\u55D1\u55D2"],["8fb6a1","\u55D3\u55D7\u55D8\u55DB\u55DE\u55E2\u55E9\u55F6\u55FF\u5605\u5608\u560A\u560D",5,"\u5619\u562C\u5630\u5633\u5635\u5637\u5639\u563B\u563C\u563D\u563F\u5640\u5641\u5643\u5644\u5646\u5649\u564B\u564D\u564F\u5654\u565E\u5660\u5661\u5662\u5663\u5666\u5669\u566D\u566F\u5671\u5672\u5675\u5684\u5685\u5688\u568B\u568C\u5695\u5699\u569A\u569D\u569E\u569F\u56A6\u56A7\u56A8\u56A9\u56AB\u56AC\u56AD\u56B1\u56B3\u56B7\u56BE\u56C5\u56C9\u56CA\u56CB\u56CF\u56D0\u56CC\u56CD\u56D9\u56DC\u56DD\u56DF\u56E1\u56E4",4,"\u56F1\u56EB\u56ED"],["8fb7a1","\u56F6\u56F7\u5701\u5702\u5707\u570A\u570C\u5711\u5715\u571A\u571B\u571D\u5720\u5722\u5723\u5724\u5725\u5729\u572A\u572C\u572E\u572F\u5733\u5734\u573D\u573E\u573F\u5745\u5746\u574C\u574D\u5752\u5762\u5765\u5767\u5768\u576B\u576D",4,"\u5773\u5774\u5775\u5777\u5779\u577A\u577B\u577C\u577E\u5781\u5783\u578C\u5794\u5797\u5799\u579A\u579C\u579D\u579E\u579F\u57A1\u5795\u57A7\u57A8\u57A9\u57AC\u57B8\u57BD\u57C7\u57C8\u57CC\u57CF\u57D5\u57DD\u57DE\u57E4\u57E6\u57E7\u57E9\u57ED\u57F0\u57F5\u57F6\u57F8\u57FD\u57FE\u57FF\u5803\u5804\u5808\u5809\u57E1"],["8fb8a1","\u580C\u580D\u581B\u581E\u581F\u5820\u5826\u5827\u582D\u5832\u5839\u583F\u5849\u584C\u584D\u584F\u5850\u5855\u585F\u5861\u5864\u5867\u5868\u5878\u587C\u587F\u5880\u5881\u5887\u5888\u5889\u588A\u588C\u588D\u588F\u5890\u5894\u5896\u589D\u58A0\u58A1\u58A2\u58A6\u58A9\u58B1\u58B2\u58C4\u58BC\u58C2\u58C8\u58CD\u58CE\u58D0\u58D2\u58D4\u58D6\u58DA\u58DD\u58E1\u58E2\u58E9\u58F3\u5905\u5906\u590B\u590C\u5912\u5913\u5914\u8641\u591D\u5921\u5923\u5924\u5928\u592F\u5930\u5933\u5935\u5936\u593F\u5943\u5946\u5952\u5953\u5959\u595B\u595D\u595E\u595F\u5961\u5963\u596B\u596D"],["8fb9a1","\u596F\u5972\u5975\u5976\u5979\u597B\u597C\u598B\u598C\u598E\u5992\u5995\u5997\u599F\u59A4\u59A7\u59AD\u59AE\u59AF\u59B0\u59B3\u59B7\u59BA\u59BC\u59C1\u59C3\u59C4\u59C8\u59CA\u59CD\u59D2\u59DD\u59DE\u59DF\u59E3\u59E4\u59E7\u59EE\u59EF\u59F1\u59F2\u59F4\u59F7\u5A00\u5A04\u5A0C\u5A0D\u5A0E\u5A12\u5A13\u5A1E\u5A23\u5A24\u5A27\u5A28\u5A2A\u5A2D\u5A30\u5A44\u5A45\u5A47\u5A48\u5A4C\u5A50\u5A55\u5A5E\u5A63\u5A65\u5A67\u5A6D\u5A77\u5A7A\u5A7B\u5A7E\u5A8B\u5A90\u5A93\u5A96\u5A99\u5A9C\u5A9E\u5A9F\u5AA0\u5AA2\u5AA7\u5AAC\u5AB1\u5AB2\u5AB3\u5AB5\u5AB8\u5ABA\u5ABB\u5ABF"],["8fbaa1","\u5AC4\u5AC6\u5AC8\u5ACF\u5ADA\u5ADC\u5AE0\u5AE5\u5AEA\u5AEE\u5AF5\u5AF6\u5AFD\u5B00\u5B01\u5B08\u5B17\u5B34\u5B19\u5B1B\u5B1D\u5B21\u5B25\u5B2D\u5B38\u5B41\u5B4B\u5B4C\u5B52\u5B56\u5B5E\u5B68\u5B6E\u5B6F\u5B7C\u5B7D\u5B7E\u5B7F\u5B81\u5B84\u5B86\u5B8A\u5B8E\u5B90\u5B91\u5B93\u5B94\u5B96\u5BA8\u5BA9\u5BAC\u5BAD\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBC\u5BC0\u5BC1\u5BCD\u5BCF\u5BD6",4,"\u5BE0\u5BEF\u5BF1\u5BF4\u5BFD\u5C0C\u5C17\u5C1E\u5C1F\u5C23\u5C26\u5C29\u5C2B\u5C2C\u5C2E\u5C30\u5C32\u5C35\u5C36\u5C59\u5C5A\u5C5C\u5C62\u5C63\u5C67\u5C68\u5C69"],["8fbba1","\u5C6D\u5C70\u5C74\u5C75\u5C7A\u5C7B\u5C7C\u5C7D\u5C87\u5C88\u5C8A\u5C8F\u5C92\u5C9D\u5C9F\u5CA0\u5CA2\u5CA3\u5CA6\u5CAA\u5CB2\u5CB4\u5CB5\u5CBA\u5CC9\u5CCB\u5CD2\u5CDD\u5CD7\u5CEE\u5CF1\u5CF2\u5CF4\u5D01\u5D06\u5D0D\u5D12\u5D2B\u5D23\u5D24\u5D26\u5D27\u5D31\u5D34\u5D39\u5D3D\u5D3F\u5D42\u5D43\u5D46\u5D48\u5D55\u5D51\u5D59\u5D4A\u5D5F\u5D60\u5D61\u5D62\u5D64\u5D6A\u5D6D\u5D70\u5D79\u5D7A\u5D7E\u5D7F\u5D81\u5D83\u5D88\u5D8A\u5D92\u5D93\u5D94\u5D95\u5D99\u5D9B\u5D9F\u5DA0\u5DA7\u5DAB\u5DB0\u5DB4\u5DB8\u5DB9\u5DC3\u5DC7\u5DCB\u5DD0\u5DCE\u5DD8\u5DD9\u5DE0\u5DE4"],["8fbca1","\u5DE9\u5DF8\u5DF9\u5E00\u5E07\u5E0D\u5E12\u5E14\u5E15\u5E18\u5E1F\u5E20\u5E2E\u5E28\u5E32\u5E35\u5E3E\u5E4B\u5E50\u5E49\u5E51\u5E56\u5E58\u5E5B\u5E5C\u5E5E\u5E68\u5E6A",4,"\u5E70\u5E80\u5E8B\u5E8E\u5EA2\u5EA4\u5EA5\u5EA8\u5EAA\u5EAC\u5EB1\u5EB3\u5EBD\u5EBE\u5EBF\u5EC6\u5ECC\u5ECB\u5ECE\u5ED1\u5ED2\u5ED4\u5ED5\u5EDC\u5EDE\u5EE5\u5EEB\u5F02\u5F06\u5F07\u5F08\u5F0E\u5F19\u5F1C\u5F1D\u5F21\u5F22\u5F23\u5F24\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F34\u5F36\u5F3B\u5F3D\u5F3F\u5F40\u5F44\u5F45\u5F47\u5F4D\u5F50\u5F54\u5F58\u5F5B\u5F60\u5F63\u5F64\u5F67"],["8fbda1","\u5F6F\u5F72\u5F74\u5F75\u5F78\u5F7A\u5F7D\u5F7E\u5F89\u5F8D\u5F8F\u5F96\u5F9C\u5F9D\u5FA2\u5FA7\u5FAB\u5FA4\u5FAC\u5FAF\u5FB0\u5FB1\u5FB8\u5FC4\u5FC7\u5FC8\u5FC9\u5FCB\u5FD0",4,"\u5FDE\u5FE1\u5FE2\u5FE8\u5FE9\u5FEA\u5FEC\u5FED\u5FEE\u5FEF\u5FF2\u5FF3\u5FF6\u5FFA\u5FFC\u6007\u600A\u600D\u6013\u6014\u6017\u6018\u601A\u601F\u6024\u602D\u6033\u6035\u6040\u6047\u6048\u6049\u604C\u6051\u6054\u6056\u6057\u605D\u6061\u6067\u6071\u607E\u607F\u6082\u6086\u6088\u608A\u608E\u6091\u6093\u6095\u6098\u609D\u609E\u60A2\u60A4\u60A5\u60A8\u60B0\u60B1\u60B7"],["8fbea1","\u60BB\u60BE\u60C2\u60C4\u60C8\u60C9\u60CA\u60CB\u60CE\u60CF\u60D4\u60D5\u60D9\u60DB\u60DD\u60DE\u60E2\u60E5\u60F2\u60F5\u60F8\u60FC\u60FD\u6102\u6107\u610A\u610C\u6110",4,"\u6116\u6117\u6119\u611C\u611E\u6122\u612A\u612B\u6130\u6131\u6135\u6136\u6137\u6139\u6141\u6145\u6146\u6149\u615E\u6160\u616C\u6172\u6178\u617B\u617C\u617F\u6180\u6181\u6183\u6184\u618B\u618D\u6192\u6193\u6197\u6198\u619C\u619D\u619F\u61A0\u61A5\u61A8\u61AA\u61AD\u61B8\u61B9\u61BC\u61C0\u61C1\u61C2\u61CE\u61CF\u61D5\u61DC\u61DD\u61DE\u61DF\u61E1\u61E2\u61E7\u61E9\u61E5"],["8fbfa1","\u61EC\u61ED\u61EF\u6201\u6203\u6204\u6207\u6213\u6215\u621C\u6220\u6222\u6223\u6227\u6229\u622B\u6239\u623D\u6242\u6243\u6244\u6246\u624C\u6250\u6251\u6252\u6254\u6256\u625A\u625C\u6264\u626D\u626F\u6273\u627A\u627D\u628D\u628E\u628F\u6290\u62A6\u62A8\u62B3\u62B6\u62B7\u62BA\u62BE\u62BF\u62C4\u62CE\u62D5\u62D6\u62DA\u62EA\u62F2\u62F4\u62FC\u62FD\u6303\u6304\u630A\u630B\u630D\u6310\u6313\u6316\u6318\u6329\u632A\u632D\u6335\u6336\u6339\u633C\u6341\u6342\u6343\u6344\u6346\u634A\u634B\u634E\u6352\u6353\u6354\u6358\u635B\u6365\u6366\u636C\u636D\u6371\u6374\u6375"],["8fc0a1","\u6378\u637C\u637D\u637F\u6382\u6384\u6387\u638A\u6390\u6394\u6395\u6399\u639A\u639E\u63A4\u63A6\u63AD\u63AE\u63AF\u63BD\u63C1\u63C5\u63C8\u63CE\u63D1\u63D3\u63D4\u63D5\u63DC\u63E0\u63E5\u63EA\u63EC\u63F2\u63F3\u63F5\u63F8\u63F9\u6409\u640A\u6410\u6412\u6414\u6418\u641E\u6420\u6422\u6424\u6425\u6429\u642A\u642F\u6430\u6435\u643D\u643F\u644B\u644F\u6451\u6452\u6453\u6454\u645A\u645B\u645C\u645D\u645F\u6460\u6461\u6463\u646D\u6473\u6474\u647B\u647D\u6485\u6487\u648F\u6490\u6491\u6498\u6499\u649B\u649D\u649F\u64A1\u64A3\u64A6\u64A8\u64AC\u64B3\u64BD\u64BE\u64BF"],["8fc1a1","\u64C4\u64C9\u64CA\u64CB\u64CC\u64CE\u64D0\u64D1\u64D5\u64D7\u64E4\u64E5\u64E9\u64EA\u64ED\u64F0\u64F5\u64F7\u64FB\u64FF\u6501\u6504\u6508\u6509\u650A\u650F\u6513\u6514\u6516\u6519\u651B\u651E\u651F\u6522\u6526\u6529\u652E\u6531\u653A\u653C\u653D\u6543\u6547\u6549\u6550\u6552\u6554\u655F\u6560\u6567\u656B\u657A\u657D\u6581\u6585\u658A\u6592\u6595\u6598\u659D\u65A0\u65A3\u65A6\u65AE\u65B2\u65B3\u65B4\u65BF\u65C2\u65C8\u65C9\u65CE\u65D0\u65D4\u65D6\u65D8\u65DF\u65F0\u65F2\u65F4\u65F5\u65F9\u65FE\u65FF\u6600\u6604\u6608\u6609\u660D\u6611\u6612\u6615\u6616\u661D"],["8fc2a1","\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6631\u6633\u6639\u6637\u6640\u6645\u6646\u664A\u664C\u6651\u664E\u6657\u6658\u6659\u665B\u665C\u6660\u6661\u66FB\u666A\u666B\u666C\u667E\u6673\u6675\u667F\u6677\u6678\u6679\u667B\u6680\u667C\u668B\u668C\u668D\u6690\u6692\u6699\u669A\u669B\u669C\u669F\u66A0\u66A4\u66AD\u66B1\u66B2\u66B5\u66BB\u66BF\u66C0\u66C2\u66C3\u66C8\u66CC\u66CE\u66CF\u66D4\u66DB\u66DF\u66E8\u66EB\u66EC\u66EE\u66FA\u6705\u6707\u670E\u6713\u6719\u671C\u6720\u6722\u6733\u673E\u6745\u6747\u6748\u674C\u6754\u6755\u675D"],["8fc3a1","\u6766\u676C\u676E\u6774\u6776\u677B\u6781\u6784\u678E\u678F\u6791\u6793\u6796\u6798\u6799\u679B\u67B0\u67B1\u67B2\u67B5\u67BB\u67BC\u67BD\u67F9\u67C0\u67C2\u67C3\u67C5\u67C8\u67C9\u67D2\u67D7\u67D9\u67DC\u67E1\u67E6\u67F0\u67F2\u67F6\u67F7\u6852\u6814\u6819\u681D\u681F\u6828\u6827\u682C\u682D\u682F\u6830\u6831\u6833\u683B\u683F\u6844\u6845\u684A\u684C\u6855\u6857\u6858\u685B\u686B\u686E",4,"\u6875\u6879\u687A\u687B\u687C\u6882\u6884\u6886\u6888\u6896\u6898\u689A\u689C\u68A1\u68A3\u68A5\u68A9\u68AA\u68AE\u68B2\u68BB\u68C5\u68C8\u68CC\u68CF"],["8fc4a1","\u68D0\u68D1\u68D3\u68D6\u68D9\u68DC\u68DD\u68E5\u68E8\u68EA\u68EB\u68EC\u68ED\u68F0\u68F1\u68F5\u68F6\u68FB\u68FC\u68FD\u6906\u6909\u690A\u6910\u6911\u6913\u6916\u6917\u6931\u6933\u6935\u6938\u693B\u6942\u6945\u6949\u694E\u6957\u695B\u6963\u6964\u6965\u6966\u6968\u6969\u696C\u6970\u6971\u6972\u697A\u697B\u697F\u6980\u698D\u6992\u6996\u6998\u69A1\u69A5\u69A6\u69A8\u69AB\u69AD\u69AF\u69B7\u69B8\u69BA\u69BC\u69C5\u69C8\u69D1\u69D6\u69D7\u69E2\u69E5\u69EE\u69EF\u69F1\u69F3\u69F5\u69FE\u6A00\u6A01\u6A03\u6A0F\u6A11\u6A15\u6A1A\u6A1D\u6A20\u6A24\u6A28\u6A30\u6A32"],["8fc5a1","\u6A34\u6A37\u6A3B\u6A3E\u6A3F\u6A45\u6A46\u6A49\u6A4A\u6A4E\u6A50\u6A51\u6A52\u6A55\u6A56\u6A5B\u6A64\u6A67\u6A6A\u6A71\u6A73\u6A7E\u6A81\u6A83\u6A86\u6A87\u6A89\u6A8B\u6A91\u6A9B\u6A9D\u6A9E\u6A9F\u6AA5\u6AAB\u6AAF\u6AB0\u6AB1\u6AB4\u6ABD\u6ABE\u6ABF\u6AC6\u6AC9\u6AC8\u6ACC\u6AD0\u6AD4\u6AD5\u6AD6\u6ADC\u6ADD\u6AE4\u6AE7\u6AEC\u6AF0\u6AF1\u6AF2\u6AFC\u6AFD\u6B02\u6B03\u6B06\u6B07\u6B09\u6B0F\u6B10\u6B11\u6B17\u6B1B\u6B1E\u6B24\u6B28\u6B2B\u6B2C\u6B2F\u6B35\u6B36\u6B3B\u6B3F\u6B46\u6B4A\u6B4D\u6B52\u6B56\u6B58\u6B5D\u6B60\u6B67\u6B6B\u6B6E\u6B70\u6B75\u6B7D"],["8fc6a1","\u6B7E\u6B82\u6B85\u6B97\u6B9B\u6B9F\u6BA0\u6BA2\u6BA3\u6BA8\u6BA9\u6BAC\u6BAD\u6BAE\u6BB0\u6BB8\u6BB9\u6BBD\u6BBE\u6BC3\u6BC4\u6BC9\u6BCC\u6BD6\u6BDA\u6BE1\u6BE3\u6BE6\u6BE7\u6BEE\u6BF1\u6BF7\u6BF9\u6BFF\u6C02\u6C04\u6C05\u6C09\u6C0D\u6C0E\u6C10\u6C12\u6C19\u6C1F\u6C26\u6C27\u6C28\u6C2C\u6C2E\u6C33\u6C35\u6C36\u6C3A\u6C3B\u6C3F\u6C4A\u6C4B\u6C4D\u6C4F\u6C52\u6C54\u6C59\u6C5B\u6C5C\u6C6B\u6C6D\u6C6F\u6C74\u6C76\u6C78\u6C79\u6C7B\u6C85\u6C86\u6C87\u6C89\u6C94\u6C95\u6C97\u6C98\u6C9C\u6C9F\u6CB0\u6CB2\u6CB4\u6CC2\u6CC6\u6CCD\u6CCF\u6CD0\u6CD1\u6CD2\u6CD4\u6CD6"],["8fc7a1","\u6CDA\u6CDC\u6CE0\u6CE7\u6CE9\u6CEB\u6CEC\u6CEE\u6CF2\u6CF4\u6D04\u6D07\u6D0A\u6D0E\u6D0F\u6D11\u6D13\u6D1A\u6D26\u6D27\u6D28\u6C67\u6D2E\u6D2F\u6D31\u6D39\u6D3C\u6D3F\u6D57\u6D5E\u6D5F\u6D61\u6D65\u6D67\u6D6F\u6D70\u6D7C\u6D82\u6D87\u6D91\u6D92\u6D94\u6D96\u6D97\u6D98\u6DAA\u6DAC\u6DB4\u6DB7\u6DB9\u6DBD\u6DBF\u6DC4\u6DC8\u6DCA\u6DCE\u6DCF\u6DD6\u6DDB\u6DDD\u6DDF\u6DE0\u6DE2\u6DE5\u6DE9\u6DEF\u6DF0\u6DF4\u6DF6\u6DFC\u6E00\u6E04\u6E1E\u6E22\u6E27\u6E32\u6E36\u6E39\u6E3B\u6E3C\u6E44\u6E45\u6E48\u6E49\u6E4B\u6E4F\u6E51\u6E52\u6E53\u6E54\u6E57\u6E5C\u6E5D\u6E5E"],["8fc8a1","\u6E62\u6E63\u6E68\u6E73\u6E7B\u6E7D\u6E8D\u6E93\u6E99\u6EA0\u6EA7\u6EAD\u6EAE\u6EB1\u6EB3\u6EBB\u6EBF\u6EC0\u6EC1\u6EC3\u6EC7\u6EC8\u6ECA\u6ECD\u6ECE\u6ECF\u6EEB\u6EED\u6EEE\u6EF9\u6EFB\u6EFD\u6F04\u6F08\u6F0A\u6F0C\u6F0D\u6F16\u6F18\u6F1A\u6F1B\u6F26\u6F29\u6F2A\u6F2F\u6F30\u6F33\u6F36\u6F3B\u6F3C\u6F2D\u6F4F\u6F51\u6F52\u6F53\u6F57\u6F59\u6F5A\u6F5D\u6F5E\u6F61\u6F62\u6F68\u6F6C\u6F7D\u6F7E\u6F83\u6F87\u6F88\u6F8B\u6F8C\u6F8D\u6F90\u6F92\u6F93\u6F94\u6F96\u6F9A\u6F9F\u6FA0\u6FA5\u6FA6\u6FA7\u6FA8\u6FAE\u6FAF\u6FB0\u6FB5\u6FB6\u6FBC\u6FC5\u6FC7\u6FC8\u6FCA"],["8fc9a1","\u6FDA\u6FDE\u6FE8\u6FE9\u6FF0\u6FF5\u6FF9\u6FFC\u6FFD\u7000\u7005\u7006\u7007\u700D\u7017\u7020\u7023\u702F\u7034\u7037\u7039\u703C\u7043\u7044\u7048\u7049\u704A\u704B\u7054\u7055\u705D\u705E\u704E\u7064\u7065\u706C\u706E\u7075\u7076\u707E\u7081\u7085\u7086\u7094",4,"\u709B\u70A4\u70AB\u70B0\u70B1\u70B4\u70B7\u70CA\u70D1\u70D3\u70D4\u70D5\u70D6\u70D8\u70DC\u70E4\u70FA\u7103",4,"\u710B\u710C\u710F\u711E\u7120\u712B\u712D\u712F\u7130\u7131\u7138\u7141\u7145\u7146\u7147\u714A\u714B\u7150\u7152\u7157\u715A\u715C\u715E\u7160"],["8fcaa1","\u7168\u7179\u7180\u7185\u7187\u718C\u7192\u719A\u719B\u71A0\u71A2\u71AF\u71B0\u71B2\u71B3\u71BA\u71BF\u71C0\u71C1\u71C4\u71CB\u71CC\u71D3\u71D6\u71D9\u71DA\u71DC\u71F8\u71FE\u7200\u7207\u7208\u7209\u7213\u7217\u721A\u721D\u721F\u7224\u722B\u722F\u7234\u7238\u7239\u7241\u7242\u7243\u7245\u724E\u724F\u7250\u7253\u7255\u7256\u725A\u725C\u725E\u7260\u7263\u7268\u726B\u726E\u726F\u7271\u7277\u7278\u727B\u727C\u727F\u7284\u7289\u728D\u728E\u7293\u729B\u72A8\u72AD\u72AE\u72B1\u72B4\u72BE\u72C1\u72C7\u72C9\u72CC\u72D5\u72D6\u72D8\u72DF\u72E5\u72F3\u72F4\u72FA\u72FB"],["8fcba1","\u72FE\u7302\u7304\u7305\u7307\u730B\u730D\u7312\u7313\u7318\u7319\u731E\u7322\u7324\u7327\u7328\u732C\u7331\u7332\u7335\u733A\u733B\u733D\u7343\u734D\u7350\u7352\u7356\u7358\u735D\u735E\u735F\u7360\u7366\u7367\u7369\u736B\u736C\u736E\u736F\u7371\u7377\u7379\u737C\u7380\u7381\u7383\u7385\u7386\u738E\u7390\u7393\u7395\u7397\u7398\u739C\u739E\u739F\u73A0\u73A2\u73A5\u73A6\u73AA\u73AB\u73AD\u73B5\u73B7\u73B9\u73BC\u73BD\u73BF\u73C5\u73C6\u73C9\u73CB\u73CC\u73CF\u73D2\u73D3\u73D6\u73D9\u73DD\u73E1\u73E3\u73E6\u73E7\u73E9\u73F4\u73F5\u73F7\u73F9\u73FA\u73FB\u73FD"],["8fcca1","\u73FF\u7400\u7401\u7404\u7407\u740A\u7411\u741A\u741B\u7424\u7426\u7428",9,"\u7439\u7440\u7443\u7444\u7446\u7447\u744B\u744D\u7451\u7452\u7457\u745D\u7462\u7466\u7467\u7468\u746B\u746D\u746E\u7471\u7472\u7480\u7481\u7485\u7486\u7487\u7489\u748F\u7490\u7491\u7492\u7498\u7499\u749A\u749C\u749F\u74A0\u74A1\u74A3\u74A6\u74A8\u74A9\u74AA\u74AB\u74AE\u74AF\u74B1\u74B2\u74B5\u74B9\u74BB\u74BF\u74C8\u74C9\u74CC\u74D0\u74D3\u74D8\u74DA\u74DB\u74DE\u74DF\u74E4\u74E8\u74EA\u74EB\u74EF\u74F4\u74FA\u74FB\u74FC\u74FF\u7506"],["8fcda1","\u7512\u7516\u7517\u7520\u7521\u7524\u7527\u7529\u752A\u752F\u7536\u7539\u753D\u753E\u753F\u7540\u7543\u7547\u7548\u754E\u7550\u7552\u7557\u755E\u755F\u7561\u756F\u7571\u7579",5,"\u7581\u7585\u7590\u7592\u7593\u7595\u7599\u759C\u75A2\u75A4\u75B4\u75BA\u75BF\u75C0\u75C1\u75C4\u75C6\u75CC\u75CE\u75CF\u75D7\u75DC\u75DF\u75E0\u75E1\u75E4\u75E7\u75EC\u75EE\u75EF\u75F1\u75F9\u7600\u7602\u7603\u7604\u7607\u7608\u760A\u760C\u760F\u7612\u7613\u7615\u7616\u7619\u761B\u761C\u761D\u761E\u7623\u7625\u7626\u7629\u762D\u7632\u7633\u7635\u7638\u7639"],["8fcea1","\u763A\u763C\u764A\u7640\u7641\u7643\u7644\u7645\u7649\u764B\u7655\u7659\u765F\u7664\u7665\u766D\u766E\u766F\u7671\u7674\u7681\u7685\u768C\u768D\u7695\u769B\u769C\u769D\u769F\u76A0\u76A2",6,"\u76AA\u76AD\u76BD\u76C1\u76C5\u76C9\u76CB\u76CC\u76CE\u76D4\u76D9\u76E0\u76E6\u76E8\u76EC\u76F0\u76F1\u76F6\u76F9\u76FC\u7700\u7706\u770A\u770E\u7712\u7714\u7715\u7717\u7719\u771A\u771C\u7722\u7728\u772D\u772E\u772F\u7734\u7735\u7736\u7739\u773D\u773E\u7742\u7745\u7746\u774A\u774D\u774E\u774F\u7752\u7756\u7757\u775C\u775E\u775F\u7760\u7762"],["8fcfa1","\u7764\u7767\u776A\u776C\u7770\u7772\u7773\u7774\u777A\u777D\u7780\u7784\u778C\u778D\u7794\u7795\u7796\u779A\u779F\u77A2\u77A7\u77AA\u77AE\u77AF\u77B1\u77B5\u77BE\u77C3\u77C9\u77D1\u77D2\u77D5\u77D9\u77DE\u77DF\u77E0\u77E4\u77E6\u77EA\u77EC\u77F0\u77F1\u77F4\u77F8\u77FB\u7805\u7806\u7809\u780D\u780E\u7811\u781D\u7821\u7822\u7823\u782D\u782E\u7830\u7835\u7837\u7843\u7844\u7847\u7848\u784C\u784E\u7852\u785C\u785E\u7860\u7861\u7863\u7864\u7868\u786A\u786E\u787A\u787E\u788A\u788F\u7894\u7898\u78A1\u789D\u789E\u789F\u78A4\u78A8\u78AC\u78AD\u78B0\u78B1\u78B2\u78B3"],["8fd0a1","\u78BB\u78BD\u78BF\u78C7\u78C8\u78C9\u78CC\u78CE\u78D2\u78D3\u78D5\u78D6\u78E4\u78DB\u78DF\u78E0\u78E1\u78E6\u78EA\u78F2\u78F3\u7900\u78F6\u78F7\u78FA\u78FB\u78FF\u7906\u790C\u7910\u791A\u791C\u791E\u791F\u7920\u7925\u7927\u7929\u792D\u7931\u7934\u7935\u793B\u793D\u793F\u7944\u7945\u7946\u794A\u794B\u794F\u7951\u7954\u7958\u795B\u795C\u7967\u7969\u796B\u7972\u7979\u797B\u797C\u797E\u798B\u798C\u7991\u7993\u7994\u7995\u7996\u7998\u799B\u799C\u79A1\u79A8\u79A9\u79AB\u79AF\u79B1\u79B4\u79B8\u79BB\u79C2\u79C4\u79C7\u79C8\u79CA\u79CF\u79D4\u79D6\u79DA\u79DD\u79DE"],["8fd1a1","\u79E0\u79E2\u79E5\u79EA\u79EB\u79ED\u79F1\u79F8\u79FC\u7A02\u7A03\u7A07\u7A09\u7A0A\u7A0C\u7A11\u7A15\u7A1B\u7A1E\u7A21\u7A27\u7A2B\u7A2D\u7A2F\u7A30\u7A34\u7A35\u7A38\u7A39\u7A3A\u7A44\u7A45\u7A47\u7A48\u7A4C\u7A55\u7A56\u7A59\u7A5C\u7A5D\u7A5F\u7A60\u7A65\u7A67\u7A6A\u7A6D\u7A75\u7A78\u7A7E\u7A80\u7A82\u7A85\u7A86\u7A8A\u7A8B\u7A90\u7A91\u7A94\u7A9E\u7AA0\u7AA3\u7AAC\u7AB3\u7AB5\u7AB9\u7ABB\u7ABC\u7AC6\u7AC9\u7ACC\u7ACE\u7AD1\u7ADB\u7AE8\u7AE9\u7AEB\u7AEC\u7AF1\u7AF4\u7AFB\u7AFD\u7AFE\u7B07\u7B14\u7B1F\u7B23\u7B27\u7B29\u7B2A\u7B2B\u7B2D\u7B2E\u7B2F\u7B30"],["8fd2a1","\u7B31\u7B34\u7B3D\u7B3F\u7B40\u7B41\u7B47\u7B4E\u7B55\u7B60\u7B64\u7B66\u7B69\u7B6A\u7B6D\u7B6F\u7B72\u7B73\u7B77\u7B84\u7B89\u7B8E\u7B90\u7B91\u7B96\u7B9B\u7B9E\u7BA0\u7BA5\u7BAC\u7BAF\u7BB0\u7BB2\u7BB5\u7BB6\u7BBA\u7BBB\u7BBC\u7BBD\u7BC2\u7BC5\u7BC8\u7BCA\u7BD4\u7BD6\u7BD7\u7BD9\u7BDA\u7BDB\u7BE8\u7BEA\u7BF2\u7BF4\u7BF5\u7BF8\u7BF9\u7BFA\u7BFC\u7BFE\u7C01\u7C02\u7C03\u7C04\u7C06\u7C09\u7C0B\u7C0C\u7C0E\u7C0F\u7C19\u7C1B\u7C20\u7C25\u7C26\u7C28\u7C2C\u7C31\u7C33\u7C34\u7C36\u7C39\u7C3A\u7C46\u7C4A\u7C55\u7C51\u7C52\u7C53\u7C59",5],["8fd3a1","\u7C61\u7C63\u7C67\u7C69\u7C6D\u7C6E\u7C70\u7C72\u7C79\u7C7C\u7C7D\u7C86\u7C87\u7C8F\u7C94\u7C9E\u7CA0\u7CA6\u7CB0\u7CB6\u7CB7\u7CBA\u7CBB\u7CBC\u7CBF\u7CC4\u7CC7\u7CC8\u7CC9\u7CCD\u7CCF\u7CD3\u7CD4\u7CD5\u7CD7\u7CD9\u7CDA\u7CDD\u7CE6\u7CE9\u7CEB\u7CF5\u7D03\u7D07\u7D08\u7D09\u7D0F\u7D11\u7D12\u7D13\u7D16\u7D1D\u7D1E\u7D23\u7D26\u7D2A\u7D2D\u7D31\u7D3C\u7D3D\u7D3E\u7D40\u7D41\u7D47\u7D48\u7D4D\u7D51\u7D53\u7D57\u7D59\u7D5A\u7D5C\u7D5D\u7D65\u7D67\u7D6A\u7D70\u7D78\u7D7A\u7D7B\u7D7F\u7D81\u7D82\u7D83\u7D85\u7D86\u7D88\u7D8B\u7D8C\u7D8D\u7D91\u7D96\u7D97\u7D9D"],["8fd4a1","\u7D9E\u7DA6\u7DA7\u7DAA\u7DB3\u7DB6\u7DB7\u7DB9\u7DC2",4,"\u7DCC\u7DCD\u7DCE\u7DD7\u7DD9\u7E00\u7DE2\u7DE5\u7DE6\u7DEA\u7DEB\u7DED\u7DF1\u7DF5\u7DF6\u7DF9\u7DFA\u7E08\u7E10\u7E11\u7E15\u7E17\u7E1C\u7E1D\u7E20\u7E27\u7E28\u7E2C\u7E2D\u7E2F\u7E33\u7E36\u7E3F\u7E44\u7E45\u7E47\u7E4E\u7E50\u7E52\u7E58\u7E5F\u7E61\u7E62\u7E65\u7E6B\u7E6E\u7E6F\u7E73\u7E78\u7E7E\u7E81\u7E86\u7E87\u7E8A\u7E8D\u7E91\u7E95\u7E98\u7E9A\u7E9D\u7E9E\u7F3C\u7F3B\u7F3D\u7F3E\u7F3F\u7F43\u7F44\u7F47\u7F4F\u7F52\u7F53\u7F5B\u7F5C\u7F5D\u7F61\u7F63\u7F64\u7F65\u7F66\u7F6D"],["8fd5a1","\u7F71\u7F7D\u7F7E\u7F7F\u7F80\u7F8B\u7F8D\u7F8F\u7F90\u7F91\u7F96\u7F97\u7F9C\u7FA1\u7FA2\u7FA6\u7FAA\u7FAD\u7FB4\u7FBC\u7FBF\u7FC0\u7FC3\u7FC8\u7FCE\u7FCF\u7FDB\u7FDF\u7FE3\u7FE5\u7FE8\u7FEC\u7FEE\u7FEF\u7FF2\u7FFA\u7FFD\u7FFE\u7FFF\u8007\u8008\u800A\u800D\u800E\u800F\u8011\u8013\u8014\u8016\u801D\u801E\u801F\u8020\u8024\u8026\u802C\u802E\u8030\u8034\u8035\u8037\u8039\u803A\u803C\u803E\u8040\u8044\u8060\u8064\u8066\u806D\u8071\u8075\u8081\u8088\u808E\u809C\u809E\u80A6\u80A7\u80AB\u80B8\u80B9\u80C8\u80CD\u80CF\u80D2\u80D4\u80D5\u80D7\u80D8\u80E0\u80ED\u80EE"],["8fd6a1","\u80F0\u80F2\u80F3\u80F6\u80F9\u80FA\u80FE\u8103\u810B\u8116\u8117\u8118\u811C\u811E\u8120\u8124\u8127\u812C\u8130\u8135\u813A\u813C\u8145\u8147\u814A\u814C\u8152\u8157\u8160\u8161\u8167\u8168\u8169\u816D\u816F\u8177\u8181\u8190\u8184\u8185\u8186\u818B\u818E\u8196\u8198\u819B\u819E\u81A2\u81AE\u81B2\u81B4\u81BB\u81CB\u81C3\u81C5\u81CA\u81CE\u81CF\u81D5\u81D7\u81DB\u81DD\u81DE\u81E1\u81E4\u81EB\u81EC\u81F0\u81F1\u81F2\u81F5\u81F6\u81F8\u81F9\u81FD\u81FF\u8200\u8203\u820F\u8213\u8214\u8219\u821A\u821D\u8221\u8222\u8228\u8232\u8234\u823A\u8243\u8244\u8245\u8246"],["8fd7a1","\u824B\u824E\u824F\u8251\u8256\u825C\u8260\u8263\u8267\u826D\u8274\u827B\u827D\u827F\u8280\u8281\u8283\u8284\u8287\u8289\u828A\u828E\u8291\u8294\u8296\u8298\u829A\u829B\u82A0\u82A1\u82A3\u82A4\u82A7\u82A8\u82A9\u82AA\u82AE\u82B0\u82B2\u82B4\u82B7\u82BA\u82BC\u82BE\u82BF\u82C6\u82D0\u82D5\u82DA\u82E0\u82E2\u82E4\u82E8\u82EA\u82ED\u82EF\u82F6\u82F7\u82FD\u82FE\u8300\u8301\u8307\u8308\u830A\u830B\u8354\u831B\u831D\u831E\u831F\u8321\u8322\u832C\u832D\u832E\u8330\u8333\u8337\u833A\u833C\u833D\u8342\u8343\u8344\u8347\u834D\u834E\u8351\u8355\u8356\u8357\u8370\u8378"],["8fd8a1","\u837D\u837F\u8380\u8382\u8384\u8386\u838D\u8392\u8394\u8395\u8398\u8399\u839B\u839C\u839D\u83A6\u83A7\u83A9\u83AC\u83BE\u83BF\u83C0\u83C7\u83C9\u83CF\u83D0\u83D1\u83D4\u83DD\u8353\u83E8\u83EA\u83F6\u83F8\u83F9\u83FC\u8401\u8406\u840A\u840F\u8411\u8415\u8419\u83AD\u842F\u8439\u8445\u8447\u8448\u844A\u844D\u844F\u8451\u8452\u8456\u8458\u8459\u845A\u845C\u8460\u8464\u8465\u8467\u846A\u8470\u8473\u8474\u8476\u8478\u847C\u847D\u8481\u8485\u8492\u8493\u8495\u849E\u84A6\u84A8\u84A9\u84AA\u84AF\u84B1\u84B4\u84BA\u84BD\u84BE\u84C0\u84C2\u84C7\u84C8\u84CC\u84CF\u84D3"],["8fd9a1","\u84DC\u84E7\u84EA\u84EF\u84F0\u84F1\u84F2\u84F7\u8532\u84FA\u84FB\u84FD\u8502\u8503\u8507\u850C\u850E\u8510\u851C\u851E\u8522\u8523\u8524\u8525\u8527\u852A\u852B\u852F\u8533\u8534\u8536\u853F\u8546\u854F",4,"\u8556\u8559\u855C",6,"\u8564\u856B\u856F\u8579\u857A\u857B\u857D\u857F\u8581\u8585\u8586\u8589\u858B\u858C\u858F\u8593\u8598\u859D\u859F\u85A0\u85A2\u85A5\u85A7\u85B4\u85B6\u85B7\u85B8\u85BC\u85BD\u85BE\u85BF\u85C2\u85C7\u85CA\u85CB\u85CE\u85AD\u85D8\u85DA\u85DF\u85E0\u85E6\u85E8\u85ED\u85F3\u85F6\u85FC"],["8fdaa1","\u85FF\u8600\u8604\u8605\u860D\u860E\u8610\u8611\u8612\u8618\u8619\u861B\u861E\u8621\u8627\u8629\u8636\u8638\u863A\u863C\u863D\u8640\u8642\u8646\u8652\u8653\u8656\u8657\u8658\u8659\u865D\u8660",4,"\u8669\u866C\u866F\u8675\u8676\u8677\u867A\u868D\u8691\u8696\u8698\u869A\u869C\u86A1\u86A6\u86A7\u86A8\u86AD\u86B1\u86B3\u86B4\u86B5\u86B7\u86B8\u86B9\u86BF\u86C0\u86C1\u86C3\u86C5\u86D1\u86D2\u86D5\u86D7\u86DA\u86DC\u86E0\u86E3\u86E5\u86E7\u8688\u86FA\u86FC\u86FD\u8704\u8705\u8707\u870B\u870E\u870F\u8710\u8713\u8714\u8719\u871E\u871F\u8721\u8723"],["8fdba1","\u8728\u872E\u872F\u8731\u8732\u8739\u873A\u873C\u873D\u873E\u8740\u8743\u8745\u874D\u8758\u875D\u8761\u8764\u8765\u876F\u8771\u8772\u877B\u8783",6,"\u878B\u878C\u8790\u8793\u8795\u8797\u8798\u8799\u879E\u87A0\u87A3\u87A7\u87AC\u87AD\u87AE\u87B1\u87B5\u87BE\u87BF\u87C1\u87C8\u87C9\u87CA\u87CE\u87D5\u87D6\u87D9\u87DA\u87DC\u87DF\u87E2\u87E3\u87E4\u87EA\u87EB\u87ED\u87F1\u87F3\u87F8\u87FA\u87FF\u8801\u8803\u8806\u8809\u880A\u880B\u8810\u8819\u8812\u8813\u8814\u8818\u881A\u881B\u881C\u881E\u881F\u8828\u882D\u882E\u8830\u8832\u8835"],["8fdca1","\u883A\u883C\u8841\u8843\u8845\u8848\u8849\u884A\u884B\u884E\u8851\u8855\u8856\u8858\u885A\u885C\u885F\u8860\u8864\u8869\u8871\u8879\u887B\u8880\u8898\u889A\u889B\u889C\u889F\u88A0\u88A8\u88AA\u88BA\u88BD\u88BE\u88C0\u88CA",4,"\u88D1\u88D2\u88D3\u88DB\u88DE\u88E7\u88EF\u88F0\u88F1\u88F5\u88F7\u8901\u8906\u890D\u890E\u890F\u8915\u8916\u8918\u8919\u891A\u891C\u8920\u8926\u8927\u8928\u8930\u8931\u8932\u8935\u8939\u893A\u893E\u8940\u8942\u8945\u8946\u8949\u894F\u8952\u8957\u895A\u895B\u895C\u8961\u8962\u8963\u896B\u896E\u8970\u8973\u8975\u897A"],["8fdda1","\u897B\u897C\u897D\u8989\u898D\u8990\u8994\u8995\u899B\u899C\u899F\u89A0\u89A5\u89B0\u89B4\u89B5\u89B6\u89B7\u89BC\u89D4",4,"\u89E5\u89E9\u89EB\u89ED\u89F1\u89F3\u89F6\u89F9\u89FD\u89FF\u8A04\u8A05\u8A07\u8A0F\u8A11\u8A12\u8A14\u8A15\u8A1E\u8A20\u8A22\u8A24\u8A26\u8A2B\u8A2C\u8A2F\u8A35\u8A37\u8A3D\u8A3E\u8A40\u8A43\u8A45\u8A47\u8A49\u8A4D\u8A4E\u8A53\u8A56\u8A57\u8A58\u8A5C\u8A5D\u8A61\u8A65\u8A67\u8A75\u8A76\u8A77\u8A79\u8A7A\u8A7B\u8A7E\u8A7F\u8A80\u8A83\u8A86\u8A8B\u8A8F\u8A90\u8A92\u8A96\u8A97\u8A99\u8A9F\u8AA7\u8AA9\u8AAE\u8AAF\u8AB3"],["8fdea1","\u8AB6\u8AB7\u8ABB\u8ABE\u8AC3\u8AC6\u8AC8\u8AC9\u8ACA\u8AD1\u8AD3\u8AD4\u8AD5\u8AD7\u8ADD\u8ADF\u8AEC\u8AF0\u8AF4\u8AF5\u8AF6\u8AFC\u8AFF\u8B05\u8B06\u8B0B\u8B11\u8B1C\u8B1E\u8B1F\u8B0A\u8B2D\u8B30\u8B37\u8B3C\u8B42",4,"\u8B48\u8B52\u8B53\u8B54\u8B59\u8B4D\u8B5E\u8B63\u8B6D\u8B76\u8B78\u8B79\u8B7C\u8B7E\u8B81\u8B84\u8B85\u8B8B\u8B8D\u8B8F\u8B94\u8B95\u8B9C\u8B9E\u8B9F\u8C38\u8C39\u8C3D\u8C3E\u8C45\u8C47\u8C49\u8C4B\u8C4F\u8C51\u8C53\u8C54\u8C57\u8C58\u8C5B\u8C5D\u8C59\u8C63\u8C64\u8C66\u8C68\u8C69\u8C6D\u8C73\u8C75\u8C76\u8C7B\u8C7E\u8C86"],["8fdfa1","\u8C87\u8C8B\u8C90\u8C92\u8C93\u8C99\u8C9B\u8C9C\u8CA4\u8CB9\u8CBA\u8CC5\u8CC6\u8CC9\u8CCB\u8CCF\u8CD6\u8CD5\u8CD9\u8CDD\u8CE1\u8CE8\u8CEC\u8CEF\u8CF0\u8CF2\u8CF5\u8CF7\u8CF8\u8CFE\u8CFF\u8D01\u8D03\u8D09\u8D12\u8D17\u8D1B\u8D65\u8D69\u8D6C\u8D6E\u8D7F\u8D82\u8D84\u8D88\u8D8D\u8D90\u8D91\u8D95\u8D9E\u8D9F\u8DA0\u8DA6\u8DAB\u8DAC\u8DAF\u8DB2\u8DB5\u8DB7\u8DB9\u8DBB\u8DC0\u8DC5\u8DC6\u8DC7\u8DC8\u8DCA\u8DCE\u8DD1\u8DD4\u8DD5\u8DD7\u8DD9\u8DE4\u8DE5\u8DE7\u8DEC\u8DF0\u8DBC\u8DF1\u8DF2\u8DF4\u8DFD\u8E01\u8E04\u8E05\u8E06\u8E0B\u8E11\u8E14\u8E16\u8E20\u8E21\u8E22"],["8fe0a1","\u8E23\u8E26\u8E27\u8E31\u8E33\u8E36\u8E37\u8E38\u8E39\u8E3D\u8E40\u8E41\u8E4B\u8E4D\u8E4E\u8E4F\u8E54\u8E5B\u8E5C\u8E5D\u8E5E\u8E61\u8E62\u8E69\u8E6C\u8E6D\u8E6F\u8E70\u8E71\u8E79\u8E7A\u8E7B\u8E82\u8E83\u8E89\u8E90\u8E92\u8E95\u8E9A\u8E9B\u8E9D\u8E9E\u8EA2\u8EA7\u8EA9\u8EAD\u8EAE\u8EB3\u8EB5\u8EBA\u8EBB\u8EC0\u8EC1\u8EC3\u8EC4\u8EC7\u8ECF\u8ED1\u8ED4\u8EDC\u8EE8\u8EEE\u8EF0\u8EF1\u8EF7\u8EF9\u8EFA\u8EED\u8F00\u8F02\u8F07\u8F08\u8F0F\u8F10\u8F16\u8F17\u8F18\u8F1E\u8F20\u8F21\u8F23\u8F25\u8F27\u8F28\u8F2C\u8F2D\u8F2E\u8F34\u8F35\u8F36\u8F37\u8F3A\u8F40\u8F41"],["8fe1a1","\u8F43\u8F47\u8F4F\u8F51",4,"\u8F58\u8F5D\u8F5E\u8F65\u8F9D\u8FA0\u8FA1\u8FA4\u8FA5\u8FA6\u8FB5\u8FB6\u8FB8\u8FBE\u8FC0\u8FC1\u8FC6\u8FCA\u8FCB\u8FCD\u8FD0\u8FD2\u8FD3\u8FD5\u8FE0\u8FE3\u8FE4\u8FE8\u8FEE\u8FF1\u8FF5\u8FF6\u8FFB\u8FFE\u9002\u9004\u9008\u900C\u9018\u901B\u9028\u9029\u902F\u902A\u902C\u902D\u9033\u9034\u9037\u903F\u9043\u9044\u904C\u905B\u905D\u9062\u9066\u9067\u906C\u9070\u9074\u9079\u9085\u9088\u908B\u908C\u908E\u9090\u9095\u9097\u9098\u9099\u909B\u90A0\u90A1\u90A2\u90A5\u90B0\u90B2\u90B3\u90B4\u90B6\u90BD\u90CC\u90BE\u90C3"],["8fe2a1","\u90C4\u90C5\u90C7\u90C8\u90D5\u90D7\u90D8\u90D9\u90DC\u90DD\u90DF\u90E5\u90D2\u90F6\u90EB\u90EF\u90F0\u90F4\u90FE\u90FF\u9100\u9104\u9105\u9106\u9108\u910D\u9110\u9114\u9116\u9117\u9118\u911A\u911C\u911E\u9120\u9125\u9122\u9123\u9127\u9129\u912E\u912F\u9131\u9134\u9136\u9137\u9139\u913A\u913C\u913D\u9143\u9147\u9148\u914F\u9153\u9157\u9159\u915A\u915B\u9161\u9164\u9167\u916D\u9174\u9179\u917A\u917B\u9181\u9183\u9185\u9186\u918A\u918E\u9191\u9193\u9194\u9195\u9198\u919E\u91A1\u91A6\u91A8\u91AC\u91AD\u91AE\u91B0\u91B1\u91B2\u91B3\u91B6\u91BB\u91BC\u91BD\u91BF"],["8fe3a1","\u91C2\u91C3\u91C5\u91D3\u91D4\u91D7\u91D9\u91DA\u91DE\u91E4\u91E5\u91E9\u91EA\u91EC",5,"\u91F7\u91F9\u91FB\u91FD\u9200\u9201\u9204\u9205\u9206\u9207\u9209\u920A\u920C\u9210\u9212\u9213\u9216\u9218\u921C\u921D\u9223\u9224\u9225\u9226\u9228\u922E\u922F\u9230\u9233\u9235\u9236\u9238\u9239\u923A\u923C\u923E\u9240\u9242\u9243\u9246\u9247\u924A\u924D\u924E\u924F\u9251\u9258\u9259\u925C\u925D\u9260\u9261\u9265\u9267\u9268\u9269\u926E\u926F\u9270\u9275",4,"\u927B\u927C\u927D\u927F\u9288\u9289\u928A\u928D\u928E\u9292\u9297"],["8fe4a1","\u9299\u929F\u92A0\u92A4\u92A5\u92A7\u92A8\u92AB\u92AF\u92B2\u92B6\u92B8\u92BA\u92BB\u92BC\u92BD\u92BF",4,"\u92C5\u92C6\u92C7\u92C8\u92CB\u92CC\u92CD\u92CE\u92D0\u92D3\u92D5\u92D7\u92D8\u92D9\u92DC\u92DD\u92DF\u92E0\u92E1\u92E3\u92E5\u92E7\u92E8\u92EC\u92EE\u92F0\u92F9\u92FB\u92FF\u9300\u9302\u9308\u930D\u9311\u9314\u9315\u931C\u931D\u931E\u931F\u9321\u9324\u9325\u9327\u9329\u932A\u9333\u9334\u9336\u9337\u9347\u9348\u9349\u9350\u9351\u9352\u9355\u9357\u9358\u935A\u935E\u9364\u9365\u9367\u9369\u936A\u936D\u936F\u9370\u9371\u9373\u9374\u9376"],["8fe5a1","\u937A\u937D\u937F\u9380\u9381\u9382\u9388\u938A\u938B\u938D\u938F\u9392\u9395\u9398\u939B\u939E\u93A1\u93A3\u93A4\u93A6\u93A8\u93AB\u93B4\u93B5\u93B6\u93BA\u93A9\u93C1\u93C4\u93C5\u93C6\u93C7\u93C9",4,"\u93D3\u93D9\u93DC\u93DE\u93DF\u93E2\u93E6\u93E7\u93F9\u93F7\u93F8\u93FA\u93FB\u93FD\u9401\u9402\u9404\u9408\u9409\u940D\u940E\u940F\u9415\u9416\u9417\u941F\u942E\u942F\u9431\u9432\u9433\u9434\u943B\u943F\u943D\u9443\u9445\u9448\u944A\u944C\u9455\u9459\u945C\u945F\u9461\u9463\u9468\u946B\u946D\u946E\u946F\u9471\u9472\u9484\u9483\u9578\u9579"],["8fe6a1","\u957E\u9584\u9588\u958C\u958D\u958E\u959D\u959E\u959F\u95A1\u95A6\u95A9\u95AB\u95AC\u95B4\u95B6\u95BA\u95BD\u95BF\u95C6\u95C8\u95C9\u95CB\u95D0\u95D1\u95D2\u95D3\u95D9\u95DA\u95DD\u95DE\u95DF\u95E0\u95E4\u95E6\u961D\u961E\u9622\u9624\u9625\u9626\u962C\u9631\u9633\u9637\u9638\u9639\u963A\u963C\u963D\u9641\u9652\u9654\u9656\u9657\u9658\u9661\u966E\u9674\u967B\u967C\u967E\u967F\u9681\u9682\u9683\u9684\u9689\u9691\u9696\u969A\u969D\u969F\u96A4\u96A5\u96A6\u96A9\u96AE\u96AF\u96B3\u96BA\u96CA\u96D2\u5DB2\u96D8\u96DA\u96DD\u96DE\u96DF\u96E9\u96EF\u96F1\u96FA\u9702"],["8fe7a1","\u9703\u9705\u9709\u971A\u971B\u971D\u9721\u9722\u9723\u9728\u9731\u9733\u9741\u9743\u974A\u974E\u974F\u9755\u9757\u9758\u975A\u975B\u9763\u9767\u976A\u976E\u9773\u9776\u9777\u9778\u977B\u977D\u977F\u9780\u9789\u9795\u9796\u9797\u9799\u979A\u979E\u979F\u97A2\u97AC\u97AE\u97B1\u97B2\u97B5\u97B6\u97B8\u97B9\u97BA\u97BC\u97BE\u97BF\u97C1\u97C4\u97C5\u97C7\u97C9\u97CA\u97CC\u97CD\u97CE\u97D0\u97D1\u97D4\u97D7\u97D8\u97D9\u97DD\u97DE\u97E0\u97DB\u97E1\u97E4\u97EF\u97F1\u97F4\u97F7\u97F8\u97FA\u9807\u980A\u9819\u980D\u980E\u9814\u9816\u981C\u981E\u9820\u9823\u9826"],["8fe8a1","\u982B\u982E\u982F\u9830\u9832\u9833\u9835\u9825\u983E\u9844\u9847\u984A\u9851\u9852\u9853\u9856\u9857\u9859\u985A\u9862\u9863\u9865\u9866\u986A\u986C\u98AB\u98AD\u98AE\u98B0\u98B4\u98B7\u98B8\u98BA\u98BB\u98BF\u98C2\u98C5\u98C8\u98CC\u98E1\u98E3\u98E5\u98E6\u98E7\u98EA\u98F3\u98F6\u9902\u9907\u9908\u9911\u9915\u9916\u9917\u991A\u991B\u991C\u991F\u9922\u9926\u9927\u992B\u9931",4,"\u9939\u993A\u993B\u993C\u9940\u9941\u9946\u9947\u9948\u994D\u994E\u9954\u9958\u9959\u995B\u995C\u995E\u995F\u9960\u999B\u999D\u999F\u99A6\u99B0\u99B1\u99B2\u99B5"],["8fe9a1","\u99B9\u99BA\u99BD\u99BF\u99C3\u99C9\u99D3\u99D4\u99D9\u99DA\u99DC\u99DE\u99E7\u99EA\u99EB\u99EC\u99F0\u99F4\u99F5\u99F9\u99FD\u99FE\u9A02\u9A03\u9A04\u9A0B\u9A0C\u9A10\u9A11\u9A16\u9A1E\u9A20\u9A22\u9A23\u9A24\u9A27\u9A2D\u9A2E\u9A33\u9A35\u9A36\u9A38\u9A47\u9A41\u9A44\u9A4A\u9A4B\u9A4C\u9A4E\u9A51\u9A54\u9A56\u9A5D\u9AAA\u9AAC\u9AAE\u9AAF\u9AB2\u9AB4\u9AB5\u9AB6\u9AB9\u9ABB\u9ABE\u9ABF\u9AC1\u9AC3\u9AC6\u9AC8\u9ACE\u9AD0\u9AD2\u9AD5\u9AD6\u9AD7\u9ADB\u9ADC\u9AE0\u9AE4\u9AE5\u9AE7\u9AE9\u9AEC\u9AF2\u9AF3\u9AF5\u9AF9\u9AFA\u9AFD\u9AFF",4],["8feaa1","\u9B04\u9B05\u9B08\u9B09\u9B0B\u9B0C\u9B0D\u9B0E\u9B10\u9B12\u9B16\u9B19\u9B1B\u9B1C\u9B20\u9B26\u9B2B\u9B2D\u9B33\u9B34\u9B35\u9B37\u9B39\u9B3A\u9B3D\u9B48\u9B4B\u9B4C\u9B55\u9B56\u9B57\u9B5B\u9B5E\u9B61\u9B63\u9B65\u9B66\u9B68\u9B6A",4,"\u9B73\u9B75\u9B77\u9B78\u9B79\u9B7F\u9B80\u9B84\u9B85\u9B86\u9B87\u9B89\u9B8A\u9B8B\u9B8D\u9B8F\u9B90\u9B94\u9B9A\u9B9D\u9B9E\u9BA6\u9BA7\u9BA9\u9BAC\u9BB0\u9BB1\u9BB2\u9BB7\u9BB8\u9BBB\u9BBC\u9BBE\u9BBF\u9BC1\u9BC7\u9BC8\u9BCE\u9BD0\u9BD7\u9BD8\u9BDD\u9BDF\u9BE5\u9BE7\u9BEA\u9BEB\u9BEF\u9BF3\u9BF7\u9BF8"],["8feba1","\u9BF9\u9BFA\u9BFD\u9BFF\u9C00\u9C02\u9C0B\u9C0F\u9C11\u9C16\u9C18\u9C19\u9C1A\u9C1C\u9C1E\u9C22\u9C23\u9C26",4,"\u9C31\u9C35\u9C36\u9C37\u9C3D\u9C41\u9C43\u9C44\u9C45\u9C49\u9C4A\u9C4E\u9C4F\u9C50\u9C53\u9C54\u9C56\u9C58\u9C5B\u9C5D\u9C5E\u9C5F\u9C63\u9C69\u9C6A\u9C5C\u9C6B\u9C68\u9C6E\u9C70\u9C72\u9C75\u9C77\u9C7B\u9CE6\u9CF2\u9CF7\u9CF9\u9D0B\u9D02\u9D11\u9D17\u9D18\u9D1C\u9D1D\u9D1E\u9D2F\u9D30\u9D32\u9D33\u9D34\u9D3A\u9D3C\u9D45\u9D3D\u9D42\u9D43\u9D47\u9D4A\u9D53\u9D54\u9D5F\u9D63\u9D62\u9D65\u9D69\u9D6A\u9D6B\u9D70\u9D76\u9D77\u9D7B"],["8feca1","\u9D7C\u9D7E\u9D83\u9D84\u9D86\u9D8A\u9D8D\u9D8E\u9D92\u9D93\u9D95\u9D96\u9D97\u9D98\u9DA1\u9DAA\u9DAC\u9DAE\u9DB1\u9DB5\u9DB9\u9DBC\u9DBF\u9DC3\u9DC7\u9DC9\u9DCA\u9DD4\u9DD5\u9DD6\u9DD7\u9DDA\u9DDE\u9DDF\u9DE0\u9DE5\u9DE7\u9DE9\u9DEB\u9DEE\u9DF0\u9DF3\u9DF4\u9DFE\u9E0A\u9E02\u9E07\u9E0E\u9E10\u9E11\u9E12\u9E15\u9E16\u9E19\u9E1C\u9E1D\u9E7A\u9E7B\u9E7C\u9E80\u9E82\u9E83\u9E84\u9E85\u9E87\u9E8E\u9E8F\u9E96\u9E98\u9E9B\u9E9E\u9EA4\u9EA8\u9EAC\u9EAE\u9EAF\u9EB0\u9EB3\u9EB4\u9EB5\u9EC6\u9EC8\u9ECB\u9ED5\u9EDF\u9EE4\u9EE7\u9EEC\u9EED\u9EEE\u9EF0\u9EF1\u9EF2\u9EF5"],["8feda1","\u9EF8\u9EFF\u9F02\u9F03\u9F09\u9F0F\u9F10\u9F11\u9F12\u9F14\u9F16\u9F17\u9F19\u9F1A\u9F1B\u9F1F\u9F22\u9F26\u9F2A\u9F2B\u9F2F\u9F31\u9F32\u9F34\u9F37\u9F39\u9F3A\u9F3C\u9F3D\u9F3F\u9F41\u9F43",4,"\u9F53\u9F55\u9F56\u9F57\u9F58\u9F5A\u9F5D\u9F5E\u9F68\u9F69\u9F6D",4,"\u9F73\u9F75\u9F7A\u9F7D\u9F8F\u9F90\u9F91\u9F92\u9F94\u9F96\u9F97\u9F9E\u9FA1\u9FA2\u9FA3\u9FA5"]]});var T8=b((Z8e,GG)=>{GG.exports=[["0","\0",127,"\u20AC"],["8140","\u4E02\u4E04\u4E05\u4E06\u4E0F\u4E12\u4E17\u4E1F\u4E20\u4E21\u4E23\u4E26\u4E29\u4E2E\u4E2F\u4E31\u4E33\u4E35\u4E37\u4E3C\u4E40\u4E41\u4E42\u4E44\u4E46\u4E4A\u4E51\u4E55\u4E57\u4E5A\u4E5B\u4E62\u4E63\u4E64\u4E65\u4E67\u4E68\u4E6A",5,"\u4E72\u4E74",9,"\u4E7F",6,"\u4E87\u4E8A"],["8180","\u4E90\u4E96\u4E97\u4E99\u4E9C\u4E9D\u4E9E\u4EA3\u4EAA\u4EAF\u4EB0\u4EB1\u4EB4\u4EB6\u4EB7\u4EB8\u4EB9\u4EBC\u4EBD\u4EBE\u4EC8\u4ECC\u4ECF\u4ED0\u4ED2\u4EDA\u4EDB\u4EDC\u4EE0\u4EE2\u4EE6\u4EE7\u4EE9\u4EED\u4EEE\u4EEF\u4EF1\u4EF4\u4EF8\u4EF9\u4EFA\u4EFC\u4EFE\u4F00\u4F02",6,"\u4F0B\u4F0C\u4F12",4,"\u4F1C\u4F1D\u4F21\u4F23\u4F28\u4F29\u4F2C\u4F2D\u4F2E\u4F31\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E",4,"\u4F44\u4F45\u4F47",5,"\u4F52\u4F54\u4F56\u4F61\u4F62\u4F66\u4F68\u4F6A\u4F6B\u4F6D\u4F6E\u4F71\u4F72\u4F75\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F80\u4F81\u4F82\u4F85\u4F86\u4F87\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F95\u4F96\u4F98\u4F99\u4F9A\u4F9C\u4F9E\u4F9F\u4FA1\u4FA2"],["8240","\u4FA4\u4FAB\u4FAD\u4FB0",4,"\u4FB6",8,"\u4FC0\u4FC1\u4FC2\u4FC6\u4FC7\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FD2",4,"\u4FD9\u4FDB\u4FE0\u4FE2\u4FE4\u4FE5\u4FE7\u4FEB\u4FEC\u4FF0\u4FF2\u4FF4\u4FF5\u4FF6\u4FF7\u4FF9\u4FFB\u4FFC\u4FFD\u4FFF",11],["8280","\u500B\u500E\u5010\u5011\u5013\u5015\u5016\u5017\u501B\u501D\u501E\u5020\u5022\u5023\u5024\u5027\u502B\u502F",10,"\u503B\u503D\u503F\u5040\u5041\u5042\u5044\u5045\u5046\u5049\u504A\u504B\u504D\u5050",4,"\u5056\u5057\u5058\u5059\u505B\u505D",7,"\u5066",5,"\u506D",8,"\u5078\u5079\u507A\u507C\u507D\u5081\u5082\u5083\u5084\u5086\u5087\u5089\u508A\u508B\u508C\u508E",20,"\u50A4\u50A6\u50AA\u50AB\u50AD",4,"\u50B3",6,"\u50BC"],["8340","\u50BD",17,"\u50D0",5,"\u50D7\u50D8\u50D9\u50DB",10,"\u50E8\u50E9\u50EA\u50EB\u50EF\u50F0\u50F1\u50F2\u50F4\u50F6",4,"\u50FC",9,"\u5108"],["8380","\u5109\u510A\u510C",5,"\u5113",13,"\u5122",28,"\u5142\u5147\u514A\u514C\u514E\u514F\u5150\u5152\u5153\u5157\u5158\u5159\u515B\u515D",4,"\u5163\u5164\u5166\u5167\u5169\u516A\u516F\u5172\u517A\u517E\u517F\u5183\u5184\u5186\u5187\u518A\u518B\u518E\u518F\u5190\u5191\u5193\u5194\u5198\u519A\u519D\u519E\u519F\u51A1\u51A3\u51A6",4,"\u51AD\u51AE\u51B4\u51B8\u51B9\u51BA\u51BE\u51BF\u51C1\u51C2\u51C3\u51C5\u51C8\u51CA\u51CD\u51CE\u51D0\u51D2",5],["8440","\u51D8\u51D9\u51DA\u51DC\u51DE\u51DF\u51E2\u51E3\u51E5",5,"\u51EC\u51EE\u51F1\u51F2\u51F4\u51F7\u51FE\u5204\u5205\u5209\u520B\u520C\u520F\u5210\u5213\u5214\u5215\u521C\u521E\u521F\u5221\u5222\u5223\u5225\u5226\u5227\u522A\u522C\u522F\u5231\u5232\u5234\u5235\u523C\u523E\u5244",5,"\u524B\u524E\u524F\u5252\u5253\u5255\u5257\u5258"],["8480","\u5259\u525A\u525B\u525D\u525F\u5260\u5262\u5263\u5264\u5266\u5268\u526B\u526C\u526D\u526E\u5270\u5271\u5273",9,"\u527E\u5280\u5283",4,"\u5289",6,"\u5291\u5292\u5294",6,"\u529C\u52A4\u52A5\u52A6\u52A7\u52AE\u52AF\u52B0\u52B4",9,"\u52C0\u52C1\u52C2\u52C4\u52C5\u52C6\u52C8\u52CA\u52CC\u52CD\u52CE\u52CF\u52D1\u52D3\u52D4\u52D5\u52D7\u52D9",5,"\u52E0\u52E1\u52E2\u52E3\u52E5",10,"\u52F1",7,"\u52FB\u52FC\u52FD\u5301\u5302\u5303\u5304\u5307\u5309\u530A\u530B\u530C\u530E"],["8540","\u5311\u5312\u5313\u5314\u5318\u531B\u531C\u531E\u531F\u5322\u5324\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u532F",9,"\u533C\u533D\u5340\u5342\u5344\u5346\u534B\u534C\u534D\u5350\u5354\u5358\u5359\u535B\u535D\u5365\u5368\u536A\u536C\u536D\u5372\u5376\u5379\u537B\u537C\u537D\u537E\u5380\u5381\u5383\u5387\u5388\u538A\u538E\u538F"],["8580","\u5390",4,"\u5396\u5397\u5399\u539B\u539C\u539E\u53A0\u53A1\u53A4\u53A7\u53AA\u53AB\u53AC\u53AD\u53AF",6,"\u53B7\u53B8\u53B9\u53BA\u53BC\u53BD\u53BE\u53C0\u53C3",4,"\u53CE\u53CF\u53D0\u53D2\u53D3\u53D5\u53DA\u53DC\u53DD\u53DE\u53E1\u53E2\u53E7\u53F4\u53FA\u53FE\u53FF\u5400\u5402\u5405\u5407\u540B\u5414\u5418\u5419\u541A\u541C\u5422\u5424\u5425\u542A\u5430\u5433\u5436\u5437\u543A\u543D\u543F\u5441\u5442\u5444\u5445\u5447\u5449\u544C\u544D\u544E\u544F\u5451\u545A\u545D",4,"\u5463\u5465\u5467\u5469",7,"\u5474\u5479\u547A\u547E\u547F\u5481\u5483\u5485\u5487\u5488\u5489\u548A\u548D\u5491\u5493\u5497\u5498\u549C\u549E\u549F\u54A0\u54A1"],["8640","\u54A2\u54A5\u54AE\u54B0\u54B2\u54B5\u54B6\u54B7\u54B9\u54BA\u54BC\u54BE\u54C3\u54C5\u54CA\u54CB\u54D6\u54D8\u54DB\u54E0",4,"\u54EB\u54EC\u54EF\u54F0\u54F1\u54F4",5,"\u54FB\u54FE\u5500\u5502\u5503\u5504\u5505\u5508\u550A",4,"\u5512\u5513\u5515",5,"\u551C\u551D\u551E\u551F\u5521\u5525\u5526"],["8680","\u5528\u5529\u552B\u552D\u5532\u5534\u5535\u5536\u5538\u5539\u553A\u553B\u553D\u5540\u5542\u5545\u5547\u5548\u554B",4,"\u5551\u5552\u5553\u5554\u5557",4,"\u555D\u555E\u555F\u5560\u5562\u5563\u5568\u5569\u556B\u556F",5,"\u5579\u557A\u557D\u557F\u5585\u5586\u558C\u558D\u558E\u5590\u5592\u5593\u5595\u5596\u5597\u559A\u559B\u559E\u55A0",6,"\u55A8",8,"\u55B2\u55B4\u55B6\u55B8\u55BA\u55BC\u55BF",4,"\u55C6\u55C7\u55C8\u55CA\u55CB\u55CE\u55CF\u55D0\u55D5\u55D7",4,"\u55DE\u55E0\u55E2\u55E7\u55E9\u55ED\u55EE\u55F0\u55F1\u55F4\u55F6\u55F8",4,"\u55FF\u5602\u5603\u5604\u5605"],["8740","\u5606\u5607\u560A\u560B\u560D\u5610",7,"\u5619\u561A\u561C\u561D\u5620\u5621\u5622\u5625\u5626\u5628\u5629\u562A\u562B\u562E\u562F\u5630\u5633\u5635\u5637\u5638\u563A\u563C\u563D\u563E\u5640",11,"\u564F",4,"\u5655\u5656\u565A\u565B\u565D",4],["8780","\u5663\u5665\u5666\u5667\u566D\u566E\u566F\u5670\u5672\u5673\u5674\u5675\u5677\u5678\u5679\u567A\u567D",7,"\u5687",6,"\u5690\u5691\u5692\u5694",14,"\u56A4",10,"\u56B0",6,"\u56B8\u56B9\u56BA\u56BB\u56BD",12,"\u56CB",8,"\u56D5\u56D6\u56D8\u56D9\u56DC\u56E3\u56E5",5,"\u56EC\u56EE\u56EF\u56F2\u56F3\u56F6\u56F7\u56F8\u56FB\u56FC\u5700\u5701\u5702\u5705\u5707\u570B",6],["8840","\u5712",9,"\u571D\u571E\u5720\u5721\u5722\u5724\u5725\u5726\u5727\u572B\u5731\u5732\u5734",4,"\u573C\u573D\u573F\u5741\u5743\u5744\u5745\u5746\u5748\u5749\u574B\u5752",4,"\u5758\u5759\u5762\u5763\u5765\u5767\u576C\u576E\u5770\u5771\u5772\u5774\u5775\u5778\u5779\u577A\u577D\u577E\u577F\u5780"],["8880","\u5781\u5787\u5788\u5789\u578A\u578D",4,"\u5794",6,"\u579C\u579D\u579E\u579F\u57A5\u57A8\u57AA\u57AC\u57AF\u57B0\u57B1\u57B3\u57B5\u57B6\u57B7\u57B9",8,"\u57C4",6,"\u57CC\u57CD\u57D0\u57D1\u57D3\u57D6\u57D7\u57DB\u57DC\u57DE\u57E1\u57E2\u57E3\u57E5",7,"\u57EE\u57F0\u57F1\u57F2\u57F3\u57F5\u57F6\u57F7\u57FB\u57FC\u57FE\u57FF\u5801\u5803\u5804\u5805\u5808\u5809\u580A\u580C\u580E\u580F\u5810\u5812\u5813\u5814\u5816\u5817\u5818\u581A\u581B\u581C\u581D\u581F\u5822\u5823\u5825",4,"\u582B",4,"\u5831\u5832\u5833\u5834\u5836",7],["8940","\u583E",5,"\u5845",6,"\u584E\u584F\u5850\u5852\u5853\u5855\u5856\u5857\u5859",4,"\u585F",5,"\u5866",4,"\u586D",16,"\u587F\u5882\u5884\u5886\u5887\u5888\u588A\u588B\u588C"],["8980","\u588D",4,"\u5894",4,"\u589B\u589C\u589D\u58A0",7,"\u58AA",17,"\u58BD\u58BE\u58BF\u58C0\u58C2\u58C3\u58C4\u58C6",10,"\u58D2\u58D3\u58D4\u58D6",13,"\u58E5",5,"\u58ED\u58EF\u58F1\u58F2\u58F4\u58F5\u58F7\u58F8\u58FA",7,"\u5903\u5905\u5906\u5908",4,"\u590E\u5910\u5911\u5912\u5913\u5917\u5918\u591B\u591D\u591E\u5920\u5921\u5922\u5923\u5926\u5928\u592C\u5930\u5932\u5933\u5935\u5936\u593B"],["8a40","\u593D\u593E\u593F\u5940\u5943\u5945\u5946\u594A\u594C\u594D\u5950\u5952\u5953\u5959\u595B",4,"\u5961\u5963\u5964\u5966",12,"\u5975\u5977\u597A\u597B\u597C\u597E\u597F\u5980\u5985\u5989\u598B\u598C\u598E\u598F\u5990\u5991\u5994\u5995\u5998\u599A\u599B\u599C\u599D\u599F\u59A0\u59A1\u59A2\u59A6"],["8a80","\u59A7\u59AC\u59AD\u59B0\u59B1\u59B3",5,"\u59BA\u59BC\u59BD\u59BF",6,"\u59C7\u59C8\u59C9\u59CC\u59CD\u59CE\u59CF\u59D5\u59D6\u59D9\u59DB\u59DE",4,"\u59E4\u59E6\u59E7\u59E9\u59EA\u59EB\u59ED",11,"\u59FA\u59FC\u59FD\u59FE\u5A00\u5A02\u5A0A\u5A0B\u5A0D\u5A0E\u5A0F\u5A10\u5A12\u5A14\u5A15\u5A16\u5A17\u5A19\u5A1A\u5A1B\u5A1D\u5A1E\u5A21\u5A22\u5A24\u5A26\u5A27\u5A28\u5A2A",6,"\u5A33\u5A35\u5A37",4,"\u5A3D\u5A3E\u5A3F\u5A41",4,"\u5A47\u5A48\u5A4B",9,"\u5A56\u5A57\u5A58\u5A59\u5A5B",5],["8b40","\u5A61\u5A63\u5A64\u5A65\u5A66\u5A68\u5A69\u5A6B",8,"\u5A78\u5A79\u5A7B\u5A7C\u5A7D\u5A7E\u5A80",17,"\u5A93",6,"\u5A9C",13,"\u5AAB\u5AAC"],["8b80","\u5AAD",4,"\u5AB4\u5AB6\u5AB7\u5AB9",4,"\u5ABF\u5AC0\u5AC3",5,"\u5ACA\u5ACB\u5ACD",4,"\u5AD3\u5AD5\u5AD7\u5AD9\u5ADA\u5ADB\u5ADD\u5ADE\u5ADF\u5AE2\u5AE4\u5AE5\u5AE7\u5AE8\u5AEA\u5AEC",4,"\u5AF2",22,"\u5B0A",11,"\u5B18",25,"\u5B33\u5B35\u5B36\u5B38",7,"\u5B41",6],["8c40","\u5B48",7,"\u5B52\u5B56\u5B5E\u5B60\u5B61\u5B67\u5B68\u5B6B\u5B6D\u5B6E\u5B6F\u5B72\u5B74\u5B76\u5B77\u5B78\u5B79\u5B7B\u5B7C\u5B7E\u5B7F\u5B82\u5B86\u5B8A\u5B8D\u5B8E\u5B90\u5B91\u5B92\u5B94\u5B96\u5B9F\u5BA7\u5BA8\u5BA9\u5BAC\u5BAD\u5BAE\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBB\u5BBC\u5BC0\u5BC1\u5BC3\u5BC8\u5BC9\u5BCA\u5BCB\u5BCD\u5BCE\u5BCF"],["8c80","\u5BD1\u5BD4",8,"\u5BE0\u5BE2\u5BE3\u5BE6\u5BE7\u5BE9",4,"\u5BEF\u5BF1",6,"\u5BFD\u5BFE\u5C00\u5C02\u5C03\u5C05\u5C07\u5C08\u5C0B\u5C0C\u5C0D\u5C0E\u5C10\u5C12\u5C13\u5C17\u5C19\u5C1B\u5C1E\u5C1F\u5C20\u5C21\u5C23\u5C26\u5C28\u5C29\u5C2A\u5C2B\u5C2D\u5C2E\u5C2F\u5C30\u5C32\u5C33\u5C35\u5C36\u5C37\u5C43\u5C44\u5C46\u5C47\u5C4C\u5C4D\u5C52\u5C53\u5C54\u5C56\u5C57\u5C58\u5C5A\u5C5B\u5C5C\u5C5D\u5C5F\u5C62\u5C64\u5C67",6,"\u5C70\u5C72",6,"\u5C7B\u5C7C\u5C7D\u5C7E\u5C80\u5C83",4,"\u5C89\u5C8A\u5C8B\u5C8E\u5C8F\u5C92\u5C93\u5C95\u5C9D",4,"\u5CA4",4],["8d40","\u5CAA\u5CAE\u5CAF\u5CB0\u5CB2\u5CB4\u5CB6\u5CB9\u5CBA\u5CBB\u5CBC\u5CBE\u5CC0\u5CC2\u5CC3\u5CC5",5,"\u5CCC",5,"\u5CD3",5,"\u5CDA",6,"\u5CE2\u5CE3\u5CE7\u5CE9\u5CEB\u5CEC\u5CEE\u5CEF\u5CF1",9,"\u5CFC",4],["8d80","\u5D01\u5D04\u5D05\u5D08",5,"\u5D0F",4,"\u5D15\u5D17\u5D18\u5D19\u5D1A\u5D1C\u5D1D\u5D1F",4,"\u5D25\u5D28\u5D2A\u5D2B\u5D2C\u5D2F",4,"\u5D35",7,"\u5D3F",7,"\u5D48\u5D49\u5D4D",10,"\u5D59\u5D5A\u5D5C\u5D5E",10,"\u5D6A\u5D6D\u5D6E\u5D70\u5D71\u5D72\u5D73\u5D75",12,"\u5D83",21,"\u5D9A\u5D9B\u5D9C\u5D9E\u5D9F\u5DA0"],["8e40","\u5DA1",21,"\u5DB8",12,"\u5DC6",6,"\u5DCE",12,"\u5DDC\u5DDF\u5DE0\u5DE3\u5DE4\u5DEA\u5DEC\u5DED"],["8e80","\u5DF0\u5DF5\u5DF6\u5DF8",4,"\u5DFF\u5E00\u5E04\u5E07\u5E09\u5E0A\u5E0B\u5E0D\u5E0E\u5E12\u5E13\u5E17\u5E1E",7,"\u5E28",4,"\u5E2F\u5E30\u5E32",4,"\u5E39\u5E3A\u5E3E\u5E3F\u5E40\u5E41\u5E43\u5E46",5,"\u5E4D",6,"\u5E56",4,"\u5E5C\u5E5D\u5E5F\u5E60\u5E63",14,"\u5E75\u5E77\u5E79\u5E7E\u5E81\u5E82\u5E83\u5E85\u5E88\u5E89\u5E8C\u5E8D\u5E8E\u5E92\u5E98\u5E9B\u5E9D\u5EA1\u5EA2\u5EA3\u5EA4\u5EA8",4,"\u5EAE",4,"\u5EB4\u5EBA\u5EBB\u5EBC\u5EBD\u5EBF",6],["8f40","\u5EC6\u5EC7\u5EC8\u5ECB",5,"\u5ED4\u5ED5\u5ED7\u5ED8\u5ED9\u5EDA\u5EDC",11,"\u5EE9\u5EEB",8,"\u5EF5\u5EF8\u5EF9\u5EFB\u5EFC\u5EFD\u5F05\u5F06\u5F07\u5F09\u5F0C\u5F0D\u5F0E\u5F10\u5F12\u5F14\u5F16\u5F19\u5F1A\u5F1C\u5F1D\u5F1E\u5F21\u5F22\u5F23\u5F24"],["8f80","\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F32",6,"\u5F3B\u5F3D\u5F3E\u5F3F\u5F41",14,"\u5F51\u5F54\u5F59\u5F5A\u5F5B\u5F5C\u5F5E\u5F5F\u5F60\u5F63\u5F65\u5F67\u5F68\u5F6B\u5F6E\u5F6F\u5F72\u5F74\u5F75\u5F76\u5F78\u5F7A\u5F7D\u5F7E\u5F7F\u5F83\u5F86\u5F8D\u5F8E\u5F8F\u5F91\u5F93\u5F94\u5F96\u5F9A\u5F9B\u5F9D\u5F9E\u5F9F\u5FA0\u5FA2",5,"\u5FA9\u5FAB\u5FAC\u5FAF",5,"\u5FB6\u5FB8\u5FB9\u5FBA\u5FBB\u5FBE",4,"\u5FC7\u5FC8\u5FCA\u5FCB\u5FCE\u5FD3\u5FD4\u5FD5\u5FDA\u5FDB\u5FDC\u5FDE\u5FDF\u5FE2\u5FE3\u5FE5\u5FE6\u5FE8\u5FE9\u5FEC\u5FEF\u5FF0\u5FF2\u5FF3\u5FF4\u5FF6\u5FF7\u5FF9\u5FFA\u5FFC\u6007"],["9040","\u6008\u6009\u600B\u600C\u6010\u6011\u6013\u6017\u6018\u601A\u601E\u601F\u6022\u6023\u6024\u602C\u602D\u602E\u6030",4,"\u6036",4,"\u603D\u603E\u6040\u6044",6,"\u604C\u604E\u604F\u6051\u6053\u6054\u6056\u6057\u6058\u605B\u605C\u605E\u605F\u6060\u6061\u6065\u6066\u606E\u6071\u6072\u6074\u6075\u6077\u607E\u6080"],["9080","\u6081\u6082\u6085\u6086\u6087\u6088\u608A\u608B\u608E\u608F\u6090\u6091\u6093\u6095\u6097\u6098\u6099\u609C\u609E\u60A1\u60A2\u60A4\u60A5\u60A7\u60A9\u60AA\u60AE\u60B0\u60B3\u60B5\u60B6\u60B7\u60B9\u60BA\u60BD",7,"\u60C7\u60C8\u60C9\u60CC",4,"\u60D2\u60D3\u60D4\u60D6\u60D7\u60D9\u60DB\u60DE\u60E1",4,"\u60EA\u60F1\u60F2\u60F5\u60F7\u60F8\u60FB",4,"\u6102\u6103\u6104\u6105\u6107\u610A\u610B\u610C\u6110",4,"\u6116\u6117\u6118\u6119\u611B\u611C\u611D\u611E\u6121\u6122\u6125\u6128\u6129\u612A\u612C",18,"\u6140",6],["9140","\u6147\u6149\u614B\u614D\u614F\u6150\u6152\u6153\u6154\u6156",6,"\u615E\u615F\u6160\u6161\u6163\u6164\u6165\u6166\u6169",6,"\u6171\u6172\u6173\u6174\u6176\u6178",18,"\u618C\u618D\u618F",4,"\u6195"],["9180","\u6196",6,"\u619E",8,"\u61AA\u61AB\u61AD",9,"\u61B8",5,"\u61BF\u61C0\u61C1\u61C3",4,"\u61C9\u61CC",4,"\u61D3\u61D5",16,"\u61E7",13,"\u61F6",8,"\u6200",5,"\u6207\u6209\u6213\u6214\u6219\u621C\u621D\u621E\u6220\u6223\u6226\u6227\u6228\u6229\u622B\u622D\u622F\u6230\u6231\u6232\u6235\u6236\u6238",4,"\u6242\u6244\u6245\u6246\u624A"],["9240","\u624F\u6250\u6255\u6256\u6257\u6259\u625A\u625C",6,"\u6264\u6265\u6268\u6271\u6272\u6274\u6275\u6277\u6278\u627A\u627B\u627D\u6281\u6282\u6283\u6285\u6286\u6287\u6288\u628B",5,"\u6294\u6299\u629C\u629D\u629E\u62A3\u62A6\u62A7\u62A9\u62AA\u62AD\u62AE\u62AF\u62B0\u62B2\u62B3\u62B4\u62B6\u62B7\u62B8\u62BA\u62BE\u62C0\u62C1"],["9280","\u62C3\u62CB\u62CF\u62D1\u62D5\u62DD\u62DE\u62E0\u62E1\u62E4\u62EA\u62EB\u62F0\u62F2\u62F5\u62F8\u62F9\u62FA\u62FB\u6300\u6303\u6304\u6305\u6306\u630A\u630B\u630C\u630D\u630F\u6310\u6312\u6313\u6314\u6315\u6317\u6318\u6319\u631C\u6326\u6327\u6329\u632C\u632D\u632E\u6330\u6331\u6333",5,"\u633B\u633C\u633E\u633F\u6340\u6341\u6344\u6347\u6348\u634A\u6351\u6352\u6353\u6354\u6356",7,"\u6360\u6364\u6365\u6366\u6368\u636A\u636B\u636C\u636F\u6370\u6372\u6373\u6374\u6375\u6378\u6379\u637C\u637D\u637E\u637F\u6381\u6383\u6384\u6385\u6386\u638B\u638D\u6391\u6393\u6394\u6395\u6397\u6399",6,"\u63A1\u63A4\u63A6\u63AB\u63AF\u63B1\u63B2\u63B5\u63B6\u63B9\u63BB\u63BD\u63BF\u63C0"],["9340","\u63C1\u63C2\u63C3\u63C5\u63C7\u63C8\u63CA\u63CB\u63CC\u63D1\u63D3\u63D4\u63D5\u63D7",6,"\u63DF\u63E2\u63E4",4,"\u63EB\u63EC\u63EE\u63EF\u63F0\u63F1\u63F3\u63F5\u63F7\u63F9\u63FA\u63FB\u63FC\u63FE\u6403\u6404\u6406",4,"\u640D\u640E\u6411\u6412\u6415",5,"\u641D\u641F\u6422\u6423\u6424"],["9380","\u6425\u6427\u6428\u6429\u642B\u642E",5,"\u6435",4,"\u643B\u643C\u643E\u6440\u6442\u6443\u6449\u644B",6,"\u6453\u6455\u6456\u6457\u6459",4,"\u645F",7,"\u6468\u646A\u646B\u646C\u646E",9,"\u647B",6,"\u6483\u6486\u6488",8,"\u6493\u6494\u6497\u6498\u649A\u649B\u649C\u649D\u649F",4,"\u64A5\u64A6\u64A7\u64A8\u64AA\u64AB\u64AF\u64B1\u64B2\u64B3\u64B4\u64B6\u64B9\u64BB\u64BD\u64BE\u64BF\u64C1\u64C3\u64C4\u64C6",6,"\u64CF\u64D1\u64D3\u64D4\u64D5\u64D6\u64D9\u64DA"],["9440","\u64DB\u64DC\u64DD\u64DF\u64E0\u64E1\u64E3\u64E5\u64E7",24,"\u6501",7,"\u650A",7,"\u6513",4,"\u6519",8],["9480","\u6522\u6523\u6524\u6526",4,"\u652C\u652D\u6530\u6531\u6532\u6533\u6537\u653A\u653C\u653D\u6540",4,"\u6546\u6547\u654A\u654B\u654D\u654E\u6550\u6552\u6553\u6554\u6557\u6558\u655A\u655C\u655F\u6560\u6561\u6564\u6565\u6567\u6568\u6569\u656A\u656D\u656E\u656F\u6571\u6573\u6575\u6576\u6578",14,"\u6588\u6589\u658A\u658D\u658E\u658F\u6592\u6594\u6595\u6596\u6598\u659A\u659D\u659E\u65A0\u65A2\u65A3\u65A6\u65A8\u65AA\u65AC\u65AE\u65B1",7,"\u65BA\u65BB\u65BE\u65BF\u65C0\u65C2\u65C7\u65C8\u65C9\u65CA\u65CD\u65D0\u65D1\u65D3\u65D4\u65D5\u65D8",7,"\u65E1\u65E3\u65E4\u65EA\u65EB"],["9540","\u65F2\u65F3\u65F4\u65F5\u65F8\u65F9\u65FB",4,"\u6601\u6604\u6605\u6607\u6608\u6609\u660B\u660D\u6610\u6611\u6612\u6616\u6617\u6618\u661A\u661B\u661C\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6632\u6633\u6637",4,"\u663D\u663F\u6640\u6642\u6644",6,"\u664D\u664E\u6650\u6651\u6658"],["9580","\u6659\u665B\u665C\u665D\u665E\u6660\u6662\u6663\u6665\u6667\u6669",4,"\u6671\u6672\u6673\u6675\u6678\u6679\u667B\u667C\u667D\u667F\u6680\u6681\u6683\u6685\u6686\u6688\u6689\u668A\u668B\u668D\u668E\u668F\u6690\u6692\u6693\u6694\u6695\u6698",4,"\u669E",8,"\u66A9",4,"\u66AF",4,"\u66B5\u66B6\u66B7\u66B8\u66BA\u66BB\u66BC\u66BD\u66BF",25,"\u66DA\u66DE",7,"\u66E7\u66E8\u66EA",5,"\u66F1\u66F5\u66F6\u66F8\u66FA\u66FB\u66FD\u6701\u6702\u6703"],["9640","\u6704\u6705\u6706\u6707\u670C\u670E\u670F\u6711\u6712\u6713\u6716\u6718\u6719\u671A\u671C\u671E\u6720",5,"\u6727\u6729\u672E\u6730\u6732\u6733\u6736\u6737\u6738\u6739\u673B\u673C\u673E\u673F\u6741\u6744\u6745\u6747\u674A\u674B\u674D\u6752\u6754\u6755\u6757",4,"\u675D\u6762\u6763\u6764\u6766\u6767\u676B\u676C\u676E\u6771\u6774\u6776"],["9680","\u6778\u6779\u677A\u677B\u677D\u6780\u6782\u6783\u6785\u6786\u6788\u678A\u678C\u678D\u678E\u678F\u6791\u6792\u6793\u6794\u6796\u6799\u679B\u679F\u67A0\u67A1\u67A4\u67A6\u67A9\u67AC\u67AE\u67B1\u67B2\u67B4\u67B9",7,"\u67C2\u67C5",9,"\u67D5\u67D6\u67D7\u67DB\u67DF\u67E1\u67E3\u67E4\u67E6\u67E7\u67E8\u67EA\u67EB\u67ED\u67EE\u67F2\u67F5",7,"\u67FE\u6801\u6802\u6803\u6804\u6806\u680D\u6810\u6812\u6814\u6815\u6818",4,"\u681E\u681F\u6820\u6822",6,"\u682B",6,"\u6834\u6835\u6836\u683A\u683B\u683F\u6847\u684B\u684D\u684F\u6852\u6856",5],["9740","\u685C\u685D\u685E\u685F\u686A\u686C",7,"\u6875\u6878",8,"\u6882\u6884\u6887",7,"\u6890\u6891\u6892\u6894\u6895\u6896\u6898",9,"\u68A3\u68A4\u68A5\u68A9\u68AA\u68AB\u68AC\u68AE\u68B1\u68B2\u68B4\u68B6\u68B7\u68B8"],["9780","\u68B9",6,"\u68C1\u68C3",5,"\u68CA\u68CC\u68CE\u68CF\u68D0\u68D1\u68D3\u68D4\u68D6\u68D7\u68D9\u68DB",4,"\u68E1\u68E2\u68E4",9,"\u68EF\u68F2\u68F3\u68F4\u68F6\u68F7\u68F8\u68FB\u68FD\u68FE\u68FF\u6900\u6902\u6903\u6904\u6906",4,"\u690C\u690F\u6911\u6913",11,"\u6921\u6922\u6923\u6925",7,"\u692E\u692F\u6931\u6932\u6933\u6935\u6936\u6937\u6938\u693A\u693B\u693C\u693E\u6940\u6941\u6943",16,"\u6955\u6956\u6958\u6959\u695B\u695C\u695F"],["9840","\u6961\u6962\u6964\u6965\u6967\u6968\u6969\u696A\u696C\u696D\u696F\u6970\u6972",4,"\u697A\u697B\u697D\u697E\u697F\u6981\u6983\u6985\u698A\u698B\u698C\u698E",5,"\u6996\u6997\u6999\u699A\u699D",9,"\u69A9\u69AA\u69AC\u69AE\u69AF\u69B0\u69B2\u69B3\u69B5\u69B6\u69B8\u69B9\u69BA\u69BC\u69BD"],["9880","\u69BE\u69BF\u69C0\u69C2",7,"\u69CB\u69CD\u69CF\u69D1\u69D2\u69D3\u69D5",5,"\u69DC\u69DD\u69DE\u69E1",11,"\u69EE\u69EF\u69F0\u69F1\u69F3",9,"\u69FE\u6A00",9,"\u6A0B",11,"\u6A19",5,"\u6A20\u6A22",5,"\u6A29\u6A2B\u6A2C\u6A2D\u6A2E\u6A30\u6A32\u6A33\u6A34\u6A36",6,"\u6A3F",4,"\u6A45\u6A46\u6A48",7,"\u6A51",6,"\u6A5A"],["9940","\u6A5C",4,"\u6A62\u6A63\u6A64\u6A66",10,"\u6A72",6,"\u6A7A\u6A7B\u6A7D\u6A7E\u6A7F\u6A81\u6A82\u6A83\u6A85",8,"\u6A8F\u6A92",4,"\u6A98",7,"\u6AA1",5],["9980","\u6AA7\u6AA8\u6AAA\u6AAD",114,"\u6B25\u6B26\u6B28",6],["9a40","\u6B2F\u6B30\u6B31\u6B33\u6B34\u6B35\u6B36\u6B38\u6B3B\u6B3C\u6B3D\u6B3F\u6B40\u6B41\u6B42\u6B44\u6B45\u6B48\u6B4A\u6B4B\u6B4D",11,"\u6B5A",7,"\u6B68\u6B69\u6B6B",13,"\u6B7A\u6B7D\u6B7E\u6B7F\u6B80\u6B85\u6B88"],["9a80","\u6B8C\u6B8E\u6B8F\u6B90\u6B91\u6B94\u6B95\u6B97\u6B98\u6B99\u6B9C",4,"\u6BA2",7,"\u6BAB",7,"\u6BB6\u6BB8",6,"\u6BC0\u6BC3\u6BC4\u6BC6",4,"\u6BCC\u6BCE\u6BD0\u6BD1\u6BD8\u6BDA\u6BDC",4,"\u6BE2",7,"\u6BEC\u6BED\u6BEE\u6BF0\u6BF1\u6BF2\u6BF4\u6BF6\u6BF7\u6BF8\u6BFA\u6BFB\u6BFC\u6BFE",6,"\u6C08",4,"\u6C0E\u6C12\u6C17\u6C1C\u6C1D\u6C1E\u6C20\u6C23\u6C25\u6C2B\u6C2C\u6C2D\u6C31\u6C33\u6C36\u6C37\u6C39\u6C3A\u6C3B\u6C3C\u6C3E\u6C3F\u6C43\u6C44\u6C45\u6C48\u6C4B",4,"\u6C51\u6C52\u6C53\u6C56\u6C58"],["9b40","\u6C59\u6C5A\u6C62\u6C63\u6C65\u6C66\u6C67\u6C6B",4,"\u6C71\u6C73\u6C75\u6C77\u6C78\u6C7A\u6C7B\u6C7C\u6C7F\u6C80\u6C84\u6C87\u6C8A\u6C8B\u6C8D\u6C8E\u6C91\u6C92\u6C95\u6C96\u6C97\u6C98\u6C9A\u6C9C\u6C9D\u6C9E\u6CA0\u6CA2\u6CA8\u6CAC\u6CAF\u6CB0\u6CB4\u6CB5\u6CB6\u6CB7\u6CBA\u6CC0\u6CC1\u6CC2\u6CC3\u6CC6\u6CC7\u6CC8\u6CCB\u6CCD\u6CCE\u6CCF\u6CD1\u6CD2\u6CD8"],["9b80","\u6CD9\u6CDA\u6CDC\u6CDD\u6CDF\u6CE4\u6CE6\u6CE7\u6CE9\u6CEC\u6CED\u6CF2\u6CF4\u6CF9\u6CFF\u6D00\u6D02\u6D03\u6D05\u6D06\u6D08\u6D09\u6D0A\u6D0D\u6D0F\u6D10\u6D11\u6D13\u6D14\u6D15\u6D16\u6D18\u6D1C\u6D1D\u6D1F",5,"\u6D26\u6D28\u6D29\u6D2C\u6D2D\u6D2F\u6D30\u6D34\u6D36\u6D37\u6D38\u6D3A\u6D3F\u6D40\u6D42\u6D44\u6D49\u6D4C\u6D50\u6D55\u6D56\u6D57\u6D58\u6D5B\u6D5D\u6D5F\u6D61\u6D62\u6D64\u6D65\u6D67\u6D68\u6D6B\u6D6C\u6D6D\u6D70\u6D71\u6D72\u6D73\u6D75\u6D76\u6D79\u6D7A\u6D7B\u6D7D",4,"\u6D83\u6D84\u6D86\u6D87\u6D8A\u6D8B\u6D8D\u6D8F\u6D90\u6D92\u6D96",4,"\u6D9C\u6DA2\u6DA5\u6DAC\u6DAD\u6DB0\u6DB1\u6DB3\u6DB4\u6DB6\u6DB7\u6DB9",5,"\u6DC1\u6DC2\u6DC3\u6DC8\u6DC9\u6DCA"],["9c40","\u6DCD\u6DCE\u6DCF\u6DD0\u6DD2\u6DD3\u6DD4\u6DD5\u6DD7\u6DDA\u6DDB\u6DDC\u6DDF\u6DE2\u6DE3\u6DE5\u6DE7\u6DE8\u6DE9\u6DEA\u6DED\u6DEF\u6DF0\u6DF2\u6DF4\u6DF5\u6DF6\u6DF8\u6DFA\u6DFD",7,"\u6E06\u6E07\u6E08\u6E09\u6E0B\u6E0F\u6E12\u6E13\u6E15\u6E18\u6E19\u6E1B\u6E1C\u6E1E\u6E1F\u6E22\u6E26\u6E27\u6E28\u6E2A\u6E2C\u6E2E\u6E30\u6E31\u6E33\u6E35"],["9c80","\u6E36\u6E37\u6E39\u6E3B",7,"\u6E45",7,"\u6E4F\u6E50\u6E51\u6E52\u6E55\u6E57\u6E59\u6E5A\u6E5C\u6E5D\u6E5E\u6E60",10,"\u6E6C\u6E6D\u6E6F",14,"\u6E80\u6E81\u6E82\u6E84\u6E87\u6E88\u6E8A",4,"\u6E91",6,"\u6E99\u6E9A\u6E9B\u6E9D\u6E9E\u6EA0\u6EA1\u6EA3\u6EA4\u6EA6\u6EA8\u6EA9\u6EAB\u6EAC\u6EAD\u6EAE\u6EB0\u6EB3\u6EB5\u6EB8\u6EB9\u6EBC\u6EBE\u6EBF\u6EC0\u6EC3\u6EC4\u6EC5\u6EC6\u6EC8\u6EC9\u6ECA\u6ECC\u6ECD\u6ECE\u6ED0\u6ED2\u6ED6\u6ED8\u6ED9\u6EDB\u6EDC\u6EDD\u6EE3\u6EE7\u6EEA",5],["9d40","\u6EF0\u6EF1\u6EF2\u6EF3\u6EF5\u6EF6\u6EF7\u6EF8\u6EFA",7,"\u6F03\u6F04\u6F05\u6F07\u6F08\u6F0A",4,"\u6F10\u6F11\u6F12\u6F16",9,"\u6F21\u6F22\u6F23\u6F25\u6F26\u6F27\u6F28\u6F2C\u6F2E\u6F30\u6F32\u6F34\u6F35\u6F37",6,"\u6F3F\u6F40\u6F41\u6F42"],["9d80","\u6F43\u6F44\u6F45\u6F48\u6F49\u6F4A\u6F4C\u6F4E",9,"\u6F59\u6F5A\u6F5B\u6F5D\u6F5F\u6F60\u6F61\u6F63\u6F64\u6F65\u6F67",5,"\u6F6F\u6F70\u6F71\u6F73\u6F75\u6F76\u6F77\u6F79\u6F7B\u6F7D",6,"\u6F85\u6F86\u6F87\u6F8A\u6F8B\u6F8F",12,"\u6F9D\u6F9E\u6F9F\u6FA0\u6FA2",4,"\u6FA8",10,"\u6FB4\u6FB5\u6FB7\u6FB8\u6FBA",5,"\u6FC1\u6FC3",5,"\u6FCA",6,"\u6FD3",10,"\u6FDF\u6FE2\u6FE3\u6FE4\u6FE5"],["9e40","\u6FE6",7,"\u6FF0",32,"\u7012",7,"\u701C",6,"\u7024",6],["9e80","\u702B",9,"\u7036\u7037\u7038\u703A",17,"\u704D\u704E\u7050",13,"\u705F",11,"\u706E\u7071\u7072\u7073\u7074\u7077\u7079\u707A\u707B\u707D\u7081\u7082\u7083\u7084\u7086\u7087\u7088\u708B\u708C\u708D\u708F\u7090\u7091\u7093\u7097\u7098\u709A\u709B\u709E",12,"\u70B0\u70B2\u70B4\u70B5\u70B6\u70BA\u70BE\u70BF\u70C4\u70C5\u70C6\u70C7\u70C9\u70CB",12,"\u70DA"],["9f40","\u70DC\u70DD\u70DE\u70E0\u70E1\u70E2\u70E3\u70E5\u70EA\u70EE\u70F0",6,"\u70F8\u70FA\u70FB\u70FC\u70FE",10,"\u710B",4,"\u7111\u7112\u7114\u7117\u711B",10,"\u7127",7,"\u7132\u7133\u7134"],["9f80","\u7135\u7137",13,"\u7146\u7147\u7148\u7149\u714B\u714D\u714F",12,"\u715D\u715F",4,"\u7165\u7169",4,"\u716F\u7170\u7171\u7174\u7175\u7176\u7177\u7179\u717B\u717C\u717E",5,"\u7185",4,"\u718B\u718C\u718D\u718E\u7190\u7191\u7192\u7193\u7195\u7196\u7197\u719A",4,"\u71A1",6,"\u71A9\u71AA\u71AB\u71AD",5,"\u71B4\u71B6\u71B7\u71B8\u71BA",8,"\u71C4",9,"\u71CF",4],["a040","\u71D6",9,"\u71E1\u71E2\u71E3\u71E4\u71E6\u71E8",5,"\u71EF",9,"\u71FA",11,"\u7207",19],["a080","\u721B\u721C\u721E",9,"\u7229\u722B\u722D\u722E\u722F\u7232\u7233\u7234\u723A\u723C\u723E\u7240",6,"\u7249\u724A\u724B\u724E\u724F\u7250\u7251\u7253\u7254\u7255\u7257\u7258\u725A\u725C\u725E\u7260\u7263\u7264\u7265\u7268\u726A\u726B\u726C\u726D\u7270\u7271\u7273\u7274\u7276\u7277\u7278\u727B\u727C\u727D\u7282\u7283\u7285",4,"\u728C\u728E\u7290\u7291\u7293",11,"\u72A0",11,"\u72AE\u72B1\u72B2\u72B3\u72B5\u72BA",6,"\u72C5\u72C6\u72C7\u72C9\u72CA\u72CB\u72CC\u72CF\u72D1\u72D3\u72D4\u72D5\u72D6\u72D8\u72DA\u72DB"],["a1a1","\u3000\u3001\u3002\xB7\u02C9\u02C7\xA8\u3003\u3005\u2014\uFF5E\u2016\u2026\u2018\u2019\u201C\u201D\u3014\u3015\u3008",7,"\u3016\u3017\u3010\u3011\xB1\xD7\xF7\u2236\u2227\u2228\u2211\u220F\u222A\u2229\u2208\u2237\u221A\u22A5\u2225\u2220\u2312\u2299\u222B\u222E\u2261\u224C\u2248\u223D\u221D\u2260\u226E\u226F\u2264\u2265\u221E\u2235\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFF04\xA4\uFFE0\uFFE1\u2030\xA7\u2116\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u203B\u2192\u2190\u2191\u2193\u3013"],["a2a1","\u2170",9],["a2b1","\u2488",19,"\u2474",19,"\u2460",9],["a2e5","\u3220",9],["a2f1","\u2160",11],["a3a1","\uFF01\uFF02\uFF03\uFFE5\uFF05",88,"\uFFE3"],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a6e0","\uFE35\uFE36\uFE39\uFE3A\uFE3F\uFE40\uFE3D\uFE3E\uFE41\uFE42\uFE43\uFE44"],["a6ee","\uFE3B\uFE3C\uFE37\uFE38\uFE31"],["a6f4","\uFE33\uFE34"],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a840","\u02CA\u02CB\u02D9\u2013\u2015\u2025\u2035\u2105\u2109\u2196\u2197\u2198\u2199\u2215\u221F\u2223\u2252\u2266\u2267\u22BF\u2550",35,"\u2581",6],["a880","\u2588",7,"\u2593\u2594\u2595\u25BC\u25BD\u25E2\u25E3\u25E4\u25E5\u2609\u2295\u3012\u301D\u301E"],["a8a1","\u0101\xE1\u01CE\xE0\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA\u01DC\xFC\xEA\u0251"],["a8bd","\u0144\u0148"],["a8c0","\u0261"],["a8c5","\u3105",36],["a940","\u3021",8,"\u32A3\u338E\u338F\u339C\u339D\u339E\u33A1\u33C4\u33CE\u33D1\u33D2\u33D5\uFE30\uFFE2\uFFE4"],["a959","\u2121\u3231"],["a95c","\u2010"],["a960","\u30FC\u309B\u309C\u30FD\u30FE\u3006\u309D\u309E\uFE49",9,"\uFE54\uFE55\uFE56\uFE57\uFE59",8],["a980","\uFE62",4,"\uFE68\uFE69\uFE6A\uFE6B"],["a996","\u3007"],["a9a4","\u2500",75],["aa40","\u72DC\u72DD\u72DF\u72E2",5,"\u72EA\u72EB\u72F5\u72F6\u72F9\u72FD\u72FE\u72FF\u7300\u7302\u7304",5,"\u730B\u730C\u730D\u730F\u7310\u7311\u7312\u7314\u7318\u7319\u731A\u731F\u7320\u7323\u7324\u7326\u7327\u7328\u732D\u732F\u7330\u7332\u7333\u7335\u7336\u733A\u733B\u733C\u733D\u7340",8],["aa80","\u7349\u734A\u734B\u734C\u734E\u734F\u7351\u7353\u7354\u7355\u7356\u7358",7,"\u7361",10,"\u736E\u7370\u7371"],["ab40","\u7372",11,"\u737F",4,"\u7385\u7386\u7388\u738A\u738C\u738D\u738F\u7390\u7392\u7393\u7394\u7395\u7397\u7398\u7399\u739A\u739C\u739D\u739E\u73A0\u73A1\u73A3",5,"\u73AA\u73AC\u73AD\u73B1\u73B4\u73B5\u73B6\u73B8\u73B9\u73BC\u73BD\u73BE\u73BF\u73C1\u73C3",4],["ab80","\u73CB\u73CC\u73CE\u73D2",6,"\u73DA\u73DB\u73DC\u73DD\u73DF\u73E1\u73E2\u73E3\u73E4\u73E6\u73E8\u73EA\u73EB\u73EC\u73EE\u73EF\u73F0\u73F1\u73F3",4],["ac40","\u73F8",10,"\u7404\u7407\u7408\u740B\u740C\u740D\u740E\u7411",8,"\u741C",5,"\u7423\u7424\u7427\u7429\u742B\u742D\u742F\u7431\u7432\u7437",4,"\u743D\u743E\u743F\u7440\u7442",11],["ac80","\u744E",6,"\u7456\u7458\u745D\u7460",12,"\u746E\u746F\u7471",4,"\u7478\u7479\u747A"],["ad40","\u747B\u747C\u747D\u747F\u7482\u7484\u7485\u7486\u7488\u7489\u748A\u748C\u748D\u748F\u7491",10,"\u749D\u749F",7,"\u74AA",15,"\u74BB",12],["ad80","\u74C8",9,"\u74D3",8,"\u74DD\u74DF\u74E1\u74E5\u74E7",6,"\u74F0\u74F1\u74F2"],["ae40","\u74F3\u74F5\u74F8",6,"\u7500\u7501\u7502\u7503\u7505",7,"\u750E\u7510\u7512\u7514\u7515\u7516\u7517\u751B\u751D\u751E\u7520",4,"\u7526\u7527\u752A\u752E\u7534\u7536\u7539\u753C\u753D\u753F\u7541\u7542\u7543\u7544\u7546\u7547\u7549\u754A\u754D\u7550\u7551\u7552\u7553\u7555\u7556\u7557\u7558"],["ae80","\u755D",7,"\u7567\u7568\u7569\u756B",6,"\u7573\u7575\u7576\u7577\u757A",4,"\u7580\u7581\u7582\u7584\u7585\u7587"],["af40","\u7588\u7589\u758A\u758C\u758D\u758E\u7590\u7593\u7595\u7598\u759B\u759C\u759E\u75A2\u75A6",4,"\u75AD\u75B6\u75B7\u75BA\u75BB\u75BF\u75C0\u75C1\u75C6\u75CB\u75CC\u75CE\u75CF\u75D0\u75D1\u75D3\u75D7\u75D9\u75DA\u75DC\u75DD\u75DF\u75E0\u75E1\u75E5\u75E9\u75EC\u75ED\u75EE\u75EF\u75F2\u75F3\u75F5\u75F6\u75F7\u75F8\u75FA\u75FB\u75FD\u75FE\u7602\u7604\u7606\u7607"],["af80","\u7608\u7609\u760B\u760D\u760E\u760F\u7611\u7612\u7613\u7614\u7616\u761A\u761C\u761D\u761E\u7621\u7623\u7627\u7628\u762C\u762E\u762F\u7631\u7632\u7636\u7637\u7639\u763A\u763B\u763D\u7641\u7642\u7644"],["b040","\u7645",6,"\u764E",5,"\u7655\u7657",4,"\u765D\u765F\u7660\u7661\u7662\u7664",6,"\u766C\u766D\u766E\u7670",7,"\u7679\u767A\u767C\u767F\u7680\u7681\u7683\u7685\u7689\u768A\u768C\u768D\u768F\u7690\u7692\u7694\u7695\u7697\u7698\u769A\u769B"],["b080","\u769C",7,"\u76A5",8,"\u76AF\u76B0\u76B3\u76B5",9,"\u76C0\u76C1\u76C3\u554A\u963F\u57C3\u6328\u54CE\u5509\u54C0\u7691\u764C\u853C\u77EE\u827E\u788D\u7231\u9698\u978D\u6C28\u5B89\u4FFA\u6309\u6697\u5CB8\u80FA\u6848\u80AE\u6602\u76CE\u51F9\u6556\u71AC\u7FF1\u8884\u50B2\u5965\u61CA\u6FB3\u82AD\u634C\u6252\u53ED\u5427\u7B06\u516B\u75A4\u5DF4\u62D4\u8DCB\u9776\u628A\u8019\u575D\u9738\u7F62\u7238\u767D\u67CF\u767E\u6446\u4F70\u8D25\u62DC\u7A17\u6591\u73ED\u642C\u6273\u822C\u9881\u677F\u7248\u626E\u62CC\u4F34\u74E3\u534A\u529E\u7ECA\u90A6\u5E2E\u6886\u699C\u8180\u7ED1\u68D2\u78C5\u868C\u9551\u508D\u8C24\u82DE\u80DE\u5305\u8912\u5265"],["b140","\u76C4\u76C7\u76C9\u76CB\u76CC\u76D3\u76D5\u76D9\u76DA\u76DC\u76DD\u76DE\u76E0",4,"\u76E6",7,"\u76F0\u76F3\u76F5\u76F6\u76F7\u76FA\u76FB\u76FD\u76FF\u7700\u7702\u7703\u7705\u7706\u770A\u770C\u770E",10,"\u771B\u771C\u771D\u771E\u7721\u7723\u7724\u7725\u7727\u772A\u772B"],["b180","\u772C\u772E\u7730",4,"\u7739\u773B\u773D\u773E\u773F\u7742\u7744\u7745\u7746\u7748",7,"\u7752",7,"\u775C\u8584\u96F9\u4FDD\u5821\u9971\u5B9D\u62B1\u62A5\u66B4\u8C79\u9C8D\u7206\u676F\u7891\u60B2\u5351\u5317\u8F88\u80CC\u8D1D\u94A1\u500D\u72C8\u5907\u60EB\u7119\u88AB\u5954\u82EF\u672C\u7B28\u5D29\u7EF7\u752D\u6CF5\u8E66\u8FF8\u903C\u9F3B\u6BD4\u9119\u7B14\u5F7C\u78A7\u84D6\u853D\u6BD5\u6BD9\u6BD6\u5E01\u5E87\u75F9\u95ED\u655D\u5F0A\u5FC5\u8F9F\u58C1\u81C2\u907F\u965B\u97AD\u8FB9\u7F16\u8D2C\u6241\u4FBF\u53D8\u535E\u8FA8\u8FA9\u8FAB\u904D\u6807\u5F6A\u8198\u8868\u9CD6\u618B\u522B\u762A\u5F6C\u658C\u6FD2\u6EE8\u5BBE\u6448\u5175\u51B0\u67C4\u4E19\u79C9\u997C\u70B3"],["b240","\u775D\u775E\u775F\u7760\u7764\u7767\u7769\u776A\u776D",11,"\u777A\u777B\u777C\u7781\u7782\u7783\u7786",5,"\u778F\u7790\u7793",11,"\u77A1\u77A3\u77A4\u77A6\u77A8\u77AB\u77AD\u77AE\u77AF\u77B1\u77B2\u77B4\u77B6",4],["b280","\u77BC\u77BE\u77C0",12,"\u77CE",8,"\u77D8\u77D9\u77DA\u77DD",4,"\u77E4\u75C5\u5E76\u73BB\u83E0\u64AD\u62E8\u94B5\u6CE2\u535A\u52C3\u640F\u94C2\u7B94\u4F2F\u5E1B\u8236\u8116\u818A\u6E24\u6CCA\u9A73\u6355\u535C\u54FA\u8865\u57E0\u4E0D\u5E03\u6B65\u7C3F\u90E8\u6016\u64E6\u731C\u88C1\u6750\u624D\u8D22\u776C\u8E29\u91C7\u5F69\u83DC\u8521\u9910\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u82CD\u8231\u4ED3\u6CA7\u85CF\u64CD\u7CD9\u69FD\u66F9\u8349\u5395\u7B56\u4FA7\u518C\u6D4B\u5C42\u8E6D\u63D2\u53C9\u832C\u8336\u67E5\u78B4\u643D\u5BDF\u5C94\u5DEE\u8BE7\u62C6\u67F4\u8C7A\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u660C\u7316"],["b340","\u77E6\u77E8\u77EA\u77EF\u77F0\u77F1\u77F2\u77F4\u77F5\u77F7\u77F9\u77FA\u77FB\u77FC\u7803",5,"\u780A\u780B\u780E\u780F\u7810\u7813\u7815\u7819\u781B\u781E\u7820\u7821\u7822\u7824\u7828\u782A\u782B\u782E\u782F\u7831\u7832\u7833\u7835\u7836\u783D\u783F\u7841\u7842\u7843\u7844\u7846\u7848\u7849\u784A\u784B\u784D\u784F\u7851\u7853\u7854\u7858\u7859\u785A"],["b380","\u785B\u785C\u785E",11,"\u786F",7,"\u7878\u7879\u787A\u787B\u787D",6,"\u573A\u5C1D\u5E38\u957F\u507F\u80A0\u5382\u655E\u7545\u5531\u5021\u8D85\u6284\u949E\u671D\u5632\u6F6E\u5DE2\u5435\u7092\u8F66\u626F\u64A4\u63A3\u5F7B\u6F88\u90F4\u81E3\u8FB0\u5C18\u6668\u5FF1\u6C89\u9648\u8D81\u886C\u6491\u79F0\u57CE\u6A59\u6210\u5448\u4E58\u7A0B\u60E9\u6F84\u8BDA\u627F\u901E\u9A8B\u79E4\u5403\u75F4\u6301\u5319\u6C60\u8FDF\u5F1B\u9A70\u803B\u9F7F\u4F88\u5C3A\u8D64\u7FC5\u65A5\u70BD\u5145\u51B2\u866B\u5D07\u5BA0\u62BD\u916C\u7574\u8E0C\u7A20\u6101\u7B79\u4EC7\u7EF8\u7785\u4E11\u81ED\u521D\u51FA\u6A71\u53A8\u8E87\u9504\u96CF\u6EC1\u9664\u695A"],["b440","\u7884\u7885\u7886\u7888\u788A\u788B\u788F\u7890\u7892\u7894\u7895\u7896\u7899\u789D\u789E\u78A0\u78A2\u78A4\u78A6\u78A8",7,"\u78B5\u78B6\u78B7\u78B8\u78BA\u78BB\u78BC\u78BD\u78BF\u78C0\u78C2\u78C3\u78C4\u78C6\u78C7\u78C8\u78CC\u78CD\u78CE\u78CF\u78D1\u78D2\u78D3\u78D6\u78D7\u78D8\u78DA",9],["b480","\u78E4\u78E5\u78E6\u78E7\u78E9\u78EA\u78EB\u78ED",4,"\u78F3\u78F5\u78F6\u78F8\u78F9\u78FB",5,"\u7902\u7903\u7904\u7906",6,"\u7840\u50A8\u77D7\u6410\u89E6\u5904\u63E3\u5DDD\u7A7F\u693D\u4F20\u8239\u5598\u4E32\u75AE\u7A97\u5E62\u5E8A\u95EF\u521B\u5439\u708A\u6376\u9524\u5782\u6625\u693F\u9187\u5507\u6DF3\u7EAF\u8822\u6233\u7EF0\u75B5\u8328\u78C1\u96CC\u8F9E\u6148\u74F7\u8BCD\u6B64\u523A\u8D50\u6B21\u806A\u8471\u56F1\u5306\u4ECE\u4E1B\u51D1\u7C97\u918B\u7C07\u4FC3\u8E7F\u7BE1\u7A9C\u6467\u5D14\u50AC\u8106\u7601\u7CB9\u6DEC\u7FE0\u6751\u5B58\u5BF8\u78CB\u64AE\u6413\u63AA\u632B\u9519\u642D\u8FBE\u7B54\u7629\u6253\u5927\u5446\u6B79\u50A3\u6234\u5E26\u6B86\u4EE3\u8D37\u888B\u5F85\u902E"],["b540","\u790D",5,"\u7914",9,"\u791F",4,"\u7925",14,"\u7935",4,"\u793D\u793F\u7942\u7943\u7944\u7945\u7947\u794A",8,"\u7954\u7955\u7958\u7959\u7961\u7963"],["b580","\u7964\u7966\u7969\u796A\u796B\u796C\u796E\u7970",6,"\u7979\u797B",4,"\u7982\u7983\u7986\u7987\u7988\u7989\u798B\u798C\u798D\u798E\u7990\u7991\u7992\u6020\u803D\u62C5\u4E39\u5355\u90F8\u63B8\u80C6\u65E6\u6C2E\u4F46\u60EE\u6DE1\u8BDE\u5F39\u86CB\u5F53\u6321\u515A\u8361\u6863\u5200\u6363\u8E48\u5012\u5C9B\u7977\u5BFC\u5230\u7A3B\u60BC\u9053\u76D7\u5FB7\u5F97\u7684\u8E6C\u706F\u767B\u7B49\u77AA\u51F3\u9093\u5824\u4F4E\u6EF4\u8FEA\u654C\u7B1B\u72C4\u6DA4\u7FDF\u5AE1\u62B5\u5E95\u5730\u8482\u7B2C\u5E1D\u5F1F\u9012\u7F14\u98A0\u6382\u6EC7\u7898\u70B9\u5178\u975B\u57AB\u7535\u4F43\u7538\u5E97\u60E6\u5960\u6DC0\u6BBF\u7889\u53FC\u96D5\u51CB\u5201\u6389\u540A\u9493\u8C03\u8DCC\u7239\u789F\u8776\u8FED\u8C0D\u53E0"],["b640","\u7993",6,"\u799B",11,"\u79A8",10,"\u79B4",4,"\u79BC\u79BF\u79C2\u79C4\u79C5\u79C7\u79C8\u79CA\u79CC\u79CE\u79CF\u79D0\u79D3\u79D4\u79D6\u79D7\u79D9",5,"\u79E0\u79E1\u79E2\u79E5\u79E8\u79EA"],["b680","\u79EC\u79EE\u79F1",6,"\u79F9\u79FA\u79FC\u79FE\u79FF\u7A01\u7A04\u7A05\u7A07\u7A08\u7A09\u7A0A\u7A0C\u7A0F",4,"\u7A15\u7A16\u7A18\u7A19\u7A1B\u7A1C\u4E01\u76EF\u53EE\u9489\u9876\u9F0E\u952D\u5B9A\u8BA2\u4E22\u4E1C\u51AC\u8463\u61C2\u52A8\u680B\u4F97\u606B\u51BB\u6D1E\u515C\u6296\u6597\u9661\u8C46\u9017\u75D8\u90FD\u7763\u6BD2\u728A\u72EC\u8BFB\u5835\u7779\u8D4C\u675C\u9540\u809A\u5EA6\u6E21\u5992\u7AEF\u77ED\u953B\u6BB5\u65AD\u7F0E\u5806\u5151\u961F\u5BF9\u58A9\u5428\u8E72\u6566\u987F\u56E4\u949D\u76FE\u9041\u6387\u54C6\u591A\u593A\u579B\u8EB2\u6735\u8DFA\u8235\u5241\u60F0\u5815\u86FE\u5CE8\u9E45\u4FC4\u989D\u8BB9\u5A25\u6076\u5384\u627C\u904F\u9102\u997F\u6069\u800C\u513F\u8033\u5C14\u9975\u6D31\u4E8C"],["b740","\u7A1D\u7A1F\u7A21\u7A22\u7A24",14,"\u7A34\u7A35\u7A36\u7A38\u7A3A\u7A3E\u7A40",5,"\u7A47",9,"\u7A52",4,"\u7A58",16],["b780","\u7A69",6,"\u7A71\u7A72\u7A73\u7A75\u7A7B\u7A7C\u7A7D\u7A7E\u7A82\u7A85\u7A87\u7A89\u7A8A\u7A8B\u7A8C\u7A8E\u7A8F\u7A90\u7A93\u7A94\u7A99\u7A9A\u7A9B\u7A9E\u7AA1\u7AA2\u8D30\u53D1\u7F5A\u7B4F\u4F10\u4E4F\u9600\u6CD5\u73D0\u85E9\u5E06\u756A\u7FFB\u6A0A\u77FE\u9492\u7E41\u51E1\u70E6\u53CD\u8FD4\u8303\u8D29\u72AF\u996D\u6CDB\u574A\u82B3\u65B9\u80AA\u623F\u9632\u59A8\u4EFF\u8BBF\u7EBA\u653E\u83F2\u975E\u5561\u98DE\u80A5\u532A\u8BFD\u5420\u80BA\u5E9F\u6CB8\u8D39\u82AC\u915A\u5429\u6C1B\u5206\u7EB7\u575F\u711A\u6C7E\u7C89\u594B\u4EFD\u5FFF\u6124\u7CAA\u4E30\u5C01\u67AB\u8702\u5CF0\u950B\u98CE\u75AF\u70FD\u9022\u51AF\u7F1D\u8BBD\u5949\u51E4\u4F5B\u5426\u592B\u6577\u80A4\u5B75\u6276\u62C2\u8F90\u5E45\u6C1F\u7B26\u4F0F\u4FD8\u670D"],["b840","\u7AA3\u7AA4\u7AA7\u7AA9\u7AAA\u7AAB\u7AAE",4,"\u7AB4",10,"\u7AC0",10,"\u7ACC",9,"\u7AD7\u7AD8\u7ADA\u7ADB\u7ADC\u7ADD\u7AE1\u7AE2\u7AE4\u7AE7",5,"\u7AEE\u7AF0\u7AF1\u7AF2\u7AF3"],["b880","\u7AF4",4,"\u7AFB\u7AFC\u7AFE\u7B00\u7B01\u7B02\u7B05\u7B07\u7B09\u7B0C\u7B0D\u7B0E\u7B10\u7B12\u7B13\u7B16\u7B17\u7B18\u7B1A\u7B1C\u7B1D\u7B1F\u7B21\u7B22\u7B23\u7B27\u7B29\u7B2D\u6D6E\u6DAA\u798F\u88B1\u5F17\u752B\u629A\u8F85\u4FEF\u91DC\u65A7\u812F\u8151\u5E9C\u8150\u8D74\u526F\u8986\u8D4B\u590D\u5085\u4ED8\u961C\u7236\u8179\u8D1F\u5BCC\u8BA3\u9644\u5987\u7F1A\u5490\u5676\u560E\u8BE5\u6539\u6982\u9499\u76D6\u6E89\u5E72\u7518\u6746\u67D1\u7AFF\u809D\u8D76\u611F\u79C6\u6562\u8D63\u5188\u521A\u94A2\u7F38\u809B\u7EB2\u5C97\u6E2F\u6760\u7BD9\u768B\u9AD8\u818F\u7F94\u7CD5\u641E\u9550\u7A3F\u544A\u54E5\u6B4C\u6401\u6208\u9E3D\u80F3\u7599\u5272\u9769\u845B\u683C\u86E4\u9601\u9694\u94EC\u4E2A\u5404\u7ED9\u6839\u8DDF\u8015\u66F4\u5E9A\u7FB9"],["b940","\u7B2F\u7B30\u7B32\u7B34\u7B35\u7B36\u7B37\u7B39\u7B3B\u7B3D\u7B3F",5,"\u7B46\u7B48\u7B4A\u7B4D\u7B4E\u7B53\u7B55\u7B57\u7B59\u7B5C\u7B5E\u7B5F\u7B61\u7B63",10,"\u7B6F\u7B70\u7B73\u7B74\u7B76\u7B78\u7B7A\u7B7C\u7B7D\u7B7F\u7B81\u7B82\u7B83\u7B84\u7B86",6,"\u7B8E\u7B8F"],["b980","\u7B91\u7B92\u7B93\u7B96\u7B98\u7B99\u7B9A\u7B9B\u7B9E\u7B9F\u7BA0\u7BA3\u7BA4\u7BA5\u7BAE\u7BAF\u7BB0\u7BB2\u7BB3\u7BB5\u7BB6\u7BB7\u7BB9",7,"\u7BC2\u7BC3\u7BC4\u57C2\u803F\u6897\u5DE5\u653B\u529F\u606D\u9F9A\u4F9B\u8EAC\u516C\u5BAB\u5F13\u5DE9\u6C5E\u62F1\u8D21\u5171\u94A9\u52FE\u6C9F\u82DF\u72D7\u57A2\u6784\u8D2D\u591F\u8F9C\u83C7\u5495\u7B8D\u4F30\u6CBD\u5B64\u59D1\u9F13\u53E4\u86CA\u9AA8\u8C37\u80A1\u6545\u987E\u56FA\u96C7\u522E\u74DC\u5250\u5BE1\u6302\u8902\u4E56\u62D0\u602A\u68FA\u5173\u5B98\u51A0\u89C2\u7BA1\u9986\u7F50\u60EF\u704C\u8D2F\u5149\u5E7F\u901B\u7470\u89C4\u572D\u7845\u5F52\u9F9F\u95FA\u8F68\u9B3C\u8BE1\u7678\u6842\u67DC\u8DEA\u8D35\u523D\u8F8A\u6EDA\u68CD\u9505\u90ED\u56FD\u679C\u88F9\u8FC7\u54C8"],["ba40","\u7BC5\u7BC8\u7BC9\u7BCA\u7BCB\u7BCD\u7BCE\u7BCF\u7BD0\u7BD2\u7BD4",4,"\u7BDB\u7BDC\u7BDE\u7BDF\u7BE0\u7BE2\u7BE3\u7BE4\u7BE7\u7BE8\u7BE9\u7BEB\u7BEC\u7BED\u7BEF\u7BF0\u7BF2",4,"\u7BF8\u7BF9\u7BFA\u7BFB\u7BFD\u7BFF",7,"\u7C08\u7C09\u7C0A\u7C0D\u7C0E\u7C10",5,"\u7C17\u7C18\u7C19"],["ba80","\u7C1A",4,"\u7C20",5,"\u7C28\u7C29\u7C2B",12,"\u7C39",5,"\u7C42\u9AB8\u5B69\u6D77\u6C26\u4EA5\u5BB3\u9A87\u9163\u61A8\u90AF\u97E9\u542B\u6DB5\u5BD2\u51FD\u558A\u7F55\u7FF0\u64BC\u634D\u65F1\u61BE\u608D\u710A\u6C57\u6C49\u592F\u676D\u822A\u58D5\u568E\u8C6A\u6BEB\u90DD\u597D\u8017\u53F7\u6D69\u5475\u559D\u8377\u83CF\u6838\u79BE\u548C\u4F55\u5408\u76D2\u8C89\u9602\u6CB3\u6DB8\u8D6B\u8910\u9E64\u8D3A\u563F\u9ED1\u75D5\u5F88\u72E0\u6068\u54FC\u4EA8\u6A2A\u8861\u6052\u8F70\u54C4\u70D8\u8679\u9E3F\u6D2A\u5B8F\u5F18\u7EA2\u5589\u4FAF\u7334\u543C\u539A\u5019\u540E\u547C\u4E4E\u5FFD\u745A\u58F6\u846B\u80E1\u8774\u72D0\u7CCA\u6E56"],["bb40","\u7C43",9,"\u7C4E",36,"\u7C75",5,"\u7C7E",9],["bb80","\u7C88\u7C8A",6,"\u7C93\u7C94\u7C96\u7C99\u7C9A\u7C9B\u7CA0\u7CA1\u7CA3\u7CA6\u7CA7\u7CA8\u7CA9\u7CAB\u7CAC\u7CAD\u7CAF\u7CB0\u7CB4",4,"\u7CBA\u7CBB\u5F27\u864E\u552C\u62A4\u4E92\u6CAA\u6237\u82B1\u54D7\u534E\u733E\u6ED1\u753B\u5212\u5316\u8BDD\u69D0\u5F8A\u6000\u6DEE\u574F\u6B22\u73AF\u6853\u8FD8\u7F13\u6362\u60A3\u5524\u75EA\u8C62\u7115\u6DA3\u5BA6\u5E7B\u8352\u614C\u9EC4\u78FA\u8757\u7C27\u7687\u51F0\u60F6\u714C\u6643\u5E4C\u604D\u8C0E\u7070\u6325\u8F89\u5FBD\u6062\u86D4\u56DE\u6BC1\u6094\u6167\u5349\u60E0\u6666\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8364\u660F\u5A5A\u9B42\u6D51\u6DF7\u8C41\u6D3B\u4F19\u706B\u83B7\u6216\u60D1\u970D\u8D27\u7978\u51FB\u573E\u57FA\u673A\u7578\u7A3D\u79EF\u7B95"],["bc40","\u7CBF\u7CC0\u7CC2\u7CC3\u7CC4\u7CC6\u7CC9\u7CCB\u7CCE",6,"\u7CD8\u7CDA\u7CDB\u7CDD\u7CDE\u7CE1",6,"\u7CE9",5,"\u7CF0",7,"\u7CF9\u7CFA\u7CFC",13,"\u7D0B",5],["bc80","\u7D11",14,"\u7D21\u7D23\u7D24\u7D25\u7D26\u7D28\u7D29\u7D2A\u7D2C\u7D2D\u7D2E\u7D30",6,"\u808C\u9965\u8FF9\u6FC0\u8BA5\u9E21\u59EC\u7EE9\u7F09\u5409\u6781\u68D8\u8F91\u7C4D\u96C6\u53CA\u6025\u75BE\u6C72\u5373\u5AC9\u7EA7\u6324\u51E0\u810A\u5DF1\u84DF\u6280\u5180\u5B63\u4F0E\u796D\u5242\u60B8\u6D4E\u5BC4\u5BC2\u8BA1\u8BB0\u65E2\u5FCC\u9645\u5993\u7EE7\u7EAA\u5609\u67B7\u5939\u4F73\u5BB6\u52A0\u835A\u988A\u8D3E\u7532\u94BE\u5047\u7A3C\u4EF7\u67B6\u9A7E\u5AC1\u6B7C\u76D1\u575A\u5C16\u7B3A\u95F4\u714E\u517C\u80A9\u8270\u5978\u7F04\u8327\u68C0\u67EC\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u526A\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u7BAD\u4EF6"],["bd40","\u7D37",54,"\u7D6F",7],["bd80","\u7D78",32,"\u5065\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u5EFA\u50F5\u59DC\u5C06\u6D46\u6C5F\u7586\u848B\u6868\u5956\u8BB2\u5320\u9171\u964D\u8549\u6912\u7901\u7126\u80F6\u4EA4\u90CA\u6D47\u9A84\u5A07\u56BC\u6405\u94F0\u77EB\u4FA5\u811A\u72E1\u89D2\u997A\u7F34\u7EDE\u527F\u6559\u9175\u8F7F\u8F83\u53EB\u7A96\u63ED\u63A5\u7686\u79F8\u8857\u9636\u622A\u52AB\u8282\u6854\u6770\u6377\u776B\u7AED\u6D01\u7ED3\u89E3\u59D0\u6212\u85C9\u82A5\u754C\u501F\u4ECB\u75A5\u8BEB\u5C4A\u5DFE\u7B4B\u65A4\u91D1\u4ECA\u6D25\u895F\u7D27\u9526\u4EC5\u8C28\u8FDB\u9773\u664B\u7981\u8FD1\u70EC\u6D78"],["be40","\u7D99",12,"\u7DA7",6,"\u7DAF",42],["be80","\u7DDA",32,"\u5C3D\u52B2\u8346\u5162\u830E\u775B\u6676\u9CB8\u4EAC\u60CA\u7CBE\u7CB3\u7ECF\u4E95\u8B66\u666F\u9888\u9759\u5883\u656C\u955C\u5F84\u75C9\u9756\u7ADF\u7ADE\u51C0\u70AF\u7A98\u63EA\u7A76\u7EA0\u7396\u97ED\u4E45\u7078\u4E5D\u9152\u53A9\u6551\u65E7\u81FC\u8205\u548E\u5C31\u759A\u97A0\u62D8\u72D9\u75BD\u5C45\u9A79\u83CA\u5C40\u5480\u77E9\u4E3E\u6CAE\u805A\u62D2\u636E\u5DE8\u5177\u8DDD\u8E1E\u952F\u4FF1\u53E5\u60E7\u70AC\u5267\u6350\u9E43\u5A1F\u5026\u7737\u5377\u7EE2\u6485\u652B\u6289\u6398\u5014\u7235\u89C9\u51B3\u8BC0\u7EDD\u5747\u83CC\u94A7\u519B\u541B\u5CFB"],["bf40","\u7DFB",62],["bf80","\u7E3A\u7E3C",4,"\u7E42",4,"\u7E48",21,"\u4FCA\u7AE3\u6D5A\u90E1\u9A8F\u5580\u5496\u5361\u54AF\u5F00\u63E9\u6977\u51EF\u6168\u520A\u582A\u52D8\u574E\u780D\u770B\u5EB7\u6177\u7CE0\u625B\u6297\u4EA2\u7095\u8003\u62F7\u70E4\u9760\u5777\u82DB\u67EF\u68F5\u78D5\u9897\u79D1\u58F3\u54B3\u53EF\u6E34\u514B\u523B\u5BA2\u8BFE\u80AF\u5543\u57A6\u6073\u5751\u542D\u7A7A\u6050\u5B54\u63A7\u62A0\u53E3\u6263\u5BC7\u67AF\u54ED\u7A9F\u82E6\u9177\u5E93\u88E4\u5938\u57AE\u630E\u8DE8\u80EF\u5757\u7B77\u4FA9\u5FEB\u5BBD\u6B3E\u5321\u7B50\u72C2\u6846\u77FF\u7736\u65F7\u51B5\u4E8F\u76D4\u5CBF\u7AA5\u8475\u594E\u9B41\u5080"],["c040","\u7E5E",35,"\u7E83",23,"\u7E9C\u7E9D\u7E9E"],["c080","\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EEC\u7EF9\u7F0A\u7F10\u7F1E\u7F37\u7F39\u7F3B",6,"\u7F43\u7F46",9,"\u7F52\u7F53\u9988\u6127\u6E83\u5764\u6606\u6346\u56F0\u62EC\u6269\u5ED3\u9614\u5783\u62C9\u5587\u8721\u814A\u8FA3\u5566\u83B1\u6765\u8D56\u84DD\u5A6A\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u7405\u6994\u72FC\u5ECA\u90CE\u6717\u6D6A\u635E\u52B3\u7262\u8001\u4F6C\u59E5\u916A\u70D9\u6D9D\u52D2\u4E50\u96F7\u956D\u857E\u78CA\u7D2F\u5121\u5792\u64C2\u808B\u7C7B\u6CEA\u68F1\u695E\u51B7\u5398\u68A8\u7281\u9ECE\u7BF1\u72F8\u79BB\u6F13\u7406\u674E\u91CC\u9CA4\u793C\u8389\u8354\u540F\u6817\u4E3D\u5389\u52B1\u783E\u5386\u5229\u5088\u4F8B\u4FD0"],["c140","\u7F56\u7F59\u7F5B\u7F5C\u7F5D\u7F5E\u7F60\u7F63",4,"\u7F6B\u7F6C\u7F6D\u7F6F\u7F70\u7F73\u7F75\u7F76\u7F77\u7F78\u7F7A\u7F7B\u7F7C\u7F7D\u7F7F\u7F80\u7F82",7,"\u7F8B\u7F8D\u7F8F",4,"\u7F95",4,"\u7F9B\u7F9C\u7FA0\u7FA2\u7FA3\u7FA5\u7FA6\u7FA8",6,"\u7FB1"],["c180","\u7FB3",4,"\u7FBA\u7FBB\u7FBE\u7FC0\u7FC2\u7FC3\u7FC4\u7FC6\u7FC7\u7FC8\u7FC9\u7FCB\u7FCD\u7FCF",4,"\u7FD6\u7FD7\u7FD9",5,"\u7FE2\u7FE3\u75E2\u7ACB\u7C92\u6CA5\u96B6\u529B\u7483\u54E9\u4FE9\u8054\u83B2\u8FDE\u9570\u5EC9\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u7CAE\u51C9\u6881\u7CB1\u826F\u4E24\u8F86\u91CF\u667E\u4EAE\u8C05\u64A9\u804A\u50DA\u7597\u71CE\u5BE5\u8FBD\u6F66\u4E86\u6482\u9563\u5ED6\u6599\u5217\u88C2\u70C8\u52A3\u730E\u7433\u6797\u78F7\u9716\u4E34\u90BB\u9CDE\u6DCB\u51DB\u8D41\u541D\u62CE\u73B2\u83F1\u96F6\u9F84\u94C3\u4F36\u7F9A\u51CC\u7075\u9675\u5CAD\u9886\u53E6\u4EE4\u6E9C\u7409\u69B4\u786B\u998F\u7559\u5218\u7624\u6D41\u67F3\u516D\u9F99\u804B\u5499\u7B3C\u7ABF"],["c240","\u7FE4\u7FE7\u7FE8\u7FEA\u7FEB\u7FEC\u7FED\u7FEF\u7FF2\u7FF4",6,"\u7FFD\u7FFE\u7FFF\u8002\u8007\u8008\u8009\u800A\u800E\u800F\u8011\u8013\u801A\u801B\u801D\u801E\u801F\u8021\u8023\u8024\u802B",5,"\u8032\u8034\u8039\u803A\u803C\u803E\u8040\u8041\u8044\u8045\u8047\u8048\u8049\u804E\u804F\u8050\u8051\u8053\u8055\u8056\u8057"],["c280","\u8059\u805B",13,"\u806B",5,"\u8072",11,"\u9686\u5784\u62E2\u9647\u697C\u5A04\u6402\u7BD3\u6F0F\u964B\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u9E93\u788C\u9732\u8DEF\u8D42\u9E7F\u6F5E\u7984\u5F55\u9646\u622E\u9A74\u5415\u94DD\u4FA3\u65C5\u5C65\u5C61\u7F15\u8651\u6C2F\u5F8B\u7387\u6EE4\u7EFF\u5CE6\u631B\u5B6A\u6EE6\u5375\u4E71\u63A0\u7565\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u841D\u87BA\u7F57\u903B\u9523\u7BA9\u9AA1\u88F8\u843D\u6D1B\u9A86\u7EDC\u5988\u9EBB\u739B\u7801\u8682\u9A6C\u9A82\u561B\u5417\u57CB\u4E70\u9EA6\u5356\u8FC8\u8109\u7792\u9992\u86EE\u6EE1\u8513\u66FC\u6162\u6F2B"],["c340","\u807E\u8081\u8082\u8085\u8088\u808A\u808D",5,"\u8094\u8095\u8097\u8099\u809E\u80A3\u80A6\u80A7\u80A8\u80AC\u80B0\u80B3\u80B5\u80B6\u80B8\u80B9\u80BB\u80C5\u80C7",4,"\u80CF",6,"\u80D8\u80DF\u80E0\u80E2\u80E3\u80E6\u80EE\u80F5\u80F7\u80F9\u80FB\u80FE\u80FF\u8100\u8101\u8103\u8104\u8105\u8107\u8108\u810B"],["c380","\u810C\u8115\u8117\u8119\u811B\u811C\u811D\u811F",12,"\u812D\u812E\u8130\u8133\u8134\u8135\u8137\u8139",4,"\u813F\u8C29\u8292\u832B\u76F2\u6C13\u5FD9\u83BD\u732B\u8305\u951A\u6BDB\u77DB\u94C6\u536F\u8302\u5192\u5E3D\u8C8C\u8D38\u4E48\u73AB\u679A\u6885\u9176\u9709\u7164\u6CA1\u7709\u5A92\u9541\u6BCF\u7F8E\u6627\u5BD0\u59B9\u5A9A\u95E8\u95F7\u4EEC\u840C\u8499\u6AAC\u76DF\u9530\u731B\u68A6\u5B5F\u772F\u919A\u9761\u7CDC\u8FF7\u8C1C\u5F25\u7C73\u79D8\u89C5\u6CCC\u871C\u5BC6\u5E42\u68C9\u7720\u7EF5\u5195\u514D\u52C9\u5A29\u7F05\u9762\u82D7\u63CF\u7784\u85D0\u79D2\u6E3A\u5E99\u5999\u8511\u706D\u6C11\u62BF\u76BF\u654F\u60AF\u95FD\u660E\u879F\u9E23\u94ED\u540D\u547D\u8C2C\u6478"],["c440","\u8140",5,"\u8147\u8149\u814D\u814E\u814F\u8152\u8156\u8157\u8158\u815B",4,"\u8161\u8162\u8163\u8164\u8166\u8168\u816A\u816B\u816C\u816F\u8172\u8173\u8175\u8176\u8177\u8178\u8181\u8183",4,"\u8189\u818B\u818C\u818D\u818E\u8190\u8192",5,"\u8199\u819A\u819E",4,"\u81A4\u81A5"],["c480","\u81A7\u81A9\u81AB",7,"\u81B4",5,"\u81BC\u81BD\u81BE\u81BF\u81C4\u81C5\u81C7\u81C8\u81C9\u81CB\u81CD",6,"\u6479\u8611\u6A21\u819C\u78E8\u6469\u9B54\u62B9\u672B\u83AB\u58A8\u9ED8\u6CAB\u6F20\u5BDE\u964C\u8C0B\u725F\u67D0\u62C7\u7261\u4EA9\u59C6\u6BCD\u5893\u66AE\u5E55\u52DF\u6155\u6728\u76EE\u7766\u7267\u7A46\u62FF\u54EA\u5450\u94A0\u90A3\u5A1C\u7EB3\u6C16\u4E43\u5976\u8010\u5948\u5357\u7537\u96BE\u56CA\u6320\u8111\u607C\u95F9\u6DD6\u5462\u9981\u5185\u5AE9\u80FD\u59AE\u9713\u502A\u6CE5\u5C3C\u62DF\u4F60\u533F\u817B\u9006\u6EBA\u852B\u62C8\u5E74\u78BE\u64B5\u637B\u5FF5\u5A18\u917F\u9E1F\u5C3F\u634F\u8042\u5B7D\u556E\u954A\u954D\u6D85\u60A8\u67E0\u72DE\u51DD\u5B81"],["c540","\u81D4",14,"\u81E4\u81E5\u81E6\u81E8\u81E9\u81EB\u81EE",4,"\u81F5",5,"\u81FD\u81FF\u8203\u8207",4,"\u820E\u820F\u8211\u8213\u8215",5,"\u821D\u8220\u8224\u8225\u8226\u8227\u8229\u822E\u8232\u823A\u823C\u823D\u823F"],["c580","\u8240\u8241\u8242\u8243\u8245\u8246\u8248\u824A\u824C\u824D\u824E\u8250",7,"\u8259\u825B\u825C\u825D\u825E\u8260",7,"\u8269\u62E7\u6CDE\u725B\u626D\u94AE\u7EBD\u8113\u6D53\u519C\u5F04\u5974\u52AA\u6012\u5973\u6696\u8650\u759F\u632A\u61E6\u7CEF\u8BFA\u54E6\u6B27\u9E25\u6BB4\u85D5\u5455\u5076\u6CA4\u556A\u8DB4\u722C\u5E15\u6015\u7436\u62CD\u6392\u724C\u5F98\u6E43\u6D3E\u6500\u6F58\u76D8\u78D0\u76FC\u7554\u5224\u53DB\u4E53\u5E9E\u65C1\u802A\u80D6\u629B\u5486\u5228\u70AE\u888D\u8DD1\u6CE1\u5478\u80DA\u57F9\u88F4\u8D54\u966A\u914D\u4F69\u6C9B\u55B7\u76C6\u7830\u62A8\u70F9\u6F8E\u5F6D\u84EC\u68DA\u787C\u7BF7\u81A8\u670B\u9E4F\u6367\u78B0\u576F\u7812\u9739\u6279\u62AB\u5288\u7435\u6BD7"],["c640","\u826A\u826B\u826C\u826D\u8271\u8275\u8276\u8277\u8278\u827B\u827C\u8280\u8281\u8283\u8285\u8286\u8287\u8289\u828C\u8290\u8293\u8294\u8295\u8296\u829A\u829B\u829E\u82A0\u82A2\u82A3\u82A7\u82B2\u82B5\u82B6\u82BA\u82BB\u82BC\u82BF\u82C0\u82C2\u82C3\u82C5\u82C6\u82C9\u82D0\u82D6\u82D9\u82DA\u82DD\u82E2\u82E7\u82E8\u82E9\u82EA\u82EC\u82ED\u82EE\u82F0\u82F2\u82F3\u82F5\u82F6\u82F8"],["c680","\u82FA\u82FC",4,"\u830A\u830B\u830D\u8310\u8312\u8313\u8316\u8318\u8319\u831D",9,"\u8329\u832A\u832E\u8330\u8332\u8337\u833B\u833D\u5564\u813E\u75B2\u76AE\u5339\u75DE\u50FB\u5C41\u8B6C\u7BC7\u504F\u7247\u9A97\u98D8\u6F02\u74E2\u7968\u6487\u77A5\u62FC\u9891\u8D2B\u54C1\u8058\u4E52\u576A\u82F9\u840D\u5E73\u51ED\u74F6\u8BC4\u5C4F\u5761\u6CFC\u9887\u5A46\u7834\u9B44\u8FEB\u7C95\u5256\u6251\u94FA\u4EC6\u8386\u8461\u83E9\u84B2\u57D4\u6734\u5703\u666E\u6D66\u8C31\u66DD\u7011\u671F\u6B3A\u6816\u621A\u59BB\u4E03\u51C4\u6F06\u67D2\u6C8F\u5176\u68CB\u5947\u6B67\u7566\u5D0E\u8110\u9F50\u65D7\u7948\u7941\u9A91\u8D77\u5C82\u4E5E\u4F01\u542F\u5951\u780C\u5668\u6C14\u8FC4\u5F03\u6C7D\u6CE3\u8BAB\u6390"],["c740","\u833E\u833F\u8341\u8342\u8344\u8345\u8348\u834A",4,"\u8353\u8355",4,"\u835D\u8362\u8370",6,"\u8379\u837A\u837E",6,"\u8387\u8388\u838A\u838B\u838C\u838D\u838F\u8390\u8391\u8394\u8395\u8396\u8397\u8399\u839A\u839D\u839F\u83A1",6,"\u83AC\u83AD\u83AE"],["c780","\u83AF\u83B5\u83BB\u83BE\u83BF\u83C2\u83C3\u83C4\u83C6\u83C8\u83C9\u83CB\u83CD\u83CE\u83D0\u83D1\u83D2\u83D3\u83D5\u83D7\u83D9\u83DA\u83DB\u83DE\u83E2\u83E3\u83E4\u83E6\u83E7\u83E8\u83EB\u83EC\u83ED\u6070\u6D3D\u7275\u6266\u948E\u94C5\u5343\u8FC1\u7B7E\u4EDF\u8C26\u4E7E\u9ED4\u94B1\u94B3\u524D\u6F5C\u9063\u6D45\u8C34\u5811\u5D4C\u6B20\u6B49\u67AA\u545B\u8154\u7F8C\u5899\u8537\u5F3A\u62A2\u6A47\u9539\u6572\u6084\u6865\u77A7\u4E54\u4FA8\u5DE7\u9798\u64AC\u7FD8\u5CED\u4FCF\u7A8D\u5207\u8304\u4E14\u602F\u7A83\u94A6\u4FB5\u4EB2\u79E6\u7434\u52E4\u82B9\u64D2\u79BD\u5BDD\u6C81\u9752\u8F7B\u6C22\u503E\u537F\u6E05\u64CE\u6674\u6C30\u60C5\u9877\u8BF7\u5E86\u743C\u7A77\u79CB\u4E18\u90B1\u7403\u6C42\u56DA\u914B\u6CC5\u8D8B\u533A\u86C6\u66F2\u8EAF\u5C48\u9A71\u6E20"],["c840","\u83EE\u83EF\u83F3",4,"\u83FA\u83FB\u83FC\u83FE\u83FF\u8400\u8402\u8405\u8407\u8408\u8409\u840A\u8410\u8412",5,"\u8419\u841A\u841B\u841E",5,"\u8429",7,"\u8432",5,"\u8439\u843A\u843B\u843E",7,"\u8447\u8448\u8449"],["c880","\u844A",6,"\u8452",4,"\u8458\u845D\u845E\u845F\u8460\u8462\u8464",4,"\u846A\u846E\u846F\u8470\u8472\u8474\u8477\u8479\u847B\u847C\u53D6\u5A36\u9F8B\u8DA3\u53BB\u5708\u98A7\u6743\u919B\u6CC9\u5168\u75CA\u62F3\u72AC\u5238\u529D\u7F3A\u7094\u7638\u5374\u9E4A\u69B7\u786E\u96C0\u88D9\u7FA4\u7136\u71C3\u5189\u67D3\u74E4\u58E4\u6518\u56B7\u8BA9\u9976\u6270\u7ED5\u60F9\u70ED\u58EC\u4EC1\u4EBA\u5FCD\u97E7\u4EFB\u8BA4\u5203\u598A\u7EAB\u6254\u4ECD\u65E5\u620E\u8338\u84C9\u8363\u878D\u7194\u6EB6\u5BB9\u7ED2\u5197\u63C9\u67D4\u8089\u8339\u8815\u5112\u5B7A\u5982\u8FB1\u4E73\u6C5D\u5165\u8925\u8F6F\u962E\u854A\u745E\u9510\u95F0\u6DA6\u82E5\u5F31\u6492\u6D12\u8428\u816E\u9CC3\u585E\u8D5B\u4E09\u53C1"],["c940","\u847D",4,"\u8483\u8484\u8485\u8486\u848A\u848D\u848F",7,"\u8498\u849A\u849B\u849D\u849E\u849F\u84A0\u84A2",12,"\u84B0\u84B1\u84B3\u84B5\u84B6\u84B7\u84BB\u84BC\u84BE\u84C0\u84C2\u84C3\u84C5\u84C6\u84C7\u84C8\u84CB\u84CC\u84CE\u84CF\u84D2\u84D4\u84D5\u84D7"],["c980","\u84D8",4,"\u84DE\u84E1\u84E2\u84E4\u84E7",4,"\u84ED\u84EE\u84EF\u84F1",10,"\u84FD\u84FE\u8500\u8501\u8502\u4F1E\u6563\u6851\u55D3\u4E27\u6414\u9A9A\u626B\u5AC2\u745F\u8272\u6DA9\u68EE\u50E7\u838E\u7802\u6740\u5239\u6C99\u7EB1\u50BB\u5565\u715E\u7B5B\u6652\u73CA\u82EB\u6749\u5C71\u5220\u717D\u886B\u95EA\u9655\u64C5\u8D61\u81B3\u5584\u6C55\u6247\u7F2E\u5892\u4F24\u5546\u8D4F\u664C\u4E0A\u5C1A\u88F3\u68A2\u634E\u7A0D\u70E7\u828D\u52FA\u97F6\u5C11\u54E8\u90B5\u7ECD\u5962\u8D4A\u86C7\u820C\u820D\u8D66\u6444\u5C04\u6151\u6D89\u793E\u8BBE\u7837\u7533\u547B\u4F38\u8EAB\u6DF1\u5A20\u7EC5\u795E\u6C88\u5BA1\u5A76\u751A\u80BE\u614E\u6E17\u58F0\u751F\u7525\u7272\u5347\u7EF3"],["ca40","\u8503",8,"\u850D\u850E\u850F\u8510\u8512\u8514\u8515\u8516\u8518\u8519\u851B\u851C\u851D\u851E\u8520\u8522",8,"\u852D",9,"\u853E",4,"\u8544\u8545\u8546\u8547\u854B",10],["ca80","\u8557\u8558\u855A\u855B\u855C\u855D\u855F",4,"\u8565\u8566\u8567\u8569",8,"\u8573\u8575\u8576\u8577\u8578\u857C\u857D\u857F\u8580\u8581\u7701\u76DB\u5269\u80DC\u5723\u5E08\u5931\u72EE\u65BD\u6E7F\u8BD7\u5C38\u8671\u5341\u77F3\u62FE\u65F6\u4EC0\u98DF\u8680\u5B9E\u8BC6\u53F2\u77E2\u4F7F\u5C4E\u9A76\u59CB\u5F0F\u793A\u58EB\u4E16\u67FF\u4E8B\u62ED\u8A93\u901D\u52BF\u662F\u55DC\u566C\u9002\u4ED5\u4F8D\u91CA\u9970\u6C0F\u5E02\u6043\u5BA4\u89C6\u8BD5\u6536\u624B\u9996\u5B88\u5BFF\u6388\u552E\u53D7\u7626\u517D\u852C\u67A2\u68B3\u6B8A\u6292\u8F93\u53D4\u8212\u6DD1\u758F\u4E66\u8D4E\u5B70\u719F\u85AF\u6691\u66D9\u7F72\u8700\u9ECD\u9F20\u5C5E\u672F\u8FF0\u6811\u675F\u620D\u7AD6\u5885\u5EB6\u6570\u6F31"],["cb40","\u8582\u8583\u8586\u8588",6,"\u8590",10,"\u859D",6,"\u85A5\u85A6\u85A7\u85A9\u85AB\u85AC\u85AD\u85B1",5,"\u85B8\u85BA",6,"\u85C2",6,"\u85CA",4,"\u85D1\u85D2"],["cb80","\u85D4\u85D6",5,"\u85DD",6,"\u85E5\u85E6\u85E7\u85E8\u85EA",14,"\u6055\u5237\u800D\u6454\u8870\u7529\u5E05\u6813\u62F4\u971C\u53CC\u723D\u8C01\u6C34\u7761\u7A0E\u542E\u77AC\u987A\u821C\u8BF4\u7855\u6714\u70C1\u65AF\u6495\u5636\u601D\u79C1\u53F8\u4E1D\u6B7B\u8086\u5BFA\u55E3\u56DB\u4F3A\u4F3C\u9972\u5DF3\u677E\u8038\u6002\u9882\u9001\u5B8B\u8BBC\u8BF5\u641C\u8258\u64DE\u55FD\u82CF\u9165\u4FD7\u7D20\u901F\u7C9F\u50F3\u5851\u6EAF\u5BBF\u8BC9\u8083\u9178\u849C\u7B97\u867D\u968B\u968F\u7EE5\u9AD3\u788E\u5C81\u7A57\u9042\u96A7\u795F\u5B59\u635F\u7B0B\u84D1\u68AD\u5506\u7F29\u7410\u7D22\u9501\u6240\u584C\u4ED6\u5B83\u5979\u5854"],["cc40","\u85F9\u85FA\u85FC\u85FD\u85FE\u8600",4,"\u8606",10,"\u8612\u8613\u8614\u8615\u8617",15,"\u8628\u862A",13,"\u8639\u863A\u863B\u863D\u863E\u863F\u8640"],["cc80","\u8641",11,"\u8652\u8653\u8655",4,"\u865B\u865C\u865D\u865F\u8660\u8661\u8663",7,"\u736D\u631E\u8E4B\u8E0F\u80CE\u82D4\u62AC\u53F0\u6CF0\u915E\u592A\u6001\u6C70\u574D\u644A\u8D2A\u762B\u6EE9\u575B\u6A80\u75F0\u6F6D\u8C2D\u8C08\u5766\u6BEF\u8892\u78B3\u63A2\u53F9\u70AD\u6C64\u5858\u642A\u5802\u68E0\u819B\u5510\u7CD6\u5018\u8EBA\u6DCC\u8D9F\u70EB\u638F\u6D9B\u6ED4\u7EE6\u8404\u6843\u9003\u6DD8\u9676\u8BA8\u5957\u7279\u85E4\u817E\u75BC\u8A8A\u68AF\u5254\u8E22\u9511\u63D0\u9898\u8E44\u557C\u4F53\u66FF\u568F\u60D5\u6D95\u5243\u5C49\u5929\u6DFB\u586B\u7530\u751C\u606C\u8214\u8146\u6311\u6761\u8FE2\u773A\u8DF3\u8D34\u94C1\u5E16\u5385\u542C\u70C3"],["cd40","\u866D\u866F\u8670\u8672",6,"\u8683",6,"\u868E",4,"\u8694\u8696",5,"\u869E",4,"\u86A5\u86A6\u86AB\u86AD\u86AE\u86B2\u86B3\u86B7\u86B8\u86B9\u86BB",4,"\u86C1\u86C2\u86C3\u86C5\u86C8\u86CC\u86CD\u86D2\u86D3\u86D5\u86D6\u86D7\u86DA\u86DC"],["cd80","\u86DD\u86E0\u86E1\u86E2\u86E3\u86E5\u86E6\u86E7\u86E8\u86EA\u86EB\u86EC\u86EF\u86F5\u86F6\u86F7\u86FA\u86FB\u86FC\u86FD\u86FF\u8701\u8704\u8705\u8706\u870B\u870C\u870E\u870F\u8710\u8711\u8714\u8716\u6C40\u5EF7\u505C\u4EAD\u5EAD\u633A\u8247\u901A\u6850\u916E\u77B3\u540C\u94DC\u5F64\u7AE5\u6876\u6345\u7B52\u7EDF\u75DB\u5077\u6295\u5934\u900F\u51F8\u79C3\u7A81\u56FE\u5F92\u9014\u6D82\u5C60\u571F\u5410\u5154\u6E4D\u56E2\u63A8\u9893\u817F\u8715\u892A\u9000\u541E\u5C6F\u81C0\u62D6\u6258\u8131\u9E35\u9640\u9A6E\u9A7C\u692D\u59A5\u62D3\u553E\u6316\u54C7\u86D9\u6D3C\u5A03\u74E6\u889C\u6B6A\u5916\u8C4C\u5F2F\u6E7E\u73A9\u987D\u4E38\u70F7\u5B8C\u7897\u633D\u665A\u7696\u60CB\u5B9B\u5A49\u4E07\u8155\u6C6A\u738B\u4EA1\u6789\u7F51\u5F80\u65FA\u671B\u5FD8\u5984\u5A01"],["ce40","\u8719\u871B\u871D\u871F\u8720\u8724\u8726\u8727\u8728\u872A\u872B\u872C\u872D\u872F\u8730\u8732\u8733\u8735\u8736\u8738\u8739\u873A\u873C\u873D\u8740",6,"\u874A\u874B\u874D\u874F\u8750\u8751\u8752\u8754\u8755\u8756\u8758\u875A",5,"\u8761\u8762\u8766",7,"\u876F\u8771\u8772\u8773\u8775"],["ce80","\u8777\u8778\u8779\u877A\u877F\u8780\u8781\u8784\u8786\u8787\u8789\u878A\u878C\u878E",4,"\u8794\u8795\u8796\u8798",6,"\u87A0",4,"\u5DCD\u5FAE\u5371\u97E6\u8FDD\u6845\u56F4\u552F\u60DF\u4E3A\u6F4D\u7EF4\u82C7\u840E\u59D4\u4F1F\u4F2A\u5C3E\u7EAC\u672A\u851A\u5473\u754F\u80C3\u5582\u9B4F\u4F4D\u6E2D\u8C13\u5C09\u6170\u536B\u761F\u6E29\u868A\u6587\u95FB\u7EB9\u543B\u7A33\u7D0A\u95EE\u55E1\u7FC1\u74EE\u631D\u8717\u6DA1\u7A9D\u6211\u65A1\u5367\u63E1\u6C83\u5DEB\u545C\u94A8\u4E4C\u6C61\u8BEC\u5C4B\u65E0\u829C\u68A7\u543E\u5434\u6BCB\u6B66\u4E94\u6342\u5348\u821E\u4F0D\u4FAE\u575E\u620A\u96FE\u6664\u7269\u52FF\u52A1\u609F\u8BEF\u6614\u7199\u6790\u897F\u7852\u77FD\u6670\u563B\u5438\u9521\u727A"],["cf40","\u87A5\u87A6\u87A7\u87A9\u87AA\u87AE\u87B0\u87B1\u87B2\u87B4\u87B6\u87B7\u87B8\u87B9\u87BB\u87BC\u87BE\u87BF\u87C1",4,"\u87C7\u87C8\u87C9\u87CC",4,"\u87D4",6,"\u87DC\u87DD\u87DE\u87DF\u87E1\u87E2\u87E3\u87E4\u87E6\u87E7\u87E8\u87E9\u87EB\u87EC\u87ED\u87EF",9],["cf80","\u87FA\u87FB\u87FC\u87FD\u87FF\u8800\u8801\u8802\u8804",5,"\u880B",7,"\u8814\u8817\u8818\u8819\u881A\u881C",4,"\u8823\u7A00\u606F\u5E0C\u6089\u819D\u5915\u60DC\u7184\u70EF\u6EAA\u6C50\u7280\u6A84\u88AD\u5E2D\u4E60\u5AB3\u559C\u94E3\u6D17\u7CFB\u9699\u620F\u7EC6\u778E\u867E\u5323\u971E\u8F96\u6687\u5CE1\u4FA0\u72ED\u4E0B\u53A6\u590F\u5413\u6380\u9528\u5148\u4ED9\u9C9C\u7EA4\u54B8\u8D24\u8854\u8237\u95F2\u6D8E\u5F26\u5ACC\u663E\u9669\u73B0\u732E\u53BF\u817A\u9985\u7FA1\u5BAA\u9677\u9650\u7EBF\u76F8\u53A2\u9576\u9999\u7BB1\u8944\u6E58\u4E61\u7FD4\u7965\u8BE6\u60F3\u54CD\u4EAB\u9879\u5DF7\u6A61\u50CF\u5411\u8C61\u8427\u785D\u9704\u524A\u54EE\u56A3\u9500\u6D88\u5BB5\u6DC6\u6653"],["d040","\u8824",13,"\u8833",5,"\u883A\u883B\u883D\u883E\u883F\u8841\u8842\u8843\u8846",5,"\u884E",5,"\u8855\u8856\u8858\u885A",6,"\u8866\u8867\u886A\u886D\u886F\u8871\u8873\u8874\u8875\u8876\u8878\u8879\u887A"],["d080","\u887B\u887C\u8880\u8883\u8886\u8887\u8889\u888A\u888C\u888E\u888F\u8890\u8891\u8893\u8894\u8895\u8897",4,"\u889D",4,"\u88A3\u88A5",5,"\u5C0F\u5B5D\u6821\u8096\u5578\u7B11\u6548\u6954\u4E9B\u6B47\u874E\u978B\u534F\u631F\u643A\u90AA\u659C\u80C1\u8C10\u5199\u68B0\u5378\u87F9\u61C8\u6CC4\u6CFB\u8C22\u5C51\u85AA\u82AF\u950C\u6B23\u8F9B\u65B0\u5FFB\u5FC3\u4FE1\u8845\u661F\u8165\u7329\u60FA\u5174\u5211\u578B\u5F62\u90A2\u884C\u9192\u5E78\u674F\u6027\u59D3\u5144\u51F6\u80F8\u5308\u6C79\u96C4\u718A\u4F11\u4FEE\u7F9E\u673D\u55C5\u9508\u79C0\u8896\u7EE3\u589F\u620C\u9700\u865A\u5618\u987B\u5F90\u8BB8\u84C4\u9157\u53D9\u65ED\u5E8F\u755C\u6064\u7D6E\u5A7F\u7EEA\u7EED\u8F69\u55A7\u5BA3\u60AC\u65CB\u7384"],["d140","\u88AC\u88AE\u88AF\u88B0\u88B2",4,"\u88B8\u88B9\u88BA\u88BB\u88BD\u88BE\u88BF\u88C0\u88C3\u88C4\u88C7\u88C8\u88CA\u88CB\u88CC\u88CD\u88CF\u88D0\u88D1\u88D3\u88D6\u88D7\u88DA",4,"\u88E0\u88E1\u88E6\u88E7\u88E9",6,"\u88F2\u88F5\u88F6\u88F7\u88FA\u88FB\u88FD\u88FF\u8900\u8901\u8903",5],["d180","\u8909\u890B",4,"\u8911\u8914",4,"\u891C",4,"\u8922\u8923\u8924\u8926\u8927\u8928\u8929\u892C\u892D\u892E\u892F\u8931\u8932\u8933\u8935\u8937\u9009\u7663\u7729\u7EDA\u9774\u859B\u5B66\u7A74\u96EA\u8840\u52CB\u718F\u5FAA\u65EC\u8BE2\u5BFB\u9A6F\u5DE1\u6B89\u6C5B\u8BAD\u8BAF\u900A\u8FC5\u538B\u62BC\u9E26\u9E2D\u5440\u4E2B\u82BD\u7259\u869C\u5D16\u8859\u6DAF\u96C5\u54D1\u4E9A\u8BB6\u7109\u54BD\u9609\u70DF\u6DF9\u76D0\u4E25\u7814\u8712\u5CA9\u5EF6\u8A00\u989C\u960E\u708E\u6CBF\u5944\u63A9\u773C\u884D\u6F14\u8273\u5830\u71D5\u538C\u781A\u96C1\u5501\u5F66\u7130\u5BB4\u8C1A\u9A8C\u6B83\u592E\u9E2F\u79E7\u6768\u626C\u4F6F\u75A1\u7F8A\u6D0B\u9633\u6C27\u4EF0\u75D2\u517B\u6837\u6F3E\u9080\u8170\u5996\u7476"],["d240","\u8938",8,"\u8942\u8943\u8945",24,"\u8960",5,"\u8967",19,"\u897C"],["d280","\u897D\u897E\u8980\u8982\u8984\u8985\u8987",26,"\u6447\u5C27\u9065\u7A91\u8C23\u59DA\u54AC\u8200\u836F\u8981\u8000\u6930\u564E\u8036\u7237\u91CE\u51B6\u4E5F\u9875\u6396\u4E1A\u53F6\u66F3\u814B\u591C\u6DB2\u4E00\u58F9\u533B\u63D6\u94F1\u4F9D\u4F0A\u8863\u9890\u5937\u9057\u79FB\u4EEA\u80F0\u7591\u6C82\u5B9C\u59E8\u5F5D\u6905\u8681\u501A\u5DF2\u4E59\u77E3\u4EE5\u827A\u6291\u6613\u9091\u5C79\u4EBF\u5F79\u81C6\u9038\u8084\u75AB\u4EA6\u88D4\u610F\u6BC5\u5FC6\u4E49\u76CA\u6EA2\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7FFC\u7FCC\u7ECE\u8335\u836B\u56E0\u6BB7\u97F3\u9634\u59FB\u541F\u94F6\u6DEB\u5BC5\u996E\u5C39\u5F15\u9690"],["d340","\u89A2",30,"\u89C3\u89CD\u89D3\u89D4\u89D5\u89D7\u89D8\u89D9\u89DB\u89DD\u89DF\u89E0\u89E1\u89E2\u89E4\u89E7\u89E8\u89E9\u89EA\u89EC\u89ED\u89EE\u89F0\u89F1\u89F2\u89F4",6],["d380","\u89FB",4,"\u8A01",5,"\u8A08",21,"\u5370\u82F1\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8FCE\u8D62\u76C8\u5F71\u9896\u786C\u6620\u54DF\u62E5\u4F63\u81C3\u75C8\u5EB8\u96CD\u8E0A\u86F9\u548F\u6CF3\u6D8C\u6C38\u607F\u52C7\u7528\u5E7D\u4F18\u60A0\u5FE7\u5C24\u7531\u90AE\u94C0\u72B9\u6CB9\u6E38\u9149\u6709\u53CB\u53F3\u4F51\u91C9\u8BF1\u53C8\u5E7C\u8FC2\u6DE4\u4E8E\u76C2\u6986\u865E\u611A\u8206\u4F59\u4FDE\u903E\u9C7C\u6109\u6E1D\u6E14\u9685\u4E88\u5A31\u96E8\u4E0E\u5C7F\u79B9\u5B87\u8BED\u7FBD\u7389\u57DF\u828B\u90C1\u5401\u9047\u55BB\u5CEA\u5FA1\u6108\u6B32\u72F1\u80B2\u8A89"],["d440","\u8A1E",31,"\u8A3F",8,"\u8A49",21],["d480","\u8A5F",25,"\u8A7A",6,"\u6D74\u5BD3\u88D5\u9884\u8C6B\u9A6D\u9E33\u6E0A\u51A4\u5143\u57A3\u8881\u539F\u63F4\u8F95\u56ED\u5458\u5706\u733F\u6E90\u7F18\u8FDC\u82D1\u613F\u6028\u9662\u66F0\u7EA6\u8D8A\u8DC3\u94A5\u5CB3\u7CA4\u6708\u60A6\u9605\u8018\u4E91\u90E7\u5300\u9668\u5141\u8FD0\u8574\u915D\u6655\u97F5\u5B55\u531D\u7838\u6742\u683D\u54C9\u707E\u5BB0\u8F7D\u518D\u5728\u54B1\u6512\u6682\u8D5E\u8D43\u810F\u846C\u906D\u7CDF\u51FF\u85FB\u67A3\u65E9\u6FA1\u86A4\u8E81\u566A\u9020\u7682\u7076\u71E5\u8D23\u62E9\u5219\u6CFD\u8D3C\u600E\u589E\u618E\u66FE\u8D60\u624E\u55B3\u6E23\u672D\u8F67"],["d540","\u8A81",7,"\u8A8B",7,"\u8A94",46],["d580","\u8AC3",32,"\u94E1\u95F8\u7728\u6805\u69A8\u548B\u4E4D\u70B8\u8BC8\u6458\u658B\u5B85\u7A84\u503A\u5BE8\u77BB\u6BE1\u8A79\u7C98\u6CBE\u76CF\u65A9\u8F97\u5D2D\u5C55\u8638\u6808\u5360\u6218\u7AD9\u6E5B\u7EFD\u6A1F\u7AE0\u5F70\u6F33\u5F20\u638C\u6DA8\u6756\u4E08\u5E10\u8D26\u4ED7\u80C0\u7634\u969C\u62DB\u662D\u627E\u6CBC\u8D75\u7167\u7F69\u5146\u8087\u53EC\u906E\u6298\u54F2\u86F0\u8F99\u8005\u9517\u8517\u8FD9\u6D59\u73CD\u659F\u771F\u7504\u7827\u81FB\u8D1E\u9488\u4FA6\u6795\u75B9\u8BCA\u9707\u632F\u9547\u9635\u84B8\u6323\u7741\u5F81\u72F0\u4E89\u6014\u6574\u62EF\u6B63\u653F"],["d640","\u8AE4",34,"\u8B08",27],["d680","\u8B24\u8B25\u8B27",30,"\u5E27\u75C7\u90D1\u8BC1\u829D\u679D\u652F\u5431\u8718\u77E5\u80A2\u8102\u6C41\u4E4B\u7EC7\u804C\u76F4\u690D\u6B96\u6267\u503C\u4F84\u5740\u6307\u6B62\u8DBE\u53EA\u65E8\u7EB8\u5FD7\u631A\u63B7\u81F3\u81F4\u7F6E\u5E1C\u5CD9\u5236\u667A\u79E9\u7A1A\u8D28\u7099\u75D4\u6EDE\u6CBB\u7A92\u4E2D\u76C5\u5FE0\u949F\u8877\u7EC8\u79CD\u80BF\u91CD\u4EF2\u4F17\u821F\u5468\u5DDE\u6D32\u8BCC\u7CA5\u8F74\u8098\u5E1A\u5492\u76B1\u5B99\u663C\u9AA4\u73E0\u682A\u86DB\u6731\u732A\u8BF8\u8BDB\u9010\u7AF9\u70DB\u716E\u62C4\u77A9\u5631\u4E3B\u8457\u67F1\u52A9\u86C0\u8D2E\u94F8\u7B51"],["d740","\u8B46",31,"\u8B67",4,"\u8B6D",25],["d780","\u8B87",24,"\u8BAC\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C09\u8C1E\u4F4F\u6CE8\u795D\u9A7B\u6293\u722A\u62FD\u4E13\u7816\u8F6C\u64B0\u8D5A\u7BC6\u6869\u5E84\u88C5\u5986\u649E\u58EE\u72B6\u690E\u9525\u8FFD\u8D58\u5760\u7F00\u8C06\u51C6\u6349\u62D9\u5353\u684C\u7422\u8301\u914C\u5544\u7740\u707C\u6D4A\u5179\u54A8\u8D44\u59FF\u6ECB\u6DC4\u5B5C\u7D2B\u4ED4\u7C7D\u6ED3\u5B50\u81EA\u6E0D\u5B57\u9B03\u68D5\u8E2A\u5B97\u7EFC\u603B\u7EB5\u90B9\u8D70\u594F\u63CD\u79DF\u8DB3\u5352\u65CF\u7956\u8BC5\u963B\u7EC4\u94BB\u7E82\u5634\u9189\u6700\u7F6A\u5C0A\u9075\u6628\u5DE6\u4F50\u67DE\u505A\u4F5C\u5750\u5EA7"],["d840","\u8C38",8,"\u8C42\u8C43\u8C44\u8C45\u8C48\u8C4A\u8C4B\u8C4D",7,"\u8C56\u8C57\u8C58\u8C59\u8C5B",5,"\u8C63",6,"\u8C6C",6,"\u8C74\u8C75\u8C76\u8C77\u8C7B",6,"\u8C83\u8C84\u8C86\u8C87"],["d880","\u8C88\u8C8B\u8C8D",6,"\u8C95\u8C96\u8C97\u8C99",20,"\u4E8D\u4E0C\u5140\u4E10\u5EFF\u5345\u4E15\u4E98\u4E1E\u9B32\u5B6C\u5669\u4E28\u79BA\u4E3F\u5315\u4E47\u592D\u723B\u536E\u6C10\u56DF\u80E4\u9997\u6BD3\u777E\u9F17\u4E36\u4E9F\u9F10\u4E5C\u4E69\u4E93\u8288\u5B5B\u556C\u560F\u4EC4\u538D\u539D\u53A3\u53A5\u53AE\u9765\u8D5D\u531A\u53F5\u5326\u532E\u533E\u8D5C\u5366\u5363\u5202\u5208\u520E\u522D\u5233\u523F\u5240\u524C\u525E\u5261\u525C\u84AF\u527D\u5282\u5281\u5290\u5293\u5182\u7F54\u4EBB\u4EC3\u4EC9\u4EC2\u4EE8\u4EE1\u4EEB\u4EDE\u4F1B\u4EF3\u4F22\u4F64\u4EF5\u4F25\u4F27\u4F09\u4F2B\u4F5E\u4F67\u6538\u4F5A\u4F5D"],["d940","\u8CAE",62],["d980","\u8CED",32,"\u4F5F\u4F57\u4F32\u4F3D\u4F76\u4F74\u4F91\u4F89\u4F83\u4F8F\u4F7E\u4F7B\u4FAA\u4F7C\u4FAC\u4F94\u4FE6\u4FE8\u4FEA\u4FC5\u4FDA\u4FE3\u4FDC\u4FD1\u4FDF\u4FF8\u5029\u504C\u4FF3\u502C\u500F\u502E\u502D\u4FFE\u501C\u500C\u5025\u5028\u507E\u5043\u5055\u5048\u504E\u506C\u507B\u50A5\u50A7\u50A9\u50BA\u50D6\u5106\u50ED\u50EC\u50E6\u50EE\u5107\u510B\u4EDD\u6C3D\u4F58\u4F65\u4FCE\u9FA0\u6C46\u7C74\u516E\u5DFD\u9EC9\u9998\u5181\u5914\u52F9\u530D\u8A07\u5310\u51EB\u5919\u5155\u4EA0\u5156\u4EB3\u886E\u88A4\u4EB5\u8114\u88D2\u7980\u5B34\u8803\u7FB8\u51AB\u51B1\u51BD\u51BC"],["da40","\u8D0E",14,"\u8D20\u8D51\u8D52\u8D57\u8D5F\u8D65\u8D68\u8D69\u8D6A\u8D6C\u8D6E\u8D6F\u8D71\u8D72\u8D78",8,"\u8D82\u8D83\u8D86\u8D87\u8D88\u8D89\u8D8C",4,"\u8D92\u8D93\u8D95",9,"\u8DA0\u8DA1"],["da80","\u8DA2\u8DA4",12,"\u8DB2\u8DB6\u8DB7\u8DB9\u8DBB\u8DBD\u8DC0\u8DC1\u8DC2\u8DC5\u8DC7\u8DC8\u8DC9\u8DCA\u8DCD\u8DD0\u8DD2\u8DD3\u8DD4\u51C7\u5196\u51A2\u51A5\u8BA0\u8BA6\u8BA7\u8BAA\u8BB4\u8BB5\u8BB7\u8BC2\u8BC3\u8BCB\u8BCF\u8BCE\u8BD2\u8BD3\u8BD4\u8BD6\u8BD8\u8BD9\u8BDC\u8BDF\u8BE0\u8BE4\u8BE8\u8BE9\u8BEE\u8BF0\u8BF3\u8BF6\u8BF9\u8BFC\u8BFF\u8C00\u8C02\u8C04\u8C07\u8C0C\u8C0F\u8C11\u8C12\u8C14\u8C15\u8C16\u8C19\u8C1B\u8C18\u8C1D\u8C1F\u8C20\u8C21\u8C25\u8C27\u8C2A\u8C2B\u8C2E\u8C2F\u8C32\u8C33\u8C35\u8C36\u5369\u537A\u961D\u9622\u9621\u9631\u962A\u963D\u963C\u9642\u9649\u9654\u965F\u9667\u966C\u9672\u9674\u9688\u968D\u9697\u96B0\u9097\u909B\u909D\u9099\u90AC\u90A1\u90B4\u90B3\u90B6\u90BA"],["db40","\u8DD5\u8DD8\u8DD9\u8DDC\u8DE0\u8DE1\u8DE2\u8DE5\u8DE6\u8DE7\u8DE9\u8DED\u8DEE\u8DF0\u8DF1\u8DF2\u8DF4\u8DF6\u8DFC\u8DFE",6,"\u8E06\u8E07\u8E08\u8E0B\u8E0D\u8E0E\u8E10\u8E11\u8E12\u8E13\u8E15",7,"\u8E20\u8E21\u8E24",4,"\u8E2B\u8E2D\u8E30\u8E32\u8E33\u8E34\u8E36\u8E37\u8E38\u8E3B\u8E3C\u8E3E"],["db80","\u8E3F\u8E43\u8E45\u8E46\u8E4C",4,"\u8E53",5,"\u8E5A",11,"\u8E67\u8E68\u8E6A\u8E6B\u8E6E\u8E71\u90B8\u90B0\u90CF\u90C5\u90BE\u90D0\u90C4\u90C7\u90D3\u90E6\u90E2\u90DC\u90D7\u90DB\u90EB\u90EF\u90FE\u9104\u9122\u911E\u9123\u9131\u912F\u9139\u9143\u9146\u520D\u5942\u52A2\u52AC\u52AD\u52BE\u54FF\u52D0\u52D6\u52F0\u53DF\u71EE\u77CD\u5EF4\u51F5\u51FC\u9B2F\u53B6\u5F01\u755A\u5DEF\u574C\u57A9\u57A1\u587E\u58BC\u58C5\u58D1\u5729\u572C\u572A\u5733\u5739\u572E\u572F\u575C\u573B\u5742\u5769\u5785\u576B\u5786\u577C\u577B\u5768\u576D\u5776\u5773\u57AD\u57A4\u578C\u57B2\u57CF\u57A7\u57B4\u5793\u57A0\u57D5\u57D8\u57DA\u57D9\u57D2\u57B8\u57F4\u57EF\u57F8\u57E4\u57DD"],["dc40","\u8E73\u8E75\u8E77",4,"\u8E7D\u8E7E\u8E80\u8E82\u8E83\u8E84\u8E86\u8E88",6,"\u8E91\u8E92\u8E93\u8E95",6,"\u8E9D\u8E9F",11,"\u8EAD\u8EAE\u8EB0\u8EB1\u8EB3",6,"\u8EBB",7],["dc80","\u8EC3",10,"\u8ECF",21,"\u580B\u580D\u57FD\u57ED\u5800\u581E\u5819\u5844\u5820\u5865\u586C\u5881\u5889\u589A\u5880\u99A8\u9F19\u61FF\u8279\u827D\u827F\u828F\u828A\u82A8\u8284\u828E\u8291\u8297\u8299\u82AB\u82B8\u82BE\u82B0\u82C8\u82CA\u82E3\u8298\u82B7\u82AE\u82CB\u82CC\u82C1\u82A9\u82B4\u82A1\u82AA\u829F\u82C4\u82CE\u82A4\u82E1\u8309\u82F7\u82E4\u830F\u8307\u82DC\u82F4\u82D2\u82D8\u830C\u82FB\u82D3\u8311\u831A\u8306\u8314\u8315\u82E0\u82D5\u831C\u8351\u835B\u835C\u8308\u8392\u833C\u8334\u8331\u839B\u835E\u832F\u834F\u8347\u8343\u835F\u8340\u8317\u8360\u832D\u833A\u8333\u8366\u8365"],["dd40","\u8EE5",62],["dd80","\u8F24",32,"\u8368\u831B\u8369\u836C\u836A\u836D\u836E\u83B0\u8378\u83B3\u83B4\u83A0\u83AA\u8393\u839C\u8385\u837C\u83B6\u83A9\u837D\u83B8\u837B\u8398\u839E\u83A8\u83BA\u83BC\u83C1\u8401\u83E5\u83D8\u5807\u8418\u840B\u83DD\u83FD\u83D6\u841C\u8438\u8411\u8406\u83D4\u83DF\u840F\u8403\u83F8\u83F9\u83EA\u83C5\u83C0\u8426\u83F0\u83E1\u845C\u8451\u845A\u8459\u8473\u8487\u8488\u847A\u8489\u8478\u843C\u8446\u8469\u8476\u848C\u848E\u8431\u846D\u84C1\u84CD\u84D0\u84E6\u84BD\u84D3\u84CA\u84BF\u84BA\u84E0\u84A1\u84B9\u84B4\u8497\u84E5\u84E3\u850C\u750D\u8538\u84F0\u8539\u851F\u853A"],["de40","\u8F45",32,"\u8F6A\u8F80\u8F8C\u8F92\u8F9D\u8FA0\u8FA1\u8FA2\u8FA4\u8FA5\u8FA6\u8FA7\u8FAA\u8FAC\u8FAD\u8FAE\u8FAF\u8FB2\u8FB3\u8FB4\u8FB5\u8FB7\u8FB8\u8FBA\u8FBB\u8FBC\u8FBF\u8FC0\u8FC3\u8FC6"],["de80","\u8FC9",4,"\u8FCF\u8FD2\u8FD6\u8FD7\u8FDA\u8FE0\u8FE1\u8FE3\u8FE7\u8FEC\u8FEF\u8FF1\u8FF2\u8FF4\u8FF5\u8FF6\u8FFA\u8FFB\u8FFC\u8FFE\u8FFF\u9007\u9008\u900C\u900E\u9013\u9015\u9018\u8556\u853B\u84FF\u84FC\u8559\u8548\u8568\u8564\u855E\u857A\u77A2\u8543\u8572\u857B\u85A4\u85A8\u8587\u858F\u8579\u85AE\u859C\u8585\u85B9\u85B7\u85B0\u85D3\u85C1\u85DC\u85FF\u8627\u8605\u8629\u8616\u863C\u5EFE\u5F08\u593C\u5941\u8037\u5955\u595A\u5958\u530F\u5C22\u5C25\u5C2C\u5C34\u624C\u626A\u629F\u62BB\u62CA\u62DA\u62D7\u62EE\u6322\u62F6\u6339\u634B\u6343\u63AD\u63F6\u6371\u637A\u638E\u63B4\u636D\u63AC\u638A\u6369\u63AE\u63BC\u63F2\u63F8\u63E0\u63FF\u63C4\u63DE\u63CE\u6452\u63C6\u63BE\u6445\u6441\u640B\u641B\u6420\u640C\u6426\u6421\u645E\u6484\u646D\u6496"],["df40","\u9019\u901C\u9023\u9024\u9025\u9027",5,"\u9030",4,"\u9037\u9039\u903A\u903D\u903F\u9040\u9043\u9045\u9046\u9048",4,"\u904E\u9054\u9055\u9056\u9059\u905A\u905C",5,"\u9064\u9066\u9067\u9069\u906A\u906B\u906C\u906F",4,"\u9076",6,"\u907E\u9081"],["df80","\u9084\u9085\u9086\u9087\u9089\u908A\u908C",4,"\u9092\u9094\u9096\u9098\u909A\u909C\u909E\u909F\u90A0\u90A4\u90A5\u90A7\u90A8\u90A9\u90AB\u90AD\u90B2\u90B7\u90BC\u90BD\u90BF\u90C0\u647A\u64B7\u64B8\u6499\u64BA\u64C0\u64D0\u64D7\u64E4\u64E2\u6509\u6525\u652E\u5F0B\u5FD2\u7519\u5F11\u535F\u53F1\u53FD\u53E9\u53E8\u53FB\u5412\u5416\u5406\u544B\u5452\u5453\u5454\u5456\u5443\u5421\u5457\u5459\u5423\u5432\u5482\u5494\u5477\u5471\u5464\u549A\u549B\u5484\u5476\u5466\u549D\u54D0\u54AD\u54C2\u54B4\u54D2\u54A7\u54A6\u54D3\u54D4\u5472\u54A3\u54D5\u54BB\u54BF\u54CC\u54D9\u54DA\u54DC\u54A9\u54AA\u54A4\u54DD\u54CF\u54DE\u551B\u54E7\u5520\u54FD\u5514\u54F3\u5522\u5523\u550F\u5511\u5527\u552A\u5567\u558F\u55B5\u5549\u556D\u5541\u5555\u553F\u5550\u553C"],["e040","\u90C2\u90C3\u90C6\u90C8\u90C9\u90CB\u90CC\u90CD\u90D2\u90D4\u90D5\u90D6\u90D8\u90D9\u90DA\u90DE\u90DF\u90E0\u90E3\u90E4\u90E5\u90E9\u90EA\u90EC\u90EE\u90F0\u90F1\u90F2\u90F3\u90F5\u90F6\u90F7\u90F9\u90FA\u90FB\u90FC\u90FF\u9100\u9101\u9103\u9105",19,"\u911A\u911B\u911C"],["e080","\u911D\u911F\u9120\u9121\u9124",10,"\u9130\u9132",6,"\u913A",8,"\u9144\u5537\u5556\u5575\u5576\u5577\u5533\u5530\u555C\u558B\u55D2\u5583\u55B1\u55B9\u5588\u5581\u559F\u557E\u55D6\u5591\u557B\u55DF\u55BD\u55BE\u5594\u5599\u55EA\u55F7\u55C9\u561F\u55D1\u55EB\u55EC\u55D4\u55E6\u55DD\u55C4\u55EF\u55E5\u55F2\u55F3\u55CC\u55CD\u55E8\u55F5\u55E4\u8F94\u561E\u5608\u560C\u5601\u5624\u5623\u55FE\u5600\u5627\u562D\u5658\u5639\u5657\u562C\u564D\u5662\u5659\u565C\u564C\u5654\u5686\u5664\u5671\u566B\u567B\u567C\u5685\u5693\u56AF\u56D4\u56D7\u56DD\u56E1\u56F5\u56EB\u56F9\u56FF\u5704\u570A\u5709\u571C\u5E0F\u5E19\u5E14\u5E11\u5E31\u5E3B\u5E3C"],["e140","\u9145\u9147\u9148\u9151\u9153\u9154\u9155\u9156\u9158\u9159\u915B\u915C\u915F\u9160\u9166\u9167\u9168\u916B\u916D\u9173\u917A\u917B\u917C\u9180",4,"\u9186\u9188\u918A\u918E\u918F\u9193",6,"\u919C",5,"\u91A4",5,"\u91AB\u91AC\u91B0\u91B1\u91B2\u91B3\u91B6\u91B7\u91B8\u91B9\u91BB"],["e180","\u91BC",10,"\u91C8\u91CB\u91D0\u91D2",9,"\u91DD",8,"\u5E37\u5E44\u5E54\u5E5B\u5E5E\u5E61\u5C8C\u5C7A\u5C8D\u5C90\u5C96\u5C88\u5C98\u5C99\u5C91\u5C9A\u5C9C\u5CB5\u5CA2\u5CBD\u5CAC\u5CAB\u5CB1\u5CA3\u5CC1\u5CB7\u5CC4\u5CD2\u5CE4\u5CCB\u5CE5\u5D02\u5D03\u5D27\u5D26\u5D2E\u5D24\u5D1E\u5D06\u5D1B\u5D58\u5D3E\u5D34\u5D3D\u5D6C\u5D5B\u5D6F\u5D5D\u5D6B\u5D4B\u5D4A\u5D69\u5D74\u5D82\u5D99\u5D9D\u8C73\u5DB7\u5DC5\u5F73\u5F77\u5F82\u5F87\u5F89\u5F8C\u5F95\u5F99\u5F9C\u5FA8\u5FAD\u5FB5\u5FBC\u8862\u5F61\u72AD\u72B0\u72B4\u72B7\u72B8\u72C3\u72C1\u72CE\u72CD\u72D2\u72E8\u72EF\u72E9\u72F2\u72F4\u72F7\u7301\u72F3\u7303\u72FA"],["e240","\u91E6",62],["e280","\u9225",32,"\u72FB\u7317\u7313\u7321\u730A\u731E\u731D\u7315\u7322\u7339\u7325\u732C\u7338\u7331\u7350\u734D\u7357\u7360\u736C\u736F\u737E\u821B\u5925\u98E7\u5924\u5902\u9963\u9967",5,"\u9974\u9977\u997D\u9980\u9984\u9987\u998A\u998D\u9990\u9991\u9993\u9994\u9995\u5E80\u5E91\u5E8B\u5E96\u5EA5\u5EA0\u5EB9\u5EB5\u5EBE\u5EB3\u8D53\u5ED2\u5ED1\u5EDB\u5EE8\u5EEA\u81BA\u5FC4\u5FC9\u5FD6\u5FCF\u6003\u5FEE\u6004\u5FE1\u5FE4\u5FFE\u6005\u6006\u5FEA\u5FED\u5FF8\u6019\u6035\u6026\u601B\u600F\u600D\u6029\u602B\u600A\u603F\u6021\u6078\u6079\u607B\u607A\u6042"],["e340","\u9246",45,"\u9275",16],["e380","\u9286",7,"\u928F",24,"\u606A\u607D\u6096\u609A\u60AD\u609D\u6083\u6092\u608C\u609B\u60EC\u60BB\u60B1\u60DD\u60D8\u60C6\u60DA\u60B4\u6120\u6126\u6115\u6123\u60F4\u6100\u610E\u612B\u614A\u6175\u61AC\u6194\u61A7\u61B7\u61D4\u61F5\u5FDD\u96B3\u95E9\u95EB\u95F1\u95F3\u95F5\u95F6\u95FC\u95FE\u9603\u9604\u9606\u9608\u960A\u960B\u960C\u960D\u960F\u9612\u9615\u9616\u9617\u9619\u961A\u4E2C\u723F\u6215\u6C35\u6C54\u6C5C\u6C4A\u6CA3\u6C85\u6C90\u6C94\u6C8C\u6C68\u6C69\u6C74\u6C76\u6C86\u6CA9\u6CD0\u6CD4\u6CAD\u6CF7\u6CF8\u6CF1\u6CD7\u6CB2\u6CE0\u6CD6\u6CFA\u6CEB\u6CEE\u6CB1\u6CD3\u6CEF\u6CFE"],["e440","\u92A8",5,"\u92AF",24,"\u92C9",31],["e480","\u92E9",32,"\u6D39\u6D27\u6D0C\u6D43\u6D48\u6D07\u6D04\u6D19\u6D0E\u6D2B\u6D4D\u6D2E\u6D35\u6D1A\u6D4F\u6D52\u6D54\u6D33\u6D91\u6D6F\u6D9E\u6DA0\u6D5E\u6D93\u6D94\u6D5C\u6D60\u6D7C\u6D63\u6E1A\u6DC7\u6DC5\u6DDE\u6E0E\u6DBF\u6DE0\u6E11\u6DE6\u6DDD\u6DD9\u6E16\u6DAB\u6E0C\u6DAE\u6E2B\u6E6E\u6E4E\u6E6B\u6EB2\u6E5F\u6E86\u6E53\u6E54\u6E32\u6E25\u6E44\u6EDF\u6EB1\u6E98\u6EE0\u6F2D\u6EE2\u6EA5\u6EA7\u6EBD\u6EBB\u6EB7\u6ED7\u6EB4\u6ECF\u6E8F\u6EC2\u6E9F\u6F62\u6F46\u6F47\u6F24\u6F15\u6EF9\u6F2F\u6F36\u6F4B\u6F74\u6F2A\u6F09\u6F29\u6F89\u6F8D\u6F8C\u6F78\u6F72\u6F7C\u6F7A\u6FD1"],["e540","\u930A",51,"\u933F",10],["e580","\u934A",31,"\u936B\u6FC9\u6FA7\u6FB9\u6FB6\u6FC2\u6FE1\u6FEE\u6FDE\u6FE0\u6FEF\u701A\u7023\u701B\u7039\u7035\u704F\u705E\u5B80\u5B84\u5B95\u5B93\u5BA5\u5BB8\u752F\u9A9E\u6434\u5BE4\u5BEE\u8930\u5BF0\u8E47\u8B07\u8FB6\u8FD3\u8FD5\u8FE5\u8FEE\u8FE4\u8FE9\u8FE6\u8FF3\u8FE8\u9005\u9004\u900B\u9026\u9011\u900D\u9016\u9021\u9035\u9036\u902D\u902F\u9044\u9051\u9052\u9050\u9068\u9058\u9062\u905B\u66B9\u9074\u907D\u9082\u9088\u9083\u908B\u5F50\u5F57\u5F56\u5F58\u5C3B\u54AB\u5C50\u5C59\u5B71\u5C63\u5C66\u7FBC\u5F2A\u5F29\u5F2D\u8274\u5F3C\u9B3B\u5C6E\u5981\u5983\u598D\u59A9\u59AA\u59A3"],["e640","\u936C",34,"\u9390",27],["e680","\u93AC",29,"\u93CB\u93CC\u93CD\u5997\u59CA\u59AB\u599E\u59A4\u59D2\u59B2\u59AF\u59D7\u59BE\u5A05\u5A06\u59DD\u5A08\u59E3\u59D8\u59F9\u5A0C\u5A09\u5A32\u5A34\u5A11\u5A23\u5A13\u5A40\u5A67\u5A4A\u5A55\u5A3C\u5A62\u5A75\u80EC\u5AAA\u5A9B\u5A77\u5A7A\u5ABE\u5AEB\u5AB2\u5AD2\u5AD4\u5AB8\u5AE0\u5AE3\u5AF1\u5AD6\u5AE6\u5AD8\u5ADC\u5B09\u5B17\u5B16\u5B32\u5B37\u5B40\u5C15\u5C1C\u5B5A\u5B65\u5B73\u5B51\u5B53\u5B62\u9A75\u9A77\u9A78\u9A7A\u9A7F\u9A7D\u9A80\u9A81\u9A85\u9A88\u9A8A\u9A90\u9A92\u9A93\u9A96\u9A98\u9A9B\u9A9C\u9A9D\u9A9F\u9AA0\u9AA2\u9AA3\u9AA5\u9AA7\u7E9F\u7EA1\u7EA3\u7EA5\u7EA8\u7EA9"],["e740","\u93CE",7,"\u93D7",54],["e780","\u940E",32,"\u7EAD\u7EB0\u7EBE\u7EC0\u7EC1\u7EC2\u7EC9\u7ECB\u7ECC\u7ED0\u7ED4\u7ED7\u7EDB\u7EE0\u7EE1\u7EE8\u7EEB\u7EEE\u7EEF\u7EF1\u7EF2\u7F0D\u7EF6\u7EFA\u7EFB\u7EFE\u7F01\u7F02\u7F03\u7F07\u7F08\u7F0B\u7F0C\u7F0F\u7F11\u7F12\u7F17\u7F19\u7F1C\u7F1B\u7F1F\u7F21",6,"\u7F2A\u7F2B\u7F2C\u7F2D\u7F2F",4,"\u7F35\u5E7A\u757F\u5DDB\u753E\u9095\u738E\u7391\u73AE\u73A2\u739F\u73CF\u73C2\u73D1\u73B7\u73B3\u73C0\u73C9\u73C8\u73E5\u73D9\u987C\u740A\u73E9\u73E7\u73DE\u73BA\u73F2\u740F\u742A\u745B\u7426\u7425\u7428\u7430\u742E\u742C"],["e840","\u942F",14,"\u943F",43,"\u946C\u946D\u946E\u946F"],["e880","\u9470",20,"\u9491\u9496\u9498\u94C7\u94CF\u94D3\u94D4\u94DA\u94E6\u94FB\u951C\u9520\u741B\u741A\u7441\u745C\u7457\u7455\u7459\u7477\u746D\u747E\u749C\u748E\u7480\u7481\u7487\u748B\u749E\u74A8\u74A9\u7490\u74A7\u74D2\u74BA\u97EA\u97EB\u97EC\u674C\u6753\u675E\u6748\u6769\u67A5\u6787\u676A\u6773\u6798\u67A7\u6775\u67A8\u679E\u67AD\u678B\u6777\u677C\u67F0\u6809\u67D8\u680A\u67E9\u67B0\u680C\u67D9\u67B5\u67DA\u67B3\u67DD\u6800\u67C3\u67B8\u67E2\u680E\u67C1\u67FD\u6832\u6833\u6860\u6861\u684E\u6862\u6844\u6864\u6883\u681D\u6855\u6866\u6841\u6867\u6840\u683E\u684A\u6849\u6829\u68B5\u688F\u6874\u6877\u6893\u686B\u68C2\u696E\u68FC\u691F\u6920\u68F9"],["e940","\u9527\u9533\u953D\u9543\u9548\u954B\u9555\u955A\u9560\u956E\u9574\u9575\u9577",7,"\u9580",42],["e980","\u95AB",32,"\u6924\u68F0\u690B\u6901\u6957\u68E3\u6910\u6971\u6939\u6960\u6942\u695D\u6984\u696B\u6980\u6998\u6978\u6934\u69CC\u6987\u6988\u69CE\u6989\u6966\u6963\u6979\u699B\u69A7\u69BB\u69AB\u69AD\u69D4\u69B1\u69C1\u69CA\u69DF\u6995\u69E0\u698D\u69FF\u6A2F\u69ED\u6A17\u6A18\u6A65\u69F2\u6A44\u6A3E\u6AA0\u6A50\u6A5B\u6A35\u6A8E\u6A79\u6A3D\u6A28\u6A58\u6A7C\u6A91\u6A90\u6AA9\u6A97\u6AAB\u7337\u7352\u6B81\u6B82\u6B87\u6B84\u6B92\u6B93\u6B8D\u6B9A\u6B9B\u6BA1\u6BAA\u8F6B\u8F6D\u8F71\u8F72\u8F73\u8F75\u8F76\u8F78\u8F77\u8F79\u8F7A\u8F7C\u8F7E\u8F81\u8F82\u8F84\u8F87\u8F8B"],["ea40","\u95CC",27,"\u95EC\u95FF\u9607\u9613\u9618\u961B\u961E\u9620\u9623",6,"\u962B\u962C\u962D\u962F\u9630\u9637\u9638\u9639\u963A\u963E\u9641\u9643\u964A\u964E\u964F\u9651\u9652\u9653\u9656\u9657"],["ea80","\u9658\u9659\u965A\u965C\u965D\u965E\u9660\u9663\u9665\u9666\u966B\u966D",4,"\u9673\u9678",12,"\u9687\u9689\u968A\u8F8D\u8F8E\u8F8F\u8F98\u8F9A\u8ECE\u620B\u6217\u621B\u621F\u6222\u6221\u6225\u6224\u622C\u81E7\u74EF\u74F4\u74FF\u750F\u7511\u7513\u6534\u65EE\u65EF\u65F0\u660A\u6619\u6772\u6603\u6615\u6600\u7085\u66F7\u661D\u6634\u6631\u6636\u6635\u8006\u665F\u6654\u6641\u664F\u6656\u6661\u6657\u6677\u6684\u668C\u66A7\u669D\u66BE\u66DB\u66DC\u66E6\u66E9\u8D32\u8D33\u8D36\u8D3B\u8D3D\u8D40\u8D45\u8D46\u8D48\u8D49\u8D47\u8D4D\u8D55\u8D59\u89C7\u89CA\u89CB\u89CC\u89CE\u89CF\u89D0\u89D1\u726E\u729F\u725D\u7266\u726F\u727E\u727F\u7284\u728B\u728D\u728F\u7292\u6308\u6332\u63B0"],["eb40","\u968C\u968E\u9691\u9692\u9693\u9695\u9696\u969A\u969B\u969D",9,"\u96A8",7,"\u96B1\u96B2\u96B4\u96B5\u96B7\u96B8\u96BA\u96BB\u96BF\u96C2\u96C3\u96C8\u96CA\u96CB\u96D0\u96D1\u96D3\u96D4\u96D6",9,"\u96E1",6,"\u96EB"],["eb80","\u96EC\u96ED\u96EE\u96F0\u96F1\u96F2\u96F4\u96F5\u96F8\u96FA\u96FB\u96FC\u96FD\u96FF\u9702\u9703\u9705\u970A\u970B\u970C\u9710\u9711\u9712\u9714\u9715\u9717",4,"\u971D\u971F\u9720\u643F\u64D8\u8004\u6BEA\u6BF3\u6BFD\u6BF5\u6BF9\u6C05\u6C07\u6C06\u6C0D\u6C15\u6C18\u6C19\u6C1A\u6C21\u6C29\u6C24\u6C2A\u6C32\u6535\u6555\u656B\u724D\u7252\u7256\u7230\u8662\u5216\u809F\u809C\u8093\u80BC\u670A\u80BD\u80B1\u80AB\u80AD\u80B4\u80B7\u80E7\u80E8\u80E9\u80EA\u80DB\u80C2\u80C4\u80D9\u80CD\u80D7\u6710\u80DD\u80EB\u80F1\u80F4\u80ED\u810D\u810E\u80F2\u80FC\u6715\u8112\u8C5A\u8136\u811E\u812C\u8118\u8132\u8148\u814C\u8153\u8174\u8159\u815A\u8171\u8160\u8169\u817C\u817D\u816D\u8167\u584D\u5AB5\u8188\u8182\u8191\u6ED5\u81A3\u81AA\u81CC\u6726\u81CA\u81BB"],["ec40","\u9721",8,"\u972B\u972C\u972E\u972F\u9731\u9733",4,"\u973A\u973B\u973C\u973D\u973F",18,"\u9754\u9755\u9757\u9758\u975A\u975C\u975D\u975F\u9763\u9764\u9766\u9767\u9768\u976A",7],["ec80","\u9772\u9775\u9777",4,"\u977D",7,"\u9786",4,"\u978C\u978E\u978F\u9790\u9793\u9795\u9796\u9797\u9799",4,"\u81C1\u81A6\u6B24\u6B37\u6B39\u6B43\u6B46\u6B59\u98D1\u98D2\u98D3\u98D5\u98D9\u98DA\u6BB3\u5F40\u6BC2\u89F3\u6590\u9F51\u6593\u65BC\u65C6\u65C4\u65C3\u65CC\u65CE\u65D2\u65D6\u7080\u709C\u7096\u709D\u70BB\u70C0\u70B7\u70AB\u70B1\u70E8\u70CA\u7110\u7113\u7116\u712F\u7131\u7173\u715C\u7168\u7145\u7172\u714A\u7178\u717A\u7198\u71B3\u71B5\u71A8\u71A0\u71E0\u71D4\u71E7\u71F9\u721D\u7228\u706C\u7118\u7166\u71B9\u623E\u623D\u6243\u6248\u6249\u793B\u7940\u7946\u7949\u795B\u795C\u7953\u795A\u7962\u7957\u7960\u796F\u7967\u797A\u7985\u798A\u799A\u79A7\u79B3\u5FD1\u5FD0"],["ed40","\u979E\u979F\u97A1\u97A2\u97A4",6,"\u97AC\u97AE\u97B0\u97B1\u97B3\u97B5",46],["ed80","\u97E4\u97E5\u97E8\u97EE",4,"\u97F4\u97F7",23,"\u603C\u605D\u605A\u6067\u6041\u6059\u6063\u60AB\u6106\u610D\u615D\u61A9\u619D\u61CB\u61D1\u6206\u8080\u807F\u6C93\u6CF6\u6DFC\u77F6\u77F8\u7800\u7809\u7817\u7818\u7811\u65AB\u782D\u781C\u781D\u7839\u783A\u783B\u781F\u783C\u7825\u782C\u7823\u7829\u784E\u786D\u7856\u7857\u7826\u7850\u7847\u784C\u786A\u789B\u7893\u789A\u7887\u789C\u78A1\u78A3\u78B2\u78B9\u78A5\u78D4\u78D9\u78C9\u78EC\u78F2\u7905\u78F4\u7913\u7924\u791E\u7934\u9F9B\u9EF9\u9EFB\u9EFC\u76F1\u7704\u770D\u76F9\u7707\u7708\u771A\u7722\u7719\u772D\u7726\u7735\u7738\u7750\u7751\u7747\u7743\u775A\u7768"],["ee40","\u980F",62],["ee80","\u984E",32,"\u7762\u7765\u777F\u778D\u777D\u7780\u778C\u7791\u779F\u77A0\u77B0\u77B5\u77BD\u753A\u7540\u754E\u754B\u7548\u755B\u7572\u7579\u7583\u7F58\u7F61\u7F5F\u8A48\u7F68\u7F74\u7F71\u7F79\u7F81\u7F7E\u76CD\u76E5\u8832\u9485\u9486\u9487\u948B\u948A\u948C\u948D\u948F\u9490\u9494\u9497\u9495\u949A\u949B\u949C\u94A3\u94A4\u94AB\u94AA\u94AD\u94AC\u94AF\u94B0\u94B2\u94B4\u94B6",4,"\u94BC\u94BD\u94BF\u94C4\u94C8",6,"\u94D0\u94D1\u94D2\u94D5\u94D6\u94D7\u94D9\u94D8\u94DB\u94DE\u94DF\u94E0\u94E2\u94E4\u94E5\u94E7\u94E8\u94EA"],["ef40","\u986F",5,"\u988B\u988E\u9892\u9895\u9899\u98A3\u98A8",37,"\u98CF\u98D0\u98D4\u98D6\u98D7\u98DB\u98DC\u98DD\u98E0",4],["ef80","\u98E5\u98E6\u98E9",30,"\u94E9\u94EB\u94EE\u94EF\u94F3\u94F4\u94F5\u94F7\u94F9\u94FC\u94FD\u94FF\u9503\u9502\u9506\u9507\u9509\u950A\u950D\u950E\u950F\u9512",4,"\u9518\u951B\u951D\u951E\u951F\u9522\u952A\u952B\u9529\u952C\u9531\u9532\u9534\u9536\u9537\u9538\u953C\u953E\u953F\u9542\u9535\u9544\u9545\u9546\u9549\u954C\u954E\u954F\u9552\u9553\u9554\u9556\u9557\u9558\u9559\u955B\u955E\u955F\u955D\u9561\u9562\u9564",8,"\u956F\u9571\u9572\u9573\u953A\u77E7\u77EC\u96C9\u79D5\u79ED\u79E3\u79EB\u7A06\u5D47\u7A03\u7A02\u7A1E\u7A14"],["f040","\u9908",4,"\u990E\u990F\u9911",28,"\u992F",26],["f080","\u994A",9,"\u9956",12,"\u9964\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u7A39\u7A37\u7A51\u9ECF\u99A5\u7A70\u7688\u768E\u7693\u7699\u76A4\u74DE\u74E0\u752C\u9E20\u9E22\u9E28",4,"\u9E32\u9E31\u9E36\u9E38\u9E37\u9E39\u9E3A\u9E3E\u9E41\u9E42\u9E44\u9E46\u9E47\u9E48\u9E49\u9E4B\u9E4C\u9E4E\u9E51\u9E55\u9E57\u9E5A\u9E5B\u9E5C\u9E5E\u9E63\u9E66",6,"\u9E71\u9E6D\u9E73\u7592\u7594\u7596\u75A0\u759D\u75AC\u75A3\u75B3\u75B4\u75B8\u75C4\u75B1\u75B0\u75C3\u75C2\u75D6\u75CD\u75E3\u75E8\u75E6\u75E4\u75EB\u75E7\u7603\u75F1\u75FC\u75FF\u7610\u7600\u7605\u760C\u7617\u760A\u7625\u7618\u7615\u7619"],["f140","\u998C\u998E\u999A",10,"\u99A6\u99A7\u99A9",47],["f180","\u99D9",32,"\u761B\u763C\u7622\u7620\u7640\u762D\u7630\u763F\u7635\u7643\u763E\u7633\u764D\u765E\u7654\u765C\u7656\u766B\u766F\u7FCA\u7AE6\u7A78\u7A79\u7A80\u7A86\u7A88\u7A95\u7AA6\u7AA0\u7AAC\u7AA8\u7AAD\u7AB3\u8864\u8869\u8872\u887D\u887F\u8882\u88A2\u88C6\u88B7\u88BC\u88C9\u88E2\u88CE\u88E3\u88E5\u88F1\u891A\u88FC\u88E8\u88FE\u88F0\u8921\u8919\u8913\u891B\u890A\u8934\u892B\u8936\u8941\u8966\u897B\u758B\u80E5\u76B2\u76B4\u77DC\u8012\u8014\u8016\u801C\u8020\u8022\u8025\u8026\u8027\u8029\u8028\u8031\u800B\u8035\u8043\u8046\u804D\u8052\u8069\u8071\u8983\u9878\u9880\u9883"],["f240","\u99FA",62],["f280","\u9A39",32,"\u9889\u988C\u988D\u988F\u9894\u989A\u989B\u989E\u989F\u98A1\u98A2\u98A5\u98A6\u864D\u8654\u866C\u866E\u867F\u867A\u867C\u867B\u86A8\u868D\u868B\u86AC\u869D\u86A7\u86A3\u86AA\u8693\u86A9\u86B6\u86C4\u86B5\u86CE\u86B0\u86BA\u86B1\u86AF\u86C9\u86CF\u86B4\u86E9\u86F1\u86F2\u86ED\u86F3\u86D0\u8713\u86DE\u86F4\u86DF\u86D8\u86D1\u8703\u8707\u86F8\u8708\u870A\u870D\u8709\u8723\u873B\u871E\u8725\u872E\u871A\u873E\u8748\u8734\u8731\u8729\u8737\u873F\u8782\u8722\u877D\u877E\u877B\u8760\u8770\u874C\u876E\u878B\u8753\u8763\u877C\u8764\u8759\u8765\u8793\u87AF\u87A8\u87D2"],["f340","\u9A5A",17,"\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9AA9",6,"\u9AB2\u9AB3\u9AB4\u9AB5\u9AB9\u9ABB\u9ABD\u9ABE\u9ABF\u9AC3\u9AC4\u9AC6",4,"\u9ACD\u9ACE\u9ACF\u9AD0\u9AD2\u9AD4\u9AD5\u9AD6\u9AD7\u9AD9\u9ADA\u9ADB\u9ADC"],["f380","\u9ADD\u9ADE\u9AE0\u9AE2\u9AE3\u9AE4\u9AE5\u9AE7\u9AE8\u9AE9\u9AEA\u9AEC\u9AEE\u9AF0",8,"\u9AFA\u9AFC",6,"\u9B04\u9B05\u9B06\u87C6\u8788\u8785\u87AD\u8797\u8783\u87AB\u87E5\u87AC\u87B5\u87B3\u87CB\u87D3\u87BD\u87D1\u87C0\u87CA\u87DB\u87EA\u87E0\u87EE\u8816\u8813\u87FE\u880A\u881B\u8821\u8839\u883C\u7F36\u7F42\u7F44\u7F45\u8210\u7AFA\u7AFD\u7B08\u7B03\u7B04\u7B15\u7B0A\u7B2B\u7B0F\u7B47\u7B38\u7B2A\u7B19\u7B2E\u7B31\u7B20\u7B25\u7B24\u7B33\u7B3E\u7B1E\u7B58\u7B5A\u7B45\u7B75\u7B4C\u7B5D\u7B60\u7B6E\u7B7B\u7B62\u7B72\u7B71\u7B90\u7BA6\u7BA7\u7BB8\u7BAC\u7B9D\u7BA8\u7B85\u7BAA\u7B9C\u7BA2\u7BAB\u7BB4\u7BD1\u7BC1\u7BCC\u7BDD\u7BDA\u7BE5\u7BE6\u7BEA\u7C0C\u7BFE\u7BFC\u7C0F\u7C16\u7C0B"],["f440","\u9B07\u9B09",5,"\u9B10\u9B11\u9B12\u9B14",10,"\u9B20\u9B21\u9B22\u9B24",10,"\u9B30\u9B31\u9B33",7,"\u9B3D\u9B3E\u9B3F\u9B40\u9B46\u9B4A\u9B4B\u9B4C\u9B4E\u9B50\u9B52\u9B53\u9B55",5],["f480","\u9B5B",32,"\u7C1F\u7C2A\u7C26\u7C38\u7C41\u7C40\u81FE\u8201\u8202\u8204\u81EC\u8844\u8221\u8222\u8223\u822D\u822F\u8228\u822B\u8238\u823B\u8233\u8234\u823E\u8244\u8249\u824B\u824F\u825A\u825F\u8268\u887E\u8885\u8888\u88D8\u88DF\u895E\u7F9D\u7F9F\u7FA7\u7FAF\u7FB0\u7FB2\u7C7C\u6549\u7C91\u7C9D\u7C9C\u7C9E\u7CA2\u7CB2\u7CBC\u7CBD\u7CC1\u7CC7\u7CCC\u7CCD\u7CC8\u7CC5\u7CD7\u7CE8\u826E\u66A8\u7FBF\u7FCE\u7FD5\u7FE5\u7FE1\u7FE6\u7FE9\u7FEE\u7FF3\u7CF8\u7D77\u7DA6\u7DAE\u7E47\u7E9B\u9EB8\u9EB4\u8D73\u8D84\u8D94\u8D91\u8DB1\u8D67\u8D6D\u8C47\u8C49\u914A\u9150\u914E\u914F\u9164"],["f540","\u9B7C",62],["f580","\u9BBB",32,"\u9162\u9161\u9170\u9169\u916F\u917D\u917E\u9172\u9174\u9179\u918C\u9185\u9190\u918D\u9191\u91A2\u91A3\u91AA\u91AD\u91AE\u91AF\u91B5\u91B4\u91BA\u8C55\u9E7E\u8DB8\u8DEB\u8E05\u8E59\u8E69\u8DB5\u8DBF\u8DBC\u8DBA\u8DC4\u8DD6\u8DD7\u8DDA\u8DDE\u8DCE\u8DCF\u8DDB\u8DC6\u8DEC\u8DF7\u8DF8\u8DE3\u8DF9\u8DFB\u8DE4\u8E09\u8DFD\u8E14\u8E1D\u8E1F\u8E2C\u8E2E\u8E23\u8E2F\u8E3A\u8E40\u8E39\u8E35\u8E3D\u8E31\u8E49\u8E41\u8E42\u8E51\u8E52\u8E4A\u8E70\u8E76\u8E7C\u8E6F\u8E74\u8E85\u8E8F\u8E94\u8E90\u8E9C\u8E9E\u8C78\u8C82\u8C8A\u8C85\u8C98\u8C94\u659B\u89D6\u89DE\u89DA\u89DC"],["f640","\u9BDC",62],["f680","\u9C1B",32,"\u89E5\u89EB\u89EF\u8A3E\u8B26\u9753\u96E9\u96F3\u96EF\u9706\u9701\u9708\u970F\u970E\u972A\u972D\u9730\u973E\u9F80\u9F83\u9F85",5,"\u9F8C\u9EFE\u9F0B\u9F0D\u96B9\u96BC\u96BD\u96CE\u96D2\u77BF\u96E0\u928E\u92AE\u92C8\u933E\u936A\u93CA\u938F\u943E\u946B\u9C7F\u9C82\u9C85\u9C86\u9C87\u9C88\u7A23\u9C8B\u9C8E\u9C90\u9C91\u9C92\u9C94\u9C95\u9C9A\u9C9B\u9C9E",5,"\u9CA5",4,"\u9CAB\u9CAD\u9CAE\u9CB0",7,"\u9CBA\u9CBB\u9CBC\u9CBD\u9CC4\u9CC5\u9CC6\u9CC7\u9CCA\u9CCB"],["f740","\u9C3C",62],["f780","\u9C7B\u9C7D\u9C7E\u9C80\u9C83\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE",4,"\u9CC8\u9CC9\u9CD1\u9CD2\u9CDA\u9CDB\u9CE0\u9CE1\u9CCC",4,"\u9CD3\u9CD4\u9CD5\u9CD7\u9CD8\u9CD9\u9CDC\u9CDD\u9CDF\u9CE2\u977C\u9785\u9791\u9792\u9794\u97AF\u97AB\u97A3\u97B2\u97B4\u9AB1\u9AB0\u9AB7\u9E58\u9AB6\u9ABA\u9ABC\u9AC1\u9AC0\u9AC5\u9AC2\u9ACB\u9ACC\u9AD1\u9B45\u9B43\u9B47\u9B49\u9B48\u9B4D\u9B51\u98E8\u990D\u992E\u9955\u9954\u9ADF\u9AE1\u9AE6\u9AEF\u9AEB\u9AFB\u9AED\u9AF9\u9B08\u9B0F\u9B13\u9B1F\u9B23\u9EBD\u9EBE\u7E3B\u9E82\u9E87\u9E88\u9E8B\u9E92\u93D6\u9E9D\u9E9F\u9EDB\u9EDC\u9EDD\u9EE0\u9EDF\u9EE2\u9EE9\u9EE7\u9EE5\u9EEA\u9EEF\u9F22\u9F2C\u9F2F\u9F39\u9F37\u9F3D\u9F3E\u9F44"],["f840","\u9CE3",62],["f880","\u9D22",32],["f940","\u9D43",62],["f980","\u9D82",32],["fa40","\u9DA3",62],["fa80","\u9DE2",32],["fb40","\u9E03",27,"\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E59\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6E\u9E6F\u9E72\u9E74",9,"\u9E80"],["fb80","\u9E81\u9E83\u9E84\u9E85\u9E86\u9E89\u9E8A\u9E8C",5,"\u9E94",8,"\u9E9E\u9EA0",5,"\u9EA7\u9EA8\u9EA9\u9EAA"],["fc40","\u9EAB",8,"\u9EB5\u9EB6\u9EB7\u9EB9\u9EBA\u9EBC\u9EBF",4,"\u9EC5\u9EC6\u9EC7\u9EC8\u9ECA\u9ECB\u9ECC\u9ED0\u9ED2\u9ED3\u9ED5\u9ED6\u9ED7\u9ED9\u9EDA\u9EDE\u9EE1\u9EE3\u9EE4\u9EE6\u9EE8\u9EEB\u9EEC\u9EED\u9EEE\u9EF0",8,"\u9EFA\u9EFD\u9EFF",6],["fc80","\u9F06",4,"\u9F0C\u9F0F\u9F11\u9F12\u9F14\u9F15\u9F16\u9F18\u9F1A",5,"\u9F21\u9F23",8,"\u9F2D\u9F2E\u9F30\u9F31"],["fd40","\u9F32",4,"\u9F38\u9F3A\u9F3C\u9F3F",4,"\u9F45",10,"\u9F52",38],["fd80","\u9F79",5,"\u9F81\u9F82\u9F8D",11,"\u9F9C\u9F9D\u9F9E\u9FA1",4,"\uF92C\uF979\uF995\uF9E7\uF9F1"],["fe40","\uFA0C\uFA0D\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA18\uFA1F\uFA20\uFA21\uFA23\uFA24\uFA27\uFA28\uFA29"]]});var V7=b((J8e,ZG)=>{ZG.exports=[["a140","\uE4C6",62],["a180","\uE505",32],["a240","\uE526",62],["a280","\uE565",32],["a2ab","\uE766",5],["a2e3","\u20AC\uE76D"],["a2ef","\uE76E\uE76F"],["a2fd","\uE770\uE771"],["a340","\uE586",62],["a380","\uE5C5",31,"\u3000"],["a440","\uE5E6",62],["a480","\uE625",32],["a4f4","\uE772",10],["a540","\uE646",62],["a580","\uE685",32],["a5f7","\uE77D",7],["a640","\uE6A6",62],["a680","\uE6E5",32],["a6b9","\uE785",7],["a6d9","\uE78D",6],["a6ec","\uE794\uE795"],["a6f3","\uE796"],["a6f6","\uE797",8],["a740","\uE706",62],["a780","\uE745",32],["a7c2","\uE7A0",14],["a7f2","\uE7AF",12],["a896","\uE7BC",10],["a8bc","\u1E3F"],["a8bf","\u01F9"],["a8c1","\uE7C9\uE7CA\uE7CB\uE7CC"],["a8ea","\uE7CD",20],["a958","\uE7E2"],["a95b","\uE7E3"],["a95d","\uE7E4\uE7E5\uE7E6"],["a989","\u303E\u2FF0",11],["a997","\uE7F4",12],["a9f0","\uE801",14],["aaa1","\uE000",93],["aba1","\uE05E",93],["aca1","\uE0BC",93],["ada1","\uE11A",93],["aea1","\uE178",93],["afa1","\uE1D6",93],["d7fa","\uE810",4],["f8a1","\uE234",93],["f9a1","\uE292",93],["faa1","\uE2F0",93],["fba1","\uE34E",93],["fca1","\uE3AC",93],["fda1","\uE40A",93],["fe50","\u2E81\uE816\uE817\uE818\u2E84\u3473\u3447\u2E88\u2E8B\uE81E\u359E\u361A\u360E\u2E8C\u2E97\u396E\u3918\uE826\u39CF\u39DF\u3A73\u39D0\uE82B\uE82C\u3B4E\u3C6E\u3CE0\u2EA7\uE831\uE832\u2EAA\u4056\u415F\u2EAE\u4337\u2EB3\u2EB6\u2EB7\uE83B\u43B1\u43AC\u2EBB\u43DD\u44D6\u4661\u464C\uE843"],["fe80","\u4723\u4729\u477C\u478D\u2ECA\u4947\u497A\u497D\u4982\u4983\u4985\u4986\u499F\u499B\u49B7\u49B6\uE854\uE855\u4CA3\u4C9F\u4CA0\u4CA1\u4C77\u4CA2\u4D13",6,"\u4DAE\uE864\uE468",93],["8135f437","\uE7C7"]]});var NT=b((Y8e,JG)=>{JG.exports={uChars:[128,165,169,178,184,216,226,235,238,244,248,251,253,258,276,284,300,325,329,334,364,463,465,467,469,471,473,475,477,506,594,610,712,716,730,930,938,962,970,1026,1104,1106,8209,8215,8218,8222,8231,8241,8244,8246,8252,8365,8452,8454,8458,8471,8482,8556,8570,8596,8602,8713,8720,8722,8726,8731,8737,8740,8742,8748,8751,8760,8766,8777,8781,8787,8802,8808,8816,8854,8858,8870,8896,8979,9322,9372,9548,9588,9616,9622,9634,9652,9662,9672,9676,9680,9702,9735,9738,9793,9795,11906,11909,11913,11917,11928,11944,11947,11951,11956,11960,11964,11979,12284,12292,12312,12319,12330,12351,12436,12447,12535,12543,12586,12842,12850,12964,13200,13215,13218,13253,13263,13267,13270,13384,13428,13727,13839,13851,14617,14703,14801,14816,14964,15183,15471,15585,16471,16736,17208,17325,17330,17374,17623,17997,18018,18212,18218,18301,18318,18760,18811,18814,18820,18823,18844,18848,18872,19576,19620,19738,19887,40870,59244,59336,59367,59413,59417,59423,59431,59437,59443,59452,59460,59478,59493,63789,63866,63894,63976,63986,64016,64018,64021,64025,64034,64037,64042,65074,65093,65107,65112,65127,65132,65375,65510,65536],gbChars:[0,36,38,45,50,81,89,95,96,100,103,104,105,109,126,133,148,172,175,179,208,306,307,308,309,310,311,312,313,341,428,443,544,545,558,741,742,749,750,805,819,820,7922,7924,7925,7927,7934,7943,7944,7945,7950,8062,8148,8149,8152,8164,8174,8236,8240,8262,8264,8374,8380,8381,8384,8388,8390,8392,8393,8394,8396,8401,8406,8416,8419,8424,8437,8439,8445,8482,8485,8496,8521,8603,8936,8946,9046,9050,9063,9066,9076,9092,9100,9108,9111,9113,9131,9162,9164,9218,9219,11329,11331,11334,11336,11346,11361,11363,11366,11370,11372,11375,11389,11682,11686,11687,11692,11694,11714,11716,11723,11725,11730,11736,11982,11989,12102,12336,12348,12350,12384,12393,12395,12397,12510,12553,12851,12962,12973,13738,13823,13919,13933,14080,14298,14585,14698,15583,15847,16318,16434,16438,16481,16729,17102,17122,17315,17320,17402,17418,17859,17909,17911,17915,17916,17936,17939,17961,18664,18703,18814,18962,19043,33469,33470,33471,33484,33485,33490,33497,33501,33505,33513,33520,33536,33550,37845,37921,37948,38029,38038,38064,38065,38066,38069,38075,38076,38078,39108,39109,39113,39114,39115,39116,39265,39394,189e3]}});var qT=b((Q8e,YG)=>{YG.exports=[["0","\0",127],["8141","\uAC02\uAC03\uAC05\uAC06\uAC0B",4,"\uAC18\uAC1E\uAC1F\uAC21\uAC22\uAC23\uAC25",6,"\uAC2E\uAC32\uAC33\uAC34"],["8161","\uAC35\uAC36\uAC37\uAC3A\uAC3B\uAC3D\uAC3E\uAC3F\uAC41",9,"\uAC4C\uAC4E",5,"\uAC55"],["8181","\uAC56\uAC57\uAC59\uAC5A\uAC5B\uAC5D",18,"\uAC72\uAC73\uAC75\uAC76\uAC79\uAC7B",4,"\uAC82\uAC87\uAC88\uAC8D\uAC8E\uAC8F\uAC91\uAC92\uAC93\uAC95",6,"\uAC9E\uACA2",5,"\uACAB\uACAD\uACAE\uACB1",6,"\uACBA\uACBE\uACBF\uACC0\uACC2\uACC3\uACC5\uACC6\uACC7\uACC9\uACCA\uACCB\uACCD",7,"\uACD6\uACD8",7,"\uACE2\uACE3\uACE5\uACE6\uACE9\uACEB\uACED\uACEE\uACF2\uACF4\uACF7",4,"\uACFE\uACFF\uAD01\uAD02\uAD03\uAD05\uAD07",4,"\uAD0E\uAD10\uAD12\uAD13"],["8241","\uAD14\uAD15\uAD16\uAD17\uAD19\uAD1A\uAD1B\uAD1D\uAD1E\uAD1F\uAD21",7,"\uAD2A\uAD2B\uAD2E",5],["8261","\uAD36\uAD37\uAD39\uAD3A\uAD3B\uAD3D",6,"\uAD46\uAD48\uAD4A",5,"\uAD51\uAD52\uAD53\uAD55\uAD56\uAD57"],["8281","\uAD59",7,"\uAD62\uAD64",7,"\uAD6E\uAD6F\uAD71\uAD72\uAD77\uAD78\uAD79\uAD7A\uAD7E\uAD80\uAD83",4,"\uAD8A\uAD8B\uAD8D\uAD8E\uAD8F\uAD91",10,"\uAD9E",5,"\uADA5",17,"\uADB8",7,"\uADC2\uADC3\uADC5\uADC6\uADC7\uADC9",6,"\uADD2\uADD4",7,"\uADDD\uADDE\uADDF\uADE1\uADE2\uADE3\uADE5",18],["8341","\uADFA\uADFB\uADFD\uADFE\uAE02",5,"\uAE0A\uAE0C\uAE0E",5,"\uAE15",7],["8361","\uAE1D",18,"\uAE32\uAE33\uAE35\uAE36\uAE39\uAE3B\uAE3C"],["8381","\uAE3D\uAE3E\uAE3F\uAE42\uAE44\uAE47\uAE48\uAE49\uAE4B\uAE4F\uAE51\uAE52\uAE53\uAE55\uAE57",4,"\uAE5E\uAE62\uAE63\uAE64\uAE66\uAE67\uAE6A\uAE6B\uAE6D\uAE6E\uAE6F\uAE71",6,"\uAE7A\uAE7E",5,"\uAE86",5,"\uAE8D",46,"\uAEBF\uAEC1\uAEC2\uAEC3\uAEC5",6,"\uAECE\uAED2",5,"\uAEDA\uAEDB\uAEDD",8],["8441","\uAEE6\uAEE7\uAEE9\uAEEA\uAEEC\uAEEE",5,"\uAEF5\uAEF6\uAEF7\uAEF9\uAEFA\uAEFB\uAEFD",8],["8461","\uAF06\uAF09\uAF0A\uAF0B\uAF0C\uAF0E\uAF0F\uAF11",18],["8481","\uAF24",7,"\uAF2E\uAF2F\uAF31\uAF33\uAF35",6,"\uAF3E\uAF40\uAF44\uAF45\uAF46\uAF47\uAF4A",5,"\uAF51",10,"\uAF5E",5,"\uAF66",18,"\uAF7A",5,"\uAF81\uAF82\uAF83\uAF85\uAF86\uAF87\uAF89",6,"\uAF92\uAF93\uAF94\uAF96",5,"\uAF9D",26,"\uAFBA\uAFBB\uAFBD\uAFBE"],["8541","\uAFBF\uAFC1",5,"\uAFCA\uAFCC\uAFCF",4,"\uAFD5",6,"\uAFDD",4],["8561","\uAFE2",5,"\uAFEA",5,"\uAFF2\uAFF3\uAFF5\uAFF6\uAFF7\uAFF9",6,"\uB002\uB003"],["8581","\uB005",6,"\uB00D\uB00E\uB00F\uB011\uB012\uB013\uB015",6,"\uB01E",9,"\uB029",26,"\uB046\uB047\uB049\uB04B\uB04D\uB04F\uB050\uB051\uB052\uB056\uB058\uB05A\uB05B\uB05C\uB05E",29,"\uB07E\uB07F\uB081\uB082\uB083\uB085",6,"\uB08E\uB090\uB092",5,"\uB09B\uB09D\uB09E\uB0A3\uB0A4"],["8641","\uB0A5\uB0A6\uB0A7\uB0AA\uB0B0\uB0B2\uB0B6\uB0B7\uB0B9\uB0BA\uB0BB\uB0BD",6,"\uB0C6\uB0CA",5,"\uB0D2"],["8661","\uB0D3\uB0D5\uB0D6\uB0D7\uB0D9",6,"\uB0E1\uB0E2\uB0E3\uB0E4\uB0E6",10],["8681","\uB0F1",22,"\uB10A\uB10D\uB10E\uB10F\uB111\uB114\uB115\uB116\uB117\uB11A\uB11E",4,"\uB126\uB127\uB129\uB12A\uB12B\uB12D",6,"\uB136\uB13A",5,"\uB142\uB143\uB145\uB146\uB147\uB149",6,"\uB152\uB153\uB156\uB157\uB159\uB15A\uB15B\uB15D\uB15E\uB15F\uB161",22,"\uB17A\uB17B\uB17D\uB17E\uB17F\uB181\uB183",4,"\uB18A\uB18C\uB18E\uB18F\uB190\uB191\uB195\uB196\uB197\uB199\uB19A\uB19B\uB19D"],["8741","\uB19E",9,"\uB1A9",15],["8761","\uB1B9",18,"\uB1CD\uB1CE\uB1CF\uB1D1\uB1D2\uB1D3\uB1D5"],["8781","\uB1D6",5,"\uB1DE\uB1E0",7,"\uB1EA\uB1EB\uB1ED\uB1EE\uB1EF\uB1F1",7,"\uB1FA\uB1FC\uB1FE",5,"\uB206\uB207\uB209\uB20A\uB20D",6,"\uB216\uB218\uB21A",5,"\uB221",18,"\uB235",6,"\uB23D",26,"\uB259\uB25A\uB25B\uB25D\uB25E\uB25F\uB261",6,"\uB26A",4],["8841","\uB26F",4,"\uB276",5,"\uB27D",6,"\uB286\uB287\uB288\uB28A",4],["8861","\uB28F\uB292\uB293\uB295\uB296\uB297\uB29B",4,"\uB2A2\uB2A4\uB2A7\uB2A8\uB2A9\uB2AB\uB2AD\uB2AE\uB2AF\uB2B1\uB2B2\uB2B3\uB2B5\uB2B6\uB2B7"],["8881","\uB2B8",15,"\uB2CA\uB2CB\uB2CD\uB2CE\uB2CF\uB2D1\uB2D3",4,"\uB2DA\uB2DC\uB2DE\uB2DF\uB2E0\uB2E1\uB2E3\uB2E7\uB2E9\uB2EA\uB2F0\uB2F1\uB2F2\uB2F6\uB2FC\uB2FD\uB2FE\uB302\uB303\uB305\uB306\uB307\uB309",6,"\uB312\uB316",5,"\uB31D",54,"\uB357\uB359\uB35A\uB35D\uB360\uB361\uB362\uB363"],["8941","\uB366\uB368\uB36A\uB36C\uB36D\uB36F\uB372\uB373\uB375\uB376\uB377\uB379",6,"\uB382\uB386",5,"\uB38D"],["8961","\uB38E\uB38F\uB391\uB392\uB393\uB395",10,"\uB3A2",5,"\uB3A9\uB3AA\uB3AB\uB3AD"],["8981","\uB3AE",21,"\uB3C6\uB3C7\uB3C9\uB3CA\uB3CD\uB3CF\uB3D1\uB3D2\uB3D3\uB3D6\uB3D8\uB3DA\uB3DC\uB3DE\uB3DF\uB3E1\uB3E2\uB3E3\uB3E5\uB3E6\uB3E7\uB3E9",18,"\uB3FD",18,"\uB411",6,"\uB419\uB41A\uB41B\uB41D\uB41E\uB41F\uB421",6,"\uB42A\uB42C",7,"\uB435",15],["8a41","\uB445",10,"\uB452\uB453\uB455\uB456\uB457\uB459",6,"\uB462\uB464\uB466"],["8a61","\uB467",4,"\uB46D",18,"\uB481\uB482"],["8a81","\uB483",4,"\uB489",19,"\uB49E",5,"\uB4A5\uB4A6\uB4A7\uB4A9\uB4AA\uB4AB\uB4AD",7,"\uB4B6\uB4B8\uB4BA",5,"\uB4C1\uB4C2\uB4C3\uB4C5\uB4C6\uB4C7\uB4C9",6,"\uB4D1\uB4D2\uB4D3\uB4D4\uB4D6",5,"\uB4DE\uB4DF\uB4E1\uB4E2\uB4E5\uB4E7",4,"\uB4EE\uB4F0\uB4F2",5,"\uB4F9",26,"\uB516\uB517\uB519\uB51A\uB51D"],["8b41","\uB51E",5,"\uB526\uB52B",4,"\uB532\uB533\uB535\uB536\uB537\uB539",6,"\uB542\uB546"],["8b61","\uB547\uB548\uB549\uB54A\uB54E\uB54F\uB551\uB552\uB553\uB555",6,"\uB55E\uB562",8],["8b81","\uB56B",52,"\uB5A2\uB5A3\uB5A5\uB5A6\uB5A7\uB5A9\uB5AC\uB5AD\uB5AE\uB5AF\uB5B2\uB5B6",4,"\uB5BE\uB5BF\uB5C1\uB5C2\uB5C3\uB5C5",6,"\uB5CE\uB5D2",5,"\uB5D9",18,"\uB5ED",18],["8c41","\uB600",15,"\uB612\uB613\uB615\uB616\uB617\uB619",4],["8c61","\uB61E",6,"\uB626",5,"\uB62D",6,"\uB635",5],["8c81","\uB63B",12,"\uB649",26,"\uB665\uB666\uB667\uB669",50,"\uB69E\uB69F\uB6A1\uB6A2\uB6A3\uB6A5",5,"\uB6AD\uB6AE\uB6AF\uB6B0\uB6B2",16],["8d41","\uB6C3",16,"\uB6D5",8],["8d61","\uB6DE",17,"\uB6F1\uB6F2\uB6F3\uB6F5\uB6F6\uB6F7\uB6F9\uB6FA"],["8d81","\uB6FB",4,"\uB702\uB703\uB704\uB706",33,"\uB72A\uB72B\uB72D\uB72E\uB731",6,"\uB73A\uB73C",7,"\uB745\uB746\uB747\uB749\uB74A\uB74B\uB74D",6,"\uB756",9,"\uB761\uB762\uB763\uB765\uB766\uB767\uB769",6,"\uB772\uB774\uB776",5,"\uB77E\uB77F\uB781\uB782\uB783\uB785",6,"\uB78E\uB793\uB794\uB795\uB79A\uB79B\uB79D\uB79E"],["8e41","\uB79F\uB7A1",6,"\uB7AA\uB7AE",5,"\uB7B6\uB7B7\uB7B9",8],["8e61","\uB7C2",4,"\uB7C8\uB7CA",19],["8e81","\uB7DE",13,"\uB7EE\uB7EF\uB7F1\uB7F2\uB7F3\uB7F5",6,"\uB7FE\uB802",4,"\uB80A\uB80B\uB80D\uB80E\uB80F\uB811",6,"\uB81A\uB81C\uB81E",5,"\uB826\uB827\uB829\uB82A\uB82B\uB82D",6,"\uB836\uB83A",5,"\uB841\uB842\uB843\uB845",11,"\uB852\uB854",7,"\uB85E\uB85F\uB861\uB862\uB863\uB865",6,"\uB86E\uB870\uB872",5,"\uB879\uB87A\uB87B\uB87D",7],["8f41","\uB885",7,"\uB88E",17],["8f61","\uB8A0",7,"\uB8A9",6,"\uB8B1\uB8B2\uB8B3\uB8B5\uB8B6\uB8B7\uB8B9",4],["8f81","\uB8BE\uB8BF\uB8C2\uB8C4\uB8C6",5,"\uB8CD\uB8CE\uB8CF\uB8D1\uB8D2\uB8D3\uB8D5",7,"\uB8DE\uB8E0\uB8E2",5,"\uB8EA\uB8EB\uB8ED\uB8EE\uB8EF\uB8F1",6,"\uB8FA\uB8FC\uB8FE",5,"\uB905",18,"\uB919",6,"\uB921",26,"\uB93E\uB93F\uB941\uB942\uB943\uB945",6,"\uB94D\uB94E\uB950\uB952",5],["9041","\uB95A\uB95B\uB95D\uB95E\uB95F\uB961",6,"\uB96A\uB96C\uB96E",5,"\uB976\uB977\uB979\uB97A\uB97B\uB97D"],["9061","\uB97E",5,"\uB986\uB988\uB98B\uB98C\uB98F",15],["9081","\uB99F",12,"\uB9AE\uB9AF\uB9B1\uB9B2\uB9B3\uB9B5",6,"\uB9BE\uB9C0\uB9C2",5,"\uB9CA\uB9CB\uB9CD\uB9D3",4,"\uB9DA\uB9DC\uB9DF\uB9E0\uB9E2\uB9E6\uB9E7\uB9E9\uB9EA\uB9EB\uB9ED",6,"\uB9F6\uB9FB",4,"\uBA02",5,"\uBA09",11,"\uBA16",33,"\uBA3A\uBA3B\uBA3D\uBA3E\uBA3F\uBA41\uBA43\uBA44\uBA45\uBA46"],["9141","\uBA47\uBA4A\uBA4C\uBA4F\uBA50\uBA51\uBA52\uBA56\uBA57\uBA59\uBA5A\uBA5B\uBA5D",6,"\uBA66\uBA6A",5],["9161","\uBA72\uBA73\uBA75\uBA76\uBA77\uBA79",9,"\uBA86\uBA88\uBA89\uBA8A\uBA8B\uBA8D",5],["9181","\uBA93",20,"\uBAAA\uBAAD\uBAAE\uBAAF\uBAB1\uBAB3",4,"\uBABA\uBABC\uBABE",5,"\uBAC5\uBAC6\uBAC7\uBAC9",14,"\uBADA",33,"\uBAFD\uBAFE\uBAFF\uBB01\uBB02\uBB03\uBB05",7,"\uBB0E\uBB10\uBB12",5,"\uBB19\uBB1A\uBB1B\uBB1D\uBB1E\uBB1F\uBB21",6],["9241","\uBB28\uBB2A\uBB2C",7,"\uBB37\uBB39\uBB3A\uBB3F",4,"\uBB46\uBB48\uBB4A\uBB4B\uBB4C\uBB4E\uBB51\uBB52"],["9261","\uBB53\uBB55\uBB56\uBB57\uBB59",7,"\uBB62\uBB64",7,"\uBB6D",4],["9281","\uBB72",21,"\uBB89\uBB8A\uBB8B\uBB8D\uBB8E\uBB8F\uBB91",18,"\uBBA5\uBBA6\uBBA7\uBBA9\uBBAA\uBBAB\uBBAD",6,"\uBBB5\uBBB6\uBBB8",7,"\uBBC1\uBBC2\uBBC3\uBBC5\uBBC6\uBBC7\uBBC9",6,"\uBBD1\uBBD2\uBBD4",35,"\uBBFA\uBBFB\uBBFD\uBBFE\uBC01"],["9341","\uBC03",4,"\uBC0A\uBC0E\uBC10\uBC12\uBC13\uBC19\uBC1A\uBC20\uBC21\uBC22\uBC23\uBC26\uBC28\uBC2A\uBC2B\uBC2C\uBC2E\uBC2F\uBC32\uBC33\uBC35"],["9361","\uBC36\uBC37\uBC39",6,"\uBC42\uBC46\uBC47\uBC48\uBC4A\uBC4B\uBC4E\uBC4F\uBC51",8],["9381","\uBC5A\uBC5B\uBC5C\uBC5E",37,"\uBC86\uBC87\uBC89\uBC8A\uBC8D\uBC8F",4,"\uBC96\uBC98\uBC9B",4,"\uBCA2\uBCA3\uBCA5\uBCA6\uBCA9",6,"\uBCB2\uBCB6",5,"\uBCBE\uBCBF\uBCC1\uBCC2\uBCC3\uBCC5",7,"\uBCCE\uBCD2\uBCD3\uBCD4\uBCD6\uBCD7\uBCD9\uBCDA\uBCDB\uBCDD",22,"\uBCF7\uBCF9\uBCFA\uBCFB\uBCFD"],["9441","\uBCFE",5,"\uBD06\uBD08\uBD0A",5,"\uBD11\uBD12\uBD13\uBD15",8],["9461","\uBD1E",5,"\uBD25",6,"\uBD2D",12],["9481","\uBD3A",5,"\uBD41",6,"\uBD4A\uBD4B\uBD4D\uBD4E\uBD4F\uBD51",6,"\uBD5A",9,"\uBD65\uBD66\uBD67\uBD69",22,"\uBD82\uBD83\uBD85\uBD86\uBD8B",4,"\uBD92\uBD94\uBD96\uBD97\uBD98\uBD9B\uBD9D",6,"\uBDA5",10,"\uBDB1",6,"\uBDB9",24],["9541","\uBDD2\uBDD3\uBDD6\uBDD7\uBDD9\uBDDA\uBDDB\uBDDD",11,"\uBDEA",5,"\uBDF1"],["9561","\uBDF2\uBDF3\uBDF5\uBDF6\uBDF7\uBDF9",6,"\uBE01\uBE02\uBE04\uBE06",5,"\uBE0E\uBE0F\uBE11\uBE12\uBE13"],["9581","\uBE15",6,"\uBE1E\uBE20",35,"\uBE46\uBE47\uBE49\uBE4A\uBE4B\uBE4D\uBE4F",4,"\uBE56\uBE58\uBE5C\uBE5D\uBE5E\uBE5F\uBE62\uBE63\uBE65\uBE66\uBE67\uBE69\uBE6B",4,"\uBE72\uBE76",4,"\uBE7E\uBE7F\uBE81\uBE82\uBE83\uBE85",6,"\uBE8E\uBE92",5,"\uBE9A",13,"\uBEA9",14],["9641","\uBEB8",23,"\uBED2\uBED3"],["9661","\uBED5\uBED6\uBED9",6,"\uBEE1\uBEE2\uBEE6",5,"\uBEED",8],["9681","\uBEF6",10,"\uBF02",5,"\uBF0A",13,"\uBF1A\uBF1E",33,"\uBF42\uBF43\uBF45\uBF46\uBF47\uBF49",6,"\uBF52\uBF53\uBF54\uBF56",44],["9741","\uBF83",16,"\uBF95",8],["9761","\uBF9E",17,"\uBFB1",7],["9781","\uBFB9",11,"\uBFC6",5,"\uBFCE\uBFCF\uBFD1\uBFD2\uBFD3\uBFD5",6,"\uBFDD\uBFDE\uBFE0\uBFE2",89,"\uC03D\uC03E\uC03F"],["9841","\uC040",16,"\uC052",5,"\uC059\uC05A\uC05B"],["9861","\uC05D\uC05E\uC05F\uC061",6,"\uC06A",15],["9881","\uC07A",21,"\uC092\uC093\uC095\uC096\uC097\uC099",6,"\uC0A2\uC0A4\uC0A6",5,"\uC0AE\uC0B1\uC0B2\uC0B7",4,"\uC0BE\uC0C2\uC0C3\uC0C4\uC0C6\uC0C7\uC0CA\uC0CB\uC0CD\uC0CE\uC0CF\uC0D1",6,"\uC0DA\uC0DE",5,"\uC0E6\uC0E7\uC0E9\uC0EA\uC0EB\uC0ED",6,"\uC0F6\uC0F8\uC0FA",5,"\uC101\uC102\uC103\uC105\uC106\uC107\uC109",6,"\uC111\uC112\uC113\uC114\uC116",5,"\uC121\uC122\uC125\uC128\uC129\uC12A\uC12B\uC12E"],["9941","\uC132\uC133\uC134\uC135\uC137\uC13A\uC13B\uC13D\uC13E\uC13F\uC141",6,"\uC14A\uC14E",5,"\uC156\uC157"],["9961","\uC159\uC15A\uC15B\uC15D",6,"\uC166\uC16A",5,"\uC171\uC172\uC173\uC175\uC176\uC177\uC179\uC17A\uC17B"],["9981","\uC17C",8,"\uC186",5,"\uC18F\uC191\uC192\uC193\uC195\uC197",4,"\uC19E\uC1A0\uC1A2\uC1A3\uC1A4\uC1A6\uC1A7\uC1AA\uC1AB\uC1AD\uC1AE\uC1AF\uC1B1",11,"\uC1BE",5,"\uC1C5\uC1C6\uC1C7\uC1C9\uC1CA\uC1CB\uC1CD",6,"\uC1D5\uC1D6\uC1D9",6,"\uC1E1\uC1E2\uC1E3\uC1E5\uC1E6\uC1E7\uC1E9",6,"\uC1F2\uC1F4",7,"\uC1FE\uC1FF\uC201\uC202\uC203\uC205",6,"\uC20E\uC210\uC212",5,"\uC21A\uC21B\uC21D\uC21E\uC221\uC222\uC223"],["9a41","\uC224\uC225\uC226\uC227\uC22A\uC22C\uC22E\uC230\uC233\uC235",16],["9a61","\uC246\uC247\uC249",6,"\uC252\uC253\uC255\uC256\uC257\uC259",6,"\uC261\uC262\uC263\uC264\uC266"],["9a81","\uC267",4,"\uC26E\uC26F\uC271\uC272\uC273\uC275",6,"\uC27E\uC280\uC282",5,"\uC28A",5,"\uC291",6,"\uC299\uC29A\uC29C\uC29E",5,"\uC2A6\uC2A7\uC2A9\uC2AA\uC2AB\uC2AE",5,"\uC2B6\uC2B8\uC2BA",33,"\uC2DE\uC2DF\uC2E1\uC2E2\uC2E5",5,"\uC2EE\uC2F0\uC2F2\uC2F3\uC2F4\uC2F5\uC2F7\uC2FA\uC2FD\uC2FE\uC2FF\uC301",6,"\uC30A\uC30B\uC30E\uC30F"],["9b41","\uC310\uC311\uC312\uC316\uC317\uC319\uC31A\uC31B\uC31D",6,"\uC326\uC327\uC32A",8],["9b61","\uC333",17,"\uC346",7],["9b81","\uC34E",25,"\uC36A\uC36B\uC36D\uC36E\uC36F\uC371\uC373",4,"\uC37A\uC37B\uC37E",5,"\uC385\uC386\uC387\uC389\uC38A\uC38B\uC38D",50,"\uC3C1",22,"\uC3DA"],["9c41","\uC3DB\uC3DD\uC3DE\uC3E1\uC3E3",4,"\uC3EA\uC3EB\uC3EC\uC3EE",5,"\uC3F6\uC3F7\uC3F9",5],["9c61","\uC3FF",8,"\uC409",6,"\uC411",9],["9c81","\uC41B",8,"\uC425",6,"\uC42D\uC42E\uC42F\uC431\uC432\uC433\uC435",6,"\uC43E",9,"\uC449",26,"\uC466\uC467\uC469\uC46A\uC46B\uC46D",6,"\uC476\uC477\uC478\uC47A",5,"\uC481",18,"\uC495",6,"\uC49D",12],["9d41","\uC4AA",13,"\uC4B9\uC4BA\uC4BB\uC4BD",8],["9d61","\uC4C6",25],["9d81","\uC4E0",8,"\uC4EA",5,"\uC4F2\uC4F3\uC4F5\uC4F6\uC4F7\uC4F9\uC4FB\uC4FC\uC4FD\uC4FE\uC502",9,"\uC50D\uC50E\uC50F\uC511\uC512\uC513\uC515",6,"\uC51D",10,"\uC52A\uC52B\uC52D\uC52E\uC52F\uC531",6,"\uC53A\uC53C\uC53E",5,"\uC546\uC547\uC54B\uC54F\uC550\uC551\uC552\uC556\uC55A\uC55B\uC55C\uC55F\uC562\uC563\uC565\uC566\uC567\uC569",6,"\uC572\uC576",5,"\uC57E\uC57F\uC581\uC582\uC583\uC585\uC586\uC588\uC589\uC58A\uC58B\uC58E\uC590\uC592\uC593\uC594"],["9e41","\uC596\uC599\uC59A\uC59B\uC59D\uC59E\uC59F\uC5A1",7,"\uC5AA",9,"\uC5B6"],["9e61","\uC5B7\uC5BA\uC5BF",4,"\uC5CB\uC5CD\uC5CF\uC5D2\uC5D3\uC5D5\uC5D6\uC5D7\uC5D9",6,"\uC5E2\uC5E4\uC5E6\uC5E7"],["9e81","\uC5E8\uC5E9\uC5EA\uC5EB\uC5EF\uC5F1\uC5F2\uC5F3\uC5F5\uC5F8\uC5F9\uC5FA\uC5FB\uC602\uC603\uC604\uC609\uC60A\uC60B\uC60D\uC60E\uC60F\uC611",6,"\uC61A\uC61D",6,"\uC626\uC627\uC629\uC62A\uC62B\uC62F\uC631\uC632\uC636\uC638\uC63A\uC63C\uC63D\uC63E\uC63F\uC642\uC643\uC645\uC646\uC647\uC649",6,"\uC652\uC656",5,"\uC65E\uC65F\uC661",10,"\uC66D\uC66E\uC670\uC672",5,"\uC67A\uC67B\uC67D\uC67E\uC67F\uC681",6,"\uC68A\uC68C\uC68E",5,"\uC696\uC697\uC699\uC69A\uC69B\uC69D",6,"\uC6A6"],["9f41","\uC6A8\uC6AA",5,"\uC6B2\uC6B3\uC6B5\uC6B6\uC6B7\uC6BB",4,"\uC6C2\uC6C4\uC6C6",5,"\uC6CE"],["9f61","\uC6CF\uC6D1\uC6D2\uC6D3\uC6D5",6,"\uC6DE\uC6DF\uC6E2",5,"\uC6EA\uC6EB\uC6ED\uC6EE\uC6EF\uC6F1\uC6F2"],["9f81","\uC6F3",4,"\uC6FA\uC6FB\uC6FC\uC6FE",5,"\uC706\uC707\uC709\uC70A\uC70B\uC70D",6,"\uC716\uC718\uC71A",5,"\uC722\uC723\uC725\uC726\uC727\uC729",6,"\uC732\uC734\uC736\uC738\uC739\uC73A\uC73B\uC73E\uC73F\uC741\uC742\uC743\uC745",4,"\uC74B\uC74E\uC750\uC759\uC75A\uC75B\uC75D\uC75E\uC75F\uC761",6,"\uC769\uC76A\uC76C",7,"\uC776\uC777\uC779\uC77A\uC77B\uC77F\uC780\uC781\uC782\uC786\uC78B\uC78C\uC78D\uC78F\uC792\uC793\uC795\uC799\uC79B",4,"\uC7A2\uC7A7",4,"\uC7AE\uC7AF\uC7B1\uC7B2\uC7B3\uC7B5\uC7B6\uC7B7"],["a041","\uC7B8\uC7B9\uC7BA\uC7BB\uC7BE\uC7C2",5,"\uC7CA\uC7CB\uC7CD\uC7CF\uC7D1",6,"\uC7D9\uC7DA\uC7DB\uC7DC"],["a061","\uC7DE",5,"\uC7E5\uC7E6\uC7E7\uC7E9\uC7EA\uC7EB\uC7ED",13],["a081","\uC7FB",4,"\uC802\uC803\uC805\uC806\uC807\uC809\uC80B",4,"\uC812\uC814\uC817",4,"\uC81E\uC81F\uC821\uC822\uC823\uC825",6,"\uC82E\uC830\uC832",5,"\uC839\uC83A\uC83B\uC83D\uC83E\uC83F\uC841",6,"\uC84A\uC84B\uC84E",5,"\uC855",26,"\uC872\uC873\uC875\uC876\uC877\uC879\uC87B",4,"\uC882\uC884\uC888\uC889\uC88A\uC88E",5,"\uC895",7,"\uC89E\uC8A0\uC8A2\uC8A3\uC8A4"],["a141","\uC8A5\uC8A6\uC8A7\uC8A9",18,"\uC8BE\uC8BF\uC8C0\uC8C1"],["a161","\uC8C2\uC8C3\uC8C5\uC8C6\uC8C7\uC8C9\uC8CA\uC8CB\uC8CD",6,"\uC8D6\uC8D8\uC8DA",5,"\uC8E2\uC8E3\uC8E5"],["a181","\uC8E6",14,"\uC8F6",5,"\uC8FE\uC8FF\uC901\uC902\uC903\uC907",4,"\uC90E\u3000\u3001\u3002\xB7\u2025\u2026\xA8\u3003\xAD\u2015\u2225\uFF3C\u223C\u2018\u2019\u201C\u201D\u3014\u3015\u3008",9,"\xB1\xD7\xF7\u2260\u2264\u2265\u221E\u2234\xB0\u2032\u2033\u2103\u212B\uFFE0\uFFE1\uFFE5\u2642\u2640\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\xA7\u203B\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u2192\u2190\u2191\u2193\u2194\u3013\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229\u2227\u2228\uFFE2"],["a241","\uC910\uC912",5,"\uC919",18],["a261","\uC92D",6,"\uC935",18],["a281","\uC948",7,"\uC952\uC953\uC955\uC956\uC957\uC959",6,"\uC962\uC964",7,"\uC96D\uC96E\uC96F\u21D2\u21D4\u2200\u2203\xB4\uFF5E\u02C7\u02D8\u02DD\u02DA\u02D9\xB8\u02DB\xA1\xBF\u02D0\u222E\u2211\u220F\xA4\u2109\u2030\u25C1\u25C0\u25B7\u25B6\u2664\u2660\u2661\u2665\u2667\u2663\u2299\u25C8\u25A3\u25D0\u25D1\u2592\u25A4\u25A5\u25A8\u25A7\u25A6\u25A9\u2668\u260F\u260E\u261C\u261E\xB6\u2020\u2021\u2195\u2197\u2199\u2196\u2198\u266D\u2669\u266A\u266C\u327F\u321C\u2116\u33C7\u2122\u33C2\u33D8\u2121\u20AC\xAE"],["a341","\uC971\uC972\uC973\uC975",6,"\uC97D",10,"\uC98A\uC98B\uC98D\uC98E\uC98F"],["a361","\uC991",6,"\uC99A\uC99C\uC99E",16],["a381","\uC9AF",16,"\uC9C2\uC9C3\uC9C5\uC9C6\uC9C9\uC9CB",4,"\uC9D2\uC9D4\uC9D7\uC9D8\uC9DB\uFF01",58,"\uFFE6\uFF3D",32,"\uFFE3"],["a441","\uC9DE\uC9DF\uC9E1\uC9E3\uC9E5\uC9E6\uC9E8\uC9E9\uC9EA\uC9EB\uC9EE\uC9F2",5,"\uC9FA\uC9FB\uC9FD\uC9FE\uC9FF\uCA01\uCA02\uCA03\uCA04"],["a461","\uCA05\uCA06\uCA07\uCA0A\uCA0E",5,"\uCA15\uCA16\uCA17\uCA19",12],["a481","\uCA26\uCA27\uCA28\uCA2A",28,"\u3131",93],["a541","\uCA47",4,"\uCA4E\uCA4F\uCA51\uCA52\uCA53\uCA55",6,"\uCA5E\uCA62",5,"\uCA69\uCA6A"],["a561","\uCA6B",17,"\uCA7E",5,"\uCA85\uCA86"],["a581","\uCA87",16,"\uCA99",14,"\u2170",9],["a5b0","\u2160",9],["a5c1","\u0391",16,"\u03A3",6],["a5e1","\u03B1",16,"\u03C3",6],["a641","\uCAA8",19,"\uCABE\uCABF\uCAC1\uCAC2\uCAC3\uCAC5"],["a661","\uCAC6",5,"\uCACE\uCAD0\uCAD2\uCAD4\uCAD5\uCAD6\uCAD7\uCADA",5,"\uCAE1",6],["a681","\uCAE8\uCAE9\uCAEA\uCAEB\uCAED",6,"\uCAF5",18,"\uCB09\uCB0A\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542\u2512\u2511\u251A\u2519\u2516\u2515\u250E\u250D\u251E\u251F\u2521\u2522\u2526\u2527\u2529\u252A\u252D\u252E\u2531\u2532\u2535\u2536\u2539\u253A\u253D\u253E\u2540\u2541\u2543",7],["a741","\uCB0B",4,"\uCB11\uCB12\uCB13\uCB15\uCB16\uCB17\uCB19",6,"\uCB22",7],["a761","\uCB2A",22,"\uCB42\uCB43\uCB44"],["a781","\uCB45\uCB46\uCB47\uCB4A\uCB4B\uCB4D\uCB4E\uCB4F\uCB51",6,"\uCB5A\uCB5B\uCB5C\uCB5E",5,"\uCB65",7,"\u3395\u3396\u3397\u2113\u3398\u33C4\u33A3\u33A4\u33A5\u33A6\u3399",9,"\u33CA\u338D\u338E\u338F\u33CF\u3388\u3389\u33C8\u33A7\u33A8\u33B0",9,"\u3380",4,"\u33BA",5,"\u3390",4,"\u2126\u33C0\u33C1\u338A\u338B\u338C\u33D6\u33C5\u33AD\u33AE\u33AF\u33DB\u33A9\u33AA\u33AB\u33AC\u33DD\u33D0\u33D3\u33C3\u33C9\u33DC\u33C6"],["a841","\uCB6D",10,"\uCB7A",14],["a861","\uCB89",18,"\uCB9D",6],["a881","\uCBA4",19,"\uCBB9",11,"\xC6\xD0\xAA\u0126"],["a8a6","\u0132"],["a8a8","\u013F\u0141\xD8\u0152\xBA\xDE\u0166\u014A"],["a8b1","\u3260",27,"\u24D0",25,"\u2460",14,"\xBD\u2153\u2154\xBC\xBE\u215B\u215C\u215D\u215E"],["a941","\uCBC5",14,"\uCBD5",10],["a961","\uCBE0\uCBE1\uCBE2\uCBE3\uCBE5\uCBE6\uCBE8\uCBEA",18],["a981","\uCBFD",14,"\uCC0E\uCC0F\uCC11\uCC12\uCC13\uCC15",6,"\uCC1E\uCC1F\uCC20\uCC23\uCC24\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0140\u0142\xF8\u0153\xDF\xFE\u0167\u014B\u0149\u3200",27,"\u249C",25,"\u2474",14,"\xB9\xB2\xB3\u2074\u207F\u2081\u2082\u2083\u2084"],["aa41","\uCC25\uCC26\uCC2A\uCC2B\uCC2D\uCC2F\uCC31",6,"\uCC3A\uCC3F",4,"\uCC46\uCC47\uCC49\uCC4A\uCC4B\uCC4D\uCC4E"],["aa61","\uCC4F",4,"\uCC56\uCC5A",5,"\uCC61\uCC62\uCC63\uCC65\uCC67\uCC69",6,"\uCC71\uCC72"],["aa81","\uCC73\uCC74\uCC76",29,"\u3041",82],["ab41","\uCC94\uCC95\uCC96\uCC97\uCC9A\uCC9B\uCC9D\uCC9E\uCC9F\uCCA1",6,"\uCCAA\uCCAE",5,"\uCCB6\uCCB7\uCCB9"],["ab61","\uCCBA\uCCBB\uCCBD",6,"\uCCC6\uCCC8\uCCCA",5,"\uCCD1\uCCD2\uCCD3\uCCD5",5],["ab81","\uCCDB",8,"\uCCE5",6,"\uCCED\uCCEE\uCCEF\uCCF1",12,"\u30A1",85],["ac41","\uCCFE\uCCFF\uCD00\uCD02",5,"\uCD0A\uCD0B\uCD0D\uCD0E\uCD0F\uCD11",6,"\uCD1A\uCD1C\uCD1E\uCD1F\uCD20"],["ac61","\uCD21\uCD22\uCD23\uCD25\uCD26\uCD27\uCD29\uCD2A\uCD2B\uCD2D",11,"\uCD3A",4],["ac81","\uCD3F",28,"\uCD5D\uCD5E\uCD5F\u0410",5,"\u0401\u0416",25],["acd1","\u0430",5,"\u0451\u0436",25],["ad41","\uCD61\uCD62\uCD63\uCD65",6,"\uCD6E\uCD70\uCD72",5,"\uCD79",7],["ad61","\uCD81",6,"\uCD89",10,"\uCD96\uCD97\uCD99\uCD9A\uCD9B\uCD9D\uCD9E\uCD9F"],["ad81","\uCDA0\uCDA1\uCDA2\uCDA3\uCDA6\uCDA8\uCDAA",5,"\uCDB1",18,"\uCDC5"],["ae41","\uCDC6",5,"\uCDCD\uCDCE\uCDCF\uCDD1",16],["ae61","\uCDE2",5,"\uCDE9\uCDEA\uCDEB\uCDED\uCDEE\uCDEF\uCDF1",6,"\uCDFA\uCDFC\uCDFE",4],["ae81","\uCE03\uCE05\uCE06\uCE07\uCE09\uCE0A\uCE0B\uCE0D",6,"\uCE15\uCE16\uCE17\uCE18\uCE1A",5,"\uCE22\uCE23\uCE25\uCE26\uCE27\uCE29\uCE2A\uCE2B"],["af41","\uCE2C\uCE2D\uCE2E\uCE2F\uCE32\uCE34\uCE36",19],["af61","\uCE4A",13,"\uCE5A\uCE5B\uCE5D\uCE5E\uCE62",5,"\uCE6A\uCE6C"],["af81","\uCE6E",5,"\uCE76\uCE77\uCE79\uCE7A\uCE7B\uCE7D",6,"\uCE86\uCE88\uCE8A",5,"\uCE92\uCE93\uCE95\uCE96\uCE97\uCE99"],["b041","\uCE9A",5,"\uCEA2\uCEA6",5,"\uCEAE",12],["b061","\uCEBB",5,"\uCEC2",19],["b081","\uCED6",13,"\uCEE6\uCEE7\uCEE9\uCEEA\uCEED",6,"\uCEF6\uCEFA",5,"\uAC00\uAC01\uAC04\uAC07\uAC08\uAC09\uAC0A\uAC10",7,"\uAC19",4,"\uAC20\uAC24\uAC2C\uAC2D\uAC2F\uAC30\uAC31\uAC38\uAC39\uAC3C\uAC40\uAC4B\uAC4D\uAC54\uAC58\uAC5C\uAC70\uAC71\uAC74\uAC77\uAC78\uAC7A\uAC80\uAC81\uAC83\uAC84\uAC85\uAC86\uAC89\uAC8A\uAC8B\uAC8C\uAC90\uAC94\uAC9C\uAC9D\uAC9F\uACA0\uACA1\uACA8\uACA9\uACAA\uACAC\uACAF\uACB0\uACB8\uACB9\uACBB\uACBC\uACBD\uACC1\uACC4\uACC8\uACCC\uACD5\uACD7\uACE0\uACE1\uACE4\uACE7\uACE8\uACEA\uACEC\uACEF\uACF0\uACF1\uACF3\uACF5\uACF6\uACFC\uACFD\uAD00\uAD04\uAD06"],["b141","\uCF02\uCF03\uCF05\uCF06\uCF07\uCF09",6,"\uCF12\uCF14\uCF16",5,"\uCF1D\uCF1E\uCF1F\uCF21\uCF22\uCF23"],["b161","\uCF25",6,"\uCF2E\uCF32",5,"\uCF39",11],["b181","\uCF45",14,"\uCF56\uCF57\uCF59\uCF5A\uCF5B\uCF5D",6,"\uCF66\uCF68\uCF6A\uCF6B\uCF6C\uAD0C\uAD0D\uAD0F\uAD11\uAD18\uAD1C\uAD20\uAD29\uAD2C\uAD2D\uAD34\uAD35\uAD38\uAD3C\uAD44\uAD45\uAD47\uAD49\uAD50\uAD54\uAD58\uAD61\uAD63\uAD6C\uAD6D\uAD70\uAD73\uAD74\uAD75\uAD76\uAD7B\uAD7C\uAD7D\uAD7F\uAD81\uAD82\uAD88\uAD89\uAD8C\uAD90\uAD9C\uAD9D\uADA4\uADB7\uADC0\uADC1\uADC4\uADC8\uADD0\uADD1\uADD3\uADDC\uADE0\uADE4\uADF8\uADF9\uADFC\uADFF\uAE00\uAE01\uAE08\uAE09\uAE0B\uAE0D\uAE14\uAE30\uAE31\uAE34\uAE37\uAE38\uAE3A\uAE40\uAE41\uAE43\uAE45\uAE46\uAE4A\uAE4C\uAE4D\uAE4E\uAE50\uAE54\uAE56\uAE5C\uAE5D\uAE5F\uAE60\uAE61\uAE65\uAE68\uAE69\uAE6C\uAE70\uAE78"],["b241","\uCF6D\uCF6E\uCF6F\uCF72\uCF73\uCF75\uCF76\uCF77\uCF79",6,"\uCF81\uCF82\uCF83\uCF84\uCF86",5,"\uCF8D"],["b261","\uCF8E",18,"\uCFA2",5,"\uCFA9"],["b281","\uCFAA",5,"\uCFB1",18,"\uCFC5",6,"\uAE79\uAE7B\uAE7C\uAE7D\uAE84\uAE85\uAE8C\uAEBC\uAEBD\uAEBE\uAEC0\uAEC4\uAECC\uAECD\uAECF\uAED0\uAED1\uAED8\uAED9\uAEDC\uAEE8\uAEEB\uAEED\uAEF4\uAEF8\uAEFC\uAF07\uAF08\uAF0D\uAF10\uAF2C\uAF2D\uAF30\uAF32\uAF34\uAF3C\uAF3D\uAF3F\uAF41\uAF42\uAF43\uAF48\uAF49\uAF50\uAF5C\uAF5D\uAF64\uAF65\uAF79\uAF80\uAF84\uAF88\uAF90\uAF91\uAF95\uAF9C\uAFB8\uAFB9\uAFBC\uAFC0\uAFC7\uAFC8\uAFC9\uAFCB\uAFCD\uAFCE\uAFD4\uAFDC\uAFE8\uAFE9\uAFF0\uAFF1\uAFF4\uAFF8\uB000\uB001\uB004\uB00C\uB010\uB014\uB01C\uB01D\uB028\uB044\uB045\uB048\uB04A\uB04C\uB04E\uB053\uB054\uB055\uB057\uB059"],["b341","\uCFCC",19,"\uCFE2\uCFE3\uCFE5\uCFE6\uCFE7\uCFE9"],["b361","\uCFEA",5,"\uCFF2\uCFF4\uCFF6",5,"\uCFFD\uCFFE\uCFFF\uD001\uD002\uD003\uD005",5],["b381","\uD00B",5,"\uD012",5,"\uD019",19,"\uB05D\uB07C\uB07D\uB080\uB084\uB08C\uB08D\uB08F\uB091\uB098\uB099\uB09A\uB09C\uB09F\uB0A0\uB0A1\uB0A2\uB0A8\uB0A9\uB0AB",4,"\uB0B1\uB0B3\uB0B4\uB0B5\uB0B8\uB0BC\uB0C4\uB0C5\uB0C7\uB0C8\uB0C9\uB0D0\uB0D1\uB0D4\uB0D8\uB0E0\uB0E5\uB108\uB109\uB10B\uB10C\uB110\uB112\uB113\uB118\uB119\uB11B\uB11C\uB11D\uB123\uB124\uB125\uB128\uB12C\uB134\uB135\uB137\uB138\uB139\uB140\uB141\uB144\uB148\uB150\uB151\uB154\uB155\uB158\uB15C\uB160\uB178\uB179\uB17C\uB180\uB182\uB188\uB189\uB18B\uB18D\uB192\uB193\uB194\uB198\uB19C\uB1A8\uB1CC\uB1D0\uB1D4\uB1DC\uB1DD"],["b441","\uD02E",5,"\uD036\uD037\uD039\uD03A\uD03B\uD03D",6,"\uD046\uD048\uD04A",5],["b461","\uD051\uD052\uD053\uD055\uD056\uD057\uD059",6,"\uD061",10,"\uD06E\uD06F"],["b481","\uD071\uD072\uD073\uD075",6,"\uD07E\uD07F\uD080\uD082",18,"\uB1DF\uB1E8\uB1E9\uB1EC\uB1F0\uB1F9\uB1FB\uB1FD\uB204\uB205\uB208\uB20B\uB20C\uB214\uB215\uB217\uB219\uB220\uB234\uB23C\uB258\uB25C\uB260\uB268\uB269\uB274\uB275\uB27C\uB284\uB285\uB289\uB290\uB291\uB294\uB298\uB299\uB29A\uB2A0\uB2A1\uB2A3\uB2A5\uB2A6\uB2AA\uB2AC\uB2B0\uB2B4\uB2C8\uB2C9\uB2CC\uB2D0\uB2D2\uB2D8\uB2D9\uB2DB\uB2DD\uB2E2\uB2E4\uB2E5\uB2E6\uB2E8\uB2EB",4,"\uB2F3\uB2F4\uB2F5\uB2F7",4,"\uB2FF\uB300\uB301\uB304\uB308\uB310\uB311\uB313\uB314\uB315\uB31C\uB354\uB355\uB356\uB358\uB35B\uB35C\uB35E\uB35F\uB364\uB365"],["b541","\uD095",14,"\uD0A6\uD0A7\uD0A9\uD0AA\uD0AB\uD0AD",5],["b561","\uD0B3\uD0B6\uD0B8\uD0BA",5,"\uD0C2\uD0C3\uD0C5\uD0C6\uD0C7\uD0CA",5,"\uD0D2\uD0D6",4],["b581","\uD0DB\uD0DE\uD0DF\uD0E1\uD0E2\uD0E3\uD0E5",6,"\uD0EE\uD0F2",5,"\uD0F9",11,"\uB367\uB369\uB36B\uB36E\uB370\uB371\uB374\uB378\uB380\uB381\uB383\uB384\uB385\uB38C\uB390\uB394\uB3A0\uB3A1\uB3A8\uB3AC\uB3C4\uB3C5\uB3C8\uB3CB\uB3CC\uB3CE\uB3D0\uB3D4\uB3D5\uB3D7\uB3D9\uB3DB\uB3DD\uB3E0\uB3E4\uB3E8\uB3FC\uB410\uB418\uB41C\uB420\uB428\uB429\uB42B\uB434\uB450\uB451\uB454\uB458\uB460\uB461\uB463\uB465\uB46C\uB480\uB488\uB49D\uB4A4\uB4A8\uB4AC\uB4B5\uB4B7\uB4B9\uB4C0\uB4C4\uB4C8\uB4D0\uB4D5\uB4DC\uB4DD\uB4E0\uB4E3\uB4E4\uB4E6\uB4EC\uB4ED\uB4EF\uB4F1\uB4F8\uB514\uB515\uB518\uB51B\uB51C\uB524\uB525\uB527\uB528\uB529\uB52A\uB530\uB531\uB534\uB538"],["b641","\uD105",7,"\uD10E",17],["b661","\uD120",15,"\uD132\uD133\uD135\uD136\uD137\uD139\uD13B\uD13C\uD13D\uD13E"],["b681","\uD13F\uD142\uD146",5,"\uD14E\uD14F\uD151\uD152\uD153\uD155",6,"\uD15E\uD160\uD162",5,"\uD169\uD16A\uD16B\uD16D\uB540\uB541\uB543\uB544\uB545\uB54B\uB54C\uB54D\uB550\uB554\uB55C\uB55D\uB55F\uB560\uB561\uB5A0\uB5A1\uB5A4\uB5A8\uB5AA\uB5AB\uB5B0\uB5B1\uB5B3\uB5B4\uB5B5\uB5BB\uB5BC\uB5BD\uB5C0\uB5C4\uB5CC\uB5CD\uB5CF\uB5D0\uB5D1\uB5D8\uB5EC\uB610\uB611\uB614\uB618\uB625\uB62C\uB634\uB648\uB664\uB668\uB69C\uB69D\uB6A0\uB6A4\uB6AB\uB6AC\uB6B1\uB6D4\uB6F0\uB6F4\uB6F8\uB700\uB701\uB705\uB728\uB729\uB72C\uB72F\uB730\uB738\uB739\uB73B\uB744\uB748\uB74C\uB754\uB755\uB760\uB764\uB768\uB770\uB771\uB773\uB775\uB77C\uB77D\uB780\uB784\uB78C\uB78D\uB78F\uB790\uB791\uB792\uB796\uB797"],["b741","\uD16E",13,"\uD17D",6,"\uD185\uD186\uD187\uD189\uD18A"],["b761","\uD18B",20,"\uD1A2\uD1A3\uD1A5\uD1A6\uD1A7"],["b781","\uD1A9",6,"\uD1B2\uD1B4\uD1B6\uD1B7\uD1B8\uD1B9\uD1BB\uD1BD\uD1BE\uD1BF\uD1C1",14,"\uB798\uB799\uB79C\uB7A0\uB7A8\uB7A9\uB7AB\uB7AC\uB7AD\uB7B4\uB7B5\uB7B8\uB7C7\uB7C9\uB7EC\uB7ED\uB7F0\uB7F4\uB7FC\uB7FD\uB7FF\uB800\uB801\uB807\uB808\uB809\uB80C\uB810\uB818\uB819\uB81B\uB81D\uB824\uB825\uB828\uB82C\uB834\uB835\uB837\uB838\uB839\uB840\uB844\uB851\uB853\uB85C\uB85D\uB860\uB864\uB86C\uB86D\uB86F\uB871\uB878\uB87C\uB88D\uB8A8\uB8B0\uB8B4\uB8B8\uB8C0\uB8C1\uB8C3\uB8C5\uB8CC\uB8D0\uB8D4\uB8DD\uB8DF\uB8E1\uB8E8\uB8E9\uB8EC\uB8F0\uB8F8\uB8F9\uB8FB\uB8FD\uB904\uB918\uB920\uB93C\uB93D\uB940\uB944\uB94C\uB94F\uB951\uB958\uB959\uB95C\uB960\uB968\uB969"],["b841","\uD1D0",7,"\uD1D9",17],["b861","\uD1EB",8,"\uD1F5\uD1F6\uD1F7\uD1F9",13],["b881","\uD208\uD20A",5,"\uD211",24,"\uB96B\uB96D\uB974\uB975\uB978\uB97C\uB984\uB985\uB987\uB989\uB98A\uB98D\uB98E\uB9AC\uB9AD\uB9B0\uB9B4\uB9BC\uB9BD\uB9BF\uB9C1\uB9C8\uB9C9\uB9CC\uB9CE",4,"\uB9D8\uB9D9\uB9DB\uB9DD\uB9DE\uB9E1\uB9E3\uB9E4\uB9E5\uB9E8\uB9EC\uB9F4\uB9F5\uB9F7\uB9F8\uB9F9\uB9FA\uBA00\uBA01\uBA08\uBA15\uBA38\uBA39\uBA3C\uBA40\uBA42\uBA48\uBA49\uBA4B\uBA4D\uBA4E\uBA53\uBA54\uBA55\uBA58\uBA5C\uBA64\uBA65\uBA67\uBA68\uBA69\uBA70\uBA71\uBA74\uBA78\uBA83\uBA84\uBA85\uBA87\uBA8C\uBAA8\uBAA9\uBAAB\uBAAC\uBAB0\uBAB2\uBAB8\uBAB9\uBABB\uBABD\uBAC4\uBAC8\uBAD8\uBAD9\uBAFC"],["b941","\uD22A\uD22B\uD22E\uD22F\uD231\uD232\uD233\uD235",6,"\uD23E\uD240\uD242",5,"\uD249\uD24A\uD24B\uD24C"],["b961","\uD24D",14,"\uD25D",6,"\uD265\uD266\uD267\uD268"],["b981","\uD269",22,"\uD282\uD283\uD285\uD286\uD287\uD289\uD28A\uD28B\uD28C\uBB00\uBB04\uBB0D\uBB0F\uBB11\uBB18\uBB1C\uBB20\uBB29\uBB2B\uBB34\uBB35\uBB36\uBB38\uBB3B\uBB3C\uBB3D\uBB3E\uBB44\uBB45\uBB47\uBB49\uBB4D\uBB4F\uBB50\uBB54\uBB58\uBB61\uBB63\uBB6C\uBB88\uBB8C\uBB90\uBBA4\uBBA8\uBBAC\uBBB4\uBBB7\uBBC0\uBBC4\uBBC8\uBBD0\uBBD3\uBBF8\uBBF9\uBBFC\uBBFF\uBC00\uBC02\uBC08\uBC09\uBC0B\uBC0C\uBC0D\uBC0F\uBC11\uBC14",4,"\uBC1B",4,"\uBC24\uBC25\uBC27\uBC29\uBC2D\uBC30\uBC31\uBC34\uBC38\uBC40\uBC41\uBC43\uBC44\uBC45\uBC49\uBC4C\uBC4D\uBC50\uBC5D\uBC84\uBC85\uBC88\uBC8B\uBC8C\uBC8E\uBC94\uBC95\uBC97"],["ba41","\uD28D\uD28E\uD28F\uD292\uD293\uD294\uD296",5,"\uD29D\uD29E\uD29F\uD2A1\uD2A2\uD2A3\uD2A5",6,"\uD2AD"],["ba61","\uD2AE\uD2AF\uD2B0\uD2B2",5,"\uD2BA\uD2BB\uD2BD\uD2BE\uD2C1\uD2C3",4,"\uD2CA\uD2CC",5],["ba81","\uD2D2\uD2D3\uD2D5\uD2D6\uD2D7\uD2D9\uD2DA\uD2DB\uD2DD",6,"\uD2E6",9,"\uD2F2\uD2F3\uD2F5\uD2F6\uD2F7\uD2F9\uD2FA\uBC99\uBC9A\uBCA0\uBCA1\uBCA4\uBCA7\uBCA8\uBCB0\uBCB1\uBCB3\uBCB4\uBCB5\uBCBC\uBCBD\uBCC0\uBCC4\uBCCD\uBCCF\uBCD0\uBCD1\uBCD5\uBCD8\uBCDC\uBCF4\uBCF5\uBCF6\uBCF8\uBCFC\uBD04\uBD05\uBD07\uBD09\uBD10\uBD14\uBD24\uBD2C\uBD40\uBD48\uBD49\uBD4C\uBD50\uBD58\uBD59\uBD64\uBD68\uBD80\uBD81\uBD84\uBD87\uBD88\uBD89\uBD8A\uBD90\uBD91\uBD93\uBD95\uBD99\uBD9A\uBD9C\uBDA4\uBDB0\uBDB8\uBDD4\uBDD5\uBDD8\uBDDC\uBDE9\uBDF0\uBDF4\uBDF8\uBE00\uBE03\uBE05\uBE0C\uBE0D\uBE10\uBE14\uBE1C\uBE1D\uBE1F\uBE44\uBE45\uBE48\uBE4C\uBE4E\uBE54\uBE55\uBE57\uBE59\uBE5A\uBE5B\uBE60\uBE61\uBE64"],["bb41","\uD2FB",4,"\uD302\uD304\uD306",5,"\uD30F\uD311\uD312\uD313\uD315\uD317",4,"\uD31E\uD322\uD323"],["bb61","\uD324\uD326\uD327\uD32A\uD32B\uD32D\uD32E\uD32F\uD331",6,"\uD33A\uD33E",5,"\uD346\uD347\uD348\uD349"],["bb81","\uD34A",31,"\uBE68\uBE6A\uBE70\uBE71\uBE73\uBE74\uBE75\uBE7B\uBE7C\uBE7D\uBE80\uBE84\uBE8C\uBE8D\uBE8F\uBE90\uBE91\uBE98\uBE99\uBEA8\uBED0\uBED1\uBED4\uBED7\uBED8\uBEE0\uBEE3\uBEE4\uBEE5\uBEEC\uBF01\uBF08\uBF09\uBF18\uBF19\uBF1B\uBF1C\uBF1D\uBF40\uBF41\uBF44\uBF48\uBF50\uBF51\uBF55\uBF94\uBFB0\uBFC5\uBFCC\uBFCD\uBFD0\uBFD4\uBFDC\uBFDF\uBFE1\uC03C\uC051\uC058\uC05C\uC060\uC068\uC069\uC090\uC091\uC094\uC098\uC0A0\uC0A1\uC0A3\uC0A5\uC0AC\uC0AD\uC0AF\uC0B0\uC0B3\uC0B4\uC0B5\uC0B6\uC0BC\uC0BD\uC0BF\uC0C0\uC0C1\uC0C5\uC0C8\uC0C9\uC0CC\uC0D0\uC0D8\uC0D9\uC0DB\uC0DC\uC0DD\uC0E4"],["bc41","\uD36A",17,"\uD37E\uD37F\uD381\uD382\uD383\uD385\uD386\uD387"],["bc61","\uD388\uD389\uD38A\uD38B\uD38E\uD392",5,"\uD39A\uD39B\uD39D\uD39E\uD39F\uD3A1",6,"\uD3AA\uD3AC\uD3AE"],["bc81","\uD3AF",4,"\uD3B5\uD3B6\uD3B7\uD3B9\uD3BA\uD3BB\uD3BD",6,"\uD3C6\uD3C7\uD3CA",5,"\uD3D1",5,"\uC0E5\uC0E8\uC0EC\uC0F4\uC0F5\uC0F7\uC0F9\uC100\uC104\uC108\uC110\uC115\uC11C",4,"\uC123\uC124\uC126\uC127\uC12C\uC12D\uC12F\uC130\uC131\uC136\uC138\uC139\uC13C\uC140\uC148\uC149\uC14B\uC14C\uC14D\uC154\uC155\uC158\uC15C\uC164\uC165\uC167\uC168\uC169\uC170\uC174\uC178\uC185\uC18C\uC18D\uC18E\uC190\uC194\uC196\uC19C\uC19D\uC19F\uC1A1\uC1A5\uC1A8\uC1A9\uC1AC\uC1B0\uC1BD\uC1C4\uC1C8\uC1CC\uC1D4\uC1D7\uC1D8\uC1E0\uC1E4\uC1E8\uC1F0\uC1F1\uC1F3\uC1FC\uC1FD\uC200\uC204\uC20C\uC20D\uC20F\uC211\uC218\uC219\uC21C\uC21F\uC220\uC228\uC229\uC22B\uC22D"],["bd41","\uD3D7\uD3D9",7,"\uD3E2\uD3E4",7,"\uD3EE\uD3EF\uD3F1\uD3F2\uD3F3\uD3F5\uD3F6\uD3F7"],["bd61","\uD3F8\uD3F9\uD3FA\uD3FB\uD3FE\uD400\uD402",5,"\uD409",13],["bd81","\uD417",5,"\uD41E",25,"\uC22F\uC231\uC232\uC234\uC248\uC250\uC251\uC254\uC258\uC260\uC265\uC26C\uC26D\uC270\uC274\uC27C\uC27D\uC27F\uC281\uC288\uC289\uC290\uC298\uC29B\uC29D\uC2A4\uC2A5\uC2A8\uC2AC\uC2AD\uC2B4\uC2B5\uC2B7\uC2B9\uC2DC\uC2DD\uC2E0\uC2E3\uC2E4\uC2EB\uC2EC\uC2ED\uC2EF\uC2F1\uC2F6\uC2F8\uC2F9\uC2FB\uC2FC\uC300\uC308\uC309\uC30C\uC30D\uC313\uC314\uC315\uC318\uC31C\uC324\uC325\uC328\uC329\uC345\uC368\uC369\uC36C\uC370\uC372\uC378\uC379\uC37C\uC37D\uC384\uC388\uC38C\uC3C0\uC3D8\uC3D9\uC3DC\uC3DF\uC3E0\uC3E2\uC3E8\uC3E9\uC3ED\uC3F4\uC3F5\uC3F8\uC408\uC410\uC424\uC42C\uC430"],["be41","\uD438",7,"\uD441\uD442\uD443\uD445",14],["be61","\uD454",7,"\uD45D\uD45E\uD45F\uD461\uD462\uD463\uD465",7,"\uD46E\uD470\uD471\uD472"],["be81","\uD473",4,"\uD47A\uD47B\uD47D\uD47E\uD481\uD483",4,"\uD48A\uD48C\uD48E",5,"\uD495",8,"\uC434\uC43C\uC43D\uC448\uC464\uC465\uC468\uC46C\uC474\uC475\uC479\uC480\uC494\uC49C\uC4B8\uC4BC\uC4E9\uC4F0\uC4F1\uC4F4\uC4F8\uC4FA\uC4FF\uC500\uC501\uC50C\uC510\uC514\uC51C\uC528\uC529\uC52C\uC530\uC538\uC539\uC53B\uC53D\uC544\uC545\uC548\uC549\uC54A\uC54C\uC54D\uC54E\uC553\uC554\uC555\uC557\uC558\uC559\uC55D\uC55E\uC560\uC561\uC564\uC568\uC570\uC571\uC573\uC574\uC575\uC57C\uC57D\uC580\uC584\uC587\uC58C\uC58D\uC58F\uC591\uC595\uC597\uC598\uC59C\uC5A0\uC5A9\uC5B4\uC5B5\uC5B8\uC5B9\uC5BB\uC5BC\uC5BD\uC5BE\uC5C4",6,"\uC5CC\uC5CE"],["bf41","\uD49E",10,"\uD4AA",14],["bf61","\uD4B9",18,"\uD4CD\uD4CE\uD4CF\uD4D1\uD4D2\uD4D3\uD4D5"],["bf81","\uD4D6",5,"\uD4DD\uD4DE\uD4E0",7,"\uD4E9\uD4EA\uD4EB\uD4ED\uD4EE\uD4EF\uD4F1",6,"\uD4F9\uD4FA\uD4FC\uC5D0\uC5D1\uC5D4\uC5D8\uC5E0\uC5E1\uC5E3\uC5E5\uC5EC\uC5ED\uC5EE\uC5F0\uC5F4\uC5F6\uC5F7\uC5FC",5,"\uC605\uC606\uC607\uC608\uC60C\uC610\uC618\uC619\uC61B\uC61C\uC624\uC625\uC628\uC62C\uC62D\uC62E\uC630\uC633\uC634\uC635\uC637\uC639\uC63B\uC640\uC641\uC644\uC648\uC650\uC651\uC653\uC654\uC655\uC65C\uC65D\uC660\uC66C\uC66F\uC671\uC678\uC679\uC67C\uC680\uC688\uC689\uC68B\uC68D\uC694\uC695\uC698\uC69C\uC6A4\uC6A5\uC6A7\uC6A9\uC6B0\uC6B1\uC6B4\uC6B8\uC6B9\uC6BA\uC6C0\uC6C1\uC6C3\uC6C5\uC6CC\uC6CD\uC6D0\uC6D4\uC6DC\uC6DD\uC6E0\uC6E1\uC6E8"],["c041","\uD4FE",5,"\uD505\uD506\uD507\uD509\uD50A\uD50B\uD50D",6,"\uD516\uD518",5],["c061","\uD51E",25],["c081","\uD538\uD539\uD53A\uD53B\uD53E\uD53F\uD541\uD542\uD543\uD545",6,"\uD54E\uD550\uD552",5,"\uD55A\uD55B\uD55D\uD55E\uD55F\uD561\uD562\uD563\uC6E9\uC6EC\uC6F0\uC6F8\uC6F9\uC6FD\uC704\uC705\uC708\uC70C\uC714\uC715\uC717\uC719\uC720\uC721\uC724\uC728\uC730\uC731\uC733\uC735\uC737\uC73C\uC73D\uC740\uC744\uC74A\uC74C\uC74D\uC74F\uC751",7,"\uC75C\uC760\uC768\uC76B\uC774\uC775\uC778\uC77C\uC77D\uC77E\uC783\uC784\uC785\uC787\uC788\uC789\uC78A\uC78E\uC790\uC791\uC794\uC796\uC797\uC798\uC79A\uC7A0\uC7A1\uC7A3\uC7A4\uC7A5\uC7A6\uC7AC\uC7AD\uC7B0\uC7B4\uC7BC\uC7BD\uC7BF\uC7C0\uC7C1\uC7C8\uC7C9\uC7CC\uC7CE\uC7D0\uC7D8\uC7DD\uC7E4\uC7E8\uC7EC\uC800\uC801\uC804\uC808\uC80A"],["c141","\uD564\uD566\uD567\uD56A\uD56C\uD56E",5,"\uD576\uD577\uD579\uD57A\uD57B\uD57D",6,"\uD586\uD58A\uD58B"],["c161","\uD58C\uD58D\uD58E\uD58F\uD591",19,"\uD5A6\uD5A7"],["c181","\uD5A8",31,"\uC810\uC811\uC813\uC815\uC816\uC81C\uC81D\uC820\uC824\uC82C\uC82D\uC82F\uC831\uC838\uC83C\uC840\uC848\uC849\uC84C\uC84D\uC854\uC870\uC871\uC874\uC878\uC87A\uC880\uC881\uC883\uC885\uC886\uC887\uC88B\uC88C\uC88D\uC894\uC89D\uC89F\uC8A1\uC8A8\uC8BC\uC8BD\uC8C4\uC8C8\uC8CC\uC8D4\uC8D5\uC8D7\uC8D9\uC8E0\uC8E1\uC8E4\uC8F5\uC8FC\uC8FD\uC900\uC904\uC905\uC906\uC90C\uC90D\uC90F\uC911\uC918\uC92C\uC934\uC950\uC951\uC954\uC958\uC960\uC961\uC963\uC96C\uC970\uC974\uC97C\uC988\uC989\uC98C\uC990\uC998\uC999\uC99B\uC99D\uC9C0\uC9C1\uC9C4\uC9C7\uC9C8\uC9CA\uC9D0\uC9D1\uC9D3"],["c241","\uD5CA\uD5CB\uD5CD\uD5CE\uD5CF\uD5D1\uD5D3",4,"\uD5DA\uD5DC\uD5DE",5,"\uD5E6\uD5E7\uD5E9\uD5EA\uD5EB\uD5ED\uD5EE"],["c261","\uD5EF",4,"\uD5F6\uD5F8\uD5FA",5,"\uD602\uD603\uD605\uD606\uD607\uD609",6,"\uD612"],["c281","\uD616",5,"\uD61D\uD61E\uD61F\uD621\uD622\uD623\uD625",7,"\uD62E",9,"\uD63A\uD63B\uC9D5\uC9D6\uC9D9\uC9DA\uC9DC\uC9DD\uC9E0\uC9E2\uC9E4\uC9E7\uC9EC\uC9ED\uC9EF\uC9F0\uC9F1\uC9F8\uC9F9\uC9FC\uCA00\uCA08\uCA09\uCA0B\uCA0C\uCA0D\uCA14\uCA18\uCA29\uCA4C\uCA4D\uCA50\uCA54\uCA5C\uCA5D\uCA5F\uCA60\uCA61\uCA68\uCA7D\uCA84\uCA98\uCABC\uCABD\uCAC0\uCAC4\uCACC\uCACD\uCACF\uCAD1\uCAD3\uCAD8\uCAD9\uCAE0\uCAEC\uCAF4\uCB08\uCB10\uCB14\uCB18\uCB20\uCB21\uCB41\uCB48\uCB49\uCB4C\uCB50\uCB58\uCB59\uCB5D\uCB64\uCB78\uCB79\uCB9C\uCBB8\uCBD4\uCBE4\uCBE7\uCBE9\uCC0C\uCC0D\uCC10\uCC14\uCC1C\uCC1D\uCC21\uCC22\uCC27\uCC28\uCC29\uCC2C\uCC2E\uCC30\uCC38\uCC39\uCC3B"],["c341","\uD63D\uD63E\uD63F\uD641\uD642\uD643\uD644\uD646\uD647\uD64A\uD64C\uD64E\uD64F\uD650\uD652\uD653\uD656\uD657\uD659\uD65A\uD65B\uD65D",4],["c361","\uD662",4,"\uD668\uD66A",5,"\uD672\uD673\uD675",11],["c381","\uD681\uD682\uD684\uD686",5,"\uD68E\uD68F\uD691\uD692\uD693\uD695",7,"\uD69E\uD6A0\uD6A2",5,"\uD6A9\uD6AA\uCC3C\uCC3D\uCC3E\uCC44\uCC45\uCC48\uCC4C\uCC54\uCC55\uCC57\uCC58\uCC59\uCC60\uCC64\uCC66\uCC68\uCC70\uCC75\uCC98\uCC99\uCC9C\uCCA0\uCCA8\uCCA9\uCCAB\uCCAC\uCCAD\uCCB4\uCCB5\uCCB8\uCCBC\uCCC4\uCCC5\uCCC7\uCCC9\uCCD0\uCCD4\uCCE4\uCCEC\uCCF0\uCD01\uCD08\uCD09\uCD0C\uCD10\uCD18\uCD19\uCD1B\uCD1D\uCD24\uCD28\uCD2C\uCD39\uCD5C\uCD60\uCD64\uCD6C\uCD6D\uCD6F\uCD71\uCD78\uCD88\uCD94\uCD95\uCD98\uCD9C\uCDA4\uCDA5\uCDA7\uCDA9\uCDB0\uCDC4\uCDCC\uCDD0\uCDE8\uCDEC\uCDF0\uCDF8\uCDF9\uCDFB\uCDFD\uCE04\uCE08\uCE0C\uCE14\uCE19\uCE20\uCE21\uCE24\uCE28\uCE30\uCE31\uCE33\uCE35"],["c441","\uD6AB\uD6AD\uD6AE\uD6AF\uD6B1",7,"\uD6BA\uD6BC",7,"\uD6C6\uD6C7\uD6C9\uD6CA\uD6CB"],["c461","\uD6CD\uD6CE\uD6CF\uD6D0\uD6D2\uD6D3\uD6D5\uD6D6\uD6D8\uD6DA",5,"\uD6E1\uD6E2\uD6E3\uD6E5\uD6E6\uD6E7\uD6E9",4],["c481","\uD6EE\uD6EF\uD6F1\uD6F2\uD6F3\uD6F4\uD6F6",5,"\uD6FE\uD6FF\uD701\uD702\uD703\uD705",11,"\uD712\uD713\uD714\uCE58\uCE59\uCE5C\uCE5F\uCE60\uCE61\uCE68\uCE69\uCE6B\uCE6D\uCE74\uCE75\uCE78\uCE7C\uCE84\uCE85\uCE87\uCE89\uCE90\uCE91\uCE94\uCE98\uCEA0\uCEA1\uCEA3\uCEA4\uCEA5\uCEAC\uCEAD\uCEC1\uCEE4\uCEE5\uCEE8\uCEEB\uCEEC\uCEF4\uCEF5\uCEF7\uCEF8\uCEF9\uCF00\uCF01\uCF04\uCF08\uCF10\uCF11\uCF13\uCF15\uCF1C\uCF20\uCF24\uCF2C\uCF2D\uCF2F\uCF30\uCF31\uCF38\uCF54\uCF55\uCF58\uCF5C\uCF64\uCF65\uCF67\uCF69\uCF70\uCF71\uCF74\uCF78\uCF80\uCF85\uCF8C\uCFA1\uCFA8\uCFB0\uCFC4\uCFE0\uCFE1\uCFE4\uCFE8\uCFF0\uCFF1\uCFF3\uCFF5\uCFFC\uD000\uD004\uD011\uD018\uD02D\uD034\uD035\uD038\uD03C"],["c541","\uD715\uD716\uD717\uD71A\uD71B\uD71D\uD71E\uD71F\uD721",6,"\uD72A\uD72C\uD72E",5,"\uD736\uD737\uD739"],["c561","\uD73A\uD73B\uD73D",6,"\uD745\uD746\uD748\uD74A",5,"\uD752\uD753\uD755\uD75A",4],["c581","\uD75F\uD762\uD764\uD766\uD767\uD768\uD76A\uD76B\uD76D\uD76E\uD76F\uD771\uD772\uD773\uD775",6,"\uD77E\uD77F\uD780\uD782",5,"\uD78A\uD78B\uD044\uD045\uD047\uD049\uD050\uD054\uD058\uD060\uD06C\uD06D\uD070\uD074\uD07C\uD07D\uD081\uD0A4\uD0A5\uD0A8\uD0AC\uD0B4\uD0B5\uD0B7\uD0B9\uD0C0\uD0C1\uD0C4\uD0C8\uD0C9\uD0D0\uD0D1\uD0D3\uD0D4\uD0D5\uD0DC\uD0DD\uD0E0\uD0E4\uD0EC\uD0ED\uD0EF\uD0F0\uD0F1\uD0F8\uD10D\uD130\uD131\uD134\uD138\uD13A\uD140\uD141\uD143\uD144\uD145\uD14C\uD14D\uD150\uD154\uD15C\uD15D\uD15F\uD161\uD168\uD16C\uD17C\uD184\uD188\uD1A0\uD1A1\uD1A4\uD1A8\uD1B0\uD1B1\uD1B3\uD1B5\uD1BA\uD1BC\uD1C0\uD1D8\uD1F4\uD1F8\uD207\uD209\uD210\uD22C\uD22D\uD230\uD234\uD23C\uD23D\uD23F\uD241\uD248\uD25C"],["c641","\uD78D\uD78E\uD78F\uD791",6,"\uD79A\uD79C\uD79E",5],["c6a1","\uD264\uD280\uD281\uD284\uD288\uD290\uD291\uD295\uD29C\uD2A0\uD2A4\uD2AC\uD2B1\uD2B8\uD2B9\uD2BC\uD2BF\uD2C0\uD2C2\uD2C8\uD2C9\uD2CB\uD2D4\uD2D8\uD2DC\uD2E4\uD2E5\uD2F0\uD2F1\uD2F4\uD2F8\uD300\uD301\uD303\uD305\uD30C\uD30D\uD30E\uD310\uD314\uD316\uD31C\uD31D\uD31F\uD320\uD321\uD325\uD328\uD329\uD32C\uD330\uD338\uD339\uD33B\uD33C\uD33D\uD344\uD345\uD37C\uD37D\uD380\uD384\uD38C\uD38D\uD38F\uD390\uD391\uD398\uD399\uD39C\uD3A0\uD3A8\uD3A9\uD3AB\uD3AD\uD3B4\uD3B8\uD3BC\uD3C4\uD3C5\uD3C8\uD3C9\uD3D0\uD3D8\uD3E1\uD3E3\uD3EC\uD3ED\uD3F0\uD3F4\uD3FC\uD3FD\uD3FF\uD401"],["c7a1","\uD408\uD41D\uD440\uD444\uD45C\uD460\uD464\uD46D\uD46F\uD478\uD479\uD47C\uD47F\uD480\uD482\uD488\uD489\uD48B\uD48D\uD494\uD4A9\uD4CC\uD4D0\uD4D4\uD4DC\uD4DF\uD4E8\uD4EC\uD4F0\uD4F8\uD4FB\uD4FD\uD504\uD508\uD50C\uD514\uD515\uD517\uD53C\uD53D\uD540\uD544\uD54C\uD54D\uD54F\uD551\uD558\uD559\uD55C\uD560\uD565\uD568\uD569\uD56B\uD56D\uD574\uD575\uD578\uD57C\uD584\uD585\uD587\uD588\uD589\uD590\uD5A5\uD5C8\uD5C9\uD5CC\uD5D0\uD5D2\uD5D8\uD5D9\uD5DB\uD5DD\uD5E4\uD5E5\uD5E8\uD5EC\uD5F4\uD5F5\uD5F7\uD5F9\uD600\uD601\uD604\uD608\uD610\uD611\uD613\uD614\uD615\uD61C\uD620"],["c8a1","\uD624\uD62D\uD638\uD639\uD63C\uD640\uD645\uD648\uD649\uD64B\uD64D\uD651\uD654\uD655\uD658\uD65C\uD667\uD669\uD670\uD671\uD674\uD683\uD685\uD68C\uD68D\uD690\uD694\uD69D\uD69F\uD6A1\uD6A8\uD6AC\uD6B0\uD6B9\uD6BB\uD6C4\uD6C5\uD6C8\uD6CC\uD6D1\uD6D4\uD6D7\uD6D9\uD6E0\uD6E4\uD6E8\uD6F0\uD6F5\uD6FC\uD6FD\uD700\uD704\uD711\uD718\uD719\uD71C\uD720\uD728\uD729\uD72B\uD72D\uD734\uD735\uD738\uD73C\uD744\uD747\uD749\uD750\uD751\uD754\uD756\uD757\uD758\uD759\uD760\uD761\uD763\uD765\uD769\uD76C\uD770\uD774\uD77C\uD77D\uD781\uD788\uD789\uD78C\uD790\uD798\uD799\uD79B\uD79D"],["caa1","\u4F3D\u4F73\u5047\u50F9\u52A0\u53EF\u5475\u54E5\u5609\u5AC1\u5BB6\u6687\u67B6\u67B7\u67EF\u6B4C\u73C2\u75C2\u7A3C\u82DB\u8304\u8857\u8888\u8A36\u8CC8\u8DCF\u8EFB\u8FE6\u99D5\u523B\u5374\u5404\u606A\u6164\u6BBC\u73CF\u811A\u89BA\u89D2\u95A3\u4F83\u520A\u58BE\u5978\u59E6\u5E72\u5E79\u61C7\u63C0\u6746\u67EC\u687F\u6F97\u764E\u770B\u78F5\u7A08\u7AFF\u7C21\u809D\u826E\u8271\u8AEB\u9593\u4E6B\u559D\u66F7\u6E34\u78A3\u7AED\u845B\u8910\u874E\u97A8\u52D8\u574E\u582A\u5D4C\u611F\u61BE\u6221\u6562\u67D1\u6A44\u6E1B\u7518\u75B3\u76E3\u77B0\u7D3A\u90AF\u9451\u9452\u9F95"],["cba1","\u5323\u5CAC\u7532\u80DB\u9240\u9598\u525B\u5808\u59DC\u5CA1\u5D17\u5EB7\u5F3A\u5F4A\u6177\u6C5F\u757A\u7586\u7CE0\u7D73\u7DB1\u7F8C\u8154\u8221\u8591\u8941\u8B1B\u92FC\u964D\u9C47\u4ECB\u4EF7\u500B\u51F1\u584F\u6137\u613E\u6168\u6539\u69EA\u6F11\u75A5\u7686\u76D6\u7B87\u82A5\u84CB\uF900\u93A7\u958B\u5580\u5BA2\u5751\uF901\u7CB3\u7FB9\u91B5\u5028\u53BB\u5C45\u5DE8\u62D2\u636E\u64DA\u64E7\u6E20\u70AC\u795B\u8DDD\u8E1E\uF902\u907D\u9245\u92F8\u4E7E\u4EF6\u5065\u5DFE\u5EFA\u6106\u6957\u8171\u8654\u8E47\u9375\u9A2B\u4E5E\u5091\u6770\u6840\u5109\u528D\u5292\u6AA2"],["cca1","\u77BC\u9210\u9ED4\u52AB\u602F\u8FF2\u5048\u61A9\u63ED\u64CA\u683C\u6A84\u6FC0\u8188\u89A1\u9694\u5805\u727D\u72AC\u7504\u7D79\u7E6D\u80A9\u898B\u8B74\u9063\u9D51\u6289\u6C7A\u6F54\u7D50\u7F3A\u8A23\u517C\u614A\u7B9D\u8B19\u9257\u938C\u4EAC\u4FD3\u501E\u50BE\u5106\u52C1\u52CD\u537F\u5770\u5883\u5E9A\u5F91\u6176\u61AC\u64CE\u656C\u666F\u66BB\u66F4\u6897\u6D87\u7085\u70F1\u749F\u74A5\u74CA\u75D9\u786C\u78EC\u7ADF\u7AF6\u7D45\u7D93\u8015\u803F\u811B\u8396\u8B66\u8F15\u9015\u93E1\u9803\u9838\u9A5A\u9BE8\u4FC2\u5553\u583A\u5951\u5B63\u5C46\u60B8\u6212\u6842\u68B0"],["cda1","\u68E8\u6EAA\u754C\u7678\u78CE\u7A3D\u7CFB\u7E6B\u7E7C\u8A08\u8AA1\u8C3F\u968E\u9DC4\u53E4\u53E9\u544A\u5471\u56FA\u59D1\u5B64\u5C3B\u5EAB\u62F7\u6537\u6545\u6572\u66A0\u67AF\u69C1\u6CBD\u75FC\u7690\u777E\u7A3F\u7F94\u8003\u80A1\u818F\u82E6\u82FD\u83F0\u85C1\u8831\u88B4\u8AA5\uF903\u8F9C\u932E\u96C7\u9867\u9AD8\u9F13\u54ED\u659B\u66F2\u688F\u7A40\u8C37\u9D60\u56F0\u5764\u5D11\u6606\u68B1\u68CD\u6EFE\u7428\u889E\u9BE4\u6C68\uF904\u9AA8\u4F9B\u516C\u5171\u529F\u5B54\u5DE5\u6050\u606D\u62F1\u63A7\u653B\u73D9\u7A7A\u86A3\u8CA2\u978F\u4E32\u5BE1\u6208\u679C\u74DC"],["cea1","\u79D1\u83D3\u8A87\u8AB2\u8DE8\u904E\u934B\u9846\u5ED3\u69E8\u85FF\u90ED\uF905\u51A0\u5B98\u5BEC\u6163\u68FA\u6B3E\u704C\u742F\u74D8\u7BA1\u7F50\u83C5\u89C0\u8CAB\u95DC\u9928\u522E\u605D\u62EC\u9002\u4F8A\u5149\u5321\u58D9\u5EE3\u66E0\u6D38\u709A\u72C2\u73D6\u7B50\u80F1\u945B\u5366\u639B\u7F6B\u4E56\u5080\u584A\u58DE\u602A\u6127\u62D0\u69D0\u9B41\u5B8F\u7D18\u80B1\u8F5F\u4EA4\u50D1\u54AC\u55AC\u5B0C\u5DA0\u5DE7\u652A\u654E\u6821\u6A4B\u72E1\u768E\u77EF\u7D5E\u7FF9\u81A0\u854E\u86DF\u8F03\u8F4E\u90CA\u9903\u9A55\u9BAB\u4E18\u4E45\u4E5D\u4EC7\u4FF1\u5177\u52FE"],["cfa1","\u5340\u53E3\u53E5\u548E\u5614\u5775\u57A2\u5BC7\u5D87\u5ED0\u61FC\u62D8\u6551\u67B8\u67E9\u69CB\u6B50\u6BC6\u6BEC\u6C42\u6E9D\u7078\u72D7\u7396\u7403\u77BF\u77E9\u7A76\u7D7F\u8009\u81FC\u8205\u820A\u82DF\u8862\u8B33\u8CFC\u8EC0\u9011\u90B1\u9264\u92B6\u99D2\u9A45\u9CE9\u9DD7\u9F9C\u570B\u5C40\u83CA\u97A0\u97AB\u9EB4\u541B\u7A98\u7FA4\u88D9\u8ECD\u90E1\u5800\u5C48\u6398\u7A9F\u5BAE\u5F13\u7A79\u7AAE\u828E\u8EAC\u5026\u5238\u52F8\u5377\u5708\u62F3\u6372\u6B0A\u6DC3\u7737\u53A5\u7357\u8568\u8E76\u95D5\u673A\u6AC3\u6F70\u8A6D\u8ECC\u994B\uF906\u6677\u6B78\u8CB4"],["d0a1","\u9B3C\uF907\u53EB\u572D\u594E\u63C6\u69FB\u73EA\u7845\u7ABA\u7AC5\u7CFE\u8475\u898F\u8D73\u9035\u95A8\u52FB\u5747\u7547\u7B60\u83CC\u921E\uF908\u6A58\u514B\u524B\u5287\u621F\u68D8\u6975\u9699\u50C5\u52A4\u52E4\u61C3\u65A4\u6839\u69FF\u747E\u7B4B\u82B9\u83EB\u89B2\u8B39\u8FD1\u9949\uF909\u4ECA\u5997\u64D2\u6611\u6A8E\u7434\u7981\u79BD\u82A9\u887E\u887F\u895F\uF90A\u9326\u4F0B\u53CA\u6025\u6271\u6C72\u7D1A\u7D66\u4E98\u5162\u77DC\u80AF\u4F01\u4F0E\u5176\u5180\u55DC\u5668\u573B\u57FA\u57FC\u5914\u5947\u5993\u5BC4\u5C90\u5D0E\u5DF1\u5E7E\u5FCC\u6280\u65D7\u65E3"],["d1a1","\u671E\u671F\u675E\u68CB\u68C4\u6A5F\u6B3A\u6C23\u6C7D\u6C82\u6DC7\u7398\u7426\u742A\u7482\u74A3\u7578\u757F\u7881\u78EF\u7941\u7947\u7948\u797A\u7B95\u7D00\u7DBA\u7F88\u8006\u802D\u808C\u8A18\u8B4F\u8C48\u8D77\u9321\u9324\u98E2\u9951\u9A0E\u9A0F\u9A65\u9E92\u7DCA\u4F76\u5409\u62EE\u6854\u91D1\u55AB\u513A\uF90B\uF90C\u5A1C\u61E6\uF90D\u62CF\u62FF\uF90E",5,"\u90A3\uF914",4,"\u8AFE\uF919\uF91A\uF91B\uF91C\u6696\uF91D\u7156\uF91E\uF91F\u96E3\uF920\u634F\u637A\u5357\uF921\u678F\u6960\u6E73\uF922\u7537\uF923\uF924\uF925"],["d2a1","\u7D0D\uF926\uF927\u8872\u56CA\u5A18\uF928",4,"\u4E43\uF92D\u5167\u5948\u67F0\u8010\uF92E\u5973\u5E74\u649A\u79CA\u5FF5\u606C\u62C8\u637B\u5BE7\u5BD7\u52AA\uF92F\u5974\u5F29\u6012\uF930\uF931\uF932\u7459\uF933",5,"\u99D1\uF939",10,"\u6FC3\uF944\uF945\u81BF\u8FB2\u60F1\uF946\uF947\u8166\uF948\uF949\u5C3F\uF94A",7,"\u5AE9\u8A25\u677B\u7D10\uF952",5,"\u80FD\uF958\uF959\u5C3C\u6CE5\u533F\u6EBA\u591A\u8336"],["d3a1","\u4E39\u4EB6\u4F46\u55AE\u5718\u58C7\u5F56\u65B7\u65E6\u6A80\u6BB5\u6E4D\u77ED\u7AEF\u7C1E\u7DDE\u86CB\u8892\u9132\u935B\u64BB\u6FBE\u737A\u75B8\u9054\u5556\u574D\u61BA\u64D4\u66C7\u6DE1\u6E5B\u6F6D\u6FB9\u75F0\u8043\u81BD\u8541\u8983\u8AC7\u8B5A\u931F\u6C93\u7553\u7B54\u8E0F\u905D\u5510\u5802\u5858\u5E62\u6207\u649E\u68E0\u7576\u7CD6\u87B3\u9EE8\u4EE3\u5788\u576E\u5927\u5C0D\u5CB1\u5E36\u5F85\u6234\u64E1\u73B3\u81FA\u888B\u8CB8\u968A\u9EDB\u5B85\u5FB7\u60B3\u5012\u5200\u5230\u5716\u5835\u5857\u5C0E\u5C60\u5CF6\u5D8B\u5EA6\u5F92\u60BC\u6311\u6389\u6417\u6843"],["d4a1","\u68F9\u6AC2\u6DD8\u6E21\u6ED4\u6FE4\u71FE\u76DC\u7779\u79B1\u7A3B\u8404\u89A9\u8CED\u8DF3\u8E48\u9003\u9014\u9053\u90FD\u934D\u9676\u97DC\u6BD2\u7006\u7258\u72A2\u7368\u7763\u79BF\u7BE4\u7E9B\u8B80\u58A9\u60C7\u6566\u65FD\u66BE\u6C8C\u711E\u71C9\u8C5A\u9813\u4E6D\u7A81\u4EDD\u51AC\u51CD\u52D5\u540C\u61A7\u6771\u6850\u68DF\u6D1E\u6F7C\u75BC\u77B3\u7AE5\u80F4\u8463\u9285\u515C\u6597\u675C\u6793\u75D8\u7AC7\u8373\uF95A\u8C46\u9017\u982D\u5C6F\u81C0\u829A\u9041\u906F\u920D\u5F97\u5D9D\u6A59\u71C8\u767B\u7B49\u85E4\u8B04\u9127\u9A30\u5587\u61F6\uF95B\u7669\u7F85"],["d5a1","\u863F\u87BA\u88F8\u908F\uF95C\u6D1B\u70D9\u73DE\u7D61\u843D\uF95D\u916A\u99F1\uF95E\u4E82\u5375\u6B04\u6B12\u703E\u721B\u862D\u9E1E\u524C\u8FA3\u5D50\u64E5\u652C\u6B16\u6FEB\u7C43\u7E9C\u85CD\u8964\u89BD\u62C9\u81D8\u881F\u5ECA\u6717\u6D6A\u72FC\u7405\u746F\u8782\u90DE\u4F86\u5D0D\u5FA0\u840A\u51B7\u63A0\u7565\u4EAE\u5006\u5169\u51C9\u6881\u6A11\u7CAE\u7CB1\u7CE7\u826F\u8AD2\u8F1B\u91CF\u4FB6\u5137\u52F5\u5442\u5EEC\u616E\u623E\u65C5\u6ADA\u6FFE\u792A\u85DC\u8823\u95AD\u9A62\u9A6A\u9E97\u9ECE\u529B\u66C6\u6B77\u701D\u792B\u8F62\u9742\u6190\u6200\u6523\u6F23"],["d6a1","\u7149\u7489\u7DF4\u806F\u84EE\u8F26\u9023\u934A\u51BD\u5217\u52A3\u6D0C\u70C8\u88C2\u5EC9\u6582\u6BAE\u6FC2\u7C3E\u7375\u4EE4\u4F36\u56F9\uF95F\u5CBA\u5DBA\u601C\u73B2\u7B2D\u7F9A\u7FCE\u8046\u901E\u9234\u96F6\u9748\u9818\u9F61\u4F8B\u6FA7\u79AE\u91B4\u96B7\u52DE\uF960\u6488\u64C4\u6AD3\u6F5E\u7018\u7210\u76E7\u8001\u8606\u865C\u8DEF\u8F05\u9732\u9B6F\u9DFA\u9E75\u788C\u797F\u7DA0\u83C9\u9304\u9E7F\u9E93\u8AD6\u58DF\u5F04\u6727\u7027\u74CF\u7C60\u807E\u5121\u7028\u7262\u78CA\u8CC2\u8CDA\u8CF4\u96F7\u4E86\u50DA\u5BEE\u5ED6\u6599\u71CE\u7642\u77AD\u804A\u84FC"],["d7a1","\u907C\u9B27\u9F8D\u58D8\u5A41\u5C62\u6A13\u6DDA\u6F0F\u763B\u7D2F\u7E37\u851E\u8938\u93E4\u964B\u5289\u65D2\u67F3\u69B4\u6D41\u6E9C\u700F\u7409\u7460\u7559\u7624\u786B\u8B2C\u985E\u516D\u622E\u9678\u4F96\u502B\u5D19\u6DEA\u7DB8\u8F2A\u5F8B\u6144\u6817\uF961\u9686\u52D2\u808B\u51DC\u51CC\u695E\u7A1C\u7DBE\u83F1\u9675\u4FDA\u5229\u5398\u540F\u550E\u5C65\u60A7\u674E\u68A8\u6D6C\u7281\u72F8\u7406\u7483\uF962\u75E2\u7C6C\u7F79\u7FB8\u8389\u88CF\u88E1\u91CC\u91D0\u96E2\u9BC9\u541D\u6F7E\u71D0\u7498\u85FA\u8EAA\u96A3\u9C57\u9E9F\u6797\u6DCB\u7433\u81E8\u9716\u782C"],["d8a1","\u7ACB\u7B20\u7C92\u6469\u746A\u75F2\u78BC\u78E8\u99AC\u9B54\u9EBB\u5BDE\u5E55\u6F20\u819C\u83AB\u9088\u4E07\u534D\u5A29\u5DD2\u5F4E\u6162\u633D\u6669\u66FC\u6EFF\u6F2B\u7063\u779E\u842C\u8513\u883B\u8F13\u9945\u9C3B\u551C\u62B9\u672B\u6CAB\u8309\u896A\u977A\u4EA1\u5984\u5FD8\u5FD9\u671B\u7DB2\u7F54\u8292\u832B\u83BD\u8F1E\u9099\u57CB\u59B9\u5A92\u5BD0\u6627\u679A\u6885\u6BCF\u7164\u7F75\u8CB7\u8CE3\u9081\u9B45\u8108\u8C8A\u964C\u9A40\u9EA5\u5B5F\u6C13\u731B\u76F2\u76DF\u840C\u51AA\u8993\u514D\u5195\u52C9\u68C9\u6C94\u7704\u7720\u7DBF\u7DEC\u9762\u9EB5\u6EC5"],["d9a1","\u8511\u51A5\u540D\u547D\u660E\u669D\u6927\u6E9F\u76BF\u7791\u8317\u84C2\u879F\u9169\u9298\u9CF4\u8882\u4FAE\u5192\u52DF\u59C6\u5E3D\u6155\u6478\u6479\u66AE\u67D0\u6A21\u6BCD\u6BDB\u725F\u7261\u7441\u7738\u77DB\u8017\u82BC\u8305\u8B00\u8B28\u8C8C\u6728\u6C90\u7267\u76EE\u7766\u7A46\u9DA9\u6B7F\u6C92\u5922\u6726\u8499\u536F\u5893\u5999\u5EDF\u63CF\u6634\u6773\u6E3A\u732B\u7AD7\u82D7\u9328\u52D9\u5DEB\u61AE\u61CB\u620A\u62C7\u64AB\u65E0\u6959\u6B66\u6BCB\u7121\u73F7\u755D\u7E46\u821E\u8302\u856A\u8AA3\u8CBF\u9727\u9D61\u58A8\u9ED8\u5011\u520E\u543B\u554F\u6587"],["daa1","\u6C76\u7D0A\u7D0B\u805E\u868A\u9580\u96EF\u52FF\u6C95\u7269\u5473\u5A9A\u5C3E\u5D4B\u5F4C\u5FAE\u672A\u68B6\u6963\u6E3C\u6E44\u7709\u7C73\u7F8E\u8587\u8B0E\u8FF7\u9761\u9EF4\u5CB7\u60B6\u610D\u61AB\u654F\u65FB\u65FC\u6C11\u6CEF\u739F\u73C9\u7DE1\u9594\u5BC6\u871C\u8B10\u525D\u535A\u62CD\u640F\u64B2\u6734\u6A38\u6CCA\u73C0\u749E\u7B94\u7C95\u7E1B\u818A\u8236\u8584\u8FEB\u96F9\u99C1\u4F34\u534A\u53CD\u53DB\u62CC\u642C\u6500\u6591\u69C3\u6CEE\u6F58\u73ED\u7554\u7622\u76E4\u76FC\u78D0\u78FB\u792C\u7D46\u822C\u87E0\u8FD4\u9812\u98EF\u52C3\u62D4\u64A5\u6E24\u6F51"],["dba1","\u767C\u8DCB\u91B1\u9262\u9AEE\u9B43\u5023\u508D\u574A\u59A8\u5C28\u5E47\u5F77\u623F\u653E\u65B9\u65C1\u6609\u678B\u699C\u6EC2\u78C5\u7D21\u80AA\u8180\u822B\u82B3\u84A1\u868C\u8A2A\u8B17\u90A6\u9632\u9F90\u500D\u4FF3\uF963\u57F9\u5F98\u62DC\u6392\u676F\u6E43\u7119\u76C3\u80CC\u80DA\u88F4\u88F5\u8919\u8CE0\u8F29\u914D\u966A\u4F2F\u4F70\u5E1B\u67CF\u6822\u767D\u767E\u9B44\u5E61\u6A0A\u7169\u71D4\u756A\uF964\u7E41\u8543\u85E9\u98DC\u4F10\u7B4F\u7F70\u95A5\u51E1\u5E06\u68B5\u6C3E\u6C4E\u6CDB\u72AF\u7BC4\u8303\u6CD5\u743A\u50FB\u5288\u58C1\u64D8\u6A97\u74A7\u7656"],["dca1","\u78A7\u8617\u95E2\u9739\uF965\u535E\u5F01\u8B8A\u8FA8\u8FAF\u908A\u5225\u77A5\u9C49\u9F08\u4E19\u5002\u5175\u5C5B\u5E77\u661E\u663A\u67C4\u68C5\u70B3\u7501\u75C5\u79C9\u7ADD\u8F27\u9920\u9A08\u4FDD\u5821\u5831\u5BF6\u666E\u6B65\u6D11\u6E7A\u6F7D\u73E4\u752B\u83E9\u88DC\u8913\u8B5C\u8F14\u4F0F\u50D5\u5310\u535C\u5B93\u5FA9\u670D\u798F\u8179\u832F\u8514\u8907\u8986\u8F39\u8F3B\u99A5\u9C12\u672C\u4E76\u4FF8\u5949\u5C01\u5CEF\u5CF0\u6367\u68D2\u70FD\u71A2\u742B\u7E2B\u84EC\u8702\u9022\u92D2\u9CF3\u4E0D\u4ED8\u4FEF\u5085\u5256\u526F\u5426\u5490\u57E0\u592B\u5A66"],["dda1","\u5B5A\u5B75\u5BCC\u5E9C\uF966\u6276\u6577\u65A7\u6D6E\u6EA5\u7236\u7B26\u7C3F\u7F36\u8150\u8151\u819A\u8240\u8299\u83A9\u8A03\u8CA0\u8CE6\u8CFB\u8D74\u8DBA\u90E8\u91DC\u961C\u9644\u99D9\u9CE7\u5317\u5206\u5429\u5674\u58B3\u5954\u596E\u5FFF\u61A4\u626E\u6610\u6C7E\u711A\u76C6\u7C89\u7CDE\u7D1B\u82AC\u8CC1\u96F0\uF967\u4F5B\u5F17\u5F7F\u62C2\u5D29\u670B\u68DA\u787C\u7E43\u9D6C\u4E15\u5099\u5315\u532A\u5351\u5983\u5A62\u5E87\u60B2\u618A\u6249\u6279\u6590\u6787\u69A7\u6BD4\u6BD6\u6BD7\u6BD8\u6CB8\uF968\u7435\u75FA\u7812\u7891\u79D5\u79D8\u7C83\u7DCB\u7FE1\u80A5"],["dea1","\u813E\u81C2\u83F2\u871A\u88E8\u8AB9\u8B6C\u8CBB\u9119\u975E\u98DB\u9F3B\u56AC\u5B2A\u5F6C\u658C\u6AB3\u6BAF\u6D5C\u6FF1\u7015\u725D\u73AD\u8CA7\u8CD3\u983B\u6191\u6C37\u8058\u9A01\u4E4D\u4E8B\u4E9B\u4ED5\u4F3A\u4F3C\u4F7F\u4FDF\u50FF\u53F2\u53F8\u5506\u55E3\u56DB\u58EB\u5962\u5A11\u5BEB\u5BFA\u5C04\u5DF3\u5E2B\u5F99\u601D\u6368\u659C\u65AF\u67F6\u67FB\u68AD\u6B7B\u6C99\u6CD7\u6E23\u7009\u7345\u7802\u793E\u7940\u7960\u79C1\u7BE9\u7D17\u7D72\u8086\u820D\u838E\u84D1\u86C7\u88DF\u8A50\u8A5E\u8B1D\u8CDC\u8D66\u8FAD\u90AA\u98FC\u99DF\u9E9D\u524A\uF969\u6714\uF96A"],["dfa1","\u5098\u522A\u5C71\u6563\u6C55\u73CA\u7523\u759D\u7B97\u849C\u9178\u9730\u4E77\u6492\u6BBA\u715E\u85A9\u4E09\uF96B\u6749\u68EE\u6E17\u829F\u8518\u886B\u63F7\u6F81\u9212\u98AF\u4E0A\u50B7\u50CF\u511F\u5546\u55AA\u5617\u5B40\u5C19\u5CE0\u5E38\u5E8A\u5EA0\u5EC2\u60F3\u6851\u6A61\u6E58\u723D\u7240\u72C0\u76F8\u7965\u7BB1\u7FD4\u88F3\u89F4\u8A73\u8C61\u8CDE\u971C\u585E\u74BD\u8CFD\u55C7\uF96C\u7A61\u7D22\u8272\u7272\u751F\u7525\uF96D\u7B19\u5885\u58FB\u5DBC\u5E8F\u5EB6\u5F90\u6055\u6292\u637F\u654D\u6691\u66D9\u66F8\u6816\u68F2\u7280\u745E\u7B6E\u7D6E\u7DD6\u7F72"],["e0a1","\u80E5\u8212\u85AF\u897F\u8A93\u901D\u92E4\u9ECD\u9F20\u5915\u596D\u5E2D\u60DC\u6614\u6673\u6790\u6C50\u6DC5\u6F5F\u77F3\u78A9\u84C6\u91CB\u932B\u4ED9\u50CA\u5148\u5584\u5B0B\u5BA3\u6247\u657E\u65CB\u6E32\u717D\u7401\u7444\u7487\u74BF\u766C\u79AA\u7DDA\u7E55\u7FA8\u817A\u81B3\u8239\u861A\u87EC\u8A75\u8DE3\u9078\u9291\u9425\u994D\u9BAE\u5368\u5C51\u6954\u6CC4\u6D29\u6E2B\u820C\u859B\u893B\u8A2D\u8AAA\u96EA\u9F67\u5261\u66B9\u6BB2\u7E96\u87FE\u8D0D\u9583\u965D\u651D\u6D89\u71EE\uF96E\u57CE\u59D3\u5BAC\u6027\u60FA\u6210\u661F\u665F\u7329\u73F9\u76DB\u7701\u7B6C"],["e1a1","\u8056\u8072\u8165\u8AA0\u9192\u4E16\u52E2\u6B72\u6D17\u7A05\u7B39\u7D30\uF96F\u8CB0\u53EC\u562F\u5851\u5BB5\u5C0F\u5C11\u5DE2\u6240\u6383\u6414\u662D\u68B3\u6CBC\u6D88\u6EAF\u701F\u70A4\u71D2\u7526\u758F\u758E\u7619\u7B11\u7BE0\u7C2B\u7D20\u7D39\u852C\u856D\u8607\u8A34\u900D\u9061\u90B5\u92B7\u97F6\u9A37\u4FD7\u5C6C\u675F\u6D91\u7C9F\u7E8C\u8B16\u8D16\u901F\u5B6B\u5DFD\u640D\u84C0\u905C\u98E1\u7387\u5B8B\u609A\u677E\u6DDE\u8A1F\u8AA6\u9001\u980C\u5237\uF970\u7051\u788E\u9396\u8870\u91D7\u4FEE\u53D7\u55FD\u56DA\u5782\u58FD\u5AC2\u5B88\u5CAB\u5CC0\u5E25\u6101"],["e2a1","\u620D\u624B\u6388\u641C\u6536\u6578\u6A39\u6B8A\u6C34\u6D19\u6F31\u71E7\u72E9\u7378\u7407\u74B2\u7626\u7761\u79C0\u7A57\u7AEA\u7CB9\u7D8F\u7DAC\u7E61\u7F9E\u8129\u8331\u8490\u84DA\u85EA\u8896\u8AB0\u8B90\u8F38\u9042\u9083\u916C\u9296\u92B9\u968B\u96A7\u96A8\u96D6\u9700\u9808\u9996\u9AD3\u9B1A\u53D4\u587E\u5919\u5B70\u5BBF\u6DD1\u6F5A\u719F\u7421\u74B9\u8085\u83FD\u5DE1\u5F87\u5FAA\u6042\u65EC\u6812\u696F\u6A53\u6B89\u6D35\u6DF3\u73E3\u76FE\u77AC\u7B4D\u7D14\u8123\u821C\u8340\u84F4\u8563\u8A62\u8AC4\u9187\u931E\u9806\u99B4\u620C\u8853\u8FF0\u9265\u5D07\u5D27"],["e3a1","\u5D69\u745F\u819D\u8768\u6FD5\u62FE\u7FD2\u8936\u8972\u4E1E\u4E58\u50E7\u52DD\u5347\u627F\u6607\u7E69\u8805\u965E\u4F8D\u5319\u5636\u59CB\u5AA4\u5C38\u5C4E\u5C4D\u5E02\u5F11\u6043\u65BD\u662F\u6642\u67BE\u67F4\u731C\u77E2\u793A\u7FC5\u8494\u84CD\u8996\u8A66\u8A69\u8AE1\u8C55\u8C7A\u57F4\u5BD4\u5F0F\u606F\u62ED\u690D\u6B96\u6E5C\u7184\u7BD2\u8755\u8B58\u8EFE\u98DF\u98FE\u4F38\u4F81\u4FE1\u547B\u5A20\u5BB8\u613C\u65B0\u6668\u71FC\u7533\u795E\u7D33\u814E\u81E3\u8398\u85AA\u85CE\u8703\u8A0A\u8EAB\u8F9B\uF971\u8FC5\u5931\u5BA4\u5BE6\u6089\u5BE9\u5C0B\u5FC3\u6C81"],["e4a1","\uF972\u6DF1\u700B\u751A\u82AF\u8AF6\u4EC0\u5341\uF973\u96D9\u6C0F\u4E9E\u4FC4\u5152\u555E\u5A25\u5CE8\u6211\u7259\u82BD\u83AA\u86FE\u8859\u8A1D\u963F\u96C5\u9913\u9D09\u9D5D\u580A\u5CB3\u5DBD\u5E44\u60E1\u6115\u63E1\u6A02\u6E25\u9102\u9354\u984E\u9C10\u9F77\u5B89\u5CB8\u6309\u664F\u6848\u773C\u96C1\u978D\u9854\u9B9F\u65A1\u8B01\u8ECB\u95BC\u5535\u5CA9\u5DD6\u5EB5\u6697\u764C\u83F4\u95C7\u58D3\u62BC\u72CE\u9D28\u4EF0\u592E\u600F\u663B\u6B83\u79E7\u9D26\u5393\u54C0\u57C3\u5D16\u611B\u66D6\u6DAF\u788D\u827E\u9698\u9744\u5384\u627C\u6396\u6DB2\u7E0A\u814B\u984D"],["e5a1","\u6AFB\u7F4C\u9DAF\u9E1A\u4E5F\u503B\u51B6\u591C\u60F9\u63F6\u6930\u723A\u8036\uF974\u91CE\u5F31\uF975\uF976\u7D04\u82E5\u846F\u84BB\u85E5\u8E8D\uF977\u4F6F\uF978\uF979\u58E4\u5B43\u6059\u63DA\u6518\u656D\u6698\uF97A\u694A\u6A23\u6D0B\u7001\u716C\u75D2\u760D\u79B3\u7A70\uF97B\u7F8A\uF97C\u8944\uF97D\u8B93\u91C0\u967D\uF97E\u990A\u5704\u5FA1\u65BC\u6F01\u7600\u79A6\u8A9E\u99AD\u9B5A\u9F6C\u5104\u61B6\u6291\u6A8D\u81C6\u5043\u5830\u5F66\u7109\u8A00\u8AFA\u5B7C\u8616\u4FFA\u513C\u56B4\u5944\u63A9\u6DF9\u5DAA\u696D\u5186\u4E88\u4F59\uF97F\uF980\uF981\u5982\uF982"],["e6a1","\uF983\u6B5F\u6C5D\uF984\u74B5\u7916\uF985\u8207\u8245\u8339\u8F3F\u8F5D\uF986\u9918\uF987\uF988\uF989\u4EA6\uF98A\u57DF\u5F79\u6613\uF98B\uF98C\u75AB\u7E79\u8B6F\uF98D\u9006\u9A5B\u56A5\u5827\u59F8\u5A1F\u5BB4\uF98E\u5EF6\uF98F\uF990\u6350\u633B\uF991\u693D\u6C87\u6CBF\u6D8E\u6D93\u6DF5\u6F14\uF992\u70DF\u7136\u7159\uF993\u71C3\u71D5\uF994\u784F\u786F\uF995\u7B75\u7DE3\uF996\u7E2F\uF997\u884D\u8EDF\uF998\uF999\uF99A\u925B\uF99B\u9CF6\uF99C\uF99D\uF99E\u6085\u6D85\uF99F\u71B1\uF9A0\uF9A1\u95B1\u53AD\uF9A2\uF9A3\uF9A4\u67D3\uF9A5\u708E\u7130\u7430\u8276\u82D2"],["e7a1","\uF9A6\u95BB\u9AE5\u9E7D\u66C4\uF9A7\u71C1\u8449\uF9A8\uF9A9\u584B\uF9AA\uF9AB\u5DB8\u5F71\uF9AC\u6620\u668E\u6979\u69AE\u6C38\u6CF3\u6E36\u6F41\u6FDA\u701B\u702F\u7150\u71DF\u7370\uF9AD\u745B\uF9AE\u74D4\u76C8\u7A4E\u7E93\uF9AF\uF9B0\u82F1\u8A60\u8FCE\uF9B1\u9348\uF9B2\u9719\uF9B3\uF9B4\u4E42\u502A\uF9B5\u5208\u53E1\u66F3\u6C6D\u6FCA\u730A\u777F\u7A62\u82AE\u85DD\u8602\uF9B6\u88D4\u8A63\u8B7D\u8C6B\uF9B7\u92B3\uF9B8\u9713\u9810\u4E94\u4F0D\u4FC9\u50B2\u5348\u543E\u5433\u55DA\u5862\u58BA\u5967\u5A1B\u5BE4\u609F\uF9B9\u61CA\u6556\u65FF\u6664\u68A7\u6C5A\u6FB3"],["e8a1","\u70CF\u71AC\u7352\u7B7D\u8708\u8AA4\u9C32\u9F07\u5C4B\u6C83\u7344\u7389\u923A\u6EAB\u7465\u761F\u7A69\u7E15\u860A\u5140\u58C5\u64C1\u74EE\u7515\u7670\u7FC1\u9095\u96CD\u9954\u6E26\u74E6\u7AA9\u7AAA\u81E5\u86D9\u8778\u8A1B\u5A49\u5B8C\u5B9B\u68A1\u6900\u6D63\u73A9\u7413\u742C\u7897\u7DE9\u7FEB\u8118\u8155\u839E\u8C4C\u962E\u9811\u66F0\u5F80\u65FA\u6789\u6C6A\u738B\u502D\u5A03\u6B6A\u77EE\u5916\u5D6C\u5DCD\u7325\u754F\uF9BA\uF9BB\u50E5\u51F9\u582F\u592D\u5996\u59DA\u5BE5\uF9BC\uF9BD\u5DA2\u62D7\u6416\u6493\u64FE\uF9BE\u66DC\uF9BF\u6A48\uF9C0\u71FF\u7464\uF9C1"],["e9a1","\u7A88\u7AAF\u7E47\u7E5E\u8000\u8170\uF9C2\u87EF\u8981\u8B20\u9059\uF9C3\u9080\u9952\u617E\u6B32\u6D74\u7E1F\u8925\u8FB1\u4FD1\u50AD\u5197\u52C7\u57C7\u5889\u5BB9\u5EB8\u6142\u6995\u6D8C\u6E67\u6EB6\u7194\u7462\u7528\u752C\u8073\u8338\u84C9\u8E0A\u9394\u93DE\uF9C4\u4E8E\u4F51\u5076\u512A\u53C8\u53CB\u53F3\u5B87\u5BD3\u5C24\u611A\u6182\u65F4\u725B\u7397\u7440\u76C2\u7950\u7991\u79B9\u7D06\u7FBD\u828B\u85D5\u865E\u8FC2\u9047\u90F5\u91EA\u9685\u96E8\u96E9\u52D6\u5F67\u65ED\u6631\u682F\u715C\u7A36\u90C1\u980A\u4E91\uF9C5\u6A52\u6B9E\u6F90\u7189\u8018\u82B8\u8553"],["eaa1","\u904B\u9695\u96F2\u97FB\u851A\u9B31\u4E90\u718A\u96C4\u5143\u539F\u54E1\u5713\u5712\u57A3\u5A9B\u5AC4\u5BC3\u6028\u613F\u63F4\u6C85\u6D39\u6E72\u6E90\u7230\u733F\u7457\u82D1\u8881\u8F45\u9060\uF9C6\u9662\u9858\u9D1B\u6708\u8D8A\u925E\u4F4D\u5049\u50DE\u5371\u570D\u59D4\u5A01\u5C09\u6170\u6690\u6E2D\u7232\u744B\u7DEF\u80C3\u840E\u8466\u853F\u875F\u885B\u8918\u8B02\u9055\u97CB\u9B4F\u4E73\u4F91\u5112\u516A\uF9C7\u552F\u55A9\u5B7A\u5BA5\u5E7C\u5E7D\u5EBE\u60A0\u60DF\u6108\u6109\u63C4\u6538\u6709\uF9C8\u67D4\u67DA\uF9C9\u6961\u6962\u6CB9\u6D27\uF9CA\u6E38\uF9CB"],["eba1","\u6FE1\u7336\u7337\uF9CC\u745C\u7531\uF9CD\u7652\uF9CE\uF9CF\u7DAD\u81FE\u8438\u88D5\u8A98\u8ADB\u8AED\u8E30\u8E42\u904A\u903E\u907A\u9149\u91C9\u936E\uF9D0\uF9D1\u5809\uF9D2\u6BD3\u8089\u80B2\uF9D3\uF9D4\u5141\u596B\u5C39\uF9D5\uF9D6\u6F64\u73A7\u80E4\u8D07\uF9D7\u9217\u958F\uF9D8\uF9D9\uF9DA\uF9DB\u807F\u620E\u701C\u7D68\u878D\uF9DC\u57A0\u6069\u6147\u6BB7\u8ABE\u9280\u96B1\u4E59\u541F\u6DEB\u852D\u9670\u97F3\u98EE\u63D6\u6CE3\u9091\u51DD\u61C9\u81BA\u9DF9\u4F9D\u501A\u5100\u5B9C\u610F\u61FF\u64EC\u6905\u6BC5\u7591\u77E3\u7FA9\u8264\u858F\u87FB\u8863\u8ABC"],["eca1","\u8B70\u91AB\u4E8C\u4EE5\u4F0A\uF9DD\uF9DE\u5937\u59E8\uF9DF\u5DF2\u5F1B\u5F5B\u6021\uF9E0\uF9E1\uF9E2\uF9E3\u723E\u73E5\uF9E4\u7570\u75CD\uF9E5\u79FB\uF9E6\u800C\u8033\u8084\u82E1\u8351\uF9E7\uF9E8\u8CBD\u8CB3\u9087\uF9E9\uF9EA\u98F4\u990C\uF9EB\uF9EC\u7037\u76CA\u7FCA\u7FCC\u7FFC\u8B1A\u4EBA\u4EC1\u5203\u5370\uF9ED\u54BD\u56E0\u59FB\u5BC5\u5F15\u5FCD\u6E6E\uF9EE\uF9EF\u7D6A\u8335\uF9F0\u8693\u8A8D\uF9F1\u976D\u9777\uF9F2\uF9F3\u4E00\u4F5A\u4F7E\u58F9\u65E5\u6EA2\u9038\u93B0\u99B9\u4EFB\u58EC\u598A\u59D9\u6041\uF9F4\uF9F5\u7A14\uF9F6\u834F\u8CC3\u5165\u5344"],["eda1","\uF9F7\uF9F8\uF9F9\u4ECD\u5269\u5B55\u82BF\u4ED4\u523A\u54A8\u59C9\u59FF\u5B50\u5B57\u5B5C\u6063\u6148\u6ECB\u7099\u716E\u7386\u74F7\u75B5\u78C1\u7D2B\u8005\u81EA\u8328\u8517\u85C9\u8AEE\u8CC7\u96CC\u4F5C\u52FA\u56BC\u65AB\u6628\u707C\u70B8\u7235\u7DBD\u828D\u914C\u96C0\u9D72\u5B71\u68E7\u6B98\u6F7A\u76DE\u5C91\u66AB\u6F5B\u7BB4\u7C2A\u8836\u96DC\u4E08\u4ED7\u5320\u5834\u58BB\u58EF\u596C\u5C07\u5E33\u5E84\u5F35\u638C\u66B2\u6756\u6A1F\u6AA3\u6B0C\u6F3F\u7246\uF9FA\u7350\u748B\u7AE0\u7CA7\u8178\u81DF\u81E7\u838A\u846C\u8523\u8594\u85CF\u88DD\u8D13\u91AC\u9577"],["eea1","\u969C\u518D\u54C9\u5728\u5BB0\u624D\u6750\u683D\u6893\u6E3D\u6ED3\u707D\u7E21\u88C1\u8CA1\u8F09\u9F4B\u9F4E\u722D\u7B8F\u8ACD\u931A\u4F47\u4F4E\u5132\u5480\u59D0\u5E95\u62B5\u6775\u696E\u6A17\u6CAE\u6E1A\u72D9\u732A\u75BD\u7BB8\u7D35\u82E7\u83F9\u8457\u85F7\u8A5B\u8CAF\u8E87\u9019\u90B8\u96CE\u9F5F\u52E3\u540A\u5AE1\u5BC2\u6458\u6575\u6EF4\u72C4\uF9FB\u7684\u7A4D\u7B1B\u7C4D\u7E3E\u7FDF\u837B\u8B2B\u8CCA\u8D64\u8DE1\u8E5F\u8FEA\u8FF9\u9069\u93D1\u4F43\u4F7A\u50B3\u5168\u5178\u524D\u526A\u5861\u587C\u5960\u5C08\u5C55\u5EDB\u609B\u6230\u6813\u6BBF\u6C08\u6FB1"],["efa1","\u714E\u7420\u7530\u7538\u7551\u7672\u7B4C\u7B8B\u7BAD\u7BC6\u7E8F\u8A6E\u8F3E\u8F49\u923F\u9293\u9322\u942B\u96FB\u985A\u986B\u991E\u5207\u622A\u6298\u6D59\u7664\u7ACA\u7BC0\u7D76\u5360\u5CBE\u5E97\u6F38\u70B9\u7C98\u9711\u9B8E\u9EDE\u63A5\u647A\u8776\u4E01\u4E95\u4EAD\u505C\u5075\u5448\u59C3\u5B9A\u5E40\u5EAD\u5EF7\u5F81\u60C5\u633A\u653F\u6574\u65CC\u6676\u6678\u67FE\u6968\u6A89\u6B63\u6C40\u6DC0\u6DE8\u6E1F\u6E5E\u701E\u70A1\u738E\u73FD\u753A\u775B\u7887\u798E\u7A0B\u7A7D\u7CBE\u7D8E\u8247\u8A02\u8AEA\u8C9E\u912D\u914A\u91D8\u9266\u92CC\u9320\u9706\u9756"],["f0a1","\u975C\u9802\u9F0E\u5236\u5291\u557C\u5824\u5E1D\u5F1F\u608C\u63D0\u68AF\u6FDF\u796D\u7B2C\u81CD\u85BA\u88FD\u8AF8\u8E44\u918D\u9664\u969B\u973D\u984C\u9F4A\u4FCE\u5146\u51CB\u52A9\u5632\u5F14\u5F6B\u63AA\u64CD\u65E9\u6641\u66FA\u66F9\u671D\u689D\u68D7\u69FD\u6F15\u6F6E\u7167\u71E5\u722A\u74AA\u773A\u7956\u795A\u79DF\u7A20\u7A95\u7C97\u7CDF\u7D44\u7E70\u8087\u85FB\u86A4\u8A54\u8ABF\u8D99\u8E81\u9020\u906D\u91E3\u963B\u96D5\u9CE5\u65CF\u7C07\u8DB3\u93C3\u5B58\u5C0A\u5352\u62D9\u731D\u5027\u5B97\u5F9E\u60B0\u616B\u68D5\u6DD9\u742E\u7A2E\u7D42\u7D9C\u7E31\u816B"],["f1a1","\u8E2A\u8E35\u937E\u9418\u4F50\u5750\u5DE6\u5EA7\u632B\u7F6A\u4E3B\u4F4F\u4F8F\u505A\u59DD\u80C4\u546A\u5468\u55FE\u594F\u5B99\u5DDE\u5EDA\u665D\u6731\u67F1\u682A\u6CE8\u6D32\u6E4A\u6F8D\u70B7\u73E0\u7587\u7C4C\u7D02\u7D2C\u7DA2\u821F\u86DB\u8A3B\u8A85\u8D70\u8E8A\u8F33\u9031\u914E\u9152\u9444\u99D0\u7AF9\u7CA5\u4FCA\u5101\u51C6\u57C8\u5BEF\u5CFB\u6659\u6A3D\u6D5A\u6E96\u6FEC\u710C\u756F\u7AE3\u8822\u9021\u9075\u96CB\u99FF\u8301\u4E2D\u4EF2\u8846\u91CD\u537D\u6ADB\u696B\u6C41\u847A\u589E\u618E\u66FE\u62EF\u70DD\u7511\u75C7\u7E52\u84B8\u8B49\u8D08\u4E4B\u53EA"],["f2a1","\u54AB\u5730\u5740\u5FD7\u6301\u6307\u646F\u652F\u65E8\u667A\u679D\u67B3\u6B62\u6C60\u6C9A\u6F2C\u77E5\u7825\u7949\u7957\u7D19\u80A2\u8102\u81F3\u829D\u82B7\u8718\u8A8C\uF9FC\u8D04\u8DBE\u9072\u76F4\u7A19\u7A37\u7E54\u8077\u5507\u55D4\u5875\u632F\u6422\u6649\u664B\u686D\u699B\u6B84\u6D25\u6EB1\u73CD\u7468\u74A1\u755B\u75B9\u76E1\u771E\u778B\u79E6\u7E09\u7E1D\u81FB\u852F\u8897\u8A3A\u8CD1\u8EEB\u8FB0\u9032\u93AD\u9663\u9673\u9707\u4F84\u53F1\u59EA\u5AC9\u5E19\u684E\u74C6\u75BE\u79E9\u7A92\u81A3\u86ED\u8CEA\u8DCC\u8FED\u659F\u6715\uF9FD\u57F7\u6F57\u7DDD\u8F2F"],["f3a1","\u93F6\u96C6\u5FB5\u61F2\u6F84\u4E14\u4F98\u501F\u53C9\u55DF\u5D6F\u5DEE\u6B21\u6B64\u78CB\u7B9A\uF9FE\u8E49\u8ECA\u906E\u6349\u643E\u7740\u7A84\u932F\u947F\u9F6A\u64B0\u6FAF\u71E6\u74A8\u74DA\u7AC4\u7C12\u7E82\u7CB2\u7E98\u8B9A\u8D0A\u947D\u9910\u994C\u5239\u5BDF\u64E6\u672D\u7D2E\u50ED\u53C3\u5879\u6158\u6159\u61FA\u65AC\u7AD9\u8B92\u8B96\u5009\u5021\u5275\u5531\u5A3C\u5EE0\u5F70\u6134\u655E\u660C\u6636\u66A2\u69CD\u6EC4\u6F32\u7316\u7621\u7A93\u8139\u8259\u83D6\u84BC\u50B5\u57F0\u5BC0\u5BE8\u5F69\u63A1\u7826\u7DB5\u83DC\u8521\u91C7\u91F5\u518A\u67F5\u7B56"],["f4a1","\u8CAC\u51C4\u59BB\u60BD\u8655\u501C\uF9FF\u5254\u5C3A\u617D\u621A\u62D3\u64F2\u65A5\u6ECC\u7620\u810A\u8E60\u965F\u96BB\u4EDF\u5343\u5598\u5929\u5DDD\u64C5\u6CC9\u6DFA\u7394\u7A7F\u821B\u85A6\u8CE4\u8E10\u9077\u91E7\u95E1\u9621\u97C6\u51F8\u54F2\u5586\u5FB9\u64A4\u6F88\u7DB4\u8F1F\u8F4D\u9435\u50C9\u5C16\u6CBE\u6DFB\u751B\u77BB\u7C3D\u7C64\u8A79\u8AC2\u581E\u59BE\u5E16\u6377\u7252\u758A\u776B\u8ADC\u8CBC\u8F12\u5EF3\u6674\u6DF8\u807D\u83C1\u8ACB\u9751\u9BD6\uFA00\u5243\u66FF\u6D95\u6EEF\u7DE0\u8AE6\u902E\u905E\u9AD4\u521D\u527F\u54E8\u6194\u6284\u62DB\u68A2"],["f5a1","\u6912\u695A\u6A35\u7092\u7126\u785D\u7901\u790E\u79D2\u7A0D\u8096\u8278\u82D5\u8349\u8549\u8C82\u8D85\u9162\u918B\u91AE\u4FC3\u56D1\u71ED\u77D7\u8700\u89F8\u5BF8\u5FD6\u6751\u90A8\u53E2\u585A\u5BF5\u60A4\u6181\u6460\u7E3D\u8070\u8525\u9283\u64AE\u50AC\u5D14\u6700\u589C\u62BD\u63A8\u690E\u6978\u6A1E\u6E6B\u76BA\u79CB\u82BB\u8429\u8ACF\u8DA8\u8FFD\u9112\u914B\u919C\u9310\u9318\u939A\u96DB\u9A36\u9C0D\u4E11\u755C\u795D\u7AFA\u7B51\u7BC9\u7E2E\u84C4\u8E59\u8E74\u8EF8\u9010\u6625\u693F\u7443\u51FA\u672E\u9EDC\u5145\u5FE0\u6C96\u87F2\u885D\u8877\u60B4\u81B5\u8403"],["f6a1","\u8D05\u53D6\u5439\u5634\u5A36\u5C31\u708A\u7FE0\u805A\u8106\u81ED\u8DA3\u9189\u9A5F\u9DF2\u5074\u4EC4\u53A0\u60FB\u6E2C\u5C64\u4F88\u5024\u55E4\u5CD9\u5E5F\u6065\u6894\u6CBB\u6DC4\u71BE\u75D4\u75F4\u7661\u7A1A\u7A49\u7DC7\u7DFB\u7F6E\u81F4\u86A9\u8F1C\u96C9\u99B3\u9F52\u5247\u52C5\u98ED\u89AA\u4E03\u67D2\u6F06\u4FB5\u5BE2\u6795\u6C88\u6D78\u741B\u7827\u91DD\u937C\u87C4\u79E4\u7A31\u5FEB\u4ED6\u54A4\u553E\u58AE\u59A5\u60F0\u6253\u62D6\u6736\u6955\u8235\u9640\u99B1\u99DD\u502C\u5353\u5544\u577C\uFA01\u6258\uFA02\u64E2\u666B\u67DD\u6FC1\u6FEF\u7422\u7438\u8A17"],["f7a1","\u9438\u5451\u5606\u5766\u5F48\u619A\u6B4E\u7058\u70AD\u7DBB\u8A95\u596A\u812B\u63A2\u7708\u803D\u8CAA\u5854\u642D\u69BB\u5B95\u5E11\u6E6F\uFA03\u8569\u514C\u53F0\u592A\u6020\u614B\u6B86\u6C70\u6CF0\u7B1E\u80CE\u82D4\u8DC6\u90B0\u98B1\uFA04\u64C7\u6FA4\u6491\u6504\u514E\u5410\u571F\u8A0E\u615F\u6876\uFA05\u75DB\u7B52\u7D71\u901A\u5806\u69CC\u817F\u892A\u9000\u9839\u5078\u5957\u59AC\u6295\u900F\u9B2A\u615D\u7279\u95D6\u5761\u5A46\u5DF4\u628A\u64AD\u64FA\u6777\u6CE2\u6D3E\u722C\u7436\u7834\u7F77\u82AD\u8DDB\u9817\u5224\u5742\u677F\u7248\u74E3\u8CA9\u8FA6\u9211"],["f8a1","\u962A\u516B\u53ED\u634C\u4F69\u5504\u6096\u6557\u6C9B\u6D7F\u724C\u72FD\u7A17\u8987\u8C9D\u5F6D\u6F8E\u70F9\u81A8\u610E\u4FBF\u504F\u6241\u7247\u7BC7\u7DE8\u7FE9\u904D\u97AD\u9A19\u8CB6\u576A\u5E73\u67B0\u840D\u8A55\u5420\u5B16\u5E63\u5EE2\u5F0A\u6583\u80BA\u853D\u9589\u965B\u4F48\u5305\u530D\u530F\u5486\u54FA\u5703\u5E03\u6016\u629B\u62B1\u6355\uFA06\u6CE1\u6D66\u75B1\u7832\u80DE\u812F\u82DE\u8461\u84B2\u888D\u8912\u900B\u92EA\u98FD\u9B91\u5E45\u66B4\u66DD\u7011\u7206\uFA07\u4FF5\u527D\u5F6A\u6153\u6753\u6A19\u6F02\u74E2\u7968\u8868\u8C79\u98C7\u98C4\u9A43"],["f9a1","\u54C1\u7A1F\u6953\u8AF7\u8C4A\u98A8\u99AE\u5F7C\u62AB\u75B2\u76AE\u88AB\u907F\u9642\u5339\u5F3C\u5FC5\u6CCC\u73CC\u7562\u758B\u7B46\u82FE\u999D\u4E4F\u903C\u4E0B\u4F55\u53A6\u590F\u5EC8\u6630\u6CB3\u7455\u8377\u8766\u8CC0\u9050\u971E\u9C15\u58D1\u5B78\u8650\u8B14\u9DB4\u5BD2\u6068\u608D\u65F1\u6C57\u6F22\u6FA3\u701A\u7F55\u7FF0\u9591\u9592\u9650\u97D3\u5272\u8F44\u51FD\u542B\u54B8\u5563\u558A\u6ABB\u6DB5\u7DD8\u8266\u929C\u9677\u9E79\u5408\u54C8\u76D2\u86E4\u95A4\u95D4\u965C\u4EA2\u4F09\u59EE\u5AE6\u5DF7\u6052\u6297\u676D\u6841\u6C86\u6E2F\u7F38\u809B\u822A"],["faa1","\uFA08\uFA09\u9805\u4EA5\u5055\u54B3\u5793\u595A\u5B69\u5BB3\u61C8\u6977\u6D77\u7023\u87F9\u89E3\u8A72\u8AE7\u9082\u99ED\u9AB8\u52BE\u6838\u5016\u5E78\u674F\u8347\u884C\u4EAB\u5411\u56AE\u73E6\u9115\u97FF\u9909\u9957\u9999\u5653\u589F\u865B\u8A31\u61B2\u6AF6\u737B\u8ED2\u6B47\u96AA\u9A57\u5955\u7200\u8D6B\u9769\u4FD4\u5CF4\u5F26\u61F8\u665B\u6CEB\u70AB\u7384\u73B9\u73FE\u7729\u774D\u7D43\u7D62\u7E23\u8237\u8852\uFA0A\u8CE2\u9249\u986F\u5B51\u7A74\u8840\u9801\u5ACC\u4FE0\u5354\u593E\u5CFD\u633E\u6D79\u72F9\u8105\u8107\u83A2\u92CF\u9830\u4EA8\u5144\u5211\u578B"],["fba1","\u5F62\u6CC2\u6ECE\u7005\u7050\u70AF\u7192\u73E9\u7469\u834A\u87A2\u8861\u9008\u90A2\u93A3\u99A8\u516E\u5F57\u60E0\u6167\u66B3\u8559\u8E4A\u91AF\u978B\u4E4E\u4E92\u547C\u58D5\u58FA\u597D\u5CB5\u5F27\u6236\u6248\u660A\u6667\u6BEB\u6D69\u6DCF\u6E56\u6EF8\u6F94\u6FE0\u6FE9\u705D\u72D0\u7425\u745A\u74E0\u7693\u795C\u7CCA\u7E1E\u80E1\u82A6\u846B\u84BF\u864E\u865F\u8774\u8B77\u8C6A\u93AC\u9800\u9865\u60D1\u6216\u9177\u5A5A\u660F\u6DF7\u6E3E\u743F\u9B42\u5FFD\u60DA\u7B0F\u54C4\u5F18\u6C5E\u6CD3\u6D2A\u70D8\u7D05\u8679\u8A0C\u9D3B\u5316\u548C\u5B05\u6A3A\u706B\u7575"],["fca1","\u798D\u79BE\u82B1\u83EF\u8A71\u8B41\u8CA8\u9774\uFA0B\u64F4\u652B\u78BA\u78BB\u7A6B\u4E38\u559A\u5950\u5BA6\u5E7B\u60A3\u63DB\u6B61\u6665\u6853\u6E19\u7165\u74B0\u7D08\u9084\u9A69\u9C25\u6D3B\u6ED1\u733E\u8C41\u95CA\u51F0\u5E4C\u5FA8\u604D\u60F6\u6130\u614C\u6643\u6644\u69A5\u6CC1\u6E5F\u6EC9\u6F62\u714C\u749C\u7687\u7BC1\u7C27\u8352\u8757\u9051\u968D\u9EC3\u532F\u56DE\u5EFB\u5F8A\u6062\u6094\u61F7\u6666\u6703\u6A9C\u6DEE\u6FAE\u7070\u736A\u7E6A\u81BE\u8334\u86D4\u8AA8\u8CC4\u5283\u7372\u5B96\u6A6B\u9404\u54EE\u5686\u5B5D\u6548\u6585\u66C9\u689F\u6D8D\u6DC6"],["fda1","\u723B\u80B4\u9175\u9A4D\u4FAF\u5019\u539A\u540E\u543C\u5589\u55C5\u5E3F\u5F8C\u673D\u7166\u73DD\u9005\u52DB\u52F3\u5864\u58CE\u7104\u718F\u71FB\u85B0\u8A13\u6688\u85A8\u55A7\u6684\u714A\u8431\u5349\u5599\u6BC1\u5F59\u5FBD\u63EE\u6689\u7147\u8AF1\u8F1D\u9EBE\u4F11\u643A\u70CB\u7566\u8667\u6064\u8B4E\u9DF8\u5147\u51F6\u5308\u6D36\u80F8\u9ED1\u6615\u6B23\u7098\u75D5\u5403\u5C79\u7D07\u8A16\u6B20\u6B3D\u6B46\u5438\u6070\u6D3D\u7FD5\u8208\u50D6\u51DE\u559C\u566B\u56CD\u59EC\u5B09\u5E0C\u6199\u6198\u6231\u665E\u66E6\u7199\u71B9\u71BA\u72A7\u79A7\u7A00\u7FB2\u8A70"]]});var F7=b((X8e,QG)=>{QG.exports=[["0","\0",127],["a140","\u3000\uFF0C\u3001\u3002\uFF0E\u2027\uFF1B\uFF1A\uFF1F\uFF01\uFE30\u2026\u2025\uFE50\uFE51\uFE52\xB7\uFE54\uFE55\uFE56\uFE57\uFF5C\u2013\uFE31\u2014\uFE33\u2574\uFE34\uFE4F\uFF08\uFF09\uFE35\uFE36\uFF5B\uFF5D\uFE37\uFE38\u3014\u3015\uFE39\uFE3A\u3010\u3011\uFE3B\uFE3C\u300A\u300B\uFE3D\uFE3E\u3008\u3009\uFE3F\uFE40\u300C\u300D\uFE41\uFE42\u300E\u300F\uFE43\uFE44\uFE59\uFE5A"],["a1a1","\uFE5B\uFE5C\uFE5D\uFE5E\u2018\u2019\u201C\u201D\u301D\u301E\u2035\u2032\uFF03\uFF06\uFF0A\u203B\xA7\u3003\u25CB\u25CF\u25B3\u25B2\u25CE\u2606\u2605\u25C7\u25C6\u25A1\u25A0\u25BD\u25BC\u32A3\u2105\xAF\uFFE3\uFF3F\u02CD\uFE49\uFE4A\uFE4D\uFE4E\uFE4B\uFE4C\uFE5F\uFE60\uFE61\uFF0B\uFF0D\xD7\xF7\xB1\u221A\uFF1C\uFF1E\uFF1D\u2266\u2267\u2260\u221E\u2252\u2261\uFE62",4,"\uFF5E\u2229\u222A\u22A5\u2220\u221F\u22BF\u33D2\u33D1\u222B\u222E\u2235\u2234\u2640\u2642\u2295\u2299\u2191\u2193\u2190\u2192\u2196\u2197\u2199\u2198\u2225\u2223\uFF0F"],["a240","\uFF3C\u2215\uFE68\uFF04\uFFE5\u3012\uFFE0\uFFE1\uFF05\uFF20\u2103\u2109\uFE69\uFE6A\uFE6B\u33D5\u339C\u339D\u339E\u33CE\u33A1\u338E\u338F\u33C4\xB0\u5159\u515B\u515E\u515D\u5161\u5163\u55E7\u74E9\u7CCE\u2581",7,"\u258F\u258E\u258D\u258C\u258B\u258A\u2589\u253C\u2534\u252C\u2524\u251C\u2594\u2500\u2502\u2595\u250C\u2510\u2514\u2518\u256D"],["a2a1","\u256E\u2570\u256F\u2550\u255E\u256A\u2561\u25E2\u25E3\u25E5\u25E4\u2571\u2572\u2573\uFF10",9,"\u2160",9,"\u3021",8,"\u5341\u5344\u5345\uFF21",25,"\uFF41",21],["a340","\uFF57\uFF58\uFF59\uFF5A\u0391",16,"\u03A3",6,"\u03B1",16,"\u03C3",6,"\u3105",10],["a3a1","\u3110",25,"\u02D9\u02C9\u02CA\u02C7\u02CB"],["a3e1","\u20AC"],["a440","\u4E00\u4E59\u4E01\u4E03\u4E43\u4E5D\u4E86\u4E8C\u4EBA\u513F\u5165\u516B\u51E0\u5200\u5201\u529B\u5315\u5341\u535C\u53C8\u4E09\u4E0B\u4E08\u4E0A\u4E2B\u4E38\u51E1\u4E45\u4E48\u4E5F\u4E5E\u4E8E\u4EA1\u5140\u5203\u52FA\u5343\u53C9\u53E3\u571F\u58EB\u5915\u5927\u5973\u5B50\u5B51\u5B53\u5BF8\u5C0F\u5C22\u5C38\u5C71\u5DDD\u5DE5\u5DF1\u5DF2\u5DF3\u5DFE\u5E72\u5EFE\u5F0B\u5F13\u624D"],["a4a1","\u4E11\u4E10\u4E0D\u4E2D\u4E30\u4E39\u4E4B\u5C39\u4E88\u4E91\u4E95\u4E92\u4E94\u4EA2\u4EC1\u4EC0\u4EC3\u4EC6\u4EC7\u4ECD\u4ECA\u4ECB\u4EC4\u5143\u5141\u5167\u516D\u516E\u516C\u5197\u51F6\u5206\u5207\u5208\u52FB\u52FE\u52FF\u5316\u5339\u5348\u5347\u5345\u535E\u5384\u53CB\u53CA\u53CD\u58EC\u5929\u592B\u592A\u592D\u5B54\u5C11\u5C24\u5C3A\u5C6F\u5DF4\u5E7B\u5EFF\u5F14\u5F15\u5FC3\u6208\u6236\u624B\u624E\u652F\u6587\u6597\u65A4\u65B9\u65E5\u66F0\u6708\u6728\u6B20\u6B62\u6B79\u6BCB\u6BD4\u6BDB\u6C0F\u6C34\u706B\u722A\u7236\u723B\u7247\u7259\u725B\u72AC\u738B\u4E19"],["a540","\u4E16\u4E15\u4E14\u4E18\u4E3B\u4E4D\u4E4F\u4E4E\u4EE5\u4ED8\u4ED4\u4ED5\u4ED6\u4ED7\u4EE3\u4EE4\u4ED9\u4EDE\u5145\u5144\u5189\u518A\u51AC\u51F9\u51FA\u51F8\u520A\u52A0\u529F\u5305\u5306\u5317\u531D\u4EDF\u534A\u5349\u5361\u5360\u536F\u536E\u53BB\u53EF\u53E4\u53F3\u53EC\u53EE\u53E9\u53E8\u53FC\u53F8\u53F5\u53EB\u53E6\u53EA\u53F2\u53F1\u53F0\u53E5\u53ED\u53FB\u56DB\u56DA\u5916"],["a5a1","\u592E\u5931\u5974\u5976\u5B55\u5B83\u5C3C\u5DE8\u5DE7\u5DE6\u5E02\u5E03\u5E73\u5E7C\u5F01\u5F18\u5F17\u5FC5\u620A\u6253\u6254\u6252\u6251\u65A5\u65E6\u672E\u672C\u672A\u672B\u672D\u6B63\u6BCD\u6C11\u6C10\u6C38\u6C41\u6C40\u6C3E\u72AF\u7384\u7389\u74DC\u74E6\u7518\u751F\u7528\u7529\u7530\u7531\u7532\u7533\u758B\u767D\u76AE\u76BF\u76EE\u77DB\u77E2\u77F3\u793A\u79BE\u7A74\u7ACB\u4E1E\u4E1F\u4E52\u4E53\u4E69\u4E99\u4EA4\u4EA6\u4EA5\u4EFF\u4F09\u4F19\u4F0A\u4F15\u4F0D\u4F10\u4F11\u4F0F\u4EF2\u4EF6\u4EFB\u4EF0\u4EF3\u4EFD\u4F01\u4F0B\u5149\u5147\u5146\u5148\u5168"],["a640","\u5171\u518D\u51B0\u5217\u5211\u5212\u520E\u5216\u52A3\u5308\u5321\u5320\u5370\u5371\u5409\u540F\u540C\u540A\u5410\u5401\u540B\u5404\u5411\u540D\u5408\u5403\u540E\u5406\u5412\u56E0\u56DE\u56DD\u5733\u5730\u5728\u572D\u572C\u572F\u5729\u5919\u591A\u5937\u5938\u5984\u5978\u5983\u597D\u5979\u5982\u5981\u5B57\u5B58\u5B87\u5B88\u5B85\u5B89\u5BFA\u5C16\u5C79\u5DDE\u5E06\u5E76\u5E74"],["a6a1","\u5F0F\u5F1B\u5FD9\u5FD6\u620E\u620C\u620D\u6210\u6263\u625B\u6258\u6536\u65E9\u65E8\u65EC\u65ED\u66F2\u66F3\u6709\u673D\u6734\u6731\u6735\u6B21\u6B64\u6B7B\u6C16\u6C5D\u6C57\u6C59\u6C5F\u6C60\u6C50\u6C55\u6C61\u6C5B\u6C4D\u6C4E\u7070\u725F\u725D\u767E\u7AF9\u7C73\u7CF8\u7F36\u7F8A\u7FBD\u8001\u8003\u800C\u8012\u8033\u807F\u8089\u808B\u808C\u81E3\u81EA\u81F3\u81FC\u820C\u821B\u821F\u826E\u8272\u827E\u866B\u8840\u884C\u8863\u897F\u9621\u4E32\u4EA8\u4F4D\u4F4F\u4F47\u4F57\u4F5E\u4F34\u4F5B\u4F55\u4F30\u4F50\u4F51\u4F3D\u4F3A\u4F38\u4F43\u4F54\u4F3C\u4F46\u4F63"],["a740","\u4F5C\u4F60\u4F2F\u4F4E\u4F36\u4F59\u4F5D\u4F48\u4F5A\u514C\u514B\u514D\u5175\u51B6\u51B7\u5225\u5224\u5229\u522A\u5228\u52AB\u52A9\u52AA\u52AC\u5323\u5373\u5375\u541D\u542D\u541E\u543E\u5426\u544E\u5427\u5446\u5443\u5433\u5448\u5442\u541B\u5429\u544A\u5439\u543B\u5438\u542E\u5435\u5436\u5420\u543C\u5440\u5431\u542B\u541F\u542C\u56EA\u56F0\u56E4\u56EB\u574A\u5751\u5740\u574D"],["a7a1","\u5747\u574E\u573E\u5750\u574F\u573B\u58EF\u593E\u599D\u5992\u59A8\u599E\u59A3\u5999\u5996\u598D\u59A4\u5993\u598A\u59A5\u5B5D\u5B5C\u5B5A\u5B5B\u5B8C\u5B8B\u5B8F\u5C2C\u5C40\u5C41\u5C3F\u5C3E\u5C90\u5C91\u5C94\u5C8C\u5DEB\u5E0C\u5E8F\u5E87\u5E8A\u5EF7\u5F04\u5F1F\u5F64\u5F62\u5F77\u5F79\u5FD8\u5FCC\u5FD7\u5FCD\u5FF1\u5FEB\u5FF8\u5FEA\u6212\u6211\u6284\u6297\u6296\u6280\u6276\u6289\u626D\u628A\u627C\u627E\u6279\u6273\u6292\u626F\u6298\u626E\u6295\u6293\u6291\u6286\u6539\u653B\u6538\u65F1\u66F4\u675F\u674E\u674F\u6750\u6751\u675C\u6756\u675E\u6749\u6746\u6760"],["a840","\u6753\u6757\u6B65\u6BCF\u6C42\u6C5E\u6C99\u6C81\u6C88\u6C89\u6C85\u6C9B\u6C6A\u6C7A\u6C90\u6C70\u6C8C\u6C68\u6C96\u6C92\u6C7D\u6C83\u6C72\u6C7E\u6C74\u6C86\u6C76\u6C8D\u6C94\u6C98\u6C82\u7076\u707C\u707D\u7078\u7262\u7261\u7260\u72C4\u72C2\u7396\u752C\u752B\u7537\u7538\u7682\u76EF\u77E3\u79C1\u79C0\u79BF\u7A76\u7CFB\u7F55\u8096\u8093\u809D\u8098\u809B\u809A\u80B2\u826F\u8292"],["a8a1","\u828B\u828D\u898B\u89D2\u8A00\u8C37\u8C46\u8C55\u8C9D\u8D64\u8D70\u8DB3\u8EAB\u8ECA\u8F9B\u8FB0\u8FC2\u8FC6\u8FC5\u8FC4\u5DE1\u9091\u90A2\u90AA\u90A6\u90A3\u9149\u91C6\u91CC\u9632\u962E\u9631\u962A\u962C\u4E26\u4E56\u4E73\u4E8B\u4E9B\u4E9E\u4EAB\u4EAC\u4F6F\u4F9D\u4F8D\u4F73\u4F7F\u4F6C\u4F9B\u4F8B\u4F86\u4F83\u4F70\u4F75\u4F88\u4F69\u4F7B\u4F96\u4F7E\u4F8F\u4F91\u4F7A\u5154\u5152\u5155\u5169\u5177\u5176\u5178\u51BD\u51FD\u523B\u5238\u5237\u523A\u5230\u522E\u5236\u5241\u52BE\u52BB\u5352\u5354\u5353\u5351\u5366\u5377\u5378\u5379\u53D6\u53D4\u53D7\u5473\u5475"],["a940","\u5496\u5478\u5495\u5480\u547B\u5477\u5484\u5492\u5486\u547C\u5490\u5471\u5476\u548C\u549A\u5462\u5468\u548B\u547D\u548E\u56FA\u5783\u5777\u576A\u5769\u5761\u5766\u5764\u577C\u591C\u5949\u5947\u5948\u5944\u5954\u59BE\u59BB\u59D4\u59B9\u59AE\u59D1\u59C6\u59D0\u59CD\u59CB\u59D3\u59CA\u59AF\u59B3\u59D2\u59C5\u5B5F\u5B64\u5B63\u5B97\u5B9A\u5B98\u5B9C\u5B99\u5B9B\u5C1A\u5C48\u5C45"],["a9a1","\u5C46\u5CB7\u5CA1\u5CB8\u5CA9\u5CAB\u5CB1\u5CB3\u5E18\u5E1A\u5E16\u5E15\u5E1B\u5E11\u5E78\u5E9A\u5E97\u5E9C\u5E95\u5E96\u5EF6\u5F26\u5F27\u5F29\u5F80\u5F81\u5F7F\u5F7C\u5FDD\u5FE0\u5FFD\u5FF5\u5FFF\u600F\u6014\u602F\u6035\u6016\u602A\u6015\u6021\u6027\u6029\u602B\u601B\u6216\u6215\u623F\u623E\u6240\u627F\u62C9\u62CC\u62C4\u62BF\u62C2\u62B9\u62D2\u62DB\u62AB\u62D3\u62D4\u62CB\u62C8\u62A8\u62BD\u62BC\u62D0\u62D9\u62C7\u62CD\u62B5\u62DA\u62B1\u62D8\u62D6\u62D7\u62C6\u62AC\u62CE\u653E\u65A7\u65BC\u65FA\u6614\u6613\u660C\u6606\u6602\u660E\u6600\u660F\u6615\u660A"],["aa40","\u6607\u670D\u670B\u676D\u678B\u6795\u6771\u679C\u6773\u6777\u6787\u679D\u6797\u676F\u6770\u677F\u6789\u677E\u6790\u6775\u679A\u6793\u677C\u676A\u6772\u6B23\u6B66\u6B67\u6B7F\u6C13\u6C1B\u6CE3\u6CE8\u6CF3\u6CB1\u6CCC\u6CE5\u6CB3\u6CBD\u6CBE\u6CBC\u6CE2\u6CAB\u6CD5\u6CD3\u6CB8\u6CC4\u6CB9\u6CC1\u6CAE\u6CD7\u6CC5\u6CF1\u6CBF\u6CBB\u6CE1\u6CDB\u6CCA\u6CAC\u6CEF\u6CDC\u6CD6\u6CE0"],["aaa1","\u7095\u708E\u7092\u708A\u7099\u722C\u722D\u7238\u7248\u7267\u7269\u72C0\u72CE\u72D9\u72D7\u72D0\u73A9\u73A8\u739F\u73AB\u73A5\u753D\u759D\u7599\u759A\u7684\u76C2\u76F2\u76F4\u77E5\u77FD\u793E\u7940\u7941\u79C9\u79C8\u7A7A\u7A79\u7AFA\u7CFE\u7F54\u7F8C\u7F8B\u8005\u80BA\u80A5\u80A2\u80B1\u80A1\u80AB\u80A9\u80B4\u80AA\u80AF\u81E5\u81FE\u820D\u82B3\u829D\u8299\u82AD\u82BD\u829F\u82B9\u82B1\u82AC\u82A5\u82AF\u82B8\u82A3\u82B0\u82BE\u82B7\u864E\u8671\u521D\u8868\u8ECB\u8FCE\u8FD4\u8FD1\u90B5\u90B8\u90B1\u90B6\u91C7\u91D1\u9577\u9580\u961C\u9640\u963F\u963B\u9644"],["ab40","\u9642\u96B9\u96E8\u9752\u975E\u4E9F\u4EAD\u4EAE\u4FE1\u4FB5\u4FAF\u4FBF\u4FE0\u4FD1\u4FCF\u4FDD\u4FC3\u4FB6\u4FD8\u4FDF\u4FCA\u4FD7\u4FAE\u4FD0\u4FC4\u4FC2\u4FDA\u4FCE\u4FDE\u4FB7\u5157\u5192\u5191\u51A0\u524E\u5243\u524A\u524D\u524C\u524B\u5247\u52C7\u52C9\u52C3\u52C1\u530D\u5357\u537B\u539A\u53DB\u54AC\u54C0\u54A8\u54CE\u54C9\u54B8\u54A6\u54B3\u54C7\u54C2\u54BD\u54AA\u54C1"],["aba1","\u54C4\u54C8\u54AF\u54AB\u54B1\u54BB\u54A9\u54A7\u54BF\u56FF\u5782\u578B\u57A0\u57A3\u57A2\u57CE\u57AE\u5793\u5955\u5951\u594F\u594E\u5950\u59DC\u59D8\u59FF\u59E3\u59E8\u5A03\u59E5\u59EA\u59DA\u59E6\u5A01\u59FB\u5B69\u5BA3\u5BA6\u5BA4\u5BA2\u5BA5\u5C01\u5C4E\u5C4F\u5C4D\u5C4B\u5CD9\u5CD2\u5DF7\u5E1D\u5E25\u5E1F\u5E7D\u5EA0\u5EA6\u5EFA\u5F08\u5F2D\u5F65\u5F88\u5F85\u5F8A\u5F8B\u5F87\u5F8C\u5F89\u6012\u601D\u6020\u6025\u600E\u6028\u604D\u6070\u6068\u6062\u6046\u6043\u606C\u606B\u606A\u6064\u6241\u62DC\u6316\u6309\u62FC\u62ED\u6301\u62EE\u62FD\u6307\u62F1\u62F7"],["ac40","\u62EF\u62EC\u62FE\u62F4\u6311\u6302\u653F\u6545\u65AB\u65BD\u65E2\u6625\u662D\u6620\u6627\u662F\u661F\u6628\u6631\u6624\u66F7\u67FF\u67D3\u67F1\u67D4\u67D0\u67EC\u67B6\u67AF\u67F5\u67E9\u67EF\u67C4\u67D1\u67B4\u67DA\u67E5\u67B8\u67CF\u67DE\u67F3\u67B0\u67D9\u67E2\u67DD\u67D2\u6B6A\u6B83\u6B86\u6BB5\u6BD2\u6BD7\u6C1F\u6CC9\u6D0B\u6D32\u6D2A\u6D41\u6D25\u6D0C\u6D31\u6D1E\u6D17"],["aca1","\u6D3B\u6D3D\u6D3E\u6D36\u6D1B\u6CF5\u6D39\u6D27\u6D38\u6D29\u6D2E\u6D35\u6D0E\u6D2B\u70AB\u70BA\u70B3\u70AC\u70AF\u70AD\u70B8\u70AE\u70A4\u7230\u7272\u726F\u7274\u72E9\u72E0\u72E1\u73B7\u73CA\u73BB\u73B2\u73CD\u73C0\u73B3\u751A\u752D\u754F\u754C\u754E\u754B\u75AB\u75A4\u75A5\u75A2\u75A3\u7678\u7686\u7687\u7688\u76C8\u76C6\u76C3\u76C5\u7701\u76F9\u76F8\u7709\u770B\u76FE\u76FC\u7707\u77DC\u7802\u7814\u780C\u780D\u7946\u7949\u7948\u7947\u79B9\u79BA\u79D1\u79D2\u79CB\u7A7F\u7A81\u7AFF\u7AFD\u7C7D\u7D02\u7D05\u7D00\u7D09\u7D07\u7D04\u7D06\u7F38\u7F8E\u7FBF\u8004"],["ad40","\u8010\u800D\u8011\u8036\u80D6\u80E5\u80DA\u80C3\u80C4\u80CC\u80E1\u80DB\u80CE\u80DE\u80E4\u80DD\u81F4\u8222\u82E7\u8303\u8305\u82E3\u82DB\u82E6\u8304\u82E5\u8302\u8309\u82D2\u82D7\u82F1\u8301\u82DC\u82D4\u82D1\u82DE\u82D3\u82DF\u82EF\u8306\u8650\u8679\u867B\u867A\u884D\u886B\u8981\u89D4\u8A08\u8A02\u8A03\u8C9E\u8CA0\u8D74\u8D73\u8DB4\u8ECD\u8ECC\u8FF0\u8FE6\u8FE2\u8FEA\u8FE5"],["ada1","\u8FED\u8FEB\u8FE4\u8FE8\u90CA\u90CE\u90C1\u90C3\u914B\u914A\u91CD\u9582\u9650\u964B\u964C\u964D\u9762\u9769\u97CB\u97ED\u97F3\u9801\u98A8\u98DB\u98DF\u9996\u9999\u4E58\u4EB3\u500C\u500D\u5023\u4FEF\u5026\u5025\u4FF8\u5029\u5016\u5006\u503C\u501F\u501A\u5012\u5011\u4FFA\u5000\u5014\u5028\u4FF1\u5021\u500B\u5019\u5018\u4FF3\u4FEE\u502D\u502A\u4FFE\u502B\u5009\u517C\u51A4\u51A5\u51A2\u51CD\u51CC\u51C6\u51CB\u5256\u525C\u5254\u525B\u525D\u532A\u537F\u539F\u539D\u53DF\u54E8\u5510\u5501\u5537\u54FC\u54E5\u54F2\u5506\u54FA\u5514\u54E9\u54ED\u54E1\u5509\u54EE\u54EA"],["ae40","\u54E6\u5527\u5507\u54FD\u550F\u5703\u5704\u57C2\u57D4\u57CB\u57C3\u5809\u590F\u5957\u5958\u595A\u5A11\u5A18\u5A1C\u5A1F\u5A1B\u5A13\u59EC\u5A20\u5A23\u5A29\u5A25\u5A0C\u5A09\u5B6B\u5C58\u5BB0\u5BB3\u5BB6\u5BB4\u5BAE\u5BB5\u5BB9\u5BB8\u5C04\u5C51\u5C55\u5C50\u5CED\u5CFD\u5CFB\u5CEA\u5CE8\u5CF0\u5CF6\u5D01\u5CF4\u5DEE\u5E2D\u5E2B\u5EAB\u5EAD\u5EA7\u5F31\u5F92\u5F91\u5F90\u6059"],["aea1","\u6063\u6065\u6050\u6055\u606D\u6069\u606F\u6084\u609F\u609A\u608D\u6094\u608C\u6085\u6096\u6247\u62F3\u6308\u62FF\u634E\u633E\u632F\u6355\u6342\u6346\u634F\u6349\u633A\u6350\u633D\u632A\u632B\u6328\u634D\u634C\u6548\u6549\u6599\u65C1\u65C5\u6642\u6649\u664F\u6643\u6652\u664C\u6645\u6641\u66F8\u6714\u6715\u6717\u6821\u6838\u6848\u6846\u6853\u6839\u6842\u6854\u6829\u68B3\u6817\u684C\u6851\u683D\u67F4\u6850\u6840\u683C\u6843\u682A\u6845\u6813\u6818\u6841\u6B8A\u6B89\u6BB7\u6C23\u6C27\u6C28\u6C26\u6C24\u6CF0\u6D6A\u6D95\u6D88\u6D87\u6D66\u6D78\u6D77\u6D59\u6D93"],["af40","\u6D6C\u6D89\u6D6E\u6D5A\u6D74\u6D69\u6D8C\u6D8A\u6D79\u6D85\u6D65\u6D94\u70CA\u70D8\u70E4\u70D9\u70C8\u70CF\u7239\u7279\u72FC\u72F9\u72FD\u72F8\u72F7\u7386\u73ED\u7409\u73EE\u73E0\u73EA\u73DE\u7554\u755D\u755C\u755A\u7559\u75BE\u75C5\u75C7\u75B2\u75B3\u75BD\u75BC\u75B9\u75C2\u75B8\u768B\u76B0\u76CA\u76CD\u76CE\u7729\u771F\u7720\u7728\u77E9\u7830\u7827\u7838\u781D\u7834\u7837"],["afa1","\u7825\u782D\u7820\u781F\u7832\u7955\u7950\u7960\u795F\u7956\u795E\u795D\u7957\u795A\u79E4\u79E3\u79E7\u79DF\u79E6\u79E9\u79D8\u7A84\u7A88\u7AD9\u7B06\u7B11\u7C89\u7D21\u7D17\u7D0B\u7D0A\u7D20\u7D22\u7D14\u7D10\u7D15\u7D1A\u7D1C\u7D0D\u7D19\u7D1B\u7F3A\u7F5F\u7F94\u7FC5\u7FC1\u8006\u8018\u8015\u8019\u8017\u803D\u803F\u80F1\u8102\u80F0\u8105\u80ED\u80F4\u8106\u80F8\u80F3\u8108\u80FD\u810A\u80FC\u80EF\u81ED\u81EC\u8200\u8210\u822A\u822B\u8228\u822C\u82BB\u832B\u8352\u8354\u834A\u8338\u8350\u8349\u8335\u8334\u834F\u8332\u8339\u8336\u8317\u8340\u8331\u8328\u8343"],["b040","\u8654\u868A\u86AA\u8693\u86A4\u86A9\u868C\u86A3\u869C\u8870\u8877\u8881\u8882\u887D\u8879\u8A18\u8A10\u8A0E\u8A0C\u8A15\u8A0A\u8A17\u8A13\u8A16\u8A0F\u8A11\u8C48\u8C7A\u8C79\u8CA1\u8CA2\u8D77\u8EAC\u8ED2\u8ED4\u8ECF\u8FB1\u9001\u9006\u8FF7\u9000\u8FFA\u8FF4\u9003\u8FFD\u9005\u8FF8\u9095\u90E1\u90DD\u90E2\u9152\u914D\u914C\u91D8\u91DD\u91D7\u91DC\u91D9\u9583\u9662\u9663\u9661"],["b0a1","\u965B\u965D\u9664\u9658\u965E\u96BB\u98E2\u99AC\u9AA8\u9AD8\u9B25\u9B32\u9B3C\u4E7E\u507A\u507D\u505C\u5047\u5043\u504C\u505A\u5049\u5065\u5076\u504E\u5055\u5075\u5074\u5077\u504F\u500F\u506F\u506D\u515C\u5195\u51F0\u526A\u526F\u52D2\u52D9\u52D8\u52D5\u5310\u530F\u5319\u533F\u5340\u533E\u53C3\u66FC\u5546\u556A\u5566\u5544\u555E\u5561\u5543\u554A\u5531\u5556\u554F\u5555\u552F\u5564\u5538\u552E\u555C\u552C\u5563\u5533\u5541\u5557\u5708\u570B\u5709\u57DF\u5805\u580A\u5806\u57E0\u57E4\u57FA\u5802\u5835\u57F7\u57F9\u5920\u5962\u5A36\u5A41\u5A49\u5A66\u5A6A\u5A40"],["b140","\u5A3C\u5A62\u5A5A\u5A46\u5A4A\u5B70\u5BC7\u5BC5\u5BC4\u5BC2\u5BBF\u5BC6\u5C09\u5C08\u5C07\u5C60\u5C5C\u5C5D\u5D07\u5D06\u5D0E\u5D1B\u5D16\u5D22\u5D11\u5D29\u5D14\u5D19\u5D24\u5D27\u5D17\u5DE2\u5E38\u5E36\u5E33\u5E37\u5EB7\u5EB8\u5EB6\u5EB5\u5EBE\u5F35\u5F37\u5F57\u5F6C\u5F69\u5F6B\u5F97\u5F99\u5F9E\u5F98\u5FA1\u5FA0\u5F9C\u607F\u60A3\u6089\u60A0\u60A8\u60CB\u60B4\u60E6\u60BD"],["b1a1","\u60C5\u60BB\u60B5\u60DC\u60BC\u60D8\u60D5\u60C6\u60DF\u60B8\u60DA\u60C7\u621A\u621B\u6248\u63A0\u63A7\u6372\u6396\u63A2\u63A5\u6377\u6367\u6398\u63AA\u6371\u63A9\u6389\u6383\u639B\u636B\u63A8\u6384\u6388\u6399\u63A1\u63AC\u6392\u638F\u6380\u637B\u6369\u6368\u637A\u655D\u6556\u6551\u6559\u6557\u555F\u654F\u6558\u6555\u6554\u659C\u659B\u65AC\u65CF\u65CB\u65CC\u65CE\u665D\u665A\u6664\u6668\u6666\u665E\u66F9\u52D7\u671B\u6881\u68AF\u68A2\u6893\u68B5\u687F\u6876\u68B1\u68A7\u6897\u68B0\u6883\u68C4\u68AD\u6886\u6885\u6894\u689D\u68A8\u689F\u68A1\u6882\u6B32\u6BBA"],["b240","\u6BEB\u6BEC\u6C2B\u6D8E\u6DBC\u6DF3\u6DD9\u6DB2\u6DE1\u6DCC\u6DE4\u6DFB\u6DFA\u6E05\u6DC7\u6DCB\u6DAF\u6DD1\u6DAE\u6DDE\u6DF9\u6DB8\u6DF7\u6DF5\u6DC5\u6DD2\u6E1A\u6DB5\u6DDA\u6DEB\u6DD8\u6DEA\u6DF1\u6DEE\u6DE8\u6DC6\u6DC4\u6DAA\u6DEC\u6DBF\u6DE6\u70F9\u7109\u710A\u70FD\u70EF\u723D\u727D\u7281\u731C\u731B\u7316\u7313\u7319\u7387\u7405\u740A\u7403\u7406\u73FE\u740D\u74E0\u74F6"],["b2a1","\u74F7\u751C\u7522\u7565\u7566\u7562\u7570\u758F\u75D4\u75D5\u75B5\u75CA\u75CD\u768E\u76D4\u76D2\u76DB\u7737\u773E\u773C\u7736\u7738\u773A\u786B\u7843\u784E\u7965\u7968\u796D\u79FB\u7A92\u7A95\u7B20\u7B28\u7B1B\u7B2C\u7B26\u7B19\u7B1E\u7B2E\u7C92\u7C97\u7C95\u7D46\u7D43\u7D71\u7D2E\u7D39\u7D3C\u7D40\u7D30\u7D33\u7D44\u7D2F\u7D42\u7D32\u7D31\u7F3D\u7F9E\u7F9A\u7FCC\u7FCE\u7FD2\u801C\u804A\u8046\u812F\u8116\u8123\u812B\u8129\u8130\u8124\u8202\u8235\u8237\u8236\u8239\u838E\u839E\u8398\u8378\u83A2\u8396\u83BD\u83AB\u8392\u838A\u8393\u8389\u83A0\u8377\u837B\u837C"],["b340","\u8386\u83A7\u8655\u5F6A\u86C7\u86C0\u86B6\u86C4\u86B5\u86C6\u86CB\u86B1\u86AF\u86C9\u8853\u889E\u8888\u88AB\u8892\u8896\u888D\u888B\u8993\u898F\u8A2A\u8A1D\u8A23\u8A25\u8A31\u8A2D\u8A1F\u8A1B\u8A22\u8C49\u8C5A\u8CA9\u8CAC\u8CAB\u8CA8\u8CAA\u8CA7\u8D67\u8D66\u8DBE\u8DBA\u8EDB\u8EDF\u9019\u900D\u901A\u9017\u9023\u901F\u901D\u9010\u9015\u901E\u9020\u900F\u9022\u9016\u901B\u9014"],["b3a1","\u90E8\u90ED\u90FD\u9157\u91CE\u91F5\u91E6\u91E3\u91E7\u91ED\u91E9\u9589\u966A\u9675\u9673\u9678\u9670\u9674\u9676\u9677\u966C\u96C0\u96EA\u96E9\u7AE0\u7ADF\u9802\u9803\u9B5A\u9CE5\u9E75\u9E7F\u9EA5\u9EBB\u50A2\u508D\u5085\u5099\u5091\u5080\u5096\u5098\u509A\u6700\u51F1\u5272\u5274\u5275\u5269\u52DE\u52DD\u52DB\u535A\u53A5\u557B\u5580\u55A7\u557C\u558A\u559D\u5598\u5582\u559C\u55AA\u5594\u5587\u558B\u5583\u55B3\u55AE\u559F\u553E\u55B2\u559A\u55BB\u55AC\u55B1\u557E\u5589\u55AB\u5599\u570D\u582F\u582A\u5834\u5824\u5830\u5831\u5821\u581D\u5820\u58F9\u58FA\u5960"],["b440","\u5A77\u5A9A\u5A7F\u5A92\u5A9B\u5AA7\u5B73\u5B71\u5BD2\u5BCC\u5BD3\u5BD0\u5C0A\u5C0B\u5C31\u5D4C\u5D50\u5D34\u5D47\u5DFD\u5E45\u5E3D\u5E40\u5E43\u5E7E\u5ECA\u5EC1\u5EC2\u5EC4\u5F3C\u5F6D\u5FA9\u5FAA\u5FA8\u60D1\u60E1\u60B2\u60B6\u60E0\u611C\u6123\u60FA\u6115\u60F0\u60FB\u60F4\u6168\u60F1\u610E\u60F6\u6109\u6100\u6112\u621F\u6249\u63A3\u638C\u63CF\u63C0\u63E9\u63C9\u63C6\u63CD"],["b4a1","\u63D2\u63E3\u63D0\u63E1\u63D6\u63ED\u63EE\u6376\u63F4\u63EA\u63DB\u6452\u63DA\u63F9\u655E\u6566\u6562\u6563\u6591\u6590\u65AF\u666E\u6670\u6674\u6676\u666F\u6691\u667A\u667E\u6677\u66FE\u66FF\u671F\u671D\u68FA\u68D5\u68E0\u68D8\u68D7\u6905\u68DF\u68F5\u68EE\u68E7\u68F9\u68D2\u68F2\u68E3\u68CB\u68CD\u690D\u6912\u690E\u68C9\u68DA\u696E\u68FB\u6B3E\u6B3A\u6B3D\u6B98\u6B96\u6BBC\u6BEF\u6C2E\u6C2F\u6C2C\u6E2F\u6E38\u6E54\u6E21\u6E32\u6E67\u6E4A\u6E20\u6E25\u6E23\u6E1B\u6E5B\u6E58\u6E24\u6E56\u6E6E\u6E2D\u6E26\u6E6F\u6E34\u6E4D\u6E3A\u6E2C\u6E43\u6E1D\u6E3E\u6ECB"],["b540","\u6E89\u6E19\u6E4E\u6E63\u6E44\u6E72\u6E69\u6E5F\u7119\u711A\u7126\u7130\u7121\u7136\u716E\u711C\u724C\u7284\u7280\u7336\u7325\u7334\u7329\u743A\u742A\u7433\u7422\u7425\u7435\u7436\u7434\u742F\u741B\u7426\u7428\u7525\u7526\u756B\u756A\u75E2\u75DB\u75E3\u75D9\u75D8\u75DE\u75E0\u767B\u767C\u7696\u7693\u76B4\u76DC\u774F\u77ED\u785D\u786C\u786F\u7A0D\u7A08\u7A0B\u7A05\u7A00\u7A98"],["b5a1","\u7A97\u7A96\u7AE5\u7AE3\u7B49\u7B56\u7B46\u7B50\u7B52\u7B54\u7B4D\u7B4B\u7B4F\u7B51\u7C9F\u7CA5\u7D5E\u7D50\u7D68\u7D55\u7D2B\u7D6E\u7D72\u7D61\u7D66\u7D62\u7D70\u7D73\u5584\u7FD4\u7FD5\u800B\u8052\u8085\u8155\u8154\u814B\u8151\u814E\u8139\u8146\u813E\u814C\u8153\u8174\u8212\u821C\u83E9\u8403\u83F8\u840D\u83E0\u83C5\u840B\u83C1\u83EF\u83F1\u83F4\u8457\u840A\u83F0\u840C\u83CC\u83FD\u83F2\u83CA\u8438\u840E\u8404\u83DC\u8407\u83D4\u83DF\u865B\u86DF\u86D9\u86ED\u86D4\u86DB\u86E4\u86D0\u86DE\u8857\u88C1\u88C2\u88B1\u8983\u8996\u8A3B\u8A60\u8A55\u8A5E\u8A3C\u8A41"],["b640","\u8A54\u8A5B\u8A50\u8A46\u8A34\u8A3A\u8A36\u8A56\u8C61\u8C82\u8CAF\u8CBC\u8CB3\u8CBD\u8CC1\u8CBB\u8CC0\u8CB4\u8CB7\u8CB6\u8CBF\u8CB8\u8D8A\u8D85\u8D81\u8DCE\u8DDD\u8DCB\u8DDA\u8DD1\u8DCC\u8DDB\u8DC6\u8EFB\u8EF8\u8EFC\u8F9C\u902E\u9035\u9031\u9038\u9032\u9036\u9102\u90F5\u9109\u90FE\u9163\u9165\u91CF\u9214\u9215\u9223\u9209\u921E\u920D\u9210\u9207\u9211\u9594\u958F\u958B\u9591"],["b6a1","\u9593\u9592\u958E\u968A\u968E\u968B\u967D\u9685\u9686\u968D\u9672\u9684\u96C1\u96C5\u96C4\u96C6\u96C7\u96EF\u96F2\u97CC\u9805\u9806\u9808\u98E7\u98EA\u98EF\u98E9\u98F2\u98ED\u99AE\u99AD\u9EC3\u9ECD\u9ED1\u4E82\u50AD\u50B5\u50B2\u50B3\u50C5\u50BE\u50AC\u50B7\u50BB\u50AF\u50C7\u527F\u5277\u527D\u52DF\u52E6\u52E4\u52E2\u52E3\u532F\u55DF\u55E8\u55D3\u55E6\u55CE\u55DC\u55C7\u55D1\u55E3\u55E4\u55EF\u55DA\u55E1\u55C5\u55C6\u55E5\u55C9\u5712\u5713\u585E\u5851\u5858\u5857\u585A\u5854\u586B\u584C\u586D\u584A\u5862\u5852\u584B\u5967\u5AC1\u5AC9\u5ACC\u5ABE\u5ABD\u5ABC"],["b740","\u5AB3\u5AC2\u5AB2\u5D69\u5D6F\u5E4C\u5E79\u5EC9\u5EC8\u5F12\u5F59\u5FAC\u5FAE\u611A\u610F\u6148\u611F\u60F3\u611B\u60F9\u6101\u6108\u614E\u614C\u6144\u614D\u613E\u6134\u6127\u610D\u6106\u6137\u6221\u6222\u6413\u643E\u641E\u642A\u642D\u643D\u642C\u640F\u641C\u6414\u640D\u6436\u6416\u6417\u6406\u656C\u659F\u65B0\u6697\u6689\u6687\u6688\u6696\u6684\u6698\u668D\u6703\u6994\u696D"],["b7a1","\u695A\u6977\u6960\u6954\u6975\u6930\u6982\u694A\u6968\u696B\u695E\u6953\u6979\u6986\u695D\u6963\u695B\u6B47\u6B72\u6BC0\u6BBF\u6BD3\u6BFD\u6EA2\u6EAF\u6ED3\u6EB6\u6EC2\u6E90\u6E9D\u6EC7\u6EC5\u6EA5\u6E98\u6EBC\u6EBA\u6EAB\u6ED1\u6E96\u6E9C\u6EC4\u6ED4\u6EAA\u6EA7\u6EB4\u714E\u7159\u7169\u7164\u7149\u7167\u715C\u716C\u7166\u714C\u7165\u715E\u7146\u7168\u7156\u723A\u7252\u7337\u7345\u733F\u733E\u746F\u745A\u7455\u745F\u745E\u7441\u743F\u7459\u745B\u745C\u7576\u7578\u7600\u75F0\u7601\u75F2\u75F1\u75FA\u75FF\u75F4\u75F3\u76DE\u76DF\u775B\u776B\u7766\u775E\u7763"],["b840","\u7779\u776A\u776C\u775C\u7765\u7768\u7762\u77EE\u788E\u78B0\u7897\u7898\u788C\u7889\u787C\u7891\u7893\u787F\u797A\u797F\u7981\u842C\u79BD\u7A1C\u7A1A\u7A20\u7A14\u7A1F\u7A1E\u7A9F\u7AA0\u7B77\u7BC0\u7B60\u7B6E\u7B67\u7CB1\u7CB3\u7CB5\u7D93\u7D79\u7D91\u7D81\u7D8F\u7D5B\u7F6E\u7F69\u7F6A\u7F72\u7FA9\u7FA8\u7FA4\u8056\u8058\u8086\u8084\u8171\u8170\u8178\u8165\u816E\u8173\u816B"],["b8a1","\u8179\u817A\u8166\u8205\u8247\u8482\u8477\u843D\u8431\u8475\u8466\u846B\u8449\u846C\u845B\u843C\u8435\u8461\u8463\u8469\u846D\u8446\u865E\u865C\u865F\u86F9\u8713\u8708\u8707\u8700\u86FE\u86FB\u8702\u8703\u8706\u870A\u8859\u88DF\u88D4\u88D9\u88DC\u88D8\u88DD\u88E1\u88CA\u88D5\u88D2\u899C\u89E3\u8A6B\u8A72\u8A73\u8A66\u8A69\u8A70\u8A87\u8A7C\u8A63\u8AA0\u8A71\u8A85\u8A6D\u8A62\u8A6E\u8A6C\u8A79\u8A7B\u8A3E\u8A68\u8C62\u8C8A\u8C89\u8CCA\u8CC7\u8CC8\u8CC4\u8CB2\u8CC3\u8CC2\u8CC5\u8DE1\u8DDF\u8DE8\u8DEF\u8DF3\u8DFA\u8DEA\u8DE4\u8DE6\u8EB2\u8F03\u8F09\u8EFE\u8F0A"],["b940","\u8F9F\u8FB2\u904B\u904A\u9053\u9042\u9054\u903C\u9055\u9050\u9047\u904F\u904E\u904D\u9051\u903E\u9041\u9112\u9117\u916C\u916A\u9169\u91C9\u9237\u9257\u9238\u923D\u9240\u923E\u925B\u924B\u9264\u9251\u9234\u9249\u924D\u9245\u9239\u923F\u925A\u9598\u9698\u9694\u9695\u96CD\u96CB\u96C9\u96CA\u96F7\u96FB\u96F9\u96F6\u9756\u9774\u9776\u9810\u9811\u9813\u980A\u9812\u980C\u98FC\u98F4"],["b9a1","\u98FD\u98FE\u99B3\u99B1\u99B4\u9AE1\u9CE9\u9E82\u9F0E\u9F13\u9F20\u50E7\u50EE\u50E5\u50D6\u50ED\u50DA\u50D5\u50CF\u50D1\u50F1\u50CE\u50E9\u5162\u51F3\u5283\u5282\u5331\u53AD\u55FE\u5600\u561B\u5617\u55FD\u5614\u5606\u5609\u560D\u560E\u55F7\u5616\u561F\u5608\u5610\u55F6\u5718\u5716\u5875\u587E\u5883\u5893\u588A\u5879\u5885\u587D\u58FD\u5925\u5922\u5924\u596A\u5969\u5AE1\u5AE6\u5AE9\u5AD7\u5AD6\u5AD8\u5AE3\u5B75\u5BDE\u5BE7\u5BE1\u5BE5\u5BE6\u5BE8\u5BE2\u5BE4\u5BDF\u5C0D\u5C62\u5D84\u5D87\u5E5B\u5E63\u5E55\u5E57\u5E54\u5ED3\u5ED6\u5F0A\u5F46\u5F70\u5FB9\u6147"],["ba40","\u613F\u614B\u6177\u6162\u6163\u615F\u615A\u6158\u6175\u622A\u6487\u6458\u6454\u64A4\u6478\u645F\u647A\u6451\u6467\u6434\u646D\u647B\u6572\u65A1\u65D7\u65D6\u66A2\u66A8\u669D\u699C\u69A8\u6995\u69C1\u69AE\u69D3\u69CB\u699B\u69B7\u69BB\u69AB\u69B4\u69D0\u69CD\u69AD\u69CC\u69A6\u69C3\u69A3\u6B49\u6B4C\u6C33\u6F33\u6F14\u6EFE\u6F13\u6EF4\u6F29\u6F3E\u6F20\u6F2C\u6F0F\u6F02\u6F22"],["baa1","\u6EFF\u6EEF\u6F06\u6F31\u6F38\u6F32\u6F23\u6F15\u6F2B\u6F2F\u6F88\u6F2A\u6EEC\u6F01\u6EF2\u6ECC\u6EF7\u7194\u7199\u717D\u718A\u7184\u7192\u723E\u7292\u7296\u7344\u7350\u7464\u7463\u746A\u7470\u746D\u7504\u7591\u7627\u760D\u760B\u7609\u7613\u76E1\u76E3\u7784\u777D\u777F\u7761\u78C1\u789F\u78A7\u78B3\u78A9\u78A3\u798E\u798F\u798D\u7A2E\u7A31\u7AAA\u7AA9\u7AED\u7AEF\u7BA1\u7B95\u7B8B\u7B75\u7B97\u7B9D\u7B94\u7B8F\u7BB8\u7B87\u7B84\u7CB9\u7CBD\u7CBE\u7DBB\u7DB0\u7D9C\u7DBD\u7DBE\u7DA0\u7DCA\u7DB4\u7DB2\u7DB1\u7DBA\u7DA2\u7DBF\u7DB5\u7DB8\u7DAD\u7DD2\u7DC7\u7DAC"],["bb40","\u7F70\u7FE0\u7FE1\u7FDF\u805E\u805A\u8087\u8150\u8180\u818F\u8188\u818A\u817F\u8182\u81E7\u81FA\u8207\u8214\u821E\u824B\u84C9\u84BF\u84C6\u84C4\u8499\u849E\u84B2\u849C\u84CB\u84B8\u84C0\u84D3\u8490\u84BC\u84D1\u84CA\u873F\u871C\u873B\u8722\u8725\u8734\u8718\u8755\u8737\u8729\u88F3\u8902\u88F4\u88F9\u88F8\u88FD\u88E8\u891A\u88EF\u8AA6\u8A8C\u8A9E\u8AA3\u8A8D\u8AA1\u8A93\u8AA4"],["bba1","\u8AAA\u8AA5\u8AA8\u8A98\u8A91\u8A9A\u8AA7\u8C6A\u8C8D\u8C8C\u8CD3\u8CD1\u8CD2\u8D6B\u8D99\u8D95\u8DFC\u8F14\u8F12\u8F15\u8F13\u8FA3\u9060\u9058\u905C\u9063\u9059\u905E\u9062\u905D\u905B\u9119\u9118\u911E\u9175\u9178\u9177\u9174\u9278\u9280\u9285\u9298\u9296\u927B\u9293\u929C\u92A8\u927C\u9291\u95A1\u95A8\u95A9\u95A3\u95A5\u95A4\u9699\u969C\u969B\u96CC\u96D2\u9700\u977C\u9785\u97F6\u9817\u9818\u98AF\u98B1\u9903\u9905\u990C\u9909\u99C1\u9AAF\u9AB0\u9AE6\u9B41\u9B42\u9CF4\u9CF6\u9CF3\u9EBC\u9F3B\u9F4A\u5104\u5100\u50FB\u50F5\u50F9\u5102\u5108\u5109\u5105\u51DC"],["bc40","\u5287\u5288\u5289\u528D\u528A\u52F0\u53B2\u562E\u563B\u5639\u5632\u563F\u5634\u5629\u5653\u564E\u5657\u5674\u5636\u562F\u5630\u5880\u589F\u589E\u58B3\u589C\u58AE\u58A9\u58A6\u596D\u5B09\u5AFB\u5B0B\u5AF5\u5B0C\u5B08\u5BEE\u5BEC\u5BE9\u5BEB\u5C64\u5C65\u5D9D\u5D94\u5E62\u5E5F\u5E61\u5EE2\u5EDA\u5EDF\u5EDD\u5EE3\u5EE0\u5F48\u5F71\u5FB7\u5FB5\u6176\u6167\u616E\u615D\u6155\u6182"],["bca1","\u617C\u6170\u616B\u617E\u61A7\u6190\u61AB\u618E\u61AC\u619A\u61A4\u6194\u61AE\u622E\u6469\u646F\u6479\u649E\u64B2\u6488\u6490\u64B0\u64A5\u6493\u6495\u64A9\u6492\u64AE\u64AD\u64AB\u649A\u64AC\u6499\u64A2\u64B3\u6575\u6577\u6578\u66AE\u66AB\u66B4\u66B1\u6A23\u6A1F\u69E8\u6A01\u6A1E\u6A19\u69FD\u6A21\u6A13\u6A0A\u69F3\u6A02\u6A05\u69ED\u6A11\u6B50\u6B4E\u6BA4\u6BC5\u6BC6\u6F3F\u6F7C\u6F84\u6F51\u6F66\u6F54\u6F86\u6F6D\u6F5B\u6F78\u6F6E\u6F8E\u6F7A\u6F70\u6F64\u6F97\u6F58\u6ED5\u6F6F\u6F60\u6F5F\u719F\u71AC\u71B1\u71A8\u7256\u729B\u734E\u7357\u7469\u748B\u7483"],["bd40","\u747E\u7480\u757F\u7620\u7629\u761F\u7624\u7626\u7621\u7622\u769A\u76BA\u76E4\u778E\u7787\u778C\u7791\u778B\u78CB\u78C5\u78BA\u78CA\u78BE\u78D5\u78BC\u78D0\u7A3F\u7A3C\u7A40\u7A3D\u7A37\u7A3B\u7AAF\u7AAE\u7BAD\u7BB1\u7BC4\u7BB4\u7BC6\u7BC7\u7BC1\u7BA0\u7BCC\u7CCA\u7DE0\u7DF4\u7DEF\u7DFB\u7DD8\u7DEC\u7DDD\u7DE8\u7DE3\u7DDA\u7DDE\u7DE9\u7D9E\u7DD9\u7DF2\u7DF9\u7F75\u7F77\u7FAF"],["bda1","\u7FE9\u8026\u819B\u819C\u819D\u81A0\u819A\u8198\u8517\u853D\u851A\u84EE\u852C\u852D\u8513\u8511\u8523\u8521\u8514\u84EC\u8525\u84FF\u8506\u8782\u8774\u8776\u8760\u8766\u8778\u8768\u8759\u8757\u874C\u8753\u885B\u885D\u8910\u8907\u8912\u8913\u8915\u890A\u8ABC\u8AD2\u8AC7\u8AC4\u8A95\u8ACB\u8AF8\u8AB2\u8AC9\u8AC2\u8ABF\u8AB0\u8AD6\u8ACD\u8AB6\u8AB9\u8ADB\u8C4C\u8C4E\u8C6C\u8CE0\u8CDE\u8CE6\u8CE4\u8CEC\u8CED\u8CE2\u8CE3\u8CDC\u8CEA\u8CE1\u8D6D\u8D9F\u8DA3\u8E2B\u8E10\u8E1D\u8E22\u8E0F\u8E29\u8E1F\u8E21\u8E1E\u8EBA\u8F1D\u8F1B\u8F1F\u8F29\u8F26\u8F2A\u8F1C\u8F1E"],["be40","\u8F25\u9069\u906E\u9068\u906D\u9077\u9130\u912D\u9127\u9131\u9187\u9189\u918B\u9183\u92C5\u92BB\u92B7\u92EA\u92AC\u92E4\u92C1\u92B3\u92BC\u92D2\u92C7\u92F0\u92B2\u95AD\u95B1\u9704\u9706\u9707\u9709\u9760\u978D\u978B\u978F\u9821\u982B\u981C\u98B3\u990A\u9913\u9912\u9918\u99DD\u99D0\u99DF\u99DB\u99D1\u99D5\u99D2\u99D9\u9AB7\u9AEE\u9AEF\u9B27\u9B45\u9B44\u9B77\u9B6F\u9D06\u9D09"],["bea1","\u9D03\u9EA9\u9EBE\u9ECE\u58A8\u9F52\u5112\u5118\u5114\u5110\u5115\u5180\u51AA\u51DD\u5291\u5293\u52F3\u5659\u566B\u5679\u5669\u5664\u5678\u566A\u5668\u5665\u5671\u566F\u566C\u5662\u5676\u58C1\u58BE\u58C7\u58C5\u596E\u5B1D\u5B34\u5B78\u5BF0\u5C0E\u5F4A\u61B2\u6191\u61A9\u618A\u61CD\u61B6\u61BE\u61CA\u61C8\u6230\u64C5\u64C1\u64CB\u64BB\u64BC\u64DA\u64C4\u64C7\u64C2\u64CD\u64BF\u64D2\u64D4\u64BE\u6574\u66C6\u66C9\u66B9\u66C4\u66C7\u66B8\u6A3D\u6A38\u6A3A\u6A59\u6A6B\u6A58\u6A39\u6A44\u6A62\u6A61\u6A4B\u6A47\u6A35\u6A5F\u6A48\u6B59\u6B77\u6C05\u6FC2\u6FB1\u6FA1"],["bf40","\u6FC3\u6FA4\u6FC1\u6FA7\u6FB3\u6FC0\u6FB9\u6FB6\u6FA6\u6FA0\u6FB4\u71BE\u71C9\u71D0\u71D2\u71C8\u71D5\u71B9\u71CE\u71D9\u71DC\u71C3\u71C4\u7368\u749C\u74A3\u7498\u749F\u749E\u74E2\u750C\u750D\u7634\u7638\u763A\u76E7\u76E5\u77A0\u779E\u779F\u77A5\u78E8\u78DA\u78EC\u78E7\u79A6\u7A4D\u7A4E\u7A46\u7A4C\u7A4B\u7ABA\u7BD9\u7C11\u7BC9\u7BE4\u7BDB\u7BE1\u7BE9\u7BE6\u7CD5\u7CD6\u7E0A"],["bfa1","\u7E11\u7E08\u7E1B\u7E23\u7E1E\u7E1D\u7E09\u7E10\u7F79\u7FB2\u7FF0\u7FF1\u7FEE\u8028\u81B3\u81A9\u81A8\u81FB\u8208\u8258\u8259\u854A\u8559\u8548\u8568\u8569\u8543\u8549\u856D\u856A\u855E\u8783\u879F\u879E\u87A2\u878D\u8861\u892A\u8932\u8925\u892B\u8921\u89AA\u89A6\u8AE6\u8AFA\u8AEB\u8AF1\u8B00\u8ADC\u8AE7\u8AEE\u8AFE\u8B01\u8B02\u8AF7\u8AED\u8AF3\u8AF6\u8AFC\u8C6B\u8C6D\u8C93\u8CF4\u8E44\u8E31\u8E34\u8E42\u8E39\u8E35\u8F3B\u8F2F\u8F38\u8F33\u8FA8\u8FA6\u9075\u9074\u9078\u9072\u907C\u907A\u9134\u9192\u9320\u9336\u92F8\u9333\u932F\u9322\u92FC\u932B\u9304\u931A"],["c040","\u9310\u9326\u9321\u9315\u932E\u9319\u95BB\u96A7\u96A8\u96AA\u96D5\u970E\u9711\u9716\u970D\u9713\u970F\u975B\u975C\u9766\u9798\u9830\u9838\u983B\u9837\u982D\u9839\u9824\u9910\u9928\u991E\u991B\u9921\u991A\u99ED\u99E2\u99F1\u9AB8\u9ABC\u9AFB\u9AED\u9B28\u9B91\u9D15\u9D23\u9D26\u9D28\u9D12\u9D1B\u9ED8\u9ED4\u9F8D\u9F9C\u512A\u511F\u5121\u5132\u52F5\u568E\u5680\u5690\u5685\u5687"],["c0a1","\u568F\u58D5\u58D3\u58D1\u58CE\u5B30\u5B2A\u5B24\u5B7A\u5C37\u5C68\u5DBC\u5DBA\u5DBD\u5DB8\u5E6B\u5F4C\u5FBD\u61C9\u61C2\u61C7\u61E6\u61CB\u6232\u6234\u64CE\u64CA\u64D8\u64E0\u64F0\u64E6\u64EC\u64F1\u64E2\u64ED\u6582\u6583\u66D9\u66D6\u6A80\u6A94\u6A84\u6AA2\u6A9C\u6ADB\u6AA3\u6A7E\u6A97\u6A90\u6AA0\u6B5C\u6BAE\u6BDA\u6C08\u6FD8\u6FF1\u6FDF\u6FE0\u6FDB\u6FE4\u6FEB\u6FEF\u6F80\u6FEC\u6FE1\u6FE9\u6FD5\u6FEE\u6FF0\u71E7\u71DF\u71EE\u71E6\u71E5\u71ED\u71EC\u71F4\u71E0\u7235\u7246\u7370\u7372\u74A9\u74B0\u74A6\u74A8\u7646\u7642\u764C\u76EA\u77B3\u77AA\u77B0\u77AC"],["c140","\u77A7\u77AD\u77EF\u78F7\u78FA\u78F4\u78EF\u7901\u79A7\u79AA\u7A57\u7ABF\u7C07\u7C0D\u7BFE\u7BF7\u7C0C\u7BE0\u7CE0\u7CDC\u7CDE\u7CE2\u7CDF\u7CD9\u7CDD\u7E2E\u7E3E\u7E46\u7E37\u7E32\u7E43\u7E2B\u7E3D\u7E31\u7E45\u7E41\u7E34\u7E39\u7E48\u7E35\u7E3F\u7E2F\u7F44\u7FF3\u7FFC\u8071\u8072\u8070\u806F\u8073\u81C6\u81C3\u81BA\u81C2\u81C0\u81BF\u81BD\u81C9\u81BE\u81E8\u8209\u8271\u85AA"],["c1a1","\u8584\u857E\u859C\u8591\u8594\u85AF\u859B\u8587\u85A8\u858A\u8667\u87C0\u87D1\u87B3\u87D2\u87C6\u87AB\u87BB\u87BA\u87C8\u87CB\u893B\u8936\u8944\u8938\u893D\u89AC\u8B0E\u8B17\u8B19\u8B1B\u8B0A\u8B20\u8B1D\u8B04\u8B10\u8C41\u8C3F\u8C73\u8CFA\u8CFD\u8CFC\u8CF8\u8CFB\u8DA8\u8E49\u8E4B\u8E48\u8E4A\u8F44\u8F3E\u8F42\u8F45\u8F3F\u907F\u907D\u9084\u9081\u9082\u9080\u9139\u91A3\u919E\u919C\u934D\u9382\u9328\u9375\u934A\u9365\u934B\u9318\u937E\u936C\u935B\u9370\u935A\u9354\u95CA\u95CB\u95CC\u95C8\u95C6\u96B1\u96B8\u96D6\u971C\u971E\u97A0\u97D3\u9846\u98B6\u9935\u9A01"],["c240","\u99FF\u9BAE\u9BAB\u9BAA\u9BAD\u9D3B\u9D3F\u9E8B\u9ECF\u9EDE\u9EDC\u9EDD\u9EDB\u9F3E\u9F4B\u53E2\u5695\u56AE\u58D9\u58D8\u5B38\u5F5D\u61E3\u6233\u64F4\u64F2\u64FE\u6506\u64FA\u64FB\u64F7\u65B7\u66DC\u6726\u6AB3\u6AAC\u6AC3\u6ABB\u6AB8\u6AC2\u6AAE\u6AAF\u6B5F\u6B78\u6BAF\u7009\u700B\u6FFE\u7006\u6FFA\u7011\u700F\u71FB\u71FC\u71FE\u71F8\u7377\u7375\u74A7\u74BF\u7515\u7656\u7658"],["c2a1","\u7652\u77BD\u77BF\u77BB\u77BC\u790E\u79AE\u7A61\u7A62\u7A60\u7AC4\u7AC5\u7C2B\u7C27\u7C2A\u7C1E\u7C23\u7C21\u7CE7\u7E54\u7E55\u7E5E\u7E5A\u7E61\u7E52\u7E59\u7F48\u7FF9\u7FFB\u8077\u8076\u81CD\u81CF\u820A\u85CF\u85A9\u85CD\u85D0\u85C9\u85B0\u85BA\u85B9\u85A6\u87EF\u87EC\u87F2\u87E0\u8986\u89B2\u89F4\u8B28\u8B39\u8B2C\u8B2B\u8C50\u8D05\u8E59\u8E63\u8E66\u8E64\u8E5F\u8E55\u8EC0\u8F49\u8F4D\u9087\u9083\u9088\u91AB\u91AC\u91D0\u9394\u938A\u9396\u93A2\u93B3\u93AE\u93AC\u93B0\u9398\u939A\u9397\u95D4\u95D6\u95D0\u95D5\u96E2\u96DC\u96D9\u96DB\u96DE\u9724\u97A3\u97A6"],["c340","\u97AD\u97F9\u984D\u984F\u984C\u984E\u9853\u98BA\u993E\u993F\u993D\u992E\u99A5\u9A0E\u9AC1\u9B03\u9B06\u9B4F\u9B4E\u9B4D\u9BCA\u9BC9\u9BFD\u9BC8\u9BC0\u9D51\u9D5D\u9D60\u9EE0\u9F15\u9F2C\u5133\u56A5\u58DE\u58DF\u58E2\u5BF5\u9F90\u5EEC\u61F2\u61F7\u61F6\u61F5\u6500\u650F\u66E0\u66DD\u6AE5\u6ADD\u6ADA\u6AD3\u701B\u701F\u7028\u701A\u701D\u7015\u7018\u7206\u720D\u7258\u72A2\u7378"],["c3a1","\u737A\u74BD\u74CA\u74E3\u7587\u7586\u765F\u7661\u77C7\u7919\u79B1\u7A6B\u7A69\u7C3E\u7C3F\u7C38\u7C3D\u7C37\u7C40\u7E6B\u7E6D\u7E79\u7E69\u7E6A\u7F85\u7E73\u7FB6\u7FB9\u7FB8\u81D8\u85E9\u85DD\u85EA\u85D5\u85E4\u85E5\u85F7\u87FB\u8805\u880D\u87F9\u87FE\u8960\u895F\u8956\u895E\u8B41\u8B5C\u8B58\u8B49\u8B5A\u8B4E\u8B4F\u8B46\u8B59\u8D08\u8D0A\u8E7C\u8E72\u8E87\u8E76\u8E6C\u8E7A\u8E74\u8F54\u8F4E\u8FAD\u908A\u908B\u91B1\u91AE\u93E1\u93D1\u93DF\u93C3\u93C8\u93DC\u93DD\u93D6\u93E2\u93CD\u93D8\u93E4\u93D7\u93E8\u95DC\u96B4\u96E3\u972A\u9727\u9761\u97DC\u97FB\u985E"],["c440","\u9858\u985B\u98BC\u9945\u9949\u9A16\u9A19\u9B0D\u9BE8\u9BE7\u9BD6\u9BDB\u9D89\u9D61\u9D72\u9D6A\u9D6C\u9E92\u9E97\u9E93\u9EB4\u52F8\u56A8\u56B7\u56B6\u56B4\u56BC\u58E4\u5B40\u5B43\u5B7D\u5BF6\u5DC9\u61F8\u61FA\u6518\u6514\u6519\u66E6\u6727\u6AEC\u703E\u7030\u7032\u7210\u737B\u74CF\u7662\u7665\u7926\u792A\u792C\u792B\u7AC7\u7AF6\u7C4C\u7C43\u7C4D\u7CEF\u7CF0\u8FAE\u7E7D\u7E7C"],["c4a1","\u7E82\u7F4C\u8000\u81DA\u8266\u85FB\u85F9\u8611\u85FA\u8606\u860B\u8607\u860A\u8814\u8815\u8964\u89BA\u89F8\u8B70\u8B6C\u8B66\u8B6F\u8B5F\u8B6B\u8D0F\u8D0D\u8E89\u8E81\u8E85\u8E82\u91B4\u91CB\u9418\u9403\u93FD\u95E1\u9730\u98C4\u9952\u9951\u99A8\u9A2B\u9A30\u9A37\u9A35\u9C13\u9C0D\u9E79\u9EB5\u9EE8\u9F2F\u9F5F\u9F63\u9F61\u5137\u5138\u56C1\u56C0\u56C2\u5914\u5C6C\u5DCD\u61FC\u61FE\u651D\u651C\u6595\u66E9\u6AFB\u6B04\u6AFA\u6BB2\u704C\u721B\u72A7\u74D6\u74D4\u7669\u77D3\u7C50\u7E8F\u7E8C\u7FBC\u8617\u862D\u861A\u8823\u8822\u8821\u881F\u896A\u896C\u89BD\u8B74"],["c540","\u8B77\u8B7D\u8D13\u8E8A\u8E8D\u8E8B\u8F5F\u8FAF\u91BA\u942E\u9433\u9435\u943A\u9438\u9432\u942B\u95E2\u9738\u9739\u9732\u97FF\u9867\u9865\u9957\u9A45\u9A43\u9A40\u9A3E\u9ACF\u9B54\u9B51\u9C2D\u9C25\u9DAF\u9DB4\u9DC2\u9DB8\u9E9D\u9EEF\u9F19\u9F5C\u9F66\u9F67\u513C\u513B\u56C8\u56CA\u56C9\u5B7F\u5DD4\u5DD2\u5F4E\u61FF\u6524\u6B0A\u6B61\u7051\u7058\u7380\u74E4\u758A\u766E\u766C"],["c5a1","\u79B3\u7C60\u7C5F\u807E\u807D\u81DF\u8972\u896F\u89FC\u8B80\u8D16\u8D17\u8E91\u8E93\u8F61\u9148\u9444\u9451\u9452\u973D\u973E\u97C3\u97C1\u986B\u9955\u9A55\u9A4D\u9AD2\u9B1A\u9C49\u9C31\u9C3E\u9C3B\u9DD3\u9DD7\u9F34\u9F6C\u9F6A\u9F94\u56CC\u5DD6\u6200\u6523\u652B\u652A\u66EC\u6B10\u74DA\u7ACA\u7C64\u7C63\u7C65\u7E93\u7E96\u7E94\u81E2\u8638\u863F\u8831\u8B8A\u9090\u908F\u9463\u9460\u9464\u9768\u986F\u995C\u9A5A\u9A5B\u9A57\u9AD3\u9AD4\u9AD1\u9C54\u9C57\u9C56\u9DE5\u9E9F\u9EF4\u56D1\u58E9\u652C\u705E\u7671\u7672\u77D7\u7F50\u7F88\u8836\u8839\u8862\u8B93\u8B92"],["c640","\u8B96\u8277\u8D1B\u91C0\u946A\u9742\u9748\u9744\u97C6\u9870\u9A5F\u9B22\u9B58\u9C5F\u9DF9\u9DFA\u9E7C\u9E7D\u9F07\u9F77\u9F72\u5EF3\u6B16\u7063\u7C6C\u7C6E\u883B\u89C0\u8EA1\u91C1\u9472\u9470\u9871\u995E\u9AD6\u9B23\u9ECC\u7064\u77DA\u8B9A\u9477\u97C9\u9A62\u9A65\u7E9C\u8B9C\u8EAA\u91C5\u947D\u947E\u947C\u9C77\u9C78\u9EF7\u8C54\u947F\u9E1A\u7228\u9A6A\u9B31\u9E1B\u9E1E\u7C72"],["c940","\u4E42\u4E5C\u51F5\u531A\u5382\u4E07\u4E0C\u4E47\u4E8D\u56D7\uFA0C\u5C6E\u5F73\u4E0F\u5187\u4E0E\u4E2E\u4E93\u4EC2\u4EC9\u4EC8\u5198\u52FC\u536C\u53B9\u5720\u5903\u592C\u5C10\u5DFF\u65E1\u6BB3\u6BCC\u6C14\u723F\u4E31\u4E3C\u4EE8\u4EDC\u4EE9\u4EE1\u4EDD\u4EDA\u520C\u531C\u534C\u5722\u5723\u5917\u592F\u5B81\u5B84\u5C12\u5C3B\u5C74\u5C73\u5E04\u5E80\u5E82\u5FC9\u6209\u6250\u6C15"],["c9a1","\u6C36\u6C43\u6C3F\u6C3B\u72AE\u72B0\u738A\u79B8\u808A\u961E\u4F0E\u4F18\u4F2C\u4EF5\u4F14\u4EF1\u4F00\u4EF7\u4F08\u4F1D\u4F02\u4F05\u4F22\u4F13\u4F04\u4EF4\u4F12\u51B1\u5213\u5209\u5210\u52A6\u5322\u531F\u534D\u538A\u5407\u56E1\u56DF\u572E\u572A\u5734\u593C\u5980\u597C\u5985\u597B\u597E\u5977\u597F\u5B56\u5C15\u5C25\u5C7C\u5C7A\u5C7B\u5C7E\u5DDF\u5E75\u5E84\u5F02\u5F1A\u5F74\u5FD5\u5FD4\u5FCF\u625C\u625E\u6264\u6261\u6266\u6262\u6259\u6260\u625A\u6265\u65EF\u65EE\u673E\u6739\u6738\u673B\u673A\u673F\u673C\u6733\u6C18\u6C46\u6C52\u6C5C\u6C4F\u6C4A\u6C54\u6C4B"],["ca40","\u6C4C\u7071\u725E\u72B4\u72B5\u738E\u752A\u767F\u7A75\u7F51\u8278\u827C\u8280\u827D\u827F\u864D\u897E\u9099\u9097\u9098\u909B\u9094\u9622\u9624\u9620\u9623\u4F56\u4F3B\u4F62\u4F49\u4F53\u4F64\u4F3E\u4F67\u4F52\u4F5F\u4F41\u4F58\u4F2D\u4F33\u4F3F\u4F61\u518F\u51B9\u521C\u521E\u5221\u52AD\u52AE\u5309\u5363\u5372\u538E\u538F\u5430\u5437\u542A\u5454\u5445\u5419\u541C\u5425\u5418"],["caa1","\u543D\u544F\u5441\u5428\u5424\u5447\u56EE\u56E7\u56E5\u5741\u5745\u574C\u5749\u574B\u5752\u5906\u5940\u59A6\u5998\u59A0\u5997\u598E\u59A2\u5990\u598F\u59A7\u59A1\u5B8E\u5B92\u5C28\u5C2A\u5C8D\u5C8F\u5C88\u5C8B\u5C89\u5C92\u5C8A\u5C86\u5C93\u5C95\u5DE0\u5E0A\u5E0E\u5E8B\u5E89\u5E8C\u5E88\u5E8D\u5F05\u5F1D\u5F78\u5F76\u5FD2\u5FD1\u5FD0\u5FED\u5FE8\u5FEE\u5FF3\u5FE1\u5FE4\u5FE3\u5FFA\u5FEF\u5FF7\u5FFB\u6000\u5FF4\u623A\u6283\u628C\u628E\u628F\u6294\u6287\u6271\u627B\u627A\u6270\u6281\u6288\u6277\u627D\u6272\u6274\u6537\u65F0\u65F4\u65F3\u65F2\u65F5\u6745\u6747"],["cb40","\u6759\u6755\u674C\u6748\u675D\u674D\u675A\u674B\u6BD0\u6C19\u6C1A\u6C78\u6C67\u6C6B\u6C84\u6C8B\u6C8F\u6C71\u6C6F\u6C69\u6C9A\u6C6D\u6C87\u6C95\u6C9C\u6C66\u6C73\u6C65\u6C7B\u6C8E\u7074\u707A\u7263\u72BF\u72BD\u72C3\u72C6\u72C1\u72BA\u72C5\u7395\u7397\u7393\u7394\u7392\u753A\u7539\u7594\u7595\u7681\u793D\u8034\u8095\u8099\u8090\u8092\u809C\u8290\u828F\u8285\u828E\u8291\u8293"],["cba1","\u828A\u8283\u8284\u8C78\u8FC9\u8FBF\u909F\u90A1\u90A5\u909E\u90A7\u90A0\u9630\u9628\u962F\u962D\u4E33\u4F98\u4F7C\u4F85\u4F7D\u4F80\u4F87\u4F76\u4F74\u4F89\u4F84\u4F77\u4F4C\u4F97\u4F6A\u4F9A\u4F79\u4F81\u4F78\u4F90\u4F9C\u4F94\u4F9E\u4F92\u4F82\u4F95\u4F6B\u4F6E\u519E\u51BC\u51BE\u5235\u5232\u5233\u5246\u5231\u52BC\u530A\u530B\u533C\u5392\u5394\u5487\u547F\u5481\u5491\u5482\u5488\u546B\u547A\u547E\u5465\u546C\u5474\u5466\u548D\u546F\u5461\u5460\u5498\u5463\u5467\u5464\u56F7\u56F9\u576F\u5772\u576D\u576B\u5771\u5770\u5776\u5780\u5775\u577B\u5773\u5774\u5762"],["cc40","\u5768\u577D\u590C\u5945\u59B5\u59BA\u59CF\u59CE\u59B2\u59CC\u59C1\u59B6\u59BC\u59C3\u59D6\u59B1\u59BD\u59C0\u59C8\u59B4\u59C7\u5B62\u5B65\u5B93\u5B95\u5C44\u5C47\u5CAE\u5CA4\u5CA0\u5CB5\u5CAF\u5CA8\u5CAC\u5C9F\u5CA3\u5CAD\u5CA2\u5CAA\u5CA7\u5C9D\u5CA5\u5CB6\u5CB0\u5CA6\u5E17\u5E14\u5E19\u5F28\u5F22\u5F23\u5F24\u5F54\u5F82\u5F7E\u5F7D\u5FDE\u5FE5\u602D\u6026\u6019\u6032\u600B"],["cca1","\u6034\u600A\u6017\u6033\u601A\u601E\u602C\u6022\u600D\u6010\u602E\u6013\u6011\u600C\u6009\u601C\u6214\u623D\u62AD\u62B4\u62D1\u62BE\u62AA\u62B6\u62CA\u62AE\u62B3\u62AF\u62BB\u62A9\u62B0\u62B8\u653D\u65A8\u65BB\u6609\u65FC\u6604\u6612\u6608\u65FB\u6603\u660B\u660D\u6605\u65FD\u6611\u6610\u66F6\u670A\u6785\u676C\u678E\u6792\u6776\u677B\u6798\u6786\u6784\u6774\u678D\u678C\u677A\u679F\u6791\u6799\u6783\u677D\u6781\u6778\u6779\u6794\u6B25\u6B80\u6B7E\u6BDE\u6C1D\u6C93\u6CEC\u6CEB\u6CEE\u6CD9\u6CB6\u6CD4\u6CAD\u6CE7\u6CB7\u6CD0\u6CC2\u6CBA\u6CC3\u6CC6\u6CED\u6CF2"],["cd40","\u6CD2\u6CDD\u6CB4\u6C8A\u6C9D\u6C80\u6CDE\u6CC0\u6D30\u6CCD\u6CC7\u6CB0\u6CF9\u6CCF\u6CE9\u6CD1\u7094\u7098\u7085\u7093\u7086\u7084\u7091\u7096\u7082\u709A\u7083\u726A\u72D6\u72CB\u72D8\u72C9\u72DC\u72D2\u72D4\u72DA\u72CC\u72D1\u73A4\u73A1\u73AD\u73A6\u73A2\u73A0\u73AC\u739D\u74DD\u74E8\u753F\u7540\u753E\u758C\u7598\u76AF\u76F3\u76F1\u76F0\u76F5\u77F8\u77FC\u77F9\u77FB\u77FA"],["cda1","\u77F7\u7942\u793F\u79C5\u7A78\u7A7B\u7AFB\u7C75\u7CFD\u8035\u808F\u80AE\u80A3\u80B8\u80B5\u80AD\u8220\u82A0\u82C0\u82AB\u829A\u8298\u829B\u82B5\u82A7\u82AE\u82BC\u829E\u82BA\u82B4\u82A8\u82A1\u82A9\u82C2\u82A4\u82C3\u82B6\u82A2\u8670\u866F\u866D\u866E\u8C56\u8FD2\u8FCB\u8FD3\u8FCD\u8FD6\u8FD5\u8FD7\u90B2\u90B4\u90AF\u90B3\u90B0\u9639\u963D\u963C\u963A\u9643\u4FCD\u4FC5\u4FD3\u4FB2\u4FC9\u4FCB\u4FC1\u4FD4\u4FDC\u4FD9\u4FBB\u4FB3\u4FDB\u4FC7\u4FD6\u4FBA\u4FC0\u4FB9\u4FEC\u5244\u5249\u52C0\u52C2\u533D\u537C\u5397\u5396\u5399\u5398\u54BA\u54A1\u54AD\u54A5\u54CF"],["ce40","\u54C3\u830D\u54B7\u54AE\u54D6\u54B6\u54C5\u54C6\u54A0\u5470\u54BC\u54A2\u54BE\u5472\u54DE\u54B0\u57B5\u579E\u579F\u57A4\u578C\u5797\u579D\u579B\u5794\u5798\u578F\u5799\u57A5\u579A\u5795\u58F4\u590D\u5953\u59E1\u59DE\u59EE\u5A00\u59F1\u59DD\u59FA\u59FD\u59FC\u59F6\u59E4\u59F2\u59F7\u59DB\u59E9\u59F3\u59F5\u59E0\u59FE\u59F4\u59ED\u5BA8\u5C4C\u5CD0\u5CD8\u5CCC\u5CD7\u5CCB\u5CDB"],["cea1","\u5CDE\u5CDA\u5CC9\u5CC7\u5CCA\u5CD6\u5CD3\u5CD4\u5CCF\u5CC8\u5CC6\u5CCE\u5CDF\u5CF8\u5DF9\u5E21\u5E22\u5E23\u5E20\u5E24\u5EB0\u5EA4\u5EA2\u5E9B\u5EA3\u5EA5\u5F07\u5F2E\u5F56\u5F86\u6037\u6039\u6054\u6072\u605E\u6045\u6053\u6047\u6049\u605B\u604C\u6040\u6042\u605F\u6024\u6044\u6058\u6066\u606E\u6242\u6243\u62CF\u630D\u630B\u62F5\u630E\u6303\u62EB\u62F9\u630F\u630C\u62F8\u62F6\u6300\u6313\u6314\u62FA\u6315\u62FB\u62F0\u6541\u6543\u65AA\u65BF\u6636\u6621\u6632\u6635\u661C\u6626\u6622\u6633\u662B\u663A\u661D\u6634\u6639\u662E\u670F\u6710\u67C1\u67F2\u67C8\u67BA"],["cf40","\u67DC\u67BB\u67F8\u67D8\u67C0\u67B7\u67C5\u67EB\u67E4\u67DF\u67B5\u67CD\u67B3\u67F7\u67F6\u67EE\u67E3\u67C2\u67B9\u67CE\u67E7\u67F0\u67B2\u67FC\u67C6\u67ED\u67CC\u67AE\u67E6\u67DB\u67FA\u67C9\u67CA\u67C3\u67EA\u67CB\u6B28\u6B82\u6B84\u6BB6\u6BD6\u6BD8\u6BE0\u6C20\u6C21\u6D28\u6D34\u6D2D\u6D1F\u6D3C\u6D3F\u6D12\u6D0A\u6CDA\u6D33\u6D04\u6D19\u6D3A\u6D1A\u6D11\u6D00\u6D1D\u6D42"],["cfa1","\u6D01\u6D18\u6D37\u6D03\u6D0F\u6D40\u6D07\u6D20\u6D2C\u6D08\u6D22\u6D09\u6D10\u70B7\u709F\u70BE\u70B1\u70B0\u70A1\u70B4\u70B5\u70A9\u7241\u7249\u724A\u726C\u7270\u7273\u726E\u72CA\u72E4\u72E8\u72EB\u72DF\u72EA\u72E6\u72E3\u7385\u73CC\u73C2\u73C8\u73C5\u73B9\u73B6\u73B5\u73B4\u73EB\u73BF\u73C7\u73BE\u73C3\u73C6\u73B8\u73CB\u74EC\u74EE\u752E\u7547\u7548\u75A7\u75AA\u7679\u76C4\u7708\u7703\u7704\u7705\u770A\u76F7\u76FB\u76FA\u77E7\u77E8\u7806\u7811\u7812\u7805\u7810\u780F\u780E\u7809\u7803\u7813\u794A\u794C\u794B\u7945\u7944\u79D5\u79CD\u79CF\u79D6\u79CE\u7A80"],["d040","\u7A7E\u7AD1\u7B00\u7B01\u7C7A\u7C78\u7C79\u7C7F\u7C80\u7C81\u7D03\u7D08\u7D01\u7F58\u7F91\u7F8D\u7FBE\u8007\u800E\u800F\u8014\u8037\u80D8\u80C7\u80E0\u80D1\u80C8\u80C2\u80D0\u80C5\u80E3\u80D9\u80DC\u80CA\u80D5\u80C9\u80CF\u80D7\u80E6\u80CD\u81FF\u8221\u8294\u82D9\u82FE\u82F9\u8307\u82E8\u8300\u82D5\u833A\u82EB\u82D6\u82F4\u82EC\u82E1\u82F2\u82F5\u830C\u82FB\u82F6\u82F0\u82EA"],["d0a1","\u82E4\u82E0\u82FA\u82F3\u82ED\u8677\u8674\u867C\u8673\u8841\u884E\u8867\u886A\u8869\u89D3\u8A04\u8A07\u8D72\u8FE3\u8FE1\u8FEE\u8FE0\u90F1\u90BD\u90BF\u90D5\u90C5\u90BE\u90C7\u90CB\u90C8\u91D4\u91D3\u9654\u964F\u9651\u9653\u964A\u964E\u501E\u5005\u5007\u5013\u5022\u5030\u501B\u4FF5\u4FF4\u5033\u5037\u502C\u4FF6\u4FF7\u5017\u501C\u5020\u5027\u5035\u502F\u5031\u500E\u515A\u5194\u5193\u51CA\u51C4\u51C5\u51C8\u51CE\u5261\u525A\u5252\u525E\u525F\u5255\u5262\u52CD\u530E\u539E\u5526\u54E2\u5517\u5512\u54E7\u54F3\u54E4\u551A\u54FF\u5504\u5508\u54EB\u5511\u5505\u54F1"],["d140","\u550A\u54FB\u54F7\u54F8\u54E0\u550E\u5503\u550B\u5701\u5702\u57CC\u5832\u57D5\u57D2\u57BA\u57C6\u57BD\u57BC\u57B8\u57B6\u57BF\u57C7\u57D0\u57B9\u57C1\u590E\u594A\u5A19\u5A16\u5A2D\u5A2E\u5A15\u5A0F\u5A17\u5A0A\u5A1E\u5A33\u5B6C\u5BA7\u5BAD\u5BAC\u5C03\u5C56\u5C54\u5CEC\u5CFF\u5CEE\u5CF1\u5CF7\u5D00\u5CF9\u5E29\u5E28\u5EA8\u5EAE\u5EAA\u5EAC\u5F33\u5F30\u5F67\u605D\u605A\u6067"],["d1a1","\u6041\u60A2\u6088\u6080\u6092\u6081\u609D\u6083\u6095\u609B\u6097\u6087\u609C\u608E\u6219\u6246\u62F2\u6310\u6356\u632C\u6344\u6345\u6336\u6343\u63E4\u6339\u634B\u634A\u633C\u6329\u6341\u6334\u6358\u6354\u6359\u632D\u6347\u6333\u635A\u6351\u6338\u6357\u6340\u6348\u654A\u6546\u65C6\u65C3\u65C4\u65C2\u664A\u665F\u6647\u6651\u6712\u6713\u681F\u681A\u6849\u6832\u6833\u683B\u684B\u684F\u6816\u6831\u681C\u6835\u682B\u682D\u682F\u684E\u6844\u6834\u681D\u6812\u6814\u6826\u6828\u682E\u684D\u683A\u6825\u6820\u6B2C\u6B2F\u6B2D\u6B31\u6B34\u6B6D\u8082\u6B88\u6BE6\u6BE4"],["d240","\u6BE8\u6BE3\u6BE2\u6BE7\u6C25\u6D7A\u6D63\u6D64\u6D76\u6D0D\u6D61\u6D92\u6D58\u6D62\u6D6D\u6D6F\u6D91\u6D8D\u6DEF\u6D7F\u6D86\u6D5E\u6D67\u6D60\u6D97\u6D70\u6D7C\u6D5F\u6D82\u6D98\u6D2F\u6D68\u6D8B\u6D7E\u6D80\u6D84\u6D16\u6D83\u6D7B\u6D7D\u6D75\u6D90\u70DC\u70D3\u70D1\u70DD\u70CB\u7F39\u70E2\u70D7\u70D2\u70DE\u70E0\u70D4\u70CD\u70C5\u70C6\u70C7\u70DA\u70CE\u70E1\u7242\u7278"],["d2a1","\u7277\u7276\u7300\u72FA\u72F4\u72FE\u72F6\u72F3\u72FB\u7301\u73D3\u73D9\u73E5\u73D6\u73BC\u73E7\u73E3\u73E9\u73DC\u73D2\u73DB\u73D4\u73DD\u73DA\u73D7\u73D8\u73E8\u74DE\u74DF\u74F4\u74F5\u7521\u755B\u755F\u75B0\u75C1\u75BB\u75C4\u75C0\u75BF\u75B6\u75BA\u768A\u76C9\u771D\u771B\u7710\u7713\u7712\u7723\u7711\u7715\u7719\u771A\u7722\u7727\u7823\u782C\u7822\u7835\u782F\u7828\u782E\u782B\u7821\u7829\u7833\u782A\u7831\u7954\u795B\u794F\u795C\u7953\u7952\u7951\u79EB\u79EC\u79E0\u79EE\u79ED\u79EA\u79DC\u79DE\u79DD\u7A86\u7A89\u7A85\u7A8B\u7A8C\u7A8A\u7A87\u7AD8\u7B10"],["d340","\u7B04\u7B13\u7B05\u7B0F\u7B08\u7B0A\u7B0E\u7B09\u7B12\u7C84\u7C91\u7C8A\u7C8C\u7C88\u7C8D\u7C85\u7D1E\u7D1D\u7D11\u7D0E\u7D18\u7D16\u7D13\u7D1F\u7D12\u7D0F\u7D0C\u7F5C\u7F61\u7F5E\u7F60\u7F5D\u7F5B\u7F96\u7F92\u7FC3\u7FC2\u7FC0\u8016\u803E\u8039\u80FA\u80F2\u80F9\u80F5\u8101\u80FB\u8100\u8201\u822F\u8225\u8333\u832D\u8344\u8319\u8351\u8325\u8356\u833F\u8341\u8326\u831C\u8322"],["d3a1","\u8342\u834E\u831B\u832A\u8308\u833C\u834D\u8316\u8324\u8320\u8337\u832F\u8329\u8347\u8345\u834C\u8353\u831E\u832C\u834B\u8327\u8348\u8653\u8652\u86A2\u86A8\u8696\u868D\u8691\u869E\u8687\u8697\u8686\u868B\u869A\u8685\u86A5\u8699\u86A1\u86A7\u8695\u8698\u868E\u869D\u8690\u8694\u8843\u8844\u886D\u8875\u8876\u8872\u8880\u8871\u887F\u886F\u8883\u887E\u8874\u887C\u8A12\u8C47\u8C57\u8C7B\u8CA4\u8CA3\u8D76\u8D78\u8DB5\u8DB7\u8DB6\u8ED1\u8ED3\u8FFE\u8FF5\u9002\u8FFF\u8FFB\u9004\u8FFC\u8FF6\u90D6\u90E0\u90D9\u90DA\u90E3\u90DF\u90E5\u90D8\u90DB\u90D7\u90DC\u90E4\u9150"],["d440","\u914E\u914F\u91D5\u91E2\u91DA\u965C\u965F\u96BC\u98E3\u9ADF\u9B2F\u4E7F\u5070\u506A\u5061\u505E\u5060\u5053\u504B\u505D\u5072\u5048\u504D\u5041\u505B\u504A\u5062\u5015\u5045\u505F\u5069\u506B\u5063\u5064\u5046\u5040\u506E\u5073\u5057\u5051\u51D0\u526B\u526D\u526C\u526E\u52D6\u52D3\u532D\u539C\u5575\u5576\u553C\u554D\u5550\u5534\u552A\u5551\u5562\u5536\u5535\u5530\u5552\u5545"],["d4a1","\u550C\u5532\u5565\u554E\u5539\u5548\u552D\u553B\u5540\u554B\u570A\u5707\u57FB\u5814\u57E2\u57F6\u57DC\u57F4\u5800\u57ED\u57FD\u5808\u57F8\u580B\u57F3\u57CF\u5807\u57EE\u57E3\u57F2\u57E5\u57EC\u57E1\u580E\u57FC\u5810\u57E7\u5801\u580C\u57F1\u57E9\u57F0\u580D\u5804\u595C\u5A60\u5A58\u5A55\u5A67\u5A5E\u5A38\u5A35\u5A6D\u5A50\u5A5F\u5A65\u5A6C\u5A53\u5A64\u5A57\u5A43\u5A5D\u5A52\u5A44\u5A5B\u5A48\u5A8E\u5A3E\u5A4D\u5A39\u5A4C\u5A70\u5A69\u5A47\u5A51\u5A56\u5A42\u5A5C\u5B72\u5B6E\u5BC1\u5BC0\u5C59\u5D1E\u5D0B\u5D1D\u5D1A\u5D20\u5D0C\u5D28\u5D0D\u5D26\u5D25\u5D0F"],["d540","\u5D30\u5D12\u5D23\u5D1F\u5D2E\u5E3E\u5E34\u5EB1\u5EB4\u5EB9\u5EB2\u5EB3\u5F36\u5F38\u5F9B\u5F96\u5F9F\u608A\u6090\u6086\u60BE\u60B0\u60BA\u60D3\u60D4\u60CF\u60E4\u60D9\u60DD\u60C8\u60B1\u60DB\u60B7\u60CA\u60BF\u60C3\u60CD\u60C0\u6332\u6365\u638A\u6382\u637D\u63BD\u639E\u63AD\u639D\u6397\u63AB\u638E\u636F\u6387\u6390\u636E\u63AF\u6375\u639C\u636D\u63AE\u637C\u63A4\u633B\u639F"],["d5a1","\u6378\u6385\u6381\u6391\u638D\u6370\u6553\u65CD\u6665\u6661\u665B\u6659\u665C\u6662\u6718\u6879\u6887\u6890\u689C\u686D\u686E\u68AE\u68AB\u6956\u686F\u68A3\u68AC\u68A9\u6875\u6874\u68B2\u688F\u6877\u6892\u687C\u686B\u6872\u68AA\u6880\u6871\u687E\u689B\u6896\u688B\u68A0\u6889\u68A4\u6878\u687B\u6891\u688C\u688A\u687D\u6B36\u6B33\u6B37\u6B38\u6B91\u6B8F\u6B8D\u6B8E\u6B8C\u6C2A\u6DC0\u6DAB\u6DB4\u6DB3\u6E74\u6DAC\u6DE9\u6DE2\u6DB7\u6DF6\u6DD4\u6E00\u6DC8\u6DE0\u6DDF\u6DD6\u6DBE\u6DE5\u6DDC\u6DDD\u6DDB\u6DF4\u6DCA\u6DBD\u6DED\u6DF0\u6DBA\u6DD5\u6DC2\u6DCF\u6DC9"],["d640","\u6DD0\u6DF2\u6DD3\u6DFD\u6DD7\u6DCD\u6DE3\u6DBB\u70FA\u710D\u70F7\u7117\u70F4\u710C\u70F0\u7104\u70F3\u7110\u70FC\u70FF\u7106\u7113\u7100\u70F8\u70F6\u710B\u7102\u710E\u727E\u727B\u727C\u727F\u731D\u7317\u7307\u7311\u7318\u730A\u7308\u72FF\u730F\u731E\u7388\u73F6\u73F8\u73F5\u7404\u7401\u73FD\u7407\u7400\u73FA\u73FC\u73FF\u740C\u740B\u73F4\u7408\u7564\u7563\u75CE\u75D2\u75CF"],["d6a1","\u75CB\u75CC\u75D1\u75D0\u768F\u7689\u76D3\u7739\u772F\u772D\u7731\u7732\u7734\u7733\u773D\u7725\u773B\u7735\u7848\u7852\u7849\u784D\u784A\u784C\u7826\u7845\u7850\u7964\u7967\u7969\u796A\u7963\u796B\u7961\u79BB\u79FA\u79F8\u79F6\u79F7\u7A8F\u7A94\u7A90\u7B35\u7B47\u7B34\u7B25\u7B30\u7B22\u7B24\u7B33\u7B18\u7B2A\u7B1D\u7B31\u7B2B\u7B2D\u7B2F\u7B32\u7B38\u7B1A\u7B23\u7C94\u7C98\u7C96\u7CA3\u7D35\u7D3D\u7D38\u7D36\u7D3A\u7D45\u7D2C\u7D29\u7D41\u7D47\u7D3E\u7D3F\u7D4A\u7D3B\u7D28\u7F63\u7F95\u7F9C\u7F9D\u7F9B\u7FCA\u7FCB\u7FCD\u7FD0\u7FD1\u7FC7\u7FCF\u7FC9\u801F"],["d740","\u801E\u801B\u8047\u8043\u8048\u8118\u8125\u8119\u811B\u812D\u811F\u812C\u811E\u8121\u8115\u8127\u811D\u8122\u8211\u8238\u8233\u823A\u8234\u8232\u8274\u8390\u83A3\u83A8\u838D\u837A\u8373\u83A4\u8374\u838F\u8381\u8395\u8399\u8375\u8394\u83A9\u837D\u8383\u838C\u839D\u839B\u83AA\u838B\u837E\u83A5\u83AF\u8388\u8397\u83B0\u837F\u83A6\u8387\u83AE\u8376\u839A\u8659\u8656\u86BF\u86B7"],["d7a1","\u86C2\u86C1\u86C5\u86BA\u86B0\u86C8\u86B9\u86B3\u86B8\u86CC\u86B4\u86BB\u86BC\u86C3\u86BD\u86BE\u8852\u8889\u8895\u88A8\u88A2\u88AA\u889A\u8891\u88A1\u889F\u8898\u88A7\u8899\u889B\u8897\u88A4\u88AC\u888C\u8893\u888E\u8982\u89D6\u89D9\u89D5\u8A30\u8A27\u8A2C\u8A1E\u8C39\u8C3B\u8C5C\u8C5D\u8C7D\u8CA5\u8D7D\u8D7B\u8D79\u8DBC\u8DC2\u8DB9\u8DBF\u8DC1\u8ED8\u8EDE\u8EDD\u8EDC\u8ED7\u8EE0\u8EE1\u9024\u900B\u9011\u901C\u900C\u9021\u90EF\u90EA\u90F0\u90F4\u90F2\u90F3\u90D4\u90EB\u90EC\u90E9\u9156\u9158\u915A\u9153\u9155\u91EC\u91F4\u91F1\u91F3\u91F8\u91E4\u91F9\u91EA"],["d840","\u91EB\u91F7\u91E8\u91EE\u957A\u9586\u9588\u967C\u966D\u966B\u9671\u966F\u96BF\u976A\u9804\u98E5\u9997\u509B\u5095\u5094\u509E\u508B\u50A3\u5083\u508C\u508E\u509D\u5068\u509C\u5092\u5082\u5087\u515F\u51D4\u5312\u5311\u53A4\u53A7\u5591\u55A8\u55A5\u55AD\u5577\u5645\u55A2\u5593\u5588\u558F\u55B5\u5581\u55A3\u5592\u55A4\u557D\u558C\u55A6\u557F\u5595\u55A1\u558E\u570C\u5829\u5837"],["d8a1","\u5819\u581E\u5827\u5823\u5828\u57F5\u5848\u5825\u581C\u581B\u5833\u583F\u5836\u582E\u5839\u5838\u582D\u582C\u583B\u5961\u5AAF\u5A94\u5A9F\u5A7A\u5AA2\u5A9E\u5A78\u5AA6\u5A7C\u5AA5\u5AAC\u5A95\u5AAE\u5A37\u5A84\u5A8A\u5A97\u5A83\u5A8B\u5AA9\u5A7B\u5A7D\u5A8C\u5A9C\u5A8F\u5A93\u5A9D\u5BEA\u5BCD\u5BCB\u5BD4\u5BD1\u5BCA\u5BCE\u5C0C\u5C30\u5D37\u5D43\u5D6B\u5D41\u5D4B\u5D3F\u5D35\u5D51\u5D4E\u5D55\u5D33\u5D3A\u5D52\u5D3D\u5D31\u5D59\u5D42\u5D39\u5D49\u5D38\u5D3C\u5D32\u5D36\u5D40\u5D45\u5E44\u5E41\u5F58\u5FA6\u5FA5\u5FAB\u60C9\u60B9\u60CC\u60E2\u60CE\u60C4\u6114"],["d940","\u60F2\u610A\u6116\u6105\u60F5\u6113\u60F8\u60FC\u60FE\u60C1\u6103\u6118\u611D\u6110\u60FF\u6104\u610B\u624A\u6394\u63B1\u63B0\u63CE\u63E5\u63E8\u63EF\u63C3\u649D\u63F3\u63CA\u63E0\u63F6\u63D5\u63F2\u63F5\u6461\u63DF\u63BE\u63DD\u63DC\u63C4\u63D8\u63D3\u63C2\u63C7\u63CC\u63CB\u63C8\u63F0\u63D7\u63D9\u6532\u6567\u656A\u6564\u655C\u6568\u6565\u658C\u659D\u659E\u65AE\u65D0\u65D2"],["d9a1","\u667C\u666C\u667B\u6680\u6671\u6679\u666A\u6672\u6701\u690C\u68D3\u6904\u68DC\u692A\u68EC\u68EA\u68F1\u690F\u68D6\u68F7\u68EB\u68E4\u68F6\u6913\u6910\u68F3\u68E1\u6907\u68CC\u6908\u6970\u68B4\u6911\u68EF\u68C6\u6914\u68F8\u68D0\u68FD\u68FC\u68E8\u690B\u690A\u6917\u68CE\u68C8\u68DD\u68DE\u68E6\u68F4\u68D1\u6906\u68D4\u68E9\u6915\u6925\u68C7\u6B39\u6B3B\u6B3F\u6B3C\u6B94\u6B97\u6B99\u6B95\u6BBD\u6BF0\u6BF2\u6BF3\u6C30\u6DFC\u6E46\u6E47\u6E1F\u6E49\u6E88\u6E3C\u6E3D\u6E45\u6E62\u6E2B\u6E3F\u6E41\u6E5D\u6E73\u6E1C\u6E33\u6E4B\u6E40\u6E51\u6E3B\u6E03\u6E2E\u6E5E"],["da40","\u6E68\u6E5C\u6E61\u6E31\u6E28\u6E60\u6E71\u6E6B\u6E39\u6E22\u6E30\u6E53\u6E65\u6E27\u6E78\u6E64\u6E77\u6E55\u6E79\u6E52\u6E66\u6E35\u6E36\u6E5A\u7120\u711E\u712F\u70FB\u712E\u7131\u7123\u7125\u7122\u7132\u711F\u7128\u713A\u711B\u724B\u725A\u7288\u7289\u7286\u7285\u728B\u7312\u730B\u7330\u7322\u7331\u7333\u7327\u7332\u732D\u7326\u7323\u7335\u730C\u742E\u742C\u7430\u742B\u7416"],["daa1","\u741A\u7421\u742D\u7431\u7424\u7423\u741D\u7429\u7420\u7432\u74FB\u752F\u756F\u756C\u75E7\u75DA\u75E1\u75E6\u75DD\u75DF\u75E4\u75D7\u7695\u7692\u76DA\u7746\u7747\u7744\u774D\u7745\u774A\u774E\u774B\u774C\u77DE\u77EC\u7860\u7864\u7865\u785C\u786D\u7871\u786A\u786E\u7870\u7869\u7868\u785E\u7862\u7974\u7973\u7972\u7970\u7A02\u7A0A\u7A03\u7A0C\u7A04\u7A99\u7AE6\u7AE4\u7B4A\u7B3B\u7B44\u7B48\u7B4C\u7B4E\u7B40\u7B58\u7B45\u7CA2\u7C9E\u7CA8\u7CA1\u7D58\u7D6F\u7D63\u7D53\u7D56\u7D67\u7D6A\u7D4F\u7D6D\u7D5C\u7D6B\u7D52\u7D54\u7D69\u7D51\u7D5F\u7D4E\u7F3E\u7F3F\u7F65"],["db40","\u7F66\u7FA2\u7FA0\u7FA1\u7FD7\u8051\u804F\u8050\u80FE\u80D4\u8143\u814A\u8152\u814F\u8147\u813D\u814D\u813A\u81E6\u81EE\u81F7\u81F8\u81F9\u8204\u823C\u823D\u823F\u8275\u833B\u83CF\u83F9\u8423\u83C0\u83E8\u8412\u83E7\u83E4\u83FC\u83F6\u8410\u83C6\u83C8\u83EB\u83E3\u83BF\u8401\u83DD\u83E5\u83D8\u83FF\u83E1\u83CB\u83CE\u83D6\u83F5\u83C9\u8409\u840F\u83DE\u8411\u8406\u83C2\u83F3"],["dba1","\u83D5\u83FA\u83C7\u83D1\u83EA\u8413\u83C3\u83EC\u83EE\u83C4\u83FB\u83D7\u83E2\u841B\u83DB\u83FE\u86D8\u86E2\u86E6\u86D3\u86E3\u86DA\u86EA\u86DD\u86EB\u86DC\u86EC\u86E9\u86D7\u86E8\u86D1\u8848\u8856\u8855\u88BA\u88D7\u88B9\u88B8\u88C0\u88BE\u88B6\u88BC\u88B7\u88BD\u88B2\u8901\u88C9\u8995\u8998\u8997\u89DD\u89DA\u89DB\u8A4E\u8A4D\u8A39\u8A59\u8A40\u8A57\u8A58\u8A44\u8A45\u8A52\u8A48\u8A51\u8A4A\u8A4C\u8A4F\u8C5F\u8C81\u8C80\u8CBA\u8CBE\u8CB0\u8CB9\u8CB5\u8D84\u8D80\u8D89\u8DD8\u8DD3\u8DCD\u8DC7\u8DD6\u8DDC\u8DCF\u8DD5\u8DD9\u8DC8\u8DD7\u8DC5\u8EEF\u8EF7\u8EFA"],["dc40","\u8EF9\u8EE6\u8EEE\u8EE5\u8EF5\u8EE7\u8EE8\u8EF6\u8EEB\u8EF1\u8EEC\u8EF4\u8EE9\u902D\u9034\u902F\u9106\u912C\u9104\u90FF\u90FC\u9108\u90F9\u90FB\u9101\u9100\u9107\u9105\u9103\u9161\u9164\u915F\u9162\u9160\u9201\u920A\u9225\u9203\u921A\u9226\u920F\u920C\u9200\u9212\u91FF\u91FD\u9206\u9204\u9227\u9202\u921C\u9224\u9219\u9217\u9205\u9216\u957B\u958D\u958C\u9590\u9687\u967E\u9688"],["dca1","\u9689\u9683\u9680\u96C2\u96C8\u96C3\u96F1\u96F0\u976C\u9770\u976E\u9807\u98A9\u98EB\u9CE6\u9EF9\u4E83\u4E84\u4EB6\u50BD\u50BF\u50C6\u50AE\u50C4\u50CA\u50B4\u50C8\u50C2\u50B0\u50C1\u50BA\u50B1\u50CB\u50C9\u50B6\u50B8\u51D7\u527A\u5278\u527B\u527C\u55C3\u55DB\u55CC\u55D0\u55CB\u55CA\u55DD\u55C0\u55D4\u55C4\u55E9\u55BF\u55D2\u558D\u55CF\u55D5\u55E2\u55D6\u55C8\u55F2\u55CD\u55D9\u55C2\u5714\u5853\u5868\u5864\u584F\u584D\u5849\u586F\u5855\u584E\u585D\u5859\u5865\u585B\u583D\u5863\u5871\u58FC\u5AC7\u5AC4\u5ACB\u5ABA\u5AB8\u5AB1\u5AB5\u5AB0\u5ABF\u5AC8\u5ABB\u5AC6"],["dd40","\u5AB7\u5AC0\u5ACA\u5AB4\u5AB6\u5ACD\u5AB9\u5A90\u5BD6\u5BD8\u5BD9\u5C1F\u5C33\u5D71\u5D63\u5D4A\u5D65\u5D72\u5D6C\u5D5E\u5D68\u5D67\u5D62\u5DF0\u5E4F\u5E4E\u5E4A\u5E4D\u5E4B\u5EC5\u5ECC\u5EC6\u5ECB\u5EC7\u5F40\u5FAF\u5FAD\u60F7\u6149\u614A\u612B\u6145\u6136\u6132\u612E\u6146\u612F\u614F\u6129\u6140\u6220\u9168\u6223\u6225\u6224\u63C5\u63F1\u63EB\u6410\u6412\u6409\u6420\u6424"],["dda1","\u6433\u6443\u641F\u6415\u6418\u6439\u6437\u6422\u6423\u640C\u6426\u6430\u6428\u6441\u6435\u642F\u640A\u641A\u6440\u6425\u6427\u640B\u63E7\u641B\u642E\u6421\u640E\u656F\u6592\u65D3\u6686\u668C\u6695\u6690\u668B\u668A\u6699\u6694\u6678\u6720\u6966\u695F\u6938\u694E\u6962\u6971\u693F\u6945\u696A\u6939\u6942\u6957\u6959\u697A\u6948\u6949\u6935\u696C\u6933\u693D\u6965\u68F0\u6978\u6934\u6969\u6940\u696F\u6944\u6976\u6958\u6941\u6974\u694C\u693B\u694B\u6937\u695C\u694F\u6951\u6932\u6952\u692F\u697B\u693C\u6B46\u6B45\u6B43\u6B42\u6B48\u6B41\u6B9B\uFA0D\u6BFB\u6BFC"],["de40","\u6BF9\u6BF7\u6BF8\u6E9B\u6ED6\u6EC8\u6E8F\u6EC0\u6E9F\u6E93\u6E94\u6EA0\u6EB1\u6EB9\u6EC6\u6ED2\u6EBD\u6EC1\u6E9E\u6EC9\u6EB7\u6EB0\u6ECD\u6EA6\u6ECF\u6EB2\u6EBE\u6EC3\u6EDC\u6ED8\u6E99\u6E92\u6E8E\u6E8D\u6EA4\u6EA1\u6EBF\u6EB3\u6ED0\u6ECA\u6E97\u6EAE\u6EA3\u7147\u7154\u7152\u7163\u7160\u7141\u715D\u7162\u7172\u7178\u716A\u7161\u7142\u7158\u7143\u714B\u7170\u715F\u7150\u7153"],["dea1","\u7144\u714D\u715A\u724F\u728D\u728C\u7291\u7290\u728E\u733C\u7342\u733B\u733A\u7340\u734A\u7349\u7444\u744A\u744B\u7452\u7451\u7457\u7440\u744F\u7450\u744E\u7442\u7446\u744D\u7454\u74E1\u74FF\u74FE\u74FD\u751D\u7579\u7577\u6983\u75EF\u760F\u7603\u75F7\u75FE\u75FC\u75F9\u75F8\u7610\u75FB\u75F6\u75ED\u75F5\u75FD\u7699\u76B5\u76DD\u7755\u775F\u7760\u7752\u7756\u775A\u7769\u7767\u7754\u7759\u776D\u77E0\u7887\u789A\u7894\u788F\u7884\u7895\u7885\u7886\u78A1\u7883\u7879\u7899\u7880\u7896\u787B\u797C\u7982\u797D\u7979\u7A11\u7A18\u7A19\u7A12\u7A17\u7A15\u7A22\u7A13"],["df40","\u7A1B\u7A10\u7AA3\u7AA2\u7A9E\u7AEB\u7B66\u7B64\u7B6D\u7B74\u7B69\u7B72\u7B65\u7B73\u7B71\u7B70\u7B61\u7B78\u7B76\u7B63\u7CB2\u7CB4\u7CAF\u7D88\u7D86\u7D80\u7D8D\u7D7F\u7D85\u7D7A\u7D8E\u7D7B\u7D83\u7D7C\u7D8C\u7D94\u7D84\u7D7D\u7D92\u7F6D\u7F6B\u7F67\u7F68\u7F6C\u7FA6\u7FA5\u7FA7\u7FDB\u7FDC\u8021\u8164\u8160\u8177\u815C\u8169\u815B\u8162\u8172\u6721\u815E\u8176\u8167\u816F"],["dfa1","\u8144\u8161\u821D\u8249\u8244\u8240\u8242\u8245\u84F1\u843F\u8456\u8476\u8479\u848F\u848D\u8465\u8451\u8440\u8486\u8467\u8430\u844D\u847D\u845A\u8459\u8474\u8473\u845D\u8507\u845E\u8437\u843A\u8434\u847A\u8443\u8478\u8432\u8445\u8429\u83D9\u844B\u842F\u8442\u842D\u845F\u8470\u8439\u844E\u844C\u8452\u846F\u84C5\u848E\u843B\u8447\u8436\u8433\u8468\u847E\u8444\u842B\u8460\u8454\u846E\u8450\u870B\u8704\u86F7\u870C\u86FA\u86D6\u86F5\u874D\u86F8\u870E\u8709\u8701\u86F6\u870D\u8705\u88D6\u88CB\u88CD\u88CE\u88DE\u88DB\u88DA\u88CC\u88D0\u8985\u899B\u89DF\u89E5\u89E4"],["e040","\u89E1\u89E0\u89E2\u89DC\u89E6\u8A76\u8A86\u8A7F\u8A61\u8A3F\u8A77\u8A82\u8A84\u8A75\u8A83\u8A81\u8A74\u8A7A\u8C3C\u8C4B\u8C4A\u8C65\u8C64\u8C66\u8C86\u8C84\u8C85\u8CCC\u8D68\u8D69\u8D91\u8D8C\u8D8E\u8D8F\u8D8D\u8D93\u8D94\u8D90\u8D92\u8DF0\u8DE0\u8DEC\u8DF1\u8DEE\u8DD0\u8DE9\u8DE3\u8DE2\u8DE7\u8DF2\u8DEB\u8DF4\u8F06\u8EFF\u8F01\u8F00\u8F05\u8F07\u8F08\u8F02\u8F0B\u9052\u903F"],["e0a1","\u9044\u9049\u903D\u9110\u910D\u910F\u9111\u9116\u9114\u910B\u910E\u916E\u916F\u9248\u9252\u9230\u923A\u9266\u9233\u9265\u925E\u9283\u922E\u924A\u9246\u926D\u926C\u924F\u9260\u9267\u926F\u9236\u9261\u9270\u9231\u9254\u9263\u9250\u9272\u924E\u9253\u924C\u9256\u9232\u959F\u959C\u959E\u959B\u9692\u9693\u9691\u9697\u96CE\u96FA\u96FD\u96F8\u96F5\u9773\u9777\u9778\u9772\u980F\u980D\u980E\u98AC\u98F6\u98F9\u99AF\u99B2\u99B0\u99B5\u9AAD\u9AAB\u9B5B\u9CEA\u9CED\u9CE7\u9E80\u9EFD\u50E6\u50D4\u50D7\u50E8\u50F3\u50DB\u50EA\u50DD\u50E4\u50D3\u50EC\u50F0\u50EF\u50E3\u50E0"],["e140","\u51D8\u5280\u5281\u52E9\u52EB\u5330\u53AC\u5627\u5615\u560C\u5612\u55FC\u560F\u561C\u5601\u5613\u5602\u55FA\u561D\u5604\u55FF\u55F9\u5889\u587C\u5890\u5898\u5886\u5881\u587F\u5874\u588B\u587A\u5887\u5891\u588E\u5876\u5882\u5888\u587B\u5894\u588F\u58FE\u596B\u5ADC\u5AEE\u5AE5\u5AD5\u5AEA\u5ADA\u5AED\u5AEB\u5AF3\u5AE2\u5AE0\u5ADB\u5AEC\u5ADE\u5ADD\u5AD9\u5AE8\u5ADF\u5B77\u5BE0"],["e1a1","\u5BE3\u5C63\u5D82\u5D80\u5D7D\u5D86\u5D7A\u5D81\u5D77\u5D8A\u5D89\u5D88\u5D7E\u5D7C\u5D8D\u5D79\u5D7F\u5E58\u5E59\u5E53\u5ED8\u5ED1\u5ED7\u5ECE\u5EDC\u5ED5\u5ED9\u5ED2\u5ED4\u5F44\u5F43\u5F6F\u5FB6\u612C\u6128\u6141\u615E\u6171\u6173\u6152\u6153\u6172\u616C\u6180\u6174\u6154\u617A\u615B\u6165\u613B\u616A\u6161\u6156\u6229\u6227\u622B\u642B\u644D\u645B\u645D\u6474\u6476\u6472\u6473\u647D\u6475\u6466\u64A6\u644E\u6482\u645E\u645C\u644B\u6453\u6460\u6450\u647F\u643F\u646C\u646B\u6459\u6465\u6477\u6573\u65A0\u66A1\u66A0\u669F\u6705\u6704\u6722\u69B1\u69B6\u69C9"],["e240","\u69A0\u69CE\u6996\u69B0\u69AC\u69BC\u6991\u6999\u698E\u69A7\u698D\u69A9\u69BE\u69AF\u69BF\u69C4\u69BD\u69A4\u69D4\u69B9\u69CA\u699A\u69CF\u69B3\u6993\u69AA\u69A1\u699E\u69D9\u6997\u6990\u69C2\u69B5\u69A5\u69C6\u6B4A\u6B4D\u6B4B\u6B9E\u6B9F\u6BA0\u6BC3\u6BC4\u6BFE\u6ECE\u6EF5\u6EF1\u6F03\u6F25\u6EF8\u6F37\u6EFB\u6F2E\u6F09\u6F4E\u6F19\u6F1A\u6F27\u6F18\u6F3B\u6F12\u6EED\u6F0A"],["e2a1","\u6F36\u6F73\u6EF9\u6EEE\u6F2D\u6F40\u6F30\u6F3C\u6F35\u6EEB\u6F07\u6F0E\u6F43\u6F05\u6EFD\u6EF6\u6F39\u6F1C\u6EFC\u6F3A\u6F1F\u6F0D\u6F1E\u6F08\u6F21\u7187\u7190\u7189\u7180\u7185\u7182\u718F\u717B\u7186\u7181\u7197\u7244\u7253\u7297\u7295\u7293\u7343\u734D\u7351\u734C\u7462\u7473\u7471\u7475\u7472\u7467\u746E\u7500\u7502\u7503\u757D\u7590\u7616\u7608\u760C\u7615\u7611\u760A\u7614\u76B8\u7781\u777C\u7785\u7782\u776E\u7780\u776F\u777E\u7783\u78B2\u78AA\u78B4\u78AD\u78A8\u787E\u78AB\u789E\u78A5\u78A0\u78AC\u78A2\u78A4\u7998\u798A\u798B\u7996\u7995\u7994\u7993"],["e340","\u7997\u7988\u7992\u7990\u7A2B\u7A4A\u7A30\u7A2F\u7A28\u7A26\u7AA8\u7AAB\u7AAC\u7AEE\u7B88\u7B9C\u7B8A\u7B91\u7B90\u7B96\u7B8D\u7B8C\u7B9B\u7B8E\u7B85\u7B98\u5284\u7B99\u7BA4\u7B82\u7CBB\u7CBF\u7CBC\u7CBA\u7DA7\u7DB7\u7DC2\u7DA3\u7DAA\u7DC1\u7DC0\u7DC5\u7D9D\u7DCE\u7DC4\u7DC6\u7DCB\u7DCC\u7DAF\u7DB9\u7D96\u7DBC\u7D9F\u7DA6\u7DAE\u7DA9\u7DA1\u7DC9\u7F73\u7FE2\u7FE3\u7FE5\u7FDE"],["e3a1","\u8024\u805D\u805C\u8189\u8186\u8183\u8187\u818D\u818C\u818B\u8215\u8497\u84A4\u84A1\u849F\u84BA\u84CE\u84C2\u84AC\u84AE\u84AB\u84B9\u84B4\u84C1\u84CD\u84AA\u849A\u84B1\u84D0\u849D\u84A7\u84BB\u84A2\u8494\u84C7\u84CC\u849B\u84A9\u84AF\u84A8\u84D6\u8498\u84B6\u84CF\u84A0\u84D7\u84D4\u84D2\u84DB\u84B0\u8491\u8661\u8733\u8723\u8728\u876B\u8740\u872E\u871E\u8721\u8719\u871B\u8743\u872C\u8741\u873E\u8746\u8720\u8732\u872A\u872D\u873C\u8712\u873A\u8731\u8735\u8742\u8726\u8727\u8738\u8724\u871A\u8730\u8711\u88F7\u88E7\u88F1\u88F2\u88FA\u88FE\u88EE\u88FC\u88F6\u88FB"],["e440","\u88F0\u88EC\u88EB\u899D\u89A1\u899F\u899E\u89E9\u89EB\u89E8\u8AAB\u8A99\u8A8B\u8A92\u8A8F\u8A96\u8C3D\u8C68\u8C69\u8CD5\u8CCF\u8CD7\u8D96\u8E09\u8E02\u8DFF\u8E0D\u8DFD\u8E0A\u8E03\u8E07\u8E06\u8E05\u8DFE\u8E00\u8E04\u8F10\u8F11\u8F0E\u8F0D\u9123\u911C\u9120\u9122\u911F\u911D\u911A\u9124\u9121\u911B\u917A\u9172\u9179\u9173\u92A5\u92A4\u9276\u929B\u927A\u92A0\u9294\u92AA\u928D"],["e4a1","\u92A6\u929A\u92AB\u9279\u9297\u927F\u92A3\u92EE\u928E\u9282\u9295\u92A2\u927D\u9288\u92A1\u928A\u9286\u928C\u9299\u92A7\u927E\u9287\u92A9\u929D\u928B\u922D\u969E\u96A1\u96FF\u9758\u977D\u977A\u977E\u9783\u9780\u9782\u977B\u9784\u9781\u977F\u97CE\u97CD\u9816\u98AD\u98AE\u9902\u9900\u9907\u999D\u999C\u99C3\u99B9\u99BB\u99BA\u99C2\u99BD\u99C7\u9AB1\u9AE3\u9AE7\u9B3E\u9B3F\u9B60\u9B61\u9B5F\u9CF1\u9CF2\u9CF5\u9EA7\u50FF\u5103\u5130\u50F8\u5106\u5107\u50F6\u50FE\u510B\u510C\u50FD\u510A\u528B\u528C\u52F1\u52EF\u5648\u5642\u564C\u5635\u5641\u564A\u5649\u5646\u5658"],["e540","\u565A\u5640\u5633\u563D\u562C\u563E\u5638\u562A\u563A\u571A\u58AB\u589D\u58B1\u58A0\u58A3\u58AF\u58AC\u58A5\u58A1\u58FF\u5AFF\u5AF4\u5AFD\u5AF7\u5AF6\u5B03\u5AF8\u5B02\u5AF9\u5B01\u5B07\u5B05\u5B0F\u5C67\u5D99\u5D97\u5D9F\u5D92\u5DA2\u5D93\u5D95\u5DA0\u5D9C\u5DA1\u5D9A\u5D9E\u5E69\u5E5D\u5E60\u5E5C\u7DF3\u5EDB\u5EDE\u5EE1\u5F49\u5FB2\u618B\u6183\u6179\u61B1\u61B0\u61A2\u6189"],["e5a1","\u619B\u6193\u61AF\u61AD\u619F\u6192\u61AA\u61A1\u618D\u6166\u61B3\u622D\u646E\u6470\u6496\u64A0\u6485\u6497\u649C\u648F\u648B\u648A\u648C\u64A3\u649F\u6468\u64B1\u6498\u6576\u657A\u6579\u657B\u65B2\u65B3\u66B5\u66B0\u66A9\u66B2\u66B7\u66AA\u66AF\u6A00\u6A06\u6A17\u69E5\u69F8\u6A15\u69F1\u69E4\u6A20\u69FF\u69EC\u69E2\u6A1B\u6A1D\u69FE\u6A27\u69F2\u69EE\u6A14\u69F7\u69E7\u6A40\u6A08\u69E6\u69FB\u6A0D\u69FC\u69EB\u6A09\u6A04\u6A18\u6A25\u6A0F\u69F6\u6A26\u6A07\u69F4\u6A16\u6B51\u6BA5\u6BA3\u6BA2\u6BA6\u6C01\u6C00\u6BFF\u6C02\u6F41\u6F26\u6F7E\u6F87\u6FC6\u6F92"],["e640","\u6F8D\u6F89\u6F8C\u6F62\u6F4F\u6F85\u6F5A\u6F96\u6F76\u6F6C\u6F82\u6F55\u6F72\u6F52\u6F50\u6F57\u6F94\u6F93\u6F5D\u6F00\u6F61\u6F6B\u6F7D\u6F67\u6F90\u6F53\u6F8B\u6F69\u6F7F\u6F95\u6F63\u6F77\u6F6A\u6F7B\u71B2\u71AF\u719B\u71B0\u71A0\u719A\u71A9\u71B5\u719D\u71A5\u719E\u71A4\u71A1\u71AA\u719C\u71A7\u71B3\u7298\u729A\u7358\u7352\u735E\u735F\u7360\u735D\u735B\u7361\u735A\u7359"],["e6a1","\u7362\u7487\u7489\u748A\u7486\u7481\u747D\u7485\u7488\u747C\u7479\u7508\u7507\u757E\u7625\u761E\u7619\u761D\u761C\u7623\u761A\u7628\u761B\u769C\u769D\u769E\u769B\u778D\u778F\u7789\u7788\u78CD\u78BB\u78CF\u78CC\u78D1\u78CE\u78D4\u78C8\u78C3\u78C4\u78C9\u799A\u79A1\u79A0\u799C\u79A2\u799B\u6B76\u7A39\u7AB2\u7AB4\u7AB3\u7BB7\u7BCB\u7BBE\u7BAC\u7BCE\u7BAF\u7BB9\u7BCA\u7BB5\u7CC5\u7CC8\u7CCC\u7CCB\u7DF7\u7DDB\u7DEA\u7DE7\u7DD7\u7DE1\u7E03\u7DFA\u7DE6\u7DF6\u7DF1\u7DF0\u7DEE\u7DDF\u7F76\u7FAC\u7FB0\u7FAD\u7FED\u7FEB\u7FEA\u7FEC\u7FE6\u7FE8\u8064\u8067\u81A3\u819F"],["e740","\u819E\u8195\u81A2\u8199\u8197\u8216\u824F\u8253\u8252\u8250\u824E\u8251\u8524\u853B\u850F\u8500\u8529\u850E\u8509\u850D\u851F\u850A\u8527\u851C\u84FB\u852B\u84FA\u8508\u850C\u84F4\u852A\u84F2\u8515\u84F7\u84EB\u84F3\u84FC\u8512\u84EA\u84E9\u8516\u84FE\u8528\u851D\u852E\u8502\u84FD\u851E\u84F6\u8531\u8526\u84E7\u84E8\u84F0\u84EF\u84F9\u8518\u8520\u8530\u850B\u8519\u852F\u8662"],["e7a1","\u8756\u8763\u8764\u8777\u87E1\u8773\u8758\u8754\u875B\u8752\u8761\u875A\u8751\u875E\u876D\u876A\u8750\u874E\u875F\u875D\u876F\u876C\u877A\u876E\u875C\u8765\u874F\u877B\u8775\u8762\u8767\u8769\u885A\u8905\u890C\u8914\u890B\u8917\u8918\u8919\u8906\u8916\u8911\u890E\u8909\u89A2\u89A4\u89A3\u89ED\u89F0\u89EC\u8ACF\u8AC6\u8AB8\u8AD3\u8AD1\u8AD4\u8AD5\u8ABB\u8AD7\u8ABE\u8AC0\u8AC5\u8AD8\u8AC3\u8ABA\u8ABD\u8AD9\u8C3E\u8C4D\u8C8F\u8CE5\u8CDF\u8CD9\u8CE8\u8CDA\u8CDD\u8CE7\u8DA0\u8D9C\u8DA1\u8D9B\u8E20\u8E23\u8E25\u8E24\u8E2E\u8E15\u8E1B\u8E16\u8E11\u8E19\u8E26\u8E27"],["e840","\u8E14\u8E12\u8E18\u8E13\u8E1C\u8E17\u8E1A\u8F2C\u8F24\u8F18\u8F1A\u8F20\u8F23\u8F16\u8F17\u9073\u9070\u906F\u9067\u906B\u912F\u912B\u9129\u912A\u9132\u9126\u912E\u9185\u9186\u918A\u9181\u9182\u9184\u9180\u92D0\u92C3\u92C4\u92C0\u92D9\u92B6\u92CF\u92F1\u92DF\u92D8\u92E9\u92D7\u92DD\u92CC\u92EF\u92C2\u92E8\u92CA\u92C8\u92CE\u92E6\u92CD\u92D5\u92C9\u92E0\u92DE\u92E7\u92D1\u92D3"],["e8a1","\u92B5\u92E1\u92C6\u92B4\u957C\u95AC\u95AB\u95AE\u95B0\u96A4\u96A2\u96D3\u9705\u9708\u9702\u975A\u978A\u978E\u9788\u97D0\u97CF\u981E\u981D\u9826\u9829\u9828\u9820\u981B\u9827\u98B2\u9908\u98FA\u9911\u9914\u9916\u9917\u9915\u99DC\u99CD\u99CF\u99D3\u99D4\u99CE\u99C9\u99D6\u99D8\u99CB\u99D7\u99CC\u9AB3\u9AEC\u9AEB\u9AF3\u9AF2\u9AF1\u9B46\u9B43\u9B67\u9B74\u9B71\u9B66\u9B76\u9B75\u9B70\u9B68\u9B64\u9B6C\u9CFC\u9CFA\u9CFD\u9CFF\u9CF7\u9D07\u9D00\u9CF9\u9CFB\u9D08\u9D05\u9D04\u9E83\u9ED3\u9F0F\u9F10\u511C\u5113\u5117\u511A\u5111\u51DE\u5334\u53E1\u5670\u5660\u566E"],["e940","\u5673\u5666\u5663\u566D\u5672\u565E\u5677\u571C\u571B\u58C8\u58BD\u58C9\u58BF\u58BA\u58C2\u58BC\u58C6\u5B17\u5B19\u5B1B\u5B21\u5B14\u5B13\u5B10\u5B16\u5B28\u5B1A\u5B20\u5B1E\u5BEF\u5DAC\u5DB1\u5DA9\u5DA7\u5DB5\u5DB0\u5DAE\u5DAA\u5DA8\u5DB2\u5DAD\u5DAF\u5DB4\u5E67\u5E68\u5E66\u5E6F\u5EE9\u5EE7\u5EE6\u5EE8\u5EE5\u5F4B\u5FBC\u619D\u61A8\u6196\u61C5\u61B4\u61C6\u61C1\u61CC\u61BA"],["e9a1","\u61BF\u61B8\u618C\u64D7\u64D6\u64D0\u64CF\u64C9\u64BD\u6489\u64C3\u64DB\u64F3\u64D9\u6533\u657F\u657C\u65A2\u66C8\u66BE\u66C0\u66CA\u66CB\u66CF\u66BD\u66BB\u66BA\u66CC\u6723\u6A34\u6A66\u6A49\u6A67\u6A32\u6A68\u6A3E\u6A5D\u6A6D\u6A76\u6A5B\u6A51\u6A28\u6A5A\u6A3B\u6A3F\u6A41\u6A6A\u6A64\u6A50\u6A4F\u6A54\u6A6F\u6A69\u6A60\u6A3C\u6A5E\u6A56\u6A55\u6A4D\u6A4E\u6A46\u6B55\u6B54\u6B56\u6BA7\u6BAA\u6BAB\u6BC8\u6BC7\u6C04\u6C03\u6C06\u6FAD\u6FCB\u6FA3\u6FC7\u6FBC\u6FCE\u6FC8\u6F5E\u6FC4\u6FBD\u6F9E\u6FCA\u6FA8\u7004\u6FA5\u6FAE\u6FBA\u6FAC\u6FAA\u6FCF\u6FBF\u6FB8"],["ea40","\u6FA2\u6FC9\u6FAB\u6FCD\u6FAF\u6FB2\u6FB0\u71C5\u71C2\u71BF\u71B8\u71D6\u71C0\u71C1\u71CB\u71D4\u71CA\u71C7\u71CF\u71BD\u71D8\u71BC\u71C6\u71DA\u71DB\u729D\u729E\u7369\u7366\u7367\u736C\u7365\u736B\u736A\u747F\u749A\u74A0\u7494\u7492\u7495\u74A1\u750B\u7580\u762F\u762D\u7631\u763D\u7633\u763C\u7635\u7632\u7630\u76BB\u76E6\u779A\u779D\u77A1\u779C\u779B\u77A2\u77A3\u7795\u7799"],["eaa1","\u7797\u78DD\u78E9\u78E5\u78EA\u78DE\u78E3\u78DB\u78E1\u78E2\u78ED\u78DF\u78E0\u79A4\u7A44\u7A48\u7A47\u7AB6\u7AB8\u7AB5\u7AB1\u7AB7\u7BDE\u7BE3\u7BE7\u7BDD\u7BD5\u7BE5\u7BDA\u7BE8\u7BF9\u7BD4\u7BEA\u7BE2\u7BDC\u7BEB\u7BD8\u7BDF\u7CD2\u7CD4\u7CD7\u7CD0\u7CD1\u7E12\u7E21\u7E17\u7E0C\u7E1F\u7E20\u7E13\u7E0E\u7E1C\u7E15\u7E1A\u7E22\u7E0B\u7E0F\u7E16\u7E0D\u7E14\u7E25\u7E24\u7F43\u7F7B\u7F7C\u7F7A\u7FB1\u7FEF\u802A\u8029\u806C\u81B1\u81A6\u81AE\u81B9\u81B5\u81AB\u81B0\u81AC\u81B4\u81B2\u81B7\u81A7\u81F2\u8255\u8256\u8257\u8556\u8545\u856B\u854D\u8553\u8561\u8558"],["eb40","\u8540\u8546\u8564\u8541\u8562\u8544\u8551\u8547\u8563\u853E\u855B\u8571\u854E\u856E\u8575\u8555\u8567\u8560\u858C\u8566\u855D\u8554\u8565\u856C\u8663\u8665\u8664\u879B\u878F\u8797\u8793\u8792\u8788\u8781\u8796\u8798\u8779\u8787\u87A3\u8785\u8790\u8791\u879D\u8784\u8794\u879C\u879A\u8789\u891E\u8926\u8930\u892D\u892E\u8927\u8931\u8922\u8929\u8923\u892F\u892C\u891F\u89F1\u8AE0"],["eba1","\u8AE2\u8AF2\u8AF4\u8AF5\u8ADD\u8B14\u8AE4\u8ADF\u8AF0\u8AC8\u8ADE\u8AE1\u8AE8\u8AFF\u8AEF\u8AFB\u8C91\u8C92\u8C90\u8CF5\u8CEE\u8CF1\u8CF0\u8CF3\u8D6C\u8D6E\u8DA5\u8DA7\u8E33\u8E3E\u8E38\u8E40\u8E45\u8E36\u8E3C\u8E3D\u8E41\u8E30\u8E3F\u8EBD\u8F36\u8F2E\u8F35\u8F32\u8F39\u8F37\u8F34\u9076\u9079\u907B\u9086\u90FA\u9133\u9135\u9136\u9193\u9190\u9191\u918D\u918F\u9327\u931E\u9308\u931F\u9306\u930F\u937A\u9338\u933C\u931B\u9323\u9312\u9301\u9346\u932D\u930E\u930D\u92CB\u931D\u92FA\u9325\u9313\u92F9\u92F7\u9334\u9302\u9324\u92FF\u9329\u9339\u9335\u932A\u9314\u930C"],["ec40","\u930B\u92FE\u9309\u9300\u92FB\u9316\u95BC\u95CD\u95BE\u95B9\u95BA\u95B6\u95BF\u95B5\u95BD\u96A9\u96D4\u970B\u9712\u9710\u9799\u9797\u9794\u97F0\u97F8\u9835\u982F\u9832\u9924\u991F\u9927\u9929\u999E\u99EE\u99EC\u99E5\u99E4\u99F0\u99E3\u99EA\u99E9\u99E7\u9AB9\u9ABF\u9AB4\u9ABB\u9AF6\u9AFA\u9AF9\u9AF7\u9B33\u9B80\u9B85\u9B87\u9B7C\u9B7E\u9B7B\u9B82\u9B93\u9B92\u9B90\u9B7A\u9B95"],["eca1","\u9B7D\u9B88\u9D25\u9D17\u9D20\u9D1E\u9D14\u9D29\u9D1D\u9D18\u9D22\u9D10\u9D19\u9D1F\u9E88\u9E86\u9E87\u9EAE\u9EAD\u9ED5\u9ED6\u9EFA\u9F12\u9F3D\u5126\u5125\u5122\u5124\u5120\u5129\u52F4\u5693\u568C\u568D\u5686\u5684\u5683\u567E\u5682\u567F\u5681\u58D6\u58D4\u58CF\u58D2\u5B2D\u5B25\u5B32\u5B23\u5B2C\u5B27\u5B26\u5B2F\u5B2E\u5B7B\u5BF1\u5BF2\u5DB7\u5E6C\u5E6A\u5FBE\u5FBB\u61C3\u61B5\u61BC\u61E7\u61E0\u61E5\u61E4\u61E8\u61DE\u64EF\u64E9\u64E3\u64EB\u64E4\u64E8\u6581\u6580\u65B6\u65DA\u66D2\u6A8D\u6A96\u6A81\u6AA5\u6A89\u6A9F\u6A9B\u6AA1\u6A9E\u6A87\u6A93\u6A8E"],["ed40","\u6A95\u6A83\u6AA8\u6AA4\u6A91\u6A7F\u6AA6\u6A9A\u6A85\u6A8C\u6A92\u6B5B\u6BAD\u6C09\u6FCC\u6FA9\u6FF4\u6FD4\u6FE3\u6FDC\u6FED\u6FE7\u6FE6\u6FDE\u6FF2\u6FDD\u6FE2\u6FE8\u71E1\u71F1\u71E8\u71F2\u71E4\u71F0\u71E2\u7373\u736E\u736F\u7497\u74B2\u74AB\u7490\u74AA\u74AD\u74B1\u74A5\u74AF\u7510\u7511\u7512\u750F\u7584\u7643\u7648\u7649\u7647\u76A4\u76E9\u77B5\u77AB\u77B2\u77B7\u77B6"],["eda1","\u77B4\u77B1\u77A8\u77F0\u78F3\u78FD\u7902\u78FB\u78FC\u78F2\u7905\u78F9\u78FE\u7904\u79AB\u79A8\u7A5C\u7A5B\u7A56\u7A58\u7A54\u7A5A\u7ABE\u7AC0\u7AC1\u7C05\u7C0F\u7BF2\u7C00\u7BFF\u7BFB\u7C0E\u7BF4\u7C0B\u7BF3\u7C02\u7C09\u7C03\u7C01\u7BF8\u7BFD\u7C06\u7BF0\u7BF1\u7C10\u7C0A\u7CE8\u7E2D\u7E3C\u7E42\u7E33\u9848\u7E38\u7E2A\u7E49\u7E40\u7E47\u7E29\u7E4C\u7E30\u7E3B\u7E36\u7E44\u7E3A\u7F45\u7F7F\u7F7E\u7F7D\u7FF4\u7FF2\u802C\u81BB\u81C4\u81CC\u81CA\u81C5\u81C7\u81BC\u81E9\u825B\u825A\u825C\u8583\u8580\u858F\u85A7\u8595\u85A0\u858B\u85A3\u857B\u85A4\u859A\u859E"],["ee40","\u8577\u857C\u8589\u85A1\u857A\u8578\u8557\u858E\u8596\u8586\u858D\u8599\u859D\u8581\u85A2\u8582\u8588\u8585\u8579\u8576\u8598\u8590\u859F\u8668\u87BE\u87AA\u87AD\u87C5\u87B0\u87AC\u87B9\u87B5\u87BC\u87AE\u87C9\u87C3\u87C2\u87CC\u87B7\u87AF\u87C4\u87CA\u87B4\u87B6\u87BF\u87B8\u87BD\u87DE\u87B2\u8935\u8933\u893C\u893E\u8941\u8952\u8937\u8942\u89AD\u89AF\u89AE\u89F2\u89F3\u8B1E"],["eea1","\u8B18\u8B16\u8B11\u8B05\u8B0B\u8B22\u8B0F\u8B12\u8B15\u8B07\u8B0D\u8B08\u8B06\u8B1C\u8B13\u8B1A\u8C4F\u8C70\u8C72\u8C71\u8C6F\u8C95\u8C94\u8CF9\u8D6F\u8E4E\u8E4D\u8E53\u8E50\u8E4C\u8E47\u8F43\u8F40\u9085\u907E\u9138\u919A\u91A2\u919B\u9199\u919F\u91A1\u919D\u91A0\u93A1\u9383\u93AF\u9364\u9356\u9347\u937C\u9358\u935C\u9376\u9349\u9350\u9351\u9360\u936D\u938F\u934C\u936A\u9379\u9357\u9355\u9352\u934F\u9371\u9377\u937B\u9361\u935E\u9363\u9367\u9380\u934E\u9359\u95C7\u95C0\u95C9\u95C3\u95C5\u95B7\u96AE\u96B0\u96AC\u9720\u971F\u9718\u971D\u9719\u979A\u97A1\u979C"],["ef40","\u979E\u979D\u97D5\u97D4\u97F1\u9841\u9844\u984A\u9849\u9845\u9843\u9925\u992B\u992C\u992A\u9933\u9932\u992F\u992D\u9931\u9930\u9998\u99A3\u99A1\u9A02\u99FA\u99F4\u99F7\u99F9\u99F8\u99F6\u99FB\u99FD\u99FE\u99FC\u9A03\u9ABE\u9AFE\u9AFD\u9B01\u9AFC\u9B48\u9B9A\u9BA8\u9B9E\u9B9B\u9BA6\u9BA1\u9BA5\u9BA4\u9B86\u9BA2\u9BA0\u9BAF\u9D33\u9D41\u9D67\u9D36\u9D2E\u9D2F\u9D31\u9D38\u9D30"],["efa1","\u9D45\u9D42\u9D43\u9D3E\u9D37\u9D40\u9D3D\u7FF5\u9D2D\u9E8A\u9E89\u9E8D\u9EB0\u9EC8\u9EDA\u9EFB\u9EFF\u9F24\u9F23\u9F22\u9F54\u9FA0\u5131\u512D\u512E\u5698\u569C\u5697\u569A\u569D\u5699\u5970\u5B3C\u5C69\u5C6A\u5DC0\u5E6D\u5E6E\u61D8\u61DF\u61ED\u61EE\u61F1\u61EA\u61F0\u61EB\u61D6\u61E9\u64FF\u6504\u64FD\u64F8\u6501\u6503\u64FC\u6594\u65DB\u66DA\u66DB\u66D8\u6AC5\u6AB9\u6ABD\u6AE1\u6AC6\u6ABA\u6AB6\u6AB7\u6AC7\u6AB4\u6AAD\u6B5E\u6BC9\u6C0B\u7007\u700C\u700D\u7001\u7005\u7014\u700E\u6FFF\u7000\u6FFB\u7026\u6FFC\u6FF7\u700A\u7201\u71FF\u71F9\u7203\u71FD\u7376"],["f040","\u74B8\u74C0\u74B5\u74C1\u74BE\u74B6\u74BB\u74C2\u7514\u7513\u765C\u7664\u7659\u7650\u7653\u7657\u765A\u76A6\u76BD\u76EC\u77C2\u77BA\u78FF\u790C\u7913\u7914\u7909\u7910\u7912\u7911\u79AD\u79AC\u7A5F\u7C1C\u7C29\u7C19\u7C20\u7C1F\u7C2D\u7C1D\u7C26\u7C28\u7C22\u7C25\u7C30\u7E5C\u7E50\u7E56\u7E63\u7E58\u7E62\u7E5F\u7E51\u7E60\u7E57\u7E53\u7FB5\u7FB3\u7FF7\u7FF8\u8075\u81D1\u81D2"],["f0a1","\u81D0\u825F\u825E\u85B4\u85C6\u85C0\u85C3\u85C2\u85B3\u85B5\u85BD\u85C7\u85C4\u85BF\u85CB\u85CE\u85C8\u85C5\u85B1\u85B6\u85D2\u8624\u85B8\u85B7\u85BE\u8669\u87E7\u87E6\u87E2\u87DB\u87EB\u87EA\u87E5\u87DF\u87F3\u87E4\u87D4\u87DC\u87D3\u87ED\u87D8\u87E3\u87A4\u87D7\u87D9\u8801\u87F4\u87E8\u87DD\u8953\u894B\u894F\u894C\u8946\u8950\u8951\u8949\u8B2A\u8B27\u8B23\u8B33\u8B30\u8B35\u8B47\u8B2F\u8B3C\u8B3E\u8B31\u8B25\u8B37\u8B26\u8B36\u8B2E\u8B24\u8B3B\u8B3D\u8B3A\u8C42\u8C75\u8C99\u8C98\u8C97\u8CFE\u8D04\u8D02\u8D00\u8E5C\u8E62\u8E60\u8E57\u8E56\u8E5E\u8E65\u8E67"],["f140","\u8E5B\u8E5A\u8E61\u8E5D\u8E69\u8E54\u8F46\u8F47\u8F48\u8F4B\u9128\u913A\u913B\u913E\u91A8\u91A5\u91A7\u91AF\u91AA\u93B5\u938C\u9392\u93B7\u939B\u939D\u9389\u93A7\u938E\u93AA\u939E\u93A6\u9395\u9388\u9399\u939F\u938D\u93B1\u9391\u93B2\u93A4\u93A8\u93B4\u93A3\u93A5\u95D2\u95D3\u95D1\u96B3\u96D7\u96DA\u5DC2\u96DF\u96D8\u96DD\u9723\u9722\u9725\u97AC\u97AE\u97A8\u97AB\u97A4\u97AA"],["f1a1","\u97A2\u97A5\u97D7\u97D9\u97D6\u97D8\u97FA\u9850\u9851\u9852\u98B8\u9941\u993C\u993A\u9A0F\u9A0B\u9A09\u9A0D\u9A04\u9A11\u9A0A\u9A05\u9A07\u9A06\u9AC0\u9ADC\u9B08\u9B04\u9B05\u9B29\u9B35\u9B4A\u9B4C\u9B4B\u9BC7\u9BC6\u9BC3\u9BBF\u9BC1\u9BB5\u9BB8\u9BD3\u9BB6\u9BC4\u9BB9\u9BBD\u9D5C\u9D53\u9D4F\u9D4A\u9D5B\u9D4B\u9D59\u9D56\u9D4C\u9D57\u9D52\u9D54\u9D5F\u9D58\u9D5A\u9E8E\u9E8C\u9EDF\u9F01\u9F00\u9F16\u9F25\u9F2B\u9F2A\u9F29\u9F28\u9F4C\u9F55\u5134\u5135\u5296\u52F7\u53B4\u56AB\u56AD\u56A6\u56A7\u56AA\u56AC\u58DA\u58DD\u58DB\u5912\u5B3D\u5B3E\u5B3F\u5DC3\u5E70"],["f240","\u5FBF\u61FB\u6507\u6510\u650D\u6509\u650C\u650E\u6584\u65DE\u65DD\u66DE\u6AE7\u6AE0\u6ACC\u6AD1\u6AD9\u6ACB\u6ADF\u6ADC\u6AD0\u6AEB\u6ACF\u6ACD\u6ADE\u6B60\u6BB0\u6C0C\u7019\u7027\u7020\u7016\u702B\u7021\u7022\u7023\u7029\u7017\u7024\u701C\u702A\u720C\u720A\u7207\u7202\u7205\u72A5\u72A6\u72A4\u72A3\u72A1\u74CB\u74C5\u74B7\u74C3\u7516\u7660\u77C9\u77CA\u77C4\u77F1\u791D\u791B"],["f2a1","\u7921\u791C\u7917\u791E\u79B0\u7A67\u7A68\u7C33\u7C3C\u7C39\u7C2C\u7C3B\u7CEC\u7CEA\u7E76\u7E75\u7E78\u7E70\u7E77\u7E6F\u7E7A\u7E72\u7E74\u7E68\u7F4B\u7F4A\u7F83\u7F86\u7FB7\u7FFD\u7FFE\u8078\u81D7\u81D5\u8264\u8261\u8263\u85EB\u85F1\u85ED\u85D9\u85E1\u85E8\u85DA\u85D7\u85EC\u85F2\u85F8\u85D8\u85DF\u85E3\u85DC\u85D1\u85F0\u85E6\u85EF\u85DE\u85E2\u8800\u87FA\u8803\u87F6\u87F7\u8809\u880C\u880B\u8806\u87FC\u8808\u87FF\u880A\u8802\u8962\u895A\u895B\u8957\u8961\u895C\u8958\u895D\u8959\u8988\u89B7\u89B6\u89F6\u8B50\u8B48\u8B4A\u8B40\u8B53\u8B56\u8B54\u8B4B\u8B55"],["f340","\u8B51\u8B42\u8B52\u8B57\u8C43\u8C77\u8C76\u8C9A\u8D06\u8D07\u8D09\u8DAC\u8DAA\u8DAD\u8DAB\u8E6D\u8E78\u8E73\u8E6A\u8E6F\u8E7B\u8EC2\u8F52\u8F51\u8F4F\u8F50\u8F53\u8FB4\u9140\u913F\u91B0\u91AD\u93DE\u93C7\u93CF\u93C2\u93DA\u93D0\u93F9\u93EC\u93CC\u93D9\u93A9\u93E6\u93CA\u93D4\u93EE\u93E3\u93D5\u93C4\u93CE\u93C0\u93D2\u93E7\u957D\u95DA\u95DB\u96E1\u9729\u972B\u972C\u9728\u9726"],["f3a1","\u97B3\u97B7\u97B6\u97DD\u97DE\u97DF\u985C\u9859\u985D\u9857\u98BF\u98BD\u98BB\u98BE\u9948\u9947\u9943\u99A6\u99A7\u9A1A\u9A15\u9A25\u9A1D\u9A24\u9A1B\u9A22\u9A20\u9A27\u9A23\u9A1E\u9A1C\u9A14\u9AC2\u9B0B\u9B0A\u9B0E\u9B0C\u9B37\u9BEA\u9BEB\u9BE0\u9BDE\u9BE4\u9BE6\u9BE2\u9BF0\u9BD4\u9BD7\u9BEC\u9BDC\u9BD9\u9BE5\u9BD5\u9BE1\u9BDA\u9D77\u9D81\u9D8A\u9D84\u9D88\u9D71\u9D80\u9D78\u9D86\u9D8B\u9D8C\u9D7D\u9D6B\u9D74\u9D75\u9D70\u9D69\u9D85\u9D73\u9D7B\u9D82\u9D6F\u9D79\u9D7F\u9D87\u9D68\u9E94\u9E91\u9EC0\u9EFC\u9F2D\u9F40\u9F41\u9F4D\u9F56\u9F57\u9F58\u5337\u56B2"],["f440","\u56B5\u56B3\u58E3\u5B45\u5DC6\u5DC7\u5EEE\u5EEF\u5FC0\u5FC1\u61F9\u6517\u6516\u6515\u6513\u65DF\u66E8\u66E3\u66E4\u6AF3\u6AF0\u6AEA\u6AE8\u6AF9\u6AF1\u6AEE\u6AEF\u703C\u7035\u702F\u7037\u7034\u7031\u7042\u7038\u703F\u703A\u7039\u7040\u703B\u7033\u7041\u7213\u7214\u72A8\u737D\u737C\u74BA\u76AB\u76AA\u76BE\u76ED\u77CC\u77CE\u77CF\u77CD\u77F2\u7925\u7923\u7927\u7928\u7924\u7929"],["f4a1","\u79B2\u7A6E\u7A6C\u7A6D\u7AF7\u7C49\u7C48\u7C4A\u7C47\u7C45\u7CEE\u7E7B\u7E7E\u7E81\u7E80\u7FBA\u7FFF\u8079\u81DB\u81D9\u820B\u8268\u8269\u8622\u85FF\u8601\u85FE\u861B\u8600\u85F6\u8604\u8609\u8605\u860C\u85FD\u8819\u8810\u8811\u8817\u8813\u8816\u8963\u8966\u89B9\u89F7\u8B60\u8B6A\u8B5D\u8B68\u8B63\u8B65\u8B67\u8B6D\u8DAE\u8E86\u8E88\u8E84\u8F59\u8F56\u8F57\u8F55\u8F58\u8F5A\u908D\u9143\u9141\u91B7\u91B5\u91B2\u91B3\u940B\u9413\u93FB\u9420\u940F\u9414\u93FE\u9415\u9410\u9428\u9419\u940D\u93F5\u9400\u93F7\u9407\u940E\u9416\u9412\u93FA\u9409\u93F8\u940A\u93FF"],["f540","\u93FC\u940C\u93F6\u9411\u9406\u95DE\u95E0\u95DF\u972E\u972F\u97B9\u97BB\u97FD\u97FE\u9860\u9862\u9863\u985F\u98C1\u98C2\u9950\u994E\u9959\u994C\u994B\u9953\u9A32\u9A34\u9A31\u9A2C\u9A2A\u9A36\u9A29\u9A2E\u9A38\u9A2D\u9AC7\u9ACA\u9AC6\u9B10\u9B12\u9B11\u9C0B\u9C08\u9BF7\u9C05\u9C12\u9BF8\u9C40\u9C07\u9C0E\u9C06\u9C17\u9C14\u9C09\u9D9F\u9D99\u9DA4\u9D9D\u9D92\u9D98\u9D90\u9D9B"],["f5a1","\u9DA0\u9D94\u9D9C\u9DAA\u9D97\u9DA1\u9D9A\u9DA2\u9DA8\u9D9E\u9DA3\u9DBF\u9DA9\u9D96\u9DA6\u9DA7\u9E99\u9E9B\u9E9A\u9EE5\u9EE4\u9EE7\u9EE6\u9F30\u9F2E\u9F5B\u9F60\u9F5E\u9F5D\u9F59\u9F91\u513A\u5139\u5298\u5297\u56C3\u56BD\u56BE\u5B48\u5B47\u5DCB\u5DCF\u5EF1\u61FD\u651B\u6B02\u6AFC\u6B03\u6AF8\u6B00\u7043\u7044\u704A\u7048\u7049\u7045\u7046\u721D\u721A\u7219\u737E\u7517\u766A\u77D0\u792D\u7931\u792F\u7C54\u7C53\u7CF2\u7E8A\u7E87\u7E88\u7E8B\u7E86\u7E8D\u7F4D\u7FBB\u8030\u81DD\u8618\u862A\u8626\u861F\u8623\u861C\u8619\u8627\u862E\u8621\u8620\u8629\u861E\u8625"],["f640","\u8829\u881D\u881B\u8820\u8824\u881C\u882B\u884A\u896D\u8969\u896E\u896B\u89FA\u8B79\u8B78\u8B45\u8B7A\u8B7B\u8D10\u8D14\u8DAF\u8E8E\u8E8C\u8F5E\u8F5B\u8F5D\u9146\u9144\u9145\u91B9\u943F\u943B\u9436\u9429\u943D\u943C\u9430\u9439\u942A\u9437\u942C\u9440\u9431\u95E5\u95E4\u95E3\u9735\u973A\u97BF\u97E1\u9864\u98C9\u98C6\u98C0\u9958\u9956\u9A39\u9A3D\u9A46\u9A44\u9A42\u9A41\u9A3A"],["f6a1","\u9A3F\u9ACD\u9B15\u9B17\u9B18\u9B16\u9B3A\u9B52\u9C2B\u9C1D\u9C1C\u9C2C\u9C23\u9C28\u9C29\u9C24\u9C21\u9DB7\u9DB6\u9DBC\u9DC1\u9DC7\u9DCA\u9DCF\u9DBE\u9DC5\u9DC3\u9DBB\u9DB5\u9DCE\u9DB9\u9DBA\u9DAC\u9DC8\u9DB1\u9DAD\u9DCC\u9DB3\u9DCD\u9DB2\u9E7A\u9E9C\u9EEB\u9EEE\u9EED\u9F1B\u9F18\u9F1A\u9F31\u9F4E\u9F65\u9F64\u9F92\u4EB9\u56C6\u56C5\u56CB\u5971\u5B4B\u5B4C\u5DD5\u5DD1\u5EF2\u6521\u6520\u6526\u6522\u6B0B\u6B08\u6B09\u6C0D\u7055\u7056\u7057\u7052\u721E\u721F\u72A9\u737F\u74D8\u74D5\u74D9\u74D7\u766D\u76AD\u7935\u79B4\u7A70\u7A71\u7C57\u7C5C\u7C59\u7C5B\u7C5A"],["f740","\u7CF4\u7CF1\u7E91\u7F4F\u7F87\u81DE\u826B\u8634\u8635\u8633\u862C\u8632\u8636\u882C\u8828\u8826\u882A\u8825\u8971\u89BF\u89BE\u89FB\u8B7E\u8B84\u8B82\u8B86\u8B85\u8B7F\u8D15\u8E95\u8E94\u8E9A\u8E92\u8E90\u8E96\u8E97\u8F60\u8F62\u9147\u944C\u9450\u944A\u944B\u944F\u9447\u9445\u9448\u9449\u9446\u973F\u97E3\u986A\u9869\u98CB\u9954\u995B\u9A4E\u9A53\u9A54\u9A4C\u9A4F\u9A48\u9A4A"],["f7a1","\u9A49\u9A52\u9A50\u9AD0\u9B19\u9B2B\u9B3B\u9B56\u9B55\u9C46\u9C48\u9C3F\u9C44\u9C39\u9C33\u9C41\u9C3C\u9C37\u9C34\u9C32\u9C3D\u9C36\u9DDB\u9DD2\u9DDE\u9DDA\u9DCB\u9DD0\u9DDC\u9DD1\u9DDF\u9DE9\u9DD9\u9DD8\u9DD6\u9DF5\u9DD5\u9DDD\u9EB6\u9EF0\u9F35\u9F33\u9F32\u9F42\u9F6B\u9F95\u9FA2\u513D\u5299\u58E8\u58E7\u5972\u5B4D\u5DD8\u882F\u5F4F\u6201\u6203\u6204\u6529\u6525\u6596\u66EB\u6B11\u6B12\u6B0F\u6BCA\u705B\u705A\u7222\u7382\u7381\u7383\u7670\u77D4\u7C67\u7C66\u7E95\u826C\u863A\u8640\u8639\u863C\u8631\u863B\u863E\u8830\u8832\u882E\u8833\u8976\u8974\u8973\u89FE"],["f840","\u8B8C\u8B8E\u8B8B\u8B88\u8C45\u8D19\u8E98\u8F64\u8F63\u91BC\u9462\u9455\u945D\u9457\u945E\u97C4\u97C5\u9800\u9A56\u9A59\u9B1E\u9B1F\u9B20\u9C52\u9C58\u9C50\u9C4A\u9C4D\u9C4B\u9C55\u9C59\u9C4C\u9C4E\u9DFB\u9DF7\u9DEF\u9DE3\u9DEB\u9DF8\u9DE4\u9DF6\u9DE1\u9DEE\u9DE6\u9DF2\u9DF0\u9DE2\u9DEC\u9DF4\u9DF3\u9DE8\u9DED\u9EC2\u9ED0\u9EF2\u9EF3\u9F06\u9F1C\u9F38\u9F37\u9F36\u9F43\u9F4F"],["f8a1","\u9F71\u9F70\u9F6E\u9F6F\u56D3\u56CD\u5B4E\u5C6D\u652D\u66ED\u66EE\u6B13\u705F\u7061\u705D\u7060\u7223\u74DB\u74E5\u77D5\u7938\u79B7\u79B6\u7C6A\u7E97\u7F89\u826D\u8643\u8838\u8837\u8835\u884B\u8B94\u8B95\u8E9E\u8E9F\u8EA0\u8E9D\u91BE\u91BD\u91C2\u946B\u9468\u9469\u96E5\u9746\u9743\u9747\u97C7\u97E5\u9A5E\u9AD5\u9B59\u9C63\u9C67\u9C66\u9C62\u9C5E\u9C60\u9E02\u9DFE\u9E07\u9E03\u9E06\u9E05\u9E00\u9E01\u9E09\u9DFF\u9DFD\u9E04\u9EA0\u9F1E\u9F46\u9F74\u9F75\u9F76\u56D4\u652E\u65B8\u6B18\u6B19\u6B17\u6B1A\u7062\u7226\u72AA\u77D8\u77D9\u7939\u7C69\u7C6B\u7CF6\u7E9A"],["f940","\u7E98\u7E9B\u7E99\u81E0\u81E1\u8646\u8647\u8648\u8979\u897A\u897C\u897B\u89FF\u8B98\u8B99\u8EA5\u8EA4\u8EA3\u946E\u946D\u946F\u9471\u9473\u9749\u9872\u995F\u9C68\u9C6E\u9C6D\u9E0B\u9E0D\u9E10\u9E0F\u9E12\u9E11\u9EA1\u9EF5\u9F09\u9F47\u9F78\u9F7B\u9F7A\u9F79\u571E\u7066\u7C6F\u883C\u8DB2\u8EA6\u91C3\u9474\u9478\u9476\u9475\u9A60\u9C74\u9C73\u9C71\u9C75\u9E14\u9E13\u9EF6\u9F0A"],["f9a1","\u9FA4\u7068\u7065\u7CF7\u866A\u883E\u883D\u883F\u8B9E\u8C9C\u8EA9\u8EC9\u974B\u9873\u9874\u98CC\u9961\u99AB\u9A64\u9A66\u9A67\u9B24\u9E15\u9E17\u9F48\u6207\u6B1E\u7227\u864C\u8EA8\u9482\u9480\u9481\u9A69\u9A68\u9B2E\u9E19\u7229\u864B\u8B9F\u9483\u9C79\u9EB7\u7675\u9A6B\u9C7A\u9E1D\u7069\u706A\u9EA4\u9F7E\u9F49\u9F98\u7881\u92B9\u88CF\u58BB\u6052\u7CA7\u5AFA\u2554\u2566\u2557\u2560\u256C\u2563\u255A\u2569\u255D\u2552\u2564\u2555\u255E\u256A\u2561\u2558\u2567\u255B\u2553\u2565\u2556\u255F\u256B\u2562\u2559\u2568\u255C\u2551\u2550\u256D\u256E\u2570\u256F\u2593"]]});var WT=b((e3e,XG)=>{XG.exports=[["8740","\u43F0\u4C32\u4603\u45A6\u4578\u{27267}\u4D77\u45B3\u{27CB1}\u4CE2\u{27CC5}\u3B95\u4736\u4744\u4C47\u4C40\u{242BF}\u{23617}\u{27352}\u{26E8B}\u{270D2}\u4C57\u{2A351}\u474F\u45DA\u4C85\u{27C6C}\u4D07\u4AA4\u46A1\u{26B23}\u7225\u{25A54}\u{21A63}\u{23E06}\u{23F61}\u664D\u56FB"],["8767","\u7D95\u591D\u{28BB9}\u3DF4\u9734\u{27BEF}\u5BDB\u{21D5E}\u5AA4\u3625\u{29EB0}\u5AD1\u5BB7\u5CFC\u676E\u8593\u{29945}\u7461\u749D\u3875\u{21D53}\u{2369E}\u{26021}\u3EEC"],["87a1","\u{258DE}\u3AF5\u7AFC\u9F97\u{24161}\u{2890D}\u{231EA}\u{20A8A}\u{2325E}\u430A\u8484\u9F96\u942F\u4930\u8613\u5896\u974A\u9218\u79D0\u7A32\u6660\u6A29\u889D\u744C\u7BC5\u6782\u7A2C\u524F\u9046\u34E6\u73C4\u{25DB9}\u74C6\u9FC7\u57B3\u492F\u544C\u4131\u{2368E}\u5818\u7A72\u{27B65}\u8B8F\u46AE\u{26E88}\u4181\u{25D99}\u7BAE\u{224BC}\u9FC8\u{224C1}\u{224C9}\u{224CC}\u9FC9\u8504\u{235BB}\u40B4\u9FCA\u44E1\u{2ADFF}\u62C1\u706E\u9FCB"],["8840","\u31C0",4,"\u{2010C}\u31C5\u{200D1}\u{200CD}\u31C6\u31C7\u{200CB}\u{21FE8}\u31C8\u{200CA}\u31C9\u31CA\u31CB\u31CC\u{2010E}\u31CD\u31CE\u0100\xC1\u01CD\xC0\u0112\xC9\u011A\xC8\u014C\xD3\u01D1\xD2\u0FFF\xCA\u0304\u1EBE\u0FFF\xCA\u030C\u1EC0\xCA\u0101\xE1\u01CE\xE0\u0251\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA"],["88a1","\u01DC\xFC\u0FFF\xEA\u0304\u1EBF\u0FFF\xEA\u030C\u1EC1\xEA\u0261\u23DA\u23DB"],["8940","\u{2A3A9}\u{21145}"],["8943","\u650A"],["8946","\u4E3D\u6EDD\u9D4E\u91DF"],["894c","\u{27735}\u6491\u4F1A\u4F28\u4FA8\u5156\u5174\u519C\u51E4\u52A1\u52A8\u533B\u534E\u53D1\u53D8\u56E2\u58F0\u5904\u5907\u5932\u5934\u5B66\u5B9E\u5B9F\u5C9A\u5E86\u603B\u6589\u67FE\u6804\u6865\u6D4E\u70BC\u7535\u7EA4\u7EAC\u7EBA\u7EC7\u7ECF\u7EDF\u7F06\u7F37\u827A\u82CF\u836F\u89C6\u8BBE\u8BE2\u8F66\u8F67\u8F6E"],["89a1","\u7411\u7CFC\u7DCD\u6946\u7AC9\u5227"],["89ab","\u918C\u78B8\u915E\u80BC"],["89b0","\u8D0B\u80F6\u{209E7}"],["89b5","\u809F\u9EC7\u4CCD\u9DC9\u9E0C\u4C3E\u{29DF6}\u{2700E}\u9E0A\u{2A133}\u35C1"],["89c1","\u6E9A\u823E\u7519"],["89c5","\u4911\u9A6C\u9A8F\u9F99\u7987\u{2846C}\u{21DCA}\u{205D0}\u{22AE6}\u4E24\u4E81\u4E80\u4E87\u4EBF\u4EEB\u4F37\u344C\u4FBD\u3E48\u5003\u5088\u347D\u3493\u34A5\u5186\u5905\u51DB\u51FC\u5205\u4E89\u5279\u5290\u5327\u35C7\u53A9\u3551\u53B0\u3553\u53C2\u5423\u356D\u3572\u3681\u5493\u54A3\u54B4\u54B9\u54D0\u54EF\u5518\u5523\u5528\u3598\u553F\u35A5\u35BF\u55D7\u35C5"],["8a40","\u{27D84}\u5525"],["8a43","\u{20C42}\u{20D15}\u{2512B}\u5590\u{22CC6}\u39EC\u{20341}\u8E46\u{24DB8}\u{294E5}\u4053\u{280BE}\u777A\u{22C38}\u3A34\u47D5\u{2815D}\u{269F2}\u{24DEA}\u64DD\u{20D7C}\u{20FB4}\u{20CD5}\u{210F4}\u648D\u8E7E\u{20E96}\u{20C0B}\u{20F64}\u{22CA9}\u{28256}\u{244D3}"],["8a64","\u{20D46}\u{29A4D}\u{280E9}\u47F4\u{24EA7}\u{22CC2}\u9AB2\u3A67\u{295F4}\u3FED\u3506\u{252C7}\u{297D4}\u{278C8}\u{22D44}\u9D6E\u9815"],["8a76","\u43D9\u{260A5}\u64B4\u54E3\u{22D4C}\u{22BCA}\u{21077}\u39FB\u{2106F}"],["8aa1","\u{266DA}\u{26716}\u{279A0}\u64EA\u{25052}\u{20C43}\u8E68\u{221A1}\u{28B4C}\u{20731}"],["8aac","\u480B\u{201A9}\u3FFA\u5873\u{22D8D}"],["8ab2","\u{245C8}\u{204FC}\u{26097}\u{20F4C}\u{20D96}\u5579\u40BB\u43BA"],["8abb","\u4AB4\u{22A66}\u{2109D}\u81AA\u98F5\u{20D9C}\u6379\u39FE\u{22775}\u8DC0\u56A1\u647C\u3E43"],["8ac9","\u{2A601}\u{20E09}\u{22ACF}\u{22CC9}"],["8ace","\u{210C8}\u{239C2}\u3992\u3A06\u{2829B}\u3578\u{25E49}\u{220C7}\u5652\u{20F31}\u{22CB2}\u{29720}\u34BC\u6C3D\u{24E3B}"],["8adf","\u{27574}\u{22E8B}\u{22208}\u{2A65B}\u{28CCD}\u{20E7A}\u{20C34}\u{2681C}\u7F93\u{210CF}\u{22803}\u{22939}\u35FB\u{251E3}\u{20E8C}\u{20F8D}\u{20EAA}\u3F93\u{20F30}\u{20D47}\u{2114F}\u{20E4C}"],["8af6","\u{20EAB}\u{20BA9}\u{20D48}\u{210C0}\u{2113D}\u3FF9\u{22696}\u6432\u{20FAD}"],["8b40","\u{233F4}\u{27639}\u{22BCE}\u{20D7E}\u{20D7F}\u{22C51}\u{22C55}\u3A18\u{20E98}\u{210C7}\u{20F2E}\u{2A632}\u{26B50}\u{28CD2}\u{28D99}\u{28CCA}\u95AA\u54CC\u82C4\u55B9"],["8b55","\u{29EC3}\u9C26\u9AB6\u{2775E}\u{22DEE}\u7140\u816D\u80EC\u5C1C\u{26572}\u8134\u3797\u535F\u{280BD}\u91B6\u{20EFA}\u{20E0F}\u{20E77}\u{20EFB}\u35DD\u{24DEB}\u3609\u{20CD6}\u56AF\u{227B5}\u{210C9}\u{20E10}\u{20E78}\u{21078}\u{21148}\u{28207}\u{21455}\u{20E79}\u{24E50}\u{22DA4}\u5A54\u{2101D}\u{2101E}\u{210F5}\u{210F6}\u579C\u{20E11}"],["8ba1","\u{27694}\u{282CD}\u{20FB5}\u{20E7B}\u{2517E}\u3703\u{20FB6}\u{21180}\u{252D8}\u{2A2BD}\u{249DA}\u{2183A}\u{24177}\u{2827C}\u5899\u5268\u361A\u{2573D}\u7BB2\u5B68\u4800\u4B2C\u9F27\u49E7\u9C1F\u9B8D\u{25B74}\u{2313D}\u55FB\u35F2\u5689\u4E28\u5902\u{21BC1}\u{2F878}\u9751\u{20086}\u4E5B\u4EBB\u353E\u5C23\u5F51\u5FC4\u38FA\u624C\u6535\u6B7A\u6C35\u6C3A\u706C\u722B\u4E2C\u72AD\u{248E9}\u7F52\u793B\u7CF9\u7F53\u{2626A}\u34C1"],["8bde","\u{2634B}\u8002\u8080\u{26612}\u{26951}\u535D\u8864\u89C1\u{278B2}\u8BA0\u8D1D\u9485\u9578\u957F\u95E8\u{28E0F}\u97E6\u9875\u98CE\u98DE\u9963\u{29810}\u9C7C\u9E1F\u9EC4\u6B6F\uF907\u4E37\u{20087}\u961D\u6237\u94A2"],["8c40","\u503B\u6DFE\u{29C73}\u9FA6\u3DC9\u888F\u{2414E}\u7077\u5CF5\u4B20\u{251CD}\u3559\u{25D30}\u6122\u{28A32}\u8FA7\u91F6\u7191\u6719\u73BA\u{23281}\u{2A107}\u3C8B\u{21980}\u4B10\u78E4\u7402\u51AE\u{2870F}\u4009\u6A63\u{2A2BA}\u4223\u860F\u{20A6F}\u7A2A\u{29947}\u{28AEA}\u9755\u704D\u5324\u{2207E}\u93F4\u76D9\u{289E3}\u9FA7\u77DD\u4EA3\u4FF0\u50BC\u4E2F\u4F17\u9FA8\u5434\u7D8B\u5892\u58D0\u{21DB6}\u5E92\u5E99\u5FC2\u{22712}\u658B"],["8ca1","\u{233F9}\u6919\u6A43\u{23C63}\u6CFF"],["8ca7","\u7200\u{24505}\u738C\u3EDB\u{24A13}\u5B15\u74B9\u8B83\u{25CA4}\u{25695}\u7A93\u7BEC\u7CC3\u7E6C\u82F8\u8597\u9FA9\u8890\u9FAA\u8EB9\u9FAB\u8FCF\u855F\u99E0\u9221\u9FAC\u{28DB9}\u{2143F}\u4071\u42A2\u5A1A"],["8cc9","\u9868\u676B\u4276\u573D"],["8cce","\u85D6\u{2497B}\u82BF\u{2710D}\u4C81\u{26D74}\u5D7B\u{26B15}\u{26FBE}\u9FAD\u9FAE\u5B96\u9FAF\u66E7\u7E5B\u6E57\u79CA\u3D88\u44C3\u{23256}\u{22796}\u439A\u4536"],["8ce6","\u5CD5\u{23B1A}\u8AF9\u5C78\u3D12\u{23551}\u5D78\u9FB2\u7157\u4558\u{240EC}\u{21E23}\u4C77\u3978\u344A\u{201A4}\u{26C41}\u8ACC\u4FB4\u{20239}\u59BF\u816C\u9856\u{298FA}\u5F3B"],["8d40","\u{20B9F}"],["8d42","\u{221C1}\u{2896D}\u4102\u46BB\u{29079}\u3F07\u9FB3\u{2A1B5}\u40F8\u37D6\u46F7\u{26C46}\u417C\u{286B2}\u{273FF}\u456D\u38D4\u{2549A}\u4561\u451B\u4D89\u4C7B\u4D76\u45EA\u3FC8\u{24B0F}\u3661\u44DE\u44BD\u41ED\u5D3E\u5D48\u5D56\u3DFC\u380F\u5DA4\u5DB9\u3820\u3838\u5E42\u5EBD\u5F25\u5F83\u3908\u3914\u393F\u394D\u60D7\u613D\u5CE5\u3989\u61B7\u61B9\u61CF\u39B8\u622C\u6290\u62E5\u6318\u39F8\u56B1"],["8da1","\u3A03\u63E2\u63FB\u6407\u645A\u3A4B\u64C0\u5D15\u5621\u9F9F\u3A97\u6586\u3ABD\u65FF\u6653\u3AF2\u6692\u3B22\u6716\u3B42\u67A4\u6800\u3B58\u684A\u6884\u3B72\u3B71\u3B7B\u6909\u6943\u725C\u6964\u699F\u6985\u3BBC\u69D6\u3BDD\u6A65\u6A74\u6A71\u6A82\u3BEC\u6A99\u3BF2\u6AAB\u6AB5\u6AD4\u6AF6\u6B81\u6BC1\u6BEA\u6C75\u6CAA\u3CCB\u6D02\u6D06\u6D26\u6D81\u3CEF\u6DA4\u6DB1\u6E15\u6E18\u6E29\u6E86\u{289C0}\u6EBB\u6EE2\u6EDA\u9F7F\u6EE8\u6EE9\u6F24\u6F34\u3D46\u{23F41}\u6F81\u6FBE\u3D6A\u3D75\u71B7\u5C99\u3D8A\u702C\u3D91\u7050\u7054\u706F\u707F\u7089\u{20325}\u43C1\u35F1\u{20ED8}"],["8e40","\u{23ED7}\u57BE\u{26ED3}\u713E\u{257E0}\u364E\u69A2\u{28BE9}\u5B74\u7A49\u{258E1}\u{294D9}\u7A65\u7A7D\u{259AC}\u7ABB\u7AB0\u7AC2\u7AC3\u71D1\u{2648D}\u41CA\u7ADA\u7ADD\u7AEA\u41EF\u54B2\u{25C01}\u7B0B\u7B55\u7B29\u{2530E}\u{25CFE}\u7BA2\u7B6F\u839C\u{25BB4}\u{26C7F}\u7BD0\u8421\u7B92\u7BB8\u{25D20}\u3DAD\u{25C65}\u8492\u7BFA\u7C06\u7C35\u{25CC1}\u7C44\u7C83\u{24882}\u7CA6\u667D\u{24578}\u7CC9\u7CC7\u7CE6\u7C74\u7CF3\u7CF5\u7CCE"],["8ea1","\u7E67\u451D\u{26E44}\u7D5D\u{26ED6}\u748D\u7D89\u7DAB\u7135\u7DB3\u7DD2\u{24057}\u{26029}\u7DE4\u3D13\u7DF5\u{217F9}\u7DE5\u{2836D}\u7E1D\u{26121}\u{2615A}\u7E6E\u7E92\u432B\u946C\u7E27\u7F40\u7F41\u7F47\u7936\u{262D0}\u99E1\u7F97\u{26351}\u7FA3\u{21661}\u{20068}\u455C\u{23766}\u4503\u{2833A}\u7FFA\u{26489}\u8005\u8008\u801D\u8028\u802F\u{2A087}\u{26CC3}\u803B\u803C\u8061\u{22714}\u4989\u{26626}\u{23DE3}\u{266E8}\u6725\u80A7\u{28A48}\u8107\u811A\u58B0\u{226F6}\u6C7F\u{26498}\u{24FB8}\u64E7\u{2148A}\u8218\u{2185E}\u6A53\u{24A65}\u{24A95}\u447A\u8229\u{20B0D}\u{26A52}\u{23D7E}\u4FF9\u{214FD}\u84E2\u8362\u{26B0A}\u{249A7}\u{23530}\u{21773}\u{23DF8}\u82AA\u691B\u{2F994}\u41DB"],["8f40","\u854B\u82D0\u831A\u{20E16}\u{217B4}\u36C1\u{2317D}\u{2355A}\u827B\u82E2\u8318\u{23E8B}\u{26DA3}\u{26B05}\u{26B97}\u{235CE}\u3DBF\u831D\u55EC\u8385\u450B\u{26DA5}\u83AC\u83C1\u83D3\u347E\u{26ED4}\u6A57\u855A\u3496\u{26E42}\u{22EEF}\u8458\u{25BE4}\u8471\u3DD3\u44E4\u6AA7\u844A\u{23CB5}\u7958\u84A8\u{26B96}\u{26E77}\u{26E43}\u84DE\u840F\u8391\u44A0\u8493\u84E4\u{25C91}\u4240\u{25CC0}\u4543\u8534\u5AF2\u{26E99}\u4527\u8573\u4516\u67BF\u8616"],["8fa1","\u{28625}\u{2863B}\u85C1\u{27088}\u8602\u{21582}\u{270CD}\u{2F9B2}\u456A\u8628\u3648\u{218A2}\u53F7\u{2739A}\u867E\u8771\u{2A0F8}\u87EE\u{22C27}\u87B1\u87DA\u880F\u5661\u866C\u6856\u460F\u8845\u8846\u{275E0}\u{23DB9}\u{275E4}\u885E\u889C\u465B\u88B4\u88B5\u63C1\u88C5\u7777\u{2770F}\u8987\u898A\u89A6\u89A9\u89A7\u89BC\u{28A25}\u89E7\u{27924}\u{27ABD}\u8A9C\u7793\u91FE\u8A90\u{27A59}\u7AE9\u{27B3A}\u{23F8F}\u4713\u{27B38}\u717C\u8B0C\u8B1F\u{25430}\u{25565}\u8B3F\u8B4C\u8B4D\u8AA9\u{24A7A}\u8B90\u8B9B\u8AAF\u{216DF}\u4615\u884F\u8C9B\u{27D54}\u{27D8F}\u{2F9D4}\u3725\u{27D53}\u8CD6\u{27D98}\u{27DBD}\u8D12\u8D03\u{21910}\u8CDB\u705C\u8D11\u{24CC9}\u3ED0\u8D77"],["9040","\u8DA9\u{28002}\u{21014}\u{2498A}\u3B7C\u{281BC}\u{2710C}\u7AE7\u8EAD\u8EB6\u8EC3\u92D4\u8F19\u8F2D\u{28365}\u{28412}\u8FA5\u9303\u{2A29F}\u{20A50}\u8FB3\u492A\u{289DE}\u{2853D}\u{23DBB}\u5EF8\u{23262}\u8FF9\u{2A014}\u{286BC}\u{28501}\u{22325}\u3980\u{26ED7}\u9037\u{2853C}\u{27ABE}\u9061\u{2856C}\u{2860B}\u90A8\u{28713}\u90C4\u{286E6}\u90AE\u90FD\u9167\u3AF0\u91A9\u91C4\u7CAC\u{28933}\u{21E89}\u920E\u6C9F\u9241\u9262\u{255B9}\u92B9\u{28AC6}\u{23C9B}\u{28B0C}\u{255DB}"],["90a1","\u{20D31}\u932C\u936B\u{28AE1}\u{28BEB}\u708F\u5AC3\u{28AE2}\u{28AE5}\u4965\u9244\u{28BEC}\u{28C39}\u{28BFF}\u9373\u945B\u8EBC\u9585\u95A6\u9426\u95A0\u6FF6\u42B9\u{2267A}\u{286D8}\u{2127C}\u{23E2E}\u49DF\u6C1C\u967B\u9696\u416C\u96A3\u{26ED5}\u61DA\u96B6\u78F5\u{28AE0}\u96BD\u53CC\u49A1\u{26CB8}\u{20274}\u{26410}\u{290AF}\u{290E5}\u{24AD1}\u{21915}\u{2330A}\u9731\u8642\u9736\u4A0F\u453D\u4585\u{24AE9}\u7075\u5B41\u971B\u975C\u{291D5}\u9757\u5B4A\u{291EB}\u975F\u9425\u50D0\u{230B7}\u{230BC}\u9789\u979F\u97B1\u97BE\u97C0\u97D2\u97E0\u{2546C}\u97EE\u741C\u{29433}\u97FF\u97F5\u{2941D}\u{2797A}\u4AD1\u9834\u9833\u984B\u9866\u3B0E\u{27175}\u3D51\u{20630}\u{2415C}"],["9140","\u{25706}\u98CA\u98B7\u98C8\u98C7\u4AFF\u{26D27}\u{216D3}\u55B0\u98E1\u98E6\u98EC\u9378\u9939\u{24A29}\u4B72\u{29857}\u{29905}\u99F5\u9A0C\u9A3B\u9A10\u9A58\u{25725}\u36C4\u{290B1}\u{29BD5}\u9AE0\u9AE2\u{29B05}\u9AF4\u4C0E\u9B14\u9B2D\u{28600}\u5034\u9B34\u{269A8}\u38C3\u{2307D}\u9B50\u9B40\u{29D3E}\u5A45\u{21863}\u9B8E\u{2424B}\u9C02\u9BFF\u9C0C\u{29E68}\u9DD4\u{29FB7}\u{2A192}\u{2A1AB}\u{2A0E1}\u{2A123}\u{2A1DF}\u9D7E\u9D83\u{2A134}\u9E0E\u6888"],["91a1","\u9DC4\u{2215B}\u{2A193}\u{2A220}\u{2193B}\u{2A233}\u9D39\u{2A0B9}\u{2A2B4}\u9E90\u9E95\u9E9E\u9EA2\u4D34\u9EAA\u9EAF\u{24364}\u9EC1\u3B60\u39E5\u3D1D\u4F32\u37BE\u{28C2B}\u9F02\u9F08\u4B96\u9424\u{26DA2}\u9F17\u9F16\u9F39\u569F\u568A\u9F45\u99B8\u{2908B}\u97F2\u847F\u9F62\u9F69\u7ADC\u9F8E\u7216\u4BBE\u{24975}\u{249BB}\u7177\u{249F8}\u{24348}\u{24A51}\u739E\u{28BDA}\u{218FA}\u799F\u{2897E}\u{28E36}\u9369\u93F3\u{28A44}\u92EC\u9381\u93CB\u{2896C}\u{244B9}\u7217\u3EEB\u7772\u7A43\u70D0\u{24473}\u{243F8}\u717E\u{217EF}\u70A3\u{218BE}\u{23599}\u3EC7\u{21885}\u{2542F}\u{217F8}\u3722\u{216FB}\u{21839}\u36E1\u{21774}\u{218D1}\u{25F4B}\u3723\u{216C0}\u575B\u{24A25}\u{213FE}\u{212A8}"],["9240","\u{213C6}\u{214B6}\u8503\u{236A6}\u8503\u8455\u{24994}\u{27165}\u{23E31}\u{2555C}\u{23EFB}\u{27052}\u44F4\u{236EE}\u{2999D}\u{26F26}\u67F9\u3733\u3C15\u3DE7\u586C\u{21922}\u6810\u4057\u{2373F}\u{240E1}\u{2408B}\u{2410F}\u{26C21}\u54CB\u569E\u{266B1}\u5692\u{20FDF}\u{20BA8}\u{20E0D}\u93C6\u{28B13}\u939C\u4EF8\u512B\u3819\u{24436}\u4EBC\u{20465}\u{2037F}\u4F4B\u4F8A\u{25651}\u5A68\u{201AB}\u{203CB}\u3999\u{2030A}\u{20414}\u3435\u4F29\u{202C0}\u{28EB3}\u{20275}\u8ADA\u{2020C}\u4E98"],["92a1","\u50CD\u510D\u4FA2\u4F03\u{24A0E}\u{23E8A}\u4F42\u502E\u506C\u5081\u4FCC\u4FE5\u5058\u50FC\u5159\u515B\u515D\u515E\u6E76\u{23595}\u{23E39}\u{23EBF}\u6D72\u{21884}\u{23E89}\u51A8\u51C3\u{205E0}\u44DD\u{204A3}\u{20492}\u{20491}\u8D7A\u{28A9C}\u{2070E}\u5259\u52A4\u{20873}\u52E1\u936E\u467A\u718C\u{2438C}\u{20C20}\u{249AC}\u{210E4}\u69D1\u{20E1D}\u7479\u3EDE\u7499\u7414\u7456\u7398\u4B8E\u{24ABC}\u{2408D}\u53D0\u3584\u720F\u{240C9}\u55B4\u{20345}\u54CD\u{20BC6}\u571D\u925D\u96F4\u9366\u57DD\u578D\u577F\u363E\u58CB\u5A99\u{28A46}\u{216FA}\u{2176F}\u{21710}\u5A2C\u59B8\u928F\u5A7E\u5ACF\u5A12\u{25946}\u{219F3}\u{21861}\u{24295}\u36F5\u6D05\u7443\u5A21\u{25E83}"],["9340","\u5A81\u{28BD7}\u{20413}\u93E0\u748C\u{21303}\u7105\u4972\u9408\u{289FB}\u93BD\u37A0\u5C1E\u5C9E\u5E5E\u5E48\u{21996}\u{2197C}\u{23AEE}\u5ECD\u5B4F\u{21903}\u{21904}\u3701\u{218A0}\u36DD\u{216FE}\u36D3\u812A\u{28A47}\u{21DBA}\u{23472}\u{289A8}\u5F0C\u5F0E\u{21927}\u{217AB}\u5A6B\u{2173B}\u5B44\u8614\u{275FD}\u8860\u607E\u{22860}\u{2262B}\u5FDB\u3EB8\u{225AF}\u{225BE}\u{29088}\u{26F73}\u61C0\u{2003E}\u{20046}\u{2261B}\u6199\u6198\u6075\u{22C9B}\u{22D07}\u{246D4}\u{2914D}"],["93a1","\u6471\u{24665}\u{22B6A}\u3A29\u{22B22}\u{23450}\u{298EA}\u{22E78}\u6337\u{2A45B}\u64B6\u6331\u63D1\u{249E3}\u{22D67}\u62A4\u{22CA1}\u643B\u656B\u6972\u3BF4\u{2308E}\u{232AD}\u{24989}\u{232AB}\u550D\u{232E0}\u{218D9}\u{2943F}\u66CE\u{23289}\u{231B3}\u3AE0\u4190\u{25584}\u{28B22}\u{2558F}\u{216FC}\u{2555B}\u{25425}\u78EE\u{23103}\u{2182A}\u{23234}\u3464\u{2320F}\u{23182}\u{242C9}\u668E\u{26D24}\u666B\u4B93\u6630\u{27870}\u{21DEB}\u6663\u{232D2}\u{232E1}\u661E\u{25872}\u38D1\u{2383A}\u{237BC}\u3B99\u{237A2}\u{233FE}\u74D0\u3B96\u678F\u{2462A}\u68B6\u681E\u3BC4\u6ABE\u3863\u{237D5}\u{24487}\u6A33\u6A52\u6AC9\u6B05\u{21912}\u6511\u6898\u6A4C\u3BD7\u6A7A\u6B57\u{23FC0}\u{23C9A}\u93A0\u92F2\u{28BEA}\u{28ACB}"],["9440","\u9289\u{2801E}\u{289DC}\u9467\u6DA5\u6F0B\u{249EC}\u6D67\u{23F7F}\u3D8F\u6E04\u{2403C}\u5A3D\u6E0A\u5847\u6D24\u7842\u713B\u{2431A}\u{24276}\u70F1\u7250\u7287\u7294\u{2478F}\u{24725}\u5179\u{24AA4}\u{205EB}\u747A\u{23EF8}\u{2365F}\u{24A4A}\u{24917}\u{25FE1}\u3F06\u3EB1\u{24ADF}\u{28C23}\u{23F35}\u60A7\u3EF3\u74CC\u743C\u9387\u7437\u449F\u{26DEA}\u4551\u7583\u3F63\u{24CD9}\u{24D06}\u3F58\u7555\u7673\u{2A5C6}\u3B19\u7468\u{28ACC}\u{249AB}\u{2498E}\u3AFB"],["94a1","\u3DCD\u{24A4E}\u3EFF\u{249C5}\u{248F3}\u91FA\u5732\u9342\u{28AE3}\u{21864}\u50DF\u{25221}\u{251E7}\u7778\u{23232}\u770E\u770F\u777B\u{24697}\u{23781}\u3A5E\u{248F0}\u7438\u749B\u3EBF\u{24ABA}\u{24AC7}\u40C8\u{24A96}\u{261AE}\u9307\u{25581}\u781E\u788D\u7888\u78D2\u73D0\u7959\u{27741}\u{256E3}\u410E\u799B\u8496\u79A5\u6A2D\u{23EFA}\u7A3A\u79F4\u416E\u{216E6}\u4132\u9235\u79F1\u{20D4C}\u{2498C}\u{20299}\u{23DBA}\u{2176E}\u3597\u556B\u3570\u36AA\u{201D4}\u{20C0D}\u7AE2\u5A59\u{226F5}\u{25AAF}\u{25A9C}\u5A0D\u{2025B}\u78F0\u5A2A\u{25BC6}\u7AFE\u41F9\u7C5D\u7C6D\u4211\u{25BB3}\u{25EBC}\u{25EA6}\u7CCD\u{249F9}\u{217B0}\u7C8E\u7C7C\u7CAE\u6AB2\u7DDC\u7E07\u7DD3\u7F4E\u{26261}"],["9540","\u{2615C}\u{27B48}\u7D97\u{25E82}\u426A\u{26B75}\u{20916}\u67D6\u{2004E}\u{235CF}\u57C4\u{26412}\u{263F8}\u{24962}\u7FDD\u7B27\u{2082C}\u{25AE9}\u{25D43}\u7B0C\u{25E0E}\u99E6\u8645\u9A63\u6A1C\u{2343F}\u39E2\u{249F7}\u{265AD}\u9A1F\u{265A0}\u8480\u{27127}\u{26CD1}\u44EA\u8137\u4402\u80C6\u8109\u8142\u{267B4}\u98C3\u{26A42}\u8262\u8265\u{26A51}\u8453\u{26DA7}\u8610\u{2721B}\u5A86\u417F\u{21840}\u5B2B\u{218A1}\u5AE4\u{218D8}\u86A0\u{2F9BC}\u{23D8F}\u882D\u{27422}\u5A02"],["95a1","\u886E\u4F45\u8887\u88BF\u88E6\u8965\u894D\u{25683}\u8954\u{27785}\u{27784}\u{28BF5}\u{28BD9}\u{28B9C}\u{289F9}\u3EAD\u84A3\u46F5\u46CF\u37F2\u8A3D\u8A1C\u{29448}\u5F4D\u922B\u{24284}\u65D4\u7129\u70C4\u{21845}\u9D6D\u8C9F\u8CE9\u{27DDC}\u599A\u77C3\u59F0\u436E\u36D4\u8E2A\u8EA7\u{24C09}\u8F30\u8F4A\u42F4\u6C58\u6FBB\u{22321}\u489B\u6F79\u6E8B\u{217DA}\u9BE9\u36B5\u{2492F}\u90BB\u9097\u5571\u4906\u91BB\u9404\u{28A4B}\u4062\u{28AFC}\u9427\u{28C1D}\u{28C3B}\u84E5\u8A2B\u9599\u95A7\u9597\u9596\u{28D34}\u7445\u3EC2\u{248FF}\u{24A42}\u{243EA}\u3EE7\u{23225}\u968F\u{28EE7}\u{28E66}\u{28E65}\u3ECC\u{249ED}\u{24A78}\u{23FEE}\u7412\u746B\u3EFC\u9741\u{290B0}"],["9640","\u6847\u4A1D\u{29093}\u{257DF}\u975D\u9368\u{28989}\u{28C26}\u{28B2F}\u{263BE}\u92BA\u5B11\u8B69\u493C\u73F9\u{2421B}\u979B\u9771\u9938\u{20F26}\u5DC1\u{28BC5}\u{24AB2}\u981F\u{294DA}\u92F6\u{295D7}\u91E5\u44C0\u{28B50}\u{24A67}\u{28B64}\u98DC\u{28A45}\u3F00\u922A\u4925\u8414\u993B\u994D\u{27B06}\u3DFD\u999B\u4B6F\u99AA\u9A5C\u{28B65}\u{258C8}\u6A8F\u9A21\u5AFE\u9A2F\u{298F1}\u4B90\u{29948}\u99BC\u4BBD\u4B97\u937D\u5872\u{21302}\u5822\u{249B8}"],["96a1","\u{214E8}\u7844\u{2271F}\u{23DB8}\u68C5\u3D7D\u9458\u3927\u6150\u{22781}\u{2296B}\u6107\u9C4F\u9C53\u9C7B\u9C35\u9C10\u9B7F\u9BCF\u{29E2D}\u9B9F\u{2A1F5}\u{2A0FE}\u9D21\u4CAE\u{24104}\u9E18\u4CB0\u9D0C\u{2A1B4}\u{2A0ED}\u{2A0F3}\u{2992F}\u9DA5\u84BD\u{26E12}\u{26FDF}\u{26B82}\u85FC\u4533\u{26DA4}\u{26E84}\u{26DF0}\u8420\u85EE\u{26E00}\u{237D7}\u{26064}\u79E2\u{2359C}\u{23640}\u492D\u{249DE}\u3D62\u93DB\u92BE\u9348\u{202BF}\u78B9\u9277\u944D\u4FE4\u3440\u9064\u{2555D}\u783D\u7854\u78B6\u784B\u{21757}\u{231C9}\u{24941}\u369A\u4F72\u6FDA\u6FD9\u701E\u701E\u5414\u{241B5}\u57BB\u58F3\u578A\u9D16\u57D7\u7134\u34AF\u{241AC}\u71EB\u{26C40}\u{24F97}\u5B28\u{217B5}\u{28A49}"],["9740","\u610C\u5ACE\u5A0B\u42BC\u{24488}\u372C\u4B7B\u{289FC}\u93BB\u93B8\u{218D6}\u{20F1D}\u8472\u{26CC0}\u{21413}\u{242FA}\u{22C26}\u{243C1}\u5994\u{23DB7}\u{26741}\u7DA8\u{2615B}\u{260A4}\u{249B9}\u{2498B}\u{289FA}\u92E5\u73E2\u3EE9\u74B4\u{28B63}\u{2189F}\u3EE1\u{24AB3}\u6AD8\u73F3\u73FB\u3ED6\u{24A3E}\u{24A94}\u{217D9}\u{24A66}\u{203A7}\u{21424}\u{249E5}\u7448\u{24916}\u70A5\u{24976}\u9284\u73E6\u935F\u{204FE}\u9331\u{28ACE}\u{28A16}\u9386\u{28BE7}\u{255D5}\u4935\u{28A82}\u716B"],["97a1","\u{24943}\u{20CFF}\u56A4\u{2061A}\u{20BEB}\u{20CB8}\u5502\u79C4\u{217FA}\u7DFE\u{216C2}\u{24A50}\u{21852}\u452E\u9401\u370A\u{28AC0}\u{249AD}\u59B0\u{218BF}\u{21883}\u{27484}\u5AA1\u36E2\u{23D5B}\u36B0\u925F\u5A79\u{28A81}\u{21862}\u9374\u3CCD\u{20AB4}\u4A96\u398A\u50F4\u3D69\u3D4C\u{2139C}\u7175\u42FB\u{28218}\u6E0F\u{290E4}\u44EB\u6D57\u{27E4F}\u7067\u6CAF\u3CD6\u{23FED}\u{23E2D}\u6E02\u6F0C\u3D6F\u{203F5}\u7551\u36BC\u34C8\u4680\u3EDA\u4871\u59C4\u926E\u493E\u8F41\u{28C1C}\u{26BC0}\u5812\u57C8\u36D6\u{21452}\u70FE\u{24362}\u{24A71}\u{22FE3}\u{212B0}\u{223BD}\u68B9\u6967\u{21398}\u{234E5}\u{27BF4}\u{236DF}\u{28A83}\u{237D6}\u{233FA}\u{24C9F}\u6A1A\u{236AD}\u{26CB7}\u843E\u44DF\u44CE"],["9840","\u{26D26}\u{26D51}\u{26C82}\u{26FDE}\u6F17\u{27109}\u833D\u{2173A}\u83ED\u{26C80}\u{27053}\u{217DB}\u5989\u5A82\u{217B3}\u5A61\u5A71\u{21905}\u{241FC}\u372D\u59EF\u{2173C}\u36C7\u718E\u9390\u669A\u{242A5}\u5A6E\u5A2B\u{24293}\u6A2B\u{23EF9}\u{27736}\u{2445B}\u{242CA}\u711D\u{24259}\u{289E1}\u4FB0\u{26D28}\u5CC2\u{244CE}\u{27E4D}\u{243BD}\u6A0C\u{24256}\u{21304}\u70A6\u7133\u{243E9}\u3DA5\u6CDF\u{2F825}\u{24A4F}\u7E65\u59EB\u5D2F\u3DF3\u5F5C\u{24A5D}\u{217DF}\u7DA4\u8426"],["98a1","\u5485\u{23AFA}\u{23300}\u{20214}\u577E\u{208D5}\u{20619}\u3FE5\u{21F9E}\u{2A2B6}\u7003\u{2915B}\u5D70\u738F\u7CD3\u{28A59}\u{29420}\u4FC8\u7FE7\u72CD\u7310\u{27AF4}\u7338\u7339\u{256F6}\u7341\u7348\u3EA9\u{27B18}\u906C\u71F5\u{248F2}\u73E1\u81F6\u3ECA\u770C\u3ED1\u6CA2\u56FD\u7419\u741E\u741F\u3EE2\u3EF0\u3EF4\u3EFA\u74D3\u3F0E\u3F53\u7542\u756D\u7572\u758D\u3F7C\u75C8\u75DC\u3FC0\u764D\u3FD7\u7674\u3FDC\u767A\u{24F5C}\u7188\u5623\u8980\u5869\u401D\u7743\u4039\u6761\u4045\u35DB\u7798\u406A\u406F\u5C5E\u77BE\u77CB\u58F2\u7818\u70B9\u781C\u40A8\u7839\u7847\u7851\u7866\u8448\u{25535}\u7933\u6803\u7932\u4103"],["9940","\u4109\u7991\u7999\u8FBB\u7A06\u8FBC\u4167\u7A91\u41B2\u7ABC\u8279\u41C4\u7ACF\u7ADB\u41CF\u4E21\u7B62\u7B6C\u7B7B\u7C12\u7C1B\u4260\u427A\u7C7B\u7C9C\u428C\u7CB8\u4294\u7CED\u8F93\u70C0\u{20CCF}\u7DCF\u7DD4\u7DD0\u7DFD\u7FAE\u7FB4\u729F\u4397\u8020\u8025\u7B39\u802E\u8031\u8054\u3DCC\u57B4\u70A0\u80B7\u80E9\u43ED\u810C\u732A\u810E\u8112\u7560\u8114\u4401\u3B39\u8156\u8159\u815A"],["99a1","\u4413\u583A\u817C\u8184\u4425\u8193\u442D\u81A5\u57EF\u81C1\u81E4\u8254\u448F\u82A6\u8276\u82CA\u82D8\u82FF\u44B0\u8357\u9669\u698A\u8405\u70F5\u8464\u60E3\u8488\u4504\u84BE\u84E1\u84F8\u8510\u8538\u8552\u453B\u856F\u8570\u85E0\u4577\u8672\u8692\u86B2\u86EF\u9645\u878B\u4606\u4617\u88AE\u88FF\u8924\u8947\u8991\u{27967}\u8A29\u8A38\u8A94\u8AB4\u8C51\u8CD4\u8CF2\u8D1C\u4798\u585F\u8DC3\u47ED\u4EEE\u8E3A\u55D8\u5754\u8E71\u55F5\u8EB0\u4837\u8ECE\u8EE2\u8EE4\u8EED\u8EF2\u8FB7\u8FC1\u8FCA\u8FCC\u9033\u99C4\u48AD\u98E0\u9213\u491E\u9228\u9258\u926B\u92B1\u92AE\u92BF"],["9a40","\u92E3\u92EB\u92F3\u92F4\u92FD\u9343\u9384\u93AD\u4945\u4951\u9EBF\u9417\u5301\u941D\u942D\u943E\u496A\u9454\u9479\u952D\u95A2\u49A7\u95F4\u9633\u49E5\u67A0\u4A24\u9740\u4A35\u97B2\u97C2\u5654\u4AE4\u60E8\u98B9\u4B19\u98F1\u5844\u990E\u9919\u51B4\u991C\u9937\u9942\u995D\u9962\u4B70\u99C5\u4B9D\u9A3C\u9B0F\u7A83\u9B69\u9B81\u9BDD\u9BF1\u9BF4\u4C6D\u9C20\u376F\u{21BC2}\u9D49\u9C3A"],["9aa1","\u9EFE\u5650\u9D93\u9DBD\u9DC0\u9DFC\u94F6\u8FB6\u9E7B\u9EAC\u9EB1\u9EBD\u9EC6\u94DC\u9EE2\u9EF1\u9EF8\u7AC8\u9F44\u{20094}\u{202B7}\u{203A0}\u691A\u94C3\u59AC\u{204D7}\u5840\u94C1\u37B9\u{205D5}\u{20615}\u{20676}\u{216BA}\u5757\u7173\u{20AC2}\u{20ACD}\u{20BBF}\u546A\u{2F83B}\u{20BCB}\u549E\u{20BFB}\u{20C3B}\u{20C53}\u{20C65}\u{20C7C}\u60E7\u{20C8D}\u567A\u{20CB5}\u{20CDD}\u{20CED}\u{20D6F}\u{20DB2}\u{20DC8}\u6955\u9C2F\u87A5\u{20E04}\u{20E0E}\u{20ED7}\u{20F90}\u{20F2D}\u{20E73}\u5C20\u{20FBC}\u5E0B\u{2105C}\u{2104F}\u{21076}\u671E\u{2107B}\u{21088}\u{21096}\u3647\u{210BF}\u{210D3}\u{2112F}\u{2113B}\u5364\u84AD\u{212E3}\u{21375}\u{21336}\u8B81\u{21577}\u{21619}\u{217C3}\u{217C7}\u4E78\u70BB\u{2182D}\u{2196A}"],["9b40","\u{21A2D}\u{21A45}\u{21C2A}\u{21C70}\u{21CAC}\u{21EC8}\u62C3\u{21ED5}\u{21F15}\u7198\u6855\u{22045}\u69E9\u36C8\u{2227C}\u{223D7}\u{223FA}\u{2272A}\u{22871}\u{2294F}\u82FD\u{22967}\u{22993}\u{22AD5}\u89A5\u{22AE8}\u8FA0\u{22B0E}\u97B8\u{22B3F}\u9847\u9ABD\u{22C4C}"],["9b62","\u{22C88}\u{22CB7}\u{25BE8}\u{22D08}\u{22D12}\u{22DB7}\u{22D95}\u{22E42}\u{22F74}\u{22FCC}\u{23033}\u{23066}\u{2331F}\u{233DE}\u5FB1\u6648\u66BF\u{27A79}\u{23567}\u{235F3}\u7201\u{249BA}\u77D7\u{2361A}\u{23716}\u7E87\u{20346}\u58B5\u670E"],["9ba1","\u6918\u{23AA7}\u{27657}\u{25FE2}\u{23E11}\u{23EB9}\u{275FE}\u{2209A}\u48D0\u4AB8\u{24119}\u{28A9A}\u{242EE}\u{2430D}\u{2403B}\u{24334}\u{24396}\u{24A45}\u{205CA}\u51D2\u{20611}\u599F\u{21EA8}\u3BBE\u{23CFF}\u{24404}\u{244D6}\u5788\u{24674}\u399B\u{2472F}\u{285E8}\u{299C9}\u3762\u{221C3}\u8B5E\u{28B4E}\u99D6\u{24812}\u{248FB}\u{24A15}\u7209\u{24AC0}\u{20C78}\u5965\u{24EA5}\u{24F86}\u{20779}\u8EDA\u{2502C}\u528F\u573F\u7171\u{25299}\u{25419}\u{23F4A}\u{24AA7}\u55BC\u{25446}\u{2546E}\u{26B52}\u91D4\u3473\u{2553F}\u{27632}\u{2555E}\u4718\u{25562}\u{25566}\u{257C7}\u{2493F}\u{2585D}\u5066\u34FB\u{233CC}\u60DE\u{25903}\u477C\u{28948}\u{25AAE}\u{25B89}\u{25C06}\u{21D90}\u57A1\u7151\u6FB6\u{26102}\u{27C12}\u9056\u{261B2}\u{24F9A}\u8B62\u{26402}\u{2644A}"],["9c40","\u5D5B\u{26BF7}\u8F36\u{26484}\u{2191C}\u8AEA\u{249F6}\u{26488}\u{23FEF}\u{26512}\u4BC0\u{265BF}\u{266B5}\u{2271B}\u9465\u{257E1}\u6195\u5A27\u{2F8CD}\u4FBB\u56B9\u{24521}\u{266FC}\u4E6A\u{24934}\u9656\u6D8F\u{26CBD}\u3618\u8977\u{26799}\u{2686E}\u{26411}\u{2685E}\u71DF\u{268C7}\u7B42\u{290C0}\u{20A11}\u{26926}\u9104\u{26939}\u7A45\u9DF0\u{269FA}\u9A26\u{26A2D}\u365F\u{26469}\u{20021}\u7983\u{26A34}\u{26B5B}\u5D2C\u{23519}\u83CF\u{26B9D}\u46D0\u{26CA4}\u753B\u8865\u{26DAE}\u58B6"],["9ca1","\u371C\u{2258D}\u{2704B}\u{271CD}\u3C54\u{27280}\u{27285}\u9281\u{2217A}\u{2728B}\u9330\u{272E6}\u{249D0}\u6C39\u949F\u{27450}\u{20EF8}\u8827\u88F5\u{22926}\u{28473}\u{217B1}\u6EB8\u{24A2A}\u{21820}\u39A4\u36B9\u5C10\u79E3\u453F\u66B6\u{29CAD}\u{298A4}\u8943\u{277CC}\u{27858}\u56D6\u40DF\u{2160A}\u39A1\u{2372F}\u{280E8}\u{213C5}\u71AD\u8366\u{279DD}\u{291A8}\u5A67\u4CB7\u{270AF}\u{289AB}\u{279FD}\u{27A0A}\u{27B0B}\u{27D66}\u{2417A}\u7B43\u797E\u{28009}\u6FB5\u{2A2DF}\u6A03\u{28318}\u53A2\u{26E07}\u93BF\u6836\u975D\u{2816F}\u{28023}\u{269B5}\u{213ED}\u{2322F}\u{28048}\u5D85\u{28C30}\u{28083}\u5715\u9823\u{28949}\u5DAB\u{24988}\u65BE\u69D5\u53D2\u{24AA5}\u{23F81}\u3C11\u6736\u{28090}\u{280F4}\u{2812E}\u{21FA1}\u{2814F}"],["9d40","\u{28189}\u{281AF}\u{2821A}\u{28306}\u{2832F}\u{2838A}\u35CA\u{28468}\u{286AA}\u48FA\u63E6\u{28956}\u7808\u9255\u{289B8}\u43F2\u{289E7}\u43DF\u{289E8}\u{28B46}\u{28BD4}\u59F8\u{28C09}\u8F0B\u{28FC5}\u{290EC}\u7B51\u{29110}\u{2913C}\u3DF7\u{2915E}\u{24ACA}\u8FD0\u728F\u568B\u{294E7}\u{295E9}\u{295B0}\u{295B8}\u{29732}\u{298D1}\u{29949}\u{2996A}\u{299C3}\u{29A28}\u{29B0E}\u{29D5A}\u{29D9B}\u7E9F\u{29EF8}\u{29F23}\u4CA4\u9547\u{2A293}\u71A2\u{2A2FF}\u4D91\u9012\u{2A5CB}\u4D9C\u{20C9C}\u8FBE\u55C1"],["9da1","\u8FBA\u{224B0}\u8FB9\u{24A93}\u4509\u7E7F\u6F56\u6AB1\u4EEA\u34E4\u{28B2C}\u{2789D}\u373A\u8E80\u{217F5}\u{28024}\u{28B6C}\u{28B99}\u{27A3E}\u{266AF}\u3DEB\u{27655}\u{23CB7}\u{25635}\u{25956}\u4E9A\u{25E81}\u{26258}\u56BF\u{20E6D}\u8E0E\u5B6D\u{23E88}\u{24C9E}\u63DE\u62D0\u{217F6}\u{2187B}\u6530\u562D\u{25C4A}\u541A\u{25311}\u3DC6\u{29D98}\u4C7D\u5622\u561E\u7F49\u{25ED8}\u5975\u{23D40}\u8770\u4E1C\u{20FEA}\u{20D49}\u{236BA}\u8117\u9D5E\u8D18\u763B\u9C45\u764E\u77B9\u9345\u5432\u8148\u82F7\u5625\u8132\u8418\u80BD\u55EA\u7962\u5643\u5416\u{20E9D}\u35CE\u5605\u55F1\u66F1\u{282E2}\u362D\u7534\u55F0\u55BA\u5497\u5572\u{20C41}\u{20C96}\u5ED0\u{25148}\u{20E76}\u{22C62}"],["9e40","\u{20EA2}\u9EAB\u7D5A\u55DE\u{21075}\u629D\u976D\u5494\u8CCD\u71F6\u9176\u63FC\u63B9\u63FE\u5569\u{22B43}\u9C72\u{22EB3}\u519A\u34DF\u{20DA7}\u51A7\u544D\u551E\u5513\u7666\u8E2D\u{2688A}\u75B1\u80B6\u8804\u8786\u88C7\u81B6\u841C\u{210C1}\u44EC\u7304\u{24706}\u5B90\u830B\u{26893}\u567B\u{226F4}\u{27D2F}\u{241A3}\u{27D73}\u{26ED0}\u{272B6}\u9170\u{211D9}\u9208\u{23CFC}\u{2A6A9}\u{20EAC}\u{20EF9}\u7266\u{21CA2}\u474E\u{24FC2}\u{27FF9}\u{20FEB}\u40FA"],["9ea1","\u9C5D\u651F\u{22DA0}\u48F3\u{247E0}\u{29D7C}\u{20FEC}\u{20E0A}\u6062\u{275A3}\u{20FED}"],["9ead","\u{26048}\u{21187}\u71A3\u7E8E\u9D50\u4E1A\u4E04\u3577\u5B0D\u6CB2\u5367\u36AC\u39DC\u537D\u36A5\u{24618}\u589A\u{24B6E}\u822D\u544B\u57AA\u{25A95}\u{20979}"],["9ec5","\u3A52\u{22465}\u7374\u{29EAC}\u4D09\u9BED\u{23CFE}\u{29F30}\u4C5B\u{24FA9}\u{2959E}\u{29FDE}\u845C\u{23DB6}\u{272B2}\u{267B3}\u{23720}\u632E\u7D25\u{23EF7}\u{23E2C}\u3A2A\u9008\u52CC\u3E74\u367A\u45E9\u{2048E}\u7640\u5AF0\u{20EB6}\u787A\u{27F2E}\u58A7\u40BF\u567C\u9B8B\u5D74\u7654\u{2A434}\u9E85\u4CE1\u75F9\u37FB\u6119\u{230DA}\u{243F2}"],["9ef5","\u565D\u{212A9}\u57A7\u{24963}\u{29E06}\u5234\u{270AE}\u35AD\u6C4A\u9D7C"],["9f40","\u7C56\u9B39\u57DE\u{2176C}\u5C53\u64D3\u{294D0}\u{26335}\u{27164}\u86AD\u{20D28}\u{26D22}\u{24AE2}\u{20D71}"],["9f4f","\u51FE\u{21F0F}\u5D8E\u9703\u{21DD1}\u9E81\u904C\u7B1F\u9B02\u5CD1\u7BA3\u6268\u6335\u9AFF\u7BCF\u9B2A\u7C7E\u9B2E\u7C42\u7C86\u9C15\u7BFC\u9B09\u9F17\u9C1B\u{2493E}\u9F5A\u5573\u5BC3\u4FFD\u9E98\u4FF2\u5260\u3E06\u52D1\u5767\u5056\u59B7\u5E12\u97C8\u9DAB\u8F5C\u5469\u97B4\u9940\u97BA\u532C\u6130"],["9fa1","\u692C\u53DA\u9C0A\u9D02\u4C3B\u9641\u6980\u50A6\u7546\u{2176D}\u99DA\u5273"],["9fae","\u9159\u9681\u915C"],["9fb2","\u9151\u{28E97}\u637F\u{26D23}\u6ACA\u5611\u918E\u757A\u6285\u{203FC}\u734F\u7C70\u{25C21}\u{23CFD}"],["9fc1","\u{24919}\u76D6\u9B9D\u4E2A\u{20CD4}\u83BE\u8842"],["9fc9","\u5C4A\u69C0\u50ED\u577A\u521F\u5DF5\u4ECE\u6C31\u{201F2}\u4F39\u549C\u54DA\u529A\u8D82\u35FE\u5F0C\u35F3"],["9fdb","\u6B52\u917C\u9FA5\u9B97\u982E\u98B4\u9ABA\u9EA8\u9E84\u717A\u7B14"],["9fe7","\u6BFA\u8818\u7F78"],["9feb","\u5620\u{2A64A}\u8E77\u9F53"],["9ff0","\u8DD4\u8E4F\u9E1C\u8E01\u6282\u{2837D}\u8E28\u8E75\u7AD3\u{24A77}\u7A3E\u78D8\u6CEA\u8A67\u7607"],["a040","\u{28A5A}\u9F26\u6CCE\u87D6\u75C3\u{2A2B2}\u7853\u{2F840}\u8D0C\u72E2\u7371\u8B2D\u7302\u74F1\u8CEB\u{24ABB}\u862F\u5FBA\u88A0\u44B7"],["a055","\u{2183B}\u{26E05}"],["a058","\u8A7E\u{2251B}"],["a05b","\u60FD\u7667\u9AD7\u9D44\u936E\u9B8F\u87F5"],["a063","\u880F\u8CF7\u732C\u9721\u9BB0\u35D6\u72B2\u4C07\u7C51\u994A\u{26159}\u6159\u4C04\u9E96\u617D"],["a073","\u575F\u616F\u62A6\u6239\u62CE\u3A5C\u61E2\u53AA\u{233F5}\u6364\u6802\u35D2"],["a0a1","\u5D57\u{28BC2}\u8FDA\u{28E39}"],["a0a6","\u50D9\u{21D46}\u7906\u5332\u9638\u{20F3B}\u4065"],["a0ae","\u77FE"],["a0b0","\u7CC2\u{25F1A}\u7CDA\u7A2D\u8066\u8063\u7D4D\u7505\u74F2\u8994\u821A\u670C\u8062\u{27486}\u805B\u74F0\u8103\u7724\u8989\u{267CC}\u7553\u{26ED1}\u87A9\u87CE\u81C8\u878C\u8A49\u8CAD\u8B43\u772B\u74F8\u84DA\u3635\u69B2\u8DA6"],["a0d4","\u89A9\u7468\u6DB9\u87C1\u{24011}\u74E7\u3DDB\u7176\u60A4\u619C\u3CD1\u7162\u6077"],["a0e2","\u7F71\u{28B2D}\u7250\u60E9\u4B7E\u5220\u3C18\u{23CC7}\u{25ED7}\u{27656}\u{25531}\u{21944}\u{212FE}\u{29903}\u{26DDC}\u{270AD}\u5CC1\u{261AD}\u{28A0F}\u{23677}\u{200EE}\u{26846}\u{24F0E}\u4562\u5B1F\u{2634C}\u9F50\u9EA6\u{2626B}"],["a3c0","\u2400",31,"\u2421"],["c6a1","\u2460",9,"\u2474",9,"\u2170",9,"\u4E36\u4E3F\u4E85\u4EA0\u5182\u5196\u51AB\u52F9\u5338\u5369\u53B6\u590A\u5B80\u5DDB\u2F33\u5E7F\u5EF4\u5F50\u5F61\u6534\u65E0\u7592\u7676\u8FB5\u96B6\xA8\u02C6\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\uFF3B\uFF3D\u273D\u3041",23],["c740","\u3059",58,"\u30A1\u30A2\u30A3\u30A4"],["c7a1","\u30A5",81,"\u0410",5,"\u0401\u0416",4],["c840","\u041B",26,"\u0451\u0436",25,"\u21E7\u21B8\u21B9\u31CF\u{200CC}\u4E5A\u{2008A}\u5202\u4491"],["c8a1","\u9FB0\u5188\u9FB1\u{27607}"],["c8cd","\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u309B\u309C\u2E80\u2E84\u2E86\u2E87\u2E88\u2E8A\u2E8C\u2E8D\u2E95\u2E9C\u2E9D\u2EA5\u2EA7\u2EAA\u2EAC\u2EAE\u2EB6\u2EBC\u2EBE\u2EC6\u2ECA\u2ECC\u2ECD\u2ECF\u2ED6\u2ED7\u2EDE\u2EE3"],["c8f5","\u0283\u0250\u025B\u0254\u0275\u0153\xF8\u014B\u028A\u026A"],["f9fe","\uFFED"],["fa40","\u{20547}\u92DB\u{205DF}\u{23FC5}\u854C\u42B5\u73EF\u51B5\u3649\u{24942}\u{289E4}\u9344\u{219DB}\u82EE\u{23CC8}\u783C\u6744\u62DF\u{24933}\u{289AA}\u{202A0}\u{26BB3}\u{21305}\u4FAB\u{224ED}\u5008\u{26D29}\u{27A84}\u{23600}\u{24AB1}\u{22513}\u5029\u{2037E}\u5FA4\u{20380}\u{20347}\u6EDB\u{2041F}\u507D\u5101\u347A\u510E\u986C\u3743\u8416\u{249A4}\u{20487}\u5160\u{233B4}\u516A\u{20BFF}\u{220FC}\u{202E5}\u{22530}\u{2058E}\u{23233}\u{21983}\u5B82\u877D\u{205B3}\u{23C99}\u51B2\u51B8"],["faa1","\u9D34\u51C9\u51CF\u51D1\u3CDC\u51D3\u{24AA6}\u51B3\u51E2\u5342\u51ED\u83CD\u693E\u{2372D}\u5F7B\u520B\u5226\u523C\u52B5\u5257\u5294\u52B9\u52C5\u7C15\u8542\u52E0\u860D\u{26B13}\u5305\u{28ADE}\u5549\u6ED9\u{23F80}\u{20954}\u{23FEC}\u5333\u5344\u{20BE2}\u6CCB\u{21726}\u681B\u73D5\u604A\u3EAA\u38CC\u{216E8}\u71DD\u44A2\u536D\u5374\u{286AB}\u537E\u537F\u{21596}\u{21613}\u77E6\u5393\u{28A9B}\u53A0\u53AB\u53AE\u73A7\u{25772}\u3F59\u739C\u53C1\u53C5\u6C49\u4E49\u57FE\u53D9\u3AAB\u{20B8F}\u53E0\u{23FEB}\u{22DA3}\u53F6\u{20C77}\u5413\u7079\u552B\u6657\u6D5B\u546D\u{26B53}\u{20D74}\u555D\u548F\u54A4\u47A6\u{2170D}\u{20EDD}\u3DB4\u{20D4D}"],["fb40","\u{289BC}\u{22698}\u5547\u4CED\u542F\u7417\u5586\u55A9\u5605\u{218D7}\u{2403A}\u4552\u{24435}\u66B3\u{210B4}\u5637\u66CD\u{2328A}\u66A4\u66AD\u564D\u564F\u78F1\u56F1\u9787\u53FE\u5700\u56EF\u56ED\u{28B66}\u3623\u{2124F}\u5746\u{241A5}\u6C6E\u708B\u5742\u36B1\u{26C7E}\u57E6\u{21416}\u5803\u{21454}\u{24363}\u5826\u{24BF5}\u585C\u58AA\u3561\u58E0\u58DC\u{2123C}\u58FB\u5BFF\u5743\u{2A150}\u{24278}\u93D3\u35A1\u591F\u68A6\u36C3\u6E59"],["fba1","\u{2163E}\u5A24\u5553\u{21692}\u8505\u59C9\u{20D4E}\u{26C81}\u{26D2A}\u{217DC}\u59D9\u{217FB}\u{217B2}\u{26DA6}\u6D71\u{21828}\u{216D5}\u59F9\u{26E45}\u5AAB\u5A63\u36E6\u{249A9}\u5A77\u3708\u5A96\u7465\u5AD3\u{26FA1}\u{22554}\u3D85\u{21911}\u3732\u{216B8}\u5E83\u52D0\u5B76\u6588\u5B7C\u{27A0E}\u4004\u485D\u{20204}\u5BD5\u6160\u{21A34}\u{259CC}\u{205A5}\u5BF3\u5B9D\u4D10\u5C05\u{21B44}\u5C13\u73CE\u5C14\u{21CA5}\u{26B28}\u5C49\u48DD\u5C85\u5CE9\u5CEF\u5D8B\u{21DF9}\u{21E37}\u5D10\u5D18\u5D46\u{21EA4}\u5CBA\u5DD7\u82FC\u382D\u{24901}\u{22049}\u{22173}\u8287\u3836\u3BC2\u5E2E\u6A8A\u5E75\u5E7A\u{244BC}\u{20CD3}\u53A6\u4EB7\u5ED0\u53A8\u{21771}\u5E09\u5EF4\u{28482}"],["fc40","\u5EF9\u5EFB\u38A0\u5EFC\u683E\u941B\u5F0D\u{201C1}\u{2F894}\u3ADE\u48AE\u{2133A}\u5F3A\u{26888}\u{223D0}\u5F58\u{22471}\u5F63\u97BD\u{26E6E}\u5F72\u9340\u{28A36}\u5FA7\u5DB6\u3D5F\u{25250}\u{21F6A}\u{270F8}\u{22668}\u91D6\u{2029E}\u{28A29}\u6031\u6685\u{21877}\u3963\u3DC7\u3639\u5790\u{227B4}\u7971\u3E40\u609E\u60A4\u60B3\u{24982}\u{2498F}\u{27A53}\u74A4\u50E1\u5AA0\u6164\u8424\u6142\u{2F8A6}\u{26ED2}\u6181\u51F4\u{20656}\u6187\u5BAA\u{23FB7}"],["fca1","\u{2285F}\u61D3\u{28B9D}\u{2995D}\u61D0\u3932\u{22980}\u{228C1}\u6023\u615C\u651E\u638B\u{20118}\u62C5\u{21770}\u62D5\u{22E0D}\u636C\u{249DF}\u3A17\u6438\u63F8\u{2138E}\u{217FC}\u6490\u6F8A\u{22E36}\u9814\u{2408C}\u{2571D}\u64E1\u64E5\u947B\u3A66\u643A\u3A57\u654D\u6F16\u{24A28}\u{24A23}\u6585\u656D\u655F\u{2307E}\u65B5\u{24940}\u4B37\u65D1\u40D8\u{21829}\u65E0\u65E3\u5FDF\u{23400}\u6618\u{231F7}\u{231F8}\u6644\u{231A4}\u{231A5}\u664B\u{20E75}\u6667\u{251E6}\u6673\u6674\u{21E3D}\u{23231}\u{285F4}\u{231C8}\u{25313}\u77C5\u{228F7}\u99A4\u6702\u{2439C}\u{24A21}\u3B2B\u69FA\u{237C2}\u675E\u6767\u6762\u{241CD}\u{290ED}\u67D7\u44E9\u6822\u6E50\u923C\u6801\u{233E6}\u{26DA0}\u685D"],["fd40","\u{2346F}\u69E1\u6A0B\u{28ADF}\u6973\u68C3\u{235CD}\u6901\u6900\u3D32\u3A01\u{2363C}\u3B80\u67AC\u6961\u{28A4A}\u42FC\u6936\u6998\u3BA1\u{203C9}\u8363\u5090\u69F9\u{23659}\u{2212A}\u6A45\u{23703}\u6A9D\u3BF3\u67B1\u6AC8\u{2919C}\u3C0D\u6B1D\u{20923}\u60DE\u6B35\u6B74\u{227CD}\u6EB5\u{23ADB}\u{203B5}\u{21958}\u3740\u5421\u{23B5A}\u6BE1\u{23EFC}\u6BDC\u6C37\u{2248B}\u{248F1}\u{26B51}\u6C5A\u8226\u6C79\u{23DBC}\u44C5\u{23DBD}\u{241A4}\u{2490C}\u{24900}"],["fda1","\u{23CC9}\u36E5\u3CEB\u{20D32}\u9B83\u{231F9}\u{22491}\u7F8F\u6837\u{26D25}\u{26DA1}\u{26DEB}\u6D96\u6D5C\u6E7C\u6F04\u{2497F}\u{24085}\u{26E72}\u8533\u{26F74}\u51C7\u6C9C\u6E1D\u842E\u{28B21}\u6E2F\u{23E2F}\u7453\u{23F82}\u79CC\u6E4F\u5A91\u{2304B}\u6FF8\u370D\u6F9D\u{23E30}\u6EFA\u{21497}\u{2403D}\u4555\u93F0\u6F44\u6F5C\u3D4E\u6F74\u{29170}\u3D3B\u6F9F\u{24144}\u6FD3\u{24091}\u{24155}\u{24039}\u{23FF0}\u{23FB4}\u{2413F}\u51DF\u{24156}\u{24157}\u{24140}\u{261DD}\u704B\u707E\u70A7\u7081\u70CC\u70D5\u70D6\u70DF\u4104\u3DE8\u71B4\u7196\u{24277}\u712B\u7145\u5A88\u714A\u716E\u5C9C\u{24365}\u714F\u9362\u{242C1}\u712C\u{2445A}\u{24A27}\u{24A22}\u71BA\u{28BE8}\u70BD\u720E"],["fe40","\u9442\u7215\u5911\u9443\u7224\u9341\u{25605}\u722E\u7240\u{24974}\u68BD\u7255\u7257\u3E55\u{23044}\u680D\u6F3D\u7282\u732A\u732B\u{24823}\u{2882B}\u48ED\u{28804}\u7328\u732E\u73CF\u73AA\u{20C3A}\u{26A2E}\u73C9\u7449\u{241E2}\u{216E7}\u{24A24}\u6623\u36C5\u{249B7}\u{2498D}\u{249FB}\u73F7\u7415\u6903\u{24A26}\u7439\u{205C3}\u3ED7\u745C\u{228AD}\u7460\u{28EB2}\u7447\u73E4\u7476\u83B9\u746C\u3730\u7474\u93F1\u6A2C\u7482\u4953\u{24A8C}"],["fea1","\u{2415F}\u{24A79}\u{28B8F}\u5B46\u{28C03}\u{2189E}\u74C8\u{21988}\u750E\u74E9\u751E\u{28ED9}\u{21A4B}\u5BD7\u{28EAC}\u9385\u754D\u754A\u7567\u756E\u{24F82}\u3F04\u{24D13}\u758E\u745D\u759E\u75B4\u7602\u762C\u7651\u764F\u766F\u7676\u{263F5}\u7690\u81EF\u37F8\u{26911}\u{2690E}\u76A1\u76A5\u76B7\u76CC\u{26F9F}\u8462\u{2509D}\u{2517D}\u{21E1C}\u771E\u7726\u7740\u64AF\u{25220}\u7758\u{232AC}\u77AF\u{28964}\u{28968}\u{216C1}\u77F4\u7809\u{21376}\u{24A12}\u68CA\u78AF\u78C7\u78D3\u96A5\u792E\u{255E0}\u78D7\u7934\u78B1\u{2760C}\u8FB8\u8884\u{28B2B}\u{26083}\u{2261C}\u7986\u8900\u6902\u7980\u{25857}\u799D\u{27B39}\u793C\u79A9\u6E2A\u{27126}\u3EA8\u79C6\u{2910D}\u79D4"]]});var FT=b((t3e,VT)=>{"use strict";VT.exports={shiftjis:{type:"_dbcs",table:function(){return CT()},encodeAdd:{"\xA5":92,"\u203E":126},encodeSkipVals:[{from:60736,to:63808}]},csshiftjis:"shiftjis",mskanji:"shiftjis",sjis:"shiftjis",windows31j:"shiftjis",ms31j:"shiftjis",xsjis:"shiftjis",windows932:"shiftjis",ms932:"shiftjis",932:"shiftjis",cp932:"shiftjis",eucjp:{type:"_dbcs",table:function(){return OT()},encodeAdd:{"\xA5":92,"\u203E":126}},gb2312:"cp936",gb231280:"cp936",gb23121980:"cp936",csgb2312:"cp936",csiso58gb231280:"cp936",euccn:"cp936",windows936:"cp936",ms936:"cp936",936:"cp936",cp936:{type:"_dbcs",table:function(){return T8()}},gbk:{type:"_dbcs",table:function(){return T8().concat(V7())}},xgbk:"gbk",isoir58:"gbk",gb18030:{type:"_dbcs",table:function(){return T8().concat(V7())},gb18030:function(){return NT()},encodeSkipVals:[128],encodeAdd:{"\u20AC":41699}},chinese:"gb18030",windows949:"cp949",ms949:"cp949",949:"cp949",cp949:{type:"_dbcs",table:function(){return qT()}},cseuckr:"cp949",csksc56011987:"cp949",euckr:"cp949",isoir149:"cp949",korean:"cp949",ksc56011987:"cp949",ksc56011989:"cp949",ksc5601:"cp949",windows950:"cp950",ms950:"cp950",950:"cp950",cp950:{type:"_dbcs",table:function(){return F7()}},big5:"big5hkscs",big5hkscs:{type:"_dbcs",table:function(){return F7().concat(WT())},encodeSkipVals:[36457,36463,36478,36523,36532,36557,36560,36695,36713,36718,36811,36862,36973,36986,37060,37084,37105,37311,37551,37552,37553,37554,37585,37959,38090,38361,38652,39285,39798,39800,39803,39878,39902,39916,39926,40002,40019,40034,40040,40043,40055,40124,40125,40144,40279,40282,40388,40431,40443,40617,40687,40701,40800,40907,41079,41180,41183,36812,37576,38468,38637,41636,41637,41639,41638,41676,41678]},cnbig5:"big5hkscs",csbig5:"big5hkscs",xxbig5:"big5hkscs"}});var UT=b((LT,C1)=>{"use strict";var KT=[yT(),ST(),AT(),kT(),PT(),zT(),MT(),BT(),FT()];for(z8=0;z8{"use strict";var jT=Tn().Buffer;HT.exports=function(t){var e=t.Transform;function r(a,n){this.conv=a,n=n||{},n.decodeStrings=!1,e.call(this,n)}r.prototype=Object.create(e.prototype,{constructor:{value:r}}),r.prototype._transform=function(a,n,s){if(typeof a!="string")return s(new Error("Iconv encoding stream needs strings as its input."));try{var o=this.conv.write(a);o&&o.length&&this.push(o),s()}catch(l){s(l)}},r.prototype._flush=function(a){try{var n=this.conv.end();n&&n.length&&this.push(n),a()}catch(s){a(s)}},r.prototype.collect=function(a){var n=[];return this.on("error",a),this.on("data",function(s){n.push(s)}),this.on("end",function(){a(null,jT.concat(n))}),this};function i(a,n){this.conv=a,n=n||{},n.encoding=this.encoding="utf8",e.call(this,n)}return i.prototype=Object.create(e.prototype,{constructor:{value:i}}),i.prototype._transform=function(a,n,s){if(!jT.isBuffer(a)&&!(a instanceof Uint8Array))return s(new Error("Iconv decoding stream needs buffers as its input."));try{var o=this.conv.write(a);o&&o.length&&this.push(o,this.encoding),s()}catch(l){s(l)}},i.prototype._flush=function(a){try{var n=this.conv.end();n&&n.length&&this.push(n,this.encoding),a()}catch(s){a(s)}},i.prototype.collect=function(a){var n="";return this.on("error",a),this.on("data",function(s){n+=s}),this.on("end",function(){a(null,n)}),this},{IconvLiteEncoderStream:r,IconvLiteDecoderStream:i}}});var YT=b((i3e,JT)=>{"use strict";var GT=Tn().Buffer,ZT=hT(),_e=JT.exports;_e.encodings=null;_e.defaultCharUnicode="\uFFFD";_e.defaultCharSingleByte="?";_e.encode=function(e,r,i){e=""+(e||"");var a=_e.getEncoder(r,i),n=a.write(e),s=a.end();return s&&s.length>0?GT.concat([n,s]):n};_e.decode=function(e,r,i){typeof e=="string"&&(_e.skipDecodeWarning||(console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding"),_e.skipDecodeWarning=!0),e=GT.from(""+(e||""),"binary"));var a=_e.getDecoder(r,i),n=a.write(e),s=a.end();return s?n+s:n};_e.encodingExists=function(e){try{return _e.getCodec(e),!0}catch{return!1}};_e.toEncoding=_e.encode;_e.fromEncoding=_e.decode;_e._codecDataCache={};_e.getCodec=function(e){_e.encodings||(_e.encodings=UT());for(var r=_e._canonicalizeEncoding(e),i={};;){var a=_e._codecDataCache[r];if(a)return a;var n=_e.encodings[r];switch(typeof n){case"string":r=n;break;case"object":for(var s in n)i[s]=n[s];i.encodingName||(i.encodingName=r),r=n.type;break;case"function":return i.encodingName||(i.encodingName=r),a=new n(i,_e),_e._codecDataCache[i.encodingName]=a,a;default:throw new Error("Encoding not recognized: '"+e+"' (searched as: '"+r+"')")}}};_e._canonicalizeEncoding=function(t){return(""+t).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g,"")};_e.getEncoder=function(e,r){var i=_e.getCodec(e),a=new i.encoder(r,i);return i.bomAware&&r&&r.addBOM&&(a=new ZT.PrependBOM(a,r)),a};_e.getDecoder=function(e,r){var i=_e.getCodec(e),a=new i.decoder(r,i);return i.bomAware&&!(r&&r.stripBOM===!1)&&(a=new ZT.StripBOM(a,r)),a};_e.enableStreamingAPI=function(e){if(!_e.supportsStreams){var r=$T()(e);_e.IconvLiteEncoderStream=r.IconvLiteEncoderStream,_e.IconvLiteDecoderStream=r.IconvLiteDecoderStream,_e.encodeStream=function(a,n){return new _e.IconvLiteEncoderStream(_e.getEncoder(a,n),n)},_e.decodeStream=function(a,n){return new _e.IconvLiteDecoderStream(_e.getDecoder(a,n),n)},_e.supportsStreams=!0}};var M8;try{M8=require("stream")}catch{}M8&&M8.Transform?_e.enableStreamingAPI(M8):_e.encodeStream=_e.decodeStream=function(){throw new Error("iconv-lite Streaming API is not enabled. Use iconv.enableStreamingAPI(require('stream')); to enable it.")}});var ez=b((a3e,XT)=>{"use strict";var D8=YT();XT.exports.convert=eZ;function eZ(t,e,r){r=QT(r||"UTF-8"),e=QT(e||"UTF-8"),t=t||"";var i;if(r!=="UTF-8"&&typeof t=="string"&&(t=Buffer.from(t,"binary")),r===e)typeof t=="string"?i=Buffer.from(t):i=t;else try{i=tZ(t,e,r)}catch(a){console.error(a),i=t}return typeof i=="string"&&(i=Buffer.from(i,"utf-8")),i}function tZ(t,e,r){return e==="UTF-8"?D8.decode(t,r):r==="UTF-8"?D8.encode(t,e):D8.encode(D8.decode(t,r),e)}function QT(t){return(t||"").toString().trim().replace(/^latin[\-_]?(\d+)$/i,"ISO-8859-$1").replace(/^win(?:dows)?[\-_]?(\d+)$/i,"WINDOWS-$1").replace(/^utf[\-_]?(\d+)$/i,"UTF-$1").replace(/^ks_c_5601\-1987$/i,"CP949").replace(/^us[\-_]?ascii$/i,"ASCII").toUpperCase()}});var Y7=b((Ta,cz)=>{"use strict";Object.defineProperty(Ta,"__esModule",{value:!0});function W1(t){return t&&typeof t=="object"&&"default"in t?t.default:t}var Pa=W1(require("stream")),az=W1(require("http")),B8=W1(require("url")),nz=W1(pT()),rZ=W1(require("https")),nl=W1(require("zlib")),iZ=Pa.Readable,In=Symbol("buffer"),K7=Symbol("type"),Yp=class t{constructor(){this[K7]="";let e=arguments[0],r=arguments[1],i=[],a=0;if(e){let s=e,o=Number(s.length);for(let l=0;l1&&arguments[1]!==void 0?arguments[1]:{},i=r.size;let a=i===void 0?0:i;var n=r.timeout;let s=n===void 0?0:n;t==null?t=null:sz(t)?t=Buffer.from(t.toString()):Xp(t)||Buffer.isBuffer(t)||(Object.prototype.toString.call(t)==="[object ArrayBuffer]"?t=Buffer.from(t):ArrayBuffer.isView(t)?t=Buffer.from(t.buffer,t.byteOffset,t.byteLength):t instanceof Pa||(t=Buffer.from(String(t)))),this[Dn]={body:t,disturbed:!1,error:null},this.size=a,this.timeout=s,t instanceof Pa&&t.on("error",function(o){let l=o.name==="AbortError"?o:new jr(`Invalid response body while trying to fetch ${e.url}: ${o.message}`,"system",o);e[Dn].error=l})}Ir.prototype={get body(){return this[Dn].body},get bodyUsed(){return this[Dn].disturbed},arrayBuffer(){return O1.call(this).then(function(t){return t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength)})},blob(){let t=this.headers&&this.headers.get("content-type")||"";return O1.call(this).then(function(e){return Object.assign(new Yp([],{type:t.toLowerCase()}),{[In]:e})})},json(){var t=this;return O1.call(this).then(function(e){try{return JSON.parse(e.toString())}catch(r){return Ir.Promise.reject(new jr(`invalid json response body at ${t.url} reason: ${r.message}`,"invalid-json"))}})},text(){return O1.call(this).then(function(t){return t.toString()})},buffer(){return O1.call(this)},textConverted(){var t=this;return O1.call(this).then(function(e){return aZ(e,t.headers)})}};Object.defineProperties(Ir.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0}});Ir.mixIn=function(t){for(let e of Object.getOwnPropertyNames(Ir.prototype))if(!(e in t)){let r=Object.getOwnPropertyDescriptor(Ir.prototype,e);Object.defineProperty(t,e,r)}};function O1(){var t=this;if(this[Dn].disturbed)return Ir.Promise.reject(new TypeError(`body used already for: ${this.url}`));if(this[Dn].disturbed=!0,this[Dn].error)return Ir.Promise.reject(this[Dn].error);let e=this.body;if(e===null)return Ir.Promise.resolve(Buffer.alloc(0));if(Xp(e)&&(e=e.stream()),Buffer.isBuffer(e))return Ir.Promise.resolve(e);if(!(e instanceof Pa))return Ir.Promise.resolve(Buffer.alloc(0));let r=[],i=0,a=!1;return new Ir.Promise(function(n,s){let o;t.timeout&&(o=setTimeout(function(){a=!0,s(new jr(`Response timeout while trying to fetch ${t.url} (over ${t.timeout}ms)`,"body-timeout"))},t.timeout)),e.on("error",function(l){l.name==="AbortError"?(a=!0,s(l)):s(new jr(`Invalid response body while trying to fetch ${t.url}: ${l.message}`,"system",l))}),e.on("data",function(l){if(!(a||l===null)){if(t.size&&i+l.length>t.size){a=!0,s(new jr(`content size at ${t.url} over limit: ${t.size}`,"max-size"));return}i+=l.length,r.push(l)}}),e.on("end",function(){if(!a){clearTimeout(o);try{n(Buffer.concat(r,i))}catch(l){s(new jr(`Could not create Buffer from response body for ${t.url}: ${l.message}`,"system",l))}}})})}function aZ(t,e){if(typeof H7!="function")throw new Error("The package `encoding` must be installed to use the textConverted() function");let r=e.get("content-type"),i="utf-8",a,n;return r&&(a=/charset=([^;]*)/i.exec(r)),n=t.slice(0,1024).toString(),!a&&n&&(a=/0&&arguments[0]!==void 0?arguments[0]:void 0;if(this[Lt]=Object.create(null),e instanceof t){let r=e.raw(),i=Object.keys(r);for(let a of i)for(let n of r[a])this.append(a,n);return}if(e!=null)if(typeof e=="object"){let r=e[Symbol.iterator];if(r!=null){if(typeof r!="function")throw new TypeError("Header pairs must be iterable");let i=[];for(let a of e){if(typeof a!="object"||typeof a[Symbol.iterator]!="function")throw new TypeError("Each header pair must be iterable");i.push(Array.from(a))}for(let a of i){if(a.length!==2)throw new TypeError("Each header pair must be a name/value tuple");this.append(a[0],a[1])}}else for(let i of Object.keys(e)){let a=e[i];this.append(i,a)}}else throw new TypeError("Provided initializer must be an object")}get(e){e=`${e}`,Jp(e);let r=N1(this[Lt],e);return r===void 0?null:this[Lt][r].join(", ")}forEach(e){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:void 0,i=G7(this),a=0;for(;a1&&arguments[1]!==void 0?arguments[1]:"key+value";return Object.keys(t[Lt]).sort().map(e==="key"?function(i){return i.toLowerCase()}:e==="value"?function(i){return t[Lt][i].join(", ")}:function(i){return[i.toLowerCase(),t[Lt][i].join(", ")]})}var Z7=Symbol("internal");function L7(t,e){let r=Object.create(J7);return r[Z7]={target:t,kind:e,index:0},r}var J7=Object.setPrototypeOf({next(){if(!this||Object.getPrototypeOf(this)!==J7)throw new TypeError("Value of `this` is not a HeadersIterator");var t=this[Z7];let e=t.target,r=t.kind,i=t.index,a=G7(e,r),n=a.length;return i>=n?{value:void 0,done:!0}:(this[Z7].index=i+1,{value:a[i],done:!1})}},Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));Object.defineProperty(J7,Symbol.toStringTag,{value:"HeadersIterator",writable:!1,enumerable:!1,configurable:!0});function sZ(t){let e=Object.assign({__proto__:null},t[Lt]),r=N1(t[Lt],"Host");return r!==void 0&&(e[r]=e[r][0]),e}function oZ(t){let e=new Qi;for(let r of Object.keys(t))if(!uz.test(r))if(Array.isArray(t[r]))for(let i of t[r])$7.test(i)||(e[Lt][r]===void 0?e[Lt][r]=[i]:e[Lt][r].push(i));else $7.test(t[r])||(e[Lt][r]=[t[r]]);return e}var Cs=Symbol("Response internals"),lZ=az.STATUS_CODES,Yi=class t{constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};Ir.call(this,e,r);let i=r.status||200,a=new Qi(r.headers);if(e!=null&&!a.has("Content-Type")){let n=lz(e);n&&a.append("Content-Type",n)}this[Cs]={url:r.url,status:i,statusText:r.statusText||lZ[i],headers:a,counter:r.counter}}get url(){return this[Cs].url||""}get status(){return this[Cs].status}get ok(){return this[Cs].status>=200&&this[Cs].status<300}get redirected(){return this[Cs].counter>0}get statusText(){return this[Cs].statusText}get headers(){return this[Cs].headers}clone(){return new t(oz(this),{url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected})}};Ir.mixIn(Yi.prototype);Object.defineProperties(Yi.prototype,{url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}});Object.defineProperty(Yi.prototype,Symbol.toStringTag,{value:"Response",writable:!1,enumerable:!1,configurable:!0});var Mn=Symbol("Request internals"),dZ=B8.URL||nz.URL,uZ=B8.parse,cZ=B8.format;function U7(t){return/^[a-zA-Z][a-zA-Z\d+\-.]*:/.exec(t)&&(t=new dZ(t).toString()),uZ(t)}var pZ="destroy"in Pa.Readable.prototype;function R8(t){return typeof t=="object"&&typeof t[Mn]=="object"}function mZ(t){let e=t&&typeof t=="object"&&Object.getPrototypeOf(t);return!!(e&&e.constructor.name==="AbortSignal")}var Ns=class t{constructor(e){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i;R8(e)?i=U7(e.url):(e&&e.href?i=U7(e.href):i=U7(`${e}`),e={});let a=r.method||e.method||"GET";if(a=a.toUpperCase(),(r.body!=null||R8(e)&&e.body!==null)&&(a==="GET"||a==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body");let n=r.body!=null?r.body:R8(e)&&e.body!==null?oz(e):null;Ir.call(this,n,{timeout:r.timeout||e.timeout||0,size:r.size||e.size||0});let s=new Qi(r.headers||e.headers||{});if(n!=null&&!s.has("Content-Type")){let l=lz(n);l&&s.append("Content-Type",l)}let o=R8(e)?e.signal:null;if("signal"in r&&(o=r.signal),o!=null&&!mZ(o))throw new TypeError("Expected signal to be an instanceof AbortSignal");this[Mn]={method:a,redirect:r.redirect||e.redirect||"follow",headers:s,parsedURL:i,signal:o},this.follow=r.follow!==void 0?r.follow:e.follow!==void 0?e.follow:20,this.compress=r.compress!==void 0?r.compress:e.compress!==void 0?e.compress:!0,this.counter=r.counter||e.counter||0,this.agent=r.agent||e.agent}get method(){return this[Mn].method}get url(){return cZ(this[Mn].parsedURL)}get headers(){return this[Mn].headers}get redirect(){return this[Mn].redirect}get signal(){return this[Mn].signal}clone(){return new t(this)}};Ir.mixIn(Ns.prototype);Object.defineProperty(Ns.prototype,Symbol.toStringTag,{value:"Request",writable:!1,enumerable:!1,configurable:!0});Object.defineProperties(Ns.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0}});function fZ(t){let e=t[Mn].parsedURL,r=new Qi(t[Mn].headers);if(r.has("Accept")||r.set("Accept","*/*"),!e.protocol||!e.hostname)throw new TypeError("Only absolute URLs are supported");if(!/^https?:$/.test(e.protocol))throw new TypeError("Only HTTP(S) protocols are supported");if(t.signal&&t.body instanceof Pa.Readable&&!pZ)throw new Error("Cancellation of streamed requests with AbortSignal is not supported in node < 8");let i=null;if(t.body==null&&/^(POST|PUT)$/i.test(t.method)&&(i="0"),t.body!=null){let n=dz(t);typeof n=="number"&&(i=String(n))}i&&r.set("Content-Length",i),r.has("User-Agent")||r.set("User-Agent","node-fetch/1.0 (+https://github.com/bitinn/node-fetch)"),t.compress&&!r.has("Accept-Encoding")&&r.set("Accept-Encoding","gzip,deflate");let a=t.agent;return typeof a=="function"&&(a=a(e)),Object.assign({},e,{method:t.method,headers:sZ(r),agent:a})}function q1(t){Error.call(this,t),this.type="aborted",this.message=t,Error.captureStackTrace(this,this.constructor)}q1.prototype=Object.create(Error.prototype);q1.prototype.constructor=q1;q1.prototype.name="AbortError";var Qp=B8.URL||nz.URL,iz=Pa.PassThrough,hZ=function(e,r){let i=new Qp(r).hostname,a=new Qp(e).hostname;return i===a||i[i.length-a.length-1]==="."&&i.endsWith(a)},gZ=function(e,r){let i=new Qp(r).protocol,a=new Qp(e).protocol;return i===a};function Os(t,e){if(!Os.Promise)throw new Error("native promise missing, set fetch.Promise to your favorite alternative");return Ir.Promise=Os.Promise,new Os.Promise(function(r,i){let a=new Ns(t,e),n=fZ(a),s=(n.protocol==="https:"?rZ:az).request,o=a.signal,l=null,d=function(){let _=new q1("The user aborted a request.");i(_),a.body&&a.body instanceof Pa.Readable&&j7(a.body,_),!(!l||!l.body)&&l.body.emit("error",_)};if(o&&o.aborted){d();return}let u=function(){d(),k()},c=s(n),w;o&&o.addEventListener("abort",u);function k(){c.abort(),o&&o.removeEventListener("abort",u),clearTimeout(w)}a.timeout&&c.once("socket",function(z){w=setTimeout(function(){i(new jr(`network timeout at: ${a.url}`,"request-timeout")),k()},a.timeout)}),c.on("error",function(z){i(new jr(`request to ${a.url} failed, reason: ${z.message}`,"system",z)),l&&l.body&&j7(l.body,z),k()}),yZ(c,function(z){o&&o.aborted||l&&l.body&&j7(l.body,z)}),parseInt(process.version.substring(1))<14&&c.on("socket",function(z){z.addListener("close",function(_){let T=z.listenerCount("data")>0;if(l&&T&&!_&&!(o&&o.aborted)){let D=new Error("Premature close");D.code="ERR_STREAM_PREMATURE_CLOSE",l.body.emit("error",D)}})}),c.on("response",function(z){clearTimeout(w);let _=oZ(z.headers);if(Os.isRedirect(z.statusCode)){let B=_.get("Location"),q=null;try{q=B===null?null:new Qp(B,a.url).toString()}catch{if(a.redirect!=="manual"){i(new jr(`uri requested responds with an invalid redirect URL: ${B}`,"invalid-redirect")),k();return}}switch(a.redirect){case"error":i(new jr(`uri requested responds with a redirect, redirect mode is set to error: ${a.url}`,"no-redirect")),k();return;case"manual":if(q!==null)try{_.set("Location",q)}catch(j){i(j)}break;case"follow":if(q===null)break;if(a.counter>=a.follow){i(new jr(`maximum redirect reached at: ${a.url}`,"max-redirect")),k();return}let K={headers:new Qi(a.headers),follow:a.follow,counter:a.counter+1,agent:a.agent,compress:a.compress,method:a.method,body:a.body,signal:a.signal,timeout:a.timeout,size:a.size};if(!hZ(a.url,q)||!gZ(a.url,q))for(let j of["authorization","www-authenticate","cookie","cookie2"])K.headers.delete(j);if(z.statusCode!==303&&a.body&&dz(a)===null){i(new jr("Cannot follow redirect with body being a readable stream","unsupported-redirect")),k();return}(z.statusCode===303||(z.statusCode===301||z.statusCode===302)&&a.method==="POST")&&(K.method="GET",K.body=void 0,K.headers.delete("content-length")),r(Os(new Ns(q,K))),k();return}}z.once("end",function(){o&&o.removeEventListener("abort",u)});let T=z.pipe(new iz),D={url:a.url,status:z.statusCode,statusText:z.statusMessage,headers:_,size:a.size,timeout:a.timeout,counter:a.counter},V=_.get("Content-Encoding");if(!a.compress||a.method==="HEAD"||V===null||z.statusCode===204||z.statusCode===304){l=new Yi(T,D),r(l);return}let R={flush:nl.Z_SYNC_FLUSH,finishFlush:nl.Z_SYNC_FLUSH};if(V=="gzip"||V=="x-gzip"){T=T.pipe(nl.createGunzip(R)),l=new Yi(T,D),r(l);return}if(V=="deflate"||V=="x-deflate"){let B=z.pipe(new iz);B.once("data",function(q){(q[0]&15)===8?T=T.pipe(nl.createInflate()):T=T.pipe(nl.createInflateRaw()),l=new Yi(T,D),r(l)}),B.on("end",function(){l||(l=new Yi(T,D),r(l))});return}if(V=="br"&&typeof nl.createBrotliDecompress=="function"){T=T.pipe(nl.createBrotliDecompress()),l=new Yi(T,D),r(l);return}l=new Yi(T,D),r(l)}),nZ(c,a)})}function yZ(t,e){let r;t.on("socket",function(i){r=i}),t.on("response",function(i){let a=i.headers;a["transfer-encoding"]==="chunked"&&!a["content-length"]&&i.once("close",function(n){if(r&&r.listenerCount("data")>0&&!n){let o=new Error("Premature close");o.code="ERR_STREAM_PREMATURE_CLOSE",e(o)}})})}function j7(t,e){t.destroy?t.destroy(e):(t.emit("error",e),t.end())}Os.isRedirect=function(t){return t===301||t===302||t===303||t===307||t===308};Os.Promise=global.Promise;cz.exports=Ta=Os;Object.defineProperty(Ta,"__esModule",{value:!0});Ta.default=Ta;Ta.Headers=Qi;Ta.Request=Ns;Ta.Response=Yi;Ta.FetchError=jr;Ta.AbortError=q1});var Q7=b((n3e,e0)=>{function bZ(t){return t&&t.__esModule?t:{default:t}}e0.exports=bZ,e0.exports.__esModule=!0,e0.exports.default=e0.exports});var V1=b((s3e,Rn)=>{function X7(t){"@babel/helpers - typeof";return Rn.exports=X7=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Rn.exports.__esModule=!0,Rn.exports.default=Rn.exports,X7(t)}Rn.exports=X7,Rn.exports.__esModule=!0,Rn.exports.default=Rn.exports});var fz=b((o3e,Bn)=>{var pz=V1().default;function mz(){"use strict";Bn.exports=mz=function(){return e},Bn.exports.__esModule=!0,Bn.exports.default=Bn.exports;var t,e={},r=Object.prototype,i=r.hasOwnProperty,a=Object.defineProperty||function(g,v,y){g[v]=y.value},n=typeof Symbol=="function"?Symbol:{},s=n.iterator||"@@iterator",o=n.asyncIterator||"@@asyncIterator",l=n.toStringTag||"@@toStringTag";function d(g,v,y){return Object.defineProperty(g,v,{value:y,enumerable:!0,configurable:!0,writable:!0}),g[v]}try{d({},"")}catch{d=function(y,S,P){return y[S]=P}}function u(g,v,y,S){var P=v&&v.prototype instanceof D?v:D,x=Object.create(P.prototype),f=new p(S||[]);return a(x,"_invoke",{value:oe(g,y,f)}),x}function c(g,v,y){try{return{type:"normal",arg:g.call(v,y)}}catch(S){return{type:"throw",arg:S}}}e.wrap=u;var w="suspendedStart",k="suspendedYield",z="executing",_="completed",T={};function D(){}function V(){}function R(){}var B={};d(B,s,function(){return this});var q=Object.getPrototypeOf,K=q&&q(q(h([])));K&&K!==r&&i.call(K,s)&&(B=K);var j=R.prototype=D.prototype=Object.create(B);function G(g){["next","throw","return"].forEach(function(v){d(g,v,function(y){return this._invoke(v,y)})})}function ne(g,v){function y(P,x,f,E){var U=c(g[P],g,x);if(U.type!=="throw"){var $=U.arg,H=$.value;return H&&pz(H)=="object"&&i.call(H,"__await")?v.resolve(H.__await).then(function(J){y("next",J,f,E)},function(J){y("throw",J,f,E)}):v.resolve(H).then(function(J){$.value=J,f($)},function(J){return y("throw",J,f,E)})}E(U.arg)}var S;a(this,"_invoke",{value:function(x,f){function E(){return new v(function(U,$){y(x,f,U,$)})}return S=S?S.then(E,E):E()}})}function oe(g,v,y){var S=w;return function(P,x){if(S===z)throw new Error("Generator is already running");if(S===_){if(P==="throw")throw x;return{value:t,done:!0}}for(y.method=P,y.arg=x;;){var f=y.delegate;if(f){var E=Y(f,y);if(E){if(E===T)continue;return E}}if(y.method==="next")y.sent=y._sent=y.arg;else if(y.method==="throw"){if(S===w)throw S=_,y.arg;y.dispatchException(y.arg)}else y.method==="return"&&y.abrupt("return",y.arg);S=z;var U=c(g,v,y);if(U.type==="normal"){if(S=y.done?_:k,U.arg===T)continue;return{value:U.arg,done:y.done}}U.type==="throw"&&(S=_,y.method="throw",y.arg=U.arg)}}}function Y(g,v){var y=v.method,S=g.iterator[y];if(S===t)return v.delegate=null,y==="throw"&&g.iterator.return&&(v.method="return",v.arg=t,Y(g,v),v.method==="throw")||y!=="return"&&(v.method="throw",v.arg=new TypeError("The iterator does not provide a '"+y+"' method")),T;var P=c(S,g.iterator,v.arg);if(P.type==="throw")return v.method="throw",v.arg=P.arg,v.delegate=null,T;var x=P.arg;return x?x.done?(v[g.resultName]=x.value,v.next=g.nextLoc,v.method!=="return"&&(v.method="next",v.arg=t),v.delegate=null,T):x:(v.method="throw",v.arg=new TypeError("iterator result is not an object"),v.delegate=null,T)}function ce(g){var v={tryLoc:g[0]};1 in g&&(v.catchLoc=g[1]),2 in g&&(v.finallyLoc=g[2],v.afterLoc=g[3]),this.tryEntries.push(v)}function I(g){var v=g.completion||{};v.type="normal",delete v.arg,g.completion=v}function p(g){this.tryEntries=[{tryLoc:"root"}],g.forEach(ce,this),this.reset(!0)}function h(g){if(g||g===""){var v=g[s];if(v)return v.call(g);if(typeof g.next=="function")return g;if(!isNaN(g.length)){var y=-1,S=function P(){for(;++y=0;--P){var x=this.tryEntries[P],f=x.completion;if(x.tryLoc==="root")return S("end");if(x.tryLoc<=this.prev){var E=i.call(x,"catchLoc"),U=i.call(x,"finallyLoc");if(E&&U){if(this.prev=0;--S){var P=this.tryEntries[S];if(P.tryLoc<=this.prev&&i.call(P,"finallyLoc")&&this.prev=0;--y){var S=this.tryEntries[y];if(S.finallyLoc===v)return this.complete(S.completion,S.afterLoc),I(S),T}},catch:function(v){for(var y=this.tryEntries.length-1;y>=0;--y){var S=this.tryEntries[y];if(S.tryLoc===v){var P=S.completion;if(P.type==="throw"){var x=P.arg;I(S)}return x}}throw new Error("illegal catch attempt")},delegateYield:function(v,y,S){return this.delegate={iterator:h(v),resultName:y,nextLoc:S},this.method==="next"&&(this.arg=t),T}},e}Bn.exports=mz,Bn.exports.__esModule=!0,Bn.exports.default=Bn.exports});var gz=b((l3e,hz)=>{var C8=fz()();hz.exports=C8;try{regeneratorRuntime=C8}catch{typeof globalThis=="object"?globalThis.regeneratorRuntime=C8:Function("r","regeneratorRuntime = r")(C8)}});var bz=b((d3e,t0)=>{function yz(t,e,r,i,a,n,s){try{var o=t[n](s),l=o.value}catch(d){r(d);return}o.done?e(l):Promise.resolve(l).then(i,a)}function vZ(t){return function(){var e=this,r=arguments;return new Promise(function(i,a){var n=t.apply(e,r);function s(l){yz(n,i,a,s,o,"next",l)}function o(l){yz(n,i,a,s,o,"throw",l)}s(void 0)})}}t0.exports=vZ,t0.exports.__esModule=!0,t0.exports.default=t0.exports});var vz=b((u3e,r0)=>{function SZ(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}r0.exports=SZ,r0.exports.__esModule=!0,r0.exports.default=r0.exports});var wz=b((c3e,i0)=>{var Sz=V1().default;function wZ(t,e){if(Sz(t)!=="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var i=r.call(t,e||"default");if(Sz(i)!=="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}i0.exports=wZ,i0.exports.__esModule=!0,i0.exports.default=i0.exports});var xz=b((p3e,a0)=>{var xZ=V1().default,AZ=wz();function _Z(t){var e=AZ(t,"string");return xZ(e)==="symbol"?e:String(e)}a0.exports=_Z,a0.exports.__esModule=!0,a0.exports.default=a0.exports});var _z=b((m3e,n0)=>{var kZ=xz();function Az(t,e){for(var r=0;r{function eb(t,e){return Cn.exports=eb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(i,a){return i.__proto__=a,i},Cn.exports.__esModule=!0,Cn.exports.default=Cn.exports,eb(t,e)}Cn.exports=eb,Cn.exports.__esModule=!0,Cn.exports.default=Cn.exports});var Ez=b((h3e,s0)=>{var PZ=kz();function TZ(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&PZ(t,e)}s0.exports=TZ,s0.exports.__esModule=!0,s0.exports.default=s0.exports});var Pz=b((g3e,o0)=>{function zZ(t){if(t===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}o0.exports=zZ,o0.exports.__esModule=!0,o0.exports.default=o0.exports});var Tz=b((y3e,l0)=>{var IZ=V1().default,MZ=Pz();function DZ(t,e){if(e&&(IZ(e)==="object"||typeof e=="function"))return e;if(e!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return MZ(t)}l0.exports=DZ,l0.exports.__esModule=!0,l0.exports.default=l0.exports});var zz=b((b3e,On)=>{function tb(t){return On.exports=tb=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(r){return r.__proto__||Object.getPrototypeOf(r)},On.exports.__esModule=!0,On.exports.default=On.exports,tb(t)}On.exports=tb,On.exports.__esModule=!0,On.exports.default=On.exports});var Mz=b((v3e,rb)=>{"use strict";var RZ=Object.prototype.hasOwnProperty,gi="~";function d0(){}Object.create&&(d0.prototype=Object.create(null),new d0().__proto__||(gi=!1));function BZ(t,e,r){this.fn=t,this.context=e,this.once=r||!1}function Iz(t,e,r,i,a){if(typeof r!="function")throw new TypeError("The listener must be a function");var n=new BZ(r,i||t,a),s=gi?gi+e:e;return t._events[s]?t._events[s].fn?t._events[s]=[t._events[s],n]:t._events[s].push(n):(t._events[s]=n,t._eventsCount++),t}function O8(t,e){--t._eventsCount===0?t._events=new d0:delete t._events[e]}function ei(){this._events=new d0,this._eventsCount=0}ei.prototype.eventNames=function(){var e=[],r,i;if(this._eventsCount===0)return e;for(i in r=this._events)RZ.call(r,i)&&e.push(gi?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(r)):e};ei.prototype.listeners=function(e){var r=gi?gi+e:e,i=this._events[r];if(!i)return[];if(i.fn)return[i.fn];for(var a=0,n=i.length,s=new Array(n);a{"use strict";var Ws=Q7();Object.defineProperty(q8,"__esModule",{value:!0});q8.default=void 0;var qs=Ws(gz()),N8=Ws(bz()),CZ=Ws(V1()),OZ=Ws(vz()),NZ=Ws(_z()),qZ=Ws(Ez()),WZ=Ws(Tz()),Dz=Ws(zz()),VZ=Mz();function FZ(t){var e=KZ();return function(){var i=(0,Dz.default)(t),a;if(e){var n=(0,Dz.default)(this).constructor;a=Reflect.construct(i,arguments,n)}else a=i.apply(this,arguments);return(0,WZ.default)(this,a)}}function KZ(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var LZ=function(t,e){var r={};for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&e.indexOf(i)<0&&(r[i]=t[i]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,i=Object.getOwnPropertySymbols(t);a1&&arguments[1]!==void 0?arguments[1]:"ws://localhost:8080",s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=arguments.length>3?arguments[3]:void 0;(0,OZ.default)(this,r);var l=s.autoconnect,d=l===void 0?!0:l,u=s.reconnect,c=u===void 0?!0:u,w=s.reconnect_interval,k=w===void 0?1e3:w,z=s.max_reconnects,_=z===void 0?5:z,T=LZ(s,["autoconnect","reconnect","reconnect_interval","max_reconnects"]);return a=e.call(this),a.webSocketFactory=i,a.queue={},a.rpc_id=0,a.address=n,a.autoconnect=d,a.ready=!1,a.reconnect=c,a.reconnect_timer_id=void 0,a.reconnect_interval=k,a.max_reconnects=_,a.rest_options=T,a.current_reconnects=0,a.generate_request_id=o||function(){return++a.rpc_id},a.autoconnect&&a._connect(a.address,Object.assign({autoconnect:a.autoconnect,reconnect:a.reconnect,reconnect_interval:a.reconnect_interval,max_reconnects:a.max_reconnects},a.rest_options)),a}return(0,NZ.default)(r,[{key:"connect",value:function(){this.socket||this._connect(this.address,Object.assign({autoconnect:this.autoconnect,reconnect:this.reconnect,reconnect_interval:this.reconnect_interval,max_reconnects:this.max_reconnects},this.rest_options))}},{key:"call",value:function(a,n,s,o){var l=this;return!o&&(0,CZ.default)(s)==="object"&&(o=s,s=null),new Promise(function(d,u){if(!l.ready)return u(new Error("socket not ready"));var c=l.generate_request_id(a,n),w={jsonrpc:"2.0",method:a,params:n||null,id:c};l.socket.send(JSON.stringify(w),o,function(k){if(k)return u(k);l.queue[c]={promise:[d,u]},s&&(l.queue[c].timeout=setTimeout(function(){delete l.queue[c],u(new Error("reply timeout"))},s))})})}},{key:"login",value:function(){var i=(0,N8.default)(qs.default.mark(function n(s){var o;return qs.default.wrap(function(d){for(;;)switch(d.prev=d.next){case 0:return d.next=2,this.call("rpc.login",s);case 2:if(o=d.sent,o){d.next=5;break}throw new Error("authentication failed");case 5:return d.abrupt("return",o);case 6:case"end":return d.stop()}},n,this)}));function a(n){return i.apply(this,arguments)}return a}()},{key:"listMethods",value:function(){var i=(0,N8.default)(qs.default.mark(function n(){return qs.default.wrap(function(o){for(;;)switch(o.prev=o.next){case 0:return o.next=2,this.call("__listMethods");case 2:return o.abrupt("return",o.sent);case 3:case"end":return o.stop()}},n,this)}));function a(){return i.apply(this,arguments)}return a}()},{key:"notify",value:function(a,n){var s=this;return new Promise(function(o,l){if(!s.ready)return l(new Error("socket not ready"));var d={jsonrpc:"2.0",method:a,params:n||null};s.socket.send(JSON.stringify(d),function(u){if(u)return l(u);o()})})}},{key:"subscribe",value:function(){var i=(0,N8.default)(qs.default.mark(function n(s){var o;return qs.default.wrap(function(d){for(;;)switch(d.prev=d.next){case 0:return typeof s=="string"&&(s=[s]),d.next=3,this.call("rpc.on",s);case 3:if(o=d.sent,!(typeof s=="string"&&o[s]!=="ok")){d.next=6;break}throw new Error("Failed subscribing to an event '"+s+"' with: "+o[s]);case 6:return d.abrupt("return",o);case 7:case"end":return d.stop()}},n,this)}));function a(n){return i.apply(this,arguments)}return a}()},{key:"unsubscribe",value:function(){var i=(0,N8.default)(qs.default.mark(function n(s){var o;return qs.default.wrap(function(d){for(;;)switch(d.prev=d.next){case 0:return typeof s=="string"&&(s=[s]),d.next=3,this.call("rpc.off",s);case 3:if(o=d.sent,!(typeof s=="string"&&o[s]!=="ok")){d.next=6;break}throw new Error("Failed unsubscribing from an event with: "+o);case 6:return d.abrupt("return",o);case 7:case"end":return d.stop()}},n,this)}));function a(n){return i.apply(this,arguments)}return a}()},{key:"close",value:function(a,n){this.socket.close(a||1e3,n)}},{key:"_connect",value:function(a,n){var s=this;clearTimeout(this.reconnect_timer_id),this.socket=this.webSocketFactory(a,n),this.socket.addEventListener("open",function(){s.ready=!0,s.emit("open"),s.current_reconnects=0}),this.socket.addEventListener("message",function(o){var l=o.data;l instanceof ArrayBuffer&&(l=Buffer.from(l).toString());try{l=JSON.parse(l)}catch{return}if(l.notification&&s.listeners(l.notification).length){if(!Object.keys(l.params).length)return s.emit(l.notification);var d=[l.notification];if(l.params.constructor===Object)d.push(l.params);else for(var u=0;us.current_reconnects||s.max_reconnects===0)&&(s.reconnect_timer_id=setTimeout(function(){return s._connect(a,n)},s.reconnect_interval)))})}}]),r}(VZ.EventEmitter);q8.default=UZ});var Vs=b((w3e,Bz)=>{"use strict";Bz.exports={BINARY_TYPES:["nodebuffer","arraybuffer","fragments"],EMPTY_BUFFER:Buffer.alloc(0),GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",kForOnEventAttribute:Symbol("kIsForOnEventAttribute"),kListener:Symbol("kListener"),kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),NOOP:()=>{}}});var Jz=b((x3e,Zz)=>{var qz=require("fs"),Nn=require("path"),Wz=require("os"),Vz=typeof __webpack_require__=="function"?__non_webpack_require__:require,jZ=process.config&&process.config.variables||{},HZ=!!process.env.PREBUILDS_ONLY,Cz=process.versions.modules,ib=ZZ()?"electron":GZ()?"node-webkit":"node",ab=process.env.npm_config_arch||Wz.arch(),nb=process.env.npm_config_platform||Wz.platform(),Fz=process.env.LIBC||(JZ(nb)?"musl":"glibc"),sb=process.env.ARM_VERSION||(ab==="arm64"?"8":jZ.arm_version)||"",Kz=(process.versions.uv||"").split(".")[0];Zz.exports=Qa;function Qa(t){return Vz(Qa.resolve(t))}Qa.resolve=Qa.path=function(t){t=Nn.resolve(t||".");try{var e=Vz(Nn.join(t,"package.json")).name.toUpperCase().replace(/-/g,"_");process.env[e+"_PREBUILD"]&&(t=process.env[e+"_PREBUILD"])}catch{}if(!HZ){var r=Oz(Nn.join(t,"build/Release"),Nz);if(r)return r;var i=Oz(Nn.join(t,"build/Debug"),Nz);if(i)return i}var a=o(t);if(a)return a;var n=o(Nn.dirname(process.execPath));if(n)return n;var s=["platform="+nb,"arch="+ab,"runtime="+ib,"abi="+Cz,"uv="+Kz,sb?"armv="+sb:"","libc="+Fz,"node="+process.versions.node,process.versions.electron?"electron="+process.versions.electron:"",typeof __webpack_require__=="function"?"webpack=true":""].filter(Boolean).join(" ");throw new Error("No native build was found for "+s+` +\v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\xA5]^_\`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD`},hproman8:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xC0\xC2\xC8\xCA\xCB\xCE\xCF\xB4\u02CB\u02C6\xA8\u02DC\xD9\xDB\u20A4\xAF\xDD\xFD\xB0\xC7\xE7\xD1\xF1\xA1\xBF\xA4\xA3\xA5\xA7\u0192\xA2\xE2\xEA\xF4\xFB\xE1\xE9\xF3\xFA\xE0\xE8\xF2\xF9\xE4\xEB\xF6\xFC\xC5\xEE\xD8\xC6\xE5\xED\xF8\xE6\xC4\xEC\xD6\xDC\xC9\xEF\xDF\xD4\xC1\xC3\xE3\xD0\xF0\xCD\xCC\xD3\xD2\xD5\xF5\u0160\u0161\xDA\u0178\xFF\xDE\xFE\xB7\xB5\xB6\xBE\u2014\xBC\xBD\xAA\xBA\xAB\u25A0\xBB\xB1\uFFFD"},macintosh:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},ascii:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},tis620:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"}}});var CT=v(BT=>{"use strict";var q7=zn().Buffer;BT._dbcs=In;var jr=-1,RT=-2,Yi=-10,gi=-1e3,C1=new Array(256),Qp=-1;for(P8=0;P8<256;P8++)C1[P8]=jr;var P8;function In(t,e){if(this.encodingName=t.encodingName,!t)throw new Error("DBCS codec is called without the data.");if(!t.table)throw new Error("Encoding '"+this.encodingName+"' has no data.");var r=t.table();this.decodeTables=[],this.decodeTables[0]=C1.slice(0),this.decodeTableSeq=[];for(var i=0;igi)throw new Error("gb18030 decode tables conflict at byte 2");for(var u=this.decodeTables[gi-l[d]],c=129;c<=254;c++){if(u[c]===jr)u[c]=gi-s;else{if(u[c]===gi-s)continue;if(u[c]>gi)throw new Error("gb18030 decode tables conflict at byte 3")}for(var p=this.decodeTables[gi-u[c]],x=48;x<=57;x++)p[x]===jr&&(p[x]=RT)}}}this.defaultCharUnicode=e.defaultCharUnicode,this.encodeTable=[],this.encodeTableSeq=[];var E={};if(t.encodeSkipVals)for(var i=0;i0;t>>>=8)e.push(t&255);e.length==0&&e.push(0);for(var r=this.decodeTables[0],i=e.length-1;i>0;i--){var a=r[e[i]];if(a==jr)r[e[i]]=gi-this.decodeTables.length,this.decodeTables.push(r=C1.slice(0));else if(a<=gi)r=this.decodeTables[gi-a];else throw new Error("Overwrite byte in "+this.encodingName+", addr: "+t.toString(16))}return r};In.prototype._addDecodeChunk=function(t){var e=parseInt(t[0],16),r=this._getDecodeTrieNode(e);e=e&255;for(var i=1;i255)throw new Error("Incorrect chunk in "+this.encodingName+" at addr "+t[0]+": too long"+e)};In.prototype._getEncodeBucket=function(t){var e=t>>8;return this.encodeTable[e]===void 0&&(this.encodeTable[e]=C1.slice(0)),this.encodeTable[e]};In.prototype._setEncodeChar=function(t,e){var r=this._getEncodeBucket(t),i=t&255;r[i]<=Yi?this.encodeTableSeq[Yi-r[i]][Qp]=e:r[i]==jr&&(r[i]=e)};In.prototype._setEncodeSequence=function(t,e){var r=t[0],i=this._getEncodeBucket(r),a=r&255,s;i[a]<=Yi?s=this.encodeTableSeq[Yi-i[a]]:(s={},i[a]!==jr&&(s[Qp]=i[a]),i[a]=Yi-this.encodeTableSeq.length,this.encodeTableSeq.push(s));for(var o=1;o=0)this._setEncodeChar(l,d),a=!0;else if(l<=gi){var u=gi-l;if(!s[u]){var c=d<<8>>>0;this._fillEncodeTable(u,c,r)?a=!0:s[u]=!0}}else l<=Yi&&(this._setEncodeSequence(this.decodeTableSeq[Yi-l],d),a=!0)}return a};function T8(t,e){this.leadSurrogate=-1,this.seqObj=void 0,this.encodeTable=e.encodeTable,this.encodeTableSeq=e.encodeTableSeq,this.defaultCharSingleByte=e.defCharSB,this.gb18030=e.gb18030}n(T8,"DBCSEncoder");T8.prototype.write=function(t){for(var e=q7.alloc(t.length*(this.gb18030?4:3)),r=this.leadSurrogate,i=this.seqObj,a=-1,s=0,o=0;;){if(a===-1){if(s==t.length)break;var l=t.charCodeAt(s++)}else{var l=a;a=-1}if(55296<=l&&l<57344)if(l<56320)if(r===-1){r=l;continue}else r=l,l=jr;else r!==-1?(l=65536+(r-55296)*1024+(l-56320),r=-1):l=jr;else r!==-1&&(a=l,l=jr,r=-1);var d=jr;if(i!==void 0&&l!=jr){var u=i[l];if(typeof u=="object"){i=u;continue}else typeof u=="number"?d=u:u==null&&(u=i[Qp],u!==void 0&&(d=u,a=l));i=void 0}else if(l>=0){var c=this.encodeTable[l>>8];if(c!==void 0&&(d=c[l&255]),d<=Yi){i=this.encodeTableSeq[Yi-d];continue}if(d==jr&&this.gb18030){var p=V7(this.gb18030.uChars,l);if(p!=-1){var d=this.gb18030.gbChars[p]+(l-this.gb18030.uChars[p]);e[o++]=129+Math.floor(d/12600),d=d%12600,e[o++]=48+Math.floor(d/1260),d=d%1260,e[o++]=129+Math.floor(d/10),d=d%10,e[o++]=48+d;continue}}}d===jr&&(d=this.defaultCharSingleByte),d<256?e[o++]=d:d<65536?(e[o++]=d>>8,e[o++]=d&255):d<16777216?(e[o++]=d>>16,e[o++]=d>>8&255,e[o++]=d&255):(e[o++]=d>>>24,e[o++]=d>>>16&255,e[o++]=d>>>8&255,e[o++]=d&255)}return this.seqObj=i,this.leadSurrogate=r,e.slice(0,o)};T8.prototype.end=function(){if(!(this.leadSurrogate===-1&&this.seqObj===void 0)){var t=q7.alloc(10),e=0;if(this.seqObj){var r=this.seqObj[Qp];r!==void 0&&(r<256?t[e++]=r:(t[e++]=r>>8,t[e++]=r&255)),this.seqObj=void 0}return this.leadSurrogate!==-1&&(t[e++]=this.defaultCharSingleByte,this.leadSurrogate=-1),t.slice(0,e)}};T8.prototype.findIdx=V7;function W7(t,e){this.nodeIdx=0,this.prevBytes=[],this.decodeTables=e.decodeTables,this.decodeTableSeq=e.decodeTableSeq,this.defaultCharUnicode=e.defaultCharUnicode,this.gb18030=e.gb18030}n(W7,"DBCSDecoder");W7.prototype.write=function(t){for(var e=q7.alloc(t.length*2),r=this.nodeIdx,i=this.prevBytes,a=this.prevBytes.length,s=-this.prevBytes.length,o,l=0,d=0;l=0?t[l]:i[l+a],o=this.decodeTables[r][u];if(!(o>=0))if(o===jr)o=this.defaultCharUnicode.charCodeAt(0),l=s;else if(o===RT){if(l>=3)var c=(t[l-3]-129)*12600+(t[l-2]-48)*1260+(t[l-1]-129)*10+(u-48);else var c=(i[l-3+a]-129)*12600+((l-2>=0?t[l-2]:i[l-2+a])-48)*1260+((l-1>=0?t[l-1]:i[l-1+a])-129)*10+(u-48);var p=V7(this.gb18030.gbChars,c);o=this.gb18030.uChars[p]+c-this.gb18030.gbChars[p]}else if(o<=gi){r=gi-o;continue}else if(o<=Yi){for(var x=this.decodeTableSeq[Yi-o],E=0;E>8;o=x[x.length-1]}else throw new Error("iconv-lite internal error: invalid decoding table value "+o+" at "+r+"/"+u);if(o>=65536){o-=65536;var I=55296|o>>10;e[d++]=I&255,e[d++]=I>>8,o=56320|o&1023}e[d++]=o&255,e[d++]=o>>8,r=0,s=l+1}return this.nodeIdx=r,this.prevBytes=s>=0?Array.prototype.slice.call(t,s):i.slice(s+a).concat(Array.prototype.slice.call(t)),e.slice(0,d).toString("ucs2")};W7.prototype.end=function(){for(var t="";this.prevBytes.length>0;){t+=this.defaultCharUnicode;var e=this.prevBytes.slice(1);this.prevBytes=[],this.nodeIdx=0,e.length>0&&(t+=this.write(e))}return this.prevBytes=[],this.nodeIdx=0,t};function V7(t,e){if(t[0]>e)return-1;for(var r=0,i=t.length;r>1);t[a]<=e?r=a:i=a}return r}n(V7,"findIdx")});var OT=v((K3e,$G)=>{$G.exports=[["0","\0",128],["a1","\uFF61",62],["8140","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7"],["8180","\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["81b8","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["81c8","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["81da","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["81f0","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["81fc","\u25EF"],["824f","\uFF10",9],["8260","\uFF21",25],["8281","\uFF41",25],["829f","\u3041",82],["8340","\u30A1",62],["8380","\u30E0",22],["839f","\u0391",16,"\u03A3",6],["83bf","\u03B1",16,"\u03C3",6],["8440","\u0410",5,"\u0401\u0416",25],["8470","\u0430",5,"\u0451\u0436",7],["8480","\u043E",17],["849f","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["8740","\u2460",19,"\u2160",9],["875f","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["877e","\u337B"],["8780","\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["889f","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["8940","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186"],["8980","\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["8a40","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B"],["8a80","\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["8b40","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551"],["8b80","\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["8c40","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8"],["8c80","\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["8d40","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D"],["8d80","\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["8e40","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62"],["8e80","\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["8f40","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3"],["8f80","\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["9040","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8"],["9080","\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["9140","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB"],["9180","\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["9240","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4"],["9280","\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["9340","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC"],["9380","\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["9440","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885"],["9480","\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["9540","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577"],["9580","\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["9640","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6"],["9680","\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["9740","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32"],["9780","\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["9840","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["989f","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["9940","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED"],["9980","\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["9a40","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638"],["9a80","\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["9b40","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80"],["9b80","\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["9c40","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060"],["9c80","\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["9d40","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B"],["9d80","\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["9e40","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E"],["9e80","\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["9f40","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF"],["9f80","\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["e040","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD"],["e080","\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e140","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF"],["e180","\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e240","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0"],["e280","\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e340","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37"],["e380","\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e440","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264"],["e480","\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e540","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC"],["e580","\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["e640","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7"],["e680","\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["e740","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C"],["e780","\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["e840","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599"],["e880","\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["e940","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43"],["e980","\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["ea40","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF"],["ea80","\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0\u582F\u69C7\u9059\u7464\u51DC\u7199"],["ed40","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F"],["ed80","\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["ee40","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559"],["ee80","\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["eeef","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["f040","\uE000",62],["f080","\uE03F",124],["f140","\uE0BC",62],["f180","\uE0FB",124],["f240","\uE178",62],["f280","\uE1B7",124],["f340","\uE234",62],["f380","\uE273",124],["f440","\uE2F0",62],["f480","\uE32F",124],["f540","\uE3AC",62],["f580","\uE3EB",124],["f640","\uE468",62],["f680","\uE4A7",124],["f740","\uE524",62],["f780","\uE563",124],["f840","\uE5E0",62],["f880","\uE61F",124],["f940","\uE69C"],["fa40","\u2170",9,"\u2160",9,"\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u2235\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A"],["fa80","\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F"],["fb40","\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19"],["fb80","\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9"],["fc40","\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"]]});var NT=v((L3e,GG)=>{GG.exports=[["0","\0",127],["8ea1","\uFF61",62],["a1a1","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7"],["a2a1","\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["a2ba","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["a2ca","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["a2dc","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["a2f2","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["a2fe","\u25EF"],["a3b0","\uFF10",9],["a3c1","\uFF21",25],["a3e1","\uFF41",25],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a8a1","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["ada1","\u2460",19,"\u2160",9],["adc0","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["addf","\u337B\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["b0a1","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["b1a1","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC"],["b2a1","\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["b3a1","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431"],["b4a1","\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["b5a1","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC"],["b6a1","\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["b7a1","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372"],["b8a1","\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["b9a1","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC"],["baa1","\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["bba1","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642"],["bca1","\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["bda1","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F"],["bea1","\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["bfa1","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE"],["c0a1","\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["c1a1","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E"],["c2a1","\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["c3a1","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5"],["c4a1","\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["c5a1","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230"],["c6a1","\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["c7a1","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6"],["c8a1","\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["c9a1","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D"],["caa1","\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["cba1","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80"],["cca1","\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["cda1","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483"],["cea1","\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["cfa1","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["d0a1","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["d1a1","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8"],["d2a1","\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["d3a1","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709"],["d4a1","\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["d5a1","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53"],["d6a1","\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["d7a1","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A"],["d8a1","\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["d9a1","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC"],["daa1","\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["dba1","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD"],["dca1","\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["dda1","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE"],["dea1","\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["dfa1","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC"],["e0a1","\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e1a1","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670"],["e2a1","\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e3a1","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50"],["e4a1","\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e5a1","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A"],["e6a1","\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e7a1","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9"],["e8a1","\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e9a1","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759"],["eaa1","\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["eba1","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B"],["eca1","\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["eda1","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8"],["eea1","\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["efa1","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E"],["f0a1","\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["f1a1","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7"],["f2a1","\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["f3a1","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0"],["f4a1","\u582F\u69C7\u9059\u7464\u51DC\u7199"],["f9a1","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7"],["faa1","\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["fba1","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA"],["fca1","\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["fcf1","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["8fa2af","\u02D8\u02C7\xB8\u02D9\u02DD\xAF\u02DB\u02DA\uFF5E\u0384\u0385"],["8fa2c2","\xA1\xA6\xBF"],["8fa2eb","\xBA\xAA\xA9\xAE\u2122\xA4\u2116"],["8fa6e1","\u0386\u0388\u0389\u038A\u03AA"],["8fa6e7","\u038C"],["8fa6e9","\u038E\u03AB"],["8fa6ec","\u038F"],["8fa6f1","\u03AC\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03C2\u03CD\u03CB\u03B0\u03CE"],["8fa7c2","\u0402",10,"\u040E\u040F"],["8fa7f2","\u0452",10,"\u045E\u045F"],["8fa9a1","\xC6\u0110"],["8fa9a4","\u0126"],["8fa9a6","\u0132"],["8fa9a8","\u0141\u013F"],["8fa9ab","\u014A\xD8\u0152"],["8fa9af","\u0166\xDE"],["8fa9c1","\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0142\u0140\u0149\u014B\xF8\u0153\xDF\u0167\xFE"],["8faaa1","\xC1\xC0\xC4\xC2\u0102\u01CD\u0100\u0104\xC5\xC3\u0106\u0108\u010C\xC7\u010A\u010E\xC9\xC8\xCB\xCA\u011A\u0116\u0112\u0118"],["8faaba","\u011C\u011E\u0122\u0120\u0124\xCD\xCC\xCF\xCE\u01CF\u0130\u012A\u012E\u0128\u0134\u0136\u0139\u013D\u013B\u0143\u0147\u0145\xD1\xD3\xD2\xD6\xD4\u01D1\u0150\u014C\xD5\u0154\u0158\u0156\u015A\u015C\u0160\u015E\u0164\u0162\xDA\xD9\xDC\xDB\u016C\u01D3\u0170\u016A\u0172\u016E\u0168\u01D7\u01DB\u01D9\u01D5\u0174\xDD\u0178\u0176\u0179\u017D\u017B"],["8faba1","\xE1\xE0\xE4\xE2\u0103\u01CE\u0101\u0105\xE5\xE3\u0107\u0109\u010D\xE7\u010B\u010F\xE9\xE8\xEB\xEA\u011B\u0117\u0113\u0119\u01F5\u011D\u011F"],["8fabbd","\u0121\u0125\xED\xEC\xEF\xEE\u01D0"],["8fabc5","\u012B\u012F\u0129\u0135\u0137\u013A\u013E\u013C\u0144\u0148\u0146\xF1\xF3\xF2\xF6\xF4\u01D2\u0151\u014D\xF5\u0155\u0159\u0157\u015B\u015D\u0161\u015F\u0165\u0163\xFA\xF9\xFC\xFB\u016D\u01D4\u0171\u016B\u0173\u016F\u0169\u01D8\u01DC\u01DA\u01D6\u0175\xFD\xFF\u0177\u017A\u017E\u017C"],["8fb0a1","\u4E02\u4E04\u4E05\u4E0C\u4E12\u4E1F\u4E23\u4E24\u4E28\u4E2B\u4E2E\u4E2F\u4E30\u4E35\u4E40\u4E41\u4E44\u4E47\u4E51\u4E5A\u4E5C\u4E63\u4E68\u4E69\u4E74\u4E75\u4E79\u4E7F\u4E8D\u4E96\u4E97\u4E9D\u4EAF\u4EB9\u4EC3\u4ED0\u4EDA\u4EDB\u4EE0\u4EE1\u4EE2\u4EE8\u4EEF\u4EF1\u4EF3\u4EF5\u4EFD\u4EFE\u4EFF\u4F00\u4F02\u4F03\u4F08\u4F0B\u4F0C\u4F12\u4F15\u4F16\u4F17\u4F19\u4F2E\u4F31\u4F60\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E\u4F40\u4F42\u4F48\u4F49\u4F4B\u4F4C\u4F52\u4F54\u4F56\u4F58\u4F5F\u4F63\u4F6A\u4F6C\u4F6E\u4F71\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F7E\u4F81\u4F82\u4F84"],["8fb1a1","\u4F85\u4F89\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F94\u4F97\u4F99\u4F9A\u4F9E\u4F9F\u4FB2\u4FB7\u4FB9\u4FBB\u4FBC\u4FBD\u4FBE\u4FC0\u4FC1\u4FC5\u4FC6\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FCF\u4FD2\u4FDC\u4FE0\u4FE2\u4FF0\u4FF2\u4FFC\u4FFD\u4FFF\u5000\u5001\u5004\u5007\u500A\u500C\u500E\u5010\u5013\u5017\u5018\u501B\u501C\u501D\u501E\u5022\u5027\u502E\u5030\u5032\u5033\u5035\u5040\u5041\u5042\u5045\u5046\u504A\u504C\u504E\u5051\u5052\u5053\u5057\u5059\u505F\u5060\u5062\u5063\u5066\u5067\u506A\u506D\u5070\u5071\u503B\u5081\u5083\u5084\u5086\u508A\u508E\u508F\u5090"],["8fb2a1","\u5092\u5093\u5094\u5096\u509B\u509C\u509E",4,"\u50AA\u50AF\u50B0\u50B9\u50BA\u50BD\u50C0\u50C3\u50C4\u50C7\u50CC\u50CE\u50D0\u50D3\u50D4\u50D8\u50DC\u50DD\u50DF\u50E2\u50E4\u50E6\u50E8\u50E9\u50EF\u50F1\u50F6\u50FA\u50FE\u5103\u5106\u5107\u5108\u510B\u510C\u510D\u510E\u50F2\u5110\u5117\u5119\u511B\u511C\u511D\u511E\u5123\u5127\u5128\u512C\u512D\u512F\u5131\u5133\u5134\u5135\u5138\u5139\u5142\u514A\u514F\u5153\u5155\u5157\u5158\u515F\u5164\u5166\u517E\u5183\u5184\u518B\u518E\u5198\u519D\u51A1\u51A3\u51AD\u51B8\u51BA\u51BC\u51BE\u51BF\u51C2"],["8fb3a1","\u51C8\u51CF\u51D1\u51D2\u51D3\u51D5\u51D8\u51DE\u51E2\u51E5\u51EE\u51F2\u51F3\u51F4\u51F7\u5201\u5202\u5205\u5212\u5213\u5215\u5216\u5218\u5222\u5228\u5231\u5232\u5235\u523C\u5245\u5249\u5255\u5257\u5258\u525A\u525C\u525F\u5260\u5261\u5266\u526E\u5277\u5278\u5279\u5280\u5282\u5285\u528A\u528C\u5293\u5295\u5296\u5297\u5298\u529A\u529C\u52A4\u52A5\u52A6\u52A7\u52AF\u52B0\u52B6\u52B7\u52B8\u52BA\u52BB\u52BD\u52C0\u52C4\u52C6\u52C8\u52CC\u52CF\u52D1\u52D4\u52D6\u52DB\u52DC\u52E1\u52E5\u52E8\u52E9\u52EA\u52EC\u52F0\u52F1\u52F4\u52F6\u52F7\u5300\u5303\u530A\u530B"],["8fb4a1","\u530C\u5311\u5313\u5318\u531B\u531C\u531E\u531F\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u5330\u5332\u5335\u533C\u533D\u533E\u5342\u534C\u534B\u5359\u535B\u5361\u5363\u5365\u536C\u536D\u5372\u5379\u537E\u5383\u5387\u5388\u538E\u5393\u5394\u5399\u539D\u53A1\u53A4\u53AA\u53AB\u53AF\u53B2\u53B4\u53B5\u53B7\u53B8\u53BA\u53BD\u53C0\u53C5\u53CF\u53D2\u53D3\u53D5\u53DA\u53DD\u53DE\u53E0\u53E6\u53E7\u53F5\u5402\u5413\u541A\u5421\u5427\u5428\u542A\u542F\u5431\u5434\u5435\u5443\u5444\u5447\u544D\u544F\u545E\u5462\u5464\u5466\u5467\u5469\u546B\u546D\u546E\u5474\u547F"],["8fb5a1","\u5481\u5483\u5485\u5488\u5489\u548D\u5491\u5495\u5496\u549C\u549F\u54A1\u54A6\u54A7\u54A9\u54AA\u54AD\u54AE\u54B1\u54B7\u54B9\u54BA\u54BB\u54BF\u54C6\u54CA\u54CD\u54CE\u54E0\u54EA\u54EC\u54EF\u54F6\u54FC\u54FE\u54FF\u5500\u5501\u5505\u5508\u5509\u550C\u550D\u550E\u5515\u552A\u552B\u5532\u5535\u5536\u553B\u553C\u553D\u5541\u5547\u5549\u554A\u554D\u5550\u5551\u5558\u555A\u555B\u555E\u5560\u5561\u5564\u5566\u557F\u5581\u5582\u5586\u5588\u558E\u558F\u5591\u5592\u5593\u5594\u5597\u55A3\u55A4\u55AD\u55B2\u55BF\u55C1\u55C3\u55C6\u55C9\u55CB\u55CC\u55CE\u55D1\u55D2"],["8fb6a1","\u55D3\u55D7\u55D8\u55DB\u55DE\u55E2\u55E9\u55F6\u55FF\u5605\u5608\u560A\u560D",5,"\u5619\u562C\u5630\u5633\u5635\u5637\u5639\u563B\u563C\u563D\u563F\u5640\u5641\u5643\u5644\u5646\u5649\u564B\u564D\u564F\u5654\u565E\u5660\u5661\u5662\u5663\u5666\u5669\u566D\u566F\u5671\u5672\u5675\u5684\u5685\u5688\u568B\u568C\u5695\u5699\u569A\u569D\u569E\u569F\u56A6\u56A7\u56A8\u56A9\u56AB\u56AC\u56AD\u56B1\u56B3\u56B7\u56BE\u56C5\u56C9\u56CA\u56CB\u56CF\u56D0\u56CC\u56CD\u56D9\u56DC\u56DD\u56DF\u56E1\u56E4",4,"\u56F1\u56EB\u56ED"],["8fb7a1","\u56F6\u56F7\u5701\u5702\u5707\u570A\u570C\u5711\u5715\u571A\u571B\u571D\u5720\u5722\u5723\u5724\u5725\u5729\u572A\u572C\u572E\u572F\u5733\u5734\u573D\u573E\u573F\u5745\u5746\u574C\u574D\u5752\u5762\u5765\u5767\u5768\u576B\u576D",4,"\u5773\u5774\u5775\u5777\u5779\u577A\u577B\u577C\u577E\u5781\u5783\u578C\u5794\u5797\u5799\u579A\u579C\u579D\u579E\u579F\u57A1\u5795\u57A7\u57A8\u57A9\u57AC\u57B8\u57BD\u57C7\u57C8\u57CC\u57CF\u57D5\u57DD\u57DE\u57E4\u57E6\u57E7\u57E9\u57ED\u57F0\u57F5\u57F6\u57F8\u57FD\u57FE\u57FF\u5803\u5804\u5808\u5809\u57E1"],["8fb8a1","\u580C\u580D\u581B\u581E\u581F\u5820\u5826\u5827\u582D\u5832\u5839\u583F\u5849\u584C\u584D\u584F\u5850\u5855\u585F\u5861\u5864\u5867\u5868\u5878\u587C\u587F\u5880\u5881\u5887\u5888\u5889\u588A\u588C\u588D\u588F\u5890\u5894\u5896\u589D\u58A0\u58A1\u58A2\u58A6\u58A9\u58B1\u58B2\u58C4\u58BC\u58C2\u58C8\u58CD\u58CE\u58D0\u58D2\u58D4\u58D6\u58DA\u58DD\u58E1\u58E2\u58E9\u58F3\u5905\u5906\u590B\u590C\u5912\u5913\u5914\u8641\u591D\u5921\u5923\u5924\u5928\u592F\u5930\u5933\u5935\u5936\u593F\u5943\u5946\u5952\u5953\u5959\u595B\u595D\u595E\u595F\u5961\u5963\u596B\u596D"],["8fb9a1","\u596F\u5972\u5975\u5976\u5979\u597B\u597C\u598B\u598C\u598E\u5992\u5995\u5997\u599F\u59A4\u59A7\u59AD\u59AE\u59AF\u59B0\u59B3\u59B7\u59BA\u59BC\u59C1\u59C3\u59C4\u59C8\u59CA\u59CD\u59D2\u59DD\u59DE\u59DF\u59E3\u59E4\u59E7\u59EE\u59EF\u59F1\u59F2\u59F4\u59F7\u5A00\u5A04\u5A0C\u5A0D\u5A0E\u5A12\u5A13\u5A1E\u5A23\u5A24\u5A27\u5A28\u5A2A\u5A2D\u5A30\u5A44\u5A45\u5A47\u5A48\u5A4C\u5A50\u5A55\u5A5E\u5A63\u5A65\u5A67\u5A6D\u5A77\u5A7A\u5A7B\u5A7E\u5A8B\u5A90\u5A93\u5A96\u5A99\u5A9C\u5A9E\u5A9F\u5AA0\u5AA2\u5AA7\u5AAC\u5AB1\u5AB2\u5AB3\u5AB5\u5AB8\u5ABA\u5ABB\u5ABF"],["8fbaa1","\u5AC4\u5AC6\u5AC8\u5ACF\u5ADA\u5ADC\u5AE0\u5AE5\u5AEA\u5AEE\u5AF5\u5AF6\u5AFD\u5B00\u5B01\u5B08\u5B17\u5B34\u5B19\u5B1B\u5B1D\u5B21\u5B25\u5B2D\u5B38\u5B41\u5B4B\u5B4C\u5B52\u5B56\u5B5E\u5B68\u5B6E\u5B6F\u5B7C\u5B7D\u5B7E\u5B7F\u5B81\u5B84\u5B86\u5B8A\u5B8E\u5B90\u5B91\u5B93\u5B94\u5B96\u5BA8\u5BA9\u5BAC\u5BAD\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBC\u5BC0\u5BC1\u5BCD\u5BCF\u5BD6",4,"\u5BE0\u5BEF\u5BF1\u5BF4\u5BFD\u5C0C\u5C17\u5C1E\u5C1F\u5C23\u5C26\u5C29\u5C2B\u5C2C\u5C2E\u5C30\u5C32\u5C35\u5C36\u5C59\u5C5A\u5C5C\u5C62\u5C63\u5C67\u5C68\u5C69"],["8fbba1","\u5C6D\u5C70\u5C74\u5C75\u5C7A\u5C7B\u5C7C\u5C7D\u5C87\u5C88\u5C8A\u5C8F\u5C92\u5C9D\u5C9F\u5CA0\u5CA2\u5CA3\u5CA6\u5CAA\u5CB2\u5CB4\u5CB5\u5CBA\u5CC9\u5CCB\u5CD2\u5CDD\u5CD7\u5CEE\u5CF1\u5CF2\u5CF4\u5D01\u5D06\u5D0D\u5D12\u5D2B\u5D23\u5D24\u5D26\u5D27\u5D31\u5D34\u5D39\u5D3D\u5D3F\u5D42\u5D43\u5D46\u5D48\u5D55\u5D51\u5D59\u5D4A\u5D5F\u5D60\u5D61\u5D62\u5D64\u5D6A\u5D6D\u5D70\u5D79\u5D7A\u5D7E\u5D7F\u5D81\u5D83\u5D88\u5D8A\u5D92\u5D93\u5D94\u5D95\u5D99\u5D9B\u5D9F\u5DA0\u5DA7\u5DAB\u5DB0\u5DB4\u5DB8\u5DB9\u5DC3\u5DC7\u5DCB\u5DD0\u5DCE\u5DD8\u5DD9\u5DE0\u5DE4"],["8fbca1","\u5DE9\u5DF8\u5DF9\u5E00\u5E07\u5E0D\u5E12\u5E14\u5E15\u5E18\u5E1F\u5E20\u5E2E\u5E28\u5E32\u5E35\u5E3E\u5E4B\u5E50\u5E49\u5E51\u5E56\u5E58\u5E5B\u5E5C\u5E5E\u5E68\u5E6A",4,"\u5E70\u5E80\u5E8B\u5E8E\u5EA2\u5EA4\u5EA5\u5EA8\u5EAA\u5EAC\u5EB1\u5EB3\u5EBD\u5EBE\u5EBF\u5EC6\u5ECC\u5ECB\u5ECE\u5ED1\u5ED2\u5ED4\u5ED5\u5EDC\u5EDE\u5EE5\u5EEB\u5F02\u5F06\u5F07\u5F08\u5F0E\u5F19\u5F1C\u5F1D\u5F21\u5F22\u5F23\u5F24\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F34\u5F36\u5F3B\u5F3D\u5F3F\u5F40\u5F44\u5F45\u5F47\u5F4D\u5F50\u5F54\u5F58\u5F5B\u5F60\u5F63\u5F64\u5F67"],["8fbda1","\u5F6F\u5F72\u5F74\u5F75\u5F78\u5F7A\u5F7D\u5F7E\u5F89\u5F8D\u5F8F\u5F96\u5F9C\u5F9D\u5FA2\u5FA7\u5FAB\u5FA4\u5FAC\u5FAF\u5FB0\u5FB1\u5FB8\u5FC4\u5FC7\u5FC8\u5FC9\u5FCB\u5FD0",4,"\u5FDE\u5FE1\u5FE2\u5FE8\u5FE9\u5FEA\u5FEC\u5FED\u5FEE\u5FEF\u5FF2\u5FF3\u5FF6\u5FFA\u5FFC\u6007\u600A\u600D\u6013\u6014\u6017\u6018\u601A\u601F\u6024\u602D\u6033\u6035\u6040\u6047\u6048\u6049\u604C\u6051\u6054\u6056\u6057\u605D\u6061\u6067\u6071\u607E\u607F\u6082\u6086\u6088\u608A\u608E\u6091\u6093\u6095\u6098\u609D\u609E\u60A2\u60A4\u60A5\u60A8\u60B0\u60B1\u60B7"],["8fbea1","\u60BB\u60BE\u60C2\u60C4\u60C8\u60C9\u60CA\u60CB\u60CE\u60CF\u60D4\u60D5\u60D9\u60DB\u60DD\u60DE\u60E2\u60E5\u60F2\u60F5\u60F8\u60FC\u60FD\u6102\u6107\u610A\u610C\u6110",4,"\u6116\u6117\u6119\u611C\u611E\u6122\u612A\u612B\u6130\u6131\u6135\u6136\u6137\u6139\u6141\u6145\u6146\u6149\u615E\u6160\u616C\u6172\u6178\u617B\u617C\u617F\u6180\u6181\u6183\u6184\u618B\u618D\u6192\u6193\u6197\u6198\u619C\u619D\u619F\u61A0\u61A5\u61A8\u61AA\u61AD\u61B8\u61B9\u61BC\u61C0\u61C1\u61C2\u61CE\u61CF\u61D5\u61DC\u61DD\u61DE\u61DF\u61E1\u61E2\u61E7\u61E9\u61E5"],["8fbfa1","\u61EC\u61ED\u61EF\u6201\u6203\u6204\u6207\u6213\u6215\u621C\u6220\u6222\u6223\u6227\u6229\u622B\u6239\u623D\u6242\u6243\u6244\u6246\u624C\u6250\u6251\u6252\u6254\u6256\u625A\u625C\u6264\u626D\u626F\u6273\u627A\u627D\u628D\u628E\u628F\u6290\u62A6\u62A8\u62B3\u62B6\u62B7\u62BA\u62BE\u62BF\u62C4\u62CE\u62D5\u62D6\u62DA\u62EA\u62F2\u62F4\u62FC\u62FD\u6303\u6304\u630A\u630B\u630D\u6310\u6313\u6316\u6318\u6329\u632A\u632D\u6335\u6336\u6339\u633C\u6341\u6342\u6343\u6344\u6346\u634A\u634B\u634E\u6352\u6353\u6354\u6358\u635B\u6365\u6366\u636C\u636D\u6371\u6374\u6375"],["8fc0a1","\u6378\u637C\u637D\u637F\u6382\u6384\u6387\u638A\u6390\u6394\u6395\u6399\u639A\u639E\u63A4\u63A6\u63AD\u63AE\u63AF\u63BD\u63C1\u63C5\u63C8\u63CE\u63D1\u63D3\u63D4\u63D5\u63DC\u63E0\u63E5\u63EA\u63EC\u63F2\u63F3\u63F5\u63F8\u63F9\u6409\u640A\u6410\u6412\u6414\u6418\u641E\u6420\u6422\u6424\u6425\u6429\u642A\u642F\u6430\u6435\u643D\u643F\u644B\u644F\u6451\u6452\u6453\u6454\u645A\u645B\u645C\u645D\u645F\u6460\u6461\u6463\u646D\u6473\u6474\u647B\u647D\u6485\u6487\u648F\u6490\u6491\u6498\u6499\u649B\u649D\u649F\u64A1\u64A3\u64A6\u64A8\u64AC\u64B3\u64BD\u64BE\u64BF"],["8fc1a1","\u64C4\u64C9\u64CA\u64CB\u64CC\u64CE\u64D0\u64D1\u64D5\u64D7\u64E4\u64E5\u64E9\u64EA\u64ED\u64F0\u64F5\u64F7\u64FB\u64FF\u6501\u6504\u6508\u6509\u650A\u650F\u6513\u6514\u6516\u6519\u651B\u651E\u651F\u6522\u6526\u6529\u652E\u6531\u653A\u653C\u653D\u6543\u6547\u6549\u6550\u6552\u6554\u655F\u6560\u6567\u656B\u657A\u657D\u6581\u6585\u658A\u6592\u6595\u6598\u659D\u65A0\u65A3\u65A6\u65AE\u65B2\u65B3\u65B4\u65BF\u65C2\u65C8\u65C9\u65CE\u65D0\u65D4\u65D6\u65D8\u65DF\u65F0\u65F2\u65F4\u65F5\u65F9\u65FE\u65FF\u6600\u6604\u6608\u6609\u660D\u6611\u6612\u6615\u6616\u661D"],["8fc2a1","\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6631\u6633\u6639\u6637\u6640\u6645\u6646\u664A\u664C\u6651\u664E\u6657\u6658\u6659\u665B\u665C\u6660\u6661\u66FB\u666A\u666B\u666C\u667E\u6673\u6675\u667F\u6677\u6678\u6679\u667B\u6680\u667C\u668B\u668C\u668D\u6690\u6692\u6699\u669A\u669B\u669C\u669F\u66A0\u66A4\u66AD\u66B1\u66B2\u66B5\u66BB\u66BF\u66C0\u66C2\u66C3\u66C8\u66CC\u66CE\u66CF\u66D4\u66DB\u66DF\u66E8\u66EB\u66EC\u66EE\u66FA\u6705\u6707\u670E\u6713\u6719\u671C\u6720\u6722\u6733\u673E\u6745\u6747\u6748\u674C\u6754\u6755\u675D"],["8fc3a1","\u6766\u676C\u676E\u6774\u6776\u677B\u6781\u6784\u678E\u678F\u6791\u6793\u6796\u6798\u6799\u679B\u67B0\u67B1\u67B2\u67B5\u67BB\u67BC\u67BD\u67F9\u67C0\u67C2\u67C3\u67C5\u67C8\u67C9\u67D2\u67D7\u67D9\u67DC\u67E1\u67E6\u67F0\u67F2\u67F6\u67F7\u6852\u6814\u6819\u681D\u681F\u6828\u6827\u682C\u682D\u682F\u6830\u6831\u6833\u683B\u683F\u6844\u6845\u684A\u684C\u6855\u6857\u6858\u685B\u686B\u686E",4,"\u6875\u6879\u687A\u687B\u687C\u6882\u6884\u6886\u6888\u6896\u6898\u689A\u689C\u68A1\u68A3\u68A5\u68A9\u68AA\u68AE\u68B2\u68BB\u68C5\u68C8\u68CC\u68CF"],["8fc4a1","\u68D0\u68D1\u68D3\u68D6\u68D9\u68DC\u68DD\u68E5\u68E8\u68EA\u68EB\u68EC\u68ED\u68F0\u68F1\u68F5\u68F6\u68FB\u68FC\u68FD\u6906\u6909\u690A\u6910\u6911\u6913\u6916\u6917\u6931\u6933\u6935\u6938\u693B\u6942\u6945\u6949\u694E\u6957\u695B\u6963\u6964\u6965\u6966\u6968\u6969\u696C\u6970\u6971\u6972\u697A\u697B\u697F\u6980\u698D\u6992\u6996\u6998\u69A1\u69A5\u69A6\u69A8\u69AB\u69AD\u69AF\u69B7\u69B8\u69BA\u69BC\u69C5\u69C8\u69D1\u69D6\u69D7\u69E2\u69E5\u69EE\u69EF\u69F1\u69F3\u69F5\u69FE\u6A00\u6A01\u6A03\u6A0F\u6A11\u6A15\u6A1A\u6A1D\u6A20\u6A24\u6A28\u6A30\u6A32"],["8fc5a1","\u6A34\u6A37\u6A3B\u6A3E\u6A3F\u6A45\u6A46\u6A49\u6A4A\u6A4E\u6A50\u6A51\u6A52\u6A55\u6A56\u6A5B\u6A64\u6A67\u6A6A\u6A71\u6A73\u6A7E\u6A81\u6A83\u6A86\u6A87\u6A89\u6A8B\u6A91\u6A9B\u6A9D\u6A9E\u6A9F\u6AA5\u6AAB\u6AAF\u6AB0\u6AB1\u6AB4\u6ABD\u6ABE\u6ABF\u6AC6\u6AC9\u6AC8\u6ACC\u6AD0\u6AD4\u6AD5\u6AD6\u6ADC\u6ADD\u6AE4\u6AE7\u6AEC\u6AF0\u6AF1\u6AF2\u6AFC\u6AFD\u6B02\u6B03\u6B06\u6B07\u6B09\u6B0F\u6B10\u6B11\u6B17\u6B1B\u6B1E\u6B24\u6B28\u6B2B\u6B2C\u6B2F\u6B35\u6B36\u6B3B\u6B3F\u6B46\u6B4A\u6B4D\u6B52\u6B56\u6B58\u6B5D\u6B60\u6B67\u6B6B\u6B6E\u6B70\u6B75\u6B7D"],["8fc6a1","\u6B7E\u6B82\u6B85\u6B97\u6B9B\u6B9F\u6BA0\u6BA2\u6BA3\u6BA8\u6BA9\u6BAC\u6BAD\u6BAE\u6BB0\u6BB8\u6BB9\u6BBD\u6BBE\u6BC3\u6BC4\u6BC9\u6BCC\u6BD6\u6BDA\u6BE1\u6BE3\u6BE6\u6BE7\u6BEE\u6BF1\u6BF7\u6BF9\u6BFF\u6C02\u6C04\u6C05\u6C09\u6C0D\u6C0E\u6C10\u6C12\u6C19\u6C1F\u6C26\u6C27\u6C28\u6C2C\u6C2E\u6C33\u6C35\u6C36\u6C3A\u6C3B\u6C3F\u6C4A\u6C4B\u6C4D\u6C4F\u6C52\u6C54\u6C59\u6C5B\u6C5C\u6C6B\u6C6D\u6C6F\u6C74\u6C76\u6C78\u6C79\u6C7B\u6C85\u6C86\u6C87\u6C89\u6C94\u6C95\u6C97\u6C98\u6C9C\u6C9F\u6CB0\u6CB2\u6CB4\u6CC2\u6CC6\u6CCD\u6CCF\u6CD0\u6CD1\u6CD2\u6CD4\u6CD6"],["8fc7a1","\u6CDA\u6CDC\u6CE0\u6CE7\u6CE9\u6CEB\u6CEC\u6CEE\u6CF2\u6CF4\u6D04\u6D07\u6D0A\u6D0E\u6D0F\u6D11\u6D13\u6D1A\u6D26\u6D27\u6D28\u6C67\u6D2E\u6D2F\u6D31\u6D39\u6D3C\u6D3F\u6D57\u6D5E\u6D5F\u6D61\u6D65\u6D67\u6D6F\u6D70\u6D7C\u6D82\u6D87\u6D91\u6D92\u6D94\u6D96\u6D97\u6D98\u6DAA\u6DAC\u6DB4\u6DB7\u6DB9\u6DBD\u6DBF\u6DC4\u6DC8\u6DCA\u6DCE\u6DCF\u6DD6\u6DDB\u6DDD\u6DDF\u6DE0\u6DE2\u6DE5\u6DE9\u6DEF\u6DF0\u6DF4\u6DF6\u6DFC\u6E00\u6E04\u6E1E\u6E22\u6E27\u6E32\u6E36\u6E39\u6E3B\u6E3C\u6E44\u6E45\u6E48\u6E49\u6E4B\u6E4F\u6E51\u6E52\u6E53\u6E54\u6E57\u6E5C\u6E5D\u6E5E"],["8fc8a1","\u6E62\u6E63\u6E68\u6E73\u6E7B\u6E7D\u6E8D\u6E93\u6E99\u6EA0\u6EA7\u6EAD\u6EAE\u6EB1\u6EB3\u6EBB\u6EBF\u6EC0\u6EC1\u6EC3\u6EC7\u6EC8\u6ECA\u6ECD\u6ECE\u6ECF\u6EEB\u6EED\u6EEE\u6EF9\u6EFB\u6EFD\u6F04\u6F08\u6F0A\u6F0C\u6F0D\u6F16\u6F18\u6F1A\u6F1B\u6F26\u6F29\u6F2A\u6F2F\u6F30\u6F33\u6F36\u6F3B\u6F3C\u6F2D\u6F4F\u6F51\u6F52\u6F53\u6F57\u6F59\u6F5A\u6F5D\u6F5E\u6F61\u6F62\u6F68\u6F6C\u6F7D\u6F7E\u6F83\u6F87\u6F88\u6F8B\u6F8C\u6F8D\u6F90\u6F92\u6F93\u6F94\u6F96\u6F9A\u6F9F\u6FA0\u6FA5\u6FA6\u6FA7\u6FA8\u6FAE\u6FAF\u6FB0\u6FB5\u6FB6\u6FBC\u6FC5\u6FC7\u6FC8\u6FCA"],["8fc9a1","\u6FDA\u6FDE\u6FE8\u6FE9\u6FF0\u6FF5\u6FF9\u6FFC\u6FFD\u7000\u7005\u7006\u7007\u700D\u7017\u7020\u7023\u702F\u7034\u7037\u7039\u703C\u7043\u7044\u7048\u7049\u704A\u704B\u7054\u7055\u705D\u705E\u704E\u7064\u7065\u706C\u706E\u7075\u7076\u707E\u7081\u7085\u7086\u7094",4,"\u709B\u70A4\u70AB\u70B0\u70B1\u70B4\u70B7\u70CA\u70D1\u70D3\u70D4\u70D5\u70D6\u70D8\u70DC\u70E4\u70FA\u7103",4,"\u710B\u710C\u710F\u711E\u7120\u712B\u712D\u712F\u7130\u7131\u7138\u7141\u7145\u7146\u7147\u714A\u714B\u7150\u7152\u7157\u715A\u715C\u715E\u7160"],["8fcaa1","\u7168\u7179\u7180\u7185\u7187\u718C\u7192\u719A\u719B\u71A0\u71A2\u71AF\u71B0\u71B2\u71B3\u71BA\u71BF\u71C0\u71C1\u71C4\u71CB\u71CC\u71D3\u71D6\u71D9\u71DA\u71DC\u71F8\u71FE\u7200\u7207\u7208\u7209\u7213\u7217\u721A\u721D\u721F\u7224\u722B\u722F\u7234\u7238\u7239\u7241\u7242\u7243\u7245\u724E\u724F\u7250\u7253\u7255\u7256\u725A\u725C\u725E\u7260\u7263\u7268\u726B\u726E\u726F\u7271\u7277\u7278\u727B\u727C\u727F\u7284\u7289\u728D\u728E\u7293\u729B\u72A8\u72AD\u72AE\u72B1\u72B4\u72BE\u72C1\u72C7\u72C9\u72CC\u72D5\u72D6\u72D8\u72DF\u72E5\u72F3\u72F4\u72FA\u72FB"],["8fcba1","\u72FE\u7302\u7304\u7305\u7307\u730B\u730D\u7312\u7313\u7318\u7319\u731E\u7322\u7324\u7327\u7328\u732C\u7331\u7332\u7335\u733A\u733B\u733D\u7343\u734D\u7350\u7352\u7356\u7358\u735D\u735E\u735F\u7360\u7366\u7367\u7369\u736B\u736C\u736E\u736F\u7371\u7377\u7379\u737C\u7380\u7381\u7383\u7385\u7386\u738E\u7390\u7393\u7395\u7397\u7398\u739C\u739E\u739F\u73A0\u73A2\u73A5\u73A6\u73AA\u73AB\u73AD\u73B5\u73B7\u73B9\u73BC\u73BD\u73BF\u73C5\u73C6\u73C9\u73CB\u73CC\u73CF\u73D2\u73D3\u73D6\u73D9\u73DD\u73E1\u73E3\u73E6\u73E7\u73E9\u73F4\u73F5\u73F7\u73F9\u73FA\u73FB\u73FD"],["8fcca1","\u73FF\u7400\u7401\u7404\u7407\u740A\u7411\u741A\u741B\u7424\u7426\u7428",9,"\u7439\u7440\u7443\u7444\u7446\u7447\u744B\u744D\u7451\u7452\u7457\u745D\u7462\u7466\u7467\u7468\u746B\u746D\u746E\u7471\u7472\u7480\u7481\u7485\u7486\u7487\u7489\u748F\u7490\u7491\u7492\u7498\u7499\u749A\u749C\u749F\u74A0\u74A1\u74A3\u74A6\u74A8\u74A9\u74AA\u74AB\u74AE\u74AF\u74B1\u74B2\u74B5\u74B9\u74BB\u74BF\u74C8\u74C9\u74CC\u74D0\u74D3\u74D8\u74DA\u74DB\u74DE\u74DF\u74E4\u74E8\u74EA\u74EB\u74EF\u74F4\u74FA\u74FB\u74FC\u74FF\u7506"],["8fcda1","\u7512\u7516\u7517\u7520\u7521\u7524\u7527\u7529\u752A\u752F\u7536\u7539\u753D\u753E\u753F\u7540\u7543\u7547\u7548\u754E\u7550\u7552\u7557\u755E\u755F\u7561\u756F\u7571\u7579",5,"\u7581\u7585\u7590\u7592\u7593\u7595\u7599\u759C\u75A2\u75A4\u75B4\u75BA\u75BF\u75C0\u75C1\u75C4\u75C6\u75CC\u75CE\u75CF\u75D7\u75DC\u75DF\u75E0\u75E1\u75E4\u75E7\u75EC\u75EE\u75EF\u75F1\u75F9\u7600\u7602\u7603\u7604\u7607\u7608\u760A\u760C\u760F\u7612\u7613\u7615\u7616\u7619\u761B\u761C\u761D\u761E\u7623\u7625\u7626\u7629\u762D\u7632\u7633\u7635\u7638\u7639"],["8fcea1","\u763A\u763C\u764A\u7640\u7641\u7643\u7644\u7645\u7649\u764B\u7655\u7659\u765F\u7664\u7665\u766D\u766E\u766F\u7671\u7674\u7681\u7685\u768C\u768D\u7695\u769B\u769C\u769D\u769F\u76A0\u76A2",6,"\u76AA\u76AD\u76BD\u76C1\u76C5\u76C9\u76CB\u76CC\u76CE\u76D4\u76D9\u76E0\u76E6\u76E8\u76EC\u76F0\u76F1\u76F6\u76F9\u76FC\u7700\u7706\u770A\u770E\u7712\u7714\u7715\u7717\u7719\u771A\u771C\u7722\u7728\u772D\u772E\u772F\u7734\u7735\u7736\u7739\u773D\u773E\u7742\u7745\u7746\u774A\u774D\u774E\u774F\u7752\u7756\u7757\u775C\u775E\u775F\u7760\u7762"],["8fcfa1","\u7764\u7767\u776A\u776C\u7770\u7772\u7773\u7774\u777A\u777D\u7780\u7784\u778C\u778D\u7794\u7795\u7796\u779A\u779F\u77A2\u77A7\u77AA\u77AE\u77AF\u77B1\u77B5\u77BE\u77C3\u77C9\u77D1\u77D2\u77D5\u77D9\u77DE\u77DF\u77E0\u77E4\u77E6\u77EA\u77EC\u77F0\u77F1\u77F4\u77F8\u77FB\u7805\u7806\u7809\u780D\u780E\u7811\u781D\u7821\u7822\u7823\u782D\u782E\u7830\u7835\u7837\u7843\u7844\u7847\u7848\u784C\u784E\u7852\u785C\u785E\u7860\u7861\u7863\u7864\u7868\u786A\u786E\u787A\u787E\u788A\u788F\u7894\u7898\u78A1\u789D\u789E\u789F\u78A4\u78A8\u78AC\u78AD\u78B0\u78B1\u78B2\u78B3"],["8fd0a1","\u78BB\u78BD\u78BF\u78C7\u78C8\u78C9\u78CC\u78CE\u78D2\u78D3\u78D5\u78D6\u78E4\u78DB\u78DF\u78E0\u78E1\u78E6\u78EA\u78F2\u78F3\u7900\u78F6\u78F7\u78FA\u78FB\u78FF\u7906\u790C\u7910\u791A\u791C\u791E\u791F\u7920\u7925\u7927\u7929\u792D\u7931\u7934\u7935\u793B\u793D\u793F\u7944\u7945\u7946\u794A\u794B\u794F\u7951\u7954\u7958\u795B\u795C\u7967\u7969\u796B\u7972\u7979\u797B\u797C\u797E\u798B\u798C\u7991\u7993\u7994\u7995\u7996\u7998\u799B\u799C\u79A1\u79A8\u79A9\u79AB\u79AF\u79B1\u79B4\u79B8\u79BB\u79C2\u79C4\u79C7\u79C8\u79CA\u79CF\u79D4\u79D6\u79DA\u79DD\u79DE"],["8fd1a1","\u79E0\u79E2\u79E5\u79EA\u79EB\u79ED\u79F1\u79F8\u79FC\u7A02\u7A03\u7A07\u7A09\u7A0A\u7A0C\u7A11\u7A15\u7A1B\u7A1E\u7A21\u7A27\u7A2B\u7A2D\u7A2F\u7A30\u7A34\u7A35\u7A38\u7A39\u7A3A\u7A44\u7A45\u7A47\u7A48\u7A4C\u7A55\u7A56\u7A59\u7A5C\u7A5D\u7A5F\u7A60\u7A65\u7A67\u7A6A\u7A6D\u7A75\u7A78\u7A7E\u7A80\u7A82\u7A85\u7A86\u7A8A\u7A8B\u7A90\u7A91\u7A94\u7A9E\u7AA0\u7AA3\u7AAC\u7AB3\u7AB5\u7AB9\u7ABB\u7ABC\u7AC6\u7AC9\u7ACC\u7ACE\u7AD1\u7ADB\u7AE8\u7AE9\u7AEB\u7AEC\u7AF1\u7AF4\u7AFB\u7AFD\u7AFE\u7B07\u7B14\u7B1F\u7B23\u7B27\u7B29\u7B2A\u7B2B\u7B2D\u7B2E\u7B2F\u7B30"],["8fd2a1","\u7B31\u7B34\u7B3D\u7B3F\u7B40\u7B41\u7B47\u7B4E\u7B55\u7B60\u7B64\u7B66\u7B69\u7B6A\u7B6D\u7B6F\u7B72\u7B73\u7B77\u7B84\u7B89\u7B8E\u7B90\u7B91\u7B96\u7B9B\u7B9E\u7BA0\u7BA5\u7BAC\u7BAF\u7BB0\u7BB2\u7BB5\u7BB6\u7BBA\u7BBB\u7BBC\u7BBD\u7BC2\u7BC5\u7BC8\u7BCA\u7BD4\u7BD6\u7BD7\u7BD9\u7BDA\u7BDB\u7BE8\u7BEA\u7BF2\u7BF4\u7BF5\u7BF8\u7BF9\u7BFA\u7BFC\u7BFE\u7C01\u7C02\u7C03\u7C04\u7C06\u7C09\u7C0B\u7C0C\u7C0E\u7C0F\u7C19\u7C1B\u7C20\u7C25\u7C26\u7C28\u7C2C\u7C31\u7C33\u7C34\u7C36\u7C39\u7C3A\u7C46\u7C4A\u7C55\u7C51\u7C52\u7C53\u7C59",5],["8fd3a1","\u7C61\u7C63\u7C67\u7C69\u7C6D\u7C6E\u7C70\u7C72\u7C79\u7C7C\u7C7D\u7C86\u7C87\u7C8F\u7C94\u7C9E\u7CA0\u7CA6\u7CB0\u7CB6\u7CB7\u7CBA\u7CBB\u7CBC\u7CBF\u7CC4\u7CC7\u7CC8\u7CC9\u7CCD\u7CCF\u7CD3\u7CD4\u7CD5\u7CD7\u7CD9\u7CDA\u7CDD\u7CE6\u7CE9\u7CEB\u7CF5\u7D03\u7D07\u7D08\u7D09\u7D0F\u7D11\u7D12\u7D13\u7D16\u7D1D\u7D1E\u7D23\u7D26\u7D2A\u7D2D\u7D31\u7D3C\u7D3D\u7D3E\u7D40\u7D41\u7D47\u7D48\u7D4D\u7D51\u7D53\u7D57\u7D59\u7D5A\u7D5C\u7D5D\u7D65\u7D67\u7D6A\u7D70\u7D78\u7D7A\u7D7B\u7D7F\u7D81\u7D82\u7D83\u7D85\u7D86\u7D88\u7D8B\u7D8C\u7D8D\u7D91\u7D96\u7D97\u7D9D"],["8fd4a1","\u7D9E\u7DA6\u7DA7\u7DAA\u7DB3\u7DB6\u7DB7\u7DB9\u7DC2",4,"\u7DCC\u7DCD\u7DCE\u7DD7\u7DD9\u7E00\u7DE2\u7DE5\u7DE6\u7DEA\u7DEB\u7DED\u7DF1\u7DF5\u7DF6\u7DF9\u7DFA\u7E08\u7E10\u7E11\u7E15\u7E17\u7E1C\u7E1D\u7E20\u7E27\u7E28\u7E2C\u7E2D\u7E2F\u7E33\u7E36\u7E3F\u7E44\u7E45\u7E47\u7E4E\u7E50\u7E52\u7E58\u7E5F\u7E61\u7E62\u7E65\u7E6B\u7E6E\u7E6F\u7E73\u7E78\u7E7E\u7E81\u7E86\u7E87\u7E8A\u7E8D\u7E91\u7E95\u7E98\u7E9A\u7E9D\u7E9E\u7F3C\u7F3B\u7F3D\u7F3E\u7F3F\u7F43\u7F44\u7F47\u7F4F\u7F52\u7F53\u7F5B\u7F5C\u7F5D\u7F61\u7F63\u7F64\u7F65\u7F66\u7F6D"],["8fd5a1","\u7F71\u7F7D\u7F7E\u7F7F\u7F80\u7F8B\u7F8D\u7F8F\u7F90\u7F91\u7F96\u7F97\u7F9C\u7FA1\u7FA2\u7FA6\u7FAA\u7FAD\u7FB4\u7FBC\u7FBF\u7FC0\u7FC3\u7FC8\u7FCE\u7FCF\u7FDB\u7FDF\u7FE3\u7FE5\u7FE8\u7FEC\u7FEE\u7FEF\u7FF2\u7FFA\u7FFD\u7FFE\u7FFF\u8007\u8008\u800A\u800D\u800E\u800F\u8011\u8013\u8014\u8016\u801D\u801E\u801F\u8020\u8024\u8026\u802C\u802E\u8030\u8034\u8035\u8037\u8039\u803A\u803C\u803E\u8040\u8044\u8060\u8064\u8066\u806D\u8071\u8075\u8081\u8088\u808E\u809C\u809E\u80A6\u80A7\u80AB\u80B8\u80B9\u80C8\u80CD\u80CF\u80D2\u80D4\u80D5\u80D7\u80D8\u80E0\u80ED\u80EE"],["8fd6a1","\u80F0\u80F2\u80F3\u80F6\u80F9\u80FA\u80FE\u8103\u810B\u8116\u8117\u8118\u811C\u811E\u8120\u8124\u8127\u812C\u8130\u8135\u813A\u813C\u8145\u8147\u814A\u814C\u8152\u8157\u8160\u8161\u8167\u8168\u8169\u816D\u816F\u8177\u8181\u8190\u8184\u8185\u8186\u818B\u818E\u8196\u8198\u819B\u819E\u81A2\u81AE\u81B2\u81B4\u81BB\u81CB\u81C3\u81C5\u81CA\u81CE\u81CF\u81D5\u81D7\u81DB\u81DD\u81DE\u81E1\u81E4\u81EB\u81EC\u81F0\u81F1\u81F2\u81F5\u81F6\u81F8\u81F9\u81FD\u81FF\u8200\u8203\u820F\u8213\u8214\u8219\u821A\u821D\u8221\u8222\u8228\u8232\u8234\u823A\u8243\u8244\u8245\u8246"],["8fd7a1","\u824B\u824E\u824F\u8251\u8256\u825C\u8260\u8263\u8267\u826D\u8274\u827B\u827D\u827F\u8280\u8281\u8283\u8284\u8287\u8289\u828A\u828E\u8291\u8294\u8296\u8298\u829A\u829B\u82A0\u82A1\u82A3\u82A4\u82A7\u82A8\u82A9\u82AA\u82AE\u82B0\u82B2\u82B4\u82B7\u82BA\u82BC\u82BE\u82BF\u82C6\u82D0\u82D5\u82DA\u82E0\u82E2\u82E4\u82E8\u82EA\u82ED\u82EF\u82F6\u82F7\u82FD\u82FE\u8300\u8301\u8307\u8308\u830A\u830B\u8354\u831B\u831D\u831E\u831F\u8321\u8322\u832C\u832D\u832E\u8330\u8333\u8337\u833A\u833C\u833D\u8342\u8343\u8344\u8347\u834D\u834E\u8351\u8355\u8356\u8357\u8370\u8378"],["8fd8a1","\u837D\u837F\u8380\u8382\u8384\u8386\u838D\u8392\u8394\u8395\u8398\u8399\u839B\u839C\u839D\u83A6\u83A7\u83A9\u83AC\u83BE\u83BF\u83C0\u83C7\u83C9\u83CF\u83D0\u83D1\u83D4\u83DD\u8353\u83E8\u83EA\u83F6\u83F8\u83F9\u83FC\u8401\u8406\u840A\u840F\u8411\u8415\u8419\u83AD\u842F\u8439\u8445\u8447\u8448\u844A\u844D\u844F\u8451\u8452\u8456\u8458\u8459\u845A\u845C\u8460\u8464\u8465\u8467\u846A\u8470\u8473\u8474\u8476\u8478\u847C\u847D\u8481\u8485\u8492\u8493\u8495\u849E\u84A6\u84A8\u84A9\u84AA\u84AF\u84B1\u84B4\u84BA\u84BD\u84BE\u84C0\u84C2\u84C7\u84C8\u84CC\u84CF\u84D3"],["8fd9a1","\u84DC\u84E7\u84EA\u84EF\u84F0\u84F1\u84F2\u84F7\u8532\u84FA\u84FB\u84FD\u8502\u8503\u8507\u850C\u850E\u8510\u851C\u851E\u8522\u8523\u8524\u8525\u8527\u852A\u852B\u852F\u8533\u8534\u8536\u853F\u8546\u854F",4,"\u8556\u8559\u855C",6,"\u8564\u856B\u856F\u8579\u857A\u857B\u857D\u857F\u8581\u8585\u8586\u8589\u858B\u858C\u858F\u8593\u8598\u859D\u859F\u85A0\u85A2\u85A5\u85A7\u85B4\u85B6\u85B7\u85B8\u85BC\u85BD\u85BE\u85BF\u85C2\u85C7\u85CA\u85CB\u85CE\u85AD\u85D8\u85DA\u85DF\u85E0\u85E6\u85E8\u85ED\u85F3\u85F6\u85FC"],["8fdaa1","\u85FF\u8600\u8604\u8605\u860D\u860E\u8610\u8611\u8612\u8618\u8619\u861B\u861E\u8621\u8627\u8629\u8636\u8638\u863A\u863C\u863D\u8640\u8642\u8646\u8652\u8653\u8656\u8657\u8658\u8659\u865D\u8660",4,"\u8669\u866C\u866F\u8675\u8676\u8677\u867A\u868D\u8691\u8696\u8698\u869A\u869C\u86A1\u86A6\u86A7\u86A8\u86AD\u86B1\u86B3\u86B4\u86B5\u86B7\u86B8\u86B9\u86BF\u86C0\u86C1\u86C3\u86C5\u86D1\u86D2\u86D5\u86D7\u86DA\u86DC\u86E0\u86E3\u86E5\u86E7\u8688\u86FA\u86FC\u86FD\u8704\u8705\u8707\u870B\u870E\u870F\u8710\u8713\u8714\u8719\u871E\u871F\u8721\u8723"],["8fdba1","\u8728\u872E\u872F\u8731\u8732\u8739\u873A\u873C\u873D\u873E\u8740\u8743\u8745\u874D\u8758\u875D\u8761\u8764\u8765\u876F\u8771\u8772\u877B\u8783",6,"\u878B\u878C\u8790\u8793\u8795\u8797\u8798\u8799\u879E\u87A0\u87A3\u87A7\u87AC\u87AD\u87AE\u87B1\u87B5\u87BE\u87BF\u87C1\u87C8\u87C9\u87CA\u87CE\u87D5\u87D6\u87D9\u87DA\u87DC\u87DF\u87E2\u87E3\u87E4\u87EA\u87EB\u87ED\u87F1\u87F3\u87F8\u87FA\u87FF\u8801\u8803\u8806\u8809\u880A\u880B\u8810\u8819\u8812\u8813\u8814\u8818\u881A\u881B\u881C\u881E\u881F\u8828\u882D\u882E\u8830\u8832\u8835"],["8fdca1","\u883A\u883C\u8841\u8843\u8845\u8848\u8849\u884A\u884B\u884E\u8851\u8855\u8856\u8858\u885A\u885C\u885F\u8860\u8864\u8869\u8871\u8879\u887B\u8880\u8898\u889A\u889B\u889C\u889F\u88A0\u88A8\u88AA\u88BA\u88BD\u88BE\u88C0\u88CA",4,"\u88D1\u88D2\u88D3\u88DB\u88DE\u88E7\u88EF\u88F0\u88F1\u88F5\u88F7\u8901\u8906\u890D\u890E\u890F\u8915\u8916\u8918\u8919\u891A\u891C\u8920\u8926\u8927\u8928\u8930\u8931\u8932\u8935\u8939\u893A\u893E\u8940\u8942\u8945\u8946\u8949\u894F\u8952\u8957\u895A\u895B\u895C\u8961\u8962\u8963\u896B\u896E\u8970\u8973\u8975\u897A"],["8fdda1","\u897B\u897C\u897D\u8989\u898D\u8990\u8994\u8995\u899B\u899C\u899F\u89A0\u89A5\u89B0\u89B4\u89B5\u89B6\u89B7\u89BC\u89D4",4,"\u89E5\u89E9\u89EB\u89ED\u89F1\u89F3\u89F6\u89F9\u89FD\u89FF\u8A04\u8A05\u8A07\u8A0F\u8A11\u8A12\u8A14\u8A15\u8A1E\u8A20\u8A22\u8A24\u8A26\u8A2B\u8A2C\u8A2F\u8A35\u8A37\u8A3D\u8A3E\u8A40\u8A43\u8A45\u8A47\u8A49\u8A4D\u8A4E\u8A53\u8A56\u8A57\u8A58\u8A5C\u8A5D\u8A61\u8A65\u8A67\u8A75\u8A76\u8A77\u8A79\u8A7A\u8A7B\u8A7E\u8A7F\u8A80\u8A83\u8A86\u8A8B\u8A8F\u8A90\u8A92\u8A96\u8A97\u8A99\u8A9F\u8AA7\u8AA9\u8AAE\u8AAF\u8AB3"],["8fdea1","\u8AB6\u8AB7\u8ABB\u8ABE\u8AC3\u8AC6\u8AC8\u8AC9\u8ACA\u8AD1\u8AD3\u8AD4\u8AD5\u8AD7\u8ADD\u8ADF\u8AEC\u8AF0\u8AF4\u8AF5\u8AF6\u8AFC\u8AFF\u8B05\u8B06\u8B0B\u8B11\u8B1C\u8B1E\u8B1F\u8B0A\u8B2D\u8B30\u8B37\u8B3C\u8B42",4,"\u8B48\u8B52\u8B53\u8B54\u8B59\u8B4D\u8B5E\u8B63\u8B6D\u8B76\u8B78\u8B79\u8B7C\u8B7E\u8B81\u8B84\u8B85\u8B8B\u8B8D\u8B8F\u8B94\u8B95\u8B9C\u8B9E\u8B9F\u8C38\u8C39\u8C3D\u8C3E\u8C45\u8C47\u8C49\u8C4B\u8C4F\u8C51\u8C53\u8C54\u8C57\u8C58\u8C5B\u8C5D\u8C59\u8C63\u8C64\u8C66\u8C68\u8C69\u8C6D\u8C73\u8C75\u8C76\u8C7B\u8C7E\u8C86"],["8fdfa1","\u8C87\u8C8B\u8C90\u8C92\u8C93\u8C99\u8C9B\u8C9C\u8CA4\u8CB9\u8CBA\u8CC5\u8CC6\u8CC9\u8CCB\u8CCF\u8CD6\u8CD5\u8CD9\u8CDD\u8CE1\u8CE8\u8CEC\u8CEF\u8CF0\u8CF2\u8CF5\u8CF7\u8CF8\u8CFE\u8CFF\u8D01\u8D03\u8D09\u8D12\u8D17\u8D1B\u8D65\u8D69\u8D6C\u8D6E\u8D7F\u8D82\u8D84\u8D88\u8D8D\u8D90\u8D91\u8D95\u8D9E\u8D9F\u8DA0\u8DA6\u8DAB\u8DAC\u8DAF\u8DB2\u8DB5\u8DB7\u8DB9\u8DBB\u8DC0\u8DC5\u8DC6\u8DC7\u8DC8\u8DCA\u8DCE\u8DD1\u8DD4\u8DD5\u8DD7\u8DD9\u8DE4\u8DE5\u8DE7\u8DEC\u8DF0\u8DBC\u8DF1\u8DF2\u8DF4\u8DFD\u8E01\u8E04\u8E05\u8E06\u8E0B\u8E11\u8E14\u8E16\u8E20\u8E21\u8E22"],["8fe0a1","\u8E23\u8E26\u8E27\u8E31\u8E33\u8E36\u8E37\u8E38\u8E39\u8E3D\u8E40\u8E41\u8E4B\u8E4D\u8E4E\u8E4F\u8E54\u8E5B\u8E5C\u8E5D\u8E5E\u8E61\u8E62\u8E69\u8E6C\u8E6D\u8E6F\u8E70\u8E71\u8E79\u8E7A\u8E7B\u8E82\u8E83\u8E89\u8E90\u8E92\u8E95\u8E9A\u8E9B\u8E9D\u8E9E\u8EA2\u8EA7\u8EA9\u8EAD\u8EAE\u8EB3\u8EB5\u8EBA\u8EBB\u8EC0\u8EC1\u8EC3\u8EC4\u8EC7\u8ECF\u8ED1\u8ED4\u8EDC\u8EE8\u8EEE\u8EF0\u8EF1\u8EF7\u8EF9\u8EFA\u8EED\u8F00\u8F02\u8F07\u8F08\u8F0F\u8F10\u8F16\u8F17\u8F18\u8F1E\u8F20\u8F21\u8F23\u8F25\u8F27\u8F28\u8F2C\u8F2D\u8F2E\u8F34\u8F35\u8F36\u8F37\u8F3A\u8F40\u8F41"],["8fe1a1","\u8F43\u8F47\u8F4F\u8F51",4,"\u8F58\u8F5D\u8F5E\u8F65\u8F9D\u8FA0\u8FA1\u8FA4\u8FA5\u8FA6\u8FB5\u8FB6\u8FB8\u8FBE\u8FC0\u8FC1\u8FC6\u8FCA\u8FCB\u8FCD\u8FD0\u8FD2\u8FD3\u8FD5\u8FE0\u8FE3\u8FE4\u8FE8\u8FEE\u8FF1\u8FF5\u8FF6\u8FFB\u8FFE\u9002\u9004\u9008\u900C\u9018\u901B\u9028\u9029\u902F\u902A\u902C\u902D\u9033\u9034\u9037\u903F\u9043\u9044\u904C\u905B\u905D\u9062\u9066\u9067\u906C\u9070\u9074\u9079\u9085\u9088\u908B\u908C\u908E\u9090\u9095\u9097\u9098\u9099\u909B\u90A0\u90A1\u90A2\u90A5\u90B0\u90B2\u90B3\u90B4\u90B6\u90BD\u90CC\u90BE\u90C3"],["8fe2a1","\u90C4\u90C5\u90C7\u90C8\u90D5\u90D7\u90D8\u90D9\u90DC\u90DD\u90DF\u90E5\u90D2\u90F6\u90EB\u90EF\u90F0\u90F4\u90FE\u90FF\u9100\u9104\u9105\u9106\u9108\u910D\u9110\u9114\u9116\u9117\u9118\u911A\u911C\u911E\u9120\u9125\u9122\u9123\u9127\u9129\u912E\u912F\u9131\u9134\u9136\u9137\u9139\u913A\u913C\u913D\u9143\u9147\u9148\u914F\u9153\u9157\u9159\u915A\u915B\u9161\u9164\u9167\u916D\u9174\u9179\u917A\u917B\u9181\u9183\u9185\u9186\u918A\u918E\u9191\u9193\u9194\u9195\u9198\u919E\u91A1\u91A6\u91A8\u91AC\u91AD\u91AE\u91B0\u91B1\u91B2\u91B3\u91B6\u91BB\u91BC\u91BD\u91BF"],["8fe3a1","\u91C2\u91C3\u91C5\u91D3\u91D4\u91D7\u91D9\u91DA\u91DE\u91E4\u91E5\u91E9\u91EA\u91EC",5,"\u91F7\u91F9\u91FB\u91FD\u9200\u9201\u9204\u9205\u9206\u9207\u9209\u920A\u920C\u9210\u9212\u9213\u9216\u9218\u921C\u921D\u9223\u9224\u9225\u9226\u9228\u922E\u922F\u9230\u9233\u9235\u9236\u9238\u9239\u923A\u923C\u923E\u9240\u9242\u9243\u9246\u9247\u924A\u924D\u924E\u924F\u9251\u9258\u9259\u925C\u925D\u9260\u9261\u9265\u9267\u9268\u9269\u926E\u926F\u9270\u9275",4,"\u927B\u927C\u927D\u927F\u9288\u9289\u928A\u928D\u928E\u9292\u9297"],["8fe4a1","\u9299\u929F\u92A0\u92A4\u92A5\u92A7\u92A8\u92AB\u92AF\u92B2\u92B6\u92B8\u92BA\u92BB\u92BC\u92BD\u92BF",4,"\u92C5\u92C6\u92C7\u92C8\u92CB\u92CC\u92CD\u92CE\u92D0\u92D3\u92D5\u92D7\u92D8\u92D9\u92DC\u92DD\u92DF\u92E0\u92E1\u92E3\u92E5\u92E7\u92E8\u92EC\u92EE\u92F0\u92F9\u92FB\u92FF\u9300\u9302\u9308\u930D\u9311\u9314\u9315\u931C\u931D\u931E\u931F\u9321\u9324\u9325\u9327\u9329\u932A\u9333\u9334\u9336\u9337\u9347\u9348\u9349\u9350\u9351\u9352\u9355\u9357\u9358\u935A\u935E\u9364\u9365\u9367\u9369\u936A\u936D\u936F\u9370\u9371\u9373\u9374\u9376"],["8fe5a1","\u937A\u937D\u937F\u9380\u9381\u9382\u9388\u938A\u938B\u938D\u938F\u9392\u9395\u9398\u939B\u939E\u93A1\u93A3\u93A4\u93A6\u93A8\u93AB\u93B4\u93B5\u93B6\u93BA\u93A9\u93C1\u93C4\u93C5\u93C6\u93C7\u93C9",4,"\u93D3\u93D9\u93DC\u93DE\u93DF\u93E2\u93E6\u93E7\u93F9\u93F7\u93F8\u93FA\u93FB\u93FD\u9401\u9402\u9404\u9408\u9409\u940D\u940E\u940F\u9415\u9416\u9417\u941F\u942E\u942F\u9431\u9432\u9433\u9434\u943B\u943F\u943D\u9443\u9445\u9448\u944A\u944C\u9455\u9459\u945C\u945F\u9461\u9463\u9468\u946B\u946D\u946E\u946F\u9471\u9472\u9484\u9483\u9578\u9579"],["8fe6a1","\u957E\u9584\u9588\u958C\u958D\u958E\u959D\u959E\u959F\u95A1\u95A6\u95A9\u95AB\u95AC\u95B4\u95B6\u95BA\u95BD\u95BF\u95C6\u95C8\u95C9\u95CB\u95D0\u95D1\u95D2\u95D3\u95D9\u95DA\u95DD\u95DE\u95DF\u95E0\u95E4\u95E6\u961D\u961E\u9622\u9624\u9625\u9626\u962C\u9631\u9633\u9637\u9638\u9639\u963A\u963C\u963D\u9641\u9652\u9654\u9656\u9657\u9658\u9661\u966E\u9674\u967B\u967C\u967E\u967F\u9681\u9682\u9683\u9684\u9689\u9691\u9696\u969A\u969D\u969F\u96A4\u96A5\u96A6\u96A9\u96AE\u96AF\u96B3\u96BA\u96CA\u96D2\u5DB2\u96D8\u96DA\u96DD\u96DE\u96DF\u96E9\u96EF\u96F1\u96FA\u9702"],["8fe7a1","\u9703\u9705\u9709\u971A\u971B\u971D\u9721\u9722\u9723\u9728\u9731\u9733\u9741\u9743\u974A\u974E\u974F\u9755\u9757\u9758\u975A\u975B\u9763\u9767\u976A\u976E\u9773\u9776\u9777\u9778\u977B\u977D\u977F\u9780\u9789\u9795\u9796\u9797\u9799\u979A\u979E\u979F\u97A2\u97AC\u97AE\u97B1\u97B2\u97B5\u97B6\u97B8\u97B9\u97BA\u97BC\u97BE\u97BF\u97C1\u97C4\u97C5\u97C7\u97C9\u97CA\u97CC\u97CD\u97CE\u97D0\u97D1\u97D4\u97D7\u97D8\u97D9\u97DD\u97DE\u97E0\u97DB\u97E1\u97E4\u97EF\u97F1\u97F4\u97F7\u97F8\u97FA\u9807\u980A\u9819\u980D\u980E\u9814\u9816\u981C\u981E\u9820\u9823\u9826"],["8fe8a1","\u982B\u982E\u982F\u9830\u9832\u9833\u9835\u9825\u983E\u9844\u9847\u984A\u9851\u9852\u9853\u9856\u9857\u9859\u985A\u9862\u9863\u9865\u9866\u986A\u986C\u98AB\u98AD\u98AE\u98B0\u98B4\u98B7\u98B8\u98BA\u98BB\u98BF\u98C2\u98C5\u98C8\u98CC\u98E1\u98E3\u98E5\u98E6\u98E7\u98EA\u98F3\u98F6\u9902\u9907\u9908\u9911\u9915\u9916\u9917\u991A\u991B\u991C\u991F\u9922\u9926\u9927\u992B\u9931",4,"\u9939\u993A\u993B\u993C\u9940\u9941\u9946\u9947\u9948\u994D\u994E\u9954\u9958\u9959\u995B\u995C\u995E\u995F\u9960\u999B\u999D\u999F\u99A6\u99B0\u99B1\u99B2\u99B5"],["8fe9a1","\u99B9\u99BA\u99BD\u99BF\u99C3\u99C9\u99D3\u99D4\u99D9\u99DA\u99DC\u99DE\u99E7\u99EA\u99EB\u99EC\u99F0\u99F4\u99F5\u99F9\u99FD\u99FE\u9A02\u9A03\u9A04\u9A0B\u9A0C\u9A10\u9A11\u9A16\u9A1E\u9A20\u9A22\u9A23\u9A24\u9A27\u9A2D\u9A2E\u9A33\u9A35\u9A36\u9A38\u9A47\u9A41\u9A44\u9A4A\u9A4B\u9A4C\u9A4E\u9A51\u9A54\u9A56\u9A5D\u9AAA\u9AAC\u9AAE\u9AAF\u9AB2\u9AB4\u9AB5\u9AB6\u9AB9\u9ABB\u9ABE\u9ABF\u9AC1\u9AC3\u9AC6\u9AC8\u9ACE\u9AD0\u9AD2\u9AD5\u9AD6\u9AD7\u9ADB\u9ADC\u9AE0\u9AE4\u9AE5\u9AE7\u9AE9\u9AEC\u9AF2\u9AF3\u9AF5\u9AF9\u9AFA\u9AFD\u9AFF",4],["8feaa1","\u9B04\u9B05\u9B08\u9B09\u9B0B\u9B0C\u9B0D\u9B0E\u9B10\u9B12\u9B16\u9B19\u9B1B\u9B1C\u9B20\u9B26\u9B2B\u9B2D\u9B33\u9B34\u9B35\u9B37\u9B39\u9B3A\u9B3D\u9B48\u9B4B\u9B4C\u9B55\u9B56\u9B57\u9B5B\u9B5E\u9B61\u9B63\u9B65\u9B66\u9B68\u9B6A",4,"\u9B73\u9B75\u9B77\u9B78\u9B79\u9B7F\u9B80\u9B84\u9B85\u9B86\u9B87\u9B89\u9B8A\u9B8B\u9B8D\u9B8F\u9B90\u9B94\u9B9A\u9B9D\u9B9E\u9BA6\u9BA7\u9BA9\u9BAC\u9BB0\u9BB1\u9BB2\u9BB7\u9BB8\u9BBB\u9BBC\u9BBE\u9BBF\u9BC1\u9BC7\u9BC8\u9BCE\u9BD0\u9BD7\u9BD8\u9BDD\u9BDF\u9BE5\u9BE7\u9BEA\u9BEB\u9BEF\u9BF3\u9BF7\u9BF8"],["8feba1","\u9BF9\u9BFA\u9BFD\u9BFF\u9C00\u9C02\u9C0B\u9C0F\u9C11\u9C16\u9C18\u9C19\u9C1A\u9C1C\u9C1E\u9C22\u9C23\u9C26",4,"\u9C31\u9C35\u9C36\u9C37\u9C3D\u9C41\u9C43\u9C44\u9C45\u9C49\u9C4A\u9C4E\u9C4F\u9C50\u9C53\u9C54\u9C56\u9C58\u9C5B\u9C5D\u9C5E\u9C5F\u9C63\u9C69\u9C6A\u9C5C\u9C6B\u9C68\u9C6E\u9C70\u9C72\u9C75\u9C77\u9C7B\u9CE6\u9CF2\u9CF7\u9CF9\u9D0B\u9D02\u9D11\u9D17\u9D18\u9D1C\u9D1D\u9D1E\u9D2F\u9D30\u9D32\u9D33\u9D34\u9D3A\u9D3C\u9D45\u9D3D\u9D42\u9D43\u9D47\u9D4A\u9D53\u9D54\u9D5F\u9D63\u9D62\u9D65\u9D69\u9D6A\u9D6B\u9D70\u9D76\u9D77\u9D7B"],["8feca1","\u9D7C\u9D7E\u9D83\u9D84\u9D86\u9D8A\u9D8D\u9D8E\u9D92\u9D93\u9D95\u9D96\u9D97\u9D98\u9DA1\u9DAA\u9DAC\u9DAE\u9DB1\u9DB5\u9DB9\u9DBC\u9DBF\u9DC3\u9DC7\u9DC9\u9DCA\u9DD4\u9DD5\u9DD6\u9DD7\u9DDA\u9DDE\u9DDF\u9DE0\u9DE5\u9DE7\u9DE9\u9DEB\u9DEE\u9DF0\u9DF3\u9DF4\u9DFE\u9E0A\u9E02\u9E07\u9E0E\u9E10\u9E11\u9E12\u9E15\u9E16\u9E19\u9E1C\u9E1D\u9E7A\u9E7B\u9E7C\u9E80\u9E82\u9E83\u9E84\u9E85\u9E87\u9E8E\u9E8F\u9E96\u9E98\u9E9B\u9E9E\u9EA4\u9EA8\u9EAC\u9EAE\u9EAF\u9EB0\u9EB3\u9EB4\u9EB5\u9EC6\u9EC8\u9ECB\u9ED5\u9EDF\u9EE4\u9EE7\u9EEC\u9EED\u9EEE\u9EF0\u9EF1\u9EF2\u9EF5"],["8feda1","\u9EF8\u9EFF\u9F02\u9F03\u9F09\u9F0F\u9F10\u9F11\u9F12\u9F14\u9F16\u9F17\u9F19\u9F1A\u9F1B\u9F1F\u9F22\u9F26\u9F2A\u9F2B\u9F2F\u9F31\u9F32\u9F34\u9F37\u9F39\u9F3A\u9F3C\u9F3D\u9F3F\u9F41\u9F43",4,"\u9F53\u9F55\u9F56\u9F57\u9F58\u9F5A\u9F5D\u9F5E\u9F68\u9F69\u9F6D",4,"\u9F73\u9F75\u9F7A\u9F7D\u9F8F\u9F90\u9F91\u9F92\u9F94\u9F96\u9F97\u9F9E\u9FA1\u9FA2\u9FA3\u9FA5"]]});var z8=v((U3e,ZG)=>{ZG.exports=[["0","\0",127,"\u20AC"],["8140","\u4E02\u4E04\u4E05\u4E06\u4E0F\u4E12\u4E17\u4E1F\u4E20\u4E21\u4E23\u4E26\u4E29\u4E2E\u4E2F\u4E31\u4E33\u4E35\u4E37\u4E3C\u4E40\u4E41\u4E42\u4E44\u4E46\u4E4A\u4E51\u4E55\u4E57\u4E5A\u4E5B\u4E62\u4E63\u4E64\u4E65\u4E67\u4E68\u4E6A",5,"\u4E72\u4E74",9,"\u4E7F",6,"\u4E87\u4E8A"],["8180","\u4E90\u4E96\u4E97\u4E99\u4E9C\u4E9D\u4E9E\u4EA3\u4EAA\u4EAF\u4EB0\u4EB1\u4EB4\u4EB6\u4EB7\u4EB8\u4EB9\u4EBC\u4EBD\u4EBE\u4EC8\u4ECC\u4ECF\u4ED0\u4ED2\u4EDA\u4EDB\u4EDC\u4EE0\u4EE2\u4EE6\u4EE7\u4EE9\u4EED\u4EEE\u4EEF\u4EF1\u4EF4\u4EF8\u4EF9\u4EFA\u4EFC\u4EFE\u4F00\u4F02",6,"\u4F0B\u4F0C\u4F12",4,"\u4F1C\u4F1D\u4F21\u4F23\u4F28\u4F29\u4F2C\u4F2D\u4F2E\u4F31\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E",4,"\u4F44\u4F45\u4F47",5,"\u4F52\u4F54\u4F56\u4F61\u4F62\u4F66\u4F68\u4F6A\u4F6B\u4F6D\u4F6E\u4F71\u4F72\u4F75\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F80\u4F81\u4F82\u4F85\u4F86\u4F87\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F95\u4F96\u4F98\u4F99\u4F9A\u4F9C\u4F9E\u4F9F\u4FA1\u4FA2"],["8240","\u4FA4\u4FAB\u4FAD\u4FB0",4,"\u4FB6",8,"\u4FC0\u4FC1\u4FC2\u4FC6\u4FC7\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FD2",4,"\u4FD9\u4FDB\u4FE0\u4FE2\u4FE4\u4FE5\u4FE7\u4FEB\u4FEC\u4FF0\u4FF2\u4FF4\u4FF5\u4FF6\u4FF7\u4FF9\u4FFB\u4FFC\u4FFD\u4FFF",11],["8280","\u500B\u500E\u5010\u5011\u5013\u5015\u5016\u5017\u501B\u501D\u501E\u5020\u5022\u5023\u5024\u5027\u502B\u502F",10,"\u503B\u503D\u503F\u5040\u5041\u5042\u5044\u5045\u5046\u5049\u504A\u504B\u504D\u5050",4,"\u5056\u5057\u5058\u5059\u505B\u505D",7,"\u5066",5,"\u506D",8,"\u5078\u5079\u507A\u507C\u507D\u5081\u5082\u5083\u5084\u5086\u5087\u5089\u508A\u508B\u508C\u508E",20,"\u50A4\u50A6\u50AA\u50AB\u50AD",4,"\u50B3",6,"\u50BC"],["8340","\u50BD",17,"\u50D0",5,"\u50D7\u50D8\u50D9\u50DB",10,"\u50E8\u50E9\u50EA\u50EB\u50EF\u50F0\u50F1\u50F2\u50F4\u50F6",4,"\u50FC",9,"\u5108"],["8380","\u5109\u510A\u510C",5,"\u5113",13,"\u5122",28,"\u5142\u5147\u514A\u514C\u514E\u514F\u5150\u5152\u5153\u5157\u5158\u5159\u515B\u515D",4,"\u5163\u5164\u5166\u5167\u5169\u516A\u516F\u5172\u517A\u517E\u517F\u5183\u5184\u5186\u5187\u518A\u518B\u518E\u518F\u5190\u5191\u5193\u5194\u5198\u519A\u519D\u519E\u519F\u51A1\u51A3\u51A6",4,"\u51AD\u51AE\u51B4\u51B8\u51B9\u51BA\u51BE\u51BF\u51C1\u51C2\u51C3\u51C5\u51C8\u51CA\u51CD\u51CE\u51D0\u51D2",5],["8440","\u51D8\u51D9\u51DA\u51DC\u51DE\u51DF\u51E2\u51E3\u51E5",5,"\u51EC\u51EE\u51F1\u51F2\u51F4\u51F7\u51FE\u5204\u5205\u5209\u520B\u520C\u520F\u5210\u5213\u5214\u5215\u521C\u521E\u521F\u5221\u5222\u5223\u5225\u5226\u5227\u522A\u522C\u522F\u5231\u5232\u5234\u5235\u523C\u523E\u5244",5,"\u524B\u524E\u524F\u5252\u5253\u5255\u5257\u5258"],["8480","\u5259\u525A\u525B\u525D\u525F\u5260\u5262\u5263\u5264\u5266\u5268\u526B\u526C\u526D\u526E\u5270\u5271\u5273",9,"\u527E\u5280\u5283",4,"\u5289",6,"\u5291\u5292\u5294",6,"\u529C\u52A4\u52A5\u52A6\u52A7\u52AE\u52AF\u52B0\u52B4",9,"\u52C0\u52C1\u52C2\u52C4\u52C5\u52C6\u52C8\u52CA\u52CC\u52CD\u52CE\u52CF\u52D1\u52D3\u52D4\u52D5\u52D7\u52D9",5,"\u52E0\u52E1\u52E2\u52E3\u52E5",10,"\u52F1",7,"\u52FB\u52FC\u52FD\u5301\u5302\u5303\u5304\u5307\u5309\u530A\u530B\u530C\u530E"],["8540","\u5311\u5312\u5313\u5314\u5318\u531B\u531C\u531E\u531F\u5322\u5324\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u532F",9,"\u533C\u533D\u5340\u5342\u5344\u5346\u534B\u534C\u534D\u5350\u5354\u5358\u5359\u535B\u535D\u5365\u5368\u536A\u536C\u536D\u5372\u5376\u5379\u537B\u537C\u537D\u537E\u5380\u5381\u5383\u5387\u5388\u538A\u538E\u538F"],["8580","\u5390",4,"\u5396\u5397\u5399\u539B\u539C\u539E\u53A0\u53A1\u53A4\u53A7\u53AA\u53AB\u53AC\u53AD\u53AF",6,"\u53B7\u53B8\u53B9\u53BA\u53BC\u53BD\u53BE\u53C0\u53C3",4,"\u53CE\u53CF\u53D0\u53D2\u53D3\u53D5\u53DA\u53DC\u53DD\u53DE\u53E1\u53E2\u53E7\u53F4\u53FA\u53FE\u53FF\u5400\u5402\u5405\u5407\u540B\u5414\u5418\u5419\u541A\u541C\u5422\u5424\u5425\u542A\u5430\u5433\u5436\u5437\u543A\u543D\u543F\u5441\u5442\u5444\u5445\u5447\u5449\u544C\u544D\u544E\u544F\u5451\u545A\u545D",4,"\u5463\u5465\u5467\u5469",7,"\u5474\u5479\u547A\u547E\u547F\u5481\u5483\u5485\u5487\u5488\u5489\u548A\u548D\u5491\u5493\u5497\u5498\u549C\u549E\u549F\u54A0\u54A1"],["8640","\u54A2\u54A5\u54AE\u54B0\u54B2\u54B5\u54B6\u54B7\u54B9\u54BA\u54BC\u54BE\u54C3\u54C5\u54CA\u54CB\u54D6\u54D8\u54DB\u54E0",4,"\u54EB\u54EC\u54EF\u54F0\u54F1\u54F4",5,"\u54FB\u54FE\u5500\u5502\u5503\u5504\u5505\u5508\u550A",4,"\u5512\u5513\u5515",5,"\u551C\u551D\u551E\u551F\u5521\u5525\u5526"],["8680","\u5528\u5529\u552B\u552D\u5532\u5534\u5535\u5536\u5538\u5539\u553A\u553B\u553D\u5540\u5542\u5545\u5547\u5548\u554B",4,"\u5551\u5552\u5553\u5554\u5557",4,"\u555D\u555E\u555F\u5560\u5562\u5563\u5568\u5569\u556B\u556F",5,"\u5579\u557A\u557D\u557F\u5585\u5586\u558C\u558D\u558E\u5590\u5592\u5593\u5595\u5596\u5597\u559A\u559B\u559E\u55A0",6,"\u55A8",8,"\u55B2\u55B4\u55B6\u55B8\u55BA\u55BC\u55BF",4,"\u55C6\u55C7\u55C8\u55CA\u55CB\u55CE\u55CF\u55D0\u55D5\u55D7",4,"\u55DE\u55E0\u55E2\u55E7\u55E9\u55ED\u55EE\u55F0\u55F1\u55F4\u55F6\u55F8",4,"\u55FF\u5602\u5603\u5604\u5605"],["8740","\u5606\u5607\u560A\u560B\u560D\u5610",7,"\u5619\u561A\u561C\u561D\u5620\u5621\u5622\u5625\u5626\u5628\u5629\u562A\u562B\u562E\u562F\u5630\u5633\u5635\u5637\u5638\u563A\u563C\u563D\u563E\u5640",11,"\u564F",4,"\u5655\u5656\u565A\u565B\u565D",4],["8780","\u5663\u5665\u5666\u5667\u566D\u566E\u566F\u5670\u5672\u5673\u5674\u5675\u5677\u5678\u5679\u567A\u567D",7,"\u5687",6,"\u5690\u5691\u5692\u5694",14,"\u56A4",10,"\u56B0",6,"\u56B8\u56B9\u56BA\u56BB\u56BD",12,"\u56CB",8,"\u56D5\u56D6\u56D8\u56D9\u56DC\u56E3\u56E5",5,"\u56EC\u56EE\u56EF\u56F2\u56F3\u56F6\u56F7\u56F8\u56FB\u56FC\u5700\u5701\u5702\u5705\u5707\u570B",6],["8840","\u5712",9,"\u571D\u571E\u5720\u5721\u5722\u5724\u5725\u5726\u5727\u572B\u5731\u5732\u5734",4,"\u573C\u573D\u573F\u5741\u5743\u5744\u5745\u5746\u5748\u5749\u574B\u5752",4,"\u5758\u5759\u5762\u5763\u5765\u5767\u576C\u576E\u5770\u5771\u5772\u5774\u5775\u5778\u5779\u577A\u577D\u577E\u577F\u5780"],["8880","\u5781\u5787\u5788\u5789\u578A\u578D",4,"\u5794",6,"\u579C\u579D\u579E\u579F\u57A5\u57A8\u57AA\u57AC\u57AF\u57B0\u57B1\u57B3\u57B5\u57B6\u57B7\u57B9",8,"\u57C4",6,"\u57CC\u57CD\u57D0\u57D1\u57D3\u57D6\u57D7\u57DB\u57DC\u57DE\u57E1\u57E2\u57E3\u57E5",7,"\u57EE\u57F0\u57F1\u57F2\u57F3\u57F5\u57F6\u57F7\u57FB\u57FC\u57FE\u57FF\u5801\u5803\u5804\u5805\u5808\u5809\u580A\u580C\u580E\u580F\u5810\u5812\u5813\u5814\u5816\u5817\u5818\u581A\u581B\u581C\u581D\u581F\u5822\u5823\u5825",4,"\u582B",4,"\u5831\u5832\u5833\u5834\u5836",7],["8940","\u583E",5,"\u5845",6,"\u584E\u584F\u5850\u5852\u5853\u5855\u5856\u5857\u5859",4,"\u585F",5,"\u5866",4,"\u586D",16,"\u587F\u5882\u5884\u5886\u5887\u5888\u588A\u588B\u588C"],["8980","\u588D",4,"\u5894",4,"\u589B\u589C\u589D\u58A0",7,"\u58AA",17,"\u58BD\u58BE\u58BF\u58C0\u58C2\u58C3\u58C4\u58C6",10,"\u58D2\u58D3\u58D4\u58D6",13,"\u58E5",5,"\u58ED\u58EF\u58F1\u58F2\u58F4\u58F5\u58F7\u58F8\u58FA",7,"\u5903\u5905\u5906\u5908",4,"\u590E\u5910\u5911\u5912\u5913\u5917\u5918\u591B\u591D\u591E\u5920\u5921\u5922\u5923\u5926\u5928\u592C\u5930\u5932\u5933\u5935\u5936\u593B"],["8a40","\u593D\u593E\u593F\u5940\u5943\u5945\u5946\u594A\u594C\u594D\u5950\u5952\u5953\u5959\u595B",4,"\u5961\u5963\u5964\u5966",12,"\u5975\u5977\u597A\u597B\u597C\u597E\u597F\u5980\u5985\u5989\u598B\u598C\u598E\u598F\u5990\u5991\u5994\u5995\u5998\u599A\u599B\u599C\u599D\u599F\u59A0\u59A1\u59A2\u59A6"],["8a80","\u59A7\u59AC\u59AD\u59B0\u59B1\u59B3",5,"\u59BA\u59BC\u59BD\u59BF",6,"\u59C7\u59C8\u59C9\u59CC\u59CD\u59CE\u59CF\u59D5\u59D6\u59D9\u59DB\u59DE",4,"\u59E4\u59E6\u59E7\u59E9\u59EA\u59EB\u59ED",11,"\u59FA\u59FC\u59FD\u59FE\u5A00\u5A02\u5A0A\u5A0B\u5A0D\u5A0E\u5A0F\u5A10\u5A12\u5A14\u5A15\u5A16\u5A17\u5A19\u5A1A\u5A1B\u5A1D\u5A1E\u5A21\u5A22\u5A24\u5A26\u5A27\u5A28\u5A2A",6,"\u5A33\u5A35\u5A37",4,"\u5A3D\u5A3E\u5A3F\u5A41",4,"\u5A47\u5A48\u5A4B",9,"\u5A56\u5A57\u5A58\u5A59\u5A5B",5],["8b40","\u5A61\u5A63\u5A64\u5A65\u5A66\u5A68\u5A69\u5A6B",8,"\u5A78\u5A79\u5A7B\u5A7C\u5A7D\u5A7E\u5A80",17,"\u5A93",6,"\u5A9C",13,"\u5AAB\u5AAC"],["8b80","\u5AAD",4,"\u5AB4\u5AB6\u5AB7\u5AB9",4,"\u5ABF\u5AC0\u5AC3",5,"\u5ACA\u5ACB\u5ACD",4,"\u5AD3\u5AD5\u5AD7\u5AD9\u5ADA\u5ADB\u5ADD\u5ADE\u5ADF\u5AE2\u5AE4\u5AE5\u5AE7\u5AE8\u5AEA\u5AEC",4,"\u5AF2",22,"\u5B0A",11,"\u5B18",25,"\u5B33\u5B35\u5B36\u5B38",7,"\u5B41",6],["8c40","\u5B48",7,"\u5B52\u5B56\u5B5E\u5B60\u5B61\u5B67\u5B68\u5B6B\u5B6D\u5B6E\u5B6F\u5B72\u5B74\u5B76\u5B77\u5B78\u5B79\u5B7B\u5B7C\u5B7E\u5B7F\u5B82\u5B86\u5B8A\u5B8D\u5B8E\u5B90\u5B91\u5B92\u5B94\u5B96\u5B9F\u5BA7\u5BA8\u5BA9\u5BAC\u5BAD\u5BAE\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBB\u5BBC\u5BC0\u5BC1\u5BC3\u5BC8\u5BC9\u5BCA\u5BCB\u5BCD\u5BCE\u5BCF"],["8c80","\u5BD1\u5BD4",8,"\u5BE0\u5BE2\u5BE3\u5BE6\u5BE7\u5BE9",4,"\u5BEF\u5BF1",6,"\u5BFD\u5BFE\u5C00\u5C02\u5C03\u5C05\u5C07\u5C08\u5C0B\u5C0C\u5C0D\u5C0E\u5C10\u5C12\u5C13\u5C17\u5C19\u5C1B\u5C1E\u5C1F\u5C20\u5C21\u5C23\u5C26\u5C28\u5C29\u5C2A\u5C2B\u5C2D\u5C2E\u5C2F\u5C30\u5C32\u5C33\u5C35\u5C36\u5C37\u5C43\u5C44\u5C46\u5C47\u5C4C\u5C4D\u5C52\u5C53\u5C54\u5C56\u5C57\u5C58\u5C5A\u5C5B\u5C5C\u5C5D\u5C5F\u5C62\u5C64\u5C67",6,"\u5C70\u5C72",6,"\u5C7B\u5C7C\u5C7D\u5C7E\u5C80\u5C83",4,"\u5C89\u5C8A\u5C8B\u5C8E\u5C8F\u5C92\u5C93\u5C95\u5C9D",4,"\u5CA4",4],["8d40","\u5CAA\u5CAE\u5CAF\u5CB0\u5CB2\u5CB4\u5CB6\u5CB9\u5CBA\u5CBB\u5CBC\u5CBE\u5CC0\u5CC2\u5CC3\u5CC5",5,"\u5CCC",5,"\u5CD3",5,"\u5CDA",6,"\u5CE2\u5CE3\u5CE7\u5CE9\u5CEB\u5CEC\u5CEE\u5CEF\u5CF1",9,"\u5CFC",4],["8d80","\u5D01\u5D04\u5D05\u5D08",5,"\u5D0F",4,"\u5D15\u5D17\u5D18\u5D19\u5D1A\u5D1C\u5D1D\u5D1F",4,"\u5D25\u5D28\u5D2A\u5D2B\u5D2C\u5D2F",4,"\u5D35",7,"\u5D3F",7,"\u5D48\u5D49\u5D4D",10,"\u5D59\u5D5A\u5D5C\u5D5E",10,"\u5D6A\u5D6D\u5D6E\u5D70\u5D71\u5D72\u5D73\u5D75",12,"\u5D83",21,"\u5D9A\u5D9B\u5D9C\u5D9E\u5D9F\u5DA0"],["8e40","\u5DA1",21,"\u5DB8",12,"\u5DC6",6,"\u5DCE",12,"\u5DDC\u5DDF\u5DE0\u5DE3\u5DE4\u5DEA\u5DEC\u5DED"],["8e80","\u5DF0\u5DF5\u5DF6\u5DF8",4,"\u5DFF\u5E00\u5E04\u5E07\u5E09\u5E0A\u5E0B\u5E0D\u5E0E\u5E12\u5E13\u5E17\u5E1E",7,"\u5E28",4,"\u5E2F\u5E30\u5E32",4,"\u5E39\u5E3A\u5E3E\u5E3F\u5E40\u5E41\u5E43\u5E46",5,"\u5E4D",6,"\u5E56",4,"\u5E5C\u5E5D\u5E5F\u5E60\u5E63",14,"\u5E75\u5E77\u5E79\u5E7E\u5E81\u5E82\u5E83\u5E85\u5E88\u5E89\u5E8C\u5E8D\u5E8E\u5E92\u5E98\u5E9B\u5E9D\u5EA1\u5EA2\u5EA3\u5EA4\u5EA8",4,"\u5EAE",4,"\u5EB4\u5EBA\u5EBB\u5EBC\u5EBD\u5EBF",6],["8f40","\u5EC6\u5EC7\u5EC8\u5ECB",5,"\u5ED4\u5ED5\u5ED7\u5ED8\u5ED9\u5EDA\u5EDC",11,"\u5EE9\u5EEB",8,"\u5EF5\u5EF8\u5EF9\u5EFB\u5EFC\u5EFD\u5F05\u5F06\u5F07\u5F09\u5F0C\u5F0D\u5F0E\u5F10\u5F12\u5F14\u5F16\u5F19\u5F1A\u5F1C\u5F1D\u5F1E\u5F21\u5F22\u5F23\u5F24"],["8f80","\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F32",6,"\u5F3B\u5F3D\u5F3E\u5F3F\u5F41",14,"\u5F51\u5F54\u5F59\u5F5A\u5F5B\u5F5C\u5F5E\u5F5F\u5F60\u5F63\u5F65\u5F67\u5F68\u5F6B\u5F6E\u5F6F\u5F72\u5F74\u5F75\u5F76\u5F78\u5F7A\u5F7D\u5F7E\u5F7F\u5F83\u5F86\u5F8D\u5F8E\u5F8F\u5F91\u5F93\u5F94\u5F96\u5F9A\u5F9B\u5F9D\u5F9E\u5F9F\u5FA0\u5FA2",5,"\u5FA9\u5FAB\u5FAC\u5FAF",5,"\u5FB6\u5FB8\u5FB9\u5FBA\u5FBB\u5FBE",4,"\u5FC7\u5FC8\u5FCA\u5FCB\u5FCE\u5FD3\u5FD4\u5FD5\u5FDA\u5FDB\u5FDC\u5FDE\u5FDF\u5FE2\u5FE3\u5FE5\u5FE6\u5FE8\u5FE9\u5FEC\u5FEF\u5FF0\u5FF2\u5FF3\u5FF4\u5FF6\u5FF7\u5FF9\u5FFA\u5FFC\u6007"],["9040","\u6008\u6009\u600B\u600C\u6010\u6011\u6013\u6017\u6018\u601A\u601E\u601F\u6022\u6023\u6024\u602C\u602D\u602E\u6030",4,"\u6036",4,"\u603D\u603E\u6040\u6044",6,"\u604C\u604E\u604F\u6051\u6053\u6054\u6056\u6057\u6058\u605B\u605C\u605E\u605F\u6060\u6061\u6065\u6066\u606E\u6071\u6072\u6074\u6075\u6077\u607E\u6080"],["9080","\u6081\u6082\u6085\u6086\u6087\u6088\u608A\u608B\u608E\u608F\u6090\u6091\u6093\u6095\u6097\u6098\u6099\u609C\u609E\u60A1\u60A2\u60A4\u60A5\u60A7\u60A9\u60AA\u60AE\u60B0\u60B3\u60B5\u60B6\u60B7\u60B9\u60BA\u60BD",7,"\u60C7\u60C8\u60C9\u60CC",4,"\u60D2\u60D3\u60D4\u60D6\u60D7\u60D9\u60DB\u60DE\u60E1",4,"\u60EA\u60F1\u60F2\u60F5\u60F7\u60F8\u60FB",4,"\u6102\u6103\u6104\u6105\u6107\u610A\u610B\u610C\u6110",4,"\u6116\u6117\u6118\u6119\u611B\u611C\u611D\u611E\u6121\u6122\u6125\u6128\u6129\u612A\u612C",18,"\u6140",6],["9140","\u6147\u6149\u614B\u614D\u614F\u6150\u6152\u6153\u6154\u6156",6,"\u615E\u615F\u6160\u6161\u6163\u6164\u6165\u6166\u6169",6,"\u6171\u6172\u6173\u6174\u6176\u6178",18,"\u618C\u618D\u618F",4,"\u6195"],["9180","\u6196",6,"\u619E",8,"\u61AA\u61AB\u61AD",9,"\u61B8",5,"\u61BF\u61C0\u61C1\u61C3",4,"\u61C9\u61CC",4,"\u61D3\u61D5",16,"\u61E7",13,"\u61F6",8,"\u6200",5,"\u6207\u6209\u6213\u6214\u6219\u621C\u621D\u621E\u6220\u6223\u6226\u6227\u6228\u6229\u622B\u622D\u622F\u6230\u6231\u6232\u6235\u6236\u6238",4,"\u6242\u6244\u6245\u6246\u624A"],["9240","\u624F\u6250\u6255\u6256\u6257\u6259\u625A\u625C",6,"\u6264\u6265\u6268\u6271\u6272\u6274\u6275\u6277\u6278\u627A\u627B\u627D\u6281\u6282\u6283\u6285\u6286\u6287\u6288\u628B",5,"\u6294\u6299\u629C\u629D\u629E\u62A3\u62A6\u62A7\u62A9\u62AA\u62AD\u62AE\u62AF\u62B0\u62B2\u62B3\u62B4\u62B6\u62B7\u62B8\u62BA\u62BE\u62C0\u62C1"],["9280","\u62C3\u62CB\u62CF\u62D1\u62D5\u62DD\u62DE\u62E0\u62E1\u62E4\u62EA\u62EB\u62F0\u62F2\u62F5\u62F8\u62F9\u62FA\u62FB\u6300\u6303\u6304\u6305\u6306\u630A\u630B\u630C\u630D\u630F\u6310\u6312\u6313\u6314\u6315\u6317\u6318\u6319\u631C\u6326\u6327\u6329\u632C\u632D\u632E\u6330\u6331\u6333",5,"\u633B\u633C\u633E\u633F\u6340\u6341\u6344\u6347\u6348\u634A\u6351\u6352\u6353\u6354\u6356",7,"\u6360\u6364\u6365\u6366\u6368\u636A\u636B\u636C\u636F\u6370\u6372\u6373\u6374\u6375\u6378\u6379\u637C\u637D\u637E\u637F\u6381\u6383\u6384\u6385\u6386\u638B\u638D\u6391\u6393\u6394\u6395\u6397\u6399",6,"\u63A1\u63A4\u63A6\u63AB\u63AF\u63B1\u63B2\u63B5\u63B6\u63B9\u63BB\u63BD\u63BF\u63C0"],["9340","\u63C1\u63C2\u63C3\u63C5\u63C7\u63C8\u63CA\u63CB\u63CC\u63D1\u63D3\u63D4\u63D5\u63D7",6,"\u63DF\u63E2\u63E4",4,"\u63EB\u63EC\u63EE\u63EF\u63F0\u63F1\u63F3\u63F5\u63F7\u63F9\u63FA\u63FB\u63FC\u63FE\u6403\u6404\u6406",4,"\u640D\u640E\u6411\u6412\u6415",5,"\u641D\u641F\u6422\u6423\u6424"],["9380","\u6425\u6427\u6428\u6429\u642B\u642E",5,"\u6435",4,"\u643B\u643C\u643E\u6440\u6442\u6443\u6449\u644B",6,"\u6453\u6455\u6456\u6457\u6459",4,"\u645F",7,"\u6468\u646A\u646B\u646C\u646E",9,"\u647B",6,"\u6483\u6486\u6488",8,"\u6493\u6494\u6497\u6498\u649A\u649B\u649C\u649D\u649F",4,"\u64A5\u64A6\u64A7\u64A8\u64AA\u64AB\u64AF\u64B1\u64B2\u64B3\u64B4\u64B6\u64B9\u64BB\u64BD\u64BE\u64BF\u64C1\u64C3\u64C4\u64C6",6,"\u64CF\u64D1\u64D3\u64D4\u64D5\u64D6\u64D9\u64DA"],["9440","\u64DB\u64DC\u64DD\u64DF\u64E0\u64E1\u64E3\u64E5\u64E7",24,"\u6501",7,"\u650A",7,"\u6513",4,"\u6519",8],["9480","\u6522\u6523\u6524\u6526",4,"\u652C\u652D\u6530\u6531\u6532\u6533\u6537\u653A\u653C\u653D\u6540",4,"\u6546\u6547\u654A\u654B\u654D\u654E\u6550\u6552\u6553\u6554\u6557\u6558\u655A\u655C\u655F\u6560\u6561\u6564\u6565\u6567\u6568\u6569\u656A\u656D\u656E\u656F\u6571\u6573\u6575\u6576\u6578",14,"\u6588\u6589\u658A\u658D\u658E\u658F\u6592\u6594\u6595\u6596\u6598\u659A\u659D\u659E\u65A0\u65A2\u65A3\u65A6\u65A8\u65AA\u65AC\u65AE\u65B1",7,"\u65BA\u65BB\u65BE\u65BF\u65C0\u65C2\u65C7\u65C8\u65C9\u65CA\u65CD\u65D0\u65D1\u65D3\u65D4\u65D5\u65D8",7,"\u65E1\u65E3\u65E4\u65EA\u65EB"],["9540","\u65F2\u65F3\u65F4\u65F5\u65F8\u65F9\u65FB",4,"\u6601\u6604\u6605\u6607\u6608\u6609\u660B\u660D\u6610\u6611\u6612\u6616\u6617\u6618\u661A\u661B\u661C\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6632\u6633\u6637",4,"\u663D\u663F\u6640\u6642\u6644",6,"\u664D\u664E\u6650\u6651\u6658"],["9580","\u6659\u665B\u665C\u665D\u665E\u6660\u6662\u6663\u6665\u6667\u6669",4,"\u6671\u6672\u6673\u6675\u6678\u6679\u667B\u667C\u667D\u667F\u6680\u6681\u6683\u6685\u6686\u6688\u6689\u668A\u668B\u668D\u668E\u668F\u6690\u6692\u6693\u6694\u6695\u6698",4,"\u669E",8,"\u66A9",4,"\u66AF",4,"\u66B5\u66B6\u66B7\u66B8\u66BA\u66BB\u66BC\u66BD\u66BF",25,"\u66DA\u66DE",7,"\u66E7\u66E8\u66EA",5,"\u66F1\u66F5\u66F6\u66F8\u66FA\u66FB\u66FD\u6701\u6702\u6703"],["9640","\u6704\u6705\u6706\u6707\u670C\u670E\u670F\u6711\u6712\u6713\u6716\u6718\u6719\u671A\u671C\u671E\u6720",5,"\u6727\u6729\u672E\u6730\u6732\u6733\u6736\u6737\u6738\u6739\u673B\u673C\u673E\u673F\u6741\u6744\u6745\u6747\u674A\u674B\u674D\u6752\u6754\u6755\u6757",4,"\u675D\u6762\u6763\u6764\u6766\u6767\u676B\u676C\u676E\u6771\u6774\u6776"],["9680","\u6778\u6779\u677A\u677B\u677D\u6780\u6782\u6783\u6785\u6786\u6788\u678A\u678C\u678D\u678E\u678F\u6791\u6792\u6793\u6794\u6796\u6799\u679B\u679F\u67A0\u67A1\u67A4\u67A6\u67A9\u67AC\u67AE\u67B1\u67B2\u67B4\u67B9",7,"\u67C2\u67C5",9,"\u67D5\u67D6\u67D7\u67DB\u67DF\u67E1\u67E3\u67E4\u67E6\u67E7\u67E8\u67EA\u67EB\u67ED\u67EE\u67F2\u67F5",7,"\u67FE\u6801\u6802\u6803\u6804\u6806\u680D\u6810\u6812\u6814\u6815\u6818",4,"\u681E\u681F\u6820\u6822",6,"\u682B",6,"\u6834\u6835\u6836\u683A\u683B\u683F\u6847\u684B\u684D\u684F\u6852\u6856",5],["9740","\u685C\u685D\u685E\u685F\u686A\u686C",7,"\u6875\u6878",8,"\u6882\u6884\u6887",7,"\u6890\u6891\u6892\u6894\u6895\u6896\u6898",9,"\u68A3\u68A4\u68A5\u68A9\u68AA\u68AB\u68AC\u68AE\u68B1\u68B2\u68B4\u68B6\u68B7\u68B8"],["9780","\u68B9",6,"\u68C1\u68C3",5,"\u68CA\u68CC\u68CE\u68CF\u68D0\u68D1\u68D3\u68D4\u68D6\u68D7\u68D9\u68DB",4,"\u68E1\u68E2\u68E4",9,"\u68EF\u68F2\u68F3\u68F4\u68F6\u68F7\u68F8\u68FB\u68FD\u68FE\u68FF\u6900\u6902\u6903\u6904\u6906",4,"\u690C\u690F\u6911\u6913",11,"\u6921\u6922\u6923\u6925",7,"\u692E\u692F\u6931\u6932\u6933\u6935\u6936\u6937\u6938\u693A\u693B\u693C\u693E\u6940\u6941\u6943",16,"\u6955\u6956\u6958\u6959\u695B\u695C\u695F"],["9840","\u6961\u6962\u6964\u6965\u6967\u6968\u6969\u696A\u696C\u696D\u696F\u6970\u6972",4,"\u697A\u697B\u697D\u697E\u697F\u6981\u6983\u6985\u698A\u698B\u698C\u698E",5,"\u6996\u6997\u6999\u699A\u699D",9,"\u69A9\u69AA\u69AC\u69AE\u69AF\u69B0\u69B2\u69B3\u69B5\u69B6\u69B8\u69B9\u69BA\u69BC\u69BD"],["9880","\u69BE\u69BF\u69C0\u69C2",7,"\u69CB\u69CD\u69CF\u69D1\u69D2\u69D3\u69D5",5,"\u69DC\u69DD\u69DE\u69E1",11,"\u69EE\u69EF\u69F0\u69F1\u69F3",9,"\u69FE\u6A00",9,"\u6A0B",11,"\u6A19",5,"\u6A20\u6A22",5,"\u6A29\u6A2B\u6A2C\u6A2D\u6A2E\u6A30\u6A32\u6A33\u6A34\u6A36",6,"\u6A3F",4,"\u6A45\u6A46\u6A48",7,"\u6A51",6,"\u6A5A"],["9940","\u6A5C",4,"\u6A62\u6A63\u6A64\u6A66",10,"\u6A72",6,"\u6A7A\u6A7B\u6A7D\u6A7E\u6A7F\u6A81\u6A82\u6A83\u6A85",8,"\u6A8F\u6A92",4,"\u6A98",7,"\u6AA1",5],["9980","\u6AA7\u6AA8\u6AAA\u6AAD",114,"\u6B25\u6B26\u6B28",6],["9a40","\u6B2F\u6B30\u6B31\u6B33\u6B34\u6B35\u6B36\u6B38\u6B3B\u6B3C\u6B3D\u6B3F\u6B40\u6B41\u6B42\u6B44\u6B45\u6B48\u6B4A\u6B4B\u6B4D",11,"\u6B5A",7,"\u6B68\u6B69\u6B6B",13,"\u6B7A\u6B7D\u6B7E\u6B7F\u6B80\u6B85\u6B88"],["9a80","\u6B8C\u6B8E\u6B8F\u6B90\u6B91\u6B94\u6B95\u6B97\u6B98\u6B99\u6B9C",4,"\u6BA2",7,"\u6BAB",7,"\u6BB6\u6BB8",6,"\u6BC0\u6BC3\u6BC4\u6BC6",4,"\u6BCC\u6BCE\u6BD0\u6BD1\u6BD8\u6BDA\u6BDC",4,"\u6BE2",7,"\u6BEC\u6BED\u6BEE\u6BF0\u6BF1\u6BF2\u6BF4\u6BF6\u6BF7\u6BF8\u6BFA\u6BFB\u6BFC\u6BFE",6,"\u6C08",4,"\u6C0E\u6C12\u6C17\u6C1C\u6C1D\u6C1E\u6C20\u6C23\u6C25\u6C2B\u6C2C\u6C2D\u6C31\u6C33\u6C36\u6C37\u6C39\u6C3A\u6C3B\u6C3C\u6C3E\u6C3F\u6C43\u6C44\u6C45\u6C48\u6C4B",4,"\u6C51\u6C52\u6C53\u6C56\u6C58"],["9b40","\u6C59\u6C5A\u6C62\u6C63\u6C65\u6C66\u6C67\u6C6B",4,"\u6C71\u6C73\u6C75\u6C77\u6C78\u6C7A\u6C7B\u6C7C\u6C7F\u6C80\u6C84\u6C87\u6C8A\u6C8B\u6C8D\u6C8E\u6C91\u6C92\u6C95\u6C96\u6C97\u6C98\u6C9A\u6C9C\u6C9D\u6C9E\u6CA0\u6CA2\u6CA8\u6CAC\u6CAF\u6CB0\u6CB4\u6CB5\u6CB6\u6CB7\u6CBA\u6CC0\u6CC1\u6CC2\u6CC3\u6CC6\u6CC7\u6CC8\u6CCB\u6CCD\u6CCE\u6CCF\u6CD1\u6CD2\u6CD8"],["9b80","\u6CD9\u6CDA\u6CDC\u6CDD\u6CDF\u6CE4\u6CE6\u6CE7\u6CE9\u6CEC\u6CED\u6CF2\u6CF4\u6CF9\u6CFF\u6D00\u6D02\u6D03\u6D05\u6D06\u6D08\u6D09\u6D0A\u6D0D\u6D0F\u6D10\u6D11\u6D13\u6D14\u6D15\u6D16\u6D18\u6D1C\u6D1D\u6D1F",5,"\u6D26\u6D28\u6D29\u6D2C\u6D2D\u6D2F\u6D30\u6D34\u6D36\u6D37\u6D38\u6D3A\u6D3F\u6D40\u6D42\u6D44\u6D49\u6D4C\u6D50\u6D55\u6D56\u6D57\u6D58\u6D5B\u6D5D\u6D5F\u6D61\u6D62\u6D64\u6D65\u6D67\u6D68\u6D6B\u6D6C\u6D6D\u6D70\u6D71\u6D72\u6D73\u6D75\u6D76\u6D79\u6D7A\u6D7B\u6D7D",4,"\u6D83\u6D84\u6D86\u6D87\u6D8A\u6D8B\u6D8D\u6D8F\u6D90\u6D92\u6D96",4,"\u6D9C\u6DA2\u6DA5\u6DAC\u6DAD\u6DB0\u6DB1\u6DB3\u6DB4\u6DB6\u6DB7\u6DB9",5,"\u6DC1\u6DC2\u6DC3\u6DC8\u6DC9\u6DCA"],["9c40","\u6DCD\u6DCE\u6DCF\u6DD0\u6DD2\u6DD3\u6DD4\u6DD5\u6DD7\u6DDA\u6DDB\u6DDC\u6DDF\u6DE2\u6DE3\u6DE5\u6DE7\u6DE8\u6DE9\u6DEA\u6DED\u6DEF\u6DF0\u6DF2\u6DF4\u6DF5\u6DF6\u6DF8\u6DFA\u6DFD",7,"\u6E06\u6E07\u6E08\u6E09\u6E0B\u6E0F\u6E12\u6E13\u6E15\u6E18\u6E19\u6E1B\u6E1C\u6E1E\u6E1F\u6E22\u6E26\u6E27\u6E28\u6E2A\u6E2C\u6E2E\u6E30\u6E31\u6E33\u6E35"],["9c80","\u6E36\u6E37\u6E39\u6E3B",7,"\u6E45",7,"\u6E4F\u6E50\u6E51\u6E52\u6E55\u6E57\u6E59\u6E5A\u6E5C\u6E5D\u6E5E\u6E60",10,"\u6E6C\u6E6D\u6E6F",14,"\u6E80\u6E81\u6E82\u6E84\u6E87\u6E88\u6E8A",4,"\u6E91",6,"\u6E99\u6E9A\u6E9B\u6E9D\u6E9E\u6EA0\u6EA1\u6EA3\u6EA4\u6EA6\u6EA8\u6EA9\u6EAB\u6EAC\u6EAD\u6EAE\u6EB0\u6EB3\u6EB5\u6EB8\u6EB9\u6EBC\u6EBE\u6EBF\u6EC0\u6EC3\u6EC4\u6EC5\u6EC6\u6EC8\u6EC9\u6ECA\u6ECC\u6ECD\u6ECE\u6ED0\u6ED2\u6ED6\u6ED8\u6ED9\u6EDB\u6EDC\u6EDD\u6EE3\u6EE7\u6EEA",5],["9d40","\u6EF0\u6EF1\u6EF2\u6EF3\u6EF5\u6EF6\u6EF7\u6EF8\u6EFA",7,"\u6F03\u6F04\u6F05\u6F07\u6F08\u6F0A",4,"\u6F10\u6F11\u6F12\u6F16",9,"\u6F21\u6F22\u6F23\u6F25\u6F26\u6F27\u6F28\u6F2C\u6F2E\u6F30\u6F32\u6F34\u6F35\u6F37",6,"\u6F3F\u6F40\u6F41\u6F42"],["9d80","\u6F43\u6F44\u6F45\u6F48\u6F49\u6F4A\u6F4C\u6F4E",9,"\u6F59\u6F5A\u6F5B\u6F5D\u6F5F\u6F60\u6F61\u6F63\u6F64\u6F65\u6F67",5,"\u6F6F\u6F70\u6F71\u6F73\u6F75\u6F76\u6F77\u6F79\u6F7B\u6F7D",6,"\u6F85\u6F86\u6F87\u6F8A\u6F8B\u6F8F",12,"\u6F9D\u6F9E\u6F9F\u6FA0\u6FA2",4,"\u6FA8",10,"\u6FB4\u6FB5\u6FB7\u6FB8\u6FBA",5,"\u6FC1\u6FC3",5,"\u6FCA",6,"\u6FD3",10,"\u6FDF\u6FE2\u6FE3\u6FE4\u6FE5"],["9e40","\u6FE6",7,"\u6FF0",32,"\u7012",7,"\u701C",6,"\u7024",6],["9e80","\u702B",9,"\u7036\u7037\u7038\u703A",17,"\u704D\u704E\u7050",13,"\u705F",11,"\u706E\u7071\u7072\u7073\u7074\u7077\u7079\u707A\u707B\u707D\u7081\u7082\u7083\u7084\u7086\u7087\u7088\u708B\u708C\u708D\u708F\u7090\u7091\u7093\u7097\u7098\u709A\u709B\u709E",12,"\u70B0\u70B2\u70B4\u70B5\u70B6\u70BA\u70BE\u70BF\u70C4\u70C5\u70C6\u70C7\u70C9\u70CB",12,"\u70DA"],["9f40","\u70DC\u70DD\u70DE\u70E0\u70E1\u70E2\u70E3\u70E5\u70EA\u70EE\u70F0",6,"\u70F8\u70FA\u70FB\u70FC\u70FE",10,"\u710B",4,"\u7111\u7112\u7114\u7117\u711B",10,"\u7127",7,"\u7132\u7133\u7134"],["9f80","\u7135\u7137",13,"\u7146\u7147\u7148\u7149\u714B\u714D\u714F",12,"\u715D\u715F",4,"\u7165\u7169",4,"\u716F\u7170\u7171\u7174\u7175\u7176\u7177\u7179\u717B\u717C\u717E",5,"\u7185",4,"\u718B\u718C\u718D\u718E\u7190\u7191\u7192\u7193\u7195\u7196\u7197\u719A",4,"\u71A1",6,"\u71A9\u71AA\u71AB\u71AD",5,"\u71B4\u71B6\u71B7\u71B8\u71BA",8,"\u71C4",9,"\u71CF",4],["a040","\u71D6",9,"\u71E1\u71E2\u71E3\u71E4\u71E6\u71E8",5,"\u71EF",9,"\u71FA",11,"\u7207",19],["a080","\u721B\u721C\u721E",9,"\u7229\u722B\u722D\u722E\u722F\u7232\u7233\u7234\u723A\u723C\u723E\u7240",6,"\u7249\u724A\u724B\u724E\u724F\u7250\u7251\u7253\u7254\u7255\u7257\u7258\u725A\u725C\u725E\u7260\u7263\u7264\u7265\u7268\u726A\u726B\u726C\u726D\u7270\u7271\u7273\u7274\u7276\u7277\u7278\u727B\u727C\u727D\u7282\u7283\u7285",4,"\u728C\u728E\u7290\u7291\u7293",11,"\u72A0",11,"\u72AE\u72B1\u72B2\u72B3\u72B5\u72BA",6,"\u72C5\u72C6\u72C7\u72C9\u72CA\u72CB\u72CC\u72CF\u72D1\u72D3\u72D4\u72D5\u72D6\u72D8\u72DA\u72DB"],["a1a1","\u3000\u3001\u3002\xB7\u02C9\u02C7\xA8\u3003\u3005\u2014\uFF5E\u2016\u2026\u2018\u2019\u201C\u201D\u3014\u3015\u3008",7,"\u3016\u3017\u3010\u3011\xB1\xD7\xF7\u2236\u2227\u2228\u2211\u220F\u222A\u2229\u2208\u2237\u221A\u22A5\u2225\u2220\u2312\u2299\u222B\u222E\u2261\u224C\u2248\u223D\u221D\u2260\u226E\u226F\u2264\u2265\u221E\u2235\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFF04\xA4\uFFE0\uFFE1\u2030\xA7\u2116\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u203B\u2192\u2190\u2191\u2193\u3013"],["a2a1","\u2170",9],["a2b1","\u2488",19,"\u2474",19,"\u2460",9],["a2e5","\u3220",9],["a2f1","\u2160",11],["a3a1","\uFF01\uFF02\uFF03\uFFE5\uFF05",88,"\uFFE3"],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a6e0","\uFE35\uFE36\uFE39\uFE3A\uFE3F\uFE40\uFE3D\uFE3E\uFE41\uFE42\uFE43\uFE44"],["a6ee","\uFE3B\uFE3C\uFE37\uFE38\uFE31"],["a6f4","\uFE33\uFE34"],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a840","\u02CA\u02CB\u02D9\u2013\u2015\u2025\u2035\u2105\u2109\u2196\u2197\u2198\u2199\u2215\u221F\u2223\u2252\u2266\u2267\u22BF\u2550",35,"\u2581",6],["a880","\u2588",7,"\u2593\u2594\u2595\u25BC\u25BD\u25E2\u25E3\u25E4\u25E5\u2609\u2295\u3012\u301D\u301E"],["a8a1","\u0101\xE1\u01CE\xE0\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA\u01DC\xFC\xEA\u0251"],["a8bd","\u0144\u0148"],["a8c0","\u0261"],["a8c5","\u3105",36],["a940","\u3021",8,"\u32A3\u338E\u338F\u339C\u339D\u339E\u33A1\u33C4\u33CE\u33D1\u33D2\u33D5\uFE30\uFFE2\uFFE4"],["a959","\u2121\u3231"],["a95c","\u2010"],["a960","\u30FC\u309B\u309C\u30FD\u30FE\u3006\u309D\u309E\uFE49",9,"\uFE54\uFE55\uFE56\uFE57\uFE59",8],["a980","\uFE62",4,"\uFE68\uFE69\uFE6A\uFE6B"],["a996","\u3007"],["a9a4","\u2500",75],["aa40","\u72DC\u72DD\u72DF\u72E2",5,"\u72EA\u72EB\u72F5\u72F6\u72F9\u72FD\u72FE\u72FF\u7300\u7302\u7304",5,"\u730B\u730C\u730D\u730F\u7310\u7311\u7312\u7314\u7318\u7319\u731A\u731F\u7320\u7323\u7324\u7326\u7327\u7328\u732D\u732F\u7330\u7332\u7333\u7335\u7336\u733A\u733B\u733C\u733D\u7340",8],["aa80","\u7349\u734A\u734B\u734C\u734E\u734F\u7351\u7353\u7354\u7355\u7356\u7358",7,"\u7361",10,"\u736E\u7370\u7371"],["ab40","\u7372",11,"\u737F",4,"\u7385\u7386\u7388\u738A\u738C\u738D\u738F\u7390\u7392\u7393\u7394\u7395\u7397\u7398\u7399\u739A\u739C\u739D\u739E\u73A0\u73A1\u73A3",5,"\u73AA\u73AC\u73AD\u73B1\u73B4\u73B5\u73B6\u73B8\u73B9\u73BC\u73BD\u73BE\u73BF\u73C1\u73C3",4],["ab80","\u73CB\u73CC\u73CE\u73D2",6,"\u73DA\u73DB\u73DC\u73DD\u73DF\u73E1\u73E2\u73E3\u73E4\u73E6\u73E8\u73EA\u73EB\u73EC\u73EE\u73EF\u73F0\u73F1\u73F3",4],["ac40","\u73F8",10,"\u7404\u7407\u7408\u740B\u740C\u740D\u740E\u7411",8,"\u741C",5,"\u7423\u7424\u7427\u7429\u742B\u742D\u742F\u7431\u7432\u7437",4,"\u743D\u743E\u743F\u7440\u7442",11],["ac80","\u744E",6,"\u7456\u7458\u745D\u7460",12,"\u746E\u746F\u7471",4,"\u7478\u7479\u747A"],["ad40","\u747B\u747C\u747D\u747F\u7482\u7484\u7485\u7486\u7488\u7489\u748A\u748C\u748D\u748F\u7491",10,"\u749D\u749F",7,"\u74AA",15,"\u74BB",12],["ad80","\u74C8",9,"\u74D3",8,"\u74DD\u74DF\u74E1\u74E5\u74E7",6,"\u74F0\u74F1\u74F2"],["ae40","\u74F3\u74F5\u74F8",6,"\u7500\u7501\u7502\u7503\u7505",7,"\u750E\u7510\u7512\u7514\u7515\u7516\u7517\u751B\u751D\u751E\u7520",4,"\u7526\u7527\u752A\u752E\u7534\u7536\u7539\u753C\u753D\u753F\u7541\u7542\u7543\u7544\u7546\u7547\u7549\u754A\u754D\u7550\u7551\u7552\u7553\u7555\u7556\u7557\u7558"],["ae80","\u755D",7,"\u7567\u7568\u7569\u756B",6,"\u7573\u7575\u7576\u7577\u757A",4,"\u7580\u7581\u7582\u7584\u7585\u7587"],["af40","\u7588\u7589\u758A\u758C\u758D\u758E\u7590\u7593\u7595\u7598\u759B\u759C\u759E\u75A2\u75A6",4,"\u75AD\u75B6\u75B7\u75BA\u75BB\u75BF\u75C0\u75C1\u75C6\u75CB\u75CC\u75CE\u75CF\u75D0\u75D1\u75D3\u75D7\u75D9\u75DA\u75DC\u75DD\u75DF\u75E0\u75E1\u75E5\u75E9\u75EC\u75ED\u75EE\u75EF\u75F2\u75F3\u75F5\u75F6\u75F7\u75F8\u75FA\u75FB\u75FD\u75FE\u7602\u7604\u7606\u7607"],["af80","\u7608\u7609\u760B\u760D\u760E\u760F\u7611\u7612\u7613\u7614\u7616\u761A\u761C\u761D\u761E\u7621\u7623\u7627\u7628\u762C\u762E\u762F\u7631\u7632\u7636\u7637\u7639\u763A\u763B\u763D\u7641\u7642\u7644"],["b040","\u7645",6,"\u764E",5,"\u7655\u7657",4,"\u765D\u765F\u7660\u7661\u7662\u7664",6,"\u766C\u766D\u766E\u7670",7,"\u7679\u767A\u767C\u767F\u7680\u7681\u7683\u7685\u7689\u768A\u768C\u768D\u768F\u7690\u7692\u7694\u7695\u7697\u7698\u769A\u769B"],["b080","\u769C",7,"\u76A5",8,"\u76AF\u76B0\u76B3\u76B5",9,"\u76C0\u76C1\u76C3\u554A\u963F\u57C3\u6328\u54CE\u5509\u54C0\u7691\u764C\u853C\u77EE\u827E\u788D\u7231\u9698\u978D\u6C28\u5B89\u4FFA\u6309\u6697\u5CB8\u80FA\u6848\u80AE\u6602\u76CE\u51F9\u6556\u71AC\u7FF1\u8884\u50B2\u5965\u61CA\u6FB3\u82AD\u634C\u6252\u53ED\u5427\u7B06\u516B\u75A4\u5DF4\u62D4\u8DCB\u9776\u628A\u8019\u575D\u9738\u7F62\u7238\u767D\u67CF\u767E\u6446\u4F70\u8D25\u62DC\u7A17\u6591\u73ED\u642C\u6273\u822C\u9881\u677F\u7248\u626E\u62CC\u4F34\u74E3\u534A\u529E\u7ECA\u90A6\u5E2E\u6886\u699C\u8180\u7ED1\u68D2\u78C5\u868C\u9551\u508D\u8C24\u82DE\u80DE\u5305\u8912\u5265"],["b140","\u76C4\u76C7\u76C9\u76CB\u76CC\u76D3\u76D5\u76D9\u76DA\u76DC\u76DD\u76DE\u76E0",4,"\u76E6",7,"\u76F0\u76F3\u76F5\u76F6\u76F7\u76FA\u76FB\u76FD\u76FF\u7700\u7702\u7703\u7705\u7706\u770A\u770C\u770E",10,"\u771B\u771C\u771D\u771E\u7721\u7723\u7724\u7725\u7727\u772A\u772B"],["b180","\u772C\u772E\u7730",4,"\u7739\u773B\u773D\u773E\u773F\u7742\u7744\u7745\u7746\u7748",7,"\u7752",7,"\u775C\u8584\u96F9\u4FDD\u5821\u9971\u5B9D\u62B1\u62A5\u66B4\u8C79\u9C8D\u7206\u676F\u7891\u60B2\u5351\u5317\u8F88\u80CC\u8D1D\u94A1\u500D\u72C8\u5907\u60EB\u7119\u88AB\u5954\u82EF\u672C\u7B28\u5D29\u7EF7\u752D\u6CF5\u8E66\u8FF8\u903C\u9F3B\u6BD4\u9119\u7B14\u5F7C\u78A7\u84D6\u853D\u6BD5\u6BD9\u6BD6\u5E01\u5E87\u75F9\u95ED\u655D\u5F0A\u5FC5\u8F9F\u58C1\u81C2\u907F\u965B\u97AD\u8FB9\u7F16\u8D2C\u6241\u4FBF\u53D8\u535E\u8FA8\u8FA9\u8FAB\u904D\u6807\u5F6A\u8198\u8868\u9CD6\u618B\u522B\u762A\u5F6C\u658C\u6FD2\u6EE8\u5BBE\u6448\u5175\u51B0\u67C4\u4E19\u79C9\u997C\u70B3"],["b240","\u775D\u775E\u775F\u7760\u7764\u7767\u7769\u776A\u776D",11,"\u777A\u777B\u777C\u7781\u7782\u7783\u7786",5,"\u778F\u7790\u7793",11,"\u77A1\u77A3\u77A4\u77A6\u77A8\u77AB\u77AD\u77AE\u77AF\u77B1\u77B2\u77B4\u77B6",4],["b280","\u77BC\u77BE\u77C0",12,"\u77CE",8,"\u77D8\u77D9\u77DA\u77DD",4,"\u77E4\u75C5\u5E76\u73BB\u83E0\u64AD\u62E8\u94B5\u6CE2\u535A\u52C3\u640F\u94C2\u7B94\u4F2F\u5E1B\u8236\u8116\u818A\u6E24\u6CCA\u9A73\u6355\u535C\u54FA\u8865\u57E0\u4E0D\u5E03\u6B65\u7C3F\u90E8\u6016\u64E6\u731C\u88C1\u6750\u624D\u8D22\u776C\u8E29\u91C7\u5F69\u83DC\u8521\u9910\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u82CD\u8231\u4ED3\u6CA7\u85CF\u64CD\u7CD9\u69FD\u66F9\u8349\u5395\u7B56\u4FA7\u518C\u6D4B\u5C42\u8E6D\u63D2\u53C9\u832C\u8336\u67E5\u78B4\u643D\u5BDF\u5C94\u5DEE\u8BE7\u62C6\u67F4\u8C7A\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u660C\u7316"],["b340","\u77E6\u77E8\u77EA\u77EF\u77F0\u77F1\u77F2\u77F4\u77F5\u77F7\u77F9\u77FA\u77FB\u77FC\u7803",5,"\u780A\u780B\u780E\u780F\u7810\u7813\u7815\u7819\u781B\u781E\u7820\u7821\u7822\u7824\u7828\u782A\u782B\u782E\u782F\u7831\u7832\u7833\u7835\u7836\u783D\u783F\u7841\u7842\u7843\u7844\u7846\u7848\u7849\u784A\u784B\u784D\u784F\u7851\u7853\u7854\u7858\u7859\u785A"],["b380","\u785B\u785C\u785E",11,"\u786F",7,"\u7878\u7879\u787A\u787B\u787D",6,"\u573A\u5C1D\u5E38\u957F\u507F\u80A0\u5382\u655E\u7545\u5531\u5021\u8D85\u6284\u949E\u671D\u5632\u6F6E\u5DE2\u5435\u7092\u8F66\u626F\u64A4\u63A3\u5F7B\u6F88\u90F4\u81E3\u8FB0\u5C18\u6668\u5FF1\u6C89\u9648\u8D81\u886C\u6491\u79F0\u57CE\u6A59\u6210\u5448\u4E58\u7A0B\u60E9\u6F84\u8BDA\u627F\u901E\u9A8B\u79E4\u5403\u75F4\u6301\u5319\u6C60\u8FDF\u5F1B\u9A70\u803B\u9F7F\u4F88\u5C3A\u8D64\u7FC5\u65A5\u70BD\u5145\u51B2\u866B\u5D07\u5BA0\u62BD\u916C\u7574\u8E0C\u7A20\u6101\u7B79\u4EC7\u7EF8\u7785\u4E11\u81ED\u521D\u51FA\u6A71\u53A8\u8E87\u9504\u96CF\u6EC1\u9664\u695A"],["b440","\u7884\u7885\u7886\u7888\u788A\u788B\u788F\u7890\u7892\u7894\u7895\u7896\u7899\u789D\u789E\u78A0\u78A2\u78A4\u78A6\u78A8",7,"\u78B5\u78B6\u78B7\u78B8\u78BA\u78BB\u78BC\u78BD\u78BF\u78C0\u78C2\u78C3\u78C4\u78C6\u78C7\u78C8\u78CC\u78CD\u78CE\u78CF\u78D1\u78D2\u78D3\u78D6\u78D7\u78D8\u78DA",9],["b480","\u78E4\u78E5\u78E6\u78E7\u78E9\u78EA\u78EB\u78ED",4,"\u78F3\u78F5\u78F6\u78F8\u78F9\u78FB",5,"\u7902\u7903\u7904\u7906",6,"\u7840\u50A8\u77D7\u6410\u89E6\u5904\u63E3\u5DDD\u7A7F\u693D\u4F20\u8239\u5598\u4E32\u75AE\u7A97\u5E62\u5E8A\u95EF\u521B\u5439\u708A\u6376\u9524\u5782\u6625\u693F\u9187\u5507\u6DF3\u7EAF\u8822\u6233\u7EF0\u75B5\u8328\u78C1\u96CC\u8F9E\u6148\u74F7\u8BCD\u6B64\u523A\u8D50\u6B21\u806A\u8471\u56F1\u5306\u4ECE\u4E1B\u51D1\u7C97\u918B\u7C07\u4FC3\u8E7F\u7BE1\u7A9C\u6467\u5D14\u50AC\u8106\u7601\u7CB9\u6DEC\u7FE0\u6751\u5B58\u5BF8\u78CB\u64AE\u6413\u63AA\u632B\u9519\u642D\u8FBE\u7B54\u7629\u6253\u5927\u5446\u6B79\u50A3\u6234\u5E26\u6B86\u4EE3\u8D37\u888B\u5F85\u902E"],["b540","\u790D",5,"\u7914",9,"\u791F",4,"\u7925",14,"\u7935",4,"\u793D\u793F\u7942\u7943\u7944\u7945\u7947\u794A",8,"\u7954\u7955\u7958\u7959\u7961\u7963"],["b580","\u7964\u7966\u7969\u796A\u796B\u796C\u796E\u7970",6,"\u7979\u797B",4,"\u7982\u7983\u7986\u7987\u7988\u7989\u798B\u798C\u798D\u798E\u7990\u7991\u7992\u6020\u803D\u62C5\u4E39\u5355\u90F8\u63B8\u80C6\u65E6\u6C2E\u4F46\u60EE\u6DE1\u8BDE\u5F39\u86CB\u5F53\u6321\u515A\u8361\u6863\u5200\u6363\u8E48\u5012\u5C9B\u7977\u5BFC\u5230\u7A3B\u60BC\u9053\u76D7\u5FB7\u5F97\u7684\u8E6C\u706F\u767B\u7B49\u77AA\u51F3\u9093\u5824\u4F4E\u6EF4\u8FEA\u654C\u7B1B\u72C4\u6DA4\u7FDF\u5AE1\u62B5\u5E95\u5730\u8482\u7B2C\u5E1D\u5F1F\u9012\u7F14\u98A0\u6382\u6EC7\u7898\u70B9\u5178\u975B\u57AB\u7535\u4F43\u7538\u5E97\u60E6\u5960\u6DC0\u6BBF\u7889\u53FC\u96D5\u51CB\u5201\u6389\u540A\u9493\u8C03\u8DCC\u7239\u789F\u8776\u8FED\u8C0D\u53E0"],["b640","\u7993",6,"\u799B",11,"\u79A8",10,"\u79B4",4,"\u79BC\u79BF\u79C2\u79C4\u79C5\u79C7\u79C8\u79CA\u79CC\u79CE\u79CF\u79D0\u79D3\u79D4\u79D6\u79D7\u79D9",5,"\u79E0\u79E1\u79E2\u79E5\u79E8\u79EA"],["b680","\u79EC\u79EE\u79F1",6,"\u79F9\u79FA\u79FC\u79FE\u79FF\u7A01\u7A04\u7A05\u7A07\u7A08\u7A09\u7A0A\u7A0C\u7A0F",4,"\u7A15\u7A16\u7A18\u7A19\u7A1B\u7A1C\u4E01\u76EF\u53EE\u9489\u9876\u9F0E\u952D\u5B9A\u8BA2\u4E22\u4E1C\u51AC\u8463\u61C2\u52A8\u680B\u4F97\u606B\u51BB\u6D1E\u515C\u6296\u6597\u9661\u8C46\u9017\u75D8\u90FD\u7763\u6BD2\u728A\u72EC\u8BFB\u5835\u7779\u8D4C\u675C\u9540\u809A\u5EA6\u6E21\u5992\u7AEF\u77ED\u953B\u6BB5\u65AD\u7F0E\u5806\u5151\u961F\u5BF9\u58A9\u5428\u8E72\u6566\u987F\u56E4\u949D\u76FE\u9041\u6387\u54C6\u591A\u593A\u579B\u8EB2\u6735\u8DFA\u8235\u5241\u60F0\u5815\u86FE\u5CE8\u9E45\u4FC4\u989D\u8BB9\u5A25\u6076\u5384\u627C\u904F\u9102\u997F\u6069\u800C\u513F\u8033\u5C14\u9975\u6D31\u4E8C"],["b740","\u7A1D\u7A1F\u7A21\u7A22\u7A24",14,"\u7A34\u7A35\u7A36\u7A38\u7A3A\u7A3E\u7A40",5,"\u7A47",9,"\u7A52",4,"\u7A58",16],["b780","\u7A69",6,"\u7A71\u7A72\u7A73\u7A75\u7A7B\u7A7C\u7A7D\u7A7E\u7A82\u7A85\u7A87\u7A89\u7A8A\u7A8B\u7A8C\u7A8E\u7A8F\u7A90\u7A93\u7A94\u7A99\u7A9A\u7A9B\u7A9E\u7AA1\u7AA2\u8D30\u53D1\u7F5A\u7B4F\u4F10\u4E4F\u9600\u6CD5\u73D0\u85E9\u5E06\u756A\u7FFB\u6A0A\u77FE\u9492\u7E41\u51E1\u70E6\u53CD\u8FD4\u8303\u8D29\u72AF\u996D\u6CDB\u574A\u82B3\u65B9\u80AA\u623F\u9632\u59A8\u4EFF\u8BBF\u7EBA\u653E\u83F2\u975E\u5561\u98DE\u80A5\u532A\u8BFD\u5420\u80BA\u5E9F\u6CB8\u8D39\u82AC\u915A\u5429\u6C1B\u5206\u7EB7\u575F\u711A\u6C7E\u7C89\u594B\u4EFD\u5FFF\u6124\u7CAA\u4E30\u5C01\u67AB\u8702\u5CF0\u950B\u98CE\u75AF\u70FD\u9022\u51AF\u7F1D\u8BBD\u5949\u51E4\u4F5B\u5426\u592B\u6577\u80A4\u5B75\u6276\u62C2\u8F90\u5E45\u6C1F\u7B26\u4F0F\u4FD8\u670D"],["b840","\u7AA3\u7AA4\u7AA7\u7AA9\u7AAA\u7AAB\u7AAE",4,"\u7AB4",10,"\u7AC0",10,"\u7ACC",9,"\u7AD7\u7AD8\u7ADA\u7ADB\u7ADC\u7ADD\u7AE1\u7AE2\u7AE4\u7AE7",5,"\u7AEE\u7AF0\u7AF1\u7AF2\u7AF3"],["b880","\u7AF4",4,"\u7AFB\u7AFC\u7AFE\u7B00\u7B01\u7B02\u7B05\u7B07\u7B09\u7B0C\u7B0D\u7B0E\u7B10\u7B12\u7B13\u7B16\u7B17\u7B18\u7B1A\u7B1C\u7B1D\u7B1F\u7B21\u7B22\u7B23\u7B27\u7B29\u7B2D\u6D6E\u6DAA\u798F\u88B1\u5F17\u752B\u629A\u8F85\u4FEF\u91DC\u65A7\u812F\u8151\u5E9C\u8150\u8D74\u526F\u8986\u8D4B\u590D\u5085\u4ED8\u961C\u7236\u8179\u8D1F\u5BCC\u8BA3\u9644\u5987\u7F1A\u5490\u5676\u560E\u8BE5\u6539\u6982\u9499\u76D6\u6E89\u5E72\u7518\u6746\u67D1\u7AFF\u809D\u8D76\u611F\u79C6\u6562\u8D63\u5188\u521A\u94A2\u7F38\u809B\u7EB2\u5C97\u6E2F\u6760\u7BD9\u768B\u9AD8\u818F\u7F94\u7CD5\u641E\u9550\u7A3F\u544A\u54E5\u6B4C\u6401\u6208\u9E3D\u80F3\u7599\u5272\u9769\u845B\u683C\u86E4\u9601\u9694\u94EC\u4E2A\u5404\u7ED9\u6839\u8DDF\u8015\u66F4\u5E9A\u7FB9"],["b940","\u7B2F\u7B30\u7B32\u7B34\u7B35\u7B36\u7B37\u7B39\u7B3B\u7B3D\u7B3F",5,"\u7B46\u7B48\u7B4A\u7B4D\u7B4E\u7B53\u7B55\u7B57\u7B59\u7B5C\u7B5E\u7B5F\u7B61\u7B63",10,"\u7B6F\u7B70\u7B73\u7B74\u7B76\u7B78\u7B7A\u7B7C\u7B7D\u7B7F\u7B81\u7B82\u7B83\u7B84\u7B86",6,"\u7B8E\u7B8F"],["b980","\u7B91\u7B92\u7B93\u7B96\u7B98\u7B99\u7B9A\u7B9B\u7B9E\u7B9F\u7BA0\u7BA3\u7BA4\u7BA5\u7BAE\u7BAF\u7BB0\u7BB2\u7BB3\u7BB5\u7BB6\u7BB7\u7BB9",7,"\u7BC2\u7BC3\u7BC4\u57C2\u803F\u6897\u5DE5\u653B\u529F\u606D\u9F9A\u4F9B\u8EAC\u516C\u5BAB\u5F13\u5DE9\u6C5E\u62F1\u8D21\u5171\u94A9\u52FE\u6C9F\u82DF\u72D7\u57A2\u6784\u8D2D\u591F\u8F9C\u83C7\u5495\u7B8D\u4F30\u6CBD\u5B64\u59D1\u9F13\u53E4\u86CA\u9AA8\u8C37\u80A1\u6545\u987E\u56FA\u96C7\u522E\u74DC\u5250\u5BE1\u6302\u8902\u4E56\u62D0\u602A\u68FA\u5173\u5B98\u51A0\u89C2\u7BA1\u9986\u7F50\u60EF\u704C\u8D2F\u5149\u5E7F\u901B\u7470\u89C4\u572D\u7845\u5F52\u9F9F\u95FA\u8F68\u9B3C\u8BE1\u7678\u6842\u67DC\u8DEA\u8D35\u523D\u8F8A\u6EDA\u68CD\u9505\u90ED\u56FD\u679C\u88F9\u8FC7\u54C8"],["ba40","\u7BC5\u7BC8\u7BC9\u7BCA\u7BCB\u7BCD\u7BCE\u7BCF\u7BD0\u7BD2\u7BD4",4,"\u7BDB\u7BDC\u7BDE\u7BDF\u7BE0\u7BE2\u7BE3\u7BE4\u7BE7\u7BE8\u7BE9\u7BEB\u7BEC\u7BED\u7BEF\u7BF0\u7BF2",4,"\u7BF8\u7BF9\u7BFA\u7BFB\u7BFD\u7BFF",7,"\u7C08\u7C09\u7C0A\u7C0D\u7C0E\u7C10",5,"\u7C17\u7C18\u7C19"],["ba80","\u7C1A",4,"\u7C20",5,"\u7C28\u7C29\u7C2B",12,"\u7C39",5,"\u7C42\u9AB8\u5B69\u6D77\u6C26\u4EA5\u5BB3\u9A87\u9163\u61A8\u90AF\u97E9\u542B\u6DB5\u5BD2\u51FD\u558A\u7F55\u7FF0\u64BC\u634D\u65F1\u61BE\u608D\u710A\u6C57\u6C49\u592F\u676D\u822A\u58D5\u568E\u8C6A\u6BEB\u90DD\u597D\u8017\u53F7\u6D69\u5475\u559D\u8377\u83CF\u6838\u79BE\u548C\u4F55\u5408\u76D2\u8C89\u9602\u6CB3\u6DB8\u8D6B\u8910\u9E64\u8D3A\u563F\u9ED1\u75D5\u5F88\u72E0\u6068\u54FC\u4EA8\u6A2A\u8861\u6052\u8F70\u54C4\u70D8\u8679\u9E3F\u6D2A\u5B8F\u5F18\u7EA2\u5589\u4FAF\u7334\u543C\u539A\u5019\u540E\u547C\u4E4E\u5FFD\u745A\u58F6\u846B\u80E1\u8774\u72D0\u7CCA\u6E56"],["bb40","\u7C43",9,"\u7C4E",36,"\u7C75",5,"\u7C7E",9],["bb80","\u7C88\u7C8A",6,"\u7C93\u7C94\u7C96\u7C99\u7C9A\u7C9B\u7CA0\u7CA1\u7CA3\u7CA6\u7CA7\u7CA8\u7CA9\u7CAB\u7CAC\u7CAD\u7CAF\u7CB0\u7CB4",4,"\u7CBA\u7CBB\u5F27\u864E\u552C\u62A4\u4E92\u6CAA\u6237\u82B1\u54D7\u534E\u733E\u6ED1\u753B\u5212\u5316\u8BDD\u69D0\u5F8A\u6000\u6DEE\u574F\u6B22\u73AF\u6853\u8FD8\u7F13\u6362\u60A3\u5524\u75EA\u8C62\u7115\u6DA3\u5BA6\u5E7B\u8352\u614C\u9EC4\u78FA\u8757\u7C27\u7687\u51F0\u60F6\u714C\u6643\u5E4C\u604D\u8C0E\u7070\u6325\u8F89\u5FBD\u6062\u86D4\u56DE\u6BC1\u6094\u6167\u5349\u60E0\u6666\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8364\u660F\u5A5A\u9B42\u6D51\u6DF7\u8C41\u6D3B\u4F19\u706B\u83B7\u6216\u60D1\u970D\u8D27\u7978\u51FB\u573E\u57FA\u673A\u7578\u7A3D\u79EF\u7B95"],["bc40","\u7CBF\u7CC0\u7CC2\u7CC3\u7CC4\u7CC6\u7CC9\u7CCB\u7CCE",6,"\u7CD8\u7CDA\u7CDB\u7CDD\u7CDE\u7CE1",6,"\u7CE9",5,"\u7CF0",7,"\u7CF9\u7CFA\u7CFC",13,"\u7D0B",5],["bc80","\u7D11",14,"\u7D21\u7D23\u7D24\u7D25\u7D26\u7D28\u7D29\u7D2A\u7D2C\u7D2D\u7D2E\u7D30",6,"\u808C\u9965\u8FF9\u6FC0\u8BA5\u9E21\u59EC\u7EE9\u7F09\u5409\u6781\u68D8\u8F91\u7C4D\u96C6\u53CA\u6025\u75BE\u6C72\u5373\u5AC9\u7EA7\u6324\u51E0\u810A\u5DF1\u84DF\u6280\u5180\u5B63\u4F0E\u796D\u5242\u60B8\u6D4E\u5BC4\u5BC2\u8BA1\u8BB0\u65E2\u5FCC\u9645\u5993\u7EE7\u7EAA\u5609\u67B7\u5939\u4F73\u5BB6\u52A0\u835A\u988A\u8D3E\u7532\u94BE\u5047\u7A3C\u4EF7\u67B6\u9A7E\u5AC1\u6B7C\u76D1\u575A\u5C16\u7B3A\u95F4\u714E\u517C\u80A9\u8270\u5978\u7F04\u8327\u68C0\u67EC\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u526A\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u7BAD\u4EF6"],["bd40","\u7D37",54,"\u7D6F",7],["bd80","\u7D78",32,"\u5065\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u5EFA\u50F5\u59DC\u5C06\u6D46\u6C5F\u7586\u848B\u6868\u5956\u8BB2\u5320\u9171\u964D\u8549\u6912\u7901\u7126\u80F6\u4EA4\u90CA\u6D47\u9A84\u5A07\u56BC\u6405\u94F0\u77EB\u4FA5\u811A\u72E1\u89D2\u997A\u7F34\u7EDE\u527F\u6559\u9175\u8F7F\u8F83\u53EB\u7A96\u63ED\u63A5\u7686\u79F8\u8857\u9636\u622A\u52AB\u8282\u6854\u6770\u6377\u776B\u7AED\u6D01\u7ED3\u89E3\u59D0\u6212\u85C9\u82A5\u754C\u501F\u4ECB\u75A5\u8BEB\u5C4A\u5DFE\u7B4B\u65A4\u91D1\u4ECA\u6D25\u895F\u7D27\u9526\u4EC5\u8C28\u8FDB\u9773\u664B\u7981\u8FD1\u70EC\u6D78"],["be40","\u7D99",12,"\u7DA7",6,"\u7DAF",42],["be80","\u7DDA",32,"\u5C3D\u52B2\u8346\u5162\u830E\u775B\u6676\u9CB8\u4EAC\u60CA\u7CBE\u7CB3\u7ECF\u4E95\u8B66\u666F\u9888\u9759\u5883\u656C\u955C\u5F84\u75C9\u9756\u7ADF\u7ADE\u51C0\u70AF\u7A98\u63EA\u7A76\u7EA0\u7396\u97ED\u4E45\u7078\u4E5D\u9152\u53A9\u6551\u65E7\u81FC\u8205\u548E\u5C31\u759A\u97A0\u62D8\u72D9\u75BD\u5C45\u9A79\u83CA\u5C40\u5480\u77E9\u4E3E\u6CAE\u805A\u62D2\u636E\u5DE8\u5177\u8DDD\u8E1E\u952F\u4FF1\u53E5\u60E7\u70AC\u5267\u6350\u9E43\u5A1F\u5026\u7737\u5377\u7EE2\u6485\u652B\u6289\u6398\u5014\u7235\u89C9\u51B3\u8BC0\u7EDD\u5747\u83CC\u94A7\u519B\u541B\u5CFB"],["bf40","\u7DFB",62],["bf80","\u7E3A\u7E3C",4,"\u7E42",4,"\u7E48",21,"\u4FCA\u7AE3\u6D5A\u90E1\u9A8F\u5580\u5496\u5361\u54AF\u5F00\u63E9\u6977\u51EF\u6168\u520A\u582A\u52D8\u574E\u780D\u770B\u5EB7\u6177\u7CE0\u625B\u6297\u4EA2\u7095\u8003\u62F7\u70E4\u9760\u5777\u82DB\u67EF\u68F5\u78D5\u9897\u79D1\u58F3\u54B3\u53EF\u6E34\u514B\u523B\u5BA2\u8BFE\u80AF\u5543\u57A6\u6073\u5751\u542D\u7A7A\u6050\u5B54\u63A7\u62A0\u53E3\u6263\u5BC7\u67AF\u54ED\u7A9F\u82E6\u9177\u5E93\u88E4\u5938\u57AE\u630E\u8DE8\u80EF\u5757\u7B77\u4FA9\u5FEB\u5BBD\u6B3E\u5321\u7B50\u72C2\u6846\u77FF\u7736\u65F7\u51B5\u4E8F\u76D4\u5CBF\u7AA5\u8475\u594E\u9B41\u5080"],["c040","\u7E5E",35,"\u7E83",23,"\u7E9C\u7E9D\u7E9E"],["c080","\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EEC\u7EF9\u7F0A\u7F10\u7F1E\u7F37\u7F39\u7F3B",6,"\u7F43\u7F46",9,"\u7F52\u7F53\u9988\u6127\u6E83\u5764\u6606\u6346\u56F0\u62EC\u6269\u5ED3\u9614\u5783\u62C9\u5587\u8721\u814A\u8FA3\u5566\u83B1\u6765\u8D56\u84DD\u5A6A\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u7405\u6994\u72FC\u5ECA\u90CE\u6717\u6D6A\u635E\u52B3\u7262\u8001\u4F6C\u59E5\u916A\u70D9\u6D9D\u52D2\u4E50\u96F7\u956D\u857E\u78CA\u7D2F\u5121\u5792\u64C2\u808B\u7C7B\u6CEA\u68F1\u695E\u51B7\u5398\u68A8\u7281\u9ECE\u7BF1\u72F8\u79BB\u6F13\u7406\u674E\u91CC\u9CA4\u793C\u8389\u8354\u540F\u6817\u4E3D\u5389\u52B1\u783E\u5386\u5229\u5088\u4F8B\u4FD0"],["c140","\u7F56\u7F59\u7F5B\u7F5C\u7F5D\u7F5E\u7F60\u7F63",4,"\u7F6B\u7F6C\u7F6D\u7F6F\u7F70\u7F73\u7F75\u7F76\u7F77\u7F78\u7F7A\u7F7B\u7F7C\u7F7D\u7F7F\u7F80\u7F82",7,"\u7F8B\u7F8D\u7F8F",4,"\u7F95",4,"\u7F9B\u7F9C\u7FA0\u7FA2\u7FA3\u7FA5\u7FA6\u7FA8",6,"\u7FB1"],["c180","\u7FB3",4,"\u7FBA\u7FBB\u7FBE\u7FC0\u7FC2\u7FC3\u7FC4\u7FC6\u7FC7\u7FC8\u7FC9\u7FCB\u7FCD\u7FCF",4,"\u7FD6\u7FD7\u7FD9",5,"\u7FE2\u7FE3\u75E2\u7ACB\u7C92\u6CA5\u96B6\u529B\u7483\u54E9\u4FE9\u8054\u83B2\u8FDE\u9570\u5EC9\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u7CAE\u51C9\u6881\u7CB1\u826F\u4E24\u8F86\u91CF\u667E\u4EAE\u8C05\u64A9\u804A\u50DA\u7597\u71CE\u5BE5\u8FBD\u6F66\u4E86\u6482\u9563\u5ED6\u6599\u5217\u88C2\u70C8\u52A3\u730E\u7433\u6797\u78F7\u9716\u4E34\u90BB\u9CDE\u6DCB\u51DB\u8D41\u541D\u62CE\u73B2\u83F1\u96F6\u9F84\u94C3\u4F36\u7F9A\u51CC\u7075\u9675\u5CAD\u9886\u53E6\u4EE4\u6E9C\u7409\u69B4\u786B\u998F\u7559\u5218\u7624\u6D41\u67F3\u516D\u9F99\u804B\u5499\u7B3C\u7ABF"],["c240","\u7FE4\u7FE7\u7FE8\u7FEA\u7FEB\u7FEC\u7FED\u7FEF\u7FF2\u7FF4",6,"\u7FFD\u7FFE\u7FFF\u8002\u8007\u8008\u8009\u800A\u800E\u800F\u8011\u8013\u801A\u801B\u801D\u801E\u801F\u8021\u8023\u8024\u802B",5,"\u8032\u8034\u8039\u803A\u803C\u803E\u8040\u8041\u8044\u8045\u8047\u8048\u8049\u804E\u804F\u8050\u8051\u8053\u8055\u8056\u8057"],["c280","\u8059\u805B",13,"\u806B",5,"\u8072",11,"\u9686\u5784\u62E2\u9647\u697C\u5A04\u6402\u7BD3\u6F0F\u964B\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u9E93\u788C\u9732\u8DEF\u8D42\u9E7F\u6F5E\u7984\u5F55\u9646\u622E\u9A74\u5415\u94DD\u4FA3\u65C5\u5C65\u5C61\u7F15\u8651\u6C2F\u5F8B\u7387\u6EE4\u7EFF\u5CE6\u631B\u5B6A\u6EE6\u5375\u4E71\u63A0\u7565\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u841D\u87BA\u7F57\u903B\u9523\u7BA9\u9AA1\u88F8\u843D\u6D1B\u9A86\u7EDC\u5988\u9EBB\u739B\u7801\u8682\u9A6C\u9A82\u561B\u5417\u57CB\u4E70\u9EA6\u5356\u8FC8\u8109\u7792\u9992\u86EE\u6EE1\u8513\u66FC\u6162\u6F2B"],["c340","\u807E\u8081\u8082\u8085\u8088\u808A\u808D",5,"\u8094\u8095\u8097\u8099\u809E\u80A3\u80A6\u80A7\u80A8\u80AC\u80B0\u80B3\u80B5\u80B6\u80B8\u80B9\u80BB\u80C5\u80C7",4,"\u80CF",6,"\u80D8\u80DF\u80E0\u80E2\u80E3\u80E6\u80EE\u80F5\u80F7\u80F9\u80FB\u80FE\u80FF\u8100\u8101\u8103\u8104\u8105\u8107\u8108\u810B"],["c380","\u810C\u8115\u8117\u8119\u811B\u811C\u811D\u811F",12,"\u812D\u812E\u8130\u8133\u8134\u8135\u8137\u8139",4,"\u813F\u8C29\u8292\u832B\u76F2\u6C13\u5FD9\u83BD\u732B\u8305\u951A\u6BDB\u77DB\u94C6\u536F\u8302\u5192\u5E3D\u8C8C\u8D38\u4E48\u73AB\u679A\u6885\u9176\u9709\u7164\u6CA1\u7709\u5A92\u9541\u6BCF\u7F8E\u6627\u5BD0\u59B9\u5A9A\u95E8\u95F7\u4EEC\u840C\u8499\u6AAC\u76DF\u9530\u731B\u68A6\u5B5F\u772F\u919A\u9761\u7CDC\u8FF7\u8C1C\u5F25\u7C73\u79D8\u89C5\u6CCC\u871C\u5BC6\u5E42\u68C9\u7720\u7EF5\u5195\u514D\u52C9\u5A29\u7F05\u9762\u82D7\u63CF\u7784\u85D0\u79D2\u6E3A\u5E99\u5999\u8511\u706D\u6C11\u62BF\u76BF\u654F\u60AF\u95FD\u660E\u879F\u9E23\u94ED\u540D\u547D\u8C2C\u6478"],["c440","\u8140",5,"\u8147\u8149\u814D\u814E\u814F\u8152\u8156\u8157\u8158\u815B",4,"\u8161\u8162\u8163\u8164\u8166\u8168\u816A\u816B\u816C\u816F\u8172\u8173\u8175\u8176\u8177\u8178\u8181\u8183",4,"\u8189\u818B\u818C\u818D\u818E\u8190\u8192",5,"\u8199\u819A\u819E",4,"\u81A4\u81A5"],["c480","\u81A7\u81A9\u81AB",7,"\u81B4",5,"\u81BC\u81BD\u81BE\u81BF\u81C4\u81C5\u81C7\u81C8\u81C9\u81CB\u81CD",6,"\u6479\u8611\u6A21\u819C\u78E8\u6469\u9B54\u62B9\u672B\u83AB\u58A8\u9ED8\u6CAB\u6F20\u5BDE\u964C\u8C0B\u725F\u67D0\u62C7\u7261\u4EA9\u59C6\u6BCD\u5893\u66AE\u5E55\u52DF\u6155\u6728\u76EE\u7766\u7267\u7A46\u62FF\u54EA\u5450\u94A0\u90A3\u5A1C\u7EB3\u6C16\u4E43\u5976\u8010\u5948\u5357\u7537\u96BE\u56CA\u6320\u8111\u607C\u95F9\u6DD6\u5462\u9981\u5185\u5AE9\u80FD\u59AE\u9713\u502A\u6CE5\u5C3C\u62DF\u4F60\u533F\u817B\u9006\u6EBA\u852B\u62C8\u5E74\u78BE\u64B5\u637B\u5FF5\u5A18\u917F\u9E1F\u5C3F\u634F\u8042\u5B7D\u556E\u954A\u954D\u6D85\u60A8\u67E0\u72DE\u51DD\u5B81"],["c540","\u81D4",14,"\u81E4\u81E5\u81E6\u81E8\u81E9\u81EB\u81EE",4,"\u81F5",5,"\u81FD\u81FF\u8203\u8207",4,"\u820E\u820F\u8211\u8213\u8215",5,"\u821D\u8220\u8224\u8225\u8226\u8227\u8229\u822E\u8232\u823A\u823C\u823D\u823F"],["c580","\u8240\u8241\u8242\u8243\u8245\u8246\u8248\u824A\u824C\u824D\u824E\u8250",7,"\u8259\u825B\u825C\u825D\u825E\u8260",7,"\u8269\u62E7\u6CDE\u725B\u626D\u94AE\u7EBD\u8113\u6D53\u519C\u5F04\u5974\u52AA\u6012\u5973\u6696\u8650\u759F\u632A\u61E6\u7CEF\u8BFA\u54E6\u6B27\u9E25\u6BB4\u85D5\u5455\u5076\u6CA4\u556A\u8DB4\u722C\u5E15\u6015\u7436\u62CD\u6392\u724C\u5F98\u6E43\u6D3E\u6500\u6F58\u76D8\u78D0\u76FC\u7554\u5224\u53DB\u4E53\u5E9E\u65C1\u802A\u80D6\u629B\u5486\u5228\u70AE\u888D\u8DD1\u6CE1\u5478\u80DA\u57F9\u88F4\u8D54\u966A\u914D\u4F69\u6C9B\u55B7\u76C6\u7830\u62A8\u70F9\u6F8E\u5F6D\u84EC\u68DA\u787C\u7BF7\u81A8\u670B\u9E4F\u6367\u78B0\u576F\u7812\u9739\u6279\u62AB\u5288\u7435\u6BD7"],["c640","\u826A\u826B\u826C\u826D\u8271\u8275\u8276\u8277\u8278\u827B\u827C\u8280\u8281\u8283\u8285\u8286\u8287\u8289\u828C\u8290\u8293\u8294\u8295\u8296\u829A\u829B\u829E\u82A0\u82A2\u82A3\u82A7\u82B2\u82B5\u82B6\u82BA\u82BB\u82BC\u82BF\u82C0\u82C2\u82C3\u82C5\u82C6\u82C9\u82D0\u82D6\u82D9\u82DA\u82DD\u82E2\u82E7\u82E8\u82E9\u82EA\u82EC\u82ED\u82EE\u82F0\u82F2\u82F3\u82F5\u82F6\u82F8"],["c680","\u82FA\u82FC",4,"\u830A\u830B\u830D\u8310\u8312\u8313\u8316\u8318\u8319\u831D",9,"\u8329\u832A\u832E\u8330\u8332\u8337\u833B\u833D\u5564\u813E\u75B2\u76AE\u5339\u75DE\u50FB\u5C41\u8B6C\u7BC7\u504F\u7247\u9A97\u98D8\u6F02\u74E2\u7968\u6487\u77A5\u62FC\u9891\u8D2B\u54C1\u8058\u4E52\u576A\u82F9\u840D\u5E73\u51ED\u74F6\u8BC4\u5C4F\u5761\u6CFC\u9887\u5A46\u7834\u9B44\u8FEB\u7C95\u5256\u6251\u94FA\u4EC6\u8386\u8461\u83E9\u84B2\u57D4\u6734\u5703\u666E\u6D66\u8C31\u66DD\u7011\u671F\u6B3A\u6816\u621A\u59BB\u4E03\u51C4\u6F06\u67D2\u6C8F\u5176\u68CB\u5947\u6B67\u7566\u5D0E\u8110\u9F50\u65D7\u7948\u7941\u9A91\u8D77\u5C82\u4E5E\u4F01\u542F\u5951\u780C\u5668\u6C14\u8FC4\u5F03\u6C7D\u6CE3\u8BAB\u6390"],["c740","\u833E\u833F\u8341\u8342\u8344\u8345\u8348\u834A",4,"\u8353\u8355",4,"\u835D\u8362\u8370",6,"\u8379\u837A\u837E",6,"\u8387\u8388\u838A\u838B\u838C\u838D\u838F\u8390\u8391\u8394\u8395\u8396\u8397\u8399\u839A\u839D\u839F\u83A1",6,"\u83AC\u83AD\u83AE"],["c780","\u83AF\u83B5\u83BB\u83BE\u83BF\u83C2\u83C3\u83C4\u83C6\u83C8\u83C9\u83CB\u83CD\u83CE\u83D0\u83D1\u83D2\u83D3\u83D5\u83D7\u83D9\u83DA\u83DB\u83DE\u83E2\u83E3\u83E4\u83E6\u83E7\u83E8\u83EB\u83EC\u83ED\u6070\u6D3D\u7275\u6266\u948E\u94C5\u5343\u8FC1\u7B7E\u4EDF\u8C26\u4E7E\u9ED4\u94B1\u94B3\u524D\u6F5C\u9063\u6D45\u8C34\u5811\u5D4C\u6B20\u6B49\u67AA\u545B\u8154\u7F8C\u5899\u8537\u5F3A\u62A2\u6A47\u9539\u6572\u6084\u6865\u77A7\u4E54\u4FA8\u5DE7\u9798\u64AC\u7FD8\u5CED\u4FCF\u7A8D\u5207\u8304\u4E14\u602F\u7A83\u94A6\u4FB5\u4EB2\u79E6\u7434\u52E4\u82B9\u64D2\u79BD\u5BDD\u6C81\u9752\u8F7B\u6C22\u503E\u537F\u6E05\u64CE\u6674\u6C30\u60C5\u9877\u8BF7\u5E86\u743C\u7A77\u79CB\u4E18\u90B1\u7403\u6C42\u56DA\u914B\u6CC5\u8D8B\u533A\u86C6\u66F2\u8EAF\u5C48\u9A71\u6E20"],["c840","\u83EE\u83EF\u83F3",4,"\u83FA\u83FB\u83FC\u83FE\u83FF\u8400\u8402\u8405\u8407\u8408\u8409\u840A\u8410\u8412",5,"\u8419\u841A\u841B\u841E",5,"\u8429",7,"\u8432",5,"\u8439\u843A\u843B\u843E",7,"\u8447\u8448\u8449"],["c880","\u844A",6,"\u8452",4,"\u8458\u845D\u845E\u845F\u8460\u8462\u8464",4,"\u846A\u846E\u846F\u8470\u8472\u8474\u8477\u8479\u847B\u847C\u53D6\u5A36\u9F8B\u8DA3\u53BB\u5708\u98A7\u6743\u919B\u6CC9\u5168\u75CA\u62F3\u72AC\u5238\u529D\u7F3A\u7094\u7638\u5374\u9E4A\u69B7\u786E\u96C0\u88D9\u7FA4\u7136\u71C3\u5189\u67D3\u74E4\u58E4\u6518\u56B7\u8BA9\u9976\u6270\u7ED5\u60F9\u70ED\u58EC\u4EC1\u4EBA\u5FCD\u97E7\u4EFB\u8BA4\u5203\u598A\u7EAB\u6254\u4ECD\u65E5\u620E\u8338\u84C9\u8363\u878D\u7194\u6EB6\u5BB9\u7ED2\u5197\u63C9\u67D4\u8089\u8339\u8815\u5112\u5B7A\u5982\u8FB1\u4E73\u6C5D\u5165\u8925\u8F6F\u962E\u854A\u745E\u9510\u95F0\u6DA6\u82E5\u5F31\u6492\u6D12\u8428\u816E\u9CC3\u585E\u8D5B\u4E09\u53C1"],["c940","\u847D",4,"\u8483\u8484\u8485\u8486\u848A\u848D\u848F",7,"\u8498\u849A\u849B\u849D\u849E\u849F\u84A0\u84A2",12,"\u84B0\u84B1\u84B3\u84B5\u84B6\u84B7\u84BB\u84BC\u84BE\u84C0\u84C2\u84C3\u84C5\u84C6\u84C7\u84C8\u84CB\u84CC\u84CE\u84CF\u84D2\u84D4\u84D5\u84D7"],["c980","\u84D8",4,"\u84DE\u84E1\u84E2\u84E4\u84E7",4,"\u84ED\u84EE\u84EF\u84F1",10,"\u84FD\u84FE\u8500\u8501\u8502\u4F1E\u6563\u6851\u55D3\u4E27\u6414\u9A9A\u626B\u5AC2\u745F\u8272\u6DA9\u68EE\u50E7\u838E\u7802\u6740\u5239\u6C99\u7EB1\u50BB\u5565\u715E\u7B5B\u6652\u73CA\u82EB\u6749\u5C71\u5220\u717D\u886B\u95EA\u9655\u64C5\u8D61\u81B3\u5584\u6C55\u6247\u7F2E\u5892\u4F24\u5546\u8D4F\u664C\u4E0A\u5C1A\u88F3\u68A2\u634E\u7A0D\u70E7\u828D\u52FA\u97F6\u5C11\u54E8\u90B5\u7ECD\u5962\u8D4A\u86C7\u820C\u820D\u8D66\u6444\u5C04\u6151\u6D89\u793E\u8BBE\u7837\u7533\u547B\u4F38\u8EAB\u6DF1\u5A20\u7EC5\u795E\u6C88\u5BA1\u5A76\u751A\u80BE\u614E\u6E17\u58F0\u751F\u7525\u7272\u5347\u7EF3"],["ca40","\u8503",8,"\u850D\u850E\u850F\u8510\u8512\u8514\u8515\u8516\u8518\u8519\u851B\u851C\u851D\u851E\u8520\u8522",8,"\u852D",9,"\u853E",4,"\u8544\u8545\u8546\u8547\u854B",10],["ca80","\u8557\u8558\u855A\u855B\u855C\u855D\u855F",4,"\u8565\u8566\u8567\u8569",8,"\u8573\u8575\u8576\u8577\u8578\u857C\u857D\u857F\u8580\u8581\u7701\u76DB\u5269\u80DC\u5723\u5E08\u5931\u72EE\u65BD\u6E7F\u8BD7\u5C38\u8671\u5341\u77F3\u62FE\u65F6\u4EC0\u98DF\u8680\u5B9E\u8BC6\u53F2\u77E2\u4F7F\u5C4E\u9A76\u59CB\u5F0F\u793A\u58EB\u4E16\u67FF\u4E8B\u62ED\u8A93\u901D\u52BF\u662F\u55DC\u566C\u9002\u4ED5\u4F8D\u91CA\u9970\u6C0F\u5E02\u6043\u5BA4\u89C6\u8BD5\u6536\u624B\u9996\u5B88\u5BFF\u6388\u552E\u53D7\u7626\u517D\u852C\u67A2\u68B3\u6B8A\u6292\u8F93\u53D4\u8212\u6DD1\u758F\u4E66\u8D4E\u5B70\u719F\u85AF\u6691\u66D9\u7F72\u8700\u9ECD\u9F20\u5C5E\u672F\u8FF0\u6811\u675F\u620D\u7AD6\u5885\u5EB6\u6570\u6F31"],["cb40","\u8582\u8583\u8586\u8588",6,"\u8590",10,"\u859D",6,"\u85A5\u85A6\u85A7\u85A9\u85AB\u85AC\u85AD\u85B1",5,"\u85B8\u85BA",6,"\u85C2",6,"\u85CA",4,"\u85D1\u85D2"],["cb80","\u85D4\u85D6",5,"\u85DD",6,"\u85E5\u85E6\u85E7\u85E8\u85EA",14,"\u6055\u5237\u800D\u6454\u8870\u7529\u5E05\u6813\u62F4\u971C\u53CC\u723D\u8C01\u6C34\u7761\u7A0E\u542E\u77AC\u987A\u821C\u8BF4\u7855\u6714\u70C1\u65AF\u6495\u5636\u601D\u79C1\u53F8\u4E1D\u6B7B\u8086\u5BFA\u55E3\u56DB\u4F3A\u4F3C\u9972\u5DF3\u677E\u8038\u6002\u9882\u9001\u5B8B\u8BBC\u8BF5\u641C\u8258\u64DE\u55FD\u82CF\u9165\u4FD7\u7D20\u901F\u7C9F\u50F3\u5851\u6EAF\u5BBF\u8BC9\u8083\u9178\u849C\u7B97\u867D\u968B\u968F\u7EE5\u9AD3\u788E\u5C81\u7A57\u9042\u96A7\u795F\u5B59\u635F\u7B0B\u84D1\u68AD\u5506\u7F29\u7410\u7D22\u9501\u6240\u584C\u4ED6\u5B83\u5979\u5854"],["cc40","\u85F9\u85FA\u85FC\u85FD\u85FE\u8600",4,"\u8606",10,"\u8612\u8613\u8614\u8615\u8617",15,"\u8628\u862A",13,"\u8639\u863A\u863B\u863D\u863E\u863F\u8640"],["cc80","\u8641",11,"\u8652\u8653\u8655",4,"\u865B\u865C\u865D\u865F\u8660\u8661\u8663",7,"\u736D\u631E\u8E4B\u8E0F\u80CE\u82D4\u62AC\u53F0\u6CF0\u915E\u592A\u6001\u6C70\u574D\u644A\u8D2A\u762B\u6EE9\u575B\u6A80\u75F0\u6F6D\u8C2D\u8C08\u5766\u6BEF\u8892\u78B3\u63A2\u53F9\u70AD\u6C64\u5858\u642A\u5802\u68E0\u819B\u5510\u7CD6\u5018\u8EBA\u6DCC\u8D9F\u70EB\u638F\u6D9B\u6ED4\u7EE6\u8404\u6843\u9003\u6DD8\u9676\u8BA8\u5957\u7279\u85E4\u817E\u75BC\u8A8A\u68AF\u5254\u8E22\u9511\u63D0\u9898\u8E44\u557C\u4F53\u66FF\u568F\u60D5\u6D95\u5243\u5C49\u5929\u6DFB\u586B\u7530\u751C\u606C\u8214\u8146\u6311\u6761\u8FE2\u773A\u8DF3\u8D34\u94C1\u5E16\u5385\u542C\u70C3"],["cd40","\u866D\u866F\u8670\u8672",6,"\u8683",6,"\u868E",4,"\u8694\u8696",5,"\u869E",4,"\u86A5\u86A6\u86AB\u86AD\u86AE\u86B2\u86B3\u86B7\u86B8\u86B9\u86BB",4,"\u86C1\u86C2\u86C3\u86C5\u86C8\u86CC\u86CD\u86D2\u86D3\u86D5\u86D6\u86D7\u86DA\u86DC"],["cd80","\u86DD\u86E0\u86E1\u86E2\u86E3\u86E5\u86E6\u86E7\u86E8\u86EA\u86EB\u86EC\u86EF\u86F5\u86F6\u86F7\u86FA\u86FB\u86FC\u86FD\u86FF\u8701\u8704\u8705\u8706\u870B\u870C\u870E\u870F\u8710\u8711\u8714\u8716\u6C40\u5EF7\u505C\u4EAD\u5EAD\u633A\u8247\u901A\u6850\u916E\u77B3\u540C\u94DC\u5F64\u7AE5\u6876\u6345\u7B52\u7EDF\u75DB\u5077\u6295\u5934\u900F\u51F8\u79C3\u7A81\u56FE\u5F92\u9014\u6D82\u5C60\u571F\u5410\u5154\u6E4D\u56E2\u63A8\u9893\u817F\u8715\u892A\u9000\u541E\u5C6F\u81C0\u62D6\u6258\u8131\u9E35\u9640\u9A6E\u9A7C\u692D\u59A5\u62D3\u553E\u6316\u54C7\u86D9\u6D3C\u5A03\u74E6\u889C\u6B6A\u5916\u8C4C\u5F2F\u6E7E\u73A9\u987D\u4E38\u70F7\u5B8C\u7897\u633D\u665A\u7696\u60CB\u5B9B\u5A49\u4E07\u8155\u6C6A\u738B\u4EA1\u6789\u7F51\u5F80\u65FA\u671B\u5FD8\u5984\u5A01"],["ce40","\u8719\u871B\u871D\u871F\u8720\u8724\u8726\u8727\u8728\u872A\u872B\u872C\u872D\u872F\u8730\u8732\u8733\u8735\u8736\u8738\u8739\u873A\u873C\u873D\u8740",6,"\u874A\u874B\u874D\u874F\u8750\u8751\u8752\u8754\u8755\u8756\u8758\u875A",5,"\u8761\u8762\u8766",7,"\u876F\u8771\u8772\u8773\u8775"],["ce80","\u8777\u8778\u8779\u877A\u877F\u8780\u8781\u8784\u8786\u8787\u8789\u878A\u878C\u878E",4,"\u8794\u8795\u8796\u8798",6,"\u87A0",4,"\u5DCD\u5FAE\u5371\u97E6\u8FDD\u6845\u56F4\u552F\u60DF\u4E3A\u6F4D\u7EF4\u82C7\u840E\u59D4\u4F1F\u4F2A\u5C3E\u7EAC\u672A\u851A\u5473\u754F\u80C3\u5582\u9B4F\u4F4D\u6E2D\u8C13\u5C09\u6170\u536B\u761F\u6E29\u868A\u6587\u95FB\u7EB9\u543B\u7A33\u7D0A\u95EE\u55E1\u7FC1\u74EE\u631D\u8717\u6DA1\u7A9D\u6211\u65A1\u5367\u63E1\u6C83\u5DEB\u545C\u94A8\u4E4C\u6C61\u8BEC\u5C4B\u65E0\u829C\u68A7\u543E\u5434\u6BCB\u6B66\u4E94\u6342\u5348\u821E\u4F0D\u4FAE\u575E\u620A\u96FE\u6664\u7269\u52FF\u52A1\u609F\u8BEF\u6614\u7199\u6790\u897F\u7852\u77FD\u6670\u563B\u5438\u9521\u727A"],["cf40","\u87A5\u87A6\u87A7\u87A9\u87AA\u87AE\u87B0\u87B1\u87B2\u87B4\u87B6\u87B7\u87B8\u87B9\u87BB\u87BC\u87BE\u87BF\u87C1",4,"\u87C7\u87C8\u87C9\u87CC",4,"\u87D4",6,"\u87DC\u87DD\u87DE\u87DF\u87E1\u87E2\u87E3\u87E4\u87E6\u87E7\u87E8\u87E9\u87EB\u87EC\u87ED\u87EF",9],["cf80","\u87FA\u87FB\u87FC\u87FD\u87FF\u8800\u8801\u8802\u8804",5,"\u880B",7,"\u8814\u8817\u8818\u8819\u881A\u881C",4,"\u8823\u7A00\u606F\u5E0C\u6089\u819D\u5915\u60DC\u7184\u70EF\u6EAA\u6C50\u7280\u6A84\u88AD\u5E2D\u4E60\u5AB3\u559C\u94E3\u6D17\u7CFB\u9699\u620F\u7EC6\u778E\u867E\u5323\u971E\u8F96\u6687\u5CE1\u4FA0\u72ED\u4E0B\u53A6\u590F\u5413\u6380\u9528\u5148\u4ED9\u9C9C\u7EA4\u54B8\u8D24\u8854\u8237\u95F2\u6D8E\u5F26\u5ACC\u663E\u9669\u73B0\u732E\u53BF\u817A\u9985\u7FA1\u5BAA\u9677\u9650\u7EBF\u76F8\u53A2\u9576\u9999\u7BB1\u8944\u6E58\u4E61\u7FD4\u7965\u8BE6\u60F3\u54CD\u4EAB\u9879\u5DF7\u6A61\u50CF\u5411\u8C61\u8427\u785D\u9704\u524A\u54EE\u56A3\u9500\u6D88\u5BB5\u6DC6\u6653"],["d040","\u8824",13,"\u8833",5,"\u883A\u883B\u883D\u883E\u883F\u8841\u8842\u8843\u8846",5,"\u884E",5,"\u8855\u8856\u8858\u885A",6,"\u8866\u8867\u886A\u886D\u886F\u8871\u8873\u8874\u8875\u8876\u8878\u8879\u887A"],["d080","\u887B\u887C\u8880\u8883\u8886\u8887\u8889\u888A\u888C\u888E\u888F\u8890\u8891\u8893\u8894\u8895\u8897",4,"\u889D",4,"\u88A3\u88A5",5,"\u5C0F\u5B5D\u6821\u8096\u5578\u7B11\u6548\u6954\u4E9B\u6B47\u874E\u978B\u534F\u631F\u643A\u90AA\u659C\u80C1\u8C10\u5199\u68B0\u5378\u87F9\u61C8\u6CC4\u6CFB\u8C22\u5C51\u85AA\u82AF\u950C\u6B23\u8F9B\u65B0\u5FFB\u5FC3\u4FE1\u8845\u661F\u8165\u7329\u60FA\u5174\u5211\u578B\u5F62\u90A2\u884C\u9192\u5E78\u674F\u6027\u59D3\u5144\u51F6\u80F8\u5308\u6C79\u96C4\u718A\u4F11\u4FEE\u7F9E\u673D\u55C5\u9508\u79C0\u8896\u7EE3\u589F\u620C\u9700\u865A\u5618\u987B\u5F90\u8BB8\u84C4\u9157\u53D9\u65ED\u5E8F\u755C\u6064\u7D6E\u5A7F\u7EEA\u7EED\u8F69\u55A7\u5BA3\u60AC\u65CB\u7384"],["d140","\u88AC\u88AE\u88AF\u88B0\u88B2",4,"\u88B8\u88B9\u88BA\u88BB\u88BD\u88BE\u88BF\u88C0\u88C3\u88C4\u88C7\u88C8\u88CA\u88CB\u88CC\u88CD\u88CF\u88D0\u88D1\u88D3\u88D6\u88D7\u88DA",4,"\u88E0\u88E1\u88E6\u88E7\u88E9",6,"\u88F2\u88F5\u88F6\u88F7\u88FA\u88FB\u88FD\u88FF\u8900\u8901\u8903",5],["d180","\u8909\u890B",4,"\u8911\u8914",4,"\u891C",4,"\u8922\u8923\u8924\u8926\u8927\u8928\u8929\u892C\u892D\u892E\u892F\u8931\u8932\u8933\u8935\u8937\u9009\u7663\u7729\u7EDA\u9774\u859B\u5B66\u7A74\u96EA\u8840\u52CB\u718F\u5FAA\u65EC\u8BE2\u5BFB\u9A6F\u5DE1\u6B89\u6C5B\u8BAD\u8BAF\u900A\u8FC5\u538B\u62BC\u9E26\u9E2D\u5440\u4E2B\u82BD\u7259\u869C\u5D16\u8859\u6DAF\u96C5\u54D1\u4E9A\u8BB6\u7109\u54BD\u9609\u70DF\u6DF9\u76D0\u4E25\u7814\u8712\u5CA9\u5EF6\u8A00\u989C\u960E\u708E\u6CBF\u5944\u63A9\u773C\u884D\u6F14\u8273\u5830\u71D5\u538C\u781A\u96C1\u5501\u5F66\u7130\u5BB4\u8C1A\u9A8C\u6B83\u592E\u9E2F\u79E7\u6768\u626C\u4F6F\u75A1\u7F8A\u6D0B\u9633\u6C27\u4EF0\u75D2\u517B\u6837\u6F3E\u9080\u8170\u5996\u7476"],["d240","\u8938",8,"\u8942\u8943\u8945",24,"\u8960",5,"\u8967",19,"\u897C"],["d280","\u897D\u897E\u8980\u8982\u8984\u8985\u8987",26,"\u6447\u5C27\u9065\u7A91\u8C23\u59DA\u54AC\u8200\u836F\u8981\u8000\u6930\u564E\u8036\u7237\u91CE\u51B6\u4E5F\u9875\u6396\u4E1A\u53F6\u66F3\u814B\u591C\u6DB2\u4E00\u58F9\u533B\u63D6\u94F1\u4F9D\u4F0A\u8863\u9890\u5937\u9057\u79FB\u4EEA\u80F0\u7591\u6C82\u5B9C\u59E8\u5F5D\u6905\u8681\u501A\u5DF2\u4E59\u77E3\u4EE5\u827A\u6291\u6613\u9091\u5C79\u4EBF\u5F79\u81C6\u9038\u8084\u75AB\u4EA6\u88D4\u610F\u6BC5\u5FC6\u4E49\u76CA\u6EA2\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7FFC\u7FCC\u7ECE\u8335\u836B\u56E0\u6BB7\u97F3\u9634\u59FB\u541F\u94F6\u6DEB\u5BC5\u996E\u5C39\u5F15\u9690"],["d340","\u89A2",30,"\u89C3\u89CD\u89D3\u89D4\u89D5\u89D7\u89D8\u89D9\u89DB\u89DD\u89DF\u89E0\u89E1\u89E2\u89E4\u89E7\u89E8\u89E9\u89EA\u89EC\u89ED\u89EE\u89F0\u89F1\u89F2\u89F4",6],["d380","\u89FB",4,"\u8A01",5,"\u8A08",21,"\u5370\u82F1\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8FCE\u8D62\u76C8\u5F71\u9896\u786C\u6620\u54DF\u62E5\u4F63\u81C3\u75C8\u5EB8\u96CD\u8E0A\u86F9\u548F\u6CF3\u6D8C\u6C38\u607F\u52C7\u7528\u5E7D\u4F18\u60A0\u5FE7\u5C24\u7531\u90AE\u94C0\u72B9\u6CB9\u6E38\u9149\u6709\u53CB\u53F3\u4F51\u91C9\u8BF1\u53C8\u5E7C\u8FC2\u6DE4\u4E8E\u76C2\u6986\u865E\u611A\u8206\u4F59\u4FDE\u903E\u9C7C\u6109\u6E1D\u6E14\u9685\u4E88\u5A31\u96E8\u4E0E\u5C7F\u79B9\u5B87\u8BED\u7FBD\u7389\u57DF\u828B\u90C1\u5401\u9047\u55BB\u5CEA\u5FA1\u6108\u6B32\u72F1\u80B2\u8A89"],["d440","\u8A1E",31,"\u8A3F",8,"\u8A49",21],["d480","\u8A5F",25,"\u8A7A",6,"\u6D74\u5BD3\u88D5\u9884\u8C6B\u9A6D\u9E33\u6E0A\u51A4\u5143\u57A3\u8881\u539F\u63F4\u8F95\u56ED\u5458\u5706\u733F\u6E90\u7F18\u8FDC\u82D1\u613F\u6028\u9662\u66F0\u7EA6\u8D8A\u8DC3\u94A5\u5CB3\u7CA4\u6708\u60A6\u9605\u8018\u4E91\u90E7\u5300\u9668\u5141\u8FD0\u8574\u915D\u6655\u97F5\u5B55\u531D\u7838\u6742\u683D\u54C9\u707E\u5BB0\u8F7D\u518D\u5728\u54B1\u6512\u6682\u8D5E\u8D43\u810F\u846C\u906D\u7CDF\u51FF\u85FB\u67A3\u65E9\u6FA1\u86A4\u8E81\u566A\u9020\u7682\u7076\u71E5\u8D23\u62E9\u5219\u6CFD\u8D3C\u600E\u589E\u618E\u66FE\u8D60\u624E\u55B3\u6E23\u672D\u8F67"],["d540","\u8A81",7,"\u8A8B",7,"\u8A94",46],["d580","\u8AC3",32,"\u94E1\u95F8\u7728\u6805\u69A8\u548B\u4E4D\u70B8\u8BC8\u6458\u658B\u5B85\u7A84\u503A\u5BE8\u77BB\u6BE1\u8A79\u7C98\u6CBE\u76CF\u65A9\u8F97\u5D2D\u5C55\u8638\u6808\u5360\u6218\u7AD9\u6E5B\u7EFD\u6A1F\u7AE0\u5F70\u6F33\u5F20\u638C\u6DA8\u6756\u4E08\u5E10\u8D26\u4ED7\u80C0\u7634\u969C\u62DB\u662D\u627E\u6CBC\u8D75\u7167\u7F69\u5146\u8087\u53EC\u906E\u6298\u54F2\u86F0\u8F99\u8005\u9517\u8517\u8FD9\u6D59\u73CD\u659F\u771F\u7504\u7827\u81FB\u8D1E\u9488\u4FA6\u6795\u75B9\u8BCA\u9707\u632F\u9547\u9635\u84B8\u6323\u7741\u5F81\u72F0\u4E89\u6014\u6574\u62EF\u6B63\u653F"],["d640","\u8AE4",34,"\u8B08",27],["d680","\u8B24\u8B25\u8B27",30,"\u5E27\u75C7\u90D1\u8BC1\u829D\u679D\u652F\u5431\u8718\u77E5\u80A2\u8102\u6C41\u4E4B\u7EC7\u804C\u76F4\u690D\u6B96\u6267\u503C\u4F84\u5740\u6307\u6B62\u8DBE\u53EA\u65E8\u7EB8\u5FD7\u631A\u63B7\u81F3\u81F4\u7F6E\u5E1C\u5CD9\u5236\u667A\u79E9\u7A1A\u8D28\u7099\u75D4\u6EDE\u6CBB\u7A92\u4E2D\u76C5\u5FE0\u949F\u8877\u7EC8\u79CD\u80BF\u91CD\u4EF2\u4F17\u821F\u5468\u5DDE\u6D32\u8BCC\u7CA5\u8F74\u8098\u5E1A\u5492\u76B1\u5B99\u663C\u9AA4\u73E0\u682A\u86DB\u6731\u732A\u8BF8\u8BDB\u9010\u7AF9\u70DB\u716E\u62C4\u77A9\u5631\u4E3B\u8457\u67F1\u52A9\u86C0\u8D2E\u94F8\u7B51"],["d740","\u8B46",31,"\u8B67",4,"\u8B6D",25],["d780","\u8B87",24,"\u8BAC\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C09\u8C1E\u4F4F\u6CE8\u795D\u9A7B\u6293\u722A\u62FD\u4E13\u7816\u8F6C\u64B0\u8D5A\u7BC6\u6869\u5E84\u88C5\u5986\u649E\u58EE\u72B6\u690E\u9525\u8FFD\u8D58\u5760\u7F00\u8C06\u51C6\u6349\u62D9\u5353\u684C\u7422\u8301\u914C\u5544\u7740\u707C\u6D4A\u5179\u54A8\u8D44\u59FF\u6ECB\u6DC4\u5B5C\u7D2B\u4ED4\u7C7D\u6ED3\u5B50\u81EA\u6E0D\u5B57\u9B03\u68D5\u8E2A\u5B97\u7EFC\u603B\u7EB5\u90B9\u8D70\u594F\u63CD\u79DF\u8DB3\u5352\u65CF\u7956\u8BC5\u963B\u7EC4\u94BB\u7E82\u5634\u9189\u6700\u7F6A\u5C0A\u9075\u6628\u5DE6\u4F50\u67DE\u505A\u4F5C\u5750\u5EA7"],["d840","\u8C38",8,"\u8C42\u8C43\u8C44\u8C45\u8C48\u8C4A\u8C4B\u8C4D",7,"\u8C56\u8C57\u8C58\u8C59\u8C5B",5,"\u8C63",6,"\u8C6C",6,"\u8C74\u8C75\u8C76\u8C77\u8C7B",6,"\u8C83\u8C84\u8C86\u8C87"],["d880","\u8C88\u8C8B\u8C8D",6,"\u8C95\u8C96\u8C97\u8C99",20,"\u4E8D\u4E0C\u5140\u4E10\u5EFF\u5345\u4E15\u4E98\u4E1E\u9B32\u5B6C\u5669\u4E28\u79BA\u4E3F\u5315\u4E47\u592D\u723B\u536E\u6C10\u56DF\u80E4\u9997\u6BD3\u777E\u9F17\u4E36\u4E9F\u9F10\u4E5C\u4E69\u4E93\u8288\u5B5B\u556C\u560F\u4EC4\u538D\u539D\u53A3\u53A5\u53AE\u9765\u8D5D\u531A\u53F5\u5326\u532E\u533E\u8D5C\u5366\u5363\u5202\u5208\u520E\u522D\u5233\u523F\u5240\u524C\u525E\u5261\u525C\u84AF\u527D\u5282\u5281\u5290\u5293\u5182\u7F54\u4EBB\u4EC3\u4EC9\u4EC2\u4EE8\u4EE1\u4EEB\u4EDE\u4F1B\u4EF3\u4F22\u4F64\u4EF5\u4F25\u4F27\u4F09\u4F2B\u4F5E\u4F67\u6538\u4F5A\u4F5D"],["d940","\u8CAE",62],["d980","\u8CED",32,"\u4F5F\u4F57\u4F32\u4F3D\u4F76\u4F74\u4F91\u4F89\u4F83\u4F8F\u4F7E\u4F7B\u4FAA\u4F7C\u4FAC\u4F94\u4FE6\u4FE8\u4FEA\u4FC5\u4FDA\u4FE3\u4FDC\u4FD1\u4FDF\u4FF8\u5029\u504C\u4FF3\u502C\u500F\u502E\u502D\u4FFE\u501C\u500C\u5025\u5028\u507E\u5043\u5055\u5048\u504E\u506C\u507B\u50A5\u50A7\u50A9\u50BA\u50D6\u5106\u50ED\u50EC\u50E6\u50EE\u5107\u510B\u4EDD\u6C3D\u4F58\u4F65\u4FCE\u9FA0\u6C46\u7C74\u516E\u5DFD\u9EC9\u9998\u5181\u5914\u52F9\u530D\u8A07\u5310\u51EB\u5919\u5155\u4EA0\u5156\u4EB3\u886E\u88A4\u4EB5\u8114\u88D2\u7980\u5B34\u8803\u7FB8\u51AB\u51B1\u51BD\u51BC"],["da40","\u8D0E",14,"\u8D20\u8D51\u8D52\u8D57\u8D5F\u8D65\u8D68\u8D69\u8D6A\u8D6C\u8D6E\u8D6F\u8D71\u8D72\u8D78",8,"\u8D82\u8D83\u8D86\u8D87\u8D88\u8D89\u8D8C",4,"\u8D92\u8D93\u8D95",9,"\u8DA0\u8DA1"],["da80","\u8DA2\u8DA4",12,"\u8DB2\u8DB6\u8DB7\u8DB9\u8DBB\u8DBD\u8DC0\u8DC1\u8DC2\u8DC5\u8DC7\u8DC8\u8DC9\u8DCA\u8DCD\u8DD0\u8DD2\u8DD3\u8DD4\u51C7\u5196\u51A2\u51A5\u8BA0\u8BA6\u8BA7\u8BAA\u8BB4\u8BB5\u8BB7\u8BC2\u8BC3\u8BCB\u8BCF\u8BCE\u8BD2\u8BD3\u8BD4\u8BD6\u8BD8\u8BD9\u8BDC\u8BDF\u8BE0\u8BE4\u8BE8\u8BE9\u8BEE\u8BF0\u8BF3\u8BF6\u8BF9\u8BFC\u8BFF\u8C00\u8C02\u8C04\u8C07\u8C0C\u8C0F\u8C11\u8C12\u8C14\u8C15\u8C16\u8C19\u8C1B\u8C18\u8C1D\u8C1F\u8C20\u8C21\u8C25\u8C27\u8C2A\u8C2B\u8C2E\u8C2F\u8C32\u8C33\u8C35\u8C36\u5369\u537A\u961D\u9622\u9621\u9631\u962A\u963D\u963C\u9642\u9649\u9654\u965F\u9667\u966C\u9672\u9674\u9688\u968D\u9697\u96B0\u9097\u909B\u909D\u9099\u90AC\u90A1\u90B4\u90B3\u90B6\u90BA"],["db40","\u8DD5\u8DD8\u8DD9\u8DDC\u8DE0\u8DE1\u8DE2\u8DE5\u8DE6\u8DE7\u8DE9\u8DED\u8DEE\u8DF0\u8DF1\u8DF2\u8DF4\u8DF6\u8DFC\u8DFE",6,"\u8E06\u8E07\u8E08\u8E0B\u8E0D\u8E0E\u8E10\u8E11\u8E12\u8E13\u8E15",7,"\u8E20\u8E21\u8E24",4,"\u8E2B\u8E2D\u8E30\u8E32\u8E33\u8E34\u8E36\u8E37\u8E38\u8E3B\u8E3C\u8E3E"],["db80","\u8E3F\u8E43\u8E45\u8E46\u8E4C",4,"\u8E53",5,"\u8E5A",11,"\u8E67\u8E68\u8E6A\u8E6B\u8E6E\u8E71\u90B8\u90B0\u90CF\u90C5\u90BE\u90D0\u90C4\u90C7\u90D3\u90E6\u90E2\u90DC\u90D7\u90DB\u90EB\u90EF\u90FE\u9104\u9122\u911E\u9123\u9131\u912F\u9139\u9143\u9146\u520D\u5942\u52A2\u52AC\u52AD\u52BE\u54FF\u52D0\u52D6\u52F0\u53DF\u71EE\u77CD\u5EF4\u51F5\u51FC\u9B2F\u53B6\u5F01\u755A\u5DEF\u574C\u57A9\u57A1\u587E\u58BC\u58C5\u58D1\u5729\u572C\u572A\u5733\u5739\u572E\u572F\u575C\u573B\u5742\u5769\u5785\u576B\u5786\u577C\u577B\u5768\u576D\u5776\u5773\u57AD\u57A4\u578C\u57B2\u57CF\u57A7\u57B4\u5793\u57A0\u57D5\u57D8\u57DA\u57D9\u57D2\u57B8\u57F4\u57EF\u57F8\u57E4\u57DD"],["dc40","\u8E73\u8E75\u8E77",4,"\u8E7D\u8E7E\u8E80\u8E82\u8E83\u8E84\u8E86\u8E88",6,"\u8E91\u8E92\u8E93\u8E95",6,"\u8E9D\u8E9F",11,"\u8EAD\u8EAE\u8EB0\u8EB1\u8EB3",6,"\u8EBB",7],["dc80","\u8EC3",10,"\u8ECF",21,"\u580B\u580D\u57FD\u57ED\u5800\u581E\u5819\u5844\u5820\u5865\u586C\u5881\u5889\u589A\u5880\u99A8\u9F19\u61FF\u8279\u827D\u827F\u828F\u828A\u82A8\u8284\u828E\u8291\u8297\u8299\u82AB\u82B8\u82BE\u82B0\u82C8\u82CA\u82E3\u8298\u82B7\u82AE\u82CB\u82CC\u82C1\u82A9\u82B4\u82A1\u82AA\u829F\u82C4\u82CE\u82A4\u82E1\u8309\u82F7\u82E4\u830F\u8307\u82DC\u82F4\u82D2\u82D8\u830C\u82FB\u82D3\u8311\u831A\u8306\u8314\u8315\u82E0\u82D5\u831C\u8351\u835B\u835C\u8308\u8392\u833C\u8334\u8331\u839B\u835E\u832F\u834F\u8347\u8343\u835F\u8340\u8317\u8360\u832D\u833A\u8333\u8366\u8365"],["dd40","\u8EE5",62],["dd80","\u8F24",32,"\u8368\u831B\u8369\u836C\u836A\u836D\u836E\u83B0\u8378\u83B3\u83B4\u83A0\u83AA\u8393\u839C\u8385\u837C\u83B6\u83A9\u837D\u83B8\u837B\u8398\u839E\u83A8\u83BA\u83BC\u83C1\u8401\u83E5\u83D8\u5807\u8418\u840B\u83DD\u83FD\u83D6\u841C\u8438\u8411\u8406\u83D4\u83DF\u840F\u8403\u83F8\u83F9\u83EA\u83C5\u83C0\u8426\u83F0\u83E1\u845C\u8451\u845A\u8459\u8473\u8487\u8488\u847A\u8489\u8478\u843C\u8446\u8469\u8476\u848C\u848E\u8431\u846D\u84C1\u84CD\u84D0\u84E6\u84BD\u84D3\u84CA\u84BF\u84BA\u84E0\u84A1\u84B9\u84B4\u8497\u84E5\u84E3\u850C\u750D\u8538\u84F0\u8539\u851F\u853A"],["de40","\u8F45",32,"\u8F6A\u8F80\u8F8C\u8F92\u8F9D\u8FA0\u8FA1\u8FA2\u8FA4\u8FA5\u8FA6\u8FA7\u8FAA\u8FAC\u8FAD\u8FAE\u8FAF\u8FB2\u8FB3\u8FB4\u8FB5\u8FB7\u8FB8\u8FBA\u8FBB\u8FBC\u8FBF\u8FC0\u8FC3\u8FC6"],["de80","\u8FC9",4,"\u8FCF\u8FD2\u8FD6\u8FD7\u8FDA\u8FE0\u8FE1\u8FE3\u8FE7\u8FEC\u8FEF\u8FF1\u8FF2\u8FF4\u8FF5\u8FF6\u8FFA\u8FFB\u8FFC\u8FFE\u8FFF\u9007\u9008\u900C\u900E\u9013\u9015\u9018\u8556\u853B\u84FF\u84FC\u8559\u8548\u8568\u8564\u855E\u857A\u77A2\u8543\u8572\u857B\u85A4\u85A8\u8587\u858F\u8579\u85AE\u859C\u8585\u85B9\u85B7\u85B0\u85D3\u85C1\u85DC\u85FF\u8627\u8605\u8629\u8616\u863C\u5EFE\u5F08\u593C\u5941\u8037\u5955\u595A\u5958\u530F\u5C22\u5C25\u5C2C\u5C34\u624C\u626A\u629F\u62BB\u62CA\u62DA\u62D7\u62EE\u6322\u62F6\u6339\u634B\u6343\u63AD\u63F6\u6371\u637A\u638E\u63B4\u636D\u63AC\u638A\u6369\u63AE\u63BC\u63F2\u63F8\u63E0\u63FF\u63C4\u63DE\u63CE\u6452\u63C6\u63BE\u6445\u6441\u640B\u641B\u6420\u640C\u6426\u6421\u645E\u6484\u646D\u6496"],["df40","\u9019\u901C\u9023\u9024\u9025\u9027",5,"\u9030",4,"\u9037\u9039\u903A\u903D\u903F\u9040\u9043\u9045\u9046\u9048",4,"\u904E\u9054\u9055\u9056\u9059\u905A\u905C",5,"\u9064\u9066\u9067\u9069\u906A\u906B\u906C\u906F",4,"\u9076",6,"\u907E\u9081"],["df80","\u9084\u9085\u9086\u9087\u9089\u908A\u908C",4,"\u9092\u9094\u9096\u9098\u909A\u909C\u909E\u909F\u90A0\u90A4\u90A5\u90A7\u90A8\u90A9\u90AB\u90AD\u90B2\u90B7\u90BC\u90BD\u90BF\u90C0\u647A\u64B7\u64B8\u6499\u64BA\u64C0\u64D0\u64D7\u64E4\u64E2\u6509\u6525\u652E\u5F0B\u5FD2\u7519\u5F11\u535F\u53F1\u53FD\u53E9\u53E8\u53FB\u5412\u5416\u5406\u544B\u5452\u5453\u5454\u5456\u5443\u5421\u5457\u5459\u5423\u5432\u5482\u5494\u5477\u5471\u5464\u549A\u549B\u5484\u5476\u5466\u549D\u54D0\u54AD\u54C2\u54B4\u54D2\u54A7\u54A6\u54D3\u54D4\u5472\u54A3\u54D5\u54BB\u54BF\u54CC\u54D9\u54DA\u54DC\u54A9\u54AA\u54A4\u54DD\u54CF\u54DE\u551B\u54E7\u5520\u54FD\u5514\u54F3\u5522\u5523\u550F\u5511\u5527\u552A\u5567\u558F\u55B5\u5549\u556D\u5541\u5555\u553F\u5550\u553C"],["e040","\u90C2\u90C3\u90C6\u90C8\u90C9\u90CB\u90CC\u90CD\u90D2\u90D4\u90D5\u90D6\u90D8\u90D9\u90DA\u90DE\u90DF\u90E0\u90E3\u90E4\u90E5\u90E9\u90EA\u90EC\u90EE\u90F0\u90F1\u90F2\u90F3\u90F5\u90F6\u90F7\u90F9\u90FA\u90FB\u90FC\u90FF\u9100\u9101\u9103\u9105",19,"\u911A\u911B\u911C"],["e080","\u911D\u911F\u9120\u9121\u9124",10,"\u9130\u9132",6,"\u913A",8,"\u9144\u5537\u5556\u5575\u5576\u5577\u5533\u5530\u555C\u558B\u55D2\u5583\u55B1\u55B9\u5588\u5581\u559F\u557E\u55D6\u5591\u557B\u55DF\u55BD\u55BE\u5594\u5599\u55EA\u55F7\u55C9\u561F\u55D1\u55EB\u55EC\u55D4\u55E6\u55DD\u55C4\u55EF\u55E5\u55F2\u55F3\u55CC\u55CD\u55E8\u55F5\u55E4\u8F94\u561E\u5608\u560C\u5601\u5624\u5623\u55FE\u5600\u5627\u562D\u5658\u5639\u5657\u562C\u564D\u5662\u5659\u565C\u564C\u5654\u5686\u5664\u5671\u566B\u567B\u567C\u5685\u5693\u56AF\u56D4\u56D7\u56DD\u56E1\u56F5\u56EB\u56F9\u56FF\u5704\u570A\u5709\u571C\u5E0F\u5E19\u5E14\u5E11\u5E31\u5E3B\u5E3C"],["e140","\u9145\u9147\u9148\u9151\u9153\u9154\u9155\u9156\u9158\u9159\u915B\u915C\u915F\u9160\u9166\u9167\u9168\u916B\u916D\u9173\u917A\u917B\u917C\u9180",4,"\u9186\u9188\u918A\u918E\u918F\u9193",6,"\u919C",5,"\u91A4",5,"\u91AB\u91AC\u91B0\u91B1\u91B2\u91B3\u91B6\u91B7\u91B8\u91B9\u91BB"],["e180","\u91BC",10,"\u91C8\u91CB\u91D0\u91D2",9,"\u91DD",8,"\u5E37\u5E44\u5E54\u5E5B\u5E5E\u5E61\u5C8C\u5C7A\u5C8D\u5C90\u5C96\u5C88\u5C98\u5C99\u5C91\u5C9A\u5C9C\u5CB5\u5CA2\u5CBD\u5CAC\u5CAB\u5CB1\u5CA3\u5CC1\u5CB7\u5CC4\u5CD2\u5CE4\u5CCB\u5CE5\u5D02\u5D03\u5D27\u5D26\u5D2E\u5D24\u5D1E\u5D06\u5D1B\u5D58\u5D3E\u5D34\u5D3D\u5D6C\u5D5B\u5D6F\u5D5D\u5D6B\u5D4B\u5D4A\u5D69\u5D74\u5D82\u5D99\u5D9D\u8C73\u5DB7\u5DC5\u5F73\u5F77\u5F82\u5F87\u5F89\u5F8C\u5F95\u5F99\u5F9C\u5FA8\u5FAD\u5FB5\u5FBC\u8862\u5F61\u72AD\u72B0\u72B4\u72B7\u72B8\u72C3\u72C1\u72CE\u72CD\u72D2\u72E8\u72EF\u72E9\u72F2\u72F4\u72F7\u7301\u72F3\u7303\u72FA"],["e240","\u91E6",62],["e280","\u9225",32,"\u72FB\u7317\u7313\u7321\u730A\u731E\u731D\u7315\u7322\u7339\u7325\u732C\u7338\u7331\u7350\u734D\u7357\u7360\u736C\u736F\u737E\u821B\u5925\u98E7\u5924\u5902\u9963\u9967",5,"\u9974\u9977\u997D\u9980\u9984\u9987\u998A\u998D\u9990\u9991\u9993\u9994\u9995\u5E80\u5E91\u5E8B\u5E96\u5EA5\u5EA0\u5EB9\u5EB5\u5EBE\u5EB3\u8D53\u5ED2\u5ED1\u5EDB\u5EE8\u5EEA\u81BA\u5FC4\u5FC9\u5FD6\u5FCF\u6003\u5FEE\u6004\u5FE1\u5FE4\u5FFE\u6005\u6006\u5FEA\u5FED\u5FF8\u6019\u6035\u6026\u601B\u600F\u600D\u6029\u602B\u600A\u603F\u6021\u6078\u6079\u607B\u607A\u6042"],["e340","\u9246",45,"\u9275",16],["e380","\u9286",7,"\u928F",24,"\u606A\u607D\u6096\u609A\u60AD\u609D\u6083\u6092\u608C\u609B\u60EC\u60BB\u60B1\u60DD\u60D8\u60C6\u60DA\u60B4\u6120\u6126\u6115\u6123\u60F4\u6100\u610E\u612B\u614A\u6175\u61AC\u6194\u61A7\u61B7\u61D4\u61F5\u5FDD\u96B3\u95E9\u95EB\u95F1\u95F3\u95F5\u95F6\u95FC\u95FE\u9603\u9604\u9606\u9608\u960A\u960B\u960C\u960D\u960F\u9612\u9615\u9616\u9617\u9619\u961A\u4E2C\u723F\u6215\u6C35\u6C54\u6C5C\u6C4A\u6CA3\u6C85\u6C90\u6C94\u6C8C\u6C68\u6C69\u6C74\u6C76\u6C86\u6CA9\u6CD0\u6CD4\u6CAD\u6CF7\u6CF8\u6CF1\u6CD7\u6CB2\u6CE0\u6CD6\u6CFA\u6CEB\u6CEE\u6CB1\u6CD3\u6CEF\u6CFE"],["e440","\u92A8",5,"\u92AF",24,"\u92C9",31],["e480","\u92E9",32,"\u6D39\u6D27\u6D0C\u6D43\u6D48\u6D07\u6D04\u6D19\u6D0E\u6D2B\u6D4D\u6D2E\u6D35\u6D1A\u6D4F\u6D52\u6D54\u6D33\u6D91\u6D6F\u6D9E\u6DA0\u6D5E\u6D93\u6D94\u6D5C\u6D60\u6D7C\u6D63\u6E1A\u6DC7\u6DC5\u6DDE\u6E0E\u6DBF\u6DE0\u6E11\u6DE6\u6DDD\u6DD9\u6E16\u6DAB\u6E0C\u6DAE\u6E2B\u6E6E\u6E4E\u6E6B\u6EB2\u6E5F\u6E86\u6E53\u6E54\u6E32\u6E25\u6E44\u6EDF\u6EB1\u6E98\u6EE0\u6F2D\u6EE2\u6EA5\u6EA7\u6EBD\u6EBB\u6EB7\u6ED7\u6EB4\u6ECF\u6E8F\u6EC2\u6E9F\u6F62\u6F46\u6F47\u6F24\u6F15\u6EF9\u6F2F\u6F36\u6F4B\u6F74\u6F2A\u6F09\u6F29\u6F89\u6F8D\u6F8C\u6F78\u6F72\u6F7C\u6F7A\u6FD1"],["e540","\u930A",51,"\u933F",10],["e580","\u934A",31,"\u936B\u6FC9\u6FA7\u6FB9\u6FB6\u6FC2\u6FE1\u6FEE\u6FDE\u6FE0\u6FEF\u701A\u7023\u701B\u7039\u7035\u704F\u705E\u5B80\u5B84\u5B95\u5B93\u5BA5\u5BB8\u752F\u9A9E\u6434\u5BE4\u5BEE\u8930\u5BF0\u8E47\u8B07\u8FB6\u8FD3\u8FD5\u8FE5\u8FEE\u8FE4\u8FE9\u8FE6\u8FF3\u8FE8\u9005\u9004\u900B\u9026\u9011\u900D\u9016\u9021\u9035\u9036\u902D\u902F\u9044\u9051\u9052\u9050\u9068\u9058\u9062\u905B\u66B9\u9074\u907D\u9082\u9088\u9083\u908B\u5F50\u5F57\u5F56\u5F58\u5C3B\u54AB\u5C50\u5C59\u5B71\u5C63\u5C66\u7FBC\u5F2A\u5F29\u5F2D\u8274\u5F3C\u9B3B\u5C6E\u5981\u5983\u598D\u59A9\u59AA\u59A3"],["e640","\u936C",34,"\u9390",27],["e680","\u93AC",29,"\u93CB\u93CC\u93CD\u5997\u59CA\u59AB\u599E\u59A4\u59D2\u59B2\u59AF\u59D7\u59BE\u5A05\u5A06\u59DD\u5A08\u59E3\u59D8\u59F9\u5A0C\u5A09\u5A32\u5A34\u5A11\u5A23\u5A13\u5A40\u5A67\u5A4A\u5A55\u5A3C\u5A62\u5A75\u80EC\u5AAA\u5A9B\u5A77\u5A7A\u5ABE\u5AEB\u5AB2\u5AD2\u5AD4\u5AB8\u5AE0\u5AE3\u5AF1\u5AD6\u5AE6\u5AD8\u5ADC\u5B09\u5B17\u5B16\u5B32\u5B37\u5B40\u5C15\u5C1C\u5B5A\u5B65\u5B73\u5B51\u5B53\u5B62\u9A75\u9A77\u9A78\u9A7A\u9A7F\u9A7D\u9A80\u9A81\u9A85\u9A88\u9A8A\u9A90\u9A92\u9A93\u9A96\u9A98\u9A9B\u9A9C\u9A9D\u9A9F\u9AA0\u9AA2\u9AA3\u9AA5\u9AA7\u7E9F\u7EA1\u7EA3\u7EA5\u7EA8\u7EA9"],["e740","\u93CE",7,"\u93D7",54],["e780","\u940E",32,"\u7EAD\u7EB0\u7EBE\u7EC0\u7EC1\u7EC2\u7EC9\u7ECB\u7ECC\u7ED0\u7ED4\u7ED7\u7EDB\u7EE0\u7EE1\u7EE8\u7EEB\u7EEE\u7EEF\u7EF1\u7EF2\u7F0D\u7EF6\u7EFA\u7EFB\u7EFE\u7F01\u7F02\u7F03\u7F07\u7F08\u7F0B\u7F0C\u7F0F\u7F11\u7F12\u7F17\u7F19\u7F1C\u7F1B\u7F1F\u7F21",6,"\u7F2A\u7F2B\u7F2C\u7F2D\u7F2F",4,"\u7F35\u5E7A\u757F\u5DDB\u753E\u9095\u738E\u7391\u73AE\u73A2\u739F\u73CF\u73C2\u73D1\u73B7\u73B3\u73C0\u73C9\u73C8\u73E5\u73D9\u987C\u740A\u73E9\u73E7\u73DE\u73BA\u73F2\u740F\u742A\u745B\u7426\u7425\u7428\u7430\u742E\u742C"],["e840","\u942F",14,"\u943F",43,"\u946C\u946D\u946E\u946F"],["e880","\u9470",20,"\u9491\u9496\u9498\u94C7\u94CF\u94D3\u94D4\u94DA\u94E6\u94FB\u951C\u9520\u741B\u741A\u7441\u745C\u7457\u7455\u7459\u7477\u746D\u747E\u749C\u748E\u7480\u7481\u7487\u748B\u749E\u74A8\u74A9\u7490\u74A7\u74D2\u74BA\u97EA\u97EB\u97EC\u674C\u6753\u675E\u6748\u6769\u67A5\u6787\u676A\u6773\u6798\u67A7\u6775\u67A8\u679E\u67AD\u678B\u6777\u677C\u67F0\u6809\u67D8\u680A\u67E9\u67B0\u680C\u67D9\u67B5\u67DA\u67B3\u67DD\u6800\u67C3\u67B8\u67E2\u680E\u67C1\u67FD\u6832\u6833\u6860\u6861\u684E\u6862\u6844\u6864\u6883\u681D\u6855\u6866\u6841\u6867\u6840\u683E\u684A\u6849\u6829\u68B5\u688F\u6874\u6877\u6893\u686B\u68C2\u696E\u68FC\u691F\u6920\u68F9"],["e940","\u9527\u9533\u953D\u9543\u9548\u954B\u9555\u955A\u9560\u956E\u9574\u9575\u9577",7,"\u9580",42],["e980","\u95AB",32,"\u6924\u68F0\u690B\u6901\u6957\u68E3\u6910\u6971\u6939\u6960\u6942\u695D\u6984\u696B\u6980\u6998\u6978\u6934\u69CC\u6987\u6988\u69CE\u6989\u6966\u6963\u6979\u699B\u69A7\u69BB\u69AB\u69AD\u69D4\u69B1\u69C1\u69CA\u69DF\u6995\u69E0\u698D\u69FF\u6A2F\u69ED\u6A17\u6A18\u6A65\u69F2\u6A44\u6A3E\u6AA0\u6A50\u6A5B\u6A35\u6A8E\u6A79\u6A3D\u6A28\u6A58\u6A7C\u6A91\u6A90\u6AA9\u6A97\u6AAB\u7337\u7352\u6B81\u6B82\u6B87\u6B84\u6B92\u6B93\u6B8D\u6B9A\u6B9B\u6BA1\u6BAA\u8F6B\u8F6D\u8F71\u8F72\u8F73\u8F75\u8F76\u8F78\u8F77\u8F79\u8F7A\u8F7C\u8F7E\u8F81\u8F82\u8F84\u8F87\u8F8B"],["ea40","\u95CC",27,"\u95EC\u95FF\u9607\u9613\u9618\u961B\u961E\u9620\u9623",6,"\u962B\u962C\u962D\u962F\u9630\u9637\u9638\u9639\u963A\u963E\u9641\u9643\u964A\u964E\u964F\u9651\u9652\u9653\u9656\u9657"],["ea80","\u9658\u9659\u965A\u965C\u965D\u965E\u9660\u9663\u9665\u9666\u966B\u966D",4,"\u9673\u9678",12,"\u9687\u9689\u968A\u8F8D\u8F8E\u8F8F\u8F98\u8F9A\u8ECE\u620B\u6217\u621B\u621F\u6222\u6221\u6225\u6224\u622C\u81E7\u74EF\u74F4\u74FF\u750F\u7511\u7513\u6534\u65EE\u65EF\u65F0\u660A\u6619\u6772\u6603\u6615\u6600\u7085\u66F7\u661D\u6634\u6631\u6636\u6635\u8006\u665F\u6654\u6641\u664F\u6656\u6661\u6657\u6677\u6684\u668C\u66A7\u669D\u66BE\u66DB\u66DC\u66E6\u66E9\u8D32\u8D33\u8D36\u8D3B\u8D3D\u8D40\u8D45\u8D46\u8D48\u8D49\u8D47\u8D4D\u8D55\u8D59\u89C7\u89CA\u89CB\u89CC\u89CE\u89CF\u89D0\u89D1\u726E\u729F\u725D\u7266\u726F\u727E\u727F\u7284\u728B\u728D\u728F\u7292\u6308\u6332\u63B0"],["eb40","\u968C\u968E\u9691\u9692\u9693\u9695\u9696\u969A\u969B\u969D",9,"\u96A8",7,"\u96B1\u96B2\u96B4\u96B5\u96B7\u96B8\u96BA\u96BB\u96BF\u96C2\u96C3\u96C8\u96CA\u96CB\u96D0\u96D1\u96D3\u96D4\u96D6",9,"\u96E1",6,"\u96EB"],["eb80","\u96EC\u96ED\u96EE\u96F0\u96F1\u96F2\u96F4\u96F5\u96F8\u96FA\u96FB\u96FC\u96FD\u96FF\u9702\u9703\u9705\u970A\u970B\u970C\u9710\u9711\u9712\u9714\u9715\u9717",4,"\u971D\u971F\u9720\u643F\u64D8\u8004\u6BEA\u6BF3\u6BFD\u6BF5\u6BF9\u6C05\u6C07\u6C06\u6C0D\u6C15\u6C18\u6C19\u6C1A\u6C21\u6C29\u6C24\u6C2A\u6C32\u6535\u6555\u656B\u724D\u7252\u7256\u7230\u8662\u5216\u809F\u809C\u8093\u80BC\u670A\u80BD\u80B1\u80AB\u80AD\u80B4\u80B7\u80E7\u80E8\u80E9\u80EA\u80DB\u80C2\u80C4\u80D9\u80CD\u80D7\u6710\u80DD\u80EB\u80F1\u80F4\u80ED\u810D\u810E\u80F2\u80FC\u6715\u8112\u8C5A\u8136\u811E\u812C\u8118\u8132\u8148\u814C\u8153\u8174\u8159\u815A\u8171\u8160\u8169\u817C\u817D\u816D\u8167\u584D\u5AB5\u8188\u8182\u8191\u6ED5\u81A3\u81AA\u81CC\u6726\u81CA\u81BB"],["ec40","\u9721",8,"\u972B\u972C\u972E\u972F\u9731\u9733",4,"\u973A\u973B\u973C\u973D\u973F",18,"\u9754\u9755\u9757\u9758\u975A\u975C\u975D\u975F\u9763\u9764\u9766\u9767\u9768\u976A",7],["ec80","\u9772\u9775\u9777",4,"\u977D",7,"\u9786",4,"\u978C\u978E\u978F\u9790\u9793\u9795\u9796\u9797\u9799",4,"\u81C1\u81A6\u6B24\u6B37\u6B39\u6B43\u6B46\u6B59\u98D1\u98D2\u98D3\u98D5\u98D9\u98DA\u6BB3\u5F40\u6BC2\u89F3\u6590\u9F51\u6593\u65BC\u65C6\u65C4\u65C3\u65CC\u65CE\u65D2\u65D6\u7080\u709C\u7096\u709D\u70BB\u70C0\u70B7\u70AB\u70B1\u70E8\u70CA\u7110\u7113\u7116\u712F\u7131\u7173\u715C\u7168\u7145\u7172\u714A\u7178\u717A\u7198\u71B3\u71B5\u71A8\u71A0\u71E0\u71D4\u71E7\u71F9\u721D\u7228\u706C\u7118\u7166\u71B9\u623E\u623D\u6243\u6248\u6249\u793B\u7940\u7946\u7949\u795B\u795C\u7953\u795A\u7962\u7957\u7960\u796F\u7967\u797A\u7985\u798A\u799A\u79A7\u79B3\u5FD1\u5FD0"],["ed40","\u979E\u979F\u97A1\u97A2\u97A4",6,"\u97AC\u97AE\u97B0\u97B1\u97B3\u97B5",46],["ed80","\u97E4\u97E5\u97E8\u97EE",4,"\u97F4\u97F7",23,"\u603C\u605D\u605A\u6067\u6041\u6059\u6063\u60AB\u6106\u610D\u615D\u61A9\u619D\u61CB\u61D1\u6206\u8080\u807F\u6C93\u6CF6\u6DFC\u77F6\u77F8\u7800\u7809\u7817\u7818\u7811\u65AB\u782D\u781C\u781D\u7839\u783A\u783B\u781F\u783C\u7825\u782C\u7823\u7829\u784E\u786D\u7856\u7857\u7826\u7850\u7847\u784C\u786A\u789B\u7893\u789A\u7887\u789C\u78A1\u78A3\u78B2\u78B9\u78A5\u78D4\u78D9\u78C9\u78EC\u78F2\u7905\u78F4\u7913\u7924\u791E\u7934\u9F9B\u9EF9\u9EFB\u9EFC\u76F1\u7704\u770D\u76F9\u7707\u7708\u771A\u7722\u7719\u772D\u7726\u7735\u7738\u7750\u7751\u7747\u7743\u775A\u7768"],["ee40","\u980F",62],["ee80","\u984E",32,"\u7762\u7765\u777F\u778D\u777D\u7780\u778C\u7791\u779F\u77A0\u77B0\u77B5\u77BD\u753A\u7540\u754E\u754B\u7548\u755B\u7572\u7579\u7583\u7F58\u7F61\u7F5F\u8A48\u7F68\u7F74\u7F71\u7F79\u7F81\u7F7E\u76CD\u76E5\u8832\u9485\u9486\u9487\u948B\u948A\u948C\u948D\u948F\u9490\u9494\u9497\u9495\u949A\u949B\u949C\u94A3\u94A4\u94AB\u94AA\u94AD\u94AC\u94AF\u94B0\u94B2\u94B4\u94B6",4,"\u94BC\u94BD\u94BF\u94C4\u94C8",6,"\u94D0\u94D1\u94D2\u94D5\u94D6\u94D7\u94D9\u94D8\u94DB\u94DE\u94DF\u94E0\u94E2\u94E4\u94E5\u94E7\u94E8\u94EA"],["ef40","\u986F",5,"\u988B\u988E\u9892\u9895\u9899\u98A3\u98A8",37,"\u98CF\u98D0\u98D4\u98D6\u98D7\u98DB\u98DC\u98DD\u98E0",4],["ef80","\u98E5\u98E6\u98E9",30,"\u94E9\u94EB\u94EE\u94EF\u94F3\u94F4\u94F5\u94F7\u94F9\u94FC\u94FD\u94FF\u9503\u9502\u9506\u9507\u9509\u950A\u950D\u950E\u950F\u9512",4,"\u9518\u951B\u951D\u951E\u951F\u9522\u952A\u952B\u9529\u952C\u9531\u9532\u9534\u9536\u9537\u9538\u953C\u953E\u953F\u9542\u9535\u9544\u9545\u9546\u9549\u954C\u954E\u954F\u9552\u9553\u9554\u9556\u9557\u9558\u9559\u955B\u955E\u955F\u955D\u9561\u9562\u9564",8,"\u956F\u9571\u9572\u9573\u953A\u77E7\u77EC\u96C9\u79D5\u79ED\u79E3\u79EB\u7A06\u5D47\u7A03\u7A02\u7A1E\u7A14"],["f040","\u9908",4,"\u990E\u990F\u9911",28,"\u992F",26],["f080","\u994A",9,"\u9956",12,"\u9964\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u7A39\u7A37\u7A51\u9ECF\u99A5\u7A70\u7688\u768E\u7693\u7699\u76A4\u74DE\u74E0\u752C\u9E20\u9E22\u9E28",4,"\u9E32\u9E31\u9E36\u9E38\u9E37\u9E39\u9E3A\u9E3E\u9E41\u9E42\u9E44\u9E46\u9E47\u9E48\u9E49\u9E4B\u9E4C\u9E4E\u9E51\u9E55\u9E57\u9E5A\u9E5B\u9E5C\u9E5E\u9E63\u9E66",6,"\u9E71\u9E6D\u9E73\u7592\u7594\u7596\u75A0\u759D\u75AC\u75A3\u75B3\u75B4\u75B8\u75C4\u75B1\u75B0\u75C3\u75C2\u75D6\u75CD\u75E3\u75E8\u75E6\u75E4\u75EB\u75E7\u7603\u75F1\u75FC\u75FF\u7610\u7600\u7605\u760C\u7617\u760A\u7625\u7618\u7615\u7619"],["f140","\u998C\u998E\u999A",10,"\u99A6\u99A7\u99A9",47],["f180","\u99D9",32,"\u761B\u763C\u7622\u7620\u7640\u762D\u7630\u763F\u7635\u7643\u763E\u7633\u764D\u765E\u7654\u765C\u7656\u766B\u766F\u7FCA\u7AE6\u7A78\u7A79\u7A80\u7A86\u7A88\u7A95\u7AA6\u7AA0\u7AAC\u7AA8\u7AAD\u7AB3\u8864\u8869\u8872\u887D\u887F\u8882\u88A2\u88C6\u88B7\u88BC\u88C9\u88E2\u88CE\u88E3\u88E5\u88F1\u891A\u88FC\u88E8\u88FE\u88F0\u8921\u8919\u8913\u891B\u890A\u8934\u892B\u8936\u8941\u8966\u897B\u758B\u80E5\u76B2\u76B4\u77DC\u8012\u8014\u8016\u801C\u8020\u8022\u8025\u8026\u8027\u8029\u8028\u8031\u800B\u8035\u8043\u8046\u804D\u8052\u8069\u8071\u8983\u9878\u9880\u9883"],["f240","\u99FA",62],["f280","\u9A39",32,"\u9889\u988C\u988D\u988F\u9894\u989A\u989B\u989E\u989F\u98A1\u98A2\u98A5\u98A6\u864D\u8654\u866C\u866E\u867F\u867A\u867C\u867B\u86A8\u868D\u868B\u86AC\u869D\u86A7\u86A3\u86AA\u8693\u86A9\u86B6\u86C4\u86B5\u86CE\u86B0\u86BA\u86B1\u86AF\u86C9\u86CF\u86B4\u86E9\u86F1\u86F2\u86ED\u86F3\u86D0\u8713\u86DE\u86F4\u86DF\u86D8\u86D1\u8703\u8707\u86F8\u8708\u870A\u870D\u8709\u8723\u873B\u871E\u8725\u872E\u871A\u873E\u8748\u8734\u8731\u8729\u8737\u873F\u8782\u8722\u877D\u877E\u877B\u8760\u8770\u874C\u876E\u878B\u8753\u8763\u877C\u8764\u8759\u8765\u8793\u87AF\u87A8\u87D2"],["f340","\u9A5A",17,"\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9AA9",6,"\u9AB2\u9AB3\u9AB4\u9AB5\u9AB9\u9ABB\u9ABD\u9ABE\u9ABF\u9AC3\u9AC4\u9AC6",4,"\u9ACD\u9ACE\u9ACF\u9AD0\u9AD2\u9AD4\u9AD5\u9AD6\u9AD7\u9AD9\u9ADA\u9ADB\u9ADC"],["f380","\u9ADD\u9ADE\u9AE0\u9AE2\u9AE3\u9AE4\u9AE5\u9AE7\u9AE8\u9AE9\u9AEA\u9AEC\u9AEE\u9AF0",8,"\u9AFA\u9AFC",6,"\u9B04\u9B05\u9B06\u87C6\u8788\u8785\u87AD\u8797\u8783\u87AB\u87E5\u87AC\u87B5\u87B3\u87CB\u87D3\u87BD\u87D1\u87C0\u87CA\u87DB\u87EA\u87E0\u87EE\u8816\u8813\u87FE\u880A\u881B\u8821\u8839\u883C\u7F36\u7F42\u7F44\u7F45\u8210\u7AFA\u7AFD\u7B08\u7B03\u7B04\u7B15\u7B0A\u7B2B\u7B0F\u7B47\u7B38\u7B2A\u7B19\u7B2E\u7B31\u7B20\u7B25\u7B24\u7B33\u7B3E\u7B1E\u7B58\u7B5A\u7B45\u7B75\u7B4C\u7B5D\u7B60\u7B6E\u7B7B\u7B62\u7B72\u7B71\u7B90\u7BA6\u7BA7\u7BB8\u7BAC\u7B9D\u7BA8\u7B85\u7BAA\u7B9C\u7BA2\u7BAB\u7BB4\u7BD1\u7BC1\u7BCC\u7BDD\u7BDA\u7BE5\u7BE6\u7BEA\u7C0C\u7BFE\u7BFC\u7C0F\u7C16\u7C0B"],["f440","\u9B07\u9B09",5,"\u9B10\u9B11\u9B12\u9B14",10,"\u9B20\u9B21\u9B22\u9B24",10,"\u9B30\u9B31\u9B33",7,"\u9B3D\u9B3E\u9B3F\u9B40\u9B46\u9B4A\u9B4B\u9B4C\u9B4E\u9B50\u9B52\u9B53\u9B55",5],["f480","\u9B5B",32,"\u7C1F\u7C2A\u7C26\u7C38\u7C41\u7C40\u81FE\u8201\u8202\u8204\u81EC\u8844\u8221\u8222\u8223\u822D\u822F\u8228\u822B\u8238\u823B\u8233\u8234\u823E\u8244\u8249\u824B\u824F\u825A\u825F\u8268\u887E\u8885\u8888\u88D8\u88DF\u895E\u7F9D\u7F9F\u7FA7\u7FAF\u7FB0\u7FB2\u7C7C\u6549\u7C91\u7C9D\u7C9C\u7C9E\u7CA2\u7CB2\u7CBC\u7CBD\u7CC1\u7CC7\u7CCC\u7CCD\u7CC8\u7CC5\u7CD7\u7CE8\u826E\u66A8\u7FBF\u7FCE\u7FD5\u7FE5\u7FE1\u7FE6\u7FE9\u7FEE\u7FF3\u7CF8\u7D77\u7DA6\u7DAE\u7E47\u7E9B\u9EB8\u9EB4\u8D73\u8D84\u8D94\u8D91\u8DB1\u8D67\u8D6D\u8C47\u8C49\u914A\u9150\u914E\u914F\u9164"],["f540","\u9B7C",62],["f580","\u9BBB",32,"\u9162\u9161\u9170\u9169\u916F\u917D\u917E\u9172\u9174\u9179\u918C\u9185\u9190\u918D\u9191\u91A2\u91A3\u91AA\u91AD\u91AE\u91AF\u91B5\u91B4\u91BA\u8C55\u9E7E\u8DB8\u8DEB\u8E05\u8E59\u8E69\u8DB5\u8DBF\u8DBC\u8DBA\u8DC4\u8DD6\u8DD7\u8DDA\u8DDE\u8DCE\u8DCF\u8DDB\u8DC6\u8DEC\u8DF7\u8DF8\u8DE3\u8DF9\u8DFB\u8DE4\u8E09\u8DFD\u8E14\u8E1D\u8E1F\u8E2C\u8E2E\u8E23\u8E2F\u8E3A\u8E40\u8E39\u8E35\u8E3D\u8E31\u8E49\u8E41\u8E42\u8E51\u8E52\u8E4A\u8E70\u8E76\u8E7C\u8E6F\u8E74\u8E85\u8E8F\u8E94\u8E90\u8E9C\u8E9E\u8C78\u8C82\u8C8A\u8C85\u8C98\u8C94\u659B\u89D6\u89DE\u89DA\u89DC"],["f640","\u9BDC",62],["f680","\u9C1B",32,"\u89E5\u89EB\u89EF\u8A3E\u8B26\u9753\u96E9\u96F3\u96EF\u9706\u9701\u9708\u970F\u970E\u972A\u972D\u9730\u973E\u9F80\u9F83\u9F85",5,"\u9F8C\u9EFE\u9F0B\u9F0D\u96B9\u96BC\u96BD\u96CE\u96D2\u77BF\u96E0\u928E\u92AE\u92C8\u933E\u936A\u93CA\u938F\u943E\u946B\u9C7F\u9C82\u9C85\u9C86\u9C87\u9C88\u7A23\u9C8B\u9C8E\u9C90\u9C91\u9C92\u9C94\u9C95\u9C9A\u9C9B\u9C9E",5,"\u9CA5",4,"\u9CAB\u9CAD\u9CAE\u9CB0",7,"\u9CBA\u9CBB\u9CBC\u9CBD\u9CC4\u9CC5\u9CC6\u9CC7\u9CCA\u9CCB"],["f740","\u9C3C",62],["f780","\u9C7B\u9C7D\u9C7E\u9C80\u9C83\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE",4,"\u9CC8\u9CC9\u9CD1\u9CD2\u9CDA\u9CDB\u9CE0\u9CE1\u9CCC",4,"\u9CD3\u9CD4\u9CD5\u9CD7\u9CD8\u9CD9\u9CDC\u9CDD\u9CDF\u9CE2\u977C\u9785\u9791\u9792\u9794\u97AF\u97AB\u97A3\u97B2\u97B4\u9AB1\u9AB0\u9AB7\u9E58\u9AB6\u9ABA\u9ABC\u9AC1\u9AC0\u9AC5\u9AC2\u9ACB\u9ACC\u9AD1\u9B45\u9B43\u9B47\u9B49\u9B48\u9B4D\u9B51\u98E8\u990D\u992E\u9955\u9954\u9ADF\u9AE1\u9AE6\u9AEF\u9AEB\u9AFB\u9AED\u9AF9\u9B08\u9B0F\u9B13\u9B1F\u9B23\u9EBD\u9EBE\u7E3B\u9E82\u9E87\u9E88\u9E8B\u9E92\u93D6\u9E9D\u9E9F\u9EDB\u9EDC\u9EDD\u9EE0\u9EDF\u9EE2\u9EE9\u9EE7\u9EE5\u9EEA\u9EEF\u9F22\u9F2C\u9F2F\u9F39\u9F37\u9F3D\u9F3E\u9F44"],["f840","\u9CE3",62],["f880","\u9D22",32],["f940","\u9D43",62],["f980","\u9D82",32],["fa40","\u9DA3",62],["fa80","\u9DE2",32],["fb40","\u9E03",27,"\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E59\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6E\u9E6F\u9E72\u9E74",9,"\u9E80"],["fb80","\u9E81\u9E83\u9E84\u9E85\u9E86\u9E89\u9E8A\u9E8C",5,"\u9E94",8,"\u9E9E\u9EA0",5,"\u9EA7\u9EA8\u9EA9\u9EAA"],["fc40","\u9EAB",8,"\u9EB5\u9EB6\u9EB7\u9EB9\u9EBA\u9EBC\u9EBF",4,"\u9EC5\u9EC6\u9EC7\u9EC8\u9ECA\u9ECB\u9ECC\u9ED0\u9ED2\u9ED3\u9ED5\u9ED6\u9ED7\u9ED9\u9EDA\u9EDE\u9EE1\u9EE3\u9EE4\u9EE6\u9EE8\u9EEB\u9EEC\u9EED\u9EEE\u9EF0",8,"\u9EFA\u9EFD\u9EFF",6],["fc80","\u9F06",4,"\u9F0C\u9F0F\u9F11\u9F12\u9F14\u9F15\u9F16\u9F18\u9F1A",5,"\u9F21\u9F23",8,"\u9F2D\u9F2E\u9F30\u9F31"],["fd40","\u9F32",4,"\u9F38\u9F3A\u9F3C\u9F3F",4,"\u9F45",10,"\u9F52",38],["fd80","\u9F79",5,"\u9F81\u9F82\u9F8D",11,"\u9F9C\u9F9D\u9F9E\u9FA1",4,"\uF92C\uF979\uF995\uF9E7\uF9F1"],["fe40","\uFA0C\uFA0D\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA18\uFA1F\uFA20\uFA21\uFA23\uFA24\uFA27\uFA28\uFA29"]]});var F7=v((j3e,JG)=>{JG.exports=[["a140","\uE4C6",62],["a180","\uE505",32],["a240","\uE526",62],["a280","\uE565",32],["a2ab","\uE766",5],["a2e3","\u20AC\uE76D"],["a2ef","\uE76E\uE76F"],["a2fd","\uE770\uE771"],["a340","\uE586",62],["a380","\uE5C5",31,"\u3000"],["a440","\uE5E6",62],["a480","\uE625",32],["a4f4","\uE772",10],["a540","\uE646",62],["a580","\uE685",32],["a5f7","\uE77D",7],["a640","\uE6A6",62],["a680","\uE6E5",32],["a6b9","\uE785",7],["a6d9","\uE78D",6],["a6ec","\uE794\uE795"],["a6f3","\uE796"],["a6f6","\uE797",8],["a740","\uE706",62],["a780","\uE745",32],["a7c2","\uE7A0",14],["a7f2","\uE7AF",12],["a896","\uE7BC",10],["a8bc","\u1E3F"],["a8bf","\u01F9"],["a8c1","\uE7C9\uE7CA\uE7CB\uE7CC"],["a8ea","\uE7CD",20],["a958","\uE7E2"],["a95b","\uE7E3"],["a95d","\uE7E4\uE7E5\uE7E6"],["a989","\u303E\u2FF0",11],["a997","\uE7F4",12],["a9f0","\uE801",14],["aaa1","\uE000",93],["aba1","\uE05E",93],["aca1","\uE0BC",93],["ada1","\uE11A",93],["aea1","\uE178",93],["afa1","\uE1D6",93],["d7fa","\uE810",4],["f8a1","\uE234",93],["f9a1","\uE292",93],["faa1","\uE2F0",93],["fba1","\uE34E",93],["fca1","\uE3AC",93],["fda1","\uE40A",93],["fe50","\u2E81\uE816\uE817\uE818\u2E84\u3473\u3447\u2E88\u2E8B\uE81E\u359E\u361A\u360E\u2E8C\u2E97\u396E\u3918\uE826\u39CF\u39DF\u3A73\u39D0\uE82B\uE82C\u3B4E\u3C6E\u3CE0\u2EA7\uE831\uE832\u2EAA\u4056\u415F\u2EAE\u4337\u2EB3\u2EB6\u2EB7\uE83B\u43B1\u43AC\u2EBB\u43DD\u44D6\u4661\u464C\uE843"],["fe80","\u4723\u4729\u477C\u478D\u2ECA\u4947\u497A\u497D\u4982\u4983\u4985\u4986\u499F\u499B\u49B7\u49B6\uE854\uE855\u4CA3\u4C9F\u4CA0\u4CA1\u4C77\u4CA2\u4D13",6,"\u4DAE\uE864\uE468",93],["8135f437","\uE7C7"]]});var qT=v((H3e,YG)=>{YG.exports={uChars:[128,165,169,178,184,216,226,235,238,244,248,251,253,258,276,284,300,325,329,334,364,463,465,467,469,471,473,475,477,506,594,610,712,716,730,930,938,962,970,1026,1104,1106,8209,8215,8218,8222,8231,8241,8244,8246,8252,8365,8452,8454,8458,8471,8482,8556,8570,8596,8602,8713,8720,8722,8726,8731,8737,8740,8742,8748,8751,8760,8766,8777,8781,8787,8802,8808,8816,8854,8858,8870,8896,8979,9322,9372,9548,9588,9616,9622,9634,9652,9662,9672,9676,9680,9702,9735,9738,9793,9795,11906,11909,11913,11917,11928,11944,11947,11951,11956,11960,11964,11979,12284,12292,12312,12319,12330,12351,12436,12447,12535,12543,12586,12842,12850,12964,13200,13215,13218,13253,13263,13267,13270,13384,13428,13727,13839,13851,14617,14703,14801,14816,14964,15183,15471,15585,16471,16736,17208,17325,17330,17374,17623,17997,18018,18212,18218,18301,18318,18760,18811,18814,18820,18823,18844,18848,18872,19576,19620,19738,19887,40870,59244,59336,59367,59413,59417,59423,59431,59437,59443,59452,59460,59478,59493,63789,63866,63894,63976,63986,64016,64018,64021,64025,64034,64037,64042,65074,65093,65107,65112,65127,65132,65375,65510,65536],gbChars:[0,36,38,45,50,81,89,95,96,100,103,104,105,109,126,133,148,172,175,179,208,306,307,308,309,310,311,312,313,341,428,443,544,545,558,741,742,749,750,805,819,820,7922,7924,7925,7927,7934,7943,7944,7945,7950,8062,8148,8149,8152,8164,8174,8236,8240,8262,8264,8374,8380,8381,8384,8388,8390,8392,8393,8394,8396,8401,8406,8416,8419,8424,8437,8439,8445,8482,8485,8496,8521,8603,8936,8946,9046,9050,9063,9066,9076,9092,9100,9108,9111,9113,9131,9162,9164,9218,9219,11329,11331,11334,11336,11346,11361,11363,11366,11370,11372,11375,11389,11682,11686,11687,11692,11694,11714,11716,11723,11725,11730,11736,11982,11989,12102,12336,12348,12350,12384,12393,12395,12397,12510,12553,12851,12962,12973,13738,13823,13919,13933,14080,14298,14585,14698,15583,15847,16318,16434,16438,16481,16729,17102,17122,17315,17320,17402,17418,17859,17909,17911,17915,17916,17936,17939,17961,18664,18703,18814,18962,19043,33469,33470,33471,33484,33485,33490,33497,33501,33505,33513,33520,33536,33550,37845,37921,37948,38029,38038,38064,38065,38066,38069,38075,38076,38078,39108,39109,39113,39114,39115,39116,39265,39394,189e3]}});var WT=v(($3e,QG)=>{QG.exports=[["0","\0",127],["8141","\uAC02\uAC03\uAC05\uAC06\uAC0B",4,"\uAC18\uAC1E\uAC1F\uAC21\uAC22\uAC23\uAC25",6,"\uAC2E\uAC32\uAC33\uAC34"],["8161","\uAC35\uAC36\uAC37\uAC3A\uAC3B\uAC3D\uAC3E\uAC3F\uAC41",9,"\uAC4C\uAC4E",5,"\uAC55"],["8181","\uAC56\uAC57\uAC59\uAC5A\uAC5B\uAC5D",18,"\uAC72\uAC73\uAC75\uAC76\uAC79\uAC7B",4,"\uAC82\uAC87\uAC88\uAC8D\uAC8E\uAC8F\uAC91\uAC92\uAC93\uAC95",6,"\uAC9E\uACA2",5,"\uACAB\uACAD\uACAE\uACB1",6,"\uACBA\uACBE\uACBF\uACC0\uACC2\uACC3\uACC5\uACC6\uACC7\uACC9\uACCA\uACCB\uACCD",7,"\uACD6\uACD8",7,"\uACE2\uACE3\uACE5\uACE6\uACE9\uACEB\uACED\uACEE\uACF2\uACF4\uACF7",4,"\uACFE\uACFF\uAD01\uAD02\uAD03\uAD05\uAD07",4,"\uAD0E\uAD10\uAD12\uAD13"],["8241","\uAD14\uAD15\uAD16\uAD17\uAD19\uAD1A\uAD1B\uAD1D\uAD1E\uAD1F\uAD21",7,"\uAD2A\uAD2B\uAD2E",5],["8261","\uAD36\uAD37\uAD39\uAD3A\uAD3B\uAD3D",6,"\uAD46\uAD48\uAD4A",5,"\uAD51\uAD52\uAD53\uAD55\uAD56\uAD57"],["8281","\uAD59",7,"\uAD62\uAD64",7,"\uAD6E\uAD6F\uAD71\uAD72\uAD77\uAD78\uAD79\uAD7A\uAD7E\uAD80\uAD83",4,"\uAD8A\uAD8B\uAD8D\uAD8E\uAD8F\uAD91",10,"\uAD9E",5,"\uADA5",17,"\uADB8",7,"\uADC2\uADC3\uADC5\uADC6\uADC7\uADC9",6,"\uADD2\uADD4",7,"\uADDD\uADDE\uADDF\uADE1\uADE2\uADE3\uADE5",18],["8341","\uADFA\uADFB\uADFD\uADFE\uAE02",5,"\uAE0A\uAE0C\uAE0E",5,"\uAE15",7],["8361","\uAE1D",18,"\uAE32\uAE33\uAE35\uAE36\uAE39\uAE3B\uAE3C"],["8381","\uAE3D\uAE3E\uAE3F\uAE42\uAE44\uAE47\uAE48\uAE49\uAE4B\uAE4F\uAE51\uAE52\uAE53\uAE55\uAE57",4,"\uAE5E\uAE62\uAE63\uAE64\uAE66\uAE67\uAE6A\uAE6B\uAE6D\uAE6E\uAE6F\uAE71",6,"\uAE7A\uAE7E",5,"\uAE86",5,"\uAE8D",46,"\uAEBF\uAEC1\uAEC2\uAEC3\uAEC5",6,"\uAECE\uAED2",5,"\uAEDA\uAEDB\uAEDD",8],["8441","\uAEE6\uAEE7\uAEE9\uAEEA\uAEEC\uAEEE",5,"\uAEF5\uAEF6\uAEF7\uAEF9\uAEFA\uAEFB\uAEFD",8],["8461","\uAF06\uAF09\uAF0A\uAF0B\uAF0C\uAF0E\uAF0F\uAF11",18],["8481","\uAF24",7,"\uAF2E\uAF2F\uAF31\uAF33\uAF35",6,"\uAF3E\uAF40\uAF44\uAF45\uAF46\uAF47\uAF4A",5,"\uAF51",10,"\uAF5E",5,"\uAF66",18,"\uAF7A",5,"\uAF81\uAF82\uAF83\uAF85\uAF86\uAF87\uAF89",6,"\uAF92\uAF93\uAF94\uAF96",5,"\uAF9D",26,"\uAFBA\uAFBB\uAFBD\uAFBE"],["8541","\uAFBF\uAFC1",5,"\uAFCA\uAFCC\uAFCF",4,"\uAFD5",6,"\uAFDD",4],["8561","\uAFE2",5,"\uAFEA",5,"\uAFF2\uAFF3\uAFF5\uAFF6\uAFF7\uAFF9",6,"\uB002\uB003"],["8581","\uB005",6,"\uB00D\uB00E\uB00F\uB011\uB012\uB013\uB015",6,"\uB01E",9,"\uB029",26,"\uB046\uB047\uB049\uB04B\uB04D\uB04F\uB050\uB051\uB052\uB056\uB058\uB05A\uB05B\uB05C\uB05E",29,"\uB07E\uB07F\uB081\uB082\uB083\uB085",6,"\uB08E\uB090\uB092",5,"\uB09B\uB09D\uB09E\uB0A3\uB0A4"],["8641","\uB0A5\uB0A6\uB0A7\uB0AA\uB0B0\uB0B2\uB0B6\uB0B7\uB0B9\uB0BA\uB0BB\uB0BD",6,"\uB0C6\uB0CA",5,"\uB0D2"],["8661","\uB0D3\uB0D5\uB0D6\uB0D7\uB0D9",6,"\uB0E1\uB0E2\uB0E3\uB0E4\uB0E6",10],["8681","\uB0F1",22,"\uB10A\uB10D\uB10E\uB10F\uB111\uB114\uB115\uB116\uB117\uB11A\uB11E",4,"\uB126\uB127\uB129\uB12A\uB12B\uB12D",6,"\uB136\uB13A",5,"\uB142\uB143\uB145\uB146\uB147\uB149",6,"\uB152\uB153\uB156\uB157\uB159\uB15A\uB15B\uB15D\uB15E\uB15F\uB161",22,"\uB17A\uB17B\uB17D\uB17E\uB17F\uB181\uB183",4,"\uB18A\uB18C\uB18E\uB18F\uB190\uB191\uB195\uB196\uB197\uB199\uB19A\uB19B\uB19D"],["8741","\uB19E",9,"\uB1A9",15],["8761","\uB1B9",18,"\uB1CD\uB1CE\uB1CF\uB1D1\uB1D2\uB1D3\uB1D5"],["8781","\uB1D6",5,"\uB1DE\uB1E0",7,"\uB1EA\uB1EB\uB1ED\uB1EE\uB1EF\uB1F1",7,"\uB1FA\uB1FC\uB1FE",5,"\uB206\uB207\uB209\uB20A\uB20D",6,"\uB216\uB218\uB21A",5,"\uB221",18,"\uB235",6,"\uB23D",26,"\uB259\uB25A\uB25B\uB25D\uB25E\uB25F\uB261",6,"\uB26A",4],["8841","\uB26F",4,"\uB276",5,"\uB27D",6,"\uB286\uB287\uB288\uB28A",4],["8861","\uB28F\uB292\uB293\uB295\uB296\uB297\uB29B",4,"\uB2A2\uB2A4\uB2A7\uB2A8\uB2A9\uB2AB\uB2AD\uB2AE\uB2AF\uB2B1\uB2B2\uB2B3\uB2B5\uB2B6\uB2B7"],["8881","\uB2B8",15,"\uB2CA\uB2CB\uB2CD\uB2CE\uB2CF\uB2D1\uB2D3",4,"\uB2DA\uB2DC\uB2DE\uB2DF\uB2E0\uB2E1\uB2E3\uB2E7\uB2E9\uB2EA\uB2F0\uB2F1\uB2F2\uB2F6\uB2FC\uB2FD\uB2FE\uB302\uB303\uB305\uB306\uB307\uB309",6,"\uB312\uB316",5,"\uB31D",54,"\uB357\uB359\uB35A\uB35D\uB360\uB361\uB362\uB363"],["8941","\uB366\uB368\uB36A\uB36C\uB36D\uB36F\uB372\uB373\uB375\uB376\uB377\uB379",6,"\uB382\uB386",5,"\uB38D"],["8961","\uB38E\uB38F\uB391\uB392\uB393\uB395",10,"\uB3A2",5,"\uB3A9\uB3AA\uB3AB\uB3AD"],["8981","\uB3AE",21,"\uB3C6\uB3C7\uB3C9\uB3CA\uB3CD\uB3CF\uB3D1\uB3D2\uB3D3\uB3D6\uB3D8\uB3DA\uB3DC\uB3DE\uB3DF\uB3E1\uB3E2\uB3E3\uB3E5\uB3E6\uB3E7\uB3E9",18,"\uB3FD",18,"\uB411",6,"\uB419\uB41A\uB41B\uB41D\uB41E\uB41F\uB421",6,"\uB42A\uB42C",7,"\uB435",15],["8a41","\uB445",10,"\uB452\uB453\uB455\uB456\uB457\uB459",6,"\uB462\uB464\uB466"],["8a61","\uB467",4,"\uB46D",18,"\uB481\uB482"],["8a81","\uB483",4,"\uB489",19,"\uB49E",5,"\uB4A5\uB4A6\uB4A7\uB4A9\uB4AA\uB4AB\uB4AD",7,"\uB4B6\uB4B8\uB4BA",5,"\uB4C1\uB4C2\uB4C3\uB4C5\uB4C6\uB4C7\uB4C9",6,"\uB4D1\uB4D2\uB4D3\uB4D4\uB4D6",5,"\uB4DE\uB4DF\uB4E1\uB4E2\uB4E5\uB4E7",4,"\uB4EE\uB4F0\uB4F2",5,"\uB4F9",26,"\uB516\uB517\uB519\uB51A\uB51D"],["8b41","\uB51E",5,"\uB526\uB52B",4,"\uB532\uB533\uB535\uB536\uB537\uB539",6,"\uB542\uB546"],["8b61","\uB547\uB548\uB549\uB54A\uB54E\uB54F\uB551\uB552\uB553\uB555",6,"\uB55E\uB562",8],["8b81","\uB56B",52,"\uB5A2\uB5A3\uB5A5\uB5A6\uB5A7\uB5A9\uB5AC\uB5AD\uB5AE\uB5AF\uB5B2\uB5B6",4,"\uB5BE\uB5BF\uB5C1\uB5C2\uB5C3\uB5C5",6,"\uB5CE\uB5D2",5,"\uB5D9",18,"\uB5ED",18],["8c41","\uB600",15,"\uB612\uB613\uB615\uB616\uB617\uB619",4],["8c61","\uB61E",6,"\uB626",5,"\uB62D",6,"\uB635",5],["8c81","\uB63B",12,"\uB649",26,"\uB665\uB666\uB667\uB669",50,"\uB69E\uB69F\uB6A1\uB6A2\uB6A3\uB6A5",5,"\uB6AD\uB6AE\uB6AF\uB6B0\uB6B2",16],["8d41","\uB6C3",16,"\uB6D5",8],["8d61","\uB6DE",17,"\uB6F1\uB6F2\uB6F3\uB6F5\uB6F6\uB6F7\uB6F9\uB6FA"],["8d81","\uB6FB",4,"\uB702\uB703\uB704\uB706",33,"\uB72A\uB72B\uB72D\uB72E\uB731",6,"\uB73A\uB73C",7,"\uB745\uB746\uB747\uB749\uB74A\uB74B\uB74D",6,"\uB756",9,"\uB761\uB762\uB763\uB765\uB766\uB767\uB769",6,"\uB772\uB774\uB776",5,"\uB77E\uB77F\uB781\uB782\uB783\uB785",6,"\uB78E\uB793\uB794\uB795\uB79A\uB79B\uB79D\uB79E"],["8e41","\uB79F\uB7A1",6,"\uB7AA\uB7AE",5,"\uB7B6\uB7B7\uB7B9",8],["8e61","\uB7C2",4,"\uB7C8\uB7CA",19],["8e81","\uB7DE",13,"\uB7EE\uB7EF\uB7F1\uB7F2\uB7F3\uB7F5",6,"\uB7FE\uB802",4,"\uB80A\uB80B\uB80D\uB80E\uB80F\uB811",6,"\uB81A\uB81C\uB81E",5,"\uB826\uB827\uB829\uB82A\uB82B\uB82D",6,"\uB836\uB83A",5,"\uB841\uB842\uB843\uB845",11,"\uB852\uB854",7,"\uB85E\uB85F\uB861\uB862\uB863\uB865",6,"\uB86E\uB870\uB872",5,"\uB879\uB87A\uB87B\uB87D",7],["8f41","\uB885",7,"\uB88E",17],["8f61","\uB8A0",7,"\uB8A9",6,"\uB8B1\uB8B2\uB8B3\uB8B5\uB8B6\uB8B7\uB8B9",4],["8f81","\uB8BE\uB8BF\uB8C2\uB8C4\uB8C6",5,"\uB8CD\uB8CE\uB8CF\uB8D1\uB8D2\uB8D3\uB8D5",7,"\uB8DE\uB8E0\uB8E2",5,"\uB8EA\uB8EB\uB8ED\uB8EE\uB8EF\uB8F1",6,"\uB8FA\uB8FC\uB8FE",5,"\uB905",18,"\uB919",6,"\uB921",26,"\uB93E\uB93F\uB941\uB942\uB943\uB945",6,"\uB94D\uB94E\uB950\uB952",5],["9041","\uB95A\uB95B\uB95D\uB95E\uB95F\uB961",6,"\uB96A\uB96C\uB96E",5,"\uB976\uB977\uB979\uB97A\uB97B\uB97D"],["9061","\uB97E",5,"\uB986\uB988\uB98B\uB98C\uB98F",15],["9081","\uB99F",12,"\uB9AE\uB9AF\uB9B1\uB9B2\uB9B3\uB9B5",6,"\uB9BE\uB9C0\uB9C2",5,"\uB9CA\uB9CB\uB9CD\uB9D3",4,"\uB9DA\uB9DC\uB9DF\uB9E0\uB9E2\uB9E6\uB9E7\uB9E9\uB9EA\uB9EB\uB9ED",6,"\uB9F6\uB9FB",4,"\uBA02",5,"\uBA09",11,"\uBA16",33,"\uBA3A\uBA3B\uBA3D\uBA3E\uBA3F\uBA41\uBA43\uBA44\uBA45\uBA46"],["9141","\uBA47\uBA4A\uBA4C\uBA4F\uBA50\uBA51\uBA52\uBA56\uBA57\uBA59\uBA5A\uBA5B\uBA5D",6,"\uBA66\uBA6A",5],["9161","\uBA72\uBA73\uBA75\uBA76\uBA77\uBA79",9,"\uBA86\uBA88\uBA89\uBA8A\uBA8B\uBA8D",5],["9181","\uBA93",20,"\uBAAA\uBAAD\uBAAE\uBAAF\uBAB1\uBAB3",4,"\uBABA\uBABC\uBABE",5,"\uBAC5\uBAC6\uBAC7\uBAC9",14,"\uBADA",33,"\uBAFD\uBAFE\uBAFF\uBB01\uBB02\uBB03\uBB05",7,"\uBB0E\uBB10\uBB12",5,"\uBB19\uBB1A\uBB1B\uBB1D\uBB1E\uBB1F\uBB21",6],["9241","\uBB28\uBB2A\uBB2C",7,"\uBB37\uBB39\uBB3A\uBB3F",4,"\uBB46\uBB48\uBB4A\uBB4B\uBB4C\uBB4E\uBB51\uBB52"],["9261","\uBB53\uBB55\uBB56\uBB57\uBB59",7,"\uBB62\uBB64",7,"\uBB6D",4],["9281","\uBB72",21,"\uBB89\uBB8A\uBB8B\uBB8D\uBB8E\uBB8F\uBB91",18,"\uBBA5\uBBA6\uBBA7\uBBA9\uBBAA\uBBAB\uBBAD",6,"\uBBB5\uBBB6\uBBB8",7,"\uBBC1\uBBC2\uBBC3\uBBC5\uBBC6\uBBC7\uBBC9",6,"\uBBD1\uBBD2\uBBD4",35,"\uBBFA\uBBFB\uBBFD\uBBFE\uBC01"],["9341","\uBC03",4,"\uBC0A\uBC0E\uBC10\uBC12\uBC13\uBC19\uBC1A\uBC20\uBC21\uBC22\uBC23\uBC26\uBC28\uBC2A\uBC2B\uBC2C\uBC2E\uBC2F\uBC32\uBC33\uBC35"],["9361","\uBC36\uBC37\uBC39",6,"\uBC42\uBC46\uBC47\uBC48\uBC4A\uBC4B\uBC4E\uBC4F\uBC51",8],["9381","\uBC5A\uBC5B\uBC5C\uBC5E",37,"\uBC86\uBC87\uBC89\uBC8A\uBC8D\uBC8F",4,"\uBC96\uBC98\uBC9B",4,"\uBCA2\uBCA3\uBCA5\uBCA6\uBCA9",6,"\uBCB2\uBCB6",5,"\uBCBE\uBCBF\uBCC1\uBCC2\uBCC3\uBCC5",7,"\uBCCE\uBCD2\uBCD3\uBCD4\uBCD6\uBCD7\uBCD9\uBCDA\uBCDB\uBCDD",22,"\uBCF7\uBCF9\uBCFA\uBCFB\uBCFD"],["9441","\uBCFE",5,"\uBD06\uBD08\uBD0A",5,"\uBD11\uBD12\uBD13\uBD15",8],["9461","\uBD1E",5,"\uBD25",6,"\uBD2D",12],["9481","\uBD3A",5,"\uBD41",6,"\uBD4A\uBD4B\uBD4D\uBD4E\uBD4F\uBD51",6,"\uBD5A",9,"\uBD65\uBD66\uBD67\uBD69",22,"\uBD82\uBD83\uBD85\uBD86\uBD8B",4,"\uBD92\uBD94\uBD96\uBD97\uBD98\uBD9B\uBD9D",6,"\uBDA5",10,"\uBDB1",6,"\uBDB9",24],["9541","\uBDD2\uBDD3\uBDD6\uBDD7\uBDD9\uBDDA\uBDDB\uBDDD",11,"\uBDEA",5,"\uBDF1"],["9561","\uBDF2\uBDF3\uBDF5\uBDF6\uBDF7\uBDF9",6,"\uBE01\uBE02\uBE04\uBE06",5,"\uBE0E\uBE0F\uBE11\uBE12\uBE13"],["9581","\uBE15",6,"\uBE1E\uBE20",35,"\uBE46\uBE47\uBE49\uBE4A\uBE4B\uBE4D\uBE4F",4,"\uBE56\uBE58\uBE5C\uBE5D\uBE5E\uBE5F\uBE62\uBE63\uBE65\uBE66\uBE67\uBE69\uBE6B",4,"\uBE72\uBE76",4,"\uBE7E\uBE7F\uBE81\uBE82\uBE83\uBE85",6,"\uBE8E\uBE92",5,"\uBE9A",13,"\uBEA9",14],["9641","\uBEB8",23,"\uBED2\uBED3"],["9661","\uBED5\uBED6\uBED9",6,"\uBEE1\uBEE2\uBEE6",5,"\uBEED",8],["9681","\uBEF6",10,"\uBF02",5,"\uBF0A",13,"\uBF1A\uBF1E",33,"\uBF42\uBF43\uBF45\uBF46\uBF47\uBF49",6,"\uBF52\uBF53\uBF54\uBF56",44],["9741","\uBF83",16,"\uBF95",8],["9761","\uBF9E",17,"\uBFB1",7],["9781","\uBFB9",11,"\uBFC6",5,"\uBFCE\uBFCF\uBFD1\uBFD2\uBFD3\uBFD5",6,"\uBFDD\uBFDE\uBFE0\uBFE2",89,"\uC03D\uC03E\uC03F"],["9841","\uC040",16,"\uC052",5,"\uC059\uC05A\uC05B"],["9861","\uC05D\uC05E\uC05F\uC061",6,"\uC06A",15],["9881","\uC07A",21,"\uC092\uC093\uC095\uC096\uC097\uC099",6,"\uC0A2\uC0A4\uC0A6",5,"\uC0AE\uC0B1\uC0B2\uC0B7",4,"\uC0BE\uC0C2\uC0C3\uC0C4\uC0C6\uC0C7\uC0CA\uC0CB\uC0CD\uC0CE\uC0CF\uC0D1",6,"\uC0DA\uC0DE",5,"\uC0E6\uC0E7\uC0E9\uC0EA\uC0EB\uC0ED",6,"\uC0F6\uC0F8\uC0FA",5,"\uC101\uC102\uC103\uC105\uC106\uC107\uC109",6,"\uC111\uC112\uC113\uC114\uC116",5,"\uC121\uC122\uC125\uC128\uC129\uC12A\uC12B\uC12E"],["9941","\uC132\uC133\uC134\uC135\uC137\uC13A\uC13B\uC13D\uC13E\uC13F\uC141",6,"\uC14A\uC14E",5,"\uC156\uC157"],["9961","\uC159\uC15A\uC15B\uC15D",6,"\uC166\uC16A",5,"\uC171\uC172\uC173\uC175\uC176\uC177\uC179\uC17A\uC17B"],["9981","\uC17C",8,"\uC186",5,"\uC18F\uC191\uC192\uC193\uC195\uC197",4,"\uC19E\uC1A0\uC1A2\uC1A3\uC1A4\uC1A6\uC1A7\uC1AA\uC1AB\uC1AD\uC1AE\uC1AF\uC1B1",11,"\uC1BE",5,"\uC1C5\uC1C6\uC1C7\uC1C9\uC1CA\uC1CB\uC1CD",6,"\uC1D5\uC1D6\uC1D9",6,"\uC1E1\uC1E2\uC1E3\uC1E5\uC1E6\uC1E7\uC1E9",6,"\uC1F2\uC1F4",7,"\uC1FE\uC1FF\uC201\uC202\uC203\uC205",6,"\uC20E\uC210\uC212",5,"\uC21A\uC21B\uC21D\uC21E\uC221\uC222\uC223"],["9a41","\uC224\uC225\uC226\uC227\uC22A\uC22C\uC22E\uC230\uC233\uC235",16],["9a61","\uC246\uC247\uC249",6,"\uC252\uC253\uC255\uC256\uC257\uC259",6,"\uC261\uC262\uC263\uC264\uC266"],["9a81","\uC267",4,"\uC26E\uC26F\uC271\uC272\uC273\uC275",6,"\uC27E\uC280\uC282",5,"\uC28A",5,"\uC291",6,"\uC299\uC29A\uC29C\uC29E",5,"\uC2A6\uC2A7\uC2A9\uC2AA\uC2AB\uC2AE",5,"\uC2B6\uC2B8\uC2BA",33,"\uC2DE\uC2DF\uC2E1\uC2E2\uC2E5",5,"\uC2EE\uC2F0\uC2F2\uC2F3\uC2F4\uC2F5\uC2F7\uC2FA\uC2FD\uC2FE\uC2FF\uC301",6,"\uC30A\uC30B\uC30E\uC30F"],["9b41","\uC310\uC311\uC312\uC316\uC317\uC319\uC31A\uC31B\uC31D",6,"\uC326\uC327\uC32A",8],["9b61","\uC333",17,"\uC346",7],["9b81","\uC34E",25,"\uC36A\uC36B\uC36D\uC36E\uC36F\uC371\uC373",4,"\uC37A\uC37B\uC37E",5,"\uC385\uC386\uC387\uC389\uC38A\uC38B\uC38D",50,"\uC3C1",22,"\uC3DA"],["9c41","\uC3DB\uC3DD\uC3DE\uC3E1\uC3E3",4,"\uC3EA\uC3EB\uC3EC\uC3EE",5,"\uC3F6\uC3F7\uC3F9",5],["9c61","\uC3FF",8,"\uC409",6,"\uC411",9],["9c81","\uC41B",8,"\uC425",6,"\uC42D\uC42E\uC42F\uC431\uC432\uC433\uC435",6,"\uC43E",9,"\uC449",26,"\uC466\uC467\uC469\uC46A\uC46B\uC46D",6,"\uC476\uC477\uC478\uC47A",5,"\uC481",18,"\uC495",6,"\uC49D",12],["9d41","\uC4AA",13,"\uC4B9\uC4BA\uC4BB\uC4BD",8],["9d61","\uC4C6",25],["9d81","\uC4E0",8,"\uC4EA",5,"\uC4F2\uC4F3\uC4F5\uC4F6\uC4F7\uC4F9\uC4FB\uC4FC\uC4FD\uC4FE\uC502",9,"\uC50D\uC50E\uC50F\uC511\uC512\uC513\uC515",6,"\uC51D",10,"\uC52A\uC52B\uC52D\uC52E\uC52F\uC531",6,"\uC53A\uC53C\uC53E",5,"\uC546\uC547\uC54B\uC54F\uC550\uC551\uC552\uC556\uC55A\uC55B\uC55C\uC55F\uC562\uC563\uC565\uC566\uC567\uC569",6,"\uC572\uC576",5,"\uC57E\uC57F\uC581\uC582\uC583\uC585\uC586\uC588\uC589\uC58A\uC58B\uC58E\uC590\uC592\uC593\uC594"],["9e41","\uC596\uC599\uC59A\uC59B\uC59D\uC59E\uC59F\uC5A1",7,"\uC5AA",9,"\uC5B6"],["9e61","\uC5B7\uC5BA\uC5BF",4,"\uC5CB\uC5CD\uC5CF\uC5D2\uC5D3\uC5D5\uC5D6\uC5D7\uC5D9",6,"\uC5E2\uC5E4\uC5E6\uC5E7"],["9e81","\uC5E8\uC5E9\uC5EA\uC5EB\uC5EF\uC5F1\uC5F2\uC5F3\uC5F5\uC5F8\uC5F9\uC5FA\uC5FB\uC602\uC603\uC604\uC609\uC60A\uC60B\uC60D\uC60E\uC60F\uC611",6,"\uC61A\uC61D",6,"\uC626\uC627\uC629\uC62A\uC62B\uC62F\uC631\uC632\uC636\uC638\uC63A\uC63C\uC63D\uC63E\uC63F\uC642\uC643\uC645\uC646\uC647\uC649",6,"\uC652\uC656",5,"\uC65E\uC65F\uC661",10,"\uC66D\uC66E\uC670\uC672",5,"\uC67A\uC67B\uC67D\uC67E\uC67F\uC681",6,"\uC68A\uC68C\uC68E",5,"\uC696\uC697\uC699\uC69A\uC69B\uC69D",6,"\uC6A6"],["9f41","\uC6A8\uC6AA",5,"\uC6B2\uC6B3\uC6B5\uC6B6\uC6B7\uC6BB",4,"\uC6C2\uC6C4\uC6C6",5,"\uC6CE"],["9f61","\uC6CF\uC6D1\uC6D2\uC6D3\uC6D5",6,"\uC6DE\uC6DF\uC6E2",5,"\uC6EA\uC6EB\uC6ED\uC6EE\uC6EF\uC6F1\uC6F2"],["9f81","\uC6F3",4,"\uC6FA\uC6FB\uC6FC\uC6FE",5,"\uC706\uC707\uC709\uC70A\uC70B\uC70D",6,"\uC716\uC718\uC71A",5,"\uC722\uC723\uC725\uC726\uC727\uC729",6,"\uC732\uC734\uC736\uC738\uC739\uC73A\uC73B\uC73E\uC73F\uC741\uC742\uC743\uC745",4,"\uC74B\uC74E\uC750\uC759\uC75A\uC75B\uC75D\uC75E\uC75F\uC761",6,"\uC769\uC76A\uC76C",7,"\uC776\uC777\uC779\uC77A\uC77B\uC77F\uC780\uC781\uC782\uC786\uC78B\uC78C\uC78D\uC78F\uC792\uC793\uC795\uC799\uC79B",4,"\uC7A2\uC7A7",4,"\uC7AE\uC7AF\uC7B1\uC7B2\uC7B3\uC7B5\uC7B6\uC7B7"],["a041","\uC7B8\uC7B9\uC7BA\uC7BB\uC7BE\uC7C2",5,"\uC7CA\uC7CB\uC7CD\uC7CF\uC7D1",6,"\uC7D9\uC7DA\uC7DB\uC7DC"],["a061","\uC7DE",5,"\uC7E5\uC7E6\uC7E7\uC7E9\uC7EA\uC7EB\uC7ED",13],["a081","\uC7FB",4,"\uC802\uC803\uC805\uC806\uC807\uC809\uC80B",4,"\uC812\uC814\uC817",4,"\uC81E\uC81F\uC821\uC822\uC823\uC825",6,"\uC82E\uC830\uC832",5,"\uC839\uC83A\uC83B\uC83D\uC83E\uC83F\uC841",6,"\uC84A\uC84B\uC84E",5,"\uC855",26,"\uC872\uC873\uC875\uC876\uC877\uC879\uC87B",4,"\uC882\uC884\uC888\uC889\uC88A\uC88E",5,"\uC895",7,"\uC89E\uC8A0\uC8A2\uC8A3\uC8A4"],["a141","\uC8A5\uC8A6\uC8A7\uC8A9",18,"\uC8BE\uC8BF\uC8C0\uC8C1"],["a161","\uC8C2\uC8C3\uC8C5\uC8C6\uC8C7\uC8C9\uC8CA\uC8CB\uC8CD",6,"\uC8D6\uC8D8\uC8DA",5,"\uC8E2\uC8E3\uC8E5"],["a181","\uC8E6",14,"\uC8F6",5,"\uC8FE\uC8FF\uC901\uC902\uC903\uC907",4,"\uC90E\u3000\u3001\u3002\xB7\u2025\u2026\xA8\u3003\xAD\u2015\u2225\uFF3C\u223C\u2018\u2019\u201C\u201D\u3014\u3015\u3008",9,"\xB1\xD7\xF7\u2260\u2264\u2265\u221E\u2234\xB0\u2032\u2033\u2103\u212B\uFFE0\uFFE1\uFFE5\u2642\u2640\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\xA7\u203B\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u2192\u2190\u2191\u2193\u2194\u3013\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229\u2227\u2228\uFFE2"],["a241","\uC910\uC912",5,"\uC919",18],["a261","\uC92D",6,"\uC935",18],["a281","\uC948",7,"\uC952\uC953\uC955\uC956\uC957\uC959",6,"\uC962\uC964",7,"\uC96D\uC96E\uC96F\u21D2\u21D4\u2200\u2203\xB4\uFF5E\u02C7\u02D8\u02DD\u02DA\u02D9\xB8\u02DB\xA1\xBF\u02D0\u222E\u2211\u220F\xA4\u2109\u2030\u25C1\u25C0\u25B7\u25B6\u2664\u2660\u2661\u2665\u2667\u2663\u2299\u25C8\u25A3\u25D0\u25D1\u2592\u25A4\u25A5\u25A8\u25A7\u25A6\u25A9\u2668\u260F\u260E\u261C\u261E\xB6\u2020\u2021\u2195\u2197\u2199\u2196\u2198\u266D\u2669\u266A\u266C\u327F\u321C\u2116\u33C7\u2122\u33C2\u33D8\u2121\u20AC\xAE"],["a341","\uC971\uC972\uC973\uC975",6,"\uC97D",10,"\uC98A\uC98B\uC98D\uC98E\uC98F"],["a361","\uC991",6,"\uC99A\uC99C\uC99E",16],["a381","\uC9AF",16,"\uC9C2\uC9C3\uC9C5\uC9C6\uC9C9\uC9CB",4,"\uC9D2\uC9D4\uC9D7\uC9D8\uC9DB\uFF01",58,"\uFFE6\uFF3D",32,"\uFFE3"],["a441","\uC9DE\uC9DF\uC9E1\uC9E3\uC9E5\uC9E6\uC9E8\uC9E9\uC9EA\uC9EB\uC9EE\uC9F2",5,"\uC9FA\uC9FB\uC9FD\uC9FE\uC9FF\uCA01\uCA02\uCA03\uCA04"],["a461","\uCA05\uCA06\uCA07\uCA0A\uCA0E",5,"\uCA15\uCA16\uCA17\uCA19",12],["a481","\uCA26\uCA27\uCA28\uCA2A",28,"\u3131",93],["a541","\uCA47",4,"\uCA4E\uCA4F\uCA51\uCA52\uCA53\uCA55",6,"\uCA5E\uCA62",5,"\uCA69\uCA6A"],["a561","\uCA6B",17,"\uCA7E",5,"\uCA85\uCA86"],["a581","\uCA87",16,"\uCA99",14,"\u2170",9],["a5b0","\u2160",9],["a5c1","\u0391",16,"\u03A3",6],["a5e1","\u03B1",16,"\u03C3",6],["a641","\uCAA8",19,"\uCABE\uCABF\uCAC1\uCAC2\uCAC3\uCAC5"],["a661","\uCAC6",5,"\uCACE\uCAD0\uCAD2\uCAD4\uCAD5\uCAD6\uCAD7\uCADA",5,"\uCAE1",6],["a681","\uCAE8\uCAE9\uCAEA\uCAEB\uCAED",6,"\uCAF5",18,"\uCB09\uCB0A\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542\u2512\u2511\u251A\u2519\u2516\u2515\u250E\u250D\u251E\u251F\u2521\u2522\u2526\u2527\u2529\u252A\u252D\u252E\u2531\u2532\u2535\u2536\u2539\u253A\u253D\u253E\u2540\u2541\u2543",7],["a741","\uCB0B",4,"\uCB11\uCB12\uCB13\uCB15\uCB16\uCB17\uCB19",6,"\uCB22",7],["a761","\uCB2A",22,"\uCB42\uCB43\uCB44"],["a781","\uCB45\uCB46\uCB47\uCB4A\uCB4B\uCB4D\uCB4E\uCB4F\uCB51",6,"\uCB5A\uCB5B\uCB5C\uCB5E",5,"\uCB65",7,"\u3395\u3396\u3397\u2113\u3398\u33C4\u33A3\u33A4\u33A5\u33A6\u3399",9,"\u33CA\u338D\u338E\u338F\u33CF\u3388\u3389\u33C8\u33A7\u33A8\u33B0",9,"\u3380",4,"\u33BA",5,"\u3390",4,"\u2126\u33C0\u33C1\u338A\u338B\u338C\u33D6\u33C5\u33AD\u33AE\u33AF\u33DB\u33A9\u33AA\u33AB\u33AC\u33DD\u33D0\u33D3\u33C3\u33C9\u33DC\u33C6"],["a841","\uCB6D",10,"\uCB7A",14],["a861","\uCB89",18,"\uCB9D",6],["a881","\uCBA4",19,"\uCBB9",11,"\xC6\xD0\xAA\u0126"],["a8a6","\u0132"],["a8a8","\u013F\u0141\xD8\u0152\xBA\xDE\u0166\u014A"],["a8b1","\u3260",27,"\u24D0",25,"\u2460",14,"\xBD\u2153\u2154\xBC\xBE\u215B\u215C\u215D\u215E"],["a941","\uCBC5",14,"\uCBD5",10],["a961","\uCBE0\uCBE1\uCBE2\uCBE3\uCBE5\uCBE6\uCBE8\uCBEA",18],["a981","\uCBFD",14,"\uCC0E\uCC0F\uCC11\uCC12\uCC13\uCC15",6,"\uCC1E\uCC1F\uCC20\uCC23\uCC24\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0140\u0142\xF8\u0153\xDF\xFE\u0167\u014B\u0149\u3200",27,"\u249C",25,"\u2474",14,"\xB9\xB2\xB3\u2074\u207F\u2081\u2082\u2083\u2084"],["aa41","\uCC25\uCC26\uCC2A\uCC2B\uCC2D\uCC2F\uCC31",6,"\uCC3A\uCC3F",4,"\uCC46\uCC47\uCC49\uCC4A\uCC4B\uCC4D\uCC4E"],["aa61","\uCC4F",4,"\uCC56\uCC5A",5,"\uCC61\uCC62\uCC63\uCC65\uCC67\uCC69",6,"\uCC71\uCC72"],["aa81","\uCC73\uCC74\uCC76",29,"\u3041",82],["ab41","\uCC94\uCC95\uCC96\uCC97\uCC9A\uCC9B\uCC9D\uCC9E\uCC9F\uCCA1",6,"\uCCAA\uCCAE",5,"\uCCB6\uCCB7\uCCB9"],["ab61","\uCCBA\uCCBB\uCCBD",6,"\uCCC6\uCCC8\uCCCA",5,"\uCCD1\uCCD2\uCCD3\uCCD5",5],["ab81","\uCCDB",8,"\uCCE5",6,"\uCCED\uCCEE\uCCEF\uCCF1",12,"\u30A1",85],["ac41","\uCCFE\uCCFF\uCD00\uCD02",5,"\uCD0A\uCD0B\uCD0D\uCD0E\uCD0F\uCD11",6,"\uCD1A\uCD1C\uCD1E\uCD1F\uCD20"],["ac61","\uCD21\uCD22\uCD23\uCD25\uCD26\uCD27\uCD29\uCD2A\uCD2B\uCD2D",11,"\uCD3A",4],["ac81","\uCD3F",28,"\uCD5D\uCD5E\uCD5F\u0410",5,"\u0401\u0416",25],["acd1","\u0430",5,"\u0451\u0436",25],["ad41","\uCD61\uCD62\uCD63\uCD65",6,"\uCD6E\uCD70\uCD72",5,"\uCD79",7],["ad61","\uCD81",6,"\uCD89",10,"\uCD96\uCD97\uCD99\uCD9A\uCD9B\uCD9D\uCD9E\uCD9F"],["ad81","\uCDA0\uCDA1\uCDA2\uCDA3\uCDA6\uCDA8\uCDAA",5,"\uCDB1",18,"\uCDC5"],["ae41","\uCDC6",5,"\uCDCD\uCDCE\uCDCF\uCDD1",16],["ae61","\uCDE2",5,"\uCDE9\uCDEA\uCDEB\uCDED\uCDEE\uCDEF\uCDF1",6,"\uCDFA\uCDFC\uCDFE",4],["ae81","\uCE03\uCE05\uCE06\uCE07\uCE09\uCE0A\uCE0B\uCE0D",6,"\uCE15\uCE16\uCE17\uCE18\uCE1A",5,"\uCE22\uCE23\uCE25\uCE26\uCE27\uCE29\uCE2A\uCE2B"],["af41","\uCE2C\uCE2D\uCE2E\uCE2F\uCE32\uCE34\uCE36",19],["af61","\uCE4A",13,"\uCE5A\uCE5B\uCE5D\uCE5E\uCE62",5,"\uCE6A\uCE6C"],["af81","\uCE6E",5,"\uCE76\uCE77\uCE79\uCE7A\uCE7B\uCE7D",6,"\uCE86\uCE88\uCE8A",5,"\uCE92\uCE93\uCE95\uCE96\uCE97\uCE99"],["b041","\uCE9A",5,"\uCEA2\uCEA6",5,"\uCEAE",12],["b061","\uCEBB",5,"\uCEC2",19],["b081","\uCED6",13,"\uCEE6\uCEE7\uCEE9\uCEEA\uCEED",6,"\uCEF6\uCEFA",5,"\uAC00\uAC01\uAC04\uAC07\uAC08\uAC09\uAC0A\uAC10",7,"\uAC19",4,"\uAC20\uAC24\uAC2C\uAC2D\uAC2F\uAC30\uAC31\uAC38\uAC39\uAC3C\uAC40\uAC4B\uAC4D\uAC54\uAC58\uAC5C\uAC70\uAC71\uAC74\uAC77\uAC78\uAC7A\uAC80\uAC81\uAC83\uAC84\uAC85\uAC86\uAC89\uAC8A\uAC8B\uAC8C\uAC90\uAC94\uAC9C\uAC9D\uAC9F\uACA0\uACA1\uACA8\uACA9\uACAA\uACAC\uACAF\uACB0\uACB8\uACB9\uACBB\uACBC\uACBD\uACC1\uACC4\uACC8\uACCC\uACD5\uACD7\uACE0\uACE1\uACE4\uACE7\uACE8\uACEA\uACEC\uACEF\uACF0\uACF1\uACF3\uACF5\uACF6\uACFC\uACFD\uAD00\uAD04\uAD06"],["b141","\uCF02\uCF03\uCF05\uCF06\uCF07\uCF09",6,"\uCF12\uCF14\uCF16",5,"\uCF1D\uCF1E\uCF1F\uCF21\uCF22\uCF23"],["b161","\uCF25",6,"\uCF2E\uCF32",5,"\uCF39",11],["b181","\uCF45",14,"\uCF56\uCF57\uCF59\uCF5A\uCF5B\uCF5D",6,"\uCF66\uCF68\uCF6A\uCF6B\uCF6C\uAD0C\uAD0D\uAD0F\uAD11\uAD18\uAD1C\uAD20\uAD29\uAD2C\uAD2D\uAD34\uAD35\uAD38\uAD3C\uAD44\uAD45\uAD47\uAD49\uAD50\uAD54\uAD58\uAD61\uAD63\uAD6C\uAD6D\uAD70\uAD73\uAD74\uAD75\uAD76\uAD7B\uAD7C\uAD7D\uAD7F\uAD81\uAD82\uAD88\uAD89\uAD8C\uAD90\uAD9C\uAD9D\uADA4\uADB7\uADC0\uADC1\uADC4\uADC8\uADD0\uADD1\uADD3\uADDC\uADE0\uADE4\uADF8\uADF9\uADFC\uADFF\uAE00\uAE01\uAE08\uAE09\uAE0B\uAE0D\uAE14\uAE30\uAE31\uAE34\uAE37\uAE38\uAE3A\uAE40\uAE41\uAE43\uAE45\uAE46\uAE4A\uAE4C\uAE4D\uAE4E\uAE50\uAE54\uAE56\uAE5C\uAE5D\uAE5F\uAE60\uAE61\uAE65\uAE68\uAE69\uAE6C\uAE70\uAE78"],["b241","\uCF6D\uCF6E\uCF6F\uCF72\uCF73\uCF75\uCF76\uCF77\uCF79",6,"\uCF81\uCF82\uCF83\uCF84\uCF86",5,"\uCF8D"],["b261","\uCF8E",18,"\uCFA2",5,"\uCFA9"],["b281","\uCFAA",5,"\uCFB1",18,"\uCFC5",6,"\uAE79\uAE7B\uAE7C\uAE7D\uAE84\uAE85\uAE8C\uAEBC\uAEBD\uAEBE\uAEC0\uAEC4\uAECC\uAECD\uAECF\uAED0\uAED1\uAED8\uAED9\uAEDC\uAEE8\uAEEB\uAEED\uAEF4\uAEF8\uAEFC\uAF07\uAF08\uAF0D\uAF10\uAF2C\uAF2D\uAF30\uAF32\uAF34\uAF3C\uAF3D\uAF3F\uAF41\uAF42\uAF43\uAF48\uAF49\uAF50\uAF5C\uAF5D\uAF64\uAF65\uAF79\uAF80\uAF84\uAF88\uAF90\uAF91\uAF95\uAF9C\uAFB8\uAFB9\uAFBC\uAFC0\uAFC7\uAFC8\uAFC9\uAFCB\uAFCD\uAFCE\uAFD4\uAFDC\uAFE8\uAFE9\uAFF0\uAFF1\uAFF4\uAFF8\uB000\uB001\uB004\uB00C\uB010\uB014\uB01C\uB01D\uB028\uB044\uB045\uB048\uB04A\uB04C\uB04E\uB053\uB054\uB055\uB057\uB059"],["b341","\uCFCC",19,"\uCFE2\uCFE3\uCFE5\uCFE6\uCFE7\uCFE9"],["b361","\uCFEA",5,"\uCFF2\uCFF4\uCFF6",5,"\uCFFD\uCFFE\uCFFF\uD001\uD002\uD003\uD005",5],["b381","\uD00B",5,"\uD012",5,"\uD019",19,"\uB05D\uB07C\uB07D\uB080\uB084\uB08C\uB08D\uB08F\uB091\uB098\uB099\uB09A\uB09C\uB09F\uB0A0\uB0A1\uB0A2\uB0A8\uB0A9\uB0AB",4,"\uB0B1\uB0B3\uB0B4\uB0B5\uB0B8\uB0BC\uB0C4\uB0C5\uB0C7\uB0C8\uB0C9\uB0D0\uB0D1\uB0D4\uB0D8\uB0E0\uB0E5\uB108\uB109\uB10B\uB10C\uB110\uB112\uB113\uB118\uB119\uB11B\uB11C\uB11D\uB123\uB124\uB125\uB128\uB12C\uB134\uB135\uB137\uB138\uB139\uB140\uB141\uB144\uB148\uB150\uB151\uB154\uB155\uB158\uB15C\uB160\uB178\uB179\uB17C\uB180\uB182\uB188\uB189\uB18B\uB18D\uB192\uB193\uB194\uB198\uB19C\uB1A8\uB1CC\uB1D0\uB1D4\uB1DC\uB1DD"],["b441","\uD02E",5,"\uD036\uD037\uD039\uD03A\uD03B\uD03D",6,"\uD046\uD048\uD04A",5],["b461","\uD051\uD052\uD053\uD055\uD056\uD057\uD059",6,"\uD061",10,"\uD06E\uD06F"],["b481","\uD071\uD072\uD073\uD075",6,"\uD07E\uD07F\uD080\uD082",18,"\uB1DF\uB1E8\uB1E9\uB1EC\uB1F0\uB1F9\uB1FB\uB1FD\uB204\uB205\uB208\uB20B\uB20C\uB214\uB215\uB217\uB219\uB220\uB234\uB23C\uB258\uB25C\uB260\uB268\uB269\uB274\uB275\uB27C\uB284\uB285\uB289\uB290\uB291\uB294\uB298\uB299\uB29A\uB2A0\uB2A1\uB2A3\uB2A5\uB2A6\uB2AA\uB2AC\uB2B0\uB2B4\uB2C8\uB2C9\uB2CC\uB2D0\uB2D2\uB2D8\uB2D9\uB2DB\uB2DD\uB2E2\uB2E4\uB2E5\uB2E6\uB2E8\uB2EB",4,"\uB2F3\uB2F4\uB2F5\uB2F7",4,"\uB2FF\uB300\uB301\uB304\uB308\uB310\uB311\uB313\uB314\uB315\uB31C\uB354\uB355\uB356\uB358\uB35B\uB35C\uB35E\uB35F\uB364\uB365"],["b541","\uD095",14,"\uD0A6\uD0A7\uD0A9\uD0AA\uD0AB\uD0AD",5],["b561","\uD0B3\uD0B6\uD0B8\uD0BA",5,"\uD0C2\uD0C3\uD0C5\uD0C6\uD0C7\uD0CA",5,"\uD0D2\uD0D6",4],["b581","\uD0DB\uD0DE\uD0DF\uD0E1\uD0E2\uD0E3\uD0E5",6,"\uD0EE\uD0F2",5,"\uD0F9",11,"\uB367\uB369\uB36B\uB36E\uB370\uB371\uB374\uB378\uB380\uB381\uB383\uB384\uB385\uB38C\uB390\uB394\uB3A0\uB3A1\uB3A8\uB3AC\uB3C4\uB3C5\uB3C8\uB3CB\uB3CC\uB3CE\uB3D0\uB3D4\uB3D5\uB3D7\uB3D9\uB3DB\uB3DD\uB3E0\uB3E4\uB3E8\uB3FC\uB410\uB418\uB41C\uB420\uB428\uB429\uB42B\uB434\uB450\uB451\uB454\uB458\uB460\uB461\uB463\uB465\uB46C\uB480\uB488\uB49D\uB4A4\uB4A8\uB4AC\uB4B5\uB4B7\uB4B9\uB4C0\uB4C4\uB4C8\uB4D0\uB4D5\uB4DC\uB4DD\uB4E0\uB4E3\uB4E4\uB4E6\uB4EC\uB4ED\uB4EF\uB4F1\uB4F8\uB514\uB515\uB518\uB51B\uB51C\uB524\uB525\uB527\uB528\uB529\uB52A\uB530\uB531\uB534\uB538"],["b641","\uD105",7,"\uD10E",17],["b661","\uD120",15,"\uD132\uD133\uD135\uD136\uD137\uD139\uD13B\uD13C\uD13D\uD13E"],["b681","\uD13F\uD142\uD146",5,"\uD14E\uD14F\uD151\uD152\uD153\uD155",6,"\uD15E\uD160\uD162",5,"\uD169\uD16A\uD16B\uD16D\uB540\uB541\uB543\uB544\uB545\uB54B\uB54C\uB54D\uB550\uB554\uB55C\uB55D\uB55F\uB560\uB561\uB5A0\uB5A1\uB5A4\uB5A8\uB5AA\uB5AB\uB5B0\uB5B1\uB5B3\uB5B4\uB5B5\uB5BB\uB5BC\uB5BD\uB5C0\uB5C4\uB5CC\uB5CD\uB5CF\uB5D0\uB5D1\uB5D8\uB5EC\uB610\uB611\uB614\uB618\uB625\uB62C\uB634\uB648\uB664\uB668\uB69C\uB69D\uB6A0\uB6A4\uB6AB\uB6AC\uB6B1\uB6D4\uB6F0\uB6F4\uB6F8\uB700\uB701\uB705\uB728\uB729\uB72C\uB72F\uB730\uB738\uB739\uB73B\uB744\uB748\uB74C\uB754\uB755\uB760\uB764\uB768\uB770\uB771\uB773\uB775\uB77C\uB77D\uB780\uB784\uB78C\uB78D\uB78F\uB790\uB791\uB792\uB796\uB797"],["b741","\uD16E",13,"\uD17D",6,"\uD185\uD186\uD187\uD189\uD18A"],["b761","\uD18B",20,"\uD1A2\uD1A3\uD1A5\uD1A6\uD1A7"],["b781","\uD1A9",6,"\uD1B2\uD1B4\uD1B6\uD1B7\uD1B8\uD1B9\uD1BB\uD1BD\uD1BE\uD1BF\uD1C1",14,"\uB798\uB799\uB79C\uB7A0\uB7A8\uB7A9\uB7AB\uB7AC\uB7AD\uB7B4\uB7B5\uB7B8\uB7C7\uB7C9\uB7EC\uB7ED\uB7F0\uB7F4\uB7FC\uB7FD\uB7FF\uB800\uB801\uB807\uB808\uB809\uB80C\uB810\uB818\uB819\uB81B\uB81D\uB824\uB825\uB828\uB82C\uB834\uB835\uB837\uB838\uB839\uB840\uB844\uB851\uB853\uB85C\uB85D\uB860\uB864\uB86C\uB86D\uB86F\uB871\uB878\uB87C\uB88D\uB8A8\uB8B0\uB8B4\uB8B8\uB8C0\uB8C1\uB8C3\uB8C5\uB8CC\uB8D0\uB8D4\uB8DD\uB8DF\uB8E1\uB8E8\uB8E9\uB8EC\uB8F0\uB8F8\uB8F9\uB8FB\uB8FD\uB904\uB918\uB920\uB93C\uB93D\uB940\uB944\uB94C\uB94F\uB951\uB958\uB959\uB95C\uB960\uB968\uB969"],["b841","\uD1D0",7,"\uD1D9",17],["b861","\uD1EB",8,"\uD1F5\uD1F6\uD1F7\uD1F9",13],["b881","\uD208\uD20A",5,"\uD211",24,"\uB96B\uB96D\uB974\uB975\uB978\uB97C\uB984\uB985\uB987\uB989\uB98A\uB98D\uB98E\uB9AC\uB9AD\uB9B0\uB9B4\uB9BC\uB9BD\uB9BF\uB9C1\uB9C8\uB9C9\uB9CC\uB9CE",4,"\uB9D8\uB9D9\uB9DB\uB9DD\uB9DE\uB9E1\uB9E3\uB9E4\uB9E5\uB9E8\uB9EC\uB9F4\uB9F5\uB9F7\uB9F8\uB9F9\uB9FA\uBA00\uBA01\uBA08\uBA15\uBA38\uBA39\uBA3C\uBA40\uBA42\uBA48\uBA49\uBA4B\uBA4D\uBA4E\uBA53\uBA54\uBA55\uBA58\uBA5C\uBA64\uBA65\uBA67\uBA68\uBA69\uBA70\uBA71\uBA74\uBA78\uBA83\uBA84\uBA85\uBA87\uBA8C\uBAA8\uBAA9\uBAAB\uBAAC\uBAB0\uBAB2\uBAB8\uBAB9\uBABB\uBABD\uBAC4\uBAC8\uBAD8\uBAD9\uBAFC"],["b941","\uD22A\uD22B\uD22E\uD22F\uD231\uD232\uD233\uD235",6,"\uD23E\uD240\uD242",5,"\uD249\uD24A\uD24B\uD24C"],["b961","\uD24D",14,"\uD25D",6,"\uD265\uD266\uD267\uD268"],["b981","\uD269",22,"\uD282\uD283\uD285\uD286\uD287\uD289\uD28A\uD28B\uD28C\uBB00\uBB04\uBB0D\uBB0F\uBB11\uBB18\uBB1C\uBB20\uBB29\uBB2B\uBB34\uBB35\uBB36\uBB38\uBB3B\uBB3C\uBB3D\uBB3E\uBB44\uBB45\uBB47\uBB49\uBB4D\uBB4F\uBB50\uBB54\uBB58\uBB61\uBB63\uBB6C\uBB88\uBB8C\uBB90\uBBA4\uBBA8\uBBAC\uBBB4\uBBB7\uBBC0\uBBC4\uBBC8\uBBD0\uBBD3\uBBF8\uBBF9\uBBFC\uBBFF\uBC00\uBC02\uBC08\uBC09\uBC0B\uBC0C\uBC0D\uBC0F\uBC11\uBC14",4,"\uBC1B",4,"\uBC24\uBC25\uBC27\uBC29\uBC2D\uBC30\uBC31\uBC34\uBC38\uBC40\uBC41\uBC43\uBC44\uBC45\uBC49\uBC4C\uBC4D\uBC50\uBC5D\uBC84\uBC85\uBC88\uBC8B\uBC8C\uBC8E\uBC94\uBC95\uBC97"],["ba41","\uD28D\uD28E\uD28F\uD292\uD293\uD294\uD296",5,"\uD29D\uD29E\uD29F\uD2A1\uD2A2\uD2A3\uD2A5",6,"\uD2AD"],["ba61","\uD2AE\uD2AF\uD2B0\uD2B2",5,"\uD2BA\uD2BB\uD2BD\uD2BE\uD2C1\uD2C3",4,"\uD2CA\uD2CC",5],["ba81","\uD2D2\uD2D3\uD2D5\uD2D6\uD2D7\uD2D9\uD2DA\uD2DB\uD2DD",6,"\uD2E6",9,"\uD2F2\uD2F3\uD2F5\uD2F6\uD2F7\uD2F9\uD2FA\uBC99\uBC9A\uBCA0\uBCA1\uBCA4\uBCA7\uBCA8\uBCB0\uBCB1\uBCB3\uBCB4\uBCB5\uBCBC\uBCBD\uBCC0\uBCC4\uBCCD\uBCCF\uBCD0\uBCD1\uBCD5\uBCD8\uBCDC\uBCF4\uBCF5\uBCF6\uBCF8\uBCFC\uBD04\uBD05\uBD07\uBD09\uBD10\uBD14\uBD24\uBD2C\uBD40\uBD48\uBD49\uBD4C\uBD50\uBD58\uBD59\uBD64\uBD68\uBD80\uBD81\uBD84\uBD87\uBD88\uBD89\uBD8A\uBD90\uBD91\uBD93\uBD95\uBD99\uBD9A\uBD9C\uBDA4\uBDB0\uBDB8\uBDD4\uBDD5\uBDD8\uBDDC\uBDE9\uBDF0\uBDF4\uBDF8\uBE00\uBE03\uBE05\uBE0C\uBE0D\uBE10\uBE14\uBE1C\uBE1D\uBE1F\uBE44\uBE45\uBE48\uBE4C\uBE4E\uBE54\uBE55\uBE57\uBE59\uBE5A\uBE5B\uBE60\uBE61\uBE64"],["bb41","\uD2FB",4,"\uD302\uD304\uD306",5,"\uD30F\uD311\uD312\uD313\uD315\uD317",4,"\uD31E\uD322\uD323"],["bb61","\uD324\uD326\uD327\uD32A\uD32B\uD32D\uD32E\uD32F\uD331",6,"\uD33A\uD33E",5,"\uD346\uD347\uD348\uD349"],["bb81","\uD34A",31,"\uBE68\uBE6A\uBE70\uBE71\uBE73\uBE74\uBE75\uBE7B\uBE7C\uBE7D\uBE80\uBE84\uBE8C\uBE8D\uBE8F\uBE90\uBE91\uBE98\uBE99\uBEA8\uBED0\uBED1\uBED4\uBED7\uBED8\uBEE0\uBEE3\uBEE4\uBEE5\uBEEC\uBF01\uBF08\uBF09\uBF18\uBF19\uBF1B\uBF1C\uBF1D\uBF40\uBF41\uBF44\uBF48\uBF50\uBF51\uBF55\uBF94\uBFB0\uBFC5\uBFCC\uBFCD\uBFD0\uBFD4\uBFDC\uBFDF\uBFE1\uC03C\uC051\uC058\uC05C\uC060\uC068\uC069\uC090\uC091\uC094\uC098\uC0A0\uC0A1\uC0A3\uC0A5\uC0AC\uC0AD\uC0AF\uC0B0\uC0B3\uC0B4\uC0B5\uC0B6\uC0BC\uC0BD\uC0BF\uC0C0\uC0C1\uC0C5\uC0C8\uC0C9\uC0CC\uC0D0\uC0D8\uC0D9\uC0DB\uC0DC\uC0DD\uC0E4"],["bc41","\uD36A",17,"\uD37E\uD37F\uD381\uD382\uD383\uD385\uD386\uD387"],["bc61","\uD388\uD389\uD38A\uD38B\uD38E\uD392",5,"\uD39A\uD39B\uD39D\uD39E\uD39F\uD3A1",6,"\uD3AA\uD3AC\uD3AE"],["bc81","\uD3AF",4,"\uD3B5\uD3B6\uD3B7\uD3B9\uD3BA\uD3BB\uD3BD",6,"\uD3C6\uD3C7\uD3CA",5,"\uD3D1",5,"\uC0E5\uC0E8\uC0EC\uC0F4\uC0F5\uC0F7\uC0F9\uC100\uC104\uC108\uC110\uC115\uC11C",4,"\uC123\uC124\uC126\uC127\uC12C\uC12D\uC12F\uC130\uC131\uC136\uC138\uC139\uC13C\uC140\uC148\uC149\uC14B\uC14C\uC14D\uC154\uC155\uC158\uC15C\uC164\uC165\uC167\uC168\uC169\uC170\uC174\uC178\uC185\uC18C\uC18D\uC18E\uC190\uC194\uC196\uC19C\uC19D\uC19F\uC1A1\uC1A5\uC1A8\uC1A9\uC1AC\uC1B0\uC1BD\uC1C4\uC1C8\uC1CC\uC1D4\uC1D7\uC1D8\uC1E0\uC1E4\uC1E8\uC1F0\uC1F1\uC1F3\uC1FC\uC1FD\uC200\uC204\uC20C\uC20D\uC20F\uC211\uC218\uC219\uC21C\uC21F\uC220\uC228\uC229\uC22B\uC22D"],["bd41","\uD3D7\uD3D9",7,"\uD3E2\uD3E4",7,"\uD3EE\uD3EF\uD3F1\uD3F2\uD3F3\uD3F5\uD3F6\uD3F7"],["bd61","\uD3F8\uD3F9\uD3FA\uD3FB\uD3FE\uD400\uD402",5,"\uD409",13],["bd81","\uD417",5,"\uD41E",25,"\uC22F\uC231\uC232\uC234\uC248\uC250\uC251\uC254\uC258\uC260\uC265\uC26C\uC26D\uC270\uC274\uC27C\uC27D\uC27F\uC281\uC288\uC289\uC290\uC298\uC29B\uC29D\uC2A4\uC2A5\uC2A8\uC2AC\uC2AD\uC2B4\uC2B5\uC2B7\uC2B9\uC2DC\uC2DD\uC2E0\uC2E3\uC2E4\uC2EB\uC2EC\uC2ED\uC2EF\uC2F1\uC2F6\uC2F8\uC2F9\uC2FB\uC2FC\uC300\uC308\uC309\uC30C\uC30D\uC313\uC314\uC315\uC318\uC31C\uC324\uC325\uC328\uC329\uC345\uC368\uC369\uC36C\uC370\uC372\uC378\uC379\uC37C\uC37D\uC384\uC388\uC38C\uC3C0\uC3D8\uC3D9\uC3DC\uC3DF\uC3E0\uC3E2\uC3E8\uC3E9\uC3ED\uC3F4\uC3F5\uC3F8\uC408\uC410\uC424\uC42C\uC430"],["be41","\uD438",7,"\uD441\uD442\uD443\uD445",14],["be61","\uD454",7,"\uD45D\uD45E\uD45F\uD461\uD462\uD463\uD465",7,"\uD46E\uD470\uD471\uD472"],["be81","\uD473",4,"\uD47A\uD47B\uD47D\uD47E\uD481\uD483",4,"\uD48A\uD48C\uD48E",5,"\uD495",8,"\uC434\uC43C\uC43D\uC448\uC464\uC465\uC468\uC46C\uC474\uC475\uC479\uC480\uC494\uC49C\uC4B8\uC4BC\uC4E9\uC4F0\uC4F1\uC4F4\uC4F8\uC4FA\uC4FF\uC500\uC501\uC50C\uC510\uC514\uC51C\uC528\uC529\uC52C\uC530\uC538\uC539\uC53B\uC53D\uC544\uC545\uC548\uC549\uC54A\uC54C\uC54D\uC54E\uC553\uC554\uC555\uC557\uC558\uC559\uC55D\uC55E\uC560\uC561\uC564\uC568\uC570\uC571\uC573\uC574\uC575\uC57C\uC57D\uC580\uC584\uC587\uC58C\uC58D\uC58F\uC591\uC595\uC597\uC598\uC59C\uC5A0\uC5A9\uC5B4\uC5B5\uC5B8\uC5B9\uC5BB\uC5BC\uC5BD\uC5BE\uC5C4",6,"\uC5CC\uC5CE"],["bf41","\uD49E",10,"\uD4AA",14],["bf61","\uD4B9",18,"\uD4CD\uD4CE\uD4CF\uD4D1\uD4D2\uD4D3\uD4D5"],["bf81","\uD4D6",5,"\uD4DD\uD4DE\uD4E0",7,"\uD4E9\uD4EA\uD4EB\uD4ED\uD4EE\uD4EF\uD4F1",6,"\uD4F9\uD4FA\uD4FC\uC5D0\uC5D1\uC5D4\uC5D8\uC5E0\uC5E1\uC5E3\uC5E5\uC5EC\uC5ED\uC5EE\uC5F0\uC5F4\uC5F6\uC5F7\uC5FC",5,"\uC605\uC606\uC607\uC608\uC60C\uC610\uC618\uC619\uC61B\uC61C\uC624\uC625\uC628\uC62C\uC62D\uC62E\uC630\uC633\uC634\uC635\uC637\uC639\uC63B\uC640\uC641\uC644\uC648\uC650\uC651\uC653\uC654\uC655\uC65C\uC65D\uC660\uC66C\uC66F\uC671\uC678\uC679\uC67C\uC680\uC688\uC689\uC68B\uC68D\uC694\uC695\uC698\uC69C\uC6A4\uC6A5\uC6A7\uC6A9\uC6B0\uC6B1\uC6B4\uC6B8\uC6B9\uC6BA\uC6C0\uC6C1\uC6C3\uC6C5\uC6CC\uC6CD\uC6D0\uC6D4\uC6DC\uC6DD\uC6E0\uC6E1\uC6E8"],["c041","\uD4FE",5,"\uD505\uD506\uD507\uD509\uD50A\uD50B\uD50D",6,"\uD516\uD518",5],["c061","\uD51E",25],["c081","\uD538\uD539\uD53A\uD53B\uD53E\uD53F\uD541\uD542\uD543\uD545",6,"\uD54E\uD550\uD552",5,"\uD55A\uD55B\uD55D\uD55E\uD55F\uD561\uD562\uD563\uC6E9\uC6EC\uC6F0\uC6F8\uC6F9\uC6FD\uC704\uC705\uC708\uC70C\uC714\uC715\uC717\uC719\uC720\uC721\uC724\uC728\uC730\uC731\uC733\uC735\uC737\uC73C\uC73D\uC740\uC744\uC74A\uC74C\uC74D\uC74F\uC751",7,"\uC75C\uC760\uC768\uC76B\uC774\uC775\uC778\uC77C\uC77D\uC77E\uC783\uC784\uC785\uC787\uC788\uC789\uC78A\uC78E\uC790\uC791\uC794\uC796\uC797\uC798\uC79A\uC7A0\uC7A1\uC7A3\uC7A4\uC7A5\uC7A6\uC7AC\uC7AD\uC7B0\uC7B4\uC7BC\uC7BD\uC7BF\uC7C0\uC7C1\uC7C8\uC7C9\uC7CC\uC7CE\uC7D0\uC7D8\uC7DD\uC7E4\uC7E8\uC7EC\uC800\uC801\uC804\uC808\uC80A"],["c141","\uD564\uD566\uD567\uD56A\uD56C\uD56E",5,"\uD576\uD577\uD579\uD57A\uD57B\uD57D",6,"\uD586\uD58A\uD58B"],["c161","\uD58C\uD58D\uD58E\uD58F\uD591",19,"\uD5A6\uD5A7"],["c181","\uD5A8",31,"\uC810\uC811\uC813\uC815\uC816\uC81C\uC81D\uC820\uC824\uC82C\uC82D\uC82F\uC831\uC838\uC83C\uC840\uC848\uC849\uC84C\uC84D\uC854\uC870\uC871\uC874\uC878\uC87A\uC880\uC881\uC883\uC885\uC886\uC887\uC88B\uC88C\uC88D\uC894\uC89D\uC89F\uC8A1\uC8A8\uC8BC\uC8BD\uC8C4\uC8C8\uC8CC\uC8D4\uC8D5\uC8D7\uC8D9\uC8E0\uC8E1\uC8E4\uC8F5\uC8FC\uC8FD\uC900\uC904\uC905\uC906\uC90C\uC90D\uC90F\uC911\uC918\uC92C\uC934\uC950\uC951\uC954\uC958\uC960\uC961\uC963\uC96C\uC970\uC974\uC97C\uC988\uC989\uC98C\uC990\uC998\uC999\uC99B\uC99D\uC9C0\uC9C1\uC9C4\uC9C7\uC9C8\uC9CA\uC9D0\uC9D1\uC9D3"],["c241","\uD5CA\uD5CB\uD5CD\uD5CE\uD5CF\uD5D1\uD5D3",4,"\uD5DA\uD5DC\uD5DE",5,"\uD5E6\uD5E7\uD5E9\uD5EA\uD5EB\uD5ED\uD5EE"],["c261","\uD5EF",4,"\uD5F6\uD5F8\uD5FA",5,"\uD602\uD603\uD605\uD606\uD607\uD609",6,"\uD612"],["c281","\uD616",5,"\uD61D\uD61E\uD61F\uD621\uD622\uD623\uD625",7,"\uD62E",9,"\uD63A\uD63B\uC9D5\uC9D6\uC9D9\uC9DA\uC9DC\uC9DD\uC9E0\uC9E2\uC9E4\uC9E7\uC9EC\uC9ED\uC9EF\uC9F0\uC9F1\uC9F8\uC9F9\uC9FC\uCA00\uCA08\uCA09\uCA0B\uCA0C\uCA0D\uCA14\uCA18\uCA29\uCA4C\uCA4D\uCA50\uCA54\uCA5C\uCA5D\uCA5F\uCA60\uCA61\uCA68\uCA7D\uCA84\uCA98\uCABC\uCABD\uCAC0\uCAC4\uCACC\uCACD\uCACF\uCAD1\uCAD3\uCAD8\uCAD9\uCAE0\uCAEC\uCAF4\uCB08\uCB10\uCB14\uCB18\uCB20\uCB21\uCB41\uCB48\uCB49\uCB4C\uCB50\uCB58\uCB59\uCB5D\uCB64\uCB78\uCB79\uCB9C\uCBB8\uCBD4\uCBE4\uCBE7\uCBE9\uCC0C\uCC0D\uCC10\uCC14\uCC1C\uCC1D\uCC21\uCC22\uCC27\uCC28\uCC29\uCC2C\uCC2E\uCC30\uCC38\uCC39\uCC3B"],["c341","\uD63D\uD63E\uD63F\uD641\uD642\uD643\uD644\uD646\uD647\uD64A\uD64C\uD64E\uD64F\uD650\uD652\uD653\uD656\uD657\uD659\uD65A\uD65B\uD65D",4],["c361","\uD662",4,"\uD668\uD66A",5,"\uD672\uD673\uD675",11],["c381","\uD681\uD682\uD684\uD686",5,"\uD68E\uD68F\uD691\uD692\uD693\uD695",7,"\uD69E\uD6A0\uD6A2",5,"\uD6A9\uD6AA\uCC3C\uCC3D\uCC3E\uCC44\uCC45\uCC48\uCC4C\uCC54\uCC55\uCC57\uCC58\uCC59\uCC60\uCC64\uCC66\uCC68\uCC70\uCC75\uCC98\uCC99\uCC9C\uCCA0\uCCA8\uCCA9\uCCAB\uCCAC\uCCAD\uCCB4\uCCB5\uCCB8\uCCBC\uCCC4\uCCC5\uCCC7\uCCC9\uCCD0\uCCD4\uCCE4\uCCEC\uCCF0\uCD01\uCD08\uCD09\uCD0C\uCD10\uCD18\uCD19\uCD1B\uCD1D\uCD24\uCD28\uCD2C\uCD39\uCD5C\uCD60\uCD64\uCD6C\uCD6D\uCD6F\uCD71\uCD78\uCD88\uCD94\uCD95\uCD98\uCD9C\uCDA4\uCDA5\uCDA7\uCDA9\uCDB0\uCDC4\uCDCC\uCDD0\uCDE8\uCDEC\uCDF0\uCDF8\uCDF9\uCDFB\uCDFD\uCE04\uCE08\uCE0C\uCE14\uCE19\uCE20\uCE21\uCE24\uCE28\uCE30\uCE31\uCE33\uCE35"],["c441","\uD6AB\uD6AD\uD6AE\uD6AF\uD6B1",7,"\uD6BA\uD6BC",7,"\uD6C6\uD6C7\uD6C9\uD6CA\uD6CB"],["c461","\uD6CD\uD6CE\uD6CF\uD6D0\uD6D2\uD6D3\uD6D5\uD6D6\uD6D8\uD6DA",5,"\uD6E1\uD6E2\uD6E3\uD6E5\uD6E6\uD6E7\uD6E9",4],["c481","\uD6EE\uD6EF\uD6F1\uD6F2\uD6F3\uD6F4\uD6F6",5,"\uD6FE\uD6FF\uD701\uD702\uD703\uD705",11,"\uD712\uD713\uD714\uCE58\uCE59\uCE5C\uCE5F\uCE60\uCE61\uCE68\uCE69\uCE6B\uCE6D\uCE74\uCE75\uCE78\uCE7C\uCE84\uCE85\uCE87\uCE89\uCE90\uCE91\uCE94\uCE98\uCEA0\uCEA1\uCEA3\uCEA4\uCEA5\uCEAC\uCEAD\uCEC1\uCEE4\uCEE5\uCEE8\uCEEB\uCEEC\uCEF4\uCEF5\uCEF7\uCEF8\uCEF9\uCF00\uCF01\uCF04\uCF08\uCF10\uCF11\uCF13\uCF15\uCF1C\uCF20\uCF24\uCF2C\uCF2D\uCF2F\uCF30\uCF31\uCF38\uCF54\uCF55\uCF58\uCF5C\uCF64\uCF65\uCF67\uCF69\uCF70\uCF71\uCF74\uCF78\uCF80\uCF85\uCF8C\uCFA1\uCFA8\uCFB0\uCFC4\uCFE0\uCFE1\uCFE4\uCFE8\uCFF0\uCFF1\uCFF3\uCFF5\uCFFC\uD000\uD004\uD011\uD018\uD02D\uD034\uD035\uD038\uD03C"],["c541","\uD715\uD716\uD717\uD71A\uD71B\uD71D\uD71E\uD71F\uD721",6,"\uD72A\uD72C\uD72E",5,"\uD736\uD737\uD739"],["c561","\uD73A\uD73B\uD73D",6,"\uD745\uD746\uD748\uD74A",5,"\uD752\uD753\uD755\uD75A",4],["c581","\uD75F\uD762\uD764\uD766\uD767\uD768\uD76A\uD76B\uD76D\uD76E\uD76F\uD771\uD772\uD773\uD775",6,"\uD77E\uD77F\uD780\uD782",5,"\uD78A\uD78B\uD044\uD045\uD047\uD049\uD050\uD054\uD058\uD060\uD06C\uD06D\uD070\uD074\uD07C\uD07D\uD081\uD0A4\uD0A5\uD0A8\uD0AC\uD0B4\uD0B5\uD0B7\uD0B9\uD0C0\uD0C1\uD0C4\uD0C8\uD0C9\uD0D0\uD0D1\uD0D3\uD0D4\uD0D5\uD0DC\uD0DD\uD0E0\uD0E4\uD0EC\uD0ED\uD0EF\uD0F0\uD0F1\uD0F8\uD10D\uD130\uD131\uD134\uD138\uD13A\uD140\uD141\uD143\uD144\uD145\uD14C\uD14D\uD150\uD154\uD15C\uD15D\uD15F\uD161\uD168\uD16C\uD17C\uD184\uD188\uD1A0\uD1A1\uD1A4\uD1A8\uD1B0\uD1B1\uD1B3\uD1B5\uD1BA\uD1BC\uD1C0\uD1D8\uD1F4\uD1F8\uD207\uD209\uD210\uD22C\uD22D\uD230\uD234\uD23C\uD23D\uD23F\uD241\uD248\uD25C"],["c641","\uD78D\uD78E\uD78F\uD791",6,"\uD79A\uD79C\uD79E",5],["c6a1","\uD264\uD280\uD281\uD284\uD288\uD290\uD291\uD295\uD29C\uD2A0\uD2A4\uD2AC\uD2B1\uD2B8\uD2B9\uD2BC\uD2BF\uD2C0\uD2C2\uD2C8\uD2C9\uD2CB\uD2D4\uD2D8\uD2DC\uD2E4\uD2E5\uD2F0\uD2F1\uD2F4\uD2F8\uD300\uD301\uD303\uD305\uD30C\uD30D\uD30E\uD310\uD314\uD316\uD31C\uD31D\uD31F\uD320\uD321\uD325\uD328\uD329\uD32C\uD330\uD338\uD339\uD33B\uD33C\uD33D\uD344\uD345\uD37C\uD37D\uD380\uD384\uD38C\uD38D\uD38F\uD390\uD391\uD398\uD399\uD39C\uD3A0\uD3A8\uD3A9\uD3AB\uD3AD\uD3B4\uD3B8\uD3BC\uD3C4\uD3C5\uD3C8\uD3C9\uD3D0\uD3D8\uD3E1\uD3E3\uD3EC\uD3ED\uD3F0\uD3F4\uD3FC\uD3FD\uD3FF\uD401"],["c7a1","\uD408\uD41D\uD440\uD444\uD45C\uD460\uD464\uD46D\uD46F\uD478\uD479\uD47C\uD47F\uD480\uD482\uD488\uD489\uD48B\uD48D\uD494\uD4A9\uD4CC\uD4D0\uD4D4\uD4DC\uD4DF\uD4E8\uD4EC\uD4F0\uD4F8\uD4FB\uD4FD\uD504\uD508\uD50C\uD514\uD515\uD517\uD53C\uD53D\uD540\uD544\uD54C\uD54D\uD54F\uD551\uD558\uD559\uD55C\uD560\uD565\uD568\uD569\uD56B\uD56D\uD574\uD575\uD578\uD57C\uD584\uD585\uD587\uD588\uD589\uD590\uD5A5\uD5C8\uD5C9\uD5CC\uD5D0\uD5D2\uD5D8\uD5D9\uD5DB\uD5DD\uD5E4\uD5E5\uD5E8\uD5EC\uD5F4\uD5F5\uD5F7\uD5F9\uD600\uD601\uD604\uD608\uD610\uD611\uD613\uD614\uD615\uD61C\uD620"],["c8a1","\uD624\uD62D\uD638\uD639\uD63C\uD640\uD645\uD648\uD649\uD64B\uD64D\uD651\uD654\uD655\uD658\uD65C\uD667\uD669\uD670\uD671\uD674\uD683\uD685\uD68C\uD68D\uD690\uD694\uD69D\uD69F\uD6A1\uD6A8\uD6AC\uD6B0\uD6B9\uD6BB\uD6C4\uD6C5\uD6C8\uD6CC\uD6D1\uD6D4\uD6D7\uD6D9\uD6E0\uD6E4\uD6E8\uD6F0\uD6F5\uD6FC\uD6FD\uD700\uD704\uD711\uD718\uD719\uD71C\uD720\uD728\uD729\uD72B\uD72D\uD734\uD735\uD738\uD73C\uD744\uD747\uD749\uD750\uD751\uD754\uD756\uD757\uD758\uD759\uD760\uD761\uD763\uD765\uD769\uD76C\uD770\uD774\uD77C\uD77D\uD781\uD788\uD789\uD78C\uD790\uD798\uD799\uD79B\uD79D"],["caa1","\u4F3D\u4F73\u5047\u50F9\u52A0\u53EF\u5475\u54E5\u5609\u5AC1\u5BB6\u6687\u67B6\u67B7\u67EF\u6B4C\u73C2\u75C2\u7A3C\u82DB\u8304\u8857\u8888\u8A36\u8CC8\u8DCF\u8EFB\u8FE6\u99D5\u523B\u5374\u5404\u606A\u6164\u6BBC\u73CF\u811A\u89BA\u89D2\u95A3\u4F83\u520A\u58BE\u5978\u59E6\u5E72\u5E79\u61C7\u63C0\u6746\u67EC\u687F\u6F97\u764E\u770B\u78F5\u7A08\u7AFF\u7C21\u809D\u826E\u8271\u8AEB\u9593\u4E6B\u559D\u66F7\u6E34\u78A3\u7AED\u845B\u8910\u874E\u97A8\u52D8\u574E\u582A\u5D4C\u611F\u61BE\u6221\u6562\u67D1\u6A44\u6E1B\u7518\u75B3\u76E3\u77B0\u7D3A\u90AF\u9451\u9452\u9F95"],["cba1","\u5323\u5CAC\u7532\u80DB\u9240\u9598\u525B\u5808\u59DC\u5CA1\u5D17\u5EB7\u5F3A\u5F4A\u6177\u6C5F\u757A\u7586\u7CE0\u7D73\u7DB1\u7F8C\u8154\u8221\u8591\u8941\u8B1B\u92FC\u964D\u9C47\u4ECB\u4EF7\u500B\u51F1\u584F\u6137\u613E\u6168\u6539\u69EA\u6F11\u75A5\u7686\u76D6\u7B87\u82A5\u84CB\uF900\u93A7\u958B\u5580\u5BA2\u5751\uF901\u7CB3\u7FB9\u91B5\u5028\u53BB\u5C45\u5DE8\u62D2\u636E\u64DA\u64E7\u6E20\u70AC\u795B\u8DDD\u8E1E\uF902\u907D\u9245\u92F8\u4E7E\u4EF6\u5065\u5DFE\u5EFA\u6106\u6957\u8171\u8654\u8E47\u9375\u9A2B\u4E5E\u5091\u6770\u6840\u5109\u528D\u5292\u6AA2"],["cca1","\u77BC\u9210\u9ED4\u52AB\u602F\u8FF2\u5048\u61A9\u63ED\u64CA\u683C\u6A84\u6FC0\u8188\u89A1\u9694\u5805\u727D\u72AC\u7504\u7D79\u7E6D\u80A9\u898B\u8B74\u9063\u9D51\u6289\u6C7A\u6F54\u7D50\u7F3A\u8A23\u517C\u614A\u7B9D\u8B19\u9257\u938C\u4EAC\u4FD3\u501E\u50BE\u5106\u52C1\u52CD\u537F\u5770\u5883\u5E9A\u5F91\u6176\u61AC\u64CE\u656C\u666F\u66BB\u66F4\u6897\u6D87\u7085\u70F1\u749F\u74A5\u74CA\u75D9\u786C\u78EC\u7ADF\u7AF6\u7D45\u7D93\u8015\u803F\u811B\u8396\u8B66\u8F15\u9015\u93E1\u9803\u9838\u9A5A\u9BE8\u4FC2\u5553\u583A\u5951\u5B63\u5C46\u60B8\u6212\u6842\u68B0"],["cda1","\u68E8\u6EAA\u754C\u7678\u78CE\u7A3D\u7CFB\u7E6B\u7E7C\u8A08\u8AA1\u8C3F\u968E\u9DC4\u53E4\u53E9\u544A\u5471\u56FA\u59D1\u5B64\u5C3B\u5EAB\u62F7\u6537\u6545\u6572\u66A0\u67AF\u69C1\u6CBD\u75FC\u7690\u777E\u7A3F\u7F94\u8003\u80A1\u818F\u82E6\u82FD\u83F0\u85C1\u8831\u88B4\u8AA5\uF903\u8F9C\u932E\u96C7\u9867\u9AD8\u9F13\u54ED\u659B\u66F2\u688F\u7A40\u8C37\u9D60\u56F0\u5764\u5D11\u6606\u68B1\u68CD\u6EFE\u7428\u889E\u9BE4\u6C68\uF904\u9AA8\u4F9B\u516C\u5171\u529F\u5B54\u5DE5\u6050\u606D\u62F1\u63A7\u653B\u73D9\u7A7A\u86A3\u8CA2\u978F\u4E32\u5BE1\u6208\u679C\u74DC"],["cea1","\u79D1\u83D3\u8A87\u8AB2\u8DE8\u904E\u934B\u9846\u5ED3\u69E8\u85FF\u90ED\uF905\u51A0\u5B98\u5BEC\u6163\u68FA\u6B3E\u704C\u742F\u74D8\u7BA1\u7F50\u83C5\u89C0\u8CAB\u95DC\u9928\u522E\u605D\u62EC\u9002\u4F8A\u5149\u5321\u58D9\u5EE3\u66E0\u6D38\u709A\u72C2\u73D6\u7B50\u80F1\u945B\u5366\u639B\u7F6B\u4E56\u5080\u584A\u58DE\u602A\u6127\u62D0\u69D0\u9B41\u5B8F\u7D18\u80B1\u8F5F\u4EA4\u50D1\u54AC\u55AC\u5B0C\u5DA0\u5DE7\u652A\u654E\u6821\u6A4B\u72E1\u768E\u77EF\u7D5E\u7FF9\u81A0\u854E\u86DF\u8F03\u8F4E\u90CA\u9903\u9A55\u9BAB\u4E18\u4E45\u4E5D\u4EC7\u4FF1\u5177\u52FE"],["cfa1","\u5340\u53E3\u53E5\u548E\u5614\u5775\u57A2\u5BC7\u5D87\u5ED0\u61FC\u62D8\u6551\u67B8\u67E9\u69CB\u6B50\u6BC6\u6BEC\u6C42\u6E9D\u7078\u72D7\u7396\u7403\u77BF\u77E9\u7A76\u7D7F\u8009\u81FC\u8205\u820A\u82DF\u8862\u8B33\u8CFC\u8EC0\u9011\u90B1\u9264\u92B6\u99D2\u9A45\u9CE9\u9DD7\u9F9C\u570B\u5C40\u83CA\u97A0\u97AB\u9EB4\u541B\u7A98\u7FA4\u88D9\u8ECD\u90E1\u5800\u5C48\u6398\u7A9F\u5BAE\u5F13\u7A79\u7AAE\u828E\u8EAC\u5026\u5238\u52F8\u5377\u5708\u62F3\u6372\u6B0A\u6DC3\u7737\u53A5\u7357\u8568\u8E76\u95D5\u673A\u6AC3\u6F70\u8A6D\u8ECC\u994B\uF906\u6677\u6B78\u8CB4"],["d0a1","\u9B3C\uF907\u53EB\u572D\u594E\u63C6\u69FB\u73EA\u7845\u7ABA\u7AC5\u7CFE\u8475\u898F\u8D73\u9035\u95A8\u52FB\u5747\u7547\u7B60\u83CC\u921E\uF908\u6A58\u514B\u524B\u5287\u621F\u68D8\u6975\u9699\u50C5\u52A4\u52E4\u61C3\u65A4\u6839\u69FF\u747E\u7B4B\u82B9\u83EB\u89B2\u8B39\u8FD1\u9949\uF909\u4ECA\u5997\u64D2\u6611\u6A8E\u7434\u7981\u79BD\u82A9\u887E\u887F\u895F\uF90A\u9326\u4F0B\u53CA\u6025\u6271\u6C72\u7D1A\u7D66\u4E98\u5162\u77DC\u80AF\u4F01\u4F0E\u5176\u5180\u55DC\u5668\u573B\u57FA\u57FC\u5914\u5947\u5993\u5BC4\u5C90\u5D0E\u5DF1\u5E7E\u5FCC\u6280\u65D7\u65E3"],["d1a1","\u671E\u671F\u675E\u68CB\u68C4\u6A5F\u6B3A\u6C23\u6C7D\u6C82\u6DC7\u7398\u7426\u742A\u7482\u74A3\u7578\u757F\u7881\u78EF\u7941\u7947\u7948\u797A\u7B95\u7D00\u7DBA\u7F88\u8006\u802D\u808C\u8A18\u8B4F\u8C48\u8D77\u9321\u9324\u98E2\u9951\u9A0E\u9A0F\u9A65\u9E92\u7DCA\u4F76\u5409\u62EE\u6854\u91D1\u55AB\u513A\uF90B\uF90C\u5A1C\u61E6\uF90D\u62CF\u62FF\uF90E",5,"\u90A3\uF914",4,"\u8AFE\uF919\uF91A\uF91B\uF91C\u6696\uF91D\u7156\uF91E\uF91F\u96E3\uF920\u634F\u637A\u5357\uF921\u678F\u6960\u6E73\uF922\u7537\uF923\uF924\uF925"],["d2a1","\u7D0D\uF926\uF927\u8872\u56CA\u5A18\uF928",4,"\u4E43\uF92D\u5167\u5948\u67F0\u8010\uF92E\u5973\u5E74\u649A\u79CA\u5FF5\u606C\u62C8\u637B\u5BE7\u5BD7\u52AA\uF92F\u5974\u5F29\u6012\uF930\uF931\uF932\u7459\uF933",5,"\u99D1\uF939",10,"\u6FC3\uF944\uF945\u81BF\u8FB2\u60F1\uF946\uF947\u8166\uF948\uF949\u5C3F\uF94A",7,"\u5AE9\u8A25\u677B\u7D10\uF952",5,"\u80FD\uF958\uF959\u5C3C\u6CE5\u533F\u6EBA\u591A\u8336"],["d3a1","\u4E39\u4EB6\u4F46\u55AE\u5718\u58C7\u5F56\u65B7\u65E6\u6A80\u6BB5\u6E4D\u77ED\u7AEF\u7C1E\u7DDE\u86CB\u8892\u9132\u935B\u64BB\u6FBE\u737A\u75B8\u9054\u5556\u574D\u61BA\u64D4\u66C7\u6DE1\u6E5B\u6F6D\u6FB9\u75F0\u8043\u81BD\u8541\u8983\u8AC7\u8B5A\u931F\u6C93\u7553\u7B54\u8E0F\u905D\u5510\u5802\u5858\u5E62\u6207\u649E\u68E0\u7576\u7CD6\u87B3\u9EE8\u4EE3\u5788\u576E\u5927\u5C0D\u5CB1\u5E36\u5F85\u6234\u64E1\u73B3\u81FA\u888B\u8CB8\u968A\u9EDB\u5B85\u5FB7\u60B3\u5012\u5200\u5230\u5716\u5835\u5857\u5C0E\u5C60\u5CF6\u5D8B\u5EA6\u5F92\u60BC\u6311\u6389\u6417\u6843"],["d4a1","\u68F9\u6AC2\u6DD8\u6E21\u6ED4\u6FE4\u71FE\u76DC\u7779\u79B1\u7A3B\u8404\u89A9\u8CED\u8DF3\u8E48\u9003\u9014\u9053\u90FD\u934D\u9676\u97DC\u6BD2\u7006\u7258\u72A2\u7368\u7763\u79BF\u7BE4\u7E9B\u8B80\u58A9\u60C7\u6566\u65FD\u66BE\u6C8C\u711E\u71C9\u8C5A\u9813\u4E6D\u7A81\u4EDD\u51AC\u51CD\u52D5\u540C\u61A7\u6771\u6850\u68DF\u6D1E\u6F7C\u75BC\u77B3\u7AE5\u80F4\u8463\u9285\u515C\u6597\u675C\u6793\u75D8\u7AC7\u8373\uF95A\u8C46\u9017\u982D\u5C6F\u81C0\u829A\u9041\u906F\u920D\u5F97\u5D9D\u6A59\u71C8\u767B\u7B49\u85E4\u8B04\u9127\u9A30\u5587\u61F6\uF95B\u7669\u7F85"],["d5a1","\u863F\u87BA\u88F8\u908F\uF95C\u6D1B\u70D9\u73DE\u7D61\u843D\uF95D\u916A\u99F1\uF95E\u4E82\u5375\u6B04\u6B12\u703E\u721B\u862D\u9E1E\u524C\u8FA3\u5D50\u64E5\u652C\u6B16\u6FEB\u7C43\u7E9C\u85CD\u8964\u89BD\u62C9\u81D8\u881F\u5ECA\u6717\u6D6A\u72FC\u7405\u746F\u8782\u90DE\u4F86\u5D0D\u5FA0\u840A\u51B7\u63A0\u7565\u4EAE\u5006\u5169\u51C9\u6881\u6A11\u7CAE\u7CB1\u7CE7\u826F\u8AD2\u8F1B\u91CF\u4FB6\u5137\u52F5\u5442\u5EEC\u616E\u623E\u65C5\u6ADA\u6FFE\u792A\u85DC\u8823\u95AD\u9A62\u9A6A\u9E97\u9ECE\u529B\u66C6\u6B77\u701D\u792B\u8F62\u9742\u6190\u6200\u6523\u6F23"],["d6a1","\u7149\u7489\u7DF4\u806F\u84EE\u8F26\u9023\u934A\u51BD\u5217\u52A3\u6D0C\u70C8\u88C2\u5EC9\u6582\u6BAE\u6FC2\u7C3E\u7375\u4EE4\u4F36\u56F9\uF95F\u5CBA\u5DBA\u601C\u73B2\u7B2D\u7F9A\u7FCE\u8046\u901E\u9234\u96F6\u9748\u9818\u9F61\u4F8B\u6FA7\u79AE\u91B4\u96B7\u52DE\uF960\u6488\u64C4\u6AD3\u6F5E\u7018\u7210\u76E7\u8001\u8606\u865C\u8DEF\u8F05\u9732\u9B6F\u9DFA\u9E75\u788C\u797F\u7DA0\u83C9\u9304\u9E7F\u9E93\u8AD6\u58DF\u5F04\u6727\u7027\u74CF\u7C60\u807E\u5121\u7028\u7262\u78CA\u8CC2\u8CDA\u8CF4\u96F7\u4E86\u50DA\u5BEE\u5ED6\u6599\u71CE\u7642\u77AD\u804A\u84FC"],["d7a1","\u907C\u9B27\u9F8D\u58D8\u5A41\u5C62\u6A13\u6DDA\u6F0F\u763B\u7D2F\u7E37\u851E\u8938\u93E4\u964B\u5289\u65D2\u67F3\u69B4\u6D41\u6E9C\u700F\u7409\u7460\u7559\u7624\u786B\u8B2C\u985E\u516D\u622E\u9678\u4F96\u502B\u5D19\u6DEA\u7DB8\u8F2A\u5F8B\u6144\u6817\uF961\u9686\u52D2\u808B\u51DC\u51CC\u695E\u7A1C\u7DBE\u83F1\u9675\u4FDA\u5229\u5398\u540F\u550E\u5C65\u60A7\u674E\u68A8\u6D6C\u7281\u72F8\u7406\u7483\uF962\u75E2\u7C6C\u7F79\u7FB8\u8389\u88CF\u88E1\u91CC\u91D0\u96E2\u9BC9\u541D\u6F7E\u71D0\u7498\u85FA\u8EAA\u96A3\u9C57\u9E9F\u6797\u6DCB\u7433\u81E8\u9716\u782C"],["d8a1","\u7ACB\u7B20\u7C92\u6469\u746A\u75F2\u78BC\u78E8\u99AC\u9B54\u9EBB\u5BDE\u5E55\u6F20\u819C\u83AB\u9088\u4E07\u534D\u5A29\u5DD2\u5F4E\u6162\u633D\u6669\u66FC\u6EFF\u6F2B\u7063\u779E\u842C\u8513\u883B\u8F13\u9945\u9C3B\u551C\u62B9\u672B\u6CAB\u8309\u896A\u977A\u4EA1\u5984\u5FD8\u5FD9\u671B\u7DB2\u7F54\u8292\u832B\u83BD\u8F1E\u9099\u57CB\u59B9\u5A92\u5BD0\u6627\u679A\u6885\u6BCF\u7164\u7F75\u8CB7\u8CE3\u9081\u9B45\u8108\u8C8A\u964C\u9A40\u9EA5\u5B5F\u6C13\u731B\u76F2\u76DF\u840C\u51AA\u8993\u514D\u5195\u52C9\u68C9\u6C94\u7704\u7720\u7DBF\u7DEC\u9762\u9EB5\u6EC5"],["d9a1","\u8511\u51A5\u540D\u547D\u660E\u669D\u6927\u6E9F\u76BF\u7791\u8317\u84C2\u879F\u9169\u9298\u9CF4\u8882\u4FAE\u5192\u52DF\u59C6\u5E3D\u6155\u6478\u6479\u66AE\u67D0\u6A21\u6BCD\u6BDB\u725F\u7261\u7441\u7738\u77DB\u8017\u82BC\u8305\u8B00\u8B28\u8C8C\u6728\u6C90\u7267\u76EE\u7766\u7A46\u9DA9\u6B7F\u6C92\u5922\u6726\u8499\u536F\u5893\u5999\u5EDF\u63CF\u6634\u6773\u6E3A\u732B\u7AD7\u82D7\u9328\u52D9\u5DEB\u61AE\u61CB\u620A\u62C7\u64AB\u65E0\u6959\u6B66\u6BCB\u7121\u73F7\u755D\u7E46\u821E\u8302\u856A\u8AA3\u8CBF\u9727\u9D61\u58A8\u9ED8\u5011\u520E\u543B\u554F\u6587"],["daa1","\u6C76\u7D0A\u7D0B\u805E\u868A\u9580\u96EF\u52FF\u6C95\u7269\u5473\u5A9A\u5C3E\u5D4B\u5F4C\u5FAE\u672A\u68B6\u6963\u6E3C\u6E44\u7709\u7C73\u7F8E\u8587\u8B0E\u8FF7\u9761\u9EF4\u5CB7\u60B6\u610D\u61AB\u654F\u65FB\u65FC\u6C11\u6CEF\u739F\u73C9\u7DE1\u9594\u5BC6\u871C\u8B10\u525D\u535A\u62CD\u640F\u64B2\u6734\u6A38\u6CCA\u73C0\u749E\u7B94\u7C95\u7E1B\u818A\u8236\u8584\u8FEB\u96F9\u99C1\u4F34\u534A\u53CD\u53DB\u62CC\u642C\u6500\u6591\u69C3\u6CEE\u6F58\u73ED\u7554\u7622\u76E4\u76FC\u78D0\u78FB\u792C\u7D46\u822C\u87E0\u8FD4\u9812\u98EF\u52C3\u62D4\u64A5\u6E24\u6F51"],["dba1","\u767C\u8DCB\u91B1\u9262\u9AEE\u9B43\u5023\u508D\u574A\u59A8\u5C28\u5E47\u5F77\u623F\u653E\u65B9\u65C1\u6609\u678B\u699C\u6EC2\u78C5\u7D21\u80AA\u8180\u822B\u82B3\u84A1\u868C\u8A2A\u8B17\u90A6\u9632\u9F90\u500D\u4FF3\uF963\u57F9\u5F98\u62DC\u6392\u676F\u6E43\u7119\u76C3\u80CC\u80DA\u88F4\u88F5\u8919\u8CE0\u8F29\u914D\u966A\u4F2F\u4F70\u5E1B\u67CF\u6822\u767D\u767E\u9B44\u5E61\u6A0A\u7169\u71D4\u756A\uF964\u7E41\u8543\u85E9\u98DC\u4F10\u7B4F\u7F70\u95A5\u51E1\u5E06\u68B5\u6C3E\u6C4E\u6CDB\u72AF\u7BC4\u8303\u6CD5\u743A\u50FB\u5288\u58C1\u64D8\u6A97\u74A7\u7656"],["dca1","\u78A7\u8617\u95E2\u9739\uF965\u535E\u5F01\u8B8A\u8FA8\u8FAF\u908A\u5225\u77A5\u9C49\u9F08\u4E19\u5002\u5175\u5C5B\u5E77\u661E\u663A\u67C4\u68C5\u70B3\u7501\u75C5\u79C9\u7ADD\u8F27\u9920\u9A08\u4FDD\u5821\u5831\u5BF6\u666E\u6B65\u6D11\u6E7A\u6F7D\u73E4\u752B\u83E9\u88DC\u8913\u8B5C\u8F14\u4F0F\u50D5\u5310\u535C\u5B93\u5FA9\u670D\u798F\u8179\u832F\u8514\u8907\u8986\u8F39\u8F3B\u99A5\u9C12\u672C\u4E76\u4FF8\u5949\u5C01\u5CEF\u5CF0\u6367\u68D2\u70FD\u71A2\u742B\u7E2B\u84EC\u8702\u9022\u92D2\u9CF3\u4E0D\u4ED8\u4FEF\u5085\u5256\u526F\u5426\u5490\u57E0\u592B\u5A66"],["dda1","\u5B5A\u5B75\u5BCC\u5E9C\uF966\u6276\u6577\u65A7\u6D6E\u6EA5\u7236\u7B26\u7C3F\u7F36\u8150\u8151\u819A\u8240\u8299\u83A9\u8A03\u8CA0\u8CE6\u8CFB\u8D74\u8DBA\u90E8\u91DC\u961C\u9644\u99D9\u9CE7\u5317\u5206\u5429\u5674\u58B3\u5954\u596E\u5FFF\u61A4\u626E\u6610\u6C7E\u711A\u76C6\u7C89\u7CDE\u7D1B\u82AC\u8CC1\u96F0\uF967\u4F5B\u5F17\u5F7F\u62C2\u5D29\u670B\u68DA\u787C\u7E43\u9D6C\u4E15\u5099\u5315\u532A\u5351\u5983\u5A62\u5E87\u60B2\u618A\u6249\u6279\u6590\u6787\u69A7\u6BD4\u6BD6\u6BD7\u6BD8\u6CB8\uF968\u7435\u75FA\u7812\u7891\u79D5\u79D8\u7C83\u7DCB\u7FE1\u80A5"],["dea1","\u813E\u81C2\u83F2\u871A\u88E8\u8AB9\u8B6C\u8CBB\u9119\u975E\u98DB\u9F3B\u56AC\u5B2A\u5F6C\u658C\u6AB3\u6BAF\u6D5C\u6FF1\u7015\u725D\u73AD\u8CA7\u8CD3\u983B\u6191\u6C37\u8058\u9A01\u4E4D\u4E8B\u4E9B\u4ED5\u4F3A\u4F3C\u4F7F\u4FDF\u50FF\u53F2\u53F8\u5506\u55E3\u56DB\u58EB\u5962\u5A11\u5BEB\u5BFA\u5C04\u5DF3\u5E2B\u5F99\u601D\u6368\u659C\u65AF\u67F6\u67FB\u68AD\u6B7B\u6C99\u6CD7\u6E23\u7009\u7345\u7802\u793E\u7940\u7960\u79C1\u7BE9\u7D17\u7D72\u8086\u820D\u838E\u84D1\u86C7\u88DF\u8A50\u8A5E\u8B1D\u8CDC\u8D66\u8FAD\u90AA\u98FC\u99DF\u9E9D\u524A\uF969\u6714\uF96A"],["dfa1","\u5098\u522A\u5C71\u6563\u6C55\u73CA\u7523\u759D\u7B97\u849C\u9178\u9730\u4E77\u6492\u6BBA\u715E\u85A9\u4E09\uF96B\u6749\u68EE\u6E17\u829F\u8518\u886B\u63F7\u6F81\u9212\u98AF\u4E0A\u50B7\u50CF\u511F\u5546\u55AA\u5617\u5B40\u5C19\u5CE0\u5E38\u5E8A\u5EA0\u5EC2\u60F3\u6851\u6A61\u6E58\u723D\u7240\u72C0\u76F8\u7965\u7BB1\u7FD4\u88F3\u89F4\u8A73\u8C61\u8CDE\u971C\u585E\u74BD\u8CFD\u55C7\uF96C\u7A61\u7D22\u8272\u7272\u751F\u7525\uF96D\u7B19\u5885\u58FB\u5DBC\u5E8F\u5EB6\u5F90\u6055\u6292\u637F\u654D\u6691\u66D9\u66F8\u6816\u68F2\u7280\u745E\u7B6E\u7D6E\u7DD6\u7F72"],["e0a1","\u80E5\u8212\u85AF\u897F\u8A93\u901D\u92E4\u9ECD\u9F20\u5915\u596D\u5E2D\u60DC\u6614\u6673\u6790\u6C50\u6DC5\u6F5F\u77F3\u78A9\u84C6\u91CB\u932B\u4ED9\u50CA\u5148\u5584\u5B0B\u5BA3\u6247\u657E\u65CB\u6E32\u717D\u7401\u7444\u7487\u74BF\u766C\u79AA\u7DDA\u7E55\u7FA8\u817A\u81B3\u8239\u861A\u87EC\u8A75\u8DE3\u9078\u9291\u9425\u994D\u9BAE\u5368\u5C51\u6954\u6CC4\u6D29\u6E2B\u820C\u859B\u893B\u8A2D\u8AAA\u96EA\u9F67\u5261\u66B9\u6BB2\u7E96\u87FE\u8D0D\u9583\u965D\u651D\u6D89\u71EE\uF96E\u57CE\u59D3\u5BAC\u6027\u60FA\u6210\u661F\u665F\u7329\u73F9\u76DB\u7701\u7B6C"],["e1a1","\u8056\u8072\u8165\u8AA0\u9192\u4E16\u52E2\u6B72\u6D17\u7A05\u7B39\u7D30\uF96F\u8CB0\u53EC\u562F\u5851\u5BB5\u5C0F\u5C11\u5DE2\u6240\u6383\u6414\u662D\u68B3\u6CBC\u6D88\u6EAF\u701F\u70A4\u71D2\u7526\u758F\u758E\u7619\u7B11\u7BE0\u7C2B\u7D20\u7D39\u852C\u856D\u8607\u8A34\u900D\u9061\u90B5\u92B7\u97F6\u9A37\u4FD7\u5C6C\u675F\u6D91\u7C9F\u7E8C\u8B16\u8D16\u901F\u5B6B\u5DFD\u640D\u84C0\u905C\u98E1\u7387\u5B8B\u609A\u677E\u6DDE\u8A1F\u8AA6\u9001\u980C\u5237\uF970\u7051\u788E\u9396\u8870\u91D7\u4FEE\u53D7\u55FD\u56DA\u5782\u58FD\u5AC2\u5B88\u5CAB\u5CC0\u5E25\u6101"],["e2a1","\u620D\u624B\u6388\u641C\u6536\u6578\u6A39\u6B8A\u6C34\u6D19\u6F31\u71E7\u72E9\u7378\u7407\u74B2\u7626\u7761\u79C0\u7A57\u7AEA\u7CB9\u7D8F\u7DAC\u7E61\u7F9E\u8129\u8331\u8490\u84DA\u85EA\u8896\u8AB0\u8B90\u8F38\u9042\u9083\u916C\u9296\u92B9\u968B\u96A7\u96A8\u96D6\u9700\u9808\u9996\u9AD3\u9B1A\u53D4\u587E\u5919\u5B70\u5BBF\u6DD1\u6F5A\u719F\u7421\u74B9\u8085\u83FD\u5DE1\u5F87\u5FAA\u6042\u65EC\u6812\u696F\u6A53\u6B89\u6D35\u6DF3\u73E3\u76FE\u77AC\u7B4D\u7D14\u8123\u821C\u8340\u84F4\u8563\u8A62\u8AC4\u9187\u931E\u9806\u99B4\u620C\u8853\u8FF0\u9265\u5D07\u5D27"],["e3a1","\u5D69\u745F\u819D\u8768\u6FD5\u62FE\u7FD2\u8936\u8972\u4E1E\u4E58\u50E7\u52DD\u5347\u627F\u6607\u7E69\u8805\u965E\u4F8D\u5319\u5636\u59CB\u5AA4\u5C38\u5C4E\u5C4D\u5E02\u5F11\u6043\u65BD\u662F\u6642\u67BE\u67F4\u731C\u77E2\u793A\u7FC5\u8494\u84CD\u8996\u8A66\u8A69\u8AE1\u8C55\u8C7A\u57F4\u5BD4\u5F0F\u606F\u62ED\u690D\u6B96\u6E5C\u7184\u7BD2\u8755\u8B58\u8EFE\u98DF\u98FE\u4F38\u4F81\u4FE1\u547B\u5A20\u5BB8\u613C\u65B0\u6668\u71FC\u7533\u795E\u7D33\u814E\u81E3\u8398\u85AA\u85CE\u8703\u8A0A\u8EAB\u8F9B\uF971\u8FC5\u5931\u5BA4\u5BE6\u6089\u5BE9\u5C0B\u5FC3\u6C81"],["e4a1","\uF972\u6DF1\u700B\u751A\u82AF\u8AF6\u4EC0\u5341\uF973\u96D9\u6C0F\u4E9E\u4FC4\u5152\u555E\u5A25\u5CE8\u6211\u7259\u82BD\u83AA\u86FE\u8859\u8A1D\u963F\u96C5\u9913\u9D09\u9D5D\u580A\u5CB3\u5DBD\u5E44\u60E1\u6115\u63E1\u6A02\u6E25\u9102\u9354\u984E\u9C10\u9F77\u5B89\u5CB8\u6309\u664F\u6848\u773C\u96C1\u978D\u9854\u9B9F\u65A1\u8B01\u8ECB\u95BC\u5535\u5CA9\u5DD6\u5EB5\u6697\u764C\u83F4\u95C7\u58D3\u62BC\u72CE\u9D28\u4EF0\u592E\u600F\u663B\u6B83\u79E7\u9D26\u5393\u54C0\u57C3\u5D16\u611B\u66D6\u6DAF\u788D\u827E\u9698\u9744\u5384\u627C\u6396\u6DB2\u7E0A\u814B\u984D"],["e5a1","\u6AFB\u7F4C\u9DAF\u9E1A\u4E5F\u503B\u51B6\u591C\u60F9\u63F6\u6930\u723A\u8036\uF974\u91CE\u5F31\uF975\uF976\u7D04\u82E5\u846F\u84BB\u85E5\u8E8D\uF977\u4F6F\uF978\uF979\u58E4\u5B43\u6059\u63DA\u6518\u656D\u6698\uF97A\u694A\u6A23\u6D0B\u7001\u716C\u75D2\u760D\u79B3\u7A70\uF97B\u7F8A\uF97C\u8944\uF97D\u8B93\u91C0\u967D\uF97E\u990A\u5704\u5FA1\u65BC\u6F01\u7600\u79A6\u8A9E\u99AD\u9B5A\u9F6C\u5104\u61B6\u6291\u6A8D\u81C6\u5043\u5830\u5F66\u7109\u8A00\u8AFA\u5B7C\u8616\u4FFA\u513C\u56B4\u5944\u63A9\u6DF9\u5DAA\u696D\u5186\u4E88\u4F59\uF97F\uF980\uF981\u5982\uF982"],["e6a1","\uF983\u6B5F\u6C5D\uF984\u74B5\u7916\uF985\u8207\u8245\u8339\u8F3F\u8F5D\uF986\u9918\uF987\uF988\uF989\u4EA6\uF98A\u57DF\u5F79\u6613\uF98B\uF98C\u75AB\u7E79\u8B6F\uF98D\u9006\u9A5B\u56A5\u5827\u59F8\u5A1F\u5BB4\uF98E\u5EF6\uF98F\uF990\u6350\u633B\uF991\u693D\u6C87\u6CBF\u6D8E\u6D93\u6DF5\u6F14\uF992\u70DF\u7136\u7159\uF993\u71C3\u71D5\uF994\u784F\u786F\uF995\u7B75\u7DE3\uF996\u7E2F\uF997\u884D\u8EDF\uF998\uF999\uF99A\u925B\uF99B\u9CF6\uF99C\uF99D\uF99E\u6085\u6D85\uF99F\u71B1\uF9A0\uF9A1\u95B1\u53AD\uF9A2\uF9A3\uF9A4\u67D3\uF9A5\u708E\u7130\u7430\u8276\u82D2"],["e7a1","\uF9A6\u95BB\u9AE5\u9E7D\u66C4\uF9A7\u71C1\u8449\uF9A8\uF9A9\u584B\uF9AA\uF9AB\u5DB8\u5F71\uF9AC\u6620\u668E\u6979\u69AE\u6C38\u6CF3\u6E36\u6F41\u6FDA\u701B\u702F\u7150\u71DF\u7370\uF9AD\u745B\uF9AE\u74D4\u76C8\u7A4E\u7E93\uF9AF\uF9B0\u82F1\u8A60\u8FCE\uF9B1\u9348\uF9B2\u9719\uF9B3\uF9B4\u4E42\u502A\uF9B5\u5208\u53E1\u66F3\u6C6D\u6FCA\u730A\u777F\u7A62\u82AE\u85DD\u8602\uF9B6\u88D4\u8A63\u8B7D\u8C6B\uF9B7\u92B3\uF9B8\u9713\u9810\u4E94\u4F0D\u4FC9\u50B2\u5348\u543E\u5433\u55DA\u5862\u58BA\u5967\u5A1B\u5BE4\u609F\uF9B9\u61CA\u6556\u65FF\u6664\u68A7\u6C5A\u6FB3"],["e8a1","\u70CF\u71AC\u7352\u7B7D\u8708\u8AA4\u9C32\u9F07\u5C4B\u6C83\u7344\u7389\u923A\u6EAB\u7465\u761F\u7A69\u7E15\u860A\u5140\u58C5\u64C1\u74EE\u7515\u7670\u7FC1\u9095\u96CD\u9954\u6E26\u74E6\u7AA9\u7AAA\u81E5\u86D9\u8778\u8A1B\u5A49\u5B8C\u5B9B\u68A1\u6900\u6D63\u73A9\u7413\u742C\u7897\u7DE9\u7FEB\u8118\u8155\u839E\u8C4C\u962E\u9811\u66F0\u5F80\u65FA\u6789\u6C6A\u738B\u502D\u5A03\u6B6A\u77EE\u5916\u5D6C\u5DCD\u7325\u754F\uF9BA\uF9BB\u50E5\u51F9\u582F\u592D\u5996\u59DA\u5BE5\uF9BC\uF9BD\u5DA2\u62D7\u6416\u6493\u64FE\uF9BE\u66DC\uF9BF\u6A48\uF9C0\u71FF\u7464\uF9C1"],["e9a1","\u7A88\u7AAF\u7E47\u7E5E\u8000\u8170\uF9C2\u87EF\u8981\u8B20\u9059\uF9C3\u9080\u9952\u617E\u6B32\u6D74\u7E1F\u8925\u8FB1\u4FD1\u50AD\u5197\u52C7\u57C7\u5889\u5BB9\u5EB8\u6142\u6995\u6D8C\u6E67\u6EB6\u7194\u7462\u7528\u752C\u8073\u8338\u84C9\u8E0A\u9394\u93DE\uF9C4\u4E8E\u4F51\u5076\u512A\u53C8\u53CB\u53F3\u5B87\u5BD3\u5C24\u611A\u6182\u65F4\u725B\u7397\u7440\u76C2\u7950\u7991\u79B9\u7D06\u7FBD\u828B\u85D5\u865E\u8FC2\u9047\u90F5\u91EA\u9685\u96E8\u96E9\u52D6\u5F67\u65ED\u6631\u682F\u715C\u7A36\u90C1\u980A\u4E91\uF9C5\u6A52\u6B9E\u6F90\u7189\u8018\u82B8\u8553"],["eaa1","\u904B\u9695\u96F2\u97FB\u851A\u9B31\u4E90\u718A\u96C4\u5143\u539F\u54E1\u5713\u5712\u57A3\u5A9B\u5AC4\u5BC3\u6028\u613F\u63F4\u6C85\u6D39\u6E72\u6E90\u7230\u733F\u7457\u82D1\u8881\u8F45\u9060\uF9C6\u9662\u9858\u9D1B\u6708\u8D8A\u925E\u4F4D\u5049\u50DE\u5371\u570D\u59D4\u5A01\u5C09\u6170\u6690\u6E2D\u7232\u744B\u7DEF\u80C3\u840E\u8466\u853F\u875F\u885B\u8918\u8B02\u9055\u97CB\u9B4F\u4E73\u4F91\u5112\u516A\uF9C7\u552F\u55A9\u5B7A\u5BA5\u5E7C\u5E7D\u5EBE\u60A0\u60DF\u6108\u6109\u63C4\u6538\u6709\uF9C8\u67D4\u67DA\uF9C9\u6961\u6962\u6CB9\u6D27\uF9CA\u6E38\uF9CB"],["eba1","\u6FE1\u7336\u7337\uF9CC\u745C\u7531\uF9CD\u7652\uF9CE\uF9CF\u7DAD\u81FE\u8438\u88D5\u8A98\u8ADB\u8AED\u8E30\u8E42\u904A\u903E\u907A\u9149\u91C9\u936E\uF9D0\uF9D1\u5809\uF9D2\u6BD3\u8089\u80B2\uF9D3\uF9D4\u5141\u596B\u5C39\uF9D5\uF9D6\u6F64\u73A7\u80E4\u8D07\uF9D7\u9217\u958F\uF9D8\uF9D9\uF9DA\uF9DB\u807F\u620E\u701C\u7D68\u878D\uF9DC\u57A0\u6069\u6147\u6BB7\u8ABE\u9280\u96B1\u4E59\u541F\u6DEB\u852D\u9670\u97F3\u98EE\u63D6\u6CE3\u9091\u51DD\u61C9\u81BA\u9DF9\u4F9D\u501A\u5100\u5B9C\u610F\u61FF\u64EC\u6905\u6BC5\u7591\u77E3\u7FA9\u8264\u858F\u87FB\u8863\u8ABC"],["eca1","\u8B70\u91AB\u4E8C\u4EE5\u4F0A\uF9DD\uF9DE\u5937\u59E8\uF9DF\u5DF2\u5F1B\u5F5B\u6021\uF9E0\uF9E1\uF9E2\uF9E3\u723E\u73E5\uF9E4\u7570\u75CD\uF9E5\u79FB\uF9E6\u800C\u8033\u8084\u82E1\u8351\uF9E7\uF9E8\u8CBD\u8CB3\u9087\uF9E9\uF9EA\u98F4\u990C\uF9EB\uF9EC\u7037\u76CA\u7FCA\u7FCC\u7FFC\u8B1A\u4EBA\u4EC1\u5203\u5370\uF9ED\u54BD\u56E0\u59FB\u5BC5\u5F15\u5FCD\u6E6E\uF9EE\uF9EF\u7D6A\u8335\uF9F0\u8693\u8A8D\uF9F1\u976D\u9777\uF9F2\uF9F3\u4E00\u4F5A\u4F7E\u58F9\u65E5\u6EA2\u9038\u93B0\u99B9\u4EFB\u58EC\u598A\u59D9\u6041\uF9F4\uF9F5\u7A14\uF9F6\u834F\u8CC3\u5165\u5344"],["eda1","\uF9F7\uF9F8\uF9F9\u4ECD\u5269\u5B55\u82BF\u4ED4\u523A\u54A8\u59C9\u59FF\u5B50\u5B57\u5B5C\u6063\u6148\u6ECB\u7099\u716E\u7386\u74F7\u75B5\u78C1\u7D2B\u8005\u81EA\u8328\u8517\u85C9\u8AEE\u8CC7\u96CC\u4F5C\u52FA\u56BC\u65AB\u6628\u707C\u70B8\u7235\u7DBD\u828D\u914C\u96C0\u9D72\u5B71\u68E7\u6B98\u6F7A\u76DE\u5C91\u66AB\u6F5B\u7BB4\u7C2A\u8836\u96DC\u4E08\u4ED7\u5320\u5834\u58BB\u58EF\u596C\u5C07\u5E33\u5E84\u5F35\u638C\u66B2\u6756\u6A1F\u6AA3\u6B0C\u6F3F\u7246\uF9FA\u7350\u748B\u7AE0\u7CA7\u8178\u81DF\u81E7\u838A\u846C\u8523\u8594\u85CF\u88DD\u8D13\u91AC\u9577"],["eea1","\u969C\u518D\u54C9\u5728\u5BB0\u624D\u6750\u683D\u6893\u6E3D\u6ED3\u707D\u7E21\u88C1\u8CA1\u8F09\u9F4B\u9F4E\u722D\u7B8F\u8ACD\u931A\u4F47\u4F4E\u5132\u5480\u59D0\u5E95\u62B5\u6775\u696E\u6A17\u6CAE\u6E1A\u72D9\u732A\u75BD\u7BB8\u7D35\u82E7\u83F9\u8457\u85F7\u8A5B\u8CAF\u8E87\u9019\u90B8\u96CE\u9F5F\u52E3\u540A\u5AE1\u5BC2\u6458\u6575\u6EF4\u72C4\uF9FB\u7684\u7A4D\u7B1B\u7C4D\u7E3E\u7FDF\u837B\u8B2B\u8CCA\u8D64\u8DE1\u8E5F\u8FEA\u8FF9\u9069\u93D1\u4F43\u4F7A\u50B3\u5168\u5178\u524D\u526A\u5861\u587C\u5960\u5C08\u5C55\u5EDB\u609B\u6230\u6813\u6BBF\u6C08\u6FB1"],["efa1","\u714E\u7420\u7530\u7538\u7551\u7672\u7B4C\u7B8B\u7BAD\u7BC6\u7E8F\u8A6E\u8F3E\u8F49\u923F\u9293\u9322\u942B\u96FB\u985A\u986B\u991E\u5207\u622A\u6298\u6D59\u7664\u7ACA\u7BC0\u7D76\u5360\u5CBE\u5E97\u6F38\u70B9\u7C98\u9711\u9B8E\u9EDE\u63A5\u647A\u8776\u4E01\u4E95\u4EAD\u505C\u5075\u5448\u59C3\u5B9A\u5E40\u5EAD\u5EF7\u5F81\u60C5\u633A\u653F\u6574\u65CC\u6676\u6678\u67FE\u6968\u6A89\u6B63\u6C40\u6DC0\u6DE8\u6E1F\u6E5E\u701E\u70A1\u738E\u73FD\u753A\u775B\u7887\u798E\u7A0B\u7A7D\u7CBE\u7D8E\u8247\u8A02\u8AEA\u8C9E\u912D\u914A\u91D8\u9266\u92CC\u9320\u9706\u9756"],["f0a1","\u975C\u9802\u9F0E\u5236\u5291\u557C\u5824\u5E1D\u5F1F\u608C\u63D0\u68AF\u6FDF\u796D\u7B2C\u81CD\u85BA\u88FD\u8AF8\u8E44\u918D\u9664\u969B\u973D\u984C\u9F4A\u4FCE\u5146\u51CB\u52A9\u5632\u5F14\u5F6B\u63AA\u64CD\u65E9\u6641\u66FA\u66F9\u671D\u689D\u68D7\u69FD\u6F15\u6F6E\u7167\u71E5\u722A\u74AA\u773A\u7956\u795A\u79DF\u7A20\u7A95\u7C97\u7CDF\u7D44\u7E70\u8087\u85FB\u86A4\u8A54\u8ABF\u8D99\u8E81\u9020\u906D\u91E3\u963B\u96D5\u9CE5\u65CF\u7C07\u8DB3\u93C3\u5B58\u5C0A\u5352\u62D9\u731D\u5027\u5B97\u5F9E\u60B0\u616B\u68D5\u6DD9\u742E\u7A2E\u7D42\u7D9C\u7E31\u816B"],["f1a1","\u8E2A\u8E35\u937E\u9418\u4F50\u5750\u5DE6\u5EA7\u632B\u7F6A\u4E3B\u4F4F\u4F8F\u505A\u59DD\u80C4\u546A\u5468\u55FE\u594F\u5B99\u5DDE\u5EDA\u665D\u6731\u67F1\u682A\u6CE8\u6D32\u6E4A\u6F8D\u70B7\u73E0\u7587\u7C4C\u7D02\u7D2C\u7DA2\u821F\u86DB\u8A3B\u8A85\u8D70\u8E8A\u8F33\u9031\u914E\u9152\u9444\u99D0\u7AF9\u7CA5\u4FCA\u5101\u51C6\u57C8\u5BEF\u5CFB\u6659\u6A3D\u6D5A\u6E96\u6FEC\u710C\u756F\u7AE3\u8822\u9021\u9075\u96CB\u99FF\u8301\u4E2D\u4EF2\u8846\u91CD\u537D\u6ADB\u696B\u6C41\u847A\u589E\u618E\u66FE\u62EF\u70DD\u7511\u75C7\u7E52\u84B8\u8B49\u8D08\u4E4B\u53EA"],["f2a1","\u54AB\u5730\u5740\u5FD7\u6301\u6307\u646F\u652F\u65E8\u667A\u679D\u67B3\u6B62\u6C60\u6C9A\u6F2C\u77E5\u7825\u7949\u7957\u7D19\u80A2\u8102\u81F3\u829D\u82B7\u8718\u8A8C\uF9FC\u8D04\u8DBE\u9072\u76F4\u7A19\u7A37\u7E54\u8077\u5507\u55D4\u5875\u632F\u6422\u6649\u664B\u686D\u699B\u6B84\u6D25\u6EB1\u73CD\u7468\u74A1\u755B\u75B9\u76E1\u771E\u778B\u79E6\u7E09\u7E1D\u81FB\u852F\u8897\u8A3A\u8CD1\u8EEB\u8FB0\u9032\u93AD\u9663\u9673\u9707\u4F84\u53F1\u59EA\u5AC9\u5E19\u684E\u74C6\u75BE\u79E9\u7A92\u81A3\u86ED\u8CEA\u8DCC\u8FED\u659F\u6715\uF9FD\u57F7\u6F57\u7DDD\u8F2F"],["f3a1","\u93F6\u96C6\u5FB5\u61F2\u6F84\u4E14\u4F98\u501F\u53C9\u55DF\u5D6F\u5DEE\u6B21\u6B64\u78CB\u7B9A\uF9FE\u8E49\u8ECA\u906E\u6349\u643E\u7740\u7A84\u932F\u947F\u9F6A\u64B0\u6FAF\u71E6\u74A8\u74DA\u7AC4\u7C12\u7E82\u7CB2\u7E98\u8B9A\u8D0A\u947D\u9910\u994C\u5239\u5BDF\u64E6\u672D\u7D2E\u50ED\u53C3\u5879\u6158\u6159\u61FA\u65AC\u7AD9\u8B92\u8B96\u5009\u5021\u5275\u5531\u5A3C\u5EE0\u5F70\u6134\u655E\u660C\u6636\u66A2\u69CD\u6EC4\u6F32\u7316\u7621\u7A93\u8139\u8259\u83D6\u84BC\u50B5\u57F0\u5BC0\u5BE8\u5F69\u63A1\u7826\u7DB5\u83DC\u8521\u91C7\u91F5\u518A\u67F5\u7B56"],["f4a1","\u8CAC\u51C4\u59BB\u60BD\u8655\u501C\uF9FF\u5254\u5C3A\u617D\u621A\u62D3\u64F2\u65A5\u6ECC\u7620\u810A\u8E60\u965F\u96BB\u4EDF\u5343\u5598\u5929\u5DDD\u64C5\u6CC9\u6DFA\u7394\u7A7F\u821B\u85A6\u8CE4\u8E10\u9077\u91E7\u95E1\u9621\u97C6\u51F8\u54F2\u5586\u5FB9\u64A4\u6F88\u7DB4\u8F1F\u8F4D\u9435\u50C9\u5C16\u6CBE\u6DFB\u751B\u77BB\u7C3D\u7C64\u8A79\u8AC2\u581E\u59BE\u5E16\u6377\u7252\u758A\u776B\u8ADC\u8CBC\u8F12\u5EF3\u6674\u6DF8\u807D\u83C1\u8ACB\u9751\u9BD6\uFA00\u5243\u66FF\u6D95\u6EEF\u7DE0\u8AE6\u902E\u905E\u9AD4\u521D\u527F\u54E8\u6194\u6284\u62DB\u68A2"],["f5a1","\u6912\u695A\u6A35\u7092\u7126\u785D\u7901\u790E\u79D2\u7A0D\u8096\u8278\u82D5\u8349\u8549\u8C82\u8D85\u9162\u918B\u91AE\u4FC3\u56D1\u71ED\u77D7\u8700\u89F8\u5BF8\u5FD6\u6751\u90A8\u53E2\u585A\u5BF5\u60A4\u6181\u6460\u7E3D\u8070\u8525\u9283\u64AE\u50AC\u5D14\u6700\u589C\u62BD\u63A8\u690E\u6978\u6A1E\u6E6B\u76BA\u79CB\u82BB\u8429\u8ACF\u8DA8\u8FFD\u9112\u914B\u919C\u9310\u9318\u939A\u96DB\u9A36\u9C0D\u4E11\u755C\u795D\u7AFA\u7B51\u7BC9\u7E2E\u84C4\u8E59\u8E74\u8EF8\u9010\u6625\u693F\u7443\u51FA\u672E\u9EDC\u5145\u5FE0\u6C96\u87F2\u885D\u8877\u60B4\u81B5\u8403"],["f6a1","\u8D05\u53D6\u5439\u5634\u5A36\u5C31\u708A\u7FE0\u805A\u8106\u81ED\u8DA3\u9189\u9A5F\u9DF2\u5074\u4EC4\u53A0\u60FB\u6E2C\u5C64\u4F88\u5024\u55E4\u5CD9\u5E5F\u6065\u6894\u6CBB\u6DC4\u71BE\u75D4\u75F4\u7661\u7A1A\u7A49\u7DC7\u7DFB\u7F6E\u81F4\u86A9\u8F1C\u96C9\u99B3\u9F52\u5247\u52C5\u98ED\u89AA\u4E03\u67D2\u6F06\u4FB5\u5BE2\u6795\u6C88\u6D78\u741B\u7827\u91DD\u937C\u87C4\u79E4\u7A31\u5FEB\u4ED6\u54A4\u553E\u58AE\u59A5\u60F0\u6253\u62D6\u6736\u6955\u8235\u9640\u99B1\u99DD\u502C\u5353\u5544\u577C\uFA01\u6258\uFA02\u64E2\u666B\u67DD\u6FC1\u6FEF\u7422\u7438\u8A17"],["f7a1","\u9438\u5451\u5606\u5766\u5F48\u619A\u6B4E\u7058\u70AD\u7DBB\u8A95\u596A\u812B\u63A2\u7708\u803D\u8CAA\u5854\u642D\u69BB\u5B95\u5E11\u6E6F\uFA03\u8569\u514C\u53F0\u592A\u6020\u614B\u6B86\u6C70\u6CF0\u7B1E\u80CE\u82D4\u8DC6\u90B0\u98B1\uFA04\u64C7\u6FA4\u6491\u6504\u514E\u5410\u571F\u8A0E\u615F\u6876\uFA05\u75DB\u7B52\u7D71\u901A\u5806\u69CC\u817F\u892A\u9000\u9839\u5078\u5957\u59AC\u6295\u900F\u9B2A\u615D\u7279\u95D6\u5761\u5A46\u5DF4\u628A\u64AD\u64FA\u6777\u6CE2\u6D3E\u722C\u7436\u7834\u7F77\u82AD\u8DDB\u9817\u5224\u5742\u677F\u7248\u74E3\u8CA9\u8FA6\u9211"],["f8a1","\u962A\u516B\u53ED\u634C\u4F69\u5504\u6096\u6557\u6C9B\u6D7F\u724C\u72FD\u7A17\u8987\u8C9D\u5F6D\u6F8E\u70F9\u81A8\u610E\u4FBF\u504F\u6241\u7247\u7BC7\u7DE8\u7FE9\u904D\u97AD\u9A19\u8CB6\u576A\u5E73\u67B0\u840D\u8A55\u5420\u5B16\u5E63\u5EE2\u5F0A\u6583\u80BA\u853D\u9589\u965B\u4F48\u5305\u530D\u530F\u5486\u54FA\u5703\u5E03\u6016\u629B\u62B1\u6355\uFA06\u6CE1\u6D66\u75B1\u7832\u80DE\u812F\u82DE\u8461\u84B2\u888D\u8912\u900B\u92EA\u98FD\u9B91\u5E45\u66B4\u66DD\u7011\u7206\uFA07\u4FF5\u527D\u5F6A\u6153\u6753\u6A19\u6F02\u74E2\u7968\u8868\u8C79\u98C7\u98C4\u9A43"],["f9a1","\u54C1\u7A1F\u6953\u8AF7\u8C4A\u98A8\u99AE\u5F7C\u62AB\u75B2\u76AE\u88AB\u907F\u9642\u5339\u5F3C\u5FC5\u6CCC\u73CC\u7562\u758B\u7B46\u82FE\u999D\u4E4F\u903C\u4E0B\u4F55\u53A6\u590F\u5EC8\u6630\u6CB3\u7455\u8377\u8766\u8CC0\u9050\u971E\u9C15\u58D1\u5B78\u8650\u8B14\u9DB4\u5BD2\u6068\u608D\u65F1\u6C57\u6F22\u6FA3\u701A\u7F55\u7FF0\u9591\u9592\u9650\u97D3\u5272\u8F44\u51FD\u542B\u54B8\u5563\u558A\u6ABB\u6DB5\u7DD8\u8266\u929C\u9677\u9E79\u5408\u54C8\u76D2\u86E4\u95A4\u95D4\u965C\u4EA2\u4F09\u59EE\u5AE6\u5DF7\u6052\u6297\u676D\u6841\u6C86\u6E2F\u7F38\u809B\u822A"],["faa1","\uFA08\uFA09\u9805\u4EA5\u5055\u54B3\u5793\u595A\u5B69\u5BB3\u61C8\u6977\u6D77\u7023\u87F9\u89E3\u8A72\u8AE7\u9082\u99ED\u9AB8\u52BE\u6838\u5016\u5E78\u674F\u8347\u884C\u4EAB\u5411\u56AE\u73E6\u9115\u97FF\u9909\u9957\u9999\u5653\u589F\u865B\u8A31\u61B2\u6AF6\u737B\u8ED2\u6B47\u96AA\u9A57\u5955\u7200\u8D6B\u9769\u4FD4\u5CF4\u5F26\u61F8\u665B\u6CEB\u70AB\u7384\u73B9\u73FE\u7729\u774D\u7D43\u7D62\u7E23\u8237\u8852\uFA0A\u8CE2\u9249\u986F\u5B51\u7A74\u8840\u9801\u5ACC\u4FE0\u5354\u593E\u5CFD\u633E\u6D79\u72F9\u8105\u8107\u83A2\u92CF\u9830\u4EA8\u5144\u5211\u578B"],["fba1","\u5F62\u6CC2\u6ECE\u7005\u7050\u70AF\u7192\u73E9\u7469\u834A\u87A2\u8861\u9008\u90A2\u93A3\u99A8\u516E\u5F57\u60E0\u6167\u66B3\u8559\u8E4A\u91AF\u978B\u4E4E\u4E92\u547C\u58D5\u58FA\u597D\u5CB5\u5F27\u6236\u6248\u660A\u6667\u6BEB\u6D69\u6DCF\u6E56\u6EF8\u6F94\u6FE0\u6FE9\u705D\u72D0\u7425\u745A\u74E0\u7693\u795C\u7CCA\u7E1E\u80E1\u82A6\u846B\u84BF\u864E\u865F\u8774\u8B77\u8C6A\u93AC\u9800\u9865\u60D1\u6216\u9177\u5A5A\u660F\u6DF7\u6E3E\u743F\u9B42\u5FFD\u60DA\u7B0F\u54C4\u5F18\u6C5E\u6CD3\u6D2A\u70D8\u7D05\u8679\u8A0C\u9D3B\u5316\u548C\u5B05\u6A3A\u706B\u7575"],["fca1","\u798D\u79BE\u82B1\u83EF\u8A71\u8B41\u8CA8\u9774\uFA0B\u64F4\u652B\u78BA\u78BB\u7A6B\u4E38\u559A\u5950\u5BA6\u5E7B\u60A3\u63DB\u6B61\u6665\u6853\u6E19\u7165\u74B0\u7D08\u9084\u9A69\u9C25\u6D3B\u6ED1\u733E\u8C41\u95CA\u51F0\u5E4C\u5FA8\u604D\u60F6\u6130\u614C\u6643\u6644\u69A5\u6CC1\u6E5F\u6EC9\u6F62\u714C\u749C\u7687\u7BC1\u7C27\u8352\u8757\u9051\u968D\u9EC3\u532F\u56DE\u5EFB\u5F8A\u6062\u6094\u61F7\u6666\u6703\u6A9C\u6DEE\u6FAE\u7070\u736A\u7E6A\u81BE\u8334\u86D4\u8AA8\u8CC4\u5283\u7372\u5B96\u6A6B\u9404\u54EE\u5686\u5B5D\u6548\u6585\u66C9\u689F\u6D8D\u6DC6"],["fda1","\u723B\u80B4\u9175\u9A4D\u4FAF\u5019\u539A\u540E\u543C\u5589\u55C5\u5E3F\u5F8C\u673D\u7166\u73DD\u9005\u52DB\u52F3\u5864\u58CE\u7104\u718F\u71FB\u85B0\u8A13\u6688\u85A8\u55A7\u6684\u714A\u8431\u5349\u5599\u6BC1\u5F59\u5FBD\u63EE\u6689\u7147\u8AF1\u8F1D\u9EBE\u4F11\u643A\u70CB\u7566\u8667\u6064\u8B4E\u9DF8\u5147\u51F6\u5308\u6D36\u80F8\u9ED1\u6615\u6B23\u7098\u75D5\u5403\u5C79\u7D07\u8A16\u6B20\u6B3D\u6B46\u5438\u6070\u6D3D\u7FD5\u8208\u50D6\u51DE\u559C\u566B\u56CD\u59EC\u5B09\u5E0C\u6199\u6198\u6231\u665E\u66E6\u7199\u71B9\u71BA\u72A7\u79A7\u7A00\u7FB2\u8A70"]]});var K7=v((G3e,XG)=>{XG.exports=[["0","\0",127],["a140","\u3000\uFF0C\u3001\u3002\uFF0E\u2027\uFF1B\uFF1A\uFF1F\uFF01\uFE30\u2026\u2025\uFE50\uFE51\uFE52\xB7\uFE54\uFE55\uFE56\uFE57\uFF5C\u2013\uFE31\u2014\uFE33\u2574\uFE34\uFE4F\uFF08\uFF09\uFE35\uFE36\uFF5B\uFF5D\uFE37\uFE38\u3014\u3015\uFE39\uFE3A\u3010\u3011\uFE3B\uFE3C\u300A\u300B\uFE3D\uFE3E\u3008\u3009\uFE3F\uFE40\u300C\u300D\uFE41\uFE42\u300E\u300F\uFE43\uFE44\uFE59\uFE5A"],["a1a1","\uFE5B\uFE5C\uFE5D\uFE5E\u2018\u2019\u201C\u201D\u301D\u301E\u2035\u2032\uFF03\uFF06\uFF0A\u203B\xA7\u3003\u25CB\u25CF\u25B3\u25B2\u25CE\u2606\u2605\u25C7\u25C6\u25A1\u25A0\u25BD\u25BC\u32A3\u2105\xAF\uFFE3\uFF3F\u02CD\uFE49\uFE4A\uFE4D\uFE4E\uFE4B\uFE4C\uFE5F\uFE60\uFE61\uFF0B\uFF0D\xD7\xF7\xB1\u221A\uFF1C\uFF1E\uFF1D\u2266\u2267\u2260\u221E\u2252\u2261\uFE62",4,"\uFF5E\u2229\u222A\u22A5\u2220\u221F\u22BF\u33D2\u33D1\u222B\u222E\u2235\u2234\u2640\u2642\u2295\u2299\u2191\u2193\u2190\u2192\u2196\u2197\u2199\u2198\u2225\u2223\uFF0F"],["a240","\uFF3C\u2215\uFE68\uFF04\uFFE5\u3012\uFFE0\uFFE1\uFF05\uFF20\u2103\u2109\uFE69\uFE6A\uFE6B\u33D5\u339C\u339D\u339E\u33CE\u33A1\u338E\u338F\u33C4\xB0\u5159\u515B\u515E\u515D\u5161\u5163\u55E7\u74E9\u7CCE\u2581",7,"\u258F\u258E\u258D\u258C\u258B\u258A\u2589\u253C\u2534\u252C\u2524\u251C\u2594\u2500\u2502\u2595\u250C\u2510\u2514\u2518\u256D"],["a2a1","\u256E\u2570\u256F\u2550\u255E\u256A\u2561\u25E2\u25E3\u25E5\u25E4\u2571\u2572\u2573\uFF10",9,"\u2160",9,"\u3021",8,"\u5341\u5344\u5345\uFF21",25,"\uFF41",21],["a340","\uFF57\uFF58\uFF59\uFF5A\u0391",16,"\u03A3",6,"\u03B1",16,"\u03C3",6,"\u3105",10],["a3a1","\u3110",25,"\u02D9\u02C9\u02CA\u02C7\u02CB"],["a3e1","\u20AC"],["a440","\u4E00\u4E59\u4E01\u4E03\u4E43\u4E5D\u4E86\u4E8C\u4EBA\u513F\u5165\u516B\u51E0\u5200\u5201\u529B\u5315\u5341\u535C\u53C8\u4E09\u4E0B\u4E08\u4E0A\u4E2B\u4E38\u51E1\u4E45\u4E48\u4E5F\u4E5E\u4E8E\u4EA1\u5140\u5203\u52FA\u5343\u53C9\u53E3\u571F\u58EB\u5915\u5927\u5973\u5B50\u5B51\u5B53\u5BF8\u5C0F\u5C22\u5C38\u5C71\u5DDD\u5DE5\u5DF1\u5DF2\u5DF3\u5DFE\u5E72\u5EFE\u5F0B\u5F13\u624D"],["a4a1","\u4E11\u4E10\u4E0D\u4E2D\u4E30\u4E39\u4E4B\u5C39\u4E88\u4E91\u4E95\u4E92\u4E94\u4EA2\u4EC1\u4EC0\u4EC3\u4EC6\u4EC7\u4ECD\u4ECA\u4ECB\u4EC4\u5143\u5141\u5167\u516D\u516E\u516C\u5197\u51F6\u5206\u5207\u5208\u52FB\u52FE\u52FF\u5316\u5339\u5348\u5347\u5345\u535E\u5384\u53CB\u53CA\u53CD\u58EC\u5929\u592B\u592A\u592D\u5B54\u5C11\u5C24\u5C3A\u5C6F\u5DF4\u5E7B\u5EFF\u5F14\u5F15\u5FC3\u6208\u6236\u624B\u624E\u652F\u6587\u6597\u65A4\u65B9\u65E5\u66F0\u6708\u6728\u6B20\u6B62\u6B79\u6BCB\u6BD4\u6BDB\u6C0F\u6C34\u706B\u722A\u7236\u723B\u7247\u7259\u725B\u72AC\u738B\u4E19"],["a540","\u4E16\u4E15\u4E14\u4E18\u4E3B\u4E4D\u4E4F\u4E4E\u4EE5\u4ED8\u4ED4\u4ED5\u4ED6\u4ED7\u4EE3\u4EE4\u4ED9\u4EDE\u5145\u5144\u5189\u518A\u51AC\u51F9\u51FA\u51F8\u520A\u52A0\u529F\u5305\u5306\u5317\u531D\u4EDF\u534A\u5349\u5361\u5360\u536F\u536E\u53BB\u53EF\u53E4\u53F3\u53EC\u53EE\u53E9\u53E8\u53FC\u53F8\u53F5\u53EB\u53E6\u53EA\u53F2\u53F1\u53F0\u53E5\u53ED\u53FB\u56DB\u56DA\u5916"],["a5a1","\u592E\u5931\u5974\u5976\u5B55\u5B83\u5C3C\u5DE8\u5DE7\u5DE6\u5E02\u5E03\u5E73\u5E7C\u5F01\u5F18\u5F17\u5FC5\u620A\u6253\u6254\u6252\u6251\u65A5\u65E6\u672E\u672C\u672A\u672B\u672D\u6B63\u6BCD\u6C11\u6C10\u6C38\u6C41\u6C40\u6C3E\u72AF\u7384\u7389\u74DC\u74E6\u7518\u751F\u7528\u7529\u7530\u7531\u7532\u7533\u758B\u767D\u76AE\u76BF\u76EE\u77DB\u77E2\u77F3\u793A\u79BE\u7A74\u7ACB\u4E1E\u4E1F\u4E52\u4E53\u4E69\u4E99\u4EA4\u4EA6\u4EA5\u4EFF\u4F09\u4F19\u4F0A\u4F15\u4F0D\u4F10\u4F11\u4F0F\u4EF2\u4EF6\u4EFB\u4EF0\u4EF3\u4EFD\u4F01\u4F0B\u5149\u5147\u5146\u5148\u5168"],["a640","\u5171\u518D\u51B0\u5217\u5211\u5212\u520E\u5216\u52A3\u5308\u5321\u5320\u5370\u5371\u5409\u540F\u540C\u540A\u5410\u5401\u540B\u5404\u5411\u540D\u5408\u5403\u540E\u5406\u5412\u56E0\u56DE\u56DD\u5733\u5730\u5728\u572D\u572C\u572F\u5729\u5919\u591A\u5937\u5938\u5984\u5978\u5983\u597D\u5979\u5982\u5981\u5B57\u5B58\u5B87\u5B88\u5B85\u5B89\u5BFA\u5C16\u5C79\u5DDE\u5E06\u5E76\u5E74"],["a6a1","\u5F0F\u5F1B\u5FD9\u5FD6\u620E\u620C\u620D\u6210\u6263\u625B\u6258\u6536\u65E9\u65E8\u65EC\u65ED\u66F2\u66F3\u6709\u673D\u6734\u6731\u6735\u6B21\u6B64\u6B7B\u6C16\u6C5D\u6C57\u6C59\u6C5F\u6C60\u6C50\u6C55\u6C61\u6C5B\u6C4D\u6C4E\u7070\u725F\u725D\u767E\u7AF9\u7C73\u7CF8\u7F36\u7F8A\u7FBD\u8001\u8003\u800C\u8012\u8033\u807F\u8089\u808B\u808C\u81E3\u81EA\u81F3\u81FC\u820C\u821B\u821F\u826E\u8272\u827E\u866B\u8840\u884C\u8863\u897F\u9621\u4E32\u4EA8\u4F4D\u4F4F\u4F47\u4F57\u4F5E\u4F34\u4F5B\u4F55\u4F30\u4F50\u4F51\u4F3D\u4F3A\u4F38\u4F43\u4F54\u4F3C\u4F46\u4F63"],["a740","\u4F5C\u4F60\u4F2F\u4F4E\u4F36\u4F59\u4F5D\u4F48\u4F5A\u514C\u514B\u514D\u5175\u51B6\u51B7\u5225\u5224\u5229\u522A\u5228\u52AB\u52A9\u52AA\u52AC\u5323\u5373\u5375\u541D\u542D\u541E\u543E\u5426\u544E\u5427\u5446\u5443\u5433\u5448\u5442\u541B\u5429\u544A\u5439\u543B\u5438\u542E\u5435\u5436\u5420\u543C\u5440\u5431\u542B\u541F\u542C\u56EA\u56F0\u56E4\u56EB\u574A\u5751\u5740\u574D"],["a7a1","\u5747\u574E\u573E\u5750\u574F\u573B\u58EF\u593E\u599D\u5992\u59A8\u599E\u59A3\u5999\u5996\u598D\u59A4\u5993\u598A\u59A5\u5B5D\u5B5C\u5B5A\u5B5B\u5B8C\u5B8B\u5B8F\u5C2C\u5C40\u5C41\u5C3F\u5C3E\u5C90\u5C91\u5C94\u5C8C\u5DEB\u5E0C\u5E8F\u5E87\u5E8A\u5EF7\u5F04\u5F1F\u5F64\u5F62\u5F77\u5F79\u5FD8\u5FCC\u5FD7\u5FCD\u5FF1\u5FEB\u5FF8\u5FEA\u6212\u6211\u6284\u6297\u6296\u6280\u6276\u6289\u626D\u628A\u627C\u627E\u6279\u6273\u6292\u626F\u6298\u626E\u6295\u6293\u6291\u6286\u6539\u653B\u6538\u65F1\u66F4\u675F\u674E\u674F\u6750\u6751\u675C\u6756\u675E\u6749\u6746\u6760"],["a840","\u6753\u6757\u6B65\u6BCF\u6C42\u6C5E\u6C99\u6C81\u6C88\u6C89\u6C85\u6C9B\u6C6A\u6C7A\u6C90\u6C70\u6C8C\u6C68\u6C96\u6C92\u6C7D\u6C83\u6C72\u6C7E\u6C74\u6C86\u6C76\u6C8D\u6C94\u6C98\u6C82\u7076\u707C\u707D\u7078\u7262\u7261\u7260\u72C4\u72C2\u7396\u752C\u752B\u7537\u7538\u7682\u76EF\u77E3\u79C1\u79C0\u79BF\u7A76\u7CFB\u7F55\u8096\u8093\u809D\u8098\u809B\u809A\u80B2\u826F\u8292"],["a8a1","\u828B\u828D\u898B\u89D2\u8A00\u8C37\u8C46\u8C55\u8C9D\u8D64\u8D70\u8DB3\u8EAB\u8ECA\u8F9B\u8FB0\u8FC2\u8FC6\u8FC5\u8FC4\u5DE1\u9091\u90A2\u90AA\u90A6\u90A3\u9149\u91C6\u91CC\u9632\u962E\u9631\u962A\u962C\u4E26\u4E56\u4E73\u4E8B\u4E9B\u4E9E\u4EAB\u4EAC\u4F6F\u4F9D\u4F8D\u4F73\u4F7F\u4F6C\u4F9B\u4F8B\u4F86\u4F83\u4F70\u4F75\u4F88\u4F69\u4F7B\u4F96\u4F7E\u4F8F\u4F91\u4F7A\u5154\u5152\u5155\u5169\u5177\u5176\u5178\u51BD\u51FD\u523B\u5238\u5237\u523A\u5230\u522E\u5236\u5241\u52BE\u52BB\u5352\u5354\u5353\u5351\u5366\u5377\u5378\u5379\u53D6\u53D4\u53D7\u5473\u5475"],["a940","\u5496\u5478\u5495\u5480\u547B\u5477\u5484\u5492\u5486\u547C\u5490\u5471\u5476\u548C\u549A\u5462\u5468\u548B\u547D\u548E\u56FA\u5783\u5777\u576A\u5769\u5761\u5766\u5764\u577C\u591C\u5949\u5947\u5948\u5944\u5954\u59BE\u59BB\u59D4\u59B9\u59AE\u59D1\u59C6\u59D0\u59CD\u59CB\u59D3\u59CA\u59AF\u59B3\u59D2\u59C5\u5B5F\u5B64\u5B63\u5B97\u5B9A\u5B98\u5B9C\u5B99\u5B9B\u5C1A\u5C48\u5C45"],["a9a1","\u5C46\u5CB7\u5CA1\u5CB8\u5CA9\u5CAB\u5CB1\u5CB3\u5E18\u5E1A\u5E16\u5E15\u5E1B\u5E11\u5E78\u5E9A\u5E97\u5E9C\u5E95\u5E96\u5EF6\u5F26\u5F27\u5F29\u5F80\u5F81\u5F7F\u5F7C\u5FDD\u5FE0\u5FFD\u5FF5\u5FFF\u600F\u6014\u602F\u6035\u6016\u602A\u6015\u6021\u6027\u6029\u602B\u601B\u6216\u6215\u623F\u623E\u6240\u627F\u62C9\u62CC\u62C4\u62BF\u62C2\u62B9\u62D2\u62DB\u62AB\u62D3\u62D4\u62CB\u62C8\u62A8\u62BD\u62BC\u62D0\u62D9\u62C7\u62CD\u62B5\u62DA\u62B1\u62D8\u62D6\u62D7\u62C6\u62AC\u62CE\u653E\u65A7\u65BC\u65FA\u6614\u6613\u660C\u6606\u6602\u660E\u6600\u660F\u6615\u660A"],["aa40","\u6607\u670D\u670B\u676D\u678B\u6795\u6771\u679C\u6773\u6777\u6787\u679D\u6797\u676F\u6770\u677F\u6789\u677E\u6790\u6775\u679A\u6793\u677C\u676A\u6772\u6B23\u6B66\u6B67\u6B7F\u6C13\u6C1B\u6CE3\u6CE8\u6CF3\u6CB1\u6CCC\u6CE5\u6CB3\u6CBD\u6CBE\u6CBC\u6CE2\u6CAB\u6CD5\u6CD3\u6CB8\u6CC4\u6CB9\u6CC1\u6CAE\u6CD7\u6CC5\u6CF1\u6CBF\u6CBB\u6CE1\u6CDB\u6CCA\u6CAC\u6CEF\u6CDC\u6CD6\u6CE0"],["aaa1","\u7095\u708E\u7092\u708A\u7099\u722C\u722D\u7238\u7248\u7267\u7269\u72C0\u72CE\u72D9\u72D7\u72D0\u73A9\u73A8\u739F\u73AB\u73A5\u753D\u759D\u7599\u759A\u7684\u76C2\u76F2\u76F4\u77E5\u77FD\u793E\u7940\u7941\u79C9\u79C8\u7A7A\u7A79\u7AFA\u7CFE\u7F54\u7F8C\u7F8B\u8005\u80BA\u80A5\u80A2\u80B1\u80A1\u80AB\u80A9\u80B4\u80AA\u80AF\u81E5\u81FE\u820D\u82B3\u829D\u8299\u82AD\u82BD\u829F\u82B9\u82B1\u82AC\u82A5\u82AF\u82B8\u82A3\u82B0\u82BE\u82B7\u864E\u8671\u521D\u8868\u8ECB\u8FCE\u8FD4\u8FD1\u90B5\u90B8\u90B1\u90B6\u91C7\u91D1\u9577\u9580\u961C\u9640\u963F\u963B\u9644"],["ab40","\u9642\u96B9\u96E8\u9752\u975E\u4E9F\u4EAD\u4EAE\u4FE1\u4FB5\u4FAF\u4FBF\u4FE0\u4FD1\u4FCF\u4FDD\u4FC3\u4FB6\u4FD8\u4FDF\u4FCA\u4FD7\u4FAE\u4FD0\u4FC4\u4FC2\u4FDA\u4FCE\u4FDE\u4FB7\u5157\u5192\u5191\u51A0\u524E\u5243\u524A\u524D\u524C\u524B\u5247\u52C7\u52C9\u52C3\u52C1\u530D\u5357\u537B\u539A\u53DB\u54AC\u54C0\u54A8\u54CE\u54C9\u54B8\u54A6\u54B3\u54C7\u54C2\u54BD\u54AA\u54C1"],["aba1","\u54C4\u54C8\u54AF\u54AB\u54B1\u54BB\u54A9\u54A7\u54BF\u56FF\u5782\u578B\u57A0\u57A3\u57A2\u57CE\u57AE\u5793\u5955\u5951\u594F\u594E\u5950\u59DC\u59D8\u59FF\u59E3\u59E8\u5A03\u59E5\u59EA\u59DA\u59E6\u5A01\u59FB\u5B69\u5BA3\u5BA6\u5BA4\u5BA2\u5BA5\u5C01\u5C4E\u5C4F\u5C4D\u5C4B\u5CD9\u5CD2\u5DF7\u5E1D\u5E25\u5E1F\u5E7D\u5EA0\u5EA6\u5EFA\u5F08\u5F2D\u5F65\u5F88\u5F85\u5F8A\u5F8B\u5F87\u5F8C\u5F89\u6012\u601D\u6020\u6025\u600E\u6028\u604D\u6070\u6068\u6062\u6046\u6043\u606C\u606B\u606A\u6064\u6241\u62DC\u6316\u6309\u62FC\u62ED\u6301\u62EE\u62FD\u6307\u62F1\u62F7"],["ac40","\u62EF\u62EC\u62FE\u62F4\u6311\u6302\u653F\u6545\u65AB\u65BD\u65E2\u6625\u662D\u6620\u6627\u662F\u661F\u6628\u6631\u6624\u66F7\u67FF\u67D3\u67F1\u67D4\u67D0\u67EC\u67B6\u67AF\u67F5\u67E9\u67EF\u67C4\u67D1\u67B4\u67DA\u67E5\u67B8\u67CF\u67DE\u67F3\u67B0\u67D9\u67E2\u67DD\u67D2\u6B6A\u6B83\u6B86\u6BB5\u6BD2\u6BD7\u6C1F\u6CC9\u6D0B\u6D32\u6D2A\u6D41\u6D25\u6D0C\u6D31\u6D1E\u6D17"],["aca1","\u6D3B\u6D3D\u6D3E\u6D36\u6D1B\u6CF5\u6D39\u6D27\u6D38\u6D29\u6D2E\u6D35\u6D0E\u6D2B\u70AB\u70BA\u70B3\u70AC\u70AF\u70AD\u70B8\u70AE\u70A4\u7230\u7272\u726F\u7274\u72E9\u72E0\u72E1\u73B7\u73CA\u73BB\u73B2\u73CD\u73C0\u73B3\u751A\u752D\u754F\u754C\u754E\u754B\u75AB\u75A4\u75A5\u75A2\u75A3\u7678\u7686\u7687\u7688\u76C8\u76C6\u76C3\u76C5\u7701\u76F9\u76F8\u7709\u770B\u76FE\u76FC\u7707\u77DC\u7802\u7814\u780C\u780D\u7946\u7949\u7948\u7947\u79B9\u79BA\u79D1\u79D2\u79CB\u7A7F\u7A81\u7AFF\u7AFD\u7C7D\u7D02\u7D05\u7D00\u7D09\u7D07\u7D04\u7D06\u7F38\u7F8E\u7FBF\u8004"],["ad40","\u8010\u800D\u8011\u8036\u80D6\u80E5\u80DA\u80C3\u80C4\u80CC\u80E1\u80DB\u80CE\u80DE\u80E4\u80DD\u81F4\u8222\u82E7\u8303\u8305\u82E3\u82DB\u82E6\u8304\u82E5\u8302\u8309\u82D2\u82D7\u82F1\u8301\u82DC\u82D4\u82D1\u82DE\u82D3\u82DF\u82EF\u8306\u8650\u8679\u867B\u867A\u884D\u886B\u8981\u89D4\u8A08\u8A02\u8A03\u8C9E\u8CA0\u8D74\u8D73\u8DB4\u8ECD\u8ECC\u8FF0\u8FE6\u8FE2\u8FEA\u8FE5"],["ada1","\u8FED\u8FEB\u8FE4\u8FE8\u90CA\u90CE\u90C1\u90C3\u914B\u914A\u91CD\u9582\u9650\u964B\u964C\u964D\u9762\u9769\u97CB\u97ED\u97F3\u9801\u98A8\u98DB\u98DF\u9996\u9999\u4E58\u4EB3\u500C\u500D\u5023\u4FEF\u5026\u5025\u4FF8\u5029\u5016\u5006\u503C\u501F\u501A\u5012\u5011\u4FFA\u5000\u5014\u5028\u4FF1\u5021\u500B\u5019\u5018\u4FF3\u4FEE\u502D\u502A\u4FFE\u502B\u5009\u517C\u51A4\u51A5\u51A2\u51CD\u51CC\u51C6\u51CB\u5256\u525C\u5254\u525B\u525D\u532A\u537F\u539F\u539D\u53DF\u54E8\u5510\u5501\u5537\u54FC\u54E5\u54F2\u5506\u54FA\u5514\u54E9\u54ED\u54E1\u5509\u54EE\u54EA"],["ae40","\u54E6\u5527\u5507\u54FD\u550F\u5703\u5704\u57C2\u57D4\u57CB\u57C3\u5809\u590F\u5957\u5958\u595A\u5A11\u5A18\u5A1C\u5A1F\u5A1B\u5A13\u59EC\u5A20\u5A23\u5A29\u5A25\u5A0C\u5A09\u5B6B\u5C58\u5BB0\u5BB3\u5BB6\u5BB4\u5BAE\u5BB5\u5BB9\u5BB8\u5C04\u5C51\u5C55\u5C50\u5CED\u5CFD\u5CFB\u5CEA\u5CE8\u5CF0\u5CF6\u5D01\u5CF4\u5DEE\u5E2D\u5E2B\u5EAB\u5EAD\u5EA7\u5F31\u5F92\u5F91\u5F90\u6059"],["aea1","\u6063\u6065\u6050\u6055\u606D\u6069\u606F\u6084\u609F\u609A\u608D\u6094\u608C\u6085\u6096\u6247\u62F3\u6308\u62FF\u634E\u633E\u632F\u6355\u6342\u6346\u634F\u6349\u633A\u6350\u633D\u632A\u632B\u6328\u634D\u634C\u6548\u6549\u6599\u65C1\u65C5\u6642\u6649\u664F\u6643\u6652\u664C\u6645\u6641\u66F8\u6714\u6715\u6717\u6821\u6838\u6848\u6846\u6853\u6839\u6842\u6854\u6829\u68B3\u6817\u684C\u6851\u683D\u67F4\u6850\u6840\u683C\u6843\u682A\u6845\u6813\u6818\u6841\u6B8A\u6B89\u6BB7\u6C23\u6C27\u6C28\u6C26\u6C24\u6CF0\u6D6A\u6D95\u6D88\u6D87\u6D66\u6D78\u6D77\u6D59\u6D93"],["af40","\u6D6C\u6D89\u6D6E\u6D5A\u6D74\u6D69\u6D8C\u6D8A\u6D79\u6D85\u6D65\u6D94\u70CA\u70D8\u70E4\u70D9\u70C8\u70CF\u7239\u7279\u72FC\u72F9\u72FD\u72F8\u72F7\u7386\u73ED\u7409\u73EE\u73E0\u73EA\u73DE\u7554\u755D\u755C\u755A\u7559\u75BE\u75C5\u75C7\u75B2\u75B3\u75BD\u75BC\u75B9\u75C2\u75B8\u768B\u76B0\u76CA\u76CD\u76CE\u7729\u771F\u7720\u7728\u77E9\u7830\u7827\u7838\u781D\u7834\u7837"],["afa1","\u7825\u782D\u7820\u781F\u7832\u7955\u7950\u7960\u795F\u7956\u795E\u795D\u7957\u795A\u79E4\u79E3\u79E7\u79DF\u79E6\u79E9\u79D8\u7A84\u7A88\u7AD9\u7B06\u7B11\u7C89\u7D21\u7D17\u7D0B\u7D0A\u7D20\u7D22\u7D14\u7D10\u7D15\u7D1A\u7D1C\u7D0D\u7D19\u7D1B\u7F3A\u7F5F\u7F94\u7FC5\u7FC1\u8006\u8018\u8015\u8019\u8017\u803D\u803F\u80F1\u8102\u80F0\u8105\u80ED\u80F4\u8106\u80F8\u80F3\u8108\u80FD\u810A\u80FC\u80EF\u81ED\u81EC\u8200\u8210\u822A\u822B\u8228\u822C\u82BB\u832B\u8352\u8354\u834A\u8338\u8350\u8349\u8335\u8334\u834F\u8332\u8339\u8336\u8317\u8340\u8331\u8328\u8343"],["b040","\u8654\u868A\u86AA\u8693\u86A4\u86A9\u868C\u86A3\u869C\u8870\u8877\u8881\u8882\u887D\u8879\u8A18\u8A10\u8A0E\u8A0C\u8A15\u8A0A\u8A17\u8A13\u8A16\u8A0F\u8A11\u8C48\u8C7A\u8C79\u8CA1\u8CA2\u8D77\u8EAC\u8ED2\u8ED4\u8ECF\u8FB1\u9001\u9006\u8FF7\u9000\u8FFA\u8FF4\u9003\u8FFD\u9005\u8FF8\u9095\u90E1\u90DD\u90E2\u9152\u914D\u914C\u91D8\u91DD\u91D7\u91DC\u91D9\u9583\u9662\u9663\u9661"],["b0a1","\u965B\u965D\u9664\u9658\u965E\u96BB\u98E2\u99AC\u9AA8\u9AD8\u9B25\u9B32\u9B3C\u4E7E\u507A\u507D\u505C\u5047\u5043\u504C\u505A\u5049\u5065\u5076\u504E\u5055\u5075\u5074\u5077\u504F\u500F\u506F\u506D\u515C\u5195\u51F0\u526A\u526F\u52D2\u52D9\u52D8\u52D5\u5310\u530F\u5319\u533F\u5340\u533E\u53C3\u66FC\u5546\u556A\u5566\u5544\u555E\u5561\u5543\u554A\u5531\u5556\u554F\u5555\u552F\u5564\u5538\u552E\u555C\u552C\u5563\u5533\u5541\u5557\u5708\u570B\u5709\u57DF\u5805\u580A\u5806\u57E0\u57E4\u57FA\u5802\u5835\u57F7\u57F9\u5920\u5962\u5A36\u5A41\u5A49\u5A66\u5A6A\u5A40"],["b140","\u5A3C\u5A62\u5A5A\u5A46\u5A4A\u5B70\u5BC7\u5BC5\u5BC4\u5BC2\u5BBF\u5BC6\u5C09\u5C08\u5C07\u5C60\u5C5C\u5C5D\u5D07\u5D06\u5D0E\u5D1B\u5D16\u5D22\u5D11\u5D29\u5D14\u5D19\u5D24\u5D27\u5D17\u5DE2\u5E38\u5E36\u5E33\u5E37\u5EB7\u5EB8\u5EB6\u5EB5\u5EBE\u5F35\u5F37\u5F57\u5F6C\u5F69\u5F6B\u5F97\u5F99\u5F9E\u5F98\u5FA1\u5FA0\u5F9C\u607F\u60A3\u6089\u60A0\u60A8\u60CB\u60B4\u60E6\u60BD"],["b1a1","\u60C5\u60BB\u60B5\u60DC\u60BC\u60D8\u60D5\u60C6\u60DF\u60B8\u60DA\u60C7\u621A\u621B\u6248\u63A0\u63A7\u6372\u6396\u63A2\u63A5\u6377\u6367\u6398\u63AA\u6371\u63A9\u6389\u6383\u639B\u636B\u63A8\u6384\u6388\u6399\u63A1\u63AC\u6392\u638F\u6380\u637B\u6369\u6368\u637A\u655D\u6556\u6551\u6559\u6557\u555F\u654F\u6558\u6555\u6554\u659C\u659B\u65AC\u65CF\u65CB\u65CC\u65CE\u665D\u665A\u6664\u6668\u6666\u665E\u66F9\u52D7\u671B\u6881\u68AF\u68A2\u6893\u68B5\u687F\u6876\u68B1\u68A7\u6897\u68B0\u6883\u68C4\u68AD\u6886\u6885\u6894\u689D\u68A8\u689F\u68A1\u6882\u6B32\u6BBA"],["b240","\u6BEB\u6BEC\u6C2B\u6D8E\u6DBC\u6DF3\u6DD9\u6DB2\u6DE1\u6DCC\u6DE4\u6DFB\u6DFA\u6E05\u6DC7\u6DCB\u6DAF\u6DD1\u6DAE\u6DDE\u6DF9\u6DB8\u6DF7\u6DF5\u6DC5\u6DD2\u6E1A\u6DB5\u6DDA\u6DEB\u6DD8\u6DEA\u6DF1\u6DEE\u6DE8\u6DC6\u6DC4\u6DAA\u6DEC\u6DBF\u6DE6\u70F9\u7109\u710A\u70FD\u70EF\u723D\u727D\u7281\u731C\u731B\u7316\u7313\u7319\u7387\u7405\u740A\u7403\u7406\u73FE\u740D\u74E0\u74F6"],["b2a1","\u74F7\u751C\u7522\u7565\u7566\u7562\u7570\u758F\u75D4\u75D5\u75B5\u75CA\u75CD\u768E\u76D4\u76D2\u76DB\u7737\u773E\u773C\u7736\u7738\u773A\u786B\u7843\u784E\u7965\u7968\u796D\u79FB\u7A92\u7A95\u7B20\u7B28\u7B1B\u7B2C\u7B26\u7B19\u7B1E\u7B2E\u7C92\u7C97\u7C95\u7D46\u7D43\u7D71\u7D2E\u7D39\u7D3C\u7D40\u7D30\u7D33\u7D44\u7D2F\u7D42\u7D32\u7D31\u7F3D\u7F9E\u7F9A\u7FCC\u7FCE\u7FD2\u801C\u804A\u8046\u812F\u8116\u8123\u812B\u8129\u8130\u8124\u8202\u8235\u8237\u8236\u8239\u838E\u839E\u8398\u8378\u83A2\u8396\u83BD\u83AB\u8392\u838A\u8393\u8389\u83A0\u8377\u837B\u837C"],["b340","\u8386\u83A7\u8655\u5F6A\u86C7\u86C0\u86B6\u86C4\u86B5\u86C6\u86CB\u86B1\u86AF\u86C9\u8853\u889E\u8888\u88AB\u8892\u8896\u888D\u888B\u8993\u898F\u8A2A\u8A1D\u8A23\u8A25\u8A31\u8A2D\u8A1F\u8A1B\u8A22\u8C49\u8C5A\u8CA9\u8CAC\u8CAB\u8CA8\u8CAA\u8CA7\u8D67\u8D66\u8DBE\u8DBA\u8EDB\u8EDF\u9019\u900D\u901A\u9017\u9023\u901F\u901D\u9010\u9015\u901E\u9020\u900F\u9022\u9016\u901B\u9014"],["b3a1","\u90E8\u90ED\u90FD\u9157\u91CE\u91F5\u91E6\u91E3\u91E7\u91ED\u91E9\u9589\u966A\u9675\u9673\u9678\u9670\u9674\u9676\u9677\u966C\u96C0\u96EA\u96E9\u7AE0\u7ADF\u9802\u9803\u9B5A\u9CE5\u9E75\u9E7F\u9EA5\u9EBB\u50A2\u508D\u5085\u5099\u5091\u5080\u5096\u5098\u509A\u6700\u51F1\u5272\u5274\u5275\u5269\u52DE\u52DD\u52DB\u535A\u53A5\u557B\u5580\u55A7\u557C\u558A\u559D\u5598\u5582\u559C\u55AA\u5594\u5587\u558B\u5583\u55B3\u55AE\u559F\u553E\u55B2\u559A\u55BB\u55AC\u55B1\u557E\u5589\u55AB\u5599\u570D\u582F\u582A\u5834\u5824\u5830\u5831\u5821\u581D\u5820\u58F9\u58FA\u5960"],["b440","\u5A77\u5A9A\u5A7F\u5A92\u5A9B\u5AA7\u5B73\u5B71\u5BD2\u5BCC\u5BD3\u5BD0\u5C0A\u5C0B\u5C31\u5D4C\u5D50\u5D34\u5D47\u5DFD\u5E45\u5E3D\u5E40\u5E43\u5E7E\u5ECA\u5EC1\u5EC2\u5EC4\u5F3C\u5F6D\u5FA9\u5FAA\u5FA8\u60D1\u60E1\u60B2\u60B6\u60E0\u611C\u6123\u60FA\u6115\u60F0\u60FB\u60F4\u6168\u60F1\u610E\u60F6\u6109\u6100\u6112\u621F\u6249\u63A3\u638C\u63CF\u63C0\u63E9\u63C9\u63C6\u63CD"],["b4a1","\u63D2\u63E3\u63D0\u63E1\u63D6\u63ED\u63EE\u6376\u63F4\u63EA\u63DB\u6452\u63DA\u63F9\u655E\u6566\u6562\u6563\u6591\u6590\u65AF\u666E\u6670\u6674\u6676\u666F\u6691\u667A\u667E\u6677\u66FE\u66FF\u671F\u671D\u68FA\u68D5\u68E0\u68D8\u68D7\u6905\u68DF\u68F5\u68EE\u68E7\u68F9\u68D2\u68F2\u68E3\u68CB\u68CD\u690D\u6912\u690E\u68C9\u68DA\u696E\u68FB\u6B3E\u6B3A\u6B3D\u6B98\u6B96\u6BBC\u6BEF\u6C2E\u6C2F\u6C2C\u6E2F\u6E38\u6E54\u6E21\u6E32\u6E67\u6E4A\u6E20\u6E25\u6E23\u6E1B\u6E5B\u6E58\u6E24\u6E56\u6E6E\u6E2D\u6E26\u6E6F\u6E34\u6E4D\u6E3A\u6E2C\u6E43\u6E1D\u6E3E\u6ECB"],["b540","\u6E89\u6E19\u6E4E\u6E63\u6E44\u6E72\u6E69\u6E5F\u7119\u711A\u7126\u7130\u7121\u7136\u716E\u711C\u724C\u7284\u7280\u7336\u7325\u7334\u7329\u743A\u742A\u7433\u7422\u7425\u7435\u7436\u7434\u742F\u741B\u7426\u7428\u7525\u7526\u756B\u756A\u75E2\u75DB\u75E3\u75D9\u75D8\u75DE\u75E0\u767B\u767C\u7696\u7693\u76B4\u76DC\u774F\u77ED\u785D\u786C\u786F\u7A0D\u7A08\u7A0B\u7A05\u7A00\u7A98"],["b5a1","\u7A97\u7A96\u7AE5\u7AE3\u7B49\u7B56\u7B46\u7B50\u7B52\u7B54\u7B4D\u7B4B\u7B4F\u7B51\u7C9F\u7CA5\u7D5E\u7D50\u7D68\u7D55\u7D2B\u7D6E\u7D72\u7D61\u7D66\u7D62\u7D70\u7D73\u5584\u7FD4\u7FD5\u800B\u8052\u8085\u8155\u8154\u814B\u8151\u814E\u8139\u8146\u813E\u814C\u8153\u8174\u8212\u821C\u83E9\u8403\u83F8\u840D\u83E0\u83C5\u840B\u83C1\u83EF\u83F1\u83F4\u8457\u840A\u83F0\u840C\u83CC\u83FD\u83F2\u83CA\u8438\u840E\u8404\u83DC\u8407\u83D4\u83DF\u865B\u86DF\u86D9\u86ED\u86D4\u86DB\u86E4\u86D0\u86DE\u8857\u88C1\u88C2\u88B1\u8983\u8996\u8A3B\u8A60\u8A55\u8A5E\u8A3C\u8A41"],["b640","\u8A54\u8A5B\u8A50\u8A46\u8A34\u8A3A\u8A36\u8A56\u8C61\u8C82\u8CAF\u8CBC\u8CB3\u8CBD\u8CC1\u8CBB\u8CC0\u8CB4\u8CB7\u8CB6\u8CBF\u8CB8\u8D8A\u8D85\u8D81\u8DCE\u8DDD\u8DCB\u8DDA\u8DD1\u8DCC\u8DDB\u8DC6\u8EFB\u8EF8\u8EFC\u8F9C\u902E\u9035\u9031\u9038\u9032\u9036\u9102\u90F5\u9109\u90FE\u9163\u9165\u91CF\u9214\u9215\u9223\u9209\u921E\u920D\u9210\u9207\u9211\u9594\u958F\u958B\u9591"],["b6a1","\u9593\u9592\u958E\u968A\u968E\u968B\u967D\u9685\u9686\u968D\u9672\u9684\u96C1\u96C5\u96C4\u96C6\u96C7\u96EF\u96F2\u97CC\u9805\u9806\u9808\u98E7\u98EA\u98EF\u98E9\u98F2\u98ED\u99AE\u99AD\u9EC3\u9ECD\u9ED1\u4E82\u50AD\u50B5\u50B2\u50B3\u50C5\u50BE\u50AC\u50B7\u50BB\u50AF\u50C7\u527F\u5277\u527D\u52DF\u52E6\u52E4\u52E2\u52E3\u532F\u55DF\u55E8\u55D3\u55E6\u55CE\u55DC\u55C7\u55D1\u55E3\u55E4\u55EF\u55DA\u55E1\u55C5\u55C6\u55E5\u55C9\u5712\u5713\u585E\u5851\u5858\u5857\u585A\u5854\u586B\u584C\u586D\u584A\u5862\u5852\u584B\u5967\u5AC1\u5AC9\u5ACC\u5ABE\u5ABD\u5ABC"],["b740","\u5AB3\u5AC2\u5AB2\u5D69\u5D6F\u5E4C\u5E79\u5EC9\u5EC8\u5F12\u5F59\u5FAC\u5FAE\u611A\u610F\u6148\u611F\u60F3\u611B\u60F9\u6101\u6108\u614E\u614C\u6144\u614D\u613E\u6134\u6127\u610D\u6106\u6137\u6221\u6222\u6413\u643E\u641E\u642A\u642D\u643D\u642C\u640F\u641C\u6414\u640D\u6436\u6416\u6417\u6406\u656C\u659F\u65B0\u6697\u6689\u6687\u6688\u6696\u6684\u6698\u668D\u6703\u6994\u696D"],["b7a1","\u695A\u6977\u6960\u6954\u6975\u6930\u6982\u694A\u6968\u696B\u695E\u6953\u6979\u6986\u695D\u6963\u695B\u6B47\u6B72\u6BC0\u6BBF\u6BD3\u6BFD\u6EA2\u6EAF\u6ED3\u6EB6\u6EC2\u6E90\u6E9D\u6EC7\u6EC5\u6EA5\u6E98\u6EBC\u6EBA\u6EAB\u6ED1\u6E96\u6E9C\u6EC4\u6ED4\u6EAA\u6EA7\u6EB4\u714E\u7159\u7169\u7164\u7149\u7167\u715C\u716C\u7166\u714C\u7165\u715E\u7146\u7168\u7156\u723A\u7252\u7337\u7345\u733F\u733E\u746F\u745A\u7455\u745F\u745E\u7441\u743F\u7459\u745B\u745C\u7576\u7578\u7600\u75F0\u7601\u75F2\u75F1\u75FA\u75FF\u75F4\u75F3\u76DE\u76DF\u775B\u776B\u7766\u775E\u7763"],["b840","\u7779\u776A\u776C\u775C\u7765\u7768\u7762\u77EE\u788E\u78B0\u7897\u7898\u788C\u7889\u787C\u7891\u7893\u787F\u797A\u797F\u7981\u842C\u79BD\u7A1C\u7A1A\u7A20\u7A14\u7A1F\u7A1E\u7A9F\u7AA0\u7B77\u7BC0\u7B60\u7B6E\u7B67\u7CB1\u7CB3\u7CB5\u7D93\u7D79\u7D91\u7D81\u7D8F\u7D5B\u7F6E\u7F69\u7F6A\u7F72\u7FA9\u7FA8\u7FA4\u8056\u8058\u8086\u8084\u8171\u8170\u8178\u8165\u816E\u8173\u816B"],["b8a1","\u8179\u817A\u8166\u8205\u8247\u8482\u8477\u843D\u8431\u8475\u8466\u846B\u8449\u846C\u845B\u843C\u8435\u8461\u8463\u8469\u846D\u8446\u865E\u865C\u865F\u86F9\u8713\u8708\u8707\u8700\u86FE\u86FB\u8702\u8703\u8706\u870A\u8859\u88DF\u88D4\u88D9\u88DC\u88D8\u88DD\u88E1\u88CA\u88D5\u88D2\u899C\u89E3\u8A6B\u8A72\u8A73\u8A66\u8A69\u8A70\u8A87\u8A7C\u8A63\u8AA0\u8A71\u8A85\u8A6D\u8A62\u8A6E\u8A6C\u8A79\u8A7B\u8A3E\u8A68\u8C62\u8C8A\u8C89\u8CCA\u8CC7\u8CC8\u8CC4\u8CB2\u8CC3\u8CC2\u8CC5\u8DE1\u8DDF\u8DE8\u8DEF\u8DF3\u8DFA\u8DEA\u8DE4\u8DE6\u8EB2\u8F03\u8F09\u8EFE\u8F0A"],["b940","\u8F9F\u8FB2\u904B\u904A\u9053\u9042\u9054\u903C\u9055\u9050\u9047\u904F\u904E\u904D\u9051\u903E\u9041\u9112\u9117\u916C\u916A\u9169\u91C9\u9237\u9257\u9238\u923D\u9240\u923E\u925B\u924B\u9264\u9251\u9234\u9249\u924D\u9245\u9239\u923F\u925A\u9598\u9698\u9694\u9695\u96CD\u96CB\u96C9\u96CA\u96F7\u96FB\u96F9\u96F6\u9756\u9774\u9776\u9810\u9811\u9813\u980A\u9812\u980C\u98FC\u98F4"],["b9a1","\u98FD\u98FE\u99B3\u99B1\u99B4\u9AE1\u9CE9\u9E82\u9F0E\u9F13\u9F20\u50E7\u50EE\u50E5\u50D6\u50ED\u50DA\u50D5\u50CF\u50D1\u50F1\u50CE\u50E9\u5162\u51F3\u5283\u5282\u5331\u53AD\u55FE\u5600\u561B\u5617\u55FD\u5614\u5606\u5609\u560D\u560E\u55F7\u5616\u561F\u5608\u5610\u55F6\u5718\u5716\u5875\u587E\u5883\u5893\u588A\u5879\u5885\u587D\u58FD\u5925\u5922\u5924\u596A\u5969\u5AE1\u5AE6\u5AE9\u5AD7\u5AD6\u5AD8\u5AE3\u5B75\u5BDE\u5BE7\u5BE1\u5BE5\u5BE6\u5BE8\u5BE2\u5BE4\u5BDF\u5C0D\u5C62\u5D84\u5D87\u5E5B\u5E63\u5E55\u5E57\u5E54\u5ED3\u5ED6\u5F0A\u5F46\u5F70\u5FB9\u6147"],["ba40","\u613F\u614B\u6177\u6162\u6163\u615F\u615A\u6158\u6175\u622A\u6487\u6458\u6454\u64A4\u6478\u645F\u647A\u6451\u6467\u6434\u646D\u647B\u6572\u65A1\u65D7\u65D6\u66A2\u66A8\u669D\u699C\u69A8\u6995\u69C1\u69AE\u69D3\u69CB\u699B\u69B7\u69BB\u69AB\u69B4\u69D0\u69CD\u69AD\u69CC\u69A6\u69C3\u69A3\u6B49\u6B4C\u6C33\u6F33\u6F14\u6EFE\u6F13\u6EF4\u6F29\u6F3E\u6F20\u6F2C\u6F0F\u6F02\u6F22"],["baa1","\u6EFF\u6EEF\u6F06\u6F31\u6F38\u6F32\u6F23\u6F15\u6F2B\u6F2F\u6F88\u6F2A\u6EEC\u6F01\u6EF2\u6ECC\u6EF7\u7194\u7199\u717D\u718A\u7184\u7192\u723E\u7292\u7296\u7344\u7350\u7464\u7463\u746A\u7470\u746D\u7504\u7591\u7627\u760D\u760B\u7609\u7613\u76E1\u76E3\u7784\u777D\u777F\u7761\u78C1\u789F\u78A7\u78B3\u78A9\u78A3\u798E\u798F\u798D\u7A2E\u7A31\u7AAA\u7AA9\u7AED\u7AEF\u7BA1\u7B95\u7B8B\u7B75\u7B97\u7B9D\u7B94\u7B8F\u7BB8\u7B87\u7B84\u7CB9\u7CBD\u7CBE\u7DBB\u7DB0\u7D9C\u7DBD\u7DBE\u7DA0\u7DCA\u7DB4\u7DB2\u7DB1\u7DBA\u7DA2\u7DBF\u7DB5\u7DB8\u7DAD\u7DD2\u7DC7\u7DAC"],["bb40","\u7F70\u7FE0\u7FE1\u7FDF\u805E\u805A\u8087\u8150\u8180\u818F\u8188\u818A\u817F\u8182\u81E7\u81FA\u8207\u8214\u821E\u824B\u84C9\u84BF\u84C6\u84C4\u8499\u849E\u84B2\u849C\u84CB\u84B8\u84C0\u84D3\u8490\u84BC\u84D1\u84CA\u873F\u871C\u873B\u8722\u8725\u8734\u8718\u8755\u8737\u8729\u88F3\u8902\u88F4\u88F9\u88F8\u88FD\u88E8\u891A\u88EF\u8AA6\u8A8C\u8A9E\u8AA3\u8A8D\u8AA1\u8A93\u8AA4"],["bba1","\u8AAA\u8AA5\u8AA8\u8A98\u8A91\u8A9A\u8AA7\u8C6A\u8C8D\u8C8C\u8CD3\u8CD1\u8CD2\u8D6B\u8D99\u8D95\u8DFC\u8F14\u8F12\u8F15\u8F13\u8FA3\u9060\u9058\u905C\u9063\u9059\u905E\u9062\u905D\u905B\u9119\u9118\u911E\u9175\u9178\u9177\u9174\u9278\u9280\u9285\u9298\u9296\u927B\u9293\u929C\u92A8\u927C\u9291\u95A1\u95A8\u95A9\u95A3\u95A5\u95A4\u9699\u969C\u969B\u96CC\u96D2\u9700\u977C\u9785\u97F6\u9817\u9818\u98AF\u98B1\u9903\u9905\u990C\u9909\u99C1\u9AAF\u9AB0\u9AE6\u9B41\u9B42\u9CF4\u9CF6\u9CF3\u9EBC\u9F3B\u9F4A\u5104\u5100\u50FB\u50F5\u50F9\u5102\u5108\u5109\u5105\u51DC"],["bc40","\u5287\u5288\u5289\u528D\u528A\u52F0\u53B2\u562E\u563B\u5639\u5632\u563F\u5634\u5629\u5653\u564E\u5657\u5674\u5636\u562F\u5630\u5880\u589F\u589E\u58B3\u589C\u58AE\u58A9\u58A6\u596D\u5B09\u5AFB\u5B0B\u5AF5\u5B0C\u5B08\u5BEE\u5BEC\u5BE9\u5BEB\u5C64\u5C65\u5D9D\u5D94\u5E62\u5E5F\u5E61\u5EE2\u5EDA\u5EDF\u5EDD\u5EE3\u5EE0\u5F48\u5F71\u5FB7\u5FB5\u6176\u6167\u616E\u615D\u6155\u6182"],["bca1","\u617C\u6170\u616B\u617E\u61A7\u6190\u61AB\u618E\u61AC\u619A\u61A4\u6194\u61AE\u622E\u6469\u646F\u6479\u649E\u64B2\u6488\u6490\u64B0\u64A5\u6493\u6495\u64A9\u6492\u64AE\u64AD\u64AB\u649A\u64AC\u6499\u64A2\u64B3\u6575\u6577\u6578\u66AE\u66AB\u66B4\u66B1\u6A23\u6A1F\u69E8\u6A01\u6A1E\u6A19\u69FD\u6A21\u6A13\u6A0A\u69F3\u6A02\u6A05\u69ED\u6A11\u6B50\u6B4E\u6BA4\u6BC5\u6BC6\u6F3F\u6F7C\u6F84\u6F51\u6F66\u6F54\u6F86\u6F6D\u6F5B\u6F78\u6F6E\u6F8E\u6F7A\u6F70\u6F64\u6F97\u6F58\u6ED5\u6F6F\u6F60\u6F5F\u719F\u71AC\u71B1\u71A8\u7256\u729B\u734E\u7357\u7469\u748B\u7483"],["bd40","\u747E\u7480\u757F\u7620\u7629\u761F\u7624\u7626\u7621\u7622\u769A\u76BA\u76E4\u778E\u7787\u778C\u7791\u778B\u78CB\u78C5\u78BA\u78CA\u78BE\u78D5\u78BC\u78D0\u7A3F\u7A3C\u7A40\u7A3D\u7A37\u7A3B\u7AAF\u7AAE\u7BAD\u7BB1\u7BC4\u7BB4\u7BC6\u7BC7\u7BC1\u7BA0\u7BCC\u7CCA\u7DE0\u7DF4\u7DEF\u7DFB\u7DD8\u7DEC\u7DDD\u7DE8\u7DE3\u7DDA\u7DDE\u7DE9\u7D9E\u7DD9\u7DF2\u7DF9\u7F75\u7F77\u7FAF"],["bda1","\u7FE9\u8026\u819B\u819C\u819D\u81A0\u819A\u8198\u8517\u853D\u851A\u84EE\u852C\u852D\u8513\u8511\u8523\u8521\u8514\u84EC\u8525\u84FF\u8506\u8782\u8774\u8776\u8760\u8766\u8778\u8768\u8759\u8757\u874C\u8753\u885B\u885D\u8910\u8907\u8912\u8913\u8915\u890A\u8ABC\u8AD2\u8AC7\u8AC4\u8A95\u8ACB\u8AF8\u8AB2\u8AC9\u8AC2\u8ABF\u8AB0\u8AD6\u8ACD\u8AB6\u8AB9\u8ADB\u8C4C\u8C4E\u8C6C\u8CE0\u8CDE\u8CE6\u8CE4\u8CEC\u8CED\u8CE2\u8CE3\u8CDC\u8CEA\u8CE1\u8D6D\u8D9F\u8DA3\u8E2B\u8E10\u8E1D\u8E22\u8E0F\u8E29\u8E1F\u8E21\u8E1E\u8EBA\u8F1D\u8F1B\u8F1F\u8F29\u8F26\u8F2A\u8F1C\u8F1E"],["be40","\u8F25\u9069\u906E\u9068\u906D\u9077\u9130\u912D\u9127\u9131\u9187\u9189\u918B\u9183\u92C5\u92BB\u92B7\u92EA\u92AC\u92E4\u92C1\u92B3\u92BC\u92D2\u92C7\u92F0\u92B2\u95AD\u95B1\u9704\u9706\u9707\u9709\u9760\u978D\u978B\u978F\u9821\u982B\u981C\u98B3\u990A\u9913\u9912\u9918\u99DD\u99D0\u99DF\u99DB\u99D1\u99D5\u99D2\u99D9\u9AB7\u9AEE\u9AEF\u9B27\u9B45\u9B44\u9B77\u9B6F\u9D06\u9D09"],["bea1","\u9D03\u9EA9\u9EBE\u9ECE\u58A8\u9F52\u5112\u5118\u5114\u5110\u5115\u5180\u51AA\u51DD\u5291\u5293\u52F3\u5659\u566B\u5679\u5669\u5664\u5678\u566A\u5668\u5665\u5671\u566F\u566C\u5662\u5676\u58C1\u58BE\u58C7\u58C5\u596E\u5B1D\u5B34\u5B78\u5BF0\u5C0E\u5F4A\u61B2\u6191\u61A9\u618A\u61CD\u61B6\u61BE\u61CA\u61C8\u6230\u64C5\u64C1\u64CB\u64BB\u64BC\u64DA\u64C4\u64C7\u64C2\u64CD\u64BF\u64D2\u64D4\u64BE\u6574\u66C6\u66C9\u66B9\u66C4\u66C7\u66B8\u6A3D\u6A38\u6A3A\u6A59\u6A6B\u6A58\u6A39\u6A44\u6A62\u6A61\u6A4B\u6A47\u6A35\u6A5F\u6A48\u6B59\u6B77\u6C05\u6FC2\u6FB1\u6FA1"],["bf40","\u6FC3\u6FA4\u6FC1\u6FA7\u6FB3\u6FC0\u6FB9\u6FB6\u6FA6\u6FA0\u6FB4\u71BE\u71C9\u71D0\u71D2\u71C8\u71D5\u71B9\u71CE\u71D9\u71DC\u71C3\u71C4\u7368\u749C\u74A3\u7498\u749F\u749E\u74E2\u750C\u750D\u7634\u7638\u763A\u76E7\u76E5\u77A0\u779E\u779F\u77A5\u78E8\u78DA\u78EC\u78E7\u79A6\u7A4D\u7A4E\u7A46\u7A4C\u7A4B\u7ABA\u7BD9\u7C11\u7BC9\u7BE4\u7BDB\u7BE1\u7BE9\u7BE6\u7CD5\u7CD6\u7E0A"],["bfa1","\u7E11\u7E08\u7E1B\u7E23\u7E1E\u7E1D\u7E09\u7E10\u7F79\u7FB2\u7FF0\u7FF1\u7FEE\u8028\u81B3\u81A9\u81A8\u81FB\u8208\u8258\u8259\u854A\u8559\u8548\u8568\u8569\u8543\u8549\u856D\u856A\u855E\u8783\u879F\u879E\u87A2\u878D\u8861\u892A\u8932\u8925\u892B\u8921\u89AA\u89A6\u8AE6\u8AFA\u8AEB\u8AF1\u8B00\u8ADC\u8AE7\u8AEE\u8AFE\u8B01\u8B02\u8AF7\u8AED\u8AF3\u8AF6\u8AFC\u8C6B\u8C6D\u8C93\u8CF4\u8E44\u8E31\u8E34\u8E42\u8E39\u8E35\u8F3B\u8F2F\u8F38\u8F33\u8FA8\u8FA6\u9075\u9074\u9078\u9072\u907C\u907A\u9134\u9192\u9320\u9336\u92F8\u9333\u932F\u9322\u92FC\u932B\u9304\u931A"],["c040","\u9310\u9326\u9321\u9315\u932E\u9319\u95BB\u96A7\u96A8\u96AA\u96D5\u970E\u9711\u9716\u970D\u9713\u970F\u975B\u975C\u9766\u9798\u9830\u9838\u983B\u9837\u982D\u9839\u9824\u9910\u9928\u991E\u991B\u9921\u991A\u99ED\u99E2\u99F1\u9AB8\u9ABC\u9AFB\u9AED\u9B28\u9B91\u9D15\u9D23\u9D26\u9D28\u9D12\u9D1B\u9ED8\u9ED4\u9F8D\u9F9C\u512A\u511F\u5121\u5132\u52F5\u568E\u5680\u5690\u5685\u5687"],["c0a1","\u568F\u58D5\u58D3\u58D1\u58CE\u5B30\u5B2A\u5B24\u5B7A\u5C37\u5C68\u5DBC\u5DBA\u5DBD\u5DB8\u5E6B\u5F4C\u5FBD\u61C9\u61C2\u61C7\u61E6\u61CB\u6232\u6234\u64CE\u64CA\u64D8\u64E0\u64F0\u64E6\u64EC\u64F1\u64E2\u64ED\u6582\u6583\u66D9\u66D6\u6A80\u6A94\u6A84\u6AA2\u6A9C\u6ADB\u6AA3\u6A7E\u6A97\u6A90\u6AA0\u6B5C\u6BAE\u6BDA\u6C08\u6FD8\u6FF1\u6FDF\u6FE0\u6FDB\u6FE4\u6FEB\u6FEF\u6F80\u6FEC\u6FE1\u6FE9\u6FD5\u6FEE\u6FF0\u71E7\u71DF\u71EE\u71E6\u71E5\u71ED\u71EC\u71F4\u71E0\u7235\u7246\u7370\u7372\u74A9\u74B0\u74A6\u74A8\u7646\u7642\u764C\u76EA\u77B3\u77AA\u77B0\u77AC"],["c140","\u77A7\u77AD\u77EF\u78F7\u78FA\u78F4\u78EF\u7901\u79A7\u79AA\u7A57\u7ABF\u7C07\u7C0D\u7BFE\u7BF7\u7C0C\u7BE0\u7CE0\u7CDC\u7CDE\u7CE2\u7CDF\u7CD9\u7CDD\u7E2E\u7E3E\u7E46\u7E37\u7E32\u7E43\u7E2B\u7E3D\u7E31\u7E45\u7E41\u7E34\u7E39\u7E48\u7E35\u7E3F\u7E2F\u7F44\u7FF3\u7FFC\u8071\u8072\u8070\u806F\u8073\u81C6\u81C3\u81BA\u81C2\u81C0\u81BF\u81BD\u81C9\u81BE\u81E8\u8209\u8271\u85AA"],["c1a1","\u8584\u857E\u859C\u8591\u8594\u85AF\u859B\u8587\u85A8\u858A\u8667\u87C0\u87D1\u87B3\u87D2\u87C6\u87AB\u87BB\u87BA\u87C8\u87CB\u893B\u8936\u8944\u8938\u893D\u89AC\u8B0E\u8B17\u8B19\u8B1B\u8B0A\u8B20\u8B1D\u8B04\u8B10\u8C41\u8C3F\u8C73\u8CFA\u8CFD\u8CFC\u8CF8\u8CFB\u8DA8\u8E49\u8E4B\u8E48\u8E4A\u8F44\u8F3E\u8F42\u8F45\u8F3F\u907F\u907D\u9084\u9081\u9082\u9080\u9139\u91A3\u919E\u919C\u934D\u9382\u9328\u9375\u934A\u9365\u934B\u9318\u937E\u936C\u935B\u9370\u935A\u9354\u95CA\u95CB\u95CC\u95C8\u95C6\u96B1\u96B8\u96D6\u971C\u971E\u97A0\u97D3\u9846\u98B6\u9935\u9A01"],["c240","\u99FF\u9BAE\u9BAB\u9BAA\u9BAD\u9D3B\u9D3F\u9E8B\u9ECF\u9EDE\u9EDC\u9EDD\u9EDB\u9F3E\u9F4B\u53E2\u5695\u56AE\u58D9\u58D8\u5B38\u5F5D\u61E3\u6233\u64F4\u64F2\u64FE\u6506\u64FA\u64FB\u64F7\u65B7\u66DC\u6726\u6AB3\u6AAC\u6AC3\u6ABB\u6AB8\u6AC2\u6AAE\u6AAF\u6B5F\u6B78\u6BAF\u7009\u700B\u6FFE\u7006\u6FFA\u7011\u700F\u71FB\u71FC\u71FE\u71F8\u7377\u7375\u74A7\u74BF\u7515\u7656\u7658"],["c2a1","\u7652\u77BD\u77BF\u77BB\u77BC\u790E\u79AE\u7A61\u7A62\u7A60\u7AC4\u7AC5\u7C2B\u7C27\u7C2A\u7C1E\u7C23\u7C21\u7CE7\u7E54\u7E55\u7E5E\u7E5A\u7E61\u7E52\u7E59\u7F48\u7FF9\u7FFB\u8077\u8076\u81CD\u81CF\u820A\u85CF\u85A9\u85CD\u85D0\u85C9\u85B0\u85BA\u85B9\u85A6\u87EF\u87EC\u87F2\u87E0\u8986\u89B2\u89F4\u8B28\u8B39\u8B2C\u8B2B\u8C50\u8D05\u8E59\u8E63\u8E66\u8E64\u8E5F\u8E55\u8EC0\u8F49\u8F4D\u9087\u9083\u9088\u91AB\u91AC\u91D0\u9394\u938A\u9396\u93A2\u93B3\u93AE\u93AC\u93B0\u9398\u939A\u9397\u95D4\u95D6\u95D0\u95D5\u96E2\u96DC\u96D9\u96DB\u96DE\u9724\u97A3\u97A6"],["c340","\u97AD\u97F9\u984D\u984F\u984C\u984E\u9853\u98BA\u993E\u993F\u993D\u992E\u99A5\u9A0E\u9AC1\u9B03\u9B06\u9B4F\u9B4E\u9B4D\u9BCA\u9BC9\u9BFD\u9BC8\u9BC0\u9D51\u9D5D\u9D60\u9EE0\u9F15\u9F2C\u5133\u56A5\u58DE\u58DF\u58E2\u5BF5\u9F90\u5EEC\u61F2\u61F7\u61F6\u61F5\u6500\u650F\u66E0\u66DD\u6AE5\u6ADD\u6ADA\u6AD3\u701B\u701F\u7028\u701A\u701D\u7015\u7018\u7206\u720D\u7258\u72A2\u7378"],["c3a1","\u737A\u74BD\u74CA\u74E3\u7587\u7586\u765F\u7661\u77C7\u7919\u79B1\u7A6B\u7A69\u7C3E\u7C3F\u7C38\u7C3D\u7C37\u7C40\u7E6B\u7E6D\u7E79\u7E69\u7E6A\u7F85\u7E73\u7FB6\u7FB9\u7FB8\u81D8\u85E9\u85DD\u85EA\u85D5\u85E4\u85E5\u85F7\u87FB\u8805\u880D\u87F9\u87FE\u8960\u895F\u8956\u895E\u8B41\u8B5C\u8B58\u8B49\u8B5A\u8B4E\u8B4F\u8B46\u8B59\u8D08\u8D0A\u8E7C\u8E72\u8E87\u8E76\u8E6C\u8E7A\u8E74\u8F54\u8F4E\u8FAD\u908A\u908B\u91B1\u91AE\u93E1\u93D1\u93DF\u93C3\u93C8\u93DC\u93DD\u93D6\u93E2\u93CD\u93D8\u93E4\u93D7\u93E8\u95DC\u96B4\u96E3\u972A\u9727\u9761\u97DC\u97FB\u985E"],["c440","\u9858\u985B\u98BC\u9945\u9949\u9A16\u9A19\u9B0D\u9BE8\u9BE7\u9BD6\u9BDB\u9D89\u9D61\u9D72\u9D6A\u9D6C\u9E92\u9E97\u9E93\u9EB4\u52F8\u56A8\u56B7\u56B6\u56B4\u56BC\u58E4\u5B40\u5B43\u5B7D\u5BF6\u5DC9\u61F8\u61FA\u6518\u6514\u6519\u66E6\u6727\u6AEC\u703E\u7030\u7032\u7210\u737B\u74CF\u7662\u7665\u7926\u792A\u792C\u792B\u7AC7\u7AF6\u7C4C\u7C43\u7C4D\u7CEF\u7CF0\u8FAE\u7E7D\u7E7C"],["c4a1","\u7E82\u7F4C\u8000\u81DA\u8266\u85FB\u85F9\u8611\u85FA\u8606\u860B\u8607\u860A\u8814\u8815\u8964\u89BA\u89F8\u8B70\u8B6C\u8B66\u8B6F\u8B5F\u8B6B\u8D0F\u8D0D\u8E89\u8E81\u8E85\u8E82\u91B4\u91CB\u9418\u9403\u93FD\u95E1\u9730\u98C4\u9952\u9951\u99A8\u9A2B\u9A30\u9A37\u9A35\u9C13\u9C0D\u9E79\u9EB5\u9EE8\u9F2F\u9F5F\u9F63\u9F61\u5137\u5138\u56C1\u56C0\u56C2\u5914\u5C6C\u5DCD\u61FC\u61FE\u651D\u651C\u6595\u66E9\u6AFB\u6B04\u6AFA\u6BB2\u704C\u721B\u72A7\u74D6\u74D4\u7669\u77D3\u7C50\u7E8F\u7E8C\u7FBC\u8617\u862D\u861A\u8823\u8822\u8821\u881F\u896A\u896C\u89BD\u8B74"],["c540","\u8B77\u8B7D\u8D13\u8E8A\u8E8D\u8E8B\u8F5F\u8FAF\u91BA\u942E\u9433\u9435\u943A\u9438\u9432\u942B\u95E2\u9738\u9739\u9732\u97FF\u9867\u9865\u9957\u9A45\u9A43\u9A40\u9A3E\u9ACF\u9B54\u9B51\u9C2D\u9C25\u9DAF\u9DB4\u9DC2\u9DB8\u9E9D\u9EEF\u9F19\u9F5C\u9F66\u9F67\u513C\u513B\u56C8\u56CA\u56C9\u5B7F\u5DD4\u5DD2\u5F4E\u61FF\u6524\u6B0A\u6B61\u7051\u7058\u7380\u74E4\u758A\u766E\u766C"],["c5a1","\u79B3\u7C60\u7C5F\u807E\u807D\u81DF\u8972\u896F\u89FC\u8B80\u8D16\u8D17\u8E91\u8E93\u8F61\u9148\u9444\u9451\u9452\u973D\u973E\u97C3\u97C1\u986B\u9955\u9A55\u9A4D\u9AD2\u9B1A\u9C49\u9C31\u9C3E\u9C3B\u9DD3\u9DD7\u9F34\u9F6C\u9F6A\u9F94\u56CC\u5DD6\u6200\u6523\u652B\u652A\u66EC\u6B10\u74DA\u7ACA\u7C64\u7C63\u7C65\u7E93\u7E96\u7E94\u81E2\u8638\u863F\u8831\u8B8A\u9090\u908F\u9463\u9460\u9464\u9768\u986F\u995C\u9A5A\u9A5B\u9A57\u9AD3\u9AD4\u9AD1\u9C54\u9C57\u9C56\u9DE5\u9E9F\u9EF4\u56D1\u58E9\u652C\u705E\u7671\u7672\u77D7\u7F50\u7F88\u8836\u8839\u8862\u8B93\u8B92"],["c640","\u8B96\u8277\u8D1B\u91C0\u946A\u9742\u9748\u9744\u97C6\u9870\u9A5F\u9B22\u9B58\u9C5F\u9DF9\u9DFA\u9E7C\u9E7D\u9F07\u9F77\u9F72\u5EF3\u6B16\u7063\u7C6C\u7C6E\u883B\u89C0\u8EA1\u91C1\u9472\u9470\u9871\u995E\u9AD6\u9B23\u9ECC\u7064\u77DA\u8B9A\u9477\u97C9\u9A62\u9A65\u7E9C\u8B9C\u8EAA\u91C5\u947D\u947E\u947C\u9C77\u9C78\u9EF7\u8C54\u947F\u9E1A\u7228\u9A6A\u9B31\u9E1B\u9E1E\u7C72"],["c940","\u4E42\u4E5C\u51F5\u531A\u5382\u4E07\u4E0C\u4E47\u4E8D\u56D7\uFA0C\u5C6E\u5F73\u4E0F\u5187\u4E0E\u4E2E\u4E93\u4EC2\u4EC9\u4EC8\u5198\u52FC\u536C\u53B9\u5720\u5903\u592C\u5C10\u5DFF\u65E1\u6BB3\u6BCC\u6C14\u723F\u4E31\u4E3C\u4EE8\u4EDC\u4EE9\u4EE1\u4EDD\u4EDA\u520C\u531C\u534C\u5722\u5723\u5917\u592F\u5B81\u5B84\u5C12\u5C3B\u5C74\u5C73\u5E04\u5E80\u5E82\u5FC9\u6209\u6250\u6C15"],["c9a1","\u6C36\u6C43\u6C3F\u6C3B\u72AE\u72B0\u738A\u79B8\u808A\u961E\u4F0E\u4F18\u4F2C\u4EF5\u4F14\u4EF1\u4F00\u4EF7\u4F08\u4F1D\u4F02\u4F05\u4F22\u4F13\u4F04\u4EF4\u4F12\u51B1\u5213\u5209\u5210\u52A6\u5322\u531F\u534D\u538A\u5407\u56E1\u56DF\u572E\u572A\u5734\u593C\u5980\u597C\u5985\u597B\u597E\u5977\u597F\u5B56\u5C15\u5C25\u5C7C\u5C7A\u5C7B\u5C7E\u5DDF\u5E75\u5E84\u5F02\u5F1A\u5F74\u5FD5\u5FD4\u5FCF\u625C\u625E\u6264\u6261\u6266\u6262\u6259\u6260\u625A\u6265\u65EF\u65EE\u673E\u6739\u6738\u673B\u673A\u673F\u673C\u6733\u6C18\u6C46\u6C52\u6C5C\u6C4F\u6C4A\u6C54\u6C4B"],["ca40","\u6C4C\u7071\u725E\u72B4\u72B5\u738E\u752A\u767F\u7A75\u7F51\u8278\u827C\u8280\u827D\u827F\u864D\u897E\u9099\u9097\u9098\u909B\u9094\u9622\u9624\u9620\u9623\u4F56\u4F3B\u4F62\u4F49\u4F53\u4F64\u4F3E\u4F67\u4F52\u4F5F\u4F41\u4F58\u4F2D\u4F33\u4F3F\u4F61\u518F\u51B9\u521C\u521E\u5221\u52AD\u52AE\u5309\u5363\u5372\u538E\u538F\u5430\u5437\u542A\u5454\u5445\u5419\u541C\u5425\u5418"],["caa1","\u543D\u544F\u5441\u5428\u5424\u5447\u56EE\u56E7\u56E5\u5741\u5745\u574C\u5749\u574B\u5752\u5906\u5940\u59A6\u5998\u59A0\u5997\u598E\u59A2\u5990\u598F\u59A7\u59A1\u5B8E\u5B92\u5C28\u5C2A\u5C8D\u5C8F\u5C88\u5C8B\u5C89\u5C92\u5C8A\u5C86\u5C93\u5C95\u5DE0\u5E0A\u5E0E\u5E8B\u5E89\u5E8C\u5E88\u5E8D\u5F05\u5F1D\u5F78\u5F76\u5FD2\u5FD1\u5FD0\u5FED\u5FE8\u5FEE\u5FF3\u5FE1\u5FE4\u5FE3\u5FFA\u5FEF\u5FF7\u5FFB\u6000\u5FF4\u623A\u6283\u628C\u628E\u628F\u6294\u6287\u6271\u627B\u627A\u6270\u6281\u6288\u6277\u627D\u6272\u6274\u6537\u65F0\u65F4\u65F3\u65F2\u65F5\u6745\u6747"],["cb40","\u6759\u6755\u674C\u6748\u675D\u674D\u675A\u674B\u6BD0\u6C19\u6C1A\u6C78\u6C67\u6C6B\u6C84\u6C8B\u6C8F\u6C71\u6C6F\u6C69\u6C9A\u6C6D\u6C87\u6C95\u6C9C\u6C66\u6C73\u6C65\u6C7B\u6C8E\u7074\u707A\u7263\u72BF\u72BD\u72C3\u72C6\u72C1\u72BA\u72C5\u7395\u7397\u7393\u7394\u7392\u753A\u7539\u7594\u7595\u7681\u793D\u8034\u8095\u8099\u8090\u8092\u809C\u8290\u828F\u8285\u828E\u8291\u8293"],["cba1","\u828A\u8283\u8284\u8C78\u8FC9\u8FBF\u909F\u90A1\u90A5\u909E\u90A7\u90A0\u9630\u9628\u962F\u962D\u4E33\u4F98\u4F7C\u4F85\u4F7D\u4F80\u4F87\u4F76\u4F74\u4F89\u4F84\u4F77\u4F4C\u4F97\u4F6A\u4F9A\u4F79\u4F81\u4F78\u4F90\u4F9C\u4F94\u4F9E\u4F92\u4F82\u4F95\u4F6B\u4F6E\u519E\u51BC\u51BE\u5235\u5232\u5233\u5246\u5231\u52BC\u530A\u530B\u533C\u5392\u5394\u5487\u547F\u5481\u5491\u5482\u5488\u546B\u547A\u547E\u5465\u546C\u5474\u5466\u548D\u546F\u5461\u5460\u5498\u5463\u5467\u5464\u56F7\u56F9\u576F\u5772\u576D\u576B\u5771\u5770\u5776\u5780\u5775\u577B\u5773\u5774\u5762"],["cc40","\u5768\u577D\u590C\u5945\u59B5\u59BA\u59CF\u59CE\u59B2\u59CC\u59C1\u59B6\u59BC\u59C3\u59D6\u59B1\u59BD\u59C0\u59C8\u59B4\u59C7\u5B62\u5B65\u5B93\u5B95\u5C44\u5C47\u5CAE\u5CA4\u5CA0\u5CB5\u5CAF\u5CA8\u5CAC\u5C9F\u5CA3\u5CAD\u5CA2\u5CAA\u5CA7\u5C9D\u5CA5\u5CB6\u5CB0\u5CA6\u5E17\u5E14\u5E19\u5F28\u5F22\u5F23\u5F24\u5F54\u5F82\u5F7E\u5F7D\u5FDE\u5FE5\u602D\u6026\u6019\u6032\u600B"],["cca1","\u6034\u600A\u6017\u6033\u601A\u601E\u602C\u6022\u600D\u6010\u602E\u6013\u6011\u600C\u6009\u601C\u6214\u623D\u62AD\u62B4\u62D1\u62BE\u62AA\u62B6\u62CA\u62AE\u62B3\u62AF\u62BB\u62A9\u62B0\u62B8\u653D\u65A8\u65BB\u6609\u65FC\u6604\u6612\u6608\u65FB\u6603\u660B\u660D\u6605\u65FD\u6611\u6610\u66F6\u670A\u6785\u676C\u678E\u6792\u6776\u677B\u6798\u6786\u6784\u6774\u678D\u678C\u677A\u679F\u6791\u6799\u6783\u677D\u6781\u6778\u6779\u6794\u6B25\u6B80\u6B7E\u6BDE\u6C1D\u6C93\u6CEC\u6CEB\u6CEE\u6CD9\u6CB6\u6CD4\u6CAD\u6CE7\u6CB7\u6CD0\u6CC2\u6CBA\u6CC3\u6CC6\u6CED\u6CF2"],["cd40","\u6CD2\u6CDD\u6CB4\u6C8A\u6C9D\u6C80\u6CDE\u6CC0\u6D30\u6CCD\u6CC7\u6CB0\u6CF9\u6CCF\u6CE9\u6CD1\u7094\u7098\u7085\u7093\u7086\u7084\u7091\u7096\u7082\u709A\u7083\u726A\u72D6\u72CB\u72D8\u72C9\u72DC\u72D2\u72D4\u72DA\u72CC\u72D1\u73A4\u73A1\u73AD\u73A6\u73A2\u73A0\u73AC\u739D\u74DD\u74E8\u753F\u7540\u753E\u758C\u7598\u76AF\u76F3\u76F1\u76F0\u76F5\u77F8\u77FC\u77F9\u77FB\u77FA"],["cda1","\u77F7\u7942\u793F\u79C5\u7A78\u7A7B\u7AFB\u7C75\u7CFD\u8035\u808F\u80AE\u80A3\u80B8\u80B5\u80AD\u8220\u82A0\u82C0\u82AB\u829A\u8298\u829B\u82B5\u82A7\u82AE\u82BC\u829E\u82BA\u82B4\u82A8\u82A1\u82A9\u82C2\u82A4\u82C3\u82B6\u82A2\u8670\u866F\u866D\u866E\u8C56\u8FD2\u8FCB\u8FD3\u8FCD\u8FD6\u8FD5\u8FD7\u90B2\u90B4\u90AF\u90B3\u90B0\u9639\u963D\u963C\u963A\u9643\u4FCD\u4FC5\u4FD3\u4FB2\u4FC9\u4FCB\u4FC1\u4FD4\u4FDC\u4FD9\u4FBB\u4FB3\u4FDB\u4FC7\u4FD6\u4FBA\u4FC0\u4FB9\u4FEC\u5244\u5249\u52C0\u52C2\u533D\u537C\u5397\u5396\u5399\u5398\u54BA\u54A1\u54AD\u54A5\u54CF"],["ce40","\u54C3\u830D\u54B7\u54AE\u54D6\u54B6\u54C5\u54C6\u54A0\u5470\u54BC\u54A2\u54BE\u5472\u54DE\u54B0\u57B5\u579E\u579F\u57A4\u578C\u5797\u579D\u579B\u5794\u5798\u578F\u5799\u57A5\u579A\u5795\u58F4\u590D\u5953\u59E1\u59DE\u59EE\u5A00\u59F1\u59DD\u59FA\u59FD\u59FC\u59F6\u59E4\u59F2\u59F7\u59DB\u59E9\u59F3\u59F5\u59E0\u59FE\u59F4\u59ED\u5BA8\u5C4C\u5CD0\u5CD8\u5CCC\u5CD7\u5CCB\u5CDB"],["cea1","\u5CDE\u5CDA\u5CC9\u5CC7\u5CCA\u5CD6\u5CD3\u5CD4\u5CCF\u5CC8\u5CC6\u5CCE\u5CDF\u5CF8\u5DF9\u5E21\u5E22\u5E23\u5E20\u5E24\u5EB0\u5EA4\u5EA2\u5E9B\u5EA3\u5EA5\u5F07\u5F2E\u5F56\u5F86\u6037\u6039\u6054\u6072\u605E\u6045\u6053\u6047\u6049\u605B\u604C\u6040\u6042\u605F\u6024\u6044\u6058\u6066\u606E\u6242\u6243\u62CF\u630D\u630B\u62F5\u630E\u6303\u62EB\u62F9\u630F\u630C\u62F8\u62F6\u6300\u6313\u6314\u62FA\u6315\u62FB\u62F0\u6541\u6543\u65AA\u65BF\u6636\u6621\u6632\u6635\u661C\u6626\u6622\u6633\u662B\u663A\u661D\u6634\u6639\u662E\u670F\u6710\u67C1\u67F2\u67C8\u67BA"],["cf40","\u67DC\u67BB\u67F8\u67D8\u67C0\u67B7\u67C5\u67EB\u67E4\u67DF\u67B5\u67CD\u67B3\u67F7\u67F6\u67EE\u67E3\u67C2\u67B9\u67CE\u67E7\u67F0\u67B2\u67FC\u67C6\u67ED\u67CC\u67AE\u67E6\u67DB\u67FA\u67C9\u67CA\u67C3\u67EA\u67CB\u6B28\u6B82\u6B84\u6BB6\u6BD6\u6BD8\u6BE0\u6C20\u6C21\u6D28\u6D34\u6D2D\u6D1F\u6D3C\u6D3F\u6D12\u6D0A\u6CDA\u6D33\u6D04\u6D19\u6D3A\u6D1A\u6D11\u6D00\u6D1D\u6D42"],["cfa1","\u6D01\u6D18\u6D37\u6D03\u6D0F\u6D40\u6D07\u6D20\u6D2C\u6D08\u6D22\u6D09\u6D10\u70B7\u709F\u70BE\u70B1\u70B0\u70A1\u70B4\u70B5\u70A9\u7241\u7249\u724A\u726C\u7270\u7273\u726E\u72CA\u72E4\u72E8\u72EB\u72DF\u72EA\u72E6\u72E3\u7385\u73CC\u73C2\u73C8\u73C5\u73B9\u73B6\u73B5\u73B4\u73EB\u73BF\u73C7\u73BE\u73C3\u73C6\u73B8\u73CB\u74EC\u74EE\u752E\u7547\u7548\u75A7\u75AA\u7679\u76C4\u7708\u7703\u7704\u7705\u770A\u76F7\u76FB\u76FA\u77E7\u77E8\u7806\u7811\u7812\u7805\u7810\u780F\u780E\u7809\u7803\u7813\u794A\u794C\u794B\u7945\u7944\u79D5\u79CD\u79CF\u79D6\u79CE\u7A80"],["d040","\u7A7E\u7AD1\u7B00\u7B01\u7C7A\u7C78\u7C79\u7C7F\u7C80\u7C81\u7D03\u7D08\u7D01\u7F58\u7F91\u7F8D\u7FBE\u8007\u800E\u800F\u8014\u8037\u80D8\u80C7\u80E0\u80D1\u80C8\u80C2\u80D0\u80C5\u80E3\u80D9\u80DC\u80CA\u80D5\u80C9\u80CF\u80D7\u80E6\u80CD\u81FF\u8221\u8294\u82D9\u82FE\u82F9\u8307\u82E8\u8300\u82D5\u833A\u82EB\u82D6\u82F4\u82EC\u82E1\u82F2\u82F5\u830C\u82FB\u82F6\u82F0\u82EA"],["d0a1","\u82E4\u82E0\u82FA\u82F3\u82ED\u8677\u8674\u867C\u8673\u8841\u884E\u8867\u886A\u8869\u89D3\u8A04\u8A07\u8D72\u8FE3\u8FE1\u8FEE\u8FE0\u90F1\u90BD\u90BF\u90D5\u90C5\u90BE\u90C7\u90CB\u90C8\u91D4\u91D3\u9654\u964F\u9651\u9653\u964A\u964E\u501E\u5005\u5007\u5013\u5022\u5030\u501B\u4FF5\u4FF4\u5033\u5037\u502C\u4FF6\u4FF7\u5017\u501C\u5020\u5027\u5035\u502F\u5031\u500E\u515A\u5194\u5193\u51CA\u51C4\u51C5\u51C8\u51CE\u5261\u525A\u5252\u525E\u525F\u5255\u5262\u52CD\u530E\u539E\u5526\u54E2\u5517\u5512\u54E7\u54F3\u54E4\u551A\u54FF\u5504\u5508\u54EB\u5511\u5505\u54F1"],["d140","\u550A\u54FB\u54F7\u54F8\u54E0\u550E\u5503\u550B\u5701\u5702\u57CC\u5832\u57D5\u57D2\u57BA\u57C6\u57BD\u57BC\u57B8\u57B6\u57BF\u57C7\u57D0\u57B9\u57C1\u590E\u594A\u5A19\u5A16\u5A2D\u5A2E\u5A15\u5A0F\u5A17\u5A0A\u5A1E\u5A33\u5B6C\u5BA7\u5BAD\u5BAC\u5C03\u5C56\u5C54\u5CEC\u5CFF\u5CEE\u5CF1\u5CF7\u5D00\u5CF9\u5E29\u5E28\u5EA8\u5EAE\u5EAA\u5EAC\u5F33\u5F30\u5F67\u605D\u605A\u6067"],["d1a1","\u6041\u60A2\u6088\u6080\u6092\u6081\u609D\u6083\u6095\u609B\u6097\u6087\u609C\u608E\u6219\u6246\u62F2\u6310\u6356\u632C\u6344\u6345\u6336\u6343\u63E4\u6339\u634B\u634A\u633C\u6329\u6341\u6334\u6358\u6354\u6359\u632D\u6347\u6333\u635A\u6351\u6338\u6357\u6340\u6348\u654A\u6546\u65C6\u65C3\u65C4\u65C2\u664A\u665F\u6647\u6651\u6712\u6713\u681F\u681A\u6849\u6832\u6833\u683B\u684B\u684F\u6816\u6831\u681C\u6835\u682B\u682D\u682F\u684E\u6844\u6834\u681D\u6812\u6814\u6826\u6828\u682E\u684D\u683A\u6825\u6820\u6B2C\u6B2F\u6B2D\u6B31\u6B34\u6B6D\u8082\u6B88\u6BE6\u6BE4"],["d240","\u6BE8\u6BE3\u6BE2\u6BE7\u6C25\u6D7A\u6D63\u6D64\u6D76\u6D0D\u6D61\u6D92\u6D58\u6D62\u6D6D\u6D6F\u6D91\u6D8D\u6DEF\u6D7F\u6D86\u6D5E\u6D67\u6D60\u6D97\u6D70\u6D7C\u6D5F\u6D82\u6D98\u6D2F\u6D68\u6D8B\u6D7E\u6D80\u6D84\u6D16\u6D83\u6D7B\u6D7D\u6D75\u6D90\u70DC\u70D3\u70D1\u70DD\u70CB\u7F39\u70E2\u70D7\u70D2\u70DE\u70E0\u70D4\u70CD\u70C5\u70C6\u70C7\u70DA\u70CE\u70E1\u7242\u7278"],["d2a1","\u7277\u7276\u7300\u72FA\u72F4\u72FE\u72F6\u72F3\u72FB\u7301\u73D3\u73D9\u73E5\u73D6\u73BC\u73E7\u73E3\u73E9\u73DC\u73D2\u73DB\u73D4\u73DD\u73DA\u73D7\u73D8\u73E8\u74DE\u74DF\u74F4\u74F5\u7521\u755B\u755F\u75B0\u75C1\u75BB\u75C4\u75C0\u75BF\u75B6\u75BA\u768A\u76C9\u771D\u771B\u7710\u7713\u7712\u7723\u7711\u7715\u7719\u771A\u7722\u7727\u7823\u782C\u7822\u7835\u782F\u7828\u782E\u782B\u7821\u7829\u7833\u782A\u7831\u7954\u795B\u794F\u795C\u7953\u7952\u7951\u79EB\u79EC\u79E0\u79EE\u79ED\u79EA\u79DC\u79DE\u79DD\u7A86\u7A89\u7A85\u7A8B\u7A8C\u7A8A\u7A87\u7AD8\u7B10"],["d340","\u7B04\u7B13\u7B05\u7B0F\u7B08\u7B0A\u7B0E\u7B09\u7B12\u7C84\u7C91\u7C8A\u7C8C\u7C88\u7C8D\u7C85\u7D1E\u7D1D\u7D11\u7D0E\u7D18\u7D16\u7D13\u7D1F\u7D12\u7D0F\u7D0C\u7F5C\u7F61\u7F5E\u7F60\u7F5D\u7F5B\u7F96\u7F92\u7FC3\u7FC2\u7FC0\u8016\u803E\u8039\u80FA\u80F2\u80F9\u80F5\u8101\u80FB\u8100\u8201\u822F\u8225\u8333\u832D\u8344\u8319\u8351\u8325\u8356\u833F\u8341\u8326\u831C\u8322"],["d3a1","\u8342\u834E\u831B\u832A\u8308\u833C\u834D\u8316\u8324\u8320\u8337\u832F\u8329\u8347\u8345\u834C\u8353\u831E\u832C\u834B\u8327\u8348\u8653\u8652\u86A2\u86A8\u8696\u868D\u8691\u869E\u8687\u8697\u8686\u868B\u869A\u8685\u86A5\u8699\u86A1\u86A7\u8695\u8698\u868E\u869D\u8690\u8694\u8843\u8844\u886D\u8875\u8876\u8872\u8880\u8871\u887F\u886F\u8883\u887E\u8874\u887C\u8A12\u8C47\u8C57\u8C7B\u8CA4\u8CA3\u8D76\u8D78\u8DB5\u8DB7\u8DB6\u8ED1\u8ED3\u8FFE\u8FF5\u9002\u8FFF\u8FFB\u9004\u8FFC\u8FF6\u90D6\u90E0\u90D9\u90DA\u90E3\u90DF\u90E5\u90D8\u90DB\u90D7\u90DC\u90E4\u9150"],["d440","\u914E\u914F\u91D5\u91E2\u91DA\u965C\u965F\u96BC\u98E3\u9ADF\u9B2F\u4E7F\u5070\u506A\u5061\u505E\u5060\u5053\u504B\u505D\u5072\u5048\u504D\u5041\u505B\u504A\u5062\u5015\u5045\u505F\u5069\u506B\u5063\u5064\u5046\u5040\u506E\u5073\u5057\u5051\u51D0\u526B\u526D\u526C\u526E\u52D6\u52D3\u532D\u539C\u5575\u5576\u553C\u554D\u5550\u5534\u552A\u5551\u5562\u5536\u5535\u5530\u5552\u5545"],["d4a1","\u550C\u5532\u5565\u554E\u5539\u5548\u552D\u553B\u5540\u554B\u570A\u5707\u57FB\u5814\u57E2\u57F6\u57DC\u57F4\u5800\u57ED\u57FD\u5808\u57F8\u580B\u57F3\u57CF\u5807\u57EE\u57E3\u57F2\u57E5\u57EC\u57E1\u580E\u57FC\u5810\u57E7\u5801\u580C\u57F1\u57E9\u57F0\u580D\u5804\u595C\u5A60\u5A58\u5A55\u5A67\u5A5E\u5A38\u5A35\u5A6D\u5A50\u5A5F\u5A65\u5A6C\u5A53\u5A64\u5A57\u5A43\u5A5D\u5A52\u5A44\u5A5B\u5A48\u5A8E\u5A3E\u5A4D\u5A39\u5A4C\u5A70\u5A69\u5A47\u5A51\u5A56\u5A42\u5A5C\u5B72\u5B6E\u5BC1\u5BC0\u5C59\u5D1E\u5D0B\u5D1D\u5D1A\u5D20\u5D0C\u5D28\u5D0D\u5D26\u5D25\u5D0F"],["d540","\u5D30\u5D12\u5D23\u5D1F\u5D2E\u5E3E\u5E34\u5EB1\u5EB4\u5EB9\u5EB2\u5EB3\u5F36\u5F38\u5F9B\u5F96\u5F9F\u608A\u6090\u6086\u60BE\u60B0\u60BA\u60D3\u60D4\u60CF\u60E4\u60D9\u60DD\u60C8\u60B1\u60DB\u60B7\u60CA\u60BF\u60C3\u60CD\u60C0\u6332\u6365\u638A\u6382\u637D\u63BD\u639E\u63AD\u639D\u6397\u63AB\u638E\u636F\u6387\u6390\u636E\u63AF\u6375\u639C\u636D\u63AE\u637C\u63A4\u633B\u639F"],["d5a1","\u6378\u6385\u6381\u6391\u638D\u6370\u6553\u65CD\u6665\u6661\u665B\u6659\u665C\u6662\u6718\u6879\u6887\u6890\u689C\u686D\u686E\u68AE\u68AB\u6956\u686F\u68A3\u68AC\u68A9\u6875\u6874\u68B2\u688F\u6877\u6892\u687C\u686B\u6872\u68AA\u6880\u6871\u687E\u689B\u6896\u688B\u68A0\u6889\u68A4\u6878\u687B\u6891\u688C\u688A\u687D\u6B36\u6B33\u6B37\u6B38\u6B91\u6B8F\u6B8D\u6B8E\u6B8C\u6C2A\u6DC0\u6DAB\u6DB4\u6DB3\u6E74\u6DAC\u6DE9\u6DE2\u6DB7\u6DF6\u6DD4\u6E00\u6DC8\u6DE0\u6DDF\u6DD6\u6DBE\u6DE5\u6DDC\u6DDD\u6DDB\u6DF4\u6DCA\u6DBD\u6DED\u6DF0\u6DBA\u6DD5\u6DC2\u6DCF\u6DC9"],["d640","\u6DD0\u6DF2\u6DD3\u6DFD\u6DD7\u6DCD\u6DE3\u6DBB\u70FA\u710D\u70F7\u7117\u70F4\u710C\u70F0\u7104\u70F3\u7110\u70FC\u70FF\u7106\u7113\u7100\u70F8\u70F6\u710B\u7102\u710E\u727E\u727B\u727C\u727F\u731D\u7317\u7307\u7311\u7318\u730A\u7308\u72FF\u730F\u731E\u7388\u73F6\u73F8\u73F5\u7404\u7401\u73FD\u7407\u7400\u73FA\u73FC\u73FF\u740C\u740B\u73F4\u7408\u7564\u7563\u75CE\u75D2\u75CF"],["d6a1","\u75CB\u75CC\u75D1\u75D0\u768F\u7689\u76D3\u7739\u772F\u772D\u7731\u7732\u7734\u7733\u773D\u7725\u773B\u7735\u7848\u7852\u7849\u784D\u784A\u784C\u7826\u7845\u7850\u7964\u7967\u7969\u796A\u7963\u796B\u7961\u79BB\u79FA\u79F8\u79F6\u79F7\u7A8F\u7A94\u7A90\u7B35\u7B47\u7B34\u7B25\u7B30\u7B22\u7B24\u7B33\u7B18\u7B2A\u7B1D\u7B31\u7B2B\u7B2D\u7B2F\u7B32\u7B38\u7B1A\u7B23\u7C94\u7C98\u7C96\u7CA3\u7D35\u7D3D\u7D38\u7D36\u7D3A\u7D45\u7D2C\u7D29\u7D41\u7D47\u7D3E\u7D3F\u7D4A\u7D3B\u7D28\u7F63\u7F95\u7F9C\u7F9D\u7F9B\u7FCA\u7FCB\u7FCD\u7FD0\u7FD1\u7FC7\u7FCF\u7FC9\u801F"],["d740","\u801E\u801B\u8047\u8043\u8048\u8118\u8125\u8119\u811B\u812D\u811F\u812C\u811E\u8121\u8115\u8127\u811D\u8122\u8211\u8238\u8233\u823A\u8234\u8232\u8274\u8390\u83A3\u83A8\u838D\u837A\u8373\u83A4\u8374\u838F\u8381\u8395\u8399\u8375\u8394\u83A9\u837D\u8383\u838C\u839D\u839B\u83AA\u838B\u837E\u83A5\u83AF\u8388\u8397\u83B0\u837F\u83A6\u8387\u83AE\u8376\u839A\u8659\u8656\u86BF\u86B7"],["d7a1","\u86C2\u86C1\u86C5\u86BA\u86B0\u86C8\u86B9\u86B3\u86B8\u86CC\u86B4\u86BB\u86BC\u86C3\u86BD\u86BE\u8852\u8889\u8895\u88A8\u88A2\u88AA\u889A\u8891\u88A1\u889F\u8898\u88A7\u8899\u889B\u8897\u88A4\u88AC\u888C\u8893\u888E\u8982\u89D6\u89D9\u89D5\u8A30\u8A27\u8A2C\u8A1E\u8C39\u8C3B\u8C5C\u8C5D\u8C7D\u8CA5\u8D7D\u8D7B\u8D79\u8DBC\u8DC2\u8DB9\u8DBF\u8DC1\u8ED8\u8EDE\u8EDD\u8EDC\u8ED7\u8EE0\u8EE1\u9024\u900B\u9011\u901C\u900C\u9021\u90EF\u90EA\u90F0\u90F4\u90F2\u90F3\u90D4\u90EB\u90EC\u90E9\u9156\u9158\u915A\u9153\u9155\u91EC\u91F4\u91F1\u91F3\u91F8\u91E4\u91F9\u91EA"],["d840","\u91EB\u91F7\u91E8\u91EE\u957A\u9586\u9588\u967C\u966D\u966B\u9671\u966F\u96BF\u976A\u9804\u98E5\u9997\u509B\u5095\u5094\u509E\u508B\u50A3\u5083\u508C\u508E\u509D\u5068\u509C\u5092\u5082\u5087\u515F\u51D4\u5312\u5311\u53A4\u53A7\u5591\u55A8\u55A5\u55AD\u5577\u5645\u55A2\u5593\u5588\u558F\u55B5\u5581\u55A3\u5592\u55A4\u557D\u558C\u55A6\u557F\u5595\u55A1\u558E\u570C\u5829\u5837"],["d8a1","\u5819\u581E\u5827\u5823\u5828\u57F5\u5848\u5825\u581C\u581B\u5833\u583F\u5836\u582E\u5839\u5838\u582D\u582C\u583B\u5961\u5AAF\u5A94\u5A9F\u5A7A\u5AA2\u5A9E\u5A78\u5AA6\u5A7C\u5AA5\u5AAC\u5A95\u5AAE\u5A37\u5A84\u5A8A\u5A97\u5A83\u5A8B\u5AA9\u5A7B\u5A7D\u5A8C\u5A9C\u5A8F\u5A93\u5A9D\u5BEA\u5BCD\u5BCB\u5BD4\u5BD1\u5BCA\u5BCE\u5C0C\u5C30\u5D37\u5D43\u5D6B\u5D41\u5D4B\u5D3F\u5D35\u5D51\u5D4E\u5D55\u5D33\u5D3A\u5D52\u5D3D\u5D31\u5D59\u5D42\u5D39\u5D49\u5D38\u5D3C\u5D32\u5D36\u5D40\u5D45\u5E44\u5E41\u5F58\u5FA6\u5FA5\u5FAB\u60C9\u60B9\u60CC\u60E2\u60CE\u60C4\u6114"],["d940","\u60F2\u610A\u6116\u6105\u60F5\u6113\u60F8\u60FC\u60FE\u60C1\u6103\u6118\u611D\u6110\u60FF\u6104\u610B\u624A\u6394\u63B1\u63B0\u63CE\u63E5\u63E8\u63EF\u63C3\u649D\u63F3\u63CA\u63E0\u63F6\u63D5\u63F2\u63F5\u6461\u63DF\u63BE\u63DD\u63DC\u63C4\u63D8\u63D3\u63C2\u63C7\u63CC\u63CB\u63C8\u63F0\u63D7\u63D9\u6532\u6567\u656A\u6564\u655C\u6568\u6565\u658C\u659D\u659E\u65AE\u65D0\u65D2"],["d9a1","\u667C\u666C\u667B\u6680\u6671\u6679\u666A\u6672\u6701\u690C\u68D3\u6904\u68DC\u692A\u68EC\u68EA\u68F1\u690F\u68D6\u68F7\u68EB\u68E4\u68F6\u6913\u6910\u68F3\u68E1\u6907\u68CC\u6908\u6970\u68B4\u6911\u68EF\u68C6\u6914\u68F8\u68D0\u68FD\u68FC\u68E8\u690B\u690A\u6917\u68CE\u68C8\u68DD\u68DE\u68E6\u68F4\u68D1\u6906\u68D4\u68E9\u6915\u6925\u68C7\u6B39\u6B3B\u6B3F\u6B3C\u6B94\u6B97\u6B99\u6B95\u6BBD\u6BF0\u6BF2\u6BF3\u6C30\u6DFC\u6E46\u6E47\u6E1F\u6E49\u6E88\u6E3C\u6E3D\u6E45\u6E62\u6E2B\u6E3F\u6E41\u6E5D\u6E73\u6E1C\u6E33\u6E4B\u6E40\u6E51\u6E3B\u6E03\u6E2E\u6E5E"],["da40","\u6E68\u6E5C\u6E61\u6E31\u6E28\u6E60\u6E71\u6E6B\u6E39\u6E22\u6E30\u6E53\u6E65\u6E27\u6E78\u6E64\u6E77\u6E55\u6E79\u6E52\u6E66\u6E35\u6E36\u6E5A\u7120\u711E\u712F\u70FB\u712E\u7131\u7123\u7125\u7122\u7132\u711F\u7128\u713A\u711B\u724B\u725A\u7288\u7289\u7286\u7285\u728B\u7312\u730B\u7330\u7322\u7331\u7333\u7327\u7332\u732D\u7326\u7323\u7335\u730C\u742E\u742C\u7430\u742B\u7416"],["daa1","\u741A\u7421\u742D\u7431\u7424\u7423\u741D\u7429\u7420\u7432\u74FB\u752F\u756F\u756C\u75E7\u75DA\u75E1\u75E6\u75DD\u75DF\u75E4\u75D7\u7695\u7692\u76DA\u7746\u7747\u7744\u774D\u7745\u774A\u774E\u774B\u774C\u77DE\u77EC\u7860\u7864\u7865\u785C\u786D\u7871\u786A\u786E\u7870\u7869\u7868\u785E\u7862\u7974\u7973\u7972\u7970\u7A02\u7A0A\u7A03\u7A0C\u7A04\u7A99\u7AE6\u7AE4\u7B4A\u7B3B\u7B44\u7B48\u7B4C\u7B4E\u7B40\u7B58\u7B45\u7CA2\u7C9E\u7CA8\u7CA1\u7D58\u7D6F\u7D63\u7D53\u7D56\u7D67\u7D6A\u7D4F\u7D6D\u7D5C\u7D6B\u7D52\u7D54\u7D69\u7D51\u7D5F\u7D4E\u7F3E\u7F3F\u7F65"],["db40","\u7F66\u7FA2\u7FA0\u7FA1\u7FD7\u8051\u804F\u8050\u80FE\u80D4\u8143\u814A\u8152\u814F\u8147\u813D\u814D\u813A\u81E6\u81EE\u81F7\u81F8\u81F9\u8204\u823C\u823D\u823F\u8275\u833B\u83CF\u83F9\u8423\u83C0\u83E8\u8412\u83E7\u83E4\u83FC\u83F6\u8410\u83C6\u83C8\u83EB\u83E3\u83BF\u8401\u83DD\u83E5\u83D8\u83FF\u83E1\u83CB\u83CE\u83D6\u83F5\u83C9\u8409\u840F\u83DE\u8411\u8406\u83C2\u83F3"],["dba1","\u83D5\u83FA\u83C7\u83D1\u83EA\u8413\u83C3\u83EC\u83EE\u83C4\u83FB\u83D7\u83E2\u841B\u83DB\u83FE\u86D8\u86E2\u86E6\u86D3\u86E3\u86DA\u86EA\u86DD\u86EB\u86DC\u86EC\u86E9\u86D7\u86E8\u86D1\u8848\u8856\u8855\u88BA\u88D7\u88B9\u88B8\u88C0\u88BE\u88B6\u88BC\u88B7\u88BD\u88B2\u8901\u88C9\u8995\u8998\u8997\u89DD\u89DA\u89DB\u8A4E\u8A4D\u8A39\u8A59\u8A40\u8A57\u8A58\u8A44\u8A45\u8A52\u8A48\u8A51\u8A4A\u8A4C\u8A4F\u8C5F\u8C81\u8C80\u8CBA\u8CBE\u8CB0\u8CB9\u8CB5\u8D84\u8D80\u8D89\u8DD8\u8DD3\u8DCD\u8DC7\u8DD6\u8DDC\u8DCF\u8DD5\u8DD9\u8DC8\u8DD7\u8DC5\u8EEF\u8EF7\u8EFA"],["dc40","\u8EF9\u8EE6\u8EEE\u8EE5\u8EF5\u8EE7\u8EE8\u8EF6\u8EEB\u8EF1\u8EEC\u8EF4\u8EE9\u902D\u9034\u902F\u9106\u912C\u9104\u90FF\u90FC\u9108\u90F9\u90FB\u9101\u9100\u9107\u9105\u9103\u9161\u9164\u915F\u9162\u9160\u9201\u920A\u9225\u9203\u921A\u9226\u920F\u920C\u9200\u9212\u91FF\u91FD\u9206\u9204\u9227\u9202\u921C\u9224\u9219\u9217\u9205\u9216\u957B\u958D\u958C\u9590\u9687\u967E\u9688"],["dca1","\u9689\u9683\u9680\u96C2\u96C8\u96C3\u96F1\u96F0\u976C\u9770\u976E\u9807\u98A9\u98EB\u9CE6\u9EF9\u4E83\u4E84\u4EB6\u50BD\u50BF\u50C6\u50AE\u50C4\u50CA\u50B4\u50C8\u50C2\u50B0\u50C1\u50BA\u50B1\u50CB\u50C9\u50B6\u50B8\u51D7\u527A\u5278\u527B\u527C\u55C3\u55DB\u55CC\u55D0\u55CB\u55CA\u55DD\u55C0\u55D4\u55C4\u55E9\u55BF\u55D2\u558D\u55CF\u55D5\u55E2\u55D6\u55C8\u55F2\u55CD\u55D9\u55C2\u5714\u5853\u5868\u5864\u584F\u584D\u5849\u586F\u5855\u584E\u585D\u5859\u5865\u585B\u583D\u5863\u5871\u58FC\u5AC7\u5AC4\u5ACB\u5ABA\u5AB8\u5AB1\u5AB5\u5AB0\u5ABF\u5AC8\u5ABB\u5AC6"],["dd40","\u5AB7\u5AC0\u5ACA\u5AB4\u5AB6\u5ACD\u5AB9\u5A90\u5BD6\u5BD8\u5BD9\u5C1F\u5C33\u5D71\u5D63\u5D4A\u5D65\u5D72\u5D6C\u5D5E\u5D68\u5D67\u5D62\u5DF0\u5E4F\u5E4E\u5E4A\u5E4D\u5E4B\u5EC5\u5ECC\u5EC6\u5ECB\u5EC7\u5F40\u5FAF\u5FAD\u60F7\u6149\u614A\u612B\u6145\u6136\u6132\u612E\u6146\u612F\u614F\u6129\u6140\u6220\u9168\u6223\u6225\u6224\u63C5\u63F1\u63EB\u6410\u6412\u6409\u6420\u6424"],["dda1","\u6433\u6443\u641F\u6415\u6418\u6439\u6437\u6422\u6423\u640C\u6426\u6430\u6428\u6441\u6435\u642F\u640A\u641A\u6440\u6425\u6427\u640B\u63E7\u641B\u642E\u6421\u640E\u656F\u6592\u65D3\u6686\u668C\u6695\u6690\u668B\u668A\u6699\u6694\u6678\u6720\u6966\u695F\u6938\u694E\u6962\u6971\u693F\u6945\u696A\u6939\u6942\u6957\u6959\u697A\u6948\u6949\u6935\u696C\u6933\u693D\u6965\u68F0\u6978\u6934\u6969\u6940\u696F\u6944\u6976\u6958\u6941\u6974\u694C\u693B\u694B\u6937\u695C\u694F\u6951\u6932\u6952\u692F\u697B\u693C\u6B46\u6B45\u6B43\u6B42\u6B48\u6B41\u6B9B\uFA0D\u6BFB\u6BFC"],["de40","\u6BF9\u6BF7\u6BF8\u6E9B\u6ED6\u6EC8\u6E8F\u6EC0\u6E9F\u6E93\u6E94\u6EA0\u6EB1\u6EB9\u6EC6\u6ED2\u6EBD\u6EC1\u6E9E\u6EC9\u6EB7\u6EB0\u6ECD\u6EA6\u6ECF\u6EB2\u6EBE\u6EC3\u6EDC\u6ED8\u6E99\u6E92\u6E8E\u6E8D\u6EA4\u6EA1\u6EBF\u6EB3\u6ED0\u6ECA\u6E97\u6EAE\u6EA3\u7147\u7154\u7152\u7163\u7160\u7141\u715D\u7162\u7172\u7178\u716A\u7161\u7142\u7158\u7143\u714B\u7170\u715F\u7150\u7153"],["dea1","\u7144\u714D\u715A\u724F\u728D\u728C\u7291\u7290\u728E\u733C\u7342\u733B\u733A\u7340\u734A\u7349\u7444\u744A\u744B\u7452\u7451\u7457\u7440\u744F\u7450\u744E\u7442\u7446\u744D\u7454\u74E1\u74FF\u74FE\u74FD\u751D\u7579\u7577\u6983\u75EF\u760F\u7603\u75F7\u75FE\u75FC\u75F9\u75F8\u7610\u75FB\u75F6\u75ED\u75F5\u75FD\u7699\u76B5\u76DD\u7755\u775F\u7760\u7752\u7756\u775A\u7769\u7767\u7754\u7759\u776D\u77E0\u7887\u789A\u7894\u788F\u7884\u7895\u7885\u7886\u78A1\u7883\u7879\u7899\u7880\u7896\u787B\u797C\u7982\u797D\u7979\u7A11\u7A18\u7A19\u7A12\u7A17\u7A15\u7A22\u7A13"],["df40","\u7A1B\u7A10\u7AA3\u7AA2\u7A9E\u7AEB\u7B66\u7B64\u7B6D\u7B74\u7B69\u7B72\u7B65\u7B73\u7B71\u7B70\u7B61\u7B78\u7B76\u7B63\u7CB2\u7CB4\u7CAF\u7D88\u7D86\u7D80\u7D8D\u7D7F\u7D85\u7D7A\u7D8E\u7D7B\u7D83\u7D7C\u7D8C\u7D94\u7D84\u7D7D\u7D92\u7F6D\u7F6B\u7F67\u7F68\u7F6C\u7FA6\u7FA5\u7FA7\u7FDB\u7FDC\u8021\u8164\u8160\u8177\u815C\u8169\u815B\u8162\u8172\u6721\u815E\u8176\u8167\u816F"],["dfa1","\u8144\u8161\u821D\u8249\u8244\u8240\u8242\u8245\u84F1\u843F\u8456\u8476\u8479\u848F\u848D\u8465\u8451\u8440\u8486\u8467\u8430\u844D\u847D\u845A\u8459\u8474\u8473\u845D\u8507\u845E\u8437\u843A\u8434\u847A\u8443\u8478\u8432\u8445\u8429\u83D9\u844B\u842F\u8442\u842D\u845F\u8470\u8439\u844E\u844C\u8452\u846F\u84C5\u848E\u843B\u8447\u8436\u8433\u8468\u847E\u8444\u842B\u8460\u8454\u846E\u8450\u870B\u8704\u86F7\u870C\u86FA\u86D6\u86F5\u874D\u86F8\u870E\u8709\u8701\u86F6\u870D\u8705\u88D6\u88CB\u88CD\u88CE\u88DE\u88DB\u88DA\u88CC\u88D0\u8985\u899B\u89DF\u89E5\u89E4"],["e040","\u89E1\u89E0\u89E2\u89DC\u89E6\u8A76\u8A86\u8A7F\u8A61\u8A3F\u8A77\u8A82\u8A84\u8A75\u8A83\u8A81\u8A74\u8A7A\u8C3C\u8C4B\u8C4A\u8C65\u8C64\u8C66\u8C86\u8C84\u8C85\u8CCC\u8D68\u8D69\u8D91\u8D8C\u8D8E\u8D8F\u8D8D\u8D93\u8D94\u8D90\u8D92\u8DF0\u8DE0\u8DEC\u8DF1\u8DEE\u8DD0\u8DE9\u8DE3\u8DE2\u8DE7\u8DF2\u8DEB\u8DF4\u8F06\u8EFF\u8F01\u8F00\u8F05\u8F07\u8F08\u8F02\u8F0B\u9052\u903F"],["e0a1","\u9044\u9049\u903D\u9110\u910D\u910F\u9111\u9116\u9114\u910B\u910E\u916E\u916F\u9248\u9252\u9230\u923A\u9266\u9233\u9265\u925E\u9283\u922E\u924A\u9246\u926D\u926C\u924F\u9260\u9267\u926F\u9236\u9261\u9270\u9231\u9254\u9263\u9250\u9272\u924E\u9253\u924C\u9256\u9232\u959F\u959C\u959E\u959B\u9692\u9693\u9691\u9697\u96CE\u96FA\u96FD\u96F8\u96F5\u9773\u9777\u9778\u9772\u980F\u980D\u980E\u98AC\u98F6\u98F9\u99AF\u99B2\u99B0\u99B5\u9AAD\u9AAB\u9B5B\u9CEA\u9CED\u9CE7\u9E80\u9EFD\u50E6\u50D4\u50D7\u50E8\u50F3\u50DB\u50EA\u50DD\u50E4\u50D3\u50EC\u50F0\u50EF\u50E3\u50E0"],["e140","\u51D8\u5280\u5281\u52E9\u52EB\u5330\u53AC\u5627\u5615\u560C\u5612\u55FC\u560F\u561C\u5601\u5613\u5602\u55FA\u561D\u5604\u55FF\u55F9\u5889\u587C\u5890\u5898\u5886\u5881\u587F\u5874\u588B\u587A\u5887\u5891\u588E\u5876\u5882\u5888\u587B\u5894\u588F\u58FE\u596B\u5ADC\u5AEE\u5AE5\u5AD5\u5AEA\u5ADA\u5AED\u5AEB\u5AF3\u5AE2\u5AE0\u5ADB\u5AEC\u5ADE\u5ADD\u5AD9\u5AE8\u5ADF\u5B77\u5BE0"],["e1a1","\u5BE3\u5C63\u5D82\u5D80\u5D7D\u5D86\u5D7A\u5D81\u5D77\u5D8A\u5D89\u5D88\u5D7E\u5D7C\u5D8D\u5D79\u5D7F\u5E58\u5E59\u5E53\u5ED8\u5ED1\u5ED7\u5ECE\u5EDC\u5ED5\u5ED9\u5ED2\u5ED4\u5F44\u5F43\u5F6F\u5FB6\u612C\u6128\u6141\u615E\u6171\u6173\u6152\u6153\u6172\u616C\u6180\u6174\u6154\u617A\u615B\u6165\u613B\u616A\u6161\u6156\u6229\u6227\u622B\u642B\u644D\u645B\u645D\u6474\u6476\u6472\u6473\u647D\u6475\u6466\u64A6\u644E\u6482\u645E\u645C\u644B\u6453\u6460\u6450\u647F\u643F\u646C\u646B\u6459\u6465\u6477\u6573\u65A0\u66A1\u66A0\u669F\u6705\u6704\u6722\u69B1\u69B6\u69C9"],["e240","\u69A0\u69CE\u6996\u69B0\u69AC\u69BC\u6991\u6999\u698E\u69A7\u698D\u69A9\u69BE\u69AF\u69BF\u69C4\u69BD\u69A4\u69D4\u69B9\u69CA\u699A\u69CF\u69B3\u6993\u69AA\u69A1\u699E\u69D9\u6997\u6990\u69C2\u69B5\u69A5\u69C6\u6B4A\u6B4D\u6B4B\u6B9E\u6B9F\u6BA0\u6BC3\u6BC4\u6BFE\u6ECE\u6EF5\u6EF1\u6F03\u6F25\u6EF8\u6F37\u6EFB\u6F2E\u6F09\u6F4E\u6F19\u6F1A\u6F27\u6F18\u6F3B\u6F12\u6EED\u6F0A"],["e2a1","\u6F36\u6F73\u6EF9\u6EEE\u6F2D\u6F40\u6F30\u6F3C\u6F35\u6EEB\u6F07\u6F0E\u6F43\u6F05\u6EFD\u6EF6\u6F39\u6F1C\u6EFC\u6F3A\u6F1F\u6F0D\u6F1E\u6F08\u6F21\u7187\u7190\u7189\u7180\u7185\u7182\u718F\u717B\u7186\u7181\u7197\u7244\u7253\u7297\u7295\u7293\u7343\u734D\u7351\u734C\u7462\u7473\u7471\u7475\u7472\u7467\u746E\u7500\u7502\u7503\u757D\u7590\u7616\u7608\u760C\u7615\u7611\u760A\u7614\u76B8\u7781\u777C\u7785\u7782\u776E\u7780\u776F\u777E\u7783\u78B2\u78AA\u78B4\u78AD\u78A8\u787E\u78AB\u789E\u78A5\u78A0\u78AC\u78A2\u78A4\u7998\u798A\u798B\u7996\u7995\u7994\u7993"],["e340","\u7997\u7988\u7992\u7990\u7A2B\u7A4A\u7A30\u7A2F\u7A28\u7A26\u7AA8\u7AAB\u7AAC\u7AEE\u7B88\u7B9C\u7B8A\u7B91\u7B90\u7B96\u7B8D\u7B8C\u7B9B\u7B8E\u7B85\u7B98\u5284\u7B99\u7BA4\u7B82\u7CBB\u7CBF\u7CBC\u7CBA\u7DA7\u7DB7\u7DC2\u7DA3\u7DAA\u7DC1\u7DC0\u7DC5\u7D9D\u7DCE\u7DC4\u7DC6\u7DCB\u7DCC\u7DAF\u7DB9\u7D96\u7DBC\u7D9F\u7DA6\u7DAE\u7DA9\u7DA1\u7DC9\u7F73\u7FE2\u7FE3\u7FE5\u7FDE"],["e3a1","\u8024\u805D\u805C\u8189\u8186\u8183\u8187\u818D\u818C\u818B\u8215\u8497\u84A4\u84A1\u849F\u84BA\u84CE\u84C2\u84AC\u84AE\u84AB\u84B9\u84B4\u84C1\u84CD\u84AA\u849A\u84B1\u84D0\u849D\u84A7\u84BB\u84A2\u8494\u84C7\u84CC\u849B\u84A9\u84AF\u84A8\u84D6\u8498\u84B6\u84CF\u84A0\u84D7\u84D4\u84D2\u84DB\u84B0\u8491\u8661\u8733\u8723\u8728\u876B\u8740\u872E\u871E\u8721\u8719\u871B\u8743\u872C\u8741\u873E\u8746\u8720\u8732\u872A\u872D\u873C\u8712\u873A\u8731\u8735\u8742\u8726\u8727\u8738\u8724\u871A\u8730\u8711\u88F7\u88E7\u88F1\u88F2\u88FA\u88FE\u88EE\u88FC\u88F6\u88FB"],["e440","\u88F0\u88EC\u88EB\u899D\u89A1\u899F\u899E\u89E9\u89EB\u89E8\u8AAB\u8A99\u8A8B\u8A92\u8A8F\u8A96\u8C3D\u8C68\u8C69\u8CD5\u8CCF\u8CD7\u8D96\u8E09\u8E02\u8DFF\u8E0D\u8DFD\u8E0A\u8E03\u8E07\u8E06\u8E05\u8DFE\u8E00\u8E04\u8F10\u8F11\u8F0E\u8F0D\u9123\u911C\u9120\u9122\u911F\u911D\u911A\u9124\u9121\u911B\u917A\u9172\u9179\u9173\u92A5\u92A4\u9276\u929B\u927A\u92A0\u9294\u92AA\u928D"],["e4a1","\u92A6\u929A\u92AB\u9279\u9297\u927F\u92A3\u92EE\u928E\u9282\u9295\u92A2\u927D\u9288\u92A1\u928A\u9286\u928C\u9299\u92A7\u927E\u9287\u92A9\u929D\u928B\u922D\u969E\u96A1\u96FF\u9758\u977D\u977A\u977E\u9783\u9780\u9782\u977B\u9784\u9781\u977F\u97CE\u97CD\u9816\u98AD\u98AE\u9902\u9900\u9907\u999D\u999C\u99C3\u99B9\u99BB\u99BA\u99C2\u99BD\u99C7\u9AB1\u9AE3\u9AE7\u9B3E\u9B3F\u9B60\u9B61\u9B5F\u9CF1\u9CF2\u9CF5\u9EA7\u50FF\u5103\u5130\u50F8\u5106\u5107\u50F6\u50FE\u510B\u510C\u50FD\u510A\u528B\u528C\u52F1\u52EF\u5648\u5642\u564C\u5635\u5641\u564A\u5649\u5646\u5658"],["e540","\u565A\u5640\u5633\u563D\u562C\u563E\u5638\u562A\u563A\u571A\u58AB\u589D\u58B1\u58A0\u58A3\u58AF\u58AC\u58A5\u58A1\u58FF\u5AFF\u5AF4\u5AFD\u5AF7\u5AF6\u5B03\u5AF8\u5B02\u5AF9\u5B01\u5B07\u5B05\u5B0F\u5C67\u5D99\u5D97\u5D9F\u5D92\u5DA2\u5D93\u5D95\u5DA0\u5D9C\u5DA1\u5D9A\u5D9E\u5E69\u5E5D\u5E60\u5E5C\u7DF3\u5EDB\u5EDE\u5EE1\u5F49\u5FB2\u618B\u6183\u6179\u61B1\u61B0\u61A2\u6189"],["e5a1","\u619B\u6193\u61AF\u61AD\u619F\u6192\u61AA\u61A1\u618D\u6166\u61B3\u622D\u646E\u6470\u6496\u64A0\u6485\u6497\u649C\u648F\u648B\u648A\u648C\u64A3\u649F\u6468\u64B1\u6498\u6576\u657A\u6579\u657B\u65B2\u65B3\u66B5\u66B0\u66A9\u66B2\u66B7\u66AA\u66AF\u6A00\u6A06\u6A17\u69E5\u69F8\u6A15\u69F1\u69E4\u6A20\u69FF\u69EC\u69E2\u6A1B\u6A1D\u69FE\u6A27\u69F2\u69EE\u6A14\u69F7\u69E7\u6A40\u6A08\u69E6\u69FB\u6A0D\u69FC\u69EB\u6A09\u6A04\u6A18\u6A25\u6A0F\u69F6\u6A26\u6A07\u69F4\u6A16\u6B51\u6BA5\u6BA3\u6BA2\u6BA6\u6C01\u6C00\u6BFF\u6C02\u6F41\u6F26\u6F7E\u6F87\u6FC6\u6F92"],["e640","\u6F8D\u6F89\u6F8C\u6F62\u6F4F\u6F85\u6F5A\u6F96\u6F76\u6F6C\u6F82\u6F55\u6F72\u6F52\u6F50\u6F57\u6F94\u6F93\u6F5D\u6F00\u6F61\u6F6B\u6F7D\u6F67\u6F90\u6F53\u6F8B\u6F69\u6F7F\u6F95\u6F63\u6F77\u6F6A\u6F7B\u71B2\u71AF\u719B\u71B0\u71A0\u719A\u71A9\u71B5\u719D\u71A5\u719E\u71A4\u71A1\u71AA\u719C\u71A7\u71B3\u7298\u729A\u7358\u7352\u735E\u735F\u7360\u735D\u735B\u7361\u735A\u7359"],["e6a1","\u7362\u7487\u7489\u748A\u7486\u7481\u747D\u7485\u7488\u747C\u7479\u7508\u7507\u757E\u7625\u761E\u7619\u761D\u761C\u7623\u761A\u7628\u761B\u769C\u769D\u769E\u769B\u778D\u778F\u7789\u7788\u78CD\u78BB\u78CF\u78CC\u78D1\u78CE\u78D4\u78C8\u78C3\u78C4\u78C9\u799A\u79A1\u79A0\u799C\u79A2\u799B\u6B76\u7A39\u7AB2\u7AB4\u7AB3\u7BB7\u7BCB\u7BBE\u7BAC\u7BCE\u7BAF\u7BB9\u7BCA\u7BB5\u7CC5\u7CC8\u7CCC\u7CCB\u7DF7\u7DDB\u7DEA\u7DE7\u7DD7\u7DE1\u7E03\u7DFA\u7DE6\u7DF6\u7DF1\u7DF0\u7DEE\u7DDF\u7F76\u7FAC\u7FB0\u7FAD\u7FED\u7FEB\u7FEA\u7FEC\u7FE6\u7FE8\u8064\u8067\u81A3\u819F"],["e740","\u819E\u8195\u81A2\u8199\u8197\u8216\u824F\u8253\u8252\u8250\u824E\u8251\u8524\u853B\u850F\u8500\u8529\u850E\u8509\u850D\u851F\u850A\u8527\u851C\u84FB\u852B\u84FA\u8508\u850C\u84F4\u852A\u84F2\u8515\u84F7\u84EB\u84F3\u84FC\u8512\u84EA\u84E9\u8516\u84FE\u8528\u851D\u852E\u8502\u84FD\u851E\u84F6\u8531\u8526\u84E7\u84E8\u84F0\u84EF\u84F9\u8518\u8520\u8530\u850B\u8519\u852F\u8662"],["e7a1","\u8756\u8763\u8764\u8777\u87E1\u8773\u8758\u8754\u875B\u8752\u8761\u875A\u8751\u875E\u876D\u876A\u8750\u874E\u875F\u875D\u876F\u876C\u877A\u876E\u875C\u8765\u874F\u877B\u8775\u8762\u8767\u8769\u885A\u8905\u890C\u8914\u890B\u8917\u8918\u8919\u8906\u8916\u8911\u890E\u8909\u89A2\u89A4\u89A3\u89ED\u89F0\u89EC\u8ACF\u8AC6\u8AB8\u8AD3\u8AD1\u8AD4\u8AD5\u8ABB\u8AD7\u8ABE\u8AC0\u8AC5\u8AD8\u8AC3\u8ABA\u8ABD\u8AD9\u8C3E\u8C4D\u8C8F\u8CE5\u8CDF\u8CD9\u8CE8\u8CDA\u8CDD\u8CE7\u8DA0\u8D9C\u8DA1\u8D9B\u8E20\u8E23\u8E25\u8E24\u8E2E\u8E15\u8E1B\u8E16\u8E11\u8E19\u8E26\u8E27"],["e840","\u8E14\u8E12\u8E18\u8E13\u8E1C\u8E17\u8E1A\u8F2C\u8F24\u8F18\u8F1A\u8F20\u8F23\u8F16\u8F17\u9073\u9070\u906F\u9067\u906B\u912F\u912B\u9129\u912A\u9132\u9126\u912E\u9185\u9186\u918A\u9181\u9182\u9184\u9180\u92D0\u92C3\u92C4\u92C0\u92D9\u92B6\u92CF\u92F1\u92DF\u92D8\u92E9\u92D7\u92DD\u92CC\u92EF\u92C2\u92E8\u92CA\u92C8\u92CE\u92E6\u92CD\u92D5\u92C9\u92E0\u92DE\u92E7\u92D1\u92D3"],["e8a1","\u92B5\u92E1\u92C6\u92B4\u957C\u95AC\u95AB\u95AE\u95B0\u96A4\u96A2\u96D3\u9705\u9708\u9702\u975A\u978A\u978E\u9788\u97D0\u97CF\u981E\u981D\u9826\u9829\u9828\u9820\u981B\u9827\u98B2\u9908\u98FA\u9911\u9914\u9916\u9917\u9915\u99DC\u99CD\u99CF\u99D3\u99D4\u99CE\u99C9\u99D6\u99D8\u99CB\u99D7\u99CC\u9AB3\u9AEC\u9AEB\u9AF3\u9AF2\u9AF1\u9B46\u9B43\u9B67\u9B74\u9B71\u9B66\u9B76\u9B75\u9B70\u9B68\u9B64\u9B6C\u9CFC\u9CFA\u9CFD\u9CFF\u9CF7\u9D07\u9D00\u9CF9\u9CFB\u9D08\u9D05\u9D04\u9E83\u9ED3\u9F0F\u9F10\u511C\u5113\u5117\u511A\u5111\u51DE\u5334\u53E1\u5670\u5660\u566E"],["e940","\u5673\u5666\u5663\u566D\u5672\u565E\u5677\u571C\u571B\u58C8\u58BD\u58C9\u58BF\u58BA\u58C2\u58BC\u58C6\u5B17\u5B19\u5B1B\u5B21\u5B14\u5B13\u5B10\u5B16\u5B28\u5B1A\u5B20\u5B1E\u5BEF\u5DAC\u5DB1\u5DA9\u5DA7\u5DB5\u5DB0\u5DAE\u5DAA\u5DA8\u5DB2\u5DAD\u5DAF\u5DB4\u5E67\u5E68\u5E66\u5E6F\u5EE9\u5EE7\u5EE6\u5EE8\u5EE5\u5F4B\u5FBC\u619D\u61A8\u6196\u61C5\u61B4\u61C6\u61C1\u61CC\u61BA"],["e9a1","\u61BF\u61B8\u618C\u64D7\u64D6\u64D0\u64CF\u64C9\u64BD\u6489\u64C3\u64DB\u64F3\u64D9\u6533\u657F\u657C\u65A2\u66C8\u66BE\u66C0\u66CA\u66CB\u66CF\u66BD\u66BB\u66BA\u66CC\u6723\u6A34\u6A66\u6A49\u6A67\u6A32\u6A68\u6A3E\u6A5D\u6A6D\u6A76\u6A5B\u6A51\u6A28\u6A5A\u6A3B\u6A3F\u6A41\u6A6A\u6A64\u6A50\u6A4F\u6A54\u6A6F\u6A69\u6A60\u6A3C\u6A5E\u6A56\u6A55\u6A4D\u6A4E\u6A46\u6B55\u6B54\u6B56\u6BA7\u6BAA\u6BAB\u6BC8\u6BC7\u6C04\u6C03\u6C06\u6FAD\u6FCB\u6FA3\u6FC7\u6FBC\u6FCE\u6FC8\u6F5E\u6FC4\u6FBD\u6F9E\u6FCA\u6FA8\u7004\u6FA5\u6FAE\u6FBA\u6FAC\u6FAA\u6FCF\u6FBF\u6FB8"],["ea40","\u6FA2\u6FC9\u6FAB\u6FCD\u6FAF\u6FB2\u6FB0\u71C5\u71C2\u71BF\u71B8\u71D6\u71C0\u71C1\u71CB\u71D4\u71CA\u71C7\u71CF\u71BD\u71D8\u71BC\u71C6\u71DA\u71DB\u729D\u729E\u7369\u7366\u7367\u736C\u7365\u736B\u736A\u747F\u749A\u74A0\u7494\u7492\u7495\u74A1\u750B\u7580\u762F\u762D\u7631\u763D\u7633\u763C\u7635\u7632\u7630\u76BB\u76E6\u779A\u779D\u77A1\u779C\u779B\u77A2\u77A3\u7795\u7799"],["eaa1","\u7797\u78DD\u78E9\u78E5\u78EA\u78DE\u78E3\u78DB\u78E1\u78E2\u78ED\u78DF\u78E0\u79A4\u7A44\u7A48\u7A47\u7AB6\u7AB8\u7AB5\u7AB1\u7AB7\u7BDE\u7BE3\u7BE7\u7BDD\u7BD5\u7BE5\u7BDA\u7BE8\u7BF9\u7BD4\u7BEA\u7BE2\u7BDC\u7BEB\u7BD8\u7BDF\u7CD2\u7CD4\u7CD7\u7CD0\u7CD1\u7E12\u7E21\u7E17\u7E0C\u7E1F\u7E20\u7E13\u7E0E\u7E1C\u7E15\u7E1A\u7E22\u7E0B\u7E0F\u7E16\u7E0D\u7E14\u7E25\u7E24\u7F43\u7F7B\u7F7C\u7F7A\u7FB1\u7FEF\u802A\u8029\u806C\u81B1\u81A6\u81AE\u81B9\u81B5\u81AB\u81B0\u81AC\u81B4\u81B2\u81B7\u81A7\u81F2\u8255\u8256\u8257\u8556\u8545\u856B\u854D\u8553\u8561\u8558"],["eb40","\u8540\u8546\u8564\u8541\u8562\u8544\u8551\u8547\u8563\u853E\u855B\u8571\u854E\u856E\u8575\u8555\u8567\u8560\u858C\u8566\u855D\u8554\u8565\u856C\u8663\u8665\u8664\u879B\u878F\u8797\u8793\u8792\u8788\u8781\u8796\u8798\u8779\u8787\u87A3\u8785\u8790\u8791\u879D\u8784\u8794\u879C\u879A\u8789\u891E\u8926\u8930\u892D\u892E\u8927\u8931\u8922\u8929\u8923\u892F\u892C\u891F\u89F1\u8AE0"],["eba1","\u8AE2\u8AF2\u8AF4\u8AF5\u8ADD\u8B14\u8AE4\u8ADF\u8AF0\u8AC8\u8ADE\u8AE1\u8AE8\u8AFF\u8AEF\u8AFB\u8C91\u8C92\u8C90\u8CF5\u8CEE\u8CF1\u8CF0\u8CF3\u8D6C\u8D6E\u8DA5\u8DA7\u8E33\u8E3E\u8E38\u8E40\u8E45\u8E36\u8E3C\u8E3D\u8E41\u8E30\u8E3F\u8EBD\u8F36\u8F2E\u8F35\u8F32\u8F39\u8F37\u8F34\u9076\u9079\u907B\u9086\u90FA\u9133\u9135\u9136\u9193\u9190\u9191\u918D\u918F\u9327\u931E\u9308\u931F\u9306\u930F\u937A\u9338\u933C\u931B\u9323\u9312\u9301\u9346\u932D\u930E\u930D\u92CB\u931D\u92FA\u9325\u9313\u92F9\u92F7\u9334\u9302\u9324\u92FF\u9329\u9339\u9335\u932A\u9314\u930C"],["ec40","\u930B\u92FE\u9309\u9300\u92FB\u9316\u95BC\u95CD\u95BE\u95B9\u95BA\u95B6\u95BF\u95B5\u95BD\u96A9\u96D4\u970B\u9712\u9710\u9799\u9797\u9794\u97F0\u97F8\u9835\u982F\u9832\u9924\u991F\u9927\u9929\u999E\u99EE\u99EC\u99E5\u99E4\u99F0\u99E3\u99EA\u99E9\u99E7\u9AB9\u9ABF\u9AB4\u9ABB\u9AF6\u9AFA\u9AF9\u9AF7\u9B33\u9B80\u9B85\u9B87\u9B7C\u9B7E\u9B7B\u9B82\u9B93\u9B92\u9B90\u9B7A\u9B95"],["eca1","\u9B7D\u9B88\u9D25\u9D17\u9D20\u9D1E\u9D14\u9D29\u9D1D\u9D18\u9D22\u9D10\u9D19\u9D1F\u9E88\u9E86\u9E87\u9EAE\u9EAD\u9ED5\u9ED6\u9EFA\u9F12\u9F3D\u5126\u5125\u5122\u5124\u5120\u5129\u52F4\u5693\u568C\u568D\u5686\u5684\u5683\u567E\u5682\u567F\u5681\u58D6\u58D4\u58CF\u58D2\u5B2D\u5B25\u5B32\u5B23\u5B2C\u5B27\u5B26\u5B2F\u5B2E\u5B7B\u5BF1\u5BF2\u5DB7\u5E6C\u5E6A\u5FBE\u5FBB\u61C3\u61B5\u61BC\u61E7\u61E0\u61E5\u61E4\u61E8\u61DE\u64EF\u64E9\u64E3\u64EB\u64E4\u64E8\u6581\u6580\u65B6\u65DA\u66D2\u6A8D\u6A96\u6A81\u6AA5\u6A89\u6A9F\u6A9B\u6AA1\u6A9E\u6A87\u6A93\u6A8E"],["ed40","\u6A95\u6A83\u6AA8\u6AA4\u6A91\u6A7F\u6AA6\u6A9A\u6A85\u6A8C\u6A92\u6B5B\u6BAD\u6C09\u6FCC\u6FA9\u6FF4\u6FD4\u6FE3\u6FDC\u6FED\u6FE7\u6FE6\u6FDE\u6FF2\u6FDD\u6FE2\u6FE8\u71E1\u71F1\u71E8\u71F2\u71E4\u71F0\u71E2\u7373\u736E\u736F\u7497\u74B2\u74AB\u7490\u74AA\u74AD\u74B1\u74A5\u74AF\u7510\u7511\u7512\u750F\u7584\u7643\u7648\u7649\u7647\u76A4\u76E9\u77B5\u77AB\u77B2\u77B7\u77B6"],["eda1","\u77B4\u77B1\u77A8\u77F0\u78F3\u78FD\u7902\u78FB\u78FC\u78F2\u7905\u78F9\u78FE\u7904\u79AB\u79A8\u7A5C\u7A5B\u7A56\u7A58\u7A54\u7A5A\u7ABE\u7AC0\u7AC1\u7C05\u7C0F\u7BF2\u7C00\u7BFF\u7BFB\u7C0E\u7BF4\u7C0B\u7BF3\u7C02\u7C09\u7C03\u7C01\u7BF8\u7BFD\u7C06\u7BF0\u7BF1\u7C10\u7C0A\u7CE8\u7E2D\u7E3C\u7E42\u7E33\u9848\u7E38\u7E2A\u7E49\u7E40\u7E47\u7E29\u7E4C\u7E30\u7E3B\u7E36\u7E44\u7E3A\u7F45\u7F7F\u7F7E\u7F7D\u7FF4\u7FF2\u802C\u81BB\u81C4\u81CC\u81CA\u81C5\u81C7\u81BC\u81E9\u825B\u825A\u825C\u8583\u8580\u858F\u85A7\u8595\u85A0\u858B\u85A3\u857B\u85A4\u859A\u859E"],["ee40","\u8577\u857C\u8589\u85A1\u857A\u8578\u8557\u858E\u8596\u8586\u858D\u8599\u859D\u8581\u85A2\u8582\u8588\u8585\u8579\u8576\u8598\u8590\u859F\u8668\u87BE\u87AA\u87AD\u87C5\u87B0\u87AC\u87B9\u87B5\u87BC\u87AE\u87C9\u87C3\u87C2\u87CC\u87B7\u87AF\u87C4\u87CA\u87B4\u87B6\u87BF\u87B8\u87BD\u87DE\u87B2\u8935\u8933\u893C\u893E\u8941\u8952\u8937\u8942\u89AD\u89AF\u89AE\u89F2\u89F3\u8B1E"],["eea1","\u8B18\u8B16\u8B11\u8B05\u8B0B\u8B22\u8B0F\u8B12\u8B15\u8B07\u8B0D\u8B08\u8B06\u8B1C\u8B13\u8B1A\u8C4F\u8C70\u8C72\u8C71\u8C6F\u8C95\u8C94\u8CF9\u8D6F\u8E4E\u8E4D\u8E53\u8E50\u8E4C\u8E47\u8F43\u8F40\u9085\u907E\u9138\u919A\u91A2\u919B\u9199\u919F\u91A1\u919D\u91A0\u93A1\u9383\u93AF\u9364\u9356\u9347\u937C\u9358\u935C\u9376\u9349\u9350\u9351\u9360\u936D\u938F\u934C\u936A\u9379\u9357\u9355\u9352\u934F\u9371\u9377\u937B\u9361\u935E\u9363\u9367\u9380\u934E\u9359\u95C7\u95C0\u95C9\u95C3\u95C5\u95B7\u96AE\u96B0\u96AC\u9720\u971F\u9718\u971D\u9719\u979A\u97A1\u979C"],["ef40","\u979E\u979D\u97D5\u97D4\u97F1\u9841\u9844\u984A\u9849\u9845\u9843\u9925\u992B\u992C\u992A\u9933\u9932\u992F\u992D\u9931\u9930\u9998\u99A3\u99A1\u9A02\u99FA\u99F4\u99F7\u99F9\u99F8\u99F6\u99FB\u99FD\u99FE\u99FC\u9A03\u9ABE\u9AFE\u9AFD\u9B01\u9AFC\u9B48\u9B9A\u9BA8\u9B9E\u9B9B\u9BA6\u9BA1\u9BA5\u9BA4\u9B86\u9BA2\u9BA0\u9BAF\u9D33\u9D41\u9D67\u9D36\u9D2E\u9D2F\u9D31\u9D38\u9D30"],["efa1","\u9D45\u9D42\u9D43\u9D3E\u9D37\u9D40\u9D3D\u7FF5\u9D2D\u9E8A\u9E89\u9E8D\u9EB0\u9EC8\u9EDA\u9EFB\u9EFF\u9F24\u9F23\u9F22\u9F54\u9FA0\u5131\u512D\u512E\u5698\u569C\u5697\u569A\u569D\u5699\u5970\u5B3C\u5C69\u5C6A\u5DC0\u5E6D\u5E6E\u61D8\u61DF\u61ED\u61EE\u61F1\u61EA\u61F0\u61EB\u61D6\u61E9\u64FF\u6504\u64FD\u64F8\u6501\u6503\u64FC\u6594\u65DB\u66DA\u66DB\u66D8\u6AC5\u6AB9\u6ABD\u6AE1\u6AC6\u6ABA\u6AB6\u6AB7\u6AC7\u6AB4\u6AAD\u6B5E\u6BC9\u6C0B\u7007\u700C\u700D\u7001\u7005\u7014\u700E\u6FFF\u7000\u6FFB\u7026\u6FFC\u6FF7\u700A\u7201\u71FF\u71F9\u7203\u71FD\u7376"],["f040","\u74B8\u74C0\u74B5\u74C1\u74BE\u74B6\u74BB\u74C2\u7514\u7513\u765C\u7664\u7659\u7650\u7653\u7657\u765A\u76A6\u76BD\u76EC\u77C2\u77BA\u78FF\u790C\u7913\u7914\u7909\u7910\u7912\u7911\u79AD\u79AC\u7A5F\u7C1C\u7C29\u7C19\u7C20\u7C1F\u7C2D\u7C1D\u7C26\u7C28\u7C22\u7C25\u7C30\u7E5C\u7E50\u7E56\u7E63\u7E58\u7E62\u7E5F\u7E51\u7E60\u7E57\u7E53\u7FB5\u7FB3\u7FF7\u7FF8\u8075\u81D1\u81D2"],["f0a1","\u81D0\u825F\u825E\u85B4\u85C6\u85C0\u85C3\u85C2\u85B3\u85B5\u85BD\u85C7\u85C4\u85BF\u85CB\u85CE\u85C8\u85C5\u85B1\u85B6\u85D2\u8624\u85B8\u85B7\u85BE\u8669\u87E7\u87E6\u87E2\u87DB\u87EB\u87EA\u87E5\u87DF\u87F3\u87E4\u87D4\u87DC\u87D3\u87ED\u87D8\u87E3\u87A4\u87D7\u87D9\u8801\u87F4\u87E8\u87DD\u8953\u894B\u894F\u894C\u8946\u8950\u8951\u8949\u8B2A\u8B27\u8B23\u8B33\u8B30\u8B35\u8B47\u8B2F\u8B3C\u8B3E\u8B31\u8B25\u8B37\u8B26\u8B36\u8B2E\u8B24\u8B3B\u8B3D\u8B3A\u8C42\u8C75\u8C99\u8C98\u8C97\u8CFE\u8D04\u8D02\u8D00\u8E5C\u8E62\u8E60\u8E57\u8E56\u8E5E\u8E65\u8E67"],["f140","\u8E5B\u8E5A\u8E61\u8E5D\u8E69\u8E54\u8F46\u8F47\u8F48\u8F4B\u9128\u913A\u913B\u913E\u91A8\u91A5\u91A7\u91AF\u91AA\u93B5\u938C\u9392\u93B7\u939B\u939D\u9389\u93A7\u938E\u93AA\u939E\u93A6\u9395\u9388\u9399\u939F\u938D\u93B1\u9391\u93B2\u93A4\u93A8\u93B4\u93A3\u93A5\u95D2\u95D3\u95D1\u96B3\u96D7\u96DA\u5DC2\u96DF\u96D8\u96DD\u9723\u9722\u9725\u97AC\u97AE\u97A8\u97AB\u97A4\u97AA"],["f1a1","\u97A2\u97A5\u97D7\u97D9\u97D6\u97D8\u97FA\u9850\u9851\u9852\u98B8\u9941\u993C\u993A\u9A0F\u9A0B\u9A09\u9A0D\u9A04\u9A11\u9A0A\u9A05\u9A07\u9A06\u9AC0\u9ADC\u9B08\u9B04\u9B05\u9B29\u9B35\u9B4A\u9B4C\u9B4B\u9BC7\u9BC6\u9BC3\u9BBF\u9BC1\u9BB5\u9BB8\u9BD3\u9BB6\u9BC4\u9BB9\u9BBD\u9D5C\u9D53\u9D4F\u9D4A\u9D5B\u9D4B\u9D59\u9D56\u9D4C\u9D57\u9D52\u9D54\u9D5F\u9D58\u9D5A\u9E8E\u9E8C\u9EDF\u9F01\u9F00\u9F16\u9F25\u9F2B\u9F2A\u9F29\u9F28\u9F4C\u9F55\u5134\u5135\u5296\u52F7\u53B4\u56AB\u56AD\u56A6\u56A7\u56AA\u56AC\u58DA\u58DD\u58DB\u5912\u5B3D\u5B3E\u5B3F\u5DC3\u5E70"],["f240","\u5FBF\u61FB\u6507\u6510\u650D\u6509\u650C\u650E\u6584\u65DE\u65DD\u66DE\u6AE7\u6AE0\u6ACC\u6AD1\u6AD9\u6ACB\u6ADF\u6ADC\u6AD0\u6AEB\u6ACF\u6ACD\u6ADE\u6B60\u6BB0\u6C0C\u7019\u7027\u7020\u7016\u702B\u7021\u7022\u7023\u7029\u7017\u7024\u701C\u702A\u720C\u720A\u7207\u7202\u7205\u72A5\u72A6\u72A4\u72A3\u72A1\u74CB\u74C5\u74B7\u74C3\u7516\u7660\u77C9\u77CA\u77C4\u77F1\u791D\u791B"],["f2a1","\u7921\u791C\u7917\u791E\u79B0\u7A67\u7A68\u7C33\u7C3C\u7C39\u7C2C\u7C3B\u7CEC\u7CEA\u7E76\u7E75\u7E78\u7E70\u7E77\u7E6F\u7E7A\u7E72\u7E74\u7E68\u7F4B\u7F4A\u7F83\u7F86\u7FB7\u7FFD\u7FFE\u8078\u81D7\u81D5\u8264\u8261\u8263\u85EB\u85F1\u85ED\u85D9\u85E1\u85E8\u85DA\u85D7\u85EC\u85F2\u85F8\u85D8\u85DF\u85E3\u85DC\u85D1\u85F0\u85E6\u85EF\u85DE\u85E2\u8800\u87FA\u8803\u87F6\u87F7\u8809\u880C\u880B\u8806\u87FC\u8808\u87FF\u880A\u8802\u8962\u895A\u895B\u8957\u8961\u895C\u8958\u895D\u8959\u8988\u89B7\u89B6\u89F6\u8B50\u8B48\u8B4A\u8B40\u8B53\u8B56\u8B54\u8B4B\u8B55"],["f340","\u8B51\u8B42\u8B52\u8B57\u8C43\u8C77\u8C76\u8C9A\u8D06\u8D07\u8D09\u8DAC\u8DAA\u8DAD\u8DAB\u8E6D\u8E78\u8E73\u8E6A\u8E6F\u8E7B\u8EC2\u8F52\u8F51\u8F4F\u8F50\u8F53\u8FB4\u9140\u913F\u91B0\u91AD\u93DE\u93C7\u93CF\u93C2\u93DA\u93D0\u93F9\u93EC\u93CC\u93D9\u93A9\u93E6\u93CA\u93D4\u93EE\u93E3\u93D5\u93C4\u93CE\u93C0\u93D2\u93E7\u957D\u95DA\u95DB\u96E1\u9729\u972B\u972C\u9728\u9726"],["f3a1","\u97B3\u97B7\u97B6\u97DD\u97DE\u97DF\u985C\u9859\u985D\u9857\u98BF\u98BD\u98BB\u98BE\u9948\u9947\u9943\u99A6\u99A7\u9A1A\u9A15\u9A25\u9A1D\u9A24\u9A1B\u9A22\u9A20\u9A27\u9A23\u9A1E\u9A1C\u9A14\u9AC2\u9B0B\u9B0A\u9B0E\u9B0C\u9B37\u9BEA\u9BEB\u9BE0\u9BDE\u9BE4\u9BE6\u9BE2\u9BF0\u9BD4\u9BD7\u9BEC\u9BDC\u9BD9\u9BE5\u9BD5\u9BE1\u9BDA\u9D77\u9D81\u9D8A\u9D84\u9D88\u9D71\u9D80\u9D78\u9D86\u9D8B\u9D8C\u9D7D\u9D6B\u9D74\u9D75\u9D70\u9D69\u9D85\u9D73\u9D7B\u9D82\u9D6F\u9D79\u9D7F\u9D87\u9D68\u9E94\u9E91\u9EC0\u9EFC\u9F2D\u9F40\u9F41\u9F4D\u9F56\u9F57\u9F58\u5337\u56B2"],["f440","\u56B5\u56B3\u58E3\u5B45\u5DC6\u5DC7\u5EEE\u5EEF\u5FC0\u5FC1\u61F9\u6517\u6516\u6515\u6513\u65DF\u66E8\u66E3\u66E4\u6AF3\u6AF0\u6AEA\u6AE8\u6AF9\u6AF1\u6AEE\u6AEF\u703C\u7035\u702F\u7037\u7034\u7031\u7042\u7038\u703F\u703A\u7039\u7040\u703B\u7033\u7041\u7213\u7214\u72A8\u737D\u737C\u74BA\u76AB\u76AA\u76BE\u76ED\u77CC\u77CE\u77CF\u77CD\u77F2\u7925\u7923\u7927\u7928\u7924\u7929"],["f4a1","\u79B2\u7A6E\u7A6C\u7A6D\u7AF7\u7C49\u7C48\u7C4A\u7C47\u7C45\u7CEE\u7E7B\u7E7E\u7E81\u7E80\u7FBA\u7FFF\u8079\u81DB\u81D9\u820B\u8268\u8269\u8622\u85FF\u8601\u85FE\u861B\u8600\u85F6\u8604\u8609\u8605\u860C\u85FD\u8819\u8810\u8811\u8817\u8813\u8816\u8963\u8966\u89B9\u89F7\u8B60\u8B6A\u8B5D\u8B68\u8B63\u8B65\u8B67\u8B6D\u8DAE\u8E86\u8E88\u8E84\u8F59\u8F56\u8F57\u8F55\u8F58\u8F5A\u908D\u9143\u9141\u91B7\u91B5\u91B2\u91B3\u940B\u9413\u93FB\u9420\u940F\u9414\u93FE\u9415\u9410\u9428\u9419\u940D\u93F5\u9400\u93F7\u9407\u940E\u9416\u9412\u93FA\u9409\u93F8\u940A\u93FF"],["f540","\u93FC\u940C\u93F6\u9411\u9406\u95DE\u95E0\u95DF\u972E\u972F\u97B9\u97BB\u97FD\u97FE\u9860\u9862\u9863\u985F\u98C1\u98C2\u9950\u994E\u9959\u994C\u994B\u9953\u9A32\u9A34\u9A31\u9A2C\u9A2A\u9A36\u9A29\u9A2E\u9A38\u9A2D\u9AC7\u9ACA\u9AC6\u9B10\u9B12\u9B11\u9C0B\u9C08\u9BF7\u9C05\u9C12\u9BF8\u9C40\u9C07\u9C0E\u9C06\u9C17\u9C14\u9C09\u9D9F\u9D99\u9DA4\u9D9D\u9D92\u9D98\u9D90\u9D9B"],["f5a1","\u9DA0\u9D94\u9D9C\u9DAA\u9D97\u9DA1\u9D9A\u9DA2\u9DA8\u9D9E\u9DA3\u9DBF\u9DA9\u9D96\u9DA6\u9DA7\u9E99\u9E9B\u9E9A\u9EE5\u9EE4\u9EE7\u9EE6\u9F30\u9F2E\u9F5B\u9F60\u9F5E\u9F5D\u9F59\u9F91\u513A\u5139\u5298\u5297\u56C3\u56BD\u56BE\u5B48\u5B47\u5DCB\u5DCF\u5EF1\u61FD\u651B\u6B02\u6AFC\u6B03\u6AF8\u6B00\u7043\u7044\u704A\u7048\u7049\u7045\u7046\u721D\u721A\u7219\u737E\u7517\u766A\u77D0\u792D\u7931\u792F\u7C54\u7C53\u7CF2\u7E8A\u7E87\u7E88\u7E8B\u7E86\u7E8D\u7F4D\u7FBB\u8030\u81DD\u8618\u862A\u8626\u861F\u8623\u861C\u8619\u8627\u862E\u8621\u8620\u8629\u861E\u8625"],["f640","\u8829\u881D\u881B\u8820\u8824\u881C\u882B\u884A\u896D\u8969\u896E\u896B\u89FA\u8B79\u8B78\u8B45\u8B7A\u8B7B\u8D10\u8D14\u8DAF\u8E8E\u8E8C\u8F5E\u8F5B\u8F5D\u9146\u9144\u9145\u91B9\u943F\u943B\u9436\u9429\u943D\u943C\u9430\u9439\u942A\u9437\u942C\u9440\u9431\u95E5\u95E4\u95E3\u9735\u973A\u97BF\u97E1\u9864\u98C9\u98C6\u98C0\u9958\u9956\u9A39\u9A3D\u9A46\u9A44\u9A42\u9A41\u9A3A"],["f6a1","\u9A3F\u9ACD\u9B15\u9B17\u9B18\u9B16\u9B3A\u9B52\u9C2B\u9C1D\u9C1C\u9C2C\u9C23\u9C28\u9C29\u9C24\u9C21\u9DB7\u9DB6\u9DBC\u9DC1\u9DC7\u9DCA\u9DCF\u9DBE\u9DC5\u9DC3\u9DBB\u9DB5\u9DCE\u9DB9\u9DBA\u9DAC\u9DC8\u9DB1\u9DAD\u9DCC\u9DB3\u9DCD\u9DB2\u9E7A\u9E9C\u9EEB\u9EEE\u9EED\u9F1B\u9F18\u9F1A\u9F31\u9F4E\u9F65\u9F64\u9F92\u4EB9\u56C6\u56C5\u56CB\u5971\u5B4B\u5B4C\u5DD5\u5DD1\u5EF2\u6521\u6520\u6526\u6522\u6B0B\u6B08\u6B09\u6C0D\u7055\u7056\u7057\u7052\u721E\u721F\u72A9\u737F\u74D8\u74D5\u74D9\u74D7\u766D\u76AD\u7935\u79B4\u7A70\u7A71\u7C57\u7C5C\u7C59\u7C5B\u7C5A"],["f740","\u7CF4\u7CF1\u7E91\u7F4F\u7F87\u81DE\u826B\u8634\u8635\u8633\u862C\u8632\u8636\u882C\u8828\u8826\u882A\u8825\u8971\u89BF\u89BE\u89FB\u8B7E\u8B84\u8B82\u8B86\u8B85\u8B7F\u8D15\u8E95\u8E94\u8E9A\u8E92\u8E90\u8E96\u8E97\u8F60\u8F62\u9147\u944C\u9450\u944A\u944B\u944F\u9447\u9445\u9448\u9449\u9446\u973F\u97E3\u986A\u9869\u98CB\u9954\u995B\u9A4E\u9A53\u9A54\u9A4C\u9A4F\u9A48\u9A4A"],["f7a1","\u9A49\u9A52\u9A50\u9AD0\u9B19\u9B2B\u9B3B\u9B56\u9B55\u9C46\u9C48\u9C3F\u9C44\u9C39\u9C33\u9C41\u9C3C\u9C37\u9C34\u9C32\u9C3D\u9C36\u9DDB\u9DD2\u9DDE\u9DDA\u9DCB\u9DD0\u9DDC\u9DD1\u9DDF\u9DE9\u9DD9\u9DD8\u9DD6\u9DF5\u9DD5\u9DDD\u9EB6\u9EF0\u9F35\u9F33\u9F32\u9F42\u9F6B\u9F95\u9FA2\u513D\u5299\u58E8\u58E7\u5972\u5B4D\u5DD8\u882F\u5F4F\u6201\u6203\u6204\u6529\u6525\u6596\u66EB\u6B11\u6B12\u6B0F\u6BCA\u705B\u705A\u7222\u7382\u7381\u7383\u7670\u77D4\u7C67\u7C66\u7E95\u826C\u863A\u8640\u8639\u863C\u8631\u863B\u863E\u8830\u8832\u882E\u8833\u8976\u8974\u8973\u89FE"],["f840","\u8B8C\u8B8E\u8B8B\u8B88\u8C45\u8D19\u8E98\u8F64\u8F63\u91BC\u9462\u9455\u945D\u9457\u945E\u97C4\u97C5\u9800\u9A56\u9A59\u9B1E\u9B1F\u9B20\u9C52\u9C58\u9C50\u9C4A\u9C4D\u9C4B\u9C55\u9C59\u9C4C\u9C4E\u9DFB\u9DF7\u9DEF\u9DE3\u9DEB\u9DF8\u9DE4\u9DF6\u9DE1\u9DEE\u9DE6\u9DF2\u9DF0\u9DE2\u9DEC\u9DF4\u9DF3\u9DE8\u9DED\u9EC2\u9ED0\u9EF2\u9EF3\u9F06\u9F1C\u9F38\u9F37\u9F36\u9F43\u9F4F"],["f8a1","\u9F71\u9F70\u9F6E\u9F6F\u56D3\u56CD\u5B4E\u5C6D\u652D\u66ED\u66EE\u6B13\u705F\u7061\u705D\u7060\u7223\u74DB\u74E5\u77D5\u7938\u79B7\u79B6\u7C6A\u7E97\u7F89\u826D\u8643\u8838\u8837\u8835\u884B\u8B94\u8B95\u8E9E\u8E9F\u8EA0\u8E9D\u91BE\u91BD\u91C2\u946B\u9468\u9469\u96E5\u9746\u9743\u9747\u97C7\u97E5\u9A5E\u9AD5\u9B59\u9C63\u9C67\u9C66\u9C62\u9C5E\u9C60\u9E02\u9DFE\u9E07\u9E03\u9E06\u9E05\u9E00\u9E01\u9E09\u9DFF\u9DFD\u9E04\u9EA0\u9F1E\u9F46\u9F74\u9F75\u9F76\u56D4\u652E\u65B8\u6B18\u6B19\u6B17\u6B1A\u7062\u7226\u72AA\u77D8\u77D9\u7939\u7C69\u7C6B\u7CF6\u7E9A"],["f940","\u7E98\u7E9B\u7E99\u81E0\u81E1\u8646\u8647\u8648\u8979\u897A\u897C\u897B\u89FF\u8B98\u8B99\u8EA5\u8EA4\u8EA3\u946E\u946D\u946F\u9471\u9473\u9749\u9872\u995F\u9C68\u9C6E\u9C6D\u9E0B\u9E0D\u9E10\u9E0F\u9E12\u9E11\u9EA1\u9EF5\u9F09\u9F47\u9F78\u9F7B\u9F7A\u9F79\u571E\u7066\u7C6F\u883C\u8DB2\u8EA6\u91C3\u9474\u9478\u9476\u9475\u9A60\u9C74\u9C73\u9C71\u9C75\u9E14\u9E13\u9EF6\u9F0A"],["f9a1","\u9FA4\u7068\u7065\u7CF7\u866A\u883E\u883D\u883F\u8B9E\u8C9C\u8EA9\u8EC9\u974B\u9873\u9874\u98CC\u9961\u99AB\u9A64\u9A66\u9A67\u9B24\u9E15\u9E17\u9F48\u6207\u6B1E\u7227\u864C\u8EA8\u9482\u9480\u9481\u9A69\u9A68\u9B2E\u9E19\u7229\u864B\u8B9F\u9483\u9C79\u9EB7\u7675\u9A6B\u9C7A\u9E1D\u7069\u706A\u9EA4\u9F7E\u9F49\u9F98\u7881\u92B9\u88CF\u58BB\u6052\u7CA7\u5AFA\u2554\u2566\u2557\u2560\u256C\u2563\u255A\u2569\u255D\u2552\u2564\u2555\u255E\u256A\u2561\u2558\u2567\u255B\u2553\u2565\u2556\u255F\u256B\u2562\u2559\u2568\u255C\u2551\u2550\u256D\u256E\u2570\u256F\u2593"]]});var VT=v((Z3e,eZ)=>{eZ.exports=[["8740","\u43F0\u4C32\u4603\u45A6\u4578\u{27267}\u4D77\u45B3\u{27CB1}\u4CE2\u{27CC5}\u3B95\u4736\u4744\u4C47\u4C40\u{242BF}\u{23617}\u{27352}\u{26E8B}\u{270D2}\u4C57\u{2A351}\u474F\u45DA\u4C85\u{27C6C}\u4D07\u4AA4\u46A1\u{26B23}\u7225\u{25A54}\u{21A63}\u{23E06}\u{23F61}\u664D\u56FB"],["8767","\u7D95\u591D\u{28BB9}\u3DF4\u9734\u{27BEF}\u5BDB\u{21D5E}\u5AA4\u3625\u{29EB0}\u5AD1\u5BB7\u5CFC\u676E\u8593\u{29945}\u7461\u749D\u3875\u{21D53}\u{2369E}\u{26021}\u3EEC"],["87a1","\u{258DE}\u3AF5\u7AFC\u9F97\u{24161}\u{2890D}\u{231EA}\u{20A8A}\u{2325E}\u430A\u8484\u9F96\u942F\u4930\u8613\u5896\u974A\u9218\u79D0\u7A32\u6660\u6A29\u889D\u744C\u7BC5\u6782\u7A2C\u524F\u9046\u34E6\u73C4\u{25DB9}\u74C6\u9FC7\u57B3\u492F\u544C\u4131\u{2368E}\u5818\u7A72\u{27B65}\u8B8F\u46AE\u{26E88}\u4181\u{25D99}\u7BAE\u{224BC}\u9FC8\u{224C1}\u{224C9}\u{224CC}\u9FC9\u8504\u{235BB}\u40B4\u9FCA\u44E1\u{2ADFF}\u62C1\u706E\u9FCB"],["8840","\u31C0",4,"\u{2010C}\u31C5\u{200D1}\u{200CD}\u31C6\u31C7\u{200CB}\u{21FE8}\u31C8\u{200CA}\u31C9\u31CA\u31CB\u31CC\u{2010E}\u31CD\u31CE\u0100\xC1\u01CD\xC0\u0112\xC9\u011A\xC8\u014C\xD3\u01D1\xD2\u0FFF\xCA\u0304\u1EBE\u0FFF\xCA\u030C\u1EC0\xCA\u0101\xE1\u01CE\xE0\u0251\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA"],["88a1","\u01DC\xFC\u0FFF\xEA\u0304\u1EBF\u0FFF\xEA\u030C\u1EC1\xEA\u0261\u23DA\u23DB"],["8940","\u{2A3A9}\u{21145}"],["8943","\u650A"],["8946","\u4E3D\u6EDD\u9D4E\u91DF"],["894c","\u{27735}\u6491\u4F1A\u4F28\u4FA8\u5156\u5174\u519C\u51E4\u52A1\u52A8\u533B\u534E\u53D1\u53D8\u56E2\u58F0\u5904\u5907\u5932\u5934\u5B66\u5B9E\u5B9F\u5C9A\u5E86\u603B\u6589\u67FE\u6804\u6865\u6D4E\u70BC\u7535\u7EA4\u7EAC\u7EBA\u7EC7\u7ECF\u7EDF\u7F06\u7F37\u827A\u82CF\u836F\u89C6\u8BBE\u8BE2\u8F66\u8F67\u8F6E"],["89a1","\u7411\u7CFC\u7DCD\u6946\u7AC9\u5227"],["89ab","\u918C\u78B8\u915E\u80BC"],["89b0","\u8D0B\u80F6\u{209E7}"],["89b5","\u809F\u9EC7\u4CCD\u9DC9\u9E0C\u4C3E\u{29DF6}\u{2700E}\u9E0A\u{2A133}\u35C1"],["89c1","\u6E9A\u823E\u7519"],["89c5","\u4911\u9A6C\u9A8F\u9F99\u7987\u{2846C}\u{21DCA}\u{205D0}\u{22AE6}\u4E24\u4E81\u4E80\u4E87\u4EBF\u4EEB\u4F37\u344C\u4FBD\u3E48\u5003\u5088\u347D\u3493\u34A5\u5186\u5905\u51DB\u51FC\u5205\u4E89\u5279\u5290\u5327\u35C7\u53A9\u3551\u53B0\u3553\u53C2\u5423\u356D\u3572\u3681\u5493\u54A3\u54B4\u54B9\u54D0\u54EF\u5518\u5523\u5528\u3598\u553F\u35A5\u35BF\u55D7\u35C5"],["8a40","\u{27D84}\u5525"],["8a43","\u{20C42}\u{20D15}\u{2512B}\u5590\u{22CC6}\u39EC\u{20341}\u8E46\u{24DB8}\u{294E5}\u4053\u{280BE}\u777A\u{22C38}\u3A34\u47D5\u{2815D}\u{269F2}\u{24DEA}\u64DD\u{20D7C}\u{20FB4}\u{20CD5}\u{210F4}\u648D\u8E7E\u{20E96}\u{20C0B}\u{20F64}\u{22CA9}\u{28256}\u{244D3}"],["8a64","\u{20D46}\u{29A4D}\u{280E9}\u47F4\u{24EA7}\u{22CC2}\u9AB2\u3A67\u{295F4}\u3FED\u3506\u{252C7}\u{297D4}\u{278C8}\u{22D44}\u9D6E\u9815"],["8a76","\u43D9\u{260A5}\u64B4\u54E3\u{22D4C}\u{22BCA}\u{21077}\u39FB\u{2106F}"],["8aa1","\u{266DA}\u{26716}\u{279A0}\u64EA\u{25052}\u{20C43}\u8E68\u{221A1}\u{28B4C}\u{20731}"],["8aac","\u480B\u{201A9}\u3FFA\u5873\u{22D8D}"],["8ab2","\u{245C8}\u{204FC}\u{26097}\u{20F4C}\u{20D96}\u5579\u40BB\u43BA"],["8abb","\u4AB4\u{22A66}\u{2109D}\u81AA\u98F5\u{20D9C}\u6379\u39FE\u{22775}\u8DC0\u56A1\u647C\u3E43"],["8ac9","\u{2A601}\u{20E09}\u{22ACF}\u{22CC9}"],["8ace","\u{210C8}\u{239C2}\u3992\u3A06\u{2829B}\u3578\u{25E49}\u{220C7}\u5652\u{20F31}\u{22CB2}\u{29720}\u34BC\u6C3D\u{24E3B}"],["8adf","\u{27574}\u{22E8B}\u{22208}\u{2A65B}\u{28CCD}\u{20E7A}\u{20C34}\u{2681C}\u7F93\u{210CF}\u{22803}\u{22939}\u35FB\u{251E3}\u{20E8C}\u{20F8D}\u{20EAA}\u3F93\u{20F30}\u{20D47}\u{2114F}\u{20E4C}"],["8af6","\u{20EAB}\u{20BA9}\u{20D48}\u{210C0}\u{2113D}\u3FF9\u{22696}\u6432\u{20FAD}"],["8b40","\u{233F4}\u{27639}\u{22BCE}\u{20D7E}\u{20D7F}\u{22C51}\u{22C55}\u3A18\u{20E98}\u{210C7}\u{20F2E}\u{2A632}\u{26B50}\u{28CD2}\u{28D99}\u{28CCA}\u95AA\u54CC\u82C4\u55B9"],["8b55","\u{29EC3}\u9C26\u9AB6\u{2775E}\u{22DEE}\u7140\u816D\u80EC\u5C1C\u{26572}\u8134\u3797\u535F\u{280BD}\u91B6\u{20EFA}\u{20E0F}\u{20E77}\u{20EFB}\u35DD\u{24DEB}\u3609\u{20CD6}\u56AF\u{227B5}\u{210C9}\u{20E10}\u{20E78}\u{21078}\u{21148}\u{28207}\u{21455}\u{20E79}\u{24E50}\u{22DA4}\u5A54\u{2101D}\u{2101E}\u{210F5}\u{210F6}\u579C\u{20E11}"],["8ba1","\u{27694}\u{282CD}\u{20FB5}\u{20E7B}\u{2517E}\u3703\u{20FB6}\u{21180}\u{252D8}\u{2A2BD}\u{249DA}\u{2183A}\u{24177}\u{2827C}\u5899\u5268\u361A\u{2573D}\u7BB2\u5B68\u4800\u4B2C\u9F27\u49E7\u9C1F\u9B8D\u{25B74}\u{2313D}\u55FB\u35F2\u5689\u4E28\u5902\u{21BC1}\u{2F878}\u9751\u{20086}\u4E5B\u4EBB\u353E\u5C23\u5F51\u5FC4\u38FA\u624C\u6535\u6B7A\u6C35\u6C3A\u706C\u722B\u4E2C\u72AD\u{248E9}\u7F52\u793B\u7CF9\u7F53\u{2626A}\u34C1"],["8bde","\u{2634B}\u8002\u8080\u{26612}\u{26951}\u535D\u8864\u89C1\u{278B2}\u8BA0\u8D1D\u9485\u9578\u957F\u95E8\u{28E0F}\u97E6\u9875\u98CE\u98DE\u9963\u{29810}\u9C7C\u9E1F\u9EC4\u6B6F\uF907\u4E37\u{20087}\u961D\u6237\u94A2"],["8c40","\u503B\u6DFE\u{29C73}\u9FA6\u3DC9\u888F\u{2414E}\u7077\u5CF5\u4B20\u{251CD}\u3559\u{25D30}\u6122\u{28A32}\u8FA7\u91F6\u7191\u6719\u73BA\u{23281}\u{2A107}\u3C8B\u{21980}\u4B10\u78E4\u7402\u51AE\u{2870F}\u4009\u6A63\u{2A2BA}\u4223\u860F\u{20A6F}\u7A2A\u{29947}\u{28AEA}\u9755\u704D\u5324\u{2207E}\u93F4\u76D9\u{289E3}\u9FA7\u77DD\u4EA3\u4FF0\u50BC\u4E2F\u4F17\u9FA8\u5434\u7D8B\u5892\u58D0\u{21DB6}\u5E92\u5E99\u5FC2\u{22712}\u658B"],["8ca1","\u{233F9}\u6919\u6A43\u{23C63}\u6CFF"],["8ca7","\u7200\u{24505}\u738C\u3EDB\u{24A13}\u5B15\u74B9\u8B83\u{25CA4}\u{25695}\u7A93\u7BEC\u7CC3\u7E6C\u82F8\u8597\u9FA9\u8890\u9FAA\u8EB9\u9FAB\u8FCF\u855F\u99E0\u9221\u9FAC\u{28DB9}\u{2143F}\u4071\u42A2\u5A1A"],["8cc9","\u9868\u676B\u4276\u573D"],["8cce","\u85D6\u{2497B}\u82BF\u{2710D}\u4C81\u{26D74}\u5D7B\u{26B15}\u{26FBE}\u9FAD\u9FAE\u5B96\u9FAF\u66E7\u7E5B\u6E57\u79CA\u3D88\u44C3\u{23256}\u{22796}\u439A\u4536"],["8ce6","\u5CD5\u{23B1A}\u8AF9\u5C78\u3D12\u{23551}\u5D78\u9FB2\u7157\u4558\u{240EC}\u{21E23}\u4C77\u3978\u344A\u{201A4}\u{26C41}\u8ACC\u4FB4\u{20239}\u59BF\u816C\u9856\u{298FA}\u5F3B"],["8d40","\u{20B9F}"],["8d42","\u{221C1}\u{2896D}\u4102\u46BB\u{29079}\u3F07\u9FB3\u{2A1B5}\u40F8\u37D6\u46F7\u{26C46}\u417C\u{286B2}\u{273FF}\u456D\u38D4\u{2549A}\u4561\u451B\u4D89\u4C7B\u4D76\u45EA\u3FC8\u{24B0F}\u3661\u44DE\u44BD\u41ED\u5D3E\u5D48\u5D56\u3DFC\u380F\u5DA4\u5DB9\u3820\u3838\u5E42\u5EBD\u5F25\u5F83\u3908\u3914\u393F\u394D\u60D7\u613D\u5CE5\u3989\u61B7\u61B9\u61CF\u39B8\u622C\u6290\u62E5\u6318\u39F8\u56B1"],["8da1","\u3A03\u63E2\u63FB\u6407\u645A\u3A4B\u64C0\u5D15\u5621\u9F9F\u3A97\u6586\u3ABD\u65FF\u6653\u3AF2\u6692\u3B22\u6716\u3B42\u67A4\u6800\u3B58\u684A\u6884\u3B72\u3B71\u3B7B\u6909\u6943\u725C\u6964\u699F\u6985\u3BBC\u69D6\u3BDD\u6A65\u6A74\u6A71\u6A82\u3BEC\u6A99\u3BF2\u6AAB\u6AB5\u6AD4\u6AF6\u6B81\u6BC1\u6BEA\u6C75\u6CAA\u3CCB\u6D02\u6D06\u6D26\u6D81\u3CEF\u6DA4\u6DB1\u6E15\u6E18\u6E29\u6E86\u{289C0}\u6EBB\u6EE2\u6EDA\u9F7F\u6EE8\u6EE9\u6F24\u6F34\u3D46\u{23F41}\u6F81\u6FBE\u3D6A\u3D75\u71B7\u5C99\u3D8A\u702C\u3D91\u7050\u7054\u706F\u707F\u7089\u{20325}\u43C1\u35F1\u{20ED8}"],["8e40","\u{23ED7}\u57BE\u{26ED3}\u713E\u{257E0}\u364E\u69A2\u{28BE9}\u5B74\u7A49\u{258E1}\u{294D9}\u7A65\u7A7D\u{259AC}\u7ABB\u7AB0\u7AC2\u7AC3\u71D1\u{2648D}\u41CA\u7ADA\u7ADD\u7AEA\u41EF\u54B2\u{25C01}\u7B0B\u7B55\u7B29\u{2530E}\u{25CFE}\u7BA2\u7B6F\u839C\u{25BB4}\u{26C7F}\u7BD0\u8421\u7B92\u7BB8\u{25D20}\u3DAD\u{25C65}\u8492\u7BFA\u7C06\u7C35\u{25CC1}\u7C44\u7C83\u{24882}\u7CA6\u667D\u{24578}\u7CC9\u7CC7\u7CE6\u7C74\u7CF3\u7CF5\u7CCE"],["8ea1","\u7E67\u451D\u{26E44}\u7D5D\u{26ED6}\u748D\u7D89\u7DAB\u7135\u7DB3\u7DD2\u{24057}\u{26029}\u7DE4\u3D13\u7DF5\u{217F9}\u7DE5\u{2836D}\u7E1D\u{26121}\u{2615A}\u7E6E\u7E92\u432B\u946C\u7E27\u7F40\u7F41\u7F47\u7936\u{262D0}\u99E1\u7F97\u{26351}\u7FA3\u{21661}\u{20068}\u455C\u{23766}\u4503\u{2833A}\u7FFA\u{26489}\u8005\u8008\u801D\u8028\u802F\u{2A087}\u{26CC3}\u803B\u803C\u8061\u{22714}\u4989\u{26626}\u{23DE3}\u{266E8}\u6725\u80A7\u{28A48}\u8107\u811A\u58B0\u{226F6}\u6C7F\u{26498}\u{24FB8}\u64E7\u{2148A}\u8218\u{2185E}\u6A53\u{24A65}\u{24A95}\u447A\u8229\u{20B0D}\u{26A52}\u{23D7E}\u4FF9\u{214FD}\u84E2\u8362\u{26B0A}\u{249A7}\u{23530}\u{21773}\u{23DF8}\u82AA\u691B\u{2F994}\u41DB"],["8f40","\u854B\u82D0\u831A\u{20E16}\u{217B4}\u36C1\u{2317D}\u{2355A}\u827B\u82E2\u8318\u{23E8B}\u{26DA3}\u{26B05}\u{26B97}\u{235CE}\u3DBF\u831D\u55EC\u8385\u450B\u{26DA5}\u83AC\u83C1\u83D3\u347E\u{26ED4}\u6A57\u855A\u3496\u{26E42}\u{22EEF}\u8458\u{25BE4}\u8471\u3DD3\u44E4\u6AA7\u844A\u{23CB5}\u7958\u84A8\u{26B96}\u{26E77}\u{26E43}\u84DE\u840F\u8391\u44A0\u8493\u84E4\u{25C91}\u4240\u{25CC0}\u4543\u8534\u5AF2\u{26E99}\u4527\u8573\u4516\u67BF\u8616"],["8fa1","\u{28625}\u{2863B}\u85C1\u{27088}\u8602\u{21582}\u{270CD}\u{2F9B2}\u456A\u8628\u3648\u{218A2}\u53F7\u{2739A}\u867E\u8771\u{2A0F8}\u87EE\u{22C27}\u87B1\u87DA\u880F\u5661\u866C\u6856\u460F\u8845\u8846\u{275E0}\u{23DB9}\u{275E4}\u885E\u889C\u465B\u88B4\u88B5\u63C1\u88C5\u7777\u{2770F}\u8987\u898A\u89A6\u89A9\u89A7\u89BC\u{28A25}\u89E7\u{27924}\u{27ABD}\u8A9C\u7793\u91FE\u8A90\u{27A59}\u7AE9\u{27B3A}\u{23F8F}\u4713\u{27B38}\u717C\u8B0C\u8B1F\u{25430}\u{25565}\u8B3F\u8B4C\u8B4D\u8AA9\u{24A7A}\u8B90\u8B9B\u8AAF\u{216DF}\u4615\u884F\u8C9B\u{27D54}\u{27D8F}\u{2F9D4}\u3725\u{27D53}\u8CD6\u{27D98}\u{27DBD}\u8D12\u8D03\u{21910}\u8CDB\u705C\u8D11\u{24CC9}\u3ED0\u8D77"],["9040","\u8DA9\u{28002}\u{21014}\u{2498A}\u3B7C\u{281BC}\u{2710C}\u7AE7\u8EAD\u8EB6\u8EC3\u92D4\u8F19\u8F2D\u{28365}\u{28412}\u8FA5\u9303\u{2A29F}\u{20A50}\u8FB3\u492A\u{289DE}\u{2853D}\u{23DBB}\u5EF8\u{23262}\u8FF9\u{2A014}\u{286BC}\u{28501}\u{22325}\u3980\u{26ED7}\u9037\u{2853C}\u{27ABE}\u9061\u{2856C}\u{2860B}\u90A8\u{28713}\u90C4\u{286E6}\u90AE\u90FD\u9167\u3AF0\u91A9\u91C4\u7CAC\u{28933}\u{21E89}\u920E\u6C9F\u9241\u9262\u{255B9}\u92B9\u{28AC6}\u{23C9B}\u{28B0C}\u{255DB}"],["90a1","\u{20D31}\u932C\u936B\u{28AE1}\u{28BEB}\u708F\u5AC3\u{28AE2}\u{28AE5}\u4965\u9244\u{28BEC}\u{28C39}\u{28BFF}\u9373\u945B\u8EBC\u9585\u95A6\u9426\u95A0\u6FF6\u42B9\u{2267A}\u{286D8}\u{2127C}\u{23E2E}\u49DF\u6C1C\u967B\u9696\u416C\u96A3\u{26ED5}\u61DA\u96B6\u78F5\u{28AE0}\u96BD\u53CC\u49A1\u{26CB8}\u{20274}\u{26410}\u{290AF}\u{290E5}\u{24AD1}\u{21915}\u{2330A}\u9731\u8642\u9736\u4A0F\u453D\u4585\u{24AE9}\u7075\u5B41\u971B\u975C\u{291D5}\u9757\u5B4A\u{291EB}\u975F\u9425\u50D0\u{230B7}\u{230BC}\u9789\u979F\u97B1\u97BE\u97C0\u97D2\u97E0\u{2546C}\u97EE\u741C\u{29433}\u97FF\u97F5\u{2941D}\u{2797A}\u4AD1\u9834\u9833\u984B\u9866\u3B0E\u{27175}\u3D51\u{20630}\u{2415C}"],["9140","\u{25706}\u98CA\u98B7\u98C8\u98C7\u4AFF\u{26D27}\u{216D3}\u55B0\u98E1\u98E6\u98EC\u9378\u9939\u{24A29}\u4B72\u{29857}\u{29905}\u99F5\u9A0C\u9A3B\u9A10\u9A58\u{25725}\u36C4\u{290B1}\u{29BD5}\u9AE0\u9AE2\u{29B05}\u9AF4\u4C0E\u9B14\u9B2D\u{28600}\u5034\u9B34\u{269A8}\u38C3\u{2307D}\u9B50\u9B40\u{29D3E}\u5A45\u{21863}\u9B8E\u{2424B}\u9C02\u9BFF\u9C0C\u{29E68}\u9DD4\u{29FB7}\u{2A192}\u{2A1AB}\u{2A0E1}\u{2A123}\u{2A1DF}\u9D7E\u9D83\u{2A134}\u9E0E\u6888"],["91a1","\u9DC4\u{2215B}\u{2A193}\u{2A220}\u{2193B}\u{2A233}\u9D39\u{2A0B9}\u{2A2B4}\u9E90\u9E95\u9E9E\u9EA2\u4D34\u9EAA\u9EAF\u{24364}\u9EC1\u3B60\u39E5\u3D1D\u4F32\u37BE\u{28C2B}\u9F02\u9F08\u4B96\u9424\u{26DA2}\u9F17\u9F16\u9F39\u569F\u568A\u9F45\u99B8\u{2908B}\u97F2\u847F\u9F62\u9F69\u7ADC\u9F8E\u7216\u4BBE\u{24975}\u{249BB}\u7177\u{249F8}\u{24348}\u{24A51}\u739E\u{28BDA}\u{218FA}\u799F\u{2897E}\u{28E36}\u9369\u93F3\u{28A44}\u92EC\u9381\u93CB\u{2896C}\u{244B9}\u7217\u3EEB\u7772\u7A43\u70D0\u{24473}\u{243F8}\u717E\u{217EF}\u70A3\u{218BE}\u{23599}\u3EC7\u{21885}\u{2542F}\u{217F8}\u3722\u{216FB}\u{21839}\u36E1\u{21774}\u{218D1}\u{25F4B}\u3723\u{216C0}\u575B\u{24A25}\u{213FE}\u{212A8}"],["9240","\u{213C6}\u{214B6}\u8503\u{236A6}\u8503\u8455\u{24994}\u{27165}\u{23E31}\u{2555C}\u{23EFB}\u{27052}\u44F4\u{236EE}\u{2999D}\u{26F26}\u67F9\u3733\u3C15\u3DE7\u586C\u{21922}\u6810\u4057\u{2373F}\u{240E1}\u{2408B}\u{2410F}\u{26C21}\u54CB\u569E\u{266B1}\u5692\u{20FDF}\u{20BA8}\u{20E0D}\u93C6\u{28B13}\u939C\u4EF8\u512B\u3819\u{24436}\u4EBC\u{20465}\u{2037F}\u4F4B\u4F8A\u{25651}\u5A68\u{201AB}\u{203CB}\u3999\u{2030A}\u{20414}\u3435\u4F29\u{202C0}\u{28EB3}\u{20275}\u8ADA\u{2020C}\u4E98"],["92a1","\u50CD\u510D\u4FA2\u4F03\u{24A0E}\u{23E8A}\u4F42\u502E\u506C\u5081\u4FCC\u4FE5\u5058\u50FC\u5159\u515B\u515D\u515E\u6E76\u{23595}\u{23E39}\u{23EBF}\u6D72\u{21884}\u{23E89}\u51A8\u51C3\u{205E0}\u44DD\u{204A3}\u{20492}\u{20491}\u8D7A\u{28A9C}\u{2070E}\u5259\u52A4\u{20873}\u52E1\u936E\u467A\u718C\u{2438C}\u{20C20}\u{249AC}\u{210E4}\u69D1\u{20E1D}\u7479\u3EDE\u7499\u7414\u7456\u7398\u4B8E\u{24ABC}\u{2408D}\u53D0\u3584\u720F\u{240C9}\u55B4\u{20345}\u54CD\u{20BC6}\u571D\u925D\u96F4\u9366\u57DD\u578D\u577F\u363E\u58CB\u5A99\u{28A46}\u{216FA}\u{2176F}\u{21710}\u5A2C\u59B8\u928F\u5A7E\u5ACF\u5A12\u{25946}\u{219F3}\u{21861}\u{24295}\u36F5\u6D05\u7443\u5A21\u{25E83}"],["9340","\u5A81\u{28BD7}\u{20413}\u93E0\u748C\u{21303}\u7105\u4972\u9408\u{289FB}\u93BD\u37A0\u5C1E\u5C9E\u5E5E\u5E48\u{21996}\u{2197C}\u{23AEE}\u5ECD\u5B4F\u{21903}\u{21904}\u3701\u{218A0}\u36DD\u{216FE}\u36D3\u812A\u{28A47}\u{21DBA}\u{23472}\u{289A8}\u5F0C\u5F0E\u{21927}\u{217AB}\u5A6B\u{2173B}\u5B44\u8614\u{275FD}\u8860\u607E\u{22860}\u{2262B}\u5FDB\u3EB8\u{225AF}\u{225BE}\u{29088}\u{26F73}\u61C0\u{2003E}\u{20046}\u{2261B}\u6199\u6198\u6075\u{22C9B}\u{22D07}\u{246D4}\u{2914D}"],["93a1","\u6471\u{24665}\u{22B6A}\u3A29\u{22B22}\u{23450}\u{298EA}\u{22E78}\u6337\u{2A45B}\u64B6\u6331\u63D1\u{249E3}\u{22D67}\u62A4\u{22CA1}\u643B\u656B\u6972\u3BF4\u{2308E}\u{232AD}\u{24989}\u{232AB}\u550D\u{232E0}\u{218D9}\u{2943F}\u66CE\u{23289}\u{231B3}\u3AE0\u4190\u{25584}\u{28B22}\u{2558F}\u{216FC}\u{2555B}\u{25425}\u78EE\u{23103}\u{2182A}\u{23234}\u3464\u{2320F}\u{23182}\u{242C9}\u668E\u{26D24}\u666B\u4B93\u6630\u{27870}\u{21DEB}\u6663\u{232D2}\u{232E1}\u661E\u{25872}\u38D1\u{2383A}\u{237BC}\u3B99\u{237A2}\u{233FE}\u74D0\u3B96\u678F\u{2462A}\u68B6\u681E\u3BC4\u6ABE\u3863\u{237D5}\u{24487}\u6A33\u6A52\u6AC9\u6B05\u{21912}\u6511\u6898\u6A4C\u3BD7\u6A7A\u6B57\u{23FC0}\u{23C9A}\u93A0\u92F2\u{28BEA}\u{28ACB}"],["9440","\u9289\u{2801E}\u{289DC}\u9467\u6DA5\u6F0B\u{249EC}\u6D67\u{23F7F}\u3D8F\u6E04\u{2403C}\u5A3D\u6E0A\u5847\u6D24\u7842\u713B\u{2431A}\u{24276}\u70F1\u7250\u7287\u7294\u{2478F}\u{24725}\u5179\u{24AA4}\u{205EB}\u747A\u{23EF8}\u{2365F}\u{24A4A}\u{24917}\u{25FE1}\u3F06\u3EB1\u{24ADF}\u{28C23}\u{23F35}\u60A7\u3EF3\u74CC\u743C\u9387\u7437\u449F\u{26DEA}\u4551\u7583\u3F63\u{24CD9}\u{24D06}\u3F58\u7555\u7673\u{2A5C6}\u3B19\u7468\u{28ACC}\u{249AB}\u{2498E}\u3AFB"],["94a1","\u3DCD\u{24A4E}\u3EFF\u{249C5}\u{248F3}\u91FA\u5732\u9342\u{28AE3}\u{21864}\u50DF\u{25221}\u{251E7}\u7778\u{23232}\u770E\u770F\u777B\u{24697}\u{23781}\u3A5E\u{248F0}\u7438\u749B\u3EBF\u{24ABA}\u{24AC7}\u40C8\u{24A96}\u{261AE}\u9307\u{25581}\u781E\u788D\u7888\u78D2\u73D0\u7959\u{27741}\u{256E3}\u410E\u799B\u8496\u79A5\u6A2D\u{23EFA}\u7A3A\u79F4\u416E\u{216E6}\u4132\u9235\u79F1\u{20D4C}\u{2498C}\u{20299}\u{23DBA}\u{2176E}\u3597\u556B\u3570\u36AA\u{201D4}\u{20C0D}\u7AE2\u5A59\u{226F5}\u{25AAF}\u{25A9C}\u5A0D\u{2025B}\u78F0\u5A2A\u{25BC6}\u7AFE\u41F9\u7C5D\u7C6D\u4211\u{25BB3}\u{25EBC}\u{25EA6}\u7CCD\u{249F9}\u{217B0}\u7C8E\u7C7C\u7CAE\u6AB2\u7DDC\u7E07\u7DD3\u7F4E\u{26261}"],["9540","\u{2615C}\u{27B48}\u7D97\u{25E82}\u426A\u{26B75}\u{20916}\u67D6\u{2004E}\u{235CF}\u57C4\u{26412}\u{263F8}\u{24962}\u7FDD\u7B27\u{2082C}\u{25AE9}\u{25D43}\u7B0C\u{25E0E}\u99E6\u8645\u9A63\u6A1C\u{2343F}\u39E2\u{249F7}\u{265AD}\u9A1F\u{265A0}\u8480\u{27127}\u{26CD1}\u44EA\u8137\u4402\u80C6\u8109\u8142\u{267B4}\u98C3\u{26A42}\u8262\u8265\u{26A51}\u8453\u{26DA7}\u8610\u{2721B}\u5A86\u417F\u{21840}\u5B2B\u{218A1}\u5AE4\u{218D8}\u86A0\u{2F9BC}\u{23D8F}\u882D\u{27422}\u5A02"],["95a1","\u886E\u4F45\u8887\u88BF\u88E6\u8965\u894D\u{25683}\u8954\u{27785}\u{27784}\u{28BF5}\u{28BD9}\u{28B9C}\u{289F9}\u3EAD\u84A3\u46F5\u46CF\u37F2\u8A3D\u8A1C\u{29448}\u5F4D\u922B\u{24284}\u65D4\u7129\u70C4\u{21845}\u9D6D\u8C9F\u8CE9\u{27DDC}\u599A\u77C3\u59F0\u436E\u36D4\u8E2A\u8EA7\u{24C09}\u8F30\u8F4A\u42F4\u6C58\u6FBB\u{22321}\u489B\u6F79\u6E8B\u{217DA}\u9BE9\u36B5\u{2492F}\u90BB\u9097\u5571\u4906\u91BB\u9404\u{28A4B}\u4062\u{28AFC}\u9427\u{28C1D}\u{28C3B}\u84E5\u8A2B\u9599\u95A7\u9597\u9596\u{28D34}\u7445\u3EC2\u{248FF}\u{24A42}\u{243EA}\u3EE7\u{23225}\u968F\u{28EE7}\u{28E66}\u{28E65}\u3ECC\u{249ED}\u{24A78}\u{23FEE}\u7412\u746B\u3EFC\u9741\u{290B0}"],["9640","\u6847\u4A1D\u{29093}\u{257DF}\u975D\u9368\u{28989}\u{28C26}\u{28B2F}\u{263BE}\u92BA\u5B11\u8B69\u493C\u73F9\u{2421B}\u979B\u9771\u9938\u{20F26}\u5DC1\u{28BC5}\u{24AB2}\u981F\u{294DA}\u92F6\u{295D7}\u91E5\u44C0\u{28B50}\u{24A67}\u{28B64}\u98DC\u{28A45}\u3F00\u922A\u4925\u8414\u993B\u994D\u{27B06}\u3DFD\u999B\u4B6F\u99AA\u9A5C\u{28B65}\u{258C8}\u6A8F\u9A21\u5AFE\u9A2F\u{298F1}\u4B90\u{29948}\u99BC\u4BBD\u4B97\u937D\u5872\u{21302}\u5822\u{249B8}"],["96a1","\u{214E8}\u7844\u{2271F}\u{23DB8}\u68C5\u3D7D\u9458\u3927\u6150\u{22781}\u{2296B}\u6107\u9C4F\u9C53\u9C7B\u9C35\u9C10\u9B7F\u9BCF\u{29E2D}\u9B9F\u{2A1F5}\u{2A0FE}\u9D21\u4CAE\u{24104}\u9E18\u4CB0\u9D0C\u{2A1B4}\u{2A0ED}\u{2A0F3}\u{2992F}\u9DA5\u84BD\u{26E12}\u{26FDF}\u{26B82}\u85FC\u4533\u{26DA4}\u{26E84}\u{26DF0}\u8420\u85EE\u{26E00}\u{237D7}\u{26064}\u79E2\u{2359C}\u{23640}\u492D\u{249DE}\u3D62\u93DB\u92BE\u9348\u{202BF}\u78B9\u9277\u944D\u4FE4\u3440\u9064\u{2555D}\u783D\u7854\u78B6\u784B\u{21757}\u{231C9}\u{24941}\u369A\u4F72\u6FDA\u6FD9\u701E\u701E\u5414\u{241B5}\u57BB\u58F3\u578A\u9D16\u57D7\u7134\u34AF\u{241AC}\u71EB\u{26C40}\u{24F97}\u5B28\u{217B5}\u{28A49}"],["9740","\u610C\u5ACE\u5A0B\u42BC\u{24488}\u372C\u4B7B\u{289FC}\u93BB\u93B8\u{218D6}\u{20F1D}\u8472\u{26CC0}\u{21413}\u{242FA}\u{22C26}\u{243C1}\u5994\u{23DB7}\u{26741}\u7DA8\u{2615B}\u{260A4}\u{249B9}\u{2498B}\u{289FA}\u92E5\u73E2\u3EE9\u74B4\u{28B63}\u{2189F}\u3EE1\u{24AB3}\u6AD8\u73F3\u73FB\u3ED6\u{24A3E}\u{24A94}\u{217D9}\u{24A66}\u{203A7}\u{21424}\u{249E5}\u7448\u{24916}\u70A5\u{24976}\u9284\u73E6\u935F\u{204FE}\u9331\u{28ACE}\u{28A16}\u9386\u{28BE7}\u{255D5}\u4935\u{28A82}\u716B"],["97a1","\u{24943}\u{20CFF}\u56A4\u{2061A}\u{20BEB}\u{20CB8}\u5502\u79C4\u{217FA}\u7DFE\u{216C2}\u{24A50}\u{21852}\u452E\u9401\u370A\u{28AC0}\u{249AD}\u59B0\u{218BF}\u{21883}\u{27484}\u5AA1\u36E2\u{23D5B}\u36B0\u925F\u5A79\u{28A81}\u{21862}\u9374\u3CCD\u{20AB4}\u4A96\u398A\u50F4\u3D69\u3D4C\u{2139C}\u7175\u42FB\u{28218}\u6E0F\u{290E4}\u44EB\u6D57\u{27E4F}\u7067\u6CAF\u3CD6\u{23FED}\u{23E2D}\u6E02\u6F0C\u3D6F\u{203F5}\u7551\u36BC\u34C8\u4680\u3EDA\u4871\u59C4\u926E\u493E\u8F41\u{28C1C}\u{26BC0}\u5812\u57C8\u36D6\u{21452}\u70FE\u{24362}\u{24A71}\u{22FE3}\u{212B0}\u{223BD}\u68B9\u6967\u{21398}\u{234E5}\u{27BF4}\u{236DF}\u{28A83}\u{237D6}\u{233FA}\u{24C9F}\u6A1A\u{236AD}\u{26CB7}\u843E\u44DF\u44CE"],["9840","\u{26D26}\u{26D51}\u{26C82}\u{26FDE}\u6F17\u{27109}\u833D\u{2173A}\u83ED\u{26C80}\u{27053}\u{217DB}\u5989\u5A82\u{217B3}\u5A61\u5A71\u{21905}\u{241FC}\u372D\u59EF\u{2173C}\u36C7\u718E\u9390\u669A\u{242A5}\u5A6E\u5A2B\u{24293}\u6A2B\u{23EF9}\u{27736}\u{2445B}\u{242CA}\u711D\u{24259}\u{289E1}\u4FB0\u{26D28}\u5CC2\u{244CE}\u{27E4D}\u{243BD}\u6A0C\u{24256}\u{21304}\u70A6\u7133\u{243E9}\u3DA5\u6CDF\u{2F825}\u{24A4F}\u7E65\u59EB\u5D2F\u3DF3\u5F5C\u{24A5D}\u{217DF}\u7DA4\u8426"],["98a1","\u5485\u{23AFA}\u{23300}\u{20214}\u577E\u{208D5}\u{20619}\u3FE5\u{21F9E}\u{2A2B6}\u7003\u{2915B}\u5D70\u738F\u7CD3\u{28A59}\u{29420}\u4FC8\u7FE7\u72CD\u7310\u{27AF4}\u7338\u7339\u{256F6}\u7341\u7348\u3EA9\u{27B18}\u906C\u71F5\u{248F2}\u73E1\u81F6\u3ECA\u770C\u3ED1\u6CA2\u56FD\u7419\u741E\u741F\u3EE2\u3EF0\u3EF4\u3EFA\u74D3\u3F0E\u3F53\u7542\u756D\u7572\u758D\u3F7C\u75C8\u75DC\u3FC0\u764D\u3FD7\u7674\u3FDC\u767A\u{24F5C}\u7188\u5623\u8980\u5869\u401D\u7743\u4039\u6761\u4045\u35DB\u7798\u406A\u406F\u5C5E\u77BE\u77CB\u58F2\u7818\u70B9\u781C\u40A8\u7839\u7847\u7851\u7866\u8448\u{25535}\u7933\u6803\u7932\u4103"],["9940","\u4109\u7991\u7999\u8FBB\u7A06\u8FBC\u4167\u7A91\u41B2\u7ABC\u8279\u41C4\u7ACF\u7ADB\u41CF\u4E21\u7B62\u7B6C\u7B7B\u7C12\u7C1B\u4260\u427A\u7C7B\u7C9C\u428C\u7CB8\u4294\u7CED\u8F93\u70C0\u{20CCF}\u7DCF\u7DD4\u7DD0\u7DFD\u7FAE\u7FB4\u729F\u4397\u8020\u8025\u7B39\u802E\u8031\u8054\u3DCC\u57B4\u70A0\u80B7\u80E9\u43ED\u810C\u732A\u810E\u8112\u7560\u8114\u4401\u3B39\u8156\u8159\u815A"],["99a1","\u4413\u583A\u817C\u8184\u4425\u8193\u442D\u81A5\u57EF\u81C1\u81E4\u8254\u448F\u82A6\u8276\u82CA\u82D8\u82FF\u44B0\u8357\u9669\u698A\u8405\u70F5\u8464\u60E3\u8488\u4504\u84BE\u84E1\u84F8\u8510\u8538\u8552\u453B\u856F\u8570\u85E0\u4577\u8672\u8692\u86B2\u86EF\u9645\u878B\u4606\u4617\u88AE\u88FF\u8924\u8947\u8991\u{27967}\u8A29\u8A38\u8A94\u8AB4\u8C51\u8CD4\u8CF2\u8D1C\u4798\u585F\u8DC3\u47ED\u4EEE\u8E3A\u55D8\u5754\u8E71\u55F5\u8EB0\u4837\u8ECE\u8EE2\u8EE4\u8EED\u8EF2\u8FB7\u8FC1\u8FCA\u8FCC\u9033\u99C4\u48AD\u98E0\u9213\u491E\u9228\u9258\u926B\u92B1\u92AE\u92BF"],["9a40","\u92E3\u92EB\u92F3\u92F4\u92FD\u9343\u9384\u93AD\u4945\u4951\u9EBF\u9417\u5301\u941D\u942D\u943E\u496A\u9454\u9479\u952D\u95A2\u49A7\u95F4\u9633\u49E5\u67A0\u4A24\u9740\u4A35\u97B2\u97C2\u5654\u4AE4\u60E8\u98B9\u4B19\u98F1\u5844\u990E\u9919\u51B4\u991C\u9937\u9942\u995D\u9962\u4B70\u99C5\u4B9D\u9A3C\u9B0F\u7A83\u9B69\u9B81\u9BDD\u9BF1\u9BF4\u4C6D\u9C20\u376F\u{21BC2}\u9D49\u9C3A"],["9aa1","\u9EFE\u5650\u9D93\u9DBD\u9DC0\u9DFC\u94F6\u8FB6\u9E7B\u9EAC\u9EB1\u9EBD\u9EC6\u94DC\u9EE2\u9EF1\u9EF8\u7AC8\u9F44\u{20094}\u{202B7}\u{203A0}\u691A\u94C3\u59AC\u{204D7}\u5840\u94C1\u37B9\u{205D5}\u{20615}\u{20676}\u{216BA}\u5757\u7173\u{20AC2}\u{20ACD}\u{20BBF}\u546A\u{2F83B}\u{20BCB}\u549E\u{20BFB}\u{20C3B}\u{20C53}\u{20C65}\u{20C7C}\u60E7\u{20C8D}\u567A\u{20CB5}\u{20CDD}\u{20CED}\u{20D6F}\u{20DB2}\u{20DC8}\u6955\u9C2F\u87A5\u{20E04}\u{20E0E}\u{20ED7}\u{20F90}\u{20F2D}\u{20E73}\u5C20\u{20FBC}\u5E0B\u{2105C}\u{2104F}\u{21076}\u671E\u{2107B}\u{21088}\u{21096}\u3647\u{210BF}\u{210D3}\u{2112F}\u{2113B}\u5364\u84AD\u{212E3}\u{21375}\u{21336}\u8B81\u{21577}\u{21619}\u{217C3}\u{217C7}\u4E78\u70BB\u{2182D}\u{2196A}"],["9b40","\u{21A2D}\u{21A45}\u{21C2A}\u{21C70}\u{21CAC}\u{21EC8}\u62C3\u{21ED5}\u{21F15}\u7198\u6855\u{22045}\u69E9\u36C8\u{2227C}\u{223D7}\u{223FA}\u{2272A}\u{22871}\u{2294F}\u82FD\u{22967}\u{22993}\u{22AD5}\u89A5\u{22AE8}\u8FA0\u{22B0E}\u97B8\u{22B3F}\u9847\u9ABD\u{22C4C}"],["9b62","\u{22C88}\u{22CB7}\u{25BE8}\u{22D08}\u{22D12}\u{22DB7}\u{22D95}\u{22E42}\u{22F74}\u{22FCC}\u{23033}\u{23066}\u{2331F}\u{233DE}\u5FB1\u6648\u66BF\u{27A79}\u{23567}\u{235F3}\u7201\u{249BA}\u77D7\u{2361A}\u{23716}\u7E87\u{20346}\u58B5\u670E"],["9ba1","\u6918\u{23AA7}\u{27657}\u{25FE2}\u{23E11}\u{23EB9}\u{275FE}\u{2209A}\u48D0\u4AB8\u{24119}\u{28A9A}\u{242EE}\u{2430D}\u{2403B}\u{24334}\u{24396}\u{24A45}\u{205CA}\u51D2\u{20611}\u599F\u{21EA8}\u3BBE\u{23CFF}\u{24404}\u{244D6}\u5788\u{24674}\u399B\u{2472F}\u{285E8}\u{299C9}\u3762\u{221C3}\u8B5E\u{28B4E}\u99D6\u{24812}\u{248FB}\u{24A15}\u7209\u{24AC0}\u{20C78}\u5965\u{24EA5}\u{24F86}\u{20779}\u8EDA\u{2502C}\u528F\u573F\u7171\u{25299}\u{25419}\u{23F4A}\u{24AA7}\u55BC\u{25446}\u{2546E}\u{26B52}\u91D4\u3473\u{2553F}\u{27632}\u{2555E}\u4718\u{25562}\u{25566}\u{257C7}\u{2493F}\u{2585D}\u5066\u34FB\u{233CC}\u60DE\u{25903}\u477C\u{28948}\u{25AAE}\u{25B89}\u{25C06}\u{21D90}\u57A1\u7151\u6FB6\u{26102}\u{27C12}\u9056\u{261B2}\u{24F9A}\u8B62\u{26402}\u{2644A}"],["9c40","\u5D5B\u{26BF7}\u8F36\u{26484}\u{2191C}\u8AEA\u{249F6}\u{26488}\u{23FEF}\u{26512}\u4BC0\u{265BF}\u{266B5}\u{2271B}\u9465\u{257E1}\u6195\u5A27\u{2F8CD}\u4FBB\u56B9\u{24521}\u{266FC}\u4E6A\u{24934}\u9656\u6D8F\u{26CBD}\u3618\u8977\u{26799}\u{2686E}\u{26411}\u{2685E}\u71DF\u{268C7}\u7B42\u{290C0}\u{20A11}\u{26926}\u9104\u{26939}\u7A45\u9DF0\u{269FA}\u9A26\u{26A2D}\u365F\u{26469}\u{20021}\u7983\u{26A34}\u{26B5B}\u5D2C\u{23519}\u83CF\u{26B9D}\u46D0\u{26CA4}\u753B\u8865\u{26DAE}\u58B6"],["9ca1","\u371C\u{2258D}\u{2704B}\u{271CD}\u3C54\u{27280}\u{27285}\u9281\u{2217A}\u{2728B}\u9330\u{272E6}\u{249D0}\u6C39\u949F\u{27450}\u{20EF8}\u8827\u88F5\u{22926}\u{28473}\u{217B1}\u6EB8\u{24A2A}\u{21820}\u39A4\u36B9\u5C10\u79E3\u453F\u66B6\u{29CAD}\u{298A4}\u8943\u{277CC}\u{27858}\u56D6\u40DF\u{2160A}\u39A1\u{2372F}\u{280E8}\u{213C5}\u71AD\u8366\u{279DD}\u{291A8}\u5A67\u4CB7\u{270AF}\u{289AB}\u{279FD}\u{27A0A}\u{27B0B}\u{27D66}\u{2417A}\u7B43\u797E\u{28009}\u6FB5\u{2A2DF}\u6A03\u{28318}\u53A2\u{26E07}\u93BF\u6836\u975D\u{2816F}\u{28023}\u{269B5}\u{213ED}\u{2322F}\u{28048}\u5D85\u{28C30}\u{28083}\u5715\u9823\u{28949}\u5DAB\u{24988}\u65BE\u69D5\u53D2\u{24AA5}\u{23F81}\u3C11\u6736\u{28090}\u{280F4}\u{2812E}\u{21FA1}\u{2814F}"],["9d40","\u{28189}\u{281AF}\u{2821A}\u{28306}\u{2832F}\u{2838A}\u35CA\u{28468}\u{286AA}\u48FA\u63E6\u{28956}\u7808\u9255\u{289B8}\u43F2\u{289E7}\u43DF\u{289E8}\u{28B46}\u{28BD4}\u59F8\u{28C09}\u8F0B\u{28FC5}\u{290EC}\u7B51\u{29110}\u{2913C}\u3DF7\u{2915E}\u{24ACA}\u8FD0\u728F\u568B\u{294E7}\u{295E9}\u{295B0}\u{295B8}\u{29732}\u{298D1}\u{29949}\u{2996A}\u{299C3}\u{29A28}\u{29B0E}\u{29D5A}\u{29D9B}\u7E9F\u{29EF8}\u{29F23}\u4CA4\u9547\u{2A293}\u71A2\u{2A2FF}\u4D91\u9012\u{2A5CB}\u4D9C\u{20C9C}\u8FBE\u55C1"],["9da1","\u8FBA\u{224B0}\u8FB9\u{24A93}\u4509\u7E7F\u6F56\u6AB1\u4EEA\u34E4\u{28B2C}\u{2789D}\u373A\u8E80\u{217F5}\u{28024}\u{28B6C}\u{28B99}\u{27A3E}\u{266AF}\u3DEB\u{27655}\u{23CB7}\u{25635}\u{25956}\u4E9A\u{25E81}\u{26258}\u56BF\u{20E6D}\u8E0E\u5B6D\u{23E88}\u{24C9E}\u63DE\u62D0\u{217F6}\u{2187B}\u6530\u562D\u{25C4A}\u541A\u{25311}\u3DC6\u{29D98}\u4C7D\u5622\u561E\u7F49\u{25ED8}\u5975\u{23D40}\u8770\u4E1C\u{20FEA}\u{20D49}\u{236BA}\u8117\u9D5E\u8D18\u763B\u9C45\u764E\u77B9\u9345\u5432\u8148\u82F7\u5625\u8132\u8418\u80BD\u55EA\u7962\u5643\u5416\u{20E9D}\u35CE\u5605\u55F1\u66F1\u{282E2}\u362D\u7534\u55F0\u55BA\u5497\u5572\u{20C41}\u{20C96}\u5ED0\u{25148}\u{20E76}\u{22C62}"],["9e40","\u{20EA2}\u9EAB\u7D5A\u55DE\u{21075}\u629D\u976D\u5494\u8CCD\u71F6\u9176\u63FC\u63B9\u63FE\u5569\u{22B43}\u9C72\u{22EB3}\u519A\u34DF\u{20DA7}\u51A7\u544D\u551E\u5513\u7666\u8E2D\u{2688A}\u75B1\u80B6\u8804\u8786\u88C7\u81B6\u841C\u{210C1}\u44EC\u7304\u{24706}\u5B90\u830B\u{26893}\u567B\u{226F4}\u{27D2F}\u{241A3}\u{27D73}\u{26ED0}\u{272B6}\u9170\u{211D9}\u9208\u{23CFC}\u{2A6A9}\u{20EAC}\u{20EF9}\u7266\u{21CA2}\u474E\u{24FC2}\u{27FF9}\u{20FEB}\u40FA"],["9ea1","\u9C5D\u651F\u{22DA0}\u48F3\u{247E0}\u{29D7C}\u{20FEC}\u{20E0A}\u6062\u{275A3}\u{20FED}"],["9ead","\u{26048}\u{21187}\u71A3\u7E8E\u9D50\u4E1A\u4E04\u3577\u5B0D\u6CB2\u5367\u36AC\u39DC\u537D\u36A5\u{24618}\u589A\u{24B6E}\u822D\u544B\u57AA\u{25A95}\u{20979}"],["9ec5","\u3A52\u{22465}\u7374\u{29EAC}\u4D09\u9BED\u{23CFE}\u{29F30}\u4C5B\u{24FA9}\u{2959E}\u{29FDE}\u845C\u{23DB6}\u{272B2}\u{267B3}\u{23720}\u632E\u7D25\u{23EF7}\u{23E2C}\u3A2A\u9008\u52CC\u3E74\u367A\u45E9\u{2048E}\u7640\u5AF0\u{20EB6}\u787A\u{27F2E}\u58A7\u40BF\u567C\u9B8B\u5D74\u7654\u{2A434}\u9E85\u4CE1\u75F9\u37FB\u6119\u{230DA}\u{243F2}"],["9ef5","\u565D\u{212A9}\u57A7\u{24963}\u{29E06}\u5234\u{270AE}\u35AD\u6C4A\u9D7C"],["9f40","\u7C56\u9B39\u57DE\u{2176C}\u5C53\u64D3\u{294D0}\u{26335}\u{27164}\u86AD\u{20D28}\u{26D22}\u{24AE2}\u{20D71}"],["9f4f","\u51FE\u{21F0F}\u5D8E\u9703\u{21DD1}\u9E81\u904C\u7B1F\u9B02\u5CD1\u7BA3\u6268\u6335\u9AFF\u7BCF\u9B2A\u7C7E\u9B2E\u7C42\u7C86\u9C15\u7BFC\u9B09\u9F17\u9C1B\u{2493E}\u9F5A\u5573\u5BC3\u4FFD\u9E98\u4FF2\u5260\u3E06\u52D1\u5767\u5056\u59B7\u5E12\u97C8\u9DAB\u8F5C\u5469\u97B4\u9940\u97BA\u532C\u6130"],["9fa1","\u692C\u53DA\u9C0A\u9D02\u4C3B\u9641\u6980\u50A6\u7546\u{2176D}\u99DA\u5273"],["9fae","\u9159\u9681\u915C"],["9fb2","\u9151\u{28E97}\u637F\u{26D23}\u6ACA\u5611\u918E\u757A\u6285\u{203FC}\u734F\u7C70\u{25C21}\u{23CFD}"],["9fc1","\u{24919}\u76D6\u9B9D\u4E2A\u{20CD4}\u83BE\u8842"],["9fc9","\u5C4A\u69C0\u50ED\u577A\u521F\u5DF5\u4ECE\u6C31\u{201F2}\u4F39\u549C\u54DA\u529A\u8D82\u35FE\u5F0C\u35F3"],["9fdb","\u6B52\u917C\u9FA5\u9B97\u982E\u98B4\u9ABA\u9EA8\u9E84\u717A\u7B14"],["9fe7","\u6BFA\u8818\u7F78"],["9feb","\u5620\u{2A64A}\u8E77\u9F53"],["9ff0","\u8DD4\u8E4F\u9E1C\u8E01\u6282\u{2837D}\u8E28\u8E75\u7AD3\u{24A77}\u7A3E\u78D8\u6CEA\u8A67\u7607"],["a040","\u{28A5A}\u9F26\u6CCE\u87D6\u75C3\u{2A2B2}\u7853\u{2F840}\u8D0C\u72E2\u7371\u8B2D\u7302\u74F1\u8CEB\u{24ABB}\u862F\u5FBA\u88A0\u44B7"],["a055","\u{2183B}\u{26E05}"],["a058","\u8A7E\u{2251B}"],["a05b","\u60FD\u7667\u9AD7\u9D44\u936E\u9B8F\u87F5"],["a063","\u880F\u8CF7\u732C\u9721\u9BB0\u35D6\u72B2\u4C07\u7C51\u994A\u{26159}\u6159\u4C04\u9E96\u617D"],["a073","\u575F\u616F\u62A6\u6239\u62CE\u3A5C\u61E2\u53AA\u{233F5}\u6364\u6802\u35D2"],["a0a1","\u5D57\u{28BC2}\u8FDA\u{28E39}"],["a0a6","\u50D9\u{21D46}\u7906\u5332\u9638\u{20F3B}\u4065"],["a0ae","\u77FE"],["a0b0","\u7CC2\u{25F1A}\u7CDA\u7A2D\u8066\u8063\u7D4D\u7505\u74F2\u8994\u821A\u670C\u8062\u{27486}\u805B\u74F0\u8103\u7724\u8989\u{267CC}\u7553\u{26ED1}\u87A9\u87CE\u81C8\u878C\u8A49\u8CAD\u8B43\u772B\u74F8\u84DA\u3635\u69B2\u8DA6"],["a0d4","\u89A9\u7468\u6DB9\u87C1\u{24011}\u74E7\u3DDB\u7176\u60A4\u619C\u3CD1\u7162\u6077"],["a0e2","\u7F71\u{28B2D}\u7250\u60E9\u4B7E\u5220\u3C18\u{23CC7}\u{25ED7}\u{27656}\u{25531}\u{21944}\u{212FE}\u{29903}\u{26DDC}\u{270AD}\u5CC1\u{261AD}\u{28A0F}\u{23677}\u{200EE}\u{26846}\u{24F0E}\u4562\u5B1F\u{2634C}\u9F50\u9EA6\u{2626B}"],["a3c0","\u2400",31,"\u2421"],["c6a1","\u2460",9,"\u2474",9,"\u2170",9,"\u4E36\u4E3F\u4E85\u4EA0\u5182\u5196\u51AB\u52F9\u5338\u5369\u53B6\u590A\u5B80\u5DDB\u2F33\u5E7F\u5EF4\u5F50\u5F61\u6534\u65E0\u7592\u7676\u8FB5\u96B6\xA8\u02C6\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\uFF3B\uFF3D\u273D\u3041",23],["c740","\u3059",58,"\u30A1\u30A2\u30A3\u30A4"],["c7a1","\u30A5",81,"\u0410",5,"\u0401\u0416",4],["c840","\u041B",26,"\u0451\u0436",25,"\u21E7\u21B8\u21B9\u31CF\u{200CC}\u4E5A\u{2008A}\u5202\u4491"],["c8a1","\u9FB0\u5188\u9FB1\u{27607}"],["c8cd","\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u309B\u309C\u2E80\u2E84\u2E86\u2E87\u2E88\u2E8A\u2E8C\u2E8D\u2E95\u2E9C\u2E9D\u2EA5\u2EA7\u2EAA\u2EAC\u2EAE\u2EB6\u2EBC\u2EBE\u2EC6\u2ECA\u2ECC\u2ECD\u2ECF\u2ED6\u2ED7\u2EDE\u2EE3"],["c8f5","\u0283\u0250\u025B\u0254\u0275\u0153\xF8\u014B\u028A\u026A"],["f9fe","\uFFED"],["fa40","\u{20547}\u92DB\u{205DF}\u{23FC5}\u854C\u42B5\u73EF\u51B5\u3649\u{24942}\u{289E4}\u9344\u{219DB}\u82EE\u{23CC8}\u783C\u6744\u62DF\u{24933}\u{289AA}\u{202A0}\u{26BB3}\u{21305}\u4FAB\u{224ED}\u5008\u{26D29}\u{27A84}\u{23600}\u{24AB1}\u{22513}\u5029\u{2037E}\u5FA4\u{20380}\u{20347}\u6EDB\u{2041F}\u507D\u5101\u347A\u510E\u986C\u3743\u8416\u{249A4}\u{20487}\u5160\u{233B4}\u516A\u{20BFF}\u{220FC}\u{202E5}\u{22530}\u{2058E}\u{23233}\u{21983}\u5B82\u877D\u{205B3}\u{23C99}\u51B2\u51B8"],["faa1","\u9D34\u51C9\u51CF\u51D1\u3CDC\u51D3\u{24AA6}\u51B3\u51E2\u5342\u51ED\u83CD\u693E\u{2372D}\u5F7B\u520B\u5226\u523C\u52B5\u5257\u5294\u52B9\u52C5\u7C15\u8542\u52E0\u860D\u{26B13}\u5305\u{28ADE}\u5549\u6ED9\u{23F80}\u{20954}\u{23FEC}\u5333\u5344\u{20BE2}\u6CCB\u{21726}\u681B\u73D5\u604A\u3EAA\u38CC\u{216E8}\u71DD\u44A2\u536D\u5374\u{286AB}\u537E\u537F\u{21596}\u{21613}\u77E6\u5393\u{28A9B}\u53A0\u53AB\u53AE\u73A7\u{25772}\u3F59\u739C\u53C1\u53C5\u6C49\u4E49\u57FE\u53D9\u3AAB\u{20B8F}\u53E0\u{23FEB}\u{22DA3}\u53F6\u{20C77}\u5413\u7079\u552B\u6657\u6D5B\u546D\u{26B53}\u{20D74}\u555D\u548F\u54A4\u47A6\u{2170D}\u{20EDD}\u3DB4\u{20D4D}"],["fb40","\u{289BC}\u{22698}\u5547\u4CED\u542F\u7417\u5586\u55A9\u5605\u{218D7}\u{2403A}\u4552\u{24435}\u66B3\u{210B4}\u5637\u66CD\u{2328A}\u66A4\u66AD\u564D\u564F\u78F1\u56F1\u9787\u53FE\u5700\u56EF\u56ED\u{28B66}\u3623\u{2124F}\u5746\u{241A5}\u6C6E\u708B\u5742\u36B1\u{26C7E}\u57E6\u{21416}\u5803\u{21454}\u{24363}\u5826\u{24BF5}\u585C\u58AA\u3561\u58E0\u58DC\u{2123C}\u58FB\u5BFF\u5743\u{2A150}\u{24278}\u93D3\u35A1\u591F\u68A6\u36C3\u6E59"],["fba1","\u{2163E}\u5A24\u5553\u{21692}\u8505\u59C9\u{20D4E}\u{26C81}\u{26D2A}\u{217DC}\u59D9\u{217FB}\u{217B2}\u{26DA6}\u6D71\u{21828}\u{216D5}\u59F9\u{26E45}\u5AAB\u5A63\u36E6\u{249A9}\u5A77\u3708\u5A96\u7465\u5AD3\u{26FA1}\u{22554}\u3D85\u{21911}\u3732\u{216B8}\u5E83\u52D0\u5B76\u6588\u5B7C\u{27A0E}\u4004\u485D\u{20204}\u5BD5\u6160\u{21A34}\u{259CC}\u{205A5}\u5BF3\u5B9D\u4D10\u5C05\u{21B44}\u5C13\u73CE\u5C14\u{21CA5}\u{26B28}\u5C49\u48DD\u5C85\u5CE9\u5CEF\u5D8B\u{21DF9}\u{21E37}\u5D10\u5D18\u5D46\u{21EA4}\u5CBA\u5DD7\u82FC\u382D\u{24901}\u{22049}\u{22173}\u8287\u3836\u3BC2\u5E2E\u6A8A\u5E75\u5E7A\u{244BC}\u{20CD3}\u53A6\u4EB7\u5ED0\u53A8\u{21771}\u5E09\u5EF4\u{28482}"],["fc40","\u5EF9\u5EFB\u38A0\u5EFC\u683E\u941B\u5F0D\u{201C1}\u{2F894}\u3ADE\u48AE\u{2133A}\u5F3A\u{26888}\u{223D0}\u5F58\u{22471}\u5F63\u97BD\u{26E6E}\u5F72\u9340\u{28A36}\u5FA7\u5DB6\u3D5F\u{25250}\u{21F6A}\u{270F8}\u{22668}\u91D6\u{2029E}\u{28A29}\u6031\u6685\u{21877}\u3963\u3DC7\u3639\u5790\u{227B4}\u7971\u3E40\u609E\u60A4\u60B3\u{24982}\u{2498F}\u{27A53}\u74A4\u50E1\u5AA0\u6164\u8424\u6142\u{2F8A6}\u{26ED2}\u6181\u51F4\u{20656}\u6187\u5BAA\u{23FB7}"],["fca1","\u{2285F}\u61D3\u{28B9D}\u{2995D}\u61D0\u3932\u{22980}\u{228C1}\u6023\u615C\u651E\u638B\u{20118}\u62C5\u{21770}\u62D5\u{22E0D}\u636C\u{249DF}\u3A17\u6438\u63F8\u{2138E}\u{217FC}\u6490\u6F8A\u{22E36}\u9814\u{2408C}\u{2571D}\u64E1\u64E5\u947B\u3A66\u643A\u3A57\u654D\u6F16\u{24A28}\u{24A23}\u6585\u656D\u655F\u{2307E}\u65B5\u{24940}\u4B37\u65D1\u40D8\u{21829}\u65E0\u65E3\u5FDF\u{23400}\u6618\u{231F7}\u{231F8}\u6644\u{231A4}\u{231A5}\u664B\u{20E75}\u6667\u{251E6}\u6673\u6674\u{21E3D}\u{23231}\u{285F4}\u{231C8}\u{25313}\u77C5\u{228F7}\u99A4\u6702\u{2439C}\u{24A21}\u3B2B\u69FA\u{237C2}\u675E\u6767\u6762\u{241CD}\u{290ED}\u67D7\u44E9\u6822\u6E50\u923C\u6801\u{233E6}\u{26DA0}\u685D"],["fd40","\u{2346F}\u69E1\u6A0B\u{28ADF}\u6973\u68C3\u{235CD}\u6901\u6900\u3D32\u3A01\u{2363C}\u3B80\u67AC\u6961\u{28A4A}\u42FC\u6936\u6998\u3BA1\u{203C9}\u8363\u5090\u69F9\u{23659}\u{2212A}\u6A45\u{23703}\u6A9D\u3BF3\u67B1\u6AC8\u{2919C}\u3C0D\u6B1D\u{20923}\u60DE\u6B35\u6B74\u{227CD}\u6EB5\u{23ADB}\u{203B5}\u{21958}\u3740\u5421\u{23B5A}\u6BE1\u{23EFC}\u6BDC\u6C37\u{2248B}\u{248F1}\u{26B51}\u6C5A\u8226\u6C79\u{23DBC}\u44C5\u{23DBD}\u{241A4}\u{2490C}\u{24900}"],["fda1","\u{23CC9}\u36E5\u3CEB\u{20D32}\u9B83\u{231F9}\u{22491}\u7F8F\u6837\u{26D25}\u{26DA1}\u{26DEB}\u6D96\u6D5C\u6E7C\u6F04\u{2497F}\u{24085}\u{26E72}\u8533\u{26F74}\u51C7\u6C9C\u6E1D\u842E\u{28B21}\u6E2F\u{23E2F}\u7453\u{23F82}\u79CC\u6E4F\u5A91\u{2304B}\u6FF8\u370D\u6F9D\u{23E30}\u6EFA\u{21497}\u{2403D}\u4555\u93F0\u6F44\u6F5C\u3D4E\u6F74\u{29170}\u3D3B\u6F9F\u{24144}\u6FD3\u{24091}\u{24155}\u{24039}\u{23FF0}\u{23FB4}\u{2413F}\u51DF\u{24156}\u{24157}\u{24140}\u{261DD}\u704B\u707E\u70A7\u7081\u70CC\u70D5\u70D6\u70DF\u4104\u3DE8\u71B4\u7196\u{24277}\u712B\u7145\u5A88\u714A\u716E\u5C9C\u{24365}\u714F\u9362\u{242C1}\u712C\u{2445A}\u{24A27}\u{24A22}\u71BA\u{28BE8}\u70BD\u720E"],["fe40","\u9442\u7215\u5911\u9443\u7224\u9341\u{25605}\u722E\u7240\u{24974}\u68BD\u7255\u7257\u3E55\u{23044}\u680D\u6F3D\u7282\u732A\u732B\u{24823}\u{2882B}\u48ED\u{28804}\u7328\u732E\u73CF\u73AA\u{20C3A}\u{26A2E}\u73C9\u7449\u{241E2}\u{216E7}\u{24A24}\u6623\u36C5\u{249B7}\u{2498D}\u{249FB}\u73F7\u7415\u6903\u{24A26}\u7439\u{205C3}\u3ED7\u745C\u{228AD}\u7460\u{28EB2}\u7447\u73E4\u7476\u83B9\u746C\u3730\u7474\u93F1\u6A2C\u7482\u4953\u{24A8C}"],["fea1","\u{2415F}\u{24A79}\u{28B8F}\u5B46\u{28C03}\u{2189E}\u74C8\u{21988}\u750E\u74E9\u751E\u{28ED9}\u{21A4B}\u5BD7\u{28EAC}\u9385\u754D\u754A\u7567\u756E\u{24F82}\u3F04\u{24D13}\u758E\u745D\u759E\u75B4\u7602\u762C\u7651\u764F\u766F\u7676\u{263F5}\u7690\u81EF\u37F8\u{26911}\u{2690E}\u76A1\u76A5\u76B7\u76CC\u{26F9F}\u8462\u{2509D}\u{2517D}\u{21E1C}\u771E\u7726\u7740\u64AF\u{25220}\u7758\u{232AC}\u77AF\u{28964}\u{28968}\u{216C1}\u77F4\u7809\u{21376}\u{24A12}\u68CA\u78AF\u78C7\u78D3\u96A5\u792E\u{255E0}\u78D7\u7934\u78B1\u{2760C}\u8FB8\u8884\u{28B2B}\u{26083}\u{2261C}\u7986\u8900\u6902\u7980\u{25857}\u799D\u{27B39}\u793C\u79A9\u6E2A\u{27126}\u3EA8\u79C6\u{2910D}\u79D4"]]});var KT=v((J3e,FT)=>{"use strict";FT.exports={shiftjis:{type:"_dbcs",table:function(){return OT()},encodeAdd:{"\xA5":92,"\u203E":126},encodeSkipVals:[{from:60736,to:63808}]},csshiftjis:"shiftjis",mskanji:"shiftjis",sjis:"shiftjis",windows31j:"shiftjis",ms31j:"shiftjis",xsjis:"shiftjis",windows932:"shiftjis",ms932:"shiftjis",932:"shiftjis",cp932:"shiftjis",eucjp:{type:"_dbcs",table:function(){return NT()},encodeAdd:{"\xA5":92,"\u203E":126}},gb2312:"cp936",gb231280:"cp936",gb23121980:"cp936",csgb2312:"cp936",csiso58gb231280:"cp936",euccn:"cp936",windows936:"cp936",ms936:"cp936",936:"cp936",cp936:{type:"_dbcs",table:function(){return z8()}},gbk:{type:"_dbcs",table:function(){return z8().concat(F7())}},xgbk:"gbk",isoir58:"gbk",gb18030:{type:"_dbcs",table:function(){return z8().concat(F7())},gb18030:function(){return qT()},encodeSkipVals:[128],encodeAdd:{"\u20AC":41699}},chinese:"gb18030",windows949:"cp949",ms949:"cp949",949:"cp949",cp949:{type:"_dbcs",table:function(){return WT()}},cseuckr:"cp949",csksc56011987:"cp949",euckr:"cp949",isoir149:"cp949",korean:"cp949",ksc56011987:"cp949",ksc56011989:"cp949",ksc5601:"cp949",windows950:"cp950",ms950:"cp950",950:"cp950",cp950:{type:"_dbcs",table:function(){return K7()}},big5:"big5hkscs",big5hkscs:{type:"_dbcs",table:function(){return K7().concat(VT())},encodeSkipVals:[36457,36463,36478,36523,36532,36557,36560,36695,36713,36718,36811,36862,36973,36986,37060,37084,37105,37311,37551,37552,37553,37554,37585,37959,38090,38361,38652,39285,39798,39800,39803,39878,39902,39916,39926,40002,40019,40034,40040,40043,40055,40124,40125,40144,40279,40282,40388,40431,40443,40617,40687,40701,40800,40907,41079,41180,41183,36812,37576,38468,38637,41636,41637,41639,41638,41676,41678]},cnbig5:"big5hkscs",csbig5:"big5hkscs",xxbig5:"big5hkscs"}});var jT=v((UT,O1)=>{"use strict";var LT=[bT(),wT(),_T(),ET(),TT(),IT(),DT(),CT(),KT()];for(I8=0;I8{"use strict";var HT=zn().Buffer;$T.exports=function(t){var e=t.Transform;function r(a,s){this.conv=a,s=s||{},s.decodeStrings=!1,e.call(this,s)}n(r,"IconvLiteEncoderStream"),r.prototype=Object.create(e.prototype,{constructor:{value:r}}),r.prototype._transform=function(a,s,o){if(typeof a!="string")return o(new Error("Iconv encoding stream needs strings as its input."));try{var l=this.conv.write(a);l&&l.length&&this.push(l),o()}catch(d){o(d)}},r.prototype._flush=function(a){try{var s=this.conv.end();s&&s.length&&this.push(s),a()}catch(o){a(o)}},r.prototype.collect=function(a){var s=[];return this.on("error",a),this.on("data",function(o){s.push(o)}),this.on("end",function(){a(null,HT.concat(s))}),this};function i(a,s){this.conv=a,s=s||{},s.encoding=this.encoding="utf8",e.call(this,s)}return n(i,"IconvLiteDecoderStream"),i.prototype=Object.create(e.prototype,{constructor:{value:i}}),i.prototype._transform=function(a,s,o){if(!HT.isBuffer(a)&&!(a instanceof Uint8Array))return o(new Error("Iconv decoding stream needs buffers as its input."));try{var l=this.conv.write(a);l&&l.length&&this.push(l,this.encoding),o()}catch(d){o(d)}},i.prototype._flush=function(a){try{var s=this.conv.end();s&&s.length&&this.push(s,this.encoding),a()}catch(o){a(o)}},i.prototype.collect=function(a){var s="";return this.on("error",a),this.on("data",function(o){s+=o}),this.on("end",function(){a(null,s)}),this},{IconvLiteEncoderStream:r,IconvLiteDecoderStream:i}}});var QT=v((X3e,YT)=>{"use strict";var ZT=zn().Buffer,JT=gT(),ke=YT.exports;ke.encodings=null;ke.defaultCharUnicode="\uFFFD";ke.defaultCharSingleByte="?";ke.encode=n(function(e,r,i){e=""+(e||"");var a=ke.getEncoder(r,i),s=a.write(e),o=a.end();return o&&o.length>0?ZT.concat([s,o]):s},"encode");ke.decode=n(function(e,r,i){typeof e=="string"&&(ke.skipDecodeWarning||(console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding"),ke.skipDecodeWarning=!0),e=ZT.from(""+(e||""),"binary"));var a=ke.getDecoder(r,i),s=a.write(e),o=a.end();return o?s+o:s},"decode");ke.encodingExists=n(function(e){try{return ke.getCodec(e),!0}catch{return!1}},"encodingExists");ke.toEncoding=ke.encode;ke.fromEncoding=ke.decode;ke._codecDataCache={};ke.getCodec=n(function(e){ke.encodings||(ke.encodings=jT());for(var r=ke._canonicalizeEncoding(e),i={};;){var a=ke._codecDataCache[r];if(a)return a;var s=ke.encodings[r];switch(typeof s){case"string":r=s;break;case"object":for(var o in s)i[o]=s[o];i.encodingName||(i.encodingName=r),r=s.type;break;case"function":return i.encodingName||(i.encodingName=r),a=new s(i,ke),ke._codecDataCache[i.encodingName]=a,a;default:throw new Error("Encoding not recognized: '"+e+"' (searched as: '"+r+"')")}}},"getCodec");ke._canonicalizeEncoding=function(t){return(""+t).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g,"")};ke.getEncoder=n(function(e,r){var i=ke.getCodec(e),a=new i.encoder(r,i);return i.bomAware&&r&&r.addBOM&&(a=new JT.PrependBOM(a,r)),a},"getEncoder");ke.getDecoder=n(function(e,r){var i=ke.getCodec(e),a=new i.decoder(r,i);return i.bomAware&&!(r&&r.stripBOM===!1)&&(a=new JT.StripBOM(a,r)),a},"getDecoder");ke.enableStreamingAPI=n(function(e){if(!ke.supportsStreams){var r=GT()(e);ke.IconvLiteEncoderStream=r.IconvLiteEncoderStream,ke.IconvLiteDecoderStream=r.IconvLiteDecoderStream,ke.encodeStream=n(function(a,s){return new ke.IconvLiteEncoderStream(ke.getEncoder(a,s),s)},"encodeStream"),ke.decodeStream=n(function(a,s){return new ke.IconvLiteDecoderStream(ke.getDecoder(a,s),s)},"decodeStream"),ke.supportsStreams=!0}},"enableStreamingAPI");var D8;try{D8=require("stream")}catch{}D8&&D8.Transform?ke.enableStreamingAPI(D8):ke.encodeStream=ke.decodeStream=function(){throw new Error("iconv-lite Streaming API is not enabled. Use iconv.enableStreamingAPI(require('stream')); to enable it.")}});var tz=v((tge,ez)=>{"use strict";var R8=QT();ez.exports.convert=tZ;function tZ(t,e,r){r=XT(r||"UTF-8"),e=XT(e||"UTF-8"),t=t||"";var i;if(r!=="UTF-8"&&typeof t=="string"&&(t=Buffer.from(t,"binary")),r===e)typeof t=="string"?i=Buffer.from(t):i=t;else try{i=rZ(t,e,r)}catch(a){console.error(a),i=t}return typeof i=="string"&&(i=Buffer.from(i,"utf-8")),i}n(tZ,"convert");function rZ(t,e,r){return e==="UTF-8"?R8.decode(t,r):r==="UTF-8"?R8.encode(t,e):R8.encode(R8.decode(t,r),e)}n(rZ,"convertIconvLite");function XT(t){return(t||"").toString().trim().replace(/^latin[\-_]?(\d+)$/i,"ISO-8859-$1").replace(/^win(?:dows)?[\-_]?(\d+)$/i,"WINDOWS-$1").replace(/^utf[\-_]?(\d+)$/i,"UTF-$1").replace(/^ks_c_5601\-1987$/i,"CP949").replace(/^us[\-_]?ascii$/i,"ASCII").toUpperCase()}n(XT,"checkEncoding")});var Q7=v((za,pz)=>{"use strict";Object.defineProperty(za,"__esModule",{value:!0});function V1(t){return t&&typeof t=="object"&&"default"in t?t.default:t}n(V1,"_interopDefault");var Ta=V1(require("stream")),nz=V1(require("http")),C8=V1(require("url")),sz=V1(mT()),iZ=V1(require("https")),sl=V1(require("zlib")),aZ=Ta.Readable,Mn=Symbol("buffer"),L7=Symbol("type"),e0=class t{static{n(this,"Blob")}constructor(){this[L7]="";let e=arguments[0],r=arguments[1],i=[],a=0;if(e){let o=e,l=Number(o.length);for(let d=0;d1&&arguments[1]!==void 0?arguments[1]:{},i=r.size;let a=i===void 0?0:i;var s=r.timeout;let o=s===void 0?0:s;t==null?t=null:oz(t)?t=Buffer.from(t.toString()):r0(t)||Buffer.isBuffer(t)||(Object.prototype.toString.call(t)==="[object ArrayBuffer]"?t=Buffer.from(t):ArrayBuffer.isView(t)?t=Buffer.from(t.buffer,t.byteOffset,t.byteLength):t instanceof Ta||(t=Buffer.from(String(t)))),this[Rn]={body:t,disturbed:!1,error:null},this.size=a,this.timeout=o,t instanceof Ta&&t.on("error",function(l){let d=l.name==="AbortError"?l:new Hr(`Invalid response body while trying to fetch ${e.url}: ${l.message}`,"system",l);e[Rn].error=d})}n(Mr,"Body");Mr.prototype={get body(){return this[Rn].body},get bodyUsed(){return this[Rn].disturbed},arrayBuffer(){return N1.call(this).then(function(t){return t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength)})},blob(){let t=this.headers&&this.headers.get("content-type")||"";return N1.call(this).then(function(e){return Object.assign(new e0([],{type:t.toLowerCase()}),{[Mn]:e})})},json(){var t=this;return N1.call(this).then(function(e){try{return JSON.parse(e.toString())}catch(r){return Mr.Promise.reject(new Hr(`invalid json response body at ${t.url} reason: ${r.message}`,"invalid-json"))}})},text(){return N1.call(this).then(function(t){return t.toString()})},buffer(){return N1.call(this)},textConverted(){var t=this;return N1.call(this).then(function(e){return nZ(e,t.headers)})}};Object.defineProperties(Mr.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0}});Mr.mixIn=function(t){for(let e of Object.getOwnPropertyNames(Mr.prototype))if(!(e in t)){let r=Object.getOwnPropertyDescriptor(Mr.prototype,e);Object.defineProperty(t,e,r)}};function N1(){var t=this;if(this[Rn].disturbed)return Mr.Promise.reject(new TypeError(`body used already for: ${this.url}`));if(this[Rn].disturbed=!0,this[Rn].error)return Mr.Promise.reject(this[Rn].error);let e=this.body;if(e===null)return Mr.Promise.resolve(Buffer.alloc(0));if(r0(e)&&(e=e.stream()),Buffer.isBuffer(e))return Mr.Promise.resolve(e);if(!(e instanceof Ta))return Mr.Promise.resolve(Buffer.alloc(0));let r=[],i=0,a=!1;return new Mr.Promise(function(s,o){let l;t.timeout&&(l=setTimeout(function(){a=!0,o(new Hr(`Response timeout while trying to fetch ${t.url} (over ${t.timeout}ms)`,"body-timeout"))},t.timeout)),e.on("error",function(d){d.name==="AbortError"?(a=!0,o(d)):o(new Hr(`Invalid response body while trying to fetch ${t.url}: ${d.message}`,"system",d))}),e.on("data",function(d){if(!(a||d===null)){if(t.size&&i+d.length>t.size){a=!0,o(new Hr(`content size at ${t.url} over limit: ${t.size}`,"max-size"));return}i+=d.length,r.push(d)}}),e.on("end",function(){if(!a){clearTimeout(l);try{s(Buffer.concat(r,i))}catch(d){o(new Hr(`Could not create Buffer from response body for ${t.url}: ${d.message}`,"system",d))}}})})}n(N1,"consumeBody");function nZ(t,e){if(typeof $7!="function")throw new Error("The package `encoding` must be installed to use the textConverted() function");let r=e.get("content-type"),i="utf-8",a,s;return r&&(a=/charset=([^;]*)/i.exec(r)),s=t.slice(0,1024).toString(),!a&&s&&(a=/0&&arguments[0]!==void 0?arguments[0]:void 0;if(this[Ut]=Object.create(null),e instanceof t){let r=e.raw(),i=Object.keys(r);for(let a of i)for(let s of r[a])this.append(a,s);return}if(e!=null)if(typeof e=="object"){let r=e[Symbol.iterator];if(r!=null){if(typeof r!="function")throw new TypeError("Header pairs must be iterable");let i=[];for(let a of e){if(typeof a!="object"||typeof a[Symbol.iterator]!="function")throw new TypeError("Each header pair must be iterable");i.push(Array.from(a))}for(let a of i){if(a.length!==2)throw new TypeError("Each header pair must be a name/value tuple");this.append(a[0],a[1])}}else for(let i of Object.keys(e)){let a=e[i];this.append(i,a)}}else throw new TypeError("Provided initializer must be an object")}get(e){e=`${e}`,Xp(e);let r=q1(this[Ut],e);return r===void 0?null:this[Ut][r].join(", ")}forEach(e){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:void 0,i=Z7(this),a=0;for(;a1&&arguments[1]!==void 0?arguments[1]:"key+value";return Object.keys(t[Ut]).sort().map(e==="key"?function(i){return i.toLowerCase()}:e==="value"?function(i){return t[Ut][i].join(", ")}:function(i){return[i.toLowerCase(),t[Ut][i].join(", ")]})}n(Z7,"getHeaders");var J7=Symbol("internal");function U7(t,e){let r=Object.create(Y7);return r[J7]={target:t,kind:e,index:0},r}n(U7,"createHeadersIterator");var Y7=Object.setPrototypeOf({next(){if(!this||Object.getPrototypeOf(this)!==Y7)throw new TypeError("Value of `this` is not a HeadersIterator");var t=this[J7];let e=t.target,r=t.kind,i=t.index,a=Z7(e,r),s=a.length;return i>=s?{value:void 0,done:!0}:(this[J7].index=i+1,{value:a[i],done:!1})}},Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));Object.defineProperty(Y7,Symbol.toStringTag,{value:"HeadersIterator",writable:!1,enumerable:!1,configurable:!0});function oZ(t){let e=Object.assign({__proto__:null},t[Ut]),r=q1(t[Ut],"Host");return r!==void 0&&(e[r]=e[r][0]),e}n(oZ,"exportNodeCompatibleHeaders");function lZ(t){let e=new Xi;for(let r of Object.keys(t))if(!cz.test(r))if(Array.isArray(t[r]))for(let i of t[r])G7.test(i)||(e[Ut][r]===void 0?e[Ut][r]=[i]:e[Ut][r].push(i));else G7.test(t[r])||(e[Ut][r]=[t[r]]);return e}n(lZ,"createHeadersLenient");var Os=Symbol("Response internals"),dZ=nz.STATUS_CODES,Qi=class t{static{n(this,"Response")}constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};Mr.call(this,e,r);let i=r.status||200,a=new Xi(r.headers);if(e!=null&&!a.has("Content-Type")){let s=dz(e);s&&a.append("Content-Type",s)}this[Os]={url:r.url,status:i,statusText:r.statusText||dZ[i],headers:a,counter:r.counter}}get url(){return this[Os].url||""}get status(){return this[Os].status}get ok(){return this[Os].status>=200&&this[Os].status<300}get redirected(){return this[Os].counter>0}get statusText(){return this[Os].statusText}get headers(){return this[Os].headers}clone(){return new t(lz(this),{url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected})}};Mr.mixIn(Qi.prototype);Object.defineProperties(Qi.prototype,{url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}});Object.defineProperty(Qi.prototype,Symbol.toStringTag,{value:"Response",writable:!1,enumerable:!1,configurable:!0});var Dn=Symbol("Request internals"),uZ=C8.URL||sz.URL,cZ=C8.parse,pZ=C8.format;function j7(t){return/^[a-zA-Z][a-zA-Z\d+\-.]*:/.exec(t)&&(t=new uZ(t).toString()),cZ(t)}n(j7,"parseURL");var mZ="destroy"in Ta.Readable.prototype;function B8(t){return typeof t=="object"&&typeof t[Dn]=="object"}n(B8,"isRequest");function fZ(t){let e=t&&typeof t=="object"&&Object.getPrototypeOf(t);return!!(e&&e.constructor.name==="AbortSignal")}n(fZ,"isAbortSignal");var qs=class t{static{n(this,"Request")}constructor(e){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i;B8(e)?i=j7(e.url):(e&&e.href?i=j7(e.href):i=j7(`${e}`),e={});let a=r.method||e.method||"GET";if(a=a.toUpperCase(),(r.body!=null||B8(e)&&e.body!==null)&&(a==="GET"||a==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body");let s=r.body!=null?r.body:B8(e)&&e.body!==null?lz(e):null;Mr.call(this,s,{timeout:r.timeout||e.timeout||0,size:r.size||e.size||0});let o=new Xi(r.headers||e.headers||{});if(s!=null&&!o.has("Content-Type")){let d=dz(s);d&&o.append("Content-Type",d)}let l=B8(e)?e.signal:null;if("signal"in r&&(l=r.signal),l!=null&&!fZ(l))throw new TypeError("Expected signal to be an instanceof AbortSignal");this[Dn]={method:a,redirect:r.redirect||e.redirect||"follow",headers:o,parsedURL:i,signal:l},this.follow=r.follow!==void 0?r.follow:e.follow!==void 0?e.follow:20,this.compress=r.compress!==void 0?r.compress:e.compress!==void 0?e.compress:!0,this.counter=r.counter||e.counter||0,this.agent=r.agent||e.agent}get method(){return this[Dn].method}get url(){return pZ(this[Dn].parsedURL)}get headers(){return this[Dn].headers}get redirect(){return this[Dn].redirect}get signal(){return this[Dn].signal}clone(){return new t(this)}};Mr.mixIn(qs.prototype);Object.defineProperty(qs.prototype,Symbol.toStringTag,{value:"Request",writable:!1,enumerable:!1,configurable:!0});Object.defineProperties(qs.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0}});function hZ(t){let e=t[Dn].parsedURL,r=new Xi(t[Dn].headers);if(r.has("Accept")||r.set("Accept","*/*"),!e.protocol||!e.hostname)throw new TypeError("Only absolute URLs are supported");if(!/^https?:$/.test(e.protocol))throw new TypeError("Only HTTP(S) protocols are supported");if(t.signal&&t.body instanceof Ta.Readable&&!mZ)throw new Error("Cancellation of streamed requests with AbortSignal is not supported in node < 8");let i=null;if(t.body==null&&/^(POST|PUT)$/i.test(t.method)&&(i="0"),t.body!=null){let s=uz(t);typeof s=="number"&&(i=String(s))}i&&r.set("Content-Length",i),r.has("User-Agent")||r.set("User-Agent","node-fetch/1.0 (+https://github.com/bitinn/node-fetch)"),t.compress&&!r.has("Accept-Encoding")&&r.set("Accept-Encoding","gzip,deflate");let a=t.agent;return typeof a=="function"&&(a=a(e)),Object.assign({},e,{method:t.method,headers:oZ(r),agent:a})}n(hZ,"getNodeRequestOptions");function W1(t){Error.call(this,t),this.type="aborted",this.message=t,Error.captureStackTrace(this,this.constructor)}n(W1,"AbortError");W1.prototype=Object.create(Error.prototype);W1.prototype.constructor=W1;W1.prototype.name="AbortError";var t0=C8.URL||sz.URL,az=Ta.PassThrough,gZ=n(function(e,r){let i=new t0(r).hostname,a=new t0(e).hostname;return i===a||i[i.length-a.length-1]==="."&&i.endsWith(a)},"isDomainOrSubdomain"),yZ=n(function(e,r){let i=new t0(r).protocol,a=new t0(e).protocol;return i===a},"isSameProtocol");function Ns(t,e){if(!Ns.Promise)throw new Error("native promise missing, set fetch.Promise to your favorite alternative");return Mr.Promise=Ns.Promise,new Ns.Promise(function(r,i){let a=new qs(t,e),s=hZ(a),o=(s.protocol==="https:"?iZ:nz).request,l=a.signal,d=null,u=n(function(){let k=new W1("The user aborted a request.");i(k),a.body&&a.body instanceof Ta.Readable&&H7(a.body,k),!(!d||!d.body)&&d.body.emit("error",k)},"abort");if(l&&l.aborted){u();return}let c=n(function(){u(),E()},"abortAndFinalize"),p=o(s),x;l&&l.addEventListener("abort",c);function E(){p.abort(),l&&l.removeEventListener("abort",c),clearTimeout(x)}n(E,"finalize"),a.timeout&&p.once("socket",function(I){x=setTimeout(function(){i(new Hr(`network timeout at: ${a.url}`,"request-timeout")),E()},a.timeout)}),p.on("error",function(I){i(new Hr(`request to ${a.url} failed, reason: ${I.message}`,"system",I)),d&&d.body&&H7(d.body,I),E()}),bZ(p,function(I){l&&l.aborted||d&&d.body&&H7(d.body,I)}),parseInt(process.version.substring(1))<14&&p.on("socket",function(I){I.addListener("close",function(k){let z=I.listenerCount("data")>0;if(d&&z&&!k&&!(l&&l.aborted)){let R=new Error("Premature close");R.code="ERR_STREAM_PREMATURE_CLOSE",d.body.emit("error",R)}})}),p.on("response",function(I){clearTimeout(x);let k=lZ(I.headers);if(Ns.isRedirect(I.statusCode)){let C=k.get("Location"),W=null;try{W=C===null?null:new t0(C,a.url).toString()}catch{if(a.redirect!=="manual"){i(new Hr(`uri requested responds with an invalid redirect URL: ${C}`,"invalid-redirect")),E();return}}switch(a.redirect){case"error":i(new Hr(`uri requested responds with a redirect, redirect mode is set to error: ${a.url}`,"no-redirect")),E();return;case"manual":if(W!==null)try{k.set("Location",W)}catch(H){i(H)}break;case"follow":if(W===null)break;if(a.counter>=a.follow){i(new Hr(`maximum redirect reached at: ${a.url}`,"max-redirect")),E();return}let L={headers:new Xi(a.headers),follow:a.follow,counter:a.counter+1,agent:a.agent,compress:a.compress,method:a.method,body:a.body,signal:a.signal,timeout:a.timeout,size:a.size};if(!gZ(a.url,W)||!yZ(a.url,W))for(let H of["authorization","www-authenticate","cookie","cookie2"])L.headers.delete(H);if(I.statusCode!==303&&a.body&&uz(a)===null){i(new Hr("Cannot follow redirect with body being a readable stream","unsupported-redirect")),E();return}(I.statusCode===303||(I.statusCode===301||I.statusCode===302)&&a.method==="POST")&&(L.method="GET",L.body=void 0,L.headers.delete("content-length")),r(Ns(new qs(W,L))),E();return}}I.once("end",function(){l&&l.removeEventListener("abort",c)});let z=I.pipe(new az),R={url:a.url,status:I.statusCode,statusText:I.statusMessage,headers:k,size:a.size,timeout:a.timeout,counter:a.counter},F=k.get("Content-Encoding");if(!a.compress||a.method==="HEAD"||F===null||I.statusCode===204||I.statusCode===304){d=new Qi(z,R),r(d);return}let B={flush:sl.Z_SYNC_FLUSH,finishFlush:sl.Z_SYNC_FLUSH};if(F=="gzip"||F=="x-gzip"){z=z.pipe(sl.createGunzip(B)),d=new Qi(z,R),r(d);return}if(F=="deflate"||F=="x-deflate"){let C=I.pipe(new az);C.once("data",function(W){(W[0]&15)===8?z=z.pipe(sl.createInflate()):z=z.pipe(sl.createInflateRaw()),d=new Qi(z,R),r(d)}),C.on("end",function(){d||(d=new Qi(z,R),r(d))});return}if(F=="br"&&typeof sl.createBrotliDecompress=="function"){z=z.pipe(sl.createBrotliDecompress()),d=new Qi(z,R),r(d);return}d=new Qi(z,R),r(d)}),sZ(p,a)})}n(Ns,"fetch");function bZ(t,e){let r;t.on("socket",function(i){r=i}),t.on("response",function(i){let a=i.headers;a["transfer-encoding"]==="chunked"&&!a["content-length"]&&i.once("close",function(s){if(r&&r.listenerCount("data")>0&&!s){let l=new Error("Premature close");l.code="ERR_STREAM_PREMATURE_CLOSE",e(l)}})})}n(bZ,"fixResponseChunkedTransferBadEnding");function H7(t,e){t.destroy?t.destroy(e):(t.emit("error",e),t.end())}n(H7,"destroyStream");Ns.isRedirect=function(t){return t===301||t===302||t===303||t===307||t===308};Ns.Promise=global.Promise;pz.exports=za=Ns;Object.defineProperty(za,"__esModule",{value:!0});za.default=za;za.Headers=Xi;za.Request=qs;za.Response=Qi;za.FetchError=Hr;za.AbortError=W1});var X7=v((age,i0)=>{function vZ(t){return t&&t.__esModule?t:{default:t}}n(vZ,"_interopRequireDefault");i0.exports=vZ,i0.exports.__esModule=!0,i0.exports.default=i0.exports});var F1=v((sge,Bn)=>{function eb(t){"@babel/helpers - typeof";return Bn.exports=eb=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Bn.exports.__esModule=!0,Bn.exports.default=Bn.exports,eb(t)}n(eb,"_typeof");Bn.exports=eb,Bn.exports.__esModule=!0,Bn.exports.default=Bn.exports});var hz=v((lge,Cn)=>{var mz=F1().default;function fz(){"use strict";Cn.exports=fz=n(function(){return e},"_regeneratorRuntime"),Cn.exports.__esModule=!0,Cn.exports.default=Cn.exports;var t,e={},r=Object.prototype,i=r.hasOwnProperty,a=Object.defineProperty||function(y,S,b){y[S]=b.value},s=typeof Symbol=="function"?Symbol:{},o=s.iterator||"@@iterator",l=s.asyncIterator||"@@asyncIterator",d=s.toStringTag||"@@toStringTag";function u(y,S,b){return Object.defineProperty(y,S,{value:b,enumerable:!0,configurable:!0,writable:!0}),y[S]}n(u,"define");try{u({},"")}catch{u=n(function(b,w,T){return b[w]=T},"define")}function c(y,S,b,w){var T=S&&S.prototype instanceof R?S:R,A=Object.create(T.prototype),h=new m(w||[]);return a(A,"_invoke",{value:le(y,b,h)}),A}n(c,"wrap");function p(y,S,b){try{return{type:"normal",arg:y.call(S,b)}}catch(w){return{type:"throw",arg:w}}}n(p,"tryCatch"),e.wrap=c;var x="suspendedStart",E="suspendedYield",I="executing",k="completed",z={};function R(){}n(R,"Generator");function F(){}n(F,"GeneratorFunction");function B(){}n(B,"GeneratorFunctionPrototype");var C={};u(C,o,function(){return this});var W=Object.getPrototypeOf,L=W&&W(W(g([])));L&&L!==r&&i.call(L,o)&&(C=L);var H=B.prototype=R.prototype=Object.create(C);function Z(y){["next","throw","return"].forEach(function(S){u(y,S,function(b){return this._invoke(S,b)})})}n(Z,"defineIteratorMethods");function se(y,S){function b(T,A,h,P){var j=p(y[T],y,A);if(j.type!=="throw"){var G=j.arg,$=G.value;return $&&mz($)=="object"&&i.call($,"__await")?S.resolve($.__await).then(function(Y){b("next",Y,h,P)},function(Y){b("throw",Y,h,P)}):S.resolve($).then(function(Y){G.value=Y,h(G)},function(Y){return b("throw",Y,h,P)})}P(j.arg)}n(b,"invoke");var w;a(this,"_invoke",{value:n(function(A,h){function P(){return new S(function(j,G){b(A,h,j,G)})}return n(P,"callInvokeWithMethodAndArg"),w=w?w.then(P,P):P()},"value")})}n(se,"AsyncIterator");function le(y,S,b){var w=x;return function(T,A){if(w===I)throw new Error("Generator is already running");if(w===k){if(T==="throw")throw A;return{value:t,done:!0}}for(b.method=T,b.arg=A;;){var h=b.delegate;if(h){var P=Q(h,b);if(P){if(P===z)continue;return P}}if(b.method==="next")b.sent=b._sent=b.arg;else if(b.method==="throw"){if(w===x)throw w=k,b.arg;b.dispatchException(b.arg)}else b.method==="return"&&b.abrupt("return",b.arg);w=I;var j=p(y,S,b);if(j.type==="normal"){if(w=b.done?k:E,j.arg===z)continue;return{value:j.arg,done:b.done}}j.type==="throw"&&(w=k,b.method="throw",b.arg=j.arg)}}}n(le,"makeInvokeMethod");function Q(y,S){var b=S.method,w=y.iterator[b];if(w===t)return S.delegate=null,b==="throw"&&y.iterator.return&&(S.method="return",S.arg=t,Q(y,S),S.method==="throw")||b!=="return"&&(S.method="throw",S.arg=new TypeError("The iterator does not provide a '"+b+"' method")),z;var T=p(w,y.iterator,S.arg);if(T.type==="throw")return S.method="throw",S.arg=T.arg,S.delegate=null,z;var A=T.arg;return A?A.done?(S[y.resultName]=A.value,S.next=y.nextLoc,S.method!=="return"&&(S.method="next",S.arg=t),S.delegate=null,z):A:(S.method="throw",S.arg=new TypeError("iterator result is not an object"),S.delegate=null,z)}n(Q,"maybeInvokeDelegate");function pe(y){var S={tryLoc:y[0]};1 in y&&(S.catchLoc=y[1]),2 in y&&(S.finallyLoc=y[2],S.afterLoc=y[3]),this.tryEntries.push(S)}n(pe,"pushTryEntry");function M(y){var S=y.completion||{};S.type="normal",delete S.arg,y.completion=S}n(M,"resetTryEntry");function m(y){this.tryEntries=[{tryLoc:"root"}],y.forEach(pe,this),this.reset(!0)}n(m,"Context");function g(y){if(y||y===""){var S=y[o];if(S)return S.call(y);if(typeof y.next=="function")return y;if(!isNaN(y.length)){var b=-1,w=n(function T(){for(;++b=0;--T){var A=this.tryEntries[T],h=A.completion;if(A.tryLoc==="root")return w("end");if(A.tryLoc<=this.prev){var P=i.call(A,"catchLoc"),j=i.call(A,"finallyLoc");if(P&&j){if(this.prev=0;--w){var T=this.tryEntries[w];if(T.tryLoc<=this.prev&&i.call(T,"finallyLoc")&&this.prev=0;--b){var w=this.tryEntries[b];if(w.finallyLoc===S)return this.complete(w.completion,w.afterLoc),M(w),z}},"finish"),catch:n(function(S){for(var b=this.tryEntries.length-1;b>=0;--b){var w=this.tryEntries[b];if(w.tryLoc===S){var T=w.completion;if(T.type==="throw"){var A=T.arg;M(w)}return A}}throw new Error("illegal catch attempt")},"_catch"),delegateYield:n(function(S,b,w){return this.delegate={iterator:g(S),resultName:b,nextLoc:w},this.method==="next"&&(this.arg=t),z},"delegateYield")},e}n(fz,"_regeneratorRuntime");Cn.exports=fz,Cn.exports.__esModule=!0,Cn.exports.default=Cn.exports});var yz=v((uge,gz)=>{var O8=hz()();gz.exports=O8;try{regeneratorRuntime=O8}catch{typeof globalThis=="object"?globalThis.regeneratorRuntime=O8:Function("r","regeneratorRuntime = r")(O8)}});var vz=v((cge,a0)=>{function bz(t,e,r,i,a,s,o){try{var l=t[s](o),d=l.value}catch(u){r(u);return}l.done?e(d):Promise.resolve(d).then(i,a)}n(bz,"asyncGeneratorStep");function SZ(t){return function(){var e=this,r=arguments;return new Promise(function(i,a){var s=t.apply(e,r);function o(d){bz(s,i,a,o,l,"next",d)}n(o,"_next");function l(d){bz(s,i,a,o,l,"throw",d)}n(l,"_throw"),o(void 0)})}}n(SZ,"_asyncToGenerator");a0.exports=SZ,a0.exports.__esModule=!0,a0.exports.default=a0.exports});var Sz=v((mge,n0)=>{function wZ(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}n(wZ,"_classCallCheck");n0.exports=wZ,n0.exports.__esModule=!0,n0.exports.default=n0.exports});var xz=v((hge,s0)=>{var wz=F1().default;function xZ(t,e){if(wz(t)!=="object"||t===null)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var i=r.call(t,e||"default");if(wz(i)!=="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}n(xZ,"_toPrimitive");s0.exports=xZ,s0.exports.__esModule=!0,s0.exports.default=s0.exports});var Az=v((yge,o0)=>{var AZ=F1().default,_Z=xz();function kZ(t){var e=_Z(t,"string");return AZ(e)==="symbol"?e:String(e)}n(kZ,"_toPropertyKey");o0.exports=kZ,o0.exports.__esModule=!0,o0.exports.default=o0.exports});var kz=v((vge,l0)=>{var EZ=Az();function _z(t,e){for(var r=0;r{function tb(t,e){return On.exports=tb=Object.setPrototypeOf?Object.setPrototypeOf.bind():n(function(i,a){return i.__proto__=a,i},"_setPrototypeOf"),On.exports.__esModule=!0,On.exports.default=On.exports,tb(t,e)}n(tb,"_setPrototypeOf");On.exports=tb,On.exports.__esModule=!0,On.exports.default=On.exports});var Pz=v((Age,d0)=>{var TZ=Ez();function zZ(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&TZ(t,e)}n(zZ,"_inherits");d0.exports=zZ,d0.exports.__esModule=!0,d0.exports.default=d0.exports});var Tz=v((kge,u0)=>{function IZ(t){if(t===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}n(IZ,"_assertThisInitialized");u0.exports=IZ,u0.exports.__esModule=!0,u0.exports.default=u0.exports});var zz=v((Pge,c0)=>{var MZ=F1().default,DZ=Tz();function RZ(t,e){if(e&&(MZ(e)==="object"||typeof e=="function"))return e;if(e!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return DZ(t)}n(RZ,"_possibleConstructorReturn");c0.exports=RZ,c0.exports.__esModule=!0,c0.exports.default=c0.exports});var Iz=v((zge,Nn)=>{function rb(t){return Nn.exports=rb=Object.setPrototypeOf?Object.getPrototypeOf.bind():n(function(r){return r.__proto__||Object.getPrototypeOf(r)},"_getPrototypeOf"),Nn.exports.__esModule=!0,Nn.exports.default=Nn.exports,rb(t)}n(rb,"_getPrototypeOf");Nn.exports=rb,Nn.exports.__esModule=!0,Nn.exports.default=Nn.exports});var Dz=v((Mge,ib)=>{"use strict";var BZ=Object.prototype.hasOwnProperty,yi="~";function p0(){}n(p0,"Events");Object.create&&(p0.prototype=Object.create(null),new p0().__proto__||(yi=!1));function CZ(t,e,r){this.fn=t,this.context=e,this.once=r||!1}n(CZ,"EE");function Mz(t,e,r,i,a){if(typeof r!="function")throw new TypeError("The listener must be a function");var s=new CZ(r,i||t,a),o=yi?yi+e:e;return t._events[o]?t._events[o].fn?t._events[o]=[t._events[o],s]:t._events[o].push(s):(t._events[o]=s,t._eventsCount++),t}n(Mz,"addListener");function N8(t,e){--t._eventsCount===0?t._events=new p0:delete t._events[e]}n(N8,"clearEvent");function ti(){this._events=new p0,this._eventsCount=0}n(ti,"EventEmitter");ti.prototype.eventNames=n(function(){var e=[],r,i;if(this._eventsCount===0)return e;for(i in r=this._events)BZ.call(r,i)&&e.push(yi?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(r)):e},"eventNames");ti.prototype.listeners=n(function(e){var r=yi?yi+e:e,i=this._events[r];if(!i)return[];if(i.fn)return[i.fn];for(var a=0,s=i.length,o=new Array(s);a{"use strict";var Vs=X7();Object.defineProperty(W8,"__esModule",{value:!0});W8.default=void 0;var Ws=Vs(yz()),q8=Vs(vz()),OZ=Vs(F1()),NZ=Vs(Sz()),qZ=Vs(kz()),WZ=Vs(Pz()),VZ=Vs(zz()),Rz=Vs(Iz()),FZ=Dz();function KZ(t){var e=LZ();return n(function(){var i=(0,Rz.default)(t),a;if(e){var s=(0,Rz.default)(this).constructor;a=Reflect.construct(i,arguments,s)}else a=i.apply(this,arguments);return(0,VZ.default)(this,a)},"_createSuperInternal")}n(KZ,"_createSuper");function LZ(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}n(LZ,"_isNativeReflectConstruct");var UZ=function(t,e){var r={};for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&e.indexOf(i)<0&&(r[i]=t[i]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,i=Object.getOwnPropertySymbols(t);a1&&arguments[1]!==void 0?arguments[1]:"ws://localhost:8080",o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},l=arguments.length>3?arguments[3]:void 0;(0,NZ.default)(this,r);var d=o.autoconnect,u=d===void 0?!0:d,c=o.reconnect,p=c===void 0?!0:c,x=o.reconnect_interval,E=x===void 0?1e3:x,I=o.max_reconnects,k=I===void 0?5:I,z=UZ(o,["autoconnect","reconnect","reconnect_interval","max_reconnects"]);return a=e.call(this),a.webSocketFactory=i,a.queue={},a.rpc_id=0,a.address=s,a.autoconnect=u,a.ready=!1,a.reconnect=p,a.reconnect_timer_id=void 0,a.reconnect_interval=E,a.max_reconnects=k,a.rest_options=z,a.current_reconnects=0,a.generate_request_id=l||function(){return++a.rpc_id},a.autoconnect&&a._connect(a.address,Object.assign({autoconnect:a.autoconnect,reconnect:a.reconnect,reconnect_interval:a.reconnect_interval,max_reconnects:a.max_reconnects},a.rest_options)),a}return n(r,"CommonClient"),(0,qZ.default)(r,[{key:"connect",value:n(function(){this.socket||this._connect(this.address,Object.assign({autoconnect:this.autoconnect,reconnect:this.reconnect,reconnect_interval:this.reconnect_interval,max_reconnects:this.max_reconnects},this.rest_options))},"connect")},{key:"call",value:n(function(a,s,o,l){var d=this;return!l&&(0,OZ.default)(o)==="object"&&(l=o,o=null),new Promise(function(u,c){if(!d.ready)return c(new Error("socket not ready"));var p=d.generate_request_id(a,s),x={jsonrpc:"2.0",method:a,params:s||null,id:p};d.socket.send(JSON.stringify(x),l,function(E){if(E)return c(E);d.queue[p]={promise:[u,c]},o&&(d.queue[p].timeout=setTimeout(function(){delete d.queue[p],c(new Error("reply timeout"))},o))})})},"call")},{key:"login",value:function(){var i=(0,q8.default)(Ws.default.mark(n(function s(o){var l;return Ws.default.wrap(n(function(u){for(;;)switch(u.prev=u.next){case 0:return u.next=2,this.call("rpc.login",o);case 2:if(l=u.sent,l){u.next=5;break}throw new Error("authentication failed");case 5:return u.abrupt("return",l);case 6:case"end":return u.stop()}},"_callee$"),s,this)},"_callee")));function a(s){return i.apply(this,arguments)}return n(a,"login"),a}()},{key:"listMethods",value:function(){var i=(0,q8.default)(Ws.default.mark(n(function s(){return Ws.default.wrap(n(function(l){for(;;)switch(l.prev=l.next){case 0:return l.next=2,this.call("__listMethods");case 2:return l.abrupt("return",l.sent);case 3:case"end":return l.stop()}},"_callee2$"),s,this)},"_callee2")));function a(){return i.apply(this,arguments)}return n(a,"listMethods"),a}()},{key:"notify",value:n(function(a,s){var o=this;return new Promise(function(l,d){if(!o.ready)return d(new Error("socket not ready"));var u={jsonrpc:"2.0",method:a,params:s||null};o.socket.send(JSON.stringify(u),function(c){if(c)return d(c);l()})})},"notify")},{key:"subscribe",value:function(){var i=(0,q8.default)(Ws.default.mark(n(function s(o){var l;return Ws.default.wrap(n(function(u){for(;;)switch(u.prev=u.next){case 0:return typeof o=="string"&&(o=[o]),u.next=3,this.call("rpc.on",o);case 3:if(l=u.sent,!(typeof o=="string"&&l[o]!=="ok")){u.next=6;break}throw new Error("Failed subscribing to an event '"+o+"' with: "+l[o]);case 6:return u.abrupt("return",l);case 7:case"end":return u.stop()}},"_callee3$"),s,this)},"_callee3")));function a(s){return i.apply(this,arguments)}return n(a,"subscribe"),a}()},{key:"unsubscribe",value:function(){var i=(0,q8.default)(Ws.default.mark(n(function s(o){var l;return Ws.default.wrap(n(function(u){for(;;)switch(u.prev=u.next){case 0:return typeof o=="string"&&(o=[o]),u.next=3,this.call("rpc.off",o);case 3:if(l=u.sent,!(typeof o=="string"&&l[o]!=="ok")){u.next=6;break}throw new Error("Failed unsubscribing from an event with: "+l);case 6:return u.abrupt("return",l);case 7:case"end":return u.stop()}},"_callee4$"),s,this)},"_callee4")));function a(s){return i.apply(this,arguments)}return n(a,"unsubscribe"),a}()},{key:"close",value:n(function(a,s){this.socket.close(a||1e3,s)},"close")},{key:"_connect",value:n(function(a,s){var o=this;clearTimeout(this.reconnect_timer_id),this.socket=this.webSocketFactory(a,s),this.socket.addEventListener("open",function(){o.ready=!0,o.emit("open"),o.current_reconnects=0}),this.socket.addEventListener("message",function(l){var d=l.data;d instanceof ArrayBuffer&&(d=Buffer.from(d).toString());try{d=JSON.parse(d)}catch{return}if(d.notification&&o.listeners(d.notification).length){if(!Object.keys(d.params).length)return o.emit(d.notification);var u=[d.notification];if(d.params.constructor===Object)u.push(d.params);else for(var c=0;co.current_reconnects||o.max_reconnects===0)&&(o.reconnect_timer_id=setTimeout(function(){return o._connect(a,s)},o.reconnect_interval)))})},"_connect")}]),r}(FZ.EventEmitter);W8.default=jZ});var Fs=v((Cge,Cz)=>{"use strict";Cz.exports={BINARY_TYPES:["nodebuffer","arraybuffer","fragments"],EMPTY_BUFFER:Buffer.alloc(0),GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",kForOnEventAttribute:Symbol("kIsForOnEventAttribute"),kListener:Symbol("kListener"),kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),NOOP:()=>{}}});var Yz=v((Oge,Jz)=>{var Wz=require("fs"),qn=require("path"),Vz=require("os"),Fz=typeof __webpack_require__=="function"?__non_webpack_require__:require,HZ=process.config&&process.config.variables||{},$Z=!!process.env.PREBUILDS_ONLY,Oz=process.versions.modules,ab=JZ()?"electron":ZZ()?"node-webkit":"node",nb=process.env.npm_config_arch||Vz.arch(),sb=process.env.npm_config_platform||Vz.platform(),Kz=process.env.LIBC||(YZ(sb)?"musl":"glibc"),ob=process.env.ARM_VERSION||(nb==="arm64"?"8":HZ.arm_version)||"",Lz=(process.versions.uv||"").split(".")[0];Jz.exports=Xa;function Xa(t){return Fz(Xa.resolve(t))}n(Xa,"load");Xa.resolve=Xa.path=function(t){t=qn.resolve(t||".");try{var e=Fz(qn.join(t,"package.json")).name.toUpperCase().replace(/-/g,"_");process.env[e+"_PREBUILD"]&&(t=process.env[e+"_PREBUILD"])}catch{}if(!$Z){var r=Nz(qn.join(t,"build/Release"),qz);if(r)return r;var i=Nz(qn.join(t,"build/Debug"),qz);if(i)return i}var a=l(t);if(a)return a;var s=l(qn.dirname(process.execPath));if(s)return s;var o=["platform="+sb,"arch="+nb,"runtime="+ab,"abi="+Oz,"uv="+Lz,ob?"armv="+ob:"","libc="+Kz,"node="+process.versions.node,process.versions.electron?"electron="+process.versions.electron:"",typeof __webpack_require__=="function"?"webpack=true":""].filter(Boolean).join(" ");throw new Error("No native build was found for "+o+` loaded from: `+t+` -`);function o(l){var d=ob(Nn.join(l,"prebuilds")).map(Lz),u=d.filter(Uz(nb,ab)).sort(jz)[0];if(u){var c=Nn.join(l,"prebuilds",u.name),w=ob(c).map(Hz),k=w.filter($z(ib,Cz)),z=k.sort(Gz(ib))[0];if(z)return Nn.join(c,z.file)}}};function ob(t){try{return qz.readdirSync(t)}catch{return[]}}function Oz(t,e){var r=ob(t).filter(e);return r[0]&&Nn.join(t,r[0])}function Nz(t){return/\.node$/.test(t)}function Lz(t){var e=t.split("-");if(e.length===2){var r=e[0],i=e[1].split("+");if(r&&i.length&&i.every(Boolean))return{name:t,platform:r,architectures:i}}}function Uz(t,e){return function(r){return r==null||r.platform!==t?!1:r.architectures.includes(e)}}function jz(t,e){return t.architectures.length-e.architectures.length}function Hz(t){var e=t.split("."),r=e.pop(),i={file:t,specificity:0};if(r==="node"){for(var a=0;ar.specificity?-1:1:0}}function GZ(){return!!(process.versions&&process.versions.nw)}function ZZ(){return process.versions&&process.versions.electron||process.env.ELECTRON_RUN_AS_NODE?!0:typeof window<"u"&&window.process&&window.process.type==="renderer"}function JZ(t){return t==="linux"&&qz.existsSync("/etc/alpine-release")}Qa.parseTags=Hz;Qa.matchTags=$z;Qa.compareTags=Gz;Qa.parseTuple=Lz;Qa.matchTuple=Uz;Qa.compareTuples=jz});var db=b((A3e,lb)=>{typeof process.addon=="function"?lb.exports=process.addon.bind(process):lb.exports=Jz()});var Qz=b((_3e,Yz)=>{"use strict";var YZ=(t,e,r,i,a)=>{for(var n=0;n{let r=t.length;for(var i=0;i{"use strict";try{ub.exports=db()(__dirname)}catch{ub.exports=Qz()}});var u0=b((E3e,W8)=>{"use strict";var{EMPTY_BUFFER:XZ}=Vs(),cb=Buffer[Symbol.species];function eJ(t,e){if(t.length===0)return XZ;if(t.length===1)return t[0];let r=Buffer.allocUnsafe(e),i=0;for(let a=0;a{"use strict";var rI=Symbol("kDone"),mb=Symbol("kRun"),fb=class{constructor(e){this[rI]=()=>{this.pending--,this[mb]()},this.concurrency=e||1/0,this.jobs=[],this.pending=0}add(e){this.jobs.push(e),this[mb]()}[mb](){if(this.pending!==this.concurrency&&this.jobs.length){let e=this.jobs.shift();this.pending++,e(this[rI])}}};iI.exports=fb});var m0=b((T3e,lI)=>{"use strict";var c0=require("zlib"),nI=u0(),rJ=aI(),{kStatusCode:sI}=Vs(),iJ=Buffer[Symbol.species],aJ=Buffer.from([0,0,255,255]),K8=Symbol("permessage-deflate"),qn=Symbol("total-length"),p0=Symbol("callback"),Fs=Symbol("buffers"),F8=Symbol("error"),V8,hb=class{constructor(e,r,i){if(this._maxPayload=i|0,this._options=e||{},this._threshold=this._options.threshold!==void 0?this._options.threshold:1024,this._isServer=!!r,this._deflate=null,this._inflate=null,this.params=null,!V8){let a=this._options.concurrencyLimit!==void 0?this._options.concurrencyLimit:10;V8=new rJ(a)}}static get extensionName(){return"permessage-deflate"}offer(){let e={};return this._options.serverNoContextTakeover&&(e.server_no_context_takeover=!0),this._options.clientNoContextTakeover&&(e.client_no_context_takeover=!0),this._options.serverMaxWindowBits&&(e.server_max_window_bits=this._options.serverMaxWindowBits),this._options.clientMaxWindowBits?e.client_max_window_bits=this._options.clientMaxWindowBits:this._options.clientMaxWindowBits==null&&(e.client_max_window_bits=!0),e}accept(e){return e=this.normalizeParams(e),this.params=this._isServer?this.acceptAsServer(e):this.acceptAsClient(e),this.params}cleanup(){if(this._inflate&&(this._inflate.close(),this._inflate=null),this._deflate){let e=this._deflate[p0];this._deflate.close(),this._deflate=null,e&&e(new Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(e){let r=this._options,i=e.find(a=>!(r.serverNoContextTakeover===!1&&a.server_no_context_takeover||a.server_max_window_bits&&(r.serverMaxWindowBits===!1||typeof r.serverMaxWindowBits=="number"&&r.serverMaxWindowBits>a.server_max_window_bits)||typeof r.clientMaxWindowBits=="number"&&!a.client_max_window_bits));if(!i)throw new Error("None of the extension offers can be accepted");return r.serverNoContextTakeover&&(i.server_no_context_takeover=!0),r.clientNoContextTakeover&&(i.client_no_context_takeover=!0),typeof r.serverMaxWindowBits=="number"&&(i.server_max_window_bits=r.serverMaxWindowBits),typeof r.clientMaxWindowBits=="number"?i.client_max_window_bits=r.clientMaxWindowBits:(i.client_max_window_bits===!0||r.clientMaxWindowBits===!1)&&delete i.client_max_window_bits,i}acceptAsClient(e){let r=e[0];if(this._options.clientNoContextTakeover===!1&&r.client_no_context_takeover)throw new Error('Unexpected parameter "client_no_context_takeover"');if(!r.client_max_window_bits)typeof this._options.clientMaxWindowBits=="number"&&(r.client_max_window_bits=this._options.clientMaxWindowBits);else if(this._options.clientMaxWindowBits===!1||typeof this._options.clientMaxWindowBits=="number"&&r.client_max_window_bits>this._options.clientMaxWindowBits)throw new Error('Unexpected or invalid parameter "client_max_window_bits"');return r}normalizeParams(e){return e.forEach(r=>{Object.keys(r).forEach(i=>{let a=r[i];if(a.length>1)throw new Error(`Parameter "${i}" must have only a single value`);if(a=a[0],i==="client_max_window_bits"){if(a!==!0){let n=+a;if(!Number.isInteger(n)||n<8||n>15)throw new TypeError(`Invalid value for parameter "${i}": ${a}`);a=n}else if(!this._isServer)throw new TypeError(`Invalid value for parameter "${i}": ${a}`)}else if(i==="server_max_window_bits"){let n=+a;if(!Number.isInteger(n)||n<8||n>15)throw new TypeError(`Invalid value for parameter "${i}": ${a}`);a=n}else if(i==="client_no_context_takeover"||i==="server_no_context_takeover"){if(a!==!0)throw new TypeError(`Invalid value for parameter "${i}": ${a}`)}else throw new Error(`Unknown parameter "${i}"`);r[i]=a})}),e}decompress(e,r,i){V8.add(a=>{this._decompress(e,r,(n,s)=>{a(),i(n,s)})})}compress(e,r,i){V8.add(a=>{this._compress(e,r,(n,s)=>{a(),i(n,s)})})}_decompress(e,r,i){let a=this._isServer?"client":"server";if(!this._inflate){let n=`${a}_max_window_bits`,s=typeof this.params[n]!="number"?c0.Z_DEFAULT_WINDOWBITS:this.params[n];this._inflate=c0.createInflateRaw({...this._options.zlibInflateOptions,windowBits:s}),this._inflate[K8]=this,this._inflate[qn]=0,this._inflate[Fs]=[],this._inflate.on("error",sJ),this._inflate.on("data",oI)}this._inflate[p0]=i,this._inflate.write(e),r&&this._inflate.write(aJ),this._inflate.flush(()=>{let n=this._inflate[F8];if(n){this._inflate.close(),this._inflate=null,i(n);return}let s=nI.concat(this._inflate[Fs],this._inflate[qn]);this._inflate._readableState.endEmitted?(this._inflate.close(),this._inflate=null):(this._inflate[qn]=0,this._inflate[Fs]=[],r&&this.params[`${a}_no_context_takeover`]&&this._inflate.reset()),i(null,s)})}_compress(e,r,i){let a=this._isServer?"server":"client";if(!this._deflate){let n=`${a}_max_window_bits`,s=typeof this.params[n]!="number"?c0.Z_DEFAULT_WINDOWBITS:this.params[n];this._deflate=c0.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:s}),this._deflate[qn]=0,this._deflate[Fs]=[],this._deflate.on("data",nJ)}this._deflate[p0]=i,this._deflate.write(e),this._deflate.flush(c0.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let n=nI.concat(this._deflate[Fs],this._deflate[qn]);r&&(n=new iJ(n.buffer,n.byteOffset,n.length-4)),this._deflate[p0]=null,this._deflate[qn]=0,this._deflate[Fs]=[],r&&this.params[`${a}_no_context_takeover`]&&this._deflate.reset(),i(null,n)})}};lI.exports=hb;function nJ(t){this[Fs].push(t),this[qn]+=t.length}function oI(t){if(this[qn]+=t.length,this[K8]._maxPayload<1||this[qn]<=this[K8]._maxPayload){this[Fs].push(t);return}this[F8]=new RangeError("Max payload size exceeded"),this[F8].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[F8][sI]=1009,this.removeListener("data",oI),this.reset()}function sJ(t){this[K8]._inflate=null,t[sI]=1007,this[p0](t)}});var uI=b((z3e,dI)=>{"use strict";function oJ(t){let e=t.length,r=0;for(;r=e||(t[r+1]&192)!==128||(t[r+2]&192)!==128||t[r]===224&&(t[r+1]&224)===128||t[r]===237&&(t[r+1]&224)===160)return!1;r+=3}else if((t[r]&248)===240){if(r+3>=e||(t[r+1]&192)!==128||(t[r+2]&192)!==128||(t[r+3]&192)!==128||t[r]===240&&(t[r+1]&240)===128||t[r]===244&&t[r+1]>143||t[r]>244)return!1;r+=4}else return!1;return!0}dI.exports=oJ});var cI=b((I3e,gb)=>{"use strict";try{gb.exports=db()(__dirname)}catch{gb.exports=uI()}});var f0=b((M3e,L8)=>{"use strict";var{isUtf8:pI}=require("buffer"),lJ=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0];function dJ(t){return t>=1e3&&t<=1014&&t!==1004&&t!==1005&&t!==1006||t>=3e3&&t<=4999}function yb(t){let e=t.length,r=0;for(;r=e||(t[r+1]&192)!==128||(t[r+2]&192)!==128||t[r]===224&&(t[r+1]&224)===128||t[r]===237&&(t[r+1]&224)===160)return!1;r+=3}else if((t[r]&248)===240){if(r+3>=e||(t[r+1]&192)!==128||(t[r+2]&192)!==128||(t[r+3]&192)!==128||t[r]===240&&(t[r+1]&240)===128||t[r]===244&&t[r+1]>143||t[r]>244)return!1;r+=4}else return!1;return!0}L8.exports={isValidStatusCode:dJ,isValidUTF8:yb,tokenChars:lJ};if(pI)L8.exports.isValidUTF8=function(t){return t.length<24?yb(t):pI(t)};else if(!process.env.WS_NO_UTF_8_VALIDATE)try{let t=cI();L8.exports.isValidUTF8=function(e){return e.length<32?yb(e):t(e)}}catch{}});var xb=b((D3e,SI)=>{"use strict";var{Writable:uJ}=require("stream"),mI=m0(),{BINARY_TYPES:cJ,EMPTY_BUFFER:fI,kStatusCode:pJ,kWebSocket:mJ}=Vs(),{concat:bb,toArrayBuffer:fJ,unmask:hJ}=u0(),{isValidStatusCode:gJ,isValidUTF8:hI}=f0(),U8=Buffer[Symbol.species],yJ=Promise.resolve(),bJ=typeof queueMicrotask=="function"?queueMicrotask:vJ,F1=0,gI=1,yI=2,bI=3,vb=4,vI=5,Sb=6,wb=class extends uJ{constructor(e={}){super(),this._binaryType=e.binaryType||cJ[0],this._extensions=e.extensions||{},this._isServer=!!e.isServer,this._maxPayload=e.maxPayload|0,this._skipUTF8Validation=!!e.skipUTF8Validation,this[mJ]=void 0,this._bufferedBytes=0,this._buffers=[],this._compressed=!1,this._payloadLength=0,this._mask=void 0,this._fragmented=0,this._masked=!1,this._fin=!1,this._opcode=0,this._totalPayloadLength=0,this._messageLength=0,this._fragments=[],this._state=F1,this._loop=!1}_write(e,r,i){if(this._opcode===8&&this._state==F1)return i();this._bufferedBytes+=e.length,this._buffers.push(e),this.startLoop(i)}consume(e){if(this._bufferedBytes-=e,e===this._buffers[0].length)return this._buffers.shift();if(e=i.length?r.set(this._buffers.shift(),a):(r.set(new Uint8Array(i.buffer,i.byteOffset,e),a),this._buffers[0]=new U8(i.buffer,i.byteOffset+e,i.length-e)),e-=i.length}while(e>0);return r}startLoop(e){let r;this._loop=!0;do switch(this._state){case F1:r=this.getInfo();break;case gI:r=this.getPayloadLength16();break;case yI:r=this.getPayloadLength64();break;case bI:this.getMask();break;case vb:r=this.getData(e);break;case vI:this._loop=!1;return;default:this._loop=!1,bJ(()=>{this._state=F1,this.startLoop(e)});return}while(this._loop);e(r)}getInfo(){if(this._bufferedBytes<2){this._loop=!1;return}let e=this.consume(2);if(e[0]&48)return this._loop=!1,Mr(RangeError,"RSV2 and RSV3 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3");let r=(e[0]&64)===64;if(r&&!this._extensions[mI.extensionName])return this._loop=!1,Mr(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");if(this._fin=(e[0]&128)===128,this._opcode=e[0]&15,this._payloadLength=e[1]&127,this._opcode===0){if(r)return this._loop=!1,Mr(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");if(!this._fragmented)return this._loop=!1,Mr(RangeError,"invalid opcode 0",!0,1002,"WS_ERR_INVALID_OPCODE");this._opcode=this._fragmented}else if(this._opcode===1||this._opcode===2){if(this._fragmented)return this._loop=!1,Mr(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");this._compressed=r}else if(this._opcode>7&&this._opcode<11){if(!this._fin)return this._loop=!1,Mr(RangeError,"FIN must be set",!0,1002,"WS_ERR_EXPECTED_FIN");if(r)return this._loop=!1,Mr(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");if(this._payloadLength>125||this._opcode===8&&this._payloadLength===1)return this._loop=!1,Mr(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH")}else return this._loop=!1,Mr(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");if(!this._fin&&!this._fragmented&&(this._fragmented=this._opcode),this._masked=(e[1]&128)===128,this._isServer){if(!this._masked)return this._loop=!1,Mr(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK")}else if(this._masked)return this._loop=!1,Mr(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK");if(this._payloadLength===126)this._state=gI;else if(this._payloadLength===127)this._state=yI;else return this.haveLength()}getPayloadLength16(){if(this._bufferedBytes<2){this._loop=!1;return}return this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength()}getPayloadLength64(){if(this._bufferedBytes<8){this._loop=!1;return}let e=this.consume(8),r=e.readUInt32BE(0);return r>Math.pow(2,53-32)-1?(this._loop=!1,Mr(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH")):(this._payloadLength=r*Math.pow(2,32)+e.readUInt32BE(4),this.haveLength())}haveLength(){if(this._payloadLength&&this._opcode<8&&(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0))return this._loop=!1,Mr(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");this._masked?this._state=bI:this._state=vb}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=vb}getData(e){let r=fI;if(this._payloadLength){if(this._bufferedBytes7)return this.controlMessage(r);if(this._compressed){this._state=vI,this.decompress(r,e);return}return r.length&&(this._messageLength=this._totalPayloadLength,this._fragments.push(r)),this.dataMessage()}decompress(e,r){this._extensions[mI.extensionName].decompress(e,this._fin,(a,n)=>{if(a)return r(a);if(n.length){if(this._messageLength+=n.length,this._messageLength>this._maxPayload&&this._maxPayload>0)return r(Mr(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH"));this._fragments.push(n)}let s=this.dataMessage();if(s)return r(s);this.startLoop(r)})}dataMessage(){if(this._fin){let e=this._messageLength,r=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],this._opcode===2){let i;this._binaryType==="nodebuffer"?i=bb(r,e):this._binaryType==="arraybuffer"?i=fJ(bb(r,e)):i=r,this.emit("message",i,!0)}else{let i=bb(r,e);if(!this._skipUTF8Validation&&!hI(i))return this._loop=!1,Mr(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");this.emit("message",i,!1)}}this._state=Sb}controlMessage(e){if(this._opcode===8)if(this._loop=!1,e.length===0)this.emit("conclude",1005,fI),this.end(),this._state=F1;else{let r=e.readUInt16BE(0);if(!gJ(r))return Mr(RangeError,`invalid status code ${r}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE");let i=new U8(e.buffer,e.byteOffset+2,e.length-2);if(!this._skipUTF8Validation&&!hI(i))return Mr(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");this.emit("conclude",r,i),this.end(),this._state=F1}else this._opcode===9?(this.emit("ping",e),this._state=Sb):(this.emit("pong",e),this._state=Sb)}};SI.exports=wb;function Mr(t,e,r,i,a){let n=new t(r?`Invalid WebSocket frame: ${e}`:e);return Error.captureStackTrace(n,Mr),n.code=a,n[pJ]=i,n}function vJ(t){yJ.then(t).catch(wJ)}function SJ(t){throw t}function wJ(t){process.nextTick(SJ,t)}});var _b=b((B3e,AI)=>{"use strict";var{Duplex:R3e}=require("stream"),{randomFillSync:xJ}=require("crypto"),wI=m0(),{EMPTY_BUFFER:AJ}=Vs(),{isValidStatusCode:_J}=f0(),{mask:xI,toBuffer:K1}=u0(),za=Symbol("kByteLength"),kJ=Buffer.alloc(4),Ab=class t{constructor(e,r,i){this._extensions=r||{},i&&(this._generateMask=i,this._maskBuffer=Buffer.alloc(4)),this._socket=e,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._deflating=!1,this._queue=[]}static frame(e,r){let i,a=!1,n=2,s=!1;r.mask&&(i=r.maskBuffer||kJ,r.generateMask?r.generateMask(i):xJ(i,0,4),s=(i[0]|i[1]|i[2]|i[3])===0,n=6);let o;typeof e=="string"?(!r.mask||s)&&r[za]!==void 0?o=r[za]:(e=Buffer.from(e),o=e.length):(o=e.length,a=r.mask&&r.readOnly&&!s);let l=o;o>=65536?(n+=8,l=127):o>125&&(n+=2,l=126);let d=Buffer.allocUnsafe(a?o+n:n);return d[0]=r.fin?r.opcode|128:r.opcode,r.rsv1&&(d[0]|=64),d[1]=l,l===126?d.writeUInt16BE(o,2):l===127&&(d[2]=d[3]=0,d.writeUIntBE(o,4,6)),r.mask?(d[1]|=128,d[n-4]=i[0],d[n-3]=i[1],d[n-2]=i[2],d[n-1]=i[3],s?[d,e]:a?(xI(e,i,d,n,o),[d]):(xI(e,i,e,0,o),[d,e])):[d,e]}close(e,r,i,a){let n;if(e===void 0)n=AJ;else{if(typeof e!="number"||!_J(e))throw new TypeError("First argument must be a valid error code number");if(r===void 0||!r.length)n=Buffer.allocUnsafe(2),n.writeUInt16BE(e,0);else{let o=Buffer.byteLength(r);if(o>123)throw new RangeError("The message must not be greater than 123 bytes");n=Buffer.allocUnsafe(2+o),n.writeUInt16BE(e,0),typeof r=="string"?n.write(r,2):n.set(r,2)}}let s={[za]:n.length,fin:!0,generateMask:this._generateMask,mask:i,maskBuffer:this._maskBuffer,opcode:8,readOnly:!1,rsv1:!1};this._deflating?this.enqueue([this.dispatch,n,!1,s,a]):this.sendFrame(t.frame(n,s),a)}ping(e,r,i){let a,n;if(typeof e=="string"?(a=Buffer.byteLength(e),n=!1):(e=K1(e),a=e.length,n=K1.readOnly),a>125)throw new RangeError("The data size must not be greater than 125 bytes");let s={[za]:a,fin:!0,generateMask:this._generateMask,mask:r,maskBuffer:this._maskBuffer,opcode:9,readOnly:n,rsv1:!1};this._deflating?this.enqueue([this.dispatch,e,!1,s,i]):this.sendFrame(t.frame(e,s),i)}pong(e,r,i){let a,n;if(typeof e=="string"?(a=Buffer.byteLength(e),n=!1):(e=K1(e),a=e.length,n=K1.readOnly),a>125)throw new RangeError("The data size must not be greater than 125 bytes");let s={[za]:a,fin:!0,generateMask:this._generateMask,mask:r,maskBuffer:this._maskBuffer,opcode:10,readOnly:n,rsv1:!1};this._deflating?this.enqueue([this.dispatch,e,!1,s,i]):this.sendFrame(t.frame(e,s),i)}send(e,r,i){let a=this._extensions[wI.extensionName],n=r.binary?2:1,s=r.compress,o,l;if(typeof e=="string"?(o=Buffer.byteLength(e),l=!1):(e=K1(e),o=e.length,l=K1.readOnly),this._firstFragment?(this._firstFragment=!1,s&&a&&a.params[a._isServer?"server_no_context_takeover":"client_no_context_takeover"]&&(s=o>=a._threshold),this._compress=s):(s=!1,n=0),r.fin&&(this._firstFragment=!0),a){let d={[za]:o,fin:r.fin,generateMask:this._generateMask,mask:r.mask,maskBuffer:this._maskBuffer,opcode:n,readOnly:l,rsv1:s};this._deflating?this.enqueue([this.dispatch,e,this._compress,d,i]):this.dispatch(e,this._compress,d,i)}else this.sendFrame(t.frame(e,{[za]:o,fin:r.fin,generateMask:this._generateMask,mask:r.mask,maskBuffer:this._maskBuffer,opcode:n,readOnly:l,rsv1:!1}),i)}dispatch(e,r,i,a){if(!r){this.sendFrame(t.frame(e,i),a);return}let n=this._extensions[wI.extensionName];this._bufferedBytes+=i[za],this._deflating=!0,n.compress(e,i.fin,(s,o)=>{if(this._socket.destroyed){let l=new Error("The socket was closed while data was being compressed");typeof a=="function"&&a(l);for(let d=0;d{"use strict";var{kForOnEventAttribute:h0,kListener:kb}=Vs(),_I=Symbol("kCode"),kI=Symbol("kData"),EI=Symbol("kError"),PI=Symbol("kMessage"),TI=Symbol("kReason"),L1=Symbol("kTarget"),zI=Symbol("kType"),II=Symbol("kWasClean"),Wn=class{constructor(e){this[L1]=null,this[zI]=e}get target(){return this[L1]}get type(){return this[zI]}};Object.defineProperty(Wn.prototype,"target",{enumerable:!0});Object.defineProperty(Wn.prototype,"type",{enumerable:!0});var sl=class extends Wn{constructor(e,r={}){super(e),this[_I]=r.code===void 0?0:r.code,this[TI]=r.reason===void 0?"":r.reason,this[II]=r.wasClean===void 0?!1:r.wasClean}get code(){return this[_I]}get reason(){return this[TI]}get wasClean(){return this[II]}};Object.defineProperty(sl.prototype,"code",{enumerable:!0});Object.defineProperty(sl.prototype,"reason",{enumerable:!0});Object.defineProperty(sl.prototype,"wasClean",{enumerable:!0});var U1=class extends Wn{constructor(e,r={}){super(e),this[EI]=r.error===void 0?null:r.error,this[PI]=r.message===void 0?"":r.message}get error(){return this[EI]}get message(){return this[PI]}};Object.defineProperty(U1.prototype,"error",{enumerable:!0});Object.defineProperty(U1.prototype,"message",{enumerable:!0});var g0=class extends Wn{constructor(e,r={}){super(e),this[kI]=r.data===void 0?null:r.data}get data(){return this[kI]}};Object.defineProperty(g0.prototype,"data",{enumerable:!0});var EJ={addEventListener(t,e,r={}){for(let a of this.listeners(t))if(!r[h0]&&a[kb]===e&&!a[h0])return;let i;if(t==="message")i=function(n,s){let o=new g0("message",{data:s?n:n.toString()});o[L1]=this,j8(e,this,o)};else if(t==="close")i=function(n,s){let o=new sl("close",{code:n,reason:s.toString(),wasClean:this._closeFrameReceived&&this._closeFrameSent});o[L1]=this,j8(e,this,o)};else if(t==="error")i=function(n){let s=new U1("error",{error:n,message:n.message});s[L1]=this,j8(e,this,s)};else if(t==="open")i=function(){let n=new Wn("open");n[L1]=this,j8(e,this,n)};else return;i[h0]=!!r[h0],i[kb]=e,r.once?this.once(t,i):this.on(t,i)},removeEventListener(t,e){for(let r of this.listeners(t))if(r[kb]===e&&!r[h0]){this.removeListener(t,r);break}}};MI.exports={CloseEvent:sl,ErrorEvent:U1,Event:Wn,EventTarget:EJ,MessageEvent:g0};function j8(t,e,r){typeof t=="object"&&t.handleEvent?t.handleEvent.call(t,r):t.call(e,r)}});var Eb=b((O3e,RI)=>{"use strict";var{tokenChars:y0}=f0();function Xa(t,e,r){t[e]===void 0?t[e]=[r]:t[e].push(r)}function PJ(t){let e=Object.create(null),r=Object.create(null),i=!1,a=!1,n=!1,s,o,l=-1,d=-1,u=-1,c=0;for(;c{let r=t[e];return Array.isArray(r)||(r=[r]),r.map(i=>[e].concat(Object.keys(i).map(a=>{let n=i[a];return Array.isArray(n)||(n=[n]),n.map(s=>s===!0?a:`${a}=${s}`).join("; ")})).join("; ")).join(", ")}).join(", ")}RI.exports={format:TJ,parse:PJ}});var Mb=b((W3e,UI)=>{"use strict";var zJ=require("events"),IJ=require("https"),MJ=require("http"),OI=require("net"),DJ=require("tls"),{randomBytes:RJ,createHash:BJ}=require("crypto"),{Duplex:N3e,Readable:q3e}=require("stream"),{URL:Pb}=require("url"),Ks=m0(),CJ=xb(),OJ=_b(),{BINARY_TYPES:BI,EMPTY_BUFFER:H8,GUID:NJ,kForOnEventAttribute:Tb,kListener:qJ,kStatusCode:WJ,kWebSocket:ti,NOOP:NI}=Vs(),{EventTarget:{addEventListener:VJ,removeEventListener:FJ}}=DI(),{format:KJ,parse:LJ}=Eb(),{toBuffer:UJ}=u0(),jJ=30*1e3,qI=Symbol("kAborted"),zb=[8,13],Vn=["CONNECTING","OPEN","CLOSING","CLOSED"],HJ=/^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/,Ut=class t extends zJ{constructor(e,r,i){super(),this._binaryType=BI[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage=H8,this._closeTimer=null,this._extensions={},this._paused=!1,this._protocol="",this._readyState=t.CONNECTING,this._receiver=null,this._sender=null,this._socket=null,e!==null?(this._bufferedAmount=0,this._isServer=!1,this._redirects=0,r===void 0?r=[]:Array.isArray(r)||(typeof r=="object"&&r!==null?(i=r,r=[]):r=[r]),WI(this,e,r,i)):this._isServer=!0}get binaryType(){return this._binaryType}set binaryType(e){BI.includes(e)&&(this._binaryType=e,this._receiver&&(this._receiver._binaryType=e))}get bufferedAmount(){return this._socket?this._socket._writableState.length+this._sender._bufferedBytes:this._bufferedAmount}get extensions(){return Object.keys(this._extensions).join()}get isPaused(){return this._paused}get onclose(){return null}get onerror(){return null}get onopen(){return null}get onmessage(){return null}get protocol(){return this._protocol}get readyState(){return this._readyState}get url(){return this._url}setSocket(e,r,i){let a=new CJ({binaryType:this.binaryType,extensions:this._extensions,isServer:this._isServer,maxPayload:i.maxPayload,skipUTF8Validation:i.skipUTF8Validation});this._sender=new OJ(e,this._extensions,i.generateMask),this._receiver=a,this._socket=e,a[ti]=this,e[ti]=this,a.on("conclude",ZJ),a.on("drain",JJ),a.on("error",YJ),a.on("message",QJ),a.on("ping",XJ),a.on("pong",eY),e.setTimeout&&e.setTimeout(0),e.setNoDelay&&e.setNoDelay(),r.length>0&&e.unshift(r),e.on("close",FI),e.on("data",G8),e.on("end",KI),e.on("error",LI),this._readyState=t.OPEN,this.emit("open")}emitClose(){if(!this._socket){this._readyState=t.CLOSED,this.emit("close",this._closeCode,this._closeMessage);return}this._extensions[Ks.extensionName]&&this._extensions[Ks.extensionName].cleanup(),this._receiver.removeAllListeners(),this._readyState=t.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(e,r){if(this.readyState!==t.CLOSED){if(this.readyState===t.CONNECTING){let i="WebSocket was closed before the connection was established";Oi(this,this._req,i);return}if(this.readyState===t.CLOSING){this._closeFrameSent&&(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end();return}this._readyState=t.CLOSING,this._sender.close(e,r,!this._isServer,i=>{i||(this._closeFrameSent=!0,(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end())}),this._closeTimer=setTimeout(this._socket.destroy.bind(this._socket),jJ)}}pause(){this.readyState===t.CONNECTING||this.readyState===t.CLOSED||(this._paused=!0,this._socket.pause())}ping(e,r,i){if(this.readyState===t.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof e=="function"?(i=e,e=r=void 0):typeof r=="function"&&(i=r,r=void 0),typeof e=="number"&&(e=e.toString()),this.readyState!==t.OPEN){Ib(this,e,i);return}r===void 0&&(r=!this._isServer),this._sender.ping(e||H8,r,i)}pong(e,r,i){if(this.readyState===t.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof e=="function"?(i=e,e=r=void 0):typeof r=="function"&&(i=r,r=void 0),typeof e=="number"&&(e=e.toString()),this.readyState!==t.OPEN){Ib(this,e,i);return}r===void 0&&(r=!this._isServer),this._sender.pong(e||H8,r,i)}resume(){this.readyState===t.CONNECTING||this.readyState===t.CLOSED||(this._paused=!1,this._receiver._writableState.needDrain||this._socket.resume())}send(e,r,i){if(this.readyState===t.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof r=="function"&&(i=r,r={}),typeof e=="number"&&(e=e.toString()),this.readyState!==t.OPEN){Ib(this,e,i);return}let a={binary:typeof e!="string",mask:!this._isServer,compress:!0,fin:!0,...r};this._extensions[Ks.extensionName]||(a.compress=!1),this._sender.send(e||H8,a,i)}terminate(){if(this.readyState!==t.CLOSED){if(this.readyState===t.CONNECTING){let e="WebSocket was closed before the connection was established";Oi(this,this._req,e);return}this._socket&&(this._readyState=t.CLOSING,this._socket.destroy())}}};Object.defineProperty(Ut,"CONNECTING",{enumerable:!0,value:Vn.indexOf("CONNECTING")});Object.defineProperty(Ut.prototype,"CONNECTING",{enumerable:!0,value:Vn.indexOf("CONNECTING")});Object.defineProperty(Ut,"OPEN",{enumerable:!0,value:Vn.indexOf("OPEN")});Object.defineProperty(Ut.prototype,"OPEN",{enumerable:!0,value:Vn.indexOf("OPEN")});Object.defineProperty(Ut,"CLOSING",{enumerable:!0,value:Vn.indexOf("CLOSING")});Object.defineProperty(Ut.prototype,"CLOSING",{enumerable:!0,value:Vn.indexOf("CLOSING")});Object.defineProperty(Ut,"CLOSED",{enumerable:!0,value:Vn.indexOf("CLOSED")});Object.defineProperty(Ut.prototype,"CLOSED",{enumerable:!0,value:Vn.indexOf("CLOSED")});["binaryType","bufferedAmount","extensions","isPaused","protocol","readyState","url"].forEach(t=>{Object.defineProperty(Ut.prototype,t,{enumerable:!0})});["open","error","close","message"].forEach(t=>{Object.defineProperty(Ut.prototype,`on${t}`,{enumerable:!0,get(){for(let e of this.listeners(t))if(e[Tb])return e[qJ];return null},set(e){for(let r of this.listeners(t))if(r[Tb]){this.removeListener(t,r);break}typeof e=="function"&&this.addEventListener(t,e,{[Tb]:!0})}})});Ut.prototype.addEventListener=VJ;Ut.prototype.removeEventListener=FJ;UI.exports=Ut;function WI(t,e,r,i){let a={protocolVersion:zb[1],maxPayload:104857600,skipUTF8Validation:!1,perMessageDeflate:!0,followRedirects:!1,maxRedirects:10,...i,createConnection:void 0,socketPath:void 0,hostname:void 0,protocol:void 0,timeout:void 0,method:"GET",host:void 0,path:void 0,port:void 0};if(!zb.includes(a.protocolVersion))throw new RangeError(`Unsupported protocol version: ${a.protocolVersion} (supported versions: ${zb.join(", ")})`);let n;if(e instanceof Pb)n=e;else try{n=new Pb(e)}catch{throw new SyntaxError(`Invalid URL: ${e}`)}n.protocol==="http:"?n.protocol="ws:":n.protocol==="https:"&&(n.protocol="wss:"),t._url=n.href;let s=n.protocol==="wss:",o=n.protocol==="ws+unix:",l;if(n.protocol!=="ws:"&&!s&&!o?l=`The URL's protocol must be one of "ws:", "wss:", "http:", "https", or "ws+unix:"`:o&&!n.pathname?l="The URL's pathname is empty":n.hash&&(l="The URL contains a fragment identifier"),l){let _=new SyntaxError(l);if(t._redirects===0)throw _;$8(t,_);return}let d=s?443:80,u=RJ(16).toString("base64"),c=s?IJ.request:MJ.request,w=new Set,k;if(a.createConnection=s?GJ:$J,a.defaultPort=a.defaultPort||d,a.port=n.port||d,a.host=n.hostname.startsWith("[")?n.hostname.slice(1,-1):n.hostname,a.headers={...a.headers,"Sec-WebSocket-Version":a.protocolVersion,"Sec-WebSocket-Key":u,Connection:"Upgrade",Upgrade:"websocket"},a.path=n.pathname+n.search,a.timeout=a.handshakeTimeout,a.perMessageDeflate&&(k=new Ks(a.perMessageDeflate!==!0?a.perMessageDeflate:{},!1,a.maxPayload),a.headers["Sec-WebSocket-Extensions"]=KJ({[Ks.extensionName]:k.offer()})),r.length){for(let _ of r){if(typeof _!="string"||!HJ.test(_)||w.has(_))throw new SyntaxError("An invalid or duplicated subprotocol was specified");w.add(_)}a.headers["Sec-WebSocket-Protocol"]=r.join(",")}if(a.origin&&(a.protocolVersion<13?a.headers["Sec-WebSocket-Origin"]=a.origin:a.headers.Origin=a.origin),(n.username||n.password)&&(a.auth=`${n.username}:${n.password}`),o){let _=a.path.split(":");a.socketPath=_[0],a.path=_[1]}let z;if(a.followRedirects){if(t._redirects===0){t._originalIpc=o,t._originalSecure=s,t._originalHostOrSocketPath=o?a.socketPath:n.host;let _=i&&i.headers;if(i={...i,headers:{}},_)for(let[T,D]of Object.entries(_))i.headers[T.toLowerCase()]=D}else if(t.listenerCount("redirect")===0){let _=o?t._originalIpc?a.socketPath===t._originalHostOrSocketPath:!1:t._originalIpc?!1:n.host===t._originalHostOrSocketPath;(!_||t._originalSecure&&!s)&&(delete a.headers.authorization,delete a.headers.cookie,_||delete a.headers.host,a.auth=void 0)}a.auth&&!i.headers.authorization&&(i.headers.authorization="Basic "+Buffer.from(a.auth).toString("base64")),z=t._req=c(a),t._redirects&&t.emit("redirect",t.url,z)}else z=t._req=c(a);a.timeout&&z.on("timeout",()=>{Oi(t,z,"Opening handshake has timed out")}),z.on("error",_=>{z===null||z[qI]||(z=t._req=null,$8(t,_))}),z.on("response",_=>{let T=_.headers.location,D=_.statusCode;if(T&&a.followRedirects&&D>=300&&D<400){if(++t._redirects>a.maxRedirects){Oi(t,z,"Maximum redirects exceeded");return}z.abort();let V;try{V=new Pb(T,e)}catch{let B=new SyntaxError(`Invalid URL: ${T}`);$8(t,B);return}WI(t,V,r,i)}else t.emit("unexpected-response",z,_)||Oi(t,z,`Unexpected server response: ${_.statusCode}`)}),z.on("upgrade",(_,T,D)=>{if(t.emit("upgrade",_),t.readyState!==Ut.CONNECTING)return;if(z=t._req=null,_.headers.upgrade.toLowerCase()!=="websocket"){Oi(t,T,"Invalid Upgrade header");return}let V=BJ("sha1").update(u+NJ).digest("base64");if(_.headers["sec-websocket-accept"]!==V){Oi(t,T,"Invalid Sec-WebSocket-Accept header");return}let R=_.headers["sec-websocket-protocol"],B;if(R!==void 0?w.size?w.has(R)||(B="Server sent an invalid subprotocol"):B="Server sent a subprotocol but none was requested":w.size&&(B="Server sent no subprotocol"),B){Oi(t,T,B);return}R&&(t._protocol=R);let q=_.headers["sec-websocket-extensions"];if(q!==void 0){if(!k){Oi(t,T,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");return}let K;try{K=LJ(q)}catch{Oi(t,T,"Invalid Sec-WebSocket-Extensions header");return}let j=Object.keys(K);if(j.length!==1||j[0]!==Ks.extensionName){Oi(t,T,"Server indicated an extension that was not requested");return}try{k.accept(K[Ks.extensionName])}catch{Oi(t,T,"Invalid Sec-WebSocket-Extensions header");return}t._extensions[Ks.extensionName]=k}t.setSocket(T,D,{generateMask:a.generateMask,maxPayload:a.maxPayload,skipUTF8Validation:a.skipUTF8Validation})}),a.finishRequest?a.finishRequest(z,t):z.end()}function $8(t,e){t._readyState=Ut.CLOSING,t.emit("error",e),t.emitClose()}function $J(t){return t.path=t.socketPath,OI.connect(t)}function GJ(t){return t.path=void 0,!t.servername&&t.servername!==""&&(t.servername=OI.isIP(t.host)?"":t.host),DJ.connect(t)}function Oi(t,e,r){t._readyState=Ut.CLOSING;let i=new Error(r);Error.captureStackTrace(i,Oi),e.setHeader?(e[qI]=!0,e.abort(),e.socket&&!e.socket.destroyed&&e.socket.destroy(),process.nextTick($8,t,i)):(e.destroy(i),e.once("error",t.emit.bind(t,"error")),e.once("close",t.emitClose.bind(t)))}function Ib(t,e,r){if(e){let i=UJ(e).length;t._socket?t._sender._bufferedBytes+=i:t._bufferedAmount+=i}if(r){let i=new Error(`WebSocket is not open: readyState ${t.readyState} (${Vn[t.readyState]})`);process.nextTick(r,i)}}function ZJ(t,e){let r=this[ti];r._closeFrameReceived=!0,r._closeMessage=e,r._closeCode=t,r._socket[ti]!==void 0&&(r._socket.removeListener("data",G8),process.nextTick(VI,r._socket),t===1005?r.close():r.close(t,e))}function JJ(){let t=this[ti];t.isPaused||t._socket.resume()}function YJ(t){let e=this[ti];e._socket[ti]!==void 0&&(e._socket.removeListener("data",G8),process.nextTick(VI,e._socket),e.close(t[WJ])),e.emit("error",t)}function CI(){this[ti].emitClose()}function QJ(t,e){this[ti].emit("message",t,e)}function XJ(t){let e=this[ti];e.pong(t,!e._isServer,NI),e.emit("ping",t)}function eY(t){this[ti].emit("pong",t)}function VI(t){t.resume()}function FI(){let t=this[ti];this.removeListener("close",FI),this.removeListener("data",G8),this.removeListener("end",KI),t._readyState=Ut.CLOSING;let e;!this._readableState.endEmitted&&!t._closeFrameReceived&&!t._receiver._writableState.errorEmitted&&(e=t._socket.read())!==null&&t._receiver.write(e),t._receiver.end(),this[ti]=void 0,clearTimeout(t._closeTimer),t._receiver._writableState.finished||t._receiver._writableState.errorEmitted?t.emitClose():(t._receiver.on("error",CI),t._receiver.on("finish",CI))}function G8(t){this[ti]._receiver.write(t)||this.pause()}function KI(){let t=this[ti];t._readyState=Ut.CLOSING,t._receiver.end(),this.end()}function LI(){let t=this[ti];this.removeListener("error",LI),this.on("error",NI),t&&(t._readyState=Ut.CLOSING,this.destroy())}});var GI=b((V3e,$I)=>{"use strict";var{Duplex:tY}=require("stream");function jI(t){t.emit("close")}function rY(){!this.destroyed&&this._writableState.finished&&this.destroy()}function HI(t){this.removeListener("error",HI),this.destroy(),this.listenerCount("error")===0&&this.emit("error",t)}function iY(t,e){let r=!0,i=new tY({...e,autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1});return t.on("message",function(n,s){let o=!s&&i._readableState.objectMode?n.toString():n;i.push(o)||t.pause()}),t.once("error",function(n){i.destroyed||(r=!1,i.destroy(n))}),t.once("close",function(){i.destroyed||i.push(null)}),i._destroy=function(a,n){if(t.readyState===t.CLOSED){n(a),process.nextTick(jI,i);return}let s=!1;t.once("error",function(l){s=!0,n(l)}),t.once("close",function(){s||n(a),process.nextTick(jI,i)}),r&&t.terminate()},i._final=function(a){if(t.readyState===t.CONNECTING){t.once("open",function(){i._final(a)});return}t._socket!==null&&(t._socket._writableState.finished?(a(),i._readableState.endEmitted&&i.destroy()):(t._socket.once("finish",function(){a()}),t.close()))},i._read=function(){t.isPaused&&t.resume()},i._write=function(a,n,s){if(t.readyState===t.CONNECTING){t.once("open",function(){i._write(a,n,s)});return}t.send(a,s)},i.on("end",rY),i.on("error",HI),i}$I.exports=iY});var JI=b((F3e,ZI)=>{"use strict";var{tokenChars:aY}=f0();function nY(t){let e=new Set,r=-1,i=-1,a=0;for(a;a{"use strict";var sY=require("events"),Z8=require("http"),{Duplex:K3e}=require("stream"),{createHash:oY}=require("crypto"),YI=Eb(),ol=m0(),lY=JI(),dY=Mb(),{GUID:uY,kWebSocket:cY}=Vs(),pY=/^[+/0-9A-Za-z]{22}==$/,QI=0,XI=1,tM=2,Db=class extends sY{constructor(e,r){if(super(),e={maxPayload:100*1024*1024,skipUTF8Validation:!1,perMessageDeflate:!1,handleProtocols:null,clientTracking:!0,verifyClient:null,noServer:!1,backlog:null,server:null,host:null,path:null,port:null,WebSocket:dY,...e},e.port==null&&!e.server&&!e.noServer||e.port!=null&&(e.server||e.noServer)||e.server&&e.noServer)throw new TypeError('One and only one of the "port", "server", or "noServer" options must be specified');if(e.port!=null?(this._server=Z8.createServer((i,a)=>{let n=Z8.STATUS_CODES[426];a.writeHead(426,{"Content-Length":n.length,"Content-Type":"text/plain"}),a.end(n)}),this._server.listen(e.port,e.host,e.backlog,r)):e.server&&(this._server=e.server),this._server){let i=this.emit.bind(this,"connection");this._removeListeners=mY(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(a,n,s)=>{this.handleUpgrade(a,n,s,i)}})}e.perMessageDeflate===!0&&(e.perMessageDeflate={}),e.clientTracking&&(this.clients=new Set,this._shouldEmitClose=!1),this.options=e,this._state=QI}address(){if(this.options.noServer)throw new Error('The server is operating in "noServer" mode');return this._server?this._server.address():null}close(e){if(this._state===tM){e&&this.once("close",()=>{e(new Error("The server is not running"))}),process.nextTick(b0,this);return}if(e&&this.once("close",e),this._state!==XI)if(this._state=XI,this.options.noServer||this.options.server)this._server&&(this._removeListeners(),this._removeListeners=this._server=null),this.clients?this.clients.size?this._shouldEmitClose=!0:process.nextTick(b0,this):process.nextTick(b0,this);else{let r=this._server;this._removeListeners(),this._removeListeners=this._server=null,r.close(()=>{b0(this)})}}shouldHandle(e){if(this.options.path){let r=e.url.indexOf("?");if((r!==-1?e.url.slice(0,r):e.url)!==this.options.path)return!1}return!0}handleUpgrade(e,r,i,a){r.on("error",eM);let n=e.headers["sec-websocket-key"],s=+e.headers["sec-websocket-version"];if(e.method!=="GET"){ll(this,e,r,405,"Invalid HTTP method");return}if(e.headers.upgrade.toLowerCase()!=="websocket"){ll(this,e,r,400,"Invalid Upgrade header");return}if(!n||!pY.test(n)){ll(this,e,r,400,"Missing or invalid Sec-WebSocket-Key header");return}if(s!==8&&s!==13){ll(this,e,r,400,"Missing or invalid Sec-WebSocket-Version header");return}if(!this.shouldHandle(e)){v0(r,400);return}let o=e.headers["sec-websocket-protocol"],l=new Set;if(o!==void 0)try{l=lY.parse(o)}catch{ll(this,e,r,400,"Invalid Sec-WebSocket-Protocol header");return}let d=e.headers["sec-websocket-extensions"],u={};if(this.options.perMessageDeflate&&d!==void 0){let c=new ol(this.options.perMessageDeflate,!0,this.options.maxPayload);try{let w=YI.parse(d);w[ol.extensionName]&&(c.accept(w[ol.extensionName]),u[ol.extensionName]=c)}catch{ll(this,e,r,400,"Invalid or unacceptable Sec-WebSocket-Extensions header");return}}if(this.options.verifyClient){let c={origin:e.headers[`${s===8?"sec-websocket-origin":"origin"}`],secure:!!(e.socket.authorized||e.socket.encrypted),req:e};if(this.options.verifyClient.length===2){this.options.verifyClient(c,(w,k,z,_)=>{if(!w)return v0(r,k||401,z,_);this.completeUpgrade(u,n,l,e,r,i,a)});return}if(!this.options.verifyClient(c))return v0(r,401)}this.completeUpgrade(u,n,l,e,r,i,a)}completeUpgrade(e,r,i,a,n,s,o){if(!n.readable||!n.writable)return n.destroy();if(n[cY])throw new Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");if(this._state>QI)return v0(n,503);let d=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${oY("sha1").update(r+uY).digest("base64")}`],u=new this.options.WebSocket(null);if(i.size){let c=this.options.handleProtocols?this.options.handleProtocols(i,a):i.values().next().value;c&&(d.push(`Sec-WebSocket-Protocol: ${c}`),u._protocol=c)}if(e[ol.extensionName]){let c=e[ol.extensionName].params,w=YI.format({[ol.extensionName]:[c]});d.push(`Sec-WebSocket-Extensions: ${w}`),u._extensions=e}this.emit("headers",d,a),n.write(d.concat(`\r +`);function l(d){var u=lb(qn.join(d,"prebuilds")).map(Uz),c=u.filter(jz(sb,nb)).sort(Hz)[0];if(c){var p=qn.join(d,"prebuilds",c.name),x=lb(p).map($z),E=x.filter(Gz(ab,Oz)),I=E.sort(Zz(ab))[0];if(I)return qn.join(p,I.file)}}};function lb(t){try{return Wz.readdirSync(t)}catch{return[]}}n(lb,"readdirSync");function Nz(t,e){var r=lb(t).filter(e);return r[0]&&qn.join(t,r[0])}n(Nz,"getFirst");function qz(t){return/\.node$/.test(t)}n(qz,"matchBuild");function Uz(t){var e=t.split("-");if(e.length===2){var r=e[0],i=e[1].split("+");if(r&&i.length&&i.every(Boolean))return{name:t,platform:r,architectures:i}}}n(Uz,"parseTuple");function jz(t,e){return function(r){return r==null||r.platform!==t?!1:r.architectures.includes(e)}}n(jz,"matchTuple");function Hz(t,e){return t.architectures.length-e.architectures.length}n(Hz,"compareTuples");function $z(t){var e=t.split("."),r=e.pop(),i={file:t,specificity:0};if(r==="node"){for(var a=0;ar.specificity?-1:1:0}}n(Zz,"compareTags");function ZZ(){return!!(process.versions&&process.versions.nw)}n(ZZ,"isNwjs");function JZ(){return process.versions&&process.versions.electron||process.env.ELECTRON_RUN_AS_NODE?!0:typeof window<"u"&&window.process&&window.process.type==="renderer"}n(JZ,"isElectron");function YZ(t){return t==="linux"&&Wz.existsSync("/etc/alpine-release")}n(YZ,"isAlpine");Xa.parseTags=$z;Xa.matchTags=Gz;Xa.compareTags=Zz;Xa.parseTuple=Uz;Xa.matchTuple=jz;Xa.compareTuples=Hz});var ub=v((qge,db)=>{typeof process.addon=="function"?db.exports=process.addon.bind(process):db.exports=Yz()});var Xz=v((Wge,Qz)=>{"use strict";var QZ=n((t,e,r,i,a)=>{for(var s=0;s{let r=t.length;for(var i=0;i{"use strict";try{cb.exports=ub()(__dirname)}catch{cb.exports=Xz()}});var m0=v((Kge,V8)=>{"use strict";var{EMPTY_BUFFER:eJ}=Fs(),pb=Buffer[Symbol.species];function tJ(t,e){if(t.length===0)return eJ;if(t.length===1)return t[0];let r=Buffer.allocUnsafe(e),i=0;for(let a=0;a{"use strict";var iI=Symbol("kDone"),fb=Symbol("kRun"),hb=class{static{n(this,"Limiter")}constructor(e){this[iI]=()=>{this.pending--,this[fb]()},this.concurrency=e||1/0,this.jobs=[],this.pending=0}add(e){this.jobs.push(e),this[fb]()}[fb](){if(this.pending!==this.concurrency&&this.jobs.length){let e=this.jobs.shift();this.pending++,e(this[iI])}}};aI.exports=hb});var g0=v((Hge,dI)=>{"use strict";var f0=require("zlib"),sI=m0(),iJ=nI(),{kStatusCode:oI}=Fs(),aJ=Buffer[Symbol.species],nJ=Buffer.from([0,0,255,255]),L8=Symbol("permessage-deflate"),Wn=Symbol("total-length"),h0=Symbol("callback"),Ks=Symbol("buffers"),K8=Symbol("error"),F8,gb=class{static{n(this,"PerMessageDeflate")}constructor(e,r,i){if(this._maxPayload=i|0,this._options=e||{},this._threshold=this._options.threshold!==void 0?this._options.threshold:1024,this._isServer=!!r,this._deflate=null,this._inflate=null,this.params=null,!F8){let a=this._options.concurrencyLimit!==void 0?this._options.concurrencyLimit:10;F8=new iJ(a)}}static get extensionName(){return"permessage-deflate"}offer(){let e={};return this._options.serverNoContextTakeover&&(e.server_no_context_takeover=!0),this._options.clientNoContextTakeover&&(e.client_no_context_takeover=!0),this._options.serverMaxWindowBits&&(e.server_max_window_bits=this._options.serverMaxWindowBits),this._options.clientMaxWindowBits?e.client_max_window_bits=this._options.clientMaxWindowBits:this._options.clientMaxWindowBits==null&&(e.client_max_window_bits=!0),e}accept(e){return e=this.normalizeParams(e),this.params=this._isServer?this.acceptAsServer(e):this.acceptAsClient(e),this.params}cleanup(){if(this._inflate&&(this._inflate.close(),this._inflate=null),this._deflate){let e=this._deflate[h0];this._deflate.close(),this._deflate=null,e&&e(new Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(e){let r=this._options,i=e.find(a=>!(r.serverNoContextTakeover===!1&&a.server_no_context_takeover||a.server_max_window_bits&&(r.serverMaxWindowBits===!1||typeof r.serverMaxWindowBits=="number"&&r.serverMaxWindowBits>a.server_max_window_bits)||typeof r.clientMaxWindowBits=="number"&&!a.client_max_window_bits));if(!i)throw new Error("None of the extension offers can be accepted");return r.serverNoContextTakeover&&(i.server_no_context_takeover=!0),r.clientNoContextTakeover&&(i.client_no_context_takeover=!0),typeof r.serverMaxWindowBits=="number"&&(i.server_max_window_bits=r.serverMaxWindowBits),typeof r.clientMaxWindowBits=="number"?i.client_max_window_bits=r.clientMaxWindowBits:(i.client_max_window_bits===!0||r.clientMaxWindowBits===!1)&&delete i.client_max_window_bits,i}acceptAsClient(e){let r=e[0];if(this._options.clientNoContextTakeover===!1&&r.client_no_context_takeover)throw new Error('Unexpected parameter "client_no_context_takeover"');if(!r.client_max_window_bits)typeof this._options.clientMaxWindowBits=="number"&&(r.client_max_window_bits=this._options.clientMaxWindowBits);else if(this._options.clientMaxWindowBits===!1||typeof this._options.clientMaxWindowBits=="number"&&r.client_max_window_bits>this._options.clientMaxWindowBits)throw new Error('Unexpected or invalid parameter "client_max_window_bits"');return r}normalizeParams(e){return e.forEach(r=>{Object.keys(r).forEach(i=>{let a=r[i];if(a.length>1)throw new Error(`Parameter "${i}" must have only a single value`);if(a=a[0],i==="client_max_window_bits"){if(a!==!0){let s=+a;if(!Number.isInteger(s)||s<8||s>15)throw new TypeError(`Invalid value for parameter "${i}": ${a}`);a=s}else if(!this._isServer)throw new TypeError(`Invalid value for parameter "${i}": ${a}`)}else if(i==="server_max_window_bits"){let s=+a;if(!Number.isInteger(s)||s<8||s>15)throw new TypeError(`Invalid value for parameter "${i}": ${a}`);a=s}else if(i==="client_no_context_takeover"||i==="server_no_context_takeover"){if(a!==!0)throw new TypeError(`Invalid value for parameter "${i}": ${a}`)}else throw new Error(`Unknown parameter "${i}"`);r[i]=a})}),e}decompress(e,r,i){F8.add(a=>{this._decompress(e,r,(s,o)=>{a(),i(s,o)})})}compress(e,r,i){F8.add(a=>{this._compress(e,r,(s,o)=>{a(),i(s,o)})})}_decompress(e,r,i){let a=this._isServer?"client":"server";if(!this._inflate){let s=`${a}_max_window_bits`,o=typeof this.params[s]!="number"?f0.Z_DEFAULT_WINDOWBITS:this.params[s];this._inflate=f0.createInflateRaw({...this._options.zlibInflateOptions,windowBits:o}),this._inflate[L8]=this,this._inflate[Wn]=0,this._inflate[Ks]=[],this._inflate.on("error",oJ),this._inflate.on("data",lI)}this._inflate[h0]=i,this._inflate.write(e),r&&this._inflate.write(nJ),this._inflate.flush(()=>{let s=this._inflate[K8];if(s){this._inflate.close(),this._inflate=null,i(s);return}let o=sI.concat(this._inflate[Ks],this._inflate[Wn]);this._inflate._readableState.endEmitted?(this._inflate.close(),this._inflate=null):(this._inflate[Wn]=0,this._inflate[Ks]=[],r&&this.params[`${a}_no_context_takeover`]&&this._inflate.reset()),i(null,o)})}_compress(e,r,i){let a=this._isServer?"server":"client";if(!this._deflate){let s=`${a}_max_window_bits`,o=typeof this.params[s]!="number"?f0.Z_DEFAULT_WINDOWBITS:this.params[s];this._deflate=f0.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:o}),this._deflate[Wn]=0,this._deflate[Ks]=[],this._deflate.on("data",sJ)}this._deflate[h0]=i,this._deflate.write(e),this._deflate.flush(f0.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let s=sI.concat(this._deflate[Ks],this._deflate[Wn]);r&&(s=new aJ(s.buffer,s.byteOffset,s.length-4)),this._deflate[h0]=null,this._deflate[Wn]=0,this._deflate[Ks]=[],r&&this.params[`${a}_no_context_takeover`]&&this._deflate.reset(),i(null,s)})}};dI.exports=gb;function sJ(t){this[Ks].push(t),this[Wn]+=t.length}n(sJ,"deflateOnData");function lI(t){if(this[Wn]+=t.length,this[L8]._maxPayload<1||this[Wn]<=this[L8]._maxPayload){this[Ks].push(t);return}this[K8]=new RangeError("Max payload size exceeded"),this[K8].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[K8][oI]=1009,this.removeListener("data",lI),this.reset()}n(lI,"inflateOnData");function oJ(t){this[L8]._inflate=null,t[oI]=1007,this[h0](t)}n(oJ,"inflateOnError")});var cI=v((Gge,uI)=>{"use strict";function lJ(t){let e=t.length,r=0;for(;r=e||(t[r+1]&192)!==128||(t[r+2]&192)!==128||t[r]===224&&(t[r+1]&224)===128||t[r]===237&&(t[r+1]&224)===160)return!1;r+=3}else if((t[r]&248)===240){if(r+3>=e||(t[r+1]&192)!==128||(t[r+2]&192)!==128||(t[r+3]&192)!==128||t[r]===240&&(t[r+1]&240)===128||t[r]===244&&t[r+1]>143||t[r]>244)return!1;r+=4}else return!1;return!0}n(lJ,"isValidUTF8");uI.exports=lJ});var pI=v((Jge,yb)=>{"use strict";try{yb.exports=ub()(__dirname)}catch{yb.exports=cI()}});var y0=v((Yge,U8)=>{"use strict";var{isUtf8:mI}=require("buffer"),dJ=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0];function uJ(t){return t>=1e3&&t<=1014&&t!==1004&&t!==1005&&t!==1006||t>=3e3&&t<=4999}n(uJ,"isValidStatusCode");function bb(t){let e=t.length,r=0;for(;r=e||(t[r+1]&192)!==128||(t[r+2]&192)!==128||t[r]===224&&(t[r+1]&224)===128||t[r]===237&&(t[r+1]&224)===160)return!1;r+=3}else if((t[r]&248)===240){if(r+3>=e||(t[r+1]&192)!==128||(t[r+2]&192)!==128||(t[r+3]&192)!==128||t[r]===240&&(t[r+1]&240)===128||t[r]===244&&t[r+1]>143||t[r]>244)return!1;r+=4}else return!1;return!0}n(bb,"_isValidUTF8");U8.exports={isValidStatusCode:uJ,isValidUTF8:bb,tokenChars:dJ};if(mI)U8.exports.isValidUTF8=function(t){return t.length<24?bb(t):mI(t)};else if(!process.env.WS_NO_UTF_8_VALIDATE)try{let t=pI();U8.exports.isValidUTF8=function(e){return e.length<32?bb(e):t(e)}}catch{}});var Ab=v((Xge,wI)=>{"use strict";var{Writable:cJ}=require("stream"),fI=g0(),{BINARY_TYPES:pJ,EMPTY_BUFFER:hI,kStatusCode:mJ,kWebSocket:fJ}=Fs(),{concat:vb,toArrayBuffer:hJ,unmask:gJ}=m0(),{isValidStatusCode:yJ,isValidUTF8:gI}=y0(),j8=Buffer[Symbol.species],bJ=Promise.resolve(),vJ=typeof queueMicrotask=="function"?queueMicrotask:SJ,K1=0,yI=1,bI=2,vI=3,Sb=4,SI=5,wb=6,xb=class extends cJ{static{n(this,"Receiver")}constructor(e={}){super(),this._binaryType=e.binaryType||pJ[0],this._extensions=e.extensions||{},this._isServer=!!e.isServer,this._maxPayload=e.maxPayload|0,this._skipUTF8Validation=!!e.skipUTF8Validation,this[fJ]=void 0,this._bufferedBytes=0,this._buffers=[],this._compressed=!1,this._payloadLength=0,this._mask=void 0,this._fragmented=0,this._masked=!1,this._fin=!1,this._opcode=0,this._totalPayloadLength=0,this._messageLength=0,this._fragments=[],this._state=K1,this._loop=!1}_write(e,r,i){if(this._opcode===8&&this._state==K1)return i();this._bufferedBytes+=e.length,this._buffers.push(e),this.startLoop(i)}consume(e){if(this._bufferedBytes-=e,e===this._buffers[0].length)return this._buffers.shift();if(e=i.length?r.set(this._buffers.shift(),a):(r.set(new Uint8Array(i.buffer,i.byteOffset,e),a),this._buffers[0]=new j8(i.buffer,i.byteOffset+e,i.length-e)),e-=i.length}while(e>0);return r}startLoop(e){let r;this._loop=!0;do switch(this._state){case K1:r=this.getInfo();break;case yI:r=this.getPayloadLength16();break;case bI:r=this.getPayloadLength64();break;case vI:this.getMask();break;case Sb:r=this.getData(e);break;case SI:this._loop=!1;return;default:this._loop=!1,vJ(()=>{this._state=K1,this.startLoop(e)});return}while(this._loop);e(r)}getInfo(){if(this._bufferedBytes<2){this._loop=!1;return}let e=this.consume(2);if(e[0]&48)return this._loop=!1,Dr(RangeError,"RSV2 and RSV3 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3");let r=(e[0]&64)===64;if(r&&!this._extensions[fI.extensionName])return this._loop=!1,Dr(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");if(this._fin=(e[0]&128)===128,this._opcode=e[0]&15,this._payloadLength=e[1]&127,this._opcode===0){if(r)return this._loop=!1,Dr(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");if(!this._fragmented)return this._loop=!1,Dr(RangeError,"invalid opcode 0",!0,1002,"WS_ERR_INVALID_OPCODE");this._opcode=this._fragmented}else if(this._opcode===1||this._opcode===2){if(this._fragmented)return this._loop=!1,Dr(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");this._compressed=r}else if(this._opcode>7&&this._opcode<11){if(!this._fin)return this._loop=!1,Dr(RangeError,"FIN must be set",!0,1002,"WS_ERR_EXPECTED_FIN");if(r)return this._loop=!1,Dr(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");if(this._payloadLength>125||this._opcode===8&&this._payloadLength===1)return this._loop=!1,Dr(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH")}else return this._loop=!1,Dr(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");if(!this._fin&&!this._fragmented&&(this._fragmented=this._opcode),this._masked=(e[1]&128)===128,this._isServer){if(!this._masked)return this._loop=!1,Dr(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK")}else if(this._masked)return this._loop=!1,Dr(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK");if(this._payloadLength===126)this._state=yI;else if(this._payloadLength===127)this._state=bI;else return this.haveLength()}getPayloadLength16(){if(this._bufferedBytes<2){this._loop=!1;return}return this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength()}getPayloadLength64(){if(this._bufferedBytes<8){this._loop=!1;return}let e=this.consume(8),r=e.readUInt32BE(0);return r>Math.pow(2,53-32)-1?(this._loop=!1,Dr(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH")):(this._payloadLength=r*Math.pow(2,32)+e.readUInt32BE(4),this.haveLength())}haveLength(){if(this._payloadLength&&this._opcode<8&&(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0))return this._loop=!1,Dr(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");this._masked?this._state=vI:this._state=Sb}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=Sb}getData(e){let r=hI;if(this._payloadLength){if(this._bufferedBytes7)return this.controlMessage(r);if(this._compressed){this._state=SI,this.decompress(r,e);return}return r.length&&(this._messageLength=this._totalPayloadLength,this._fragments.push(r)),this.dataMessage()}decompress(e,r){this._extensions[fI.extensionName].decompress(e,this._fin,(a,s)=>{if(a)return r(a);if(s.length){if(this._messageLength+=s.length,this._messageLength>this._maxPayload&&this._maxPayload>0)return r(Dr(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH"));this._fragments.push(s)}let o=this.dataMessage();if(o)return r(o);this.startLoop(r)})}dataMessage(){if(this._fin){let e=this._messageLength,r=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],this._opcode===2){let i;this._binaryType==="nodebuffer"?i=vb(r,e):this._binaryType==="arraybuffer"?i=hJ(vb(r,e)):i=r,this.emit("message",i,!0)}else{let i=vb(r,e);if(!this._skipUTF8Validation&&!gI(i))return this._loop=!1,Dr(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");this.emit("message",i,!1)}}this._state=wb}controlMessage(e){if(this._opcode===8)if(this._loop=!1,e.length===0)this.emit("conclude",1005,hI),this.end(),this._state=K1;else{let r=e.readUInt16BE(0);if(!yJ(r))return Dr(RangeError,`invalid status code ${r}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE");let i=new j8(e.buffer,e.byteOffset+2,e.length-2);if(!this._skipUTF8Validation&&!gI(i))return Dr(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");this.emit("conclude",r,i),this.end(),this._state=K1}else this._opcode===9?(this.emit("ping",e),this._state=wb):(this.emit("pong",e),this._state=wb)}};wI.exports=xb;function Dr(t,e,r,i,a){let s=new t(r?`Invalid WebSocket frame: ${e}`:e);return Error.captureStackTrace(s,Dr),s.code=a,s[mJ]=i,s}n(Dr,"error");function SJ(t){bJ.then(t).catch(xJ)}n(SJ,"queueMicrotaskShim");function wJ(t){throw t}n(wJ,"throwError");function xJ(t){process.nextTick(wJ,t)}n(xJ,"throwErrorNextTick")});var kb=v((r5e,_I)=>{"use strict";var{Duplex:t5e}=require("stream"),{randomFillSync:AJ}=require("crypto"),xI=g0(),{EMPTY_BUFFER:_J}=Fs(),{isValidStatusCode:kJ}=y0(),{mask:AI,toBuffer:L1}=m0(),Ia=Symbol("kByteLength"),EJ=Buffer.alloc(4),_b=class t{static{n(this,"Sender")}constructor(e,r,i){this._extensions=r||{},i&&(this._generateMask=i,this._maskBuffer=Buffer.alloc(4)),this._socket=e,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._deflating=!1,this._queue=[]}static frame(e,r){let i,a=!1,s=2,o=!1;r.mask&&(i=r.maskBuffer||EJ,r.generateMask?r.generateMask(i):AJ(i,0,4),o=(i[0]|i[1]|i[2]|i[3])===0,s=6);let l;typeof e=="string"?(!r.mask||o)&&r[Ia]!==void 0?l=r[Ia]:(e=Buffer.from(e),l=e.length):(l=e.length,a=r.mask&&r.readOnly&&!o);let d=l;l>=65536?(s+=8,d=127):l>125&&(s+=2,d=126);let u=Buffer.allocUnsafe(a?l+s:s);return u[0]=r.fin?r.opcode|128:r.opcode,r.rsv1&&(u[0]|=64),u[1]=d,d===126?u.writeUInt16BE(l,2):d===127&&(u[2]=u[3]=0,u.writeUIntBE(l,4,6)),r.mask?(u[1]|=128,u[s-4]=i[0],u[s-3]=i[1],u[s-2]=i[2],u[s-1]=i[3],o?[u,e]:a?(AI(e,i,u,s,l),[u]):(AI(e,i,e,0,l),[u,e])):[u,e]}close(e,r,i,a){let s;if(e===void 0)s=_J;else{if(typeof e!="number"||!kJ(e))throw new TypeError("First argument must be a valid error code number");if(r===void 0||!r.length)s=Buffer.allocUnsafe(2),s.writeUInt16BE(e,0);else{let l=Buffer.byteLength(r);if(l>123)throw new RangeError("The message must not be greater than 123 bytes");s=Buffer.allocUnsafe(2+l),s.writeUInt16BE(e,0),typeof r=="string"?s.write(r,2):s.set(r,2)}}let o={[Ia]:s.length,fin:!0,generateMask:this._generateMask,mask:i,maskBuffer:this._maskBuffer,opcode:8,readOnly:!1,rsv1:!1};this._deflating?this.enqueue([this.dispatch,s,!1,o,a]):this.sendFrame(t.frame(s,o),a)}ping(e,r,i){let a,s;if(typeof e=="string"?(a=Buffer.byteLength(e),s=!1):(e=L1(e),a=e.length,s=L1.readOnly),a>125)throw new RangeError("The data size must not be greater than 125 bytes");let o={[Ia]:a,fin:!0,generateMask:this._generateMask,mask:r,maskBuffer:this._maskBuffer,opcode:9,readOnly:s,rsv1:!1};this._deflating?this.enqueue([this.dispatch,e,!1,o,i]):this.sendFrame(t.frame(e,o),i)}pong(e,r,i){let a,s;if(typeof e=="string"?(a=Buffer.byteLength(e),s=!1):(e=L1(e),a=e.length,s=L1.readOnly),a>125)throw new RangeError("The data size must not be greater than 125 bytes");let o={[Ia]:a,fin:!0,generateMask:this._generateMask,mask:r,maskBuffer:this._maskBuffer,opcode:10,readOnly:s,rsv1:!1};this._deflating?this.enqueue([this.dispatch,e,!1,o,i]):this.sendFrame(t.frame(e,o),i)}send(e,r,i){let a=this._extensions[xI.extensionName],s=r.binary?2:1,o=r.compress,l,d;if(typeof e=="string"?(l=Buffer.byteLength(e),d=!1):(e=L1(e),l=e.length,d=L1.readOnly),this._firstFragment?(this._firstFragment=!1,o&&a&&a.params[a._isServer?"server_no_context_takeover":"client_no_context_takeover"]&&(o=l>=a._threshold),this._compress=o):(o=!1,s=0),r.fin&&(this._firstFragment=!0),a){let u={[Ia]:l,fin:r.fin,generateMask:this._generateMask,mask:r.mask,maskBuffer:this._maskBuffer,opcode:s,readOnly:d,rsv1:o};this._deflating?this.enqueue([this.dispatch,e,this._compress,u,i]):this.dispatch(e,this._compress,u,i)}else this.sendFrame(t.frame(e,{[Ia]:l,fin:r.fin,generateMask:this._generateMask,mask:r.mask,maskBuffer:this._maskBuffer,opcode:s,readOnly:d,rsv1:!1}),i)}dispatch(e,r,i,a){if(!r){this.sendFrame(t.frame(e,i),a);return}let s=this._extensions[xI.extensionName];this._bufferedBytes+=i[Ia],this._deflating=!0,s.compress(e,i.fin,(o,l)=>{if(this._socket.destroyed){let d=new Error("The socket was closed while data was being compressed");typeof a=="function"&&a(d);for(let u=0;u{"use strict";var{kForOnEventAttribute:b0,kListener:Eb}=Fs(),kI=Symbol("kCode"),EI=Symbol("kData"),PI=Symbol("kError"),TI=Symbol("kMessage"),zI=Symbol("kReason"),U1=Symbol("kTarget"),II=Symbol("kType"),MI=Symbol("kWasClean"),Vn=class{static{n(this,"Event")}constructor(e){this[U1]=null,this[II]=e}get target(){return this[U1]}get type(){return this[II]}};Object.defineProperty(Vn.prototype,"target",{enumerable:!0});Object.defineProperty(Vn.prototype,"type",{enumerable:!0});var ol=class extends Vn{static{n(this,"CloseEvent")}constructor(e,r={}){super(e),this[kI]=r.code===void 0?0:r.code,this[zI]=r.reason===void 0?"":r.reason,this[MI]=r.wasClean===void 0?!1:r.wasClean}get code(){return this[kI]}get reason(){return this[zI]}get wasClean(){return this[MI]}};Object.defineProperty(ol.prototype,"code",{enumerable:!0});Object.defineProperty(ol.prototype,"reason",{enumerable:!0});Object.defineProperty(ol.prototype,"wasClean",{enumerable:!0});var j1=class extends Vn{static{n(this,"ErrorEvent")}constructor(e,r={}){super(e),this[PI]=r.error===void 0?null:r.error,this[TI]=r.message===void 0?"":r.message}get error(){return this[PI]}get message(){return this[TI]}};Object.defineProperty(j1.prototype,"error",{enumerable:!0});Object.defineProperty(j1.prototype,"message",{enumerable:!0});var v0=class extends Vn{static{n(this,"MessageEvent")}constructor(e,r={}){super(e),this[EI]=r.data===void 0?null:r.data}get data(){return this[EI]}};Object.defineProperty(v0.prototype,"data",{enumerable:!0});var PJ={addEventListener(t,e,r={}){for(let a of this.listeners(t))if(!r[b0]&&a[Eb]===e&&!a[b0])return;let i;if(t==="message")i=n(function(s,o){let l=new v0("message",{data:o?s:s.toString()});l[U1]=this,H8(e,this,l)},"onMessage");else if(t==="close")i=n(function(s,o){let l=new ol("close",{code:s,reason:o.toString(),wasClean:this._closeFrameReceived&&this._closeFrameSent});l[U1]=this,H8(e,this,l)},"onClose");else if(t==="error")i=n(function(s){let o=new j1("error",{error:s,message:s.message});o[U1]=this,H8(e,this,o)},"onError");else if(t==="open")i=n(function(){let s=new Vn("open");s[U1]=this,H8(e,this,s)},"onOpen");else return;i[b0]=!!r[b0],i[Eb]=e,r.once?this.once(t,i):this.on(t,i)},removeEventListener(t,e){for(let r of this.listeners(t))if(r[Eb]===e&&!r[b0]){this.removeListener(t,r);break}}};DI.exports={CloseEvent:ol,ErrorEvent:j1,Event:Vn,EventTarget:PJ,MessageEvent:v0};function H8(t,e,r){typeof t=="object"&&t.handleEvent?t.handleEvent.call(t,r):t.call(e,r)}n(H8,"callListener")});var Pb=v((s5e,BI)=>{"use strict";var{tokenChars:S0}=y0();function en(t,e,r){t[e]===void 0?t[e]=[r]:t[e].push(r)}n(en,"push");function TJ(t){let e=Object.create(null),r=Object.create(null),i=!1,a=!1,s=!1,o,l,d=-1,u=-1,c=-1,p=0;for(;p{let r=t[e];return Array.isArray(r)||(r=[r]),r.map(i=>[e].concat(Object.keys(i).map(a=>{let s=i[a];return Array.isArray(s)||(s=[s]),s.map(o=>o===!0?a:`${a}=${o}`).join("; ")})).join("; ")).join(", ")}).join(", ")}n(zJ,"format");BI.exports={format:zJ,parse:TJ}});var Db=v((u5e,jI)=>{"use strict";var IJ=require("events"),MJ=require("https"),DJ=require("http"),NI=require("net"),RJ=require("tls"),{randomBytes:BJ,createHash:CJ}=require("crypto"),{Duplex:l5e,Readable:d5e}=require("stream"),{URL:Tb}=require("url"),Ls=g0(),OJ=Ab(),NJ=kb(),{BINARY_TYPES:CI,EMPTY_BUFFER:$8,GUID:qJ,kForOnEventAttribute:zb,kListener:WJ,kStatusCode:VJ,kWebSocket:ri,NOOP:qI}=Fs(),{EventTarget:{addEventListener:FJ,removeEventListener:KJ}}=RI(),{format:LJ,parse:UJ}=Pb(),{toBuffer:jJ}=m0(),HJ=30*1e3,WI=Symbol("kAborted"),Ib=[8,13],Fn=["CONNECTING","OPEN","CLOSING","CLOSED"],$J=/^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/,jt=class t extends IJ{static{n(this,"WebSocket")}constructor(e,r,i){super(),this._binaryType=CI[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage=$8,this._closeTimer=null,this._extensions={},this._paused=!1,this._protocol="",this._readyState=t.CONNECTING,this._receiver=null,this._sender=null,this._socket=null,e!==null?(this._bufferedAmount=0,this._isServer=!1,this._redirects=0,r===void 0?r=[]:Array.isArray(r)||(typeof r=="object"&&r!==null?(i=r,r=[]):r=[r]),VI(this,e,r,i)):this._isServer=!0}get binaryType(){return this._binaryType}set binaryType(e){CI.includes(e)&&(this._binaryType=e,this._receiver&&(this._receiver._binaryType=e))}get bufferedAmount(){return this._socket?this._socket._writableState.length+this._sender._bufferedBytes:this._bufferedAmount}get extensions(){return Object.keys(this._extensions).join()}get isPaused(){return this._paused}get onclose(){return null}get onerror(){return null}get onopen(){return null}get onmessage(){return null}get protocol(){return this._protocol}get readyState(){return this._readyState}get url(){return this._url}setSocket(e,r,i){let a=new OJ({binaryType:this.binaryType,extensions:this._extensions,isServer:this._isServer,maxPayload:i.maxPayload,skipUTF8Validation:i.skipUTF8Validation});this._sender=new NJ(e,this._extensions,i.generateMask),this._receiver=a,this._socket=e,a[ri]=this,e[ri]=this,a.on("conclude",JJ),a.on("drain",YJ),a.on("error",QJ),a.on("message",XJ),a.on("ping",eY),a.on("pong",tY),e.setTimeout&&e.setTimeout(0),e.setNoDelay&&e.setNoDelay(),r.length>0&&e.unshift(r),e.on("close",KI),e.on("data",Z8),e.on("end",LI),e.on("error",UI),this._readyState=t.OPEN,this.emit("open")}emitClose(){if(!this._socket){this._readyState=t.CLOSED,this.emit("close",this._closeCode,this._closeMessage);return}this._extensions[Ls.extensionName]&&this._extensions[Ls.extensionName].cleanup(),this._receiver.removeAllListeners(),this._readyState=t.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(e,r){if(this.readyState!==t.CLOSED){if(this.readyState===t.CONNECTING){let i="WebSocket was closed before the connection was established";Ni(this,this._req,i);return}if(this.readyState===t.CLOSING){this._closeFrameSent&&(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end();return}this._readyState=t.CLOSING,this._sender.close(e,r,!this._isServer,i=>{i||(this._closeFrameSent=!0,(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end())}),this._closeTimer=setTimeout(this._socket.destroy.bind(this._socket),HJ)}}pause(){this.readyState===t.CONNECTING||this.readyState===t.CLOSED||(this._paused=!0,this._socket.pause())}ping(e,r,i){if(this.readyState===t.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof e=="function"?(i=e,e=r=void 0):typeof r=="function"&&(i=r,r=void 0),typeof e=="number"&&(e=e.toString()),this.readyState!==t.OPEN){Mb(this,e,i);return}r===void 0&&(r=!this._isServer),this._sender.ping(e||$8,r,i)}pong(e,r,i){if(this.readyState===t.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof e=="function"?(i=e,e=r=void 0):typeof r=="function"&&(i=r,r=void 0),typeof e=="number"&&(e=e.toString()),this.readyState!==t.OPEN){Mb(this,e,i);return}r===void 0&&(r=!this._isServer),this._sender.pong(e||$8,r,i)}resume(){this.readyState===t.CONNECTING||this.readyState===t.CLOSED||(this._paused=!1,this._receiver._writableState.needDrain||this._socket.resume())}send(e,r,i){if(this.readyState===t.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof r=="function"&&(i=r,r={}),typeof e=="number"&&(e=e.toString()),this.readyState!==t.OPEN){Mb(this,e,i);return}let a={binary:typeof e!="string",mask:!this._isServer,compress:!0,fin:!0,...r};this._extensions[Ls.extensionName]||(a.compress=!1),this._sender.send(e||$8,a,i)}terminate(){if(this.readyState!==t.CLOSED){if(this.readyState===t.CONNECTING){let e="WebSocket was closed before the connection was established";Ni(this,this._req,e);return}this._socket&&(this._readyState=t.CLOSING,this._socket.destroy())}}};Object.defineProperty(jt,"CONNECTING",{enumerable:!0,value:Fn.indexOf("CONNECTING")});Object.defineProperty(jt.prototype,"CONNECTING",{enumerable:!0,value:Fn.indexOf("CONNECTING")});Object.defineProperty(jt,"OPEN",{enumerable:!0,value:Fn.indexOf("OPEN")});Object.defineProperty(jt.prototype,"OPEN",{enumerable:!0,value:Fn.indexOf("OPEN")});Object.defineProperty(jt,"CLOSING",{enumerable:!0,value:Fn.indexOf("CLOSING")});Object.defineProperty(jt.prototype,"CLOSING",{enumerable:!0,value:Fn.indexOf("CLOSING")});Object.defineProperty(jt,"CLOSED",{enumerable:!0,value:Fn.indexOf("CLOSED")});Object.defineProperty(jt.prototype,"CLOSED",{enumerable:!0,value:Fn.indexOf("CLOSED")});["binaryType","bufferedAmount","extensions","isPaused","protocol","readyState","url"].forEach(t=>{Object.defineProperty(jt.prototype,t,{enumerable:!0})});["open","error","close","message"].forEach(t=>{Object.defineProperty(jt.prototype,`on${t}`,{enumerable:!0,get(){for(let e of this.listeners(t))if(e[zb])return e[WJ];return null},set(e){for(let r of this.listeners(t))if(r[zb]){this.removeListener(t,r);break}typeof e=="function"&&this.addEventListener(t,e,{[zb]:!0})}})});jt.prototype.addEventListener=FJ;jt.prototype.removeEventListener=KJ;jI.exports=jt;function VI(t,e,r,i){let a={protocolVersion:Ib[1],maxPayload:104857600,skipUTF8Validation:!1,perMessageDeflate:!0,followRedirects:!1,maxRedirects:10,...i,createConnection:void 0,socketPath:void 0,hostname:void 0,protocol:void 0,timeout:void 0,method:"GET",host:void 0,path:void 0,port:void 0};if(!Ib.includes(a.protocolVersion))throw new RangeError(`Unsupported protocol version: ${a.protocolVersion} (supported versions: ${Ib.join(", ")})`);let s;if(e instanceof Tb)s=e;else try{s=new Tb(e)}catch{throw new SyntaxError(`Invalid URL: ${e}`)}s.protocol==="http:"?s.protocol="ws:":s.protocol==="https:"&&(s.protocol="wss:"),t._url=s.href;let o=s.protocol==="wss:",l=s.protocol==="ws+unix:",d;if(s.protocol!=="ws:"&&!o&&!l?d=`The URL's protocol must be one of "ws:", "wss:", "http:", "https", or "ws+unix:"`:l&&!s.pathname?d="The URL's pathname is empty":s.hash&&(d="The URL contains a fragment identifier"),d){let k=new SyntaxError(d);if(t._redirects===0)throw k;G8(t,k);return}let u=o?443:80,c=BJ(16).toString("base64"),p=o?MJ.request:DJ.request,x=new Set,E;if(a.createConnection=o?ZJ:GJ,a.defaultPort=a.defaultPort||u,a.port=s.port||u,a.host=s.hostname.startsWith("[")?s.hostname.slice(1,-1):s.hostname,a.headers={...a.headers,"Sec-WebSocket-Version":a.protocolVersion,"Sec-WebSocket-Key":c,Connection:"Upgrade",Upgrade:"websocket"},a.path=s.pathname+s.search,a.timeout=a.handshakeTimeout,a.perMessageDeflate&&(E=new Ls(a.perMessageDeflate!==!0?a.perMessageDeflate:{},!1,a.maxPayload),a.headers["Sec-WebSocket-Extensions"]=LJ({[Ls.extensionName]:E.offer()})),r.length){for(let k of r){if(typeof k!="string"||!$J.test(k)||x.has(k))throw new SyntaxError("An invalid or duplicated subprotocol was specified");x.add(k)}a.headers["Sec-WebSocket-Protocol"]=r.join(",")}if(a.origin&&(a.protocolVersion<13?a.headers["Sec-WebSocket-Origin"]=a.origin:a.headers.Origin=a.origin),(s.username||s.password)&&(a.auth=`${s.username}:${s.password}`),l){let k=a.path.split(":");a.socketPath=k[0],a.path=k[1]}let I;if(a.followRedirects){if(t._redirects===0){t._originalIpc=l,t._originalSecure=o,t._originalHostOrSocketPath=l?a.socketPath:s.host;let k=i&&i.headers;if(i={...i,headers:{}},k)for(let[z,R]of Object.entries(k))i.headers[z.toLowerCase()]=R}else if(t.listenerCount("redirect")===0){let k=l?t._originalIpc?a.socketPath===t._originalHostOrSocketPath:!1:t._originalIpc?!1:s.host===t._originalHostOrSocketPath;(!k||t._originalSecure&&!o)&&(delete a.headers.authorization,delete a.headers.cookie,k||delete a.headers.host,a.auth=void 0)}a.auth&&!i.headers.authorization&&(i.headers.authorization="Basic "+Buffer.from(a.auth).toString("base64")),I=t._req=p(a),t._redirects&&t.emit("redirect",t.url,I)}else I=t._req=p(a);a.timeout&&I.on("timeout",()=>{Ni(t,I,"Opening handshake has timed out")}),I.on("error",k=>{I===null||I[WI]||(I=t._req=null,G8(t,k))}),I.on("response",k=>{let z=k.headers.location,R=k.statusCode;if(z&&a.followRedirects&&R>=300&&R<400){if(++t._redirects>a.maxRedirects){Ni(t,I,"Maximum redirects exceeded");return}I.abort();let F;try{F=new Tb(z,e)}catch{let C=new SyntaxError(`Invalid URL: ${z}`);G8(t,C);return}VI(t,F,r,i)}else t.emit("unexpected-response",I,k)||Ni(t,I,`Unexpected server response: ${k.statusCode}`)}),I.on("upgrade",(k,z,R)=>{if(t.emit("upgrade",k),t.readyState!==jt.CONNECTING)return;if(I=t._req=null,k.headers.upgrade.toLowerCase()!=="websocket"){Ni(t,z,"Invalid Upgrade header");return}let F=CJ("sha1").update(c+qJ).digest("base64");if(k.headers["sec-websocket-accept"]!==F){Ni(t,z,"Invalid Sec-WebSocket-Accept header");return}let B=k.headers["sec-websocket-protocol"],C;if(B!==void 0?x.size?x.has(B)||(C="Server sent an invalid subprotocol"):C="Server sent a subprotocol but none was requested":x.size&&(C="Server sent no subprotocol"),C){Ni(t,z,C);return}B&&(t._protocol=B);let W=k.headers["sec-websocket-extensions"];if(W!==void 0){if(!E){Ni(t,z,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");return}let L;try{L=UJ(W)}catch{Ni(t,z,"Invalid Sec-WebSocket-Extensions header");return}let H=Object.keys(L);if(H.length!==1||H[0]!==Ls.extensionName){Ni(t,z,"Server indicated an extension that was not requested");return}try{E.accept(L[Ls.extensionName])}catch{Ni(t,z,"Invalid Sec-WebSocket-Extensions header");return}t._extensions[Ls.extensionName]=E}t.setSocket(z,R,{generateMask:a.generateMask,maxPayload:a.maxPayload,skipUTF8Validation:a.skipUTF8Validation})}),a.finishRequest?a.finishRequest(I,t):I.end()}n(VI,"initAsClient");function G8(t,e){t._readyState=jt.CLOSING,t.emit("error",e),t.emitClose()}n(G8,"emitErrorAndClose");function GJ(t){return t.path=t.socketPath,NI.connect(t)}n(GJ,"netConnect");function ZJ(t){return t.path=void 0,!t.servername&&t.servername!==""&&(t.servername=NI.isIP(t.host)?"":t.host),RJ.connect(t)}n(ZJ,"tlsConnect");function Ni(t,e,r){t._readyState=jt.CLOSING;let i=new Error(r);Error.captureStackTrace(i,Ni),e.setHeader?(e[WI]=!0,e.abort(),e.socket&&!e.socket.destroyed&&e.socket.destroy(),process.nextTick(G8,t,i)):(e.destroy(i),e.once("error",t.emit.bind(t,"error")),e.once("close",t.emitClose.bind(t)))}n(Ni,"abortHandshake");function Mb(t,e,r){if(e){let i=jJ(e).length;t._socket?t._sender._bufferedBytes+=i:t._bufferedAmount+=i}if(r){let i=new Error(`WebSocket is not open: readyState ${t.readyState} (${Fn[t.readyState]})`);process.nextTick(r,i)}}n(Mb,"sendAfterClose");function JJ(t,e){let r=this[ri];r._closeFrameReceived=!0,r._closeMessage=e,r._closeCode=t,r._socket[ri]!==void 0&&(r._socket.removeListener("data",Z8),process.nextTick(FI,r._socket),t===1005?r.close():r.close(t,e))}n(JJ,"receiverOnConclude");function YJ(){let t=this[ri];t.isPaused||t._socket.resume()}n(YJ,"receiverOnDrain");function QJ(t){let e=this[ri];e._socket[ri]!==void 0&&(e._socket.removeListener("data",Z8),process.nextTick(FI,e._socket),e.close(t[VJ])),e.emit("error",t)}n(QJ,"receiverOnError");function OI(){this[ri].emitClose()}n(OI,"receiverOnFinish");function XJ(t,e){this[ri].emit("message",t,e)}n(XJ,"receiverOnMessage");function eY(t){let e=this[ri];e.pong(t,!e._isServer,qI),e.emit("ping",t)}n(eY,"receiverOnPing");function tY(t){this[ri].emit("pong",t)}n(tY,"receiverOnPong");function FI(t){t.resume()}n(FI,"resume");function KI(){let t=this[ri];this.removeListener("close",KI),this.removeListener("data",Z8),this.removeListener("end",LI),t._readyState=jt.CLOSING;let e;!this._readableState.endEmitted&&!t._closeFrameReceived&&!t._receiver._writableState.errorEmitted&&(e=t._socket.read())!==null&&t._receiver.write(e),t._receiver.end(),this[ri]=void 0,clearTimeout(t._closeTimer),t._receiver._writableState.finished||t._receiver._writableState.errorEmitted?t.emitClose():(t._receiver.on("error",OI),t._receiver.on("finish",OI))}n(KI,"socketOnClose");function Z8(t){this[ri]._receiver.write(t)||this.pause()}n(Z8,"socketOnData");function LI(){let t=this[ri];t._readyState=jt.CLOSING,t._receiver.end(),this.end()}n(LI,"socketOnEnd");function UI(){let t=this[ri];this.removeListener("error",UI),this.on("error",qI),t&&(t._readyState=jt.CLOSING,this.destroy())}n(UI,"socketOnError")});var ZI=v((p5e,GI)=>{"use strict";var{Duplex:rY}=require("stream");function HI(t){t.emit("close")}n(HI,"emitClose");function iY(){!this.destroyed&&this._writableState.finished&&this.destroy()}n(iY,"duplexOnEnd");function $I(t){this.removeListener("error",$I),this.destroy(),this.listenerCount("error")===0&&this.emit("error",t)}n($I,"duplexOnError");function aY(t,e){let r=!0,i=new rY({...e,autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1});return t.on("message",n(function(s,o){let l=!o&&i._readableState.objectMode?s.toString():s;i.push(l)||t.pause()},"message")),t.once("error",n(function(s){i.destroyed||(r=!1,i.destroy(s))},"error")),t.once("close",n(function(){i.destroyed||i.push(null)},"close")),i._destroy=function(a,s){if(t.readyState===t.CLOSED){s(a),process.nextTick(HI,i);return}let o=!1;t.once("error",n(function(d){o=!0,s(d)},"error")),t.once("close",n(function(){o||s(a),process.nextTick(HI,i)},"close")),r&&t.terminate()},i._final=function(a){if(t.readyState===t.CONNECTING){t.once("open",n(function(){i._final(a)},"open"));return}t._socket!==null&&(t._socket._writableState.finished?(a(),i._readableState.endEmitted&&i.destroy()):(t._socket.once("finish",n(function(){a()},"finish")),t.close()))},i._read=function(){t.isPaused&&t.resume()},i._write=function(a,s,o){if(t.readyState===t.CONNECTING){t.once("open",n(function(){i._write(a,s,o)},"open"));return}t.send(a,o)},i.on("end",iY),i.on("error",$I),i}n(aY,"createWebSocketStream");GI.exports=aY});var YI=v((f5e,JI)=>{"use strict";var{tokenChars:nY}=y0();function sY(t){let e=new Set,r=-1,i=-1,a=0;for(a;a{"use strict";var oY=require("events"),J8=require("http"),{Duplex:g5e}=require("stream"),{createHash:lY}=require("crypto"),QI=Pb(),ll=g0(),dY=YI(),uY=Db(),{GUID:cY,kWebSocket:pY}=Fs(),mY=/^[+/0-9A-Za-z]{22}==$/,XI=0,eM=1,rM=2,Rb=class extends oY{static{n(this,"WebSocketServer")}constructor(e,r){if(super(),e={maxPayload:100*1024*1024,skipUTF8Validation:!1,perMessageDeflate:!1,handleProtocols:null,clientTracking:!0,verifyClient:null,noServer:!1,backlog:null,server:null,host:null,path:null,port:null,WebSocket:uY,...e},e.port==null&&!e.server&&!e.noServer||e.port!=null&&(e.server||e.noServer)||e.server&&e.noServer)throw new TypeError('One and only one of the "port", "server", or "noServer" options must be specified');if(e.port!=null?(this._server=J8.createServer((i,a)=>{let s=J8.STATUS_CODES[426];a.writeHead(426,{"Content-Length":s.length,"Content-Type":"text/plain"}),a.end(s)}),this._server.listen(e.port,e.host,e.backlog,r)):e.server&&(this._server=e.server),this._server){let i=this.emit.bind(this,"connection");this._removeListeners=fY(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(a,s,o)=>{this.handleUpgrade(a,s,o,i)}})}e.perMessageDeflate===!0&&(e.perMessageDeflate={}),e.clientTracking&&(this.clients=new Set,this._shouldEmitClose=!1),this.options=e,this._state=XI}address(){if(this.options.noServer)throw new Error('The server is operating in "noServer" mode');return this._server?this._server.address():null}close(e){if(this._state===rM){e&&this.once("close",()=>{e(new Error("The server is not running"))}),process.nextTick(w0,this);return}if(e&&this.once("close",e),this._state!==eM)if(this._state=eM,this.options.noServer||this.options.server)this._server&&(this._removeListeners(),this._removeListeners=this._server=null),this.clients?this.clients.size?this._shouldEmitClose=!0:process.nextTick(w0,this):process.nextTick(w0,this);else{let r=this._server;this._removeListeners(),this._removeListeners=this._server=null,r.close(()=>{w0(this)})}}shouldHandle(e){if(this.options.path){let r=e.url.indexOf("?");if((r!==-1?e.url.slice(0,r):e.url)!==this.options.path)return!1}return!0}handleUpgrade(e,r,i,a){r.on("error",tM);let s=e.headers["sec-websocket-key"],o=+e.headers["sec-websocket-version"];if(e.method!=="GET"){dl(this,e,r,405,"Invalid HTTP method");return}if(e.headers.upgrade.toLowerCase()!=="websocket"){dl(this,e,r,400,"Invalid Upgrade header");return}if(!s||!mY.test(s)){dl(this,e,r,400,"Missing or invalid Sec-WebSocket-Key header");return}if(o!==8&&o!==13){dl(this,e,r,400,"Missing or invalid Sec-WebSocket-Version header");return}if(!this.shouldHandle(e)){x0(r,400);return}let l=e.headers["sec-websocket-protocol"],d=new Set;if(l!==void 0)try{d=dY.parse(l)}catch{dl(this,e,r,400,"Invalid Sec-WebSocket-Protocol header");return}let u=e.headers["sec-websocket-extensions"],c={};if(this.options.perMessageDeflate&&u!==void 0){let p=new ll(this.options.perMessageDeflate,!0,this.options.maxPayload);try{let x=QI.parse(u);x[ll.extensionName]&&(p.accept(x[ll.extensionName]),c[ll.extensionName]=p)}catch{dl(this,e,r,400,"Invalid or unacceptable Sec-WebSocket-Extensions header");return}}if(this.options.verifyClient){let p={origin:e.headers[`${o===8?"sec-websocket-origin":"origin"}`],secure:!!(e.socket.authorized||e.socket.encrypted),req:e};if(this.options.verifyClient.length===2){this.options.verifyClient(p,(x,E,I,k)=>{if(!x)return x0(r,E||401,I,k);this.completeUpgrade(c,s,d,e,r,i,a)});return}if(!this.options.verifyClient(p))return x0(r,401)}this.completeUpgrade(c,s,d,e,r,i,a)}completeUpgrade(e,r,i,a,s,o,l){if(!s.readable||!s.writable)return s.destroy();if(s[pY])throw new Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");if(this._state>XI)return x0(s,503);let u=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${lY("sha1").update(r+cY).digest("base64")}`],c=new this.options.WebSocket(null);if(i.size){let p=this.options.handleProtocols?this.options.handleProtocols(i,a):i.values().next().value;p&&(u.push(`Sec-WebSocket-Protocol: ${p}`),c._protocol=p)}if(e[ll.extensionName]){let p=e[ll.extensionName].params,x=QI.format({[ll.extensionName]:[p]});u.push(`Sec-WebSocket-Extensions: ${x}`),c._extensions=e}this.emit("headers",u,a),s.write(u.concat(`\r `).join(`\r -`)),n.removeListener("error",eM),u.setSocket(n,s,{maxPayload:this.options.maxPayload,skipUTF8Validation:this.options.skipUTF8Validation}),this.clients&&(this.clients.add(u),u.on("close",()=>{this.clients.delete(u),this._shouldEmitClose&&!this.clients.size&&process.nextTick(b0,this)})),o(u,a)}};rM.exports=Db;function mY(t,e){for(let r of Object.keys(e))t.on(r,e[r]);return function(){for(let i of Object.keys(e))t.removeListener(i,e[i])}}function b0(t){t._state=tM,t.emit("close")}function eM(){this.destroy()}function v0(t,e,r,i){r=r||Z8.STATUS_CODES[e],i={Connection:"close","Content-Type":"text/html","Content-Length":Buffer.byteLength(r),...i},t.once("finish",t.destroy),t.end(`HTTP/1.1 ${e} ${Z8.STATUS_CODES[e]}\r +`)),s.removeListener("error",tM),c.setSocket(s,o,{maxPayload:this.options.maxPayload,skipUTF8Validation:this.options.skipUTF8Validation}),this.clients&&(this.clients.add(c),c.on("close",()=>{this.clients.delete(c),this._shouldEmitClose&&!this.clients.size&&process.nextTick(w0,this)})),l(c,a)}};iM.exports=Rb;function fY(t,e){for(let r of Object.keys(e))t.on(r,e[r]);return n(function(){for(let i of Object.keys(e))t.removeListener(i,e[i])},"removeListeners")}n(fY,"addListeners");function w0(t){t._state=rM,t.emit("close")}n(w0,"emitClose");function tM(){this.destroy()}n(tM,"socketOnError");function x0(t,e,r,i){r=r||J8.STATUS_CODES[e],i={Connection:"close","Content-Type":"text/html","Content-Length":Buffer.byteLength(r),...i},t.once("finish",t.destroy),t.end(`HTTP/1.1 ${e} ${J8.STATUS_CODES[e]}\r `+Object.keys(i).map(a=>`${a}: ${i[a]}`).join(`\r `)+`\r \r -`+r)}function ll(t,e,r,i,a){if(t.listenerCount("wsClientError")){let n=new Error(a);Error.captureStackTrace(n,ll),t.emit("wsClientError",n,r,e)}else v0(r,i,a)}});var nM=b((U3e,aM)=>{"use strict";var Fn=Mb();Fn.createWebSocketStream=GI();Fn.Server=iM();Fn.Receiver=xb();Fn.Sender=_b();Fn.WebSocket=Fn;Fn.WebSocketServer=Fn.Server;aM.exports=Fn});var sM=b(Rb=>{"use strict";var fY=Q7();Object.defineProperty(Rb,"__esModule",{value:!0});Rb.default=gY;var hY=fY(nM());function gY(t,e){return new hY.default(t,e)}});var fM=b(ct=>{"use strict";Object.defineProperty(ct,"__esModule",{value:!0});ct.shake256=ct.shake128=ct.keccak_512=ct.keccak_384=ct.keccak_256=ct.keccak_224=ct.sha3_512=ct.sha3_384=ct.sha3_256=ct.sha3_224=ct.Keccak=ct.keccakP=void 0;var j1=b4(),x0=sy(),w0=An(),[dM,uM,cM]=[[],[],[]],yY=BigInt(0),S0=BigInt(1),bY=BigInt(2),vY=BigInt(7),SY=BigInt(256),wY=BigInt(113);for(let t=0,e=S0,r=1,i=0;t<24;t++){[r,i]=[i,(2*r+3*i)%5],dM.push(2*(5*i+r)),uM.push((t+1)*(t+2)/2%64);let a=yY;for(let n=0;n<7;n++)e=(e<>vY)*wY)%SY,e&bY&&(a^=S0<<(S0<r>32?(0,x0.rotlBH)(t,e,r):(0,x0.rotlSH)(t,e,r),lM=(t,e,r)=>r>32?(0,x0.rotlBL)(t,e,r):(0,x0.rotlSL)(t,e,r);function pM(t,e=24){let r=new Uint32Array(10);for(let i=24-e;i<24;i++){for(let s=0;s<10;s++)r[s]=t[s]^t[s+10]^t[s+20]^t[s+30]^t[s+40];for(let s=0;s<10;s+=2){let o=(s+8)%10,l=(s+2)%10,d=r[l],u=r[l+1],c=oM(d,u,1)^r[o],w=lM(d,u,1)^r[o+1];for(let k=0;k<50;k+=10)t[s+k]^=c,t[s+k+1]^=w}let a=t[2],n=t[3];for(let s=0;s<24;s++){let o=uM[s],l=oM(a,n,o),d=lM(a,n,o),u=dM[s];a=t[u],n=t[u+1],t[u]=l,t[u+1]=d}for(let s=0;s<50;s+=10){for(let o=0;o<10;o++)r[o]=t[s+o];for(let o=0;o<10;o++)t[s+o]^=~r[(o+2)%10]&r[(o+4)%10]}t[0]^=xY[i],t[1]^=AY[i]}r.fill(0)}ct.keccakP=pM;var A0=class t extends w0.Hash{constructor(e,r,i,a=!1,n=24){if(super(),this.blockLen=e,this.suffix=r,this.outputLen=i,this.enableXOF=a,this.rounds=n,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,(0,j1.number)(i),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=(0,w0.u32)(this.state)}keccak(){pM(this.state32,this.rounds),this.posOut=0,this.pos=0}update(e){(0,j1.exists)(this);let{blockLen:r,state:i}=this;e=(0,w0.toBytes)(e);let a=e.length;for(let n=0;n=i&&this.keccak();let s=Math.min(i-this.posOut,n-a);e.set(r.subarray(this.posOut,this.posOut+s),a),this.posOut+=s,a+=s}return e}xofInto(e){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return(0,j1.number)(e),this.xofInto(new Uint8Array(e))}digestInto(e){if((0,j1.output)(e,this),this.finished)throw new Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(e){let{blockLen:r,suffix:i,outputLen:a,rounds:n,enableXOF:s}=this;return e||(e=new t(r,i,a,s,n)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=n,e.suffix=i,e.outputLen=a,e.enableXOF=s,e.destroyed=this.destroyed,e}};ct.Keccak=A0;var Ls=(t,e,r)=>(0,w0.wrapConstructor)(()=>new A0(e,t,r));ct.sha3_224=Ls(6,144,224/8);ct.sha3_256=Ls(6,136,256/8);ct.sha3_384=Ls(6,104,384/8);ct.sha3_512=Ls(6,72,512/8);ct.keccak_224=Ls(1,144,224/8);ct.keccak_256=Ls(1,136,256/8);ct.keccak_384=Ls(1,104,384/8);ct.keccak_512=Ls(1,72,512/8);var mM=(t,e,r)=>(0,w0.wrapXOFConstructorWithOpts)((i={})=>new A0(e,t,i.dkLen===void 0?r:i.dkLen,!0));ct.shake128=mM(31,168,128/8);ct.shake256=mM(31,136,256/8)});var Cb=b(Ar=>{"use strict";Object.defineProperty(Ar,"__esModule",{value:!0});Ar.mapToCurveSimpleSWU=Ar.SWUFpSqrtRatio=Ar.weierstrass=Ar.weierstrassPoints=Ar.DER=void 0;var H1=As(),xr=wa(),en=wa(),Bb=yy();function _Y(t){let e=(0,Bb.validateBasic)(t);xr.validateObject(e,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:r,Fp:i,a}=e;if(r){if(!i.eql(a,i.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof r!="object"||typeof r.beta!="bigint"||typeof r.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...e})}var{bytesToNumberBE:kY,hexToBytes:EY}=xr;Ar.DER={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(t){let{Err:e}=Ar.DER;if(t.length<2||t[0]!==2)throw new e("Invalid signature integer tag");let r=t[1],i=t.subarray(2,r+2);if(!r||i.length!==r)throw new e("Invalid signature integer: wrong length");if(i[0]&128)throw new e("Invalid signature integer: negative");if(i[0]===0&&!(i[1]&128))throw new e("Invalid signature integer: unnecessary leading zero");return{d:kY(i),l:t.subarray(r+2)}},toSig(t){let{Err:e}=Ar.DER,r=typeof t=="string"?EY(t):t;if(!(r instanceof Uint8Array))throw new Error("ui8a expected");let i=r.length;if(i<2||r[0]!=48)throw new e("Invalid signature tag");if(r[1]!==i-2)throw new e("Invalid signature: incorrect length");let{d:a,l:n}=Ar.DER._parseInt(r.subarray(2)),{d:s,l:o}=Ar.DER._parseInt(n);if(o.length)throw new e("Invalid signature: left bytes after parsing");return{r:a,s}},hexFromSig(t){let e=d=>Number.parseInt(d[0],16)&8?"00"+d:d,r=d=>{let u=d.toString(16);return u.length&1?`0${u}`:u},i=e(r(t.s)),a=e(r(t.r)),n=i.length/2,s=a.length/2,o=r(n),l=r(s);return`30${r(s+n+4)}02${l}${a}02${o}${i}`}};var Ia=BigInt(0),Rt=BigInt(1),Us=BigInt(2),J8=BigInt(3),hM=BigInt(4);function gM(t){let e=_Y(t),{Fp:r}=e,i=e.toBytes||((z,_,T)=>{let D=_.toAffine();return xr.concatBytes(Uint8Array.from([4]),r.toBytes(D.x),r.toBytes(D.y))}),a=e.fromBytes||(z=>{let _=z.subarray(1),T=r.fromBytes(_.subarray(0,r.BYTES)),D=r.fromBytes(_.subarray(r.BYTES,2*r.BYTES));return{x:T,y:D}});function n(z){let{a:_,b:T}=e,D=r.sqr(z),V=r.mul(D,z);return r.add(r.add(V,r.mul(z,_)),T)}if(!r.eql(r.sqr(e.Gy),n(e.Gx)))throw new Error("bad generator point: equation left != right");function s(z){return typeof z=="bigint"&&Iar.eql(R,r.ZERO);return V(T)&&V(D)?c.ZERO:new c(T,D,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(_){let T=r.invertBatch(_.map(D=>D.pz));return _.map((D,V)=>D.toAffine(T[V])).map(c.fromAffine)}static fromHex(_){let T=c.fromAffine(a((0,en.ensureBytes)("pointHex",_)));return T.assertValidity(),T}static fromPrivateKey(_){return c.BASE.multiply(l(_))}_setWindowSize(_){this._WINDOW_SIZE=_,d.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:_,y:T}=this.toAffine();if(!r.isValid(_)||!r.isValid(T))throw new Error("bad point: x or y not FE");let D=r.sqr(T),V=n(_);if(!r.eql(D,V))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:_}=this.toAffine();if(r.isOdd)return!r.isOdd(_);throw new Error("Field doesn't support isOdd")}equals(_){u(_);let{px:T,py:D,pz:V}=this,{px:R,py:B,pz:q}=_,K=r.eql(r.mul(T,q),r.mul(R,V)),j=r.eql(r.mul(D,q),r.mul(B,V));return K&&j}negate(){return new c(this.px,r.neg(this.py),this.pz)}double(){let{a:_,b:T}=e,D=r.mul(T,J8),{px:V,py:R,pz:B}=this,q=r.ZERO,K=r.ZERO,j=r.ZERO,G=r.mul(V,V),ne=r.mul(R,R),oe=r.mul(B,B),Y=r.mul(V,R);return Y=r.add(Y,Y),j=r.mul(V,B),j=r.add(j,j),q=r.mul(_,j),K=r.mul(D,oe),K=r.add(q,K),q=r.sub(ne,K),K=r.add(ne,K),K=r.mul(q,K),q=r.mul(Y,q),j=r.mul(D,j),oe=r.mul(_,oe),Y=r.sub(G,oe),Y=r.mul(_,Y),Y=r.add(Y,j),j=r.add(G,G),G=r.add(j,G),G=r.add(G,oe),G=r.mul(G,Y),K=r.add(K,G),oe=r.mul(R,B),oe=r.add(oe,oe),G=r.mul(oe,Y),q=r.sub(q,G),j=r.mul(oe,ne),j=r.add(j,j),j=r.add(j,j),new c(q,K,j)}add(_){u(_);let{px:T,py:D,pz:V}=this,{px:R,py:B,pz:q}=_,K=r.ZERO,j=r.ZERO,G=r.ZERO,ne=e.a,oe=r.mul(e.b,J8),Y=r.mul(T,R),ce=r.mul(D,B),I=r.mul(V,q),p=r.add(T,D),h=r.add(R,B);p=r.mul(p,h),h=r.add(Y,ce),p=r.sub(p,h),h=r.add(T,V);let g=r.add(R,q);return h=r.mul(h,g),g=r.add(Y,I),h=r.sub(h,g),g=r.add(D,V),K=r.add(B,q),g=r.mul(g,K),K=r.add(ce,I),g=r.sub(g,K),G=r.mul(ne,h),K=r.mul(oe,I),G=r.add(K,G),K=r.sub(ce,G),G=r.add(ce,G),j=r.mul(K,G),ce=r.add(Y,Y),ce=r.add(ce,Y),I=r.mul(ne,I),h=r.mul(oe,h),ce=r.add(ce,I),I=r.sub(Y,I),I=r.mul(ne,I),h=r.add(h,I),Y=r.mul(ce,h),j=r.add(j,Y),Y=r.mul(g,h),K=r.mul(p,K),K=r.sub(K,Y),Y=r.mul(p,ce),G=r.mul(g,G),G=r.add(G,Y),new c(K,j,G)}subtract(_){return this.add(_.negate())}is0(){return this.equals(c.ZERO)}wNAF(_){return k.wNAFCached(this,d,_,T=>{let D=r.invertBatch(T.map(V=>V.pz));return T.map((V,R)=>V.toAffine(D[R])).map(c.fromAffine)})}multiplyUnsafe(_){let T=c.ZERO;if(_===Ia)return T;if(o(_),_===Rt)return this;let{endo:D}=e;if(!D)return k.unsafeLadder(this,_);let{k1neg:V,k1:R,k2neg:B,k2:q}=D.splitScalar(_),K=T,j=T,G=this;for(;R>Ia||q>Ia;)R&Rt&&(K=K.add(G)),q&Rt&&(j=j.add(G)),G=G.double(),R>>=Rt,q>>=Rt;return V&&(K=K.negate()),B&&(j=j.negate()),j=new c(r.mul(j.px,D.beta),j.py,j.pz),K.add(j)}multiply(_){o(_);let T=_,D,V,{endo:R}=e;if(R){let{k1neg:B,k1:q,k2neg:K,k2:j}=R.splitScalar(T),{p:G,f:ne}=this.wNAF(q),{p:oe,f:Y}=this.wNAF(j);G=k.constTimeNegate(B,G),oe=k.constTimeNegate(K,oe),oe=new c(r.mul(oe.px,R.beta),oe.py,oe.pz),D=G.add(oe),V=ne.add(Y)}else{let{p:B,f:q}=this.wNAF(T);D=B,V=q}return c.normalizeZ([D,V])[0]}multiplyAndAddUnsafe(_,T,D){let V=c.BASE,R=(q,K)=>K===Ia||K===Rt||!q.equals(V)?q.multiplyUnsafe(K):q.multiply(K),B=R(this,T).add(R(_,D));return B.is0()?void 0:B}toAffine(_){let{px:T,py:D,pz:V}=this,R=this.is0();_==null&&(_=R?r.ONE:r.inv(V));let B=r.mul(T,_),q=r.mul(D,_),K=r.mul(V,_);if(R)return{x:r.ZERO,y:r.ZERO};if(!r.eql(K,r.ONE))throw new Error("invZ was invalid");return{x:B,y:q}}isTorsionFree(){let{h:_,isTorsionFree:T}=e;if(_===Rt)return!0;if(T)return T(c,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:_,clearCofactor:T}=e;return _===Rt?this:T?T(c,this):this.multiplyUnsafe(e.h)}toRawBytes(_=!0){return this.assertValidity(),i(c,this,_)}toHex(_=!0){return xr.bytesToHex(this.toRawBytes(_))}}c.BASE=new c(e.Gx,e.Gy,r.ONE),c.ZERO=new c(r.ZERO,r.ONE,r.ZERO);let w=e.nBitLength,k=(0,Bb.wNAF)(c,e.endo?Math.ceil(w/2):w);return{CURVE:e,ProjectivePoint:c,normPrivateKeyToScalar:l,weierstrassEquation:n,isWithinCurveOrder:s}}Ar.weierstrassPoints=gM;function PY(t){let e=(0,Bb.validateBasic)(t);return xr.validateObject(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function TY(t){let e=PY(t),{Fp:r,n:i}=e,a=r.BYTES+1,n=2*r.BYTES+1;function s(h){return Iaxr.bytesToHex(xr.numberToBytesBE(h,e.nByteLength));function z(h){let g=i>>Rt;return h>g}function _(h){return z(h)?o(-h):h}let T=(h,g,v)=>xr.bytesToNumberBE(h.slice(g,v));class D{constructor(g,v,y){this.r=g,this.s=v,this.recovery=y,this.assertValidity()}static fromCompact(g){let v=e.nByteLength;return g=(0,en.ensureBytes)("compactSignature",g,v*2),new D(T(g,0,v),T(g,v,2*v))}static fromDER(g){let{r:v,s:y}=Ar.DER.toSig((0,en.ensureBytes)("DER",g));return new D(v,y)}assertValidity(){if(!w(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!w(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(g){return new D(this.r,this.s,g)}recoverPublicKey(g){let{r:v,s:y,recovery:S}=this,P=j((0,en.ensureBytes)("msgHash",g));if(S==null||![0,1,2,3].includes(S))throw new Error("recovery id invalid");let x=S===2||S===3?v+e.n:v;if(x>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let f=S&1?"03":"02",E=d.fromHex(f+k(x)),U=l(x),$=o(-P*U),H=o(y*U),J=d.BASE.multiplyAndAddUnsafe(E,$,H);if(!J)throw new Error("point at infinify");return J.assertValidity(),J}hasHighS(){return z(this.s)}normalizeS(){return this.hasHighS()?new D(this.r,o(-this.s),this.recovery):this}toDERRawBytes(){return xr.hexToBytes(this.toDERHex())}toDERHex(){return Ar.DER.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return xr.hexToBytes(this.toCompactHex())}toCompactHex(){return k(this.r)+k(this.s)}}let V={isValidPrivateKey(h){try{return u(h),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let h=H1.getMinHashLength(e.n);return H1.mapHashToField(e.randomBytes(h),e.n)},precompute(h=8,g=d.BASE){return g._setWindowSize(h),g.multiply(BigInt(3)),g}};function R(h,g=!0){return d.fromPrivateKey(h).toRawBytes(g)}function B(h){let g=h instanceof Uint8Array,v=typeof h=="string",y=(g||v)&&h.length;return g?y===a||y===n:v?y===2*a||y===2*n:h instanceof d}function q(h,g,v=!0){if(B(h))throw new Error("first arg must be private key");if(!B(g))throw new Error("second arg must be public key");return d.fromHex(g).multiply(u(h)).toRawBytes(v)}let K=e.bits2int||function(h){let g=xr.bytesToNumberBE(h),v=h.length*8-e.nBitLength;return v>0?g>>BigInt(v):g},j=e.bits2int_modN||function(h){return o(K(h))},G=xr.bitMask(e.nBitLength);function ne(h){if(typeof h!="bigint")throw new Error("bigint expected");if(!(Ia<=h&&hle in v))throw new Error("sign() legacy options not supported");let{hash:y,randomBytes:S}=e,{lowS:P,prehash:x,extraEntropy:f}=v;P==null&&(P=!0),h=(0,en.ensureBytes)("msgHash",h),x&&(h=(0,en.ensureBytes)("prehashed msgHash",y(h)));let E=j(h),U=u(g),$=[ne(U),ne(E)];if(f!=null){let le=f===!0?S(r.BYTES):f;$.push((0,en.ensureBytes)("extraEntropy",le))}let H=xr.concatBytes(...$),J=E;function se(le){let Oe=K(le);if(!w(Oe))return;let pe=l(Oe),me=d.BASE.multiply(Oe).toAffine(),Ye=o(me.x);if(Ye===Ia)return;let Ve=o(pe*o(J+Ye*U));if(Ve===Ia)return;let Fe=(me.x===Ye?0:2)|Number(me.y&Rt),Sa=Ve;return P&&z(Ve)&&(Sa=_(Ve),Fe^=1),new D(Ye,Sa,Fe)}return{seed:H,k2sig:se}}let Y={lowS:e.lowS,prehash:!1},ce={lowS:e.lowS,prehash:!1};function I(h,g,v=Y){let{seed:y,k2sig:S}=oe(h,g,v),P=e;return xr.createHmacDrbg(P.hash.outputLen,P.nByteLength,P.hmac)(y,S)}d.BASE._setWindowSize(8);function p(h,g,v,y=ce){let S=h;if(g=(0,en.ensureBytes)("msgHash",g),v=(0,en.ensureBytes)("publicKey",v),"strict"in y)throw new Error("options.strict was renamed to lowS");let{lowS:P,prehash:x}=y,f,E;try{if(typeof S=="string"||S instanceof Uint8Array)try{f=D.fromDER(S)}catch(me){if(!(me instanceof Ar.DER.Err))throw me;f=D.fromCompact(S)}else if(typeof S=="object"&&typeof S.r=="bigint"&&typeof S.s=="bigint"){let{r:me,s:Ye}=S;f=new D(me,Ye)}else throw new Error("PARSE");E=d.fromHex(v)}catch(me){if(me.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(P&&f.hasHighS())return!1;x&&(g=e.hash(g));let{r:U,s:$}=f,H=j(g),J=l($),se=o(H*J),le=o(U*J),Oe=d.BASE.multiplyAndAddUnsafe(E,se,le)?.toAffine();return Oe?o(Oe.x)===U:!1}return{CURVE:e,getPublicKey:R,getSharedSecret:q,sign:I,verify:p,ProjectivePoint:d,Signature:D,utils:V}}Ar.weierstrass=TY;function yM(t,e){let r=t.ORDER,i=Ia;for(let z=r-Rt;z%Us===Ia;z/=Us)i+=Rt;let a=i,n=Us<{let T=c,D=t.pow(_,d),V=t.sqr(D);V=t.mul(V,_);let R=t.mul(z,V);R=t.pow(R,l),R=t.mul(R,D),D=t.mul(R,_),V=t.mul(R,z);let B=t.mul(V,D);R=t.pow(B,u);let q=t.eql(R,t.ONE);D=t.mul(V,w),R=t.mul(B,T),V=t.cmov(D,V,q),B=t.cmov(R,B,q);for(let K=a;K>Rt;K--){let j=K-Us;j=Us<{let V=t.sqr(D),R=t.mul(T,D);V=t.mul(V,R);let B=t.pow(V,z);B=t.mul(B,R);let q=t.mul(B,_),K=t.mul(t.sqr(B),D),j=t.eql(K,T),G=t.cmov(q,B,j);return{isValid:j,value:G}}}return k}Ar.SWUFpSqrtRatio=yM;function zY(t,e){if(H1.validateField(t),!t.isValid(e.A)||!t.isValid(e.B)||!t.isValid(e.Z))throw new Error("mapToCurveSimpleSWU: invalid opts");let r=yM(t,e.Z);if(!t.isOdd)throw new Error("Fp.isOdd is not implemented!");return i=>{let a,n,s,o,l,d,u,c;a=t.sqr(i),a=t.mul(a,e.Z),n=t.sqr(a),n=t.add(n,a),s=t.add(n,t.ONE),s=t.mul(s,e.B),o=t.cmov(e.Z,t.neg(n),!t.eql(n,t.ZERO)),o=t.mul(o,e.A),n=t.sqr(s),d=t.sqr(o),l=t.mul(d,e.A),n=t.add(n,l),n=t.mul(n,s),d=t.mul(d,o),l=t.mul(d,e.B),n=t.add(n,l),u=t.mul(a,s);let{isValid:w,value:k}=r(n,d);c=t.mul(a,i),c=t.mul(c,k),u=t.cmov(u,s,w),c=t.cmov(c,k,w);let z=t.isOdd(i)===t.isOdd(c);return c=t.cmov(t.neg(c),c,z),u=t.div(u,o),{x:u,y:c}}}Ar.mapToCurveSimpleSWU=zY});var vM=b(dl=>{"use strict";Object.defineProperty(dl,"__esModule",{value:!0});dl.hmac=dl.HMAC=void 0;var Y8=b4(),bM=An(),_0=class extends bM.Hash{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,(0,Y8.hash)(e);let i=(0,bM.toBytes)(r);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let a=this.blockLen,n=new Uint8Array(a);n.set(i.length>a?e.create().update(i).digest():i);for(let s=0;snew _0(t,e).update(r).digest();dl.hmac=IY;dl.hmac.create=(t,e)=>new _0(t,e)});var xM=b($1=>{"use strict";Object.defineProperty($1,"__esModule",{value:!0});$1.createCurve=$1.getHash=void 0;var MY=vM(),SM=An(),DY=Cb();function wM(t){return{hash:t,hmac:(e,...r)=>(0,MY.hmac)(t,e,(0,SM.concatBytes)(...r)),randomBytes:SM.randomBytes}}$1.getHash=wM;function RY(t,e){let r=i=>(0,DY.weierstrass)({...t,...wM(i)});return Object.freeze({...r(e),create:r})}$1.createCurve=RY});var RM=b(Si=>{"use strict";Object.defineProperty(Si,"__esModule",{value:!0});Si.encodeToCurve=Si.hashToCurve=Si.schnorr=Si.secp256k1=void 0;var Q8=Ry(),BY=An(),Dr=As(),CY=Cb(),ri=wa(),kM=wy(),OY=xM(),r3=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),X8=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),EM=BigInt(1),e3=BigInt(2),AM=(t,e)=>(t+e/e3)/e;function PM(t){let e=r3,r=BigInt(3),i=BigInt(6),a=BigInt(11),n=BigInt(22),s=BigInt(23),o=BigInt(44),l=BigInt(88),d=t*t*t%e,u=d*d*t%e,c=(0,Dr.pow2)(u,r,e)*u%e,w=(0,Dr.pow2)(c,r,e)*u%e,k=(0,Dr.pow2)(w,e3,e)*d%e,z=(0,Dr.pow2)(k,a,e)*k%e,_=(0,Dr.pow2)(z,n,e)*z%e,T=(0,Dr.pow2)(_,o,e)*_%e,D=(0,Dr.pow2)(T,l,e)*T%e,V=(0,Dr.pow2)(D,o,e)*_%e,R=(0,Dr.pow2)(V,r,e)*u%e,B=(0,Dr.pow2)(R,s,e)*z%e,q=(0,Dr.pow2)(B,i,e)*d%e,K=(0,Dr.pow2)(q,e3,e);if(!js.eql(js.sqr(K),t))throw new Error("Cannot find square root");return K}var js=(0,Dr.Field)(r3,void 0,void 0,{sqrt:PM});Si.secp256k1=(0,OY.createCurve)({a:BigInt(0),b:BigInt(7),Fp:js,n:X8,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{let e=X8,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),i=-EM*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),a=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),n=r,s=BigInt("0x100000000000000000000000000000000"),o=AM(n*t,e),l=AM(-i*t,e),d=(0,Dr.mod)(t-o*r-l*a,e),u=(0,Dr.mod)(-o*i-l*n,e),c=d>s,w=u>s;if(c&&(d=e-d),w&&(u=e-u),d>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:c,k1:d,k2neg:w,k2:u}}}},Q8.sha256);var i3=BigInt(0),TM=t=>typeof t=="bigint"&&i3typeof t=="bigint"&&i3a.charCodeAt(0)));r=(0,ri.concatBytes)(i,i),_M[t]=r}return(0,Q8.sha256)((0,ri.concatBytes)(r,...e))}var Wb=t=>t.toRawBytes(!0).slice(1),Nb=t=>(0,ri.numberToBytesBE)(t,32),Ob=t=>(0,Dr.mod)(t,r3),k0=t=>(0,Dr.mod)(t,X8),Vb=Si.secp256k1.ProjectivePoint,qY=(t,e,r)=>Vb.BASE.multiplyAndAddUnsafe(t,e,r);function qb(t){let e=Si.secp256k1.utils.normPrivateKeyToScalar(t),r=Vb.fromPrivateKey(e);return{scalar:r.hasEvenY()?e:k0(-e),bytes:Wb(r)}}function zM(t){if(!TM(t))throw new Error("bad x: need 0 < x < p");let e=Ob(t*t),r=Ob(e*t+BigInt(7)),i=PM(r);i%e3!==i3&&(i=Ob(-i));let a=new Vb(t,i,EM);return a.assertValidity(),a}function IM(...t){return k0((0,ri.bytesToNumberBE)(t3("BIP0340/challenge",...t)))}function WY(t){return qb(t).bytes}function VY(t,e,r=(0,BY.randomBytes)(32)){let i=(0,ri.ensureBytes)("message",t),{bytes:a,scalar:n}=qb(e),s=(0,ri.ensureBytes)("auxRand",r,32),o=Nb(n^(0,ri.bytesToNumberBE)(t3("BIP0340/aux",s))),l=t3("BIP0340/nonce",o,a,i),d=k0((0,ri.bytesToNumberBE)(l));if(d===i3)throw new Error("sign failed: k is zero");let{bytes:u,scalar:c}=qb(d),w=IM(u,a,i),k=new Uint8Array(64);if(k.set(u,0),k.set(Nb(k0(c+w*n)),32),!MM(k,i,a))throw new Error("sign: Invalid signature produced");return k}function MM(t,e,r){let i=(0,ri.ensureBytes)("signature",t,64),a=(0,ri.ensureBytes)("message",e),n=(0,ri.ensureBytes)("publicKey",r,32);try{let s=zM((0,ri.bytesToNumberBE)(n)),o=(0,ri.bytesToNumberBE)(i.subarray(0,32));if(!TM(o))return!1;let l=(0,ri.bytesToNumberBE)(i.subarray(32,64));if(!NY(l))return!1;let d=IM(Nb(o),Wb(s),a),u=qY(s,l,k0(-d));return!(!u||!u.hasEvenY()||u.toAffine().x!==o)}catch{return!1}}Si.schnorr=(()=>({getPublicKey:WY,sign:VY,verify:MM,utils:{randomPrivateKey:Si.secp256k1.utils.randomPrivateKey,lift_x:zM,pointToBytes:Wb,numberToBytesBE:ri.numberToBytesBE,bytesToNumberBE:ri.bytesToNumberBE,taggedHash:t3,mod:Dr.mod}}))();var FY=(()=>(0,kM.isogenyMap)(js,[["0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7","0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581","0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262","0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c"],["0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b","0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14","0x0000000000000000000000000000000000000000000000000000000000000001"],["0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c","0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3","0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931","0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84"],["0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b","0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573","0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f","0x0000000000000000000000000000000000000000000000000000000000000001"]].map(t=>t.map(e=>BigInt(e)))))(),KY=(()=>(0,CY.mapToCurveSimpleSWU)(js,{A:BigInt("0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533"),B:BigInt("1771"),Z:js.create(BigInt("-11"))}))(),DM=(()=>(0,kM.createHasher)(Si.secp256k1.ProjectivePoint,t=>{let{x:e,y:r}=KY(js.create(t[0]));return FY(e,r)},{DST:"secp256k1_XMD:SHA-256_SSWU_RO_",encodeDST:"secp256k1_XMD:SHA-256_SSWU_NU_",p:js.ORDER,m:1,k:128,expand:"xmd",hash:Q8.sha256}))();Si.hashToCurve=(()=>DM.hashToCurve)();Si.encodeToCurve=(()=>DM.encodeToCurve)()});var ea=b(re=>{"use strict";var ge=require("buffer"),nd=qE(),LY=zy(),UY=My(),BM=Ry(),Fb=YE(),lD=QE(),Xb=nP(),jY=require("tty"),HY=require("util"),$Y=require("path"),GY=require("http"),ev=require("https"),m=mP(),ZY=WP(),JY=Y7(),YY=Rz(),QY=sM(),CM=fM(),_v=RM();function sn(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}function dD(t){if(t&&typeof t=="object"&&"default"in t)return t;var e=Object.create(null);return t&&Object.keys(t).forEach(function(r){if(r!=="default"){var i=Object.getOwnPropertyDescriptor(t,r);Object.defineProperty(e,r,i.get?i:{enumerable:!0,get:function(){return t[r]}})}}),e.default=t,Object.freeze(e)}var OM=sn(LY),Hr=sn(UY),M=dD(lD),XY=sn(jY),uD=sn(HY),eQ=sn($Y),tQ=sn(GY),rQ=sn(ev),iQ=sn(ZY),aQ=dD(JY),nQ=sn(YY),sQ=sn(QY),oQ=nd.ed25519.utils.randomPrivateKey,NM=()=>{let t=nd.ed25519.utils.randomPrivateKey(),e=c3(t),r=new Uint8Array(64);return r.set(t),r.set(e,32),{publicKey:e,secretKey:r}},c3=nd.ed25519.getPublicKey;function qM(t){try{return nd.ed25519.ExtendedPoint.fromHex(t),!0}catch{return!1}}var kv=(t,e)=>nd.ed25519.sign(t,e.slice(0,32)),lQ=nd.ed25519.verify,Re=t=>ge.Buffer.isBuffer(t)?t:t instanceof Uint8Array?ge.Buffer.from(t.buffer,t.byteOffset,t.byteLength):ge.Buffer.from(t),M0=class{constructor(e){Object.assign(this,e)}encode(){return ge.Buffer.from(Fb.serialize(z0,this))}static decode(e){return Fb.deserialize(z0,this,e)}static decodeUnchecked(e){return Fb.deserializeUnchecked(z0,this,e)}},tv=class extends M0{constructor(e){if(super(e),this.enum="",Object.keys(e).length!==1)throw new Error("Enum can only take single value");Object.keys(e).map(r=>{this.enum=r})}},z0=new Map,cD,pD,mD=32,qi=32;function dQ(t){return t._bn!==void 0}var WM=1;pD=Symbol.toStringTag;var te=class t extends M0{constructor(e){if(super({}),this._bn=void 0,dQ(e))this._bn=e._bn;else{if(typeof e=="string"){let r=Hr.default.decode(e);if(r.length!=qi)throw new Error("Invalid public key input");this._bn=new OM.default(r)}else this._bn=new OM.default(e);if(this._bn.byteLength()>qi)throw new Error("Invalid public key input")}}static unique(){let e=new t(WM);return WM+=1,new t(e.toBuffer())}equals(e){return this._bn.eq(e._bn)}toBase58(){return Hr.default.encode(this.toBytes())}toJSON(){return this.toBase58()}toBytes(){let e=this.toBuffer();return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}toBuffer(){let e=this._bn.toArrayLike(ge.Buffer);if(e.length===qi)return e;let r=ge.Buffer.alloc(32);return e.copy(r,32-e.length),r}get[pD](){return`PublicKey(${this.toString()})`}toString(){return this.toBase58()}static async createWithSeed(e,r,i){let a=ge.Buffer.concat([e.toBuffer(),ge.Buffer.from(r),i.toBuffer()]),n=BM.sha256(a);return new t(n)}static createProgramAddressSync(e,r){let i=ge.Buffer.alloc(0);e.forEach(function(n){if(n.length>mD)throw new TypeError("Max seed length exceeded");i=ge.Buffer.concat([i,Re(n)])}),i=ge.Buffer.concat([i,r.toBuffer(),ge.Buffer.from("ProgramDerivedAddress")]);let a=BM.sha256(i);if(qM(a))throw new Error("Invalid seeds, address must fall off the curve");return new t(a)}static async createProgramAddress(e,r){return this.createProgramAddressSync(e,r)}static findProgramAddressSync(e,r){let i=255,a;for(;i!=0;){try{let n=e.concat(ge.Buffer.from([i]));a=this.createProgramAddressSync(n,r)}catch(n){if(n instanceof TypeError)throw n;i--;continue}return[a,i]}throw new Error("Unable to find a viable program address nonce")}static async findProgramAddress(e,r){return this.findProgramAddressSync(e,r)}static isOnCurve(e){let r=new t(e);return qM(r.toBytes())}};cD=te;te.default=new cD("11111111111111111111111111111111");z0.set(te,{kind:"struct",fields:[["_bn","u256"]]});var rv=class{constructor(e){if(this._publicKey=void 0,this._secretKey=void 0,e){let r=Re(e);if(e.length!==64)throw new Error("bad secret key size");this._publicKey=r.slice(32,64),this._secretKey=r.slice(0,32)}else this._secretKey=Re(oQ()),this._publicKey=Re(c3(this._secretKey))}get publicKey(){return new te(this._publicKey)}get secretKey(){return ge.Buffer.concat([this._secretKey,this._publicKey],64)}},uQ=new te("BPFLoader1111111111111111111111111111111111"),$s=1280-40-8,x3=127,Z1=64,D0=class extends Error{constructor(e){super(`Signature ${e} has expired: block height exceeded.`),this.signature=void 0,this.signature=e}};Object.defineProperty(D0.prototype,"name",{value:"TransactionExpiredBlockheightExceededError"});var R0=class extends Error{constructor(e,r){super(`Transaction was not confirmed in ${r.toFixed(2)} seconds. It is unknown if it succeeded or failed. Check signature ${e} using the Solana Explorer or CLI tools.`),this.signature=void 0,this.signature=e}};Object.defineProperty(R0.prototype,"name",{value:"TransactionExpiredTimeoutError"});var Hs=class extends Error{constructor(e){super(`Signature ${e} has expired: the nonce is no longer valid.`),this.signature=void 0,this.signature=e}};Object.defineProperty(Hs.prototype,"name",{value:"TransactionExpiredNonceInvalidError"});var pl=class{constructor(e,r){this.staticAccountKeys=void 0,this.accountKeysFromLookups=void 0,this.staticAccountKeys=e,this.accountKeysFromLookups=r}keySegments(){let e=[this.staticAccountKeys];return this.accountKeysFromLookups&&(e.push(this.accountKeysFromLookups.writable),e.push(this.accountKeysFromLookups.readonly)),e}get(e){for(let r of this.keySegments()){if(e255+1)throw new Error("Account index overflow encountered during compilation");let i=new Map;this.keySegments().flat().forEach((n,s)=>{i.set(n.toBase58(),s)});let a=n=>{let s=i.get(n.toBase58());if(s===void 0)throw new Error("Encountered an unknown instruction account key during compilation");return s};return e.map(n=>({programIdIndex:a(n.programId),accountKeyIndexes:n.keys.map(s=>a(s.pubkey)),data:n.data}))}},qe=(t="publicKey")=>M.blob(32,t),cQ=(t="signature")=>M.blob(64,t),cl=(t="string")=>{let e=M.struct([M.u32("length"),M.u32("lengthPadding"),M.blob(M.offset(M.u32(),-8),"chars")],t),r=e.decode.bind(e),i=e.encode.bind(e),a=e;return a.decode=(n,s)=>r(n,s).chars.toString(),a.encode=(n,s,o)=>{let l={chars:ge.Buffer.from(n,"utf8")};return i(l,s,o)},a.alloc=n=>M.u32().span+M.u32().span+ge.Buffer.from(n,"utf8").length,a},pQ=(t="authorized")=>M.struct([qe("staker"),qe("withdrawer")],t),mQ=(t="lockup")=>M.struct([M.ns64("unixTimestamp"),M.ns64("epoch"),qe("custodian")],t),fQ=(t="voteInit")=>M.struct([qe("nodePubkey"),qe("authorizedVoter"),qe("authorizedWithdrawer"),M.u8("commission")],t),hQ=(t="voteAuthorizeWithSeedArgs")=>M.struct([M.u32("voteAuthorizationType"),qe("currentAuthorityDerivedKeyOwnerPubkey"),cl("currentAuthorityDerivedKeySeed"),qe("newAuthorized")],t);function fD(t,e){let r=a=>{if(a.span>=0)return a.span;if(typeof a.alloc=="function")return a.alloc(e[a.property]);if("count"in a&&"elementLayout"in a){let n=e[a.property];if(Array.isArray(n))return n.length*r(a.elementLayout)}else if("fields"in a)return fD({layout:a},e[a.property]);return 0},i=0;return t.layout.fields.forEach(a=>{i+=r(a)}),i}function xi(t){let e=0,r=0;for(;;){let i=t.shift();if(e|=(i&127)<>=7,r==0){t.push(i);break}else i|=128,t.push(i)}}function je(t,e){if(!t)throw new Error(e||"Assertion failed")}var p3=class t{constructor(e,r){this.payer=void 0,this.keyMetaMap=void 0,this.payer=e,this.keyMetaMap=r}static compile(e,r){let i=new Map,a=s=>{let o=s.toBase58(),l=i.get(o);return l===void 0&&(l={isSigner:!1,isWritable:!1,isInvoked:!1},i.set(o,l)),l},n=a(r);n.isSigner=!0,n.isWritable=!0;for(let s of e){a(s.programId).isInvoked=!0;for(let o of s.keys){let l=a(o.pubkey);l.isSigner||=o.isSigner,l.isWritable||=o.isWritable}}return new t(r,i)}getMessageComponents(){let e=[...this.keyMetaMap.entries()];je(e.length<=256,"Max static account keys length exceeded");let r=e.filter(([,l])=>l.isSigner&&l.isWritable),i=e.filter(([,l])=>l.isSigner&&!l.isWritable),a=e.filter(([,l])=>!l.isSigner&&l.isWritable),n=e.filter(([,l])=>!l.isSigner&&!l.isWritable),s={numRequiredSignatures:r.length+i.length,numReadonlySignedAccounts:i.length,numReadonlyUnsignedAccounts:n.length};{je(r.length>0,"Expected at least one writable signer key");let[l]=r[0];je(l===this.payer.toBase58(),"Expected first writable signer key to be the fee payer")}let o=[...r.map(([l])=>new te(l)),...i.map(([l])=>new te(l)),...a.map(([l])=>new te(l)),...n.map(([l])=>new te(l))];return[s,o]}extractTableLookup(e){let[r,i]=this.drainKeysFoundInLookupTable(e.state.addresses,s=>!s.isSigner&&!s.isInvoked&&s.isWritable),[a,n]=this.drainKeysFoundInLookupTable(e.state.addresses,s=>!s.isSigner&&!s.isInvoked&&!s.isWritable);if(!(r.length===0&&a.length===0))return[{accountKey:e.key,writableIndexes:r,readonlyIndexes:a},{writable:i,readonly:n}]}drainKeysFoundInLookupTable(e,r){let i=new Array,a=new Array;for(let[n,s]of this.keyMetaMap.entries())if(r(s)){let o=new te(n),l=e.findIndex(d=>d.equals(o));l>=0&&(je(l<256,"Max lookup table index exceeded"),i.push(l),a.push(o),this.keyMetaMap.delete(n))}return[i,a]}},nn=class t{constructor(e){this.header=void 0,this.accountKeys=void 0,this.recentBlockhash=void 0,this.instructions=void 0,this.indexToProgramIds=new Map,this.header=e.header,this.accountKeys=e.accountKeys.map(r=>new te(r)),this.recentBlockhash=e.recentBlockhash,this.instructions=e.instructions,this.instructions.forEach(r=>this.indexToProgramIds.set(r.programIdIndex,this.accountKeys[r.programIdIndex]))}get version(){return"legacy"}get staticAccountKeys(){return this.accountKeys}get compiledInstructions(){return this.instructions.map(e=>({programIdIndex:e.programIdIndex,accountKeyIndexes:e.accounts,data:Hr.default.decode(e.data)}))}get addressTableLookups(){return[]}getAccountKeys(){return new pl(this.staticAccountKeys)}static compile(e){let r=p3.compile(e.instructions,e.payerKey),[i,a]=r.getMessageComponents(),s=new pl(a).compileInstructions(e.instructions).map(o=>({programIdIndex:o.programIdIndex,accounts:o.accountKeyIndexes,data:Hr.default.encode(o.data)}));return new t({header:i,accountKeys:a,recentBlockhash:e.recentBlockhash,instructions:s})}isAccountSigner(e){return e=this.header.numRequiredSignatures){let i=e-r,n=this.accountKeys.length-r-this.header.numReadonlyUnsignedAccounts;return i!this.isProgramId(r))}serialize(){let e=this.accountKeys.length,r=[];Ni(r,e);let i=this.instructions.map(c=>{let{accounts:w,programIdIndex:k}=c,z=Array.from(Hr.default.decode(c.data)),_=[];Ni(_,w.length);let T=[];return Ni(T,z.length),{programIdIndex:k,keyIndicesCount:ge.Buffer.from(_),keyIndices:w,dataLength:ge.Buffer.from(T),data:z}}),a=[];Ni(a,i.length);let n=ge.Buffer.alloc($s);ge.Buffer.from(a).copy(n);let s=a.length;i.forEach(c=>{let k=M.struct([M.u8("programIdIndex"),M.blob(c.keyIndicesCount.length,"keyIndicesCount"),M.seq(M.u8("keyIndex"),c.keyIndices.length,"keyIndices"),M.blob(c.dataLength.length,"dataLength"),M.seq(M.u8("userdatum"),c.data.length,"data")]).encode(c,n,s);s+=k}),n=n.slice(0,s);let o=M.struct([M.blob(1,"numRequiredSignatures"),M.blob(1,"numReadonlySignedAccounts"),M.blob(1,"numReadonlyUnsignedAccounts"),M.blob(r.length,"keyCount"),M.seq(qe("key"),e,"keys"),qe("recentBlockhash")]),l={numRequiredSignatures:ge.Buffer.from([this.header.numRequiredSignatures]),numReadonlySignedAccounts:ge.Buffer.from([this.header.numReadonlySignedAccounts]),numReadonlyUnsignedAccounts:ge.Buffer.from([this.header.numReadonlyUnsignedAccounts]),keyCount:ge.Buffer.from(r),keys:this.accountKeys.map(c=>Re(c.toBytes())),recentBlockhash:Hr.default.decode(this.recentBlockhash)},d=ge.Buffer.alloc(2048),u=o.encode(l,d);return n.copy(d,u),d.slice(0,u+n.length)}static from(e){let r=[...e],i=r.shift();if(i!==(i&x3))throw new Error("Versioned messages must be deserialized with VersionedMessage.deserialize()");let a=r.shift(),n=r.shift(),s=xi(r),o=[];for(let w=0;w0)throw new Error("Failed to get account keys because address table lookups were not resolved");return new pl(this.staticAccountKeys,r)}isAccountSigner(e){return e=i){let a=e-i,n=this.addressTableLookups.reduce((s,o)=>s+o.writableIndexes.length,0);return a=this.header.numRequiredSignatures){let a=e-r,s=i-r-this.header.numReadonlyUnsignedAccounts;return an.key.equals(i.accountKey));if(!a)throw new Error(`Failed to find address lookup table account for table key ${i.accountKey.toBase58()}`);for(let n of i.writableIndexes)if(nu.toBytes()),recentBlockhash:Hr.default.decode(this.recentBlockhash),instructionsLength:new Uint8Array(i),serializedInstructions:r,addressTableLookupsLength:new Uint8Array(n),serializedAddressTableLookups:a},o);return o.slice(0,d)}serializeInstructions(){let e=0,r=new Uint8Array($s);for(let i of this.compiledInstructions){let a=Array();Ni(a,i.accountKeyIndexes.length);let n=Array();Ni(n,i.data.length);let s=M.struct([M.u8("programIdIndex"),M.blob(a.length,"encodedAccountKeyIndexesLength"),M.seq(M.u8(),i.accountKeyIndexes.length,"accountKeyIndexes"),M.blob(n.length,"encodedDataLength"),M.blob(i.data.length,"data")]);e+=s.encode({programIdIndex:i.programIdIndex,encodedAccountKeyIndexesLength:new Uint8Array(a),accountKeyIndexes:i.accountKeyIndexes,encodedDataLength:new Uint8Array(n),data:i.data},r,e)}return r.slice(0,e)}serializeAddressTableLookups(){let e=0,r=new Uint8Array($s);for(let i of this.addressTableLookups){let a=Array();Ni(a,i.writableIndexes.length);let n=Array();Ni(n,i.readonlyIndexes.length);let s=M.struct([qe("accountKey"),M.blob(a.length,"encodedWritableIndexesLength"),M.seq(M.u8(),i.writableIndexes.length,"writableIndexes"),M.blob(n.length,"encodedReadonlyIndexesLength"),M.seq(M.u8(),i.readonlyIndexes.length,"readonlyIndexes")]);e+=s.encode({accountKey:i.accountKey.toBytes(),encodedWritableIndexesLength:new Uint8Array(a),writableIndexes:i.writableIndexes,encodedReadonlyIndexesLength:new Uint8Array(n),readonlyIndexes:i.readonlyIndexes},r,e)}return r.slice(0,e)}static deserialize(e){let r=[...e],i=r.shift(),a=i&x3;je(i!==a,"Expected versioned message but received legacy message");let n=a;je(n===0,`Expected versioned message with version 0 but found version ${n}`);let s={numRequiredSignatures:r.shift(),numReadonlySignedAccounts:r.shift(),numReadonlyUnsignedAccounts:r.shift()},o=[],l=xi(r);for(let z=0;z{let e=Ev.deserializeMessageVersion(t);if(e==="legacy")return nn.from(t);if(e===0)return J1.deserialize(t);throw new Error(`Transaction message version ${e} deserialization is not supported`)}},Kn=function(t){return t[t.BLOCKHEIGHT_EXCEEDED=0]="BLOCKHEIGHT_EXCEEDED",t[t.PROCESSED=1]="PROCESSED",t[t.TIMED_OUT=2]="TIMED_OUT",t[t.NONCE_INVALID=3]="NONCE_INVALID",t}({}),gQ=ge.Buffer.alloc(Z1).fill(0),Xe=class{constructor(e){this.keys=void 0,this.programId=void 0,this.data=ge.Buffer.alloc(0),this.programId=e.programId,this.keys=e.keys,e.data&&(this.data=e.data)}toJSON(){return{keys:this.keys.map(({pubkey:e,isSigner:r,isWritable:i})=>({pubkey:e.toJSON(),isSigner:r,isWritable:i})),programId:this.programId.toJSON(),data:[...this.data]}}},Qe=class t{get signature(){return this.signatures.length>0?this.signatures[0].signature:null}constructor(e){if(this.signatures=[],this.feePayer=void 0,this.instructions=[],this.recentBlockhash=void 0,this.lastValidBlockHeight=void 0,this.nonceInfo=void 0,this.minNonceContextSlot=void 0,this._message=void 0,this._json=void 0,!!e)if(e.feePayer&&(this.feePayer=e.feePayer),e.signatures&&(this.signatures=e.signatures),Object.prototype.hasOwnProperty.call(e,"nonceInfo")){let{minContextSlot:r,nonceInfo:i}=e;this.minNonceContextSlot=r,this.nonceInfo=i}else if(Object.prototype.hasOwnProperty.call(e,"lastValidBlockHeight")){let{blockhash:r,lastValidBlockHeight:i}=e;this.recentBlockhash=r,this.lastValidBlockHeight=i}else{let{recentBlockhash:r,nonceInfo:i}=e;i&&(this.nonceInfo=i),this.recentBlockhash=r}}toJSON(){return{recentBlockhash:this.recentBlockhash||null,feePayer:this.feePayer?this.feePayer.toJSON():null,nonceInfo:this.nonceInfo?{nonce:this.nonceInfo.nonce,nonceInstruction:this.nonceInfo.nonceInstruction.toJSON()}:null,instructions:this.instructions.map(e=>e.toJSON()),signers:this.signatures.map(({publicKey:e})=>e.toJSON())}}add(...e){if(e.length===0)throw new Error("No instructions");return e.forEach(r=>{"instructions"in r?this.instructions=this.instructions.concat(r.instructions):"data"in r&&"programId"in r&&"keys"in r?this.instructions.push(r):this.instructions.push(new Xe(r))}),this}compileMessage(){if(this._message&&JSON.stringify(this.toJSON())===JSON.stringify(this._json))return this._message;let e,r;if(this.nonceInfo?(e=this.nonceInfo.nonce,this.instructions[0]!=this.nonceInfo.nonceInstruction?r=[this.nonceInfo.nonceInstruction,...this.instructions]:r=this.instructions):(e=this.recentBlockhash,r=this.instructions),!e)throw new Error("Transaction recentBlockhash required");r.length<1&&console.warn("No instructions provided");let i;if(this.feePayer)i=this.feePayer;else if(this.signatures.length>0&&this.signatures[0].publicKey)i=this.signatures[0].publicKey;else throw new Error("Transaction fee payer required");for(let _=0;_{_.keys.forEach(D=>{n.push({...D})});let T=_.programId.toString();a.includes(T)||a.push(T)}),a.forEach(_=>{n.push({pubkey:new te(_),isSigner:!1,isWritable:!1})});let s=[];n.forEach(_=>{let T=_.pubkey.toString(),D=s.findIndex(V=>V.pubkey.toString()===T);D>-1?(s[D].isWritable=s[D].isWritable||_.isWritable,s[D].isSigner=s[D].isSigner||_.isSigner):s.push(_)}),s.sort(function(_,T){if(_.isSigner!==T.isSigner)return _.isSigner?-1:1;if(_.isWritable!==T.isWritable)return _.isWritable?-1:1;let D={localeMatcher:"best fit",usage:"sort",sensitivity:"variant",ignorePunctuation:!1,numeric:!1,caseFirst:"lower"};return _.pubkey.toBase58().localeCompare(T.pubkey.toBase58(),"en",D)});let o=s.findIndex(_=>_.pubkey.equals(i));if(o>-1){let[_]=s.splice(o,1);_.isSigner=!0,_.isWritable=!0,s.unshift(_)}else s.unshift({pubkey:i,isSigner:!0,isWritable:!0});for(let _ of this.signatures){let T=s.findIndex(D=>D.pubkey.equals(_.publicKey));if(T>-1)s[T].isSigner||(s[T].isSigner=!0,console.warn("Transaction references a signature that is unnecessary, only the fee payer and instruction signer accounts should sign a transaction. This behavior is deprecated and will throw an error in the next major version release."));else throw new Error(`unknown signer: ${_.publicKey.toString()}`)}let l=0,d=0,u=0,c=[],w=[];s.forEach(({pubkey:_,isSigner:T,isWritable:D})=>{T?(c.push(_.toString()),l+=1,D||(d+=1)):(w.push(_.toString()),D||(u+=1))});let k=c.concat(w),z=r.map(_=>{let{data:T,programId:D}=_;return{programIdIndex:k.indexOf(D.toString()),accounts:_.keys.map(V=>k.indexOf(V.pubkey.toString())),data:Hr.default.encode(T)}});return z.forEach(_=>{je(_.programIdIndex>=0),_.accounts.forEach(T=>je(T>=0))}),new nn({header:{numRequiredSignatures:l,numReadonlySignedAccounts:d,numReadonlyUnsignedAccounts:u},accountKeys:k,recentBlockhash:e,instructions:z})}_compile(){let e=this.compileMessage(),r=e.accountKeys.slice(0,e.header.numRequiredSignatures);return this.signatures.length===r.length&&this.signatures.every((a,n)=>r[n].equals(a.publicKey))||(this.signatures=r.map(i=>({signature:null,publicKey:i}))),e}serializeMessage(){return this._compile().serialize()}async getEstimatedFee(e){return(await e.getFeeForMessage(this.compileMessage())).value}setSigners(...e){if(e.length===0)throw new Error("No signers");let r=new Set;this.signatures=e.filter(i=>{let a=i.toString();return r.has(a)?!1:(r.add(a),!0)}).map(i=>({signature:null,publicKey:i}))}sign(...e){if(e.length===0)throw new Error("No signers");let r=new Set,i=[];for(let n of e){let s=n.publicKey.toString();r.has(s)||(r.add(s),i.push(n))}this.signatures=i.map(n=>({signature:null,publicKey:n.publicKey}));let a=this._compile();this._partialSign(a,...i)}partialSign(...e){if(e.length===0)throw new Error("No signers");let r=new Set,i=[];for(let n of e){let s=n.publicKey.toString();r.has(s)||(r.add(s),i.push(n))}let a=this._compile();this._partialSign(a,...i)}_partialSign(e,...r){let i=e.serialize();r.forEach(a=>{let n=kv(i,a.secretKey);this._addSignature(a.publicKey,Re(n))})}addSignature(e,r){this._compile(),this._addSignature(e,r)}_addSignature(e,r){je(r.length===64);let i=this.signatures.findIndex(a=>e.equals(a.publicKey));if(i<0)throw new Error(`unknown signer: ${e.toString()}`);this.signatures[i].signature=ge.Buffer.from(r)}verifySignatures(e){return this._verifySignatures(this.serializeMessage(),e===void 0?!0:e)}_verifySignatures(e,r){for(let{signature:i,publicKey:a}of this.signatures)if(i===null){if(r)return!1}else if(!lQ(i,e,a.toBytes()))return!1;return!0}serialize(e){let{requireAllSignatures:r,verifySignatures:i}=Object.assign({requireAllSignatures:!0,verifySignatures:!0},e),a=this.serializeMessage();if(i&&!this._verifySignatures(a,r))throw new Error("Signature verification failed");return this._serialize(a)}_serialize(e){let{signatures:r}=this,i=[];Ni(i,r.length);let a=i.length+r.length*64+e.length,n=ge.Buffer.alloc(a);return je(r.length<256),ge.Buffer.from(i).copy(n,0),r.forEach(({signature:s},o)=>{s!==null&&(je(s.length===64,"signature has invalid length"),ge.Buffer.from(s).copy(n,i.length+o*64))}),e.copy(n,i.length+r.length*64),je(n.length<=$s,`Transaction too large: ${n.length} > ${$s}`),n}get keys(){return je(this.instructions.length===1),this.instructions[0].keys.map(e=>e.pubkey)}get programId(){return je(this.instructions.length===1),this.instructions[0].programId}get data(){return je(this.instructions.length===1),this.instructions[0].data}static from(e){let r=[...e],i=xi(r),a=[];for(let n=0;n0&&(i.feePayer=e.accountKeys[0]),r.forEach((a,n)=>{let s={signature:a==Hr.default.encode(gQ)?null:Hr.default.decode(a),publicKey:e.accountKeys[n]};i.signatures.push(s)}),e.instructions.forEach(a=>{let n=a.accounts.map(s=>{let o=e.accountKeys[s];return{pubkey:o,isSigner:i.signatures.some(l=>l.publicKey.toString()===o.toString())||e.isAccountSigner(s),isWritable:e.isAccountWritable(s)}});i.instructions.push(new Xe({keys:n,programId:e.accountKeys[a.programIdIndex],data:Hr.default.decode(a.data)}))}),i._message=e,i._json=i.toJSON(),i}},iv=class t{constructor(e){this.payerKey=void 0,this.instructions=void 0,this.recentBlockhash=void 0,this.payerKey=e.payerKey,this.instructions=e.instructions,this.recentBlockhash=e.recentBlockhash}static decompile(e,r){let{header:i,compiledInstructions:a,recentBlockhash:n}=e,{numRequiredSignatures:s,numReadonlySignedAccounts:o,numReadonlyUnsignedAccounts:l}=i,d=s-o;je(d>0,"Message header is invalid");let u=e.staticAccountKeys.length-s-l;je(u>=0,"Message header is invalid");let c=e.getAccountKeys(r),w=c.get(0);if(w===void 0)throw new Error("Failed to decompile message because no account keys were found");let k=[];for(let z of a){let _=[];for(let D of z.accountKeyIndexes){let V=c.get(D);if(V===void 0)throw new Error(`Failed to find key for account key index ${D}`);let R=Ds.equals(a.publicKey));je(n>=0,`Cannot sign with non signer key ${a.publicKey.toBase58()}`),this.signatures[n]=kv(r,a.secretKey)}}addSignature(e,r){je(r.byteLength===64,"Signature must be 64 bytes long");let a=this.message.staticAccountKeys.slice(0,this.message.header.numRequiredSignatures).findIndex(n=>n.equals(e));je(a>=0,`Can not add signature; \`${e.toBase58()}\` is not required to sign this transaction`),this.signatures[a]=r}},yQ=160,bQ=64,vQ=yQ/bQ,hD=1e3/vQ,rn=new te("SysvarC1ock11111111111111111111111111111111"),SQ=new te("SysvarEpochSchedu1e111111111111111111111111"),wQ=new te("Sysvar1nstructions1111111111111111111111111"),d3=new te("SysvarRecentB1ockHashes11111111111111111111"),Y1=new te("SysvarRent111111111111111111111111111111111"),xQ=new te("SysvarRewards111111111111111111111111111111"),AQ=new te("SysvarS1otHashes111111111111111111111111111"),_Q=new te("SysvarS1otHistory11111111111111111111111111"),u3=new te("SysvarStakeHistory1111111111111111111111111");async function nv(t,e,r,i){let a=i&&{skipPreflight:i.skipPreflight,preflightCommitment:i.preflightCommitment||i.commitment,maxRetries:i.maxRetries,minContextSlot:i.minContextSlot},n=await t.sendTransaction(e,r,a),s;if(e.recentBlockhash!=null&&e.lastValidBlockHeight!=null)s=(await t.confirmTransaction({abortSignal:i?.abortSignal,signature:n,blockhash:e.recentBlockhash,lastValidBlockHeight:e.lastValidBlockHeight},i&&i.commitment)).value;else if(e.minNonceContextSlot!=null&&e.nonceInfo!=null){let{nonceInstruction:o}=e.nonceInfo,l=o.keys[0].pubkey;s=(await t.confirmTransaction({abortSignal:i?.abortSignal,minContextSlot:e.minNonceContextSlot,nonceAccountPubkey:l,nonceValue:e.nonceInfo.nonce,signature:n},i&&i.commitment)).value}else i?.abortSignal!=null&&console.warn("sendAndConfirmTransaction(): A transaction with a deprecated confirmation strategy was supplied along with an `abortSignal`. Only transactions having `lastValidBlockHeight` or a combination of `nonceInfo` and `minNonceContextSlot` are abortable."),s=(await t.confirmTransaction(n,i&&i.commitment)).value;if(s.err)throw new Error(`Transaction ${n} failed (${JSON.stringify(s)})`);return n}function ul(t){return new Promise(e=>setTimeout(e,t))}function Ke(t,e){let r=t.layout.span>=0?t.layout.span:fD(t,e),i=ge.Buffer.alloc(r),a=Object.assign({instruction:t.index},e);return t.layout.encode(a,i),i}function Je(t,e){let r;try{r=t.layout.decode(e)}catch(i){throw new Error("invalid instruction; "+i)}if(r.instruction!==t.index)throw new Error(`invalid instruction; instruction index mismatch ${r.instruction} != ${t.index}`);return r}var gD=M.nu64("lamportsPerSignature"),yD=M.struct([M.u32("version"),M.u32("state"),qe("authorizedPubkey"),qe("nonce"),M.struct([gD],"feeCalculator")]),sv=yD.span,m3=class t{constructor(e){this.authorizedPubkey=void 0,this.nonce=void 0,this.feeCalculator=void 0,this.authorizedPubkey=e.authorizedPubkey,this.nonce=e.nonce,this.feeCalculator=e.feeCalculator}static fromAccountData(e){let r=yD.decode(Re(e),0);return new t({authorizedPubkey:new te(r.authorizedPubkey),nonce:new te(r.nonce).toString(),feeCalculator:r.feeCalculator})}},kQ=t=>{let e=t.decode.bind(t),r=t.encode.bind(t);return{decode:e,encode:r}},EQ=t=>e=>{let r=lD.blob(t,e),{encode:i,decode:a}=kQ(r),n=r;return n.decode=(s,o)=>{let l=a(s,o);return Xb.toBigIntLE(ge.Buffer.from(l))},n.encode=(s,o,l)=>{let d=Xb.toBufferLE(s,t);return i(d,o,l)},n},Q1=EQ(8),ov=class{constructor(){}static decodeInstructionType(e){this.checkProgramId(e.programId);let i=M.u32("instruction").decode(e.data),a;for(let[n,s]of Object.entries(pt))if(s.index==i){a=n;break}if(!a)throw new Error("Instruction type incorrect; not a SystemInstruction");return a}static decodeCreateAccount(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,2);let{lamports:r,space:i,programId:a}=Je(pt.Create,e.data);return{fromPubkey:e.keys[0].pubkey,newAccountPubkey:e.keys[1].pubkey,lamports:r,space:i,programId:new te(a)}}static decodeTransfer(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,2);let{lamports:r}=Je(pt.Transfer,e.data);return{fromPubkey:e.keys[0].pubkey,toPubkey:e.keys[1].pubkey,lamports:r}}static decodeTransferWithSeed(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,3);let{lamports:r,seed:i,programId:a}=Je(pt.TransferWithSeed,e.data);return{fromPubkey:e.keys[0].pubkey,basePubkey:e.keys[1].pubkey,toPubkey:e.keys[2].pubkey,lamports:r,seed:i,programId:new te(a)}}static decodeAllocate(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,1);let{space:r}=Je(pt.Allocate,e.data);return{accountPubkey:e.keys[0].pubkey,space:r}}static decodeAllocateWithSeed(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,1);let{base:r,seed:i,space:a,programId:n}=Je(pt.AllocateWithSeed,e.data);return{accountPubkey:e.keys[0].pubkey,basePubkey:new te(r),seed:i,space:a,programId:new te(n)}}static decodeAssign(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,1);let{programId:r}=Je(pt.Assign,e.data);return{accountPubkey:e.keys[0].pubkey,programId:new te(r)}}static decodeAssignWithSeed(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,1);let{base:r,seed:i,programId:a}=Je(pt.AssignWithSeed,e.data);return{accountPubkey:e.keys[0].pubkey,basePubkey:new te(r),seed:i,programId:new te(a)}}static decodeCreateWithSeed(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,2);let{base:r,seed:i,lamports:a,space:n,programId:s}=Je(pt.CreateWithSeed,e.data);return{fromPubkey:e.keys[0].pubkey,newAccountPubkey:e.keys[1].pubkey,basePubkey:new te(r),seed:i,lamports:a,space:n,programId:new te(s)}}static decodeNonceInitialize(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,3);let{authorized:r}=Je(pt.InitializeNonceAccount,e.data);return{noncePubkey:e.keys[0].pubkey,authorizedPubkey:new te(r)}}static decodeNonceAdvance(e){return this.checkProgramId(e.programId),this.checkKeyLength(e.keys,3),Je(pt.AdvanceNonceAccount,e.data),{noncePubkey:e.keys[0].pubkey,authorizedPubkey:e.keys[2].pubkey}}static decodeNonceWithdraw(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,5);let{lamports:r}=Je(pt.WithdrawNonceAccount,e.data);return{noncePubkey:e.keys[0].pubkey,toPubkey:e.keys[1].pubkey,authorizedPubkey:e.keys[4].pubkey,lamports:r}}static decodeNonceAuthorize(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,2);let{authorized:r}=Je(pt.AuthorizeNonceAccount,e.data);return{noncePubkey:e.keys[0].pubkey,authorizedPubkey:e.keys[1].pubkey,newAuthorizedPubkey:new te(r)}}static checkProgramId(e){if(!e.equals(ii.programId))throw new Error("invalid instruction; programId is not SystemProgram")}static checkKeyLength(e,r){if(e.length0?c:1,space:n.length,programId:a}));k!==null&&await nv(e,k,[r,i],{commitment:"confirmed"})}let s=M.struct([M.u32("instruction"),M.u32("offset"),M.u32("bytesLength"),M.u32("bytesLengthPadding"),M.seq(M.u8("byte"),M.offset(M.u32(),-8),"bytes")]),o=t.chunkSize,l=0,d=n,u=[];for(;d.length>0;){let c=d.slice(0,o),w=ge.Buffer.alloc(o+16);s.encode({instruction:0,offset:l,bytes:c,bytesLength:0,bytesLengthPadding:0},w);let k=new Qe().add({keys:[{pubkey:i.publicKey,isSigner:!0,isWritable:!0}],programId:a,data:w});u.push(nv(e,k,[r,i],{commitment:"confirmed"})),e._rpcEndpoint.includes("solana.com")&&await ul(1e3/4),l+=o,d=d.slice(o)}await Promise.all(u);{let c=M.struct([M.u32("instruction")]),w=ge.Buffer.alloc(c.span);c.encode({instruction:1},w);let k=new Qe().add({keys:[{pubkey:i.publicKey,isSigner:!0,isWritable:!0},{pubkey:Y1,isSigner:!1,isWritable:!1}],programId:a,data:w}),z="processed",_=await e.sendTransaction(k,[r,i],{preflightCommitment:z}),{context:T,value:D}=await e.confirmTransaction({signature:_,lastValidBlockHeight:k.lastValidBlockHeight,blockhash:k.recentBlockhash},z);if(D.err)throw new Error(`Transaction ${_} failed (${JSON.stringify(D)})`);for(;;){try{if(await e.getSlot({commitment:z})>T.slot)break}catch{}await new Promise(V=>setTimeout(V,Math.round(hD/2)))}}return!0}};X1.chunkSize=PQ;var TQ=new te("BPFLoader2111111111111111111111111111111111"),lv=class{static getMinNumSignatures(e){return X1.getMinNumSignatures(e)}static load(e,r,i,a,n){return X1.load(e,r,i,n,a)}};function bD(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var A3={exports:{}},ed=1e3,td=ed*60,rd=td*60,ml=rd*24,zQ=ml*7,IQ=ml*365.25,MQ=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return DQ(t);if(r==="number"&&isFinite(t))return e.long?BQ(t):RQ(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function DQ(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),i=(e[2]||"ms").toLowerCase();switch(i){case"years":case"year":case"yrs":case"yr":case"y":return r*IQ;case"weeks":case"week":case"w":return r*zQ;case"days":case"day":case"d":return r*ml;case"hours":case"hour":case"hrs":case"hr":case"h":return r*rd;case"minutes":case"minute":case"mins":case"min":case"m":return r*td;case"seconds":case"second":case"secs":case"sec":case"s":return r*ed;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function RQ(t){var e=Math.abs(t);return e>=ml?Math.round(t/ml)+"d":e>=rd?Math.round(t/rd)+"h":e>=td?Math.round(t/td)+"m":e>=ed?Math.round(t/ed)+"s":t+"ms"}function BQ(t){var e=Math.abs(t);return e>=ml?a3(t,e,ml,"day"):e>=rd?a3(t,e,rd,"hour"):e>=td?a3(t,e,td,"minute"):e>=ed?a3(t,e,ed,"second"):t+" ms"}function a3(t,e,r,i){var a=e>=r*1.5;return Math.round(t/r)+" "+i+(a?"s":"")}var CQ=uD.default,OQ=MQ,NQ=function(t){if(typeof t=="number")return t;var e=OQ(t);if(e===void 0){var r=new Error(CQ.format("humanize-ms(%j) result undefined",t));console.warn(r.stack)}return e},dv={exports:{}},n3={exports:{}},Kb,VM;function qQ(){if(VM)return Kb;VM=1;var t=1e3,e=t*60,r=e*60,i=r*24,a=i*7,n=i*365.25;Kb=function(u,c){c=c||{};var w=typeof u;if(w==="string"&&u.length>0)return s(u);if(w==="number"&&isFinite(u))return c.long?l(u):o(u);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(u))};function s(u){if(u=String(u),!(u.length>100)){var c=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(u);if(c){var w=parseFloat(c[1]),k=(c[2]||"ms").toLowerCase();switch(k){case"years":case"year":case"yrs":case"yr":case"y":return w*n;case"weeks":case"week":case"w":return w*a;case"days":case"day":case"d":return w*i;case"hours":case"hour":case"hrs":case"hr":case"h":return w*r;case"minutes":case"minute":case"mins":case"min":case"m":return w*e;case"seconds":case"second":case"secs":case"sec":case"s":return w*t;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return w;default:return}}}}function o(u){var c=Math.abs(u);return c>=i?Math.round(u/i)+"d":c>=r?Math.round(u/r)+"h":c>=e?Math.round(u/e)+"m":c>=t?Math.round(u/t)+"s":u+"ms"}function l(u){var c=Math.abs(u);return c>=i?d(u,c,i,"day"):c>=r?d(u,c,r,"hour"):c>=e?d(u,c,e,"minute"):c>=t?d(u,c,t,"second"):u+" ms"}function d(u,c,w,k){var z=c>=w*1.5;return Math.round(u/w)+" "+k+(z?"s":"")}return Kb}var Lb,FM;function vD(){if(FM)return Lb;FM=1;function t(e){i.debug=i,i.default=i,i.coerce=d,i.disable=s,i.enable=n,i.enabled=o,i.humanize=qQ(),i.destroy=u,Object.keys(e).forEach(c=>{i[c]=e[c]}),i.names=[],i.skips=[],i.formatters={};function r(c){let w=0;for(let k=0;k{if(j==="%%")return"%";q++;let ne=i.formatters[G];if(typeof ne=="function"){let oe=D[q];j=ne.call(V,oe),D.splice(q,1),q--}return j}),i.formatArgs.call(V,D),(V.log||i.log).apply(V,D)}return T.namespace=c,T.useColors=i.useColors(),T.color=i.selectColor(c),T.extend=a,T.destroy=i.destroy,Object.defineProperty(T,"enabled",{enumerable:!0,configurable:!1,get:()=>k!==null?k:(z!==i.namespaces&&(z=i.namespaces,_=i.enabled(c)),_),set:D=>{k=D}}),typeof i.init=="function"&&i.init(T),T}function a(c,w){let k=i(this.namespace+(typeof w>"u"?":":w)+c);return k.log=this.log,k}function n(c){i.save(c),i.namespaces=c,i.names=[],i.skips=[];let w,k=(typeof c=="string"?c:"").split(/[\s,]+/),z=k.length;for(w=0;w"-"+w)].join(",");return i.enable(""),c}function o(c){if(c[c.length-1]==="*")return!0;let w,k;for(w=0,k=i.skips.length;w{let l=!1;return()=>{l||(l=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),e.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function r(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function i(l){if(l[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+l[0]+(this.useColors?"%c ":" ")+"+"+t.exports.humanize(this.diff),!this.useColors)return;let d="color: "+this.color;l.splice(1,0,d,"color: inherit");let u=0,c=0;l[0].replace(/%[a-zA-Z%]/g,w=>{w!=="%%"&&(u++,w==="%c"&&(c=u))}),l.splice(c,0,d)}e.log=console.debug||console.log||(()=>{});function a(l){try{l?e.storage.setItem("debug",l):e.storage.removeItem("debug")}catch{}}function n(){let l;try{l=e.storage.getItem("debug")}catch{}return!l&&typeof process<"u"&&"env"in process&&(l=process.env.DEBUG),l}function s(){try{return localStorage}catch{}}t.exports=vD()(e);let{formatters:o}=t.exports;o.j=function(l){try{return JSON.stringify(l)}catch(d){return"[UnexpectedJSONParseError]: "+d.message}}}(n3,n3.exports)),n3.exports}var s3={exports:{}},Ub,LM;function VQ(){if(LM)return Ub;LM=1;function t(){let r=/(Chrome|Chromium)\/(?\d+)\./.exec(navigator.userAgent);if(r)return Number.parseInt(r.groups.chromeVersion,10)}let e=t()>=69?{level:1,hasBasic:!0,has256:!1,has16m:!1}:!1;return Ub={stdout:e,stderr:e},Ub}var UM;function FQ(){return UM||(UM=1,function(t,e){let r=XY.default,i=uD.default;e.init=u,e.log=o,e.formatArgs=n,e.save=l,e.load=d,e.useColors=a,e.destroy=i.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."),e.colors=[6,2,3,4,5,1];try{let w=VQ();w&&(w.stderr||w).level>=2&&(e.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}e.inspectOpts=Object.keys(process.env).filter(w=>/^debug_/i.test(w)).reduce((w,k)=>{let z=k.substring(6).toLowerCase().replace(/_([a-z])/g,(T,D)=>D.toUpperCase()),_=process.env[k];return/^(yes|on|true|enabled)$/i.test(_)?_=!0:/^(no|off|false|disabled)$/i.test(_)?_=!1:_==="null"?_=null:_=Number(_),w[z]=_,w},{});function a(){return"colors"in e.inspectOpts?!!e.inspectOpts.colors:r.isatty(process.stderr.fd)}function n(w){let{namespace:k,useColors:z}=this;if(z){let _=this.color,T="\x1B[3"+(_<8?_:"8;5;"+_),D=` ${T};1m${k} \x1B[0m`;w[0]=D+w[0].split(` +`+r)}n(x0,"abortHandshake");function dl(t,e,r,i,a){if(t.listenerCount("wsClientError")){let s=new Error(a);Error.captureStackTrace(s,dl),t.emit("wsClientError",s,r,e)}else x0(r,i,a)}n(dl,"abortHandshakeOrEmitwsClientError")});var sM=v((v5e,nM)=>{"use strict";var Kn=Db();Kn.createWebSocketStream=ZI();Kn.Server=aM();Kn.Receiver=Ab();Kn.Sender=kb();Kn.WebSocket=Kn;Kn.WebSocketServer=Kn.Server;nM.exports=Kn});var oM=v(Bb=>{"use strict";var hY=X7();Object.defineProperty(Bb,"__esModule",{value:!0});Bb.default=yY;var gY=hY(sM());function yY(t,e){return new gY.default(t,e)}n(yY,"_default")});var hM=v(pt=>{"use strict";Object.defineProperty(pt,"__esModule",{value:!0});pt.shake256=pt.shake128=pt.keccak_512=pt.keccak_384=pt.keccak_256=pt.keccak_224=pt.sha3_512=pt.sha3_384=pt.sha3_256=pt.sha3_224=pt.Keccak=pt.keccakP=void 0;var H1=S4(),k0=oy(),_0=_n(),[uM,cM,pM]=[[],[],[]],bY=BigInt(0),A0=BigInt(1),vY=BigInt(2),SY=BigInt(7),wY=BigInt(256),xY=BigInt(113);for(let t=0,e=A0,r=1,i=0;t<24;t++){[r,i]=[i,(2*r+3*i)%5],uM.push(2*(5*i+r)),cM.push((t+1)*(t+2)/2%64);let a=bY;for(let s=0;s<7;s++)e=(e<>SY)*xY)%wY,e&vY&&(a^=A0<<(A0<r>32?(0,k0.rotlBH)(t,e,r):(0,k0.rotlSH)(t,e,r),"rotlH"),dM=n((t,e,r)=>r>32?(0,k0.rotlBL)(t,e,r):(0,k0.rotlSL)(t,e,r),"rotlL");function mM(t,e=24){let r=new Uint32Array(10);for(let i=24-e;i<24;i++){for(let o=0;o<10;o++)r[o]=t[o]^t[o+10]^t[o+20]^t[o+30]^t[o+40];for(let o=0;o<10;o+=2){let l=(o+8)%10,d=(o+2)%10,u=r[d],c=r[d+1],p=lM(u,c,1)^r[l],x=dM(u,c,1)^r[l+1];for(let E=0;E<50;E+=10)t[o+E]^=p,t[o+E+1]^=x}let a=t[2],s=t[3];for(let o=0;o<24;o++){let l=cM[o],d=lM(a,s,l),u=dM(a,s,l),c=uM[o];a=t[c],s=t[c+1],t[c]=d,t[c+1]=u}for(let o=0;o<50;o+=10){for(let l=0;l<10;l++)r[l]=t[o+l];for(let l=0;l<10;l++)t[o+l]^=~r[(l+2)%10]&r[(l+4)%10]}t[0]^=AY[i],t[1]^=_Y[i]}r.fill(0)}n(mM,"keccakP");pt.keccakP=mM;var E0=class t extends _0.Hash{static{n(this,"Keccak")}constructor(e,r,i,a=!1,s=24){if(super(),this.blockLen=e,this.suffix=r,this.outputLen=i,this.enableXOF=a,this.rounds=s,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,(0,H1.number)(i),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=(0,_0.u32)(this.state)}keccak(){mM(this.state32,this.rounds),this.posOut=0,this.pos=0}update(e){(0,H1.exists)(this);let{blockLen:r,state:i}=this;e=(0,_0.toBytes)(e);let a=e.length;for(let s=0;s=i&&this.keccak();let o=Math.min(i-this.posOut,s-a);e.set(r.subarray(this.posOut,this.posOut+o),a),this.posOut+=o,a+=o}return e}xofInto(e){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return(0,H1.number)(e),this.xofInto(new Uint8Array(e))}digestInto(e){if((0,H1.output)(e,this),this.finished)throw new Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(e){let{blockLen:r,suffix:i,outputLen:a,rounds:s,enableXOF:o}=this;return e||(e=new t(r,i,a,o,s)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=s,e.suffix=i,e.outputLen=a,e.enableXOF=o,e.destroyed=this.destroyed,e}};pt.Keccak=E0;var Us=n((t,e,r)=>(0,_0.wrapConstructor)(()=>new E0(e,t,r)),"gen");pt.sha3_224=Us(6,144,224/8);pt.sha3_256=Us(6,136,256/8);pt.sha3_384=Us(6,104,384/8);pt.sha3_512=Us(6,72,512/8);pt.keccak_224=Us(1,144,224/8);pt.keccak_256=Us(1,136,256/8);pt.keccak_384=Us(1,104,384/8);pt.keccak_512=Us(1,72,512/8);var fM=n((t,e,r)=>(0,_0.wrapXOFConstructorWithOpts)((i={})=>new E0(e,t,i.dkLen===void 0?r:i.dkLen,!0)),"genShake");pt.shake128=fM(31,168,128/8);pt.shake256=fM(31,136,256/8)});var Ob=v(_r=>{"use strict";Object.defineProperty(_r,"__esModule",{value:!0});_r.mapToCurveSimpleSWU=_r.SWUFpSqrtRatio=_r.weierstrass=_r.weierstrassPoints=_r.DER=void 0;var $1=_s(),Ar=xa(),tn=xa(),Cb=by();function kY(t){let e=(0,Cb.validateBasic)(t);Ar.validateObject(e,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:r,Fp:i,a}=e;if(r){if(!i.eql(a,i.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof r!="object"||typeof r.beta!="bigint"||typeof r.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...e})}n(kY,"validatePointOpts");var{bytesToNumberBE:EY,hexToBytes:PY}=Ar;_r.DER={Err:class extends Error{static{n(this,"DERErr")}constructor(e=""){super(e)}},_parseInt(t){let{Err:e}=_r.DER;if(t.length<2||t[0]!==2)throw new e("Invalid signature integer tag");let r=t[1],i=t.subarray(2,r+2);if(!r||i.length!==r)throw new e("Invalid signature integer: wrong length");if(i[0]&128)throw new e("Invalid signature integer: negative");if(i[0]===0&&!(i[1]&128))throw new e("Invalid signature integer: unnecessary leading zero");return{d:EY(i),l:t.subarray(r+2)}},toSig(t){let{Err:e}=_r.DER,r=typeof t=="string"?PY(t):t;if(!(r instanceof Uint8Array))throw new Error("ui8a expected");let i=r.length;if(i<2||r[0]!=48)throw new e("Invalid signature tag");if(r[1]!==i-2)throw new e("Invalid signature: incorrect length");let{d:a,l:s}=_r.DER._parseInt(r.subarray(2)),{d:o,l}=_r.DER._parseInt(s);if(l.length)throw new e("Invalid signature: left bytes after parsing");return{r:a,s:o}},hexFromSig(t){let e=n(u=>Number.parseInt(u[0],16)&8?"00"+u:u,"slice"),r=n(u=>{let c=u.toString(16);return c.length&1?`0${c}`:c},"h"),i=e(r(t.s)),a=e(r(t.r)),s=i.length/2,o=a.length/2,l=r(s),d=r(o);return`30${r(o+s+4)}02${d}${a}02${l}${i}`}};var Ma=BigInt(0),Bt=BigInt(1),js=BigInt(2),Y8=BigInt(3),gM=BigInt(4);function yM(t){let e=kY(t),{Fp:r}=e,i=e.toBytes||((I,k,z)=>{let R=k.toAffine();return Ar.concatBytes(Uint8Array.from([4]),r.toBytes(R.x),r.toBytes(R.y))}),a=e.fromBytes||(I=>{let k=I.subarray(1),z=r.fromBytes(k.subarray(0,r.BYTES)),R=r.fromBytes(k.subarray(r.BYTES,2*r.BYTES));return{x:z,y:R}});function s(I){let{a:k,b:z}=e,R=r.sqr(I),F=r.mul(R,I);return r.add(r.add(F,r.mul(I,k)),z)}if(n(s,"weierstrassEquation"),!r.eql(r.sqr(e.Gy),s(e.Gx)))throw new Error("bad generator point: equation left != right");function o(I){return typeof I=="bigint"&&Mar.eql(B,r.ZERO),"is0");return F(z)&&F(R)?p.ZERO:new p(z,R,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(k){let z=r.invertBatch(k.map(R=>R.pz));return k.map((R,F)=>R.toAffine(z[F])).map(p.fromAffine)}static fromHex(k){let z=p.fromAffine(a((0,tn.ensureBytes)("pointHex",k)));return z.assertValidity(),z}static fromPrivateKey(k){return p.BASE.multiply(d(k))}_setWindowSize(k){this._WINDOW_SIZE=k,u.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:k,y:z}=this.toAffine();if(!r.isValid(k)||!r.isValid(z))throw new Error("bad point: x or y not FE");let R=r.sqr(z),F=s(k);if(!r.eql(R,F))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:k}=this.toAffine();if(r.isOdd)return!r.isOdd(k);throw new Error("Field doesn't support isOdd")}equals(k){c(k);let{px:z,py:R,pz:F}=this,{px:B,py:C,pz:W}=k,L=r.eql(r.mul(z,W),r.mul(B,F)),H=r.eql(r.mul(R,W),r.mul(C,F));return L&&H}negate(){return new p(this.px,r.neg(this.py),this.pz)}double(){let{a:k,b:z}=e,R=r.mul(z,Y8),{px:F,py:B,pz:C}=this,W=r.ZERO,L=r.ZERO,H=r.ZERO,Z=r.mul(F,F),se=r.mul(B,B),le=r.mul(C,C),Q=r.mul(F,B);return Q=r.add(Q,Q),H=r.mul(F,C),H=r.add(H,H),W=r.mul(k,H),L=r.mul(R,le),L=r.add(W,L),W=r.sub(se,L),L=r.add(se,L),L=r.mul(W,L),W=r.mul(Q,W),H=r.mul(R,H),le=r.mul(k,le),Q=r.sub(Z,le),Q=r.mul(k,Q),Q=r.add(Q,H),H=r.add(Z,Z),Z=r.add(H,Z),Z=r.add(Z,le),Z=r.mul(Z,Q),L=r.add(L,Z),le=r.mul(B,C),le=r.add(le,le),Z=r.mul(le,Q),W=r.sub(W,Z),H=r.mul(le,se),H=r.add(H,H),H=r.add(H,H),new p(W,L,H)}add(k){c(k);let{px:z,py:R,pz:F}=this,{px:B,py:C,pz:W}=k,L=r.ZERO,H=r.ZERO,Z=r.ZERO,se=e.a,le=r.mul(e.b,Y8),Q=r.mul(z,B),pe=r.mul(R,C),M=r.mul(F,W),m=r.add(z,R),g=r.add(B,C);m=r.mul(m,g),g=r.add(Q,pe),m=r.sub(m,g),g=r.add(z,F);let y=r.add(B,W);return g=r.mul(g,y),y=r.add(Q,M),g=r.sub(g,y),y=r.add(R,F),L=r.add(C,W),y=r.mul(y,L),L=r.add(pe,M),y=r.sub(y,L),Z=r.mul(se,g),L=r.mul(le,M),Z=r.add(L,Z),L=r.sub(pe,Z),Z=r.add(pe,Z),H=r.mul(L,Z),pe=r.add(Q,Q),pe=r.add(pe,Q),M=r.mul(se,M),g=r.mul(le,g),pe=r.add(pe,M),M=r.sub(Q,M),M=r.mul(se,M),g=r.add(g,M),Q=r.mul(pe,g),H=r.add(H,Q),Q=r.mul(y,g),L=r.mul(m,L),L=r.sub(L,Q),Q=r.mul(m,pe),Z=r.mul(y,Z),Z=r.add(Z,Q),new p(L,H,Z)}subtract(k){return this.add(k.negate())}is0(){return this.equals(p.ZERO)}wNAF(k){return E.wNAFCached(this,u,k,z=>{let R=r.invertBatch(z.map(F=>F.pz));return z.map((F,B)=>F.toAffine(R[B])).map(p.fromAffine)})}multiplyUnsafe(k){let z=p.ZERO;if(k===Ma)return z;if(l(k),k===Bt)return this;let{endo:R}=e;if(!R)return E.unsafeLadder(this,k);let{k1neg:F,k1:B,k2neg:C,k2:W}=R.splitScalar(k),L=z,H=z,Z=this;for(;B>Ma||W>Ma;)B&Bt&&(L=L.add(Z)),W&Bt&&(H=H.add(Z)),Z=Z.double(),B>>=Bt,W>>=Bt;return F&&(L=L.negate()),C&&(H=H.negate()),H=new p(r.mul(H.px,R.beta),H.py,H.pz),L.add(H)}multiply(k){l(k);let z=k,R,F,{endo:B}=e;if(B){let{k1neg:C,k1:W,k2neg:L,k2:H}=B.splitScalar(z),{p:Z,f:se}=this.wNAF(W),{p:le,f:Q}=this.wNAF(H);Z=E.constTimeNegate(C,Z),le=E.constTimeNegate(L,le),le=new p(r.mul(le.px,B.beta),le.py,le.pz),R=Z.add(le),F=se.add(Q)}else{let{p:C,f:W}=this.wNAF(z);R=C,F=W}return p.normalizeZ([R,F])[0]}multiplyAndAddUnsafe(k,z,R){let F=p.BASE,B=n((W,L)=>L===Ma||L===Bt||!W.equals(F)?W.multiplyUnsafe(L):W.multiply(L),"mul"),C=B(this,z).add(B(k,R));return C.is0()?void 0:C}toAffine(k){let{px:z,py:R,pz:F}=this,B=this.is0();k==null&&(k=B?r.ONE:r.inv(F));let C=r.mul(z,k),W=r.mul(R,k),L=r.mul(F,k);if(B)return{x:r.ZERO,y:r.ZERO};if(!r.eql(L,r.ONE))throw new Error("invZ was invalid");return{x:C,y:W}}isTorsionFree(){let{h:k,isTorsionFree:z}=e;if(k===Bt)return!0;if(z)return z(p,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:k,clearCofactor:z}=e;return k===Bt?this:z?z(p,this):this.multiplyUnsafe(e.h)}toRawBytes(k=!0){return this.assertValidity(),i(p,this,k)}toHex(k=!0){return Ar.bytesToHex(this.toRawBytes(k))}}p.BASE=new p(e.Gx,e.Gy,r.ONE),p.ZERO=new p(r.ZERO,r.ONE,r.ZERO);let x=e.nBitLength,E=(0,Cb.wNAF)(p,e.endo?Math.ceil(x/2):x);return{CURVE:e,ProjectivePoint:p,normPrivateKeyToScalar:d,weierstrassEquation:s,isWithinCurveOrder:o}}n(yM,"weierstrassPoints");_r.weierstrassPoints=yM;function TY(t){let e=(0,Cb.validateBasic)(t);return Ar.validateObject(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}n(TY,"validateOpts");function zY(t){let e=TY(t),{Fp:r,n:i}=e,a=r.BYTES+1,s=2*r.BYTES+1;function o(g){return MaAr.bytesToHex(Ar.numberToBytesBE(g,e.nByteLength)),"numToNByteStr");function I(g){let y=i>>Bt;return g>y}n(I,"isBiggerThanHalfOrder");function k(g){return I(g)?l(-g):g}n(k,"normalizeS");let z=n((g,y,S)=>Ar.bytesToNumberBE(g.slice(y,S)),"slcNum");class R{static{n(this,"Signature")}constructor(y,S,b){this.r=y,this.s=S,this.recovery=b,this.assertValidity()}static fromCompact(y){let S=e.nByteLength;return y=(0,tn.ensureBytes)("compactSignature",y,S*2),new R(z(y,0,S),z(y,S,2*S))}static fromDER(y){let{r:S,s:b}=_r.DER.toSig((0,tn.ensureBytes)("DER",y));return new R(S,b)}assertValidity(){if(!x(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!x(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(y){return new R(this.r,this.s,y)}recoverPublicKey(y){let{r:S,s:b,recovery:w}=this,T=H((0,tn.ensureBytes)("msgHash",y));if(w==null||![0,1,2,3].includes(w))throw new Error("recovery id invalid");let A=w===2||w===3?S+e.n:S;if(A>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let h=w&1?"03":"02",P=u.fromHex(h+E(A)),j=d(A),G=l(-T*j),$=l(b*j),Y=u.BASE.multiplyAndAddUnsafe(P,G,$);if(!Y)throw new Error("point at infinify");return Y.assertValidity(),Y}hasHighS(){return I(this.s)}normalizeS(){return this.hasHighS()?new R(this.r,l(-this.s),this.recovery):this}toDERRawBytes(){return Ar.hexToBytes(this.toDERHex())}toDERHex(){return _r.DER.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return Ar.hexToBytes(this.toCompactHex())}toCompactHex(){return E(this.r)+E(this.s)}}let F={isValidPrivateKey(g){try{return c(g),!0}catch{return!1}},normPrivateKeyToScalar:c,randomPrivateKey:()=>{let g=$1.getMinHashLength(e.n);return $1.mapHashToField(e.randomBytes(g),e.n)},precompute(g=8,y=u.BASE){return y._setWindowSize(g),y.multiply(BigInt(3)),y}};function B(g,y=!0){return u.fromPrivateKey(g).toRawBytes(y)}n(B,"getPublicKey");function C(g){let y=g instanceof Uint8Array,S=typeof g=="string",b=(y||S)&&g.length;return y?b===a||b===s:S?b===2*a||b===2*s:g instanceof u}n(C,"isProbPub");function W(g,y,S=!0){if(C(g))throw new Error("first arg must be private key");if(!C(y))throw new Error("second arg must be public key");return u.fromHex(y).multiply(c(g)).toRawBytes(S)}n(W,"getSharedSecret");let L=e.bits2int||function(g){let y=Ar.bytesToNumberBE(g),S=g.length*8-e.nBitLength;return S>0?y>>BigInt(S):y},H=e.bits2int_modN||function(g){return l(L(g))},Z=Ar.bitMask(e.nBitLength);function se(g){if(typeof g!="bigint")throw new Error("bigint expected");if(!(Ma<=g&&gde in S))throw new Error("sign() legacy options not supported");let{hash:b,randomBytes:w}=e,{lowS:T,prehash:A,extraEntropy:h}=S;T==null&&(T=!0),g=(0,tn.ensureBytes)("msgHash",g),A&&(g=(0,tn.ensureBytes)("prehashed msgHash",b(g)));let P=H(g),j=c(y),G=[se(j),se(P)];if(h!=null){let de=h===!0?w(r.BYTES):h;G.push((0,tn.ensureBytes)("extraEntropy",de))}let $=Ar.concatBytes(...G),Y=P;function oe(de){let Ne=L(de);if(!x(Ne))return;let me=d(Ne),fe=u.BASE.multiply(Ne).toAffine(),Qe=l(fe.x);if(Qe===Ma)return;let Fe=l(me*l(Y+Qe*j));if(Fe===Ma)return;let Ke=(fe.x===Qe?0:2)|Number(fe.y&Bt),wa=Fe;return T&&I(Fe)&&(wa=k(Fe),Ke^=1),new R(Qe,wa,Ke)}return n(oe,"k2sig"),{seed:$,k2sig:oe}}n(le,"prepSig");let Q={lowS:e.lowS,prehash:!1},pe={lowS:e.lowS,prehash:!1};function M(g,y,S=Q){let{seed:b,k2sig:w}=le(g,y,S),T=e;return Ar.createHmacDrbg(T.hash.outputLen,T.nByteLength,T.hmac)(b,w)}n(M,"sign"),u.BASE._setWindowSize(8);function m(g,y,S,b=pe){let w=g;if(y=(0,tn.ensureBytes)("msgHash",y),S=(0,tn.ensureBytes)("publicKey",S),"strict"in b)throw new Error("options.strict was renamed to lowS");let{lowS:T,prehash:A}=b,h,P;try{if(typeof w=="string"||w instanceof Uint8Array)try{h=R.fromDER(w)}catch(fe){if(!(fe instanceof _r.DER.Err))throw fe;h=R.fromCompact(w)}else if(typeof w=="object"&&typeof w.r=="bigint"&&typeof w.s=="bigint"){let{r:fe,s:Qe}=w;h=new R(fe,Qe)}else throw new Error("PARSE");P=u.fromHex(S)}catch(fe){if(fe.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(T&&h.hasHighS())return!1;A&&(y=e.hash(y));let{r:j,s:G}=h,$=H(y),Y=d(G),oe=l($*Y),de=l(j*Y),Ne=u.BASE.multiplyAndAddUnsafe(P,oe,de)?.toAffine();return Ne?l(Ne.x)===j:!1}return n(m,"verify"),{CURVE:e,getPublicKey:B,getSharedSecret:W,sign:M,verify:m,ProjectivePoint:u,Signature:R,utils:F}}n(zY,"weierstrass");_r.weierstrass=zY;function bM(t,e){let r=t.ORDER,i=Ma;for(let I=r-Bt;I%js===Ma;I/=js)i+=Bt;let a=i,s=js<{let z=p,R=t.pow(k,u),F=t.sqr(R);F=t.mul(F,k);let B=t.mul(I,F);B=t.pow(B,d),B=t.mul(B,R),R=t.mul(B,k),F=t.mul(B,I);let C=t.mul(F,R);B=t.pow(C,c);let W=t.eql(B,t.ONE);R=t.mul(F,x),B=t.mul(C,z),F=t.cmov(R,F,W),C=t.cmov(B,C,W);for(let L=a;L>Bt;L--){let H=L-js;H=js<{let F=t.sqr(R),B=t.mul(z,R);F=t.mul(F,B);let C=t.pow(F,I);C=t.mul(C,B);let W=t.mul(C,k),L=t.mul(t.sqr(C),R),H=t.eql(L,z),Z=t.cmov(W,C,H);return{isValid:H,value:Z}},"sqrtRatio")}return E}n(bM,"SWUFpSqrtRatio");_r.SWUFpSqrtRatio=bM;function IY(t,e){if($1.validateField(t),!t.isValid(e.A)||!t.isValid(e.B)||!t.isValid(e.Z))throw new Error("mapToCurveSimpleSWU: invalid opts");let r=bM(t,e.Z);if(!t.isOdd)throw new Error("Fp.isOdd is not implemented!");return i=>{let a,s,o,l,d,u,c,p;a=t.sqr(i),a=t.mul(a,e.Z),s=t.sqr(a),s=t.add(s,a),o=t.add(s,t.ONE),o=t.mul(o,e.B),l=t.cmov(e.Z,t.neg(s),!t.eql(s,t.ZERO)),l=t.mul(l,e.A),s=t.sqr(o),u=t.sqr(l),d=t.mul(u,e.A),s=t.add(s,d),s=t.mul(s,o),u=t.mul(u,l),d=t.mul(u,e.B),s=t.add(s,d),c=t.mul(a,o);let{isValid:x,value:E}=r(s,u);p=t.mul(a,i),p=t.mul(p,E),c=t.cmov(c,o,x),p=t.cmov(p,E,x);let I=t.isOdd(i)===t.isOdd(p);return p=t.cmov(t.neg(p),p,I),c=t.div(c,l),{x:c,y:p}}}n(IY,"mapToCurveSimpleSWU");_r.mapToCurveSimpleSWU=IY});var SM=v(ul=>{"use strict";Object.defineProperty(ul,"__esModule",{value:!0});ul.hmac=ul.HMAC=void 0;var Q8=S4(),vM=_n(),P0=class extends vM.Hash{static{n(this,"HMAC")}constructor(e,r){super(),this.finished=!1,this.destroyed=!1,(0,Q8.hash)(e);let i=(0,vM.toBytes)(r);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let a=this.blockLen,s=new Uint8Array(a);s.set(i.length>a?e.create().update(i).digest():i);for(let o=0;onew P0(t,e).update(r).digest(),"hmac");ul.hmac=MY;ul.hmac.create=(t,e)=>new P0(t,e)});var AM=v(G1=>{"use strict";Object.defineProperty(G1,"__esModule",{value:!0});G1.createCurve=G1.getHash=void 0;var DY=SM(),wM=_n(),RY=Ob();function xM(t){return{hash:t,hmac:(e,...r)=>(0,DY.hmac)(t,e,(0,wM.concatBytes)(...r)),randomBytes:wM.randomBytes}}n(xM,"getHash");G1.getHash=xM;function BY(t,e){let r=n(i=>(0,RY.weierstrass)({...t,...xM(i)}),"create");return Object.freeze({...r(e),create:r})}n(BY,"createCurve");G1.createCurve=BY});var BM=v(wi=>{"use strict";Object.defineProperty(wi,"__esModule",{value:!0});wi.encodeToCurve=wi.hashToCurve=wi.schnorr=wi.secp256k1=void 0;var X8=By(),CY=_n(),Rr=_s(),OY=Ob(),ii=xa(),EM=xy(),NY=AM(),i3=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),e3=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),PM=BigInt(1),t3=BigInt(2),_M=n((t,e)=>(t+e/t3)/e,"divNearest");function TM(t){let e=i3,r=BigInt(3),i=BigInt(6),a=BigInt(11),s=BigInt(22),o=BigInt(23),l=BigInt(44),d=BigInt(88),u=t*t*t%e,c=u*u*t%e,p=(0,Rr.pow2)(c,r,e)*c%e,x=(0,Rr.pow2)(p,r,e)*c%e,E=(0,Rr.pow2)(x,t3,e)*u%e,I=(0,Rr.pow2)(E,a,e)*E%e,k=(0,Rr.pow2)(I,s,e)*I%e,z=(0,Rr.pow2)(k,l,e)*k%e,R=(0,Rr.pow2)(z,d,e)*z%e,F=(0,Rr.pow2)(R,l,e)*k%e,B=(0,Rr.pow2)(F,r,e)*c%e,C=(0,Rr.pow2)(B,o,e)*I%e,W=(0,Rr.pow2)(C,i,e)*u%e,L=(0,Rr.pow2)(W,t3,e);if(!Hs.eql(Hs.sqr(L),t))throw new Error("Cannot find square root");return L}n(TM,"sqrtMod");var Hs=(0,Rr.Field)(i3,void 0,void 0,{sqrt:TM});wi.secp256k1=(0,NY.createCurve)({a:BigInt(0),b:BigInt(7),Fp:Hs,n:e3,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{let e=e3,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),i=-PM*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),a=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),s=r,o=BigInt("0x100000000000000000000000000000000"),l=_M(s*t,e),d=_M(-i*t,e),u=(0,Rr.mod)(t-l*r-d*a,e),c=(0,Rr.mod)(-l*i-d*s,e),p=u>o,x=c>o;if(p&&(u=e-u),x&&(c=e-c),u>o||c>o)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:p,k1:u,k2neg:x,k2:c}}}},X8.sha256);var a3=BigInt(0),zM=n(t=>typeof t=="bigint"&&a3typeof t=="bigint"&&a3a.charCodeAt(0)));r=(0,ii.concatBytes)(i,i),kM[t]=r}return(0,X8.sha256)((0,ii.concatBytes)(r,...e))}n(r3,"taggedHash");var Vb=n(t=>t.toRawBytes(!0).slice(1),"pointToBytes"),qb=n(t=>(0,ii.numberToBytesBE)(t,32),"numTo32b"),Nb=n(t=>(0,Rr.mod)(t,i3),"modP"),T0=n(t=>(0,Rr.mod)(t,e3),"modN"),Fb=wi.secp256k1.ProjectivePoint,WY=n((t,e,r)=>Fb.BASE.multiplyAndAddUnsafe(t,e,r),"GmulAdd");function Wb(t){let e=wi.secp256k1.utils.normPrivateKeyToScalar(t),r=Fb.fromPrivateKey(e);return{scalar:r.hasEvenY()?e:T0(-e),bytes:Vb(r)}}n(Wb,"schnorrGetExtPubKey");function IM(t){if(!zM(t))throw new Error("bad x: need 0 < x < p");let e=Nb(t*t),r=Nb(e*t+BigInt(7)),i=TM(r);i%t3!==a3&&(i=Nb(-i));let a=new Fb(t,i,PM);return a.assertValidity(),a}n(IM,"lift_x");function MM(...t){return T0((0,ii.bytesToNumberBE)(r3("BIP0340/challenge",...t)))}n(MM,"challenge");function VY(t){return Wb(t).bytes}n(VY,"schnorrGetPublicKey");function FY(t,e,r=(0,CY.randomBytes)(32)){let i=(0,ii.ensureBytes)("message",t),{bytes:a,scalar:s}=Wb(e),o=(0,ii.ensureBytes)("auxRand",r,32),l=qb(s^(0,ii.bytesToNumberBE)(r3("BIP0340/aux",o))),d=r3("BIP0340/nonce",l,a,i),u=T0((0,ii.bytesToNumberBE)(d));if(u===a3)throw new Error("sign failed: k is zero");let{bytes:c,scalar:p}=Wb(u),x=MM(c,a,i),E=new Uint8Array(64);if(E.set(c,0),E.set(qb(T0(p+x*s)),32),!DM(E,i,a))throw new Error("sign: Invalid signature produced");return E}n(FY,"schnorrSign");function DM(t,e,r){let i=(0,ii.ensureBytes)("signature",t,64),a=(0,ii.ensureBytes)("message",e),s=(0,ii.ensureBytes)("publicKey",r,32);try{let o=IM((0,ii.bytesToNumberBE)(s)),l=(0,ii.bytesToNumberBE)(i.subarray(0,32));if(!zM(l))return!1;let d=(0,ii.bytesToNumberBE)(i.subarray(32,64));if(!qY(d))return!1;let u=MM(qb(l),Vb(o),a),c=WY(o,d,T0(-u));return!(!c||!c.hasEvenY()||c.toAffine().x!==l)}catch{return!1}}n(DM,"schnorrVerify");wi.schnorr=(()=>({getPublicKey:VY,sign:FY,verify:DM,utils:{randomPrivateKey:wi.secp256k1.utils.randomPrivateKey,lift_x:IM,pointToBytes:Vb,numberToBytesBE:ii.numberToBytesBE,bytesToNumberBE:ii.bytesToNumberBE,taggedHash:r3,mod:Rr.mod}}))();var KY=(()=>(0,EM.isogenyMap)(Hs,[["0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7","0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581","0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262","0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c"],["0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b","0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14","0x0000000000000000000000000000000000000000000000000000000000000001"],["0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c","0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3","0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931","0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84"],["0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b","0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573","0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f","0x0000000000000000000000000000000000000000000000000000000000000001"]].map(t=>t.map(e=>BigInt(e)))))(),LY=(()=>(0,OY.mapToCurveSimpleSWU)(Hs,{A:BigInt("0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533"),B:BigInt("1771"),Z:Hs.create(BigInt("-11"))}))(),RM=(()=>(0,EM.createHasher)(wi.secp256k1.ProjectivePoint,t=>{let{x:e,y:r}=LY(Hs.create(t[0]));return KY(e,r)},{DST:"secp256k1_XMD:SHA-256_SSWU_RO_",encodeDST:"secp256k1_XMD:SHA-256_SSWU_NU_",p:Hs.ORDER,m:1,k:128,expand:"xmd",hash:X8.sha256}))();wi.hashToCurve=(()=>RM.hashToCurve)();wi.encodeToCurve=(()=>RM.encodeToCurve)()});var ta=v(ie=>{"use strict";var ye=require("buffer"),sd=WE(),UY=Iy(),jY=Dy(),CM=By(),Kb=QE(),dD=XE(),ev=sP(),HY=require("tty"),$Y=require("util"),GY=require("path"),ZY=require("http"),tv=require("https"),f=fP(),JY=VP(),YY=Q7(),QY=Bz(),XY=oM(),OM=hM(),kv=BM();function on(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}n(on,"_interopDefaultCompat");function uD(t){if(t&&typeof t=="object"&&"default"in t)return t;var e=Object.create(null);return t&&Object.keys(t).forEach(function(r){if(r!=="default"){var i=Object.getOwnPropertyDescriptor(t,r);Object.defineProperty(e,r,i.get?i:{enumerable:!0,get:function(){return t[r]}})}}),e.default=t,Object.freeze(e)}n(uD,"_interopNamespaceCompat");var NM=on(UY),$r=on(jY),D=uD(dD),eQ=on(HY),cD=on($Y),tQ=on(GY),rQ=on(ZY),iQ=on(tv),aQ=on(JY),nQ=uD(YY),sQ=on(QY),oQ=on(XY),lQ=sd.ed25519.utils.randomPrivateKey,qM=n(()=>{let t=sd.ed25519.utils.randomPrivateKey(),e=p3(t),r=new Uint8Array(64);return r.set(t),r.set(e,32),{publicKey:e,secretKey:r}},"generateKeypair"),p3=sd.ed25519.getPublicKey;function WM(t){try{return sd.ed25519.ExtendedPoint.fromHex(t),!0}catch{return!1}}n(WM,"isOnCurve");var Ev=n((t,e)=>sd.ed25519.sign(t,e.slice(0,32)),"sign"),dQ=sd.ed25519.verify,Be=n(t=>ye.Buffer.isBuffer(t)?t:t instanceof Uint8Array?ye.Buffer.from(t.buffer,t.byteOffset,t.byteLength):ye.Buffer.from(t),"toBuffer"),B0=class{static{n(this,"Struct")}constructor(e){Object.assign(this,e)}encode(){return ye.Buffer.from(Kb.serialize(D0,this))}static decode(e){return Kb.deserialize(D0,this,e)}static decodeUnchecked(e){return Kb.deserializeUnchecked(D0,this,e)}},rv=class extends B0{static{n(this,"Enum")}constructor(e){if(super(e),this.enum="",Object.keys(e).length!==1)throw new Error("Enum can only take single value");Object.keys(e).map(r=>{this.enum=r})}},D0=new Map,pD,mD,fD=32,Wi=32;function uQ(t){return t._bn!==void 0}n(uQ,"isPublicKeyData");var VM=1;mD=Symbol.toStringTag;var re=class t extends B0{static{n(this,"PublicKey")}constructor(e){if(super({}),this._bn=void 0,uQ(e))this._bn=e._bn;else{if(typeof e=="string"){let r=$r.default.decode(e);if(r.length!=Wi)throw new Error("Invalid public key input");this._bn=new NM.default(r)}else this._bn=new NM.default(e);if(this._bn.byteLength()>Wi)throw new Error("Invalid public key input")}}static unique(){let e=new t(VM);return VM+=1,new t(e.toBuffer())}equals(e){return this._bn.eq(e._bn)}toBase58(){return $r.default.encode(this.toBytes())}toJSON(){return this.toBase58()}toBytes(){let e=this.toBuffer();return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}toBuffer(){let e=this._bn.toArrayLike(ye.Buffer);if(e.length===Wi)return e;let r=ye.Buffer.alloc(32);return e.copy(r,32-e.length),r}get[mD](){return`PublicKey(${this.toString()})`}toString(){return this.toBase58()}static async createWithSeed(e,r,i){let a=ye.Buffer.concat([e.toBuffer(),ye.Buffer.from(r),i.toBuffer()]),s=CM.sha256(a);return new t(s)}static createProgramAddressSync(e,r){let i=ye.Buffer.alloc(0);e.forEach(function(s){if(s.length>fD)throw new TypeError("Max seed length exceeded");i=ye.Buffer.concat([i,Be(s)])}),i=ye.Buffer.concat([i,r.toBuffer(),ye.Buffer.from("ProgramDerivedAddress")]);let a=CM.sha256(i);if(WM(a))throw new Error("Invalid seeds, address must fall off the curve");return new t(a)}static async createProgramAddress(e,r){return this.createProgramAddressSync(e,r)}static findProgramAddressSync(e,r){let i=255,a;for(;i!=0;){try{let s=e.concat(ye.Buffer.from([i]));a=this.createProgramAddressSync(s,r)}catch(s){if(s instanceof TypeError)throw s;i--;continue}return[a,i]}throw new Error("Unable to find a viable program address nonce")}static async findProgramAddress(e,r){return this.findProgramAddressSync(e,r)}static isOnCurve(e){let r=new t(e);return WM(r.toBytes())}};pD=re;re.default=new pD("11111111111111111111111111111111");D0.set(re,{kind:"struct",fields:[["_bn","u256"]]});var iv=class{static{n(this,"Account")}constructor(e){if(this._publicKey=void 0,this._secretKey=void 0,e){let r=Be(e);if(e.length!==64)throw new Error("bad secret key size");this._publicKey=r.slice(32,64),this._secretKey=r.slice(0,32)}else this._secretKey=Be(lQ()),this._publicKey=Be(p3(this._secretKey))}get publicKey(){return new re(this._publicKey)}get secretKey(){return ye.Buffer.concat([this._secretKey,this._publicKey],64)}},cQ=new re("BPFLoader1111111111111111111111111111111111"),Gs=1280-40-8,A3=127,J1=64,C0=class extends Error{static{n(this,"TransactionExpiredBlockheightExceededError")}constructor(e){super(`Signature ${e} has expired: block height exceeded.`),this.signature=void 0,this.signature=e}};Object.defineProperty(C0.prototype,"name",{value:"TransactionExpiredBlockheightExceededError"});var O0=class extends Error{static{n(this,"TransactionExpiredTimeoutError")}constructor(e,r){super(`Transaction was not confirmed in ${r.toFixed(2)} seconds. It is unknown if it succeeded or failed. Check signature ${e} using the Solana Explorer or CLI tools.`),this.signature=void 0,this.signature=e}};Object.defineProperty(O0.prototype,"name",{value:"TransactionExpiredTimeoutError"});var $s=class extends Error{static{n(this,"TransactionExpiredNonceInvalidError")}constructor(e){super(`Signature ${e} has expired: the nonce is no longer valid.`),this.signature=void 0,this.signature=e}};Object.defineProperty($s.prototype,"name",{value:"TransactionExpiredNonceInvalidError"});var ml=class{static{n(this,"MessageAccountKeys")}constructor(e,r){this.staticAccountKeys=void 0,this.accountKeysFromLookups=void 0,this.staticAccountKeys=e,this.accountKeysFromLookups=r}keySegments(){let e=[this.staticAccountKeys];return this.accountKeysFromLookups&&(e.push(this.accountKeysFromLookups.writable),e.push(this.accountKeysFromLookups.readonly)),e}get(e){for(let r of this.keySegments()){if(e255+1)throw new Error("Account index overflow encountered during compilation");let i=new Map;this.keySegments().flat().forEach((s,o)=>{i.set(s.toBase58(),o)});let a=n(s=>{let o=i.get(s.toBase58());if(o===void 0)throw new Error("Encountered an unknown instruction account key during compilation");return o},"findKeyIndex");return e.map(s=>({programIdIndex:a(s.programId),accountKeyIndexes:s.keys.map(o=>a(o.pubkey)),data:s.data}))}},We=n((t="publicKey")=>D.blob(32,t),"publicKey"),pQ=n((t="signature")=>D.blob(64,t),"signature"),pl=n((t="string")=>{let e=D.struct([D.u32("length"),D.u32("lengthPadding"),D.blob(D.offset(D.u32(),-8),"chars")],t),r=e.decode.bind(e),i=e.encode.bind(e),a=e;return a.decode=(s,o)=>r(s,o).chars.toString(),a.encode=(s,o,l)=>{let d={chars:ye.Buffer.from(s,"utf8")};return i(d,o,l)},a.alloc=s=>D.u32().span+D.u32().span+ye.Buffer.from(s,"utf8").length,a},"rustString"),mQ=n((t="authorized")=>D.struct([We("staker"),We("withdrawer")],t),"authorized"),fQ=n((t="lockup")=>D.struct([D.ns64("unixTimestamp"),D.ns64("epoch"),We("custodian")],t),"lockup"),hQ=n((t="voteInit")=>D.struct([We("nodePubkey"),We("authorizedVoter"),We("authorizedWithdrawer"),D.u8("commission")],t),"voteInit"),gQ=n((t="voteAuthorizeWithSeedArgs")=>D.struct([D.u32("voteAuthorizationType"),We("currentAuthorityDerivedKeyOwnerPubkey"),pl("currentAuthorityDerivedKeySeed"),We("newAuthorized")],t),"voteAuthorizeWithSeedArgs");function hD(t,e){let r=n(a=>{if(a.span>=0)return a.span;if(typeof a.alloc=="function")return a.alloc(e[a.property]);if("count"in a&&"elementLayout"in a){let s=e[a.property];if(Array.isArray(s))return s.length*r(a.elementLayout)}else if("fields"in a)return hD({layout:a},e[a.property]);return 0},"getItemAlloc"),i=0;return t.layout.fields.forEach(a=>{i+=r(a)}),i}n(hD,"getAlloc");function Ai(t){let e=0,r=0;for(;;){let i=t.shift();if(e|=(i&127)<>=7,r==0){t.push(i);break}else i|=128,t.push(i)}}n(qi,"encodeLength");function He(t,e){if(!t)throw new Error(e||"Assertion failed")}n(He,"assert");var m3=class t{static{n(this,"CompiledKeys")}constructor(e,r){this.payer=void 0,this.keyMetaMap=void 0,this.payer=e,this.keyMetaMap=r}static compile(e,r){let i=new Map,a=n(o=>{let l=o.toBase58(),d=i.get(l);return d===void 0&&(d={isSigner:!1,isWritable:!1,isInvoked:!1},i.set(l,d)),d},"getOrInsertDefault"),s=a(r);s.isSigner=!0,s.isWritable=!0;for(let o of e){a(o.programId).isInvoked=!0;for(let l of o.keys){let d=a(l.pubkey);d.isSigner||=l.isSigner,d.isWritable||=l.isWritable}}return new t(r,i)}getMessageComponents(){let e=[...this.keyMetaMap.entries()];He(e.length<=256,"Max static account keys length exceeded");let r=e.filter(([,d])=>d.isSigner&&d.isWritable),i=e.filter(([,d])=>d.isSigner&&!d.isWritable),a=e.filter(([,d])=>!d.isSigner&&d.isWritable),s=e.filter(([,d])=>!d.isSigner&&!d.isWritable),o={numRequiredSignatures:r.length+i.length,numReadonlySignedAccounts:i.length,numReadonlyUnsignedAccounts:s.length};{He(r.length>0,"Expected at least one writable signer key");let[d]=r[0];He(d===this.payer.toBase58(),"Expected first writable signer key to be the fee payer")}let l=[...r.map(([d])=>new re(d)),...i.map(([d])=>new re(d)),...a.map(([d])=>new re(d)),...s.map(([d])=>new re(d))];return[o,l]}extractTableLookup(e){let[r,i]=this.drainKeysFoundInLookupTable(e.state.addresses,o=>!o.isSigner&&!o.isInvoked&&o.isWritable),[a,s]=this.drainKeysFoundInLookupTable(e.state.addresses,o=>!o.isSigner&&!o.isInvoked&&!o.isWritable);if(!(r.length===0&&a.length===0))return[{accountKey:e.key,writableIndexes:r,readonlyIndexes:a},{writable:i,readonly:s}]}drainKeysFoundInLookupTable(e,r){let i=new Array,a=new Array;for(let[s,o]of this.keyMetaMap.entries())if(r(o)){let l=new re(s),d=e.findIndex(u=>u.equals(l));d>=0&&(He(d<256,"Max lookup table index exceeded"),i.push(d),a.push(l),this.keyMetaMap.delete(s))}return[i,a]}},sn=class t{static{n(this,"Message")}constructor(e){this.header=void 0,this.accountKeys=void 0,this.recentBlockhash=void 0,this.instructions=void 0,this.indexToProgramIds=new Map,this.header=e.header,this.accountKeys=e.accountKeys.map(r=>new re(r)),this.recentBlockhash=e.recentBlockhash,this.instructions=e.instructions,this.instructions.forEach(r=>this.indexToProgramIds.set(r.programIdIndex,this.accountKeys[r.programIdIndex]))}get version(){return"legacy"}get staticAccountKeys(){return this.accountKeys}get compiledInstructions(){return this.instructions.map(e=>({programIdIndex:e.programIdIndex,accountKeyIndexes:e.accounts,data:$r.default.decode(e.data)}))}get addressTableLookups(){return[]}getAccountKeys(){return new ml(this.staticAccountKeys)}static compile(e){let r=m3.compile(e.instructions,e.payerKey),[i,a]=r.getMessageComponents(),o=new ml(a).compileInstructions(e.instructions).map(l=>({programIdIndex:l.programIdIndex,accounts:l.accountKeyIndexes,data:$r.default.encode(l.data)}));return new t({header:i,accountKeys:a,recentBlockhash:e.recentBlockhash,instructions:o})}isAccountSigner(e){return e=this.header.numRequiredSignatures){let i=e-r,s=this.accountKeys.length-r-this.header.numReadonlyUnsignedAccounts;return i!this.isProgramId(r))}serialize(){let e=this.accountKeys.length,r=[];qi(r,e);let i=this.instructions.map(p=>{let{accounts:x,programIdIndex:E}=p,I=Array.from($r.default.decode(p.data)),k=[];qi(k,x.length);let z=[];return qi(z,I.length),{programIdIndex:E,keyIndicesCount:ye.Buffer.from(k),keyIndices:x,dataLength:ye.Buffer.from(z),data:I}}),a=[];qi(a,i.length);let s=ye.Buffer.alloc(Gs);ye.Buffer.from(a).copy(s);let o=a.length;i.forEach(p=>{let E=D.struct([D.u8("programIdIndex"),D.blob(p.keyIndicesCount.length,"keyIndicesCount"),D.seq(D.u8("keyIndex"),p.keyIndices.length,"keyIndices"),D.blob(p.dataLength.length,"dataLength"),D.seq(D.u8("userdatum"),p.data.length,"data")]).encode(p,s,o);o+=E}),s=s.slice(0,o);let l=D.struct([D.blob(1,"numRequiredSignatures"),D.blob(1,"numReadonlySignedAccounts"),D.blob(1,"numReadonlyUnsignedAccounts"),D.blob(r.length,"keyCount"),D.seq(We("key"),e,"keys"),We("recentBlockhash")]),d={numRequiredSignatures:ye.Buffer.from([this.header.numRequiredSignatures]),numReadonlySignedAccounts:ye.Buffer.from([this.header.numReadonlySignedAccounts]),numReadonlyUnsignedAccounts:ye.Buffer.from([this.header.numReadonlyUnsignedAccounts]),keyCount:ye.Buffer.from(r),keys:this.accountKeys.map(p=>Be(p.toBytes())),recentBlockhash:$r.default.decode(this.recentBlockhash)},u=ye.Buffer.alloc(2048),c=l.encode(d,u);return s.copy(u,c),u.slice(0,c+s.length)}static from(e){let r=[...e],i=r.shift();if(i!==(i&A3))throw new Error("Versioned messages must be deserialized with VersionedMessage.deserialize()");let a=r.shift(),s=r.shift(),o=Ai(r),l=[];for(let x=0;x0)throw new Error("Failed to get account keys because address table lookups were not resolved");return new ml(this.staticAccountKeys,r)}isAccountSigner(e){return e=i){let a=e-i,s=this.addressTableLookups.reduce((o,l)=>o+l.writableIndexes.length,0);return a=this.header.numRequiredSignatures){let a=e-r,o=i-r-this.header.numReadonlyUnsignedAccounts;return as.key.equals(i.accountKey));if(!a)throw new Error(`Failed to find address lookup table account for table key ${i.accountKey.toBase58()}`);for(let s of i.writableIndexes)if(sc.toBytes()),recentBlockhash:$r.default.decode(this.recentBlockhash),instructionsLength:new Uint8Array(i),serializedInstructions:r,addressTableLookupsLength:new Uint8Array(s),serializedAddressTableLookups:a},l);return l.slice(0,u)}serializeInstructions(){let e=0,r=new Uint8Array(Gs);for(let i of this.compiledInstructions){let a=Array();qi(a,i.accountKeyIndexes.length);let s=Array();qi(s,i.data.length);let o=D.struct([D.u8("programIdIndex"),D.blob(a.length,"encodedAccountKeyIndexesLength"),D.seq(D.u8(),i.accountKeyIndexes.length,"accountKeyIndexes"),D.blob(s.length,"encodedDataLength"),D.blob(i.data.length,"data")]);e+=o.encode({programIdIndex:i.programIdIndex,encodedAccountKeyIndexesLength:new Uint8Array(a),accountKeyIndexes:i.accountKeyIndexes,encodedDataLength:new Uint8Array(s),data:i.data},r,e)}return r.slice(0,e)}serializeAddressTableLookups(){let e=0,r=new Uint8Array(Gs);for(let i of this.addressTableLookups){let a=Array();qi(a,i.writableIndexes.length);let s=Array();qi(s,i.readonlyIndexes.length);let o=D.struct([We("accountKey"),D.blob(a.length,"encodedWritableIndexesLength"),D.seq(D.u8(),i.writableIndexes.length,"writableIndexes"),D.blob(s.length,"encodedReadonlyIndexesLength"),D.seq(D.u8(),i.readonlyIndexes.length,"readonlyIndexes")]);e+=o.encode({accountKey:i.accountKey.toBytes(),encodedWritableIndexesLength:new Uint8Array(a),writableIndexes:i.writableIndexes,encodedReadonlyIndexesLength:new Uint8Array(s),readonlyIndexes:i.readonlyIndexes},r,e)}return r.slice(0,e)}static deserialize(e){let r=[...e],i=r.shift(),a=i&A3;He(i!==a,"Expected versioned message but received legacy message");let s=a;He(s===0,`Expected versioned message with version 0 but found version ${s}`);let o={numRequiredSignatures:r.shift(),numReadonlySignedAccounts:r.shift(),numReadonlyUnsignedAccounts:r.shift()},l=[],d=Ai(r);for(let I=0;I{let e=Pv.deserializeMessageVersion(t);if(e==="legacy")return sn.from(t);if(e===0)return Y1.deserialize(t);throw new Error(`Transaction message version ${e} deserialization is not supported`)}},Ln=function(t){return t[t.BLOCKHEIGHT_EXCEEDED=0]="BLOCKHEIGHT_EXCEEDED",t[t.PROCESSED=1]="PROCESSED",t[t.TIMED_OUT=2]="TIMED_OUT",t[t.NONCE_INVALID=3]="NONCE_INVALID",t}({}),yQ=ye.Buffer.alloc(J1).fill(0),et=class{static{n(this,"TransactionInstruction")}constructor(e){this.keys=void 0,this.programId=void 0,this.data=ye.Buffer.alloc(0),this.programId=e.programId,this.keys=e.keys,e.data&&(this.data=e.data)}toJSON(){return{keys:this.keys.map(({pubkey:e,isSigner:r,isWritable:i})=>({pubkey:e.toJSON(),isSigner:r,isWritable:i})),programId:this.programId.toJSON(),data:[...this.data]}}},Xe=class t{static{n(this,"Transaction")}get signature(){return this.signatures.length>0?this.signatures[0].signature:null}constructor(e){if(this.signatures=[],this.feePayer=void 0,this.instructions=[],this.recentBlockhash=void 0,this.lastValidBlockHeight=void 0,this.nonceInfo=void 0,this.minNonceContextSlot=void 0,this._message=void 0,this._json=void 0,!!e)if(e.feePayer&&(this.feePayer=e.feePayer),e.signatures&&(this.signatures=e.signatures),Object.prototype.hasOwnProperty.call(e,"nonceInfo")){let{minContextSlot:r,nonceInfo:i}=e;this.minNonceContextSlot=r,this.nonceInfo=i}else if(Object.prototype.hasOwnProperty.call(e,"lastValidBlockHeight")){let{blockhash:r,lastValidBlockHeight:i}=e;this.recentBlockhash=r,this.lastValidBlockHeight=i}else{let{recentBlockhash:r,nonceInfo:i}=e;i&&(this.nonceInfo=i),this.recentBlockhash=r}}toJSON(){return{recentBlockhash:this.recentBlockhash||null,feePayer:this.feePayer?this.feePayer.toJSON():null,nonceInfo:this.nonceInfo?{nonce:this.nonceInfo.nonce,nonceInstruction:this.nonceInfo.nonceInstruction.toJSON()}:null,instructions:this.instructions.map(e=>e.toJSON()),signers:this.signatures.map(({publicKey:e})=>e.toJSON())}}add(...e){if(e.length===0)throw new Error("No instructions");return e.forEach(r=>{"instructions"in r?this.instructions=this.instructions.concat(r.instructions):"data"in r&&"programId"in r&&"keys"in r?this.instructions.push(r):this.instructions.push(new et(r))}),this}compileMessage(){if(this._message&&JSON.stringify(this.toJSON())===JSON.stringify(this._json))return this._message;let e,r;if(this.nonceInfo?(e=this.nonceInfo.nonce,this.instructions[0]!=this.nonceInfo.nonceInstruction?r=[this.nonceInfo.nonceInstruction,...this.instructions]:r=this.instructions):(e=this.recentBlockhash,r=this.instructions),!e)throw new Error("Transaction recentBlockhash required");r.length<1&&console.warn("No instructions provided");let i;if(this.feePayer)i=this.feePayer;else if(this.signatures.length>0&&this.signatures[0].publicKey)i=this.signatures[0].publicKey;else throw new Error("Transaction fee payer required");for(let k=0;k{k.keys.forEach(R=>{s.push({...R})});let z=k.programId.toString();a.includes(z)||a.push(z)}),a.forEach(k=>{s.push({pubkey:new re(k),isSigner:!1,isWritable:!1})});let o=[];s.forEach(k=>{let z=k.pubkey.toString(),R=o.findIndex(F=>F.pubkey.toString()===z);R>-1?(o[R].isWritable=o[R].isWritable||k.isWritable,o[R].isSigner=o[R].isSigner||k.isSigner):o.push(k)}),o.sort(function(k,z){if(k.isSigner!==z.isSigner)return k.isSigner?-1:1;if(k.isWritable!==z.isWritable)return k.isWritable?-1:1;let R={localeMatcher:"best fit",usage:"sort",sensitivity:"variant",ignorePunctuation:!1,numeric:!1,caseFirst:"lower"};return k.pubkey.toBase58().localeCompare(z.pubkey.toBase58(),"en",R)});let l=o.findIndex(k=>k.pubkey.equals(i));if(l>-1){let[k]=o.splice(l,1);k.isSigner=!0,k.isWritable=!0,o.unshift(k)}else o.unshift({pubkey:i,isSigner:!0,isWritable:!0});for(let k of this.signatures){let z=o.findIndex(R=>R.pubkey.equals(k.publicKey));if(z>-1)o[z].isSigner||(o[z].isSigner=!0,console.warn("Transaction references a signature that is unnecessary, only the fee payer and instruction signer accounts should sign a transaction. This behavior is deprecated and will throw an error in the next major version release."));else throw new Error(`unknown signer: ${k.publicKey.toString()}`)}let d=0,u=0,c=0,p=[],x=[];o.forEach(({pubkey:k,isSigner:z,isWritable:R})=>{z?(p.push(k.toString()),d+=1,R||(u+=1)):(x.push(k.toString()),R||(c+=1))});let E=p.concat(x),I=r.map(k=>{let{data:z,programId:R}=k;return{programIdIndex:E.indexOf(R.toString()),accounts:k.keys.map(F=>E.indexOf(F.pubkey.toString())),data:$r.default.encode(z)}});return I.forEach(k=>{He(k.programIdIndex>=0),k.accounts.forEach(z=>He(z>=0))}),new sn({header:{numRequiredSignatures:d,numReadonlySignedAccounts:u,numReadonlyUnsignedAccounts:c},accountKeys:E,recentBlockhash:e,instructions:I})}_compile(){let e=this.compileMessage(),r=e.accountKeys.slice(0,e.header.numRequiredSignatures);return this.signatures.length===r.length&&this.signatures.every((a,s)=>r[s].equals(a.publicKey))||(this.signatures=r.map(i=>({signature:null,publicKey:i}))),e}serializeMessage(){return this._compile().serialize()}async getEstimatedFee(e){return(await e.getFeeForMessage(this.compileMessage())).value}setSigners(...e){if(e.length===0)throw new Error("No signers");let r=new Set;this.signatures=e.filter(i=>{let a=i.toString();return r.has(a)?!1:(r.add(a),!0)}).map(i=>({signature:null,publicKey:i}))}sign(...e){if(e.length===0)throw new Error("No signers");let r=new Set,i=[];for(let s of e){let o=s.publicKey.toString();r.has(o)||(r.add(o),i.push(s))}this.signatures=i.map(s=>({signature:null,publicKey:s.publicKey}));let a=this._compile();this._partialSign(a,...i)}partialSign(...e){if(e.length===0)throw new Error("No signers");let r=new Set,i=[];for(let s of e){let o=s.publicKey.toString();r.has(o)||(r.add(o),i.push(s))}let a=this._compile();this._partialSign(a,...i)}_partialSign(e,...r){let i=e.serialize();r.forEach(a=>{let s=Ev(i,a.secretKey);this._addSignature(a.publicKey,Be(s))})}addSignature(e,r){this._compile(),this._addSignature(e,r)}_addSignature(e,r){He(r.length===64);let i=this.signatures.findIndex(a=>e.equals(a.publicKey));if(i<0)throw new Error(`unknown signer: ${e.toString()}`);this.signatures[i].signature=ye.Buffer.from(r)}verifySignatures(e){return this._verifySignatures(this.serializeMessage(),e===void 0?!0:e)}_verifySignatures(e,r){for(let{signature:i,publicKey:a}of this.signatures)if(i===null){if(r)return!1}else if(!dQ(i,e,a.toBytes()))return!1;return!0}serialize(e){let{requireAllSignatures:r,verifySignatures:i}=Object.assign({requireAllSignatures:!0,verifySignatures:!0},e),a=this.serializeMessage();if(i&&!this._verifySignatures(a,r))throw new Error("Signature verification failed");return this._serialize(a)}_serialize(e){let{signatures:r}=this,i=[];qi(i,r.length);let a=i.length+r.length*64+e.length,s=ye.Buffer.alloc(a);return He(r.length<256),ye.Buffer.from(i).copy(s,0),r.forEach(({signature:o},l)=>{o!==null&&(He(o.length===64,"signature has invalid length"),ye.Buffer.from(o).copy(s,i.length+l*64))}),e.copy(s,i.length+r.length*64),He(s.length<=Gs,`Transaction too large: ${s.length} > ${Gs}`),s}get keys(){return He(this.instructions.length===1),this.instructions[0].keys.map(e=>e.pubkey)}get programId(){return He(this.instructions.length===1),this.instructions[0].programId}get data(){return He(this.instructions.length===1),this.instructions[0].data}static from(e){let r=[...e],i=Ai(r),a=[];for(let s=0;s0&&(i.feePayer=e.accountKeys[0]),r.forEach((a,s)=>{let o={signature:a==$r.default.encode(yQ)?null:$r.default.decode(a),publicKey:e.accountKeys[s]};i.signatures.push(o)}),e.instructions.forEach(a=>{let s=a.accounts.map(o=>{let l=e.accountKeys[o];return{pubkey:l,isSigner:i.signatures.some(d=>d.publicKey.toString()===l.toString())||e.isAccountSigner(o),isWritable:e.isAccountWritable(o)}});i.instructions.push(new et({keys:s,programId:e.accountKeys[a.programIdIndex],data:$r.default.decode(a.data)}))}),i._message=e,i._json=i.toJSON(),i}},av=class t{static{n(this,"TransactionMessage")}constructor(e){this.payerKey=void 0,this.instructions=void 0,this.recentBlockhash=void 0,this.payerKey=e.payerKey,this.instructions=e.instructions,this.recentBlockhash=e.recentBlockhash}static decompile(e,r){let{header:i,compiledInstructions:a,recentBlockhash:s}=e,{numRequiredSignatures:o,numReadonlySignedAccounts:l,numReadonlyUnsignedAccounts:d}=i,u=o-l;He(u>0,"Message header is invalid");let c=e.staticAccountKeys.length-o-d;He(c>=0,"Message header is invalid");let p=e.getAccountKeys(r),x=p.get(0);if(x===void 0)throw new Error("Failed to decompile message because no account keys were found");let E=[];for(let I of a){let k=[];for(let R of I.accountKeyIndexes){let F=p.get(R);if(F===void 0)throw new Error(`Failed to find key for account key index ${R}`);let B=Ro.equals(a.publicKey));He(s>=0,`Cannot sign with non signer key ${a.publicKey.toBase58()}`),this.signatures[s]=Ev(r,a.secretKey)}}addSignature(e,r){He(r.byteLength===64,"Signature must be 64 bytes long");let a=this.message.staticAccountKeys.slice(0,this.message.header.numRequiredSignatures).findIndex(s=>s.equals(e));He(a>=0,`Can not add signature; \`${e.toBase58()}\` is not required to sign this transaction`),this.signatures[a]=r}},bQ=160,vQ=64,SQ=bQ/vQ,gD=1e3/SQ,an=new re("SysvarC1ock11111111111111111111111111111111"),wQ=new re("SysvarEpochSchedu1e111111111111111111111111"),xQ=new re("Sysvar1nstructions1111111111111111111111111"),u3=new re("SysvarRecentB1ockHashes11111111111111111111"),Q1=new re("SysvarRent111111111111111111111111111111111"),AQ=new re("SysvarRewards111111111111111111111111111111"),_Q=new re("SysvarS1otHashes111111111111111111111111111"),kQ=new re("SysvarS1otHistory11111111111111111111111111"),c3=new re("SysvarStakeHistory1111111111111111111111111");async function sv(t,e,r,i){let a=i&&{skipPreflight:i.skipPreflight,preflightCommitment:i.preflightCommitment||i.commitment,maxRetries:i.maxRetries,minContextSlot:i.minContextSlot},s=await t.sendTransaction(e,r,a),o;if(e.recentBlockhash!=null&&e.lastValidBlockHeight!=null)o=(await t.confirmTransaction({abortSignal:i?.abortSignal,signature:s,blockhash:e.recentBlockhash,lastValidBlockHeight:e.lastValidBlockHeight},i&&i.commitment)).value;else if(e.minNonceContextSlot!=null&&e.nonceInfo!=null){let{nonceInstruction:l}=e.nonceInfo,d=l.keys[0].pubkey;o=(await t.confirmTransaction({abortSignal:i?.abortSignal,minContextSlot:e.minNonceContextSlot,nonceAccountPubkey:d,nonceValue:e.nonceInfo.nonce,signature:s},i&&i.commitment)).value}else i?.abortSignal!=null&&console.warn("sendAndConfirmTransaction(): A transaction with a deprecated confirmation strategy was supplied along with an `abortSignal`. Only transactions having `lastValidBlockHeight` or a combination of `nonceInfo` and `minNonceContextSlot` are abortable."),o=(await t.confirmTransaction(s,i&&i.commitment)).value;if(o.err)throw new Error(`Transaction ${s} failed (${JSON.stringify(o)})`);return s}n(sv,"sendAndConfirmTransaction");function cl(t){return new Promise(e=>setTimeout(e,t))}n(cl,"sleep");function Le(t,e){let r=t.layout.span>=0?t.layout.span:hD(t,e),i=ye.Buffer.alloc(r),a=Object.assign({instruction:t.index},e);return t.layout.encode(a,i),i}n(Le,"encodeData");function Ye(t,e){let r;try{r=t.layout.decode(e)}catch(i){throw new Error("invalid instruction; "+i)}if(r.instruction!==t.index)throw new Error(`invalid instruction; instruction index mismatch ${r.instruction} != ${t.index}`);return r}n(Ye,"decodeData$1");var yD=D.nu64("lamportsPerSignature"),bD=D.struct([D.u32("version"),D.u32("state"),We("authorizedPubkey"),We("nonce"),D.struct([yD],"feeCalculator")]),ov=bD.span,f3=class t{static{n(this,"NonceAccount")}constructor(e){this.authorizedPubkey=void 0,this.nonce=void 0,this.feeCalculator=void 0,this.authorizedPubkey=e.authorizedPubkey,this.nonce=e.nonce,this.feeCalculator=e.feeCalculator}static fromAccountData(e){let r=bD.decode(Be(e),0);return new t({authorizedPubkey:new re(r.authorizedPubkey),nonce:new re(r.nonce).toString(),feeCalculator:r.feeCalculator})}},EQ=n(t=>{let e=t.decode.bind(t),r=t.encode.bind(t);return{decode:e,encode:r}},"encodeDecode"),PQ=n(t=>e=>{let r=dD.blob(t,e),{encode:i,decode:a}=EQ(r),s=r;return s.decode=(o,l)=>{let d=a(o,l);return ev.toBigIntLE(ye.Buffer.from(d))},s.encode=(o,l,d)=>{let u=ev.toBufferLE(o,t);return i(u,l,d)},s},"bigInt"),X1=PQ(8),lv=class{static{n(this,"SystemInstruction")}constructor(){}static decodeInstructionType(e){this.checkProgramId(e.programId);let i=D.u32("instruction").decode(e.data),a;for(let[s,o]of Object.entries(mt))if(o.index==i){a=s;break}if(!a)throw new Error("Instruction type incorrect; not a SystemInstruction");return a}static decodeCreateAccount(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,2);let{lamports:r,space:i,programId:a}=Ye(mt.Create,e.data);return{fromPubkey:e.keys[0].pubkey,newAccountPubkey:e.keys[1].pubkey,lamports:r,space:i,programId:new re(a)}}static decodeTransfer(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,2);let{lamports:r}=Ye(mt.Transfer,e.data);return{fromPubkey:e.keys[0].pubkey,toPubkey:e.keys[1].pubkey,lamports:r}}static decodeTransferWithSeed(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,3);let{lamports:r,seed:i,programId:a}=Ye(mt.TransferWithSeed,e.data);return{fromPubkey:e.keys[0].pubkey,basePubkey:e.keys[1].pubkey,toPubkey:e.keys[2].pubkey,lamports:r,seed:i,programId:new re(a)}}static decodeAllocate(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,1);let{space:r}=Ye(mt.Allocate,e.data);return{accountPubkey:e.keys[0].pubkey,space:r}}static decodeAllocateWithSeed(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,1);let{base:r,seed:i,space:a,programId:s}=Ye(mt.AllocateWithSeed,e.data);return{accountPubkey:e.keys[0].pubkey,basePubkey:new re(r),seed:i,space:a,programId:new re(s)}}static decodeAssign(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,1);let{programId:r}=Ye(mt.Assign,e.data);return{accountPubkey:e.keys[0].pubkey,programId:new re(r)}}static decodeAssignWithSeed(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,1);let{base:r,seed:i,programId:a}=Ye(mt.AssignWithSeed,e.data);return{accountPubkey:e.keys[0].pubkey,basePubkey:new re(r),seed:i,programId:new re(a)}}static decodeCreateWithSeed(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,2);let{base:r,seed:i,lamports:a,space:s,programId:o}=Ye(mt.CreateWithSeed,e.data);return{fromPubkey:e.keys[0].pubkey,newAccountPubkey:e.keys[1].pubkey,basePubkey:new re(r),seed:i,lamports:a,space:s,programId:new re(o)}}static decodeNonceInitialize(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,3);let{authorized:r}=Ye(mt.InitializeNonceAccount,e.data);return{noncePubkey:e.keys[0].pubkey,authorizedPubkey:new re(r)}}static decodeNonceAdvance(e){return this.checkProgramId(e.programId),this.checkKeyLength(e.keys,3),Ye(mt.AdvanceNonceAccount,e.data),{noncePubkey:e.keys[0].pubkey,authorizedPubkey:e.keys[2].pubkey}}static decodeNonceWithdraw(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,5);let{lamports:r}=Ye(mt.WithdrawNonceAccount,e.data);return{noncePubkey:e.keys[0].pubkey,toPubkey:e.keys[1].pubkey,authorizedPubkey:e.keys[4].pubkey,lamports:r}}static decodeNonceAuthorize(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,2);let{authorized:r}=Ye(mt.AuthorizeNonceAccount,e.data);return{noncePubkey:e.keys[0].pubkey,authorizedPubkey:e.keys[1].pubkey,newAuthorizedPubkey:new re(r)}}static checkProgramId(e){if(!e.equals(ai.programId))throw new Error("invalid instruction; programId is not SystemProgram")}static checkKeyLength(e,r){if(e.length0?p:1,space:s.length,programId:a}));E!==null&&await sv(e,E,[r,i],{commitment:"confirmed"})}let o=D.struct([D.u32("instruction"),D.u32("offset"),D.u32("bytesLength"),D.u32("bytesLengthPadding"),D.seq(D.u8("byte"),D.offset(D.u32(),-8),"bytes")]),l=t.chunkSize,d=0,u=s,c=[];for(;u.length>0;){let p=u.slice(0,l),x=ye.Buffer.alloc(l+16);o.encode({instruction:0,offset:d,bytes:p,bytesLength:0,bytesLengthPadding:0},x);let E=new Xe().add({keys:[{pubkey:i.publicKey,isSigner:!0,isWritable:!0}],programId:a,data:x});c.push(sv(e,E,[r,i],{commitment:"confirmed"})),e._rpcEndpoint.includes("solana.com")&&await cl(1e3/4),d+=l,u=u.slice(l)}await Promise.all(c);{let p=D.struct([D.u32("instruction")]),x=ye.Buffer.alloc(p.span);p.encode({instruction:1},x);let E=new Xe().add({keys:[{pubkey:i.publicKey,isSigner:!0,isWritable:!0},{pubkey:Q1,isSigner:!1,isWritable:!1}],programId:a,data:x}),I="processed",k=await e.sendTransaction(E,[r,i],{preflightCommitment:I}),{context:z,value:R}=await e.confirmTransaction({signature:k,lastValidBlockHeight:E.lastValidBlockHeight,blockhash:E.recentBlockhash},I);if(R.err)throw new Error(`Transaction ${k} failed (${JSON.stringify(R)})`);for(;;){try{if(await e.getSlot({commitment:I})>z.slot)break}catch{}await new Promise(F=>setTimeout(F,Math.round(gD/2)))}}return!0}};ed.chunkSize=TQ;var zQ=new re("BPFLoader2111111111111111111111111111111111"),dv=class{static{n(this,"BpfLoader")}static getMinNumSignatures(e){return ed.getMinNumSignatures(e)}static load(e,r,i,a,s){return ed.load(e,r,i,s,a)}};function vD(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}n(vD,"getDefaultExportFromCjs");var _3={exports:{}},td=1e3,rd=td*60,id=rd*60,fl=id*24,IQ=fl*7,MQ=fl*365.25,DQ=n(function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return RQ(t);if(r==="number"&&isFinite(t))return e.long?CQ(t):BQ(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))},"ms$3");function RQ(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),i=(e[2]||"ms").toLowerCase();switch(i){case"years":case"year":case"yrs":case"yr":case"y":return r*MQ;case"weeks":case"week":case"w":return r*IQ;case"days":case"day":case"d":return r*fl;case"hours":case"hour":case"hrs":case"hr":case"h":return r*id;case"minutes":case"minute":case"mins":case"min":case"m":return r*rd;case"seconds":case"second":case"secs":case"sec":case"s":return r*td;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}n(RQ,"parse");function BQ(t){var e=Math.abs(t);return e>=fl?Math.round(t/fl)+"d":e>=id?Math.round(t/id)+"h":e>=rd?Math.round(t/rd)+"m":e>=td?Math.round(t/td)+"s":t+"ms"}n(BQ,"fmtShort");function CQ(t){var e=Math.abs(t);return e>=fl?n3(t,e,fl,"day"):e>=id?n3(t,e,id,"hour"):e>=rd?n3(t,e,rd,"minute"):e>=td?n3(t,e,td,"second"):t+" ms"}n(CQ,"fmtLong");function n3(t,e,r,i){var a=e>=r*1.5;return Math.round(t/r)+" "+i+(a?"s":"")}n(n3,"plural");var OQ=cD.default,NQ=DQ,qQ=n(function(t){if(typeof t=="number")return t;var e=NQ(t);if(e===void 0){var r=new Error(OQ.format("humanize-ms(%j) result undefined",t));console.warn(r.stack)}return e},"humanizeMs"),uv={exports:{}},s3={exports:{}},Lb,FM;function WQ(){if(FM)return Lb;FM=1;var t=1e3,e=t*60,r=e*60,i=r*24,a=i*7,s=i*365.25;Lb=n(function(c,p){p=p||{};var x=typeof c;if(x==="string"&&c.length>0)return o(c);if(x==="number"&&isFinite(c))return p.long?d(c):l(c);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(c))},"ms$1");function o(c){if(c=String(c),!(c.length>100)){var p=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(c);if(p){var x=parseFloat(p[1]),E=(p[2]||"ms").toLowerCase();switch(E){case"years":case"year":case"yrs":case"yr":case"y":return x*s;case"weeks":case"week":case"w":return x*a;case"days":case"day":case"d":return x*i;case"hours":case"hour":case"hrs":case"hr":case"h":return x*r;case"minutes":case"minute":case"mins":case"min":case"m":return x*e;case"seconds":case"second":case"secs":case"sec":case"s":return x*t;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return x;default:return}}}}n(o,"parse");function l(c){var p=Math.abs(c);return p>=i?Math.round(c/i)+"d":p>=r?Math.round(c/r)+"h":p>=e?Math.round(c/e)+"m":p>=t?Math.round(c/t)+"s":c+"ms"}n(l,"fmtShort");function d(c){var p=Math.abs(c);return p>=i?u(c,p,i,"day"):p>=r?u(c,p,r,"hour"):p>=e?u(c,p,e,"minute"):p>=t?u(c,p,t,"second"):c+" ms"}n(d,"fmtLong");function u(c,p,x,E){var I=p>=x*1.5;return Math.round(c/x)+" "+E+(I?"s":"")}return n(u,"plural"),Lb}n(WQ,"requireMs");var Ub,KM;function SD(){if(KM)return Ub;KM=1;function t(e){i.debug=i,i.default=i,i.coerce=u,i.disable=o,i.enable=s,i.enabled=l,i.humanize=WQ(),i.destroy=c,Object.keys(e).forEach(p=>{i[p]=e[p]}),i.names=[],i.skips=[],i.formatters={};function r(p){let x=0;for(let E=0;E{if(H==="%%")return"%";W++;let se=i.formatters[Z];if(typeof se=="function"){let le=R[W];H=se.call(F,le),R.splice(W,1),W--}return H}),i.formatArgs.call(F,R),(F.log||i.log).apply(F,R)}return n(z,"debug"),z.namespace=p,z.useColors=i.useColors(),z.color=i.selectColor(p),z.extend=a,z.destroy=i.destroy,Object.defineProperty(z,"enabled",{enumerable:!0,configurable:!1,get:()=>E!==null?E:(I!==i.namespaces&&(I=i.namespaces,k=i.enabled(p)),k),set:R=>{E=R}}),typeof i.init=="function"&&i.init(z),z}n(i,"createDebug");function a(p,x){let E=i(this.namespace+(typeof x>"u"?":":x)+p);return E.log=this.log,E}n(a,"extend");function s(p){i.save(p),i.namespaces=p,i.names=[],i.skips=[];let x,E=(typeof p=="string"?p:"").split(/[\s,]+/),I=E.length;for(x=0;x"-"+x)].join(",");return i.enable(""),p}n(o,"disable");function l(p){if(p[p.length-1]==="*")return!0;let x,E;for(x=0,E=i.skips.length;x{let d=!1;return()=>{d||(d=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),e.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function r(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}n(r,"useColors");function i(d){if(d[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+d[0]+(this.useColors?"%c ":" ")+"+"+t.exports.humanize(this.diff),!this.useColors)return;let u="color: "+this.color;d.splice(1,0,u,"color: inherit");let c=0,p=0;d[0].replace(/%[a-zA-Z%]/g,x=>{x!=="%%"&&(c++,x==="%c"&&(p=c))}),d.splice(p,0,u)}n(i,"formatArgs"),e.log=console.debug||console.log||(()=>{});function a(d){try{d?e.storage.setItem("debug",d):e.storage.removeItem("debug")}catch{}}n(a,"save");function s(){let d;try{d=e.storage.getItem("debug")}catch{}return!d&&typeof process<"u"&&"env"in process&&(d=process.env.DEBUG),d}n(s,"load");function o(){try{return localStorage}catch{}}n(o,"localstorage"),t.exports=SD()(e);let{formatters:l}=t.exports;l.j=function(d){try{return JSON.stringify(d)}catch(u){return"[UnexpectedJSONParseError]: "+u.message}}}(s3,s3.exports)),s3.exports}n(VQ,"requireBrowser$1");var o3={exports:{}},jb,UM;function FQ(){if(UM)return jb;UM=1;function t(){let r=/(Chrome|Chromium)\/(?\d+)\./.exec(navigator.userAgent);if(r)return Number.parseInt(r.groups.chromeVersion,10)}n(t,"getChromeVersion");let e=t()>=69?{level:1,hasBasic:!0,has256:!1,has16m:!1}:!1;return jb={stdout:e,stderr:e},jb}n(FQ,"requireBrowser");var jM;function KQ(){return jM||(jM=1,function(t,e){let r=eQ.default,i=cD.default;e.init=c,e.log=l,e.formatArgs=s,e.save=d,e.load=u,e.useColors=a,e.destroy=i.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."),e.colors=[6,2,3,4,5,1];try{let x=FQ();x&&(x.stderr||x).level>=2&&(e.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}e.inspectOpts=Object.keys(process.env).filter(x=>/^debug_/i.test(x)).reduce((x,E)=>{let I=E.substring(6).toLowerCase().replace(/_([a-z])/g,(z,R)=>R.toUpperCase()),k=process.env[E];return/^(yes|on|true|enabled)$/i.test(k)?k=!0:/^(no|off|false|disabled)$/i.test(k)?k=!1:k==="null"?k=null:k=Number(k),x[I]=k,x},{});function a(){return"colors"in e.inspectOpts?!!e.inspectOpts.colors:r.isatty(process.stderr.fd)}n(a,"useColors");function s(x){let{namespace:E,useColors:I}=this;if(I){let k=this.color,z="\x1B[3"+(k<8?k:"8;5;"+k),R=` ${z};1m${E} \x1B[0m`;x[0]=R+x[0].split(` `).join(` -`+D),w.push(T+"m+"+t.exports.humanize(this.diff)+"\x1B[0m")}else w[0]=s()+k+" "+w[0]}function s(){return e.inspectOpts.hideDate?"":new Date().toISOString()+" "}function o(...w){return process.stderr.write(i.format(...w)+` -`)}function l(w){w?process.env.DEBUG=w:delete process.env.DEBUG}function d(){return process.env.DEBUG}function u(w){w.inspectOpts={};let k=Object.keys(e.inspectOpts);for(let z=0;zk.trim()).join(" ")},c.O=function(w){return this.inspectOpts.colors=this.useColors,i.inspect(w,this.inspectOpts)}}(s3,s3.exports)),s3.exports}typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?dv.exports=WQ():dv.exports=FQ();var KQ=dv.exports;var LQ=eQ.default.relative,UQ=ZQ,jQ=process.cwd();function SD(t,e){for(var r=t.split(/[ ,]+/),i=String(e).toLowerCase(),a=0;a0}function YQ(t){if(process.noDeprecation)return!0;var e=process.env.NO_DEPRECATION||"";return SD(e,t)}function QQ(t){if(process.traceDeprecation)return!0;var e=process.env.TRACE_DEPRECATION||"";return SD(e,t)}function f3(t,e){var r=JQ(process,"deprecation");if(!(!r&&this._ignored)){var i,a,n,s,o=0,l=!1,d=_3(),u=this._file;for(e?(s=e,n=G1(d[1]),n.name=s.name,u=n[0]):(o=2,s=G1(d[o]),n=s);o",r=t.getLineNumber(),i=t.getColumnNumber();t.isEval()&&(e=t.getEvalOrigin()+", "+e);var a=[e,r,i];return a.callSite=t,a.name=t.getFunctionName(),a}function jM(t){var e=t.callSite,r=t.name;r||(r="");var i=e.getThis(),a=i&&e.getTypeName();return a==="Object"&&(a=void 0),a==="Function"&&(a=i.name||a),a&&e.getMethodName()?a+"."+r:r}function XQ(t,e,r){var i=new Date().toUTCString(),a=i+" "+this._namespace+" deprecated "+t;if(this._traced){for(var n=0;nE.trim()).join(" ")},p.O=function(x){return this.inspectOpts.colors=this.useColors,i.inspect(x,this.inspectOpts)}}(o3,o3.exports)),o3.exports}n(KQ,"requireNode");typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?uv.exports=VQ():uv.exports=KQ();var LQ=uv.exports;var UQ=tQ.default.relative,jQ=JQ,HQ=process.cwd();function wD(t,e){for(var r=t.split(/[ ,]+/),i=String(e).toLowerCase(),a=0;a0}n(YQ,"eehaslisteners");function QQ(t){if(process.noDeprecation)return!0;var e=process.env.NO_DEPRECATION||"";return wD(e,t)}n(QQ,"isignored");function XQ(t){if(process.traceDeprecation)return!0;var e=process.env.TRACE_DEPRECATION||"";return wD(e,t)}n(XQ,"istraced");function h3(t,e){var r=YQ(process,"deprecation");if(!(!r&&this._ignored)){var i,a,s,o,l=0,d=!1,u=k3(),c=this._file;for(e?(o=e,s=Z1(u[1]),s.name=o.name,c=s[0]):(l=2,o=Z1(u[l]),s=o);l",r=t.getLineNumber(),i=t.getColumnNumber();t.isEval()&&(e=t.getEvalOrigin()+", "+e);var a=[e,r,i];return a.callSite=t,a.name=t.getFunctionName(),a}n(Z1,"callSiteLocation");function HM(t){var e=t.callSite,r=t.name;r||(r="");var i=e.getThis(),a=i&&e.getTypeName();return a==="Object"&&(a=void 0),a==="Function"&&(a=i.name||a),a&&e.getMethodName()?a+"."+r:r}n(HM,"defaultMessage");function eX(t,e,r){var i=new Date().toUTCString(),a=i+" "+this._namespace+" deprecated "+t;if(this._traced){for(var s=0;s=11&&Hb<=12?uv=2:Hb>=13&&(uv=3);var cv=class extends aX{constructor(e){e=e||{},e.keepAlive=e.keepAlive!==!1,e.freeSocketTimeout===void 0&&(e.freeSocketTimeout=4e3),e.keepAliveTimeout&&(E0("options.keepAliveTimeout is deprecated, please use options.freeSocketTimeout instead"),e.freeSocketTimeout=e.keepAliveTimeout,delete e.keepAliveTimeout),e.freeSocketKeepAliveTimeout&&(E0("options.freeSocketKeepAliveTimeout is deprecated, please use options.freeSocketTimeout instead"),e.freeSocketTimeout=e.freeSocketKeepAliveTimeout,delete e.freeSocketKeepAliveTimeout),e.timeout===void 0&&(e.timeout=Math.max(e.freeSocketTimeout*2,8e3)),e.timeout=jb(e.timeout),e.freeSocketTimeout=jb(e.freeSocketTimeout),e.socketActiveTTL=e.socketActiveTTL?jb(e.socketActiveTTL):0,super(e),this[o3]=0,this.createSocketCount=0,this.createSocketCountLastCheck=0,this.createSocketErrorCount=0,this.createSocketErrorCountLastCheck=0,this.closeSocketCount=0,this.closeSocketCountLastCheck=0,this.errorSocketCount=0,this.errorSocketCountLastCheck=0,this.requestCount=0,this.requestCountLastCheck=0,this.timeoutSocketCount=0,this.timeoutSocketCountLastCheck=0,this.on("free",r=>{let i=this.calcSocketTimeout(r);i>0&&r.timeout!==i&&r.setTimeout(i)})}get freeSocketKeepAliveTimeout(){return E0("agent.freeSocketKeepAliveTimeout is deprecated, please use agent.options.freeSocketTimeout instead"),this.options.freeSocketTimeout}get timeout(){return E0("agent.timeout is deprecated, please use agent.options.timeout instead"),this.options.timeout}get socketActiveTTL(){return E0("agent.socketActiveTTL is deprecated, please use agent.options.socketActiveTTL instead"),this.options.socketActiveTTL}calcSocketTimeout(e){let r=this.options.freeSocketTimeout,i=this.options.socketActiveTTL;if(i){let a=Date.now()-e[GM],n=i-a;if(n<=0)return n;r&&n"u"?!0:i<=0?(yi("%s(requests: %s, finished: %s) free but need to destroy by TTL, request count %s, diff is %s",e[wi],e[Xi],e[tn],i),!1):(e.timeout!==i&&e.setTimeout(i),!0)}reuseSocket(...e){super.reuseSocket(...e);let r=e[0],i=e[1];i.reusedSocket=!0;let a=this.options.timeout;I0(r)!==a&&(r.setTimeout(a),yi("%s reset timeout to %sms",r[wi],a)),r[Xi]++,yi("%s(requests: %s, finished: %s) reuse on addRequest, timeout %sms",r[wi],r[Xi],r[tn],I0(r))}[$M](){let e=this[o3]++;return this[o3]===Number.MAX_SAFE_INTEGER&&(this[o3]=0),e}[HM](e,r){r.timeout&&(I0(e)||e.setTimeout(r.timeout)),this.options.keepAlive&&e.setNoDelay(!0),this.createSocketCount++,this.options.socketActiveTTL&&(e[GM]=Date.now()),e[wi]=`sock[${this[$M]()}#${r._agentKey}]`.split("-----BEGIN",1)[0],e[Xi]=1,e[tn]=0,nX(this,e,r)}createConnection(e,r){let i=!1,a=(s,o)=>{if(!i){if(i=!0,s)return this.createSocketErrorCount++,r(s);this[HM](o,e),r(s,o)}},n=super.createConnection(e,a);n&&a(null,n)}get statusChanged(){let e=this.createSocketCount!==this.createSocketCountLastCheck||this.createSocketErrorCount!==this.createSocketErrorCountLastCheck||this.closeSocketCount!==this.closeSocketCountLastCheck||this.errorSocketCount!==this.errorSocketCountLastCheck||this.timeoutSocketCount!==this.timeoutSocketCountLastCheck||this.requestCount!==this.requestCountLastCheck;return e&&(this.createSocketCountLastCheck=this.createSocketCount,this.createSocketErrorCountLastCheck=this.createSocketErrorCount,this.closeSocketCountLastCheck=this.closeSocketCount,this.errorSocketCountLastCheck=this.errorSocketCount,this.timeoutSocketCountLastCheck=this.timeoutSocketCount,this.requestCountLastCheck=this.requestCount),e}getCurrentStatus(){return{createSocketCount:this.createSocketCount,createSocketErrorCount:this.createSocketErrorCount,closeSocketCount:this.closeSocketCount,errorSocketCount:this.errorSocketCount,timeoutSocketCount:this.timeoutSocketCount,requestCount:this.requestCount,freeSockets:$b(this.freeSockets),sockets:$b(this.sockets),requests:$b(this.requests)}}};function I0(t){return t.timeout||t._idleTimeout}function nX(t,e,r){yi("%s create, timeout %sms",e[wi],I0(e));function i(){if(!e._httpMessage&&e[Xi]===1)return;e[tn]++,t.requestCount++,yi("%s(requests: %s, finished: %s) free",e[wi],e[Xi],e[tn]);let l=t.getName(r);e.writable&&t.requests[l]&&t.requests[l].length&&(e[Xi]++,yi("%s(requests: %s, finished: %s) will be reuse on agent free event",e[wi],e[Xi],e[tn]))}e.on("free",i);function a(l){yi("%s(requests: %s, finished: %s) close, isError: %s",e[wi],e[Xi],e[tn],l),t.closeSocketCount++}e.on("close",a);function n(){let l=e.listeners("timeout").length,d=I0(e),u=e._httpMessage,c=u&&u.listeners("timeout").length||0;yi("%s(requests: %s, finished: %s) timeout after %sms, listeners %s, defaultTimeoutListenerCount %s, hasHttpRequest %s, HttpRequest timeoutListenerCount %s",e[wi],e[Xi],e[tn],d,l,uv,!!u,c),yi.enabled&&yi("timeout listeners: %s",e.listeners("timeout").map(k=>k.name).join(", ")),t.timeoutSocketCount++;let w=t.getName(r);if(t.freeSockets[w]&&t.freeSockets[w].indexOf(e)!==-1)e.destroy(),t.removeSocket(e,r),yi("%s is free, destroy quietly",e[wi]);else if(c===0){let k=new Error("Socket timeout");k.code="ERR_SOCKET_TIMEOUT",k.timeout=d,e.destroy(k),t.removeSocket(e,r),yi("%s destroy with timeout error",e[wi])}}e.on("timeout",n);function s(l){let d=e.listeners("error").length;yi("%s(requests: %s, finished: %s) error: %s, listenerCount: %s",e[wi],e[Xi],e[tn],l,d),t.errorSocketCount++,d===1&&(yi("%s emit uncaught error event",e[wi]),e.removeListener("error",s),e.emit("error",l))}e.on("error",s);function o(){yi("%s(requests: %s, finished: %s) agentRemove",e[wi],e[Xi],e[tn]),e.removeListener("close",a),e.removeListener("error",s),e.removeListener("free",i),e.removeListener("timeout",n),e.removeListener("agentRemove",o)}e.on("agentRemove",o)}var xD=cv;function $b(t){let e={};for(let r in t)e[r]=t[r].length;return e}var pv=rQ.default.Agent,sX=xD,{INIT_SOCKET:oX,CREATE_HTTPS_CONNECTION:AD}=Tv,zv=class extends sX{constructor(e){super(e),this.defaultPort=443,this.protocol="https:",this.maxCachedSessions=this.options.maxCachedSessions,this.maxCachedSessions===void 0&&(this.maxCachedSessions=100),this._sessionCache={map:{},list:[]}}createConnection(e){let r=this[AD](e);return this[oX](r,e),r}};zv.prototype[AD]=pv.prototype.createConnection;["getName","_getSession","_cacheSession","_evictSession"].forEach(function(t){typeof pv.prototype[t]=="function"&&(zv.prototype[t]=pv.prototype[t])});var lX=zv;A3.exports=xD;var dX=A3.exports.HttpsAgent=lX;A3.exports.constants=Tv;var uX=A3.exports,cX=bD(uX),pX=Object.prototype.toString,mX=Object.keys||function(t){var e=[];for(var r in t)e.push(r);return e};function T0(t,e){var r,i,a,n,s,o,l;if(t===!0)return"true";if(t===!1)return"false";switch(typeof t){case"object":if(t===null)return null;if(t.toJSON&&typeof t.toJSON=="function")return T0(t.toJSON(),e);if(l=pX.call(t),l==="[object Array]"){for(a="[",i=t.length-1,r=0;r-1&&(a+=T0(t[r],!0)),a+"]"}else if(l==="[object Object]"){for(n=mX(t).sort(),i=n.length,a="",r=0;r1;)t/=2,e++;return e}function hX(t){return t===0?1:(t--,t|=t>>1,t|=t>>2,t|=t>>4,t|=t>>8,t|=t>>16,t|=t>>32,t+1)}var h3=class{constructor(e,r,i,a,n){this.slotsPerEpoch=void 0,this.leaderScheduleSlotOffset=void 0,this.warmup=void 0,this.firstNormalEpoch=void 0,this.firstNormalSlot=void 0,this.slotsPerEpoch=e,this.leaderScheduleSlotOffset=r,this.warmup=i,this.firstNormalEpoch=a,this.firstNormalSlot=n}getEpoch(e){return this.getEpochAndSlotIndex(e)[0]}getEpochAndSlotIndex(e){if(e{let s=sQ.default(n,{autoconnect:!0,max_reconnects:5,reconnect:!0,reconnect_interval:1e3,...r});return"socket"in s?this.underlyingSocket=s.socket:this.underlyingSocket=s,s};super(a,e,r,i),this.underlyingSocket=void 0}call(...e){let r=this.underlyingSocket?.readyState;return r===1?super.call(...e):Promise.reject(new Error("Tried to call a JSON-RPC method `"+e[0]+"` but the socket was not `CONNECTING` or `OPEN` (`readyState` was "+r+")"))}notify(...e){let r=this.underlyingSocket?.readyState;return r===1?super.notify(...e):Promise.reject(new Error("Tried to send a JSON-RPC notification `"+e[0]+"` but the socket was not `CONNECTING` or `OPEN` (`readyState` was "+r+")"))}};function bX(t,e){let r;try{r=t.layout.decode(e)}catch(i){throw new Error("invalid instruction; "+i)}if(r.typeIndex!==t.index)throw new Error(`invalid account data; account type mismatch ${r.typeIndex} != ${t.index}`);return r}var JM=56,C0=class{constructor(e){this.key=void 0,this.state=void 0,this.key=e.key,this.state=e.state}isActive(){let e=BigInt("0xffffffffffffffff");return this.state.deactivationSlot===e}static deserialize(e){let r=bX(vX,e),i=e.length-JM;je(i>=0,"lookup table is invalid"),je(i%32===0,"lookup table is invalid");let a=i/32,{addresses:n}=M.struct([M.seq(qe(),a,"addresses")]).decode(e.slice(JM));return{deactivationSlot:r.deactivationSlot,lastExtendedSlot:r.lastExtendedSlot,lastExtendedSlotStartIndex:r.lastExtendedStartIndex,authority:r.authority.length!==0?new te(r.authority[0]):void 0,addresses:n.map(s=>new te(s))}}},vX={index:1,layout:M.struct([M.u32("typeIndex"),Q1("deactivationSlot"),M.nu64("lastExtendedSlot"),M.u8("lastExtendedStartIndex"),M.u8(),M.seq(qe(),M.offset(M.u8(),-1),"authority")])},SX=/^[^:]+:\/\/([^:[]+|\[[^\]]+\])(:\d+)?(.*)/i;function wX(t){let e=t.match(SX);if(e==null)throw TypeError(`Failed to validate endpoint URL \`${t}\``);let[r,i,a,n]=e,s=t.startsWith("https:")?"wss:":"ws:",o=a==null?null:parseInt(a.slice(1),10),l=o==null?"":`:${o+1}`;return`${s}//${i}${l}${n}`}var hr=m.coerce(m.instance(te),m.string(),t=>new te(t)),_D=m.tuple([m.string(),m.literal("base64")]),Iv=m.coerce(m.instance(ge.Buffer),_D,t=>ge.Buffer.from(t[0],"base64")),kD=30*1e3;function xX(t){if(/^https?:/.test(t)===!1)throw new TypeError("Endpoint URL must start with `http:` or `https:`.");return t}function vt(t){let e,r;if(typeof t=="string")e=t;else if(t){let{commitment:i,...a}=t;e=i,r=a}return{commitment:e,config:r}}function ED(t){return m.union([m.type({jsonrpc:m.literal("2.0"),id:m.string(),result:t}),m.type({jsonrpc:m.literal("2.0"),id:m.string(),error:m.type({code:m.unknown(),message:m.string(),data:m.optional(m.any())})})])}var AX=ED(m.unknown());function De(t){return m.coerce(ED(t),AX,e=>"error"in e?e:{...e,result:m.create(e.result,t)})}function Bt(t){return De(m.type({context:m.type({slot:m.number()}),value:t}))}function k3(t){return m.type({context:m.type({slot:m.number()}),value:t})}function Zb(t,e){return t===0?new J1({header:e.header,staticAccountKeys:e.accountKeys.map(r=>new te(r)),recentBlockhash:e.recentBlockhash,compiledInstructions:e.instructions.map(r=>({programIdIndex:r.programIdIndex,accountKeyIndexes:r.accounts,data:Hr.default.decode(r.data)})),addressTableLookups:e.addressTableLookups}):new nn(e)}var _X=m.type({foundation:m.number(),foundationTerm:m.number(),initial:m.number(),taper:m.number(),terminal:m.number()}),kX=De(m.array(m.nullable(m.type({epoch:m.number(),effectiveSlot:m.number(),amount:m.number(),postBalance:m.number(),commission:m.optional(m.nullable(m.number()))})))),EX=m.array(m.type({slot:m.number(),prioritizationFee:m.number()})),PX=m.type({total:m.number(),validator:m.number(),foundation:m.number(),epoch:m.number()}),TX=m.type({epoch:m.number(),slotIndex:m.number(),slotsInEpoch:m.number(),absoluteSlot:m.number(),blockHeight:m.optional(m.number()),transactionCount:m.optional(m.number())}),zX=m.type({slotsPerEpoch:m.number(),leaderScheduleSlotOffset:m.number(),warmup:m.boolean(),firstNormalEpoch:m.number(),firstNormalSlot:m.number()}),IX=m.record(m.string(),m.array(m.number())),hl=m.nullable(m.union([m.type({}),m.string()])),MX=m.type({err:hl}),DX=m.literal("receivedSignature"),RX=m.type({"solana-core":m.string(),"feature-set":m.optional(m.number())}),YM=Bt(m.type({err:m.nullable(m.union([m.type({}),m.string()])),logs:m.nullable(m.array(m.string())),accounts:m.optional(m.nullable(m.array(m.nullable(m.type({executable:m.boolean(),owner:m.string(),lamports:m.number(),data:m.array(m.string()),rentEpoch:m.optional(m.number())}))))),unitsConsumed:m.optional(m.number()),returnData:m.optional(m.nullable(m.type({programId:m.string(),data:m.tuple([m.string(),m.literal("base64")])})))})),BX=Bt(m.type({byIdentity:m.record(m.string(),m.array(m.number())),range:m.type({firstSlot:m.number(),lastSlot:m.number()})}));function CX(t,e,r,i,a,n){let s=r||yX,o;if(n==null){let u={freeSocketTimeout:19e3,keepAlive:!0,maxSockets:25};t.startsWith("https:")?o=new dX(u):o=new cX(u)}else if(n!==!1){let u=t.startsWith("https:");if(u&&!(n instanceof ev.Agent))throw new Error("The endpoint `"+t+"` can only be paired with an `https.Agent`. You have, instead, supplied an `http.Agent` through `httpAgent`.");if(!u&&n instanceof ev.Agent)throw new Error("The endpoint `"+t+"` can only be paired with an `http.Agent`. You have, instead, supplied an `https.Agent` through `httpAgent`.");o=n}let l;return i&&(l=async(u,c)=>{let w=await new Promise((k,z)=>{try{i(u,c,(_,T)=>k([_,T]))}catch(_){z(_)}});return await s(...w)}),new iQ.default(async(u,c)=>{let w={method:"POST",body:u,agent:o,headers:Object.assign({"Content-Type":"application/json"},e||{},Oee)};try{let k=5,z,_=500;for(;l?z=await l(t,w):z=await s(t,w),!(z.status!==429||a===!0||(k-=1,k===0));)console.log(`Server responded with ${z.status} ${z.statusText}. Retrying after ${_}ms delay...`),await ul(_),_*=2;let T=await z.text();z.ok?c(null,T):c(new Error(`${z.status} ${z.statusText}: ${T}`))}catch(k){k instanceof Error&&c(k)}},{})}function OX(t){return(e,r)=>new Promise((i,a)=>{t.request(e,r,(n,s)=>{if(n){a(n);return}i(s)})})}function NX(t){return e=>new Promise((r,i)=>{e.length===0&&r([]);let a=e.map(n=>t.request(n.methodName,n.args));t.request(a,(n,s)=>{if(n){i(n);return}r(s)})})}var qX=De(_X),WX=De(PX),VX=De(EX),FX=De(TX),KX=De(zX),LX=De(IX),UX=De(m.number()),jX=Bt(m.type({total:m.number(),circulating:m.number(),nonCirculating:m.number(),nonCirculatingAccounts:m.array(hr)})),fv=m.type({amount:m.string(),uiAmount:m.nullable(m.number()),decimals:m.number(),uiAmountString:m.optional(m.string())}),HX=Bt(m.array(m.type({address:hr,amount:m.string(),uiAmount:m.nullable(m.number()),decimals:m.number(),uiAmountString:m.optional(m.string())}))),$X=Bt(m.array(m.type({pubkey:hr,account:m.type({executable:m.boolean(),owner:hr,lamports:m.number(),data:Iv,rentEpoch:m.number()})}))),hv=m.type({program:m.string(),parsed:m.unknown(),space:m.number()}),GX=Bt(m.array(m.type({pubkey:hr,account:m.type({executable:m.boolean(),owner:hr,lamports:m.number(),data:hv,rentEpoch:m.number()})}))),ZX=Bt(m.array(m.type({lamports:m.number(),address:hr}))),O0=m.type({executable:m.boolean(),owner:hr,lamports:m.number(),data:Iv,rentEpoch:m.number()}),JX=m.type({pubkey:hr,account:O0}),YX=m.coerce(m.union([m.instance(ge.Buffer),hv]),m.union([_D,hv]),t=>Array.isArray(t)?m.create(t,Iv):t),gv=m.type({executable:m.boolean(),owner:hr,lamports:m.number(),data:YX,rentEpoch:m.number()}),QX=m.type({pubkey:hr,account:gv}),XX=m.type({state:m.union([m.literal("active"),m.literal("inactive"),m.literal("activating"),m.literal("deactivating")]),active:m.number(),inactive:m.number()}),eee=De(m.array(m.type({signature:m.string(),slot:m.number(),err:hl,memo:m.nullable(m.string()),blockTime:m.optional(m.nullable(m.number()))}))),tee=De(m.array(m.type({signature:m.string(),slot:m.number(),err:hl,memo:m.nullable(m.string()),blockTime:m.optional(m.nullable(m.number()))}))),ree=m.type({subscription:m.number(),result:k3(O0)}),iee=m.type({pubkey:hr,account:O0}),aee=m.type({subscription:m.number(),result:k3(iee)}),nee=m.type({parent:m.number(),slot:m.number(),root:m.number()}),see=m.type({subscription:m.number(),result:nee}),oee=m.union([m.type({type:m.union([m.literal("firstShredReceived"),m.literal("completed"),m.literal("optimisticConfirmation"),m.literal("root")]),slot:m.number(),timestamp:m.number()}),m.type({type:m.literal("createdBank"),parent:m.number(),slot:m.number(),timestamp:m.number()}),m.type({type:m.literal("frozen"),slot:m.number(),timestamp:m.number(),stats:m.type({numTransactionEntries:m.number(),numSuccessfulTransactions:m.number(),numFailedTransactions:m.number(),maxTransactionsPerEntry:m.number()})}),m.type({type:m.literal("dead"),slot:m.number(),timestamp:m.number(),err:m.string()})]),lee=m.type({subscription:m.number(),result:oee}),dee=m.type({subscription:m.number(),result:k3(m.union([MX,DX]))}),uee=m.type({subscription:m.number(),result:m.number()}),cee=m.type({pubkey:m.string(),gossip:m.nullable(m.string()),tpu:m.nullable(m.string()),rpc:m.nullable(m.string()),version:m.nullable(m.string())}),QM=m.type({votePubkey:m.string(),nodePubkey:m.string(),activatedStake:m.number(),epochVoteAccount:m.boolean(),epochCredits:m.array(m.tuple([m.number(),m.number(),m.number()])),commission:m.number(),lastVote:m.number(),rootSlot:m.nullable(m.number())}),pee=De(m.type({current:m.array(QM),delinquent:m.array(QM)})),mee=m.union([m.literal("processed"),m.literal("confirmed"),m.literal("finalized")]),fee=m.type({slot:m.number(),confirmations:m.nullable(m.number()),err:hl,confirmationStatus:m.optional(mee)}),hee=Bt(m.array(m.nullable(fee))),gee=De(m.number()),PD=m.type({accountKey:hr,writableIndexes:m.array(m.number()),readonlyIndexes:m.array(m.number())}),Mv=m.type({signatures:m.array(m.string()),message:m.type({accountKeys:m.array(m.string()),header:m.type({numRequiredSignatures:m.number(),numReadonlySignedAccounts:m.number(),numReadonlyUnsignedAccounts:m.number()}),instructions:m.array(m.type({accounts:m.array(m.number()),data:m.string(),programIdIndex:m.number()})),recentBlockhash:m.string(),addressTableLookups:m.optional(m.array(PD))})}),TD=m.type({pubkey:hr,signer:m.boolean(),writable:m.boolean(),source:m.optional(m.union([m.literal("transaction"),m.literal("lookupTable")]))}),zD=m.type({accountKeys:m.array(TD),signatures:m.array(m.string())}),ID=m.type({parsed:m.unknown(),program:m.string(),programId:hr}),MD=m.type({accounts:m.array(hr),data:m.string(),programId:hr}),yee=m.union([MD,ID]),bee=m.union([m.type({parsed:m.unknown(),program:m.string(),programId:m.string()}),m.type({accounts:m.array(m.string()),data:m.string(),programId:m.string()})]),DD=m.coerce(yee,bee,t=>"accounts"in t?m.create(t,MD):m.create(t,ID)),RD=m.type({signatures:m.array(m.string()),message:m.type({accountKeys:m.array(TD),instructions:m.array(DD),recentBlockhash:m.string(),addressTableLookups:m.optional(m.nullable(m.array(PD)))})}),g3=m.type({accountIndex:m.number(),mint:m.string(),owner:m.optional(m.string()),uiTokenAmount:fv}),BD=m.type({writable:m.array(hr),readonly:m.array(hr)}),E3=m.type({err:hl,fee:m.number(),innerInstructions:m.optional(m.nullable(m.array(m.type({index:m.number(),instructions:m.array(m.type({accounts:m.array(m.number()),data:m.string(),programIdIndex:m.number()}))})))),preBalances:m.array(m.number()),postBalances:m.array(m.number()),logMessages:m.optional(m.nullable(m.array(m.string()))),preTokenBalances:m.optional(m.nullable(m.array(g3))),postTokenBalances:m.optional(m.nullable(m.array(g3))),loadedAddresses:m.optional(BD),computeUnitsConsumed:m.optional(m.number())}),Dv=m.type({err:hl,fee:m.number(),innerInstructions:m.optional(m.nullable(m.array(m.type({index:m.number(),instructions:m.array(DD)})))),preBalances:m.array(m.number()),postBalances:m.array(m.number()),logMessages:m.optional(m.nullable(m.array(m.string()))),preTokenBalances:m.optional(m.nullable(m.array(g3))),postTokenBalances:m.optional(m.nullable(m.array(g3))),loadedAddresses:m.optional(BD),computeUnitsConsumed:m.optional(m.number())}),sd=m.union([m.literal(0),m.literal("legacy")]),gl=m.type({pubkey:m.string(),lamports:m.number(),postBalance:m.nullable(m.number()),rewardType:m.nullable(m.string()),commission:m.optional(m.nullable(m.number()))}),vee=De(m.nullable(m.type({blockhash:m.string(),previousBlockhash:m.string(),parentSlot:m.number(),transactions:m.array(m.type({transaction:Mv,meta:m.nullable(E3),version:m.optional(sd)})),rewards:m.optional(m.array(gl)),blockTime:m.nullable(m.number()),blockHeight:m.nullable(m.number())}))),See=De(m.nullable(m.type({blockhash:m.string(),previousBlockhash:m.string(),parentSlot:m.number(),rewards:m.optional(m.array(gl)),blockTime:m.nullable(m.number()),blockHeight:m.nullable(m.number())}))),wee=De(m.nullable(m.type({blockhash:m.string(),previousBlockhash:m.string(),parentSlot:m.number(),transactions:m.array(m.type({transaction:zD,meta:m.nullable(E3),version:m.optional(sd)})),rewards:m.optional(m.array(gl)),blockTime:m.nullable(m.number()),blockHeight:m.nullable(m.number())}))),xee=De(m.nullable(m.type({blockhash:m.string(),previousBlockhash:m.string(),parentSlot:m.number(),transactions:m.array(m.type({transaction:RD,meta:m.nullable(Dv),version:m.optional(sd)})),rewards:m.optional(m.array(gl)),blockTime:m.nullable(m.number()),blockHeight:m.nullable(m.number())}))),Aee=De(m.nullable(m.type({blockhash:m.string(),previousBlockhash:m.string(),parentSlot:m.number(),transactions:m.array(m.type({transaction:zD,meta:m.nullable(Dv),version:m.optional(sd)})),rewards:m.optional(m.array(gl)),blockTime:m.nullable(m.number()),blockHeight:m.nullable(m.number())}))),_ee=De(m.nullable(m.type({blockhash:m.string(),previousBlockhash:m.string(),parentSlot:m.number(),rewards:m.optional(m.array(gl)),blockTime:m.nullable(m.number()),blockHeight:m.nullable(m.number())}))),kee=De(m.nullable(m.type({blockhash:m.string(),previousBlockhash:m.string(),parentSlot:m.number(),transactions:m.array(m.type({transaction:Mv,meta:m.nullable(E3)})),rewards:m.optional(m.array(gl)),blockTime:m.nullable(m.number())}))),XM=De(m.nullable(m.type({blockhash:m.string(),previousBlockhash:m.string(),parentSlot:m.number(),signatures:m.array(m.string()),blockTime:m.nullable(m.number())}))),Jb=De(m.nullable(m.type({slot:m.number(),meta:E3,blockTime:m.optional(m.nullable(m.number())),transaction:Mv,version:m.optional(sd)}))),l3=De(m.nullable(m.type({slot:m.number(),transaction:RD,meta:m.nullable(Dv),blockTime:m.optional(m.nullable(m.number())),version:m.optional(sd)}))),Eee=Bt(m.type({blockhash:m.string(),feeCalculator:m.type({lamportsPerSignature:m.number()})})),Pee=Bt(m.type({blockhash:m.string(),lastValidBlockHeight:m.number()})),Tee=Bt(m.boolean()),zee=m.type({slot:m.number(),numTransactions:m.number(),numSlots:m.number(),samplePeriodSecs:m.number()}),Iee=De(m.array(zee)),Mee=Bt(m.nullable(m.type({feeCalculator:m.type({lamportsPerSignature:m.number()})}))),Dee=De(m.string()),Ree=De(m.string()),Bee=m.type({err:hl,logs:m.array(m.string()),signature:m.string()}),Cee=m.type({result:k3(Bee),subscription:m.number()}),Oee={"solana-client":"js/0.0.0-development"},yv=class{constructor(e,r){this._commitment=void 0,this._confirmTransactionInitialTimeout=void 0,this._rpcEndpoint=void 0,this._rpcWsEndpoint=void 0,this._rpcClient=void 0,this._rpcRequest=void 0,this._rpcBatchRequest=void 0,this._rpcWebSocket=void 0,this._rpcWebSocketConnected=!1,this._rpcWebSocketHeartbeat=null,this._rpcWebSocketIdleTimeout=null,this._rpcWebSocketGeneration=0,this._disableBlockhashCaching=!1,this._pollingBlockhash=!1,this._blockhashInfo={latestBlockhash:null,lastFetch:0,transactionSignatures:[],simulatedSignatures:[]},this._nextClientSubscriptionId=0,this._subscriptionDisposeFunctionsByClientSubscriptionId={},this._subscriptionHashByClientSubscriptionId={},this._subscriptionStateChangeCallbacksByHash={},this._subscriptionCallbacksByServerSubscriptionId={},this._subscriptionsByHash={},this._subscriptionsAutoDisposedByRpc=new Set,this.getBlockHeight=(()=>{let d={};return async u=>{let{commitment:c,config:w}=vt(u),k=this._buildArgs([],c,void 0,w),z=ZM(k);return d[z]=d[z]??(async()=>{try{let _=await this._rpcRequest("getBlockHeight",k),T=m.create(_,De(m.number()));if("error"in T)throw new ue(T.error,"failed to get block height information");return T.result}finally{delete d[z]}})(),await d[z]}})();let i,a,n,s,o,l;r&&typeof r=="string"?this._commitment=r:r&&(this._commitment=r.commitment,this._confirmTransactionInitialTimeout=r.confirmTransactionInitialTimeout,i=r.wsEndpoint,a=r.httpHeaders,n=r.fetch,s=r.fetchMiddleware,o=r.disableRetryOnRateLimit,l=r.httpAgent),this._rpcEndpoint=xX(e),this._rpcWsEndpoint=i||wX(e),this._rpcClient=CX(e,a,n,s,o,l),this._rpcRequest=OX(this._rpcClient),this._rpcBatchRequest=NX(this._rpcClient),this._rpcWebSocket=new mv(this._rpcWsEndpoint,{autoconnect:!1,max_reconnects:1/0}),this._rpcWebSocket.on("open",this._wsOnOpen.bind(this)),this._rpcWebSocket.on("error",this._wsOnError.bind(this)),this._rpcWebSocket.on("close",this._wsOnClose.bind(this)),this._rpcWebSocket.on("accountNotification",this._wsOnAccountNotification.bind(this)),this._rpcWebSocket.on("programNotification",this._wsOnProgramAccountNotification.bind(this)),this._rpcWebSocket.on("slotNotification",this._wsOnSlotNotification.bind(this)),this._rpcWebSocket.on("slotsUpdatesNotification",this._wsOnSlotUpdatesNotification.bind(this)),this._rpcWebSocket.on("signatureNotification",this._wsOnSignatureNotification.bind(this)),this._rpcWebSocket.on("rootNotification",this._wsOnRootNotification.bind(this)),this._rpcWebSocket.on("logsNotification",this._wsOnLogsNotification.bind(this))}get commitment(){return this._commitment}get rpcEndpoint(){return this._rpcEndpoint}async getBalanceAndContext(e,r){let{commitment:i,config:a}=vt(r),n=this._buildArgs([e.toBase58()],i,void 0,a),s=await this._rpcRequest("getBalance",n),o=m.create(s,Bt(m.number()));if("error"in o)throw new ue(o.error,`failed to get balance for ${e.toBase58()}`);return o.result}async getBalance(e,r){return await this.getBalanceAndContext(e,r).then(i=>i.value).catch(i=>{throw new Error("failed to get balance of account "+e.toBase58()+": "+i)})}async getBlockTime(e){let r=await this._rpcRequest("getBlockTime",[e]),i=m.create(r,De(m.nullable(m.number())));if("error"in i)throw new ue(i.error,`failed to get block time for slot ${e}`);return i.result}async getMinimumLedgerSlot(){let e=await this._rpcRequest("minimumLedgerSlot",[]),r=m.create(e,De(m.number()));if("error"in r)throw new ue(r.error,"failed to get minimum ledger slot");return r.result}async getFirstAvailableBlock(){let e=await this._rpcRequest("getFirstAvailableBlock",[]),r=m.create(e,UX);if("error"in r)throw new ue(r.error,"failed to get first available block");return r.result}async getSupply(e){let r={};typeof e=="string"?r={commitment:e}:e?r={...e,commitment:e&&e.commitment||this.commitment}:r={commitment:this.commitment};let i=await this._rpcRequest("getSupply",[r]),a=m.create(i,jX);if("error"in a)throw new ue(a.error,"failed to get supply");return a.result}async getTokenSupply(e,r){let i=this._buildArgs([e.toBase58()],r),a=await this._rpcRequest("getTokenSupply",i),n=m.create(a,Bt(fv));if("error"in n)throw new ue(n.error,"failed to get token supply");return n.result}async getTokenAccountBalance(e,r){let i=this._buildArgs([e.toBase58()],r),a=await this._rpcRequest("getTokenAccountBalance",i),n=m.create(a,Bt(fv));if("error"in n)throw new ue(n.error,"failed to get token account balance");return n.result}async getTokenAccountsByOwner(e,r,i){let{commitment:a,config:n}=vt(i),s=[e.toBase58()];"mint"in r?s.push({mint:r.mint.toBase58()}):s.push({programId:r.programId.toBase58()});let o=this._buildArgs(s,a,"base64",n),l=await this._rpcRequest("getTokenAccountsByOwner",o),d=m.create(l,$X);if("error"in d)throw new ue(d.error,`failed to get token accounts owned by account ${e.toBase58()}`);return d.result}async getParsedTokenAccountsByOwner(e,r,i){let a=[e.toBase58()];"mint"in r?a.push({mint:r.mint.toBase58()}):a.push({programId:r.programId.toBase58()});let n=this._buildArgs(a,i,"jsonParsed"),s=await this._rpcRequest("getTokenAccountsByOwner",n),o=m.create(s,GX);if("error"in o)throw new ue(o.error,`failed to get token accounts owned by account ${e.toBase58()}`);return o.result}async getLargestAccounts(e){let r={...e,commitment:e&&e.commitment||this.commitment},i=r.filter||r.commitment?[r]:[],a=await this._rpcRequest("getLargestAccounts",i),n=m.create(a,ZX);if("error"in n)throw new ue(n.error,"failed to get largest accounts");return n.result}async getTokenLargestAccounts(e,r){let i=this._buildArgs([e.toBase58()],r),a=await this._rpcRequest("getTokenLargestAccounts",i),n=m.create(a,HX);if("error"in n)throw new ue(n.error,"failed to get token largest accounts");return n.result}async getAccountInfoAndContext(e,r){let{commitment:i,config:a}=vt(r),n=this._buildArgs([e.toBase58()],i,"base64",a),s=await this._rpcRequest("getAccountInfo",n),o=m.create(s,Bt(m.nullable(O0)));if("error"in o)throw new ue(o.error,`failed to get info about account ${e.toBase58()}`);return o.result}async getParsedAccountInfo(e,r){let{commitment:i,config:a}=vt(r),n=this._buildArgs([e.toBase58()],i,"jsonParsed",a),s=await this._rpcRequest("getAccountInfo",n),o=m.create(s,Bt(m.nullable(gv)));if("error"in o)throw new ue(o.error,`failed to get info about account ${e.toBase58()}`);return o.result}async getAccountInfo(e,r){try{return(await this.getAccountInfoAndContext(e,r)).value}catch(i){throw new Error("failed to get info about account "+e.toBase58()+": "+i)}}async getMultipleParsedAccounts(e,r){let{commitment:i,config:a}=vt(r),n=e.map(d=>d.toBase58()),s=this._buildArgs([n],i,"jsonParsed",a),o=await this._rpcRequest("getMultipleAccounts",s),l=m.create(o,Bt(m.array(m.nullable(gv))));if("error"in l)throw new ue(l.error,`failed to get info for accounts ${n}`);return l.result}async getMultipleAccountsInfoAndContext(e,r){let{commitment:i,config:a}=vt(r),n=e.map(d=>d.toBase58()),s=this._buildArgs([n],i,"base64",a),o=await this._rpcRequest("getMultipleAccounts",s),l=m.create(o,Bt(m.array(m.nullable(O0))));if("error"in l)throw new ue(l.error,`failed to get info for accounts ${n}`);return l.result}async getMultipleAccountsInfo(e,r){return(await this.getMultipleAccountsInfoAndContext(e,r)).value}async getStakeActivation(e,r,i){let{commitment:a,config:n}=vt(r),s=this._buildArgs([e.toBase58()],a,void 0,{...n,epoch:i??n?.epoch}),o=await this._rpcRequest("getStakeActivation",s),l=m.create(o,De(XX));if("error"in l)throw new ue(l.error,`failed to get Stake Activation ${e.toBase58()}`);return l.result}async getProgramAccounts(e,r){let{commitment:i,config:a}=vt(r),{encoding:n,...s}=a||{},o=this._buildArgs([e.toBase58()],i,n||"base64",s),l=await this._rpcRequest("getProgramAccounts",o),d=m.array(JX),u=s.withContext===!0?m.create(l,Bt(d)):m.create(l,De(d));if("error"in u)throw new ue(u.error,`failed to get accounts owned by program ${e.toBase58()}`);return u.result}async getParsedProgramAccounts(e,r){let{commitment:i,config:a}=vt(r),n=this._buildArgs([e.toBase58()],i,"jsonParsed",a),s=await this._rpcRequest("getProgramAccounts",n),o=m.create(s,De(m.array(QX)));if("error"in o)throw new ue(o.error,`failed to get accounts owned by program ${e.toBase58()}`);return o.result}async confirmTransaction(e,r){let i;if(typeof e=="string")i=e;else{let n=e;if(n.abortSignal?.aborted)return Promise.reject(n.abortSignal.reason);i=n.signature}let a;try{a=Hr.default.decode(i)}catch{throw new Error("signature must be base58 encoded: "+i)}return je(a.length===64,"signature has invalid length"),typeof e=="string"?await this.confirmTransactionUsingLegacyTimeoutStrategy({commitment:r||this.commitment,signature:i}):"lastValidBlockHeight"in e?await this.confirmTransactionUsingBlockHeightExceedanceStrategy({commitment:r||this.commitment,strategy:e}):await this.confirmTransactionUsingDurableNonceStrategy({commitment:r||this.commitment,strategy:e})}getCancellationPromise(e){return new Promise((r,i)=>{e!=null&&(e.aborted?i(e.reason):e.addEventListener("abort",()=>{i(e.reason)}))})}getTransactionConfirmationPromise({commitment:e,signature:r}){let i,a,n=!1,s=new Promise((l,d)=>{try{i=this.onSignature(r,(c,w)=>{i=void 0;let k={context:w,value:c};l({__type:Kn.PROCESSED,response:k})},e);let u=new Promise(c=>{i==null?c():a=this._onSubscriptionStateChange(i,w=>{w==="subscribed"&&c()})});(async()=>{if(await u,n)return;let c=await this.getSignatureStatus(r);if(n||c==null)return;let{context:w,value:k}=c;if(k!=null)if(k?.err)d(k.err);else{switch(e){case"confirmed":case"single":case"singleGossip":{if(k.confirmationStatus==="processed")return;break}case"finalized":case"max":case"root":{if(k.confirmationStatus==="processed"||k.confirmationStatus==="confirmed")return;break}case"processed":case"recent":}n=!0,l({__type:Kn.PROCESSED,response:{context:w,value:k}})}})()}catch(u){d(u)}});return{abortConfirmation:()=>{a&&(a(),a=void 0),i!=null&&(this.removeSignatureListener(i),i=void 0)},confirmationPromise:s}}async confirmTransactionUsingBlockHeightExceedanceStrategy({commitment:e,strategy:{abortSignal:r,lastValidBlockHeight:i,signature:a}}){let n=!1,s=new Promise(c=>{let w=async()=>{try{return await this.getBlockHeight(e)}catch{return-1}};(async()=>{let k=await w();if(!n){for(;k<=i;)if(await ul(1e3),n||(k=await w(),n))return;c({__type:Kn.BLOCKHEIGHT_EXCEEDED})}})()}),{abortConfirmation:o,confirmationPromise:l}=this.getTransactionConfirmationPromise({commitment:e,signature:a}),d=this.getCancellationPromise(r),u;try{let c=await Promise.race([d,l,s]);if(c.__type===Kn.PROCESSED)u=c.response;else throw new D0(a)}finally{n=!0,o()}return u}async confirmTransactionUsingDurableNonceStrategy({commitment:e,strategy:{abortSignal:r,minContextSlot:i,nonceAccountPubkey:a,nonceValue:n,signature:s}}){let o=!1,l=new Promise(k=>{let z=n,_=null,T=async()=>{try{let{context:D,value:V}=await this.getNonceAndContext(a,{commitment:e,minContextSlot:i});return _=D.slot,V?.nonce}catch{return z}};(async()=>{if(z=await T(),!o)for(;;){if(n!==z){k({__type:Kn.NONCE_INVALID,slotInWhichNonceDidAdvance:_});return}if(await ul(2e3),o||(z=await T(),o))return}})()}),{abortConfirmation:d,confirmationPromise:u}=this.getTransactionConfirmationPromise({commitment:e,signature:s}),c=this.getCancellationPromise(r),w;try{let k=await Promise.race([c,u,l]);if(k.__type===Kn.PROCESSED)w=k.response;else{let z;for(;;){let _=await this.getSignatureStatus(s);if(_==null)break;if(_.context.slot<(k.slotInWhichNonceDidAdvance??i)){await ul(400);continue}z=_;break}if(z?.value){let _=e||"finalized",{confirmationStatus:T}=z.value;switch(_){case"processed":case"recent":if(T!=="processed"&&T!=="confirmed"&&T!=="finalized")throw new Hs(s);break;case"confirmed":case"single":case"singleGossip":if(T!=="confirmed"&&T!=="finalized")throw new Hs(s);break;case"finalized":case"max":case"root":if(T!=="finalized")throw new Hs(s);break;default:}w={context:z.context,value:{err:z.value.err}}}else throw new Hs(s)}}finally{o=!0,d()}return w}async confirmTransactionUsingLegacyTimeoutStrategy({commitment:e,signature:r}){let i,a=new Promise(l=>{let d=this._confirmTransactionInitialTimeout||6e4;switch(e){case"processed":case"recent":case"single":case"confirmed":case"singleGossip":{d=this._confirmTransactionInitialTimeout||3e4;break}}i=setTimeout(()=>l({__type:Kn.TIMED_OUT,timeoutMs:d}),d)}),{abortConfirmation:n,confirmationPromise:s}=this.getTransactionConfirmationPromise({commitment:e,signature:r}),o;try{let l=await Promise.race([s,a]);if(l.__type===Kn.PROCESSED)o=l.response;else throw new R0(r,l.timeoutMs/1e3)}finally{clearTimeout(i),n()}return o}async getClusterNodes(){let e=await this._rpcRequest("getClusterNodes",[]),r=m.create(e,De(m.array(cee)));if("error"in r)throw new ue(r.error,"failed to get cluster nodes");return r.result}async getVoteAccounts(e){let r=this._buildArgs([],e),i=await this._rpcRequest("getVoteAccounts",r),a=m.create(i,pee);if("error"in a)throw new ue(a.error,"failed to get vote accounts");return a.result}async getSlot(e){let{commitment:r,config:i}=vt(e),a=this._buildArgs([],r,void 0,i),n=await this._rpcRequest("getSlot",a),s=m.create(n,De(m.number()));if("error"in s)throw new ue(s.error,"failed to get slot");return s.result}async getSlotLeader(e){let{commitment:r,config:i}=vt(e),a=this._buildArgs([],r,void 0,i),n=await this._rpcRequest("getSlotLeader",a),s=m.create(n,De(m.string()));if("error"in s)throw new ue(s.error,"failed to get slot leader");return s.result}async getSlotLeaders(e,r){let i=[e,r],a=await this._rpcRequest("getSlotLeaders",i),n=m.create(a,De(m.array(hr)));if("error"in n)throw new ue(n.error,"failed to get slot leaders");return n.result}async getSignatureStatus(e,r){let{context:i,value:a}=await this.getSignatureStatuses([e],r);je(a.length===1);let n=a[0];return{context:i,value:n}}async getSignatureStatuses(e,r){let i=[e];r&&i.push(r);let a=await this._rpcRequest("getSignatureStatuses",i),n=m.create(a,hee);if("error"in n)throw new ue(n.error,"failed to get signature status");return n.result}async getTransactionCount(e){let{commitment:r,config:i}=vt(e),a=this._buildArgs([],r,void 0,i),n=await this._rpcRequest("getTransactionCount",a),s=m.create(n,De(m.number()));if("error"in s)throw new ue(s.error,"failed to get transaction count");return s.result}async getTotalSupply(e){return(await this.getSupply({commitment:e,excludeNonCirculatingAccountsList:!0})).value.total}async getInflationGovernor(e){let r=this._buildArgs([],e),i=await this._rpcRequest("getInflationGovernor",r),a=m.create(i,qX);if("error"in a)throw new ue(a.error,"failed to get inflation");return a.result}async getInflationReward(e,r,i){let{commitment:a,config:n}=vt(i),s=this._buildArgs([e.map(d=>d.toBase58())],a,void 0,{...n,epoch:r??n?.epoch}),o=await this._rpcRequest("getInflationReward",s),l=m.create(o,kX);if("error"in l)throw new ue(l.error,"failed to get inflation reward");return l.result}async getInflationRate(){let e=await this._rpcRequest("getInflationRate",[]),r=m.create(e,WX);if("error"in r)throw new ue(r.error,"failed to get inflation rate");return r.result}async getEpochInfo(e){let{commitment:r,config:i}=vt(e),a=this._buildArgs([],r,void 0,i),n=await this._rpcRequest("getEpochInfo",a),s=m.create(n,FX);if("error"in s)throw new ue(s.error,"failed to get epoch info");return s.result}async getEpochSchedule(){let e=await this._rpcRequest("getEpochSchedule",[]),r=m.create(e,KX);if("error"in r)throw new ue(r.error,"failed to get epoch schedule");let i=r.result;return new h3(i.slotsPerEpoch,i.leaderScheduleSlotOffset,i.warmup,i.firstNormalEpoch,i.firstNormalSlot)}async getLeaderSchedule(){let e=await this._rpcRequest("getLeaderSchedule",[]),r=m.create(e,LX);if("error"in r)throw new ue(r.error,"failed to get leader schedule");return r.result}async getMinimumBalanceForRentExemption(e,r){let i=this._buildArgs([e],r),a=await this._rpcRequest("getMinimumBalanceForRentExemption",i),n=m.create(a,gee);return"error"in n?(console.warn("Unable to fetch minimum balance for rent exemption"),0):n.result}async getRecentBlockhashAndContext(e){let r=this._buildArgs([],e),i=await this._rpcRequest("getRecentBlockhash",r),a=m.create(i,Eee);if("error"in a)throw new ue(a.error,"failed to get recent blockhash");return a.result}async getRecentPerformanceSamples(e){let r=await this._rpcRequest("getRecentPerformanceSamples",e?[e]:[]),i=m.create(r,Iee);if("error"in i)throw new ue(i.error,"failed to get recent performance samples");return i.result}async getFeeCalculatorForBlockhash(e,r){let i=this._buildArgs([e],r),a=await this._rpcRequest("getFeeCalculatorForBlockhash",i),n=m.create(a,Mee);if("error"in n)throw new ue(n.error,"failed to get fee calculator");let{context:s,value:o}=n.result;return{context:s,value:o!==null?o.feeCalculator:null}}async getFeeForMessage(e,r){let i=Re(e.serialize()).toString("base64"),a=this._buildArgs([i],r),n=await this._rpcRequest("getFeeForMessage",a),s=m.create(n,Bt(m.nullable(m.number())));if("error"in s)throw new ue(s.error,"failed to get fee for message");if(s.result===null)throw new Error("invalid blockhash");return s.result}async getRecentPrioritizationFees(e){let r=e?.lockedWritableAccounts?.map(s=>s.toBase58()),i=r?.length?[r]:[],a=await this._rpcRequest("getRecentPrioritizationFees",i),n=m.create(a,VX);if("error"in n)throw new ue(n.error,"failed to get recent prioritization fees");return n.result}async getRecentBlockhash(e){try{return(await this.getRecentBlockhashAndContext(e)).value}catch(r){throw new Error("failed to get recent blockhash: "+r)}}async getLatestBlockhash(e){try{return(await this.getLatestBlockhashAndContext(e)).value}catch(r){throw new Error("failed to get recent blockhash: "+r)}}async getLatestBlockhashAndContext(e){let{commitment:r,config:i}=vt(e),a=this._buildArgs([],r,void 0,i),n=await this._rpcRequest("getLatestBlockhash",a),s=m.create(n,Pee);if("error"in s)throw new ue(s.error,"failed to get latest blockhash");return s.result}async isBlockhashValid(e,r){let{commitment:i,config:a}=vt(r),n=this._buildArgs([e],i,void 0,a),s=await this._rpcRequest("isBlockhashValid",n),o=m.create(s,Tee);if("error"in o)throw new ue(o.error,"failed to determine if the blockhash `"+e+"`is valid");return o.result}async getVersion(){let e=await this._rpcRequest("getVersion",[]),r=m.create(e,De(RX));if("error"in r)throw new ue(r.error,"failed to get version");return r.result}async getGenesisHash(){let e=await this._rpcRequest("getGenesisHash",[]),r=m.create(e,De(m.string()));if("error"in r)throw new ue(r.error,"failed to get genesis hash");return r.result}async getBlock(e,r){let{commitment:i,config:a}=vt(r),n=this._buildArgsAtLeastConfirmed([e],i,void 0,a),s=await this._rpcRequest("getBlock",n);try{switch(a?.transactionDetails){case"accounts":{let o=m.create(s,wee);if("error"in o)throw o.error;return o.result}case"none":{let o=m.create(s,See);if("error"in o)throw o.error;return o.result}default:{let o=m.create(s,vee);if("error"in o)throw o.error;let{result:l}=o;return l?{...l,transactions:l.transactions.map(({transaction:d,meta:u,version:c})=>({meta:u,transaction:{...d,message:Zb(c,d.message)},version:c}))}:null}}}catch(o){throw new ue(o,"failed to get confirmed block")}}async getParsedBlock(e,r){let{commitment:i,config:a}=vt(r),n=this._buildArgsAtLeastConfirmed([e],i,"jsonParsed",a),s=await this._rpcRequest("getBlock",n);try{switch(a?.transactionDetails){case"accounts":{let o=m.create(s,Aee);if("error"in o)throw o.error;return o.result}case"none":{let o=m.create(s,_ee);if("error"in o)throw o.error;return o.result}default:{let o=m.create(s,xee);if("error"in o)throw o.error;return o.result}}}catch(o){throw new ue(o,"failed to get block")}}async getBlockProduction(e){let r,i;if(typeof e=="string")i=e;else if(e){let{commitment:o,...l}=e;i=o,r=l}let a=this._buildArgs([],i,"base64",r),n=await this._rpcRequest("getBlockProduction",a),s=m.create(n,BX);if("error"in s)throw new ue(s.error,"failed to get block production information");return s.result}async getTransaction(e,r){let{commitment:i,config:a}=vt(r),n=this._buildArgsAtLeastConfirmed([e],i,void 0,a),s=await this._rpcRequest("getTransaction",n),o=m.create(s,Jb);if("error"in o)throw new ue(o.error,"failed to get transaction");let l=o.result;return l&&{...l,transaction:{...l.transaction,message:Zb(l.version,l.transaction.message)}}}async getParsedTransaction(e,r){let{commitment:i,config:a}=vt(r),n=this._buildArgsAtLeastConfirmed([e],i,"jsonParsed",a),s=await this._rpcRequest("getTransaction",n),o=m.create(s,l3);if("error"in o)throw new ue(o.error,"failed to get transaction");return o.result}async getParsedTransactions(e,r){let{commitment:i,config:a}=vt(r),n=e.map(l=>({methodName:"getTransaction",args:this._buildArgsAtLeastConfirmed([l],i,"jsonParsed",a)}));return(await this._rpcBatchRequest(n)).map(l=>{let d=m.create(l,l3);if("error"in d)throw new ue(d.error,"failed to get transactions");return d.result})}async getTransactions(e,r){let{commitment:i,config:a}=vt(r),n=e.map(l=>({methodName:"getTransaction",args:this._buildArgsAtLeastConfirmed([l],i,void 0,a)}));return(await this._rpcBatchRequest(n)).map(l=>{let d=m.create(l,Jb);if("error"in d)throw new ue(d.error,"failed to get transactions");let u=d.result;return u&&{...u,transaction:{...u.transaction,message:Zb(u.version,u.transaction.message)}}})}async getConfirmedBlock(e,r){let i=this._buildArgsAtLeastConfirmed([e],r),a=await this._rpcRequest("getConfirmedBlock",i),n=m.create(a,kee);if("error"in n)throw new ue(n.error,"failed to get confirmed block");let s=n.result;if(!s)throw new Error("Confirmed block "+e+" not found");let o={...s,transactions:s.transactions.map(({transaction:l,meta:d})=>{let u=new nn(l.message);return{meta:d,transaction:{...l,message:u}}})};return{...o,transactions:o.transactions.map(({transaction:l,meta:d})=>({meta:d,transaction:Qe.populate(l.message,l.signatures)}))}}async getBlocks(e,r,i){let a=this._buildArgsAtLeastConfirmed(r!==void 0?[e,r]:[e],i),n=await this._rpcRequest("getBlocks",a),s=m.create(n,De(m.array(m.number())));if("error"in s)throw new ue(s.error,"failed to get blocks");return s.result}async getBlockSignatures(e,r){let i=this._buildArgsAtLeastConfirmed([e],r,void 0,{transactionDetails:"signatures",rewards:!1}),a=await this._rpcRequest("getBlock",i),n=m.create(a,XM);if("error"in n)throw new ue(n.error,"failed to get block");let s=n.result;if(!s)throw new Error("Block "+e+" not found");return s}async getConfirmedBlockSignatures(e,r){let i=this._buildArgsAtLeastConfirmed([e],r,void 0,{transactionDetails:"signatures",rewards:!1}),a=await this._rpcRequest("getConfirmedBlock",i),n=m.create(a,XM);if("error"in n)throw new ue(n.error,"failed to get confirmed block");let s=n.result;if(!s)throw new Error("Confirmed block "+e+" not found");return s}async getConfirmedTransaction(e,r){let i=this._buildArgsAtLeastConfirmed([e],r),a=await this._rpcRequest("getConfirmedTransaction",i),n=m.create(a,Jb);if("error"in n)throw new ue(n.error,"failed to get transaction");let s=n.result;if(!s)return s;let o=new nn(s.transaction.message),l=s.transaction.signatures;return{...s,transaction:Qe.populate(o,l)}}async getParsedConfirmedTransaction(e,r){let i=this._buildArgsAtLeastConfirmed([e],r,"jsonParsed"),a=await this._rpcRequest("getConfirmedTransaction",i),n=m.create(a,l3);if("error"in n)throw new ue(n.error,"failed to get confirmed transaction");return n.result}async getParsedConfirmedTransactions(e,r){let i=e.map(s=>({methodName:"getConfirmedTransaction",args:this._buildArgsAtLeastConfirmed([s],r,"jsonParsed")}));return(await this._rpcBatchRequest(i)).map(s=>{let o=m.create(s,l3);if("error"in o)throw new ue(o.error,"failed to get confirmed transactions");return o.result})}async getConfirmedSignaturesForAddress(e,r,i){let a={},n=await this.getFirstAvailableBlock();for(;!("until"in a)&&(r--,!(r<=0||r0&&(a.until=l.signatures[l.signatures.length-1].toString())}catch(l){if(l instanceof Error&&l.message.includes("skipped"))continue;throw l}let s=await this.getSlot("finalized");for(;!("before"in a)&&(i++,!(i>s));)try{let l=await this.getConfirmedBlockSignatures(i);l.signatures.length>0&&(a.before=l.signatures[l.signatures.length-1].toString())}catch(l){if(l instanceof Error&&l.message.includes("skipped"))continue;throw l}return(await this.getConfirmedSignaturesForAddress2(e,a)).map(l=>l.signature)}async getConfirmedSignaturesForAddress2(e,r,i){let a=this._buildArgsAtLeastConfirmed([e.toBase58()],i,void 0,r),n=await this._rpcRequest("getConfirmedSignaturesForAddress2",a),s=m.create(n,eee);if("error"in s)throw new ue(s.error,"failed to get confirmed signatures for address");return s.result}async getSignaturesForAddress(e,r,i){let a=this._buildArgsAtLeastConfirmed([e.toBase58()],i,void 0,r),n=await this._rpcRequest("getSignaturesForAddress",a),s=m.create(n,tee);if("error"in s)throw new ue(s.error,"failed to get signatures for address");return s.result}async getAddressLookupTable(e,r){let{context:i,value:a}=await this.getAccountInfoAndContext(e,r),n=null;return a!==null&&(n=new C0({key:e,state:C0.deserialize(a.data)})),{context:i,value:n}}async getNonceAndContext(e,r){let{context:i,value:a}=await this.getAccountInfoAndContext(e,r),n=null;return a!==null&&(n=m3.fromAccountData(a.data)),{context:i,value:n}}async getNonce(e,r){return await this.getNonceAndContext(e,r).then(i=>i.value).catch(i=>{throw new Error("failed to get nonce for account "+e.toBase58()+": "+i)})}async requestAirdrop(e,r){let i=await this._rpcRequest("requestAirdrop",[e.toBase58(),r]),a=m.create(i,Dee);if("error"in a)throw new ue(a.error,`airdrop to ${e.toBase58()} failed`);return a.result}async _blockhashWithExpiryBlockHeight(e){if(!e){for(;this._pollingBlockhash;)await ul(100);let i=Date.now()-this._blockhashInfo.lastFetch>=kD;if(this._blockhashInfo.latestBlockhash!==null&&!i)return this._blockhashInfo.latestBlockhash}return await this._pollNewBlockhash()}async _pollNewBlockhash(){this._pollingBlockhash=!0;try{let e=Date.now(),r=this._blockhashInfo.latestBlockhash,i=r?r.blockhash:null;for(let a=0;a<50;a++){let n=await this.getLatestBlockhash("finalized");if(i!==n.blockhash)return this._blockhashInfo={latestBlockhash:n,lastFetch:Date.now(),transactionSignatures:[],simulatedSignatures:[]},n;await ul(hD/2)}throw new Error(`Unable to obtain a new blockhash after ${Date.now()-e}ms`)}finally{this._pollingBlockhash=!1}}async getStakeMinimumDelegation(e){let{commitment:r,config:i}=vt(e),a=this._buildArgs([],r,"base64",i),n=await this._rpcRequest("getStakeMinimumDelegation",a),s=m.create(n,Bt(m.number()));if("error"in s)throw new ue(s.error,"failed to get stake minimum delegation");return s.result}async simulateTransaction(e,r,i){if("message"in e){let _=e.serialize(),T=ge.Buffer.from(_).toString("base64");if(Array.isArray(r)||i!==void 0)throw new Error("Invalid arguments");let D=r||{};D.encoding="base64","commitment"in D||(D.commitment=this.commitment);let V=[T,D],R=await this._rpcRequest("simulateTransaction",V),B=m.create(R,YM);if("error"in B)throw new Error("failed to simulate transaction: "+B.error.message);return B.result}let a;if(e instanceof Qe){let z=e;a=new Qe,a.feePayer=z.feePayer,a.instructions=e.instructions,a.nonceInfo=z.nonceInfo,a.signatures=z.signatures}else a=Qe.populate(e),a._message=a._json=void 0;if(r!==void 0&&!Array.isArray(r))throw new Error("Invalid arguments");let n=r;if(a.nonceInfo&&n)a.sign(...n);else{let z=this._disableBlockhashCaching;for(;;){let _=await this._blockhashWithExpiryBlockHeight(z);if(a.lastValidBlockHeight=_.lastValidBlockHeight,a.recentBlockhash=_.blockhash,!n)break;if(a.sign(...n),!a.signature)throw new Error("!signature");let T=a.signature.toString("base64");if(!this._blockhashInfo.simulatedSignatures.includes(T)&&!this._blockhashInfo.transactionSignatures.includes(T)){this._blockhashInfo.simulatedSignatures.push(T);break}else z=!0}}let s=a._compile(),o=s.serialize(),d=a._serialize(o).toString("base64"),u={encoding:"base64",commitment:this.commitment};if(i){let z=(Array.isArray(i)?i:s.nonProgramIds()).map(_=>_.toBase58());u.accounts={encoding:"base64",addresses:z}}n&&(u.sigVerify=!0);let c=[d,u],w=await this._rpcRequest("simulateTransaction",c),k=m.create(w,YM);if("error"in k){let z;if("data"in k.error&&(z=k.error.data.logs,z&&Array.isArray(z))){let _=` - `,T=_+z.join(_);console.error(k.error.message,T)}throw new B0("failed to simulate transaction: "+k.error.message,z)}return k.result}async sendTransaction(e,r,i){if("version"in e){if(r&&Array.isArray(r))throw new Error("Invalid arguments");let s=e.serialize();return await this.sendRawTransaction(s,r)}if(r===void 0||!Array.isArray(r))throw new Error("Invalid arguments");let a=r;if(e.nonceInfo)e.sign(...a);else{let s=this._disableBlockhashCaching;for(;;){let o=await this._blockhashWithExpiryBlockHeight(s);if(e.lastValidBlockHeight=o.lastValidBlockHeight,e.recentBlockhash=o.blockhash,e.sign(...a),!e.signature)throw new Error("!signature");let l=e.signature.toString("base64");if(this._blockhashInfo.transactionSignatures.includes(l))s=!0;else{this._blockhashInfo.transactionSignatures.push(l);break}}}let n=e.serialize();return await this.sendRawTransaction(n,i)}async sendRawTransaction(e,r){let i=Re(e).toString("base64");return await this.sendEncodedTransaction(i,r)}async sendEncodedTransaction(e,r){let i={encoding:"base64"},a=r&&r.skipPreflight,n=r&&r.preflightCommitment||this.commitment;r&&r.maxRetries!=null&&(i.maxRetries=r.maxRetries),r&&r.minContextSlot!=null&&(i.minContextSlot=r.minContextSlot),a&&(i.skipPreflight=a),n&&(i.preflightCommitment=n);let s=[e,i],o=await this._rpcRequest("sendTransaction",s),l=m.create(o,Ree);if("error"in l){let d;throw"data"in l.error&&(d=l.error.data.logs),new B0("failed to send transaction: "+l.error.message,d)}return l.result}_wsOnOpen(){this._rpcWebSocketConnected=!0,this._rpcWebSocketHeartbeat=setInterval(()=>{(async()=>{try{await this._rpcWebSocket.notify("ping")}catch{}})()},5e3),this._updateSubscriptions()}_wsOnError(e){this._rpcWebSocketConnected=!1,console.error("ws error:",e.message)}_wsOnClose(e){if(this._rpcWebSocketConnected=!1,this._rpcWebSocketGeneration=(this._rpcWebSocketGeneration+1)%Number.MAX_SAFE_INTEGER,this._rpcWebSocketIdleTimeout&&(clearTimeout(this._rpcWebSocketIdleTimeout),this._rpcWebSocketIdleTimeout=null),this._rpcWebSocketHeartbeat&&(clearInterval(this._rpcWebSocketHeartbeat),this._rpcWebSocketHeartbeat=null),e===1e3){this._updateSubscriptions();return}this._subscriptionCallbacksByServerSubscriptionId={},Object.entries(this._subscriptionsByHash).forEach(([r,i])=>{this._setSubscription(r,{...i,state:"pending"})})}_setSubscription(e,r){let i=this._subscriptionsByHash[e]?.state;if(this._subscriptionsByHash[e]=r,i!==r.state){let a=this._subscriptionStateChangeCallbacksByHash[e];a&&a.forEach(n=>{try{n(r.state)}catch{}})}}_onSubscriptionStateChange(e,r){let i=this._subscriptionHashByClientSubscriptionId[e];if(i==null)return()=>{};let a=this._subscriptionStateChangeCallbacksByHash[i]||=new Set;return a.add(r),()=>{a.delete(r),a.size===0&&delete this._subscriptionStateChangeCallbacksByHash[i]}}async _updateSubscriptions(){if(Object.keys(this._subscriptionsByHash).length===0){this._rpcWebSocketConnected&&(this._rpcWebSocketConnected=!1,this._rpcWebSocketIdleTimeout=setTimeout(()=>{this._rpcWebSocketIdleTimeout=null;try{this._rpcWebSocket.close()}catch(i){i instanceof Error&&console.log(`Error when closing socket connection: ${i.message}`)}},500));return}if(this._rpcWebSocketIdleTimeout!==null&&(clearTimeout(this._rpcWebSocketIdleTimeout),this._rpcWebSocketIdleTimeout=null,this._rpcWebSocketConnected=!0),!this._rpcWebSocketConnected){this._rpcWebSocket.connect();return}let e=this._rpcWebSocketGeneration,r=()=>e===this._rpcWebSocketGeneration;await Promise.all(Object.keys(this._subscriptionsByHash).map(async i=>{let a=this._subscriptionsByHash[i];if(a!==void 0)switch(a.state){case"pending":case"unsubscribed":if(a.callbacks.size===0){delete this._subscriptionsByHash[i],a.state==="unsubscribed"&&delete this._subscriptionCallbacksByServerSubscriptionId[a.serverSubscriptionId],await this._updateSubscriptions();return}await(async()=>{let{args:n,method:s}=a;try{this._setSubscription(i,{...a,state:"subscribing"});let o=await this._rpcWebSocket.call(s,n);this._setSubscription(i,{...a,serverSubscriptionId:o,state:"subscribed"}),this._subscriptionCallbacksByServerSubscriptionId[o]=a.callbacks,await this._updateSubscriptions()}catch(o){if(o instanceof Error&&console.error(`${s} error for argument`,n,o.message),!r())return;this._setSubscription(i,{...a,state:"pending"}),await this._updateSubscriptions()}})();break;case"subscribed":a.callbacks.size===0&&await(async()=>{let{serverSubscriptionId:n,unsubscribeMethod:s}=a;if(this._subscriptionsAutoDisposedByRpc.has(n))this._subscriptionsAutoDisposedByRpc.delete(n);else{this._setSubscription(i,{...a,state:"unsubscribing"}),this._setSubscription(i,{...a,state:"unsubscribing"});try{await this._rpcWebSocket.call(s,[n])}catch(o){if(o instanceof Error&&console.error(`${s} error:`,o.message),!r())return;this._setSubscription(i,{...a,state:"subscribed"}),await this._updateSubscriptions();return}}this._setSubscription(i,{...a,state:"unsubscribed"}),await this._updateSubscriptions()})();break}}))}_handleServerNotification(e,r){let i=this._subscriptionCallbacksByServerSubscriptionId[e];i!==void 0&&i.forEach(a=>{try{a(...r)}catch(n){console.error(n)}})}_wsOnAccountNotification(e){let{result:r,subscription:i}=m.create(e,ree);this._handleServerNotification(i,[r.value,r.context])}_makeSubscription(e,r){let i=this._nextClientSubscriptionId++,a=ZM([e.method,r],!0),n=this._subscriptionsByHash[a];return n===void 0?this._subscriptionsByHash[a]={...e,args:r,callbacks:new Set([e.callback]),state:"pending"}:n.callbacks.add(e.callback),this._subscriptionHashByClientSubscriptionId[i]=a,this._subscriptionDisposeFunctionsByClientSubscriptionId[i]=async()=>{delete this._subscriptionDisposeFunctionsByClientSubscriptionId[i],delete this._subscriptionHashByClientSubscriptionId[i];let s=this._subscriptionsByHash[a];je(s!==void 0,`Could not find a \`Subscription\` when tearing down client subscription #${i}`),s.callbacks.delete(e.callback),await this._updateSubscriptions()},this._updateSubscriptions(),i}onAccountChange(e,r,i){let a=this._buildArgs([e.toBase58()],i||this._commitment||"finalized","base64");return this._makeSubscription({callback:r,method:"accountSubscribe",unsubscribeMethod:"accountUnsubscribe"},a)}async removeAccountChangeListener(e){await this._unsubscribeClientSubscription(e,"account change")}_wsOnProgramAccountNotification(e){let{result:r,subscription:i}=m.create(e,aee);this._handleServerNotification(i,[{accountId:r.value.pubkey,accountInfo:r.value.account},r.context])}onProgramAccountChange(e,r,i,a){let n=this._buildArgs([e.toBase58()],i||this._commitment||"finalized","base64",a?{filters:a}:void 0);return this._makeSubscription({callback:r,method:"programSubscribe",unsubscribeMethod:"programUnsubscribe"},n)}async removeProgramAccountChangeListener(e){await this._unsubscribeClientSubscription(e,"program account change")}onLogs(e,r,i){let a=this._buildArgs([typeof e=="object"?{mentions:[e.toString()]}:e],i||this._commitment||"finalized");return this._makeSubscription({callback:r,method:"logsSubscribe",unsubscribeMethod:"logsUnsubscribe"},a)}async removeOnLogsListener(e){await this._unsubscribeClientSubscription(e,"logs")}_wsOnLogsNotification(e){let{result:r,subscription:i}=m.create(e,Cee);this._handleServerNotification(i,[r.value,r.context])}_wsOnSlotNotification(e){let{result:r,subscription:i}=m.create(e,see);this._handleServerNotification(i,[r])}onSlotChange(e){return this._makeSubscription({callback:e,method:"slotSubscribe",unsubscribeMethod:"slotUnsubscribe"},[])}async removeSlotChangeListener(e){await this._unsubscribeClientSubscription(e,"slot change")}_wsOnSlotUpdatesNotification(e){let{result:r,subscription:i}=m.create(e,lee);this._handleServerNotification(i,[r])}onSlotUpdate(e){return this._makeSubscription({callback:e,method:"slotsUpdatesSubscribe",unsubscribeMethod:"slotsUpdatesUnsubscribe"},[])}async removeSlotUpdateListener(e){await this._unsubscribeClientSubscription(e,"slot update")}async _unsubscribeClientSubscription(e,r){let i=this._subscriptionDisposeFunctionsByClientSubscriptionId[e];i?await i():console.warn(`Ignored unsubscribe request because an active subscription with id \`${e}\` for '${r}' events could not be found.`)}_buildArgs(e,r,i,a){let n=r||this._commitment;if(n||i||a){let s={};i&&(s.encoding=i),n&&(s.commitment=n),a&&(s=Object.assign(s,a)),e.push(s)}return e}_buildArgsAtLeastConfirmed(e,r,i,a){let n=r||this._commitment;if(n&&!["confirmed","finalized"].includes(n))throw new Error("Using Connection with default commitment: `"+this._commitment+"`, but method requires at least `confirmed`");return this._buildArgs(e,r,i,a)}_wsOnSignatureNotification(e){let{result:r,subscription:i}=m.create(e,dee);r.value!=="receivedSignature"&&this._subscriptionsAutoDisposedByRpc.add(i),this._handleServerNotification(i,r.value==="receivedSignature"?[{type:"received"},r.context]:[{type:"status",result:r.value},r.context])}onSignature(e,r,i){let a=this._buildArgs([e],i||this._commitment||"finalized"),n=this._makeSubscription({callback:(s,o)=>{if(s.type==="status"){r(s.result,o);try{this.removeSignatureListener(n)}catch{}}},method:"signatureSubscribe",unsubscribeMethod:"signatureUnsubscribe"},a);return n}onSignatureWithOptions(e,r,i){let{commitment:a,...n}={...i,commitment:i&&i.commitment||this._commitment||"finalized"},s=this._buildArgs([e],a,void 0,n),o=this._makeSubscription({callback:(l,d)=>{r(l,d);try{this.removeSignatureListener(o)}catch{}},method:"signatureSubscribe",unsubscribeMethod:"signatureUnsubscribe"},s);return o}async removeSignatureListener(e){await this._unsubscribeClientSubscription(e,"signature result")}_wsOnRootNotification(e){let{result:r,subscription:i}=m.create(e,uee);this._handleServerNotification(i,[r])}onRootChange(e){return this._makeSubscription({callback:e,method:"rootSubscribe",unsubscribeMethod:"rootUnsubscribe"},[])}async removeRootChangeListener(e){await this._unsubscribeClientSubscription(e,"root change")}},y3=class t{constructor(e){this._keypair=void 0,this._keypair=e??NM()}static generate(){return new t(NM())}static fromSecretKey(e,r){if(e.byteLength!==64)throw new Error("bad secret key size");let i=e.slice(32,64);if(!r||!r.skipValidation){let a=e.slice(0,32),n=c3(a);for(let s=0;s<32;s++)if(i[s]!==n[s])throw new Error("provided secretKey is invalid")}return new t({publicKey:i,secretKey:e})}static fromSeed(e){let r=c3(e),i=new Uint8Array(64);return i.set(e),i.set(r,32),new t({publicKey:r,secretKey:i})}get publicKey(){return new te(this._keypair.publicKey)}get secretKey(){return new Uint8Array(this._keypair.secretKey)}},Ln=Object.freeze({CreateLookupTable:{index:0,layout:M.struct([M.u32("instruction"),Q1("recentSlot"),M.u8("bumpSeed")])},FreezeLookupTable:{index:1,layout:M.struct([M.u32("instruction")])},ExtendLookupTable:{index:2,layout:M.struct([M.u32("instruction"),Q1(),M.seq(qe(),M.offset(M.u32(),-8),"addresses")])},DeactivateLookupTable:{index:3,layout:M.struct([M.u32("instruction")])},CloseLookupTable:{index:4,layout:M.struct([M.u32("instruction")])}}),bv=class{constructor(){}static decodeInstructionType(e){this.checkProgramId(e.programId);let i=M.u32("instruction").decode(e.data),a;for(let[n,s]of Object.entries(Ln))if(s.index==i){a=n;break}if(!a)throw new Error("Invalid Instruction. Should be a LookupTable Instruction");return a}static decodeCreateLookupTable(e){this.checkProgramId(e.programId),this.checkKeysLength(e.keys,4);let{recentSlot:r}=Je(Ln.CreateLookupTable,e.data);return{authority:e.keys[1].pubkey,payer:e.keys[2].pubkey,recentSlot:Number(r)}}static decodeExtendLookupTable(e){if(this.checkProgramId(e.programId),e.keys.length<2)throw new Error(`invalid instruction; found ${e.keys.length} keys, expected at least 2`);let{addresses:r}=Je(Ln.ExtendLookupTable,e.data);return{lookupTable:e.keys[0].pubkey,authority:e.keys[1].pubkey,payer:e.keys.length>2?e.keys[2].pubkey:void 0,addresses:r.map(i=>new te(i))}}static decodeCloseLookupTable(e){return this.checkProgramId(e.programId),this.checkKeysLength(e.keys,3),{lookupTable:e.keys[0].pubkey,authority:e.keys[1].pubkey,recipient:e.keys[2].pubkey}}static decodeFreezeLookupTable(e){return this.checkProgramId(e.programId),this.checkKeysLength(e.keys,2),{lookupTable:e.keys[0].pubkey,authority:e.keys[1].pubkey}}static decodeDeactivateLookupTable(e){return this.checkProgramId(e.programId),this.checkKeysLength(e.keys,2),{lookupTable:e.keys[0].pubkey,authority:e.keys[1].pubkey}}static checkProgramId(e){if(!e.equals(N0.programId))throw new Error("invalid instruction; programId is not AddressLookupTable Program")}static checkKeysLength(e,r){if(e.lengthn.toBytes())}),a=[{pubkey:e.lookupTable,isSigner:!1,isWritable:!0},{pubkey:e.authority,isSigner:!0,isWritable:!1}];return e.payer&&a.push({pubkey:e.payer,isSigner:!0,isWritable:!0},{pubkey:ii.programId,isSigner:!1,isWritable:!1}),new Xe({programId:this.programId,keys:a,data:i})}static deactivateLookupTable(e){let r=Ln.DeactivateLookupTable,i=Ke(r),a=[{pubkey:e.lookupTable,isSigner:!1,isWritable:!0},{pubkey:e.authority,isSigner:!0,isWritable:!1}];return new Xe({programId:this.programId,keys:a,data:i})}static closeLookupTable(e){let r=Ln.CloseLookupTable,i=Ke(r),a=[{pubkey:e.lookupTable,isSigner:!1,isWritable:!0},{pubkey:e.authority,isSigner:!0,isWritable:!1},{pubkey:e.recipient,isSigner:!1,isWritable:!0}];return new Xe({programId:this.programId,keys:a,data:i})}};N0.programId=new te("AddressLookupTab1e1111111111111111111111111");var vv=class{constructor(){}static decodeInstructionType(e){this.checkProgramId(e.programId);let i=M.u8("instruction").decode(e.data),a;for(let[n,s]of Object.entries(an))if(s.index==i){a=n;break}if(!a)throw new Error("Instruction type incorrect; not a ComputeBudgetInstruction");return a}static decodeRequestUnits(e){this.checkProgramId(e.programId);let{units:r,additionalFee:i}=Je(an.RequestUnits,e.data);return{units:r,additionalFee:i}}static decodeRequestHeapFrame(e){this.checkProgramId(e.programId);let{bytes:r}=Je(an.RequestHeapFrame,e.data);return{bytes:r}}static decodeSetComputeUnitLimit(e){this.checkProgramId(e.programId);let{units:r}=Je(an.SetComputeUnitLimit,e.data);return{units:r}}static decodeSetComputeUnitPrice(e){this.checkProgramId(e.programId);let{microLamports:r}=Je(an.SetComputeUnitPrice,e.data);return{microLamports:r}}static checkProgramId(e){if(!e.equals(q0.programId))throw new Error("invalid instruction; programId is not ComputeBudgetProgram")}},an=Object.freeze({RequestUnits:{index:0,layout:M.struct([M.u8("instruction"),M.u32("units"),M.u32("additionalFee")])},RequestHeapFrame:{index:1,layout:M.struct([M.u8("instruction"),M.u32("bytes")])},SetComputeUnitLimit:{index:2,layout:M.struct([M.u8("instruction"),M.u32("units")])},SetComputeUnitPrice:{index:3,layout:M.struct([M.u8("instruction"),Q1("microLamports")])}}),q0=class{constructor(){}static requestUnits(e){let r=an.RequestUnits,i=Ke(r,e);return new Xe({keys:[],programId:this.programId,data:i})}static requestHeapFrame(e){let r=an.RequestHeapFrame,i=Ke(r,e);return new Xe({keys:[],programId:this.programId,data:i})}static setComputeUnitLimit(e){let r=an.SetComputeUnitLimit,i=Ke(r,e);return new Xe({keys:[],programId:this.programId,data:i})}static setComputeUnitPrice(e){let r=an.SetComputeUnitPrice,i=Ke(r,{microLamports:BigInt(e.microLamports)});return new Xe({keys:[],programId:this.programId,data:i})}};q0.programId=new te("ComputeBudget111111111111111111111111111111");var eD=64,tD=32,rD=64,iD=M.struct([M.u8("numSignatures"),M.u8("padding"),M.u16("signatureOffset"),M.u16("signatureInstructionIndex"),M.u16("publicKeyOffset"),M.u16("publicKeyInstructionIndex"),M.u16("messageDataOffset"),M.u16("messageDataSize"),M.u16("messageInstructionIndex")]),b3=class t{constructor(){}static createInstructionWithPublicKey(e){let{publicKey:r,message:i,signature:a,instructionIndex:n}=e;je(r.length===tD,`Public Key must be ${tD} bytes but received ${r.length} bytes`),je(a.length===rD,`Signature must be ${rD} bytes but received ${a.length} bytes`);let s=iD.span,o=s+r.length,l=o+a.length,d=1,u=ge.Buffer.alloc(l+i.length),c=n??65535;return iD.encode({numSignatures:d,padding:0,signatureOffset:o,signatureInstructionIndex:c,publicKeyOffset:s,publicKeyInstructionIndex:c,messageDataOffset:l,messageDataSize:i.length,messageInstructionIndex:c},u),u.fill(r,s),u.fill(a,o),u.fill(i,l),new Xe({keys:[],programId:t.programId,data:u})}static createInstructionWithPrivateKey(e){let{privateKey:r,message:i,instructionIndex:a}=e;je(r.length===eD,`Private key must be ${eD} bytes but received ${r.length} bytes`);try{let n=y3.fromSecretKey(r),s=n.publicKey.toBytes(),o=kv(i,n.secretKey);return this.createInstructionWithPublicKey({publicKey:s,message:i,signature:o,instructionIndex:a})}catch(n){throw new Error(`Error creating instruction; ${n}`)}}};b3.programId=new te("Ed25519SigVerify111111111111111111111111111");var Nee=(t,e)=>{let r=_v.secp256k1.sign(t,e);return[r.toCompactRawBytes(),r.recovery]};_v.secp256k1.utils.isValidPrivateKey;var qee=_v.secp256k1.getPublicKey,aD=32,Yb=20,nD=64,Wee=11,Qb=M.struct([M.u8("numSignatures"),M.u16("signatureOffset"),M.u8("signatureInstructionIndex"),M.u16("ethAddressOffset"),M.u8("ethAddressInstructionIndex"),M.u16("messageDataOffset"),M.u16("messageDataSize"),M.u8("messageInstructionIndex"),M.blob(20,"ethAddress"),M.blob(64,"signature"),M.u8("recoveryId")]),v3=class t{constructor(){}static publicKeyToEthAddress(e){je(e.length===nD,`Public key must be ${nD} bytes but received ${e.length} bytes`);try{return ge.Buffer.from(CM.keccak_256(Re(e))).slice(-Yb)}catch(r){throw new Error(`Error constructing Ethereum address: ${r}`)}}static createInstructionWithPublicKey(e){let{publicKey:r,message:i,signature:a,recoveryId:n,instructionIndex:s}=e;return t.createInstructionWithEthAddress({ethAddress:t.publicKeyToEthAddress(r),message:i,signature:a,recoveryId:n,instructionIndex:s})}static createInstructionWithEthAddress(e){let{ethAddress:r,message:i,signature:a,recoveryId:n,instructionIndex:s=0}=e,o;typeof r=="string"?r.startsWith("0x")?o=ge.Buffer.from(r.substr(2),"hex"):o=ge.Buffer.from(r,"hex"):o=r,je(o.length===Yb,`Address must be ${Yb} bytes but received ${o.length} bytes`);let l=1+Wee,d=l,u=l+o.length,c=u+a.length+1,w=1,k=ge.Buffer.alloc(Qb.span+i.length);return Qb.encode({numSignatures:w,signatureOffset:u,signatureInstructionIndex:s,ethAddressOffset:d,ethAddressInstructionIndex:s,messageDataOffset:c,messageDataSize:i.length,messageInstructionIndex:s,signature:Re(a),ethAddress:Re(o),recoveryId:n},k),k.fill(Re(i),Qb.span),new Xe({keys:[],programId:t.programId,data:k})}static createInstructionWithPrivateKey(e){let{privateKey:r,message:i,instructionIndex:a}=e;je(r.length===aD,`Private key must be ${aD} bytes but received ${r.length} bytes`);try{let n=Re(r),s=qee(n,!1).slice(1),o=ge.Buffer.from(CM.keccak_256(Re(i))),[l,d]=Nee(o,n);return this.createInstructionWithPublicKey({publicKey:s,message:i,signature:l,recoveryId:d,instructionIndex:a})}catch(n){throw new Error(`Error creating instruction; ${n}`)}}};v3.programId=new te("KeccakSecp256k11111111111111111111111111111");var CD,OD=new te("StakeConfig11111111111111111111111111111111"),S3=class{constructor(e,r){this.staker=void 0,this.withdrawer=void 0,this.staker=e,this.withdrawer=r}},fl=class{constructor(e,r,i){this.unixTimestamp=void 0,this.epoch=void 0,this.custodian=void 0,this.unixTimestamp=e,this.epoch=r,this.custodian=i}};CD=fl;fl.default=new CD(0,0,te.default);var Sv=class{constructor(){}static decodeInstructionType(e){this.checkProgramId(e.programId);let i=M.u32("instruction").decode(e.data),a;for(let[n,s]of Object.entries(Rr))if(s.index==i){a=n;break}if(!a)throw new Error("Instruction type incorrect; not a StakeInstruction");return a}static decodeInitialize(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,2);let{authorized:r,lockup:i}=Je(Rr.Initialize,e.data);return{stakePubkey:e.keys[0].pubkey,authorized:new S3(new te(r.staker),new te(r.withdrawer)),lockup:new fl(i.unixTimestamp,i.epoch,new te(i.custodian))}}static decodeDelegate(e){return this.checkProgramId(e.programId),this.checkKeyLength(e.keys,6),Je(Rr.Delegate,e.data),{stakePubkey:e.keys[0].pubkey,votePubkey:e.keys[1].pubkey,authorizedPubkey:e.keys[5].pubkey}}static decodeAuthorize(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,3);let{newAuthorized:r,stakeAuthorizationType:i}=Je(Rr.Authorize,e.data),a={stakePubkey:e.keys[0].pubkey,authorizedPubkey:e.keys[2].pubkey,newAuthorizedPubkey:new te(r),stakeAuthorizationType:{index:i}};return e.keys.length>3&&(a.custodianPubkey=e.keys[3].pubkey),a}static decodeAuthorizeWithSeed(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,2);let{newAuthorized:r,stakeAuthorizationType:i,authoritySeed:a,authorityOwner:n}=Je(Rr.AuthorizeWithSeed,e.data),s={stakePubkey:e.keys[0].pubkey,authorityBase:e.keys[1].pubkey,authoritySeed:a,authorityOwner:new te(n),newAuthorizedPubkey:new te(r),stakeAuthorizationType:{index:i}};return e.keys.length>3&&(s.custodianPubkey=e.keys[3].pubkey),s}static decodeSplit(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,3);let{lamports:r}=Je(Rr.Split,e.data);return{stakePubkey:e.keys[0].pubkey,splitStakePubkey:e.keys[1].pubkey,authorizedPubkey:e.keys[2].pubkey,lamports:r}}static decodeMerge(e){return this.checkProgramId(e.programId),this.checkKeyLength(e.keys,3),Je(Rr.Merge,e.data),{stakePubkey:e.keys[0].pubkey,sourceStakePubKey:e.keys[1].pubkey,authorizedPubkey:e.keys[4].pubkey}}static decodeWithdraw(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,5);let{lamports:r}=Je(Rr.Withdraw,e.data),i={stakePubkey:e.keys[0].pubkey,toPubkey:e.keys[1].pubkey,authorizedPubkey:e.keys[4].pubkey,lamports:r};return e.keys.length>5&&(i.custodianPubkey=e.keys[5].pubkey),i}static decodeDeactivate(e){return this.checkProgramId(e.programId),this.checkKeyLength(e.keys,3),Je(Rr.Deactivate,e.data),{stakePubkey:e.keys[0].pubkey,authorizedPubkey:e.keys[2].pubkey}}static checkProgramId(e){if(!e.equals(id.programId))throw new Error("invalid instruction; programId is not StakeProgram")}static checkKeyLength(e,r){if(e.lengthr-i)throw new Error("Withdraw will leave vote account with insuffcient funds.");return t.withdraw(e)}};ad.programId=new te("Vote111111111111111111111111111111111111111");ad.space=3731;var ND=new te("Va1idator1nfo111111111111111111111111111111"),Kee=m.type({name:m.string(),website:m.optional(m.string()),details:m.optional(m.string()),keybaseUsername:m.optional(m.string())}),xv=class t{constructor(e,r){this.key=void 0,this.info=void 0,this.key=e,this.info=r}static fromConfigData(e){let r=[...e];if(xi(r)!==2)return null;let a=[];for(let n=0;n<2;n++){let s=new te(r.slice(0,qi));r=r.slice(qi);let o=r.slice(0,1)[0]===1;r=r.slice(1),a.push({publicKey:s,isSigner:o})}if(a[0].publicKey.equals(ND)&&a[1].isSigner){let n=cl().decode(ge.Buffer.from(r)),s=JSON.parse(n);return m.assert(s,Kee),new t(a[1].publicKey,s)}return null}},Lee=new te("Vote111111111111111111111111111111111111111"),Uee=M.struct([qe("nodePubkey"),qe("authorizedWithdrawer"),M.u8("commission"),M.nu64(),M.seq(M.struct([M.nu64("slot"),M.u32("confirmationCount")]),M.offset(M.u32(),-8),"votes"),M.u8("rootSlotValid"),M.nu64("rootSlot"),M.nu64(),M.seq(M.struct([M.nu64("epoch"),qe("authorizedVoter")]),M.offset(M.u32(),-8),"authorizedVoters"),M.struct([M.seq(M.struct([qe("authorizedPubkey"),M.nu64("epochOfLastAuthorizedSwitch"),M.nu64("targetEpoch")]),32,"buf"),M.nu64("idx"),M.u8("isEmpty")],"priorVoters"),M.nu64(),M.seq(M.struct([M.nu64("epoch"),M.nu64("credits"),M.nu64("prevCredits")]),M.offset(M.u32(),-8),"epochCredits"),M.struct([M.nu64("slot"),M.nu64("timestamp")],"lastTimestamp")]),Av=class t{constructor(e){this.nodePubkey=void 0,this.authorizedWithdrawer=void 0,this.commission=void 0,this.rootSlot=void 0,this.votes=void 0,this.authorizedVoters=void 0,this.priorVoters=void 0,this.epochCredits=void 0,this.lastTimestamp=void 0,this.nodePubkey=e.nodePubkey,this.authorizedWithdrawer=e.authorizedWithdrawer,this.commission=e.commission,this.rootSlot=e.rootSlot,this.votes=e.votes,this.authorizedVoters=e.authorizedVoters,this.priorVoters=e.priorVoters,this.epochCredits=e.epochCredits,this.lastTimestamp=e.lastTimestamp}static fromAccountData(e){let i=Uee.decode(Re(e),4),a=i.rootSlot;return i.rootSlotValid||(a=null),new t({nodePubkey:new te(i.nodePubkey),authorizedWithdrawer:new te(i.authorizedWithdrawer),commission:i.commission,votes:i.votes,rootSlot:a,authorizedVoters:i.authorizedVoters.map(jee),priorVoters:Hee(i.priorVoters),epochCredits:i.epochCredits,lastTimestamp:i.lastTimestamp})}};function jee({authorizedVoter:t,epoch:e}){return{epoch:e,authorizedVoter:new te(t)}}function sD({authorizedPubkey:t,epochOfLastAuthorizedSwitch:e,targetEpoch:r}){return{authorizedPubkey:new te(t),epochOfLastAuthorizedSwitch:e,targetEpoch:r}}function Hee({buf:t,idx:e,isEmpty:r}){return r?[]:[...t.slice(e+1).map(sD),...t.slice(0,e).map(sD)]}var oD={http:{devnet:"http://api.devnet.solana.com",testnet:"http://api.testnet.solana.com","mainnet-beta":"http://api.mainnet-beta.solana.com/"},https:{devnet:"https://api.devnet.solana.com",testnet:"https://api.testnet.solana.com","mainnet-beta":"https://api.mainnet-beta.solana.com/"}};function $ee(t,e){let r=e===!1?"http":"https";if(!t)return oD[r].devnet;let i=oD[r][t];if(!i)throw new Error(`Unknown ${r} cluster: ${t}`);return i}async function Gee(t,e,r,i){let a,n;r&&Object.prototype.hasOwnProperty.call(r,"lastValidBlockHeight")||r&&Object.prototype.hasOwnProperty.call(r,"nonceValue")?(a=r,n=i):n=r;let s=n&&{skipPreflight:n.skipPreflight,preflightCommitment:n.preflightCommitment||n.commitment,minContextSlot:n.minContextSlot},o=await t.sendRawTransaction(e,s),l=n&&n.commitment,u=(await(a?t.confirmTransaction(a,l):t.confirmTransaction(o,l))).value;if(u.err)throw new Error(`Raw transaction ${o} failed (${JSON.stringify(u)})`);return o}var Zee=1e9;re.Account=rv;re.AddressLookupTableAccount=C0;re.AddressLookupTableInstruction=bv;re.AddressLookupTableProgram=N0;re.Authorized=S3;re.BLOCKHASH_CACHE_TIMEOUT_MS=kD;re.BPF_LOADER_DEPRECATED_PROGRAM_ID=uQ;re.BPF_LOADER_PROGRAM_ID=TQ;re.BpfLoader=lv;re.COMPUTE_BUDGET_INSTRUCTION_LAYOUTS=an;re.ComputeBudgetInstruction=vv;re.ComputeBudgetProgram=q0;re.Connection=yv;re.Ed25519Program=b3;re.Enum=tv;re.EpochSchedule=h3;re.FeeCalculatorLayout=gD;re.Keypair=y3;re.LAMPORTS_PER_SOL=Zee;re.LOOKUP_TABLE_INSTRUCTION_LAYOUTS=Ln;re.Loader=X1;re.Lockup=fl;re.MAX_SEED_LENGTH=mD;re.Message=nn;re.MessageAccountKeys=pl;re.MessageV0=J1;re.NONCE_ACCOUNT_LENGTH=sv;re.NonceAccount=m3;re.PACKET_DATA_SIZE=$s;re.PUBLIC_KEY_LENGTH=qi;re.PublicKey=te;re.SIGNATURE_LENGTH_IN_BYTES=Z1;re.SOLANA_SCHEMA=z0;re.STAKE_CONFIG_ID=OD;re.STAKE_INSTRUCTION_LAYOUTS=Rr;re.SYSTEM_INSTRUCTION_LAYOUTS=pt;re.SYSVAR_CLOCK_PUBKEY=rn;re.SYSVAR_EPOCH_SCHEDULE_PUBKEY=SQ;re.SYSVAR_INSTRUCTIONS_PUBKEY=wQ;re.SYSVAR_RECENT_BLOCKHASHES_PUBKEY=d3;re.SYSVAR_RENT_PUBKEY=Y1;re.SYSVAR_REWARDS_PUBKEY=xQ;re.SYSVAR_SLOT_HASHES_PUBKEY=AQ;re.SYSVAR_SLOT_HISTORY_PUBKEY=_Q;re.SYSVAR_STAKE_HISTORY_PUBKEY=u3;re.Secp256k1Program=v3;re.SendTransactionError=B0;re.SolanaJSONRPCError=ue;re.SolanaJSONRPCErrorCode=gX;re.StakeAuthorizationLayout=Vee;re.StakeInstruction=Sv;re.StakeProgram=id;re.Struct=M0;re.SystemInstruction=ov;re.SystemProgram=ii;re.Transaction=Qe;re.TransactionExpiredBlockheightExceededError=D0;re.TransactionExpiredNonceInvalidError=Hs;re.TransactionExpiredTimeoutError=R0;re.TransactionInstruction=Xe;re.TransactionMessage=iv;re.TransactionStatus=Kn;re.VALIDATOR_INFO_KEY=ND;re.VERSION_PREFIX_MASK=x3;re.VOTE_PROGRAM_ID=Lee;re.ValidatorInfo=xv;re.VersionedMessage=Ev;re.VersionedTransaction=av;re.VoteAccount=Av;re.VoteAuthorizationLayout=Fee;re.VoteInit=w3;re.VoteInstruction=wv;re.VoteProgram=ad;re.clusterApiUrl=$ee;re.sendAndConfirmRawTransaction=Gee;re.sendAndConfirmTransaction=nv});var J3=b(xl=>{"use strict";Object.defineProperty(xl,"__esModule",{value:!0});var dre=t=>({__option:"Some",value:t}),ure=()=>({__option:"None"}),cre=t=>t&&typeof t=="object"&&"__option"in t&&(t.__option==="Some"&&"value"in t||t.__option==="None"),pre=t=>t.__option==="Some",mre=t=>t.__option==="None";xl.isNone=mre;xl.isOption=cre;xl.isSome=pre;xl.none=ure;xl.some=dre});var qR=b(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});var Z0=J3();function fre(t,e){return Z0.isSome(t)?t.value:e?e():null}var hre=t=>t!==null?Z0.some(t):Z0.none(),gre=t=>Z0.isSome(t)?t.value:null,yre=(t,e)=>Z0.isSome(t)?t.value:e();vd.unwrapOption=fre;vd.unwrapSome=gre;vd.unwrapSomeOrElse=yre;vd.wrapNullable=hre});var VR=b(qS=>{"use strict";Object.defineProperty(qS,"__esModule",{value:!0});var WR=J3();function NS(t,e){if(!t||ArrayBuffer.isView(t))return t;let r=i=>e?NS(i,e):NS(i);return WR.isOption(t)?WR.isSome(t)?r(t.value):e?e():null:Array.isArray(t)?t.map(r):typeof t=="object"?Object.fromEntries(Object.entries(t).map(([i,a])=>[i,r(a)])):t}qS.unwrapOptionRecursively=NS});var WS=b(ta=>{"use strict";Object.defineProperty(ta,"__esModule",{value:!0});var J0=J3(),Y3=qR(),bre=VR();ta.isNone=J0.isNone;ta.isOption=J0.isOption;ta.isSome=J0.isSome;ta.none=J0.none;ta.some=J0.some;ta.unwrapOption=Y3.unwrapOption;ta.unwrapSome=Y3.unwrapSome;ta.unwrapSomeOrElse=Y3.unwrapSomeOrElse;ta.wrapNullable=Y3.wrapNullable;ta.unwrapOptionRecursively=bre.unwrapOptionRecursively});var Y0=b(FS=>{"use strict";Object.defineProperty(FS,"__esModule",{value:!0});var VS=class extends Error{name="InvalidBaseStringError";constructor(e,r,i){let a=`Expected a string of base ${r}, got [${e}].`;super(a),this.cause=i}};FS.InvalidBaseStringError=VS});var Q3=b(KS=>{"use strict";Object.defineProperty(KS,"__esModule",{value:!0});var vre=Y0(),Sre=t=>{let e=t.length,r=BigInt(e);return{description:`base${e}`,fixedSize:null,maxSize:null,serialize(i){if(!i.match(new RegExp(`^[${t}]*$`)))throw new vre.InvalidBaseStringError(i,e);if(i==="")return new Uint8Array;let a=[...i],n=a.findIndex(c=>c!==t[0]);n=n===-1?a.length:n;let s=Array(n).fill(0);if(n===a.length)return Uint8Array.from(s);let o=a.slice(n),l=0n,d=1n;for(let c=o.length-1;c>=0;c-=1)l+=d*BigInt(t.indexOf(o[c])),d*=r;let u=[];for(;l>0n;)u.unshift(Number(l%256n)),l/=256n;return Uint8Array.from(s.concat(u))},deserialize(i,a=0){if(i.length===0)return["",0];let n=i.slice(a),s=n.findIndex(u=>u!==0);s=s===-1?n.length:s;let o=t[0].repeat(s);if(s===n.length)return[o,i.length];let l=n.slice(s).reduce((u,c)=>u*256n+BigInt(c),0n),d=[];for(;l>0n;)d.unshift(t[Number(l%r)]),l/=r;return[o+d.join(""),i.length]}}};KS.baseX=Sre});var FR=b(LS=>{"use strict";Object.defineProperty(LS,"__esModule",{value:!0});var wre=Q3(),xre=wre.baseX("0123456789");LS.base10=xre});var KR=b(US=>{"use strict";Object.defineProperty(US,"__esModule",{value:!0});var Are=Y0(),_re={description:"base16",fixedSize:null,maxSize:null,serialize(t){let e=t.toLowerCase();if(!e.match(/^[0123456789abcdef]*$/))throw new Are.InvalidBaseStringError(t,16);let r=e.match(/.{1,2}/g);return Uint8Array.from(r?r.map(i=>parseInt(i,16)):[])},deserialize(t,e=0){return[t.slice(e).reduce((i,a)=>i+a.toString(16).padStart(2,"0"),""),t.length]}};US.base16=_re});var LR=b(jS=>{"use strict";Object.defineProperty(jS,"__esModule",{value:!0});var kre=Q3(),Ere=kre.baseX("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz");jS.base58=Ere});var X3=b(Q0=>{"use strict";Object.defineProperty(Q0,"__esModule",{value:!0});var Pre=t=>{let e=t.reduce((a,n)=>a+n.length,0),r=new Uint8Array(e),i=0;return t.forEach(a=>{r.set(a,i),i+=a.length}),r},UR=(t,e)=>{if(t.length>=e)return t;let r=new Uint8Array(e).fill(0);return r.set(t),r},Tre=(t,e)=>UR(t.slice(0,e),e);Q0.fixBytes=Tre;Q0.mergeBytes=Pre;Q0.padBytes=UR});var eg=b(X0=>{"use strict";Object.defineProperty(X0,"__esModule",{value:!0});var HS=class extends Error{name="DeserializingEmptyBufferError";constructor(e){super(`Serializer [${e}] cannot deserialize empty buffers.`)}},$S=class extends Error{name="NotEnoughBytesError";constructor(e,r,i){super(`Serializer [${e}] expected ${r} bytes, got ${i}.`)}},GS=class extends Error{name="ExpectedFixedSizeSerializerError";constructor(e){e??="Expected a fixed-size serializer, got a variable-size one.",super(e)}};X0.DeserializingEmptyBufferError=HS;X0.ExpectedFixedSizeSerializerError=GS;X0.NotEnoughBytesError=$S});var HR=b(ZS=>{"use strict";Object.defineProperty(ZS,"__esModule",{value:!0});var jR=X3(),zre=eg();function Ire(t,e,r){return{description:r??`fixed(${e}, ${t.description})`,fixedSize:e,maxSize:e,serialize:i=>jR.fixBytes(t.serialize(i),e),deserialize:(i,a=0)=>{if(i=i.slice(a,a+e),i.length{"use strict";Object.defineProperty(JS,"__esModule",{value:!0});function Mre(t,e,r){return{description:t.description,fixedSize:t.fixedSize,maxSize:t.maxSize,serialize:i=>t.serialize(e(i)),deserialize:(i,a=0)=>{let[n,s]=t.deserialize(i,a);return r?[r(n,i,a),s]:[n,s]}}}JS.mapSerializer=Mre});var GR=b(YS=>{"use strict";Object.defineProperty(YS,"__esModule",{value:!0});var Dre=X3(),Rre=eg();function Bre(t){if(t.fixedSize===null)throw new Rre.ExpectedFixedSizeSerializerError("Cannot reverse a serializer of variable size.");return{...t,serialize:e=>t.serialize(e).reverse(),deserialize:(e,r=0)=>{let i=t.fixedSize,a=Dre.mergeBytes([e.slice(0,r),e.slice(r,r+i).reverse(),e.slice(r+i)]);return t.deserialize(a,r)}}}YS.reverseSerializer=Bre});var Er=b(Ca=>{"use strict";Object.defineProperty(Ca,"__esModule",{value:!0});var QS=X3(),XS=eg(),Cre=HR(),Ore=$R(),Nre=GR();Ca.fixBytes=QS.fixBytes;Ca.mergeBytes=QS.mergeBytes;Ca.padBytes=QS.padBytes;Ca.DeserializingEmptyBufferError=XS.DeserializingEmptyBufferError;Ca.ExpectedFixedSizeSerializerError=XS.ExpectedFixedSizeSerializerError;Ca.NotEnoughBytesError=XS.NotEnoughBytesError;Ca.fixSerializer=Cre.fixSerializer;Ca.mapSerializer=Ore.mapSerializer;Ca.reverseSerializer=Nre.reverseSerializer});var tw=b(ew=>{"use strict";Object.defineProperty(ew,"__esModule",{value:!0});var qre=Y0(),Wre=(t,e)=>{let r=t.length,i=(a,n,s,o)=>{let l=[],d=0,u=0,c=(1<=s;)u-=s,l.push(d>>u&c);return o&&u>0&&l.push(d<t.indexOf(o)),s=i(n,e,8,!1);return Uint8Array.from(s)},deserialize(a,n=0){if(a.length===0)return["",0];let s=[...a.slice(n)];return[i(s,8,e,!0).map(l=>t[l]).join(""),a.length]}}};ew.baseXReslice=Wre});var ZR=b(rw=>{"use strict";Object.defineProperty(rw,"__esModule",{value:!0});var Vre=Er(),Fre=tw(),Kre=Vre.mapSerializer(Fre.baseXReslice("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",6),t=>t.replace(/=/g,""),t=>t.padEnd(Math.ceil(t.length/4)*4,"="));rw.base64=Kre});var iw=b(tg=>{"use strict";Object.defineProperty(tg,"__esModule",{value:!0});var Lre=t=>t.replace(/\u0000/g,""),Ure=(t,e)=>t.padEnd(e,"\0");tg.padNullCharacters=Ure;tg.removeNullCharacters=Lre});var JR=b(aw=>{"use strict";Object.defineProperty(aw,"__esModule",{value:!0});var jre=iw(),Hre={description:"utf8",fixedSize:null,maxSize:null,serialize(t){return new TextEncoder().encode(t)},deserialize(t,e=0){let r=new TextDecoder().decode(t.slice(e));return[jre.removeNullCharacters(r),t.length]}};aw.utf8=Hre});var rg=b(ra=>{"use strict";Object.defineProperty(ra,"__esModule",{value:!0});var $re=FR(),Gre=KR(),Zre=LR(),Jre=ZR(),Yre=Q3(),Qre=tw(),Xre=Y0(),YR=iw(),eie=JR();ra.base10=$re.base10;ra.base16=Gre.base16;ra.base58=Zre.base58;ra.base64=Jre.base64;ra.baseX=Yre.baseX;ra.baseXReslice=Qre.baseXReslice;ra.InvalidBaseStringError=Xre.InvalidBaseStringError;ra.padNullCharacters=YR.padNullCharacters;ra.removeNullCharacters=YR.removeNullCharacters;ra.utf8=eie.utf8});var ow=b(sw=>{"use strict";Object.defineProperty(sw,"__esModule",{value:!0});var nw=class extends Error{name="InvalidPublicKeyError";constructor(e,r){r=r?`. ${r}`:"",super(`The provided public key is invalid: ${e}${r}`),this.invalidPublicKey=e}};sw.InvalidPublicKeyError=nw});var tB=b(ia=>{"use strict";Object.defineProperty(ia,"__esModule",{value:!0});var QR=rg(),ig=ow(),lw=32;function ag(t,e=!0){let r=(()=>typeof t=="string"?t:typeof t=="object"&&"publicKey"in t?t.publicKey:typeof t=="object"&&"toBase58"in t?t.toBase58():Array.isArray(t)?t[0]:QR.base58.deserialize(t)[0])();return e&&dw(r),r}var tie=()=>"11111111111111111111111111111111",XR=t=>{try{return dw(t),!0}catch{return!1}},rie=t=>Array.isArray(t)&&t.length===2&&typeof t[1]=="number"&&XR(t[0]);function dw(t){if(typeof t!="string")throw new ig.InvalidPublicKeyError(t,"Public keys must be strings.");eB(t)}var iie=t=>[...new Set(t)],eB=t=>{if(t.length<32||t.length>44)throw new ig.InvalidPublicKeyError(t,"Public keys must be between 32 and 44 characters.");let e;try{e=QR.base58.serialize(t)}catch{throw new ig.InvalidPublicKeyError(t,"Public keys must be base58 encoded.")}if(e.length!==lw)throw new ig.InvalidPublicKeyError(t,`Public keys must be ${lw} bytes.`);return e},aie=t=>ag(t),nie=(t,e)=>ag(t)===ag(e);ia.PUBLIC_KEY_LENGTH=lw;ia.assertPublicKey=dw;ia.base58PublicKey=aie;ia.defaultPublicKey=tie;ia.isPda=rie;ia.isPublicKey=XR;ia.publicKey=ag;ia.publicKeyBytes=eB;ia.samePublicKey=nie;ia.uniquePublicKeys=iie});var ng=b(Fi=>{"use strict";Object.defineProperty(Fi,"__esModule",{value:!0});var un=tB(),sie=ow();Fi.PUBLIC_KEY_LENGTH=un.PUBLIC_KEY_LENGTH;Fi.assertPublicKey=un.assertPublicKey;Fi.base58PublicKey=un.base58PublicKey;Fi.defaultPublicKey=un.defaultPublicKey;Fi.isPda=un.isPda;Fi.isPublicKey=un.isPublicKey;Fi.publicKey=un.publicKey;Fi.publicKeyBytes=un.publicKeyBytes;Fi.samePublicKey=un.samePublicKey;Fi.uniquePublicKeys=un.uniquePublicKeys;Fi.InvalidPublicKeyError=sie.InvalidPublicKeyError});var uw=b(em=>{"use strict";Object.defineProperty(em,"__esModule",{value:!0});em.Endian=void 0;(function(t){t.Little="le",t.Big="be"})(em.Endian||(em.Endian={}))});var mw=b(pw=>{"use strict";Object.defineProperty(pw,"__esModule",{value:!0});var cw=class extends RangeError{name="NumberOutOfRangeError";constructor(e,r,i,a){super(`Serializer [${e}] expected number to be between ${r} and ${i}, got ${a}.`)}};pw.NumberOutOfRangeError=cw});var _i=b(Al=>{"use strict";Object.defineProperty(Al,"__esModule",{value:!0});var rB=Er(),oie=uw(),lie=mw();function die(t){let e,r=t.name;return t.size>1&&(e=!("endian"in t.options)||t.options.endian===oie.Endian.Little,r+=e?"(le)":"(be)"),{description:t.options.description??r,fixedSize:t.size,maxSize:t.size,serialize(i){t.range&&nB(t.name,t.range[0],t.range[1],i);let a=new ArrayBuffer(t.size);return t.set(new DataView(a),i,e),new Uint8Array(a)},deserialize(i,a=0){let n=i.slice(a,a+t.size);sB("i8",n,t.size);let s=aB(n);return[t.get(s,e),a+t.size]}}}var iB=t=>t.buffer.slice(t.byteOffset,t.byteLength+t.byteOffset),aB=t=>new DataView(iB(t)),nB=(t,e,r,i)=>{if(ir)throw new lie.NumberOutOfRangeError(t,e,r,i)},sB=(t,e,r)=>{if(e.length===0)throw new rB.DeserializingEmptyBufferError(t);if(e.length{"use strict";Object.defineProperty(fw,"__esModule",{value:!0});var uie=_i(),cie=(t={})=>uie.numberFactory({name:"f32",size:4,set:(e,r,i)=>e.setFloat32(0,Number(r),i),get:(e,r)=>e.getFloat32(0,r),options:t});fw.f32=cie});var lB=b(hw=>{"use strict";Object.defineProperty(hw,"__esModule",{value:!0});var pie=_i(),mie=(t={})=>pie.numberFactory({name:"f64",size:8,set:(e,r,i)=>e.setFloat64(0,Number(r),i),get:(e,r)=>e.getFloat64(0,r),options:t});hw.f64=mie});var dB=b(gw=>{"use strict";Object.defineProperty(gw,"__esModule",{value:!0});var fie=_i(),hie=(t={})=>fie.numberFactory({name:"i8",size:1,range:[-+"0x7f"-1,+"0x7f"],set:(e,r)=>e.setInt8(0,Number(r)),get:e=>e.getInt8(0),options:t});gw.i8=hie});var uB=b(yw=>{"use strict";Object.defineProperty(yw,"__esModule",{value:!0});var gie=_i(),yie=(t={})=>gie.numberFactory({name:"i16",size:2,range:[-+"0x7fff"-1,+"0x7fff"],set:(e,r,i)=>e.setInt16(0,Number(r),i),get:(e,r)=>e.getInt16(0,r),options:t});yw.i16=yie});var cB=b(bw=>{"use strict";Object.defineProperty(bw,"__esModule",{value:!0});var bie=_i(),vie=(t={})=>bie.numberFactory({name:"i32",size:4,range:[-+"0x7fffffff"-1,+"0x7fffffff"],set:(e,r,i)=>e.setInt32(0,Number(r),i),get:(e,r)=>e.getInt32(0,r),options:t});bw.i32=vie});var pB=b(vw=>{"use strict";Object.defineProperty(vw,"__esModule",{value:!0});var Sie=_i(),wie=(t={})=>Sie.numberFactory({name:"i64",size:8,range:[-BigInt("0x7fffffffffffffff")-1n,BigInt("0x7fffffffffffffff")],set:(e,r,i)=>e.setBigInt64(0,BigInt(r),i),get:(e,r)=>e.getBigInt64(0,r),options:t});vw.i64=wie});var mB=b(Sw=>{"use strict";Object.defineProperty(Sw,"__esModule",{value:!0});var xie=_i(),Aie=(t={})=>xie.numberFactory({name:"i128",size:16,range:[-BigInt("0x7fffffffffffffffffffffffffffffff")-1n,BigInt("0x7fffffffffffffffffffffffffffffff")],set:(e,r,i)=>{let a=i?8:0,n=i?0:8,s=0xffffffffffffffffn;e.setBigInt64(a,BigInt(r)>>64n,i),e.setBigUint64(n,BigInt(r)&s,i)},get:(e,r)=>{let i=r?8:0,a=r?0:8,n=e.getBigInt64(i,r),s=e.getBigUint64(a,r);return(n<<64n)+s},options:t});Sw.i128=Aie});var fB=b(ww=>{"use strict";Object.defineProperty(ww,"__esModule",{value:!0});var _ie=_i(),kie=(t={})=>_ie.numberFactory({name:"u8",size:1,range:[0,+"0xff"],set:(e,r)=>e.setUint8(0,Number(r)),get:e=>e.getUint8(0),options:t});ww.u8=kie});var hB=b(xw=>{"use strict";Object.defineProperty(xw,"__esModule",{value:!0});var Eie=_i(),Pie=(t={})=>Eie.numberFactory({name:"u16",size:2,range:[0,+"0xffff"],set:(e,r,i)=>e.setUint16(0,Number(r),i),get:(e,r)=>e.getUint16(0,r),options:t});xw.u16=Pie});var gB=b(Aw=>{"use strict";Object.defineProperty(Aw,"__esModule",{value:!0});var Tie=_i(),zie=(t={})=>Tie.numberFactory({name:"u32",size:4,range:[0,+"0xffffffff"],set:(e,r,i)=>e.setUint32(0,Number(r),i),get:(e,r)=>e.getUint32(0,r),options:t});Aw.u32=zie});var yB=b(_w=>{"use strict";Object.defineProperty(_w,"__esModule",{value:!0});var Iie=_i(),Mie=(t={})=>Iie.numberFactory({name:"u64",size:8,range:[0,BigInt("0xffffffffffffffff")],set:(e,r,i)=>e.setBigUint64(0,BigInt(r),i),get:(e,r)=>e.getBigUint64(0,r),options:t});_w.u64=Mie});var bB=b(kw=>{"use strict";Object.defineProperty(kw,"__esModule",{value:!0});var Die=_i(),Rie=(t={})=>Die.numberFactory({name:"u128",size:16,range:[0,BigInt("0xffffffffffffffffffffffffffffffff")],set:(e,r,i)=>{let a=i?8:0,n=i?0:8,s=0xffffffffffffffffn;e.setBigUint64(a,BigInt(r)>>64n,i),e.setBigUint64(n,BigInt(r)&s,i)},get:(e,r)=>{let i=r?8:0,a=r?0:8,n=e.getBigUint64(i,r),s=e.getBigUint64(a,r);return(n<<64n)+s},options:t});kw.u128=Rie});var vB=b(Ew=>{"use strict";Object.defineProperty(Ew,"__esModule",{value:!0});var Bie=_i(),Cie=(t={})=>({description:t.description??"shortU16",fixedSize:null,maxSize:3,serialize:e=>{Bie.assertRange("shortU16",0,65535,e);let r=[0];for(let i=0;;i+=1){let a=e>>i*7;if(a===0)break;let n=127&a;r[i]=n,i>0&&(r[i-1]|=128)}return new Uint8Array(r)},deserialize:(e,r=0)=>{let i=0,a=0;for(;++a;){let n=a-1,s=e[r+n],o=127&s;if(i|=o<{"use strict";Object.defineProperty(Yr,"__esModule",{value:!0});var Oie=uw(),Nie=mw(),qie=oB(),Wie=lB(),Vie=dB(),Fie=uB(),Kie=cB(),Lie=pB(),Uie=mB(),jie=fB(),Hie=hB(),$ie=gB(),Gie=yB(),Zie=bB(),Jie=vB();Object.defineProperty(Yr,"Endian",{enumerable:!0,get:function(){return Oie.Endian}});Yr.NumberOutOfRangeError=Nie.NumberOutOfRangeError;Yr.f32=qie.f32;Yr.f64=Wie.f64;Yr.i8=Vie.i8;Yr.i16=Fie.i16;Yr.i32=Kie.i32;Yr.i64=Lie.i64;Yr.i128=Uie.i128;Yr.u8=jie.u8;Yr.u16=Hie.u16;Yr.u32=$ie.u32;Yr.u64=Gie.u64;Yr.u128=Zie.u128;Yr.shortU16=Jie.shortU16});var Yn=b(Js=>{"use strict";Object.defineProperty(Js,"__esModule",{value:!0});var Pw=class extends Error{name="InvalidNumberOfItemsError";constructor(e,r,i){super(`Expected [${e}] to have ${r} items, got ${i}.`)}},Tw=class extends Error{name="InvalidArrayLikeRemainderSizeError";constructor(e,r){super(`The remainder of the buffer (${e} bytes) cannot be split into chunks of ${r} bytes. Serializers of "remainder" size must have a remainder that is a multiple of its item size. In other words, ${e} modulo ${r} should be equal to zero.`)}},zw=class extends Error{name="UnrecognizedArrayLikeSerializerSizeError";constructor(e){super(`Unrecognized array-like serializer size: ${JSON.stringify(e)}`)}},Iw=class extends Error{name="InvalidDataEnumVariantError";constructor(e,r){super(`Invalid data enum variant. Expected one of [${r.join(", ")}], got "${e}".`)}},Mw=class extends Error{name="InvalidScalarEnumVariantError";constructor(e,r,i,a){super(`Invalid scalar enum variant. Expected one of [${r.join(", ")}] or a number between ${i} and ${a}, got "${e}".`)}},Dw=class extends RangeError{name="EnumDiscriminatorOutOfRangeError";constructor(e,r,i){super(`Enum discriminator out of range. Expected a number between ${r} and ${i}, got ${e}.`)}};Js.EnumDiscriminatorOutOfRangeError=Dw;Js.InvalidArrayLikeRemainderSizeError=Tw;Js.InvalidDataEnumVariantError=Iw;Js.InvalidNumberOfItemsError=Pw;Js.InvalidScalarEnumVariantError=Mw;Js.UnrecognizedArrayLikeSerializerSizeError=zw});var Ys=b(Rw=>{"use strict";Object.defineProperty(Rw,"__esModule",{value:!0});function Yie(t){return t.reduce((e,r)=>e===null||r===null?null:e+r,0)}Rw.sumSerializerSizes=Yie});var Qs=b(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});var Qie=Er(),SB=Yn(),wB=Ys();function Xie(t,e,r,i){if(typeof t=="number")return[t,i];if(typeof t=="object")return t.deserialize(r,i);if(t==="remainder"){let a=wB.sumSerializerSizes(e);if(a===null)throw new Qie.ExpectedFixedSizeSerializerError('Serializers of "remainder" size must have fixed-size items.');let n=r.slice(i).length;if(n%a!==0)throw new SB.InvalidArrayLikeRemainderSizeError(n,a);return[n/a,i]}throw new SB.UnrecognizedArrayLikeSerializerSizeError(t)}function eae(t){return typeof t=="object"?t.description:`${t}`}function tae(t,e){if(typeof t!="number")return null;if(t===0)return 0;let r=wB.sumSerializerSizes(e);return r===null?null:r*t}function rae(t,e){return typeof t=="object"?t.serialize(e):new Uint8Array}Sd.getResolvedSize=Xie;Sd.getSizeDescription=eae;Sd.getSizeFromChildren=tae;Sd.getSizePrefix=rae});var AB=b(Bw=>{"use strict";Object.defineProperty(Bw,"__esModule",{value:!0});var xB=Er(),iae=Oa(),aae=Yn(),tm=Qs();function nae(t,e={}){let r=e.size??iae.u32();if(r==="remainder"&&t.fixedSize===null)throw new xB.ExpectedFixedSizeSerializerError('Serializers of "remainder" size must have fixed-size items.');return{description:e.description??`array(${t.description}; ${tm.getSizeDescription(r)})`,fixedSize:tm.getSizeFromChildren(r,[t.fixedSize]),maxSize:tm.getSizeFromChildren(r,[t.maxSize]),serialize:i=>{if(typeof r=="number"&&i.length!==r)throw new aae.InvalidNumberOfItemsError("array",r,i.length);return xB.mergeBytes([tm.getSizePrefix(r,i.length),...i.map(a=>t.serialize(a))])},deserialize:(i,a=0)=>{if(typeof r=="object"&&i.slice(a).length===0)return[[],a];let[n,s]=tm.getResolvedSize(r,[t.fixedSize],i,a);a=s;let o=[];for(let l=0;l{"use strict";Object.defineProperty(Cw,"__esModule",{value:!0});var sae=Er(),oae=(t,e={})=>{let r=typeof e=="boolean"?{backward:e}:e,i=r.backward??!1,a=i?"; backward":"";return{description:r.description??`bitArray(${t}${a})`,fixedSize:t,maxSize:t,serialize(n){let s=[];for(let o=0;o{for(let u=0;u<8;u+=1)i?(o.push(!!(d&1)),d>>=1):(o.push(!!(d&128)),d<<=1)}),[o,s+t]}}};Cw.bitArray=oae});var EB=b(Ow=>{"use strict";Object.defineProperty(Ow,"__esModule",{value:!0});var kB=Er(),lae=Oa();function dae(t={}){let e=t.size??lae.u8();if(e.fixedSize===null)throw new kB.ExpectedFixedSizeSerializerError("Serializer [bool] requires a fixed size.");return{description:t.description??`bool(${e.description})`,fixedSize:e.fixedSize,maxSize:e.fixedSize,serialize:r=>e.serialize(r?1:0),deserialize:(r,i=0)=>{if(r.slice(i).length===0)throw new kB.DeserializingEmptyBufferError("bool");let[a,n]=e.deserialize(r,i);return[a===1,n]}}}Ow.bool=dae});var PB=b(Nw=>{"use strict";Object.defineProperty(Nw,"__esModule",{value:!0});var sg=Er(),uae=Qs();function cae(t={}){let e=t.size??"variable",r=t.description??`bytes(${uae.getSizeDescription(e)})`,i={description:r,fixedSize:null,maxSize:null,serialize:a=>new Uint8Array(a),deserialize:(a,n=0)=>{let s=a.slice(n);return[s,n+s.length]}};return e==="variable"?i:typeof e=="number"?sg.fixSerializer(i,e,r):{description:r,fixedSize:null,maxSize:null,serialize:a=>{let n=i.serialize(a),s=e.serialize(n.length);return sg.mergeBytes([s,n])},deserialize:(a,n=0)=>{if(a.slice(n).length===0)throw new sg.DeserializingEmptyBufferError("bytes");let[s,o]=e.deserialize(a,n),l=Number(s);n=o;let d=a.slice(n,n+l);if(d.length{"use strict";Object.defineProperty(qw,"__esModule",{value:!0});function pae(t){return t.reduce((e,r)=>e===null||r===null?null:Math.max(e,r),0)}qw.maxSerializerSizes=pae});var MB=b(Vw=>{"use strict";Object.defineProperty(Vw,"__esModule",{value:!0});var TB=Er(),mae=Oa(),zB=Yn(),fae=Ww(),IB=Ys();function hae(t,e={}){let r=e.size??mae.u8(),i=t.map(([o,l])=>`${String(o)}${l?`: ${l.description}`:""}`).join(", "),n=t.every((o,l,d)=>o[1].fixedSize===d[0][1].fixedSize)?t[0][1].fixedSize:null,s=fae.maxSerializerSizes(t.map(([,o])=>o.maxSize));return{description:e.description??`dataEnum(${i}; ${r.description})`,fixedSize:t.length===0?r.fixedSize:IB.sumSerializerSizes([r.fixedSize,n]),maxSize:t.length===0?r.maxSize:IB.sumSerializerSizes([r.maxSize,s]),serialize:o=>{let l=t.findIndex(([w])=>o.__kind===w);if(l<0)throw new zB.InvalidDataEnumVariantError(o.__kind,t.map(([w])=>w));let d=r.serialize(l),c=t[l][1].serialize(o);return TB.mergeBytes([d,c])},deserialize:(o,l=0)=>{if(o.slice(l).length===0)throw new TB.DeserializingEmptyBufferError("dataEnum");let[d,u]=r.deserialize(o,l);l=u;let c=t[Number(d)]??null;if(!c)throw new zB.EnumDiscriminatorOutOfRangeError(d,0,t.length-1);let[w,k]=c[1].deserialize(o,l);return l=k,[{__kind:c[0],...w??{}},l]}}}Vw.dataEnum=hae});var DB=b(Kw=>{"use strict";Object.defineProperty(Kw,"__esModule",{value:!0});var Fw=Er(),gae=Oa(),rm=Qs(),yae=Yn();function bae(t,e,r={}){let i=r.size??gae.u32();if(i==="remainder"&&(t.fixedSize===null||e.fixedSize===null))throw new Fw.ExpectedFixedSizeSerializerError('Serializers of "remainder" size must have fixed-size items.');return{description:r.description??`map(${t.description}, ${e.description}; ${rm.getSizeDescription(i)})`,fixedSize:rm.getSizeFromChildren(i,[t.fixedSize,e.fixedSize]),maxSize:rm.getSizeFromChildren(i,[t.maxSize,e.maxSize]),serialize:a=>{if(typeof i=="number"&&a.size!==i)throw new yae.InvalidNumberOfItemsError("map",i,a.size);let n=Array.from(a,([s,o])=>Fw.mergeBytes([t.serialize(s),e.serialize(o)]));return Fw.mergeBytes([rm.getSizePrefix(i,a.size),...n])},deserialize:(a,n=0)=>{let s=new Map;if(typeof i=="object"&&a.slice(n).length===0)return[s,n];let[o,l]=rm.getResolvedSize(i,[t.fixedSize,e.fixedSize],a,n);n=l;for(let d=0;d{"use strict";Object.defineProperty(Uw,"__esModule",{value:!0});var Lw=Er(),vae=Oa(),Sae=Ys(),wae=Qs();function xae(t,e={}){let r=e.prefix??vae.u8(),i=e.fixed??!1,a=`; ${wae.getSizeDescription(r)}`,n=t.fixedSize===0?r.fixedSize:null;if(i){if(t.fixedSize===null||r.fixedSize===null)throw new Lw.ExpectedFixedSizeSerializerError("Fixed nullables can only be used with fixed-size serializers");a+="; fixed",n=r.fixedSize+t.fixedSize}return{description:e.description??`nullable(${t.description+a})`,fixedSize:n,maxSize:Sae.sumSerializerSizes([r.maxSize,t.maxSize]),serialize:s=>{let o=r.serialize(+(s!==null));if(i){let d=t.fixedSize,u=s!==null?t.serialize(s).slice(0,d):new Uint8Array(d).fill(0);return Lw.mergeBytes([o,u])}let l=s!==null?t.serialize(s):new Uint8Array;return Lw.mergeBytes([o,l])},deserialize:(s,o=0)=>{if(s.slice(o).length===0)return[null,o];let l=o+(r.fixedSize??0)+(t.fixedSize??0),[d,u]=r.deserialize(s,o);if(o=u,d===0)return[null,i?l:o];let[c,w]=t.deserialize(s,o);return o=w,[c,i?l:o]}}}Uw.nullable=xae});var BB=b(Hw=>{"use strict";Object.defineProperty(Hw,"__esModule",{value:!0});var Xs=WS(),jw=Er(),Aae=Oa(),_ae=Ys(),kae=Qs();function Eae(t,e={}){let r=e.prefix??Aae.u8(),i=e.fixed??!1,a=`; ${kae.getSizeDescription(r)}`,n=t.fixedSize===0?r.fixedSize:null;if(i){if(t.fixedSize===null||r.fixedSize===null)throw new jw.ExpectedFixedSizeSerializerError("Fixed options can only be used with fixed-size serializers");a+="; fixed",n=r.fixedSize+t.fixedSize}return{description:e.description??`option(${t.description+a})`,fixedSize:n,maxSize:_ae.sumSerializerSizes([r.maxSize,t.maxSize]),serialize:s=>{let o=Xs.isOption(s)?s:Xs.wrapNullable(s),l=r.serialize(Number(Xs.isSome(o)));if(i){let u=t.fixedSize,c=Xs.isSome(o)?t.serialize(o.value).slice(0,u):new Uint8Array(u).fill(0);return jw.mergeBytes([l,c])}let d=Xs.isSome(o)?t.serialize(o.value):new Uint8Array;return jw.mergeBytes([l,d])},deserialize:(s,o=0)=>{if(s.slice(o).length===0)return[Xs.none(),o];let l=o+(r.fixedSize??0)+(t.fixedSize??0),[d,u]=r.deserialize(s,o);if(o=u,d===0)return[Xs.none(),i?l:o];let[c,w]=t.deserialize(s,o);return o=w,[Xs.some(c),i?l:o]}}}Hw.option=Eae});var OB=b($w=>{"use strict";Object.defineProperty($w,"__esModule",{value:!0});var im=ng(),CB=Er();function Pae(t={}){return{description:t.description??"publicKey",fixedSize:32,maxSize:32,serialize:e=>im.publicKeyBytes(im.publicKey(e)),deserialize:(e,r=0)=>{let i=e.slice(r,r+32);if(i.length===0)throw new CB.DeserializingEmptyBufferError("publicKey");if(i.length{"use strict";Object.defineProperty(Gw,"__esModule",{value:!0});var Tae=Er(),zae=Oa(),NB=Yn();function Iae(t,e={}){let r=e.size??zae.u8(),i=Object.keys(t),a=Object.values(t),n=a.some(c=>typeof c=="number"),s=a.filter(c=>typeof c=="string").join(", "),o=0,l=n?a.length/2-1:a.length-1,d=n?[...i]:[...new Set([...i,...a])];function u(c){let w=typeof c=="number"&&(cl),k=typeof c=="string"&&!d.includes(c);if(w||k)throw new NB.InvalidScalarEnumVariantError(c,d,o,l)}return{description:e.description??`enum(${s}; ${r.description})`,fixedSize:r.fixedSize,maxSize:r.maxSize,serialize:c=>{if(u(c),typeof c=="number")return r.serialize(c);let w=a.indexOf(c);return w>=0?r.serialize(w):r.serialize(i.indexOf(c))},deserialize:(c,w=0)=>{if(c.slice(w).length===0)throw new Tae.DeserializingEmptyBufferError("enum");let[k,z]=r.deserialize(c,w),_=Number(k);if(w=z,_l)throw new NB.EnumDiscriminatorOutOfRangeError(_,o,l);return[n?_:a[_],w]}}}Gw.scalarEnum=Iae});var VB=b(Zw=>{"use strict";Object.defineProperty(Zw,"__esModule",{value:!0});var WB=Er(),Mae=Oa(),am=Qs(),Dae=Yn();function Rae(t,e={}){let r=e.size??Mae.u32();if(r==="remainder"&&t.fixedSize===null)throw new WB.ExpectedFixedSizeSerializerError('Serializers of "remainder" size must have fixed-size items.');return{description:e.description??`set(${t.description}; ${am.getSizeDescription(r)})`,fixedSize:am.getSizeFromChildren(r,[t.fixedSize]),maxSize:am.getSizeFromChildren(r,[t.maxSize]),serialize:i=>{if(typeof r=="number"&&i.size!==r)throw new Dae.InvalidNumberOfItemsError("set",r,i.size);let a=Array.from(i,n=>t.serialize(n));return WB.mergeBytes([am.getSizePrefix(r,i.size),...a])},deserialize:(i,a=0)=>{let n=new Set;if(typeof r=="object"&&i.slice(a).length===0)return[n,a];let[s,o]=am.getResolvedSize(r,[t.fixedSize],i,a);a=o;for(let l=0;l{"use strict";Object.defineProperty(Jw,"__esModule",{value:!0});var og=Er(),Bae=rg(),Cae=Oa(),Oae=Qs();function Nae(t={}){let e=t.size??Cae.u32(),r=t.encoding??Bae.utf8,i=t.description??`string(${r.description}; ${Oae.getSizeDescription(e)})`;return e==="variable"?{...r,description:i}:typeof e=="number"?og.fixSerializer(r,e,i):{description:i,fixedSize:null,maxSize:null,serialize:a=>{let n=r.serialize(a),s=e.serialize(n.length);return og.mergeBytes([s,n])},deserialize:(a,n=0)=>{if(a.slice(n).length===0)throw new og.DeserializingEmptyBufferError("string");let[s,o]=e.deserialize(a,n),l=Number(s);n=o;let d=a.slice(n,n+l);if(d.length{"use strict";Object.defineProperty(Yw,"__esModule",{value:!0});var qae=Er(),KB=Ys();function Wae(t,e={}){let r=t.map(([i,a])=>`${String(i)}: ${a.description}`).join(", ");return{description:e.description??`struct(${r})`,fixedSize:KB.sumSerializerSizes(t.map(([,i])=>i.fixedSize)),maxSize:KB.sumSerializerSizes(t.map(([,i])=>i.maxSize)),serialize:i=>{let a=t.map(([n,s])=>s.serialize(i[n]));return qae.mergeBytes(a)},deserialize:(i,a=0)=>{let n={};return t.forEach(([s,o])=>{let[l,d]=o.deserialize(i,a);a=d,n[s]=l}),[n,a]}}}Yw.struct=Wae});var jB=b(Qw=>{"use strict";Object.defineProperty(Qw,"__esModule",{value:!0});var Vae=Er(),UB=Ys(),Fae=Yn();function Kae(t,e={}){let r=t.map(i=>i.description).join(", ");return{description:e.description??`tuple(${r})`,fixedSize:UB.sumSerializerSizes(t.map(i=>i.fixedSize)),maxSize:UB.sumSerializerSizes(t.map(i=>i.maxSize)),serialize:i=>{if(i.length!==t.length)throw new Fae.InvalidNumberOfItemsError("tuple",t.length,i.length);return Vae.mergeBytes(t.map((a,n)=>a.serialize(i[n])))},deserialize:(i,a=0)=>{let n=[];return t.forEach(s=>{let[o,l]=s.deserialize(i,a);n.push(o),a=l}),[n,a]}}}Qw.tuple=Kae});var HB=b(Xw=>{"use strict";Object.defineProperty(Xw,"__esModule",{value:!0});function Lae(t={}){return{description:t.description??"unit",fixedSize:0,maxSize:0,serialize:()=>new Uint8Array,deserialize:(e,r=0)=>[void 0,r]}}Xw.unit=Lae});var _l=b($e=>{"use strict";Object.defineProperty($e,"__esModule",{value:!0});var $B=Er(),GB=rg(),ZB=Oa(),Uae=AB(),jae=_B(),Hae=EB(),$ae=PB(),Gae=MB(),wd=Yn(),Zae=DB(),Jae=RB(),Yae=BB(),Qae=OB(),Xae=qB(),ene=VB(),tne=FB(),rne=LB(),ine=jB(),ane=HB(),nne=Ww(),sne=Ys();$e.array=Uae.array;$e.bitArray=jae.bitArray;$e.bool=Hae.bool;$e.bytes=$ae.bytes;$e.dataEnum=Gae.dataEnum;$e.EnumDiscriminatorOutOfRangeError=wd.EnumDiscriminatorOutOfRangeError;$e.InvalidArrayLikeRemainderSizeError=wd.InvalidArrayLikeRemainderSizeError;$e.InvalidDataEnumVariantError=wd.InvalidDataEnumVariantError;$e.InvalidNumberOfItemsError=wd.InvalidNumberOfItemsError;$e.InvalidScalarEnumVariantError=wd.InvalidScalarEnumVariantError;$e.UnrecognizedArrayLikeSerializerSizeError=wd.UnrecognizedArrayLikeSerializerSizeError;$e.map=Zae.map;$e.nullable=Jae.nullable;$e.option=Yae.option;$e.publicKey=Qae.publicKey;$e.scalarEnum=Xae.scalarEnum;$e.set=ene.set;$e.string=tne.string;$e.struct=rne.struct;$e.tuple=ine.tuple;$e.unit=ane.unit;$e.maxSerializerSizes=nne.maxSerializerSizes;$e.sumSerializerSizes=sne.sumSerializerSizes;Object.keys($B).forEach(function(t){t!=="default"&&!$e.hasOwnProperty(t)&&Object.defineProperty($e,t,{enumerable:!0,get:function(){return $B[t]}})});Object.keys(GB).forEach(function(t){t!=="default"&&!$e.hasOwnProperty(t)&&Object.defineProperty($e,t,{enumerable:!0,get:function(){return GB[t]}})});Object.keys(ZB).forEach(function(t){t!=="default"&&!$e.hasOwnProperty(t)&&Object.defineProperty($e,t,{enumerable:!0,get:function(){return ZB[t]}})})});var JB=b(Cr=>{"use strict";Object.defineProperty(Cr,"__esModule",{value:!0});var ni=_l(),one=ni.mapSerializer,lne=ni.fixSerializer,dne=ni.reverseSerializer,une=ni.mergeBytes,cne=ni.padBytes,pne=ni.fixBytes,mne=ni.utf8,fne=ni.baseX,hne=ni.base10,gne=ni.base58,yne=ni.base64,bne=ni.base16,vne=ni.bitArray,Sne=ni.removeNullCharacters,wne=ni.padNullCharacters,xne=ni.Endian;Cr.Endian=xne;Cr.base10=hne;Cr.base16=bne;Cr.base58=gne;Cr.base64=yne;Cr.baseX=fne;Cr.bitArray=vne;Cr.fixBytes=pne;Cr.fixSerializer=lne;Cr.mapSerializer=one;Cr.mergeBytes=une;Cr.padBytes=cne;Cr.padNullCharacters=wne;Cr.removeNullCharacters=Sne;Cr.reverseSerializer=dne;Cr.utf8=mne});var lg=b(tx=>{"use strict";Object.defineProperty(tx,"__esModule",{value:!0});var ex=class extends Error{name="UmiError";constructor(e,r,i,a){super(e),this.source=r,this.sourceDetails=i,this.cause=a,this.message=`${this.message} +}`)(t,h3,this,e,a);return s}n(iX,"wrapfunction");function aX(t,e,r){if(!t||typeof t!="object"&&typeof t!="function")throw new TypeError("argument obj must be object");var i=Object.getOwnPropertyDescriptor(t,e);if(!i)throw new TypeError("must call property on owner object");if(!i.configurable)throw new TypeError("property must be configurable");var a=this,s=k3(),o=Z1(s[1]);o.name=e,"value"in i&&(i=$Q(t,e));var l=i.get,d=i.set;typeof l=="function"&&(i.get=n(function(){return h3.call(a,r,o),l.apply(this,arguments)},"getter")),typeof d=="function"&&(i.set=n(function(){return h3.call(a,r,o),d.apply(this,arguments)},"setter")),Object.defineProperty(t,e,i)}n(aX,"wrapproperty");function xD(t,e,r){var i=new Error,a;return Object.defineProperty(i,"constructor",{value:xD}),Object.defineProperty(i,"message",{configurable:!0,enumerable:!1,value:e,writable:!0}),Object.defineProperty(i,"name",{enumerable:!1,configurable:!0,value:"DeprecationError",writable:!0}),Object.defineProperty(i,"namespace",{configurable:!0,enumerable:!1,value:t,writable:!0}),Object.defineProperty(i,"stack",{configurable:!0,enumerable:!1,get:function(){return a!==void 0?a:a=ZQ.call(this,r)},set:n(function(o){a=o},"setter")}),i}n(xD,"DeprecationError");var zv={CURRENT_ID:Symbol("agentkeepalive#currentId"),CREATE_ID:Symbol("agentkeepalive#createId"),INIT_SOCKET:Symbol("agentkeepalive#initSocket"),CREATE_HTTPS_CONNECTION:Symbol("agentkeepalive#createHttpsConnection"),SOCKET_CREATED_TIME:Symbol("agentkeepalive#socketCreatedTime"),SOCKET_NAME:Symbol("agentkeepalive#socketName"),SOCKET_REQUEST_COUNT:Symbol("agentkeepalive#socketRequestCount"),SOCKET_REQUEST_FINISHED_COUNT:Symbol("agentkeepalive#socketRequestFinishedCount")},nX=rQ.default.Agent,Hb=qQ,bi=LQ("agentkeepalive"),z0=jQ("agentkeepalive"),{INIT_SOCKET:$M,CURRENT_ID:l3,CREATE_ID:GM,SOCKET_CREATED_TIME:ZM,SOCKET_NAME:xi,SOCKET_REQUEST_COUNT:ea,SOCKET_REQUEST_FINISHED_COUNT:rn}=zv,cv=1,$b=parseInt(process.version.split(".",1)[0].substring(1));$b>=11&&$b<=12?cv=2:$b>=13&&(cv=3);var pv=class extends nX{static{n(this,"Agent")}constructor(e){e=e||{},e.keepAlive=e.keepAlive!==!1,e.freeSocketTimeout===void 0&&(e.freeSocketTimeout=4e3),e.keepAliveTimeout&&(z0("options.keepAliveTimeout is deprecated, please use options.freeSocketTimeout instead"),e.freeSocketTimeout=e.keepAliveTimeout,delete e.keepAliveTimeout),e.freeSocketKeepAliveTimeout&&(z0("options.freeSocketKeepAliveTimeout is deprecated, please use options.freeSocketTimeout instead"),e.freeSocketTimeout=e.freeSocketKeepAliveTimeout,delete e.freeSocketKeepAliveTimeout),e.timeout===void 0&&(e.timeout=Math.max(e.freeSocketTimeout*2,8e3)),e.timeout=Hb(e.timeout),e.freeSocketTimeout=Hb(e.freeSocketTimeout),e.socketActiveTTL=e.socketActiveTTL?Hb(e.socketActiveTTL):0,super(e),this[l3]=0,this.createSocketCount=0,this.createSocketCountLastCheck=0,this.createSocketErrorCount=0,this.createSocketErrorCountLastCheck=0,this.closeSocketCount=0,this.closeSocketCountLastCheck=0,this.errorSocketCount=0,this.errorSocketCountLastCheck=0,this.requestCount=0,this.requestCountLastCheck=0,this.timeoutSocketCount=0,this.timeoutSocketCountLastCheck=0,this.on("free",r=>{let i=this.calcSocketTimeout(r);i>0&&r.timeout!==i&&r.setTimeout(i)})}get freeSocketKeepAliveTimeout(){return z0("agent.freeSocketKeepAliveTimeout is deprecated, please use agent.options.freeSocketTimeout instead"),this.options.freeSocketTimeout}get timeout(){return z0("agent.timeout is deprecated, please use agent.options.timeout instead"),this.options.timeout}get socketActiveTTL(){return z0("agent.socketActiveTTL is deprecated, please use agent.options.socketActiveTTL instead"),this.options.socketActiveTTL}calcSocketTimeout(e){let r=this.options.freeSocketTimeout,i=this.options.socketActiveTTL;if(i){let a=Date.now()-e[ZM],s=i-a;if(s<=0)return s;r&&s"u"?!0:i<=0?(bi("%s(requests: %s, finished: %s) free but need to destroy by TTL, request count %s, diff is %s",e[xi],e[ea],e[rn],i),!1):(e.timeout!==i&&e.setTimeout(i),!0)}reuseSocket(...e){super.reuseSocket(...e);let r=e[0],i=e[1];i.reusedSocket=!0;let a=this.options.timeout;R0(r)!==a&&(r.setTimeout(a),bi("%s reset timeout to %sms",r[xi],a)),r[ea]++,bi("%s(requests: %s, finished: %s) reuse on addRequest, timeout %sms",r[xi],r[ea],r[rn],R0(r))}[GM](){let e=this[l3]++;return this[l3]===Number.MAX_SAFE_INTEGER&&(this[l3]=0),e}[$M](e,r){r.timeout&&(R0(e)||e.setTimeout(r.timeout)),this.options.keepAlive&&e.setNoDelay(!0),this.createSocketCount++,this.options.socketActiveTTL&&(e[ZM]=Date.now()),e[xi]=`sock[${this[GM]()}#${r._agentKey}]`.split("-----BEGIN",1)[0],e[ea]=1,e[rn]=0,sX(this,e,r)}createConnection(e,r){let i=!1,a=n((o,l)=>{if(!i){if(i=!0,o)return this.createSocketErrorCount++,r(o);this[$M](l,e),r(o,l)}},"onNewCreate"),s=super.createConnection(e,a);s&&a(null,s)}get statusChanged(){let e=this.createSocketCount!==this.createSocketCountLastCheck||this.createSocketErrorCount!==this.createSocketErrorCountLastCheck||this.closeSocketCount!==this.closeSocketCountLastCheck||this.errorSocketCount!==this.errorSocketCountLastCheck||this.timeoutSocketCount!==this.timeoutSocketCountLastCheck||this.requestCount!==this.requestCountLastCheck;return e&&(this.createSocketCountLastCheck=this.createSocketCount,this.createSocketErrorCountLastCheck=this.createSocketErrorCount,this.closeSocketCountLastCheck=this.closeSocketCount,this.errorSocketCountLastCheck=this.errorSocketCount,this.timeoutSocketCountLastCheck=this.timeoutSocketCount,this.requestCountLastCheck=this.requestCount),e}getCurrentStatus(){return{createSocketCount:this.createSocketCount,createSocketErrorCount:this.createSocketErrorCount,closeSocketCount:this.closeSocketCount,errorSocketCount:this.errorSocketCount,timeoutSocketCount:this.timeoutSocketCount,requestCount:this.requestCount,freeSockets:Gb(this.freeSockets),sockets:Gb(this.sockets),requests:Gb(this.requests)}}};function R0(t){return t.timeout||t._idleTimeout}n(R0,"getSocketTimeout");function sX(t,e,r){bi("%s create, timeout %sms",e[xi],R0(e));function i(){if(!e._httpMessage&&e[ea]===1)return;e[rn]++,t.requestCount++,bi("%s(requests: %s, finished: %s) free",e[xi],e[ea],e[rn]);let d=t.getName(r);e.writable&&t.requests[d]&&t.requests[d].length&&(e[ea]++,bi("%s(requests: %s, finished: %s) will be reuse on agent free event",e[xi],e[ea],e[rn]))}n(i,"onFree"),e.on("free",i);function a(d){bi("%s(requests: %s, finished: %s) close, isError: %s",e[xi],e[ea],e[rn],d),t.closeSocketCount++}n(a,"onClose"),e.on("close",a);function s(){let d=e.listeners("timeout").length,u=R0(e),c=e._httpMessage,p=c&&c.listeners("timeout").length||0;bi("%s(requests: %s, finished: %s) timeout after %sms, listeners %s, defaultTimeoutListenerCount %s, hasHttpRequest %s, HttpRequest timeoutListenerCount %s",e[xi],e[ea],e[rn],u,d,cv,!!c,p),bi.enabled&&bi("timeout listeners: %s",e.listeners("timeout").map(E=>E.name).join(", ")),t.timeoutSocketCount++;let x=t.getName(r);if(t.freeSockets[x]&&t.freeSockets[x].indexOf(e)!==-1)e.destroy(),t.removeSocket(e,r),bi("%s is free, destroy quietly",e[xi]);else if(p===0){let E=new Error("Socket timeout");E.code="ERR_SOCKET_TIMEOUT",E.timeout=u,e.destroy(E),t.removeSocket(e,r),bi("%s destroy with timeout error",e[xi])}}n(s,"onTimeout"),e.on("timeout",s);function o(d){let u=e.listeners("error").length;bi("%s(requests: %s, finished: %s) error: %s, listenerCount: %s",e[xi],e[ea],e[rn],d,u),t.errorSocketCount++,u===1&&(bi("%s emit uncaught error event",e[xi]),e.removeListener("error",o),e.emit("error",d))}n(o,"onError"),e.on("error",o);function l(){bi("%s(requests: %s, finished: %s) agentRemove",e[xi],e[ea],e[rn]),e.removeListener("close",a),e.removeListener("error",o),e.removeListener("free",i),e.removeListener("timeout",s),e.removeListener("agentRemove",l)}n(l,"onRemove"),e.on("agentRemove",l)}n(sX,"installListeners");var AD=pv;function Gb(t){let e={};for(let r in t)e[r]=t[r].length;return e}n(Gb,"inspect");var mv=iQ.default.Agent,oX=AD,{INIT_SOCKET:lX,CREATE_HTTPS_CONNECTION:_D}=zv,Iv=class extends oX{static{n(this,"HttpsAgent")}constructor(e){super(e),this.defaultPort=443,this.protocol="https:",this.maxCachedSessions=this.options.maxCachedSessions,this.maxCachedSessions===void 0&&(this.maxCachedSessions=100),this._sessionCache={map:{},list:[]}}createConnection(e){let r=this[_D](e);return this[lX](r,e),r}};Iv.prototype[_D]=mv.prototype.createConnection;["getName","_getSession","_cacheSession","_evictSession"].forEach(function(t){typeof mv.prototype[t]=="function"&&(Iv.prototype[t]=mv.prototype[t])});var dX=Iv;_3.exports=AD;var uX=_3.exports.HttpsAgent=dX;_3.exports.constants=zv;var cX=_3.exports,pX=vD(cX),mX=Object.prototype.toString,fX=Object.keys||function(t){var e=[];for(var r in t)e.push(r);return e};function M0(t,e){var r,i,a,s,o,l,d;if(t===!0)return"true";if(t===!1)return"false";switch(typeof t){case"object":if(t===null)return null;if(t.toJSON&&typeof t.toJSON=="function")return M0(t.toJSON(),e);if(d=mX.call(t),d==="[object Array]"){for(a="[",i=t.length-1,r=0;r-1&&(a+=M0(t[r],!0)),a+"]"}else if(d==="[object Object]"){for(s=fX(t).sort(),i=s.length,a="",r=0;r1;)t/=2,e++;return e}n(Zb,"trailingZeros");function gX(t){return t===0?1:(t--,t|=t>>1,t|=t>>2,t|=t>>4,t|=t>>8,t|=t>>16,t|=t>>32,t+1)}n(gX,"nextPowerOfTwo");var g3=class{static{n(this,"EpochSchedule")}constructor(e,r,i,a,s){this.slotsPerEpoch=void 0,this.leaderScheduleSlotOffset=void 0,this.warmup=void 0,this.firstNormalEpoch=void 0,this.firstNormalSlot=void 0,this.slotsPerEpoch=e,this.leaderScheduleSlotOffset=r,this.warmup=i,this.firstNormalEpoch=a,this.firstNormalSlot=s}getEpoch(e){return this.getEpochAndSlotIndex(e)[0]}getEpochAndSlotIndex(e){if(e{let o=oQ.default(s,{autoconnect:!0,max_reconnects:5,reconnect:!0,reconnect_interval:1e3,...r});return"socket"in o?this.underlyingSocket=o.socket:this.underlyingSocket=o,o},"webSocketFactory");super(a,e,r,i),this.underlyingSocket=void 0}call(...e){let r=this.underlyingSocket?.readyState;return r===1?super.call(...e):Promise.reject(new Error("Tried to call a JSON-RPC method `"+e[0]+"` but the socket was not `CONNECTING` or `OPEN` (`readyState` was "+r+")"))}notify(...e){let r=this.underlyingSocket?.readyState;return r===1?super.notify(...e):Promise.reject(new Error("Tried to send a JSON-RPC notification `"+e[0]+"` but the socket was not `CONNECTING` or `OPEN` (`readyState` was "+r+")"))}};function vX(t,e){let r;try{r=t.layout.decode(e)}catch(i){throw new Error("invalid instruction; "+i)}if(r.typeIndex!==t.index)throw new Error(`invalid account data; account type mismatch ${r.typeIndex} != ${t.index}`);return r}n(vX,"decodeData");var YM=56,q0=class{static{n(this,"AddressLookupTableAccount")}constructor(e){this.key=void 0,this.state=void 0,this.key=e.key,this.state=e.state}isActive(){let e=BigInt("0xffffffffffffffff");return this.state.deactivationSlot===e}static deserialize(e){let r=vX(SX,e),i=e.length-YM;He(i>=0,"lookup table is invalid"),He(i%32===0,"lookup table is invalid");let a=i/32,{addresses:s}=D.struct([D.seq(We(),a,"addresses")]).decode(e.slice(YM));return{deactivationSlot:r.deactivationSlot,lastExtendedSlot:r.lastExtendedSlot,lastExtendedSlotStartIndex:r.lastExtendedStartIndex,authority:r.authority.length!==0?new re(r.authority[0]):void 0,addresses:s.map(o=>new re(o))}}},SX={index:1,layout:D.struct([D.u32("typeIndex"),X1("deactivationSlot"),D.nu64("lastExtendedSlot"),D.u8("lastExtendedStartIndex"),D.u8(),D.seq(We(),D.offset(D.u8(),-1),"authority")])},wX=/^[^:]+:\/\/([^:[]+|\[[^\]]+\])(:\d+)?(.*)/i;function xX(t){let e=t.match(wX);if(e==null)throw TypeError(`Failed to validate endpoint URL \`${t}\``);let[r,i,a,s]=e,o=t.startsWith("https:")?"wss:":"ws:",l=a==null?null:parseInt(a.slice(1),10),d=l==null?"":`:${l+1}`;return`${o}//${i}${d}${s}`}n(xX,"makeWebsocketUrl");var gr=f.coerce(f.instance(re),f.string(),t=>new re(t)),kD=f.tuple([f.string(),f.literal("base64")]),Mv=f.coerce(f.instance(ye.Buffer),kD,t=>ye.Buffer.from(t[0],"base64")),ED=30*1e3;function AX(t){if(/^https?:/.test(t)===!1)throw new TypeError("Endpoint URL must start with `http:` or `https:`.");return t}n(AX,"assertEndpointUrl");function St(t){let e,r;if(typeof t=="string")e=t;else if(t){let{commitment:i,...a}=t;e=i,r=a}return{commitment:e,config:r}}n(St,"extractCommitmentFromConfig");function PD(t){return f.union([f.type({jsonrpc:f.literal("2.0"),id:f.string(),result:t}),f.type({jsonrpc:f.literal("2.0"),id:f.string(),error:f.type({code:f.unknown(),message:f.string(),data:f.optional(f.any())})})])}n(PD,"createRpcResult");var _X=PD(f.unknown());function Re(t){return f.coerce(PD(t),_X,e=>"error"in e?e:{...e,result:f.create(e.result,t)})}n(Re,"jsonRpcResult");function Ct(t){return Re(f.type({context:f.type({slot:f.number()}),value:t}))}n(Ct,"jsonRpcResultAndContext");function E3(t){return f.type({context:f.type({slot:f.number()}),value:t})}n(E3,"notificationResultAndContext");function Jb(t,e){return t===0?new Y1({header:e.header,staticAccountKeys:e.accountKeys.map(r=>new re(r)),recentBlockhash:e.recentBlockhash,compiledInstructions:e.instructions.map(r=>({programIdIndex:r.programIdIndex,accountKeyIndexes:r.accounts,data:$r.default.decode(r.data)})),addressTableLookups:e.addressTableLookups}):new sn(e)}n(Jb,"versionedMessageFromResponse");var kX=f.type({foundation:f.number(),foundationTerm:f.number(),initial:f.number(),taper:f.number(),terminal:f.number()}),EX=Re(f.array(f.nullable(f.type({epoch:f.number(),effectiveSlot:f.number(),amount:f.number(),postBalance:f.number(),commission:f.optional(f.nullable(f.number()))})))),PX=f.array(f.type({slot:f.number(),prioritizationFee:f.number()})),TX=f.type({total:f.number(),validator:f.number(),foundation:f.number(),epoch:f.number()}),zX=f.type({epoch:f.number(),slotIndex:f.number(),slotsInEpoch:f.number(),absoluteSlot:f.number(),blockHeight:f.optional(f.number()),transactionCount:f.optional(f.number())}),IX=f.type({slotsPerEpoch:f.number(),leaderScheduleSlotOffset:f.number(),warmup:f.boolean(),firstNormalEpoch:f.number(),firstNormalSlot:f.number()}),MX=f.record(f.string(),f.array(f.number())),gl=f.nullable(f.union([f.type({}),f.string()])),DX=f.type({err:gl}),RX=f.literal("receivedSignature"),BX=f.type({"solana-core":f.string(),"feature-set":f.optional(f.number())}),QM=Ct(f.type({err:f.nullable(f.union([f.type({}),f.string()])),logs:f.nullable(f.array(f.string())),accounts:f.optional(f.nullable(f.array(f.nullable(f.type({executable:f.boolean(),owner:f.string(),lamports:f.number(),data:f.array(f.string()),rentEpoch:f.optional(f.number())}))))),unitsConsumed:f.optional(f.number()),returnData:f.optional(f.nullable(f.type({programId:f.string(),data:f.tuple([f.string(),f.literal("base64")])})))})),CX=Ct(f.type({byIdentity:f.record(f.string(),f.array(f.number())),range:f.type({firstSlot:f.number(),lastSlot:f.number()})}));function OX(t,e,r,i,a,s){let o=r||bX,l;if(s==null){let c={freeSocketTimeout:19e3,keepAlive:!0,maxSockets:25};t.startsWith("https:")?l=new uX(c):l=new pX(c)}else if(s!==!1){let c=t.startsWith("https:");if(c&&!(s instanceof tv.Agent))throw new Error("The endpoint `"+t+"` can only be paired with an `https.Agent`. You have, instead, supplied an `http.Agent` through `httpAgent`.");if(!c&&s instanceof tv.Agent)throw new Error("The endpoint `"+t+"` can only be paired with an `http.Agent`. You have, instead, supplied an `https.Agent` through `httpAgent`.");l=s}let d;return i&&(d=n(async(c,p)=>{let x=await new Promise((E,I)=>{try{i(c,p,(k,z)=>E([k,z]))}catch(k){I(k)}});return await o(...x)},"fetchWithMiddleware")),new aQ.default(async(c,p)=>{let x={method:"POST",body:c,agent:l,headers:Object.assign({"Content-Type":"application/json"},e||{},Nee)};try{let E=5,I,k=500;for(;d?I=await d(t,x):I=await o(t,x),!(I.status!==429||a===!0||(E-=1,E===0));)console.log(`Server responded with ${I.status} ${I.statusText}. Retrying after ${k}ms delay...`),await cl(k),k*=2;let z=await I.text();I.ok?p(null,z):p(new Error(`${I.status} ${I.statusText}: ${z}`))}catch(E){E instanceof Error&&p(E)}},{})}n(OX,"createRpcClient");function NX(t){return(e,r)=>new Promise((i,a)=>{t.request(e,r,(s,o)=>{if(s){a(s);return}i(o)})})}n(NX,"createRpcRequest");function qX(t){return e=>new Promise((r,i)=>{e.length===0&&r([]);let a=e.map(s=>t.request(s.methodName,s.args));t.request(a,(s,o)=>{if(s){i(s);return}r(o)})})}n(qX,"createRpcBatchRequest");var WX=Re(kX),VX=Re(TX),FX=Re(PX),KX=Re(zX),LX=Re(IX),UX=Re(MX),jX=Re(f.number()),HX=Ct(f.type({total:f.number(),circulating:f.number(),nonCirculating:f.number(),nonCirculatingAccounts:f.array(gr)})),hv=f.type({amount:f.string(),uiAmount:f.nullable(f.number()),decimals:f.number(),uiAmountString:f.optional(f.string())}),$X=Ct(f.array(f.type({address:gr,amount:f.string(),uiAmount:f.nullable(f.number()),decimals:f.number(),uiAmountString:f.optional(f.string())}))),GX=Ct(f.array(f.type({pubkey:gr,account:f.type({executable:f.boolean(),owner:gr,lamports:f.number(),data:Mv,rentEpoch:f.number()})}))),gv=f.type({program:f.string(),parsed:f.unknown(),space:f.number()}),ZX=Ct(f.array(f.type({pubkey:gr,account:f.type({executable:f.boolean(),owner:gr,lamports:f.number(),data:gv,rentEpoch:f.number()})}))),JX=Ct(f.array(f.type({lamports:f.number(),address:gr}))),W0=f.type({executable:f.boolean(),owner:gr,lamports:f.number(),data:Mv,rentEpoch:f.number()}),YX=f.type({pubkey:gr,account:W0}),QX=f.coerce(f.union([f.instance(ye.Buffer),gv]),f.union([kD,gv]),t=>Array.isArray(t)?f.create(t,Mv):t),yv=f.type({executable:f.boolean(),owner:gr,lamports:f.number(),data:QX,rentEpoch:f.number()}),XX=f.type({pubkey:gr,account:yv}),eee=f.type({state:f.union([f.literal("active"),f.literal("inactive"),f.literal("activating"),f.literal("deactivating")]),active:f.number(),inactive:f.number()}),tee=Re(f.array(f.type({signature:f.string(),slot:f.number(),err:gl,memo:f.nullable(f.string()),blockTime:f.optional(f.nullable(f.number()))}))),ree=Re(f.array(f.type({signature:f.string(),slot:f.number(),err:gl,memo:f.nullable(f.string()),blockTime:f.optional(f.nullable(f.number()))}))),iee=f.type({subscription:f.number(),result:E3(W0)}),aee=f.type({pubkey:gr,account:W0}),nee=f.type({subscription:f.number(),result:E3(aee)}),see=f.type({parent:f.number(),slot:f.number(),root:f.number()}),oee=f.type({subscription:f.number(),result:see}),lee=f.union([f.type({type:f.union([f.literal("firstShredReceived"),f.literal("completed"),f.literal("optimisticConfirmation"),f.literal("root")]),slot:f.number(),timestamp:f.number()}),f.type({type:f.literal("createdBank"),parent:f.number(),slot:f.number(),timestamp:f.number()}),f.type({type:f.literal("frozen"),slot:f.number(),timestamp:f.number(),stats:f.type({numTransactionEntries:f.number(),numSuccessfulTransactions:f.number(),numFailedTransactions:f.number(),maxTransactionsPerEntry:f.number()})}),f.type({type:f.literal("dead"),slot:f.number(),timestamp:f.number(),err:f.string()})]),dee=f.type({subscription:f.number(),result:lee}),uee=f.type({subscription:f.number(),result:E3(f.union([DX,RX]))}),cee=f.type({subscription:f.number(),result:f.number()}),pee=f.type({pubkey:f.string(),gossip:f.nullable(f.string()),tpu:f.nullable(f.string()),rpc:f.nullable(f.string()),version:f.nullable(f.string())}),XM=f.type({votePubkey:f.string(),nodePubkey:f.string(),activatedStake:f.number(),epochVoteAccount:f.boolean(),epochCredits:f.array(f.tuple([f.number(),f.number(),f.number()])),commission:f.number(),lastVote:f.number(),rootSlot:f.nullable(f.number())}),mee=Re(f.type({current:f.array(XM),delinquent:f.array(XM)})),fee=f.union([f.literal("processed"),f.literal("confirmed"),f.literal("finalized")]),hee=f.type({slot:f.number(),confirmations:f.nullable(f.number()),err:gl,confirmationStatus:f.optional(fee)}),gee=Ct(f.array(f.nullable(hee))),yee=Re(f.number()),TD=f.type({accountKey:gr,writableIndexes:f.array(f.number()),readonlyIndexes:f.array(f.number())}),Dv=f.type({signatures:f.array(f.string()),message:f.type({accountKeys:f.array(f.string()),header:f.type({numRequiredSignatures:f.number(),numReadonlySignedAccounts:f.number(),numReadonlyUnsignedAccounts:f.number()}),instructions:f.array(f.type({accounts:f.array(f.number()),data:f.string(),programIdIndex:f.number()})),recentBlockhash:f.string(),addressTableLookups:f.optional(f.array(TD))})}),zD=f.type({pubkey:gr,signer:f.boolean(),writable:f.boolean(),source:f.optional(f.union([f.literal("transaction"),f.literal("lookupTable")]))}),ID=f.type({accountKeys:f.array(zD),signatures:f.array(f.string())}),MD=f.type({parsed:f.unknown(),program:f.string(),programId:gr}),DD=f.type({accounts:f.array(gr),data:f.string(),programId:gr}),bee=f.union([DD,MD]),vee=f.union([f.type({parsed:f.unknown(),program:f.string(),programId:f.string()}),f.type({accounts:f.array(f.string()),data:f.string(),programId:f.string()})]),RD=f.coerce(bee,vee,t=>"accounts"in t?f.create(t,DD):f.create(t,MD)),BD=f.type({signatures:f.array(f.string()),message:f.type({accountKeys:f.array(zD),instructions:f.array(RD),recentBlockhash:f.string(),addressTableLookups:f.optional(f.nullable(f.array(TD)))})}),y3=f.type({accountIndex:f.number(),mint:f.string(),owner:f.optional(f.string()),uiTokenAmount:hv}),CD=f.type({writable:f.array(gr),readonly:f.array(gr)}),P3=f.type({err:gl,fee:f.number(),innerInstructions:f.optional(f.nullable(f.array(f.type({index:f.number(),instructions:f.array(f.type({accounts:f.array(f.number()),data:f.string(),programIdIndex:f.number()}))})))),preBalances:f.array(f.number()),postBalances:f.array(f.number()),logMessages:f.optional(f.nullable(f.array(f.string()))),preTokenBalances:f.optional(f.nullable(f.array(y3))),postTokenBalances:f.optional(f.nullable(f.array(y3))),loadedAddresses:f.optional(CD),computeUnitsConsumed:f.optional(f.number())}),Rv=f.type({err:gl,fee:f.number(),innerInstructions:f.optional(f.nullable(f.array(f.type({index:f.number(),instructions:f.array(RD)})))),preBalances:f.array(f.number()),postBalances:f.array(f.number()),logMessages:f.optional(f.nullable(f.array(f.string()))),preTokenBalances:f.optional(f.nullable(f.array(y3))),postTokenBalances:f.optional(f.nullable(f.array(y3))),loadedAddresses:f.optional(CD),computeUnitsConsumed:f.optional(f.number())}),od=f.union([f.literal(0),f.literal("legacy")]),yl=f.type({pubkey:f.string(),lamports:f.number(),postBalance:f.nullable(f.number()),rewardType:f.nullable(f.string()),commission:f.optional(f.nullable(f.number()))}),See=Re(f.nullable(f.type({blockhash:f.string(),previousBlockhash:f.string(),parentSlot:f.number(),transactions:f.array(f.type({transaction:Dv,meta:f.nullable(P3),version:f.optional(od)})),rewards:f.optional(f.array(yl)),blockTime:f.nullable(f.number()),blockHeight:f.nullable(f.number())}))),wee=Re(f.nullable(f.type({blockhash:f.string(),previousBlockhash:f.string(),parentSlot:f.number(),rewards:f.optional(f.array(yl)),blockTime:f.nullable(f.number()),blockHeight:f.nullable(f.number())}))),xee=Re(f.nullable(f.type({blockhash:f.string(),previousBlockhash:f.string(),parentSlot:f.number(),transactions:f.array(f.type({transaction:ID,meta:f.nullable(P3),version:f.optional(od)})),rewards:f.optional(f.array(yl)),blockTime:f.nullable(f.number()),blockHeight:f.nullable(f.number())}))),Aee=Re(f.nullable(f.type({blockhash:f.string(),previousBlockhash:f.string(),parentSlot:f.number(),transactions:f.array(f.type({transaction:BD,meta:f.nullable(Rv),version:f.optional(od)})),rewards:f.optional(f.array(yl)),blockTime:f.nullable(f.number()),blockHeight:f.nullable(f.number())}))),_ee=Re(f.nullable(f.type({blockhash:f.string(),previousBlockhash:f.string(),parentSlot:f.number(),transactions:f.array(f.type({transaction:ID,meta:f.nullable(Rv),version:f.optional(od)})),rewards:f.optional(f.array(yl)),blockTime:f.nullable(f.number()),blockHeight:f.nullable(f.number())}))),kee=Re(f.nullable(f.type({blockhash:f.string(),previousBlockhash:f.string(),parentSlot:f.number(),rewards:f.optional(f.array(yl)),blockTime:f.nullable(f.number()),blockHeight:f.nullable(f.number())}))),Eee=Re(f.nullable(f.type({blockhash:f.string(),previousBlockhash:f.string(),parentSlot:f.number(),transactions:f.array(f.type({transaction:Dv,meta:f.nullable(P3)})),rewards:f.optional(f.array(yl)),blockTime:f.nullable(f.number())}))),eD=Re(f.nullable(f.type({blockhash:f.string(),previousBlockhash:f.string(),parentSlot:f.number(),signatures:f.array(f.string()),blockTime:f.nullable(f.number())}))),Yb=Re(f.nullable(f.type({slot:f.number(),meta:P3,blockTime:f.optional(f.nullable(f.number())),transaction:Dv,version:f.optional(od)}))),d3=Re(f.nullable(f.type({slot:f.number(),transaction:BD,meta:f.nullable(Rv),blockTime:f.optional(f.nullable(f.number())),version:f.optional(od)}))),Pee=Ct(f.type({blockhash:f.string(),feeCalculator:f.type({lamportsPerSignature:f.number()})})),Tee=Ct(f.type({blockhash:f.string(),lastValidBlockHeight:f.number()})),zee=Ct(f.boolean()),Iee=f.type({slot:f.number(),numTransactions:f.number(),numSlots:f.number(),samplePeriodSecs:f.number()}),Mee=Re(f.array(Iee)),Dee=Ct(f.nullable(f.type({feeCalculator:f.type({lamportsPerSignature:f.number()})}))),Ree=Re(f.string()),Bee=Re(f.string()),Cee=f.type({err:gl,logs:f.array(f.string()),signature:f.string()}),Oee=f.type({result:E3(Cee),subscription:f.number()}),Nee={"solana-client":"js/0.0.0-development"},bv=class{static{n(this,"Connection")}constructor(e,r){this._commitment=void 0,this._confirmTransactionInitialTimeout=void 0,this._rpcEndpoint=void 0,this._rpcWsEndpoint=void 0,this._rpcClient=void 0,this._rpcRequest=void 0,this._rpcBatchRequest=void 0,this._rpcWebSocket=void 0,this._rpcWebSocketConnected=!1,this._rpcWebSocketHeartbeat=null,this._rpcWebSocketIdleTimeout=null,this._rpcWebSocketGeneration=0,this._disableBlockhashCaching=!1,this._pollingBlockhash=!1,this._blockhashInfo={latestBlockhash:null,lastFetch:0,transactionSignatures:[],simulatedSignatures:[]},this._nextClientSubscriptionId=0,this._subscriptionDisposeFunctionsByClientSubscriptionId={},this._subscriptionHashByClientSubscriptionId={},this._subscriptionStateChangeCallbacksByHash={},this._subscriptionCallbacksByServerSubscriptionId={},this._subscriptionsByHash={},this._subscriptionsAutoDisposedByRpc=new Set,this.getBlockHeight=(()=>{let u={};return async c=>{let{commitment:p,config:x}=St(c),E=this._buildArgs([],p,void 0,x),I=JM(E);return u[I]=u[I]??(async()=>{try{let k=await this._rpcRequest("getBlockHeight",E),z=f.create(k,Re(f.number()));if("error"in z)throw new ce(z.error,"failed to get block height information");return z.result}finally{delete u[I]}})(),await u[I]}})();let i,a,s,o,l,d;r&&typeof r=="string"?this._commitment=r:r&&(this._commitment=r.commitment,this._confirmTransactionInitialTimeout=r.confirmTransactionInitialTimeout,i=r.wsEndpoint,a=r.httpHeaders,s=r.fetch,o=r.fetchMiddleware,l=r.disableRetryOnRateLimit,d=r.httpAgent),this._rpcEndpoint=AX(e),this._rpcWsEndpoint=i||xX(e),this._rpcClient=OX(e,a,s,o,l,d),this._rpcRequest=NX(this._rpcClient),this._rpcBatchRequest=qX(this._rpcClient),this._rpcWebSocket=new fv(this._rpcWsEndpoint,{autoconnect:!1,max_reconnects:1/0}),this._rpcWebSocket.on("open",this._wsOnOpen.bind(this)),this._rpcWebSocket.on("error",this._wsOnError.bind(this)),this._rpcWebSocket.on("close",this._wsOnClose.bind(this)),this._rpcWebSocket.on("accountNotification",this._wsOnAccountNotification.bind(this)),this._rpcWebSocket.on("programNotification",this._wsOnProgramAccountNotification.bind(this)),this._rpcWebSocket.on("slotNotification",this._wsOnSlotNotification.bind(this)),this._rpcWebSocket.on("slotsUpdatesNotification",this._wsOnSlotUpdatesNotification.bind(this)),this._rpcWebSocket.on("signatureNotification",this._wsOnSignatureNotification.bind(this)),this._rpcWebSocket.on("rootNotification",this._wsOnRootNotification.bind(this)),this._rpcWebSocket.on("logsNotification",this._wsOnLogsNotification.bind(this))}get commitment(){return this._commitment}get rpcEndpoint(){return this._rpcEndpoint}async getBalanceAndContext(e,r){let{commitment:i,config:a}=St(r),s=this._buildArgs([e.toBase58()],i,void 0,a),o=await this._rpcRequest("getBalance",s),l=f.create(o,Ct(f.number()));if("error"in l)throw new ce(l.error,`failed to get balance for ${e.toBase58()}`);return l.result}async getBalance(e,r){return await this.getBalanceAndContext(e,r).then(i=>i.value).catch(i=>{throw new Error("failed to get balance of account "+e.toBase58()+": "+i)})}async getBlockTime(e){let r=await this._rpcRequest("getBlockTime",[e]),i=f.create(r,Re(f.nullable(f.number())));if("error"in i)throw new ce(i.error,`failed to get block time for slot ${e}`);return i.result}async getMinimumLedgerSlot(){let e=await this._rpcRequest("minimumLedgerSlot",[]),r=f.create(e,Re(f.number()));if("error"in r)throw new ce(r.error,"failed to get minimum ledger slot");return r.result}async getFirstAvailableBlock(){let e=await this._rpcRequest("getFirstAvailableBlock",[]),r=f.create(e,jX);if("error"in r)throw new ce(r.error,"failed to get first available block");return r.result}async getSupply(e){let r={};typeof e=="string"?r={commitment:e}:e?r={...e,commitment:e&&e.commitment||this.commitment}:r={commitment:this.commitment};let i=await this._rpcRequest("getSupply",[r]),a=f.create(i,HX);if("error"in a)throw new ce(a.error,"failed to get supply");return a.result}async getTokenSupply(e,r){let i=this._buildArgs([e.toBase58()],r),a=await this._rpcRequest("getTokenSupply",i),s=f.create(a,Ct(hv));if("error"in s)throw new ce(s.error,"failed to get token supply");return s.result}async getTokenAccountBalance(e,r){let i=this._buildArgs([e.toBase58()],r),a=await this._rpcRequest("getTokenAccountBalance",i),s=f.create(a,Ct(hv));if("error"in s)throw new ce(s.error,"failed to get token account balance");return s.result}async getTokenAccountsByOwner(e,r,i){let{commitment:a,config:s}=St(i),o=[e.toBase58()];"mint"in r?o.push({mint:r.mint.toBase58()}):o.push({programId:r.programId.toBase58()});let l=this._buildArgs(o,a,"base64",s),d=await this._rpcRequest("getTokenAccountsByOwner",l),u=f.create(d,GX);if("error"in u)throw new ce(u.error,`failed to get token accounts owned by account ${e.toBase58()}`);return u.result}async getParsedTokenAccountsByOwner(e,r,i){let a=[e.toBase58()];"mint"in r?a.push({mint:r.mint.toBase58()}):a.push({programId:r.programId.toBase58()});let s=this._buildArgs(a,i,"jsonParsed"),o=await this._rpcRequest("getTokenAccountsByOwner",s),l=f.create(o,ZX);if("error"in l)throw new ce(l.error,`failed to get token accounts owned by account ${e.toBase58()}`);return l.result}async getLargestAccounts(e){let r={...e,commitment:e&&e.commitment||this.commitment},i=r.filter||r.commitment?[r]:[],a=await this._rpcRequest("getLargestAccounts",i),s=f.create(a,JX);if("error"in s)throw new ce(s.error,"failed to get largest accounts");return s.result}async getTokenLargestAccounts(e,r){let i=this._buildArgs([e.toBase58()],r),a=await this._rpcRequest("getTokenLargestAccounts",i),s=f.create(a,$X);if("error"in s)throw new ce(s.error,"failed to get token largest accounts");return s.result}async getAccountInfoAndContext(e,r){let{commitment:i,config:a}=St(r),s=this._buildArgs([e.toBase58()],i,"base64",a),o=await this._rpcRequest("getAccountInfo",s),l=f.create(o,Ct(f.nullable(W0)));if("error"in l)throw new ce(l.error,`failed to get info about account ${e.toBase58()}`);return l.result}async getParsedAccountInfo(e,r){let{commitment:i,config:a}=St(r),s=this._buildArgs([e.toBase58()],i,"jsonParsed",a),o=await this._rpcRequest("getAccountInfo",s),l=f.create(o,Ct(f.nullable(yv)));if("error"in l)throw new ce(l.error,`failed to get info about account ${e.toBase58()}`);return l.result}async getAccountInfo(e,r){try{return(await this.getAccountInfoAndContext(e,r)).value}catch(i){throw new Error("failed to get info about account "+e.toBase58()+": "+i)}}async getMultipleParsedAccounts(e,r){let{commitment:i,config:a}=St(r),s=e.map(u=>u.toBase58()),o=this._buildArgs([s],i,"jsonParsed",a),l=await this._rpcRequest("getMultipleAccounts",o),d=f.create(l,Ct(f.array(f.nullable(yv))));if("error"in d)throw new ce(d.error,`failed to get info for accounts ${s}`);return d.result}async getMultipleAccountsInfoAndContext(e,r){let{commitment:i,config:a}=St(r),s=e.map(u=>u.toBase58()),o=this._buildArgs([s],i,"base64",a),l=await this._rpcRequest("getMultipleAccounts",o),d=f.create(l,Ct(f.array(f.nullable(W0))));if("error"in d)throw new ce(d.error,`failed to get info for accounts ${s}`);return d.result}async getMultipleAccountsInfo(e,r){return(await this.getMultipleAccountsInfoAndContext(e,r)).value}async getStakeActivation(e,r,i){let{commitment:a,config:s}=St(r),o=this._buildArgs([e.toBase58()],a,void 0,{...s,epoch:i??s?.epoch}),l=await this._rpcRequest("getStakeActivation",o),d=f.create(l,Re(eee));if("error"in d)throw new ce(d.error,`failed to get Stake Activation ${e.toBase58()}`);return d.result}async getProgramAccounts(e,r){let{commitment:i,config:a}=St(r),{encoding:s,...o}=a||{},l=this._buildArgs([e.toBase58()],i,s||"base64",o),d=await this._rpcRequest("getProgramAccounts",l),u=f.array(YX),c=o.withContext===!0?f.create(d,Ct(u)):f.create(d,Re(u));if("error"in c)throw new ce(c.error,`failed to get accounts owned by program ${e.toBase58()}`);return c.result}async getParsedProgramAccounts(e,r){let{commitment:i,config:a}=St(r),s=this._buildArgs([e.toBase58()],i,"jsonParsed",a),o=await this._rpcRequest("getProgramAccounts",s),l=f.create(o,Re(f.array(XX)));if("error"in l)throw new ce(l.error,`failed to get accounts owned by program ${e.toBase58()}`);return l.result}async confirmTransaction(e,r){let i;if(typeof e=="string")i=e;else{let s=e;if(s.abortSignal?.aborted)return Promise.reject(s.abortSignal.reason);i=s.signature}let a;try{a=$r.default.decode(i)}catch{throw new Error("signature must be base58 encoded: "+i)}return He(a.length===64,"signature has invalid length"),typeof e=="string"?await this.confirmTransactionUsingLegacyTimeoutStrategy({commitment:r||this.commitment,signature:i}):"lastValidBlockHeight"in e?await this.confirmTransactionUsingBlockHeightExceedanceStrategy({commitment:r||this.commitment,strategy:e}):await this.confirmTransactionUsingDurableNonceStrategy({commitment:r||this.commitment,strategy:e})}getCancellationPromise(e){return new Promise((r,i)=>{e!=null&&(e.aborted?i(e.reason):e.addEventListener("abort",()=>{i(e.reason)}))})}getTransactionConfirmationPromise({commitment:e,signature:r}){let i,a,s=!1,o=new Promise((d,u)=>{try{i=this.onSignature(r,(p,x)=>{i=void 0;let E={context:x,value:p};d({__type:Ln.PROCESSED,response:E})},e);let c=new Promise(p=>{i==null?p():a=this._onSubscriptionStateChange(i,x=>{x==="subscribed"&&p()})});(async()=>{if(await c,s)return;let p=await this.getSignatureStatus(r);if(s||p==null)return;let{context:x,value:E}=p;if(E!=null)if(E?.err)u(E.err);else{switch(e){case"confirmed":case"single":case"singleGossip":{if(E.confirmationStatus==="processed")return;break}case"finalized":case"max":case"root":{if(E.confirmationStatus==="processed"||E.confirmationStatus==="confirmed")return;break}case"processed":case"recent":}s=!0,d({__type:Ln.PROCESSED,response:{context:x,value:E}})}})()}catch(c){u(c)}});return{abortConfirmation:n(()=>{a&&(a(),a=void 0),i!=null&&(this.removeSignatureListener(i),i=void 0)},"abortConfirmation"),confirmationPromise:o}}async confirmTransactionUsingBlockHeightExceedanceStrategy({commitment:e,strategy:{abortSignal:r,lastValidBlockHeight:i,signature:a}}){let s=!1,o=new Promise(p=>{let x=n(async()=>{try{return await this.getBlockHeight(e)}catch{return-1}},"checkBlockHeight");(async()=>{let E=await x();if(!s){for(;E<=i;)if(await cl(1e3),s||(E=await x(),s))return;p({__type:Ln.BLOCKHEIGHT_EXCEEDED})}})()}),{abortConfirmation:l,confirmationPromise:d}=this.getTransactionConfirmationPromise({commitment:e,signature:a}),u=this.getCancellationPromise(r),c;try{let p=await Promise.race([u,d,o]);if(p.__type===Ln.PROCESSED)c=p.response;else throw new C0(a)}finally{s=!0,l()}return c}async confirmTransactionUsingDurableNonceStrategy({commitment:e,strategy:{abortSignal:r,minContextSlot:i,nonceAccountPubkey:a,nonceValue:s,signature:o}}){let l=!1,d=new Promise(E=>{let I=s,k=null,z=n(async()=>{try{let{context:R,value:F}=await this.getNonceAndContext(a,{commitment:e,minContextSlot:i});return k=R.slot,F?.nonce}catch{return I}},"getCurrentNonceValue");(async()=>{if(I=await z(),!l)for(;;){if(s!==I){E({__type:Ln.NONCE_INVALID,slotInWhichNonceDidAdvance:k});return}if(await cl(2e3),l||(I=await z(),l))return}})()}),{abortConfirmation:u,confirmationPromise:c}=this.getTransactionConfirmationPromise({commitment:e,signature:o}),p=this.getCancellationPromise(r),x;try{let E=await Promise.race([p,c,d]);if(E.__type===Ln.PROCESSED)x=E.response;else{let I;for(;;){let k=await this.getSignatureStatus(o);if(k==null)break;if(k.context.slot<(E.slotInWhichNonceDidAdvance??i)){await cl(400);continue}I=k;break}if(I?.value){let k=e||"finalized",{confirmationStatus:z}=I.value;switch(k){case"processed":case"recent":if(z!=="processed"&&z!=="confirmed"&&z!=="finalized")throw new $s(o);break;case"confirmed":case"single":case"singleGossip":if(z!=="confirmed"&&z!=="finalized")throw new $s(o);break;case"finalized":case"max":case"root":if(z!=="finalized")throw new $s(o);break;default:}x={context:I.context,value:{err:I.value.err}}}else throw new $s(o)}}finally{l=!0,u()}return x}async confirmTransactionUsingLegacyTimeoutStrategy({commitment:e,signature:r}){let i,a=new Promise(d=>{let u=this._confirmTransactionInitialTimeout||6e4;switch(e){case"processed":case"recent":case"single":case"confirmed":case"singleGossip":{u=this._confirmTransactionInitialTimeout||3e4;break}}i=setTimeout(()=>d({__type:Ln.TIMED_OUT,timeoutMs:u}),u)}),{abortConfirmation:s,confirmationPromise:o}=this.getTransactionConfirmationPromise({commitment:e,signature:r}),l;try{let d=await Promise.race([o,a]);if(d.__type===Ln.PROCESSED)l=d.response;else throw new O0(r,d.timeoutMs/1e3)}finally{clearTimeout(i),s()}return l}async getClusterNodes(){let e=await this._rpcRequest("getClusterNodes",[]),r=f.create(e,Re(f.array(pee)));if("error"in r)throw new ce(r.error,"failed to get cluster nodes");return r.result}async getVoteAccounts(e){let r=this._buildArgs([],e),i=await this._rpcRequest("getVoteAccounts",r),a=f.create(i,mee);if("error"in a)throw new ce(a.error,"failed to get vote accounts");return a.result}async getSlot(e){let{commitment:r,config:i}=St(e),a=this._buildArgs([],r,void 0,i),s=await this._rpcRequest("getSlot",a),o=f.create(s,Re(f.number()));if("error"in o)throw new ce(o.error,"failed to get slot");return o.result}async getSlotLeader(e){let{commitment:r,config:i}=St(e),a=this._buildArgs([],r,void 0,i),s=await this._rpcRequest("getSlotLeader",a),o=f.create(s,Re(f.string()));if("error"in o)throw new ce(o.error,"failed to get slot leader");return o.result}async getSlotLeaders(e,r){let i=[e,r],a=await this._rpcRequest("getSlotLeaders",i),s=f.create(a,Re(f.array(gr)));if("error"in s)throw new ce(s.error,"failed to get slot leaders");return s.result}async getSignatureStatus(e,r){let{context:i,value:a}=await this.getSignatureStatuses([e],r);He(a.length===1);let s=a[0];return{context:i,value:s}}async getSignatureStatuses(e,r){let i=[e];r&&i.push(r);let a=await this._rpcRequest("getSignatureStatuses",i),s=f.create(a,gee);if("error"in s)throw new ce(s.error,"failed to get signature status");return s.result}async getTransactionCount(e){let{commitment:r,config:i}=St(e),a=this._buildArgs([],r,void 0,i),s=await this._rpcRequest("getTransactionCount",a),o=f.create(s,Re(f.number()));if("error"in o)throw new ce(o.error,"failed to get transaction count");return o.result}async getTotalSupply(e){return(await this.getSupply({commitment:e,excludeNonCirculatingAccountsList:!0})).value.total}async getInflationGovernor(e){let r=this._buildArgs([],e),i=await this._rpcRequest("getInflationGovernor",r),a=f.create(i,WX);if("error"in a)throw new ce(a.error,"failed to get inflation");return a.result}async getInflationReward(e,r,i){let{commitment:a,config:s}=St(i),o=this._buildArgs([e.map(u=>u.toBase58())],a,void 0,{...s,epoch:r??s?.epoch}),l=await this._rpcRequest("getInflationReward",o),d=f.create(l,EX);if("error"in d)throw new ce(d.error,"failed to get inflation reward");return d.result}async getInflationRate(){let e=await this._rpcRequest("getInflationRate",[]),r=f.create(e,VX);if("error"in r)throw new ce(r.error,"failed to get inflation rate");return r.result}async getEpochInfo(e){let{commitment:r,config:i}=St(e),a=this._buildArgs([],r,void 0,i),s=await this._rpcRequest("getEpochInfo",a),o=f.create(s,KX);if("error"in o)throw new ce(o.error,"failed to get epoch info");return o.result}async getEpochSchedule(){let e=await this._rpcRequest("getEpochSchedule",[]),r=f.create(e,LX);if("error"in r)throw new ce(r.error,"failed to get epoch schedule");let i=r.result;return new g3(i.slotsPerEpoch,i.leaderScheduleSlotOffset,i.warmup,i.firstNormalEpoch,i.firstNormalSlot)}async getLeaderSchedule(){let e=await this._rpcRequest("getLeaderSchedule",[]),r=f.create(e,UX);if("error"in r)throw new ce(r.error,"failed to get leader schedule");return r.result}async getMinimumBalanceForRentExemption(e,r){let i=this._buildArgs([e],r),a=await this._rpcRequest("getMinimumBalanceForRentExemption",i),s=f.create(a,yee);return"error"in s?(console.warn("Unable to fetch minimum balance for rent exemption"),0):s.result}async getRecentBlockhashAndContext(e){let r=this._buildArgs([],e),i=await this._rpcRequest("getRecentBlockhash",r),a=f.create(i,Pee);if("error"in a)throw new ce(a.error,"failed to get recent blockhash");return a.result}async getRecentPerformanceSamples(e){let r=await this._rpcRequest("getRecentPerformanceSamples",e?[e]:[]),i=f.create(r,Mee);if("error"in i)throw new ce(i.error,"failed to get recent performance samples");return i.result}async getFeeCalculatorForBlockhash(e,r){let i=this._buildArgs([e],r),a=await this._rpcRequest("getFeeCalculatorForBlockhash",i),s=f.create(a,Dee);if("error"in s)throw new ce(s.error,"failed to get fee calculator");let{context:o,value:l}=s.result;return{context:o,value:l!==null?l.feeCalculator:null}}async getFeeForMessage(e,r){let i=Be(e.serialize()).toString("base64"),a=this._buildArgs([i],r),s=await this._rpcRequest("getFeeForMessage",a),o=f.create(s,Ct(f.nullable(f.number())));if("error"in o)throw new ce(o.error,"failed to get fee for message");if(o.result===null)throw new Error("invalid blockhash");return o.result}async getRecentPrioritizationFees(e){let r=e?.lockedWritableAccounts?.map(o=>o.toBase58()),i=r?.length?[r]:[],a=await this._rpcRequest("getRecentPrioritizationFees",i),s=f.create(a,FX);if("error"in s)throw new ce(s.error,"failed to get recent prioritization fees");return s.result}async getRecentBlockhash(e){try{return(await this.getRecentBlockhashAndContext(e)).value}catch(r){throw new Error("failed to get recent blockhash: "+r)}}async getLatestBlockhash(e){try{return(await this.getLatestBlockhashAndContext(e)).value}catch(r){throw new Error("failed to get recent blockhash: "+r)}}async getLatestBlockhashAndContext(e){let{commitment:r,config:i}=St(e),a=this._buildArgs([],r,void 0,i),s=await this._rpcRequest("getLatestBlockhash",a),o=f.create(s,Tee);if("error"in o)throw new ce(o.error,"failed to get latest blockhash");return o.result}async isBlockhashValid(e,r){let{commitment:i,config:a}=St(r),s=this._buildArgs([e],i,void 0,a),o=await this._rpcRequest("isBlockhashValid",s),l=f.create(o,zee);if("error"in l)throw new ce(l.error,"failed to determine if the blockhash `"+e+"`is valid");return l.result}async getVersion(){let e=await this._rpcRequest("getVersion",[]),r=f.create(e,Re(BX));if("error"in r)throw new ce(r.error,"failed to get version");return r.result}async getGenesisHash(){let e=await this._rpcRequest("getGenesisHash",[]),r=f.create(e,Re(f.string()));if("error"in r)throw new ce(r.error,"failed to get genesis hash");return r.result}async getBlock(e,r){let{commitment:i,config:a}=St(r),s=this._buildArgsAtLeastConfirmed([e],i,void 0,a),o=await this._rpcRequest("getBlock",s);try{switch(a?.transactionDetails){case"accounts":{let l=f.create(o,xee);if("error"in l)throw l.error;return l.result}case"none":{let l=f.create(o,wee);if("error"in l)throw l.error;return l.result}default:{let l=f.create(o,See);if("error"in l)throw l.error;let{result:d}=l;return d?{...d,transactions:d.transactions.map(({transaction:u,meta:c,version:p})=>({meta:c,transaction:{...u,message:Jb(p,u.message)},version:p}))}:null}}}catch(l){throw new ce(l,"failed to get confirmed block")}}async getParsedBlock(e,r){let{commitment:i,config:a}=St(r),s=this._buildArgsAtLeastConfirmed([e],i,"jsonParsed",a),o=await this._rpcRequest("getBlock",s);try{switch(a?.transactionDetails){case"accounts":{let l=f.create(o,_ee);if("error"in l)throw l.error;return l.result}case"none":{let l=f.create(o,kee);if("error"in l)throw l.error;return l.result}default:{let l=f.create(o,Aee);if("error"in l)throw l.error;return l.result}}}catch(l){throw new ce(l,"failed to get block")}}async getBlockProduction(e){let r,i;if(typeof e=="string")i=e;else if(e){let{commitment:l,...d}=e;i=l,r=d}let a=this._buildArgs([],i,"base64",r),s=await this._rpcRequest("getBlockProduction",a),o=f.create(s,CX);if("error"in o)throw new ce(o.error,"failed to get block production information");return o.result}async getTransaction(e,r){let{commitment:i,config:a}=St(r),s=this._buildArgsAtLeastConfirmed([e],i,void 0,a),o=await this._rpcRequest("getTransaction",s),l=f.create(o,Yb);if("error"in l)throw new ce(l.error,"failed to get transaction");let d=l.result;return d&&{...d,transaction:{...d.transaction,message:Jb(d.version,d.transaction.message)}}}async getParsedTransaction(e,r){let{commitment:i,config:a}=St(r),s=this._buildArgsAtLeastConfirmed([e],i,"jsonParsed",a),o=await this._rpcRequest("getTransaction",s),l=f.create(o,d3);if("error"in l)throw new ce(l.error,"failed to get transaction");return l.result}async getParsedTransactions(e,r){let{commitment:i,config:a}=St(r),s=e.map(d=>({methodName:"getTransaction",args:this._buildArgsAtLeastConfirmed([d],i,"jsonParsed",a)}));return(await this._rpcBatchRequest(s)).map(d=>{let u=f.create(d,d3);if("error"in u)throw new ce(u.error,"failed to get transactions");return u.result})}async getTransactions(e,r){let{commitment:i,config:a}=St(r),s=e.map(d=>({methodName:"getTransaction",args:this._buildArgsAtLeastConfirmed([d],i,void 0,a)}));return(await this._rpcBatchRequest(s)).map(d=>{let u=f.create(d,Yb);if("error"in u)throw new ce(u.error,"failed to get transactions");let c=u.result;return c&&{...c,transaction:{...c.transaction,message:Jb(c.version,c.transaction.message)}}})}async getConfirmedBlock(e,r){let i=this._buildArgsAtLeastConfirmed([e],r),a=await this._rpcRequest("getConfirmedBlock",i),s=f.create(a,Eee);if("error"in s)throw new ce(s.error,"failed to get confirmed block");let o=s.result;if(!o)throw new Error("Confirmed block "+e+" not found");let l={...o,transactions:o.transactions.map(({transaction:d,meta:u})=>{let c=new sn(d.message);return{meta:u,transaction:{...d,message:c}}})};return{...l,transactions:l.transactions.map(({transaction:d,meta:u})=>({meta:u,transaction:Xe.populate(d.message,d.signatures)}))}}async getBlocks(e,r,i){let a=this._buildArgsAtLeastConfirmed(r!==void 0?[e,r]:[e],i),s=await this._rpcRequest("getBlocks",a),o=f.create(s,Re(f.array(f.number())));if("error"in o)throw new ce(o.error,"failed to get blocks");return o.result}async getBlockSignatures(e,r){let i=this._buildArgsAtLeastConfirmed([e],r,void 0,{transactionDetails:"signatures",rewards:!1}),a=await this._rpcRequest("getBlock",i),s=f.create(a,eD);if("error"in s)throw new ce(s.error,"failed to get block");let o=s.result;if(!o)throw new Error("Block "+e+" not found");return o}async getConfirmedBlockSignatures(e,r){let i=this._buildArgsAtLeastConfirmed([e],r,void 0,{transactionDetails:"signatures",rewards:!1}),a=await this._rpcRequest("getConfirmedBlock",i),s=f.create(a,eD);if("error"in s)throw new ce(s.error,"failed to get confirmed block");let o=s.result;if(!o)throw new Error("Confirmed block "+e+" not found");return o}async getConfirmedTransaction(e,r){let i=this._buildArgsAtLeastConfirmed([e],r),a=await this._rpcRequest("getConfirmedTransaction",i),s=f.create(a,Yb);if("error"in s)throw new ce(s.error,"failed to get transaction");let o=s.result;if(!o)return o;let l=new sn(o.transaction.message),d=o.transaction.signatures;return{...o,transaction:Xe.populate(l,d)}}async getParsedConfirmedTransaction(e,r){let i=this._buildArgsAtLeastConfirmed([e],r,"jsonParsed"),a=await this._rpcRequest("getConfirmedTransaction",i),s=f.create(a,d3);if("error"in s)throw new ce(s.error,"failed to get confirmed transaction");return s.result}async getParsedConfirmedTransactions(e,r){let i=e.map(o=>({methodName:"getConfirmedTransaction",args:this._buildArgsAtLeastConfirmed([o],r,"jsonParsed")}));return(await this._rpcBatchRequest(i)).map(o=>{let l=f.create(o,d3);if("error"in l)throw new ce(l.error,"failed to get confirmed transactions");return l.result})}async getConfirmedSignaturesForAddress(e,r,i){let a={},s=await this.getFirstAvailableBlock();for(;!("until"in a)&&(r--,!(r<=0||r0&&(a.until=d.signatures[d.signatures.length-1].toString())}catch(d){if(d instanceof Error&&d.message.includes("skipped"))continue;throw d}let o=await this.getSlot("finalized");for(;!("before"in a)&&(i++,!(i>o));)try{let d=await this.getConfirmedBlockSignatures(i);d.signatures.length>0&&(a.before=d.signatures[d.signatures.length-1].toString())}catch(d){if(d instanceof Error&&d.message.includes("skipped"))continue;throw d}return(await this.getConfirmedSignaturesForAddress2(e,a)).map(d=>d.signature)}async getConfirmedSignaturesForAddress2(e,r,i){let a=this._buildArgsAtLeastConfirmed([e.toBase58()],i,void 0,r),s=await this._rpcRequest("getConfirmedSignaturesForAddress2",a),o=f.create(s,tee);if("error"in o)throw new ce(o.error,"failed to get confirmed signatures for address");return o.result}async getSignaturesForAddress(e,r,i){let a=this._buildArgsAtLeastConfirmed([e.toBase58()],i,void 0,r),s=await this._rpcRequest("getSignaturesForAddress",a),o=f.create(s,ree);if("error"in o)throw new ce(o.error,"failed to get signatures for address");return o.result}async getAddressLookupTable(e,r){let{context:i,value:a}=await this.getAccountInfoAndContext(e,r),s=null;return a!==null&&(s=new q0({key:e,state:q0.deserialize(a.data)})),{context:i,value:s}}async getNonceAndContext(e,r){let{context:i,value:a}=await this.getAccountInfoAndContext(e,r),s=null;return a!==null&&(s=f3.fromAccountData(a.data)),{context:i,value:s}}async getNonce(e,r){return await this.getNonceAndContext(e,r).then(i=>i.value).catch(i=>{throw new Error("failed to get nonce for account "+e.toBase58()+": "+i)})}async requestAirdrop(e,r){let i=await this._rpcRequest("requestAirdrop",[e.toBase58(),r]),a=f.create(i,Ree);if("error"in a)throw new ce(a.error,`airdrop to ${e.toBase58()} failed`);return a.result}async _blockhashWithExpiryBlockHeight(e){if(!e){for(;this._pollingBlockhash;)await cl(100);let i=Date.now()-this._blockhashInfo.lastFetch>=ED;if(this._blockhashInfo.latestBlockhash!==null&&!i)return this._blockhashInfo.latestBlockhash}return await this._pollNewBlockhash()}async _pollNewBlockhash(){this._pollingBlockhash=!0;try{let e=Date.now(),r=this._blockhashInfo.latestBlockhash,i=r?r.blockhash:null;for(let a=0;a<50;a++){let s=await this.getLatestBlockhash("finalized");if(i!==s.blockhash)return this._blockhashInfo={latestBlockhash:s,lastFetch:Date.now(),transactionSignatures:[],simulatedSignatures:[]},s;await cl(gD/2)}throw new Error(`Unable to obtain a new blockhash after ${Date.now()-e}ms`)}finally{this._pollingBlockhash=!1}}async getStakeMinimumDelegation(e){let{commitment:r,config:i}=St(e),a=this._buildArgs([],r,"base64",i),s=await this._rpcRequest("getStakeMinimumDelegation",a),o=f.create(s,Ct(f.number()));if("error"in o)throw new ce(o.error,"failed to get stake minimum delegation");return o.result}async simulateTransaction(e,r,i){if("message"in e){let k=e.serialize(),z=ye.Buffer.from(k).toString("base64");if(Array.isArray(r)||i!==void 0)throw new Error("Invalid arguments");let R=r||{};R.encoding="base64","commitment"in R||(R.commitment=this.commitment);let F=[z,R],B=await this._rpcRequest("simulateTransaction",F),C=f.create(B,QM);if("error"in C)throw new Error("failed to simulate transaction: "+C.error.message);return C.result}let a;if(e instanceof Xe){let I=e;a=new Xe,a.feePayer=I.feePayer,a.instructions=e.instructions,a.nonceInfo=I.nonceInfo,a.signatures=I.signatures}else a=Xe.populate(e),a._message=a._json=void 0;if(r!==void 0&&!Array.isArray(r))throw new Error("Invalid arguments");let s=r;if(a.nonceInfo&&s)a.sign(...s);else{let I=this._disableBlockhashCaching;for(;;){let k=await this._blockhashWithExpiryBlockHeight(I);if(a.lastValidBlockHeight=k.lastValidBlockHeight,a.recentBlockhash=k.blockhash,!s)break;if(a.sign(...s),!a.signature)throw new Error("!signature");let z=a.signature.toString("base64");if(!this._blockhashInfo.simulatedSignatures.includes(z)&&!this._blockhashInfo.transactionSignatures.includes(z)){this._blockhashInfo.simulatedSignatures.push(z);break}else I=!0}}let o=a._compile(),l=o.serialize(),u=a._serialize(l).toString("base64"),c={encoding:"base64",commitment:this.commitment};if(i){let I=(Array.isArray(i)?i:o.nonProgramIds()).map(k=>k.toBase58());c.accounts={encoding:"base64",addresses:I}}s&&(c.sigVerify=!0);let p=[u,c],x=await this._rpcRequest("simulateTransaction",p),E=f.create(x,QM);if("error"in E){let I;if("data"in E.error&&(I=E.error.data.logs,I&&Array.isArray(I))){let k=` + `,z=k+I.join(k);console.error(E.error.message,z)}throw new N0("failed to simulate transaction: "+E.error.message,I)}return E.result}async sendTransaction(e,r,i){if("version"in e){if(r&&Array.isArray(r))throw new Error("Invalid arguments");let o=e.serialize();return await this.sendRawTransaction(o,r)}if(r===void 0||!Array.isArray(r))throw new Error("Invalid arguments");let a=r;if(e.nonceInfo)e.sign(...a);else{let o=this._disableBlockhashCaching;for(;;){let l=await this._blockhashWithExpiryBlockHeight(o);if(e.lastValidBlockHeight=l.lastValidBlockHeight,e.recentBlockhash=l.blockhash,e.sign(...a),!e.signature)throw new Error("!signature");let d=e.signature.toString("base64");if(this._blockhashInfo.transactionSignatures.includes(d))o=!0;else{this._blockhashInfo.transactionSignatures.push(d);break}}}let s=e.serialize();return await this.sendRawTransaction(s,i)}async sendRawTransaction(e,r){let i=Be(e).toString("base64");return await this.sendEncodedTransaction(i,r)}async sendEncodedTransaction(e,r){let i={encoding:"base64"},a=r&&r.skipPreflight,s=r&&r.preflightCommitment||this.commitment;r&&r.maxRetries!=null&&(i.maxRetries=r.maxRetries),r&&r.minContextSlot!=null&&(i.minContextSlot=r.minContextSlot),a&&(i.skipPreflight=a),s&&(i.preflightCommitment=s);let o=[e,i],l=await this._rpcRequest("sendTransaction",o),d=f.create(l,Bee);if("error"in d){let u;throw"data"in d.error&&(u=d.error.data.logs),new N0("failed to send transaction: "+d.error.message,u)}return d.result}_wsOnOpen(){this._rpcWebSocketConnected=!0,this._rpcWebSocketHeartbeat=setInterval(()=>{(async()=>{try{await this._rpcWebSocket.notify("ping")}catch{}})()},5e3),this._updateSubscriptions()}_wsOnError(e){this._rpcWebSocketConnected=!1,console.error("ws error:",e.message)}_wsOnClose(e){if(this._rpcWebSocketConnected=!1,this._rpcWebSocketGeneration=(this._rpcWebSocketGeneration+1)%Number.MAX_SAFE_INTEGER,this._rpcWebSocketIdleTimeout&&(clearTimeout(this._rpcWebSocketIdleTimeout),this._rpcWebSocketIdleTimeout=null),this._rpcWebSocketHeartbeat&&(clearInterval(this._rpcWebSocketHeartbeat),this._rpcWebSocketHeartbeat=null),e===1e3){this._updateSubscriptions();return}this._subscriptionCallbacksByServerSubscriptionId={},Object.entries(this._subscriptionsByHash).forEach(([r,i])=>{this._setSubscription(r,{...i,state:"pending"})})}_setSubscription(e,r){let i=this._subscriptionsByHash[e]?.state;if(this._subscriptionsByHash[e]=r,i!==r.state){let a=this._subscriptionStateChangeCallbacksByHash[e];a&&a.forEach(s=>{try{s(r.state)}catch{}})}}_onSubscriptionStateChange(e,r){let i=this._subscriptionHashByClientSubscriptionId[e];if(i==null)return()=>{};let a=this._subscriptionStateChangeCallbacksByHash[i]||=new Set;return a.add(r),()=>{a.delete(r),a.size===0&&delete this._subscriptionStateChangeCallbacksByHash[i]}}async _updateSubscriptions(){if(Object.keys(this._subscriptionsByHash).length===0){this._rpcWebSocketConnected&&(this._rpcWebSocketConnected=!1,this._rpcWebSocketIdleTimeout=setTimeout(()=>{this._rpcWebSocketIdleTimeout=null;try{this._rpcWebSocket.close()}catch(i){i instanceof Error&&console.log(`Error when closing socket connection: ${i.message}`)}},500));return}if(this._rpcWebSocketIdleTimeout!==null&&(clearTimeout(this._rpcWebSocketIdleTimeout),this._rpcWebSocketIdleTimeout=null,this._rpcWebSocketConnected=!0),!this._rpcWebSocketConnected){this._rpcWebSocket.connect();return}let e=this._rpcWebSocketGeneration,r=n(()=>e===this._rpcWebSocketGeneration,"isCurrentConnectionStillActive");await Promise.all(Object.keys(this._subscriptionsByHash).map(async i=>{let a=this._subscriptionsByHash[i];if(a!==void 0)switch(a.state){case"pending":case"unsubscribed":if(a.callbacks.size===0){delete this._subscriptionsByHash[i],a.state==="unsubscribed"&&delete this._subscriptionCallbacksByServerSubscriptionId[a.serverSubscriptionId],await this._updateSubscriptions();return}await(async()=>{let{args:s,method:o}=a;try{this._setSubscription(i,{...a,state:"subscribing"});let l=await this._rpcWebSocket.call(o,s);this._setSubscription(i,{...a,serverSubscriptionId:l,state:"subscribed"}),this._subscriptionCallbacksByServerSubscriptionId[l]=a.callbacks,await this._updateSubscriptions()}catch(l){if(l instanceof Error&&console.error(`${o} error for argument`,s,l.message),!r())return;this._setSubscription(i,{...a,state:"pending"}),await this._updateSubscriptions()}})();break;case"subscribed":a.callbacks.size===0&&await(async()=>{let{serverSubscriptionId:s,unsubscribeMethod:o}=a;if(this._subscriptionsAutoDisposedByRpc.has(s))this._subscriptionsAutoDisposedByRpc.delete(s);else{this._setSubscription(i,{...a,state:"unsubscribing"}),this._setSubscription(i,{...a,state:"unsubscribing"});try{await this._rpcWebSocket.call(o,[s])}catch(l){if(l instanceof Error&&console.error(`${o} error:`,l.message),!r())return;this._setSubscription(i,{...a,state:"subscribed"}),await this._updateSubscriptions();return}}this._setSubscription(i,{...a,state:"unsubscribed"}),await this._updateSubscriptions()})();break}}))}_handleServerNotification(e,r){let i=this._subscriptionCallbacksByServerSubscriptionId[e];i!==void 0&&i.forEach(a=>{try{a(...r)}catch(s){console.error(s)}})}_wsOnAccountNotification(e){let{result:r,subscription:i}=f.create(e,iee);this._handleServerNotification(i,[r.value,r.context])}_makeSubscription(e,r){let i=this._nextClientSubscriptionId++,a=JM([e.method,r],!0),s=this._subscriptionsByHash[a];return s===void 0?this._subscriptionsByHash[a]={...e,args:r,callbacks:new Set([e.callback]),state:"pending"}:s.callbacks.add(e.callback),this._subscriptionHashByClientSubscriptionId[i]=a,this._subscriptionDisposeFunctionsByClientSubscriptionId[i]=async()=>{delete this._subscriptionDisposeFunctionsByClientSubscriptionId[i],delete this._subscriptionHashByClientSubscriptionId[i];let o=this._subscriptionsByHash[a];He(o!==void 0,`Could not find a \`Subscription\` when tearing down client subscription #${i}`),o.callbacks.delete(e.callback),await this._updateSubscriptions()},this._updateSubscriptions(),i}onAccountChange(e,r,i){let a=this._buildArgs([e.toBase58()],i||this._commitment||"finalized","base64");return this._makeSubscription({callback:r,method:"accountSubscribe",unsubscribeMethod:"accountUnsubscribe"},a)}async removeAccountChangeListener(e){await this._unsubscribeClientSubscription(e,"account change")}_wsOnProgramAccountNotification(e){let{result:r,subscription:i}=f.create(e,nee);this._handleServerNotification(i,[{accountId:r.value.pubkey,accountInfo:r.value.account},r.context])}onProgramAccountChange(e,r,i,a){let s=this._buildArgs([e.toBase58()],i||this._commitment||"finalized","base64",a?{filters:a}:void 0);return this._makeSubscription({callback:r,method:"programSubscribe",unsubscribeMethod:"programUnsubscribe"},s)}async removeProgramAccountChangeListener(e){await this._unsubscribeClientSubscription(e,"program account change")}onLogs(e,r,i){let a=this._buildArgs([typeof e=="object"?{mentions:[e.toString()]}:e],i||this._commitment||"finalized");return this._makeSubscription({callback:r,method:"logsSubscribe",unsubscribeMethod:"logsUnsubscribe"},a)}async removeOnLogsListener(e){await this._unsubscribeClientSubscription(e,"logs")}_wsOnLogsNotification(e){let{result:r,subscription:i}=f.create(e,Oee);this._handleServerNotification(i,[r.value,r.context])}_wsOnSlotNotification(e){let{result:r,subscription:i}=f.create(e,oee);this._handleServerNotification(i,[r])}onSlotChange(e){return this._makeSubscription({callback:e,method:"slotSubscribe",unsubscribeMethod:"slotUnsubscribe"},[])}async removeSlotChangeListener(e){await this._unsubscribeClientSubscription(e,"slot change")}_wsOnSlotUpdatesNotification(e){let{result:r,subscription:i}=f.create(e,dee);this._handleServerNotification(i,[r])}onSlotUpdate(e){return this._makeSubscription({callback:e,method:"slotsUpdatesSubscribe",unsubscribeMethod:"slotsUpdatesUnsubscribe"},[])}async removeSlotUpdateListener(e){await this._unsubscribeClientSubscription(e,"slot update")}async _unsubscribeClientSubscription(e,r){let i=this._subscriptionDisposeFunctionsByClientSubscriptionId[e];i?await i():console.warn(`Ignored unsubscribe request because an active subscription with id \`${e}\` for '${r}' events could not be found.`)}_buildArgs(e,r,i,a){let s=r||this._commitment;if(s||i||a){let o={};i&&(o.encoding=i),s&&(o.commitment=s),a&&(o=Object.assign(o,a)),e.push(o)}return e}_buildArgsAtLeastConfirmed(e,r,i,a){let s=r||this._commitment;if(s&&!["confirmed","finalized"].includes(s))throw new Error("Using Connection with default commitment: `"+this._commitment+"`, but method requires at least `confirmed`");return this._buildArgs(e,r,i,a)}_wsOnSignatureNotification(e){let{result:r,subscription:i}=f.create(e,uee);r.value!=="receivedSignature"&&this._subscriptionsAutoDisposedByRpc.add(i),this._handleServerNotification(i,r.value==="receivedSignature"?[{type:"received"},r.context]:[{type:"status",result:r.value},r.context])}onSignature(e,r,i){let a=this._buildArgs([e],i||this._commitment||"finalized"),s=this._makeSubscription({callback:(o,l)=>{if(o.type==="status"){r(o.result,l);try{this.removeSignatureListener(s)}catch{}}},method:"signatureSubscribe",unsubscribeMethod:"signatureUnsubscribe"},a);return s}onSignatureWithOptions(e,r,i){let{commitment:a,...s}={...i,commitment:i&&i.commitment||this._commitment||"finalized"},o=this._buildArgs([e],a,void 0,s),l=this._makeSubscription({callback:(d,u)=>{r(d,u);try{this.removeSignatureListener(l)}catch{}},method:"signatureSubscribe",unsubscribeMethod:"signatureUnsubscribe"},o);return l}async removeSignatureListener(e){await this._unsubscribeClientSubscription(e,"signature result")}_wsOnRootNotification(e){let{result:r,subscription:i}=f.create(e,cee);this._handleServerNotification(i,[r])}onRootChange(e){return this._makeSubscription({callback:e,method:"rootSubscribe",unsubscribeMethod:"rootUnsubscribe"},[])}async removeRootChangeListener(e){await this._unsubscribeClientSubscription(e,"root change")}},b3=class t{static{n(this,"Keypair")}constructor(e){this._keypair=void 0,this._keypair=e??qM()}static generate(){return new t(qM())}static fromSecretKey(e,r){if(e.byteLength!==64)throw new Error("bad secret key size");let i=e.slice(32,64);if(!r||!r.skipValidation){let a=e.slice(0,32),s=p3(a);for(let o=0;o<32;o++)if(i[o]!==s[o])throw new Error("provided secretKey is invalid")}return new t({publicKey:i,secretKey:e})}static fromSeed(e){let r=p3(e),i=new Uint8Array(64);return i.set(e),i.set(r,32),new t({publicKey:r,secretKey:i})}get publicKey(){return new re(this._keypair.publicKey)}get secretKey(){return new Uint8Array(this._keypair.secretKey)}},Un=Object.freeze({CreateLookupTable:{index:0,layout:D.struct([D.u32("instruction"),X1("recentSlot"),D.u8("bumpSeed")])},FreezeLookupTable:{index:1,layout:D.struct([D.u32("instruction")])},ExtendLookupTable:{index:2,layout:D.struct([D.u32("instruction"),X1(),D.seq(We(),D.offset(D.u32(),-8),"addresses")])},DeactivateLookupTable:{index:3,layout:D.struct([D.u32("instruction")])},CloseLookupTable:{index:4,layout:D.struct([D.u32("instruction")])}}),vv=class{static{n(this,"AddressLookupTableInstruction")}constructor(){}static decodeInstructionType(e){this.checkProgramId(e.programId);let i=D.u32("instruction").decode(e.data),a;for(let[s,o]of Object.entries(Un))if(o.index==i){a=s;break}if(!a)throw new Error("Invalid Instruction. Should be a LookupTable Instruction");return a}static decodeCreateLookupTable(e){this.checkProgramId(e.programId),this.checkKeysLength(e.keys,4);let{recentSlot:r}=Ye(Un.CreateLookupTable,e.data);return{authority:e.keys[1].pubkey,payer:e.keys[2].pubkey,recentSlot:Number(r)}}static decodeExtendLookupTable(e){if(this.checkProgramId(e.programId),e.keys.length<2)throw new Error(`invalid instruction; found ${e.keys.length} keys, expected at least 2`);let{addresses:r}=Ye(Un.ExtendLookupTable,e.data);return{lookupTable:e.keys[0].pubkey,authority:e.keys[1].pubkey,payer:e.keys.length>2?e.keys[2].pubkey:void 0,addresses:r.map(i=>new re(i))}}static decodeCloseLookupTable(e){return this.checkProgramId(e.programId),this.checkKeysLength(e.keys,3),{lookupTable:e.keys[0].pubkey,authority:e.keys[1].pubkey,recipient:e.keys[2].pubkey}}static decodeFreezeLookupTable(e){return this.checkProgramId(e.programId),this.checkKeysLength(e.keys,2),{lookupTable:e.keys[0].pubkey,authority:e.keys[1].pubkey}}static decodeDeactivateLookupTable(e){return this.checkProgramId(e.programId),this.checkKeysLength(e.keys,2),{lookupTable:e.keys[0].pubkey,authority:e.keys[1].pubkey}}static checkProgramId(e){if(!e.equals(V0.programId))throw new Error("invalid instruction; programId is not AddressLookupTable Program")}static checkKeysLength(e,r){if(e.lengths.toBytes())}),a=[{pubkey:e.lookupTable,isSigner:!1,isWritable:!0},{pubkey:e.authority,isSigner:!0,isWritable:!1}];return e.payer&&a.push({pubkey:e.payer,isSigner:!0,isWritable:!0},{pubkey:ai.programId,isSigner:!1,isWritable:!1}),new et({programId:this.programId,keys:a,data:i})}static deactivateLookupTable(e){let r=Un.DeactivateLookupTable,i=Le(r),a=[{pubkey:e.lookupTable,isSigner:!1,isWritable:!0},{pubkey:e.authority,isSigner:!0,isWritable:!1}];return new et({programId:this.programId,keys:a,data:i})}static closeLookupTable(e){let r=Un.CloseLookupTable,i=Le(r),a=[{pubkey:e.lookupTable,isSigner:!1,isWritable:!0},{pubkey:e.authority,isSigner:!0,isWritable:!1},{pubkey:e.recipient,isSigner:!1,isWritable:!0}];return new et({programId:this.programId,keys:a,data:i})}};V0.programId=new re("AddressLookupTab1e1111111111111111111111111");var Sv=class{static{n(this,"ComputeBudgetInstruction")}constructor(){}static decodeInstructionType(e){this.checkProgramId(e.programId);let i=D.u8("instruction").decode(e.data),a;for(let[s,o]of Object.entries(nn))if(o.index==i){a=s;break}if(!a)throw new Error("Instruction type incorrect; not a ComputeBudgetInstruction");return a}static decodeRequestUnits(e){this.checkProgramId(e.programId);let{units:r,additionalFee:i}=Ye(nn.RequestUnits,e.data);return{units:r,additionalFee:i}}static decodeRequestHeapFrame(e){this.checkProgramId(e.programId);let{bytes:r}=Ye(nn.RequestHeapFrame,e.data);return{bytes:r}}static decodeSetComputeUnitLimit(e){this.checkProgramId(e.programId);let{units:r}=Ye(nn.SetComputeUnitLimit,e.data);return{units:r}}static decodeSetComputeUnitPrice(e){this.checkProgramId(e.programId);let{microLamports:r}=Ye(nn.SetComputeUnitPrice,e.data);return{microLamports:r}}static checkProgramId(e){if(!e.equals(F0.programId))throw new Error("invalid instruction; programId is not ComputeBudgetProgram")}},nn=Object.freeze({RequestUnits:{index:0,layout:D.struct([D.u8("instruction"),D.u32("units"),D.u32("additionalFee")])},RequestHeapFrame:{index:1,layout:D.struct([D.u8("instruction"),D.u32("bytes")])},SetComputeUnitLimit:{index:2,layout:D.struct([D.u8("instruction"),D.u32("units")])},SetComputeUnitPrice:{index:3,layout:D.struct([D.u8("instruction"),X1("microLamports")])}}),F0=class{static{n(this,"ComputeBudgetProgram")}constructor(){}static requestUnits(e){let r=nn.RequestUnits,i=Le(r,e);return new et({keys:[],programId:this.programId,data:i})}static requestHeapFrame(e){let r=nn.RequestHeapFrame,i=Le(r,e);return new et({keys:[],programId:this.programId,data:i})}static setComputeUnitLimit(e){let r=nn.SetComputeUnitLimit,i=Le(r,e);return new et({keys:[],programId:this.programId,data:i})}static setComputeUnitPrice(e){let r=nn.SetComputeUnitPrice,i=Le(r,{microLamports:BigInt(e.microLamports)});return new et({keys:[],programId:this.programId,data:i})}};F0.programId=new re("ComputeBudget111111111111111111111111111111");var tD=64,rD=32,iD=64,aD=D.struct([D.u8("numSignatures"),D.u8("padding"),D.u16("signatureOffset"),D.u16("signatureInstructionIndex"),D.u16("publicKeyOffset"),D.u16("publicKeyInstructionIndex"),D.u16("messageDataOffset"),D.u16("messageDataSize"),D.u16("messageInstructionIndex")]),v3=class t{static{n(this,"Ed25519Program")}constructor(){}static createInstructionWithPublicKey(e){let{publicKey:r,message:i,signature:a,instructionIndex:s}=e;He(r.length===rD,`Public Key must be ${rD} bytes but received ${r.length} bytes`),He(a.length===iD,`Signature must be ${iD} bytes but received ${a.length} bytes`);let o=aD.span,l=o+r.length,d=l+a.length,u=1,c=ye.Buffer.alloc(d+i.length),p=s??65535;return aD.encode({numSignatures:u,padding:0,signatureOffset:l,signatureInstructionIndex:p,publicKeyOffset:o,publicKeyInstructionIndex:p,messageDataOffset:d,messageDataSize:i.length,messageInstructionIndex:p},c),c.fill(r,o),c.fill(a,l),c.fill(i,d),new et({keys:[],programId:t.programId,data:c})}static createInstructionWithPrivateKey(e){let{privateKey:r,message:i,instructionIndex:a}=e;He(r.length===tD,`Private key must be ${tD} bytes but received ${r.length} bytes`);try{let s=b3.fromSecretKey(r),o=s.publicKey.toBytes(),l=Ev(i,s.secretKey);return this.createInstructionWithPublicKey({publicKey:o,message:i,signature:l,instructionIndex:a})}catch(s){throw new Error(`Error creating instruction; ${s}`)}}};v3.programId=new re("Ed25519SigVerify111111111111111111111111111");var qee=n((t,e)=>{let r=kv.secp256k1.sign(t,e);return[r.toCompactRawBytes(),r.recovery]},"ecdsaSign");kv.secp256k1.utils.isValidPrivateKey;var Wee=kv.secp256k1.getPublicKey,nD=32,Qb=20,sD=64,Vee=11,Xb=D.struct([D.u8("numSignatures"),D.u16("signatureOffset"),D.u8("signatureInstructionIndex"),D.u16("ethAddressOffset"),D.u8("ethAddressInstructionIndex"),D.u16("messageDataOffset"),D.u16("messageDataSize"),D.u8("messageInstructionIndex"),D.blob(20,"ethAddress"),D.blob(64,"signature"),D.u8("recoveryId")]),S3=class t{static{n(this,"Secp256k1Program")}constructor(){}static publicKeyToEthAddress(e){He(e.length===sD,`Public key must be ${sD} bytes but received ${e.length} bytes`);try{return ye.Buffer.from(OM.keccak_256(Be(e))).slice(-Qb)}catch(r){throw new Error(`Error constructing Ethereum address: ${r}`)}}static createInstructionWithPublicKey(e){let{publicKey:r,message:i,signature:a,recoveryId:s,instructionIndex:o}=e;return t.createInstructionWithEthAddress({ethAddress:t.publicKeyToEthAddress(r),message:i,signature:a,recoveryId:s,instructionIndex:o})}static createInstructionWithEthAddress(e){let{ethAddress:r,message:i,signature:a,recoveryId:s,instructionIndex:o=0}=e,l;typeof r=="string"?r.startsWith("0x")?l=ye.Buffer.from(r.substr(2),"hex"):l=ye.Buffer.from(r,"hex"):l=r,He(l.length===Qb,`Address must be ${Qb} bytes but received ${l.length} bytes`);let d=1+Vee,u=d,c=d+l.length,p=c+a.length+1,x=1,E=ye.Buffer.alloc(Xb.span+i.length);return Xb.encode({numSignatures:x,signatureOffset:c,signatureInstructionIndex:o,ethAddressOffset:u,ethAddressInstructionIndex:o,messageDataOffset:p,messageDataSize:i.length,messageInstructionIndex:o,signature:Be(a),ethAddress:Be(l),recoveryId:s},E),E.fill(Be(i),Xb.span),new et({keys:[],programId:t.programId,data:E})}static createInstructionWithPrivateKey(e){let{privateKey:r,message:i,instructionIndex:a}=e;He(r.length===nD,`Private key must be ${nD} bytes but received ${r.length} bytes`);try{let s=Be(r),o=Wee(s,!1).slice(1),l=ye.Buffer.from(OM.keccak_256(Be(i))),[d,u]=qee(l,s);return this.createInstructionWithPublicKey({publicKey:o,message:i,signature:d,recoveryId:u,instructionIndex:a})}catch(s){throw new Error(`Error creating instruction; ${s}`)}}};S3.programId=new re("KeccakSecp256k11111111111111111111111111111");var OD,ND=new re("StakeConfig11111111111111111111111111111111"),w3=class{static{n(this,"Authorized")}constructor(e,r){this.staker=void 0,this.withdrawer=void 0,this.staker=e,this.withdrawer=r}},hl=class{static{n(this,"Lockup")}constructor(e,r,i){this.unixTimestamp=void 0,this.epoch=void 0,this.custodian=void 0,this.unixTimestamp=e,this.epoch=r,this.custodian=i}};OD=hl;hl.default=new OD(0,0,re.default);var wv=class{static{n(this,"StakeInstruction")}constructor(){}static decodeInstructionType(e){this.checkProgramId(e.programId);let i=D.u32("instruction").decode(e.data),a;for(let[s,o]of Object.entries(Br))if(o.index==i){a=s;break}if(!a)throw new Error("Instruction type incorrect; not a StakeInstruction");return a}static decodeInitialize(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,2);let{authorized:r,lockup:i}=Ye(Br.Initialize,e.data);return{stakePubkey:e.keys[0].pubkey,authorized:new w3(new re(r.staker),new re(r.withdrawer)),lockup:new hl(i.unixTimestamp,i.epoch,new re(i.custodian))}}static decodeDelegate(e){return this.checkProgramId(e.programId),this.checkKeyLength(e.keys,6),Ye(Br.Delegate,e.data),{stakePubkey:e.keys[0].pubkey,votePubkey:e.keys[1].pubkey,authorizedPubkey:e.keys[5].pubkey}}static decodeAuthorize(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,3);let{newAuthorized:r,stakeAuthorizationType:i}=Ye(Br.Authorize,e.data),a={stakePubkey:e.keys[0].pubkey,authorizedPubkey:e.keys[2].pubkey,newAuthorizedPubkey:new re(r),stakeAuthorizationType:{index:i}};return e.keys.length>3&&(a.custodianPubkey=e.keys[3].pubkey),a}static decodeAuthorizeWithSeed(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,2);let{newAuthorized:r,stakeAuthorizationType:i,authoritySeed:a,authorityOwner:s}=Ye(Br.AuthorizeWithSeed,e.data),o={stakePubkey:e.keys[0].pubkey,authorityBase:e.keys[1].pubkey,authoritySeed:a,authorityOwner:new re(s),newAuthorizedPubkey:new re(r),stakeAuthorizationType:{index:i}};return e.keys.length>3&&(o.custodianPubkey=e.keys[3].pubkey),o}static decodeSplit(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,3);let{lamports:r}=Ye(Br.Split,e.data);return{stakePubkey:e.keys[0].pubkey,splitStakePubkey:e.keys[1].pubkey,authorizedPubkey:e.keys[2].pubkey,lamports:r}}static decodeMerge(e){return this.checkProgramId(e.programId),this.checkKeyLength(e.keys,3),Ye(Br.Merge,e.data),{stakePubkey:e.keys[0].pubkey,sourceStakePubKey:e.keys[1].pubkey,authorizedPubkey:e.keys[4].pubkey}}static decodeWithdraw(e){this.checkProgramId(e.programId),this.checkKeyLength(e.keys,5);let{lamports:r}=Ye(Br.Withdraw,e.data),i={stakePubkey:e.keys[0].pubkey,toPubkey:e.keys[1].pubkey,authorizedPubkey:e.keys[4].pubkey,lamports:r};return e.keys.length>5&&(i.custodianPubkey=e.keys[5].pubkey),i}static decodeDeactivate(e){return this.checkProgramId(e.programId),this.checkKeyLength(e.keys,3),Ye(Br.Deactivate,e.data),{stakePubkey:e.keys[0].pubkey,authorizedPubkey:e.keys[2].pubkey}}static checkProgramId(e){if(!e.equals(ad.programId))throw new Error("invalid instruction; programId is not StakeProgram")}static checkKeyLength(e,r){if(e.lengthr-i)throw new Error("Withdraw will leave vote account with insuffcient funds.");return t.withdraw(e)}};nd.programId=new re("Vote111111111111111111111111111111111111111");nd.space=3731;var qD=new re("Va1idator1nfo111111111111111111111111111111"),Lee=f.type({name:f.string(),website:f.optional(f.string()),details:f.optional(f.string()),keybaseUsername:f.optional(f.string())}),Av=class t{static{n(this,"ValidatorInfo")}constructor(e,r){this.key=void 0,this.info=void 0,this.key=e,this.info=r}static fromConfigData(e){let r=[...e];if(Ai(r)!==2)return null;let a=[];for(let s=0;s<2;s++){let o=new re(r.slice(0,Wi));r=r.slice(Wi);let l=r.slice(0,1)[0]===1;r=r.slice(1),a.push({publicKey:o,isSigner:l})}if(a[0].publicKey.equals(qD)&&a[1].isSigner){let s=pl().decode(ye.Buffer.from(r)),o=JSON.parse(s);return f.assert(o,Lee),new t(a[1].publicKey,o)}return null}},Uee=new re("Vote111111111111111111111111111111111111111"),jee=D.struct([We("nodePubkey"),We("authorizedWithdrawer"),D.u8("commission"),D.nu64(),D.seq(D.struct([D.nu64("slot"),D.u32("confirmationCount")]),D.offset(D.u32(),-8),"votes"),D.u8("rootSlotValid"),D.nu64("rootSlot"),D.nu64(),D.seq(D.struct([D.nu64("epoch"),We("authorizedVoter")]),D.offset(D.u32(),-8),"authorizedVoters"),D.struct([D.seq(D.struct([We("authorizedPubkey"),D.nu64("epochOfLastAuthorizedSwitch"),D.nu64("targetEpoch")]),32,"buf"),D.nu64("idx"),D.u8("isEmpty")],"priorVoters"),D.nu64(),D.seq(D.struct([D.nu64("epoch"),D.nu64("credits"),D.nu64("prevCredits")]),D.offset(D.u32(),-8),"epochCredits"),D.struct([D.nu64("slot"),D.nu64("timestamp")],"lastTimestamp")]),_v=class t{static{n(this,"VoteAccount")}constructor(e){this.nodePubkey=void 0,this.authorizedWithdrawer=void 0,this.commission=void 0,this.rootSlot=void 0,this.votes=void 0,this.authorizedVoters=void 0,this.priorVoters=void 0,this.epochCredits=void 0,this.lastTimestamp=void 0,this.nodePubkey=e.nodePubkey,this.authorizedWithdrawer=e.authorizedWithdrawer,this.commission=e.commission,this.rootSlot=e.rootSlot,this.votes=e.votes,this.authorizedVoters=e.authorizedVoters,this.priorVoters=e.priorVoters,this.epochCredits=e.epochCredits,this.lastTimestamp=e.lastTimestamp}static fromAccountData(e){let i=jee.decode(Be(e),4),a=i.rootSlot;return i.rootSlotValid||(a=null),new t({nodePubkey:new re(i.nodePubkey),authorizedWithdrawer:new re(i.authorizedWithdrawer),commission:i.commission,votes:i.votes,rootSlot:a,authorizedVoters:i.authorizedVoters.map(Hee),priorVoters:$ee(i.priorVoters),epochCredits:i.epochCredits,lastTimestamp:i.lastTimestamp})}};function Hee({authorizedVoter:t,epoch:e}){return{epoch:e,authorizedVoter:new re(t)}}n(Hee,"parseAuthorizedVoter");function oD({authorizedPubkey:t,epochOfLastAuthorizedSwitch:e,targetEpoch:r}){return{authorizedPubkey:new re(t),epochOfLastAuthorizedSwitch:e,targetEpoch:r}}n(oD,"parsePriorVoters");function $ee({buf:t,idx:e,isEmpty:r}){return r?[]:[...t.slice(e+1).map(oD),...t.slice(0,e).map(oD)]}n($ee,"getPriorVoters");var lD={http:{devnet:"http://api.devnet.solana.com",testnet:"http://api.testnet.solana.com","mainnet-beta":"http://api.mainnet-beta.solana.com/"},https:{devnet:"https://api.devnet.solana.com",testnet:"https://api.testnet.solana.com","mainnet-beta":"https://api.mainnet-beta.solana.com/"}};function Gee(t,e){let r=e===!1?"http":"https";if(!t)return lD[r].devnet;let i=lD[r][t];if(!i)throw new Error(`Unknown ${r} cluster: ${t}`);return i}n(Gee,"clusterApiUrl");async function Zee(t,e,r,i){let a,s;r&&Object.prototype.hasOwnProperty.call(r,"lastValidBlockHeight")||r&&Object.prototype.hasOwnProperty.call(r,"nonceValue")?(a=r,s=i):s=r;let o=s&&{skipPreflight:s.skipPreflight,preflightCommitment:s.preflightCommitment||s.commitment,minContextSlot:s.minContextSlot},l=await t.sendRawTransaction(e,o),d=s&&s.commitment,c=(await(a?t.confirmTransaction(a,d):t.confirmTransaction(l,d))).value;if(c.err)throw new Error(`Raw transaction ${l} failed (${JSON.stringify(c)})`);return l}n(Zee,"sendAndConfirmRawTransaction");var Jee=1e9;ie.Account=iv;ie.AddressLookupTableAccount=q0;ie.AddressLookupTableInstruction=vv;ie.AddressLookupTableProgram=V0;ie.Authorized=w3;ie.BLOCKHASH_CACHE_TIMEOUT_MS=ED;ie.BPF_LOADER_DEPRECATED_PROGRAM_ID=cQ;ie.BPF_LOADER_PROGRAM_ID=zQ;ie.BpfLoader=dv;ie.COMPUTE_BUDGET_INSTRUCTION_LAYOUTS=nn;ie.ComputeBudgetInstruction=Sv;ie.ComputeBudgetProgram=F0;ie.Connection=bv;ie.Ed25519Program=v3;ie.Enum=rv;ie.EpochSchedule=g3;ie.FeeCalculatorLayout=yD;ie.Keypair=b3;ie.LAMPORTS_PER_SOL=Jee;ie.LOOKUP_TABLE_INSTRUCTION_LAYOUTS=Un;ie.Loader=ed;ie.Lockup=hl;ie.MAX_SEED_LENGTH=fD;ie.Message=sn;ie.MessageAccountKeys=ml;ie.MessageV0=Y1;ie.NONCE_ACCOUNT_LENGTH=ov;ie.NonceAccount=f3;ie.PACKET_DATA_SIZE=Gs;ie.PUBLIC_KEY_LENGTH=Wi;ie.PublicKey=re;ie.SIGNATURE_LENGTH_IN_BYTES=J1;ie.SOLANA_SCHEMA=D0;ie.STAKE_CONFIG_ID=ND;ie.STAKE_INSTRUCTION_LAYOUTS=Br;ie.SYSTEM_INSTRUCTION_LAYOUTS=mt;ie.SYSVAR_CLOCK_PUBKEY=an;ie.SYSVAR_EPOCH_SCHEDULE_PUBKEY=wQ;ie.SYSVAR_INSTRUCTIONS_PUBKEY=xQ;ie.SYSVAR_RECENT_BLOCKHASHES_PUBKEY=u3;ie.SYSVAR_RENT_PUBKEY=Q1;ie.SYSVAR_REWARDS_PUBKEY=AQ;ie.SYSVAR_SLOT_HASHES_PUBKEY=_Q;ie.SYSVAR_SLOT_HISTORY_PUBKEY=kQ;ie.SYSVAR_STAKE_HISTORY_PUBKEY=c3;ie.Secp256k1Program=S3;ie.SendTransactionError=N0;ie.SolanaJSONRPCError=ce;ie.SolanaJSONRPCErrorCode=yX;ie.StakeAuthorizationLayout=Fee;ie.StakeInstruction=wv;ie.StakeProgram=ad;ie.Struct=B0;ie.SystemInstruction=lv;ie.SystemProgram=ai;ie.Transaction=Xe;ie.TransactionExpiredBlockheightExceededError=C0;ie.TransactionExpiredNonceInvalidError=$s;ie.TransactionExpiredTimeoutError=O0;ie.TransactionInstruction=et;ie.TransactionMessage=av;ie.TransactionStatus=Ln;ie.VALIDATOR_INFO_KEY=qD;ie.VERSION_PREFIX_MASK=A3;ie.VOTE_PROGRAM_ID=Uee;ie.ValidatorInfo=Av;ie.VersionedMessage=Pv;ie.VersionedTransaction=nv;ie.VoteAccount=_v;ie.VoteAuthorizationLayout=Kee;ie.VoteInit=x3;ie.VoteInstruction=xv;ie.VoteProgram=nd;ie.clusterApiUrl=Gee;ie.sendAndConfirmRawTransaction=Zee;ie.sendAndConfirmTransaction=sv});var Y3=v(Al=>{"use strict";Object.defineProperty(Al,"__esModule",{value:!0});var ure=n(t=>({__option:"Some",value:t}),"some"),cre=n(()=>({__option:"None"}),"none"),pre=n(t=>t&&typeof t=="object"&&"__option"in t&&(t.__option==="Some"&&"value"in t||t.__option==="None"),"isOption"),mre=n(t=>t.__option==="Some","isSome"),fre=n(t=>t.__option==="None","isNone");Al.isNone=fre;Al.isOption=pre;Al.isSome=mre;Al.none=cre;Al.some=ure});var WR=v(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});var Q0=Y3();function hre(t,e){return Q0.isSome(t)?t.value:e?e():null}n(hre,"unwrapOption");var gre=n(t=>t!==null?Q0.some(t):Q0.none(),"wrapNullable"),yre=n(t=>Q0.isSome(t)?t.value:null,"unwrapSome"),bre=n((t,e)=>Q0.isSome(t)?t.value:e(),"unwrapSomeOrElse");Sd.unwrapOption=hre;Sd.unwrapSome=yre;Sd.unwrapSomeOrElse=bre;Sd.wrapNullable=gre});var FR=v(WS=>{"use strict";Object.defineProperty(WS,"__esModule",{value:!0});var VR=Y3();function qS(t,e){if(!t||ArrayBuffer.isView(t))return t;let r=n(i=>e?qS(i,e):qS(i),"next");return VR.isOption(t)?VR.isSome(t)?r(t.value):e?e():null:Array.isArray(t)?t.map(r):typeof t=="object"?Object.fromEntries(Object.entries(t).map(([i,a])=>[i,r(a)])):t}n(qS,"unwrapOptionRecursively");WS.unwrapOptionRecursively=qS});var VS=v(ra=>{"use strict";Object.defineProperty(ra,"__esModule",{value:!0});var X0=Y3(),Q3=WR(),vre=FR();ra.isNone=X0.isNone;ra.isOption=X0.isOption;ra.isSome=X0.isSome;ra.none=X0.none;ra.some=X0.some;ra.unwrapOption=Q3.unwrapOption;ra.unwrapSome=Q3.unwrapSome;ra.unwrapSomeOrElse=Q3.unwrapSomeOrElse;ra.wrapNullable=Q3.wrapNullable;ra.unwrapOptionRecursively=vre.unwrapOptionRecursively});var em=v(KS=>{"use strict";Object.defineProperty(KS,"__esModule",{value:!0});var FS=class extends Error{static{n(this,"InvalidBaseStringError")}name="InvalidBaseStringError";constructor(e,r,i){let a=`Expected a string of base ${r}, got [${e}].`;super(a),this.cause=i}};KS.InvalidBaseStringError=FS});var X3=v(LS=>{"use strict";Object.defineProperty(LS,"__esModule",{value:!0});var Sre=em(),wre=n(t=>{let e=t.length,r=BigInt(e);return{description:`base${e}`,fixedSize:null,maxSize:null,serialize(i){if(!i.match(new RegExp(`^[${t}]*$`)))throw new Sre.InvalidBaseStringError(i,e);if(i==="")return new Uint8Array;let a=[...i],s=a.findIndex(p=>p!==t[0]);s=s===-1?a.length:s;let o=Array(s).fill(0);if(s===a.length)return Uint8Array.from(o);let l=a.slice(s),d=0n,u=1n;for(let p=l.length-1;p>=0;p-=1)d+=u*BigInt(t.indexOf(l[p])),u*=r;let c=[];for(;d>0n;)c.unshift(Number(d%256n)),d/=256n;return Uint8Array.from(o.concat(c))},deserialize(i,a=0){if(i.length===0)return["",0];let s=i.slice(a),o=s.findIndex(c=>c!==0);o=o===-1?s.length:o;let l=t[0].repeat(o);if(o===s.length)return[l,i.length];let d=s.slice(o).reduce((c,p)=>c*256n+BigInt(p),0n),u=[];for(;d>0n;)u.unshift(t[Number(d%r)]),d/=r;return[l+u.join(""),i.length]}}},"baseX");LS.baseX=wre});var KR=v(US=>{"use strict";Object.defineProperty(US,"__esModule",{value:!0});var xre=X3(),Are=xre.baseX("0123456789");US.base10=Are});var LR=v(jS=>{"use strict";Object.defineProperty(jS,"__esModule",{value:!0});var _re=em(),kre={description:"base16",fixedSize:null,maxSize:null,serialize(t){let e=t.toLowerCase();if(!e.match(/^[0123456789abcdef]*$/))throw new _re.InvalidBaseStringError(t,16);let r=e.match(/.{1,2}/g);return Uint8Array.from(r?r.map(i=>parseInt(i,16)):[])},deserialize(t,e=0){return[t.slice(e).reduce((i,a)=>i+a.toString(16).padStart(2,"0"),""),t.length]}};jS.base16=kre});var UR=v(HS=>{"use strict";Object.defineProperty(HS,"__esModule",{value:!0});var Ere=X3(),Pre=Ere.baseX("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz");HS.base58=Pre});var eg=v(tm=>{"use strict";Object.defineProperty(tm,"__esModule",{value:!0});var Tre=n(t=>{let e=t.reduce((a,s)=>a+s.length,0),r=new Uint8Array(e),i=0;return t.forEach(a=>{r.set(a,i),i+=a.length}),r},"mergeBytes"),jR=n((t,e)=>{if(t.length>=e)return t;let r=new Uint8Array(e).fill(0);return r.set(t),r},"padBytes"),zre=n((t,e)=>jR(t.slice(0,e),e),"fixBytes");tm.fixBytes=zre;tm.mergeBytes=Tre;tm.padBytes=jR});var tg=v(rm=>{"use strict";Object.defineProperty(rm,"__esModule",{value:!0});var $S=class extends Error{static{n(this,"DeserializingEmptyBufferError")}name="DeserializingEmptyBufferError";constructor(e){super(`Serializer [${e}] cannot deserialize empty buffers.`)}},GS=class extends Error{static{n(this,"NotEnoughBytesError")}name="NotEnoughBytesError";constructor(e,r,i){super(`Serializer [${e}] expected ${r} bytes, got ${i}.`)}},ZS=class extends Error{static{n(this,"ExpectedFixedSizeSerializerError")}name="ExpectedFixedSizeSerializerError";constructor(e){e??="Expected a fixed-size serializer, got a variable-size one.",super(e)}};rm.DeserializingEmptyBufferError=$S;rm.ExpectedFixedSizeSerializerError=ZS;rm.NotEnoughBytesError=GS});var $R=v(JS=>{"use strict";Object.defineProperty(JS,"__esModule",{value:!0});var HR=eg(),Ire=tg();function Mre(t,e,r){return{description:r??`fixed(${e}, ${t.description})`,fixedSize:e,maxSize:e,serialize:i=>HR.fixBytes(t.serialize(i),e),deserialize:(i,a=0)=>{if(i=i.slice(a,a+e),i.length{"use strict";Object.defineProperty(YS,"__esModule",{value:!0});function Dre(t,e,r){return{description:t.description,fixedSize:t.fixedSize,maxSize:t.maxSize,serialize:i=>t.serialize(e(i)),deserialize:(i,a=0)=>{let[s,o]=t.deserialize(i,a);return r?[r(s,i,a),o]:[s,o]}}}n(Dre,"mapSerializer");YS.mapSerializer=Dre});var ZR=v(QS=>{"use strict";Object.defineProperty(QS,"__esModule",{value:!0});var Rre=eg(),Bre=tg();function Cre(t){if(t.fixedSize===null)throw new Bre.ExpectedFixedSizeSerializerError("Cannot reverse a serializer of variable size.");return{...t,serialize:e=>t.serialize(e).reverse(),deserialize:(e,r=0)=>{let i=t.fixedSize,a=Rre.mergeBytes([e.slice(0,r),e.slice(r,r+i).reverse(),e.slice(r+i)]);return t.deserialize(a,r)}}}n(Cre,"reverseSerializer");QS.reverseSerializer=Cre});var Pr=v(Oa=>{"use strict";Object.defineProperty(Oa,"__esModule",{value:!0});var XS=eg(),ew=tg(),Ore=$R(),Nre=GR(),qre=ZR();Oa.fixBytes=XS.fixBytes;Oa.mergeBytes=XS.mergeBytes;Oa.padBytes=XS.padBytes;Oa.DeserializingEmptyBufferError=ew.DeserializingEmptyBufferError;Oa.ExpectedFixedSizeSerializerError=ew.ExpectedFixedSizeSerializerError;Oa.NotEnoughBytesError=ew.NotEnoughBytesError;Oa.fixSerializer=Ore.fixSerializer;Oa.mapSerializer=Nre.mapSerializer;Oa.reverseSerializer=qre.reverseSerializer});var rw=v(tw=>{"use strict";Object.defineProperty(tw,"__esModule",{value:!0});var Wre=em(),Vre=n((t,e)=>{let r=t.length,i=n((a,s,o,l)=>{let d=[],u=0,c=0,p=(1<=o;)c-=o,d.push(u>>c&p);return l&&c>0&&d.push(u<t.indexOf(l)),o=i(s,e,8,!1);return Uint8Array.from(o)},deserialize(a,s=0){if(a.length===0)return["",0];let o=[...a.slice(s)];return[i(o,8,e,!0).map(d=>t[d]).join(""),a.length]}}},"baseXReslice");tw.baseXReslice=Vre});var JR=v(iw=>{"use strict";Object.defineProperty(iw,"__esModule",{value:!0});var Fre=Pr(),Kre=rw(),Lre=Fre.mapSerializer(Kre.baseXReslice("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",6),t=>t.replace(/=/g,""),t=>t.padEnd(Math.ceil(t.length/4)*4,"="));iw.base64=Lre});var aw=v(rg=>{"use strict";Object.defineProperty(rg,"__esModule",{value:!0});var Ure=n(t=>t.replace(/\u0000/g,""),"removeNullCharacters"),jre=n((t,e)=>t.padEnd(e,"\0"),"padNullCharacters");rg.padNullCharacters=jre;rg.removeNullCharacters=Ure});var YR=v(nw=>{"use strict";Object.defineProperty(nw,"__esModule",{value:!0});var Hre=aw(),$re={description:"utf8",fixedSize:null,maxSize:null,serialize(t){return new TextEncoder().encode(t)},deserialize(t,e=0){let r=new TextDecoder().decode(t.slice(e));return[Hre.removeNullCharacters(r),t.length]}};nw.utf8=$re});var ig=v(ia=>{"use strict";Object.defineProperty(ia,"__esModule",{value:!0});var Gre=KR(),Zre=LR(),Jre=UR(),Yre=JR(),Qre=X3(),Xre=rw(),eie=em(),QR=aw(),tie=YR();ia.base10=Gre.base10;ia.base16=Zre.base16;ia.base58=Jre.base58;ia.base64=Yre.base64;ia.baseX=Qre.baseX;ia.baseXReslice=Xre.baseXReslice;ia.InvalidBaseStringError=eie.InvalidBaseStringError;ia.padNullCharacters=QR.padNullCharacters;ia.removeNullCharacters=QR.removeNullCharacters;ia.utf8=tie.utf8});var lw=v(ow=>{"use strict";Object.defineProperty(ow,"__esModule",{value:!0});var sw=class extends Error{static{n(this,"InvalidPublicKeyError")}name="InvalidPublicKeyError";constructor(e,r){r=r?`. ${r}`:"",super(`The provided public key is invalid: ${e}${r}`),this.invalidPublicKey=e}};ow.InvalidPublicKeyError=sw});var rB=v(aa=>{"use strict";Object.defineProperty(aa,"__esModule",{value:!0});var XR=ig(),ag=lw(),dw=32;function ng(t,e=!0){let r=(()=>typeof t=="string"?t:typeof t=="object"&&"publicKey"in t?t.publicKey:typeof t=="object"&&"toBase58"in t?t.toBase58():Array.isArray(t)?t[0]:XR.base58.deserialize(t)[0])();return e&&uw(r),r}n(ng,"publicKey");var rie=n(()=>"11111111111111111111111111111111","defaultPublicKey"),eB=n(t=>{try{return uw(t),!0}catch{return!1}},"isPublicKey"),iie=n(t=>Array.isArray(t)&&t.length===2&&typeof t[1]=="number"&&eB(t[0]),"isPda");function uw(t){if(typeof t!="string")throw new ag.InvalidPublicKeyError(t,"Public keys must be strings.");tB(t)}n(uw,"assertPublicKey");var aie=n(t=>[...new Set(t)],"uniquePublicKeys"),tB=n(t=>{if(t.length<32||t.length>44)throw new ag.InvalidPublicKeyError(t,"Public keys must be between 32 and 44 characters.");let e;try{e=XR.base58.serialize(t)}catch{throw new ag.InvalidPublicKeyError(t,"Public keys must be base58 encoded.")}if(e.length!==dw)throw new ag.InvalidPublicKeyError(t,`Public keys must be ${dw} bytes.`);return e},"publicKeyBytes"),nie=n(t=>ng(t),"base58PublicKey"),sie=n((t,e)=>ng(t)===ng(e),"samePublicKey");aa.PUBLIC_KEY_LENGTH=dw;aa.assertPublicKey=uw;aa.base58PublicKey=nie;aa.defaultPublicKey=rie;aa.isPda=iie;aa.isPublicKey=eB;aa.publicKey=ng;aa.publicKeyBytes=tB;aa.samePublicKey=sie;aa.uniquePublicKeys=aie});var sg=v(Ki=>{"use strict";Object.defineProperty(Ki,"__esModule",{value:!0});var cn=rB(),oie=lw();Ki.PUBLIC_KEY_LENGTH=cn.PUBLIC_KEY_LENGTH;Ki.assertPublicKey=cn.assertPublicKey;Ki.base58PublicKey=cn.base58PublicKey;Ki.defaultPublicKey=cn.defaultPublicKey;Ki.isPda=cn.isPda;Ki.isPublicKey=cn.isPublicKey;Ki.publicKey=cn.publicKey;Ki.publicKeyBytes=cn.publicKeyBytes;Ki.samePublicKey=cn.samePublicKey;Ki.uniquePublicKeys=cn.uniquePublicKeys;Ki.InvalidPublicKeyError=oie.InvalidPublicKeyError});var cw=v(im=>{"use strict";Object.defineProperty(im,"__esModule",{value:!0});im.Endian=void 0;(function(t){t.Little="le",t.Big="be"})(im.Endian||(im.Endian={}))});var fw=v(mw=>{"use strict";Object.defineProperty(mw,"__esModule",{value:!0});var pw=class extends RangeError{static{n(this,"NumberOutOfRangeError")}name="NumberOutOfRangeError";constructor(e,r,i,a){super(`Serializer [${e}] expected number to be between ${r} and ${i}, got ${a}.`)}};mw.NumberOutOfRangeError=pw});var ki=v(_l=>{"use strict";Object.defineProperty(_l,"__esModule",{value:!0});var iB=Pr(),lie=cw(),die=fw();function uie(t){let e,r=t.name;return t.size>1&&(e=!("endian"in t.options)||t.options.endian===lie.Endian.Little,r+=e?"(le)":"(be)"),{description:t.options.description??r,fixedSize:t.size,maxSize:t.size,serialize(i){t.range&&sB(t.name,t.range[0],t.range[1],i);let a=new ArrayBuffer(t.size);return t.set(new DataView(a),i,e),new Uint8Array(a)},deserialize(i,a=0){let s=i.slice(a,a+t.size);oB("i8",s,t.size);let o=nB(s);return[t.get(o,e),a+t.size]}}}n(uie,"numberFactory");var aB=n(t=>t.buffer.slice(t.byteOffset,t.byteLength+t.byteOffset),"toArrayBuffer"),nB=n(t=>new DataView(aB(t)),"toDataView"),sB=n((t,e,r,i)=>{if(ir)throw new die.NumberOutOfRangeError(t,e,r,i)},"assertRange"),oB=n((t,e,r)=>{if(e.length===0)throw new iB.DeserializingEmptyBufferError(t);if(e.length{"use strict";Object.defineProperty(hw,"__esModule",{value:!0});var cie=ki(),pie=n((t={})=>cie.numberFactory({name:"f32",size:4,set:(e,r,i)=>e.setFloat32(0,Number(r),i),get:(e,r)=>e.getFloat32(0,r),options:t}),"f32");hw.f32=pie});var dB=v(gw=>{"use strict";Object.defineProperty(gw,"__esModule",{value:!0});var mie=ki(),fie=n((t={})=>mie.numberFactory({name:"f64",size:8,set:(e,r,i)=>e.setFloat64(0,Number(r),i),get:(e,r)=>e.getFloat64(0,r),options:t}),"f64");gw.f64=fie});var uB=v(yw=>{"use strict";Object.defineProperty(yw,"__esModule",{value:!0});var hie=ki(),gie=n((t={})=>hie.numberFactory({name:"i8",size:1,range:[-+"0x7f"-1,+"0x7f"],set:(e,r)=>e.setInt8(0,Number(r)),get:e=>e.getInt8(0),options:t}),"i8");yw.i8=gie});var cB=v(bw=>{"use strict";Object.defineProperty(bw,"__esModule",{value:!0});var yie=ki(),bie=n((t={})=>yie.numberFactory({name:"i16",size:2,range:[-+"0x7fff"-1,+"0x7fff"],set:(e,r,i)=>e.setInt16(0,Number(r),i),get:(e,r)=>e.getInt16(0,r),options:t}),"i16");bw.i16=bie});var pB=v(vw=>{"use strict";Object.defineProperty(vw,"__esModule",{value:!0});var vie=ki(),Sie=n((t={})=>vie.numberFactory({name:"i32",size:4,range:[-+"0x7fffffff"-1,+"0x7fffffff"],set:(e,r,i)=>e.setInt32(0,Number(r),i),get:(e,r)=>e.getInt32(0,r),options:t}),"i32");vw.i32=Sie});var mB=v(Sw=>{"use strict";Object.defineProperty(Sw,"__esModule",{value:!0});var wie=ki(),xie=n((t={})=>wie.numberFactory({name:"i64",size:8,range:[-BigInt("0x7fffffffffffffff")-1n,BigInt("0x7fffffffffffffff")],set:(e,r,i)=>e.setBigInt64(0,BigInt(r),i),get:(e,r)=>e.getBigInt64(0,r),options:t}),"i64");Sw.i64=xie});var fB=v(ww=>{"use strict";Object.defineProperty(ww,"__esModule",{value:!0});var Aie=ki(),_ie=n((t={})=>Aie.numberFactory({name:"i128",size:16,range:[-BigInt("0x7fffffffffffffffffffffffffffffff")-1n,BigInt("0x7fffffffffffffffffffffffffffffff")],set:(e,r,i)=>{let a=i?8:0,s=i?0:8,o=0xffffffffffffffffn;e.setBigInt64(a,BigInt(r)>>64n,i),e.setBigUint64(s,BigInt(r)&o,i)},get:(e,r)=>{let i=r?8:0,a=r?0:8,s=e.getBigInt64(i,r),o=e.getBigUint64(a,r);return(s<<64n)+o},options:t}),"i128");ww.i128=_ie});var hB=v(xw=>{"use strict";Object.defineProperty(xw,"__esModule",{value:!0});var kie=ki(),Eie=n((t={})=>kie.numberFactory({name:"u8",size:1,range:[0,+"0xff"],set:(e,r)=>e.setUint8(0,Number(r)),get:e=>e.getUint8(0),options:t}),"u8");xw.u8=Eie});var gB=v(Aw=>{"use strict";Object.defineProperty(Aw,"__esModule",{value:!0});var Pie=ki(),Tie=n((t={})=>Pie.numberFactory({name:"u16",size:2,range:[0,+"0xffff"],set:(e,r,i)=>e.setUint16(0,Number(r),i),get:(e,r)=>e.getUint16(0,r),options:t}),"u16");Aw.u16=Tie});var yB=v(_w=>{"use strict";Object.defineProperty(_w,"__esModule",{value:!0});var zie=ki(),Iie=n((t={})=>zie.numberFactory({name:"u32",size:4,range:[0,+"0xffffffff"],set:(e,r,i)=>e.setUint32(0,Number(r),i),get:(e,r)=>e.getUint32(0,r),options:t}),"u32");_w.u32=Iie});var bB=v(kw=>{"use strict";Object.defineProperty(kw,"__esModule",{value:!0});var Mie=ki(),Die=n((t={})=>Mie.numberFactory({name:"u64",size:8,range:[0,BigInt("0xffffffffffffffff")],set:(e,r,i)=>e.setBigUint64(0,BigInt(r),i),get:(e,r)=>e.getBigUint64(0,r),options:t}),"u64");kw.u64=Die});var vB=v(Ew=>{"use strict";Object.defineProperty(Ew,"__esModule",{value:!0});var Rie=ki(),Bie=n((t={})=>Rie.numberFactory({name:"u128",size:16,range:[0,BigInt("0xffffffffffffffffffffffffffffffff")],set:(e,r,i)=>{let a=i?8:0,s=i?0:8,o=0xffffffffffffffffn;e.setBigUint64(a,BigInt(r)>>64n,i),e.setBigUint64(s,BigInt(r)&o,i)},get:(e,r)=>{let i=r?8:0,a=r?0:8,s=e.getBigUint64(i,r),o=e.getBigUint64(a,r);return(s<<64n)+o},options:t}),"u128");Ew.u128=Bie});var SB=v(Pw=>{"use strict";Object.defineProperty(Pw,"__esModule",{value:!0});var Cie=ki(),Oie=n((t={})=>({description:t.description??"shortU16",fixedSize:null,maxSize:3,serialize:e=>{Cie.assertRange("shortU16",0,65535,e);let r=[0];for(let i=0;;i+=1){let a=e>>i*7;if(a===0)break;let s=127&a;r[i]=s,i>0&&(r[i-1]|=128)}return new Uint8Array(r)},deserialize:(e,r=0)=>{let i=0,a=0;for(;++a;){let s=a-1,o=e[r+s],l=127&o;if(i|=l<{"use strict";Object.defineProperty(Qr,"__esModule",{value:!0});var Nie=cw(),qie=fw(),Wie=lB(),Vie=dB(),Fie=uB(),Kie=cB(),Lie=pB(),Uie=mB(),jie=fB(),Hie=hB(),$ie=gB(),Gie=yB(),Zie=bB(),Jie=vB(),Yie=SB();Object.defineProperty(Qr,"Endian",{enumerable:!0,get:function(){return Nie.Endian}});Qr.NumberOutOfRangeError=qie.NumberOutOfRangeError;Qr.f32=Wie.f32;Qr.f64=Vie.f64;Qr.i8=Fie.i8;Qr.i16=Kie.i16;Qr.i32=Lie.i32;Qr.i64=Uie.i64;Qr.i128=jie.i128;Qr.u8=Hie.u8;Qr.u16=$ie.u16;Qr.u32=Gie.u32;Qr.u64=Zie.u64;Qr.u128=Jie.u128;Qr.shortU16=Yie.shortU16});var Qn=v(Ys=>{"use strict";Object.defineProperty(Ys,"__esModule",{value:!0});var Tw=class extends Error{static{n(this,"InvalidNumberOfItemsError")}name="InvalidNumberOfItemsError";constructor(e,r,i){super(`Expected [${e}] to have ${r} items, got ${i}.`)}},zw=class extends Error{static{n(this,"InvalidArrayLikeRemainderSizeError")}name="InvalidArrayLikeRemainderSizeError";constructor(e,r){super(`The remainder of the buffer (${e} bytes) cannot be split into chunks of ${r} bytes. Serializers of "remainder" size must have a remainder that is a multiple of its item size. In other words, ${e} modulo ${r} should be equal to zero.`)}},Iw=class extends Error{static{n(this,"UnrecognizedArrayLikeSerializerSizeError")}name="UnrecognizedArrayLikeSerializerSizeError";constructor(e){super(`Unrecognized array-like serializer size: ${JSON.stringify(e)}`)}},Mw=class extends Error{static{n(this,"InvalidDataEnumVariantError")}name="InvalidDataEnumVariantError";constructor(e,r){super(`Invalid data enum variant. Expected one of [${r.join(", ")}], got "${e}".`)}},Dw=class extends Error{static{n(this,"InvalidScalarEnumVariantError")}name="InvalidScalarEnumVariantError";constructor(e,r,i,a){super(`Invalid scalar enum variant. Expected one of [${r.join(", ")}] or a number between ${i} and ${a}, got "${e}".`)}},Rw=class extends RangeError{static{n(this,"EnumDiscriminatorOutOfRangeError")}name="EnumDiscriminatorOutOfRangeError";constructor(e,r,i){super(`Enum discriminator out of range. Expected a number between ${r} and ${i}, got ${e}.`)}};Ys.EnumDiscriminatorOutOfRangeError=Rw;Ys.InvalidArrayLikeRemainderSizeError=zw;Ys.InvalidDataEnumVariantError=Mw;Ys.InvalidNumberOfItemsError=Tw;Ys.InvalidScalarEnumVariantError=Dw;Ys.UnrecognizedArrayLikeSerializerSizeError=Iw});var Qs=v(Bw=>{"use strict";Object.defineProperty(Bw,"__esModule",{value:!0});function Qie(t){return t.reduce((e,r)=>e===null||r===null?null:e+r,0)}n(Qie,"sumSerializerSizes");Bw.sumSerializerSizes=Qie});var Xs=v(wd=>{"use strict";Object.defineProperty(wd,"__esModule",{value:!0});var Xie=Pr(),wB=Qn(),xB=Qs();function eae(t,e,r,i){if(typeof t=="number")return[t,i];if(typeof t=="object")return t.deserialize(r,i);if(t==="remainder"){let a=xB.sumSerializerSizes(e);if(a===null)throw new Xie.ExpectedFixedSizeSerializerError('Serializers of "remainder" size must have fixed-size items.');let s=r.slice(i).length;if(s%a!==0)throw new wB.InvalidArrayLikeRemainderSizeError(s,a);return[s/a,i]}throw new wB.UnrecognizedArrayLikeSerializerSizeError(t)}n(eae,"getResolvedSize");function tae(t){return typeof t=="object"?t.description:`${t}`}n(tae,"getSizeDescription");function rae(t,e){if(typeof t!="number")return null;if(t===0)return 0;let r=xB.sumSerializerSizes(e);return r===null?null:r*t}n(rae,"getSizeFromChildren");function iae(t,e){return typeof t=="object"?t.serialize(e):new Uint8Array}n(iae,"getSizePrefix");wd.getResolvedSize=eae;wd.getSizeDescription=tae;wd.getSizeFromChildren=rae;wd.getSizePrefix=iae});var _B=v(Cw=>{"use strict";Object.defineProperty(Cw,"__esModule",{value:!0});var AB=Pr(),aae=Na(),nae=Qn(),am=Xs();function sae(t,e={}){let r=e.size??aae.u32();if(r==="remainder"&&t.fixedSize===null)throw new AB.ExpectedFixedSizeSerializerError('Serializers of "remainder" size must have fixed-size items.');return{description:e.description??`array(${t.description}; ${am.getSizeDescription(r)})`,fixedSize:am.getSizeFromChildren(r,[t.fixedSize]),maxSize:am.getSizeFromChildren(r,[t.maxSize]),serialize:i=>{if(typeof r=="number"&&i.length!==r)throw new nae.InvalidNumberOfItemsError("array",r,i.length);return AB.mergeBytes([am.getSizePrefix(r,i.length),...i.map(a=>t.serialize(a))])},deserialize:(i,a=0)=>{if(typeof r=="object"&&i.slice(a).length===0)return[[],a];let[s,o]=am.getResolvedSize(r,[t.fixedSize],i,a);a=o;let l=[];for(let d=0;d{"use strict";Object.defineProperty(Ow,"__esModule",{value:!0});var oae=Pr(),lae=n((t,e={})=>{let r=typeof e=="boolean"?{backward:e}:e,i=r.backward??!1,a=i?"; backward":"";return{description:r.description??`bitArray(${t}${a})`,fixedSize:t,maxSize:t,serialize(s){let o=[];for(let l=0;l{for(let c=0;c<8;c+=1)i?(l.push(!!(u&1)),u>>=1):(l.push(!!(u&128)),u<<=1)}),[l,o+t]}}},"bitArray");Ow.bitArray=lae});var PB=v(Nw=>{"use strict";Object.defineProperty(Nw,"__esModule",{value:!0});var EB=Pr(),dae=Na();function uae(t={}){let e=t.size??dae.u8();if(e.fixedSize===null)throw new EB.ExpectedFixedSizeSerializerError("Serializer [bool] requires a fixed size.");return{description:t.description??`bool(${e.description})`,fixedSize:e.fixedSize,maxSize:e.fixedSize,serialize:r=>e.serialize(r?1:0),deserialize:(r,i=0)=>{if(r.slice(i).length===0)throw new EB.DeserializingEmptyBufferError("bool");let[a,s]=e.deserialize(r,i);return[a===1,s]}}}n(uae,"bool");Nw.bool=uae});var TB=v(qw=>{"use strict";Object.defineProperty(qw,"__esModule",{value:!0});var og=Pr(),cae=Xs();function pae(t={}){let e=t.size??"variable",r=t.description??`bytes(${cae.getSizeDescription(e)})`,i={description:r,fixedSize:null,maxSize:null,serialize:a=>new Uint8Array(a),deserialize:(a,s=0)=>{let o=a.slice(s);return[o,s+o.length]}};return e==="variable"?i:typeof e=="number"?og.fixSerializer(i,e,r):{description:r,fixedSize:null,maxSize:null,serialize:a=>{let s=i.serialize(a),o=e.serialize(s.length);return og.mergeBytes([o,s])},deserialize:(a,s=0)=>{if(a.slice(s).length===0)throw new og.DeserializingEmptyBufferError("bytes");let[o,l]=e.deserialize(a,s),d=Number(o);s=l;let u=a.slice(s,s+d);if(u.length{"use strict";Object.defineProperty(Ww,"__esModule",{value:!0});function mae(t){return t.reduce((e,r)=>e===null||r===null?null:Math.max(e,r),0)}n(mae,"maxSerializerSizes");Ww.maxSerializerSizes=mae});var DB=v(Fw=>{"use strict";Object.defineProperty(Fw,"__esModule",{value:!0});var zB=Pr(),fae=Na(),IB=Qn(),hae=Vw(),MB=Qs();function gae(t,e={}){let r=e.size??fae.u8(),i=t.map(([l,d])=>`${String(l)}${d?`: ${d.description}`:""}`).join(", "),s=t.every((l,d,u)=>l[1].fixedSize===u[0][1].fixedSize)?t[0][1].fixedSize:null,o=hae.maxSerializerSizes(t.map(([,l])=>l.maxSize));return{description:e.description??`dataEnum(${i}; ${r.description})`,fixedSize:t.length===0?r.fixedSize:MB.sumSerializerSizes([r.fixedSize,s]),maxSize:t.length===0?r.maxSize:MB.sumSerializerSizes([r.maxSize,o]),serialize:l=>{let d=t.findIndex(([x])=>l.__kind===x);if(d<0)throw new IB.InvalidDataEnumVariantError(l.__kind,t.map(([x])=>x));let u=r.serialize(d),p=t[d][1].serialize(l);return zB.mergeBytes([u,p])},deserialize:(l,d=0)=>{if(l.slice(d).length===0)throw new zB.DeserializingEmptyBufferError("dataEnum");let[u,c]=r.deserialize(l,d);d=c;let p=t[Number(u)]??null;if(!p)throw new IB.EnumDiscriminatorOutOfRangeError(u,0,t.length-1);let[x,E]=p[1].deserialize(l,d);return d=E,[{__kind:p[0],...x??{}},d]}}}n(gae,"dataEnum");Fw.dataEnum=gae});var RB=v(Lw=>{"use strict";Object.defineProperty(Lw,"__esModule",{value:!0});var Kw=Pr(),yae=Na(),nm=Xs(),bae=Qn();function vae(t,e,r={}){let i=r.size??yae.u32();if(i==="remainder"&&(t.fixedSize===null||e.fixedSize===null))throw new Kw.ExpectedFixedSizeSerializerError('Serializers of "remainder" size must have fixed-size items.');return{description:r.description??`map(${t.description}, ${e.description}; ${nm.getSizeDescription(i)})`,fixedSize:nm.getSizeFromChildren(i,[t.fixedSize,e.fixedSize]),maxSize:nm.getSizeFromChildren(i,[t.maxSize,e.maxSize]),serialize:a=>{if(typeof i=="number"&&a.size!==i)throw new bae.InvalidNumberOfItemsError("map",i,a.size);let s=Array.from(a,([o,l])=>Kw.mergeBytes([t.serialize(o),e.serialize(l)]));return Kw.mergeBytes([nm.getSizePrefix(i,a.size),...s])},deserialize:(a,s=0)=>{let o=new Map;if(typeof i=="object"&&a.slice(s).length===0)return[o,s];let[l,d]=nm.getResolvedSize(i,[t.fixedSize,e.fixedSize],a,s);s=d;for(let u=0;u{"use strict";Object.defineProperty(jw,"__esModule",{value:!0});var Uw=Pr(),Sae=Na(),wae=Qs(),xae=Xs();function Aae(t,e={}){let r=e.prefix??Sae.u8(),i=e.fixed??!1,a=`; ${xae.getSizeDescription(r)}`,s=t.fixedSize===0?r.fixedSize:null;if(i){if(t.fixedSize===null||r.fixedSize===null)throw new Uw.ExpectedFixedSizeSerializerError("Fixed nullables can only be used with fixed-size serializers");a+="; fixed",s=r.fixedSize+t.fixedSize}return{description:e.description??`nullable(${t.description+a})`,fixedSize:s,maxSize:wae.sumSerializerSizes([r.maxSize,t.maxSize]),serialize:o=>{let l=r.serialize(+(o!==null));if(i){let u=t.fixedSize,c=o!==null?t.serialize(o).slice(0,u):new Uint8Array(u).fill(0);return Uw.mergeBytes([l,c])}let d=o!==null?t.serialize(o):new Uint8Array;return Uw.mergeBytes([l,d])},deserialize:(o,l=0)=>{if(o.slice(l).length===0)return[null,l];let d=l+(r.fixedSize??0)+(t.fixedSize??0),[u,c]=r.deserialize(o,l);if(l=c,u===0)return[null,i?d:l];let[p,x]=t.deserialize(o,l);return l=x,[p,i?d:l]}}}n(Aae,"nullable");jw.nullable=Aae});var CB=v($w=>{"use strict";Object.defineProperty($w,"__esModule",{value:!0});var eo=VS(),Hw=Pr(),_ae=Na(),kae=Qs(),Eae=Xs();function Pae(t,e={}){let r=e.prefix??_ae.u8(),i=e.fixed??!1,a=`; ${Eae.getSizeDescription(r)}`,s=t.fixedSize===0?r.fixedSize:null;if(i){if(t.fixedSize===null||r.fixedSize===null)throw new Hw.ExpectedFixedSizeSerializerError("Fixed options can only be used with fixed-size serializers");a+="; fixed",s=r.fixedSize+t.fixedSize}return{description:e.description??`option(${t.description+a})`,fixedSize:s,maxSize:kae.sumSerializerSizes([r.maxSize,t.maxSize]),serialize:o=>{let l=eo.isOption(o)?o:eo.wrapNullable(o),d=r.serialize(Number(eo.isSome(l)));if(i){let c=t.fixedSize,p=eo.isSome(l)?t.serialize(l.value).slice(0,c):new Uint8Array(c).fill(0);return Hw.mergeBytes([d,p])}let u=eo.isSome(l)?t.serialize(l.value):new Uint8Array;return Hw.mergeBytes([d,u])},deserialize:(o,l=0)=>{if(o.slice(l).length===0)return[eo.none(),l];let d=l+(r.fixedSize??0)+(t.fixedSize??0),[u,c]=r.deserialize(o,l);if(l=c,u===0)return[eo.none(),i?d:l];let[p,x]=t.deserialize(o,l);return l=x,[eo.some(p),i?d:l]}}}n(Pae,"option");$w.option=Pae});var NB=v(Gw=>{"use strict";Object.defineProperty(Gw,"__esModule",{value:!0});var sm=sg(),OB=Pr();function Tae(t={}){return{description:t.description??"publicKey",fixedSize:32,maxSize:32,serialize:e=>sm.publicKeyBytes(sm.publicKey(e)),deserialize:(e,r=0)=>{let i=e.slice(r,r+32);if(i.length===0)throw new OB.DeserializingEmptyBufferError("publicKey");if(i.length{"use strict";Object.defineProperty(Zw,"__esModule",{value:!0});var zae=Pr(),Iae=Na(),qB=Qn();function Mae(t,e={}){let r=e.size??Iae.u8(),i=Object.keys(t),a=Object.values(t),s=a.some(p=>typeof p=="number"),o=a.filter(p=>typeof p=="string").join(", "),l=0,d=s?a.length/2-1:a.length-1,u=s?[...i]:[...new Set([...i,...a])];function c(p){let x=typeof p=="number"&&(pd),E=typeof p=="string"&&!u.includes(p);if(x||E)throw new qB.InvalidScalarEnumVariantError(p,u,l,d)}return n(c,"assertValidVariant"),{description:e.description??`enum(${o}; ${r.description})`,fixedSize:r.fixedSize,maxSize:r.maxSize,serialize:p=>{if(c(p),typeof p=="number")return r.serialize(p);let x=a.indexOf(p);return x>=0?r.serialize(x):r.serialize(i.indexOf(p))},deserialize:(p,x=0)=>{if(p.slice(x).length===0)throw new zae.DeserializingEmptyBufferError("enum");let[E,I]=r.deserialize(p,x),k=Number(E);if(x=I,kd)throw new qB.EnumDiscriminatorOutOfRangeError(k,l,d);return[s?k:a[k],x]}}}n(Mae,"scalarEnum");Zw.scalarEnum=Mae});var FB=v(Jw=>{"use strict";Object.defineProperty(Jw,"__esModule",{value:!0});var VB=Pr(),Dae=Na(),om=Xs(),Rae=Qn();function Bae(t,e={}){let r=e.size??Dae.u32();if(r==="remainder"&&t.fixedSize===null)throw new VB.ExpectedFixedSizeSerializerError('Serializers of "remainder" size must have fixed-size items.');return{description:e.description??`set(${t.description}; ${om.getSizeDescription(r)})`,fixedSize:om.getSizeFromChildren(r,[t.fixedSize]),maxSize:om.getSizeFromChildren(r,[t.maxSize]),serialize:i=>{if(typeof r=="number"&&i.size!==r)throw new Rae.InvalidNumberOfItemsError("set",r,i.size);let a=Array.from(i,s=>t.serialize(s));return VB.mergeBytes([om.getSizePrefix(r,i.size),...a])},deserialize:(i,a=0)=>{let s=new Set;if(typeof r=="object"&&i.slice(a).length===0)return[s,a];let[o,l]=om.getResolvedSize(r,[t.fixedSize],i,a);a=l;for(let d=0;d{"use strict";Object.defineProperty(Yw,"__esModule",{value:!0});var lg=Pr(),Cae=ig(),Oae=Na(),Nae=Xs();function qae(t={}){let e=t.size??Oae.u32(),r=t.encoding??Cae.utf8,i=t.description??`string(${r.description}; ${Nae.getSizeDescription(e)})`;return e==="variable"?{...r,description:i}:typeof e=="number"?lg.fixSerializer(r,e,i):{description:i,fixedSize:null,maxSize:null,serialize:a=>{let s=r.serialize(a),o=e.serialize(s.length);return lg.mergeBytes([o,s])},deserialize:(a,s=0)=>{if(a.slice(s).length===0)throw new lg.DeserializingEmptyBufferError("string");let[o,l]=e.deserialize(a,s),d=Number(o);s=l;let u=a.slice(s,s+d);if(u.length{"use strict";Object.defineProperty(Qw,"__esModule",{value:!0});var Wae=Pr(),LB=Qs();function Vae(t,e={}){let r=t.map(([i,a])=>`${String(i)}: ${a.description}`).join(", ");return{description:e.description??`struct(${r})`,fixedSize:LB.sumSerializerSizes(t.map(([,i])=>i.fixedSize)),maxSize:LB.sumSerializerSizes(t.map(([,i])=>i.maxSize)),serialize:i=>{let a=t.map(([s,o])=>o.serialize(i[s]));return Wae.mergeBytes(a)},deserialize:(i,a=0)=>{let s={};return t.forEach(([o,l])=>{let[d,u]=l.deserialize(i,a);a=u,s[o]=d}),[s,a]}}}n(Vae,"struct");Qw.struct=Vae});var HB=v(Xw=>{"use strict";Object.defineProperty(Xw,"__esModule",{value:!0});var Fae=Pr(),jB=Qs(),Kae=Qn();function Lae(t,e={}){let r=t.map(i=>i.description).join(", ");return{description:e.description??`tuple(${r})`,fixedSize:jB.sumSerializerSizes(t.map(i=>i.fixedSize)),maxSize:jB.sumSerializerSizes(t.map(i=>i.maxSize)),serialize:i=>{if(i.length!==t.length)throw new Kae.InvalidNumberOfItemsError("tuple",t.length,i.length);return Fae.mergeBytes(t.map((a,s)=>a.serialize(i[s])))},deserialize:(i,a=0)=>{let s=[];return t.forEach(o=>{let[l,d]=o.deserialize(i,a);s.push(l),a=d}),[s,a]}}}n(Lae,"tuple");Xw.tuple=Lae});var $B=v(ex=>{"use strict";Object.defineProperty(ex,"__esModule",{value:!0});function Uae(t={}){return{description:t.description??"unit",fixedSize:0,maxSize:0,serialize:()=>new Uint8Array,deserialize:(e,r=0)=>[void 0,r]}}n(Uae,"unit");ex.unit=Uae});var kl=v(Ge=>{"use strict";Object.defineProperty(Ge,"__esModule",{value:!0});var GB=Pr(),ZB=ig(),JB=Na(),jae=_B(),Hae=kB(),$ae=PB(),Gae=TB(),Zae=DB(),xd=Qn(),Jae=RB(),Yae=BB(),Qae=CB(),Xae=NB(),ene=WB(),tne=FB(),rne=KB(),ine=UB(),ane=HB(),nne=$B(),sne=Vw(),one=Qs();Ge.array=jae.array;Ge.bitArray=Hae.bitArray;Ge.bool=$ae.bool;Ge.bytes=Gae.bytes;Ge.dataEnum=Zae.dataEnum;Ge.EnumDiscriminatorOutOfRangeError=xd.EnumDiscriminatorOutOfRangeError;Ge.InvalidArrayLikeRemainderSizeError=xd.InvalidArrayLikeRemainderSizeError;Ge.InvalidDataEnumVariantError=xd.InvalidDataEnumVariantError;Ge.InvalidNumberOfItemsError=xd.InvalidNumberOfItemsError;Ge.InvalidScalarEnumVariantError=xd.InvalidScalarEnumVariantError;Ge.UnrecognizedArrayLikeSerializerSizeError=xd.UnrecognizedArrayLikeSerializerSizeError;Ge.map=Jae.map;Ge.nullable=Yae.nullable;Ge.option=Qae.option;Ge.publicKey=Xae.publicKey;Ge.scalarEnum=ene.scalarEnum;Ge.set=tne.set;Ge.string=rne.string;Ge.struct=ine.struct;Ge.tuple=ane.tuple;Ge.unit=nne.unit;Ge.maxSerializerSizes=sne.maxSerializerSizes;Ge.sumSerializerSizes=one.sumSerializerSizes;Object.keys(GB).forEach(function(t){t!=="default"&&!Ge.hasOwnProperty(t)&&Object.defineProperty(Ge,t,{enumerable:!0,get:function(){return GB[t]}})});Object.keys(ZB).forEach(function(t){t!=="default"&&!Ge.hasOwnProperty(t)&&Object.defineProperty(Ge,t,{enumerable:!0,get:function(){return ZB[t]}})});Object.keys(JB).forEach(function(t){t!=="default"&&!Ge.hasOwnProperty(t)&&Object.defineProperty(Ge,t,{enumerable:!0,get:function(){return JB[t]}})})});var YB=v(Or=>{"use strict";Object.defineProperty(Or,"__esModule",{value:!0});var si=kl(),lne=si.mapSerializer,dne=si.fixSerializer,une=si.reverseSerializer,cne=si.mergeBytes,pne=si.padBytes,mne=si.fixBytes,fne=si.utf8,hne=si.baseX,gne=si.base10,yne=si.base58,bne=si.base64,vne=si.base16,Sne=si.bitArray,wne=si.removeNullCharacters,xne=si.padNullCharacters,Ane=si.Endian;Or.Endian=Ane;Or.base10=gne;Or.base16=vne;Or.base58=yne;Or.base64=bne;Or.baseX=hne;Or.bitArray=Sne;Or.fixBytes=mne;Or.fixSerializer=dne;Or.mapSerializer=lne;Or.mergeBytes=cne;Or.padBytes=pne;Or.padNullCharacters=xne;Or.removeNullCharacters=wne;Or.reverseSerializer=une;Or.utf8=fne});var dg=v(rx=>{"use strict";Object.defineProperty(rx,"__esModule",{value:!0});var tx=class extends Error{static{n(this,"UmiError")}name="UmiError";constructor(e,r,i,a){super(e),this.source=r,this.sourceDetails=i,this.cause=a,this.message=`${this.message} Source: ${this.getFullSource()}${this.cause?` Caused By: ${this.cause}`:""} -`}getCapitalizedSource(){return this.source==="sdk"||this.source==="rpc"?this.source.toUpperCase():this.source[0].toUpperCase()+this.source.slice(1)}getFullSource(){let e=this.getCapitalizedSource(),r=this.sourceDetails?` > ${this.sourceDetails}`:"";return e+r}toString(){return`[${this.name}] ${this.message}`}};tx.UmiError=ex});var cn=b(ix=>{"use strict";Object.defineProperty(ix,"__esModule",{value:!0});var Ane=lg(),rx=class extends Ane.UmiError{name="SdkError";constructor(e,r){super(e,"sdk",void 0,r)}};ix.SdkError=rx});var sx=b(nx=>{"use strict";Object.defineProperty(nx,"__esModule",{value:!0});var _ne=cn(),ax=class extends _ne.SdkError{name="UnexpectedAccountError";constructor(e,r,i){let a=`The account at the provided address [${e}] is not of the expected type [${r}].`;super(a,i)}};nx.UnexpectedAccountError=ax});var dx=b(lx=>{"use strict";Object.defineProperty(lx,"__esModule",{value:!0});var kne=cn(),ox=class extends kne.SdkError{name="AccountNotFoundError";constructor(e,r,i){let a=`${r?`The account of type [${r}] was not found`:"No account was found"} at the provided address [${e}].${i?` ${i}`:""}`;super(a)}};lx.AccountNotFoundError=ox});var YB=b(nm=>{"use strict";Object.defineProperty(nm,"__esModule",{value:!0});var Ene=sx(),Pne=dx(),Tne=128;function zne(t,e){let{data:r,publicKey:i,...a}=t;try{let[n]=e.deserialize(r);return{publicKey:i,header:a,...n}}catch(n){throw new Ene.UnexpectedAccountError(i,e.description,n)}}function Ine(t,e,r){if(!t.exists)throw new Pne.AccountNotFoundError(t.publicKey,e,r)}nm.ACCOUNT_HEADER_SIZE=Tne;nm.assertAccountExists=Ine;nm.deserializeAccount=zne});var dg=b(ux=>{"use strict";Object.defineProperty(ux,"__esModule",{value:!0});var Mne=t=>(t=typeof t=="object"?t.toString():t,BigInt(t));ux.createBigInt=Mne});var mx=b(px=>{"use strict";Object.defineProperty(px,"__esModule",{value:!0});var Dne=cn(),cx=class extends Dne.SdkError{name="UnexpectedAmountError";constructor(e,r,i){let a=`Expected amount of type [${r} with ${i} decimals] but got [${e.identifier} with ${e.decimals} decimals]. Ensure the provided Amount is of the expected type.`;super(a),this.amount=e,this.expectedIdentifier=r,this.expectedDecimals=i}};px.UnexpectedAmountError=cx});var gx=b(hx=>{"use strict";Object.defineProperty(hx,"__esModule",{value:!0});var Rne=cn(),fx=class extends Rne.SdkError{name="AmountMismatchError";constructor(e,r,i){let n=`The SDK tried to execute an operation${i?` [${i}]`:""} on two amounts of different types: [${e.identifier} with ${e.decimals} decimals] and [${r.identifier} with ${r.decimals} decimals]. Provide both amounts in the same type to perform this operation.`;super(n),this.left=e,this.right=r,this.operation=i}};hx.AmountMismatchError=fx});var aC=b(Le=>{"use strict";Object.defineProperty(Le,"__esModule",{value:!0});var Bne=_l(),Cne=dg(),One=mx(),Nne=gx(),sm=(t,e,r)=>({basisPoints:Cne.createBigInt(t),identifier:e,decimals:r}),om=(t,e,r)=>{let i=sm(BigInt(10)**BigInt(r??0),e,r);return tC(i,t)},qne=(t,e=2)=>om(t,"%",e),Wne=(t,e,r)=>om(t,e??"splToken",r??0),Vne=t=>sm(t,"SOL",9),Fne=t=>om(t,"SOL",9),Kne=t=>om(t,"USD",2),ug=(t,e,r)=>t.identifier===e&&t.decimals===r,Lne=t=>ug(t,"SOL",9),QB=(t,e)=>ug(t,e.identifier,e.decimals);function XB(t,e,r){if(!ug(t,e,r))throw new One.UnexpectedAmountError(t,e,r)}function Une(t){XB(t,"SOL",9)}function xd(t,e,r){if(!QB(t,e))throw new Nne.AmountMismatchError(t,e,r)}var jne=(t,e)=>(xd(t,e,"add"),{...t,basisPoints:t.basisPoints+e.basisPoints}),eC=(t,e)=>(xd(t,e,"subtract"),{...t,basisPoints:t.basisPoints-e.basisPoints}),tC=(t,e)=>{if(typeof e=="bigint")return{...t,basisPoints:t.basisPoints*e};let[r,i]=e.toString().split("."),a=BigInt(r+(i??"")),n=BigInt(10)**BigInt(i?.length??0);return{...t,basisPoints:t.basisPoints*a/n}},Hne=(t,e)=>{if(typeof e=="bigint")return{...t,basisPoints:t.basisPoints/e};let[r,i]=e.toString().split("."),a=BigInt(r+(i??"")),n=BigInt(10)**BigInt(i?.length??0);return{...t,basisPoints:t.basisPoints*n/a}},rC=t=>{let e=t.basisPoints;return{...t,basisPoints:e<0?-e:e}},lm=(t,e)=>(xd(t,e,"compare"),t.basisPoints>e.basisPoints?1:t.basisPoints{r=r??sm(0,t.identifier,t.decimals),xd(t,e,"isEqualToAmount"),xd(t,r,"isEqualToAmount");let i=rC(eC(t,e));return iC(i,r)},Gne=(t,e)=>lm(t,e)<0,iC=(t,e)=>lm(t,e)<=0,Zne=(t,e)=>lm(t,e)>0,Jne=(t,e)=>lm(t,e)>=0,Yne=t=>t.basisPoints===BigInt(0),Qne=t=>t.basisPoints>=BigInt(0),Xne=t=>t.basisPoints{let r=t.basisPoints.toString();if(t.decimals===0)return r;let i=r.startsWith("-")?"-":"";r=r.replace("-",""),r=r.padStart(t.decimals+1,"0");let a=r.slice(0,-t.decimals),n=r.slice(-t.decimals);return e!==void 0&&(n=n.slice(0,e)),`${i+a}.${n}`},ese=t=>parseFloat(yx(t)),tse=(t,e)=>{let r=yx(t,e);switch(t.identifier){case"%":return`${r}%`;case"splToken":return/^1(\.0+)?$/.test(r)?`${r} Token`:`${r} Tokens`;default:if(t.identifier.startsWith("splToken.")){let[,i]=t.identifier.split(".");return`${i} ${r}`}return`${t.identifier} ${r}`}},rse=(t,e,r)=>Bne.mapSerializer(t,i=>i.basisPoints>Number.MAX_SAFE_INTEGER?i.basisPoints:Number(i.basisPoints),i=>sm(i,e,r));Le.absoluteAmount=rC;Le.addAmounts=jne;Le.amountToNumber=ese;Le.amountToString=yx;Le.assertAmount=XB;Le.assertSameAmounts=xd;Le.assertSolAmount=Une;Le.compareAmounts=lm;Le.createAmount=sm;Le.createAmountFromDecimals=om;Le.displayAmount=tse;Le.divideAmount=Hne;Le.isAmount=ug;Le.isEqualToAmount=$ne;Le.isGreaterThanAmount=Zne;Le.isGreaterThanOrEqualToAmount=Jne;Le.isLessThanAmount=Gne;Le.isLessThanOrEqualToAmount=iC;Le.isNegativeAmount=Xne;Le.isPositiveAmount=Qne;Le.isSolAmount=Lne;Le.isZeroAmount=Yne;Le.lamports=Vne;Le.mapAmountSerializer=rse;Le.multiplyAmount=tC;Le.percentAmount=qne;Le.sameAmounts=QB;Le.sol=Fne;Le.subtractAmounts=eC;Le.tokenAmount=Wne;Le.usd=Kne});var nC=b(bx=>{"use strict";Object.defineProperty(bx,"__esModule",{value:!0});var ise=["api.mainnet-beta.solana.com","ssc-dao.genesysgo.net"],ase=["api.devnet.solana.com","psytrbhymqlkfrhudd.dev.genesysgo.net"],nse=["api.testnet.solana.com"],sse=["localhost","127.0.0.1"],ose=t=>{let e=new URL(t).hostname;return ise.includes(e)?"mainnet-beta":ase.includes(e)?"devnet":nse.includes(e)?"testnet":sse.includes(e)?"localnet":t.includes("mainnet")?"mainnet-beta":t.includes("devnet")?"devnet":t.includes("testnet")?"testnet":t.includes("local")?"localnet":"custom"};bx.resolveClusterFromEndpoint=ose});var pn=b(Sx=>{"use strict";Object.defineProperty(Sx,"__esModule",{value:!0});var lse=cn(),vx=class extends lse.SdkError{name="InterfaceImplementationMissingError";constructor(e,r){let i=e.replace(/Interface$/,""),a=`Tried using ${e} but no implementation of that interface was found. Make sure an implementation is registered, e.g. via "context.${r} = new My${i}();".`;super(a)}};Sx.InterfaceImplementationMissingError=vx});var xx=b(wx=>{"use strict";Object.defineProperty(wx,"__esModule",{value:!0});var dse=pn();function use(){let t=()=>{throw new dse.InterfaceImplementationMissingError("DownloaderInterface","downloader")};return{download:t,downloadJson:t}}wx.createNullDownloader=use});var _x=b(Ax=>{"use strict";Object.defineProperty(Ax,"__esModule",{value:!0});var cse=pn();function pse(){let t=()=>{throw new cse.InterfaceImplementationMissingError("EddsaInterface","eddsa")};return{generateKeypair:t,createKeypairFromSecretKey:t,createKeypairFromSeed:t,isOnCurve:t,findPda:t,sign:t,verify:t}}Ax.createNullEddsa=pse});var Ex=b(kx=>{"use strict";Object.defineProperty(kx,"__esModule",{value:!0});var mse=pn();function fse(){return{send:()=>{throw new mse.InterfaceImplementationMissingError("HttpInterface","http")}}}kx.createNullHttp=fse});var Tx=b(Px=>{"use strict";Object.defineProperty(Px,"__esModule",{value:!0});var hse=pn();function gse(){let t=()=>{throw new hse.InterfaceImplementationMissingError("ProgramRepositoryInterface","programs")};return{has:t,get:t,getPublicKey:t,all:t,add:t,bind:t,unbind:t,clone:t,resolveError:t}}Px.createNullProgramRepository=gse});var Ix=b(zx=>{"use strict";Object.defineProperty(zx,"__esModule",{value:!0});var yse=pn();function bse(){let t=()=>{throw new yse.InterfaceImplementationMissingError("RpcInterface","rpc")};return{getEndpoint:t,getCluster:t,getAccount:t,getAccounts:t,getProgramAccounts:t,getBlockTime:t,getBalance:t,getRent:t,getSlot:t,getLatestBlockhash:t,getTransaction:t,getSignatureStatuses:t,accountExists:t,airdrop:t,call:t,sendTransaction:t,confirmTransaction:t}}zx.createNullRpc=bse});var Dx=b(Mx=>{"use strict";Object.defineProperty(Mx,"__esModule",{value:!0});var vse=pn();function Sse(){let t=()=>{throw new vse.InterfaceImplementationMissingError("SerializerInterface","serializer")};return{tuple:t,array:t,map:t,set:t,option:t,nullable:t,struct:t,enum:t,dataEnum:t,string:t,bool:t,unit:t,u8:t,u16:t,u32:t,u64:t,u128:t,i8:t,i16:t,i32:t,i64:t,i128:t,f32:t,f64:t,bytes:t,publicKey:t}}Mx.createNullSerializer=Sse});var cg=b(dm=>{"use strict";Object.defineProperty(dm,"__esModule",{value:!0});var wse=(t,e)=>t.reduce((r,i,a)=>{let n=Math.floor(a/e);return r[n]||(r[n]=[]),r[n].push(i),r},[]),xse=(t,e,r)=>t.map((i,a)=>r(i,e?.[a]??null,a)),Ase=(t,e)=>t.reduce((r,i)=>(r.some(a=>e(i,a))||r.push(i),r),[]);dm.chunk=wse;dm.uniqueBy=Ase;dm.zipMap=xse});var um=b(eo=>{"use strict";Object.defineProperty(eo,"__esModule",{value:!0});var _se=cg(),kse=async(t,e)=>e.reduce(async(r,i)=>{let a=await r;return i.signTransaction(a)},Promise.resolve(t)),Ese=async t=>{let e=t.map(i=>i.transaction);return t.reduce((i,{signers:a},n)=>(a.forEach(s=>{let o=i.find(l=>l.signer.publicKey===s.publicKey);o?o.indices.push(n):i.push({signer:s,indices:[n]})}),i),[]).reduce(async(i,{signer:a,indices:n})=>{let s=await i;if(n.length===1){let d=s[n[0]];return s[n[0]]=await a.signTransaction(d),s}let o=n.map(d=>s[d]),l=await a.signAllTransactions(o);return n.forEach((d,u)=>{s[d]=l[u]}),s},Promise.resolve(e))},Pse=t=>typeof t=="object"&&"publicKey"in t&&"signMessage"in t,Tse=t=>_se.uniqueBy(t,(e,r)=>e.publicKey===r.publicKey),zse=t=>({publicKey:t,async signMessage(e){return e},async signTransaction(e){return e},async signAllTransactions(e){return e}});function Ise(){let t=new Error("Trying to use a NullSigner. Did you forget to set a Signer on your Umi instance? See the `signerIdentity` method for more information."),e=()=>{throw t};return{get publicKey(){throw t},signMessage:e,signTransaction:e,signAllTransactions:e}}eo.createNoopSigner=zse;eo.createNullSigner=Ise;eo.isSigner=Pse;eo.signAllTransactions=Ese;eo.signTransaction=kse;eo.uniqueSigners=Tse});var Bx=b(Rx=>{"use strict";Object.defineProperty(Rx,"__esModule",{value:!0});var Mse=pn();function Dse(){let t=()=>{throw new Mse.InterfaceImplementationMissingError("TransactionFactoryInterface","transactions")};return{create:t,serialize:t,deserialize:t,serializeMessage:t,deserializeMessage:t}}Rx.createNullTransactionFactory=Dse});var Ox=b(Cx=>{"use strict";Object.defineProperty(Cx,"__esModule",{value:!0});var Rse=pn();function Bse(){let t=()=>{throw new Rse.InterfaceImplementationMissingError("UploaderInterface","uploader")};return{upload:t,uploadJson:t,getUploadPrice:t}}Cx.createNullUploader=Bse});var qx=b(Nx=>{"use strict";Object.defineProperty(Nx,"__esModule",{value:!0});var Cse=xx(),Ose=_x(),Nse=Ex(),qse=Tx(),Wse=Ix(),Vse=Dx(),sC=um(),Fse=Bx(),Kse=Ox(),Lse=()=>({downloader:Cse.createNullDownloader(),eddsa:Ose.createNullEddsa(),http:Nse.createNullHttp(),identity:sC.createNullSigner(),payer:sC.createNullSigner(),programs:qse.createNullProgramRepository(),rpc:Wse.createNullRpc(),serializer:Vse.createNullSerializer(),transactions:Fse.createNullTransactionFactory(),uploader:Kse.createNullUploader()});Nx.createNullContext=Lse});var lC=b(Ad=>{"use strict";Object.defineProperty(Ad,"__esModule",{value:!0});var Use=_l(),oC=dg(),pg=t=>{if(typeof t=="string"||Hse(t)){let e=new Date(t),r=Math.floor(e.getTime()/1e3);return oC.createBigInt(r)}return oC.createBigInt(t)},jse=()=>pg(new Date(Date.now())),Hse=t=>Object.prototype.toString.call(t)==="[object Date]",$se=(t,e="en-US",r={month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"numeric"})=>new Date(Number(t*1000n)).toLocaleDateString(e,r),Gse=t=>Use.mapSerializer(t,e=>{let r=pg(e);return r>Number.MAX_SAFE_INTEGER?r:Number(r)},e=>pg(e));Ad.dateTime=pg;Ad.formatDateTime=$se;Ad.mapDateTimeSerializer=Gse;Ad.now=jse});var Vx=b(Wx=>{"use strict";Object.defineProperty(Wx,"__esModule",{value:!0});var Zse=(t=20,e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789")=>{let r="",i=e.length;for(let a=0;a{"use strict";Object.defineProperty(Qn,"__esModule",{value:!0});var Jse=_l(),Yse=Vx(),Fx=(t,e,r={})=>({buffer:typeof t=="string"?Jse.utf8.serialize(t):t,fileName:e,displayName:r.displayName??e,uniqueName:r.uniqueName??Yse.generateRandomString(),contentType:r.contentType??null,extension:r.extension??aoe(e),tags:r.tags??[]}),Qse=async(t,e={})=>Fx(new Uint8Array(await t.arrayBuffer()),t.name,e),Xse=(t,e="inline.json",r={})=>Fx(JSON.stringify(t),e,{contentType:"application/json",...r}),eoe=t=>new File([t.buffer],t.fileName),toe=t=>JSON.parse(new TextDecoder().decode(t.buffer)),roe=(...t)=>t.reduce((e,r)=>e+r.buffer.byteLength,0),ioe=t=>t!=null&&typeof t=="object"&&"buffer"in t&&"fileName"in t&&"displayName"in t&&"uniqueName"in t&&"contentType"in t&&"extension"in t&&"tags"in t,aoe=t=>{let e=t.lastIndexOf(".");return e<0?null:t.slice(e+1)};Qn.createBrowserFileFromGenericFile=eoe;Qn.createGenericFile=Fx;Qn.createGenericFileFromBrowserFile=Qse;Qn.createGenericFileFromJson=Xse;Qn.getBytesFromGenericFiles=roe;Qn.isGenericFile=ioe;Qn.parseJsonFromGenericFile=toe});var uC=b(fg=>{"use strict";Object.defineProperty(fg,"__esModule",{value:!0});var noe=ng(),Kx=_l(),cm=cn(),mg=class t{constructor(e,r,i={}){this.context=e,this.programId=r,this.options=i}reset(){return new t(this.context,this.programId,{fields:this.options.fields,deserializeCallback:this.options.deserializeCallback})}registerFields(e){return new t(this.context,this.programId,{...this.options,fields:e})}registerFieldsFromStruct(e){let r=0,i=e.reduce((a,[n,s])=>(a[n]=[r,s],r=r===null||s.fixedSize===null?null:r+s.fixedSize,a),{});return this.registerFields(i)}deserializeUsing(e){return new t(this.context,this.programId,{...this.options,deserializeCallback:e})}slice(e,r){return new t(this.context,this.programId,{...this.options,dataSlice:{offset:e,length:r}})}sliceField(e,r){let[i,a]=this.getField(e,r);if(!a.fixedSize)throw new cm.SdkError(`Cannot slice field [${e}] because its size is variable.`);return this.slice(i,a.fixedSize)}withoutData(){return this.slice(0,0)}addFilter(...e){return new t(this.context,this.programId,{...this.options,filters:[...this.options.filters??[],...e]})}where(e,r){let i;return typeof r=="string"?i=Kx.base58.serialize(r):typeof r=="number"||typeof r=="bigint"||typeof r=="boolean"?i=Kx.base10.serialize(BigInt(r).toString()):i=new Uint8Array(r),this.addFilter({memcmp:{offset:e,bytes:i}})}whereField(e,r,i){let[a,n]=this.getField(e,i);return this.where(a,n.serialize(r))}whereSize(e){return this.addFilter({dataSize:e})}sortUsing(e){return new t(this.context,this.programId,{...this.options,sortCallback:e})}async get(e={}){let r=await this.context.rpc.getProgramAccounts(this.programId,{...e,dataSlice:e.dataSlice??this.options.dataSlice,filters:[...e.filters??[],...this.options.filters??[]]});return this.options.sortCallback&&r.sort(this.options.sortCallback),r}async getAndMap(e,r={}){return(await this.get(r)).map(e)}async getDeserialized(e={}){let r=await this.get(e);return this.options.deserializeCallback?r.map(this.options.deserializeCallback):r}async getPublicKeys(e={}){return this.getAndMap(r=>r.publicKey,e)}async getDataAsPublicKeys(e={}){return this.getAndMap(r=>{try{return noe.publicKey(r.data)}catch{let a=`Following a getProgramAccount call, you are trying to use an account's data (or a slice of it) as a public key. However, we encountered an account [${r.publicKey}] whose data [base64=${Kx.base64.deserialize(r.data)}] is not a valid public key.`;throw new cm.SdkError(a)}},e)}getField(e,r){if(!this.options.fields)throw new cm.SdkError("Fields are not defined in this GpaBuilder.");let i=this.options.fields[e];if(!i)throw new cm.SdkError(`Field [${e}] is not defined in this GpaBuilder.`);let[a,n]=i;if(r!==void 0)return[r,n];if(a===null)throw new cm.SdkError(`Field [${e}] does not have a fixed offset. This is likely because it is not in the fixed part of the account's data. In other words, it is located after a field of variable length which means we cannot find a fixed offset for the filter. You may go around this by providing an offset explicitly.`);return[a,n]}},soe=(t,e)=>new mg(t,e);fg.GpaBuilder=mg;fg.gpaBuilder=soe});var cC=b(gg=>{"use strict";Object.defineProperty(gg,"__esModule",{value:!0});var ooe=()=>new hg({method:"get",data:void 0,headers:{},url:""}),hg=class t{constructor(e){this.request=e}asJson(){return this.contentType("application/json")}asMultipart(){return this.contentType("multipart/form-data")}asForm(){return this.contentType("application/x-www-form-urlencoded")}accept(e){return this.withHeader("accept",e)}contentType(e){return this.withHeader("content-type",e)}userAgent(e){return this.withHeader("user-agent",e)}withToken(e,r="Bearer"){return this.withHeader("authorization",`${r} ${e}`)}withHeader(e,r){return this.withHeaders({[e]:r})}withHeaders(e){return new t({...this.request,headers:{...this.request.headers,...e}})}dontFollowRedirects(){return this.followRedirects(0)}followRedirects(e){return new t({...this.request,maxRedirects:e})}withoutTimeout(){return this.withTimeout(0)}withTimeout(e){return new t({...this.request,timeout:e})}withAbortSignal(e){return new t({...this.request,signal:e})}withEndpoint(e,r){return new t({...this.request,method:e,url:r})}withParams(e){let r=new URL(this.request.url),i=new URLSearchParams(e),a=new URLSearchParams(r.searchParams);return[...i.entries()].forEach(([n,s])=>{a.append(n,s)}),r.search=a.toString(),new t({...this.request,url:r.toString()})}withData(e){return new t({...this.request,data:e})}get(e){return this.withEndpoint("get",e)}post(e){return this.withEndpoint("post",e)}put(e){return this.withEndpoint("put",e)}patch(e){return this.withEndpoint("patch",e)}delete(e){return this.withEndpoint("delete",e)}get method(){return this.request.method}get url(){return this.request.url}get data(){return this.request.data}get headers(){return this.request.headers}get maxRedirects(){return this.request.maxRedirects}get timeout(){return this.request.timeout}get signal(){return this.request.signal}};gg.HttpRequestBuilder=hg;gg.request=ooe});var bg=b(yg=>{"use strict";Object.defineProperty(yg,"__esModule",{value:!0});var loe=1232,doe=(t,e,r)=>{let i=t.message.header.numRequiredSignatures,n=t.message.accounts.slice(0,i).findIndex(o=>o===r);if(n<0)throw new Error("The provided signer is not required to sign this transaction.");let s=[...t.signatures];return s[n]=e,{...t,signatures:s}};yg.TRANSACTION_SIZE_LIMIT=loe;yg.addTransactionSignature=doe});var Lx=b(pm=>{"use strict";Object.defineProperty(pm,"__esModule",{value:!0});var uoe=bg(),coe=t=>pC(t,t.eddsa.generateKeypair()),pC=(t,e)=>({publicKey:e.publicKey,secretKey:e.secretKey,async signMessage(r){return t.eddsa.sign(r,e)},async signTransaction(r){let i=r.serializedMessage,a=t.eddsa.sign(i,e);return uoe.addTransactionSignature(r,a,e.publicKey)},async signAllTransactions(r){return Promise.all(r.map(i=>this.signTransaction(i)))}}),poe=t=>t.secretKey!==void 0;pm.createSignerFromKeypair=pC;pm.generateSigner=coe;pm.isKeypairSigner=poe});var mC=b(Ux=>{"use strict";Object.defineProperty(Ux,"__esModule",{value:!0});var moe=t=>t instanceof Error&&"logs"in t;Ux.isErrorWithLogs=moe});var fC=b(to=>{"use strict";Object.defineProperty(to,"__esModule",{value:!0});var vg=Lx(),jx=(t,e=!0)=>({install(r){r.identity=t,e&&(r.payer=t)}}),Hx=t=>({install(e){e.payer=t}}),foe=(t=!0)=>({install(e){let r=vg.generateSigner(e);e.use(jx(r,t))}}),hoe=()=>({install(t){let e=vg.generateSigner(t);t.use(Hx(e))}}),goe=(t,e=!0)=>({install(r){let i=vg.createSignerFromKeypair(r,t);r.use(jx(i,e))}}),yoe=t=>({install(e){let r=vg.createSignerFromKeypair(e,t);e.use(Hx(r))}});to.generatedSignerIdentity=foe;to.generatedSignerPayer=hoe;to.keypairIdentity=goe;to.keypairPayer=yoe;to.signerIdentity=jx;to.signerPayer=Hx});var $x=b(wg=>{"use strict";Object.defineProperty(wg,"__esModule",{value:!0});var hC=um(),boe=bg(),voe=cn(),Sg=class t{constructor(e=[],r={}){this.items=e,this.options=r}empty(){return new t([],this.options)}setItems(e){return new t(this.parseItems(e),this.options)}prepend(e){return new t([...this.parseItems(e),...this.items],this.options)}append(e){return new t([...this.items,...this.parseItems(e)],this.options)}add(e){return this.append(e)}mapInstructions(e){return new t(this.items.map(e),this.options)}addRemainingAccounts(e,r){return r=r??this.items.length-1,this.mapInstructions((i,a)=>{if(a!==r)return i;let n=[...i.instruction.keys,...Array.isArray(e)?e:[e]];return{...i,instruction:{...i.instruction,keys:n}}})}splitByIndex(e){return[new t(this.items.slice(0,e),this.options),new t(this.items.slice(e),this.options)]}unsafeSplitByTransactionSize(e){return this.items.reduce((r,i)=>{let a=r.pop(),n=a.add(i);return n.fitsInOneTransaction(e)?r.push(n):(r.push(a),r.push(a.empty().add(i))),r},[this.empty()])}setFeePayer(e){return new t(this.items,{...this.options,feePayer:e})}getFeePayer(e){return this.options.feePayer??e.payer}setVersion(e){return new t(this.items,{...this.options,version:e})}useLegacyVersion(){return this.setVersion("legacy")}useV0(){return this.setVersion(0)}setAddressLookupTables(e){return new t(this.items,{...this.options,addressLookupTables:e})}getBlockhash(){return typeof this.options.blockhash=="object"?this.options.blockhash.blockhash:this.options.blockhash}setBlockhash(e){return new t(this.items,{...this.options,blockhash:e})}async setLatestBlockhash(e,r={}){return this.setBlockhash(await e.rpc.getLatestBlockhash(r))}getInstructions(){return this.items.map(e=>e.instruction)}getSigners(e){return hC.uniqueSigners([this.getFeePayer(e),...this.items.flatMap(r=>r.signers)])}getBytesCreatedOnChain(){return this.items.reduce((e,r)=>e+r.bytesCreatedOnChain,0)}async getRentCreatedOnChain(e){return e.rpc.getRent(this.getBytesCreatedOnChain(),{includesHeaderBytes:!0})}getTransactionSize(e){return e.transactions.serialize(this.setBlockhash("11111111111111111111111111111111").build(e)).length}minimumTransactionsRequired(e){return Math.ceil(this.getTransactionSize(e)/boe.TRANSACTION_SIZE_LIMIT)}fitsInOneTransaction(e){return this.minimumTransactionsRequired(e)===1}build(e){let r=this.getBlockhash();if(!r)throw new voe.SdkError("Setting a blockhash is required to build a transaction. Please use the `setBlockhash` or `setLatestBlockhash` methods.");let i={version:this.options.version??0,payer:this.getFeePayer(e).publicKey,instructions:this.getInstructions(),blockhash:r};return i.version===0&&this.options.addressLookupTables&&(i.addressLookupTables=this.options.addressLookupTables),e.transactions.create(i)}async buildWithLatestBlockhash(e,r={}){let i=this;return this.options.blockhash||(i=await this.setLatestBlockhash(e,r)),i.build(e)}async buildAndSign(e){return hC.signTransaction(await this.buildWithLatestBlockhash(e),this.getSigners(e))}async send(e,r={}){let i=await this.buildAndSign(e);return e.rpc.sendTransaction(i,r)}async confirm(e,r,i={}){let a=this;this.options.blockhash||(a=await this.setLatestBlockhash(e));let n;if(i.strategy)n=i.strategy;else{let s=typeof a.options.blockhash=="object"?a.options.blockhash:await e.rpc.getLatestBlockhash();n=i.strategy??{type:"blockhash",...s}}return e.rpc.confirmTransaction(r,{...i,strategy:n})}async sendAndConfirm(e,r={}){let i=this;this.options.blockhash||(i=await this.setLatestBlockhash(e));let a=await i.send(e,r.send),n=await i.confirm(e,a,r.confirm);return{signature:a,result:n}}parseItems(e){return(Array.isArray(e)?e:[e]).flatMap(r=>"items"in r?r.items:[r])}},Soe=(t=[])=>new Sg(t);wg.TransactionBuilder=Sg;wg.transactionBuilder=Soe});var gC=b(Ag=>{"use strict";Object.defineProperty(Ag,"__esModule",{value:!0});var woe=um(),xoe=$x(),Aoe=cg(),xg=class t{constructor(e=[],r={}){this.builders=e,this.options=r}prepend(e){let r=Array.isArray(e)?e:[e];return new t([...r,...this.builders],this.options)}append(e){let r=Array.isArray(e)?e:[e];return new t([...r,...this.builders],this.options)}add(e){return this.append(e)}sequential(){return new t(this.builders,{...this.options,parallel:!1})}parallel(){return new t(this.builders,{...this.options,parallel:!0})}isParallel(){return this.options.parallel??!1}merge(){return this.builders.length===0?new xoe.TransactionBuilder:this.builders.reduce((e,r)=>e.add(r),this.builders[0].empty())}build(e){return this.builders.map(r=>r.build(e))}async setLatestBlockhash(e){if(!this.builders.some(a=>!a.options.blockhash))return this;let i=await e.rpc.getLatestBlockhash();return this.map(a=>a.options.blockhash?a:a.setBlockhash(i))}async buildWithLatestBlockhash(e){return(await this.setLatestBlockhash(e)).build(e)}async buildAndSign(e){let r=await this.buildWithLatestBlockhash(e),i=this.builders.map(a=>a.getSigners(e));return woe.signAllTransactions(Aoe.zipMap(r,i,(a,n)=>({transaction:a,signers:n??[]})))}async send(e,r={}){return this.runAll(await this.buildAndSign(e),async i=>e.rpc.sendTransaction(i,r))}async sendAndConfirm(e,r={}){let i=this.builders.find(n=>typeof n.options.blockhash=="object")?.options.blockhash,a;if(r.confirm?.strategy)a=r.confirm.strategy;else{let n=i??await e.rpc.getLatestBlockhash();a=r.confirm?.strategy??{type:"blockhash",...n}}return this.runAll(await this.buildAndSign(e),async n=>{let s=await e.rpc.sendTransaction(n,r.send),o=await e.rpc.confirmTransaction(s,{...r.confirm,strategy:a});return{signature:s,result:o}})}map(e){return new t(this.builders.map(e))}filter(e){return new t(this.builders.filter(e))}async runAll(e,r){return this.isParallel()?Promise.all(e.map(r)):e.reduce(async(i,...a)=>[...await i,await r(...a)],Promise.resolve([]))}};function _oe(t=[]){return new xg(t)}Ag.TransactionBuilderGroup=xg;Ag.transactionBuilderGroup=_oe});var yC=b(Gx=>{"use strict";Object.defineProperty(Gx,"__esModule",{value:!0});var koe=qx(),Eoe=()=>({...koe.createNullContext(),use(t){return t.install(this),this}});Gx.createUmi=Eoe});var bC=b(Jx=>{"use strict";Object.defineProperty(Jx,"__esModule",{value:!0});var Poe=cn(),Zx=class extends Poe.SdkError{name="InvalidBaseStringError";constructor(e,r,i){let a=`Expected a string of base ${r}, got [${e}].`;super(a,i)}};Jx.InvalidBaseStringError=Zx});var vC=b(Qx=>{"use strict";Object.defineProperty(Qx,"__esModule",{value:!0});var Toe=lg(),Yx=class extends Toe.UmiError{name="ProgramError";constructor(e,r,i){super(e,"program",`${r.name} [${r.publicKey}]`,i),this.program=r,this.logs=i?.logs,this.logs&&(this.message+=` +`}getCapitalizedSource(){return this.source==="sdk"||this.source==="rpc"?this.source.toUpperCase():this.source[0].toUpperCase()+this.source.slice(1)}getFullSource(){let e=this.getCapitalizedSource(),r=this.sourceDetails?` > ${this.sourceDetails}`:"";return e+r}toString(){return`[${this.name}] ${this.message}`}};rx.UmiError=tx});var pn=v(ax=>{"use strict";Object.defineProperty(ax,"__esModule",{value:!0});var _ne=dg(),ix=class extends _ne.UmiError{static{n(this,"SdkError")}name="SdkError";constructor(e,r){super(e,"sdk",void 0,r)}};ax.SdkError=ix});var ox=v(sx=>{"use strict";Object.defineProperty(sx,"__esModule",{value:!0});var kne=pn(),nx=class extends kne.SdkError{static{n(this,"UnexpectedAccountError")}name="UnexpectedAccountError";constructor(e,r,i){let a=`The account at the provided address [${e}] is not of the expected type [${r}].`;super(a,i)}};sx.UnexpectedAccountError=nx});var ux=v(dx=>{"use strict";Object.defineProperty(dx,"__esModule",{value:!0});var Ene=pn(),lx=class extends Ene.SdkError{static{n(this,"AccountNotFoundError")}name="AccountNotFoundError";constructor(e,r,i){let a=`${r?`The account of type [${r}] was not found`:"No account was found"} at the provided address [${e}].${i?` ${i}`:""}`;super(a)}};dx.AccountNotFoundError=lx});var QB=v(lm=>{"use strict";Object.defineProperty(lm,"__esModule",{value:!0});var Pne=ox(),Tne=ux(),zne=128;function Ine(t,e){let{data:r,publicKey:i,...a}=t;try{let[s]=e.deserialize(r);return{publicKey:i,header:a,...s}}catch(s){throw new Pne.UnexpectedAccountError(i,e.description,s)}}n(Ine,"deserializeAccount");function Mne(t,e,r){if(!t.exists)throw new Tne.AccountNotFoundError(t.publicKey,e,r)}n(Mne,"assertAccountExists");lm.ACCOUNT_HEADER_SIZE=zne;lm.assertAccountExists=Mne;lm.deserializeAccount=Ine});var ug=v(cx=>{"use strict";Object.defineProperty(cx,"__esModule",{value:!0});var Dne=n(t=>(t=typeof t=="object"?t.toString():t,BigInt(t)),"createBigInt");cx.createBigInt=Dne});var fx=v(mx=>{"use strict";Object.defineProperty(mx,"__esModule",{value:!0});var Rne=pn(),px=class extends Rne.SdkError{static{n(this,"UnexpectedAmountError")}name="UnexpectedAmountError";constructor(e,r,i){let a=`Expected amount of type [${r} with ${i} decimals] but got [${e.identifier} with ${e.decimals} decimals]. Ensure the provided Amount is of the expected type.`;super(a),this.amount=e,this.expectedIdentifier=r,this.expectedDecimals=i}};mx.UnexpectedAmountError=px});var yx=v(gx=>{"use strict";Object.defineProperty(gx,"__esModule",{value:!0});var Bne=pn(),hx=class extends Bne.SdkError{static{n(this,"AmountMismatchError")}name="AmountMismatchError";constructor(e,r,i){let s=`The SDK tried to execute an operation${i?` [${i}]`:""} on two amounts of different types: [${e.identifier} with ${e.decimals} decimals] and [${r.identifier} with ${r.decimals} decimals]. Provide both amounts in the same type to perform this operation.`;super(s),this.left=e,this.right=r,this.operation=i}};gx.AmountMismatchError=hx});var nC=v(Ue=>{"use strict";Object.defineProperty(Ue,"__esModule",{value:!0});var Cne=kl(),One=ug(),Nne=fx(),qne=yx(),dm=n((t,e,r)=>({basisPoints:One.createBigInt(t),identifier:e,decimals:r}),"createAmount"),um=n((t,e,r)=>{let i=dm(BigInt(10)**BigInt(r??0),e,r);return rC(i,t)},"createAmountFromDecimals"),Wne=n((t,e=2)=>um(t,"%",e),"percentAmount"),Vne=n((t,e,r)=>um(t,e??"splToken",r??0),"tokenAmount"),Fne=n(t=>dm(t,"SOL",9),"lamports"),Kne=n(t=>um(t,"SOL",9),"sol"),Lne=n(t=>um(t,"USD",2),"usd"),cg=n((t,e,r)=>t.identifier===e&&t.decimals===r,"isAmount"),Une=n(t=>cg(t,"SOL",9),"isSolAmount"),XB=n((t,e)=>cg(t,e.identifier,e.decimals),"sameAmounts");function eC(t,e,r){if(!cg(t,e,r))throw new Nne.UnexpectedAmountError(t,e,r)}n(eC,"assertAmount");function jne(t){eC(t,"SOL",9)}n(jne,"assertSolAmount");function Ad(t,e,r){if(!XB(t,e))throw new qne.AmountMismatchError(t,e,r)}n(Ad,"assertSameAmounts");var Hne=n((t,e)=>(Ad(t,e,"add"),{...t,basisPoints:t.basisPoints+e.basisPoints}),"addAmounts"),tC=n((t,e)=>(Ad(t,e,"subtract"),{...t,basisPoints:t.basisPoints-e.basisPoints}),"subtractAmounts"),rC=n((t,e)=>{if(typeof e=="bigint")return{...t,basisPoints:t.basisPoints*e};let[r,i]=e.toString().split("."),a=BigInt(r+(i??"")),s=BigInt(10)**BigInt(i?.length??0);return{...t,basisPoints:t.basisPoints*a/s}},"multiplyAmount"),$ne=n((t,e)=>{if(typeof e=="bigint")return{...t,basisPoints:t.basisPoints/e};let[r,i]=e.toString().split("."),a=BigInt(r+(i??"")),s=BigInt(10)**BigInt(i?.length??0);return{...t,basisPoints:t.basisPoints*s/a}},"divideAmount"),iC=n(t=>{let e=t.basisPoints;return{...t,basisPoints:e<0?-e:e}},"absoluteAmount"),cm=n((t,e)=>(Ad(t,e,"compare"),t.basisPoints>e.basisPoints?1:t.basisPoints{r=r??dm(0,t.identifier,t.decimals),Ad(t,e,"isEqualToAmount"),Ad(t,r,"isEqualToAmount");let i=iC(tC(t,e));return aC(i,r)},"isEqualToAmount"),Zne=n((t,e)=>cm(t,e)<0,"isLessThanAmount"),aC=n((t,e)=>cm(t,e)<=0,"isLessThanOrEqualToAmount"),Jne=n((t,e)=>cm(t,e)>0,"isGreaterThanAmount"),Yne=n((t,e)=>cm(t,e)>=0,"isGreaterThanOrEqualToAmount"),Qne=n(t=>t.basisPoints===BigInt(0),"isZeroAmount"),Xne=n(t=>t.basisPoints>=BigInt(0),"isPositiveAmount"),ese=n(t=>t.basisPoints{let r=t.basisPoints.toString();if(t.decimals===0)return r;let i=r.startsWith("-")?"-":"";r=r.replace("-",""),r=r.padStart(t.decimals+1,"0");let a=r.slice(0,-t.decimals),s=r.slice(-t.decimals);return e!==void 0&&(s=s.slice(0,e)),`${i+a}.${s}`},"amountToString"),tse=n(t=>parseFloat(bx(t)),"amountToNumber"),rse=n((t,e)=>{let r=bx(t,e);switch(t.identifier){case"%":return`${r}%`;case"splToken":return/^1(\.0+)?$/.test(r)?`${r} Token`:`${r} Tokens`;default:if(t.identifier.startsWith("splToken.")){let[,i]=t.identifier.split(".");return`${i} ${r}`}return`${t.identifier} ${r}`}},"displayAmount"),ise=n((t,e,r)=>Cne.mapSerializer(t,i=>i.basisPoints>Number.MAX_SAFE_INTEGER?i.basisPoints:Number(i.basisPoints),i=>dm(i,e,r)),"mapAmountSerializer");Ue.absoluteAmount=iC;Ue.addAmounts=Hne;Ue.amountToNumber=tse;Ue.amountToString=bx;Ue.assertAmount=eC;Ue.assertSameAmounts=Ad;Ue.assertSolAmount=jne;Ue.compareAmounts=cm;Ue.createAmount=dm;Ue.createAmountFromDecimals=um;Ue.displayAmount=rse;Ue.divideAmount=$ne;Ue.isAmount=cg;Ue.isEqualToAmount=Gne;Ue.isGreaterThanAmount=Jne;Ue.isGreaterThanOrEqualToAmount=Yne;Ue.isLessThanAmount=Zne;Ue.isLessThanOrEqualToAmount=aC;Ue.isNegativeAmount=ese;Ue.isPositiveAmount=Xne;Ue.isSolAmount=Une;Ue.isZeroAmount=Qne;Ue.lamports=Fne;Ue.mapAmountSerializer=ise;Ue.multiplyAmount=rC;Ue.percentAmount=Wne;Ue.sameAmounts=XB;Ue.sol=Kne;Ue.subtractAmounts=tC;Ue.tokenAmount=Vne;Ue.usd=Lne});var sC=v(vx=>{"use strict";Object.defineProperty(vx,"__esModule",{value:!0});var ase=["api.mainnet-beta.solana.com","ssc-dao.genesysgo.net"],nse=["api.devnet.solana.com","psytrbhymqlkfrhudd.dev.genesysgo.net"],sse=["api.testnet.solana.com"],ose=["localhost","127.0.0.1"],lse=n(t=>{let e=new URL(t).hostname;return ase.includes(e)?"mainnet-beta":nse.includes(e)?"devnet":sse.includes(e)?"testnet":ose.includes(e)?"localnet":t.includes("mainnet")?"mainnet-beta":t.includes("devnet")?"devnet":t.includes("testnet")?"testnet":t.includes("local")?"localnet":"custom"},"resolveClusterFromEndpoint");vx.resolveClusterFromEndpoint=lse});var mn=v(wx=>{"use strict";Object.defineProperty(wx,"__esModule",{value:!0});var dse=pn(),Sx=class extends dse.SdkError{static{n(this,"InterfaceImplementationMissingError")}name="InterfaceImplementationMissingError";constructor(e,r){let i=e.replace(/Interface$/,""),a=`Tried using ${e} but no implementation of that interface was found. Make sure an implementation is registered, e.g. via "context.${r} = new My${i}();".`;super(a)}};wx.InterfaceImplementationMissingError=Sx});var Ax=v(xx=>{"use strict";Object.defineProperty(xx,"__esModule",{value:!0});var use=mn();function cse(){let t=n(()=>{throw new use.InterfaceImplementationMissingError("DownloaderInterface","downloader")},"errorHandler");return{download:t,downloadJson:t}}n(cse,"createNullDownloader");xx.createNullDownloader=cse});var kx=v(_x=>{"use strict";Object.defineProperty(_x,"__esModule",{value:!0});var pse=mn();function mse(){let t=n(()=>{throw new pse.InterfaceImplementationMissingError("EddsaInterface","eddsa")},"errorHandler");return{generateKeypair:t,createKeypairFromSecretKey:t,createKeypairFromSeed:t,isOnCurve:t,findPda:t,sign:t,verify:t}}n(mse,"createNullEddsa");_x.createNullEddsa=mse});var Px=v(Ex=>{"use strict";Object.defineProperty(Ex,"__esModule",{value:!0});var fse=mn();function hse(){return{send:n(()=>{throw new fse.InterfaceImplementationMissingError("HttpInterface","http")},"errorHandler")}}n(hse,"createNullHttp");Ex.createNullHttp=hse});var zx=v(Tx=>{"use strict";Object.defineProperty(Tx,"__esModule",{value:!0});var gse=mn();function yse(){let t=n(()=>{throw new gse.InterfaceImplementationMissingError("ProgramRepositoryInterface","programs")},"errorHandler");return{has:t,get:t,getPublicKey:t,all:t,add:t,bind:t,unbind:t,clone:t,resolveError:t}}n(yse,"createNullProgramRepository");Tx.createNullProgramRepository=yse});var Mx=v(Ix=>{"use strict";Object.defineProperty(Ix,"__esModule",{value:!0});var bse=mn();function vse(){let t=n(()=>{throw new bse.InterfaceImplementationMissingError("RpcInterface","rpc")},"errorHandler");return{getEndpoint:t,getCluster:t,getAccount:t,getAccounts:t,getProgramAccounts:t,getBlockTime:t,getBalance:t,getRent:t,getSlot:t,getLatestBlockhash:t,getTransaction:t,getSignatureStatuses:t,accountExists:t,airdrop:t,call:t,sendTransaction:t,confirmTransaction:t}}n(vse,"createNullRpc");Ix.createNullRpc=vse});var Rx=v(Dx=>{"use strict";Object.defineProperty(Dx,"__esModule",{value:!0});var Sse=mn();function wse(){let t=n(()=>{throw new Sse.InterfaceImplementationMissingError("SerializerInterface","serializer")},"errorHandler");return{tuple:t,array:t,map:t,set:t,option:t,nullable:t,struct:t,enum:t,dataEnum:t,string:t,bool:t,unit:t,u8:t,u16:t,u32:t,u64:t,u128:t,i8:t,i16:t,i32:t,i64:t,i128:t,f32:t,f64:t,bytes:t,publicKey:t}}n(wse,"createNullSerializer");Dx.createNullSerializer=wse});var pg=v(pm=>{"use strict";Object.defineProperty(pm,"__esModule",{value:!0});var xse=n((t,e)=>t.reduce((r,i,a)=>{let s=Math.floor(a/e);return r[s]||(r[s]=[]),r[s].push(i),r},[]),"chunk"),Ase=n((t,e,r)=>t.map((i,a)=>r(i,e?.[a]??null,a)),"zipMap"),_se=n((t,e)=>t.reduce((r,i)=>(r.some(a=>e(i,a))||r.push(i),r),[]),"uniqueBy");pm.chunk=xse;pm.uniqueBy=_se;pm.zipMap=Ase});var mm=v(to=>{"use strict";Object.defineProperty(to,"__esModule",{value:!0});var kse=pg(),Ese=n(async(t,e)=>e.reduce(async(r,i)=>{let a=await r;return i.signTransaction(a)},Promise.resolve(t)),"signTransaction"),Pse=n(async t=>{let e=t.map(i=>i.transaction);return t.reduce((i,{signers:a},s)=>(a.forEach(o=>{let l=i.find(d=>d.signer.publicKey===o.publicKey);l?l.indices.push(s):i.push({signer:o,indices:[s]})}),i),[]).reduce(async(i,{signer:a,indices:s})=>{let o=await i;if(s.length===1){let u=o[s[0]];return o[s[0]]=await a.signTransaction(u),o}let l=s.map(u=>o[u]),d=await a.signAllTransactions(l);return s.forEach((u,c)=>{o[u]=d[c]}),o},Promise.resolve(e))},"signAllTransactions"),Tse=n(t=>typeof t=="object"&&"publicKey"in t&&"signMessage"in t,"isSigner"),zse=n(t=>kse.uniqueBy(t,(e,r)=>e.publicKey===r.publicKey),"uniqueSigners"),Ise=n(t=>({publicKey:t,async signMessage(e){return e},async signTransaction(e){return e},async signAllTransactions(e){return e}}),"createNoopSigner");function Mse(){let t=new Error("Trying to use a NullSigner. Did you forget to set a Signer on your Umi instance? See the `signerIdentity` method for more information."),e=n(()=>{throw t},"errorHandler");return{get publicKey(){throw t},signMessage:e,signTransaction:e,signAllTransactions:e}}n(Mse,"createNullSigner");to.createNoopSigner=Ise;to.createNullSigner=Mse;to.isSigner=Tse;to.signAllTransactions=Pse;to.signTransaction=Ese;to.uniqueSigners=zse});var Cx=v(Bx=>{"use strict";Object.defineProperty(Bx,"__esModule",{value:!0});var Dse=mn();function Rse(){let t=n(()=>{throw new Dse.InterfaceImplementationMissingError("TransactionFactoryInterface","transactions")},"errorHandler");return{create:t,serialize:t,deserialize:t,serializeMessage:t,deserializeMessage:t}}n(Rse,"createNullTransactionFactory");Bx.createNullTransactionFactory=Rse});var Nx=v(Ox=>{"use strict";Object.defineProperty(Ox,"__esModule",{value:!0});var Bse=mn();function Cse(){let t=n(()=>{throw new Bse.InterfaceImplementationMissingError("UploaderInterface","uploader")},"errorHandler");return{upload:t,uploadJson:t,getUploadPrice:t}}n(Cse,"createNullUploader");Ox.createNullUploader=Cse});var Wx=v(qx=>{"use strict";Object.defineProperty(qx,"__esModule",{value:!0});var Ose=Ax(),Nse=kx(),qse=Px(),Wse=zx(),Vse=Mx(),Fse=Rx(),oC=mm(),Kse=Cx(),Lse=Nx(),Use=n(()=>({downloader:Ose.createNullDownloader(),eddsa:Nse.createNullEddsa(),http:qse.createNullHttp(),identity:oC.createNullSigner(),payer:oC.createNullSigner(),programs:Wse.createNullProgramRepository(),rpc:Vse.createNullRpc(),serializer:Fse.createNullSerializer(),transactions:Kse.createNullTransactionFactory(),uploader:Lse.createNullUploader()}),"createNullContext");qx.createNullContext=Use});var dC=v(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});var jse=kl(),lC=ug(),mg=n(t=>{if(typeof t=="string"||$se(t)){let e=new Date(t),r=Math.floor(e.getTime()/1e3);return lC.createBigInt(r)}return lC.createBigInt(t)},"dateTime"),Hse=n(()=>mg(new Date(Date.now())),"now"),$se=n(t=>Object.prototype.toString.call(t)==="[object Date]","isDateObject"),Gse=n((t,e="en-US",r={month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"numeric"})=>new Date(Number(t*1000n)).toLocaleDateString(e,r),"formatDateTime"),Zse=n(t=>jse.mapSerializer(t,e=>{let r=mg(e);return r>Number.MAX_SAFE_INTEGER?r:Number(r)},e=>mg(e)),"mapDateTimeSerializer");_d.dateTime=mg;_d.formatDateTime=Gse;_d.mapDateTimeSerializer=Zse;_d.now=Hse});var Fx=v(Vx=>{"use strict";Object.defineProperty(Vx,"__esModule",{value:!0});var Jse=n((t=20,e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789")=>{let r="",i=e.length;for(let a=0;a{"use strict";Object.defineProperty(Xn,"__esModule",{value:!0});var Yse=kl(),Qse=Fx(),Kx=n((t,e,r={})=>({buffer:typeof t=="string"?Yse.utf8.serialize(t):t,fileName:e,displayName:r.displayName??e,uniqueName:r.uniqueName??Qse.generateRandomString(),contentType:r.contentType??null,extension:r.extension??noe(e),tags:r.tags??[]}),"createGenericFile"),Xse=n(async(t,e={})=>Kx(new Uint8Array(await t.arrayBuffer()),t.name,e),"createGenericFileFromBrowserFile"),eoe=n((t,e="inline.json",r={})=>Kx(JSON.stringify(t),e,{contentType:"application/json",...r}),"createGenericFileFromJson"),toe=n(t=>new File([t.buffer],t.fileName),"createBrowserFileFromGenericFile"),roe=n(t=>JSON.parse(new TextDecoder().decode(t.buffer)),"parseJsonFromGenericFile"),ioe=n((...t)=>t.reduce((e,r)=>e+r.buffer.byteLength,0),"getBytesFromGenericFiles"),aoe=n(t=>t!=null&&typeof t=="object"&&"buffer"in t&&"fileName"in t&&"displayName"in t&&"uniqueName"in t&&"contentType"in t&&"extension"in t&&"tags"in t,"isGenericFile"),noe=n(t=>{let e=t.lastIndexOf(".");return e<0?null:t.slice(e+1)},"getExtension");Xn.createBrowserFileFromGenericFile=toe;Xn.createGenericFile=Kx;Xn.createGenericFileFromBrowserFile=Xse;Xn.createGenericFileFromJson=eoe;Xn.getBytesFromGenericFiles=ioe;Xn.isGenericFile=aoe;Xn.parseJsonFromGenericFile=roe});var cC=v(hg=>{"use strict";Object.defineProperty(hg,"__esModule",{value:!0});var soe=sg(),Lx=kl(),fm=pn(),fg=class t{static{n(this,"GpaBuilder")}constructor(e,r,i={}){this.context=e,this.programId=r,this.options=i}reset(){return new t(this.context,this.programId,{fields:this.options.fields,deserializeCallback:this.options.deserializeCallback})}registerFields(e){return new t(this.context,this.programId,{...this.options,fields:e})}registerFieldsFromStruct(e){let r=0,i=e.reduce((a,[s,o])=>(a[s]=[r,o],r=r===null||o.fixedSize===null?null:r+o.fixedSize,a),{});return this.registerFields(i)}deserializeUsing(e){return new t(this.context,this.programId,{...this.options,deserializeCallback:e})}slice(e,r){return new t(this.context,this.programId,{...this.options,dataSlice:{offset:e,length:r}})}sliceField(e,r){let[i,a]=this.getField(e,r);if(!a.fixedSize)throw new fm.SdkError(`Cannot slice field [${e}] because its size is variable.`);return this.slice(i,a.fixedSize)}withoutData(){return this.slice(0,0)}addFilter(...e){return new t(this.context,this.programId,{...this.options,filters:[...this.options.filters??[],...e]})}where(e,r){let i;return typeof r=="string"?i=Lx.base58.serialize(r):typeof r=="number"||typeof r=="bigint"||typeof r=="boolean"?i=Lx.base10.serialize(BigInt(r).toString()):i=new Uint8Array(r),this.addFilter({memcmp:{offset:e,bytes:i}})}whereField(e,r,i){let[a,s]=this.getField(e,i);return this.where(a,s.serialize(r))}whereSize(e){return this.addFilter({dataSize:e})}sortUsing(e){return new t(this.context,this.programId,{...this.options,sortCallback:e})}async get(e={}){let r=await this.context.rpc.getProgramAccounts(this.programId,{...e,dataSlice:e.dataSlice??this.options.dataSlice,filters:[...e.filters??[],...this.options.filters??[]]});return this.options.sortCallback&&r.sort(this.options.sortCallback),r}async getAndMap(e,r={}){return(await this.get(r)).map(e)}async getDeserialized(e={}){let r=await this.get(e);return this.options.deserializeCallback?r.map(this.options.deserializeCallback):r}async getPublicKeys(e={}){return this.getAndMap(r=>r.publicKey,e)}async getDataAsPublicKeys(e={}){return this.getAndMap(r=>{try{return soe.publicKey(r.data)}catch{let a=`Following a getProgramAccount call, you are trying to use an account's data (or a slice of it) as a public key. However, we encountered an account [${r.publicKey}] whose data [base64=${Lx.base64.deserialize(r.data)}] is not a valid public key.`;throw new fm.SdkError(a)}},e)}getField(e,r){if(!this.options.fields)throw new fm.SdkError("Fields are not defined in this GpaBuilder.");let i=this.options.fields[e];if(!i)throw new fm.SdkError(`Field [${e}] is not defined in this GpaBuilder.`);let[a,s]=i;if(r!==void 0)return[r,s];if(a===null)throw new fm.SdkError(`Field [${e}] does not have a fixed offset. This is likely because it is not in the fixed part of the account's data. In other words, it is located after a field of variable length which means we cannot find a fixed offset for the filter. You may go around this by providing an offset explicitly.`);return[a,s]}},ooe=n((t,e)=>new fg(t,e),"gpaBuilder");hg.GpaBuilder=fg;hg.gpaBuilder=ooe});var pC=v(yg=>{"use strict";Object.defineProperty(yg,"__esModule",{value:!0});var loe=n(()=>new gg({method:"get",data:void 0,headers:{},url:""}),"request"),gg=class t{static{n(this,"HttpRequestBuilder")}constructor(e){this.request=e}asJson(){return this.contentType("application/json")}asMultipart(){return this.contentType("multipart/form-data")}asForm(){return this.contentType("application/x-www-form-urlencoded")}accept(e){return this.withHeader("accept",e)}contentType(e){return this.withHeader("content-type",e)}userAgent(e){return this.withHeader("user-agent",e)}withToken(e,r="Bearer"){return this.withHeader("authorization",`${r} ${e}`)}withHeader(e,r){return this.withHeaders({[e]:r})}withHeaders(e){return new t({...this.request,headers:{...this.request.headers,...e}})}dontFollowRedirects(){return this.followRedirects(0)}followRedirects(e){return new t({...this.request,maxRedirects:e})}withoutTimeout(){return this.withTimeout(0)}withTimeout(e){return new t({...this.request,timeout:e})}withAbortSignal(e){return new t({...this.request,signal:e})}withEndpoint(e,r){return new t({...this.request,method:e,url:r})}withParams(e){let r=new URL(this.request.url),i=new URLSearchParams(e),a=new URLSearchParams(r.searchParams);return[...i.entries()].forEach(([s,o])=>{a.append(s,o)}),r.search=a.toString(),new t({...this.request,url:r.toString()})}withData(e){return new t({...this.request,data:e})}get(e){return this.withEndpoint("get",e)}post(e){return this.withEndpoint("post",e)}put(e){return this.withEndpoint("put",e)}patch(e){return this.withEndpoint("patch",e)}delete(e){return this.withEndpoint("delete",e)}get method(){return this.request.method}get url(){return this.request.url}get data(){return this.request.data}get headers(){return this.request.headers}get maxRedirects(){return this.request.maxRedirects}get timeout(){return this.request.timeout}get signal(){return this.request.signal}};yg.HttpRequestBuilder=gg;yg.request=loe});var vg=v(bg=>{"use strict";Object.defineProperty(bg,"__esModule",{value:!0});var doe=1232,uoe=n((t,e,r)=>{let i=t.message.header.numRequiredSignatures,s=t.message.accounts.slice(0,i).findIndex(l=>l===r);if(s<0)throw new Error("The provided signer is not required to sign this transaction.");let o=[...t.signatures];return o[s]=e,{...t,signatures:o}},"addTransactionSignature");bg.TRANSACTION_SIZE_LIMIT=doe;bg.addTransactionSignature=uoe});var Ux=v(hm=>{"use strict";Object.defineProperty(hm,"__esModule",{value:!0});var coe=vg(),poe=n(t=>mC(t,t.eddsa.generateKeypair()),"generateSigner"),mC=n((t,e)=>({publicKey:e.publicKey,secretKey:e.secretKey,async signMessage(r){return t.eddsa.sign(r,e)},async signTransaction(r){let i=r.serializedMessage,a=t.eddsa.sign(i,e);return coe.addTransactionSignature(r,a,e.publicKey)},async signAllTransactions(r){return Promise.all(r.map(i=>this.signTransaction(i)))}}),"createSignerFromKeypair"),moe=n(t=>t.secretKey!==void 0,"isKeypairSigner");hm.createSignerFromKeypair=mC;hm.generateSigner=poe;hm.isKeypairSigner=moe});var fC=v(jx=>{"use strict";Object.defineProperty(jx,"__esModule",{value:!0});var foe=n(t=>t instanceof Error&&"logs"in t,"isErrorWithLogs");jx.isErrorWithLogs=foe});var hC=v(ro=>{"use strict";Object.defineProperty(ro,"__esModule",{value:!0});var Sg=Ux(),Hx=n((t,e=!0)=>({install(r){r.identity=t,e&&(r.payer=t)}}),"signerIdentity"),$x=n(t=>({install(e){e.payer=t}}),"signerPayer"),hoe=n((t=!0)=>({install(e){let r=Sg.generateSigner(e);e.use(Hx(r,t))}}),"generatedSignerIdentity"),goe=n(()=>({install(t){let e=Sg.generateSigner(t);t.use($x(e))}}),"generatedSignerPayer"),yoe=n((t,e=!0)=>({install(r){let i=Sg.createSignerFromKeypair(r,t);r.use(Hx(i,e))}}),"keypairIdentity"),boe=n(t=>({install(e){let r=Sg.createSignerFromKeypair(e,t);e.use($x(r))}}),"keypairPayer");ro.generatedSignerIdentity=hoe;ro.generatedSignerPayer=goe;ro.keypairIdentity=yoe;ro.keypairPayer=boe;ro.signerIdentity=Hx;ro.signerPayer=$x});var Gx=v(xg=>{"use strict";Object.defineProperty(xg,"__esModule",{value:!0});var gC=mm(),voe=vg(),Soe=pn(),wg=class t{static{n(this,"TransactionBuilder")}constructor(e=[],r={}){this.items=e,this.options=r}empty(){return new t([],this.options)}setItems(e){return new t(this.parseItems(e),this.options)}prepend(e){return new t([...this.parseItems(e),...this.items],this.options)}append(e){return new t([...this.items,...this.parseItems(e)],this.options)}add(e){return this.append(e)}mapInstructions(e){return new t(this.items.map(e),this.options)}addRemainingAccounts(e,r){return r=r??this.items.length-1,this.mapInstructions((i,a)=>{if(a!==r)return i;let s=[...i.instruction.keys,...Array.isArray(e)?e:[e]];return{...i,instruction:{...i.instruction,keys:s}}})}splitByIndex(e){return[new t(this.items.slice(0,e),this.options),new t(this.items.slice(e),this.options)]}unsafeSplitByTransactionSize(e){return this.items.reduce((r,i)=>{let a=r.pop(),s=a.add(i);return s.fitsInOneTransaction(e)?r.push(s):(r.push(a),r.push(a.empty().add(i))),r},[this.empty()])}setFeePayer(e){return new t(this.items,{...this.options,feePayer:e})}getFeePayer(e){return this.options.feePayer??e.payer}setVersion(e){return new t(this.items,{...this.options,version:e})}useLegacyVersion(){return this.setVersion("legacy")}useV0(){return this.setVersion(0)}setAddressLookupTables(e){return new t(this.items,{...this.options,addressLookupTables:e})}getBlockhash(){return typeof this.options.blockhash=="object"?this.options.blockhash.blockhash:this.options.blockhash}setBlockhash(e){return new t(this.items,{...this.options,blockhash:e})}async setLatestBlockhash(e,r={}){return this.setBlockhash(await e.rpc.getLatestBlockhash(r))}getInstructions(){return this.items.map(e=>e.instruction)}getSigners(e){return gC.uniqueSigners([this.getFeePayer(e),...this.items.flatMap(r=>r.signers)])}getBytesCreatedOnChain(){return this.items.reduce((e,r)=>e+r.bytesCreatedOnChain,0)}async getRentCreatedOnChain(e){return e.rpc.getRent(this.getBytesCreatedOnChain(),{includesHeaderBytes:!0})}getTransactionSize(e){return e.transactions.serialize(this.setBlockhash("11111111111111111111111111111111").build(e)).length}minimumTransactionsRequired(e){return Math.ceil(this.getTransactionSize(e)/voe.TRANSACTION_SIZE_LIMIT)}fitsInOneTransaction(e){return this.minimumTransactionsRequired(e)===1}build(e){let r=this.getBlockhash();if(!r)throw new Soe.SdkError("Setting a blockhash is required to build a transaction. Please use the `setBlockhash` or `setLatestBlockhash` methods.");let i={version:this.options.version??0,payer:this.getFeePayer(e).publicKey,instructions:this.getInstructions(),blockhash:r};return i.version===0&&this.options.addressLookupTables&&(i.addressLookupTables=this.options.addressLookupTables),e.transactions.create(i)}async buildWithLatestBlockhash(e,r={}){let i=this;return this.options.blockhash||(i=await this.setLatestBlockhash(e,r)),i.build(e)}async buildAndSign(e){return gC.signTransaction(await this.buildWithLatestBlockhash(e),this.getSigners(e))}async send(e,r={}){let i=await this.buildAndSign(e);return e.rpc.sendTransaction(i,r)}async confirm(e,r,i={}){let a=this;this.options.blockhash||(a=await this.setLatestBlockhash(e));let s;if(i.strategy)s=i.strategy;else{let o=typeof a.options.blockhash=="object"?a.options.blockhash:await e.rpc.getLatestBlockhash();s=i.strategy??{type:"blockhash",...o}}return e.rpc.confirmTransaction(r,{...i,strategy:s})}async sendAndConfirm(e,r={}){let i=this;this.options.blockhash||(i=await this.setLatestBlockhash(e));let a=await i.send(e,r.send),s=await i.confirm(e,a,r.confirm);return{signature:a,result:s}}parseItems(e){return(Array.isArray(e)?e:[e]).flatMap(r=>"items"in r?r.items:[r])}},woe=n((t=[])=>new wg(t),"transactionBuilder");xg.TransactionBuilder=wg;xg.transactionBuilder=woe});var yC=v(_g=>{"use strict";Object.defineProperty(_g,"__esModule",{value:!0});var xoe=mm(),Aoe=Gx(),_oe=pg(),Ag=class t{static{n(this,"TransactionBuilderGroup")}constructor(e=[],r={}){this.builders=e,this.options=r}prepend(e){let r=Array.isArray(e)?e:[e];return new t([...r,...this.builders],this.options)}append(e){let r=Array.isArray(e)?e:[e];return new t([...r,...this.builders],this.options)}add(e){return this.append(e)}sequential(){return new t(this.builders,{...this.options,parallel:!1})}parallel(){return new t(this.builders,{...this.options,parallel:!0})}isParallel(){return this.options.parallel??!1}merge(){return this.builders.length===0?new Aoe.TransactionBuilder:this.builders.reduce((e,r)=>e.add(r),this.builders[0].empty())}build(e){return this.builders.map(r=>r.build(e))}async setLatestBlockhash(e){if(!this.builders.some(a=>!a.options.blockhash))return this;let i=await e.rpc.getLatestBlockhash();return this.map(a=>a.options.blockhash?a:a.setBlockhash(i))}async buildWithLatestBlockhash(e){return(await this.setLatestBlockhash(e)).build(e)}async buildAndSign(e){let r=await this.buildWithLatestBlockhash(e),i=this.builders.map(a=>a.getSigners(e));return xoe.signAllTransactions(_oe.zipMap(r,i,(a,s)=>({transaction:a,signers:s??[]})))}async send(e,r={}){return this.runAll(await this.buildAndSign(e),async i=>e.rpc.sendTransaction(i,r))}async sendAndConfirm(e,r={}){let i=this.builders.find(s=>typeof s.options.blockhash=="object")?.options.blockhash,a;if(r.confirm?.strategy)a=r.confirm.strategy;else{let s=i??await e.rpc.getLatestBlockhash();a=r.confirm?.strategy??{type:"blockhash",...s}}return this.runAll(await this.buildAndSign(e),async s=>{let o=await e.rpc.sendTransaction(s,r.send),l=await e.rpc.confirmTransaction(o,{...r.confirm,strategy:a});return{signature:o,result:l}})}map(e){return new t(this.builders.map(e))}filter(e){return new t(this.builders.filter(e))}async runAll(e,r){return this.isParallel()?Promise.all(e.map(r)):e.reduce(async(i,...a)=>[...await i,await r(...a)],Promise.resolve([]))}};function koe(t=[]){return new Ag(t)}n(koe,"transactionBuilderGroup");_g.TransactionBuilderGroup=Ag;_g.transactionBuilderGroup=koe});var bC=v(Zx=>{"use strict";Object.defineProperty(Zx,"__esModule",{value:!0});var Eoe=Wx(),Poe=n(()=>({...Eoe.createNullContext(),use(t){return t.install(this),this}}),"createUmi");Zx.createUmi=Poe});var vC=v(Yx=>{"use strict";Object.defineProperty(Yx,"__esModule",{value:!0});var Toe=pn(),Jx=class extends Toe.SdkError{static{n(this,"InvalidBaseStringError")}name="InvalidBaseStringError";constructor(e,r,i){let a=`Expected a string of base ${r}, got [${e}].`;super(a,i)}};Yx.InvalidBaseStringError=Jx});var SC=v(Xx=>{"use strict";Object.defineProperty(Xx,"__esModule",{value:!0});var zoe=dg(),Qx=class extends zoe.UmiError{static{n(this,"ProgramError")}name="ProgramError";constructor(e,r,i){super(e,"program",`${r.name} [${r.publicKey}]`,i),this.program=r,this.logs=i?.logs,this.logs&&(this.message+=` Program Logs: ${this.logs.map(a=>`| ${a}`).join(` `)} -`)}};Qx.ProgramError=Yx});var F=b(Z=>{"use strict";Object.defineProperty(Z,"__esModule",{value:!0});var SC=WS(),wC=ng(),si=JB(),Xx=YB(),Ge=aC(),zoe=dg(),Ioe=nC(),Moe=qx(),_g=lC(),Doe=xx(),Roe=_x(),kl=dC(),xC=uC(),Boe=Ex(),AC=cC(),eA=Lx(),Coe=mC(),Ooe=Tx(),Noe=Ix(),qoe=Dx(),_d=um(),kd=fC(),_C=bg(),kC=$x(),EC=gC(),Woe=Bx(),Voe=yC(),Foe=Ox(),Koe=dx(),Loe=gx(),Uoe=pn(),joe=bC(),Hoe=vC(),$oe=cn(),Goe=lg(),Zoe=sx(),Joe=mx(),tA=cg(),Yoe=Vx();Z.Endian=si.Endian;Z.base10=si.base10;Z.base16=si.base16;Z.base58=si.base58;Z.base64=si.base64;Z.baseX=si.baseX;Z.bitArray=si.bitArray;Z.fixBytes=si.fixBytes;Z.fixSerializer=si.fixSerializer;Z.mapSerializer=si.mapSerializer;Z.mergeBytes=si.mergeBytes;Z.padBytes=si.padBytes;Z.padNullCharacters=si.padNullCharacters;Z.removeNullCharacters=si.removeNullCharacters;Z.reverseSerializer=si.reverseSerializer;Z.utf8=si.utf8;Z.ACCOUNT_HEADER_SIZE=Xx.ACCOUNT_HEADER_SIZE;Z.assertAccountExists=Xx.assertAccountExists;Z.deserializeAccount=Xx.deserializeAccount;Z.absoluteAmount=Ge.absoluteAmount;Z.addAmounts=Ge.addAmounts;Z.amountToNumber=Ge.amountToNumber;Z.amountToString=Ge.amountToString;Z.assertAmount=Ge.assertAmount;Z.assertSameAmounts=Ge.assertSameAmounts;Z.assertSolAmount=Ge.assertSolAmount;Z.compareAmounts=Ge.compareAmounts;Z.createAmount=Ge.createAmount;Z.createAmountFromDecimals=Ge.createAmountFromDecimals;Z.displayAmount=Ge.displayAmount;Z.divideAmount=Ge.divideAmount;Z.isAmount=Ge.isAmount;Z.isEqualToAmount=Ge.isEqualToAmount;Z.isGreaterThanAmount=Ge.isGreaterThanAmount;Z.isGreaterThanOrEqualToAmount=Ge.isGreaterThanOrEqualToAmount;Z.isLessThanAmount=Ge.isLessThanAmount;Z.isLessThanOrEqualToAmount=Ge.isLessThanOrEqualToAmount;Z.isNegativeAmount=Ge.isNegativeAmount;Z.isPositiveAmount=Ge.isPositiveAmount;Z.isSolAmount=Ge.isSolAmount;Z.isZeroAmount=Ge.isZeroAmount;Z.lamports=Ge.lamports;Z.mapAmountSerializer=Ge.mapAmountSerializer;Z.multiplyAmount=Ge.multiplyAmount;Z.percentAmount=Ge.percentAmount;Z.sameAmounts=Ge.sameAmounts;Z.sol=Ge.sol;Z.subtractAmounts=Ge.subtractAmounts;Z.tokenAmount=Ge.tokenAmount;Z.usd=Ge.usd;Z.createBigInt=zoe.createBigInt;Z.resolveClusterFromEndpoint=Ioe.resolveClusterFromEndpoint;Z.createNullContext=Moe.createNullContext;Z.dateTime=_g.dateTime;Z.formatDateTime=_g.formatDateTime;Z.mapDateTimeSerializer=_g.mapDateTimeSerializer;Z.now=_g.now;Z.createNullDownloader=Doe.createNullDownloader;Z.createNullEddsa=Roe.createNullEddsa;Z.createBrowserFileFromGenericFile=kl.createBrowserFileFromGenericFile;Z.createGenericFile=kl.createGenericFile;Z.createGenericFileFromBrowserFile=kl.createGenericFileFromBrowserFile;Z.createGenericFileFromJson=kl.createGenericFileFromJson;Z.getBytesFromGenericFiles=kl.getBytesFromGenericFiles;Z.isGenericFile=kl.isGenericFile;Z.parseJsonFromGenericFile=kl.parseJsonFromGenericFile;Z.GpaBuilder=xC.GpaBuilder;Z.gpaBuilder=xC.gpaBuilder;Z.createNullHttp=Boe.createNullHttp;Z.HttpRequestBuilder=AC.HttpRequestBuilder;Z.request=AC.request;Z.createSignerFromKeypair=eA.createSignerFromKeypair;Z.generateSigner=eA.generateSigner;Z.isKeypairSigner=eA.isKeypairSigner;Z.isErrorWithLogs=Coe.isErrorWithLogs;Z.createNullProgramRepository=Ooe.createNullProgramRepository;Z.createNullRpc=Noe.createNullRpc;Z.createNullSerializer=qoe.createNullSerializer;Z.createNoopSigner=_d.createNoopSigner;Z.createNullSigner=_d.createNullSigner;Z.isSigner=_d.isSigner;Z.signAllTransactions=_d.signAllTransactions;Z.signTransaction=_d.signTransaction;Z.uniqueSigners=_d.uniqueSigners;Z.generatedSignerIdentity=kd.generatedSignerIdentity;Z.generatedSignerPayer=kd.generatedSignerPayer;Z.keypairIdentity=kd.keypairIdentity;Z.keypairPayer=kd.keypairPayer;Z.signerIdentity=kd.signerIdentity;Z.signerPayer=kd.signerPayer;Z.TRANSACTION_SIZE_LIMIT=_C.TRANSACTION_SIZE_LIMIT;Z.addTransactionSignature=_C.addTransactionSignature;Z.TransactionBuilder=kC.TransactionBuilder;Z.transactionBuilder=kC.transactionBuilder;Z.TransactionBuilderGroup=EC.TransactionBuilderGroup;Z.transactionBuilderGroup=EC.transactionBuilderGroup;Z.createNullTransactionFactory=Woe.createNullTransactionFactory;Z.createUmi=Voe.createUmi;Z.createNullUploader=Foe.createNullUploader;Z.AccountNotFoundError=Koe.AccountNotFoundError;Z.AmountMismatchError=Loe.AmountMismatchError;Z.InterfaceImplementationMissingError=Uoe.InterfaceImplementationMissingError;Z.InvalidBaseStringError=joe.InvalidBaseStringError;Z.ProgramError=Hoe.ProgramError;Z.SdkError=$oe.SdkError;Z.UmiError=Goe.UmiError;Z.UnexpectedAccountError=Zoe.UnexpectedAccountError;Z.UnexpectedAmountError=Joe.UnexpectedAmountError;Z.chunk=tA.chunk;Z.uniqueBy=tA.uniqueBy;Z.zipMap=tA.zipMap;Z.generateRandomString=Yoe.generateRandomString;Object.keys(SC).forEach(function(t){t!=="default"&&!Z.hasOwnProperty(t)&&Object.defineProperty(Z,t,{enumerable:!0,get:function(){return SC[t]}})});Object.keys(wC).forEach(function(t){t!=="default"&&!Z.hasOwnProperty(t)&&Object.defineProperty(Z,t,{enumerable:!0,get:function(){return wC[t]}})})});var W=b(kg=>{"use strict";Object.defineProperty(kg,"__esModule",{value:!0});var PC=_l();Object.keys(PC).forEach(function(t){t!=="default"&&!kg.hasOwnProperty(t)&&Object.defineProperty(kg,t,{enumerable:!0,get:function(){return PC[t]}})})});var zC=b(El=>{"use strict";Object.defineProperty(El,"__esModule",{value:!0});El.getAuthorityTypeSerializer=El.AuthorityType=void 0;var Qoe=W(),TC;(function(t){t[t.None=0]="None",t[t.Metadata=1]="Metadata",t[t.Holder=2]="Holder",t[t.MetadataDelegate=3]="MetadataDelegate",t[t.TokenDelegate=4]="TokenDelegate"})(TC=El.AuthorityType||(El.AuthorityType={}));function Xoe(){return(0,Qoe.scalarEnum)(TC,{description:"AuthorityType"})}El.getAuthorityTypeSerializer=Xoe});var IC=b(Eg=>{"use strict";Object.defineProperty(Eg,"__esModule",{value:!0});Eg.getAuthorizationDataSerializer=void 0;var ele=W(),tle=ie();function rle(){return(0,ele.struct)([["payload",(0,tle.getPayloadSerializer)()]],{description:"AuthorizationData"})}Eg.getAuthorizationDataSerializer=rle});var MC=b(ro=>{"use strict";Object.defineProperty(ro,"__esModule",{value:!0});ro.isBurnArgs=ro.burnArgs=ro.getBurnArgsSerializer=void 0;var Pg=W();function ile(){return(0,Pg.dataEnum)([["V1",(0,Pg.mapSerializer)((0,Pg.struct)([["amount",(0,Pg.u64)()]]),t=>({...t,amount:t.amount??1}))]],{description:"BurnArgs"})}ro.getBurnArgsSerializer=ile;function ale(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}ro.burnArgs=ale;function nle(t,e){return e.__kind===t}ro.isBurnArgs=nle});var DC=b(Tg=>{"use strict";Object.defineProperty(Tg,"__esModule",{value:!0});Tg.getCollectionSerializer=void 0;var rA=W();function sle(){return(0,rA.struct)([["verified",(0,rA.bool)()],["key",(0,rA.publicKey)()]],{description:"Collection"})}Tg.getCollectionSerializer=sle});var RC=b(io=>{"use strict";Object.defineProperty(io,"__esModule",{value:!0});io.isCollectionDetails=io.collectionDetails=io.getCollectionDetailsSerializer=void 0;var iA=W();function ole(){return(0,iA.dataEnum)([["V1",(0,iA.struct)([["size",(0,iA.u64)()]])]],{description:"CollectionDetails"})}io.getCollectionDetailsSerializer=ole;function lle(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}io.collectionDetails=lle;function dle(t,e){return e.__kind===t}io.isCollectionDetails=dle});var BC=b(ao=>{"use strict";Object.defineProperty(ao,"__esModule",{value:!0});ao.isCollectionDetailsToggle=ao.collectionDetailsToggle=ao.getCollectionDetailsToggleSerializer=void 0;var mm=W(),ule=ie();function cle(){return(0,mm.dataEnum)([["None",(0,mm.unit)()],["Clear",(0,mm.unit)()],["Set",(0,mm.struct)([["fields",(0,mm.tuple)([(0,ule.getCollectionDetailsSerializer)()])]])]],{description:"CollectionDetailsToggle"})}ao.getCollectionDetailsToggleSerializer=cle;function ple(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}ao.collectionDetailsToggle=ple;function mle(t,e){return e.__kind===t}ao.isCollectionDetailsToggle=mle});var CC=b(no=>{"use strict";Object.defineProperty(no,"__esModule",{value:!0});no.isCollectionToggle=no.collectionToggle=no.getCollectionToggleSerializer=void 0;var fm=W(),fle=ie();function hle(){return(0,fm.dataEnum)([["None",(0,fm.unit)()],["Clear",(0,fm.unit)()],["Set",(0,fm.struct)([["fields",(0,fm.tuple)([(0,fle.getCollectionSerializer)()])]])]],{description:"CollectionToggle"})}no.getCollectionToggleSerializer=hle;function gle(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}no.collectionToggle=gle;function yle(t,e){return e.__kind===t}no.isCollectionToggle=yle});var OC=b(so=>{"use strict";Object.defineProperty(so,"__esModule",{value:!0});so.isCreateArgs=so.createArgs=so.getCreateArgsSerializer=void 0;var Pl=F(),Pr=W(),Ed=ie();function ble(){return(0,Pr.dataEnum)([["V1",(0,Pr.mapSerializer)((0,Pr.struct)([["name",(0,Pr.string)()],["symbol",(0,Pr.string)()],["uri",(0,Pr.string)()],["sellerFeeBasisPoints",(0,Pl.mapAmountSerializer)((0,Pr.u16)(),"%",2)],["creators",(0,Pr.option)((0,Pr.array)((0,Ed.getCreatorSerializer)()))],["primarySaleHappened",(0,Pr.bool)()],["isMutable",(0,Pr.bool)()],["tokenStandard",(0,Ed.getTokenStandardSerializer)()],["collection",(0,Pr.option)((0,Ed.getCollectionSerializer)())],["uses",(0,Pr.option)((0,Ed.getUsesSerializer)())],["collectionDetails",(0,Pr.option)((0,Ed.getCollectionDetailsSerializer)())],["ruleSet",(0,Pr.option)((0,Pr.publicKey)())],["decimals",(0,Pr.option)((0,Pr.u8)())],["printSupply",(0,Pr.option)((0,Ed.getPrintSupplySerializer)())]]),t=>({...t,symbol:t.symbol??"",primarySaleHappened:t.primarySaleHappened??!1,isMutable:t.isMutable??!0,collection:t.collection??(0,Pl.none)(),uses:t.uses??(0,Pl.none)(),collectionDetails:t.collectionDetails??(0,Pl.none)(),ruleSet:t.ruleSet??(0,Pl.none)(),decimals:t.decimals??(0,Pl.none)(),printSupply:t.printSupply??(0,Pl.none)()}))]],{description:"CreateArgs"})}so.getCreateArgsSerializer=ble;function vle(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}so.createArgs=vle;function Sle(t,e){return e.__kind===t}so.isCreateArgs=Sle});var NC=b(Ig=>{"use strict";Object.defineProperty(Ig,"__esModule",{value:!0});Ig.getCreatorSerializer=void 0;var zg=W();function wle(){return(0,zg.struct)([["address",(0,zg.publicKey)()],["verified",(0,zg.bool)()],["share",(0,zg.u8)()]],{description:"Creator"})}Ig.getCreatorSerializer=wle});var qC=b(Mg=>{"use strict";Object.defineProperty(Mg,"__esModule",{value:!0});Mg.getDataSerializer=void 0;var Tl=W(),xle=ie();function Ale(){return(0,Tl.struct)([["name",(0,Tl.string)()],["symbol",(0,Tl.string)()],["uri",(0,Tl.string)()],["sellerFeeBasisPoints",(0,Tl.u16)()],["creators",(0,Tl.option)((0,Tl.array)((0,xle.getCreatorSerializer)()))]],{description:"Data"})}Mg.getDataSerializer=Ale});var WC=b(Dg=>{"use strict";Object.defineProperty(Dg,"__esModule",{value:!0});Dg.getDataV2Serializer=void 0;var Xn=W(),aA=ie();function _le(){return(0,Xn.struct)([["name",(0,Xn.string)()],["symbol",(0,Xn.string)()],["uri",(0,Xn.string)()],["sellerFeeBasisPoints",(0,Xn.u16)()],["creators",(0,Xn.option)((0,Xn.array)((0,aA.getCreatorSerializer)()))],["collection",(0,Xn.option)((0,aA.getCollectionSerializer)())],["uses",(0,Xn.option)((0,aA.getUsesSerializer)())]],{description:"DataV2"})}Dg.getDataV2Serializer=_le});var VC=b(oo=>{"use strict";Object.defineProperty(oo,"__esModule",{value:!0});oo.isDelegateArgs=oo.delegateArgs=oo.getDelegateArgsSerializer=void 0;var aa=F(),we=W(),na=ie();function kle(){return(0,we.dataEnum)([["CollectionV1",(0,we.mapSerializer)((0,we.struct)([["authorizationData",(0,we.option)((0,na.getAuthorizationDataSerializer)())]]),t=>({...t,authorizationData:t.authorizationData??(0,aa.none)()}))],["SaleV1",(0,we.mapSerializer)((0,we.struct)([["amount",(0,we.u64)()],["authorizationData",(0,we.option)((0,na.getAuthorizationDataSerializer)())]]),t=>({...t,amount:t.amount??1,authorizationData:t.authorizationData??(0,aa.none)()}))],["TransferV1",(0,we.mapSerializer)((0,we.struct)([["amount",(0,we.u64)()],["authorizationData",(0,we.option)((0,na.getAuthorizationDataSerializer)())]]),t=>({...t,amount:t.amount??1,authorizationData:t.authorizationData??(0,aa.none)()}))],["DataV1",(0,we.mapSerializer)((0,we.struct)([["authorizationData",(0,we.option)((0,na.getAuthorizationDataSerializer)())]]),t=>({...t,authorizationData:t.authorizationData??(0,aa.none)()}))],["UtilityV1",(0,we.mapSerializer)((0,we.struct)([["amount",(0,we.u64)()],["authorizationData",(0,we.option)((0,na.getAuthorizationDataSerializer)())]]),t=>({...t,amount:t.amount??1,authorizationData:t.authorizationData??(0,aa.none)()}))],["StakingV1",(0,we.mapSerializer)((0,we.struct)([["amount",(0,we.u64)()],["authorizationData",(0,we.option)((0,na.getAuthorizationDataSerializer)())]]),t=>({...t,amount:t.amount??1,authorizationData:t.authorizationData??(0,aa.none)()}))],["StandardV1",(0,we.mapSerializer)((0,we.struct)([["amount",(0,we.u64)()]]),t=>({...t,amount:t.amount??1}))],["LockedTransferV1",(0,we.mapSerializer)((0,we.struct)([["amount",(0,we.u64)()],["lockedAddress",(0,we.publicKey)()],["authorizationData",(0,we.option)((0,na.getAuthorizationDataSerializer)())]]),t=>({...t,amount:t.amount??1,authorizationData:t.authorizationData??(0,aa.none)()}))],["ProgrammableConfigV1",(0,we.mapSerializer)((0,we.struct)([["authorizationData",(0,we.option)((0,na.getAuthorizationDataSerializer)())]]),t=>({...t,authorizationData:t.authorizationData??(0,aa.none)()}))],["AuthorityItemV1",(0,we.mapSerializer)((0,we.struct)([["authorizationData",(0,we.option)((0,na.getAuthorizationDataSerializer)())]]),t=>({...t,authorizationData:t.authorizationData??(0,aa.none)()}))],["DataItemV1",(0,we.mapSerializer)((0,we.struct)([["authorizationData",(0,we.option)((0,na.getAuthorizationDataSerializer)())]]),t=>({...t,authorizationData:t.authorizationData??(0,aa.none)()}))],["CollectionItemV1",(0,we.mapSerializer)((0,we.struct)([["authorizationData",(0,we.option)((0,na.getAuthorizationDataSerializer)())]]),t=>({...t,authorizationData:t.authorizationData??(0,aa.none)()}))],["ProgrammableConfigItemV1",(0,we.mapSerializer)((0,we.struct)([["authorizationData",(0,we.option)((0,na.getAuthorizationDataSerializer)())]]),t=>({...t,authorizationData:t.authorizationData??(0,aa.none)()}))]],{description:"DelegateArgs"})}oo.getDelegateArgsSerializer=kle;function Ele(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}oo.delegateArgs=Ele;function Ple(t,e){return e.__kind===t}oo.isDelegateArgs=Ple});var FC=b(lo=>{"use strict";Object.defineProperty(lo,"__esModule",{value:!0});lo.isEscrowAuthority=lo.escrowAuthority=lo.getEscrowAuthoritySerializer=void 0;var hm=W();function Tle(){return(0,hm.dataEnum)([["TokenOwner",(0,hm.unit)()],["Creator",(0,hm.struct)([["fields",(0,hm.tuple)([(0,hm.publicKey)()])]])]],{description:"EscrowAuthority"})}lo.getEscrowAuthoritySerializer=Tle;function zle(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}lo.escrowAuthority=zle;function Ile(t,e){return e.__kind===t}lo.isEscrowAuthority=Ile});var LC=b(zl=>{"use strict";Object.defineProperty(zl,"__esModule",{value:!0});zl.getKeySerializer=zl.Key=void 0;var Mle=W(),KC;(function(t){t[t.Uninitialized=0]="Uninitialized",t[t.EditionV1=1]="EditionV1",t[t.MasterEditionV1=2]="MasterEditionV1",t[t.ReservationListV1=3]="ReservationListV1",t[t.MetadataV1=4]="MetadataV1",t[t.ReservationListV2=5]="ReservationListV2",t[t.MasterEditionV2=6]="MasterEditionV2",t[t.EditionMarker=7]="EditionMarker",t[t.UseAuthorityRecord=8]="UseAuthorityRecord",t[t.CollectionAuthorityRecord=9]="CollectionAuthorityRecord",t[t.TokenOwnedEscrow=10]="TokenOwnedEscrow",t[t.TokenRecord=11]="TokenRecord",t[t.MetadataDelegate=12]="MetadataDelegate",t[t.EditionMarkerV2=13]="EditionMarkerV2"})(KC=zl.Key||(zl.Key={}));function Dle(){return(0,Mle.scalarEnum)(KC,{description:"Key"})}zl.getKeySerializer=Dle});var UC=b(Bg=>{"use strict";Object.defineProperty(Bg,"__esModule",{value:!0});Bg.getLeafInfoSerializer=void 0;var Rg=W();function Rle(){return(0,Rg.struct)([["leaf",(0,Rg.bytes)({size:32})],["proof",(0,Rg.array)((0,Rg.bytes)({size:32}))]],{description:"LeafInfo"})}Bg.getLeafInfoSerializer=Rle});var jC=b(uo=>{"use strict";Object.defineProperty(uo,"__esModule",{value:!0});uo.isLockArgs=uo.lockArgs=uo.getLockArgsSerializer=void 0;var Ble=F(),Cg=W(),Cle=ie();function Ole(){return(0,Cg.dataEnum)([["V1",(0,Cg.mapSerializer)((0,Cg.struct)([["authorizationData",(0,Cg.option)((0,Cle.getAuthorizationDataSerializer)())]]),t=>({...t,authorizationData:t.authorizationData??(0,Ble.none)()}))]],{description:"LockArgs"})}uo.getLockArgsSerializer=Ole;function Nle(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}uo.lockArgs=Nle;function qle(t,e){return e.__kind===t}uo.isLockArgs=qle});var nA=b(Il=>{"use strict";Object.defineProperty(Il,"__esModule",{value:!0});Il.getMetadataDelegateRoleSerializer=Il.MetadataDelegateRole=void 0;var Wle=W(),HC;(function(t){t[t.AuthorityItem=0]="AuthorityItem",t[t.Collection=1]="Collection",t[t.Use=2]="Use",t[t.Data=3]="Data",t[t.ProgrammableConfig=4]="ProgrammableConfig",t[t.DataItem=5]="DataItem",t[t.CollectionItem=6]="CollectionItem",t[t.ProgrammableConfigItem=7]="ProgrammableConfigItem"})(HC=Il.MetadataDelegateRole||(Il.MetadataDelegateRole={}));function Vle(){return(0,Wle.scalarEnum)(HC,{description:"MetadataDelegateRole"})}Il.getMetadataDelegateRoleSerializer=Vle});var GC=b(Ml=>{"use strict";Object.defineProperty(Ml,"__esModule",{value:!0});Ml.getMigrationTypeSerializer=Ml.MigrationType=void 0;var Fle=W(),$C;(function(t){t[t.CollectionV1=0]="CollectionV1",t[t.ProgrammableV1=1]="ProgrammableV1"})($C=Ml.MigrationType||(Ml.MigrationType={}));function Kle(){return(0,Fle.scalarEnum)($C,{description:"MigrationType"})}Ml.getMigrationTypeSerializer=Kle});var ZC=b(co=>{"use strict";Object.defineProperty(co,"__esModule",{value:!0});co.isMintArgs=co.mintArgs=co.getMintArgsSerializer=void 0;var Lle=F(),gm=W(),Ule=ie();function jle(){return(0,gm.dataEnum)([["V1",(0,gm.mapSerializer)((0,gm.struct)([["amount",(0,gm.u64)()],["authorizationData",(0,gm.option)((0,Ule.getAuthorizationDataSerializer)())]]),t=>({...t,amount:t.amount??1,authorizationData:t.authorizationData??(0,Lle.none)()}))]],{description:"MintArgs"})}co.getMintArgsSerializer=jle;function Hle(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}co.mintArgs=Hle;function $le(t,e){return e.__kind===t}co.isMintArgs=$le});var YC=b(Og=>{"use strict";Object.defineProperty(Og,"__esModule",{value:!0});Og.getMintNewEditionFromMasterEditionViaTokenArgsSerializer=void 0;var JC=W();function Gle(){return(0,JC.struct)([["edition",(0,JC.u64)()]],{description:"MintNewEditionFromMasterEditionViaTokenArgs"})}Og.getMintNewEditionFromMasterEditionViaTokenArgsSerializer=Gle});var QC=b(Ng=>{"use strict";Object.defineProperty(Ng,"__esModule",{value:!0});Ng.getPayloadSerializer=void 0;var sA=W(),Zle=ie();function Jle(){return(0,sA.struct)([["map",(0,sA.map)((0,sA.string)(),(0,Zle.getPayloadTypeSerializer)())]],{description:"Payload"})}Ng.getPayloadSerializer=Jle});var eO=b(Dl=>{"use strict";Object.defineProperty(Dl,"__esModule",{value:!0});Dl.getPayloadKeySerializer=Dl.PayloadKey=void 0;var Yle=W(),XC;(function(t){t[t.Amount=0]="Amount",t[t.Authority=1]="Authority",t[t.AuthoritySeeds=2]="AuthoritySeeds",t[t.Delegate=3]="Delegate",t[t.DelegateSeeds=4]="DelegateSeeds",t[t.Destination=5]="Destination",t[t.DestinationSeeds=6]="DestinationSeeds",t[t.Holder=7]="Holder",t[t.Source=8]="Source",t[t.SourceSeeds=9]="SourceSeeds"})(XC=Dl.PayloadKey||(Dl.PayloadKey={}));function Qle(){return(0,Yle.scalarEnum)(XC,{description:"PayloadKey"})}Dl.getPayloadKeySerializer=Qle});var rO=b(po=>{"use strict";Object.defineProperty(po,"__esModule",{value:!0});po.isPayloadType=po.payloadType=po.getPayloadTypeSerializer=void 0;var Na=W(),tO=ie();function Xle(){return(0,Na.dataEnum)([["Pubkey",(0,Na.struct)([["fields",(0,Na.tuple)([(0,Na.publicKey)()])]])],["Seeds",(0,Na.struct)([["fields",(0,Na.tuple)([(0,tO.getSeedsVecSerializer)()])]])],["MerkleProof",(0,Na.struct)([["fields",(0,Na.tuple)([(0,tO.getLeafInfoSerializer)()])]])],["Number",(0,Na.struct)([["fields",(0,Na.tuple)([(0,Na.u64)()])]])]],{description:"PayloadType"})}po.getPayloadTypeSerializer=Xle;function e1e(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}po.payloadType=e1e;function t1e(t,e){return e.__kind===t}po.isPayloadType=t1e});var iO=b(mo=>{"use strict";Object.defineProperty(mo,"__esModule",{value:!0});mo.isPrintArgs=mo.printArgs=mo.getPrintArgsSerializer=void 0;var oA=W();function r1e(){return(0,oA.dataEnum)([["V1",(0,oA.struct)([["edition",(0,oA.u64)()]])]],{description:"PrintArgs"})}mo.getPrintArgsSerializer=r1e;function i1e(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}mo.printArgs=i1e;function a1e(t,e){return e.__kind===t}mo.isPrintArgs=a1e});var aO=b(fo=>{"use strict";Object.defineProperty(fo,"__esModule",{value:!0});fo.isPrintSupply=fo.printSupply=fo.getPrintSupplySerializer=void 0;var Pd=W();function n1e(){return(0,Pd.dataEnum)([["Zero",(0,Pd.unit)()],["Limited",(0,Pd.struct)([["fields",(0,Pd.tuple)([(0,Pd.u64)()])]])],["Unlimited",(0,Pd.unit)()]],{description:"PrintSupply"})}fo.getPrintSupplySerializer=n1e;function s1e(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}fo.printSupply=s1e;function o1e(t,e){return e.__kind===t}fo.isPrintSupply=o1e});var nO=b(ho=>{"use strict";Object.defineProperty(ho,"__esModule",{value:!0});ho.isProgrammableConfig=ho.programmableConfig=ho.getProgrammableConfigSerializer=void 0;var qg=W();function l1e(){return(0,qg.dataEnum)([["V1",(0,qg.struct)([["ruleSet",(0,qg.option)((0,qg.publicKey)())]])]],{description:"ProgrammableConfig"})}ho.getProgrammableConfigSerializer=l1e;function d1e(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}ho.programmableConfig=d1e;function u1e(t,e){return e.__kind===t}ho.isProgrammableConfig=u1e});var sO=b(Vg=>{"use strict";Object.defineProperty(Vg,"__esModule",{value:!0});Vg.getReservationSerializer=void 0;var Wg=W();function c1e(){return(0,Wg.struct)([["address",(0,Wg.publicKey)()],["spotsRemaining",(0,Wg.u64)()],["totalSpots",(0,Wg.u64)()]],{description:"Reservation"})}Vg.getReservationSerializer=c1e});var oO=b(Kg=>{"use strict";Object.defineProperty(Kg,"__esModule",{value:!0});Kg.getReservationV1Serializer=void 0;var Fg=W();function p1e(){return(0,Fg.struct)([["address",(0,Fg.publicKey)()],["spotsRemaining",(0,Fg.u8)()],["totalSpots",(0,Fg.u8)()]],{description:"ReservationV1"})}Kg.getReservationV1Serializer=p1e});var dO=b(Rl=>{"use strict";Object.defineProperty(Rl,"__esModule",{value:!0});Rl.getRevokeArgsSerializer=Rl.RevokeArgs=void 0;var m1e=W(),lO;(function(t){t[t.CollectionV1=0]="CollectionV1",t[t.SaleV1=1]="SaleV1",t[t.TransferV1=2]="TransferV1",t[t.DataV1=3]="DataV1",t[t.UtilityV1=4]="UtilityV1",t[t.StakingV1=5]="StakingV1",t[t.StandardV1=6]="StandardV1",t[t.LockedTransferV1=7]="LockedTransferV1",t[t.ProgrammableConfigV1=8]="ProgrammableConfigV1",t[t.MigrationV1=9]="MigrationV1",t[t.AuthorityItemV1=10]="AuthorityItemV1",t[t.DataItemV1=11]="DataItemV1",t[t.CollectionItemV1=12]="CollectionItemV1",t[t.ProgrammableConfigItemV1=13]="ProgrammableConfigItemV1"})(lO=Rl.RevokeArgs||(Rl.RevokeArgs={}));function f1e(){return(0,m1e.scalarEnum)(lO,{description:"RevokeArgs"})}Rl.getRevokeArgsSerializer=f1e});var uO=b(go=>{"use strict";Object.defineProperty(go,"__esModule",{value:!0});go.isRuleSetToggle=go.ruleSetToggle=go.getRuleSetToggleSerializer=void 0;var Td=W();function h1e(){return(0,Td.dataEnum)([["None",(0,Td.unit)()],["Clear",(0,Td.unit)()],["Set",(0,Td.struct)([["fields",(0,Td.tuple)([(0,Td.publicKey)()])]])]],{description:"RuleSetToggle"})}go.getRuleSetToggleSerializer=h1e;function g1e(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}go.ruleSetToggle=g1e;function y1e(t,e){return e.__kind===t}go.isRuleSetToggle=y1e});var cO=b(Ug=>{"use strict";Object.defineProperty(Ug,"__esModule",{value:!0});Ug.getSeedsVecSerializer=void 0;var Lg=W();function b1e(){return(0,Lg.struct)([["seeds",(0,Lg.array)((0,Lg.bytes)({size:(0,Lg.u32)()}))]],{description:"SeedsVec"})}Ug.getSeedsVecSerializer=b1e});var mO=b(jg=>{"use strict";Object.defineProperty(jg,"__esModule",{value:!0});jg.getSetCollectionSizeArgsSerializer=void 0;var pO=W();function v1e(){return(0,pO.struct)([["size",(0,pO.u64)()]],{description:"SetCollectionSizeArgs"})}jg.getSetCollectionSizeArgsSerializer=v1e});var hO=b(Bl=>{"use strict";Object.defineProperty(Bl,"__esModule",{value:!0});Bl.getTokenDelegateRoleSerializer=Bl.TokenDelegateRole=void 0;var S1e=W(),fO;(function(t){t[t.Sale=0]="Sale",t[t.Transfer=1]="Transfer",t[t.Utility=2]="Utility",t[t.Staking=3]="Staking",t[t.Standard=4]="Standard",t[t.LockedTransfer=5]="LockedTransfer",t[t.Migration=6]="Migration"})(fO=Bl.TokenDelegateRole||(Bl.TokenDelegateRole={}));function w1e(){return(0,S1e.scalarEnum)(fO,{description:"TokenDelegateRole"})}Bl.getTokenDelegateRoleSerializer=w1e});var yO=b(Cl=>{"use strict";Object.defineProperty(Cl,"__esModule",{value:!0});Cl.getTokenStandardSerializer=Cl.TokenStandard=void 0;var x1e=W(),gO;(function(t){t[t.NonFungible=0]="NonFungible",t[t.FungibleAsset=1]="FungibleAsset",t[t.Fungible=2]="Fungible",t[t.NonFungibleEdition=3]="NonFungibleEdition",t[t.ProgrammableNonFungible=4]="ProgrammableNonFungible",t[t.ProgrammableNonFungibleEdition=5]="ProgrammableNonFungibleEdition"})(gO=Cl.TokenStandard||(Cl.TokenStandard={}));function A1e(){return(0,x1e.scalarEnum)(gO,{description:"TokenStandard"})}Cl.getTokenStandardSerializer=A1e});var vO=b(Ol=>{"use strict";Object.defineProperty(Ol,"__esModule",{value:!0});Ol.getTokenStateSerializer=Ol.TokenState=void 0;var _1e=W(),bO;(function(t){t[t.Unlocked=0]="Unlocked",t[t.Locked=1]="Locked",t[t.Listed=2]="Listed"})(bO=Ol.TokenState||(Ol.TokenState={}));function k1e(){return(0,_1e.scalarEnum)(bO,{description:"TokenState"})}Ol.getTokenStateSerializer=k1e});var SO=b(yo=>{"use strict";Object.defineProperty(yo,"__esModule",{value:!0});yo.isTransferArgs=yo.transferArgs=yo.getTransferArgsSerializer=void 0;var E1e=F(),ym=W(),P1e=ie();function T1e(){return(0,ym.dataEnum)([["V1",(0,ym.mapSerializer)((0,ym.struct)([["amount",(0,ym.u64)()],["authorizationData",(0,ym.option)((0,P1e.getAuthorizationDataSerializer)())]]),t=>({...t,amount:t.amount??1,authorizationData:t.authorizationData??(0,E1e.none)()}))]],{description:"TransferArgs"})}yo.getTransferArgsSerializer=T1e;function z1e(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}yo.transferArgs=z1e;function I1e(t,e){return e.__kind===t}yo.isTransferArgs=I1e});var wO=b(bo=>{"use strict";Object.defineProperty(bo,"__esModule",{value:!0});bo.isUnlockArgs=bo.unlockArgs=bo.getUnlockArgsSerializer=void 0;var M1e=F(),Hg=W(),D1e=ie();function R1e(){return(0,Hg.dataEnum)([["V1",(0,Hg.mapSerializer)((0,Hg.struct)([["authorizationData",(0,Hg.option)((0,D1e.getAuthorizationDataSerializer)())]]),t=>({...t,authorizationData:t.authorizationData??(0,M1e.none)()}))]],{description:"UnlockArgs"})}bo.getUnlockArgsSerializer=R1e;function B1e(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}bo.unlockArgs=B1e;function C1e(t,e){return e.__kind===t}bo.isUnlockArgs=C1e});var xO=b(vo=>{"use strict";Object.defineProperty(vo,"__esModule",{value:!0});vo.isUpdateArgs=vo.updateArgs=vo.getUpdateArgsSerializer=void 0;var xt=F(),fe=W(),Be=ie();function O1e(){return(0,fe.dataEnum)([["V1",(0,fe.mapSerializer)((0,fe.struct)([["newUpdateAuthority",(0,fe.option)((0,fe.publicKey)())],["data",(0,fe.option)((0,Be.getDataSerializer)())],["primarySaleHappened",(0,fe.option)((0,fe.bool)())],["isMutable",(0,fe.option)((0,fe.bool)())],["collection",(0,Be.getCollectionToggleSerializer)()],["collectionDetails",(0,Be.getCollectionDetailsToggleSerializer)()],["uses",(0,Be.getUsesToggleSerializer)()],["ruleSet",(0,Be.getRuleSetToggleSerializer)()],["authorizationData",(0,fe.option)((0,Be.getAuthorizationDataSerializer)())]]),t=>({...t,newUpdateAuthority:t.newUpdateAuthority??(0,xt.none)(),data:t.data??(0,xt.none)(),primarySaleHappened:t.primarySaleHappened??(0,xt.none)(),isMutable:t.isMutable??(0,xt.none)(),collection:t.collection??(0,Be.collectionToggle)("None"),collectionDetails:t.collectionDetails??(0,Be.collectionDetailsToggle)("None"),uses:t.uses??(0,Be.usesToggle)("None"),ruleSet:t.ruleSet??(0,Be.ruleSetToggle)("None"),authorizationData:t.authorizationData??(0,xt.none)()}))],["AsUpdateAuthorityV2",(0,fe.mapSerializer)((0,fe.struct)([["newUpdateAuthority",(0,fe.option)((0,fe.publicKey)())],["data",(0,fe.option)((0,Be.getDataSerializer)())],["primarySaleHappened",(0,fe.option)((0,fe.bool)())],["isMutable",(0,fe.option)((0,fe.bool)())],["collection",(0,Be.getCollectionToggleSerializer)()],["collectionDetails",(0,Be.getCollectionDetailsToggleSerializer)()],["uses",(0,Be.getUsesToggleSerializer)()],["ruleSet",(0,Be.getRuleSetToggleSerializer)()],["tokenStandard",(0,fe.option)((0,Be.getTokenStandardSerializer)())],["authorizationData",(0,fe.option)((0,Be.getAuthorizationDataSerializer)())]]),t=>({...t,newUpdateAuthority:t.newUpdateAuthority??(0,xt.none)(),data:t.data??(0,xt.none)(),primarySaleHappened:t.primarySaleHappened??(0,xt.none)(),isMutable:t.isMutable??(0,xt.none)(),collection:t.collection??(0,Be.collectionToggle)("None"),collectionDetails:t.collectionDetails??(0,Be.collectionDetailsToggle)("None"),uses:t.uses??(0,Be.usesToggle)("None"),ruleSet:t.ruleSet??(0,Be.ruleSetToggle)("None"),tokenStandard:t.tokenStandard??(0,xt.none)(),authorizationData:t.authorizationData??(0,xt.none)()}))],["AsAuthorityItemDelegateV2",(0,fe.mapSerializer)((0,fe.struct)([["newUpdateAuthority",(0,fe.option)((0,fe.publicKey)())],["primarySaleHappened",(0,fe.option)((0,fe.bool)())],["isMutable",(0,fe.option)((0,fe.bool)())],["tokenStandard",(0,fe.option)((0,Be.getTokenStandardSerializer)())],["authorizationData",(0,fe.option)((0,Be.getAuthorizationDataSerializer)())]]),t=>({...t,newUpdateAuthority:t.newUpdateAuthority??(0,xt.none)(),primarySaleHappened:t.primarySaleHappened??(0,xt.none)(),isMutable:t.isMutable??(0,xt.none)(),tokenStandard:t.tokenStandard??(0,xt.none)(),authorizationData:t.authorizationData??(0,xt.none)()}))],["AsCollectionDelegateV2",(0,fe.mapSerializer)((0,fe.struct)([["collection",(0,Be.getCollectionToggleSerializer)()],["authorizationData",(0,fe.option)((0,Be.getAuthorizationDataSerializer)())]]),t=>({...t,collection:t.collection??(0,Be.collectionToggle)("None"),authorizationData:t.authorizationData??(0,xt.none)()}))],["AsDataDelegateV2",(0,fe.mapSerializer)((0,fe.struct)([["data",(0,fe.option)((0,Be.getDataSerializer)())],["authorizationData",(0,fe.option)((0,Be.getAuthorizationDataSerializer)())]]),t=>({...t,data:t.data??(0,xt.none)(),authorizationData:t.authorizationData??(0,xt.none)()}))],["AsProgrammableConfigDelegateV2",(0,fe.mapSerializer)((0,fe.struct)([["ruleSet",(0,Be.getRuleSetToggleSerializer)()],["authorizationData",(0,fe.option)((0,Be.getAuthorizationDataSerializer)())]]),t=>({...t,ruleSet:t.ruleSet??(0,Be.ruleSetToggle)("None"),authorizationData:t.authorizationData??(0,xt.none)()}))],["AsDataItemDelegateV2",(0,fe.mapSerializer)((0,fe.struct)([["data",(0,fe.option)((0,Be.getDataSerializer)())],["authorizationData",(0,fe.option)((0,Be.getAuthorizationDataSerializer)())]]),t=>({...t,data:t.data??(0,xt.none)(),authorizationData:t.authorizationData??(0,xt.none)()}))],["AsCollectionItemDelegateV2",(0,fe.mapSerializer)((0,fe.struct)([["collection",(0,Be.getCollectionToggleSerializer)()],["authorizationData",(0,fe.option)((0,Be.getAuthorizationDataSerializer)())]]),t=>({...t,collection:t.collection??(0,Be.collectionToggle)("None"),authorizationData:t.authorizationData??(0,xt.none)()}))],["AsProgrammableConfigItemDelegateV2",(0,fe.mapSerializer)((0,fe.struct)([["ruleSet",(0,Be.getRuleSetToggleSerializer)()],["authorizationData",(0,fe.option)((0,Be.getAuthorizationDataSerializer)())]]),t=>({...t,ruleSet:t.ruleSet??(0,Be.ruleSetToggle)("None"),authorizationData:t.authorizationData??(0,xt.none)()}))]],{description:"UpdateArgs"})}vo.getUpdateArgsSerializer=O1e;function N1e(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}vo.updateArgs=N1e;function q1e(t,e){return e.__kind===t}vo.isUpdateArgs=q1e});var AO=b(So=>{"use strict";Object.defineProperty(So,"__esModule",{value:!0});So.isUseArgs=So.useArgs=So.getUseArgsSerializer=void 0;var W1e=F(),$g=W(),V1e=ie();function F1e(){return(0,$g.dataEnum)([["V1",(0,$g.mapSerializer)((0,$g.struct)([["authorizationData",(0,$g.option)((0,V1e.getAuthorizationDataSerializer)())]]),t=>({...t,authorizationData:t.authorizationData??(0,W1e.none)()}))]],{description:"UseArgs"})}So.getUseArgsSerializer=F1e;function K1e(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}So.useArgs=K1e;function L1e(t,e){return e.__kind===t}So.isUseArgs=L1e});var kO=b(Nl=>{"use strict";Object.defineProperty(Nl,"__esModule",{value:!0});Nl.getUseMethodSerializer=Nl.UseMethod=void 0;var U1e=W(),_O;(function(t){t[t.Burn=0]="Burn",t[t.Multiple=1]="Multiple",t[t.Single=2]="Single"})(_O=Nl.UseMethod||(Nl.UseMethod={}));function j1e(){return(0,U1e.scalarEnum)(_O,{description:"UseMethod"})}Nl.getUseMethodSerializer=j1e});var EO=b(Gg=>{"use strict";Object.defineProperty(Gg,"__esModule",{value:!0});Gg.getUsesSerializer=void 0;var lA=W(),H1e=ie();function $1e(){return(0,lA.struct)([["useMethod",(0,H1e.getUseMethodSerializer)()],["remaining",(0,lA.u64)()],["total",(0,lA.u64)()]],{description:"Uses"})}Gg.getUsesSerializer=$1e});var PO=b(wo=>{"use strict";Object.defineProperty(wo,"__esModule",{value:!0});wo.isUsesToggle=wo.usesToggle=wo.getUsesToggleSerializer=void 0;var bm=W(),G1e=ie();function Z1e(){return(0,bm.dataEnum)([["None",(0,bm.unit)()],["Clear",(0,bm.unit)()],["Set",(0,bm.struct)([["fields",(0,bm.tuple)([(0,G1e.getUsesSerializer)()])]])]],{description:"UsesToggle"})}wo.getUsesToggleSerializer=Z1e;function J1e(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}wo.usesToggle=J1e;function Y1e(t,e){return e.__kind===t}wo.isUsesToggle=Y1e});var zO=b(ql=>{"use strict";Object.defineProperty(ql,"__esModule",{value:!0});ql.getVerificationArgsSerializer=ql.VerificationArgs=void 0;var Q1e=W(),TO;(function(t){t[t.CreatorV1=0]="CreatorV1",t[t.CollectionV1=1]="CollectionV1"})(TO=ql.VerificationArgs||(ql.VerificationArgs={}));function X1e(){return(0,Q1e.scalarEnum)(TO,{description:"VerificationArgs"})}ql.getVerificationArgsSerializer=X1e});var ie=b(ye=>{"use strict";var ede=ye&&ye.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),ke=ye&&ye.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&ede(e,t,r)};Object.defineProperty(ye,"__esModule",{value:!0});ke(zC(),ye);ke(IC(),ye);ke(MC(),ye);ke(DC(),ye);ke(RC(),ye);ke(BC(),ye);ke(CC(),ye);ke(OC(),ye);ke(NC(),ye);ke(qC(),ye);ke(WC(),ye);ke(VC(),ye);ke(FC(),ye);ke(LC(),ye);ke(UC(),ye);ke(jC(),ye);ke(nA(),ye);ke(GC(),ye);ke(ZC(),ye);ke(YC(),ye);ke(QC(),ye);ke(eO(),ye);ke(rO(),ye);ke(iO(),ye);ke(aO(),ye);ke(nO(),ye);ke(sO(),ye);ke(oO(),ye);ke(dO(),ye);ke(uO(),ye);ke(cO(),ye);ke(mO(),ye);ke(hO(),ye);ke(yO(),ye);ke(vO(),ye);ke(SO(),ye);ke(wO(),ye);ke(xO(),ye);ke(AO(),ye);ke(kO(),ye);ke(EO(),ye);ke(PO(),ye);ke(zO(),ye)});var RO=b(Ot=>{"use strict";Object.defineProperty(Ot,"__esModule",{value:!0});Ot.safeFetchCollectionAuthorityRecordFromSeeds=Ot.fetchCollectionAuthorityRecordFromSeeds=Ot.findCollectionAuthorityRecordPda=Ot.getCollectionAuthorityRecordGpaBuilder=Ot.safeFetchAllCollectionAuthorityRecord=Ot.fetchAllCollectionAuthorityRecord=Ot.safeFetchCollectionAuthorityRecord=Ot.fetchCollectionAuthorityRecord=Ot.deserializeCollectionAuthorityRecord=Ot.getCollectionAuthorityRecordAccountDataSerializer=void 0;var xo=F(),Ki=W(),Zg=ie();function IO(){return(0,Ki.mapSerializer)((0,Ki.struct)([["key",(0,Zg.getKeySerializer)()],["bump",(0,Ki.u8)()],["updateAuthority",(0,Ki.option)((0,Ki.publicKey)())]],{description:"CollectionAuthorityRecordAccountData"}),t=>({...t,key:Zg.Key.CollectionAuthorityRecord}))}Ot.getCollectionAuthorityRecordAccountDataSerializer=IO;function zd(t){return(0,xo.deserializeAccount)(t,IO())}Ot.deserializeCollectionAuthorityRecord=zd;async function MO(t,e,r){let i=await t.rpc.getAccount((0,xo.publicKey)(e,!1),r);return(0,xo.assertAccountExists)(i,"CollectionAuthorityRecord"),zd(i)}Ot.fetchCollectionAuthorityRecord=MO;async function DO(t,e,r){let i=await t.rpc.getAccount((0,xo.publicKey)(e,!1),r);return i.exists?zd(i):null}Ot.safeFetchCollectionAuthorityRecord=DO;async function tde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,xo.publicKey)(a,!1)),r)).map(a=>((0,xo.assertAccountExists)(a,"CollectionAuthorityRecord"),zd(a)))}Ot.fetchAllCollectionAuthorityRecord=tde;async function rde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,xo.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>zd(a))}Ot.safeFetchAllCollectionAuthorityRecord=rde;function ide(t){let e=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return(0,xo.gpaBuilder)(t,e).registerFields({key:[0,(0,Zg.getKeySerializer)()],bump:[1,(0,Ki.u8)()],updateAuthority:[2,(0,Ki.option)((0,Ki.publicKey)())]}).deserializeUsing(r=>zd(r)).whereField("key",Zg.Key.CollectionAuthorityRecord)}Ot.getCollectionAuthorityRecordGpaBuilder=ide;function dA(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return t.eddsa.findPda(r,[(0,Ki.string)({size:"variable"}).serialize("metadata"),(0,Ki.publicKey)().serialize(r),(0,Ki.publicKey)().serialize(e.mint),(0,Ki.string)({size:"variable"}).serialize("collection_authority"),(0,Ki.publicKey)().serialize(e.collectionAuthority)])}Ot.findCollectionAuthorityRecordPda=dA;async function ade(t,e,r){return MO(t,dA(t,e),r)}Ot.fetchCollectionAuthorityRecordFromSeeds=ade;async function nde(t,e,r){return DO(t,dA(t,e),r)}Ot.safeFetchCollectionAuthorityRecordFromSeeds=nde});var CO=b(Or=>{"use strict";Object.defineProperty(Or,"__esModule",{value:!0});Or.getEditionSize=Or.getEditionGpaBuilder=Or.safeFetchAllEdition=Or.fetchAllEdition=Or.safeFetchEdition=Or.fetchEdition=Or.deserializeEdition=Or.getEditionAccountDataSerializer=void 0;var Ao=F(),Id=W(),Jg=ie();function BO(){return(0,Id.mapSerializer)((0,Id.struct)([["key",(0,Jg.getKeySerializer)()],["parent",(0,Id.publicKey)()],["edition",(0,Id.u64)()]],{description:"EditionAccountData"}),t=>({...t,key:Jg.Key.EditionV1}))}Or.getEditionAccountDataSerializer=BO;function Md(t){return(0,Ao.deserializeAccount)(t,BO())}Or.deserializeEdition=Md;async function sde(t,e,r){let i=await t.rpc.getAccount((0,Ao.publicKey)(e,!1),r);return(0,Ao.assertAccountExists)(i,"Edition"),Md(i)}Or.fetchEdition=sde;async function ode(t,e,r){let i=await t.rpc.getAccount((0,Ao.publicKey)(e,!1),r);return i.exists?Md(i):null}Or.safeFetchEdition=ode;async function lde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Ao.publicKey)(a,!1)),r)).map(a=>((0,Ao.assertAccountExists)(a,"Edition"),Md(a)))}Or.fetchAllEdition=lde;async function dde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Ao.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>Md(a))}Or.safeFetchAllEdition=dde;function ude(t){let e=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return(0,Ao.gpaBuilder)(t,e).registerFields({key:[0,(0,Jg.getKeySerializer)()],parent:[1,(0,Id.publicKey)()],edition:[33,(0,Id.u64)()]}).deserializeUsing(r=>Md(r)).whereField("key",Jg.Key.EditionV1)}Or.getEditionGpaBuilder=ude;function cde(){return 41}Or.getEditionSize=cde});var WO=b(At=>{"use strict";Object.defineProperty(At,"__esModule",{value:!0});At.safeFetchEditionMarkerFromSeeds=At.fetchEditionMarkerFromSeeds=At.findEditionMarkerPda=At.getEditionMarkerSize=At.getEditionMarkerGpaBuilder=At.safeFetchAllEditionMarker=At.fetchAllEditionMarker=At.safeFetchEditionMarker=At.fetchEditionMarker=At.deserializeEditionMarker=At.getEditionMarkerAccountDataSerializer=void 0;var _o=F(),qa=W(),Yg=ie();function OO(){return(0,qa.mapSerializer)((0,qa.struct)([["key",(0,Yg.getKeySerializer)()],["ledger",(0,qa.array)((0,qa.u8)(),{size:31})]],{description:"EditionMarkerAccountData"}),t=>({...t,key:Yg.Key.EditionMarker}))}At.getEditionMarkerAccountDataSerializer=OO;function Dd(t){return(0,_o.deserializeAccount)(t,OO())}At.deserializeEditionMarker=Dd;async function NO(t,e,r){let i=await t.rpc.getAccount((0,_o.publicKey)(e,!1),r);return(0,_o.assertAccountExists)(i,"EditionMarker"),Dd(i)}At.fetchEditionMarker=NO;async function qO(t,e,r){let i=await t.rpc.getAccount((0,_o.publicKey)(e,!1),r);return i.exists?Dd(i):null}At.safeFetchEditionMarker=qO;async function pde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,_o.publicKey)(a,!1)),r)).map(a=>((0,_o.assertAccountExists)(a,"EditionMarker"),Dd(a)))}At.fetchAllEditionMarker=pde;async function mde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,_o.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>Dd(a))}At.safeFetchAllEditionMarker=mde;function fde(t){let e=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return(0,_o.gpaBuilder)(t,e).registerFields({key:[0,(0,Yg.getKeySerializer)()],ledger:[1,(0,qa.array)((0,qa.u8)(),{size:31})]}).deserializeUsing(r=>Dd(r)).whereField("key",Yg.Key.EditionMarker)}At.getEditionMarkerGpaBuilder=fde;function hde(){return 32}At.getEditionMarkerSize=hde;function uA(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return t.eddsa.findPda(r,[(0,qa.string)({size:"variable"}).serialize("metadata"),(0,qa.publicKey)().serialize(r),(0,qa.publicKey)().serialize(e.mint),(0,qa.string)({size:"variable"}).serialize("edition"),(0,qa.string)({size:"variable"}).serialize(e.editionMarker)])}At.findEditionMarkerPda=uA;async function gde(t,e,r){return NO(t,uA(t,e),r)}At.fetchEditionMarkerFromSeeds=gde;async function yde(t,e,r){return qO(t,uA(t,e),r)}At.safeFetchEditionMarkerFromSeeds=yde});var UO=b(Nt=>{"use strict";Object.defineProperty(Nt,"__esModule",{value:!0});Nt.safeFetchEditionMarkerV2FromSeeds=Nt.fetchEditionMarkerV2FromSeeds=Nt.findEditionMarkerV2Pda=Nt.getEditionMarkerV2GpaBuilder=Nt.safeFetchAllEditionMarkerV2=Nt.fetchAllEditionMarkerV2=Nt.safeFetchEditionMarkerV2=Nt.fetchEditionMarkerV2=Nt.deserializeEditionMarkerV2=Nt.getEditionMarkerV2AccountDataSerializer=void 0;var ko=F(),mn=W(),VO=ie();function FO(){return(0,mn.struct)([["key",(0,VO.getKeySerializer)()],["ledger",(0,mn.bytes)({size:(0,mn.u32)()})]],{description:"EditionMarkerV2AccountData"})}Nt.getEditionMarkerV2AccountDataSerializer=FO;function Rd(t){return(0,ko.deserializeAccount)(t,FO())}Nt.deserializeEditionMarkerV2=Rd;async function KO(t,e,r){let i=await t.rpc.getAccount((0,ko.publicKey)(e,!1),r);return(0,ko.assertAccountExists)(i,"EditionMarkerV2"),Rd(i)}Nt.fetchEditionMarkerV2=KO;async function LO(t,e,r){let i=await t.rpc.getAccount((0,ko.publicKey)(e,!1),r);return i.exists?Rd(i):null}Nt.safeFetchEditionMarkerV2=LO;async function bde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,ko.publicKey)(a,!1)),r)).map(a=>((0,ko.assertAccountExists)(a,"EditionMarkerV2"),Rd(a)))}Nt.fetchAllEditionMarkerV2=bde;async function vde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,ko.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>Rd(a))}Nt.safeFetchAllEditionMarkerV2=vde;function Sde(t){let e=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return(0,ko.gpaBuilder)(t,e).registerFields({key:[0,(0,VO.getKeySerializer)()],ledger:[1,(0,mn.bytes)({size:(0,mn.u32)()})]}).deserializeUsing(r=>Rd(r))}Nt.getEditionMarkerV2GpaBuilder=Sde;function cA(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return t.eddsa.findPda(r,[(0,mn.string)({size:"variable"}).serialize("metadata"),(0,mn.publicKey)().serialize(r),(0,mn.publicKey)().serialize(e.mint),(0,mn.string)({size:"variable"}).serialize("edition"),(0,mn.string)({size:"variable"}).serialize("marker")])}Nt.findEditionMarkerV2Pda=cA;async function wde(t,e,r){return KO(t,cA(t,e),r)}Nt.fetchEditionMarkerV2FromSeeds=wde;async function xde(t,e,r){return LO(t,cA(t,e),r)}Nt.safeFetchEditionMarkerV2FromSeeds=xde});var GO=b(qt=>{"use strict";Object.defineProperty(qt,"__esModule",{value:!0});qt.safeFetchMasterEditionFromSeeds=qt.fetchMasterEditionFromSeeds=qt.findMasterEditionPda=qt.getMasterEditionGpaBuilder=qt.safeFetchAllMasterEdition=qt.fetchAllMasterEdition=qt.safeFetchMasterEdition=qt.fetchMasterEdition=qt.deserializeMasterEdition=qt.getMasterEditionAccountDataSerializer=void 0;var Eo=F(),sa=W(),Qg=ie();function jO(){return(0,sa.mapSerializer)((0,sa.struct)([["key",(0,Qg.getKeySerializer)()],["supply",(0,sa.u64)()],["maxSupply",(0,sa.option)((0,sa.u64)())]],{description:"MasterEditionAccountData"}),t=>({...t,key:Qg.Key.MasterEditionV2}))}qt.getMasterEditionAccountDataSerializer=jO;function Bd(t){return(0,Eo.deserializeAccount)(t,jO())}qt.deserializeMasterEdition=Bd;async function HO(t,e,r){let i=await t.rpc.getAccount((0,Eo.publicKey)(e,!1),r);return(0,Eo.assertAccountExists)(i,"MasterEdition"),Bd(i)}qt.fetchMasterEdition=HO;async function $O(t,e,r){let i=await t.rpc.getAccount((0,Eo.publicKey)(e,!1),r);return i.exists?Bd(i):null}qt.safeFetchMasterEdition=$O;async function Ade(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Eo.publicKey)(a,!1)),r)).map(a=>((0,Eo.assertAccountExists)(a,"MasterEdition"),Bd(a)))}qt.fetchAllMasterEdition=Ade;async function _de(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Eo.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>Bd(a))}qt.safeFetchAllMasterEdition=_de;function kde(t){let e=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return(0,Eo.gpaBuilder)(t,e).registerFields({key:[0,(0,Qg.getKeySerializer)()],supply:[1,(0,sa.u64)()],maxSupply:[9,(0,sa.option)((0,sa.u64)())]}).deserializeUsing(r=>Bd(r)).whereField("key",Qg.Key.MasterEditionV2)}qt.getMasterEditionGpaBuilder=kde;function pA(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return t.eddsa.findPda(r,[(0,sa.string)({size:"variable"}).serialize("metadata"),(0,sa.publicKey)().serialize(r),(0,sa.publicKey)().serialize(e.mint),(0,sa.string)({size:"variable"}).serialize("edition")])}qt.findMasterEditionPda=pA;async function Ede(t,e,r){return HO(t,pA(t,e),r)}qt.fetchMasterEditionFromSeeds=Ede;async function Pde(t,e,r){return $O(t,pA(t,e),r)}qt.safeFetchMasterEditionFromSeeds=Pde});var QO=b(Wt=>{"use strict";Object.defineProperty(Wt,"__esModule",{value:!0});Wt.safeFetchMetadataFromSeeds=Wt.fetchMetadataFromSeeds=Wt.findMetadataPda=Wt.getMetadataGpaBuilder=Wt.safeFetchAllMetadata=Wt.fetchAllMetadata=Wt.safeFetchMetadata=Wt.fetchMetadata=Wt.deserializeMetadata=Wt.getMetadataAccountDataSerializer=void 0;var Po=F(),Ce=W(),oi=ie();function ZO(){return(0,Ce.mapSerializer)((0,Ce.struct)([["key",(0,oi.getKeySerializer)()],["updateAuthority",(0,Ce.publicKey)()],["mint",(0,Ce.publicKey)()],["name",(0,Ce.string)()],["symbol",(0,Ce.string)()],["uri",(0,Ce.string)()],["sellerFeeBasisPoints",(0,Ce.u16)()],["creators",(0,Ce.option)((0,Ce.array)((0,oi.getCreatorSerializer)()))],["primarySaleHappened",(0,Ce.bool)()],["isMutable",(0,Ce.bool)()],["editionNonce",(0,Ce.option)((0,Ce.u8)())],["tokenStandard",(0,Ce.option)((0,oi.getTokenStandardSerializer)())],["collection",(0,Ce.option)((0,oi.getCollectionSerializer)())],["uses",(0,Ce.option)((0,oi.getUsesSerializer)())],["collectionDetails",(0,Ce.option)((0,oi.getCollectionDetailsSerializer)())],["programmableConfig",(0,Ce.option)((0,oi.getProgrammableConfigSerializer)())]],{description:"MetadataAccountData"}),t=>({...t,key:oi.Key.MetadataV1}))}Wt.getMetadataAccountDataSerializer=ZO;function Cd(t){return(0,Po.deserializeAccount)(t,ZO())}Wt.deserializeMetadata=Cd;async function JO(t,e,r){let i=await t.rpc.getAccount((0,Po.publicKey)(e,!1),r);return(0,Po.assertAccountExists)(i,"Metadata"),Cd(i)}Wt.fetchMetadata=JO;async function YO(t,e,r){let i=await t.rpc.getAccount((0,Po.publicKey)(e,!1),r);return i.exists?Cd(i):null}Wt.safeFetchMetadata=YO;async function Tde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Po.publicKey)(a,!1)),r)).map(a=>((0,Po.assertAccountExists)(a,"Metadata"),Cd(a)))}Wt.fetchAllMetadata=Tde;async function zde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Po.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>Cd(a))}Wt.safeFetchAllMetadata=zde;function Ide(t){let e=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return(0,Po.gpaBuilder)(t,e).registerFields({key:[0,(0,oi.getKeySerializer)()],updateAuthority:[1,(0,Ce.publicKey)()],mint:[33,(0,Ce.publicKey)()],name:[65,(0,Ce.string)()],symbol:[null,(0,Ce.string)()],uri:[null,(0,Ce.string)()],sellerFeeBasisPoints:[null,(0,Ce.u16)()],creators:[null,(0,Ce.option)((0,Ce.array)((0,oi.getCreatorSerializer)()))],primarySaleHappened:[null,(0,Ce.bool)()],isMutable:[null,(0,Ce.bool)()],editionNonce:[null,(0,Ce.option)((0,Ce.u8)())],tokenStandard:[null,(0,Ce.option)((0,oi.getTokenStandardSerializer)())],collection:[null,(0,Ce.option)((0,oi.getCollectionSerializer)())],uses:[null,(0,Ce.option)((0,oi.getUsesSerializer)())],collectionDetails:[null,(0,Ce.option)((0,oi.getCollectionDetailsSerializer)())],programmableConfig:[null,(0,Ce.option)((0,oi.getProgrammableConfigSerializer)())]}).deserializeUsing(r=>Cd(r)).whereField("key",oi.Key.MetadataV1)}Wt.getMetadataGpaBuilder=Ide;function mA(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return t.eddsa.findPda(r,[(0,Ce.string)({size:"variable"}).serialize("metadata"),(0,Ce.publicKey)().serialize(r),(0,Ce.publicKey)().serialize(e.mint)])}Wt.findMetadataPda=mA;async function Mde(t,e,r){return JO(t,mA(t,e),r)}Wt.fetchMetadataFromSeeds=Mde;async function Dde(t,e,r){return YO(t,mA(t,e),r)}Wt.safeFetchMetadataFromSeeds=Dde});var XO=b(Xg=>{"use strict";Object.defineProperty(Xg,"__esModule",{value:!0});Xg.findEditionMarkerFromEditionNumberPda=void 0;var Rde=To();function Bde(t,e){return(0,Rde.findEditionMarkerPda)(t,{mint:e.mint,editionMarker:(BigInt(e.editionNumber)/248n).toString(10)})}Xg.findEditionMarkerFromEditionNumberPda=Bde});var vm=b(e5=>{"use strict";Object.defineProperty(e5,"__esModule",{value:!0});e5.TokenMetadataError=void 0;var Cde=F(),fA=class extends Cde.UmiError{constructor(e,r){super(e,"plugin","Token Metadata",r),this.name="TokenMetadataError"}};e5.TokenMetadataError=fA});var tN=b(t5=>{"use strict";Object.defineProperty(t5,"__esModule",{value:!0});t5.getMetadataDelegateRoleSeedSerializer=void 0;var eN=W(),Ode=vm(),zo=nA();function Nde(){return(0,eN.mapSerializer)((0,eN.string)({size:"variable"}),t=>{if(typeof t=="string")return t;switch(t){case zo.MetadataDelegateRole.AuthorityItem:return"authority_item_delegate";case zo.MetadataDelegateRole.Collection:return"collection_delegate";case zo.MetadataDelegateRole.Use:return"use_delegate";case zo.MetadataDelegateRole.Data:return"data_delegate";case zo.MetadataDelegateRole.ProgrammableConfig:return"programmable_config_delegate";case zo.MetadataDelegateRole.DataItem:return"data_item_delegate";case zo.MetadataDelegateRole.CollectionItem:return"collection_item_delegate";case zo.MetadataDelegateRole.ProgrammableConfigItem:return"prog_config_item_delegate";default:throw new Ode.TokenMetadataError(`Invalid MetadataDelegateRoleArgs ${t}`)}},t=>t)}t5.getMetadataDelegateRoleSeedSerializer=Nde});var nN=b(Ft=>{"use strict";Object.defineProperty(Ft,"__esModule",{value:!0});Ft.safeFetchAddressLookupTableFromSeeds=Ft.fetchAddressLookupTableFromSeeds=Ft.findAddressLookupTablePda=Ft.getAddressLookupTableGpaBuilder=Ft.safeFetchAllAddressLookupTable=Ft.fetchAllAddressLookupTable=Ft.safeFetchAddressLookupTable=Ft.fetchAddressLookupTable=Ft.deserializeAddressLookupTable=Ft.getAddressLookupTableAccountDataSerializer=void 0;var Io=F(),Vt=W();function rN(){return(0,Vt.mapSerializer)((0,Vt.struct)([["discriminator",(0,Vt.u32)()],["deactivationSlot",(0,Vt.u64)()],["lastExtendedSlot",(0,Vt.u64)()],["lastExtendedStartIndex",(0,Vt.u8)()],["authority",(0,Vt.option)((0,Vt.publicKey)(),{fixed:!0})],["padding",(0,Vt.u16)()],["addresses",(0,Vt.array)((0,Vt.publicKey)(),{size:"remainder"})]],{description:"AddressLookupTableAccountData"}),t=>({...t,discriminator:1,padding:0}))}Ft.getAddressLookupTableAccountDataSerializer=rN;function Od(t){return(0,Io.deserializeAccount)(t,rN())}Ft.deserializeAddressLookupTable=Od;async function iN(t,e,r){let i=await t.rpc.getAccount((0,Io.publicKey)(e,!1),r);return(0,Io.assertAccountExists)(i,"AddressLookupTable"),Od(i)}Ft.fetchAddressLookupTable=iN;async function aN(t,e,r){let i=await t.rpc.getAccount((0,Io.publicKey)(e,!1),r);return i.exists?Od(i):null}Ft.safeFetchAddressLookupTable=aN;async function qde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Io.publicKey)(a,!1)),r)).map(a=>((0,Io.assertAccountExists)(a,"AddressLookupTable"),Od(a)))}Ft.fetchAllAddressLookupTable=qde;async function Wde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Io.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>Od(a))}Ft.safeFetchAllAddressLookupTable=Wde;function Vde(t){let e=t.programs.getPublicKey("splAddressLookupTable","AddressLookupTab1e1111111111111111111111111");return(0,Io.gpaBuilder)(t,e).registerFields({discriminator:[0,(0,Vt.u32)()],deactivationSlot:[4,(0,Vt.u64)()],lastExtendedSlot:[12,(0,Vt.u64)()],lastExtendedStartIndex:[20,(0,Vt.u8)()],authority:[21,(0,Vt.option)((0,Vt.publicKey)(),{fixed:!0})],padding:[54,(0,Vt.u16)()],addresses:[56,(0,Vt.array)((0,Vt.publicKey)(),{size:"remainder"})]}).deserializeUsing(r=>Od(r)).whereField("discriminator",1)}Ft.getAddressLookupTableGpaBuilder=Vde;function hA(t,e){let r=t.programs.getPublicKey("splAddressLookupTable","AddressLookupTab1e1111111111111111111111111");return t.eddsa.findPda(r,[(0,Vt.publicKey)().serialize(e.authority),(0,Vt.u64)().serialize(e.recentSlot)])}Ft.findAddressLookupTablePda=hA;async function Fde(t,e,r){return iN(t,hA(t,e),r)}Ft.fetchAddressLookupTableFromSeeds=Fde;async function Kde(t,e,r){return aN(t,hA(t,e),r)}Ft.safeFetchAddressLookupTableFromSeeds=Kde});var oN=b(Nr=>{"use strict";Object.defineProperty(Nr,"__esModule",{value:!0});Nr.getMintSize=Nr.getMintGpaBuilder=Nr.safeFetchAllMint=Nr.fetchAllMint=Nr.safeFetchMint=Nr.fetchMint=Nr.deserializeMint=Nr.getMintAccountDataSerializer=void 0;var Mo=F(),Tr=W();function sN(){return(0,Tr.struct)([["mintAuthority",(0,Tr.option)((0,Tr.publicKey)(),{prefix:(0,Tr.u32)(),fixed:!0})],["supply",(0,Tr.u64)()],["decimals",(0,Tr.u8)()],["isInitialized",(0,Tr.bool)()],["freezeAuthority",(0,Tr.option)((0,Tr.publicKey)(),{prefix:(0,Tr.u32)(),fixed:!0})]],{description:"MintAccountData"})}Nr.getMintAccountDataSerializer=sN;function Nd(t){return(0,Mo.deserializeAccount)(t,sN())}Nr.deserializeMint=Nd;async function Lde(t,e,r){let i=await t.rpc.getAccount((0,Mo.publicKey)(e,!1),r);return(0,Mo.assertAccountExists)(i,"Mint"),Nd(i)}Nr.fetchMint=Lde;async function Ude(t,e,r){let i=await t.rpc.getAccount((0,Mo.publicKey)(e,!1),r);return i.exists?Nd(i):null}Nr.safeFetchMint=Ude;async function jde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Mo.publicKey)(a,!1)),r)).map(a=>((0,Mo.assertAccountExists)(a,"Mint"),Nd(a)))}Nr.fetchAllMint=jde;async function Hde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Mo.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>Nd(a))}Nr.safeFetchAllMint=Hde;function $de(t){let e=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA");return(0,Mo.gpaBuilder)(t,e).registerFields({mintAuthority:[0,(0,Tr.option)((0,Tr.publicKey)(),{prefix:(0,Tr.u32)(),fixed:!0})],supply:[36,(0,Tr.u64)()],decimals:[44,(0,Tr.u8)()],isInitialized:[45,(0,Tr.bool)()],freezeAuthority:[46,(0,Tr.option)((0,Tr.publicKey)(),{prefix:(0,Tr.u32)(),fixed:!0})]}).deserializeUsing(r=>Nd(r)).whereSize(82)}Nr.getMintGpaBuilder=$de;function Gde(){return 82}Nr.getMintSize=Gde});var dN=b(qr=>{"use strict";Object.defineProperty(qr,"__esModule",{value:!0});qr.getMultisigSize=qr.getMultisigGpaBuilder=qr.safeFetchAllMultisig=qr.fetchAllMultisig=qr.safeFetchMultisig=qr.fetchMultisig=qr.deserializeMultisig=qr.getMultisigAccountDataSerializer=void 0;var Do=F(),Wa=W();function lN(){return(0,Wa.struct)([["m",(0,Wa.u8)()],["n",(0,Wa.u8)()],["isInitialized",(0,Wa.bool)()],["signers",(0,Wa.array)((0,Wa.publicKey)(),{size:11})]],{description:"MultisigAccountData"})}qr.getMultisigAccountDataSerializer=lN;function qd(t){return(0,Do.deserializeAccount)(t,lN())}qr.deserializeMultisig=qd;async function Zde(t,e,r){let i=await t.rpc.getAccount((0,Do.publicKey)(e,!1),r);return(0,Do.assertAccountExists)(i,"Multisig"),qd(i)}qr.fetchMultisig=Zde;async function Jde(t,e,r){let i=await t.rpc.getAccount((0,Do.publicKey)(e,!1),r);return i.exists?qd(i):null}qr.safeFetchMultisig=Jde;async function Yde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Do.publicKey)(a,!1)),r)).map(a=>((0,Do.assertAccountExists)(a,"Multisig"),qd(a)))}qr.fetchAllMultisig=Yde;async function Qde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Do.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>qd(a))}qr.safeFetchAllMultisig=Qde;function Xde(t){let e=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA");return(0,Do.gpaBuilder)(t,e).registerFields({m:[0,(0,Wa.u8)()],n:[1,(0,Wa.u8)()],isInitialized:[2,(0,Wa.bool)()],signers:[3,(0,Wa.array)((0,Wa.publicKey)(),{size:11})]}).deserializeUsing(r=>qd(r)).whereSize(355)}qr.getMultisigGpaBuilder=Xde;function eue(){return 355}qr.getMultisigSize=eue});var cN=b(Wl=>{"use strict";Object.defineProperty(Wl,"__esModule",{value:!0});Wl.getAuthorityTypeSerializer=Wl.AuthorityType=void 0;var tue=W(),uN;(function(t){t[t.MintTokens=0]="MintTokens",t[t.FreezeAccount=1]="FreezeAccount",t[t.AccountOwner=2]="AccountOwner",t[t.CloseAccount=3]="CloseAccount"})(uN=Wl.AuthorityType||(Wl.AuthorityType={}));function rue(){return(0,tue.scalarEnum)(uN,{description:"AuthorityType"})}Wl.getAuthorityTypeSerializer=rue});var mN=b(Vl=>{"use strict";Object.defineProperty(Vl,"__esModule",{value:!0});Vl.getTokenStateSerializer=Vl.TokenState=void 0;var iue=W(),pN;(function(t){t[t.Uninitialized=0]="Uninitialized",t[t.Initialized=1]="Initialized",t[t.Frozen=2]="Frozen"})(pN=Vl.TokenState||(Vl.TokenState={}));function aue(){return(0,iue.scalarEnum)(pN,{description:"TokenState"})}Vl.getTokenStateSerializer=aue});var r5=b(Ro=>{"use strict";var nue=Ro&&Ro.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),fN=Ro&&Ro.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&nue(e,t,r)};Object.defineProperty(Ro,"__esModule",{value:!0});fN(cN(),Ro);fN(mN(),Ro)});var yN=b(Wr=>{"use strict";Object.defineProperty(Wr,"__esModule",{value:!0});Wr.getTokenSize=Wr.getTokenGpaBuilder=Wr.safeFetchAllToken=Wr.fetchAllToken=Wr.safeFetchToken=Wr.fetchToken=Wr.deserializeToken=Wr.getTokenAccountDataSerializer=void 0;var Bo=F(),nt=W(),hN=r5();function gN(){return(0,nt.struct)([["mint",(0,nt.publicKey)()],["owner",(0,nt.publicKey)()],["amount",(0,nt.u64)()],["delegate",(0,nt.option)((0,nt.publicKey)(),{prefix:(0,nt.u32)(),fixed:!0})],["state",(0,hN.getTokenStateSerializer)()],["isNative",(0,nt.option)((0,nt.u64)(),{prefix:(0,nt.u32)(),fixed:!0})],["delegatedAmount",(0,nt.u64)()],["closeAuthority",(0,nt.option)((0,nt.publicKey)(),{prefix:(0,nt.u32)(),fixed:!0})]],{description:"TokenAccountData"})}Wr.getTokenAccountDataSerializer=gN;function Wd(t){return(0,Bo.deserializeAccount)(t,gN())}Wr.deserializeToken=Wd;async function sue(t,e,r){let i=await t.rpc.getAccount((0,Bo.publicKey)(e,!1),r);return(0,Bo.assertAccountExists)(i,"Token"),Wd(i)}Wr.fetchToken=sue;async function oue(t,e,r){let i=await t.rpc.getAccount((0,Bo.publicKey)(e,!1),r);return i.exists?Wd(i):null}Wr.safeFetchToken=oue;async function lue(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Bo.publicKey)(a,!1)),r)).map(a=>((0,Bo.assertAccountExists)(a,"Token"),Wd(a)))}Wr.fetchAllToken=lue;async function due(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Bo.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>Wd(a))}Wr.safeFetchAllToken=due;function uue(t){let e=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA");return(0,Bo.gpaBuilder)(t,e).registerFields({mint:[0,(0,nt.publicKey)()],owner:[32,(0,nt.publicKey)()],amount:[64,(0,nt.u64)()],delegate:[72,(0,nt.option)((0,nt.publicKey)(),{prefix:(0,nt.u32)(),fixed:!0})],state:[108,(0,hN.getTokenStateSerializer)()],isNative:[109,(0,nt.option)((0,nt.u64)(),{prefix:(0,nt.u32)(),fixed:!0})],delegatedAmount:[121,(0,nt.u64)()],closeAuthority:[129,(0,nt.option)((0,nt.publicKey)(),{prefix:(0,nt.u32)(),fixed:!0})]}).deserializeUsing(r=>Wd(r)).whereSize(165)}Wr.getTokenGpaBuilder=uue;function cue(){return 165}Wr.getTokenSize=cue});var a5=b(fn=>{"use strict";var pue=fn&&fn.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),i5=fn&&fn.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&pue(e,t,r)};Object.defineProperty(fn,"__esModule",{value:!0});i5(nN(),fn);i5(oN(),fn);i5(dN(),fn);i5(yN(),fn)});var vN=b(hn=>{"use strict";Object.defineProperty(hn,"__esModule",{value:!0});hn.getMplSystemExtrasErrorFromName=hn.getMplSystemExtrasErrorFromCode=hn.SysExInvalidOwnerForSourceError=hn.SysExInvalidSystemProgramError=void 0;var bN=F(),gA=new Map,yA=new Map,Sm=class extends bN.ProgramError{constructor(e,r){super("Invalid System Program",e,r),this.name="InvalidSystemProgram",this.code=0}};hn.SysExInvalidSystemProgramError=Sm;gA.set(0,Sm);yA.set("InvalidSystemProgram",Sm);var wm=class extends bN.ProgramError{constructor(e,r){super("Invalid Program Owner For The Source Account",e,r),this.name="InvalidOwnerForSource",this.code=1}};hn.SysExInvalidOwnerForSourceError=wm;gA.set(1,wm);yA.set("InvalidOwnerForSource",wm);function mue(t,e,r){let i=gA.get(t);return i?new i(e,r):null}hn.getMplSystemExtrasErrorFromCode=mue;function fue(t,e,r){let i=yA.get(t);return i?new i(e,r):null}hn.getMplSystemExtrasErrorFromName=fue});var SN=b(Kt=>{"use strict";Object.defineProperty(Kt,"__esModule",{value:!0});Kt.getMplTokenExtrasErrorFromName=Kt.getMplTokenExtrasErrorFromCode=Kt.TokExCannotCreateNonAssociatedTokenError=Kt.TokExInvalidTokenOwnerError=Kt.TokExInvalidTokenMintError=Kt.TokExInvalidProgramOwnerError=Kt.TokExInvalidAssociatedTokenAccountError=Kt.TokExInvalidAssociatedTokenProgramError=Kt.TokExInvalidTokenProgramError=Kt.TokExInvalidSystemProgramError=void 0;var Co=F(),es=new Map,ts=new Map,xm=class extends Co.ProgramError{constructor(e,r){super("Invalid System Program",e,r),this.name="InvalidSystemProgram",this.code=0}};Kt.TokExInvalidSystemProgramError=xm;es.set(0,xm);ts.set("InvalidSystemProgram",xm);var Am=class extends Co.ProgramError{constructor(e,r){super("Invalid Token Program",e,r),this.name="InvalidTokenProgram",this.code=1}};Kt.TokExInvalidTokenProgramError=Am;es.set(1,Am);ts.set("InvalidTokenProgram",Am);var _m=class extends Co.ProgramError{constructor(e,r){super("Invalid Associated Token Program",e,r),this.name="InvalidAssociatedTokenProgram",this.code=2}};Kt.TokExInvalidAssociatedTokenProgramError=_m;es.set(2,_m);ts.set("InvalidAssociatedTokenProgram",_m);var km=class extends Co.ProgramError{constructor(e,r){super("Invalid Associated Token Account: it should derive from the provided mint and owner",e,r),this.name="InvalidAssociatedTokenAccount",this.code=3}};Kt.TokExInvalidAssociatedTokenAccountError=km;es.set(3,km);ts.set("InvalidAssociatedTokenAccount",km);var Em=class extends Co.ProgramError{constructor(e,r){super("Invalid Program Owner",e,r),this.name="InvalidProgramOwner",this.code=4}};Kt.TokExInvalidProgramOwnerError=Em;es.set(4,Em);ts.set("InvalidProgramOwner",Em);var Pm=class extends Co.ProgramError{constructor(e,r){super("Invalid Token Mint: it should be the same as the provided mint account",e,r),this.name="InvalidTokenMint",this.code=5}};Kt.TokExInvalidTokenMintError=Pm;es.set(5,Pm);ts.set("InvalidTokenMint",Pm);var Tm=class extends Co.ProgramError{constructor(e,r){super("Invalid Program Owner: it should be the same as the provided owner account",e,r),this.name="InvalidTokenOwner",this.code=6}};Kt.TokExInvalidTokenOwnerError=Tm;es.set(6,Tm);ts.set("InvalidTokenOwner",Tm);var zm=class extends Co.ProgramError{constructor(e,r){super("Cannot create non-associated token accounts as they would need to sign the transaction. Please provide an associated token account instead",e,r),this.name="CannotCreateNonAssociatedToken",this.code=7}};Kt.TokExCannotCreateNonAssociatedTokenError=zm;es.set(7,zm);ts.set("CannotCreateNonAssociatedToken",zm);function hue(t,e,r){let i=es.get(t);return i?new i(e,r):null}Kt.getMplTokenExtrasErrorFromCode=hue;function gue(t,e,r){let i=ts.get(t);return i?new i(e,r):null}Kt.getMplTokenExtrasErrorFromName=gue});var wN=b(Vd=>{"use strict";Object.defineProperty(Vd,"__esModule",{value:!0});Vd.getSplAddressLookupTableErrorFromName=Vd.getSplAddressLookupTableErrorFromCode=void 0;var yue=new Map,bue=new Map;function vue(t,e,r){let i=yue.get(t);return i?new i(e,r):null}Vd.getSplAddressLookupTableErrorFromCode=vue;function Sue(t,e,r){let i=bue.get(t);return i?new i(e,r):null}Vd.getSplAddressLookupTableErrorFromName=Sue});var _N=b(Oo=>{"use strict";Object.defineProperty(Oo,"__esModule",{value:!0});Oo.getSplAssociatedTokenErrorFromName=Oo.getSplAssociatedTokenErrorFromCode=Oo.AtaInvalidOwnerError=void 0;var wue=F(),xN=new Map,AN=new Map,Im=class extends wue.ProgramError{constructor(e,r){super("Associated token account owner does not match address derivation",e,r),this.name="InvalidOwner",this.code=0}};Oo.AtaInvalidOwnerError=Im;xN.set(0,Im);AN.set("InvalidOwner",Im);function xue(t,e,r){let i=xN.get(t);return i?new i(e,r):null}Oo.getSplAssociatedTokenErrorFromCode=xue;function Aue(t,e,r){let i=AN.get(t);return i?new i(e,r):null}Oo.getSplAssociatedTokenErrorFromName=Aue});var kN=b(Fd=>{"use strict";Object.defineProperty(Fd,"__esModule",{value:!0});Fd.getSplComputeBudgetErrorFromName=Fd.getSplComputeBudgetErrorFromCode=void 0;var _ue=new Map,kue=new Map;function Eue(t,e,r){let i=_ue.get(t);return i?new i(e,r):null}Fd.getSplComputeBudgetErrorFromCode=Eue;function Pue(t,e,r){let i=kue.get(t);return i?new i(e,r):null}Fd.getSplComputeBudgetErrorFromName=Pue});var EN=b(Kd=>{"use strict";Object.defineProperty(Kd,"__esModule",{value:!0});Kd.getSplMemoErrorFromName=Kd.getSplMemoErrorFromCode=void 0;var Tue=new Map,zue=new Map;function Iue(t,e,r){let i=Tue.get(t);return i?new i(e,r):null}Kd.getSplMemoErrorFromCode=Iue;function Mue(t,e,r){let i=zue.get(t);return i?new i(e,r):null}Kd.getSplMemoErrorFromName=Mue});var PN=b(Ld=>{"use strict";Object.defineProperty(Ld,"__esModule",{value:!0});Ld.getSplSystemErrorFromName=Ld.getSplSystemErrorFromCode=void 0;var Due=new Map,Rue=new Map;function Bue(t,e,r){let i=Due.get(t);return i?new i(e,r):null}Ld.getSplSystemErrorFromCode=Bue;function Cue(t,e,r){let i=Rue.get(t);return i?new i(e,r):null}Ld.getSplSystemErrorFromName=Cue});var TN=b(xe=>{"use strict";Object.defineProperty(xe,"__esModule",{value:!0});xe.getSplTokenErrorFromName=xe.getSplTokenErrorFromCode=xe.TokNonNativeNotSupportedError=xe.TokMintDecimalsMismatchError=xe.TokAccountFrozenError=xe.TokMintCannotFreezeError=xe.TokAuthorityTypeNotSupportedError=xe.TokOverflowError=xe.TokInvalidStateError=xe.TokInvalidInstructionError=xe.TokNonNativeHasBalanceError=xe.TokNativeNotSupportedError=xe.TokUninitializedStateError=xe.TokInvalidNumberOfRequiredSignersError=xe.TokInvalidNumberOfProvidedSignersError=xe.TokAlreadyInUseError=xe.TokFixedSupplyError=xe.TokOwnerMismatchError=xe.TokMintMismatchError=xe.TokInvalidMintError=xe.TokInsufficientFundsError=xe.TokNotRentExemptError=void 0;var gr=F(),$t=new Map,Gt=new Map,Mm=class extends gr.ProgramError{constructor(e,r){super("Lamport balance below rent-exempt threshold",e,r),this.name="NotRentExempt",this.code=0}};xe.TokNotRentExemptError=Mm;$t.set(0,Mm);Gt.set("NotRentExempt",Mm);var Dm=class extends gr.ProgramError{constructor(e,r){super("Insufficient funds",e,r),this.name="InsufficientFunds",this.code=1}};xe.TokInsufficientFundsError=Dm;$t.set(1,Dm);Gt.set("InsufficientFunds",Dm);var Rm=class extends gr.ProgramError{constructor(e,r){super("Invalid Mint",e,r),this.name="InvalidMint",this.code=2}};xe.TokInvalidMintError=Rm;$t.set(2,Rm);Gt.set("InvalidMint",Rm);var Bm=class extends gr.ProgramError{constructor(e,r){super("Account not associated with this Mint",e,r),this.name="MintMismatch",this.code=3}};xe.TokMintMismatchError=Bm;$t.set(3,Bm);Gt.set("MintMismatch",Bm);var Cm=class extends gr.ProgramError{constructor(e,r){super("Owner does not match",e,r),this.name="OwnerMismatch",this.code=4}};xe.TokOwnerMismatchError=Cm;$t.set(4,Cm);Gt.set("OwnerMismatch",Cm);var Om=class extends gr.ProgramError{constructor(e,r){super("Fixed supply",e,r),this.name="FixedSupply",this.code=5}};xe.TokFixedSupplyError=Om;$t.set(5,Om);Gt.set("FixedSupply",Om);var Nm=class extends gr.ProgramError{constructor(e,r){super("Already in use",e,r),this.name="AlreadyInUse",this.code=6}};xe.TokAlreadyInUseError=Nm;$t.set(6,Nm);Gt.set("AlreadyInUse",Nm);var qm=class extends gr.ProgramError{constructor(e,r){super("Invalid number of provided signers",e,r),this.name="InvalidNumberOfProvidedSigners",this.code=7}};xe.TokInvalidNumberOfProvidedSignersError=qm;$t.set(7,qm);Gt.set("InvalidNumberOfProvidedSigners",qm);var Wm=class extends gr.ProgramError{constructor(e,r){super("Invalid number of required signers",e,r),this.name="InvalidNumberOfRequiredSigners",this.code=8}};xe.TokInvalidNumberOfRequiredSignersError=Wm;$t.set(8,Wm);Gt.set("InvalidNumberOfRequiredSigners",Wm);var Vm=class extends gr.ProgramError{constructor(e,r){super("State is unititialized",e,r),this.name="UninitializedState",this.code=9}};xe.TokUninitializedStateError=Vm;$t.set(9,Vm);Gt.set("UninitializedState",Vm);var Fm=class extends gr.ProgramError{constructor(e,r){super("Instruction does not support native tokens",e,r),this.name="NativeNotSupported",this.code=10}};xe.TokNativeNotSupportedError=Fm;$t.set(10,Fm);Gt.set("NativeNotSupported",Fm);var Km=class extends gr.ProgramError{constructor(e,r){super("Non-native account can only be closed if its balance is zero",e,r),this.name="NonNativeHasBalance",this.code=11}};xe.TokNonNativeHasBalanceError=Km;$t.set(11,Km);Gt.set("NonNativeHasBalance",Km);var Lm=class extends gr.ProgramError{constructor(e,r){super("Invalid instruction",e,r),this.name="InvalidInstruction",this.code=12}};xe.TokInvalidInstructionError=Lm;$t.set(12,Lm);Gt.set("InvalidInstruction",Lm);var Um=class extends gr.ProgramError{constructor(e,r){super("State is invalid for requested operation",e,r),this.name="InvalidState",this.code=13}};xe.TokInvalidStateError=Um;$t.set(13,Um);Gt.set("InvalidState",Um);var jm=class extends gr.ProgramError{constructor(e,r){super("Operation overflowed",e,r),this.name="Overflow",this.code=14}};xe.TokOverflowError=jm;$t.set(14,jm);Gt.set("Overflow",jm);var Hm=class extends gr.ProgramError{constructor(e,r){super("Account does not support specified authority type",e,r),this.name="AuthorityTypeNotSupported",this.code=15}};xe.TokAuthorityTypeNotSupportedError=Hm;$t.set(15,Hm);Gt.set("AuthorityTypeNotSupported",Hm);var $m=class extends gr.ProgramError{constructor(e,r){super("This token mint cannot freeze accounts",e,r),this.name="MintCannotFreeze",this.code=16}};xe.TokMintCannotFreezeError=$m;$t.set(16,$m);Gt.set("MintCannotFreeze",$m);var Gm=class extends gr.ProgramError{constructor(e,r){super("Account is frozen",e,r),this.name="AccountFrozen",this.code=17}};xe.TokAccountFrozenError=Gm;$t.set(17,Gm);Gt.set("AccountFrozen",Gm);var Zm=class extends gr.ProgramError{constructor(e,r){super("The provided decimals value different from the Mint decimals",e,r),this.name="MintDecimalsMismatch",this.code=18}};xe.TokMintDecimalsMismatchError=Zm;$t.set(18,Zm);Gt.set("MintDecimalsMismatch",Zm);var Jm=class extends gr.ProgramError{constructor(e,r){super("Instruction does not support non-native tokens",e,r),this.name="NonNativeNotSupported",this.code=19}};xe.TokNonNativeNotSupportedError=Jm;$t.set(19,Jm);Gt.set("NonNativeNotSupported",Jm);function Oue(t,e,r){let i=$t.get(t);return i?new i(e,r):null}xe.getSplTokenErrorFromCode=Oue;function Nue(t,e,r){let i=Gt.get(t);return i?new i(e,r):null}xe.getSplTokenErrorFromName=Nue});var gn=b(ki=>{"use strict";var que=ki&&ki.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),No=ki&&ki.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&que(e,t,r)};Object.defineProperty(ki,"__esModule",{value:!0});No(vN(),ki);No(SN(),ki);No(wN(),ki);No(_N(),ki);No(kN(),ki);No(EN(),ki);No(PN(),ki);No(TN(),ki)});var Ae=b(yn=>{"use strict";Object.defineProperty(yn,"__esModule",{value:!0});yn.getAccountMetasAndSigners=yn.expectPda=yn.expectPublicKey=yn.expectSome=void 0;var Ym=F();function Wue(t){if(t==null)throw new Error("Expected a value but received null or undefined.");return t}yn.expectSome=Wue;function Vue(t){if(!t)throw new Error("Expected a PublicKey.");return(0,Ym.publicKey)(t,!1)}yn.expectPublicKey=Vue;function Fue(t){if(!t||!Array.isArray(t)||!(0,Ym.isPda)(t))throw new Error("Expected a PDA.");return t}yn.expectPda=Fue;function Kue(t,e,r){let i=[],a=[];return t.forEach(n=>{if(!n.value){if(e==="omitted")return;i.push({pubkey:r,isSigner:!1,isWritable:!1});return}(0,Ym.isSigner)(n.value)&&a.push(n.value),i.push({pubkey:(0,Ym.publicKey)(n.value,!1),isSigner:(0,Ym.isSigner)(n.value),isWritable:n.isWritable})}),[i,a]}yn.getAccountMetasAndSigners=Kue});var MN=b(Ud=>{"use strict";Object.defineProperty(Ud,"__esModule",{value:!0});Ud.addMemo=Ud.getAddMemoInstructionDataSerializer=void 0;var Lue=F(),zN=W(),Uue=Ae();function IN(){return(0,zN.struct)([["memo",(0,zN.string)()]],{description:"AddMemoInstructionData"})}Ud.getAddMemoInstructionDataSerializer=IN;function jue(t,e){let r=t.programs.getPublicKey("splMemo","Memo1UhkJRfHyvLMcVucJwxXeuD728EqVDDwQDxFMNo"),i={},a={...e},n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Uue.getAccountMetasAndSigners)(n,"programId",r),l=IN().serialize(a),d=0;return(0,Lue.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Ud.addMemo=jue});var RN=b(jd=>{"use strict";Object.defineProperty(jd,"__esModule",{value:!0});jd.amountToUiAmount=jd.getAmountToUiAmountInstructionDataSerializer=void 0;var Hue=F(),n5=W(),$ue=Ae();function DN(){return(0,n5.mapSerializer)((0,n5.struct)([["discriminator",(0,n5.u8)()],["amount",(0,n5.u64)()]],{description:"AmountToUiAmountInstructionData"}),t=>({...t,discriminator:23}))}jd.getAmountToUiAmountInstructionDataSerializer=DN;function Gue(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={mint:{index:0,isWritable:!1,value:e.mint??null}},a={...e},n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,$ue.getAccountMetasAndSigners)(n,"programId",r),l=DN().serialize(a),d=0;return(0,Hue.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}jd.amountToUiAmount=Gue});var CN=b(Hd=>{"use strict";Object.defineProperty(Hd,"__esModule",{value:!0});Hd.approveTokenDelegate=Hd.getApproveTokenDelegateInstructionDataSerializer=void 0;var Zue=F(),s5=W(),Jue=Ae();function BN(){return(0,s5.mapSerializer)((0,s5.struct)([["discriminator",(0,s5.u8)()],["amount",(0,s5.u64)()]],{description:"ApproveTokenDelegateInstructionData"}),t=>({...t,discriminator:4}))}Hd.getApproveTokenDelegateInstructionDataSerializer=BN;function Yue(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={source:{index:0,isWritable:!0,value:e.source??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},owner:{index:2,isWritable:!1,value:e.owner??null}},a={...e},n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Jue.getAccountMetasAndSigners)(n,"programId",r),l=BN().serialize(a),d=0;return(0,Zue.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Hd.approveTokenDelegate=Yue});var NN=b($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});$d.approveTokenDelegateChecked=$d.getApproveTokenDelegateCheckedInstructionDataSerializer=void 0;var Que=F(),Qm=W(),Xue=Ae();function ON(){return(0,Qm.mapSerializer)((0,Qm.struct)([["discriminator",(0,Qm.u8)()],["amount",(0,Qm.u64)()],["decimals",(0,Qm.u8)()]],{description:"ApproveTokenDelegateCheckedInstructionData"}),t=>({...t,discriminator:13}))}$d.getApproveTokenDelegateCheckedInstructionDataSerializer=ON;function ece(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={source:{index:0,isWritable:!0,value:e.source??null},mint:{index:1,isWritable:!1,value:e.mint??null},delegate:{index:2,isWritable:!1,value:e.delegate??null},owner:{index:3,isWritable:!1,value:e.owner??null}},a={...e},n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Xue.getAccountMetasAndSigners)(n,"programId",r),l=ON().serialize(a),d=0;return(0,Que.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}$d.approveTokenDelegateChecked=ece});var WN=b(Gd=>{"use strict";Object.defineProperty(Gd,"__esModule",{value:!0});Gd.burnToken=Gd.getBurnTokenInstructionDataSerializer=void 0;var tce=F(),o5=W(),rce=Ae();function qN(){return(0,o5.mapSerializer)((0,o5.struct)([["discriminator",(0,o5.u8)()],["amount",(0,o5.u64)()]],{description:"BurnTokenInstructionData"}),t=>({...t,discriminator:8}))}Gd.getBurnTokenInstructionDataSerializer=qN;function ice(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={account:{index:0,isWritable:!0,value:e.account??null},mint:{index:1,isWritable:!0,value:e.mint??null},authority:{index:2,isWritable:!1,value:e.authority??null}},a={...e};i.authority.value||(i.authority.value=t.identity);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,rce.getAccountMetasAndSigners)(n,"programId",r),l=qN().serialize(a),d=0;return(0,tce.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Gd.burnToken=ice});var FN=b(Zd=>{"use strict";Object.defineProperty(Zd,"__esModule",{value:!0});Zd.burnTokenChecked=Zd.getBurnTokenCheckedInstructionDataSerializer=void 0;var ace=F(),Xm=W(),nce=Ae();function VN(){return(0,Xm.mapSerializer)((0,Xm.struct)([["discriminator",(0,Xm.u8)()],["amount",(0,Xm.u64)()],["decimals",(0,Xm.u8)()]],{description:"BurnTokenCheckedInstructionData"}),t=>({...t,discriminator:15}))}Zd.getBurnTokenCheckedInstructionDataSerializer=VN;function sce(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={account:{index:0,isWritable:!0,value:e.account??null},mint:{index:1,isWritable:!0,value:e.mint??null},authority:{index:2,isWritable:!1,value:e.authority??null}},a={...e};i.authority.value||(i.authority.value=t.identity);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,nce.getAccountMetasAndSigners)(n,"programId",r),l=VN().serialize(a),d=0;return(0,ace.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Zd.burnTokenChecked=sce});var LN=b(Jd=>{"use strict";Object.defineProperty(Jd,"__esModule",{value:!0});Jd.closeLut=Jd.getCloseLutInstructionDataSerializer=void 0;var oce=F(),bA=W(),lce=Ae();function KN(){return(0,bA.mapSerializer)((0,bA.struct)([["discriminator",(0,bA.u32)()]],{description:"CloseLutInstructionData"}),t=>({...t,discriminator:4}))}Jd.getCloseLutInstructionDataSerializer=KN;function dce(t,e){let r=t.programs.getPublicKey("splAddressLookupTable","AddressLookupTab1e1111111111111111111111111"),i={address:{index:0,isWritable:!0,value:e.address??null},authority:{index:1,isWritable:!1,value:e.authority??null},recipient:{index:2,isWritable:!0,value:e.recipient??null}};i.authority.value||(i.authority.value=t.identity);let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,lce.getAccountMetasAndSigners)(a,"programId",r),o=KN().serialize({}),l=0;return(0,oce.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}Jd.closeLut=dce});var jN=b(Yd=>{"use strict";Object.defineProperty(Yd,"__esModule",{value:!0});Yd.closeToken=Yd.getCloseTokenInstructionDataSerializer=void 0;var uce=F(),vA=W(),cce=Ae();function UN(){return(0,vA.mapSerializer)((0,vA.struct)([["discriminator",(0,vA.u8)()]],{description:"CloseTokenInstructionData"}),t=>({...t,discriminator:9}))}Yd.getCloseTokenInstructionDataSerializer=UN;function pce(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={account:{index:0,isWritable:!0,value:e.account??null},destination:{index:1,isWritable:!0,value:e.destination??null},owner:{index:2,isWritable:!1,value:e.owner??null}},a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,cce.getAccountMetasAndSigners)(a,"programId",r),o=UN().serialize({}),l=0;return(0,uce.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}Yd.closeToken=pce});var $N=b(Xd=>{"use strict";Object.defineProperty(Xd,"__esModule",{value:!0});Xd.createAccount=Xd.getCreateAccountInstructionDataSerializer=void 0;var SA=F(),Qd=W(),mce=Ae();function HN(){return(0,Qd.mapSerializer)((0,Qd.struct)([["discriminator",(0,Qd.u32)()],["lamports",(0,SA.mapAmountSerializer)((0,Qd.u64)(),"SOL",9)],["space",(0,Qd.u64)()],["programId",(0,Qd.publicKey)()]],{description:"CreateAccountInstructionData"}),t=>({...t,discriminator:0}))}Xd.getCreateAccountInstructionDataSerializer=HN;function fce(t,e){let r=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i={payer:{index:0,isWritable:!0,value:e.payer??null},newAccount:{index:1,isWritable:!0,value:e.newAccount??null}},a={...e};i.payer.value||(i.payer.value=t.payer);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,mce.getAccountMetasAndSigners)(n,"programId",r),l=HN().serialize(a),d=Number(e.space)+SA.ACCOUNT_HEADER_SIZE;return(0,SA.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Xd.createAccount=fce});var JN=b(eu=>{"use strict";Object.defineProperty(eu,"__esModule",{value:!0});eu.createAccountWithRent=eu.getCreateAccountWithRentInstructionDataSerializer=void 0;var GN=F(),ef=W(),hce=Ae();function ZN(){return(0,ef.mapSerializer)((0,ef.struct)([["discriminator",(0,ef.u8)()],["space",(0,ef.u64)()],["programId",(0,ef.publicKey)()]],{description:"CreateAccountWithRentInstructionData"}),t=>({...t,discriminator:0}))}eu.getCreateAccountWithRentInstructionDataSerializer=ZN;function gce(t,e){let r=t.programs.getPublicKey("mplSystemExtras","SysExL2WDyJi9aRZrXorrjHJut3JwHQ7R9bTyctbNNG"),i={payer:{index:0,isWritable:!0,value:e.payer??null},newAccount:{index:1,isWritable:!0,value:e.newAccount??null},systemProgram:{index:2,isWritable:!1,value:e.systemProgram??null}},a={...e};i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,hce.getAccountMetasAndSigners)(n,"programId",r),l=ZN().serialize(a),d=Number(e.space)+GN.ACCOUNT_HEADER_SIZE;return(0,GN.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}eu.createAccountWithRent=gce});var YN=b(l5=>{"use strict";Object.defineProperty(l5,"__esModule",{value:!0});l5.findAssociatedTokenPda=void 0;var wA=W();function yce(t,e){let r=t.programs.getPublicKey("splAssociatedToken"),i=t.programs.getPublicKey("splToken");return t.eddsa.findPda(r,[(0,wA.publicKey)().serialize(e.owner),(0,wA.publicKey)().serialize(i),(0,wA.publicKey)().serialize(e.mint)])}l5.findAssociatedTokenPda=yce});var QN=b(d5=>{"use strict";Object.defineProperty(d5,"__esModule",{value:!0});d5.resolveExtendLutBytes=void 0;var bce=(t,e,r,i)=>32*r.addresses.length;d5.resolveExtendLutBytes=bce});var tu=b(qo=>{"use strict";var vce=qo&&qo.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),XN=qo&&qo.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&vce(e,t,r)};Object.defineProperty(qo,"__esModule",{value:!0});XN(YN(),qo);XN(QN(),qo)});var tq=b(u5=>{"use strict";Object.defineProperty(u5,"__esModule",{value:!0});u5.createAssociatedToken=void 0;var eq=F(),Sce=tu(),wce=a5(),xA=Ae();function xce(t,e){let r=t.programs.getPublicKey("splAssociatedToken","ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"),i={payer:{index:0,isWritable:!0,value:e.payer??null},ata:{index:1,isWritable:!0,value:e.ata??null},owner:{index:2,isWritable:!1,value:e.owner??null},mint:{index:3,isWritable:!1,value:e.mint??null},systemProgram:{index:4,isWritable:!1,value:e.systemProgram??null},tokenProgram:{index:5,isWritable:!1,value:e.tokenProgram??null}};i.payer.value||(i.payer.value=t.payer),i.owner.value||(i.owner.value=t.identity.publicKey),i.ata.value||(i.ata.value=(0,Sce.findAssociatedTokenPda)(t,{owner:(0,xA.expectPublicKey)(i.owner.value),mint:(0,xA.expectPublicKey)(i.mint.value)})),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1);let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,xA.getAccountMetasAndSigners)(a,"programId",r),o=new Uint8Array,l=(0,wce.getTokenSize)()+eq.ACCOUNT_HEADER_SIZE;return(0,eq.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}u5.createAssociatedToken=xce});var aq=b(ru=>{"use strict";Object.defineProperty(ru,"__esModule",{value:!0});ru.createEmptyLut=ru.getCreateEmptyLutInstructionDataSerializer=void 0;var rq=F(),tf=W(),Ace=a5(),c5=Ae();function iq(){return(0,tf.mapSerializer)((0,tf.struct)([["discriminator",(0,tf.u32)()],["recentSlot",(0,tf.u64)()],["bump",(0,tf.u8)()]],{description:"CreateEmptyLutInstructionData"}),t=>({...t,discriminator:0}))}ru.getCreateEmptyLutInstructionDataSerializer=iq;function _ce(t,e){let r=t.programs.getPublicKey("splAddressLookupTable","AddressLookupTab1e1111111111111111111111111"),i={address:{index:0,isWritable:!0,value:e.address??null},authority:{index:1,isWritable:!1,value:e.authority??null},payer:{index:2,isWritable:!0,value:e.payer??null},systemProgram:{index:3,isWritable:!1,value:e.systemProgram??null}},a={...e};i.authority.value||(i.authority.value=t.identity),i.address.value||(i.address.value=(0,Ace.findAddressLookupTablePda)(t,{authority:(0,c5.expectPublicKey)(i.authority.value),recentSlot:(0,c5.expectSome)(a.recentSlot)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),a.bump||(a.bump=(0,c5.expectPda)(i.address.value)[1]);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,c5.getAccountMetasAndSigners)(n,"programId",r),l=iq().serialize(a),d=56+rq.ACCOUNT_HEADER_SIZE;return(0,rq.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}ru.createEmptyLut=_ce});var nq=b(p5=>{"use strict";Object.defineProperty(p5,"__esModule",{value:!0});p5.createIdempotentAssociatedToken=void 0;var kce=F(),Ece=Ae();function Pce(t,e){let r=t.programs.getPublicKey("splAssociatedToken","ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"),i={payer:{index:0,isWritable:!0,value:e.payer??null},ata:{index:1,isWritable:!0,value:e.ata??null},owner:{index:2,isWritable:!1,value:e.owner??null},mint:{index:3,isWritable:!1,value:e.mint??null},systemProgram:{index:4,isWritable:!1,value:e.systemProgram??null},tokenProgram:{index:5,isWritable:!1,value:e.tokenProgram??null}};i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1);let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,Ece.getAccountMetasAndSigners)(a,"programId",r),o=new Uint8Array,l=0;return(0,kce.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}p5.createIdempotentAssociatedToken=Pce});var oq=b(iu=>{"use strict";Object.defineProperty(iu,"__esModule",{value:!0});iu.createTokenIfMissing=iu.getCreateTokenIfMissingInstructionDataSerializer=void 0;var Tce=F(),AA=W(),zce=tu(),m5=Ae();function sq(){return(0,AA.mapSerializer)((0,AA.struct)([["discriminator",(0,AA.u8)()]],{description:"CreateTokenIfMissingInstructionData"}),t=>({...t,discriminator:0}))}iu.getCreateTokenIfMissingInstructionDataSerializer=sq;function Ice(t,e){let r=t.programs.getPublicKey("mplTokenExtras","TokExjvjJmhKaRBShsBAsbSvEWMA1AgUNK7ps4SAc2p"),i={payer:{index:0,isWritable:!0,value:e.payer??null},token:{index:1,isWritable:!1,value:e.token??null},mint:{index:2,isWritable:!1,value:e.mint??null},owner:{index:3,isWritable:!1,value:e.owner??null},ata:{index:4,isWritable:!0,value:e.ata??null},systemProgram:{index:5,isWritable:!1,value:e.systemProgram??null},tokenProgram:{index:6,isWritable:!1,value:e.tokenProgram??null},ataProgram:{index:7,isWritable:!1,value:e.ataProgram??null}};i.payer.value||(i.payer.value=t.payer),i.owner.value||(i.owner.value=t.identity.publicKey),i.ata.value||(i.ata.value=(0,zce.findAssociatedTokenPda)(t,{owner:(0,m5.expectPublicKey)(i.owner.value),mint:(0,m5.expectPublicKey)(i.mint.value)})),i.token.value||(i.token.value=(0,m5.expectSome)(i.ata.value)),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1),i.ataProgram.value||(i.ataProgram.value=t.programs.getPublicKey("splAssociatedToken","ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"),i.ataProgram.isWritable=!1);let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,m5.getAccountMetasAndSigners)(a,"programId",r),o=sq().serialize({}),l=0;return(0,Tce.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}iu.createTokenIfMissing=Ice});var dq=b(au=>{"use strict";Object.defineProperty(au,"__esModule",{value:!0});au.deactivateLut=au.getDeactivateLutInstructionDataSerializer=void 0;var Mce=F(),_A=W(),Dce=Ae();function lq(){return(0,_A.mapSerializer)((0,_A.struct)([["discriminator",(0,_A.u32)()]],{description:"DeactivateLutInstructionData"}),t=>({...t,discriminator:3}))}au.getDeactivateLutInstructionDataSerializer=lq;function Rce(t,e){let r=t.programs.getPublicKey("splAddressLookupTable","AddressLookupTab1e1111111111111111111111111"),i={address:{index:0,isWritable:!0,value:e.address??null},authority:{index:1,isWritable:!1,value:e.authority??null}};i.authority.value||(i.authority.value=t.identity);let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,Dce.getAccountMetasAndSigners)(a,"programId",r),o=lq().serialize({}),l=0;return(0,Mce.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}au.deactivateLut=Rce});var cq=b(su=>{"use strict";Object.defineProperty(su,"__esModule",{value:!0});su.extendLut=su.getExtendLutInstructionDataSerializer=void 0;var Bce=F(),nu=W(),Cce=tu(),Oce=Ae();function uq(){return(0,nu.mapSerializer)((0,nu.struct)([["discriminator",(0,nu.u32)()],["addresses",(0,nu.array)((0,nu.publicKey)(),{size:(0,nu.u64)()})]],{description:"ExtendLutInstructionData"}),t=>({...t,discriminator:2}))}su.getExtendLutInstructionDataSerializer=uq;function Nce(t,e){let r=t.programs.getPublicKey("splAddressLookupTable","AddressLookupTab1e1111111111111111111111111"),i={address:{index:0,isWritable:!0,value:e.address??null},authority:{index:1,isWritable:!1,value:e.authority??null},payer:{index:2,isWritable:!0,value:e.payer??null},systemProgram:{index:3,isWritable:!1,value:e.systemProgram??null}},a={...e};i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Oce.getAccountMetasAndSigners)(n,"programId",r),l=uq().serialize(a),d=(0,Cce.resolveExtendLutBytes)(t,i,a,r);return(0,Bce.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}su.extendLut=Nce});var mq=b(ou=>{"use strict";Object.defineProperty(ou,"__esModule",{value:!0});ou.freezeLut=ou.getFreezeLutInstructionDataSerializer=void 0;var qce=F(),kA=W(),Wce=Ae();function pq(){return(0,kA.mapSerializer)((0,kA.struct)([["discriminator",(0,kA.u32)()]],{description:"FreezeLutInstructionData"}),t=>({...t,discriminator:1}))}ou.getFreezeLutInstructionDataSerializer=pq;function Vce(t,e){let r=t.programs.getPublicKey("splAddressLookupTable","AddressLookupTab1e1111111111111111111111111"),i={address:{index:0,isWritable:!0,value:e.address??null},authority:{index:1,isWritable:!1,value:e.authority??null}};i.authority.value||(i.authority.value=t.identity);let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,Wce.getAccountMetasAndSigners)(a,"programId",r),o=pq().serialize({}),l=0;return(0,qce.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}ou.freezeLut=Vce});var hq=b(lu=>{"use strict";Object.defineProperty(lu,"__esModule",{value:!0});lu.freezeToken=lu.getFreezeTokenInstructionDataSerializer=void 0;var Fce=F(),EA=W(),Kce=Ae();function fq(){return(0,EA.mapSerializer)((0,EA.struct)([["discriminator",(0,EA.u8)()]],{description:"FreezeTokenInstructionData"}),t=>({...t,discriminator:10}))}lu.getFreezeTokenInstructionDataSerializer=fq;function Lce(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={account:{index:0,isWritable:!0,value:e.account??null},mint:{index:1,isWritable:!1,value:e.mint??null},owner:{index:2,isWritable:!1,value:e.owner??null}},a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,Kce.getAccountMetasAndSigners)(a,"programId",r),o=fq().serialize({}),l=0;return(0,Fce.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}lu.freezeToken=Lce});var yq=b(du=>{"use strict";Object.defineProperty(du,"__esModule",{value:!0});du.getTokenDataSize=du.getGetTokenDataSizeInstructionDataSerializer=void 0;var Uce=F(),PA=W(),jce=Ae();function gq(){return(0,PA.mapSerializer)((0,PA.struct)([["discriminator",(0,PA.u8)()]],{description:"GetTokenDataSizeInstructionData"}),t=>({...t,discriminator:21}))}du.getGetTokenDataSizeInstructionDataSerializer=gq;function Hce(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={mint:{index:0,isWritable:!1,value:e.mint??null}},a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,jce.getAccountMetasAndSigners)(a,"programId",r),o=gq().serialize({}),l=0;return(0,Uce.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}du.getTokenDataSize=Hce});var vq=b(uu=>{"use strict";Object.defineProperty(uu,"__esModule",{value:!0});uu.initializeImmutableOwner=uu.getInitializeImmutableOwnerInstructionDataSerializer=void 0;var $ce=F(),TA=W(),Gce=Ae();function bq(){return(0,TA.mapSerializer)((0,TA.struct)([["discriminator",(0,TA.u8)()]],{description:"InitializeImmutableOwnerInstructionData"}),t=>({...t,discriminator:22}))}uu.getInitializeImmutableOwnerInstructionDataSerializer=bq;function Zce(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={account:{index:0,isWritable:!0,value:e.account??null}},a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,Gce.getAccountMetasAndSigners)(a,"programId",r),o=bq().serialize({}),l=0;return(0,$ce.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}uu.initializeImmutableOwner=Zce});var xq=b(cu=>{"use strict";Object.defineProperty(cu,"__esModule",{value:!0});cu.initializeMint=cu.getInitializeMintInstructionDataSerializer=void 0;var Sq=F(),Fl=W(),Jce=Ae();function wq(){return(0,Fl.mapSerializer)((0,Fl.struct)([["discriminator",(0,Fl.u8)()],["decimals",(0,Fl.u8)()],["mintAuthority",(0,Fl.publicKey)()],["freezeAuthority",(0,Fl.option)((0,Fl.publicKey)())]],{description:"InitializeMintInstructionData"}),t=>({...t,discriminator:0}))}cu.getInitializeMintInstructionDataSerializer=wq;function Yce(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={mint:{index:0,isWritable:!0,value:e.mint??null},rent:{index:1,isWritable:!1,value:e.rent??null}},a={...e};i.rent.value||(i.rent.value=(0,Sq.publicKey)("SysvarRent111111111111111111111111111111111"));let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Jce.getAccountMetasAndSigners)(n,"programId",r),l=wq().serialize(a),d=0;return(0,Sq.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}cu.initializeMint=Yce});var _q=b(pu=>{"use strict";Object.defineProperty(pu,"__esModule",{value:!0});pu.initializeMint2=pu.getInitializeMint2InstructionDataSerializer=void 0;var Qce=F(),Kl=W(),Xce=Ae();function Aq(){return(0,Kl.mapSerializer)((0,Kl.struct)([["discriminator",(0,Kl.u8)()],["decimals",(0,Kl.u8)()],["mintAuthority",(0,Kl.publicKey)()],["freezeAuthority",(0,Kl.option)((0,Kl.publicKey)())]],{description:"InitializeMint2InstructionData"}),t=>({...t,discriminator:20}))}pu.getInitializeMint2InstructionDataSerializer=Aq;function epe(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={mint:{index:0,isWritable:!0,value:e.mint??null}},a={...e},n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Xce.getAccountMetasAndSigners)(n,"programId",r),l=Aq().serialize(a),d=0;return(0,Qce.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}pu.initializeMint2=epe});var Pq=b(mu=>{"use strict";Object.defineProperty(mu,"__esModule",{value:!0});mu.initializeMultisig=mu.getInitializeMultisigInstructionDataSerializer=void 0;var kq=F(),f5=W(),tpe=Ae();function Eq(){return(0,f5.mapSerializer)((0,f5.struct)([["discriminator",(0,f5.u8)()],["m",(0,f5.u8)()]],{description:"InitializeMultisigInstructionData"}),t=>({...t,discriminator:2}))}mu.getInitializeMultisigInstructionDataSerializer=Eq;function rpe(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={multisig:{index:0,isWritable:!0,value:e.multisig??null},rent:{index:1,isWritable:!1,value:e.rent??null}},a={...e};i.rent.value||(i.rent.value=(0,kq.publicKey)("SysvarRent111111111111111111111111111111111"));let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,tpe.getAccountMetasAndSigners)(n,"programId",r),l=Eq().serialize(a),d=0;return(0,kq.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}mu.initializeMultisig=rpe});var zq=b(fu=>{"use strict";Object.defineProperty(fu,"__esModule",{value:!0});fu.initializeMultisig2=fu.getInitializeMultisig2InstructionDataSerializer=void 0;var ipe=F(),h5=W(),ape=Ae();function Tq(){return(0,h5.mapSerializer)((0,h5.struct)([["discriminator",(0,h5.u8)()],["m",(0,h5.u8)()]],{description:"InitializeMultisig2InstructionData"}),t=>({...t,discriminator:19}))}fu.getInitializeMultisig2InstructionDataSerializer=Tq;function npe(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={multisig:{index:0,isWritable:!0,value:e.multisig??null},signer:{index:1,isWritable:!1,value:e.signer??null}},a={...e},n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,ape.getAccountMetasAndSigners)(n,"programId",r),l=Tq().serialize(a),d=0;return(0,ipe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}fu.initializeMultisig2=npe});var Dq=b(hu=>{"use strict";Object.defineProperty(hu,"__esModule",{value:!0});hu.initializeToken=hu.getInitializeTokenInstructionDataSerializer=void 0;var Iq=F(),zA=W(),spe=Ae();function Mq(){return(0,zA.mapSerializer)((0,zA.struct)([["discriminator",(0,zA.u8)()]],{description:"InitializeTokenInstructionData"}),t=>({...t,discriminator:1}))}hu.getInitializeTokenInstructionDataSerializer=Mq;function ope(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={account:{index:0,isWritable:!0,value:e.account??null},mint:{index:1,isWritable:!1,value:e.mint??null},owner:{index:2,isWritable:!1,value:e.owner??null},rent:{index:3,isWritable:!1,value:e.rent??null}};i.rent.value||(i.rent.value=(0,Iq.publicKey)("SysvarRent111111111111111111111111111111111"));let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,spe.getAccountMetasAndSigners)(a,"programId",r),o=Mq().serialize({}),l=0;return(0,Iq.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}hu.initializeToken=ope});var Cq=b(gu=>{"use strict";Object.defineProperty(gu,"__esModule",{value:!0});gu.initializeToken2=gu.getInitializeToken2InstructionDataSerializer=void 0;var Rq=F(),g5=W(),lpe=Ae();function Bq(){return(0,g5.mapSerializer)((0,g5.struct)([["discriminator",(0,g5.u8)()],["owner",(0,g5.publicKey)()]],{description:"InitializeToken2InstructionData"}),t=>({...t,discriminator:16}))}gu.getInitializeToken2InstructionDataSerializer=Bq;function dpe(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={account:{index:0,isWritable:!0,value:e.account??null},mint:{index:1,isWritable:!1,value:e.mint??null},rent:{index:2,isWritable:!1,value:e.rent??null}},a={...e};i.rent.value||(i.rent.value=(0,Rq.publicKey)("SysvarRent111111111111111111111111111111111"));let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,lpe.getAccountMetasAndSigners)(n,"programId",r),l=Bq().serialize(a),d=0;return(0,Rq.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}gu.initializeToken2=dpe});var Nq=b(yu=>{"use strict";Object.defineProperty(yu,"__esModule",{value:!0});yu.initializeToken3=yu.getInitializeToken3InstructionDataSerializer=void 0;var upe=F(),y5=W(),cpe=Ae();function Oq(){return(0,y5.mapSerializer)((0,y5.struct)([["discriminator",(0,y5.u8)()],["owner",(0,y5.publicKey)()]],{description:"InitializeToken3InstructionData"}),t=>({...t,discriminator:18}))}yu.getInitializeToken3InstructionDataSerializer=Oq;function ppe(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={account:{index:0,isWritable:!0,value:e.account??null},mint:{index:1,isWritable:!1,value:e.mint??null}},a={...e},n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,cpe.getAccountMetasAndSigners)(n,"programId",r),l=Oq().serialize(a),d=0;return(0,upe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}yu.initializeToken3=ppe});var Wq=b(bu=>{"use strict";Object.defineProperty(bu,"__esModule",{value:!0});bu.mintTokensTo=bu.getMintTokensToInstructionDataSerializer=void 0;var mpe=F(),b5=W(),fpe=Ae();function qq(){return(0,b5.mapSerializer)((0,b5.struct)([["discriminator",(0,b5.u8)()],["amount",(0,b5.u64)()]],{description:"MintTokensToInstructionData"}),t=>({...t,discriminator:7}))}bu.getMintTokensToInstructionDataSerializer=qq;function hpe(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={mint:{index:0,isWritable:!0,value:e.mint??null},token:{index:1,isWritable:!0,value:e.token??null},mintAuthority:{index:2,isWritable:!1,value:e.mintAuthority??null}},a={...e};i.mintAuthority.value||(i.mintAuthority.value=t.identity);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,fpe.getAccountMetasAndSigners)(n,"programId",r),l=qq().serialize(a),d=0;return(0,mpe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}bu.mintTokensTo=hpe});var Fq=b(vu=>{"use strict";Object.defineProperty(vu,"__esModule",{value:!0});vu.mintTokensToChecked=vu.getMintTokensToCheckedInstructionDataSerializer=void 0;var gpe=F(),rf=W(),ype=Ae();function Vq(){return(0,rf.mapSerializer)((0,rf.struct)([["discriminator",(0,rf.u8)()],["amount",(0,rf.u64)()],["decimals",(0,rf.u8)()]],{description:"MintTokensToCheckedInstructionData"}),t=>({...t,discriminator:14}))}vu.getMintTokensToCheckedInstructionDataSerializer=Vq;function bpe(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={mint:{index:0,isWritable:!0,value:e.mint??null},token:{index:1,isWritable:!0,value:e.token??null},mintAuthority:{index:2,isWritable:!1,value:e.mintAuthority??null}},a={...e},n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,ype.getAccountMetasAndSigners)(n,"programId",r),l=Vq().serialize(a),d=0;return(0,gpe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}vu.mintTokensToChecked=bpe});var Kq=b(v5=>{"use strict";Object.defineProperty(v5,"__esModule",{value:!0});v5.recoverNestedAssociatedToken=void 0;var vpe=F(),Spe=Ae();function wpe(t,e){let r=t.programs.getPublicKey("splAssociatedToken","ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"),i={nestedAssociatedAccountAddress:{index:0,isWritable:!0,value:e.nestedAssociatedAccountAddress??null},nestedTokenMintAddress:{index:1,isWritable:!1,value:e.nestedTokenMintAddress??null},destinationAssociatedAccountAddress:{index:2,isWritable:!0,value:e.destinationAssociatedAccountAddress??null},ownerAssociatedAccountAddress:{index:3,isWritable:!1,value:e.ownerAssociatedAccountAddress??null},ownerTokenMintAddress:{index:4,isWritable:!1,value:e.ownerTokenMintAddress??null},walletAddress:{index:5,isWritable:!0,value:e.walletAddress??null},tokenProgram:{index:6,isWritable:!1,value:e.tokenProgram??null}};i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1);let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,Spe.getAccountMetasAndSigners)(a,"programId",r),o=new Uint8Array,l=0;return(0,vpe.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}v5.recoverNestedAssociatedToken=wpe});var Uq=b(Su=>{"use strict";Object.defineProperty(Su,"__esModule",{value:!0});Su.requestHeapFrame=Su.getRequestHeapFrameInstructionDataSerializer=void 0;var xpe=F(),S5=W(),Ape=Ae();function Lq(){return(0,S5.mapSerializer)((0,S5.struct)([["discriminator",(0,S5.u8)()],["bytes",(0,S5.u32)()]],{description:"RequestHeapFrameInstructionData"}),t=>({...t,discriminator:1}))}Su.getRequestHeapFrameInstructionDataSerializer=Lq;function _pe(t,e){let r=t.programs.getPublicKey("splComputeBudget","ComputeBudget111111111111111111111111111111"),i={},a={...e},n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Ape.getAccountMetasAndSigners)(n,"programId",r),l=Lq().serialize(a),d=0;return(0,xpe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Su.requestHeapFrame=_pe});var Hq=b(wu=>{"use strict";Object.defineProperty(wu,"__esModule",{value:!0});wu.requestUnits=wu.getRequestUnitsInstructionDataSerializer=void 0;var kpe=F(),af=W(),Epe=Ae();function jq(){return(0,af.mapSerializer)((0,af.struct)([["discriminator",(0,af.u8)()],["units",(0,af.u32)()],["additionalFee",(0,af.u32)()]],{description:"RequestUnitsInstructionData"}),t=>({...t,discriminator:0}))}wu.getRequestUnitsInstructionDataSerializer=jq;function Ppe(t,e){let r=t.programs.getPublicKey("splComputeBudget","ComputeBudget111111111111111111111111111111"),i={},a={...e},n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Epe.getAccountMetasAndSigners)(n,"programId",r),l=jq().serialize(a),d=0;return(0,kpe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}wu.requestUnits=Ppe});var Gq=b(xu=>{"use strict";Object.defineProperty(xu,"__esModule",{value:!0});xu.revokeTokenDelegate=xu.getRevokeTokenDelegateInstructionDataSerializer=void 0;var Tpe=F(),IA=W(),zpe=Ae();function $q(){return(0,IA.mapSerializer)((0,IA.struct)([["discriminator",(0,IA.u8)()]],{description:"RevokeTokenDelegateInstructionData"}),t=>({...t,discriminator:5}))}xu.getRevokeTokenDelegateInstructionDataSerializer=$q;function Ipe(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={source:{index:0,isWritable:!0,value:e.source??null},owner:{index:1,isWritable:!1,value:e.owner??null}},a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,zpe.getAccountMetasAndSigners)(a,"programId",r),o=$q().serialize({}),l=0;return(0,Tpe.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}xu.revokeTokenDelegate=Ipe});var Jq=b(Au=>{"use strict";Object.defineProperty(Au,"__esModule",{value:!0});Au.setAuthority=Au.getSetAuthorityInstructionDataSerializer=void 0;var Mpe=F(),nf=W(),Dpe=Ae(),Rpe=r5();function Zq(){return(0,nf.mapSerializer)((0,nf.struct)([["discriminator",(0,nf.u8)()],["authorityType",(0,Rpe.getAuthorityTypeSerializer)()],["newAuthority",(0,nf.option)((0,nf.publicKey)())]],{description:"SetAuthorityInstructionData"}),t=>({...t,discriminator:6}))}Au.getSetAuthorityInstructionDataSerializer=Zq;function Bpe(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={owned:{index:0,isWritable:!0,value:e.owned??null},owner:{index:1,isWritable:!1,value:e.owner??null}},a={...e},n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Dpe.getAccountMetasAndSigners)(n,"programId",r),l=Zq().serialize(a),d=0;return(0,Mpe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Au.setAuthority=Bpe});var Qq=b(_u=>{"use strict";Object.defineProperty(_u,"__esModule",{value:!0});_u.setComputeUnitLimit=_u.getSetComputeUnitLimitInstructionDataSerializer=void 0;var Cpe=F(),w5=W(),Ope=Ae();function Yq(){return(0,w5.mapSerializer)((0,w5.struct)([["discriminator",(0,w5.u8)()],["units",(0,w5.u32)()]],{description:"SetComputeUnitLimitInstructionData"}),t=>({...t,discriminator:2}))}_u.getSetComputeUnitLimitInstructionDataSerializer=Yq;function Npe(t,e){let r=t.programs.getPublicKey("splComputeBudget","ComputeBudget111111111111111111111111111111"),i={},a={...e},n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Ope.getAccountMetasAndSigners)(n,"programId",r),l=Yq().serialize(a),d=0;return(0,Cpe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}_u.setComputeUnitLimit=Npe});var eW=b(ku=>{"use strict";Object.defineProperty(ku,"__esModule",{value:!0});ku.setComputeUnitPrice=ku.getSetComputeUnitPriceInstructionDataSerializer=void 0;var qpe=F(),x5=W(),Wpe=Ae();function Xq(){return(0,x5.mapSerializer)((0,x5.struct)([["discriminator",(0,x5.u8)()],["microLamports",(0,x5.u64)()]],{description:"SetComputeUnitPriceInstructionData"}),t=>({...t,discriminator:3}))}ku.getSetComputeUnitPriceInstructionDataSerializer=Xq;function Vpe(t,e){let r=t.programs.getPublicKey("splComputeBudget","ComputeBudget111111111111111111111111111111"),i={},a={...e},n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Wpe.getAccountMetasAndSigners)(n,"programId",r),l=Xq().serialize(a),d=0;return(0,qpe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}ku.setComputeUnitPrice=Vpe});var rW=b(Eu=>{"use strict";Object.defineProperty(Eu,"__esModule",{value:!0});Eu.syncNative=Eu.getSyncNativeInstructionDataSerializer=void 0;var Fpe=F(),MA=W(),Kpe=Ae();function tW(){return(0,MA.mapSerializer)((0,MA.struct)([["discriminator",(0,MA.u8)()]],{description:"SyncNativeInstructionData"}),t=>({...t,discriminator:17}))}Eu.getSyncNativeInstructionDataSerializer=tW;function Lpe(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={account:{index:0,isWritable:!0,value:e.account??null}},a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,Kpe.getAccountMetasAndSigners)(a,"programId",r),o=tW().serialize({}),l=0;return(0,Fpe.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}Eu.syncNative=Lpe});var aW=b(Pu=>{"use strict";Object.defineProperty(Pu,"__esModule",{value:!0});Pu.thawToken=Pu.getThawTokenInstructionDataSerializer=void 0;var Upe=F(),DA=W(),jpe=Ae();function iW(){return(0,DA.mapSerializer)((0,DA.struct)([["discriminator",(0,DA.u8)()]],{description:"ThawTokenInstructionData"}),t=>({...t,discriminator:11}))}Pu.getThawTokenInstructionDataSerializer=iW;function Hpe(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={account:{index:0,isWritable:!0,value:e.account??null},mint:{index:1,isWritable:!1,value:e.mint??null},owner:{index:2,isWritable:!1,value:e.owner??null}},a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,jpe.getAccountMetasAndSigners)(a,"programId",r),o=iW().serialize({}),l=0;return(0,Upe.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}Pu.thawToken=Hpe});var sW=b(Tu=>{"use strict";Object.defineProperty(Tu,"__esModule",{value:!0});Tu.transferAllSol=Tu.getTransferAllSolInstructionDataSerializer=void 0;var $pe=F(),RA=W(),Gpe=Ae();function nW(){return(0,RA.mapSerializer)((0,RA.struct)([["discriminator",(0,RA.u8)()]],{description:"TransferAllSolInstructionData"}),t=>({...t,discriminator:1}))}Tu.getTransferAllSolInstructionDataSerializer=nW;function Zpe(t,e){let r=t.programs.getPublicKey("mplSystemExtras","SysExL2WDyJi9aRZrXorrjHJut3JwHQ7R9bTyctbNNG"),i={source:{index:0,isWritable:!0,value:e.source??null},destination:{index:1,isWritable:!0,value:e.destination??null},systemProgram:{index:2,isWritable:!1,value:e.systemProgram??null}};i.source.value||(i.source.value=t.identity),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1);let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,Gpe.getAccountMetasAndSigners)(a,"programId",r),o=nW().serialize({}),l=0;return(0,$pe.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}Tu.transferAllSol=Zpe});var dW=b(zu=>{"use strict";Object.defineProperty(zu,"__esModule",{value:!0});zu.transferSol=zu.getTransferSolInstructionDataSerializer=void 0;var oW=F(),A5=W(),Jpe=Ae();function lW(){return(0,A5.mapSerializer)((0,A5.struct)([["discriminator",(0,A5.u32)()],["amount",(0,oW.mapAmountSerializer)((0,A5.u64)(),"SOL",9)]],{description:"TransferSolInstructionData"}),t=>({...t,discriminator:2}))}zu.getTransferSolInstructionDataSerializer=lW;function Ype(t,e){let r=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i={source:{index:0,isWritable:!0,value:e.source??null},destination:{index:1,isWritable:!0,value:e.destination??null}},a={...e};i.source.value||(i.source.value=t.identity);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Jpe.getAccountMetasAndSigners)(n,"programId",r),l=lW().serialize(a),d=0;return(0,oW.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}zu.transferSol=Ype});var cW=b(Iu=>{"use strict";Object.defineProperty(Iu,"__esModule",{value:!0});Iu.transferTokens=Iu.getTransferTokensInstructionDataSerializer=void 0;var Qpe=F(),_5=W(),Xpe=Ae();function uW(){return(0,_5.mapSerializer)((0,_5.struct)([["discriminator",(0,_5.u8)()],["amount",(0,_5.u64)()]],{description:"TransferTokensInstructionData"}),t=>({...t,discriminator:3}))}Iu.getTransferTokensInstructionDataSerializer=uW;function e0e(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={source:{index:0,isWritable:!0,value:e.source??null},destination:{index:1,isWritable:!0,value:e.destination??null},authority:{index:2,isWritable:!1,value:e.authority??null}},a={...e};i.authority.value||(i.authority.value=t.identity);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Xpe.getAccountMetasAndSigners)(n,"programId",r),l=uW().serialize(a),d=0;return(0,Qpe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Iu.transferTokens=e0e});var mW=b(Mu=>{"use strict";Object.defineProperty(Mu,"__esModule",{value:!0});Mu.transferTokensChecked=Mu.getTransferTokensCheckedInstructionDataSerializer=void 0;var t0e=F(),sf=W(),r0e=Ae();function pW(){return(0,sf.mapSerializer)((0,sf.struct)([["discriminator",(0,sf.u8)()],["amount",(0,sf.u64)()],["decimals",(0,sf.u8)()]],{description:"TransferTokensCheckedInstructionData"}),t=>({...t,discriminator:12}))}Mu.getTransferTokensCheckedInstructionDataSerializer=pW;function i0e(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={source:{index:0,isWritable:!0,value:e.source??null},mint:{index:1,isWritable:!1,value:e.mint??null},destination:{index:2,isWritable:!0,value:e.destination??null},authority:{index:3,isWritable:!1,value:e.authority??null}},a={...e};i.authority.value||(i.authority.value=t.identity);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,r0e.getAccountMetasAndSigners)(n,"programId",r),l=pW().serialize(a),d=0;return(0,t0e.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Mu.transferTokensChecked=i0e});var hW=b(Du=>{"use strict";Object.defineProperty(Du,"__esModule",{value:!0});Du.uiAmountToAmount=Du.getUiAmountToAmountInstructionDataSerializer=void 0;var a0e=F(),k5=W(),n0e=Ae();function fW(){return(0,k5.mapSerializer)((0,k5.struct)([["discriminator",(0,k5.u8)()],["uiAmount",(0,k5.u64)()]],{description:"UiAmountToAmountInstructionData"}),t=>({...t,discriminator:24}))}Du.getUiAmountToAmountInstructionDataSerializer=fW;function s0e(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={mint:{index:0,isWritable:!1,value:e.mint??null}},a={...e},n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,n0e.getAccountMetasAndSigners)(n,"programId",r),l=fW().serialize(a),d=0;return(0,a0e.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Du.uiAmountToAmount=s0e});var gW=b(be=>{"use strict";var o0e=be&&be.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),Ee=be&&be.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&o0e(e,t,r)};Object.defineProperty(be,"__esModule",{value:!0});Ee(MN(),be);Ee(RN(),be);Ee(CN(),be);Ee(NN(),be);Ee(WN(),be);Ee(FN(),be);Ee(LN(),be);Ee(jN(),be);Ee($N(),be);Ee(JN(),be);Ee(tq(),be);Ee(aq(),be);Ee(nq(),be);Ee(oq(),be);Ee(dq(),be);Ee(cq(),be);Ee(mq(),be);Ee(hq(),be);Ee(yq(),be);Ee(vq(),be);Ee(xq(),be);Ee(_q(),be);Ee(Pq(),be);Ee(zq(),be);Ee(Dq(),be);Ee(Cq(),be);Ee(Nq(),be);Ee(Wq(),be);Ee(Fq(),be);Ee(Kq(),be);Ee(Uq(),be);Ee(Hq(),be);Ee(Gq(),be);Ee(Jq(),be);Ee(Qq(),be);Ee(eW(),be);Ee(rW(),be);Ee(aW(),be);Ee(sW(),be);Ee(dW(),be);Ee(cW(),be);Ee(mW(),be);Ee(hW(),be)});var bW=b(oa=>{"use strict";Object.defineProperty(oa,"__esModule",{value:!0});oa.getMplSystemExtrasProgramId=oa.getMplSystemExtrasProgram=oa.createMplSystemExtrasProgram=oa.MPL_SYSTEM_EXTRAS_PROGRAM_ID=void 0;var yW=gn();oa.MPL_SYSTEM_EXTRAS_PROGRAM_ID="SysExL2WDyJi9aRZrXorrjHJut3JwHQ7R9bTyctbNNG";function l0e(){return{name:"mplSystemExtras",publicKey:oa.MPL_SYSTEM_EXTRAS_PROGRAM_ID,getErrorFromCode(t,e){return(0,yW.getMplSystemExtrasErrorFromCode)(t,this,e)},getErrorFromName(t,e){return(0,yW.getMplSystemExtrasErrorFromName)(t,this,e)},isOnCluster(){return!0}}}oa.createMplSystemExtrasProgram=l0e;function d0e(t,e){return t.programs.get("mplSystemExtras",e)}oa.getMplSystemExtrasProgram=d0e;function u0e(t,e){return t.programs.getPublicKey("mplSystemExtras",oa.MPL_SYSTEM_EXTRAS_PROGRAM_ID,e)}oa.getMplSystemExtrasProgramId=u0e});var SW=b(la=>{"use strict";Object.defineProperty(la,"__esModule",{value:!0});la.getMplTokenExtrasProgramId=la.getMplTokenExtrasProgram=la.createMplTokenExtrasProgram=la.MPL_TOKEN_EXTRAS_PROGRAM_ID=void 0;var vW=gn();la.MPL_TOKEN_EXTRAS_PROGRAM_ID="TokExjvjJmhKaRBShsBAsbSvEWMA1AgUNK7ps4SAc2p";function c0e(){return{name:"mplTokenExtras",publicKey:la.MPL_TOKEN_EXTRAS_PROGRAM_ID,getErrorFromCode(t,e){return(0,vW.getMplTokenExtrasErrorFromCode)(t,this,e)},getErrorFromName(t,e){return(0,vW.getMplTokenExtrasErrorFromName)(t,this,e)},isOnCluster(){return!0}}}la.createMplTokenExtrasProgram=c0e;function p0e(t,e){return t.programs.get("mplTokenExtras",e)}la.getMplTokenExtrasProgram=p0e;function m0e(t,e){return t.programs.getPublicKey("mplTokenExtras",la.MPL_TOKEN_EXTRAS_PROGRAM_ID,e)}la.getMplTokenExtrasProgramId=m0e});var xW=b(da=>{"use strict";Object.defineProperty(da,"__esModule",{value:!0});da.getSplAddressLookupTableProgramId=da.getSplAddressLookupTableProgram=da.createSplAddressLookupTableProgram=da.SPL_ADDRESS_LOOKUP_TABLE_PROGRAM_ID=void 0;var wW=gn();da.SPL_ADDRESS_LOOKUP_TABLE_PROGRAM_ID="AddressLookupTab1e1111111111111111111111111";function f0e(){return{name:"splAddressLookupTable",publicKey:da.SPL_ADDRESS_LOOKUP_TABLE_PROGRAM_ID,getErrorFromCode(t,e){return(0,wW.getSplAddressLookupTableErrorFromCode)(t,this,e)},getErrorFromName(t,e){return(0,wW.getSplAddressLookupTableErrorFromName)(t,this,e)},isOnCluster(){return!0}}}da.createSplAddressLookupTableProgram=f0e;function h0e(t,e){return t.programs.get("splAddressLookupTable",e)}da.getSplAddressLookupTableProgram=h0e;function g0e(t,e){return t.programs.getPublicKey("splAddressLookupTable",da.SPL_ADDRESS_LOOKUP_TABLE_PROGRAM_ID,e)}da.getSplAddressLookupTableProgramId=g0e});var _W=b(ua=>{"use strict";Object.defineProperty(ua,"__esModule",{value:!0});ua.getSplAssociatedTokenProgramId=ua.getSplAssociatedTokenProgram=ua.createSplAssociatedTokenProgram=ua.SPL_ASSOCIATED_TOKEN_PROGRAM_ID=void 0;var AW=gn();ua.SPL_ASSOCIATED_TOKEN_PROGRAM_ID="ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";function y0e(){return{name:"splAssociatedToken",publicKey:ua.SPL_ASSOCIATED_TOKEN_PROGRAM_ID,getErrorFromCode(t,e){return(0,AW.getSplAssociatedTokenErrorFromCode)(t,this,e)},getErrorFromName(t,e){return(0,AW.getSplAssociatedTokenErrorFromName)(t,this,e)},isOnCluster(){return!0}}}ua.createSplAssociatedTokenProgram=y0e;function b0e(t,e){return t.programs.get("splAssociatedToken",e)}ua.getSplAssociatedTokenProgram=b0e;function v0e(t,e){return t.programs.getPublicKey("splAssociatedToken",ua.SPL_ASSOCIATED_TOKEN_PROGRAM_ID,e)}ua.getSplAssociatedTokenProgramId=v0e});var EW=b(ca=>{"use strict";Object.defineProperty(ca,"__esModule",{value:!0});ca.getSplComputeBudgetProgramId=ca.getSplComputeBudgetProgram=ca.createSplComputeBudgetProgram=ca.SPL_COMPUTE_BUDGET_PROGRAM_ID=void 0;var kW=gn();ca.SPL_COMPUTE_BUDGET_PROGRAM_ID="ComputeBudget111111111111111111111111111111";function S0e(){return{name:"splComputeBudget",publicKey:ca.SPL_COMPUTE_BUDGET_PROGRAM_ID,getErrorFromCode(t,e){return(0,kW.getSplComputeBudgetErrorFromCode)(t,this,e)},getErrorFromName(t,e){return(0,kW.getSplComputeBudgetErrorFromName)(t,this,e)},isOnCluster(){return!0}}}ca.createSplComputeBudgetProgram=S0e;function w0e(t,e){return t.programs.get("splComputeBudget",e)}ca.getSplComputeBudgetProgram=w0e;function x0e(t,e){return t.programs.getPublicKey("splComputeBudget",ca.SPL_COMPUTE_BUDGET_PROGRAM_ID,e)}ca.getSplComputeBudgetProgramId=x0e});var TW=b(pa=>{"use strict";Object.defineProperty(pa,"__esModule",{value:!0});pa.getSplMemoProgramId=pa.getSplMemoProgram=pa.createSplMemoProgram=pa.SPL_MEMO_PROGRAM_ID=void 0;var PW=gn();pa.SPL_MEMO_PROGRAM_ID="Memo1UhkJRfHyvLMcVucJwxXeuD728EqVDDwQDxFMNo";function A0e(){return{name:"splMemo",publicKey:pa.SPL_MEMO_PROGRAM_ID,getErrorFromCode(t,e){return(0,PW.getSplMemoErrorFromCode)(t,this,e)},getErrorFromName(t,e){return(0,PW.getSplMemoErrorFromName)(t,this,e)},isOnCluster(){return!0}}}pa.createSplMemoProgram=A0e;function _0e(t,e){return t.programs.get("splMemo",e)}pa.getSplMemoProgram=_0e;function k0e(t,e){return t.programs.getPublicKey("splMemo",pa.SPL_MEMO_PROGRAM_ID,e)}pa.getSplMemoProgramId=k0e});var IW=b(ma=>{"use strict";Object.defineProperty(ma,"__esModule",{value:!0});ma.getSplSystemProgramId=ma.getSplSystemProgram=ma.createSplSystemProgram=ma.SPL_SYSTEM_PROGRAM_ID=void 0;var zW=gn();ma.SPL_SYSTEM_PROGRAM_ID="11111111111111111111111111111111";function E0e(){return{name:"splSystem",publicKey:ma.SPL_SYSTEM_PROGRAM_ID,getErrorFromCode(t,e){return(0,zW.getSplSystemErrorFromCode)(t,this,e)},getErrorFromName(t,e){return(0,zW.getSplSystemErrorFromName)(t,this,e)},isOnCluster(){return!0}}}ma.createSplSystemProgram=E0e;function P0e(t,e){return t.programs.get("splSystem",e)}ma.getSplSystemProgram=P0e;function T0e(t,e){return t.programs.getPublicKey("splSystem",ma.SPL_SYSTEM_PROGRAM_ID,e)}ma.getSplSystemProgramId=T0e});var DW=b(fa=>{"use strict";Object.defineProperty(fa,"__esModule",{value:!0});fa.getSplTokenProgramId=fa.getSplTokenProgram=fa.createSplTokenProgram=fa.SPL_TOKEN_PROGRAM_ID=void 0;var MW=gn();fa.SPL_TOKEN_PROGRAM_ID="TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA";function z0e(){return{name:"splToken",publicKey:fa.SPL_TOKEN_PROGRAM_ID,getErrorFromCode(t,e){return(0,MW.getSplTokenErrorFromCode)(t,this,e)},getErrorFromName(t,e){return(0,MW.getSplTokenErrorFromName)(t,this,e)},isOnCluster(){return!0}}}fa.createSplTokenProgram=z0e;function I0e(t,e){return t.programs.get("splToken",e)}fa.getSplTokenProgram=I0e;function M0e(t,e){return t.programs.getPublicKey("splToken",fa.SPL_TOKEN_PROGRAM_ID,e)}fa.getSplTokenProgramId=M0e});var RW=b(Ei=>{"use strict";var D0e=Ei&&Ei.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),Wo=Ei&&Ei.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&D0e(e,t,r)};Object.defineProperty(Ei,"__esModule",{value:!0});Wo(bW(),Ei);Wo(SW(),Ei);Wo(xW(),Ei);Wo(_W(),Ei);Wo(EW(),Ei);Wo(TW(),Ei);Wo(IW(),Ei);Wo(DW(),Ei)});var rs=b(ha=>{"use strict";var R0e=ha&&ha.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),Ru=ha&&ha.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&R0e(e,t,r)};Object.defineProperty(ha,"__esModule",{value:!0});Ru(a5(),ha);Ru(gn(),ha);Ru(gW(),ha);Ru(RW(),ha);Ru(Ae(),ha);Ru(r5(),ha)});var BW=b(E5=>{"use strict";Object.defineProperty(E5,"__esModule",{value:!0});E5.createLut=void 0;var B0e=F(),BA=rs();function C0e(t,e){let{addresses:r,...i}=e,a=e.authority??t.identity,n=e.address??(0,BA.findAddressLookupTablePda)(t,{authority:a.publicKey,recentSlot:e.recentSlot});return[(0,B0e.transactionBuilder)().add((0,BA.createEmptyLut)(t,i)).add((0,BA.extendLut)(t,{address:n,authority:a,addresses:r,payer:e.payer})),{publicKey:n[0],addresses:r}]}E5.createLut=C0e});var CW=b(P5=>{"use strict";Object.defineProperty(P5,"__esModule",{value:!0});P5.createLutForTransactionBuilder=void 0;var CA=F(),OA=rs(),O0e=(t,e,r,i)=>{let a=i??t.identity,n=(0,CA.uniquePublicKeys)([e.getFeePayer(t).publicKey,...e.items.flatMap(({instruction:d})=>d.keys.filter(u=>u.isSigner).map(u=>u.pubkey))]),s=(0,CA.uniquePublicKeys)(e.items.flatMap(({instruction:d})=>[d.programId,...d.keys.map(u=>u.pubkey)])).filter(d=>!n.includes(d)),o=[],l=[];return(0,CA.chunk)(s,256).forEach((d,u)=>{let c=r-u,[w]=(0,OA.findAddressLookupTablePda)(t,{authority:a.publicKey,recentSlot:c});o.push({publicKey:w,addresses:d}),l.push(...N0e(t,(0,OA.createEmptyLut)(t,{recentSlot:c}),w,a,d))}),[l,o]};P5.createLutForTransactionBuilder=O0e;function N0e(t,e,r,i,a){let n=[],s=[],o=e;return a.forEach(l=>{let d=e.add((0,OA.extendLut)(t,{address:r,addresses:[...s,l],authority:i}));d.fitsInOneTransaction(t)?(s.push(l),o=d):(s=[l],n.push(o),e=e.empty(),o=e)}),s.length>0&&n.push(o),n}});var qA=b(T5=>{"use strict";Object.defineProperty(T5,"__esModule",{value:!0});T5.createMint=void 0;var OW=F(),NA=rs();function q0e(t,e){return(0,OW.transactionBuilder)().add((0,NA.createAccountWithRent)(t,{newAccount:e.mint,space:(0,NA.getMintSize)(),programId:t.programs.get("splToken").publicKey})).add((0,NA.initializeMint2)(t,{mint:e.mint.publicKey,decimals:e.decimals??0,mintAuthority:e.mintAuthority??t.identity.publicKey,freezeAuthority:e.freezeAuthority===void 0?(0,OW.some)(t.identity.publicKey):e.freezeAuthority}))}T5.createMint=q0e});var qW=b(z5=>{"use strict";Object.defineProperty(z5,"__esModule",{value:!0});z5.createMintWithAssociatedToken=void 0;var WA=F(),W0e=qA(),NW=rs(),V0e=tu();function F0e(t,e){let r={mint:e.mint.publicKey,owner:e.owner??t.identity.publicKey},i=e.amount??0,a=(0,WA.transactionBuilder)().add((0,W0e.createMint)(t,{...e,mintAuthority:e.mintAuthority?(0,WA.publicKey)(e.mintAuthority,!1):void 0})).add((0,NW.createAssociatedToken)(t,r));return i>0&&(a=a.add((0,NW.mintTokensTo)(t,{amount:i,mint:e.mint.publicKey,token:(0,V0e.findAssociatedTokenPda)(t,r),mintAuthority:e.mintAuthority&&(0,WA.isSigner)(e.mintAuthority)?e.mintAuthority:void 0}))),a}z5.createMintWithAssociatedToken=F0e});var WW=b(I5=>{"use strict";Object.defineProperty(I5,"__esModule",{value:!0});I5.createToken=void 0;var K0e=F(),VA=rs();function L0e(t,e){return(0,K0e.transactionBuilder)().add((0,VA.createAccountWithRent)(t,{newAccount:e.token,space:(0,VA.getTokenSize)(),programId:t.programs.get("splToken").publicKey})).add((0,VA.initializeToken3)(t,{account:e.token.publicKey,mint:e.mint,owner:e.owner??t.identity.publicKey}))}I5.createToken=L0e});var FW=b(Vr=>{"use strict";Object.defineProperty(Vr,"__esModule",{value:!0});Vr.fetchTokensByOwnerAndMint=Vr.fetchTokensByOwner=Vr.fetchAllMintByOwner=Vr.fetchAllMintPublicKeyByOwner=Vr.fetchAllTokenByOwnerAndMint=Vr.fetchAllTokenByOwner=void 0;var of=F(),Bu=W(),lf=rs(),VW=async(t,e,r,i={})=>{let a=t.programs.get("splToken").publicKey,n=i.mint?{mint:i.mint}:{programId:a};return(await t.rpc.call("getTokenAccountsByOwner",[e,n],{...i,extra:{encoding:"base64"}})).value.filter(({account:o})=>{let l=Bu.base64.serialize(o.data[0]),d=(0,Bu.u64)().deserialize(l.slice(64,72))[0];return r(d)})},U0e=async(t,e,r={})=>{let{mint:i,tokenStrategy:a="getProgramAccounts",tokenAmountFilter:n=l=>l>0,...s}=r;if(a==="getTokenAccountsByOwner")return(await VW(t,e,n,{mint:i,...s})).map(({pubkey:d,account:u})=>(0,lf.deserializeToken)({...u,data:Bu.base64.serialize(u.data[0]),publicKey:(0,of.publicKey)(d),owner:(0,of.publicKey)(u.owner),lamports:(0,of.lamports)(u.lamports)}));let o=(0,lf.getTokenGpaBuilder)(t).whereField("owner",e);return i&&(o=o.whereField("mint",i)),(await o.get()).filter(l=>{let d=(0,Bu.u64)().deserialize(l.data.slice(64,72))[0];return n(d)}).map(l=>(0,lf.deserializeToken)(l))};Vr.fetchAllTokenByOwner=U0e;var j0e=(t,e,r,i={})=>(0,Vr.fetchAllTokenByOwner)(t,e,{...i,mint:r});Vr.fetchAllTokenByOwnerAndMint=j0e;var H0e=async(t,e,r={})=>{let{tokenStrategy:i="getProgramAccounts",tokenAmountFilter:a=s=>s>0,...n}=r;return i==="getTokenAccountsByOwner"?(await VW(t,e,a,n)).map(({account:o})=>(0,of.publicKey)(Bu.base64.serialize(o.data[0]).slice(0,32))):(await(0,lf.getTokenGpaBuilder)(t).slice(0,72).whereField("owner",e).get()).filter(s=>{let o=(0,Bu.u64)().deserialize(s.data.slice(64,72))[0];return a(o)}).map(s=>(0,of.publicKey)(s.data.slice(0,32)))};Vr.fetchAllMintPublicKeyByOwner=H0e;var $0e=async(t,e,r={})=>{let{tokenStrategy:i,tokenAmountFilter:a,...n}=r,s=await(0,Vr.fetchAllMintPublicKeyByOwner)(t,e,r);return(0,lf.fetchAllMint)(t,s,n)};Vr.fetchAllMintByOwner=$0e;Vr.fetchTokensByOwner=Vr.fetchAllTokenByOwner;Vr.fetchTokensByOwnerAndMint=Vr.fetchAllTokenByOwnerAndMint});var LW=b(M5=>{"use strict";Object.defineProperty(M5,"__esModule",{value:!0});M5.findLargestTokensByMint=void 0;var KW=F(),G0e=async(t,e,r={})=>(await t.rpc.call("getTokenLargestAccounts",[e],r)).value.map(({address:a,amount:n,decimals:s})=>({publicKey:(0,KW.publicKey)(a),amount:(0,KW.createAmount)(n,"splToken",s)}));M5.findLargestTokensByMint=G0e});var UW=b(Ll=>{"use strict";Object.defineProperty(Ll,"__esModule",{value:!0});Ll.mplEssentials=Ll.mplToolbox=void 0;var Z0e=F(),Vo=rs(),J0e=()=>({install(t){t.programs.add((0,Vo.createSplSystemProgram)(),!1),t.programs.add((0,Vo.createSplMemoProgram)(),!1),t.programs.add((0,Vo.createSplTokenProgram)(),!1),t.programs.add((0,Vo.createSplAssociatedTokenProgram)(),!1),t.programs.add((0,Vo.createSplAddressLookupTableProgram)(),!1),t.programs.add((0,Vo.createMplSystemExtrasProgram)(),!1),t.programs.add((0,Vo.createMplTokenExtrasProgram)(),!1),t.programs.add({...(0,Vo.createSplTokenProgram)(),name:"splToken2022",publicKey:(0,Z0e.publicKey)("TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb")},!1)}});Ll.mplToolbox=J0e;Ll.mplEssentials=Ll.mplToolbox});var jW=b(D5=>{"use strict";Object.defineProperty(D5,"__esModule",{value:!0});D5.getSysvar=void 0;var bn=F(),Y0e=t=>{switch(t){case"clock":return(0,bn.publicKey)("SysvarC1ock11111111111111111111111111111111");case"epochSchedule":return(0,bn.publicKey)("SysvarEpochSchedu1e111111111111111111111111");case"instructions":return(0,bn.publicKey)("Sysvar1nstructions1111111111111111111111111");case"recentBlockhashes":return(0,bn.publicKey)("SysvarRecentB1ockHashes11111111111111111111");case"rent":return(0,bn.publicKey)("SysvarRent111111111111111111111111111111111");case"rewards":return(0,bn.publicKey)("SysvarRewards111111111111111111111111111111");case"slotHashes":return(0,bn.publicKey)("SysvarS1otHashes111111111111111111111111111");case"slotHistory":return(0,bn.publicKey)("SysvarS1otHistory11111111111111111111111111");case"stakeHistory":return(0,bn.publicKey)("SysvarStakeHistory1111111111111111111111111");default:throw new bn.SdkError(`Unknown sysvar: ${t}`)}};D5.getSysvar=Y0e});var _t=b(Qr=>{"use strict";var Q0e=Qr&&Qr.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),Va=Qr&&Qr.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Q0e(e,t,r)};Object.defineProperty(Qr,"__esModule",{value:!0});Va(rs(),Qr);Va(tu(),Qr);Va(BW(),Qr);Va(CW(),Qr);Va(qA(),Qr);Va(qW(),Qr);Va(WW(),Qr);Va(FW(),Qr);Va(LW(),Qr);Va(UW(),Qr);Va(jW(),Qr)});var R5=b(rt=>{"use strict";Object.defineProperty(rt,"__esModule",{value:!0});rt.isProgrammable=rt.isNonFungible=rt.isFungible=rt.deserializeDigitalAsset=rt.fetchAllMetadataByOwner=rt.fetchAllDigitalAssetByOwner=rt.fetchAllDigitalAssetByUpdateAuthority=rt.fetchAllDigitalAssetByVerifiedCollection=rt.fetchAllDigitalAssetByCreator=rt.fetchAllDigitalAsset=rt.fetchDigitalAssetByMetadata=rt.fetchDigitalAsset=void 0;var FA=_t(),Ul=F(),X0e=vm(),yr=To(),eme=326,tme=34,rme=[366,400,434,468,502],ime=1,ame=2;async function HW(t,e,r){let[i]=(0,yr.findMetadataPda)(t,{mint:e}),[a]=(0,yr.findMasterEditionPda)(t,{mint:e}),[n,s,o]=await t.rpc.getAccounts([e,i,a],r);return(0,Ul.assertAccountExists)(n,"Mint"),(0,Ul.assertAccountExists)(s,"Metadata"),KA(n,s,o.exists?o:void 0)}rt.fetchDigitalAsset=HW;async function nme(t,e,r){let i=await(0,yr.fetchMetadata)(t,e,r);return HW(t,i.mint,r)}rt.fetchDigitalAssetByMetadata=nme;async function df(t,e,r){let i=e.flatMap(n=>[n,(0,yr.findMetadataPda)(t,{mint:n})[0],(0,yr.findMasterEditionPda)(t,{mint:n})[0]]),a=await t.rpc.getAccounts(i,r);return(0,Ul.chunk)(a,3).flatMap(([n,s,o])=>{try{return(0,Ul.assertAccountExists)(n,"Mint"),(0,Ul.assertAccountExists)(s,"Metadata"),[KA(n,s,o.exists?o:void 0)]}catch{return[]}})}rt.fetchAllDigitalAsset=df;async function sme(t,e,r){let i=(r?.position??1)-1,a=await(0,yr.getMetadataGpaBuilder)(t).where(eme+i*tme,e).sliceField("mint").getDataAsPublicKeys();return df(t,a,r)}rt.fetchAllDigitalAssetByCreator=sme;async function ome(t,e,r){let i=await Promise.all(rme.map(async a=>(0,yr.getMetadataGpaBuilder)(t).where(a,1).where(a+ime,1).where(a+ame,e).sliceField("mint").getDataAsPublicKeys()));return df(t,i.flat(),r)}rt.fetchAllDigitalAssetByVerifiedCollection=ome;async function lme(t,e,r){let i=await(0,yr.getMetadataGpaBuilder)(t).whereField("updateAuthority",e).sliceField("mint").getDataAsPublicKeys();return df(t,i,r)}rt.fetchAllDigitalAssetByUpdateAuthority=lme;async function dme(t,e,r){let i=await(0,FA.fetchAllMintPublicKeyByOwner)(t,e,r);return df(t,i,r)}rt.fetchAllDigitalAssetByOwner=dme;async function ume(t,e,r){let a=(await(0,FA.fetchAllMintPublicKeyByOwner)(t,e,r)).map(s=>(0,yr.findMetadataPda)(t,{mint:s})[0]);return(await t.rpc.getAccounts(a,r)).flatMap(s=>{try{return(0,Ul.assertAccountExists)(s,"Metadata"),[(0,yr.deserializeMetadata)(s)]}catch{return[]}})}rt.fetchAllMetadataByOwner=ume;function KA(t,e,r){let i=(0,FA.deserializeMint)(t),a=(0,yr.deserializeMetadata)(e),n=(0,Ul.unwrapOption)(a.tokenStandard);if(n&&(0,rt.isNonFungible)(n)&&!r)throw new Error("Edition account must be provided for non-fungible assets.");let s={publicKey:i.publicKey,mint:i,metadata:a};if(!r)return s;let o=(0,yr.getKeySerializer)().deserialize(r.data)[0],l;if(o===yr.Key.MasterEditionV1||o===yr.Key.MasterEditionV2)l={isOriginal:!0,...(0,yr.deserializeMasterEdition)(r)};else if(o===yr.Key.EditionV1)l={isOriginal:!1,...(0,yr.deserializeEdition)(r)};else throw new X0e.TokenMetadataError(`Invalid key "${o}" for edition account.`);return{...s,edition:l}}rt.deserializeDigitalAsset=KA;var cme=t=>t===yr.TokenStandard.Fungible||t===yr.TokenStandard.FungibleAsset;rt.isFungible=cme;var pme=t=>!(0,rt.isFungible)(t);rt.isNonFungible=pme;var mme=t=>t===yr.TokenStandard.ProgrammableNonFungible;rt.isProgrammable=mme});var $W=b(li=>{"use strict";Object.defineProperty(li,"__esModule",{value:!0});li.resolveOptionalTokenOwner=li.resolveCreateV1Bytes=li.resolveCreators=li.resolvePrintSupply=li.resolveDecimals=li.resolveIsNonFungible=li.resolveCollectionDetails=void 0;var fme=_t(),is=F(),B5=R5(),jl=To(),hme=679,gme=282,yme=(t,e,r,...i)=>r.isCollection?(0,is.some)((0,jl.collectionDetails)("V1",{size:0})):(0,is.none)();li.resolveCollectionDetails=yme;var bme=(t,e,r,...i)=>(0,B5.isNonFungible)((0,jl.expectSome)(r.tokenStandard));li.resolveIsNonFungible=bme;var vme=(t,e,r,...i)=>(0,B5.isNonFungible)((0,jl.expectSome)(r.tokenStandard))?(0,is.none)():(0,is.some)(0);li.resolveDecimals=vme;var Sme=(t,e,r,...i)=>(0,B5.isNonFungible)((0,jl.expectSome)(r.tokenStandard))?(0,is.some)((0,jl.printSupply)("Zero")):(0,is.none)();li.resolvePrintSupply=Sme;var wme=(t,e,...r)=>(0,is.some)([{address:(0,jl.expectPublicKey)(e.authority.value),share:100,verified:!0}]);li.resolveCreators=wme;var xme=(t,e,r,...i)=>{let a=(0,fme.getMintSize)()+hme+2*is.ACCOUNT_HEADER_SIZE;return(0,B5.isNonFungible)((0,jl.expectSome)(r.tokenStandard))?a+gme+is.ACCOUNT_HEADER_SIZE:a};li.resolveCreateV1Bytes=xme;var Ame=(t,e,...r)=>e.token.value?{value:null}:{value:t.identity.publicKey};li.resolveOptionalTokenOwner=Ame});var We=b(as=>{"use strict";var _me=as&&as.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),LA=as&&as.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&_me(e,t,r)};Object.defineProperty(as,"__esModule",{value:!0});LA(XO(),as);LA(tN(),as);LA($W(),as)});var QW=b(kt=>{"use strict";Object.defineProperty(kt,"__esModule",{value:!0});kt.safeFetchMetadataDelegateRecordFromSeeds=kt.fetchMetadataDelegateRecordFromSeeds=kt.findMetadataDelegateRecordPda=kt.getMetadataDelegateRecordSize=kt.getMetadataDelegateRecordGpaBuilder=kt.safeFetchAllMetadataDelegateRecord=kt.fetchAllMetadataDelegateRecord=kt.safeFetchMetadataDelegateRecord=kt.fetchMetadataDelegateRecord=kt.deserializeMetadataDelegateRecord=kt.getMetadataDelegateRecordAccountDataSerializer=void 0;var Fo=F(),Pi=W(),kme=We(),GW=ie();function ZW(){return(0,Pi.struct)([["key",(0,GW.getKeySerializer)()],["bump",(0,Pi.u8)()],["mint",(0,Pi.publicKey)()],["delegate",(0,Pi.publicKey)()],["updateAuthority",(0,Pi.publicKey)()]],{description:"MetadataDelegateRecordAccountData"})}kt.getMetadataDelegateRecordAccountDataSerializer=ZW;function Cu(t){return(0,Fo.deserializeAccount)(t,ZW())}kt.deserializeMetadataDelegateRecord=Cu;async function JW(t,e,r){let i=await t.rpc.getAccount((0,Fo.publicKey)(e,!1),r);return(0,Fo.assertAccountExists)(i,"MetadataDelegateRecord"),Cu(i)}kt.fetchMetadataDelegateRecord=JW;async function YW(t,e,r){let i=await t.rpc.getAccount((0,Fo.publicKey)(e,!1),r);return i.exists?Cu(i):null}kt.safeFetchMetadataDelegateRecord=YW;async function Eme(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Fo.publicKey)(a,!1)),r)).map(a=>((0,Fo.assertAccountExists)(a,"MetadataDelegateRecord"),Cu(a)))}kt.fetchAllMetadataDelegateRecord=Eme;async function Pme(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Fo.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>Cu(a))}kt.safeFetchAllMetadataDelegateRecord=Pme;function Tme(t){let e=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return(0,Fo.gpaBuilder)(t,e).registerFields({key:[0,(0,GW.getKeySerializer)()],bump:[1,(0,Pi.u8)()],mint:[2,(0,Pi.publicKey)()],delegate:[34,(0,Pi.publicKey)()],updateAuthority:[66,(0,Pi.publicKey)()]}).deserializeUsing(r=>Cu(r))}kt.getMetadataDelegateRecordGpaBuilder=Tme;function zme(){return 98}kt.getMetadataDelegateRecordSize=zme;function UA(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return t.eddsa.findPda(r,[(0,Pi.string)({size:"variable"}).serialize("metadata"),(0,Pi.publicKey)().serialize(r),(0,Pi.publicKey)().serialize(e.mint),(0,kme.getMetadataDelegateRoleSeedSerializer)().serialize(e.delegateRole),(0,Pi.publicKey)().serialize(e.updateAuthority),(0,Pi.publicKey)().serialize(e.delegate)])}kt.findMetadataDelegateRecordPda=UA;async function Ime(t,e,r){return JW(t,UA(t,e),r)}kt.fetchMetadataDelegateRecordFromSeeds=Ime;async function Mme(t,e,r){return YW(t,UA(t,e),r)}kt.safeFetchMetadataDelegateRecordFromSeeds=Mme});var eV=b(di=>{"use strict";Object.defineProperty(di,"__esModule",{value:!0});di.getTokenOwnedEscrowGpaBuilder=di.safeFetchAllTokenOwnedEscrow=di.fetchAllTokenOwnedEscrow=di.safeFetchTokenOwnedEscrow=di.fetchTokenOwnedEscrow=di.deserializeTokenOwnedEscrow=di.getTokenOwnedEscrowAccountDataSerializer=void 0;var Ko=F(),Ou=W(),Nu=ie();function XW(){return(0,Ou.mapSerializer)((0,Ou.struct)([["key",(0,Nu.getKeySerializer)()],["baseToken",(0,Ou.publicKey)()],["authority",(0,Nu.getEscrowAuthoritySerializer)()],["bump",(0,Ou.u8)()]],{description:"TokenOwnedEscrowAccountData"}),t=>({...t,key:Nu.Key.TokenOwnedEscrow}))}di.getTokenOwnedEscrowAccountDataSerializer=XW;function qu(t){return(0,Ko.deserializeAccount)(t,XW())}di.deserializeTokenOwnedEscrow=qu;async function Dme(t,e,r){let i=await t.rpc.getAccount((0,Ko.publicKey)(e,!1),r);return(0,Ko.assertAccountExists)(i,"TokenOwnedEscrow"),qu(i)}di.fetchTokenOwnedEscrow=Dme;async function Rme(t,e,r){let i=await t.rpc.getAccount((0,Ko.publicKey)(e,!1),r);return i.exists?qu(i):null}di.safeFetchTokenOwnedEscrow=Rme;async function Bme(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Ko.publicKey)(a,!1)),r)).map(a=>((0,Ko.assertAccountExists)(a,"TokenOwnedEscrow"),qu(a)))}di.fetchAllTokenOwnedEscrow=Bme;async function Cme(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Ko.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>qu(a))}di.safeFetchAllTokenOwnedEscrow=Cme;function Ome(t){let e=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return(0,Ko.gpaBuilder)(t,e).registerFields({key:[0,(0,Nu.getKeySerializer)()],baseToken:[1,(0,Ou.publicKey)()],authority:[33,(0,Nu.getEscrowAuthoritySerializer)()],bump:[null,(0,Ou.u8)()]}).deserializeUsing(r=>qu(r)).whereField("key",Nu.Key.TokenOwnedEscrow)}di.getTokenOwnedEscrowGpaBuilder=Ome});var aV=b(Et=>{"use strict";Object.defineProperty(Et,"__esModule",{value:!0});Et.safeFetchTokenRecordFromSeeds=Et.fetchTokenRecordFromSeeds=Et.findTokenRecordPda=Et.getTokenRecordSize=Et.getTokenRecordGpaBuilder=Et.safeFetchAllTokenRecord=Et.fetchAllTokenRecord=Et.safeFetchTokenRecord=Et.fetchTokenRecord=Et.deserializeTokenRecord=Et.getTokenRecordAccountDataSerializer=void 0;var Uo=F(),zt=W(),Lo=ie();function tV(){return(0,zt.mapSerializer)((0,zt.struct)([["key",(0,Lo.getKeySerializer)()],["bump",(0,zt.u8)()],["state",(0,Lo.getTokenStateSerializer)()],["ruleSetRevision",(0,zt.option)((0,zt.u64)())],["delegate",(0,zt.option)((0,zt.publicKey)())],["delegateRole",(0,zt.option)((0,Lo.getTokenDelegateRoleSerializer)())],["lockedTransfer",(0,zt.option)((0,zt.publicKey)())]],{description:"TokenRecordAccountData"}),t=>({...t,key:Lo.Key.TokenRecord}))}Et.getTokenRecordAccountDataSerializer=tV;function Wu(t){return(0,Uo.deserializeAccount)(t,tV())}Et.deserializeTokenRecord=Wu;async function rV(t,e,r){let i=await t.rpc.getAccount((0,Uo.publicKey)(e,!1),r);return(0,Uo.assertAccountExists)(i,"TokenRecord"),Wu(i)}Et.fetchTokenRecord=rV;async function iV(t,e,r){let i=await t.rpc.getAccount((0,Uo.publicKey)(e,!1),r);return i.exists?Wu(i):null}Et.safeFetchTokenRecord=iV;async function Nme(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Uo.publicKey)(a,!1)),r)).map(a=>((0,Uo.assertAccountExists)(a,"TokenRecord"),Wu(a)))}Et.fetchAllTokenRecord=Nme;async function qme(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Uo.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>Wu(a))}Et.safeFetchAllTokenRecord=qme;function Wme(t){let e=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return(0,Uo.gpaBuilder)(t,e).registerFields({key:[0,(0,Lo.getKeySerializer)()],bump:[1,(0,zt.u8)()],state:[2,(0,Lo.getTokenStateSerializer)()],ruleSetRevision:[3,(0,zt.option)((0,zt.u64)())],delegate:[null,(0,zt.option)((0,zt.publicKey)())],delegateRole:[null,(0,zt.option)((0,Lo.getTokenDelegateRoleSerializer)())],lockedTransfer:[null,(0,zt.option)((0,zt.publicKey)())]}).deserializeUsing(r=>Wu(r)).whereField("key",Lo.Key.TokenRecord)}Et.getTokenRecordGpaBuilder=Wme;function Vme(){return 80}Et.getTokenRecordSize=Vme;function jA(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return t.eddsa.findPda(r,[(0,zt.string)({size:"variable"}).serialize("metadata"),(0,zt.publicKey)().serialize(r),(0,zt.publicKey)().serialize(e.mint),(0,zt.string)({size:"variable"}).serialize("token_record"),(0,zt.publicKey)().serialize(e.token)])}Et.findTokenRecordPda=jA;async function Fme(t,e,r){return rV(t,jA(t,e),r)}Et.fetchTokenRecordFromSeeds=Fme;async function Kme(t,e,r){return iV(t,jA(t,e),r)}Et.safeFetchTokenRecordFromSeeds=Kme});var lV=b(Pt=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:!0});Pt.safeFetchUseAuthorityRecordFromSeeds=Pt.fetchUseAuthorityRecordFromSeeds=Pt.findUseAuthorityRecordPda=Pt.getUseAuthorityRecordSize=Pt.getUseAuthorityRecordGpaBuilder=Pt.safeFetchAllUseAuthorityRecord=Pt.fetchAllUseAuthorityRecord=Pt.safeFetchUseAuthorityRecord=Pt.fetchUseAuthorityRecord=Pt.deserializeUseAuthorityRecord=Pt.getUseAuthorityRecordAccountDataSerializer=void 0;var jo=F(),Fa=W(),C5=ie();function nV(){return(0,Fa.mapSerializer)((0,Fa.struct)([["key",(0,C5.getKeySerializer)()],["allowedUses",(0,Fa.u64)()],["bump",(0,Fa.u8)()]],{description:"UseAuthorityRecordAccountData"}),t=>({...t,key:C5.Key.UseAuthorityRecord}))}Pt.getUseAuthorityRecordAccountDataSerializer=nV;function Vu(t){return(0,jo.deserializeAccount)(t,nV())}Pt.deserializeUseAuthorityRecord=Vu;async function sV(t,e,r){let i=await t.rpc.getAccount((0,jo.publicKey)(e,!1),r);return(0,jo.assertAccountExists)(i,"UseAuthorityRecord"),Vu(i)}Pt.fetchUseAuthorityRecord=sV;async function oV(t,e,r){let i=await t.rpc.getAccount((0,jo.publicKey)(e,!1),r);return i.exists?Vu(i):null}Pt.safeFetchUseAuthorityRecord=oV;async function Lme(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,jo.publicKey)(a,!1)),r)).map(a=>((0,jo.assertAccountExists)(a,"UseAuthorityRecord"),Vu(a)))}Pt.fetchAllUseAuthorityRecord=Lme;async function Ume(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,jo.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>Vu(a))}Pt.safeFetchAllUseAuthorityRecord=Ume;function jme(t){let e=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return(0,jo.gpaBuilder)(t,e).registerFields({key:[0,(0,C5.getKeySerializer)()],allowedUses:[1,(0,Fa.u64)()],bump:[9,(0,Fa.u8)()]}).deserializeUsing(r=>Vu(r)).whereField("key",C5.Key.UseAuthorityRecord)}Pt.getUseAuthorityRecordGpaBuilder=jme;function Hme(){return 10}Pt.getUseAuthorityRecordSize=Hme;function HA(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return t.eddsa.findPda(r,[(0,Fa.string)({size:"variable"}).serialize("metadata"),(0,Fa.publicKey)().serialize(r),(0,Fa.publicKey)().serialize(e.mint),(0,Fa.string)({size:"variable"}).serialize("user"),(0,Fa.publicKey)().serialize(e.useAuthority)])}Pt.findUseAuthorityRecordPda=HA;async function $me(t,e,r){return sV(t,HA(t,e),r)}Pt.fetchUseAuthorityRecordFromSeeds=$me;async function Gme(t,e,r){return oV(t,HA(t,e),r)}Pt.safeFetchUseAuthorityRecordFromSeeds=Gme});var de=b(ui=>{"use strict";var Zme=ui&&ui.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),vn=ui&&ui.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Zme(e,t,r)};Object.defineProperty(ui,"__esModule",{value:!0});vn(RO(),ui);vn(CO(),ui);vn(WO(),ui);vn(UO(),ui);vn(GO(),ui);vn(QO(),ui);vn(QW(),ui);vn(eV(),ui);vn(aV(),ui);vn(lV(),ui)});var dV=b(A=>{"use strict";Object.defineProperty(A,"__esModule",{value:!0});A.ReservationAlreadyMadeError=A.ReservationNotSetError=A.ReservationDoesNotExistError=A.ReservationExistsError=A.ShareTotalMustBe100Error=A.NoBalanceInAccountForAuthorizationError=A.OwnerMismatchError=A.PrimarySaleCanOnlyBeFlippedToTrueError=A.InvalidBasisPointsError=A.CreatorNotFoundError=A.NoCreatorsPresentOnMetadataError=A.MustBeOneOfCreatorsError=A.CreatorsMustBeAtleastOneError=A.CreatorsTooLongError=A.DisabledError=A.AuthorizationTokenAccountOwnerMismatchError=A.PrintingMintAuthorizationAccountMismatchError=A.NotEnoughTokensError=A.TokenAccountMintMismatchV2Error=A.TokenAccountMintMismatchError=A.OneTimePrintingAuthMintMismatchError=A.PrintingMintMismatchError=A.DerivedKeyInvalidError=A.TokenAccountOneTimeAuthMintMismatchError=A.TokenBurnFailedError=A.EditionMintDecimalsShouldBeZeroError=A.OneTimePrintingAuthorizationMintDecimalsShouldBeZeroError=A.PrintingMintDecimalsShouldBeZeroError=A.EditionAlreadyMintedError=A.DestinationMintMismatchError=A.MasterRecordMismatchError=A.TokenMintToFailedError=A.MaxEditionsMintedAlreadyError=A.EditionsMustHaveExactlyOneTokenError=A.MintMismatchError=A.UpdateAuthorityMustBeEqualToMetadataAuthorityAndSignerError=A.UriTooLongError=A.SymbolTooLongError=A.NameTooLongError=A.InvalidMintAuthorityError=A.NotMintAuthorityError=A.UpdateAuthorityIsNotSignerError=A.UpdateAuthorityIncorrectError=A.InvalidEditionKeyError=A.InvalidMetadataKeyError=A.UninitializedError=A.AlreadyInitializedError=A.NotRentExemptError=A.InstructionPackErrorError=A.InstructionUnpackErrorError=void 0;A.RevokeCollectionAuthoritySignerIncorrectError=A.InvalidUserError=A.EditionOverrideCannotBeZeroError=A.NotAllowedToChangeSellerFeeBasisPointsError=A.CannotWipeVerifiedCreatorsError=A.CannotRemoveVerifiedCreatorError=A.CannotAdjustVerifiedCreatorError=A.InvalidDelegateError=A.InvalidFreezeAuthorityError=A.InvalidCollectionAuthorityRecordError=A.InvalidUseAuthorityRecordError=A.CollectionAuthorityDoesNotExistError=A.CollectionAuthorityRecordAlreadyExistsError=A.NotEnoughUsesError=A.UnusableError=A.UseAuthorityRecordAlreadyRevokedError=A.UseAuthorityRecordAlreadyExistsError=A.CollectionMustBeAUniqueMasterEditionError=A.InvalidCollectionUpdateAuthorityError=A.CollectionNotFoundError=A.CannotChangeUsesAfterFirstUseError=A.CannotChangeUseMethodAfterFirstUseError=A.InvalidUseMethodError=A.MustBeBurnedError=A.RemovedError=A.CollectionCannotBeVerifiedInThisInstructionError=A.IsMutableCanOnlyBeFlippedToFalseError=A.ReservationArrayShouldBeSizeOneError=A.InvalidEditionIndexError=A.OneTimeAuthMintSupplyMustBeZeroForConversionError=A.PrintingMintSupplyMustBeZeroForConversionError=A.InvalidOwnerError=A.InvalidOperationError=A.TriedToReplaceAnExistingReservationError=A.ReservationNotCompleteError=A.BeyondAlottedAddressSizeError=A.DataTypeMismatchError=A.InvalidTokenProgramError=A.ReservationSpotsRemainingShouldMatchTotalSpotsAtStartError=A.DuplicateCreatorAddressError=A.DataIsImmutableError=A.PrintingWouldBreachMaximumSupplyError=A.IncorrectOwnerError=A.SpotMismatchError=A.CannotUnverifyAnotherCreatorError=A.CannotVerifyAnotherCreatorError=A.AddressNotInReservationError=A.ReservationBreachesMaximumSupplyError=A.NumericalOverflowErrorError=A.BeyondMaxAddressSizeError=void 0;A.MissingSplTokenProgramError=A.MissingTokenAccountError=A.OnlySaleDelegateCanTransferError=A.InvalidSystemWalletError=A.FeatureNotSupportedError=A.MissingArgumentInBuilderError=A.MissingAccountInBuilderError=A.DelegateNotFoundError=A.DelegateAlreadyExistsError=A.InvalidProgrammableConfigError=A.MissingProgrammableConfigError=A.MissingAuthorizationRulesError=A.InvalidAuthorizationRulesError=A.InvalidMintForTokenStandardError=A.InvalidTokenStandardError=A.MintIsNotSignerError=A.EscrowParentHasDelegateError=A.InvalidBubblegumSignerError=A.InvalidCollectionSizeChangeError=A.NoFreezeAuthoritySetError=A.BorshSerializationErrorError=A.InsufficientTokensError=A.MustBeNonFungibleError=A.InvalidSystemProgramError=A.MustBeEscrowAuthorityError=A.InvalidEscrowBumpSeedError=A.MustUnverifyError=A.EditionNumberGreaterThanMaxSupplyError=A.PrintEditionDoesNotMatchMasterEditionError=A.ReservationListDeprecatedError=A.InvalidEditionMarkerError=A.InvalidPrintEditionError=A.InvalidMasterEditionError=A.NotAPrintEditionError=A.AlreadyUnverifiedError=A.AlreadyVerifiedError=A.CollectionMasterEditionAccountInvalidError=A.CannotUpdateVerifiedCollectionError=A.BorshDeserializationErrorError=A.MasterEditionHasPrintsError=A.NotAMasterEditionError=A.MissingEditionAccountError=A.CouldNotDetermineTokenStandardError=A.NotACollectionParentError=A.NotVerifiedMemberOfCollectionError=A.NotAMemberOfCollectionError=A.MissingCollectionMetadataError=A.SizedCollectionError=A.UnsizedCollectionError=A.TokenCloseFailedError=void 0;A.getMplTokenMetadataErrorFromName=A.getMplTokenMetadataErrorFromCode=A.CannotChangeUpdateAuthorityWithDelegateError=A.InvalidMetadataFlagsError=A.InvalidFeeAccountError=A.MissingDelegateRecordError=A.InvalidInstructionError=A.InvalidCloseAuthorityError=A.InvalidTokenRecordError=A.MissingCollectionMasterEditionError=A.MissingCollectionMintError=A.InsufficientTokenBalanceError=A.InvalidUpdateArgsError=A.InvalidParentAccountsError=A.InvalidInstructionsSysvarError=A.InvalidAssociatedTokenAccountProgramError=A.MissingEditionError=A.CannotBurnWithDelegateError=A.MissingEditionMarkerAccountError=A.MissingMasterEditionTokenAccountError=A.MissingMasterEditionMintAccountError=A.InvalidAmountError=A.CannotUpdateAssetWithDelegateError=A.DataIncrementLimitExceededError=A.InvalidLockedTransferAddressError=A.MissingLockedTransferAddressError=A.InvalidDelegateArgsError=A.AmountMustBeGreaterThanZeroError=A.MissingMasterEditionAccountError=A.MissingPrintSupplyError=A.InvalidDelegateRoleError=A.IncorrectTokenStateError=A.InvalidMasterEditionAccountLengthError=A.MissingTokenOwnerAccountError=A.DataIsEmptyOrZeroedError=A.MintSupplyMustBeZeroError=A.MissingTokenRecordError=A.InvalidAuthorityTypeError=A.MissingDelegateRoleError=A.UnlockedTokenError=A.LockedTokenError=A.KeyMismatchError=A.InstructionNotSupportedError=A.InvalidTransferAuthorityError=A.InvalidDelegateRoleForTransferError=A.MissingAuthorizationRulesProgramError=void 0;var N=F(),C=new Map,O=new Map,uf=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="InstructionUnpackError",this.code=0}};A.InstructionUnpackErrorError=uf;C.set(0,uf);O.set("InstructionUnpackError",uf);var cf=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="InstructionPackError",this.code=1}};A.InstructionPackErrorError=cf;C.set(1,cf);O.set("InstructionPackError",cf);var pf=class extends N.ProgramError{constructor(e,r){super("Lamport balance below rent-exempt threshold",e,r),this.name="NotRentExempt",this.code=2}};A.NotRentExemptError=pf;C.set(2,pf);O.set("NotRentExempt",pf);var mf=class extends N.ProgramError{constructor(e,r){super("Already initialized",e,r),this.name="AlreadyInitialized",this.code=3}};A.AlreadyInitializedError=mf;C.set(3,mf);O.set("AlreadyInitialized",mf);var ff=class extends N.ProgramError{constructor(e,r){super("Uninitialized",e,r),this.name="Uninitialized",this.code=4}};A.UninitializedError=ff;C.set(4,ff);O.set("Uninitialized",ff);var hf=class extends N.ProgramError{constructor(e,r){super(" Metadata's key must match seed of ['metadata', program id, mint] provided",e,r),this.name="InvalidMetadataKey",this.code=5}};A.InvalidMetadataKeyError=hf;C.set(5,hf);O.set("InvalidMetadataKey",hf);var gf=class extends N.ProgramError{constructor(e,r){super("Edition's key must match seed of ['metadata', program id, name, 'edition'] provided",e,r),this.name="InvalidEditionKey",this.code=6}};A.InvalidEditionKeyError=gf;C.set(6,gf);O.set("InvalidEditionKey",gf);var yf=class extends N.ProgramError{constructor(e,r){super("Update Authority given does not match",e,r),this.name="UpdateAuthorityIncorrect",this.code=7}};A.UpdateAuthorityIncorrectError=yf;C.set(7,yf);O.set("UpdateAuthorityIncorrect",yf);var bf=class extends N.ProgramError{constructor(e,r){super("Update Authority needs to be signer to update metadata",e,r),this.name="UpdateAuthorityIsNotSigner",this.code=8}};A.UpdateAuthorityIsNotSignerError=bf;C.set(8,bf);O.set("UpdateAuthorityIsNotSigner",bf);var vf=class extends N.ProgramError{constructor(e,r){super("You must be the mint authority and signer on this transaction",e,r),this.name="NotMintAuthority",this.code=9}};A.NotMintAuthorityError=vf;C.set(9,vf);O.set("NotMintAuthority",vf);var Sf=class extends N.ProgramError{constructor(e,r){super("Mint authority provided does not match the authority on the mint",e,r),this.name="InvalidMintAuthority",this.code=10}};A.InvalidMintAuthorityError=Sf;C.set(10,Sf);O.set("InvalidMintAuthority",Sf);var wf=class extends N.ProgramError{constructor(e,r){super("Name too long",e,r),this.name="NameTooLong",this.code=11}};A.NameTooLongError=wf;C.set(11,wf);O.set("NameTooLong",wf);var xf=class extends N.ProgramError{constructor(e,r){super("Symbol too long",e,r),this.name="SymbolTooLong",this.code=12}};A.SymbolTooLongError=xf;C.set(12,xf);O.set("SymbolTooLong",xf);var Af=class extends N.ProgramError{constructor(e,r){super("URI too long",e,r),this.name="UriTooLong",this.code=13}};A.UriTooLongError=Af;C.set(13,Af);O.set("UriTooLong",Af);var _f=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="UpdateAuthorityMustBeEqualToMetadataAuthorityAndSigner",this.code=14}};A.UpdateAuthorityMustBeEqualToMetadataAuthorityAndSignerError=_f;C.set(14,_f);O.set("UpdateAuthorityMustBeEqualToMetadataAuthorityAndSigner",_f);var kf=class extends N.ProgramError{constructor(e,r){super("Mint given does not match mint on Metadata",e,r),this.name="MintMismatch",this.code=15}};A.MintMismatchError=kf;C.set(15,kf);O.set("MintMismatch",kf);var Ef=class extends N.ProgramError{constructor(e,r){super("Editions must have exactly one token",e,r),this.name="EditionsMustHaveExactlyOneToken",this.code=16}};A.EditionsMustHaveExactlyOneTokenError=Ef;C.set(16,Ef);O.set("EditionsMustHaveExactlyOneToken",Ef);var Pf=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="MaxEditionsMintedAlready",this.code=17}};A.MaxEditionsMintedAlreadyError=Pf;C.set(17,Pf);O.set("MaxEditionsMintedAlready",Pf);var Tf=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="TokenMintToFailed",this.code=18}};A.TokenMintToFailedError=Tf;C.set(18,Tf);O.set("TokenMintToFailed",Tf);var zf=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="MasterRecordMismatch",this.code=19}};A.MasterRecordMismatchError=zf;C.set(19,zf);O.set("MasterRecordMismatch",zf);var If=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="DestinationMintMismatch",this.code=20}};A.DestinationMintMismatchError=If;C.set(20,If);O.set("DestinationMintMismatch",If);var Mf=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="EditionAlreadyMinted",this.code=21}};A.EditionAlreadyMintedError=Mf;C.set(21,Mf);O.set("EditionAlreadyMinted",Mf);var Df=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="PrintingMintDecimalsShouldBeZero",this.code=22}};A.PrintingMintDecimalsShouldBeZeroError=Df;C.set(22,Df);O.set("PrintingMintDecimalsShouldBeZero",Df);var Rf=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="OneTimePrintingAuthorizationMintDecimalsShouldBeZero",this.code=23}};A.OneTimePrintingAuthorizationMintDecimalsShouldBeZeroError=Rf;C.set(23,Rf);O.set("OneTimePrintingAuthorizationMintDecimalsShouldBeZero",Rf);var Bf=class extends N.ProgramError{constructor(e,r){super("EditionMintDecimalsShouldBeZero",e,r),this.name="EditionMintDecimalsShouldBeZero",this.code=24}};A.EditionMintDecimalsShouldBeZeroError=Bf;C.set(24,Bf);O.set("EditionMintDecimalsShouldBeZero",Bf);var Cf=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="TokenBurnFailed",this.code=25}};A.TokenBurnFailedError=Cf;C.set(25,Cf);O.set("TokenBurnFailed",Cf);var Of=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="TokenAccountOneTimeAuthMintMismatch",this.code=26}};A.TokenAccountOneTimeAuthMintMismatchError=Of;C.set(26,Of);O.set("TokenAccountOneTimeAuthMintMismatch",Of);var Nf=class extends N.ProgramError{constructor(e,r){super("Derived key invalid",e,r),this.name="DerivedKeyInvalid",this.code=27}};A.DerivedKeyInvalidError=Nf;C.set(27,Nf);O.set("DerivedKeyInvalid",Nf);var qf=class extends N.ProgramError{constructor(e,r){super("The Printing mint does not match that on the master edition!",e,r),this.name="PrintingMintMismatch",this.code=28}};A.PrintingMintMismatchError=qf;C.set(28,qf);O.set("PrintingMintMismatch",qf);var Wf=class extends N.ProgramError{constructor(e,r){super("The One Time Printing Auth mint does not match that on the master edition!",e,r),this.name="OneTimePrintingAuthMintMismatch",this.code=29}};A.OneTimePrintingAuthMintMismatchError=Wf;C.set(29,Wf);O.set("OneTimePrintingAuthMintMismatch",Wf);var Vf=class extends N.ProgramError{constructor(e,r){super("The mint of the token account does not match the Printing mint!",e,r),this.name="TokenAccountMintMismatch",this.code=30}};A.TokenAccountMintMismatchError=Vf;C.set(30,Vf);O.set("TokenAccountMintMismatch",Vf);var Ff=class extends N.ProgramError{constructor(e,r){super("The mint of the token account does not match the master metadata mint!",e,r),this.name="TokenAccountMintMismatchV2",this.code=31}};A.TokenAccountMintMismatchV2Error=Ff;C.set(31,Ff);O.set("TokenAccountMintMismatchV2",Ff);var Kf=class extends N.ProgramError{constructor(e,r){super("Not enough tokens to mint a limited edition",e,r),this.name="NotEnoughTokens",this.code=32}};A.NotEnoughTokensError=Kf;C.set(32,Kf);O.set("NotEnoughTokens",Kf);var Lf=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="PrintingMintAuthorizationAccountMismatch",this.code=33}};A.PrintingMintAuthorizationAccountMismatchError=Lf;C.set(33,Lf);O.set("PrintingMintAuthorizationAccountMismatch",Lf);var Uf=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="AuthorizationTokenAccountOwnerMismatch",this.code=34}};A.AuthorizationTokenAccountOwnerMismatchError=Uf;C.set(34,Uf);O.set("AuthorizationTokenAccountOwnerMismatch",Uf);var jf=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="Disabled",this.code=35}};A.DisabledError=jf;C.set(35,jf);O.set("Disabled",jf);var Hf=class extends N.ProgramError{constructor(e,r){super("Creators list too long",e,r),this.name="CreatorsTooLong",this.code=36}};A.CreatorsTooLongError=Hf;C.set(36,Hf);O.set("CreatorsTooLong",Hf);var $f=class extends N.ProgramError{constructor(e,r){super("Creators must be at least one if set",e,r),this.name="CreatorsMustBeAtleastOne",this.code=37}};A.CreatorsMustBeAtleastOneError=$f;C.set(37,$f);O.set("CreatorsMustBeAtleastOne",$f);var Gf=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="MustBeOneOfCreators",this.code=38}};A.MustBeOneOfCreatorsError=Gf;C.set(38,Gf);O.set("MustBeOneOfCreators",Gf);var Zf=class extends N.ProgramError{constructor(e,r){super("This metadata does not have creators",e,r),this.name="NoCreatorsPresentOnMetadata",this.code=39}};A.NoCreatorsPresentOnMetadataError=Zf;C.set(39,Zf);O.set("NoCreatorsPresentOnMetadata",Zf);var Jf=class extends N.ProgramError{constructor(e,r){super("This creator address was not found",e,r),this.name="CreatorNotFound",this.code=40}};A.CreatorNotFoundError=Jf;C.set(40,Jf);O.set("CreatorNotFound",Jf);var Yf=class extends N.ProgramError{constructor(e,r){super("Basis points cannot be more than 10000",e,r),this.name="InvalidBasisPoints",this.code=41}};A.InvalidBasisPointsError=Yf;C.set(41,Yf);O.set("InvalidBasisPoints",Yf);var Qf=class extends N.ProgramError{constructor(e,r){super("Primary sale can only be flipped to true and is immutable",e,r),this.name="PrimarySaleCanOnlyBeFlippedToTrue",this.code=42}};A.PrimarySaleCanOnlyBeFlippedToTrueError=Qf;C.set(42,Qf);O.set("PrimarySaleCanOnlyBeFlippedToTrue",Qf);var Xf=class extends N.ProgramError{constructor(e,r){super("Owner does not match that on the account given",e,r),this.name="OwnerMismatch",this.code=43}};A.OwnerMismatchError=Xf;C.set(43,Xf);O.set("OwnerMismatch",Xf);var e2=class extends N.ProgramError{constructor(e,r){super("This account has no tokens to be used for authorization",e,r),this.name="NoBalanceInAccountForAuthorization",this.code=44}};A.NoBalanceInAccountForAuthorizationError=e2;C.set(44,e2);O.set("NoBalanceInAccountForAuthorization",e2);var t2=class extends N.ProgramError{constructor(e,r){super("Share total must equal 100 for creator array",e,r),this.name="ShareTotalMustBe100",this.code=45}};A.ShareTotalMustBe100Error=t2;C.set(45,t2);O.set("ShareTotalMustBe100",t2);var r2=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="ReservationExists",this.code=46}};A.ReservationExistsError=r2;C.set(46,r2);O.set("ReservationExists",r2);var i2=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="ReservationDoesNotExist",this.code=47}};A.ReservationDoesNotExistError=i2;C.set(47,i2);O.set("ReservationDoesNotExist",i2);var a2=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="ReservationNotSet",this.code=48}};A.ReservationNotSetError=a2;C.set(48,a2);O.set("ReservationNotSet",a2);var n2=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="ReservationAlreadyMade",this.code=49}};A.ReservationAlreadyMadeError=n2;C.set(49,n2);O.set("ReservationAlreadyMade",n2);var s2=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="BeyondMaxAddressSize",this.code=50}};A.BeyondMaxAddressSizeError=s2;C.set(50,s2);O.set("BeyondMaxAddressSize",s2);var o2=class extends N.ProgramError{constructor(e,r){super("NumericalOverflowError",e,r),this.name="NumericalOverflowError",this.code=51}};A.NumericalOverflowErrorError=o2;C.set(51,o2);O.set("NumericalOverflowError",o2);var l2=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="ReservationBreachesMaximumSupply",this.code=52}};A.ReservationBreachesMaximumSupplyError=l2;C.set(52,l2);O.set("ReservationBreachesMaximumSupply",l2);var d2=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="AddressNotInReservation",this.code=53}};A.AddressNotInReservationError=d2;C.set(53,d2);O.set("AddressNotInReservation",d2);var u2=class extends N.ProgramError{constructor(e,r){super("You cannot unilaterally verify another creator, they must sign",e,r),this.name="CannotVerifyAnotherCreator",this.code=54}};A.CannotVerifyAnotherCreatorError=u2;C.set(54,u2);O.set("CannotVerifyAnotherCreator",u2);var c2=class extends N.ProgramError{constructor(e,r){super("You cannot unilaterally unverify another creator",e,r),this.name="CannotUnverifyAnotherCreator",this.code=55}};A.CannotUnverifyAnotherCreatorError=c2;C.set(55,c2);O.set("CannotUnverifyAnotherCreator",c2);var p2=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="SpotMismatch",this.code=56}};A.SpotMismatchError=p2;C.set(56,p2);O.set("SpotMismatch",p2);var m2=class extends N.ProgramError{constructor(e,r){super("Incorrect account owner",e,r),this.name="IncorrectOwner",this.code=57}};A.IncorrectOwnerError=m2;C.set(57,m2);O.set("IncorrectOwner",m2);var f2=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="PrintingWouldBreachMaximumSupply",this.code=58}};A.PrintingWouldBreachMaximumSupplyError=f2;C.set(58,f2);O.set("PrintingWouldBreachMaximumSupply",f2);var h2=class extends N.ProgramError{constructor(e,r){super("Data is immutable",e,r),this.name="DataIsImmutable",this.code=59}};A.DataIsImmutableError=h2;C.set(59,h2);O.set("DataIsImmutable",h2);var g2=class extends N.ProgramError{constructor(e,r){super("No duplicate creator addresses",e,r),this.name="DuplicateCreatorAddress",this.code=60}};A.DuplicateCreatorAddressError=g2;C.set(60,g2);O.set("DuplicateCreatorAddress",g2);var y2=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="ReservationSpotsRemainingShouldMatchTotalSpotsAtStart",this.code=61}};A.ReservationSpotsRemainingShouldMatchTotalSpotsAtStartError=y2;C.set(61,y2);O.set("ReservationSpotsRemainingShouldMatchTotalSpotsAtStart",y2);var b2=class extends N.ProgramError{constructor(e,r){super("Invalid token program",e,r),this.name="InvalidTokenProgram",this.code=62}};A.InvalidTokenProgramError=b2;C.set(62,b2);O.set("InvalidTokenProgram",b2);var v2=class extends N.ProgramError{constructor(e,r){super("Data type mismatch",e,r),this.name="DataTypeMismatch",this.code=63}};A.DataTypeMismatchError=v2;C.set(63,v2);O.set("DataTypeMismatch",v2);var S2=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="BeyondAlottedAddressSize",this.code=64}};A.BeyondAlottedAddressSizeError=S2;C.set(64,S2);O.set("BeyondAlottedAddressSize",S2);var w2=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="ReservationNotComplete",this.code=65}};A.ReservationNotCompleteError=w2;C.set(65,w2);O.set("ReservationNotComplete",w2);var x2=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="TriedToReplaceAnExistingReservation",this.code=66}};A.TriedToReplaceAnExistingReservationError=x2;C.set(66,x2);O.set("TriedToReplaceAnExistingReservation",x2);var A2=class extends N.ProgramError{constructor(e,r){super("Invalid operation",e,r),this.name="InvalidOperation",this.code=67}};A.InvalidOperationError=A2;C.set(67,A2);O.set("InvalidOperation",A2);var _2=class extends N.ProgramError{constructor(e,r){super("Invalid Owner",e,r),this.name="InvalidOwner",this.code=68}};A.InvalidOwnerError=_2;C.set(68,_2);O.set("InvalidOwner",_2);var k2=class extends N.ProgramError{constructor(e,r){super("Printing mint supply must be zero for conversion",e,r),this.name="PrintingMintSupplyMustBeZeroForConversion",this.code=69}};A.PrintingMintSupplyMustBeZeroForConversionError=k2;C.set(69,k2);O.set("PrintingMintSupplyMustBeZeroForConversion",k2);var E2=class extends N.ProgramError{constructor(e,r){super("One Time Auth mint supply must be zero for conversion",e,r),this.name="OneTimeAuthMintSupplyMustBeZeroForConversion",this.code=70}};A.OneTimeAuthMintSupplyMustBeZeroForConversionError=E2;C.set(70,E2);O.set("OneTimeAuthMintSupplyMustBeZeroForConversion",E2);var P2=class extends N.ProgramError{constructor(e,r){super("You tried to insert one edition too many into an edition mark pda",e,r),this.name="InvalidEditionIndex",this.code=71}};A.InvalidEditionIndexError=P2;C.set(71,P2);O.set("InvalidEditionIndex",P2);var T2=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="ReservationArrayShouldBeSizeOne",this.code=72}};A.ReservationArrayShouldBeSizeOneError=T2;C.set(72,T2);O.set("ReservationArrayShouldBeSizeOne",T2);var z2=class extends N.ProgramError{constructor(e,r){super("Is Mutable can only be flipped to false",e,r),this.name="IsMutableCanOnlyBeFlippedToFalse",this.code=73}};A.IsMutableCanOnlyBeFlippedToFalseError=z2;C.set(73,z2);O.set("IsMutableCanOnlyBeFlippedToFalse",z2);var I2=class extends N.ProgramError{constructor(e,r){super("Collection cannot be verified in this instruction",e,r),this.name="CollectionCannotBeVerifiedInThisInstruction",this.code=74}};A.CollectionCannotBeVerifiedInThisInstructionError=I2;C.set(74,I2);O.set("CollectionCannotBeVerifiedInThisInstruction",I2);var M2=class extends N.ProgramError{constructor(e,r){super("This instruction was deprecated in a previous release and is now removed",e,r),this.name="Removed",this.code=75}};A.RemovedError=M2;C.set(75,M2);O.set("Removed",M2);var D2=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="MustBeBurned",this.code=76}};A.MustBeBurnedError=D2;C.set(76,D2);O.set("MustBeBurned",D2);var R2=class extends N.ProgramError{constructor(e,r){super("This use method is invalid",e,r),this.name="InvalidUseMethod",this.code=77}};A.InvalidUseMethodError=R2;C.set(77,R2);O.set("InvalidUseMethod",R2);var B2=class extends N.ProgramError{constructor(e,r){super("Cannot Change Use Method after the first use",e,r),this.name="CannotChangeUseMethodAfterFirstUse",this.code=78}};A.CannotChangeUseMethodAfterFirstUseError=B2;C.set(78,B2);O.set("CannotChangeUseMethodAfterFirstUse",B2);var C2=class extends N.ProgramError{constructor(e,r){super("Cannot Change Remaining or Available uses after the first use",e,r),this.name="CannotChangeUsesAfterFirstUse",this.code=79}};A.CannotChangeUsesAfterFirstUseError=C2;C.set(79,C2);O.set("CannotChangeUsesAfterFirstUse",C2);var O2=class extends N.ProgramError{constructor(e,r){super("Collection Not Found on Metadata",e,r),this.name="CollectionNotFound",this.code=80}};A.CollectionNotFoundError=O2;C.set(80,O2);O.set("CollectionNotFound",O2);var N2=class extends N.ProgramError{constructor(e,r){super("Collection Update Authority is invalid",e,r),this.name="InvalidCollectionUpdateAuthority",this.code=81}};A.InvalidCollectionUpdateAuthorityError=N2;C.set(81,N2);O.set("InvalidCollectionUpdateAuthority",N2);var q2=class extends N.ProgramError{constructor(e,r){super("Collection Must Be a Unique Master Edition v2",e,r),this.name="CollectionMustBeAUniqueMasterEdition",this.code=82}};A.CollectionMustBeAUniqueMasterEditionError=q2;C.set(82,q2);O.set("CollectionMustBeAUniqueMasterEdition",q2);var W2=class extends N.ProgramError{constructor(e,r){super("The Use Authority Record Already Exists, to modify it Revoke, then Approve",e,r),this.name="UseAuthorityRecordAlreadyExists",this.code=83}};A.UseAuthorityRecordAlreadyExistsError=W2;C.set(83,W2);O.set("UseAuthorityRecordAlreadyExists",W2);var V2=class extends N.ProgramError{constructor(e,r){super("The Use Authority Record is empty or already revoked",e,r),this.name="UseAuthorityRecordAlreadyRevoked",this.code=84}};A.UseAuthorityRecordAlreadyRevokedError=V2;C.set(84,V2);O.set("UseAuthorityRecordAlreadyRevoked",V2);var F2=class extends N.ProgramError{constructor(e,r){super("This token has no uses",e,r),this.name="Unusable",this.code=85}};A.UnusableError=F2;C.set(85,F2);O.set("Unusable",F2);var K2=class extends N.ProgramError{constructor(e,r){super("There are not enough Uses left on this token.",e,r),this.name="NotEnoughUses",this.code=86}};A.NotEnoughUsesError=K2;C.set(86,K2);O.set("NotEnoughUses",K2);var L2=class extends N.ProgramError{constructor(e,r){super("This Collection Authority Record Already Exists.",e,r),this.name="CollectionAuthorityRecordAlreadyExists",this.code=87}};A.CollectionAuthorityRecordAlreadyExistsError=L2;C.set(87,L2);O.set("CollectionAuthorityRecordAlreadyExists",L2);var U2=class extends N.ProgramError{constructor(e,r){super("This Collection Authority Record Does Not Exist.",e,r),this.name="CollectionAuthorityDoesNotExist",this.code=88}};A.CollectionAuthorityDoesNotExistError=U2;C.set(88,U2);O.set("CollectionAuthorityDoesNotExist",U2);var j2=class extends N.ProgramError{constructor(e,r){super("This Use Authority Record is invalid.",e,r),this.name="InvalidUseAuthorityRecord",this.code=89}};A.InvalidUseAuthorityRecordError=j2;C.set(89,j2);O.set("InvalidUseAuthorityRecord",j2);var H2=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="InvalidCollectionAuthorityRecord",this.code=90}};A.InvalidCollectionAuthorityRecordError=H2;C.set(90,H2);O.set("InvalidCollectionAuthorityRecord",H2);var $2=class extends N.ProgramError{constructor(e,r){super("Metadata does not match the freeze authority on the mint",e,r),this.name="InvalidFreezeAuthority",this.code=91}};A.InvalidFreezeAuthorityError=$2;C.set(91,$2);O.set("InvalidFreezeAuthority",$2);var G2=class extends N.ProgramError{constructor(e,r){super("All tokens in this account have not been delegated to this user.",e,r),this.name="InvalidDelegate",this.code=92}};A.InvalidDelegateError=G2;C.set(92,G2);O.set("InvalidDelegate",G2);var Z2=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="CannotAdjustVerifiedCreator",this.code=93}};A.CannotAdjustVerifiedCreatorError=Z2;C.set(93,Z2);O.set("CannotAdjustVerifiedCreator",Z2);var J2=class extends N.ProgramError{constructor(e,r){super("Verified creators cannot be removed.",e,r),this.name="CannotRemoveVerifiedCreator",this.code=94}};A.CannotRemoveVerifiedCreatorError=J2;C.set(94,J2);O.set("CannotRemoveVerifiedCreator",J2);var Y2=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="CannotWipeVerifiedCreators",this.code=95}};A.CannotWipeVerifiedCreatorsError=Y2;C.set(95,Y2);O.set("CannotWipeVerifiedCreators",Y2);var Q2=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="NotAllowedToChangeSellerFeeBasisPoints",this.code=96}};A.NotAllowedToChangeSellerFeeBasisPointsError=Q2;C.set(96,Q2);O.set("NotAllowedToChangeSellerFeeBasisPoints",Q2);var X2=class extends N.ProgramError{constructor(e,r){super("Edition override cannot be zero",e,r),this.name="EditionOverrideCannotBeZero",this.code=97}};A.EditionOverrideCannotBeZeroError=X2;C.set(97,X2);O.set("EditionOverrideCannotBeZero",X2);var e6=class extends N.ProgramError{constructor(e,r){super("Invalid User",e,r),this.name="InvalidUser",this.code=98}};A.InvalidUserError=e6;C.set(98,e6);O.set("InvalidUser",e6);var t6=class extends N.ProgramError{constructor(e,r){super("Revoke Collection Authority signer is incorrect",e,r),this.name="RevokeCollectionAuthoritySignerIncorrect",this.code=99}};A.RevokeCollectionAuthoritySignerIncorrectError=t6;C.set(99,t6);O.set("RevokeCollectionAuthoritySignerIncorrect",t6);var r6=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="TokenCloseFailed",this.code=100}};A.TokenCloseFailedError=r6;C.set(100,r6);O.set("TokenCloseFailed",r6);var i6=class extends N.ProgramError{constructor(e,r){super("Can't use this function on unsized collection",e,r),this.name="UnsizedCollection",this.code=101}};A.UnsizedCollectionError=i6;C.set(101,i6);O.set("UnsizedCollection",i6);var a6=class extends N.ProgramError{constructor(e,r){super("Can't use this function on a sized collection",e,r),this.name="SizedCollection",this.code=102}};A.SizedCollectionError=a6;C.set(102,a6);O.set("SizedCollection",a6);var n6=class extends N.ProgramError{constructor(e,r){super("Missing collection metadata account",e,r),this.name="MissingCollectionMetadata",this.code=103}};A.MissingCollectionMetadataError=n6;C.set(103,n6);O.set("MissingCollectionMetadata",n6);var s6=class extends N.ProgramError{constructor(e,r){super("This NFT is not a member of the specified collection.",e,r),this.name="NotAMemberOfCollection",this.code=104}};A.NotAMemberOfCollectionError=s6;C.set(104,s6);O.set("NotAMemberOfCollection",s6);var o6=class extends N.ProgramError{constructor(e,r){super("This NFT is not a verified member of the specified collection.",e,r),this.name="NotVerifiedMemberOfCollection",this.code=105}};A.NotVerifiedMemberOfCollectionError=o6;C.set(105,o6);O.set("NotVerifiedMemberOfCollection",o6);var l6=class extends N.ProgramError{constructor(e,r){super("This NFT is not a collection parent NFT.",e,r),this.name="NotACollectionParent",this.code=106}};A.NotACollectionParentError=l6;C.set(106,l6);O.set("NotACollectionParent",l6);var d6=class extends N.ProgramError{constructor(e,r){super("Could not determine a TokenStandard type.",e,r),this.name="CouldNotDetermineTokenStandard",this.code=107}};A.CouldNotDetermineTokenStandardError=d6;C.set(107,d6);O.set("CouldNotDetermineTokenStandard",d6);var u6=class extends N.ProgramError{constructor(e,r){super("This mint account has an edition but none was provided.",e,r),this.name="MissingEditionAccount",this.code=108}};A.MissingEditionAccountError=u6;C.set(108,u6);O.set("MissingEditionAccount",u6);var c6=class extends N.ProgramError{constructor(e,r){super("This edition is not a Master Edition",e,r),this.name="NotAMasterEdition",this.code=109}};A.NotAMasterEditionError=c6;C.set(109,c6);O.set("NotAMasterEdition",c6);var p6=class extends N.ProgramError{constructor(e,r){super("This Master Edition has existing prints",e,r),this.name="MasterEditionHasPrints",this.code=110}};A.MasterEditionHasPrintsError=p6;C.set(110,p6);O.set("MasterEditionHasPrints",p6);var m6=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="BorshDeserializationError",this.code=111}};A.BorshDeserializationErrorError=m6;C.set(111,m6);O.set("BorshDeserializationError",m6);var f6=class extends N.ProgramError{constructor(e,r){super("Cannot update a verified collection in this command",e,r),this.name="CannotUpdateVerifiedCollection",this.code=112}};A.CannotUpdateVerifiedCollectionError=f6;C.set(112,f6);O.set("CannotUpdateVerifiedCollection",f6);var h6=class extends N.ProgramError{constructor(e,r){super("Edition account doesnt match collection ",e,r),this.name="CollectionMasterEditionAccountInvalid",this.code=113}};A.CollectionMasterEditionAccountInvalidError=h6;C.set(113,h6);O.set("CollectionMasterEditionAccountInvalid",h6);var g6=class extends N.ProgramError{constructor(e,r){super("Item is already verified.",e,r),this.name="AlreadyVerified",this.code=114}};A.AlreadyVerifiedError=g6;C.set(114,g6);O.set("AlreadyVerified",g6);var y6=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="AlreadyUnverified",this.code=115}};A.AlreadyUnverifiedError=y6;C.set(115,y6);O.set("AlreadyUnverified",y6);var b6=class extends N.ProgramError{constructor(e,r){super("This edition is not a Print Edition",e,r),this.name="NotAPrintEdition",this.code=116}};A.NotAPrintEditionError=b6;C.set(116,b6);O.set("NotAPrintEdition",b6);var v6=class extends N.ProgramError{constructor(e,r){super("Invalid Master Edition",e,r),this.name="InvalidMasterEdition",this.code=117}};A.InvalidMasterEditionError=v6;C.set(117,v6);O.set("InvalidMasterEdition",v6);var S6=class extends N.ProgramError{constructor(e,r){super("Invalid Print Edition",e,r),this.name="InvalidPrintEdition",this.code=118}};A.InvalidPrintEditionError=S6;C.set(118,S6);O.set("InvalidPrintEdition",S6);var w6=class extends N.ProgramError{constructor(e,r){super("Invalid Edition Marker",e,r),this.name="InvalidEditionMarker",this.code=119}};A.InvalidEditionMarkerError=w6;C.set(119,w6);O.set("InvalidEditionMarker",w6);var x6=class extends N.ProgramError{constructor(e,r){super("Reservation List is Deprecated",e,r),this.name="ReservationListDeprecated",this.code=120}};A.ReservationListDeprecatedError=x6;C.set(120,x6);O.set("ReservationListDeprecated",x6);var A6=class extends N.ProgramError{constructor(e,r){super("Print Edition does not match Master Edition",e,r),this.name="PrintEditionDoesNotMatchMasterEdition",this.code=121}};A.PrintEditionDoesNotMatchMasterEditionError=A6;C.set(121,A6);O.set("PrintEditionDoesNotMatchMasterEdition",A6);var _6=class extends N.ProgramError{constructor(e,r){super("Edition Number greater than max supply",e,r),this.name="EditionNumberGreaterThanMaxSupply",this.code=122}};A.EditionNumberGreaterThanMaxSupplyError=_6;C.set(122,_6);O.set("EditionNumberGreaterThanMaxSupply",_6);var k6=class extends N.ProgramError{constructor(e,r){super("Must unverify before migrating collections.",e,r),this.name="MustUnverify",this.code=123}};A.MustUnverifyError=k6;C.set(123,k6);O.set("MustUnverify",k6);var E6=class extends N.ProgramError{constructor(e,r){super("Invalid Escrow Account Bump Seed",e,r),this.name="InvalidEscrowBumpSeed",this.code=124}};A.InvalidEscrowBumpSeedError=E6;C.set(124,E6);O.set("InvalidEscrowBumpSeed",E6);var P6=class extends N.ProgramError{constructor(e,r){super("Must Escrow Authority",e,r),this.name="MustBeEscrowAuthority",this.code=125}};A.MustBeEscrowAuthorityError=P6;C.set(125,P6);O.set("MustBeEscrowAuthority",P6);var T6=class extends N.ProgramError{constructor(e,r){super("Invalid System Program",e,r),this.name="InvalidSystemProgram",this.code=126}};A.InvalidSystemProgramError=T6;C.set(126,T6);O.set("InvalidSystemProgram",T6);var z6=class extends N.ProgramError{constructor(e,r){super("Must be a Non Fungible Token",e,r),this.name="MustBeNonFungible",this.code=127}};A.MustBeNonFungibleError=z6;C.set(127,z6);O.set("MustBeNonFungible",z6);var I6=class extends N.ProgramError{constructor(e,r){super("Insufficient tokens for transfer",e,r),this.name="InsufficientTokens",this.code=128}};A.InsufficientTokensError=I6;C.set(128,I6);O.set("InsufficientTokens",I6);var M6=class extends N.ProgramError{constructor(e,r){super("Borsh Serialization Error",e,r),this.name="BorshSerializationError",this.code=129}};A.BorshSerializationErrorError=M6;C.set(129,M6);O.set("BorshSerializationError",M6);var D6=class extends N.ProgramError{constructor(e,r){super("Cannot create NFT with no Freeze Authority.",e,r),this.name="NoFreezeAuthoritySet",this.code=130}};A.NoFreezeAuthoritySetError=D6;C.set(130,D6);O.set("NoFreezeAuthoritySet",D6);var R6=class extends N.ProgramError{constructor(e,r){super("Invalid collection size change",e,r),this.name="InvalidCollectionSizeChange",this.code=131}};A.InvalidCollectionSizeChangeError=R6;C.set(131,R6);O.set("InvalidCollectionSizeChange",R6);var B6=class extends N.ProgramError{constructor(e,r){super("Invalid bubblegum signer",e,r),this.name="InvalidBubblegumSigner",this.code=132}};A.InvalidBubblegumSignerError=B6;C.set(132,B6);O.set("InvalidBubblegumSigner",B6);var C6=class extends N.ProgramError{constructor(e,r){super("Escrow parent cannot have a delegate",e,r),this.name="EscrowParentHasDelegate",this.code=133}};A.EscrowParentHasDelegateError=C6;C.set(133,C6);O.set("EscrowParentHasDelegate",C6);var O6=class extends N.ProgramError{constructor(e,r){super("Mint needs to be signer to initialize the account",e,r),this.name="MintIsNotSigner",this.code=134}};A.MintIsNotSignerError=O6;C.set(134,O6);O.set("MintIsNotSigner",O6);var N6=class extends N.ProgramError{constructor(e,r){super("Invalid token standard",e,r),this.name="InvalidTokenStandard",this.code=135}};A.InvalidTokenStandardError=N6;C.set(135,N6);O.set("InvalidTokenStandard",N6);var q6=class extends N.ProgramError{constructor(e,r){super("Invalid mint account for specified token standard",e,r),this.name="InvalidMintForTokenStandard",this.code=136}};A.InvalidMintForTokenStandardError=q6;C.set(136,q6);O.set("InvalidMintForTokenStandard",q6);var W6=class extends N.ProgramError{constructor(e,r){super("Invalid authorization rules account",e,r),this.name="InvalidAuthorizationRules",this.code=137}};A.InvalidAuthorizationRulesError=W6;C.set(137,W6);O.set("InvalidAuthorizationRules",W6);var V6=class extends N.ProgramError{constructor(e,r){super("Missing authorization rules account",e,r),this.name="MissingAuthorizationRules",this.code=138}};A.MissingAuthorizationRulesError=V6;C.set(138,V6);O.set("MissingAuthorizationRules",V6);var F6=class extends N.ProgramError{constructor(e,r){super("Missing programmable configuration",e,r),this.name="MissingProgrammableConfig",this.code=139}};A.MissingProgrammableConfigError=F6;C.set(139,F6);O.set("MissingProgrammableConfig",F6);var K6=class extends N.ProgramError{constructor(e,r){super("Invalid programmable configuration",e,r),this.name="InvalidProgrammableConfig",this.code=140}};A.InvalidProgrammableConfigError=K6;C.set(140,K6);O.set("InvalidProgrammableConfig",K6);var L6=class extends N.ProgramError{constructor(e,r){super("Delegate already exists",e,r),this.name="DelegateAlreadyExists",this.code=141}};A.DelegateAlreadyExistsError=L6;C.set(141,L6);O.set("DelegateAlreadyExists",L6);var U6=class extends N.ProgramError{constructor(e,r){super("Delegate not found",e,r),this.name="DelegateNotFound",this.code=142}};A.DelegateNotFoundError=U6;C.set(142,U6);O.set("DelegateNotFound",U6);var j6=class extends N.ProgramError{constructor(e,r){super("Required account not set in instruction builder",e,r),this.name="MissingAccountInBuilder",this.code=143}};A.MissingAccountInBuilderError=j6;C.set(143,j6);O.set("MissingAccountInBuilder",j6);var H6=class extends N.ProgramError{constructor(e,r){super("Required argument not set in instruction builder",e,r),this.name="MissingArgumentInBuilder",this.code=144}};A.MissingArgumentInBuilderError=H6;C.set(144,H6);O.set("MissingArgumentInBuilder",H6);var $6=class extends N.ProgramError{constructor(e,r){super("Feature not supported currently",e,r),this.name="FeatureNotSupported",this.code=145}};A.FeatureNotSupportedError=$6;C.set(145,$6);O.set("FeatureNotSupported",$6);var G6=class extends N.ProgramError{constructor(e,r){super("Invalid system wallet",e,r),this.name="InvalidSystemWallet",this.code=146}};A.InvalidSystemWalletError=G6;C.set(146,G6);O.set("InvalidSystemWallet",G6);var Z6=class extends N.ProgramError{constructor(e,r){super("Only the sale delegate can transfer while its set",e,r),this.name="OnlySaleDelegateCanTransfer",this.code=147}};A.OnlySaleDelegateCanTransferError=Z6;C.set(147,Z6);O.set("OnlySaleDelegateCanTransfer",Z6);var J6=class extends N.ProgramError{constructor(e,r){super("Missing token account",e,r),this.name="MissingTokenAccount",this.code=148}};A.MissingTokenAccountError=J6;C.set(148,J6);O.set("MissingTokenAccount",J6);var Y6=class extends N.ProgramError{constructor(e,r){super("Missing SPL token program",e,r),this.name="MissingSplTokenProgram",this.code=149}};A.MissingSplTokenProgramError=Y6;C.set(149,Y6);O.set("MissingSplTokenProgram",Y6);var Q6=class extends N.ProgramError{constructor(e,r){super("Missing authorization rules program",e,r),this.name="MissingAuthorizationRulesProgram",this.code=150}};A.MissingAuthorizationRulesProgramError=Q6;C.set(150,Q6);O.set("MissingAuthorizationRulesProgram",Q6);var X6=class extends N.ProgramError{constructor(e,r){super("Invalid delegate role for transfer",e,r),this.name="InvalidDelegateRoleForTransfer",this.code=151}};A.InvalidDelegateRoleForTransferError=X6;C.set(151,X6);O.set("InvalidDelegateRoleForTransfer",X6);var eh=class extends N.ProgramError{constructor(e,r){super("Invalid transfer authority",e,r),this.name="InvalidTransferAuthority",this.code=152}};A.InvalidTransferAuthorityError=eh;C.set(152,eh);O.set("InvalidTransferAuthority",eh);var th=class extends N.ProgramError{constructor(e,r){super("Instruction not supported for ProgrammableNonFungible assets",e,r),this.name="InstructionNotSupported",this.code=153}};A.InstructionNotSupportedError=th;C.set(153,th);O.set("InstructionNotSupported",th);var rh=class extends N.ProgramError{constructor(e,r){super("Public key does not match expected value",e,r),this.name="KeyMismatch",this.code=154}};A.KeyMismatchError=rh;C.set(154,rh);O.set("KeyMismatch",rh);var ih=class extends N.ProgramError{constructor(e,r){super("Token is locked",e,r),this.name="LockedToken",this.code=155}};A.LockedTokenError=ih;C.set(155,ih);O.set("LockedToken",ih);var ah=class extends N.ProgramError{constructor(e,r){super("Token is unlocked",e,r),this.name="UnlockedToken",this.code=156}};A.UnlockedTokenError=ah;C.set(156,ah);O.set("UnlockedToken",ah);var nh=class extends N.ProgramError{constructor(e,r){super("Missing delegate role",e,r),this.name="MissingDelegateRole",this.code=157}};A.MissingDelegateRoleError=nh;C.set(157,nh);O.set("MissingDelegateRole",nh);var sh=class extends N.ProgramError{constructor(e,r){super("Invalid authority type",e,r),this.name="InvalidAuthorityType",this.code=158}};A.InvalidAuthorityTypeError=sh;C.set(158,sh);O.set("InvalidAuthorityType",sh);var oh=class extends N.ProgramError{constructor(e,r){super("Missing token record account",e,r),this.name="MissingTokenRecord",this.code=159}};A.MissingTokenRecordError=oh;C.set(159,oh);O.set("MissingTokenRecord",oh);var lh=class extends N.ProgramError{constructor(e,r){super("Mint supply must be zero for programmable assets",e,r),this.name="MintSupplyMustBeZero",this.code=160}};A.MintSupplyMustBeZeroError=lh;C.set(160,lh);O.set("MintSupplyMustBeZero",lh);var dh=class extends N.ProgramError{constructor(e,r){super("Data is empty or zeroed",e,r),this.name="DataIsEmptyOrZeroed",this.code=161}};A.DataIsEmptyOrZeroedError=dh;C.set(161,dh);O.set("DataIsEmptyOrZeroed",dh);var uh=class extends N.ProgramError{constructor(e,r){super("Missing token owner",e,r),this.name="MissingTokenOwnerAccount",this.code=162}};A.MissingTokenOwnerAccountError=uh;C.set(162,uh);O.set("MissingTokenOwnerAccount",uh);var ch=class extends N.ProgramError{constructor(e,r){super("Master edition account has an invalid length",e,r),this.name="InvalidMasterEditionAccountLength",this.code=163}};A.InvalidMasterEditionAccountLengthError=ch;C.set(163,ch);O.set("InvalidMasterEditionAccountLength",ch);var ph=class extends N.ProgramError{constructor(e,r){super("Incorrect token state",e,r),this.name="IncorrectTokenState",this.code=164}};A.IncorrectTokenStateError=ph;C.set(164,ph);O.set("IncorrectTokenState",ph);var mh=class extends N.ProgramError{constructor(e,r){super("Invalid delegate role",e,r),this.name="InvalidDelegateRole",this.code=165}};A.InvalidDelegateRoleError=mh;C.set(165,mh);O.set("InvalidDelegateRole",mh);var fh=class extends N.ProgramError{constructor(e,r){super("Print supply is required for non-fungibles",e,r),this.name="MissingPrintSupply",this.code=166}};A.MissingPrintSupplyError=fh;C.set(166,fh);O.set("MissingPrintSupply",fh);var hh=class extends N.ProgramError{constructor(e,r){super("Missing master edition account",e,r),this.name="MissingMasterEditionAccount",this.code=167}};A.MissingMasterEditionAccountError=hh;C.set(167,hh);O.set("MissingMasterEditionAccount",hh);var gh=class extends N.ProgramError{constructor(e,r){super("Amount must be greater than zero",e,r),this.name="AmountMustBeGreaterThanZero",this.code=168}};A.AmountMustBeGreaterThanZeroError=gh;C.set(168,gh);O.set("AmountMustBeGreaterThanZero",gh);var yh=class extends N.ProgramError{constructor(e,r){super("Invalid delegate args",e,r),this.name="InvalidDelegateArgs",this.code=169}};A.InvalidDelegateArgsError=yh;C.set(169,yh);O.set("InvalidDelegateArgs",yh);var bh=class extends N.ProgramError{constructor(e,r){super("Missing address for locked transfer",e,r),this.name="MissingLockedTransferAddress",this.code=170}};A.MissingLockedTransferAddressError=bh;C.set(170,bh);O.set("MissingLockedTransferAddress",bh);var vh=class extends N.ProgramError{constructor(e,r){super("Invalid destination address for locked transfer",e,r),this.name="InvalidLockedTransferAddress",this.code=171}};A.InvalidLockedTransferAddressError=vh;C.set(171,vh);O.set("InvalidLockedTransferAddress",vh);var Sh=class extends N.ProgramError{constructor(e,r){super("Exceeded account realloc increase limit",e,r),this.name="DataIncrementLimitExceeded",this.code=172}};A.DataIncrementLimitExceededError=Sh;C.set(172,Sh);O.set("DataIncrementLimitExceeded",Sh);var wh=class extends N.ProgramError{constructor(e,r){super("Cannot update the rule set of a programmable asset that has a delegate",e,r),this.name="CannotUpdateAssetWithDelegate",this.code=173}};A.CannotUpdateAssetWithDelegateError=wh;C.set(173,wh);O.set("CannotUpdateAssetWithDelegate",wh);var xh=class extends N.ProgramError{constructor(e,r){super("Invalid token amount for this operation or token standard",e,r),this.name="InvalidAmount",this.code=174}};A.InvalidAmountError=xh;C.set(174,xh);O.set("InvalidAmount",xh);var Ah=class extends N.ProgramError{constructor(e,r){super("Missing master edition mint account",e,r),this.name="MissingMasterEditionMintAccount",this.code=175}};A.MissingMasterEditionMintAccountError=Ah;C.set(175,Ah);O.set("MissingMasterEditionMintAccount",Ah);var _h=class extends N.ProgramError{constructor(e,r){super("Missing master edition token account",e,r),this.name="MissingMasterEditionTokenAccount",this.code=176}};A.MissingMasterEditionTokenAccountError=_h;C.set(176,_h);O.set("MissingMasterEditionTokenAccount",_h);var kh=class extends N.ProgramError{constructor(e,r){super("Missing edition marker account",e,r),this.name="MissingEditionMarkerAccount",this.code=177}};A.MissingEditionMarkerAccountError=kh;C.set(177,kh);O.set("MissingEditionMarkerAccount",kh);var Eh=class extends N.ProgramError{constructor(e,r){super("Cannot burn while persistent delegate is set",e,r),this.name="CannotBurnWithDelegate",this.code=178}};A.CannotBurnWithDelegateError=Eh;C.set(178,Eh);O.set("CannotBurnWithDelegate",Eh);var Ph=class extends N.ProgramError{constructor(e,r){super("Missing edition account",e,r),this.name="MissingEdition",this.code=179}};A.MissingEditionError=Ph;C.set(179,Ph);O.set("MissingEdition",Ph);var Th=class extends N.ProgramError{constructor(e,r){super("Invalid Associated Token Account Program",e,r),this.name="InvalidAssociatedTokenAccountProgram",this.code=180}};A.InvalidAssociatedTokenAccountProgramError=Th;C.set(180,Th);O.set("InvalidAssociatedTokenAccountProgram",Th);var zh=class extends N.ProgramError{constructor(e,r){super("Invalid InstructionsSysvar",e,r),this.name="InvalidInstructionsSysvar",this.code=181}};A.InvalidInstructionsSysvarError=zh;C.set(181,zh);O.set("InvalidInstructionsSysvar",zh);var Ih=class extends N.ProgramError{constructor(e,r){super("Invalid or Unneeded parent accounts",e,r),this.name="InvalidParentAccounts",this.code=182}};A.InvalidParentAccountsError=Ih;C.set(182,Ih);O.set("InvalidParentAccounts",Ih);var Mh=class extends N.ProgramError{constructor(e,r){super("Authority cannot apply all update args",e,r),this.name="InvalidUpdateArgs",this.code=183}};A.InvalidUpdateArgsError=Mh;C.set(183,Mh);O.set("InvalidUpdateArgs",Mh);var Dh=class extends N.ProgramError{constructor(e,r){super("Token account does not have enough tokens",e,r),this.name="InsufficientTokenBalance",this.code=184}};A.InsufficientTokenBalanceError=Dh;C.set(184,Dh);O.set("InsufficientTokenBalance",Dh);var Rh=class extends N.ProgramError{constructor(e,r){super("Missing collection account",e,r),this.name="MissingCollectionMint",this.code=185}};A.MissingCollectionMintError=Rh;C.set(185,Rh);O.set("MissingCollectionMint",Rh);var Bh=class extends N.ProgramError{constructor(e,r){super("Missing collection master edition account",e,r),this.name="MissingCollectionMasterEdition",this.code=186}};A.MissingCollectionMasterEditionError=Bh;C.set(186,Bh);O.set("MissingCollectionMasterEdition",Bh);var Ch=class extends N.ProgramError{constructor(e,r){super("Invalid token record account",e,r),this.name="InvalidTokenRecord",this.code=187}};A.InvalidTokenRecordError=Ch;C.set(187,Ch);O.set("InvalidTokenRecord",Ch);var Oh=class extends N.ProgramError{constructor(e,r){super("The close authority needs to be revoked by the Utility Delegate",e,r),this.name="InvalidCloseAuthority",this.code=188}};A.InvalidCloseAuthorityError=Oh;C.set(188,Oh);O.set("InvalidCloseAuthority",Oh);var Nh=class extends N.ProgramError{constructor(e,r){super("Invalid or removed instruction",e,r),this.name="InvalidInstruction",this.code=189}};A.InvalidInstructionError=Nh;C.set(189,Nh);O.set("InvalidInstruction",Nh);var qh=class extends N.ProgramError{constructor(e,r){super("Missing delegate record",e,r),this.name="MissingDelegateRecord",this.code=190}};A.MissingDelegateRecordError=qh;C.set(190,qh);O.set("MissingDelegateRecord",qh);var Wh=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="InvalidFeeAccount",this.code=191}};A.InvalidFeeAccountError=Wh;C.set(191,Wh);O.set("InvalidFeeAccount",Wh);var Vh=class extends N.ProgramError{constructor(e,r){super("",e,r),this.name="InvalidMetadataFlags",this.code=192}};A.InvalidMetadataFlagsError=Vh;C.set(192,Vh);O.set("InvalidMetadataFlags",Vh);var Fh=class extends N.ProgramError{constructor(e,r){super("Cannot change the update authority with a delegate",e,r),this.name="CannotChangeUpdateAuthorityWithDelegate",this.code=193}};A.CannotChangeUpdateAuthorityWithDelegateError=Fh;C.set(193,Fh);O.set("CannotChangeUpdateAuthorityWithDelegate",Fh);function Jme(t,e,r){let i=C.get(t);return i?new i(e,r):null}A.getMplTokenMetadataErrorFromCode=Jme;function Yme(t,e,r){let i=O.get(t);return i?new i(e,r):null}A.getMplTokenMetadataErrorFromName=Yme});var $A=b(Hl=>{"use strict";var Qme=Hl&&Hl.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),Xme=Hl&&Hl.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Qme(e,t,r)};Object.defineProperty(Hl,"__esModule",{value:!0});Xme(dV(),Hl)});var X=b(Sn=>{"use strict";Object.defineProperty(Sn,"__esModule",{value:!0});Sn.getAccountMetasAndSigners=Sn.expectPda=Sn.expectPublicKey=Sn.expectSome=void 0;var Kh=F();function efe(t){if(t==null)throw new Error("Expected a value but received null or undefined.");return t}Sn.expectSome=efe;function tfe(t){if(!t)throw new Error("Expected a PublicKey.");return(0,Kh.publicKey)(t,!1)}Sn.expectPublicKey=tfe;function rfe(t){if(!t||!Array.isArray(t)||!(0,Kh.isPda)(t))throw new Error("Expected a PDA.");return t}Sn.expectPda=rfe;function ife(t,e,r){let i=[],a=[];return t.forEach(n=>{if(!n.value){if(e==="omitted")return;i.push({pubkey:r,isSigner:!1,isWritable:!1});return}(0,Kh.isSigner)(n.value)&&a.push(n.value),i.push({pubkey:(0,Kh.publicKey)(n.value,!1),isSigner:(0,Kh.isSigner)(n.value),isWritable:n.isWritable})}),[i,a]}Sn.getAccountMetasAndSigners=ife});var pV=b(Fu=>{"use strict";Object.defineProperty(Fu,"__esModule",{value:!0});Fu.approveCollectionAuthority=Fu.getApproveCollectionAuthorityInstructionDataSerializer=void 0;var afe=F(),GA=W(),nfe=de(),uV=X();function cV(){return(0,GA.mapSerializer)((0,GA.struct)([["discriminator",(0,GA.u8)()]],{description:"ApproveCollectionAuthorityInstructionData"}),t=>({...t,discriminator:23}))}Fu.getApproveCollectionAuthorityInstructionDataSerializer=cV;function sfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={collectionAuthorityRecord:{index:0,isWritable:!0,value:e.collectionAuthorityRecord??null},newCollectionAuthority:{index:1,isWritable:!1,value:e.newCollectionAuthority??null},updateAuthority:{index:2,isWritable:!0,value:e.updateAuthority??null},payer:{index:3,isWritable:!0,value:e.payer??null},metadata:{index:4,isWritable:!1,value:e.metadata??null},mint:{index:5,isWritable:!1,value:e.mint??null},systemProgram:{index:6,isWritable:!1,value:e.systemProgram??null},rent:{index:7,isWritable:!1,value:e.rent??null}};i.updateAuthority.value||(i.updateAuthority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.metadata.value||(i.metadata.value=(0,nfe.findMetadataPda)(t,{mint:(0,uV.expectPublicKey)(i.mint.value)})),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1);let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,uV.getAccountMetasAndSigners)(a,"omitted",r),o=cV().serialize({}),l=0;return(0,afe.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}Fu.approveCollectionAuthority=sfe});var hV=b(Ku=>{"use strict";Object.defineProperty(Ku,"__esModule",{value:!0});Ku.approveUseAuthority=Ku.getApproveUseAuthorityInstructionDataSerializer=void 0;var ofe=F(),O5=W(),lfe=de(),mV=X();function fV(){return(0,O5.mapSerializer)((0,O5.struct)([["discriminator",(0,O5.u8)()],["numberOfUses",(0,O5.u64)()]],{description:"ApproveUseAuthorityInstructionData"}),t=>({...t,discriminator:20}))}Ku.getApproveUseAuthorityInstructionDataSerializer=fV;function dfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={useAuthorityRecord:{index:0,isWritable:!0,value:e.useAuthorityRecord??null},owner:{index:1,isWritable:!0,value:e.owner??null},payer:{index:2,isWritable:!0,value:e.payer??null},user:{index:3,isWritable:!1,value:e.user??null},ownerTokenAccount:{index:4,isWritable:!0,value:e.ownerTokenAccount??null},metadata:{index:5,isWritable:!1,value:e.metadata??null},mint:{index:6,isWritable:!1,value:e.mint??null},burner:{index:7,isWritable:!1,value:e.burner??null},tokenProgram:{index:8,isWritable:!1,value:e.tokenProgram??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},rent:{index:10,isWritable:!1,value:e.rent??null}},a={...e};i.payer.value||(i.payer.value=t.payer),i.metadata.value||(i.metadata.value=(0,lfe.findMetadataPda)(t,{mint:(0,mV.expectPublicKey)(i.mint.value)})),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,mV.getAccountMetasAndSigners)(n,"omitted",r),l=fV().serialize(a),d=0;return(0,ofe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Ku.approveUseAuthority=dfe});var yV=b(Lu=>{"use strict";Object.defineProperty(Lu,"__esModule",{value:!0});Lu.bubblegumSetCollectionSize=Lu.getBubblegumSetCollectionSizeInstructionDataSerializer=void 0;var ufe=F(),ZA=W(),cfe=X(),pfe=ie();function gV(){return(0,ZA.mapSerializer)((0,ZA.struct)([["discriminator",(0,ZA.u8)()],["setCollectionSizeArgs",(0,pfe.getSetCollectionSizeArgsSerializer)()]],{description:"BubblegumSetCollectionSizeInstructionData"}),t=>({...t,discriminator:36}))}Lu.getBubblegumSetCollectionSizeInstructionDataSerializer=gV;function mfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={collectionMetadata:{index:0,isWritable:!0,value:e.collectionMetadata??null},collectionAuthority:{index:1,isWritable:!0,value:e.collectionAuthority??null},collectionMint:{index:2,isWritable:!1,value:e.collectionMint??null},bubblegumSigner:{index:3,isWritable:!1,value:e.bubblegumSigner??null},collectionAuthorityRecord:{index:4,isWritable:!1,value:e.collectionAuthorityRecord??null}},a={...e},n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,cfe.getAccountMetasAndSigners)(n,"omitted",r),l=gV().serialize(a),d=0;return(0,ufe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Lu.bubblegumSetCollectionSize=mfe});var vV=b(Uu=>{"use strict";Object.defineProperty(Uu,"__esModule",{value:!0});Uu.burnEditionNft=Uu.getBurnEditionNftInstructionDataSerializer=void 0;var ffe=F(),JA=W(),hfe=X();function bV(){return(0,JA.mapSerializer)((0,JA.struct)([["discriminator",(0,JA.u8)()]],{description:"BurnEditionNftInstructionData"}),t=>({...t,discriminator:37}))}Uu.getBurnEditionNftInstructionDataSerializer=bV;function gfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},owner:{index:1,isWritable:!0,value:e.owner??null},printEditionMint:{index:2,isWritable:!0,value:e.printEditionMint??null},masterEditionMint:{index:3,isWritable:!1,value:e.masterEditionMint??null},printEditionTokenAccount:{index:4,isWritable:!0,value:e.printEditionTokenAccount??null},masterEditionTokenAccount:{index:5,isWritable:!1,value:e.masterEditionTokenAccount??null},masterEditionAccount:{index:6,isWritable:!0,value:e.masterEditionAccount??null},printEditionAccount:{index:7,isWritable:!0,value:e.printEditionAccount??null},editionMarkerAccount:{index:8,isWritable:!0,value:e.editionMarkerAccount??null},splTokenProgram:{index:9,isWritable:!1,value:e.splTokenProgram??null}};i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1);let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,hfe.getAccountMetasAndSigners)(a,"programId",r),o=bV().serialize({}),l=0;return(0,ffe.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}Uu.burnEditionNft=gfe});var xV=b(ju=>{"use strict";Object.defineProperty(ju,"__esModule",{value:!0});ju.burnNft=ju.getBurnNftInstructionDataSerializer=void 0;var yfe=F(),YA=W(),bfe=de(),SV=X();function wV(){return(0,YA.mapSerializer)((0,YA.struct)([["discriminator",(0,YA.u8)()]],{description:"BurnNftInstructionData"}),t=>({...t,discriminator:29}))}ju.getBurnNftInstructionDataSerializer=wV;function vfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},owner:{index:1,isWritable:!0,value:e.owner??null},mint:{index:2,isWritable:!0,value:e.mint??null},tokenAccount:{index:3,isWritable:!0,value:e.tokenAccount??null},masterEditionAccount:{index:4,isWritable:!0,value:e.masterEditionAccount??null},splTokenProgram:{index:5,isWritable:!1,value:e.splTokenProgram??null},collectionMetadata:{index:6,isWritable:!0,value:e.collectionMetadata??null}};i.metadata.value||(i.metadata.value=(0,bfe.findMetadataPda)(t,{mint:(0,SV.expectPublicKey)(i.mint.value)})),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1);let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,SV.getAccountMetasAndSigners)(a,"omitted",r),o=wV().serialize({}),l=0;return(0,yfe.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}ju.burnNft=vfe});var kV=b(Hu=>{"use strict";Object.defineProperty(Hu,"__esModule",{value:!0});Hu.burnV1=Hu.getBurnV1InstructionDataSerializer=void 0;var Sfe=_t(),AV=F(),Lh=W(),wfe=We(),N5=de(),Ho=X(),xfe=ie();function _V(){return(0,Lh.mapSerializer)((0,Lh.struct)([["discriminator",(0,Lh.u8)()],["burnV1Discriminator",(0,Lh.u8)()],["amount",(0,Lh.u64)()]],{description:"BurnV1InstructionData"}),t=>({...t,discriminator:41,burnV1Discriminator:0,amount:t.amount??1}))}Hu.getBurnV1InstructionDataSerializer=_V;function Afe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!0,value:e.authority??null},collectionMetadata:{index:1,isWritable:!0,value:e.collectionMetadata??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},edition:{index:3,isWritable:!0,value:e.edition??null},mint:{index:4,isWritable:!0,value:e.mint??null},token:{index:5,isWritable:!0,value:e.token??null},masterEdition:{index:6,isWritable:!0,value:e.masterEdition??null},masterEditionMint:{index:7,isWritable:!1,value:e.masterEditionMint??null},masterEditionToken:{index:8,isWritable:!1,value:e.masterEditionToken??null},editionMarker:{index:9,isWritable:!0,value:e.editionMarker??null},tokenRecord:{index:10,isWritable:!0,value:e.tokenRecord??null},systemProgram:{index:11,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:12,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:13,isWritable:!1,value:e.splTokenProgram??null}},a={...e};i.authority.value||(i.authority.value=t.identity),i.metadata.value||(i.metadata.value=(0,N5.findMetadataPda)(t,{mint:(0,Ho.expectPublicKey)(i.mint.value)})),i.edition.value||(0,wfe.resolveIsNonFungible)(t,i,a,r,!0)&&(i.edition.value=(0,N5.findMasterEditionPda)(t,{mint:(0,Ho.expectPublicKey)(i.mint.value)})),a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,Sfe.findAssociatedTokenPda)(t,{mint:(0,Ho.expectPublicKey)(i.mint.value),owner:(0,Ho.expectSome)(a.tokenOwner)})),i.masterEdition.value||i.masterEditionMint.value&&(i.masterEdition.value=(0,N5.findMasterEditionPda)(t,{mint:(0,Ho.expectPublicKey)(i.masterEditionMint.value)})),i.tokenRecord.value||a.tokenStandard===xfe.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,N5.findTokenRecordPda)(t,{mint:(0,Ho.expectPublicKey)(i.mint.value),token:(0,Ho.expectPublicKey)(i.token.value)})),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,AV.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Ho.getAccountMetasAndSigners)(n,"programId",r),l=_V().serialize(a),d=0;return(0,AV.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Hu.burnV1=Afe});var zV=b($u=>{"use strict";Object.defineProperty($u,"__esModule",{value:!0});$u.closeEscrowAccount=$u.getCloseEscrowAccountInstructionDataSerializer=void 0;var EV=F(),QA=W(),PV=de(),XA=X();function TV(){return(0,QA.mapSerializer)((0,QA.struct)([["discriminator",(0,QA.u8)()]],{description:"CloseEscrowAccountInstructionData"}),t=>({...t,discriminator:39}))}$u.getCloseEscrowAccountInstructionDataSerializer=TV;function _fe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={escrow:{index:0,isWritable:!0,value:e.escrow??null},metadata:{index:1,isWritable:!0,value:e.metadata??null},mint:{index:2,isWritable:!1,value:e.mint??null},tokenAccount:{index:3,isWritable:!1,value:e.tokenAccount??null},edition:{index:4,isWritable:!1,value:e.edition??null},payer:{index:5,isWritable:!0,value:e.payer??null},systemProgram:{index:6,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:7,isWritable:!1,value:e.sysvarInstructions??null}};i.metadata.value||(i.metadata.value=(0,PV.findMetadataPda)(t,{mint:(0,XA.expectPublicKey)(i.mint.value)})),i.edition.value||(i.edition.value=(0,PV.findMasterEditionPda)(t,{mint:(0,XA.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,EV.publicKey)("Sysvar1nstructions1111111111111111111111111"));let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,XA.getAccountMetasAndSigners)(a,"programId",r),o=TV().serialize({}),l=0;return(0,EV.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}$u.closeEscrowAccount=_fe});var MV=b(Gu=>{"use strict";Object.defineProperty(Gu,"__esModule",{value:!0});Gu.collect=Gu.getCollectInstructionDataSerializer=void 0;var kfe=F(),e_=W(),Efe=X();function IV(){return(0,e_.mapSerializer)((0,e_.struct)([["discriminator",(0,e_.u8)()]],{description:"CollectInstructionData"}),t=>({...t,discriminator:54}))}Gu.getCollectInstructionDataSerializer=IV;function Pfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},pdaAccount:{index:1,isWritable:!1,value:e.pdaAccount??null}};i.authority.value||(i.authority.value=t.identity);let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,Efe.getAccountMetasAndSigners)(a,"programId",r),o=IV().serialize({}),l=0;return(0,kfe.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}Gu.collect=Pfe});var RV=b(Zu=>{"use strict";Object.defineProperty(Zu,"__esModule",{value:!0});Zu.convertMasterEditionV1ToV2=Zu.getConvertMasterEditionV1ToV2InstructionDataSerializer=void 0;var Tfe=F(),t_=W(),zfe=X();function DV(){return(0,t_.mapSerializer)((0,t_.struct)([["discriminator",(0,t_.u8)()]],{description:"ConvertMasterEditionV1ToV2InstructionData"}),t=>({...t,discriminator:12}))}Zu.getConvertMasterEditionV1ToV2InstructionDataSerializer=DV;function Ife(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={masterEdition:{index:0,isWritable:!0,value:e.masterEdition??null},oneTimeAuth:{index:1,isWritable:!0,value:e.oneTimeAuth??null},printingMint:{index:2,isWritable:!0,value:e.printingMint??null}},a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,zfe.getAccountMetasAndSigners)(a,"programId",r),o=DV().serialize({}),l=0;return(0,Tfe.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}Zu.convertMasterEditionV1ToV2=Ife});var NV=b(Ju=>{"use strict";Object.defineProperty(Ju,"__esModule",{value:!0});Ju.createEscrowAccount=Ju.getCreateEscrowAccountInstructionDataSerializer=void 0;var BV=F(),r_=W(),CV=de(),i_=X();function OV(){return(0,r_.mapSerializer)((0,r_.struct)([["discriminator",(0,r_.u8)()]],{description:"CreateEscrowAccountInstructionData"}),t=>({...t,discriminator:38}))}Ju.getCreateEscrowAccountInstructionDataSerializer=OV;function Mfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={escrow:{index:0,isWritable:!0,value:e.escrow??null},metadata:{index:1,isWritable:!0,value:e.metadata??null},mint:{index:2,isWritable:!1,value:e.mint??null},tokenAccount:{index:3,isWritable:!1,value:e.tokenAccount??null},edition:{index:4,isWritable:!1,value:e.edition??null},payer:{index:5,isWritable:!0,value:e.payer??null},systemProgram:{index:6,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:7,isWritable:!1,value:e.sysvarInstructions??null},authority:{index:8,isWritable:!1,value:e.authority??null}};i.metadata.value||(i.metadata.value=(0,CV.findMetadataPda)(t,{mint:(0,i_.expectPublicKey)(i.mint.value)})),i.edition.value||(i.edition.value=(0,CV.findMasterEditionPda)(t,{mint:(0,i_.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,BV.publicKey)("Sysvar1nstructions1111111111111111111111111"));let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,i_.getAccountMetasAndSigners)(a,"omitted",r),o=OV().serialize({}),l=0;return(0,BV.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}Ju.createEscrowAccount=Mfe});var VV=b(Yu=>{"use strict";Object.defineProperty(Yu,"__esModule",{value:!0});Yu.createMasterEditionV3=Yu.getCreateMasterEditionV3InstructionDataSerializer=void 0;var Dfe=F(),Uh=W(),qV=de(),a_=X();function WV(){return(0,Uh.mapSerializer)((0,Uh.struct)([["discriminator",(0,Uh.u8)()],["maxSupply",(0,Uh.option)((0,Uh.u64)())]],{description:"CreateMasterEditionV3InstructionData"}),t=>({...t,discriminator:17}))}Yu.getCreateMasterEditionV3InstructionDataSerializer=WV;function Rfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={edition:{index:0,isWritable:!0,value:e.edition??null},mint:{index:1,isWritable:!0,value:e.mint??null},updateAuthority:{index:2,isWritable:!1,value:e.updateAuthority??null},mintAuthority:{index:3,isWritable:!1,value:e.mintAuthority??null},payer:{index:4,isWritable:!0,value:e.payer??null},metadata:{index:5,isWritable:!0,value:e.metadata??null},tokenProgram:{index:6,isWritable:!1,value:e.tokenProgram??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},rent:{index:8,isWritable:!1,value:e.rent??null}},a={...e};i.edition.value||(i.edition.value=(0,qV.findMasterEditionPda)(t,{mint:(0,a_.expectPublicKey)(i.mint.value)})),i.updateAuthority.value||(i.updateAuthority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.metadata.value||(i.metadata.value=(0,qV.findMetadataPda)(t,{mint:(0,a_.expectPublicKey)(i.mint.value)})),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,a_.getAccountMetasAndSigners)(n,"omitted",r),l=WV().serialize(a),d=0;return(0,Dfe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Yu.createMasterEditionV3=Rfe});var UV=b(Qu=>{"use strict";Object.defineProperty(Qu,"__esModule",{value:!0});Qu.createMetadataAccountV3=Qu.getCreateMetadataAccountV3InstructionDataSerializer=void 0;var Bfe=F(),jh=W(),Cfe=de(),FV=X(),KV=ie();function LV(){return(0,jh.mapSerializer)((0,jh.struct)([["discriminator",(0,jh.u8)()],["data",(0,KV.getDataV2Serializer)()],["isMutable",(0,jh.bool)()],["collectionDetails",(0,jh.option)((0,KV.getCollectionDetailsSerializer)())]],{description:"CreateMetadataAccountV3InstructionData"}),t=>({...t,discriminator:33}))}Qu.getCreateMetadataAccountV3InstructionDataSerializer=LV;function Ofe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},mint:{index:1,isWritable:!1,value:e.mint??null},mintAuthority:{index:2,isWritable:!1,value:e.mintAuthority??null},payer:{index:3,isWritable:!0,value:e.payer??null},updateAuthority:{index:4,isWritable:!1,value:e.updateAuthority??null},systemProgram:{index:5,isWritable:!1,value:e.systemProgram??null},rent:{index:6,isWritable:!1,value:e.rent??null}},a={...e};i.metadata.value||(i.metadata.value=(0,Cfe.findMetadataPda)(t,{mint:(0,FV.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.updateAuthority.value||(i.updateAuthority.value=t.identity.publicKey),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,FV.getAccountMetasAndSigners)(n,"omitted",r),l=LV().serialize(a),d=0;return(0,Bfe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Qu.createMetadataAccountV3=Ofe});var $V=b(ec=>{"use strict";Object.defineProperty(ec,"__esModule",{value:!0});ec.createV1=ec.getCreateV1InstructionDataSerializer=void 0;var ns=F(),br=W(),Xu=We(),jV=de(),q5=X(),$l=ie();function HV(){return(0,br.mapSerializer)((0,br.struct)([["discriminator",(0,br.u8)()],["createV1Discriminator",(0,br.u8)()],["name",(0,br.string)()],["symbol",(0,br.string)()],["uri",(0,br.string)()],["sellerFeeBasisPoints",(0,ns.mapAmountSerializer)((0,br.u16)(),"%",2)],["creators",(0,br.option)((0,br.array)((0,$l.getCreatorSerializer)()))],["primarySaleHappened",(0,br.bool)()],["isMutable",(0,br.bool)()],["tokenStandard",(0,$l.getTokenStandardSerializer)()],["collection",(0,br.option)((0,$l.getCollectionSerializer)())],["uses",(0,br.option)((0,$l.getUsesSerializer)())],["collectionDetails",(0,br.option)((0,$l.getCollectionDetailsSerializer)())],["ruleSet",(0,br.option)((0,br.publicKey)())],["decimals",(0,br.option)((0,br.u8)())],["printSupply",(0,br.option)((0,$l.getPrintSupplySerializer)())]],{description:"CreateV1InstructionData"}),t=>({...t,discriminator:42,createV1Discriminator:0,symbol:t.symbol??"",primarySaleHappened:t.primarySaleHappened??!1,isMutable:t.isMutable??!0,collection:t.collection??(0,ns.none)(),uses:t.uses??(0,ns.none)(),collectionDetails:t.collectionDetails??(0,ns.none)(),ruleSet:t.ruleSet??(0,ns.none)(),decimals:t.decimals??(0,ns.none)(),printSupply:t.printSupply??(0,ns.none)()}))}ec.getCreateV1InstructionDataSerializer=HV;function Nfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},masterEdition:{index:1,isWritable:!0,value:e.masterEdition??null},mint:{index:2,isWritable:!0,value:e.mint??null},authority:{index:3,isWritable:!1,value:e.authority??null},payer:{index:4,isWritable:!0,value:e.payer??null},updateAuthority:{index:5,isWritable:!1,value:e.updateAuthority??null},systemProgram:{index:6,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:7,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:8,isWritable:!1,value:e.splTokenProgram??null}},a={...e};i.metadata.value||(i.metadata.value=(0,jV.findMetadataPda)(t,{mint:(0,q5.expectPublicKey)(i.mint.value)})),a.tokenStandard||(a.tokenStandard=$l.TokenStandard.NonFungible),i.masterEdition.value||(0,Xu.resolveIsNonFungible)(t,i,a,r,!0)&&(i.masterEdition.value=(0,jV.findMasterEditionPda)(t,{mint:(0,q5.expectPublicKey)(i.mint.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.updateAuthority.value||(i.updateAuthority.value=(0,q5.expectSome)(i.authority.value)),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,ns.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),a.isCollection||(a.isCollection=!1),a.collectionDetails||(a.collectionDetails=(0,Xu.resolveCollectionDetails)(t,i,a,r,!1)),a.decimals||(a.decimals=(0,Xu.resolveDecimals)(t,i,a,r,!1)),a.printSupply||(a.printSupply=(0,Xu.resolvePrintSupply)(t,i,a,r,!1)),a.creators||(a.creators=(0,Xu.resolveCreators)(t,i,a,r,!1));let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,q5.getAccountMetasAndSigners)(n,"programId",r),l=HV().serialize(a),d=(0,Xu.resolveCreateV1Bytes)(t,i,a,r);return(0,ns.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}ec.createV1=Nfe});var JV=b(tc=>{"use strict";Object.defineProperty(tc,"__esModule",{value:!0});tc.delegateAuthorityItemV1=tc.getDelegateAuthorityItemV1InstructionDataSerializer=void 0;var s_=F(),Hh=W(),qfe=We(),n_=de(),Gl=X(),GV=ie();function ZV(){return(0,Hh.mapSerializer)((0,Hh.struct)([["discriminator",(0,Hh.u8)()],["delegateAuthorityItemV1Discriminator",(0,Hh.u8)()],["authorizationData",(0,Hh.option)((0,GV.getAuthorizationDataSerializer)())]],{description:"DelegateAuthorityItemV1InstructionData"}),t=>({...t,discriminator:44,delegateAuthorityItemV1Discriminator:9,authorizationData:t.authorizationData??(0,s_.none)()}))}tc.getDelegateAuthorityItemV1InstructionDataSerializer=ZV;function Wfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,Gl.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,n_.findMetadataDelegateRecordPda)(t,{mint:(0,Gl.expectPublicKey)(i.mint.value),delegateRole:GV.MetadataDelegateRole.AuthorityItem,updateAuthority:(0,Gl.expectSome)(a.updateAuthority),delegate:(0,Gl.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,n_.findMetadataPda)(t,{mint:(0,Gl.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,qfe.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,n_.findMasterEditionPda)(t,{mint:(0,Gl.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,s_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Gl.getAccountMetasAndSigners)(n,"programId",r),l=ZV().serialize(a),d=0;return(0,s_.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}tc.delegateAuthorityItemV1=Wfe});var XV=b(rc=>{"use strict";Object.defineProperty(rc,"__esModule",{value:!0});rc.delegateCollectionItemV1=rc.getDelegateCollectionItemV1InstructionDataSerializer=void 0;var l_=F(),$h=W(),Vfe=We(),o_=de(),Zl=X(),YV=ie();function QV(){return(0,$h.mapSerializer)((0,$h.struct)([["discriminator",(0,$h.u8)()],["delegateCollectionItemV1Discriminator",(0,$h.u8)()],["authorizationData",(0,$h.option)((0,YV.getAuthorizationDataSerializer)())]],{description:"DelegateCollectionItemV1InstructionData"}),t=>({...t,discriminator:44,delegateCollectionItemV1Discriminator:11,authorizationData:t.authorizationData??(0,l_.none)()}))}rc.getDelegateCollectionItemV1InstructionDataSerializer=QV;function Ffe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,Zl.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,o_.findMetadataDelegateRecordPda)(t,{mint:(0,Zl.expectPublicKey)(i.mint.value),delegateRole:YV.MetadataDelegateRole.CollectionItem,updateAuthority:(0,Zl.expectSome)(a.updateAuthority),delegate:(0,Zl.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,o_.findMetadataPda)(t,{mint:(0,Zl.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,Vfe.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,o_.findMasterEditionPda)(t,{mint:(0,Zl.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,l_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Zl.getAccountMetasAndSigners)(n,"programId",r),l=QV().serialize(a),d=0;return(0,l_.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}rc.delegateCollectionItemV1=Ffe});var rF=b(ic=>{"use strict";Object.defineProperty(ic,"__esModule",{value:!0});ic.delegateCollectionV1=ic.getDelegateCollectionV1InstructionDataSerializer=void 0;var u_=F(),Gh=W(),Kfe=We(),d_=de(),Jl=X(),eF=ie();function tF(){return(0,Gh.mapSerializer)((0,Gh.struct)([["discriminator",(0,Gh.u8)()],["delegateCollectionV1Discriminator",(0,Gh.u8)()],["authorizationData",(0,Gh.option)((0,eF.getAuthorizationDataSerializer)())]],{description:"DelegateCollectionV1InstructionData"}),t=>({...t,discriminator:44,delegateCollectionV1Discriminator:0,authorizationData:t.authorizationData??(0,u_.none)()}))}ic.getDelegateCollectionV1InstructionDataSerializer=tF;function Lfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,Jl.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,d_.findMetadataDelegateRecordPda)(t,{mint:(0,Jl.expectPublicKey)(i.mint.value),delegateRole:eF.MetadataDelegateRole.Collection,updateAuthority:(0,Jl.expectSome)(a.updateAuthority),delegate:(0,Jl.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,d_.findMetadataPda)(t,{mint:(0,Jl.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,Kfe.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,d_.findMasterEditionPda)(t,{mint:(0,Jl.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,u_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Jl.getAccountMetasAndSigners)(n,"programId",r),l=tF().serialize(a),d=0;return(0,u_.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}ic.delegateCollectionV1=Lfe});var nF=b(ac=>{"use strict";Object.defineProperty(ac,"__esModule",{value:!0});ac.delegateDataItemV1=ac.getDelegateDataItemV1InstructionDataSerializer=void 0;var p_=F(),Zh=W(),Ufe=We(),c_=de(),Yl=X(),iF=ie();function aF(){return(0,Zh.mapSerializer)((0,Zh.struct)([["discriminator",(0,Zh.u8)()],["delegateDataItemV1Discriminator",(0,Zh.u8)()],["authorizationData",(0,Zh.option)((0,iF.getAuthorizationDataSerializer)())]],{description:"DelegateDataItemV1InstructionData"}),t=>({...t,discriminator:44,delegateDataItemV1Discriminator:10,authorizationData:t.authorizationData??(0,p_.none)()}))}ac.getDelegateDataItemV1InstructionDataSerializer=aF;function jfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,Yl.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,c_.findMetadataDelegateRecordPda)(t,{mint:(0,Yl.expectPublicKey)(i.mint.value),delegateRole:iF.MetadataDelegateRole.DataItem,updateAuthority:(0,Yl.expectSome)(a.updateAuthority),delegate:(0,Yl.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,c_.findMetadataPda)(t,{mint:(0,Yl.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,Ufe.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,c_.findMasterEditionPda)(t,{mint:(0,Yl.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,p_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Yl.getAccountMetasAndSigners)(n,"programId",r),l=aF().serialize(a),d=0;return(0,p_.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}ac.delegateDataItemV1=jfe});var lF=b(nc=>{"use strict";Object.defineProperty(nc,"__esModule",{value:!0});nc.delegateDataV1=nc.getDelegateDataV1InstructionDataSerializer=void 0;var f_=F(),Jh=W(),Hfe=We(),m_=de(),Ql=X(),sF=ie();function oF(){return(0,Jh.mapSerializer)((0,Jh.struct)([["discriminator",(0,Jh.u8)()],["delegateDataV1Discriminator",(0,Jh.u8)()],["authorizationData",(0,Jh.option)((0,sF.getAuthorizationDataSerializer)())]],{description:"DelegateDataV1InstructionData"}),t=>({...t,discriminator:44,delegateDataV1Discriminator:3,authorizationData:t.authorizationData??(0,f_.none)()}))}nc.getDelegateDataV1InstructionDataSerializer=oF;function $fe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,Ql.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,m_.findMetadataDelegateRecordPda)(t,{mint:(0,Ql.expectPublicKey)(i.mint.value),delegateRole:sF.MetadataDelegateRole.Data,updateAuthority:(0,Ql.expectSome)(a.updateAuthority),delegate:(0,Ql.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,m_.findMetadataPda)(t,{mint:(0,Ql.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,Hfe.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,m_.findMasterEditionPda)(t,{mint:(0,Ql.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,f_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Ql.getAccountMetasAndSigners)(n,"programId",r),l=oF().serialize(a),d=0;return(0,f_.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}nc.delegateDataV1=$fe});var cF=b(sc=>{"use strict";Object.defineProperty(sc,"__esModule",{value:!0});sc.delegateLockedTransferV1=sc.getDelegateLockedTransferV1InstructionDataSerializer=void 0;var Gfe=_t(),h_=F(),Xl=W(),Zfe=We(),W5=de(),ss=X(),dF=ie();function uF(){return(0,Xl.mapSerializer)((0,Xl.struct)([["discriminator",(0,Xl.u8)()],["delegateLockedTransferV1Discriminator",(0,Xl.u8)()],["amount",(0,Xl.u64)()],["lockedAddress",(0,Xl.publicKey)()],["authorizationData",(0,Xl.option)((0,dF.getAuthorizationDataSerializer)())]],{description:"DelegateLockedTransferV1InstructionData"}),t=>({...t,discriminator:44,delegateLockedTransferV1Discriminator:7,amount:t.amount??1,authorizationData:t.authorizationData??(0,h_.none)()}))}sc.getDelegateLockedTransferV1InstructionDataSerializer=uF;function Jfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,Gfe.findAssociatedTokenPda)(t,{mint:(0,ss.expectPublicKey)(i.mint.value),owner:(0,ss.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,W5.findTokenRecordPda)(t,{mint:(0,ss.expectPublicKey)(i.mint.value),token:(0,ss.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,W5.findMetadataPda)(t,{mint:(0,ss.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,Zfe.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,W5.findMasterEditionPda)(t,{mint:(0,ss.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===dF.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,W5.findTokenRecordPda)(t,{mint:(0,ss.expectPublicKey)(i.mint.value),token:(0,ss.expectPublicKey)(i.token.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,h_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,ss.getAccountMetasAndSigners)(n,"programId",r),l=uF().serialize(a),d=0;return(0,h_.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}sc.delegateLockedTransferV1=Jfe});var fF=b(oc=>{"use strict";Object.defineProperty(oc,"__esModule",{value:!0});oc.delegateProgrammableConfigItemV1=oc.getDelegateProgrammableConfigItemV1InstructionDataSerializer=void 0;var y_=F(),Yh=W(),Yfe=We(),g_=de(),e1=X(),pF=ie();function mF(){return(0,Yh.mapSerializer)((0,Yh.struct)([["discriminator",(0,Yh.u8)()],["delegateProgrammableConfigItemV1Discriminator",(0,Yh.u8)()],["authorizationData",(0,Yh.option)((0,pF.getAuthorizationDataSerializer)())]],{description:"DelegateProgrammableConfigItemV1InstructionData"}),t=>({...t,discriminator:44,delegateProgrammableConfigItemV1Discriminator:12,authorizationData:t.authorizationData??(0,y_.none)()}))}oc.getDelegateProgrammableConfigItemV1InstructionDataSerializer=mF;function Qfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,e1.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,g_.findMetadataDelegateRecordPda)(t,{mint:(0,e1.expectPublicKey)(i.mint.value),delegateRole:pF.MetadataDelegateRole.ProgrammableConfigItem,updateAuthority:(0,e1.expectSome)(a.updateAuthority),delegate:(0,e1.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,g_.findMetadataPda)(t,{mint:(0,e1.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,Yfe.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,g_.findMasterEditionPda)(t,{mint:(0,e1.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,y_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,e1.getAccountMetasAndSigners)(n,"programId",r),l=mF().serialize(a),d=0;return(0,y_.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}oc.delegateProgrammableConfigItemV1=Qfe});var yF=b(lc=>{"use strict";Object.defineProperty(lc,"__esModule",{value:!0});lc.delegateProgrammableConfigV1=lc.getDelegateProgrammableConfigV1InstructionDataSerializer=void 0;var v_=F(),Qh=W(),Xfe=We(),b_=de(),t1=X(),hF=ie();function gF(){return(0,Qh.mapSerializer)((0,Qh.struct)([["discriminator",(0,Qh.u8)()],["delegateProgrammableConfigV1Discriminator",(0,Qh.u8)()],["authorizationData",(0,Qh.option)((0,hF.getAuthorizationDataSerializer)())]],{description:"DelegateProgrammableConfigV1InstructionData"}),t=>({...t,discriminator:44,delegateProgrammableConfigV1Discriminator:8,authorizationData:t.authorizationData??(0,v_.none)()}))}lc.getDelegateProgrammableConfigV1InstructionDataSerializer=gF;function e2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,t1.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,b_.findMetadataDelegateRecordPda)(t,{mint:(0,t1.expectPublicKey)(i.mint.value),delegateRole:hF.MetadataDelegateRole.ProgrammableConfig,updateAuthority:(0,t1.expectSome)(a.updateAuthority),delegate:(0,t1.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,b_.findMetadataPda)(t,{mint:(0,t1.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,Xfe.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,b_.findMasterEditionPda)(t,{mint:(0,t1.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,v_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,t1.getAccountMetasAndSigners)(n,"programId",r),l=gF().serialize(a),d=0;return(0,v_.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}lc.delegateProgrammableConfigV1=e2e});var SF=b(uc=>{"use strict";Object.defineProperty(uc,"__esModule",{value:!0});uc.delegateSaleV1=uc.getDelegateSaleV1InstructionDataSerializer=void 0;var t2e=_t(),S_=F(),dc=W(),r2e=We(),V5=de(),os=X(),bF=ie();function vF(){return(0,dc.mapSerializer)((0,dc.struct)([["discriminator",(0,dc.u8)()],["delegateSaleV1Discriminator",(0,dc.u8)()],["amount",(0,dc.u64)()],["authorizationData",(0,dc.option)((0,bF.getAuthorizationDataSerializer)())]],{description:"DelegateSaleV1InstructionData"}),t=>({...t,discriminator:44,delegateSaleV1Discriminator:1,amount:t.amount??1,authorizationData:t.authorizationData??(0,S_.none)()}))}uc.getDelegateSaleV1InstructionDataSerializer=vF;function i2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,t2e.findAssociatedTokenPda)(t,{mint:(0,os.expectPublicKey)(i.mint.value),owner:(0,os.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,V5.findTokenRecordPda)(t,{mint:(0,os.expectPublicKey)(i.mint.value),token:(0,os.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,V5.findMetadataPda)(t,{mint:(0,os.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,r2e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,V5.findMasterEditionPda)(t,{mint:(0,os.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===bF.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,V5.findTokenRecordPda)(t,{mint:(0,os.expectPublicKey)(i.mint.value),token:(0,os.expectPublicKey)(i.token.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,S_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,os.getAccountMetasAndSigners)(n,"programId",r),l=vF().serialize(a),d=0;return(0,S_.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}uc.delegateSaleV1=i2e});var AF=b(pc=>{"use strict";Object.defineProperty(pc,"__esModule",{value:!0});pc.delegateStakingV1=pc.getDelegateStakingV1InstructionDataSerializer=void 0;var a2e=_t(),w_=F(),cc=W(),n2e=We(),F5=de(),ls=X(),wF=ie();function xF(){return(0,cc.mapSerializer)((0,cc.struct)([["discriminator",(0,cc.u8)()],["delegateStakingV1Discriminator",(0,cc.u8)()],["amount",(0,cc.u64)()],["authorizationData",(0,cc.option)((0,wF.getAuthorizationDataSerializer)())]],{description:"DelegateStakingV1InstructionData"}),t=>({...t,discriminator:44,delegateStakingV1Discriminator:5,amount:t.amount??1,authorizationData:t.authorizationData??(0,w_.none)()}))}pc.getDelegateStakingV1InstructionDataSerializer=xF;function s2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,a2e.findAssociatedTokenPda)(t,{mint:(0,ls.expectPublicKey)(i.mint.value),owner:(0,ls.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,F5.findTokenRecordPda)(t,{mint:(0,ls.expectPublicKey)(i.mint.value),token:(0,ls.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,F5.findMetadataPda)(t,{mint:(0,ls.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,n2e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,F5.findMasterEditionPda)(t,{mint:(0,ls.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===wF.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,F5.findTokenRecordPda)(t,{mint:(0,ls.expectPublicKey)(i.mint.value),token:(0,ls.expectPublicKey)(i.token.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,w_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,ls.getAccountMetasAndSigners)(n,"programId",r),l=xF().serialize(a),d=0;return(0,w_.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}pc.delegateStakingV1=s2e});var EF=b(mc=>{"use strict";Object.defineProperty(mc,"__esModule",{value:!0});mc.delegateStandardV1=mc.getDelegateStandardV1InstructionDataSerializer=void 0;var o2e=_t(),_F=F(),Xh=W(),l2e=We(),x_=de(),r1=X();function kF(){return(0,Xh.mapSerializer)((0,Xh.struct)([["discriminator",(0,Xh.u8)()],["delegateStandardV1Discriminator",(0,Xh.u8)()],["amount",(0,Xh.u64)()]],{description:"DelegateStandardV1InstructionData"}),t=>({...t,discriminator:44,delegateStandardV1Discriminator:6,amount:t.amount??1}))}mc.getDelegateStandardV1InstructionDataSerializer=kF;function d2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,o2e.findAssociatedTokenPda)(t,{mint:(0,r1.expectPublicKey)(i.mint.value),owner:(0,r1.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,x_.findTokenRecordPda)(t,{mint:(0,r1.expectPublicKey)(i.mint.value),token:(0,r1.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,x_.findMetadataPda)(t,{mint:(0,r1.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,l2e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,x_.findMasterEditionPda)(t,{mint:(0,r1.expectPublicKey)(i.mint.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,_F.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,r1.getAccountMetasAndSigners)(n,"programId",r),l=kF().serialize(a),d=0;return(0,_F.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}mc.delegateStandardV1=d2e});var zF=b(hc=>{"use strict";Object.defineProperty(hc,"__esModule",{value:!0});hc.delegateTransferV1=hc.getDelegateTransferV1InstructionDataSerializer=void 0;var u2e=_t(),A_=F(),fc=W(),c2e=We(),K5=de(),ds=X(),PF=ie();function TF(){return(0,fc.mapSerializer)((0,fc.struct)([["discriminator",(0,fc.u8)()],["delegateTransferV1Discriminator",(0,fc.u8)()],["amount",(0,fc.u64)()],["authorizationData",(0,fc.option)((0,PF.getAuthorizationDataSerializer)())]],{description:"DelegateTransferV1InstructionData"}),t=>({...t,discriminator:44,delegateTransferV1Discriminator:2,amount:t.amount??1,authorizationData:t.authorizationData??(0,A_.none)()}))}hc.getDelegateTransferV1InstructionDataSerializer=TF;function p2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,u2e.findAssociatedTokenPda)(t,{mint:(0,ds.expectPublicKey)(i.mint.value),owner:(0,ds.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,K5.findTokenRecordPda)(t,{mint:(0,ds.expectPublicKey)(i.mint.value),token:(0,ds.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,K5.findMetadataPda)(t,{mint:(0,ds.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,c2e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,K5.findMasterEditionPda)(t,{mint:(0,ds.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===PF.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,K5.findTokenRecordPda)(t,{mint:(0,ds.expectPublicKey)(i.mint.value),token:(0,ds.expectPublicKey)(i.token.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,A_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,ds.getAccountMetasAndSigners)(n,"programId",r),l=TF().serialize(a),d=0;return(0,A_.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}hc.delegateTransferV1=p2e});var DF=b(yc=>{"use strict";Object.defineProperty(yc,"__esModule",{value:!0});yc.delegateUtilityV1=yc.getDelegateUtilityV1InstructionDataSerializer=void 0;var m2e=_t(),__=F(),gc=W(),f2e=We(),L5=de(),us=X(),IF=ie();function MF(){return(0,gc.mapSerializer)((0,gc.struct)([["discriminator",(0,gc.u8)()],["delegateUtilityV1Discriminator",(0,gc.u8)()],["amount",(0,gc.u64)()],["authorizationData",(0,gc.option)((0,IF.getAuthorizationDataSerializer)())]],{description:"DelegateUtilityV1InstructionData"}),t=>({...t,discriminator:44,delegateUtilityV1Discriminator:4,amount:t.amount??1,authorizationData:t.authorizationData??(0,__.none)()}))}yc.getDelegateUtilityV1InstructionDataSerializer=MF;function h2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,m2e.findAssociatedTokenPda)(t,{mint:(0,us.expectPublicKey)(i.mint.value),owner:(0,us.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,L5.findTokenRecordPda)(t,{mint:(0,us.expectPublicKey)(i.mint.value),token:(0,us.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,L5.findMetadataPda)(t,{mint:(0,us.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,f2e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,L5.findMasterEditionPda)(t,{mint:(0,us.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===IF.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,L5.findTokenRecordPda)(t,{mint:(0,us.expectPublicKey)(i.mint.value),token:(0,us.expectPublicKey)(i.token.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,__.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,us.getAccountMetasAndSigners)(n,"programId",r),l=MF().serialize(a),d=0;return(0,__.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}yc.delegateUtilityV1=h2e});var CF=b(bc=>{"use strict";Object.defineProperty(bc,"__esModule",{value:!0});bc.deprecatedMintNewEditionFromMasterEditionViaPrintingToken=bc.getDeprecatedMintNewEditionFromMasterEditionViaPrintingTokenInstructionDataSerializer=void 0;var RF=F(),k_=W(),U5=de(),e4=X();function BF(){return(0,k_.mapSerializer)((0,k_.struct)([["discriminator",(0,k_.u8)()]],{description:"DeprecatedMintNewEditionFromMasterEditionViaPrintingTokenInstructionData"}),t=>({...t,discriminator:3}))}bc.getDeprecatedMintNewEditionFromMasterEditionViaPrintingTokenInstructionDataSerializer=BF;function g2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},edition:{index:1,isWritable:!0,value:e.edition??null},masterEdition:{index:2,isWritable:!0,value:e.masterEdition??null},mint:{index:3,isWritable:!0,value:e.mint??null},mintAuthority:{index:4,isWritable:!1,value:e.mintAuthority??null},printingMint:{index:5,isWritable:!0,value:e.printingMint??null},masterTokenAccount:{index:6,isWritable:!0,value:e.masterTokenAccount??null},editionMarker:{index:7,isWritable:!0,value:e.editionMarker??null},burnAuthority:{index:8,isWritable:!1,value:e.burnAuthority??null},payer:{index:9,isWritable:!1,value:e.payer??null},masterUpdateAuthority:{index:10,isWritable:!1,value:e.masterUpdateAuthority??null},masterMetadata:{index:11,isWritable:!1,value:e.masterMetadata??null},tokenProgram:{index:12,isWritable:!1,value:e.tokenProgram??null},systemProgram:{index:13,isWritable:!1,value:e.systemProgram??null},rent:{index:14,isWritable:!1,value:e.rent??null},reservationList:{index:15,isWritable:!0,value:e.reservationList??null}};i.metadata.value||(i.metadata.value=(0,U5.findMetadataPda)(t,{mint:(0,e4.expectPublicKey)(i.mint.value)})),i.edition.value||(i.edition.value=(0,U5.findMasterEditionPda)(t,{mint:(0,e4.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(i.masterEdition.value=(0,U5.findMasterEditionPda)(t,{mint:(0,e4.expectPublicKey)(i.mint.value)})),i.editionMarker.value||(i.editionMarker.value=(0,U5.findMasterEditionPda)(t,{mint:(0,e4.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.rent.value||(i.rent.value=(0,RF.publicKey)("SysvarRent111111111111111111111111111111111"));let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,e4.getAccountMetasAndSigners)(a,"omitted",r),o=BF().serialize({}),l=0;return(0,RF.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}bc.deprecatedMintNewEditionFromMasterEditionViaPrintingToken=g2e});var qF=b(vc=>{"use strict";Object.defineProperty(vc,"__esModule",{value:!0});vc.freezeDelegatedAccount=vc.getFreezeDelegatedAccountInstructionDataSerializer=void 0;var y2e=F(),E_=W(),b2e=de(),OF=X();function NF(){return(0,E_.mapSerializer)((0,E_.struct)([["discriminator",(0,E_.u8)()]],{description:"FreezeDelegatedAccountInstructionData"}),t=>({...t,discriminator:26}))}vc.getFreezeDelegatedAccountInstructionDataSerializer=NF;function v2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegate:{index:0,isWritable:!0,value:e.delegate??null},tokenAccount:{index:1,isWritable:!0,value:e.tokenAccount??null},edition:{index:2,isWritable:!1,value:e.edition??null},mint:{index:3,isWritable:!1,value:e.mint??null},tokenProgram:{index:4,isWritable:!1,value:e.tokenProgram??null}};i.edition.value||(i.edition.value=(0,b2e.findMasterEditionPda)(t,{mint:(0,OF.expectPublicKey)(i.mint.value)})),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1);let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,OF.getAccountMetasAndSigners)(a,"programId",r),o=NF().serialize({}),l=0;return(0,y2e.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}vc.freezeDelegatedAccount=v2e});var FF=b(Sc=>{"use strict";Object.defineProperty(Sc,"__esModule",{value:!0});Sc.lockV1=Sc.getLockV1InstructionDataSerializer=void 0;var S2e=_t(),T_=F(),t4=W(),WF=We(),P_=de(),i1=X(),z_=ie();function VF(){return(0,t4.mapSerializer)((0,t4.struct)([["discriminator",(0,t4.u8)()],["lockV1Discriminator",(0,t4.u8)()],["authorizationData",(0,t4.option)((0,z_.getAuthorizationDataSerializer)())]],{description:"LockV1InstructionData"}),t=>({...t,discriminator:46,lockV1Discriminator:0,authorizationData:t.authorizationData??(0,T_.none)()}))}Sc.getLockV1InstructionDataSerializer=VF;function w2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},tokenOwner:{index:1,isWritable:!1,value:e.tokenOwner??null},token:{index:2,isWritable:!0,value:e.token??null},mint:{index:3,isWritable:!1,value:e.mint??null},metadata:{index:4,isWritable:!0,value:e.metadata??null},edition:{index:5,isWritable:!1,value:e.edition??null},tokenRecord:{index:6,isWritable:!0,value:e.tokenRecord??null},payer:{index:7,isWritable:!0,value:e.payer??null},systemProgram:{index:8,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:9,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:10,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:11,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:12,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),i.tokenOwner.value||(i.tokenOwner={...i.tokenOwner,...(0,WF.resolveOptionalTokenOwner)(t,i,a,r,!1)}),i.token.value||(i.token.value=(0,S2e.findAssociatedTokenPda)(t,{mint:(0,i1.expectPublicKey)(i.mint.value),owner:(0,i1.expectPublicKey)(i.tokenOwner.value)})),i.metadata.value||(i.metadata.value=(0,P_.findMetadataPda)(t,{mint:(0,i1.expectPublicKey)(i.mint.value)})),i.edition.value||(0,WF.resolveIsNonFungible)(t,i,a,r,!1)&&(i.edition.value=(0,P_.findMasterEditionPda)(t,{mint:(0,i1.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===z_.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,P_.findTokenRecordPda)(t,{mint:(0,i1.expectPublicKey)(i.mint.value),token:(0,i1.expectPublicKey)(i.token.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,T_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||a.tokenStandard!==z_.TokenStandard.ProgrammableNonFungible&&(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,i1.getAccountMetasAndSigners)(n,"programId",r),l=VF().serialize(a),d=0;return(0,T_.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Sc.lockV1=w2e});var UF=b(wc=>{"use strict";Object.defineProperty(wc,"__esModule",{value:!0});wc.migrate=wc.getMigrateInstructionDataSerializer=void 0;var KF=F(),I_=W(),M_=de(),r4=X();function LF(){return(0,I_.mapSerializer)((0,I_.struct)([["discriminator",(0,I_.u8)()]],{description:"MigrateInstructionData"}),t=>({...t,discriminator:48}))}wc.getMigrateInstructionDataSerializer=LF;function x2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},edition:{index:1,isWritable:!0,value:e.edition??null},token:{index:2,isWritable:!0,value:e.token??null},tokenOwner:{index:3,isWritable:!1,value:e.tokenOwner??null},mint:{index:4,isWritable:!1,value:e.mint??null},payer:{index:5,isWritable:!0,value:e.payer??null},authority:{index:6,isWritable:!1,value:e.authority??null},collectionMetadata:{index:7,isWritable:!1,value:e.collectionMetadata??null},delegateRecord:{index:8,isWritable:!1,value:e.delegateRecord??null},tokenRecord:{index:9,isWritable:!0,value:e.tokenRecord??null},systemProgram:{index:10,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:11,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:12,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:13,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:14,isWritable:!1,value:e.authorizationRules??null}};i.metadata.value||(i.metadata.value=(0,M_.findMetadataPda)(t,{mint:(0,r4.expectPublicKey)(i.mint.value)})),i.edition.value||(i.edition.value=(0,M_.findMasterEditionPda)(t,{mint:(0,r4.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.authority.value||(i.authority.value=t.identity),i.tokenRecord.value||(i.tokenRecord.value=(0,M_.findTokenRecordPda)(t,{mint:(0,r4.expectPublicKey)(i.mint.value),token:(0,r4.expectPublicKey)(i.token.value)})),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,KF.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,r4.getAccountMetasAndSigners)(a,"programId",r),o=LF().serialize({}),l=0;return(0,KF.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}wc.migrate=x2e});var HF=b(xc=>{"use strict";Object.defineProperty(xc,"__esModule",{value:!0});xc.mintNewEditionFromMasterEditionViaToken=xc.getMintNewEditionFromMasterEditionViaTokenInstructionDataSerializer=void 0;var A2e=F(),D_=W(),_2e=X(),k2e=ie();function jF(){return(0,D_.mapSerializer)((0,D_.struct)([["discriminator",(0,D_.u8)()],["mintNewEditionFromMasterEditionViaTokenArgs",(0,k2e.getMintNewEditionFromMasterEditionViaTokenArgsSerializer)()]],{description:"MintNewEditionFromMasterEditionViaTokenInstructionData"}),t=>({...t,discriminator:11}))}xc.getMintNewEditionFromMasterEditionViaTokenInstructionDataSerializer=jF;function E2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={newMetadata:{index:0,isWritable:!0,value:e.newMetadata??null},newEdition:{index:1,isWritable:!0,value:e.newEdition??null},masterEdition:{index:2,isWritable:!0,value:e.masterEdition??null},newMint:{index:3,isWritable:!0,value:e.newMint??null},editionMarkPda:{index:4,isWritable:!0,value:e.editionMarkPda??null},newMintAuthority:{index:5,isWritable:!1,value:e.newMintAuthority??null},payer:{index:6,isWritable:!0,value:e.payer??null},tokenAccountOwner:{index:7,isWritable:!1,value:e.tokenAccountOwner??null},tokenAccount:{index:8,isWritable:!1,value:e.tokenAccount??null},newMetadataUpdateAuthority:{index:9,isWritable:!1,value:e.newMetadataUpdateAuthority??null},metadata:{index:10,isWritable:!1,value:e.metadata??null},tokenProgram:{index:11,isWritable:!1,value:e.tokenProgram??null},systemProgram:{index:12,isWritable:!1,value:e.systemProgram??null},rent:{index:13,isWritable:!1,value:e.rent??null}},a={...e};i.payer.value||(i.payer.value=t.payer),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,_2e.getAccountMetasAndSigners)(n,"omitted",r),l=jF().serialize(a),d=0;return(0,A2e.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}xc.mintNewEditionFromMasterEditionViaToken=E2e});var GF=b(Ac=>{"use strict";Object.defineProperty(Ac,"__esModule",{value:!0});Ac.mintNewEditionFromMasterEditionViaVaultProxy=Ac.getMintNewEditionFromMasterEditionViaVaultProxyInstructionDataSerializer=void 0;var P2e=F(),R_=W(),T2e=X(),z2e=ie();function $F(){return(0,R_.mapSerializer)((0,R_.struct)([["discriminator",(0,R_.u8)()],["mintNewEditionFromMasterEditionViaTokenArgs",(0,z2e.getMintNewEditionFromMasterEditionViaTokenArgsSerializer)()]],{description:"MintNewEditionFromMasterEditionViaVaultProxyInstructionData"}),t=>({...t,discriminator:13}))}Ac.getMintNewEditionFromMasterEditionViaVaultProxyInstructionDataSerializer=$F;function I2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={newMetadata:{index:0,isWritable:!0,value:e.newMetadata??null},newEdition:{index:1,isWritable:!0,value:e.newEdition??null},masterEdition:{index:2,isWritable:!0,value:e.masterEdition??null},newMint:{index:3,isWritable:!0,value:e.newMint??null},editionMarkPda:{index:4,isWritable:!0,value:e.editionMarkPda??null},newMintAuthority:{index:5,isWritable:!1,value:e.newMintAuthority??null},payer:{index:6,isWritable:!0,value:e.payer??null},vaultAuthority:{index:7,isWritable:!1,value:e.vaultAuthority??null},safetyDepositStore:{index:8,isWritable:!1,value:e.safetyDepositStore??null},safetyDepositBox:{index:9,isWritable:!1,value:e.safetyDepositBox??null},vault:{index:10,isWritable:!1,value:e.vault??null},newMetadataUpdateAuthority:{index:11,isWritable:!1,value:e.newMetadataUpdateAuthority??null},metadata:{index:12,isWritable:!1,value:e.metadata??null},tokenProgram:{index:13,isWritable:!1,value:e.tokenProgram??null},tokenVaultProgram:{index:14,isWritable:!1,value:e.tokenVaultProgram??null},systemProgram:{index:15,isWritable:!1,value:e.systemProgram??null},rent:{index:16,isWritable:!1,value:e.rent??null}},a={...e};i.payer.value||(i.payer.value=t.payer),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,T2e.getAccountMetasAndSigners)(n,"omitted",r),l=$F().serialize(a),d=0;return(0,P2e.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Ac.mintNewEditionFromMasterEditionViaVaultProxy=I2e});var QF=b(kc=>{"use strict";Object.defineProperty(kc,"__esModule",{value:!0});kc.mintV1=kc.getMintV1InstructionDataSerializer=void 0;var M2e=_t(),C_=F(),_c=W(),ZF=We(),B_=de(),a1=X(),JF=ie();function YF(){return(0,_c.mapSerializer)((0,_c.struct)([["discriminator",(0,_c.u8)()],["mintV1Discriminator",(0,_c.u8)()],["amount",(0,_c.u64)()],["authorizationData",(0,_c.option)((0,JF.getAuthorizationDataSerializer)())]],{description:"MintV1InstructionData"}),t=>({...t,discriminator:43,mintV1Discriminator:0,amount:t.amount??1,authorizationData:t.authorizationData??(0,C_.none)()}))}kc.getMintV1InstructionDataSerializer=YF;function D2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={token:{index:0,isWritable:!0,value:e.token??null},tokenOwner:{index:1,isWritable:!1,value:e.tokenOwner??null},metadata:{index:2,isWritable:!1,value:e.metadata??null},masterEdition:{index:3,isWritable:!0,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!0,value:e.mint??null},authority:{index:6,isWritable:!1,value:e.authority??null},delegateRecord:{index:7,isWritable:!1,value:e.delegateRecord??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},splAtaProgram:{index:12,isWritable:!1,value:e.splAtaProgram??null},authorizationRulesProgram:{index:13,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:14,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.tokenOwner.value||(i.tokenOwner={...i.tokenOwner,...(0,ZF.resolveOptionalTokenOwner)(t,i,a,r,!1)}),i.token.value||(i.token.value=(0,M2e.findAssociatedTokenPda)(t,{mint:(0,a1.expectPublicKey)(i.mint.value),owner:(0,a1.expectPublicKey)(i.tokenOwner.value)})),i.metadata.value||(i.metadata.value=(0,B_.findMetadataPda)(t,{mint:(0,a1.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,ZF.resolveIsNonFungible)(t,i,a,r,!0)&&(i.masterEdition.value=(0,B_.findMasterEditionPda)(t,{mint:(0,a1.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===JF.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,B_.findTokenRecordPda)(t,{mint:(0,a1.expectPublicKey)(i.mint.value),token:(0,a1.expectPublicKey)(i.token.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,C_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.splAtaProgram.value||(i.splAtaProgram.value=t.programs.getPublicKey("splAssociatedToken","ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"),i.splAtaProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,a1.getAccountMetasAndSigners)(n,"programId",r),l=YF().serialize(a),d=468;return(0,C_.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}kc.mintV1=D2e});var iK=b(Pc=>{"use strict";Object.defineProperty(Pc,"__esModule",{value:!0});Pc.printV1=Pc.getPrintV1InstructionDataSerializer=void 0;var XF=_t(),eK=F(),i4=W(),R2e=We(),Ec=de(),bi=X(),tK=ie();function rK(){return(0,i4.mapSerializer)((0,i4.struct)([["discriminator",(0,i4.u8)()],["printV1Discriminator",(0,i4.u8)()],["editionNumber",(0,i4.u64)()]],{description:"PrintV1InstructionData"}),t=>({...t,discriminator:55,printV1Discriminator:0}))}Pc.getPrintV1InstructionDataSerializer=rK;function B2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={editionMetadata:{index:0,isWritable:!0,value:e.editionMetadata??null},edition:{index:1,isWritable:!0,value:e.edition??null},editionMint:{index:2,isWritable:!0,value:e.editionMint??null},editionTokenAccountOwner:{index:3,isWritable:!1,value:e.editionTokenAccountOwner??null},editionTokenAccount:{index:4,isWritable:!0,value:e.editionTokenAccount??null},editionMintAuthority:{index:5,isWritable:!1,value:e.editionMintAuthority??null},editionTokenRecord:{index:6,isWritable:!0,value:e.editionTokenRecord??null},masterEdition:{index:7,isWritable:!0,value:e.masterEdition??null},editionMarkerPda:{index:8,isWritable:!0,value:e.editionMarkerPda??null},payer:{index:9,isWritable:!0,value:e.payer??null},masterTokenAccountOwner:{index:10,isWritable:!1,value:e.masterTokenAccountOwner??null},masterTokenAccount:{index:11,isWritable:!1,value:e.masterTokenAccount??null},masterMetadata:{index:12,isWritable:!1,value:e.masterMetadata??null},updateAuthority:{index:13,isWritable:!1,value:e.updateAuthority??null},splTokenProgram:{index:14,isWritable:!1,value:e.splTokenProgram??null},splAtaProgram:{index:15,isWritable:!1,value:e.splAtaProgram??null},sysvarInstructions:{index:16,isWritable:!1,value:e.sysvarInstructions??null},systemProgram:{index:17,isWritable:!1,value:e.systemProgram??null}},a={...e};i.editionMetadata.value||(i.editionMetadata.value=(0,Ec.findMetadataPda)(t,{mint:(0,bi.expectPublicKey)(i.editionMint.value)})),i.edition.value||(i.edition.value=(0,Ec.findMasterEditionPda)(t,{mint:(0,bi.expectPublicKey)(i.editionMint.value)})),i.editionTokenAccountOwner.value||(i.editionTokenAccountOwner.value=t.identity.publicKey),i.editionTokenAccount.value||(i.editionTokenAccount.value=(0,XF.findAssociatedTokenPda)(t,{mint:(0,bi.expectPublicKey)(i.editionMint.value),owner:(0,bi.expectPublicKey)(i.editionTokenAccountOwner.value)})),i.masterTokenAccountOwner.value||(i.masterTokenAccountOwner.value=t.identity),i.editionMintAuthority.value||(i.editionMintAuthority.value=(0,bi.expectSome)(i.masterTokenAccountOwner.value)),i.editionTokenRecord.value||a.tokenStandard===tK.TokenStandard.ProgrammableNonFungible&&(i.editionTokenRecord.value=(0,Ec.findTokenRecordPda)(t,{mint:(0,bi.expectPublicKey)(i.editionMint.value),token:(0,bi.expectPublicKey)(i.editionTokenAccount.value)})),i.masterEdition.value||(i.masterEdition.value=(0,Ec.findMasterEditionPda)(t,{mint:(0,bi.expectSome)(a.masterEditionMint)})),i.editionMarkerPda.value||(a.tokenStandard===tK.TokenStandard.ProgrammableNonFungible?i.editionMarkerPda.value=(0,Ec.findEditionMarkerV2Pda)(t,{mint:(0,bi.expectSome)(a.masterEditionMint)}):i.editionMarkerPda.value=(0,R2e.findEditionMarkerFromEditionNumberPda)(t,{mint:(0,bi.expectSome)(a.masterEditionMint),editionNumber:(0,bi.expectSome)(a.editionNumber)})),i.payer.value||(i.payer.value=t.payer),i.masterTokenAccount.value||(i.masterTokenAccount.value=(0,XF.findAssociatedTokenPda)(t,{mint:(0,bi.expectSome)(a.masterEditionMint),owner:(0,bi.expectPublicKey)(i.masterTokenAccountOwner.value)})),i.masterMetadata.value||(i.masterMetadata.value=(0,Ec.findMetadataPda)(t,{mint:(0,bi.expectSome)(a.masterEditionMint)})),i.updateAuthority.value||(i.updateAuthority.value=t.identity.publicKey),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.splAtaProgram.value||(i.splAtaProgram.value=t.programs.getPublicKey("splAssociatedToken","ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"),i.splAtaProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,eK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,bi.getAccountMetasAndSigners)(n,"programId",r),l=rK().serialize(a),d=0;return(0,eK.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Pc.printV1=B2e});var nK=b(Tc=>{"use strict";Object.defineProperty(Tc,"__esModule",{value:!0});Tc.puffMetadata=Tc.getPuffMetadataInstructionDataSerializer=void 0;var C2e=F(),O_=W(),O2e=X();function aK(){return(0,O_.mapSerializer)((0,O_.struct)([["discriminator",(0,O_.u8)()]],{description:"PuffMetadataInstructionData"}),t=>({...t,discriminator:14}))}Tc.getPuffMetadataInstructionDataSerializer=aK;function N2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null}},a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,O2e.getAccountMetasAndSigners)(a,"programId",r),o=aK().serialize({}),l=0;return(0,C2e.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}Tc.puffMetadata=N2e});var oK=b(zc=>{"use strict";Object.defineProperty(zc,"__esModule",{value:!0});zc.removeCreatorVerification=zc.getRemoveCreatorVerificationInstructionDataSerializer=void 0;var q2e=F(),N_=W(),W2e=X();function sK(){return(0,N_.mapSerializer)((0,N_.struct)([["discriminator",(0,N_.u8)()]],{description:"RemoveCreatorVerificationInstructionData"}),t=>({...t,discriminator:28}))}zc.getRemoveCreatorVerificationInstructionDataSerializer=sK;function V2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},creator:{index:1,isWritable:!1,value:e.creator??null}},a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,W2e.getAccountMetasAndSigners)(a,"programId",r),o=sK().serialize({}),l=0;return(0,q2e.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}zc.removeCreatorVerification=V2e});var uK=b(Ic=>{"use strict";Object.defineProperty(Ic,"__esModule",{value:!0});Ic.revokeAuthorityItemV1=Ic.getRevokeAuthorityItemV1InstructionDataSerializer=void 0;var lK=F(),j5=W(),F2e=We(),q_=de(),n1=X(),K2e=ie();function dK(){return(0,j5.mapSerializer)((0,j5.struct)([["discriminator",(0,j5.u8)()],["revokeAuthorityItemV1Discriminator",(0,j5.u8)()]],{description:"RevokeAuthorityItemV1InstructionData"}),t=>({...t,discriminator:45,revokeAuthorityItemV1Discriminator:10}))}Ic.getRevokeAuthorityItemV1InstructionDataSerializer=dK;function L2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,n1.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,q_.findMetadataDelegateRecordPda)(t,{mint:(0,n1.expectPublicKey)(i.mint.value),delegateRole:K2e.MetadataDelegateRole.AuthorityItem,updateAuthority:(0,n1.expectSome)(a.updateAuthority),delegate:(0,n1.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,q_.findMetadataPda)(t,{mint:(0,n1.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,F2e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,q_.findMasterEditionPda)(t,{mint:(0,n1.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,lK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,n1.getAccountMetasAndSigners)(n,"programId",r),l=dK().serialize({}),d=0;return(0,lK.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Ic.revokeAuthorityItemV1=L2e});var mK=b(Mc=>{"use strict";Object.defineProperty(Mc,"__esModule",{value:!0});Mc.revokeCollectionAuthority=Mc.getRevokeCollectionAuthorityInstructionDataSerializer=void 0;var U2e=F(),W_=W(),j2e=de(),cK=X();function pK(){return(0,W_.mapSerializer)((0,W_.struct)([["discriminator",(0,W_.u8)()]],{description:"RevokeCollectionAuthorityInstructionData"}),t=>({...t,discriminator:24}))}Mc.getRevokeCollectionAuthorityInstructionDataSerializer=pK;function H2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={collectionAuthorityRecord:{index:0,isWritable:!0,value:e.collectionAuthorityRecord??null},delegateAuthority:{index:1,isWritable:!0,value:e.delegateAuthority??null},revokeAuthority:{index:2,isWritable:!0,value:e.revokeAuthority??null},metadata:{index:3,isWritable:!1,value:e.metadata??null},mint:{index:4,isWritable:!1,value:e.mint??null}};i.metadata.value||(i.metadata.value=(0,j2e.findMetadataPda)(t,{mint:(0,cK.expectPublicKey)(i.mint.value)}));let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,cK.getAccountMetasAndSigners)(a,"programId",r),o=pK().serialize({}),l=0;return(0,U2e.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}Mc.revokeCollectionAuthority=H2e});var gK=b(Dc=>{"use strict";Object.defineProperty(Dc,"__esModule",{value:!0});Dc.revokeCollectionItemV1=Dc.getRevokeCollectionItemV1InstructionDataSerializer=void 0;var fK=F(),H5=W(),$2e=We(),V_=de(),s1=X(),G2e=ie();function hK(){return(0,H5.mapSerializer)((0,H5.struct)([["discriminator",(0,H5.u8)()],["revokeCollectionItemV1Discriminator",(0,H5.u8)()]],{description:"RevokeCollectionItemV1InstructionData"}),t=>({...t,discriminator:45,revokeCollectionItemV1Discriminator:12}))}Dc.getRevokeCollectionItemV1InstructionDataSerializer=hK;function Z2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,s1.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,V_.findMetadataDelegateRecordPda)(t,{mint:(0,s1.expectPublicKey)(i.mint.value),delegateRole:G2e.MetadataDelegateRole.CollectionItem,updateAuthority:(0,s1.expectSome)(a.updateAuthority),delegate:(0,s1.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,V_.findMetadataPda)(t,{mint:(0,s1.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,$2e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,V_.findMasterEditionPda)(t,{mint:(0,s1.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,fK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,s1.getAccountMetasAndSigners)(n,"programId",r),l=hK().serialize({}),d=0;return(0,fK.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Dc.revokeCollectionItemV1=Z2e});var vK=b(Rc=>{"use strict";Object.defineProperty(Rc,"__esModule",{value:!0});Rc.revokeCollectionV1=Rc.getRevokeCollectionV1InstructionDataSerializer=void 0;var yK=F(),$5=W(),J2e=We(),F_=de(),o1=X(),Y2e=ie();function bK(){return(0,$5.mapSerializer)((0,$5.struct)([["discriminator",(0,$5.u8)()],["revokeCollectionV1Discriminator",(0,$5.u8)()]],{description:"RevokeCollectionV1InstructionData"}),t=>({...t,discriminator:45,revokeCollectionV1Discriminator:0}))}Rc.getRevokeCollectionV1InstructionDataSerializer=bK;function Q2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,o1.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,F_.findMetadataDelegateRecordPda)(t,{mint:(0,o1.expectPublicKey)(i.mint.value),delegateRole:Y2e.MetadataDelegateRole.Collection,updateAuthority:(0,o1.expectSome)(a.updateAuthority),delegate:(0,o1.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,F_.findMetadataPda)(t,{mint:(0,o1.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,J2e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,F_.findMasterEditionPda)(t,{mint:(0,o1.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,yK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,o1.getAccountMetasAndSigners)(n,"programId",r),l=bK().serialize({}),d=0;return(0,yK.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Rc.revokeCollectionV1=Q2e});var xK=b(Bc=>{"use strict";Object.defineProperty(Bc,"__esModule",{value:!0});Bc.revokeDataItemV1=Bc.getRevokeDataItemV1InstructionDataSerializer=void 0;var SK=F(),G5=W(),X2e=We(),K_=de(),l1=X(),e6e=ie();function wK(){return(0,G5.mapSerializer)((0,G5.struct)([["discriminator",(0,G5.u8)()],["revokeDataItemV1Discriminator",(0,G5.u8)()]],{description:"RevokeDataItemV1InstructionData"}),t=>({...t,discriminator:45,revokeDataItemV1Discriminator:11}))}Bc.getRevokeDataItemV1InstructionDataSerializer=wK;function t6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,l1.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,K_.findMetadataDelegateRecordPda)(t,{mint:(0,l1.expectPublicKey)(i.mint.value),delegateRole:e6e.MetadataDelegateRole.DataItem,updateAuthority:(0,l1.expectSome)(a.updateAuthority),delegate:(0,l1.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,K_.findMetadataPda)(t,{mint:(0,l1.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,X2e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,K_.findMasterEditionPda)(t,{mint:(0,l1.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,SK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,l1.getAccountMetasAndSigners)(n,"programId",r),l=wK().serialize({}),d=0;return(0,SK.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Bc.revokeDataItemV1=t6e});var kK=b(Cc=>{"use strict";Object.defineProperty(Cc,"__esModule",{value:!0});Cc.revokeDataV1=Cc.getRevokeDataV1InstructionDataSerializer=void 0;var AK=F(),Z5=W(),r6e=We(),L_=de(),d1=X(),i6e=ie();function _K(){return(0,Z5.mapSerializer)((0,Z5.struct)([["discriminator",(0,Z5.u8)()],["revokeDataV1Discriminator",(0,Z5.u8)()]],{description:"RevokeDataV1InstructionData"}),t=>({...t,discriminator:45,revokeDataV1Discriminator:3}))}Cc.getRevokeDataV1InstructionDataSerializer=_K;function a6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,d1.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,L_.findMetadataDelegateRecordPda)(t,{mint:(0,d1.expectPublicKey)(i.mint.value),delegateRole:i6e.MetadataDelegateRole.Data,updateAuthority:(0,d1.expectSome)(a.updateAuthority),delegate:(0,d1.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,L_.findMetadataPda)(t,{mint:(0,d1.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,r6e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,L_.findMasterEditionPda)(t,{mint:(0,d1.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,AK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,d1.getAccountMetasAndSigners)(n,"programId",r),l=_K().serialize({}),d=0;return(0,AK.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Cc.revokeDataV1=a6e});var TK=b(Oc=>{"use strict";Object.defineProperty(Oc,"__esModule",{value:!0});Oc.revokeLockedTransferV1=Oc.getRevokeLockedTransferV1InstructionDataSerializer=void 0;var n6e=_t(),EK=F(),J5=W(),s6e=We(),Y5=de(),cs=X(),o6e=ie();function PK(){return(0,J5.mapSerializer)((0,J5.struct)([["discriminator",(0,J5.u8)()],["revokeLockedTransferV1Discriminator",(0,J5.u8)()]],{description:"RevokeLockedTransferV1InstructionData"}),t=>({...t,discriminator:45,revokeLockedTransferV1Discriminator:7}))}Oc.getRevokeLockedTransferV1InstructionDataSerializer=PK;function l6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,n6e.findAssociatedTokenPda)(t,{mint:(0,cs.expectPublicKey)(i.mint.value),owner:(0,cs.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,Y5.findTokenRecordPda)(t,{mint:(0,cs.expectPublicKey)(i.mint.value),token:(0,cs.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,Y5.findMetadataPda)(t,{mint:(0,cs.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,s6e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,Y5.findMasterEditionPda)(t,{mint:(0,cs.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===o6e.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,Y5.findTokenRecordPda)(t,{mint:(0,cs.expectPublicKey)(i.mint.value),token:(0,cs.expectPublicKey)(i.token.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,EK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,cs.getAccountMetasAndSigners)(n,"programId",r),l=PK().serialize({}),d=0;return(0,EK.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Oc.revokeLockedTransferV1=l6e});var MK=b(Nc=>{"use strict";Object.defineProperty(Nc,"__esModule",{value:!0});Nc.revokeMigrationV1=Nc.getRevokeMigrationV1InstructionDataSerializer=void 0;var d6e=_t(),zK=F(),Q5=W(),u6e=We(),X5=de(),ps=X(),c6e=ie();function IK(){return(0,Q5.mapSerializer)((0,Q5.struct)([["discriminator",(0,Q5.u8)()],["revokeMigrationV1Discriminator",(0,Q5.u8)()]],{description:"RevokeMigrationV1InstructionData"}),t=>({...t,discriminator:45,revokeMigrationV1Discriminator:9}))}Nc.getRevokeMigrationV1InstructionDataSerializer=IK;function p6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,d6e.findAssociatedTokenPda)(t,{mint:(0,ps.expectPublicKey)(i.mint.value),owner:(0,ps.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,X5.findTokenRecordPda)(t,{mint:(0,ps.expectPublicKey)(i.mint.value),token:(0,ps.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,X5.findMetadataPda)(t,{mint:(0,ps.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,u6e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,X5.findMasterEditionPda)(t,{mint:(0,ps.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===c6e.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,X5.findTokenRecordPda)(t,{mint:(0,ps.expectPublicKey)(i.mint.value),token:(0,ps.expectPublicKey)(i.token.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,zK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,ps.getAccountMetasAndSigners)(n,"programId",r),l=IK().serialize({}),d=0;return(0,zK.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Nc.revokeMigrationV1=p6e});var BK=b(qc=>{"use strict";Object.defineProperty(qc,"__esModule",{value:!0});qc.revokeProgrammableConfigItemV1=qc.getRevokeProgrammableConfigItemV1InstructionDataSerializer=void 0;var DK=F(),e9=W(),m6e=We(),U_=de(),u1=X(),f6e=ie();function RK(){return(0,e9.mapSerializer)((0,e9.struct)([["discriminator",(0,e9.u8)()],["revokeProgrammableConfigItemV1Discriminator",(0,e9.u8)()]],{description:"RevokeProgrammableConfigItemV1InstructionData"}),t=>({...t,discriminator:45,revokeProgrammableConfigItemV1Discriminator:13}))}qc.getRevokeProgrammableConfigItemV1InstructionDataSerializer=RK;function h6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,u1.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,U_.findMetadataDelegateRecordPda)(t,{mint:(0,u1.expectPublicKey)(i.mint.value),delegateRole:f6e.MetadataDelegateRole.ProgrammableConfigItem,updateAuthority:(0,u1.expectSome)(a.updateAuthority),delegate:(0,u1.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,U_.findMetadataPda)(t,{mint:(0,u1.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,m6e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,U_.findMasterEditionPda)(t,{mint:(0,u1.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,DK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,u1.getAccountMetasAndSigners)(n,"programId",r),l=RK().serialize({}),d=0;return(0,DK.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}qc.revokeProgrammableConfigItemV1=h6e});var NK=b(Wc=>{"use strict";Object.defineProperty(Wc,"__esModule",{value:!0});Wc.revokeProgrammableConfigV1=Wc.getRevokeProgrammableConfigV1InstructionDataSerializer=void 0;var CK=F(),t9=W(),g6e=We(),j_=de(),c1=X(),y6e=ie();function OK(){return(0,t9.mapSerializer)((0,t9.struct)([["discriminator",(0,t9.u8)()],["revokeProgrammableConfigV1Discriminator",(0,t9.u8)()]],{description:"RevokeProgrammableConfigV1InstructionData"}),t=>({...t,discriminator:45,revokeProgrammableConfigV1Discriminator:8}))}Wc.getRevokeProgrammableConfigV1InstructionDataSerializer=OK;function b6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,c1.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,j_.findMetadataDelegateRecordPda)(t,{mint:(0,c1.expectPublicKey)(i.mint.value),delegateRole:y6e.MetadataDelegateRole.ProgrammableConfig,updateAuthority:(0,c1.expectSome)(a.updateAuthority),delegate:(0,c1.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,j_.findMetadataPda)(t,{mint:(0,c1.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,g6e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,j_.findMasterEditionPda)(t,{mint:(0,c1.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,CK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,c1.getAccountMetasAndSigners)(n,"programId",r),l=OK().serialize({}),d=0;return(0,CK.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Wc.revokeProgrammableConfigV1=b6e});var VK=b(Vc=>{"use strict";Object.defineProperty(Vc,"__esModule",{value:!0});Vc.revokeSaleV1=Vc.getRevokeSaleV1InstructionDataSerializer=void 0;var v6e=_t(),qK=F(),r9=W(),S6e=We(),i9=de(),ms=X(),w6e=ie();function WK(){return(0,r9.mapSerializer)((0,r9.struct)([["discriminator",(0,r9.u8)()],["revokeSaleV1Discriminator",(0,r9.u8)()]],{description:"RevokeSaleV1InstructionData"}),t=>({...t,discriminator:45,revokeSaleV1Discriminator:1}))}Vc.getRevokeSaleV1InstructionDataSerializer=WK;function x6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,v6e.findAssociatedTokenPda)(t,{mint:(0,ms.expectPublicKey)(i.mint.value),owner:(0,ms.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,i9.findTokenRecordPda)(t,{mint:(0,ms.expectPublicKey)(i.mint.value),token:(0,ms.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,i9.findMetadataPda)(t,{mint:(0,ms.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,S6e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,i9.findMasterEditionPda)(t,{mint:(0,ms.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===w6e.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,i9.findTokenRecordPda)(t,{mint:(0,ms.expectPublicKey)(i.mint.value),token:(0,ms.expectPublicKey)(i.token.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,qK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,ms.getAccountMetasAndSigners)(n,"programId",r),l=WK().serialize({}),d=0;return(0,qK.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Vc.revokeSaleV1=x6e});var LK=b(Fc=>{"use strict";Object.defineProperty(Fc,"__esModule",{value:!0});Fc.revokeStakingV1=Fc.getRevokeStakingV1InstructionDataSerializer=void 0;var A6e=_t(),FK=F(),a9=W(),_6e=We(),n9=de(),fs=X(),k6e=ie();function KK(){return(0,a9.mapSerializer)((0,a9.struct)([["discriminator",(0,a9.u8)()],["revokeStakingV1Discriminator",(0,a9.u8)()]],{description:"RevokeStakingV1InstructionData"}),t=>({...t,discriminator:45,revokeStakingV1Discriminator:5}))}Fc.getRevokeStakingV1InstructionDataSerializer=KK;function E6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,A6e.findAssociatedTokenPda)(t,{mint:(0,fs.expectPublicKey)(i.mint.value),owner:(0,fs.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,n9.findTokenRecordPda)(t,{mint:(0,fs.expectPublicKey)(i.mint.value),token:(0,fs.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,n9.findMetadataPda)(t,{mint:(0,fs.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,_6e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,n9.findMasterEditionPda)(t,{mint:(0,fs.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===k6e.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,n9.findTokenRecordPda)(t,{mint:(0,fs.expectPublicKey)(i.mint.value),token:(0,fs.expectPublicKey)(i.token.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,FK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,fs.getAccountMetasAndSigners)(n,"programId",r),l=KK().serialize({}),d=0;return(0,FK.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Fc.revokeStakingV1=E6e});var HK=b(Kc=>{"use strict";Object.defineProperty(Kc,"__esModule",{value:!0});Kc.revokeStandardV1=Kc.getRevokeStandardV1InstructionDataSerializer=void 0;var P6e=_t(),UK=F(),s9=W(),T6e=We(),H_=de(),p1=X();function jK(){return(0,s9.mapSerializer)((0,s9.struct)([["discriminator",(0,s9.u8)()],["revokeStandardV1Discriminator",(0,s9.u8)()]],{description:"RevokeStandardV1InstructionData"}),t=>({...t,discriminator:45,revokeStandardV1Discriminator:6}))}Kc.getRevokeStandardV1InstructionDataSerializer=jK;function z6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,P6e.findAssociatedTokenPda)(t,{mint:(0,p1.expectPublicKey)(i.mint.value),owner:(0,p1.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,H_.findTokenRecordPda)(t,{mint:(0,p1.expectPublicKey)(i.mint.value),token:(0,p1.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,H_.findMetadataPda)(t,{mint:(0,p1.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,T6e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,H_.findMasterEditionPda)(t,{mint:(0,p1.expectPublicKey)(i.mint.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,UK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,p1.getAccountMetasAndSigners)(n,"programId",r),l=jK().serialize({}),d=0;return(0,UK.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Kc.revokeStandardV1=z6e});var ZK=b(Lc=>{"use strict";Object.defineProperty(Lc,"__esModule",{value:!0});Lc.revokeTransferV1=Lc.getRevokeTransferV1InstructionDataSerializer=void 0;var I6e=_t(),$K=F(),o9=W(),M6e=We(),l9=de(),hs=X(),D6e=ie();function GK(){return(0,o9.mapSerializer)((0,o9.struct)([["discriminator",(0,o9.u8)()],["revokeTransferV1Discriminator",(0,o9.u8)()]],{description:"RevokeTransferV1InstructionData"}),t=>({...t,discriminator:45,revokeTransferV1Discriminator:2}))}Lc.getRevokeTransferV1InstructionDataSerializer=GK;function R6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,I6e.findAssociatedTokenPda)(t,{mint:(0,hs.expectPublicKey)(i.mint.value),owner:(0,hs.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,l9.findTokenRecordPda)(t,{mint:(0,hs.expectPublicKey)(i.mint.value),token:(0,hs.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,l9.findMetadataPda)(t,{mint:(0,hs.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,M6e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,l9.findMasterEditionPda)(t,{mint:(0,hs.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===D6e.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,l9.findTokenRecordPda)(t,{mint:(0,hs.expectPublicKey)(i.mint.value),token:(0,hs.expectPublicKey)(i.token.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,$K.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,hs.getAccountMetasAndSigners)(n,"programId",r),l=GK().serialize({}),d=0;return(0,$K.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Lc.revokeTransferV1=R6e});var QK=b(Uc=>{"use strict";Object.defineProperty(Uc,"__esModule",{value:!0});Uc.revokeUseAuthority=Uc.getRevokeUseAuthorityInstructionDataSerializer=void 0;var B6e=F(),$_=W(),C6e=de(),JK=X();function YK(){return(0,$_.mapSerializer)((0,$_.struct)([["discriminator",(0,$_.u8)()]],{description:"RevokeUseAuthorityInstructionData"}),t=>({...t,discriminator:21}))}Uc.getRevokeUseAuthorityInstructionDataSerializer=YK;function O6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={useAuthorityRecord:{index:0,isWritable:!0,value:e.useAuthorityRecord??null},owner:{index:1,isWritable:!0,value:e.owner??null},user:{index:2,isWritable:!1,value:e.user??null},ownerTokenAccount:{index:3,isWritable:!0,value:e.ownerTokenAccount??null},mint:{index:4,isWritable:!1,value:e.mint??null},metadata:{index:5,isWritable:!1,value:e.metadata??null},tokenProgram:{index:6,isWritable:!1,value:e.tokenProgram??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},rent:{index:8,isWritable:!1,value:e.rent??null}};i.metadata.value||(i.metadata.value=(0,C6e.findMetadataPda)(t,{mint:(0,JK.expectPublicKey)(i.mint.value)})),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1);let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,JK.getAccountMetasAndSigners)(a,"omitted",r),o=YK().serialize({}),l=0;return(0,B6e.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}Uc.revokeUseAuthority=O6e});var tL=b(jc=>{"use strict";Object.defineProperty(jc,"__esModule",{value:!0});jc.revokeUtilityV1=jc.getRevokeUtilityV1InstructionDataSerializer=void 0;var N6e=_t(),XK=F(),d9=W(),q6e=We(),u9=de(),gs=X(),W6e=ie();function eL(){return(0,d9.mapSerializer)((0,d9.struct)([["discriminator",(0,d9.u8)()],["revokeUtilityV1Discriminator",(0,d9.u8)()]],{description:"RevokeUtilityV1InstructionData"}),t=>({...t,discriminator:45,revokeUtilityV1Discriminator:4}))}jc.getRevokeUtilityV1InstructionDataSerializer=eL;function V6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,N6e.findAssociatedTokenPda)(t,{mint:(0,gs.expectPublicKey)(i.mint.value),owner:(0,gs.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,u9.findTokenRecordPda)(t,{mint:(0,gs.expectPublicKey)(i.mint.value),token:(0,gs.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,u9.findMetadataPda)(t,{mint:(0,gs.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,q6e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,u9.findMasterEditionPda)(t,{mint:(0,gs.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===W6e.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,u9.findTokenRecordPda)(t,{mint:(0,gs.expectPublicKey)(i.mint.value),token:(0,gs.expectPublicKey)(i.token.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,XK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,gs.getAccountMetasAndSigners)(n,"programId",r),l=eL().serialize({}),d=0;return(0,XK.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}jc.revokeUtilityV1=V6e});var iL=b(Hc=>{"use strict";Object.defineProperty(Hc,"__esModule",{value:!0});Hc.setAndVerifyCollection=Hc.getSetAndVerifyCollectionInstructionDataSerializer=void 0;var F6e=F(),G_=W(),K6e=X();function rL(){return(0,G_.mapSerializer)((0,G_.struct)([["discriminator",(0,G_.u8)()]],{description:"SetAndVerifyCollectionInstructionData"}),t=>({...t,discriminator:25}))}Hc.getSetAndVerifyCollectionInstructionDataSerializer=rL;function L6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},collectionAuthority:{index:1,isWritable:!0,value:e.collectionAuthority??null},payer:{index:2,isWritable:!0,value:e.payer??null},updateAuthority:{index:3,isWritable:!1,value:e.updateAuthority??null},collectionMint:{index:4,isWritable:!1,value:e.collectionMint??null},collection:{index:5,isWritable:!1,value:e.collection??null},collectionMasterEditionAccount:{index:6,isWritable:!1,value:e.collectionMasterEditionAccount??null},collectionAuthorityRecord:{index:7,isWritable:!1,value:e.collectionAuthorityRecord??null}};i.payer.value||(i.payer.value=t.payer),i.updateAuthority.value||(i.updateAuthority.value=t.identity.publicKey);let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,K6e.getAccountMetasAndSigners)(a,"omitted",r),o=rL().serialize({}),l=0;return(0,F6e.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}Hc.setAndVerifyCollection=L6e});var nL=b($c=>{"use strict";Object.defineProperty($c,"__esModule",{value:!0});$c.setAndVerifySizedCollectionItem=$c.getSetAndVerifySizedCollectionItemInstructionDataSerializer=void 0;var U6e=F(),Z_=W(),j6e=X();function aL(){return(0,Z_.mapSerializer)((0,Z_.struct)([["discriminator",(0,Z_.u8)()]],{description:"SetAndVerifySizedCollectionItemInstructionData"}),t=>({...t,discriminator:32}))}$c.getSetAndVerifySizedCollectionItemInstructionDataSerializer=aL;function H6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},collectionAuthority:{index:1,isWritable:!1,value:e.collectionAuthority??null},payer:{index:2,isWritable:!0,value:e.payer??null},updateAuthority:{index:3,isWritable:!1,value:e.updateAuthority??null},collectionMint:{index:4,isWritable:!1,value:e.collectionMint??null},collection:{index:5,isWritable:!0,value:e.collection??null},collectionMasterEditionAccount:{index:6,isWritable:!0,value:e.collectionMasterEditionAccount??null},collectionAuthorityRecord:{index:7,isWritable:!1,value:e.collectionAuthorityRecord??null}};i.payer.value||(i.payer.value=t.payer),i.updateAuthority.value||(i.updateAuthority.value=t.identity.publicKey);let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,j6e.getAccountMetasAndSigners)(a,"omitted",r),o=aL().serialize({}),l=0;return(0,U6e.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}$c.setAndVerifySizedCollectionItem=H6e});var oL=b(Gc=>{"use strict";Object.defineProperty(Gc,"__esModule",{value:!0});Gc.setCollectionSize=Gc.getSetCollectionSizeInstructionDataSerializer=void 0;var $6e=F(),J_=W(),G6e=X(),Z6e=ie();function sL(){return(0,J_.mapSerializer)((0,J_.struct)([["discriminator",(0,J_.u8)()],["setCollectionSizeArgs",(0,Z6e.getSetCollectionSizeArgsSerializer)()]],{description:"SetCollectionSizeInstructionData"}),t=>({...t,discriminator:34}))}Gc.getSetCollectionSizeInstructionDataSerializer=sL;function J6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={collectionMetadata:{index:0,isWritable:!0,value:e.collectionMetadata??null},collectionAuthority:{index:1,isWritable:!0,value:e.collectionAuthority??null},collectionMint:{index:2,isWritable:!1,value:e.collectionMint??null},collectionAuthorityRecord:{index:3,isWritable:!1,value:e.collectionAuthorityRecord??null}},a={...e},n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,G6e.getAccountMetasAndSigners)(n,"omitted",r),l=sL().serialize(a),d=0;return(0,$6e.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Gc.setCollectionSize=J6e});var uL=b(Zc=>{"use strict";Object.defineProperty(Zc,"__esModule",{value:!0});Zc.setTokenStandard=Zc.getSetTokenStandardInstructionDataSerializer=void 0;var Y6e=F(),Y_=W(),Q6e=de(),lL=X();function dL(){return(0,Y_.mapSerializer)((0,Y_.struct)([["discriminator",(0,Y_.u8)()]],{description:"SetTokenStandardInstructionData"}),t=>({...t,discriminator:35}))}Zc.getSetTokenStandardInstructionDataSerializer=dL;function X6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},updateAuthority:{index:1,isWritable:!1,value:e.updateAuthority??null},mint:{index:2,isWritable:!1,value:e.mint??null},edition:{index:3,isWritable:!1,value:e.edition??null}};i.metadata.value||(i.metadata.value=(0,Q6e.findMetadataPda)(t,{mint:(0,lL.expectPublicKey)(i.mint.value)})),i.updateAuthority.value||(i.updateAuthority.value=t.identity);let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,lL.getAccountMetasAndSigners)(a,"omitted",r),o=dL().serialize({}),l=0;return(0,Y6e.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}Zc.setTokenStandard=X6e});var pL=b(Jc=>{"use strict";Object.defineProperty(Jc,"__esModule",{value:!0});Jc.signMetadata=Jc.getSignMetadataInstructionDataSerializer=void 0;var ehe=F(),Q_=W(),the=X();function cL(){return(0,Q_.mapSerializer)((0,Q_.struct)([["discriminator",(0,Q_.u8)()]],{description:"SignMetadataInstructionData"}),t=>({...t,discriminator:7}))}Jc.getSignMetadataInstructionDataSerializer=cL;function rhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},creator:{index:1,isWritable:!1,value:e.creator??null}},a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,the.getAccountMetasAndSigners)(a,"programId",r),o=cL().serialize({}),l=0;return(0,ehe.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}Jc.signMetadata=rhe});var hL=b(Yc=>{"use strict";Object.defineProperty(Yc,"__esModule",{value:!0});Yc.thawDelegatedAccount=Yc.getThawDelegatedAccountInstructionDataSerializer=void 0;var ihe=F(),X_=W(),ahe=de(),mL=X();function fL(){return(0,X_.mapSerializer)((0,X_.struct)([["discriminator",(0,X_.u8)()]],{description:"ThawDelegatedAccountInstructionData"}),t=>({...t,discriminator:27}))}Yc.getThawDelegatedAccountInstructionDataSerializer=fL;function nhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegate:{index:0,isWritable:!0,value:e.delegate??null},tokenAccount:{index:1,isWritable:!0,value:e.tokenAccount??null},edition:{index:2,isWritable:!1,value:e.edition??null},mint:{index:3,isWritable:!1,value:e.mint??null},tokenProgram:{index:4,isWritable:!1,value:e.tokenProgram??null}};i.edition.value||(i.edition.value=(0,ahe.findMasterEditionPda)(t,{mint:(0,mL.expectPublicKey)(i.mint.value)})),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1);let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,mL.getAccountMetasAndSigners)(a,"programId",r),o=fL().serialize({}),l=0;return(0,ihe.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}Yc.thawDelegatedAccount=nhe});var bL=b(Qc=>{"use strict";Object.defineProperty(Qc,"__esModule",{value:!0});Qc.transferOutOfEscrow=Qc.getTransferOutOfEscrowInstructionDataSerializer=void 0;var gL=F(),c9=W(),she=X();function yL(){return(0,c9.mapSerializer)((0,c9.struct)([["discriminator",(0,c9.u8)()],["amount",(0,c9.u64)()]],{description:"TransferOutOfEscrowInstructionData"}),t=>({...t,discriminator:40,amount:t.amount??1}))}Qc.getTransferOutOfEscrowInstructionDataSerializer=yL;function ohe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={escrow:{index:0,isWritable:!1,value:e.escrow??null},metadata:{index:1,isWritable:!0,value:e.metadata??null},payer:{index:2,isWritable:!0,value:e.payer??null},attributeMint:{index:3,isWritable:!1,value:e.attributeMint??null},attributeSrc:{index:4,isWritable:!0,value:e.attributeSrc??null},attributeDst:{index:5,isWritable:!0,value:e.attributeDst??null},escrowMint:{index:6,isWritable:!1,value:e.escrowMint??null},escrowAccount:{index:7,isWritable:!1,value:e.escrowAccount??null},systemProgram:{index:8,isWritable:!1,value:e.systemProgram??null},ataProgram:{index:9,isWritable:!1,value:e.ataProgram??null},tokenProgram:{index:10,isWritable:!1,value:e.tokenProgram??null},sysvarInstructions:{index:11,isWritable:!1,value:e.sysvarInstructions??null},authority:{index:12,isWritable:!1,value:e.authority??null}},a={...e};i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.ataProgram.value||(i.ataProgram.value=t.programs.getPublicKey("splAssociatedToken","ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"),i.ataProgram.isWritable=!1),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,gL.publicKey)("Sysvar1nstructions1111111111111111111111111"));let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,she.getAccountMetasAndSigners)(n,"omitted",r),l=yL().serialize(a),d=0;return(0,gL.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Qc.transferOutOfEscrow=ohe});var wL=b(ep=>{"use strict";Object.defineProperty(ep,"__esModule",{value:!0});ep.transferV1=ep.getTransferV1InstructionDataSerializer=void 0;var vL=_t(),ek=F(),Xc=W(),p9=de(),Ka=X(),m9=ie();function SL(){return(0,Xc.mapSerializer)((0,Xc.struct)([["discriminator",(0,Xc.u8)()],["transferV1Discriminator",(0,Xc.u8)()],["amount",(0,Xc.u64)()],["authorizationData",(0,Xc.option)((0,m9.getAuthorizationDataSerializer)())]],{description:"TransferV1InstructionData"}),t=>({...t,discriminator:49,transferV1Discriminator:0,amount:t.amount??1,authorizationData:t.authorizationData??(0,ek.none)()}))}ep.getTransferV1InstructionDataSerializer=SL;function lhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={token:{index:0,isWritable:!0,value:e.token??null},tokenOwner:{index:1,isWritable:!1,value:e.tokenOwner??null},destinationToken:{index:2,isWritable:!0,value:e.destinationToken??null},destinationOwner:{index:3,isWritable:!1,value:e.destinationOwner??null},mint:{index:4,isWritable:!1,value:e.mint??null},metadata:{index:5,isWritable:!0,value:e.metadata??null},edition:{index:6,isWritable:!1,value:e.edition??null},tokenRecord:{index:7,isWritable:!0,value:e.tokenRecord??null},destinationTokenRecord:{index:8,isWritable:!0,value:e.destinationTokenRecord??null},authority:{index:9,isWritable:!1,value:e.authority??null},payer:{index:10,isWritable:!0,value:e.payer??null},systemProgram:{index:11,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:12,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:13,isWritable:!1,value:e.splTokenProgram??null},splAtaProgram:{index:14,isWritable:!1,value:e.splAtaProgram??null},authorizationRulesProgram:{index:15,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:16,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.tokenOwner.value||(i.tokenOwner.value=t.identity.publicKey),i.token.value||(i.token.value=(0,vL.findAssociatedTokenPda)(t,{mint:(0,Ka.expectPublicKey)(i.mint.value),owner:(0,Ka.expectPublicKey)(i.tokenOwner.value)})),i.destinationToken.value||(i.destinationToken.value=(0,vL.findAssociatedTokenPda)(t,{mint:(0,Ka.expectPublicKey)(i.mint.value),owner:(0,Ka.expectPublicKey)(i.destinationOwner.value)})),i.metadata.value||(i.metadata.value=(0,p9.findMetadataPda)(t,{mint:(0,Ka.expectPublicKey)(i.mint.value)})),i.edition.value||a.tokenStandard===m9.TokenStandard.ProgrammableNonFungible&&(i.edition.value=(0,p9.findMasterEditionPda)(t,{mint:(0,Ka.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===m9.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,p9.findTokenRecordPda)(t,{mint:(0,Ka.expectPublicKey)(i.mint.value),token:(0,Ka.expectPublicKey)(i.token.value)})),i.destinationTokenRecord.value||a.tokenStandard===m9.TokenStandard.ProgrammableNonFungible&&(i.destinationTokenRecord.value=(0,p9.findTokenRecordPda)(t,{mint:(0,Ka.expectPublicKey)(i.mint.value),token:(0,Ka.expectPublicKey)(i.destinationToken.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,ek.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.splAtaProgram.value||(i.splAtaProgram.value=t.programs.getPublicKey("splAssociatedToken","ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"),i.splAtaProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Ka.getAccountMetasAndSigners)(n,"programId",r),l=SL().serialize(a),d=0;return(0,ek.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}ep.transferV1=lhe});var _L=b(tp=>{"use strict";Object.defineProperty(tp,"__esModule",{value:!0});tp.unlockV1=tp.getUnlockV1InstructionDataSerializer=void 0;var dhe=_t(),rk=F(),a4=W(),xL=We(),tk=de(),m1=X(),ik=ie();function AL(){return(0,a4.mapSerializer)((0,a4.struct)([["discriminator",(0,a4.u8)()],["unlockV1Discriminator",(0,a4.u8)()],["authorizationData",(0,a4.option)((0,ik.getAuthorizationDataSerializer)())]],{description:"UnlockV1InstructionData"}),t=>({...t,discriminator:47,unlockV1Discriminator:0,authorizationData:t.authorizationData??(0,rk.none)()}))}tp.getUnlockV1InstructionDataSerializer=AL;function uhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},tokenOwner:{index:1,isWritable:!1,value:e.tokenOwner??null},token:{index:2,isWritable:!0,value:e.token??null},mint:{index:3,isWritable:!1,value:e.mint??null},metadata:{index:4,isWritable:!0,value:e.metadata??null},edition:{index:5,isWritable:!1,value:e.edition??null},tokenRecord:{index:6,isWritable:!0,value:e.tokenRecord??null},payer:{index:7,isWritable:!0,value:e.payer??null},systemProgram:{index:8,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:9,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:10,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:11,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:12,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),i.tokenOwner.value||(i.tokenOwner={...i.tokenOwner,...(0,xL.resolveOptionalTokenOwner)(t,i,a,r,!1)}),i.token.value||(i.token.value=(0,dhe.findAssociatedTokenPda)(t,{mint:(0,m1.expectPublicKey)(i.mint.value),owner:(0,m1.expectPublicKey)(i.tokenOwner.value)})),i.metadata.value||(i.metadata.value=(0,tk.findMetadataPda)(t,{mint:(0,m1.expectPublicKey)(i.mint.value)})),i.edition.value||(0,xL.resolveIsNonFungible)(t,i,a,r,!1)&&(i.edition.value=(0,tk.findMasterEditionPda)(t,{mint:(0,m1.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===ik.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,tk.findTokenRecordPda)(t,{mint:(0,m1.expectPublicKey)(i.mint.value),token:(0,m1.expectPublicKey)(i.token.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,rk.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||a.tokenStandard!==ik.TokenStandard.ProgrammableNonFungible&&(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,m1.getAccountMetasAndSigners)(n,"programId",r),l=AL().serialize(a),d=0;return(0,rk.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}tp.unlockV1=uhe});var EL=b(rp=>{"use strict";Object.defineProperty(rp,"__esModule",{value:!0});rp.unverifyCollection=rp.getUnverifyCollectionInstructionDataSerializer=void 0;var che=F(),ak=W(),phe=X();function kL(){return(0,ak.mapSerializer)((0,ak.struct)([["discriminator",(0,ak.u8)()]],{description:"UnverifyCollectionInstructionData"}),t=>({...t,discriminator:22}))}rp.getUnverifyCollectionInstructionDataSerializer=kL;function mhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},collectionAuthority:{index:1,isWritable:!0,value:e.collectionAuthority??null},collectionMint:{index:2,isWritable:!1,value:e.collectionMint??null},collection:{index:3,isWritable:!1,value:e.collection??null},collectionMasterEditionAccount:{index:4,isWritable:!1,value:e.collectionMasterEditionAccount??null},collectionAuthorityRecord:{index:5,isWritable:!1,value:e.collectionAuthorityRecord??null}},a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,phe.getAccountMetasAndSigners)(a,"omitted",r),o=kL().serialize({}),l=0;return(0,che.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}rp.unverifyCollection=mhe});var IL=b(ip=>{"use strict";Object.defineProperty(ip,"__esModule",{value:!0});ip.unverifyCollectionV1=ip.getUnverifyCollectionV1InstructionDataSerializer=void 0;var PL=F(),f9=W(),fhe=de(),TL=X();function zL(){return(0,f9.mapSerializer)((0,f9.struct)([["discriminator",(0,f9.u8)()],["unverifyCollectionV1Discriminator",(0,f9.u8)()]],{description:"UnverifyCollectionV1InstructionData"}),t=>({...t,discriminator:53,unverifyCollectionV1Discriminator:1}))}ip.getUnverifyCollectionV1InstructionDataSerializer=zL;function hhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},collectionMint:{index:3,isWritable:!1,value:e.collectionMint??null},collectionMetadata:{index:4,isWritable:!0,value:e.collectionMetadata??null},systemProgram:{index:5,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:6,isWritable:!1,value:e.sysvarInstructions??null}};i.authority.value||(i.authority.value=t.identity),i.collectionMetadata.value||(i.collectionMetadata.value=(0,fhe.findMetadataPda)(t,{mint:(0,TL.expectPublicKey)(i.collectionMint.value)})),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,PL.publicKey)("Sysvar1nstructions1111111111111111111111111"));let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,TL.getAccountMetasAndSigners)(a,"programId",r),o=zL().serialize({}),l=0;return(0,PL.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}ip.unverifyCollectionV1=hhe});var RL=b(ap=>{"use strict";Object.defineProperty(ap,"__esModule",{value:!0});ap.unverifyCreatorV1=ap.getUnverifyCreatorV1InstructionDataSerializer=void 0;var ML=F(),h9=W(),ghe=X();function DL(){return(0,h9.mapSerializer)((0,h9.struct)([["discriminator",(0,h9.u8)()],["unverifyCreatorV1Discriminator",(0,h9.u8)()]],{description:"UnverifyCreatorV1InstructionData"}),t=>({...t,discriminator:53,unverifyCreatorV1Discriminator:0}))}ap.getUnverifyCreatorV1InstructionDataSerializer=DL;function yhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},collectionMint:{index:3,isWritable:!1,value:e.collectionMint??null},collectionMetadata:{index:4,isWritable:!0,value:e.collectionMetadata??null},systemProgram:{index:5,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:6,isWritable:!1,value:e.sysvarInstructions??null}};i.authority.value||(i.authority.value=t.identity),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,ML.publicKey)("Sysvar1nstructions1111111111111111111111111"));let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,ghe.getAccountMetasAndSigners)(a,"programId",r),o=DL().serialize({}),l=0;return(0,ML.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}ap.unverifyCreatorV1=yhe});var CL=b(np=>{"use strict";Object.defineProperty(np,"__esModule",{value:!0});np.unverifySizedCollectionItem=np.getUnverifySizedCollectionItemInstructionDataSerializer=void 0;var bhe=F(),nk=W(),vhe=X();function BL(){return(0,nk.mapSerializer)((0,nk.struct)([["discriminator",(0,nk.u8)()]],{description:"UnverifySizedCollectionItemInstructionData"}),t=>({...t,discriminator:31}))}np.getUnverifySizedCollectionItemInstructionDataSerializer=BL;function She(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},collectionAuthority:{index:1,isWritable:!1,value:e.collectionAuthority??null},payer:{index:2,isWritable:!0,value:e.payer??null},collectionMint:{index:3,isWritable:!1,value:e.collectionMint??null},collection:{index:4,isWritable:!0,value:e.collection??null},collectionMasterEditionAccount:{index:5,isWritable:!1,value:e.collectionMasterEditionAccount??null},collectionAuthorityRecord:{index:6,isWritable:!1,value:e.collectionAuthorityRecord??null}};i.payer.value||(i.payer.value=t.payer);let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,vhe.getAccountMetasAndSigners)(a,"omitted",r),o=BL().serialize({}),l=0;return(0,bhe.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}np.unverifySizedCollectionItem=She});var qL=b(sp=>{"use strict";Object.defineProperty(sp,"__esModule",{value:!0});sp.updateAsAuthorityItemDelegateV2=sp.getUpdateAsAuthorityItemDelegateV2InstructionDataSerializer=void 0;var f1=F(),ga=W(),OL=de(),n4=X(),sk=ie();function NL(){return(0,ga.mapSerializer)((0,ga.struct)([["discriminator",(0,ga.u8)()],["updateAsAuthorityItemDelegateV2Discriminator",(0,ga.u8)()],["newUpdateAuthority",(0,ga.option)((0,ga.publicKey)())],["primarySaleHappened",(0,ga.option)((0,ga.bool)())],["isMutable",(0,ga.option)((0,ga.bool)())],["tokenStandard",(0,ga.option)((0,sk.getTokenStandardSerializer)())],["authorizationData",(0,ga.option)((0,sk.getAuthorizationDataSerializer)())]],{description:"UpdateAsAuthorityItemDelegateV2InstructionData"}),t=>({...t,discriminator:50,updateAsAuthorityItemDelegateV2Discriminator:2,newUpdateAuthority:t.newUpdateAuthority??(0,f1.none)(),primarySaleHappened:t.primarySaleHappened??(0,f1.none)(),isMutable:t.isMutable??(0,f1.none)(),tokenStandard:t.tokenStandard??(0,f1.none)(),authorizationData:t.authorizationData??(0,f1.none)()}))}sp.getUpdateAsAuthorityItemDelegateV2InstructionDataSerializer=NL;function whe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},token:{index:2,isWritable:!1,value:e.token??null},mint:{index:3,isWritable:!1,value:e.mint??null},metadata:{index:4,isWritable:!0,value:e.metadata??null},edition:{index:5,isWritable:!1,value:e.edition??null},payer:{index:6,isWritable:!0,value:e.payer??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:8,isWritable:!1,value:e.sysvarInstructions??null},authorizationRulesProgram:{index:9,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:10,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=t.identity.publicKey),i.delegateRecord.value||(i.delegateRecord.value=(0,OL.findMetadataDelegateRecordPda)(t,{mint:(0,n4.expectPublicKey)(i.mint.value),delegateRole:sk.MetadataDelegateRole.AuthorityItem,updateAuthority:(0,n4.expectSome)(a.updateAuthority),delegate:(0,n4.expectPublicKey)(i.authority.value)})),i.metadata.value||(i.metadata.value=(0,OL.findMetadataPda)(t,{mint:(0,n4.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,f1.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,n4.getAccountMetasAndSigners)(n,"programId",r),l=NL().serialize(a),d=0;return(0,f1.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}sp.updateAsAuthorityItemDelegateV2=whe});var FL=b(lp=>{"use strict";Object.defineProperty(lp,"__esModule",{value:!0});lp.updateAsCollectionDelegateV2=lp.getUpdateAsCollectionDelegateV2InstructionDataSerializer=void 0;var ok=F(),s4=W(),WL=de(),op=X(),g9=ie();function VL(){return(0,s4.mapSerializer)((0,s4.struct)([["discriminator",(0,s4.u8)()],["updateAsCollectionDelegateV2Discriminator",(0,s4.u8)()],["collection",(0,g9.getCollectionToggleSerializer)()],["authorizationData",(0,s4.option)((0,g9.getAuthorizationDataSerializer)())]],{description:"UpdateAsCollectionDelegateV2InstructionData"}),t=>({...t,discriminator:50,updateAsCollectionDelegateV2Discriminator:3,collection:t.collection??(0,g9.collectionToggle)("None"),authorizationData:t.authorizationData??(0,ok.none)()}))}lp.getUpdateAsCollectionDelegateV2InstructionDataSerializer=VL;function xhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},token:{index:2,isWritable:!1,value:e.token??null},mint:{index:3,isWritable:!1,value:e.mint??null},metadata:{index:4,isWritable:!0,value:e.metadata??null},edition:{index:5,isWritable:!1,value:e.edition??null},payer:{index:6,isWritable:!0,value:e.payer??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:8,isWritable:!1,value:e.sysvarInstructions??null},authorizationRulesProgram:{index:9,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:10,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.delegateMint||(a.delegateMint=(0,op.expectPublicKey)(i.mint.value)),a.delegateUpdateAuthority||(a.delegateUpdateAuthority=t.identity.publicKey),i.delegateRecord.value||(i.delegateRecord.value=(0,WL.findMetadataDelegateRecordPda)(t,{mint:(0,op.expectSome)(a.delegateMint),delegateRole:g9.MetadataDelegateRole.Collection,updateAuthority:(0,op.expectSome)(a.delegateUpdateAuthority),delegate:(0,op.expectPublicKey)(i.authority.value)})),i.metadata.value||(i.metadata.value=(0,WL.findMetadataPda)(t,{mint:(0,op.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,ok.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,op.getAccountMetasAndSigners)(n,"programId",r),l=VL().serialize(a),d=0;return(0,ok.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}lp.updateAsCollectionDelegateV2=xhe});var UL=b(dp=>{"use strict";Object.defineProperty(dp,"__esModule",{value:!0});dp.updateAsCollectionItemDelegateV2=dp.getUpdateAsCollectionItemDelegateV2InstructionDataSerializer=void 0;var lk=F(),o4=W(),KL=de(),l4=X(),y9=ie();function LL(){return(0,o4.mapSerializer)((0,o4.struct)([["discriminator",(0,o4.u8)()],["updateAsCollectionItemDelegateV2Discriminator",(0,o4.u8)()],["collection",(0,y9.getCollectionToggleSerializer)()],["authorizationData",(0,o4.option)((0,y9.getAuthorizationDataSerializer)())]],{description:"UpdateAsCollectionItemDelegateV2InstructionData"}),t=>({...t,discriminator:50,updateAsCollectionItemDelegateV2Discriminator:7,collection:t.collection??(0,y9.collectionToggle)("None"),authorizationData:t.authorizationData??(0,lk.none)()}))}dp.getUpdateAsCollectionItemDelegateV2InstructionDataSerializer=LL;function Ahe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},token:{index:2,isWritable:!1,value:e.token??null},mint:{index:3,isWritable:!1,value:e.mint??null},metadata:{index:4,isWritable:!0,value:e.metadata??null},edition:{index:5,isWritable:!1,value:e.edition??null},payer:{index:6,isWritable:!0,value:e.payer??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:8,isWritable:!1,value:e.sysvarInstructions??null},authorizationRulesProgram:{index:9,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:10,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=t.identity.publicKey),i.delegateRecord.value||(i.delegateRecord.value=(0,KL.findMetadataDelegateRecordPda)(t,{mint:(0,l4.expectPublicKey)(i.mint.value),delegateRole:y9.MetadataDelegateRole.CollectionItem,updateAuthority:(0,l4.expectSome)(a.updateAuthority),delegate:(0,l4.expectPublicKey)(i.authority.value)})),i.metadata.value||(i.metadata.value=(0,KL.findMetadataPda)(t,{mint:(0,l4.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,lk.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,l4.getAccountMetasAndSigners)(n,"programId",r),l=LL().serialize(a),d=0;return(0,lk.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}dp.updateAsCollectionItemDelegateV2=Ahe});var $L=b(pp=>{"use strict";Object.defineProperty(pp,"__esModule",{value:!0});pp.updateAsDataDelegateV2=pp.getUpdateAsDataDelegateV2InstructionDataSerializer=void 0;var b9=F(),up=W(),jL=de(),cp=X(),dk=ie();function HL(){return(0,up.mapSerializer)((0,up.struct)([["discriminator",(0,up.u8)()],["updateAsDataDelegateV2Discriminator",(0,up.u8)()],["data",(0,up.option)((0,dk.getDataSerializer)())],["authorizationData",(0,up.option)((0,dk.getAuthorizationDataSerializer)())]],{description:"UpdateAsDataDelegateV2InstructionData"}),t=>({...t,discriminator:50,updateAsDataDelegateV2Discriminator:4,data:t.data??(0,b9.none)(),authorizationData:t.authorizationData??(0,b9.none)()}))}pp.getUpdateAsDataDelegateV2InstructionDataSerializer=HL;function _he(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},token:{index:2,isWritable:!1,value:e.token??null},mint:{index:3,isWritable:!1,value:e.mint??null},metadata:{index:4,isWritable:!0,value:e.metadata??null},edition:{index:5,isWritable:!1,value:e.edition??null},payer:{index:6,isWritable:!0,value:e.payer??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:8,isWritable:!1,value:e.sysvarInstructions??null},authorizationRulesProgram:{index:9,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:10,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.delegateMint||(a.delegateMint=(0,cp.expectPublicKey)(i.mint.value)),a.delegateUpdateAuthority||(a.delegateUpdateAuthority=t.identity.publicKey),i.delegateRecord.value||(i.delegateRecord.value=(0,jL.findMetadataDelegateRecordPda)(t,{mint:(0,cp.expectSome)(a.delegateMint),delegateRole:dk.MetadataDelegateRole.Data,updateAuthority:(0,cp.expectSome)(a.delegateUpdateAuthority),delegate:(0,cp.expectPublicKey)(i.authority.value)})),i.metadata.value||(i.metadata.value=(0,jL.findMetadataPda)(t,{mint:(0,cp.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,b9.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,cp.getAccountMetasAndSigners)(n,"programId",r),l=HL().serialize(a),d=0;return(0,b9.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}pp.updateAsDataDelegateV2=_he});var JL=b(fp=>{"use strict";Object.defineProperty(fp,"__esModule",{value:!0});fp.updateAsDataItemDelegateV2=fp.getUpdateAsDataItemDelegateV2InstructionDataSerializer=void 0;var v9=F(),mp=W(),GL=de(),d4=X(),uk=ie();function ZL(){return(0,mp.mapSerializer)((0,mp.struct)([["discriminator",(0,mp.u8)()],["updateAsDataItemDelegateV2Discriminator",(0,mp.u8)()],["data",(0,mp.option)((0,uk.getDataSerializer)())],["authorizationData",(0,mp.option)((0,uk.getAuthorizationDataSerializer)())]],{description:"UpdateAsDataItemDelegateV2InstructionData"}),t=>({...t,discriminator:50,updateAsDataItemDelegateV2Discriminator:6,data:t.data??(0,v9.none)(),authorizationData:t.authorizationData??(0,v9.none)()}))}fp.getUpdateAsDataItemDelegateV2InstructionDataSerializer=ZL;function khe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},token:{index:2,isWritable:!1,value:e.token??null},mint:{index:3,isWritable:!1,value:e.mint??null},metadata:{index:4,isWritable:!0,value:e.metadata??null},edition:{index:5,isWritable:!1,value:e.edition??null},payer:{index:6,isWritable:!0,value:e.payer??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:8,isWritable:!1,value:e.sysvarInstructions??null},authorizationRulesProgram:{index:9,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:10,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=t.identity.publicKey),i.delegateRecord.value||(i.delegateRecord.value=(0,GL.findMetadataDelegateRecordPda)(t,{mint:(0,d4.expectPublicKey)(i.mint.value),delegateRole:uk.MetadataDelegateRole.DataItem,updateAuthority:(0,d4.expectSome)(a.updateAuthority),delegate:(0,d4.expectPublicKey)(i.authority.value)})),i.metadata.value||(i.metadata.value=(0,GL.findMetadataPda)(t,{mint:(0,d4.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,v9.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,d4.getAccountMetasAndSigners)(n,"programId",r),l=ZL().serialize(a),d=0;return(0,v9.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}fp.updateAsDataItemDelegateV2=khe});var XL=b(gp=>{"use strict";Object.defineProperty(gp,"__esModule",{value:!0});gp.updateAsProgrammableConfigDelegateV2=gp.getUpdateAsProgrammableConfigDelegateV2InstructionDataSerializer=void 0;var ck=F(),u4=W(),YL=de(),hp=X(),S9=ie();function QL(){return(0,u4.mapSerializer)((0,u4.struct)([["discriminator",(0,u4.u8)()],["updateAsProgrammableConfigDelegateV2Discriminator",(0,u4.u8)()],["ruleSet",(0,S9.getRuleSetToggleSerializer)()],["authorizationData",(0,u4.option)((0,S9.getAuthorizationDataSerializer)())]],{description:"UpdateAsProgrammableConfigDelegateV2InstructionData"}),t=>({...t,discriminator:50,updateAsProgrammableConfigDelegateV2Discriminator:5,ruleSet:t.ruleSet??(0,S9.ruleSetToggle)("None"),authorizationData:t.authorizationData??(0,ck.none)()}))}gp.getUpdateAsProgrammableConfigDelegateV2InstructionDataSerializer=QL;function Ehe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},token:{index:2,isWritable:!1,value:e.token??null},mint:{index:3,isWritable:!1,value:e.mint??null},metadata:{index:4,isWritable:!0,value:e.metadata??null},edition:{index:5,isWritable:!1,value:e.edition??null},payer:{index:6,isWritable:!0,value:e.payer??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:8,isWritable:!1,value:e.sysvarInstructions??null},authorizationRulesProgram:{index:9,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:10,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.delegateMint||(a.delegateMint=(0,hp.expectPublicKey)(i.mint.value)),a.delegateUpdateAuthority||(a.delegateUpdateAuthority=t.identity.publicKey),i.delegateRecord.value||(i.delegateRecord.value=(0,YL.findMetadataDelegateRecordPda)(t,{mint:(0,hp.expectSome)(a.delegateMint),delegateRole:S9.MetadataDelegateRole.ProgrammableConfig,updateAuthority:(0,hp.expectSome)(a.delegateUpdateAuthority),delegate:(0,hp.expectPublicKey)(i.authority.value)})),i.metadata.value||(i.metadata.value=(0,YL.findMetadataPda)(t,{mint:(0,hp.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,ck.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,hp.getAccountMetasAndSigners)(n,"programId",r),l=QL().serialize(a),d=0;return(0,ck.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}gp.updateAsProgrammableConfigDelegateV2=Ehe});var rU=b(yp=>{"use strict";Object.defineProperty(yp,"__esModule",{value:!0});yp.updateAsProgrammableConfigItemDelegateV2=yp.getUpdateAsProgrammableConfigItemDelegateV2InstructionDataSerializer=void 0;var pk=F(),c4=W(),eU=de(),p4=X(),w9=ie();function tU(){return(0,c4.mapSerializer)((0,c4.struct)([["discriminator",(0,c4.u8)()],["updateAsProgrammableConfigItemDelegateV2Discriminator",(0,c4.u8)()],["ruleSet",(0,w9.getRuleSetToggleSerializer)()],["authorizationData",(0,c4.option)((0,w9.getAuthorizationDataSerializer)())]],{description:"UpdateAsProgrammableConfigItemDelegateV2InstructionData"}),t=>({...t,discriminator:50,updateAsProgrammableConfigItemDelegateV2Discriminator:8,ruleSet:t.ruleSet??(0,w9.ruleSetToggle)("None"),authorizationData:t.authorizationData??(0,pk.none)()}))}yp.getUpdateAsProgrammableConfigItemDelegateV2InstructionDataSerializer=tU;function Phe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},token:{index:2,isWritable:!1,value:e.token??null},mint:{index:3,isWritable:!1,value:e.mint??null},metadata:{index:4,isWritable:!0,value:e.metadata??null},edition:{index:5,isWritable:!1,value:e.edition??null},payer:{index:6,isWritable:!0,value:e.payer??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:8,isWritable:!1,value:e.sysvarInstructions??null},authorizationRulesProgram:{index:9,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:10,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=t.identity.publicKey),i.delegateRecord.value||(i.delegateRecord.value=(0,eU.findMetadataDelegateRecordPda)(t,{mint:(0,p4.expectPublicKey)(i.mint.value),delegateRole:w9.MetadataDelegateRole.ProgrammableConfigItem,updateAuthority:(0,p4.expectSome)(a.updateAuthority),delegate:(0,p4.expectPublicKey)(i.authority.value)})),i.metadata.value||(i.metadata.value=(0,eU.findMetadataPda)(t,{mint:(0,p4.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,pk.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,p4.getAccountMetasAndSigners)(n,"programId",r),l=tU().serialize(a),d=0;return(0,pk.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}yp.updateAsProgrammableConfigItemDelegateV2=Phe});var nU=b(bp=>{"use strict";Object.defineProperty(bp,"__esModule",{value:!0});bp.updateAsUpdateAuthorityV2=bp.getUpdateAsUpdateAuthorityV2InstructionDataSerializer=void 0;var $o=F(),Li=W(),The=de(),iU=X(),La=ie();function aU(){return(0,Li.mapSerializer)((0,Li.struct)([["discriminator",(0,Li.u8)()],["updateAsUpdateAuthorityV2Discriminator",(0,Li.u8)()],["newUpdateAuthority",(0,Li.option)((0,Li.publicKey)())],["data",(0,Li.option)((0,La.getDataSerializer)())],["primarySaleHappened",(0,Li.option)((0,Li.bool)())],["isMutable",(0,Li.option)((0,Li.bool)())],["collection",(0,La.getCollectionToggleSerializer)()],["collectionDetails",(0,La.getCollectionDetailsToggleSerializer)()],["uses",(0,La.getUsesToggleSerializer)()],["ruleSet",(0,La.getRuleSetToggleSerializer)()],["tokenStandard",(0,Li.option)((0,La.getTokenStandardSerializer)())],["authorizationData",(0,Li.option)((0,La.getAuthorizationDataSerializer)())]],{description:"UpdateAsUpdateAuthorityV2InstructionData"}),t=>({...t,discriminator:50,updateAsUpdateAuthorityV2Discriminator:1,newUpdateAuthority:t.newUpdateAuthority??(0,$o.none)(),data:t.data??(0,$o.none)(),primarySaleHappened:t.primarySaleHappened??(0,$o.none)(),isMutable:t.isMutable??(0,$o.none)(),collection:t.collection??(0,La.collectionToggle)("None"),collectionDetails:t.collectionDetails??(0,La.collectionDetailsToggle)("None"),uses:t.uses??(0,La.usesToggle)("None"),ruleSet:t.ruleSet??(0,La.ruleSetToggle)("None"),tokenStandard:t.tokenStandard??(0,$o.none)(),authorizationData:t.authorizationData??(0,$o.none)()}))}bp.getUpdateAsUpdateAuthorityV2InstructionDataSerializer=aU;function zhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},token:{index:2,isWritable:!1,value:e.token??null},mint:{index:3,isWritable:!1,value:e.mint??null},metadata:{index:4,isWritable:!0,value:e.metadata??null},edition:{index:5,isWritable:!1,value:e.edition??null},payer:{index:6,isWritable:!0,value:e.payer??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:8,isWritable:!1,value:e.sysvarInstructions??null},authorizationRulesProgram:{index:9,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:10,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),i.metadata.value||(i.metadata.value=(0,The.findMetadataPda)(t,{mint:(0,iU.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,$o.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,iU.getAccountMetasAndSigners)(n,"programId",r),l=aU().serialize(a),d=0;return(0,$o.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}bp.updateAsUpdateAuthorityV2=zhe});var oU=b(vp=>{"use strict";Object.defineProperty(vp,"__esModule",{value:!0});vp.updateMetadataAccountV2=vp.getUpdateMetadataAccountV2InstructionDataSerializer=void 0;var m4=F(),wn=W(),Ihe=X(),Mhe=ie();function sU(){return(0,wn.mapSerializer)((0,wn.struct)([["discriminator",(0,wn.u8)()],["data",(0,wn.option)((0,Mhe.getDataV2Serializer)())],["newUpdateAuthority",(0,wn.option)((0,wn.publicKey)())],["primarySaleHappened",(0,wn.option)((0,wn.bool)())],["isMutable",(0,wn.option)((0,wn.bool)())]],{description:"UpdateMetadataAccountV2InstructionData"}),t=>({...t,discriminator:15,data:t.data??(0,m4.none)(),newUpdateAuthority:t.newUpdateAuthority??(0,m4.none)(),primarySaleHappened:t.primarySaleHappened??(0,m4.none)(),isMutable:t.isMutable??(0,m4.none)()}))}vp.getUpdateMetadataAccountV2InstructionDataSerializer=sU;function Dhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},updateAuthority:{index:1,isWritable:!1,value:e.updateAuthority??null}},a={...e};i.updateAuthority.value||(i.updateAuthority.value=t.identity);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Ihe.getAccountMetasAndSigners)(n,"programId",r),l=sU().serialize(a),d=0;return(0,m4.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}vp.updateMetadataAccountV2=Dhe});var dU=b(Sp=>{"use strict";Object.defineProperty(Sp,"__esModule",{value:!0});Sp.updatePrimarySaleHappenedViaToken=Sp.getUpdatePrimarySaleHappenedViaTokenInstructionDataSerializer=void 0;var Rhe=F(),mk=W(),Bhe=X();function lU(){return(0,mk.mapSerializer)((0,mk.struct)([["discriminator",(0,mk.u8)()]],{description:"UpdatePrimarySaleHappenedViaTokenInstructionData"}),t=>({...t,discriminator:4}))}Sp.getUpdatePrimarySaleHappenedViaTokenInstructionDataSerializer=lU;function Che(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},owner:{index:1,isWritable:!1,value:e.owner??null},token:{index:2,isWritable:!1,value:e.token??null}},a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,Bhe.getAccountMetasAndSigners)(a,"programId",r),o=lU().serialize({}),l=0;return(0,Rhe.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}Sp.updatePrimarySaleHappenedViaToken=Che});var pU=b(wp=>{"use strict";Object.defineProperty(wp,"__esModule",{value:!0});wp.updateV1=wp.getUpdateV1InstructionDataSerializer=void 0;var h1=F(),ya=W(),Ohe=de(),uU=X(),xn=ie();function cU(){return(0,ya.mapSerializer)((0,ya.struct)([["discriminator",(0,ya.u8)()],["updateV1Discriminator",(0,ya.u8)()],["newUpdateAuthority",(0,ya.option)((0,ya.publicKey)())],["data",(0,ya.option)((0,xn.getDataSerializer)())],["primarySaleHappened",(0,ya.option)((0,ya.bool)())],["isMutable",(0,ya.option)((0,ya.bool)())],["collection",(0,xn.getCollectionToggleSerializer)()],["collectionDetails",(0,xn.getCollectionDetailsToggleSerializer)()],["uses",(0,xn.getUsesToggleSerializer)()],["ruleSet",(0,xn.getRuleSetToggleSerializer)()],["authorizationData",(0,ya.option)((0,xn.getAuthorizationDataSerializer)())]],{description:"UpdateV1InstructionData"}),t=>({...t,discriminator:50,updateV1Discriminator:0,newUpdateAuthority:t.newUpdateAuthority??(0,h1.none)(),data:t.data??(0,h1.none)(),primarySaleHappened:t.primarySaleHappened??(0,h1.none)(),isMutable:t.isMutable??(0,h1.none)(),collection:t.collection??(0,xn.collectionToggle)("None"),collectionDetails:t.collectionDetails??(0,xn.collectionDetailsToggle)("None"),uses:t.uses??(0,xn.usesToggle)("None"),ruleSet:t.ruleSet??(0,xn.ruleSetToggle)("None"),authorizationData:t.authorizationData??(0,h1.none)()}))}wp.getUpdateV1InstructionDataSerializer=cU;function Nhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},token:{index:2,isWritable:!1,value:e.token??null},mint:{index:3,isWritable:!1,value:e.mint??null},metadata:{index:4,isWritable:!0,value:e.metadata??null},edition:{index:5,isWritable:!1,value:e.edition??null},payer:{index:6,isWritable:!0,value:e.payer??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:8,isWritable:!1,value:e.sysvarInstructions??null},authorizationRulesProgram:{index:9,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:10,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),i.metadata.value||(i.metadata.value=(0,Ohe.findMetadataPda)(t,{mint:(0,uU.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,h1.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,uU.getAccountMetasAndSigners)(n,"programId",r),l=cU().serialize(a),d=0;return(0,h1.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}wp.updateV1=Nhe});var hU=b(xp=>{"use strict";Object.defineProperty(xp,"__esModule",{value:!0});xp.useV1=xp.getUseV1InstructionDataSerializer=void 0;var fk=F(),f4=W(),qhe=de(),mU=X(),Whe=ie();function fU(){return(0,f4.mapSerializer)((0,f4.struct)([["discriminator",(0,f4.u8)()],["useV1Discriminator",(0,f4.u8)()],["authorizationData",(0,f4.option)((0,Whe.getAuthorizationDataSerializer)())]],{description:"UseV1InstructionData"}),t=>({...t,discriminator:51,useV1Discriminator:0,authorizationData:t.authorizationData??(0,fk.none)()}))}xp.getUseV1InstructionDataSerializer=fU;function Vhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!0,value:e.delegateRecord??null},token:{index:2,isWritable:!0,value:e.token??null},mint:{index:3,isWritable:!1,value:e.mint??null},metadata:{index:4,isWritable:!0,value:e.metadata??null},edition:{index:5,isWritable:!0,value:e.edition??null},payer:{index:6,isWritable:!1,value:e.payer??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:8,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:9,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:10,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:11,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),i.metadata.value||(i.metadata.value=(0,qhe.findMetadataPda)(t,{mint:(0,mU.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,fk.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,mU.getAccountMetasAndSigners)(n,"programId",r),l=fU().serialize(a),d=0;return(0,fk.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}xp.useV1=Vhe});var vU=b(Ap=>{"use strict";Object.defineProperty(Ap,"__esModule",{value:!0});Ap.utilize=Ap.getUtilizeInstructionDataSerializer=void 0;var gU=F(),x9=W(),Fhe=de(),yU=X();function bU(){return(0,x9.mapSerializer)((0,x9.struct)([["discriminator",(0,x9.u8)()],["numberOfUses",(0,x9.u64)()]],{description:"UtilizeInstructionData"}),t=>({...t,discriminator:19}))}Ap.getUtilizeInstructionDataSerializer=bU;function Khe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},tokenAccount:{index:1,isWritable:!0,value:e.tokenAccount??null},mint:{index:2,isWritable:!0,value:e.mint??null},useAuthority:{index:3,isWritable:!0,value:e.useAuthority??null},owner:{index:4,isWritable:!1,value:e.owner??null},tokenProgram:{index:5,isWritable:!1,value:e.tokenProgram??null},ataProgram:{index:6,isWritable:!1,value:e.ataProgram??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},rent:{index:8,isWritable:!1,value:e.rent??null},useAuthorityRecord:{index:9,isWritable:!0,value:e.useAuthorityRecord??null},burner:{index:10,isWritable:!1,value:e.burner??null}},a={...e};i.metadata.value||(i.metadata.value=(0,Fhe.findMetadataPda)(t,{mint:(0,yU.expectPublicKey)(i.mint.value)})),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1),i.ataProgram.value||(i.ataProgram.value=t.programs.getPublicKey("splAssociatedToken","ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"),i.ataProgram.isWritable=!1),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.rent.value||(i.rent.value=(0,gU.publicKey)("SysvarRent111111111111111111111111111111111"));let n=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,yU.getAccountMetasAndSigners)(n,"omitted",r),l=bU().serialize(a),d=0;return(0,gU.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}Ap.utilize=Khe});var wU=b(_p=>{"use strict";Object.defineProperty(_p,"__esModule",{value:!0});_p.verifyCollection=_p.getVerifyCollectionInstructionDataSerializer=void 0;var Lhe=F(),hk=W(),Uhe=X();function SU(){return(0,hk.mapSerializer)((0,hk.struct)([["discriminator",(0,hk.u8)()]],{description:"VerifyCollectionInstructionData"}),t=>({...t,discriminator:18}))}_p.getVerifyCollectionInstructionDataSerializer=SU;function jhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},collectionAuthority:{index:1,isWritable:!0,value:e.collectionAuthority??null},payer:{index:2,isWritable:!0,value:e.payer??null},collectionMint:{index:3,isWritable:!1,value:e.collectionMint??null},collection:{index:4,isWritable:!1,value:e.collection??null},collectionMasterEditionAccount:{index:5,isWritable:!1,value:e.collectionMasterEditionAccount??null},collectionAuthorityRecord:{index:6,isWritable:!1,value:e.collectionAuthorityRecord??null}};i.payer.value||(i.payer.value=t.payer);let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,Uhe.getAccountMetasAndSigners)(a,"omitted",r),o=SU().serialize({}),l=0;return(0,Lhe.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}_p.verifyCollection=jhe});var kU=b(kp=>{"use strict";Object.defineProperty(kp,"__esModule",{value:!0});kp.verifyCollectionV1=kp.getVerifyCollectionV1InstructionDataSerializer=void 0;var xU=F(),A9=W(),AU=de(),gk=X();function _U(){return(0,A9.mapSerializer)((0,A9.struct)([["discriminator",(0,A9.u8)()],["verifyCollectionV1Discriminator",(0,A9.u8)()]],{description:"VerifyCollectionV1InstructionData"}),t=>({...t,discriminator:52,verifyCollectionV1Discriminator:1}))}kp.getVerifyCollectionV1InstructionDataSerializer=_U;function Hhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},collectionMint:{index:3,isWritable:!1,value:e.collectionMint??null},collectionMetadata:{index:4,isWritable:!0,value:e.collectionMetadata??null},collectionMasterEdition:{index:5,isWritable:!1,value:e.collectionMasterEdition??null},systemProgram:{index:6,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:7,isWritable:!1,value:e.sysvarInstructions??null}};i.authority.value||(i.authority.value=t.identity),i.collectionMetadata.value||(i.collectionMetadata.value=(0,AU.findMetadataPda)(t,{mint:(0,gk.expectPublicKey)(i.collectionMint.value)})),i.collectionMasterEdition.value||(i.collectionMasterEdition.value=(0,AU.findMasterEditionPda)(t,{mint:(0,gk.expectPublicKey)(i.collectionMint.value)})),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,xU.publicKey)("Sysvar1nstructions1111111111111111111111111"));let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,gk.getAccountMetasAndSigners)(a,"programId",r),o=_U().serialize({}),l=0;return(0,xU.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}kp.verifyCollectionV1=Hhe});var TU=b(Ep=>{"use strict";Object.defineProperty(Ep,"__esModule",{value:!0});Ep.verifyCreatorV1=Ep.getVerifyCreatorV1InstructionDataSerializer=void 0;var EU=F(),_9=W(),$he=X();function PU(){return(0,_9.mapSerializer)((0,_9.struct)([["discriminator",(0,_9.u8)()],["verifyCreatorV1Discriminator",(0,_9.u8)()]],{description:"VerifyCreatorV1InstructionData"}),t=>({...t,discriminator:52,verifyCreatorV1Discriminator:0}))}Ep.getVerifyCreatorV1InstructionDataSerializer=PU;function Ghe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},collectionMint:{index:3,isWritable:!1,value:e.collectionMint??null},collectionMetadata:{index:4,isWritable:!0,value:e.collectionMetadata??null},collectionMasterEdition:{index:5,isWritable:!1,value:e.collectionMasterEdition??null},systemProgram:{index:6,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:7,isWritable:!1,value:e.sysvarInstructions??null}};i.authority.value||(i.authority.value=t.identity),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,EU.publicKey)("Sysvar1nstructions1111111111111111111111111"));let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,$he.getAccountMetasAndSigners)(a,"programId",r),o=PU().serialize({}),l=0;return(0,EU.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}Ep.verifyCreatorV1=Ghe});var IU=b(Pp=>{"use strict";Object.defineProperty(Pp,"__esModule",{value:!0});Pp.verifySizedCollectionItem=Pp.getVerifySizedCollectionItemInstructionDataSerializer=void 0;var Zhe=F(),yk=W(),Jhe=X();function zU(){return(0,yk.mapSerializer)((0,yk.struct)([["discriminator",(0,yk.u8)()]],{description:"VerifySizedCollectionItemInstructionData"}),t=>({...t,discriminator:30}))}Pp.getVerifySizedCollectionItemInstructionDataSerializer=zU;function Yhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},collectionAuthority:{index:1,isWritable:!1,value:e.collectionAuthority??null},payer:{index:2,isWritable:!0,value:e.payer??null},collectionMint:{index:3,isWritable:!1,value:e.collectionMint??null},collection:{index:4,isWritable:!0,value:e.collection??null},collectionMasterEditionAccount:{index:5,isWritable:!1,value:e.collectionMasterEditionAccount??null},collectionAuthorityRecord:{index:6,isWritable:!1,value:e.collectionAuthorityRecord??null}};i.payer.value||(i.payer.value=t.payer);let a=Object.values(i).sort((d,u)=>d.index-u.index),[n,s]=(0,Jhe.getAccountMetasAndSigners)(a,"omitted",r),o=zU().serialize({}),l=0;return(0,Zhe.transactionBuilder)([{instruction:{keys:n,programId:r,data:o},signers:s,bytesCreatedOnChain:l}])}Pp.verifySizedCollectionItem=Yhe});var MU=b(Q=>{"use strict";var Qhe=Q&&Q.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),ee=Q&&Q.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Qhe(e,t,r)};Object.defineProperty(Q,"__esModule",{value:!0});ee(pV(),Q);ee(hV(),Q);ee(yV(),Q);ee(vV(),Q);ee(xV(),Q);ee(kV(),Q);ee(zV(),Q);ee(MV(),Q);ee(RV(),Q);ee(NV(),Q);ee(VV(),Q);ee(UV(),Q);ee($V(),Q);ee(JV(),Q);ee(XV(),Q);ee(rF(),Q);ee(nF(),Q);ee(lF(),Q);ee(cF(),Q);ee(fF(),Q);ee(yF(),Q);ee(SF(),Q);ee(AF(),Q);ee(EF(),Q);ee(zF(),Q);ee(DF(),Q);ee(CF(),Q);ee(qF(),Q);ee(FF(),Q);ee(UF(),Q);ee(HF(),Q);ee(GF(),Q);ee(QF(),Q);ee(iK(),Q);ee(nK(),Q);ee(oK(),Q);ee(uK(),Q);ee(mK(),Q);ee(gK(),Q);ee(vK(),Q);ee(xK(),Q);ee(kK(),Q);ee(TK(),Q);ee(MK(),Q);ee(BK(),Q);ee(NK(),Q);ee(VK(),Q);ee(LK(),Q);ee(HK(),Q);ee(ZK(),Q);ee(QK(),Q);ee(tL(),Q);ee(iL(),Q);ee(nL(),Q);ee(oL(),Q);ee(uL(),Q);ee(pL(),Q);ee(hL(),Q);ee(bL(),Q);ee(wL(),Q);ee(_L(),Q);ee(EL(),Q);ee(IL(),Q);ee(RL(),Q);ee(CL(),Q);ee(qL(),Q);ee(FL(),Q);ee(UL(),Q);ee($L(),Q);ee(JL(),Q);ee(XL(),Q);ee(rU(),Q);ee(nU(),Q);ee(oU(),Q);ee(dU(),Q);ee(pU(),Q);ee(hU(),Q);ee(vU(),Q);ee(wU(),Q);ee(kU(),Q);ee(TU(),Q);ee(IU(),Q)});var RU=b(ba=>{"use strict";Object.defineProperty(ba,"__esModule",{value:!0});ba.getMplTokenMetadataProgramId=ba.getMplTokenMetadataProgram=ba.createMplTokenMetadataProgram=ba.MPL_TOKEN_METADATA_PROGRAM_ID=void 0;var DU=$A();ba.MPL_TOKEN_METADATA_PROGRAM_ID="metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s";function Xhe(){return{name:"mplTokenMetadata",publicKey:ba.MPL_TOKEN_METADATA_PROGRAM_ID,getErrorFromCode(t,e){return(0,DU.getMplTokenMetadataErrorFromCode)(t,this,e)},getErrorFromName(t,e){return(0,DU.getMplTokenMetadataErrorFromName)(t,this,e)},isOnCluster(){return!0}}}ba.createMplTokenMetadataProgram=Xhe;function e4e(t,e){return t.programs.get("mplTokenMetadata",e)}ba.getMplTokenMetadataProgram=e4e;function t4e(t,e){return t.programs.getPublicKey("mplTokenMetadata",ba.MPL_TOKEN_METADATA_PROGRAM_ID,e)}ba.getMplTokenMetadataProgramId=t4e});var BU=b(g1=>{"use strict";var r4e=g1&&g1.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),i4e=g1&&g1.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&r4e(e,t,r)};Object.defineProperty(g1,"__esModule",{value:!0});i4e(RU(),g1)});var To=b(va=>{"use strict";var a4e=va&&va.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),Tp=va&&va.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&a4e(e,t,r)};Object.defineProperty(va,"__esModule",{value:!0});Tp(de(),va);Tp($A(),va);Tp(MU(),va);Tp(BU(),va);Tp(X(),va);Tp(ie(),va)});var OU=b(Ti=>{"use strict";Object.defineProperty(Ti,"__esModule",{value:!0});Ti.createFungibleAsset=Ti.createFungible=Ti.createProgrammableNft=Ti.createNft=Ti.createAndMint=void 0;var CU=F(),Go=To(),n4e=(t,e)=>(0,CU.transactionBuilder)().add((0,Go.createV1)(t,e)).add((0,Go.mintV1)(t,{...e,mint:(0,CU.publicKey)(e.mint)}));Ti.createAndMint=n4e;var s4e=(t,e)=>(0,Ti.createAndMint)(t,{...e,tokenStandard:Go.TokenStandard.NonFungible,amount:1});Ti.createNft=s4e;var o4e=(t,e)=>(0,Ti.createAndMint)(t,{...e,tokenStandard:Go.TokenStandard.ProgrammableNonFungible,amount:1});Ti.createProgrammableNft=o4e;var l4e=(t,e)=>(0,Go.createV1)(t,{...e,tokenStandard:Go.TokenStandard.Fungible});Ti.createFungible=l4e;var d4e=(t,e)=>(0,Go.createV1)(t,{...e,tokenStandard:Go.TokenStandard.FungibleAsset});Ti.createFungibleAsset=d4e});var FU=b(ci=>{"use strict";Object.defineProperty(ci,"__esModule",{value:!0});ci.deserializeDigitalAssetWithToken=ci.fetchAllDigitalAssetWithTokenByMint=ci.fetchAllDigitalAssetWithTokenByOwnerAndMint=ci.fetchAllDigitalAssetWithTokenByOwner=ci.fetchDigitalAssetWithTokenByMint=ci.fetchDigitalAssetWithAssociatedToken=ci.fetchDigitalAssetWithToken=void 0;var Zo=F(),k9=_t(),NU=R5(),Ua=To();async function qU(t,e,r,i){let[a,n,s,o,l]=await t.rpc.getAccounts([e,(0,Ua.findMetadataPda)(t,{mint:e})[0],(0,Ua.findMasterEditionPda)(t,{mint:e})[0],r,(0,Ua.findTokenRecordPda)(t,{mint:e,token:r})[0]],i);return(0,Zo.assertAccountExists)(a,"Mint"),(0,Zo.assertAccountExists)(n,"Metadata"),(0,Zo.assertAccountExists)(o,"Token"),bk(a,n,o,s.exists?s:void 0,l.exists?l:void 0)}ci.fetchDigitalAssetWithToken=qU;async function u4e(t,e,r,i){let[a]=(0,k9.findAssociatedTokenPda)(t,{mint:e,owner:r});return qU(t,e,a,i)}ci.fetchDigitalAssetWithAssociatedToken=u4e;async function c4e(t,e,r){let i=await VU(t,e,r);if(i.length===0)throw new Error("No valid token accounts found for the provided mint");if(i.length>1)throw new Error("Multiple valid token accounts found for the provided mintuse `fetchAllDigitalAssetWithTokenByMint` instead to retrieve them all.");return i[0]}ci.fetchDigitalAssetWithTokenByMint=c4e;async function WU(t,e,r){let i=await(0,k9.fetchAllTokenByOwner)(t,e,r),a=i.flatMap(s=>[s.mint,(0,Ua.findMetadataPda)(t,{mint:s.mint})[0],(0,Ua.findMasterEditionPda)(t,{mint:s.mint})[0],(0,Ua.findTokenRecordPda)(t,{mint:s.mint,token:s.publicKey})[0]]),n=await t.rpc.getAccounts(a,r);return(0,Zo.zipMap)(i,(0,Zo.chunk)(n,4),(s,o)=>{if(!o||o.length!==4)return[];let[l,d,u,c]=o;if(!l.exists||!d.exists)return[];try{return[{...(0,NU.deserializeDigitalAsset)(l,d,u.exists?u:void 0),token:s,tokenRecord:c.exists?(0,Ua.deserializeTokenRecord)(c):void 0}]}catch{return[]}}).flat()}ci.fetchAllDigitalAssetWithTokenByOwner=WU;function p4e(t,e,r,i){return WU(t,e,{...i,mint:r})}ci.fetchAllDigitalAssetWithTokenByOwnerAndMint=p4e;async function VU(t,e,r){let a=(await(0,k9.findLargestTokensByMint)(t,e,r)).filter(c=>c.amount.basisPoints>0).map(c=>c.publicKey),n=[e,(0,Ua.findMetadataPda)(t,{mint:e})[0],(0,Ua.findMasterEditionPda)(t,{mint:e})[0]];n.push(...a.flatMap(c=>[c,(0,Ua.findTokenRecordPda)(t,{mint:e,token:c})[0]]));let s=await t.rpc.getAccounts(n,r),[o,l,d,...u]=s;return(0,Zo.assertAccountExists)(o,"Mint"),(0,Zo.assertAccountExists)(l,"Metadata"),(0,Zo.chunk)(u,2).flatMap(([c,w])=>c.exists?[bk(o,l,c,d.exists?d:void 0,w.exists?w:void 0)]:[])}ci.fetchAllDigitalAssetWithTokenByMint=VU;function bk(t,e,r,i,a){return{...(0,NU.deserializeDigitalAsset)(t,e,i),token:(0,k9.deserializeToken)(r),tokenRecord:a?(0,Ua.deserializeTokenRecord)(a):void 0}}ci.deserializeDigitalAssetWithToken=bk});var KU=b(E9=>{"use strict";Object.defineProperty(E9,"__esModule",{value:!0});E9.fetchJsonMetadata=void 0;var m4e=vm(),f4e=async(t,e)=>{try{return await t.downloader.downloadJson(e)}catch(r){throw new m4e.TokenMetadataError(`Failed to fetch JSON metadata from ${e}`,r)}};E9.fetchJsonMetadata=f4e});var LU=b(P9=>{"use strict";Object.defineProperty(P9,"__esModule",{value:!0});P9.mplTokenMetadata=void 0;var h4e=_t(),g4e=To(),y4e=()=>({install(t){t.use((0,h4e.mplToolbox)()),t.programs.add((0,g4e.createMplTokenMetadataProgram)(),!1)}});P9.mplTokenMetadata=y4e});var UU=b(zi=>{"use strict";var b4e=zi&&zi.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),Jo=zi&&zi.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&b4e(e,t,r)};Object.defineProperty(zi,"__esModule",{value:!0});Jo(To(),zi);Jo(We(),zi);Jo(OU(),zi);Jo(R5(),zi);Jo(FU(),zi);Jo(vm(),zi);Jo(KU(),zi);Jo(LU(),zi)});var v4e={};Ik(v4e,{SolanaUtils:()=>z9,checkOwnerNFTs:()=>T9,lastStakingReward:()=>JU,nftOwnerAddress:()=>h4,stakeAccountBalance:()=>GU});module.exports=J9(v4e);var I9=Fr(ea());var jU=Fr(ea());var W0=t=>({__option:"Some",value:t}),od=()=>({__option:"None"}),Rv=t=>t&&typeof t=="object"&&"__option"in t&&(t.__option==="Some"&&"value"in t||t.__option==="None"),ld=t=>t.__option==="Some";var Bv=t=>t!==null?W0(t):od();var P3=class extends Error{name="InvalidBaseStringError";constructor(e,r,i){let a=`Expected a string of base ${r}, got [${e}].`;super(a),this.cause=i}};var qD=t=>{let e=t.length,r=BigInt(e);return{description:`base${e}`,fixedSize:null,maxSize:null,serialize(i){if(!i.match(new RegExp(`^[${t}]*$`)))throw new P3(i,e);if(i==="")return new Uint8Array;let a=[...i],n=a.findIndex(c=>c!==t[0]);n=n===-1?a.length:n;let s=Array(n).fill(0);if(n===a.length)return Uint8Array.from(s);let o=a.slice(n),l=0n,d=1n;for(let c=o.length-1;c>=0;c-=1)l+=d*BigInt(t.indexOf(o[c])),d*=r;let u=[];for(;l>0n;)u.unshift(Number(l%256n)),l/=256n;return Uint8Array.from(s.concat(u))},deserialize(i,a=0){if(i.length===0)return["",0];let n=i.slice(a),s=n.findIndex(u=>u!==0);s=s===-1?n.length:s;let o=t[0].repeat(s);if(s===n.length)return[o,i.length];let l=n.slice(s).reduce((u,c)=>u*256n+BigInt(c),0n),d=[];for(;l>0n;)d.unshift(t[Number(l%r)]),l/=r;return[o+d.join(""),i.length]}}};var $r=qD("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz");var St=t=>{let e=t.reduce((a,n)=>a+n.length,0),r=new Uint8Array(e),i=0;return t.forEach(a=>{r.set(a,i),i+=a.length}),r},WD=(t,e)=>{if(t.length>=e)return t;let r=new Uint8Array(e).fill(0);return r.set(t),r},T3=(t,e)=>WD(t.slice(0,e),e);var Gr=class extends Error{name="DeserializingEmptyBufferError";constructor(e){super(`Serializer [${e}] cannot deserialize empty buffers.`)}},Wi=class extends Error{name="NotEnoughBytesError";constructor(e,r,i){super(`Serializer [${e}] expected ${r} bytes, got ${i}.`)}},Zr=class extends Error{name="ExpectedFixedSizeSerializerError";constructor(e){e??="Expected a fixed-size serializer, got a variable-size one.",super(e)}};function V0(t,e,r){return{description:r??`fixed(${e}, ${t.description})`,fixedSize:e,maxSize:e,serialize:i=>T3(t.serialize(i),e),deserialize:(i,a=0)=>{if(i=i.slice(a,a+e),i.lengtht.serialize(e(i)),deserialize:(i,a=0)=>{let[n,s]=t.deserialize(i,a);return r?[r(n,i,a),s]:[n,s]}}}var VD=t=>t.replace(/\u0000/g,"");var F0={description:"utf8",fixedSize:null,maxSize:null,serialize(t){return new TextEncoder().encode(t)},deserialize(t,e=0){let r=new TextDecoder().decode(t.slice(e));return[VD(r),t.length]}};var yl=class extends Error{name="InvalidPublicKeyError";constructor(e,r){r=r?`. ${r}`:"",super(`The provided public key is invalid: ${e}${r}`),this.invalidPublicKey=e}};var dd=32;function jn(t,e=!0){let r=(()=>typeof t=="string"?t:typeof t=="object"&&"publicKey"in t?t.publicKey:typeof t=="object"&&"toBase58"in t?t.toBase58():Array.isArray(t)?t[0]:$r.deserialize(t)[0])();return e&&Ov(r),r}var bl=t=>{try{return Ov(t),!0}catch{return!1}};function Ov(t){if(typeof t!="string")throw new yl(t,"Public keys must be strings.");ud(t)}var ud=t=>{if(t.length<32||t.length>44)throw new yl(t,"Public keys must be between 32 and 44 characters.");let e;try{e=$r.serialize(t)}catch{throw new yl(t,"Public keys must be base58 encoded.")}if(e.length!==dd)throw new yl(t,`Public keys must be ${dd} bytes.`);return e};var z3;(function(t){t.Little="le",t.Big="be"})(z3||(z3={}));var I3=class extends RangeError{name="NumberOutOfRangeError";constructor(e,r,i,a){super(`Serializer [${e}] expected number to be between ${r} and ${i}, got ${a}.`)}};function wt(t){let e,r=t.name;return t.size>1&&(e=!("endian"in t.options)||t.options.endian===z3.Little,r+=e?"(le)":"(be)"),{description:t.options.description??r,fixedSize:t.size,maxSize:t.size,serialize(i){t.range&&Nv(t.name,t.range[0],t.range[1],i);let a=new ArrayBuffer(t.size);return t.set(new DataView(a),i,e),new Uint8Array(a)},deserialize(i,a=0){let n=i.slice(a,a+t.size);Qee("i8",n,t.size);let s=Yee(n);return[t.get(s,e),a+t.size]}}}var Jee=t=>t.buffer.slice(t.byteOffset,t.byteLength+t.byteOffset),Yee=t=>new DataView(Jee(t)),Nv=(t,e,r,i)=>{if(ir)throw new I3(t,e,r,i)},Qee=(t,e,r)=>{if(e.length===0)throw new Gr(t);if(e.lengthwt({name:"f32",size:4,set:(e,r,i)=>e.setFloat32(0,Number(r),i),get:(e,r)=>e.getFloat32(0,r),options:t});var Wv=(t={})=>wt({name:"f64",size:8,set:(e,r,i)=>e.setFloat64(0,Number(r),i),get:(e,r)=>e.getFloat64(0,r),options:t});var Vv=(t={})=>wt({name:"i8",size:1,range:[-+"0x7f"-1,+"0x7f"],set:(e,r)=>e.setInt8(0,Number(r)),get:e=>e.getInt8(0),options:t});var Fv=(t={})=>wt({name:"i16",size:2,range:[-+"0x7fff"-1,+"0x7fff"],set:(e,r,i)=>e.setInt16(0,Number(r),i),get:(e,r)=>e.getInt16(0,r),options:t});var Kv=(t={})=>wt({name:"i32",size:4,range:[-+"0x7fffffff"-1,+"0x7fffffff"],set:(e,r,i)=>e.setInt32(0,Number(r),i),get:(e,r)=>e.getInt32(0,r),options:t});var Lv=(t={})=>wt({name:"i64",size:8,range:[-BigInt("0x7fffffffffffffff")-1n,BigInt("0x7fffffffffffffff")],set:(e,r,i)=>e.setBigInt64(0,BigInt(r),i),get:(e,r)=>e.getBigInt64(0,r),options:t});var Uv=(t={})=>wt({name:"i128",size:16,range:[-BigInt("0x7fffffffffffffffffffffffffffffff")-1n,BigInt("0x7fffffffffffffffffffffffffffffff")],set:(e,r,i)=>{let a=i?8:0,n=i?0:8,s=0xffffffffffffffffn;e.setBigInt64(a,BigInt(r)>>64n,i),e.setBigUint64(n,BigInt(r)&s,i)},get:(e,r)=>{let i=r?8:0,a=r?0:8,n=e.getBigInt64(i,r),s=e.getBigUint64(a,r);return(n<<64n)+s},options:t});var jt=(t={})=>wt({name:"u8",size:1,range:[0,+"0xff"],set:(e,r)=>e.setUint8(0,Number(r)),get:e=>e.getUint8(0),options:t});var jv=(t={})=>wt({name:"u16",size:2,range:[0,+"0xffff"],set:(e,r,i)=>e.setUint16(0,Number(r),i),get:(e,r)=>e.getUint16(0,r),options:t});var Ma=(t={})=>wt({name:"u32",size:4,range:[0,+"0xffffffff"],set:(e,r,i)=>e.setUint32(0,Number(r),i),get:(e,r)=>e.getUint32(0,r),options:t});var Hv=(t={})=>wt({name:"u64",size:8,range:[0,BigInt("0xffffffffffffffff")],set:(e,r,i)=>e.setBigUint64(0,BigInt(r),i),get:(e,r)=>e.getBigUint64(0,r),options:t});var $v=(t={})=>wt({name:"u128",size:16,range:[0,BigInt("0xffffffffffffffffffffffffffffffff")],set:(e,r,i)=>{let a=i?8:0,n=i?0:8,s=0xffffffffffffffffn;e.setBigUint64(a,BigInt(r)>>64n,i),e.setBigUint64(n,BigInt(r)&s,i)},get:(e,r)=>{let i=r?8:0,a=r?0:8,n=e.getBigUint64(i,r),s=e.getBigUint64(a,r);return(n<<64n)+s},options:t});var on=(t={})=>({description:t.description??"shortU16",fixedSize:null,maxSize:3,serialize:e=>{Nv("shortU16",0,65535,e);let r=[0];for(let i=0;;i+=1){let a=e>>i*7;if(a===0)break;let n=127&a;r[i]=n,i>0&&(r[i-1]|=128)}return new Uint8Array(r)},deserialize:(e,r=0)=>{let i=0,a=0;for(;++a;){let n=a-1,s=e[r+n],o=127&s;if(i|=o<e===null||r===null?null:e+r,0)}function pd(t,e,r,i){if(typeof t=="number")return[t,i];if(typeof t=="object")return t.deserialize(r,i);if(t==="remainder"){let a=ai(e);if(a===null)throw new Zr('Serializers of "remainder" size must have fixed-size items.');let n=r.slice(i).length;if(n%a!==0)throw new M3(n,a);return[n/a,i]}throw new D3(t)}function Ai(t){return typeof t=="object"?t.description:`${t}`}function Hn(t,e){if(typeof t!="number")return null;if(t===0)return 0;let r=ai(e);return r===null?null:r*t}function md(t,e){return typeof t=="object"?t.serialize(e):new Uint8Array}function Da(t,e={}){let r=e.size??Ma();if(r==="remainder"&&t.fixedSize===null)throw new Zr('Serializers of "remainder" size must have fixed-size items.');return{description:e.description??`array(${t.description}; ${Ai(r)})`,fixedSize:Hn(r,[t.fixedSize]),maxSize:Hn(r,[t.maxSize]),serialize:i=>{if(typeof r=="number"&&i.length!==r)throw new ln("array",r,i.length);return St([md(r,i.length),...i.map(a=>t.serialize(a))])},deserialize:(i,a=0)=>{if(typeof r=="object"&&i.slice(a).length===0)return[[],a];let[n,s]=pd(r,[t.fixedSize],i,a);a=s;let o=[];for(let l=0;le.serialize(r?1:0),deserialize:(r,i=0)=>{if(r.slice(i).length===0)throw new Gr("bool");let[a,n]=e.deserialize(r,i);return[a===1,n]}}}function vl(t={}){let e=t.size??"variable",r=t.description??`bytes(${Ai(e)})`,i={description:r,fixedSize:null,maxSize:null,serialize:a=>new Uint8Array(a),deserialize:(a,n=0)=>{let s=a.slice(n);return[s,n+s.length]}};return e==="variable"?i:typeof e=="number"?V0(i,e,r):{description:r,fixedSize:null,maxSize:null,serialize:a=>{let n=i.serialize(a),s=e.serialize(n.length);return St([s,n])},deserialize:(a,n=0)=>{if(a.slice(n).length===0)throw new Gr("bytes");let[s,o]=e.deserialize(a,n),l=Number(s);n=o;let d=a.slice(n,n+l);if(d.lengthe===null||r===null?null:Math.max(e,r),0)}function Zv(t,e={}){let r=e.size??jt(),i=t.map(([o,l])=>`${String(o)}${l?`: ${l.description}`:""}`).join(", "),n=t.every((o,l,d)=>o[1].fixedSize===d[0][1].fixedSize)?t[0][1].fixedSize:null,s=FD(t.map(([,o])=>o.maxSize));return{description:e.description??`dataEnum(${i}; ${r.description})`,fixedSize:t.length===0?r.fixedSize:ai([r.fixedSize,n]),maxSize:t.length===0?r.maxSize:ai([r.maxSize,s]),serialize:o=>{let l=t.findIndex(([w])=>o.__kind===w);if(l<0)throw new R3(o.__kind,t.map(([w])=>w));let d=r.serialize(l),c=t[l][1].serialize(o);return St([d,c])},deserialize:(o,l=0)=>{if(o.slice(l).length===0)throw new Gr("dataEnum");let[d,u]=r.deserialize(o,l);l=u;let c=t[Number(d)]??null;if(!c)throw new cd(d,0,t.length-1);let[w,k]=c[1].deserialize(o,l);return l=k,[{__kind:c[0],...w??{}},l]}}}function Jv(t,e,r={}){let i=r.size??Ma();if(i==="remainder"&&(t.fixedSize===null||e.fixedSize===null))throw new Zr('Serializers of "remainder" size must have fixed-size items.');return{description:r.description??`map(${t.description}, ${e.description}; ${Ai(i)})`,fixedSize:Hn(i,[t.fixedSize,e.fixedSize]),maxSize:Hn(i,[t.maxSize,e.maxSize]),serialize:a=>{if(typeof i=="number"&&a.size!==i)throw new ln("map",i,a.size);let n=Array.from(a,([s,o])=>St([t.serialize(s),e.serialize(o)]));return St([md(i,a.size),...n])},deserialize:(a,n=0)=>{let s=new Map;if(typeof i=="object"&&a.slice(n).length===0)return[s,n];let[o,l]=pd(i,[t.fixedSize,e.fixedSize],a,n);n=l;for(let d=0;d{let o=r.serialize(+(s!==null));if(i){let d=t.fixedSize,u=s!==null?t.serialize(s).slice(0,d):new Uint8Array(d).fill(0);return St([o,u])}let l=s!==null?t.serialize(s):new Uint8Array;return St([o,l])},deserialize:(s,o=0)=>{if(s.slice(o).length===0)return[null,o];let l=o+(r.fixedSize??0)+(t.fixedSize??0),[d,u]=r.deserialize(s,o);if(o=u,d===0)return[null,i?l:o];let[c,w]=t.deserialize(s,o);return o=w,[c,i?l:o]}}}function Qv(t,e={}){let r=e.prefix??jt(),i=e.fixed??!1,a=`; ${Ai(r)}`,n=t.fixedSize===0?r.fixedSize:null;if(i){if(t.fixedSize===null||r.fixedSize===null)throw new Zr("Fixed options can only be used with fixed-size serializers");a+="; fixed",n=r.fixedSize+t.fixedSize}return{description:e.description??`option(${t.description+a})`,fixedSize:n,maxSize:ai([r.maxSize,t.maxSize]),serialize:s=>{let o=Rv(s)?s:Bv(s),l=r.serialize(Number(ld(o)));if(i){let u=t.fixedSize,c=ld(o)?t.serialize(o.value).slice(0,u):new Uint8Array(u).fill(0);return St([l,c])}let d=ld(o)?t.serialize(o.value):new Uint8Array;return St([l,d])},deserialize:(s,o=0)=>{if(s.slice(o).length===0)return[od(),o];let l=o+(r.fixedSize??0)+(t.fixedSize??0),[d,u]=r.deserialize(s,o);if(o=u,d===0)return[od(),i?l:o];let[c,w]=t.deserialize(s,o);return o=w,[W0(c),i?l:o]}}}function fd(t={}){return{description:t.description??"publicKey",fixedSize:32,maxSize:32,serialize:e=>ud(jn(e)),deserialize:(e,r=0)=>{let i=e.slice(r,r+32);if(i.length===0)throw new Gr("publicKey");if(i.lengthtypeof c=="number"),s=a.filter(c=>typeof c=="string").join(", "),o=0,l=n?a.length/2-1:a.length-1,d=n?[...i]:[...new Set([...i,...a])];function u(c){let w=typeof c=="number"&&(cl),k=typeof c=="string"&&!d.includes(c);if(w||k)throw new B3(c,d,o,l)}return{description:e.description??`enum(${s}; ${r.description})`,fixedSize:r.fixedSize,maxSize:r.maxSize,serialize:c=>{if(u(c),typeof c=="number")return r.serialize(c);let w=a.indexOf(c);return w>=0?r.serialize(w):r.serialize(i.indexOf(c))},deserialize:(c,w=0)=>{if(c.slice(w).length===0)throw new Gr("enum");let[k,z]=r.deserialize(c,w),_=Number(k);if(w=z,_l)throw new cd(_,o,l);return[n?_:a[_],w]}}}function eS(t,e={}){let r=e.size??Ma();if(r==="remainder"&&t.fixedSize===null)throw new Zr('Serializers of "remainder" size must have fixed-size items.');return{description:e.description??`set(${t.description}; ${Ai(r)})`,fixedSize:Hn(r,[t.fixedSize]),maxSize:Hn(r,[t.maxSize]),serialize:i=>{if(typeof r=="number"&&i.size!==r)throw new ln("set",r,i.size);let a=Array.from(i,n=>t.serialize(n));return St([md(r,i.size),...a])},deserialize:(i,a=0)=>{let n=new Set;if(typeof r=="object"&&i.slice(a).length===0)return[n,a];let[s,o]=pd(r,[t.fixedSize],i,a);a=o;for(let l=0;l{let n=r.serialize(a),s=e.serialize(n.length);return St([s,n])},deserialize:(a,n=0)=>{if(a.slice(n).length===0)throw new Gr("string");let[s,o]=e.deserialize(a,n),l=Number(s);n=o;let d=a.slice(n,n+l);if(d.length`${String(i)}: ${a.description}`).join(", ");return{description:e.description??`struct(${r})`,fixedSize:ai(t.map(([,i])=>i.fixedSize)),maxSize:ai(t.map(([,i])=>i.maxSize)),serialize:i=>{let a=t.map(([n,s])=>s.serialize(i[n]));return St(a)},deserialize:(i,a=0)=>{let n={};return t.forEach(([s,o])=>{let[l,d]=o.deserialize(i,a);a=d,n[s]=l}),[n,a]}}}function tS(t,e={}){let r=t.map(i=>i.description).join(", ");return{description:e.description??`tuple(${r})`,fixedSize:ai(t.map(i=>i.fixedSize)),maxSize:ai(t.map(i=>i.maxSize)),serialize:i=>{if(i.length!==t.length)throw new ln("tuple",t.length,i.length);return St(t.map((a,n)=>a.serialize(i[n])))},deserialize:(i,a=0)=>{let n=[];return t.forEach(s=>{let[o,l]=s.deserialize(i,a);n.push(o),a=l}),[n,a]}}}function rS(t={}){return{description:t.description??"unit",fixedSize:0,maxSize:0,serialize:()=>new Uint8Array,deserialize:(e,r=0)=>[void 0,r]}}var hd=class extends Error{name="UmiError";constructor(e,r,i,a){super(e),this.source=r,this.sourceDetails=i,this.cause=a,this.message=`${this.message} +`)}};Xx.ProgramError=Qx});var K=v(J=>{"use strict";Object.defineProperty(J,"__esModule",{value:!0});var wC=VS(),xC=sg(),oi=YB(),eA=QB(),Ze=nC(),Ioe=ug(),Moe=sC(),Doe=Wx(),kg=dC(),Roe=Ax(),Boe=kx(),El=uC(),AC=cC(),Coe=Px(),_C=pC(),tA=Ux(),Ooe=fC(),Noe=zx(),qoe=Mx(),Woe=Rx(),kd=mm(),Ed=hC(),kC=vg(),EC=Gx(),PC=yC(),Voe=Cx(),Foe=bC(),Koe=Nx(),Loe=ux(),Uoe=yx(),joe=mn(),Hoe=vC(),$oe=SC(),Goe=pn(),Zoe=dg(),Joe=ox(),Yoe=fx(),rA=pg(),Qoe=Fx();J.Endian=oi.Endian;J.base10=oi.base10;J.base16=oi.base16;J.base58=oi.base58;J.base64=oi.base64;J.baseX=oi.baseX;J.bitArray=oi.bitArray;J.fixBytes=oi.fixBytes;J.fixSerializer=oi.fixSerializer;J.mapSerializer=oi.mapSerializer;J.mergeBytes=oi.mergeBytes;J.padBytes=oi.padBytes;J.padNullCharacters=oi.padNullCharacters;J.removeNullCharacters=oi.removeNullCharacters;J.reverseSerializer=oi.reverseSerializer;J.utf8=oi.utf8;J.ACCOUNT_HEADER_SIZE=eA.ACCOUNT_HEADER_SIZE;J.assertAccountExists=eA.assertAccountExists;J.deserializeAccount=eA.deserializeAccount;J.absoluteAmount=Ze.absoluteAmount;J.addAmounts=Ze.addAmounts;J.amountToNumber=Ze.amountToNumber;J.amountToString=Ze.amountToString;J.assertAmount=Ze.assertAmount;J.assertSameAmounts=Ze.assertSameAmounts;J.assertSolAmount=Ze.assertSolAmount;J.compareAmounts=Ze.compareAmounts;J.createAmount=Ze.createAmount;J.createAmountFromDecimals=Ze.createAmountFromDecimals;J.displayAmount=Ze.displayAmount;J.divideAmount=Ze.divideAmount;J.isAmount=Ze.isAmount;J.isEqualToAmount=Ze.isEqualToAmount;J.isGreaterThanAmount=Ze.isGreaterThanAmount;J.isGreaterThanOrEqualToAmount=Ze.isGreaterThanOrEqualToAmount;J.isLessThanAmount=Ze.isLessThanAmount;J.isLessThanOrEqualToAmount=Ze.isLessThanOrEqualToAmount;J.isNegativeAmount=Ze.isNegativeAmount;J.isPositiveAmount=Ze.isPositiveAmount;J.isSolAmount=Ze.isSolAmount;J.isZeroAmount=Ze.isZeroAmount;J.lamports=Ze.lamports;J.mapAmountSerializer=Ze.mapAmountSerializer;J.multiplyAmount=Ze.multiplyAmount;J.percentAmount=Ze.percentAmount;J.sameAmounts=Ze.sameAmounts;J.sol=Ze.sol;J.subtractAmounts=Ze.subtractAmounts;J.tokenAmount=Ze.tokenAmount;J.usd=Ze.usd;J.createBigInt=Ioe.createBigInt;J.resolveClusterFromEndpoint=Moe.resolveClusterFromEndpoint;J.createNullContext=Doe.createNullContext;J.dateTime=kg.dateTime;J.formatDateTime=kg.formatDateTime;J.mapDateTimeSerializer=kg.mapDateTimeSerializer;J.now=kg.now;J.createNullDownloader=Roe.createNullDownloader;J.createNullEddsa=Boe.createNullEddsa;J.createBrowserFileFromGenericFile=El.createBrowserFileFromGenericFile;J.createGenericFile=El.createGenericFile;J.createGenericFileFromBrowserFile=El.createGenericFileFromBrowserFile;J.createGenericFileFromJson=El.createGenericFileFromJson;J.getBytesFromGenericFiles=El.getBytesFromGenericFiles;J.isGenericFile=El.isGenericFile;J.parseJsonFromGenericFile=El.parseJsonFromGenericFile;J.GpaBuilder=AC.GpaBuilder;J.gpaBuilder=AC.gpaBuilder;J.createNullHttp=Coe.createNullHttp;J.HttpRequestBuilder=_C.HttpRequestBuilder;J.request=_C.request;J.createSignerFromKeypair=tA.createSignerFromKeypair;J.generateSigner=tA.generateSigner;J.isKeypairSigner=tA.isKeypairSigner;J.isErrorWithLogs=Ooe.isErrorWithLogs;J.createNullProgramRepository=Noe.createNullProgramRepository;J.createNullRpc=qoe.createNullRpc;J.createNullSerializer=Woe.createNullSerializer;J.createNoopSigner=kd.createNoopSigner;J.createNullSigner=kd.createNullSigner;J.isSigner=kd.isSigner;J.signAllTransactions=kd.signAllTransactions;J.signTransaction=kd.signTransaction;J.uniqueSigners=kd.uniqueSigners;J.generatedSignerIdentity=Ed.generatedSignerIdentity;J.generatedSignerPayer=Ed.generatedSignerPayer;J.keypairIdentity=Ed.keypairIdentity;J.keypairPayer=Ed.keypairPayer;J.signerIdentity=Ed.signerIdentity;J.signerPayer=Ed.signerPayer;J.TRANSACTION_SIZE_LIMIT=kC.TRANSACTION_SIZE_LIMIT;J.addTransactionSignature=kC.addTransactionSignature;J.TransactionBuilder=EC.TransactionBuilder;J.transactionBuilder=EC.transactionBuilder;J.TransactionBuilderGroup=PC.TransactionBuilderGroup;J.transactionBuilderGroup=PC.transactionBuilderGroup;J.createNullTransactionFactory=Voe.createNullTransactionFactory;J.createUmi=Foe.createUmi;J.createNullUploader=Koe.createNullUploader;J.AccountNotFoundError=Loe.AccountNotFoundError;J.AmountMismatchError=Uoe.AmountMismatchError;J.InterfaceImplementationMissingError=joe.InterfaceImplementationMissingError;J.InvalidBaseStringError=Hoe.InvalidBaseStringError;J.ProgramError=$oe.ProgramError;J.SdkError=Goe.SdkError;J.UmiError=Zoe.UmiError;J.UnexpectedAccountError=Joe.UnexpectedAccountError;J.UnexpectedAmountError=Yoe.UnexpectedAmountError;J.chunk=rA.chunk;J.uniqueBy=rA.uniqueBy;J.zipMap=rA.zipMap;J.generateRandomString=Qoe.generateRandomString;Object.keys(wC).forEach(function(t){t!=="default"&&!J.hasOwnProperty(t)&&Object.defineProperty(J,t,{enumerable:!0,get:function(){return wC[t]}})});Object.keys(xC).forEach(function(t){t!=="default"&&!J.hasOwnProperty(t)&&Object.defineProperty(J,t,{enumerable:!0,get:function(){return xC[t]}})})});var V=v(Eg=>{"use strict";Object.defineProperty(Eg,"__esModule",{value:!0});var TC=kl();Object.keys(TC).forEach(function(t){t!=="default"&&!Eg.hasOwnProperty(t)&&Object.defineProperty(Eg,t,{enumerable:!0,get:function(){return TC[t]}})})});var IC=v(Pl=>{"use strict";Object.defineProperty(Pl,"__esModule",{value:!0});Pl.getAuthorityTypeSerializer=Pl.AuthorityType=void 0;var Xoe=V(),zC;(function(t){t[t.None=0]="None",t[t.Metadata=1]="Metadata",t[t.Holder=2]="Holder",t[t.MetadataDelegate=3]="MetadataDelegate",t[t.TokenDelegate=4]="TokenDelegate"})(zC=Pl.AuthorityType||(Pl.AuthorityType={}));function ele(){return(0,Xoe.scalarEnum)(zC,{description:"AuthorityType"})}n(ele,"getAuthorityTypeSerializer");Pl.getAuthorityTypeSerializer=ele});var MC=v(Pg=>{"use strict";Object.defineProperty(Pg,"__esModule",{value:!0});Pg.getAuthorizationDataSerializer=void 0;var tle=V(),rle=ae();function ile(){return(0,tle.struct)([["payload",(0,rle.getPayloadSerializer)()]],{description:"AuthorizationData"})}n(ile,"getAuthorizationDataSerializer");Pg.getAuthorizationDataSerializer=ile});var DC=v(io=>{"use strict";Object.defineProperty(io,"__esModule",{value:!0});io.isBurnArgs=io.burnArgs=io.getBurnArgsSerializer=void 0;var Tg=V();function ale(){return(0,Tg.dataEnum)([["V1",(0,Tg.mapSerializer)((0,Tg.struct)([["amount",(0,Tg.u64)()]]),t=>({...t,amount:t.amount??1}))]],{description:"BurnArgs"})}n(ale,"getBurnArgsSerializer");io.getBurnArgsSerializer=ale;function nle(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}n(nle,"burnArgs");io.burnArgs=nle;function sle(t,e){return e.__kind===t}n(sle,"isBurnArgs");io.isBurnArgs=sle});var RC=v(zg=>{"use strict";Object.defineProperty(zg,"__esModule",{value:!0});zg.getCollectionSerializer=void 0;var iA=V();function ole(){return(0,iA.struct)([["verified",(0,iA.bool)()],["key",(0,iA.publicKey)()]],{description:"Collection"})}n(ole,"getCollectionSerializer");zg.getCollectionSerializer=ole});var BC=v(ao=>{"use strict";Object.defineProperty(ao,"__esModule",{value:!0});ao.isCollectionDetails=ao.collectionDetails=ao.getCollectionDetailsSerializer=void 0;var aA=V();function lle(){return(0,aA.dataEnum)([["V1",(0,aA.struct)([["size",(0,aA.u64)()]])]],{description:"CollectionDetails"})}n(lle,"getCollectionDetailsSerializer");ao.getCollectionDetailsSerializer=lle;function dle(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}n(dle,"collectionDetails");ao.collectionDetails=dle;function ule(t,e){return e.__kind===t}n(ule,"isCollectionDetails");ao.isCollectionDetails=ule});var CC=v(no=>{"use strict";Object.defineProperty(no,"__esModule",{value:!0});no.isCollectionDetailsToggle=no.collectionDetailsToggle=no.getCollectionDetailsToggleSerializer=void 0;var gm=V(),cle=ae();function ple(){return(0,gm.dataEnum)([["None",(0,gm.unit)()],["Clear",(0,gm.unit)()],["Set",(0,gm.struct)([["fields",(0,gm.tuple)([(0,cle.getCollectionDetailsSerializer)()])]])]],{description:"CollectionDetailsToggle"})}n(ple,"getCollectionDetailsToggleSerializer");no.getCollectionDetailsToggleSerializer=ple;function mle(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}n(mle,"collectionDetailsToggle");no.collectionDetailsToggle=mle;function fle(t,e){return e.__kind===t}n(fle,"isCollectionDetailsToggle");no.isCollectionDetailsToggle=fle});var OC=v(so=>{"use strict";Object.defineProperty(so,"__esModule",{value:!0});so.isCollectionToggle=so.collectionToggle=so.getCollectionToggleSerializer=void 0;var ym=V(),hle=ae();function gle(){return(0,ym.dataEnum)([["None",(0,ym.unit)()],["Clear",(0,ym.unit)()],["Set",(0,ym.struct)([["fields",(0,ym.tuple)([(0,hle.getCollectionSerializer)()])]])]],{description:"CollectionToggle"})}n(gle,"getCollectionToggleSerializer");so.getCollectionToggleSerializer=gle;function yle(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}n(yle,"collectionToggle");so.collectionToggle=yle;function ble(t,e){return e.__kind===t}n(ble,"isCollectionToggle");so.isCollectionToggle=ble});var NC=v(oo=>{"use strict";Object.defineProperty(oo,"__esModule",{value:!0});oo.isCreateArgs=oo.createArgs=oo.getCreateArgsSerializer=void 0;var Tl=K(),Tr=V(),Pd=ae();function vle(){return(0,Tr.dataEnum)([["V1",(0,Tr.mapSerializer)((0,Tr.struct)([["name",(0,Tr.string)()],["symbol",(0,Tr.string)()],["uri",(0,Tr.string)()],["sellerFeeBasisPoints",(0,Tl.mapAmountSerializer)((0,Tr.u16)(),"%",2)],["creators",(0,Tr.option)((0,Tr.array)((0,Pd.getCreatorSerializer)()))],["primarySaleHappened",(0,Tr.bool)()],["isMutable",(0,Tr.bool)()],["tokenStandard",(0,Pd.getTokenStandardSerializer)()],["collection",(0,Tr.option)((0,Pd.getCollectionSerializer)())],["uses",(0,Tr.option)((0,Pd.getUsesSerializer)())],["collectionDetails",(0,Tr.option)((0,Pd.getCollectionDetailsSerializer)())],["ruleSet",(0,Tr.option)((0,Tr.publicKey)())],["decimals",(0,Tr.option)((0,Tr.u8)())],["printSupply",(0,Tr.option)((0,Pd.getPrintSupplySerializer)())]]),t=>({...t,symbol:t.symbol??"",primarySaleHappened:t.primarySaleHappened??!1,isMutable:t.isMutable??!0,collection:t.collection??(0,Tl.none)(),uses:t.uses??(0,Tl.none)(),collectionDetails:t.collectionDetails??(0,Tl.none)(),ruleSet:t.ruleSet??(0,Tl.none)(),decimals:t.decimals??(0,Tl.none)(),printSupply:t.printSupply??(0,Tl.none)()}))]],{description:"CreateArgs"})}n(vle,"getCreateArgsSerializer");oo.getCreateArgsSerializer=vle;function Sle(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}n(Sle,"createArgs");oo.createArgs=Sle;function wle(t,e){return e.__kind===t}n(wle,"isCreateArgs");oo.isCreateArgs=wle});var qC=v(Mg=>{"use strict";Object.defineProperty(Mg,"__esModule",{value:!0});Mg.getCreatorSerializer=void 0;var Ig=V();function xle(){return(0,Ig.struct)([["address",(0,Ig.publicKey)()],["verified",(0,Ig.bool)()],["share",(0,Ig.u8)()]],{description:"Creator"})}n(xle,"getCreatorSerializer");Mg.getCreatorSerializer=xle});var WC=v(Dg=>{"use strict";Object.defineProperty(Dg,"__esModule",{value:!0});Dg.getDataSerializer=void 0;var zl=V(),Ale=ae();function _le(){return(0,zl.struct)([["name",(0,zl.string)()],["symbol",(0,zl.string)()],["uri",(0,zl.string)()],["sellerFeeBasisPoints",(0,zl.u16)()],["creators",(0,zl.option)((0,zl.array)((0,Ale.getCreatorSerializer)()))]],{description:"Data"})}n(_le,"getDataSerializer");Dg.getDataSerializer=_le});var VC=v(Rg=>{"use strict";Object.defineProperty(Rg,"__esModule",{value:!0});Rg.getDataV2Serializer=void 0;var es=V(),nA=ae();function kle(){return(0,es.struct)([["name",(0,es.string)()],["symbol",(0,es.string)()],["uri",(0,es.string)()],["sellerFeeBasisPoints",(0,es.u16)()],["creators",(0,es.option)((0,es.array)((0,nA.getCreatorSerializer)()))],["collection",(0,es.option)((0,nA.getCollectionSerializer)())],["uses",(0,es.option)((0,nA.getUsesSerializer)())]],{description:"DataV2"})}n(kle,"getDataV2Serializer");Rg.getDataV2Serializer=kle});var FC=v(lo=>{"use strict";Object.defineProperty(lo,"__esModule",{value:!0});lo.isDelegateArgs=lo.delegateArgs=lo.getDelegateArgsSerializer=void 0;var na=K(),xe=V(),sa=ae();function Ele(){return(0,xe.dataEnum)([["CollectionV1",(0,xe.mapSerializer)((0,xe.struct)([["authorizationData",(0,xe.option)((0,sa.getAuthorizationDataSerializer)())]]),t=>({...t,authorizationData:t.authorizationData??(0,na.none)()}))],["SaleV1",(0,xe.mapSerializer)((0,xe.struct)([["amount",(0,xe.u64)()],["authorizationData",(0,xe.option)((0,sa.getAuthorizationDataSerializer)())]]),t=>({...t,amount:t.amount??1,authorizationData:t.authorizationData??(0,na.none)()}))],["TransferV1",(0,xe.mapSerializer)((0,xe.struct)([["amount",(0,xe.u64)()],["authorizationData",(0,xe.option)((0,sa.getAuthorizationDataSerializer)())]]),t=>({...t,amount:t.amount??1,authorizationData:t.authorizationData??(0,na.none)()}))],["DataV1",(0,xe.mapSerializer)((0,xe.struct)([["authorizationData",(0,xe.option)((0,sa.getAuthorizationDataSerializer)())]]),t=>({...t,authorizationData:t.authorizationData??(0,na.none)()}))],["UtilityV1",(0,xe.mapSerializer)((0,xe.struct)([["amount",(0,xe.u64)()],["authorizationData",(0,xe.option)((0,sa.getAuthorizationDataSerializer)())]]),t=>({...t,amount:t.amount??1,authorizationData:t.authorizationData??(0,na.none)()}))],["StakingV1",(0,xe.mapSerializer)((0,xe.struct)([["amount",(0,xe.u64)()],["authorizationData",(0,xe.option)((0,sa.getAuthorizationDataSerializer)())]]),t=>({...t,amount:t.amount??1,authorizationData:t.authorizationData??(0,na.none)()}))],["StandardV1",(0,xe.mapSerializer)((0,xe.struct)([["amount",(0,xe.u64)()]]),t=>({...t,amount:t.amount??1}))],["LockedTransferV1",(0,xe.mapSerializer)((0,xe.struct)([["amount",(0,xe.u64)()],["lockedAddress",(0,xe.publicKey)()],["authorizationData",(0,xe.option)((0,sa.getAuthorizationDataSerializer)())]]),t=>({...t,amount:t.amount??1,authorizationData:t.authorizationData??(0,na.none)()}))],["ProgrammableConfigV1",(0,xe.mapSerializer)((0,xe.struct)([["authorizationData",(0,xe.option)((0,sa.getAuthorizationDataSerializer)())]]),t=>({...t,authorizationData:t.authorizationData??(0,na.none)()}))],["AuthorityItemV1",(0,xe.mapSerializer)((0,xe.struct)([["authorizationData",(0,xe.option)((0,sa.getAuthorizationDataSerializer)())]]),t=>({...t,authorizationData:t.authorizationData??(0,na.none)()}))],["DataItemV1",(0,xe.mapSerializer)((0,xe.struct)([["authorizationData",(0,xe.option)((0,sa.getAuthorizationDataSerializer)())]]),t=>({...t,authorizationData:t.authorizationData??(0,na.none)()}))],["CollectionItemV1",(0,xe.mapSerializer)((0,xe.struct)([["authorizationData",(0,xe.option)((0,sa.getAuthorizationDataSerializer)())]]),t=>({...t,authorizationData:t.authorizationData??(0,na.none)()}))],["ProgrammableConfigItemV1",(0,xe.mapSerializer)((0,xe.struct)([["authorizationData",(0,xe.option)((0,sa.getAuthorizationDataSerializer)())]]),t=>({...t,authorizationData:t.authorizationData??(0,na.none)()}))]],{description:"DelegateArgs"})}n(Ele,"getDelegateArgsSerializer");lo.getDelegateArgsSerializer=Ele;function Ple(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}n(Ple,"delegateArgs");lo.delegateArgs=Ple;function Tle(t,e){return e.__kind===t}n(Tle,"isDelegateArgs");lo.isDelegateArgs=Tle});var KC=v(uo=>{"use strict";Object.defineProperty(uo,"__esModule",{value:!0});uo.isEscrowAuthority=uo.escrowAuthority=uo.getEscrowAuthoritySerializer=void 0;var bm=V();function zle(){return(0,bm.dataEnum)([["TokenOwner",(0,bm.unit)()],["Creator",(0,bm.struct)([["fields",(0,bm.tuple)([(0,bm.publicKey)()])]])]],{description:"EscrowAuthority"})}n(zle,"getEscrowAuthoritySerializer");uo.getEscrowAuthoritySerializer=zle;function Ile(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}n(Ile,"escrowAuthority");uo.escrowAuthority=Ile;function Mle(t,e){return e.__kind===t}n(Mle,"isEscrowAuthority");uo.isEscrowAuthority=Mle});var UC=v(Il=>{"use strict";Object.defineProperty(Il,"__esModule",{value:!0});Il.getKeySerializer=Il.Key=void 0;var Dle=V(),LC;(function(t){t[t.Uninitialized=0]="Uninitialized",t[t.EditionV1=1]="EditionV1",t[t.MasterEditionV1=2]="MasterEditionV1",t[t.ReservationListV1=3]="ReservationListV1",t[t.MetadataV1=4]="MetadataV1",t[t.ReservationListV2=5]="ReservationListV2",t[t.MasterEditionV2=6]="MasterEditionV2",t[t.EditionMarker=7]="EditionMarker",t[t.UseAuthorityRecord=8]="UseAuthorityRecord",t[t.CollectionAuthorityRecord=9]="CollectionAuthorityRecord",t[t.TokenOwnedEscrow=10]="TokenOwnedEscrow",t[t.TokenRecord=11]="TokenRecord",t[t.MetadataDelegate=12]="MetadataDelegate",t[t.EditionMarkerV2=13]="EditionMarkerV2"})(LC=Il.Key||(Il.Key={}));function Rle(){return(0,Dle.scalarEnum)(LC,{description:"Key"})}n(Rle,"getKeySerializer");Il.getKeySerializer=Rle});var jC=v(Cg=>{"use strict";Object.defineProperty(Cg,"__esModule",{value:!0});Cg.getLeafInfoSerializer=void 0;var Bg=V();function Ble(){return(0,Bg.struct)([["leaf",(0,Bg.bytes)({size:32})],["proof",(0,Bg.array)((0,Bg.bytes)({size:32}))]],{description:"LeafInfo"})}n(Ble,"getLeafInfoSerializer");Cg.getLeafInfoSerializer=Ble});var HC=v(co=>{"use strict";Object.defineProperty(co,"__esModule",{value:!0});co.isLockArgs=co.lockArgs=co.getLockArgsSerializer=void 0;var Cle=K(),Og=V(),Ole=ae();function Nle(){return(0,Og.dataEnum)([["V1",(0,Og.mapSerializer)((0,Og.struct)([["authorizationData",(0,Og.option)((0,Ole.getAuthorizationDataSerializer)())]]),t=>({...t,authorizationData:t.authorizationData??(0,Cle.none)()}))]],{description:"LockArgs"})}n(Nle,"getLockArgsSerializer");co.getLockArgsSerializer=Nle;function qle(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}n(qle,"lockArgs");co.lockArgs=qle;function Wle(t,e){return e.__kind===t}n(Wle,"isLockArgs");co.isLockArgs=Wle});var sA=v(Ml=>{"use strict";Object.defineProperty(Ml,"__esModule",{value:!0});Ml.getMetadataDelegateRoleSerializer=Ml.MetadataDelegateRole=void 0;var Vle=V(),$C;(function(t){t[t.AuthorityItem=0]="AuthorityItem",t[t.Collection=1]="Collection",t[t.Use=2]="Use",t[t.Data=3]="Data",t[t.ProgrammableConfig=4]="ProgrammableConfig",t[t.DataItem=5]="DataItem",t[t.CollectionItem=6]="CollectionItem",t[t.ProgrammableConfigItem=7]="ProgrammableConfigItem"})($C=Ml.MetadataDelegateRole||(Ml.MetadataDelegateRole={}));function Fle(){return(0,Vle.scalarEnum)($C,{description:"MetadataDelegateRole"})}n(Fle,"getMetadataDelegateRoleSerializer");Ml.getMetadataDelegateRoleSerializer=Fle});var ZC=v(Dl=>{"use strict";Object.defineProperty(Dl,"__esModule",{value:!0});Dl.getMigrationTypeSerializer=Dl.MigrationType=void 0;var Kle=V(),GC;(function(t){t[t.CollectionV1=0]="CollectionV1",t[t.ProgrammableV1=1]="ProgrammableV1"})(GC=Dl.MigrationType||(Dl.MigrationType={}));function Lle(){return(0,Kle.scalarEnum)(GC,{description:"MigrationType"})}n(Lle,"getMigrationTypeSerializer");Dl.getMigrationTypeSerializer=Lle});var JC=v(po=>{"use strict";Object.defineProperty(po,"__esModule",{value:!0});po.isMintArgs=po.mintArgs=po.getMintArgsSerializer=void 0;var Ule=K(),vm=V(),jle=ae();function Hle(){return(0,vm.dataEnum)([["V1",(0,vm.mapSerializer)((0,vm.struct)([["amount",(0,vm.u64)()],["authorizationData",(0,vm.option)((0,jle.getAuthorizationDataSerializer)())]]),t=>({...t,amount:t.amount??1,authorizationData:t.authorizationData??(0,Ule.none)()}))]],{description:"MintArgs"})}n(Hle,"getMintArgsSerializer");po.getMintArgsSerializer=Hle;function $le(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}n($le,"mintArgs");po.mintArgs=$le;function Gle(t,e){return e.__kind===t}n(Gle,"isMintArgs");po.isMintArgs=Gle});var QC=v(Ng=>{"use strict";Object.defineProperty(Ng,"__esModule",{value:!0});Ng.getMintNewEditionFromMasterEditionViaTokenArgsSerializer=void 0;var YC=V();function Zle(){return(0,YC.struct)([["edition",(0,YC.u64)()]],{description:"MintNewEditionFromMasterEditionViaTokenArgs"})}n(Zle,"getMintNewEditionFromMasterEditionViaTokenArgsSerializer");Ng.getMintNewEditionFromMasterEditionViaTokenArgsSerializer=Zle});var XC=v(qg=>{"use strict";Object.defineProperty(qg,"__esModule",{value:!0});qg.getPayloadSerializer=void 0;var oA=V(),Jle=ae();function Yle(){return(0,oA.struct)([["map",(0,oA.map)((0,oA.string)(),(0,Jle.getPayloadTypeSerializer)())]],{description:"Payload"})}n(Yle,"getPayloadSerializer");qg.getPayloadSerializer=Yle});var tO=v(Rl=>{"use strict";Object.defineProperty(Rl,"__esModule",{value:!0});Rl.getPayloadKeySerializer=Rl.PayloadKey=void 0;var Qle=V(),eO;(function(t){t[t.Amount=0]="Amount",t[t.Authority=1]="Authority",t[t.AuthoritySeeds=2]="AuthoritySeeds",t[t.Delegate=3]="Delegate",t[t.DelegateSeeds=4]="DelegateSeeds",t[t.Destination=5]="Destination",t[t.DestinationSeeds=6]="DestinationSeeds",t[t.Holder=7]="Holder",t[t.Source=8]="Source",t[t.SourceSeeds=9]="SourceSeeds"})(eO=Rl.PayloadKey||(Rl.PayloadKey={}));function Xle(){return(0,Qle.scalarEnum)(eO,{description:"PayloadKey"})}n(Xle,"getPayloadKeySerializer");Rl.getPayloadKeySerializer=Xle});var iO=v(mo=>{"use strict";Object.defineProperty(mo,"__esModule",{value:!0});mo.isPayloadType=mo.payloadType=mo.getPayloadTypeSerializer=void 0;var qa=V(),rO=ae();function e1e(){return(0,qa.dataEnum)([["Pubkey",(0,qa.struct)([["fields",(0,qa.tuple)([(0,qa.publicKey)()])]])],["Seeds",(0,qa.struct)([["fields",(0,qa.tuple)([(0,rO.getSeedsVecSerializer)()])]])],["MerkleProof",(0,qa.struct)([["fields",(0,qa.tuple)([(0,rO.getLeafInfoSerializer)()])]])],["Number",(0,qa.struct)([["fields",(0,qa.tuple)([(0,qa.u64)()])]])]],{description:"PayloadType"})}n(e1e,"getPayloadTypeSerializer");mo.getPayloadTypeSerializer=e1e;function t1e(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}n(t1e,"payloadType");mo.payloadType=t1e;function r1e(t,e){return e.__kind===t}n(r1e,"isPayloadType");mo.isPayloadType=r1e});var aO=v(fo=>{"use strict";Object.defineProperty(fo,"__esModule",{value:!0});fo.isPrintArgs=fo.printArgs=fo.getPrintArgsSerializer=void 0;var lA=V();function i1e(){return(0,lA.dataEnum)([["V1",(0,lA.struct)([["edition",(0,lA.u64)()]])]],{description:"PrintArgs"})}n(i1e,"getPrintArgsSerializer");fo.getPrintArgsSerializer=i1e;function a1e(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}n(a1e,"printArgs");fo.printArgs=a1e;function n1e(t,e){return e.__kind===t}n(n1e,"isPrintArgs");fo.isPrintArgs=n1e});var nO=v(ho=>{"use strict";Object.defineProperty(ho,"__esModule",{value:!0});ho.isPrintSupply=ho.printSupply=ho.getPrintSupplySerializer=void 0;var Td=V();function s1e(){return(0,Td.dataEnum)([["Zero",(0,Td.unit)()],["Limited",(0,Td.struct)([["fields",(0,Td.tuple)([(0,Td.u64)()])]])],["Unlimited",(0,Td.unit)()]],{description:"PrintSupply"})}n(s1e,"getPrintSupplySerializer");ho.getPrintSupplySerializer=s1e;function o1e(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}n(o1e,"printSupply");ho.printSupply=o1e;function l1e(t,e){return e.__kind===t}n(l1e,"isPrintSupply");ho.isPrintSupply=l1e});var sO=v(go=>{"use strict";Object.defineProperty(go,"__esModule",{value:!0});go.isProgrammableConfig=go.programmableConfig=go.getProgrammableConfigSerializer=void 0;var Wg=V();function d1e(){return(0,Wg.dataEnum)([["V1",(0,Wg.struct)([["ruleSet",(0,Wg.option)((0,Wg.publicKey)())]])]],{description:"ProgrammableConfig"})}n(d1e,"getProgrammableConfigSerializer");go.getProgrammableConfigSerializer=d1e;function u1e(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}n(u1e,"programmableConfig");go.programmableConfig=u1e;function c1e(t,e){return e.__kind===t}n(c1e,"isProgrammableConfig");go.isProgrammableConfig=c1e});var oO=v(Fg=>{"use strict";Object.defineProperty(Fg,"__esModule",{value:!0});Fg.getReservationSerializer=void 0;var Vg=V();function p1e(){return(0,Vg.struct)([["address",(0,Vg.publicKey)()],["spotsRemaining",(0,Vg.u64)()],["totalSpots",(0,Vg.u64)()]],{description:"Reservation"})}n(p1e,"getReservationSerializer");Fg.getReservationSerializer=p1e});var lO=v(Lg=>{"use strict";Object.defineProperty(Lg,"__esModule",{value:!0});Lg.getReservationV1Serializer=void 0;var Kg=V();function m1e(){return(0,Kg.struct)([["address",(0,Kg.publicKey)()],["spotsRemaining",(0,Kg.u8)()],["totalSpots",(0,Kg.u8)()]],{description:"ReservationV1"})}n(m1e,"getReservationV1Serializer");Lg.getReservationV1Serializer=m1e});var uO=v(Bl=>{"use strict";Object.defineProperty(Bl,"__esModule",{value:!0});Bl.getRevokeArgsSerializer=Bl.RevokeArgs=void 0;var f1e=V(),dO;(function(t){t[t.CollectionV1=0]="CollectionV1",t[t.SaleV1=1]="SaleV1",t[t.TransferV1=2]="TransferV1",t[t.DataV1=3]="DataV1",t[t.UtilityV1=4]="UtilityV1",t[t.StakingV1=5]="StakingV1",t[t.StandardV1=6]="StandardV1",t[t.LockedTransferV1=7]="LockedTransferV1",t[t.ProgrammableConfigV1=8]="ProgrammableConfigV1",t[t.MigrationV1=9]="MigrationV1",t[t.AuthorityItemV1=10]="AuthorityItemV1",t[t.DataItemV1=11]="DataItemV1",t[t.CollectionItemV1=12]="CollectionItemV1",t[t.ProgrammableConfigItemV1=13]="ProgrammableConfigItemV1"})(dO=Bl.RevokeArgs||(Bl.RevokeArgs={}));function h1e(){return(0,f1e.scalarEnum)(dO,{description:"RevokeArgs"})}n(h1e,"getRevokeArgsSerializer");Bl.getRevokeArgsSerializer=h1e});var cO=v(yo=>{"use strict";Object.defineProperty(yo,"__esModule",{value:!0});yo.isRuleSetToggle=yo.ruleSetToggle=yo.getRuleSetToggleSerializer=void 0;var zd=V();function g1e(){return(0,zd.dataEnum)([["None",(0,zd.unit)()],["Clear",(0,zd.unit)()],["Set",(0,zd.struct)([["fields",(0,zd.tuple)([(0,zd.publicKey)()])]])]],{description:"RuleSetToggle"})}n(g1e,"getRuleSetToggleSerializer");yo.getRuleSetToggleSerializer=g1e;function y1e(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}n(y1e,"ruleSetToggle");yo.ruleSetToggle=y1e;function b1e(t,e){return e.__kind===t}n(b1e,"isRuleSetToggle");yo.isRuleSetToggle=b1e});var pO=v(jg=>{"use strict";Object.defineProperty(jg,"__esModule",{value:!0});jg.getSeedsVecSerializer=void 0;var Ug=V();function v1e(){return(0,Ug.struct)([["seeds",(0,Ug.array)((0,Ug.bytes)({size:(0,Ug.u32)()}))]],{description:"SeedsVec"})}n(v1e,"getSeedsVecSerializer");jg.getSeedsVecSerializer=v1e});var fO=v(Hg=>{"use strict";Object.defineProperty(Hg,"__esModule",{value:!0});Hg.getSetCollectionSizeArgsSerializer=void 0;var mO=V();function S1e(){return(0,mO.struct)([["size",(0,mO.u64)()]],{description:"SetCollectionSizeArgs"})}n(S1e,"getSetCollectionSizeArgsSerializer");Hg.getSetCollectionSizeArgsSerializer=S1e});var gO=v(Cl=>{"use strict";Object.defineProperty(Cl,"__esModule",{value:!0});Cl.getTokenDelegateRoleSerializer=Cl.TokenDelegateRole=void 0;var w1e=V(),hO;(function(t){t[t.Sale=0]="Sale",t[t.Transfer=1]="Transfer",t[t.Utility=2]="Utility",t[t.Staking=3]="Staking",t[t.Standard=4]="Standard",t[t.LockedTransfer=5]="LockedTransfer",t[t.Migration=6]="Migration"})(hO=Cl.TokenDelegateRole||(Cl.TokenDelegateRole={}));function x1e(){return(0,w1e.scalarEnum)(hO,{description:"TokenDelegateRole"})}n(x1e,"getTokenDelegateRoleSerializer");Cl.getTokenDelegateRoleSerializer=x1e});var bO=v(Ol=>{"use strict";Object.defineProperty(Ol,"__esModule",{value:!0});Ol.getTokenStandardSerializer=Ol.TokenStandard=void 0;var A1e=V(),yO;(function(t){t[t.NonFungible=0]="NonFungible",t[t.FungibleAsset=1]="FungibleAsset",t[t.Fungible=2]="Fungible",t[t.NonFungibleEdition=3]="NonFungibleEdition",t[t.ProgrammableNonFungible=4]="ProgrammableNonFungible",t[t.ProgrammableNonFungibleEdition=5]="ProgrammableNonFungibleEdition"})(yO=Ol.TokenStandard||(Ol.TokenStandard={}));function _1e(){return(0,A1e.scalarEnum)(yO,{description:"TokenStandard"})}n(_1e,"getTokenStandardSerializer");Ol.getTokenStandardSerializer=_1e});var SO=v(Nl=>{"use strict";Object.defineProperty(Nl,"__esModule",{value:!0});Nl.getTokenStateSerializer=Nl.TokenState=void 0;var k1e=V(),vO;(function(t){t[t.Unlocked=0]="Unlocked",t[t.Locked=1]="Locked",t[t.Listed=2]="Listed"})(vO=Nl.TokenState||(Nl.TokenState={}));function E1e(){return(0,k1e.scalarEnum)(vO,{description:"TokenState"})}n(E1e,"getTokenStateSerializer");Nl.getTokenStateSerializer=E1e});var wO=v(bo=>{"use strict";Object.defineProperty(bo,"__esModule",{value:!0});bo.isTransferArgs=bo.transferArgs=bo.getTransferArgsSerializer=void 0;var P1e=K(),Sm=V(),T1e=ae();function z1e(){return(0,Sm.dataEnum)([["V1",(0,Sm.mapSerializer)((0,Sm.struct)([["amount",(0,Sm.u64)()],["authorizationData",(0,Sm.option)((0,T1e.getAuthorizationDataSerializer)())]]),t=>({...t,amount:t.amount??1,authorizationData:t.authorizationData??(0,P1e.none)()}))]],{description:"TransferArgs"})}n(z1e,"getTransferArgsSerializer");bo.getTransferArgsSerializer=z1e;function I1e(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}n(I1e,"transferArgs");bo.transferArgs=I1e;function M1e(t,e){return e.__kind===t}n(M1e,"isTransferArgs");bo.isTransferArgs=M1e});var xO=v(vo=>{"use strict";Object.defineProperty(vo,"__esModule",{value:!0});vo.isUnlockArgs=vo.unlockArgs=vo.getUnlockArgsSerializer=void 0;var D1e=K(),$g=V(),R1e=ae();function B1e(){return(0,$g.dataEnum)([["V1",(0,$g.mapSerializer)((0,$g.struct)([["authorizationData",(0,$g.option)((0,R1e.getAuthorizationDataSerializer)())]]),t=>({...t,authorizationData:t.authorizationData??(0,D1e.none)()}))]],{description:"UnlockArgs"})}n(B1e,"getUnlockArgsSerializer");vo.getUnlockArgsSerializer=B1e;function C1e(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}n(C1e,"unlockArgs");vo.unlockArgs=C1e;function O1e(t,e){return e.__kind===t}n(O1e,"isUnlockArgs");vo.isUnlockArgs=O1e});var AO=v(So=>{"use strict";Object.defineProperty(So,"__esModule",{value:!0});So.isUpdateArgs=So.updateArgs=So.getUpdateArgsSerializer=void 0;var At=K(),he=V(),Ce=ae();function N1e(){return(0,he.dataEnum)([["V1",(0,he.mapSerializer)((0,he.struct)([["newUpdateAuthority",(0,he.option)((0,he.publicKey)())],["data",(0,he.option)((0,Ce.getDataSerializer)())],["primarySaleHappened",(0,he.option)((0,he.bool)())],["isMutable",(0,he.option)((0,he.bool)())],["collection",(0,Ce.getCollectionToggleSerializer)()],["collectionDetails",(0,Ce.getCollectionDetailsToggleSerializer)()],["uses",(0,Ce.getUsesToggleSerializer)()],["ruleSet",(0,Ce.getRuleSetToggleSerializer)()],["authorizationData",(0,he.option)((0,Ce.getAuthorizationDataSerializer)())]]),t=>({...t,newUpdateAuthority:t.newUpdateAuthority??(0,At.none)(),data:t.data??(0,At.none)(),primarySaleHappened:t.primarySaleHappened??(0,At.none)(),isMutable:t.isMutable??(0,At.none)(),collection:t.collection??(0,Ce.collectionToggle)("None"),collectionDetails:t.collectionDetails??(0,Ce.collectionDetailsToggle)("None"),uses:t.uses??(0,Ce.usesToggle)("None"),ruleSet:t.ruleSet??(0,Ce.ruleSetToggle)("None"),authorizationData:t.authorizationData??(0,At.none)()}))],["AsUpdateAuthorityV2",(0,he.mapSerializer)((0,he.struct)([["newUpdateAuthority",(0,he.option)((0,he.publicKey)())],["data",(0,he.option)((0,Ce.getDataSerializer)())],["primarySaleHappened",(0,he.option)((0,he.bool)())],["isMutable",(0,he.option)((0,he.bool)())],["collection",(0,Ce.getCollectionToggleSerializer)()],["collectionDetails",(0,Ce.getCollectionDetailsToggleSerializer)()],["uses",(0,Ce.getUsesToggleSerializer)()],["ruleSet",(0,Ce.getRuleSetToggleSerializer)()],["tokenStandard",(0,he.option)((0,Ce.getTokenStandardSerializer)())],["authorizationData",(0,he.option)((0,Ce.getAuthorizationDataSerializer)())]]),t=>({...t,newUpdateAuthority:t.newUpdateAuthority??(0,At.none)(),data:t.data??(0,At.none)(),primarySaleHappened:t.primarySaleHappened??(0,At.none)(),isMutable:t.isMutable??(0,At.none)(),collection:t.collection??(0,Ce.collectionToggle)("None"),collectionDetails:t.collectionDetails??(0,Ce.collectionDetailsToggle)("None"),uses:t.uses??(0,Ce.usesToggle)("None"),ruleSet:t.ruleSet??(0,Ce.ruleSetToggle)("None"),tokenStandard:t.tokenStandard??(0,At.none)(),authorizationData:t.authorizationData??(0,At.none)()}))],["AsAuthorityItemDelegateV2",(0,he.mapSerializer)((0,he.struct)([["newUpdateAuthority",(0,he.option)((0,he.publicKey)())],["primarySaleHappened",(0,he.option)((0,he.bool)())],["isMutable",(0,he.option)((0,he.bool)())],["tokenStandard",(0,he.option)((0,Ce.getTokenStandardSerializer)())],["authorizationData",(0,he.option)((0,Ce.getAuthorizationDataSerializer)())]]),t=>({...t,newUpdateAuthority:t.newUpdateAuthority??(0,At.none)(),primarySaleHappened:t.primarySaleHappened??(0,At.none)(),isMutable:t.isMutable??(0,At.none)(),tokenStandard:t.tokenStandard??(0,At.none)(),authorizationData:t.authorizationData??(0,At.none)()}))],["AsCollectionDelegateV2",(0,he.mapSerializer)((0,he.struct)([["collection",(0,Ce.getCollectionToggleSerializer)()],["authorizationData",(0,he.option)((0,Ce.getAuthorizationDataSerializer)())]]),t=>({...t,collection:t.collection??(0,Ce.collectionToggle)("None"),authorizationData:t.authorizationData??(0,At.none)()}))],["AsDataDelegateV2",(0,he.mapSerializer)((0,he.struct)([["data",(0,he.option)((0,Ce.getDataSerializer)())],["authorizationData",(0,he.option)((0,Ce.getAuthorizationDataSerializer)())]]),t=>({...t,data:t.data??(0,At.none)(),authorizationData:t.authorizationData??(0,At.none)()}))],["AsProgrammableConfigDelegateV2",(0,he.mapSerializer)((0,he.struct)([["ruleSet",(0,Ce.getRuleSetToggleSerializer)()],["authorizationData",(0,he.option)((0,Ce.getAuthorizationDataSerializer)())]]),t=>({...t,ruleSet:t.ruleSet??(0,Ce.ruleSetToggle)("None"),authorizationData:t.authorizationData??(0,At.none)()}))],["AsDataItemDelegateV2",(0,he.mapSerializer)((0,he.struct)([["data",(0,he.option)((0,Ce.getDataSerializer)())],["authorizationData",(0,he.option)((0,Ce.getAuthorizationDataSerializer)())]]),t=>({...t,data:t.data??(0,At.none)(),authorizationData:t.authorizationData??(0,At.none)()}))],["AsCollectionItemDelegateV2",(0,he.mapSerializer)((0,he.struct)([["collection",(0,Ce.getCollectionToggleSerializer)()],["authorizationData",(0,he.option)((0,Ce.getAuthorizationDataSerializer)())]]),t=>({...t,collection:t.collection??(0,Ce.collectionToggle)("None"),authorizationData:t.authorizationData??(0,At.none)()}))],["AsProgrammableConfigItemDelegateV2",(0,he.mapSerializer)((0,he.struct)([["ruleSet",(0,Ce.getRuleSetToggleSerializer)()],["authorizationData",(0,he.option)((0,Ce.getAuthorizationDataSerializer)())]]),t=>({...t,ruleSet:t.ruleSet??(0,Ce.ruleSetToggle)("None"),authorizationData:t.authorizationData??(0,At.none)()}))]],{description:"UpdateArgs"})}n(N1e,"getUpdateArgsSerializer");So.getUpdateArgsSerializer=N1e;function q1e(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}n(q1e,"updateArgs");So.updateArgs=q1e;function W1e(t,e){return e.__kind===t}n(W1e,"isUpdateArgs");So.isUpdateArgs=W1e});var _O=v(wo=>{"use strict";Object.defineProperty(wo,"__esModule",{value:!0});wo.isUseArgs=wo.useArgs=wo.getUseArgsSerializer=void 0;var V1e=K(),Gg=V(),F1e=ae();function K1e(){return(0,Gg.dataEnum)([["V1",(0,Gg.mapSerializer)((0,Gg.struct)([["authorizationData",(0,Gg.option)((0,F1e.getAuthorizationDataSerializer)())]]),t=>({...t,authorizationData:t.authorizationData??(0,V1e.none)()}))]],{description:"UseArgs"})}n(K1e,"getUseArgsSerializer");wo.getUseArgsSerializer=K1e;function L1e(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}n(L1e,"useArgs");wo.useArgs=L1e;function U1e(t,e){return e.__kind===t}n(U1e,"isUseArgs");wo.isUseArgs=U1e});var EO=v(ql=>{"use strict";Object.defineProperty(ql,"__esModule",{value:!0});ql.getUseMethodSerializer=ql.UseMethod=void 0;var j1e=V(),kO;(function(t){t[t.Burn=0]="Burn",t[t.Multiple=1]="Multiple",t[t.Single=2]="Single"})(kO=ql.UseMethod||(ql.UseMethod={}));function H1e(){return(0,j1e.scalarEnum)(kO,{description:"UseMethod"})}n(H1e,"getUseMethodSerializer");ql.getUseMethodSerializer=H1e});var PO=v(Zg=>{"use strict";Object.defineProperty(Zg,"__esModule",{value:!0});Zg.getUsesSerializer=void 0;var dA=V(),$1e=ae();function G1e(){return(0,dA.struct)([["useMethod",(0,$1e.getUseMethodSerializer)()],["remaining",(0,dA.u64)()],["total",(0,dA.u64)()]],{description:"Uses"})}n(G1e,"getUsesSerializer");Zg.getUsesSerializer=G1e});var TO=v(xo=>{"use strict";Object.defineProperty(xo,"__esModule",{value:!0});xo.isUsesToggle=xo.usesToggle=xo.getUsesToggleSerializer=void 0;var wm=V(),Z1e=ae();function J1e(){return(0,wm.dataEnum)([["None",(0,wm.unit)()],["Clear",(0,wm.unit)()],["Set",(0,wm.struct)([["fields",(0,wm.tuple)([(0,Z1e.getUsesSerializer)()])]])]],{description:"UsesToggle"})}n(J1e,"getUsesToggleSerializer");xo.getUsesToggleSerializer=J1e;function Y1e(t,e){return Array.isArray(e)?{__kind:t,fields:e}:{__kind:t,...e??{}}}n(Y1e,"usesToggle");xo.usesToggle=Y1e;function Q1e(t,e){return e.__kind===t}n(Q1e,"isUsesToggle");xo.isUsesToggle=Q1e});var IO=v(Wl=>{"use strict";Object.defineProperty(Wl,"__esModule",{value:!0});Wl.getVerificationArgsSerializer=Wl.VerificationArgs=void 0;var X1e=V(),zO;(function(t){t[t.CreatorV1=0]="CreatorV1",t[t.CollectionV1=1]="CollectionV1"})(zO=Wl.VerificationArgs||(Wl.VerificationArgs={}));function ede(){return(0,X1e.scalarEnum)(zO,{description:"VerificationArgs"})}n(ede,"getVerificationArgsSerializer");Wl.getVerificationArgsSerializer=ede});var ae=v(be=>{"use strict";var tde=be&&be.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),Ee=be&&be.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&tde(e,t,r)};Object.defineProperty(be,"__esModule",{value:!0});Ee(IC(),be);Ee(MC(),be);Ee(DC(),be);Ee(RC(),be);Ee(BC(),be);Ee(CC(),be);Ee(OC(),be);Ee(NC(),be);Ee(qC(),be);Ee(WC(),be);Ee(VC(),be);Ee(FC(),be);Ee(KC(),be);Ee(UC(),be);Ee(jC(),be);Ee(HC(),be);Ee(sA(),be);Ee(ZC(),be);Ee(JC(),be);Ee(QC(),be);Ee(XC(),be);Ee(tO(),be);Ee(iO(),be);Ee(aO(),be);Ee(nO(),be);Ee(sO(),be);Ee(oO(),be);Ee(lO(),be);Ee(uO(),be);Ee(cO(),be);Ee(pO(),be);Ee(fO(),be);Ee(gO(),be);Ee(bO(),be);Ee(SO(),be);Ee(wO(),be);Ee(xO(),be);Ee(AO(),be);Ee(_O(),be);Ee(EO(),be);Ee(PO(),be);Ee(TO(),be);Ee(IO(),be)});var BO=v(Nt=>{"use strict";Object.defineProperty(Nt,"__esModule",{value:!0});Nt.safeFetchCollectionAuthorityRecordFromSeeds=Nt.fetchCollectionAuthorityRecordFromSeeds=Nt.findCollectionAuthorityRecordPda=Nt.getCollectionAuthorityRecordGpaBuilder=Nt.safeFetchAllCollectionAuthorityRecord=Nt.fetchAllCollectionAuthorityRecord=Nt.safeFetchCollectionAuthorityRecord=Nt.fetchCollectionAuthorityRecord=Nt.deserializeCollectionAuthorityRecord=Nt.getCollectionAuthorityRecordAccountDataSerializer=void 0;var Ao=K(),Li=V(),Jg=ae();function MO(){return(0,Li.mapSerializer)((0,Li.struct)([["key",(0,Jg.getKeySerializer)()],["bump",(0,Li.u8)()],["updateAuthority",(0,Li.option)((0,Li.publicKey)())]],{description:"CollectionAuthorityRecordAccountData"}),t=>({...t,key:Jg.Key.CollectionAuthorityRecord}))}n(MO,"getCollectionAuthorityRecordAccountDataSerializer");Nt.getCollectionAuthorityRecordAccountDataSerializer=MO;function Id(t){return(0,Ao.deserializeAccount)(t,MO())}n(Id,"deserializeCollectionAuthorityRecord");Nt.deserializeCollectionAuthorityRecord=Id;async function DO(t,e,r){let i=await t.rpc.getAccount((0,Ao.publicKey)(e,!1),r);return(0,Ao.assertAccountExists)(i,"CollectionAuthorityRecord"),Id(i)}n(DO,"fetchCollectionAuthorityRecord");Nt.fetchCollectionAuthorityRecord=DO;async function RO(t,e,r){let i=await t.rpc.getAccount((0,Ao.publicKey)(e,!1),r);return i.exists?Id(i):null}n(RO,"safeFetchCollectionAuthorityRecord");Nt.safeFetchCollectionAuthorityRecord=RO;async function rde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Ao.publicKey)(a,!1)),r)).map(a=>((0,Ao.assertAccountExists)(a,"CollectionAuthorityRecord"),Id(a)))}n(rde,"fetchAllCollectionAuthorityRecord");Nt.fetchAllCollectionAuthorityRecord=rde;async function ide(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Ao.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>Id(a))}n(ide,"safeFetchAllCollectionAuthorityRecord");Nt.safeFetchAllCollectionAuthorityRecord=ide;function ade(t){let e=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return(0,Ao.gpaBuilder)(t,e).registerFields({key:[0,(0,Jg.getKeySerializer)()],bump:[1,(0,Li.u8)()],updateAuthority:[2,(0,Li.option)((0,Li.publicKey)())]}).deserializeUsing(r=>Id(r)).whereField("key",Jg.Key.CollectionAuthorityRecord)}n(ade,"getCollectionAuthorityRecordGpaBuilder");Nt.getCollectionAuthorityRecordGpaBuilder=ade;function uA(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return t.eddsa.findPda(r,[(0,Li.string)({size:"variable"}).serialize("metadata"),(0,Li.publicKey)().serialize(r),(0,Li.publicKey)().serialize(e.mint),(0,Li.string)({size:"variable"}).serialize("collection_authority"),(0,Li.publicKey)().serialize(e.collectionAuthority)])}n(uA,"findCollectionAuthorityRecordPda");Nt.findCollectionAuthorityRecordPda=uA;async function nde(t,e,r){return DO(t,uA(t,e),r)}n(nde,"fetchCollectionAuthorityRecordFromSeeds");Nt.fetchCollectionAuthorityRecordFromSeeds=nde;async function sde(t,e,r){return RO(t,uA(t,e),r)}n(sde,"safeFetchCollectionAuthorityRecordFromSeeds");Nt.safeFetchCollectionAuthorityRecordFromSeeds=sde});var OO=v(Nr=>{"use strict";Object.defineProperty(Nr,"__esModule",{value:!0});Nr.getEditionSize=Nr.getEditionGpaBuilder=Nr.safeFetchAllEdition=Nr.fetchAllEdition=Nr.safeFetchEdition=Nr.fetchEdition=Nr.deserializeEdition=Nr.getEditionAccountDataSerializer=void 0;var _o=K(),Md=V(),Yg=ae();function CO(){return(0,Md.mapSerializer)((0,Md.struct)([["key",(0,Yg.getKeySerializer)()],["parent",(0,Md.publicKey)()],["edition",(0,Md.u64)()]],{description:"EditionAccountData"}),t=>({...t,key:Yg.Key.EditionV1}))}n(CO,"getEditionAccountDataSerializer");Nr.getEditionAccountDataSerializer=CO;function Dd(t){return(0,_o.deserializeAccount)(t,CO())}n(Dd,"deserializeEdition");Nr.deserializeEdition=Dd;async function ode(t,e,r){let i=await t.rpc.getAccount((0,_o.publicKey)(e,!1),r);return(0,_o.assertAccountExists)(i,"Edition"),Dd(i)}n(ode,"fetchEdition");Nr.fetchEdition=ode;async function lde(t,e,r){let i=await t.rpc.getAccount((0,_o.publicKey)(e,!1),r);return i.exists?Dd(i):null}n(lde,"safeFetchEdition");Nr.safeFetchEdition=lde;async function dde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,_o.publicKey)(a,!1)),r)).map(a=>((0,_o.assertAccountExists)(a,"Edition"),Dd(a)))}n(dde,"fetchAllEdition");Nr.fetchAllEdition=dde;async function ude(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,_o.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>Dd(a))}n(ude,"safeFetchAllEdition");Nr.safeFetchAllEdition=ude;function cde(t){let e=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return(0,_o.gpaBuilder)(t,e).registerFields({key:[0,(0,Yg.getKeySerializer)()],parent:[1,(0,Md.publicKey)()],edition:[33,(0,Md.u64)()]}).deserializeUsing(r=>Dd(r)).whereField("key",Yg.Key.EditionV1)}n(cde,"getEditionGpaBuilder");Nr.getEditionGpaBuilder=cde;function pde(){return 41}n(pde,"getEditionSize");Nr.getEditionSize=pde});var VO=v(_t=>{"use strict";Object.defineProperty(_t,"__esModule",{value:!0});_t.safeFetchEditionMarkerFromSeeds=_t.fetchEditionMarkerFromSeeds=_t.findEditionMarkerPda=_t.getEditionMarkerSize=_t.getEditionMarkerGpaBuilder=_t.safeFetchAllEditionMarker=_t.fetchAllEditionMarker=_t.safeFetchEditionMarker=_t.fetchEditionMarker=_t.deserializeEditionMarker=_t.getEditionMarkerAccountDataSerializer=void 0;var ko=K(),Wa=V(),Qg=ae();function NO(){return(0,Wa.mapSerializer)((0,Wa.struct)([["key",(0,Qg.getKeySerializer)()],["ledger",(0,Wa.array)((0,Wa.u8)(),{size:31})]],{description:"EditionMarkerAccountData"}),t=>({...t,key:Qg.Key.EditionMarker}))}n(NO,"getEditionMarkerAccountDataSerializer");_t.getEditionMarkerAccountDataSerializer=NO;function Rd(t){return(0,ko.deserializeAccount)(t,NO())}n(Rd,"deserializeEditionMarker");_t.deserializeEditionMarker=Rd;async function qO(t,e,r){let i=await t.rpc.getAccount((0,ko.publicKey)(e,!1),r);return(0,ko.assertAccountExists)(i,"EditionMarker"),Rd(i)}n(qO,"fetchEditionMarker");_t.fetchEditionMarker=qO;async function WO(t,e,r){let i=await t.rpc.getAccount((0,ko.publicKey)(e,!1),r);return i.exists?Rd(i):null}n(WO,"safeFetchEditionMarker");_t.safeFetchEditionMarker=WO;async function mde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,ko.publicKey)(a,!1)),r)).map(a=>((0,ko.assertAccountExists)(a,"EditionMarker"),Rd(a)))}n(mde,"fetchAllEditionMarker");_t.fetchAllEditionMarker=mde;async function fde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,ko.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>Rd(a))}n(fde,"safeFetchAllEditionMarker");_t.safeFetchAllEditionMarker=fde;function hde(t){let e=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return(0,ko.gpaBuilder)(t,e).registerFields({key:[0,(0,Qg.getKeySerializer)()],ledger:[1,(0,Wa.array)((0,Wa.u8)(),{size:31})]}).deserializeUsing(r=>Rd(r)).whereField("key",Qg.Key.EditionMarker)}n(hde,"getEditionMarkerGpaBuilder");_t.getEditionMarkerGpaBuilder=hde;function gde(){return 32}n(gde,"getEditionMarkerSize");_t.getEditionMarkerSize=gde;function cA(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return t.eddsa.findPda(r,[(0,Wa.string)({size:"variable"}).serialize("metadata"),(0,Wa.publicKey)().serialize(r),(0,Wa.publicKey)().serialize(e.mint),(0,Wa.string)({size:"variable"}).serialize("edition"),(0,Wa.string)({size:"variable"}).serialize(e.editionMarker)])}n(cA,"findEditionMarkerPda");_t.findEditionMarkerPda=cA;async function yde(t,e,r){return qO(t,cA(t,e),r)}n(yde,"fetchEditionMarkerFromSeeds");_t.fetchEditionMarkerFromSeeds=yde;async function bde(t,e,r){return WO(t,cA(t,e),r)}n(bde,"safeFetchEditionMarkerFromSeeds");_t.safeFetchEditionMarkerFromSeeds=bde});var jO=v(qt=>{"use strict";Object.defineProperty(qt,"__esModule",{value:!0});qt.safeFetchEditionMarkerV2FromSeeds=qt.fetchEditionMarkerV2FromSeeds=qt.findEditionMarkerV2Pda=qt.getEditionMarkerV2GpaBuilder=qt.safeFetchAllEditionMarkerV2=qt.fetchAllEditionMarkerV2=qt.safeFetchEditionMarkerV2=qt.fetchEditionMarkerV2=qt.deserializeEditionMarkerV2=qt.getEditionMarkerV2AccountDataSerializer=void 0;var Eo=K(),fn=V(),FO=ae();function KO(){return(0,fn.struct)([["key",(0,FO.getKeySerializer)()],["ledger",(0,fn.bytes)({size:(0,fn.u32)()})]],{description:"EditionMarkerV2AccountData"})}n(KO,"getEditionMarkerV2AccountDataSerializer");qt.getEditionMarkerV2AccountDataSerializer=KO;function Bd(t){return(0,Eo.deserializeAccount)(t,KO())}n(Bd,"deserializeEditionMarkerV2");qt.deserializeEditionMarkerV2=Bd;async function LO(t,e,r){let i=await t.rpc.getAccount((0,Eo.publicKey)(e,!1),r);return(0,Eo.assertAccountExists)(i,"EditionMarkerV2"),Bd(i)}n(LO,"fetchEditionMarkerV2");qt.fetchEditionMarkerV2=LO;async function UO(t,e,r){let i=await t.rpc.getAccount((0,Eo.publicKey)(e,!1),r);return i.exists?Bd(i):null}n(UO,"safeFetchEditionMarkerV2");qt.safeFetchEditionMarkerV2=UO;async function vde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Eo.publicKey)(a,!1)),r)).map(a=>((0,Eo.assertAccountExists)(a,"EditionMarkerV2"),Bd(a)))}n(vde,"fetchAllEditionMarkerV2");qt.fetchAllEditionMarkerV2=vde;async function Sde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Eo.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>Bd(a))}n(Sde,"safeFetchAllEditionMarkerV2");qt.safeFetchAllEditionMarkerV2=Sde;function wde(t){let e=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return(0,Eo.gpaBuilder)(t,e).registerFields({key:[0,(0,FO.getKeySerializer)()],ledger:[1,(0,fn.bytes)({size:(0,fn.u32)()})]}).deserializeUsing(r=>Bd(r))}n(wde,"getEditionMarkerV2GpaBuilder");qt.getEditionMarkerV2GpaBuilder=wde;function pA(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return t.eddsa.findPda(r,[(0,fn.string)({size:"variable"}).serialize("metadata"),(0,fn.publicKey)().serialize(r),(0,fn.publicKey)().serialize(e.mint),(0,fn.string)({size:"variable"}).serialize("edition"),(0,fn.string)({size:"variable"}).serialize("marker")])}n(pA,"findEditionMarkerV2Pda");qt.findEditionMarkerV2Pda=pA;async function xde(t,e,r){return LO(t,pA(t,e),r)}n(xde,"fetchEditionMarkerV2FromSeeds");qt.fetchEditionMarkerV2FromSeeds=xde;async function Ade(t,e,r){return UO(t,pA(t,e),r)}n(Ade,"safeFetchEditionMarkerV2FromSeeds");qt.safeFetchEditionMarkerV2FromSeeds=Ade});var ZO=v(Wt=>{"use strict";Object.defineProperty(Wt,"__esModule",{value:!0});Wt.safeFetchMasterEditionFromSeeds=Wt.fetchMasterEditionFromSeeds=Wt.findMasterEditionPda=Wt.getMasterEditionGpaBuilder=Wt.safeFetchAllMasterEdition=Wt.fetchAllMasterEdition=Wt.safeFetchMasterEdition=Wt.fetchMasterEdition=Wt.deserializeMasterEdition=Wt.getMasterEditionAccountDataSerializer=void 0;var Po=K(),oa=V(),Xg=ae();function HO(){return(0,oa.mapSerializer)((0,oa.struct)([["key",(0,Xg.getKeySerializer)()],["supply",(0,oa.u64)()],["maxSupply",(0,oa.option)((0,oa.u64)())]],{description:"MasterEditionAccountData"}),t=>({...t,key:Xg.Key.MasterEditionV2}))}n(HO,"getMasterEditionAccountDataSerializer");Wt.getMasterEditionAccountDataSerializer=HO;function Cd(t){return(0,Po.deserializeAccount)(t,HO())}n(Cd,"deserializeMasterEdition");Wt.deserializeMasterEdition=Cd;async function $O(t,e,r){let i=await t.rpc.getAccount((0,Po.publicKey)(e,!1),r);return(0,Po.assertAccountExists)(i,"MasterEdition"),Cd(i)}n($O,"fetchMasterEdition");Wt.fetchMasterEdition=$O;async function GO(t,e,r){let i=await t.rpc.getAccount((0,Po.publicKey)(e,!1),r);return i.exists?Cd(i):null}n(GO,"safeFetchMasterEdition");Wt.safeFetchMasterEdition=GO;async function _de(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Po.publicKey)(a,!1)),r)).map(a=>((0,Po.assertAccountExists)(a,"MasterEdition"),Cd(a)))}n(_de,"fetchAllMasterEdition");Wt.fetchAllMasterEdition=_de;async function kde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Po.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>Cd(a))}n(kde,"safeFetchAllMasterEdition");Wt.safeFetchAllMasterEdition=kde;function Ede(t){let e=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return(0,Po.gpaBuilder)(t,e).registerFields({key:[0,(0,Xg.getKeySerializer)()],supply:[1,(0,oa.u64)()],maxSupply:[9,(0,oa.option)((0,oa.u64)())]}).deserializeUsing(r=>Cd(r)).whereField("key",Xg.Key.MasterEditionV2)}n(Ede,"getMasterEditionGpaBuilder");Wt.getMasterEditionGpaBuilder=Ede;function mA(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return t.eddsa.findPda(r,[(0,oa.string)({size:"variable"}).serialize("metadata"),(0,oa.publicKey)().serialize(r),(0,oa.publicKey)().serialize(e.mint),(0,oa.string)({size:"variable"}).serialize("edition")])}n(mA,"findMasterEditionPda");Wt.findMasterEditionPda=mA;async function Pde(t,e,r){return $O(t,mA(t,e),r)}n(Pde,"fetchMasterEditionFromSeeds");Wt.fetchMasterEditionFromSeeds=Pde;async function Tde(t,e,r){return GO(t,mA(t,e),r)}n(Tde,"safeFetchMasterEditionFromSeeds");Wt.safeFetchMasterEditionFromSeeds=Tde});var XO=v(Vt=>{"use strict";Object.defineProperty(Vt,"__esModule",{value:!0});Vt.safeFetchMetadataFromSeeds=Vt.fetchMetadataFromSeeds=Vt.findMetadataPda=Vt.getMetadataGpaBuilder=Vt.safeFetchAllMetadata=Vt.fetchAllMetadata=Vt.safeFetchMetadata=Vt.fetchMetadata=Vt.deserializeMetadata=Vt.getMetadataAccountDataSerializer=void 0;var To=K(),Oe=V(),li=ae();function JO(){return(0,Oe.mapSerializer)((0,Oe.struct)([["key",(0,li.getKeySerializer)()],["updateAuthority",(0,Oe.publicKey)()],["mint",(0,Oe.publicKey)()],["name",(0,Oe.string)()],["symbol",(0,Oe.string)()],["uri",(0,Oe.string)()],["sellerFeeBasisPoints",(0,Oe.u16)()],["creators",(0,Oe.option)((0,Oe.array)((0,li.getCreatorSerializer)()))],["primarySaleHappened",(0,Oe.bool)()],["isMutable",(0,Oe.bool)()],["editionNonce",(0,Oe.option)((0,Oe.u8)())],["tokenStandard",(0,Oe.option)((0,li.getTokenStandardSerializer)())],["collection",(0,Oe.option)((0,li.getCollectionSerializer)())],["uses",(0,Oe.option)((0,li.getUsesSerializer)())],["collectionDetails",(0,Oe.option)((0,li.getCollectionDetailsSerializer)())],["programmableConfig",(0,Oe.option)((0,li.getProgrammableConfigSerializer)())]],{description:"MetadataAccountData"}),t=>({...t,key:li.Key.MetadataV1}))}n(JO,"getMetadataAccountDataSerializer");Vt.getMetadataAccountDataSerializer=JO;function Od(t){return(0,To.deserializeAccount)(t,JO())}n(Od,"deserializeMetadata");Vt.deserializeMetadata=Od;async function YO(t,e,r){let i=await t.rpc.getAccount((0,To.publicKey)(e,!1),r);return(0,To.assertAccountExists)(i,"Metadata"),Od(i)}n(YO,"fetchMetadata");Vt.fetchMetadata=YO;async function QO(t,e,r){let i=await t.rpc.getAccount((0,To.publicKey)(e,!1),r);return i.exists?Od(i):null}n(QO,"safeFetchMetadata");Vt.safeFetchMetadata=QO;async function zde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,To.publicKey)(a,!1)),r)).map(a=>((0,To.assertAccountExists)(a,"Metadata"),Od(a)))}n(zde,"fetchAllMetadata");Vt.fetchAllMetadata=zde;async function Ide(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,To.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>Od(a))}n(Ide,"safeFetchAllMetadata");Vt.safeFetchAllMetadata=Ide;function Mde(t){let e=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return(0,To.gpaBuilder)(t,e).registerFields({key:[0,(0,li.getKeySerializer)()],updateAuthority:[1,(0,Oe.publicKey)()],mint:[33,(0,Oe.publicKey)()],name:[65,(0,Oe.string)()],symbol:[null,(0,Oe.string)()],uri:[null,(0,Oe.string)()],sellerFeeBasisPoints:[null,(0,Oe.u16)()],creators:[null,(0,Oe.option)((0,Oe.array)((0,li.getCreatorSerializer)()))],primarySaleHappened:[null,(0,Oe.bool)()],isMutable:[null,(0,Oe.bool)()],editionNonce:[null,(0,Oe.option)((0,Oe.u8)())],tokenStandard:[null,(0,Oe.option)((0,li.getTokenStandardSerializer)())],collection:[null,(0,Oe.option)((0,li.getCollectionSerializer)())],uses:[null,(0,Oe.option)((0,li.getUsesSerializer)())],collectionDetails:[null,(0,Oe.option)((0,li.getCollectionDetailsSerializer)())],programmableConfig:[null,(0,Oe.option)((0,li.getProgrammableConfigSerializer)())]}).deserializeUsing(r=>Od(r)).whereField("key",li.Key.MetadataV1)}n(Mde,"getMetadataGpaBuilder");Vt.getMetadataGpaBuilder=Mde;function fA(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return t.eddsa.findPda(r,[(0,Oe.string)({size:"variable"}).serialize("metadata"),(0,Oe.publicKey)().serialize(r),(0,Oe.publicKey)().serialize(e.mint)])}n(fA,"findMetadataPda");Vt.findMetadataPda=fA;async function Dde(t,e,r){return YO(t,fA(t,e),r)}n(Dde,"fetchMetadataFromSeeds");Vt.fetchMetadataFromSeeds=Dde;async function Rde(t,e,r){return QO(t,fA(t,e),r)}n(Rde,"safeFetchMetadataFromSeeds");Vt.safeFetchMetadataFromSeeds=Rde});var eN=v(e5=>{"use strict";Object.defineProperty(e5,"__esModule",{value:!0});e5.findEditionMarkerFromEditionNumberPda=void 0;var Bde=zo();function Cde(t,e){return(0,Bde.findEditionMarkerPda)(t,{mint:e.mint,editionMarker:(BigInt(e.editionNumber)/248n).toString(10)})}n(Cde,"findEditionMarkerFromEditionNumberPda");e5.findEditionMarkerFromEditionNumberPda=Cde});var xm=v(t5=>{"use strict";Object.defineProperty(t5,"__esModule",{value:!0});t5.TokenMetadataError=void 0;var Ode=K(),hA=class extends Ode.UmiError{static{n(this,"TokenMetadataError")}constructor(e,r){super(e,"plugin","Token Metadata",r),this.name="TokenMetadataError"}};t5.TokenMetadataError=hA});var rN=v(r5=>{"use strict";Object.defineProperty(r5,"__esModule",{value:!0});r5.getMetadataDelegateRoleSeedSerializer=void 0;var tN=V(),Nde=xm(),Io=sA();function qde(){return(0,tN.mapSerializer)((0,tN.string)({size:"variable"}),t=>{if(typeof t=="string")return t;switch(t){case Io.MetadataDelegateRole.AuthorityItem:return"authority_item_delegate";case Io.MetadataDelegateRole.Collection:return"collection_delegate";case Io.MetadataDelegateRole.Use:return"use_delegate";case Io.MetadataDelegateRole.Data:return"data_delegate";case Io.MetadataDelegateRole.ProgrammableConfig:return"programmable_config_delegate";case Io.MetadataDelegateRole.DataItem:return"data_item_delegate";case Io.MetadataDelegateRole.CollectionItem:return"collection_item_delegate";case Io.MetadataDelegateRole.ProgrammableConfigItem:return"prog_config_item_delegate";default:throw new Nde.TokenMetadataError(`Invalid MetadataDelegateRoleArgs ${t}`)}},t=>t)}n(qde,"getMetadataDelegateRoleSeedSerializer");r5.getMetadataDelegateRoleSeedSerializer=qde});var sN=v(Kt=>{"use strict";Object.defineProperty(Kt,"__esModule",{value:!0});Kt.safeFetchAddressLookupTableFromSeeds=Kt.fetchAddressLookupTableFromSeeds=Kt.findAddressLookupTablePda=Kt.getAddressLookupTableGpaBuilder=Kt.safeFetchAllAddressLookupTable=Kt.fetchAllAddressLookupTable=Kt.safeFetchAddressLookupTable=Kt.fetchAddressLookupTable=Kt.deserializeAddressLookupTable=Kt.getAddressLookupTableAccountDataSerializer=void 0;var Mo=K(),Ft=V();function iN(){return(0,Ft.mapSerializer)((0,Ft.struct)([["discriminator",(0,Ft.u32)()],["deactivationSlot",(0,Ft.u64)()],["lastExtendedSlot",(0,Ft.u64)()],["lastExtendedStartIndex",(0,Ft.u8)()],["authority",(0,Ft.option)((0,Ft.publicKey)(),{fixed:!0})],["padding",(0,Ft.u16)()],["addresses",(0,Ft.array)((0,Ft.publicKey)(),{size:"remainder"})]],{description:"AddressLookupTableAccountData"}),t=>({...t,discriminator:1,padding:0}))}n(iN,"getAddressLookupTableAccountDataSerializer");Kt.getAddressLookupTableAccountDataSerializer=iN;function Nd(t){return(0,Mo.deserializeAccount)(t,iN())}n(Nd,"deserializeAddressLookupTable");Kt.deserializeAddressLookupTable=Nd;async function aN(t,e,r){let i=await t.rpc.getAccount((0,Mo.publicKey)(e,!1),r);return(0,Mo.assertAccountExists)(i,"AddressLookupTable"),Nd(i)}n(aN,"fetchAddressLookupTable");Kt.fetchAddressLookupTable=aN;async function nN(t,e,r){let i=await t.rpc.getAccount((0,Mo.publicKey)(e,!1),r);return i.exists?Nd(i):null}n(nN,"safeFetchAddressLookupTable");Kt.safeFetchAddressLookupTable=nN;async function Wde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Mo.publicKey)(a,!1)),r)).map(a=>((0,Mo.assertAccountExists)(a,"AddressLookupTable"),Nd(a)))}n(Wde,"fetchAllAddressLookupTable");Kt.fetchAllAddressLookupTable=Wde;async function Vde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Mo.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>Nd(a))}n(Vde,"safeFetchAllAddressLookupTable");Kt.safeFetchAllAddressLookupTable=Vde;function Fde(t){let e=t.programs.getPublicKey("splAddressLookupTable","AddressLookupTab1e1111111111111111111111111");return(0,Mo.gpaBuilder)(t,e).registerFields({discriminator:[0,(0,Ft.u32)()],deactivationSlot:[4,(0,Ft.u64)()],lastExtendedSlot:[12,(0,Ft.u64)()],lastExtendedStartIndex:[20,(0,Ft.u8)()],authority:[21,(0,Ft.option)((0,Ft.publicKey)(),{fixed:!0})],padding:[54,(0,Ft.u16)()],addresses:[56,(0,Ft.array)((0,Ft.publicKey)(),{size:"remainder"})]}).deserializeUsing(r=>Nd(r)).whereField("discriminator",1)}n(Fde,"getAddressLookupTableGpaBuilder");Kt.getAddressLookupTableGpaBuilder=Fde;function gA(t,e){let r=t.programs.getPublicKey("splAddressLookupTable","AddressLookupTab1e1111111111111111111111111");return t.eddsa.findPda(r,[(0,Ft.publicKey)().serialize(e.authority),(0,Ft.u64)().serialize(e.recentSlot)])}n(gA,"findAddressLookupTablePda");Kt.findAddressLookupTablePda=gA;async function Kde(t,e,r){return aN(t,gA(t,e),r)}n(Kde,"fetchAddressLookupTableFromSeeds");Kt.fetchAddressLookupTableFromSeeds=Kde;async function Lde(t,e,r){return nN(t,gA(t,e),r)}n(Lde,"safeFetchAddressLookupTableFromSeeds");Kt.safeFetchAddressLookupTableFromSeeds=Lde});var lN=v(qr=>{"use strict";Object.defineProperty(qr,"__esModule",{value:!0});qr.getMintSize=qr.getMintGpaBuilder=qr.safeFetchAllMint=qr.fetchAllMint=qr.safeFetchMint=qr.fetchMint=qr.deserializeMint=qr.getMintAccountDataSerializer=void 0;var Do=K(),zr=V();function oN(){return(0,zr.struct)([["mintAuthority",(0,zr.option)((0,zr.publicKey)(),{prefix:(0,zr.u32)(),fixed:!0})],["supply",(0,zr.u64)()],["decimals",(0,zr.u8)()],["isInitialized",(0,zr.bool)()],["freezeAuthority",(0,zr.option)((0,zr.publicKey)(),{prefix:(0,zr.u32)(),fixed:!0})]],{description:"MintAccountData"})}n(oN,"getMintAccountDataSerializer");qr.getMintAccountDataSerializer=oN;function qd(t){return(0,Do.deserializeAccount)(t,oN())}n(qd,"deserializeMint");qr.deserializeMint=qd;async function Ude(t,e,r){let i=await t.rpc.getAccount((0,Do.publicKey)(e,!1),r);return(0,Do.assertAccountExists)(i,"Mint"),qd(i)}n(Ude,"fetchMint");qr.fetchMint=Ude;async function jde(t,e,r){let i=await t.rpc.getAccount((0,Do.publicKey)(e,!1),r);return i.exists?qd(i):null}n(jde,"safeFetchMint");qr.safeFetchMint=jde;async function Hde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Do.publicKey)(a,!1)),r)).map(a=>((0,Do.assertAccountExists)(a,"Mint"),qd(a)))}n(Hde,"fetchAllMint");qr.fetchAllMint=Hde;async function $de(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Do.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>qd(a))}n($de,"safeFetchAllMint");qr.safeFetchAllMint=$de;function Gde(t){let e=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA");return(0,Do.gpaBuilder)(t,e).registerFields({mintAuthority:[0,(0,zr.option)((0,zr.publicKey)(),{prefix:(0,zr.u32)(),fixed:!0})],supply:[36,(0,zr.u64)()],decimals:[44,(0,zr.u8)()],isInitialized:[45,(0,zr.bool)()],freezeAuthority:[46,(0,zr.option)((0,zr.publicKey)(),{prefix:(0,zr.u32)(),fixed:!0})]}).deserializeUsing(r=>qd(r)).whereSize(82)}n(Gde,"getMintGpaBuilder");qr.getMintGpaBuilder=Gde;function Zde(){return 82}n(Zde,"getMintSize");qr.getMintSize=Zde});var uN=v(Wr=>{"use strict";Object.defineProperty(Wr,"__esModule",{value:!0});Wr.getMultisigSize=Wr.getMultisigGpaBuilder=Wr.safeFetchAllMultisig=Wr.fetchAllMultisig=Wr.safeFetchMultisig=Wr.fetchMultisig=Wr.deserializeMultisig=Wr.getMultisigAccountDataSerializer=void 0;var Ro=K(),Va=V();function dN(){return(0,Va.struct)([["m",(0,Va.u8)()],["n",(0,Va.u8)()],["isInitialized",(0,Va.bool)()],["signers",(0,Va.array)((0,Va.publicKey)(),{size:11})]],{description:"MultisigAccountData"})}n(dN,"getMultisigAccountDataSerializer");Wr.getMultisigAccountDataSerializer=dN;function Wd(t){return(0,Ro.deserializeAccount)(t,dN())}n(Wd,"deserializeMultisig");Wr.deserializeMultisig=Wd;async function Jde(t,e,r){let i=await t.rpc.getAccount((0,Ro.publicKey)(e,!1),r);return(0,Ro.assertAccountExists)(i,"Multisig"),Wd(i)}n(Jde,"fetchMultisig");Wr.fetchMultisig=Jde;async function Yde(t,e,r){let i=await t.rpc.getAccount((0,Ro.publicKey)(e,!1),r);return i.exists?Wd(i):null}n(Yde,"safeFetchMultisig");Wr.safeFetchMultisig=Yde;async function Qde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Ro.publicKey)(a,!1)),r)).map(a=>((0,Ro.assertAccountExists)(a,"Multisig"),Wd(a)))}n(Qde,"fetchAllMultisig");Wr.fetchAllMultisig=Qde;async function Xde(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Ro.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>Wd(a))}n(Xde,"safeFetchAllMultisig");Wr.safeFetchAllMultisig=Xde;function eue(t){let e=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA");return(0,Ro.gpaBuilder)(t,e).registerFields({m:[0,(0,Va.u8)()],n:[1,(0,Va.u8)()],isInitialized:[2,(0,Va.bool)()],signers:[3,(0,Va.array)((0,Va.publicKey)(),{size:11})]}).deserializeUsing(r=>Wd(r)).whereSize(355)}n(eue,"getMultisigGpaBuilder");Wr.getMultisigGpaBuilder=eue;function tue(){return 355}n(tue,"getMultisigSize");Wr.getMultisigSize=tue});var pN=v(Vl=>{"use strict";Object.defineProperty(Vl,"__esModule",{value:!0});Vl.getAuthorityTypeSerializer=Vl.AuthorityType=void 0;var rue=V(),cN;(function(t){t[t.MintTokens=0]="MintTokens",t[t.FreezeAccount=1]="FreezeAccount",t[t.AccountOwner=2]="AccountOwner",t[t.CloseAccount=3]="CloseAccount"})(cN=Vl.AuthorityType||(Vl.AuthorityType={}));function iue(){return(0,rue.scalarEnum)(cN,{description:"AuthorityType"})}n(iue,"getAuthorityTypeSerializer");Vl.getAuthorityTypeSerializer=iue});var fN=v(Fl=>{"use strict";Object.defineProperty(Fl,"__esModule",{value:!0});Fl.getTokenStateSerializer=Fl.TokenState=void 0;var aue=V(),mN;(function(t){t[t.Uninitialized=0]="Uninitialized",t[t.Initialized=1]="Initialized",t[t.Frozen=2]="Frozen"})(mN=Fl.TokenState||(Fl.TokenState={}));function nue(){return(0,aue.scalarEnum)(mN,{description:"TokenState"})}n(nue,"getTokenStateSerializer");Fl.getTokenStateSerializer=nue});var i5=v(Bo=>{"use strict";var sue=Bo&&Bo.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),hN=Bo&&Bo.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&sue(e,t,r)};Object.defineProperty(Bo,"__esModule",{value:!0});hN(pN(),Bo);hN(fN(),Bo)});var bN=v(Vr=>{"use strict";Object.defineProperty(Vr,"__esModule",{value:!0});Vr.getTokenSize=Vr.getTokenGpaBuilder=Vr.safeFetchAllToken=Vr.fetchAllToken=Vr.safeFetchToken=Vr.fetchToken=Vr.deserializeToken=Vr.getTokenAccountDataSerializer=void 0;var Co=K(),st=V(),gN=i5();function yN(){return(0,st.struct)([["mint",(0,st.publicKey)()],["owner",(0,st.publicKey)()],["amount",(0,st.u64)()],["delegate",(0,st.option)((0,st.publicKey)(),{prefix:(0,st.u32)(),fixed:!0})],["state",(0,gN.getTokenStateSerializer)()],["isNative",(0,st.option)((0,st.u64)(),{prefix:(0,st.u32)(),fixed:!0})],["delegatedAmount",(0,st.u64)()],["closeAuthority",(0,st.option)((0,st.publicKey)(),{prefix:(0,st.u32)(),fixed:!0})]],{description:"TokenAccountData"})}n(yN,"getTokenAccountDataSerializer");Vr.getTokenAccountDataSerializer=yN;function Vd(t){return(0,Co.deserializeAccount)(t,yN())}n(Vd,"deserializeToken");Vr.deserializeToken=Vd;async function oue(t,e,r){let i=await t.rpc.getAccount((0,Co.publicKey)(e,!1),r);return(0,Co.assertAccountExists)(i,"Token"),Vd(i)}n(oue,"fetchToken");Vr.fetchToken=oue;async function lue(t,e,r){let i=await t.rpc.getAccount((0,Co.publicKey)(e,!1),r);return i.exists?Vd(i):null}n(lue,"safeFetchToken");Vr.safeFetchToken=lue;async function due(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Co.publicKey)(a,!1)),r)).map(a=>((0,Co.assertAccountExists)(a,"Token"),Vd(a)))}n(due,"fetchAllToken");Vr.fetchAllToken=due;async function uue(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Co.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>Vd(a))}n(uue,"safeFetchAllToken");Vr.safeFetchAllToken=uue;function cue(t){let e=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA");return(0,Co.gpaBuilder)(t,e).registerFields({mint:[0,(0,st.publicKey)()],owner:[32,(0,st.publicKey)()],amount:[64,(0,st.u64)()],delegate:[72,(0,st.option)((0,st.publicKey)(),{prefix:(0,st.u32)(),fixed:!0})],state:[108,(0,gN.getTokenStateSerializer)()],isNative:[109,(0,st.option)((0,st.u64)(),{prefix:(0,st.u32)(),fixed:!0})],delegatedAmount:[121,(0,st.u64)()],closeAuthority:[129,(0,st.option)((0,st.publicKey)(),{prefix:(0,st.u32)(),fixed:!0})]}).deserializeUsing(r=>Vd(r)).whereSize(165)}n(cue,"getTokenGpaBuilder");Vr.getTokenGpaBuilder=cue;function pue(){return 165}n(pue,"getTokenSize");Vr.getTokenSize=pue});var n5=v(hn=>{"use strict";var mue=hn&&hn.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),a5=hn&&hn.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&mue(e,t,r)};Object.defineProperty(hn,"__esModule",{value:!0});a5(sN(),hn);a5(lN(),hn);a5(uN(),hn);a5(bN(),hn)});var SN=v(gn=>{"use strict";Object.defineProperty(gn,"__esModule",{value:!0});gn.getMplSystemExtrasErrorFromName=gn.getMplSystemExtrasErrorFromCode=gn.SysExInvalidOwnerForSourceError=gn.SysExInvalidSystemProgramError=void 0;var vN=K(),yA=new Map,bA=new Map,Am=class extends vN.ProgramError{static{n(this,"SysExInvalidSystemProgramError")}constructor(e,r){super("Invalid System Program",e,r),this.name="InvalidSystemProgram",this.code=0}};gn.SysExInvalidSystemProgramError=Am;yA.set(0,Am);bA.set("InvalidSystemProgram",Am);var _m=class extends vN.ProgramError{static{n(this,"SysExInvalidOwnerForSourceError")}constructor(e,r){super("Invalid Program Owner For The Source Account",e,r),this.name="InvalidOwnerForSource",this.code=1}};gn.SysExInvalidOwnerForSourceError=_m;yA.set(1,_m);bA.set("InvalidOwnerForSource",_m);function fue(t,e,r){let i=yA.get(t);return i?new i(e,r):null}n(fue,"getMplSystemExtrasErrorFromCode");gn.getMplSystemExtrasErrorFromCode=fue;function hue(t,e,r){let i=bA.get(t);return i?new i(e,r):null}n(hue,"getMplSystemExtrasErrorFromName");gn.getMplSystemExtrasErrorFromName=hue});var wN=v(Lt=>{"use strict";Object.defineProperty(Lt,"__esModule",{value:!0});Lt.getMplTokenExtrasErrorFromName=Lt.getMplTokenExtrasErrorFromCode=Lt.TokExCannotCreateNonAssociatedTokenError=Lt.TokExInvalidTokenOwnerError=Lt.TokExInvalidTokenMintError=Lt.TokExInvalidProgramOwnerError=Lt.TokExInvalidAssociatedTokenAccountError=Lt.TokExInvalidAssociatedTokenProgramError=Lt.TokExInvalidTokenProgramError=Lt.TokExInvalidSystemProgramError=void 0;var Oo=K(),ts=new Map,rs=new Map,km=class extends Oo.ProgramError{static{n(this,"TokExInvalidSystemProgramError")}constructor(e,r){super("Invalid System Program",e,r),this.name="InvalidSystemProgram",this.code=0}};Lt.TokExInvalidSystemProgramError=km;ts.set(0,km);rs.set("InvalidSystemProgram",km);var Em=class extends Oo.ProgramError{static{n(this,"TokExInvalidTokenProgramError")}constructor(e,r){super("Invalid Token Program",e,r),this.name="InvalidTokenProgram",this.code=1}};Lt.TokExInvalidTokenProgramError=Em;ts.set(1,Em);rs.set("InvalidTokenProgram",Em);var Pm=class extends Oo.ProgramError{static{n(this,"TokExInvalidAssociatedTokenProgramError")}constructor(e,r){super("Invalid Associated Token Program",e,r),this.name="InvalidAssociatedTokenProgram",this.code=2}};Lt.TokExInvalidAssociatedTokenProgramError=Pm;ts.set(2,Pm);rs.set("InvalidAssociatedTokenProgram",Pm);var Tm=class extends Oo.ProgramError{static{n(this,"TokExInvalidAssociatedTokenAccountError")}constructor(e,r){super("Invalid Associated Token Account: it should derive from the provided mint and owner",e,r),this.name="InvalidAssociatedTokenAccount",this.code=3}};Lt.TokExInvalidAssociatedTokenAccountError=Tm;ts.set(3,Tm);rs.set("InvalidAssociatedTokenAccount",Tm);var zm=class extends Oo.ProgramError{static{n(this,"TokExInvalidProgramOwnerError")}constructor(e,r){super("Invalid Program Owner",e,r),this.name="InvalidProgramOwner",this.code=4}};Lt.TokExInvalidProgramOwnerError=zm;ts.set(4,zm);rs.set("InvalidProgramOwner",zm);var Im=class extends Oo.ProgramError{static{n(this,"TokExInvalidTokenMintError")}constructor(e,r){super("Invalid Token Mint: it should be the same as the provided mint account",e,r),this.name="InvalidTokenMint",this.code=5}};Lt.TokExInvalidTokenMintError=Im;ts.set(5,Im);rs.set("InvalidTokenMint",Im);var Mm=class extends Oo.ProgramError{static{n(this,"TokExInvalidTokenOwnerError")}constructor(e,r){super("Invalid Program Owner: it should be the same as the provided owner account",e,r),this.name="InvalidTokenOwner",this.code=6}};Lt.TokExInvalidTokenOwnerError=Mm;ts.set(6,Mm);rs.set("InvalidTokenOwner",Mm);var Dm=class extends Oo.ProgramError{static{n(this,"TokExCannotCreateNonAssociatedTokenError")}constructor(e,r){super("Cannot create non-associated token accounts as they would need to sign the transaction. Please provide an associated token account instead",e,r),this.name="CannotCreateNonAssociatedToken",this.code=7}};Lt.TokExCannotCreateNonAssociatedTokenError=Dm;ts.set(7,Dm);rs.set("CannotCreateNonAssociatedToken",Dm);function gue(t,e,r){let i=ts.get(t);return i?new i(e,r):null}n(gue,"getMplTokenExtrasErrorFromCode");Lt.getMplTokenExtrasErrorFromCode=gue;function yue(t,e,r){let i=rs.get(t);return i?new i(e,r):null}n(yue,"getMplTokenExtrasErrorFromName");Lt.getMplTokenExtrasErrorFromName=yue});var xN=v(Fd=>{"use strict";Object.defineProperty(Fd,"__esModule",{value:!0});Fd.getSplAddressLookupTableErrorFromName=Fd.getSplAddressLookupTableErrorFromCode=void 0;var bue=new Map,vue=new Map;function Sue(t,e,r){let i=bue.get(t);return i?new i(e,r):null}n(Sue,"getSplAddressLookupTableErrorFromCode");Fd.getSplAddressLookupTableErrorFromCode=Sue;function wue(t,e,r){let i=vue.get(t);return i?new i(e,r):null}n(wue,"getSplAddressLookupTableErrorFromName");Fd.getSplAddressLookupTableErrorFromName=wue});var kN=v(No=>{"use strict";Object.defineProperty(No,"__esModule",{value:!0});No.getSplAssociatedTokenErrorFromName=No.getSplAssociatedTokenErrorFromCode=No.AtaInvalidOwnerError=void 0;var xue=K(),AN=new Map,_N=new Map,Rm=class extends xue.ProgramError{static{n(this,"AtaInvalidOwnerError")}constructor(e,r){super("Associated token account owner does not match address derivation",e,r),this.name="InvalidOwner",this.code=0}};No.AtaInvalidOwnerError=Rm;AN.set(0,Rm);_N.set("InvalidOwner",Rm);function Aue(t,e,r){let i=AN.get(t);return i?new i(e,r):null}n(Aue,"getSplAssociatedTokenErrorFromCode");No.getSplAssociatedTokenErrorFromCode=Aue;function _ue(t,e,r){let i=_N.get(t);return i?new i(e,r):null}n(_ue,"getSplAssociatedTokenErrorFromName");No.getSplAssociatedTokenErrorFromName=_ue});var EN=v(Kd=>{"use strict";Object.defineProperty(Kd,"__esModule",{value:!0});Kd.getSplComputeBudgetErrorFromName=Kd.getSplComputeBudgetErrorFromCode=void 0;var kue=new Map,Eue=new Map;function Pue(t,e,r){let i=kue.get(t);return i?new i(e,r):null}n(Pue,"getSplComputeBudgetErrorFromCode");Kd.getSplComputeBudgetErrorFromCode=Pue;function Tue(t,e,r){let i=Eue.get(t);return i?new i(e,r):null}n(Tue,"getSplComputeBudgetErrorFromName");Kd.getSplComputeBudgetErrorFromName=Tue});var PN=v(Ld=>{"use strict";Object.defineProperty(Ld,"__esModule",{value:!0});Ld.getSplMemoErrorFromName=Ld.getSplMemoErrorFromCode=void 0;var zue=new Map,Iue=new Map;function Mue(t,e,r){let i=zue.get(t);return i?new i(e,r):null}n(Mue,"getSplMemoErrorFromCode");Ld.getSplMemoErrorFromCode=Mue;function Due(t,e,r){let i=Iue.get(t);return i?new i(e,r):null}n(Due,"getSplMemoErrorFromName");Ld.getSplMemoErrorFromName=Due});var TN=v(Ud=>{"use strict";Object.defineProperty(Ud,"__esModule",{value:!0});Ud.getSplSystemErrorFromName=Ud.getSplSystemErrorFromCode=void 0;var Rue=new Map,Bue=new Map;function Cue(t,e,r){let i=Rue.get(t);return i?new i(e,r):null}n(Cue,"getSplSystemErrorFromCode");Ud.getSplSystemErrorFromCode=Cue;function Oue(t,e,r){let i=Bue.get(t);return i?new i(e,r):null}n(Oue,"getSplSystemErrorFromName");Ud.getSplSystemErrorFromName=Oue});var zN=v(Ae=>{"use strict";Object.defineProperty(Ae,"__esModule",{value:!0});Ae.getSplTokenErrorFromName=Ae.getSplTokenErrorFromCode=Ae.TokNonNativeNotSupportedError=Ae.TokMintDecimalsMismatchError=Ae.TokAccountFrozenError=Ae.TokMintCannotFreezeError=Ae.TokAuthorityTypeNotSupportedError=Ae.TokOverflowError=Ae.TokInvalidStateError=Ae.TokInvalidInstructionError=Ae.TokNonNativeHasBalanceError=Ae.TokNativeNotSupportedError=Ae.TokUninitializedStateError=Ae.TokInvalidNumberOfRequiredSignersError=Ae.TokInvalidNumberOfProvidedSignersError=Ae.TokAlreadyInUseError=Ae.TokFixedSupplyError=Ae.TokOwnerMismatchError=Ae.TokMintMismatchError=Ae.TokInvalidMintError=Ae.TokInsufficientFundsError=Ae.TokNotRentExemptError=void 0;var yr=K(),Gt=new Map,Zt=new Map,Bm=class extends yr.ProgramError{static{n(this,"TokNotRentExemptError")}constructor(e,r){super("Lamport balance below rent-exempt threshold",e,r),this.name="NotRentExempt",this.code=0}};Ae.TokNotRentExemptError=Bm;Gt.set(0,Bm);Zt.set("NotRentExempt",Bm);var Cm=class extends yr.ProgramError{static{n(this,"TokInsufficientFundsError")}constructor(e,r){super("Insufficient funds",e,r),this.name="InsufficientFunds",this.code=1}};Ae.TokInsufficientFundsError=Cm;Gt.set(1,Cm);Zt.set("InsufficientFunds",Cm);var Om=class extends yr.ProgramError{static{n(this,"TokInvalidMintError")}constructor(e,r){super("Invalid Mint",e,r),this.name="InvalidMint",this.code=2}};Ae.TokInvalidMintError=Om;Gt.set(2,Om);Zt.set("InvalidMint",Om);var Nm=class extends yr.ProgramError{static{n(this,"TokMintMismatchError")}constructor(e,r){super("Account not associated with this Mint",e,r),this.name="MintMismatch",this.code=3}};Ae.TokMintMismatchError=Nm;Gt.set(3,Nm);Zt.set("MintMismatch",Nm);var qm=class extends yr.ProgramError{static{n(this,"TokOwnerMismatchError")}constructor(e,r){super("Owner does not match",e,r),this.name="OwnerMismatch",this.code=4}};Ae.TokOwnerMismatchError=qm;Gt.set(4,qm);Zt.set("OwnerMismatch",qm);var Wm=class extends yr.ProgramError{static{n(this,"TokFixedSupplyError")}constructor(e,r){super("Fixed supply",e,r),this.name="FixedSupply",this.code=5}};Ae.TokFixedSupplyError=Wm;Gt.set(5,Wm);Zt.set("FixedSupply",Wm);var Vm=class extends yr.ProgramError{static{n(this,"TokAlreadyInUseError")}constructor(e,r){super("Already in use",e,r),this.name="AlreadyInUse",this.code=6}};Ae.TokAlreadyInUseError=Vm;Gt.set(6,Vm);Zt.set("AlreadyInUse",Vm);var Fm=class extends yr.ProgramError{static{n(this,"TokInvalidNumberOfProvidedSignersError")}constructor(e,r){super("Invalid number of provided signers",e,r),this.name="InvalidNumberOfProvidedSigners",this.code=7}};Ae.TokInvalidNumberOfProvidedSignersError=Fm;Gt.set(7,Fm);Zt.set("InvalidNumberOfProvidedSigners",Fm);var Km=class extends yr.ProgramError{static{n(this,"TokInvalidNumberOfRequiredSignersError")}constructor(e,r){super("Invalid number of required signers",e,r),this.name="InvalidNumberOfRequiredSigners",this.code=8}};Ae.TokInvalidNumberOfRequiredSignersError=Km;Gt.set(8,Km);Zt.set("InvalidNumberOfRequiredSigners",Km);var Lm=class extends yr.ProgramError{static{n(this,"TokUninitializedStateError")}constructor(e,r){super("State is unititialized",e,r),this.name="UninitializedState",this.code=9}};Ae.TokUninitializedStateError=Lm;Gt.set(9,Lm);Zt.set("UninitializedState",Lm);var Um=class extends yr.ProgramError{static{n(this,"TokNativeNotSupportedError")}constructor(e,r){super("Instruction does not support native tokens",e,r),this.name="NativeNotSupported",this.code=10}};Ae.TokNativeNotSupportedError=Um;Gt.set(10,Um);Zt.set("NativeNotSupported",Um);var jm=class extends yr.ProgramError{static{n(this,"TokNonNativeHasBalanceError")}constructor(e,r){super("Non-native account can only be closed if its balance is zero",e,r),this.name="NonNativeHasBalance",this.code=11}};Ae.TokNonNativeHasBalanceError=jm;Gt.set(11,jm);Zt.set("NonNativeHasBalance",jm);var Hm=class extends yr.ProgramError{static{n(this,"TokInvalidInstructionError")}constructor(e,r){super("Invalid instruction",e,r),this.name="InvalidInstruction",this.code=12}};Ae.TokInvalidInstructionError=Hm;Gt.set(12,Hm);Zt.set("InvalidInstruction",Hm);var $m=class extends yr.ProgramError{static{n(this,"TokInvalidStateError")}constructor(e,r){super("State is invalid for requested operation",e,r),this.name="InvalidState",this.code=13}};Ae.TokInvalidStateError=$m;Gt.set(13,$m);Zt.set("InvalidState",$m);var Gm=class extends yr.ProgramError{static{n(this,"TokOverflowError")}constructor(e,r){super("Operation overflowed",e,r),this.name="Overflow",this.code=14}};Ae.TokOverflowError=Gm;Gt.set(14,Gm);Zt.set("Overflow",Gm);var Zm=class extends yr.ProgramError{static{n(this,"TokAuthorityTypeNotSupportedError")}constructor(e,r){super("Account does not support specified authority type",e,r),this.name="AuthorityTypeNotSupported",this.code=15}};Ae.TokAuthorityTypeNotSupportedError=Zm;Gt.set(15,Zm);Zt.set("AuthorityTypeNotSupported",Zm);var Jm=class extends yr.ProgramError{static{n(this,"TokMintCannotFreezeError")}constructor(e,r){super("This token mint cannot freeze accounts",e,r),this.name="MintCannotFreeze",this.code=16}};Ae.TokMintCannotFreezeError=Jm;Gt.set(16,Jm);Zt.set("MintCannotFreeze",Jm);var Ym=class extends yr.ProgramError{static{n(this,"TokAccountFrozenError")}constructor(e,r){super("Account is frozen",e,r),this.name="AccountFrozen",this.code=17}};Ae.TokAccountFrozenError=Ym;Gt.set(17,Ym);Zt.set("AccountFrozen",Ym);var Qm=class extends yr.ProgramError{static{n(this,"TokMintDecimalsMismatchError")}constructor(e,r){super("The provided decimals value different from the Mint decimals",e,r),this.name="MintDecimalsMismatch",this.code=18}};Ae.TokMintDecimalsMismatchError=Qm;Gt.set(18,Qm);Zt.set("MintDecimalsMismatch",Qm);var Xm=class extends yr.ProgramError{static{n(this,"TokNonNativeNotSupportedError")}constructor(e,r){super("Instruction does not support non-native tokens",e,r),this.name="NonNativeNotSupported",this.code=19}};Ae.TokNonNativeNotSupportedError=Xm;Gt.set(19,Xm);Zt.set("NonNativeNotSupported",Xm);function Nue(t,e,r){let i=Gt.get(t);return i?new i(e,r):null}n(Nue,"getSplTokenErrorFromCode");Ae.getSplTokenErrorFromCode=Nue;function que(t,e,r){let i=Zt.get(t);return i?new i(e,r):null}n(que,"getSplTokenErrorFromName");Ae.getSplTokenErrorFromName=que});var yn=v(Ei=>{"use strict";var Wue=Ei&&Ei.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),qo=Ei&&Ei.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Wue(e,t,r)};Object.defineProperty(Ei,"__esModule",{value:!0});qo(SN(),Ei);qo(wN(),Ei);qo(xN(),Ei);qo(kN(),Ei);qo(EN(),Ei);qo(PN(),Ei);qo(TN(),Ei);qo(zN(),Ei)});var _e=v(bn=>{"use strict";Object.defineProperty(bn,"__esModule",{value:!0});bn.getAccountMetasAndSigners=bn.expectPda=bn.expectPublicKey=bn.expectSome=void 0;var ef=K();function Vue(t){if(t==null)throw new Error("Expected a value but received null or undefined.");return t}n(Vue,"expectSome");bn.expectSome=Vue;function Fue(t){if(!t)throw new Error("Expected a PublicKey.");return(0,ef.publicKey)(t,!1)}n(Fue,"expectPublicKey");bn.expectPublicKey=Fue;function Kue(t){if(!t||!Array.isArray(t)||!(0,ef.isPda)(t))throw new Error("Expected a PDA.");return t}n(Kue,"expectPda");bn.expectPda=Kue;function Lue(t,e,r){let i=[],a=[];return t.forEach(s=>{if(!s.value){if(e==="omitted")return;i.push({pubkey:r,isSigner:!1,isWritable:!1});return}(0,ef.isSigner)(s.value)&&a.push(s.value),i.push({pubkey:(0,ef.publicKey)(s.value,!1),isSigner:(0,ef.isSigner)(s.value),isWritable:s.isWritable})}),[i,a]}n(Lue,"getAccountMetasAndSigners");bn.getAccountMetasAndSigners=Lue});var DN=v(jd=>{"use strict";Object.defineProperty(jd,"__esModule",{value:!0});jd.addMemo=jd.getAddMemoInstructionDataSerializer=void 0;var Uue=K(),IN=V(),jue=_e();function MN(){return(0,IN.struct)([["memo",(0,IN.string)()]],{description:"AddMemoInstructionData"})}n(MN,"getAddMemoInstructionDataSerializer");jd.getAddMemoInstructionDataSerializer=MN;function Hue(t,e){let r=t.programs.getPublicKey("splMemo","Memo1UhkJRfHyvLMcVucJwxXeuD728EqVDDwQDxFMNo"),i={},a={...e},s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,jue.getAccountMetasAndSigners)(s,"programId",r),d=MN().serialize(a),u=0;return(0,Uue.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Hue,"addMemo");jd.addMemo=Hue});var BN=v(Hd=>{"use strict";Object.defineProperty(Hd,"__esModule",{value:!0});Hd.amountToUiAmount=Hd.getAmountToUiAmountInstructionDataSerializer=void 0;var $ue=K(),s5=V(),Gue=_e();function RN(){return(0,s5.mapSerializer)((0,s5.struct)([["discriminator",(0,s5.u8)()],["amount",(0,s5.u64)()]],{description:"AmountToUiAmountInstructionData"}),t=>({...t,discriminator:23}))}n(RN,"getAmountToUiAmountInstructionDataSerializer");Hd.getAmountToUiAmountInstructionDataSerializer=RN;function Zue(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={mint:{index:0,isWritable:!1,value:e.mint??null}},a={...e},s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,Gue.getAccountMetasAndSigners)(s,"programId",r),d=RN().serialize(a),u=0;return(0,$ue.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Zue,"amountToUiAmount");Hd.amountToUiAmount=Zue});var ON=v($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});$d.approveTokenDelegate=$d.getApproveTokenDelegateInstructionDataSerializer=void 0;var Jue=K(),o5=V(),Yue=_e();function CN(){return(0,o5.mapSerializer)((0,o5.struct)([["discriminator",(0,o5.u8)()],["amount",(0,o5.u64)()]],{description:"ApproveTokenDelegateInstructionData"}),t=>({...t,discriminator:4}))}n(CN,"getApproveTokenDelegateInstructionDataSerializer");$d.getApproveTokenDelegateInstructionDataSerializer=CN;function Que(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={source:{index:0,isWritable:!0,value:e.source??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},owner:{index:2,isWritable:!1,value:e.owner??null}},a={...e},s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,Yue.getAccountMetasAndSigners)(s,"programId",r),d=CN().serialize(a),u=0;return(0,Jue.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Que,"approveTokenDelegate");$d.approveTokenDelegate=Que});var qN=v(Gd=>{"use strict";Object.defineProperty(Gd,"__esModule",{value:!0});Gd.approveTokenDelegateChecked=Gd.getApproveTokenDelegateCheckedInstructionDataSerializer=void 0;var Xue=K(),tf=V(),ece=_e();function NN(){return(0,tf.mapSerializer)((0,tf.struct)([["discriminator",(0,tf.u8)()],["amount",(0,tf.u64)()],["decimals",(0,tf.u8)()]],{description:"ApproveTokenDelegateCheckedInstructionData"}),t=>({...t,discriminator:13}))}n(NN,"getApproveTokenDelegateCheckedInstructionDataSerializer");Gd.getApproveTokenDelegateCheckedInstructionDataSerializer=NN;function tce(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={source:{index:0,isWritable:!0,value:e.source??null},mint:{index:1,isWritable:!1,value:e.mint??null},delegate:{index:2,isWritable:!1,value:e.delegate??null},owner:{index:3,isWritable:!1,value:e.owner??null}},a={...e},s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,ece.getAccountMetasAndSigners)(s,"programId",r),d=NN().serialize(a),u=0;return(0,Xue.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(tce,"approveTokenDelegateChecked");Gd.approveTokenDelegateChecked=tce});var VN=v(Zd=>{"use strict";Object.defineProperty(Zd,"__esModule",{value:!0});Zd.burnToken=Zd.getBurnTokenInstructionDataSerializer=void 0;var rce=K(),l5=V(),ice=_e();function WN(){return(0,l5.mapSerializer)((0,l5.struct)([["discriminator",(0,l5.u8)()],["amount",(0,l5.u64)()]],{description:"BurnTokenInstructionData"}),t=>({...t,discriminator:8}))}n(WN,"getBurnTokenInstructionDataSerializer");Zd.getBurnTokenInstructionDataSerializer=WN;function ace(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={account:{index:0,isWritable:!0,value:e.account??null},mint:{index:1,isWritable:!0,value:e.mint??null},authority:{index:2,isWritable:!1,value:e.authority??null}},a={...e};i.authority.value||(i.authority.value=t.identity);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,ice.getAccountMetasAndSigners)(s,"programId",r),d=WN().serialize(a),u=0;return(0,rce.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(ace,"burnToken");Zd.burnToken=ace});var KN=v(Jd=>{"use strict";Object.defineProperty(Jd,"__esModule",{value:!0});Jd.burnTokenChecked=Jd.getBurnTokenCheckedInstructionDataSerializer=void 0;var nce=K(),rf=V(),sce=_e();function FN(){return(0,rf.mapSerializer)((0,rf.struct)([["discriminator",(0,rf.u8)()],["amount",(0,rf.u64)()],["decimals",(0,rf.u8)()]],{description:"BurnTokenCheckedInstructionData"}),t=>({...t,discriminator:15}))}n(FN,"getBurnTokenCheckedInstructionDataSerializer");Jd.getBurnTokenCheckedInstructionDataSerializer=FN;function oce(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={account:{index:0,isWritable:!0,value:e.account??null},mint:{index:1,isWritable:!0,value:e.mint??null},authority:{index:2,isWritable:!1,value:e.authority??null}},a={...e};i.authority.value||(i.authority.value=t.identity);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,sce.getAccountMetasAndSigners)(s,"programId",r),d=FN().serialize(a),u=0;return(0,nce.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(oce,"burnTokenChecked");Jd.burnTokenChecked=oce});var UN=v(Yd=>{"use strict";Object.defineProperty(Yd,"__esModule",{value:!0});Yd.closeLut=Yd.getCloseLutInstructionDataSerializer=void 0;var lce=K(),vA=V(),dce=_e();function LN(){return(0,vA.mapSerializer)((0,vA.struct)([["discriminator",(0,vA.u32)()]],{description:"CloseLutInstructionData"}),t=>({...t,discriminator:4}))}n(LN,"getCloseLutInstructionDataSerializer");Yd.getCloseLutInstructionDataSerializer=LN;function uce(t,e){let r=t.programs.getPublicKey("splAddressLookupTable","AddressLookupTab1e1111111111111111111111111"),i={address:{index:0,isWritable:!0,value:e.address??null},authority:{index:1,isWritable:!1,value:e.authority??null},recipient:{index:2,isWritable:!0,value:e.recipient??null}};i.authority.value||(i.authority.value=t.identity);let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,dce.getAccountMetasAndSigners)(a,"programId",r),l=LN().serialize({}),d=0;return(0,lce.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(uce,"closeLut");Yd.closeLut=uce});var HN=v(Qd=>{"use strict";Object.defineProperty(Qd,"__esModule",{value:!0});Qd.closeToken=Qd.getCloseTokenInstructionDataSerializer=void 0;var cce=K(),SA=V(),pce=_e();function jN(){return(0,SA.mapSerializer)((0,SA.struct)([["discriminator",(0,SA.u8)()]],{description:"CloseTokenInstructionData"}),t=>({...t,discriminator:9}))}n(jN,"getCloseTokenInstructionDataSerializer");Qd.getCloseTokenInstructionDataSerializer=jN;function mce(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={account:{index:0,isWritable:!0,value:e.account??null},destination:{index:1,isWritable:!0,value:e.destination??null},owner:{index:2,isWritable:!1,value:e.owner??null}},a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,pce.getAccountMetasAndSigners)(a,"programId",r),l=jN().serialize({}),d=0;return(0,cce.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(mce,"closeToken");Qd.closeToken=mce});var GN=v(eu=>{"use strict";Object.defineProperty(eu,"__esModule",{value:!0});eu.createAccount=eu.getCreateAccountInstructionDataSerializer=void 0;var wA=K(),Xd=V(),fce=_e();function $N(){return(0,Xd.mapSerializer)((0,Xd.struct)([["discriminator",(0,Xd.u32)()],["lamports",(0,wA.mapAmountSerializer)((0,Xd.u64)(),"SOL",9)],["space",(0,Xd.u64)()],["programId",(0,Xd.publicKey)()]],{description:"CreateAccountInstructionData"}),t=>({...t,discriminator:0}))}n($N,"getCreateAccountInstructionDataSerializer");eu.getCreateAccountInstructionDataSerializer=$N;function hce(t,e){let r=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i={payer:{index:0,isWritable:!0,value:e.payer??null},newAccount:{index:1,isWritable:!0,value:e.newAccount??null}},a={...e};i.payer.value||(i.payer.value=t.payer);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,fce.getAccountMetasAndSigners)(s,"programId",r),d=$N().serialize(a),u=Number(e.space)+wA.ACCOUNT_HEADER_SIZE;return(0,wA.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(hce,"createAccount");eu.createAccount=hce});var YN=v(tu=>{"use strict";Object.defineProperty(tu,"__esModule",{value:!0});tu.createAccountWithRent=tu.getCreateAccountWithRentInstructionDataSerializer=void 0;var ZN=K(),af=V(),gce=_e();function JN(){return(0,af.mapSerializer)((0,af.struct)([["discriminator",(0,af.u8)()],["space",(0,af.u64)()],["programId",(0,af.publicKey)()]],{description:"CreateAccountWithRentInstructionData"}),t=>({...t,discriminator:0}))}n(JN,"getCreateAccountWithRentInstructionDataSerializer");tu.getCreateAccountWithRentInstructionDataSerializer=JN;function yce(t,e){let r=t.programs.getPublicKey("mplSystemExtras","SysExL2WDyJi9aRZrXorrjHJut3JwHQ7R9bTyctbNNG"),i={payer:{index:0,isWritable:!0,value:e.payer??null},newAccount:{index:1,isWritable:!0,value:e.newAccount??null},systemProgram:{index:2,isWritable:!1,value:e.systemProgram??null}},a={...e};i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,gce.getAccountMetasAndSigners)(s,"programId",r),d=JN().serialize(a),u=Number(e.space)+ZN.ACCOUNT_HEADER_SIZE;return(0,ZN.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(yce,"createAccountWithRent");tu.createAccountWithRent=yce});var QN=v(d5=>{"use strict";Object.defineProperty(d5,"__esModule",{value:!0});d5.findAssociatedTokenPda=void 0;var xA=V();function bce(t,e){let r=t.programs.getPublicKey("splAssociatedToken"),i=t.programs.getPublicKey("splToken");return t.eddsa.findPda(r,[(0,xA.publicKey)().serialize(e.owner),(0,xA.publicKey)().serialize(i),(0,xA.publicKey)().serialize(e.mint)])}n(bce,"findAssociatedTokenPda");d5.findAssociatedTokenPda=bce});var XN=v(u5=>{"use strict";Object.defineProperty(u5,"__esModule",{value:!0});u5.resolveExtendLutBytes=void 0;var vce=n((t,e,r,i)=>32*r.addresses.length,"resolveExtendLutBytes");u5.resolveExtendLutBytes=vce});var ru=v(Wo=>{"use strict";var Sce=Wo&&Wo.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),eq=Wo&&Wo.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Sce(e,t,r)};Object.defineProperty(Wo,"__esModule",{value:!0});eq(QN(),Wo);eq(XN(),Wo)});var rq=v(c5=>{"use strict";Object.defineProperty(c5,"__esModule",{value:!0});c5.createAssociatedToken=void 0;var tq=K(),wce=ru(),xce=n5(),AA=_e();function Ace(t,e){let r=t.programs.getPublicKey("splAssociatedToken","ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"),i={payer:{index:0,isWritable:!0,value:e.payer??null},ata:{index:1,isWritable:!0,value:e.ata??null},owner:{index:2,isWritable:!1,value:e.owner??null},mint:{index:3,isWritable:!1,value:e.mint??null},systemProgram:{index:4,isWritable:!1,value:e.systemProgram??null},tokenProgram:{index:5,isWritable:!1,value:e.tokenProgram??null}};i.payer.value||(i.payer.value=t.payer),i.owner.value||(i.owner.value=t.identity.publicKey),i.ata.value||(i.ata.value=(0,wce.findAssociatedTokenPda)(t,{owner:(0,AA.expectPublicKey)(i.owner.value),mint:(0,AA.expectPublicKey)(i.mint.value)})),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1);let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,AA.getAccountMetasAndSigners)(a,"programId",r),l=new Uint8Array,d=(0,xce.getTokenSize)()+tq.ACCOUNT_HEADER_SIZE;return(0,tq.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(Ace,"createAssociatedToken");c5.createAssociatedToken=Ace});var nq=v(iu=>{"use strict";Object.defineProperty(iu,"__esModule",{value:!0});iu.createEmptyLut=iu.getCreateEmptyLutInstructionDataSerializer=void 0;var iq=K(),nf=V(),_ce=n5(),p5=_e();function aq(){return(0,nf.mapSerializer)((0,nf.struct)([["discriminator",(0,nf.u32)()],["recentSlot",(0,nf.u64)()],["bump",(0,nf.u8)()]],{description:"CreateEmptyLutInstructionData"}),t=>({...t,discriminator:0}))}n(aq,"getCreateEmptyLutInstructionDataSerializer");iu.getCreateEmptyLutInstructionDataSerializer=aq;function kce(t,e){let r=t.programs.getPublicKey("splAddressLookupTable","AddressLookupTab1e1111111111111111111111111"),i={address:{index:0,isWritable:!0,value:e.address??null},authority:{index:1,isWritable:!1,value:e.authority??null},payer:{index:2,isWritable:!0,value:e.payer??null},systemProgram:{index:3,isWritable:!1,value:e.systemProgram??null}},a={...e};i.authority.value||(i.authority.value=t.identity),i.address.value||(i.address.value=(0,_ce.findAddressLookupTablePda)(t,{authority:(0,p5.expectPublicKey)(i.authority.value),recentSlot:(0,p5.expectSome)(a.recentSlot)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),a.bump||(a.bump=(0,p5.expectPda)(i.address.value)[1]);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,p5.getAccountMetasAndSigners)(s,"programId",r),d=aq().serialize(a),u=56+iq.ACCOUNT_HEADER_SIZE;return(0,iq.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(kce,"createEmptyLut");iu.createEmptyLut=kce});var sq=v(m5=>{"use strict";Object.defineProperty(m5,"__esModule",{value:!0});m5.createIdempotentAssociatedToken=void 0;var Ece=K(),Pce=_e();function Tce(t,e){let r=t.programs.getPublicKey("splAssociatedToken","ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"),i={payer:{index:0,isWritable:!0,value:e.payer??null},ata:{index:1,isWritable:!0,value:e.ata??null},owner:{index:2,isWritable:!1,value:e.owner??null},mint:{index:3,isWritable:!1,value:e.mint??null},systemProgram:{index:4,isWritable:!1,value:e.systemProgram??null},tokenProgram:{index:5,isWritable:!1,value:e.tokenProgram??null}};i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1);let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Pce.getAccountMetasAndSigners)(a,"programId",r),l=new Uint8Array,d=0;return(0,Ece.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(Tce,"createIdempotentAssociatedToken");m5.createIdempotentAssociatedToken=Tce});var lq=v(au=>{"use strict";Object.defineProperty(au,"__esModule",{value:!0});au.createTokenIfMissing=au.getCreateTokenIfMissingInstructionDataSerializer=void 0;var zce=K(),_A=V(),Ice=ru(),f5=_e();function oq(){return(0,_A.mapSerializer)((0,_A.struct)([["discriminator",(0,_A.u8)()]],{description:"CreateTokenIfMissingInstructionData"}),t=>({...t,discriminator:0}))}n(oq,"getCreateTokenIfMissingInstructionDataSerializer");au.getCreateTokenIfMissingInstructionDataSerializer=oq;function Mce(t,e){let r=t.programs.getPublicKey("mplTokenExtras","TokExjvjJmhKaRBShsBAsbSvEWMA1AgUNK7ps4SAc2p"),i={payer:{index:0,isWritable:!0,value:e.payer??null},token:{index:1,isWritable:!1,value:e.token??null},mint:{index:2,isWritable:!1,value:e.mint??null},owner:{index:3,isWritable:!1,value:e.owner??null},ata:{index:4,isWritable:!0,value:e.ata??null},systemProgram:{index:5,isWritable:!1,value:e.systemProgram??null},tokenProgram:{index:6,isWritable:!1,value:e.tokenProgram??null},ataProgram:{index:7,isWritable:!1,value:e.ataProgram??null}};i.payer.value||(i.payer.value=t.payer),i.owner.value||(i.owner.value=t.identity.publicKey),i.ata.value||(i.ata.value=(0,Ice.findAssociatedTokenPda)(t,{owner:(0,f5.expectPublicKey)(i.owner.value),mint:(0,f5.expectPublicKey)(i.mint.value)})),i.token.value||(i.token.value=(0,f5.expectSome)(i.ata.value)),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1),i.ataProgram.value||(i.ataProgram.value=t.programs.getPublicKey("splAssociatedToken","ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"),i.ataProgram.isWritable=!1);let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,f5.getAccountMetasAndSigners)(a,"programId",r),l=oq().serialize({}),d=0;return(0,zce.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(Mce,"createTokenIfMissing");au.createTokenIfMissing=Mce});var uq=v(nu=>{"use strict";Object.defineProperty(nu,"__esModule",{value:!0});nu.deactivateLut=nu.getDeactivateLutInstructionDataSerializer=void 0;var Dce=K(),kA=V(),Rce=_e();function dq(){return(0,kA.mapSerializer)((0,kA.struct)([["discriminator",(0,kA.u32)()]],{description:"DeactivateLutInstructionData"}),t=>({...t,discriminator:3}))}n(dq,"getDeactivateLutInstructionDataSerializer");nu.getDeactivateLutInstructionDataSerializer=dq;function Bce(t,e){let r=t.programs.getPublicKey("splAddressLookupTable","AddressLookupTab1e1111111111111111111111111"),i={address:{index:0,isWritable:!0,value:e.address??null},authority:{index:1,isWritable:!1,value:e.authority??null}};i.authority.value||(i.authority.value=t.identity);let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Rce.getAccountMetasAndSigners)(a,"programId",r),l=dq().serialize({}),d=0;return(0,Dce.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(Bce,"deactivateLut");nu.deactivateLut=Bce});var pq=v(ou=>{"use strict";Object.defineProperty(ou,"__esModule",{value:!0});ou.extendLut=ou.getExtendLutInstructionDataSerializer=void 0;var Cce=K(),su=V(),Oce=ru(),Nce=_e();function cq(){return(0,su.mapSerializer)((0,su.struct)([["discriminator",(0,su.u32)()],["addresses",(0,su.array)((0,su.publicKey)(),{size:(0,su.u64)()})]],{description:"ExtendLutInstructionData"}),t=>({...t,discriminator:2}))}n(cq,"getExtendLutInstructionDataSerializer");ou.getExtendLutInstructionDataSerializer=cq;function qce(t,e){let r=t.programs.getPublicKey("splAddressLookupTable","AddressLookupTab1e1111111111111111111111111"),i={address:{index:0,isWritable:!0,value:e.address??null},authority:{index:1,isWritable:!1,value:e.authority??null},payer:{index:2,isWritable:!0,value:e.payer??null},systemProgram:{index:3,isWritable:!1,value:e.systemProgram??null}},a={...e};i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,Nce.getAccountMetasAndSigners)(s,"programId",r),d=cq().serialize(a),u=(0,Oce.resolveExtendLutBytes)(t,i,a,r);return(0,Cce.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(qce,"extendLut");ou.extendLut=qce});var fq=v(lu=>{"use strict";Object.defineProperty(lu,"__esModule",{value:!0});lu.freezeLut=lu.getFreezeLutInstructionDataSerializer=void 0;var Wce=K(),EA=V(),Vce=_e();function mq(){return(0,EA.mapSerializer)((0,EA.struct)([["discriminator",(0,EA.u32)()]],{description:"FreezeLutInstructionData"}),t=>({...t,discriminator:1}))}n(mq,"getFreezeLutInstructionDataSerializer");lu.getFreezeLutInstructionDataSerializer=mq;function Fce(t,e){let r=t.programs.getPublicKey("splAddressLookupTable","AddressLookupTab1e1111111111111111111111111"),i={address:{index:0,isWritable:!0,value:e.address??null},authority:{index:1,isWritable:!1,value:e.authority??null}};i.authority.value||(i.authority.value=t.identity);let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Vce.getAccountMetasAndSigners)(a,"programId",r),l=mq().serialize({}),d=0;return(0,Wce.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(Fce,"freezeLut");lu.freezeLut=Fce});var gq=v(du=>{"use strict";Object.defineProperty(du,"__esModule",{value:!0});du.freezeToken=du.getFreezeTokenInstructionDataSerializer=void 0;var Kce=K(),PA=V(),Lce=_e();function hq(){return(0,PA.mapSerializer)((0,PA.struct)([["discriminator",(0,PA.u8)()]],{description:"FreezeTokenInstructionData"}),t=>({...t,discriminator:10}))}n(hq,"getFreezeTokenInstructionDataSerializer");du.getFreezeTokenInstructionDataSerializer=hq;function Uce(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={account:{index:0,isWritable:!0,value:e.account??null},mint:{index:1,isWritable:!1,value:e.mint??null},owner:{index:2,isWritable:!1,value:e.owner??null}},a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Lce.getAccountMetasAndSigners)(a,"programId",r),l=hq().serialize({}),d=0;return(0,Kce.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(Uce,"freezeToken");du.freezeToken=Uce});var bq=v(uu=>{"use strict";Object.defineProperty(uu,"__esModule",{value:!0});uu.getTokenDataSize=uu.getGetTokenDataSizeInstructionDataSerializer=void 0;var jce=K(),TA=V(),Hce=_e();function yq(){return(0,TA.mapSerializer)((0,TA.struct)([["discriminator",(0,TA.u8)()]],{description:"GetTokenDataSizeInstructionData"}),t=>({...t,discriminator:21}))}n(yq,"getGetTokenDataSizeInstructionDataSerializer");uu.getGetTokenDataSizeInstructionDataSerializer=yq;function $ce(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={mint:{index:0,isWritable:!1,value:e.mint??null}},a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Hce.getAccountMetasAndSigners)(a,"programId",r),l=yq().serialize({}),d=0;return(0,jce.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n($ce,"getTokenDataSize");uu.getTokenDataSize=$ce});var Sq=v(cu=>{"use strict";Object.defineProperty(cu,"__esModule",{value:!0});cu.initializeImmutableOwner=cu.getInitializeImmutableOwnerInstructionDataSerializer=void 0;var Gce=K(),zA=V(),Zce=_e();function vq(){return(0,zA.mapSerializer)((0,zA.struct)([["discriminator",(0,zA.u8)()]],{description:"InitializeImmutableOwnerInstructionData"}),t=>({...t,discriminator:22}))}n(vq,"getInitializeImmutableOwnerInstructionDataSerializer");cu.getInitializeImmutableOwnerInstructionDataSerializer=vq;function Jce(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={account:{index:0,isWritable:!0,value:e.account??null}},a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Zce.getAccountMetasAndSigners)(a,"programId",r),l=vq().serialize({}),d=0;return(0,Gce.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(Jce,"initializeImmutableOwner");cu.initializeImmutableOwner=Jce});var Aq=v(pu=>{"use strict";Object.defineProperty(pu,"__esModule",{value:!0});pu.initializeMint=pu.getInitializeMintInstructionDataSerializer=void 0;var wq=K(),Kl=V(),Yce=_e();function xq(){return(0,Kl.mapSerializer)((0,Kl.struct)([["discriminator",(0,Kl.u8)()],["decimals",(0,Kl.u8)()],["mintAuthority",(0,Kl.publicKey)()],["freezeAuthority",(0,Kl.option)((0,Kl.publicKey)())]],{description:"InitializeMintInstructionData"}),t=>({...t,discriminator:0}))}n(xq,"getInitializeMintInstructionDataSerializer");pu.getInitializeMintInstructionDataSerializer=xq;function Qce(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={mint:{index:0,isWritable:!0,value:e.mint??null},rent:{index:1,isWritable:!1,value:e.rent??null}},a={...e};i.rent.value||(i.rent.value=(0,wq.publicKey)("SysvarRent111111111111111111111111111111111"));let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,Yce.getAccountMetasAndSigners)(s,"programId",r),d=xq().serialize(a),u=0;return(0,wq.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Qce,"initializeMint");pu.initializeMint=Qce});var kq=v(mu=>{"use strict";Object.defineProperty(mu,"__esModule",{value:!0});mu.initializeMint2=mu.getInitializeMint2InstructionDataSerializer=void 0;var Xce=K(),Ll=V(),epe=_e();function _q(){return(0,Ll.mapSerializer)((0,Ll.struct)([["discriminator",(0,Ll.u8)()],["decimals",(0,Ll.u8)()],["mintAuthority",(0,Ll.publicKey)()],["freezeAuthority",(0,Ll.option)((0,Ll.publicKey)())]],{description:"InitializeMint2InstructionData"}),t=>({...t,discriminator:20}))}n(_q,"getInitializeMint2InstructionDataSerializer");mu.getInitializeMint2InstructionDataSerializer=_q;function tpe(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={mint:{index:0,isWritable:!0,value:e.mint??null}},a={...e},s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,epe.getAccountMetasAndSigners)(s,"programId",r),d=_q().serialize(a),u=0;return(0,Xce.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(tpe,"initializeMint2");mu.initializeMint2=tpe});var Tq=v(fu=>{"use strict";Object.defineProperty(fu,"__esModule",{value:!0});fu.initializeMultisig=fu.getInitializeMultisigInstructionDataSerializer=void 0;var Eq=K(),h5=V(),rpe=_e();function Pq(){return(0,h5.mapSerializer)((0,h5.struct)([["discriminator",(0,h5.u8)()],["m",(0,h5.u8)()]],{description:"InitializeMultisigInstructionData"}),t=>({...t,discriminator:2}))}n(Pq,"getInitializeMultisigInstructionDataSerializer");fu.getInitializeMultisigInstructionDataSerializer=Pq;function ipe(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={multisig:{index:0,isWritable:!0,value:e.multisig??null},rent:{index:1,isWritable:!1,value:e.rent??null}},a={...e};i.rent.value||(i.rent.value=(0,Eq.publicKey)("SysvarRent111111111111111111111111111111111"));let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,rpe.getAccountMetasAndSigners)(s,"programId",r),d=Pq().serialize(a),u=0;return(0,Eq.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(ipe,"initializeMultisig");fu.initializeMultisig=ipe});var Iq=v(hu=>{"use strict";Object.defineProperty(hu,"__esModule",{value:!0});hu.initializeMultisig2=hu.getInitializeMultisig2InstructionDataSerializer=void 0;var ape=K(),g5=V(),npe=_e();function zq(){return(0,g5.mapSerializer)((0,g5.struct)([["discriminator",(0,g5.u8)()],["m",(0,g5.u8)()]],{description:"InitializeMultisig2InstructionData"}),t=>({...t,discriminator:19}))}n(zq,"getInitializeMultisig2InstructionDataSerializer");hu.getInitializeMultisig2InstructionDataSerializer=zq;function spe(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={multisig:{index:0,isWritable:!0,value:e.multisig??null},signer:{index:1,isWritable:!1,value:e.signer??null}},a={...e},s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,npe.getAccountMetasAndSigners)(s,"programId",r),d=zq().serialize(a),u=0;return(0,ape.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(spe,"initializeMultisig2");hu.initializeMultisig2=spe});var Rq=v(gu=>{"use strict";Object.defineProperty(gu,"__esModule",{value:!0});gu.initializeToken=gu.getInitializeTokenInstructionDataSerializer=void 0;var Mq=K(),IA=V(),ope=_e();function Dq(){return(0,IA.mapSerializer)((0,IA.struct)([["discriminator",(0,IA.u8)()]],{description:"InitializeTokenInstructionData"}),t=>({...t,discriminator:1}))}n(Dq,"getInitializeTokenInstructionDataSerializer");gu.getInitializeTokenInstructionDataSerializer=Dq;function lpe(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={account:{index:0,isWritable:!0,value:e.account??null},mint:{index:1,isWritable:!1,value:e.mint??null},owner:{index:2,isWritable:!1,value:e.owner??null},rent:{index:3,isWritable:!1,value:e.rent??null}};i.rent.value||(i.rent.value=(0,Mq.publicKey)("SysvarRent111111111111111111111111111111111"));let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,ope.getAccountMetasAndSigners)(a,"programId",r),l=Dq().serialize({}),d=0;return(0,Mq.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(lpe,"initializeToken");gu.initializeToken=lpe});var Oq=v(yu=>{"use strict";Object.defineProperty(yu,"__esModule",{value:!0});yu.initializeToken2=yu.getInitializeToken2InstructionDataSerializer=void 0;var Bq=K(),y5=V(),dpe=_e();function Cq(){return(0,y5.mapSerializer)((0,y5.struct)([["discriminator",(0,y5.u8)()],["owner",(0,y5.publicKey)()]],{description:"InitializeToken2InstructionData"}),t=>({...t,discriminator:16}))}n(Cq,"getInitializeToken2InstructionDataSerializer");yu.getInitializeToken2InstructionDataSerializer=Cq;function upe(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={account:{index:0,isWritable:!0,value:e.account??null},mint:{index:1,isWritable:!1,value:e.mint??null},rent:{index:2,isWritable:!1,value:e.rent??null}},a={...e};i.rent.value||(i.rent.value=(0,Bq.publicKey)("SysvarRent111111111111111111111111111111111"));let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,dpe.getAccountMetasAndSigners)(s,"programId",r),d=Cq().serialize(a),u=0;return(0,Bq.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(upe,"initializeToken2");yu.initializeToken2=upe});var qq=v(bu=>{"use strict";Object.defineProperty(bu,"__esModule",{value:!0});bu.initializeToken3=bu.getInitializeToken3InstructionDataSerializer=void 0;var cpe=K(),b5=V(),ppe=_e();function Nq(){return(0,b5.mapSerializer)((0,b5.struct)([["discriminator",(0,b5.u8)()],["owner",(0,b5.publicKey)()]],{description:"InitializeToken3InstructionData"}),t=>({...t,discriminator:18}))}n(Nq,"getInitializeToken3InstructionDataSerializer");bu.getInitializeToken3InstructionDataSerializer=Nq;function mpe(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={account:{index:0,isWritable:!0,value:e.account??null},mint:{index:1,isWritable:!1,value:e.mint??null}},a={...e},s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,ppe.getAccountMetasAndSigners)(s,"programId",r),d=Nq().serialize(a),u=0;return(0,cpe.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(mpe,"initializeToken3");bu.initializeToken3=mpe});var Vq=v(vu=>{"use strict";Object.defineProperty(vu,"__esModule",{value:!0});vu.mintTokensTo=vu.getMintTokensToInstructionDataSerializer=void 0;var fpe=K(),v5=V(),hpe=_e();function Wq(){return(0,v5.mapSerializer)((0,v5.struct)([["discriminator",(0,v5.u8)()],["amount",(0,v5.u64)()]],{description:"MintTokensToInstructionData"}),t=>({...t,discriminator:7}))}n(Wq,"getMintTokensToInstructionDataSerializer");vu.getMintTokensToInstructionDataSerializer=Wq;function gpe(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={mint:{index:0,isWritable:!0,value:e.mint??null},token:{index:1,isWritable:!0,value:e.token??null},mintAuthority:{index:2,isWritable:!1,value:e.mintAuthority??null}},a={...e};i.mintAuthority.value||(i.mintAuthority.value=t.identity);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,hpe.getAccountMetasAndSigners)(s,"programId",r),d=Wq().serialize(a),u=0;return(0,fpe.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(gpe,"mintTokensTo");vu.mintTokensTo=gpe});var Kq=v(Su=>{"use strict";Object.defineProperty(Su,"__esModule",{value:!0});Su.mintTokensToChecked=Su.getMintTokensToCheckedInstructionDataSerializer=void 0;var ype=K(),sf=V(),bpe=_e();function Fq(){return(0,sf.mapSerializer)((0,sf.struct)([["discriminator",(0,sf.u8)()],["amount",(0,sf.u64)()],["decimals",(0,sf.u8)()]],{description:"MintTokensToCheckedInstructionData"}),t=>({...t,discriminator:14}))}n(Fq,"getMintTokensToCheckedInstructionDataSerializer");Su.getMintTokensToCheckedInstructionDataSerializer=Fq;function vpe(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={mint:{index:0,isWritable:!0,value:e.mint??null},token:{index:1,isWritable:!0,value:e.token??null},mintAuthority:{index:2,isWritable:!1,value:e.mintAuthority??null}},a={...e},s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,bpe.getAccountMetasAndSigners)(s,"programId",r),d=Fq().serialize(a),u=0;return(0,ype.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(vpe,"mintTokensToChecked");Su.mintTokensToChecked=vpe});var Lq=v(S5=>{"use strict";Object.defineProperty(S5,"__esModule",{value:!0});S5.recoverNestedAssociatedToken=void 0;var Spe=K(),wpe=_e();function xpe(t,e){let r=t.programs.getPublicKey("splAssociatedToken","ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"),i={nestedAssociatedAccountAddress:{index:0,isWritable:!0,value:e.nestedAssociatedAccountAddress??null},nestedTokenMintAddress:{index:1,isWritable:!1,value:e.nestedTokenMintAddress??null},destinationAssociatedAccountAddress:{index:2,isWritable:!0,value:e.destinationAssociatedAccountAddress??null},ownerAssociatedAccountAddress:{index:3,isWritable:!1,value:e.ownerAssociatedAccountAddress??null},ownerTokenMintAddress:{index:4,isWritable:!1,value:e.ownerTokenMintAddress??null},walletAddress:{index:5,isWritable:!0,value:e.walletAddress??null},tokenProgram:{index:6,isWritable:!1,value:e.tokenProgram??null}};i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1);let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,wpe.getAccountMetasAndSigners)(a,"programId",r),l=new Uint8Array,d=0;return(0,Spe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(xpe,"recoverNestedAssociatedToken");S5.recoverNestedAssociatedToken=xpe});var jq=v(wu=>{"use strict";Object.defineProperty(wu,"__esModule",{value:!0});wu.requestHeapFrame=wu.getRequestHeapFrameInstructionDataSerializer=void 0;var Ape=K(),w5=V(),_pe=_e();function Uq(){return(0,w5.mapSerializer)((0,w5.struct)([["discriminator",(0,w5.u8)()],["bytes",(0,w5.u32)()]],{description:"RequestHeapFrameInstructionData"}),t=>({...t,discriminator:1}))}n(Uq,"getRequestHeapFrameInstructionDataSerializer");wu.getRequestHeapFrameInstructionDataSerializer=Uq;function kpe(t,e){let r=t.programs.getPublicKey("splComputeBudget","ComputeBudget111111111111111111111111111111"),i={},a={...e},s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,_pe.getAccountMetasAndSigners)(s,"programId",r),d=Uq().serialize(a),u=0;return(0,Ape.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(kpe,"requestHeapFrame");wu.requestHeapFrame=kpe});var $q=v(xu=>{"use strict";Object.defineProperty(xu,"__esModule",{value:!0});xu.requestUnits=xu.getRequestUnitsInstructionDataSerializer=void 0;var Epe=K(),of=V(),Ppe=_e();function Hq(){return(0,of.mapSerializer)((0,of.struct)([["discriminator",(0,of.u8)()],["units",(0,of.u32)()],["additionalFee",(0,of.u32)()]],{description:"RequestUnitsInstructionData"}),t=>({...t,discriminator:0}))}n(Hq,"getRequestUnitsInstructionDataSerializer");xu.getRequestUnitsInstructionDataSerializer=Hq;function Tpe(t,e){let r=t.programs.getPublicKey("splComputeBudget","ComputeBudget111111111111111111111111111111"),i={},a={...e},s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,Ppe.getAccountMetasAndSigners)(s,"programId",r),d=Hq().serialize(a),u=0;return(0,Epe.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Tpe,"requestUnits");xu.requestUnits=Tpe});var Zq=v(Au=>{"use strict";Object.defineProperty(Au,"__esModule",{value:!0});Au.revokeTokenDelegate=Au.getRevokeTokenDelegateInstructionDataSerializer=void 0;var zpe=K(),MA=V(),Ipe=_e();function Gq(){return(0,MA.mapSerializer)((0,MA.struct)([["discriminator",(0,MA.u8)()]],{description:"RevokeTokenDelegateInstructionData"}),t=>({...t,discriminator:5}))}n(Gq,"getRevokeTokenDelegateInstructionDataSerializer");Au.getRevokeTokenDelegateInstructionDataSerializer=Gq;function Mpe(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={source:{index:0,isWritable:!0,value:e.source??null},owner:{index:1,isWritable:!1,value:e.owner??null}},a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Ipe.getAccountMetasAndSigners)(a,"programId",r),l=Gq().serialize({}),d=0;return(0,zpe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(Mpe,"revokeTokenDelegate");Au.revokeTokenDelegate=Mpe});var Yq=v(_u=>{"use strict";Object.defineProperty(_u,"__esModule",{value:!0});_u.setAuthority=_u.getSetAuthorityInstructionDataSerializer=void 0;var Dpe=K(),lf=V(),Rpe=_e(),Bpe=i5();function Jq(){return(0,lf.mapSerializer)((0,lf.struct)([["discriminator",(0,lf.u8)()],["authorityType",(0,Bpe.getAuthorityTypeSerializer)()],["newAuthority",(0,lf.option)((0,lf.publicKey)())]],{description:"SetAuthorityInstructionData"}),t=>({...t,discriminator:6}))}n(Jq,"getSetAuthorityInstructionDataSerializer");_u.getSetAuthorityInstructionDataSerializer=Jq;function Cpe(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={owned:{index:0,isWritable:!0,value:e.owned??null},owner:{index:1,isWritable:!1,value:e.owner??null}},a={...e},s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,Rpe.getAccountMetasAndSigners)(s,"programId",r),d=Jq().serialize(a),u=0;return(0,Dpe.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Cpe,"setAuthority");_u.setAuthority=Cpe});var Xq=v(ku=>{"use strict";Object.defineProperty(ku,"__esModule",{value:!0});ku.setComputeUnitLimit=ku.getSetComputeUnitLimitInstructionDataSerializer=void 0;var Ope=K(),x5=V(),Npe=_e();function Qq(){return(0,x5.mapSerializer)((0,x5.struct)([["discriminator",(0,x5.u8)()],["units",(0,x5.u32)()]],{description:"SetComputeUnitLimitInstructionData"}),t=>({...t,discriminator:2}))}n(Qq,"getSetComputeUnitLimitInstructionDataSerializer");ku.getSetComputeUnitLimitInstructionDataSerializer=Qq;function qpe(t,e){let r=t.programs.getPublicKey("splComputeBudget","ComputeBudget111111111111111111111111111111"),i={},a={...e},s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,Npe.getAccountMetasAndSigners)(s,"programId",r),d=Qq().serialize(a),u=0;return(0,Ope.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(qpe,"setComputeUnitLimit");ku.setComputeUnitLimit=qpe});var tW=v(Eu=>{"use strict";Object.defineProperty(Eu,"__esModule",{value:!0});Eu.setComputeUnitPrice=Eu.getSetComputeUnitPriceInstructionDataSerializer=void 0;var Wpe=K(),A5=V(),Vpe=_e();function eW(){return(0,A5.mapSerializer)((0,A5.struct)([["discriminator",(0,A5.u8)()],["microLamports",(0,A5.u64)()]],{description:"SetComputeUnitPriceInstructionData"}),t=>({...t,discriminator:3}))}n(eW,"getSetComputeUnitPriceInstructionDataSerializer");Eu.getSetComputeUnitPriceInstructionDataSerializer=eW;function Fpe(t,e){let r=t.programs.getPublicKey("splComputeBudget","ComputeBudget111111111111111111111111111111"),i={},a={...e},s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,Vpe.getAccountMetasAndSigners)(s,"programId",r),d=eW().serialize(a),u=0;return(0,Wpe.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Fpe,"setComputeUnitPrice");Eu.setComputeUnitPrice=Fpe});var iW=v(Pu=>{"use strict";Object.defineProperty(Pu,"__esModule",{value:!0});Pu.syncNative=Pu.getSyncNativeInstructionDataSerializer=void 0;var Kpe=K(),DA=V(),Lpe=_e();function rW(){return(0,DA.mapSerializer)((0,DA.struct)([["discriminator",(0,DA.u8)()]],{description:"SyncNativeInstructionData"}),t=>({...t,discriminator:17}))}n(rW,"getSyncNativeInstructionDataSerializer");Pu.getSyncNativeInstructionDataSerializer=rW;function Upe(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={account:{index:0,isWritable:!0,value:e.account??null}},a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Lpe.getAccountMetasAndSigners)(a,"programId",r),l=rW().serialize({}),d=0;return(0,Kpe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(Upe,"syncNative");Pu.syncNative=Upe});var nW=v(Tu=>{"use strict";Object.defineProperty(Tu,"__esModule",{value:!0});Tu.thawToken=Tu.getThawTokenInstructionDataSerializer=void 0;var jpe=K(),RA=V(),Hpe=_e();function aW(){return(0,RA.mapSerializer)((0,RA.struct)([["discriminator",(0,RA.u8)()]],{description:"ThawTokenInstructionData"}),t=>({...t,discriminator:11}))}n(aW,"getThawTokenInstructionDataSerializer");Tu.getThawTokenInstructionDataSerializer=aW;function $pe(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={account:{index:0,isWritable:!0,value:e.account??null},mint:{index:1,isWritable:!1,value:e.mint??null},owner:{index:2,isWritable:!1,value:e.owner??null}},a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Hpe.getAccountMetasAndSigners)(a,"programId",r),l=aW().serialize({}),d=0;return(0,jpe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n($pe,"thawToken");Tu.thawToken=$pe});var oW=v(zu=>{"use strict";Object.defineProperty(zu,"__esModule",{value:!0});zu.transferAllSol=zu.getTransferAllSolInstructionDataSerializer=void 0;var Gpe=K(),BA=V(),Zpe=_e();function sW(){return(0,BA.mapSerializer)((0,BA.struct)([["discriminator",(0,BA.u8)()]],{description:"TransferAllSolInstructionData"}),t=>({...t,discriminator:1}))}n(sW,"getTransferAllSolInstructionDataSerializer");zu.getTransferAllSolInstructionDataSerializer=sW;function Jpe(t,e){let r=t.programs.getPublicKey("mplSystemExtras","SysExL2WDyJi9aRZrXorrjHJut3JwHQ7R9bTyctbNNG"),i={source:{index:0,isWritable:!0,value:e.source??null},destination:{index:1,isWritable:!0,value:e.destination??null},systemProgram:{index:2,isWritable:!1,value:e.systemProgram??null}};i.source.value||(i.source.value=t.identity),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1);let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Zpe.getAccountMetasAndSigners)(a,"programId",r),l=sW().serialize({}),d=0;return(0,Gpe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(Jpe,"transferAllSol");zu.transferAllSol=Jpe});var uW=v(Iu=>{"use strict";Object.defineProperty(Iu,"__esModule",{value:!0});Iu.transferSol=Iu.getTransferSolInstructionDataSerializer=void 0;var lW=K(),_5=V(),Ype=_e();function dW(){return(0,_5.mapSerializer)((0,_5.struct)([["discriminator",(0,_5.u32)()],["amount",(0,lW.mapAmountSerializer)((0,_5.u64)(),"SOL",9)]],{description:"TransferSolInstructionData"}),t=>({...t,discriminator:2}))}n(dW,"getTransferSolInstructionDataSerializer");Iu.getTransferSolInstructionDataSerializer=dW;function Qpe(t,e){let r=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i={source:{index:0,isWritable:!0,value:e.source??null},destination:{index:1,isWritable:!0,value:e.destination??null}},a={...e};i.source.value||(i.source.value=t.identity);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,Ype.getAccountMetasAndSigners)(s,"programId",r),d=dW().serialize(a),u=0;return(0,lW.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Qpe,"transferSol");Iu.transferSol=Qpe});var pW=v(Mu=>{"use strict";Object.defineProperty(Mu,"__esModule",{value:!0});Mu.transferTokens=Mu.getTransferTokensInstructionDataSerializer=void 0;var Xpe=K(),k5=V(),e0e=_e();function cW(){return(0,k5.mapSerializer)((0,k5.struct)([["discriminator",(0,k5.u8)()],["amount",(0,k5.u64)()]],{description:"TransferTokensInstructionData"}),t=>({...t,discriminator:3}))}n(cW,"getTransferTokensInstructionDataSerializer");Mu.getTransferTokensInstructionDataSerializer=cW;function t0e(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={source:{index:0,isWritable:!0,value:e.source??null},destination:{index:1,isWritable:!0,value:e.destination??null},authority:{index:2,isWritable:!1,value:e.authority??null}},a={...e};i.authority.value||(i.authority.value=t.identity);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,e0e.getAccountMetasAndSigners)(s,"programId",r),d=cW().serialize(a),u=0;return(0,Xpe.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(t0e,"transferTokens");Mu.transferTokens=t0e});var fW=v(Du=>{"use strict";Object.defineProperty(Du,"__esModule",{value:!0});Du.transferTokensChecked=Du.getTransferTokensCheckedInstructionDataSerializer=void 0;var r0e=K(),df=V(),i0e=_e();function mW(){return(0,df.mapSerializer)((0,df.struct)([["discriminator",(0,df.u8)()],["amount",(0,df.u64)()],["decimals",(0,df.u8)()]],{description:"TransferTokensCheckedInstructionData"}),t=>({...t,discriminator:12}))}n(mW,"getTransferTokensCheckedInstructionDataSerializer");Du.getTransferTokensCheckedInstructionDataSerializer=mW;function a0e(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={source:{index:0,isWritable:!0,value:e.source??null},mint:{index:1,isWritable:!1,value:e.mint??null},destination:{index:2,isWritable:!0,value:e.destination??null},authority:{index:3,isWritable:!1,value:e.authority??null}},a={...e};i.authority.value||(i.authority.value=t.identity);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,i0e.getAccountMetasAndSigners)(s,"programId",r),d=mW().serialize(a),u=0;return(0,r0e.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(a0e,"transferTokensChecked");Du.transferTokensChecked=a0e});var gW=v(Ru=>{"use strict";Object.defineProperty(Ru,"__esModule",{value:!0});Ru.uiAmountToAmount=Ru.getUiAmountToAmountInstructionDataSerializer=void 0;var n0e=K(),E5=V(),s0e=_e();function hW(){return(0,E5.mapSerializer)((0,E5.struct)([["discriminator",(0,E5.u8)()],["uiAmount",(0,E5.u64)()]],{description:"UiAmountToAmountInstructionData"}),t=>({...t,discriminator:24}))}n(hW,"getUiAmountToAmountInstructionDataSerializer");Ru.getUiAmountToAmountInstructionDataSerializer=hW;function o0e(t,e){let r=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i={mint:{index:0,isWritable:!1,value:e.mint??null}},a={...e},s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,s0e.getAccountMetasAndSigners)(s,"programId",r),d=hW().serialize(a),u=0;return(0,n0e.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(o0e,"uiAmountToAmount");Ru.uiAmountToAmount=o0e});var yW=v(ve=>{"use strict";var l0e=ve&&ve.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),Pe=ve&&ve.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&l0e(e,t,r)};Object.defineProperty(ve,"__esModule",{value:!0});Pe(DN(),ve);Pe(BN(),ve);Pe(ON(),ve);Pe(qN(),ve);Pe(VN(),ve);Pe(KN(),ve);Pe(UN(),ve);Pe(HN(),ve);Pe(GN(),ve);Pe(YN(),ve);Pe(rq(),ve);Pe(nq(),ve);Pe(sq(),ve);Pe(lq(),ve);Pe(uq(),ve);Pe(pq(),ve);Pe(fq(),ve);Pe(gq(),ve);Pe(bq(),ve);Pe(Sq(),ve);Pe(Aq(),ve);Pe(kq(),ve);Pe(Tq(),ve);Pe(Iq(),ve);Pe(Rq(),ve);Pe(Oq(),ve);Pe(qq(),ve);Pe(Vq(),ve);Pe(Kq(),ve);Pe(Lq(),ve);Pe(jq(),ve);Pe($q(),ve);Pe(Zq(),ve);Pe(Yq(),ve);Pe(Xq(),ve);Pe(tW(),ve);Pe(iW(),ve);Pe(nW(),ve);Pe(oW(),ve);Pe(uW(),ve);Pe(pW(),ve);Pe(fW(),ve);Pe(gW(),ve)});var vW=v(la=>{"use strict";Object.defineProperty(la,"__esModule",{value:!0});la.getMplSystemExtrasProgramId=la.getMplSystemExtrasProgram=la.createMplSystemExtrasProgram=la.MPL_SYSTEM_EXTRAS_PROGRAM_ID=void 0;var bW=yn();la.MPL_SYSTEM_EXTRAS_PROGRAM_ID="SysExL2WDyJi9aRZrXorrjHJut3JwHQ7R9bTyctbNNG";function d0e(){return{name:"mplSystemExtras",publicKey:la.MPL_SYSTEM_EXTRAS_PROGRAM_ID,getErrorFromCode(t,e){return(0,bW.getMplSystemExtrasErrorFromCode)(t,this,e)},getErrorFromName(t,e){return(0,bW.getMplSystemExtrasErrorFromName)(t,this,e)},isOnCluster(){return!0}}}n(d0e,"createMplSystemExtrasProgram");la.createMplSystemExtrasProgram=d0e;function u0e(t,e){return t.programs.get("mplSystemExtras",e)}n(u0e,"getMplSystemExtrasProgram");la.getMplSystemExtrasProgram=u0e;function c0e(t,e){return t.programs.getPublicKey("mplSystemExtras",la.MPL_SYSTEM_EXTRAS_PROGRAM_ID,e)}n(c0e,"getMplSystemExtrasProgramId");la.getMplSystemExtrasProgramId=c0e});var wW=v(da=>{"use strict";Object.defineProperty(da,"__esModule",{value:!0});da.getMplTokenExtrasProgramId=da.getMplTokenExtrasProgram=da.createMplTokenExtrasProgram=da.MPL_TOKEN_EXTRAS_PROGRAM_ID=void 0;var SW=yn();da.MPL_TOKEN_EXTRAS_PROGRAM_ID="TokExjvjJmhKaRBShsBAsbSvEWMA1AgUNK7ps4SAc2p";function p0e(){return{name:"mplTokenExtras",publicKey:da.MPL_TOKEN_EXTRAS_PROGRAM_ID,getErrorFromCode(t,e){return(0,SW.getMplTokenExtrasErrorFromCode)(t,this,e)},getErrorFromName(t,e){return(0,SW.getMplTokenExtrasErrorFromName)(t,this,e)},isOnCluster(){return!0}}}n(p0e,"createMplTokenExtrasProgram");da.createMplTokenExtrasProgram=p0e;function m0e(t,e){return t.programs.get("mplTokenExtras",e)}n(m0e,"getMplTokenExtrasProgram");da.getMplTokenExtrasProgram=m0e;function f0e(t,e){return t.programs.getPublicKey("mplTokenExtras",da.MPL_TOKEN_EXTRAS_PROGRAM_ID,e)}n(f0e,"getMplTokenExtrasProgramId");da.getMplTokenExtrasProgramId=f0e});var AW=v(ua=>{"use strict";Object.defineProperty(ua,"__esModule",{value:!0});ua.getSplAddressLookupTableProgramId=ua.getSplAddressLookupTableProgram=ua.createSplAddressLookupTableProgram=ua.SPL_ADDRESS_LOOKUP_TABLE_PROGRAM_ID=void 0;var xW=yn();ua.SPL_ADDRESS_LOOKUP_TABLE_PROGRAM_ID="AddressLookupTab1e1111111111111111111111111";function h0e(){return{name:"splAddressLookupTable",publicKey:ua.SPL_ADDRESS_LOOKUP_TABLE_PROGRAM_ID,getErrorFromCode(t,e){return(0,xW.getSplAddressLookupTableErrorFromCode)(t,this,e)},getErrorFromName(t,e){return(0,xW.getSplAddressLookupTableErrorFromName)(t,this,e)},isOnCluster(){return!0}}}n(h0e,"createSplAddressLookupTableProgram");ua.createSplAddressLookupTableProgram=h0e;function g0e(t,e){return t.programs.get("splAddressLookupTable",e)}n(g0e,"getSplAddressLookupTableProgram");ua.getSplAddressLookupTableProgram=g0e;function y0e(t,e){return t.programs.getPublicKey("splAddressLookupTable",ua.SPL_ADDRESS_LOOKUP_TABLE_PROGRAM_ID,e)}n(y0e,"getSplAddressLookupTableProgramId");ua.getSplAddressLookupTableProgramId=y0e});var kW=v(ca=>{"use strict";Object.defineProperty(ca,"__esModule",{value:!0});ca.getSplAssociatedTokenProgramId=ca.getSplAssociatedTokenProgram=ca.createSplAssociatedTokenProgram=ca.SPL_ASSOCIATED_TOKEN_PROGRAM_ID=void 0;var _W=yn();ca.SPL_ASSOCIATED_TOKEN_PROGRAM_ID="ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";function b0e(){return{name:"splAssociatedToken",publicKey:ca.SPL_ASSOCIATED_TOKEN_PROGRAM_ID,getErrorFromCode(t,e){return(0,_W.getSplAssociatedTokenErrorFromCode)(t,this,e)},getErrorFromName(t,e){return(0,_W.getSplAssociatedTokenErrorFromName)(t,this,e)},isOnCluster(){return!0}}}n(b0e,"createSplAssociatedTokenProgram");ca.createSplAssociatedTokenProgram=b0e;function v0e(t,e){return t.programs.get("splAssociatedToken",e)}n(v0e,"getSplAssociatedTokenProgram");ca.getSplAssociatedTokenProgram=v0e;function S0e(t,e){return t.programs.getPublicKey("splAssociatedToken",ca.SPL_ASSOCIATED_TOKEN_PROGRAM_ID,e)}n(S0e,"getSplAssociatedTokenProgramId");ca.getSplAssociatedTokenProgramId=S0e});var PW=v(pa=>{"use strict";Object.defineProperty(pa,"__esModule",{value:!0});pa.getSplComputeBudgetProgramId=pa.getSplComputeBudgetProgram=pa.createSplComputeBudgetProgram=pa.SPL_COMPUTE_BUDGET_PROGRAM_ID=void 0;var EW=yn();pa.SPL_COMPUTE_BUDGET_PROGRAM_ID="ComputeBudget111111111111111111111111111111";function w0e(){return{name:"splComputeBudget",publicKey:pa.SPL_COMPUTE_BUDGET_PROGRAM_ID,getErrorFromCode(t,e){return(0,EW.getSplComputeBudgetErrorFromCode)(t,this,e)},getErrorFromName(t,e){return(0,EW.getSplComputeBudgetErrorFromName)(t,this,e)},isOnCluster(){return!0}}}n(w0e,"createSplComputeBudgetProgram");pa.createSplComputeBudgetProgram=w0e;function x0e(t,e){return t.programs.get("splComputeBudget",e)}n(x0e,"getSplComputeBudgetProgram");pa.getSplComputeBudgetProgram=x0e;function A0e(t,e){return t.programs.getPublicKey("splComputeBudget",pa.SPL_COMPUTE_BUDGET_PROGRAM_ID,e)}n(A0e,"getSplComputeBudgetProgramId");pa.getSplComputeBudgetProgramId=A0e});var zW=v(ma=>{"use strict";Object.defineProperty(ma,"__esModule",{value:!0});ma.getSplMemoProgramId=ma.getSplMemoProgram=ma.createSplMemoProgram=ma.SPL_MEMO_PROGRAM_ID=void 0;var TW=yn();ma.SPL_MEMO_PROGRAM_ID="Memo1UhkJRfHyvLMcVucJwxXeuD728EqVDDwQDxFMNo";function _0e(){return{name:"splMemo",publicKey:ma.SPL_MEMO_PROGRAM_ID,getErrorFromCode(t,e){return(0,TW.getSplMemoErrorFromCode)(t,this,e)},getErrorFromName(t,e){return(0,TW.getSplMemoErrorFromName)(t,this,e)},isOnCluster(){return!0}}}n(_0e,"createSplMemoProgram");ma.createSplMemoProgram=_0e;function k0e(t,e){return t.programs.get("splMemo",e)}n(k0e,"getSplMemoProgram");ma.getSplMemoProgram=k0e;function E0e(t,e){return t.programs.getPublicKey("splMemo",ma.SPL_MEMO_PROGRAM_ID,e)}n(E0e,"getSplMemoProgramId");ma.getSplMemoProgramId=E0e});var MW=v(fa=>{"use strict";Object.defineProperty(fa,"__esModule",{value:!0});fa.getSplSystemProgramId=fa.getSplSystemProgram=fa.createSplSystemProgram=fa.SPL_SYSTEM_PROGRAM_ID=void 0;var IW=yn();fa.SPL_SYSTEM_PROGRAM_ID="11111111111111111111111111111111";function P0e(){return{name:"splSystem",publicKey:fa.SPL_SYSTEM_PROGRAM_ID,getErrorFromCode(t,e){return(0,IW.getSplSystemErrorFromCode)(t,this,e)},getErrorFromName(t,e){return(0,IW.getSplSystemErrorFromName)(t,this,e)},isOnCluster(){return!0}}}n(P0e,"createSplSystemProgram");fa.createSplSystemProgram=P0e;function T0e(t,e){return t.programs.get("splSystem",e)}n(T0e,"getSplSystemProgram");fa.getSplSystemProgram=T0e;function z0e(t,e){return t.programs.getPublicKey("splSystem",fa.SPL_SYSTEM_PROGRAM_ID,e)}n(z0e,"getSplSystemProgramId");fa.getSplSystemProgramId=z0e});var RW=v(ha=>{"use strict";Object.defineProperty(ha,"__esModule",{value:!0});ha.getSplTokenProgramId=ha.getSplTokenProgram=ha.createSplTokenProgram=ha.SPL_TOKEN_PROGRAM_ID=void 0;var DW=yn();ha.SPL_TOKEN_PROGRAM_ID="TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA";function I0e(){return{name:"splToken",publicKey:ha.SPL_TOKEN_PROGRAM_ID,getErrorFromCode(t,e){return(0,DW.getSplTokenErrorFromCode)(t,this,e)},getErrorFromName(t,e){return(0,DW.getSplTokenErrorFromName)(t,this,e)},isOnCluster(){return!0}}}n(I0e,"createSplTokenProgram");ha.createSplTokenProgram=I0e;function M0e(t,e){return t.programs.get("splToken",e)}n(M0e,"getSplTokenProgram");ha.getSplTokenProgram=M0e;function D0e(t,e){return t.programs.getPublicKey("splToken",ha.SPL_TOKEN_PROGRAM_ID,e)}n(D0e,"getSplTokenProgramId");ha.getSplTokenProgramId=D0e});var BW=v(Pi=>{"use strict";var R0e=Pi&&Pi.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),Vo=Pi&&Pi.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&R0e(e,t,r)};Object.defineProperty(Pi,"__esModule",{value:!0});Vo(vW(),Pi);Vo(wW(),Pi);Vo(AW(),Pi);Vo(kW(),Pi);Vo(PW(),Pi);Vo(zW(),Pi);Vo(MW(),Pi);Vo(RW(),Pi)});var is=v(ga=>{"use strict";var B0e=ga&&ga.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),Bu=ga&&ga.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&B0e(e,t,r)};Object.defineProperty(ga,"__esModule",{value:!0});Bu(n5(),ga);Bu(yn(),ga);Bu(yW(),ga);Bu(BW(),ga);Bu(_e(),ga);Bu(i5(),ga)});var CW=v(P5=>{"use strict";Object.defineProperty(P5,"__esModule",{value:!0});P5.createLut=void 0;var C0e=K(),CA=is();function O0e(t,e){let{addresses:r,...i}=e,a=e.authority??t.identity,s=e.address??(0,CA.findAddressLookupTablePda)(t,{authority:a.publicKey,recentSlot:e.recentSlot});return[(0,C0e.transactionBuilder)().add((0,CA.createEmptyLut)(t,i)).add((0,CA.extendLut)(t,{address:s,authority:a,addresses:r,payer:e.payer})),{publicKey:s[0],addresses:r}]}n(O0e,"createLut");P5.createLut=O0e});var OW=v(T5=>{"use strict";Object.defineProperty(T5,"__esModule",{value:!0});T5.createLutForTransactionBuilder=void 0;var OA=K(),NA=is(),N0e=n((t,e,r,i)=>{let a=i??t.identity,s=(0,OA.uniquePublicKeys)([e.getFeePayer(t).publicKey,...e.items.flatMap(({instruction:u})=>u.keys.filter(c=>c.isSigner).map(c=>c.pubkey))]),o=(0,OA.uniquePublicKeys)(e.items.flatMap(({instruction:u})=>[u.programId,...u.keys.map(c=>c.pubkey)])).filter(u=>!s.includes(u)),l=[],d=[];return(0,OA.chunk)(o,256).forEach((u,c)=>{let p=r-c,[x]=(0,NA.findAddressLookupTablePda)(t,{authority:a.publicKey,recentSlot:p});l.push({publicKey:x,addresses:u}),d.push(...q0e(t,(0,NA.createEmptyLut)(t,{recentSlot:p}),x,a,u))}),[d,l]},"createLutForTransactionBuilder");T5.createLutForTransactionBuilder=N0e;function q0e(t,e,r,i,a){let s=[],o=[],l=e;return a.forEach(d=>{let u=e.add((0,NA.extendLut)(t,{address:r,addresses:[...o,d],authority:i}));u.fitsInOneTransaction(t)?(o.push(d),l=u):(o=[d],s.push(l),e=e.empty(),l=e)}),o.length>0&&s.push(l),s}n(q0e,"generatecreateLutBuilders")});var WA=v(z5=>{"use strict";Object.defineProperty(z5,"__esModule",{value:!0});z5.createMint=void 0;var NW=K(),qA=is();function W0e(t,e){return(0,NW.transactionBuilder)().add((0,qA.createAccountWithRent)(t,{newAccount:e.mint,space:(0,qA.getMintSize)(),programId:t.programs.get("splToken").publicKey})).add((0,qA.initializeMint2)(t,{mint:e.mint.publicKey,decimals:e.decimals??0,mintAuthority:e.mintAuthority??t.identity.publicKey,freezeAuthority:e.freezeAuthority===void 0?(0,NW.some)(t.identity.publicKey):e.freezeAuthority}))}n(W0e,"createMint");z5.createMint=W0e});var WW=v(I5=>{"use strict";Object.defineProperty(I5,"__esModule",{value:!0});I5.createMintWithAssociatedToken=void 0;var VA=K(),V0e=WA(),qW=is(),F0e=ru();function K0e(t,e){let r={mint:e.mint.publicKey,owner:e.owner??t.identity.publicKey},i=e.amount??0,a=(0,VA.transactionBuilder)().add((0,V0e.createMint)(t,{...e,mintAuthority:e.mintAuthority?(0,VA.publicKey)(e.mintAuthority,!1):void 0})).add((0,qW.createAssociatedToken)(t,r));return i>0&&(a=a.add((0,qW.mintTokensTo)(t,{amount:i,mint:e.mint.publicKey,token:(0,F0e.findAssociatedTokenPda)(t,r),mintAuthority:e.mintAuthority&&(0,VA.isSigner)(e.mintAuthority)?e.mintAuthority:void 0}))),a}n(K0e,"createMintWithAssociatedToken");I5.createMintWithAssociatedToken=K0e});var VW=v(M5=>{"use strict";Object.defineProperty(M5,"__esModule",{value:!0});M5.createToken=void 0;var L0e=K(),FA=is();function U0e(t,e){return(0,L0e.transactionBuilder)().add((0,FA.createAccountWithRent)(t,{newAccount:e.token,space:(0,FA.getTokenSize)(),programId:t.programs.get("splToken").publicKey})).add((0,FA.initializeToken3)(t,{account:e.token.publicKey,mint:e.mint,owner:e.owner??t.identity.publicKey}))}n(U0e,"createToken");M5.createToken=U0e});var KW=v(Fr=>{"use strict";Object.defineProperty(Fr,"__esModule",{value:!0});Fr.fetchTokensByOwnerAndMint=Fr.fetchTokensByOwner=Fr.fetchAllMintByOwner=Fr.fetchAllMintPublicKeyByOwner=Fr.fetchAllTokenByOwnerAndMint=Fr.fetchAllTokenByOwner=void 0;var uf=K(),Cu=V(),cf=is(),FW=n(async(t,e,r,i={})=>{let a=t.programs.get("splToken").publicKey,s=i.mint?{mint:i.mint}:{programId:a};return(await t.rpc.call("getTokenAccountsByOwner",[e,s],{...i,extra:{encoding:"base64"}})).value.filter(({account:l})=>{let d=Cu.base64.serialize(l.data[0]),u=(0,Cu.u64)().deserialize(d.slice(64,72))[0];return r(u)})},"getTokenAccountsByOwnerCall"),j0e=n(async(t,e,r={})=>{let{mint:i,tokenStrategy:a="getProgramAccounts",tokenAmountFilter:s=n(d=>d>0,"tokenAmountFilter"),...o}=r;if(a==="getTokenAccountsByOwner")return(await FW(t,e,s,{mint:i,...o})).map(({pubkey:u,account:c})=>(0,cf.deserializeToken)({...c,data:Cu.base64.serialize(c.data[0]),publicKey:(0,uf.publicKey)(u),owner:(0,uf.publicKey)(c.owner),lamports:(0,uf.lamports)(c.lamports)}));let l=(0,cf.getTokenGpaBuilder)(t).whereField("owner",e);return i&&(l=l.whereField("mint",i)),(await l.get()).filter(d=>{let u=(0,Cu.u64)().deserialize(d.data.slice(64,72))[0];return s(u)}).map(d=>(0,cf.deserializeToken)(d))},"fetchAllTokenByOwner");Fr.fetchAllTokenByOwner=j0e;var H0e=n((t,e,r,i={})=>(0,Fr.fetchAllTokenByOwner)(t,e,{...i,mint:r}),"fetchAllTokenByOwnerAndMint");Fr.fetchAllTokenByOwnerAndMint=H0e;var $0e=n(async(t,e,r={})=>{let{tokenStrategy:i="getProgramAccounts",tokenAmountFilter:a=n(o=>o>0,"tokenAmountFilter"),...s}=r;return i==="getTokenAccountsByOwner"?(await FW(t,e,a,s)).map(({account:l})=>(0,uf.publicKey)(Cu.base64.serialize(l.data[0]).slice(0,32))):(await(0,cf.getTokenGpaBuilder)(t).slice(0,72).whereField("owner",e).get()).filter(o=>{let l=(0,Cu.u64)().deserialize(o.data.slice(64,72))[0];return a(l)}).map(o=>(0,uf.publicKey)(o.data.slice(0,32)))},"fetchAllMintPublicKeyByOwner");Fr.fetchAllMintPublicKeyByOwner=$0e;var G0e=n(async(t,e,r={})=>{let{tokenStrategy:i,tokenAmountFilter:a,...s}=r,o=await(0,Fr.fetchAllMintPublicKeyByOwner)(t,e,r);return(0,cf.fetchAllMint)(t,o,s)},"fetchAllMintByOwner");Fr.fetchAllMintByOwner=G0e;Fr.fetchTokensByOwner=Fr.fetchAllTokenByOwner;Fr.fetchTokensByOwnerAndMint=Fr.fetchAllTokenByOwnerAndMint});var UW=v(D5=>{"use strict";Object.defineProperty(D5,"__esModule",{value:!0});D5.findLargestTokensByMint=void 0;var LW=K(),Z0e=n(async(t,e,r={})=>(await t.rpc.call("getTokenLargestAccounts",[e],r)).value.map(({address:a,amount:s,decimals:o})=>({publicKey:(0,LW.publicKey)(a),amount:(0,LW.createAmount)(s,"splToken",o)})),"findLargestTokensByMint");D5.findLargestTokensByMint=Z0e});var jW=v(Ul=>{"use strict";Object.defineProperty(Ul,"__esModule",{value:!0});Ul.mplEssentials=Ul.mplToolbox=void 0;var J0e=K(),Fo=is(),Y0e=n(()=>({install(t){t.programs.add((0,Fo.createSplSystemProgram)(),!1),t.programs.add((0,Fo.createSplMemoProgram)(),!1),t.programs.add((0,Fo.createSplTokenProgram)(),!1),t.programs.add((0,Fo.createSplAssociatedTokenProgram)(),!1),t.programs.add((0,Fo.createSplAddressLookupTableProgram)(),!1),t.programs.add((0,Fo.createMplSystemExtrasProgram)(),!1),t.programs.add((0,Fo.createMplTokenExtrasProgram)(),!1),t.programs.add({...(0,Fo.createSplTokenProgram)(),name:"splToken2022",publicKey:(0,J0e.publicKey)("TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb")},!1)}}),"mplToolbox");Ul.mplToolbox=Y0e;Ul.mplEssentials=Ul.mplToolbox});var HW=v(R5=>{"use strict";Object.defineProperty(R5,"__esModule",{value:!0});R5.getSysvar=void 0;var vn=K(),Q0e=n(t=>{switch(t){case"clock":return(0,vn.publicKey)("SysvarC1ock11111111111111111111111111111111");case"epochSchedule":return(0,vn.publicKey)("SysvarEpochSchedu1e111111111111111111111111");case"instructions":return(0,vn.publicKey)("Sysvar1nstructions1111111111111111111111111");case"recentBlockhashes":return(0,vn.publicKey)("SysvarRecentB1ockHashes11111111111111111111");case"rent":return(0,vn.publicKey)("SysvarRent111111111111111111111111111111111");case"rewards":return(0,vn.publicKey)("SysvarRewards111111111111111111111111111111");case"slotHashes":return(0,vn.publicKey)("SysvarS1otHashes111111111111111111111111111");case"slotHistory":return(0,vn.publicKey)("SysvarS1otHistory11111111111111111111111111");case"stakeHistory":return(0,vn.publicKey)("SysvarStakeHistory1111111111111111111111111");default:throw new vn.SdkError(`Unknown sysvar: ${t}`)}},"getSysvar");R5.getSysvar=Q0e});var kt=v(Xr=>{"use strict";var X0e=Xr&&Xr.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),Fa=Xr&&Xr.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&X0e(e,t,r)};Object.defineProperty(Xr,"__esModule",{value:!0});Fa(is(),Xr);Fa(ru(),Xr);Fa(CW(),Xr);Fa(OW(),Xr);Fa(WA(),Xr);Fa(WW(),Xr);Fa(VW(),Xr);Fa(KW(),Xr);Fa(UW(),Xr);Fa(jW(),Xr);Fa(HW(),Xr)});var B5=v(it=>{"use strict";Object.defineProperty(it,"__esModule",{value:!0});it.isProgrammable=it.isNonFungible=it.isFungible=it.deserializeDigitalAsset=it.fetchAllMetadataByOwner=it.fetchAllDigitalAssetByOwner=it.fetchAllDigitalAssetByUpdateAuthority=it.fetchAllDigitalAssetByVerifiedCollection=it.fetchAllDigitalAssetByCreator=it.fetchAllDigitalAsset=it.fetchDigitalAssetByMetadata=it.fetchDigitalAsset=void 0;var KA=kt(),jl=K(),eme=xm(),br=zo(),tme=326,rme=34,ime=[366,400,434,468,502],ame=1,nme=2;async function $W(t,e,r){let[i]=(0,br.findMetadataPda)(t,{mint:e}),[a]=(0,br.findMasterEditionPda)(t,{mint:e}),[s,o,l]=await t.rpc.getAccounts([e,i,a],r);return(0,jl.assertAccountExists)(s,"Mint"),(0,jl.assertAccountExists)(o,"Metadata"),LA(s,o,l.exists?l:void 0)}n($W,"fetchDigitalAsset");it.fetchDigitalAsset=$W;async function sme(t,e,r){let i=await(0,br.fetchMetadata)(t,e,r);return $W(t,i.mint,r)}n(sme,"fetchDigitalAssetByMetadata");it.fetchDigitalAssetByMetadata=sme;async function pf(t,e,r){let i=e.flatMap(s=>[s,(0,br.findMetadataPda)(t,{mint:s})[0],(0,br.findMasterEditionPda)(t,{mint:s})[0]]),a=await t.rpc.getAccounts(i,r);return(0,jl.chunk)(a,3).flatMap(([s,o,l])=>{try{return(0,jl.assertAccountExists)(s,"Mint"),(0,jl.assertAccountExists)(o,"Metadata"),[LA(s,o,l.exists?l:void 0)]}catch{return[]}})}n(pf,"fetchAllDigitalAsset");it.fetchAllDigitalAsset=pf;async function ome(t,e,r){let i=(r?.position??1)-1,a=await(0,br.getMetadataGpaBuilder)(t).where(tme+i*rme,e).sliceField("mint").getDataAsPublicKeys();return pf(t,a,r)}n(ome,"fetchAllDigitalAssetByCreator");it.fetchAllDigitalAssetByCreator=ome;async function lme(t,e,r){let i=await Promise.all(ime.map(async a=>(0,br.getMetadataGpaBuilder)(t).where(a,1).where(a+ame,1).where(a+nme,e).sliceField("mint").getDataAsPublicKeys()));return pf(t,i.flat(),r)}n(lme,"fetchAllDigitalAssetByVerifiedCollection");it.fetchAllDigitalAssetByVerifiedCollection=lme;async function dme(t,e,r){let i=await(0,br.getMetadataGpaBuilder)(t).whereField("updateAuthority",e).sliceField("mint").getDataAsPublicKeys();return pf(t,i,r)}n(dme,"fetchAllDigitalAssetByUpdateAuthority");it.fetchAllDigitalAssetByUpdateAuthority=dme;async function ume(t,e,r){let i=await(0,KA.fetchAllMintPublicKeyByOwner)(t,e,r);return pf(t,i,r)}n(ume,"fetchAllDigitalAssetByOwner");it.fetchAllDigitalAssetByOwner=ume;async function cme(t,e,r){let a=(await(0,KA.fetchAllMintPublicKeyByOwner)(t,e,r)).map(o=>(0,br.findMetadataPda)(t,{mint:o})[0]);return(await t.rpc.getAccounts(a,r)).flatMap(o=>{try{return(0,jl.assertAccountExists)(o,"Metadata"),[(0,br.deserializeMetadata)(o)]}catch{return[]}})}n(cme,"fetchAllMetadataByOwner");it.fetchAllMetadataByOwner=cme;function LA(t,e,r){let i=(0,KA.deserializeMint)(t),a=(0,br.deserializeMetadata)(e),s=(0,jl.unwrapOption)(a.tokenStandard);if(s&&(0,it.isNonFungible)(s)&&!r)throw new Error("Edition account must be provided for non-fungible assets.");let o={publicKey:i.publicKey,mint:i,metadata:a};if(!r)return o;let l=(0,br.getKeySerializer)().deserialize(r.data)[0],d;if(l===br.Key.MasterEditionV1||l===br.Key.MasterEditionV2)d={isOriginal:!0,...(0,br.deserializeMasterEdition)(r)};else if(l===br.Key.EditionV1)d={isOriginal:!1,...(0,br.deserializeEdition)(r)};else throw new eme.TokenMetadataError(`Invalid key "${l}" for edition account.`);return{...o,edition:d}}n(LA,"deserializeDigitalAsset");it.deserializeDigitalAsset=LA;var pme=n(t=>t===br.TokenStandard.Fungible||t===br.TokenStandard.FungibleAsset,"isFungible");it.isFungible=pme;var mme=n(t=>!(0,it.isFungible)(t),"isNonFungible");it.isNonFungible=mme;var fme=n(t=>t===br.TokenStandard.ProgrammableNonFungible,"isProgrammable");it.isProgrammable=fme});var GW=v(di=>{"use strict";Object.defineProperty(di,"__esModule",{value:!0});di.resolveOptionalTokenOwner=di.resolveCreateV1Bytes=di.resolveCreators=di.resolvePrintSupply=di.resolveDecimals=di.resolveIsNonFungible=di.resolveCollectionDetails=void 0;var hme=kt(),as=K(),C5=B5(),Hl=zo(),gme=679,yme=282,bme=n((t,e,r,...i)=>r.isCollection?(0,as.some)((0,Hl.collectionDetails)("V1",{size:0})):(0,as.none)(),"resolveCollectionDetails");di.resolveCollectionDetails=bme;var vme=n((t,e,r,...i)=>(0,C5.isNonFungible)((0,Hl.expectSome)(r.tokenStandard)),"resolveIsNonFungible");di.resolveIsNonFungible=vme;var Sme=n((t,e,r,...i)=>(0,C5.isNonFungible)((0,Hl.expectSome)(r.tokenStandard))?(0,as.none)():(0,as.some)(0),"resolveDecimals");di.resolveDecimals=Sme;var wme=n((t,e,r,...i)=>(0,C5.isNonFungible)((0,Hl.expectSome)(r.tokenStandard))?(0,as.some)((0,Hl.printSupply)("Zero")):(0,as.none)(),"resolvePrintSupply");di.resolvePrintSupply=wme;var xme=n((t,e,...r)=>(0,as.some)([{address:(0,Hl.expectPublicKey)(e.authority.value),share:100,verified:!0}]),"resolveCreators");di.resolveCreators=xme;var Ame=n((t,e,r,...i)=>{let a=(0,hme.getMintSize)()+gme+2*as.ACCOUNT_HEADER_SIZE;return(0,C5.isNonFungible)((0,Hl.expectSome)(r.tokenStandard))?a+yme+as.ACCOUNT_HEADER_SIZE:a},"resolveCreateV1Bytes");di.resolveCreateV1Bytes=Ame;var _me=n((t,e,...r)=>e.token.value?{value:null}:{value:t.identity.publicKey},"resolveOptionalTokenOwner");di.resolveOptionalTokenOwner=_me});var Ve=v(ns=>{"use strict";var kme=ns&&ns.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),UA=ns&&ns.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&kme(e,t,r)};Object.defineProperty(ns,"__esModule",{value:!0});UA(eN(),ns);UA(rN(),ns);UA(GW(),ns)});var XW=v(Et=>{"use strict";Object.defineProperty(Et,"__esModule",{value:!0});Et.safeFetchMetadataDelegateRecordFromSeeds=Et.fetchMetadataDelegateRecordFromSeeds=Et.findMetadataDelegateRecordPda=Et.getMetadataDelegateRecordSize=Et.getMetadataDelegateRecordGpaBuilder=Et.safeFetchAllMetadataDelegateRecord=Et.fetchAllMetadataDelegateRecord=Et.safeFetchMetadataDelegateRecord=Et.fetchMetadataDelegateRecord=Et.deserializeMetadataDelegateRecord=Et.getMetadataDelegateRecordAccountDataSerializer=void 0;var Ko=K(),Ti=V(),Eme=Ve(),ZW=ae();function JW(){return(0,Ti.struct)([["key",(0,ZW.getKeySerializer)()],["bump",(0,Ti.u8)()],["mint",(0,Ti.publicKey)()],["delegate",(0,Ti.publicKey)()],["updateAuthority",(0,Ti.publicKey)()]],{description:"MetadataDelegateRecordAccountData"})}n(JW,"getMetadataDelegateRecordAccountDataSerializer");Et.getMetadataDelegateRecordAccountDataSerializer=JW;function Ou(t){return(0,Ko.deserializeAccount)(t,JW())}n(Ou,"deserializeMetadataDelegateRecord");Et.deserializeMetadataDelegateRecord=Ou;async function YW(t,e,r){let i=await t.rpc.getAccount((0,Ko.publicKey)(e,!1),r);return(0,Ko.assertAccountExists)(i,"MetadataDelegateRecord"),Ou(i)}n(YW,"fetchMetadataDelegateRecord");Et.fetchMetadataDelegateRecord=YW;async function QW(t,e,r){let i=await t.rpc.getAccount((0,Ko.publicKey)(e,!1),r);return i.exists?Ou(i):null}n(QW,"safeFetchMetadataDelegateRecord");Et.safeFetchMetadataDelegateRecord=QW;async function Pme(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Ko.publicKey)(a,!1)),r)).map(a=>((0,Ko.assertAccountExists)(a,"MetadataDelegateRecord"),Ou(a)))}n(Pme,"fetchAllMetadataDelegateRecord");Et.fetchAllMetadataDelegateRecord=Pme;async function Tme(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Ko.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>Ou(a))}n(Tme,"safeFetchAllMetadataDelegateRecord");Et.safeFetchAllMetadataDelegateRecord=Tme;function zme(t){let e=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return(0,Ko.gpaBuilder)(t,e).registerFields({key:[0,(0,ZW.getKeySerializer)()],bump:[1,(0,Ti.u8)()],mint:[2,(0,Ti.publicKey)()],delegate:[34,(0,Ti.publicKey)()],updateAuthority:[66,(0,Ti.publicKey)()]}).deserializeUsing(r=>Ou(r))}n(zme,"getMetadataDelegateRecordGpaBuilder");Et.getMetadataDelegateRecordGpaBuilder=zme;function Ime(){return 98}n(Ime,"getMetadataDelegateRecordSize");Et.getMetadataDelegateRecordSize=Ime;function jA(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return t.eddsa.findPda(r,[(0,Ti.string)({size:"variable"}).serialize("metadata"),(0,Ti.publicKey)().serialize(r),(0,Ti.publicKey)().serialize(e.mint),(0,Eme.getMetadataDelegateRoleSeedSerializer)().serialize(e.delegateRole),(0,Ti.publicKey)().serialize(e.updateAuthority),(0,Ti.publicKey)().serialize(e.delegate)])}n(jA,"findMetadataDelegateRecordPda");Et.findMetadataDelegateRecordPda=jA;async function Mme(t,e,r){return YW(t,jA(t,e),r)}n(Mme,"fetchMetadataDelegateRecordFromSeeds");Et.fetchMetadataDelegateRecordFromSeeds=Mme;async function Dme(t,e,r){return QW(t,jA(t,e),r)}n(Dme,"safeFetchMetadataDelegateRecordFromSeeds");Et.safeFetchMetadataDelegateRecordFromSeeds=Dme});var tV=v(ui=>{"use strict";Object.defineProperty(ui,"__esModule",{value:!0});ui.getTokenOwnedEscrowGpaBuilder=ui.safeFetchAllTokenOwnedEscrow=ui.fetchAllTokenOwnedEscrow=ui.safeFetchTokenOwnedEscrow=ui.fetchTokenOwnedEscrow=ui.deserializeTokenOwnedEscrow=ui.getTokenOwnedEscrowAccountDataSerializer=void 0;var Lo=K(),Nu=V(),qu=ae();function eV(){return(0,Nu.mapSerializer)((0,Nu.struct)([["key",(0,qu.getKeySerializer)()],["baseToken",(0,Nu.publicKey)()],["authority",(0,qu.getEscrowAuthoritySerializer)()],["bump",(0,Nu.u8)()]],{description:"TokenOwnedEscrowAccountData"}),t=>({...t,key:qu.Key.TokenOwnedEscrow}))}n(eV,"getTokenOwnedEscrowAccountDataSerializer");ui.getTokenOwnedEscrowAccountDataSerializer=eV;function Wu(t){return(0,Lo.deserializeAccount)(t,eV())}n(Wu,"deserializeTokenOwnedEscrow");ui.deserializeTokenOwnedEscrow=Wu;async function Rme(t,e,r){let i=await t.rpc.getAccount((0,Lo.publicKey)(e,!1),r);return(0,Lo.assertAccountExists)(i,"TokenOwnedEscrow"),Wu(i)}n(Rme,"fetchTokenOwnedEscrow");ui.fetchTokenOwnedEscrow=Rme;async function Bme(t,e,r){let i=await t.rpc.getAccount((0,Lo.publicKey)(e,!1),r);return i.exists?Wu(i):null}n(Bme,"safeFetchTokenOwnedEscrow");ui.safeFetchTokenOwnedEscrow=Bme;async function Cme(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Lo.publicKey)(a,!1)),r)).map(a=>((0,Lo.assertAccountExists)(a,"TokenOwnedEscrow"),Wu(a)))}n(Cme,"fetchAllTokenOwnedEscrow");ui.fetchAllTokenOwnedEscrow=Cme;async function Ome(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Lo.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>Wu(a))}n(Ome,"safeFetchAllTokenOwnedEscrow");ui.safeFetchAllTokenOwnedEscrow=Ome;function Nme(t){let e=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return(0,Lo.gpaBuilder)(t,e).registerFields({key:[0,(0,qu.getKeySerializer)()],baseToken:[1,(0,Nu.publicKey)()],authority:[33,(0,qu.getEscrowAuthoritySerializer)()],bump:[null,(0,Nu.u8)()]}).deserializeUsing(r=>Wu(r)).whereField("key",qu.Key.TokenOwnedEscrow)}n(Nme,"getTokenOwnedEscrowGpaBuilder");ui.getTokenOwnedEscrowGpaBuilder=Nme});var nV=v(Pt=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:!0});Pt.safeFetchTokenRecordFromSeeds=Pt.fetchTokenRecordFromSeeds=Pt.findTokenRecordPda=Pt.getTokenRecordSize=Pt.getTokenRecordGpaBuilder=Pt.safeFetchAllTokenRecord=Pt.fetchAllTokenRecord=Pt.safeFetchTokenRecord=Pt.fetchTokenRecord=Pt.deserializeTokenRecord=Pt.getTokenRecordAccountDataSerializer=void 0;var jo=K(),It=V(),Uo=ae();function rV(){return(0,It.mapSerializer)((0,It.struct)([["key",(0,Uo.getKeySerializer)()],["bump",(0,It.u8)()],["state",(0,Uo.getTokenStateSerializer)()],["ruleSetRevision",(0,It.option)((0,It.u64)())],["delegate",(0,It.option)((0,It.publicKey)())],["delegateRole",(0,It.option)((0,Uo.getTokenDelegateRoleSerializer)())],["lockedTransfer",(0,It.option)((0,It.publicKey)())]],{description:"TokenRecordAccountData"}),t=>({...t,key:Uo.Key.TokenRecord}))}n(rV,"getTokenRecordAccountDataSerializer");Pt.getTokenRecordAccountDataSerializer=rV;function Vu(t){return(0,jo.deserializeAccount)(t,rV())}n(Vu,"deserializeTokenRecord");Pt.deserializeTokenRecord=Vu;async function iV(t,e,r){let i=await t.rpc.getAccount((0,jo.publicKey)(e,!1),r);return(0,jo.assertAccountExists)(i,"TokenRecord"),Vu(i)}n(iV,"fetchTokenRecord");Pt.fetchTokenRecord=iV;async function aV(t,e,r){let i=await t.rpc.getAccount((0,jo.publicKey)(e,!1),r);return i.exists?Vu(i):null}n(aV,"safeFetchTokenRecord");Pt.safeFetchTokenRecord=aV;async function qme(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,jo.publicKey)(a,!1)),r)).map(a=>((0,jo.assertAccountExists)(a,"TokenRecord"),Vu(a)))}n(qme,"fetchAllTokenRecord");Pt.fetchAllTokenRecord=qme;async function Wme(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,jo.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>Vu(a))}n(Wme,"safeFetchAllTokenRecord");Pt.safeFetchAllTokenRecord=Wme;function Vme(t){let e=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return(0,jo.gpaBuilder)(t,e).registerFields({key:[0,(0,Uo.getKeySerializer)()],bump:[1,(0,It.u8)()],state:[2,(0,Uo.getTokenStateSerializer)()],ruleSetRevision:[3,(0,It.option)((0,It.u64)())],delegate:[null,(0,It.option)((0,It.publicKey)())],delegateRole:[null,(0,It.option)((0,Uo.getTokenDelegateRoleSerializer)())],lockedTransfer:[null,(0,It.option)((0,It.publicKey)())]}).deserializeUsing(r=>Vu(r)).whereField("key",Uo.Key.TokenRecord)}n(Vme,"getTokenRecordGpaBuilder");Pt.getTokenRecordGpaBuilder=Vme;function Fme(){return 80}n(Fme,"getTokenRecordSize");Pt.getTokenRecordSize=Fme;function HA(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return t.eddsa.findPda(r,[(0,It.string)({size:"variable"}).serialize("metadata"),(0,It.publicKey)().serialize(r),(0,It.publicKey)().serialize(e.mint),(0,It.string)({size:"variable"}).serialize("token_record"),(0,It.publicKey)().serialize(e.token)])}n(HA,"findTokenRecordPda");Pt.findTokenRecordPda=HA;async function Kme(t,e,r){return iV(t,HA(t,e),r)}n(Kme,"fetchTokenRecordFromSeeds");Pt.fetchTokenRecordFromSeeds=Kme;async function Lme(t,e,r){return aV(t,HA(t,e),r)}n(Lme,"safeFetchTokenRecordFromSeeds");Pt.safeFetchTokenRecordFromSeeds=Lme});var dV=v(Tt=>{"use strict";Object.defineProperty(Tt,"__esModule",{value:!0});Tt.safeFetchUseAuthorityRecordFromSeeds=Tt.fetchUseAuthorityRecordFromSeeds=Tt.findUseAuthorityRecordPda=Tt.getUseAuthorityRecordSize=Tt.getUseAuthorityRecordGpaBuilder=Tt.safeFetchAllUseAuthorityRecord=Tt.fetchAllUseAuthorityRecord=Tt.safeFetchUseAuthorityRecord=Tt.fetchUseAuthorityRecord=Tt.deserializeUseAuthorityRecord=Tt.getUseAuthorityRecordAccountDataSerializer=void 0;var Ho=K(),Ka=V(),O5=ae();function sV(){return(0,Ka.mapSerializer)((0,Ka.struct)([["key",(0,O5.getKeySerializer)()],["allowedUses",(0,Ka.u64)()],["bump",(0,Ka.u8)()]],{description:"UseAuthorityRecordAccountData"}),t=>({...t,key:O5.Key.UseAuthorityRecord}))}n(sV,"getUseAuthorityRecordAccountDataSerializer");Tt.getUseAuthorityRecordAccountDataSerializer=sV;function Fu(t){return(0,Ho.deserializeAccount)(t,sV())}n(Fu,"deserializeUseAuthorityRecord");Tt.deserializeUseAuthorityRecord=Fu;async function oV(t,e,r){let i=await t.rpc.getAccount((0,Ho.publicKey)(e,!1),r);return(0,Ho.assertAccountExists)(i,"UseAuthorityRecord"),Fu(i)}n(oV,"fetchUseAuthorityRecord");Tt.fetchUseAuthorityRecord=oV;async function lV(t,e,r){let i=await t.rpc.getAccount((0,Ho.publicKey)(e,!1),r);return i.exists?Fu(i):null}n(lV,"safeFetchUseAuthorityRecord");Tt.safeFetchUseAuthorityRecord=lV;async function Ume(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Ho.publicKey)(a,!1)),r)).map(a=>((0,Ho.assertAccountExists)(a,"UseAuthorityRecord"),Fu(a)))}n(Ume,"fetchAllUseAuthorityRecord");Tt.fetchAllUseAuthorityRecord=Ume;async function jme(t,e,r){return(await t.rpc.getAccounts(e.map(a=>(0,Ho.publicKey)(a,!1)),r)).filter(a=>a.exists).map(a=>Fu(a))}n(jme,"safeFetchAllUseAuthorityRecord");Tt.safeFetchAllUseAuthorityRecord=jme;function Hme(t){let e=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return(0,Ho.gpaBuilder)(t,e).registerFields({key:[0,(0,O5.getKeySerializer)()],allowedUses:[1,(0,Ka.u64)()],bump:[9,(0,Ka.u8)()]}).deserializeUsing(r=>Fu(r)).whereField("key",O5.Key.UseAuthorityRecord)}n(Hme,"getUseAuthorityRecordGpaBuilder");Tt.getUseAuthorityRecordGpaBuilder=Hme;function $me(){return 10}n($me,"getUseAuthorityRecordSize");Tt.getUseAuthorityRecordSize=$me;function $A(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");return t.eddsa.findPda(r,[(0,Ka.string)({size:"variable"}).serialize("metadata"),(0,Ka.publicKey)().serialize(r),(0,Ka.publicKey)().serialize(e.mint),(0,Ka.string)({size:"variable"}).serialize("user"),(0,Ka.publicKey)().serialize(e.useAuthority)])}n($A,"findUseAuthorityRecordPda");Tt.findUseAuthorityRecordPda=$A;async function Gme(t,e,r){return oV(t,$A(t,e),r)}n(Gme,"fetchUseAuthorityRecordFromSeeds");Tt.fetchUseAuthorityRecordFromSeeds=Gme;async function Zme(t,e,r){return lV(t,$A(t,e),r)}n(Zme,"safeFetchUseAuthorityRecordFromSeeds");Tt.safeFetchUseAuthorityRecordFromSeeds=Zme});var ue=v(ci=>{"use strict";var Jme=ci&&ci.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),Sn=ci&&ci.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Jme(e,t,r)};Object.defineProperty(ci,"__esModule",{value:!0});Sn(BO(),ci);Sn(OO(),ci);Sn(VO(),ci);Sn(jO(),ci);Sn(ZO(),ci);Sn(XO(),ci);Sn(XW(),ci);Sn(tV(),ci);Sn(nV(),ci);Sn(dV(),ci)});var uV=v(_=>{"use strict";Object.defineProperty(_,"__esModule",{value:!0});_.ReservationAlreadyMadeError=_.ReservationNotSetError=_.ReservationDoesNotExistError=_.ReservationExistsError=_.ShareTotalMustBe100Error=_.NoBalanceInAccountForAuthorizationError=_.OwnerMismatchError=_.PrimarySaleCanOnlyBeFlippedToTrueError=_.InvalidBasisPointsError=_.CreatorNotFoundError=_.NoCreatorsPresentOnMetadataError=_.MustBeOneOfCreatorsError=_.CreatorsMustBeAtleastOneError=_.CreatorsTooLongError=_.DisabledError=_.AuthorizationTokenAccountOwnerMismatchError=_.PrintingMintAuthorizationAccountMismatchError=_.NotEnoughTokensError=_.TokenAccountMintMismatchV2Error=_.TokenAccountMintMismatchError=_.OneTimePrintingAuthMintMismatchError=_.PrintingMintMismatchError=_.DerivedKeyInvalidError=_.TokenAccountOneTimeAuthMintMismatchError=_.TokenBurnFailedError=_.EditionMintDecimalsShouldBeZeroError=_.OneTimePrintingAuthorizationMintDecimalsShouldBeZeroError=_.PrintingMintDecimalsShouldBeZeroError=_.EditionAlreadyMintedError=_.DestinationMintMismatchError=_.MasterRecordMismatchError=_.TokenMintToFailedError=_.MaxEditionsMintedAlreadyError=_.EditionsMustHaveExactlyOneTokenError=_.MintMismatchError=_.UpdateAuthorityMustBeEqualToMetadataAuthorityAndSignerError=_.UriTooLongError=_.SymbolTooLongError=_.NameTooLongError=_.InvalidMintAuthorityError=_.NotMintAuthorityError=_.UpdateAuthorityIsNotSignerError=_.UpdateAuthorityIncorrectError=_.InvalidEditionKeyError=_.InvalidMetadataKeyError=_.UninitializedError=_.AlreadyInitializedError=_.NotRentExemptError=_.InstructionPackErrorError=_.InstructionUnpackErrorError=void 0;_.RevokeCollectionAuthoritySignerIncorrectError=_.InvalidUserError=_.EditionOverrideCannotBeZeroError=_.NotAllowedToChangeSellerFeeBasisPointsError=_.CannotWipeVerifiedCreatorsError=_.CannotRemoveVerifiedCreatorError=_.CannotAdjustVerifiedCreatorError=_.InvalidDelegateError=_.InvalidFreezeAuthorityError=_.InvalidCollectionAuthorityRecordError=_.InvalidUseAuthorityRecordError=_.CollectionAuthorityDoesNotExistError=_.CollectionAuthorityRecordAlreadyExistsError=_.NotEnoughUsesError=_.UnusableError=_.UseAuthorityRecordAlreadyRevokedError=_.UseAuthorityRecordAlreadyExistsError=_.CollectionMustBeAUniqueMasterEditionError=_.InvalidCollectionUpdateAuthorityError=_.CollectionNotFoundError=_.CannotChangeUsesAfterFirstUseError=_.CannotChangeUseMethodAfterFirstUseError=_.InvalidUseMethodError=_.MustBeBurnedError=_.RemovedError=_.CollectionCannotBeVerifiedInThisInstructionError=_.IsMutableCanOnlyBeFlippedToFalseError=_.ReservationArrayShouldBeSizeOneError=_.InvalidEditionIndexError=_.OneTimeAuthMintSupplyMustBeZeroForConversionError=_.PrintingMintSupplyMustBeZeroForConversionError=_.InvalidOwnerError=_.InvalidOperationError=_.TriedToReplaceAnExistingReservationError=_.ReservationNotCompleteError=_.BeyondAlottedAddressSizeError=_.DataTypeMismatchError=_.InvalidTokenProgramError=_.ReservationSpotsRemainingShouldMatchTotalSpotsAtStartError=_.DuplicateCreatorAddressError=_.DataIsImmutableError=_.PrintingWouldBreachMaximumSupplyError=_.IncorrectOwnerError=_.SpotMismatchError=_.CannotUnverifyAnotherCreatorError=_.CannotVerifyAnotherCreatorError=_.AddressNotInReservationError=_.ReservationBreachesMaximumSupplyError=_.NumericalOverflowErrorError=_.BeyondMaxAddressSizeError=void 0;_.MissingSplTokenProgramError=_.MissingTokenAccountError=_.OnlySaleDelegateCanTransferError=_.InvalidSystemWalletError=_.FeatureNotSupportedError=_.MissingArgumentInBuilderError=_.MissingAccountInBuilderError=_.DelegateNotFoundError=_.DelegateAlreadyExistsError=_.InvalidProgrammableConfigError=_.MissingProgrammableConfigError=_.MissingAuthorizationRulesError=_.InvalidAuthorizationRulesError=_.InvalidMintForTokenStandardError=_.InvalidTokenStandardError=_.MintIsNotSignerError=_.EscrowParentHasDelegateError=_.InvalidBubblegumSignerError=_.InvalidCollectionSizeChangeError=_.NoFreezeAuthoritySetError=_.BorshSerializationErrorError=_.InsufficientTokensError=_.MustBeNonFungibleError=_.InvalidSystemProgramError=_.MustBeEscrowAuthorityError=_.InvalidEscrowBumpSeedError=_.MustUnverifyError=_.EditionNumberGreaterThanMaxSupplyError=_.PrintEditionDoesNotMatchMasterEditionError=_.ReservationListDeprecatedError=_.InvalidEditionMarkerError=_.InvalidPrintEditionError=_.InvalidMasterEditionError=_.NotAPrintEditionError=_.AlreadyUnverifiedError=_.AlreadyVerifiedError=_.CollectionMasterEditionAccountInvalidError=_.CannotUpdateVerifiedCollectionError=_.BorshDeserializationErrorError=_.MasterEditionHasPrintsError=_.NotAMasterEditionError=_.MissingEditionAccountError=_.CouldNotDetermineTokenStandardError=_.NotACollectionParentError=_.NotVerifiedMemberOfCollectionError=_.NotAMemberOfCollectionError=_.MissingCollectionMetadataError=_.SizedCollectionError=_.UnsizedCollectionError=_.TokenCloseFailedError=void 0;_.getMplTokenMetadataErrorFromName=_.getMplTokenMetadataErrorFromCode=_.CannotChangeUpdateAuthorityWithDelegateError=_.InvalidMetadataFlagsError=_.InvalidFeeAccountError=_.MissingDelegateRecordError=_.InvalidInstructionError=_.InvalidCloseAuthorityError=_.InvalidTokenRecordError=_.MissingCollectionMasterEditionError=_.MissingCollectionMintError=_.InsufficientTokenBalanceError=_.InvalidUpdateArgsError=_.InvalidParentAccountsError=_.InvalidInstructionsSysvarError=_.InvalidAssociatedTokenAccountProgramError=_.MissingEditionError=_.CannotBurnWithDelegateError=_.MissingEditionMarkerAccountError=_.MissingMasterEditionTokenAccountError=_.MissingMasterEditionMintAccountError=_.InvalidAmountError=_.CannotUpdateAssetWithDelegateError=_.DataIncrementLimitExceededError=_.InvalidLockedTransferAddressError=_.MissingLockedTransferAddressError=_.InvalidDelegateArgsError=_.AmountMustBeGreaterThanZeroError=_.MissingMasterEditionAccountError=_.MissingPrintSupplyError=_.InvalidDelegateRoleError=_.IncorrectTokenStateError=_.InvalidMasterEditionAccountLengthError=_.MissingTokenOwnerAccountError=_.DataIsEmptyOrZeroedError=_.MintSupplyMustBeZeroError=_.MissingTokenRecordError=_.InvalidAuthorityTypeError=_.MissingDelegateRoleError=_.UnlockedTokenError=_.LockedTokenError=_.KeyMismatchError=_.InstructionNotSupportedError=_.InvalidTransferAuthorityError=_.InvalidDelegateRoleForTransferError=_.MissingAuthorizationRulesProgramError=void 0;var q=K(),O=new Map,N=new Map,mf=class extends q.ProgramError{static{n(this,"InstructionUnpackErrorError")}constructor(e,r){super("",e,r),this.name="InstructionUnpackError",this.code=0}};_.InstructionUnpackErrorError=mf;O.set(0,mf);N.set("InstructionUnpackError",mf);var ff=class extends q.ProgramError{static{n(this,"InstructionPackErrorError")}constructor(e,r){super("",e,r),this.name="InstructionPackError",this.code=1}};_.InstructionPackErrorError=ff;O.set(1,ff);N.set("InstructionPackError",ff);var hf=class extends q.ProgramError{static{n(this,"NotRentExemptError")}constructor(e,r){super("Lamport balance below rent-exempt threshold",e,r),this.name="NotRentExempt",this.code=2}};_.NotRentExemptError=hf;O.set(2,hf);N.set("NotRentExempt",hf);var gf=class extends q.ProgramError{static{n(this,"AlreadyInitializedError")}constructor(e,r){super("Already initialized",e,r),this.name="AlreadyInitialized",this.code=3}};_.AlreadyInitializedError=gf;O.set(3,gf);N.set("AlreadyInitialized",gf);var yf=class extends q.ProgramError{static{n(this,"UninitializedError")}constructor(e,r){super("Uninitialized",e,r),this.name="Uninitialized",this.code=4}};_.UninitializedError=yf;O.set(4,yf);N.set("Uninitialized",yf);var bf=class extends q.ProgramError{static{n(this,"InvalidMetadataKeyError")}constructor(e,r){super(" Metadata's key must match seed of ['metadata', program id, mint] provided",e,r),this.name="InvalidMetadataKey",this.code=5}};_.InvalidMetadataKeyError=bf;O.set(5,bf);N.set("InvalidMetadataKey",bf);var vf=class extends q.ProgramError{static{n(this,"InvalidEditionKeyError")}constructor(e,r){super("Edition's key must match seed of ['metadata', program id, name, 'edition'] provided",e,r),this.name="InvalidEditionKey",this.code=6}};_.InvalidEditionKeyError=vf;O.set(6,vf);N.set("InvalidEditionKey",vf);var Sf=class extends q.ProgramError{static{n(this,"UpdateAuthorityIncorrectError")}constructor(e,r){super("Update Authority given does not match",e,r),this.name="UpdateAuthorityIncorrect",this.code=7}};_.UpdateAuthorityIncorrectError=Sf;O.set(7,Sf);N.set("UpdateAuthorityIncorrect",Sf);var wf=class extends q.ProgramError{static{n(this,"UpdateAuthorityIsNotSignerError")}constructor(e,r){super("Update Authority needs to be signer to update metadata",e,r),this.name="UpdateAuthorityIsNotSigner",this.code=8}};_.UpdateAuthorityIsNotSignerError=wf;O.set(8,wf);N.set("UpdateAuthorityIsNotSigner",wf);var xf=class extends q.ProgramError{static{n(this,"NotMintAuthorityError")}constructor(e,r){super("You must be the mint authority and signer on this transaction",e,r),this.name="NotMintAuthority",this.code=9}};_.NotMintAuthorityError=xf;O.set(9,xf);N.set("NotMintAuthority",xf);var Af=class extends q.ProgramError{static{n(this,"InvalidMintAuthorityError")}constructor(e,r){super("Mint authority provided does not match the authority on the mint",e,r),this.name="InvalidMintAuthority",this.code=10}};_.InvalidMintAuthorityError=Af;O.set(10,Af);N.set("InvalidMintAuthority",Af);var _f=class extends q.ProgramError{static{n(this,"NameTooLongError")}constructor(e,r){super("Name too long",e,r),this.name="NameTooLong",this.code=11}};_.NameTooLongError=_f;O.set(11,_f);N.set("NameTooLong",_f);var kf=class extends q.ProgramError{static{n(this,"SymbolTooLongError")}constructor(e,r){super("Symbol too long",e,r),this.name="SymbolTooLong",this.code=12}};_.SymbolTooLongError=kf;O.set(12,kf);N.set("SymbolTooLong",kf);var Ef=class extends q.ProgramError{static{n(this,"UriTooLongError")}constructor(e,r){super("URI too long",e,r),this.name="UriTooLong",this.code=13}};_.UriTooLongError=Ef;O.set(13,Ef);N.set("UriTooLong",Ef);var Pf=class extends q.ProgramError{static{n(this,"UpdateAuthorityMustBeEqualToMetadataAuthorityAndSignerError")}constructor(e,r){super("",e,r),this.name="UpdateAuthorityMustBeEqualToMetadataAuthorityAndSigner",this.code=14}};_.UpdateAuthorityMustBeEqualToMetadataAuthorityAndSignerError=Pf;O.set(14,Pf);N.set("UpdateAuthorityMustBeEqualToMetadataAuthorityAndSigner",Pf);var Tf=class extends q.ProgramError{static{n(this,"MintMismatchError")}constructor(e,r){super("Mint given does not match mint on Metadata",e,r),this.name="MintMismatch",this.code=15}};_.MintMismatchError=Tf;O.set(15,Tf);N.set("MintMismatch",Tf);var zf=class extends q.ProgramError{static{n(this,"EditionsMustHaveExactlyOneTokenError")}constructor(e,r){super("Editions must have exactly one token",e,r),this.name="EditionsMustHaveExactlyOneToken",this.code=16}};_.EditionsMustHaveExactlyOneTokenError=zf;O.set(16,zf);N.set("EditionsMustHaveExactlyOneToken",zf);var If=class extends q.ProgramError{static{n(this,"MaxEditionsMintedAlreadyError")}constructor(e,r){super("",e,r),this.name="MaxEditionsMintedAlready",this.code=17}};_.MaxEditionsMintedAlreadyError=If;O.set(17,If);N.set("MaxEditionsMintedAlready",If);var Mf=class extends q.ProgramError{static{n(this,"TokenMintToFailedError")}constructor(e,r){super("",e,r),this.name="TokenMintToFailed",this.code=18}};_.TokenMintToFailedError=Mf;O.set(18,Mf);N.set("TokenMintToFailed",Mf);var Df=class extends q.ProgramError{static{n(this,"MasterRecordMismatchError")}constructor(e,r){super("",e,r),this.name="MasterRecordMismatch",this.code=19}};_.MasterRecordMismatchError=Df;O.set(19,Df);N.set("MasterRecordMismatch",Df);var Rf=class extends q.ProgramError{static{n(this,"DestinationMintMismatchError")}constructor(e,r){super("",e,r),this.name="DestinationMintMismatch",this.code=20}};_.DestinationMintMismatchError=Rf;O.set(20,Rf);N.set("DestinationMintMismatch",Rf);var Bf=class extends q.ProgramError{static{n(this,"EditionAlreadyMintedError")}constructor(e,r){super("",e,r),this.name="EditionAlreadyMinted",this.code=21}};_.EditionAlreadyMintedError=Bf;O.set(21,Bf);N.set("EditionAlreadyMinted",Bf);var Cf=class extends q.ProgramError{static{n(this,"PrintingMintDecimalsShouldBeZeroError")}constructor(e,r){super("",e,r),this.name="PrintingMintDecimalsShouldBeZero",this.code=22}};_.PrintingMintDecimalsShouldBeZeroError=Cf;O.set(22,Cf);N.set("PrintingMintDecimalsShouldBeZero",Cf);var Of=class extends q.ProgramError{static{n(this,"OneTimePrintingAuthorizationMintDecimalsShouldBeZeroError")}constructor(e,r){super("",e,r),this.name="OneTimePrintingAuthorizationMintDecimalsShouldBeZero",this.code=23}};_.OneTimePrintingAuthorizationMintDecimalsShouldBeZeroError=Of;O.set(23,Of);N.set("OneTimePrintingAuthorizationMintDecimalsShouldBeZero",Of);var Nf=class extends q.ProgramError{static{n(this,"EditionMintDecimalsShouldBeZeroError")}constructor(e,r){super("EditionMintDecimalsShouldBeZero",e,r),this.name="EditionMintDecimalsShouldBeZero",this.code=24}};_.EditionMintDecimalsShouldBeZeroError=Nf;O.set(24,Nf);N.set("EditionMintDecimalsShouldBeZero",Nf);var qf=class extends q.ProgramError{static{n(this,"TokenBurnFailedError")}constructor(e,r){super("",e,r),this.name="TokenBurnFailed",this.code=25}};_.TokenBurnFailedError=qf;O.set(25,qf);N.set("TokenBurnFailed",qf);var Wf=class extends q.ProgramError{static{n(this,"TokenAccountOneTimeAuthMintMismatchError")}constructor(e,r){super("",e,r),this.name="TokenAccountOneTimeAuthMintMismatch",this.code=26}};_.TokenAccountOneTimeAuthMintMismatchError=Wf;O.set(26,Wf);N.set("TokenAccountOneTimeAuthMintMismatch",Wf);var Vf=class extends q.ProgramError{static{n(this,"DerivedKeyInvalidError")}constructor(e,r){super("Derived key invalid",e,r),this.name="DerivedKeyInvalid",this.code=27}};_.DerivedKeyInvalidError=Vf;O.set(27,Vf);N.set("DerivedKeyInvalid",Vf);var Ff=class extends q.ProgramError{static{n(this,"PrintingMintMismatchError")}constructor(e,r){super("The Printing mint does not match that on the master edition!",e,r),this.name="PrintingMintMismatch",this.code=28}};_.PrintingMintMismatchError=Ff;O.set(28,Ff);N.set("PrintingMintMismatch",Ff);var Kf=class extends q.ProgramError{static{n(this,"OneTimePrintingAuthMintMismatchError")}constructor(e,r){super("The One Time Printing Auth mint does not match that on the master edition!",e,r),this.name="OneTimePrintingAuthMintMismatch",this.code=29}};_.OneTimePrintingAuthMintMismatchError=Kf;O.set(29,Kf);N.set("OneTimePrintingAuthMintMismatch",Kf);var Lf=class extends q.ProgramError{static{n(this,"TokenAccountMintMismatchError")}constructor(e,r){super("The mint of the token account does not match the Printing mint!",e,r),this.name="TokenAccountMintMismatch",this.code=30}};_.TokenAccountMintMismatchError=Lf;O.set(30,Lf);N.set("TokenAccountMintMismatch",Lf);var Uf=class extends q.ProgramError{static{n(this,"TokenAccountMintMismatchV2Error")}constructor(e,r){super("The mint of the token account does not match the master metadata mint!",e,r),this.name="TokenAccountMintMismatchV2",this.code=31}};_.TokenAccountMintMismatchV2Error=Uf;O.set(31,Uf);N.set("TokenAccountMintMismatchV2",Uf);var jf=class extends q.ProgramError{static{n(this,"NotEnoughTokensError")}constructor(e,r){super("Not enough tokens to mint a limited edition",e,r),this.name="NotEnoughTokens",this.code=32}};_.NotEnoughTokensError=jf;O.set(32,jf);N.set("NotEnoughTokens",jf);var Hf=class extends q.ProgramError{static{n(this,"PrintingMintAuthorizationAccountMismatchError")}constructor(e,r){super("",e,r),this.name="PrintingMintAuthorizationAccountMismatch",this.code=33}};_.PrintingMintAuthorizationAccountMismatchError=Hf;O.set(33,Hf);N.set("PrintingMintAuthorizationAccountMismatch",Hf);var $f=class extends q.ProgramError{static{n(this,"AuthorizationTokenAccountOwnerMismatchError")}constructor(e,r){super("",e,r),this.name="AuthorizationTokenAccountOwnerMismatch",this.code=34}};_.AuthorizationTokenAccountOwnerMismatchError=$f;O.set(34,$f);N.set("AuthorizationTokenAccountOwnerMismatch",$f);var Gf=class extends q.ProgramError{static{n(this,"DisabledError")}constructor(e,r){super("",e,r),this.name="Disabled",this.code=35}};_.DisabledError=Gf;O.set(35,Gf);N.set("Disabled",Gf);var Zf=class extends q.ProgramError{static{n(this,"CreatorsTooLongError")}constructor(e,r){super("Creators list too long",e,r),this.name="CreatorsTooLong",this.code=36}};_.CreatorsTooLongError=Zf;O.set(36,Zf);N.set("CreatorsTooLong",Zf);var Jf=class extends q.ProgramError{static{n(this,"CreatorsMustBeAtleastOneError")}constructor(e,r){super("Creators must be at least one if set",e,r),this.name="CreatorsMustBeAtleastOne",this.code=37}};_.CreatorsMustBeAtleastOneError=Jf;O.set(37,Jf);N.set("CreatorsMustBeAtleastOne",Jf);var Yf=class extends q.ProgramError{static{n(this,"MustBeOneOfCreatorsError")}constructor(e,r){super("",e,r),this.name="MustBeOneOfCreators",this.code=38}};_.MustBeOneOfCreatorsError=Yf;O.set(38,Yf);N.set("MustBeOneOfCreators",Yf);var Qf=class extends q.ProgramError{static{n(this,"NoCreatorsPresentOnMetadataError")}constructor(e,r){super("This metadata does not have creators",e,r),this.name="NoCreatorsPresentOnMetadata",this.code=39}};_.NoCreatorsPresentOnMetadataError=Qf;O.set(39,Qf);N.set("NoCreatorsPresentOnMetadata",Qf);var Xf=class extends q.ProgramError{static{n(this,"CreatorNotFoundError")}constructor(e,r){super("This creator address was not found",e,r),this.name="CreatorNotFound",this.code=40}};_.CreatorNotFoundError=Xf;O.set(40,Xf);N.set("CreatorNotFound",Xf);var e2=class extends q.ProgramError{static{n(this,"InvalidBasisPointsError")}constructor(e,r){super("Basis points cannot be more than 10000",e,r),this.name="InvalidBasisPoints",this.code=41}};_.InvalidBasisPointsError=e2;O.set(41,e2);N.set("InvalidBasisPoints",e2);var t2=class extends q.ProgramError{static{n(this,"PrimarySaleCanOnlyBeFlippedToTrueError")}constructor(e,r){super("Primary sale can only be flipped to true and is immutable",e,r),this.name="PrimarySaleCanOnlyBeFlippedToTrue",this.code=42}};_.PrimarySaleCanOnlyBeFlippedToTrueError=t2;O.set(42,t2);N.set("PrimarySaleCanOnlyBeFlippedToTrue",t2);var r2=class extends q.ProgramError{static{n(this,"OwnerMismatchError")}constructor(e,r){super("Owner does not match that on the account given",e,r),this.name="OwnerMismatch",this.code=43}};_.OwnerMismatchError=r2;O.set(43,r2);N.set("OwnerMismatch",r2);var i2=class extends q.ProgramError{static{n(this,"NoBalanceInAccountForAuthorizationError")}constructor(e,r){super("This account has no tokens to be used for authorization",e,r),this.name="NoBalanceInAccountForAuthorization",this.code=44}};_.NoBalanceInAccountForAuthorizationError=i2;O.set(44,i2);N.set("NoBalanceInAccountForAuthorization",i2);var a2=class extends q.ProgramError{static{n(this,"ShareTotalMustBe100Error")}constructor(e,r){super("Share total must equal 100 for creator array",e,r),this.name="ShareTotalMustBe100",this.code=45}};_.ShareTotalMustBe100Error=a2;O.set(45,a2);N.set("ShareTotalMustBe100",a2);var n2=class extends q.ProgramError{static{n(this,"ReservationExistsError")}constructor(e,r){super("",e,r),this.name="ReservationExists",this.code=46}};_.ReservationExistsError=n2;O.set(46,n2);N.set("ReservationExists",n2);var s2=class extends q.ProgramError{static{n(this,"ReservationDoesNotExistError")}constructor(e,r){super("",e,r),this.name="ReservationDoesNotExist",this.code=47}};_.ReservationDoesNotExistError=s2;O.set(47,s2);N.set("ReservationDoesNotExist",s2);var o2=class extends q.ProgramError{static{n(this,"ReservationNotSetError")}constructor(e,r){super("",e,r),this.name="ReservationNotSet",this.code=48}};_.ReservationNotSetError=o2;O.set(48,o2);N.set("ReservationNotSet",o2);var l2=class extends q.ProgramError{static{n(this,"ReservationAlreadyMadeError")}constructor(e,r){super("",e,r),this.name="ReservationAlreadyMade",this.code=49}};_.ReservationAlreadyMadeError=l2;O.set(49,l2);N.set("ReservationAlreadyMade",l2);var d2=class extends q.ProgramError{static{n(this,"BeyondMaxAddressSizeError")}constructor(e,r){super("",e,r),this.name="BeyondMaxAddressSize",this.code=50}};_.BeyondMaxAddressSizeError=d2;O.set(50,d2);N.set("BeyondMaxAddressSize",d2);var u2=class extends q.ProgramError{static{n(this,"NumericalOverflowErrorError")}constructor(e,r){super("NumericalOverflowError",e,r),this.name="NumericalOverflowError",this.code=51}};_.NumericalOverflowErrorError=u2;O.set(51,u2);N.set("NumericalOverflowError",u2);var c2=class extends q.ProgramError{static{n(this,"ReservationBreachesMaximumSupplyError")}constructor(e,r){super("",e,r),this.name="ReservationBreachesMaximumSupply",this.code=52}};_.ReservationBreachesMaximumSupplyError=c2;O.set(52,c2);N.set("ReservationBreachesMaximumSupply",c2);var p2=class extends q.ProgramError{static{n(this,"AddressNotInReservationError")}constructor(e,r){super("",e,r),this.name="AddressNotInReservation",this.code=53}};_.AddressNotInReservationError=p2;O.set(53,p2);N.set("AddressNotInReservation",p2);var m2=class extends q.ProgramError{static{n(this,"CannotVerifyAnotherCreatorError")}constructor(e,r){super("You cannot unilaterally verify another creator, they must sign",e,r),this.name="CannotVerifyAnotherCreator",this.code=54}};_.CannotVerifyAnotherCreatorError=m2;O.set(54,m2);N.set("CannotVerifyAnotherCreator",m2);var f2=class extends q.ProgramError{static{n(this,"CannotUnverifyAnotherCreatorError")}constructor(e,r){super("You cannot unilaterally unverify another creator",e,r),this.name="CannotUnverifyAnotherCreator",this.code=55}};_.CannotUnverifyAnotherCreatorError=f2;O.set(55,f2);N.set("CannotUnverifyAnotherCreator",f2);var h2=class extends q.ProgramError{static{n(this,"SpotMismatchError")}constructor(e,r){super("",e,r),this.name="SpotMismatch",this.code=56}};_.SpotMismatchError=h2;O.set(56,h2);N.set("SpotMismatch",h2);var g2=class extends q.ProgramError{static{n(this,"IncorrectOwnerError")}constructor(e,r){super("Incorrect account owner",e,r),this.name="IncorrectOwner",this.code=57}};_.IncorrectOwnerError=g2;O.set(57,g2);N.set("IncorrectOwner",g2);var y2=class extends q.ProgramError{static{n(this,"PrintingWouldBreachMaximumSupplyError")}constructor(e,r){super("",e,r),this.name="PrintingWouldBreachMaximumSupply",this.code=58}};_.PrintingWouldBreachMaximumSupplyError=y2;O.set(58,y2);N.set("PrintingWouldBreachMaximumSupply",y2);var b2=class extends q.ProgramError{static{n(this,"DataIsImmutableError")}constructor(e,r){super("Data is immutable",e,r),this.name="DataIsImmutable",this.code=59}};_.DataIsImmutableError=b2;O.set(59,b2);N.set("DataIsImmutable",b2);var v2=class extends q.ProgramError{static{n(this,"DuplicateCreatorAddressError")}constructor(e,r){super("No duplicate creator addresses",e,r),this.name="DuplicateCreatorAddress",this.code=60}};_.DuplicateCreatorAddressError=v2;O.set(60,v2);N.set("DuplicateCreatorAddress",v2);var S2=class extends q.ProgramError{static{n(this,"ReservationSpotsRemainingShouldMatchTotalSpotsAtStartError")}constructor(e,r){super("",e,r),this.name="ReservationSpotsRemainingShouldMatchTotalSpotsAtStart",this.code=61}};_.ReservationSpotsRemainingShouldMatchTotalSpotsAtStartError=S2;O.set(61,S2);N.set("ReservationSpotsRemainingShouldMatchTotalSpotsAtStart",S2);var w2=class extends q.ProgramError{static{n(this,"InvalidTokenProgramError")}constructor(e,r){super("Invalid token program",e,r),this.name="InvalidTokenProgram",this.code=62}};_.InvalidTokenProgramError=w2;O.set(62,w2);N.set("InvalidTokenProgram",w2);var x2=class extends q.ProgramError{static{n(this,"DataTypeMismatchError")}constructor(e,r){super("Data type mismatch",e,r),this.name="DataTypeMismatch",this.code=63}};_.DataTypeMismatchError=x2;O.set(63,x2);N.set("DataTypeMismatch",x2);var A2=class extends q.ProgramError{static{n(this,"BeyondAlottedAddressSizeError")}constructor(e,r){super("",e,r),this.name="BeyondAlottedAddressSize",this.code=64}};_.BeyondAlottedAddressSizeError=A2;O.set(64,A2);N.set("BeyondAlottedAddressSize",A2);var _2=class extends q.ProgramError{static{n(this,"ReservationNotCompleteError")}constructor(e,r){super("",e,r),this.name="ReservationNotComplete",this.code=65}};_.ReservationNotCompleteError=_2;O.set(65,_2);N.set("ReservationNotComplete",_2);var k2=class extends q.ProgramError{static{n(this,"TriedToReplaceAnExistingReservationError")}constructor(e,r){super("",e,r),this.name="TriedToReplaceAnExistingReservation",this.code=66}};_.TriedToReplaceAnExistingReservationError=k2;O.set(66,k2);N.set("TriedToReplaceAnExistingReservation",k2);var E2=class extends q.ProgramError{static{n(this,"InvalidOperationError")}constructor(e,r){super("Invalid operation",e,r),this.name="InvalidOperation",this.code=67}};_.InvalidOperationError=E2;O.set(67,E2);N.set("InvalidOperation",E2);var P2=class extends q.ProgramError{static{n(this,"InvalidOwnerError")}constructor(e,r){super("Invalid Owner",e,r),this.name="InvalidOwner",this.code=68}};_.InvalidOwnerError=P2;O.set(68,P2);N.set("InvalidOwner",P2);var T2=class extends q.ProgramError{static{n(this,"PrintingMintSupplyMustBeZeroForConversionError")}constructor(e,r){super("Printing mint supply must be zero for conversion",e,r),this.name="PrintingMintSupplyMustBeZeroForConversion",this.code=69}};_.PrintingMintSupplyMustBeZeroForConversionError=T2;O.set(69,T2);N.set("PrintingMintSupplyMustBeZeroForConversion",T2);var z2=class extends q.ProgramError{static{n(this,"OneTimeAuthMintSupplyMustBeZeroForConversionError")}constructor(e,r){super("One Time Auth mint supply must be zero for conversion",e,r),this.name="OneTimeAuthMintSupplyMustBeZeroForConversion",this.code=70}};_.OneTimeAuthMintSupplyMustBeZeroForConversionError=z2;O.set(70,z2);N.set("OneTimeAuthMintSupplyMustBeZeroForConversion",z2);var I2=class extends q.ProgramError{static{n(this,"InvalidEditionIndexError")}constructor(e,r){super("You tried to insert one edition too many into an edition mark pda",e,r),this.name="InvalidEditionIndex",this.code=71}};_.InvalidEditionIndexError=I2;O.set(71,I2);N.set("InvalidEditionIndex",I2);var M2=class extends q.ProgramError{static{n(this,"ReservationArrayShouldBeSizeOneError")}constructor(e,r){super("",e,r),this.name="ReservationArrayShouldBeSizeOne",this.code=72}};_.ReservationArrayShouldBeSizeOneError=M2;O.set(72,M2);N.set("ReservationArrayShouldBeSizeOne",M2);var D2=class extends q.ProgramError{static{n(this,"IsMutableCanOnlyBeFlippedToFalseError")}constructor(e,r){super("Is Mutable can only be flipped to false",e,r),this.name="IsMutableCanOnlyBeFlippedToFalse",this.code=73}};_.IsMutableCanOnlyBeFlippedToFalseError=D2;O.set(73,D2);N.set("IsMutableCanOnlyBeFlippedToFalse",D2);var R2=class extends q.ProgramError{static{n(this,"CollectionCannotBeVerifiedInThisInstructionError")}constructor(e,r){super("Collection cannot be verified in this instruction",e,r),this.name="CollectionCannotBeVerifiedInThisInstruction",this.code=74}};_.CollectionCannotBeVerifiedInThisInstructionError=R2;O.set(74,R2);N.set("CollectionCannotBeVerifiedInThisInstruction",R2);var B2=class extends q.ProgramError{static{n(this,"RemovedError")}constructor(e,r){super("This instruction was deprecated in a previous release and is now removed",e,r),this.name="Removed",this.code=75}};_.RemovedError=B2;O.set(75,B2);N.set("Removed",B2);var C2=class extends q.ProgramError{static{n(this,"MustBeBurnedError")}constructor(e,r){super("",e,r),this.name="MustBeBurned",this.code=76}};_.MustBeBurnedError=C2;O.set(76,C2);N.set("MustBeBurned",C2);var O2=class extends q.ProgramError{static{n(this,"InvalidUseMethodError")}constructor(e,r){super("This use method is invalid",e,r),this.name="InvalidUseMethod",this.code=77}};_.InvalidUseMethodError=O2;O.set(77,O2);N.set("InvalidUseMethod",O2);var N2=class extends q.ProgramError{static{n(this,"CannotChangeUseMethodAfterFirstUseError")}constructor(e,r){super("Cannot Change Use Method after the first use",e,r),this.name="CannotChangeUseMethodAfterFirstUse",this.code=78}};_.CannotChangeUseMethodAfterFirstUseError=N2;O.set(78,N2);N.set("CannotChangeUseMethodAfterFirstUse",N2);var q2=class extends q.ProgramError{static{n(this,"CannotChangeUsesAfterFirstUseError")}constructor(e,r){super("Cannot Change Remaining or Available uses after the first use",e,r),this.name="CannotChangeUsesAfterFirstUse",this.code=79}};_.CannotChangeUsesAfterFirstUseError=q2;O.set(79,q2);N.set("CannotChangeUsesAfterFirstUse",q2);var W2=class extends q.ProgramError{static{n(this,"CollectionNotFoundError")}constructor(e,r){super("Collection Not Found on Metadata",e,r),this.name="CollectionNotFound",this.code=80}};_.CollectionNotFoundError=W2;O.set(80,W2);N.set("CollectionNotFound",W2);var V2=class extends q.ProgramError{static{n(this,"InvalidCollectionUpdateAuthorityError")}constructor(e,r){super("Collection Update Authority is invalid",e,r),this.name="InvalidCollectionUpdateAuthority",this.code=81}};_.InvalidCollectionUpdateAuthorityError=V2;O.set(81,V2);N.set("InvalidCollectionUpdateAuthority",V2);var F2=class extends q.ProgramError{static{n(this,"CollectionMustBeAUniqueMasterEditionError")}constructor(e,r){super("Collection Must Be a Unique Master Edition v2",e,r),this.name="CollectionMustBeAUniqueMasterEdition",this.code=82}};_.CollectionMustBeAUniqueMasterEditionError=F2;O.set(82,F2);N.set("CollectionMustBeAUniqueMasterEdition",F2);var K2=class extends q.ProgramError{static{n(this,"UseAuthorityRecordAlreadyExistsError")}constructor(e,r){super("The Use Authority Record Already Exists, to modify it Revoke, then Approve",e,r),this.name="UseAuthorityRecordAlreadyExists",this.code=83}};_.UseAuthorityRecordAlreadyExistsError=K2;O.set(83,K2);N.set("UseAuthorityRecordAlreadyExists",K2);var L2=class extends q.ProgramError{static{n(this,"UseAuthorityRecordAlreadyRevokedError")}constructor(e,r){super("The Use Authority Record is empty or already revoked",e,r),this.name="UseAuthorityRecordAlreadyRevoked",this.code=84}};_.UseAuthorityRecordAlreadyRevokedError=L2;O.set(84,L2);N.set("UseAuthorityRecordAlreadyRevoked",L2);var U2=class extends q.ProgramError{static{n(this,"UnusableError")}constructor(e,r){super("This token has no uses",e,r),this.name="Unusable",this.code=85}};_.UnusableError=U2;O.set(85,U2);N.set("Unusable",U2);var j2=class extends q.ProgramError{static{n(this,"NotEnoughUsesError")}constructor(e,r){super("There are not enough Uses left on this token.",e,r),this.name="NotEnoughUses",this.code=86}};_.NotEnoughUsesError=j2;O.set(86,j2);N.set("NotEnoughUses",j2);var H2=class extends q.ProgramError{static{n(this,"CollectionAuthorityRecordAlreadyExistsError")}constructor(e,r){super("This Collection Authority Record Already Exists.",e,r),this.name="CollectionAuthorityRecordAlreadyExists",this.code=87}};_.CollectionAuthorityRecordAlreadyExistsError=H2;O.set(87,H2);N.set("CollectionAuthorityRecordAlreadyExists",H2);var $2=class extends q.ProgramError{static{n(this,"CollectionAuthorityDoesNotExistError")}constructor(e,r){super("This Collection Authority Record Does Not Exist.",e,r),this.name="CollectionAuthorityDoesNotExist",this.code=88}};_.CollectionAuthorityDoesNotExistError=$2;O.set(88,$2);N.set("CollectionAuthorityDoesNotExist",$2);var G2=class extends q.ProgramError{static{n(this,"InvalidUseAuthorityRecordError")}constructor(e,r){super("This Use Authority Record is invalid.",e,r),this.name="InvalidUseAuthorityRecord",this.code=89}};_.InvalidUseAuthorityRecordError=G2;O.set(89,G2);N.set("InvalidUseAuthorityRecord",G2);var Z2=class extends q.ProgramError{static{n(this,"InvalidCollectionAuthorityRecordError")}constructor(e,r){super("",e,r),this.name="InvalidCollectionAuthorityRecord",this.code=90}};_.InvalidCollectionAuthorityRecordError=Z2;O.set(90,Z2);N.set("InvalidCollectionAuthorityRecord",Z2);var J2=class extends q.ProgramError{static{n(this,"InvalidFreezeAuthorityError")}constructor(e,r){super("Metadata does not match the freeze authority on the mint",e,r),this.name="InvalidFreezeAuthority",this.code=91}};_.InvalidFreezeAuthorityError=J2;O.set(91,J2);N.set("InvalidFreezeAuthority",J2);var Y2=class extends q.ProgramError{static{n(this,"InvalidDelegateError")}constructor(e,r){super("All tokens in this account have not been delegated to this user.",e,r),this.name="InvalidDelegate",this.code=92}};_.InvalidDelegateError=Y2;O.set(92,Y2);N.set("InvalidDelegate",Y2);var Q2=class extends q.ProgramError{static{n(this,"CannotAdjustVerifiedCreatorError")}constructor(e,r){super("",e,r),this.name="CannotAdjustVerifiedCreator",this.code=93}};_.CannotAdjustVerifiedCreatorError=Q2;O.set(93,Q2);N.set("CannotAdjustVerifiedCreator",Q2);var X2=class extends q.ProgramError{static{n(this,"CannotRemoveVerifiedCreatorError")}constructor(e,r){super("Verified creators cannot be removed.",e,r),this.name="CannotRemoveVerifiedCreator",this.code=94}};_.CannotRemoveVerifiedCreatorError=X2;O.set(94,X2);N.set("CannotRemoveVerifiedCreator",X2);var e6=class extends q.ProgramError{static{n(this,"CannotWipeVerifiedCreatorsError")}constructor(e,r){super("",e,r),this.name="CannotWipeVerifiedCreators",this.code=95}};_.CannotWipeVerifiedCreatorsError=e6;O.set(95,e6);N.set("CannotWipeVerifiedCreators",e6);var t6=class extends q.ProgramError{static{n(this,"NotAllowedToChangeSellerFeeBasisPointsError")}constructor(e,r){super("",e,r),this.name="NotAllowedToChangeSellerFeeBasisPoints",this.code=96}};_.NotAllowedToChangeSellerFeeBasisPointsError=t6;O.set(96,t6);N.set("NotAllowedToChangeSellerFeeBasisPoints",t6);var r6=class extends q.ProgramError{static{n(this,"EditionOverrideCannotBeZeroError")}constructor(e,r){super("Edition override cannot be zero",e,r),this.name="EditionOverrideCannotBeZero",this.code=97}};_.EditionOverrideCannotBeZeroError=r6;O.set(97,r6);N.set("EditionOverrideCannotBeZero",r6);var i6=class extends q.ProgramError{static{n(this,"InvalidUserError")}constructor(e,r){super("Invalid User",e,r),this.name="InvalidUser",this.code=98}};_.InvalidUserError=i6;O.set(98,i6);N.set("InvalidUser",i6);var a6=class extends q.ProgramError{static{n(this,"RevokeCollectionAuthoritySignerIncorrectError")}constructor(e,r){super("Revoke Collection Authority signer is incorrect",e,r),this.name="RevokeCollectionAuthoritySignerIncorrect",this.code=99}};_.RevokeCollectionAuthoritySignerIncorrectError=a6;O.set(99,a6);N.set("RevokeCollectionAuthoritySignerIncorrect",a6);var n6=class extends q.ProgramError{static{n(this,"TokenCloseFailedError")}constructor(e,r){super("",e,r),this.name="TokenCloseFailed",this.code=100}};_.TokenCloseFailedError=n6;O.set(100,n6);N.set("TokenCloseFailed",n6);var s6=class extends q.ProgramError{static{n(this,"UnsizedCollectionError")}constructor(e,r){super("Can't use this function on unsized collection",e,r),this.name="UnsizedCollection",this.code=101}};_.UnsizedCollectionError=s6;O.set(101,s6);N.set("UnsizedCollection",s6);var o6=class extends q.ProgramError{static{n(this,"SizedCollectionError")}constructor(e,r){super("Can't use this function on a sized collection",e,r),this.name="SizedCollection",this.code=102}};_.SizedCollectionError=o6;O.set(102,o6);N.set("SizedCollection",o6);var l6=class extends q.ProgramError{static{n(this,"MissingCollectionMetadataError")}constructor(e,r){super("Missing collection metadata account",e,r),this.name="MissingCollectionMetadata",this.code=103}};_.MissingCollectionMetadataError=l6;O.set(103,l6);N.set("MissingCollectionMetadata",l6);var d6=class extends q.ProgramError{static{n(this,"NotAMemberOfCollectionError")}constructor(e,r){super("This NFT is not a member of the specified collection.",e,r),this.name="NotAMemberOfCollection",this.code=104}};_.NotAMemberOfCollectionError=d6;O.set(104,d6);N.set("NotAMemberOfCollection",d6);var u6=class extends q.ProgramError{static{n(this,"NotVerifiedMemberOfCollectionError")}constructor(e,r){super("This NFT is not a verified member of the specified collection.",e,r),this.name="NotVerifiedMemberOfCollection",this.code=105}};_.NotVerifiedMemberOfCollectionError=u6;O.set(105,u6);N.set("NotVerifiedMemberOfCollection",u6);var c6=class extends q.ProgramError{static{n(this,"NotACollectionParentError")}constructor(e,r){super("This NFT is not a collection parent NFT.",e,r),this.name="NotACollectionParent",this.code=106}};_.NotACollectionParentError=c6;O.set(106,c6);N.set("NotACollectionParent",c6);var p6=class extends q.ProgramError{static{n(this,"CouldNotDetermineTokenStandardError")}constructor(e,r){super("Could not determine a TokenStandard type.",e,r),this.name="CouldNotDetermineTokenStandard",this.code=107}};_.CouldNotDetermineTokenStandardError=p6;O.set(107,p6);N.set("CouldNotDetermineTokenStandard",p6);var m6=class extends q.ProgramError{static{n(this,"MissingEditionAccountError")}constructor(e,r){super("This mint account has an edition but none was provided.",e,r),this.name="MissingEditionAccount",this.code=108}};_.MissingEditionAccountError=m6;O.set(108,m6);N.set("MissingEditionAccount",m6);var f6=class extends q.ProgramError{static{n(this,"NotAMasterEditionError")}constructor(e,r){super("This edition is not a Master Edition",e,r),this.name="NotAMasterEdition",this.code=109}};_.NotAMasterEditionError=f6;O.set(109,f6);N.set("NotAMasterEdition",f6);var h6=class extends q.ProgramError{static{n(this,"MasterEditionHasPrintsError")}constructor(e,r){super("This Master Edition has existing prints",e,r),this.name="MasterEditionHasPrints",this.code=110}};_.MasterEditionHasPrintsError=h6;O.set(110,h6);N.set("MasterEditionHasPrints",h6);var g6=class extends q.ProgramError{static{n(this,"BorshDeserializationErrorError")}constructor(e,r){super("",e,r),this.name="BorshDeserializationError",this.code=111}};_.BorshDeserializationErrorError=g6;O.set(111,g6);N.set("BorshDeserializationError",g6);var y6=class extends q.ProgramError{static{n(this,"CannotUpdateVerifiedCollectionError")}constructor(e,r){super("Cannot update a verified collection in this command",e,r),this.name="CannotUpdateVerifiedCollection",this.code=112}};_.CannotUpdateVerifiedCollectionError=y6;O.set(112,y6);N.set("CannotUpdateVerifiedCollection",y6);var b6=class extends q.ProgramError{static{n(this,"CollectionMasterEditionAccountInvalidError")}constructor(e,r){super("Edition account doesnt match collection ",e,r),this.name="CollectionMasterEditionAccountInvalid",this.code=113}};_.CollectionMasterEditionAccountInvalidError=b6;O.set(113,b6);N.set("CollectionMasterEditionAccountInvalid",b6);var v6=class extends q.ProgramError{static{n(this,"AlreadyVerifiedError")}constructor(e,r){super("Item is already verified.",e,r),this.name="AlreadyVerified",this.code=114}};_.AlreadyVerifiedError=v6;O.set(114,v6);N.set("AlreadyVerified",v6);var S6=class extends q.ProgramError{static{n(this,"AlreadyUnverifiedError")}constructor(e,r){super("",e,r),this.name="AlreadyUnverified",this.code=115}};_.AlreadyUnverifiedError=S6;O.set(115,S6);N.set("AlreadyUnverified",S6);var w6=class extends q.ProgramError{static{n(this,"NotAPrintEditionError")}constructor(e,r){super("This edition is not a Print Edition",e,r),this.name="NotAPrintEdition",this.code=116}};_.NotAPrintEditionError=w6;O.set(116,w6);N.set("NotAPrintEdition",w6);var x6=class extends q.ProgramError{static{n(this,"InvalidMasterEditionError")}constructor(e,r){super("Invalid Master Edition",e,r),this.name="InvalidMasterEdition",this.code=117}};_.InvalidMasterEditionError=x6;O.set(117,x6);N.set("InvalidMasterEdition",x6);var A6=class extends q.ProgramError{static{n(this,"InvalidPrintEditionError")}constructor(e,r){super("Invalid Print Edition",e,r),this.name="InvalidPrintEdition",this.code=118}};_.InvalidPrintEditionError=A6;O.set(118,A6);N.set("InvalidPrintEdition",A6);var _6=class extends q.ProgramError{static{n(this,"InvalidEditionMarkerError")}constructor(e,r){super("Invalid Edition Marker",e,r),this.name="InvalidEditionMarker",this.code=119}};_.InvalidEditionMarkerError=_6;O.set(119,_6);N.set("InvalidEditionMarker",_6);var k6=class extends q.ProgramError{static{n(this,"ReservationListDeprecatedError")}constructor(e,r){super("Reservation List is Deprecated",e,r),this.name="ReservationListDeprecated",this.code=120}};_.ReservationListDeprecatedError=k6;O.set(120,k6);N.set("ReservationListDeprecated",k6);var E6=class extends q.ProgramError{static{n(this,"PrintEditionDoesNotMatchMasterEditionError")}constructor(e,r){super("Print Edition does not match Master Edition",e,r),this.name="PrintEditionDoesNotMatchMasterEdition",this.code=121}};_.PrintEditionDoesNotMatchMasterEditionError=E6;O.set(121,E6);N.set("PrintEditionDoesNotMatchMasterEdition",E6);var P6=class extends q.ProgramError{static{n(this,"EditionNumberGreaterThanMaxSupplyError")}constructor(e,r){super("Edition Number greater than max supply",e,r),this.name="EditionNumberGreaterThanMaxSupply",this.code=122}};_.EditionNumberGreaterThanMaxSupplyError=P6;O.set(122,P6);N.set("EditionNumberGreaterThanMaxSupply",P6);var T6=class extends q.ProgramError{static{n(this,"MustUnverifyError")}constructor(e,r){super("Must unverify before migrating collections.",e,r),this.name="MustUnverify",this.code=123}};_.MustUnverifyError=T6;O.set(123,T6);N.set("MustUnverify",T6);var z6=class extends q.ProgramError{static{n(this,"InvalidEscrowBumpSeedError")}constructor(e,r){super("Invalid Escrow Account Bump Seed",e,r),this.name="InvalidEscrowBumpSeed",this.code=124}};_.InvalidEscrowBumpSeedError=z6;O.set(124,z6);N.set("InvalidEscrowBumpSeed",z6);var I6=class extends q.ProgramError{static{n(this,"MustBeEscrowAuthorityError")}constructor(e,r){super("Must Escrow Authority",e,r),this.name="MustBeEscrowAuthority",this.code=125}};_.MustBeEscrowAuthorityError=I6;O.set(125,I6);N.set("MustBeEscrowAuthority",I6);var M6=class extends q.ProgramError{static{n(this,"InvalidSystemProgramError")}constructor(e,r){super("Invalid System Program",e,r),this.name="InvalidSystemProgram",this.code=126}};_.InvalidSystemProgramError=M6;O.set(126,M6);N.set("InvalidSystemProgram",M6);var D6=class extends q.ProgramError{static{n(this,"MustBeNonFungibleError")}constructor(e,r){super("Must be a Non Fungible Token",e,r),this.name="MustBeNonFungible",this.code=127}};_.MustBeNonFungibleError=D6;O.set(127,D6);N.set("MustBeNonFungible",D6);var R6=class extends q.ProgramError{static{n(this,"InsufficientTokensError")}constructor(e,r){super("Insufficient tokens for transfer",e,r),this.name="InsufficientTokens",this.code=128}};_.InsufficientTokensError=R6;O.set(128,R6);N.set("InsufficientTokens",R6);var B6=class extends q.ProgramError{static{n(this,"BorshSerializationErrorError")}constructor(e,r){super("Borsh Serialization Error",e,r),this.name="BorshSerializationError",this.code=129}};_.BorshSerializationErrorError=B6;O.set(129,B6);N.set("BorshSerializationError",B6);var C6=class extends q.ProgramError{static{n(this,"NoFreezeAuthoritySetError")}constructor(e,r){super("Cannot create NFT with no Freeze Authority.",e,r),this.name="NoFreezeAuthoritySet",this.code=130}};_.NoFreezeAuthoritySetError=C6;O.set(130,C6);N.set("NoFreezeAuthoritySet",C6);var O6=class extends q.ProgramError{static{n(this,"InvalidCollectionSizeChangeError")}constructor(e,r){super("Invalid collection size change",e,r),this.name="InvalidCollectionSizeChange",this.code=131}};_.InvalidCollectionSizeChangeError=O6;O.set(131,O6);N.set("InvalidCollectionSizeChange",O6);var N6=class extends q.ProgramError{static{n(this,"InvalidBubblegumSignerError")}constructor(e,r){super("Invalid bubblegum signer",e,r),this.name="InvalidBubblegumSigner",this.code=132}};_.InvalidBubblegumSignerError=N6;O.set(132,N6);N.set("InvalidBubblegumSigner",N6);var q6=class extends q.ProgramError{static{n(this,"EscrowParentHasDelegateError")}constructor(e,r){super("Escrow parent cannot have a delegate",e,r),this.name="EscrowParentHasDelegate",this.code=133}};_.EscrowParentHasDelegateError=q6;O.set(133,q6);N.set("EscrowParentHasDelegate",q6);var W6=class extends q.ProgramError{static{n(this,"MintIsNotSignerError")}constructor(e,r){super("Mint needs to be signer to initialize the account",e,r),this.name="MintIsNotSigner",this.code=134}};_.MintIsNotSignerError=W6;O.set(134,W6);N.set("MintIsNotSigner",W6);var V6=class extends q.ProgramError{static{n(this,"InvalidTokenStandardError")}constructor(e,r){super("Invalid token standard",e,r),this.name="InvalidTokenStandard",this.code=135}};_.InvalidTokenStandardError=V6;O.set(135,V6);N.set("InvalidTokenStandard",V6);var F6=class extends q.ProgramError{static{n(this,"InvalidMintForTokenStandardError")}constructor(e,r){super("Invalid mint account for specified token standard",e,r),this.name="InvalidMintForTokenStandard",this.code=136}};_.InvalidMintForTokenStandardError=F6;O.set(136,F6);N.set("InvalidMintForTokenStandard",F6);var K6=class extends q.ProgramError{static{n(this,"InvalidAuthorizationRulesError")}constructor(e,r){super("Invalid authorization rules account",e,r),this.name="InvalidAuthorizationRules",this.code=137}};_.InvalidAuthorizationRulesError=K6;O.set(137,K6);N.set("InvalidAuthorizationRules",K6);var L6=class extends q.ProgramError{static{n(this,"MissingAuthorizationRulesError")}constructor(e,r){super("Missing authorization rules account",e,r),this.name="MissingAuthorizationRules",this.code=138}};_.MissingAuthorizationRulesError=L6;O.set(138,L6);N.set("MissingAuthorizationRules",L6);var U6=class extends q.ProgramError{static{n(this,"MissingProgrammableConfigError")}constructor(e,r){super("Missing programmable configuration",e,r),this.name="MissingProgrammableConfig",this.code=139}};_.MissingProgrammableConfigError=U6;O.set(139,U6);N.set("MissingProgrammableConfig",U6);var j6=class extends q.ProgramError{static{n(this,"InvalidProgrammableConfigError")}constructor(e,r){super("Invalid programmable configuration",e,r),this.name="InvalidProgrammableConfig",this.code=140}};_.InvalidProgrammableConfigError=j6;O.set(140,j6);N.set("InvalidProgrammableConfig",j6);var H6=class extends q.ProgramError{static{n(this,"DelegateAlreadyExistsError")}constructor(e,r){super("Delegate already exists",e,r),this.name="DelegateAlreadyExists",this.code=141}};_.DelegateAlreadyExistsError=H6;O.set(141,H6);N.set("DelegateAlreadyExists",H6);var $6=class extends q.ProgramError{static{n(this,"DelegateNotFoundError")}constructor(e,r){super("Delegate not found",e,r),this.name="DelegateNotFound",this.code=142}};_.DelegateNotFoundError=$6;O.set(142,$6);N.set("DelegateNotFound",$6);var G6=class extends q.ProgramError{static{n(this,"MissingAccountInBuilderError")}constructor(e,r){super("Required account not set in instruction builder",e,r),this.name="MissingAccountInBuilder",this.code=143}};_.MissingAccountInBuilderError=G6;O.set(143,G6);N.set("MissingAccountInBuilder",G6);var Z6=class extends q.ProgramError{static{n(this,"MissingArgumentInBuilderError")}constructor(e,r){super("Required argument not set in instruction builder",e,r),this.name="MissingArgumentInBuilder",this.code=144}};_.MissingArgumentInBuilderError=Z6;O.set(144,Z6);N.set("MissingArgumentInBuilder",Z6);var J6=class extends q.ProgramError{static{n(this,"FeatureNotSupportedError")}constructor(e,r){super("Feature not supported currently",e,r),this.name="FeatureNotSupported",this.code=145}};_.FeatureNotSupportedError=J6;O.set(145,J6);N.set("FeatureNotSupported",J6);var Y6=class extends q.ProgramError{static{n(this,"InvalidSystemWalletError")}constructor(e,r){super("Invalid system wallet",e,r),this.name="InvalidSystemWallet",this.code=146}};_.InvalidSystemWalletError=Y6;O.set(146,Y6);N.set("InvalidSystemWallet",Y6);var Q6=class extends q.ProgramError{static{n(this,"OnlySaleDelegateCanTransferError")}constructor(e,r){super("Only the sale delegate can transfer while its set",e,r),this.name="OnlySaleDelegateCanTransfer",this.code=147}};_.OnlySaleDelegateCanTransferError=Q6;O.set(147,Q6);N.set("OnlySaleDelegateCanTransfer",Q6);var X6=class extends q.ProgramError{static{n(this,"MissingTokenAccountError")}constructor(e,r){super("Missing token account",e,r),this.name="MissingTokenAccount",this.code=148}};_.MissingTokenAccountError=X6;O.set(148,X6);N.set("MissingTokenAccount",X6);var eh=class extends q.ProgramError{static{n(this,"MissingSplTokenProgramError")}constructor(e,r){super("Missing SPL token program",e,r),this.name="MissingSplTokenProgram",this.code=149}};_.MissingSplTokenProgramError=eh;O.set(149,eh);N.set("MissingSplTokenProgram",eh);var th=class extends q.ProgramError{static{n(this,"MissingAuthorizationRulesProgramError")}constructor(e,r){super("Missing authorization rules program",e,r),this.name="MissingAuthorizationRulesProgram",this.code=150}};_.MissingAuthorizationRulesProgramError=th;O.set(150,th);N.set("MissingAuthorizationRulesProgram",th);var rh=class extends q.ProgramError{static{n(this,"InvalidDelegateRoleForTransferError")}constructor(e,r){super("Invalid delegate role for transfer",e,r),this.name="InvalidDelegateRoleForTransfer",this.code=151}};_.InvalidDelegateRoleForTransferError=rh;O.set(151,rh);N.set("InvalidDelegateRoleForTransfer",rh);var ih=class extends q.ProgramError{static{n(this,"InvalidTransferAuthorityError")}constructor(e,r){super("Invalid transfer authority",e,r),this.name="InvalidTransferAuthority",this.code=152}};_.InvalidTransferAuthorityError=ih;O.set(152,ih);N.set("InvalidTransferAuthority",ih);var ah=class extends q.ProgramError{static{n(this,"InstructionNotSupportedError")}constructor(e,r){super("Instruction not supported for ProgrammableNonFungible assets",e,r),this.name="InstructionNotSupported",this.code=153}};_.InstructionNotSupportedError=ah;O.set(153,ah);N.set("InstructionNotSupported",ah);var nh=class extends q.ProgramError{static{n(this,"KeyMismatchError")}constructor(e,r){super("Public key does not match expected value",e,r),this.name="KeyMismatch",this.code=154}};_.KeyMismatchError=nh;O.set(154,nh);N.set("KeyMismatch",nh);var sh=class extends q.ProgramError{static{n(this,"LockedTokenError")}constructor(e,r){super("Token is locked",e,r),this.name="LockedToken",this.code=155}};_.LockedTokenError=sh;O.set(155,sh);N.set("LockedToken",sh);var oh=class extends q.ProgramError{static{n(this,"UnlockedTokenError")}constructor(e,r){super("Token is unlocked",e,r),this.name="UnlockedToken",this.code=156}};_.UnlockedTokenError=oh;O.set(156,oh);N.set("UnlockedToken",oh);var lh=class extends q.ProgramError{static{n(this,"MissingDelegateRoleError")}constructor(e,r){super("Missing delegate role",e,r),this.name="MissingDelegateRole",this.code=157}};_.MissingDelegateRoleError=lh;O.set(157,lh);N.set("MissingDelegateRole",lh);var dh=class extends q.ProgramError{static{n(this,"InvalidAuthorityTypeError")}constructor(e,r){super("Invalid authority type",e,r),this.name="InvalidAuthorityType",this.code=158}};_.InvalidAuthorityTypeError=dh;O.set(158,dh);N.set("InvalidAuthorityType",dh);var uh=class extends q.ProgramError{static{n(this,"MissingTokenRecordError")}constructor(e,r){super("Missing token record account",e,r),this.name="MissingTokenRecord",this.code=159}};_.MissingTokenRecordError=uh;O.set(159,uh);N.set("MissingTokenRecord",uh);var ch=class extends q.ProgramError{static{n(this,"MintSupplyMustBeZeroError")}constructor(e,r){super("Mint supply must be zero for programmable assets",e,r),this.name="MintSupplyMustBeZero",this.code=160}};_.MintSupplyMustBeZeroError=ch;O.set(160,ch);N.set("MintSupplyMustBeZero",ch);var ph=class extends q.ProgramError{static{n(this,"DataIsEmptyOrZeroedError")}constructor(e,r){super("Data is empty or zeroed",e,r),this.name="DataIsEmptyOrZeroed",this.code=161}};_.DataIsEmptyOrZeroedError=ph;O.set(161,ph);N.set("DataIsEmptyOrZeroed",ph);var mh=class extends q.ProgramError{static{n(this,"MissingTokenOwnerAccountError")}constructor(e,r){super("Missing token owner",e,r),this.name="MissingTokenOwnerAccount",this.code=162}};_.MissingTokenOwnerAccountError=mh;O.set(162,mh);N.set("MissingTokenOwnerAccount",mh);var fh=class extends q.ProgramError{static{n(this,"InvalidMasterEditionAccountLengthError")}constructor(e,r){super("Master edition account has an invalid length",e,r),this.name="InvalidMasterEditionAccountLength",this.code=163}};_.InvalidMasterEditionAccountLengthError=fh;O.set(163,fh);N.set("InvalidMasterEditionAccountLength",fh);var hh=class extends q.ProgramError{static{n(this,"IncorrectTokenStateError")}constructor(e,r){super("Incorrect token state",e,r),this.name="IncorrectTokenState",this.code=164}};_.IncorrectTokenStateError=hh;O.set(164,hh);N.set("IncorrectTokenState",hh);var gh=class extends q.ProgramError{static{n(this,"InvalidDelegateRoleError")}constructor(e,r){super("Invalid delegate role",e,r),this.name="InvalidDelegateRole",this.code=165}};_.InvalidDelegateRoleError=gh;O.set(165,gh);N.set("InvalidDelegateRole",gh);var yh=class extends q.ProgramError{static{n(this,"MissingPrintSupplyError")}constructor(e,r){super("Print supply is required for non-fungibles",e,r),this.name="MissingPrintSupply",this.code=166}};_.MissingPrintSupplyError=yh;O.set(166,yh);N.set("MissingPrintSupply",yh);var bh=class extends q.ProgramError{static{n(this,"MissingMasterEditionAccountError")}constructor(e,r){super("Missing master edition account",e,r),this.name="MissingMasterEditionAccount",this.code=167}};_.MissingMasterEditionAccountError=bh;O.set(167,bh);N.set("MissingMasterEditionAccount",bh);var vh=class extends q.ProgramError{static{n(this,"AmountMustBeGreaterThanZeroError")}constructor(e,r){super("Amount must be greater than zero",e,r),this.name="AmountMustBeGreaterThanZero",this.code=168}};_.AmountMustBeGreaterThanZeroError=vh;O.set(168,vh);N.set("AmountMustBeGreaterThanZero",vh);var Sh=class extends q.ProgramError{static{n(this,"InvalidDelegateArgsError")}constructor(e,r){super("Invalid delegate args",e,r),this.name="InvalidDelegateArgs",this.code=169}};_.InvalidDelegateArgsError=Sh;O.set(169,Sh);N.set("InvalidDelegateArgs",Sh);var wh=class extends q.ProgramError{static{n(this,"MissingLockedTransferAddressError")}constructor(e,r){super("Missing address for locked transfer",e,r),this.name="MissingLockedTransferAddress",this.code=170}};_.MissingLockedTransferAddressError=wh;O.set(170,wh);N.set("MissingLockedTransferAddress",wh);var xh=class extends q.ProgramError{static{n(this,"InvalidLockedTransferAddressError")}constructor(e,r){super("Invalid destination address for locked transfer",e,r),this.name="InvalidLockedTransferAddress",this.code=171}};_.InvalidLockedTransferAddressError=xh;O.set(171,xh);N.set("InvalidLockedTransferAddress",xh);var Ah=class extends q.ProgramError{static{n(this,"DataIncrementLimitExceededError")}constructor(e,r){super("Exceeded account realloc increase limit",e,r),this.name="DataIncrementLimitExceeded",this.code=172}};_.DataIncrementLimitExceededError=Ah;O.set(172,Ah);N.set("DataIncrementLimitExceeded",Ah);var _h=class extends q.ProgramError{static{n(this,"CannotUpdateAssetWithDelegateError")}constructor(e,r){super("Cannot update the rule set of a programmable asset that has a delegate",e,r),this.name="CannotUpdateAssetWithDelegate",this.code=173}};_.CannotUpdateAssetWithDelegateError=_h;O.set(173,_h);N.set("CannotUpdateAssetWithDelegate",_h);var kh=class extends q.ProgramError{static{n(this,"InvalidAmountError")}constructor(e,r){super("Invalid token amount for this operation or token standard",e,r),this.name="InvalidAmount",this.code=174}};_.InvalidAmountError=kh;O.set(174,kh);N.set("InvalidAmount",kh);var Eh=class extends q.ProgramError{static{n(this,"MissingMasterEditionMintAccountError")}constructor(e,r){super("Missing master edition mint account",e,r),this.name="MissingMasterEditionMintAccount",this.code=175}};_.MissingMasterEditionMintAccountError=Eh;O.set(175,Eh);N.set("MissingMasterEditionMintAccount",Eh);var Ph=class extends q.ProgramError{static{n(this,"MissingMasterEditionTokenAccountError")}constructor(e,r){super("Missing master edition token account",e,r),this.name="MissingMasterEditionTokenAccount",this.code=176}};_.MissingMasterEditionTokenAccountError=Ph;O.set(176,Ph);N.set("MissingMasterEditionTokenAccount",Ph);var Th=class extends q.ProgramError{static{n(this,"MissingEditionMarkerAccountError")}constructor(e,r){super("Missing edition marker account",e,r),this.name="MissingEditionMarkerAccount",this.code=177}};_.MissingEditionMarkerAccountError=Th;O.set(177,Th);N.set("MissingEditionMarkerAccount",Th);var zh=class extends q.ProgramError{static{n(this,"CannotBurnWithDelegateError")}constructor(e,r){super("Cannot burn while persistent delegate is set",e,r),this.name="CannotBurnWithDelegate",this.code=178}};_.CannotBurnWithDelegateError=zh;O.set(178,zh);N.set("CannotBurnWithDelegate",zh);var Ih=class extends q.ProgramError{static{n(this,"MissingEditionError")}constructor(e,r){super("Missing edition account",e,r),this.name="MissingEdition",this.code=179}};_.MissingEditionError=Ih;O.set(179,Ih);N.set("MissingEdition",Ih);var Mh=class extends q.ProgramError{static{n(this,"InvalidAssociatedTokenAccountProgramError")}constructor(e,r){super("Invalid Associated Token Account Program",e,r),this.name="InvalidAssociatedTokenAccountProgram",this.code=180}};_.InvalidAssociatedTokenAccountProgramError=Mh;O.set(180,Mh);N.set("InvalidAssociatedTokenAccountProgram",Mh);var Dh=class extends q.ProgramError{static{n(this,"InvalidInstructionsSysvarError")}constructor(e,r){super("Invalid InstructionsSysvar",e,r),this.name="InvalidInstructionsSysvar",this.code=181}};_.InvalidInstructionsSysvarError=Dh;O.set(181,Dh);N.set("InvalidInstructionsSysvar",Dh);var Rh=class extends q.ProgramError{static{n(this,"InvalidParentAccountsError")}constructor(e,r){super("Invalid or Unneeded parent accounts",e,r),this.name="InvalidParentAccounts",this.code=182}};_.InvalidParentAccountsError=Rh;O.set(182,Rh);N.set("InvalidParentAccounts",Rh);var Bh=class extends q.ProgramError{static{n(this,"InvalidUpdateArgsError")}constructor(e,r){super("Authority cannot apply all update args",e,r),this.name="InvalidUpdateArgs",this.code=183}};_.InvalidUpdateArgsError=Bh;O.set(183,Bh);N.set("InvalidUpdateArgs",Bh);var Ch=class extends q.ProgramError{static{n(this,"InsufficientTokenBalanceError")}constructor(e,r){super("Token account does not have enough tokens",e,r),this.name="InsufficientTokenBalance",this.code=184}};_.InsufficientTokenBalanceError=Ch;O.set(184,Ch);N.set("InsufficientTokenBalance",Ch);var Oh=class extends q.ProgramError{static{n(this,"MissingCollectionMintError")}constructor(e,r){super("Missing collection account",e,r),this.name="MissingCollectionMint",this.code=185}};_.MissingCollectionMintError=Oh;O.set(185,Oh);N.set("MissingCollectionMint",Oh);var Nh=class extends q.ProgramError{static{n(this,"MissingCollectionMasterEditionError")}constructor(e,r){super("Missing collection master edition account",e,r),this.name="MissingCollectionMasterEdition",this.code=186}};_.MissingCollectionMasterEditionError=Nh;O.set(186,Nh);N.set("MissingCollectionMasterEdition",Nh);var qh=class extends q.ProgramError{static{n(this,"InvalidTokenRecordError")}constructor(e,r){super("Invalid token record account",e,r),this.name="InvalidTokenRecord",this.code=187}};_.InvalidTokenRecordError=qh;O.set(187,qh);N.set("InvalidTokenRecord",qh);var Wh=class extends q.ProgramError{static{n(this,"InvalidCloseAuthorityError")}constructor(e,r){super("The close authority needs to be revoked by the Utility Delegate",e,r),this.name="InvalidCloseAuthority",this.code=188}};_.InvalidCloseAuthorityError=Wh;O.set(188,Wh);N.set("InvalidCloseAuthority",Wh);var Vh=class extends q.ProgramError{static{n(this,"InvalidInstructionError")}constructor(e,r){super("Invalid or removed instruction",e,r),this.name="InvalidInstruction",this.code=189}};_.InvalidInstructionError=Vh;O.set(189,Vh);N.set("InvalidInstruction",Vh);var Fh=class extends q.ProgramError{static{n(this,"MissingDelegateRecordError")}constructor(e,r){super("Missing delegate record",e,r),this.name="MissingDelegateRecord",this.code=190}};_.MissingDelegateRecordError=Fh;O.set(190,Fh);N.set("MissingDelegateRecord",Fh);var Kh=class extends q.ProgramError{static{n(this,"InvalidFeeAccountError")}constructor(e,r){super("",e,r),this.name="InvalidFeeAccount",this.code=191}};_.InvalidFeeAccountError=Kh;O.set(191,Kh);N.set("InvalidFeeAccount",Kh);var Lh=class extends q.ProgramError{static{n(this,"InvalidMetadataFlagsError")}constructor(e,r){super("",e,r),this.name="InvalidMetadataFlags",this.code=192}};_.InvalidMetadataFlagsError=Lh;O.set(192,Lh);N.set("InvalidMetadataFlags",Lh);var Uh=class extends q.ProgramError{static{n(this,"CannotChangeUpdateAuthorityWithDelegateError")}constructor(e,r){super("Cannot change the update authority with a delegate",e,r),this.name="CannotChangeUpdateAuthorityWithDelegate",this.code=193}};_.CannotChangeUpdateAuthorityWithDelegateError=Uh;O.set(193,Uh);N.set("CannotChangeUpdateAuthorityWithDelegate",Uh);function Yme(t,e,r){let i=O.get(t);return i?new i(e,r):null}n(Yme,"getMplTokenMetadataErrorFromCode");_.getMplTokenMetadataErrorFromCode=Yme;function Qme(t,e,r){let i=N.get(t);return i?new i(e,r):null}n(Qme,"getMplTokenMetadataErrorFromName");_.getMplTokenMetadataErrorFromName=Qme});var GA=v($l=>{"use strict";var Xme=$l&&$l.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),efe=$l&&$l.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Xme(e,t,r)};Object.defineProperty($l,"__esModule",{value:!0});efe(uV(),$l)});var ee=v(wn=>{"use strict";Object.defineProperty(wn,"__esModule",{value:!0});wn.getAccountMetasAndSigners=wn.expectPda=wn.expectPublicKey=wn.expectSome=void 0;var jh=K();function tfe(t){if(t==null)throw new Error("Expected a value but received null or undefined.");return t}n(tfe,"expectSome");wn.expectSome=tfe;function rfe(t){if(!t)throw new Error("Expected a PublicKey.");return(0,jh.publicKey)(t,!1)}n(rfe,"expectPublicKey");wn.expectPublicKey=rfe;function ife(t){if(!t||!Array.isArray(t)||!(0,jh.isPda)(t))throw new Error("Expected a PDA.");return t}n(ife,"expectPda");wn.expectPda=ife;function afe(t,e,r){let i=[],a=[];return t.forEach(s=>{if(!s.value){if(e==="omitted")return;i.push({pubkey:r,isSigner:!1,isWritable:!1});return}(0,jh.isSigner)(s.value)&&a.push(s.value),i.push({pubkey:(0,jh.publicKey)(s.value,!1),isSigner:(0,jh.isSigner)(s.value),isWritable:s.isWritable})}),[i,a]}n(afe,"getAccountMetasAndSigners");wn.getAccountMetasAndSigners=afe});var mV=v(Ku=>{"use strict";Object.defineProperty(Ku,"__esModule",{value:!0});Ku.approveCollectionAuthority=Ku.getApproveCollectionAuthorityInstructionDataSerializer=void 0;var nfe=K(),ZA=V(),sfe=ue(),cV=ee();function pV(){return(0,ZA.mapSerializer)((0,ZA.struct)([["discriminator",(0,ZA.u8)()]],{description:"ApproveCollectionAuthorityInstructionData"}),t=>({...t,discriminator:23}))}n(pV,"getApproveCollectionAuthorityInstructionDataSerializer");Ku.getApproveCollectionAuthorityInstructionDataSerializer=pV;function ofe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={collectionAuthorityRecord:{index:0,isWritable:!0,value:e.collectionAuthorityRecord??null},newCollectionAuthority:{index:1,isWritable:!1,value:e.newCollectionAuthority??null},updateAuthority:{index:2,isWritable:!0,value:e.updateAuthority??null},payer:{index:3,isWritable:!0,value:e.payer??null},metadata:{index:4,isWritable:!1,value:e.metadata??null},mint:{index:5,isWritable:!1,value:e.mint??null},systemProgram:{index:6,isWritable:!1,value:e.systemProgram??null},rent:{index:7,isWritable:!1,value:e.rent??null}};i.updateAuthority.value||(i.updateAuthority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.metadata.value||(i.metadata.value=(0,sfe.findMetadataPda)(t,{mint:(0,cV.expectPublicKey)(i.mint.value)})),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1);let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,cV.getAccountMetasAndSigners)(a,"omitted",r),l=pV().serialize({}),d=0;return(0,nfe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(ofe,"approveCollectionAuthority");Ku.approveCollectionAuthority=ofe});var gV=v(Lu=>{"use strict";Object.defineProperty(Lu,"__esModule",{value:!0});Lu.approveUseAuthority=Lu.getApproveUseAuthorityInstructionDataSerializer=void 0;var lfe=K(),N5=V(),dfe=ue(),fV=ee();function hV(){return(0,N5.mapSerializer)((0,N5.struct)([["discriminator",(0,N5.u8)()],["numberOfUses",(0,N5.u64)()]],{description:"ApproveUseAuthorityInstructionData"}),t=>({...t,discriminator:20}))}n(hV,"getApproveUseAuthorityInstructionDataSerializer");Lu.getApproveUseAuthorityInstructionDataSerializer=hV;function ufe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={useAuthorityRecord:{index:0,isWritable:!0,value:e.useAuthorityRecord??null},owner:{index:1,isWritable:!0,value:e.owner??null},payer:{index:2,isWritable:!0,value:e.payer??null},user:{index:3,isWritable:!1,value:e.user??null},ownerTokenAccount:{index:4,isWritable:!0,value:e.ownerTokenAccount??null},metadata:{index:5,isWritable:!1,value:e.metadata??null},mint:{index:6,isWritable:!1,value:e.mint??null},burner:{index:7,isWritable:!1,value:e.burner??null},tokenProgram:{index:8,isWritable:!1,value:e.tokenProgram??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},rent:{index:10,isWritable:!1,value:e.rent??null}},a={...e};i.payer.value||(i.payer.value=t.payer),i.metadata.value||(i.metadata.value=(0,dfe.findMetadataPda)(t,{mint:(0,fV.expectPublicKey)(i.mint.value)})),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,fV.getAccountMetasAndSigners)(s,"omitted",r),d=hV().serialize(a),u=0;return(0,lfe.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(ufe,"approveUseAuthority");Lu.approveUseAuthority=ufe});var bV=v(Uu=>{"use strict";Object.defineProperty(Uu,"__esModule",{value:!0});Uu.bubblegumSetCollectionSize=Uu.getBubblegumSetCollectionSizeInstructionDataSerializer=void 0;var cfe=K(),JA=V(),pfe=ee(),mfe=ae();function yV(){return(0,JA.mapSerializer)((0,JA.struct)([["discriminator",(0,JA.u8)()],["setCollectionSizeArgs",(0,mfe.getSetCollectionSizeArgsSerializer)()]],{description:"BubblegumSetCollectionSizeInstructionData"}),t=>({...t,discriminator:36}))}n(yV,"getBubblegumSetCollectionSizeInstructionDataSerializer");Uu.getBubblegumSetCollectionSizeInstructionDataSerializer=yV;function ffe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={collectionMetadata:{index:0,isWritable:!0,value:e.collectionMetadata??null},collectionAuthority:{index:1,isWritable:!0,value:e.collectionAuthority??null},collectionMint:{index:2,isWritable:!1,value:e.collectionMint??null},bubblegumSigner:{index:3,isWritable:!1,value:e.bubblegumSigner??null},collectionAuthorityRecord:{index:4,isWritable:!1,value:e.collectionAuthorityRecord??null}},a={...e},s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,pfe.getAccountMetasAndSigners)(s,"omitted",r),d=yV().serialize(a),u=0;return(0,cfe.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(ffe,"bubblegumSetCollectionSize");Uu.bubblegumSetCollectionSize=ffe});var SV=v(ju=>{"use strict";Object.defineProperty(ju,"__esModule",{value:!0});ju.burnEditionNft=ju.getBurnEditionNftInstructionDataSerializer=void 0;var hfe=K(),YA=V(),gfe=ee();function vV(){return(0,YA.mapSerializer)((0,YA.struct)([["discriminator",(0,YA.u8)()]],{description:"BurnEditionNftInstructionData"}),t=>({...t,discriminator:37}))}n(vV,"getBurnEditionNftInstructionDataSerializer");ju.getBurnEditionNftInstructionDataSerializer=vV;function yfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},owner:{index:1,isWritable:!0,value:e.owner??null},printEditionMint:{index:2,isWritable:!0,value:e.printEditionMint??null},masterEditionMint:{index:3,isWritable:!1,value:e.masterEditionMint??null},printEditionTokenAccount:{index:4,isWritable:!0,value:e.printEditionTokenAccount??null},masterEditionTokenAccount:{index:5,isWritable:!1,value:e.masterEditionTokenAccount??null},masterEditionAccount:{index:6,isWritable:!0,value:e.masterEditionAccount??null},printEditionAccount:{index:7,isWritable:!0,value:e.printEditionAccount??null},editionMarkerAccount:{index:8,isWritable:!0,value:e.editionMarkerAccount??null},splTokenProgram:{index:9,isWritable:!1,value:e.splTokenProgram??null}};i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1);let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,gfe.getAccountMetasAndSigners)(a,"programId",r),l=vV().serialize({}),d=0;return(0,hfe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(yfe,"burnEditionNft");ju.burnEditionNft=yfe});var AV=v(Hu=>{"use strict";Object.defineProperty(Hu,"__esModule",{value:!0});Hu.burnNft=Hu.getBurnNftInstructionDataSerializer=void 0;var bfe=K(),QA=V(),vfe=ue(),wV=ee();function xV(){return(0,QA.mapSerializer)((0,QA.struct)([["discriminator",(0,QA.u8)()]],{description:"BurnNftInstructionData"}),t=>({...t,discriminator:29}))}n(xV,"getBurnNftInstructionDataSerializer");Hu.getBurnNftInstructionDataSerializer=xV;function Sfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},owner:{index:1,isWritable:!0,value:e.owner??null},mint:{index:2,isWritable:!0,value:e.mint??null},tokenAccount:{index:3,isWritable:!0,value:e.tokenAccount??null},masterEditionAccount:{index:4,isWritable:!0,value:e.masterEditionAccount??null},splTokenProgram:{index:5,isWritable:!1,value:e.splTokenProgram??null},collectionMetadata:{index:6,isWritable:!0,value:e.collectionMetadata??null}};i.metadata.value||(i.metadata.value=(0,vfe.findMetadataPda)(t,{mint:(0,wV.expectPublicKey)(i.mint.value)})),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1);let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,wV.getAccountMetasAndSigners)(a,"omitted",r),l=xV().serialize({}),d=0;return(0,bfe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(Sfe,"burnNft");Hu.burnNft=Sfe});var EV=v($u=>{"use strict";Object.defineProperty($u,"__esModule",{value:!0});$u.burnV1=$u.getBurnV1InstructionDataSerializer=void 0;var wfe=kt(),_V=K(),Hh=V(),xfe=Ve(),q5=ue(),$o=ee(),Afe=ae();function kV(){return(0,Hh.mapSerializer)((0,Hh.struct)([["discriminator",(0,Hh.u8)()],["burnV1Discriminator",(0,Hh.u8)()],["amount",(0,Hh.u64)()]],{description:"BurnV1InstructionData"}),t=>({...t,discriminator:41,burnV1Discriminator:0,amount:t.amount??1}))}n(kV,"getBurnV1InstructionDataSerializer");$u.getBurnV1InstructionDataSerializer=kV;function _fe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!0,value:e.authority??null},collectionMetadata:{index:1,isWritable:!0,value:e.collectionMetadata??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},edition:{index:3,isWritable:!0,value:e.edition??null},mint:{index:4,isWritable:!0,value:e.mint??null},token:{index:5,isWritable:!0,value:e.token??null},masterEdition:{index:6,isWritable:!0,value:e.masterEdition??null},masterEditionMint:{index:7,isWritable:!1,value:e.masterEditionMint??null},masterEditionToken:{index:8,isWritable:!1,value:e.masterEditionToken??null},editionMarker:{index:9,isWritable:!0,value:e.editionMarker??null},tokenRecord:{index:10,isWritable:!0,value:e.tokenRecord??null},systemProgram:{index:11,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:12,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:13,isWritable:!1,value:e.splTokenProgram??null}},a={...e};i.authority.value||(i.authority.value=t.identity),i.metadata.value||(i.metadata.value=(0,q5.findMetadataPda)(t,{mint:(0,$o.expectPublicKey)(i.mint.value)})),i.edition.value||(0,xfe.resolveIsNonFungible)(t,i,a,r,!0)&&(i.edition.value=(0,q5.findMasterEditionPda)(t,{mint:(0,$o.expectPublicKey)(i.mint.value)})),a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,wfe.findAssociatedTokenPda)(t,{mint:(0,$o.expectPublicKey)(i.mint.value),owner:(0,$o.expectSome)(a.tokenOwner)})),i.masterEdition.value||i.masterEditionMint.value&&(i.masterEdition.value=(0,q5.findMasterEditionPda)(t,{mint:(0,$o.expectPublicKey)(i.masterEditionMint.value)})),i.tokenRecord.value||a.tokenStandard===Afe.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,q5.findTokenRecordPda)(t,{mint:(0,$o.expectPublicKey)(i.mint.value),token:(0,$o.expectPublicKey)(i.token.value)})),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,_V.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,$o.getAccountMetasAndSigners)(s,"programId",r),d=kV().serialize(a),u=0;return(0,_V.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(_fe,"burnV1");$u.burnV1=_fe});var IV=v(Gu=>{"use strict";Object.defineProperty(Gu,"__esModule",{value:!0});Gu.closeEscrowAccount=Gu.getCloseEscrowAccountInstructionDataSerializer=void 0;var PV=K(),XA=V(),TV=ue(),e_=ee();function zV(){return(0,XA.mapSerializer)((0,XA.struct)([["discriminator",(0,XA.u8)()]],{description:"CloseEscrowAccountInstructionData"}),t=>({...t,discriminator:39}))}n(zV,"getCloseEscrowAccountInstructionDataSerializer");Gu.getCloseEscrowAccountInstructionDataSerializer=zV;function kfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={escrow:{index:0,isWritable:!0,value:e.escrow??null},metadata:{index:1,isWritable:!0,value:e.metadata??null},mint:{index:2,isWritable:!1,value:e.mint??null},tokenAccount:{index:3,isWritable:!1,value:e.tokenAccount??null},edition:{index:4,isWritable:!1,value:e.edition??null},payer:{index:5,isWritable:!0,value:e.payer??null},systemProgram:{index:6,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:7,isWritable:!1,value:e.sysvarInstructions??null}};i.metadata.value||(i.metadata.value=(0,TV.findMetadataPda)(t,{mint:(0,e_.expectPublicKey)(i.mint.value)})),i.edition.value||(i.edition.value=(0,TV.findMasterEditionPda)(t,{mint:(0,e_.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,PV.publicKey)("Sysvar1nstructions1111111111111111111111111"));let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,e_.getAccountMetasAndSigners)(a,"programId",r),l=zV().serialize({}),d=0;return(0,PV.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(kfe,"closeEscrowAccount");Gu.closeEscrowAccount=kfe});var DV=v(Zu=>{"use strict";Object.defineProperty(Zu,"__esModule",{value:!0});Zu.collect=Zu.getCollectInstructionDataSerializer=void 0;var Efe=K(),t_=V(),Pfe=ee();function MV(){return(0,t_.mapSerializer)((0,t_.struct)([["discriminator",(0,t_.u8)()]],{description:"CollectInstructionData"}),t=>({...t,discriminator:54}))}n(MV,"getCollectInstructionDataSerializer");Zu.getCollectInstructionDataSerializer=MV;function Tfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},pdaAccount:{index:1,isWritable:!1,value:e.pdaAccount??null}};i.authority.value||(i.authority.value=t.identity);let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Pfe.getAccountMetasAndSigners)(a,"programId",r),l=MV().serialize({}),d=0;return(0,Efe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(Tfe,"collect");Zu.collect=Tfe});var BV=v(Ju=>{"use strict";Object.defineProperty(Ju,"__esModule",{value:!0});Ju.convertMasterEditionV1ToV2=Ju.getConvertMasterEditionV1ToV2InstructionDataSerializer=void 0;var zfe=K(),r_=V(),Ife=ee();function RV(){return(0,r_.mapSerializer)((0,r_.struct)([["discriminator",(0,r_.u8)()]],{description:"ConvertMasterEditionV1ToV2InstructionData"}),t=>({...t,discriminator:12}))}n(RV,"getConvertMasterEditionV1ToV2InstructionDataSerializer");Ju.getConvertMasterEditionV1ToV2InstructionDataSerializer=RV;function Mfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={masterEdition:{index:0,isWritable:!0,value:e.masterEdition??null},oneTimeAuth:{index:1,isWritable:!0,value:e.oneTimeAuth??null},printingMint:{index:2,isWritable:!0,value:e.printingMint??null}},a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Ife.getAccountMetasAndSigners)(a,"programId",r),l=RV().serialize({}),d=0;return(0,zfe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(Mfe,"convertMasterEditionV1ToV2");Ju.convertMasterEditionV1ToV2=Mfe});var qV=v(Yu=>{"use strict";Object.defineProperty(Yu,"__esModule",{value:!0});Yu.createEscrowAccount=Yu.getCreateEscrowAccountInstructionDataSerializer=void 0;var CV=K(),i_=V(),OV=ue(),a_=ee();function NV(){return(0,i_.mapSerializer)((0,i_.struct)([["discriminator",(0,i_.u8)()]],{description:"CreateEscrowAccountInstructionData"}),t=>({...t,discriminator:38}))}n(NV,"getCreateEscrowAccountInstructionDataSerializer");Yu.getCreateEscrowAccountInstructionDataSerializer=NV;function Dfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={escrow:{index:0,isWritable:!0,value:e.escrow??null},metadata:{index:1,isWritable:!0,value:e.metadata??null},mint:{index:2,isWritable:!1,value:e.mint??null},tokenAccount:{index:3,isWritable:!1,value:e.tokenAccount??null},edition:{index:4,isWritable:!1,value:e.edition??null},payer:{index:5,isWritable:!0,value:e.payer??null},systemProgram:{index:6,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:7,isWritable:!1,value:e.sysvarInstructions??null},authority:{index:8,isWritable:!1,value:e.authority??null}};i.metadata.value||(i.metadata.value=(0,OV.findMetadataPda)(t,{mint:(0,a_.expectPublicKey)(i.mint.value)})),i.edition.value||(i.edition.value=(0,OV.findMasterEditionPda)(t,{mint:(0,a_.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,CV.publicKey)("Sysvar1nstructions1111111111111111111111111"));let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,a_.getAccountMetasAndSigners)(a,"omitted",r),l=NV().serialize({}),d=0;return(0,CV.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(Dfe,"createEscrowAccount");Yu.createEscrowAccount=Dfe});var FV=v(Qu=>{"use strict";Object.defineProperty(Qu,"__esModule",{value:!0});Qu.createMasterEditionV3=Qu.getCreateMasterEditionV3InstructionDataSerializer=void 0;var Rfe=K(),$h=V(),WV=ue(),n_=ee();function VV(){return(0,$h.mapSerializer)((0,$h.struct)([["discriminator",(0,$h.u8)()],["maxSupply",(0,$h.option)((0,$h.u64)())]],{description:"CreateMasterEditionV3InstructionData"}),t=>({...t,discriminator:17}))}n(VV,"getCreateMasterEditionV3InstructionDataSerializer");Qu.getCreateMasterEditionV3InstructionDataSerializer=VV;function Bfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={edition:{index:0,isWritable:!0,value:e.edition??null},mint:{index:1,isWritable:!0,value:e.mint??null},updateAuthority:{index:2,isWritable:!1,value:e.updateAuthority??null},mintAuthority:{index:3,isWritable:!1,value:e.mintAuthority??null},payer:{index:4,isWritable:!0,value:e.payer??null},metadata:{index:5,isWritable:!0,value:e.metadata??null},tokenProgram:{index:6,isWritable:!1,value:e.tokenProgram??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},rent:{index:8,isWritable:!1,value:e.rent??null}},a={...e};i.edition.value||(i.edition.value=(0,WV.findMasterEditionPda)(t,{mint:(0,n_.expectPublicKey)(i.mint.value)})),i.updateAuthority.value||(i.updateAuthority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.metadata.value||(i.metadata.value=(0,WV.findMetadataPda)(t,{mint:(0,n_.expectPublicKey)(i.mint.value)})),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,n_.getAccountMetasAndSigners)(s,"omitted",r),d=VV().serialize(a),u=0;return(0,Rfe.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Bfe,"createMasterEditionV3");Qu.createMasterEditionV3=Bfe});var jV=v(Xu=>{"use strict";Object.defineProperty(Xu,"__esModule",{value:!0});Xu.createMetadataAccountV3=Xu.getCreateMetadataAccountV3InstructionDataSerializer=void 0;var Cfe=K(),Gh=V(),Ofe=ue(),KV=ee(),LV=ae();function UV(){return(0,Gh.mapSerializer)((0,Gh.struct)([["discriminator",(0,Gh.u8)()],["data",(0,LV.getDataV2Serializer)()],["isMutable",(0,Gh.bool)()],["collectionDetails",(0,Gh.option)((0,LV.getCollectionDetailsSerializer)())]],{description:"CreateMetadataAccountV3InstructionData"}),t=>({...t,discriminator:33}))}n(UV,"getCreateMetadataAccountV3InstructionDataSerializer");Xu.getCreateMetadataAccountV3InstructionDataSerializer=UV;function Nfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},mint:{index:1,isWritable:!1,value:e.mint??null},mintAuthority:{index:2,isWritable:!1,value:e.mintAuthority??null},payer:{index:3,isWritable:!0,value:e.payer??null},updateAuthority:{index:4,isWritable:!1,value:e.updateAuthority??null},systemProgram:{index:5,isWritable:!1,value:e.systemProgram??null},rent:{index:6,isWritable:!1,value:e.rent??null}},a={...e};i.metadata.value||(i.metadata.value=(0,Ofe.findMetadataPda)(t,{mint:(0,KV.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.updateAuthority.value||(i.updateAuthority.value=t.identity.publicKey),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,KV.getAccountMetasAndSigners)(s,"omitted",r),d=UV().serialize(a),u=0;return(0,Cfe.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Nfe,"createMetadataAccountV3");Xu.createMetadataAccountV3=Nfe});var GV=v(tc=>{"use strict";Object.defineProperty(tc,"__esModule",{value:!0});tc.createV1=tc.getCreateV1InstructionDataSerializer=void 0;var ss=K(),vr=V(),ec=Ve(),HV=ue(),W5=ee(),Gl=ae();function $V(){return(0,vr.mapSerializer)((0,vr.struct)([["discriminator",(0,vr.u8)()],["createV1Discriminator",(0,vr.u8)()],["name",(0,vr.string)()],["symbol",(0,vr.string)()],["uri",(0,vr.string)()],["sellerFeeBasisPoints",(0,ss.mapAmountSerializer)((0,vr.u16)(),"%",2)],["creators",(0,vr.option)((0,vr.array)((0,Gl.getCreatorSerializer)()))],["primarySaleHappened",(0,vr.bool)()],["isMutable",(0,vr.bool)()],["tokenStandard",(0,Gl.getTokenStandardSerializer)()],["collection",(0,vr.option)((0,Gl.getCollectionSerializer)())],["uses",(0,vr.option)((0,Gl.getUsesSerializer)())],["collectionDetails",(0,vr.option)((0,Gl.getCollectionDetailsSerializer)())],["ruleSet",(0,vr.option)((0,vr.publicKey)())],["decimals",(0,vr.option)((0,vr.u8)())],["printSupply",(0,vr.option)((0,Gl.getPrintSupplySerializer)())]],{description:"CreateV1InstructionData"}),t=>({...t,discriminator:42,createV1Discriminator:0,symbol:t.symbol??"",primarySaleHappened:t.primarySaleHappened??!1,isMutable:t.isMutable??!0,collection:t.collection??(0,ss.none)(),uses:t.uses??(0,ss.none)(),collectionDetails:t.collectionDetails??(0,ss.none)(),ruleSet:t.ruleSet??(0,ss.none)(),decimals:t.decimals??(0,ss.none)(),printSupply:t.printSupply??(0,ss.none)()}))}n($V,"getCreateV1InstructionDataSerializer");tc.getCreateV1InstructionDataSerializer=$V;function qfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},masterEdition:{index:1,isWritable:!0,value:e.masterEdition??null},mint:{index:2,isWritable:!0,value:e.mint??null},authority:{index:3,isWritable:!1,value:e.authority??null},payer:{index:4,isWritable:!0,value:e.payer??null},updateAuthority:{index:5,isWritable:!1,value:e.updateAuthority??null},systemProgram:{index:6,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:7,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:8,isWritable:!1,value:e.splTokenProgram??null}},a={...e};i.metadata.value||(i.metadata.value=(0,HV.findMetadataPda)(t,{mint:(0,W5.expectPublicKey)(i.mint.value)})),a.tokenStandard||(a.tokenStandard=Gl.TokenStandard.NonFungible),i.masterEdition.value||(0,ec.resolveIsNonFungible)(t,i,a,r,!0)&&(i.masterEdition.value=(0,HV.findMasterEditionPda)(t,{mint:(0,W5.expectPublicKey)(i.mint.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.updateAuthority.value||(i.updateAuthority.value=(0,W5.expectSome)(i.authority.value)),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,ss.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),a.isCollection||(a.isCollection=!1),a.collectionDetails||(a.collectionDetails=(0,ec.resolveCollectionDetails)(t,i,a,r,!1)),a.decimals||(a.decimals=(0,ec.resolveDecimals)(t,i,a,r,!1)),a.printSupply||(a.printSupply=(0,ec.resolvePrintSupply)(t,i,a,r,!1)),a.creators||(a.creators=(0,ec.resolveCreators)(t,i,a,r,!1));let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,W5.getAccountMetasAndSigners)(s,"programId",r),d=$V().serialize(a),u=(0,ec.resolveCreateV1Bytes)(t,i,a,r);return(0,ss.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(qfe,"createV1");tc.createV1=qfe});var YV=v(rc=>{"use strict";Object.defineProperty(rc,"__esModule",{value:!0});rc.delegateAuthorityItemV1=rc.getDelegateAuthorityItemV1InstructionDataSerializer=void 0;var o_=K(),Zh=V(),Wfe=Ve(),s_=ue(),Zl=ee(),ZV=ae();function JV(){return(0,Zh.mapSerializer)((0,Zh.struct)([["discriminator",(0,Zh.u8)()],["delegateAuthorityItemV1Discriminator",(0,Zh.u8)()],["authorizationData",(0,Zh.option)((0,ZV.getAuthorizationDataSerializer)())]],{description:"DelegateAuthorityItemV1InstructionData"}),t=>({...t,discriminator:44,delegateAuthorityItemV1Discriminator:9,authorizationData:t.authorizationData??(0,o_.none)()}))}n(JV,"getDelegateAuthorityItemV1InstructionDataSerializer");rc.getDelegateAuthorityItemV1InstructionDataSerializer=JV;function Vfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,Zl.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,s_.findMetadataDelegateRecordPda)(t,{mint:(0,Zl.expectPublicKey)(i.mint.value),delegateRole:ZV.MetadataDelegateRole.AuthorityItem,updateAuthority:(0,Zl.expectSome)(a.updateAuthority),delegate:(0,Zl.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,s_.findMetadataPda)(t,{mint:(0,Zl.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,Wfe.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,s_.findMasterEditionPda)(t,{mint:(0,Zl.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,o_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,Zl.getAccountMetasAndSigners)(s,"programId",r),d=JV().serialize(a),u=0;return(0,o_.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Vfe,"delegateAuthorityItemV1");rc.delegateAuthorityItemV1=Vfe});var eF=v(ic=>{"use strict";Object.defineProperty(ic,"__esModule",{value:!0});ic.delegateCollectionItemV1=ic.getDelegateCollectionItemV1InstructionDataSerializer=void 0;var d_=K(),Jh=V(),Ffe=Ve(),l_=ue(),Jl=ee(),QV=ae();function XV(){return(0,Jh.mapSerializer)((0,Jh.struct)([["discriminator",(0,Jh.u8)()],["delegateCollectionItemV1Discriminator",(0,Jh.u8)()],["authorizationData",(0,Jh.option)((0,QV.getAuthorizationDataSerializer)())]],{description:"DelegateCollectionItemV1InstructionData"}),t=>({...t,discriminator:44,delegateCollectionItemV1Discriminator:11,authorizationData:t.authorizationData??(0,d_.none)()}))}n(XV,"getDelegateCollectionItemV1InstructionDataSerializer");ic.getDelegateCollectionItemV1InstructionDataSerializer=XV;function Kfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,Jl.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,l_.findMetadataDelegateRecordPda)(t,{mint:(0,Jl.expectPublicKey)(i.mint.value),delegateRole:QV.MetadataDelegateRole.CollectionItem,updateAuthority:(0,Jl.expectSome)(a.updateAuthority),delegate:(0,Jl.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,l_.findMetadataPda)(t,{mint:(0,Jl.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,Ffe.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,l_.findMasterEditionPda)(t,{mint:(0,Jl.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,d_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,Jl.getAccountMetasAndSigners)(s,"programId",r),d=XV().serialize(a),u=0;return(0,d_.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Kfe,"delegateCollectionItemV1");ic.delegateCollectionItemV1=Kfe});var iF=v(ac=>{"use strict";Object.defineProperty(ac,"__esModule",{value:!0});ac.delegateCollectionV1=ac.getDelegateCollectionV1InstructionDataSerializer=void 0;var c_=K(),Yh=V(),Lfe=Ve(),u_=ue(),Yl=ee(),tF=ae();function rF(){return(0,Yh.mapSerializer)((0,Yh.struct)([["discriminator",(0,Yh.u8)()],["delegateCollectionV1Discriminator",(0,Yh.u8)()],["authorizationData",(0,Yh.option)((0,tF.getAuthorizationDataSerializer)())]],{description:"DelegateCollectionV1InstructionData"}),t=>({...t,discriminator:44,delegateCollectionV1Discriminator:0,authorizationData:t.authorizationData??(0,c_.none)()}))}n(rF,"getDelegateCollectionV1InstructionDataSerializer");ac.getDelegateCollectionV1InstructionDataSerializer=rF;function Ufe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,Yl.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,u_.findMetadataDelegateRecordPda)(t,{mint:(0,Yl.expectPublicKey)(i.mint.value),delegateRole:tF.MetadataDelegateRole.Collection,updateAuthority:(0,Yl.expectSome)(a.updateAuthority),delegate:(0,Yl.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,u_.findMetadataPda)(t,{mint:(0,Yl.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,Lfe.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,u_.findMasterEditionPda)(t,{mint:(0,Yl.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,c_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,Yl.getAccountMetasAndSigners)(s,"programId",r),d=rF().serialize(a),u=0;return(0,c_.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Ufe,"delegateCollectionV1");ac.delegateCollectionV1=Ufe});var sF=v(nc=>{"use strict";Object.defineProperty(nc,"__esModule",{value:!0});nc.delegateDataItemV1=nc.getDelegateDataItemV1InstructionDataSerializer=void 0;var m_=K(),Qh=V(),jfe=Ve(),p_=ue(),Ql=ee(),aF=ae();function nF(){return(0,Qh.mapSerializer)((0,Qh.struct)([["discriminator",(0,Qh.u8)()],["delegateDataItemV1Discriminator",(0,Qh.u8)()],["authorizationData",(0,Qh.option)((0,aF.getAuthorizationDataSerializer)())]],{description:"DelegateDataItemV1InstructionData"}),t=>({...t,discriminator:44,delegateDataItemV1Discriminator:10,authorizationData:t.authorizationData??(0,m_.none)()}))}n(nF,"getDelegateDataItemV1InstructionDataSerializer");nc.getDelegateDataItemV1InstructionDataSerializer=nF;function Hfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,Ql.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,p_.findMetadataDelegateRecordPda)(t,{mint:(0,Ql.expectPublicKey)(i.mint.value),delegateRole:aF.MetadataDelegateRole.DataItem,updateAuthority:(0,Ql.expectSome)(a.updateAuthority),delegate:(0,Ql.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,p_.findMetadataPda)(t,{mint:(0,Ql.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,jfe.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,p_.findMasterEditionPda)(t,{mint:(0,Ql.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,m_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,Ql.getAccountMetasAndSigners)(s,"programId",r),d=nF().serialize(a),u=0;return(0,m_.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Hfe,"delegateDataItemV1");nc.delegateDataItemV1=Hfe});var dF=v(sc=>{"use strict";Object.defineProperty(sc,"__esModule",{value:!0});sc.delegateDataV1=sc.getDelegateDataV1InstructionDataSerializer=void 0;var h_=K(),Xh=V(),$fe=Ve(),f_=ue(),Xl=ee(),oF=ae();function lF(){return(0,Xh.mapSerializer)((0,Xh.struct)([["discriminator",(0,Xh.u8)()],["delegateDataV1Discriminator",(0,Xh.u8)()],["authorizationData",(0,Xh.option)((0,oF.getAuthorizationDataSerializer)())]],{description:"DelegateDataV1InstructionData"}),t=>({...t,discriminator:44,delegateDataV1Discriminator:3,authorizationData:t.authorizationData??(0,h_.none)()}))}n(lF,"getDelegateDataV1InstructionDataSerializer");sc.getDelegateDataV1InstructionDataSerializer=lF;function Gfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,Xl.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,f_.findMetadataDelegateRecordPda)(t,{mint:(0,Xl.expectPublicKey)(i.mint.value),delegateRole:oF.MetadataDelegateRole.Data,updateAuthority:(0,Xl.expectSome)(a.updateAuthority),delegate:(0,Xl.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,f_.findMetadataPda)(t,{mint:(0,Xl.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,$fe.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,f_.findMasterEditionPda)(t,{mint:(0,Xl.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,h_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,Xl.getAccountMetasAndSigners)(s,"programId",r),d=lF().serialize(a),u=0;return(0,h_.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Gfe,"delegateDataV1");sc.delegateDataV1=Gfe});var pF=v(oc=>{"use strict";Object.defineProperty(oc,"__esModule",{value:!0});oc.delegateLockedTransferV1=oc.getDelegateLockedTransferV1InstructionDataSerializer=void 0;var Zfe=kt(),g_=K(),e1=V(),Jfe=Ve(),V5=ue(),os=ee(),uF=ae();function cF(){return(0,e1.mapSerializer)((0,e1.struct)([["discriminator",(0,e1.u8)()],["delegateLockedTransferV1Discriminator",(0,e1.u8)()],["amount",(0,e1.u64)()],["lockedAddress",(0,e1.publicKey)()],["authorizationData",(0,e1.option)((0,uF.getAuthorizationDataSerializer)())]],{description:"DelegateLockedTransferV1InstructionData"}),t=>({...t,discriminator:44,delegateLockedTransferV1Discriminator:7,amount:t.amount??1,authorizationData:t.authorizationData??(0,g_.none)()}))}n(cF,"getDelegateLockedTransferV1InstructionDataSerializer");oc.getDelegateLockedTransferV1InstructionDataSerializer=cF;function Yfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,Zfe.findAssociatedTokenPda)(t,{mint:(0,os.expectPublicKey)(i.mint.value),owner:(0,os.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,V5.findTokenRecordPda)(t,{mint:(0,os.expectPublicKey)(i.mint.value),token:(0,os.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,V5.findMetadataPda)(t,{mint:(0,os.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,Jfe.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,V5.findMasterEditionPda)(t,{mint:(0,os.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===uF.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,V5.findTokenRecordPda)(t,{mint:(0,os.expectPublicKey)(i.mint.value),token:(0,os.expectPublicKey)(i.token.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,g_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,os.getAccountMetasAndSigners)(s,"programId",r),d=cF().serialize(a),u=0;return(0,g_.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Yfe,"delegateLockedTransferV1");oc.delegateLockedTransferV1=Yfe});var hF=v(lc=>{"use strict";Object.defineProperty(lc,"__esModule",{value:!0});lc.delegateProgrammableConfigItemV1=lc.getDelegateProgrammableConfigItemV1InstructionDataSerializer=void 0;var b_=K(),e4=V(),Qfe=Ve(),y_=ue(),t1=ee(),mF=ae();function fF(){return(0,e4.mapSerializer)((0,e4.struct)([["discriminator",(0,e4.u8)()],["delegateProgrammableConfigItemV1Discriminator",(0,e4.u8)()],["authorizationData",(0,e4.option)((0,mF.getAuthorizationDataSerializer)())]],{description:"DelegateProgrammableConfigItemV1InstructionData"}),t=>({...t,discriminator:44,delegateProgrammableConfigItemV1Discriminator:12,authorizationData:t.authorizationData??(0,b_.none)()}))}n(fF,"getDelegateProgrammableConfigItemV1InstructionDataSerializer");lc.getDelegateProgrammableConfigItemV1InstructionDataSerializer=fF;function Xfe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,t1.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,y_.findMetadataDelegateRecordPda)(t,{mint:(0,t1.expectPublicKey)(i.mint.value),delegateRole:mF.MetadataDelegateRole.ProgrammableConfigItem,updateAuthority:(0,t1.expectSome)(a.updateAuthority),delegate:(0,t1.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,y_.findMetadataPda)(t,{mint:(0,t1.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,Qfe.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,y_.findMasterEditionPda)(t,{mint:(0,t1.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,b_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,t1.getAccountMetasAndSigners)(s,"programId",r),d=fF().serialize(a),u=0;return(0,b_.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Xfe,"delegateProgrammableConfigItemV1");lc.delegateProgrammableConfigItemV1=Xfe});var bF=v(dc=>{"use strict";Object.defineProperty(dc,"__esModule",{value:!0});dc.delegateProgrammableConfigV1=dc.getDelegateProgrammableConfigV1InstructionDataSerializer=void 0;var S_=K(),t4=V(),e2e=Ve(),v_=ue(),r1=ee(),gF=ae();function yF(){return(0,t4.mapSerializer)((0,t4.struct)([["discriminator",(0,t4.u8)()],["delegateProgrammableConfigV1Discriminator",(0,t4.u8)()],["authorizationData",(0,t4.option)((0,gF.getAuthorizationDataSerializer)())]],{description:"DelegateProgrammableConfigV1InstructionData"}),t=>({...t,discriminator:44,delegateProgrammableConfigV1Discriminator:8,authorizationData:t.authorizationData??(0,S_.none)()}))}n(yF,"getDelegateProgrammableConfigV1InstructionDataSerializer");dc.getDelegateProgrammableConfigV1InstructionDataSerializer=yF;function t2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,r1.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,v_.findMetadataDelegateRecordPda)(t,{mint:(0,r1.expectPublicKey)(i.mint.value),delegateRole:gF.MetadataDelegateRole.ProgrammableConfig,updateAuthority:(0,r1.expectSome)(a.updateAuthority),delegate:(0,r1.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,v_.findMetadataPda)(t,{mint:(0,r1.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,e2e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,v_.findMasterEditionPda)(t,{mint:(0,r1.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,S_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,r1.getAccountMetasAndSigners)(s,"programId",r),d=yF().serialize(a),u=0;return(0,S_.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(t2e,"delegateProgrammableConfigV1");dc.delegateProgrammableConfigV1=t2e});var wF=v(cc=>{"use strict";Object.defineProperty(cc,"__esModule",{value:!0});cc.delegateSaleV1=cc.getDelegateSaleV1InstructionDataSerializer=void 0;var r2e=kt(),w_=K(),uc=V(),i2e=Ve(),F5=ue(),ls=ee(),vF=ae();function SF(){return(0,uc.mapSerializer)((0,uc.struct)([["discriminator",(0,uc.u8)()],["delegateSaleV1Discriminator",(0,uc.u8)()],["amount",(0,uc.u64)()],["authorizationData",(0,uc.option)((0,vF.getAuthorizationDataSerializer)())]],{description:"DelegateSaleV1InstructionData"}),t=>({...t,discriminator:44,delegateSaleV1Discriminator:1,amount:t.amount??1,authorizationData:t.authorizationData??(0,w_.none)()}))}n(SF,"getDelegateSaleV1InstructionDataSerializer");cc.getDelegateSaleV1InstructionDataSerializer=SF;function a2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,r2e.findAssociatedTokenPda)(t,{mint:(0,ls.expectPublicKey)(i.mint.value),owner:(0,ls.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,F5.findTokenRecordPda)(t,{mint:(0,ls.expectPublicKey)(i.mint.value),token:(0,ls.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,F5.findMetadataPda)(t,{mint:(0,ls.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,i2e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,F5.findMasterEditionPda)(t,{mint:(0,ls.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===vF.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,F5.findTokenRecordPda)(t,{mint:(0,ls.expectPublicKey)(i.mint.value),token:(0,ls.expectPublicKey)(i.token.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,w_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,ls.getAccountMetasAndSigners)(s,"programId",r),d=SF().serialize(a),u=0;return(0,w_.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(a2e,"delegateSaleV1");cc.delegateSaleV1=a2e});var _F=v(mc=>{"use strict";Object.defineProperty(mc,"__esModule",{value:!0});mc.delegateStakingV1=mc.getDelegateStakingV1InstructionDataSerializer=void 0;var n2e=kt(),x_=K(),pc=V(),s2e=Ve(),K5=ue(),ds=ee(),xF=ae();function AF(){return(0,pc.mapSerializer)((0,pc.struct)([["discriminator",(0,pc.u8)()],["delegateStakingV1Discriminator",(0,pc.u8)()],["amount",(0,pc.u64)()],["authorizationData",(0,pc.option)((0,xF.getAuthorizationDataSerializer)())]],{description:"DelegateStakingV1InstructionData"}),t=>({...t,discriminator:44,delegateStakingV1Discriminator:5,amount:t.amount??1,authorizationData:t.authorizationData??(0,x_.none)()}))}n(AF,"getDelegateStakingV1InstructionDataSerializer");mc.getDelegateStakingV1InstructionDataSerializer=AF;function o2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,n2e.findAssociatedTokenPda)(t,{mint:(0,ds.expectPublicKey)(i.mint.value),owner:(0,ds.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,K5.findTokenRecordPda)(t,{mint:(0,ds.expectPublicKey)(i.mint.value),token:(0,ds.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,K5.findMetadataPda)(t,{mint:(0,ds.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,s2e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,K5.findMasterEditionPda)(t,{mint:(0,ds.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===xF.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,K5.findTokenRecordPda)(t,{mint:(0,ds.expectPublicKey)(i.mint.value),token:(0,ds.expectPublicKey)(i.token.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,x_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,ds.getAccountMetasAndSigners)(s,"programId",r),d=AF().serialize(a),u=0;return(0,x_.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(o2e,"delegateStakingV1");mc.delegateStakingV1=o2e});var PF=v(fc=>{"use strict";Object.defineProperty(fc,"__esModule",{value:!0});fc.delegateStandardV1=fc.getDelegateStandardV1InstructionDataSerializer=void 0;var l2e=kt(),kF=K(),r4=V(),d2e=Ve(),A_=ue(),i1=ee();function EF(){return(0,r4.mapSerializer)((0,r4.struct)([["discriminator",(0,r4.u8)()],["delegateStandardV1Discriminator",(0,r4.u8)()],["amount",(0,r4.u64)()]],{description:"DelegateStandardV1InstructionData"}),t=>({...t,discriminator:44,delegateStandardV1Discriminator:6,amount:t.amount??1}))}n(EF,"getDelegateStandardV1InstructionDataSerializer");fc.getDelegateStandardV1InstructionDataSerializer=EF;function u2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,l2e.findAssociatedTokenPda)(t,{mint:(0,i1.expectPublicKey)(i.mint.value),owner:(0,i1.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,A_.findTokenRecordPda)(t,{mint:(0,i1.expectPublicKey)(i.mint.value),token:(0,i1.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,A_.findMetadataPda)(t,{mint:(0,i1.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,d2e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,A_.findMasterEditionPda)(t,{mint:(0,i1.expectPublicKey)(i.mint.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,kF.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,i1.getAccountMetasAndSigners)(s,"programId",r),d=EF().serialize(a),u=0;return(0,kF.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(u2e,"delegateStandardV1");fc.delegateStandardV1=u2e});var IF=v(gc=>{"use strict";Object.defineProperty(gc,"__esModule",{value:!0});gc.delegateTransferV1=gc.getDelegateTransferV1InstructionDataSerializer=void 0;var c2e=kt(),__=K(),hc=V(),p2e=Ve(),L5=ue(),us=ee(),TF=ae();function zF(){return(0,hc.mapSerializer)((0,hc.struct)([["discriminator",(0,hc.u8)()],["delegateTransferV1Discriminator",(0,hc.u8)()],["amount",(0,hc.u64)()],["authorizationData",(0,hc.option)((0,TF.getAuthorizationDataSerializer)())]],{description:"DelegateTransferV1InstructionData"}),t=>({...t,discriminator:44,delegateTransferV1Discriminator:2,amount:t.amount??1,authorizationData:t.authorizationData??(0,__.none)()}))}n(zF,"getDelegateTransferV1InstructionDataSerializer");gc.getDelegateTransferV1InstructionDataSerializer=zF;function m2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,c2e.findAssociatedTokenPda)(t,{mint:(0,us.expectPublicKey)(i.mint.value),owner:(0,us.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,L5.findTokenRecordPda)(t,{mint:(0,us.expectPublicKey)(i.mint.value),token:(0,us.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,L5.findMetadataPda)(t,{mint:(0,us.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,p2e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,L5.findMasterEditionPda)(t,{mint:(0,us.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===TF.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,L5.findTokenRecordPda)(t,{mint:(0,us.expectPublicKey)(i.mint.value),token:(0,us.expectPublicKey)(i.token.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,__.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,us.getAccountMetasAndSigners)(s,"programId",r),d=zF().serialize(a),u=0;return(0,__.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(m2e,"delegateTransferV1");gc.delegateTransferV1=m2e});var RF=v(bc=>{"use strict";Object.defineProperty(bc,"__esModule",{value:!0});bc.delegateUtilityV1=bc.getDelegateUtilityV1InstructionDataSerializer=void 0;var f2e=kt(),k_=K(),yc=V(),h2e=Ve(),U5=ue(),cs=ee(),MF=ae();function DF(){return(0,yc.mapSerializer)((0,yc.struct)([["discriminator",(0,yc.u8)()],["delegateUtilityV1Discriminator",(0,yc.u8)()],["amount",(0,yc.u64)()],["authorizationData",(0,yc.option)((0,MF.getAuthorizationDataSerializer)())]],{description:"DelegateUtilityV1InstructionData"}),t=>({...t,discriminator:44,delegateUtilityV1Discriminator:4,amount:t.amount??1,authorizationData:t.authorizationData??(0,k_.none)()}))}n(DF,"getDelegateUtilityV1InstructionDataSerializer");bc.getDelegateUtilityV1InstructionDataSerializer=DF;function g2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,f2e.findAssociatedTokenPda)(t,{mint:(0,cs.expectPublicKey)(i.mint.value),owner:(0,cs.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,U5.findTokenRecordPda)(t,{mint:(0,cs.expectPublicKey)(i.mint.value),token:(0,cs.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,U5.findMetadataPda)(t,{mint:(0,cs.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,h2e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,U5.findMasterEditionPda)(t,{mint:(0,cs.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===MF.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,U5.findTokenRecordPda)(t,{mint:(0,cs.expectPublicKey)(i.mint.value),token:(0,cs.expectPublicKey)(i.token.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,k_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,cs.getAccountMetasAndSigners)(s,"programId",r),d=DF().serialize(a),u=0;return(0,k_.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(g2e,"delegateUtilityV1");bc.delegateUtilityV1=g2e});var OF=v(vc=>{"use strict";Object.defineProperty(vc,"__esModule",{value:!0});vc.deprecatedMintNewEditionFromMasterEditionViaPrintingToken=vc.getDeprecatedMintNewEditionFromMasterEditionViaPrintingTokenInstructionDataSerializer=void 0;var BF=K(),E_=V(),j5=ue(),i4=ee();function CF(){return(0,E_.mapSerializer)((0,E_.struct)([["discriminator",(0,E_.u8)()]],{description:"DeprecatedMintNewEditionFromMasterEditionViaPrintingTokenInstructionData"}),t=>({...t,discriminator:3}))}n(CF,"getDeprecatedMintNewEditionFromMasterEditionViaPrintingTokenInstructionDataSerializer");vc.getDeprecatedMintNewEditionFromMasterEditionViaPrintingTokenInstructionDataSerializer=CF;function y2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},edition:{index:1,isWritable:!0,value:e.edition??null},masterEdition:{index:2,isWritable:!0,value:e.masterEdition??null},mint:{index:3,isWritable:!0,value:e.mint??null},mintAuthority:{index:4,isWritable:!1,value:e.mintAuthority??null},printingMint:{index:5,isWritable:!0,value:e.printingMint??null},masterTokenAccount:{index:6,isWritable:!0,value:e.masterTokenAccount??null},editionMarker:{index:7,isWritable:!0,value:e.editionMarker??null},burnAuthority:{index:8,isWritable:!1,value:e.burnAuthority??null},payer:{index:9,isWritable:!1,value:e.payer??null},masterUpdateAuthority:{index:10,isWritable:!1,value:e.masterUpdateAuthority??null},masterMetadata:{index:11,isWritable:!1,value:e.masterMetadata??null},tokenProgram:{index:12,isWritable:!1,value:e.tokenProgram??null},systemProgram:{index:13,isWritable:!1,value:e.systemProgram??null},rent:{index:14,isWritable:!1,value:e.rent??null},reservationList:{index:15,isWritable:!0,value:e.reservationList??null}};i.metadata.value||(i.metadata.value=(0,j5.findMetadataPda)(t,{mint:(0,i4.expectPublicKey)(i.mint.value)})),i.edition.value||(i.edition.value=(0,j5.findMasterEditionPda)(t,{mint:(0,i4.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(i.masterEdition.value=(0,j5.findMasterEditionPda)(t,{mint:(0,i4.expectPublicKey)(i.mint.value)})),i.editionMarker.value||(i.editionMarker.value=(0,j5.findMasterEditionPda)(t,{mint:(0,i4.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.rent.value||(i.rent.value=(0,BF.publicKey)("SysvarRent111111111111111111111111111111111"));let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,i4.getAccountMetasAndSigners)(a,"omitted",r),l=CF().serialize({}),d=0;return(0,BF.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(y2e,"deprecatedMintNewEditionFromMasterEditionViaPrintingToken");vc.deprecatedMintNewEditionFromMasterEditionViaPrintingToken=y2e});var WF=v(Sc=>{"use strict";Object.defineProperty(Sc,"__esModule",{value:!0});Sc.freezeDelegatedAccount=Sc.getFreezeDelegatedAccountInstructionDataSerializer=void 0;var b2e=K(),P_=V(),v2e=ue(),NF=ee();function qF(){return(0,P_.mapSerializer)((0,P_.struct)([["discriminator",(0,P_.u8)()]],{description:"FreezeDelegatedAccountInstructionData"}),t=>({...t,discriminator:26}))}n(qF,"getFreezeDelegatedAccountInstructionDataSerializer");Sc.getFreezeDelegatedAccountInstructionDataSerializer=qF;function S2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegate:{index:0,isWritable:!0,value:e.delegate??null},tokenAccount:{index:1,isWritable:!0,value:e.tokenAccount??null},edition:{index:2,isWritable:!1,value:e.edition??null},mint:{index:3,isWritable:!1,value:e.mint??null},tokenProgram:{index:4,isWritable:!1,value:e.tokenProgram??null}};i.edition.value||(i.edition.value=(0,v2e.findMasterEditionPda)(t,{mint:(0,NF.expectPublicKey)(i.mint.value)})),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1);let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,NF.getAccountMetasAndSigners)(a,"programId",r),l=qF().serialize({}),d=0;return(0,b2e.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(S2e,"freezeDelegatedAccount");Sc.freezeDelegatedAccount=S2e});var KF=v(wc=>{"use strict";Object.defineProperty(wc,"__esModule",{value:!0});wc.lockV1=wc.getLockV1InstructionDataSerializer=void 0;var w2e=kt(),z_=K(),a4=V(),VF=Ve(),T_=ue(),a1=ee(),I_=ae();function FF(){return(0,a4.mapSerializer)((0,a4.struct)([["discriminator",(0,a4.u8)()],["lockV1Discriminator",(0,a4.u8)()],["authorizationData",(0,a4.option)((0,I_.getAuthorizationDataSerializer)())]],{description:"LockV1InstructionData"}),t=>({...t,discriminator:46,lockV1Discriminator:0,authorizationData:t.authorizationData??(0,z_.none)()}))}n(FF,"getLockV1InstructionDataSerializer");wc.getLockV1InstructionDataSerializer=FF;function x2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},tokenOwner:{index:1,isWritable:!1,value:e.tokenOwner??null},token:{index:2,isWritable:!0,value:e.token??null},mint:{index:3,isWritable:!1,value:e.mint??null},metadata:{index:4,isWritable:!0,value:e.metadata??null},edition:{index:5,isWritable:!1,value:e.edition??null},tokenRecord:{index:6,isWritable:!0,value:e.tokenRecord??null},payer:{index:7,isWritable:!0,value:e.payer??null},systemProgram:{index:8,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:9,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:10,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:11,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:12,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),i.tokenOwner.value||(i.tokenOwner={...i.tokenOwner,...(0,VF.resolveOptionalTokenOwner)(t,i,a,r,!1)}),i.token.value||(i.token.value=(0,w2e.findAssociatedTokenPda)(t,{mint:(0,a1.expectPublicKey)(i.mint.value),owner:(0,a1.expectPublicKey)(i.tokenOwner.value)})),i.metadata.value||(i.metadata.value=(0,T_.findMetadataPda)(t,{mint:(0,a1.expectPublicKey)(i.mint.value)})),i.edition.value||(0,VF.resolveIsNonFungible)(t,i,a,r,!1)&&(i.edition.value=(0,T_.findMasterEditionPda)(t,{mint:(0,a1.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===I_.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,T_.findTokenRecordPda)(t,{mint:(0,a1.expectPublicKey)(i.mint.value),token:(0,a1.expectPublicKey)(i.token.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,z_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||a.tokenStandard!==I_.TokenStandard.ProgrammableNonFungible&&(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,a1.getAccountMetasAndSigners)(s,"programId",r),d=FF().serialize(a),u=0;return(0,z_.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(x2e,"lockV1");wc.lockV1=x2e});var jF=v(xc=>{"use strict";Object.defineProperty(xc,"__esModule",{value:!0});xc.migrate=xc.getMigrateInstructionDataSerializer=void 0;var LF=K(),M_=V(),D_=ue(),n4=ee();function UF(){return(0,M_.mapSerializer)((0,M_.struct)([["discriminator",(0,M_.u8)()]],{description:"MigrateInstructionData"}),t=>({...t,discriminator:48}))}n(UF,"getMigrateInstructionDataSerializer");xc.getMigrateInstructionDataSerializer=UF;function A2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},edition:{index:1,isWritable:!0,value:e.edition??null},token:{index:2,isWritable:!0,value:e.token??null},tokenOwner:{index:3,isWritable:!1,value:e.tokenOwner??null},mint:{index:4,isWritable:!1,value:e.mint??null},payer:{index:5,isWritable:!0,value:e.payer??null},authority:{index:6,isWritable:!1,value:e.authority??null},collectionMetadata:{index:7,isWritable:!1,value:e.collectionMetadata??null},delegateRecord:{index:8,isWritable:!1,value:e.delegateRecord??null},tokenRecord:{index:9,isWritable:!0,value:e.tokenRecord??null},systemProgram:{index:10,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:11,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:12,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:13,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:14,isWritable:!1,value:e.authorizationRules??null}};i.metadata.value||(i.metadata.value=(0,D_.findMetadataPda)(t,{mint:(0,n4.expectPublicKey)(i.mint.value)})),i.edition.value||(i.edition.value=(0,D_.findMasterEditionPda)(t,{mint:(0,n4.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.authority.value||(i.authority.value=t.identity),i.tokenRecord.value||(i.tokenRecord.value=(0,D_.findTokenRecordPda)(t,{mint:(0,n4.expectPublicKey)(i.mint.value),token:(0,n4.expectPublicKey)(i.token.value)})),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,LF.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,n4.getAccountMetasAndSigners)(a,"programId",r),l=UF().serialize({}),d=0;return(0,LF.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(A2e,"migrate");xc.migrate=A2e});var $F=v(Ac=>{"use strict";Object.defineProperty(Ac,"__esModule",{value:!0});Ac.mintNewEditionFromMasterEditionViaToken=Ac.getMintNewEditionFromMasterEditionViaTokenInstructionDataSerializer=void 0;var _2e=K(),R_=V(),k2e=ee(),E2e=ae();function HF(){return(0,R_.mapSerializer)((0,R_.struct)([["discriminator",(0,R_.u8)()],["mintNewEditionFromMasterEditionViaTokenArgs",(0,E2e.getMintNewEditionFromMasterEditionViaTokenArgsSerializer)()]],{description:"MintNewEditionFromMasterEditionViaTokenInstructionData"}),t=>({...t,discriminator:11}))}n(HF,"getMintNewEditionFromMasterEditionViaTokenInstructionDataSerializer");Ac.getMintNewEditionFromMasterEditionViaTokenInstructionDataSerializer=HF;function P2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={newMetadata:{index:0,isWritable:!0,value:e.newMetadata??null},newEdition:{index:1,isWritable:!0,value:e.newEdition??null},masterEdition:{index:2,isWritable:!0,value:e.masterEdition??null},newMint:{index:3,isWritable:!0,value:e.newMint??null},editionMarkPda:{index:4,isWritable:!0,value:e.editionMarkPda??null},newMintAuthority:{index:5,isWritable:!1,value:e.newMintAuthority??null},payer:{index:6,isWritable:!0,value:e.payer??null},tokenAccountOwner:{index:7,isWritable:!1,value:e.tokenAccountOwner??null},tokenAccount:{index:8,isWritable:!1,value:e.tokenAccount??null},newMetadataUpdateAuthority:{index:9,isWritable:!1,value:e.newMetadataUpdateAuthority??null},metadata:{index:10,isWritable:!1,value:e.metadata??null},tokenProgram:{index:11,isWritable:!1,value:e.tokenProgram??null},systemProgram:{index:12,isWritable:!1,value:e.systemProgram??null},rent:{index:13,isWritable:!1,value:e.rent??null}},a={...e};i.payer.value||(i.payer.value=t.payer),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,k2e.getAccountMetasAndSigners)(s,"omitted",r),d=HF().serialize(a),u=0;return(0,_2e.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(P2e,"mintNewEditionFromMasterEditionViaToken");Ac.mintNewEditionFromMasterEditionViaToken=P2e});var ZF=v(_c=>{"use strict";Object.defineProperty(_c,"__esModule",{value:!0});_c.mintNewEditionFromMasterEditionViaVaultProxy=_c.getMintNewEditionFromMasterEditionViaVaultProxyInstructionDataSerializer=void 0;var T2e=K(),B_=V(),z2e=ee(),I2e=ae();function GF(){return(0,B_.mapSerializer)((0,B_.struct)([["discriminator",(0,B_.u8)()],["mintNewEditionFromMasterEditionViaTokenArgs",(0,I2e.getMintNewEditionFromMasterEditionViaTokenArgsSerializer)()]],{description:"MintNewEditionFromMasterEditionViaVaultProxyInstructionData"}),t=>({...t,discriminator:13}))}n(GF,"getMintNewEditionFromMasterEditionViaVaultProxyInstructionDataSerializer");_c.getMintNewEditionFromMasterEditionViaVaultProxyInstructionDataSerializer=GF;function M2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={newMetadata:{index:0,isWritable:!0,value:e.newMetadata??null},newEdition:{index:1,isWritable:!0,value:e.newEdition??null},masterEdition:{index:2,isWritable:!0,value:e.masterEdition??null},newMint:{index:3,isWritable:!0,value:e.newMint??null},editionMarkPda:{index:4,isWritable:!0,value:e.editionMarkPda??null},newMintAuthority:{index:5,isWritable:!1,value:e.newMintAuthority??null},payer:{index:6,isWritable:!0,value:e.payer??null},vaultAuthority:{index:7,isWritable:!1,value:e.vaultAuthority??null},safetyDepositStore:{index:8,isWritable:!1,value:e.safetyDepositStore??null},safetyDepositBox:{index:9,isWritable:!1,value:e.safetyDepositBox??null},vault:{index:10,isWritable:!1,value:e.vault??null},newMetadataUpdateAuthority:{index:11,isWritable:!1,value:e.newMetadataUpdateAuthority??null},metadata:{index:12,isWritable:!1,value:e.metadata??null},tokenProgram:{index:13,isWritable:!1,value:e.tokenProgram??null},tokenVaultProgram:{index:14,isWritable:!1,value:e.tokenVaultProgram??null},systemProgram:{index:15,isWritable:!1,value:e.systemProgram??null},rent:{index:16,isWritable:!1,value:e.rent??null}},a={...e};i.payer.value||(i.payer.value=t.payer),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,z2e.getAccountMetasAndSigners)(s,"omitted",r),d=GF().serialize(a),u=0;return(0,T2e.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(M2e,"mintNewEditionFromMasterEditionViaVaultProxy");_c.mintNewEditionFromMasterEditionViaVaultProxy=M2e});var XF=v(Ec=>{"use strict";Object.defineProperty(Ec,"__esModule",{value:!0});Ec.mintV1=Ec.getMintV1InstructionDataSerializer=void 0;var D2e=kt(),O_=K(),kc=V(),JF=Ve(),C_=ue(),n1=ee(),YF=ae();function QF(){return(0,kc.mapSerializer)((0,kc.struct)([["discriminator",(0,kc.u8)()],["mintV1Discriminator",(0,kc.u8)()],["amount",(0,kc.u64)()],["authorizationData",(0,kc.option)((0,YF.getAuthorizationDataSerializer)())]],{description:"MintV1InstructionData"}),t=>({...t,discriminator:43,mintV1Discriminator:0,amount:t.amount??1,authorizationData:t.authorizationData??(0,O_.none)()}))}n(QF,"getMintV1InstructionDataSerializer");Ec.getMintV1InstructionDataSerializer=QF;function R2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={token:{index:0,isWritable:!0,value:e.token??null},tokenOwner:{index:1,isWritable:!1,value:e.tokenOwner??null},metadata:{index:2,isWritable:!1,value:e.metadata??null},masterEdition:{index:3,isWritable:!0,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!0,value:e.mint??null},authority:{index:6,isWritable:!1,value:e.authority??null},delegateRecord:{index:7,isWritable:!1,value:e.delegateRecord??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},splAtaProgram:{index:12,isWritable:!1,value:e.splAtaProgram??null},authorizationRulesProgram:{index:13,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:14,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.tokenOwner.value||(i.tokenOwner={...i.tokenOwner,...(0,JF.resolveOptionalTokenOwner)(t,i,a,r,!1)}),i.token.value||(i.token.value=(0,D2e.findAssociatedTokenPda)(t,{mint:(0,n1.expectPublicKey)(i.mint.value),owner:(0,n1.expectPublicKey)(i.tokenOwner.value)})),i.metadata.value||(i.metadata.value=(0,C_.findMetadataPda)(t,{mint:(0,n1.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,JF.resolveIsNonFungible)(t,i,a,r,!0)&&(i.masterEdition.value=(0,C_.findMasterEditionPda)(t,{mint:(0,n1.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===YF.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,C_.findTokenRecordPda)(t,{mint:(0,n1.expectPublicKey)(i.mint.value),token:(0,n1.expectPublicKey)(i.token.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,O_.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.splAtaProgram.value||(i.splAtaProgram.value=t.programs.getPublicKey("splAssociatedToken","ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"),i.splAtaProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,n1.getAccountMetasAndSigners)(s,"programId",r),d=QF().serialize(a),u=468;return(0,O_.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(R2e,"mintV1");Ec.mintV1=R2e});var aK=v(Tc=>{"use strict";Object.defineProperty(Tc,"__esModule",{value:!0});Tc.printV1=Tc.getPrintV1InstructionDataSerializer=void 0;var eK=kt(),tK=K(),s4=V(),B2e=Ve(),Pc=ue(),vi=ee(),rK=ae();function iK(){return(0,s4.mapSerializer)((0,s4.struct)([["discriminator",(0,s4.u8)()],["printV1Discriminator",(0,s4.u8)()],["editionNumber",(0,s4.u64)()]],{description:"PrintV1InstructionData"}),t=>({...t,discriminator:55,printV1Discriminator:0}))}n(iK,"getPrintV1InstructionDataSerializer");Tc.getPrintV1InstructionDataSerializer=iK;function C2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={editionMetadata:{index:0,isWritable:!0,value:e.editionMetadata??null},edition:{index:1,isWritable:!0,value:e.edition??null},editionMint:{index:2,isWritable:!0,value:e.editionMint??null},editionTokenAccountOwner:{index:3,isWritable:!1,value:e.editionTokenAccountOwner??null},editionTokenAccount:{index:4,isWritable:!0,value:e.editionTokenAccount??null},editionMintAuthority:{index:5,isWritable:!1,value:e.editionMintAuthority??null},editionTokenRecord:{index:6,isWritable:!0,value:e.editionTokenRecord??null},masterEdition:{index:7,isWritable:!0,value:e.masterEdition??null},editionMarkerPda:{index:8,isWritable:!0,value:e.editionMarkerPda??null},payer:{index:9,isWritable:!0,value:e.payer??null},masterTokenAccountOwner:{index:10,isWritable:!1,value:e.masterTokenAccountOwner??null},masterTokenAccount:{index:11,isWritable:!1,value:e.masterTokenAccount??null},masterMetadata:{index:12,isWritable:!1,value:e.masterMetadata??null},updateAuthority:{index:13,isWritable:!1,value:e.updateAuthority??null},splTokenProgram:{index:14,isWritable:!1,value:e.splTokenProgram??null},splAtaProgram:{index:15,isWritable:!1,value:e.splAtaProgram??null},sysvarInstructions:{index:16,isWritable:!1,value:e.sysvarInstructions??null},systemProgram:{index:17,isWritable:!1,value:e.systemProgram??null}},a={...e};i.editionMetadata.value||(i.editionMetadata.value=(0,Pc.findMetadataPda)(t,{mint:(0,vi.expectPublicKey)(i.editionMint.value)})),i.edition.value||(i.edition.value=(0,Pc.findMasterEditionPda)(t,{mint:(0,vi.expectPublicKey)(i.editionMint.value)})),i.editionTokenAccountOwner.value||(i.editionTokenAccountOwner.value=t.identity.publicKey),i.editionTokenAccount.value||(i.editionTokenAccount.value=(0,eK.findAssociatedTokenPda)(t,{mint:(0,vi.expectPublicKey)(i.editionMint.value),owner:(0,vi.expectPublicKey)(i.editionTokenAccountOwner.value)})),i.masterTokenAccountOwner.value||(i.masterTokenAccountOwner.value=t.identity),i.editionMintAuthority.value||(i.editionMintAuthority.value=(0,vi.expectSome)(i.masterTokenAccountOwner.value)),i.editionTokenRecord.value||a.tokenStandard===rK.TokenStandard.ProgrammableNonFungible&&(i.editionTokenRecord.value=(0,Pc.findTokenRecordPda)(t,{mint:(0,vi.expectPublicKey)(i.editionMint.value),token:(0,vi.expectPublicKey)(i.editionTokenAccount.value)})),i.masterEdition.value||(i.masterEdition.value=(0,Pc.findMasterEditionPda)(t,{mint:(0,vi.expectSome)(a.masterEditionMint)})),i.editionMarkerPda.value||(a.tokenStandard===rK.TokenStandard.ProgrammableNonFungible?i.editionMarkerPda.value=(0,Pc.findEditionMarkerV2Pda)(t,{mint:(0,vi.expectSome)(a.masterEditionMint)}):i.editionMarkerPda.value=(0,B2e.findEditionMarkerFromEditionNumberPda)(t,{mint:(0,vi.expectSome)(a.masterEditionMint),editionNumber:(0,vi.expectSome)(a.editionNumber)})),i.payer.value||(i.payer.value=t.payer),i.masterTokenAccount.value||(i.masterTokenAccount.value=(0,eK.findAssociatedTokenPda)(t,{mint:(0,vi.expectSome)(a.masterEditionMint),owner:(0,vi.expectPublicKey)(i.masterTokenAccountOwner.value)})),i.masterMetadata.value||(i.masterMetadata.value=(0,Pc.findMetadataPda)(t,{mint:(0,vi.expectSome)(a.masterEditionMint)})),i.updateAuthority.value||(i.updateAuthority.value=t.identity.publicKey),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.splAtaProgram.value||(i.splAtaProgram.value=t.programs.getPublicKey("splAssociatedToken","ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"),i.splAtaProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,tK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,vi.getAccountMetasAndSigners)(s,"programId",r),d=iK().serialize(a),u=0;return(0,tK.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(C2e,"printV1");Tc.printV1=C2e});var sK=v(zc=>{"use strict";Object.defineProperty(zc,"__esModule",{value:!0});zc.puffMetadata=zc.getPuffMetadataInstructionDataSerializer=void 0;var O2e=K(),N_=V(),N2e=ee();function nK(){return(0,N_.mapSerializer)((0,N_.struct)([["discriminator",(0,N_.u8)()]],{description:"PuffMetadataInstructionData"}),t=>({...t,discriminator:14}))}n(nK,"getPuffMetadataInstructionDataSerializer");zc.getPuffMetadataInstructionDataSerializer=nK;function q2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null}},a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,N2e.getAccountMetasAndSigners)(a,"programId",r),l=nK().serialize({}),d=0;return(0,O2e.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(q2e,"puffMetadata");zc.puffMetadata=q2e});var lK=v(Ic=>{"use strict";Object.defineProperty(Ic,"__esModule",{value:!0});Ic.removeCreatorVerification=Ic.getRemoveCreatorVerificationInstructionDataSerializer=void 0;var W2e=K(),q_=V(),V2e=ee();function oK(){return(0,q_.mapSerializer)((0,q_.struct)([["discriminator",(0,q_.u8)()]],{description:"RemoveCreatorVerificationInstructionData"}),t=>({...t,discriminator:28}))}n(oK,"getRemoveCreatorVerificationInstructionDataSerializer");Ic.getRemoveCreatorVerificationInstructionDataSerializer=oK;function F2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},creator:{index:1,isWritable:!1,value:e.creator??null}},a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,V2e.getAccountMetasAndSigners)(a,"programId",r),l=oK().serialize({}),d=0;return(0,W2e.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(F2e,"removeCreatorVerification");Ic.removeCreatorVerification=F2e});var cK=v(Mc=>{"use strict";Object.defineProperty(Mc,"__esModule",{value:!0});Mc.revokeAuthorityItemV1=Mc.getRevokeAuthorityItemV1InstructionDataSerializer=void 0;var dK=K(),H5=V(),K2e=Ve(),W_=ue(),s1=ee(),L2e=ae();function uK(){return(0,H5.mapSerializer)((0,H5.struct)([["discriminator",(0,H5.u8)()],["revokeAuthorityItemV1Discriminator",(0,H5.u8)()]],{description:"RevokeAuthorityItemV1InstructionData"}),t=>({...t,discriminator:45,revokeAuthorityItemV1Discriminator:10}))}n(uK,"getRevokeAuthorityItemV1InstructionDataSerializer");Mc.getRevokeAuthorityItemV1InstructionDataSerializer=uK;function U2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,s1.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,W_.findMetadataDelegateRecordPda)(t,{mint:(0,s1.expectPublicKey)(i.mint.value),delegateRole:L2e.MetadataDelegateRole.AuthorityItem,updateAuthority:(0,s1.expectSome)(a.updateAuthority),delegate:(0,s1.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,W_.findMetadataPda)(t,{mint:(0,s1.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,K2e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,W_.findMasterEditionPda)(t,{mint:(0,s1.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,dK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,s1.getAccountMetasAndSigners)(s,"programId",r),d=uK().serialize({}),u=0;return(0,dK.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(U2e,"revokeAuthorityItemV1");Mc.revokeAuthorityItemV1=U2e});var fK=v(Dc=>{"use strict";Object.defineProperty(Dc,"__esModule",{value:!0});Dc.revokeCollectionAuthority=Dc.getRevokeCollectionAuthorityInstructionDataSerializer=void 0;var j2e=K(),V_=V(),H2e=ue(),pK=ee();function mK(){return(0,V_.mapSerializer)((0,V_.struct)([["discriminator",(0,V_.u8)()]],{description:"RevokeCollectionAuthorityInstructionData"}),t=>({...t,discriminator:24}))}n(mK,"getRevokeCollectionAuthorityInstructionDataSerializer");Dc.getRevokeCollectionAuthorityInstructionDataSerializer=mK;function $2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={collectionAuthorityRecord:{index:0,isWritable:!0,value:e.collectionAuthorityRecord??null},delegateAuthority:{index:1,isWritable:!0,value:e.delegateAuthority??null},revokeAuthority:{index:2,isWritable:!0,value:e.revokeAuthority??null},metadata:{index:3,isWritable:!1,value:e.metadata??null},mint:{index:4,isWritable:!1,value:e.mint??null}};i.metadata.value||(i.metadata.value=(0,H2e.findMetadataPda)(t,{mint:(0,pK.expectPublicKey)(i.mint.value)}));let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,pK.getAccountMetasAndSigners)(a,"programId",r),l=mK().serialize({}),d=0;return(0,j2e.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n($2e,"revokeCollectionAuthority");Dc.revokeCollectionAuthority=$2e});var yK=v(Rc=>{"use strict";Object.defineProperty(Rc,"__esModule",{value:!0});Rc.revokeCollectionItemV1=Rc.getRevokeCollectionItemV1InstructionDataSerializer=void 0;var hK=K(),$5=V(),G2e=Ve(),F_=ue(),o1=ee(),Z2e=ae();function gK(){return(0,$5.mapSerializer)((0,$5.struct)([["discriminator",(0,$5.u8)()],["revokeCollectionItemV1Discriminator",(0,$5.u8)()]],{description:"RevokeCollectionItemV1InstructionData"}),t=>({...t,discriminator:45,revokeCollectionItemV1Discriminator:12}))}n(gK,"getRevokeCollectionItemV1InstructionDataSerializer");Rc.getRevokeCollectionItemV1InstructionDataSerializer=gK;function J2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,o1.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,F_.findMetadataDelegateRecordPda)(t,{mint:(0,o1.expectPublicKey)(i.mint.value),delegateRole:Z2e.MetadataDelegateRole.CollectionItem,updateAuthority:(0,o1.expectSome)(a.updateAuthority),delegate:(0,o1.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,F_.findMetadataPda)(t,{mint:(0,o1.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,G2e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,F_.findMasterEditionPda)(t,{mint:(0,o1.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,hK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,o1.getAccountMetasAndSigners)(s,"programId",r),d=gK().serialize({}),u=0;return(0,hK.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(J2e,"revokeCollectionItemV1");Rc.revokeCollectionItemV1=J2e});var SK=v(Bc=>{"use strict";Object.defineProperty(Bc,"__esModule",{value:!0});Bc.revokeCollectionV1=Bc.getRevokeCollectionV1InstructionDataSerializer=void 0;var bK=K(),G5=V(),Y2e=Ve(),K_=ue(),l1=ee(),Q2e=ae();function vK(){return(0,G5.mapSerializer)((0,G5.struct)([["discriminator",(0,G5.u8)()],["revokeCollectionV1Discriminator",(0,G5.u8)()]],{description:"RevokeCollectionV1InstructionData"}),t=>({...t,discriminator:45,revokeCollectionV1Discriminator:0}))}n(vK,"getRevokeCollectionV1InstructionDataSerializer");Bc.getRevokeCollectionV1InstructionDataSerializer=vK;function X2e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,l1.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,K_.findMetadataDelegateRecordPda)(t,{mint:(0,l1.expectPublicKey)(i.mint.value),delegateRole:Q2e.MetadataDelegateRole.Collection,updateAuthority:(0,l1.expectSome)(a.updateAuthority),delegate:(0,l1.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,K_.findMetadataPda)(t,{mint:(0,l1.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,Y2e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,K_.findMasterEditionPda)(t,{mint:(0,l1.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,bK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,l1.getAccountMetasAndSigners)(s,"programId",r),d=vK().serialize({}),u=0;return(0,bK.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(X2e,"revokeCollectionV1");Bc.revokeCollectionV1=X2e});var AK=v(Cc=>{"use strict";Object.defineProperty(Cc,"__esModule",{value:!0});Cc.revokeDataItemV1=Cc.getRevokeDataItemV1InstructionDataSerializer=void 0;var wK=K(),Z5=V(),e6e=Ve(),L_=ue(),d1=ee(),t6e=ae();function xK(){return(0,Z5.mapSerializer)((0,Z5.struct)([["discriminator",(0,Z5.u8)()],["revokeDataItemV1Discriminator",(0,Z5.u8)()]],{description:"RevokeDataItemV1InstructionData"}),t=>({...t,discriminator:45,revokeDataItemV1Discriminator:11}))}n(xK,"getRevokeDataItemV1InstructionDataSerializer");Cc.getRevokeDataItemV1InstructionDataSerializer=xK;function r6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,d1.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,L_.findMetadataDelegateRecordPda)(t,{mint:(0,d1.expectPublicKey)(i.mint.value),delegateRole:t6e.MetadataDelegateRole.DataItem,updateAuthority:(0,d1.expectSome)(a.updateAuthority),delegate:(0,d1.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,L_.findMetadataPda)(t,{mint:(0,d1.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,e6e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,L_.findMasterEditionPda)(t,{mint:(0,d1.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,wK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,d1.getAccountMetasAndSigners)(s,"programId",r),d=xK().serialize({}),u=0;return(0,wK.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(r6e,"revokeDataItemV1");Cc.revokeDataItemV1=r6e});var EK=v(Oc=>{"use strict";Object.defineProperty(Oc,"__esModule",{value:!0});Oc.revokeDataV1=Oc.getRevokeDataV1InstructionDataSerializer=void 0;var _K=K(),J5=V(),i6e=Ve(),U_=ue(),u1=ee(),a6e=ae();function kK(){return(0,J5.mapSerializer)((0,J5.struct)([["discriminator",(0,J5.u8)()],["revokeDataV1Discriminator",(0,J5.u8)()]],{description:"RevokeDataV1InstructionData"}),t=>({...t,discriminator:45,revokeDataV1Discriminator:3}))}n(kK,"getRevokeDataV1InstructionDataSerializer");Oc.getRevokeDataV1InstructionDataSerializer=kK;function n6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,u1.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,U_.findMetadataDelegateRecordPda)(t,{mint:(0,u1.expectPublicKey)(i.mint.value),delegateRole:a6e.MetadataDelegateRole.Data,updateAuthority:(0,u1.expectSome)(a.updateAuthority),delegate:(0,u1.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,U_.findMetadataPda)(t,{mint:(0,u1.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,i6e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,U_.findMasterEditionPda)(t,{mint:(0,u1.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,_K.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,u1.getAccountMetasAndSigners)(s,"programId",r),d=kK().serialize({}),u=0;return(0,_K.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(n6e,"revokeDataV1");Oc.revokeDataV1=n6e});var zK=v(Nc=>{"use strict";Object.defineProperty(Nc,"__esModule",{value:!0});Nc.revokeLockedTransferV1=Nc.getRevokeLockedTransferV1InstructionDataSerializer=void 0;var s6e=kt(),PK=K(),Y5=V(),o6e=Ve(),Q5=ue(),ps=ee(),l6e=ae();function TK(){return(0,Y5.mapSerializer)((0,Y5.struct)([["discriminator",(0,Y5.u8)()],["revokeLockedTransferV1Discriminator",(0,Y5.u8)()]],{description:"RevokeLockedTransferV1InstructionData"}),t=>({...t,discriminator:45,revokeLockedTransferV1Discriminator:7}))}n(TK,"getRevokeLockedTransferV1InstructionDataSerializer");Nc.getRevokeLockedTransferV1InstructionDataSerializer=TK;function d6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,s6e.findAssociatedTokenPda)(t,{mint:(0,ps.expectPublicKey)(i.mint.value),owner:(0,ps.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,Q5.findTokenRecordPda)(t,{mint:(0,ps.expectPublicKey)(i.mint.value),token:(0,ps.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,Q5.findMetadataPda)(t,{mint:(0,ps.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,o6e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,Q5.findMasterEditionPda)(t,{mint:(0,ps.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===l6e.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,Q5.findTokenRecordPda)(t,{mint:(0,ps.expectPublicKey)(i.mint.value),token:(0,ps.expectPublicKey)(i.token.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,PK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,ps.getAccountMetasAndSigners)(s,"programId",r),d=TK().serialize({}),u=0;return(0,PK.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(d6e,"revokeLockedTransferV1");Nc.revokeLockedTransferV1=d6e});var DK=v(qc=>{"use strict";Object.defineProperty(qc,"__esModule",{value:!0});qc.revokeMigrationV1=qc.getRevokeMigrationV1InstructionDataSerializer=void 0;var u6e=kt(),IK=K(),X5=V(),c6e=Ve(),e9=ue(),ms=ee(),p6e=ae();function MK(){return(0,X5.mapSerializer)((0,X5.struct)([["discriminator",(0,X5.u8)()],["revokeMigrationV1Discriminator",(0,X5.u8)()]],{description:"RevokeMigrationV1InstructionData"}),t=>({...t,discriminator:45,revokeMigrationV1Discriminator:9}))}n(MK,"getRevokeMigrationV1InstructionDataSerializer");qc.getRevokeMigrationV1InstructionDataSerializer=MK;function m6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,u6e.findAssociatedTokenPda)(t,{mint:(0,ms.expectPublicKey)(i.mint.value),owner:(0,ms.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,e9.findTokenRecordPda)(t,{mint:(0,ms.expectPublicKey)(i.mint.value),token:(0,ms.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,e9.findMetadataPda)(t,{mint:(0,ms.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,c6e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,e9.findMasterEditionPda)(t,{mint:(0,ms.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===p6e.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,e9.findTokenRecordPda)(t,{mint:(0,ms.expectPublicKey)(i.mint.value),token:(0,ms.expectPublicKey)(i.token.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,IK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,ms.getAccountMetasAndSigners)(s,"programId",r),d=MK().serialize({}),u=0;return(0,IK.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(m6e,"revokeMigrationV1");qc.revokeMigrationV1=m6e});var CK=v(Wc=>{"use strict";Object.defineProperty(Wc,"__esModule",{value:!0});Wc.revokeProgrammableConfigItemV1=Wc.getRevokeProgrammableConfigItemV1InstructionDataSerializer=void 0;var RK=K(),t9=V(),f6e=Ve(),j_=ue(),c1=ee(),h6e=ae();function BK(){return(0,t9.mapSerializer)((0,t9.struct)([["discriminator",(0,t9.u8)()],["revokeProgrammableConfigItemV1Discriminator",(0,t9.u8)()]],{description:"RevokeProgrammableConfigItemV1InstructionData"}),t=>({...t,discriminator:45,revokeProgrammableConfigItemV1Discriminator:13}))}n(BK,"getRevokeProgrammableConfigItemV1InstructionDataSerializer");Wc.getRevokeProgrammableConfigItemV1InstructionDataSerializer=BK;function g6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,c1.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,j_.findMetadataDelegateRecordPda)(t,{mint:(0,c1.expectPublicKey)(i.mint.value),delegateRole:h6e.MetadataDelegateRole.ProgrammableConfigItem,updateAuthority:(0,c1.expectSome)(a.updateAuthority),delegate:(0,c1.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,j_.findMetadataPda)(t,{mint:(0,c1.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,f6e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,j_.findMasterEditionPda)(t,{mint:(0,c1.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,RK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,c1.getAccountMetasAndSigners)(s,"programId",r),d=BK().serialize({}),u=0;return(0,RK.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(g6e,"revokeProgrammableConfigItemV1");Wc.revokeProgrammableConfigItemV1=g6e});var qK=v(Vc=>{"use strict";Object.defineProperty(Vc,"__esModule",{value:!0});Vc.revokeProgrammableConfigV1=Vc.getRevokeProgrammableConfigV1InstructionDataSerializer=void 0;var OK=K(),r9=V(),y6e=Ve(),H_=ue(),p1=ee(),b6e=ae();function NK(){return(0,r9.mapSerializer)((0,r9.struct)([["discriminator",(0,r9.u8)()],["revokeProgrammableConfigV1Discriminator",(0,r9.u8)()]],{description:"RevokeProgrammableConfigV1InstructionData"}),t=>({...t,discriminator:45,revokeProgrammableConfigV1Discriminator:8}))}n(NK,"getRevokeProgrammableConfigV1InstructionDataSerializer");Vc.getRevokeProgrammableConfigV1InstructionDataSerializer=NK;function v6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=(0,p1.expectPublicKey)(i.authority.value)),i.delegateRecord.value||(i.delegateRecord.value=(0,H_.findMetadataDelegateRecordPda)(t,{mint:(0,p1.expectPublicKey)(i.mint.value),delegateRole:b6e.MetadataDelegateRole.ProgrammableConfig,updateAuthority:(0,p1.expectSome)(a.updateAuthority),delegate:(0,p1.expectPublicKey)(i.delegate.value)})),i.metadata.value||(i.metadata.value=(0,H_.findMetadataPda)(t,{mint:(0,p1.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,y6e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,H_.findMasterEditionPda)(t,{mint:(0,p1.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,OK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,p1.getAccountMetasAndSigners)(s,"programId",r),d=NK().serialize({}),u=0;return(0,OK.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(v6e,"revokeProgrammableConfigV1");Vc.revokeProgrammableConfigV1=v6e});var FK=v(Fc=>{"use strict";Object.defineProperty(Fc,"__esModule",{value:!0});Fc.revokeSaleV1=Fc.getRevokeSaleV1InstructionDataSerializer=void 0;var S6e=kt(),WK=K(),i9=V(),w6e=Ve(),a9=ue(),fs=ee(),x6e=ae();function VK(){return(0,i9.mapSerializer)((0,i9.struct)([["discriminator",(0,i9.u8)()],["revokeSaleV1Discriminator",(0,i9.u8)()]],{description:"RevokeSaleV1InstructionData"}),t=>({...t,discriminator:45,revokeSaleV1Discriminator:1}))}n(VK,"getRevokeSaleV1InstructionDataSerializer");Fc.getRevokeSaleV1InstructionDataSerializer=VK;function A6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,S6e.findAssociatedTokenPda)(t,{mint:(0,fs.expectPublicKey)(i.mint.value),owner:(0,fs.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,a9.findTokenRecordPda)(t,{mint:(0,fs.expectPublicKey)(i.mint.value),token:(0,fs.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,a9.findMetadataPda)(t,{mint:(0,fs.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,w6e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,a9.findMasterEditionPda)(t,{mint:(0,fs.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===x6e.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,a9.findTokenRecordPda)(t,{mint:(0,fs.expectPublicKey)(i.mint.value),token:(0,fs.expectPublicKey)(i.token.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,WK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,fs.getAccountMetasAndSigners)(s,"programId",r),d=VK().serialize({}),u=0;return(0,WK.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(A6e,"revokeSaleV1");Fc.revokeSaleV1=A6e});var UK=v(Kc=>{"use strict";Object.defineProperty(Kc,"__esModule",{value:!0});Kc.revokeStakingV1=Kc.getRevokeStakingV1InstructionDataSerializer=void 0;var _6e=kt(),KK=K(),n9=V(),k6e=Ve(),s9=ue(),hs=ee(),E6e=ae();function LK(){return(0,n9.mapSerializer)((0,n9.struct)([["discriminator",(0,n9.u8)()],["revokeStakingV1Discriminator",(0,n9.u8)()]],{description:"RevokeStakingV1InstructionData"}),t=>({...t,discriminator:45,revokeStakingV1Discriminator:5}))}n(LK,"getRevokeStakingV1InstructionDataSerializer");Kc.getRevokeStakingV1InstructionDataSerializer=LK;function P6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,_6e.findAssociatedTokenPda)(t,{mint:(0,hs.expectPublicKey)(i.mint.value),owner:(0,hs.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,s9.findTokenRecordPda)(t,{mint:(0,hs.expectPublicKey)(i.mint.value),token:(0,hs.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,s9.findMetadataPda)(t,{mint:(0,hs.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,k6e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,s9.findMasterEditionPda)(t,{mint:(0,hs.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===E6e.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,s9.findTokenRecordPda)(t,{mint:(0,hs.expectPublicKey)(i.mint.value),token:(0,hs.expectPublicKey)(i.token.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,KK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,hs.getAccountMetasAndSigners)(s,"programId",r),d=LK().serialize({}),u=0;return(0,KK.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(P6e,"revokeStakingV1");Kc.revokeStakingV1=P6e});var $K=v(Lc=>{"use strict";Object.defineProperty(Lc,"__esModule",{value:!0});Lc.revokeStandardV1=Lc.getRevokeStandardV1InstructionDataSerializer=void 0;var T6e=kt(),jK=K(),o9=V(),z6e=Ve(),$_=ue(),m1=ee();function HK(){return(0,o9.mapSerializer)((0,o9.struct)([["discriminator",(0,o9.u8)()],["revokeStandardV1Discriminator",(0,o9.u8)()]],{description:"RevokeStandardV1InstructionData"}),t=>({...t,discriminator:45,revokeStandardV1Discriminator:6}))}n(HK,"getRevokeStandardV1InstructionDataSerializer");Lc.getRevokeStandardV1InstructionDataSerializer=HK;function I6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,T6e.findAssociatedTokenPda)(t,{mint:(0,m1.expectPublicKey)(i.mint.value),owner:(0,m1.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,$_.findTokenRecordPda)(t,{mint:(0,m1.expectPublicKey)(i.mint.value),token:(0,m1.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,$_.findMetadataPda)(t,{mint:(0,m1.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,z6e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,$_.findMasterEditionPda)(t,{mint:(0,m1.expectPublicKey)(i.mint.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,jK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,m1.getAccountMetasAndSigners)(s,"programId",r),d=HK().serialize({}),u=0;return(0,jK.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(I6e,"revokeStandardV1");Lc.revokeStandardV1=I6e});var JK=v(Uc=>{"use strict";Object.defineProperty(Uc,"__esModule",{value:!0});Uc.revokeTransferV1=Uc.getRevokeTransferV1InstructionDataSerializer=void 0;var M6e=kt(),GK=K(),l9=V(),D6e=Ve(),d9=ue(),gs=ee(),R6e=ae();function ZK(){return(0,l9.mapSerializer)((0,l9.struct)([["discriminator",(0,l9.u8)()],["revokeTransferV1Discriminator",(0,l9.u8)()]],{description:"RevokeTransferV1InstructionData"}),t=>({...t,discriminator:45,revokeTransferV1Discriminator:2}))}n(ZK,"getRevokeTransferV1InstructionDataSerializer");Uc.getRevokeTransferV1InstructionDataSerializer=ZK;function B6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,M6e.findAssociatedTokenPda)(t,{mint:(0,gs.expectPublicKey)(i.mint.value),owner:(0,gs.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,d9.findTokenRecordPda)(t,{mint:(0,gs.expectPublicKey)(i.mint.value),token:(0,gs.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,d9.findMetadataPda)(t,{mint:(0,gs.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,D6e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,d9.findMasterEditionPda)(t,{mint:(0,gs.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===R6e.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,d9.findTokenRecordPda)(t,{mint:(0,gs.expectPublicKey)(i.mint.value),token:(0,gs.expectPublicKey)(i.token.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,GK.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,gs.getAccountMetasAndSigners)(s,"programId",r),d=ZK().serialize({}),u=0;return(0,GK.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(B6e,"revokeTransferV1");Uc.revokeTransferV1=B6e});var XK=v(jc=>{"use strict";Object.defineProperty(jc,"__esModule",{value:!0});jc.revokeUseAuthority=jc.getRevokeUseAuthorityInstructionDataSerializer=void 0;var C6e=K(),G_=V(),O6e=ue(),YK=ee();function QK(){return(0,G_.mapSerializer)((0,G_.struct)([["discriminator",(0,G_.u8)()]],{description:"RevokeUseAuthorityInstructionData"}),t=>({...t,discriminator:21}))}n(QK,"getRevokeUseAuthorityInstructionDataSerializer");jc.getRevokeUseAuthorityInstructionDataSerializer=QK;function N6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={useAuthorityRecord:{index:0,isWritable:!0,value:e.useAuthorityRecord??null},owner:{index:1,isWritable:!0,value:e.owner??null},user:{index:2,isWritable:!1,value:e.user??null},ownerTokenAccount:{index:3,isWritable:!0,value:e.ownerTokenAccount??null},mint:{index:4,isWritable:!1,value:e.mint??null},metadata:{index:5,isWritable:!1,value:e.metadata??null},tokenProgram:{index:6,isWritable:!1,value:e.tokenProgram??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},rent:{index:8,isWritable:!1,value:e.rent??null}};i.metadata.value||(i.metadata.value=(0,O6e.findMetadataPda)(t,{mint:(0,YK.expectPublicKey)(i.mint.value)})),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1);let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,YK.getAccountMetasAndSigners)(a,"omitted",r),l=QK().serialize({}),d=0;return(0,C6e.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(N6e,"revokeUseAuthority");jc.revokeUseAuthority=N6e});var rL=v(Hc=>{"use strict";Object.defineProperty(Hc,"__esModule",{value:!0});Hc.revokeUtilityV1=Hc.getRevokeUtilityV1InstructionDataSerializer=void 0;var q6e=kt(),eL=K(),u9=V(),W6e=Ve(),c9=ue(),ys=ee(),V6e=ae();function tL(){return(0,u9.mapSerializer)((0,u9.struct)([["discriminator",(0,u9.u8)()],["revokeUtilityV1Discriminator",(0,u9.u8)()]],{description:"RevokeUtilityV1InstructionData"}),t=>({...t,discriminator:45,revokeUtilityV1Discriminator:4}))}n(tL,"getRevokeUtilityV1InstructionDataSerializer");Hc.getRevokeUtilityV1InstructionDataSerializer=tL;function F6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegateRecord:{index:0,isWritable:!0,value:e.delegateRecord??null},delegate:{index:1,isWritable:!1,value:e.delegate??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},masterEdition:{index:3,isWritable:!1,value:e.masterEdition??null},tokenRecord:{index:4,isWritable:!0,value:e.tokenRecord??null},mint:{index:5,isWritable:!1,value:e.mint??null},token:{index:6,isWritable:!0,value:e.token??null},authority:{index:7,isWritable:!1,value:e.authority??null},payer:{index:8,isWritable:!0,value:e.payer??null},systemProgram:{index:9,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:10,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:11,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:12,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:13,isWritable:!1,value:e.authorizationRules??null}},a={...e};a.tokenOwner||(a.tokenOwner=t.identity.publicKey),i.token.value||(i.token.value=(0,q6e.findAssociatedTokenPda)(t,{mint:(0,ys.expectPublicKey)(i.mint.value),owner:(0,ys.expectSome)(a.tokenOwner)})),i.delegateRecord.value||(i.delegateRecord.value=(0,c9.findTokenRecordPda)(t,{mint:(0,ys.expectPublicKey)(i.mint.value),token:(0,ys.expectPublicKey)(i.token.value)})),i.metadata.value||(i.metadata.value=(0,c9.findMetadataPda)(t,{mint:(0,ys.expectPublicKey)(i.mint.value)})),i.masterEdition.value||(0,W6e.resolveIsNonFungible)(t,i,a,r,!1)&&(i.masterEdition.value=(0,c9.findMasterEditionPda)(t,{mint:(0,ys.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===V6e.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,c9.findTokenRecordPda)(t,{mint:(0,ys.expectPublicKey)(i.mint.value),token:(0,ys.expectPublicKey)(i.token.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,eL.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,ys.getAccountMetasAndSigners)(s,"programId",r),d=tL().serialize({}),u=0;return(0,eL.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(F6e,"revokeUtilityV1");Hc.revokeUtilityV1=F6e});var aL=v($c=>{"use strict";Object.defineProperty($c,"__esModule",{value:!0});$c.setAndVerifyCollection=$c.getSetAndVerifyCollectionInstructionDataSerializer=void 0;var K6e=K(),Z_=V(),L6e=ee();function iL(){return(0,Z_.mapSerializer)((0,Z_.struct)([["discriminator",(0,Z_.u8)()]],{description:"SetAndVerifyCollectionInstructionData"}),t=>({...t,discriminator:25}))}n(iL,"getSetAndVerifyCollectionInstructionDataSerializer");$c.getSetAndVerifyCollectionInstructionDataSerializer=iL;function U6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},collectionAuthority:{index:1,isWritable:!0,value:e.collectionAuthority??null},payer:{index:2,isWritable:!0,value:e.payer??null},updateAuthority:{index:3,isWritable:!1,value:e.updateAuthority??null},collectionMint:{index:4,isWritable:!1,value:e.collectionMint??null},collection:{index:5,isWritable:!1,value:e.collection??null},collectionMasterEditionAccount:{index:6,isWritable:!1,value:e.collectionMasterEditionAccount??null},collectionAuthorityRecord:{index:7,isWritable:!1,value:e.collectionAuthorityRecord??null}};i.payer.value||(i.payer.value=t.payer),i.updateAuthority.value||(i.updateAuthority.value=t.identity.publicKey);let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,L6e.getAccountMetasAndSigners)(a,"omitted",r),l=iL().serialize({}),d=0;return(0,K6e.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(U6e,"setAndVerifyCollection");$c.setAndVerifyCollection=U6e});var sL=v(Gc=>{"use strict";Object.defineProperty(Gc,"__esModule",{value:!0});Gc.setAndVerifySizedCollectionItem=Gc.getSetAndVerifySizedCollectionItemInstructionDataSerializer=void 0;var j6e=K(),J_=V(),H6e=ee();function nL(){return(0,J_.mapSerializer)((0,J_.struct)([["discriminator",(0,J_.u8)()]],{description:"SetAndVerifySizedCollectionItemInstructionData"}),t=>({...t,discriminator:32}))}n(nL,"getSetAndVerifySizedCollectionItemInstructionDataSerializer");Gc.getSetAndVerifySizedCollectionItemInstructionDataSerializer=nL;function $6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},collectionAuthority:{index:1,isWritable:!1,value:e.collectionAuthority??null},payer:{index:2,isWritable:!0,value:e.payer??null},updateAuthority:{index:3,isWritable:!1,value:e.updateAuthority??null},collectionMint:{index:4,isWritable:!1,value:e.collectionMint??null},collection:{index:5,isWritable:!0,value:e.collection??null},collectionMasterEditionAccount:{index:6,isWritable:!0,value:e.collectionMasterEditionAccount??null},collectionAuthorityRecord:{index:7,isWritable:!1,value:e.collectionAuthorityRecord??null}};i.payer.value||(i.payer.value=t.payer),i.updateAuthority.value||(i.updateAuthority.value=t.identity.publicKey);let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,H6e.getAccountMetasAndSigners)(a,"omitted",r),l=nL().serialize({}),d=0;return(0,j6e.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n($6e,"setAndVerifySizedCollectionItem");Gc.setAndVerifySizedCollectionItem=$6e});var lL=v(Zc=>{"use strict";Object.defineProperty(Zc,"__esModule",{value:!0});Zc.setCollectionSize=Zc.getSetCollectionSizeInstructionDataSerializer=void 0;var G6e=K(),Y_=V(),Z6e=ee(),J6e=ae();function oL(){return(0,Y_.mapSerializer)((0,Y_.struct)([["discriminator",(0,Y_.u8)()],["setCollectionSizeArgs",(0,J6e.getSetCollectionSizeArgsSerializer)()]],{description:"SetCollectionSizeInstructionData"}),t=>({...t,discriminator:34}))}n(oL,"getSetCollectionSizeInstructionDataSerializer");Zc.getSetCollectionSizeInstructionDataSerializer=oL;function Y6e(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={collectionMetadata:{index:0,isWritable:!0,value:e.collectionMetadata??null},collectionAuthority:{index:1,isWritable:!0,value:e.collectionAuthority??null},collectionMint:{index:2,isWritable:!1,value:e.collectionMint??null},collectionAuthorityRecord:{index:3,isWritable:!1,value:e.collectionAuthorityRecord??null}},a={...e},s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,Z6e.getAccountMetasAndSigners)(s,"omitted",r),d=oL().serialize(a),u=0;return(0,G6e.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Y6e,"setCollectionSize");Zc.setCollectionSize=Y6e});var cL=v(Jc=>{"use strict";Object.defineProperty(Jc,"__esModule",{value:!0});Jc.setTokenStandard=Jc.getSetTokenStandardInstructionDataSerializer=void 0;var Q6e=K(),Q_=V(),X6e=ue(),dL=ee();function uL(){return(0,Q_.mapSerializer)((0,Q_.struct)([["discriminator",(0,Q_.u8)()]],{description:"SetTokenStandardInstructionData"}),t=>({...t,discriminator:35}))}n(uL,"getSetTokenStandardInstructionDataSerializer");Jc.getSetTokenStandardInstructionDataSerializer=uL;function ehe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},updateAuthority:{index:1,isWritable:!1,value:e.updateAuthority??null},mint:{index:2,isWritable:!1,value:e.mint??null},edition:{index:3,isWritable:!1,value:e.edition??null}};i.metadata.value||(i.metadata.value=(0,X6e.findMetadataPda)(t,{mint:(0,dL.expectPublicKey)(i.mint.value)})),i.updateAuthority.value||(i.updateAuthority.value=t.identity);let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,dL.getAccountMetasAndSigners)(a,"omitted",r),l=uL().serialize({}),d=0;return(0,Q6e.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(ehe,"setTokenStandard");Jc.setTokenStandard=ehe});var mL=v(Yc=>{"use strict";Object.defineProperty(Yc,"__esModule",{value:!0});Yc.signMetadata=Yc.getSignMetadataInstructionDataSerializer=void 0;var the=K(),X_=V(),rhe=ee();function pL(){return(0,X_.mapSerializer)((0,X_.struct)([["discriminator",(0,X_.u8)()]],{description:"SignMetadataInstructionData"}),t=>({...t,discriminator:7}))}n(pL,"getSignMetadataInstructionDataSerializer");Yc.getSignMetadataInstructionDataSerializer=pL;function ihe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},creator:{index:1,isWritable:!1,value:e.creator??null}},a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,rhe.getAccountMetasAndSigners)(a,"programId",r),l=pL().serialize({}),d=0;return(0,the.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(ihe,"signMetadata");Yc.signMetadata=ihe});var gL=v(Qc=>{"use strict";Object.defineProperty(Qc,"__esModule",{value:!0});Qc.thawDelegatedAccount=Qc.getThawDelegatedAccountInstructionDataSerializer=void 0;var ahe=K(),ek=V(),nhe=ue(),fL=ee();function hL(){return(0,ek.mapSerializer)((0,ek.struct)([["discriminator",(0,ek.u8)()]],{description:"ThawDelegatedAccountInstructionData"}),t=>({...t,discriminator:27}))}n(hL,"getThawDelegatedAccountInstructionDataSerializer");Qc.getThawDelegatedAccountInstructionDataSerializer=hL;function she(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={delegate:{index:0,isWritable:!0,value:e.delegate??null},tokenAccount:{index:1,isWritable:!0,value:e.tokenAccount??null},edition:{index:2,isWritable:!1,value:e.edition??null},mint:{index:3,isWritable:!1,value:e.mint??null},tokenProgram:{index:4,isWritable:!1,value:e.tokenProgram??null}};i.edition.value||(i.edition.value=(0,nhe.findMasterEditionPda)(t,{mint:(0,fL.expectPublicKey)(i.mint.value)})),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1);let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,fL.getAccountMetasAndSigners)(a,"programId",r),l=hL().serialize({}),d=0;return(0,ahe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(she,"thawDelegatedAccount");Qc.thawDelegatedAccount=she});var vL=v(Xc=>{"use strict";Object.defineProperty(Xc,"__esModule",{value:!0});Xc.transferOutOfEscrow=Xc.getTransferOutOfEscrowInstructionDataSerializer=void 0;var yL=K(),p9=V(),ohe=ee();function bL(){return(0,p9.mapSerializer)((0,p9.struct)([["discriminator",(0,p9.u8)()],["amount",(0,p9.u64)()]],{description:"TransferOutOfEscrowInstructionData"}),t=>({...t,discriminator:40,amount:t.amount??1}))}n(bL,"getTransferOutOfEscrowInstructionDataSerializer");Xc.getTransferOutOfEscrowInstructionDataSerializer=bL;function lhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={escrow:{index:0,isWritable:!1,value:e.escrow??null},metadata:{index:1,isWritable:!0,value:e.metadata??null},payer:{index:2,isWritable:!0,value:e.payer??null},attributeMint:{index:3,isWritable:!1,value:e.attributeMint??null},attributeSrc:{index:4,isWritable:!0,value:e.attributeSrc??null},attributeDst:{index:5,isWritable:!0,value:e.attributeDst??null},escrowMint:{index:6,isWritable:!1,value:e.escrowMint??null},escrowAccount:{index:7,isWritable:!1,value:e.escrowAccount??null},systemProgram:{index:8,isWritable:!1,value:e.systemProgram??null},ataProgram:{index:9,isWritable:!1,value:e.ataProgram??null},tokenProgram:{index:10,isWritable:!1,value:e.tokenProgram??null},sysvarInstructions:{index:11,isWritable:!1,value:e.sysvarInstructions??null},authority:{index:12,isWritable:!1,value:e.authority??null}},a={...e};i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.ataProgram.value||(i.ataProgram.value=t.programs.getPublicKey("splAssociatedToken","ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"),i.ataProgram.isWritable=!1),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,yL.publicKey)("Sysvar1nstructions1111111111111111111111111"));let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,ohe.getAccountMetasAndSigners)(s,"omitted",r),d=bL().serialize(a),u=0;return(0,yL.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(lhe,"transferOutOfEscrow");Xc.transferOutOfEscrow=lhe});var xL=v(tp=>{"use strict";Object.defineProperty(tp,"__esModule",{value:!0});tp.transferV1=tp.getTransferV1InstructionDataSerializer=void 0;var SL=kt(),tk=K(),ep=V(),m9=ue(),La=ee(),f9=ae();function wL(){return(0,ep.mapSerializer)((0,ep.struct)([["discriminator",(0,ep.u8)()],["transferV1Discriminator",(0,ep.u8)()],["amount",(0,ep.u64)()],["authorizationData",(0,ep.option)((0,f9.getAuthorizationDataSerializer)())]],{description:"TransferV1InstructionData"}),t=>({...t,discriminator:49,transferV1Discriminator:0,amount:t.amount??1,authorizationData:t.authorizationData??(0,tk.none)()}))}n(wL,"getTransferV1InstructionDataSerializer");tp.getTransferV1InstructionDataSerializer=wL;function dhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={token:{index:0,isWritable:!0,value:e.token??null},tokenOwner:{index:1,isWritable:!1,value:e.tokenOwner??null},destinationToken:{index:2,isWritable:!0,value:e.destinationToken??null},destinationOwner:{index:3,isWritable:!1,value:e.destinationOwner??null},mint:{index:4,isWritable:!1,value:e.mint??null},metadata:{index:5,isWritable:!0,value:e.metadata??null},edition:{index:6,isWritable:!1,value:e.edition??null},tokenRecord:{index:7,isWritable:!0,value:e.tokenRecord??null},destinationTokenRecord:{index:8,isWritable:!0,value:e.destinationTokenRecord??null},authority:{index:9,isWritable:!1,value:e.authority??null},payer:{index:10,isWritable:!0,value:e.payer??null},systemProgram:{index:11,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:12,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:13,isWritable:!1,value:e.splTokenProgram??null},splAtaProgram:{index:14,isWritable:!1,value:e.splAtaProgram??null},authorizationRulesProgram:{index:15,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:16,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.tokenOwner.value||(i.tokenOwner.value=t.identity.publicKey),i.token.value||(i.token.value=(0,SL.findAssociatedTokenPda)(t,{mint:(0,La.expectPublicKey)(i.mint.value),owner:(0,La.expectPublicKey)(i.tokenOwner.value)})),i.destinationToken.value||(i.destinationToken.value=(0,SL.findAssociatedTokenPda)(t,{mint:(0,La.expectPublicKey)(i.mint.value),owner:(0,La.expectPublicKey)(i.destinationOwner.value)})),i.metadata.value||(i.metadata.value=(0,m9.findMetadataPda)(t,{mint:(0,La.expectPublicKey)(i.mint.value)})),i.edition.value||a.tokenStandard===f9.TokenStandard.ProgrammableNonFungible&&(i.edition.value=(0,m9.findMasterEditionPda)(t,{mint:(0,La.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===f9.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,m9.findTokenRecordPda)(t,{mint:(0,La.expectPublicKey)(i.mint.value),token:(0,La.expectPublicKey)(i.token.value)})),i.destinationTokenRecord.value||a.tokenStandard===f9.TokenStandard.ProgrammableNonFungible&&(i.destinationTokenRecord.value=(0,m9.findTokenRecordPda)(t,{mint:(0,La.expectPublicKey)(i.mint.value),token:(0,La.expectPublicKey)(i.destinationToken.value)})),i.authority.value||(i.authority.value=t.identity),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,tk.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.splAtaProgram.value||(i.splAtaProgram.value=t.programs.getPublicKey("splAssociatedToken","ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"),i.splAtaProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,La.getAccountMetasAndSigners)(s,"programId",r),d=wL().serialize(a),u=0;return(0,tk.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(dhe,"transferV1");tp.transferV1=dhe});var kL=v(rp=>{"use strict";Object.defineProperty(rp,"__esModule",{value:!0});rp.unlockV1=rp.getUnlockV1InstructionDataSerializer=void 0;var uhe=kt(),ik=K(),o4=V(),AL=Ve(),rk=ue(),f1=ee(),ak=ae();function _L(){return(0,o4.mapSerializer)((0,o4.struct)([["discriminator",(0,o4.u8)()],["unlockV1Discriminator",(0,o4.u8)()],["authorizationData",(0,o4.option)((0,ak.getAuthorizationDataSerializer)())]],{description:"UnlockV1InstructionData"}),t=>({...t,discriminator:47,unlockV1Discriminator:0,authorizationData:t.authorizationData??(0,ik.none)()}))}n(_L,"getUnlockV1InstructionDataSerializer");rp.getUnlockV1InstructionDataSerializer=_L;function che(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},tokenOwner:{index:1,isWritable:!1,value:e.tokenOwner??null},token:{index:2,isWritable:!0,value:e.token??null},mint:{index:3,isWritable:!1,value:e.mint??null},metadata:{index:4,isWritable:!0,value:e.metadata??null},edition:{index:5,isWritable:!1,value:e.edition??null},tokenRecord:{index:6,isWritable:!0,value:e.tokenRecord??null},payer:{index:7,isWritable:!0,value:e.payer??null},systemProgram:{index:8,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:9,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:10,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:11,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:12,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),i.tokenOwner.value||(i.tokenOwner={...i.tokenOwner,...(0,AL.resolveOptionalTokenOwner)(t,i,a,r,!1)}),i.token.value||(i.token.value=(0,uhe.findAssociatedTokenPda)(t,{mint:(0,f1.expectPublicKey)(i.mint.value),owner:(0,f1.expectPublicKey)(i.tokenOwner.value)})),i.metadata.value||(i.metadata.value=(0,rk.findMetadataPda)(t,{mint:(0,f1.expectPublicKey)(i.mint.value)})),i.edition.value||(0,AL.resolveIsNonFungible)(t,i,a,r,!1)&&(i.edition.value=(0,rk.findMasterEditionPda)(t,{mint:(0,f1.expectPublicKey)(i.mint.value)})),i.tokenRecord.value||a.tokenStandard===ak.TokenStandard.ProgrammableNonFungible&&(i.tokenRecord.value=(0,rk.findTokenRecordPda)(t,{mint:(0,f1.expectPublicKey)(i.mint.value),token:(0,f1.expectPublicKey)(i.token.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,ik.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.splTokenProgram.value||a.tokenStandard!==ak.TokenStandard.ProgrammableNonFungible&&(i.splTokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.splTokenProgram.isWritable=!1),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,f1.getAccountMetasAndSigners)(s,"programId",r),d=_L().serialize(a),u=0;return(0,ik.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(che,"unlockV1");rp.unlockV1=che});var PL=v(ip=>{"use strict";Object.defineProperty(ip,"__esModule",{value:!0});ip.unverifyCollection=ip.getUnverifyCollectionInstructionDataSerializer=void 0;var phe=K(),nk=V(),mhe=ee();function EL(){return(0,nk.mapSerializer)((0,nk.struct)([["discriminator",(0,nk.u8)()]],{description:"UnverifyCollectionInstructionData"}),t=>({...t,discriminator:22}))}n(EL,"getUnverifyCollectionInstructionDataSerializer");ip.getUnverifyCollectionInstructionDataSerializer=EL;function fhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},collectionAuthority:{index:1,isWritable:!0,value:e.collectionAuthority??null},collectionMint:{index:2,isWritable:!1,value:e.collectionMint??null},collection:{index:3,isWritable:!1,value:e.collection??null},collectionMasterEditionAccount:{index:4,isWritable:!1,value:e.collectionMasterEditionAccount??null},collectionAuthorityRecord:{index:5,isWritable:!1,value:e.collectionAuthorityRecord??null}},a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,mhe.getAccountMetasAndSigners)(a,"omitted",r),l=EL().serialize({}),d=0;return(0,phe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(fhe,"unverifyCollection");ip.unverifyCollection=fhe});var ML=v(ap=>{"use strict";Object.defineProperty(ap,"__esModule",{value:!0});ap.unverifyCollectionV1=ap.getUnverifyCollectionV1InstructionDataSerializer=void 0;var TL=K(),h9=V(),hhe=ue(),zL=ee();function IL(){return(0,h9.mapSerializer)((0,h9.struct)([["discriminator",(0,h9.u8)()],["unverifyCollectionV1Discriminator",(0,h9.u8)()]],{description:"UnverifyCollectionV1InstructionData"}),t=>({...t,discriminator:53,unverifyCollectionV1Discriminator:1}))}n(IL,"getUnverifyCollectionV1InstructionDataSerializer");ap.getUnverifyCollectionV1InstructionDataSerializer=IL;function ghe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},collectionMint:{index:3,isWritable:!1,value:e.collectionMint??null},collectionMetadata:{index:4,isWritable:!0,value:e.collectionMetadata??null},systemProgram:{index:5,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:6,isWritable:!1,value:e.sysvarInstructions??null}};i.authority.value||(i.authority.value=t.identity),i.collectionMetadata.value||(i.collectionMetadata.value=(0,hhe.findMetadataPda)(t,{mint:(0,zL.expectPublicKey)(i.collectionMint.value)})),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,TL.publicKey)("Sysvar1nstructions1111111111111111111111111"));let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,zL.getAccountMetasAndSigners)(a,"programId",r),l=IL().serialize({}),d=0;return(0,TL.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(ghe,"unverifyCollectionV1");ap.unverifyCollectionV1=ghe});var BL=v(np=>{"use strict";Object.defineProperty(np,"__esModule",{value:!0});np.unverifyCreatorV1=np.getUnverifyCreatorV1InstructionDataSerializer=void 0;var DL=K(),g9=V(),yhe=ee();function RL(){return(0,g9.mapSerializer)((0,g9.struct)([["discriminator",(0,g9.u8)()],["unverifyCreatorV1Discriminator",(0,g9.u8)()]],{description:"UnverifyCreatorV1InstructionData"}),t=>({...t,discriminator:53,unverifyCreatorV1Discriminator:0}))}n(RL,"getUnverifyCreatorV1InstructionDataSerializer");np.getUnverifyCreatorV1InstructionDataSerializer=RL;function bhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},collectionMint:{index:3,isWritable:!1,value:e.collectionMint??null},collectionMetadata:{index:4,isWritable:!0,value:e.collectionMetadata??null},systemProgram:{index:5,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:6,isWritable:!1,value:e.sysvarInstructions??null}};i.authority.value||(i.authority.value=t.identity),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,DL.publicKey)("Sysvar1nstructions1111111111111111111111111"));let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,yhe.getAccountMetasAndSigners)(a,"programId",r),l=RL().serialize({}),d=0;return(0,DL.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(bhe,"unverifyCreatorV1");np.unverifyCreatorV1=bhe});var OL=v(sp=>{"use strict";Object.defineProperty(sp,"__esModule",{value:!0});sp.unverifySizedCollectionItem=sp.getUnverifySizedCollectionItemInstructionDataSerializer=void 0;var vhe=K(),sk=V(),She=ee();function CL(){return(0,sk.mapSerializer)((0,sk.struct)([["discriminator",(0,sk.u8)()]],{description:"UnverifySizedCollectionItemInstructionData"}),t=>({...t,discriminator:31}))}n(CL,"getUnverifySizedCollectionItemInstructionDataSerializer");sp.getUnverifySizedCollectionItemInstructionDataSerializer=CL;function whe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},collectionAuthority:{index:1,isWritable:!1,value:e.collectionAuthority??null},payer:{index:2,isWritable:!0,value:e.payer??null},collectionMint:{index:3,isWritable:!1,value:e.collectionMint??null},collection:{index:4,isWritable:!0,value:e.collection??null},collectionMasterEditionAccount:{index:5,isWritable:!1,value:e.collectionMasterEditionAccount??null},collectionAuthorityRecord:{index:6,isWritable:!1,value:e.collectionAuthorityRecord??null}};i.payer.value||(i.payer.value=t.payer);let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,She.getAccountMetasAndSigners)(a,"omitted",r),l=CL().serialize({}),d=0;return(0,vhe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(whe,"unverifySizedCollectionItem");sp.unverifySizedCollectionItem=whe});var WL=v(op=>{"use strict";Object.defineProperty(op,"__esModule",{value:!0});op.updateAsAuthorityItemDelegateV2=op.getUpdateAsAuthorityItemDelegateV2InstructionDataSerializer=void 0;var h1=K(),ya=V(),NL=ue(),l4=ee(),ok=ae();function qL(){return(0,ya.mapSerializer)((0,ya.struct)([["discriminator",(0,ya.u8)()],["updateAsAuthorityItemDelegateV2Discriminator",(0,ya.u8)()],["newUpdateAuthority",(0,ya.option)((0,ya.publicKey)())],["primarySaleHappened",(0,ya.option)((0,ya.bool)())],["isMutable",(0,ya.option)((0,ya.bool)())],["tokenStandard",(0,ya.option)((0,ok.getTokenStandardSerializer)())],["authorizationData",(0,ya.option)((0,ok.getAuthorizationDataSerializer)())]],{description:"UpdateAsAuthorityItemDelegateV2InstructionData"}),t=>({...t,discriminator:50,updateAsAuthorityItemDelegateV2Discriminator:2,newUpdateAuthority:t.newUpdateAuthority??(0,h1.none)(),primarySaleHappened:t.primarySaleHappened??(0,h1.none)(),isMutable:t.isMutable??(0,h1.none)(),tokenStandard:t.tokenStandard??(0,h1.none)(),authorizationData:t.authorizationData??(0,h1.none)()}))}n(qL,"getUpdateAsAuthorityItemDelegateV2InstructionDataSerializer");op.getUpdateAsAuthorityItemDelegateV2InstructionDataSerializer=qL;function xhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},token:{index:2,isWritable:!1,value:e.token??null},mint:{index:3,isWritable:!1,value:e.mint??null},metadata:{index:4,isWritable:!0,value:e.metadata??null},edition:{index:5,isWritable:!1,value:e.edition??null},payer:{index:6,isWritable:!0,value:e.payer??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:8,isWritable:!1,value:e.sysvarInstructions??null},authorizationRulesProgram:{index:9,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:10,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=t.identity.publicKey),i.delegateRecord.value||(i.delegateRecord.value=(0,NL.findMetadataDelegateRecordPda)(t,{mint:(0,l4.expectPublicKey)(i.mint.value),delegateRole:ok.MetadataDelegateRole.AuthorityItem,updateAuthority:(0,l4.expectSome)(a.updateAuthority),delegate:(0,l4.expectPublicKey)(i.authority.value)})),i.metadata.value||(i.metadata.value=(0,NL.findMetadataPda)(t,{mint:(0,l4.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,h1.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,l4.getAccountMetasAndSigners)(s,"programId",r),d=qL().serialize(a),u=0;return(0,h1.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(xhe,"updateAsAuthorityItemDelegateV2");op.updateAsAuthorityItemDelegateV2=xhe});var KL=v(dp=>{"use strict";Object.defineProperty(dp,"__esModule",{value:!0});dp.updateAsCollectionDelegateV2=dp.getUpdateAsCollectionDelegateV2InstructionDataSerializer=void 0;var lk=K(),d4=V(),VL=ue(),lp=ee(),y9=ae();function FL(){return(0,d4.mapSerializer)((0,d4.struct)([["discriminator",(0,d4.u8)()],["updateAsCollectionDelegateV2Discriminator",(0,d4.u8)()],["collection",(0,y9.getCollectionToggleSerializer)()],["authorizationData",(0,d4.option)((0,y9.getAuthorizationDataSerializer)())]],{description:"UpdateAsCollectionDelegateV2InstructionData"}),t=>({...t,discriminator:50,updateAsCollectionDelegateV2Discriminator:3,collection:t.collection??(0,y9.collectionToggle)("None"),authorizationData:t.authorizationData??(0,lk.none)()}))}n(FL,"getUpdateAsCollectionDelegateV2InstructionDataSerializer");dp.getUpdateAsCollectionDelegateV2InstructionDataSerializer=FL;function Ahe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},token:{index:2,isWritable:!1,value:e.token??null},mint:{index:3,isWritable:!1,value:e.mint??null},metadata:{index:4,isWritable:!0,value:e.metadata??null},edition:{index:5,isWritable:!1,value:e.edition??null},payer:{index:6,isWritable:!0,value:e.payer??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:8,isWritable:!1,value:e.sysvarInstructions??null},authorizationRulesProgram:{index:9,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:10,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.delegateMint||(a.delegateMint=(0,lp.expectPublicKey)(i.mint.value)),a.delegateUpdateAuthority||(a.delegateUpdateAuthority=t.identity.publicKey),i.delegateRecord.value||(i.delegateRecord.value=(0,VL.findMetadataDelegateRecordPda)(t,{mint:(0,lp.expectSome)(a.delegateMint),delegateRole:y9.MetadataDelegateRole.Collection,updateAuthority:(0,lp.expectSome)(a.delegateUpdateAuthority),delegate:(0,lp.expectPublicKey)(i.authority.value)})),i.metadata.value||(i.metadata.value=(0,VL.findMetadataPda)(t,{mint:(0,lp.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,lk.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,lp.getAccountMetasAndSigners)(s,"programId",r),d=FL().serialize(a),u=0;return(0,lk.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Ahe,"updateAsCollectionDelegateV2");dp.updateAsCollectionDelegateV2=Ahe});var jL=v(up=>{"use strict";Object.defineProperty(up,"__esModule",{value:!0});up.updateAsCollectionItemDelegateV2=up.getUpdateAsCollectionItemDelegateV2InstructionDataSerializer=void 0;var dk=K(),u4=V(),LL=ue(),c4=ee(),b9=ae();function UL(){return(0,u4.mapSerializer)((0,u4.struct)([["discriminator",(0,u4.u8)()],["updateAsCollectionItemDelegateV2Discriminator",(0,u4.u8)()],["collection",(0,b9.getCollectionToggleSerializer)()],["authorizationData",(0,u4.option)((0,b9.getAuthorizationDataSerializer)())]],{description:"UpdateAsCollectionItemDelegateV2InstructionData"}),t=>({...t,discriminator:50,updateAsCollectionItemDelegateV2Discriminator:7,collection:t.collection??(0,b9.collectionToggle)("None"),authorizationData:t.authorizationData??(0,dk.none)()}))}n(UL,"getUpdateAsCollectionItemDelegateV2InstructionDataSerializer");up.getUpdateAsCollectionItemDelegateV2InstructionDataSerializer=UL;function _he(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},token:{index:2,isWritable:!1,value:e.token??null},mint:{index:3,isWritable:!1,value:e.mint??null},metadata:{index:4,isWritable:!0,value:e.metadata??null},edition:{index:5,isWritable:!1,value:e.edition??null},payer:{index:6,isWritable:!0,value:e.payer??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:8,isWritable:!1,value:e.sysvarInstructions??null},authorizationRulesProgram:{index:9,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:10,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=t.identity.publicKey),i.delegateRecord.value||(i.delegateRecord.value=(0,LL.findMetadataDelegateRecordPda)(t,{mint:(0,c4.expectPublicKey)(i.mint.value),delegateRole:b9.MetadataDelegateRole.CollectionItem,updateAuthority:(0,c4.expectSome)(a.updateAuthority),delegate:(0,c4.expectPublicKey)(i.authority.value)})),i.metadata.value||(i.metadata.value=(0,LL.findMetadataPda)(t,{mint:(0,c4.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,dk.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,c4.getAccountMetasAndSigners)(s,"programId",r),d=UL().serialize(a),u=0;return(0,dk.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(_he,"updateAsCollectionItemDelegateV2");up.updateAsCollectionItemDelegateV2=_he});var GL=v(mp=>{"use strict";Object.defineProperty(mp,"__esModule",{value:!0});mp.updateAsDataDelegateV2=mp.getUpdateAsDataDelegateV2InstructionDataSerializer=void 0;var v9=K(),cp=V(),HL=ue(),pp=ee(),uk=ae();function $L(){return(0,cp.mapSerializer)((0,cp.struct)([["discriminator",(0,cp.u8)()],["updateAsDataDelegateV2Discriminator",(0,cp.u8)()],["data",(0,cp.option)((0,uk.getDataSerializer)())],["authorizationData",(0,cp.option)((0,uk.getAuthorizationDataSerializer)())]],{description:"UpdateAsDataDelegateV2InstructionData"}),t=>({...t,discriminator:50,updateAsDataDelegateV2Discriminator:4,data:t.data??(0,v9.none)(),authorizationData:t.authorizationData??(0,v9.none)()}))}n($L,"getUpdateAsDataDelegateV2InstructionDataSerializer");mp.getUpdateAsDataDelegateV2InstructionDataSerializer=$L;function khe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},token:{index:2,isWritable:!1,value:e.token??null},mint:{index:3,isWritable:!1,value:e.mint??null},metadata:{index:4,isWritable:!0,value:e.metadata??null},edition:{index:5,isWritable:!1,value:e.edition??null},payer:{index:6,isWritable:!0,value:e.payer??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:8,isWritable:!1,value:e.sysvarInstructions??null},authorizationRulesProgram:{index:9,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:10,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.delegateMint||(a.delegateMint=(0,pp.expectPublicKey)(i.mint.value)),a.delegateUpdateAuthority||(a.delegateUpdateAuthority=t.identity.publicKey),i.delegateRecord.value||(i.delegateRecord.value=(0,HL.findMetadataDelegateRecordPda)(t,{mint:(0,pp.expectSome)(a.delegateMint),delegateRole:uk.MetadataDelegateRole.Data,updateAuthority:(0,pp.expectSome)(a.delegateUpdateAuthority),delegate:(0,pp.expectPublicKey)(i.authority.value)})),i.metadata.value||(i.metadata.value=(0,HL.findMetadataPda)(t,{mint:(0,pp.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,v9.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,pp.getAccountMetasAndSigners)(s,"programId",r),d=$L().serialize(a),u=0;return(0,v9.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(khe,"updateAsDataDelegateV2");mp.updateAsDataDelegateV2=khe});var YL=v(hp=>{"use strict";Object.defineProperty(hp,"__esModule",{value:!0});hp.updateAsDataItemDelegateV2=hp.getUpdateAsDataItemDelegateV2InstructionDataSerializer=void 0;var S9=K(),fp=V(),ZL=ue(),p4=ee(),ck=ae();function JL(){return(0,fp.mapSerializer)((0,fp.struct)([["discriminator",(0,fp.u8)()],["updateAsDataItemDelegateV2Discriminator",(0,fp.u8)()],["data",(0,fp.option)((0,ck.getDataSerializer)())],["authorizationData",(0,fp.option)((0,ck.getAuthorizationDataSerializer)())]],{description:"UpdateAsDataItemDelegateV2InstructionData"}),t=>({...t,discriminator:50,updateAsDataItemDelegateV2Discriminator:6,data:t.data??(0,S9.none)(),authorizationData:t.authorizationData??(0,S9.none)()}))}n(JL,"getUpdateAsDataItemDelegateV2InstructionDataSerializer");hp.getUpdateAsDataItemDelegateV2InstructionDataSerializer=JL;function Ehe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},token:{index:2,isWritable:!1,value:e.token??null},mint:{index:3,isWritable:!1,value:e.mint??null},metadata:{index:4,isWritable:!0,value:e.metadata??null},edition:{index:5,isWritable:!1,value:e.edition??null},payer:{index:6,isWritable:!0,value:e.payer??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:8,isWritable:!1,value:e.sysvarInstructions??null},authorizationRulesProgram:{index:9,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:10,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=t.identity.publicKey),i.delegateRecord.value||(i.delegateRecord.value=(0,ZL.findMetadataDelegateRecordPda)(t,{mint:(0,p4.expectPublicKey)(i.mint.value),delegateRole:ck.MetadataDelegateRole.DataItem,updateAuthority:(0,p4.expectSome)(a.updateAuthority),delegate:(0,p4.expectPublicKey)(i.authority.value)})),i.metadata.value||(i.metadata.value=(0,ZL.findMetadataPda)(t,{mint:(0,p4.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,S9.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,p4.getAccountMetasAndSigners)(s,"programId",r),d=JL().serialize(a),u=0;return(0,S9.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Ehe,"updateAsDataItemDelegateV2");hp.updateAsDataItemDelegateV2=Ehe});var eU=v(yp=>{"use strict";Object.defineProperty(yp,"__esModule",{value:!0});yp.updateAsProgrammableConfigDelegateV2=yp.getUpdateAsProgrammableConfigDelegateV2InstructionDataSerializer=void 0;var pk=K(),m4=V(),QL=ue(),gp=ee(),w9=ae();function XL(){return(0,m4.mapSerializer)((0,m4.struct)([["discriminator",(0,m4.u8)()],["updateAsProgrammableConfigDelegateV2Discriminator",(0,m4.u8)()],["ruleSet",(0,w9.getRuleSetToggleSerializer)()],["authorizationData",(0,m4.option)((0,w9.getAuthorizationDataSerializer)())]],{description:"UpdateAsProgrammableConfigDelegateV2InstructionData"}),t=>({...t,discriminator:50,updateAsProgrammableConfigDelegateV2Discriminator:5,ruleSet:t.ruleSet??(0,w9.ruleSetToggle)("None"),authorizationData:t.authorizationData??(0,pk.none)()}))}n(XL,"getUpdateAsProgrammableConfigDelegateV2InstructionDataSerializer");yp.getUpdateAsProgrammableConfigDelegateV2InstructionDataSerializer=XL;function Phe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},token:{index:2,isWritable:!1,value:e.token??null},mint:{index:3,isWritable:!1,value:e.mint??null},metadata:{index:4,isWritable:!0,value:e.metadata??null},edition:{index:5,isWritable:!1,value:e.edition??null},payer:{index:6,isWritable:!0,value:e.payer??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:8,isWritable:!1,value:e.sysvarInstructions??null},authorizationRulesProgram:{index:9,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:10,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.delegateMint||(a.delegateMint=(0,gp.expectPublicKey)(i.mint.value)),a.delegateUpdateAuthority||(a.delegateUpdateAuthority=t.identity.publicKey),i.delegateRecord.value||(i.delegateRecord.value=(0,QL.findMetadataDelegateRecordPda)(t,{mint:(0,gp.expectSome)(a.delegateMint),delegateRole:w9.MetadataDelegateRole.ProgrammableConfig,updateAuthority:(0,gp.expectSome)(a.delegateUpdateAuthority),delegate:(0,gp.expectPublicKey)(i.authority.value)})),i.metadata.value||(i.metadata.value=(0,QL.findMetadataPda)(t,{mint:(0,gp.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,pk.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,gp.getAccountMetasAndSigners)(s,"programId",r),d=XL().serialize(a),u=0;return(0,pk.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Phe,"updateAsProgrammableConfigDelegateV2");yp.updateAsProgrammableConfigDelegateV2=Phe});var iU=v(bp=>{"use strict";Object.defineProperty(bp,"__esModule",{value:!0});bp.updateAsProgrammableConfigItemDelegateV2=bp.getUpdateAsProgrammableConfigItemDelegateV2InstructionDataSerializer=void 0;var mk=K(),f4=V(),tU=ue(),h4=ee(),x9=ae();function rU(){return(0,f4.mapSerializer)((0,f4.struct)([["discriminator",(0,f4.u8)()],["updateAsProgrammableConfigItemDelegateV2Discriminator",(0,f4.u8)()],["ruleSet",(0,x9.getRuleSetToggleSerializer)()],["authorizationData",(0,f4.option)((0,x9.getAuthorizationDataSerializer)())]],{description:"UpdateAsProgrammableConfigItemDelegateV2InstructionData"}),t=>({...t,discriminator:50,updateAsProgrammableConfigItemDelegateV2Discriminator:8,ruleSet:t.ruleSet??(0,x9.ruleSetToggle)("None"),authorizationData:t.authorizationData??(0,mk.none)()}))}n(rU,"getUpdateAsProgrammableConfigItemDelegateV2InstructionDataSerializer");bp.getUpdateAsProgrammableConfigItemDelegateV2InstructionDataSerializer=rU;function The(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},token:{index:2,isWritable:!1,value:e.token??null},mint:{index:3,isWritable:!1,value:e.mint??null},metadata:{index:4,isWritable:!0,value:e.metadata??null},edition:{index:5,isWritable:!1,value:e.edition??null},payer:{index:6,isWritable:!0,value:e.payer??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:8,isWritable:!1,value:e.sysvarInstructions??null},authorizationRulesProgram:{index:9,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:10,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),a.updateAuthority||(a.updateAuthority=t.identity.publicKey),i.delegateRecord.value||(i.delegateRecord.value=(0,tU.findMetadataDelegateRecordPda)(t,{mint:(0,h4.expectPublicKey)(i.mint.value),delegateRole:x9.MetadataDelegateRole.ProgrammableConfigItem,updateAuthority:(0,h4.expectSome)(a.updateAuthority),delegate:(0,h4.expectPublicKey)(i.authority.value)})),i.metadata.value||(i.metadata.value=(0,tU.findMetadataPda)(t,{mint:(0,h4.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,mk.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,h4.getAccountMetasAndSigners)(s,"programId",r),d=rU().serialize(a),u=0;return(0,mk.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(The,"updateAsProgrammableConfigItemDelegateV2");bp.updateAsProgrammableConfigItemDelegateV2=The});var sU=v(vp=>{"use strict";Object.defineProperty(vp,"__esModule",{value:!0});vp.updateAsUpdateAuthorityV2=vp.getUpdateAsUpdateAuthorityV2InstructionDataSerializer=void 0;var Go=K(),Ui=V(),zhe=ue(),aU=ee(),Ua=ae();function nU(){return(0,Ui.mapSerializer)((0,Ui.struct)([["discriminator",(0,Ui.u8)()],["updateAsUpdateAuthorityV2Discriminator",(0,Ui.u8)()],["newUpdateAuthority",(0,Ui.option)((0,Ui.publicKey)())],["data",(0,Ui.option)((0,Ua.getDataSerializer)())],["primarySaleHappened",(0,Ui.option)((0,Ui.bool)())],["isMutable",(0,Ui.option)((0,Ui.bool)())],["collection",(0,Ua.getCollectionToggleSerializer)()],["collectionDetails",(0,Ua.getCollectionDetailsToggleSerializer)()],["uses",(0,Ua.getUsesToggleSerializer)()],["ruleSet",(0,Ua.getRuleSetToggleSerializer)()],["tokenStandard",(0,Ui.option)((0,Ua.getTokenStandardSerializer)())],["authorizationData",(0,Ui.option)((0,Ua.getAuthorizationDataSerializer)())]],{description:"UpdateAsUpdateAuthorityV2InstructionData"}),t=>({...t,discriminator:50,updateAsUpdateAuthorityV2Discriminator:1,newUpdateAuthority:t.newUpdateAuthority??(0,Go.none)(),data:t.data??(0,Go.none)(),primarySaleHappened:t.primarySaleHappened??(0,Go.none)(),isMutable:t.isMutable??(0,Go.none)(),collection:t.collection??(0,Ua.collectionToggle)("None"),collectionDetails:t.collectionDetails??(0,Ua.collectionDetailsToggle)("None"),uses:t.uses??(0,Ua.usesToggle)("None"),ruleSet:t.ruleSet??(0,Ua.ruleSetToggle)("None"),tokenStandard:t.tokenStandard??(0,Go.none)(),authorizationData:t.authorizationData??(0,Go.none)()}))}n(nU,"getUpdateAsUpdateAuthorityV2InstructionDataSerializer");vp.getUpdateAsUpdateAuthorityV2InstructionDataSerializer=nU;function Ihe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},token:{index:2,isWritable:!1,value:e.token??null},mint:{index:3,isWritable:!1,value:e.mint??null},metadata:{index:4,isWritable:!0,value:e.metadata??null},edition:{index:5,isWritable:!1,value:e.edition??null},payer:{index:6,isWritable:!0,value:e.payer??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:8,isWritable:!1,value:e.sysvarInstructions??null},authorizationRulesProgram:{index:9,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:10,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),i.metadata.value||(i.metadata.value=(0,zhe.findMetadataPda)(t,{mint:(0,aU.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,Go.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,aU.getAccountMetasAndSigners)(s,"programId",r),d=nU().serialize(a),u=0;return(0,Go.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Ihe,"updateAsUpdateAuthorityV2");vp.updateAsUpdateAuthorityV2=Ihe});var lU=v(Sp=>{"use strict";Object.defineProperty(Sp,"__esModule",{value:!0});Sp.updateMetadataAccountV2=Sp.getUpdateMetadataAccountV2InstructionDataSerializer=void 0;var g4=K(),xn=V(),Mhe=ee(),Dhe=ae();function oU(){return(0,xn.mapSerializer)((0,xn.struct)([["discriminator",(0,xn.u8)()],["data",(0,xn.option)((0,Dhe.getDataV2Serializer)())],["newUpdateAuthority",(0,xn.option)((0,xn.publicKey)())],["primarySaleHappened",(0,xn.option)((0,xn.bool)())],["isMutable",(0,xn.option)((0,xn.bool)())]],{description:"UpdateMetadataAccountV2InstructionData"}),t=>({...t,discriminator:15,data:t.data??(0,g4.none)(),newUpdateAuthority:t.newUpdateAuthority??(0,g4.none)(),primarySaleHappened:t.primarySaleHappened??(0,g4.none)(),isMutable:t.isMutable??(0,g4.none)()}))}n(oU,"getUpdateMetadataAccountV2InstructionDataSerializer");Sp.getUpdateMetadataAccountV2InstructionDataSerializer=oU;function Rhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},updateAuthority:{index:1,isWritable:!1,value:e.updateAuthority??null}},a={...e};i.updateAuthority.value||(i.updateAuthority.value=t.identity);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,Mhe.getAccountMetasAndSigners)(s,"programId",r),d=oU().serialize(a),u=0;return(0,g4.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Rhe,"updateMetadataAccountV2");Sp.updateMetadataAccountV2=Rhe});var uU=v(wp=>{"use strict";Object.defineProperty(wp,"__esModule",{value:!0});wp.updatePrimarySaleHappenedViaToken=wp.getUpdatePrimarySaleHappenedViaTokenInstructionDataSerializer=void 0;var Bhe=K(),fk=V(),Che=ee();function dU(){return(0,fk.mapSerializer)((0,fk.struct)([["discriminator",(0,fk.u8)()]],{description:"UpdatePrimarySaleHappenedViaTokenInstructionData"}),t=>({...t,discriminator:4}))}n(dU,"getUpdatePrimarySaleHappenedViaTokenInstructionDataSerializer");wp.getUpdatePrimarySaleHappenedViaTokenInstructionDataSerializer=dU;function Ohe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},owner:{index:1,isWritable:!1,value:e.owner??null},token:{index:2,isWritable:!1,value:e.token??null}},a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Che.getAccountMetasAndSigners)(a,"programId",r),l=dU().serialize({}),d=0;return(0,Bhe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(Ohe,"updatePrimarySaleHappenedViaToken");wp.updatePrimarySaleHappenedViaToken=Ohe});var mU=v(xp=>{"use strict";Object.defineProperty(xp,"__esModule",{value:!0});xp.updateV1=xp.getUpdateV1InstructionDataSerializer=void 0;var g1=K(),ba=V(),Nhe=ue(),cU=ee(),An=ae();function pU(){return(0,ba.mapSerializer)((0,ba.struct)([["discriminator",(0,ba.u8)()],["updateV1Discriminator",(0,ba.u8)()],["newUpdateAuthority",(0,ba.option)((0,ba.publicKey)())],["data",(0,ba.option)((0,An.getDataSerializer)())],["primarySaleHappened",(0,ba.option)((0,ba.bool)())],["isMutable",(0,ba.option)((0,ba.bool)())],["collection",(0,An.getCollectionToggleSerializer)()],["collectionDetails",(0,An.getCollectionDetailsToggleSerializer)()],["uses",(0,An.getUsesToggleSerializer)()],["ruleSet",(0,An.getRuleSetToggleSerializer)()],["authorizationData",(0,ba.option)((0,An.getAuthorizationDataSerializer)())]],{description:"UpdateV1InstructionData"}),t=>({...t,discriminator:50,updateV1Discriminator:0,newUpdateAuthority:t.newUpdateAuthority??(0,g1.none)(),data:t.data??(0,g1.none)(),primarySaleHappened:t.primarySaleHappened??(0,g1.none)(),isMutable:t.isMutable??(0,g1.none)(),collection:t.collection??(0,An.collectionToggle)("None"),collectionDetails:t.collectionDetails??(0,An.collectionDetailsToggle)("None"),uses:t.uses??(0,An.usesToggle)("None"),ruleSet:t.ruleSet??(0,An.ruleSetToggle)("None"),authorizationData:t.authorizationData??(0,g1.none)()}))}n(pU,"getUpdateV1InstructionDataSerializer");xp.getUpdateV1InstructionDataSerializer=pU;function qhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},token:{index:2,isWritable:!1,value:e.token??null},mint:{index:3,isWritable:!1,value:e.mint??null},metadata:{index:4,isWritable:!0,value:e.metadata??null},edition:{index:5,isWritable:!1,value:e.edition??null},payer:{index:6,isWritable:!0,value:e.payer??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:8,isWritable:!1,value:e.sysvarInstructions??null},authorizationRulesProgram:{index:9,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:10,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),i.metadata.value||(i.metadata.value=(0,Nhe.findMetadataPda)(t,{mint:(0,cU.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,g1.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,cU.getAccountMetasAndSigners)(s,"programId",r),d=pU().serialize(a),u=0;return(0,g1.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(qhe,"updateV1");xp.updateV1=qhe});var gU=v(Ap=>{"use strict";Object.defineProperty(Ap,"__esModule",{value:!0});Ap.useV1=Ap.getUseV1InstructionDataSerializer=void 0;var hk=K(),y4=V(),Whe=ue(),fU=ee(),Vhe=ae();function hU(){return(0,y4.mapSerializer)((0,y4.struct)([["discriminator",(0,y4.u8)()],["useV1Discriminator",(0,y4.u8)()],["authorizationData",(0,y4.option)((0,Vhe.getAuthorizationDataSerializer)())]],{description:"UseV1InstructionData"}),t=>({...t,discriminator:51,useV1Discriminator:0,authorizationData:t.authorizationData??(0,hk.none)()}))}n(hU,"getUseV1InstructionDataSerializer");Ap.getUseV1InstructionDataSerializer=hU;function Fhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!0,value:e.delegateRecord??null},token:{index:2,isWritable:!0,value:e.token??null},mint:{index:3,isWritable:!1,value:e.mint??null},metadata:{index:4,isWritable:!0,value:e.metadata??null},edition:{index:5,isWritable:!0,value:e.edition??null},payer:{index:6,isWritable:!1,value:e.payer??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:8,isWritable:!1,value:e.sysvarInstructions??null},splTokenProgram:{index:9,isWritable:!1,value:e.splTokenProgram??null},authorizationRulesProgram:{index:10,isWritable:!1,value:e.authorizationRulesProgram??null},authorizationRules:{index:11,isWritable:!1,value:e.authorizationRules??null}},a={...e};i.authority.value||(i.authority.value=t.identity),i.metadata.value||(i.metadata.value=(0,Whe.findMetadataPda)(t,{mint:(0,fU.expectPublicKey)(i.mint.value)})),i.payer.value||(i.payer.value=t.payer),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,hk.publicKey)("Sysvar1nstructions1111111111111111111111111")),i.authorizationRulesProgram.value||i.authorizationRules.value&&(i.authorizationRulesProgram.value=t.programs.getPublicKey("mplTokenAuthRules","auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg"),i.authorizationRulesProgram.isWritable=!1);let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,fU.getAccountMetasAndSigners)(s,"programId",r),d=hU().serialize(a),u=0;return(0,hk.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Fhe,"useV1");Ap.useV1=Fhe});var SU=v(_p=>{"use strict";Object.defineProperty(_p,"__esModule",{value:!0});_p.utilize=_p.getUtilizeInstructionDataSerializer=void 0;var yU=K(),A9=V(),Khe=ue(),bU=ee();function vU(){return(0,A9.mapSerializer)((0,A9.struct)([["discriminator",(0,A9.u8)()],["numberOfUses",(0,A9.u64)()]],{description:"UtilizeInstructionData"}),t=>({...t,discriminator:19}))}n(vU,"getUtilizeInstructionDataSerializer");_p.getUtilizeInstructionDataSerializer=vU;function Lhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},tokenAccount:{index:1,isWritable:!0,value:e.tokenAccount??null},mint:{index:2,isWritable:!0,value:e.mint??null},useAuthority:{index:3,isWritable:!0,value:e.useAuthority??null},owner:{index:4,isWritable:!1,value:e.owner??null},tokenProgram:{index:5,isWritable:!1,value:e.tokenProgram??null},ataProgram:{index:6,isWritable:!1,value:e.ataProgram??null},systemProgram:{index:7,isWritable:!1,value:e.systemProgram??null},rent:{index:8,isWritable:!1,value:e.rent??null},useAuthorityRecord:{index:9,isWritable:!0,value:e.useAuthorityRecord??null},burner:{index:10,isWritable:!1,value:e.burner??null}},a={...e};i.metadata.value||(i.metadata.value=(0,Khe.findMetadataPda)(t,{mint:(0,bU.expectPublicKey)(i.mint.value)})),i.tokenProgram.value||(i.tokenProgram.value=t.programs.getPublicKey("splToken","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),i.tokenProgram.isWritable=!1),i.ataProgram.value||(i.ataProgram.value=t.programs.getPublicKey("splAssociatedToken","ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"),i.ataProgram.isWritable=!1),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.rent.value||(i.rent.value=(0,yU.publicKey)("SysvarRent111111111111111111111111111111111"));let s=Object.values(i).sort((c,p)=>c.index-p.index),[o,l]=(0,bU.getAccountMetasAndSigners)(s,"omitted",r),d=vU().serialize(a),u=0;return(0,yU.transactionBuilder)([{instruction:{keys:o,programId:r,data:d},signers:l,bytesCreatedOnChain:u}])}n(Lhe,"utilize");_p.utilize=Lhe});var xU=v(kp=>{"use strict";Object.defineProperty(kp,"__esModule",{value:!0});kp.verifyCollection=kp.getVerifyCollectionInstructionDataSerializer=void 0;var Uhe=K(),gk=V(),jhe=ee();function wU(){return(0,gk.mapSerializer)((0,gk.struct)([["discriminator",(0,gk.u8)()]],{description:"VerifyCollectionInstructionData"}),t=>({...t,discriminator:18}))}n(wU,"getVerifyCollectionInstructionDataSerializer");kp.getVerifyCollectionInstructionDataSerializer=wU;function Hhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},collectionAuthority:{index:1,isWritable:!0,value:e.collectionAuthority??null},payer:{index:2,isWritable:!0,value:e.payer??null},collectionMint:{index:3,isWritable:!1,value:e.collectionMint??null},collection:{index:4,isWritable:!1,value:e.collection??null},collectionMasterEditionAccount:{index:5,isWritable:!1,value:e.collectionMasterEditionAccount??null},collectionAuthorityRecord:{index:6,isWritable:!1,value:e.collectionAuthorityRecord??null}};i.payer.value||(i.payer.value=t.payer);let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,jhe.getAccountMetasAndSigners)(a,"omitted",r),l=wU().serialize({}),d=0;return(0,Uhe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(Hhe,"verifyCollection");kp.verifyCollection=Hhe});var EU=v(Ep=>{"use strict";Object.defineProperty(Ep,"__esModule",{value:!0});Ep.verifyCollectionV1=Ep.getVerifyCollectionV1InstructionDataSerializer=void 0;var AU=K(),_9=V(),_U=ue(),yk=ee();function kU(){return(0,_9.mapSerializer)((0,_9.struct)([["discriminator",(0,_9.u8)()],["verifyCollectionV1Discriminator",(0,_9.u8)()]],{description:"VerifyCollectionV1InstructionData"}),t=>({...t,discriminator:52,verifyCollectionV1Discriminator:1}))}n(kU,"getVerifyCollectionV1InstructionDataSerializer");Ep.getVerifyCollectionV1InstructionDataSerializer=kU;function $he(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},collectionMint:{index:3,isWritable:!1,value:e.collectionMint??null},collectionMetadata:{index:4,isWritable:!0,value:e.collectionMetadata??null},collectionMasterEdition:{index:5,isWritable:!1,value:e.collectionMasterEdition??null},systemProgram:{index:6,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:7,isWritable:!1,value:e.sysvarInstructions??null}};i.authority.value||(i.authority.value=t.identity),i.collectionMetadata.value||(i.collectionMetadata.value=(0,_U.findMetadataPda)(t,{mint:(0,yk.expectPublicKey)(i.collectionMint.value)})),i.collectionMasterEdition.value||(i.collectionMasterEdition.value=(0,_U.findMasterEditionPda)(t,{mint:(0,yk.expectPublicKey)(i.collectionMint.value)})),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,AU.publicKey)("Sysvar1nstructions1111111111111111111111111"));let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,yk.getAccountMetasAndSigners)(a,"programId",r),l=kU().serialize({}),d=0;return(0,AU.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n($he,"verifyCollectionV1");Ep.verifyCollectionV1=$he});var zU=v(Pp=>{"use strict";Object.defineProperty(Pp,"__esModule",{value:!0});Pp.verifyCreatorV1=Pp.getVerifyCreatorV1InstructionDataSerializer=void 0;var PU=K(),k9=V(),Ghe=ee();function TU(){return(0,k9.mapSerializer)((0,k9.struct)([["discriminator",(0,k9.u8)()],["verifyCreatorV1Discriminator",(0,k9.u8)()]],{description:"VerifyCreatorV1InstructionData"}),t=>({...t,discriminator:52,verifyCreatorV1Discriminator:0}))}n(TU,"getVerifyCreatorV1InstructionDataSerializer");Pp.getVerifyCreatorV1InstructionDataSerializer=TU;function Zhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={authority:{index:0,isWritable:!1,value:e.authority??null},delegateRecord:{index:1,isWritable:!1,value:e.delegateRecord??null},metadata:{index:2,isWritable:!0,value:e.metadata??null},collectionMint:{index:3,isWritable:!1,value:e.collectionMint??null},collectionMetadata:{index:4,isWritable:!0,value:e.collectionMetadata??null},collectionMasterEdition:{index:5,isWritable:!1,value:e.collectionMasterEdition??null},systemProgram:{index:6,isWritable:!1,value:e.systemProgram??null},sysvarInstructions:{index:7,isWritable:!1,value:e.sysvarInstructions??null}};i.authority.value||(i.authority.value=t.identity),i.systemProgram.value||(i.systemProgram.value=t.programs.getPublicKey("splSystem","11111111111111111111111111111111"),i.systemProgram.isWritable=!1),i.sysvarInstructions.value||(i.sysvarInstructions.value=(0,PU.publicKey)("Sysvar1nstructions1111111111111111111111111"));let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Ghe.getAccountMetasAndSigners)(a,"programId",r),l=TU().serialize({}),d=0;return(0,PU.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(Zhe,"verifyCreatorV1");Pp.verifyCreatorV1=Zhe});var MU=v(Tp=>{"use strict";Object.defineProperty(Tp,"__esModule",{value:!0});Tp.verifySizedCollectionItem=Tp.getVerifySizedCollectionItemInstructionDataSerializer=void 0;var Jhe=K(),bk=V(),Yhe=ee();function IU(){return(0,bk.mapSerializer)((0,bk.struct)([["discriminator",(0,bk.u8)()]],{description:"VerifySizedCollectionItemInstructionData"}),t=>({...t,discriminator:30}))}n(IU,"getVerifySizedCollectionItemInstructionDataSerializer");Tp.getVerifySizedCollectionItemInstructionDataSerializer=IU;function Qhe(t,e){let r=t.programs.getPublicKey("mplTokenMetadata","metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),i={metadata:{index:0,isWritable:!0,value:e.metadata??null},collectionAuthority:{index:1,isWritable:!1,value:e.collectionAuthority??null},payer:{index:2,isWritable:!0,value:e.payer??null},collectionMint:{index:3,isWritable:!1,value:e.collectionMint??null},collection:{index:4,isWritable:!0,value:e.collection??null},collectionMasterEditionAccount:{index:5,isWritable:!1,value:e.collectionMasterEditionAccount??null},collectionAuthorityRecord:{index:6,isWritable:!1,value:e.collectionAuthorityRecord??null}};i.payer.value||(i.payer.value=t.payer);let a=Object.values(i).sort((u,c)=>u.index-c.index),[s,o]=(0,Yhe.getAccountMetasAndSigners)(a,"omitted",r),l=IU().serialize({}),d=0;return(0,Jhe.transactionBuilder)([{instruction:{keys:s,programId:r,data:l},signers:o,bytesCreatedOnChain:d}])}n(Qhe,"verifySizedCollectionItem");Tp.verifySizedCollectionItem=Qhe});var DU=v(X=>{"use strict";var Xhe=X&&X.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),te=X&&X.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Xhe(e,t,r)};Object.defineProperty(X,"__esModule",{value:!0});te(mV(),X);te(gV(),X);te(bV(),X);te(SV(),X);te(AV(),X);te(EV(),X);te(IV(),X);te(DV(),X);te(BV(),X);te(qV(),X);te(FV(),X);te(jV(),X);te(GV(),X);te(YV(),X);te(eF(),X);te(iF(),X);te(sF(),X);te(dF(),X);te(pF(),X);te(hF(),X);te(bF(),X);te(wF(),X);te(_F(),X);te(PF(),X);te(IF(),X);te(RF(),X);te(OF(),X);te(WF(),X);te(KF(),X);te(jF(),X);te($F(),X);te(ZF(),X);te(XF(),X);te(aK(),X);te(sK(),X);te(lK(),X);te(cK(),X);te(fK(),X);te(yK(),X);te(SK(),X);te(AK(),X);te(EK(),X);te(zK(),X);te(DK(),X);te(CK(),X);te(qK(),X);te(FK(),X);te(UK(),X);te($K(),X);te(JK(),X);te(XK(),X);te(rL(),X);te(aL(),X);te(sL(),X);te(lL(),X);te(cL(),X);te(mL(),X);te(gL(),X);te(vL(),X);te(xL(),X);te(kL(),X);te(PL(),X);te(ML(),X);te(BL(),X);te(OL(),X);te(WL(),X);te(KL(),X);te(jL(),X);te(GL(),X);te(YL(),X);te(eU(),X);te(iU(),X);te(sU(),X);te(lU(),X);te(uU(),X);te(mU(),X);te(gU(),X);te(SU(),X);te(xU(),X);te(EU(),X);te(zU(),X);te(MU(),X)});var BU=v(va=>{"use strict";Object.defineProperty(va,"__esModule",{value:!0});va.getMplTokenMetadataProgramId=va.getMplTokenMetadataProgram=va.createMplTokenMetadataProgram=va.MPL_TOKEN_METADATA_PROGRAM_ID=void 0;var RU=GA();va.MPL_TOKEN_METADATA_PROGRAM_ID="metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s";function e4e(){return{name:"mplTokenMetadata",publicKey:va.MPL_TOKEN_METADATA_PROGRAM_ID,getErrorFromCode(t,e){return(0,RU.getMplTokenMetadataErrorFromCode)(t,this,e)},getErrorFromName(t,e){return(0,RU.getMplTokenMetadataErrorFromName)(t,this,e)},isOnCluster(){return!0}}}n(e4e,"createMplTokenMetadataProgram");va.createMplTokenMetadataProgram=e4e;function t4e(t,e){return t.programs.get("mplTokenMetadata",e)}n(t4e,"getMplTokenMetadataProgram");va.getMplTokenMetadataProgram=t4e;function r4e(t,e){return t.programs.getPublicKey("mplTokenMetadata",va.MPL_TOKEN_METADATA_PROGRAM_ID,e)}n(r4e,"getMplTokenMetadataProgramId");va.getMplTokenMetadataProgramId=r4e});var CU=v(y1=>{"use strict";var i4e=y1&&y1.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),a4e=y1&&y1.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&i4e(e,t,r)};Object.defineProperty(y1,"__esModule",{value:!0});a4e(BU(),y1)});var zo=v(Sa=>{"use strict";var n4e=Sa&&Sa.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),zp=Sa&&Sa.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&n4e(e,t,r)};Object.defineProperty(Sa,"__esModule",{value:!0});zp(ue(),Sa);zp(GA(),Sa);zp(DU(),Sa);zp(CU(),Sa);zp(ee(),Sa);zp(ae(),Sa)});var NU=v(zi=>{"use strict";Object.defineProperty(zi,"__esModule",{value:!0});zi.createFungibleAsset=zi.createFungible=zi.createProgrammableNft=zi.createNft=zi.createAndMint=void 0;var OU=K(),Zo=zo(),s4e=n((t,e)=>(0,OU.transactionBuilder)().add((0,Zo.createV1)(t,e)).add((0,Zo.mintV1)(t,{...e,mint:(0,OU.publicKey)(e.mint)})),"createAndMint");zi.createAndMint=s4e;var o4e=n((t,e)=>(0,zi.createAndMint)(t,{...e,tokenStandard:Zo.TokenStandard.NonFungible,amount:1}),"createNft");zi.createNft=o4e;var l4e=n((t,e)=>(0,zi.createAndMint)(t,{...e,tokenStandard:Zo.TokenStandard.ProgrammableNonFungible,amount:1}),"createProgrammableNft");zi.createProgrammableNft=l4e;var d4e=n((t,e)=>(0,Zo.createV1)(t,{...e,tokenStandard:Zo.TokenStandard.Fungible}),"createFungible");zi.createFungible=d4e;var u4e=n((t,e)=>(0,Zo.createV1)(t,{...e,tokenStandard:Zo.TokenStandard.FungibleAsset}),"createFungibleAsset");zi.createFungibleAsset=u4e});var KU=v(pi=>{"use strict";Object.defineProperty(pi,"__esModule",{value:!0});pi.deserializeDigitalAssetWithToken=pi.fetchAllDigitalAssetWithTokenByMint=pi.fetchAllDigitalAssetWithTokenByOwnerAndMint=pi.fetchAllDigitalAssetWithTokenByOwner=pi.fetchDigitalAssetWithTokenByMint=pi.fetchDigitalAssetWithAssociatedToken=pi.fetchDigitalAssetWithToken=void 0;var Jo=K(),E9=kt(),qU=B5(),ja=zo();async function WU(t,e,r,i){let[a,s,o,l,d]=await t.rpc.getAccounts([e,(0,ja.findMetadataPda)(t,{mint:e})[0],(0,ja.findMasterEditionPda)(t,{mint:e})[0],r,(0,ja.findTokenRecordPda)(t,{mint:e,token:r})[0]],i);return(0,Jo.assertAccountExists)(a,"Mint"),(0,Jo.assertAccountExists)(s,"Metadata"),(0,Jo.assertAccountExists)(l,"Token"),vk(a,s,l,o.exists?o:void 0,d.exists?d:void 0)}n(WU,"fetchDigitalAssetWithToken");pi.fetchDigitalAssetWithToken=WU;async function c4e(t,e,r,i){let[a]=(0,E9.findAssociatedTokenPda)(t,{mint:e,owner:r});return WU(t,e,a,i)}n(c4e,"fetchDigitalAssetWithAssociatedToken");pi.fetchDigitalAssetWithAssociatedToken=c4e;async function p4e(t,e,r){let i=await FU(t,e,r);if(i.length===0)throw new Error("No valid token accounts found for the provided mint");if(i.length>1)throw new Error("Multiple valid token accounts found for the provided mintuse `fetchAllDigitalAssetWithTokenByMint` instead to retrieve them all.");return i[0]}n(p4e,"fetchDigitalAssetWithTokenByMint");pi.fetchDigitalAssetWithTokenByMint=p4e;async function VU(t,e,r){let i=await(0,E9.fetchAllTokenByOwner)(t,e,r),a=i.flatMap(o=>[o.mint,(0,ja.findMetadataPda)(t,{mint:o.mint})[0],(0,ja.findMasterEditionPda)(t,{mint:o.mint})[0],(0,ja.findTokenRecordPda)(t,{mint:o.mint,token:o.publicKey})[0]]),s=await t.rpc.getAccounts(a,r);return(0,Jo.zipMap)(i,(0,Jo.chunk)(s,4),(o,l)=>{if(!l||l.length!==4)return[];let[d,u,c,p]=l;if(!d.exists||!u.exists)return[];try{return[{...(0,qU.deserializeDigitalAsset)(d,u,c.exists?c:void 0),token:o,tokenRecord:p.exists?(0,ja.deserializeTokenRecord)(p):void 0}]}catch{return[]}}).flat()}n(VU,"fetchAllDigitalAssetWithTokenByOwner");pi.fetchAllDigitalAssetWithTokenByOwner=VU;function m4e(t,e,r,i){return VU(t,e,{...i,mint:r})}n(m4e,"fetchAllDigitalAssetWithTokenByOwnerAndMint");pi.fetchAllDigitalAssetWithTokenByOwnerAndMint=m4e;async function FU(t,e,r){let a=(await(0,E9.findLargestTokensByMint)(t,e,r)).filter(p=>p.amount.basisPoints>0).map(p=>p.publicKey),s=[e,(0,ja.findMetadataPda)(t,{mint:e})[0],(0,ja.findMasterEditionPda)(t,{mint:e})[0]];s.push(...a.flatMap(p=>[p,(0,ja.findTokenRecordPda)(t,{mint:e,token:p})[0]]));let o=await t.rpc.getAccounts(s,r),[l,d,u,...c]=o;return(0,Jo.assertAccountExists)(l,"Mint"),(0,Jo.assertAccountExists)(d,"Metadata"),(0,Jo.chunk)(c,2).flatMap(([p,x])=>p.exists?[vk(l,d,p,u.exists?u:void 0,x.exists?x:void 0)]:[])}n(FU,"fetchAllDigitalAssetWithTokenByMint");pi.fetchAllDigitalAssetWithTokenByMint=FU;function vk(t,e,r,i,a){return{...(0,qU.deserializeDigitalAsset)(t,e,i),token:(0,E9.deserializeToken)(r),tokenRecord:a?(0,ja.deserializeTokenRecord)(a):void 0}}n(vk,"deserializeDigitalAssetWithToken");pi.deserializeDigitalAssetWithToken=vk});var LU=v(P9=>{"use strict";Object.defineProperty(P9,"__esModule",{value:!0});P9.fetchJsonMetadata=void 0;var f4e=xm(),h4e=n(async(t,e)=>{try{return await t.downloader.downloadJson(e)}catch(r){throw new f4e.TokenMetadataError(`Failed to fetch JSON metadata from ${e}`,r)}},"fetchJsonMetadata");P9.fetchJsonMetadata=h4e});var UU=v(T9=>{"use strict";Object.defineProperty(T9,"__esModule",{value:!0});T9.mplTokenMetadata=void 0;var g4e=kt(),y4e=zo(),b4e=n(()=>({install(t){t.use((0,g4e.mplToolbox)()),t.programs.add((0,y4e.createMplTokenMetadataProgram)(),!1)}}),"mplTokenMetadata");T9.mplTokenMetadata=b4e});var jU=v(Ii=>{"use strict";var v4e=Ii&&Ii.__createBinding||(Object.create?function(t,e,r,i){i===void 0&&(i=r);var a=Object.getOwnPropertyDescriptor(e,r);(!a||("get"in a?!e.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,a)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]}),Yo=Ii&&Ii.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&v4e(e,t,r)};Object.defineProperty(Ii,"__esModule",{value:!0});Yo(zo(),Ii);Yo(Ve(),Ii);Yo(NU(),Ii);Yo(B5(),Ii);Yo(KU(),Ii);Yo(xm(),Ii);Yo(LU(),Ii);Yo(UU(),Ii)});var S4e={};Mk(S4e,{SolanaUtils:()=>I9,checkOwnerNFTs:()=>z9,lastStakingReward:()=>YU,nftOwnerAddress:()=>b4,stakeAccountBalance:()=>ZU});module.exports=Y9(S4e);var M9=Kr(ta());var HU=Kr(ta());var K0=n(t=>({__option:"Some",value:t}),"some"),ld=n(()=>({__option:"None"}),"none"),Bv=n(t=>t&&typeof t=="object"&&"__option"in t&&(t.__option==="Some"&&"value"in t||t.__option==="None"),"isOption"),dd=n(t=>t.__option==="Some","isSome");var Cv=n(t=>t!==null?K0(t):ld(),"wrapNullable");var T3=class extends Error{static{n(this,"InvalidBaseStringError")}name="InvalidBaseStringError";constructor(e,r,i){let a=`Expected a string of base ${r}, got [${e}].`;super(a),this.cause=i}};var WD=n(t=>{let e=t.length,r=BigInt(e);return{description:`base${e}`,fixedSize:null,maxSize:null,serialize(i){if(!i.match(new RegExp(`^[${t}]*$`)))throw new T3(i,e);if(i==="")return new Uint8Array;let a=[...i],s=a.findIndex(p=>p!==t[0]);s=s===-1?a.length:s;let o=Array(s).fill(0);if(s===a.length)return Uint8Array.from(o);let l=a.slice(s),d=0n,u=1n;for(let p=l.length-1;p>=0;p-=1)d+=u*BigInt(t.indexOf(l[p])),u*=r;let c=[];for(;d>0n;)c.unshift(Number(d%256n)),d/=256n;return Uint8Array.from(o.concat(c))},deserialize(i,a=0){if(i.length===0)return["",0];let s=i.slice(a),o=s.findIndex(c=>c!==0);o=o===-1?s.length:o;let l=t[0].repeat(o);if(o===s.length)return[l,i.length];let d=s.slice(o).reduce((c,p)=>c*256n+BigInt(p),0n),u=[];for(;d>0n;)u.unshift(t[Number(d%r)]),d/=r;return[l+u.join(""),i.length]}}},"baseX");var Gr=WD("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz");var wt=n(t=>{let e=t.reduce((a,s)=>a+s.length,0),r=new Uint8Array(e),i=0;return t.forEach(a=>{r.set(a,i),i+=a.length}),r},"mergeBytes"),VD=n((t,e)=>{if(t.length>=e)return t;let r=new Uint8Array(e).fill(0);return r.set(t),r},"padBytes"),z3=n((t,e)=>VD(t.slice(0,e),e),"fixBytes");var Zr=class extends Error{static{n(this,"DeserializingEmptyBufferError")}name="DeserializingEmptyBufferError";constructor(e){super(`Serializer [${e}] cannot deserialize empty buffers.`)}},Vi=class extends Error{static{n(this,"NotEnoughBytesError")}name="NotEnoughBytesError";constructor(e,r,i){super(`Serializer [${e}] expected ${r} bytes, got ${i}.`)}},Jr=class extends Error{static{n(this,"ExpectedFixedSizeSerializerError")}name="ExpectedFixedSizeSerializerError";constructor(e){e??="Expected a fixed-size serializer, got a variable-size one.",super(e)}};function L0(t,e,r){return{description:r??`fixed(${e}, ${t.description})`,fixedSize:e,maxSize:e,serialize:i=>z3(t.serialize(i),e),deserialize:(i,a=0)=>{if(i=i.slice(a,a+e),i.lengtht.serialize(e(i)),deserialize:(i,a=0)=>{let[s,o]=t.deserialize(i,a);return r?[r(s,i,a),o]:[s,o]}}}n(Ov,"mapSerializer");var FD=n(t=>t.replace(/\u0000/g,""),"removeNullCharacters");var U0={description:"utf8",fixedSize:null,maxSize:null,serialize(t){return new TextEncoder().encode(t)},deserialize(t,e=0){let r=new TextDecoder().decode(t.slice(e));return[FD(r),t.length]}};var bl=class extends Error{static{n(this,"InvalidPublicKeyError")}name="InvalidPublicKeyError";constructor(e,r){r=r?`. ${r}`:"",super(`The provided public key is invalid: ${e}${r}`),this.invalidPublicKey=e}};var ud=32;function Hn(t,e=!0){let r=(()=>typeof t=="string"?t:typeof t=="object"&&"publicKey"in t?t.publicKey:typeof t=="object"&&"toBase58"in t?t.toBase58():Array.isArray(t)?t[0]:Gr.deserialize(t)[0])();return e&&Nv(r),r}n(Hn,"publicKey");var vl=n(t=>{try{return Nv(t),!0}catch{return!1}},"isPublicKey");function Nv(t){if(typeof t!="string")throw new bl(t,"Public keys must be strings.");cd(t)}n(Nv,"assertPublicKey");var cd=n(t=>{if(t.length<32||t.length>44)throw new bl(t,"Public keys must be between 32 and 44 characters.");let e;try{e=Gr.serialize(t)}catch{throw new bl(t,"Public keys must be base58 encoded.")}if(e.length!==ud)throw new bl(t,`Public keys must be ${ud} bytes.`);return e},"publicKeyBytes");var I3;(function(t){t.Little="le",t.Big="be"})(I3||(I3={}));var M3=class extends RangeError{static{n(this,"NumberOutOfRangeError")}name="NumberOutOfRangeError";constructor(e,r,i,a){super(`Serializer [${e}] expected number to be between ${r} and ${i}, got ${a}.`)}};function xt(t){let e,r=t.name;return t.size>1&&(e=!("endian"in t.options)||t.options.endian===I3.Little,r+=e?"(le)":"(be)"),{description:t.options.description??r,fixedSize:t.size,maxSize:t.size,serialize(i){t.range&&qv(t.name,t.range[0],t.range[1],i);let a=new ArrayBuffer(t.size);return t.set(new DataView(a),i,e),new Uint8Array(a)},deserialize(i,a=0){let s=i.slice(a,a+t.size);Xee("i8",s,t.size);let o=Qee(s);return[t.get(o,e),a+t.size]}}}n(xt,"numberFactory");var Yee=n(t=>t.buffer.slice(t.byteOffset,t.byteLength+t.byteOffset),"toArrayBuffer"),Qee=n(t=>new DataView(Yee(t)),"toDataView"),qv=n((t,e,r,i)=>{if(ir)throw new M3(t,e,r,i)},"assertRange"),Xee=n((t,e,r)=>{if(e.length===0)throw new Zr(t);if(e.lengthxt({name:"f32",size:4,set:(e,r,i)=>e.setFloat32(0,Number(r),i),get:(e,r)=>e.getFloat32(0,r),options:t}),"f32");var Vv=n((t={})=>xt({name:"f64",size:8,set:(e,r,i)=>e.setFloat64(0,Number(r),i),get:(e,r)=>e.getFloat64(0,r),options:t}),"f64");var Fv=n((t={})=>xt({name:"i8",size:1,range:[-+"0x7f"-1,+"0x7f"],set:(e,r)=>e.setInt8(0,Number(r)),get:e=>e.getInt8(0),options:t}),"i8");var Kv=n((t={})=>xt({name:"i16",size:2,range:[-+"0x7fff"-1,+"0x7fff"],set:(e,r,i)=>e.setInt16(0,Number(r),i),get:(e,r)=>e.getInt16(0,r),options:t}),"i16");var Lv=n((t={})=>xt({name:"i32",size:4,range:[-+"0x7fffffff"-1,+"0x7fffffff"],set:(e,r,i)=>e.setInt32(0,Number(r),i),get:(e,r)=>e.getInt32(0,r),options:t}),"i32");var Uv=n((t={})=>xt({name:"i64",size:8,range:[-BigInt("0x7fffffffffffffff")-1n,BigInt("0x7fffffffffffffff")],set:(e,r,i)=>e.setBigInt64(0,BigInt(r),i),get:(e,r)=>e.getBigInt64(0,r),options:t}),"i64");var jv=n((t={})=>xt({name:"i128",size:16,range:[-BigInt("0x7fffffffffffffffffffffffffffffff")-1n,BigInt("0x7fffffffffffffffffffffffffffffff")],set:(e,r,i)=>{let a=i?8:0,s=i?0:8,o=0xffffffffffffffffn;e.setBigInt64(a,BigInt(r)>>64n,i),e.setBigUint64(s,BigInt(r)&o,i)},get:(e,r)=>{let i=r?8:0,a=r?0:8,s=e.getBigInt64(i,r),o=e.getBigUint64(a,r);return(s<<64n)+o},options:t}),"i128");var Ht=n((t={})=>xt({name:"u8",size:1,range:[0,+"0xff"],set:(e,r)=>e.setUint8(0,Number(r)),get:e=>e.getUint8(0),options:t}),"u8");var Hv=n((t={})=>xt({name:"u16",size:2,range:[0,+"0xffff"],set:(e,r,i)=>e.setUint16(0,Number(r),i),get:(e,r)=>e.getUint16(0,r),options:t}),"u16");var Da=n((t={})=>xt({name:"u32",size:4,range:[0,+"0xffffffff"],set:(e,r,i)=>e.setUint32(0,Number(r),i),get:(e,r)=>e.getUint32(0,r),options:t}),"u32");var $v=n((t={})=>xt({name:"u64",size:8,range:[0,BigInt("0xffffffffffffffff")],set:(e,r,i)=>e.setBigUint64(0,BigInt(r),i),get:(e,r)=>e.getBigUint64(0,r),options:t}),"u64");var Gv=n((t={})=>xt({name:"u128",size:16,range:[0,BigInt("0xffffffffffffffffffffffffffffffff")],set:(e,r,i)=>{let a=i?8:0,s=i?0:8,o=0xffffffffffffffffn;e.setBigUint64(a,BigInt(r)>>64n,i),e.setBigUint64(s,BigInt(r)&o,i)},get:(e,r)=>{let i=r?8:0,a=r?0:8,s=e.getBigUint64(i,r),o=e.getBigUint64(a,r);return(s<<64n)+o},options:t}),"u128");var ln=n((t={})=>({description:t.description??"shortU16",fixedSize:null,maxSize:3,serialize:e=>{qv("shortU16",0,65535,e);let r=[0];for(let i=0;;i+=1){let a=e>>i*7;if(a===0)break;let s=127&a;r[i]=s,i>0&&(r[i-1]|=128)}return new Uint8Array(r)},deserialize:(e,r=0)=>{let i=0,a=0;for(;++a;){let s=a-1,o=e[r+s],l=127&o;if(i|=l<e===null||r===null?null:e+r,0)}n(ni,"sumSerializerSizes");function md(t,e,r,i){if(typeof t=="number")return[t,i];if(typeof t=="object")return t.deserialize(r,i);if(t==="remainder"){let a=ni(e);if(a===null)throw new Jr('Serializers of "remainder" size must have fixed-size items.');let s=r.slice(i).length;if(s%a!==0)throw new D3(s,a);return[s/a,i]}throw new R3(t)}n(md,"getResolvedSize");function _i(t){return typeof t=="object"?t.description:`${t}`}n(_i,"getSizeDescription");function $n(t,e){if(typeof t!="number")return null;if(t===0)return 0;let r=ni(e);return r===null?null:r*t}n($n,"getSizeFromChildren");function fd(t,e){return typeof t=="object"?t.serialize(e):new Uint8Array}n(fd,"getSizePrefix");function Ra(t,e={}){let r=e.size??Da();if(r==="remainder"&&t.fixedSize===null)throw new Jr('Serializers of "remainder" size must have fixed-size items.');return{description:e.description??`array(${t.description}; ${_i(r)})`,fixedSize:$n(r,[t.fixedSize]),maxSize:$n(r,[t.maxSize]),serialize:i=>{if(typeof r=="number"&&i.length!==r)throw new dn("array",r,i.length);return wt([fd(r,i.length),...i.map(a=>t.serialize(a))])},deserialize:(i,a=0)=>{if(typeof r=="object"&&i.slice(a).length===0)return[[],a];let[s,o]=md(r,[t.fixedSize],i,a);a=o;let l=[];for(let d=0;de.serialize(r?1:0),deserialize:(r,i=0)=>{if(r.slice(i).length===0)throw new Zr("bool");let[a,s]=e.deserialize(r,i);return[a===1,s]}}}n(Zv,"bool");function Sl(t={}){let e=t.size??"variable",r=t.description??`bytes(${_i(e)})`,i={description:r,fixedSize:null,maxSize:null,serialize:a=>new Uint8Array(a),deserialize:(a,s=0)=>{let o=a.slice(s);return[o,s+o.length]}};return e==="variable"?i:typeof e=="number"?L0(i,e,r):{description:r,fixedSize:null,maxSize:null,serialize:a=>{let s=i.serialize(a),o=e.serialize(s.length);return wt([o,s])},deserialize:(a,s=0)=>{if(a.slice(s).length===0)throw new Zr("bytes");let[o,l]=e.deserialize(a,s),d=Number(o);s=l;let u=a.slice(s,s+d);if(u.lengthe===null||r===null?null:Math.max(e,r),0)}n(KD,"maxSerializerSizes");function Jv(t,e={}){let r=e.size??Ht(),i=t.map(([l,d])=>`${String(l)}${d?`: ${d.description}`:""}`).join(", "),s=t.every((l,d,u)=>l[1].fixedSize===u[0][1].fixedSize)?t[0][1].fixedSize:null,o=KD(t.map(([,l])=>l.maxSize));return{description:e.description??`dataEnum(${i}; ${r.description})`,fixedSize:t.length===0?r.fixedSize:ni([r.fixedSize,s]),maxSize:t.length===0?r.maxSize:ni([r.maxSize,o]),serialize:l=>{let d=t.findIndex(([x])=>l.__kind===x);if(d<0)throw new B3(l.__kind,t.map(([x])=>x));let u=r.serialize(d),p=t[d][1].serialize(l);return wt([u,p])},deserialize:(l,d=0)=>{if(l.slice(d).length===0)throw new Zr("dataEnum");let[u,c]=r.deserialize(l,d);d=c;let p=t[Number(u)]??null;if(!p)throw new pd(u,0,t.length-1);let[x,E]=p[1].deserialize(l,d);return d=E,[{__kind:p[0],...x??{}},d]}}}n(Jv,"dataEnum");function Yv(t,e,r={}){let i=r.size??Da();if(i==="remainder"&&(t.fixedSize===null||e.fixedSize===null))throw new Jr('Serializers of "remainder" size must have fixed-size items.');return{description:r.description??`map(${t.description}, ${e.description}; ${_i(i)})`,fixedSize:$n(i,[t.fixedSize,e.fixedSize]),maxSize:$n(i,[t.maxSize,e.maxSize]),serialize:a=>{if(typeof i=="number"&&a.size!==i)throw new dn("map",i,a.size);let s=Array.from(a,([o,l])=>wt([t.serialize(o),e.serialize(l)]));return wt([fd(i,a.size),...s])},deserialize:(a,s=0)=>{let o=new Map;if(typeof i=="object"&&a.slice(s).length===0)return[o,s];let[l,d]=md(i,[t.fixedSize,e.fixedSize],a,s);s=d;for(let u=0;u{let l=r.serialize(+(o!==null));if(i){let u=t.fixedSize,c=o!==null?t.serialize(o).slice(0,u):new Uint8Array(u).fill(0);return wt([l,c])}let d=o!==null?t.serialize(o):new Uint8Array;return wt([l,d])},deserialize:(o,l=0)=>{if(o.slice(l).length===0)return[null,l];let d=l+(r.fixedSize??0)+(t.fixedSize??0),[u,c]=r.deserialize(o,l);if(l=c,u===0)return[null,i?d:l];let[p,x]=t.deserialize(o,l);return l=x,[p,i?d:l]}}}n(Qv,"nullable");function Xv(t,e={}){let r=e.prefix??Ht(),i=e.fixed??!1,a=`; ${_i(r)}`,s=t.fixedSize===0?r.fixedSize:null;if(i){if(t.fixedSize===null||r.fixedSize===null)throw new Jr("Fixed options can only be used with fixed-size serializers");a+="; fixed",s=r.fixedSize+t.fixedSize}return{description:e.description??`option(${t.description+a})`,fixedSize:s,maxSize:ni([r.maxSize,t.maxSize]),serialize:o=>{let l=Bv(o)?o:Cv(o),d=r.serialize(Number(dd(l)));if(i){let c=t.fixedSize,p=dd(l)?t.serialize(l.value).slice(0,c):new Uint8Array(c).fill(0);return wt([d,p])}let u=dd(l)?t.serialize(l.value):new Uint8Array;return wt([d,u])},deserialize:(o,l=0)=>{if(o.slice(l).length===0)return[ld(),l];let d=l+(r.fixedSize??0)+(t.fixedSize??0),[u,c]=r.deserialize(o,l);if(l=c,u===0)return[ld(),i?d:l];let[p,x]=t.deserialize(o,l);return l=x,[K0(p),i?d:l]}}}n(Xv,"option");function hd(t={}){return{description:t.description??"publicKey",fixedSize:32,maxSize:32,serialize:e=>cd(Hn(e)),deserialize:(e,r=0)=>{let i=e.slice(r,r+32);if(i.length===0)throw new Zr("publicKey");if(i.lengthtypeof p=="number"),o=a.filter(p=>typeof p=="string").join(", "),l=0,d=s?a.length/2-1:a.length-1,u=s?[...i]:[...new Set([...i,...a])];function c(p){let x=typeof p=="number"&&(pd),E=typeof p=="string"&&!u.includes(p);if(x||E)throw new C3(p,u,l,d)}return n(c,"assertValidVariant"),{description:e.description??`enum(${o}; ${r.description})`,fixedSize:r.fixedSize,maxSize:r.maxSize,serialize:p=>{if(c(p),typeof p=="number")return r.serialize(p);let x=a.indexOf(p);return x>=0?r.serialize(x):r.serialize(i.indexOf(p))},deserialize:(p,x=0)=>{if(p.slice(x).length===0)throw new Zr("enum");let[E,I]=r.deserialize(p,x),k=Number(E);if(x=I,kd)throw new pd(k,l,d);return[s?k:a[k],x]}}}n(eS,"scalarEnum");function tS(t,e={}){let r=e.size??Da();if(r==="remainder"&&t.fixedSize===null)throw new Jr('Serializers of "remainder" size must have fixed-size items.');return{description:e.description??`set(${t.description}; ${_i(r)})`,fixedSize:$n(r,[t.fixedSize]),maxSize:$n(r,[t.maxSize]),serialize:i=>{if(typeof r=="number"&&i.size!==r)throw new dn("set",r,i.size);let a=Array.from(i,s=>t.serialize(s));return wt([fd(r,i.size),...a])},deserialize:(i,a=0)=>{let s=new Set;if(typeof r=="object"&&i.slice(a).length===0)return[s,a];let[o,l]=md(r,[t.fixedSize],i,a);a=l;for(let d=0;d{let s=r.serialize(a),o=e.serialize(s.length);return wt([o,s])},deserialize:(a,s=0)=>{if(a.slice(s).length===0)throw new Zr("string");let[o,l]=e.deserialize(a,s),d=Number(o);s=l;let u=a.slice(s,s+d);if(u.length`${String(i)}: ${a.description}`).join(", ");return{description:e.description??`struct(${r})`,fixedSize:ni(t.map(([,i])=>i.fixedSize)),maxSize:ni(t.map(([,i])=>i.maxSize)),serialize:i=>{let a=t.map(([s,o])=>o.serialize(i[s]));return wt(a)},deserialize:(i,a=0)=>{let s={};return t.forEach(([o,l])=>{let[d,u]=l.deserialize(i,a);a=u,s[o]=d}),[s,a]}}}n(Gn,"struct");function rS(t,e={}){let r=t.map(i=>i.description).join(", ");return{description:e.description??`tuple(${r})`,fixedSize:ni(t.map(i=>i.fixedSize)),maxSize:ni(t.map(i=>i.maxSize)),serialize:i=>{if(i.length!==t.length)throw new dn("tuple",t.length,i.length);return wt(t.map((a,s)=>a.serialize(i[s])))},deserialize:(i,a=0)=>{let s=[];return t.forEach(o=>{let[l,d]=o.deserialize(i,a);s.push(l),a=d}),[s,a]}}}n(rS,"tuple");function iS(t={}){return{description:t.description??"unit",fixedSize:0,maxSize:0,serialize:()=>new Uint8Array,deserialize:(e,r=0)=>[void 0,r]}}n(iS,"unit");var gd=class extends Error{static{n(this,"UmiError")}name="UmiError";constructor(e,r,i,a){super(e),this.source=r,this.sourceDetails=i,this.cause=a,this.message=`${this.message} Source: ${this.getFullSource()}${this.cause?` Caused By: ${this.cause}`:""} -`}getCapitalizedSource(){return this.source==="sdk"||this.source==="rpc"?this.source.toUpperCase():this.source[0].toUpperCase()+this.source.slice(1)}getFullSource(){let e=this.getCapitalizedSource(),r=this.sourceDetails?` > ${this.sourceDetails}`:"";return e+r}toString(){return`[${this.name}] ${this.message}`}};var Gn=class extends hd{name="SdkError";constructor(e,r){super(e,"sdk",void 0,r)}};var iS=128;var L0=t=>(t=typeof t=="object"?t.toString():t,BigInt(t));var C3=(t,e,r)=>({basisPoints:L0(t),identifier:e,decimals:r});var Zn=t=>C3(t,"SOL",9);var aS=t=>t.basisPoints===BigInt(0);var Xee=["api.mainnet-beta.solana.com","ssc-dao.genesysgo.net"],ete=["api.devnet.solana.com","psytrbhymqlkfrhudd.dev.genesysgo.net"],tte=["api.testnet.solana.com"],rte=["localhost","127.0.0.1"],nS=t=>{let e=new URL(t).hostname;return Xee.includes(e)?"mainnet-beta":ete.includes(e)?"devnet":tte.includes(e)?"testnet":rte.includes(e)?"localnet":t.includes("mainnet")?"mainnet-beta":t.includes("devnet")?"devnet":t.includes("testnet")?"testnet":t.includes("local")?"localnet":"custom"};var Br=class extends Gn{name="InterfaceImplementationMissingError";constructor(e,r){let i=e.replace(/Interface$/,""),a=`Tried using ${e} but no implementation of that interface was found. Make sure an implementation is registered, e.g. via "context.${r} = new My${i}();".`;super(a)}};function KD(){let t=()=>{throw new Br("DownloaderInterface","downloader")};return{download:t,downloadJson:t}}function LD(){let t=()=>{throw new Br("EddsaInterface","eddsa")};return{generateKeypair:t,createKeypairFromSecretKey:t,createKeypairFromSeed:t,isOnCurve:t,findPda:t,sign:t,verify:t}}function UD(){return{send:()=>{throw new Br("HttpInterface","http")}}}function jD(){let t=()=>{throw new Br("ProgramRepositoryInterface","programs")};return{has:t,get:t,getPublicKey:t,all:t,add:t,bind:t,unbind:t,clone:t,resolveError:t}}function HD(){let t=()=>{throw new Br("RpcInterface","rpc")};return{getEndpoint:t,getCluster:t,getAccount:t,getAccounts:t,getProgramAccounts:t,getBlockTime:t,getBalance:t,getRent:t,getSlot:t,getLatestBlockhash:t,getTransaction:t,getSignatureStatuses:t,accountExists:t,airdrop:t,call:t,sendTransaction:t,confirmTransaction:t}}function $D(){let t=()=>{throw new Br("SerializerInterface","serializer")};return{tuple:t,array:t,map:t,set:t,option:t,nullable:t,struct:t,enum:t,dataEnum:t,string:t,bool:t,unit:t,u8:t,u16:t,u32:t,u64:t,u128:t,i8:t,i16:t,i32:t,i64:t,i128:t,f32:t,f64:t,bytes:t,publicKey:t}}var sS=(t,e)=>t.reduce((r,i,a)=>{let n=Math.floor(a/e);return r[n]||(r[n]=[]),r[n].push(i),r},[]);function oS(){let t=new Error("Trying to use a NullSigner. Did you forget to set a Signer on your Umi instance? See the `signerIdentity` method for more information."),e=()=>{throw t};return{get publicKey(){throw t},signMessage:e,signTransaction:e,signAllTransactions:e}}function GD(){let t=()=>{throw new Br("TransactionFactoryInterface","transactions")};return{create:t,serialize:t,deserialize:t,serializeMessage:t,deserializeMessage:t}}function ZD(){let t=()=>{throw new Br("UploaderInterface","uploader")};return{upload:t,uploadJson:t,getUploadPrice:t}}var JD=()=>({downloader:KD(),eddsa:LD(),http:UD(),identity:oS(),payer:oS(),programs:jD(),rpc:HD(),serializer:$D(),transactions:GD(),uploader:ZD()});var lS=t=>{if(typeof t=="string"||ite(t)){let e=new Date(t),r=Math.floor(e.getTime()/1e3);return L0(r)}return L0(t)};var ite=t=>Object.prototype.toString.call(t)==="[object Date]";var YD=(t=20,e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789")=>{let r="",i=e.length;for(let a=0;a({buffer:typeof t=="string"?F0.serialize(t):t,fileName:e,displayName:r.displayName??e,uniqueName:r.uniqueName??YD(),contentType:r.contentType??null,extension:r.extension??ate(e),tags:r.tags??[]});var ate=t=>{let e=t.lastIndexOf(".");return e<0?null:t.slice(e+1)};var N3=()=>new O3({method:"get",data:void 0,headers:{},url:""}),O3=class t{constructor(e){this.request=e}asJson(){return this.contentType("application/json")}asMultipart(){return this.contentType("multipart/form-data")}asForm(){return this.contentType("application/x-www-form-urlencoded")}accept(e){return this.withHeader("accept",e)}contentType(e){return this.withHeader("content-type",e)}userAgent(e){return this.withHeader("user-agent",e)}withToken(e,r="Bearer"){return this.withHeader("authorization",`${r} ${e}`)}withHeader(e,r){return this.withHeaders({[e]:r})}withHeaders(e){return new t({...this.request,headers:{...this.request.headers,...e}})}dontFollowRedirects(){return this.followRedirects(0)}followRedirects(e){return new t({...this.request,maxRedirects:e})}withoutTimeout(){return this.withTimeout(0)}withTimeout(e){return new t({...this.request,timeout:e})}withAbortSignal(e){return new t({...this.request,signal:e})}withEndpoint(e,r){return new t({...this.request,method:e,url:r})}withParams(e){let r=new URL(this.request.url),i=new URLSearchParams(e),a=new URLSearchParams(r.searchParams);return[...i.entries()].forEach(([n,s])=>{a.append(n,s)}),r.search=a.toString(),new t({...this.request,url:r.toString()})}withData(e){return new t({...this.request,data:e})}get(e){return this.withEndpoint("get",e)}post(e){return this.withEndpoint("post",e)}put(e){return this.withEndpoint("put",e)}patch(e){return this.withEndpoint("patch",e)}delete(e){return this.withEndpoint("delete",e)}get method(){return this.request.method}get url(){return this.request.url}get data(){return this.request.data}get headers(){return this.request.headers}get maxRedirects(){return this.request.maxRedirects}get timeout(){return this.request.timeout}get signal(){return this.request.signal}};var uS=()=>({...JD(),use(t){return t.install(this),this}});var U0=class extends hd{name="ProgramError";constructor(e,r,i){super(e,"program",`${r.name} [${r.publicKey}]`,i),this.program=r,this.logs=i?.logs,this.logs&&(this.message+=` +`}getCapitalizedSource(){return this.source==="sdk"||this.source==="rpc"?this.source.toUpperCase():this.source[0].toUpperCase()+this.source.slice(1)}getFullSource(){let e=this.getCapitalizedSource(),r=this.sourceDetails?` > ${this.sourceDetails}`:"";return e+r}toString(){return`[${this.name}] ${this.message}`}};var Zn=class extends gd{static{n(this,"SdkError")}name="SdkError";constructor(e,r){super(e,"sdk",void 0,r)}};var aS=128;var H0=n(t=>(t=typeof t=="object"?t.toString():t,BigInt(t)),"createBigInt");var O3=n((t,e,r)=>({basisPoints:H0(t),identifier:e,decimals:r}),"createAmount");var Jn=n(t=>O3(t,"SOL",9),"lamports");var nS=n(t=>t.basisPoints===BigInt(0),"isZeroAmount");var ete=["api.mainnet-beta.solana.com","ssc-dao.genesysgo.net"],tte=["api.devnet.solana.com","psytrbhymqlkfrhudd.dev.genesysgo.net"],rte=["api.testnet.solana.com"],ite=["localhost","127.0.0.1"],sS=n(t=>{let e=new URL(t).hostname;return ete.includes(e)?"mainnet-beta":tte.includes(e)?"devnet":rte.includes(e)?"testnet":ite.includes(e)?"localnet":t.includes("mainnet")?"mainnet-beta":t.includes("devnet")?"devnet":t.includes("testnet")?"testnet":t.includes("local")?"localnet":"custom"},"resolveClusterFromEndpoint");var Cr=class extends Zn{static{n(this,"InterfaceImplementationMissingError")}name="InterfaceImplementationMissingError";constructor(e,r){let i=e.replace(/Interface$/,""),a=`Tried using ${e} but no implementation of that interface was found. Make sure an implementation is registered, e.g. via "context.${r} = new My${i}();".`;super(a)}};function LD(){let t=n(()=>{throw new Cr("DownloaderInterface","downloader")},"errorHandler");return{download:t,downloadJson:t}}n(LD,"createNullDownloader");function UD(){let t=n(()=>{throw new Cr("EddsaInterface","eddsa")},"errorHandler");return{generateKeypair:t,createKeypairFromSecretKey:t,createKeypairFromSeed:t,isOnCurve:t,findPda:t,sign:t,verify:t}}n(UD,"createNullEddsa");function jD(){return{send:n(()=>{throw new Cr("HttpInterface","http")},"errorHandler")}}n(jD,"createNullHttp");function HD(){let t=n(()=>{throw new Cr("ProgramRepositoryInterface","programs")},"errorHandler");return{has:t,get:t,getPublicKey:t,all:t,add:t,bind:t,unbind:t,clone:t,resolveError:t}}n(HD,"createNullProgramRepository");function $D(){let t=n(()=>{throw new Cr("RpcInterface","rpc")},"errorHandler");return{getEndpoint:t,getCluster:t,getAccount:t,getAccounts:t,getProgramAccounts:t,getBlockTime:t,getBalance:t,getRent:t,getSlot:t,getLatestBlockhash:t,getTransaction:t,getSignatureStatuses:t,accountExists:t,airdrop:t,call:t,sendTransaction:t,confirmTransaction:t}}n($D,"createNullRpc");function GD(){let t=n(()=>{throw new Cr("SerializerInterface","serializer")},"errorHandler");return{tuple:t,array:t,map:t,set:t,option:t,nullable:t,struct:t,enum:t,dataEnum:t,string:t,bool:t,unit:t,u8:t,u16:t,u32:t,u64:t,u128:t,i8:t,i16:t,i32:t,i64:t,i128:t,f32:t,f64:t,bytes:t,publicKey:t}}n(GD,"createNullSerializer");var oS=n((t,e)=>t.reduce((r,i,a)=>{let s=Math.floor(a/e);return r[s]||(r[s]=[]),r[s].push(i),r},[]),"chunk");function lS(){let t=new Error("Trying to use a NullSigner. Did you forget to set a Signer on your Umi instance? See the `signerIdentity` method for more information."),e=n(()=>{throw t},"errorHandler");return{get publicKey(){throw t},signMessage:e,signTransaction:e,signAllTransactions:e}}n(lS,"createNullSigner");function ZD(){let t=n(()=>{throw new Cr("TransactionFactoryInterface","transactions")},"errorHandler");return{create:t,serialize:t,deserialize:t,serializeMessage:t,deserializeMessage:t}}n(ZD,"createNullTransactionFactory");function JD(){let t=n(()=>{throw new Cr("UploaderInterface","uploader")},"errorHandler");return{upload:t,uploadJson:t,getUploadPrice:t}}n(JD,"createNullUploader");var YD=n(()=>({downloader:LD(),eddsa:UD(),http:jD(),identity:lS(),payer:lS(),programs:HD(),rpc:$D(),serializer:GD(),transactions:ZD(),uploader:JD()}),"createNullContext");var dS=n(t=>{if(typeof t=="string"||ate(t)){let e=new Date(t),r=Math.floor(e.getTime()/1e3);return H0(r)}return H0(t)},"dateTime");var ate=n(t=>Object.prototype.toString.call(t)==="[object Date]","isDateObject");var QD=n((t=20,e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789")=>{let r="",i=e.length;for(let a=0;a({buffer:typeof t=="string"?U0.serialize(t):t,fileName:e,displayName:r.displayName??e,uniqueName:r.uniqueName??QD(),contentType:r.contentType??null,extension:r.extension??nte(e),tags:r.tags??[]}),"createGenericFile");var nte=n(t=>{let e=t.lastIndexOf(".");return e<0?null:t.slice(e+1)},"getExtension");var q3=n(()=>new N3({method:"get",data:void 0,headers:{},url:""}),"request"),N3=class t{static{n(this,"HttpRequestBuilder")}constructor(e){this.request=e}asJson(){return this.contentType("application/json")}asMultipart(){return this.contentType("multipart/form-data")}asForm(){return this.contentType("application/x-www-form-urlencoded")}accept(e){return this.withHeader("accept",e)}contentType(e){return this.withHeader("content-type",e)}userAgent(e){return this.withHeader("user-agent",e)}withToken(e,r="Bearer"){return this.withHeader("authorization",`${r} ${e}`)}withHeader(e,r){return this.withHeaders({[e]:r})}withHeaders(e){return new t({...this.request,headers:{...this.request.headers,...e}})}dontFollowRedirects(){return this.followRedirects(0)}followRedirects(e){return new t({...this.request,maxRedirects:e})}withoutTimeout(){return this.withTimeout(0)}withTimeout(e){return new t({...this.request,timeout:e})}withAbortSignal(e){return new t({...this.request,signal:e})}withEndpoint(e,r){return new t({...this.request,method:e,url:r})}withParams(e){let r=new URL(this.request.url),i=new URLSearchParams(e),a=new URLSearchParams(r.searchParams);return[...i.entries()].forEach(([s,o])=>{a.append(s,o)}),r.search=a.toString(),new t({...this.request,url:r.toString()})}withData(e){return new t({...this.request,data:e})}get(e){return this.withEndpoint("get",e)}post(e){return this.withEndpoint("post",e)}put(e){return this.withEndpoint("put",e)}patch(e){return this.withEndpoint("patch",e)}delete(e){return this.withEndpoint("delete",e)}get method(){return this.request.method}get url(){return this.request.url}get data(){return this.request.data}get headers(){return this.request.headers}get maxRedirects(){return this.request.maxRedirects}get timeout(){return this.request.timeout}get signal(){return this.request.signal}};var cS=n(()=>({...YD(),use(t){return t.install(this),this}}),"createUmi");var $0=class extends gd{static{n(this,"ProgramError")}name="ProgramError";constructor(e,r,i){super(e,"program",`${r.name} [${r.publicKey}]`,i),this.program=r,this.logs=i?.logs,this.logs&&(this.message+=` Program Logs: ${this.logs.map(a=>`| ${a}`).join(` `)} -`)}};function QD(t){let e=async(a,n={})=>{let s=await t.http.send(N3().get(a).withAbortSignal(n.signal));return dS(s.body,a)};return{download:async(a,n={})=>Promise.all(a.map(s=>e(s,n))),downloadJson:async(a,n={})=>(await t.http.send(N3().get(a).withAbortSignal(n.signal))).data}}var cS=()=>({install(t){t.downloader=QD(t)}});var eR=Fr(ea(),1),tR=require("buffer");var XD=Fr(ea(),1);function Jr(t){return t.toBase58()}function _r(t){return new XD.PublicKey(t)}function pS(t){return new eR.TransactionInstruction({keys:t.keys.map(e=>({...e,pubkey:_r(e.pubkey)})),programId:_r(t.programId),data:tR.Buffer.from(t.data)})}var nte=Fr(ea(),1);function j0(t){return{publicKey:Jr(t.publicKey),secretKey:t.secretKey}}var gd=Fr(ea(),1);function H0(t){return{version:t.version,header:t.header,accounts:t.staticAccountKeys.map(Jr),blockhash:t.recentBlockhash,instructions:t.compiledInstructions.map(e=>({programIndex:e.programIdIndex,accountIndexes:e.accountKeyIndexes,data:new Uint8Array(e.data)})),addressLookupTables:t.addressTableLookups.map(e=>({publicKey:Jr(e.accountKey),writableIndexes:e.writableIndexes,readonlyIndexes:e.readonlyIndexes}))}}function mS(t){return t.version==="legacy"?gd.Message.compile({payerKey:_r(t.payer),instructions:t.instructions.map(pS),recentBlockhash:t.blockhash}):gd.MessageV0.compile({payerKey:_r(t.payer),instructions:t.instructions.map(pS),recentBlockhash:t.blockhash,addressLookupTableAccounts:t.addressLookupTables?.map(e=>new gd.AddressLookupTableAccount({key:_r(e.publicKey),state:{addresses:e.addresses.map(_r),authority:void 0,deactivationSlot:BigInt(`0x${"ff".repeat(8)}`),lastExtendedSlot:0,lastExtendedSlotStartIndex:0}}))})}function ste(t,...e){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}function fS(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function rR(t,e){ste(t);let r=e.outputLen;if(t.lengtht instanceof Uint8Array;var V3=t=>new DataView(t.buffer,t.byteOffset,t.byteLength);var ote=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!ote)throw new Error("Non little-endian hardware is not supported");function hS(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function gS(t){if(typeof t=="string"&&(t=hS(t)),!iR(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}function aR(...t){let e=new Uint8Array(t.reduce((i,a)=>i+a.length,0)),r=0;return t.forEach(i=>{if(!iR(i))throw new Error("Uint8Array expected");e.set(i,r),r+=i.length}),e}var W3=class{clone(){return this._cloneInto()}},Tbe={}.toString;function nR(t){let e=i=>t().update(gS(i)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function sR(t=32){if(q3&&typeof q3.getRandomValues=="function")return q3.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}function lte(t,e,r,i){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,i);let a=BigInt(32),n=BigInt(4294967295),s=Number(r>>a&n),o=Number(r&n),l=i?4:0,d=i?0:4;t.setUint32(e+l,s,i),t.setUint32(e+d,o,i)}var F3=class extends W3{constructor(e,r,i,a){super(),this.blockLen=e,this.outputLen=r,this.padOffset=i,this.isLE=a,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=V3(this.buffer)}update(e){fS(this);let{view:r,buffer:i,blockLen:a}=this;e=gS(e);let n=e.length;for(let s=0;sa-s&&(this.process(i,0),s=0);for(let c=s;cu.length)throw new Error("_sha2: outputLen bigger than state");for(let c=0;c>yS&K3)}:{h:Number(t>>yS&K3)|0,l:Number(t&K3)|0}}function dte(t,e=!1){let r=new Uint32Array(t.length),i=new Uint32Array(t.length);for(let a=0;aBigInt(t>>>0)<>>0),cte=(t,e,r)=>t>>>r,pte=(t,e,r)=>t<<32-r|e>>>r,mte=(t,e,r)=>t>>>r|e<<32-r,fte=(t,e,r)=>t<<32-r|e>>>r,hte=(t,e,r)=>t<<64-r|e>>>r-32,gte=(t,e,r)=>t>>>r-32|e<<64-r,yte=(t,e)=>e,bte=(t,e)=>t,vte=(t,e,r)=>t<>>32-r,Ste=(t,e,r)=>e<>>32-r,wte=(t,e,r)=>e<>>64-r,xte=(t,e,r)=>t<>>64-r;function Ate(t,e,r,i){let a=(e>>>0)+(i>>>0);return{h:t+r+(a/2**32|0)|0,l:a|0}}var _te=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),kte=(t,e,r,i)=>e+r+i+(t/2**32|0)|0,Ete=(t,e,r,i)=>(t>>>0)+(e>>>0)+(r>>>0)+(i>>>0),Pte=(t,e,r,i,a)=>e+r+i+a+(t/2**32|0)|0,Tte=(t,e,r,i,a)=>(t>>>0)+(e>>>0)+(r>>>0)+(i>>>0)+(a>>>0),zte=(t,e,r,i,a,n)=>e+r+i+a+n+(t/2**32|0)|0;var Ite={fromBig:oR,split:dte,toBig:ute,shrSH:cte,shrSL:pte,rotrSH:mte,rotrSL:fte,rotrBH:hte,rotrBL:gte,rotr32H:yte,rotr32L:bte,rotlSH:vte,rotlSL:Ste,rotlBH:wte,rotlBL:xte,add:Ate,add3L:_te,add3H:kte,add4L:Ete,add4H:Pte,add5H:zte,add5L:Tte},Te=Ite;var[Mte,Dte]=(()=>Te.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(t=>BigInt(t))))(),Gs=new Uint32Array(80),Zs=new Uint32Array(80),bS=class extends F3{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:e,Al:r,Bh:i,Bl:a,Ch:n,Cl:s,Dh:o,Dl:l,Eh:d,El:u,Fh:c,Fl:w,Gh:k,Gl:z,Hh:_,Hl:T}=this;return[e,r,i,a,n,s,o,l,d,u,c,w,k,z,_,T]}set(e,r,i,a,n,s,o,l,d,u,c,w,k,z,_,T){this.Ah=e|0,this.Al=r|0,this.Bh=i|0,this.Bl=a|0,this.Ch=n|0,this.Cl=s|0,this.Dh=o|0,this.Dl=l|0,this.Eh=d|0,this.El=u|0,this.Fh=c|0,this.Fl=w|0,this.Gh=k|0,this.Gl=z|0,this.Hh=_|0,this.Hl=T|0}process(e,r){for(let R=0;R<16;R++,r+=4)Gs[R]=e.getUint32(r),Zs[R]=e.getUint32(r+=4);for(let R=16;R<80;R++){let B=Gs[R-15]|0,q=Zs[R-15]|0,K=Te.rotrSH(B,q,1)^Te.rotrSH(B,q,8)^Te.shrSH(B,q,7),j=Te.rotrSL(B,q,1)^Te.rotrSL(B,q,8)^Te.shrSL(B,q,7),G=Gs[R-2]|0,ne=Zs[R-2]|0,oe=Te.rotrSH(G,ne,19)^Te.rotrBH(G,ne,61)^Te.shrSH(G,ne,6),Y=Te.rotrSL(G,ne,19)^Te.rotrBL(G,ne,61)^Te.shrSL(G,ne,6),ce=Te.add4L(j,Y,Zs[R-7],Zs[R-16]),I=Te.add4H(ce,K,oe,Gs[R-7],Gs[R-16]);Gs[R]=I|0,Zs[R]=ce|0}let{Ah:i,Al:a,Bh:n,Bl:s,Ch:o,Cl:l,Dh:d,Dl:u,Eh:c,El:w,Fh:k,Fl:z,Gh:_,Gl:T,Hh:D,Hl:V}=this;for(let R=0;R<80;R++){let B=Te.rotrSH(c,w,14)^Te.rotrSH(c,w,18)^Te.rotrBH(c,w,41),q=Te.rotrSL(c,w,14)^Te.rotrSL(c,w,18)^Te.rotrBL(c,w,41),K=c&k^~c&_,j=w&z^~w&T,G=Te.add5L(V,q,j,Dte[R],Zs[R]),ne=Te.add5H(G,D,B,K,Mte[R],Gs[R]),oe=G|0,Y=Te.rotrSH(i,a,28)^Te.rotrBH(i,a,34)^Te.rotrBH(i,a,39),ce=Te.rotrSL(i,a,28)^Te.rotrBL(i,a,34)^Te.rotrBL(i,a,39),I=i&n^i&o^n&o,p=a&s^a&l^s&l;D=_|0,V=T|0,_=k|0,T=z|0,k=c|0,z=w|0,{h:c,l:w}=Te.add(d|0,u|0,ne|0,oe|0),d=o|0,u=l|0,o=n|0,l=s|0,n=i|0,s=a|0;let h=Te.add3L(oe,ce,p);i=Te.add3H(h,ne,Y,I),a=h|0}({h:i,l:a}=Te.add(this.Ah|0,this.Al|0,i|0,a|0)),{h:n,l:s}=Te.add(this.Bh|0,this.Bl|0,n|0,s|0),{h:o,l}=Te.add(this.Ch|0,this.Cl|0,o|0,l|0),{h:d,l:u}=Te.add(this.Dh|0,this.Dl|0,d|0,u|0),{h:c,l:w}=Te.add(this.Eh|0,this.El|0,c|0,w|0),{h:k,l:z}=Te.add(this.Fh|0,this.Fl|0,k|0,z|0),{h:_,l:T}=Te.add(this.Gh|0,this.Gl|0,_|0,T|0),{h:D,l:V}=Te.add(this.Hh|0,this.Hl|0,D|0,V|0),this.set(i,a,n,s,o,l,d,u,c,w,k,z,_,T,D,V)}roundClean(){Gs.fill(0),Zs.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};var vS=nR(()=>new bS);var qbe=BigInt(0),Rte=BigInt(1),Bte=BigInt(2),L3=t=>t instanceof Uint8Array,Cte=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function U3(t){if(!L3(t))throw new Error("Uint8Array expected");let e="";for(let r=0;ri+a.length,0)),r=0;return t.forEach(i=>{if(!L3(i))throw new Error("Uint8Array expected");e.set(i,r),r+=i.length}),e}var cR=t=>(Bte<typeof t=="bigint",function:t=>typeof t=="function",boolean:t=>typeof t=="boolean",string:t=>typeof t=="string",stringOrUint8Array:t=>typeof t=="string"||t instanceof Uint8Array,isSafeInteger:t=>Number.isSafeInteger(t),array:t=>Array.isArray(t),field:(t,e)=>e.Fp.isValid(t),hash:t=>typeof t=="function"&&Number.isSafeInteger(t.outputLen)};function bd(t,e,r={}){let i=(a,n,s)=>{let o=Ote[n];if(typeof o!="function")throw new Error(`Invalid validator "${n}", expected function`);let l=t[a];if(!(s&&l===void 0)&&!o(l,t))throw new Error(`Invalid param ${String(a)}=${l} (${typeof l}), expected ${n}`)};for(let[a,n]of Object.entries(e))i(a,n,!1);for(let[a,n]of Object.entries(r))i(a,n,!0);return t}var kr=BigInt(0),Ct=BigInt(1),Sl=BigInt(2),qte=BigInt(3),xS=BigInt(4),pR=BigInt(5),mR=BigInt(8),Wte=BigInt(9),Vte=BigInt(16);function Ht(t,e){let r=t%e;return r>=kr?r:e+r}function Fte(t,e,r){if(r<=kr||e 0");if(r===Ct)return kr;let i=Ct;for(;e>kr;)e&Ct&&(i=i*t%r),t=t*t%r,e>>=Ct;return i}function Ra(t,e,r){let i=t;for(;e-- >kr;)i*=i,i%=r;return i}function fR(t,e){if(t===kr||e<=kr)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=Ht(t,e),i=e,a=kr,n=Ct,s=Ct,o=kr;for(;r!==kr;){let d=i/r,u=i%r,c=a-s*d,w=n-o*d;i=r,r=u,a=s,n=o,s=c,o=w}if(i!==Ct)throw new Error("invert: does not exist");return Ht(a,e)}function Kte(t){let e=(t-Ct)/Sl,r,i,a;for(r=t-Ct,i=0;r%Sl===kr;r/=Sl,i++);for(a=Sl;a(Ht(t,e)&Ct)===Ct,Ute=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function gR(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=Ute.reduce((i,a)=>(i[a]="function",i),e);return bd(t,r)}function jte(t,e,r){if(r 0");if(r===kr)return t.ONE;if(r===Ct)return e;let i=t.ONE,a=e;for(;r>kr;)r&Ct&&(i=t.mul(i,a)),a=t.sqr(a),r>>=Ct;return i}function Hte(t,e){let r=new Array(e.length),i=e.reduce((n,s,o)=>t.is0(s)?n:(r[o]=n,t.mul(n,s)),t.ONE),a=t.inv(i);return e.reduceRight((n,s,o)=>t.is0(s)?n:(r[o]=t.mul(n,r[o]),t.mul(n,s)),a),r}function AS(t,e){let r=e!==void 0?e:t.toString(2).length,i=Math.ceil(r/8);return{nBitLength:r,nByteLength:i}}function yR(t,e,r=!1,i={}){if(t<=kr)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:a,nByteLength:n}=AS(t,e);if(n>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=Lte(t),o=Object.freeze({ORDER:t,BITS:a,BYTES:n,MASK:cR(a),ZERO:kr,ONE:Ct,create:l=>Ht(l,t),isValid:l=>{if(typeof l!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof l}`);return kr<=l&&ll===kr,isOdd:l=>(l&Ct)===Ct,neg:l=>Ht(-l,t),eql:(l,d)=>l===d,sqr:l=>Ht(l*l,t),add:(l,d)=>Ht(l+d,t),sub:(l,d)=>Ht(l-d,t),mul:(l,d)=>Ht(l*d,t),pow:(l,d)=>jte(o,l,d),div:(l,d)=>Ht(l*fR(d,t),t),sqrN:l=>l*l,addN:(l,d)=>l+d,subN:(l,d)=>l-d,mulN:(l,d)=>l*d,inv:l=>fR(l,t),sqrt:i.sqrt||(l=>s(o,l)),invertBatch:l=>Hte(o,l),cmov:(l,d,u)=>u?d:l,toBytes:l=>r?G0(l,n):SS(l,n),fromBytes:l=>{if(l.length!==n)throw new Error(`Fp.fromBytes: expected ${n}, got ${l.length}`);return r?yd(l):uR(l)}});return Object.freeze(o)}function bR(t,e){if(!t.isOdd)throw new Error("Field doesn't have isOdd");let r=t.sqrt(e);return t.isOdd(r)?t.neg(r):r}var $te=BigInt(0),_S=BigInt(1);function vR(t,e){let r=(a,n)=>{let s=n.negate();return a?s:n},i=a=>{let n=Math.ceil(e/a)+1,s=2**(a-1);return{windows:n,windowSize:s}};return{constTimeNegate:r,unsafeLadder(a,n){let s=t.ZERO,o=a;for(;n>$te;)n&_S&&(s=s.add(o)),o=o.double(),n>>=_S;return s},precomputeWindow(a,n){let{windows:s,windowSize:o}=i(n),l=[],d=a,u=d;for(let c=0;c>=k,T>l&&(T-=w,s+=_S);let D=_,V=_+Math.abs(T)-1,R=z%2!==0,B=T<0;T===0?u=u.add(r(R,n[D])):d=d.add(r(B,n[V]))}return{p:d,f:u}},wNAFCached(a,n,s,o){let l=a._WINDOW_SIZE||1,d=n.get(a);return d||(d=this.precomputeWindow(a,l),l!==1&&n.set(a,o(d))),this.wNAF(l,d,s)}}}function SR(t){return gR(t.Fp),bd(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...AS(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}var Ba=BigInt(0),Vi=BigInt(1),j3=BigInt(2),Gte=BigInt(8),Zte={zip215:!0};function Jte(t){let e=SR(t);return bd(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function H3(t){let e=Jte(t),{Fp:r,n:i,prehash:a,hash:n,randomBytes:s,nByteLength:o,h:l}=e,d=j3<{try{return{isValid:!0,value:r.sqrt(y*r.inv(S))}}catch{return{isValid:!1,value:Ba}}}),w=e.adjustScalarBytes||(y=>y),k=e.domain||((y,S,P)=>{if(S.length||P)throw new Error("Contexts/pre-hash are not supported");return y}),z=y=>typeof y=="bigint"&&Baz(y)&&z(S)&&yy===Ba||_(y,d);function D(y,S){if(_(y,S))return y;throw new Error(`Expected valid scalar < ${S}, got ${typeof y} ${y}`)}function V(y){return y===Ba?y:D(y,i)}let R=new Map;function B(y){if(!(y instanceof q))throw new Error("ExtendedPoint expected")}class q{constructor(S,P,x,f){if(this.ex=S,this.ey=P,this.ez=x,this.et=f,!T(S))throw new Error("x required");if(!T(P))throw new Error("y required");if(!T(x))throw new Error("z required");if(!T(f))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(S){if(S instanceof q)throw new Error("extended point not allowed");let{x:P,y:x}=S||{};if(!T(P)||!T(x))throw new Error("invalid affine point");return new q(P,x,Vi,u(P*x))}static normalizeZ(S){let P=r.invertBatch(S.map(x=>x.ez));return S.map((x,f)=>x.toAffine(P[f])).map(q.fromAffine)}_setWindowSize(S){this._WINDOW_SIZE=S,R.delete(this)}assertValidity(){let{a:S,d:P}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:x,ey:f,ez:E,et:U}=this,$=u(x*x),H=u(f*f),J=u(E*E),se=u(J*J),le=u($*S),Oe=u(J*u(le+H)),pe=u(se+u(P*u($*H)));if(Oe!==pe)throw new Error("bad point: equation left != right (1)");let me=u(x*f),Ye=u(E*U);if(me!==Ye)throw new Error("bad point: equation left != right (2)")}equals(S){B(S);let{ex:P,ey:x,ez:f}=this,{ex:E,ey:U,ez:$}=S,H=u(P*$),J=u(E*f),se=u(x*$),le=u(U*f);return H===J&&se===le}is0(){return this.equals(q.ZERO)}negate(){return new q(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:S}=e,{ex:P,ey:x,ez:f}=this,E=u(P*P),U=u(x*x),$=u(j3*u(f*f)),H=u(S*E),J=P+x,se=u(u(J*J)-E-U),le=H+U,Oe=le-$,pe=H-U,me=u(se*Oe),Ye=u(le*pe),Ve=u(se*pe),Fe=u(Oe*le);return new q(me,Ye,Fe,Ve)}add(S){B(S);let{a:P,d:x}=e,{ex:f,ey:E,ez:U,et:$}=this,{ex:H,ey:J,ez:se,et:le}=S;if(P===BigInt(-1)){let ys=u((E-f)*(J+H)),ot=u((E+f)*(J-H)),et=u(ot-ys);if(et===Ba)return this.double();let bs=u(U*j3*le),lt=u($*j3*se),dt=lt+bs,vs=ot+ys,ut=lt-bs,gt=u(dt*et),b1=u(vs*ut),yt=u(dt*ut),bt=u(et*vs);return new q(gt,b1,bt,yt)}let Oe=u(f*H),pe=u(E*J),me=u($*x*le),Ye=u(U*se),Ve=u((f+E)*(H+J)-Oe-pe),Fe=Ye-me,Sa=Ye+me,st=u(pe-P*Oe),mt=u(Ve*Fe),y1=u(Sa*st),ft=u(Ve*st),ht=u(Fe*Sa);return new q(mt,y1,ht,ft)}subtract(S){return this.add(S.negate())}wNAF(S){return G.wNAFCached(this,R,S,q.normalizeZ)}multiply(S){let{p:P,f:x}=this.wNAF(D(S,i));return q.normalizeZ([P,x])[0]}multiplyUnsafe(S){let P=V(S);return P===Ba?j:this.equals(j)||P===Vi?this:this.equals(K)?this.wNAF(P).p:G.unsafeLadder(this,P)}isSmallOrder(){return this.multiplyUnsafe(l).is0()}isTorsionFree(){return G.unsafeLadder(this,i).is0()}toAffine(S){let{ex:P,ey:x,ez:f}=this,E=this.is0();S==null&&(S=E?Gte:r.inv(f));let U=u(P*S),$=u(x*S),H=u(f*S);if(E)return{x:Ba,y:Vi};if(H!==Vi)throw new Error("invZ was invalid");return{x:U,y:$}}clearCofactor(){let{h:S}=e;return S===Vi?this:this.multiplyUnsafe(S)}static fromHex(S,P=!1){let{d:x,a:f}=e,E=r.BYTES;S=dn("pointHex",S,E);let U=S.slice(),$=S[E-1];U[E-1]=$&-129;let H=yd(U);H===Ba||(P?D(H,d):D(H,r.ORDER));let J=u(H*H),se=u(J-Vi),le=u(x*J-f),{isValid:Oe,value:pe}=c(se,le);if(!Oe)throw new Error("Point.fromHex: invalid y coordinate");let me=(pe&Vi)===Vi,Ye=($&128)!==0;if(!P&&pe===Ba&&Ye)throw new Error("Point.fromHex: x=0 and x_0=1");return Ye!==me&&(pe=u(-pe)),q.fromAffine({x:pe,y:H})}static fromPrivateKey(S){return Y(S).point}toRawBytes(){let{x:S,y:P}=this.toAffine(),x=G0(P,r.BYTES);return x[x.length-1]|=S&Vi?128:0,x}toHex(){return U3(this.toRawBytes())}}q.BASE=new q(e.Gx,e.Gy,Vi,u(e.Gx*e.Gy)),q.ZERO=new q(Ba,Vi,Vi,Ba);let{BASE:K,ZERO:j}=q,G=vR(q,o*8);function ne(y){return Ht(y,i)}function oe(y){return ne(yd(y))}function Y(y){let S=o;y=dn("private key",y,S);let P=dn("hashed private key",n(y),2*S),x=w(P.slice(0,S)),f=P.slice(S,2*S),E=oe(x),U=K.multiply(E),$=U.toRawBytes();return{head:x,prefix:f,scalar:E,point:U,pointBytes:$}}function ce(y){return Y(y).pointBytes}function I(y=new Uint8Array,...S){let P=wS(...S);return oe(n(k(P,dn("context",y),!!a)))}function p(y,S,P={}){y=dn("message",y),a&&(y=a(y));let{prefix:x,scalar:f,pointBytes:E}=Y(S),U=I(P.context,x,y),$=K.multiply(U).toRawBytes(),H=I(P.context,$,E,y),J=ne(U+H*f);V(J);let se=wS($,G0(J,r.BYTES));return dn("result",se,o*2)}let h=Zte;function g(y,S,P,x=h){let{context:f,zip215:E}=x,U=r.BYTES;y=dn("signature",y,2*U),S=dn("message",S),a&&(S=a(S));let $=yd(y.slice(U,2*U)),H,J,se;try{H=q.fromHex(P,E),J=q.fromHex(y.slice(0,U),E),se=K.multiplyUnsafe($)}catch{return!1}if(!E&&H.isSmallOrder())return!1;let le=I(f,J.toRawBytes(),H.toRawBytes(),S);return J.add(H.multiplyUnsafe(le)).subtract(se).clearCofactor().equals(q.ZERO)}return K._setWindowSize(8),{CURVE:e,getPublicKey:ce,sign:p,verify:g,ExtendedPoint:q,utils:{getExtendedPublicKey:Y,randomPrivateKey:()=>s(r.BYTES),precompute(y=8,S=q.BASE){return S._setWindowSize(y),S.multiply(BigInt(3)),S}}}}var ES=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),wR=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),Qbe=BigInt(0),Yte=BigInt(1),kS=BigInt(2),Qte=BigInt(5),xR=BigInt(10),Xte=BigInt(20),ere=BigInt(40),AR=BigInt(80);function tre(t){let e=ES,i=t*t%e*t%e,a=Ra(i,kS,e)*i%e,n=Ra(a,Yte,e)*t%e,s=Ra(n,Qte,e)*n%e,o=Ra(s,xR,e)*s%e,l=Ra(o,Xte,e)*o%e,d=Ra(l,ere,e)*l%e,u=Ra(d,AR,e)*d%e,c=Ra(u,AR,e)*d%e,w=Ra(c,xR,e)*s%e;return{pow_p_5_8:Ra(w,kS,e)*t%e,b2:i}}function rre(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function ire(t,e){let r=ES,i=Ht(e*e*e,r),a=Ht(i*i*e,r),n=tre(t*a).pow_p_5_8,s=Ht(t*i*n,r),o=Ht(e*s*s,r),l=s,d=Ht(s*wR,r),u=o===t,c=o===Ht(-t,r),w=o===Ht(-t*wR,r);return u&&(s=l),(c||w)&&(s=d),hR(s,r)&&(s=Ht(-s,r)),{isValid:u||c,value:s}}var Jn=yR(ES,void 0,!0),PS={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:Jn,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:vS,randomBytes:sR,adjustScalarBytes:rre,uvRatio:ire},TS=H3(PS);function _R(t,e,r){if(e.length>255)throw new Error("Context is too big");return aR(hS("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}var Xbe=H3({...PS,domain:_R}),eve=H3({...PS,domain:_R,prehash:vS});var are=(Jn.ORDER+BigInt(3))/BigInt(8),tve=Jn.pow(kS,are),rve=Jn.sqrt(Jn.neg(Jn.ONE)),ive=(Jn.ORDER-BigInt(5))/BigInt(8),ave=BigInt(486662);var nve=bR(Jn,Jn.neg(BigInt(486664)));var sve=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),ove=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),lve=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),dve=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var uve=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var wl=Fr(ea(),1);function kR(){return{generateKeypair:()=>j0(wl.Keypair.generate()),createKeypairFromSecretKey:o=>j0(wl.Keypair.fromSecretKey(o)),createKeypairFromSeed:o=>j0(wl.Keypair.fromSeed(o)),isOnCurve:o=>wl.PublicKey.isOnCurve(_r(jn(o))),findPda:(o,l)=>{let[d,u]=wl.PublicKey.findProgramAddressSync(l,_r(jn(o)));return[Jr(d),u]},sign:(o,l)=>TS.sign(o,l.secretKey.slice(0,32)),verify:(o,l,d)=>TS.verify(l,o,ud(d))}}var zS=()=>({install(t){t.eddsa=kR()}});var ER=Fr(Y7(),1);function PR(){return{send:async t=>{let e=t.headers?Object.entries(t.headers).reduce((d,[u,c])=>({...d,[u.toLowerCase()]:(Array.isArray(c)?c.join(", "):c).toLowerCase()}),{}):{},r=e["content-type"]?.includes("application/json")??!1,i;r&&t.data?i=JSON.stringify(t.data):i=t.data;let a={method:t.method,body:i,headers:e,follow:t.maxRedirects,signal:t.signal,timeout:t.timeout},n=await(0,ER.default)(t.url,a),s=n.headers.get("content-type")?.includes("application/json")??!1,o=await n.text();return{data:(s?JSON.parse(o):void 0)??o,body:o,ok:n.ok,status:n.status,statusText:n.statusText,headers:Object.fromEntries(n.headers.entries())}}}}var IS=()=>({install(t){t.http=PR()}});var $3=class extends Gn{name="ProgramNotRecognizedError";constructor(e,r){let i=!bl(e),a=e,n=r==="*"?"any":`the [${r}]`,s=`The provided program ${i?"name":"address"} [${a}] is not recognized in ${n} cluster. Did you forget to register this program? If so, you may use "context.programs.add(myProgram)" to fix this.`;super(s),this.identifier=e,this.cluster=r}},G3=class extends U0{name="ProgramErrorNotRecognizedError";constructor(e,r){let i=r.code?` of code [${r.code}]`:"",a=`The program [${e.name}] at address [${e.publicKey}] raised an error${i} that is not recognized by the programs registered on the SDK. Please check the underlying program error below for more details.`;super(a,e,r)}};function MS(t,e=[],r={}){let i=[...e],a={...r},n=(T,D="current")=>{let V=l(D),R=_(T);return bl(R)?V.some(B=>B.publicKey===R):V.some(B=>B.name===R)},s=(T,D="current")=>{let V=z(D),R=l(D),B=_(T),q=bl(B)?R.find(K=>K.publicKey===B):R.find(K=>K.name===B);if(!q)throw new $3(B,V);return q},o=(T,D,V)=>{try{return s(T,V).publicKey}catch(R){if(D===void 0)throw R;return jn(D)}},l=(T="current")=>{let D=z(T);return D==="*"?i:i.filter(V=>V.isOnCluster(D))},d=(T,D=!0)=>{!D&&n(T.publicKey,"*")||i.unshift(T)},u=(T,D)=>{a[T]=D,_(T)},c=T=>{delete a[T]},w=()=>MS(t,i,a),k=(T,D)=>{if(!Array.isArray(T.logs)||T.logs.length===0)return null;let V=T.logs.join(` -`),R=/Error processing Instruction (\d+):/,B=T.message.match(R)?.[1]??null,q=/Custom program error: (0x[a-f0-9]+)/i,K=V.match(q)?.[1]??null,j=K?parseInt(K,16):null;if(B===null||j===null)return null;let G=parseInt(B,10),ne=D.message.instructions?.[G]?.programIndex??null,oe=ne?D.message.accounts[ne]:null;if(!oe)return null;let Y;try{Y=s(oe)}catch{return null}return Y.getErrorFromCode(j,T)??new G3(Y,T)},z=T=>T==="current"?t.rpc.getCluster():T,_=(T,D=[])=>{if(bl(T)||a[T]===void 0)return T;let V=[...D,T];if(D.includes(T))throw new Error(`Circular binding detected: ${V.join(" -> ")}`);return _(a[T],V)};return{has:n,get:s,getPublicKey:o,all:l,add:d,bind:u,unbind:c,clone:w,resolveError:k}}var DS=()=>({install(t){t.programs=MS(t)}});var Z3=Fr(ea(),1);function zR(t,e,r){let i=nS(e),a=null,n=()=>(a||(a=new Z3.Connection(e,r)),a),s=async(B,q={})=>{let K=await n().getAccountInfo(_r(B),q);return TR(K,B)},o=async(B,q={})=>(await n().getMultipleAccountsInfo(B.map(_r),q)).map((j,G)=>TR(j,B[G])),l=async(B,q={})=>(await n().getProgramAccounts(_r(B),{...q,filters:q.filters?.map(j=>nre(j))})).map(({pubkey:j,account:G})=>IR(G,Jr(j))),d=async(B,q={})=>{let K=await n().getBlockTime(B);return K?lS(K):null},u=async(B,q={})=>{let K=await n().getBalance(_r(B),q);return Zn(K)},c=async(B,q={})=>{let K=j=>n().getMinimumBalanceForRentExemption(j,q.commitment);if(q.includesHeaderBytes??!1){let j=await K(0),G=BigInt(j)/BigInt(iS);return Zn(G*BigInt(B))}return Zn(await K(B))},w=async(B={})=>n().getLatestBlockhash(B),k=async(B,q={})=>{let K=await n().getTransaction($r.deserialize(B)[0],{commitment:q.commitment,maxSupportedTransactionVersion:0});if(!K)return null;if(!K.meta)throw new Error("Transaction meta is missing.");let{transaction:j,meta:G}=K,ne=H0(j.message),oe=ce=>Jr(new Z3.PublicKey(ce)),Y=ce=>({accountIndex:ce.accountIndex,amount:C3(ce.uiTokenAmount.amount,"splToken",ce.uiTokenAmount.decimals),mint:oe(ce.mint),owner:ce.owner?oe(ce.owner):null});return{message:ne,serializedMessage:t.transactions.serializeMessage(ne),signatures:j.signatures.map($r.serialize),meta:{fee:Zn(G.fee),logs:G.logMessages??[],preBalances:G.preBalances.map(Zn),postBalances:G.postBalances.map(Zn),preTokenBalances:(G.preTokenBalances??[]).map(Y),postTokenBalances:(G.postTokenBalances??[]).map(Y),innerInstructions:G.innerInstructions?.map(ce=>({index:ce.index,instructions:ce.instructions.map(I=>({programIndex:I.programIdIndex,accountIndexes:I.accounts,data:$r.serialize(I.data)}))}))??null,loadedAddresses:{writable:(G.loadedAddresses?.writable??[]).map(Jr),readonly:(G.loadedAddresses?.readonly??[]).map(Jr)},computeUnitsConsumed:G.computeUnitsConsumed?BigInt(G.computeUnitsConsumed):null,err:G.err}}},z=async(B,q={})=>(await n().getSignatureStatuses(B.map(j=>$r.deserialize(j)[0]),{searchTransactionHistory:q?.searchTransactionHistory??!1})).value.map(j=>j?{slot:j.slot,confirmations:j.confirmations,error:j.err,commitment:j.confirmationStatus??null}:null),_=async(B,q={})=>!aS(await u(B,q)),T=async(B,q,K={})=>{let j=await n().requestAirdrop(_r(B),Number(q.basisPoints));if(K.strategy){await R($r.serialize(j),K);return}await R($r.serialize(j),{...K,strategy:{type:"blockhash",...await w()}})},D=async(B,q,K={})=>{let j=n()._rpcClient,G=ore(q?[...q]:[],K.commitment,K.extra);return new Promise((ne,oe)=>{let Y=(ce,I)=>ce?oe(ce):ne(I.result);K.id?j.request(B,G,K.id,Y):j.request(B,G,Y)})},V=async(B,q={})=>{try{let K=await n().sendRawTransaction(t.transactions.serialize(B),q);return $r.serialize(K)}catch(K){let j=null;throw K instanceof Error&&"logs"in K&&(j=t.programs.resolveError(K,B)),j||K}},R=async(B,q)=>n().confirmTransaction(sre(B,q),q.commitment);return{getEndpoint:()=>n().rpcEndpoint,getCluster:()=>i,getAccount:s,getAccounts:o,getProgramAccounts:l,getBlockTime:d,getBalance:u,getRent:c,getSlot:async(B={})=>n().getSlot(B),getLatestBlockhash:w,getTransaction:k,getSignatureStatuses:z,accountExists:_,airdrop:T,call:D,sendTransaction:V,confirmTransaction:R,get connection(){return n()}}}function IR(t,e){return{executable:t.executable,owner:Jr(t.owner),lamports:Zn(t.lamports),rentEpoch:t.rentEpoch,publicKey:e,data:new Uint8Array(t.data)}}function TR(t,e){return t?{...IR(t,e),exists:!0}:{exists:!1,publicKey:e}}function nre(t){if(!("memcmp"in t))return t;let{bytes:e,...r}=t.memcmp;return{memcmp:{...r,bytes:$r.deserialize(e)[0]}}}function sre(t,e){return e.strategy.type==="blockhash"?{...e.strategy,signature:$r.deserialize(t)[0]}:{...e.strategy,signature:$r.deserialize(t)[0],nonceAccountPubkey:_r(e.strategy.nonceAccountPubkey)}}function ore(t,e,r){if(!e&&!r)return t;let i={};return e&&(i.commitment=e),r&&(i={...i,...r}),t.push(i),t}var RS=(t,e)=>({install(r){r.rpc=zR(r,t,e)}});var MR=(t,e=100)=>({...t,getAccounts:async(r,i)=>{let a=sS(r,e).map(s=>t.getAccounts(s,i));return(await Promise.all(a)).flat()}});var BS=(t=100)=>({install(e){e.rpc=MR(e.rpc,t)}});function DR(t={}){return{tuple:tS,array:Da,map:Jv,set:eS,option:Qv,nullable:Yv,struct:$n,enum:Xv,dataEnum:Zv,string:K0,bool:Gv,unit:rS,u8:jt,u16:jv,u32:Ma,u64:Hv,u128:$v,i8:Vv,i16:Fv,i32:Kv,i64:Lv,i128:Uv,f32:qv,f64:Wv,bytes:vl,publicKey:fd}}var CS=(t={})=>({install(e){e.serializer=DR(t)}});var BR=Fr(ea(),1),RR=128,lre=127;function CR(){let t=w=>{let k=mS(w),z=H0(k),_=new BR.VersionedTransaction(k,w.signatures);return{message:z,serializedMessage:i(z),signatures:_.signatures}},e=w=>n().serialize(w),r=w=>n().deserialize(w)[0],i=w=>s().serialize(w),a=w=>s().deserialize(w)[0],n=()=>({...Cv($n([["signatures",Da(vl({size:64}),{size:on()})],["serializedMessage",vl()]]),w=>w,w=>({...w,message:a(w.serializedMessage)})),description:"Transaction"}),s=()=>({description:"TransactionMessage",fixedSize:null,maxSize:null,serialize:w=>o(w.version).serialize(w),deserialize:(w,k=0)=>{let[z]=l().deserialize(w,k);return o(z).deserialize(w,k)}}),o=w=>$n([["version",l()],["header",d()],["accounts",Da(fd(),{size:on()})],["blockhash",K0({encoding:$r,size:32})],["instructions",Da(u(),{size:on()})],["addressLookupTables",Da(c(),{size:w==="legacy"?0:on()})]]),l=()=>({description:"TransactionVersion",fixedSize:null,maxSize:1,serialize:w=>w==="legacy"?new Uint8Array([]):new Uint8Array([RR|w]),deserialize:(w,k=0)=>{let z=w.slice(k);if(z.length===0||!(z[0]&RR))return["legacy",k];let _=z[0]&lre;if(_>0)throw new Gn(`Unsupported transaction version: ${_}.`);return[_,k+1]}}),d=()=>$n([["numRequiredSignatures",jt()],["numReadonlySignedAccounts",jt()],["numReadonlyUnsignedAccounts",jt()]]),u=()=>$n([["programIndex",jt()],["accountIndexes",Da(jt(),{size:on()})],["data",vl({size:on()})]]),c=()=>$n([["publicKey",fd()],["writableIndexes",Da(jt(),{size:on()})],["readonlyIndexes",Da(jt(),{size:on()})]]);return{create:t,serialize:e,deserialize:r,serializeMessage:i,deserializeMessage:a}}var OS=()=>({install(t){t.transactions=CR()}});var OR=(t,e)=>({install(r){r.use(CS()),r.use(DS()),r.use(IS()),r.use(cS()),r.use(zS()),r.use(RS(t,e)),r.use(BS(e?.getAccountsChunkSize)),r.use(OS())}});var NR=(t,e)=>uS().use(OR(t,e));var HU=Fr(UU());var h4=async(t,e)=>{try{let r=new jU.PublicKey(e),i=NR(t.options.endpoint);return await(0,HU.fetchAllDigitalAssetByOwner)(i,Jr(r))}catch{throw new Error(`Failed to fetch NFTs for address: ${e}`)}},vk=async(t,e,r)=>{try{return(await h4(t,e)).filter(s=>{let o=s.metadata.collection;if(o.__option==="Some"&&o.value.key===r)return o.value.key}).map(s=>s.metadata.mint)}catch{throw new Error(`Failed to fetch NFTs for address: ${e}`)}},T9=async(t,e,r,i)=>{let a=await vk(t,e,r),n=i.filter(o=>{if(!a.includes(o))return o}),s={status:!1,message:""};switch(n.length){case 0:return s={status:!0,message:"All NFTs are owned by the user."},s;default:return s={status:!1,message:`The user does not own the following NFTs: ${n.join(", ")}`},s}};var z9=class{connection;options;constructor(e){this.connection=new I9.Connection(e.endpoint),this.options=e}async getOwnerNFTs(e){return await h4(this,e)}async getOwnerNFTAddresses(e,r){return await vk(this,e,r)}async checkNFTsOwner(e,r,i){return await T9(this,e,r,i)}async getCurrentEpoch(){return(await this.connection.getEpochInfo()).epoch}lamportsToSol(e){return e/I9.LAMPORTS_PER_SOL}};var $U=Fr(ea()),GU=async(t,e)=>{let r=new $U.PublicKey(e),i=await t.connection.getAccountInfo(r);if(!i)throw new Error(`Failed to fetch account info for address: ${e}`);return t.lamportsToSol(i.lamports)};var ZU=Fr(ea()),JU=async(t,e)=>{let r=await t.getCurrentEpoch(),i=new ZU.PublicKey(e),a=await t.connection.getInflationReward([i],r-1);return a&&a.length>0&&a[0]?{stakeAccountAddress:e,...a[0]}:null};0&&(module.exports={SolanaUtils,checkOwnerNFTs,lastStakingReward,nftOwnerAddress,stakeAccountBalance}); +`)}};function XD(t){let e=n(async(a,s={})=>{let o=await t.http.send(q3().get(a).withAbortSignal(s.signal));return uS(o.body,a)},"downloadOne");return{download:n(async(a,s={})=>Promise.all(a.map(o=>e(o,s))),"download"),downloadJson:n(async(a,s={})=>(await t.http.send(q3().get(a).withAbortSignal(s.signal))).data,"downloadJson")}}n(XD,"createHttpDownloader");var pS=n(()=>({install(t){t.downloader=XD(t)}}),"httpDownloader");var tR=Kr(ta(),1),rR=require("buffer");var eR=Kr(ta(),1);function Yr(t){return t.toBase58()}n(Yr,"fromWeb3JsPublicKey");function kr(t){return new eR.PublicKey(t)}n(kr,"toWeb3JsPublicKey");function mS(t){return new tR.TransactionInstruction({keys:t.keys.map(e=>({...e,pubkey:kr(e.pubkey)})),programId:kr(t.programId),data:rR.Buffer.from(t.data)})}n(mS,"toWeb3JsInstruction");var ste=Kr(ta(),1);function G0(t){return{publicKey:Yr(t.publicKey),secretKey:t.secretKey}}n(G0,"fromWeb3JsKeypair");var yd=Kr(ta(),1);function Z0(t){return{version:t.version,header:t.header,accounts:t.staticAccountKeys.map(Yr),blockhash:t.recentBlockhash,instructions:t.compiledInstructions.map(e=>({programIndex:e.programIdIndex,accountIndexes:e.accountKeyIndexes,data:new Uint8Array(e.data)})),addressLookupTables:t.addressTableLookups.map(e=>({publicKey:Yr(e.accountKey),writableIndexes:e.writableIndexes,readonlyIndexes:e.readonlyIndexes}))}}n(Z0,"fromWeb3JsMessage");function fS(t){return t.version==="legacy"?yd.Message.compile({payerKey:kr(t.payer),instructions:t.instructions.map(mS),recentBlockhash:t.blockhash}):yd.MessageV0.compile({payerKey:kr(t.payer),instructions:t.instructions.map(mS),recentBlockhash:t.blockhash,addressLookupTableAccounts:t.addressLookupTables?.map(e=>new yd.AddressLookupTableAccount({key:kr(e.publicKey),state:{addresses:e.addresses.map(kr),authority:void 0,deactivationSlot:BigInt(`0x${"ff".repeat(8)}`),lastExtendedSlot:0,lastExtendedSlotStartIndex:0}}))})}n(fS,"toWeb3JsMessageFromInput");function ote(t,...e){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}n(ote,"bytes");function hS(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}n(hS,"exists");function iR(t,e){ote(t);let r=e.outputLen;if(t.lengtht instanceof Uint8Array,"u8a");var F3=n(t=>new DataView(t.buffer,t.byteOffset,t.byteLength),"createView");var lte=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!lte)throw new Error("Non little-endian hardware is not supported");function gS(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}n(gS,"utf8ToBytes");function yS(t){if(typeof t=="string"&&(t=gS(t)),!aR(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}n(yS,"toBytes");function nR(...t){let e=new Uint8Array(t.reduce((i,a)=>i+a.length,0)),r=0;return t.forEach(i=>{if(!aR(i))throw new Error("Uint8Array expected");e.set(i,r),r+=i.length}),e}n(nR,"concatBytes");var V3=class{static{n(this,"Hash")}clone(){return this._cloneInto()}},Mwe={}.toString;function sR(t){let e=n(i=>t().update(yS(i)).digest(),"hashC"),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}n(sR,"wrapConstructor");function oR(t=32){if(W3&&typeof W3.getRandomValues=="function")return W3.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}n(oR,"randomBytes");function dte(t,e,r,i){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,i);let a=BigInt(32),s=BigInt(4294967295),o=Number(r>>a&s),l=Number(r&s),d=i?4:0,u=i?0:4;t.setUint32(e+d,o,i),t.setUint32(e+u,l,i)}n(dte,"setBigUint64");var K3=class extends V3{static{n(this,"SHA2")}constructor(e,r,i,a){super(),this.blockLen=e,this.outputLen=r,this.padOffset=i,this.isLE=a,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=F3(this.buffer)}update(e){hS(this);let{view:r,buffer:i,blockLen:a}=this;e=yS(e);let s=e.length;for(let o=0;oa-o&&(this.process(i,0),o=0);for(let p=o;pc.length)throw new Error("_sha2: outputLen bigger than state");for(let p=0;p>bS&L3)}:{h:Number(t>>bS&L3)|0,l:Number(t&L3)|0}}n(lR,"fromBig");function ute(t,e=!1){let r=new Uint32Array(t.length),i=new Uint32Array(t.length);for(let a=0;aBigInt(t>>>0)<>>0),"toBig"),pte=n((t,e,r)=>t>>>r,"shrSH"),mte=n((t,e,r)=>t<<32-r|e>>>r,"shrSL"),fte=n((t,e,r)=>t>>>r|e<<32-r,"rotrSH"),hte=n((t,e,r)=>t<<32-r|e>>>r,"rotrSL"),gte=n((t,e,r)=>t<<64-r|e>>>r-32,"rotrBH"),yte=n((t,e,r)=>t>>>r-32|e<<64-r,"rotrBL"),bte=n((t,e)=>e,"rotr32H"),vte=n((t,e)=>t,"rotr32L"),Ste=n((t,e,r)=>t<>>32-r,"rotlSH"),wte=n((t,e,r)=>e<>>32-r,"rotlSL"),xte=n((t,e,r)=>e<>>64-r,"rotlBH"),Ate=n((t,e,r)=>t<>>64-r,"rotlBL");function _te(t,e,r,i){let a=(e>>>0)+(i>>>0);return{h:t+r+(a/2**32|0)|0,l:a|0}}n(_te,"add");var kte=n((t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),"add3L"),Ete=n((t,e,r,i)=>e+r+i+(t/2**32|0)|0,"add3H"),Pte=n((t,e,r,i)=>(t>>>0)+(e>>>0)+(r>>>0)+(i>>>0),"add4L"),Tte=n((t,e,r,i,a)=>e+r+i+a+(t/2**32|0)|0,"add4H"),zte=n((t,e,r,i,a)=>(t>>>0)+(e>>>0)+(r>>>0)+(i>>>0)+(a>>>0),"add5L"),Ite=n((t,e,r,i,a,s)=>e+r+i+a+s+(t/2**32|0)|0,"add5H");var Mte={fromBig:lR,split:ute,toBig:cte,shrSH:pte,shrSL:mte,rotrSH:fte,rotrSL:hte,rotrBH:gte,rotrBL:yte,rotr32H:bte,rotr32L:vte,rotlSH:Ste,rotlSL:wte,rotlBH:xte,rotlBL:Ate,add:_te,add3L:kte,add3H:Ete,add4L:Pte,add4H:Tte,add5H:Ite,add5L:zte},ze=Mte;var[Dte,Rte]=(()=>ze.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(t=>BigInt(t))))(),Zs=new Uint32Array(80),Js=new Uint32Array(80),vS=class extends K3{static{n(this,"SHA512")}constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:e,Al:r,Bh:i,Bl:a,Ch:s,Cl:o,Dh:l,Dl:d,Eh:u,El:c,Fh:p,Fl:x,Gh:E,Gl:I,Hh:k,Hl:z}=this;return[e,r,i,a,s,o,l,d,u,c,p,x,E,I,k,z]}set(e,r,i,a,s,o,l,d,u,c,p,x,E,I,k,z){this.Ah=e|0,this.Al=r|0,this.Bh=i|0,this.Bl=a|0,this.Ch=s|0,this.Cl=o|0,this.Dh=l|0,this.Dl=d|0,this.Eh=u|0,this.El=c|0,this.Fh=p|0,this.Fl=x|0,this.Gh=E|0,this.Gl=I|0,this.Hh=k|0,this.Hl=z|0}process(e,r){for(let B=0;B<16;B++,r+=4)Zs[B]=e.getUint32(r),Js[B]=e.getUint32(r+=4);for(let B=16;B<80;B++){let C=Zs[B-15]|0,W=Js[B-15]|0,L=ze.rotrSH(C,W,1)^ze.rotrSH(C,W,8)^ze.shrSH(C,W,7),H=ze.rotrSL(C,W,1)^ze.rotrSL(C,W,8)^ze.shrSL(C,W,7),Z=Zs[B-2]|0,se=Js[B-2]|0,le=ze.rotrSH(Z,se,19)^ze.rotrBH(Z,se,61)^ze.shrSH(Z,se,6),Q=ze.rotrSL(Z,se,19)^ze.rotrBL(Z,se,61)^ze.shrSL(Z,se,6),pe=ze.add4L(H,Q,Js[B-7],Js[B-16]),M=ze.add4H(pe,L,le,Zs[B-7],Zs[B-16]);Zs[B]=M|0,Js[B]=pe|0}let{Ah:i,Al:a,Bh:s,Bl:o,Ch:l,Cl:d,Dh:u,Dl:c,Eh:p,El:x,Fh:E,Fl:I,Gh:k,Gl:z,Hh:R,Hl:F}=this;for(let B=0;B<80;B++){let C=ze.rotrSH(p,x,14)^ze.rotrSH(p,x,18)^ze.rotrBH(p,x,41),W=ze.rotrSL(p,x,14)^ze.rotrSL(p,x,18)^ze.rotrBL(p,x,41),L=p&E^~p&k,H=x&I^~x&z,Z=ze.add5L(F,W,H,Rte[B],Js[B]),se=ze.add5H(Z,R,C,L,Dte[B],Zs[B]),le=Z|0,Q=ze.rotrSH(i,a,28)^ze.rotrBH(i,a,34)^ze.rotrBH(i,a,39),pe=ze.rotrSL(i,a,28)^ze.rotrBL(i,a,34)^ze.rotrBL(i,a,39),M=i&s^i&l^s&l,m=a&o^a&d^o&d;R=k|0,F=z|0,k=E|0,z=I|0,E=p|0,I=x|0,{h:p,l:x}=ze.add(u|0,c|0,se|0,le|0),u=l|0,c=d|0,l=s|0,d=o|0,s=i|0,o=a|0;let g=ze.add3L(le,pe,m);i=ze.add3H(g,se,Q,M),a=g|0}({h:i,l:a}=ze.add(this.Ah|0,this.Al|0,i|0,a|0)),{h:s,l:o}=ze.add(this.Bh|0,this.Bl|0,s|0,o|0),{h:l,l:d}=ze.add(this.Ch|0,this.Cl|0,l|0,d|0),{h:u,l:c}=ze.add(this.Dh|0,this.Dl|0,u|0,c|0),{h:p,l:x}=ze.add(this.Eh|0,this.El|0,p|0,x|0),{h:E,l:I}=ze.add(this.Fh|0,this.Fl|0,E|0,I|0),{h:k,l:z}=ze.add(this.Gh|0,this.Gl|0,k|0,z|0),{h:R,l:F}=ze.add(this.Hh|0,this.Hl|0,R|0,F|0),this.set(i,a,s,o,l,d,u,c,p,x,E,I,k,z,R,F)}roundClean(){Zs.fill(0),Js.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};var SS=sR(()=>new vS);var jwe=BigInt(0),Bte=BigInt(1),Cte=BigInt(2),U3=n(t=>t instanceof Uint8Array,"u8a"),Ote=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function j3(t){if(!U3(t))throw new Error("Uint8Array expected");let e="";for(let r=0;ri+a.length,0)),r=0;return t.forEach(i=>{if(!U3(i))throw new Error("Uint8Array expected");e.set(i,r),r+=i.length}),e}n(xS,"concatBytes");var pR=n(t=>(Cte<typeof t=="bigint",function:t=>typeof t=="function",boolean:t=>typeof t=="boolean",string:t=>typeof t=="string",stringOrUint8Array:t=>typeof t=="string"||t instanceof Uint8Array,isSafeInteger:t=>Number.isSafeInteger(t),array:t=>Array.isArray(t),field:(t,e)=>e.Fp.isValid(t),hash:t=>typeof t=="function"&&Number.isSafeInteger(t.outputLen)};function vd(t,e,r={}){let i=n((a,s,o)=>{let l=Nte[s];if(typeof l!="function")throw new Error(`Invalid validator "${s}", expected function`);let d=t[a];if(!(o&&d===void 0)&&!l(d,t))throw new Error(`Invalid param ${String(a)}=${d} (${typeof d}), expected ${s}`)},"checkField");for(let[a,s]of Object.entries(e))i(a,s,!1);for(let[a,s]of Object.entries(r))i(a,s,!0);return t}n(vd,"validateObject");var Er=BigInt(0),Ot=BigInt(1),wl=BigInt(2),Wte=BigInt(3),AS=BigInt(4),mR=BigInt(5),fR=BigInt(8),Vte=BigInt(9),Fte=BigInt(16);function $t(t,e){let r=t%e;return r>=Er?r:e+r}n($t,"mod");function Kte(t,e,r){if(r<=Er||e 0");if(r===Ot)return Er;let i=Ot;for(;e>Er;)e&Ot&&(i=i*t%r),t=t*t%r,e>>=Ot;return i}n(Kte,"pow");function Ba(t,e,r){let i=t;for(;e-- >Er;)i*=i,i%=r;return i}n(Ba,"pow2");function hR(t,e){if(t===Er||e<=Er)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=$t(t,e),i=e,a=Er,s=Ot,o=Ot,l=Er;for(;r!==Er;){let u=i/r,c=i%r,p=a-o*u,x=s-l*u;i=r,r=c,a=o,s=l,o=p,l=x}if(i!==Ot)throw new Error("invert: does not exist");return $t(a,e)}n(hR,"invert");function Lte(t){let e=(t-Ot)/wl,r,i,a;for(r=t-Ot,i=0;r%wl===Er;r/=wl,i++);for(a=wl;a($t(t,e)&Ot)===Ot,"isNegativeLE"),jte=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function yR(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=jte.reduce((i,a)=>(i[a]="function",i),e);return vd(t,r)}n(yR,"validateField");function Hte(t,e,r){if(r 0");if(r===Er)return t.ONE;if(r===Ot)return e;let i=t.ONE,a=e;for(;r>Er;)r&Ot&&(i=t.mul(i,a)),a=t.sqr(a),r>>=Ot;return i}n(Hte,"FpPow");function $te(t,e){let r=new Array(e.length),i=e.reduce((s,o,l)=>t.is0(o)?s:(r[l]=s,t.mul(s,o)),t.ONE),a=t.inv(i);return e.reduceRight((s,o,l)=>t.is0(o)?s:(r[l]=t.mul(s,r[l]),t.mul(s,o)),a),r}n($te,"FpInvertBatch");function _S(t,e){let r=e!==void 0?e:t.toString(2).length,i=Math.ceil(r/8);return{nBitLength:r,nByteLength:i}}n(_S,"nLength");function bR(t,e,r=!1,i={}){if(t<=Er)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:a,nByteLength:s}=_S(t,e);if(s>2048)throw new Error("Field lengths over 2048 bytes are not supported");let o=Ute(t),l=Object.freeze({ORDER:t,BITS:a,BYTES:s,MASK:pR(a),ZERO:Er,ONE:Ot,create:d=>$t(d,t),isValid:d=>{if(typeof d!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof d}`);return Er<=d&&dd===Er,isOdd:d=>(d&Ot)===Ot,neg:d=>$t(-d,t),eql:(d,u)=>d===u,sqr:d=>$t(d*d,t),add:(d,u)=>$t(d+u,t),sub:(d,u)=>$t(d-u,t),mul:(d,u)=>$t(d*u,t),pow:(d,u)=>Hte(l,d,u),div:(d,u)=>$t(d*hR(u,t),t),sqrN:d=>d*d,addN:(d,u)=>d+u,subN:(d,u)=>d-u,mulN:(d,u)=>d*u,inv:d=>hR(d,t),sqrt:i.sqrt||(d=>o(l,d)),invertBatch:d=>$te(l,d),cmov:(d,u,c)=>c?u:d,toBytes:d=>r?Y0(d,s):wS(d,s),fromBytes:d=>{if(d.length!==s)throw new Error(`Fp.fromBytes: expected ${s}, got ${d.length}`);return r?bd(d):cR(d)}});return Object.freeze(l)}n(bR,"Field");function vR(t,e){if(!t.isOdd)throw new Error("Field doesn't have isOdd");let r=t.sqrt(e);return t.isOdd(r)?t.neg(r):r}n(vR,"FpSqrtEven");var Gte=BigInt(0),kS=BigInt(1);function SR(t,e){let r=n((a,s)=>{let o=s.negate();return a?o:s},"constTimeNegate"),i=n(a=>{let s=Math.ceil(e/a)+1,o=2**(a-1);return{windows:s,windowSize:o}},"opts");return{constTimeNegate:r,unsafeLadder(a,s){let o=t.ZERO,l=a;for(;s>Gte;)s&kS&&(o=o.add(l)),l=l.double(),s>>=kS;return o},precomputeWindow(a,s){let{windows:o,windowSize:l}=i(s),d=[],u=a,c=u;for(let p=0;p>=E,z>d&&(z-=x,o+=kS);let R=k,F=k+Math.abs(z)-1,B=I%2!==0,C=z<0;z===0?c=c.add(r(B,s[R])):u=u.add(r(C,s[F]))}return{p:u,f:c}},wNAFCached(a,s,o,l){let d=a._WINDOW_SIZE||1,u=s.get(a);return u||(u=this.precomputeWindow(a,d),d!==1&&s.set(a,l(u))),this.wNAF(d,u,o)}}}n(SR,"wNAF");function wR(t){return yR(t.Fp),vd(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({..._S(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}n(wR,"validateBasic");var Ca=BigInt(0),Fi=BigInt(1),H3=BigInt(2),Zte=BigInt(8),Jte={zip215:!0};function Yte(t){let e=wR(t);return vd(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}n(Yte,"validateOpts");function $3(t){let e=Yte(t),{Fp:r,n:i,prehash:a,hash:s,randomBytes:o,nByteLength:l,h:d}=e,u=H3<{try{return{isValid:!0,value:r.sqrt(b*r.inv(w))}}catch{return{isValid:!1,value:Ca}}}),x=e.adjustScalarBytes||(b=>b),E=e.domain||((b,w,T)=>{if(w.length||T)throw new Error("Contexts/pre-hash are not supported");return b}),I=n(b=>typeof b=="bigint"&&CaI(b)&&I(w)&&bb===Ca||k(b,u),"in0MaskRange");function R(b,w){if(k(b,w))return b;throw new Error(`Expected valid scalar < ${w}, got ${typeof b} ${b}`)}n(R,"assertInRange");function F(b){return b===Ca?b:R(b,i)}n(F,"assertGE0");let B=new Map;function C(b){if(!(b instanceof W))throw new Error("ExtendedPoint expected")}n(C,"isPoint");class W{static{n(this,"Point")}constructor(w,T,A,h){if(this.ex=w,this.ey=T,this.ez=A,this.et=h,!z(w))throw new Error("x required");if(!z(T))throw new Error("y required");if(!z(A))throw new Error("z required");if(!z(h))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(w){if(w instanceof W)throw new Error("extended point not allowed");let{x:T,y:A}=w||{};if(!z(T)||!z(A))throw new Error("invalid affine point");return new W(T,A,Fi,c(T*A))}static normalizeZ(w){let T=r.invertBatch(w.map(A=>A.ez));return w.map((A,h)=>A.toAffine(T[h])).map(W.fromAffine)}_setWindowSize(w){this._WINDOW_SIZE=w,B.delete(this)}assertValidity(){let{a:w,d:T}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:A,ey:h,ez:P,et:j}=this,G=c(A*A),$=c(h*h),Y=c(P*P),oe=c(Y*Y),de=c(G*w),Ne=c(Y*c(de+$)),me=c(oe+c(T*c(G*$)));if(Ne!==me)throw new Error("bad point: equation left != right (1)");let fe=c(A*h),Qe=c(P*j);if(fe!==Qe)throw new Error("bad point: equation left != right (2)")}equals(w){C(w);let{ex:T,ey:A,ez:h}=this,{ex:P,ey:j,ez:G}=w,$=c(T*G),Y=c(P*h),oe=c(A*G),de=c(j*h);return $===Y&&oe===de}is0(){return this.equals(W.ZERO)}negate(){return new W(c(-this.ex),this.ey,this.ez,c(-this.et))}double(){let{a:w}=e,{ex:T,ey:A,ez:h}=this,P=c(T*T),j=c(A*A),G=c(H3*c(h*h)),$=c(w*P),Y=T+A,oe=c(c(Y*Y)-P-j),de=$+j,Ne=de-G,me=$-j,fe=c(oe*Ne),Qe=c(de*me),Fe=c(oe*me),Ke=c(Ne*de);return new W(fe,Qe,Ke,Fe)}add(w){C(w);let{a:T,d:A}=e,{ex:h,ey:P,ez:j,et:G}=this,{ex:$,ey:Y,ez:oe,et:de}=w;if(T===BigInt(-1)){let bs=c((P-h)*(Y+$)),lt=c((P+h)*(Y-$)),tt=c(lt-bs);if(tt===Ca)return this.double();let vs=c(j*H3*de),dt=c(G*H3*oe),ut=dt+vs,Ss=lt+bs,ct=dt-vs,yt=c(ut*tt),v1=c(Ss*ct),bt=c(ut*ct),vt=c(tt*Ss);return new W(yt,v1,vt,bt)}let Ne=c(h*$),me=c(P*Y),fe=c(G*A*de),Qe=c(j*oe),Fe=c((h+P)*($+Y)-Ne-me),Ke=Qe-fe,wa=Qe+fe,ot=c(me-T*Ne),ft=c(Fe*Ke),b1=c(wa*ot),ht=c(Fe*ot),gt=c(Ke*wa);return new W(ft,b1,gt,ht)}subtract(w){return this.add(w.negate())}wNAF(w){return Z.wNAFCached(this,B,w,W.normalizeZ)}multiply(w){let{p:T,f:A}=this.wNAF(R(w,i));return W.normalizeZ([T,A])[0]}multiplyUnsafe(w){let T=F(w);return T===Ca?H:this.equals(H)||T===Fi?this:this.equals(L)?this.wNAF(T).p:Z.unsafeLadder(this,T)}isSmallOrder(){return this.multiplyUnsafe(d).is0()}isTorsionFree(){return Z.unsafeLadder(this,i).is0()}toAffine(w){let{ex:T,ey:A,ez:h}=this,P=this.is0();w==null&&(w=P?Zte:r.inv(h));let j=c(T*w),G=c(A*w),$=c(h*w);if(P)return{x:Ca,y:Fi};if($!==Fi)throw new Error("invZ was invalid");return{x:j,y:G}}clearCofactor(){let{h:w}=e;return w===Fi?this:this.multiplyUnsafe(w)}static fromHex(w,T=!1){let{d:A,a:h}=e,P=r.BYTES;w=un("pointHex",w,P);let j=w.slice(),G=w[P-1];j[P-1]=G&-129;let $=bd(j);$===Ca||(T?R($,u):R($,r.ORDER));let Y=c($*$),oe=c(Y-Fi),de=c(A*Y-h),{isValid:Ne,value:me}=p(oe,de);if(!Ne)throw new Error("Point.fromHex: invalid y coordinate");let fe=(me&Fi)===Fi,Qe=(G&128)!==0;if(!T&&me===Ca&&Qe)throw new Error("Point.fromHex: x=0 and x_0=1");return Qe!==fe&&(me=c(-me)),W.fromAffine({x:me,y:$})}static fromPrivateKey(w){return Q(w).point}toRawBytes(){let{x:w,y:T}=this.toAffine(),A=Y0(T,r.BYTES);return A[A.length-1]|=w&Fi?128:0,A}toHex(){return j3(this.toRawBytes())}}W.BASE=new W(e.Gx,e.Gy,Fi,c(e.Gx*e.Gy)),W.ZERO=new W(Ca,Fi,Fi,Ca);let{BASE:L,ZERO:H}=W,Z=SR(W,l*8);function se(b){return $t(b,i)}n(se,"modN");function le(b){return se(bd(b))}n(le,"modN_LE");function Q(b){let w=l;b=un("private key",b,w);let T=un("hashed private key",s(b),2*w),A=x(T.slice(0,w)),h=T.slice(w,2*w),P=le(A),j=L.multiply(P),G=j.toRawBytes();return{head:A,prefix:h,scalar:P,point:j,pointBytes:G}}n(Q,"getExtendedPublicKey");function pe(b){return Q(b).pointBytes}n(pe,"getPublicKey");function M(b=new Uint8Array,...w){let T=xS(...w);return le(s(E(T,un("context",b),!!a)))}n(M,"hashDomainToScalar");function m(b,w,T={}){b=un("message",b),a&&(b=a(b));let{prefix:A,scalar:h,pointBytes:P}=Q(w),j=M(T.context,A,b),G=L.multiply(j).toRawBytes(),$=M(T.context,G,P,b),Y=se(j+$*h);F(Y);let oe=xS(G,Y0(Y,r.BYTES));return un("result",oe,l*2)}n(m,"sign");let g=Jte;function y(b,w,T,A=g){let{context:h,zip215:P}=A,j=r.BYTES;b=un("signature",b,2*j),w=un("message",w),a&&(w=a(w));let G=bd(b.slice(j,2*j)),$,Y,oe;try{$=W.fromHex(T,P),Y=W.fromHex(b.slice(0,j),P),oe=L.multiplyUnsafe(G)}catch{return!1}if(!P&&$.isSmallOrder())return!1;let de=M(h,Y.toRawBytes(),$.toRawBytes(),w);return Y.add($.multiplyUnsafe(de)).subtract(oe).clearCofactor().equals(W.ZERO)}return n(y,"verify"),L._setWindowSize(8),{CURVE:e,getPublicKey:pe,sign:m,verify:y,ExtendedPoint:W,utils:{getExtendedPublicKey:Q,randomPrivateKey:()=>o(r.BYTES),precompute(b=8,w=W.BASE){return w._setWindowSize(b),w.multiply(BigInt(3)),w}}}}n($3,"twistedEdwards");var PS=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),xR=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),dxe=BigInt(0),Qte=BigInt(1),ES=BigInt(2),Xte=BigInt(5),AR=BigInt(10),ere=BigInt(20),tre=BigInt(40),_R=BigInt(80);function rre(t){let e=PS,i=t*t%e*t%e,a=Ba(i,ES,e)*i%e,s=Ba(a,Qte,e)*t%e,o=Ba(s,Xte,e)*s%e,l=Ba(o,AR,e)*o%e,d=Ba(l,ere,e)*l%e,u=Ba(d,tre,e)*d%e,c=Ba(u,_R,e)*u%e,p=Ba(c,_R,e)*u%e,x=Ba(p,AR,e)*o%e;return{pow_p_5_8:Ba(x,ES,e)*t%e,b2:i}}n(rre,"ed25519_pow_2_252_3");function ire(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}n(ire,"adjustScalarBytes");function are(t,e){let r=PS,i=$t(e*e*e,r),a=$t(i*i*e,r),s=rre(t*a).pow_p_5_8,o=$t(t*i*s,r),l=$t(e*o*o,r),d=o,u=$t(o*xR,r),c=l===t,p=l===$t(-t,r),x=l===$t(-t*xR,r);return c&&(o=d),(p||x)&&(o=u),gR(o,r)&&(o=$t(-o,r)),{isValid:c||p,value:o}}n(are,"uvRatio");var Yn=bR(PS,void 0,!0),TS={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:Yn,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:SS,randomBytes:oR,adjustScalarBytes:ire,uvRatio:are},zS=$3(TS);function kR(t,e,r){if(e.length>255)throw new Error("Context is too big");return nR(gS("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}n(kR,"ed25519_domain");var uxe=$3({...TS,domain:kR}),cxe=$3({...TS,domain:kR,prehash:SS});var nre=(Yn.ORDER+BigInt(3))/BigInt(8),pxe=Yn.pow(ES,nre),mxe=Yn.sqrt(Yn.neg(Yn.ONE)),fxe=(Yn.ORDER-BigInt(5))/BigInt(8),hxe=BigInt(486662);var gxe=vR(Yn,Yn.neg(BigInt(486664)));var yxe=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),bxe=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),vxe=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),Sxe=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var wxe=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var xl=Kr(ta(),1);function ER(){return{generateKeypair:n(()=>G0(xl.Keypair.generate()),"generateKeypair"),createKeypairFromSecretKey:n(l=>G0(xl.Keypair.fromSecretKey(l)),"createKeypairFromSecretKey"),createKeypairFromSeed:n(l=>G0(xl.Keypair.fromSeed(l)),"createKeypairFromSeed"),isOnCurve:n(l=>xl.PublicKey.isOnCurve(kr(Hn(l))),"isOnCurve"),findPda:n((l,d)=>{let[u,c]=xl.PublicKey.findProgramAddressSync(d,kr(Hn(l)));return[Yr(u),c]},"findPda"),sign:n((l,d)=>zS.sign(l,d.secretKey.slice(0,32)),"sign"),verify:n((l,d,u)=>zS.verify(d,l,cd(u)),"verify")}}n(ER,"createWeb3JsEddsa");var IS=n(()=>({install(t){t.eddsa=ER()}}),"web3JsEddsa");var PR=Kr(Q7(),1);function TR(){return{send:async t=>{let e=t.headers?Object.entries(t.headers).reduce((u,[c,p])=>({...u,[c.toLowerCase()]:(Array.isArray(p)?p.join(", "):p).toLowerCase()}),{}):{},r=e["content-type"]?.includes("application/json")??!1,i;r&&t.data?i=JSON.stringify(t.data):i=t.data;let a={method:t.method,body:i,headers:e,follow:t.maxRedirects,signal:t.signal,timeout:t.timeout},s=await(0,PR.default)(t.url,a),o=s.headers.get("content-type")?.includes("application/json")??!1,l=await s.text();return{data:(o?JSON.parse(l):void 0)??l,body:l,ok:s.ok,status:s.status,statusText:s.statusText,headers:Object.fromEntries(s.headers.entries())}}}}n(TR,"createFetchHttp");var MS=n(()=>({install(t){t.http=TR()}}),"fetchHttp");var G3=class extends Zn{static{n(this,"ProgramNotRecognizedError")}name="ProgramNotRecognizedError";constructor(e,r){let i=!vl(e),a=e,s=r==="*"?"any":`the [${r}]`,o=`The provided program ${i?"name":"address"} [${a}] is not recognized in ${s} cluster. Did you forget to register this program? If so, you may use "context.programs.add(myProgram)" to fix this.`;super(o),this.identifier=e,this.cluster=r}},Z3=class extends $0{static{n(this,"ProgramErrorNotRecognizedError")}name="ProgramErrorNotRecognizedError";constructor(e,r){let i=r.code?` of code [${r.code}]`:"",a=`The program [${e.name}] at address [${e.publicKey}] raised an error${i} that is not recognized by the programs registered on the SDK. Please check the underlying program error below for more details.`;super(a,e,r)}};function DS(t,e=[],r={}){let i=[...e],a={...r},s=n((z,R="current")=>{let F=d(R),B=k(z);return vl(B)?F.some(C=>C.publicKey===B):F.some(C=>C.name===B)},"has"),o=n((z,R="current")=>{let F=I(R),B=d(R),C=k(z),W=vl(C)?B.find(L=>L.publicKey===C):B.find(L=>L.name===C);if(!W)throw new G3(C,F);return W},"get"),l=n((z,R,F)=>{try{return o(z,F).publicKey}catch(B){if(R===void 0)throw B;return Hn(R)}},"getPublicKey"),d=n((z="current")=>{let R=I(z);return R==="*"?i:i.filter(F=>F.isOnCluster(R))},"all"),u=n((z,R=!0)=>{!R&&s(z.publicKey,"*")||i.unshift(z)},"add"),c=n((z,R)=>{a[z]=R,k(z)},"bind"),p=n(z=>{delete a[z]},"unbind"),x=n(()=>DS(t,i,a),"clone"),E=n((z,R)=>{if(!Array.isArray(z.logs)||z.logs.length===0)return null;let F=z.logs.join(` +`),B=/Error processing Instruction (\d+):/,C=z.message.match(B)?.[1]??null,W=/Custom program error: (0x[a-f0-9]+)/i,L=F.match(W)?.[1]??null,H=L?parseInt(L,16):null;if(C===null||H===null)return null;let Z=parseInt(C,10),se=R.message.instructions?.[Z]?.programIndex??null,le=se?R.message.accounts[se]:null;if(!le)return null;let Q;try{Q=o(le)}catch{return null}return Q.getErrorFromCode(H,z)??new Z3(Q,z)},"resolveError"),I=n(z=>z==="current"?t.rpc.getCluster():z,"resolveClusterFilter"),k=n((z,R=[])=>{if(vl(z)||a[z]===void 0)return z;let F=[...R,z];if(R.includes(z))throw new Error(`Circular binding detected: ${F.join(" -> ")}`);return k(a[z],F)},"resolveBinding");return{has:s,get:o,getPublicKey:l,all:d,add:u,bind:c,unbind:p,clone:x,resolveError:E}}n(DS,"createDefaultProgramRepository");var RS=n(()=>({install(t){t.programs=DS(t)}}),"defaultProgramRepository");var J3=Kr(ta(),1);function IR(t,e,r){let i=sS(e),a=null,s=n(()=>(a||(a=new J3.Connection(e,r)),a),"getConnection"),o=n(async(C,W={})=>{let L=await s().getAccountInfo(kr(C),W);return zR(L,C)},"getAccount"),l=n(async(C,W={})=>(await s().getMultipleAccountsInfo(C.map(kr),W)).map((H,Z)=>zR(H,C[Z])),"getAccounts"),d=n(async(C,W={})=>(await s().getProgramAccounts(kr(C),{...W,filters:W.filters?.map(H=>sre(H))})).map(({pubkey:H,account:Z})=>MR(Z,Yr(H))),"getProgramAccounts"),u=n(async(C,W={})=>{let L=await s().getBlockTime(C);return L?dS(L):null},"getBlockTime"),c=n(async(C,W={})=>{let L=await s().getBalance(kr(C),W);return Jn(L)},"getBalance"),p=n(async(C,W={})=>{let L=n(H=>s().getMinimumBalanceForRentExemption(H,W.commitment),"rentFor");if(W.includesHeaderBytes??!1){let H=await L(0),Z=BigInt(H)/BigInt(aS);return Jn(Z*BigInt(C))}return Jn(await L(C))},"getRent"),x=n(async(C={})=>s().getLatestBlockhash(C),"getLatestBlockhash"),E=n(async(C,W={})=>{let L=await s().getTransaction(Gr.deserialize(C)[0],{commitment:W.commitment,maxSupportedTransactionVersion:0});if(!L)return null;if(!L.meta)throw new Error("Transaction meta is missing.");let{transaction:H,meta:Z}=L,se=Z0(H.message),le=n(pe=>Yr(new J3.PublicKey(pe)),"mapPublicKey"),Q=n(pe=>({accountIndex:pe.accountIndex,amount:O3(pe.uiTokenAmount.amount,"splToken",pe.uiTokenAmount.decimals),mint:le(pe.mint),owner:pe.owner?le(pe.owner):null}),"mapTokenBalance");return{message:se,serializedMessage:t.transactions.serializeMessage(se),signatures:H.signatures.map(Gr.serialize),meta:{fee:Jn(Z.fee),logs:Z.logMessages??[],preBalances:Z.preBalances.map(Jn),postBalances:Z.postBalances.map(Jn),preTokenBalances:(Z.preTokenBalances??[]).map(Q),postTokenBalances:(Z.postTokenBalances??[]).map(Q),innerInstructions:Z.innerInstructions?.map(pe=>({index:pe.index,instructions:pe.instructions.map(M=>({programIndex:M.programIdIndex,accountIndexes:M.accounts,data:Gr.serialize(M.data)}))}))??null,loadedAddresses:{writable:(Z.loadedAddresses?.writable??[]).map(Yr),readonly:(Z.loadedAddresses?.readonly??[]).map(Yr)},computeUnitsConsumed:Z.computeUnitsConsumed?BigInt(Z.computeUnitsConsumed):null,err:Z.err}}},"getTransaction"),I=n(async(C,W={})=>(await s().getSignatureStatuses(C.map(H=>Gr.deserialize(H)[0]),{searchTransactionHistory:W?.searchTransactionHistory??!1})).value.map(H=>H?{slot:H.slot,confirmations:H.confirmations,error:H.err,commitment:H.confirmationStatus??null}:null),"getSignatureStatuses"),k=n(async(C,W={})=>!nS(await c(C,W)),"accountExists"),z=n(async(C,W,L={})=>{let H=await s().requestAirdrop(kr(C),Number(W.basisPoints));if(L.strategy){await B(Gr.serialize(H),L);return}await B(Gr.serialize(H),{...L,strategy:{type:"blockhash",...await x()}})},"airdrop"),R=n(async(C,W,L={})=>{let H=s()._rpcClient,Z=lre(W?[...W]:[],L.commitment,L.extra);return new Promise((se,le)=>{let Q=n((pe,M)=>pe?le(pe):se(M.result),"callback");L.id?H.request(C,Z,L.id,Q):H.request(C,Z,Q)})},"call"),F=n(async(C,W={})=>{try{let L=await s().sendRawTransaction(t.transactions.serialize(C),W);return Gr.serialize(L)}catch(L){let H=null;throw L instanceof Error&&"logs"in L&&(H=t.programs.resolveError(L,C)),H||L}},"sendTransaction"),B=n(async(C,W)=>s().confirmTransaction(ore(C,W),W.commitment),"confirmTransaction");return{getEndpoint:()=>s().rpcEndpoint,getCluster:()=>i,getAccount:o,getAccounts:l,getProgramAccounts:d,getBlockTime:u,getBalance:c,getRent:p,getSlot:async(C={})=>s().getSlot(C),getLatestBlockhash:x,getTransaction:E,getSignatureStatuses:I,accountExists:k,airdrop:z,call:R,sendTransaction:F,confirmTransaction:B,get connection(){return s()}}}n(IR,"createWeb3JsRpc");function MR(t,e){return{executable:t.executable,owner:Yr(t.owner),lamports:Jn(t.lamports),rentEpoch:t.rentEpoch,publicKey:e,data:new Uint8Array(t.data)}}n(MR,"parseAccount");function zR(t,e){return t?{...MR(t,e),exists:!0}:{exists:!1,publicKey:e}}n(zR,"parseMaybeAccount");function sre(t){if(!("memcmp"in t))return t;let{bytes:e,...r}=t.memcmp;return{memcmp:{...r,bytes:Gr.deserialize(e)[0]}}}n(sre,"parseDataFilter");function ore(t,e){return e.strategy.type==="blockhash"?{...e.strategy,signature:Gr.deserialize(t)[0]}:{...e.strategy,signature:Gr.deserialize(t)[0],nonceAccountPubkey:kr(e.strategy.nonceAccountPubkey)}}n(ore,"parseConfirmStrategy");function lre(t,e,r){if(!e&&!r)return t;let i={};return e&&(i.commitment=e),r&&(i={...i,...r}),t.push(i),t}n(lre,"resolveCallParams");var BS=n((t,e)=>({install(r){r.rpc=IR(r,t,e)}}),"web3JsRpc");var DR=n((t,e=100)=>({...t,getAccounts:async(r,i)=>{let a=oS(r,e).map(o=>t.getAccounts(o,i));return(await Promise.all(a)).flat()}}),"createChunkGetAccountsRpc");var CS=n((t=100)=>({install(e){e.rpc=DR(e.rpc,t)}}),"chunkGetAccountsRpc");function RR(t={}){return{tuple:rS,array:Ra,map:Yv,set:tS,option:Xv,nullable:Qv,struct:Gn,enum:eS,dataEnum:Jv,string:j0,bool:Zv,unit:iS,u8:Ht,u16:Hv,u32:Da,u64:$v,u128:Gv,i8:Fv,i16:Kv,i32:Lv,i64:Uv,i128:jv,f32:Wv,f64:Vv,bytes:Sl,publicKey:hd}}n(RR,"createDataViewSerializer");var OS=n((t={})=>({install(e){e.serializer=RR(t)}}),"dataViewSerializer");var CR=Kr(ta(),1);var BR=128,dre=127;function OR(){let t=n(x=>{let E=fS(x),I=Z0(E),k=new CR.VersionedTransaction(E,x.signatures);return{message:I,serializedMessage:i(I),signatures:k.signatures}},"create"),e=n(x=>s().serialize(x),"serialize"),r=n(x=>s().deserialize(x)[0],"deserialize"),i=n(x=>o().serialize(x),"serializeMessage"),a=n(x=>o().deserialize(x)[0],"deserializeMessage"),s=n(()=>({...Ov(Gn([["signatures",Ra(Sl({size:64}),{size:ln()})],["serializedMessage",Sl()]]),x=>x,x=>({...x,message:a(x.serializedMessage)})),description:"Transaction"}),"getTransactionSerializer"),o=n(()=>({description:"TransactionMessage",fixedSize:null,maxSize:null,serialize:x=>l(x.version).serialize(x),deserialize:(x,E=0)=>{let[I]=d().deserialize(x,E);return l(I).deserialize(x,E)}}),"getTransactionMessageSerializer"),l=n(x=>Gn([["version",d()],["header",u()],["accounts",Ra(hd(),{size:ln()})],["blockhash",j0({encoding:Gr,size:32})],["instructions",Ra(c(),{size:ln()})],["addressLookupTables",Ra(p(),{size:x==="legacy"?0:ln()})]]),"getTransactionMessageSerializerForVersion"),d=n(()=>({description:"TransactionVersion",fixedSize:null,maxSize:1,serialize:x=>x==="legacy"?new Uint8Array([]):new Uint8Array([BR|x]),deserialize:(x,E=0)=>{let I=x.slice(E);if(I.length===0||!(I[0]&BR))return["legacy",E];let k=I[0]&dre;if(k>0)throw new Zn(`Unsupported transaction version: ${k}.`);return[k,E+1]}}),"getTransactionVersionSerializer"),u=n(()=>Gn([["numRequiredSignatures",Ht()],["numReadonlySignedAccounts",Ht()],["numReadonlyUnsignedAccounts",Ht()]]),"getTransactionMessageHeaderSerializer"),c=n(()=>Gn([["programIndex",Ht()],["accountIndexes",Ra(Ht(),{size:ln()})],["data",Sl({size:ln()})]]),"getCompiledInstructionSerializer"),p=n(()=>Gn([["publicKey",hd()],["writableIndexes",Ra(Ht(),{size:ln()})],["readonlyIndexes",Ra(Ht(),{size:ln()})]]),"getCompiledAddressLookupTableSerializer");return{create:t,serialize:e,deserialize:r,serializeMessage:i,deserializeMessage:a}}n(OR,"createWeb3JsTransactionFactory");var NS=n(()=>({install(t){t.transactions=OR()}}),"web3JsTransactionFactory");var NR=n((t,e)=>({install(r){r.use(OS()),r.use(RS()),r.use(MS()),r.use(pS()),r.use(IS()),r.use(BS(t,e)),r.use(CS(e?.getAccountsChunkSize)),r.use(NS())}}),"defaultPlugins");var qR=n((t,e)=>cS().use(NR(t,e)),"createUmi");var $U=Kr(jU());var b4=n(async(t,e)=>{try{let r=new HU.PublicKey(e),i=qR(t.options.endpoint);return await(0,$U.fetchAllDigitalAssetByOwner)(i,Yr(r))}catch{throw new Error(`Failed to fetch NFTs for address: ${e}`)}},"nftOwnerAddress"),Sk=n(async(t,e,r)=>{try{return(await b4(t,e)).filter(o=>{let l=o.metadata.collection;if(l.__option==="Some"&&l.value.key===r)return l.value.key}).map(o=>o.metadata.mint)}catch{throw new Error(`Failed to fetch NFTs for address: ${e}`)}},"nftCollectionOwnerAddress"),z9=n(async(t,e,r,i)=>{let a=await Sk(t,e,r),s=i.filter(l=>{if(!a.includes(l))return l}),o={status:!1,message:""};switch(s.length){case 0:return o={status:!0,message:"All NFTs are owned by the user."},o;default:return o={status:!1,message:`The user does not own the following NFTs: ${s.join(", ")}`},o}},"checkOwnerNFTs");var I9=class{static{n(this,"SolanaUtils")}connection;options;constructor(e){this.connection=new M9.Connection(e.endpoint),this.options=e}async getOwnerNFTs(e){return await b4(this,e)}async getOwnerNFTAddresses(e,r){return await Sk(this,e,r)}async checkNFTsOwner(e,r,i){return await z9(this,e,r,i)}async getCurrentEpoch(){return(await this.connection.getEpochInfo()).epoch}lamportsToSol(e){return e/M9.LAMPORTS_PER_SOL}};var GU=Kr(ta());var ZU=n(async(t,e)=>{let r=new GU.PublicKey(e),i=await t.connection.getAccountInfo(r);if(!i)throw new Error(`Failed to fetch account info for address: ${e}`);return t.lamportsToSol(i.lamports)},"stakeAccountBalance");var JU=Kr(ta());var YU=n(async(t,e)=>{let r=await t.getCurrentEpoch(),i=new JU.PublicKey(e),a=await t.connection.getInflationReward([i],r-1);return a&&a.length>0&&a[0]?{stakeAccountAddress:e,...a[0]}:null},"lastStakingReward");0&&(module.exports={SolanaUtils,checkOwnerNFTs,lastStakingReward,nftOwnerAddress,stakeAccountBalance}); /*! Bundled license information: @noble/hashes/utils.js: @@ -224,3 +224,4 @@ safe-buffer/index.js: @noble/curves/esm/ed25519.js: (*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) *) */ +//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvc3JjL19hc3NlcnQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvc3JjL2NyeXB0b05vZGUudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvc3JjL3V0aWxzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9Abm9ibGUvaGFzaGVzL3NyYy9fc2hhMi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG5vYmxlL2hhc2hlcy9zcmMvX3U2NC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG5vYmxlL2hhc2hlcy9zcmMvc2hhNTEyLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9Abm9ibGUvY3VydmVzL3NyYy9hYnN0cmFjdC91dGlscy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG5vYmxlL2N1cnZlcy9zcmMvYWJzdHJhY3QvbW9kdWxhci50cyIsICIuLi9ub2RlX21vZHVsZXMvQG5vYmxlL2N1cnZlcy9zcmMvYWJzdHJhY3QvY3VydmUudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bub2JsZS9jdXJ2ZXMvc3JjL2Fic3RyYWN0L2Vkd2FyZHMudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bub2JsZS9jdXJ2ZXMvc3JjL2Fic3RyYWN0L21vbnRnb21lcnkudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bub2JsZS9jdXJ2ZXMvc3JjL2Fic3RyYWN0L2hhc2gtdG8tY3VydmUudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bub2JsZS9jdXJ2ZXMvc3JjL2VkMjU1MTkudHMiLCAiLi4vbm9kZV9tb2R1bGVzL2JuLmpzL2xpYi9ibi5qcyIsICIuLi9ub2RlX21vZHVsZXMvc2FmZS1idWZmZXIvaW5kZXguanMiLCAiLi4vbm9kZV9tb2R1bGVzL2Jhc2UteC9zcmMvaW5kZXguanMiLCAiLi4vbm9kZV9tb2R1bGVzL2JzNTgvaW5kZXguanMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvc3JjL3NoYTI1Ni50cyIsICIuLi9ub2RlX21vZHVsZXMvdGV4dC1lbmNvZGluZy11dGYtOC9saWIvZW5jb2RpbmcubGliLmpzIiwgIi4uL25vZGVfbW9kdWxlcy9ib3JzaC9saWIvaW5kZXguanMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bzb2xhbmEvYnVmZmVyLWxheW91dC9zcmMvTGF5b3V0LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9maWxlLXVyaS10by1wYXRoL2luZGV4LmpzIiwgIi4uL25vZGVfbW9kdWxlcy9iaW5kaW5ncy9iaW5kaW5ncy5qcyIsICIuLi9ub2RlX21vZHVsZXMvYmlnaW50LWJ1ZmZlci9kaXN0L25vZGUuanMiLCAiLi4vbm9kZV9tb2R1bGVzL3N1cGVyc3RydWN0L3NyYy9lcnJvci50cyIsICIuLi9ub2RlX21vZHVsZXMvc3VwZXJzdHJ1Y3Qvc3JjL3V0aWxzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9zdXBlcnN0cnVjdC9zcmMvc3RydWN0LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9zdXBlcnN0cnVjdC9zcmMvc3RydWN0cy91dGlsaXRpZXMudHMiLCAiLi4vbm9kZV9tb2R1bGVzL3N1cGVyc3RydWN0L3NyYy9zdHJ1Y3RzL3R5cGVzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9zdXBlcnN0cnVjdC9zcmMvc3RydWN0cy9jb2VyY2lvbnMudHMiLCAiLi4vbm9kZV9tb2R1bGVzL3N1cGVyc3RydWN0L3NyYy9zdHJ1Y3RzL3JlZmluZW1lbnRzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy91dWlkL2Rpc3QvZXNtLW5vZGUvcm5nLmpzIiwgIi4uL25vZGVfbW9kdWxlcy91dWlkL2Rpc3QvZXNtLW5vZGUvcmVnZXguanMiLCAiLi4vbm9kZV9tb2R1bGVzL3V1aWQvZGlzdC9lc20tbm9kZS92YWxpZGF0ZS5qcyIsICIuLi9ub2RlX21vZHVsZXMvdXVpZC9kaXN0L2VzbS1ub2RlL3N0cmluZ2lmeS5qcyIsICIuLi9ub2RlX21vZHVsZXMvdXVpZC9kaXN0L2VzbS1ub2RlL3YxLmpzIiwgIi4uL25vZGVfbW9kdWxlcy91dWlkL2Rpc3QvZXNtLW5vZGUvcGFyc2UuanMiLCAiLi4vbm9kZV9tb2R1bGVzL3V1aWQvZGlzdC9lc20tbm9kZS92MzUuanMiLCAiLi4vbm9kZV9tb2R1bGVzL3V1aWQvZGlzdC9lc20tbm9kZS9tZDUuanMiLCAiLi4vbm9kZV9tb2R1bGVzL3V1aWQvZGlzdC9lc20tbm9kZS92My5qcyIsICIuLi9ub2RlX21vZHVsZXMvdXVpZC9kaXN0L2VzbS1ub2RlL3Y0LmpzIiwgIi4uL25vZGVfbW9kdWxlcy91dWlkL2Rpc3QvZXNtLW5vZGUvc2hhMS5qcyIsICIuLi9ub2RlX21vZHVsZXMvdXVpZC9kaXN0L2VzbS1ub2RlL3Y1LmpzIiwgIi4uL25vZGVfbW9kdWxlcy91dWlkL2Rpc3QvZXNtLW5vZGUvbmlsLmpzIiwgIi4uL25vZGVfbW9kdWxlcy91dWlkL2Rpc3QvZXNtLW5vZGUvdmVyc2lvbi5qcyIsICIuLi9ub2RlX21vZHVsZXMvdXVpZC9kaXN0L2VzbS1ub2RlL2luZGV4LmpzIiwgIi4uL25vZGVfbW9kdWxlcy9qYXlzb24vbGliL2dlbmVyYXRlUmVxdWVzdC5qcyIsICIuLi9ub2RlX21vZHVsZXMvamF5c29uL2xpYi9jbGllbnQvYnJvd3Nlci9pbmRleC5qcyIsICIuLi9ub2RlX21vZHVsZXMvd2ViaWRsLWNvbnZlcnNpb25zL2xpYi9pbmRleC5qcyIsICIuLi9ub2RlX21vZHVsZXMvd2hhdHdnLXVybC9saWIvdXRpbHMuanMiLCAiLi4vbm9kZV9tb2R1bGVzL3RyNDYvbGliL21hcHBpbmdUYWJsZS5qc29uIiwgIi4uL25vZGVfbW9kdWxlcy90cjQ2L2luZGV4LmpzIiwgIi4uL25vZGVfbW9kdWxlcy93aGF0d2ctdXJsL2xpYi91cmwtc3RhdGUtbWFjaGluZS5qcyIsICIuLi9ub2RlX21vZHVsZXMvd2hhdHdnLXVybC9saWIvVVJMLWltcGwuanMiLCAiLi4vbm9kZV9tb2R1bGVzL3doYXR3Zy11cmwvbGliL1VSTC5qcyIsICIuLi9ub2RlX21vZHVsZXMvd2hhdHdnLXVybC9saWIvcHVibGljLWFwaS5qcyIsICIuLi9ub2RlX21vZHVsZXMvc2FmZXItYnVmZmVyL3NhZmVyLmpzIiwgIi4uL25vZGVfbW9kdWxlcy9pY29udi1saXRlL2xpYi9ib20taGFuZGxpbmcuanMiLCAiLi4vbm9kZV9tb2R1bGVzL2ljb252LWxpdGUvZW5jb2RpbmdzL2ludGVybmFsLmpzIiwgIi4uL25vZGVfbW9kdWxlcy9pY29udi1saXRlL2VuY29kaW5ncy91dGYzMi5qcyIsICIuLi9ub2RlX21vZHVsZXMvaWNvbnYtbGl0ZS9lbmNvZGluZ3MvdXRmMTYuanMiLCAiLi4vbm9kZV9tb2R1bGVzL2ljb252LWxpdGUvZW5jb2RpbmdzL3V0ZjcuanMiLCAiLi4vbm9kZV9tb2R1bGVzL2ljb252LWxpdGUvZW5jb2RpbmdzL3NiY3MtY29kZWMuanMiLCAiLi4vbm9kZV9tb2R1bGVzL2ljb252LWxpdGUvZW5jb2RpbmdzL3NiY3MtZGF0YS5qcyIsICIuLi9ub2RlX21vZHVsZXMvaWNvbnYtbGl0ZS9lbmNvZGluZ3Mvc2Jjcy1kYXRhLWdlbmVyYXRlZC5qcyIsICIuLi9ub2RlX21vZHVsZXMvaWNvbnYtbGl0ZS9lbmNvZGluZ3MvZGJjcy1jb2RlYy5qcyIsICIuLi9ub2RlX21vZHVsZXMvaWNvbnYtbGl0ZS9lbmNvZGluZ3MvdGFibGVzL3NoaWZ0amlzLmpzb24iLCAiLi4vbm9kZV9tb2R1bGVzL2ljb252LWxpdGUvZW5jb2RpbmdzL3RhYmxlcy9ldWNqcC5qc29uIiwgIi4uL25vZGVfbW9kdWxlcy9pY29udi1saXRlL2VuY29kaW5ncy90YWJsZXMvY3A5MzYuanNvbiIsICIuLi9ub2RlX21vZHVsZXMvaWNvbnYtbGl0ZS9lbmNvZGluZ3MvdGFibGVzL2diay1hZGRlZC5qc29uIiwgIi4uL25vZGVfbW9kdWxlcy9pY29udi1saXRlL2VuY29kaW5ncy90YWJsZXMvZ2IxODAzMC1yYW5nZXMuanNvbiIsICIuLi9ub2RlX21vZHVsZXMvaWNvbnYtbGl0ZS9lbmNvZGluZ3MvdGFibGVzL2NwOTQ5Lmpzb24iLCAiLi4vbm9kZV9tb2R1bGVzL2ljb252LWxpdGUvZW5jb2RpbmdzL3RhYmxlcy9jcDk1MC5qc29uIiwgIi4uL25vZGVfbW9kdWxlcy9pY29udi1saXRlL2VuY29kaW5ncy90YWJsZXMvYmlnNS1hZGRlZC5qc29uIiwgIi4uL25vZGVfbW9kdWxlcy9pY29udi1saXRlL2VuY29kaW5ncy9kYmNzLWRhdGEuanMiLCAiLi4vbm9kZV9tb2R1bGVzL2ljb252LWxpdGUvZW5jb2RpbmdzL2luZGV4LmpzIiwgIi4uL25vZGVfbW9kdWxlcy9pY29udi1saXRlL2xpYi9zdHJlYW1zLmpzIiwgIi4uL25vZGVfbW9kdWxlcy9pY29udi1saXRlL2xpYi9pbmRleC5qcyIsICIuLi9ub2RlX21vZHVsZXMvZW5jb2RpbmcvbGliL2VuY29kaW5nLmpzIiwgIi4uL25vZGVfbW9kdWxlcy9ub2RlLWZldGNoL2xpYi9pbmRleC5qcyIsICIuLi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9pbnRlcm9wUmVxdWlyZURlZmF1bHQuanMiLCAiLi4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvdHlwZW9mLmpzIiwgIi4uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL3JlZ2VuZXJhdG9yUnVudGltZS5qcyIsICIuLi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvcmVnZW5lcmF0b3IvaW5kZXguanMiLCAiLi4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvYXN5bmNUb0dlbmVyYXRvci5qcyIsICIuLi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9jbGFzc0NhbGxDaGVjay5qcyIsICIuLi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy90b1ByaW1pdGl2ZS5qcyIsICIuLi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy90b1Byb3BlcnR5S2V5LmpzIiwgIi4uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2NyZWF0ZUNsYXNzLmpzIiwgIi4uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL3NldFByb3RvdHlwZU9mLmpzIiwgIi4uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2luaGVyaXRzLmpzIiwgIi4uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2Fzc2VydFRoaXNJbml0aWFsaXplZC5qcyIsICIuLi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuLmpzIiwgIi4uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2dldFByb3RvdHlwZU9mLmpzIiwgIi4uL25vZGVfbW9kdWxlcy9ldmVudGVtaXR0ZXIzL2luZGV4LmpzIiwgIi4uL25vZGVfbW9kdWxlcy9ycGMtd2Vic29ja2V0cy9kaXN0L2xpYi9jbGllbnQuanMiLCAiLi4vbm9kZV9tb2R1bGVzL3JwYy13ZWJzb2NrZXRzL25vZGVfbW9kdWxlcy93cy9saWIvY29uc3RhbnRzLmpzIiwgIi4uL25vZGVfbW9kdWxlcy9ub2RlLWd5cC1idWlsZC9ub2RlLWd5cC1idWlsZC5qcyIsICIuLi9ub2RlX21vZHVsZXMvbm9kZS1neXAtYnVpbGQvaW5kZXguanMiLCAiLi4vbm9kZV9tb2R1bGVzL2J1ZmZlcnV0aWwvZmFsbGJhY2suanMiLCAiLi4vbm9kZV9tb2R1bGVzL2J1ZmZlcnV0aWwvaW5kZXguanMiLCAiLi4vbm9kZV9tb2R1bGVzL3JwYy13ZWJzb2NrZXRzL25vZGVfbW9kdWxlcy93cy9saWIvYnVmZmVyLXV0aWwuanMiLCAiLi4vbm9kZV9tb2R1bGVzL3JwYy13ZWJzb2NrZXRzL25vZGVfbW9kdWxlcy93cy9saWIvbGltaXRlci5qcyIsICIuLi9ub2RlX21vZHVsZXMvcnBjLXdlYnNvY2tldHMvbm9kZV9tb2R1bGVzL3dzL2xpYi9wZXJtZXNzYWdlLWRlZmxhdGUuanMiLCAiLi4vbm9kZV9tb2R1bGVzL3V0Zi04LXZhbGlkYXRlL2ZhbGxiYWNrLmpzIiwgIi4uL25vZGVfbW9kdWxlcy91dGYtOC12YWxpZGF0ZS9pbmRleC5qcyIsICIuLi9ub2RlX21vZHVsZXMvcnBjLXdlYnNvY2tldHMvbm9kZV9tb2R1bGVzL3dzL2xpYi92YWxpZGF0aW9uLmpzIiwgIi4uL25vZGVfbW9kdWxlcy9ycGMtd2Vic29ja2V0cy9ub2RlX21vZHVsZXMvd3MvbGliL3JlY2VpdmVyLmpzIiwgIi4uL25vZGVfbW9kdWxlcy9ycGMtd2Vic29ja2V0cy9ub2RlX21vZHVsZXMvd3MvbGliL3NlbmRlci5qcyIsICIuLi9ub2RlX21vZHVsZXMvcnBjLXdlYnNvY2tldHMvbm9kZV9tb2R1bGVzL3dzL2xpYi9ldmVudC10YXJnZXQuanMiLCAiLi4vbm9kZV9tb2R1bGVzL3JwYy13ZWJzb2NrZXRzL25vZGVfbW9kdWxlcy93cy9saWIvZXh0ZW5zaW9uLmpzIiwgIi4uL25vZGVfbW9kdWxlcy9ycGMtd2Vic29ja2V0cy9ub2RlX21vZHVsZXMvd3MvbGliL3dlYnNvY2tldC5qcyIsICIuLi9ub2RlX21vZHVsZXMvcnBjLXdlYnNvY2tldHMvbm9kZV9tb2R1bGVzL3dzL2xpYi9zdHJlYW0uanMiLCAiLi4vbm9kZV9tb2R1bGVzL3JwYy13ZWJzb2NrZXRzL25vZGVfbW9kdWxlcy93cy9saWIvc3VicHJvdG9jb2wuanMiLCAiLi4vbm9kZV9tb2R1bGVzL3JwYy13ZWJzb2NrZXRzL25vZGVfbW9kdWxlcy93cy9saWIvd2Vic29ja2V0LXNlcnZlci5qcyIsICIuLi9ub2RlX21vZHVsZXMvcnBjLXdlYnNvY2tldHMvbm9kZV9tb2R1bGVzL3dzL2luZGV4LmpzIiwgIi4uL25vZGVfbW9kdWxlcy9ycGMtd2Vic29ja2V0cy9kaXN0L2xpYi9jbGllbnQvd2Vic29ja2V0LmpzIiwgIi4uL25vZGVfbW9kdWxlcy9Abm9ibGUvaGFzaGVzL3NyYy9zaGEzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9Abm9ibGUvY3VydmVzL3NyYy9hYnN0cmFjdC93ZWllcnN0cmFzcy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG5vYmxlL2hhc2hlcy9zcmMvaG1hYy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG5vYmxlL2N1cnZlcy9zcmMvX3Nob3J0d191dGlscy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG5vYmxlL2N1cnZlcy9zcmMvc2VjcDI1NmsxLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9Ac29sYW5hL3dlYjMuanMvc3JjL3V0aWxzL2VkMjU1MTkudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bzb2xhbmEvd2ViMy5qcy9zcmMvdXRpbHMvdG8tYnVmZmVyLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9Ac29sYW5hL3dlYjMuanMvc3JjL3V0aWxzL2JvcnNoLXNjaGVtYS50cyIsICIuLi9ub2RlX21vZHVsZXMvQHNvbGFuYS93ZWIzLmpzL3NyYy9wdWJsaWNrZXkudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bzb2xhbmEvd2ViMy5qcy9zcmMvYWNjb3VudC50cyIsICIuLi9ub2RlX21vZHVsZXMvQHNvbGFuYS93ZWIzLmpzL3NyYy9icGYtbG9hZGVyLWRlcHJlY2F0ZWQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bzb2xhbmEvd2ViMy5qcy9zcmMvdHJhbnNhY3Rpb24vY29uc3RhbnRzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9Ac29sYW5hL3dlYjMuanMvc3JjL3RyYW5zYWN0aW9uL2V4cGlyeS1jdXN0b20tZXJyb3JzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9Ac29sYW5hL3dlYjMuanMvc3JjL21lc3NhZ2UvYWNjb3VudC1rZXlzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9Ac29sYW5hL3dlYjMuanMvc3JjL2xheW91dC50cyIsICIuLi9ub2RlX21vZHVsZXMvQHNvbGFuYS93ZWIzLmpzL3NyYy91dGlscy9zaG9ydHZlYy1lbmNvZGluZy50cyIsICIuLi9ub2RlX21vZHVsZXMvQHNvbGFuYS93ZWIzLmpzL3NyYy91dGlscy9hc3NlcnQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bzb2xhbmEvd2ViMy5qcy9zcmMvbWVzc2FnZS9jb21waWxlZC1rZXlzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9Ac29sYW5hL3dlYjMuanMvc3JjL21lc3NhZ2UvbGVnYWN5LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9Ac29sYW5hL3dlYjMuanMvc3JjL21lc3NhZ2UvdjAudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bzb2xhbmEvd2ViMy5qcy9zcmMvbWVzc2FnZS92ZXJzaW9uZWQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bzb2xhbmEvd2ViMy5qcy9zcmMvdHJhbnNhY3Rpb24vbGVnYWN5LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9Ac29sYW5hL3dlYjMuanMvc3JjL3RyYW5zYWN0aW9uL21lc3NhZ2UudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bzb2xhbmEvd2ViMy5qcy9zcmMvdHJhbnNhY3Rpb24vdmVyc2lvbmVkLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9Ac29sYW5hL3dlYjMuanMvc3JjL3RpbWluZy50cyIsICIuLi9ub2RlX21vZHVsZXMvQHNvbGFuYS93ZWIzLmpzL3NyYy9zeXN2YXIudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bzb2xhbmEvd2ViMy5qcy9zcmMvdXRpbHMvc2VuZC1hbmQtY29uZmlybS10cmFuc2FjdGlvbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQHNvbGFuYS93ZWIzLmpzL3NyYy91dGlscy9zbGVlcC50cyIsICIuLi9ub2RlX21vZHVsZXMvQHNvbGFuYS93ZWIzLmpzL3NyYy9pbnN0cnVjdGlvbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQHNvbGFuYS93ZWIzLmpzL3NyYy9mZWUtY2FsY3VsYXRvci50cyIsICIuLi9ub2RlX21vZHVsZXMvQHNvbGFuYS93ZWIzLmpzL3NyYy9ub25jZS1hY2NvdW50LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9Ac29sYW5hL3dlYjMuanMvc3JjL3V0aWxzL2JpZ2ludC50cyIsICIuLi9ub2RlX21vZHVsZXMvQHNvbGFuYS93ZWIzLmpzL3NyYy9wcm9ncmFtcy9zeXN0ZW0udHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bzb2xhbmEvd2ViMy5qcy9zcmMvbG9hZGVyLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9Ac29sYW5hL3dlYjMuanMvc3JjL2JwZi1sb2FkZXIudHMiLCAiLi4vbm9kZV9tb2R1bGVzL25vZGVfbW9kdWxlcy8ucG5wbS9tc0AyLjEuMy9ub2RlX21vZHVsZXMvbXMvaW5kZXguanMiLCAiLi4vbm9kZV9tb2R1bGVzL25vZGVfbW9kdWxlcy8ucG5wbS9odW1hbml6ZS1tc0AxLjIuMS9ub2RlX21vZHVsZXMvaHVtYW5pemUtbXMvaW5kZXguanMiLCAiLi4vbm9kZV9tb2R1bGVzL25vZGVfbW9kdWxlcy8ucG5wbS9tc0AyLjEuMi9ub2RlX21vZHVsZXMvbXMvaW5kZXguanMiLCAiLi4vbm9kZV9tb2R1bGVzL25vZGVfbW9kdWxlcy8ucG5wbS9kZWJ1Z0A0LjMuNF9zdXBwb3J0cy1jb2xvckA4LjEuMS9ub2RlX21vZHVsZXMvZGVidWcvc3JjL2NvbW1vbi5qcyIsICIuLi9ub2RlX21vZHVsZXMvbm9kZV9tb2R1bGVzLy5wbnBtL2RlYnVnQDQuMy40X3N1cHBvcnRzLWNvbG9yQDguMS4xL25vZGVfbW9kdWxlcy9kZWJ1Zy9zcmMvYnJvd3Nlci5qcyIsICIuLi9ub2RlX21vZHVsZXMvbm9kZV9tb2R1bGVzLy5wbnBtL3N1cHBvcnRzLWNvbG9yQDguMS4xL25vZGVfbW9kdWxlcy9zdXBwb3J0cy1jb2xvci9icm93c2VyLmpzIiwgIi4uL25vZGVfbW9kdWxlcy9ub2RlX21vZHVsZXMvLnBucG0vZGVidWdANC4zLjRfc3VwcG9ydHMtY29sb3JAOC4xLjEvbm9kZV9tb2R1bGVzL2RlYnVnL3NyYy9ub2RlLmpzIiwgIi4uL25vZGVfbW9kdWxlcy9ub2RlX21vZHVsZXMvLnBucG0vZGVidWdANC4zLjRfc3VwcG9ydHMtY29sb3JAOC4xLjEvbm9kZV9tb2R1bGVzL2RlYnVnL3NyYy9pbmRleC5qcyIsICIuLi9ub2RlX21vZHVsZXMvbm9kZV9tb2R1bGVzLy5wbnBtL2RlcGRAMi4wLjAvbm9kZV9tb2R1bGVzL2RlcGQvaW5kZXguanMiLCAiLi4vbm9kZV9tb2R1bGVzL25vZGVfbW9kdWxlcy8ucG5wbS9hZ2VudGtlZXBhbGl2ZUA0LjMuMC9ub2RlX21vZHVsZXMvYWdlbnRrZWVwYWxpdmUvbGliL2NvbnN0YW50cy5qcyIsICIuLi9ub2RlX21vZHVsZXMvbm9kZV9tb2R1bGVzLy5wbnBtL2FnZW50a2VlcGFsaXZlQDQuMy4wL25vZGVfbW9kdWxlcy9hZ2VudGtlZXBhbGl2ZS9saWIvYWdlbnQuanMiLCAiLi4vbm9kZV9tb2R1bGVzL25vZGVfbW9kdWxlcy8ucG5wbS9hZ2VudGtlZXBhbGl2ZUA0LjMuMC9ub2RlX21vZHVsZXMvYWdlbnRrZWVwYWxpdmUvbGliL2h0dHBzX2FnZW50LmpzIiwgIi4uL25vZGVfbW9kdWxlcy9ub2RlX21vZHVsZXMvLnBucG0vYWdlbnRrZWVwYWxpdmVANC4zLjAvbm9kZV9tb2R1bGVzL2FnZW50a2VlcGFsaXZlL2luZGV4LmpzIiwgIi4uL25vZGVfbW9kdWxlcy9ub2RlX21vZHVsZXMvLnBucG0vZmFzdC1zdGFibGUtc3RyaW5naWZ5QDEuMC4wL25vZGVfbW9kdWxlcy9mYXN0LXN0YWJsZS1zdHJpbmdpZnkvaW5kZXguanMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bzb2xhbmEvd2ViMy5qcy9zcmMvZXBvY2gtc2NoZWR1bGUudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bzb2xhbmEvd2ViMy5qcy9zcmMvZXJyb3JzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9Ac29sYW5hL3dlYjMuanMvc3JjL2ZldGNoLWltcGwudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bzb2xhbmEvd2ViMy5qcy9zcmMvcnBjLXdlYnNvY2tldC50cyIsICIuLi9ub2RlX21vZHVsZXMvQHNvbGFuYS93ZWIzLmpzL3NyYy9hY2NvdW50LWRhdGEudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bzb2xhbmEvd2ViMy5qcy9zcmMvcHJvZ3JhbXMvYWRkcmVzcy1sb29rdXAtdGFibGUvc3RhdGUudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bzb2xhbmEvd2ViMy5qcy9zcmMvdXRpbHMvbWFrZVdlYnNvY2tldFVybC50cyIsICIuLi9ub2RlX21vZHVsZXMvQHNvbGFuYS93ZWIzLmpzL3NyYy9jb25uZWN0aW9uLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9Ac29sYW5hL3dlYjMuanMvc3JjL2tleXBhaXIudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bzb2xhbmEvd2ViMy5qcy9zcmMvcHJvZ3JhbXMvYWRkcmVzcy1sb29rdXAtdGFibGUvaW5kZXgudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bzb2xhbmEvd2ViMy5qcy9zcmMvcHJvZ3JhbXMvY29tcHV0ZS1idWRnZXQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bzb2xhbmEvd2ViMy5qcy9zcmMvcHJvZ3JhbXMvZWQyNTUxOS50cyIsICIuLi9ub2RlX21vZHVsZXMvQHNvbGFuYS93ZWIzLmpzL3NyYy91dGlscy9zZWNwMjU2azEudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bzb2xhbmEvd2ViMy5qcy9zcmMvcHJvZ3JhbXMvc2VjcDI1NmsxLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9Ac29sYW5hL3dlYjMuanMvc3JjL3Byb2dyYW1zL3N0YWtlLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9Ac29sYW5hL3dlYjMuanMvc3JjL3Byb2dyYW1zL3ZvdGUudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bzb2xhbmEvd2ViMy5qcy9zcmMvdmFsaWRhdG9yLWluZm8udHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bzb2xhbmEvd2ViMy5qcy9zcmMvdm90ZS1hY2NvdW50LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9Ac29sYW5hL3dlYjMuanMvc3JjL3V0aWxzL2NsdXN0ZXIudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bzb2xhbmEvd2ViMy5qcy9zcmMvdXRpbHMvc2VuZC1hbmQtY29uZmlybS1yYXctdHJhbnNhY3Rpb24udHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bzb2xhbmEvd2ViMy5qcy9zcmMvaW5kZXgudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1vcHRpb25zL3NyYy9jb21tb24udHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1vcHRpb25zL3NyYy91bndyYXBPcHRpb24udHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1vcHRpb25zL3NyYy91bndyYXBPcHRpb25SZWN1cnNpdmVseS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLW9wdGlvbnMvZGlzdC9janMvaW5kZXguY2pzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtZW5jb2RpbmdzL3NyYy9lcnJvcnMudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1lbmNvZGluZ3Mvc3JjL2Jhc2VYLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtZW5jb2RpbmdzL3NyYy9iYXNlMTAudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1lbmNvZGluZ3Mvc3JjL2Jhc2UxNi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWVuY29kaW5ncy9zcmMvYmFzZTU4LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZS9zcmMvYnl0ZXMudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlL3NyYy9lcnJvcnMudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlL3NyYy9maXhTZXJpYWxpemVyLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZS9zcmMvbWFwU2VyaWFsaXplci50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWNvcmUvc3JjL3JldmVyc2VTZXJpYWxpemVyLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZS9kaXN0L2Nqcy9pbmRleC5janMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1lbmNvZGluZ3Mvc3JjL2Jhc2VYUmVzbGljZS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWVuY29kaW5ncy9zcmMvYmFzZTY0LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtZW5jb2RpbmdzL3NyYy9udWxsQ2hhcmFjdGVycy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWVuY29kaW5ncy9zcmMvdXRmOC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWVuY29kaW5ncy9kaXN0L2Nqcy9pbmRleC5janMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1wdWJsaWMta2V5cy9zcmMvZXJyb3JzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktcHVibGljLWtleXMvc3JjL2NvbW1vbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXB1YmxpYy1rZXlzL2Rpc3QvY2pzL2luZGV4LmNqcyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLW51bWJlcnMvc3JjL2NvbW1vbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLW51bWJlcnMvc3JjL2Vycm9ycy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLW51bWJlcnMvc3JjL3V0aWxzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtbnVtYmVycy9zcmMvZjMyLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtbnVtYmVycy9zcmMvZjY0LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtbnVtYmVycy9zcmMvaTgudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1udW1iZXJzL3NyYy9pMTYudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1udW1iZXJzL3NyYy9pMzIudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1udW1iZXJzL3NyYy9pNjQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1udW1iZXJzL3NyYy9pMTI4LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtbnVtYmVycy9zcmMvdTgudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1udW1iZXJzL3NyYy91MTYudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1udW1iZXJzL3NyYy91MzIudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1udW1iZXJzL3NyYy91NjQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1udW1iZXJzL3NyYy91MTI4LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtbnVtYmVycy9zcmMvc2hvcnRVMTYudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1udW1iZXJzL2Rpc3QvY2pzL2luZGV4LmNqcyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzL3NyYy9lcnJvcnMudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy9zcmMvc3VtU2VyaWFsaXplclNpemVzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMvc3JjL3V0aWxzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMvc3JjL2FycmF5LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMvc3JjL2JpdEFycmF5LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMvc3JjL2Jvb2wudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy9zcmMvYnl0ZXMudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy9zcmMvbWF4U2VyaWFsaXplclNpemVzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMvc3JjL2RhdGFFbnVtLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMvc3JjL21hcC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzL3NyYy9udWxsYWJsZS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzL3NyYy9vcHRpb24udHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy9zcmMvcHVibGljS2V5LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMvc3JjL3NjYWxhckVudW0udHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy9zcmMvc2V0LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMvc3JjL3N0cmluZy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzL3NyYy9zdHJ1Y3QudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy9zcmMvdHVwbGUudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy9zcmMvdW5pdC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzL2Rpc3QvY2pzL2luZGV4LmNqcyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NyYy9zZXJpYWxpemVyc0ludGVybmFsLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc3JjL2Vycm9ycy9VbWlFcnJvci50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NyYy9lcnJvcnMvU2RrRXJyb3IudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zcmMvZXJyb3JzL1VuZXhwZWN0ZWRBY2NvdW50RXJyb3IudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zcmMvZXJyb3JzL0FjY291bnROb3RGb3VuZEVycm9yLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc3JjL0FjY291bnQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zcmMvQmlnSW50LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc3JjL2Vycm9ycy9VbmV4cGVjdGVkQW1vdW50RXJyb3IudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zcmMvZXJyb3JzL0Ftb3VudE1pc21hdGNoRXJyb3IudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zcmMvQW1vdW50LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc3JjL0NsdXN0ZXIudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zcmMvZXJyb3JzL0ludGVyZmFjZUltcGxlbWVudGF0aW9uTWlzc2luZ0Vycm9yLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc3JjL0Rvd25sb2FkZXJJbnRlcmZhY2UudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zcmMvRWRkc2FJbnRlcmZhY2UudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zcmMvSHR0cEludGVyZmFjZS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NyYy9Qcm9ncmFtUmVwb3NpdG9yeUludGVyZmFjZS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NyYy9ScGNJbnRlcmZhY2UudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zcmMvU2VyaWFsaXplckludGVyZmFjZS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NyYy91dGlscy9hcnJheXMudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zcmMvU2lnbmVyLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc3JjL1RyYW5zYWN0aW9uRmFjdG9yeUludGVyZmFjZS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NyYy9VcGxvYWRlckludGVyZmFjZS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NyYy9Db250ZXh0LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc3JjL0RhdGVUaW1lLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc3JjL3V0aWxzL3JhbmRvbVN0cmluZ3MudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zcmMvR2VuZXJpY0ZpbGUudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zcmMvR3BhQnVpbGRlci50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NyYy9IdHRwUmVxdWVzdC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NyYy9UcmFuc2FjdGlvbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NyYy9LZXlwYWlyLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc3JjL1Byb2dyYW0udHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zcmMvU2lnbmVyUGx1Z2lucy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NyYy9UcmFuc2FjdGlvbkJ1aWxkZXIudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zcmMvVHJhbnNhY3Rpb25CdWlsZGVyR3JvdXAudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zcmMvVW1pLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc3JjL2Vycm9ycy9JbnZhbGlkQmFzZVN0cmluZ0Vycm9yLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc3JjL2Vycm9ycy9Qcm9ncmFtRXJyb3IudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9kaXN0L2Nqcy9pbmRleC5janMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9kaXN0L2Nqcy9zZXJpYWxpemVycy5janMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL3R5cGVzL2F1dGhvcml0eVR5cGUudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL3R5cGVzL2F1dGhvcml6YXRpb25EYXRhLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC90eXBlcy9idXJuQXJncy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvdHlwZXMvY29sbGVjdGlvbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvdHlwZXMvY29sbGVjdGlvbkRldGFpbHMudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL3R5cGVzL2NvbGxlY3Rpb25EZXRhaWxzVG9nZ2xlLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC90eXBlcy9jb2xsZWN0aW9uVG9nZ2xlLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC90eXBlcy9jcmVhdGVBcmdzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC90eXBlcy9jcmVhdG9yLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC90eXBlcy9kYXRhLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC90eXBlcy9kYXRhVjIudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL3R5cGVzL2RlbGVnYXRlQXJncy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvdHlwZXMvZXNjcm93QXV0aG9yaXR5LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC90eXBlcy9rZXkudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL3R5cGVzL2xlYWZJbmZvLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC90eXBlcy9sb2NrQXJncy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvdHlwZXMvbWV0YWRhdGFEZWxlZ2F0ZVJvbGUudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL3R5cGVzL21pZ3JhdGlvblR5cGUudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL3R5cGVzL21pbnRBcmdzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC90eXBlcy9taW50TmV3RWRpdGlvbkZyb21NYXN0ZXJFZGl0aW9uVmlhVG9rZW5BcmdzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC90eXBlcy9wYXlsb2FkLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC90eXBlcy9wYXlsb2FkS2V5LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC90eXBlcy9wYXlsb2FkVHlwZS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvdHlwZXMvcHJpbnRBcmdzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC90eXBlcy9wcmludFN1cHBseS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvdHlwZXMvcHJvZ3JhbW1hYmxlQ29uZmlnLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC90eXBlcy9yZXNlcnZhdGlvbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvdHlwZXMvcmVzZXJ2YXRpb25WMS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvdHlwZXMvcmV2b2tlQXJncy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvdHlwZXMvcnVsZVNldFRvZ2dsZS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvdHlwZXMvc2VlZHNWZWMudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL3R5cGVzL3NldENvbGxlY3Rpb25TaXplQXJncy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvdHlwZXMvdG9rZW5EZWxlZ2F0ZVJvbGUudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL3R5cGVzL3Rva2VuU3RhbmRhcmQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL3R5cGVzL3Rva2VuU3RhdGUudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL3R5cGVzL3RyYW5zZmVyQXJncy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvdHlwZXMvdW5sb2NrQXJncy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvdHlwZXMvdXBkYXRlQXJncy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvdHlwZXMvdXNlQXJncy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvdHlwZXMvdXNlTWV0aG9kLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC90eXBlcy91c2VzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC90eXBlcy91c2VzVG9nZ2xlLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC90eXBlcy92ZXJpZmljYXRpb25BcmdzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC90eXBlcy9pbmRleC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvYWNjb3VudHMvY29sbGVjdGlvbkF1dGhvcml0eVJlY29yZC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvYWNjb3VudHMvZWRpdGlvbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvYWNjb3VudHMvZWRpdGlvbk1hcmtlci50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvYWNjb3VudHMvZWRpdGlvbk1hcmtlclYyLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9hY2NvdW50cy9tYXN0ZXJFZGl0aW9uLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9hY2NvdW50cy9tZXRhZGF0YS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9ob29rZWQvZWRpdGlvbk1hcmtlci50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9lcnJvcnMudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvaG9va2VkL21ldGFkYXRhRGVsZWdhdGVSb2xlU2VlZC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2dlbmVyYXRlZC9hY2NvdW50cy9hZGRyZXNzTG9va3VwVGFibGUudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvYWNjb3VudHMvbWludC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2dlbmVyYXRlZC9hY2NvdW50cy9tdWx0aXNpZy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2dlbmVyYXRlZC90eXBlcy9hdXRob3JpdHlUeXBlLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZ2VuZXJhdGVkL3R5cGVzL3Rva2VuU3RhdGUudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvdHlwZXMvaW5kZXgudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvYWNjb3VudHMvdG9rZW4udHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvYWNjb3VudHMvaW5kZXgudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvZXJyb3JzL21wbFN5c3RlbUV4dHJhcy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2dlbmVyYXRlZC9lcnJvcnMvbXBsVG9rZW5FeHRyYXMudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvZXJyb3JzL3NwbEFkZHJlc3NMb29rdXBUYWJsZS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2dlbmVyYXRlZC9lcnJvcnMvc3BsQXNzb2NpYXRlZFRva2VuLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZ2VuZXJhdGVkL2Vycm9ycy9zcGxDb21wdXRlQnVkZ2V0LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZ2VuZXJhdGVkL2Vycm9ycy9zcGxNZW1vLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZ2VuZXJhdGVkL2Vycm9ycy9zcGxTeXN0ZW0udHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvZXJyb3JzL3NwbFRva2VuLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZ2VuZXJhdGVkL2Vycm9ycy9pbmRleC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2dlbmVyYXRlZC9zaGFyZWQvaW5kZXgudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL2FkZE1lbW8udHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL2Ftb3VudFRvVWlBbW91bnQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL2FwcHJvdmVUb2tlbkRlbGVnYXRlLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9hcHByb3ZlVG9rZW5EZWxlZ2F0ZUNoZWNrZWQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL2J1cm5Ub2tlbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvYnVyblRva2VuQ2hlY2tlZC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvY2xvc2VMdXQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL2Nsb3NlVG9rZW4udHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL2NyZWF0ZUFjY291bnQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL2NyZWF0ZUFjY291bnRXaXRoUmVudC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2hvb2tlZC9Bc3NvY2lhdGVkVG9rZW4udHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9ob29rZWQvcmVzb2x2ZXJzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvaG9va2VkL2luZGV4LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9jcmVhdGVBc3NvY2lhdGVkVG9rZW4udHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL2NyZWF0ZUVtcHR5THV0LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9jcmVhdGVJZGVtcG90ZW50QXNzb2NpYXRlZFRva2VuLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9jcmVhdGVUb2tlbklmTWlzc2luZy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvZGVhY3RpdmF0ZUx1dC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvZXh0ZW5kTHV0LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9mcmVlemVMdXQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL2ZyZWV6ZVRva2VuLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9nZXRUb2tlbkRhdGFTaXplLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9pbml0aWFsaXplSW1tdXRhYmxlT3duZXIudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL2luaXRpYWxpemVNaW50LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9pbml0aWFsaXplTWludDIudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL2luaXRpYWxpemVNdWx0aXNpZy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvaW5pdGlhbGl6ZU11bHRpc2lnMi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvaW5pdGlhbGl6ZVRva2VuLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9pbml0aWFsaXplVG9rZW4yLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9pbml0aWFsaXplVG9rZW4zLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9taW50VG9rZW5zVG8udHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL21pbnRUb2tlbnNUb0NoZWNrZWQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3JlY292ZXJOZXN0ZWRBc3NvY2lhdGVkVG9rZW4udHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3JlcXVlc3RIZWFwRnJhbWUudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3JlcXVlc3RVbml0cy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvcmV2b2tlVG9rZW5EZWxlZ2F0ZS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvc2V0QXV0aG9yaXR5LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9zZXRDb21wdXRlVW5pdExpbWl0LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9zZXRDb21wdXRlVW5pdFByaWNlLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9zeW5jTmF0aXZlLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy90aGF3VG9rZW4udHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3RyYW5zZmVyQWxsU29sLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy90cmFuc2ZlclNvbC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvdHJhbnNmZXJUb2tlbnMudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3RyYW5zZmVyVG9rZW5zQ2hlY2tlZC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvdWlBbW91bnRUb0Ftb3VudC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvaW5kZXgudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvcHJvZ3JhbXMvbXBsU3lzdGVtRXh0cmFzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZ2VuZXJhdGVkL3Byb2dyYW1zL21wbFRva2VuRXh0cmFzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZ2VuZXJhdGVkL3Byb2dyYW1zL3NwbEFkZHJlc3NMb29rdXBUYWJsZS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2dlbmVyYXRlZC9wcm9ncmFtcy9zcGxBc3NvY2lhdGVkVG9rZW4udHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9nZW5lcmF0ZWQvcHJvZ3JhbXMvc3BsQ29tcHV0ZUJ1ZGdldC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2dlbmVyYXRlZC9wcm9ncmFtcy9zcGxNZW1vLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZ2VuZXJhdGVkL3Byb2dyYW1zL3NwbFN5c3RlbS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2dlbmVyYXRlZC9wcm9ncmFtcy9zcGxUb2tlbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2dlbmVyYXRlZC9wcm9ncmFtcy9pbmRleC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2dlbmVyYXRlZC9pbmRleC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2NyZWF0ZUx1dC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2NyZWF0ZUx1dEZvclRyYW5zYWN0aW9uQnVpbGRlci50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2NyZWF0ZU1pbnQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9jcmVhdGVNaW50V2l0aEFzc29jaWF0ZWRUb2tlbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRvb2xib3gvc3JjL2NyZWF0ZVRva2VuLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZmV0Y2hBbGxCeU93bmVyLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvZmluZExhcmdlc3RUb2tlbnNCeU1pbnQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9wbHVnaW4udHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b29sYm94L3NyYy9zeXN2YXJzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9vbGJveC9zcmMvaW5kZXgudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZGlnaXRhbEFzc2V0LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2hvb2tlZC9yZXNvbHZlcnMudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvaG9va2VkL2luZGV4LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9hY2NvdW50cy9tZXRhZGF0YURlbGVnYXRlUmVjb3JkLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9hY2NvdW50cy90b2tlbk93bmVkRXNjcm93LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9hY2NvdW50cy90b2tlblJlY29yZC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvYWNjb3VudHMvdXNlQXV0aG9yaXR5UmVjb3JkLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9hY2NvdW50cy9pbmRleC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvZXJyb3JzL21wbFRva2VuTWV0YWRhdGEudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2Vycm9ycy9pbmRleC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvc2hhcmVkL2luZGV4LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvYXBwcm92ZUNvbGxlY3Rpb25BdXRob3JpdHkudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9hcHByb3ZlVXNlQXV0aG9yaXR5LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvYnViYmxlZ3VtU2V0Q29sbGVjdGlvblNpemUudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9idXJuRWRpdGlvbk5mdC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL2J1cm5OZnQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9idXJuVjEudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9jbG9zZUVzY3Jvd0FjY291bnQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9jb2xsZWN0LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvY29udmVydE1hc3RlckVkaXRpb25WMVRvVjIudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9jcmVhdGVFc2Nyb3dBY2NvdW50LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvY3JlYXRlTWFzdGVyRWRpdGlvblYzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvY3JlYXRlTWV0YWRhdGFBY2NvdW50VjMudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9jcmVhdGVWMS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL2RlbGVnYXRlQXV0aG9yaXR5SXRlbVYxLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvZGVsZWdhdGVDb2xsZWN0aW9uSXRlbVYxLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvZGVsZWdhdGVDb2xsZWN0aW9uVjEudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9kZWxlZ2F0ZURhdGFJdGVtVjEudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9kZWxlZ2F0ZURhdGFWMS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL2RlbGVnYXRlTG9ja2VkVHJhbnNmZXJWMS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL2RlbGVnYXRlUHJvZ3JhbW1hYmxlQ29uZmlnSXRlbVYxLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvZGVsZWdhdGVQcm9ncmFtbWFibGVDb25maWdWMS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL2RlbGVnYXRlU2FsZVYxLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvZGVsZWdhdGVTdGFraW5nVjEudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9kZWxlZ2F0ZVN0YW5kYXJkVjEudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9kZWxlZ2F0ZVRyYW5zZmVyVjEudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9kZWxlZ2F0ZVV0aWxpdHlWMS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL2RlcHJlY2F0ZWRNaW50TmV3RWRpdGlvbkZyb21NYXN0ZXJFZGl0aW9uVmlhUHJpbnRpbmdUb2tlbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL2ZyZWV6ZURlbGVnYXRlZEFjY291bnQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9sb2NrVjEudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9taWdyYXRlLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvbWludE5ld0VkaXRpb25Gcm9tTWFzdGVyRWRpdGlvblZpYVRva2VuLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvbWludE5ld0VkaXRpb25Gcm9tTWFzdGVyRWRpdGlvblZpYVZhdWx0UHJveHkudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9taW50VjEudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9wcmludFYxLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvcHVmZk1ldGFkYXRhLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvcmVtb3ZlQ3JlYXRvclZlcmlmaWNhdGlvbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3Jldm9rZUF1dGhvcml0eUl0ZW1WMS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3Jldm9rZUNvbGxlY3Rpb25BdXRob3JpdHkudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9yZXZva2VDb2xsZWN0aW9uSXRlbVYxLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvcmV2b2tlQ29sbGVjdGlvblYxLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvcmV2b2tlRGF0YUl0ZW1WMS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3Jldm9rZURhdGFWMS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3Jldm9rZUxvY2tlZFRyYW5zZmVyVjEudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9yZXZva2VNaWdyYXRpb25WMS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3Jldm9rZVByb2dyYW1tYWJsZUNvbmZpZ0l0ZW1WMS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3Jldm9rZVByb2dyYW1tYWJsZUNvbmZpZ1YxLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvcmV2b2tlU2FsZVYxLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvcmV2b2tlU3Rha2luZ1YxLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvcmV2b2tlU3RhbmRhcmRWMS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3Jldm9rZVRyYW5zZmVyVjEudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9yZXZva2VVc2VBdXRob3JpdHkudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9yZXZva2VVdGlsaXR5VjEudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9zZXRBbmRWZXJpZnlDb2xsZWN0aW9uLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvc2V0QW5kVmVyaWZ5U2l6ZWRDb2xsZWN0aW9uSXRlbS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3NldENvbGxlY3Rpb25TaXplLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvc2V0VG9rZW5TdGFuZGFyZC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3NpZ25NZXRhZGF0YS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3RoYXdEZWxlZ2F0ZWRBY2NvdW50LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvdHJhbnNmZXJPdXRPZkVzY3Jvdy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3RyYW5zZmVyVjEudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy91bmxvY2tWMS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3VudmVyaWZ5Q29sbGVjdGlvbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3VudmVyaWZ5Q29sbGVjdGlvblYxLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvdW52ZXJpZnlDcmVhdG9yVjEudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy91bnZlcmlmeVNpemVkQ29sbGVjdGlvbkl0ZW0udHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy91cGRhdGVBc0F1dGhvcml0eUl0ZW1EZWxlZ2F0ZVYyLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvdXBkYXRlQXNDb2xsZWN0aW9uRGVsZWdhdGVWMi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3VwZGF0ZUFzQ29sbGVjdGlvbkl0ZW1EZWxlZ2F0ZVYyLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvdXBkYXRlQXNEYXRhRGVsZWdhdGVWMi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3VwZGF0ZUFzRGF0YUl0ZW1EZWxlZ2F0ZVYyLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvdXBkYXRlQXNQcm9ncmFtbWFibGVDb25maWdEZWxlZ2F0ZVYyLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvdXBkYXRlQXNQcm9ncmFtbWFibGVDb25maWdJdGVtRGVsZWdhdGVWMi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3VwZGF0ZUFzVXBkYXRlQXV0aG9yaXR5VjIudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy91cGRhdGVNZXRhZGF0YUFjY291bnRWMi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3VwZGF0ZVByaW1hcnlTYWxlSGFwcGVuZWRWaWFUb2tlbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3VwZGF0ZVYxLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvdXNlVjEudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy91dGlsaXplLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2dlbmVyYXRlZC9pbnN0cnVjdGlvbnMvdmVyaWZ5Q29sbGVjdGlvbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3ZlcmlmeUNvbGxlY3Rpb25WMS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3ZlcmlmeUNyZWF0b3JWMS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvaW5zdHJ1Y3Rpb25zL3ZlcmlmeVNpemVkQ29sbGVjdGlvbkl0ZW0udHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luc3RydWN0aW9ucy9pbmRleC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvcHJvZ3JhbXMvbXBsVG9rZW5NZXRhZGF0YS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9nZW5lcmF0ZWQvcHJvZ3JhbXMvaW5kZXgudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZ2VuZXJhdGVkL2luZGV4LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2NyZWF0ZUhlbHBlcnMudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YS9zcmMvZGlnaXRhbEFzc2V0V2l0aFRva2VuLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL2ZldGNoSnNvbk1ldGFkYXRhLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi9tcGwtdG9rZW4tbWV0YWRhdGEvc3JjL3BsdWdpbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vbXBsLXRva2VuLW1ldGFkYXRhL3NyYy9pbmRleC50cyIsICIuLi9zcmMvaW5kZXgudHMiLCAiLi4vc3JjL2xpYi9zb2xhbmFVdGlscy9pbmRleC50cyIsICIuLi9zcmMvbGliL3NvbGFuYVV0aWxzL25mdE93bmVyQWRkcmVzcy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLW9wdGlvbnMvc3JjL2NvbW1vbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLW9wdGlvbnMvc3JjL3Vud3JhcE9wdGlvbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWVuY29kaW5ncy9zcmMvZXJyb3JzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtZW5jb2RpbmdzL3NyYy9iYXNlWC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWVuY29kaW5ncy9zcmMvYmFzZTU4LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZS9zcmMvYnl0ZXMudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlL3NyYy9lcnJvcnMudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlL3NyYy9maXhTZXJpYWxpemVyLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZS9zcmMvbWFwU2VyaWFsaXplci50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWVuY29kaW5ncy9zcmMvbnVsbENoYXJhY3RlcnMudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1lbmNvZGluZ3Mvc3JjL3V0ZjgudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1wdWJsaWMta2V5cy9zcmMvZXJyb3JzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktcHVibGljLWtleXMvc3JjL2NvbW1vbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLW51bWJlcnMvc3JjL2NvbW1vbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLW51bWJlcnMvc3JjL2Vycm9ycy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLW51bWJlcnMvc3JjL3V0aWxzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtbnVtYmVycy9zcmMvZjMyLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtbnVtYmVycy9zcmMvZjY0LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtbnVtYmVycy9zcmMvaTgudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1udW1iZXJzL3NyYy9pMTYudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1udW1iZXJzL3NyYy9pMzIudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1udW1iZXJzL3NyYy9pNjQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1udW1iZXJzL3NyYy9pMTI4LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtbnVtYmVycy9zcmMvdTgudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1udW1iZXJzL3NyYy91MTYudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1udW1iZXJzL3NyYy91MzIudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1udW1iZXJzL3NyYy91NjQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1udW1iZXJzL3NyYy91MTI4LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtbnVtYmVycy9zcmMvc2hvcnRVMTYudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy9zcmMvZXJyb3JzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMvc3JjL3N1bVNlcmlhbGl6ZXJTaXplcy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzL3NyYy91dGlscy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzL3NyYy9hcnJheS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzL3NyYy9ib29sLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMvc3JjL2J5dGVzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMvc3JjL21heFNlcmlhbGl6ZXJTaXplcy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzL3NyYy9kYXRhRW51bS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzL3NyYy9tYXAudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy9zcmMvbnVsbGFibGUudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy9zcmMvb3B0aW9uLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMvc3JjL3B1YmxpY0tleS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzL3NyYy9zY2FsYXJFbnVtLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMvc3JjL3NldC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzL3NyYy9zdHJpbmcudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy9zcmMvc3RydWN0LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMvc3JjL3R1cGxlLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMvc3JjL3VuaXQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zcmMvZXJyb3JzL1VtaUVycm9yLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc3JjL2Vycm9ycy9TZGtFcnJvci50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NyYy9BY2NvdW50LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc3JjL0JpZ0ludC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NyYy9BbW91bnQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zcmMvQ2x1c3Rlci50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NyYy9lcnJvcnMvSW50ZXJmYWNlSW1wbGVtZW50YXRpb25NaXNzaW5nRXJyb3IudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zcmMvRG93bmxvYWRlckludGVyZmFjZS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NyYy9FZGRzYUludGVyZmFjZS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NyYy9IdHRwSW50ZXJmYWNlLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc3JjL1Byb2dyYW1SZXBvc2l0b3J5SW50ZXJmYWNlLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc3JjL1JwY0ludGVyZmFjZS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NyYy9TZXJpYWxpemVySW50ZXJmYWNlLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc3JjL3V0aWxzL2FycmF5cy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NyYy9TaWduZXIudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zcmMvVHJhbnNhY3Rpb25GYWN0b3J5SW50ZXJmYWNlLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc3JjL1VwbG9hZGVySW50ZXJmYWNlLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc3JjL0NvbnRleHQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zcmMvRGF0ZVRpbWUudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zcmMvdXRpbHMvcmFuZG9tU3RyaW5ncy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NyYy9HZW5lcmljRmlsZS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NyYy9IdHRwUmVxdWVzdC50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NyYy9VbWkudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zcmMvZXJyb3JzL1Byb2dyYW1FcnJvci50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLWRvd25sb2FkZXItaHR0cC9zcmMvY3JlYXRlSHR0cERvd25sb2FkZXIudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1kb3dubG9hZGVyLWh0dHAvc3JjL3BsdWdpbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXdlYjNqcy1hZGFwdGVycy9zcmMvUHVibGljS2V5LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktd2ViM2pzLWFkYXB0ZXJzL3NyYy9JbnN0cnVjdGlvbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXdlYjNqcy1hZGFwdGVycy9zcmMvS2V5cGFpci50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXdlYjNqcy1hZGFwdGVycy9zcmMvVHJhbnNhY3Rpb25NZXNzYWdlLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9Abm9ibGUvaGFzaGVzL3NyYy9fYXNzZXJ0LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9Abm9ibGUvaGFzaGVzL3NyYy9jcnlwdG9Ob2RlLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9Abm9ibGUvaGFzaGVzL3NyYy91dGlscy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG5vYmxlL2hhc2hlcy9zcmMvX3NoYTIudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvc3JjL191NjQudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bub2JsZS9oYXNoZXMvc3JjL3NoYTUxMi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG5vYmxlL2N1cnZlcy9zcmMvYWJzdHJhY3QvdXRpbHMudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bub2JsZS9jdXJ2ZXMvc3JjL2Fic3RyYWN0L21vZHVsYXIudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0Bub2JsZS9jdXJ2ZXMvc3JjL2Fic3RyYWN0L2N1cnZlLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9Abm9ibGUvY3VydmVzL3NyYy9hYnN0cmFjdC9lZHdhcmRzLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9Abm9ibGUvY3VydmVzL3NyYy9lZDI1NTE5LnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktZWRkc2Etd2ViM2pzL3NyYy9jcmVhdGVXZWIzSnNFZGRzYS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLWVkZHNhLXdlYjNqcy9zcmMvcGx1Z2luLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktaHR0cC1mZXRjaC9zcmMvY3JlYXRlRmV0Y2hIdHRwLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktaHR0cC1mZXRjaC9zcmMvcGx1Z2luLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktcHJvZ3JhbS1yZXBvc2l0b3J5L3NyYy9lcnJvcnMudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1wcm9ncmFtLXJlcG9zaXRvcnkvc3JjL2NyZWF0ZURlZmF1bHRQcm9ncmFtUmVwb3NpdG9yeS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXByb2dyYW0tcmVwb3NpdG9yeS9zcmMvcGx1Z2luLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktcnBjLXdlYjNqcy9zcmMvY3JlYXRlV2ViM0pzUnBjLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktcnBjLXdlYjNqcy9zcmMvcGx1Z2luLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktcnBjLWNodW5rLWdldC1hY2NvdW50cy9zcmMvY3JlYXRlQ2h1bmtHZXRBY2NvdW50c1JwYy50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXJwYy1jaHVuay1nZXQtYWNjb3VudHMvc3JjL3BsdWdpbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXItZGF0YS12aWV3L3NyYy9jcmVhdGVEYXRhVmlld1NlcmlhbGl6ZXIudHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVyLWRhdGEtdmlldy9zcmMvcGx1Z2luLnRzIiwgIi4uL25vZGVfbW9kdWxlcy9AbWV0YXBsZXgtZm91bmRhdGlvbi91bWktdHJhbnNhY3Rpb24tZmFjdG9yeS13ZWIzanMvc3JjL2NyZWF0ZVdlYjNKc1RyYW5zYWN0aW9uRmFjdG9yeS50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXRyYW5zYWN0aW9uLWZhY3Rvcnktd2ViM2pzL3NyYy9wbHVnaW4udHMiLCAiLi4vbm9kZV9tb2R1bGVzL0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1idW5kbGUtZGVmYXVsdHMvc3JjL3BsdWdpbi50cyIsICIuLi9ub2RlX21vZHVsZXMvQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLWJ1bmRsZS1kZWZhdWx0cy9zcmMvaW5kZXgudHMiLCAiLi4vc3JjL2xpYi9zb2xhbmFVdGlscy9zdGFrZUFjY291bnRCYWxhbmNlLnRzIiwgIi4uL3NyYy9saWIvc29sYW5hVXRpbHMvbGFzdFN0YWtpbmdSZXdhcmQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImZ1bmN0aW9uIG51bWJlcihuOiBudW1iZXIpIHtcbiAgaWYgKCFOdW1iZXIuaXNTYWZlSW50ZWdlcihuKSB8fCBuIDwgMCkgdGhyb3cgbmV3IEVycm9yKGBXcm9uZyBwb3NpdGl2ZSBpbnRlZ2VyOiAke259YCk7XG59XG5cbmZ1bmN0aW9uIGJvb2woYjogYm9vbGVhbikge1xuICBpZiAodHlwZW9mIGIgIT09ICdib29sZWFuJykgdGhyb3cgbmV3IEVycm9yKGBFeHBlY3RlZCBib29sZWFuLCBub3QgJHtifWApO1xufVxuXG5mdW5jdGlvbiBieXRlcyhiOiBVaW50OEFycmF5IHwgdW5kZWZpbmVkLCAuLi5sZW5ndGhzOiBudW1iZXJbXSkge1xuICBpZiAoIShiIGluc3RhbmNlb2YgVWludDhBcnJheSkpIHRocm93IG5ldyBFcnJvcignRXhwZWN0ZWQgVWludDhBcnJheScpO1xuICBpZiAobGVuZ3Rocy5sZW5ndGggPiAwICYmICFsZW5ndGhzLmluY2x1ZGVzKGIubGVuZ3RoKSlcbiAgICB0aHJvdyBuZXcgRXJyb3IoYEV4cGVjdGVkIFVpbnQ4QXJyYXkgb2YgbGVuZ3RoICR7bGVuZ3Roc30sIG5vdCBvZiBsZW5ndGg9JHtiLmxlbmd0aH1gKTtcbn1cblxudHlwZSBIYXNoID0ge1xuICAoZGF0YTogVWludDhBcnJheSk6IFVpbnQ4QXJyYXk7XG4gIGJsb2NrTGVuOiBudW1iZXI7XG4gIG91dHB1dExlbjogbnVtYmVyO1xuICBjcmVhdGU6IGFueTtcbn07XG5mdW5jdGlvbiBoYXNoKGhhc2g6IEhhc2gpIHtcbiAgaWYgKHR5cGVvZiBoYXNoICE9PSAnZnVuY3Rpb24nIHx8IHR5cGVvZiBoYXNoLmNyZWF0ZSAhPT0gJ2Z1bmN0aW9uJylcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0hhc2ggc2hvdWxkIGJlIHdyYXBwZWQgYnkgdXRpbHMud3JhcENvbnN0cnVjdG9yJyk7XG4gIG51bWJlcihoYXNoLm91dHB1dExlbik7XG4gIG51bWJlcihoYXNoLmJsb2NrTGVuKTtcbn1cblxuZnVuY3Rpb24gZXhpc3RzKGluc3RhbmNlOiBhbnksIGNoZWNrRmluaXNoZWQgPSB0cnVlKSB7XG4gIGlmIChpbnN0YW5jZS5kZXN0cm95ZWQpIHRocm93IG5ldyBFcnJvcignSGFzaCBpbnN0YW5jZSBoYXMgYmVlbiBkZXN0cm95ZWQnKTtcbiAgaWYgKGNoZWNrRmluaXNoZWQgJiYgaW5zdGFuY2UuZmluaXNoZWQpIHRocm93IG5ldyBFcnJvcignSGFzaCNkaWdlc3QoKSBoYXMgYWxyZWFkeSBiZWVuIGNhbGxlZCcpO1xufVxuZnVuY3Rpb24gb3V0cHV0KG91dDogYW55LCBpbnN0YW5jZTogYW55KSB7XG4gIGJ5dGVzKG91dCk7XG4gIGNvbnN0IG1pbiA9IGluc3RhbmNlLm91dHB1dExlbjtcbiAgaWYgKG91dC5sZW5ndGggPCBtaW4pIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYGRpZ2VzdEludG8oKSBleHBlY3RzIG91dHB1dCBidWZmZXIgb2YgbGVuZ3RoIGF0IGxlYXN0ICR7bWlufWApO1xuICB9XG59XG5cbmV4cG9ydCB7IG51bWJlciwgYm9vbCwgYnl0ZXMsIGhhc2gsIGV4aXN0cywgb3V0cHV0IH07XG5cbmNvbnN0IGFzc2VydCA9IHsgbnVtYmVyLCBib29sLCBieXRlcywgaGFzaCwgZXhpc3RzLCBvdXRwdXQgfTtcbmV4cG9ydCBkZWZhdWx0IGFzc2VydDtcbiIsICIvLyBXZSB1c2UgV2ViQ3J5cHRvIGFrYSBnbG9iYWxUaGlzLmNyeXB0bywgd2hpY2ggZXhpc3RzIGluIGJyb3dzZXJzIGFuZCBub2RlLmpzIDE2Ky5cbi8vIFNlZSB1dGlscy50cyBmb3IgZGV0YWlscy5cbi8vIFRoZSBmaWxlIHdpbGwgdGhyb3cgb24gbm9kZS5qcyAxNCBhbmQgZWFybGllci5cbi8vIEB0cy1pZ25vcmVcbmltcG9ydCAqIGFzIG5jIGZyb20gJ25vZGU6Y3J5cHRvJztcbmV4cG9ydCBjb25zdCBjcnlwdG8gPVxuICBuYyAmJiB0eXBlb2YgbmMgPT09ICdvYmplY3QnICYmICd3ZWJjcnlwdG8nIGluIG5jID8gKG5jLndlYmNyeXB0byBhcyBhbnkpIDogdW5kZWZpbmVkO1xuIiwgIi8qISBub2JsZS1oYXNoZXMgLSBNSVQgTGljZW5zZSAoYykgMjAyMiBQYXVsIE1pbGxlciAocGF1bG1pbGxyLmNvbSkgKi9cblxuLy8gV2UgdXNlIFdlYkNyeXB0byBha2EgZ2xvYmFsVGhpcy5jcnlwdG8sIHdoaWNoIGV4aXN0cyBpbiBicm93c2VycyBhbmQgbm9kZS5qcyAxNisuXG4vLyBub2RlLmpzIHZlcnNpb25zIGVhcmxpZXIgdGhhbiB2MTkgZG9uJ3QgZGVjbGFyZSBpdCBpbiBnbG9iYWwgc2NvcGUuXG4vLyBGb3Igbm9kZS5qcywgcGFja2FnZS5qc29uI2V4cG9ydHMgZmllbGQgbWFwcGluZyByZXdyaXRlcyBpbXBvcnRcbi8vIGZyb20gYGNyeXB0b2AgdG8gYGNyeXB0b05vZGVgLCB3aGljaCBpbXBvcnRzIG5hdGl2ZSBtb2R1bGUuXG4vLyBNYWtlcyB0aGUgdXRpbHMgdW4taW1wb3J0YWJsZSBpbiBicm93c2VycyB3aXRob3V0IGEgYnVuZGxlci5cbi8vIE9uY2Ugbm9kZS5qcyAxOCBpcyBkZXByZWNhdGVkLCB3ZSBjYW4ganVzdCBkcm9wIHRoZSBpbXBvcnQuXG5pbXBvcnQgeyBjcnlwdG8gfSBmcm9tICdAbm9ibGUvaGFzaGVzL2NyeXB0byc7XG5cbi8vIHByZXR0aWVyLWlnbm9yZVxuZXhwb3J0IHR5cGUgVHlwZWRBcnJheSA9IEludDhBcnJheSB8IFVpbnQ4Q2xhbXBlZEFycmF5IHwgVWludDhBcnJheSB8XG4gIFVpbnQxNkFycmF5IHwgSW50MTZBcnJheSB8IFVpbnQzMkFycmF5IHwgSW50MzJBcnJheTtcblxuY29uc3QgdThhID0gKGE6IGFueSk6IGEgaXMgVWludDhBcnJheSA9PiBhIGluc3RhbmNlb2YgVWludDhBcnJheTtcbi8vIENhc3QgYXJyYXkgdG8gZGlmZmVyZW50IHR5cGVcbmV4cG9ydCBjb25zdCB1OCA9IChhcnI6IFR5cGVkQXJyYXkpID0+IG5ldyBVaW50OEFycmF5KGFyci5idWZmZXIsIGFyci5ieXRlT2Zmc2V0LCBhcnIuYnl0ZUxlbmd0aCk7XG5leHBvcnQgY29uc3QgdTMyID0gKGFycjogVHlwZWRBcnJheSkgPT5cbiAgbmV3IFVpbnQzMkFycmF5KGFyci5idWZmZXIsIGFyci5ieXRlT2Zmc2V0LCBNYXRoLmZsb29yKGFyci5ieXRlTGVuZ3RoIC8gNCkpO1xuXG4vLyBDYXN0IGFycmF5IHRvIHZpZXdcbmV4cG9ydCBjb25zdCBjcmVhdGVWaWV3ID0gKGFycjogVHlwZWRBcnJheSkgPT5cbiAgbmV3IERhdGFWaWV3KGFyci5idWZmZXIsIGFyci5ieXRlT2Zmc2V0LCBhcnIuYnl0ZUxlbmd0aCk7XG5cbi8vIFRoZSByb3RhdGUgcmlnaHQgKGNpcmN1bGFyIHJpZ2h0IHNoaWZ0KSBvcGVyYXRpb24gZm9yIHVpbnQzMlxuZXhwb3J0IGNvbnN0IHJvdHIgPSAod29yZDogbnVtYmVyLCBzaGlmdDogbnVtYmVyKSA9PiAod29yZCA8PCAoMzIgLSBzaGlmdCkpIHwgKHdvcmQgPj4+IHNoaWZ0KTtcblxuLy8gYmlnLWVuZGlhbiBoYXJkd2FyZSBpcyByYXJlLiBKdXN0IGluIGNhc2Ugc29tZW9uZSBzdGlsbCBkZWNpZGVzIHRvIHJ1biBoYXNoZXM6XG4vLyBlYXJseS10aHJvdyBhbiBlcnJvciBiZWNhdXNlIHdlIGRvbid0IHN1cHBvcnQgQkUgeWV0LlxuZXhwb3J0IGNvbnN0IGlzTEUgPSBuZXcgVWludDhBcnJheShuZXcgVWludDMyQXJyYXkoWzB4MTEyMjMzNDRdKS5idWZmZXIpWzBdID09PSAweDQ0O1xuaWYgKCFpc0xFKSB0aHJvdyBuZXcgRXJyb3IoJ05vbiBsaXR0bGUtZW5kaWFuIGhhcmR3YXJlIGlzIG5vdCBzdXBwb3J0ZWQnKTtcblxuY29uc3QgaGV4ZXMgPSAvKiBAX19QVVJFX18gKi8gQXJyYXkuZnJvbSh7IGxlbmd0aDogMjU2IH0sIChfLCBpKSA9PlxuICBpLnRvU3RyaW5nKDE2KS5wYWRTdGFydCgyLCAnMCcpXG4pO1xuLyoqXG4gKiBAZXhhbXBsZSBieXRlc1RvSGV4KFVpbnQ4QXJyYXkuZnJvbShbMHhjYSwgMHhmZSwgMHgwMSwgMHgyM10pKSAvLyAnY2FmZTAxMjMnXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBieXRlc1RvSGV4KGJ5dGVzOiBVaW50OEFycmF5KTogc3RyaW5nIHtcbiAgaWYgKCF1OGEoYnl0ZXMpKSB0aHJvdyBuZXcgRXJyb3IoJ1VpbnQ4QXJyYXkgZXhwZWN0ZWQnKTtcbiAgLy8gcHJlLWNhY2hpbmcgaW1wcm92ZXMgdGhlIHNwZWVkIDZ4XG4gIGxldCBoZXggPSAnJztcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBieXRlcy5sZW5ndGg7IGkrKykge1xuICAgIGhleCArPSBoZXhlc1tieXRlc1tpXV07XG4gIH1cbiAgcmV0dXJuIGhleDtcbn1cblxuLyoqXG4gKiBAZXhhbXBsZSBoZXhUb0J5dGVzKCdjYWZlMDEyMycpIC8vIFVpbnQ4QXJyYXkuZnJvbShbMHhjYSwgMHhmZSwgMHgwMSwgMHgyM10pXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBoZXhUb0J5dGVzKGhleDogc3RyaW5nKTogVWludDhBcnJheSB7XG4gIGlmICh0eXBlb2YgaGV4ICE9PSAnc3RyaW5nJykgdGhyb3cgbmV3IEVycm9yKCdoZXggc3RyaW5nIGV4cGVjdGVkLCBnb3QgJyArIHR5cGVvZiBoZXgpO1xuICBjb25zdCBsZW4gPSBoZXgubGVuZ3RoO1xuICBpZiAobGVuICUgMikgdGhyb3cgbmV3IEVycm9yKCdwYWRkZWQgaGV4IHN0cmluZyBleHBlY3RlZCwgZ290IHVucGFkZGVkIGhleCBvZiBsZW5ndGggJyArIGxlbik7XG4gIGNvbnN0IGFycmF5ID0gbmV3IFVpbnQ4QXJyYXkobGVuIC8gMik7XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgYXJyYXkubGVuZ3RoOyBpKyspIHtcbiAgICBjb25zdCBqID0gaSAqIDI7XG4gICAgY29uc3QgaGV4Qnl0ZSA9IGhleC5zbGljZShqLCBqICsgMik7XG4gICAgY29uc3QgYnl0ZSA9IE51bWJlci5wYXJzZUludChoZXhCeXRlLCAxNik7XG4gICAgaWYgKE51bWJlci5pc05hTihieXRlKSB8fCBieXRlIDwgMCkgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGJ5dGUgc2VxdWVuY2UnKTtcbiAgICBhcnJheVtpXSA9IGJ5dGU7XG4gIH1cbiAgcmV0dXJuIGFycmF5O1xufVxuXG4vLyBUaGVyZSBpcyBubyBzZXRJbW1lZGlhdGUgaW4gYnJvd3NlciBhbmQgc2V0VGltZW91dCBpcyBzbG93LlxuLy8gY2FsbCBvZiBhc3luYyBmbiB3aWxsIHJldHVybiBQcm9taXNlLCB3aGljaCB3aWxsIGJlIGZ1bGxmaWxlZCBvbmx5IG9uXG4vLyBuZXh0IHNjaGVkdWxlciBxdWV1ZSBwcm9jZXNzaW5nIHN0ZXAgYW5kIHRoaXMgaXMgZXhhY3RseSB3aGF0IHdlIG5lZWQuXG5leHBvcnQgY29uc3QgbmV4dFRpY2sgPSBhc3luYyAoKSA9PiB7fTtcblxuLy8gUmV0dXJucyBjb250cm9sIHRvIHRocmVhZCBlYWNoICd0aWNrJyBtcyB0byBhdm9pZCBibG9ja2luZ1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGFzeW5jTG9vcChpdGVyczogbnVtYmVyLCB0aWNrOiBudW1iZXIsIGNiOiAoaTogbnVtYmVyKSA9PiB2b2lkKSB7XG4gIGxldCB0cyA9IERhdGUubm93KCk7XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgaXRlcnM7IGkrKykge1xuICAgIGNiKGkpO1xuICAgIC8vIERhdGUubm93KCkgaXMgbm90IG1vbm90b25pYywgc28gaW4gY2FzZSBpZiBjbG9jayBnb2VzIGJhY2t3YXJkcyB3ZSByZXR1cm4gcmV0dXJuIGNvbnRyb2wgdG9vXG4gICAgY29uc3QgZGlmZiA9IERhdGUubm93KCkgLSB0cztcbiAgICBpZiAoZGlmZiA+PSAwICYmIGRpZmYgPCB0aWNrKSBjb250aW51ZTtcbiAgICBhd2FpdCBuZXh0VGljaygpO1xuICAgIHRzICs9IGRpZmY7XG4gIH1cbn1cblxuLy8gR2xvYmFsIHN5bWJvbHMgaW4gYm90aCBicm93c2VycyBhbmQgTm9kZS5qcyBzaW5jZSB2MTFcbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vbWljcm9zb2Z0L1R5cGVTY3JpcHQvaXNzdWVzLzMxNTM1XG5kZWNsYXJlIGNvbnN0IFRleHRFbmNvZGVyOiBhbnk7XG5cbi8qKlxuICogQGV4YW1wbGUgdXRmOFRvQnl0ZXMoJ2FiYycpIC8vIG5ldyBVaW50OEFycmF5KFs5NywgOTgsIDk5XSlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHV0ZjhUb0J5dGVzKHN0cjogc3RyaW5nKTogVWludDhBcnJheSB7XG4gIGlmICh0eXBlb2Ygc3RyICE9PSAnc3RyaW5nJykgdGhyb3cgbmV3IEVycm9yKGB1dGY4VG9CeXRlcyBleHBlY3RlZCBzdHJpbmcsIGdvdCAke3R5cGVvZiBzdHJ9YCk7XG4gIHJldHVybiBuZXcgVWludDhBcnJheShuZXcgVGV4dEVuY29kZXIoKS5lbmNvZGUoc3RyKSk7IC8vIGh0dHBzOi8vYnVnemlsLmxhLzE2ODE4MDlcbn1cblxuZXhwb3J0IHR5cGUgSW5wdXQgPSBVaW50OEFycmF5IHwgc3RyaW5nO1xuLyoqXG4gKiBOb3JtYWxpemVzIChub24taGV4KSBzdHJpbmcgb3IgVWludDhBcnJheSB0byBVaW50OEFycmF5LlxuICogV2FybmluZzogd2hlbiBVaW50OEFycmF5IGlzIHBhc3NlZCwgaXQgd291bGQgTk9UIGdldCBjb3BpZWQuXG4gKiBLZWVwIGluIG1pbmQgZm9yIGZ1dHVyZSBtdXRhYmxlIG9wZXJhdGlvbnMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0J5dGVzKGRhdGE6IElucHV0KTogVWludDhBcnJheSB7XG4gIGlmICh0eXBlb2YgZGF0YSA9PT0gJ3N0cmluZycpIGRhdGEgPSB1dGY4VG9CeXRlcyhkYXRhKTtcbiAgaWYgKCF1OGEoZGF0YSkpIHRocm93IG5ldyBFcnJvcihgZXhwZWN0ZWQgVWludDhBcnJheSwgZ290ICR7dHlwZW9mIGRhdGF9YCk7XG4gIHJldHVybiBkYXRhO1xufVxuXG4vKipcbiAqIENvcGllcyBzZXZlcmFsIFVpbnQ4QXJyYXlzIGludG8gb25lLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY29uY2F0Qnl0ZXMoLi4uYXJyYXlzOiBVaW50OEFycmF5W10pOiBVaW50OEFycmF5IHtcbiAgY29uc3QgciA9IG5ldyBVaW50OEFycmF5KGFycmF5cy5yZWR1Y2UoKHN1bSwgYSkgPT4gc3VtICsgYS5sZW5ndGgsIDApKTtcbiAgbGV0IHBhZCA9IDA7IC8vIHdhbGsgdGhyb3VnaCBlYWNoIGl0ZW0sIGVuc3VyZSB0aGV5IGhhdmUgcHJvcGVyIHR5cGVcbiAgYXJyYXlzLmZvckVhY2goKGEpID0+IHtcbiAgICBpZiAoIXU4YShhKSkgdGhyb3cgbmV3IEVycm9yKCdVaW50OEFycmF5IGV4cGVjdGVkJyk7XG4gICAgci5zZXQoYSwgcGFkKTtcbiAgICBwYWQgKz0gYS5sZW5ndGg7XG4gIH0pO1xuICByZXR1cm4gcjtcbn1cblxuLy8gRm9yIHJ1bnRpbWUgY2hlY2sgaWYgY2xhc3MgaW1wbGVtZW50cyBpbnRlcmZhY2VcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBIYXNoPFQgZXh0ZW5kcyBIYXNoPFQ+PiB7XG4gIGFic3RyYWN0IGJsb2NrTGVuOiBudW1iZXI7IC8vIEJ5dGVzIHBlciBibG9ja1xuICBhYnN0cmFjdCBvdXRwdXRMZW46IG51bWJlcjsgLy8gQnl0ZXMgaW4gb3V0cHV0XG4gIGFic3RyYWN0IHVwZGF0ZShidWY6IElucHV0KTogdGhpcztcbiAgLy8gV3JpdGVzIGRpZ2VzdCBpbnRvIGJ1ZlxuICBhYnN0cmFjdCBkaWdlc3RJbnRvKGJ1ZjogVWludDhBcnJheSk6IHZvaWQ7XG4gIGFic3RyYWN0IGRpZ2VzdCgpOiBVaW50OEFycmF5O1xuICAvKipcbiAgICogUmVzZXRzIGludGVybmFsIHN0YXRlLiBNYWtlcyBIYXNoIGluc3RhbmNlIHVudXNhYmxlLlxuICAgKiBSZXNldCBpcyBpbXBvc3NpYmxlIGZvciBrZXllZCBoYXNoZXMgaWYga2V5IGlzIGNvbnN1bWVkIGludG8gc3RhdGUuIElmIGRpZ2VzdCBpcyBub3QgY29uc3VtZWRcbiAgICogYnkgdXNlciwgdGhleSB3aWxsIG5lZWQgdG8gbWFudWFsbHkgY2FsbCBgZGVzdHJveSgpYCB3aGVuIHplcm9pbmcgaXMgbmVjZXNzYXJ5LlxuICAgKi9cbiAgYWJzdHJhY3QgZGVzdHJveSgpOiB2b2lkO1xuICAvKipcbiAgICogQ2xvbmVzIGhhc2ggaW5zdGFuY2UuIFVuc2FmZTogZG9lc24ndCBjaGVjayB3aGV0aGVyIGB0b2AgaXMgdmFsaWQuIENhbiBiZSB1c2VkIGFzIGBjbG9uZSgpYFxuICAgKiB3aGVuIG5vIG9wdGlvbnMgYXJlIHBhc3NlZC5cbiAgICogUmVhc29ucyB0byB1c2UgYF9jbG9uZUludG9gIGluc3RlYWQgb2YgY2xvbmU6IDEpIHBlcmZvcm1hbmNlIDIpIHJldXNlIGluc3RhbmNlID0+IGFsbCBpbnRlcm5hbFxuICAgKiBidWZmZXJzIGFyZSBvdmVyd3JpdHRlbiA9PiBjYXVzZXMgYnVmZmVyIG92ZXJ3cml0ZSB3aGljaCBpcyB1c2VkIGZvciBkaWdlc3QgaW4gc29tZSBjYXNlcy5cbiAgICogVGhlcmUgYXJlIG5vIGd1YXJhbnRlZXMgZm9yIGNsZWFuLXVwIGJlY2F1c2UgaXQncyBpbXBvc3NpYmxlIGluIEpTLlxuICAgKi9cbiAgYWJzdHJhY3QgX2Nsb25lSW50byh0bz86IFQpOiBUO1xuICAvLyBTYWZlIHZlcnNpb24gdGhhdCBjbG9uZXMgaW50ZXJuYWwgc3RhdGVcbiAgY2xvbmUoKTogVCB7XG4gICAgcmV0dXJuIHRoaXMuX2Nsb25lSW50bygpO1xuICB9XG59XG5cbi8qKlxuICogWE9GOiBzdHJlYW1pbmcgQVBJIHRvIHJlYWQgZGlnZXN0IGluIGNodW5rcy5cbiAqIFNhbWUgYXMgJ3NxdWVlemUnIGluIGtlY2Nhay9rMTIgYW5kICdzZWVrJyBpbiBibGFrZTMsIGJ1dCBtb3JlIGdlbmVyaWMgbmFtZS5cbiAqIFdoZW4gaGFzaCB1c2VkIGluIFhPRiBtb2RlIGl0IGlzIHVwIHRvIHVzZXIgdG8gY2FsbCAnLmRlc3Ryb3knIGFmdGVyd2FyZHMsIHNpbmNlIHdlIGNhbm5vdFxuICogZGVzdHJveSBzdGF0ZSwgbmV4dCBjYWxsIGNhbiByZXF1aXJlIG1vcmUgYnl0ZXMuXG4gKi9cbmV4cG9ydCB0eXBlIEhhc2hYT0Y8VCBleHRlbmRzIEhhc2g8VD4+ID0gSGFzaDxUPiAmIHtcbiAgeG9mKGJ5dGVzOiBudW1iZXIpOiBVaW50OEFycmF5OyAvLyBSZWFkICdieXRlcycgYnl0ZXMgZnJvbSBkaWdlc3Qgc3RyZWFtXG4gIHhvZkludG8oYnVmOiBVaW50OEFycmF5KTogVWludDhBcnJheTsgLy8gcmVhZCBidWYubGVuZ3RoIGJ5dGVzIGZyb20gZGlnZXN0IHN0cmVhbSBpbnRvIGJ1ZlxufTtcblxuY29uc3QgdG9TdHIgPSB7fS50b1N0cmluZztcbnR5cGUgRW1wdHlPYmogPSB7fTtcbmV4cG9ydCBmdW5jdGlvbiBjaGVja09wdHM8VDEgZXh0ZW5kcyBFbXB0eU9iaiwgVDIgZXh0ZW5kcyBFbXB0eU9iaj4oXG4gIGRlZmF1bHRzOiBUMSxcbiAgb3B0cz86IFQyXG4pOiBUMSAmIFQyIHtcbiAgaWYgKG9wdHMgIT09IHVuZGVmaW5lZCAmJiB0b1N0ci5jYWxsKG9wdHMpICE9PSAnW29iamVjdCBPYmplY3RdJylcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ09wdGlvbnMgc2hvdWxkIGJlIG9iamVjdCBvciB1bmRlZmluZWQnKTtcbiAgY29uc3QgbWVyZ2VkID0gT2JqZWN0LmFzc2lnbihkZWZhdWx0cywgb3B0cyk7XG4gIHJldHVybiBtZXJnZWQgYXMgVDEgJiBUMjtcbn1cblxuZXhwb3J0IHR5cGUgQ0hhc2ggPSBSZXR1cm5UeXBlPHR5cGVvZiB3cmFwQ29uc3RydWN0b3I+O1xuXG5leHBvcnQgZnVuY3Rpb24gd3JhcENvbnN0cnVjdG9yPFQgZXh0ZW5kcyBIYXNoPFQ+PihoYXNoQ29uczogKCkgPT4gSGFzaDxUPikge1xuICBjb25zdCBoYXNoQyA9IChtc2c6IElucHV0KTogVWludDhBcnJheSA9PiBoYXNoQ29ucygpLnVwZGF0ZSh0b0J5dGVzKG1zZykpLmRpZ2VzdCgpO1xuICBjb25zdCB0bXAgPSBoYXNoQ29ucygpO1xuICBoYXNoQy5vdXRwdXRMZW4gPSB0bXAub3V0cHV0TGVuO1xuICBoYXNoQy5ibG9ja0xlbiA9IHRtcC5ibG9ja0xlbjtcbiAgaGFzaEMuY3JlYXRlID0gKCkgPT4gaGFzaENvbnMoKTtcbiAgcmV0dXJuIGhhc2hDO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gd3JhcENvbnN0cnVjdG9yV2l0aE9wdHM8SCBleHRlbmRzIEhhc2g8SD4sIFQgZXh0ZW5kcyBPYmplY3Q+KFxuICBoYXNoQ29uczogKG9wdHM/OiBUKSA9PiBIYXNoPEg+XG4pIHtcbiAgY29uc3QgaGFzaEMgPSAobXNnOiBJbnB1dCwgb3B0cz86IFQpOiBVaW50OEFycmF5ID0+IGhhc2hDb25zKG9wdHMpLnVwZGF0ZSh0b0J5dGVzKG1zZykpLmRpZ2VzdCgpO1xuICBjb25zdCB0bXAgPSBoYXNoQ29ucyh7fSBhcyBUKTtcbiAgaGFzaEMub3V0cHV0TGVuID0gdG1wLm91dHB1dExlbjtcbiAgaGFzaEMuYmxvY2tMZW4gPSB0bXAuYmxvY2tMZW47XG4gIGhhc2hDLmNyZWF0ZSA9IChvcHRzOiBUKSA9PiBoYXNoQ29ucyhvcHRzKTtcbiAgcmV0dXJuIGhhc2hDO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gd3JhcFhPRkNvbnN0cnVjdG9yV2l0aE9wdHM8SCBleHRlbmRzIEhhc2hYT0Y8SD4sIFQgZXh0ZW5kcyBPYmplY3Q+KFxuICBoYXNoQ29uczogKG9wdHM/OiBUKSA9PiBIYXNoWE9GPEg+XG4pIHtcbiAgY29uc3QgaGFzaEMgPSAobXNnOiBJbnB1dCwgb3B0cz86IFQpOiBVaW50OEFycmF5ID0+IGhhc2hDb25zKG9wdHMpLnVwZGF0ZSh0b0J5dGVzKG1zZykpLmRpZ2VzdCgpO1xuICBjb25zdCB0bXAgPSBoYXNoQ29ucyh7fSBhcyBUKTtcbiAgaGFzaEMub3V0cHV0TGVuID0gdG1wLm91dHB1dExlbjtcbiAgaGFzaEMuYmxvY2tMZW4gPSB0bXAuYmxvY2tMZW47XG4gIGhhc2hDLmNyZWF0ZSA9IChvcHRzOiBUKSA9PiBoYXNoQ29ucyhvcHRzKTtcbiAgcmV0dXJuIGhhc2hDO1xufVxuXG4vKipcbiAqIFNlY3VyZSBQUk5HLiBVc2VzIGBjcnlwdG8uZ2V0UmFuZG9tVmFsdWVzYCwgd2hpY2ggZGVmZXJzIHRvIE9TLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmFuZG9tQnl0ZXMoYnl0ZXNMZW5ndGggPSAzMik6IFVpbnQ4QXJyYXkge1xuICBpZiAoY3J5cHRvICYmIHR5cGVvZiBjcnlwdG8uZ2V0UmFuZG9tVmFsdWVzID09PSAnZnVuY3Rpb24nKSB7XG4gICAgcmV0dXJuIGNyeXB0by5nZXRSYW5kb21WYWx1ZXMobmV3IFVpbnQ4QXJyYXkoYnl0ZXNMZW5ndGgpKTtcbiAgfVxuICB0aHJvdyBuZXcgRXJyb3IoJ2NyeXB0by5nZXRSYW5kb21WYWx1ZXMgbXVzdCBiZSBkZWZpbmVkJyk7XG59XG4iLCAiaW1wb3J0IHsgZXhpc3RzLCBvdXRwdXQgfSBmcm9tICcuL19hc3NlcnQuanMnO1xuaW1wb3J0IHsgSGFzaCwgY3JlYXRlVmlldywgSW5wdXQsIHRvQnl0ZXMgfSBmcm9tICcuL3V0aWxzLmpzJztcblxuLy8gUG9seWZpbGwgZm9yIFNhZmFyaSAxNFxuZnVuY3Rpb24gc2V0QmlnVWludDY0KHZpZXc6IERhdGFWaWV3LCBieXRlT2Zmc2V0OiBudW1iZXIsIHZhbHVlOiBiaWdpbnQsIGlzTEU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgaWYgKHR5cGVvZiB2aWV3LnNldEJpZ1VpbnQ2NCA9PT0gJ2Z1bmN0aW9uJykgcmV0dXJuIHZpZXcuc2V0QmlnVWludDY0KGJ5dGVPZmZzZXQsIHZhbHVlLCBpc0xFKTtcbiAgY29uc3QgXzMybiA9IEJpZ0ludCgzMik7XG4gIGNvbnN0IF91MzJfbWF4ID0gQmlnSW50KDB4ZmZmZmZmZmYpO1xuICBjb25zdCB3aCA9IE51bWJlcigodmFsdWUgPj4gXzMybikgJiBfdTMyX21heCk7XG4gIGNvbnN0IHdsID0gTnVtYmVyKHZhbHVlICYgX3UzMl9tYXgpO1xuICBjb25zdCBoID0gaXNMRSA/IDQgOiAwO1xuICBjb25zdCBsID0gaXNMRSA/IDAgOiA0O1xuICB2aWV3LnNldFVpbnQzMihieXRlT2Zmc2V0ICsgaCwgd2gsIGlzTEUpO1xuICB2aWV3LnNldFVpbnQzMihieXRlT2Zmc2V0ICsgbCwgd2wsIGlzTEUpO1xufVxuXG4vLyBCYXNlIFNIQTIgY2xhc3MgKFJGQyA2MjM0KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFNIQTI8VCBleHRlbmRzIFNIQTI8VD4+IGV4dGVuZHMgSGFzaDxUPiB7XG4gIHByb3RlY3RlZCBhYnN0cmFjdCBwcm9jZXNzKGJ1ZjogRGF0YVZpZXcsIG9mZnNldDogbnVtYmVyKTogdm9pZDtcbiAgcHJvdGVjdGVkIGFic3RyYWN0IGdldCgpOiBudW1iZXJbXTtcbiAgcHJvdGVjdGVkIGFic3RyYWN0IHNldCguLi5hcmdzOiBudW1iZXJbXSk6IHZvaWQ7XG4gIGFic3RyYWN0IGRlc3Ryb3koKTogdm9pZDtcbiAgcHJvdGVjdGVkIGFic3RyYWN0IHJvdW5kQ2xlYW4oKTogdm9pZDtcbiAgLy8gRm9yIHBhcnRpYWwgdXBkYXRlcyBsZXNzIHRoYW4gYmxvY2sgc2l6ZVxuICBwcm90ZWN0ZWQgYnVmZmVyOiBVaW50OEFycmF5O1xuICBwcm90ZWN0ZWQgdmlldzogRGF0YVZpZXc7XG4gIHByb3RlY3RlZCBmaW5pc2hlZCA9IGZhbHNlO1xuICBwcm90ZWN0ZWQgbGVuZ3RoID0gMDtcbiAgcHJvdGVjdGVkIHBvcyA9IDA7XG4gIHByb3RlY3RlZCBkZXN0cm95ZWQgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICByZWFkb25seSBibG9ja0xlbjogbnVtYmVyLFxuICAgIHB1YmxpYyBvdXRwdXRMZW46IG51bWJlcixcbiAgICByZWFkb25seSBwYWRPZmZzZXQ6IG51bWJlcixcbiAgICByZWFkb25seSBpc0xFOiBib29sZWFuXG4gICkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5idWZmZXIgPSBuZXcgVWludDhBcnJheShibG9ja0xlbik7XG4gICAgdGhpcy52aWV3ID0gY3JlYXRlVmlldyh0aGlzLmJ1ZmZlcik7XG4gIH1cbiAgdXBkYXRlKGRhdGE6IElucHV0KTogdGhpcyB7XG4gICAgZXhpc3RzKHRoaXMpO1xuICAgIGNvbnN0IHsgdmlldywgYnVmZmVyLCBibG9ja0xlbiB9ID0gdGhpcztcbiAgICBkYXRhID0gdG9CeXRlcyhkYXRhKTtcbiAgICBjb25zdCBsZW4gPSBkYXRhLmxlbmd0aDtcbiAgICBmb3IgKGxldCBwb3MgPSAwOyBwb3MgPCBsZW47ICkge1xuICAgICAgY29uc3QgdGFrZSA9IE1hdGgubWluKGJsb2NrTGVuIC0gdGhpcy5wb3MsIGxlbiAtIHBvcyk7XG4gICAgICAvLyBGYXN0IHBhdGg6IHdlIGhhdmUgYXQgbGVhc3Qgb25lIGJsb2NrIGluIGlucHV0LCBjYXN0IGl0IHRvIHZpZXcgYW5kIHByb2Nlc3NcbiAgICAgIGlmICh0YWtlID09PSBibG9ja0xlbikge1xuICAgICAgICBjb25zdCBkYXRhVmlldyA9IGNyZWF0ZVZpZXcoZGF0YSk7XG4gICAgICAgIGZvciAoOyBibG9ja0xlbiA8PSBsZW4gLSBwb3M7IHBvcyArPSBibG9ja0xlbikgdGhpcy5wcm9jZXNzKGRhdGFWaWV3LCBwb3MpO1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cbiAgICAgIGJ1ZmZlci5zZXQoZGF0YS5zdWJhcnJheShwb3MsIHBvcyArIHRha2UpLCB0aGlzLnBvcyk7XG4gICAgICB0aGlzLnBvcyArPSB0YWtlO1xuICAgICAgcG9zICs9IHRha2U7XG4gICAgICBpZiAodGhpcy5wb3MgPT09IGJsb2NrTGVuKSB7XG4gICAgICAgIHRoaXMucHJvY2Vzcyh2aWV3LCAwKTtcbiAgICAgICAgdGhpcy5wb3MgPSAwO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLmxlbmd0aCArPSBkYXRhLmxlbmd0aDtcbiAgICB0aGlzLnJvdW5kQ2xlYW4oKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuICBkaWdlc3RJbnRvKG91dDogVWludDhBcnJheSkge1xuICAgIGV4aXN0cyh0aGlzKTtcbiAgICBvdXRwdXQob3V0LCB0aGlzKTtcbiAgICB0aGlzLmZpbmlzaGVkID0gdHJ1ZTtcbiAgICAvLyBQYWRkaW5nXG4gICAgLy8gV2UgY2FuIGF2b2lkIGFsbG9jYXRpb24gb2YgYnVmZmVyIGZvciBwYWRkaW5nIGNvbXBsZXRlbHkgaWYgaXRcbiAgICAvLyB3YXMgcHJldmlvdXNseSBub3QgYWxsb2NhdGVkIGhlcmUuIEJ1dCBpdCB3b24ndCBjaGFuZ2UgcGVyZm9ybWFuY2UuXG4gICAgY29uc3QgeyBidWZmZXIsIHZpZXcsIGJsb2NrTGVuLCBpc0xFIH0gPSB0aGlzO1xuICAgIGxldCB7IHBvcyB9ID0gdGhpcztcbiAgICAvLyBhcHBlbmQgdGhlIGJpdCAnMScgdG8gdGhlIG1lc3NhZ2VcbiAgICBidWZmZXJbcG9zKytdID0gMGIxMDAwMDAwMDtcbiAgICB0aGlzLmJ1ZmZlci5zdWJhcnJheShwb3MpLmZpbGwoMCk7XG4gICAgLy8gd2UgaGF2ZSBsZXNzIHRoYW4gcGFkT2Zmc2V0IGxlZnQgaW4gYnVmZmVyLCBzbyB3ZSBjYW5ub3QgcHV0IGxlbmd0aCBpbiBjdXJyZW50IGJsb2NrLCBuZWVkIHByb2Nlc3MgaXQgYW5kIHBhZCBhZ2FpblxuICAgIGlmICh0aGlzLnBhZE9mZnNldCA+IGJsb2NrTGVuIC0gcG9zKSB7XG4gICAgICB0aGlzLnByb2Nlc3ModmlldywgMCk7XG4gICAgICBwb3MgPSAwO1xuICAgIH1cbiAgICAvLyBQYWQgdW50aWwgZnVsbCBibG9jayBieXRlIHdpdGggemVyb3NcbiAgICBmb3IgKGxldCBpID0gcG9zOyBpIDwgYmxvY2tMZW47IGkrKykgYnVmZmVyW2ldID0gMDtcbiAgICAvLyBOb3RlOiBzaGE1MTIgcmVxdWlyZXMgbGVuZ3RoIHRvIGJlIDEyOGJpdCBpbnRlZ2VyLCBidXQgbGVuZ3RoIGluIEpTIHdpbGwgb3ZlcmZsb3cgYmVmb3JlIHRoYXRcbiAgICAvLyBZb3UgbmVlZCB0byB3cml0ZSBhcm91bmQgMiBleGFieXRlcyAodTY0X21heCAvIDggLyAoMTAyNCoqNikpIGZvciB0aGlzIHRvIGhhcHBlbi5cbiAgICAvLyBTbyB3ZSBqdXN0IHdyaXRlIGxvd2VzdCA2NCBiaXRzIG9mIHRoYXQgdmFsdWUuXG4gICAgc2V0QmlnVWludDY0KHZpZXcsIGJsb2NrTGVuIC0gOCwgQmlnSW50KHRoaXMubGVuZ3RoICogOCksIGlzTEUpO1xuICAgIHRoaXMucHJvY2Vzcyh2aWV3LCAwKTtcbiAgICBjb25zdCBvdmlldyA9IGNyZWF0ZVZpZXcob3V0KTtcbiAgICBjb25zdCBsZW4gPSB0aGlzLm91dHB1dExlbjtcbiAgICAvLyBOT1RFOiB3ZSBkbyBkaXZpc2lvbiBieSA0IGxhdGVyLCB3aGljaCBzaG91bGQgYmUgZnVzZWQgaW4gc2luZ2xlIG9wIHdpdGggbW9kdWxvIGJ5IEpJVFxuICAgIGlmIChsZW4gJSA0KSB0aHJvdyBuZXcgRXJyb3IoJ19zaGEyOiBvdXRwdXRMZW4gc2hvdWxkIGJlIGFsaWduZWQgdG8gMzJiaXQnKTtcbiAgICBjb25zdCBvdXRMZW4gPSBsZW4gLyA0O1xuICAgIGNvbnN0IHN0YXRlID0gdGhpcy5nZXQoKTtcbiAgICBpZiAob3V0TGVuID4gc3RhdGUubGVuZ3RoKSB0aHJvdyBuZXcgRXJyb3IoJ19zaGEyOiBvdXRwdXRMZW4gYmlnZ2VyIHRoYW4gc3RhdGUnKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG91dExlbjsgaSsrKSBvdmlldy5zZXRVaW50MzIoNCAqIGksIHN0YXRlW2ldLCBpc0xFKTtcbiAgfVxuICBkaWdlc3QoKSB7XG4gICAgY29uc3QgeyBidWZmZXIsIG91dHB1dExlbiB9ID0gdGhpcztcbiAgICB0aGlzLmRpZ2VzdEludG8oYnVmZmVyKTtcbiAgICBjb25zdCByZXMgPSBidWZmZXIuc2xpY2UoMCwgb3V0cHV0TGVuKTtcbiAgICB0aGlzLmRlc3Ryb3koKTtcbiAgICByZXR1cm4gcmVzO1xuICB9XG4gIF9jbG9uZUludG8odG8/OiBUKTogVCB7XG4gICAgdG8gfHw9IG5ldyAodGhpcy5jb25zdHJ1Y3RvciBhcyBhbnkpKCkgYXMgVDtcbiAgICB0by5zZXQoLi4udGhpcy5nZXQoKSk7XG4gICAgY29uc3QgeyBibG9ja0xlbiwgYnVmZmVyLCBsZW5ndGgsIGZpbmlzaGVkLCBkZXN0cm95ZWQsIHBvcyB9ID0gdGhpcztcbiAgICB0by5sZW5ndGggPSBsZW5ndGg7XG4gICAgdG8ucG9zID0gcG9zO1xuICAgIHRvLmZpbmlzaGVkID0gZmluaXNoZWQ7XG4gICAgdG8uZGVzdHJveWVkID0gZGVzdHJveWVkO1xuICAgIGlmIChsZW5ndGggJSBibG9ja0xlbikgdG8uYnVmZmVyLnNldChidWZmZXIpO1xuICAgIHJldHVybiB0bztcbiAgfVxufVxuIiwgImNvbnN0IFUzMl9NQVNLNjQgPSAvKiBAX19QVVJFX18gKi8gQmlnSW50KDIgKiogMzIgLSAxKTtcbmNvbnN0IF8zMm4gPSAvKiBAX19QVVJFX18gKi8gQmlnSW50KDMyKTtcblxuLy8gV2UgYXJlIG5vdCB1c2luZyBCaWdVaW50NjRBcnJheSwgYmVjYXVzZSB0aGV5IGFyZSBleHRyZW1lbHkgc2xvdyBhcyBwZXIgMjAyMlxuZnVuY3Rpb24gZnJvbUJpZyhuOiBiaWdpbnQsIGxlID0gZmFsc2UpIHtcbiAgaWYgKGxlKSByZXR1cm4geyBoOiBOdW1iZXIobiAmIFUzMl9NQVNLNjQpLCBsOiBOdW1iZXIoKG4gPj4gXzMybikgJiBVMzJfTUFTSzY0KSB9O1xuICByZXR1cm4geyBoOiBOdW1iZXIoKG4gPj4gXzMybikgJiBVMzJfTUFTSzY0KSB8IDAsIGw6IE51bWJlcihuICYgVTMyX01BU0s2NCkgfCAwIH07XG59XG5cbmZ1bmN0aW9uIHNwbGl0KGxzdDogYmlnaW50W10sIGxlID0gZmFsc2UpIHtcbiAgbGV0IEFoID0gbmV3IFVpbnQzMkFycmF5KGxzdC5sZW5ndGgpO1xuICBsZXQgQWwgPSBuZXcgVWludDMyQXJyYXkobHN0Lmxlbmd0aCk7XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgbHN0Lmxlbmd0aDsgaSsrKSB7XG4gICAgY29uc3QgeyBoLCBsIH0gPSBmcm9tQmlnKGxzdFtpXSwgbGUpO1xuICAgIFtBaFtpXSwgQWxbaV1dID0gW2gsIGxdO1xuICB9XG4gIHJldHVybiBbQWgsIEFsXTtcbn1cblxuY29uc3QgdG9CaWcgPSAoaDogbnVtYmVyLCBsOiBudW1iZXIpID0+IChCaWdJbnQoaCA+Pj4gMCkgPDwgXzMybikgfCBCaWdJbnQobCA+Pj4gMCk7XG4vLyBmb3IgU2hpZnQgaW4gWzAsIDMyKVxuY29uc3Qgc2hyU0ggPSAoaDogbnVtYmVyLCBfbDogbnVtYmVyLCBzOiBudW1iZXIpID0+IGggPj4+IHM7XG5jb25zdCBzaHJTTCA9IChoOiBudW1iZXIsIGw6IG51bWJlciwgczogbnVtYmVyKSA9PiAoaCA8PCAoMzIgLSBzKSkgfCAobCA+Pj4gcyk7XG4vLyBSaWdodCByb3RhdGUgZm9yIFNoaWZ0IGluIFsxLCAzMilcbmNvbnN0IHJvdHJTSCA9IChoOiBudW1iZXIsIGw6IG51bWJlciwgczogbnVtYmVyKSA9PiAoaCA+Pj4gcykgfCAobCA8PCAoMzIgLSBzKSk7XG5jb25zdCByb3RyU0wgPSAoaDogbnVtYmVyLCBsOiBudW1iZXIsIHM6IG51bWJlcikgPT4gKGggPDwgKDMyIC0gcykpIHwgKGwgPj4+IHMpO1xuLy8gUmlnaHQgcm90YXRlIGZvciBTaGlmdCBpbiAoMzIsIDY0KSwgTk9URTogMzIgaXMgc3BlY2lhbCBjYXNlLlxuY29uc3Qgcm90ckJIID0gKGg6IG51bWJlciwgbDogbnVtYmVyLCBzOiBudW1iZXIpID0+IChoIDw8ICg2NCAtIHMpKSB8IChsID4+PiAocyAtIDMyKSk7XG5jb25zdCByb3RyQkwgPSAoaDogbnVtYmVyLCBsOiBudW1iZXIsIHM6IG51bWJlcikgPT4gKGggPj4+IChzIC0gMzIpKSB8IChsIDw8ICg2NCAtIHMpKTtcbi8vIFJpZ2h0IHJvdGF0ZSBmb3Igc2hpZnQ9PT0zMiAoanVzdCBzd2FwcyBsJmgpXG5jb25zdCByb3RyMzJIID0gKF9oOiBudW1iZXIsIGw6IG51bWJlcikgPT4gbDtcbmNvbnN0IHJvdHIzMkwgPSAoaDogbnVtYmVyLCBfbDogbnVtYmVyKSA9PiBoO1xuLy8gTGVmdCByb3RhdGUgZm9yIFNoaWZ0IGluIFsxLCAzMilcbmNvbnN0IHJvdGxTSCA9IChoOiBudW1iZXIsIGw6IG51bWJlciwgczogbnVtYmVyKSA9PiAoaCA8PCBzKSB8IChsID4+PiAoMzIgLSBzKSk7XG5jb25zdCByb3RsU0wgPSAoaDogbnVtYmVyLCBsOiBudW1iZXIsIHM6IG51bWJlcikgPT4gKGwgPDwgcykgfCAoaCA+Pj4gKDMyIC0gcykpO1xuLy8gTGVmdCByb3RhdGUgZm9yIFNoaWZ0IGluICgzMiwgNjQpLCBOT1RFOiAzMiBpcyBzcGVjaWFsIGNhc2UuXG5jb25zdCByb3RsQkggPSAoaDogbnVtYmVyLCBsOiBudW1iZXIsIHM6IG51bWJlcikgPT4gKGwgPDwgKHMgLSAzMikpIHwgKGggPj4+ICg2NCAtIHMpKTtcbmNvbnN0IHJvdGxCTCA9IChoOiBudW1iZXIsIGw6IG51bWJlciwgczogbnVtYmVyKSA9PiAoaCA8PCAocyAtIDMyKSkgfCAobCA+Pj4gKDY0IC0gcykpO1xuXG4vLyBKUyB1c2VzIDMyLWJpdCBzaWduZWQgaW50ZWdlcnMgZm9yIGJpdHdpc2Ugb3BlcmF0aW9ucyB3aGljaCBtZWFucyB3ZSBjYW5ub3Rcbi8vIHNpbXBsZSB0YWtlIGNhcnJ5IG91dCBvZiBsb3cgYml0IHN1bSBieSBzaGlmdCwgd2UgbmVlZCB0byB1c2UgZGl2aXNpb24uXG5mdW5jdGlvbiBhZGQoQWg6IG51bWJlciwgQWw6IG51bWJlciwgQmg6IG51bWJlciwgQmw6IG51bWJlcikge1xuICBjb25zdCBsID0gKEFsID4+PiAwKSArIChCbCA+Pj4gMCk7XG4gIHJldHVybiB7IGg6IChBaCArIEJoICsgKChsIC8gMiAqKiAzMikgfCAwKSkgfCAwLCBsOiBsIHwgMCB9O1xufVxuLy8gQWRkaXRpb24gd2l0aCBtb3JlIHRoYW4gMiBlbGVtZW50c1xuY29uc3QgYWRkM0wgPSAoQWw6IG51bWJlciwgQmw6IG51bWJlciwgQ2w6IG51bWJlcikgPT4gKEFsID4+PiAwKSArIChCbCA+Pj4gMCkgKyAoQ2wgPj4+IDApO1xuY29uc3QgYWRkM0ggPSAobG93OiBudW1iZXIsIEFoOiBudW1iZXIsIEJoOiBudW1iZXIsIENoOiBudW1iZXIpID0+XG4gIChBaCArIEJoICsgQ2ggKyAoKGxvdyAvIDIgKiogMzIpIHwgMCkpIHwgMDtcbmNvbnN0IGFkZDRMID0gKEFsOiBudW1iZXIsIEJsOiBudW1iZXIsIENsOiBudW1iZXIsIERsOiBudW1iZXIpID0+XG4gIChBbCA+Pj4gMCkgKyAoQmwgPj4+IDApICsgKENsID4+PiAwKSArIChEbCA+Pj4gMCk7XG5jb25zdCBhZGQ0SCA9IChsb3c6IG51bWJlciwgQWg6IG51bWJlciwgQmg6IG51bWJlciwgQ2g6IG51bWJlciwgRGg6IG51bWJlcikgPT5cbiAgKEFoICsgQmggKyBDaCArIERoICsgKChsb3cgLyAyICoqIDMyKSB8IDApKSB8IDA7XG5jb25zdCBhZGQ1TCA9IChBbDogbnVtYmVyLCBCbDogbnVtYmVyLCBDbDogbnVtYmVyLCBEbDogbnVtYmVyLCBFbDogbnVtYmVyKSA9PlxuICAoQWwgPj4+IDApICsgKEJsID4+PiAwKSArIChDbCA+Pj4gMCkgKyAoRGwgPj4+IDApICsgKEVsID4+PiAwKTtcbmNvbnN0IGFkZDVIID0gKGxvdzogbnVtYmVyLCBBaDogbnVtYmVyLCBCaDogbnVtYmVyLCBDaDogbnVtYmVyLCBEaDogbnVtYmVyLCBFaDogbnVtYmVyKSA9PlxuICAoQWggKyBCaCArIENoICsgRGggKyBFaCArICgobG93IC8gMiAqKiAzMikgfCAwKSkgfCAwO1xuXG4vLyBwcmV0dGllci1pZ25vcmVcbmV4cG9ydCB7XG4gIGZyb21CaWcsIHNwbGl0LCB0b0JpZyxcbiAgc2hyU0gsIHNoclNMLFxuICByb3RyU0gsIHJvdHJTTCwgcm90ckJILCByb3RyQkwsXG4gIHJvdHIzMkgsIHJvdHIzMkwsXG4gIHJvdGxTSCwgcm90bFNMLCByb3RsQkgsIHJvdGxCTCxcbiAgYWRkLCBhZGQzTCwgYWRkM0gsIGFkZDRMLCBhZGQ0SCwgYWRkNUgsIGFkZDVMLFxufTtcbi8vIHByZXR0aWVyLWlnbm9yZVxuY29uc3QgdTY0ID0ge1xuICBmcm9tQmlnLCBzcGxpdCwgdG9CaWcsXG4gIHNoclNILCBzaHJTTCxcbiAgcm90clNILCByb3RyU0wsIHJvdHJCSCwgcm90ckJMLFxuICByb3RyMzJILCByb3RyMzJMLFxuICByb3RsU0gsIHJvdGxTTCwgcm90bEJILCByb3RsQkwsXG4gIGFkZCwgYWRkM0wsIGFkZDNILCBhZGQ0TCwgYWRkNEgsIGFkZDVILCBhZGQ1TCxcbn07XG5leHBvcnQgZGVmYXVsdCB1NjQ7XG4iLCAiaW1wb3J0IHsgU0hBMiB9IGZyb20gJy4vX3NoYTIuanMnO1xuaW1wb3J0IHU2NCBmcm9tICcuL191NjQuanMnO1xuaW1wb3J0IHsgd3JhcENvbnN0cnVjdG9yIH0gZnJvbSAnLi91dGlscy5qcyc7XG5cbi8vIFJvdW5kIGNvbnRhbnRzIChmaXJzdCAzMiBiaXRzIG9mIHRoZSBmcmFjdGlvbmFsIHBhcnRzIG9mIHRoZSBjdWJlIHJvb3RzIG9mIHRoZSBmaXJzdCA4MCBwcmltZXMgMi4uNDA5KTpcbi8vIHByZXR0aWVyLWlnbm9yZVxuY29uc3QgW1NIQTUxMl9LaCwgU0hBNTEyX0tsXSA9IC8qIEBfX1BVUkVfXyAqLyAoKCkgPT4gdTY0LnNwbGl0KFtcbiAgJzB4NDI4YTJmOThkNzI4YWUyMicsICcweDcxMzc0NDkxMjNlZjY1Y2QnLCAnMHhiNWMwZmJjZmVjNGQzYjJmJywgJzB4ZTliNWRiYTU4MTg5ZGJiYycsXG4gICcweDM5NTZjMjViZjM0OGI1MzgnLCAnMHg1OWYxMTFmMWI2MDVkMDE5JywgJzB4OTIzZjgyYTRhZjE5NGY5YicsICcweGFiMWM1ZWQ1ZGE2ZDgxMTgnLFxuICAnMHhkODA3YWE5OGEzMDMwMjQyJywgJzB4MTI4MzViMDE0NTcwNmZiZScsICcweDI0MzE4NWJlNGVlNGIyOGMnLCAnMHg1NTBjN2RjM2Q1ZmZiNGUyJyxcbiAgJzB4NzJiZTVkNzRmMjdiODk2ZicsICcweDgwZGViMWZlM2IxNjk2YjEnLCAnMHg5YmRjMDZhNzI1YzcxMjM1JywgJzB4YzE5YmYxNzRjZjY5MjY5NCcsXG4gICcweGU0OWI2OWMxOWVmMTRhZDInLCAnMHhlZmJlNDc4NjM4NGYyNWUzJywgJzB4MGZjMTlkYzY4YjhjZDViNScsICcweDI0MGNhMWNjNzdhYzljNjUnLFxuICAnMHgyZGU5MmM2ZjU5MmIwMjc1JywgJzB4NGE3NDg0YWE2ZWE2ZTQ4MycsICcweDVjYjBhOWRjYmQ0MWZiZDQnLCAnMHg3NmY5ODhkYTgzMTE1M2I1JyxcbiAgJzB4OTgzZTUxNTJlZTY2ZGZhYicsICcweGE4MzFjNjZkMmRiNDMyMTAnLCAnMHhiMDAzMjdjODk4ZmIyMTNmJywgJzB4YmY1OTdmYzdiZWVmMGVlNCcsXG4gICcweGM2ZTAwYmYzM2RhODhmYzInLCAnMHhkNWE3OTE0NzkzMGFhNzI1JywgJzB4MDZjYTYzNTFlMDAzODI2ZicsICcweDE0MjkyOTY3MGEwZTZlNzAnLFxuICAnMHgyN2I3MGE4NTQ2ZDIyZmZjJywgJzB4MmUxYjIxMzg1YzI2YzkyNicsICcweDRkMmM2ZGZjNWFjNDJhZWQnLCAnMHg1MzM4MGQxMzlkOTViM2RmJyxcbiAgJzB4NjUwYTczNTQ4YmFmNjNkZScsICcweDc2NmEwYWJiM2M3N2IyYTgnLCAnMHg4MWMyYzkyZTQ3ZWRhZWU2JywgJzB4OTI3MjJjODUxNDgyMzUzYicsXG4gICcweGEyYmZlOGExNGNmMTAzNjQnLCAnMHhhODFhNjY0YmJjNDIzMDAxJywgJzB4YzI0YjhiNzBkMGY4OTc5MScsICcweGM3NmM1MWEzMDY1NGJlMzAnLFxuICAnMHhkMTkyZTgxOWQ2ZWY1MjE4JywgJzB4ZDY5OTA2MjQ1NTY1YTkxMCcsICcweGY0MGUzNTg1NTc3MTIwMmEnLCAnMHgxMDZhYTA3MDMyYmJkMWI4JyxcbiAgJzB4MTlhNGMxMTZiOGQyZDBjOCcsICcweDFlMzc2YzA4NTE0MWFiNTMnLCAnMHgyNzQ4Nzc0Y2RmOGVlYjk5JywgJzB4MzRiMGJjYjVlMTliNDhhOCcsXG4gICcweDM5MWMwY2IzYzVjOTVhNjMnLCAnMHg0ZWQ4YWE0YWUzNDE4YWNiJywgJzB4NWI5Y2NhNGY3NzYzZTM3MycsICcweDY4MmU2ZmYzZDZiMmI4YTMnLFxuICAnMHg3NDhmODJlZTVkZWZiMmZjJywgJzB4NzhhNTYzNmY0MzE3MmY2MCcsICcweDg0Yzg3ODE0YTFmMGFiNzInLCAnMHg4Y2M3MDIwODFhNjQzOWVjJyxcbiAgJzB4OTBiZWZmZmEyMzYzMWUyOCcsICcweGE0NTA2Y2ViZGU4MmJkZTknLCAnMHhiZWY5YTNmN2IyYzY3OTE1JywgJzB4YzY3MTc4ZjJlMzcyNTMyYicsXG4gICcweGNhMjczZWNlZWEyNjYxOWMnLCAnMHhkMTg2YjhjNzIxYzBjMjA3JywgJzB4ZWFkYTdkZDZjZGUwZWIxZScsICcweGY1N2Q0ZjdmZWU2ZWQxNzgnLFxuICAnMHgwNmYwNjdhYTcyMTc2ZmJhJywgJzB4MGE2MzdkYzVhMmM4OThhNicsICcweDExM2Y5ODA0YmVmOTBkYWUnLCAnMHgxYjcxMGIzNTEzMWM0NzFiJyxcbiAgJzB4MjhkYjc3ZjUyMzA0N2Q4NCcsICcweDMyY2FhYjdiNDBjNzI0OTMnLCAnMHgzYzllYmUwYTE1YzliZWJjJywgJzB4NDMxZDY3YzQ5YzEwMGQ0YycsXG4gICcweDRjYzVkNGJlY2IzZTQyYjYnLCAnMHg1OTdmMjk5Y2ZjNjU3ZTJhJywgJzB4NWZjYjZmYWIzYWQ2ZmFlYycsICcweDZjNDQxOThjNGE0NzU4MTcnXG5dLm1hcChuID0+IEJpZ0ludChuKSkpKSgpO1xuXG4vLyBUZW1wb3JhcnkgYnVmZmVyLCBub3QgdXNlZCB0byBzdG9yZSBhbnl0aGluZyBiZXR3ZWVuIHJ1bnNcbmNvbnN0IFNIQTUxMl9XX0ggPSAvKiBAX19QVVJFX18gKi8gbmV3IFVpbnQzMkFycmF5KDgwKTtcbmNvbnN0IFNIQTUxMl9XX0wgPSAvKiBAX19QVVJFX18gKi8gbmV3IFVpbnQzMkFycmF5KDgwKTtcbmV4cG9ydCBjbGFzcyBTSEE1MTIgZXh0ZW5kcyBTSEEyPFNIQTUxMj4ge1xuICAvLyBXZSBjYW5ub3QgdXNlIGFycmF5IGhlcmUgc2luY2UgYXJyYXkgYWxsb3dzIGluZGV4aW5nIGJ5IHZhcmlhYmxlIHdoaWNoIG1lYW5zIG9wdGltaXplci9jb21waWxlciBjYW5ub3QgdXNlIHJlZ2lzdGVycy5cbiAgLy8gQWxzbyBsb29rcyBjbGVhbmVyIGFuZCBlYXNpZXIgdG8gdmVyaWZ5IHdpdGggc3BlYy5cbiAgLy8gSW5pdGlhbCBzdGF0ZSAoZmlyc3QgMzIgYml0cyBvZiB0aGUgZnJhY3Rpb25hbCBwYXJ0cyBvZiB0aGUgc3F1YXJlIHJvb3RzIG9mIHRoZSBmaXJzdCA4IHByaW1lcyAyLi4xOSk6XG4gIC8vIGggLS0gaGlnaCAzMiBiaXRzLCBsIC0tIGxvdyAzMiBiaXRzXG4gIEFoID0gMHg2YTA5ZTY2NyB8IDA7XG4gIEFsID0gMHhmM2JjYzkwOCB8IDA7XG4gIEJoID0gMHhiYjY3YWU4NSB8IDA7XG4gIEJsID0gMHg4NGNhYTczYiB8IDA7XG4gIENoID0gMHgzYzZlZjM3MiB8IDA7XG4gIENsID0gMHhmZTk0ZjgyYiB8IDA7XG4gIERoID0gMHhhNTRmZjUzYSB8IDA7XG4gIERsID0gMHg1ZjFkMzZmMSB8IDA7XG4gIEVoID0gMHg1MTBlNTI3ZiB8IDA7XG4gIEVsID0gMHhhZGU2ODJkMSB8IDA7XG4gIEZoID0gMHg5YjA1Njg4YyB8IDA7XG4gIEZsID0gMHgyYjNlNmMxZiB8IDA7XG4gIEdoID0gMHgxZjgzZDlhYiB8IDA7XG4gIEdsID0gMHhmYjQxYmQ2YiB8IDA7XG4gIEhoID0gMHg1YmUwY2QxOSB8IDA7XG4gIEhsID0gMHgxMzdlMjE3OSB8IDA7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoMTI4LCA2NCwgMTYsIGZhbHNlKTtcbiAgfVxuICAvLyBwcmV0dGllci1pZ25vcmVcbiAgcHJvdGVjdGVkIGdldCgpOiBbXG4gICAgbnVtYmVyLCBudW1iZXIsIG51bWJlciwgbnVtYmVyLCBudW1iZXIsIG51bWJlciwgbnVtYmVyLCBudW1iZXIsXG4gICAgbnVtYmVyLCBudW1iZXIsIG51bWJlciwgbnVtYmVyLCBudW1iZXIsIG51bWJlciwgbnVtYmVyLCBudW1iZXJcbiAgXSB7XG4gICAgY29uc3QgeyBBaCwgQWwsIEJoLCBCbCwgQ2gsIENsLCBEaCwgRGwsIEVoLCBFbCwgRmgsIEZsLCBHaCwgR2wsIEhoLCBIbCB9ID0gdGhpcztcbiAgICByZXR1cm4gW0FoLCBBbCwgQmgsIEJsLCBDaCwgQ2wsIERoLCBEbCwgRWgsIEVsLCBGaCwgRmwsIEdoLCBHbCwgSGgsIEhsXTtcbiAgfVxuICAvLyBwcmV0dGllci1pZ25vcmVcbiAgcHJvdGVjdGVkIHNldChcbiAgICBBaDogbnVtYmVyLCBBbDogbnVtYmVyLCBCaDogbnVtYmVyLCBCbDogbnVtYmVyLCBDaDogbnVtYmVyLCBDbDogbnVtYmVyLCBEaDogbnVtYmVyLCBEbDogbnVtYmVyLFxuICAgIEVoOiBudW1iZXIsIEVsOiBudW1iZXIsIEZoOiBudW1iZXIsIEZsOiBudW1iZXIsIEdoOiBudW1iZXIsIEdsOiBudW1iZXIsIEhoOiBudW1iZXIsIEhsOiBudW1iZXJcbiAgKSB7XG4gICAgdGhpcy5BaCA9IEFoIHwgMDtcbiAgICB0aGlzLkFsID0gQWwgfCAwO1xuICAgIHRoaXMuQmggPSBCaCB8IDA7XG4gICAgdGhpcy5CbCA9IEJsIHwgMDtcbiAgICB0aGlzLkNoID0gQ2ggfCAwO1xuICAgIHRoaXMuQ2wgPSBDbCB8IDA7XG4gICAgdGhpcy5EaCA9IERoIHwgMDtcbiAgICB0aGlzLkRsID0gRGwgfCAwO1xuICAgIHRoaXMuRWggPSBFaCB8IDA7XG4gICAgdGhpcy5FbCA9IEVsIHwgMDtcbiAgICB0aGlzLkZoID0gRmggfCAwO1xuICAgIHRoaXMuRmwgPSBGbCB8IDA7XG4gICAgdGhpcy5HaCA9IEdoIHwgMDtcbiAgICB0aGlzLkdsID0gR2wgfCAwO1xuICAgIHRoaXMuSGggPSBIaCB8IDA7XG4gICAgdGhpcy5IbCA9IEhsIHwgMDtcbiAgfVxuICBwcm90ZWN0ZWQgcHJvY2Vzcyh2aWV3OiBEYXRhVmlldywgb2Zmc2V0OiBudW1iZXIpIHtcbiAgICAvLyBFeHRlbmQgdGhlIGZpcnN0IDE2IHdvcmRzIGludG8gdGhlIHJlbWFpbmluZyA2NCB3b3JkcyB3WzE2Li43OV0gb2YgdGhlIG1lc3NhZ2Ugc2NoZWR1bGUgYXJyYXlcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IDE2OyBpKyssIG9mZnNldCArPSA0KSB7XG4gICAgICBTSEE1MTJfV19IW2ldID0gdmlldy5nZXRVaW50MzIob2Zmc2V0KTtcbiAgICAgIFNIQTUxMl9XX0xbaV0gPSB2aWV3LmdldFVpbnQzMigob2Zmc2V0ICs9IDQpKTtcbiAgICB9XG4gICAgZm9yIChsZXQgaSA9IDE2OyBpIDwgODA7IGkrKykge1xuICAgICAgLy8gczAgOj0gKHdbaS0xNV0gcmlnaHRyb3RhdGUgMSkgeG9yICh3W2ktMTVdIHJpZ2h0cm90YXRlIDgpIHhvciAod1tpLTE1XSByaWdodHNoaWZ0IDcpXG4gICAgICBjb25zdCBXMTVoID0gU0hBNTEyX1dfSFtpIC0gMTVdIHwgMDtcbiAgICAgIGNvbnN0IFcxNWwgPSBTSEE1MTJfV19MW2kgLSAxNV0gfCAwO1xuICAgICAgY29uc3QgczBoID0gdTY0LnJvdHJTSChXMTVoLCBXMTVsLCAxKSBeIHU2NC5yb3RyU0goVzE1aCwgVzE1bCwgOCkgXiB1NjQuc2hyU0goVzE1aCwgVzE1bCwgNyk7XG4gICAgICBjb25zdCBzMGwgPSB1NjQucm90clNMKFcxNWgsIFcxNWwsIDEpIF4gdTY0LnJvdHJTTChXMTVoLCBXMTVsLCA4KSBeIHU2NC5zaHJTTChXMTVoLCBXMTVsLCA3KTtcbiAgICAgIC8vIHMxIDo9ICh3W2ktMl0gcmlnaHRyb3RhdGUgMTkpIHhvciAod1tpLTJdIHJpZ2h0cm90YXRlIDYxKSB4b3IgKHdbaS0yXSByaWdodHNoaWZ0IDYpXG4gICAgICBjb25zdCBXMmggPSBTSEE1MTJfV19IW2kgLSAyXSB8IDA7XG4gICAgICBjb25zdCBXMmwgPSBTSEE1MTJfV19MW2kgLSAyXSB8IDA7XG4gICAgICBjb25zdCBzMWggPSB1NjQucm90clNIKFcyaCwgVzJsLCAxOSkgXiB1NjQucm90ckJIKFcyaCwgVzJsLCA2MSkgXiB1NjQuc2hyU0goVzJoLCBXMmwsIDYpO1xuICAgICAgY29uc3QgczFsID0gdTY0LnJvdHJTTChXMmgsIFcybCwgMTkpIF4gdTY0LnJvdHJCTChXMmgsIFcybCwgNjEpIF4gdTY0LnNoclNMKFcyaCwgVzJsLCA2KTtcbiAgICAgIC8vIFNIQTI1Nl9XW2ldID0gczAgKyBzMSArIFNIQTI1Nl9XW2kgLSA3XSArIFNIQTI1Nl9XW2kgLSAxNl07XG4gICAgICBjb25zdCBTVU1sID0gdTY0LmFkZDRMKHMwbCwgczFsLCBTSEE1MTJfV19MW2kgLSA3XSwgU0hBNTEyX1dfTFtpIC0gMTZdKTtcbiAgICAgIGNvbnN0IFNVTWggPSB1NjQuYWRkNEgoU1VNbCwgczBoLCBzMWgsIFNIQTUxMl9XX0hbaSAtIDddLCBTSEE1MTJfV19IW2kgLSAxNl0pO1xuICAgICAgU0hBNTEyX1dfSFtpXSA9IFNVTWggfCAwO1xuICAgICAgU0hBNTEyX1dfTFtpXSA9IFNVTWwgfCAwO1xuICAgIH1cbiAgICBsZXQgeyBBaCwgQWwsIEJoLCBCbCwgQ2gsIENsLCBEaCwgRGwsIEVoLCBFbCwgRmgsIEZsLCBHaCwgR2wsIEhoLCBIbCB9ID0gdGhpcztcbiAgICAvLyBDb21wcmVzc2lvbiBmdW5jdGlvbiBtYWluIGxvb3AsIDgwIHJvdW5kc1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgODA7IGkrKykge1xuICAgICAgLy8gUzEgOj0gKGUgcmlnaHRyb3RhdGUgMTQpIHhvciAoZSByaWdodHJvdGF0ZSAxOCkgeG9yIChlIHJpZ2h0cm90YXRlIDQxKVxuICAgICAgY29uc3Qgc2lnbWExaCA9IHU2NC5yb3RyU0goRWgsIEVsLCAxNCkgXiB1NjQucm90clNIKEVoLCBFbCwgMTgpIF4gdTY0LnJvdHJCSChFaCwgRWwsIDQxKTtcbiAgICAgIGNvbnN0IHNpZ21hMWwgPSB1NjQucm90clNMKEVoLCBFbCwgMTQpIF4gdTY0LnJvdHJTTChFaCwgRWwsIDE4KSBeIHU2NC5yb3RyQkwoRWgsIEVsLCA0MSk7XG4gICAgICAvL2NvbnN0IFQxID0gKEggKyBzaWdtYTEgKyBDaGkoRSwgRiwgRykgKyBTSEEyNTZfS1tpXSArIFNIQTI1Nl9XW2ldKSB8IDA7XG4gICAgICBjb25zdCBDSEloID0gKEVoICYgRmgpIF4gKH5FaCAmIEdoKTtcbiAgICAgIGNvbnN0IENISWwgPSAoRWwgJiBGbCkgXiAofkVsICYgR2wpO1xuICAgICAgLy8gVDEgPSBIICsgc2lnbWExICsgQ2hpKEUsIEYsIEcpICsgU0hBNTEyX0tbaV0gKyBTSEE1MTJfV1tpXVxuICAgICAgLy8gcHJldHRpZXItaWdub3JlXG4gICAgICBjb25zdCBUMWxsID0gdTY0LmFkZDVMKEhsLCBzaWdtYTFsLCBDSElsLCBTSEE1MTJfS2xbaV0sIFNIQTUxMl9XX0xbaV0pO1xuICAgICAgY29uc3QgVDFoID0gdTY0LmFkZDVIKFQxbGwsIEhoLCBzaWdtYTFoLCBDSEloLCBTSEE1MTJfS2hbaV0sIFNIQTUxMl9XX0hbaV0pO1xuICAgICAgY29uc3QgVDFsID0gVDFsbCB8IDA7XG4gICAgICAvLyBTMCA6PSAoYSByaWdodHJvdGF0ZSAyOCkgeG9yIChhIHJpZ2h0cm90YXRlIDM0KSB4b3IgKGEgcmlnaHRyb3RhdGUgMzkpXG4gICAgICBjb25zdCBzaWdtYTBoID0gdTY0LnJvdHJTSChBaCwgQWwsIDI4KSBeIHU2NC5yb3RyQkgoQWgsIEFsLCAzNCkgXiB1NjQucm90ckJIKEFoLCBBbCwgMzkpO1xuICAgICAgY29uc3Qgc2lnbWEwbCA9IHU2NC5yb3RyU0woQWgsIEFsLCAyOCkgXiB1NjQucm90ckJMKEFoLCBBbCwgMzQpIF4gdTY0LnJvdHJCTChBaCwgQWwsIDM5KTtcbiAgICAgIGNvbnN0IE1BSmggPSAoQWggJiBCaCkgXiAoQWggJiBDaCkgXiAoQmggJiBDaCk7XG4gICAgICBjb25zdCBNQUpsID0gKEFsICYgQmwpIF4gKEFsICYgQ2wpIF4gKEJsICYgQ2wpO1xuICAgICAgSGggPSBHaCB8IDA7XG4gICAgICBIbCA9IEdsIHwgMDtcbiAgICAgIEdoID0gRmggfCAwO1xuICAgICAgR2wgPSBGbCB8IDA7XG4gICAgICBGaCA9IEVoIHwgMDtcbiAgICAgIEZsID0gRWwgfCAwO1xuICAgICAgKHsgaDogRWgsIGw6IEVsIH0gPSB1NjQuYWRkKERoIHwgMCwgRGwgfCAwLCBUMWggfCAwLCBUMWwgfCAwKSk7XG4gICAgICBEaCA9IENoIHwgMDtcbiAgICAgIERsID0gQ2wgfCAwO1xuICAgICAgQ2ggPSBCaCB8IDA7XG4gICAgICBDbCA9IEJsIHwgMDtcbiAgICAgIEJoID0gQWggfCAwO1xuICAgICAgQmwgPSBBbCB8IDA7XG4gICAgICBjb25zdCBBbGwgPSB1NjQuYWRkM0woVDFsLCBzaWdtYTBsLCBNQUpsKTtcbiAgICAgIEFoID0gdTY0LmFkZDNIKEFsbCwgVDFoLCBzaWdtYTBoLCBNQUpoKTtcbiAgICAgIEFsID0gQWxsIHwgMDtcbiAgICB9XG4gICAgLy8gQWRkIHRoZSBjb21wcmVzc2VkIGNodW5rIHRvIHRoZSBjdXJyZW50IGhhc2ggdmFsdWVcbiAgICAoeyBoOiBBaCwgbDogQWwgfSA9IHU2NC5hZGQodGhpcy5BaCB8IDAsIHRoaXMuQWwgfCAwLCBBaCB8IDAsIEFsIHwgMCkpO1xuICAgICh7IGg6IEJoLCBsOiBCbCB9ID0gdTY0LmFkZCh0aGlzLkJoIHwgMCwgdGhpcy5CbCB8IDAsIEJoIHwgMCwgQmwgfCAwKSk7XG4gICAgKHsgaDogQ2gsIGw6IENsIH0gPSB1NjQuYWRkKHRoaXMuQ2ggfCAwLCB0aGlzLkNsIHwgMCwgQ2ggfCAwLCBDbCB8IDApKTtcbiAgICAoeyBoOiBEaCwgbDogRGwgfSA9IHU2NC5hZGQodGhpcy5EaCB8IDAsIHRoaXMuRGwgfCAwLCBEaCB8IDAsIERsIHwgMCkpO1xuICAgICh7IGg6IEVoLCBsOiBFbCB9ID0gdTY0LmFkZCh0aGlzLkVoIHwgMCwgdGhpcy5FbCB8IDAsIEVoIHwgMCwgRWwgfCAwKSk7XG4gICAgKHsgaDogRmgsIGw6IEZsIH0gPSB1NjQuYWRkKHRoaXMuRmggfCAwLCB0aGlzLkZsIHwgMCwgRmggfCAwLCBGbCB8IDApKTtcbiAgICAoeyBoOiBHaCwgbDogR2wgfSA9IHU2NC5hZGQodGhpcy5HaCB8IDAsIHRoaXMuR2wgfCAwLCBHaCB8IDAsIEdsIHwgMCkpO1xuICAgICh7IGg6IEhoLCBsOiBIbCB9ID0gdTY0LmFkZCh0aGlzLkhoIHwgMCwgdGhpcy5IbCB8IDAsIEhoIHwgMCwgSGwgfCAwKSk7XG4gICAgdGhpcy5zZXQoQWgsIEFsLCBCaCwgQmwsIENoLCBDbCwgRGgsIERsLCBFaCwgRWwsIEZoLCBGbCwgR2gsIEdsLCBIaCwgSGwpO1xuICB9XG4gIHByb3RlY3RlZCByb3VuZENsZWFuKCkge1xuICAgIFNIQTUxMl9XX0guZmlsbCgwKTtcbiAgICBTSEE1MTJfV19MLmZpbGwoMCk7XG4gIH1cbiAgZGVzdHJveSgpIHtcbiAgICB0aGlzLmJ1ZmZlci5maWxsKDApO1xuICAgIHRoaXMuc2V0KDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDApO1xuICB9XG59XG5cbmNsYXNzIFNIQTUxMl8yMjQgZXh0ZW5kcyBTSEE1MTIge1xuICAvLyBoIC0tIGhpZ2ggMzIgYml0cywgbCAtLSBsb3cgMzIgYml0c1xuICBBaCA9IDB4OGMzZDM3YzggfCAwO1xuICBBbCA9IDB4MTk1NDRkYTIgfCAwO1xuICBCaCA9IDB4NzNlMTk5NjYgfCAwO1xuICBCbCA9IDB4ODlkY2Q0ZDYgfCAwO1xuICBDaCA9IDB4MWRmYWI3YWUgfCAwO1xuICBDbCA9IDB4MzJmZjljODIgfCAwO1xuICBEaCA9IDB4Njc5ZGQ1MTQgfCAwO1xuICBEbCA9IDB4NTgyZjlmY2YgfCAwO1xuICBFaCA9IDB4MGY2ZDJiNjkgfCAwO1xuICBFbCA9IDB4N2JkNDRkYTggfCAwO1xuICBGaCA9IDB4NzdlMzZmNzMgfCAwO1xuICBGbCA9IDB4MDRjNDg5NDIgfCAwO1xuICBHaCA9IDB4M2Y5ZDg1YTggfCAwO1xuICBHbCA9IDB4NmExZDM2YzggfCAwO1xuICBIaCA9IDB4MTExMmU2YWQgfCAwO1xuICBIbCA9IDB4OTFkNjkyYTEgfCAwO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5vdXRwdXRMZW4gPSAyODtcbiAgfVxufVxuXG5jbGFzcyBTSEE1MTJfMjU2IGV4dGVuZHMgU0hBNTEyIHtcbiAgLy8gaCAtLSBoaWdoIDMyIGJpdHMsIGwgLS0gbG93IDMyIGJpdHNcbiAgQWggPSAweDIyMzEyMTk0IHwgMDtcbiAgQWwgPSAweGZjMmJmNzJjIHwgMDtcbiAgQmggPSAweDlmNTU1ZmEzIHwgMDtcbiAgQmwgPSAweGM4NGM2NGMyIHwgMDtcbiAgQ2ggPSAweDIzOTNiODZiIHwgMDtcbiAgQ2wgPSAweDZmNTNiMTUxIHwgMDtcbiAgRGggPSAweDk2Mzg3NzE5IHwgMDtcbiAgRGwgPSAweDU5NDBlYWJkIHwgMDtcbiAgRWggPSAweDk2MjgzZWUyIHwgMDtcbiAgRWwgPSAweGE4OGVmZmUzIHwgMDtcbiAgRmggPSAweGJlNWUxZTI1IHwgMDtcbiAgRmwgPSAweDUzODYzOTkyIHwgMDtcbiAgR2ggPSAweDJiMDE5OWZjIHwgMDtcbiAgR2wgPSAweDJjODViOGFhIHwgMDtcbiAgSGggPSAweDBlYjcyZGRjIHwgMDtcbiAgSGwgPSAweDgxYzUyY2EyIHwgMDtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMub3V0cHV0TGVuID0gMzI7XG4gIH1cbn1cblxuY2xhc3MgU0hBMzg0IGV4dGVuZHMgU0hBNTEyIHtcbiAgLy8gaCAtLSBoaWdoIDMyIGJpdHMsIGwgLS0gbG93IDMyIGJpdHNcbiAgQWggPSAweGNiYmI5ZDVkIHwgMDtcbiAgQWwgPSAweGMxMDU5ZWQ4IHwgMDtcbiAgQmggPSAweDYyOWEyOTJhIHwgMDtcbiAgQmwgPSAweDM2N2NkNTA3IHwgMDtcbiAgQ2ggPSAweDkxNTkwMTVhIHwgMDtcbiAgQ2wgPSAweDMwNzBkZDE3IHwgMDtcbiAgRGggPSAweDE1MmZlY2Q4IHwgMDtcbiAgRGwgPSAweGY3MGU1OTM5IHwgMDtcbiAgRWggPSAweDY3MzMyNjY3IHwgMDtcbiAgRWwgPSAweGZmYzAwYjMxIHwgMDtcbiAgRmggPSAweDhlYjQ0YTg3IHwgMDtcbiAgRmwgPSAweDY4NTgxNTExIHwgMDtcbiAgR2ggPSAweGRiMGMyZTBkIHwgMDtcbiAgR2wgPSAweDY0Zjk4ZmE3IHwgMDtcbiAgSGggPSAweDQ3YjU0ODFkIHwgMDtcbiAgSGwgPSAweGJlZmE0ZmE0IHwgMDtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMub3V0cHV0TGVuID0gNDg7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IHNoYTUxMiA9IC8qIEBfX1BVUkVfXyAqLyB3cmFwQ29uc3RydWN0b3IoKCkgPT4gbmV3IFNIQTUxMigpKTtcbmV4cG9ydCBjb25zdCBzaGE1MTJfMjI0ID0gLyogQF9fUFVSRV9fICovIHdyYXBDb25zdHJ1Y3RvcigoKSA9PiBuZXcgU0hBNTEyXzIyNCgpKTtcbmV4cG9ydCBjb25zdCBzaGE1MTJfMjU2ID0gLyogQF9fUFVSRV9fICovIHdyYXBDb25zdHJ1Y3RvcigoKSA9PiBuZXcgU0hBNTEyXzI1NigpKTtcbmV4cG9ydCBjb25zdCBzaGEzODQgPSAvKiBAX19QVVJFX18gKi8gd3JhcENvbnN0cnVjdG9yKCgpID0+IG5ldyBTSEEzODQoKSk7XG4iLCAiLyohIG5vYmxlLWN1cnZlcyAtIE1JVCBMaWNlbnNlIChjKSAyMDIyIFBhdWwgTWlsbGVyIChwYXVsbWlsbHIuY29tKSAqL1xuLy8gMTAwIGxpbmVzIG9mIGNvZGUgaW4gdGhlIGZpbGUgYXJlIGR1cGxpY2F0ZWQgZnJvbSBub2JsZS1oYXNoZXMgKHV0aWxzKS5cbi8vIFRoaXMgaXMgT0s6IGBhYnN0cmFjdGAgZGlyZWN0b3J5IGRvZXMgbm90IHVzZSBub2JsZS1oYXNoZXMuXG4vLyBVc2VyIG1heSBvcHQtaW4gaW50byB1c2luZyBkaWZmZXJlbnQgaGFzaGluZyBsaWJyYXJ5LiBUaGlzIHdheSwgbm9ibGUtaGFzaGVzXG4vLyB3b24ndCBiZSBpbmNsdWRlZCBpbnRvIHRoZWlyIGJ1bmRsZS5cbmNvbnN0IF8wbiA9IEJpZ0ludCgwKTtcbmNvbnN0IF8xbiA9IEJpZ0ludCgxKTtcbmNvbnN0IF8ybiA9IEJpZ0ludCgyKTtcbmNvbnN0IHU4YSA9IChhOiBhbnkpOiBhIGlzIFVpbnQ4QXJyYXkgPT4gYSBpbnN0YW5jZW9mIFVpbnQ4QXJyYXk7XG5leHBvcnQgdHlwZSBIZXggPSBVaW50OEFycmF5IHwgc3RyaW5nOyAvLyBoZXggc3RyaW5ncyBhcmUgYWNjZXB0ZWQgZm9yIHNpbXBsaWNpdHlcbmV4cG9ydCB0eXBlIFByaXZLZXkgPSBIZXggfCBiaWdpbnQ7IC8vIGJpZ2ludHMgYXJlIGFjY2VwdGVkIHRvIGVhc2UgbGVhcm5pbmcgY3VydmVcbmV4cG9ydCB0eXBlIENIYXNoID0ge1xuICAobWVzc2FnZTogVWludDhBcnJheSB8IHN0cmluZyk6IFVpbnQ4QXJyYXk7XG4gIGJsb2NrTGVuOiBudW1iZXI7XG4gIG91dHB1dExlbjogbnVtYmVyO1xuICBjcmVhdGUob3B0cz86IHsgZGtMZW4/OiBudW1iZXIgfSk6IGFueTsgLy8gRm9yIHNoYWtlXG59O1xuZXhwb3J0IHR5cGUgRkhhc2ggPSAobWVzc2FnZTogVWludDhBcnJheSB8IHN0cmluZykgPT4gVWludDhBcnJheTtcblxuY29uc3QgaGV4ZXMgPSAvKiBAX19QVVJFX18gKi8gQXJyYXkuZnJvbSh7IGxlbmd0aDogMjU2IH0sIChfLCBpKSA9PlxuICBpLnRvU3RyaW5nKDE2KS5wYWRTdGFydCgyLCAnMCcpXG4pO1xuLyoqXG4gKiBAZXhhbXBsZSBieXRlc1RvSGV4KFVpbnQ4QXJyYXkuZnJvbShbMHhjYSwgMHhmZSwgMHgwMSwgMHgyM10pKSAvLyAnY2FmZTAxMjMnXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBieXRlc1RvSGV4KGJ5dGVzOiBVaW50OEFycmF5KTogc3RyaW5nIHtcbiAgaWYgKCF1OGEoYnl0ZXMpKSB0aHJvdyBuZXcgRXJyb3IoJ1VpbnQ4QXJyYXkgZXhwZWN0ZWQnKTtcbiAgLy8gcHJlLWNhY2hpbmcgaW1wcm92ZXMgdGhlIHNwZWVkIDZ4XG4gIGxldCBoZXggPSAnJztcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBieXRlcy5sZW5ndGg7IGkrKykge1xuICAgIGhleCArPSBoZXhlc1tieXRlc1tpXV07XG4gIH1cbiAgcmV0dXJuIGhleDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG51bWJlclRvSGV4VW5wYWRkZWQobnVtOiBudW1iZXIgfCBiaWdpbnQpOiBzdHJpbmcge1xuICBjb25zdCBoZXggPSBudW0udG9TdHJpbmcoMTYpO1xuICByZXR1cm4gaGV4Lmxlbmd0aCAmIDEgPyBgMCR7aGV4fWAgOiBoZXg7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBoZXhUb051bWJlcihoZXg6IHN0cmluZyk6IGJpZ2ludCB7XG4gIGlmICh0eXBlb2YgaGV4ICE9PSAnc3RyaW5nJykgdGhyb3cgbmV3IEVycm9yKCdoZXggc3RyaW5nIGV4cGVjdGVkLCBnb3QgJyArIHR5cGVvZiBoZXgpO1xuICAvLyBCaWcgRW5kaWFuXG4gIHJldHVybiBCaWdJbnQoaGV4ID09PSAnJyA/ICcwJyA6IGAweCR7aGV4fWApO1xufVxuXG4vKipcbiAqIEBleGFtcGxlIGhleFRvQnl0ZXMoJ2NhZmUwMTIzJykgLy8gVWludDhBcnJheS5mcm9tKFsweGNhLCAweGZlLCAweDAxLCAweDIzXSlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGhleFRvQnl0ZXMoaGV4OiBzdHJpbmcpOiBVaW50OEFycmF5IHtcbiAgaWYgKHR5cGVvZiBoZXggIT09ICdzdHJpbmcnKSB0aHJvdyBuZXcgRXJyb3IoJ2hleCBzdHJpbmcgZXhwZWN0ZWQsIGdvdCAnICsgdHlwZW9mIGhleCk7XG4gIGNvbnN0IGxlbiA9IGhleC5sZW5ndGg7XG4gIGlmIChsZW4gJSAyKSB0aHJvdyBuZXcgRXJyb3IoJ3BhZGRlZCBoZXggc3RyaW5nIGV4cGVjdGVkLCBnb3QgdW5wYWRkZWQgaGV4IG9mIGxlbmd0aCAnICsgbGVuKTtcbiAgY29uc3QgYXJyYXkgPSBuZXcgVWludDhBcnJheShsZW4gLyAyKTtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBhcnJheS5sZW5ndGg7IGkrKykge1xuICAgIGNvbnN0IGogPSBpICogMjtcbiAgICBjb25zdCBoZXhCeXRlID0gaGV4LnNsaWNlKGosIGogKyAyKTtcbiAgICBjb25zdCBieXRlID0gTnVtYmVyLnBhcnNlSW50KGhleEJ5dGUsIDE2KTtcbiAgICBpZiAoTnVtYmVyLmlzTmFOKGJ5dGUpIHx8IGJ5dGUgPCAwKSB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgYnl0ZSBzZXF1ZW5jZScpO1xuICAgIGFycmF5W2ldID0gYnl0ZTtcbiAgfVxuICByZXR1cm4gYXJyYXk7XG59XG5cbi8vIEJFOiBCaWcgRW5kaWFuLCBMRTogTGl0dGxlIEVuZGlhblxuZXhwb3J0IGZ1bmN0aW9uIGJ5dGVzVG9OdW1iZXJCRShieXRlczogVWludDhBcnJheSk6IGJpZ2ludCB7XG4gIHJldHVybiBoZXhUb051bWJlcihieXRlc1RvSGV4KGJ5dGVzKSk7XG59XG5leHBvcnQgZnVuY3Rpb24gYnl0ZXNUb051bWJlckxFKGJ5dGVzOiBVaW50OEFycmF5KTogYmlnaW50IHtcbiAgaWYgKCF1OGEoYnl0ZXMpKSB0aHJvdyBuZXcgRXJyb3IoJ1VpbnQ4QXJyYXkgZXhwZWN0ZWQnKTtcbiAgcmV0dXJuIGhleFRvTnVtYmVyKGJ5dGVzVG9IZXgoVWludDhBcnJheS5mcm9tKGJ5dGVzKS5yZXZlcnNlKCkpKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG51bWJlclRvQnl0ZXNCRShuOiBudW1iZXIgfCBiaWdpbnQsIGxlbjogbnVtYmVyKTogVWludDhBcnJheSB7XG4gIHJldHVybiBoZXhUb0J5dGVzKG4udG9TdHJpbmcoMTYpLnBhZFN0YXJ0KGxlbiAqIDIsICcwJykpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIG51bWJlclRvQnl0ZXNMRShuOiBudW1iZXIgfCBiaWdpbnQsIGxlbjogbnVtYmVyKTogVWludDhBcnJheSB7XG4gIHJldHVybiBudW1iZXJUb0J5dGVzQkUobiwgbGVuKS5yZXZlcnNlKCk7XG59XG4vLyBVbnBhZGRlZCwgcmFyZWx5IHVzZWRcbmV4cG9ydCBmdW5jdGlvbiBudW1iZXJUb1ZhckJ5dGVzQkUobjogbnVtYmVyIHwgYmlnaW50KTogVWludDhBcnJheSB7XG4gIHJldHVybiBoZXhUb0J5dGVzKG51bWJlclRvSGV4VW5wYWRkZWQobikpO1xufVxuXG4vKipcbiAqIFRha2VzIGhleCBzdHJpbmcgb3IgVWludDhBcnJheSwgY29udmVydHMgdG8gVWludDhBcnJheS5cbiAqIFZhbGlkYXRlcyBvdXRwdXQgbGVuZ3RoLlxuICogV2lsbCB0aHJvdyBlcnJvciBmb3Igb3RoZXIgdHlwZXMuXG4gKiBAcGFyYW0gdGl0bGUgZGVzY3JpcHRpdmUgdGl0bGUgZm9yIGFuIGVycm9yIGUuZy4gJ3ByaXZhdGUga2V5J1xuICogQHBhcmFtIGhleCBoZXggc3RyaW5nIG9yIFVpbnQ4QXJyYXlcbiAqIEBwYXJhbSBleHBlY3RlZExlbmd0aCBvcHRpb25hbCwgd2lsbCBjb21wYXJlIHRvIHJlc3VsdCBhcnJheSdzIGxlbmd0aFxuICogQHJldHVybnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGVuc3VyZUJ5dGVzKHRpdGxlOiBzdHJpbmcsIGhleDogSGV4LCBleHBlY3RlZExlbmd0aD86IG51bWJlcik6IFVpbnQ4QXJyYXkge1xuICBsZXQgcmVzOiBVaW50OEFycmF5O1xuICBpZiAodHlwZW9mIGhleCA9PT0gJ3N0cmluZycpIHtcbiAgICB0cnkge1xuICAgICAgcmVzID0gaGV4VG9CeXRlcyhoZXgpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgJHt0aXRsZX0gbXVzdCBiZSB2YWxpZCBoZXggc3RyaW5nLCBnb3QgXCIke2hleH1cIi4gQ2F1c2U6ICR7ZX1gKTtcbiAgICB9XG4gIH0gZWxzZSBpZiAodThhKGhleCkpIHtcbiAgICAvLyBVaW50OEFycmF5LmZyb20oKSBpbnN0ZWFkIG9mIGhhc2guc2xpY2UoKSBiZWNhdXNlIG5vZGUuanMgQnVmZmVyXG4gICAgLy8gaXMgaW5zdGFuY2Ugb2YgVWludDhBcnJheSwgYW5kIGl0cyBzbGljZSgpIGNyZWF0ZXMgKiptdXRhYmxlKiogY29weVxuICAgIHJlcyA9IFVpbnQ4QXJyYXkuZnJvbShoZXgpO1xuICB9IGVsc2Uge1xuICAgIHRocm93IG5ldyBFcnJvcihgJHt0aXRsZX0gbXVzdCBiZSBoZXggc3RyaW5nIG9yIFVpbnQ4QXJyYXlgKTtcbiAgfVxuICBjb25zdCBsZW4gPSByZXMubGVuZ3RoO1xuICBpZiAodHlwZW9mIGV4cGVjdGVkTGVuZ3RoID09PSAnbnVtYmVyJyAmJiBsZW4gIT09IGV4cGVjdGVkTGVuZ3RoKVxuICAgIHRocm93IG5ldyBFcnJvcihgJHt0aXRsZX0gZXhwZWN0ZWQgJHtleHBlY3RlZExlbmd0aH0gYnl0ZXMsIGdvdCAke2xlbn1gKTtcbiAgcmV0dXJuIHJlcztcbn1cblxuLyoqXG4gKiBDb3BpZXMgc2V2ZXJhbCBVaW50OEFycmF5cyBpbnRvIG9uZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvbmNhdEJ5dGVzKC4uLmFycmF5czogVWludDhBcnJheVtdKTogVWludDhBcnJheSB7XG4gIGNvbnN0IHIgPSBuZXcgVWludDhBcnJheShhcnJheXMucmVkdWNlKChzdW0sIGEpID0+IHN1bSArIGEubGVuZ3RoLCAwKSk7XG4gIGxldCBwYWQgPSAwOyAvLyB3YWxrIHRocm91Z2ggZWFjaCBpdGVtLCBlbnN1cmUgdGhleSBoYXZlIHByb3BlciB0eXBlXG4gIGFycmF5cy5mb3JFYWNoKChhKSA9PiB7XG4gICAgaWYgKCF1OGEoYSkpIHRocm93IG5ldyBFcnJvcignVWludDhBcnJheSBleHBlY3RlZCcpO1xuICAgIHIuc2V0KGEsIHBhZCk7XG4gICAgcGFkICs9IGEubGVuZ3RoO1xuICB9KTtcbiAgcmV0dXJuIHI7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBlcXVhbEJ5dGVzKGIxOiBVaW50OEFycmF5LCBiMjogVWludDhBcnJheSkge1xuICAvLyBXZSBkb24ndCBjYXJlIGFib3V0IHRpbWluZyBhdHRhY2tzIGhlcmVcbiAgaWYgKGIxLmxlbmd0aCAhPT0gYjIubGVuZ3RoKSByZXR1cm4gZmFsc2U7XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgYjEubGVuZ3RoOyBpKyspIGlmIChiMVtpXSAhPT0gYjJbaV0pIHJldHVybiBmYWxzZTtcbiAgcmV0dXJuIHRydWU7XG59XG5cbi8vIEdsb2JhbCBzeW1ib2xzIGluIGJvdGggYnJvd3NlcnMgYW5kIE5vZGUuanMgc2luY2UgdjExXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL21pY3Jvc29mdC9UeXBlU2NyaXB0L2lzc3Vlcy8zMTUzNVxuZGVjbGFyZSBjb25zdCBUZXh0RW5jb2RlcjogYW55O1xuXG4vKipcbiAqIEBleGFtcGxlIHV0ZjhUb0J5dGVzKCdhYmMnKSAvLyBuZXcgVWludDhBcnJheShbOTcsIDk4LCA5OV0pXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1dGY4VG9CeXRlcyhzdHI6IHN0cmluZyk6IFVpbnQ4QXJyYXkge1xuICBpZiAodHlwZW9mIHN0ciAhPT0gJ3N0cmluZycpIHRocm93IG5ldyBFcnJvcihgdXRmOFRvQnl0ZXMgZXhwZWN0ZWQgc3RyaW5nLCBnb3QgJHt0eXBlb2Ygc3RyfWApO1xuICByZXR1cm4gbmV3IFVpbnQ4QXJyYXkobmV3IFRleHRFbmNvZGVyKCkuZW5jb2RlKHN0cikpOyAvLyBodHRwczovL2J1Z3ppbC5sYS8xNjgxODA5XG59XG5cbi8vIEJpdCBvcGVyYXRpb25zXG5cbi8qKlxuICogQ2FsY3VsYXRlcyBhbW91bnQgb2YgYml0cyBpbiBhIGJpZ2ludC5cbiAqIFNhbWUgYXMgYG4udG9TdHJpbmcoMikubGVuZ3RoYFxuICovXG5leHBvcnQgZnVuY3Rpb24gYml0TGVuKG46IGJpZ2ludCkge1xuICBsZXQgbGVuO1xuICBmb3IgKGxlbiA9IDA7IG4gPiBfMG47IG4gPj49IF8xbiwgbGVuICs9IDEpO1xuICByZXR1cm4gbGVuO1xufVxuXG4vKipcbiAqIEdldHMgc2luZ2xlIGJpdCBhdCBwb3NpdGlvbi5cbiAqIE5PVEU6IGZpcnN0IGJpdCBwb3NpdGlvbiBpcyAwIChzYW1lIGFzIGFycmF5cylcbiAqIFNhbWUgYXMgYCEhK0FycmF5LmZyb20obi50b1N0cmluZygyKSkucmV2ZXJzZSgpW3Bvc11gXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBiaXRHZXQobjogYmlnaW50LCBwb3M6IG51bWJlcikge1xuICByZXR1cm4gKG4gPj4gQmlnSW50KHBvcykpICYgXzFuO1xufVxuXG4vKipcbiAqIFNldHMgc2luZ2xlIGJpdCBhdCBwb3NpdGlvbi5cbiAqL1xuZXhwb3J0IGNvbnN0IGJpdFNldCA9IChuOiBiaWdpbnQsIHBvczogbnVtYmVyLCB2YWx1ZTogYm9vbGVhbikgPT4ge1xuICByZXR1cm4gbiB8ICgodmFsdWUgPyBfMW4gOiBfMG4pIDw8IEJpZ0ludChwb3MpKTtcbn07XG5cbi8qKlxuICogQ2FsY3VsYXRlIG1hc2sgZm9yIE4gYml0cy4gTm90IHVzaW5nICoqIG9wZXJhdG9yIHdpdGggYmlnaW50cyBiZWNhdXNlIG9mIG9sZCBlbmdpbmVzLlxuICogU2FtZSBhcyBCaWdJbnQoYDBiJHtBcnJheShpKS5maWxsKCcxJykuam9pbignJyl9YClcbiAqL1xuZXhwb3J0IGNvbnN0IGJpdE1hc2sgPSAobjogbnVtYmVyKSA9PiAoXzJuIDw8IEJpZ0ludChuIC0gMSkpIC0gXzFuO1xuXG4vLyBEUkJHXG5cbmNvbnN0IHU4biA9IChkYXRhPzogYW55KSA9PiBuZXcgVWludDhBcnJheShkYXRhKTsgLy8gY3JlYXRlcyBVaW50OEFycmF5XG5jb25zdCB1OGZyID0gKGFycjogYW55KSA9PiBVaW50OEFycmF5LmZyb20oYXJyKTsgLy8gYW5vdGhlciBzaG9ydGN1dFxudHlwZSBQcmVkPFQ+ID0gKHY6IFVpbnQ4QXJyYXkpID0+IFQgfCB1bmRlZmluZWQ7XG4vKipcbiAqIE1pbmltYWwgSE1BQy1EUkJHIGZyb20gTklTVCA4MDAtOTAgZm9yIFJGQzY5Nzkgc2lncy5cbiAqIEByZXR1cm5zIGZ1bmN0aW9uIHRoYXQgd2lsbCBjYWxsIERSQkcgdW50aWwgMm5kIGFyZyByZXR1cm5zIHNvbWV0aGluZyBtZWFuaW5nZnVsXG4gKiBAZXhhbXBsZVxuICogICBjb25zdCBkcmJnID0gY3JlYXRlSG1hY0RSQkc8S2V5PigzMiwgMzIsIGhtYWMpO1xuICogICBkcmJnKHNlZWQsIGJ5dGVzVG9LZXkpOyAvLyBieXRlc1RvS2V5IG11c3QgcmV0dXJuIEtleSBvciB1bmRlZmluZWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUhtYWNEcmJnPFQ+KFxuICBoYXNoTGVuOiBudW1iZXIsXG4gIHFCeXRlTGVuOiBudW1iZXIsXG4gIGhtYWNGbjogKGtleTogVWludDhBcnJheSwgLi4ubWVzc2FnZXM6IFVpbnQ4QXJyYXlbXSkgPT4gVWludDhBcnJheVxuKTogKHNlZWQ6IFVpbnQ4QXJyYXksIHByZWRpY2F0ZTogUHJlZDxUPikgPT4gVCB7XG4gIGlmICh0eXBlb2YgaGFzaExlbiAhPT0gJ251bWJlcicgfHwgaGFzaExlbiA8IDIpIHRocm93IG5ldyBFcnJvcignaGFzaExlbiBtdXN0IGJlIGEgbnVtYmVyJyk7XG4gIGlmICh0eXBlb2YgcUJ5dGVMZW4gIT09ICdudW1iZXInIHx8IHFCeXRlTGVuIDwgMikgdGhyb3cgbmV3IEVycm9yKCdxQnl0ZUxlbiBtdXN0IGJlIGEgbnVtYmVyJyk7XG4gIGlmICh0eXBlb2YgaG1hY0ZuICE9PSAnZnVuY3Rpb24nKSB0aHJvdyBuZXcgRXJyb3IoJ2htYWNGbiBtdXN0IGJlIGEgZnVuY3Rpb24nKTtcbiAgLy8gU3RlcCBCLCBTdGVwIEM6IHNldCBoYXNoTGVuIHRvIDgqY2VpbChobGVuLzgpXG4gIGxldCB2ID0gdThuKGhhc2hMZW4pOyAvLyBNaW5pbWFsIG5vbi1mdWxsLXNwZWMgSE1BQy1EUkJHIGZyb20gTklTVCA4MDAtOTAgZm9yIFJGQzY5Nzkgc2lncy5cbiAgbGV0IGsgPSB1OG4oaGFzaExlbik7IC8vIFN0ZXBzIEIgYW5kIEMgb2YgUkZDNjk3OSAzLjI6IHNldCBoYXNoTGVuLCBpbiBvdXIgY2FzZSBhbHdheXMgc2FtZVxuICBsZXQgaSA9IDA7IC8vIEl0ZXJhdGlvbnMgY291bnRlciwgd2lsbCB0aHJvdyB3aGVuIG92ZXIgMTAwMFxuICBjb25zdCByZXNldCA9ICgpID0+IHtcbiAgICB2LmZpbGwoMSk7XG4gICAgay5maWxsKDApO1xuICAgIGkgPSAwO1xuICB9O1xuICBjb25zdCBoID0gKC4uLmI6IFVpbnQ4QXJyYXlbXSkgPT4gaG1hY0ZuKGssIHYsIC4uLmIpOyAvLyBobWFjKGspKHYsIC4uLnZhbHVlcylcbiAgY29uc3QgcmVzZWVkID0gKHNlZWQgPSB1OG4oKSkgPT4ge1xuICAgIC8vIEhNQUMtRFJCRyByZXNlZWQoKSBmdW5jdGlvbi4gU3RlcHMgRC1HXG4gICAgayA9IGgodThmcihbMHgwMF0pLCBzZWVkKTsgLy8gayA9IGhtYWMoayB8fCB2IHx8IDB4MDAgfHwgc2VlZClcbiAgICB2ID0gaCgpOyAvLyB2ID0gaG1hYyhrIHx8IHYpXG4gICAgaWYgKHNlZWQubGVuZ3RoID09PSAwKSByZXR1cm47XG4gICAgayA9IGgodThmcihbMHgwMV0pLCBzZWVkKTsgLy8gayA9IGhtYWMoayB8fCB2IHx8IDB4MDEgfHwgc2VlZClcbiAgICB2ID0gaCgpOyAvLyB2ID0gaG1hYyhrIHx8IHYpXG4gIH07XG4gIGNvbnN0IGdlbiA9ICgpID0+IHtcbiAgICAvLyBITUFDLURSQkcgZ2VuZXJhdGUoKSBmdW5jdGlvblxuICAgIGlmIChpKysgPj0gMTAwMCkgdGhyb3cgbmV3IEVycm9yKCdkcmJnOiB0cmllZCAxMDAwIHZhbHVlcycpO1xuICAgIGxldCBsZW4gPSAwO1xuICAgIGNvbnN0IG91dDogVWludDhBcnJheVtdID0gW107XG4gICAgd2hpbGUgKGxlbiA8IHFCeXRlTGVuKSB7XG4gICAgICB2ID0gaCgpO1xuICAgICAgY29uc3Qgc2wgPSB2LnNsaWNlKCk7XG4gICAgICBvdXQucHVzaChzbCk7XG4gICAgICBsZW4gKz0gdi5sZW5ndGg7XG4gICAgfVxuICAgIHJldHVybiBjb25jYXRCeXRlcyguLi5vdXQpO1xuICB9O1xuICBjb25zdCBnZW5VbnRpbCA9IChzZWVkOiBVaW50OEFycmF5LCBwcmVkOiBQcmVkPFQ+KTogVCA9PiB7XG4gICAgcmVzZXQoKTtcbiAgICByZXNlZWQoc2VlZCk7IC8vIFN0ZXBzIEQtR1xuICAgIGxldCByZXM6IFQgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7IC8vIFN0ZXAgSDogZ3JpbmQgdW50aWwgayBpcyBpbiBbMS4ubi0xXVxuICAgIHdoaWxlICghKHJlcyA9IHByZWQoZ2VuKCkpKSkgcmVzZWVkKCk7XG4gICAgcmVzZXQoKTtcbiAgICByZXR1cm4gcmVzO1xuICB9O1xuICByZXR1cm4gZ2VuVW50aWw7XG59XG5cbi8vIFZhbGlkYXRpbmcgY3VydmVzIGFuZCBmaWVsZHNcblxuY29uc3QgdmFsaWRhdG9yRm5zID0ge1xuICBiaWdpbnQ6ICh2YWw6IGFueSkgPT4gdHlwZW9mIHZhbCA9PT0gJ2JpZ2ludCcsXG4gIGZ1bmN0aW9uOiAodmFsOiBhbnkpID0+IHR5cGVvZiB2YWwgPT09ICdmdW5jdGlvbicsXG4gIGJvb2xlYW46ICh2YWw6IGFueSkgPT4gdHlwZW9mIHZhbCA9PT0gJ2Jvb2xlYW4nLFxuICBzdHJpbmc6ICh2YWw6IGFueSkgPT4gdHlwZW9mIHZhbCA9PT0gJ3N0cmluZycsXG4gIHN0cmluZ09yVWludDhBcnJheTogKHZhbDogYW55KSA9PiB0eXBlb2YgdmFsID09PSAnc3RyaW5nJyB8fCB2YWwgaW5zdGFuY2VvZiBVaW50OEFycmF5LFxuICBpc1NhZmVJbnRlZ2VyOiAodmFsOiBhbnkpID0+IE51bWJlci5pc1NhZmVJbnRlZ2VyKHZhbCksXG4gIGFycmF5OiAodmFsOiBhbnkpID0+IEFycmF5LmlzQXJyYXkodmFsKSxcbiAgZmllbGQ6ICh2YWw6IGFueSwgb2JqZWN0OiBhbnkpID0+IChvYmplY3QgYXMgYW55KS5GcC5pc1ZhbGlkKHZhbCksXG4gIGhhc2g6ICh2YWw6IGFueSkgPT4gdHlwZW9mIHZhbCA9PT0gJ2Z1bmN0aW9uJyAmJiBOdW1iZXIuaXNTYWZlSW50ZWdlcih2YWwub3V0cHV0TGVuKSxcbn0gYXMgY29uc3Q7XG50eXBlIFZhbGlkYXRvciA9IGtleW9mIHR5cGVvZiB2YWxpZGF0b3JGbnM7XG50eXBlIFZhbE1hcDxUIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgYW55Pj4gPSB7IFtLIGluIGtleW9mIFRdPzogVmFsaWRhdG9yIH07XG4vLyB0eXBlIFJlY29yZDxLIGV4dGVuZHMgc3RyaW5nIHwgbnVtYmVyIHwgc3ltYm9sLCBUPiA9IHsgW1AgaW4gS106IFQ7IH1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlT2JqZWN0PFQgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCBhbnk+PihcbiAgb2JqZWN0OiBULFxuICB2YWxpZGF0b3JzOiBWYWxNYXA8VD4sXG4gIG9wdFZhbGlkYXRvcnM6IFZhbE1hcDxUPiA9IHt9XG4pIHtcbiAgY29uc3QgY2hlY2tGaWVsZCA9IChmaWVsZE5hbWU6IGtleW9mIFQsIHR5cGU6IFZhbGlkYXRvciwgaXNPcHRpb25hbDogYm9vbGVhbikgPT4ge1xuICAgIGNvbnN0IGNoZWNrVmFsID0gdmFsaWRhdG9yRm5zW3R5cGVdO1xuICAgIGlmICh0eXBlb2YgY2hlY2tWYWwgIT09ICdmdW5jdGlvbicpXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgdmFsaWRhdG9yIFwiJHt0eXBlfVwiLCBleHBlY3RlZCBmdW5jdGlvbmApO1xuXG4gICAgY29uc3QgdmFsID0gb2JqZWN0W2ZpZWxkTmFtZSBhcyBrZXlvZiB0eXBlb2Ygb2JqZWN0XTtcbiAgICBpZiAoaXNPcHRpb25hbCAmJiB2YWwgPT09IHVuZGVmaW5lZCkgcmV0dXJuO1xuICAgIGlmICghY2hlY2tWYWwodmFsLCBvYmplY3QpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBJbnZhbGlkIHBhcmFtICR7U3RyaW5nKGZpZWxkTmFtZSl9PSR7dmFsfSAoJHt0eXBlb2YgdmFsfSksIGV4cGVjdGVkICR7dHlwZX1gXG4gICAgICApO1xuICAgIH1cbiAgfTtcbiAgZm9yIChjb25zdCBbZmllbGROYW1lLCB0eXBlXSBvZiBPYmplY3QuZW50cmllcyh2YWxpZGF0b3JzKSkgY2hlY2tGaWVsZChmaWVsZE5hbWUsIHR5cGUhLCBmYWxzZSk7XG4gIGZvciAoY29uc3QgW2ZpZWxkTmFtZSwgdHlwZV0gb2YgT2JqZWN0LmVudHJpZXMob3B0VmFsaWRhdG9ycykpIGNoZWNrRmllbGQoZmllbGROYW1lLCB0eXBlISwgdHJ1ZSk7XG4gIHJldHVybiBvYmplY3Q7XG59XG4vLyB2YWxpZGF0ZSB0eXBlIHRlc3RzXG4vLyBjb25zdCBvOiB7IGE6IG51bWJlcjsgYjogbnVtYmVyOyBjOiBudW1iZXIgfSA9IHsgYTogMSwgYjogNSwgYzogNiB9O1xuLy8gY29uc3QgejAgPSB2YWxpZGF0ZU9iamVjdChvLCB7IGE6ICdpc1NhZmVJbnRlZ2VyJyB9LCB7IGM6ICdiaWdpbnQnIH0pOyAvLyBPayFcbi8vIC8vIFNob3VsZCBmYWlsIHR5cGUtY2hlY2tcbi8vIGNvbnN0IHoxID0gdmFsaWRhdGVPYmplY3QobywgeyBhOiAndG1wJyB9LCB7IGM6ICd6eicgfSk7XG4vLyBjb25zdCB6MiA9IHZhbGlkYXRlT2JqZWN0KG8sIHsgYTogJ2lzU2FmZUludGVnZXInIH0sIHsgYzogJ3p6JyB9KTtcbi8vIGNvbnN0IHozID0gdmFsaWRhdGVPYmplY3QobywgeyB0ZXN0OiAnYm9vbGVhbicsIHo6ICdidWcnIH0pO1xuLy8gY29uc3QgejQgPSB2YWxpZGF0ZU9iamVjdChvLCB7IGE6ICdib29sZWFuJywgejogJ2J1ZycgfSk7XG4iLCAiLyohIG5vYmxlLWN1cnZlcyAtIE1JVCBMaWNlbnNlIChjKSAyMDIyIFBhdWwgTWlsbGVyIChwYXVsbWlsbHIuY29tKSAqL1xuLy8gVXRpbGl0aWVzIGZvciBtb2R1bGFyIGFyaXRobWV0aWNzIGFuZCBmaW5pdGUgZmllbGRzXG5pbXBvcnQge1xuICBiaXRNYXNrLFxuICBudW1iZXJUb0J5dGVzQkUsXG4gIG51bWJlclRvQnl0ZXNMRSxcbiAgYnl0ZXNUb051bWJlckJFLFxuICBieXRlc1RvTnVtYmVyTEUsXG4gIGVuc3VyZUJ5dGVzLFxuICB2YWxpZGF0ZU9iamVjdCxcbn0gZnJvbSAnLi91dGlscy5qcyc7XG4vLyBwcmV0dGllci1pZ25vcmVcbmNvbnN0IF8wbiA9IEJpZ0ludCgwKSwgXzFuID0gQmlnSW50KDEpLCBfMm4gPSBCaWdJbnQoMiksIF8zbiA9IEJpZ0ludCgzKTtcbi8vIHByZXR0aWVyLWlnbm9yZVxuY29uc3QgXzRuID0gQmlnSW50KDQpLCBfNW4gPSBCaWdJbnQoNSksIF84biA9IEJpZ0ludCg4KTtcbi8vIHByZXR0aWVyLWlnbm9yZVxuY29uc3QgXzluID0gQmlnSW50KDkpLCBfMTZuID0gQmlnSW50KDE2KTtcblxuLy8gQ2FsY3VsYXRlcyBhIG1vZHVsbyBiXG5leHBvcnQgZnVuY3Rpb24gbW9kKGE6IGJpZ2ludCwgYjogYmlnaW50KTogYmlnaW50IHtcbiAgY29uc3QgcmVzdWx0ID0gYSAlIGI7XG4gIHJldHVybiByZXN1bHQgPj0gXzBuID8gcmVzdWx0IDogYiArIHJlc3VsdDtcbn1cbi8qKlxuICogRWZmaWNpZW50bHkgcmFpc2UgbnVtIHRvIHBvd2VyIGFuZCBkbyBtb2R1bGFyIGRpdmlzaW9uLlxuICogVW5zYWZlIGluIHNvbWUgY29udGV4dHM6IHVzZXMgbGFkZGVyLCBzbyBjYW4gZXhwb3NlIGJpZ2ludCBiaXRzLlxuICogQGV4YW1wbGVcbiAqIHBvdygybiwgNm4sIDExbikgLy8gNjRuICUgMTFuID09IDluXG4gKi9cbi8vIFRPRE86IHVzZSBmaWVsZCB2ZXJzaW9uICYmIHJlbW92ZVxuZXhwb3J0IGZ1bmN0aW9uIHBvdyhudW06IGJpZ2ludCwgcG93ZXI6IGJpZ2ludCwgbW9kdWxvOiBiaWdpbnQpOiBiaWdpbnQge1xuICBpZiAobW9kdWxvIDw9IF8wbiB8fCBwb3dlciA8IF8wbikgdGhyb3cgbmV3IEVycm9yKCdFeHBlY3RlZCBwb3dlci9tb2R1bG8gPiAwJyk7XG4gIGlmIChtb2R1bG8gPT09IF8xbikgcmV0dXJuIF8wbjtcbiAgbGV0IHJlcyA9IF8xbjtcbiAgd2hpbGUgKHBvd2VyID4gXzBuKSB7XG4gICAgaWYgKHBvd2VyICYgXzFuKSByZXMgPSAocmVzICogbnVtKSAlIG1vZHVsbztcbiAgICBudW0gPSAobnVtICogbnVtKSAlIG1vZHVsbztcbiAgICBwb3dlciA+Pj0gXzFuO1xuICB9XG4gIHJldHVybiByZXM7XG59XG5cbi8vIERvZXMgeCBeICgyIF4gcG93ZXIpIG1vZCBwLiBwb3cyKDMwLCA0KSA9PSAzMCBeICgyIF4gNClcbmV4cG9ydCBmdW5jdGlvbiBwb3cyKHg6IGJpZ2ludCwgcG93ZXI6IGJpZ2ludCwgbW9kdWxvOiBiaWdpbnQpOiBiaWdpbnQge1xuICBsZXQgcmVzID0geDtcbiAgd2hpbGUgKHBvd2VyLS0gPiBfMG4pIHtcbiAgICByZXMgKj0gcmVzO1xuICAgIHJlcyAlPSBtb2R1bG87XG4gIH1cbiAgcmV0dXJuIHJlcztcbn1cblxuLy8gSW52ZXJzZXMgbnVtYmVyIG92ZXIgbW9kdWxvXG5leHBvcnQgZnVuY3Rpb24gaW52ZXJ0KG51bWJlcjogYmlnaW50LCBtb2R1bG86IGJpZ2ludCk6IGJpZ2ludCB7XG4gIGlmIChudW1iZXIgPT09IF8wbiB8fCBtb2R1bG8gPD0gXzBuKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBpbnZlcnQ6IGV4cGVjdGVkIHBvc2l0aXZlIGludGVnZXJzLCBnb3Qgbj0ke251bWJlcn0gbW9kPSR7bW9kdWxvfWApO1xuICB9XG4gIC8vIEV1Y2xpZGVhbiBHQ0QgaHR0cHM6Ly9icmlsbGlhbnQub3JnL3dpa2kvZXh0ZW5kZWQtZXVjbGlkZWFuLWFsZ29yaXRobS9cbiAgLy8gRmVybWF0J3MgbGl0dGxlIHRoZW9yZW0gXCJDVC1saWtlXCIgdmVyc2lvbiBpbnYobikgPSBuXihtLTIpIG1vZCBtIGlzIDMweCBzbG93ZXIuXG4gIGxldCBhID0gbW9kKG51bWJlciwgbW9kdWxvKTtcbiAgbGV0IGIgPSBtb2R1bG87XG4gIC8vIHByZXR0aWVyLWlnbm9yZVxuICBsZXQgeCA9IF8wbiwgeSA9IF8xbiwgdSA9IF8xbiwgdiA9IF8wbjtcbiAgd2hpbGUgKGEgIT09IF8wbikge1xuICAgIC8vIEpJVCBhcHBsaWVzIG9wdGltaXphdGlvbiBpZiB0aG9zZSB0d28gbGluZXMgZm9sbG93IGVhY2ggb3RoZXJcbiAgICBjb25zdCBxID0gYiAvIGE7XG4gICAgY29uc3QgciA9IGIgJSBhO1xuICAgIGNvbnN0IG0gPSB4IC0gdSAqIHE7XG4gICAgY29uc3QgbiA9IHkgLSB2ICogcTtcbiAgICAvLyBwcmV0dGllci1pZ25vcmVcbiAgICBiID0gYSwgYSA9IHIsIHggPSB1LCB5ID0gdiwgdSA9IG0sIHYgPSBuO1xuICB9XG4gIGNvbnN0IGdjZCA9IGI7XG4gIGlmIChnY2QgIT09IF8xbikgdGhyb3cgbmV3IEVycm9yKCdpbnZlcnQ6IGRvZXMgbm90IGV4aXN0Jyk7XG4gIHJldHVybiBtb2QoeCwgbW9kdWxvKTtcbn1cblxuLyoqXG4gKiBUb25lbGxpLVNoYW5rcyBzcXVhcmUgcm9vdCBzZWFyY2ggYWxnb3JpdGhtLlxuICogMS4gaHR0cHM6Ly9lcHJpbnQuaWFjci5vcmcvMjAxMi82ODUucGRmIChwYWdlIDEyKVxuICogMi4gU3F1YXJlIFJvb3RzIGZyb20gMTsgMjQsIDUxLCAxMCB0byBEYW4gU2hhbmtzXG4gKiBXaWxsIHN0YXJ0IGFuIGluZmluaXRlIGxvb3AgaWYgZmllbGQgb3JkZXIgUCBpcyBub3QgcHJpbWUuXG4gKiBAcGFyYW0gUCBmaWVsZCBvcmRlclxuICogQHJldHVybnMgZnVuY3Rpb24gdGhhdCB0YWtlcyBmaWVsZCBGcCAoY3JlYXRlZCBmcm9tIFApIGFuZCBudW1iZXIgblxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9uZWxsaVNoYW5rcyhQOiBiaWdpbnQpIHtcbiAgLy8gTGVnZW5kcmUgY29uc3RhbnQ6IHVzZWQgdG8gY2FsY3VsYXRlIExlZ2VuZHJlIHN5bWJvbCAoYSB8IHApLFxuICAvLyB3aGljaCBkZW5vdGVzIHRoZSB2YWx1ZSBvZiBhXigocC0xKS8yKSAobW9kIHApLlxuICAvLyAoYSB8IHApIFx1MjI2MSAxICAgIGlmIGEgaXMgYSBzcXVhcmUgKG1vZCBwKVxuICAvLyAoYSB8IHApIFx1MjI2MSAtMSAgIGlmIGEgaXMgbm90IGEgc3F1YXJlIChtb2QgcClcbiAgLy8gKGEgfCBwKSBcdTIyNjEgMCAgICBpZiBhIFx1MjI2MSAwIChtb2QgcClcbiAgY29uc3QgbGVnZW5kcmVDID0gKFAgLSBfMW4pIC8gXzJuO1xuXG4gIGxldCBROiBiaWdpbnQsIFM6IG51bWJlciwgWjogYmlnaW50O1xuICAvLyBTdGVwIDE6IEJ5IGZhY3RvcmluZyBvdXQgcG93ZXJzIG9mIDIgZnJvbSBwIC0gMSxcbiAgLy8gZmluZCBxIGFuZCBzIHN1Y2ggdGhhdCBwIC0gMSA9IHEqKDJecykgd2l0aCBxIG9kZFxuICBmb3IgKFEgPSBQIC0gXzFuLCBTID0gMDsgUSAlIF8ybiA9PT0gXzBuOyBRIC89IF8ybiwgUysrKTtcblxuICAvLyBTdGVwIDI6IFNlbGVjdCBhIG5vbi1zcXVhcmUgeiBzdWNoIHRoYXQgKHogfCBwKSBcdTIyNjEgLTEgYW5kIHNldCBjIFx1MjI2MSB6cVxuICBmb3IgKFogPSBfMm47IFogPCBQICYmIHBvdyhaLCBsZWdlbmRyZUMsIFApICE9PSBQIC0gXzFuOyBaKyspO1xuXG4gIC8vIEZhc3QtcGF0aFxuICBpZiAoUyA9PT0gMSkge1xuICAgIGNvbnN0IHAxZGl2NCA9IChQICsgXzFuKSAvIF80bjtcbiAgICByZXR1cm4gZnVuY3Rpb24gdG9uZWxsaUZhc3Q8VD4oRnA6IElGaWVsZDxUPiwgbjogVCkge1xuICAgICAgY29uc3Qgcm9vdCA9IEZwLnBvdyhuLCBwMWRpdjQpO1xuICAgICAgaWYgKCFGcC5lcWwoRnAuc3FyKHJvb3QpLCBuKSkgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgZmluZCBzcXVhcmUgcm9vdCcpO1xuICAgICAgcmV0dXJuIHJvb3Q7XG4gICAgfTtcbiAgfVxuXG4gIC8vIFNsb3ctcGF0aFxuICBjb25zdCBRMWRpdjIgPSAoUSArIF8xbikgLyBfMm47XG4gIHJldHVybiBmdW5jdGlvbiB0b25lbGxpU2xvdzxUPihGcDogSUZpZWxkPFQ+LCBuOiBUKTogVCB7XG4gICAgLy8gU3RlcCAwOiBDaGVjayB0aGF0IG4gaXMgaW5kZWVkIGEgc3F1YXJlOiAobiB8IHApIHNob3VsZCBub3QgYmUgXHUyMjYxIC0xXG4gICAgaWYgKEZwLnBvdyhuLCBsZWdlbmRyZUMpID09PSBGcC5uZWcoRnAuT05FKSkgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgZmluZCBzcXVhcmUgcm9vdCcpO1xuICAgIGxldCByID0gUztcbiAgICAvLyBUT0RPOiB3aWxsIGZhaWwgYXQgRnAyL2V0Y1xuICAgIGxldCBnID0gRnAucG93KEZwLm11bChGcC5PTkUsIFopLCBRKTsgLy8gd2lsbCB1cGRhdGUgYm90aCB4IGFuZCBiXG4gICAgbGV0IHggPSBGcC5wb3cobiwgUTFkaXYyKTsgLy8gZmlyc3QgZ3Vlc3MgYXQgdGhlIHNxdWFyZSByb290XG4gICAgbGV0IGIgPSBGcC5wb3cobiwgUSk7IC8vIGZpcnN0IGd1ZXNzIGF0IHRoZSBmdWRnZSBmYWN0b3JcblxuICAgIHdoaWxlICghRnAuZXFsKGIsIEZwLk9ORSkpIHtcbiAgICAgIGlmIChGcC5lcWwoYiwgRnAuWkVSTykpIHJldHVybiBGcC5aRVJPOyAvLyBodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9Ub25lbGxpJUUyJTgwJTkzU2hhbmtzX2FsZ29yaXRobSAoNC4gSWYgdCA9IDAsIHJldHVybiByID0gMClcbiAgICAgIC8vIEZpbmQgbSBzdWNoIGJeKDJebSk9PTFcbiAgICAgIGxldCBtID0gMTtcbiAgICAgIGZvciAobGV0IHQyID0gRnAuc3FyKGIpOyBtIDwgcjsgbSsrKSB7XG4gICAgICAgIGlmIChGcC5lcWwodDIsIEZwLk9ORSkpIGJyZWFrO1xuICAgICAgICB0MiA9IEZwLnNxcih0Mik7IC8vIHQyICo9IHQyXG4gICAgICB9XG4gICAgICAvLyBOT1RFOiByLW0tMSBjYW4gYmUgYmlnZ2VyIHRoYW4gMzIsIG5lZWQgdG8gY29udmVydCB0byBiaWdpbnQgYmVmb3JlIHNoaWZ0LCBvdGhlcndpc2UgdGhlcmUgd2lsbCBiZSBvdmVyZmxvd1xuICAgICAgY29uc3QgZ2UgPSBGcC5wb3coZywgXzFuIDw8IEJpZ0ludChyIC0gbSAtIDEpKTsgLy8gZ2UgPSAyXihyLW0tMSlcbiAgICAgIGcgPSBGcC5zcXIoZ2UpOyAvLyBnID0gZ2UgKiBnZVxuICAgICAgeCA9IEZwLm11bCh4LCBnZSk7IC8vIHggKj0gZ2VcbiAgICAgIGIgPSBGcC5tdWwoYiwgZyk7IC8vIGIgKj0gZ1xuICAgICAgciA9IG07XG4gICAgfVxuICAgIHJldHVybiB4O1xuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gRnBTcXJ0KFA6IGJpZ2ludCkge1xuICAvLyBOT1RFOiBkaWZmZXJlbnQgYWxnb3JpdGhtcyBjYW4gZ2l2ZSBkaWZmZXJlbnQgcm9vdHMsIGl0IGlzIHVwIHRvIHVzZXIgdG8gZGVjaWRlIHdoaWNoIG9uZSB0aGV5IHdhbnQuXG4gIC8vIEZvciBleGFtcGxlIHRoZXJlIGlzIEZwU3FydE9kZC9GcFNxcnRFdmVuIHRvIGNob2ljZSByb290IGJhc2VkIG9uIG9kZG5lc3MgKHVzZWQgZm9yIGhhc2gtdG8tY3VydmUpLlxuXG4gIC8vIFAgXHUyMjYxIDMgKG1vZCA0KVxuICAvLyBcdTIyMUFuID0gbl4oKFArMSkvNClcbiAgaWYgKFAgJSBfNG4gPT09IF8zbikge1xuICAgIC8vIE5vdCBhbGwgcm9vdHMgcG9zc2libGUhXG4gICAgLy8gY29uc3QgT1JERVIgPVxuICAgIC8vICAgMHgxYTAxMTFlYTM5N2ZlNjlhNGIxYmE3YjY0MzRiYWNkNzY0Nzc0Yjg0ZjM4NTEyYmY2NzMwZDJhMGY2YjBmNjI0MWVhYmZmZmViMTUzZmZmZmI5ZmVmZmZmZmZmZmFhYWJuO1xuICAgIC8vIGNvbnN0IE5VTSA9IDcyMDU3NTk0MDM3OTI3ODE2bjtcbiAgICBjb25zdCBwMWRpdjQgPSAoUCArIF8xbikgLyBfNG47XG4gICAgcmV0dXJuIGZ1bmN0aW9uIHNxcnQzbW9kNDxUPihGcDogSUZpZWxkPFQ+LCBuOiBUKSB7XG4gICAgICBjb25zdCByb290ID0gRnAucG93KG4sIHAxZGl2NCk7XG4gICAgICAvLyBUaHJvdyBpZiByb290KioyICE9IG5cbiAgICAgIGlmICghRnAuZXFsKEZwLnNxcihyb290KSwgbikpIHRocm93IG5ldyBFcnJvcignQ2Fubm90IGZpbmQgc3F1YXJlIHJvb3QnKTtcbiAgICAgIHJldHVybiByb290O1xuICAgIH07XG4gIH1cblxuICAvLyBBdGtpbiBhbGdvcml0aG0gZm9yIHEgXHUyMjYxIDUgKG1vZCA4KSwgaHR0cHM6Ly9lcHJpbnQuaWFjci5vcmcvMjAxMi82ODUucGRmIChwYWdlIDEwKVxuICBpZiAoUCAlIF84biA9PT0gXzVuKSB7XG4gICAgY29uc3QgYzEgPSAoUCAtIF81bikgLyBfOG47XG4gICAgcmV0dXJuIGZ1bmN0aW9uIHNxcnQ1bW9kODxUPihGcDogSUZpZWxkPFQ+LCBuOiBUKSB7XG4gICAgICBjb25zdCBuMiA9IEZwLm11bChuLCBfMm4pO1xuICAgICAgY29uc3QgdiA9IEZwLnBvdyhuMiwgYzEpO1xuICAgICAgY29uc3QgbnYgPSBGcC5tdWwobiwgdik7XG4gICAgICBjb25zdCBpID0gRnAubXVsKEZwLm11bChudiwgXzJuKSwgdik7XG4gICAgICBjb25zdCByb290ID0gRnAubXVsKG52LCBGcC5zdWIoaSwgRnAuT05FKSk7XG4gICAgICBpZiAoIUZwLmVxbChGcC5zcXIocm9vdCksIG4pKSB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBmaW5kIHNxdWFyZSByb290Jyk7XG4gICAgICByZXR1cm4gcm9vdDtcbiAgICB9O1xuICB9XG5cbiAgLy8gUCBcdTIyNjEgOSAobW9kIDE2KVxuICBpZiAoUCAlIF8xNm4gPT09IF85bikge1xuICAgIC8vIE5PVEU6IHRvbmVsbGkgaXMgdG9vIHNsb3cgZm9yIGJscy1GcDIgY2FsY3VsYXRpb25zIGV2ZW4gb24gc3RhcnRcbiAgICAvLyBNZWFucyB3ZSBjYW5ub3QgdXNlIHNxcnQgZm9yIGNvbnN0YW50cyBhdCBhbGwhXG4gICAgLy9cbiAgICAvLyBjb25zdCBjMSA9IEZwLnNxcnQoRnAubmVnYXRlKEZwLk9ORSkpOyAvLyAgMS4gYzEgPSBzcXJ0KC0xKSBpbiBGLCBpLmUuLCAoYzFeMikgPT0gLTEgaW4gRlxuICAgIC8vIGNvbnN0IGMyID0gRnAuc3FydChjMSk7ICAgICAgICAgICAgICAgIC8vICAyLiBjMiA9IHNxcnQoYzEpIGluIEYsIGkuZS4sIChjMl4yKSA9PSBjMSBpbiBGXG4gICAgLy8gY29uc3QgYzMgPSBGcC5zcXJ0KEZwLm5lZ2F0ZShjMSkpOyAgICAgLy8gIDMuIGMzID0gc3FydCgtYzEpIGluIEYsIGkuZS4sIChjM14yKSA9PSAtYzEgaW4gRlxuICAgIC8vIGNvbnN0IGM0ID0gKFAgKyBfN24pIC8gXzE2bjsgICAgICAgICAgIC8vICA0LiBjNCA9IChxICsgNykgLyAxNiAgICAgICAgIyBJbnRlZ2VyIGFyaXRobWV0aWNcbiAgICAvLyBzcXJ0ID0gKHgpID0+IHtcbiAgICAvLyAgIGxldCB0djEgPSBGcC5wb3coeCwgYzQpOyAgICAgICAgICAgICAvLyAgMS4gdHYxID0geF5jNFxuICAgIC8vICAgbGV0IHR2MiA9IEZwLm11bChjMSwgdHYxKTsgICAgICAgICAgIC8vICAyLiB0djIgPSBjMSAqIHR2MVxuICAgIC8vICAgY29uc3QgdHYzID0gRnAubXVsKGMyLCB0djEpOyAgICAgICAgIC8vICAzLiB0djMgPSBjMiAqIHR2MVxuICAgIC8vICAgbGV0IHR2NCA9IEZwLm11bChjMywgdHYxKTsgICAgICAgICAgIC8vICA0LiB0djQgPSBjMyAqIHR2MVxuICAgIC8vICAgY29uc3QgZTEgPSBGcC5lcXVhbHMoRnAuc3F1YXJlKHR2MiksIHgpOyAvLyAgNS4gIGUxID0gKHR2Ml4yKSA9PSB4XG4gICAgLy8gICBjb25zdCBlMiA9IEZwLmVxdWFscyhGcC5zcXVhcmUodHYzKSwgeCk7IC8vICA2LiAgZTIgPSAodHYzXjIpID09IHhcbiAgICAvLyAgIHR2MSA9IEZwLmNtb3YodHYxLCB0djIsIGUxKTsgLy8gIDcuIHR2MSA9IENNT1YodHYxLCB0djIsIGUxKSAgIyBTZWxlY3QgdHYyIGlmICh0djJeMikgPT0geFxuICAgIC8vICAgdHYyID0gRnAuY21vdih0djQsIHR2MywgZTIpOyAvLyAgOC4gdHYyID0gQ01PVih0djQsIHR2MywgZTIpICAjIFNlbGVjdCB0djMgaWYgKHR2M14yKSA9PSB4XG4gICAgLy8gICBjb25zdCBlMyA9IEZwLmVxdWFscyhGcC5zcXVhcmUodHYyKSwgeCk7IC8vICA5LiAgZTMgPSAodHYyXjIpID09IHhcbiAgICAvLyAgIHJldHVybiBGcC5jbW92KHR2MSwgdHYyLCBlMyk7IC8vICAxMC4gIHogPSBDTU9WKHR2MSwgdHYyLCBlMykgICMgU2VsZWN0IHRoZSBzcXJ0IGZyb20gdHYxIGFuZCB0djJcbiAgICAvLyB9XG4gIH1cblxuICAvLyBPdGhlciBjYXNlczogVG9uZWxsaS1TaGFua3MgYWxnb3JpdGhtXG4gIHJldHVybiB0b25lbGxpU2hhbmtzKFApO1xufVxuXG4vLyBMaXR0bGUtZW5kaWFuIGNoZWNrIGZvciBmaXJzdCBMRSBiaXQgKGxhc3QgQkUgYml0KTtcbmV4cG9ydCBjb25zdCBpc05lZ2F0aXZlTEUgPSAobnVtOiBiaWdpbnQsIG1vZHVsbzogYmlnaW50KSA9PiAobW9kKG51bSwgbW9kdWxvKSAmIF8xbikgPT09IF8xbjtcblxuLy8gRmllbGQgaXMgbm90IGFsd2F5cyBvdmVyIHByaW1lOiBmb3IgZXhhbXBsZSwgRnAyIGhhcyBPUkRFUihxKT1wXm1cbmV4cG9ydCBpbnRlcmZhY2UgSUZpZWxkPFQ+IHtcbiAgT1JERVI6IGJpZ2ludDtcbiAgQllURVM6IG51bWJlcjtcbiAgQklUUzogbnVtYmVyO1xuICBNQVNLOiBiaWdpbnQ7XG4gIFpFUk86IFQ7XG4gIE9ORTogVDtcbiAgLy8gMS1hcmdcbiAgY3JlYXRlOiAobnVtOiBUKSA9PiBUO1xuICBpc1ZhbGlkOiAobnVtOiBUKSA9PiBib29sZWFuO1xuICBpczA6IChudW06IFQpID0+IGJvb2xlYW47XG4gIG5lZyhudW06IFQpOiBUO1xuICBpbnYobnVtOiBUKTogVDtcbiAgc3FydChudW06IFQpOiBUO1xuICBzcXIobnVtOiBUKTogVDtcbiAgLy8gMi1hcmdzXG4gIGVxbChsaHM6IFQsIHJoczogVCk6IGJvb2xlYW47XG4gIGFkZChsaHM6IFQsIHJoczogVCk6IFQ7XG4gIHN1YihsaHM6IFQsIHJoczogVCk6IFQ7XG4gIG11bChsaHM6IFQsIHJoczogVCB8IGJpZ2ludCk6IFQ7XG4gIHBvdyhsaHM6IFQsIHBvd2VyOiBiaWdpbnQpOiBUO1xuICBkaXYobGhzOiBULCByaHM6IFQgfCBiaWdpbnQpOiBUO1xuICAvLyBOIGZvciBOb25Ob3JtYWxpemVkIChmb3Igbm93KVxuICBhZGROKGxoczogVCwgcmhzOiBUKTogVDtcbiAgc3ViTihsaHM6IFQsIHJoczogVCk6IFQ7XG4gIG11bE4obGhzOiBULCByaHM6IFQgfCBiaWdpbnQpOiBUO1xuICBzcXJOKG51bTogVCk6IFQ7XG5cbiAgLy8gT3B0aW9uYWxcbiAgLy8gU2hvdWxkIGJlIHNhbWUgYXMgc2duMCBmdW5jdGlvbiBpblxuICAvLyBbUkZDOTM4MF0oaHR0cHM6Ly93d3cucmZjLWVkaXRvci5vcmcvcmZjL3JmYzkzODAjc2VjdGlvbi00LjEpLlxuICAvLyBOT1RFOiBzZ24wIGlzICduZWdhdGl2ZSBpbiBMRScsIHdoaWNoIGlzIHNhbWUgYXMgb2RkLiBBbmQgbmVnYXRpdmUgaW4gTEUgaXMga2luZGEgc3RyYW5nZSBkZWZpbml0aW9uIGFueXdheS5cbiAgaXNPZGQ/KG51bTogVCk6IGJvb2xlYW47IC8vIE9kZCBpbnN0ZWFkIG9mIGV2ZW4gc2luY2Ugd2UgaGF2ZSBpdCBmb3IgRnAyXG4gIC8vIGxlZ2VuZHJlPyhudW06IFQpOiBUO1xuICBwb3cobGhzOiBULCBwb3dlcjogYmlnaW50KTogVDtcbiAgaW52ZXJ0QmF0Y2g6IChsc3Q6IFRbXSkgPT4gVFtdO1xuICB0b0J5dGVzKG51bTogVCk6IFVpbnQ4QXJyYXk7XG4gIGZyb21CeXRlcyhieXRlczogVWludDhBcnJheSk6IFQ7XG4gIC8vIElmIGMgaXMgRmFsc2UsIENNT1YgcmV0dXJucyBhLCBvdGhlcndpc2UgaXQgcmV0dXJucyBiLlxuICBjbW92KGE6IFQsIGI6IFQsIGM6IGJvb2xlYW4pOiBUO1xufVxuLy8gcHJldHRpZXItaWdub3JlXG5jb25zdCBGSUVMRF9GSUVMRFMgPSBbXG4gICdjcmVhdGUnLCAnaXNWYWxpZCcsICdpczAnLCAnbmVnJywgJ2ludicsICdzcXJ0JywgJ3NxcicsXG4gICdlcWwnLCAnYWRkJywgJ3N1YicsICdtdWwnLCAncG93JywgJ2RpdicsXG4gICdhZGROJywgJ3N1Yk4nLCAnbXVsTicsICdzcXJOJ1xuXSBhcyBjb25zdDtcbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZUZpZWxkPFQ+KGZpZWxkOiBJRmllbGQ8VD4pIHtcbiAgY29uc3QgaW5pdGlhbCA9IHtcbiAgICBPUkRFUjogJ2JpZ2ludCcsXG4gICAgTUFTSzogJ2JpZ2ludCcsXG4gICAgQllURVM6ICdpc1NhZmVJbnRlZ2VyJyxcbiAgICBCSVRTOiAnaXNTYWZlSW50ZWdlcicsXG4gIH0gYXMgUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgY29uc3Qgb3B0cyA9IEZJRUxEX0ZJRUxEUy5yZWR1Y2UoKG1hcCwgdmFsOiBzdHJpbmcpID0+IHtcbiAgICBtYXBbdmFsXSA9ICdmdW5jdGlvbic7XG4gICAgcmV0dXJuIG1hcDtcbiAgfSwgaW5pdGlhbCk7XG4gIHJldHVybiB2YWxpZGF0ZU9iamVjdChmaWVsZCwgb3B0cyk7XG59XG5cbi8vIEdlbmVyaWMgZmllbGQgZnVuY3Rpb25zXG5cbi8qKlxuICogU2FtZSBhcyBgcG93YCBidXQgZm9yIEZwOiBub24tY29uc3RhbnQtdGltZS5cbiAqIFVuc2FmZSBpbiBzb21lIGNvbnRleHRzOiB1c2VzIGxhZGRlciwgc28gY2FuIGV4cG9zZSBiaWdpbnQgYml0cy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIEZwUG93PFQ+KGY6IElGaWVsZDxUPiwgbnVtOiBULCBwb3dlcjogYmlnaW50KTogVCB7XG4gIC8vIFNob3VsZCBoYXZlIHNhbWUgc3BlZWQgYXMgcG93IGZvciBiaWdpbnRzXG4gIC8vIFRPRE86IGJlbmNobWFyayFcbiAgaWYgKHBvd2VyIDwgXzBuKSB0aHJvdyBuZXcgRXJyb3IoJ0V4cGVjdGVkIHBvd2VyID4gMCcpO1xuICBpZiAocG93ZXIgPT09IF8wbikgcmV0dXJuIGYuT05FO1xuICBpZiAocG93ZXIgPT09IF8xbikgcmV0dXJuIG51bTtcbiAgbGV0IHAgPSBmLk9ORTtcbiAgbGV0IGQgPSBudW07XG4gIHdoaWxlIChwb3dlciA+IF8wbikge1xuICAgIGlmIChwb3dlciAmIF8xbikgcCA9IGYubXVsKHAsIGQpO1xuICAgIGQgPSBmLnNxcihkKTtcbiAgICBwb3dlciA+Pj0gXzFuO1xuICB9XG4gIHJldHVybiBwO1xufVxuXG4vKipcbiAqIEVmZmljaWVudGx5IGludmVydCBhbiBhcnJheSBvZiBGaWVsZCBlbGVtZW50cy5cbiAqIGBpbnYoMClgIHdpbGwgcmV0dXJuIGB1bmRlZmluZWRgIGhlcmU6IG1ha2Ugc3VyZSB0byB0aHJvdyBhbiBlcnJvci5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIEZwSW52ZXJ0QmF0Y2g8VD4oZjogSUZpZWxkPFQ+LCBudW1zOiBUW10pOiBUW10ge1xuICBjb25zdCB0bXAgPSBuZXcgQXJyYXkobnVtcy5sZW5ndGgpO1xuICAvLyBXYWxrIGZyb20gZmlyc3QgdG8gbGFzdCwgbXVsdGlwbHkgdGhlbSBieSBlYWNoIG90aGVyIE1PRCBwXG4gIGNvbnN0IGxhc3RNdWx0aXBsaWVkID0gbnVtcy5yZWR1Y2UoKGFjYywgbnVtLCBpKSA9PiB7XG4gICAgaWYgKGYuaXMwKG51bSkpIHJldHVybiBhY2M7XG4gICAgdG1wW2ldID0gYWNjO1xuICAgIHJldHVybiBmLm11bChhY2MsIG51bSk7XG4gIH0sIGYuT05FKTtcbiAgLy8gSW52ZXJ0IGxhc3QgZWxlbWVudFxuICBjb25zdCBpbnZlcnRlZCA9IGYuaW52KGxhc3RNdWx0aXBsaWVkKTtcbiAgLy8gV2FsayBmcm9tIGxhc3QgdG8gZmlyc3QsIG11bHRpcGx5IHRoZW0gYnkgaW52ZXJ0ZWQgZWFjaCBvdGhlciBNT0QgcFxuICBudW1zLnJlZHVjZVJpZ2h0KChhY2MsIG51bSwgaSkgPT4ge1xuICAgIGlmIChmLmlzMChudW0pKSByZXR1cm4gYWNjO1xuICAgIHRtcFtpXSA9IGYubXVsKGFjYywgdG1wW2ldKTtcbiAgICByZXR1cm4gZi5tdWwoYWNjLCBudW0pO1xuICB9LCBpbnZlcnRlZCk7XG4gIHJldHVybiB0bXA7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBGcERpdjxUPihmOiBJRmllbGQ8VD4sIGxoczogVCwgcmhzOiBUIHwgYmlnaW50KTogVCB7XG4gIHJldHVybiBmLm11bChsaHMsIHR5cGVvZiByaHMgPT09ICdiaWdpbnQnID8gaW52ZXJ0KHJocywgZi5PUkRFUikgOiBmLmludihyaHMpKTtcbn1cblxuLy8gVGhpcyBmdW5jdGlvbiByZXR1cm5zIFRydWUgd2hlbmV2ZXIgdGhlIHZhbHVlIHggaXMgYSBzcXVhcmUgaW4gdGhlIGZpZWxkIEYuXG5leHBvcnQgZnVuY3Rpb24gRnBJc1NxdWFyZTxUPihmOiBJRmllbGQ8VD4pIHtcbiAgY29uc3QgbGVnZW5kcmVDb25zdCA9IChmLk9SREVSIC0gXzFuKSAvIF8ybjsgLy8gSW50ZWdlciBhcml0aG1ldGljXG4gIHJldHVybiAoeDogVCk6IGJvb2xlYW4gPT4ge1xuICAgIGNvbnN0IHAgPSBmLnBvdyh4LCBsZWdlbmRyZUNvbnN0KTtcbiAgICByZXR1cm4gZi5lcWwocCwgZi5aRVJPKSB8fCBmLmVxbChwLCBmLk9ORSk7XG4gIH07XG59XG5cbi8vIENVUlZFLm4gbGVuZ3Roc1xuZXhwb3J0IGZ1bmN0aW9uIG5MZW5ndGgobjogYmlnaW50LCBuQml0TGVuZ3RoPzogbnVtYmVyKSB7XG4gIC8vIEJpdCBzaXplLCBieXRlIHNpemUgb2YgQ1VSVkUublxuICBjb25zdCBfbkJpdExlbmd0aCA9IG5CaXRMZW5ndGggIT09IHVuZGVmaW5lZCA/IG5CaXRMZW5ndGggOiBuLnRvU3RyaW5nKDIpLmxlbmd0aDtcbiAgY29uc3QgbkJ5dGVMZW5ndGggPSBNYXRoLmNlaWwoX25CaXRMZW5ndGggLyA4KTtcbiAgcmV0dXJuIHsgbkJpdExlbmd0aDogX25CaXRMZW5ndGgsIG5CeXRlTGVuZ3RoIH07XG59XG5cbnR5cGUgRnBGaWVsZCA9IElGaWVsZDxiaWdpbnQ+ICYgUmVxdWlyZWQ8UGljazxJRmllbGQ8YmlnaW50PiwgJ2lzT2RkJz4+O1xuLyoqXG4gKiBJbml0aWFsaXplcyBhIGZpbml0ZSBmaWVsZCBvdmVyIHByaW1lLiAqKk5vbi1wcmltZXMgYXJlIG5vdCBzdXBwb3J0ZWQuKipcbiAqIERvIG5vdCBpbml0IGluIGxvb3A6IHNsb3cuIFZlcnkgZnJhZ2lsZTogYWx3YXlzIHJ1biBhIGJlbmNobWFyayBvbiBhIGNoYW5nZS5cbiAqIE1ham9yIHBlcmZvcm1hbmNlIG9wdGltaXphdGlvbnM6XG4gKiAqIGEpIGRlbm9ybWFsaXplZCBvcGVyYXRpb25zIGxpa2UgbXVsTiBpbnN0ZWFkIG9mIG11bFxuICogKiBiKSBzYW1lIG9iamVjdCBzaGFwZTogbmV2ZXIgYWRkIG9yIHJlbW92ZSBrZXlzXG4gKiAqIGMpIE9iamVjdC5mcmVlemVcbiAqIEBwYXJhbSBPUkRFUiBwcmltZSBwb3NpdGl2ZSBiaWdpbnRcbiAqIEBwYXJhbSBiaXRMZW4gaG93IG1hbnkgYml0cyB0aGUgZmllbGQgY29uc3VtZXNcbiAqIEBwYXJhbSBpc0xFIChkZWY6IGZhbHNlKSBpZiBlbmNvZGluZyAvIGRlY29kaW5nIHNob3VsZCBiZSBpbiBsaXR0bGUtZW5kaWFuXG4gKiBAcGFyYW0gcmVkZWYgb3B0aW9uYWwgZmFzdGVyIHJlZGVmaW5pdGlvbnMgb2Ygc3FydCBhbmQgb3RoZXIgbWV0aG9kc1xuICovXG5leHBvcnQgZnVuY3Rpb24gRmllbGQoXG4gIE9SREVSOiBiaWdpbnQsXG4gIGJpdExlbj86IG51bWJlcixcbiAgaXNMRSA9IGZhbHNlLFxuICByZWRlZjogUGFydGlhbDxJRmllbGQ8YmlnaW50Pj4gPSB7fVxuKTogUmVhZG9ubHk8RnBGaWVsZD4ge1xuICBpZiAoT1JERVIgPD0gXzBuKSB0aHJvdyBuZXcgRXJyb3IoYEV4cGVjdGVkIEZpZWxkIE9SREVSID4gMCwgZ290ICR7T1JERVJ9YCk7XG4gIGNvbnN0IHsgbkJpdExlbmd0aDogQklUUywgbkJ5dGVMZW5ndGg6IEJZVEVTIH0gPSBuTGVuZ3RoKE9SREVSLCBiaXRMZW4pO1xuICBpZiAoQllURVMgPiAyMDQ4KSB0aHJvdyBuZXcgRXJyb3IoJ0ZpZWxkIGxlbmd0aHMgb3ZlciAyMDQ4IGJ5dGVzIGFyZSBub3Qgc3VwcG9ydGVkJyk7XG4gIGNvbnN0IHNxcnRQID0gRnBTcXJ0KE9SREVSKTtcbiAgY29uc3QgZjogUmVhZG9ubHk8RnBGaWVsZD4gPSBPYmplY3QuZnJlZXplKHtcbiAgICBPUkRFUixcbiAgICBCSVRTLFxuICAgIEJZVEVTLFxuICAgIE1BU0s6IGJpdE1hc2soQklUUyksXG4gICAgWkVSTzogXzBuLFxuICAgIE9ORTogXzFuLFxuICAgIGNyZWF0ZTogKG51bSkgPT4gbW9kKG51bSwgT1JERVIpLFxuICAgIGlzVmFsaWQ6IChudW0pID0+IHtcbiAgICAgIGlmICh0eXBlb2YgbnVtICE9PSAnYmlnaW50JylcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGZpZWxkIGVsZW1lbnQ6IGV4cGVjdGVkIGJpZ2ludCwgZ290ICR7dHlwZW9mIG51bX1gKTtcbiAgICAgIHJldHVybiBfMG4gPD0gbnVtICYmIG51bSA8IE9SREVSOyAvLyAwIGlzIHZhbGlkIGVsZW1lbnQsIGJ1dCBpdCdzIG5vdCBpbnZlcnRpYmxlXG4gICAgfSxcbiAgICBpczA6IChudW0pID0+IG51bSA9PT0gXzBuLFxuICAgIGlzT2RkOiAobnVtKSA9PiAobnVtICYgXzFuKSA9PT0gXzFuLFxuICAgIG5lZzogKG51bSkgPT4gbW9kKC1udW0sIE9SREVSKSxcbiAgICBlcWw6IChsaHMsIHJocykgPT4gbGhzID09PSByaHMsXG5cbiAgICBzcXI6IChudW0pID0+IG1vZChudW0gKiBudW0sIE9SREVSKSxcbiAgICBhZGQ6IChsaHMsIHJocykgPT4gbW9kKGxocyArIHJocywgT1JERVIpLFxuICAgIHN1YjogKGxocywgcmhzKSA9PiBtb2QobGhzIC0gcmhzLCBPUkRFUiksXG4gICAgbXVsOiAobGhzLCByaHMpID0+IG1vZChsaHMgKiByaHMsIE9SREVSKSxcbiAgICBwb3c6IChudW0sIHBvd2VyKSA9PiBGcFBvdyhmLCBudW0sIHBvd2VyKSxcbiAgICBkaXY6IChsaHMsIHJocykgPT4gbW9kKGxocyAqIGludmVydChyaHMsIE9SREVSKSwgT1JERVIpLFxuXG4gICAgLy8gU2FtZSBhcyBhYm92ZSwgYnV0IGRvZXNuJ3Qgbm9ybWFsaXplXG4gICAgc3FyTjogKG51bSkgPT4gbnVtICogbnVtLFxuICAgIGFkZE46IChsaHMsIHJocykgPT4gbGhzICsgcmhzLFxuICAgIHN1Yk46IChsaHMsIHJocykgPT4gbGhzIC0gcmhzLFxuICAgIG11bE46IChsaHMsIHJocykgPT4gbGhzICogcmhzLFxuXG4gICAgaW52OiAobnVtKSA9PiBpbnZlcnQobnVtLCBPUkRFUiksXG4gICAgc3FydDogcmVkZWYuc3FydCB8fCAoKG4pID0+IHNxcnRQKGYsIG4pKSxcbiAgICBpbnZlcnRCYXRjaDogKGxzdCkgPT4gRnBJbnZlcnRCYXRjaChmLCBsc3QpLFxuICAgIC8vIFRPRE86IGRvIHdlIHJlYWxseSBuZWVkIGNvbnN0YW50IGNtb3Y/XG4gICAgLy8gV2UgZG9uJ3QgaGF2ZSBjb25zdC10aW1lIGJpZ2ludHMgYW55d2F5LCBzbyBwcm9iYWJseSB3aWxsIGJlIG5vdCB2ZXJ5IHVzZWZ1bFxuICAgIGNtb3Y6IChhLCBiLCBjKSA9PiAoYyA/IGIgOiBhKSxcbiAgICB0b0J5dGVzOiAobnVtKSA9PiAoaXNMRSA/IG51bWJlclRvQnl0ZXNMRShudW0sIEJZVEVTKSA6IG51bWJlclRvQnl0ZXNCRShudW0sIEJZVEVTKSksXG4gICAgZnJvbUJ5dGVzOiAoYnl0ZXMpID0+IHtcbiAgICAgIGlmIChieXRlcy5sZW5ndGggIT09IEJZVEVTKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEZwLmZyb21CeXRlczogZXhwZWN0ZWQgJHtCWVRFU30sIGdvdCAke2J5dGVzLmxlbmd0aH1gKTtcbiAgICAgIHJldHVybiBpc0xFID8gYnl0ZXNUb051bWJlckxFKGJ5dGVzKSA6IGJ5dGVzVG9OdW1iZXJCRShieXRlcyk7XG4gICAgfSxcbiAgfSBhcyBGcEZpZWxkKTtcbiAgcmV0dXJuIE9iamVjdC5mcmVlemUoZik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBGcFNxcnRPZGQ8VD4oRnA6IElGaWVsZDxUPiwgZWxtOiBUKSB7XG4gIGlmICghRnAuaXNPZGQpIHRocm93IG5ldyBFcnJvcihgRmllbGQgZG9lc24ndCBoYXZlIGlzT2RkYCk7XG4gIGNvbnN0IHJvb3QgPSBGcC5zcXJ0KGVsbSk7XG4gIHJldHVybiBGcC5pc09kZChyb290KSA/IHJvb3QgOiBGcC5uZWcocm9vdCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBGcFNxcnRFdmVuPFQ+KEZwOiBJRmllbGQ8VD4sIGVsbTogVCkge1xuICBpZiAoIUZwLmlzT2RkKSB0aHJvdyBuZXcgRXJyb3IoYEZpZWxkIGRvZXNuJ3QgaGF2ZSBpc09kZGApO1xuICBjb25zdCByb290ID0gRnAuc3FydChlbG0pO1xuICByZXR1cm4gRnAuaXNPZGQocm9vdCkgPyBGcC5uZWcocm9vdCkgOiByb290O1xufVxuXG4vKipcbiAqIFwiQ29uc3RhbnQtdGltZVwiIHByaXZhdGUga2V5IGdlbmVyYXRpb24gdXRpbGl0eS5cbiAqIFNhbWUgYXMgbWFwS2V5VG9GaWVsZCwgYnV0IGFjY2VwdHMgbGVzcyBieXRlcyAoNDAgaW5zdGVhZCBvZiA0OCBmb3IgMzItYnl0ZSBmaWVsZCkuXG4gKiBXaGljaCBtYWtlcyBpdCBzbGlnaHRseSBtb3JlIGJpYXNlZCwgbGVzcyBzZWN1cmUuXG4gKiBAZGVwcmVjYXRlZCB1c2UgbWFwS2V5VG9GaWVsZCBpbnN0ZWFkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBoYXNoVG9Qcml2YXRlU2NhbGFyKFxuICBoYXNoOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICBncm91cE9yZGVyOiBiaWdpbnQsXG4gIGlzTEUgPSBmYWxzZVxuKTogYmlnaW50IHtcbiAgaGFzaCA9IGVuc3VyZUJ5dGVzKCdwcml2YXRlSGFzaCcsIGhhc2gpO1xuICBjb25zdCBoYXNoTGVuID0gaGFzaC5sZW5ndGg7XG4gIGNvbnN0IG1pbkxlbiA9IG5MZW5ndGgoZ3JvdXBPcmRlcikubkJ5dGVMZW5ndGggKyA4O1xuICBpZiAobWluTGVuIDwgMjQgfHwgaGFzaExlbiA8IG1pbkxlbiB8fCBoYXNoTGVuID4gMTAyNClcbiAgICB0aHJvdyBuZXcgRXJyb3IoYGhhc2hUb1ByaXZhdGVTY2FsYXI6IGV4cGVjdGVkICR7bWluTGVufS0xMDI0IGJ5dGVzIG9mIGlucHV0LCBnb3QgJHtoYXNoTGVufWApO1xuICBjb25zdCBudW0gPSBpc0xFID8gYnl0ZXNUb051bWJlckxFKGhhc2gpIDogYnl0ZXNUb051bWJlckJFKGhhc2gpO1xuICByZXR1cm4gbW9kKG51bSwgZ3JvdXBPcmRlciAtIF8xbikgKyBfMW47XG59XG5cbi8qKlxuICogUmV0dXJucyB0b3RhbCBudW1iZXIgb2YgYnl0ZXMgY29uc3VtZWQgYnkgdGhlIGZpZWxkIGVsZW1lbnQuXG4gKiBGb3IgZXhhbXBsZSwgMzIgYnl0ZXMgZm9yIHVzdWFsIDI1Ni1iaXQgd2VpZXJzdHJhc3MgY3VydmUuXG4gKiBAcGFyYW0gZmllbGRPcmRlciBudW1iZXIgb2YgZmllbGQgZWxlbWVudHMsIHVzdWFsbHkgQ1VSVkUublxuICogQHJldHVybnMgYnl0ZSBsZW5ndGggb2YgZmllbGRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEZpZWxkQnl0ZXNMZW5ndGgoZmllbGRPcmRlcjogYmlnaW50KTogbnVtYmVyIHtcbiAgaWYgKHR5cGVvZiBmaWVsZE9yZGVyICE9PSAnYmlnaW50JykgdGhyb3cgbmV3IEVycm9yKCdmaWVsZCBvcmRlciBtdXN0IGJlIGJpZ2ludCcpO1xuICBjb25zdCBiaXRMZW5ndGggPSBmaWVsZE9yZGVyLnRvU3RyaW5nKDIpLmxlbmd0aDtcbiAgcmV0dXJuIE1hdGguY2VpbChiaXRMZW5ndGggLyA4KTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIG1pbmltYWwgYW1vdW50IG9mIGJ5dGVzIHRoYXQgY2FuIGJlIHNhZmVseSByZWR1Y2VkXG4gKiBieSBmaWVsZCBvcmRlci5cbiAqIFNob3VsZCBiZSAyXi0xMjggZm9yIDEyOC1iaXQgY3VydmUgc3VjaCBhcyBQMjU2LlxuICogQHBhcmFtIGZpZWxkT3JkZXIgbnVtYmVyIG9mIGZpZWxkIGVsZW1lbnRzLCB1c3VhbGx5IENVUlZFLm5cbiAqIEByZXR1cm5zIGJ5dGUgbGVuZ3RoIG9mIHRhcmdldCBoYXNoXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRNaW5IYXNoTGVuZ3RoKGZpZWxkT3JkZXI6IGJpZ2ludCk6IG51bWJlciB7XG4gIGNvbnN0IGxlbmd0aCA9IGdldEZpZWxkQnl0ZXNMZW5ndGgoZmllbGRPcmRlcik7XG4gIHJldHVybiBsZW5ndGggKyBNYXRoLmNlaWwobGVuZ3RoIC8gMik7XG59XG5cbi8qKlxuICogXCJDb25zdGFudC10aW1lXCIgcHJpdmF0ZSBrZXkgZ2VuZXJhdGlvbiB1dGlsaXR5LlxuICogQ2FuIHRha2UgKG4gKyBuLzIpIG9yIG1vcmUgYnl0ZXMgb2YgdW5pZm9ybSBpbnB1dCBlLmcuIGZyb20gQ1NQUk5HIG9yIEtERlxuICogYW5kIGNvbnZlcnQgdGhlbSBpbnRvIHByaXZhdGUgc2NhbGFyLCB3aXRoIHRoZSBtb2R1bG8gYmlhcyBiZWluZyBuZWdsaWdpYmxlLlxuICogTmVlZHMgYXQgbGVhc3QgNDggYnl0ZXMgb2YgaW5wdXQgZm9yIDMyLWJ5dGUgcHJpdmF0ZSBrZXkuXG4gKiBodHRwczovL3Jlc2VhcmNoLmt1ZGVsc2tpc2VjdXJpdHkuY29tLzIwMjAvMDcvMjgvdGhlLWRlZmluaXRpdmUtZ3VpZGUtdG8tbW9kdWxvLWJpYXMtYW5kLWhvdy10by1hdm9pZC1pdC9cbiAqIEZJUFMgMTg2LTUsIEEuMiBodHRwczovL2NzcmMubmlzdC5nb3YvcHVibGljYXRpb25zL2RldGFpbC9maXBzLzE4Ni81L2ZpbmFsXG4gKiBSRkMgOTM4MCwgaHR0cHM6Ly93d3cucmZjLWVkaXRvci5vcmcvcmZjL3JmYzkzODAjc2VjdGlvbi01XG4gKiBAcGFyYW0gaGFzaCBoYXNoIG91dHB1dCBmcm9tIFNIQTMgb3IgYSBzaW1pbGFyIGZ1bmN0aW9uXG4gKiBAcGFyYW0gZ3JvdXBPcmRlciBzaXplIG9mIHN1Ymdyb3VwIC0gKGUuZy4gc2VjcDI1NmsxLkNVUlZFLm4pXG4gKiBAcGFyYW0gaXNMRSBpbnRlcnByZXQgaGFzaCBieXRlcyBhcyBMRSBudW1cbiAqIEByZXR1cm5zIHZhbGlkIHByaXZhdGUgc2NhbGFyXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtYXBIYXNoVG9GaWVsZChrZXk6IFVpbnQ4QXJyYXksIGZpZWxkT3JkZXI6IGJpZ2ludCwgaXNMRSA9IGZhbHNlKTogVWludDhBcnJheSB7XG4gIGNvbnN0IGxlbiA9IGtleS5sZW5ndGg7XG4gIGNvbnN0IGZpZWxkTGVuID0gZ2V0RmllbGRCeXRlc0xlbmd0aChmaWVsZE9yZGVyKTtcbiAgY29uc3QgbWluTGVuID0gZ2V0TWluSGFzaExlbmd0aChmaWVsZE9yZGVyKTtcbiAgLy8gTm8gc21hbGwgbnVtYmVyczogbmVlZCB0byB1bmRlcnN0YW5kIGJpYXMgc3RvcnkuIE5vIGh1Z2UgbnVtYmVyczogZWFzaWVyIHRvIGRldGVjdCBKUyB0aW1pbmdzLlxuICBpZiAobGVuIDwgMTYgfHwgbGVuIDwgbWluTGVuIHx8IGxlbiA+IDEwMjQpXG4gICAgdGhyb3cgbmV3IEVycm9yKGBleHBlY3RlZCAke21pbkxlbn0tMTAyNCBieXRlcyBvZiBpbnB1dCwgZ290ICR7bGVufWApO1xuICBjb25zdCBudW0gPSBpc0xFID8gYnl0ZXNUb051bWJlckJFKGtleSkgOiBieXRlc1RvTnVtYmVyTEUoa2V5KTtcbiAgLy8gYG1vZCh4LCAxMSlgIGNhbiBzb21ldGltZXMgcHJvZHVjZSAwLiBgbW9kKHgsIDEwKSArIDFgIGlzIHRoZSBzYW1lLCBidXQgbm8gMFxuICBjb25zdCByZWR1Y2VkID0gbW9kKG51bSwgZmllbGRPcmRlciAtIF8xbikgKyBfMW47XG4gIHJldHVybiBpc0xFID8gbnVtYmVyVG9CeXRlc0xFKHJlZHVjZWQsIGZpZWxkTGVuKSA6IG51bWJlclRvQnl0ZXNCRShyZWR1Y2VkLCBmaWVsZExlbik7XG59XG4iLCAiLyohIG5vYmxlLWN1cnZlcyAtIE1JVCBMaWNlbnNlIChjKSAyMDIyIFBhdWwgTWlsbGVyIChwYXVsbWlsbHIuY29tKSAqL1xuLy8gQWJlbGlhbiBncm91cCB1dGlsaXRpZXNcbmltcG9ydCB7IElGaWVsZCwgdmFsaWRhdGVGaWVsZCwgbkxlbmd0aCB9IGZyb20gJy4vbW9kdWxhci5qcyc7XG5pbXBvcnQgeyB2YWxpZGF0ZU9iamVjdCB9IGZyb20gJy4vdXRpbHMuanMnO1xuY29uc3QgXzBuID0gQmlnSW50KDApO1xuY29uc3QgXzFuID0gQmlnSW50KDEpO1xuXG5leHBvcnQgdHlwZSBBZmZpbmVQb2ludDxUPiA9IHtcbiAgeDogVDtcbiAgeTogVDtcbn0gJiB7IHo/OiBuZXZlcjsgdD86IG5ldmVyIH07XG5cbmV4cG9ydCBpbnRlcmZhY2UgR3JvdXA8VCBleHRlbmRzIEdyb3VwPFQ+PiB7XG4gIGRvdWJsZSgpOiBUO1xuICBuZWdhdGUoKTogVDtcbiAgYWRkKG90aGVyOiBUKTogVDtcbiAgc3VidHJhY3Qob3RoZXI6IFQpOiBUO1xuICBlcXVhbHMob3RoZXI6IFQpOiBib29sZWFuO1xuICBtdWx0aXBseShzY2FsYXI6IGJpZ2ludCk6IFQ7XG59XG5cbmV4cG9ydCB0eXBlIEdyb3VwQ29uc3RydWN0b3I8VD4gPSB7XG4gIEJBU0U6IFQ7XG4gIFpFUk86IFQ7XG59O1xuZXhwb3J0IHR5cGUgTWFwcGVyPFQ+ID0gKGk6IFRbXSkgPT4gVFtdO1xuXG4vLyBFbGxpcHRpYyBjdXJ2ZSBtdWx0aXBsaWNhdGlvbiBvZiBQb2ludCBieSBzY2FsYXIuIEZyYWdpbGUuXG4vLyBTY2FsYXJzIHNob3VsZCBhbHdheXMgYmUgbGVzcyB0aGFuIGN1cnZlIG9yZGVyOiB0aGlzIHNob3VsZCBiZSBjaGVja2VkIGluc2lkZSBvZiBhIGN1cnZlIGl0c2VsZi5cbi8vIENyZWF0ZXMgcHJlY29tcHV0YXRpb24gdGFibGVzIGZvciBmYXN0IG11bHRpcGxpY2F0aW9uOlxuLy8gLSBwcml2YXRlIHNjYWxhciBpcyBzcGxpdCBieSBmaXhlZCBzaXplIHdpbmRvd3Mgb2YgVyBiaXRzXG4vLyAtIGV2ZXJ5IHdpbmRvdyBwb2ludCBpcyBjb2xsZWN0ZWQgZnJvbSB3aW5kb3cncyB0YWJsZSAmIGFkZGVkIHRvIGFjY3VtdWxhdG9yXG4vLyAtIHNpbmNlIHdpbmRvd3MgYXJlIGRpZmZlcmVudCwgc2FtZSBwb2ludCBpbnNpZGUgdGFibGVzIHdvbid0IGJlIGFjY2Vzc2VkIG1vcmUgdGhhbiBvbmNlIHBlciBjYWxjXG4vLyAtIGVhY2ggbXVsdGlwbGljYXRpb24gaXMgJ01hdGguY2VpbChDVVJWRV9PUkRFUiAvIFx1RDgzNVx1REM0QSkgKyAxJyBwb2ludCBhZGRpdGlvbnMgKGZpeGVkIGZvciBhbnkgc2NhbGFyKVxuLy8gLSArMSB3aW5kb3cgaXMgbmVjY2Vzc2FyeSBmb3Igd05BRlxuLy8gLSB3TkFGIHJlZHVjZXMgdGFibGUgc2l6ZTogMnggbGVzcyBtZW1vcnkgKyAyeCBmYXN0ZXIgZ2VuZXJhdGlvbiwgYnV0IDEwJSBzbG93ZXIgbXVsdGlwbGljYXRpb25cbi8vIFRPRE86IFJlc2VhcmNoIHJldHVybmluZyAyZCBKUyBhcnJheSBvZiB3aW5kb3dzLCBpbnN0ZWFkIG9mIGEgc2luZ2xlIHdpbmRvdy4gVGhpcyB3b3VsZCBhbGxvd1xuLy8gd2luZG93cyB0byBiZSBpbiBkaWZmZXJlbnQgbWVtb3J5IGxvY2F0aW9uc1xuZXhwb3J0IGZ1bmN0aW9uIHdOQUY8VCBleHRlbmRzIEdyb3VwPFQ+PihjOiBHcm91cENvbnN0cnVjdG9yPFQ+LCBiaXRzOiBudW1iZXIpIHtcbiAgY29uc3QgY29uc3RUaW1lTmVnYXRlID0gKGNvbmRpdGlvbjogYm9vbGVhbiwgaXRlbTogVCk6IFQgPT4ge1xuICAgIGNvbnN0IG5lZyA9IGl0ZW0ubmVnYXRlKCk7XG4gICAgcmV0dXJuIGNvbmRpdGlvbiA/IG5lZyA6IGl0ZW07XG4gIH07XG4gIGNvbnN0IG9wdHMgPSAoVzogbnVtYmVyKSA9PiB7XG4gICAgY29uc3Qgd2luZG93cyA9IE1hdGguY2VpbChiaXRzIC8gVykgKyAxOyAvLyArMSwgYmVjYXVzZVxuICAgIGNvbnN0IHdpbmRvd1NpemUgPSAyICoqIChXIC0gMSk7IC8vIC0xIGJlY2F1c2Ugd2Ugc2tpcCB6ZXJvXG4gICAgcmV0dXJuIHsgd2luZG93cywgd2luZG93U2l6ZSB9O1xuICB9O1xuICByZXR1cm4ge1xuICAgIGNvbnN0VGltZU5lZ2F0ZSxcbiAgICAvLyBub24tY29uc3QgdGltZSBtdWx0aXBsaWNhdGlvbiBsYWRkZXJcbiAgICB1bnNhZmVMYWRkZXIoZWxtOiBULCBuOiBiaWdpbnQpIHtcbiAgICAgIGxldCBwID0gYy5aRVJPO1xuICAgICAgbGV0IGQ6IFQgPSBlbG07XG4gICAgICB3aGlsZSAobiA+IF8wbikge1xuICAgICAgICBpZiAobiAmIF8xbikgcCA9IHAuYWRkKGQpO1xuICAgICAgICBkID0gZC5kb3VibGUoKTtcbiAgICAgICAgbiA+Pj0gXzFuO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHA7XG4gICAgfSxcblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgYSB3TkFGIHByZWNvbXB1dGF0aW9uIHdpbmRvdy4gVXNlZCBmb3IgY2FjaGluZy5cbiAgICAgKiBEZWZhdWx0IHdpbmRvdyBzaXplIGlzIHNldCBieSBgdXRpbHMucHJlY29tcHV0ZSgpYCBhbmQgaXMgZXF1YWwgdG8gOC5cbiAgICAgKiBOdW1iZXIgb2YgcHJlY29tcHV0ZWQgcG9pbnRzIGRlcGVuZHMgb24gdGhlIGN1cnZlIHNpemU6XG4gICAgICogMl4oXHVEODM1XHVEQzRBXHUyMjEyMSkgKiAoTWF0aC5jZWlsKFx1RDgzNVx1REM1QiAvIFx1RDgzNVx1REM0QSkgKyAxKSwgd2hlcmU6XG4gICAgICogLSBcdUQ4MzVcdURDNEEgaXMgdGhlIHdpbmRvdyBzaXplXG4gICAgICogLSBcdUQ4MzVcdURDNUIgaXMgdGhlIGJpdGxlbmd0aCBvZiB0aGUgY3VydmUgb3JkZXIuXG4gICAgICogRm9yIGEgMjU2LWJpdCBjdXJ2ZSBhbmQgd2luZG93IHNpemUgOCwgdGhlIG51bWJlciBvZiBwcmVjb21wdXRlZCBwb2ludHMgaXMgMTI4ICogMzMgPSA0MjI0LlxuICAgICAqIEByZXR1cm5zIHByZWNvbXB1dGVkIHBvaW50IHRhYmxlcyBmbGF0dGVuZWQgdG8gYSBzaW5nbGUgYXJyYXlcbiAgICAgKi9cbiAgICBwcmVjb21wdXRlV2luZG93KGVsbTogVCwgVzogbnVtYmVyKTogR3JvdXA8VD5bXSB7XG4gICAgICBjb25zdCB7IHdpbmRvd3MsIHdpbmRvd1NpemUgfSA9IG9wdHMoVyk7XG4gICAgICBjb25zdCBwb2ludHM6IFRbXSA9IFtdO1xuICAgICAgbGV0IHA6IFQgPSBlbG07XG4gICAgICBsZXQgYmFzZSA9IHA7XG4gICAgICBmb3IgKGxldCB3aW5kb3cgPSAwOyB3aW5kb3cgPCB3aW5kb3dzOyB3aW5kb3crKykge1xuICAgICAgICBiYXNlID0gcDtcbiAgICAgICAgcG9pbnRzLnB1c2goYmFzZSk7XG4gICAgICAgIC8vID0xLCBiZWNhdXNlIHdlIHNraXAgemVyb1xuICAgICAgICBmb3IgKGxldCBpID0gMTsgaSA8IHdpbmRvd1NpemU7IGkrKykge1xuICAgICAgICAgIGJhc2UgPSBiYXNlLmFkZChwKTtcbiAgICAgICAgICBwb2ludHMucHVzaChiYXNlKTtcbiAgICAgICAgfVxuICAgICAgICBwID0gYmFzZS5kb3VibGUoKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBwb2ludHM7XG4gICAgfSxcblxuICAgIC8qKlxuICAgICAqIEltcGxlbWVudHMgZWMgbXVsdGlwbGljYXRpb24gdXNpbmcgcHJlY29tcHV0ZWQgdGFibGVzIGFuZCB3LWFyeSBub24tYWRqYWNlbnQgZm9ybS5cbiAgICAgKiBAcGFyYW0gVyB3aW5kb3cgc2l6ZVxuICAgICAqIEBwYXJhbSBwcmVjb21wdXRlcyBwcmVjb21wdXRlZCB0YWJsZXNcbiAgICAgKiBAcGFyYW0gbiBzY2FsYXIgKHdlIGRvbid0IGNoZWNrIGhlcmUsIGJ1dCBzaG91bGQgYmUgbGVzcyB0aGFuIGN1cnZlIG9yZGVyKVxuICAgICAqIEByZXR1cm5zIHJlYWwgYW5kIGZha2UgKGZvciBjb25zdC10aW1lKSBwb2ludHNcbiAgICAgKi9cbiAgICB3TkFGKFc6IG51bWJlciwgcHJlY29tcHV0ZXM6IFRbXSwgbjogYmlnaW50KTogeyBwOiBUOyBmOiBUIH0ge1xuICAgICAgLy8gVE9ETzogbWF5YmUgY2hlY2sgdGhhdCBzY2FsYXIgaXMgbGVzcyB0aGFuIGdyb3VwIG9yZGVyPyB3TkFGIGJlaGF2aW91cyBpcyB1bmRlZmluZWQgb3RoZXJ3aXNlXG4gICAgICAvLyBCdXQgbmVlZCB0byBjYXJlZnVsbHkgcmVtb3ZlIG90aGVyIGNoZWNrcyBiZWZvcmUgd05BRi4gT1JERVIgPT0gYml0cyBoZXJlXG4gICAgICBjb25zdCB7IHdpbmRvd3MsIHdpbmRvd1NpemUgfSA9IG9wdHMoVyk7XG5cbiAgICAgIGxldCBwID0gYy5aRVJPO1xuICAgICAgbGV0IGYgPSBjLkJBU0U7XG5cbiAgICAgIGNvbnN0IG1hc2sgPSBCaWdJbnQoMiAqKiBXIC0gMSk7IC8vIENyZWF0ZSBtYXNrIHdpdGggVyBvbmVzOiAwYjExMTEgZm9yIFc9NCBldGMuXG4gICAgICBjb25zdCBtYXhOdW1iZXIgPSAyICoqIFc7XG4gICAgICBjb25zdCBzaGlmdEJ5ID0gQmlnSW50KFcpO1xuXG4gICAgICBmb3IgKGxldCB3aW5kb3cgPSAwOyB3aW5kb3cgPCB3aW5kb3dzOyB3aW5kb3crKykge1xuICAgICAgICBjb25zdCBvZmZzZXQgPSB3aW5kb3cgKiB3aW5kb3dTaXplO1xuICAgICAgICAvLyBFeHRyYWN0IFcgYml0cy5cbiAgICAgICAgbGV0IHdiaXRzID0gTnVtYmVyKG4gJiBtYXNrKTtcblxuICAgICAgICAvLyBTaGlmdCBudW1iZXIgYnkgVyBiaXRzLlxuICAgICAgICBuID4+PSBzaGlmdEJ5O1xuXG4gICAgICAgIC8vIElmIHRoZSBiaXRzIGFyZSBiaWdnZXIgdGhhbiBtYXggc2l6ZSwgd2UnbGwgc3BsaXQgdGhvc2UuXG4gICAgICAgIC8vICsyMjQgPT4gMjU2IC0gMzJcbiAgICAgICAgaWYgKHdiaXRzID4gd2luZG93U2l6ZSkge1xuICAgICAgICAgIHdiaXRzIC09IG1heE51bWJlcjtcbiAgICAgICAgICBuICs9IF8xbjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRoaXMgY29kZSB3YXMgZmlyc3Qgd3JpdHRlbiB3aXRoIGFzc3VtcHRpb24gdGhhdCAnZicgYW5kICdwJyB3aWxsIG5ldmVyIGJlIGluZmluaXR5IHBvaW50OlxuICAgICAgICAvLyBzaW5jZSBlYWNoIGFkZGl0aW9uIGlzIG11bHRpcGxpZWQgYnkgMiAqKiBXLCBpdCBjYW5ub3QgY2FuY2VsIGVhY2ggb3RoZXIuIEhvd2V2ZXIsXG4gICAgICAgIC8vIHRoZXJlIGlzIG5lZ2F0ZSBub3c6IGl0IGlzIHBvc3NpYmxlIHRoYXQgbmVnYXRlZCBlbGVtZW50IGZyb20gbG93IHZhbHVlXG4gICAgICAgIC8vIHdvdWxkIGJlIHRoZSBzYW1lIGFzIGhpZ2ggZWxlbWVudCwgd2hpY2ggd2lsbCBjcmVhdGUgY2FycnkgaW50byBuZXh0IHdpbmRvdy5cbiAgICAgICAgLy8gSXQncyBub3Qgb2J2aW91cyBob3cgdGhpcyBjYW4gZmFpbCwgYnV0IHN0aWxsIHdvcnRoIGludmVzdGlnYXRpbmcgbGF0ZXIuXG5cbiAgICAgICAgLy8gQ2hlY2sgaWYgd2UncmUgb250byBaZXJvIHBvaW50LlxuICAgICAgICAvLyBBZGQgcmFuZG9tIHBvaW50IGluc2lkZSBjdXJyZW50IHdpbmRvdyB0byBmLlxuICAgICAgICBjb25zdCBvZmZzZXQxID0gb2Zmc2V0O1xuICAgICAgICBjb25zdCBvZmZzZXQyID0gb2Zmc2V0ICsgTWF0aC5hYnMod2JpdHMpIC0gMTsgLy8gLTEgYmVjYXVzZSB3ZSBza2lwIHplcm9cbiAgICAgICAgY29uc3QgY29uZDEgPSB3aW5kb3cgJSAyICE9PSAwO1xuICAgICAgICBjb25zdCBjb25kMiA9IHdiaXRzIDwgMDtcbiAgICAgICAgaWYgKHdiaXRzID09PSAwKSB7XG4gICAgICAgICAgLy8gVGhlIG1vc3QgaW1wb3J0YW50IHBhcnQgZm9yIGNvbnN0LXRpbWUgZ2V0UHVibGljS2V5XG4gICAgICAgICAgZiA9IGYuYWRkKGNvbnN0VGltZU5lZ2F0ZShjb25kMSwgcHJlY29tcHV0ZXNbb2Zmc2V0MV0pKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBwID0gcC5hZGQoY29uc3RUaW1lTmVnYXRlKGNvbmQyLCBwcmVjb21wdXRlc1tvZmZzZXQyXSkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAvLyBKSVQtY29tcGlsZXIgc2hvdWxkIG5vdCBlbGltaW5hdGUgZiBoZXJlLCBzaW5jZSBpdCB3aWxsIGxhdGVyIGJlIHVzZWQgaW4gbm9ybWFsaXplWigpXG4gICAgICAvLyBFdmVuIGlmIHRoZSB2YXJpYWJsZSBpcyBzdGlsbCB1bnVzZWQsIHRoZXJlIGFyZSBzb21lIGNoZWNrcyB3aGljaCB3aWxsXG4gICAgICAvLyB0aHJvdyBhbiBleGNlcHRpb24sIHNvIGNvbXBpbGVyIG5lZWRzIHRvIHByb3ZlIHRoZXkgd29uJ3QgaGFwcGVuLCB3aGljaCBpcyBoYXJkLlxuICAgICAgLy8gQXQgdGhpcyBwb2ludCB0aGVyZSBpcyBhIHdheSB0byBGIGJlIGluZmluaXR5LXBvaW50IGV2ZW4gaWYgcCBpcyBub3QsXG4gICAgICAvLyB3aGljaCBtYWtlcyBpdCBsZXNzIGNvbnN0LXRpbWU6IGFyb3VuZCAxIGJpZ2ludCBtdWx0aXBseS5cbiAgICAgIHJldHVybiB7IHAsIGYgfTtcbiAgICB9LFxuXG4gICAgd05BRkNhY2hlZChQOiBULCBwcmVjb21wdXRlc01hcDogTWFwPFQsIFRbXT4sIG46IGJpZ2ludCwgdHJhbnNmb3JtOiBNYXBwZXI8VD4pOiB7IHA6IFQ7IGY6IFQgfSB7XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBjb25zdCBXOiBudW1iZXIgPSBQLl9XSU5ET1dfU0laRSB8fCAxO1xuICAgICAgLy8gQ2FsY3VsYXRlIHByZWNvbXB1dGVzIG9uIGEgZmlyc3QgcnVuLCByZXVzZSB0aGVtIGFmdGVyXG4gICAgICBsZXQgY29tcCA9IHByZWNvbXB1dGVzTWFwLmdldChQKTtcbiAgICAgIGlmICghY29tcCkge1xuICAgICAgICBjb21wID0gdGhpcy5wcmVjb21wdXRlV2luZG93KFAsIFcpIGFzIFRbXTtcbiAgICAgICAgaWYgKFcgIT09IDEpIHtcbiAgICAgICAgICBwcmVjb21wdXRlc01hcC5zZXQoUCwgdHJhbnNmb3JtKGNvbXApKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIHRoaXMud05BRihXLCBjb21wLCBuKTtcbiAgICB9LFxuICB9O1xufVxuXG4vLyBHZW5lcmljIEJhc2ljQ3VydmUgaW50ZXJmYWNlOiB3b3JrcyBldmVuIGZvciBwb2x5bm9taWFsIGZpZWxkcyAoQkxTKTogUCwgbiwgaCB3b3VsZCBiZSBvay5cbi8vIFRob3VnaCBnZW5lcmF0b3IgY2FuIGJlIGRpZmZlcmVudCAoRnAyIC8gRnA2IGZvciBCTFMpLlxuZXhwb3J0IHR5cGUgQmFzaWNDdXJ2ZTxUPiA9IHtcbiAgRnA6IElGaWVsZDxUPjsgLy8gRmllbGQgb3ZlciB3aGljaCB3ZSdsbCBkbyBjYWxjdWxhdGlvbnMgKEZwKVxuICBuOiBiaWdpbnQ7IC8vIEN1cnZlIG9yZGVyLCB0b3RhbCBjb3VudCBvZiB2YWxpZCBwb2ludHMgaW4gdGhlIGZpZWxkXG4gIG5CaXRMZW5ndGg/OiBudW1iZXI7IC8vIGJpdCBsZW5ndGggb2YgY3VydmUgb3JkZXJcbiAgbkJ5dGVMZW5ndGg/OiBudW1iZXI7IC8vIGJ5dGUgbGVuZ3RoIG9mIGN1cnZlIG9yZGVyXG4gIGg6IGJpZ2ludDsgLy8gY29mYWN0b3IuIHdlIGNhbiBhc3NpZ24gZGVmYXVsdD0xLCBidXQgdXNlcnMgd2lsbCBqdXN0IGlnbm9yZSBpdCB3L28gdmFsaWRhdGlvblxuICBoRWZmPzogYmlnaW50OyAvLyBOdW1iZXIgdG8gbXVsdGlwbHkgdG8gY2xlYXIgY29mYWN0b3JcbiAgR3g6IFQ7IC8vIGJhc2UgcG9pbnQgWCBjb29yZGluYXRlXG4gIEd5OiBUOyAvLyBiYXNlIHBvaW50IFkgY29vcmRpbmF0ZVxuICBhbGxvd0luZmluaXR5UG9pbnQ/OiBib29sZWFuOyAvLyBibHMxMi0zODEgcmVxdWlyZXMgaXQuIFpFUk8gcG9pbnQgaXMgdmFsaWQsIGJ1dCBpbnZhbGlkIHB1YmtleVxufTtcblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlQmFzaWM8RlAsIFQ+KGN1cnZlOiBCYXNpY0N1cnZlPEZQPiAmIFQpIHtcbiAgdmFsaWRhdGVGaWVsZChjdXJ2ZS5GcCk7XG4gIHZhbGlkYXRlT2JqZWN0KFxuICAgIGN1cnZlLFxuICAgIHtcbiAgICAgIG46ICdiaWdpbnQnLFxuICAgICAgaDogJ2JpZ2ludCcsXG4gICAgICBHeDogJ2ZpZWxkJyxcbiAgICAgIEd5OiAnZmllbGQnLFxuICAgIH0sXG4gICAge1xuICAgICAgbkJpdExlbmd0aDogJ2lzU2FmZUludGVnZXInLFxuICAgICAgbkJ5dGVMZW5ndGg6ICdpc1NhZmVJbnRlZ2VyJyxcbiAgICB9XG4gICk7XG4gIC8vIFNldCBkZWZhdWx0c1xuICByZXR1cm4gT2JqZWN0LmZyZWV6ZSh7XG4gICAgLi4ubkxlbmd0aChjdXJ2ZS5uLCBjdXJ2ZS5uQml0TGVuZ3RoKSxcbiAgICAuLi5jdXJ2ZSxcbiAgICAuLi57IHA6IGN1cnZlLkZwLk9SREVSIH0sXG4gIH0gYXMgY29uc3QpO1xufVxuIiwgIi8qISBub2JsZS1jdXJ2ZXMgLSBNSVQgTGljZW5zZSAoYykgMjAyMiBQYXVsIE1pbGxlciAocGF1bG1pbGxyLmNvbSkgKi9cbi8vIFR3aXN0ZWQgRWR3YXJkcyBjdXJ2ZS4gVGhlIGZvcm11bGEgaXM6IGF4XHUwMEIyICsgeVx1MDBCMiA9IDEgKyBkeFx1MDBCMnlcdTAwQjJcbmltcG9ydCB7IG1vZCB9IGZyb20gJy4vbW9kdWxhci5qcyc7XG5pbXBvcnQgKiBhcyB1dCBmcm9tICcuL3V0aWxzLmpzJztcbmltcG9ydCB7IGVuc3VyZUJ5dGVzLCBGSGFzaCwgSGV4IH0gZnJvbSAnLi91dGlscy5qcyc7XG5pbXBvcnQgeyBHcm91cCwgR3JvdXBDb25zdHJ1Y3Rvciwgd05BRiwgQmFzaWNDdXJ2ZSwgdmFsaWRhdGVCYXNpYywgQWZmaW5lUG9pbnQgfSBmcm9tICcuL2N1cnZlLmpzJztcblxuLy8gQmUgZnJpZW5kbHkgdG8gYmFkIEVDTUFTY3JpcHQgcGFyc2VycyBieSBub3QgdXNpbmcgYmlnaW50IGxpdGVyYWxzXG4vLyBwcmV0dGllci1pZ25vcmVcbmNvbnN0IF8wbiA9IEJpZ0ludCgwKSwgXzFuID0gQmlnSW50KDEpLCBfMm4gPSBCaWdJbnQoMiksIF84biA9IEJpZ0ludCg4KTtcblxuLy8gRWR3YXJkcyBjdXJ2ZXMgbXVzdCBkZWNsYXJlIHBhcmFtcyBhICYgZC5cbmV4cG9ydCB0eXBlIEN1cnZlVHlwZSA9IEJhc2ljQ3VydmU8YmlnaW50PiAmIHtcbiAgYTogYmlnaW50OyAvLyBjdXJ2ZSBwYXJhbSBhXG4gIGQ6IGJpZ2ludDsgLy8gY3VydmUgcGFyYW0gZFxuICBoYXNoOiBGSGFzaDsgLy8gSGFzaGluZ1xuICByYW5kb21CeXRlczogKGJ5dGVzTGVuZ3RoPzogbnVtYmVyKSA9PiBVaW50OEFycmF5OyAvLyBDU1BSTkdcbiAgYWRqdXN0U2NhbGFyQnl0ZXM/OiAoYnl0ZXM6IFVpbnQ4QXJyYXkpID0+IFVpbnQ4QXJyYXk7IC8vIGNsZWFycyBiaXRzIHRvIGdldCB2YWxpZCBmaWVsZCBlbGVtdG5cbiAgZG9tYWluPzogKGRhdGE6IFVpbnQ4QXJyYXksIGN0eDogVWludDhBcnJheSwgcGhmbGFnOiBib29sZWFuKSA9PiBVaW50OEFycmF5OyAvLyBVc2VkIGZvciBoYXNoaW5nXG4gIHV2UmF0aW8/OiAodTogYmlnaW50LCB2OiBiaWdpbnQpID0+IHsgaXNWYWxpZDogYm9vbGVhbjsgdmFsdWU6IGJpZ2ludCB9OyAvLyBSYXRpbyBcdTIyMUEodS92KVxuICBwcmVoYXNoPzogRkhhc2g7IC8vIFJGQyA4MDMyIHByZS1oYXNoaW5nIG9mIG1lc3NhZ2VzIHRvIHNpZ24oKSAvIHZlcmlmeSgpXG4gIG1hcFRvQ3VydmU/OiAoc2NhbGFyOiBiaWdpbnRbXSkgPT4gQWZmaW5lUG9pbnQ8YmlnaW50PjsgLy8gZm9yIGhhc2gtdG8tY3VydmUgc3RhbmRhcmRcbn07XG5cbi8vIHZlcmlmaWNhdGlvbiBydWxlIGlzIGVpdGhlciB6aXAyMTUgb3IgcmZjODAzMiAvIG5pc3QxODYtNS4gQ29uc3VsdCBmcm9tSGV4OlxuY29uc3QgVkVSSUZZX0RFRkFVTFQgPSB7IHppcDIxNTogdHJ1ZSB9O1xuXG5mdW5jdGlvbiB2YWxpZGF0ZU9wdHMoY3VydmU6IEN1cnZlVHlwZSkge1xuICBjb25zdCBvcHRzID0gdmFsaWRhdGVCYXNpYyhjdXJ2ZSk7XG4gIHV0LnZhbGlkYXRlT2JqZWN0KFxuICAgIGN1cnZlLFxuICAgIHtcbiAgICAgIGhhc2g6ICdmdW5jdGlvbicsXG4gICAgICBhOiAnYmlnaW50JyxcbiAgICAgIGQ6ICdiaWdpbnQnLFxuICAgICAgcmFuZG9tQnl0ZXM6ICdmdW5jdGlvbicsXG4gICAgfSxcbiAgICB7XG4gICAgICBhZGp1c3RTY2FsYXJCeXRlczogJ2Z1bmN0aW9uJyxcbiAgICAgIGRvbWFpbjogJ2Z1bmN0aW9uJyxcbiAgICAgIHV2UmF0aW86ICdmdW5jdGlvbicsXG4gICAgICBtYXBUb0N1cnZlOiAnZnVuY3Rpb24nLFxuICAgIH1cbiAgKTtcbiAgLy8gU2V0IGRlZmF1bHRzXG4gIHJldHVybiBPYmplY3QuZnJlZXplKHsgLi4ub3B0cyB9IGFzIGNvbnN0KTtcbn1cblxuLy8gSW5zdGFuY2Ugb2YgRXh0ZW5kZWQgUG9pbnQgd2l0aCBjb29yZGluYXRlcyBpbiBYLCBZLCBaLCBUXG5leHBvcnQgaW50ZXJmYWNlIEV4dFBvaW50VHlwZSBleHRlbmRzIEdyb3VwPEV4dFBvaW50VHlwZT4ge1xuICByZWFkb25seSBleDogYmlnaW50O1xuICByZWFkb25seSBleTogYmlnaW50O1xuICByZWFkb25seSBlejogYmlnaW50O1xuICByZWFkb25seSBldDogYmlnaW50O1xuICBnZXQgeCgpOiBiaWdpbnQ7XG4gIGdldCB5KCk6IGJpZ2ludDtcbiAgYXNzZXJ0VmFsaWRpdHkoKTogdm9pZDtcbiAgbXVsdGlwbHkoc2NhbGFyOiBiaWdpbnQpOiBFeHRQb2ludFR5cGU7XG4gIG11bHRpcGx5VW5zYWZlKHNjYWxhcjogYmlnaW50KTogRXh0UG9pbnRUeXBlO1xuICBpc1NtYWxsT3JkZXIoKTogYm9vbGVhbjtcbiAgaXNUb3JzaW9uRnJlZSgpOiBib29sZWFuO1xuICBjbGVhckNvZmFjdG9yKCk6IEV4dFBvaW50VHlwZTtcbiAgdG9BZmZpbmUoaXo/OiBiaWdpbnQpOiBBZmZpbmVQb2ludDxiaWdpbnQ+O1xuICB0b1Jhd0J5dGVzKGlzQ29tcHJlc3NlZD86IGJvb2xlYW4pOiBVaW50OEFycmF5O1xuICB0b0hleChpc0NvbXByZXNzZWQ/OiBib29sZWFuKTogc3RyaW5nO1xufVxuLy8gU3RhdGljIG1ldGhvZHMgb2YgRXh0ZW5kZWQgUG9pbnQgd2l0aCBjb29yZGluYXRlcyBpbiBYLCBZLCBaLCBUXG5leHBvcnQgaW50ZXJmYWNlIEV4dFBvaW50Q29uc3RydWN0b3IgZXh0ZW5kcyBHcm91cENvbnN0cnVjdG9yPEV4dFBvaW50VHlwZT4ge1xuICBuZXcgKHg6IGJpZ2ludCwgeTogYmlnaW50LCB6OiBiaWdpbnQsIHQ6IGJpZ2ludCk6IEV4dFBvaW50VHlwZTtcbiAgZnJvbUFmZmluZShwOiBBZmZpbmVQb2ludDxiaWdpbnQ+KTogRXh0UG9pbnRUeXBlO1xuICBmcm9tSGV4KGhleDogSGV4KTogRXh0UG9pbnRUeXBlO1xuICBmcm9tUHJpdmF0ZUtleShwcml2YXRlS2V5OiBIZXgpOiBFeHRQb2ludFR5cGU7XG59XG5cbmV4cG9ydCB0eXBlIEN1cnZlRm4gPSB7XG4gIENVUlZFOiBSZXR1cm5UeXBlPHR5cGVvZiB2YWxpZGF0ZU9wdHM+O1xuICBnZXRQdWJsaWNLZXk6IChwcml2YXRlS2V5OiBIZXgpID0+IFVpbnQ4QXJyYXk7XG4gIHNpZ246IChtZXNzYWdlOiBIZXgsIHByaXZhdGVLZXk6IEhleCwgb3B0aW9ucz86IHsgY29udGV4dD86IEhleCB9KSA9PiBVaW50OEFycmF5O1xuICB2ZXJpZnk6IChcbiAgICBzaWc6IEhleCxcbiAgICBtZXNzYWdlOiBIZXgsXG4gICAgcHVibGljS2V5OiBIZXgsXG4gICAgb3B0aW9ucz86IHsgY29udGV4dD86IEhleDsgemlwMjE1OiBib29sZWFuIH1cbiAgKSA9PiBib29sZWFuO1xuICBFeHRlbmRlZFBvaW50OiBFeHRQb2ludENvbnN0cnVjdG9yO1xuICB1dGlsczoge1xuICAgIHJhbmRvbVByaXZhdGVLZXk6ICgpID0+IFVpbnQ4QXJyYXk7XG4gICAgZ2V0RXh0ZW5kZWRQdWJsaWNLZXk6IChrZXk6IEhleCkgPT4ge1xuICAgICAgaGVhZDogVWludDhBcnJheTtcbiAgICAgIHByZWZpeDogVWludDhBcnJheTtcbiAgICAgIHNjYWxhcjogYmlnaW50O1xuICAgICAgcG9pbnQ6IEV4dFBvaW50VHlwZTtcbiAgICAgIHBvaW50Qnl0ZXM6IFVpbnQ4QXJyYXk7XG4gICAgfTtcbiAgfTtcbn07XG5cbi8vIEl0IGlzIG5vdCBnZW5lcmljIHR3aXN0ZWQgY3VydmUgZm9yIG5vdywgYnV0IGVkMjU1MTkvZWQ0NDggZ2VuZXJpYyBpbXBsZW1lbnRhdGlvblxuZXhwb3J0IGZ1bmN0aW9uIHR3aXN0ZWRFZHdhcmRzKGN1cnZlRGVmOiBDdXJ2ZVR5cGUpOiBDdXJ2ZUZuIHtcbiAgY29uc3QgQ1VSVkUgPSB2YWxpZGF0ZU9wdHMoY3VydmVEZWYpIGFzIFJldHVyblR5cGU8dHlwZW9mIHZhbGlkYXRlT3B0cz47XG4gIGNvbnN0IHtcbiAgICBGcCxcbiAgICBuOiBDVVJWRV9PUkRFUixcbiAgICBwcmVoYXNoOiBwcmVoYXNoLFxuICAgIGhhc2g6IGNIYXNoLFxuICAgIHJhbmRvbUJ5dGVzLFxuICAgIG5CeXRlTGVuZ3RoLFxuICAgIGg6IGNvZmFjdG9yLFxuICB9ID0gQ1VSVkU7XG4gIGNvbnN0IE1BU0sgPSBfMm4gPDwgKEJpZ0ludChuQnl0ZUxlbmd0aCAqIDgpIC0gXzFuKTtcbiAgY29uc3QgbW9kUCA9IEZwLmNyZWF0ZTsgLy8gRnVuY3Rpb24gb3ZlcnJpZGVzXG5cbiAgLy8gc3FydCh1L3YpXG4gIGNvbnN0IHV2UmF0aW8gPVxuICAgIENVUlZFLnV2UmF0aW8gfHxcbiAgICAoKHU6IGJpZ2ludCwgdjogYmlnaW50KSA9PiB7XG4gICAgICB0cnkge1xuICAgICAgICByZXR1cm4geyBpc1ZhbGlkOiB0cnVlLCB2YWx1ZTogRnAuc3FydCh1ICogRnAuaW52KHYpKSB9O1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICByZXR1cm4geyBpc1ZhbGlkOiBmYWxzZSwgdmFsdWU6IF8wbiB9O1xuICAgICAgfVxuICAgIH0pO1xuICBjb25zdCBhZGp1c3RTY2FsYXJCeXRlcyA9IENVUlZFLmFkanVzdFNjYWxhckJ5dGVzIHx8ICgoYnl0ZXM6IFVpbnQ4QXJyYXkpID0+IGJ5dGVzKTsgLy8gTk9PUFxuICBjb25zdCBkb21haW4gPVxuICAgIENVUlZFLmRvbWFpbiB8fFxuICAgICgoZGF0YTogVWludDhBcnJheSwgY3R4OiBVaW50OEFycmF5LCBwaGZsYWc6IGJvb2xlYW4pID0+IHtcbiAgICAgIGlmIChjdHgubGVuZ3RoIHx8IHBoZmxhZykgdGhyb3cgbmV3IEVycm9yKCdDb250ZXh0cy9wcmUtaGFzaCBhcmUgbm90IHN1cHBvcnRlZCcpO1xuICAgICAgcmV0dXJuIGRhdGE7XG4gICAgfSk7IC8vIE5PT1BcbiAgY29uc3QgaW5CaWcgPSAobjogYmlnaW50KSA9PiB0eXBlb2YgbiA9PT0gJ2JpZ2ludCcgJiYgXzBuIDwgbjsgLy8gbiBpbiBbMS4uXVxuICBjb25zdCBpblJhbmdlID0gKG46IGJpZ2ludCwgbWF4OiBiaWdpbnQpID0+IGluQmlnKG4pICYmIGluQmlnKG1heCkgJiYgbiA8IG1heDsgLy8gbiBpbiBbMS4ubWF4LTFdXG4gIGNvbnN0IGluME1hc2tSYW5nZSA9IChuOiBiaWdpbnQpID0+IG4gPT09IF8wbiB8fCBpblJhbmdlKG4sIE1BU0spOyAvLyBuIGluIFswLi5NQVNLLTFdXG4gIGZ1bmN0aW9uIGFzc2VydEluUmFuZ2UobjogYmlnaW50LCBtYXg6IGJpZ2ludCkge1xuICAgIC8vIG4gaW4gWzEuLm1heC0xXVxuICAgIGlmIChpblJhbmdlKG4sIG1heCkpIHJldHVybiBuO1xuICAgIHRocm93IG5ldyBFcnJvcihgRXhwZWN0ZWQgdmFsaWQgc2NhbGFyIDwgJHttYXh9LCBnb3QgJHt0eXBlb2Ygbn0gJHtufWApO1xuICB9XG4gIGZ1bmN0aW9uIGFzc2VydEdFMChuOiBiaWdpbnQpIHtcbiAgICAvLyBuIGluIFswLi5DVVJWRV9PUkRFUi0xXVxuICAgIHJldHVybiBuID09PSBfMG4gPyBuIDogYXNzZXJ0SW5SYW5nZShuLCBDVVJWRV9PUkRFUik7IC8vIEdFID0gcHJpbWUgc3ViZ3JvdXAsIG5vdCBmdWxsIGdyb3VwXG4gIH1cbiAgY29uc3QgcG9pbnRQcmVjb21wdXRlcyA9IG5ldyBNYXA8UG9pbnQsIFBvaW50W10+KCk7XG4gIGZ1bmN0aW9uIGlzUG9pbnQob3RoZXI6IHVua25vd24pIHtcbiAgICBpZiAoIShvdGhlciBpbnN0YW5jZW9mIFBvaW50KSkgdGhyb3cgbmV3IEVycm9yKCdFeHRlbmRlZFBvaW50IGV4cGVjdGVkJyk7XG4gIH1cbiAgLy8gRXh0ZW5kZWQgUG9pbnQgd29ya3MgaW4gZXh0ZW5kZWQgY29vcmRpbmF0ZXM6ICh4LCB5LCB6LCB0KSBcdTIyMEIgKHg9eC96LCB5PXkveiwgdD14eSkuXG4gIC8vIGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1R3aXN0ZWRfRWR3YXJkc19jdXJ2ZSNFeHRlbmRlZF9jb29yZGluYXRlc1xuICBjbGFzcyBQb2ludCBpbXBsZW1lbnRzIEV4dFBvaW50VHlwZSB7XG4gICAgc3RhdGljIHJlYWRvbmx5IEJBU0UgPSBuZXcgUG9pbnQoQ1VSVkUuR3gsIENVUlZFLkd5LCBfMW4sIG1vZFAoQ1VSVkUuR3ggKiBDVVJWRS5HeSkpO1xuICAgIHN0YXRpYyByZWFkb25seSBaRVJPID0gbmV3IFBvaW50KF8wbiwgXzFuLCBfMW4sIF8wbik7IC8vIDAsIDEsIDEsIDBcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgcmVhZG9ubHkgZXg6IGJpZ2ludCxcbiAgICAgIHJlYWRvbmx5IGV5OiBiaWdpbnQsXG4gICAgICByZWFkb25seSBlejogYmlnaW50LFxuICAgICAgcmVhZG9ubHkgZXQ6IGJpZ2ludFxuICAgICkge1xuICAgICAgaWYgKCFpbjBNYXNrUmFuZ2UoZXgpKSB0aHJvdyBuZXcgRXJyb3IoJ3ggcmVxdWlyZWQnKTtcbiAgICAgIGlmICghaW4wTWFza1JhbmdlKGV5KSkgdGhyb3cgbmV3IEVycm9yKCd5IHJlcXVpcmVkJyk7XG4gICAgICBpZiAoIWluME1hc2tSYW5nZShleikpIHRocm93IG5ldyBFcnJvcigneiByZXF1aXJlZCcpO1xuICAgICAgaWYgKCFpbjBNYXNrUmFuZ2UoZXQpKSB0aHJvdyBuZXcgRXJyb3IoJ3QgcmVxdWlyZWQnKTtcbiAgICB9XG5cbiAgICBnZXQgeCgpOiBiaWdpbnQge1xuICAgICAgcmV0dXJuIHRoaXMudG9BZmZpbmUoKS54O1xuICAgIH1cbiAgICBnZXQgeSgpOiBiaWdpbnQge1xuICAgICAgcmV0dXJuIHRoaXMudG9BZmZpbmUoKS55O1xuICAgIH1cblxuICAgIHN0YXRpYyBmcm9tQWZmaW5lKHA6IEFmZmluZVBvaW50PGJpZ2ludD4pOiBQb2ludCB7XG4gICAgICBpZiAocCBpbnN0YW5jZW9mIFBvaW50KSB0aHJvdyBuZXcgRXJyb3IoJ2V4dGVuZGVkIHBvaW50IG5vdCBhbGxvd2VkJyk7XG4gICAgICBjb25zdCB7IHgsIHkgfSA9IHAgfHwge307XG4gICAgICBpZiAoIWluME1hc2tSYW5nZSh4KSB8fCAhaW4wTWFza1JhbmdlKHkpKSB0aHJvdyBuZXcgRXJyb3IoJ2ludmFsaWQgYWZmaW5lIHBvaW50Jyk7XG4gICAgICByZXR1cm4gbmV3IFBvaW50KHgsIHksIF8xbiwgbW9kUCh4ICogeSkpO1xuICAgIH1cbiAgICBzdGF0aWMgbm9ybWFsaXplWihwb2ludHM6IFBvaW50W10pOiBQb2ludFtdIHtcbiAgICAgIGNvbnN0IHRvSW52ID0gRnAuaW52ZXJ0QmF0Y2gocG9pbnRzLm1hcCgocCkgPT4gcC5leikpO1xuICAgICAgcmV0dXJuIHBvaW50cy5tYXAoKHAsIGkpID0+IHAudG9BZmZpbmUodG9JbnZbaV0pKS5tYXAoUG9pbnQuZnJvbUFmZmluZSk7XG4gICAgfVxuXG4gICAgLy8gV2UgY2FsY3VsYXRlIHByZWNvbXB1dGVzIGZvciBlbGxpcHRpYyBjdXJ2ZSBwb2ludCBtdWx0aXBsaWNhdGlvblxuICAgIC8vIHVzaW5nIHdpbmRvd2VkIG1ldGhvZC4gVGhpcyBzcGVjaWZpZXMgd2luZG93IHNpemUgYW5kXG4gICAgLy8gc3RvcmVzIHByZWNvbXB1dGVkIHZhbHVlcy4gVXN1YWxseSBvbmx5IGJhc2UgcG9pbnQgd291bGQgYmUgcHJlY29tcHV0ZWQuXG4gICAgX1dJTkRPV19TSVpFPzogbnVtYmVyO1xuXG4gICAgLy8gXCJQcml2YXRlIG1ldGhvZFwiLCBkb24ndCB1c2UgaXQgZGlyZWN0bHlcbiAgICBfc2V0V2luZG93U2l6ZSh3aW5kb3dTaXplOiBudW1iZXIpIHtcbiAgICAgIHRoaXMuX1dJTkRPV19TSVpFID0gd2luZG93U2l6ZTtcbiAgICAgIHBvaW50UHJlY29tcHV0ZXMuZGVsZXRlKHRoaXMpO1xuICAgIH1cbiAgICAvLyBOb3QgcmVxdWlyZWQgZm9yIGZyb21IZXgoKSwgd2hpY2ggYWx3YXlzIGNyZWF0ZXMgdmFsaWQgcG9pbnRzLlxuICAgIC8vIENvdWxkIGJlIHVzZWZ1bCBmb3IgZnJvbUFmZmluZSgpLlxuICAgIGFzc2VydFZhbGlkaXR5KCk6IHZvaWQge1xuICAgICAgY29uc3QgeyBhLCBkIH0gPSBDVVJWRTtcbiAgICAgIGlmICh0aGlzLmlzMCgpKSB0aHJvdyBuZXcgRXJyb3IoJ2JhZCBwb2ludDogWkVSTycpOyAvLyBUT0RPOiBvcHRpbWl6ZSwgd2l0aCB2YXJzIGJlbG93P1xuICAgICAgLy8gRXF1YXRpb24gaW4gYWZmaW5lIGNvb3JkaW5hdGVzOiBheFx1MDBCMiArIHlcdTAwQjIgPSAxICsgZHhcdTAwQjJ5XHUwMEIyXG4gICAgICAvLyBFcXVhdGlvbiBpbiBwcm9qZWN0aXZlIGNvb3JkaW5hdGVzIChYL1osIFkvWiwgWik6ICAoYVhcdTAwQjIgKyBZXHUwMEIyKVpcdTAwQjIgPSBaXHUyMDc0ICsgZFhcdTAwQjJZXHUwMEIyXG4gICAgICBjb25zdCB7IGV4OiBYLCBleTogWSwgZXo6IFosIGV0OiBUIH0gPSB0aGlzO1xuICAgICAgY29uc3QgWDIgPSBtb2RQKFggKiBYKTsgLy8gWFx1MDBCMlxuICAgICAgY29uc3QgWTIgPSBtb2RQKFkgKiBZKTsgLy8gWVx1MDBCMlxuICAgICAgY29uc3QgWjIgPSBtb2RQKFogKiBaKTsgLy8gWlx1MDBCMlxuICAgICAgY29uc3QgWjQgPSBtb2RQKFoyICogWjIpOyAvLyBaXHUyMDc0XG4gICAgICBjb25zdCBhWDIgPSBtb2RQKFgyICogYSk7IC8vIGFYXHUwMEIyXG4gICAgICBjb25zdCBsZWZ0ID0gbW9kUChaMiAqIG1vZFAoYVgyICsgWTIpKTsgLy8gKGFYXHUwMEIyICsgWVx1MDBCMilaXHUwMEIyXG4gICAgICBjb25zdCByaWdodCA9IG1vZFAoWjQgKyBtb2RQKGQgKiBtb2RQKFgyICogWTIpKSk7IC8vIFpcdTIwNzQgKyBkWFx1MDBCMllcdTAwQjJcbiAgICAgIGlmIChsZWZ0ICE9PSByaWdodCkgdGhyb3cgbmV3IEVycm9yKCdiYWQgcG9pbnQ6IGVxdWF0aW9uIGxlZnQgIT0gcmlnaHQgKDEpJyk7XG4gICAgICAvLyBJbiBFeHRlbmRlZCBjb29yZGluYXRlcyB3ZSBhbHNvIGhhdmUgVCwgd2hpY2ggaXMgeCp5PVQvWjogY2hlY2sgWCpZID09IFoqVFxuICAgICAgY29uc3QgWFkgPSBtb2RQKFggKiBZKTtcbiAgICAgIGNvbnN0IFpUID0gbW9kUChaICogVCk7XG4gICAgICBpZiAoWFkgIT09IFpUKSB0aHJvdyBuZXcgRXJyb3IoJ2JhZCBwb2ludDogZXF1YXRpb24gbGVmdCAhPSByaWdodCAoMiknKTtcbiAgICB9XG5cbiAgICAvLyBDb21wYXJlIG9uZSBwb2ludCB0byBhbm90aGVyLlxuICAgIGVxdWFscyhvdGhlcjogUG9pbnQpOiBib29sZWFuIHtcbiAgICAgIGlzUG9pbnQob3RoZXIpO1xuICAgICAgY29uc3QgeyBleDogWDEsIGV5OiBZMSwgZXo6IFoxIH0gPSB0aGlzO1xuICAgICAgY29uc3QgeyBleDogWDIsIGV5OiBZMiwgZXo6IFoyIH0gPSBvdGhlcjtcbiAgICAgIGNvbnN0IFgxWjIgPSBtb2RQKFgxICogWjIpO1xuICAgICAgY29uc3QgWDJaMSA9IG1vZFAoWDIgKiBaMSk7XG4gICAgICBjb25zdCBZMVoyID0gbW9kUChZMSAqIFoyKTtcbiAgICAgIGNvbnN0IFkyWjEgPSBtb2RQKFkyICogWjEpO1xuICAgICAgcmV0dXJuIFgxWjIgPT09IFgyWjEgJiYgWTFaMiA9PT0gWTJaMTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgaXMwKCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIHRoaXMuZXF1YWxzKFBvaW50LlpFUk8pO1xuICAgIH1cblxuICAgIG5lZ2F0ZSgpOiBQb2ludCB7XG4gICAgICAvLyBGbGlwcyBwb2ludCBzaWduIHRvIGEgbmVnYXRpdmUgb25lICgteCwgeSBpbiBhZmZpbmUgY29vcmRzKVxuICAgICAgcmV0dXJuIG5ldyBQb2ludChtb2RQKC10aGlzLmV4KSwgdGhpcy5leSwgdGhpcy5leiwgbW9kUCgtdGhpcy5ldCkpO1xuICAgIH1cblxuICAgIC8vIEZhc3QgYWxnbyBmb3IgZG91YmxpbmcgRXh0ZW5kZWQgUG9pbnQuXG4gICAgLy8gaHR0cHM6Ly9oeXBlcmVsbGlwdGljLm9yZy9FRkQvZzFwL2F1dG8tdHdpc3RlZC1leHRlbmRlZC5odG1sI2RvdWJsaW5nLWRibC0yMDA4LWh3Y2RcbiAgICAvLyBDb3N0OiA0TSArIDRTICsgMSphICsgNmFkZCArIDEqMi5cbiAgICBkb3VibGUoKTogUG9pbnQge1xuICAgICAgY29uc3QgeyBhIH0gPSBDVVJWRTtcbiAgICAgIGNvbnN0IHsgZXg6IFgxLCBleTogWTEsIGV6OiBaMSB9ID0gdGhpcztcbiAgICAgIGNvbnN0IEEgPSBtb2RQKFgxICogWDEpOyAvLyBBID0gWDEyXG4gICAgICBjb25zdCBCID0gbW9kUChZMSAqIFkxKTsgLy8gQiA9IFkxMlxuICAgICAgY29uc3QgQyA9IG1vZFAoXzJuICogbW9kUChaMSAqIFoxKSk7IC8vIEMgPSAyKloxMlxuICAgICAgY29uc3QgRCA9IG1vZFAoYSAqIEEpOyAvLyBEID0gYSpBXG4gICAgICBjb25zdCB4MXkxID0gWDEgKyBZMTtcbiAgICAgIGNvbnN0IEUgPSBtb2RQKG1vZFAoeDF5MSAqIHgxeTEpIC0gQSAtIEIpOyAvLyBFID0gKFgxK1kxKTItQS1CXG4gICAgICBjb25zdCBHID0gRCArIEI7IC8vIEcgPSBEK0JcbiAgICAgIGNvbnN0IEYgPSBHIC0gQzsgLy8gRiA9IEctQ1xuICAgICAgY29uc3QgSCA9IEQgLSBCOyAvLyBIID0gRC1CXG4gICAgICBjb25zdCBYMyA9IG1vZFAoRSAqIEYpOyAvLyBYMyA9IEUqRlxuICAgICAgY29uc3QgWTMgPSBtb2RQKEcgKiBIKTsgLy8gWTMgPSBHKkhcbiAgICAgIGNvbnN0IFQzID0gbW9kUChFICogSCk7IC8vIFQzID0gRSpIXG4gICAgICBjb25zdCBaMyA9IG1vZFAoRiAqIEcpOyAvLyBaMyA9IEYqR1xuICAgICAgcmV0dXJuIG5ldyBQb2ludChYMywgWTMsIFozLCBUMyk7XG4gICAgfVxuXG4gICAgLy8gRmFzdCBhbGdvIGZvciBhZGRpbmcgMiBFeHRlbmRlZCBQb2ludHMuXG4gICAgLy8gaHR0cHM6Ly9oeXBlcmVsbGlwdGljLm9yZy9FRkQvZzFwL2F1dG8tdHdpc3RlZC1leHRlbmRlZC5odG1sI2FkZGl0aW9uLWFkZC0yMDA4LWh3Y2RcbiAgICAvLyBDb3N0OiA5TSArIDEqYSArIDEqZCArIDdhZGQuXG4gICAgYWRkKG90aGVyOiBQb2ludCkge1xuICAgICAgaXNQb2ludChvdGhlcik7XG4gICAgICBjb25zdCB7IGEsIGQgfSA9IENVUlZFO1xuICAgICAgY29uc3QgeyBleDogWDEsIGV5OiBZMSwgZXo6IFoxLCBldDogVDEgfSA9IHRoaXM7XG4gICAgICBjb25zdCB7IGV4OiBYMiwgZXk6IFkyLCBlejogWjIsIGV0OiBUMiB9ID0gb3RoZXI7XG4gICAgICAvLyBGYXN0ZXIgYWxnbyBmb3IgYWRkaW5nIDIgRXh0ZW5kZWQgUG9pbnRzIHdoZW4gY3VydmUncyBhPS0xLlxuICAgICAgLy8gaHR0cDovL2h5cGVyZWxsaXB0aWMub3JnL0VGRC9nMXAvYXV0by10d2lzdGVkLWV4dGVuZGVkLTEuaHRtbCNhZGRpdGlvbi1hZGQtMjAwOC1od2NkLTRcbiAgICAgIC8vIENvc3Q6IDhNICsgOGFkZCArIDIqMi5cbiAgICAgIC8vIE5vdGU6IEl0IGRvZXMgbm90IGNoZWNrIHdoZXRoZXIgdGhlIGBvdGhlcmAgcG9pbnQgaXMgdmFsaWQuXG4gICAgICBpZiAoYSA9PT0gQmlnSW50KC0xKSkge1xuICAgICAgICBjb25zdCBBID0gbW9kUCgoWTEgLSBYMSkgKiAoWTIgKyBYMikpO1xuICAgICAgICBjb25zdCBCID0gbW9kUCgoWTEgKyBYMSkgKiAoWTIgLSBYMikpO1xuICAgICAgICBjb25zdCBGID0gbW9kUChCIC0gQSk7XG4gICAgICAgIGlmIChGID09PSBfMG4pIHJldHVybiB0aGlzLmRvdWJsZSgpOyAvLyBTYW1lIHBvaW50LiBUZXN0cyBzYXkgaXQgZG9lc24ndCBhZmZlY3QgdGltaW5nXG4gICAgICAgIGNvbnN0IEMgPSBtb2RQKFoxICogXzJuICogVDIpO1xuICAgICAgICBjb25zdCBEID0gbW9kUChUMSAqIF8ybiAqIFoyKTtcbiAgICAgICAgY29uc3QgRSA9IEQgKyBDO1xuICAgICAgICBjb25zdCBHID0gQiArIEE7XG4gICAgICAgIGNvbnN0IEggPSBEIC0gQztcbiAgICAgICAgY29uc3QgWDMgPSBtb2RQKEUgKiBGKTtcbiAgICAgICAgY29uc3QgWTMgPSBtb2RQKEcgKiBIKTtcbiAgICAgICAgY29uc3QgVDMgPSBtb2RQKEUgKiBIKTtcbiAgICAgICAgY29uc3QgWjMgPSBtb2RQKEYgKiBHKTtcbiAgICAgICAgcmV0dXJuIG5ldyBQb2ludChYMywgWTMsIFozLCBUMyk7XG4gICAgICB9XG4gICAgICBjb25zdCBBID0gbW9kUChYMSAqIFgyKTsgLy8gQSA9IFgxKlgyXG4gICAgICBjb25zdCBCID0gbW9kUChZMSAqIFkyKTsgLy8gQiA9IFkxKlkyXG4gICAgICBjb25zdCBDID0gbW9kUChUMSAqIGQgKiBUMik7IC8vIEMgPSBUMSpkKlQyXG4gICAgICBjb25zdCBEID0gbW9kUChaMSAqIFoyKTsgLy8gRCA9IFoxKloyXG4gICAgICBjb25zdCBFID0gbW9kUCgoWDEgKyBZMSkgKiAoWDIgKyBZMikgLSBBIC0gQik7IC8vIEUgPSAoWDErWTEpKihYMitZMiktQS1CXG4gICAgICBjb25zdCBGID0gRCAtIEM7IC8vIEYgPSBELUNcbiAgICAgIGNvbnN0IEcgPSBEICsgQzsgLy8gRyA9IEQrQ1xuICAgICAgY29uc3QgSCA9IG1vZFAoQiAtIGEgKiBBKTsgLy8gSCA9IEItYSpBXG4gICAgICBjb25zdCBYMyA9IG1vZFAoRSAqIEYpOyAvLyBYMyA9IEUqRlxuICAgICAgY29uc3QgWTMgPSBtb2RQKEcgKiBIKTsgLy8gWTMgPSBHKkhcbiAgICAgIGNvbnN0IFQzID0gbW9kUChFICogSCk7IC8vIFQzID0gRSpIXG4gICAgICBjb25zdCBaMyA9IG1vZFAoRiAqIEcpOyAvLyBaMyA9IEYqR1xuXG4gICAgICByZXR1cm4gbmV3IFBvaW50KFgzLCBZMywgWjMsIFQzKTtcbiAgICB9XG5cbiAgICBzdWJ0cmFjdChvdGhlcjogUG9pbnQpOiBQb2ludCB7XG4gICAgICByZXR1cm4gdGhpcy5hZGQob3RoZXIubmVnYXRlKCkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgd05BRihuOiBiaWdpbnQpOiB7IHA6IFBvaW50OyBmOiBQb2ludCB9IHtcbiAgICAgIHJldHVybiB3bmFmLndOQUZDYWNoZWQodGhpcywgcG9pbnRQcmVjb21wdXRlcywgbiwgUG9pbnQubm9ybWFsaXplWik7XG4gICAgfVxuXG4gICAgLy8gQ29uc3RhbnQtdGltZSBtdWx0aXBsaWNhdGlvbi5cbiAgICBtdWx0aXBseShzY2FsYXI6IGJpZ2ludCk6IFBvaW50IHtcbiAgICAgIGNvbnN0IHsgcCwgZiB9ID0gdGhpcy53TkFGKGFzc2VydEluUmFuZ2Uoc2NhbGFyLCBDVVJWRV9PUkRFUikpO1xuICAgICAgcmV0dXJuIFBvaW50Lm5vcm1hbGl6ZVooW3AsIGZdKVswXTtcbiAgICB9XG5cbiAgICAvLyBOb24tY29uc3RhbnQtdGltZSBtdWx0aXBsaWNhdGlvbi4gVXNlcyBkb3VibGUtYW5kLWFkZCBhbGdvcml0aG0uXG4gICAgLy8gSXQncyBmYXN0ZXIsIGJ1dCBzaG91bGQgb25seSBiZSB1c2VkIHdoZW4geW91IGRvbid0IGNhcmUgYWJvdXRcbiAgICAvLyBhbiBleHBvc2VkIHByaXZhdGUga2V5IGUuZy4gc2lnIHZlcmlmaWNhdGlvbi5cbiAgICAvLyBEb2VzIE5PVCBhbGxvdyBzY2FsYXJzIGhpZ2hlciB0aGFuIENVUlZFLm4uXG4gICAgbXVsdGlwbHlVbnNhZmUoc2NhbGFyOiBiaWdpbnQpOiBQb2ludCB7XG4gICAgICBsZXQgbiA9IGFzc2VydEdFMChzY2FsYXIpOyAvLyAwIDw9IHNjYWxhciA8IENVUlZFLm5cbiAgICAgIGlmIChuID09PSBfMG4pIHJldHVybiBJO1xuICAgICAgaWYgKHRoaXMuZXF1YWxzKEkpIHx8IG4gPT09IF8xbikgcmV0dXJuIHRoaXM7XG4gICAgICBpZiAodGhpcy5lcXVhbHMoRykpIHJldHVybiB0aGlzLndOQUYobikucDtcbiAgICAgIHJldHVybiB3bmFmLnVuc2FmZUxhZGRlcih0aGlzLCBuKTtcbiAgICB9XG5cbiAgICAvLyBDaGVja3MgaWYgcG9pbnQgaXMgb2Ygc21hbGwgb3JkZXIuXG4gICAgLy8gSWYgeW91IGFkZCBzb21ldGhpbmcgdG8gc21hbGwgb3JkZXIgcG9pbnQsIHlvdSB3aWxsIGhhdmUgXCJkaXJ0eVwiXG4gICAgLy8gcG9pbnQgd2l0aCB0b3JzaW9uIGNvbXBvbmVudC5cbiAgICAvLyBNdWx0aXBsaWVzIHBvaW50IGJ5IGNvZmFjdG9yIGFuZCBjaGVja3MgaWYgdGhlIHJlc3VsdCBpcyAwLlxuICAgIGlzU21hbGxPcmRlcigpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiB0aGlzLm11bHRpcGx5VW5zYWZlKGNvZmFjdG9yKS5pczAoKTtcbiAgICB9XG5cbiAgICAvLyBNdWx0aXBsaWVzIHBvaW50IGJ5IGN1cnZlIG9yZGVyIGFuZCBjaGVja3MgaWYgdGhlIHJlc3VsdCBpcyAwLlxuICAgIC8vIFJldHVybnMgYGZhbHNlYCBpcyB0aGUgcG9pbnQgaXMgZGlydHkuXG4gICAgaXNUb3JzaW9uRnJlZSgpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiB3bmFmLnVuc2FmZUxhZGRlcih0aGlzLCBDVVJWRV9PUkRFUikuaXMwKCk7XG4gICAgfVxuXG4gICAgLy8gQ29udmVydHMgRXh0ZW5kZWQgcG9pbnQgdG8gZGVmYXVsdCAoeCwgeSkgY29vcmRpbmF0ZXMuXG4gICAgLy8gQ2FuIGFjY2VwdCBwcmVjb21wdXRlZCBaXi0xIC0gZm9yIGV4YW1wbGUsIGZyb20gaW52ZXJ0QmF0Y2guXG4gICAgdG9BZmZpbmUoaXo/OiBiaWdpbnQpOiBBZmZpbmVQb2ludDxiaWdpbnQ+IHtcbiAgICAgIGNvbnN0IHsgZXg6IHgsIGV5OiB5LCBlejogeiB9ID0gdGhpcztcbiAgICAgIGNvbnN0IGlzMCA9IHRoaXMuaXMwKCk7XG4gICAgICBpZiAoaXogPT0gbnVsbCkgaXogPSBpczAgPyBfOG4gOiAoRnAuaW52KHopIGFzIGJpZ2ludCk7IC8vIDggd2FzIGNob3NlbiBhcmJpdHJhcmlseVxuICAgICAgY29uc3QgYXggPSBtb2RQKHggKiBpeik7XG4gICAgICBjb25zdCBheSA9IG1vZFAoeSAqIGl6KTtcbiAgICAgIGNvbnN0IHp6ID0gbW9kUCh6ICogaXopO1xuICAgICAgaWYgKGlzMCkgcmV0dXJuIHsgeDogXzBuLCB5OiBfMW4gfTtcbiAgICAgIGlmICh6eiAhPT0gXzFuKSB0aHJvdyBuZXcgRXJyb3IoJ2ludlogd2FzIGludmFsaWQnKTtcbiAgICAgIHJldHVybiB7IHg6IGF4LCB5OiBheSB9O1xuICAgIH1cblxuICAgIGNsZWFyQ29mYWN0b3IoKTogUG9pbnQge1xuICAgICAgY29uc3QgeyBoOiBjb2ZhY3RvciB9ID0gQ1VSVkU7XG4gICAgICBpZiAoY29mYWN0b3IgPT09IF8xbikgcmV0dXJuIHRoaXM7XG4gICAgICByZXR1cm4gdGhpcy5tdWx0aXBseVVuc2FmZShjb2ZhY3Rvcik7XG4gICAgfVxuXG4gICAgLy8gQ29udmVydHMgaGFzaCBzdHJpbmcgb3IgVWludDhBcnJheSB0byBQb2ludC5cbiAgICAvLyBVc2VzIGFsZ28gZnJvbSBSRkM4MDMyIDUuMS4zLlxuICAgIHN0YXRpYyBmcm9tSGV4KGhleDogSGV4LCB6aXAyMTUgPSBmYWxzZSk6IFBvaW50IHtcbiAgICAgIGNvbnN0IHsgZCwgYSB9ID0gQ1VSVkU7XG4gICAgICBjb25zdCBsZW4gPSBGcC5CWVRFUztcbiAgICAgIGhleCA9IGVuc3VyZUJ5dGVzKCdwb2ludEhleCcsIGhleCwgbGVuKTsgLy8gY29weSBoZXggdG8gYSBuZXcgYXJyYXlcbiAgICAgIGNvbnN0IG5vcm1lZCA9IGhleC5zbGljZSgpOyAvLyBjb3B5IGFnYWluLCB3ZSdsbCBtYW5pcHVsYXRlIGl0XG4gICAgICBjb25zdCBsYXN0Qnl0ZSA9IGhleFtsZW4gLSAxXTsgLy8gc2VsZWN0IGxhc3QgYnl0ZVxuICAgICAgbm9ybWVkW2xlbiAtIDFdID0gbGFzdEJ5dGUgJiB+MHg4MDsgLy8gY2xlYXIgbGFzdCBiaXRcbiAgICAgIGNvbnN0IHkgPSB1dC5ieXRlc1RvTnVtYmVyTEUobm9ybWVkKTtcbiAgICAgIGlmICh5ID09PSBfMG4pIHtcbiAgICAgICAgLy8geT0wIGlzIGFsbG93ZWRcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIFJGQzgwMzIgcHJvaGliaXRzID49IHAsIGJ1dCBaSVAyMTUgZG9lc24ndFxuICAgICAgICBpZiAoemlwMjE1KSBhc3NlcnRJblJhbmdlKHksIE1BU0spOyAvLyB6aXAyMTU9dHJ1ZSBbMS4uUC0xXSAoMl4yNTUtMTktMSBmb3IgZWQyNTUxOSlcbiAgICAgICAgZWxzZSBhc3NlcnRJblJhbmdlKHksIEZwLk9SREVSKTsgLy8gemlwMjE1PWZhbHNlIFsxLi5NQVNLLTFdICgyXjI1Ni0xIGZvciBlZDI1NTE5KVxuICAgICAgfVxuXG4gICAgICAvLyBFZDI1NTE5OiB4XHUwMEIyID0gKHlcdTAwQjItMSkvKGR5XHUwMEIyKzEpIG1vZCBwLiBFZDQ0ODogeFx1MDBCMiA9ICh5XHUwMEIyLTEpLyhkeVx1MDBCMi0xKSBtb2QgcC4gR2VuZXJpYyBjYXNlOlxuICAgICAgLy8gYXhcdTAwQjIreVx1MDBCMj0xK2R4XHUwMEIyeVx1MDBCMiA9PiB5XHUwMEIyLTE9ZHhcdTAwQjJ5XHUwMEIyLWF4XHUwMEIyID0+IHlcdTAwQjItMT14XHUwMEIyKGR5XHUwMEIyLWEpID0+IHhcdTAwQjI9KHlcdTAwQjItMSkvKGR5XHUwMEIyLWEpXG4gICAgICBjb25zdCB5MiA9IG1vZFAoeSAqIHkpOyAvLyBkZW5vbWluYXRvciBpcyBhbHdheXMgbm9uLTAgbW9kIHAuXG4gICAgICBjb25zdCB1ID0gbW9kUCh5MiAtIF8xbik7IC8vIHUgPSB5XHUwMEIyIC0gMVxuICAgICAgY29uc3QgdiA9IG1vZFAoZCAqIHkyIC0gYSk7IC8vIHYgPSBkIHlcdTAwQjIgKyAxLlxuICAgICAgbGV0IHsgaXNWYWxpZCwgdmFsdWU6IHggfSA9IHV2UmF0aW8odSwgdik7IC8vIFx1MjIxQSh1L3YpXG4gICAgICBpZiAoIWlzVmFsaWQpIHRocm93IG5ldyBFcnJvcignUG9pbnQuZnJvbUhleDogaW52YWxpZCB5IGNvb3JkaW5hdGUnKTtcbiAgICAgIGNvbnN0IGlzWE9kZCA9ICh4ICYgXzFuKSA9PT0gXzFuOyAvLyBUaGVyZSBhcmUgMiBzcXVhcmUgcm9vdHMuIFVzZSB4XzAgYml0IHRvIHNlbGVjdCBwcm9wZXJcbiAgICAgIGNvbnN0IGlzTGFzdEJ5dGVPZGQgPSAobGFzdEJ5dGUgJiAweDgwKSAhPT0gMDsgLy8geF8wLCBsYXN0IGJpdFxuICAgICAgaWYgKCF6aXAyMTUgJiYgeCA9PT0gXzBuICYmIGlzTGFzdEJ5dGVPZGQpXG4gICAgICAgIC8vIGlmIHg9MCBhbmQgeF8wID0gMSwgZmFpbFxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1BvaW50LmZyb21IZXg6IHg9MCBhbmQgeF8wPTEnKTtcbiAgICAgIGlmIChpc0xhc3RCeXRlT2RkICE9PSBpc1hPZGQpIHggPSBtb2RQKC14KTsgLy8gaWYgeF8wICE9IHggbW9kIDIsIHNldCB4ID0gcC14XG4gICAgICByZXR1cm4gUG9pbnQuZnJvbUFmZmluZSh7IHgsIHkgfSk7XG4gICAgfVxuICAgIHN0YXRpYyBmcm9tUHJpdmF0ZUtleShwcml2S2V5OiBIZXgpIHtcbiAgICAgIHJldHVybiBnZXRFeHRlbmRlZFB1YmxpY0tleShwcml2S2V5KS5wb2ludDtcbiAgICB9XG4gICAgdG9SYXdCeXRlcygpOiBVaW50OEFycmF5IHtcbiAgICAgIGNvbnN0IHsgeCwgeSB9ID0gdGhpcy50b0FmZmluZSgpO1xuICAgICAgY29uc3QgYnl0ZXMgPSB1dC5udW1iZXJUb0J5dGVzTEUoeSwgRnAuQllURVMpOyAvLyBlYWNoIHkgaGFzIDIgeCB2YWx1ZXMgKHgsIC15KVxuICAgICAgYnl0ZXNbYnl0ZXMubGVuZ3RoIC0gMV0gfD0geCAmIF8xbiA/IDB4ODAgOiAwOyAvLyB3aGVuIGNvbXByZXNzaW5nLCBpdCdzIGVub3VnaCB0byBzdG9yZSB5XG4gICAgICByZXR1cm4gYnl0ZXM7IC8vIGFuZCB1c2UgdGhlIGxhc3QgYnl0ZSB0byBlbmNvZGUgc2lnbiBvZiB4XG4gICAgfVxuICAgIHRvSGV4KCk6IHN0cmluZyB7XG4gICAgICByZXR1cm4gdXQuYnl0ZXNUb0hleCh0aGlzLnRvUmF3Qnl0ZXMoKSk7IC8vIFNhbWUgYXMgdG9SYXdCeXRlcywgYnV0IHJldHVybnMgc3RyaW5nLlxuICAgIH1cbiAgfVxuICBjb25zdCB7IEJBU0U6IEcsIFpFUk86IEkgfSA9IFBvaW50O1xuICBjb25zdCB3bmFmID0gd05BRihQb2ludCwgbkJ5dGVMZW5ndGggKiA4KTtcblxuICBmdW5jdGlvbiBtb2ROKGE6IGJpZ2ludCkge1xuICAgIHJldHVybiBtb2QoYSwgQ1VSVkVfT1JERVIpO1xuICB9XG4gIC8vIExpdHRsZS1lbmRpYW4gU0hBNTEyIHdpdGggbW9kdWxvIG5cbiAgZnVuY3Rpb24gbW9kTl9MRShoYXNoOiBVaW50OEFycmF5KTogYmlnaW50IHtcbiAgICByZXR1cm4gbW9kTih1dC5ieXRlc1RvTnVtYmVyTEUoaGFzaCkpO1xuICB9XG5cbiAgLyoqIENvbnZlbmllbmNlIG1ldGhvZCB0aGF0IGNyZWF0ZXMgcHVibGljIGtleSBhbmQgb3RoZXIgc3R1ZmYuIFJGQzgwMzIgNS4xLjUgKi9cbiAgZnVuY3Rpb24gZ2V0RXh0ZW5kZWRQdWJsaWNLZXkoa2V5OiBIZXgpIHtcbiAgICBjb25zdCBsZW4gPSBuQnl0ZUxlbmd0aDtcbiAgICBrZXkgPSBlbnN1cmVCeXRlcygncHJpdmF0ZSBrZXknLCBrZXksIGxlbik7XG4gICAgLy8gSGFzaCBwcml2YXRlIGtleSB3aXRoIGN1cnZlJ3MgaGFzaCBmdW5jdGlvbiB0byBwcm9kdWNlIHVuaWZvcm1pbmdseSByYW5kb20gaW5wdXRcbiAgICAvLyBDaGVjayBieXRlIGxlbmd0aHM6IGVuc3VyZSg2NCwgaChlbnN1cmUoMzIsIGtleSkpKVxuICAgIGNvbnN0IGhhc2hlZCA9IGVuc3VyZUJ5dGVzKCdoYXNoZWQgcHJpdmF0ZSBrZXknLCBjSGFzaChrZXkpLCAyICogbGVuKTtcbiAgICBjb25zdCBoZWFkID0gYWRqdXN0U2NhbGFyQnl0ZXMoaGFzaGVkLnNsaWNlKDAsIGxlbikpOyAvLyBjbGVhciBmaXJzdCBoYWxmIGJpdHMsIHByb2R1Y2UgRkVcbiAgICBjb25zdCBwcmVmaXggPSBoYXNoZWQuc2xpY2UobGVuLCAyICogbGVuKTsgLy8gc2Vjb25kIGhhbGYgaXMgY2FsbGVkIGtleSBwcmVmaXggKDUuMS42KVxuICAgIGNvbnN0IHNjYWxhciA9IG1vZE5fTEUoaGVhZCk7IC8vIFRoZSBhY3R1YWwgcHJpdmF0ZSBzY2FsYXJcbiAgICBjb25zdCBwb2ludCA9IEcubXVsdGlwbHkoc2NhbGFyKTsgLy8gUG9pbnQgb24gRWR3YXJkcyBjdXJ2ZSBha2EgcHVibGljIGtleVxuICAgIGNvbnN0IHBvaW50Qnl0ZXMgPSBwb2ludC50b1Jhd0J5dGVzKCk7IC8vIFVpbnQ4QXJyYXkgcmVwcmVzZW50YXRpb25cbiAgICByZXR1cm4geyBoZWFkLCBwcmVmaXgsIHNjYWxhciwgcG9pbnQsIHBvaW50Qnl0ZXMgfTtcbiAgfVxuXG4gIC8vIENhbGN1bGF0ZXMgRWREU0EgcHViIGtleS4gUkZDODAzMiA1LjEuNS4gUHJpdmtleSBpcyBoYXNoZWQuIFVzZSBmaXJzdCBoYWxmIHdpdGggMyBiaXRzIGNsZWFyZWRcbiAgZnVuY3Rpb24gZ2V0UHVibGljS2V5KHByaXZLZXk6IEhleCk6IFVpbnQ4QXJyYXkge1xuICAgIHJldHVybiBnZXRFeHRlbmRlZFB1YmxpY0tleShwcml2S2V5KS5wb2ludEJ5dGVzO1xuICB9XG5cbiAgLy8gaW50KCdMRScsIFNIQTUxMihkb20yKEYsIEMpIHx8IG1zZ3MpKSBtb2QgTlxuICBmdW5jdGlvbiBoYXNoRG9tYWluVG9TY2FsYXIoY29udGV4dDogSGV4ID0gbmV3IFVpbnQ4QXJyYXkoKSwgLi4ubXNnczogVWludDhBcnJheVtdKSB7XG4gICAgY29uc3QgbXNnID0gdXQuY29uY2F0Qnl0ZXMoLi4ubXNncyk7XG4gICAgcmV0dXJuIG1vZE5fTEUoY0hhc2goZG9tYWluKG1zZywgZW5zdXJlQnl0ZXMoJ2NvbnRleHQnLCBjb250ZXh0KSwgISFwcmVoYXNoKSkpO1xuICB9XG5cbiAgLyoqIFNpZ25zIG1lc3NhZ2Ugd2l0aCBwcml2YXRlS2V5LiBSRkM4MDMyIDUuMS42ICovXG4gIGZ1bmN0aW9uIHNpZ24obXNnOiBIZXgsIHByaXZLZXk6IEhleCwgb3B0aW9uczogeyBjb250ZXh0PzogSGV4IH0gPSB7fSk6IFVpbnQ4QXJyYXkge1xuICAgIG1zZyA9IGVuc3VyZUJ5dGVzKCdtZXNzYWdlJywgbXNnKTtcbiAgICBpZiAocHJlaGFzaCkgbXNnID0gcHJlaGFzaChtc2cpOyAvLyBmb3IgZWQyNTUxOXBoIGV0Yy5cbiAgICBjb25zdCB7IHByZWZpeCwgc2NhbGFyLCBwb2ludEJ5dGVzIH0gPSBnZXRFeHRlbmRlZFB1YmxpY0tleShwcml2S2V5KTtcbiAgICBjb25zdCByID0gaGFzaERvbWFpblRvU2NhbGFyKG9wdGlvbnMuY29udGV4dCwgcHJlZml4LCBtc2cpOyAvLyByID0gZG9tMihGLCBDKSB8fCBwcmVmaXggfHwgUEgoTSlcbiAgICBjb25zdCBSID0gRy5tdWx0aXBseShyKS50b1Jhd0J5dGVzKCk7IC8vIFIgPSByR1xuICAgIGNvbnN0IGsgPSBoYXNoRG9tYWluVG9TY2FsYXIob3B0aW9ucy5jb250ZXh0LCBSLCBwb2ludEJ5dGVzLCBtc2cpOyAvLyBSIHx8IEEgfHwgUEgoTSlcbiAgICBjb25zdCBzID0gbW9kTihyICsgayAqIHNjYWxhcik7IC8vIFMgPSAociArIGsgKiBzKSBtb2QgTFxuICAgIGFzc2VydEdFMChzKTsgLy8gMCA8PSBzIDwgbFxuICAgIGNvbnN0IHJlcyA9IHV0LmNvbmNhdEJ5dGVzKFIsIHV0Lm51bWJlclRvQnl0ZXNMRShzLCBGcC5CWVRFUykpO1xuICAgIHJldHVybiBlbnN1cmVCeXRlcygncmVzdWx0JywgcmVzLCBuQnl0ZUxlbmd0aCAqIDIpOyAvLyA2NC1ieXRlIHNpZ25hdHVyZVxuICB9XG5cbiAgY29uc3QgdmVyaWZ5T3B0czogeyBjb250ZXh0PzogSGV4OyB6aXAyMTU/OiBib29sZWFuIH0gPSBWRVJJRllfREVGQVVMVDtcbiAgZnVuY3Rpb24gdmVyaWZ5KHNpZzogSGV4LCBtc2c6IEhleCwgcHVibGljS2V5OiBIZXgsIG9wdGlvbnMgPSB2ZXJpZnlPcHRzKTogYm9vbGVhbiB7XG4gICAgY29uc3QgeyBjb250ZXh0LCB6aXAyMTUgfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgbGVuID0gRnAuQllURVM7IC8vIFZlcmlmaWVzIEVkRFNBIHNpZ25hdHVyZSBhZ2FpbnN0IG1lc3NhZ2UgYW5kIHB1YmxpYyBrZXkuIFJGQzgwMzIgNS4xLjcuXG4gICAgc2lnID0gZW5zdXJlQnl0ZXMoJ3NpZ25hdHVyZScsIHNpZywgMiAqIGxlbik7IC8vIEFuIGV4dGVuZGVkIGdyb3VwIGVxdWF0aW9uIGlzIGNoZWNrZWQuXG4gICAgbXNnID0gZW5zdXJlQnl0ZXMoJ21lc3NhZ2UnLCBtc2cpO1xuICAgIGlmIChwcmVoYXNoKSBtc2cgPSBwcmVoYXNoKG1zZyk7IC8vIGZvciBlZDI1NTE5cGgsIGV0Y1xuXG4gICAgY29uc3QgcyA9IHV0LmJ5dGVzVG9OdW1iZXJMRShzaWcuc2xpY2UobGVuLCAyICogbGVuKSk7XG4gICAgLy8gemlwMjE1OiB0cnVlIGlzIGdvb2QgZm9yIGNvbnNlbnN1cy1jcml0aWNhbCBhcHBzIGFuZCBhbGxvd3MgcG9pbnRzIDwgMl4yNTZcbiAgICAvLyB6aXAyMTU6IGZhbHNlIGZvbGxvd3MgUkZDODAzMiAvIE5JU1QxODYtNSBhbmQgcmVzdHJpY3RzIHBvaW50cyB0byBDVVJWRS5wXG4gICAgbGV0IEEsIFIsIFNCO1xuICAgIHRyeSB7XG4gICAgICBBID0gUG9pbnQuZnJvbUhleChwdWJsaWNLZXksIHppcDIxNSk7XG4gICAgICBSID0gUG9pbnQuZnJvbUhleChzaWcuc2xpY2UoMCwgbGVuKSwgemlwMjE1KTtcbiAgICAgIFNCID0gRy5tdWx0aXBseVVuc2FmZShzKTsgLy8gMCA8PSBzIDwgbCBpcyBkb25lIGluc2lkZVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGlmICghemlwMjE1ICYmIEEuaXNTbWFsbE9yZGVyKCkpIHJldHVybiBmYWxzZTtcblxuICAgIGNvbnN0IGsgPSBoYXNoRG9tYWluVG9TY2FsYXIoY29udGV4dCwgUi50b1Jhd0J5dGVzKCksIEEudG9SYXdCeXRlcygpLCBtc2cpO1xuICAgIGNvbnN0IFJrQSA9IFIuYWRkKEEubXVsdGlwbHlVbnNhZmUoaykpO1xuICAgIC8vIFs4XVtTXUIgPSBbOF1SICsgWzhdW2tdQSdcbiAgICByZXR1cm4gUmtBLnN1YnRyYWN0KFNCKS5jbGVhckNvZmFjdG9yKCkuZXF1YWxzKFBvaW50LlpFUk8pO1xuICB9XG5cbiAgRy5fc2V0V2luZG93U2l6ZSg4KTsgLy8gRW5hYmxlIHByZWNvbXB1dGVzLiBTbG93cyBkb3duIGZpcnN0IHB1YmxpY0tleSBjb21wdXRhdGlvbiBieSAyMG1zLlxuXG4gIGNvbnN0IHV0aWxzID0ge1xuICAgIGdldEV4dGVuZGVkUHVibGljS2V5LFxuICAgIC8vIGVkMjU1MTkgcHJpdmF0ZSBrZXlzIGFyZSB1bmlmb3JtIDMyYi4gTm8gbmVlZCB0byBjaGVjayBmb3IgbW9kdWxvIGJpYXMsIGxpa2UgaW4gc2VjcDI1NmsxLlxuICAgIHJhbmRvbVByaXZhdGVLZXk6ICgpOiBVaW50OEFycmF5ID0+IHJhbmRvbUJ5dGVzKEZwLkJZVEVTKSxcblxuICAgIC8qKlxuICAgICAqIFdlJ3JlIGRvaW5nIHNjYWxhciBtdWx0aXBsaWNhdGlvbiAodXNlZCBpbiBnZXRQdWJsaWNLZXkgZXRjKSB3aXRoIHByZWNvbXB1dGVkIEJBU0VfUE9JTlRcbiAgICAgKiB2YWx1ZXMuIFRoaXMgc2xvd3MgZG93biBmaXJzdCBnZXRQdWJsaWNLZXkoKSBieSBtaWxsaXNlY29uZHMgKHNlZSBTcGVlZCBzZWN0aW9uKSxcbiAgICAgKiBidXQgYWxsb3dzIHRvIHNwZWVkLXVwIHN1YnNlcXVlbnQgZ2V0UHVibGljS2V5KCkgY2FsbHMgdXAgdG8gMjB4LlxuICAgICAqIEBwYXJhbSB3aW5kb3dTaXplIDIsIDQsIDgsIDE2XG4gICAgICovXG4gICAgcHJlY29tcHV0ZSh3aW5kb3dTaXplID0gOCwgcG9pbnQgPSBQb2ludC5CQVNFKTogdHlwZW9mIFBvaW50LkJBU0Uge1xuICAgICAgcG9pbnQuX3NldFdpbmRvd1NpemUod2luZG93U2l6ZSk7XG4gICAgICBwb2ludC5tdWx0aXBseShCaWdJbnQoMykpO1xuICAgICAgcmV0dXJuIHBvaW50O1xuICAgIH0sXG4gIH07XG5cbiAgcmV0dXJuIHtcbiAgICBDVVJWRSxcbiAgICBnZXRQdWJsaWNLZXksXG4gICAgc2lnbixcbiAgICB2ZXJpZnksXG4gICAgRXh0ZW5kZWRQb2ludDogUG9pbnQsXG4gICAgdXRpbHMsXG4gIH07XG59XG4iLCAiLyohIG5vYmxlLWN1cnZlcyAtIE1JVCBMaWNlbnNlIChjKSAyMDIyIFBhdWwgTWlsbGVyIChwYXVsbWlsbHIuY29tKSAqL1xuaW1wb3J0IHsgbW9kLCBwb3cgfSBmcm9tICcuL21vZHVsYXIuanMnO1xuaW1wb3J0IHsgYnl0ZXNUb051bWJlckxFLCBlbnN1cmVCeXRlcywgbnVtYmVyVG9CeXRlc0xFLCB2YWxpZGF0ZU9iamVjdCB9IGZyb20gJy4vdXRpbHMuanMnO1xuXG5jb25zdCBfMG4gPSBCaWdJbnQoMCk7XG5jb25zdCBfMW4gPSBCaWdJbnQoMSk7XG50eXBlIEhleCA9IHN0cmluZyB8IFVpbnQ4QXJyYXk7XG5cbmV4cG9ydCB0eXBlIEN1cnZlVHlwZSA9IHtcbiAgUDogYmlnaW50OyAvLyBmaW5pdGUgZmllbGQgcHJpbWVcbiAgbkJ5dGVMZW5ndGg6IG51bWJlcjtcbiAgYWRqdXN0U2NhbGFyQnl0ZXM/OiAoYnl0ZXM6IFVpbnQ4QXJyYXkpID0+IFVpbnQ4QXJyYXk7XG4gIGRvbWFpbj86IChkYXRhOiBVaW50OEFycmF5LCBjdHg6IFVpbnQ4QXJyYXksIHBoZmxhZzogYm9vbGVhbikgPT4gVWludDhBcnJheTtcbiAgYTogYmlnaW50O1xuICBtb250Z29tZXJ5Qml0czogbnVtYmVyO1xuICBwb3dQbWludXMyPzogKHg6IGJpZ2ludCkgPT4gYmlnaW50O1xuICB4eVRvVT86ICh4OiBiaWdpbnQsIHk6IGJpZ2ludCkgPT4gYmlnaW50O1xuICBHdTogYmlnaW50O1xuICByYW5kb21CeXRlcz86IChieXRlc0xlbmd0aD86IG51bWJlcikgPT4gVWludDhBcnJheTtcbn07XG5leHBvcnQgdHlwZSBDdXJ2ZUZuID0ge1xuICBzY2FsYXJNdWx0OiAoc2NhbGFyOiBIZXgsIHU6IEhleCkgPT4gVWludDhBcnJheTtcbiAgc2NhbGFyTXVsdEJhc2U6IChzY2FsYXI6IEhleCkgPT4gVWludDhBcnJheTtcbiAgZ2V0U2hhcmVkU2VjcmV0OiAocHJpdmF0ZUtleUE6IEhleCwgcHVibGljS2V5QjogSGV4KSA9PiBVaW50OEFycmF5O1xuICBnZXRQdWJsaWNLZXk6IChwcml2YXRlS2V5OiBIZXgpID0+IFVpbnQ4QXJyYXk7XG4gIHV0aWxzOiB7IHJhbmRvbVByaXZhdGVLZXk6ICgpID0+IFVpbnQ4QXJyYXkgfTtcbiAgR3VCeXRlczogVWludDhBcnJheTtcbn07XG5cbmZ1bmN0aW9uIHZhbGlkYXRlT3B0cyhjdXJ2ZTogQ3VydmVUeXBlKSB7XG4gIHZhbGlkYXRlT2JqZWN0KFxuICAgIGN1cnZlLFxuICAgIHtcbiAgICAgIGE6ICdiaWdpbnQnLFxuICAgIH0sXG4gICAge1xuICAgICAgbW9udGdvbWVyeUJpdHM6ICdpc1NhZmVJbnRlZ2VyJyxcbiAgICAgIG5CeXRlTGVuZ3RoOiAnaXNTYWZlSW50ZWdlcicsXG4gICAgICBhZGp1c3RTY2FsYXJCeXRlczogJ2Z1bmN0aW9uJyxcbiAgICAgIGRvbWFpbjogJ2Z1bmN0aW9uJyxcbiAgICAgIHBvd1BtaW51czI6ICdmdW5jdGlvbicsXG4gICAgICBHdTogJ2JpZ2ludCcsXG4gICAgfVxuICApO1xuICAvLyBTZXQgZGVmYXVsdHNcbiAgcmV0dXJuIE9iamVjdC5mcmVlemUoeyAuLi5jdXJ2ZSB9IGFzIGNvbnN0KTtcbn1cblxuLy8gTk9URTogbm90IHJlYWxseSBtb250Z29tZXJ5IGN1cnZlLCBqdXN0IGJ1bmNoIG9mIHZlcnkgc3BlY2lmaWMgbWV0aG9kcyBmb3IgWDI1NTE5L1g0NDggKFJGQyA3NzQ4LCBodHRwczovL3d3dy5yZmMtZWRpdG9yLm9yZy9yZmMvcmZjNzc0OClcbi8vIFVzZXMgb25seSBvbmUgY29vcmRpbmF0ZSBpbnN0ZWFkIG9mIHR3b1xuZXhwb3J0IGZ1bmN0aW9uIG1vbnRnb21lcnkoY3VydmVEZWY6IEN1cnZlVHlwZSk6IEN1cnZlRm4ge1xuICBjb25zdCBDVVJWRSA9IHZhbGlkYXRlT3B0cyhjdXJ2ZURlZik7XG4gIGNvbnN0IHsgUCB9ID0gQ1VSVkU7XG4gIGNvbnN0IG1vZFAgPSAobjogYmlnaW50KSA9PiBtb2QobiwgUCk7XG4gIGNvbnN0IG1vbnRnb21lcnlCaXRzID0gQ1VSVkUubW9udGdvbWVyeUJpdHM7XG4gIGNvbnN0IG1vbnRnb21lcnlCeXRlcyA9IE1hdGguY2VpbChtb250Z29tZXJ5Qml0cyAvIDgpO1xuICBjb25zdCBmaWVsZExlbiA9IENVUlZFLm5CeXRlTGVuZ3RoO1xuICBjb25zdCBhZGp1c3RTY2FsYXJCeXRlcyA9IENVUlZFLmFkanVzdFNjYWxhckJ5dGVzIHx8ICgoYnl0ZXM6IFVpbnQ4QXJyYXkpID0+IGJ5dGVzKTtcbiAgY29uc3QgcG93UG1pbnVzMiA9IENVUlZFLnBvd1BtaW51czIgfHwgKCh4OiBiaWdpbnQpID0+IHBvdyh4LCBQIC0gQmlnSW50KDIpLCBQKSk7XG5cbiAgLy8gY3N3YXAgZnJvbSBSRkM3NzQ4LiBCdXQgaXQgaXMgbm90IGZyb20gUkZDNzc0OCFcbiAgLypcbiAgICBjc3dhcChzd2FwLCB4XzIsIHhfMyk6XG4gICAgICAgICBkdW1teSA9IG1hc2soc3dhcCkgQU5EICh4XzIgWE9SIHhfMylcbiAgICAgICAgIHhfMiA9IHhfMiBYT1IgZHVtbXlcbiAgICAgICAgIHhfMyA9IHhfMyBYT1IgZHVtbXlcbiAgICAgICAgIFJldHVybiAoeF8yLCB4XzMpXG4gIFdoZXJlIG1hc2soc3dhcCkgaXMgdGhlIGFsbC0xIG9yIGFsbC0wIHdvcmQgb2YgdGhlIHNhbWUgbGVuZ3RoIGFzIHhfMlxuICAgYW5kIHhfMywgY29tcHV0ZWQsIGUuZy4sIGFzIG1hc2soc3dhcCkgPSAwIC0gc3dhcC5cbiAgKi9cbiAgZnVuY3Rpb24gY3N3YXAoc3dhcDogYmlnaW50LCB4XzI6IGJpZ2ludCwgeF8zOiBiaWdpbnQpOiBbYmlnaW50LCBiaWdpbnRdIHtcbiAgICBjb25zdCBkdW1teSA9IG1vZFAoc3dhcCAqICh4XzIgLSB4XzMpKTtcbiAgICB4XzIgPSBtb2RQKHhfMiAtIGR1bW15KTtcbiAgICB4XzMgPSBtb2RQKHhfMyArIGR1bW15KTtcbiAgICByZXR1cm4gW3hfMiwgeF8zXTtcbiAgfVxuXG4gIC8vIEFjY2VwdHMgMCBhcyB3ZWxsXG4gIGZ1bmN0aW9uIGFzc2VydEZpZWxkRWxlbWVudChuOiBiaWdpbnQpOiBiaWdpbnQge1xuICAgIGlmICh0eXBlb2YgbiA9PT0gJ2JpZ2ludCcgJiYgXzBuIDw9IG4gJiYgbiA8IFApIHJldHVybiBuO1xuICAgIHRocm93IG5ldyBFcnJvcignRXhwZWN0ZWQgdmFsaWQgc2NhbGFyIDAgPCBzY2FsYXIgPCBDVVJWRS5QJyk7XG4gIH1cblxuICAvLyB4MjU1MTkgZnJvbSA0XG4gIC8vIFRoZSBjb25zdGFudCBhMjQgaXMgKDQ4NjY2MiAtIDIpIC8gNCA9IDEyMTY2NSBmb3IgY3VydmUyNTUxOS9YMjU1MTlcbiAgY29uc3QgYTI0ID0gKENVUlZFLmEgLSBCaWdJbnQoMikpIC8gQmlnSW50KDQpO1xuICAvKipcbiAgICpcbiAgICogQHBhcmFtIHBvaW50VSB1IGNvb3JkaW5hdGUgKHgpIG9uIE1vbnRnb21lcnkgQ3VydmUgMjU1MTlcbiAgICogQHBhcmFtIHNjYWxhciBieSB3aGljaCB0aGUgcG9pbnQgd291bGQgYmUgbXVsdGlwbGllZFxuICAgKiBAcmV0dXJucyBuZXcgUG9pbnQgb24gTW9udGdvbWVyeSBjdXJ2ZVxuICAgKi9cbiAgZnVuY3Rpb24gbW9udGdvbWVyeUxhZGRlcihwb2ludFU6IGJpZ2ludCwgc2NhbGFyOiBiaWdpbnQpOiBiaWdpbnQge1xuICAgIGNvbnN0IHUgPSBhc3NlcnRGaWVsZEVsZW1lbnQocG9pbnRVKTtcbiAgICAvLyBTZWN0aW9uIDU6IEltcGxlbWVudGF0aW9ucyBNVVNUIGFjY2VwdCBub24tY2Fub25pY2FsIHZhbHVlcyBhbmQgcHJvY2VzcyB0aGVtIGFzXG4gICAgLy8gaWYgdGhleSBoYWQgYmVlbiByZWR1Y2VkIG1vZHVsbyB0aGUgZmllbGQgcHJpbWUuXG4gICAgY29uc3QgayA9IGFzc2VydEZpZWxkRWxlbWVudChzY2FsYXIpO1xuICAgIGNvbnN0IHhfMSA9IHU7XG4gICAgbGV0IHhfMiA9IF8xbjtcbiAgICBsZXQgel8yID0gXzBuO1xuICAgIGxldCB4XzMgPSB1O1xuICAgIGxldCB6XzMgPSBfMW47XG4gICAgbGV0IHN3YXAgPSBfMG47XG4gICAgbGV0IHN3OiBbYmlnaW50LCBiaWdpbnRdO1xuICAgIGZvciAobGV0IHQgPSBCaWdJbnQobW9udGdvbWVyeUJpdHMgLSAxKTsgdCA+PSBfMG47IHQtLSkge1xuICAgICAgY29uc3Qga190ID0gKGsgPj4gdCkgJiBfMW47XG4gICAgICBzd2FwIF49IGtfdDtcbiAgICAgIHN3ID0gY3N3YXAoc3dhcCwgeF8yLCB4XzMpO1xuICAgICAgeF8yID0gc3dbMF07XG4gICAgICB4XzMgPSBzd1sxXTtcbiAgICAgIHN3ID0gY3N3YXAoc3dhcCwgel8yLCB6XzMpO1xuICAgICAgel8yID0gc3dbMF07XG4gICAgICB6XzMgPSBzd1sxXTtcbiAgICAgIHN3YXAgPSBrX3Q7XG5cbiAgICAgIGNvbnN0IEEgPSB4XzIgKyB6XzI7XG4gICAgICBjb25zdCBBQSA9IG1vZFAoQSAqIEEpO1xuICAgICAgY29uc3QgQiA9IHhfMiAtIHpfMjtcbiAgICAgIGNvbnN0IEJCID0gbW9kUChCICogQik7XG4gICAgICBjb25zdCBFID0gQUEgLSBCQjtcbiAgICAgIGNvbnN0IEMgPSB4XzMgKyB6XzM7XG4gICAgICBjb25zdCBEID0geF8zIC0gel8zO1xuICAgICAgY29uc3QgREEgPSBtb2RQKEQgKiBBKTtcbiAgICAgIGNvbnN0IENCID0gbW9kUChDICogQik7XG4gICAgICBjb25zdCBkYWNiID0gREEgKyBDQjtcbiAgICAgIGNvbnN0IGRhX2NiID0gREEgLSBDQjtcbiAgICAgIHhfMyA9IG1vZFAoZGFjYiAqIGRhY2IpO1xuICAgICAgel8zID0gbW9kUCh4XzEgKiBtb2RQKGRhX2NiICogZGFfY2IpKTtcbiAgICAgIHhfMiA9IG1vZFAoQUEgKiBCQik7XG4gICAgICB6XzIgPSBtb2RQKEUgKiAoQUEgKyBtb2RQKGEyNCAqIEUpKSk7XG4gICAgfVxuICAgIC8vICh4XzIsIHhfMykgPSBjc3dhcChzd2FwLCB4XzIsIHhfMylcbiAgICBzdyA9IGNzd2FwKHN3YXAsIHhfMiwgeF8zKTtcbiAgICB4XzIgPSBzd1swXTtcbiAgICB4XzMgPSBzd1sxXTtcbiAgICAvLyAoel8yLCB6XzMpID0gY3N3YXAoc3dhcCwgel8yLCB6XzMpXG4gICAgc3cgPSBjc3dhcChzd2FwLCB6XzIsIHpfMyk7XG4gICAgel8yID0gc3dbMF07XG4gICAgel8zID0gc3dbMV07XG4gICAgLy8gel8yXihwIC0gMilcbiAgICBjb25zdCB6MiA9IHBvd1BtaW51czIoel8yKTtcbiAgICAvLyBSZXR1cm4geF8yICogKHpfMl4ocCAtIDIpKVxuICAgIHJldHVybiBtb2RQKHhfMiAqIHoyKTtcbiAgfVxuXG4gIGZ1bmN0aW9uIGVuY29kZVVDb29yZGluYXRlKHU6IGJpZ2ludCk6IFVpbnQ4QXJyYXkge1xuICAgIHJldHVybiBudW1iZXJUb0J5dGVzTEUobW9kUCh1KSwgbW9udGdvbWVyeUJ5dGVzKTtcbiAgfVxuXG4gIGZ1bmN0aW9uIGRlY29kZVVDb29yZGluYXRlKHVFbmM6IEhleCk6IGJpZ2ludCB7XG4gICAgLy8gU2VjdGlvbiA1OiBXaGVuIHJlY2VpdmluZyBzdWNoIGFuIGFycmF5LCBpbXBsZW1lbnRhdGlvbnMgb2YgWDI1NTE5XG4gICAgLy8gTVVTVCBtYXNrIHRoZSBtb3N0IHNpZ25pZmljYW50IGJpdCBpbiB0aGUgZmluYWwgYnl0ZS5cbiAgICAvLyBUaGlzIGlzIHZlcnkgdWdseSB3YXksIGJ1dCBpdCB3b3JrcyBiZWNhdXNlIGZpZWxkTGVuLTEgaXMgb3V0c2lkZSBvZiBib3VuZHMgZm9yIFg0NDgsIHNvIHRoaXMgYmVjb21lcyBOT09QXG4gICAgLy8gZmllbGRMZW4gLSBzY2FsYXJ5Qnl0ZXMgPSAxIGZvciBYNDQ4IGFuZCA9IDAgZm9yIFgyNTUxOVxuICAgIGNvbnN0IHUgPSBlbnN1cmVCeXRlcygndSBjb29yZGluYXRlJywgdUVuYywgbW9udGdvbWVyeUJ5dGVzKTtcbiAgICAvLyB1W2ZpZWxkTGVuLTFdIGNyYXNoZXMgUXVpY2tKUyAoVHlwZUVycm9yOiBvdXQtb2YtYm91bmQgbnVtZXJpYyBpbmRleClcbiAgICBpZiAoZmllbGRMZW4gPT09IG1vbnRnb21lcnlCeXRlcykgdVtmaWVsZExlbiAtIDFdICY9IDEyNzsgLy8gMGIwMTExXzExMTFcbiAgICByZXR1cm4gYnl0ZXNUb051bWJlckxFKHUpO1xuICB9XG4gIGZ1bmN0aW9uIGRlY29kZVNjYWxhcihuOiBIZXgpOiBiaWdpbnQge1xuICAgIGNvbnN0IGJ5dGVzID0gZW5zdXJlQnl0ZXMoJ3NjYWxhcicsIG4pO1xuICAgIGlmIChieXRlcy5sZW5ndGggIT09IG1vbnRnb21lcnlCeXRlcyAmJiBieXRlcy5sZW5ndGggIT09IGZpZWxkTGVuKVxuICAgICAgdGhyb3cgbmV3IEVycm9yKGBFeHBlY3RlZCAke21vbnRnb21lcnlCeXRlc30gb3IgJHtmaWVsZExlbn0gYnl0ZXMsIGdvdCAke2J5dGVzLmxlbmd0aH1gKTtcbiAgICByZXR1cm4gYnl0ZXNUb051bWJlckxFKGFkanVzdFNjYWxhckJ5dGVzKGJ5dGVzKSk7XG4gIH1cbiAgZnVuY3Rpb24gc2NhbGFyTXVsdChzY2FsYXI6IEhleCwgdTogSGV4KTogVWludDhBcnJheSB7XG4gICAgY29uc3QgcG9pbnRVID0gZGVjb2RlVUNvb3JkaW5hdGUodSk7XG4gICAgY29uc3QgX3NjYWxhciA9IGRlY29kZVNjYWxhcihzY2FsYXIpO1xuICAgIGNvbnN0IHB1ID0gbW9udGdvbWVyeUxhZGRlcihwb2ludFUsIF9zY2FsYXIpO1xuICAgIC8vIFRoZSByZXN1bHQgd2FzIG5vdCBjb250cmlidXRvcnlcbiAgICAvLyBodHRwczovL2NyLnlwLnRvL2VjZGguaHRtbCN2YWxpZGF0ZVxuICAgIGlmIChwdSA9PT0gXzBuKSB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgcHJpdmF0ZSBvciBwdWJsaWMga2V5IHJlY2VpdmVkJyk7XG4gICAgcmV0dXJuIGVuY29kZVVDb29yZGluYXRlKHB1KTtcbiAgfVxuICAvLyBDb21wdXRlcyBwdWJsaWMga2V5IGZyb20gcHJpdmF0ZS4gQnkgZG9pbmcgc2NhbGFyIG11bHRpcGxpY2F0aW9uIG9mIGJhc2UgcG9pbnQuXG4gIGNvbnN0IEd1Qnl0ZXMgPSBlbmNvZGVVQ29vcmRpbmF0ZShDVVJWRS5HdSk7XG4gIGZ1bmN0aW9uIHNjYWxhck11bHRCYXNlKHNjYWxhcjogSGV4KTogVWludDhBcnJheSB7XG4gICAgcmV0dXJuIHNjYWxhck11bHQoc2NhbGFyLCBHdUJ5dGVzKTtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgc2NhbGFyTXVsdCxcbiAgICBzY2FsYXJNdWx0QmFzZSxcbiAgICBnZXRTaGFyZWRTZWNyZXQ6IChwcml2YXRlS2V5OiBIZXgsIHB1YmxpY0tleTogSGV4KSA9PiBzY2FsYXJNdWx0KHByaXZhdGVLZXksIHB1YmxpY0tleSksXG4gICAgZ2V0UHVibGljS2V5OiAocHJpdmF0ZUtleTogSGV4KTogVWludDhBcnJheSA9PiBzY2FsYXJNdWx0QmFzZShwcml2YXRlS2V5KSxcbiAgICB1dGlsczogeyByYW5kb21Qcml2YXRlS2V5OiAoKSA9PiBDVVJWRS5yYW5kb21CeXRlcyEoQ1VSVkUubkJ5dGVMZW5ndGgpIH0sXG4gICAgR3VCeXRlczogR3VCeXRlcyxcbiAgfTtcbn1cbiIsICIvKiEgbm9ibGUtY3VydmVzIC0gTUlUIExpY2Vuc2UgKGMpIDIwMjIgUGF1bCBNaWxsZXIgKHBhdWxtaWxsci5jb20pICovXG5pbXBvcnQgdHlwZSB7IEdyb3VwLCBHcm91cENvbnN0cnVjdG9yLCBBZmZpbmVQb2ludCB9IGZyb20gJy4vY3VydmUuanMnO1xuaW1wb3J0IHsgbW9kLCBJRmllbGQgfSBmcm9tICcuL21vZHVsYXIuanMnO1xuaW1wb3J0IHsgYnl0ZXNUb051bWJlckJFLCBDSGFzaCwgY29uY2F0Qnl0ZXMsIHV0ZjhUb0J5dGVzLCB2YWxpZGF0ZU9iamVjdCB9IGZyb20gJy4vdXRpbHMuanMnO1xuXG4vKipcbiAqICogYERTVGAgaXMgYSBkb21haW4gc2VwYXJhdGlvbiB0YWcsIGRlZmluZWQgaW4gc2VjdGlvbiAyLjIuNVxuICogKiBgcGAgY2hhcmFjdGVyaXN0aWMgb2YgRiwgd2hlcmUgRiBpcyBhIGZpbml0ZSBmaWVsZCBvZiBjaGFyYWN0ZXJpc3RpYyBwIGFuZCBvcmRlciBxID0gcF5tXG4gKiAqIGBtYCBpcyBleHRlbnNpb24gZGVncmVlICgxIGZvciBwcmltZSBmaWVsZHMpXG4gKiAqIGBrYCBpcyB0aGUgdGFyZ2V0IHNlY3VyaXR5IHRhcmdldCBpbiBiaXRzIChlLmcuIDEyOCksIGZyb20gc2VjdGlvbiA1LjFcbiAqICogYGV4cGFuZGAgaXMgYHhtZGAgKFNIQTIsIFNIQTMsIEJMQUtFKSBvciBgeG9mYCAoU0hBS0UsIEJMQUtFLVhPRilcbiAqICogYGhhc2hgIGNvbmZvcm1pbmcgdG8gYHV0aWxzLkNIYXNoYCBpbnRlcmZhY2UsIHdpdGggYG91dHB1dExlbmAgLyBgYmxvY2tMZW5gIHByb3BzXG4gKi9cbnR5cGUgVW5pY29kZU9yQnl0ZXMgPSBzdHJpbmcgfCBVaW50OEFycmF5O1xuZXhwb3J0IHR5cGUgT3B0cyA9IHtcbiAgRFNUOiBVbmljb2RlT3JCeXRlcztcbiAgcDogYmlnaW50O1xuICBtOiBudW1iZXI7XG4gIGs6IG51bWJlcjtcbiAgZXhwYW5kOiAneG1kJyB8ICd4b2YnO1xuICBoYXNoOiBDSGFzaDtcbn07XG5cbmZ1bmN0aW9uIHZhbGlkYXRlRFNUKGRzdDogVW5pY29kZU9yQnl0ZXMpOiBVaW50OEFycmF5IHtcbiAgaWYgKGRzdCBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpIHJldHVybiBkc3Q7XG4gIGlmICh0eXBlb2YgZHN0ID09PSAnc3RyaW5nJykgcmV0dXJuIHV0ZjhUb0J5dGVzKGRzdCk7XG4gIHRocm93IG5ldyBFcnJvcignRFNUIG11c3QgYmUgVWludDhBcnJheSBvciBzdHJpbmcnKTtcbn1cblxuLy8gT2N0ZXQgU3RyZWFtIHRvIEludGVnZXIuIFwic3BlY1wiIGltcGxlbWVudGF0aW9uIG9mIG9zMmlwIGlzIDIuNXggc2xvd2VyIHZzIGJ5dGVzVG9OdW1iZXJCRS5cbmNvbnN0IG9zMmlwID0gYnl0ZXNUb051bWJlckJFO1xuXG4vLyBJbnRlZ2VyIHRvIE9jdGV0IFN0cmVhbSAobnVtYmVyVG9CeXRlc0JFKVxuZnVuY3Rpb24gaTJvc3AodmFsdWU6IG51bWJlciwgbGVuZ3RoOiBudW1iZXIpOiBVaW50OEFycmF5IHtcbiAgaWYgKHZhbHVlIDwgMCB8fCB2YWx1ZSA+PSAxIDw8ICg4ICogbGVuZ3RoKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgYmFkIEkyT1NQIGNhbGw6IHZhbHVlPSR7dmFsdWV9IGxlbmd0aD0ke2xlbmd0aH1gKTtcbiAgfVxuICBjb25zdCByZXMgPSBBcnJheS5mcm9tKHsgbGVuZ3RoIH0pLmZpbGwoMCkgYXMgbnVtYmVyW107XG4gIGZvciAobGV0IGkgPSBsZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xuICAgIHJlc1tpXSA9IHZhbHVlICYgMHhmZjtcbiAgICB2YWx1ZSA+Pj49IDg7XG4gIH1cbiAgcmV0dXJuIG5ldyBVaW50OEFycmF5KHJlcyk7XG59XG5cbmZ1bmN0aW9uIHN0cnhvcihhOiBVaW50OEFycmF5LCBiOiBVaW50OEFycmF5KTogVWludDhBcnJheSB7XG4gIGNvbnN0IGFyciA9IG5ldyBVaW50OEFycmF5KGEubGVuZ3RoKTtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBhLmxlbmd0aDsgaSsrKSB7XG4gICAgYXJyW2ldID0gYVtpXSBeIGJbaV07XG4gIH1cbiAgcmV0dXJuIGFycjtcbn1cblxuZnVuY3Rpb24gaXNCeXRlcyhpdGVtOiB1bmtub3duKTogdm9pZCB7XG4gIGlmICghKGl0ZW0gaW5zdGFuY2VvZiBVaW50OEFycmF5KSkgdGhyb3cgbmV3IEVycm9yKCdVaW50OEFycmF5IGV4cGVjdGVkJyk7XG59XG5mdW5jdGlvbiBpc051bShpdGVtOiB1bmtub3duKTogdm9pZCB7XG4gIGlmICghTnVtYmVyLmlzU2FmZUludGVnZXIoaXRlbSkpIHRocm93IG5ldyBFcnJvcignbnVtYmVyIGV4cGVjdGVkJyk7XG59XG5cbi8vIFByb2R1Y2VzIGEgdW5pZm9ybWx5IHJhbmRvbSBieXRlIHN0cmluZyB1c2luZyBhIGNyeXB0b2dyYXBoaWMgaGFzaCBmdW5jdGlvbiBIIHRoYXQgb3V0cHV0cyBiIGJpdHNcbi8vIGh0dHBzOi8vd3d3LnJmYy1lZGl0b3Iub3JnL3JmYy9yZmM5MzgwI3NlY3Rpb24tNS4zLjFcbmV4cG9ydCBmdW5jdGlvbiBleHBhbmRfbWVzc2FnZV94bWQoXG4gIG1zZzogVWludDhBcnJheSxcbiAgRFNUOiBVaW50OEFycmF5LFxuICBsZW5JbkJ5dGVzOiBudW1iZXIsXG4gIEg6IENIYXNoXG4pOiBVaW50OEFycmF5IHtcbiAgaXNCeXRlcyhtc2cpO1xuICBpc0J5dGVzKERTVCk7XG4gIGlzTnVtKGxlbkluQnl0ZXMpO1xuICAvLyBodHRwczovL3d3dy5yZmMtZWRpdG9yLm9yZy9yZmMvcmZjOTM4MCNzZWN0aW9uLTUuMy4zXG4gIGlmIChEU1QubGVuZ3RoID4gMjU1KSBEU1QgPSBIKGNvbmNhdEJ5dGVzKHV0ZjhUb0J5dGVzKCdIMkMtT1ZFUlNJWkUtRFNULScpLCBEU1QpKTtcbiAgY29uc3QgeyBvdXRwdXRMZW46IGJfaW5fYnl0ZXMsIGJsb2NrTGVuOiByX2luX2J5dGVzIH0gPSBIO1xuICBjb25zdCBlbGwgPSBNYXRoLmNlaWwobGVuSW5CeXRlcyAvIGJfaW5fYnl0ZXMpO1xuICBpZiAoZWxsID4gMjU1KSB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgeG1kIGxlbmd0aCcpO1xuICBjb25zdCBEU1RfcHJpbWUgPSBjb25jYXRCeXRlcyhEU1QsIGkyb3NwKERTVC5sZW5ndGgsIDEpKTtcbiAgY29uc3QgWl9wYWQgPSBpMm9zcCgwLCByX2luX2J5dGVzKTtcbiAgY29uc3QgbF9pX2Jfc3RyID0gaTJvc3AobGVuSW5CeXRlcywgMik7IC8vIGxlbl9pbl9ieXRlc19zdHJcbiAgY29uc3QgYiA9IG5ldyBBcnJheTxVaW50OEFycmF5PihlbGwpO1xuICBjb25zdCBiXzAgPSBIKGNvbmNhdEJ5dGVzKFpfcGFkLCBtc2csIGxfaV9iX3N0ciwgaTJvc3AoMCwgMSksIERTVF9wcmltZSkpO1xuICBiWzBdID0gSChjb25jYXRCeXRlcyhiXzAsIGkyb3NwKDEsIDEpLCBEU1RfcHJpbWUpKTtcbiAgZm9yIChsZXQgaSA9IDE7IGkgPD0gZWxsOyBpKyspIHtcbiAgICBjb25zdCBhcmdzID0gW3N0cnhvcihiXzAsIGJbaSAtIDFdKSwgaTJvc3AoaSArIDEsIDEpLCBEU1RfcHJpbWVdO1xuICAgIGJbaV0gPSBIKGNvbmNhdEJ5dGVzKC4uLmFyZ3MpKTtcbiAgfVxuICBjb25zdCBwc2V1ZG9fcmFuZG9tX2J5dGVzID0gY29uY2F0Qnl0ZXMoLi4uYik7XG4gIHJldHVybiBwc2V1ZG9fcmFuZG9tX2J5dGVzLnNsaWNlKDAsIGxlbkluQnl0ZXMpO1xufVxuXG4vLyBQcm9kdWNlcyBhIHVuaWZvcm1seSByYW5kb20gYnl0ZSBzdHJpbmcgdXNpbmcgYW4gZXh0ZW5kYWJsZS1vdXRwdXQgZnVuY3Rpb24gKFhPRikgSC5cbi8vIDEuIFRoZSBjb2xsaXNpb24gcmVzaXN0YW5jZSBvZiBIIE1VU1QgYmUgYXQgbGVhc3QgayBiaXRzLlxuLy8gMi4gSCBNVVNUIGJlIGFuIFhPRiB0aGF0IGhhcyBiZWVuIHByb3ZlZCBpbmRpZmZlcmVudGlhYmxlIGZyb21cbi8vICAgIGEgcmFuZG9tIG9yYWNsZSB1bmRlciBhIHJlYXNvbmFibGUgY3J5cHRvZ3JhcGhpYyBhc3N1bXB0aW9uLlxuLy8gaHR0cHM6Ly93d3cucmZjLWVkaXRvci5vcmcvcmZjL3JmYzkzODAjc2VjdGlvbi01LjMuMlxuZXhwb3J0IGZ1bmN0aW9uIGV4cGFuZF9tZXNzYWdlX3hvZihcbiAgbXNnOiBVaW50OEFycmF5LFxuICBEU1Q6IFVpbnQ4QXJyYXksXG4gIGxlbkluQnl0ZXM6IG51bWJlcixcbiAgazogbnVtYmVyLFxuICBIOiBDSGFzaFxuKTogVWludDhBcnJheSB7XG4gIGlzQnl0ZXMobXNnKTtcbiAgaXNCeXRlcyhEU1QpO1xuICBpc051bShsZW5JbkJ5dGVzKTtcbiAgLy8gaHR0cHM6Ly93d3cucmZjLWVkaXRvci5vcmcvcmZjL3JmYzkzODAjc2VjdGlvbi01LjMuM1xuICAvLyBEU1QgPSBIKCdIMkMtT1ZFUlNJWkUtRFNULScgfHwgYV92ZXJ5X2xvbmdfRFNULCBNYXRoLmNlaWwoKGxlbkluQnl0ZXMgKiBrKSAvIDgpKTtcbiAgaWYgKERTVC5sZW5ndGggPiAyNTUpIHtcbiAgICBjb25zdCBka0xlbiA9IE1hdGguY2VpbCgoMiAqIGspIC8gOCk7XG4gICAgRFNUID0gSC5jcmVhdGUoeyBka0xlbiB9KS51cGRhdGUodXRmOFRvQnl0ZXMoJ0gyQy1PVkVSU0laRS1EU1QtJykpLnVwZGF0ZShEU1QpLmRpZ2VzdCgpO1xuICB9XG4gIGlmIChsZW5JbkJ5dGVzID4gNjU1MzUgfHwgRFNULmxlbmd0aCA+IDI1NSlcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ2V4cGFuZF9tZXNzYWdlX3hvZjogaW52YWxpZCBsZW5JbkJ5dGVzJyk7XG4gIHJldHVybiAoXG4gICAgSC5jcmVhdGUoeyBka0xlbjogbGVuSW5CeXRlcyB9KVxuICAgICAgLnVwZGF0ZShtc2cpXG4gICAgICAudXBkYXRlKGkyb3NwKGxlbkluQnl0ZXMsIDIpKVxuICAgICAgLy8gMi4gRFNUX3ByaW1lID0gRFNUIHx8IEkyT1NQKGxlbihEU1QpLCAxKVxuICAgICAgLnVwZGF0ZShEU1QpXG4gICAgICAudXBkYXRlKGkyb3NwKERTVC5sZW5ndGgsIDEpKVxuICAgICAgLmRpZ2VzdCgpXG4gICk7XG59XG5cbi8qKlxuICogSGFzaGVzIGFyYml0cmFyeS1sZW5ndGggYnl0ZSBzdHJpbmdzIHRvIGEgbGlzdCBvZiBvbmUgb3IgbW9yZSBlbGVtZW50cyBvZiBhIGZpbml0ZSBmaWVsZCBGXG4gKiBodHRwczovL3d3dy5yZmMtZWRpdG9yLm9yZy9yZmMvcmZjOTM4MCNzZWN0aW9uLTUuMlxuICogQHBhcmFtIG1zZyBhIGJ5dGUgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG1lc3NhZ2UgdG8gaGFzaFxuICogQHBhcmFtIGNvdW50IHRoZSBudW1iZXIgb2YgZWxlbWVudHMgb2YgRiB0byBvdXRwdXRcbiAqIEBwYXJhbSBvcHRpb25zIGB7RFNUOiBzdHJpbmcsIHA6IGJpZ2ludCwgbTogbnVtYmVyLCBrOiBudW1iZXIsIGV4cGFuZDogJ3htZCcgfCAneG9mJywgaGFzaDogSH1gLCBzZWUgYWJvdmVcbiAqIEByZXR1cm5zIFt1XzAsIC4uLiwgdV8oY291bnQgLSAxKV0sIGEgbGlzdCBvZiBmaWVsZCBlbGVtZW50cy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGhhc2hfdG9fZmllbGQobXNnOiBVaW50OEFycmF5LCBjb3VudDogbnVtYmVyLCBvcHRpb25zOiBPcHRzKTogYmlnaW50W11bXSB7XG4gIHZhbGlkYXRlT2JqZWN0KG9wdGlvbnMsIHtcbiAgICBEU1Q6ICdzdHJpbmdPclVpbnQ4QXJyYXknLFxuICAgIHA6ICdiaWdpbnQnLFxuICAgIG06ICdpc1NhZmVJbnRlZ2VyJyxcbiAgICBrOiAnaXNTYWZlSW50ZWdlcicsXG4gICAgaGFzaDogJ2hhc2gnLFxuICB9KTtcbiAgY29uc3QgeyBwLCBrLCBtLCBoYXNoLCBleHBhbmQsIERTVDogX0RTVCB9ID0gb3B0aW9ucztcbiAgaXNCeXRlcyhtc2cpO1xuICBpc051bShjb3VudCk7XG4gIGNvbnN0IERTVCA9IHZhbGlkYXRlRFNUKF9EU1QpO1xuICBjb25zdCBsb2cycCA9IHAudG9TdHJpbmcoMikubGVuZ3RoO1xuICBjb25zdCBMID0gTWF0aC5jZWlsKChsb2cycCArIGspIC8gOCk7IC8vIHNlY3Rpb24gNS4xIG9mIGlldGYgZHJhZnQgbGluayBhYm92ZVxuICBjb25zdCBsZW5faW5fYnl0ZXMgPSBjb3VudCAqIG0gKiBMO1xuICBsZXQgcHJiOyAvLyBwc2V1ZG9fcmFuZG9tX2J5dGVzXG4gIGlmIChleHBhbmQgPT09ICd4bWQnKSB7XG4gICAgcHJiID0gZXhwYW5kX21lc3NhZ2VfeG1kKG1zZywgRFNULCBsZW5faW5fYnl0ZXMsIGhhc2gpO1xuICB9IGVsc2UgaWYgKGV4cGFuZCA9PT0gJ3hvZicpIHtcbiAgICBwcmIgPSBleHBhbmRfbWVzc2FnZV94b2YobXNnLCBEU1QsIGxlbl9pbl9ieXRlcywgaywgaGFzaCk7XG4gIH0gZWxzZSBpZiAoZXhwYW5kID09PSAnX2ludGVybmFsX3Bhc3MnKSB7XG4gICAgLy8gZm9yIGludGVybmFsIHRlc3RzIG9ubHlcbiAgICBwcmIgPSBtc2c7XG4gIH0gZWxzZSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdleHBhbmQgbXVzdCBiZSBcInhtZFwiIG9yIFwieG9mXCInKTtcbiAgfVxuICBjb25zdCB1ID0gbmV3IEFycmF5KGNvdW50KTtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb3VudDsgaSsrKSB7XG4gICAgY29uc3QgZSA9IG5ldyBBcnJheShtKTtcbiAgICBmb3IgKGxldCBqID0gMDsgaiA8IG07IGorKykge1xuICAgICAgY29uc3QgZWxtX29mZnNldCA9IEwgKiAoaiArIGkgKiBtKTtcbiAgICAgIGNvbnN0IHR2ID0gcHJiLnN1YmFycmF5KGVsbV9vZmZzZXQsIGVsbV9vZmZzZXQgKyBMKTtcbiAgICAgIGVbal0gPSBtb2Qob3MyaXAodHYpLCBwKTtcbiAgICB9XG4gICAgdVtpXSA9IGU7XG4gIH1cbiAgcmV0dXJuIHU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc29nZW55TWFwPFQsIEYgZXh0ZW5kcyBJRmllbGQ8VD4+KGZpZWxkOiBGLCBtYXA6IFtUW10sIFRbXSwgVFtdLCBUW11dKSB7XG4gIC8vIE1ha2Ugc2FtZSBvcmRlciBhcyBpbiBzcGVjXG4gIGNvbnN0IENPRUZGID0gbWFwLm1hcCgoaSkgPT4gQXJyYXkuZnJvbShpKS5yZXZlcnNlKCkpO1xuICByZXR1cm4gKHg6IFQsIHk6IFQpID0+IHtcbiAgICBjb25zdCBbeE51bSwgeERlbiwgeU51bSwgeURlbl0gPSBDT0VGRi5tYXAoKHZhbCkgPT5cbiAgICAgIHZhbC5yZWR1Y2UoKGFjYywgaSkgPT4gZmllbGQuYWRkKGZpZWxkLm11bChhY2MsIHgpLCBpKSlcbiAgICApO1xuICAgIHggPSBmaWVsZC5kaXYoeE51bSwgeERlbik7IC8vIHhOdW0gLyB4RGVuXG4gICAgeSA9IGZpZWxkLm11bCh5LCBmaWVsZC5kaXYoeU51bSwgeURlbikpOyAvLyB5ICogKHlOdW0gLyB5RGV2KVxuICAgIHJldHVybiB7IHgsIHkgfTtcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBIMkNQb2ludDxUPiBleHRlbmRzIEdyb3VwPEgyQ1BvaW50PFQ+PiB7XG4gIGFkZChyaHM6IEgyQ1BvaW50PFQ+KTogSDJDUG9pbnQ8VD47XG4gIHRvQWZmaW5lKGl6PzogYmlnaW50KTogQWZmaW5lUG9pbnQ8VD47XG4gIGNsZWFyQ29mYWN0b3IoKTogSDJDUG9pbnQ8VD47XG4gIGFzc2VydFZhbGlkaXR5KCk6IHZvaWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSDJDUG9pbnRDb25zdHJ1Y3RvcjxUPiBleHRlbmRzIEdyb3VwQ29uc3RydWN0b3I8SDJDUG9pbnQ8VD4+IHtcbiAgZnJvbUFmZmluZShhcDogQWZmaW5lUG9pbnQ8VD4pOiBIMkNQb2ludDxUPjtcbn1cblxuZXhwb3J0IHR5cGUgTWFwVG9DdXJ2ZTxUPiA9IChzY2FsYXI6IGJpZ2ludFtdKSA9PiBBZmZpbmVQb2ludDxUPjtcblxuLy8gU2VwYXJhdGVkIGZyb20gaW5pdGlhbGl6YXRpb24gb3B0cywgc28gdXNlcnMgd29uJ3QgYWNjaWRlbnRhbGx5IGNoYW5nZSBwZXItY3VydmUgcGFyYW1ldGVyc1xuLy8gKGNoYW5naW5nIERTVCBpcyBvayEpXG5leHBvcnQgdHlwZSBodGZCYXNpY09wdHMgPSB7IERTVDogVW5pY29kZU9yQnl0ZXMgfTtcblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUhhc2hlcjxUPihcbiAgUG9pbnQ6IEgyQ1BvaW50Q29uc3RydWN0b3I8VD4sXG4gIG1hcFRvQ3VydmU6IE1hcFRvQ3VydmU8VD4sXG4gIGRlZjogT3B0cyAmIHsgZW5jb2RlRFNUPzogVW5pY29kZU9yQnl0ZXMgfVxuKSB7XG4gIGlmICh0eXBlb2YgbWFwVG9DdXJ2ZSAhPT0gJ2Z1bmN0aW9uJykgdGhyb3cgbmV3IEVycm9yKCdtYXBUb0N1cnZlKCkgbXVzdCBiZSBkZWZpbmVkJyk7XG4gIHJldHVybiB7XG4gICAgLy8gRW5jb2RlcyBieXRlIHN0cmluZyB0byBlbGxpcHRpYyBjdXJ2ZS5cbiAgICAvLyBoYXNoX3RvX2N1cnZlIGZyb20gaHR0cHM6Ly93d3cucmZjLWVkaXRvci5vcmcvcmZjL3JmYzkzODAjc2VjdGlvbi0zXG4gICAgaGFzaFRvQ3VydmUobXNnOiBVaW50OEFycmF5LCBvcHRpb25zPzogaHRmQmFzaWNPcHRzKSB7XG4gICAgICBjb25zdCB1ID0gaGFzaF90b19maWVsZChtc2csIDIsIHsgLi4uZGVmLCBEU1Q6IGRlZi5EU1QsIC4uLm9wdGlvbnMgfSBhcyBPcHRzKTtcbiAgICAgIGNvbnN0IHUwID0gUG9pbnQuZnJvbUFmZmluZShtYXBUb0N1cnZlKHVbMF0pKTtcbiAgICAgIGNvbnN0IHUxID0gUG9pbnQuZnJvbUFmZmluZShtYXBUb0N1cnZlKHVbMV0pKTtcbiAgICAgIGNvbnN0IFAgPSB1MC5hZGQodTEpLmNsZWFyQ29mYWN0b3IoKTtcbiAgICAgIFAuYXNzZXJ0VmFsaWRpdHkoKTtcbiAgICAgIHJldHVybiBQO1xuICAgIH0sXG5cbiAgICAvLyBFbmNvZGVzIGJ5dGUgc3RyaW5nIHRvIGVsbGlwdGljIGN1cnZlLlxuICAgIC8vIGVuY29kZV90b19jdXJ2ZSBmcm9tIGh0dHBzOi8vd3d3LnJmYy1lZGl0b3Iub3JnL3JmYy9yZmM5MzgwI3NlY3Rpb24tM1xuICAgIGVuY29kZVRvQ3VydmUobXNnOiBVaW50OEFycmF5LCBvcHRpb25zPzogaHRmQmFzaWNPcHRzKSB7XG4gICAgICBjb25zdCB1ID0gaGFzaF90b19maWVsZChtc2csIDEsIHsgLi4uZGVmLCBEU1Q6IGRlZi5lbmNvZGVEU1QsIC4uLm9wdGlvbnMgfSBhcyBPcHRzKTtcbiAgICAgIGNvbnN0IFAgPSBQb2ludC5mcm9tQWZmaW5lKG1hcFRvQ3VydmUodVswXSkpLmNsZWFyQ29mYWN0b3IoKTtcbiAgICAgIFAuYXNzZXJ0VmFsaWRpdHkoKTtcbiAgICAgIHJldHVybiBQO1xuICAgIH0sXG4gIH07XG59XG4iLCAiLyohIG5vYmxlLWN1cnZlcyAtIE1JVCBMaWNlbnNlIChjKSAyMDIyIFBhdWwgTWlsbGVyIChwYXVsbWlsbHIuY29tKSAqL1xuaW1wb3J0IHsgc2hhNTEyIH0gZnJvbSAnQG5vYmxlL2hhc2hlcy9zaGE1MTInO1xuaW1wb3J0IHsgY29uY2F0Qnl0ZXMsIHJhbmRvbUJ5dGVzLCB1dGY4VG9CeXRlcyB9IGZyb20gJ0Bub2JsZS9oYXNoZXMvdXRpbHMnO1xuaW1wb3J0IHsgRXh0UG9pbnRUeXBlLCB0d2lzdGVkRWR3YXJkcyB9IGZyb20gJy4vYWJzdHJhY3QvZWR3YXJkcy5qcyc7XG5pbXBvcnQgeyBtb250Z29tZXJ5IH0gZnJvbSAnLi9hYnN0cmFjdC9tb250Z29tZXJ5LmpzJztcbmltcG9ydCB7IEZpZWxkLCBGcFNxcnRFdmVuLCBpc05lZ2F0aXZlTEUsIG1vZCwgcG93MiB9IGZyb20gJy4vYWJzdHJhY3QvbW9kdWxhci5qcyc7XG5pbXBvcnQge1xuICBieXRlc1RvSGV4LFxuICBieXRlc1RvTnVtYmVyTEUsXG4gIGVuc3VyZUJ5dGVzLFxuICBlcXVhbEJ5dGVzLFxuICBIZXgsXG4gIG51bWJlclRvQnl0ZXNMRSxcbn0gZnJvbSAnLi9hYnN0cmFjdC91dGlscy5qcyc7XG5pbXBvcnQgeyBjcmVhdGVIYXNoZXIsIGh0ZkJhc2ljT3B0cywgZXhwYW5kX21lc3NhZ2VfeG1kIH0gZnJvbSAnLi9hYnN0cmFjdC9oYXNoLXRvLWN1cnZlLmpzJztcbmltcG9ydCB7IEFmZmluZVBvaW50IH0gZnJvbSAnLi9hYnN0cmFjdC9jdXJ2ZS5qcyc7XG5cbi8qKlxuICogZWQyNTUxOSBUd2lzdGVkIEVkd2FyZHMgY3VydmUgd2l0aCBmb2xsb3dpbmcgYWRkb25zOlxuICogLSBYMjU1MTkgRUNESFxuICogLSBSaXN0cmV0dG8gY29mYWN0b3IgZWxpbWluYXRpb25cbiAqIC0gRWxsaWdhdG9yIGhhc2gtdG8tZ3JvdXAgLyBwb2ludCBpbmRpc3Rpbmd1aXNoYWJpbGl0eVxuICovXG5cbmNvbnN0IEVEMjU1MTlfUCA9IEJpZ0ludChcbiAgJzU3ODk2MDQ0NjE4NjU4MDk3NzExNzg1NDkyNTA0MzQzOTUzOTI2NjM0OTkyMzMyODIwMjgyMDE5NzI4NzkyMDAzOTU2NTY0ODE5OTQ5J1xuKTtcbi8vIFx1MjIxQSgtMSkgYWthIFx1MjIxQShhKSBha2EgMl4oKHAtMSkvNClcbmNvbnN0IEVEMjU1MTlfU1FSVF9NMSA9IEJpZ0ludChcbiAgJzE5NjgxMTYxMzc2NzA3NTA1OTU2ODA3MDc5MzA0OTg4NTQyMDE1NDQ2MDY2NTE1OTIzODkwMTYyNzQ0MDIxMDczMTIzODI5Nzg0NzUyJ1xuKTtcblxuLy8gcHJldHRpZXItaWdub3JlXG5jb25zdCBfMG4gPSBCaWdJbnQoMCksIF8xbiA9IEJpZ0ludCgxKSwgXzJuID0gQmlnSW50KDIpLCBfNW4gPSBCaWdJbnQoNSk7XG4vLyBwcmV0dGllci1pZ25vcmVcbmNvbnN0IF8xMG4gPSBCaWdJbnQoMTApLCBfMjBuID0gQmlnSW50KDIwKSwgXzQwbiA9IEJpZ0ludCg0MCksIF84MG4gPSBCaWdJbnQoODApO1xuXG5mdW5jdGlvbiBlZDI1NTE5X3Bvd18yXzI1Ml8zKHg6IGJpZ2ludCkge1xuICBjb25zdCBQID0gRUQyNTUxOV9QO1xuICBjb25zdCB4MiA9ICh4ICogeCkgJSBQO1xuICBjb25zdCBiMiA9ICh4MiAqIHgpICUgUDsgLy8geF4zLCAxMVxuICBjb25zdCBiNCA9IChwb3cyKGIyLCBfMm4sIFApICogYjIpICUgUDsgLy8geF4xNSwgMTExMVxuICBjb25zdCBiNSA9IChwb3cyKGI0LCBfMW4sIFApICogeCkgJSBQOyAvLyB4XjMxXG4gIGNvbnN0IGIxMCA9IChwb3cyKGI1LCBfNW4sIFApICogYjUpICUgUDtcbiAgY29uc3QgYjIwID0gKHBvdzIoYjEwLCBfMTBuLCBQKSAqIGIxMCkgJSBQO1xuICBjb25zdCBiNDAgPSAocG93MihiMjAsIF8yMG4sIFApICogYjIwKSAlIFA7XG4gIGNvbnN0IGI4MCA9IChwb3cyKGI0MCwgXzQwbiwgUCkgKiBiNDApICUgUDtcbiAgY29uc3QgYjE2MCA9IChwb3cyKGI4MCwgXzgwbiwgUCkgKiBiODApICUgUDtcbiAgY29uc3QgYjI0MCA9IChwb3cyKGIxNjAsIF84MG4sIFApICogYjgwKSAlIFA7XG4gIGNvbnN0IGIyNTAgPSAocG93MihiMjQwLCBfMTBuLCBQKSAqIGIxMCkgJSBQO1xuICBjb25zdCBwb3dfcF81XzggPSAocG93MihiMjUwLCBfMm4sIFApICogeCkgJSBQO1xuICAvLyBeIFRvIHBvdyB0byAocCszKS84LCBtdWx0aXBseSBpdCBieSB4LlxuICByZXR1cm4geyBwb3dfcF81XzgsIGIyIH07XG59XG5cbmZ1bmN0aW9uIGFkanVzdFNjYWxhckJ5dGVzKGJ5dGVzOiBVaW50OEFycmF5KTogVWludDhBcnJheSB7XG4gIC8vIFNlY3Rpb24gNTogRm9yIFgyNTUxOSwgaW4gb3JkZXIgdG8gZGVjb2RlIDMyIHJhbmRvbSBieXRlcyBhcyBhbiBpbnRlZ2VyIHNjYWxhcixcbiAgLy8gc2V0IHRoZSB0aHJlZSBsZWFzdCBzaWduaWZpY2FudCBiaXRzIG9mIHRoZSBmaXJzdCBieXRlXG4gIGJ5dGVzWzBdICY9IDI0ODsgLy8gMGIxMTExXzEwMDBcbiAgLy8gYW5kIHRoZSBtb3N0IHNpZ25pZmljYW50IGJpdCBvZiB0aGUgbGFzdCB0byB6ZXJvLFxuICBieXRlc1szMV0gJj0gMTI3OyAvLyAwYjAxMTFfMTExMVxuICAvLyBzZXQgdGhlIHNlY29uZCBtb3N0IHNpZ25pZmljYW50IGJpdCBvZiB0aGUgbGFzdCBieXRlIHRvIDFcbiAgYnl0ZXNbMzFdIHw9IDY0OyAvLyAwYjAxMDBfMDAwMFxuICByZXR1cm4gYnl0ZXM7XG59XG5cbi8vIHNxcnQodS92KVxuZnVuY3Rpb24gdXZSYXRpbyh1OiBiaWdpbnQsIHY6IGJpZ2ludCk6IHsgaXNWYWxpZDogYm9vbGVhbjsgdmFsdWU6IGJpZ2ludCB9IHtcbiAgY29uc3QgUCA9IEVEMjU1MTlfUDtcbiAgY29uc3QgdjMgPSBtb2QodiAqIHYgKiB2LCBQKTsgLy8gdlx1MDBCM1xuICBjb25zdCB2NyA9IG1vZCh2MyAqIHYzICogdiwgUCk7IC8vIHZcdTIwNzdcbiAgLy8gKHArMykvOCBhbmQgKHAtNSkvOFxuICBjb25zdCBwb3cgPSBlZDI1NTE5X3Bvd18yXzI1Ml8zKHUgKiB2NykucG93X3BfNV84O1xuICBsZXQgeCA9IG1vZCh1ICogdjMgKiBwb3csIFApOyAvLyAodXZcdTAwQjMpKHV2XHUyMDc3KV4ocC01KS84XG4gIGNvbnN0IHZ4MiA9IG1vZCh2ICogeCAqIHgsIFApOyAvLyB2eFx1MDBCMlxuICBjb25zdCByb290MSA9IHg7IC8vIEZpcnN0IHJvb3QgY2FuZGlkYXRlXG4gIGNvbnN0IHJvb3QyID0gbW9kKHggKiBFRDI1NTE5X1NRUlRfTTEsIFApOyAvLyBTZWNvbmQgcm9vdCBjYW5kaWRhdGVcbiAgY29uc3QgdXNlUm9vdDEgPSB2eDIgPT09IHU7IC8vIElmIHZ4XHUwMEIyID0gdSAobW9kIHApLCB4IGlzIGEgc3F1YXJlIHJvb3RcbiAgY29uc3QgdXNlUm9vdDIgPSB2eDIgPT09IG1vZCgtdSwgUCk7IC8vIElmIHZ4XHUwMEIyID0gLXUsIHNldCB4IDwtLSB4ICogMl4oKHAtMSkvNClcbiAgY29uc3Qgbm9Sb290ID0gdngyID09PSBtb2QoLXUgKiBFRDI1NTE5X1NRUlRfTTEsIFApOyAvLyBUaGVyZSBpcyBubyB2YWxpZCByb290LCB2eFx1MDBCMiA9IC11XHUyMjFBKC0xKVxuICBpZiAodXNlUm9vdDEpIHggPSByb290MTtcbiAgaWYgKHVzZVJvb3QyIHx8IG5vUm9vdCkgeCA9IHJvb3QyOyAvLyBXZSByZXR1cm4gcm9vdDIgYW55d2F5LCBmb3IgY29uc3QtdGltZVxuICBpZiAoaXNOZWdhdGl2ZUxFKHgsIFApKSB4ID0gbW9kKC14LCBQKTtcbiAgcmV0dXJuIHsgaXNWYWxpZDogdXNlUm9vdDEgfHwgdXNlUm9vdDIsIHZhbHVlOiB4IH07XG59XG5cbi8vIEp1c3QgaW4gY2FzZVxuZXhwb3J0IGNvbnN0IEVEMjU1MTlfVE9SU0lPTl9TVUJHUk9VUCA9IFtcbiAgJzAxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAnLFxuICAnYzcxNzZhNzAzZDRkZDg0ZmJhM2MwYjc2MGQxMDY3MGYyYTIwNTNmYTJjMzljY2M2NGVjN2ZkNzc5MmFjMDM3YScsXG4gICcwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDgwJyxcbiAgJzI2ZTg5NThmYzJiMjI3YjA0NWMzZjQ4OWYyZWY5OGYwZDVkZmFjMDVkM2M2MzMzOWIxMzgwMjg4NmQ1M2ZjMDUnLFxuICAnZWNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY3ZicsXG4gICcyNmU4OTU4ZmMyYjIyN2IwNDVjM2Y0ODlmMmVmOThmMGQ1ZGZhYzA1ZDNjNjMzMzliMTM4MDI4ODZkNTNmYzg1JyxcbiAgJzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAnLFxuICAnYzcxNzZhNzAzZDRkZDg0ZmJhM2MwYjc2MGQxMDY3MGYyYTIwNTNmYTJjMzljY2M2NGVjN2ZkNzc5MmFjMDNmYScsXG5dO1xuXG5jb25zdCBGcCA9IEZpZWxkKEVEMjU1MTlfUCwgdW5kZWZpbmVkLCB0cnVlKTtcblxuY29uc3QgZWQyNTUxOURlZmF1bHRzID0ge1xuICAvLyBQYXJhbTogYVxuICBhOiBCaWdJbnQoLTEpLCAvLyBGcC5jcmVhdGUoLTEpIGlzIHByb3Blcjsgb3VyIHdheSBzdGlsbCB3b3JrcyBhbmQgaXMgZmFzdGVyXG4gIC8vIGQgaXMgZXF1YWwgdG8gLTEyMTY2NS8xMjE2NjYgb3ZlciBmaW5pdGUgZmllbGQuXG4gIC8vIE5lZ2F0aXZlIG51bWJlciBpcyBQIC0gbnVtYmVyLCBhbmQgZGl2aXNpb24gaXMgaW52ZXJ0KG51bWJlciwgUClcbiAgZDogQmlnSW50KCczNzA5NTcwNTkzNDY2OTQzOTM0MzEzODA4MzUwODc1NDU2NTE4OTU0MjExMzg3OTg0MzIxOTAxNjM4ODc4NTUzMzA4NTk0MDI4MzU1NScpLFxuICAvLyBGaW5pdGUgZmllbGQgXHVEODM1XHVERDNEcCBvdmVyIHdoaWNoIHdlJ2xsIGRvIGNhbGN1bGF0aW9uczsgMm4qKjI1NW4gLSAxOW5cbiAgRnAsXG4gIC8vIFN1Ymdyb3VwIG9yZGVyOiBob3cgbWFueSBwb2ludHMgY3VydmUgaGFzXG4gIC8vIDJuKioyNTJuICsgMjc3NDIzMTc3NzczNzIzNTM1MzU4NTE5Mzc3OTA4ODM2NDg0OTNuO1xuICBuOiBCaWdJbnQoJzcyMzcwMDU1NzczMzIyNjIyMTM5NzMxODY1NjMwNDI5OTQyNDA4NTcxMTYzNTkzNzk5MDc2MDYwMDE5NTA5MzgyODU0NTQyNTA5ODknKSxcbiAgLy8gQ29mYWN0b3JcbiAgaDogQmlnSW50KDgpLFxuICAvLyBCYXNlIHBvaW50ICh4LCB5KSBha2EgZ2VuZXJhdG9yIHBvaW50XG4gIEd4OiBCaWdJbnQoJzE1MTEyMjIxMzQ5NTM1NDAwNzcyNTAxMTUxNDA5NTg4NTMxNTExNDU0MDEyNjkzMDQxODU3MjA2MDQ2MTEzMjgzOTQ5ODQ3NzYyMjAyJyksXG4gIEd5OiBCaWdJbnQoJzQ2MzE2ODM1Njk0OTI2NDc4MTY5NDI4Mzk0MDAzNDc1MTYzMTQxMzA3OTkzODY2MjU2MjI1NjE1NzgzMDMzNjAzMTY1MjUxODU1OTYwJyksXG4gIGhhc2g6IHNoYTUxMixcbiAgcmFuZG9tQnl0ZXMsXG4gIGFkanVzdFNjYWxhckJ5dGVzLFxuICAvLyBkb20yXG4gIC8vIFJhdGlvIG9mIHUgdG8gdi4gQWxsb3dzIHVzIHRvIGNvbWJpbmUgaW52ZXJzaW9uIGFuZCBzcXVhcmUgcm9vdC4gVXNlcyBhbGdvIGZyb20gUkZDODAzMiA1LjEuMy5cbiAgLy8gQ29uc3RhbnQtdGltZSwgdS9cdTIyMUF2XG4gIHV2UmF0aW8sXG59IGFzIGNvbnN0O1xuXG5leHBvcnQgY29uc3QgZWQyNTUxOSA9IC8qIEBfX1BVUkVfXyAqLyB0d2lzdGVkRWR3YXJkcyhlZDI1NTE5RGVmYXVsdHMpO1xuXG5mdW5jdGlvbiBlZDI1NTE5X2RvbWFpbihkYXRhOiBVaW50OEFycmF5LCBjdHg6IFVpbnQ4QXJyYXksIHBoZmxhZzogYm9vbGVhbikge1xuICBpZiAoY3R4Lmxlbmd0aCA+IDI1NSkgdGhyb3cgbmV3IEVycm9yKCdDb250ZXh0IGlzIHRvbyBiaWcnKTtcbiAgcmV0dXJuIGNvbmNhdEJ5dGVzKFxuICAgIHV0ZjhUb0J5dGVzKCdTaWdFZDI1NTE5IG5vIEVkMjU1MTkgY29sbGlzaW9ucycpLFxuICAgIG5ldyBVaW50OEFycmF5KFtwaGZsYWcgPyAxIDogMCwgY3R4Lmxlbmd0aF0pLFxuICAgIGN0eCxcbiAgICBkYXRhXG4gICk7XG59XG5cbmV4cG9ydCBjb25zdCBlZDI1NTE5Y3R4ID0gLyogQF9fUFVSRV9fICovIHR3aXN0ZWRFZHdhcmRzKHtcbiAgLi4uZWQyNTUxOURlZmF1bHRzLFxuICBkb21haW46IGVkMjU1MTlfZG9tYWluLFxufSk7XG5leHBvcnQgY29uc3QgZWQyNTUxOXBoID0gLyogQF9fUFVSRV9fICovIHR3aXN0ZWRFZHdhcmRzKHtcbiAgLi4uZWQyNTUxOURlZmF1bHRzLFxuICBkb21haW46IGVkMjU1MTlfZG9tYWluLFxuICBwcmVoYXNoOiBzaGE1MTIsXG59KTtcblxuZXhwb3J0IGNvbnN0IHgyNTUxOSA9IC8qIEBfX1BVUkVfXyAqLyAoKCkgPT5cbiAgbW9udGdvbWVyeSh7XG4gICAgUDogRUQyNTUxOV9QLFxuICAgIGE6IEJpZ0ludCg0ODY2NjIpLFxuICAgIG1vbnRnb21lcnlCaXRzOiAyNTUsIC8vIG4gaXMgMjUzIGJpdHNcbiAgICBuQnl0ZUxlbmd0aDogMzIsXG4gICAgR3U6IEJpZ0ludCg5KSxcbiAgICBwb3dQbWludXMyOiAoeDogYmlnaW50KTogYmlnaW50ID0+IHtcbiAgICAgIGNvbnN0IFAgPSBFRDI1NTE5X1A7XG4gICAgICAvLyB4XihwLTIpIGFrYSB4XigyXjI1NS0yMSlcbiAgICAgIGNvbnN0IHsgcG93X3BfNV84LCBiMiB9ID0gZWQyNTUxOV9wb3dfMl8yNTJfMyh4KTtcbiAgICAgIHJldHVybiBtb2QocG93Mihwb3dfcF81XzgsIEJpZ0ludCgzKSwgUCkgKiBiMiwgUCk7XG4gICAgfSxcbiAgICBhZGp1c3RTY2FsYXJCeXRlcyxcbiAgICByYW5kb21CeXRlcyxcbiAgfSkpKCk7XG5cbi8qKlxuICogQ29udmVydHMgZWQyNTUxOSBwdWJsaWMga2V5IHRvIHgyNTUxOSBwdWJsaWMga2V5LiBVc2VzIGZvcm11bGE6XG4gKiAqIGAodSwgdikgPSAoKDEreSkvKDEteSksIHNxcnQoLTQ4NjY2NCkqdS94KWBcbiAqICogYCh4LCB5KSA9IChzcXJ0KC00ODY2NjQpKnUvdiwgKHUtMSkvKHUrMSkpYFxuICogQGV4YW1wbGVcbiAqICAgY29uc3Qgc29tZW9uZXNQdWIgPSBlZDI1NTE5LmdldFB1YmxpY0tleShlZDI1NTE5LnV0aWxzLnJhbmRvbVByaXZhdGVLZXkoKSk7XG4gKiAgIGNvbnN0IGFQcml2ID0geDI1NTE5LnV0aWxzLnJhbmRvbVByaXZhdGVLZXkoKTtcbiAqICAgeDI1NTE5LmdldFNoYXJlZFNlY3JldChhUHJpdiwgZWR3YXJkc1RvTW9udGdvbWVyeVB1Yihzb21lb25lc1B1YikpXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBlZHdhcmRzVG9Nb250Z29tZXJ5UHViKGVkd2FyZHNQdWI6IEhleCk6IFVpbnQ4QXJyYXkge1xuICBjb25zdCB7IHkgfSA9IGVkMjU1MTkuRXh0ZW5kZWRQb2ludC5mcm9tSGV4KGVkd2FyZHNQdWIpO1xuICBjb25zdCBfMW4gPSBCaWdJbnQoMSk7XG4gIHJldHVybiBGcC50b0J5dGVzKEZwLmNyZWF0ZSgoXzFuICsgeSkgKiBGcC5pbnYoXzFuIC0geSkpKTtcbn1cbmV4cG9ydCBjb25zdCBlZHdhcmRzVG9Nb250Z29tZXJ5ID0gZWR3YXJkc1RvTW9udGdvbWVyeVB1YjsgLy8gZGVwcmVjYXRlZFxuXG4vKipcbiAqIENvbnZlcnRzIGVkMjU1MTkgc2VjcmV0IGtleSB0byB4MjU1MTkgc2VjcmV0IGtleS5cbiAqIEBleGFtcGxlXG4gKiAgIGNvbnN0IHNvbWVvbmVzUHViID0geDI1NTE5LmdldFB1YmxpY0tleSh4MjU1MTkudXRpbHMucmFuZG9tUHJpdmF0ZUtleSgpKTtcbiAqICAgY29uc3QgYVByaXYgPSBlZDI1NTE5LnV0aWxzLnJhbmRvbVByaXZhdGVLZXkoKTtcbiAqICAgeDI1NTE5LmdldFNoYXJlZFNlY3JldChlZHdhcmRzVG9Nb250Z29tZXJ5UHJpdihhUHJpdiksIHNvbWVvbmVzUHViKVxuICovXG5leHBvcnQgZnVuY3Rpb24gZWR3YXJkc1RvTW9udGdvbWVyeVByaXYoZWR3YXJkc1ByaXY6IFVpbnQ4QXJyYXkpOiBVaW50OEFycmF5IHtcbiAgY29uc3QgaGFzaGVkID0gZWQyNTUxOURlZmF1bHRzLmhhc2goZWR3YXJkc1ByaXYuc3ViYXJyYXkoMCwgMzIpKTtcbiAgcmV0dXJuIGVkMjU1MTlEZWZhdWx0cy5hZGp1c3RTY2FsYXJCeXRlcyhoYXNoZWQpLnN1YmFycmF5KDAsIDMyKTtcbn1cblxuLy8gSGFzaCBUbyBDdXJ2ZSBFbGxpZ2F0b3IyIE1hcCAoTk9URTogZGlmZmVyZW50IGZyb20gcmlzdHJldHRvMjU1IGVsbGlnYXRvcilcbi8vIE5PVEU6IHZlcnkgaW1wb3J0YW50IHBhcnQgaXMgdXNhZ2Ugb2YgRnBTcXJ0RXZlbiBmb3IgRUxMMl9DMV9FRFdBUkRTLCBzaW5jZVxuLy8gU2FnZU1hdGggcmV0dXJucyBkaWZmZXJlbnQgcm9vdCBmaXJzdCBhbmQgZXZlcnl0aGluZyBmYWxscyBhcGFydFxuXG5jb25zdCBFTEwyX0MxID0gKEZwLk9SREVSICsgQmlnSW50KDMpKSAvIEJpZ0ludCg4KTsgLy8gMS4gYzEgPSAocSArIDMpIC8gOCAgICAgICAjIEludGVnZXIgYXJpdGhtZXRpY1xuXG5jb25zdCBFTEwyX0MyID0gRnAucG93KF8ybiwgRUxMMl9DMSk7IC8vIDIuIGMyID0gMl5jMVxuY29uc3QgRUxMMl9DMyA9IEZwLnNxcnQoRnAubmVnKEZwLk9ORSkpOyAvLyAzLiBjMyA9IHNxcnQoLTEpXG5jb25zdCBFTEwyX0M0ID0gKEZwLk9SREVSIC0gQmlnSW50KDUpKSAvIEJpZ0ludCg4KTsgLy8gNC4gYzQgPSAocSAtIDUpIC8gOCAgICAgICAjIEludGVnZXIgYXJpdGhtZXRpY1xuY29uc3QgRUxMMl9KID0gQmlnSW50KDQ4NjY2Mik7XG5cbi8vIHByZXR0aWVyLWlnbm9yZVxuZnVuY3Rpb24gbWFwX3RvX2N1cnZlX2VsbGlnYXRvcjJfY3VydmUyNTUxOSh1OiBiaWdpbnQpIHtcbiAgbGV0IHR2MSA9IEZwLnNxcih1KTsgICAgICAgLy8gIDEuICB0djEgPSB1XjJcbiAgdHYxID0gRnAubXVsKHR2MSwgXzJuKTsgICAgICAgLy8gIDIuICB0djEgPSAyICogdHYxXG4gIGxldCB4ZCA9IEZwLmFkZCh0djEsIEZwLk9ORSk7IC8vICAzLiAgIHhkID0gdHYxICsgMSAgICAgICAgICMgTm9uemVybzogLTEgaXMgc3F1YXJlIChtb2QgcCksIHR2MSBpcyBub3RcbiAgbGV0IHgxbiA9IEZwLm5lZyhFTEwyX0opOyAgLy8gIDQuICB4MW4gPSAtSiAgICAgICAgICAgICAgIyB4MSA9IHgxbiAvIHhkID0gLUogLyAoMSArIDIgKiB1XjIpXG4gIGxldCB0djIgPSBGcC5zcXIoeGQpOyAgICAgIC8vICA1LiAgdHYyID0geGReMlxuICBsZXQgZ3hkID0gRnAubXVsKHR2MiwgeGQpOyAgICAvLyAgNi4gIGd4ZCA9IHR2MiAqIHhkICAgICAgICAjIGd4ZCA9IHhkXjNcbiAgbGV0IGd4MSA9IEZwLm11bCh0djEsIEVMTDJfSik7IC8vICA3LiAgZ3gxID0gSiAqIHR2MSAgICAgICAgICMgeDFuICsgSiAqIHhkXG4gIGd4MSA9IEZwLm11bChneDEsIHgxbik7ICAgICAgIC8vICA4LiAgZ3gxID0gZ3gxICogeDFuICAgICAgICMgeDFuXjIgKyBKICogeDFuICogeGRcbiAgZ3gxID0gRnAuYWRkKGd4MSwgdHYyKTsgICAgICAgLy8gIDkuICBneDEgPSBneDEgKyB0djIgICAgICAgIyB4MW5eMiArIEogKiB4MW4gKiB4ZCArIHhkXjJcbiAgZ3gxID0gRnAubXVsKGd4MSwgeDFuKTsgICAgICAgLy8gIDEwLiBneDEgPSBneDEgKiB4MW4gICAgICAgIyB4MW5eMyArIEogKiB4MW5eMiAqIHhkICsgeDFuICogeGReMlxuICBsZXQgdHYzID0gRnAuc3FyKGd4ZCk7ICAgICAvLyAgMTEuIHR2MyA9IGd4ZF4yXG4gIHR2MiA9IEZwLnNxcih0djMpOyAgICAgICAgIC8vICAxMi4gdHYyID0gdHYzXjIgICAgICAgICAgICMgZ3hkXjRcbiAgdHYzID0gRnAubXVsKHR2MywgZ3hkKTsgICAgICAgLy8gIDEzLiB0djMgPSB0djMgKiBneGQgICAgICAgIyBneGReM1xuICB0djMgPSBGcC5tdWwodHYzLCBneDEpOyAgICAgICAvLyAgMTQuIHR2MyA9IHR2MyAqIGd4MSAgICAgICAjIGd4MSAqIGd4ZF4zXG4gIHR2MiA9IEZwLm11bCh0djIsIHR2Myk7ICAgICAgIC8vICAxNS4gdHYyID0gdHYyICogdHYzICAgICAgICMgZ3gxICogZ3hkXjdcbiAgbGV0IHkxMSA9IEZwLnBvdyh0djIsIEVMTDJfQzQpOyAvLyAgMTYuIHkxMSA9IHR2Ml5jNCAgICAgICAgIyAoZ3gxICogZ3hkXjcpXigocCAtIDUpIC8gOClcbiAgeTExID0gRnAubXVsKHkxMSwgdHYzKTsgICAgICAgLy8gIDE3LiB5MTEgPSB5MTEgKiB0djMgICAgICAgIyBneDEqZ3hkXjMqKGd4MSpneGReNyleKChwLTUpLzgpXG4gIGxldCB5MTIgPSBGcC5tdWwoeTExLCBFTEwyX0MzKTsgLy8gIDE4LiB5MTIgPSB5MTEgKiBjM1xuICB0djIgPSBGcC5zcXIoeTExKTsgICAgICAgICAvLyAgMTkuIHR2MiA9IHkxMV4yXG4gIHR2MiA9IEZwLm11bCh0djIsIGd4ZCk7ICAgICAgIC8vICAyMC4gdHYyID0gdHYyICogZ3hkXG4gIGxldCBlMSA9IEZwLmVxbCh0djIsIGd4MSk7IC8vICAyMS4gIGUxID0gdHYyID09IGd4MVxuICBsZXQgeTEgPSBGcC5jbW92KHkxMiwgeTExLCBlMSk7IC8vICAyMi4gIHkxID0gQ01PVih5MTIsIHkxMSwgZTEpICAjIElmIGcoeDEpIGlzIHNxdWFyZSwgdGhpcyBpcyBpdHMgc3FydFxuICBsZXQgeDJuID0gRnAubXVsKHgxbiwgdHYxKTsgICAvLyAgMjMuIHgybiA9IHgxbiAqIHR2MSAgICAgICAjIHgyID0geDJuIC8geGQgPSAyICogdV4yICogeDFuIC8geGRcbiAgbGV0IHkyMSA9IEZwLm11bCh5MTEsIHUpOyAgICAgLy8gIDI0LiB5MjEgPSB5MTEgKiB1XG4gIHkyMSA9IEZwLm11bCh5MjEsIEVMTDJfQzIpOyAgIC8vICAyNS4geTIxID0geTIxICogYzJcbiAgbGV0IHkyMiA9IEZwLm11bCh5MjEsIEVMTDJfQzMpOyAvLyAgMjYuIHkyMiA9IHkyMSAqIGMzXG4gIGxldCBneDIgPSBGcC5tdWwoZ3gxLCB0djEpOyAgIC8vICAyNy4gZ3gyID0gZ3gxICogdHYxICAgICAgICMgZyh4MikgPSBneDIgLyBneGQgPSAyICogdV4yICogZyh4MSlcbiAgdHYyID0gRnAuc3FyKHkyMSk7ICAgICAgICAgLy8gIDI4LiB0djIgPSB5MjFeMlxuICB0djIgPSBGcC5tdWwodHYyLCBneGQpOyAgICAgICAvLyAgMjkuIHR2MiA9IHR2MiAqIGd4ZFxuICBsZXQgZTIgPSBGcC5lcWwodHYyLCBneDIpOyAvLyAgMzAuICBlMiA9IHR2MiA9PSBneDJcbiAgbGV0IHkyID0gRnAuY21vdih5MjIsIHkyMSwgZTIpOyAvLyAgMzEuICB5MiA9IENNT1YoeTIyLCB5MjEsIGUyKSAgIyBJZiBnKHgyKSBpcyBzcXVhcmUsIHRoaXMgaXMgaXRzIHNxcnRcbiAgdHYyID0gRnAuc3FyKHkxKTsgICAgICAgICAgLy8gIDMyLiB0djIgPSB5MV4yXG4gIHR2MiA9IEZwLm11bCh0djIsIGd4ZCk7ICAgICAgIC8vICAzMy4gdHYyID0gdHYyICogZ3hkXG4gIGxldCBlMyA9IEZwLmVxbCh0djIsIGd4MSk7IC8vICAzNC4gIGUzID0gdHYyID09IGd4MVxuICBsZXQgeG4gPSBGcC5jbW92KHgybiwgeDFuLCBlMyk7IC8vICAzNS4gIHhuID0gQ01PVih4Mm4sIHgxbiwgZTMpICAjIElmIGUzLCB4ID0geDEsIGVsc2UgeCA9IHgyXG4gIGxldCB5ID0gRnAuY21vdih5MiwgeTEsIGUzKTsgIC8vICAzNi4gICB5ID0gQ01PVih5MiwgeTEsIGUzKSAgICAjIElmIGUzLCB5ID0geTEsIGVsc2UgeSA9IHkyXG4gIGxldCBlNCA9IEZwLmlzT2RkKHkpOyAgICAgICAgIC8vICAzNy4gIGU0ID0gc2duMCh5KSA9PSAxICAgICAgICAjIEZpeCBzaWduIG9mIHlcbiAgeSA9IEZwLmNtb3YoeSwgRnAubmVnKHkpLCBlMyAhPT0gZTQpOyAvLyAgMzguICAgeSA9IENNT1YoeSwgLXksIGUzIFhPUiBlNClcbiAgcmV0dXJuIHsgeE1uOiB4biwgeE1kOiB4ZCwgeU1uOiB5LCB5TWQ6IF8xbiB9OyAvLyAgMzkuIHJldHVybiAoeG4sIHhkLCB5LCAxKVxufVxuXG5jb25zdCBFTEwyX0MxX0VEV0FSRFMgPSBGcFNxcnRFdmVuKEZwLCBGcC5uZWcoQmlnSW50KDQ4NjY2NCkpKTsgLy8gc2duMChjMSkgTVVTVCBlcXVhbCAwXG5mdW5jdGlvbiBtYXBfdG9fY3VydmVfZWxsaWdhdG9yMl9lZHdhcmRzMjU1MTkodTogYmlnaW50KSB7XG4gIGNvbnN0IHsgeE1uLCB4TWQsIHlNbiwgeU1kIH0gPSBtYXBfdG9fY3VydmVfZWxsaWdhdG9yMl9jdXJ2ZTI1NTE5KHUpOyAvLyAgMS4gICh4TW4sIHhNZCwgeU1uLCB5TWQpID1cbiAgLy8gbWFwX3RvX2N1cnZlX2VsbGlnYXRvcjJfY3VydmUyNTUxOSh1KVxuICBsZXQgeG4gPSBGcC5tdWwoeE1uLCB5TWQpOyAvLyAgMi4gIHhuID0geE1uICogeU1kXG4gIHhuID0gRnAubXVsKHhuLCBFTEwyX0MxX0VEV0FSRFMpOyAvLyAgMy4gIHhuID0geG4gKiBjMVxuICBsZXQgeGQgPSBGcC5tdWwoeE1kLCB5TW4pOyAvLyAgNC4gIHhkID0geE1kICogeU1uICAgICMgeG4gLyB4ZCA9IGMxICogeE0gLyB5TVxuICBsZXQgeW4gPSBGcC5zdWIoeE1uLCB4TWQpOyAvLyAgNS4gIHluID0geE1uIC0geE1kXG4gIGxldCB5ZCA9IEZwLmFkZCh4TW4sIHhNZCk7IC8vICA2LiAgeWQgPSB4TW4gKyB4TWQgICAgIyAobiAvIGQgLSAxKSAvIChuIC8gZCArIDEpID0gKG4gLSBkKSAvIChuICsgZClcbiAgbGV0IHR2MSA9IEZwLm11bCh4ZCwgeWQpOyAvLyAgNy4gdHYxID0geGQgKiB5ZFxuICBsZXQgZSA9IEZwLmVxbCh0djEsIEZwLlpFUk8pOyAvLyAgOC4gICBlID0gdHYxID09IDBcbiAgeG4gPSBGcC5jbW92KHhuLCBGcC5aRVJPLCBlKTsgLy8gIDkuICB4biA9IENNT1YoeG4sIDAsIGUpXG4gIHhkID0gRnAuY21vdih4ZCwgRnAuT05FLCBlKTsgLy8gIDEwLiB4ZCA9IENNT1YoeGQsIDEsIGUpXG4gIHluID0gRnAuY21vdih5biwgRnAuT05FLCBlKTsgLy8gIDExLiB5biA9IENNT1YoeW4sIDEsIGUpXG4gIHlkID0gRnAuY21vdih5ZCwgRnAuT05FLCBlKTsgLy8gIDEyLiB5ZCA9IENNT1YoeWQsIDEsIGUpXG5cbiAgY29uc3QgaW52ID0gRnAuaW52ZXJ0QmF0Y2goW3hkLCB5ZF0pOyAvLyBiYXRjaCBkaXZpc2lvblxuICByZXR1cm4geyB4OiBGcC5tdWwoeG4sIGludlswXSksIHk6IEZwLm11bCh5biwgaW52WzFdKSB9OyAvLyAgMTMuIHJldHVybiAoeG4sIHhkLCB5biwgeWQpXG59XG5cbmNvbnN0IGh0ZiA9IC8qIEBfX1BVUkVfXyAqLyAoKCkgPT5cbiAgY3JlYXRlSGFzaGVyKFxuICAgIGVkMjU1MTkuRXh0ZW5kZWRQb2ludCxcbiAgICAoc2NhbGFyczogYmlnaW50W10pID0+IG1hcF90b19jdXJ2ZV9lbGxpZ2F0b3IyX2Vkd2FyZHMyNTUxOShzY2FsYXJzWzBdKSxcbiAgICB7XG4gICAgICBEU1Q6ICdlZHdhcmRzMjU1MTlfWE1EOlNIQS01MTJfRUxMMl9ST18nLFxuICAgICAgZW5jb2RlRFNUOiAnZWR3YXJkczI1NTE5X1hNRDpTSEEtNTEyX0VMTDJfTlVfJyxcbiAgICAgIHA6IEZwLk9SREVSLFxuICAgICAgbTogMSxcbiAgICAgIGs6IDEyOCxcbiAgICAgIGV4cGFuZDogJ3htZCcsXG4gICAgICBoYXNoOiBzaGE1MTIsXG4gICAgfVxuICApKSgpO1xuZXhwb3J0IGNvbnN0IGhhc2hUb0N1cnZlID0gLyogQF9fUFVSRV9fICovICgoKSA9PiBodGYuaGFzaFRvQ3VydmUpKCk7XG5leHBvcnQgY29uc3QgZW5jb2RlVG9DdXJ2ZSA9IC8qIEBfX1BVUkVfXyAqLyAoKCkgPT4gaHRmLmVuY29kZVRvQ3VydmUpKCk7XG5cbmZ1bmN0aW9uIGFzc2VydFJzdFBvaW50KG90aGVyOiB1bmtub3duKSB7XG4gIGlmICghKG90aGVyIGluc3RhbmNlb2YgUmlzdFBvaW50KSkgdGhyb3cgbmV3IEVycm9yKCdSaXN0cmV0dG9Qb2ludCBleHBlY3RlZCcpO1xufVxuXG4vLyBcdTIyMUEoLTEpIGFrYSBcdTIyMUEoYSkgYWthIDJeKChwLTEpLzQpXG5jb25zdCBTUVJUX00xID0gRUQyNTUxOV9TUVJUX00xO1xuLy8gXHUyMjFBKGFkIC0gMSlcbmNvbnN0IFNRUlRfQURfTUlOVVNfT05FID0gQmlnSW50KFxuICAnMjUwNjMwNjg5NTMzODQ2MjM0NzQxMTE0MTQxNTg3MDIxNTI3MDEyNDQ1MzE1MDI0OTI2NTY0NjAwNzkyMTA0ODI2MTA0MzA3NTAyMzUnXG4pO1xuLy8gMSAvIFx1MjIxQShhLWQpXG5jb25zdCBJTlZTUVJUX0FfTUlOVVNfRCA9IEJpZ0ludChcbiAgJzU0NDY5MzA3MDA4OTA5MzE2OTIwOTk1ODEzODY4NzQ1MTQxNjA1MzkzNTk3MjkyOTI3NDU2OTIxMjA1MzEyODk2MzExNzIxMDE3NTc4J1xuKTtcbi8vIDEtZFx1MDBCMlxuY29uc3QgT05FX01JTlVTX0RfU1EgPSBCaWdJbnQoXG4gICcxMTU5ODQzMDIxNjY4Nzc5ODc5MTkzNzc1NTIxODU1NTg2NjQ3OTM3MzU3NzU5NzE1NDE3NjU0NDM5ODc5NzIwODc2MTExODA2ODM4J1xuKTtcbi8vIChkLTEpXHUwMEIyXG5jb25zdCBEX01JTlVTX09ORV9TUSA9IEJpZ0ludChcbiAgJzQwNDQwODM0MzQ2MzA4NTM2ODU4MTAxMDQyNDY5MzIzMTkwODI2MjQ4Mzk5MTQ2MjM4NzA4MzUyMjQwMTMzMjIwODY1MTM3MjY1OTUyJ1xuKTtcbi8vIENhbGN1bGF0ZXMgMS9cdTIyMUEobnVtYmVyKVxuY29uc3QgaW52ZXJ0U3FydCA9IChudW1iZXI6IGJpZ2ludCkgPT4gdXZSYXRpbyhfMW4sIG51bWJlcik7XG5cbmNvbnN0IE1BWF8yNTVCID0gQmlnSW50KCcweDdmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYnKTtcbmNvbnN0IGJ5dGVzMjU1VG9OdW1iZXJMRSA9IChieXRlczogVWludDhBcnJheSkgPT5cbiAgZWQyNTUxOS5DVVJWRS5GcC5jcmVhdGUoYnl0ZXNUb051bWJlckxFKGJ5dGVzKSAmIE1BWF8yNTVCKTtcblxudHlwZSBFeHRlbmRlZFBvaW50ID0gRXh0UG9pbnRUeXBlO1xuXG4vLyBDb21wdXRlcyBFbGxpZ2F0b3IgbWFwIGZvciBSaXN0cmV0dG9cbi8vIGh0dHBzOi8vcmlzdHJldHRvLmdyb3VwL2Zvcm11bGFzL2VsbGlnYXRvci5odG1sXG5mdW5jdGlvbiBjYWxjRWxsaWdhdG9yUmlzdHJldHRvTWFwKHIwOiBiaWdpbnQpOiBFeHRlbmRlZFBvaW50IHtcbiAgY29uc3QgeyBkIH0gPSBlZDI1NTE5LkNVUlZFO1xuICBjb25zdCBQID0gZWQyNTUxOS5DVVJWRS5GcC5PUkRFUjtcbiAgY29uc3QgbW9kID0gZWQyNTUxOS5DVVJWRS5GcC5jcmVhdGU7XG4gIGNvbnN0IHIgPSBtb2QoU1FSVF9NMSAqIHIwICogcjApOyAvLyAxXG4gIGNvbnN0IE5zID0gbW9kKChyICsgXzFuKSAqIE9ORV9NSU5VU19EX1NRKTsgLy8gMlxuICBsZXQgYyA9IEJpZ0ludCgtMSk7IC8vIDNcbiAgY29uc3QgRCA9IG1vZCgoYyAtIGQgKiByKSAqIG1vZChyICsgZCkpOyAvLyA0XG4gIGxldCB7IGlzVmFsaWQ6IE5zX0RfaXNfc3EsIHZhbHVlOiBzIH0gPSB1dlJhdGlvKE5zLCBEKTsgLy8gNVxuICBsZXQgc18gPSBtb2QocyAqIHIwKTsgLy8gNlxuICBpZiAoIWlzTmVnYXRpdmVMRShzXywgUCkpIHNfID0gbW9kKC1zXyk7XG4gIGlmICghTnNfRF9pc19zcSkgcyA9IHNfOyAvLyA3XG4gIGlmICghTnNfRF9pc19zcSkgYyA9IHI7IC8vIDhcbiAgY29uc3QgTnQgPSBtb2QoYyAqIChyIC0gXzFuKSAqIERfTUlOVVNfT05FX1NRIC0gRCk7IC8vIDlcbiAgY29uc3QgczIgPSBzICogcztcbiAgY29uc3QgVzAgPSBtb2QoKHMgKyBzKSAqIEQpOyAvLyAxMFxuICBjb25zdCBXMSA9IG1vZChOdCAqIFNRUlRfQURfTUlOVVNfT05FKTsgLy8gMTFcbiAgY29uc3QgVzIgPSBtb2QoXzFuIC0gczIpOyAvLyAxMlxuICBjb25zdCBXMyA9IG1vZChfMW4gKyBzMik7IC8vIDEzXG4gIHJldHVybiBuZXcgZWQyNTUxOS5FeHRlbmRlZFBvaW50KG1vZChXMCAqIFczKSwgbW9kKFcyICogVzEpLCBtb2QoVzEgKiBXMyksIG1vZChXMCAqIFcyKSk7XG59XG5cbi8qKlxuICogRWFjaCBlZDI1NTE5L0V4dGVuZGVkUG9pbnQgaGFzIDggZGlmZmVyZW50IGVxdWl2YWxlbnQgcG9pbnRzLiBUaGlzIGNhbiBiZVxuICogYSBzb3VyY2Ugb2YgYnVncyBmb3IgcHJvdG9jb2xzIGxpa2UgcmluZyBzaWduYXR1cmVzLiBSaXN0cmV0dG8gd2FzIGNyZWF0ZWQgdG8gc29sdmUgdGhpcy5cbiAqIFJpc3RyZXR0byBwb2ludCBvcGVyYXRlcyBpbiBYOlk6WjpUIGV4dGVuZGVkIGNvb3JkaW5hdGVzIGxpa2UgRXh0ZW5kZWRQb2ludCxcbiAqIGJ1dCBpdCBzaG91bGQgd29yayBpbiBpdHMgb3duIG5hbWVzcGFjZTogZG8gbm90IGNvbWJpbmUgdGhvc2UgdHdvLlxuICogaHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvaHRtbC9kcmFmdC1pcnRmLWNmcmctcmlzdHJldHRvMjU1LWRlY2FmNDQ4XG4gKi9cbmNsYXNzIFJpc3RQb2ludCB7XG4gIHN0YXRpYyBCQVNFOiBSaXN0UG9pbnQ7XG4gIHN0YXRpYyBaRVJPOiBSaXN0UG9pbnQ7XG4gIC8vIFByaXZhdGUgcHJvcGVydHkgdG8gZGlzY291cmFnZSBjb21iaW5pbmcgRXh0ZW5kZWRQb2ludCArIFJpc3RyZXR0b1BvaW50XG4gIC8vIEFsd2F5cyB1c2UgUmlzdHJldHRvIGVuY29kaW5nL2RlY29kaW5nIGluc3RlYWQuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgZXA6IEV4dGVuZGVkUG9pbnQpIHt9XG5cbiAgc3RhdGljIGZyb21BZmZpbmUoYXA6IEFmZmluZVBvaW50PGJpZ2ludD4pIHtcbiAgICByZXR1cm4gbmV3IFJpc3RQb2ludChlZDI1NTE5LkV4dGVuZGVkUG9pbnQuZnJvbUFmZmluZShhcCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRha2VzIHVuaWZvcm0gb3V0cHV0IG9mIDY0LWJ5dGUgaGFzaCBmdW5jdGlvbiBsaWtlIHNoYTUxMiBhbmQgY29udmVydHMgaXQgdG8gYFJpc3RyZXR0b1BvaW50YC5cbiAgICogVGhlIGhhc2gtdG8tZ3JvdXAgb3BlcmF0aW9uIGFwcGxpZXMgRWxsaWdhdG9yIHR3aWNlIGFuZCBhZGRzIHRoZSByZXN1bHRzLlxuICAgKiAqKk5vdGU6KiogdGhpcyBpcyBvbmUtd2F5IG1hcCwgdGhlcmUgaXMgbm8gY29udmVyc2lvbiBmcm9tIHBvaW50IHRvIGhhc2guXG4gICAqIGh0dHBzOi8vcmlzdHJldHRvLmdyb3VwL2Zvcm11bGFzL2VsbGlnYXRvci5odG1sXG4gICAqIEBwYXJhbSBoZXggNjQtYnl0ZSBvdXRwdXQgb2YgYSBoYXNoIGZ1bmN0aW9uXG4gICAqL1xuICBzdGF0aWMgaGFzaFRvQ3VydmUoaGV4OiBIZXgpOiBSaXN0UG9pbnQge1xuICAgIGhleCA9IGVuc3VyZUJ5dGVzKCdyaXN0cmV0dG9IYXNoJywgaGV4LCA2NCk7XG4gICAgY29uc3QgcjEgPSBieXRlczI1NVRvTnVtYmVyTEUoaGV4LnNsaWNlKDAsIDMyKSk7XG4gICAgY29uc3QgUjEgPSBjYWxjRWxsaWdhdG9yUmlzdHJldHRvTWFwKHIxKTtcbiAgICBjb25zdCByMiA9IGJ5dGVzMjU1VG9OdW1iZXJMRShoZXguc2xpY2UoMzIsIDY0KSk7XG4gICAgY29uc3QgUjIgPSBjYWxjRWxsaWdhdG9yUmlzdHJldHRvTWFwKHIyKTtcbiAgICByZXR1cm4gbmV3IFJpc3RQb2ludChSMS5hZGQoUjIpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb252ZXJ0cyByaXN0cmV0dG8tZW5jb2RlZCBzdHJpbmcgdG8gcmlzdHJldHRvIHBvaW50LlxuICAgKiBodHRwczovL3Jpc3RyZXR0by5ncm91cC9mb3JtdWxhcy9kZWNvZGluZy5odG1sXG4gICAqIEBwYXJhbSBoZXggUmlzdHJldHRvLWVuY29kZWQgMzIgYnl0ZXMuIE5vdCBldmVyeSAzMi1ieXRlIHN0cmluZyBpcyB2YWxpZCByaXN0cmV0dG8gZW5jb2RpbmdcbiAgICovXG4gIHN0YXRpYyBmcm9tSGV4KGhleDogSGV4KTogUmlzdFBvaW50IHtcbiAgICBoZXggPSBlbnN1cmVCeXRlcygncmlzdHJldHRvSGV4JywgaGV4LCAzMik7XG4gICAgY29uc3QgeyBhLCBkIH0gPSBlZDI1NTE5LkNVUlZFO1xuICAgIGNvbnN0IFAgPSBlZDI1NTE5LkNVUlZFLkZwLk9SREVSO1xuICAgIGNvbnN0IG1vZCA9IGVkMjU1MTkuQ1VSVkUuRnAuY3JlYXRlO1xuICAgIGNvbnN0IGVtc2cgPSAnUmlzdHJldHRvUG9pbnQuZnJvbUhleDogdGhlIGhleCBpcyBub3QgdmFsaWQgZW5jb2Rpbmcgb2YgUmlzdHJldHRvUG9pbnQnO1xuICAgIGNvbnN0IHMgPSBieXRlczI1NVRvTnVtYmVyTEUoaGV4KTtcbiAgICAvLyAxLiBDaGVjayB0aGF0IHNfYnl0ZXMgaXMgdGhlIGNhbm9uaWNhbCBlbmNvZGluZyBvZiBhIGZpZWxkIGVsZW1lbnQsIG9yIGVsc2UgYWJvcnQuXG4gICAgLy8gMy4gQ2hlY2sgdGhhdCBzIGlzIG5vbi1uZWdhdGl2ZSwgb3IgZWxzZSBhYm9ydFxuICAgIGlmICghZXF1YWxCeXRlcyhudW1iZXJUb0J5dGVzTEUocywgMzIpLCBoZXgpIHx8IGlzTmVnYXRpdmVMRShzLCBQKSkgdGhyb3cgbmV3IEVycm9yKGVtc2cpO1xuICAgIGNvbnN0IHMyID0gbW9kKHMgKiBzKTtcbiAgICBjb25zdCB1MSA9IG1vZChfMW4gKyBhICogczIpOyAvLyA0IChhIGlzIC0xKVxuICAgIGNvbnN0IHUyID0gbW9kKF8xbiAtIGEgKiBzMik7IC8vIDVcbiAgICBjb25zdCB1MV8yID0gbW9kKHUxICogdTEpO1xuICAgIGNvbnN0IHUyXzIgPSBtb2QodTIgKiB1Mik7XG4gICAgY29uc3QgdiA9IG1vZChhICogZCAqIHUxXzIgLSB1Ml8yKTsgLy8gNlxuICAgIGNvbnN0IHsgaXNWYWxpZCwgdmFsdWU6IEkgfSA9IGludmVydFNxcnQobW9kKHYgKiB1Ml8yKSk7IC8vIDdcbiAgICBjb25zdCBEeCA9IG1vZChJICogdTIpOyAvLyA4XG4gICAgY29uc3QgRHkgPSBtb2QoSSAqIER4ICogdik7IC8vIDlcbiAgICBsZXQgeCA9IG1vZCgocyArIHMpICogRHgpOyAvLyAxMFxuICAgIGlmIChpc05lZ2F0aXZlTEUoeCwgUCkpIHggPSBtb2QoLXgpOyAvLyAxMFxuICAgIGNvbnN0IHkgPSBtb2QodTEgKiBEeSk7IC8vIDExXG4gICAgY29uc3QgdCA9IG1vZCh4ICogeSk7IC8vIDEyXG4gICAgaWYgKCFpc1ZhbGlkIHx8IGlzTmVnYXRpdmVMRSh0LCBQKSB8fCB5ID09PSBfMG4pIHRocm93IG5ldyBFcnJvcihlbXNnKTtcbiAgICByZXR1cm4gbmV3IFJpc3RQb2ludChuZXcgZWQyNTUxOS5FeHRlbmRlZFBvaW50KHgsIHksIF8xbiwgdCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIEVuY29kZXMgcmlzdHJldHRvIHBvaW50IHRvIFVpbnQ4QXJyYXkuXG4gICAqIGh0dHBzOi8vcmlzdHJldHRvLmdyb3VwL2Zvcm11bGFzL2VuY29kaW5nLmh0bWxcbiAgICovXG4gIHRvUmF3Qnl0ZXMoKTogVWludDhBcnJheSB7XG4gICAgbGV0IHsgZXg6IHgsIGV5OiB5LCBlejogeiwgZXQ6IHQgfSA9IHRoaXMuZXA7XG4gICAgY29uc3QgUCA9IGVkMjU1MTkuQ1VSVkUuRnAuT1JERVI7XG4gICAgY29uc3QgbW9kID0gZWQyNTUxOS5DVVJWRS5GcC5jcmVhdGU7XG4gICAgY29uc3QgdTEgPSBtb2QobW9kKHogKyB5KSAqIG1vZCh6IC0geSkpOyAvLyAxXG4gICAgY29uc3QgdTIgPSBtb2QoeCAqIHkpOyAvLyAyXG4gICAgLy8gU3F1YXJlIHJvb3QgYWx3YXlzIGV4aXN0c1xuICAgIGNvbnN0IHUyc3EgPSBtb2QodTIgKiB1Mik7XG4gICAgY29uc3QgeyB2YWx1ZTogaW52c3FydCB9ID0gaW52ZXJ0U3FydChtb2QodTEgKiB1MnNxKSk7IC8vIDNcbiAgICBjb25zdCBEMSA9IG1vZChpbnZzcXJ0ICogdTEpOyAvLyA0XG4gICAgY29uc3QgRDIgPSBtb2QoaW52c3FydCAqIHUyKTsgLy8gNVxuICAgIGNvbnN0IHpJbnYgPSBtb2QoRDEgKiBEMiAqIHQpOyAvLyA2XG4gICAgbGV0IEQ6IGJpZ2ludDsgLy8gN1xuICAgIGlmIChpc05lZ2F0aXZlTEUodCAqIHpJbnYsIFApKSB7XG4gICAgICBsZXQgX3ggPSBtb2QoeSAqIFNRUlRfTTEpO1xuICAgICAgbGV0IF95ID0gbW9kKHggKiBTUVJUX00xKTtcbiAgICAgIHggPSBfeDtcbiAgICAgIHkgPSBfeTtcbiAgICAgIEQgPSBtb2QoRDEgKiBJTlZTUVJUX0FfTUlOVVNfRCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIEQgPSBEMjsgLy8gOFxuICAgIH1cbiAgICBpZiAoaXNOZWdhdGl2ZUxFKHggKiB6SW52LCBQKSkgeSA9IG1vZCgteSk7IC8vIDlcbiAgICBsZXQgcyA9IG1vZCgoeiAtIHkpICogRCk7IC8vIDEwIChjaGVjayBmb290ZXIncyBub3RlLCBubyBzcXJ0KC1hKSlcbiAgICBpZiAoaXNOZWdhdGl2ZUxFKHMsIFApKSBzID0gbW9kKC1zKTtcbiAgICByZXR1cm4gbnVtYmVyVG9CeXRlc0xFKHMsIDMyKTsgLy8gMTFcbiAgfVxuXG4gIHRvSGV4KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGJ5dGVzVG9IZXgodGhpcy50b1Jhd0J5dGVzKCkpO1xuICB9XG5cbiAgdG9TdHJpbmcoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50b0hleCgpO1xuICB9XG5cbiAgLy8gQ29tcGFyZSBvbmUgcG9pbnQgdG8gYW5vdGhlci5cbiAgZXF1YWxzKG90aGVyOiBSaXN0UG9pbnQpOiBib29sZWFuIHtcbiAgICBhc3NlcnRSc3RQb2ludChvdGhlcik7XG4gICAgY29uc3QgeyBleDogWDEsIGV5OiBZMSB9ID0gdGhpcy5lcDtcbiAgICBjb25zdCB7IGV4OiBYMiwgZXk6IFkyIH0gPSBvdGhlci5lcDtcbiAgICBjb25zdCBtb2QgPSBlZDI1NTE5LkNVUlZFLkZwLmNyZWF0ZTtcbiAgICAvLyAoeDEgKiB5MiA9PSB5MSAqIHgyKSB8ICh5MSAqIHkyID09IHgxICogeDIpXG4gICAgY29uc3Qgb25lID0gbW9kKFgxICogWTIpID09PSBtb2QoWTEgKiBYMik7XG4gICAgY29uc3QgdHdvID0gbW9kKFkxICogWTIpID09PSBtb2QoWDEgKiBYMik7XG4gICAgcmV0dXJuIG9uZSB8fCB0d287XG4gIH1cblxuICBhZGQob3RoZXI6IFJpc3RQb2ludCk6IFJpc3RQb2ludCB7XG4gICAgYXNzZXJ0UnN0UG9pbnQob3RoZXIpO1xuICAgIHJldHVybiBuZXcgUmlzdFBvaW50KHRoaXMuZXAuYWRkKG90aGVyLmVwKSk7XG4gIH1cblxuICBzdWJ0cmFjdChvdGhlcjogUmlzdFBvaW50KTogUmlzdFBvaW50IHtcbiAgICBhc3NlcnRSc3RQb2ludChvdGhlcik7XG4gICAgcmV0dXJuIG5ldyBSaXN0UG9pbnQodGhpcy5lcC5zdWJ0cmFjdChvdGhlci5lcCkpO1xuICB9XG5cbiAgbXVsdGlwbHkoc2NhbGFyOiBiaWdpbnQpOiBSaXN0UG9pbnQge1xuICAgIHJldHVybiBuZXcgUmlzdFBvaW50KHRoaXMuZXAubXVsdGlwbHkoc2NhbGFyKSk7XG4gIH1cblxuICBtdWx0aXBseVVuc2FmZShzY2FsYXI6IGJpZ2ludCk6IFJpc3RQb2ludCB7XG4gICAgcmV0dXJuIG5ldyBSaXN0UG9pbnQodGhpcy5lcC5tdWx0aXBseVVuc2FmZShzY2FsYXIpKTtcbiAgfVxufVxuZXhwb3J0IGNvbnN0IFJpc3RyZXR0b1BvaW50ID0gLyogQF9fUFVSRV9fICovICgoKSA9PiB7XG4gIGlmICghUmlzdFBvaW50LkJBU0UpIFJpc3RQb2ludC5CQVNFID0gbmV3IFJpc3RQb2ludChlZDI1NTE5LkV4dGVuZGVkUG9pbnQuQkFTRSk7XG4gIGlmICghUmlzdFBvaW50LlpFUk8pIFJpc3RQb2ludC5aRVJPID0gbmV3IFJpc3RQb2ludChlZDI1NTE5LkV4dGVuZGVkUG9pbnQuWkVSTyk7XG4gIHJldHVybiBSaXN0UG9pbnQ7XG59KSgpO1xuXG4vLyBIYXNoaW5nIHRvIHJpc3RyZXR0bzI1NS4gaHR0cHM6Ly93d3cucmZjLWVkaXRvci5vcmcvcmZjL3JmYzkzODAjYXBwZW5kaXgtQlxuZXhwb3J0IGNvbnN0IGhhc2hUb1Jpc3RyZXR0bzI1NSA9IChtc2c6IFVpbnQ4QXJyYXksIG9wdGlvbnM6IGh0ZkJhc2ljT3B0cykgPT4ge1xuICBjb25zdCBkID0gb3B0aW9ucy5EU1Q7XG4gIGNvbnN0IERTVCA9IHR5cGVvZiBkID09PSAnc3RyaW5nJyA/IHV0ZjhUb0J5dGVzKGQpIDogZDtcbiAgY29uc3QgdW5pZm9ybV9ieXRlcyA9IGV4cGFuZF9tZXNzYWdlX3htZChtc2csIERTVCwgNjQsIHNoYTUxMik7XG4gIGNvbnN0IFAgPSBSaXN0UG9pbnQuaGFzaFRvQ3VydmUodW5pZm9ybV9ieXRlcyk7XG4gIHJldHVybiBQO1xufTtcbmV4cG9ydCBjb25zdCBoYXNoX3RvX3Jpc3RyZXR0bzI1NSA9IGhhc2hUb1Jpc3RyZXR0bzI1NTsgLy8gbGVnYWN5XG4iLCAiKGZ1bmN0aW9uIChtb2R1bGUsIGV4cG9ydHMpIHtcbiAgJ3VzZSBzdHJpY3QnO1xuXG4gIC8vIFV0aWxzXG4gIGZ1bmN0aW9uIGFzc2VydCAodmFsLCBtc2cpIHtcbiAgICBpZiAoIXZhbCkgdGhyb3cgbmV3IEVycm9yKG1zZyB8fCAnQXNzZXJ0aW9uIGZhaWxlZCcpO1xuICB9XG5cbiAgLy8gQ291bGQgdXNlIGBpbmhlcml0c2AgbW9kdWxlLCBidXQgZG9uJ3Qgd2FudCB0byBtb3ZlIGZyb20gc2luZ2xlIGZpbGVcbiAgLy8gYXJjaGl0ZWN0dXJlIHlldC5cbiAgZnVuY3Rpb24gaW5oZXJpdHMgKGN0b3IsIHN1cGVyQ3Rvcikge1xuICAgIGN0b3Iuc3VwZXJfID0gc3VwZXJDdG9yO1xuICAgIHZhciBUZW1wQ3RvciA9IGZ1bmN0aW9uICgpIHt9O1xuICAgIFRlbXBDdG9yLnByb3RvdHlwZSA9IHN1cGVyQ3Rvci5wcm90b3R5cGU7XG4gICAgY3Rvci5wcm90b3R5cGUgPSBuZXcgVGVtcEN0b3IoKTtcbiAgICBjdG9yLnByb3RvdHlwZS5jb25zdHJ1Y3RvciA9IGN0b3I7XG4gIH1cblxuICAvLyBCTlxuXG4gIGZ1bmN0aW9uIEJOIChudW1iZXIsIGJhc2UsIGVuZGlhbikge1xuICAgIGlmIChCTi5pc0JOKG51bWJlcikpIHtcbiAgICAgIHJldHVybiBudW1iZXI7XG4gICAgfVxuXG4gICAgdGhpcy5uZWdhdGl2ZSA9IDA7XG4gICAgdGhpcy53b3JkcyA9IG51bGw7XG4gICAgdGhpcy5sZW5ndGggPSAwO1xuXG4gICAgLy8gUmVkdWN0aW9uIGNvbnRleHRcbiAgICB0aGlzLnJlZCA9IG51bGw7XG5cbiAgICBpZiAobnVtYmVyICE9PSBudWxsKSB7XG4gICAgICBpZiAoYmFzZSA9PT0gJ2xlJyB8fCBiYXNlID09PSAnYmUnKSB7XG4gICAgICAgIGVuZGlhbiA9IGJhc2U7XG4gICAgICAgIGJhc2UgPSAxMDtcbiAgICAgIH1cblxuICAgICAgdGhpcy5faW5pdChudW1iZXIgfHwgMCwgYmFzZSB8fCAxMCwgZW5kaWFuIHx8ICdiZScpO1xuICAgIH1cbiAgfVxuICBpZiAodHlwZW9mIG1vZHVsZSA9PT0gJ29iamVjdCcpIHtcbiAgICBtb2R1bGUuZXhwb3J0cyA9IEJOO1xuICB9IGVsc2Uge1xuICAgIGV4cG9ydHMuQk4gPSBCTjtcbiAgfVxuXG4gIEJOLkJOID0gQk47XG4gIEJOLndvcmRTaXplID0gMjY7XG5cbiAgdmFyIEJ1ZmZlcjtcbiAgdHJ5IHtcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgdHlwZW9mIHdpbmRvdy5CdWZmZXIgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICBCdWZmZXIgPSB3aW5kb3cuQnVmZmVyO1xuICAgIH0gZWxzZSB7XG4gICAgICBCdWZmZXIgPSByZXF1aXJlKCdidWZmZXInKS5CdWZmZXI7XG4gICAgfVxuICB9IGNhdGNoIChlKSB7XG4gIH1cblxuICBCTi5pc0JOID0gZnVuY3Rpb24gaXNCTiAobnVtKSB7XG4gICAgaWYgKG51bSBpbnN0YW5jZW9mIEJOKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gbnVtICE9PSBudWxsICYmIHR5cGVvZiBudW0gPT09ICdvYmplY3QnICYmXG4gICAgICBudW0uY29uc3RydWN0b3Iud29yZFNpemUgPT09IEJOLndvcmRTaXplICYmIEFycmF5LmlzQXJyYXkobnVtLndvcmRzKTtcbiAgfTtcblxuICBCTi5tYXggPSBmdW5jdGlvbiBtYXggKGxlZnQsIHJpZ2h0KSB7XG4gICAgaWYgKGxlZnQuY21wKHJpZ2h0KSA+IDApIHJldHVybiBsZWZ0O1xuICAgIHJldHVybiByaWdodDtcbiAgfTtcblxuICBCTi5taW4gPSBmdW5jdGlvbiBtaW4gKGxlZnQsIHJpZ2h0KSB7XG4gICAgaWYgKGxlZnQuY21wKHJpZ2h0KSA8IDApIHJldHVybiBsZWZ0O1xuICAgIHJldHVybiByaWdodDtcbiAgfTtcblxuICBCTi5wcm90b3R5cGUuX2luaXQgPSBmdW5jdGlvbiBpbml0IChudW1iZXIsIGJhc2UsIGVuZGlhbikge1xuICAgIGlmICh0eXBlb2YgbnVtYmVyID09PSAnbnVtYmVyJykge1xuICAgICAgcmV0dXJuIHRoaXMuX2luaXROdW1iZXIobnVtYmVyLCBiYXNlLCBlbmRpYW4pO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgbnVtYmVyID09PSAnb2JqZWN0Jykge1xuICAgICAgcmV0dXJuIHRoaXMuX2luaXRBcnJheShudW1iZXIsIGJhc2UsIGVuZGlhbik7XG4gICAgfVxuXG4gICAgaWYgKGJhc2UgPT09ICdoZXgnKSB7XG4gICAgICBiYXNlID0gMTY7XG4gICAgfVxuICAgIGFzc2VydChiYXNlID09PSAoYmFzZSB8IDApICYmIGJhc2UgPj0gMiAmJiBiYXNlIDw9IDM2KTtcblxuICAgIG51bWJlciA9IG51bWJlci50b1N0cmluZygpLnJlcGxhY2UoL1xccysvZywgJycpO1xuICAgIHZhciBzdGFydCA9IDA7XG4gICAgaWYgKG51bWJlclswXSA9PT0gJy0nKSB7XG4gICAgICBzdGFydCsrO1xuICAgICAgdGhpcy5uZWdhdGl2ZSA9IDE7XG4gICAgfVxuXG4gICAgaWYgKHN0YXJ0IDwgbnVtYmVyLmxlbmd0aCkge1xuICAgICAgaWYgKGJhc2UgPT09IDE2KSB7XG4gICAgICAgIHRoaXMuX3BhcnNlSGV4KG51bWJlciwgc3RhcnQsIGVuZGlhbik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLl9wYXJzZUJhc2UobnVtYmVyLCBiYXNlLCBzdGFydCk7XG4gICAgICAgIGlmIChlbmRpYW4gPT09ICdsZScpIHtcbiAgICAgICAgICB0aGlzLl9pbml0QXJyYXkodGhpcy50b0FycmF5KCksIGJhc2UsIGVuZGlhbik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgQk4ucHJvdG90eXBlLl9pbml0TnVtYmVyID0gZnVuY3Rpb24gX2luaXROdW1iZXIgKG51bWJlciwgYmFzZSwgZW5kaWFuKSB7XG4gICAgaWYgKG51bWJlciA8IDApIHtcbiAgICAgIHRoaXMubmVnYXRpdmUgPSAxO1xuICAgICAgbnVtYmVyID0gLW51bWJlcjtcbiAgICB9XG4gICAgaWYgKG51bWJlciA8IDB4NDAwMDAwMCkge1xuICAgICAgdGhpcy53b3JkcyA9IFtudW1iZXIgJiAweDNmZmZmZmZdO1xuICAgICAgdGhpcy5sZW5ndGggPSAxO1xuICAgIH0gZWxzZSBpZiAobnVtYmVyIDwgMHgxMDAwMDAwMDAwMDAwMCkge1xuICAgICAgdGhpcy53b3JkcyA9IFtcbiAgICAgICAgbnVtYmVyICYgMHgzZmZmZmZmLFxuICAgICAgICAobnVtYmVyIC8gMHg0MDAwMDAwKSAmIDB4M2ZmZmZmZlxuICAgICAgXTtcbiAgICAgIHRoaXMubGVuZ3RoID0gMjtcbiAgICB9IGVsc2Uge1xuICAgICAgYXNzZXJ0KG51bWJlciA8IDB4MjAwMDAwMDAwMDAwMDApOyAvLyAyIF4gNTMgKHVuc2FmZSlcbiAgICAgIHRoaXMud29yZHMgPSBbXG4gICAgICAgIG51bWJlciAmIDB4M2ZmZmZmZixcbiAgICAgICAgKG51bWJlciAvIDB4NDAwMDAwMCkgJiAweDNmZmZmZmYsXG4gICAgICAgIDFcbiAgICAgIF07XG4gICAgICB0aGlzLmxlbmd0aCA9IDM7XG4gICAgfVxuXG4gICAgaWYgKGVuZGlhbiAhPT0gJ2xlJykgcmV0dXJuO1xuXG4gICAgLy8gUmV2ZXJzZSB0aGUgYnl0ZXNcbiAgICB0aGlzLl9pbml0QXJyYXkodGhpcy50b0FycmF5KCksIGJhc2UsIGVuZGlhbik7XG4gIH07XG5cbiAgQk4ucHJvdG90eXBlLl9pbml0QXJyYXkgPSBmdW5jdGlvbiBfaW5pdEFycmF5IChudW1iZXIsIGJhc2UsIGVuZGlhbikge1xuICAgIC8vIFBlcmhhcHMgYSBVaW50OEFycmF5XG4gICAgYXNzZXJ0KHR5cGVvZiBudW1iZXIubGVuZ3RoID09PSAnbnVtYmVyJyk7XG4gICAgaWYgKG51bWJlci5sZW5ndGggPD0gMCkge1xuICAgICAgdGhpcy53b3JkcyA9IFswXTtcbiAgICAgIHRoaXMubGVuZ3RoID0gMTtcbiAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHRoaXMubGVuZ3RoID0gTWF0aC5jZWlsKG51bWJlci5sZW5ndGggLyAzKTtcbiAgICB0aGlzLndvcmRzID0gbmV3IEFycmF5KHRoaXMubGVuZ3RoKTtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMubGVuZ3RoOyBpKyspIHtcbiAgICAgIHRoaXMud29yZHNbaV0gPSAwO1xuICAgIH1cblxuICAgIHZhciBqLCB3O1xuICAgIHZhciBvZmYgPSAwO1xuICAgIGlmIChlbmRpYW4gPT09ICdiZScpIHtcbiAgICAgIGZvciAoaSA9IG51bWJlci5sZW5ndGggLSAxLCBqID0gMDsgaSA+PSAwOyBpIC09IDMpIHtcbiAgICAgICAgdyA9IG51bWJlcltpXSB8IChudW1iZXJbaSAtIDFdIDw8IDgpIHwgKG51bWJlcltpIC0gMl0gPDwgMTYpO1xuICAgICAgICB0aGlzLndvcmRzW2pdIHw9ICh3IDw8IG9mZikgJiAweDNmZmZmZmY7XG4gICAgICAgIHRoaXMud29yZHNbaiArIDFdID0gKHcgPj4+ICgyNiAtIG9mZikpICYgMHgzZmZmZmZmO1xuICAgICAgICBvZmYgKz0gMjQ7XG4gICAgICAgIGlmIChvZmYgPj0gMjYpIHtcbiAgICAgICAgICBvZmYgLT0gMjY7XG4gICAgICAgICAgaisrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChlbmRpYW4gPT09ICdsZScpIHtcbiAgICAgIGZvciAoaSA9IDAsIGogPSAwOyBpIDwgbnVtYmVyLmxlbmd0aDsgaSArPSAzKSB7XG4gICAgICAgIHcgPSBudW1iZXJbaV0gfCAobnVtYmVyW2kgKyAxXSA8PCA4KSB8IChudW1iZXJbaSArIDJdIDw8IDE2KTtcbiAgICAgICAgdGhpcy53b3Jkc1tqXSB8PSAodyA8PCBvZmYpICYgMHgzZmZmZmZmO1xuICAgICAgICB0aGlzLndvcmRzW2ogKyAxXSA9ICh3ID4+PiAoMjYgLSBvZmYpKSAmIDB4M2ZmZmZmZjtcbiAgICAgICAgb2ZmICs9IDI0O1xuICAgICAgICBpZiAob2ZmID49IDI2KSB7XG4gICAgICAgICAgb2ZmIC09IDI2O1xuICAgICAgICAgIGorKztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGhpcy5fc3RyaXAoKTtcbiAgfTtcblxuICBmdW5jdGlvbiBwYXJzZUhleDRCaXRzIChzdHJpbmcsIGluZGV4KSB7XG4gICAgdmFyIGMgPSBzdHJpbmcuY2hhckNvZGVBdChpbmRleCk7XG4gICAgLy8gJzAnIC0gJzknXG4gICAgaWYgKGMgPj0gNDggJiYgYyA8PSA1Nykge1xuICAgICAgcmV0dXJuIGMgLSA0ODtcbiAgICAvLyAnQScgLSAnRidcbiAgICB9IGVsc2UgaWYgKGMgPj0gNjUgJiYgYyA8PSA3MCkge1xuICAgICAgcmV0dXJuIGMgLSA1NTtcbiAgICAvLyAnYScgLSAnZidcbiAgICB9IGVsc2UgaWYgKGMgPj0gOTcgJiYgYyA8PSAxMDIpIHtcbiAgICAgIHJldHVybiBjIC0gODc7XG4gICAgfSBlbHNlIHtcbiAgICAgIGFzc2VydChmYWxzZSwgJ0ludmFsaWQgY2hhcmFjdGVyIGluICcgKyBzdHJpbmcpO1xuICAgIH1cbiAgfVxuXG4gIGZ1bmN0aW9uIHBhcnNlSGV4Qnl0ZSAoc3RyaW5nLCBsb3dlckJvdW5kLCBpbmRleCkge1xuICAgIHZhciByID0gcGFyc2VIZXg0Qml0cyhzdHJpbmcsIGluZGV4KTtcbiAgICBpZiAoaW5kZXggLSAxID49IGxvd2VyQm91bmQpIHtcbiAgICAgIHIgfD0gcGFyc2VIZXg0Qml0cyhzdHJpbmcsIGluZGV4IC0gMSkgPDwgNDtcbiAgICB9XG4gICAgcmV0dXJuIHI7XG4gIH1cblxuICBCTi5wcm90b3R5cGUuX3BhcnNlSGV4ID0gZnVuY3Rpb24gX3BhcnNlSGV4IChudW1iZXIsIHN0YXJ0LCBlbmRpYW4pIHtcbiAgICAvLyBDcmVhdGUgcG9zc2libHkgYmlnZ2VyIGFycmF5IHRvIGVuc3VyZSB0aGF0IGl0IGZpdHMgdGhlIG51bWJlclxuICAgIHRoaXMubGVuZ3RoID0gTWF0aC5jZWlsKChudW1iZXIubGVuZ3RoIC0gc3RhcnQpIC8gNik7XG4gICAgdGhpcy53b3JkcyA9IG5ldyBBcnJheSh0aGlzLmxlbmd0aCk7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLmxlbmd0aDsgaSsrKSB7XG4gICAgICB0aGlzLndvcmRzW2ldID0gMDtcbiAgICB9XG5cbiAgICAvLyAyNC1iaXRzIGNodW5rc1xuICAgIHZhciBvZmYgPSAwO1xuICAgIHZhciBqID0gMDtcblxuICAgIHZhciB3O1xuICAgIGlmIChlbmRpYW4gPT09ICdiZScpIHtcbiAgICAgIGZvciAoaSA9IG51bWJlci5sZW5ndGggLSAxOyBpID49IHN0YXJ0OyBpIC09IDIpIHtcbiAgICAgICAgdyA9IHBhcnNlSGV4Qnl0ZShudW1iZXIsIHN0YXJ0LCBpKSA8PCBvZmY7XG4gICAgICAgIHRoaXMud29yZHNbal0gfD0gdyAmIDB4M2ZmZmZmZjtcbiAgICAgICAgaWYgKG9mZiA+PSAxOCkge1xuICAgICAgICAgIG9mZiAtPSAxODtcbiAgICAgICAgICBqICs9IDE7XG4gICAgICAgICAgdGhpcy53b3Jkc1tqXSB8PSB3ID4+PiAyNjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBvZmYgKz0gODtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB2YXIgcGFyc2VMZW5ndGggPSBudW1iZXIubGVuZ3RoIC0gc3RhcnQ7XG4gICAgICBmb3IgKGkgPSBwYXJzZUxlbmd0aCAlIDIgPT09IDAgPyBzdGFydCArIDEgOiBzdGFydDsgaSA8IG51bWJlci5sZW5ndGg7IGkgKz0gMikge1xuICAgICAgICB3ID0gcGFyc2VIZXhCeXRlKG51bWJlciwgc3RhcnQsIGkpIDw8IG9mZjtcbiAgICAgICAgdGhpcy53b3Jkc1tqXSB8PSB3ICYgMHgzZmZmZmZmO1xuICAgICAgICBpZiAob2ZmID49IDE4KSB7XG4gICAgICAgICAgb2ZmIC09IDE4O1xuICAgICAgICAgIGogKz0gMTtcbiAgICAgICAgICB0aGlzLndvcmRzW2pdIHw9IHcgPj4+IDI2O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIG9mZiArPSA4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5fc3RyaXAoKTtcbiAgfTtcblxuICBmdW5jdGlvbiBwYXJzZUJhc2UgKHN0ciwgc3RhcnQsIGVuZCwgbXVsKSB7XG4gICAgdmFyIHIgPSAwO1xuICAgIHZhciBiID0gMDtcbiAgICB2YXIgbGVuID0gTWF0aC5taW4oc3RyLmxlbmd0aCwgZW5kKTtcbiAgICBmb3IgKHZhciBpID0gc3RhcnQ7IGkgPCBsZW47IGkrKykge1xuICAgICAgdmFyIGMgPSBzdHIuY2hhckNvZGVBdChpKSAtIDQ4O1xuXG4gICAgICByICo9IG11bDtcblxuICAgICAgLy8gJ2EnXG4gICAgICBpZiAoYyA+PSA0OSkge1xuICAgICAgICBiID0gYyAtIDQ5ICsgMHhhO1xuXG4gICAgICAvLyAnQSdcbiAgICAgIH0gZWxzZSBpZiAoYyA+PSAxNykge1xuICAgICAgICBiID0gYyAtIDE3ICsgMHhhO1xuXG4gICAgICAvLyAnMCcgLSAnOSdcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGIgPSBjO1xuICAgICAgfVxuICAgICAgYXNzZXJ0KGMgPj0gMCAmJiBiIDwgbXVsLCAnSW52YWxpZCBjaGFyYWN0ZXInKTtcbiAgICAgIHIgKz0gYjtcbiAgICB9XG4gICAgcmV0dXJuIHI7XG4gIH1cblxuICBCTi5wcm90b3R5cGUuX3BhcnNlQmFzZSA9IGZ1bmN0aW9uIF9wYXJzZUJhc2UgKG51bWJlciwgYmFzZSwgc3RhcnQpIHtcbiAgICAvLyBJbml0aWFsaXplIGFzIHplcm9cbiAgICB0aGlzLndvcmRzID0gWzBdO1xuICAgIHRoaXMubGVuZ3RoID0gMTtcblxuICAgIC8vIEZpbmQgbGVuZ3RoIG9mIGxpbWIgaW4gYmFzZVxuICAgIGZvciAodmFyIGxpbWJMZW4gPSAwLCBsaW1iUG93ID0gMTsgbGltYlBvdyA8PSAweDNmZmZmZmY7IGxpbWJQb3cgKj0gYmFzZSkge1xuICAgICAgbGltYkxlbisrO1xuICAgIH1cbiAgICBsaW1iTGVuLS07XG4gICAgbGltYlBvdyA9IChsaW1iUG93IC8gYmFzZSkgfCAwO1xuXG4gICAgdmFyIHRvdGFsID0gbnVtYmVyLmxlbmd0aCAtIHN0YXJ0O1xuICAgIHZhciBtb2QgPSB0b3RhbCAlIGxpbWJMZW47XG4gICAgdmFyIGVuZCA9IE1hdGgubWluKHRvdGFsLCB0b3RhbCAtIG1vZCkgKyBzdGFydDtcblxuICAgIHZhciB3b3JkID0gMDtcbiAgICBmb3IgKHZhciBpID0gc3RhcnQ7IGkgPCBlbmQ7IGkgKz0gbGltYkxlbikge1xuICAgICAgd29yZCA9IHBhcnNlQmFzZShudW1iZXIsIGksIGkgKyBsaW1iTGVuLCBiYXNlKTtcblxuICAgICAgdGhpcy5pbXVsbihsaW1iUG93KTtcbiAgICAgIGlmICh0aGlzLndvcmRzWzBdICsgd29yZCA8IDB4NDAwMDAwMCkge1xuICAgICAgICB0aGlzLndvcmRzWzBdICs9IHdvcmQ7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLl9pYWRkbih3b3JkKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAobW9kICE9PSAwKSB7XG4gICAgICB2YXIgcG93ID0gMTtcbiAgICAgIHdvcmQgPSBwYXJzZUJhc2UobnVtYmVyLCBpLCBudW1iZXIubGVuZ3RoLCBiYXNlKTtcblxuICAgICAgZm9yIChpID0gMDsgaSA8IG1vZDsgaSsrKSB7XG4gICAgICAgIHBvdyAqPSBiYXNlO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmltdWxuKHBvdyk7XG4gICAgICBpZiAodGhpcy53b3Jkc1swXSArIHdvcmQgPCAweDQwMDAwMDApIHtcbiAgICAgICAgdGhpcy53b3Jkc1swXSArPSB3b3JkO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5faWFkZG4od29yZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5fc3RyaXAoKTtcbiAgfTtcblxuICBCTi5wcm90b3R5cGUuY29weSA9IGZ1bmN0aW9uIGNvcHkgKGRlc3QpIHtcbiAgICBkZXN0LndvcmRzID0gbmV3IEFycmF5KHRoaXMubGVuZ3RoKTtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGRlc3Qud29yZHNbaV0gPSB0aGlzLndvcmRzW2ldO1xuICAgIH1cbiAgICBkZXN0Lmxlbmd0aCA9IHRoaXMubGVuZ3RoO1xuICAgIGRlc3QubmVnYXRpdmUgPSB0aGlzLm5lZ2F0aXZlO1xuICAgIGRlc3QucmVkID0gdGhpcy5yZWQ7XG4gIH07XG5cbiAgZnVuY3Rpb24gbW92ZSAoZGVzdCwgc3JjKSB7XG4gICAgZGVzdC53b3JkcyA9IHNyYy53b3JkcztcbiAgICBkZXN0Lmxlbmd0aCA9IHNyYy5sZW5ndGg7XG4gICAgZGVzdC5uZWdhdGl2ZSA9IHNyYy5uZWdhdGl2ZTtcbiAgICBkZXN0LnJlZCA9IHNyYy5yZWQ7XG4gIH1cblxuICBCTi5wcm90b3R5cGUuX21vdmUgPSBmdW5jdGlvbiBfbW92ZSAoZGVzdCkge1xuICAgIG1vdmUoZGVzdCwgdGhpcyk7XG4gIH07XG5cbiAgQk4ucHJvdG90eXBlLmNsb25lID0gZnVuY3Rpb24gY2xvbmUgKCkge1xuICAgIHZhciByID0gbmV3IEJOKG51bGwpO1xuICAgIHRoaXMuY29weShyKTtcbiAgICByZXR1cm4gcjtcbiAgfTtcblxuICBCTi5wcm90b3R5cGUuX2V4cGFuZCA9IGZ1bmN0aW9uIF9leHBhbmQgKHNpemUpIHtcbiAgICB3aGlsZSAodGhpcy5sZW5ndGggPCBzaXplKSB7XG4gICAgICB0aGlzLndvcmRzW3RoaXMubGVuZ3RoKytdID0gMDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH07XG5cbiAgLy8gUmVtb3ZlIGxlYWRpbmcgYDBgIGZyb20gYHRoaXNgXG4gIEJOLnByb3RvdHlwZS5fc3RyaXAgPSBmdW5jdGlvbiBzdHJpcCAoKSB7XG4gICAgd2hpbGUgKHRoaXMubGVuZ3RoID4gMSAmJiB0aGlzLndvcmRzW3RoaXMubGVuZ3RoIC0gMV0gPT09IDApIHtcbiAgICAgIHRoaXMubGVuZ3RoLS07XG4gICAgfVxuICAgIHJldHVybiB0aGlzLl9ub3JtU2lnbigpO1xuICB9O1xuXG4gIEJOLnByb3RvdHlwZS5fbm9ybVNpZ24gPSBmdW5jdGlvbiBfbm9ybVNpZ24gKCkge1xuICAgIC8vIC0wID0gMFxuICAgIGlmICh0aGlzLmxlbmd0aCA9PT0gMSAmJiB0aGlzLndvcmRzWzBdID09PSAwKSB7XG4gICAgICB0aGlzLm5lZ2F0aXZlID0gMDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH07XG5cbiAgLy8gQ2hlY2sgU3ltYm9sLmZvciBiZWNhdXNlIG5vdCBldmVyeXdoZXJlIHdoZXJlIFN5bWJvbCBkZWZpbmVkXG4gIC8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9HbG9iYWxfT2JqZWN0cy9TeW1ib2wjQnJvd3Nlcl9jb21wYXRpYmlsaXR5XG4gIGlmICh0eXBlb2YgU3ltYm9sICE9PSAndW5kZWZpbmVkJyAmJiB0eXBlb2YgU3ltYm9sLmZvciA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHRyeSB7XG4gICAgICBCTi5wcm90b3R5cGVbU3ltYm9sLmZvcignbm9kZWpzLnV0aWwuaW5zcGVjdC5jdXN0b20nKV0gPSBpbnNwZWN0O1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIEJOLnByb3RvdHlwZS5pbnNwZWN0ID0gaW5zcGVjdDtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgQk4ucHJvdG90eXBlLmluc3BlY3QgPSBpbnNwZWN0O1xuICB9XG5cbiAgZnVuY3Rpb24gaW5zcGVjdCAoKSB7XG4gICAgcmV0dXJuICh0aGlzLnJlZCA/ICc8Qk4tUjogJyA6ICc8Qk46ICcpICsgdGhpcy50b1N0cmluZygxNikgKyAnPic7XG4gIH1cblxuICAvKlxuXG4gIHZhciB6ZXJvcyA9IFtdO1xuICB2YXIgZ3JvdXBTaXplcyA9IFtdO1xuICB2YXIgZ3JvdXBCYXNlcyA9IFtdO1xuXG4gIHZhciBzID0gJyc7XG4gIHZhciBpID0gLTE7XG4gIHdoaWxlICgrK2kgPCBCTi53b3JkU2l6ZSkge1xuICAgIHplcm9zW2ldID0gcztcbiAgICBzICs9ICcwJztcbiAgfVxuICBncm91cFNpemVzWzBdID0gMDtcbiAgZ3JvdXBTaXplc1sxXSA9IDA7XG4gIGdyb3VwQmFzZXNbMF0gPSAwO1xuICBncm91cEJhc2VzWzFdID0gMDtcbiAgdmFyIGJhc2UgPSAyIC0gMTtcbiAgd2hpbGUgKCsrYmFzZSA8IDM2ICsgMSkge1xuICAgIHZhciBncm91cFNpemUgPSAwO1xuICAgIHZhciBncm91cEJhc2UgPSAxO1xuICAgIHdoaWxlIChncm91cEJhc2UgPCAoMSA8PCBCTi53b3JkU2l6ZSkgLyBiYXNlKSB7XG4gICAgICBncm91cEJhc2UgKj0gYmFzZTtcbiAgICAgIGdyb3VwU2l6ZSArPSAxO1xuICAgIH1cbiAgICBncm91cFNpemVzW2Jhc2VdID0gZ3JvdXBTaXplO1xuICAgIGdyb3VwQmFzZXNbYmFzZV0gPSBncm91cEJhc2U7XG4gIH1cblxuICAqL1xuXG4gIHZhciB6ZXJvcyA9IFtcbiAgICAnJyxcbiAgICAnMCcsXG4gICAgJzAwJyxcbiAgICAnMDAwJyxcbiAgICAnMDAwMCcsXG4gICAgJzAwMDAwJyxcbiAgICAnMDAwMDAwJyxcbiAgICAnMDAwMDAwMCcsXG4gICAgJzAwMDAwMDAwJyxcbiAgICAnMDAwMDAwMDAwJyxcbiAgICAnMDAwMDAwMDAwMCcsXG4gICAgJzAwMDAwMDAwMDAwJyxcbiAgICAnMDAwMDAwMDAwMDAwJyxcbiAgICAnMDAwMDAwMDAwMDAwMCcsXG4gICAgJzAwMDAwMDAwMDAwMDAwJyxcbiAgICAnMDAwMDAwMDAwMDAwMDAwJyxcbiAgICAnMDAwMDAwMDAwMDAwMDAwMCcsXG4gICAgJzAwMDAwMDAwMDAwMDAwMDAwJyxcbiAgICAnMDAwMDAwMDAwMDAwMDAwMDAwJyxcbiAgICAnMDAwMDAwMDAwMDAwMDAwMDAwMCcsXG4gICAgJzAwMDAwMDAwMDAwMDAwMDAwMDAwJyxcbiAgICAnMDAwMDAwMDAwMDAwMDAwMDAwMDAwJyxcbiAgICAnMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCcsXG4gICAgJzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwJyxcbiAgICAnMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwJyxcbiAgICAnMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCdcbiAgXTtcblxuICB2YXIgZ3JvdXBTaXplcyA9IFtcbiAgICAwLCAwLFxuICAgIDI1LCAxNiwgMTIsIDExLCAxMCwgOSwgOCxcbiAgICA4LCA3LCA3LCA3LCA3LCA2LCA2LFxuICAgIDYsIDYsIDYsIDYsIDYsIDUsIDUsXG4gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSxcbiAgICA1LCA1LCA1LCA1LCA1LCA1LCA1XG4gIF07XG5cbiAgdmFyIGdyb3VwQmFzZXMgPSBbXG4gICAgMCwgMCxcbiAgICAzMzU1NDQzMiwgNDMwNDY3MjEsIDE2Nzc3MjE2LCA0ODgyODEyNSwgNjA0NjYxNzYsIDQwMzUzNjA3LCAxNjc3NzIxNixcbiAgICA0MzA0NjcyMSwgMTAwMDAwMDAsIDE5NDg3MTcxLCAzNTgzMTgwOCwgNjI3NDg1MTcsIDc1Mjk1MzYsIDExMzkwNjI1LFxuICAgIDE2Nzc3MjE2LCAyNDEzNzU2OSwgMzQwMTIyMjQsIDQ3MDQ1ODgxLCA2NDAwMDAwMCwgNDA4NDEwMSwgNTE1MzYzMixcbiAgICA2NDM2MzQzLCA3OTYyNjI0LCA5NzY1NjI1LCAxMTg4MTM3NiwgMTQzNDg5MDcsIDE3MjEwMzY4LCAyMDUxMTE0OSxcbiAgICAyNDMwMDAwMCwgMjg2MjkxNTEsIDMzNTU0NDMyLCAzOTEzNTM5MywgNDU0MzU0MjQsIDUyNTIxODc1LCA2MDQ2NjE3NlxuICBdO1xuXG4gIEJOLnByb3RvdHlwZS50b1N0cmluZyA9IGZ1bmN0aW9uIHRvU3RyaW5nIChiYXNlLCBwYWRkaW5nKSB7XG4gICAgYmFzZSA9IGJhc2UgfHwgMTA7XG4gICAgcGFkZGluZyA9IHBhZGRpbmcgfCAwIHx8IDE7XG5cbiAgICB2YXIgb3V0O1xuICAgIGlmIChiYXNlID09PSAxNiB8fCBiYXNlID09PSAnaGV4Jykge1xuICAgICAgb3V0ID0gJyc7XG4gICAgICB2YXIgb2ZmID0gMDtcbiAgICAgIHZhciBjYXJyeSA9IDA7XG4gICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgdmFyIHcgPSB0aGlzLndvcmRzW2ldO1xuICAgICAgICB2YXIgd29yZCA9ICgoKHcgPDwgb2ZmKSB8IGNhcnJ5KSAmIDB4ZmZmZmZmKS50b1N0cmluZygxNik7XG4gICAgICAgIGNhcnJ5ID0gKHcgPj4+ICgyNCAtIG9mZikpICYgMHhmZmZmZmY7XG4gICAgICAgIG9mZiArPSAyO1xuICAgICAgICBpZiAob2ZmID49IDI2KSB7XG4gICAgICAgICAgb2ZmIC09IDI2O1xuICAgICAgICAgIGktLTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY2FycnkgIT09IDAgfHwgaSAhPT0gdGhpcy5sZW5ndGggLSAxKSB7XG4gICAgICAgICAgb3V0ID0gemVyb3NbNiAtIHdvcmQubGVuZ3RoXSArIHdvcmQgKyBvdXQ7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgb3V0ID0gd29yZCArIG91dDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKGNhcnJ5ICE9PSAwKSB7XG4gICAgICAgIG91dCA9IGNhcnJ5LnRvU3RyaW5nKDE2KSArIG91dDtcbiAgICAgIH1cbiAgICAgIHdoaWxlIChvdXQubGVuZ3RoICUgcGFkZGluZyAhPT0gMCkge1xuICAgICAgICBvdXQgPSAnMCcgKyBvdXQ7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5uZWdhdGl2ZSAhPT0gMCkge1xuICAgICAgICBvdXQgPSAnLScgKyBvdXQ7XG4gICAgICB9XG4gICAgICByZXR1cm4gb3V0O1xuICAgIH1cblxuICAgIGlmIChiYXNlID09PSAoYmFzZSB8IDApICYmIGJhc2UgPj0gMiAmJiBiYXNlIDw9IDM2KSB7XG4gICAgICAvLyB2YXIgZ3JvdXBTaXplID0gTWF0aC5mbG9vcihCTi53b3JkU2l6ZSAqIE1hdGguTE4yIC8gTWF0aC5sb2coYmFzZSkpO1xuICAgICAgdmFyIGdyb3VwU2l6ZSA9IGdyb3VwU2l6ZXNbYmFzZV07XG4gICAgICAvLyB2YXIgZ3JvdXBCYXNlID0gTWF0aC5wb3coYmFzZSwgZ3JvdXBTaXplKTtcbiAgICAgIHZhciBncm91cEJhc2UgPSBncm91cEJhc2VzW2Jhc2VdO1xuICAgICAgb3V0ID0gJyc7XG4gICAgICB2YXIgYyA9IHRoaXMuY2xvbmUoKTtcbiAgICAgIGMubmVnYXRpdmUgPSAwO1xuICAgICAgd2hpbGUgKCFjLmlzWmVybygpKSB7XG4gICAgICAgIHZhciByID0gYy5tb2Rybihncm91cEJhc2UpLnRvU3RyaW5nKGJhc2UpO1xuICAgICAgICBjID0gYy5pZGl2bihncm91cEJhc2UpO1xuXG4gICAgICAgIGlmICghYy5pc1plcm8oKSkge1xuICAgICAgICAgIG91dCA9IHplcm9zW2dyb3VwU2l6ZSAtIHIubGVuZ3RoXSArIHIgKyBvdXQ7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgb3V0ID0gciArIG91dDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKHRoaXMuaXNaZXJvKCkpIHtcbiAgICAgICAgb3V0ID0gJzAnICsgb3V0O1xuICAgICAgfVxuICAgICAgd2hpbGUgKG91dC5sZW5ndGggJSBwYWRkaW5nICE9PSAwKSB7XG4gICAgICAgIG91dCA9ICcwJyArIG91dDtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLm5lZ2F0aXZlICE9PSAwKSB7XG4gICAgICAgIG91dCA9ICctJyArIG91dDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBvdXQ7XG4gICAgfVxuXG4gICAgYXNzZXJ0KGZhbHNlLCAnQmFzZSBzaG91bGQgYmUgYmV0d2VlbiAyIGFuZCAzNicpO1xuICB9O1xuXG4gIEJOLnByb3RvdHlwZS50b051bWJlciA9IGZ1bmN0aW9uIHRvTnVtYmVyICgpIHtcbiAgICB2YXIgcmV0ID0gdGhpcy53b3Jkc1swXTtcbiAgICBpZiAodGhpcy5sZW5ndGggPT09IDIpIHtcbiAgICAgIHJldCArPSB0aGlzLndvcmRzWzFdICogMHg0MDAwMDAwO1xuICAgIH0gZWxzZSBpZiAodGhpcy5sZW5ndGggPT09IDMgJiYgdGhpcy53b3Jkc1syXSA9PT0gMHgwMSkge1xuICAgICAgLy8gTk9URTogYXQgdGhpcyBzdGFnZSBpdCBpcyBrbm93biB0aGF0IHRoZSB0b3AgYml0IGlzIHNldFxuICAgICAgcmV0ICs9IDB4MTAwMDAwMDAwMDAwMDAgKyAodGhpcy53b3Jkc1sxXSAqIDB4NDAwMDAwMCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmxlbmd0aCA+IDIpIHtcbiAgICAgIGFzc2VydChmYWxzZSwgJ051bWJlciBjYW4gb25seSBzYWZlbHkgc3RvcmUgdXAgdG8gNTMgYml0cycpO1xuICAgIH1cbiAgICByZXR1cm4gKHRoaXMubmVnYXRpdmUgIT09IDApID8gLXJldCA6IHJldDtcbiAgfTtcblxuICBCTi5wcm90b3R5cGUudG9KU09OID0gZnVuY3Rpb24gdG9KU09OICgpIHtcbiAgICByZXR1cm4gdGhpcy50b1N0cmluZygxNiwgMik7XG4gIH07XG5cbiAgaWYgKEJ1ZmZlcikge1xuICAgIEJOLnByb3RvdHlwZS50b0J1ZmZlciA9IGZ1bmN0aW9uIHRvQnVmZmVyIChlbmRpYW4sIGxlbmd0aCkge1xuICAgICAgcmV0dXJuIHRoaXMudG9BcnJheUxpa2UoQnVmZmVyLCBlbmRpYW4sIGxlbmd0aCk7XG4gICAgfTtcbiAgfVxuXG4gIEJOLnByb3RvdHlwZS50b0FycmF5ID0gZnVuY3Rpb24gdG9BcnJheSAoZW5kaWFuLCBsZW5ndGgpIHtcbiAgICByZXR1cm4gdGhpcy50b0FycmF5TGlrZShBcnJheSwgZW5kaWFuLCBsZW5ndGgpO1xuICB9O1xuXG4gIHZhciBhbGxvY2F0ZSA9IGZ1bmN0aW9uIGFsbG9jYXRlIChBcnJheVR5cGUsIHNpemUpIHtcbiAgICBpZiAoQXJyYXlUeXBlLmFsbG9jVW5zYWZlKSB7XG4gICAgICByZXR1cm4gQXJyYXlUeXBlLmFsbG9jVW5zYWZlKHNpemUpO1xuICAgIH1cbiAgICByZXR1cm4gbmV3IEFycmF5VHlwZShzaXplKTtcbiAgfTtcblxuICBCTi5wcm90b3R5cGUudG9BcnJheUxpa2UgPSBmdW5jdGlvbiB0b0FycmF5TGlrZSAoQXJyYXlUeXBlLCBlbmRpYW4sIGxlbmd0aCkge1xuICAgIHRoaXMuX3N0cmlwKCk7XG5cbiAgICB2YXIgYnl0ZUxlbmd0aCA9IHRoaXMuYnl0ZUxlbmd0aCgpO1xuICAgIHZhciByZXFMZW5ndGggPSBsZW5ndGggfHwgTWF0aC5tYXgoMSwgYnl0ZUxlbmd0aCk7XG4gICAgYXNzZXJ0KGJ5dGVMZW5ndGggPD0gcmVxTGVuZ3RoLCAnYnl0ZSBhcnJheSBsb25nZXIgdGhhbiBkZXNpcmVkIGxlbmd0aCcpO1xuICAgIGFzc2VydChyZXFMZW5ndGggPiAwLCAnUmVxdWVzdGVkIGFycmF5IGxlbmd0aCA8PSAwJyk7XG5cbiAgICB2YXIgcmVzID0gYWxsb2NhdGUoQXJyYXlUeXBlLCByZXFMZW5ndGgpO1xuICAgIHZhciBwb3N0Zml4ID0gZW5kaWFuID09PSAnbGUnID8gJ0xFJyA6ICdCRSc7XG4gICAgdGhpc1snX3RvQXJyYXlMaWtlJyArIHBvc3RmaXhdKHJlcywgYnl0ZUxlbmd0aCk7XG4gICAgcmV0dXJuIHJlcztcbiAgfTtcblxuICBCTi5wcm90b3R5cGUuX3RvQXJyYXlMaWtlTEUgPSBmdW5jdGlvbiBfdG9BcnJheUxpa2VMRSAocmVzLCBieXRlTGVuZ3RoKSB7XG4gICAgdmFyIHBvc2l0aW9uID0gMDtcbiAgICB2YXIgY2FycnkgPSAwO1xuXG4gICAgZm9yICh2YXIgaSA9IDAsIHNoaWZ0ID0gMDsgaSA8IHRoaXMubGVuZ3RoOyBpKyspIHtcbiAgICAgIHZhciB3b3JkID0gKHRoaXMud29yZHNbaV0gPDwgc2hpZnQpIHwgY2Fycnk7XG5cbiAgICAgIHJlc1twb3NpdGlvbisrXSA9IHdvcmQgJiAweGZmO1xuICAgICAgaWYgKHBvc2l0aW9uIDwgcmVzLmxlbmd0aCkge1xuICAgICAgICByZXNbcG9zaXRpb24rK10gPSAod29yZCA+PiA4KSAmIDB4ZmY7XG4gICAgICB9XG4gICAgICBpZiAocG9zaXRpb24gPCByZXMubGVuZ3RoKSB7XG4gICAgICAgIHJlc1twb3NpdGlvbisrXSA9ICh3b3JkID4+IDE2KSAmIDB4ZmY7XG4gICAgICB9XG5cbiAgICAgIGlmIChzaGlmdCA9PT0gNikge1xuICAgICAgICBpZiAocG9zaXRpb24gPCByZXMubGVuZ3RoKSB7XG4gICAgICAgICAgcmVzW3Bvc2l0aW9uKytdID0gKHdvcmQgPj4gMjQpICYgMHhmZjtcbiAgICAgICAgfVxuICAgICAgICBjYXJyeSA9IDA7XG4gICAgICAgIHNoaWZ0ID0gMDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNhcnJ5ID0gd29yZCA+Pj4gMjQ7XG4gICAgICAgIHNoaWZ0ICs9IDI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHBvc2l0aW9uIDwgcmVzLmxlbmd0aCkge1xuICAgICAgcmVzW3Bvc2l0aW9uKytdID0gY2Fycnk7XG5cbiAgICAgIHdoaWxlIChwb3NpdGlvbiA8IHJlcy5sZW5ndGgpIHtcbiAgICAgICAgcmVzW3Bvc2l0aW9uKytdID0gMDtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgQk4ucHJvdG90eXBlLl90b0FycmF5TGlrZUJFID0gZnVuY3Rpb24gX3RvQXJyYXlMaWtlQkUgKHJlcywgYnl0ZUxlbmd0aCkge1xuICAgIHZhciBwb3NpdGlvbiA9IHJlcy5sZW5ndGggLSAxO1xuICAgIHZhciBjYXJyeSA9IDA7XG5cbiAgICBmb3IgKHZhciBpID0gMCwgc2hpZnQgPSAwOyBpIDwgdGhpcy5sZW5ndGg7IGkrKykge1xuICAgICAgdmFyIHdvcmQgPSAodGhpcy53b3Jkc1tpXSA8PCBzaGlmdCkgfCBjYXJyeTtcblxuICAgICAgcmVzW3Bvc2l0aW9uLS1dID0gd29yZCAmIDB4ZmY7XG4gICAgICBpZiAocG9zaXRpb24gPj0gMCkge1xuICAgICAgICByZXNbcG9zaXRpb24tLV0gPSAod29yZCA+PiA4KSAmIDB4ZmY7XG4gICAgICB9XG4gICAgICBpZiAocG9zaXRpb24gPj0gMCkge1xuICAgICAgICByZXNbcG9zaXRpb24tLV0gPSAod29yZCA+PiAxNikgJiAweGZmO1xuICAgICAgfVxuXG4gICAgICBpZiAoc2hpZnQgPT09IDYpIHtcbiAgICAgICAgaWYgKHBvc2l0aW9uID49IDApIHtcbiAgICAgICAgICByZXNbcG9zaXRpb24tLV0gPSAod29yZCA+PiAyNCkgJiAweGZmO1xuICAgICAgICB9XG4gICAgICAgIGNhcnJ5ID0gMDtcbiAgICAgICAgc2hpZnQgPSAwO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY2FycnkgPSB3b3JkID4+PiAyNDtcbiAgICAgICAgc2hpZnQgKz0gMjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAocG9zaXRpb24gPj0gMCkge1xuICAgICAgcmVzW3Bvc2l0aW9uLS1dID0gY2Fycnk7XG5cbiAgICAgIHdoaWxlIChwb3NpdGlvbiA+PSAwKSB7XG4gICAgICAgIHJlc1twb3NpdGlvbi0tXSA9IDA7XG4gICAgICB9XG4gICAgfVxuICB9O1xuXG4gIGlmIChNYXRoLmNsejMyKSB7XG4gICAgQk4ucHJvdG90eXBlLl9jb3VudEJpdHMgPSBmdW5jdGlvbiBfY291bnRCaXRzICh3KSB7XG4gICAgICByZXR1cm4gMzIgLSBNYXRoLmNsejMyKHcpO1xuICAgIH07XG4gIH0gZWxzZSB7XG4gICAgQk4ucHJvdG90eXBlLl9jb3VudEJpdHMgPSBmdW5jdGlvbiBfY291bnRCaXRzICh3KSB7XG4gICAgICB2YXIgdCA9IHc7XG4gICAgICB2YXIgciA9IDA7XG4gICAgICBpZiAodCA+PSAweDEwMDApIHtcbiAgICAgICAgciArPSAxMztcbiAgICAgICAgdCA+Pj49IDEzO1xuICAgICAgfVxuICAgICAgaWYgKHQgPj0gMHg0MCkge1xuICAgICAgICByICs9IDc7XG4gICAgICAgIHQgPj4+PSA3O1xuICAgICAgfVxuICAgICAgaWYgKHQgPj0gMHg4KSB7XG4gICAgICAgIHIgKz0gNDtcbiAgICAgICAgdCA+Pj49IDQ7XG4gICAgICB9XG4gICAgICBpZiAodCA+PSAweDAyKSB7XG4gICAgICAgIHIgKz0gMjtcbiAgICAgICAgdCA+Pj49IDI7XG4gICAgICB9XG4gICAgICByZXR1cm4gciArIHQ7XG4gICAgfTtcbiAgfVxuXG4gIEJOLnByb3RvdHlwZS5femVyb0JpdHMgPSBmdW5jdGlvbiBfemVyb0JpdHMgKHcpIHtcbiAgICAvLyBTaG9ydC1jdXRcbiAgICBpZiAodyA9PT0gMCkgcmV0dXJuIDI2O1xuXG4gICAgdmFyIHQgPSB3O1xuICAgIHZhciByID0gMDtcbiAgICBpZiAoKHQgJiAweDFmZmYpID09PSAwKSB7XG4gICAgICByICs9IDEzO1xuICAgICAgdCA+Pj49IDEzO1xuICAgIH1cbiAgICBpZiAoKHQgJiAweDdmKSA9PT0gMCkge1xuICAgICAgciArPSA3O1xuICAgICAgdCA+Pj49IDc7XG4gICAgfVxuICAgIGlmICgodCAmIDB4ZikgPT09IDApIHtcbiAgICAgIHIgKz0gNDtcbiAgICAgIHQgPj4+PSA0O1xuICAgIH1cbiAgICBpZiAoKHQgJiAweDMpID09PSAwKSB7XG4gICAgICByICs9IDI7XG4gICAgICB0ID4+Pj0gMjtcbiAgICB9XG4gICAgaWYgKCh0ICYgMHgxKSA9PT0gMCkge1xuICAgICAgcisrO1xuICAgIH1cbiAgICByZXR1cm4gcjtcbiAgfTtcblxuICAvLyBSZXR1cm4gbnVtYmVyIG9mIHVzZWQgYml0cyBpbiBhIEJOXG4gIEJOLnByb3RvdHlwZS5iaXRMZW5ndGggPSBmdW5jdGlvbiBiaXRMZW5ndGggKCkge1xuICAgIHZhciB3ID0gdGhpcy53b3Jkc1t0aGlzLmxlbmd0aCAtIDFdO1xuICAgIHZhciBoaSA9IHRoaXMuX2NvdW50Qml0cyh3KTtcbiAgICByZXR1cm4gKHRoaXMubGVuZ3RoIC0gMSkgKiAyNiArIGhpO1xuICB9O1xuXG4gIGZ1bmN0aW9uIHRvQml0QXJyYXkgKG51bSkge1xuICAgIHZhciB3ID0gbmV3IEFycmF5KG51bS5iaXRMZW5ndGgoKSk7XG5cbiAgICBmb3IgKHZhciBiaXQgPSAwOyBiaXQgPCB3Lmxlbmd0aDsgYml0KyspIHtcbiAgICAgIHZhciBvZmYgPSAoYml0IC8gMjYpIHwgMDtcbiAgICAgIHZhciB3Yml0ID0gYml0ICUgMjY7XG5cbiAgICAgIHdbYml0XSA9IChudW0ud29yZHNbb2ZmXSA+Pj4gd2JpdCkgJiAweDAxO1xuICAgIH1cblxuICAgIHJldHVybiB3O1xuICB9XG5cbiAgLy8gTnVtYmVyIG9mIHRyYWlsaW5nIHplcm8gYml0c1xuICBCTi5wcm90b3R5cGUuemVyb0JpdHMgPSBmdW5jdGlvbiB6ZXJvQml0cyAoKSB7XG4gICAgaWYgKHRoaXMuaXNaZXJvKCkpIHJldHVybiAwO1xuXG4gICAgdmFyIHIgPSAwO1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5sZW5ndGg7IGkrKykge1xuICAgICAgdmFyIGIgPSB0aGlzLl96ZXJvQml0cyh0aGlzLndvcmRzW2ldKTtcbiAgICAgIHIgKz0gYjtcbiAgICAgIGlmIChiICE9PSAyNikgYnJlYWs7XG4gICAgfVxuICAgIHJldHVybiByO1xuICB9O1xuXG4gIEJOLnByb3RvdHlwZS5ieXRlTGVuZ3RoID0gZnVuY3Rpb24gYnl0ZUxlbmd0aCAoKSB7XG4gICAgcmV0dXJuIE1hdGguY2VpbCh0aGlzLmJpdExlbmd0aCgpIC8gOCk7XG4gIH07XG5cbiAgQk4ucHJvdG90eXBlLnRvVHdvcyA9IGZ1bmN0aW9uIHRvVHdvcyAod2lkdGgpIHtcbiAgICBpZiAodGhpcy5uZWdhdGl2ZSAhPT0gMCkge1xuICAgICAgcmV0dXJuIHRoaXMuYWJzKCkuaW5vdG4od2lkdGgpLmlhZGRuKDEpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5jbG9uZSgpO1xuICB9O1xuXG4gIEJOLnByb3RvdHlwZS5mcm9tVHdvcyA9IGZ1bmN0aW9uIGZyb21Ud29zICh3aWR0aCkge1xuICAgIGlmICh0aGlzLnRlc3RuKHdpZHRoIC0gMSkpIHtcbiAgICAgIHJldHVybiB0aGlzLm5vdG4od2lkdGgpLmlhZGRuKDEpLmluZWcoKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuY2xvbmUoKTtcbiAgfTtcblxuICBCTi5wcm90b3R5cGUuaXNOZWcgPSBmdW5jdGlvbiBpc05lZyAoKSB7XG4gICAgcmV0dXJuIHRoaXMubmVnYXRpdmUgIT09IDA7XG4gIH07XG5cbiAgLy8gUmV0dXJuIG5lZ2F0aXZlIGNsb25lIG9mIGB0aGlzYFxuICBCTi5wcm90b3R5cGUubmVnID0gZnVuY3Rpb24gbmVnICgpIHtcbiAgICByZXR1cm4gdGhpcy5jbG9uZSgpLmluZWcoKTtcbiAgfTtcblxuICBCTi5wcm90b3R5cGUuaW5lZyA9IGZ1bmN0aW9uIGluZWcgKCkge1xuICAgIGlmICghdGhpcy5pc1plcm8oKSkge1xuICAgICAgdGhpcy5uZWdhdGl2ZSBePSAxO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzO1xuICB9O1xuXG4gIC8vIE9yIGBudW1gIHdpdGggYHRoaXNgIGluLXBsYWNlXG4gIEJOLnByb3RvdHlwZS5pdW9yID0gZnVuY3Rpb24gaXVvciAobnVtKSB7XG4gICAgd2hpbGUgKHRoaXMubGVuZ3RoIDwgbnVtLmxlbmd0aCkge1xuICAgICAgdGhpcy53b3Jkc1t0aGlzLmxlbmd0aCsrXSA9IDA7XG4gICAgfVxuXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBudW0ubGVuZ3RoOyBpKyspIHtcbiAgICAgIHRoaXMud29yZHNbaV0gPSB0aGlzLndvcmRzW2ldIHwgbnVtLndvcmRzW2ldO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9zdHJpcCgpO1xuICB9O1xuXG4gIEJOLnByb3RvdHlwZS5pb3IgPSBmdW5jdGlvbiBpb3IgKG51bSkge1xuICAgIGFzc2VydCgodGhpcy5uZWdhdGl2ZSB8IG51bS5uZWdhdGl2ZSkgPT09IDApO1xuICAgIHJldHVybiB0aGlzLml1b3IobnVtKTtcbiAgfTtcblxuICAvLyBPciBgbnVtYCB3aXRoIGB0aGlzYFxuICBCTi5wcm90b3R5cGUub3IgPSBmdW5jdGlvbiBvciAobnVtKSB7XG4gICAgaWYgKHRoaXMubGVuZ3RoID4gbnVtLmxlbmd0aCkgcmV0dXJuIHRoaXMuY2xvbmUoKS5pb3IobnVtKTtcbiAgICByZXR1cm4gbnVtLmNsb25lKCkuaW9yKHRoaXMpO1xuICB9O1xuXG4gIEJOLnByb3RvdHlwZS51b3IgPSBmdW5jdGlvbiB1b3IgKG51bSkge1xuICAgIGlmICh0aGlzLmxlbmd0aCA+IG51bS5sZW5ndGgpIHJldHVybiB0aGlzLmNsb25lKCkuaXVvcihudW0pO1xuICAgIHJldHVybiBudW0uY2xvbmUoKS5pdW9yKHRoaXMpO1xuICB9O1xuXG4gIC8vIEFuZCBgbnVtYCB3aXRoIGB0aGlzYCBpbi1wbGFjZVxuICBCTi5wcm90b3R5cGUuaXVhbmQgPSBmdW5jdGlvbiBpdWFuZCAobnVtKSB7XG4gICAgLy8gYiA9IG1pbi1sZW5ndGgobnVtLCB0aGlzKVxuICAgIHZhciBiO1xuICAgIGlmICh0aGlzLmxlbmd0aCA+IG51bS5sZW5ndGgpIHtcbiAgICAgIGIgPSBudW07XG4gICAgfSBlbHNlIHtcbiAgICAgIGIgPSB0aGlzO1xuICAgIH1cblxuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYi5sZW5ndGg7IGkrKykge1xuICAgICAgdGhpcy53b3Jkc1tpXSA9IHRoaXMud29yZHNbaV0gJiBudW0ud29yZHNbaV07XG4gICAgfVxuXG4gICAgdGhpcy5sZW5ndGggPSBiLmxlbmd0aDtcblxuICAgIHJldHVybiB0aGlzLl9zdHJpcCgpO1xuICB9O1xuXG4gIEJOLnByb3RvdHlwZS5pYW5kID0gZnVuY3Rpb24gaWFuZCAobnVtKSB7XG4gICAgYXNzZXJ0KCh0aGlzLm5lZ2F0aXZlIHwgbnVtLm5lZ2F0aXZlKSA9PT0gMCk7XG4gICAgcmV0dXJuIHRoaXMuaXVhbmQobnVtKTtcbiAgfTtcblxuICAvLyBBbmQgYG51bWAgd2l0aCBgdGhpc2BcbiAgQk4ucHJvdG90eXBlLmFuZCA9IGZ1bmN0aW9uIGFuZCAobnVtKSB7XG4gICAgaWYgKHRoaXMubGVuZ3RoID4gbnVtLmxlbmd0aCkgcmV0dXJuIHRoaXMuY2xvbmUoKS5pYW5kKG51bSk7XG4gICAgcmV0dXJuIG51bS5jbG9uZSgpLmlhbmQodGhpcyk7XG4gIH07XG5cbiAgQk4ucHJvdG90eXBlLnVhbmQgPSBmdW5jdGlvbiB1YW5kIChudW0pIHtcbiAgICBpZiAodGhpcy5sZW5ndGggPiBudW0ubGVuZ3RoKSByZXR1cm4gdGhpcy5jbG9uZSgpLml1YW5kKG51bSk7XG4gICAgcmV0dXJuIG51bS5jbG9uZSgpLml1YW5kKHRoaXMpO1xuICB9O1xuXG4gIC8vIFhvciBgbnVtYCB3aXRoIGB0aGlzYCBpbi1wbGFjZVxuICBCTi5wcm90b3R5cGUuaXV4b3IgPSBmdW5jdGlvbiBpdXhvciAobnVtKSB7XG4gICAgLy8gYS5sZW5ndGggPiBiLmxlbmd0aFxuICAgIHZhciBhO1xuICAgIHZhciBiO1xuICAgIGlmICh0aGlzLmxlbmd0aCA+IG51bS5sZW5ndGgpIHtcbiAgICAgIGEgPSB0aGlzO1xuICAgICAgYiA9IG51bTtcbiAgICB9IGVsc2Uge1xuICAgICAgYSA9IG51bTtcbiAgICAgIGIgPSB0aGlzO1xuICAgIH1cblxuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYi5sZW5ndGg7IGkrKykge1xuICAgICAgdGhpcy53b3Jkc1tpXSA9IGEud29yZHNbaV0gXiBiLndvcmRzW2ldO1xuICAgIH1cblxuICAgIGlmICh0aGlzICE9PSBhKSB7XG4gICAgICBmb3IgKDsgaSA8IGEubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgdGhpcy53b3Jkc1tpXSA9IGEud29yZHNbaV07XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5sZW5ndGggPSBhLmxlbmd0aDtcblxuICAgIHJldHVybiB0aGlzLl9zdHJpcCgpO1xuICB9O1xuXG4gIEJOLnByb3RvdHlwZS5peG9yID0gZnVuY3Rpb24gaXhvciAobnVtKSB7XG4gICAgYXNzZXJ0KCh0aGlzLm5lZ2F0aXZlIHwgbnVtLm5lZ2F0aXZlKSA9PT0gMCk7XG4gICAgcmV0dXJuIHRoaXMuaXV4b3IobnVtKTtcbiAgfTtcblxuICAvLyBYb3IgYG51bWAgd2l0aCBgdGhpc2BcbiAgQk4ucHJvdG90eXBlLnhvciA9IGZ1bmN0aW9uIHhvciAobnVtKSB7XG4gICAgaWYgKHRoaXMubGVuZ3RoID4gbnVtLmxlbmd0aCkgcmV0dXJuIHRoaXMuY2xvbmUoKS5peG9yKG51bSk7XG4gICAgcmV0dXJuIG51bS5jbG9uZSgpLml4b3IodGhpcyk7XG4gIH07XG5cbiAgQk4ucHJvdG90eXBlLnV4b3IgPSBmdW5jdGlvbiB1eG9yIChudW0pIHtcbiAgICBpZiAodGhpcy5sZW5ndGggPiBudW0ubGVuZ3RoKSByZXR1cm4gdGhpcy5jbG9uZSgpLml1eG9yKG51bSk7XG4gICAgcmV0dXJuIG51bS5jbG9uZSgpLml1eG9yKHRoaXMpO1xuICB9O1xuXG4gIC8vIE5vdCBgYHRoaXNgYCB3aXRoIGBgd2lkdGhgYCBiaXR3aWR0aFxuICBCTi5wcm90b3R5cGUuaW5vdG4gPSBmdW5jdGlvbiBpbm90biAod2lkdGgpIHtcbiAgICBhc3NlcnQodHlwZW9mIHdpZHRoID09PSAnbnVtYmVyJyAmJiB3aWR0aCA+PSAwKTtcblxuICAgIHZhciBieXRlc05lZWRlZCA9IE1hdGguY2VpbCh3aWR0aCAvIDI2KSB8IDA7XG4gICAgdmFyIGJpdHNMZWZ0ID0gd2lkdGggJSAyNjtcblxuICAgIC8vIEV4dGVuZCB0aGUgYnVmZmVyIHdpdGggbGVhZGluZyB6ZXJvZXNcbiAgICB0aGlzLl9leHBhbmQoYnl0ZXNOZWVkZWQpO1xuXG4gICAgaWYgKGJpdHNMZWZ0ID4gMCkge1xuICAgICAgYnl0ZXNOZWVkZWQtLTtcbiAgICB9XG5cbiAgICAvLyBIYW5kbGUgY29tcGxldGUgd29yZHNcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGJ5dGVzTmVlZGVkOyBpKyspIHtcbiAgICAgIHRoaXMud29yZHNbaV0gPSB+dGhpcy53b3Jkc1tpXSAmIDB4M2ZmZmZmZjtcbiAgICB9XG5cbiAgICAvLyBIYW5kbGUgdGhlIHJlc2lkdWVcbiAgICBpZiAoYml0c0xlZnQgPiAwKSB7XG4gICAgICB0aGlzLndvcmRzW2ldID0gfnRoaXMud29yZHNbaV0gJiAoMHgzZmZmZmZmID4+ICgyNiAtIGJpdHNMZWZ0KSk7XG4gICAgfVxuXG4gICAgLy8gQW5kIHJlbW92ZSBsZWFkaW5nIHplcm9lc1xuICAgIHJldHVybiB0aGlzLl9zdHJpcCgpO1xuICB9O1xuXG4gIEJOLnByb3RvdHlwZS5ub3RuID0gZnVuY3Rpb24gbm90biAod2lkdGgpIHtcbiAgICByZXR1cm4gdGhpcy5jbG9uZSgpLmlub3RuKHdpZHRoKTtcbiAgfTtcblxuICAvLyBTZXQgYGJpdGAgb2YgYHRoaXNgXG4gIEJOLnByb3RvdHlwZS5zZXRuID0gZnVuY3Rpb24gc2V0biAoYml0LCB2YWwpIHtcbiAgICBhc3NlcnQodHlwZW9mIGJpdCA9PT0gJ251bWJlcicgJiYgYml0ID49IDApO1xuXG4gICAgdmFyIG9mZiA9IChiaXQgLyAyNikgfCAwO1xuICAgIHZhciB3Yml0ID0gYml0ICUgMjY7XG5cbiAgICB0aGlzLl9leHBhbmQob2ZmICsgMSk7XG5cbiAgICBpZiAodmFsKSB7XG4gICAgICB0aGlzLndvcmRzW29mZl0gPSB0aGlzLndvcmRzW29mZl0gfCAoMSA8PCB3Yml0KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy53b3Jkc1tvZmZdID0gdGhpcy53b3Jkc1tvZmZdICYgfigxIDw8IHdiaXQpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9zdHJpcCgpO1xuICB9O1xuXG4gIC8vIEFkZCBgbnVtYCB0byBgdGhpc2AgaW4tcGxhY2VcbiAgQk4ucHJvdG90eXBlLmlhZGQgPSBmdW5jdGlvbiBpYWRkIChudW0pIHtcbiAgICB2YXIgcjtcblxuICAgIC8vIG5lZ2F0aXZlICsgcG9zaXRpdmVcbiAgICBpZiAodGhpcy5uZWdhdGl2ZSAhPT0gMCAmJiBudW0ubmVnYXRpdmUgPT09IDApIHtcbiAgICAgIHRoaXMubmVnYXRpdmUgPSAwO1xuICAgICAgciA9IHRoaXMuaXN1YihudW0pO1xuICAgICAgdGhpcy5uZWdhdGl2ZSBePSAxO1xuICAgICAgcmV0dXJuIHRoaXMuX25vcm1TaWduKCk7XG5cbiAgICAvLyBwb3NpdGl2ZSArIG5lZ2F0aXZlXG4gICAgfSBlbHNlIGlmICh0aGlzLm5lZ2F0aXZlID09PSAwICYmIG51bS5uZWdhdGl2ZSAhPT0gMCkge1xuICAgICAgbnVtLm5lZ2F0aXZlID0gMDtcbiAgICAgIHIgPSB0aGlzLmlzdWIobnVtKTtcbiAgICAgIG51bS5uZWdhdGl2ZSA9IDE7XG4gICAgICByZXR1cm4gci5fbm9ybVNpZ24oKTtcbiAgICB9XG5cbiAgICAvLyBhLmxlbmd0aCA+IGIubGVuZ3RoXG4gICAgdmFyIGEsIGI7XG4gICAgaWYgKHRoaXMubGVuZ3RoID4gbnVtLmxlbmd0aCkge1xuICAgICAgYSA9IHRoaXM7XG4gICAgICBiID0gbnVtO1xuICAgIH0gZWxzZSB7XG4gICAgICBhID0gbnVtO1xuICAgICAgYiA9IHRoaXM7XG4gICAgfVxuXG4gICAgdmFyIGNhcnJ5ID0gMDtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGIubGVuZ3RoOyBpKyspIHtcbiAgICAgIHIgPSAoYS53b3Jkc1tpXSB8IDApICsgKGIud29yZHNbaV0gfCAwKSArIGNhcnJ5O1xuICAgICAgdGhpcy53b3Jkc1tpXSA9IHIgJiAweDNmZmZmZmY7XG4gICAgICBjYXJyeSA9IHIgPj4+IDI2O1xuICAgIH1cbiAgICBmb3IgKDsgY2FycnkgIT09IDAgJiYgaSA8IGEubGVuZ3RoOyBpKyspIHtcbiAgICAgIHIgPSAoYS53b3Jkc1tpXSB8IDApICsgY2Fycnk7XG4gICAgICB0aGlzLndvcmRzW2ldID0gciAmIDB4M2ZmZmZmZjtcbiAgICAgIGNhcnJ5ID0gciA+Pj4gMjY7XG4gICAgfVxuXG4gICAgdGhpcy5sZW5ndGggPSBhLmxlbmd0aDtcbiAgICBpZiAoY2FycnkgIT09IDApIHtcbiAgICAgIHRoaXMud29yZHNbdGhpcy5sZW5ndGhdID0gY2Fycnk7XG4gICAgICB0aGlzLmxlbmd0aCsrO1xuICAgIC8vIENvcHkgdGhlIHJlc3Qgb2YgdGhlIHdvcmRzXG4gICAgfSBlbHNlIGlmIChhICE9PSB0aGlzKSB7XG4gICAgICBmb3IgKDsgaSA8IGEubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgdGhpcy53b3Jkc1tpXSA9IGEud29yZHNbaV07XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXM7XG4gIH07XG5cbiAgLy8gQWRkIGBudW1gIHRvIGB0aGlzYFxuICBCTi5wcm90b3R5cGUuYWRkID0gZnVuY3Rpb24gYWRkIChudW0pIHtcbiAgICB2YXIgcmVzO1xuICAgIGlmIChudW0ubmVnYXRpdmUgIT09IDAgJiYgdGhpcy5uZWdhdGl2ZSA9PT0gMCkge1xuICAgICAgbnVtLm5lZ2F0aXZlID0gMDtcbiAgICAgIHJlcyA9IHRoaXMuc3ViKG51bSk7XG4gICAgICBudW0ubmVnYXRpdmUgXj0gMTtcbiAgICAgIHJldHVybiByZXM7XG4gICAgfSBlbHNlIGlmIChudW0ubmVnYXRpdmUgPT09IDAgJiYgdGhpcy5uZWdhdGl2ZSAhPT0gMCkge1xuICAgICAgdGhpcy5uZWdhdGl2ZSA9IDA7XG4gICAgICByZXMgPSBudW0uc3ViKHRoaXMpO1xuICAgICAgdGhpcy5uZWdhdGl2ZSA9IDE7XG4gICAgICByZXR1cm4gcmVzO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmxlbmd0aCA+IG51bS5sZW5ndGgpIHJldHVybiB0aGlzLmNsb25lKCkuaWFkZChudW0pO1xuXG4gICAgcmV0dXJuIG51bS5jbG9uZSgpLmlhZGQodGhpcyk7XG4gIH07XG5cbiAgLy8gU3VidHJhY3QgYG51bWAgZnJvbSBgdGhpc2AgaW4tcGxhY2VcbiAgQk4ucHJvdG90eXBlLmlzdWIgPSBmdW5jdGlvbiBpc3ViIChudW0pIHtcbiAgICAvLyB0aGlzIC0gKC1udW0pID0gdGhpcyArIG51bVxuICAgIGlmIChudW0ubmVnYXRpdmUgIT09IDApIHtcbiAgICAgIG51bS5uZWdhdGl2ZSA9IDA7XG4gICAgICB2YXIgciA9IHRoaXMuaWFkZChudW0pO1xuICAgICAgbnVtLm5lZ2F0aXZlID0gMTtcbiAgICAgIHJldHVybiByLl9ub3JtU2lnbigpO1xuXG4gICAgLy8gLXRoaXMgLSBudW0gPSAtKHRoaXMgKyBudW0pXG4gICAgfSBlbHNlIGlmICh0aGlzLm5lZ2F0aXZlICE9PSAwKSB7XG4gICAgICB0aGlzLm5lZ2F0aXZlID0gMDtcbiAgICAgIHRoaXMuaWFkZChudW0pO1xuICAgICAgdGhpcy5uZWdhdGl2ZSA9IDE7XG4gICAgICByZXR1cm4gdGhpcy5fbm9ybVNpZ24oKTtcbiAgICB9XG5cbiAgICAvLyBBdCB0aGlzIHBvaW50IGJvdGggbnVtYmVycyBhcmUgcG9zaXRpdmVcbiAgICB2YXIgY21wID0gdGhpcy5jbXAobnVtKTtcblxuICAgIC8vIE9wdGltaXphdGlvbiAtIHplcm9pZnlcbiAgICBpZiAoY21wID09PSAwKSB7XG4gICAgICB0aGlzLm5lZ2F0aXZlID0gMDtcbiAgICAgIHRoaXMubGVuZ3RoID0gMTtcbiAgICAgIHRoaXMud29yZHNbMF0gPSAwO1xuICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgLy8gYSA+IGJcbiAgICB2YXIgYSwgYjtcbiAgICBpZiAoY21wID4gMCkge1xuICAgICAgYSA9IHRoaXM7XG4gICAgICBiID0gbnVtO1xuICAgIH0gZWxzZSB7XG4gICAgICBhID0gbnVtO1xuICAgICAgYiA9IHRoaXM7XG4gICAgfVxuXG4gICAgdmFyIGNhcnJ5ID0gMDtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGIubGVuZ3RoOyBpKyspIHtcbiAgICAgIHIgPSAoYS53b3Jkc1tpXSB8IDApIC0gKGIud29yZHNbaV0gfCAwKSArIGNhcnJ5O1xuICAgICAgY2FycnkgPSByID4+IDI2O1xuICAgICAgdGhpcy53b3Jkc1tpXSA9IHIgJiAweDNmZmZmZmY7XG4gICAgfVxuICAgIGZvciAoOyBjYXJyeSAhPT0gMCAmJiBpIDwgYS5sZW5ndGg7IGkrKykge1xuICAgICAgciA9IChhLndvcmRzW2ldIHwgMCkgKyBjYXJyeTtcbiAgICAgIGNhcnJ5ID0gciA+PiAyNjtcbiAgICAgIHRoaXMud29yZHNbaV0gPSByICYgMHgzZmZmZmZmO1xuICAgIH1cblxuICAgIC8vIENvcHkgcmVzdCBvZiB0aGUgd29yZHNcbiAgICBpZiAoY2FycnkgPT09IDAgJiYgaSA8IGEubGVuZ3RoICYmIGEgIT09IHRoaXMpIHtcbiAgICAgIGZvciAoOyBpIDwgYS5sZW5ndGg7IGkrKykge1xuICAgICAgICB0aGlzLndvcmRzW2ldID0gYS53b3Jkc1tpXTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLmxlbmd0aCA9IE1hdGgubWF4KHRoaXMubGVuZ3RoLCBpKTtcblxuICAgIGlmIChhICE9PSB0aGlzKSB7XG4gICAgICB0aGlzLm5lZ2F0aXZlID0gMTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5fc3RyaXAoKTtcbiAgfTtcblxuICAvLyBTdWJ0cmFjdCBgbnVtYCBmcm9tIGB0aGlzYFxuICBCTi5wcm90b3R5cGUuc3ViID0gZnVuY3Rpb24gc3ViIChudW0pIHtcbiAgICByZXR1cm4gdGhpcy5jbG9uZSgpLmlzdWIobnVtKTtcbiAgfTtcblxuICBmdW5jdGlvbiBzbWFsbE11bFRvIChzZWxmLCBudW0sIG91dCkge1xuICAgIG91dC5uZWdhdGl2ZSA9IG51bS5uZWdhdGl2ZSBeIHNlbGYubmVnYXRpdmU7XG4gICAgdmFyIGxlbiA9IChzZWxmLmxlbmd0aCArIG51bS5sZW5ndGgpIHwgMDtcbiAgICBvdXQubGVuZ3RoID0gbGVuO1xuICAgIGxlbiA9IChsZW4gLSAxKSB8IDA7XG5cbiAgICAvLyBQZWVsIG9uZSBpdGVyYXRpb24gKGNvbXBpbGVyIGNhbid0IGRvIGl0LCBiZWNhdXNlIG9mIGNvZGUgY29tcGxleGl0eSlcbiAgICB2YXIgYSA9IHNlbGYud29yZHNbMF0gfCAwO1xuICAgIHZhciBiID0gbnVtLndvcmRzWzBdIHwgMDtcbiAgICB2YXIgciA9IGEgKiBiO1xuXG4gICAgdmFyIGxvID0gciAmIDB4M2ZmZmZmZjtcbiAgICB2YXIgY2FycnkgPSAociAvIDB4NDAwMDAwMCkgfCAwO1xuICAgIG91dC53b3Jkc1swXSA9IGxvO1xuXG4gICAgZm9yICh2YXIgayA9IDE7IGsgPCBsZW47IGsrKykge1xuICAgICAgLy8gU3VtIGFsbCB3b3JkcyB3aXRoIHRoZSBzYW1lIGBpICsgaiA9IGtgIGFuZCBhY2N1bXVsYXRlIGBuY2FycnlgLFxuICAgICAgLy8gbm90ZSB0aGF0IG5jYXJyeSBjb3VsZCBiZSA+PSAweDNmZmZmZmZcbiAgICAgIHZhciBuY2FycnkgPSBjYXJyeSA+Pj4gMjY7XG4gICAgICB2YXIgcndvcmQgPSBjYXJyeSAmIDB4M2ZmZmZmZjtcbiAgICAgIHZhciBtYXhKID0gTWF0aC5taW4oaywgbnVtLmxlbmd0aCAtIDEpO1xuICAgICAgZm9yICh2YXIgaiA9IE1hdGgubWF4KDAsIGsgLSBzZWxmLmxlbmd0aCArIDEpOyBqIDw9IG1heEo7IGorKykge1xuICAgICAgICB2YXIgaSA9IChrIC0gaikgfCAwO1xuICAgICAgICBhID0gc2VsZi53b3Jkc1tpXSB8IDA7XG4gICAgICAgIGIgPSBudW0ud29yZHNbal0gfCAwO1xuICAgICAgICByID0gYSAqIGIgKyByd29yZDtcbiAgICAgICAgbmNhcnJ5ICs9IChyIC8gMHg0MDAwMDAwKSB8IDA7XG4gICAgICAgIHJ3b3JkID0gciAmIDB4M2ZmZmZmZjtcbiAgICAgIH1cbiAgICAgIG91dC53b3Jkc1trXSA9IHJ3b3JkIHwgMDtcbiAgICAgIGNhcnJ5ID0gbmNhcnJ5IHwgMDtcbiAgICB9XG4gICAgaWYgKGNhcnJ5ICE9PSAwKSB7XG4gICAgICBvdXQud29yZHNba10gPSBjYXJyeSB8IDA7XG4gICAgfSBlbHNlIHtcbiAgICAgIG91dC5sZW5ndGgtLTtcbiAgICB9XG5cbiAgICByZXR1cm4gb3V0Ll9zdHJpcCgpO1xuICB9XG5cbiAgLy8gVE9ETyhpbmR1dG55KTogaXQgbWF5IGJlIHJlYXNvbmFibGUgdG8gb21pdCBpdCBmb3IgdXNlcnMgd2hvIGRvbid0IG5lZWRcbiAgLy8gdG8gd29yayB3aXRoIDI1Ni1iaXQgbnVtYmVycywgb3RoZXJ3aXNlIGl0IGdpdmVzIDIwJSBpbXByb3ZlbWVudCBmb3IgMjU2LWJpdFxuICAvLyBtdWx0aXBsaWNhdGlvbiAobGlrZSBlbGxpcHRpYyBzZWNwMjU2azEpLlxuICB2YXIgY29tYjEwTXVsVG8gPSBmdW5jdGlvbiBjb21iMTBNdWxUbyAoc2VsZiwgbnVtLCBvdXQpIHtcbiAgICB2YXIgYSA9IHNlbGYud29yZHM7XG4gICAgdmFyIGIgPSBudW0ud29yZHM7XG4gICAgdmFyIG8gPSBvdXQud29yZHM7XG4gICAgdmFyIGMgPSAwO1xuICAgIHZhciBsbztcbiAgICB2YXIgbWlkO1xuICAgIHZhciBoaTtcbiAgICB2YXIgYTAgPSBhWzBdIHwgMDtcbiAgICB2YXIgYWwwID0gYTAgJiAweDFmZmY7XG4gICAgdmFyIGFoMCA9IGEwID4+PiAxMztcbiAgICB2YXIgYTEgPSBhWzFdIHwgMDtcbiAgICB2YXIgYWwxID0gYTEgJiAweDFmZmY7XG4gICAgdmFyIGFoMSA9IGExID4+PiAxMztcbiAgICB2YXIgYTIgPSBhWzJdIHwgMDtcbiAgICB2YXIgYWwyID0gYTIgJiAweDFmZmY7XG4gICAgdmFyIGFoMiA9IGEyID4+PiAxMztcbiAgICB2YXIgYTMgPSBhWzNdIHwgMDtcbiAgICB2YXIgYWwzID0gYTMgJiAweDFmZmY7XG4gICAgdmFyIGFoMyA9IGEzID4+PiAxMztcbiAgICB2YXIgYTQgPSBhWzRdIHwgMDtcbiAgICB2YXIgYWw0ID0gYTQgJiAweDFmZmY7XG4gICAgdmFyIGFoNCA9IGE0ID4+PiAxMztcbiAgICB2YXIgYTUgPSBhWzVdIHwgMDtcbiAgICB2YXIgYWw1ID0gYTUgJiAweDFmZmY7XG4gICAgdmFyIGFoNSA9IGE1ID4+PiAxMztcbiAgICB2YXIgYTYgPSBhWzZdIHwgMDtcbiAgICB2YXIgYWw2ID0gYTYgJiAweDFmZmY7XG4gICAgdmFyIGFoNiA9IGE2ID4+PiAxMztcbiAgICB2YXIgYTcgPSBhWzddIHwgMDtcbiAgICB2YXIgYWw3ID0gYTcgJiAweDFmZmY7XG4gICAgdmFyIGFoNyA9IGE3ID4+PiAxMztcbiAgICB2YXIgYTggPSBhWzhdIHwgMDtcbiAgICB2YXIgYWw4ID0gYTggJiAweDFmZmY7XG4gICAgdmFyIGFoOCA9IGE4ID4+PiAxMztcbiAgICB2YXIgYTkgPSBhWzldIHwgMDtcbiAgICB2YXIgYWw5ID0gYTkgJiAweDFmZmY7XG4gICAgdmFyIGFoOSA9IGE5ID4+PiAxMztcbiAgICB2YXIgYjAgPSBiWzBdIHwgMDtcbiAgICB2YXIgYmwwID0gYjAgJiAweDFmZmY7XG4gICAgdmFyIGJoMCA9IGIwID4+PiAxMztcbiAgICB2YXIgYjEgPSBiWzFdIHwgMDtcbiAgICB2YXIgYmwxID0gYjEgJiAweDFmZmY7XG4gICAgdmFyIGJoMSA9IGIxID4+PiAxMztcbiAgICB2YXIgYjIgPSBiWzJdIHwgMDtcbiAgICB2YXIgYmwyID0gYjIgJiAweDFmZmY7XG4gICAgdmFyIGJoMiA9IGIyID4+PiAxMztcbiAgICB2YXIgYjMgPSBiWzNdIHwgMDtcbiAgICB2YXIgYmwzID0gYjMgJiAweDFmZmY7XG4gICAgdmFyIGJoMyA9IGIzID4+PiAxMztcbiAgICB2YXIgYjQgPSBiWzRdIHwgMDtcbiAgICB2YXIgYmw0ID0gYjQgJiAweDFmZmY7XG4gICAgdmFyIGJoNCA9IGI0ID4+PiAxMztcbiAgICB2YXIgYjUgPSBiWzVdIHwgMDtcbiAgICB2YXIgYmw1ID0gYjUgJiAweDFmZmY7XG4gICAgdmFyIGJoNSA9IGI1ID4+PiAxMztcbiAgICB2YXIgYjYgPSBiWzZdIHwgMDtcbiAgICB2YXIgYmw2ID0gYjYgJiAweDFmZmY7XG4gICAgdmFyIGJoNiA9IGI2ID4+PiAxMztcbiAgICB2YXIgYjcgPSBiWzddIHwgMDtcbiAgICB2YXIgYmw3ID0gYjcgJiAweDFmZmY7XG4gICAgdmFyIGJoNyA9IGI3ID4+PiAxMztcbiAgICB2YXIgYjggPSBiWzhdIHwgMDtcbiAgICB2YXIgYmw4ID0gYjggJiAweDFmZmY7XG4gICAgdmFyIGJoOCA9IGI4ID4+PiAxMztcbiAgICB2YXIgYjkgPSBiWzldIHwgMDtcbiAgICB2YXIgYmw5ID0gYjkgJiAweDFmZmY7XG4gICAgdmFyIGJoOSA9IGI5ID4+PiAxMztcblxuICAgIG91dC5uZWdhdGl2ZSA9IHNlbGYubmVnYXRpdmUgXiBudW0ubmVnYXRpdmU7XG4gICAgb3V0Lmxlbmd0aCA9IDE5O1xuICAgIC8qIGsgPSAwICovXG4gICAgbG8gPSBNYXRoLmltdWwoYWwwLCBibDApO1xuICAgIG1pZCA9IE1hdGguaW11bChhbDAsIGJoMCk7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDAsIGJsMCkpIHwgMDtcbiAgICBoaSA9IE1hdGguaW11bChhaDAsIGJoMCk7XG4gICAgdmFyIHcwID0gKCgoYyArIGxvKSB8IDApICsgKChtaWQgJiAweDFmZmYpIDw8IDEzKSkgfCAwO1xuICAgIGMgPSAoKChoaSArIChtaWQgPj4+IDEzKSkgfCAwKSArICh3MCA+Pj4gMjYpKSB8IDA7XG4gICAgdzAgJj0gMHgzZmZmZmZmO1xuICAgIC8qIGsgPSAxICovXG4gICAgbG8gPSBNYXRoLmltdWwoYWwxLCBibDApO1xuICAgIG1pZCA9IE1hdGguaW11bChhbDEsIGJoMCk7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDEsIGJsMCkpIHwgMDtcbiAgICBoaSA9IE1hdGguaW11bChhaDEsIGJoMCk7XG4gICAgbG8gPSAobG8gKyBNYXRoLmltdWwoYWwwLCBibDEpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhbDAsIGJoMSkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFoMCwgYmwxKSkgfCAwO1xuICAgIGhpID0gKGhpICsgTWF0aC5pbXVsKGFoMCwgYmgxKSkgfCAwO1xuICAgIHZhciB3MSA9ICgoKGMgKyBsbykgfCAwKSArICgobWlkICYgMHgxZmZmKSA8PCAxMykpIHwgMDtcbiAgICBjID0gKCgoaGkgKyAobWlkID4+PiAxMykpIHwgMCkgKyAodzEgPj4+IDI2KSkgfCAwO1xuICAgIHcxICY9IDB4M2ZmZmZmZjtcbiAgICAvKiBrID0gMiAqL1xuICAgIGxvID0gTWF0aC5pbXVsKGFsMiwgYmwwKTtcbiAgICBtaWQgPSBNYXRoLmltdWwoYWwyLCBiaDApO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWgyLCBibDApKSB8IDA7XG4gICAgaGkgPSBNYXRoLmltdWwoYWgyLCBiaDApO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsMSwgYmwxKSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWwxLCBiaDEpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDEsIGJsMSkpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDEsIGJoMSkpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDAsIGJsMikpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsMCwgYmgyKSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWgwLCBibDIpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWgwLCBiaDIpKSB8IDA7XG4gICAgdmFyIHcyID0gKCgoYyArIGxvKSB8IDApICsgKChtaWQgJiAweDFmZmYpIDw8IDEzKSkgfCAwO1xuICAgIGMgPSAoKChoaSArIChtaWQgPj4+IDEzKSkgfCAwKSArICh3MiA+Pj4gMjYpKSB8IDA7XG4gICAgdzIgJj0gMHgzZmZmZmZmO1xuICAgIC8qIGsgPSAzICovXG4gICAgbG8gPSBNYXRoLmltdWwoYWwzLCBibDApO1xuICAgIG1pZCA9IE1hdGguaW11bChhbDMsIGJoMCk7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDMsIGJsMCkpIHwgMDtcbiAgICBoaSA9IE1hdGguaW11bChhaDMsIGJoMCk7XG4gICAgbG8gPSAobG8gKyBNYXRoLmltdWwoYWwyLCBibDEpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhbDIsIGJoMSkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFoMiwgYmwxKSkgfCAwO1xuICAgIGhpID0gKGhpICsgTWF0aC5pbXVsKGFoMiwgYmgxKSkgfCAwO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsMSwgYmwyKSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWwxLCBiaDIpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDEsIGJsMikpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDEsIGJoMikpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDAsIGJsMykpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsMCwgYmgzKSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWgwLCBibDMpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWgwLCBiaDMpKSB8IDA7XG4gICAgdmFyIHczID0gKCgoYyArIGxvKSB8IDApICsgKChtaWQgJiAweDFmZmYpIDw8IDEzKSkgfCAwO1xuICAgIGMgPSAoKChoaSArIChtaWQgPj4+IDEzKSkgfCAwKSArICh3MyA+Pj4gMjYpKSB8IDA7XG4gICAgdzMgJj0gMHgzZmZmZmZmO1xuICAgIC8qIGsgPSA0ICovXG4gICAgbG8gPSBNYXRoLmltdWwoYWw0LCBibDApO1xuICAgIG1pZCA9IE1hdGguaW11bChhbDQsIGJoMCk7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDQsIGJsMCkpIHwgMDtcbiAgICBoaSA9IE1hdGguaW11bChhaDQsIGJoMCk7XG4gICAgbG8gPSAobG8gKyBNYXRoLmltdWwoYWwzLCBibDEpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhbDMsIGJoMSkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFoMywgYmwxKSkgfCAwO1xuICAgIGhpID0gKGhpICsgTWF0aC5pbXVsKGFoMywgYmgxKSkgfCAwO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsMiwgYmwyKSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWwyLCBiaDIpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDIsIGJsMikpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDIsIGJoMikpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDEsIGJsMykpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsMSwgYmgzKSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWgxLCBibDMpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWgxLCBiaDMpKSB8IDA7XG4gICAgbG8gPSAobG8gKyBNYXRoLmltdWwoYWwwLCBibDQpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhbDAsIGJoNCkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFoMCwgYmw0KSkgfCAwO1xuICAgIGhpID0gKGhpICsgTWF0aC5pbXVsKGFoMCwgYmg0KSkgfCAwO1xuICAgIHZhciB3NCA9ICgoKGMgKyBsbykgfCAwKSArICgobWlkICYgMHgxZmZmKSA8PCAxMykpIHwgMDtcbiAgICBjID0gKCgoaGkgKyAobWlkID4+PiAxMykpIHwgMCkgKyAodzQgPj4+IDI2KSkgfCAwO1xuICAgIHc0ICY9IDB4M2ZmZmZmZjtcbiAgICAvKiBrID0gNSAqL1xuICAgIGxvID0gTWF0aC5pbXVsKGFsNSwgYmwwKTtcbiAgICBtaWQgPSBNYXRoLmltdWwoYWw1LCBiaDApO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWg1LCBibDApKSB8IDA7XG4gICAgaGkgPSBNYXRoLmltdWwoYWg1LCBiaDApO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsNCwgYmwxKSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWw0LCBiaDEpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDQsIGJsMSkpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDQsIGJoMSkpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDMsIGJsMikpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsMywgYmgyKSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWgzLCBibDIpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWgzLCBiaDIpKSB8IDA7XG4gICAgbG8gPSAobG8gKyBNYXRoLmltdWwoYWwyLCBibDMpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhbDIsIGJoMykpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFoMiwgYmwzKSkgfCAwO1xuICAgIGhpID0gKGhpICsgTWF0aC5pbXVsKGFoMiwgYmgzKSkgfCAwO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsMSwgYmw0KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWwxLCBiaDQpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDEsIGJsNCkpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDEsIGJoNCkpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDAsIGJsNSkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsMCwgYmg1KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWgwLCBibDUpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWgwLCBiaDUpKSB8IDA7XG4gICAgdmFyIHc1ID0gKCgoYyArIGxvKSB8IDApICsgKChtaWQgJiAweDFmZmYpIDw8IDEzKSkgfCAwO1xuICAgIGMgPSAoKChoaSArIChtaWQgPj4+IDEzKSkgfCAwKSArICh3NSA+Pj4gMjYpKSB8IDA7XG4gICAgdzUgJj0gMHgzZmZmZmZmO1xuICAgIC8qIGsgPSA2ICovXG4gICAgbG8gPSBNYXRoLmltdWwoYWw2LCBibDApO1xuICAgIG1pZCA9IE1hdGguaW11bChhbDYsIGJoMCk7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDYsIGJsMCkpIHwgMDtcbiAgICBoaSA9IE1hdGguaW11bChhaDYsIGJoMCk7XG4gICAgbG8gPSAobG8gKyBNYXRoLmltdWwoYWw1LCBibDEpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhbDUsIGJoMSkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFoNSwgYmwxKSkgfCAwO1xuICAgIGhpID0gKGhpICsgTWF0aC5pbXVsKGFoNSwgYmgxKSkgfCAwO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsNCwgYmwyKSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWw0LCBiaDIpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDQsIGJsMikpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDQsIGJoMikpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDMsIGJsMykpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsMywgYmgzKSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWgzLCBibDMpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWgzLCBiaDMpKSB8IDA7XG4gICAgbG8gPSAobG8gKyBNYXRoLmltdWwoYWwyLCBibDQpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhbDIsIGJoNCkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFoMiwgYmw0KSkgfCAwO1xuICAgIGhpID0gKGhpICsgTWF0aC5pbXVsKGFoMiwgYmg0KSkgfCAwO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsMSwgYmw1KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWwxLCBiaDUpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDEsIGJsNSkpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDEsIGJoNSkpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDAsIGJsNikpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsMCwgYmg2KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWgwLCBibDYpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWgwLCBiaDYpKSB8IDA7XG4gICAgdmFyIHc2ID0gKCgoYyArIGxvKSB8IDApICsgKChtaWQgJiAweDFmZmYpIDw8IDEzKSkgfCAwO1xuICAgIGMgPSAoKChoaSArIChtaWQgPj4+IDEzKSkgfCAwKSArICh3NiA+Pj4gMjYpKSB8IDA7XG4gICAgdzYgJj0gMHgzZmZmZmZmO1xuICAgIC8qIGsgPSA3ICovXG4gICAgbG8gPSBNYXRoLmltdWwoYWw3LCBibDApO1xuICAgIG1pZCA9IE1hdGguaW11bChhbDcsIGJoMCk7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDcsIGJsMCkpIHwgMDtcbiAgICBoaSA9IE1hdGguaW11bChhaDcsIGJoMCk7XG4gICAgbG8gPSAobG8gKyBNYXRoLmltdWwoYWw2LCBibDEpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhbDYsIGJoMSkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFoNiwgYmwxKSkgfCAwO1xuICAgIGhpID0gKGhpICsgTWF0aC5pbXVsKGFoNiwgYmgxKSkgfCAwO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsNSwgYmwyKSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWw1LCBiaDIpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDUsIGJsMikpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDUsIGJoMikpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDQsIGJsMykpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsNCwgYmgzKSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWg0LCBibDMpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWg0LCBiaDMpKSB8IDA7XG4gICAgbG8gPSAobG8gKyBNYXRoLmltdWwoYWwzLCBibDQpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhbDMsIGJoNCkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFoMywgYmw0KSkgfCAwO1xuICAgIGhpID0gKGhpICsgTWF0aC5pbXVsKGFoMywgYmg0KSkgfCAwO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsMiwgYmw1KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWwyLCBiaDUpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDIsIGJsNSkpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDIsIGJoNSkpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDEsIGJsNikpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsMSwgYmg2KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWgxLCBibDYpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWgxLCBiaDYpKSB8IDA7XG4gICAgbG8gPSAobG8gKyBNYXRoLmltdWwoYWwwLCBibDcpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhbDAsIGJoNykpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFoMCwgYmw3KSkgfCAwO1xuICAgIGhpID0gKGhpICsgTWF0aC5pbXVsKGFoMCwgYmg3KSkgfCAwO1xuICAgIHZhciB3NyA9ICgoKGMgKyBsbykgfCAwKSArICgobWlkICYgMHgxZmZmKSA8PCAxMykpIHwgMDtcbiAgICBjID0gKCgoaGkgKyAobWlkID4+PiAxMykpIHwgMCkgKyAodzcgPj4+IDI2KSkgfCAwO1xuICAgIHc3ICY9IDB4M2ZmZmZmZjtcbiAgICAvKiBrID0gOCAqL1xuICAgIGxvID0gTWF0aC5pbXVsKGFsOCwgYmwwKTtcbiAgICBtaWQgPSBNYXRoLmltdWwoYWw4LCBiaDApO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWg4LCBibDApKSB8IDA7XG4gICAgaGkgPSBNYXRoLmltdWwoYWg4LCBiaDApO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsNywgYmwxKSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWw3LCBiaDEpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDcsIGJsMSkpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDcsIGJoMSkpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDYsIGJsMikpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsNiwgYmgyKSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWg2LCBibDIpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWg2LCBiaDIpKSB8IDA7XG4gICAgbG8gPSAobG8gKyBNYXRoLmltdWwoYWw1LCBibDMpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhbDUsIGJoMykpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFoNSwgYmwzKSkgfCAwO1xuICAgIGhpID0gKGhpICsgTWF0aC5pbXVsKGFoNSwgYmgzKSkgfCAwO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsNCwgYmw0KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWw0LCBiaDQpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDQsIGJsNCkpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDQsIGJoNCkpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDMsIGJsNSkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsMywgYmg1KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWgzLCBibDUpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWgzLCBiaDUpKSB8IDA7XG4gICAgbG8gPSAobG8gKyBNYXRoLmltdWwoYWwyLCBibDYpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhbDIsIGJoNikpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFoMiwgYmw2KSkgfCAwO1xuICAgIGhpID0gKGhpICsgTWF0aC5pbXVsKGFoMiwgYmg2KSkgfCAwO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsMSwgYmw3KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWwxLCBiaDcpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDEsIGJsNykpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDEsIGJoNykpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDAsIGJsOCkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsMCwgYmg4KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWgwLCBibDgpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWgwLCBiaDgpKSB8IDA7XG4gICAgdmFyIHc4ID0gKCgoYyArIGxvKSB8IDApICsgKChtaWQgJiAweDFmZmYpIDw8IDEzKSkgfCAwO1xuICAgIGMgPSAoKChoaSArIChtaWQgPj4+IDEzKSkgfCAwKSArICh3OCA+Pj4gMjYpKSB8IDA7XG4gICAgdzggJj0gMHgzZmZmZmZmO1xuICAgIC8qIGsgPSA5ICovXG4gICAgbG8gPSBNYXRoLmltdWwoYWw5LCBibDApO1xuICAgIG1pZCA9IE1hdGguaW11bChhbDksIGJoMCk7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDksIGJsMCkpIHwgMDtcbiAgICBoaSA9IE1hdGguaW11bChhaDksIGJoMCk7XG4gICAgbG8gPSAobG8gKyBNYXRoLmltdWwoYWw4LCBibDEpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhbDgsIGJoMSkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFoOCwgYmwxKSkgfCAwO1xuICAgIGhpID0gKGhpICsgTWF0aC5pbXVsKGFoOCwgYmgxKSkgfCAwO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsNywgYmwyKSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWw3LCBiaDIpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDcsIGJsMikpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDcsIGJoMikpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDYsIGJsMykpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsNiwgYmgzKSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWg2LCBibDMpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWg2LCBiaDMpKSB8IDA7XG4gICAgbG8gPSAobG8gKyBNYXRoLmltdWwoYWw1LCBibDQpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhbDUsIGJoNCkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFoNSwgYmw0KSkgfCAwO1xuICAgIGhpID0gKGhpICsgTWF0aC5pbXVsKGFoNSwgYmg0KSkgfCAwO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsNCwgYmw1KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWw0LCBiaDUpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDQsIGJsNSkpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDQsIGJoNSkpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDMsIGJsNikpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsMywgYmg2KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWgzLCBibDYpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWgzLCBiaDYpKSB8IDA7XG4gICAgbG8gPSAobG8gKyBNYXRoLmltdWwoYWwyLCBibDcpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhbDIsIGJoNykpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFoMiwgYmw3KSkgfCAwO1xuICAgIGhpID0gKGhpICsgTWF0aC5pbXVsKGFoMiwgYmg3KSkgfCAwO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsMSwgYmw4KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWwxLCBiaDgpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDEsIGJsOCkpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDEsIGJoOCkpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDAsIGJsOSkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsMCwgYmg5KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWgwLCBibDkpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWgwLCBiaDkpKSB8IDA7XG4gICAgdmFyIHc5ID0gKCgoYyArIGxvKSB8IDApICsgKChtaWQgJiAweDFmZmYpIDw8IDEzKSkgfCAwO1xuICAgIGMgPSAoKChoaSArIChtaWQgPj4+IDEzKSkgfCAwKSArICh3OSA+Pj4gMjYpKSB8IDA7XG4gICAgdzkgJj0gMHgzZmZmZmZmO1xuICAgIC8qIGsgPSAxMCAqL1xuICAgIGxvID0gTWF0aC5pbXVsKGFsOSwgYmwxKTtcbiAgICBtaWQgPSBNYXRoLmltdWwoYWw5LCBiaDEpO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWg5LCBibDEpKSB8IDA7XG4gICAgaGkgPSBNYXRoLmltdWwoYWg5LCBiaDEpO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsOCwgYmwyKSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWw4LCBiaDIpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDgsIGJsMikpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDgsIGJoMikpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDcsIGJsMykpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsNywgYmgzKSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWg3LCBibDMpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWg3LCBiaDMpKSB8IDA7XG4gICAgbG8gPSAobG8gKyBNYXRoLmltdWwoYWw2LCBibDQpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhbDYsIGJoNCkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFoNiwgYmw0KSkgfCAwO1xuICAgIGhpID0gKGhpICsgTWF0aC5pbXVsKGFoNiwgYmg0KSkgfCAwO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsNSwgYmw1KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWw1LCBiaDUpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDUsIGJsNSkpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDUsIGJoNSkpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDQsIGJsNikpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsNCwgYmg2KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWg0LCBibDYpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWg0LCBiaDYpKSB8IDA7XG4gICAgbG8gPSAobG8gKyBNYXRoLmltdWwoYWwzLCBibDcpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhbDMsIGJoNykpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFoMywgYmw3KSkgfCAwO1xuICAgIGhpID0gKGhpICsgTWF0aC5pbXVsKGFoMywgYmg3KSkgfCAwO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsMiwgYmw4KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWwyLCBiaDgpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDIsIGJsOCkpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDIsIGJoOCkpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDEsIGJsOSkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsMSwgYmg5KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWgxLCBibDkpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWgxLCBiaDkpKSB8IDA7XG4gICAgdmFyIHcxMCA9ICgoKGMgKyBsbykgfCAwKSArICgobWlkICYgMHgxZmZmKSA8PCAxMykpIHwgMDtcbiAgICBjID0gKCgoaGkgKyAobWlkID4+PiAxMykpIHwgMCkgKyAodzEwID4+PiAyNikpIHwgMDtcbiAgICB3MTAgJj0gMHgzZmZmZmZmO1xuICAgIC8qIGsgPSAxMSAqL1xuICAgIGxvID0gTWF0aC5pbXVsKGFsOSwgYmwyKTtcbiAgICBtaWQgPSBNYXRoLmltdWwoYWw5LCBiaDIpO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWg5LCBibDIpKSB8IDA7XG4gICAgaGkgPSBNYXRoLmltdWwoYWg5LCBiaDIpO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsOCwgYmwzKSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWw4LCBiaDMpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDgsIGJsMykpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDgsIGJoMykpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDcsIGJsNCkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsNywgYmg0KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWg3LCBibDQpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWg3LCBiaDQpKSB8IDA7XG4gICAgbG8gPSAobG8gKyBNYXRoLmltdWwoYWw2LCBibDUpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhbDYsIGJoNSkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFoNiwgYmw1KSkgfCAwO1xuICAgIGhpID0gKGhpICsgTWF0aC5pbXVsKGFoNiwgYmg1KSkgfCAwO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsNSwgYmw2KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWw1LCBiaDYpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDUsIGJsNikpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDUsIGJoNikpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDQsIGJsNykpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsNCwgYmg3KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWg0LCBibDcpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWg0LCBiaDcpKSB8IDA7XG4gICAgbG8gPSAobG8gKyBNYXRoLmltdWwoYWwzLCBibDgpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhbDMsIGJoOCkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFoMywgYmw4KSkgfCAwO1xuICAgIGhpID0gKGhpICsgTWF0aC5pbXVsKGFoMywgYmg4KSkgfCAwO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsMiwgYmw5KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWwyLCBiaDkpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDIsIGJsOSkpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDIsIGJoOSkpIHwgMDtcbiAgICB2YXIgdzExID0gKCgoYyArIGxvKSB8IDApICsgKChtaWQgJiAweDFmZmYpIDw8IDEzKSkgfCAwO1xuICAgIGMgPSAoKChoaSArIChtaWQgPj4+IDEzKSkgfCAwKSArICh3MTEgPj4+IDI2KSkgfCAwO1xuICAgIHcxMSAmPSAweDNmZmZmZmY7XG4gICAgLyogayA9IDEyICovXG4gICAgbG8gPSBNYXRoLmltdWwoYWw5LCBibDMpO1xuICAgIG1pZCA9IE1hdGguaW11bChhbDksIGJoMyk7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDksIGJsMykpIHwgMDtcbiAgICBoaSA9IE1hdGguaW11bChhaDksIGJoMyk7XG4gICAgbG8gPSAobG8gKyBNYXRoLmltdWwoYWw4LCBibDQpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhbDgsIGJoNCkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFoOCwgYmw0KSkgfCAwO1xuICAgIGhpID0gKGhpICsgTWF0aC5pbXVsKGFoOCwgYmg0KSkgfCAwO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsNywgYmw1KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWw3LCBiaDUpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDcsIGJsNSkpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDcsIGJoNSkpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDYsIGJsNikpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsNiwgYmg2KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWg2LCBibDYpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWg2LCBiaDYpKSB8IDA7XG4gICAgbG8gPSAobG8gKyBNYXRoLmltdWwoYWw1LCBibDcpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhbDUsIGJoNykpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFoNSwgYmw3KSkgfCAwO1xuICAgIGhpID0gKGhpICsgTWF0aC5pbXVsKGFoNSwgYmg3KSkgfCAwO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsNCwgYmw4KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWw0LCBiaDgpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDQsIGJsOCkpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDQsIGJoOCkpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDMsIGJsOSkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsMywgYmg5KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWgzLCBibDkpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWgzLCBiaDkpKSB8IDA7XG4gICAgdmFyIHcxMiA9ICgoKGMgKyBsbykgfCAwKSArICgobWlkICYgMHgxZmZmKSA8PCAxMykpIHwgMDtcbiAgICBjID0gKCgoaGkgKyAobWlkID4+PiAxMykpIHwgMCkgKyAodzEyID4+PiAyNikpIHwgMDtcbiAgICB3MTIgJj0gMHgzZmZmZmZmO1xuICAgIC8qIGsgPSAxMyAqL1xuICAgIGxvID0gTWF0aC5pbXVsKGFsOSwgYmw0KTtcbiAgICBtaWQgPSBNYXRoLmltdWwoYWw5LCBiaDQpO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWg5LCBibDQpKSB8IDA7XG4gICAgaGkgPSBNYXRoLmltdWwoYWg5LCBiaDQpO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsOCwgYmw1KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWw4LCBiaDUpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDgsIGJsNSkpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDgsIGJoNSkpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDcsIGJsNikpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsNywgYmg2KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWg3LCBibDYpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWg3LCBiaDYpKSB8IDA7XG4gICAgbG8gPSAobG8gKyBNYXRoLmltdWwoYWw2LCBibDcpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhbDYsIGJoNykpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFoNiwgYmw3KSkgfCAwO1xuICAgIGhpID0gKGhpICsgTWF0aC5pbXVsKGFoNiwgYmg3KSkgfCAwO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsNSwgYmw4KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWw1LCBiaDgpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDUsIGJsOCkpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDUsIGJoOCkpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDQsIGJsOSkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsNCwgYmg5KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWg0LCBibDkpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWg0LCBiaDkpKSB8IDA7XG4gICAgdmFyIHcxMyA9ICgoKGMgKyBsbykgfCAwKSArICgobWlkICYgMHgxZmZmKSA8PCAxMykpIHwgMDtcbiAgICBjID0gKCgoaGkgKyAobWlkID4+PiAxMykpIHwgMCkgKyAodzEzID4+PiAyNikpIHwgMDtcbiAgICB3MTMgJj0gMHgzZmZmZmZmO1xuICAgIC8qIGsgPSAxNCAqL1xuICAgIGxvID0gTWF0aC5pbXVsKGFsOSwgYmw1KTtcbiAgICBtaWQgPSBNYXRoLmltdWwoYWw5LCBiaDUpO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWg5LCBibDUpKSB8IDA7XG4gICAgaGkgPSBNYXRoLmltdWwoYWg5LCBiaDUpO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsOCwgYmw2KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWw4LCBiaDYpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDgsIGJsNikpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDgsIGJoNikpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDcsIGJsNykpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsNywgYmg3KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWg3LCBibDcpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWg3LCBiaDcpKSB8IDA7XG4gICAgbG8gPSAobG8gKyBNYXRoLmltdWwoYWw2LCBibDgpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhbDYsIGJoOCkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFoNiwgYmw4KSkgfCAwO1xuICAgIGhpID0gKGhpICsgTWF0aC5pbXVsKGFoNiwgYmg4KSkgfCAwO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsNSwgYmw5KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWw1LCBiaDkpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDUsIGJsOSkpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDUsIGJoOSkpIHwgMDtcbiAgICB2YXIgdzE0ID0gKCgoYyArIGxvKSB8IDApICsgKChtaWQgJiAweDFmZmYpIDw8IDEzKSkgfCAwO1xuICAgIGMgPSAoKChoaSArIChtaWQgPj4+IDEzKSkgfCAwKSArICh3MTQgPj4+IDI2KSkgfCAwO1xuICAgIHcxNCAmPSAweDNmZmZmZmY7XG4gICAgLyogayA9IDE1ICovXG4gICAgbG8gPSBNYXRoLmltdWwoYWw5LCBibDYpO1xuICAgIG1pZCA9IE1hdGguaW11bChhbDksIGJoNik7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDksIGJsNikpIHwgMDtcbiAgICBoaSA9IE1hdGguaW11bChhaDksIGJoNik7XG4gICAgbG8gPSAobG8gKyBNYXRoLmltdWwoYWw4LCBibDcpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhbDgsIGJoNykpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFoOCwgYmw3KSkgfCAwO1xuICAgIGhpID0gKGhpICsgTWF0aC5pbXVsKGFoOCwgYmg3KSkgfCAwO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsNywgYmw4KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWw3LCBiaDgpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDcsIGJsOCkpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDcsIGJoOCkpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDYsIGJsOSkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsNiwgYmg5KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWg2LCBibDkpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWg2LCBiaDkpKSB8IDA7XG4gICAgdmFyIHcxNSA9ICgoKGMgKyBsbykgfCAwKSArICgobWlkICYgMHgxZmZmKSA8PCAxMykpIHwgMDtcbiAgICBjID0gKCgoaGkgKyAobWlkID4+PiAxMykpIHwgMCkgKyAodzE1ID4+PiAyNikpIHwgMDtcbiAgICB3MTUgJj0gMHgzZmZmZmZmO1xuICAgIC8qIGsgPSAxNiAqL1xuICAgIGxvID0gTWF0aC5pbXVsKGFsOSwgYmw3KTtcbiAgICBtaWQgPSBNYXRoLmltdWwoYWw5LCBiaDcpO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWg5LCBibDcpKSB8IDA7XG4gICAgaGkgPSBNYXRoLmltdWwoYWg5LCBiaDcpO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsOCwgYmw4KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWw4LCBiaDgpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDgsIGJsOCkpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDgsIGJoOCkpIHwgMDtcbiAgICBsbyA9IChsbyArIE1hdGguaW11bChhbDcsIGJsOSkpIHwgMDtcbiAgICBtaWQgPSAobWlkICsgTWF0aC5pbXVsKGFsNywgYmg5KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWg3LCBibDkpKSB8IDA7XG4gICAgaGkgPSAoaGkgKyBNYXRoLmltdWwoYWg3LCBiaDkpKSB8IDA7XG4gICAgdmFyIHcxNiA9ICgoKGMgKyBsbykgfCAwKSArICgobWlkICYgMHgxZmZmKSA8PCAxMykpIHwgMDtcbiAgICBjID0gKCgoaGkgKyAobWlkID4+PiAxMykpIHwgMCkgKyAodzE2ID4+PiAyNikpIHwgMDtcbiAgICB3MTYgJj0gMHgzZmZmZmZmO1xuICAgIC8qIGsgPSAxNyAqL1xuICAgIGxvID0gTWF0aC5pbXVsKGFsOSwgYmw4KTtcbiAgICBtaWQgPSBNYXRoLmltdWwoYWw5LCBiaDgpO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWg5LCBibDgpKSB8IDA7XG4gICAgaGkgPSBNYXRoLmltdWwoYWg5LCBiaDgpO1xuICAgIGxvID0gKGxvICsgTWF0aC5pbXVsKGFsOCwgYmw5KSkgfCAwO1xuICAgIG1pZCA9IChtaWQgKyBNYXRoLmltdWwoYWw4LCBiaDkpKSB8IDA7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDgsIGJsOSkpIHwgMDtcbiAgICBoaSA9IChoaSArIE1hdGguaW11bChhaDgsIGJoOSkpIHwgMDtcbiAgICB2YXIgdzE3ID0gKCgoYyArIGxvKSB8IDApICsgKChtaWQgJiAweDFmZmYpIDw8IDEzKSkgfCAwO1xuICAgIGMgPSAoKChoaSArIChtaWQgPj4+IDEzKSkgfCAwKSArICh3MTcgPj4+IDI2KSkgfCAwO1xuICAgIHcxNyAmPSAweDNmZmZmZmY7XG4gICAgLyogayA9IDE4ICovXG4gICAgbG8gPSBNYXRoLmltdWwoYWw5LCBibDkpO1xuICAgIG1pZCA9IE1hdGguaW11bChhbDksIGJoOSk7XG4gICAgbWlkID0gKG1pZCArIE1hdGguaW11bChhaDksIGJsOSkpIHwgMDtcbiAgICBoaSA9IE1hdGguaW11bChhaDksIGJoOSk7XG4gICAgdmFyIHcxOCA9ICgoKGMgKyBsbykgfCAwKSArICgobWlkICYgMHgxZmZmKSA8PCAxMykpIHwgMDtcbiAgICBjID0gKCgoaGkgKyAobWlkID4+PiAxMykpIHwgMCkgKyAodzE4ID4+PiAyNikpIHwgMDtcbiAgICB3MTggJj0gMHgzZmZmZmZmO1xuICAgIG9bMF0gPSB3MDtcbiAgICBvWzFdID0gdzE7XG4gICAgb1syXSA9IHcyO1xuICAgIG9bM10gPSB3MztcbiAgICBvWzRdID0gdzQ7XG4gICAgb1s1XSA9IHc1O1xuICAgIG9bNl0gPSB3NjtcbiAgICBvWzddID0gdzc7XG4gICAgb1s4XSA9IHc4O1xuICAgIG9bOV0gPSB3OTtcbiAgICBvWzEwXSA9IHcxMDtcbiAgICBvWzExXSA9IHcxMTtcbiAgICBvWzEyXSA9IHcxMjtcbiAgICBvWzEzXSA9IHcxMztcbiAgICBvWzE0XSA9IHcxNDtcbiAgICBvWzE1XSA9IHcxNTtcbiAgICBvWzE2XSA9IHcxNjtcbiAgICBvWzE3XSA9IHcxNztcbiAgICBvWzE4XSA9IHcxODtcbiAgICBpZiAoYyAhPT0gMCkge1xuICAgICAgb1sxOV0gPSBjO1xuICAgICAgb3V0Lmxlbmd0aCsrO1xuICAgIH1cbiAgICByZXR1cm4gb3V0O1xuICB9O1xuXG4gIC8vIFBvbHlmaWxsIGNvbWJcbiAgaWYgKCFNYXRoLmltdWwpIHtcbiAgICBjb21iMTBNdWxUbyA9IHNtYWxsTXVsVG87XG4gIH1cblxuICBmdW5jdGlvbiBiaWdNdWxUbyAoc2VsZiwgbnVtLCBvdXQpIHtcbiAgICBvdXQubmVnYXRpdmUgPSBudW0ubmVnYXRpdmUgXiBzZWxmLm5lZ2F0aXZlO1xuICAgIG91dC5sZW5ndGggPSBzZWxmLmxlbmd0aCArIG51bS5sZW5ndGg7XG5cbiAgICB2YXIgY2FycnkgPSAwO1xuICAgIHZhciBobmNhcnJ5ID0gMDtcbiAgICBmb3IgKHZhciBrID0gMDsgayA8IG91dC5sZW5ndGggLSAxOyBrKyspIHtcbiAgICAgIC8vIFN1bSBhbGwgd29yZHMgd2l0aCB0aGUgc2FtZSBgaSArIGogPSBrYCBhbmQgYWNjdW11bGF0ZSBgbmNhcnJ5YCxcbiAgICAgIC8vIG5vdGUgdGhhdCBuY2FycnkgY291bGQgYmUgPj0gMHgzZmZmZmZmXG4gICAgICB2YXIgbmNhcnJ5ID0gaG5jYXJyeTtcbiAgICAgIGhuY2FycnkgPSAwO1xuICAgICAgdmFyIHJ3b3JkID0gY2FycnkgJiAweDNmZmZmZmY7XG4gICAgICB2YXIgbWF4SiA9IE1hdGgubWluKGssIG51bS5sZW5ndGggLSAxKTtcbiAgICAgIGZvciAodmFyIGogPSBNYXRoLm1heCgwLCBrIC0gc2VsZi5sZW5ndGggKyAxKTsgaiA8PSBtYXhKOyBqKyspIHtcbiAgICAgICAgdmFyIGkgPSBrIC0gajtcbiAgICAgICAgdmFyIGEgPSBzZWxmLndvcmRzW2ldIHwgMDtcbiAgICAgICAgdmFyIGIgPSBudW0ud29yZHNbal0gfCAwO1xuICAgICAgICB2YXIgciA9IGEgKiBiO1xuXG4gICAgICAgIHZhciBsbyA9IHIgJiAweDNmZmZmZmY7XG4gICAgICAgIG5jYXJyeSA9IChuY2FycnkgKyAoKHIgLyAweDQwMDAwMDApIHwgMCkpIHwgMDtcbiAgICAgICAgbG8gPSAobG8gKyByd29yZCkgfCAwO1xuICAgICAgICByd29yZCA9IGxvICYgMHgzZmZmZmZmO1xuICAgICAgICBuY2FycnkgPSAobmNhcnJ5ICsgKGxvID4+PiAyNikpIHwgMDtcblxuICAgICAgICBobmNhcnJ5ICs9IG5jYXJyeSA+Pj4gMjY7XG4gICAgICAgIG5jYXJyeSAmPSAweDNmZmZmZmY7XG4gICAgICB9XG4gICAgICBvdXQud29yZHNba10gPSByd29yZDtcbiAgICAgIGNhcnJ5ID0gbmNhcnJ5O1xuICAgICAgbmNhcnJ5ID0gaG5jYXJyeTtcbiAgICB9XG4gICAgaWYgKGNhcnJ5ICE9PSAwKSB7XG4gICAgICBvdXQud29yZHNba10gPSBjYXJyeTtcbiAgICB9IGVsc2Uge1xuICAgICAgb3V0Lmxlbmd0aC0tO1xuICAgIH1cblxuICAgIHJldHVybiBvdXQuX3N0cmlwKCk7XG4gIH1cblxuICBmdW5jdGlvbiBqdW1ib011bFRvIChzZWxmLCBudW0sIG91dCkge1xuICAgIC8vIFRlbXBvcmFyeSBkaXNhYmxlLCBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2luZHV0bnkvYm4uanMvaXNzdWVzLzIxMVxuICAgIC8vIHZhciBmZnRtID0gbmV3IEZGVE0oKTtcbiAgICAvLyByZXR1cm4gZmZ0bS5tdWxwKHNlbGYsIG51bSwgb3V0KTtcbiAgICByZXR1cm4gYmlnTXVsVG8oc2VsZiwgbnVtLCBvdXQpO1xuICB9XG5cbiAgQk4ucHJvdG90eXBlLm11bFRvID0gZnVuY3Rpb24gbXVsVG8gKG51bSwgb3V0KSB7XG4gICAgdmFyIHJlcztcbiAgICB2YXIgbGVuID0gdGhpcy5sZW5ndGggKyBudW0ubGVuZ3RoO1xuICAgIGlmICh0aGlzLmxlbmd0aCA9PT0gMTAgJiYgbnVtLmxlbmd0aCA9PT0gMTApIHtcbiAgICAgIHJlcyA9IGNvbWIxME11bFRvKHRoaXMsIG51bSwgb3V0KTtcbiAgICB9IGVsc2UgaWYgKGxlbiA8IDYzKSB7XG4gICAgICByZXMgPSBzbWFsbE11bFRvKHRoaXMsIG51bSwgb3V0KTtcbiAgICB9IGVsc2UgaWYgKGxlbiA8IDEwMjQpIHtcbiAgICAgIHJlcyA9IGJpZ011bFRvKHRoaXMsIG51bSwgb3V0KTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmVzID0ganVtYm9NdWxUbyh0aGlzLCBudW0sIG91dCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlcztcbiAgfTtcblxuICAvLyBDb29sZXktVHVrZXkgYWxnb3JpdGhtIGZvciBGRlRcbiAgLy8gc2xpZ2h0bHkgcmV2aXNpdGVkIHRvIHJlbHkgb24gbG9vcGluZyBpbnN0ZWFkIG9mIHJlY3Vyc2lvblxuXG4gIGZ1bmN0aW9uIEZGVE0gKHgsIHkpIHtcbiAgICB0aGlzLnggPSB4O1xuICAgIHRoaXMueSA9IHk7XG4gIH1cblxuICBGRlRNLnByb3RvdHlwZS5tYWtlUkJUID0gZnVuY3Rpb24gbWFrZVJCVCAoTikge1xuICAgIHZhciB0ID0gbmV3IEFycmF5KE4pO1xuICAgIHZhciBsID0gQk4ucHJvdG90eXBlLl9jb3VudEJpdHMoTikgLSAxO1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgTjsgaSsrKSB7XG4gICAgICB0W2ldID0gdGhpcy5yZXZCaW4oaSwgbCwgTik7XG4gICAgfVxuXG4gICAgcmV0dXJuIHQ7XG4gIH07XG5cbiAgLy8gUmV0dXJucyBiaW5hcnktcmV2ZXJzZWQgcmVwcmVzZW50YXRpb24gb2YgYHhgXG4gIEZGVE0ucHJvdG90eXBlLnJldkJpbiA9IGZ1bmN0aW9uIHJldkJpbiAoeCwgbCwgTikge1xuICAgIGlmICh4ID09PSAwIHx8IHggPT09IE4gLSAxKSByZXR1cm4geDtcblxuICAgIHZhciByYiA9IDA7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsOyBpKyspIHtcbiAgICAgIHJiIHw9ICh4ICYgMSkgPDwgKGwgLSBpIC0gMSk7XG4gICAgICB4ID4+PSAxO1xuICAgIH1cblxuICAgIHJldHVybiByYjtcbiAgfTtcblxuICAvLyBQZXJmb3JtcyBcInR3ZWVkbGluZ1wiIHBoYXNlLCB0aGVyZWZvcmUgJ2VtdWxhdGluZydcbiAgLy8gYmVoYXZpb3VyIG9mIHRoZSByZWN1cnNpdmUgYWxnb3JpdGhtXG4gIEZGVE0ucHJvdG90eXBlLnBlcm11dGUgPSBmdW5jdGlvbiBwZXJtdXRlIChyYnQsIHJ3cywgaXdzLCBydHdzLCBpdHdzLCBOKSB7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBOOyBpKyspIHtcbiAgICAgIHJ0d3NbaV0gPSByd3NbcmJ0W2ldXTtcbiAgICAgIGl0d3NbaV0gPSBpd3NbcmJ0W2ldXTtcbiAgICB9XG4gIH07XG5cbiAgRkZUTS5wcm90b3R5cGUudHJhbnNmb3JtID0gZnVuY3Rpb24gdHJhbnNmb3JtIChyd3MsIGl3cywgcnR3cywgaXR3cywgTiwgcmJ0KSB7XG4gICAgdGhpcy5wZXJtdXRlKHJidCwgcndzLCBpd3MsIHJ0d3MsIGl0d3MsIE4pO1xuXG4gICAgZm9yICh2YXIgcyA9IDE7IHMgPCBOOyBzIDw8PSAxKSB7XG4gICAgICB2YXIgbCA9IHMgPDwgMTtcblxuICAgICAgdmFyIHJ0d2RmID0gTWF0aC5jb3MoMiAqIE1hdGguUEkgLyBsKTtcbiAgICAgIHZhciBpdHdkZiA9IE1hdGguc2luKDIgKiBNYXRoLlBJIC8gbCk7XG5cbiAgICAgIGZvciAodmFyIHAgPSAwOyBwIDwgTjsgcCArPSBsKSB7XG4gICAgICAgIHZhciBydHdkZl8gPSBydHdkZjtcbiAgICAgICAgdmFyIGl0d2RmXyA9IGl0d2RmO1xuXG4gICAgICAgIGZvciAodmFyIGogPSAwOyBqIDwgczsgaisrKSB7XG4gICAgICAgICAgdmFyIHJlID0gcnR3c1twICsgal07XG4gICAgICAgICAgdmFyIGllID0gaXR3c1twICsgal07XG5cbiAgICAgICAgICB2YXIgcm8gPSBydHdzW3AgKyBqICsgc107XG4gICAgICAgICAgdmFyIGlvID0gaXR3c1twICsgaiArIHNdO1xuXG4gICAgICAgICAgdmFyIHJ4ID0gcnR3ZGZfICogcm8gLSBpdHdkZl8gKiBpbztcblxuICAgICAgICAgIGlvID0gcnR3ZGZfICogaW8gKyBpdHdkZl8gKiBybztcbiAgICAgICAgICBybyA9IHJ4O1xuXG4gICAgICAgICAgcnR3c1twICsgal0gPSByZSArIHJvO1xuICAgICAgICAgIGl0d3NbcCArIGpdID0gaWUgKyBpbztcblxuICAgICAgICAgIHJ0d3NbcCArIGogKyBzXSA9IHJlIC0gcm87XG4gICAgICAgICAgaXR3c1twICsgaiArIHNdID0gaWUgLSBpbztcblxuICAgICAgICAgIC8qIGpzaGludCBtYXhkZXB0aCA6IGZhbHNlICovXG4gICAgICAgICAgaWYgKGogIT09IGwpIHtcbiAgICAgICAgICAgIHJ4ID0gcnR3ZGYgKiBydHdkZl8gLSBpdHdkZiAqIGl0d2RmXztcblxuICAgICAgICAgICAgaXR3ZGZfID0gcnR3ZGYgKiBpdHdkZl8gKyBpdHdkZiAqIHJ0d2RmXztcbiAgICAgICAgICAgIHJ0d2RmXyA9IHJ4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBGRlRNLnByb3RvdHlwZS5ndWVzc0xlbjEzYiA9IGZ1bmN0aW9uIGd1ZXNzTGVuMTNiIChuLCBtKSB7XG4gICAgdmFyIE4gPSBNYXRoLm1heChtLCBuKSB8IDE7XG4gICAgdmFyIG9kZCA9IE4gJiAxO1xuICAgIHZhciBpID0gMDtcbiAgICBmb3IgKE4gPSBOIC8gMiB8IDA7IE47IE4gPSBOID4+PiAxKSB7XG4gICAgICBpKys7XG4gICAgfVxuXG4gICAgcmV0dXJuIDEgPDwgaSArIDEgKyBvZGQ7XG4gIH07XG5cbiAgRkZUTS5wcm90b3R5cGUuY29uanVnYXRlID0gZnVuY3Rpb24gY29uanVnYXRlIChyd3MsIGl3cywgTikge1xuICAgIGlmIChOIDw9IDEpIHJldHVybjtcblxuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgTiAvIDI7IGkrKykge1xuICAgICAgdmFyIHQgPSByd3NbaV07XG5cbiAgICAgIHJ3c1tpXSA9IHJ3c1tOIC0gaSAtIDFdO1xuICAgICAgcndzW04gLSBpIC0gMV0gPSB0O1xuXG4gICAgICB0ID0gaXdzW2ldO1xuXG4gICAgICBpd3NbaV0gPSAtaXdzW04gLSBpIC0gMV07XG4gICAgICBpd3NbTiAtIGkgLSAxXSA9IC10O1xuICAgIH1cbiAgfTtcblxuICBGRlRNLnByb3RvdHlwZS5ub3JtYWxpemUxM2IgPSBmdW5jdGlvbiBub3JtYWxpemUxM2IgKHdzLCBOKSB7XG4gICAgdmFyIGNhcnJ5ID0gMDtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IE4gLyAyOyBpKyspIHtcbiAgICAgIHZhciB3ID0gTWF0aC5yb3VuZCh3c1syICogaSArIDFdIC8gTikgKiAweDIwMDAgK1xuICAgICAgICBNYXRoLnJvdW5kKHdzWzIgKiBpXSAvIE4pICtcbiAgICAgICAgY2Fycnk7XG5cbiAgICAgIHdzW2ldID0gdyAmIDB4M2ZmZmZmZjtcblxuICAgICAgaWYgKHcgPCAweDQwMDAwMDApIHtcbiAgICAgICAgY2FycnkgPSAwO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY2FycnkgPSB3IC8gMHg0MDAwMDAwIHwgMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gd3M7XG4gIH07XG5cbiAgRkZUTS5wcm90b3R5cGUuY29udmVydDEzYiA9IGZ1bmN0aW9uIGNvbnZlcnQxM2IgKHdzLCBsZW4sIHJ3cywgTikge1xuICAgIHZhciBjYXJyeSA9IDA7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsZW47IGkrKykge1xuICAgICAgY2FycnkgPSBjYXJyeSArICh3c1tpXSB8IDApO1xuXG4gICAgICByd3NbMiAqIGldID0gY2FycnkgJiAweDFmZmY7IGNhcnJ5ID0gY2FycnkgPj4+IDEzO1xuICAgICAgcndzWzIgKiBpICsgMV0gPSBjYXJyeSAmIDB4MWZmZjsgY2FycnkgPSBjYXJyeSA+Pj4gMTM7XG4gICAgfVxuXG4gICAgLy8gUGFkIHdpdGggemVyb2VzXG4gICAgZm9yIChpID0gMiAqIGxlbjsgaSA8IE47ICsraSkge1xuICAgICAgcndzW2ldID0gMDtcbiAgICB9XG5cbiAgICBhc3NlcnQoY2FycnkgPT09IDApO1xuICAgIGFzc2VydCgoY2FycnkgJiB+MHgxZmZmKSA9PT0gMCk7XG4gIH07XG5cbiAgRkZUTS5wcm90b3R5cGUuc3R1YiA9IGZ1bmN0aW9uIHN0dWIgKE4pIHtcbiAgICB2YXIgcGggPSBuZXcgQXJyYXkoTik7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBOOyBpKyspIHtcbiAgICAgIHBoW2ldID0gMDtcbiAgICB9XG5cbiAgICByZXR1cm4gcGg7XG4gIH07XG5cbiAgRkZUTS5wcm90b3R5cGUubXVscCA9IGZ1bmN0aW9uIG11bHAgKHgsIHksIG91dCkge1xuICAgIHZhciBOID0gMiAqIHRoaXMuZ3Vlc3NMZW4xM2IoeC5sZW5ndGgsIHkubGVuZ3RoKTtcblxuICAgIHZhciByYnQgPSB0aGlzLm1ha2VSQlQoTik7XG5cbiAgICB2YXIgXyA9IHRoaXMuc3R1YihOKTtcblxuICAgIHZhciByd3MgPSBuZXcgQXJyYXkoTik7XG4gICAgdmFyIHJ3c3QgPSBuZXcgQXJyYXkoTik7XG4gICAgdmFyIGl3c3QgPSBuZXcgQXJyYXkoTik7XG5cbiAgICB2YXIgbnJ3cyA9IG5ldyBBcnJheShOKTtcbiAgICB2YXIgbnJ3c3QgPSBuZXcgQXJyYXkoTik7XG4gICAgdmFyIG5pd3N0ID0gbmV3IEFycmF5KE4pO1xuXG4gICAgdmFyIHJtd3MgPSBvdXQud29yZHM7XG4gICAgcm13cy5sZW5ndGggPSBOO1xuXG4gICAgdGhpcy5jb252ZXJ0MTNiKHgud29yZHMsIHgubGVuZ3RoLCByd3MsIE4pO1xuICAgIHRoaXMuY29udmVydDEzYih5LndvcmRzLCB5Lmxlbmd0aCwgbnJ3cywgTik7XG5cbiAgICB0aGlzLnRyYW5zZm9ybShyd3MsIF8sIHJ3c3QsIGl3c3QsIE4sIHJidCk7XG4gICAgdGhpcy50cmFuc2Zvcm0obnJ3cywgXywgbnJ3c3QsIG5pd3N0LCBOLCByYnQpO1xuXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBOOyBpKyspIHtcbiAgICAgIHZhciByeCA9IHJ3c3RbaV0gKiBucndzdFtpXSAtIGl3c3RbaV0gKiBuaXdzdFtpXTtcbiAgICAgIGl3c3RbaV0gPSByd3N0W2ldICogbml3c3RbaV0gKyBpd3N0W2ldICogbnJ3c3RbaV07XG4gICAgICByd3N0W2ldID0gcng7XG4gICAgfVxuXG4gICAgdGhpcy5jb25qdWdhdGUocndzdCwgaXdzdCwgTik7XG4gICAgdGhpcy50cmFuc2Zvcm0ocndzdCwgaXdzdCwgcm13cywgXywgTiwgcmJ0KTtcbiAgICB0aGlzLmNvbmp1Z2F0ZShybXdzLCBfLCBOKTtcbiAgICB0aGlzLm5vcm1hbGl6ZTEzYihybXdzLCBOKTtcblxuICAgIG91dC5uZWdhdGl2ZSA9IHgubmVnYXRpdmUgXiB5Lm5lZ2F0aXZlO1xuICAgIG91dC5sZW5ndGggPSB4Lmxlbmd0aCArIHkubGVuZ3RoO1xuICAgIHJldHVybiBvdXQuX3N0cmlwKCk7XG4gIH07XG5cbiAgLy8gTXVsdGlwbHkgYHRoaXNgIGJ5IGBudW1gXG4gIEJOLnByb3RvdHlwZS5tdWwgPSBmdW5jdGlvbiBtdWwgKG51bSkge1xuICAgIHZhciBvdXQgPSBuZXcgQk4obnVsbCk7XG4gICAgb3V0LndvcmRzID0gbmV3IEFycmF5KHRoaXMubGVuZ3RoICsgbnVtLmxlbmd0aCk7XG4gICAgcmV0dXJuIHRoaXMubXVsVG8obnVtLCBvdXQpO1xuICB9O1xuXG4gIC8vIE11bHRpcGx5IGVtcGxveWluZyBGRlRcbiAgQk4ucHJvdG90eXBlLm11bGYgPSBmdW5jdGlvbiBtdWxmIChudW0pIHtcbiAgICB2YXIgb3V0ID0gbmV3IEJOKG51bGwpO1xuICAgIG91dC53b3JkcyA9IG5ldyBBcnJheSh0aGlzLmxlbmd0aCArIG51bS5sZW5ndGgpO1xuICAgIHJldHVybiBqdW1ib011bFRvKHRoaXMsIG51bSwgb3V0KTtcbiAgfTtcblxuICAvLyBJbi1wbGFjZSBNdWx0aXBsaWNhdGlvblxuICBCTi5wcm90b3R5cGUuaW11bCA9IGZ1bmN0aW9uIGltdWwgKG51bSkge1xuICAgIHJldHVybiB0aGlzLmNsb25lKCkubXVsVG8obnVtLCB0aGlzKTtcbiAgfTtcblxuICBCTi5wcm90b3R5cGUuaW11bG4gPSBmdW5jdGlvbiBpbXVsbiAobnVtKSB7XG4gICAgdmFyIGlzTmVnTnVtID0gbnVtIDwgMDtcbiAgICBpZiAoaXNOZWdOdW0pIG51bSA9IC1udW07XG5cbiAgICBhc3NlcnQodHlwZW9mIG51bSA9PT0gJ251bWJlcicpO1xuICAgIGFzc2VydChudW0gPCAweDQwMDAwMDApO1xuXG4gICAgLy8gQ2FycnlcbiAgICB2YXIgY2FycnkgPSAwO1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5sZW5ndGg7IGkrKykge1xuICAgICAgdmFyIHcgPSAodGhpcy53b3Jkc1tpXSB8IDApICogbnVtO1xuICAgICAgdmFyIGxvID0gKHcgJiAweDNmZmZmZmYpICsgKGNhcnJ5ICYgMHgzZmZmZmZmKTtcbiAgICAgIGNhcnJ5ID4+PSAyNjtcbiAgICAgIGNhcnJ5ICs9ICh3IC8gMHg0MDAwMDAwKSB8IDA7XG4gICAgICAvLyBOT1RFOiBsbyBpcyAyN2JpdCBtYXhpbXVtXG4gICAgICBjYXJyeSArPSBsbyA+Pj4gMjY7XG4gICAgICB0aGlzLndvcmRzW2ldID0gbG8gJiAweDNmZmZmZmY7XG4gICAgfVxuXG4gICAgaWYgKGNhcnJ5ICE9PSAwKSB7XG4gICAgICB0aGlzLndvcmRzW2ldID0gY2Fycnk7XG4gICAgICB0aGlzLmxlbmd0aCsrO1xuICAgIH1cblxuICAgIHJldHVybiBpc05lZ051bSA/IHRoaXMuaW5lZygpIDogdGhpcztcbiAgfTtcblxuICBCTi5wcm90b3R5cGUubXVsbiA9IGZ1bmN0aW9uIG11bG4gKG51bSkge1xuICAgIHJldHVybiB0aGlzLmNsb25lKCkuaW11bG4obnVtKTtcbiAgfTtcblxuICAvLyBgdGhpc2AgKiBgdGhpc2BcbiAgQk4ucHJvdG90eXBlLnNxciA9IGZ1bmN0aW9uIHNxciAoKSB7XG4gICAgcmV0dXJuIHRoaXMubXVsKHRoaXMpO1xuICB9O1xuXG4gIC8vIGB0aGlzYCAqIGB0aGlzYCBpbi1wbGFjZVxuICBCTi5wcm90b3R5cGUuaXNxciA9IGZ1bmN0aW9uIGlzcXIgKCkge1xuICAgIHJldHVybiB0aGlzLmltdWwodGhpcy5jbG9uZSgpKTtcbiAgfTtcblxuICAvLyBNYXRoLnBvdyhgdGhpc2AsIGBudW1gKVxuICBCTi5wcm90b3R5cGUucG93ID0gZnVuY3Rpb24gcG93IChudW0pIHtcbiAgICB2YXIgdyA9IHRvQml0QXJyYXkobnVtKTtcbiAgICBpZiAody5sZW5ndGggPT09IDApIHJldHVybiBuZXcgQk4oMSk7XG5cbiAgICAvLyBTa2lwIGxlYWRpbmcgemVyb2VzXG4gICAgdmFyIHJlcyA9IHRoaXM7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCB3Lmxlbmd0aDsgaSsrLCByZXMgPSByZXMuc3FyKCkpIHtcbiAgICAgIGlmICh3W2ldICE9PSAwKSBicmVhaztcbiAgICB9XG5cbiAgICBpZiAoKytpIDwgdy5sZW5ndGgpIHtcbiAgICAgIGZvciAodmFyIHEgPSByZXMuc3FyKCk7IGkgPCB3Lmxlbmd0aDsgaSsrLCBxID0gcS5zcXIoKSkge1xuICAgICAgICBpZiAod1tpXSA9PT0gMCkgY29udGludWU7XG5cbiAgICAgICAgcmVzID0gcmVzLm11bChxKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gcmVzO1xuICB9O1xuXG4gIC8vIFNoaWZ0LWxlZnQgaW4tcGxhY2VcbiAgQk4ucHJvdG90eXBlLml1c2hsbiA9IGZ1bmN0aW9uIGl1c2hsbiAoYml0cykge1xuICAgIGFzc2VydCh0eXBlb2YgYml0cyA9PT0gJ251bWJlcicgJiYgYml0cyA+PSAwKTtcbiAgICB2YXIgciA9IGJpdHMgJSAyNjtcbiAgICB2YXIgcyA9IChiaXRzIC0gcikgLyAyNjtcbiAgICB2YXIgY2FycnlNYXNrID0gKDB4M2ZmZmZmZiA+Pj4gKDI2IC0gcikpIDw8ICgyNiAtIHIpO1xuICAgIHZhciBpO1xuXG4gICAgaWYgKHIgIT09IDApIHtcbiAgICAgIHZhciBjYXJyeSA9IDA7XG5cbiAgICAgIGZvciAoaSA9IDA7IGkgPCB0aGlzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHZhciBuZXdDYXJyeSA9IHRoaXMud29yZHNbaV0gJiBjYXJyeU1hc2s7XG4gICAgICAgIHZhciBjID0gKCh0aGlzLndvcmRzW2ldIHwgMCkgLSBuZXdDYXJyeSkgPDwgcjtcbiAgICAgICAgdGhpcy53b3Jkc1tpXSA9IGMgfCBjYXJyeTtcbiAgICAgICAgY2FycnkgPSBuZXdDYXJyeSA+Pj4gKDI2IC0gcik7XG4gICAgICB9XG5cbiAgICAgIGlmIChjYXJyeSkge1xuICAgICAgICB0aGlzLndvcmRzW2ldID0gY2Fycnk7XG4gICAgICAgIHRoaXMubGVuZ3RoKys7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHMgIT09IDApIHtcbiAgICAgIGZvciAoaSA9IHRoaXMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHtcbiAgICAgICAgdGhpcy53b3Jkc1tpICsgc10gPSB0aGlzLndvcmRzW2ldO1xuICAgICAgfVxuXG4gICAgICBmb3IgKGkgPSAwOyBpIDwgczsgaSsrKSB7XG4gICAgICAgIHRoaXMud29yZHNbaV0gPSAwO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmxlbmd0aCArPSBzO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9zdHJpcCgpO1xuICB9O1xuXG4gIEJOLnByb3RvdHlwZS5pc2hsbiA9IGZ1bmN0aW9uIGlzaGxuIChiaXRzKSB7XG4gICAgLy8gVE9ETyhpbmR1dG55KTogaW1wbGVtZW50IG1lXG4gICAgYXNzZXJ0KHRoaXMubmVnYXRpdmUgPT09IDApO1xuICAgIHJldHVybiB0aGlzLml1c2hsbihiaXRzKTtcbiAgfTtcblxuICAvLyBTaGlmdC1yaWdodCBpbi1wbGFjZVxuICAvLyBOT1RFOiBgaGludGAgaXMgYSBsb3dlc3QgYml0IGJlZm9yZSB0cmFpbGluZyB6ZXJvZXNcbiAgLy8gTk9URTogaWYgYGV4dGVuZGVkYCBpcyBwcmVzZW50IC0gaXQgd2lsbCBiZSBmaWxsZWQgd2l0aCBkZXN0cm95ZWQgYml0c1xuICBCTi5wcm90b3R5cGUuaXVzaHJuID0gZnVuY3Rpb24gaXVzaHJuIChiaXRzLCBoaW50LCBleHRlbmRlZCkge1xuICAgIGFzc2VydCh0eXBlb2YgYml0cyA9PT0gJ251bWJlcicgJiYgYml0cyA+PSAwKTtcbiAgICB2YXIgaDtcbiAgICBpZiAoaGludCkge1xuICAgICAgaCA9IChoaW50IC0gKGhpbnQgJSAyNikpIC8gMjY7XG4gICAgfSBlbHNlIHtcbiAgICAgIGggPSAwO1xuICAgIH1cblxuICAgIHZhciByID0gYml0cyAlIDI2O1xuICAgIHZhciBzID0gTWF0aC5taW4oKGJpdHMgLSByKSAvIDI2LCB0aGlzLmxlbmd0aCk7XG4gICAgdmFyIG1hc2sgPSAweDNmZmZmZmYgXiAoKDB4M2ZmZmZmZiA+Pj4gcikgPDwgcik7XG4gICAgdmFyIG1hc2tlZFdvcmRzID0gZXh0ZW5kZWQ7XG5cbiAgICBoIC09IHM7XG4gICAgaCA9IE1hdGgubWF4KDAsIGgpO1xuXG4gICAgLy8gRXh0ZW5kZWQgbW9kZSwgY29weSBtYXNrZWQgcGFydFxuICAgIGlmIChtYXNrZWRXb3Jkcykge1xuICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBzOyBpKyspIHtcbiAgICAgICAgbWFza2VkV29yZHMud29yZHNbaV0gPSB0aGlzLndvcmRzW2ldO1xuICAgICAgfVxuICAgICAgbWFza2VkV29yZHMubGVuZ3RoID0gcztcbiAgICB9XG5cbiAgICBpZiAocyA9PT0gMCkge1xuICAgICAgLy8gTm8tb3AsIHdlIHNob3VsZCBub3QgbW92ZSBhbnl0aGluZyBhdCBhbGxcbiAgICB9IGVsc2UgaWYgKHRoaXMubGVuZ3RoID4gcykge1xuICAgICAgdGhpcy5sZW5ndGggLT0gcztcbiAgICAgIGZvciAoaSA9IDA7IGkgPCB0aGlzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHRoaXMud29yZHNbaV0gPSB0aGlzLndvcmRzW2kgKyBzXTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy53b3Jkc1swXSA9IDA7XG4gICAgICB0aGlzLmxlbmd0aCA9IDE7XG4gICAgfVxuXG4gICAgdmFyIGNhcnJ5ID0gMDtcbiAgICBmb3IgKGkgPSB0aGlzLmxlbmd0aCAtIDE7IGkgPj0gMCAmJiAoY2FycnkgIT09IDAgfHwgaSA+PSBoKTsgaS0tKSB7XG4gICAgICB2YXIgd29yZCA9IHRoaXMud29yZHNbaV0gfCAwO1xuICAgICAgdGhpcy53b3Jkc1tpXSA9IChjYXJyeSA8PCAoMjYgLSByKSkgfCAod29yZCA+Pj4gcik7XG4gICAgICBjYXJyeSA9IHdvcmQgJiBtYXNrO1xuICAgIH1cblxuICAgIC8vIFB1c2ggY2FycmllZCBiaXRzIGFzIGEgbWFza1xuICAgIGlmIChtYXNrZWRXb3JkcyAmJiBjYXJyeSAhPT0gMCkge1xuICAgICAgbWFza2VkV29yZHMud29yZHNbbWFza2VkV29yZHMubGVuZ3RoKytdID0gY2Fycnk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aGlzLndvcmRzWzBdID0gMDtcbiAgICAgIHRoaXMubGVuZ3RoID0gMTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5fc3RyaXAoKTtcbiAgfTtcblxuICBCTi5wcm90b3R5cGUuaXNocm4gPSBmdW5jdGlvbiBpc2hybiAoYml0cywgaGludCwgZXh0ZW5kZWQpIHtcbiAgICAvLyBUT0RPKGluZHV0bnkpOiBpbXBsZW1lbnQgbWVcbiAgICBhc3NlcnQodGhpcy5uZWdhdGl2ZSA9PT0gMCk7XG4gICAgcmV0dXJuIHRoaXMuaXVzaHJuKGJpdHMsIGhpbnQsIGV4dGVuZGVkKTtcbiAgfTtcblxuICAvLyBTaGlmdC1sZWZ0XG4gIEJOLnByb3RvdHlwZS5zaGxuID0gZnVuY3Rpb24gc2hsbiAoYml0cykge1xuICAgIHJldHVybiB0aGlzLmNsb25lKCkuaXNobG4oYml0cyk7XG4gIH07XG5cbiAgQk4ucHJvdG90eXBlLnVzaGxuID0gZnVuY3Rpb24gdXNobG4gKGJpdHMpIHtcbiAgICByZXR1cm4gdGhpcy5jbG9uZSgpLml1c2hsbihiaXRzKTtcbiAgfTtcblxuICAvLyBTaGlmdC1yaWdodFxuICBCTi5wcm90b3R5cGUuc2hybiA9IGZ1bmN0aW9uIHNocm4gKGJpdHMpIHtcbiAgICByZXR1cm4gdGhpcy5jbG9uZSgpLmlzaHJuKGJpdHMpO1xuICB9O1xuXG4gIEJOLnByb3RvdHlwZS51c2hybiA9IGZ1bmN0aW9uIHVzaHJuIChiaXRzKSB7XG4gICAgcmV0dXJuIHRoaXMuY2xvbmUoKS5pdXNocm4oYml0cyk7XG4gIH07XG5cbiAgLy8gVGVzdCBpZiBuIGJpdCBpcyBzZXRcbiAgQk4ucHJvdG90eXBlLnRlc3RuID0gZnVuY3Rpb24gdGVzdG4gKGJpdCkge1xuICAgIGFzc2VydCh0eXBlb2YgYml0ID09PSAnbnVtYmVyJyAmJiBiaXQgPj0gMCk7XG4gICAgdmFyIHIgPSBiaXQgJSAyNjtcbiAgICB2YXIgcyA9IChiaXQgLSByKSAvIDI2O1xuICAgIHZhciBxID0gMSA8PCByO1xuXG4gICAgLy8gRmFzdCBjYXNlOiBiaXQgaXMgbXVjaCBoaWdoZXIgdGhhbiBhbGwgZXhpc3Rpbmcgd29yZHNcbiAgICBpZiAodGhpcy5sZW5ndGggPD0gcykgcmV0dXJuIGZhbHNlO1xuXG4gICAgLy8gQ2hlY2sgYml0IGFuZCByZXR1cm5cbiAgICB2YXIgdyA9IHRoaXMud29yZHNbc107XG5cbiAgICByZXR1cm4gISEodyAmIHEpO1xuICB9O1xuXG4gIC8vIFJldHVybiBvbmx5IGxvd2VycyBiaXRzIG9mIG51bWJlciAoaW4tcGxhY2UpXG4gIEJOLnByb3RvdHlwZS5pbWFza24gPSBmdW5jdGlvbiBpbWFza24gKGJpdHMpIHtcbiAgICBhc3NlcnQodHlwZW9mIGJpdHMgPT09ICdudW1iZXInICYmIGJpdHMgPj0gMCk7XG4gICAgdmFyIHIgPSBiaXRzICUgMjY7XG4gICAgdmFyIHMgPSAoYml0cyAtIHIpIC8gMjY7XG5cbiAgICBhc3NlcnQodGhpcy5uZWdhdGl2ZSA9PT0gMCwgJ2ltYXNrbiB3b3JrcyBvbmx5IHdpdGggcG9zaXRpdmUgbnVtYmVycycpO1xuXG4gICAgaWYgKHRoaXMubGVuZ3RoIDw9IHMpIHtcbiAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIGlmIChyICE9PSAwKSB7XG4gICAgICBzKys7XG4gICAgfVxuICAgIHRoaXMubGVuZ3RoID0gTWF0aC5taW4ocywgdGhpcy5sZW5ndGgpO1xuXG4gICAgaWYgKHIgIT09IDApIHtcbiAgICAgIHZhciBtYXNrID0gMHgzZmZmZmZmIF4gKCgweDNmZmZmZmYgPj4+IHIpIDw8IHIpO1xuICAgICAgdGhpcy53b3Jkc1t0aGlzLmxlbmd0aCAtIDFdICY9IG1hc2s7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuX3N0cmlwKCk7XG4gIH07XG5cbiAgLy8gUmV0dXJuIG9ubHkgbG93ZXJzIGJpdHMgb2YgbnVtYmVyXG4gIEJOLnByb3RvdHlwZS5tYXNrbiA9IGZ1bmN0aW9uIG1hc2tuIChiaXRzKSB7XG4gICAgcmV0dXJuIHRoaXMuY2xvbmUoKS5pbWFza24oYml0cyk7XG4gIH07XG5cbiAgLy8gQWRkIHBsYWluIG51bWJlciBgbnVtYCB0byBgdGhpc2BcbiAgQk4ucHJvdG90eXBlLmlhZGRuID0gZnVuY3Rpb24gaWFkZG4gKG51bSkge1xuICAgIGFzc2VydCh0eXBlb2YgbnVtID09PSAnbnVtYmVyJyk7XG4gICAgYXNzZXJ0KG51bSA8IDB4NDAwMDAwMCk7XG4gICAgaWYgKG51bSA8IDApIHJldHVybiB0aGlzLmlzdWJuKC1udW0pO1xuXG4gICAgLy8gUG9zc2libGUgc2lnbiBjaGFuZ2VcbiAgICBpZiAodGhpcy5uZWdhdGl2ZSAhPT0gMCkge1xuICAgICAgaWYgKHRoaXMubGVuZ3RoID09PSAxICYmICh0aGlzLndvcmRzWzBdIHwgMCkgPD0gbnVtKSB7XG4gICAgICAgIHRoaXMud29yZHNbMF0gPSBudW0gLSAodGhpcy53b3Jkc1swXSB8IDApO1xuICAgICAgICB0aGlzLm5lZ2F0aXZlID0gMDtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgICB9XG5cbiAgICAgIHRoaXMubmVnYXRpdmUgPSAwO1xuICAgICAgdGhpcy5pc3VibihudW0pO1xuICAgICAgdGhpcy5uZWdhdGl2ZSA9IDE7XG4gICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICAvLyBBZGQgd2l0aG91dCBjaGVja3NcbiAgICByZXR1cm4gdGhpcy5faWFkZG4obnVtKTtcbiAgfTtcblxuICBCTi5wcm90b3R5cGUuX2lhZGRuID0gZnVuY3Rpb24gX2lhZGRuIChudW0pIHtcbiAgICB0aGlzLndvcmRzWzBdICs9IG51bTtcblxuICAgIC8vIENhcnJ5XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLmxlbmd0aCAmJiB0aGlzLndvcmRzW2ldID49IDB4NDAwMDAwMDsgaSsrKSB7XG4gICAgICB0aGlzLndvcmRzW2ldIC09IDB4NDAwMDAwMDtcbiAgICAgIGlmIChpID09PSB0aGlzLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgdGhpcy53b3Jkc1tpICsgMV0gPSAxO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy53b3Jkc1tpICsgMV0rKztcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5sZW5ndGggPSBNYXRoLm1heCh0aGlzLmxlbmd0aCwgaSArIDEpO1xuXG4gICAgcmV0dXJuIHRoaXM7XG4gIH07XG5cbiAgLy8gU3VidHJhY3QgcGxhaW4gbnVtYmVyIGBudW1gIGZyb20gYHRoaXNgXG4gIEJOLnByb3RvdHlwZS5pc3VibiA9IGZ1bmN0aW9uIGlzdWJuIChudW0pIHtcbiAgICBhc3NlcnQodHlwZW9mIG51bSA9PT0gJ251bWJlcicpO1xuICAgIGFzc2VydChudW0gPCAweDQwMDAwMDApO1xuICAgIGlmIChudW0gPCAwKSByZXR1cm4gdGhpcy5pYWRkbigtbnVtKTtcblxuICAgIGlmICh0aGlzLm5lZ2F0aXZlICE9PSAwKSB7XG4gICAgICB0aGlzLm5lZ2F0aXZlID0gMDtcbiAgICAgIHRoaXMuaWFkZG4obnVtKTtcbiAgICAgIHRoaXMubmVnYXRpdmUgPSAxO1xuICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgdGhpcy53b3Jkc1swXSAtPSBudW07XG5cbiAgICBpZiAodGhpcy5sZW5ndGggPT09IDEgJiYgdGhpcy53b3Jkc1swXSA8IDApIHtcbiAgICAgIHRoaXMud29yZHNbMF0gPSAtdGhpcy53b3Jkc1swXTtcbiAgICAgIHRoaXMubmVnYXRpdmUgPSAxO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBDYXJyeVxuICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLmxlbmd0aCAmJiB0aGlzLndvcmRzW2ldIDwgMDsgaSsrKSB7XG4gICAgICAgIHRoaXMud29yZHNbaV0gKz0gMHg0MDAwMDAwO1xuICAgICAgICB0aGlzLndvcmRzW2kgKyAxXSAtPSAxO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9zdHJpcCgpO1xuICB9O1xuXG4gIEJOLnByb3RvdHlwZS5hZGRuID0gZnVuY3Rpb24gYWRkbiAobnVtKSB7XG4gICAgcmV0dXJuIHRoaXMuY2xvbmUoKS5pYWRkbihudW0pO1xuICB9O1xuXG4gIEJOLnByb3RvdHlwZS5zdWJuID0gZnVuY3Rpb24gc3VibiAobnVtKSB7XG4gICAgcmV0dXJuIHRoaXMuY2xvbmUoKS5pc3VibihudW0pO1xuICB9O1xuXG4gIEJOLnByb3RvdHlwZS5pYWJzID0gZnVuY3Rpb24gaWFicyAoKSB7XG4gICAgdGhpcy5uZWdhdGl2ZSA9IDA7XG5cbiAgICByZXR1cm4gdGhpcztcbiAgfTtcblxuICBCTi5wcm90b3R5cGUuYWJzID0gZnVuY3Rpb24gYWJzICgpIHtcbiAgICByZXR1cm4gdGhpcy5jbG9uZSgpLmlhYnMoKTtcbiAgfTtcblxuICBCTi5wcm90b3R5cGUuX2lzaGxuc3VibXVsID0gZnVuY3Rpb24gX2lzaGxuc3VibXVsIChudW0sIG11bCwgc2hpZnQpIHtcbiAgICB2YXIgbGVuID0gbnVtLmxlbmd0aCArIHNoaWZ0O1xuICAgIHZhciBpO1xuXG4gICAgdGhpcy5fZXhwYW5kKGxlbik7XG5cbiAgICB2YXIgdztcbiAgICB2YXIgY2FycnkgPSAwO1xuICAgIGZvciAoaSA9IDA7IGkgPCBudW0ubGVuZ3RoOyBpKyspIHtcbiAgICAgIHcgPSAodGhpcy53b3Jkc1tpICsgc2hpZnRdIHwgMCkgKyBjYXJyeTtcbiAgICAgIHZhciByaWdodCA9IChudW0ud29yZHNbaV0gfCAwKSAqIG11bDtcbiAgICAgIHcgLT0gcmlnaHQgJiAweDNmZmZmZmY7XG4gICAgICBjYXJyeSA9ICh3ID4+IDI2KSAtICgocmlnaHQgLyAweDQwMDAwMDApIHwgMCk7XG4gICAgICB0aGlzLndvcmRzW2kgKyBzaGlmdF0gPSB3ICYgMHgzZmZmZmZmO1xuICAgIH1cbiAgICBmb3IgKDsgaSA8IHRoaXMubGVuZ3RoIC0gc2hpZnQ7IGkrKykge1xuICAgICAgdyA9ICh0aGlzLndvcmRzW2kgKyBzaGlmdF0gfCAwKSArIGNhcnJ5O1xuICAgICAgY2FycnkgPSB3ID4+IDI2O1xuICAgICAgdGhpcy53b3Jkc1tpICsgc2hpZnRdID0gdyAmIDB4M2ZmZmZmZjtcbiAgICB9XG5cbiAgICBpZiAoY2FycnkgPT09IDApIHJldHVybiB0aGlzLl9zdHJpcCgpO1xuXG4gICAgLy8gU3VidHJhY3Rpb24gb3ZlcmZsb3dcbiAgICBhc3NlcnQoY2FycnkgPT09IC0xKTtcbiAgICBjYXJyeSA9IDA7XG4gICAgZm9yIChpID0gMDsgaSA8IHRoaXMubGVuZ3RoOyBpKyspIHtcbiAgICAgIHcgPSAtKHRoaXMud29yZHNbaV0gfCAwKSArIGNhcnJ5O1xuICAgICAgY2FycnkgPSB3ID4+IDI2O1xuICAgICAgdGhpcy53b3Jkc1tpXSA9IHcgJiAweDNmZmZmZmY7XG4gICAgfVxuICAgIHRoaXMubmVnYXRpdmUgPSAxO1xuXG4gICAgcmV0dXJuIHRoaXMuX3N0cmlwKCk7XG4gIH07XG5cbiAgQk4ucHJvdG90eXBlLl93b3JkRGl2ID0gZnVuY3Rpb24gX3dvcmREaXYgKG51bSwgbW9kZSkge1xuICAgIHZhciBzaGlmdCA9IHRoaXMubGVuZ3RoIC0gbnVtLmxlbmd0aDtcblxuICAgIHZhciBhID0gdGhpcy5jbG9uZSgpO1xuICAgIHZhciBiID0gbnVtO1xuXG4gICAgLy8gTm9ybWFsaXplXG4gICAgdmFyIGJoaSA9IGIud29yZHNbYi5sZW5ndGggLSAxXSB8IDA7XG4gICAgdmFyIGJoaUJpdHMgPSB0aGlzLl9jb3VudEJpdHMoYmhpKTtcbiAgICBzaGlmdCA9IDI2IC0gYmhpQml0cztcbiAgICBpZiAoc2hpZnQgIT09IDApIHtcbiAgICAgIGIgPSBiLnVzaGxuKHNoaWZ0KTtcbiAgICAgIGEuaXVzaGxuKHNoaWZ0KTtcbiAgICAgIGJoaSA9IGIud29yZHNbYi5sZW5ndGggLSAxXSB8IDA7XG4gICAgfVxuXG4gICAgLy8gSW5pdGlhbGl6ZSBxdW90aWVudFxuICAgIHZhciBtID0gYS5sZW5ndGggLSBiLmxlbmd0aDtcbiAgICB2YXIgcTtcblxuICAgIGlmIChtb2RlICE9PSAnbW9kJykge1xuICAgICAgcSA9IG5ldyBCTihudWxsKTtcbiAgICAgIHEubGVuZ3RoID0gbSArIDE7XG4gICAgICBxLndvcmRzID0gbmV3IEFycmF5KHEubGVuZ3RoKTtcbiAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgcS5sZW5ndGg7IGkrKykge1xuICAgICAgICBxLndvcmRzW2ldID0gMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB2YXIgZGlmZiA9IGEuY2xvbmUoKS5faXNobG5zdWJtdWwoYiwgMSwgbSk7XG4gICAgaWYgKGRpZmYubmVnYXRpdmUgPT09IDApIHtcbiAgICAgIGEgPSBkaWZmO1xuICAgICAgaWYgKHEpIHtcbiAgICAgICAgcS53b3Jkc1ttXSA9IDE7XG4gICAgICB9XG4gICAgfVxuXG4gICAgZm9yICh2YXIgaiA9IG0gLSAxOyBqID49IDA7IGotLSkge1xuICAgICAgdmFyIHFqID0gKGEud29yZHNbYi5sZW5ndGggKyBqXSB8IDApICogMHg0MDAwMDAwICtcbiAgICAgICAgKGEud29yZHNbYi5sZW5ndGggKyBqIC0gMV0gfCAwKTtcblxuICAgICAgLy8gTk9URTogKHFqIC8gYmhpKSBpcyAoMHgzZmZmZmZmICogMHg0MDAwMDAwICsgMHgzZmZmZmZmKSAvIDB4MjAwMDAwMCBtYXhcbiAgICAgIC8vICgweDdmZmZmZmYpXG4gICAgICBxaiA9IE1hdGgubWluKChxaiAvIGJoaSkgfCAwLCAweDNmZmZmZmYpO1xuXG4gICAgICBhLl9pc2hsbnN1Ym11bChiLCBxaiwgaik7XG4gICAgICB3aGlsZSAoYS5uZWdhdGl2ZSAhPT0gMCkge1xuICAgICAgICBxai0tO1xuICAgICAgICBhLm5lZ2F0aXZlID0gMDtcbiAgICAgICAgYS5faXNobG5zdWJtdWwoYiwgMSwgaik7XG4gICAgICAgIGlmICghYS5pc1plcm8oKSkge1xuICAgICAgICAgIGEubmVnYXRpdmUgXj0gMTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKHEpIHtcbiAgICAgICAgcS53b3Jkc1tqXSA9IHFqO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAocSkge1xuICAgICAgcS5fc3RyaXAoKTtcbiAgICB9XG4gICAgYS5fc3RyaXAoKTtcblxuICAgIC8vIERlbm9ybWFsaXplXG4gICAgaWYgKG1vZGUgIT09ICdkaXYnICYmIHNoaWZ0ICE9PSAwKSB7XG4gICAgICBhLml1c2hybihzaGlmdCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIGRpdjogcSB8fCBudWxsLFxuICAgICAgbW9kOiBhXG4gICAgfTtcbiAgfTtcblxuICAvLyBOT1RFOiAxKSBgbW9kZWAgY2FuIGJlIHNldCB0byBgbW9kYCB0byByZXF1ZXN0IG1vZCBvbmx5LFxuICAvLyAgICAgICB0byBgZGl2YCB0byByZXF1ZXN0IGRpdiBvbmx5LCBvciBiZSBhYnNlbnQgdG9cbiAgLy8gICAgICAgcmVxdWVzdCBib3RoIGRpdiAmIG1vZFxuICAvLyAgICAgICAyKSBgcG9zaXRpdmVgIGlzIHRydWUgaWYgdW5zaWduZWQgbW9kIGlzIHJlcXVlc3RlZFxuICBCTi5wcm90b3R5cGUuZGl2bW9kID0gZnVuY3Rpb24gZGl2bW9kIChudW0sIG1vZGUsIHBvc2l0aXZlKSB7XG4gICAgYXNzZXJ0KCFudW0uaXNaZXJvKCkpO1xuXG4gICAgaWYgKHRoaXMuaXNaZXJvKCkpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGRpdjogbmV3IEJOKDApLFxuICAgICAgICBtb2Q6IG5ldyBCTigwKVxuICAgICAgfTtcbiAgICB9XG5cbiAgICB2YXIgZGl2LCBtb2QsIHJlcztcbiAgICBpZiAodGhpcy5uZWdhdGl2ZSAhPT0gMCAmJiBudW0ubmVnYXRpdmUgPT09IDApIHtcbiAgICAgIHJlcyA9IHRoaXMubmVnKCkuZGl2bW9kKG51bSwgbW9kZSk7XG5cbiAgICAgIGlmIChtb2RlICE9PSAnbW9kJykge1xuICAgICAgICBkaXYgPSByZXMuZGl2Lm5lZygpO1xuICAgICAgfVxuXG4gICAgICBpZiAobW9kZSAhPT0gJ2RpdicpIHtcbiAgICAgICAgbW9kID0gcmVzLm1vZC5uZWcoKTtcbiAgICAgICAgaWYgKHBvc2l0aXZlICYmIG1vZC5uZWdhdGl2ZSAhPT0gMCkge1xuICAgICAgICAgIG1vZC5pYWRkKG51bSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZGl2OiBkaXYsXG4gICAgICAgIG1vZDogbW9kXG4gICAgICB9O1xuICAgIH1cblxuICAgIGlmICh0aGlzLm5lZ2F0aXZlID09PSAwICYmIG51bS5uZWdhdGl2ZSAhPT0gMCkge1xuICAgICAgcmVzID0gdGhpcy5kaXZtb2QobnVtLm5lZygpLCBtb2RlKTtcblxuICAgICAgaWYgKG1vZGUgIT09ICdtb2QnKSB7XG4gICAgICAgIGRpdiA9IHJlcy5kaXYubmVnKCk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIGRpdjogZGl2LFxuICAgICAgICBtb2Q6IHJlcy5tb2RcbiAgICAgIH07XG4gICAgfVxuXG4gICAgaWYgKCh0aGlzLm5lZ2F0aXZlICYgbnVtLm5lZ2F0aXZlKSAhPT0gMCkge1xuICAgICAgcmVzID0gdGhpcy5uZWcoKS5kaXZtb2QobnVtLm5lZygpLCBtb2RlKTtcblxuICAgICAgaWYgKG1vZGUgIT09ICdkaXYnKSB7XG4gICAgICAgIG1vZCA9IHJlcy5tb2QubmVnKCk7XG4gICAgICAgIGlmIChwb3NpdGl2ZSAmJiBtb2QubmVnYXRpdmUgIT09IDApIHtcbiAgICAgICAgICBtb2QuaXN1YihudW0pO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIGRpdjogcmVzLmRpdixcbiAgICAgICAgbW9kOiBtb2RcbiAgICAgIH07XG4gICAgfVxuXG4gICAgLy8gQm90aCBudW1iZXJzIGFyZSBwb3NpdGl2ZSBhdCB0aGlzIHBvaW50XG5cbiAgICAvLyBTdHJpcCBib3RoIG51bWJlcnMgdG8gYXBwcm94aW1hdGUgc2hpZnQgdmFsdWVcbiAgICBpZiAobnVtLmxlbmd0aCA+IHRoaXMubGVuZ3RoIHx8IHRoaXMuY21wKG51bSkgPCAwKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBkaXY6IG5ldyBCTigwKSxcbiAgICAgICAgbW9kOiB0aGlzXG4gICAgICB9O1xuICAgIH1cblxuICAgIC8vIFZlcnkgc2hvcnQgcmVkdWN0aW9uXG4gICAgaWYgKG51bS5sZW5ndGggPT09IDEpIHtcbiAgICAgIGlmIChtb2RlID09PSAnZGl2Jykge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGRpdjogdGhpcy5kaXZuKG51bS53b3Jkc1swXSksXG4gICAgICAgICAgbW9kOiBudWxsXG4gICAgICAgIH07XG4gICAgICB9XG5cbiAgICAgIGlmIChtb2RlID09PSAnbW9kJykge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGRpdjogbnVsbCxcbiAgICAgICAgICBtb2Q6IG5ldyBCTih0aGlzLm1vZHJuKG51bS53b3Jkc1swXSkpXG4gICAgICAgIH07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIGRpdjogdGhpcy5kaXZuKG51bS53b3Jkc1swXSksXG4gICAgICAgIG1vZDogbmV3IEJOKHRoaXMubW9kcm4obnVtLndvcmRzWzBdKSlcbiAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuX3dvcmREaXYobnVtLCBtb2RlKTtcbiAgfTtcblxuICAvLyBGaW5kIGB0aGlzYCAvIGBudW1gXG4gIEJOLnByb3RvdHlwZS5kaXYgPSBmdW5jdGlvbiBkaXYgKG51bSkge1xuICAgIHJldHVybiB0aGlzLmRpdm1vZChudW0sICdkaXYnLCBmYWxzZSkuZGl2O1xuICB9O1xuXG4gIC8vIEZpbmQgYHRoaXNgICUgYG51bWBcbiAgQk4ucHJvdG90eXBlLm1vZCA9IGZ1bmN0aW9uIG1vZCAobnVtKSB7XG4gICAgcmV0dXJuIHRoaXMuZGl2bW9kKG51bSwgJ21vZCcsIGZhbHNlKS5tb2Q7XG4gIH07XG5cbiAgQk4ucHJvdG90eXBlLnVtb2QgPSBmdW5jdGlvbiB1bW9kIChudW0pIHtcbiAgICByZXR1cm4gdGhpcy5kaXZtb2QobnVtLCAnbW9kJywgdHJ1ZSkubW9kO1xuICB9O1xuXG4gIC8vIEZpbmQgUm91bmQoYHRoaXNgIC8gYG51bWApXG4gIEJOLnByb3RvdHlwZS5kaXZSb3VuZCA9IGZ1bmN0aW9uIGRpdlJvdW5kIChudW0pIHtcbiAgICB2YXIgZG0gPSB0aGlzLmRpdm1vZChudW0pO1xuXG4gICAgLy8gRmFzdCBjYXNlIC0gZXhhY3QgZGl2aXNpb25cbiAgICBpZiAoZG0ubW9kLmlzWmVybygpKSByZXR1cm4gZG0uZGl2O1xuXG4gICAgdmFyIG1vZCA9IGRtLmRpdi5uZWdhdGl2ZSAhPT0gMCA/IGRtLm1vZC5pc3ViKG51bSkgOiBkbS5tb2Q7XG5cbiAgICB2YXIgaGFsZiA9IG51bS51c2hybigxKTtcbiAgICB2YXIgcjIgPSBudW0uYW5kbG4oMSk7XG4gICAgdmFyIGNtcCA9IG1vZC5jbXAoaGFsZik7XG5cbiAgICAvLyBSb3VuZCBkb3duXG4gICAgaWYgKGNtcCA8IDAgfHwgKHIyID09PSAxICYmIGNtcCA9PT0gMCkpIHJldHVybiBkbS5kaXY7XG5cbiAgICAvLyBSb3VuZCB1cFxuICAgIHJldHVybiBkbS5kaXYubmVnYXRpdmUgIT09IDAgPyBkbS5kaXYuaXN1Ym4oMSkgOiBkbS5kaXYuaWFkZG4oMSk7XG4gIH07XG5cbiAgQk4ucHJvdG90eXBlLm1vZHJuID0gZnVuY3Rpb24gbW9kcm4gKG51bSkge1xuICAgIHZhciBpc05lZ051bSA9IG51bSA8IDA7XG4gICAgaWYgKGlzTmVnTnVtKSBudW0gPSAtbnVtO1xuXG4gICAgYXNzZXJ0KG51bSA8PSAweDNmZmZmZmYpO1xuICAgIHZhciBwID0gKDEgPDwgMjYpICUgbnVtO1xuXG4gICAgdmFyIGFjYyA9IDA7XG4gICAgZm9yICh2YXIgaSA9IHRoaXMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHtcbiAgICAgIGFjYyA9IChwICogYWNjICsgKHRoaXMud29yZHNbaV0gfCAwKSkgJSBudW07XG4gICAgfVxuXG4gICAgcmV0dXJuIGlzTmVnTnVtID8gLWFjYyA6IGFjYztcbiAgfTtcblxuICAvLyBXQVJOSU5HOiBERVBSRUNBVEVEXG4gIEJOLnByb3RvdHlwZS5tb2RuID0gZnVuY3Rpb24gbW9kbiAobnVtKSB7XG4gICAgcmV0dXJuIHRoaXMubW9kcm4obnVtKTtcbiAgfTtcblxuICAvLyBJbi1wbGFjZSBkaXZpc2lvbiBieSBudW1iZXJcbiAgQk4ucHJvdG90eXBlLmlkaXZuID0gZnVuY3Rpb24gaWRpdm4gKG51bSkge1xuICAgIHZhciBpc05lZ051bSA9IG51bSA8IDA7XG4gICAgaWYgKGlzTmVnTnVtKSBudW0gPSAtbnVtO1xuXG4gICAgYXNzZXJ0KG51bSA8PSAweDNmZmZmZmYpO1xuXG4gICAgdmFyIGNhcnJ5ID0gMDtcbiAgICBmb3IgKHZhciBpID0gdGhpcy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xuICAgICAgdmFyIHcgPSAodGhpcy53b3Jkc1tpXSB8IDApICsgY2FycnkgKiAweDQwMDAwMDA7XG4gICAgICB0aGlzLndvcmRzW2ldID0gKHcgLyBudW0pIHwgMDtcbiAgICAgIGNhcnJ5ID0gdyAlIG51bTtcbiAgICB9XG5cbiAgICB0aGlzLl9zdHJpcCgpO1xuICAgIHJldHVybiBpc05lZ051bSA/IHRoaXMuaW5lZygpIDogdGhpcztcbiAgfTtcblxuICBCTi5wcm90b3R5cGUuZGl2biA9IGZ1bmN0aW9uIGRpdm4gKG51bSkge1xuICAgIHJldHVybiB0aGlzLmNsb25lKCkuaWRpdm4obnVtKTtcbiAgfTtcblxuICBCTi5wcm90b3R5cGUuZWdjZCA9IGZ1bmN0aW9uIGVnY2QgKHApIHtcbiAgICBhc3NlcnQocC5uZWdhdGl2ZSA9PT0gMCk7XG4gICAgYXNzZXJ0KCFwLmlzWmVybygpKTtcblxuICAgIHZhciB4ID0gdGhpcztcbiAgICB2YXIgeSA9IHAuY2xvbmUoKTtcblxuICAgIGlmICh4Lm5lZ2F0aXZlICE9PSAwKSB7XG4gICAgICB4ID0geC51bW9kKHApO1xuICAgIH0gZWxzZSB7XG4gICAgICB4ID0geC5jbG9uZSgpO1xuICAgIH1cblxuICAgIC8vIEEgKiB4ICsgQiAqIHkgPSB4XG4gICAgdmFyIEEgPSBuZXcgQk4oMSk7XG4gICAgdmFyIEIgPSBuZXcgQk4oMCk7XG5cbiAgICAvLyBDICogeCArIEQgKiB5ID0geVxuICAgIHZhciBDID0gbmV3IEJOKDApO1xuICAgIHZhciBEID0gbmV3IEJOKDEpO1xuXG4gICAgdmFyIGcgPSAwO1xuXG4gICAgd2hpbGUgKHguaXNFdmVuKCkgJiYgeS5pc0V2ZW4oKSkge1xuICAgICAgeC5pdXNocm4oMSk7XG4gICAgICB5Lml1c2hybigxKTtcbiAgICAgICsrZztcbiAgICB9XG5cbiAgICB2YXIgeXAgPSB5LmNsb25lKCk7XG4gICAgdmFyIHhwID0geC5jbG9uZSgpO1xuXG4gICAgd2hpbGUgKCF4LmlzWmVybygpKSB7XG4gICAgICBmb3IgKHZhciBpID0gMCwgaW0gPSAxOyAoeC53b3Jkc1swXSAmIGltKSA9PT0gMCAmJiBpIDwgMjY7ICsraSwgaW0gPDw9IDEpO1xuICAgICAgaWYgKGkgPiAwKSB7XG4gICAgICAgIHguaXVzaHJuKGkpO1xuICAgICAgICB3aGlsZSAoaS0tID4gMCkge1xuICAgICAgICAgIGlmIChBLmlzT2RkKCkgfHwgQi5pc09kZCgpKSB7XG4gICAgICAgICAgICBBLmlhZGQoeXApO1xuICAgICAgICAgICAgQi5pc3ViKHhwKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBBLml1c2hybigxKTtcbiAgICAgICAgICBCLml1c2hybigxKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBmb3IgKHZhciBqID0gMCwgam0gPSAxOyAoeS53b3Jkc1swXSAmIGptKSA9PT0gMCAmJiBqIDwgMjY7ICsraiwgam0gPDw9IDEpO1xuICAgICAgaWYgKGogPiAwKSB7XG4gICAgICAgIHkuaXVzaHJuKGopO1xuICAgICAgICB3aGlsZSAoai0tID4gMCkge1xuICAgICAgICAgIGlmIChDLmlzT2RkKCkgfHwgRC5pc09kZCgpKSB7XG4gICAgICAgICAgICBDLmlhZGQoeXApO1xuICAgICAgICAgICAgRC5pc3ViKHhwKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBDLml1c2hybigxKTtcbiAgICAgICAgICBELml1c2hybigxKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoeC5jbXAoeSkgPj0gMCkge1xuICAgICAgICB4LmlzdWIoeSk7XG4gICAgICAgIEEuaXN1YihDKTtcbiAgICAgICAgQi5pc3ViKEQpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgeS5pc3ViKHgpO1xuICAgICAgICBDLmlzdWIoQSk7XG4gICAgICAgIEQuaXN1YihCKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgYTogQyxcbiAgICAgIGI6IEQsXG4gICAgICBnY2Q6IHkuaXVzaGxuKGcpXG4gICAgfTtcbiAgfTtcblxuICAvLyBUaGlzIGlzIHJlZHVjZWQgaW5jYXJuYXRpb24gb2YgdGhlIGJpbmFyeSBFRUFcbiAgLy8gYWJvdmUsIGRlc2lnbmF0ZWQgdG8gaW52ZXJ0IG1lbWJlcnMgb2YgdGhlXG4gIC8vIF9wcmltZV8gZmllbGRzIEYocCkgYXQgYSBtYXhpbWFsIHNwZWVkXG4gIEJOLnByb3RvdHlwZS5faW52bXAgPSBmdW5jdGlvbiBfaW52bXAgKHApIHtcbiAgICBhc3NlcnQocC5uZWdhdGl2ZSA9PT0gMCk7XG4gICAgYXNzZXJ0KCFwLmlzWmVybygpKTtcblxuICAgIHZhciBhID0gdGhpcztcbiAgICB2YXIgYiA9IHAuY2xvbmUoKTtcblxuICAgIGlmIChhLm5lZ2F0aXZlICE9PSAwKSB7XG4gICAgICBhID0gYS51bW9kKHApO1xuICAgIH0gZWxzZSB7XG4gICAgICBhID0gYS5jbG9uZSgpO1xuICAgIH1cblxuICAgIHZhciB4MSA9IG5ldyBCTigxKTtcbiAgICB2YXIgeDIgPSBuZXcgQk4oMCk7XG5cbiAgICB2YXIgZGVsdGEgPSBiLmNsb25lKCk7XG5cbiAgICB3aGlsZSAoYS5jbXBuKDEpID4gMCAmJiBiLmNtcG4oMSkgPiAwKSB7XG4gICAgICBmb3IgKHZhciBpID0gMCwgaW0gPSAxOyAoYS53b3Jkc1swXSAmIGltKSA9PT0gMCAmJiBpIDwgMjY7ICsraSwgaW0gPDw9IDEpO1xuICAgICAgaWYgKGkgPiAwKSB7XG4gICAgICAgIGEuaXVzaHJuKGkpO1xuICAgICAgICB3aGlsZSAoaS0tID4gMCkge1xuICAgICAgICAgIGlmICh4MS5pc09kZCgpKSB7XG4gICAgICAgICAgICB4MS5pYWRkKGRlbHRhKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB4MS5pdXNocm4oMSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZm9yICh2YXIgaiA9IDAsIGptID0gMTsgKGIud29yZHNbMF0gJiBqbSkgPT09IDAgJiYgaiA8IDI2OyArK2osIGptIDw8PSAxKTtcbiAgICAgIGlmIChqID4gMCkge1xuICAgICAgICBiLml1c2hybihqKTtcbiAgICAgICAgd2hpbGUgKGotLSA+IDApIHtcbiAgICAgICAgICBpZiAoeDIuaXNPZGQoKSkge1xuICAgICAgICAgICAgeDIuaWFkZChkZWx0YSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgeDIuaXVzaHJuKDEpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmIChhLmNtcChiKSA+PSAwKSB7XG4gICAgICAgIGEuaXN1YihiKTtcbiAgICAgICAgeDEuaXN1Yih4Mik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBiLmlzdWIoYSk7XG4gICAgICAgIHgyLmlzdWIoeDEpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHZhciByZXM7XG4gICAgaWYgKGEuY21wbigxKSA9PT0gMCkge1xuICAgICAgcmVzID0geDE7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJlcyA9IHgyO1xuICAgIH1cblxuICAgIGlmIChyZXMuY21wbigwKSA8IDApIHtcbiAgICAgIHJlcy5pYWRkKHApO1xuICAgIH1cblxuICAgIHJldHVybiByZXM7XG4gIH07XG5cbiAgQk4ucHJvdG90eXBlLmdjZCA9IGZ1bmN0aW9uIGdjZCAobnVtKSB7XG4gICAgaWYgKHRoaXMuaXNaZXJvKCkpIHJldHVybiBudW0uYWJzKCk7XG4gICAgaWYgKG51bS5pc1plcm8oKSkgcmV0dXJuIHRoaXMuYWJzKCk7XG5cbiAgICB2YXIgYSA9IHRoaXMuY2xvbmUoKTtcbiAgICB2YXIgYiA9IG51bS5jbG9uZSgpO1xuICAgIGEubmVnYXRpdmUgPSAwO1xuICAgIGIubmVnYXRpdmUgPSAwO1xuXG4gICAgLy8gUmVtb3ZlIGNvbW1vbiBmYWN0b3Igb2YgdHdvXG4gICAgZm9yICh2YXIgc2hpZnQgPSAwOyBhLmlzRXZlbigpICYmIGIuaXNFdmVuKCk7IHNoaWZ0KyspIHtcbiAgICAgIGEuaXVzaHJuKDEpO1xuICAgICAgYi5pdXNocm4oMSk7XG4gICAgfVxuXG4gICAgZG8ge1xuICAgICAgd2hpbGUgKGEuaXNFdmVuKCkpIHtcbiAgICAgICAgYS5pdXNocm4oMSk7XG4gICAgICB9XG4gICAgICB3aGlsZSAoYi5pc0V2ZW4oKSkge1xuICAgICAgICBiLml1c2hybigxKTtcbiAgICAgIH1cblxuICAgICAgdmFyIHIgPSBhLmNtcChiKTtcbiAgICAgIGlmIChyIDwgMCkge1xuICAgICAgICAvLyBTd2FwIGBhYCBhbmQgYGJgIHRvIG1ha2UgYGFgIGFsd2F5cyBiaWdnZXIgdGhhbiBgYmBcbiAgICAgICAgdmFyIHQgPSBhO1xuICAgICAgICBhID0gYjtcbiAgICAgICAgYiA9IHQ7XG4gICAgICB9IGVsc2UgaWYgKHIgPT09IDAgfHwgYi5jbXBuKDEpID09PSAwKSB7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICBhLmlzdWIoYik7XG4gICAgfSB3aGlsZSAodHJ1ZSk7XG5cbiAgICByZXR1cm4gYi5pdXNobG4oc2hpZnQpO1xuICB9O1xuXG4gIC8vIEludmVydCBudW1iZXIgaW4gdGhlIGZpZWxkIEYobnVtKVxuICBCTi5wcm90b3R5cGUuaW52bSA9IGZ1bmN0aW9uIGludm0gKG51bSkge1xuICAgIHJldHVybiB0aGlzLmVnY2QobnVtKS5hLnVtb2QobnVtKTtcbiAgfTtcblxuICBCTi5wcm90b3R5cGUuaXNFdmVuID0gZnVuY3Rpb24gaXNFdmVuICgpIHtcbiAgICByZXR1cm4gKHRoaXMud29yZHNbMF0gJiAxKSA9PT0gMDtcbiAgfTtcblxuICBCTi5wcm90b3R5cGUuaXNPZGQgPSBmdW5jdGlvbiBpc09kZCAoKSB7XG4gICAgcmV0dXJuICh0aGlzLndvcmRzWzBdICYgMSkgPT09IDE7XG4gIH07XG5cbiAgLy8gQW5kIGZpcnN0IHdvcmQgYW5kIG51bVxuICBCTi5wcm90b3R5cGUuYW5kbG4gPSBmdW5jdGlvbiBhbmRsbiAobnVtKSB7XG4gICAgcmV0dXJuIHRoaXMud29yZHNbMF0gJiBudW07XG4gIH07XG5cbiAgLy8gSW5jcmVtZW50IGF0IHRoZSBiaXQgcG9zaXRpb24gaW4tbGluZVxuICBCTi5wcm90b3R5cGUuYmluY24gPSBmdW5jdGlvbiBiaW5jbiAoYml0KSB7XG4gICAgYXNzZXJ0KHR5cGVvZiBiaXQgPT09ICdudW1iZXInKTtcbiAgICB2YXIgciA9IGJpdCAlIDI2O1xuICAgIHZhciBzID0gKGJpdCAtIHIpIC8gMjY7XG4gICAgdmFyIHEgPSAxIDw8IHI7XG5cbiAgICAvLyBGYXN0IGNhc2U6IGJpdCBpcyBtdWNoIGhpZ2hlciB0aGFuIGFsbCBleGlzdGluZyB3b3Jkc1xuICAgIGlmICh0aGlzLmxlbmd0aCA8PSBzKSB7XG4gICAgICB0aGlzLl9leHBhbmQocyArIDEpO1xuICAgICAgdGhpcy53b3Jkc1tzXSB8PSBxO1xuICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgLy8gQWRkIGJpdCBhbmQgcHJvcGFnYXRlLCBpZiBuZWVkZWRcbiAgICB2YXIgY2FycnkgPSBxO1xuICAgIGZvciAodmFyIGkgPSBzOyBjYXJyeSAhPT0gMCAmJiBpIDwgdGhpcy5sZW5ndGg7IGkrKykge1xuICAgICAgdmFyIHcgPSB0aGlzLndvcmRzW2ldIHwgMDtcbiAgICAgIHcgKz0gY2Fycnk7XG4gICAgICBjYXJyeSA9IHcgPj4+IDI2O1xuICAgICAgdyAmPSAweDNmZmZmZmY7XG4gICAgICB0aGlzLndvcmRzW2ldID0gdztcbiAgICB9XG4gICAgaWYgKGNhcnJ5ICE9PSAwKSB7XG4gICAgICB0aGlzLndvcmRzW2ldID0gY2Fycnk7XG4gICAgICB0aGlzLmxlbmd0aCsrO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcztcbiAgfTtcblxuICBCTi5wcm90b3R5cGUuaXNaZXJvID0gZnVuY3Rpb24gaXNaZXJvICgpIHtcbiAgICByZXR1cm4gdGhpcy5sZW5ndGggPT09IDEgJiYgdGhpcy53b3Jkc1swXSA9PT0gMDtcbiAgfTtcblxuICBCTi5wcm90b3R5cGUuY21wbiA9IGZ1bmN0aW9uIGNtcG4gKG51bSkge1xuICAgIHZhciBuZWdhdGl2ZSA9IG51bSA8IDA7XG5cbiAgICBpZiAodGhpcy5uZWdhdGl2ZSAhPT0gMCAmJiAhbmVnYXRpdmUpIHJldHVybiAtMTtcbiAgICBpZiAodGhpcy5uZWdhdGl2ZSA9PT0gMCAmJiBuZWdhdGl2ZSkgcmV0dXJuIDE7XG5cbiAgICB0aGlzLl9zdHJpcCgpO1xuXG4gICAgdmFyIHJlcztcbiAgICBpZiAodGhpcy5sZW5ndGggPiAxKSB7XG4gICAgICByZXMgPSAxO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAobmVnYXRpdmUpIHtcbiAgICAgICAgbnVtID0gLW51bTtcbiAgICAgIH1cblxuICAgICAgYXNzZXJ0KG51bSA8PSAweDNmZmZmZmYsICdOdW1iZXIgaXMgdG9vIGJpZycpO1xuXG4gICAgICB2YXIgdyA9IHRoaXMud29yZHNbMF0gfCAwO1xuICAgICAgcmVzID0gdyA9PT0gbnVtID8gMCA6IHcgPCBudW0gPyAtMSA6IDE7XG4gICAgfVxuICAgIGlmICh0aGlzLm5lZ2F0aXZlICE9PSAwKSByZXR1cm4gLXJlcyB8IDA7XG4gICAgcmV0dXJuIHJlcztcbiAgfTtcblxuICAvLyBDb21wYXJlIHR3byBudW1iZXJzIGFuZCByZXR1cm46XG4gIC8vIDEgLSBpZiBgdGhpc2AgPiBgbnVtYFxuICAvLyAwIC0gaWYgYHRoaXNgID09IGBudW1gXG4gIC8vIC0xIC0gaWYgYHRoaXNgIDwgYG51bWBcbiAgQk4ucHJvdG90eXBlLmNtcCA9IGZ1bmN0aW9uIGNtcCAobnVtKSB7XG4gICAgaWYgKHRoaXMubmVnYXRpdmUgIT09IDAgJiYgbnVtLm5lZ2F0aXZlID09PSAwKSByZXR1cm4gLTE7XG4gICAgaWYgKHRoaXMubmVnYXRpdmUgPT09IDAgJiYgbnVtLm5lZ2F0aXZlICE9PSAwKSByZXR1cm4gMTtcblxuICAgIHZhciByZXMgPSB0aGlzLnVjbXAobnVtKTtcbiAgICBpZiAodGhpcy5uZWdhdGl2ZSAhPT0gMCkgcmV0dXJuIC1yZXMgfCAwO1xuICAgIHJldHVybiByZXM7XG4gIH07XG5cbiAgLy8gVW5zaWduZWQgY29tcGFyaXNvblxuICBCTi5wcm90b3R5cGUudWNtcCA9IGZ1bmN0aW9uIHVjbXAgKG51bSkge1xuICAgIC8vIEF0IHRoaXMgcG9pbnQgYm90aCBudW1iZXJzIGhhdmUgdGhlIHNhbWUgc2lnblxuICAgIGlmICh0aGlzLmxlbmd0aCA+IG51bS5sZW5ndGgpIHJldHVybiAxO1xuICAgIGlmICh0aGlzLmxlbmd0aCA8IG51bS5sZW5ndGgpIHJldHVybiAtMTtcblxuICAgIHZhciByZXMgPSAwO1xuICAgIGZvciAodmFyIGkgPSB0aGlzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7XG4gICAgICB2YXIgYSA9IHRoaXMud29yZHNbaV0gfCAwO1xuICAgICAgdmFyIGIgPSBudW0ud29yZHNbaV0gfCAwO1xuXG4gICAgICBpZiAoYSA9PT0gYikgY29udGludWU7XG4gICAgICBpZiAoYSA8IGIpIHtcbiAgICAgICAgcmVzID0gLTE7XG4gICAgICB9IGVsc2UgaWYgKGEgPiBiKSB7XG4gICAgICAgIHJlcyA9IDE7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbiAgfTtcblxuICBCTi5wcm90b3R5cGUuZ3RuID0gZnVuY3Rpb24gZ3RuIChudW0pIHtcbiAgICByZXR1cm4gdGhpcy5jbXBuKG51bSkgPT09IDE7XG4gIH07XG5cbiAgQk4ucHJvdG90eXBlLmd0ID0gZnVuY3Rpb24gZ3QgKG51bSkge1xuICAgIHJldHVybiB0aGlzLmNtcChudW0pID09PSAxO1xuICB9O1xuXG4gIEJOLnByb3RvdHlwZS5ndGVuID0gZnVuY3Rpb24gZ3RlbiAobnVtKSB7XG4gICAgcmV0dXJuIHRoaXMuY21wbihudW0pID49IDA7XG4gIH07XG5cbiAgQk4ucHJvdG90eXBlLmd0ZSA9IGZ1bmN0aW9uIGd0ZSAobnVtKSB7XG4gICAgcmV0dXJuIHRoaXMuY21wKG51bSkgPj0gMDtcbiAgfTtcblxuICBCTi5wcm90b3R5cGUubHRuID0gZnVuY3Rpb24gbHRuIChudW0pIHtcbiAgICByZXR1cm4gdGhpcy5jbXBuKG51bSkgPT09IC0xO1xuICB9O1xuXG4gIEJOLnByb3RvdHlwZS5sdCA9IGZ1bmN0aW9uIGx0IChudW0pIHtcbiAgICByZXR1cm4gdGhpcy5jbXAobnVtKSA9PT0gLTE7XG4gIH07XG5cbiAgQk4ucHJvdG90eXBlLmx0ZW4gPSBmdW5jdGlvbiBsdGVuIChudW0pIHtcbiAgICByZXR1cm4gdGhpcy5jbXBuKG51bSkgPD0gMDtcbiAgfTtcblxuICBCTi5wcm90b3R5cGUubHRlID0gZnVuY3Rpb24gbHRlIChudW0pIHtcbiAgICByZXR1cm4gdGhpcy5jbXAobnVtKSA8PSAwO1xuICB9O1xuXG4gIEJOLnByb3RvdHlwZS5lcW4gPSBmdW5jdGlvbiBlcW4gKG51bSkge1xuICAgIHJldHVybiB0aGlzLmNtcG4obnVtKSA9PT0gMDtcbiAgfTtcblxuICBCTi5wcm90b3R5cGUuZXEgPSBmdW5jdGlvbiBlcSAobnVtKSB7XG4gICAgcmV0dXJuIHRoaXMuY21wKG51bSkgPT09IDA7XG4gIH07XG5cbiAgLy9cbiAgLy8gQSByZWR1Y2UgY29udGV4dCwgY291bGQgYmUgdXNpbmcgbW9udGdvbWVyeSBvciBzb21ldGhpbmcgYmV0dGVyLCBkZXBlbmRpbmdcbiAgLy8gb24gdGhlIGBtYCBpdHNlbGYuXG4gIC8vXG4gIEJOLnJlZCA9IGZ1bmN0aW9uIHJlZCAobnVtKSB7XG4gICAgcmV0dXJuIG5ldyBSZWQobnVtKTtcbiAgfTtcblxuICBCTi5wcm90b3R5cGUudG9SZWQgPSBmdW5jdGlvbiB0b1JlZCAoY3R4KSB7XG4gICAgYXNzZXJ0KCF0aGlzLnJlZCwgJ0FscmVhZHkgYSBudW1iZXIgaW4gcmVkdWN0aW9uIGNvbnRleHQnKTtcbiAgICBhc3NlcnQodGhpcy5uZWdhdGl2ZSA9PT0gMCwgJ3JlZCB3b3JrcyBvbmx5IHdpdGggcG9zaXRpdmVzJyk7XG4gICAgcmV0dXJuIGN0eC5jb252ZXJ0VG8odGhpcykuX2ZvcmNlUmVkKGN0eCk7XG4gIH07XG5cbiAgQk4ucHJvdG90eXBlLmZyb21SZWQgPSBmdW5jdGlvbiBmcm9tUmVkICgpIHtcbiAgICBhc3NlcnQodGhpcy5yZWQsICdmcm9tUmVkIHdvcmtzIG9ubHkgd2l0aCBudW1iZXJzIGluIHJlZHVjdGlvbiBjb250ZXh0Jyk7XG4gICAgcmV0dXJuIHRoaXMucmVkLmNvbnZlcnRGcm9tKHRoaXMpO1xuICB9O1xuXG4gIEJOLnByb3RvdHlwZS5fZm9yY2VSZWQgPSBmdW5jdGlvbiBfZm9yY2VSZWQgKGN0eCkge1xuICAgIHRoaXMucmVkID0gY3R4O1xuICAgIHJldHVybiB0aGlzO1xuICB9O1xuXG4gIEJOLnByb3RvdHlwZS5mb3JjZVJlZCA9IGZ1bmN0aW9uIGZvcmNlUmVkIChjdHgpIHtcbiAgICBhc3NlcnQoIXRoaXMucmVkLCAnQWxyZWFkeSBhIG51bWJlciBpbiByZWR1Y3Rpb24gY29udGV4dCcpO1xuICAgIHJldHVybiB0aGlzLl9mb3JjZVJlZChjdHgpO1xuICB9O1xuXG4gIEJOLnByb3RvdHlwZS5yZWRBZGQgPSBmdW5jdGlvbiByZWRBZGQgKG51bSkge1xuICAgIGFzc2VydCh0aGlzLnJlZCwgJ3JlZEFkZCB3b3JrcyBvbmx5IHdpdGggcmVkIG51bWJlcnMnKTtcbiAgICByZXR1cm4gdGhpcy5yZWQuYWRkKHRoaXMsIG51bSk7XG4gIH07XG5cbiAgQk4ucHJvdG90eXBlLnJlZElBZGQgPSBmdW5jdGlvbiByZWRJQWRkIChudW0pIHtcbiAgICBhc3NlcnQodGhpcy5yZWQsICdyZWRJQWRkIHdvcmtzIG9ubHkgd2l0aCByZWQgbnVtYmVycycpO1xuICAgIHJldHVybiB0aGlzLnJlZC5pYWRkKHRoaXMsIG51bSk7XG4gIH07XG5cbiAgQk4ucHJvdG90eXBlLnJlZFN1YiA9IGZ1bmN0aW9uIHJlZFN1YiAobnVtKSB7XG4gICAgYXNzZXJ0KHRoaXMucmVkLCAncmVkU3ViIHdvcmtzIG9ubHkgd2l0aCByZWQgbnVtYmVycycpO1xuICAgIHJldHVybiB0aGlzLnJlZC5zdWIodGhpcywgbnVtKTtcbiAgfTtcblxuICBCTi5wcm90b3R5cGUucmVkSVN1YiA9IGZ1bmN0aW9uIHJlZElTdWIgKG51bSkge1xuICAgIGFzc2VydCh0aGlzLnJlZCwgJ3JlZElTdWIgd29ya3Mgb25seSB3aXRoIHJlZCBudW1iZXJzJyk7XG4gICAgcmV0dXJuIHRoaXMucmVkLmlzdWIodGhpcywgbnVtKTtcbiAgfTtcblxuICBCTi5wcm90b3R5cGUucmVkU2hsID0gZnVuY3Rpb24gcmVkU2hsIChudW0pIHtcbiAgICBhc3NlcnQodGhpcy5yZWQsICdyZWRTaGwgd29ya3Mgb25seSB3aXRoIHJlZCBudW1iZXJzJyk7XG4gICAgcmV0dXJuIHRoaXMucmVkLnNobCh0aGlzLCBudW0pO1xuICB9O1xuXG4gIEJOLnByb3RvdHlwZS5yZWRNdWwgPSBmdW5jdGlvbiByZWRNdWwgKG51bSkge1xuICAgIGFzc2VydCh0aGlzLnJlZCwgJ3JlZE11bCB3b3JrcyBvbmx5IHdpdGggcmVkIG51bWJlcnMnKTtcbiAgICB0aGlzLnJlZC5fdmVyaWZ5Mih0aGlzLCBudW0pO1xuICAgIHJldHVybiB0aGlzLnJlZC5tdWwodGhpcywgbnVtKTtcbiAgfTtcblxuICBCTi5wcm90b3R5cGUucmVkSU11bCA9IGZ1bmN0aW9uIHJlZElNdWwgKG51bSkge1xuICAgIGFzc2VydCh0aGlzLnJlZCwgJ3JlZE11bCB3b3JrcyBvbmx5IHdpdGggcmVkIG51bWJlcnMnKTtcbiAgICB0aGlzLnJlZC5fdmVyaWZ5Mih0aGlzLCBudW0pO1xuICAgIHJldHVybiB0aGlzLnJlZC5pbXVsKHRoaXMsIG51bSk7XG4gIH07XG5cbiAgQk4ucHJvdG90eXBlLnJlZFNxciA9IGZ1bmN0aW9uIHJlZFNxciAoKSB7XG4gICAgYXNzZXJ0KHRoaXMucmVkLCAncmVkU3FyIHdvcmtzIG9ubHkgd2l0aCByZWQgbnVtYmVycycpO1xuICAgIHRoaXMucmVkLl92ZXJpZnkxKHRoaXMpO1xuICAgIHJldHVybiB0aGlzLnJlZC5zcXIodGhpcyk7XG4gIH07XG5cbiAgQk4ucHJvdG90eXBlLnJlZElTcXIgPSBmdW5jdGlvbiByZWRJU3FyICgpIHtcbiAgICBhc3NlcnQodGhpcy5yZWQsICdyZWRJU3FyIHdvcmtzIG9ubHkgd2l0aCByZWQgbnVtYmVycycpO1xuICAgIHRoaXMucmVkLl92ZXJpZnkxKHRoaXMpO1xuICAgIHJldHVybiB0aGlzLnJlZC5pc3FyKHRoaXMpO1xuICB9O1xuXG4gIC8vIFNxdWFyZSByb290IG92ZXIgcFxuICBCTi5wcm90b3R5cGUucmVkU3FydCA9IGZ1bmN0aW9uIHJlZFNxcnQgKCkge1xuICAgIGFzc2VydCh0aGlzLnJlZCwgJ3JlZFNxcnQgd29ya3Mgb25seSB3aXRoIHJlZCBudW1iZXJzJyk7XG4gICAgdGhpcy5yZWQuX3ZlcmlmeTEodGhpcyk7XG4gICAgcmV0dXJuIHRoaXMucmVkLnNxcnQodGhpcyk7XG4gIH07XG5cbiAgQk4ucHJvdG90eXBlLnJlZEludm0gPSBmdW5jdGlvbiByZWRJbnZtICgpIHtcbiAgICBhc3NlcnQodGhpcy5yZWQsICdyZWRJbnZtIHdvcmtzIG9ubHkgd2l0aCByZWQgbnVtYmVycycpO1xuICAgIHRoaXMucmVkLl92ZXJpZnkxKHRoaXMpO1xuICAgIHJldHVybiB0aGlzLnJlZC5pbnZtKHRoaXMpO1xuICB9O1xuXG4gIC8vIFJldHVybiBuZWdhdGl2ZSBjbG9uZSBvZiBgdGhpc2AgJSBgcmVkIG1vZHVsb2BcbiAgQk4ucHJvdG90eXBlLnJlZE5lZyA9IGZ1bmN0aW9uIHJlZE5lZyAoKSB7XG4gICAgYXNzZXJ0KHRoaXMucmVkLCAncmVkTmVnIHdvcmtzIG9ubHkgd2l0aCByZWQgbnVtYmVycycpO1xuICAgIHRoaXMucmVkLl92ZXJpZnkxKHRoaXMpO1xuICAgIHJldHVybiB0aGlzLnJlZC5uZWcodGhpcyk7XG4gIH07XG5cbiAgQk4ucHJvdG90eXBlLnJlZFBvdyA9IGZ1bmN0aW9uIHJlZFBvdyAobnVtKSB7XG4gICAgYXNzZXJ0KHRoaXMucmVkICYmICFudW0ucmVkLCAncmVkUG93KG5vcm1hbE51bSknKTtcbiAgICB0aGlzLnJlZC5fdmVyaWZ5MSh0aGlzKTtcbiAgICByZXR1cm4gdGhpcy5yZWQucG93KHRoaXMsIG51bSk7XG4gIH07XG5cbiAgLy8gUHJpbWUgbnVtYmVycyB3aXRoIGVmZmljaWVudCByZWR1Y3Rpb25cbiAgdmFyIHByaW1lcyA9IHtcbiAgICBrMjU2OiBudWxsLFxuICAgIHAyMjQ6IG51bGwsXG4gICAgcDE5MjogbnVsbCxcbiAgICBwMjU1MTk6IG51bGxcbiAgfTtcblxuICAvLyBQc2V1ZG8tTWVyc2VubmUgcHJpbWVcbiAgZnVuY3Rpb24gTVByaW1lIChuYW1lLCBwKSB7XG4gICAgLy8gUCA9IDIgXiBOIC0gS1xuICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gICAgdGhpcy5wID0gbmV3IEJOKHAsIDE2KTtcbiAgICB0aGlzLm4gPSB0aGlzLnAuYml0TGVuZ3RoKCk7XG4gICAgdGhpcy5rID0gbmV3IEJOKDEpLml1c2hsbih0aGlzLm4pLmlzdWIodGhpcy5wKTtcblxuICAgIHRoaXMudG1wID0gdGhpcy5fdG1wKCk7XG4gIH1cblxuICBNUHJpbWUucHJvdG90eXBlLl90bXAgPSBmdW5jdGlvbiBfdG1wICgpIHtcbiAgICB2YXIgdG1wID0gbmV3IEJOKG51bGwpO1xuICAgIHRtcC53b3JkcyA9IG5ldyBBcnJheShNYXRoLmNlaWwodGhpcy5uIC8gMTMpKTtcbiAgICByZXR1cm4gdG1wO1xuICB9O1xuXG4gIE1QcmltZS5wcm90b3R5cGUuaXJlZHVjZSA9IGZ1bmN0aW9uIGlyZWR1Y2UgKG51bSkge1xuICAgIC8vIEFzc3VtZXMgdGhhdCBgbnVtYCBpcyBsZXNzIHRoYW4gYFBeMmBcbiAgICAvLyBudW0gPSBISSAqICgyIF4gTiAtIEspICsgSEkgKiBLICsgTE8gPSBISSAqIEsgKyBMTyAobW9kIFApXG4gICAgdmFyIHIgPSBudW07XG4gICAgdmFyIHJsZW47XG5cbiAgICBkbyB7XG4gICAgICB0aGlzLnNwbGl0KHIsIHRoaXMudG1wKTtcbiAgICAgIHIgPSB0aGlzLmltdWxLKHIpO1xuICAgICAgciA9IHIuaWFkZCh0aGlzLnRtcCk7XG4gICAgICBybGVuID0gci5iaXRMZW5ndGgoKTtcbiAgICB9IHdoaWxlIChybGVuID4gdGhpcy5uKTtcblxuICAgIHZhciBjbXAgPSBybGVuIDwgdGhpcy5uID8gLTEgOiByLnVjbXAodGhpcy5wKTtcbiAgICBpZiAoY21wID09PSAwKSB7XG4gICAgICByLndvcmRzWzBdID0gMDtcbiAgICAgIHIubGVuZ3RoID0gMTtcbiAgICB9IGVsc2UgaWYgKGNtcCA+IDApIHtcbiAgICAgIHIuaXN1Yih0aGlzLnApO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoci5zdHJpcCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIC8vIHIgaXMgYSBCTiB2NCBpbnN0YW5jZVxuICAgICAgICByLnN0cmlwKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyByIGlzIGEgQk4gdjUgaW5zdGFuY2VcbiAgICAgICAgci5fc3RyaXAoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gcjtcbiAgfTtcblxuICBNUHJpbWUucHJvdG90eXBlLnNwbGl0ID0gZnVuY3Rpb24gc3BsaXQgKGlucHV0LCBvdXQpIHtcbiAgICBpbnB1dC5pdXNocm4odGhpcy5uLCAwLCBvdXQpO1xuICB9O1xuXG4gIE1QcmltZS5wcm90b3R5cGUuaW11bEsgPSBmdW5jdGlvbiBpbXVsSyAobnVtKSB7XG4gICAgcmV0dXJuIG51bS5pbXVsKHRoaXMuayk7XG4gIH07XG5cbiAgZnVuY3Rpb24gSzI1NiAoKSB7XG4gICAgTVByaW1lLmNhbGwoXG4gICAgICB0aGlzLFxuICAgICAgJ2syNTYnLFxuICAgICAgJ2ZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZlIGZmZmZmYzJmJyk7XG4gIH1cbiAgaW5oZXJpdHMoSzI1NiwgTVByaW1lKTtcblxuICBLMjU2LnByb3RvdHlwZS5zcGxpdCA9IGZ1bmN0aW9uIHNwbGl0IChpbnB1dCwgb3V0cHV0KSB7XG4gICAgLy8gMjU2ID0gOSAqIDI2ICsgMjJcbiAgICB2YXIgbWFzayA9IDB4M2ZmZmZmO1xuXG4gICAgdmFyIG91dExlbiA9IE1hdGgubWluKGlucHV0Lmxlbmd0aCwgOSk7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBvdXRMZW47IGkrKykge1xuICAgICAgb3V0cHV0LndvcmRzW2ldID0gaW5wdXQud29yZHNbaV07XG4gICAgfVxuICAgIG91dHB1dC5sZW5ndGggPSBvdXRMZW47XG5cbiAgICBpZiAoaW5wdXQubGVuZ3RoIDw9IDkpIHtcbiAgICAgIGlucHV0LndvcmRzWzBdID0gMDtcbiAgICAgIGlucHV0Lmxlbmd0aCA9IDE7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gU2hpZnQgYnkgOSBsaW1ic1xuICAgIHZhciBwcmV2ID0gaW5wdXQud29yZHNbOV07XG4gICAgb3V0cHV0LndvcmRzW291dHB1dC5sZW5ndGgrK10gPSBwcmV2ICYgbWFzaztcblxuICAgIGZvciAoaSA9IDEwOyBpIDwgaW5wdXQubGVuZ3RoOyBpKyspIHtcbiAgICAgIHZhciBuZXh0ID0gaW5wdXQud29yZHNbaV0gfCAwO1xuICAgICAgaW5wdXQud29yZHNbaSAtIDEwXSA9ICgobmV4dCAmIG1hc2spIDw8IDQpIHwgKHByZXYgPj4+IDIyKTtcbiAgICAgIHByZXYgPSBuZXh0O1xuICAgIH1cbiAgICBwcmV2ID4+Pj0gMjI7XG4gICAgaW5wdXQud29yZHNbaSAtIDEwXSA9IHByZXY7XG4gICAgaWYgKHByZXYgPT09IDAgJiYgaW5wdXQubGVuZ3RoID4gMTApIHtcbiAgICAgIGlucHV0Lmxlbmd0aCAtPSAxMDtcbiAgICB9IGVsc2Uge1xuICAgICAgaW5wdXQubGVuZ3RoIC09IDk7XG4gICAgfVxuICB9O1xuXG4gIEsyNTYucHJvdG90eXBlLmltdWxLID0gZnVuY3Rpb24gaW11bEsgKG51bSkge1xuICAgIC8vIEsgPSAweDEwMDAwMDNkMSA9IFsgMHg0MCwgMHgzZDEgXVxuICAgIG51bS53b3Jkc1tudW0ubGVuZ3RoXSA9IDA7XG4gICAgbnVtLndvcmRzW251bS5sZW5ndGggKyAxXSA9IDA7XG4gICAgbnVtLmxlbmd0aCArPSAyO1xuXG4gICAgLy8gYm91bmRlZCBhdDogMHg0MCAqIDB4M2ZmZmZmZiArIDB4M2QwID0gMHgxMDAwMDAzOTBcbiAgICB2YXIgbG8gPSAwO1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbnVtLmxlbmd0aDsgaSsrKSB7XG4gICAgICB2YXIgdyA9IG51bS53b3Jkc1tpXSB8IDA7XG4gICAgICBsbyArPSB3ICogMHgzZDE7XG4gICAgICBudW0ud29yZHNbaV0gPSBsbyAmIDB4M2ZmZmZmZjtcbiAgICAgIGxvID0gdyAqIDB4NDAgKyAoKGxvIC8gMHg0MDAwMDAwKSB8IDApO1xuICAgIH1cblxuICAgIC8vIEZhc3QgbGVuZ3RoIHJlZHVjdGlvblxuICAgIGlmIChudW0ud29yZHNbbnVtLmxlbmd0aCAtIDFdID09PSAwKSB7XG4gICAgICBudW0ubGVuZ3RoLS07XG4gICAgICBpZiAobnVtLndvcmRzW251bS5sZW5ndGggLSAxXSA9PT0gMCkge1xuICAgICAgICBudW0ubGVuZ3RoLS07XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBudW07XG4gIH07XG5cbiAgZnVuY3Rpb24gUDIyNCAoKSB7XG4gICAgTVByaW1lLmNhbGwoXG4gICAgICB0aGlzLFxuICAgICAgJ3AyMjQnLFxuICAgICAgJ2ZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmIGZmZmZmZmZmIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAxJyk7XG4gIH1cbiAgaW5oZXJpdHMoUDIyNCwgTVByaW1lKTtcblxuICBmdW5jdGlvbiBQMTkyICgpIHtcbiAgICBNUHJpbWUuY2FsbChcbiAgICAgIHRoaXMsXG4gICAgICAncDE5MicsXG4gICAgICAnZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmYgZmZmZmZmZmUgZmZmZmZmZmYgZmZmZmZmZmYnKTtcbiAgfVxuICBpbmhlcml0cyhQMTkyLCBNUHJpbWUpO1xuXG4gIGZ1bmN0aW9uIFAyNTUxOSAoKSB7XG4gICAgLy8gMiBeIDI1NSAtIDE5XG4gICAgTVByaW1lLmNhbGwoXG4gICAgICB0aGlzLFxuICAgICAgJzI1NTE5JyxcbiAgICAgICc3ZmZmZmZmZmZmZmZmZmZmIGZmZmZmZmZmZmZmZmZmZmYgZmZmZmZmZmZmZmZmZmZmZiBmZmZmZmZmZmZmZmZmZmVkJyk7XG4gIH1cbiAgaW5oZXJpdHMoUDI1NTE5LCBNUHJpbWUpO1xuXG4gIFAyNTUxOS5wcm90b3R5cGUuaW11bEsgPSBmdW5jdGlvbiBpbXVsSyAobnVtKSB7XG4gICAgLy8gSyA9IDB4MTNcbiAgICB2YXIgY2FycnkgPSAwO1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbnVtLmxlbmd0aDsgaSsrKSB7XG4gICAgICB2YXIgaGkgPSAobnVtLndvcmRzW2ldIHwgMCkgKiAweDEzICsgY2Fycnk7XG4gICAgICB2YXIgbG8gPSBoaSAmIDB4M2ZmZmZmZjtcbiAgICAgIGhpID4+Pj0gMjY7XG5cbiAgICAgIG51bS53b3Jkc1tpXSA9IGxvO1xuICAgICAgY2FycnkgPSBoaTtcbiAgICB9XG4gICAgaWYgKGNhcnJ5ICE9PSAwKSB7XG4gICAgICBudW0ud29yZHNbbnVtLmxlbmd0aCsrXSA9IGNhcnJ5O1xuICAgIH1cbiAgICByZXR1cm4gbnVtO1xuICB9O1xuXG4gIC8vIEV4cG9ydGVkIG1vc3RseSBmb3IgdGVzdGluZyBwdXJwb3NlcywgdXNlIHBsYWluIG5hbWUgaW5zdGVhZFxuICBCTi5fcHJpbWUgPSBmdW5jdGlvbiBwcmltZSAobmFtZSkge1xuICAgIC8vIENhY2hlZCB2ZXJzaW9uIG9mIHByaW1lXG4gICAgaWYgKHByaW1lc1tuYW1lXSkgcmV0dXJuIHByaW1lc1tuYW1lXTtcblxuICAgIHZhciBwcmltZTtcbiAgICBpZiAobmFtZSA9PT0gJ2syNTYnKSB7XG4gICAgICBwcmltZSA9IG5ldyBLMjU2KCk7XG4gICAgfSBlbHNlIGlmIChuYW1lID09PSAncDIyNCcpIHtcbiAgICAgIHByaW1lID0gbmV3IFAyMjQoKTtcbiAgICB9IGVsc2UgaWYgKG5hbWUgPT09ICdwMTkyJykge1xuICAgICAgcHJpbWUgPSBuZXcgUDE5MigpO1xuICAgIH0gZWxzZSBpZiAobmFtZSA9PT0gJ3AyNTUxOScpIHtcbiAgICAgIHByaW1lID0gbmV3IFAyNTUxOSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Vua25vd24gcHJpbWUgJyArIG5hbWUpO1xuICAgIH1cbiAgICBwcmltZXNbbmFtZV0gPSBwcmltZTtcblxuICAgIHJldHVybiBwcmltZTtcbiAgfTtcblxuICAvL1xuICAvLyBCYXNlIHJlZHVjdGlvbiBlbmdpbmVcbiAgLy9cbiAgZnVuY3Rpb24gUmVkIChtKSB7XG4gICAgaWYgKHR5cGVvZiBtID09PSAnc3RyaW5nJykge1xuICAgICAgdmFyIHByaW1lID0gQk4uX3ByaW1lKG0pO1xuICAgICAgdGhpcy5tID0gcHJpbWUucDtcbiAgICAgIHRoaXMucHJpbWUgPSBwcmltZTtcbiAgICB9IGVsc2Uge1xuICAgICAgYXNzZXJ0KG0uZ3RuKDEpLCAnbW9kdWx1cyBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAxJyk7XG4gICAgICB0aGlzLm0gPSBtO1xuICAgICAgdGhpcy5wcmltZSA9IG51bGw7XG4gICAgfVxuICB9XG5cbiAgUmVkLnByb3RvdHlwZS5fdmVyaWZ5MSA9IGZ1bmN0aW9uIF92ZXJpZnkxIChhKSB7XG4gICAgYXNzZXJ0KGEubmVnYXRpdmUgPT09IDAsICdyZWQgd29ya3Mgb25seSB3aXRoIHBvc2l0aXZlcycpO1xuICAgIGFzc2VydChhLnJlZCwgJ3JlZCB3b3JrcyBvbmx5IHdpdGggcmVkIG51bWJlcnMnKTtcbiAgfTtcblxuICBSZWQucHJvdG90eXBlLl92ZXJpZnkyID0gZnVuY3Rpb24gX3ZlcmlmeTIgKGEsIGIpIHtcbiAgICBhc3NlcnQoKGEubmVnYXRpdmUgfCBiLm5lZ2F0aXZlKSA9PT0gMCwgJ3JlZCB3b3JrcyBvbmx5IHdpdGggcG9zaXRpdmVzJyk7XG4gICAgYXNzZXJ0KGEucmVkICYmIGEucmVkID09PSBiLnJlZCxcbiAgICAgICdyZWQgd29ya3Mgb25seSB3aXRoIHJlZCBudW1iZXJzJyk7XG4gIH07XG5cbiAgUmVkLnByb3RvdHlwZS5pbW9kID0gZnVuY3Rpb24gaW1vZCAoYSkge1xuICAgIGlmICh0aGlzLnByaW1lKSByZXR1cm4gdGhpcy5wcmltZS5pcmVkdWNlKGEpLl9mb3JjZVJlZCh0aGlzKTtcblxuICAgIG1vdmUoYSwgYS51bW9kKHRoaXMubSkuX2ZvcmNlUmVkKHRoaXMpKTtcbiAgICByZXR1cm4gYTtcbiAgfTtcblxuICBSZWQucHJvdG90eXBlLm5lZyA9IGZ1bmN0aW9uIG5lZyAoYSkge1xuICAgIGlmIChhLmlzWmVybygpKSB7XG4gICAgICByZXR1cm4gYS5jbG9uZSgpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLm0uc3ViKGEpLl9mb3JjZVJlZCh0aGlzKTtcbiAgfTtcblxuICBSZWQucHJvdG90eXBlLmFkZCA9IGZ1bmN0aW9uIGFkZCAoYSwgYikge1xuICAgIHRoaXMuX3ZlcmlmeTIoYSwgYik7XG5cbiAgICB2YXIgcmVzID0gYS5hZGQoYik7XG4gICAgaWYgKHJlcy5jbXAodGhpcy5tKSA+PSAwKSB7XG4gICAgICByZXMuaXN1Yih0aGlzLm0pO1xuICAgIH1cbiAgICByZXR1cm4gcmVzLl9mb3JjZVJlZCh0aGlzKTtcbiAgfTtcblxuICBSZWQucHJvdG90eXBlLmlhZGQgPSBmdW5jdGlvbiBpYWRkIChhLCBiKSB7XG4gICAgdGhpcy5fdmVyaWZ5MihhLCBiKTtcblxuICAgIHZhciByZXMgPSBhLmlhZGQoYik7XG4gICAgaWYgKHJlcy5jbXAodGhpcy5tKSA+PSAwKSB7XG4gICAgICByZXMuaXN1Yih0aGlzLm0pO1xuICAgIH1cbiAgICByZXR1cm4gcmVzO1xuICB9O1xuXG4gIFJlZC5wcm90b3R5cGUuc3ViID0gZnVuY3Rpb24gc3ViIChhLCBiKSB7XG4gICAgdGhpcy5fdmVyaWZ5MihhLCBiKTtcblxuICAgIHZhciByZXMgPSBhLnN1YihiKTtcbiAgICBpZiAocmVzLmNtcG4oMCkgPCAwKSB7XG4gICAgICByZXMuaWFkZCh0aGlzLm0pO1xuICAgIH1cbiAgICByZXR1cm4gcmVzLl9mb3JjZVJlZCh0aGlzKTtcbiAgfTtcblxuICBSZWQucHJvdG90eXBlLmlzdWIgPSBmdW5jdGlvbiBpc3ViIChhLCBiKSB7XG4gICAgdGhpcy5fdmVyaWZ5MihhLCBiKTtcblxuICAgIHZhciByZXMgPSBhLmlzdWIoYik7XG4gICAgaWYgKHJlcy5jbXBuKDApIDwgMCkge1xuICAgICAgcmVzLmlhZGQodGhpcy5tKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbiAgfTtcblxuICBSZWQucHJvdG90eXBlLnNobCA9IGZ1bmN0aW9uIHNobCAoYSwgbnVtKSB7XG4gICAgdGhpcy5fdmVyaWZ5MShhKTtcbiAgICByZXR1cm4gdGhpcy5pbW9kKGEudXNobG4obnVtKSk7XG4gIH07XG5cbiAgUmVkLnByb3RvdHlwZS5pbXVsID0gZnVuY3Rpb24gaW11bCAoYSwgYikge1xuICAgIHRoaXMuX3ZlcmlmeTIoYSwgYik7XG4gICAgcmV0dXJuIHRoaXMuaW1vZChhLmltdWwoYikpO1xuICB9O1xuXG4gIFJlZC5wcm90b3R5cGUubXVsID0gZnVuY3Rpb24gbXVsIChhLCBiKSB7XG4gICAgdGhpcy5fdmVyaWZ5MihhLCBiKTtcbiAgICByZXR1cm4gdGhpcy5pbW9kKGEubXVsKGIpKTtcbiAgfTtcblxuICBSZWQucHJvdG90eXBlLmlzcXIgPSBmdW5jdGlvbiBpc3FyIChhKSB7XG4gICAgcmV0dXJuIHRoaXMuaW11bChhLCBhLmNsb25lKCkpO1xuICB9O1xuXG4gIFJlZC5wcm90b3R5cGUuc3FyID0gZnVuY3Rpb24gc3FyIChhKSB7XG4gICAgcmV0dXJuIHRoaXMubXVsKGEsIGEpO1xuICB9O1xuXG4gIFJlZC5wcm90b3R5cGUuc3FydCA9IGZ1bmN0aW9uIHNxcnQgKGEpIHtcbiAgICBpZiAoYS5pc1plcm8oKSkgcmV0dXJuIGEuY2xvbmUoKTtcblxuICAgIHZhciBtb2QzID0gdGhpcy5tLmFuZGxuKDMpO1xuICAgIGFzc2VydChtb2QzICUgMiA9PT0gMSk7XG5cbiAgICAvLyBGYXN0IGNhc2VcbiAgICBpZiAobW9kMyA9PT0gMykge1xuICAgICAgdmFyIHBvdyA9IHRoaXMubS5hZGQobmV3IEJOKDEpKS5pdXNocm4oMik7XG4gICAgICByZXR1cm4gdGhpcy5wb3coYSwgcG93KTtcbiAgICB9XG5cbiAgICAvLyBUb25lbGxpLVNoYW5rcyBhbGdvcml0aG0gKFRvdGFsbHkgdW5vcHRpbWl6ZWQgYW5kIHNsb3cpXG4gICAgLy9cbiAgICAvLyBGaW5kIFEgYW5kIFMsIHRoYXQgUSAqIDIgXiBTID0gKFAgLSAxKVxuICAgIHZhciBxID0gdGhpcy5tLnN1Ym4oMSk7XG4gICAgdmFyIHMgPSAwO1xuICAgIHdoaWxlICghcS5pc1plcm8oKSAmJiBxLmFuZGxuKDEpID09PSAwKSB7XG4gICAgICBzKys7XG4gICAgICBxLml1c2hybigxKTtcbiAgICB9XG4gICAgYXNzZXJ0KCFxLmlzWmVybygpKTtcblxuICAgIHZhciBvbmUgPSBuZXcgQk4oMSkudG9SZWQodGhpcyk7XG4gICAgdmFyIG5PbmUgPSBvbmUucmVkTmVnKCk7XG5cbiAgICAvLyBGaW5kIHF1YWRyYXRpYyBub24tcmVzaWR1ZVxuICAgIC8vIE5PVEU6IE1heCBpcyBzdWNoIGJlY2F1c2Ugb2YgZ2VuZXJhbGl6ZWQgUmllbWFubiBoeXBvdGhlc2lzLlxuICAgIHZhciBscG93ID0gdGhpcy5tLnN1Ym4oMSkuaXVzaHJuKDEpO1xuICAgIHZhciB6ID0gdGhpcy5tLmJpdExlbmd0aCgpO1xuICAgIHogPSBuZXcgQk4oMiAqIHogKiB6KS50b1JlZCh0aGlzKTtcblxuICAgIHdoaWxlICh0aGlzLnBvdyh6LCBscG93KS5jbXAobk9uZSkgIT09IDApIHtcbiAgICAgIHoucmVkSUFkZChuT25lKTtcbiAgICB9XG5cbiAgICB2YXIgYyA9IHRoaXMucG93KHosIHEpO1xuICAgIHZhciByID0gdGhpcy5wb3coYSwgcS5hZGRuKDEpLml1c2hybigxKSk7XG4gICAgdmFyIHQgPSB0aGlzLnBvdyhhLCBxKTtcbiAgICB2YXIgbSA9IHM7XG4gICAgd2hpbGUgKHQuY21wKG9uZSkgIT09IDApIHtcbiAgICAgIHZhciB0bXAgPSB0O1xuICAgICAgZm9yICh2YXIgaSA9IDA7IHRtcC5jbXAob25lKSAhPT0gMDsgaSsrKSB7XG4gICAgICAgIHRtcCA9IHRtcC5yZWRTcXIoKTtcbiAgICAgIH1cbiAgICAgIGFzc2VydChpIDwgbSk7XG4gICAgICB2YXIgYiA9IHRoaXMucG93KGMsIG5ldyBCTigxKS5pdXNobG4obSAtIGkgLSAxKSk7XG5cbiAgICAgIHIgPSByLnJlZE11bChiKTtcbiAgICAgIGMgPSBiLnJlZFNxcigpO1xuICAgICAgdCA9IHQucmVkTXVsKGMpO1xuICAgICAgbSA9IGk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHI7XG4gIH07XG5cbiAgUmVkLnByb3RvdHlwZS5pbnZtID0gZnVuY3Rpb24gaW52bSAoYSkge1xuICAgIHZhciBpbnYgPSBhLl9pbnZtcCh0aGlzLm0pO1xuICAgIGlmIChpbnYubmVnYXRpdmUgIT09IDApIHtcbiAgICAgIGludi5uZWdhdGl2ZSA9IDA7XG4gICAgICByZXR1cm4gdGhpcy5pbW9kKGludikucmVkTmVnKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLmltb2QoaW52KTtcbiAgICB9XG4gIH07XG5cbiAgUmVkLnByb3RvdHlwZS5wb3cgPSBmdW5jdGlvbiBwb3cgKGEsIG51bSkge1xuICAgIGlmIChudW0uaXNaZXJvKCkpIHJldHVybiBuZXcgQk4oMSkudG9SZWQodGhpcyk7XG4gICAgaWYgKG51bS5jbXBuKDEpID09PSAwKSByZXR1cm4gYS5jbG9uZSgpO1xuXG4gICAgdmFyIHdpbmRvd1NpemUgPSA0O1xuICAgIHZhciB3bmQgPSBuZXcgQXJyYXkoMSA8PCB3aW5kb3dTaXplKTtcbiAgICB3bmRbMF0gPSBuZXcgQk4oMSkudG9SZWQodGhpcyk7XG4gICAgd25kWzFdID0gYTtcbiAgICBmb3IgKHZhciBpID0gMjsgaSA8IHduZC5sZW5ndGg7IGkrKykge1xuICAgICAgd25kW2ldID0gdGhpcy5tdWwod25kW2kgLSAxXSwgYSk7XG4gICAgfVxuXG4gICAgdmFyIHJlcyA9IHduZFswXTtcbiAgICB2YXIgY3VycmVudCA9IDA7XG4gICAgdmFyIGN1cnJlbnRMZW4gPSAwO1xuICAgIHZhciBzdGFydCA9IG51bS5iaXRMZW5ndGgoKSAlIDI2O1xuICAgIGlmIChzdGFydCA9PT0gMCkge1xuICAgICAgc3RhcnQgPSAyNjtcbiAgICB9XG5cbiAgICBmb3IgKGkgPSBudW0ubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHtcbiAgICAgIHZhciB3b3JkID0gbnVtLndvcmRzW2ldO1xuICAgICAgZm9yICh2YXIgaiA9IHN0YXJ0IC0gMTsgaiA+PSAwOyBqLS0pIHtcbiAgICAgICAgdmFyIGJpdCA9ICh3b3JkID4+IGopICYgMTtcbiAgICAgICAgaWYgKHJlcyAhPT0gd25kWzBdKSB7XG4gICAgICAgICAgcmVzID0gdGhpcy5zcXIocmVzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChiaXQgPT09IDAgJiYgY3VycmVudCA9PT0gMCkge1xuICAgICAgICAgIGN1cnJlbnRMZW4gPSAwO1xuICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgY3VycmVudCA8PD0gMTtcbiAgICAgICAgY3VycmVudCB8PSBiaXQ7XG4gICAgICAgIGN1cnJlbnRMZW4rKztcbiAgICAgICAgaWYgKGN1cnJlbnRMZW4gIT09IHdpbmRvd1NpemUgJiYgKGkgIT09IDAgfHwgaiAhPT0gMCkpIGNvbnRpbnVlO1xuXG4gICAgICAgIHJlcyA9IHRoaXMubXVsKHJlcywgd25kW2N1cnJlbnRdKTtcbiAgICAgICAgY3VycmVudExlbiA9IDA7XG4gICAgICAgIGN1cnJlbnQgPSAwO1xuICAgICAgfVxuICAgICAgc3RhcnQgPSAyNjtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzO1xuICB9O1xuXG4gIFJlZC5wcm90b3R5cGUuY29udmVydFRvID0gZnVuY3Rpb24gY29udmVydFRvIChudW0pIHtcbiAgICB2YXIgciA9IG51bS51bW9kKHRoaXMubSk7XG5cbiAgICByZXR1cm4gciA9PT0gbnVtID8gci5jbG9uZSgpIDogcjtcbiAgfTtcblxuICBSZWQucHJvdG90eXBlLmNvbnZlcnRGcm9tID0gZnVuY3Rpb24gY29udmVydEZyb20gKG51bSkge1xuICAgIHZhciByZXMgPSBudW0uY2xvbmUoKTtcbiAgICByZXMucmVkID0gbnVsbDtcbiAgICByZXR1cm4gcmVzO1xuICB9O1xuXG4gIC8vXG4gIC8vIE1vbnRnb21lcnkgbWV0aG9kIGVuZ2luZVxuICAvL1xuXG4gIEJOLm1vbnQgPSBmdW5jdGlvbiBtb250IChudW0pIHtcbiAgICByZXR1cm4gbmV3IE1vbnQobnVtKTtcbiAgfTtcblxuICBmdW5jdGlvbiBNb250IChtKSB7XG4gICAgUmVkLmNhbGwodGhpcywgbSk7XG5cbiAgICB0aGlzLnNoaWZ0ID0gdGhpcy5tLmJpdExlbmd0aCgpO1xuICAgIGlmICh0aGlzLnNoaWZ0ICUgMjYgIT09IDApIHtcbiAgICAgIHRoaXMuc2hpZnQgKz0gMjYgLSAodGhpcy5zaGlmdCAlIDI2KTtcbiAgICB9XG5cbiAgICB0aGlzLnIgPSBuZXcgQk4oMSkuaXVzaGxuKHRoaXMuc2hpZnQpO1xuICAgIHRoaXMucjIgPSB0aGlzLmltb2QodGhpcy5yLnNxcigpKTtcbiAgICB0aGlzLnJpbnYgPSB0aGlzLnIuX2ludm1wKHRoaXMubSk7XG5cbiAgICB0aGlzLm1pbnYgPSB0aGlzLnJpbnYubXVsKHRoaXMucikuaXN1Ym4oMSkuZGl2KHRoaXMubSk7XG4gICAgdGhpcy5taW52ID0gdGhpcy5taW52LnVtb2QodGhpcy5yKTtcbiAgICB0aGlzLm1pbnYgPSB0aGlzLnIuc3ViKHRoaXMubWludik7XG4gIH1cbiAgaW5oZXJpdHMoTW9udCwgUmVkKTtcblxuICBNb250LnByb3RvdHlwZS5jb252ZXJ0VG8gPSBmdW5jdGlvbiBjb252ZXJ0VG8gKG51bSkge1xuICAgIHJldHVybiB0aGlzLmltb2QobnVtLnVzaGxuKHRoaXMuc2hpZnQpKTtcbiAgfTtcblxuICBNb250LnByb3RvdHlwZS5jb252ZXJ0RnJvbSA9IGZ1bmN0aW9uIGNvbnZlcnRGcm9tIChudW0pIHtcbiAgICB2YXIgciA9IHRoaXMuaW1vZChudW0ubXVsKHRoaXMucmludikpO1xuICAgIHIucmVkID0gbnVsbDtcbiAgICByZXR1cm4gcjtcbiAgfTtcblxuICBNb250LnByb3RvdHlwZS5pbXVsID0gZnVuY3Rpb24gaW11bCAoYSwgYikge1xuICAgIGlmIChhLmlzWmVybygpIHx8IGIuaXNaZXJvKCkpIHtcbiAgICAgIGEud29yZHNbMF0gPSAwO1xuICAgICAgYS5sZW5ndGggPSAxO1xuICAgICAgcmV0dXJuIGE7XG4gICAgfVxuXG4gICAgdmFyIHQgPSBhLmltdWwoYik7XG4gICAgdmFyIGMgPSB0Lm1hc2tuKHRoaXMuc2hpZnQpLm11bCh0aGlzLm1pbnYpLmltYXNrbih0aGlzLnNoaWZ0KS5tdWwodGhpcy5tKTtcbiAgICB2YXIgdSA9IHQuaXN1YihjKS5pdXNocm4odGhpcy5zaGlmdCk7XG4gICAgdmFyIHJlcyA9IHU7XG5cbiAgICBpZiAodS5jbXAodGhpcy5tKSA+PSAwKSB7XG4gICAgICByZXMgPSB1LmlzdWIodGhpcy5tKTtcbiAgICB9IGVsc2UgaWYgKHUuY21wbigwKSA8IDApIHtcbiAgICAgIHJlcyA9IHUuaWFkZCh0aGlzLm0pO1xuICAgIH1cblxuICAgIHJldHVybiByZXMuX2ZvcmNlUmVkKHRoaXMpO1xuICB9O1xuXG4gIE1vbnQucHJvdG90eXBlLm11bCA9IGZ1bmN0aW9uIG11bCAoYSwgYikge1xuICAgIGlmIChhLmlzWmVybygpIHx8IGIuaXNaZXJvKCkpIHJldHVybiBuZXcgQk4oMCkuX2ZvcmNlUmVkKHRoaXMpO1xuXG4gICAgdmFyIHQgPSBhLm11bChiKTtcbiAgICB2YXIgYyA9IHQubWFza24odGhpcy5zaGlmdCkubXVsKHRoaXMubWludikuaW1hc2tuKHRoaXMuc2hpZnQpLm11bCh0aGlzLm0pO1xuICAgIHZhciB1ID0gdC5pc3ViKGMpLml1c2hybih0aGlzLnNoaWZ0KTtcbiAgICB2YXIgcmVzID0gdTtcbiAgICBpZiAodS5jbXAodGhpcy5tKSA+PSAwKSB7XG4gICAgICByZXMgPSB1LmlzdWIodGhpcy5tKTtcbiAgICB9IGVsc2UgaWYgKHUuY21wbigwKSA8IDApIHtcbiAgICAgIHJlcyA9IHUuaWFkZCh0aGlzLm0pO1xuICAgIH1cblxuICAgIHJldHVybiByZXMuX2ZvcmNlUmVkKHRoaXMpO1xuICB9O1xuXG4gIE1vbnQucHJvdG90eXBlLmludm0gPSBmdW5jdGlvbiBpbnZtIChhKSB7XG4gICAgLy8gKEFSKV4tMSAqIFJeMiA9IChBXi0xICogUl4tMSkgKiBSXjIgPSBBXi0xICogUlxuICAgIHZhciByZXMgPSB0aGlzLmltb2QoYS5faW52bXAodGhpcy5tKS5tdWwodGhpcy5yMikpO1xuICAgIHJldHVybiByZXMuX2ZvcmNlUmVkKHRoaXMpO1xuICB9O1xufSkodHlwZW9mIG1vZHVsZSA9PT0gJ3VuZGVmaW5lZCcgfHwgbW9kdWxlLCB0aGlzKTtcbiIsICIvKiEgc2FmZS1idWZmZXIuIE1JVCBMaWNlbnNlLiBGZXJvc3MgQWJvdWtoYWRpamVoIDxodHRwczovL2Zlcm9zcy5vcmcvb3BlbnNvdXJjZT4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG5vZGUvbm8tZGVwcmVjYXRlZC1hcGkgKi9cbnZhciBidWZmZXIgPSByZXF1aXJlKCdidWZmZXInKVxudmFyIEJ1ZmZlciA9IGJ1ZmZlci5CdWZmZXJcblxuLy8gYWx0ZXJuYXRpdmUgdG8gdXNpbmcgT2JqZWN0LmtleXMgZm9yIG9sZCBicm93c2Vyc1xuZnVuY3Rpb24gY29weVByb3BzIChzcmMsIGRzdCkge1xuICBmb3IgKHZhciBrZXkgaW4gc3JjKSB7XG4gICAgZHN0W2tleV0gPSBzcmNba2V5XVxuICB9XG59XG5pZiAoQnVmZmVyLmZyb20gJiYgQnVmZmVyLmFsbG9jICYmIEJ1ZmZlci5hbGxvY1Vuc2FmZSAmJiBCdWZmZXIuYWxsb2NVbnNhZmVTbG93KSB7XG4gIG1vZHVsZS5leHBvcnRzID0gYnVmZmVyXG59IGVsc2Uge1xuICAvLyBDb3B5IHByb3BlcnRpZXMgZnJvbSByZXF1aXJlKCdidWZmZXInKVxuICBjb3B5UHJvcHMoYnVmZmVyLCBleHBvcnRzKVxuICBleHBvcnRzLkJ1ZmZlciA9IFNhZmVCdWZmZXJcbn1cblxuZnVuY3Rpb24gU2FmZUJ1ZmZlciAoYXJnLCBlbmNvZGluZ09yT2Zmc2V0LCBsZW5ndGgpIHtcbiAgcmV0dXJuIEJ1ZmZlcihhcmcsIGVuY29kaW5nT3JPZmZzZXQsIGxlbmd0aClcbn1cblxuU2FmZUJ1ZmZlci5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKEJ1ZmZlci5wcm90b3R5cGUpXG5cbi8vIENvcHkgc3RhdGljIG1ldGhvZHMgZnJvbSBCdWZmZXJcbmNvcHlQcm9wcyhCdWZmZXIsIFNhZmVCdWZmZXIpXG5cblNhZmVCdWZmZXIuZnJvbSA9IGZ1bmN0aW9uIChhcmcsIGVuY29kaW5nT3JPZmZzZXQsIGxlbmd0aCkge1xuICBpZiAodHlwZW9mIGFyZyA9PT0gJ251bWJlcicpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdBcmd1bWVudCBtdXN0IG5vdCBiZSBhIG51bWJlcicpXG4gIH1cbiAgcmV0dXJuIEJ1ZmZlcihhcmcsIGVuY29kaW5nT3JPZmZzZXQsIGxlbmd0aClcbn1cblxuU2FmZUJ1ZmZlci5hbGxvYyA9IGZ1bmN0aW9uIChzaXplLCBmaWxsLCBlbmNvZGluZykge1xuICBpZiAodHlwZW9mIHNpemUgIT09ICdudW1iZXInKSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcignQXJndW1lbnQgbXVzdCBiZSBhIG51bWJlcicpXG4gIH1cbiAgdmFyIGJ1ZiA9IEJ1ZmZlcihzaXplKVxuICBpZiAoZmlsbCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgaWYgKHR5cGVvZiBlbmNvZGluZyA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGJ1Zi5maWxsKGZpbGwsIGVuY29kaW5nKVxuICAgIH0gZWxzZSB7XG4gICAgICBidWYuZmlsbChmaWxsKVxuICAgIH1cbiAgfSBlbHNlIHtcbiAgICBidWYuZmlsbCgwKVxuICB9XG4gIHJldHVybiBidWZcbn1cblxuU2FmZUJ1ZmZlci5hbGxvY1Vuc2FmZSA9IGZ1bmN0aW9uIChzaXplKSB7XG4gIGlmICh0eXBlb2Ygc2l6ZSAhPT0gJ251bWJlcicpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdBcmd1bWVudCBtdXN0IGJlIGEgbnVtYmVyJylcbiAgfVxuICByZXR1cm4gQnVmZmVyKHNpemUpXG59XG5cblNhZmVCdWZmZXIuYWxsb2NVbnNhZmVTbG93ID0gZnVuY3Rpb24gKHNpemUpIHtcbiAgaWYgKHR5cGVvZiBzaXplICE9PSAnbnVtYmVyJykge1xuICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0FyZ3VtZW50IG11c3QgYmUgYSBudW1iZXInKVxuICB9XG4gIHJldHVybiBidWZmZXIuU2xvd0J1ZmZlcihzaXplKVxufVxuIiwgIid1c2Ugc3RyaWN0J1xuLy8gYmFzZS14IGVuY29kaW5nIC8gZGVjb2Rpbmdcbi8vIENvcHlyaWdodCAoYykgMjAxOCBiYXNlLXggY29udHJpYnV0b3JzXG4vLyBDb3B5cmlnaHQgKGMpIDIwMTQtMjAxOCBUaGUgQml0Y29pbiBDb3JlIGRldmVsb3BlcnMgKGJhc2U1OC5jcHApXG4vLyBEaXN0cmlidXRlZCB1bmRlciB0aGUgTUlUIHNvZnR3YXJlIGxpY2Vuc2UsIHNlZSB0aGUgYWNjb21wYW55aW5nXG4vLyBmaWxlIExJQ0VOU0Ugb3IgaHR0cDovL3d3dy5vcGVuc291cmNlLm9yZy9saWNlbnNlcy9taXQtbGljZW5zZS5waHAuXG4vLyBAdHMtaWdub3JlXG52YXIgX0J1ZmZlciA9IHJlcXVpcmUoJ3NhZmUtYnVmZmVyJykuQnVmZmVyXG5mdW5jdGlvbiBiYXNlIChBTFBIQUJFVCkge1xuICBpZiAoQUxQSEFCRVQubGVuZ3RoID49IDI1NSkgeyB0aHJvdyBuZXcgVHlwZUVycm9yKCdBbHBoYWJldCB0b28gbG9uZycpIH1cbiAgdmFyIEJBU0VfTUFQID0gbmV3IFVpbnQ4QXJyYXkoMjU2KVxuICBmb3IgKHZhciBqID0gMDsgaiA8IEJBU0VfTUFQLmxlbmd0aDsgaisrKSB7XG4gICAgQkFTRV9NQVBbal0gPSAyNTVcbiAgfVxuICBmb3IgKHZhciBpID0gMDsgaSA8IEFMUEhBQkVULmxlbmd0aDsgaSsrKSB7XG4gICAgdmFyIHggPSBBTFBIQUJFVC5jaGFyQXQoaSlcbiAgICB2YXIgeGMgPSB4LmNoYXJDb2RlQXQoMClcbiAgICBpZiAoQkFTRV9NQVBbeGNdICE9PSAyNTUpIHsgdGhyb3cgbmV3IFR5cGVFcnJvcih4ICsgJyBpcyBhbWJpZ3VvdXMnKSB9XG4gICAgQkFTRV9NQVBbeGNdID0gaVxuICB9XG4gIHZhciBCQVNFID0gQUxQSEFCRVQubGVuZ3RoXG4gIHZhciBMRUFERVIgPSBBTFBIQUJFVC5jaGFyQXQoMClcbiAgdmFyIEZBQ1RPUiA9IE1hdGgubG9nKEJBU0UpIC8gTWF0aC5sb2coMjU2KSAvLyBsb2coQkFTRSkgLyBsb2coMjU2KSwgcm91bmRlZCB1cFxuICB2YXIgaUZBQ1RPUiA9IE1hdGgubG9nKDI1NikgLyBNYXRoLmxvZyhCQVNFKSAvLyBsb2coMjU2KSAvIGxvZyhCQVNFKSwgcm91bmRlZCB1cFxuICBmdW5jdGlvbiBlbmNvZGUgKHNvdXJjZSkge1xuICAgIGlmIChBcnJheS5pc0FycmF5KHNvdXJjZSkgfHwgc291cmNlIGluc3RhbmNlb2YgVWludDhBcnJheSkgeyBzb3VyY2UgPSBfQnVmZmVyLmZyb20oc291cmNlKSB9XG4gICAgaWYgKCFfQnVmZmVyLmlzQnVmZmVyKHNvdXJjZSkpIHsgdGhyb3cgbmV3IFR5cGVFcnJvcignRXhwZWN0ZWQgQnVmZmVyJykgfVxuICAgIGlmIChzb3VyY2UubGVuZ3RoID09PSAwKSB7IHJldHVybiAnJyB9XG4gICAgICAgIC8vIFNraXAgJiBjb3VudCBsZWFkaW5nIHplcm9lcy5cbiAgICB2YXIgemVyb2VzID0gMFxuICAgIHZhciBsZW5ndGggPSAwXG4gICAgdmFyIHBiZWdpbiA9IDBcbiAgICB2YXIgcGVuZCA9IHNvdXJjZS5sZW5ndGhcbiAgICB3aGlsZSAocGJlZ2luICE9PSBwZW5kICYmIHNvdXJjZVtwYmVnaW5dID09PSAwKSB7XG4gICAgICBwYmVnaW4rK1xuICAgICAgemVyb2VzKytcbiAgICB9XG4gICAgICAgIC8vIEFsbG9jYXRlIGVub3VnaCBzcGFjZSBpbiBiaWctZW5kaWFuIGJhc2U1OCByZXByZXNlbnRhdGlvbi5cbiAgICB2YXIgc2l6ZSA9ICgocGVuZCAtIHBiZWdpbikgKiBpRkFDVE9SICsgMSkgPj4+IDBcbiAgICB2YXIgYjU4ID0gbmV3IFVpbnQ4QXJyYXkoc2l6ZSlcbiAgICAgICAgLy8gUHJvY2VzcyB0aGUgYnl0ZXMuXG4gICAgd2hpbGUgKHBiZWdpbiAhPT0gcGVuZCkge1xuICAgICAgdmFyIGNhcnJ5ID0gc291cmNlW3BiZWdpbl1cbiAgICAgICAgICAgIC8vIEFwcGx5IFwiYjU4ID0gYjU4ICogMjU2ICsgY2hcIi5cbiAgICAgIHZhciBpID0gMFxuICAgICAgZm9yICh2YXIgaXQxID0gc2l6ZSAtIDE7IChjYXJyeSAhPT0gMCB8fCBpIDwgbGVuZ3RoKSAmJiAoaXQxICE9PSAtMSk7IGl0MS0tLCBpKyspIHtcbiAgICAgICAgY2FycnkgKz0gKDI1NiAqIGI1OFtpdDFdKSA+Pj4gMFxuICAgICAgICBiNThbaXQxXSA9IChjYXJyeSAlIEJBU0UpID4+PiAwXG4gICAgICAgIGNhcnJ5ID0gKGNhcnJ5IC8gQkFTRSkgPj4+IDBcbiAgICAgIH1cbiAgICAgIGlmIChjYXJyeSAhPT0gMCkgeyB0aHJvdyBuZXcgRXJyb3IoJ05vbi16ZXJvIGNhcnJ5JykgfVxuICAgICAgbGVuZ3RoID0gaVxuICAgICAgcGJlZ2luKytcbiAgICB9XG4gICAgICAgIC8vIFNraXAgbGVhZGluZyB6ZXJvZXMgaW4gYmFzZTU4IHJlc3VsdC5cbiAgICB2YXIgaXQyID0gc2l6ZSAtIGxlbmd0aFxuICAgIHdoaWxlIChpdDIgIT09IHNpemUgJiYgYjU4W2l0Ml0gPT09IDApIHtcbiAgICAgIGl0MisrXG4gICAgfVxuICAgICAgICAvLyBUcmFuc2xhdGUgdGhlIHJlc3VsdCBpbnRvIGEgc3RyaW5nLlxuICAgIHZhciBzdHIgPSBMRUFERVIucmVwZWF0KHplcm9lcylcbiAgICBmb3IgKDsgaXQyIDwgc2l6ZTsgKytpdDIpIHsgc3RyICs9IEFMUEhBQkVULmNoYXJBdChiNThbaXQyXSkgfVxuICAgIHJldHVybiBzdHJcbiAgfVxuICBmdW5jdGlvbiBkZWNvZGVVbnNhZmUgKHNvdXJjZSkge1xuICAgIGlmICh0eXBlb2Ygc291cmNlICE9PSAnc3RyaW5nJykgeyB0aHJvdyBuZXcgVHlwZUVycm9yKCdFeHBlY3RlZCBTdHJpbmcnKSB9XG4gICAgaWYgKHNvdXJjZS5sZW5ndGggPT09IDApIHsgcmV0dXJuIF9CdWZmZXIuYWxsb2MoMCkgfVxuICAgIHZhciBwc3ogPSAwXG4gICAgICAgIC8vIFNraXAgYW5kIGNvdW50IGxlYWRpbmcgJzEncy5cbiAgICB2YXIgemVyb2VzID0gMFxuICAgIHZhciBsZW5ndGggPSAwXG4gICAgd2hpbGUgKHNvdXJjZVtwc3pdID09PSBMRUFERVIpIHtcbiAgICAgIHplcm9lcysrXG4gICAgICBwc3orK1xuICAgIH1cbiAgICAgICAgLy8gQWxsb2NhdGUgZW5vdWdoIHNwYWNlIGluIGJpZy1lbmRpYW4gYmFzZTI1NiByZXByZXNlbnRhdGlvbi5cbiAgICB2YXIgc2l6ZSA9ICgoKHNvdXJjZS5sZW5ndGggLSBwc3opICogRkFDVE9SKSArIDEpID4+PiAwIC8vIGxvZyg1OCkgLyBsb2coMjU2KSwgcm91bmRlZCB1cC5cbiAgICB2YXIgYjI1NiA9IG5ldyBVaW50OEFycmF5KHNpemUpXG4gICAgICAgIC8vIFByb2Nlc3MgdGhlIGNoYXJhY3RlcnMuXG4gICAgd2hpbGUgKHNvdXJjZVtwc3pdKSB7XG4gICAgICAgICAgICAvLyBEZWNvZGUgY2hhcmFjdGVyXG4gICAgICB2YXIgY2FycnkgPSBCQVNFX01BUFtzb3VyY2UuY2hhckNvZGVBdChwc3opXVxuICAgICAgICAgICAgLy8gSW52YWxpZCBjaGFyYWN0ZXJcbiAgICAgIGlmIChjYXJyeSA9PT0gMjU1KSB7IHJldHVybiB9XG4gICAgICB2YXIgaSA9IDBcbiAgICAgIGZvciAodmFyIGl0MyA9IHNpemUgLSAxOyAoY2FycnkgIT09IDAgfHwgaSA8IGxlbmd0aCkgJiYgKGl0MyAhPT0gLTEpOyBpdDMtLSwgaSsrKSB7XG4gICAgICAgIGNhcnJ5ICs9IChCQVNFICogYjI1NltpdDNdKSA+Pj4gMFxuICAgICAgICBiMjU2W2l0M10gPSAoY2FycnkgJSAyNTYpID4+PiAwXG4gICAgICAgIGNhcnJ5ID0gKGNhcnJ5IC8gMjU2KSA+Pj4gMFxuICAgICAgfVxuICAgICAgaWYgKGNhcnJ5ICE9PSAwKSB7IHRocm93IG5ldyBFcnJvcignTm9uLXplcm8gY2FycnknKSB9XG4gICAgICBsZW5ndGggPSBpXG4gICAgICBwc3orK1xuICAgIH1cbiAgICAgICAgLy8gU2tpcCBsZWFkaW5nIHplcm9lcyBpbiBiMjU2LlxuICAgIHZhciBpdDQgPSBzaXplIC0gbGVuZ3RoXG4gICAgd2hpbGUgKGl0NCAhPT0gc2l6ZSAmJiBiMjU2W2l0NF0gPT09IDApIHtcbiAgICAgIGl0NCsrXG4gICAgfVxuICAgIHZhciB2Y2ggPSBfQnVmZmVyLmFsbG9jVW5zYWZlKHplcm9lcyArIChzaXplIC0gaXQ0KSlcbiAgICB2Y2guZmlsbCgweDAwLCAwLCB6ZXJvZXMpXG4gICAgdmFyIGogPSB6ZXJvZXNcbiAgICB3aGlsZSAoaXQ0ICE9PSBzaXplKSB7XG4gICAgICB2Y2hbaisrXSA9IGIyNTZbaXQ0KytdXG4gICAgfVxuICAgIHJldHVybiB2Y2hcbiAgfVxuICBmdW5jdGlvbiBkZWNvZGUgKHN0cmluZykge1xuICAgIHZhciBidWZmZXIgPSBkZWNvZGVVbnNhZmUoc3RyaW5nKVxuICAgIGlmIChidWZmZXIpIHsgcmV0dXJuIGJ1ZmZlciB9XG4gICAgdGhyb3cgbmV3IEVycm9yKCdOb24tYmFzZScgKyBCQVNFICsgJyBjaGFyYWN0ZXInKVxuICB9XG4gIHJldHVybiB7XG4gICAgZW5jb2RlOiBlbmNvZGUsXG4gICAgZGVjb2RlVW5zYWZlOiBkZWNvZGVVbnNhZmUsXG4gICAgZGVjb2RlOiBkZWNvZGVcbiAgfVxufVxubW9kdWxlLmV4cG9ydHMgPSBiYXNlXG4iLCAidmFyIGJhc2V4ID0gcmVxdWlyZSgnYmFzZS14JylcbnZhciBBTFBIQUJFVCA9ICcxMjM0NTY3ODlBQkNERUZHSEpLTE1OUFFSU1RVVldYWVphYmNkZWZnaGlqa21ub3BxcnN0dXZ3eHl6J1xuXG5tb2R1bGUuZXhwb3J0cyA9IGJhc2V4KEFMUEhBQkVUKVxuIiwgImltcG9ydCB7IFNIQTIgfSBmcm9tICcuL19zaGEyLmpzJztcbmltcG9ydCB7IHJvdHIsIHdyYXBDb25zdHJ1Y3RvciB9IGZyb20gJy4vdXRpbHMuanMnO1xuXG4vLyBTSEEyLTI1NiBuZWVkIHRvIHRyeSAyXjEyOCBoYXNoZXMgdG8gZXhlY3V0ZSBiaXJ0aGRheSBhdHRhY2suXG4vLyBCVEMgbmV0d29yayBpcyBkb2luZyAyXjY3IGhhc2hlcy9zZWMgYXMgcGVyIGVhcmx5IDIwMjMuXG5cbi8vIENob2ljZTogYSA/IGIgOiBjXG5jb25zdCBDaGkgPSAoYTogbnVtYmVyLCBiOiBudW1iZXIsIGM6IG51bWJlcikgPT4gKGEgJiBiKSBeICh+YSAmIGMpO1xuLy8gTWFqb3JpdHkgZnVuY3Rpb24sIHRydWUgaWYgYW55IHR3byBpbnB1c3QgaXMgdHJ1ZVxuY29uc3QgTWFqID0gKGE6IG51bWJlciwgYjogbnVtYmVyLCBjOiBudW1iZXIpID0+IChhICYgYikgXiAoYSAmIGMpIF4gKGIgJiBjKTtcblxuLy8gUm91bmQgY29uc3RhbnRzOlxuLy8gZmlyc3QgMzIgYml0cyBvZiB0aGUgZnJhY3Rpb25hbCBwYXJ0cyBvZiB0aGUgY3ViZSByb290cyBvZiB0aGUgZmlyc3QgNjQgcHJpbWVzIDIuLjMxMSlcbi8vIHByZXR0aWVyLWlnbm9yZVxuY29uc3QgU0hBMjU2X0sgPSAvKiBAX19QVVJFX18gKi9uZXcgVWludDMyQXJyYXkoW1xuICAweDQyOGEyZjk4LCAweDcxMzc0NDkxLCAweGI1YzBmYmNmLCAweGU5YjVkYmE1LCAweDM5NTZjMjViLCAweDU5ZjExMWYxLCAweDkyM2Y4MmE0LCAweGFiMWM1ZWQ1LFxuICAweGQ4MDdhYTk4LCAweDEyODM1YjAxLCAweDI0MzE4NWJlLCAweDU1MGM3ZGMzLCAweDcyYmU1ZDc0LCAweDgwZGViMWZlLCAweDliZGMwNmE3LCAweGMxOWJmMTc0LFxuICAweGU0OWI2OWMxLCAweGVmYmU0Nzg2LCAweDBmYzE5ZGM2LCAweDI0MGNhMWNjLCAweDJkZTkyYzZmLCAweDRhNzQ4NGFhLCAweDVjYjBhOWRjLCAweDc2Zjk4OGRhLFxuICAweDk4M2U1MTUyLCAweGE4MzFjNjZkLCAweGIwMDMyN2M4LCAweGJmNTk3ZmM3LCAweGM2ZTAwYmYzLCAweGQ1YTc5MTQ3LCAweDA2Y2E2MzUxLCAweDE0MjkyOTY3LFxuICAweDI3YjcwYTg1LCAweDJlMWIyMTM4LCAweDRkMmM2ZGZjLCAweDUzMzgwZDEzLCAweDY1MGE3MzU0LCAweDc2NmEwYWJiLCAweDgxYzJjOTJlLCAweDkyNzIyYzg1LFxuICAweGEyYmZlOGExLCAweGE4MWE2NjRiLCAweGMyNGI4YjcwLCAweGM3NmM1MWEzLCAweGQxOTJlODE5LCAweGQ2OTkwNjI0LCAweGY0MGUzNTg1LCAweDEwNmFhMDcwLFxuICAweDE5YTRjMTE2LCAweDFlMzc2YzA4LCAweDI3NDg3NzRjLCAweDM0YjBiY2I1LCAweDM5MWMwY2IzLCAweDRlZDhhYTRhLCAweDViOWNjYTRmLCAweDY4MmU2ZmYzLFxuICAweDc0OGY4MmVlLCAweDc4YTU2MzZmLCAweDg0Yzg3ODE0LCAweDhjYzcwMjA4LCAweDkwYmVmZmZhLCAweGE0NTA2Y2ViLCAweGJlZjlhM2Y3LCAweGM2NzE3OGYyXG5dKTtcblxuLy8gSW5pdGlhbCBzdGF0ZSAoZmlyc3QgMzIgYml0cyBvZiB0aGUgZnJhY3Rpb25hbCBwYXJ0cyBvZiB0aGUgc3F1YXJlIHJvb3RzIG9mIHRoZSBmaXJzdCA4IHByaW1lcyAyLi4xOSk6XG4vLyBwcmV0dGllci1pZ25vcmVcbmNvbnN0IElWID0gLyogQF9fUFVSRV9fICovbmV3IFVpbnQzMkFycmF5KFtcbiAgMHg2YTA5ZTY2NywgMHhiYjY3YWU4NSwgMHgzYzZlZjM3MiwgMHhhNTRmZjUzYSwgMHg1MTBlNTI3ZiwgMHg5YjA1Njg4YywgMHgxZjgzZDlhYiwgMHg1YmUwY2QxOVxuXSk7XG5cbi8vIFRlbXBvcmFyeSBidWZmZXIsIG5vdCB1c2VkIHRvIHN0b3JlIGFueXRoaW5nIGJldHdlZW4gcnVuc1xuLy8gTmFtZWQgdGhpcyB3YXkgYmVjYXVzZSBpdCBtYXRjaGVzIHNwZWNpZmljYXRpb24uXG5jb25zdCBTSEEyNTZfVyA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgVWludDMyQXJyYXkoNjQpO1xuY2xhc3MgU0hBMjU2IGV4dGVuZHMgU0hBMjxTSEEyNTY+IHtcbiAgLy8gV2UgY2Fubm90IHVzZSBhcnJheSBoZXJlIHNpbmNlIGFycmF5IGFsbG93cyBpbmRleGluZyBieSB2YXJpYWJsZVxuICAvLyB3aGljaCBtZWFucyBvcHRpbWl6ZXIvY29tcGlsZXIgY2Fubm90IHVzZSByZWdpc3RlcnMuXG4gIEEgPSBJVlswXSB8IDA7XG4gIEIgPSBJVlsxXSB8IDA7XG4gIEMgPSBJVlsyXSB8IDA7XG4gIEQgPSBJVlszXSB8IDA7XG4gIEUgPSBJVls0XSB8IDA7XG4gIEYgPSBJVls1XSB8IDA7XG4gIEcgPSBJVls2XSB8IDA7XG4gIEggPSBJVls3XSB8IDA7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoNjQsIDMyLCA4LCBmYWxzZSk7XG4gIH1cbiAgcHJvdGVjdGVkIGdldCgpOiBbbnVtYmVyLCBudW1iZXIsIG51bWJlciwgbnVtYmVyLCBudW1iZXIsIG51bWJlciwgbnVtYmVyLCBudW1iZXJdIHtcbiAgICBjb25zdCB7IEEsIEIsIEMsIEQsIEUsIEYsIEcsIEggfSA9IHRoaXM7XG4gICAgcmV0dXJuIFtBLCBCLCBDLCBELCBFLCBGLCBHLCBIXTtcbiAgfVxuICAvLyBwcmV0dGllci1pZ25vcmVcbiAgcHJvdGVjdGVkIHNldChcbiAgICBBOiBudW1iZXIsIEI6IG51bWJlciwgQzogbnVtYmVyLCBEOiBudW1iZXIsIEU6IG51bWJlciwgRjogbnVtYmVyLCBHOiBudW1iZXIsIEg6IG51bWJlclxuICApIHtcbiAgICB0aGlzLkEgPSBBIHwgMDtcbiAgICB0aGlzLkIgPSBCIHwgMDtcbiAgICB0aGlzLkMgPSBDIHwgMDtcbiAgICB0aGlzLkQgPSBEIHwgMDtcbiAgICB0aGlzLkUgPSBFIHwgMDtcbiAgICB0aGlzLkYgPSBGIHwgMDtcbiAgICB0aGlzLkcgPSBHIHwgMDtcbiAgICB0aGlzLkggPSBIIHwgMDtcbiAgfVxuICBwcm90ZWN0ZWQgcHJvY2Vzcyh2aWV3OiBEYXRhVmlldywgb2Zmc2V0OiBudW1iZXIpOiB2b2lkIHtcbiAgICAvLyBFeHRlbmQgdGhlIGZpcnN0IDE2IHdvcmRzIGludG8gdGhlIHJlbWFpbmluZyA0OCB3b3JkcyB3WzE2Li42M10gb2YgdGhlIG1lc3NhZ2Ugc2NoZWR1bGUgYXJyYXlcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IDE2OyBpKyssIG9mZnNldCArPSA0KSBTSEEyNTZfV1tpXSA9IHZpZXcuZ2V0VWludDMyKG9mZnNldCwgZmFsc2UpO1xuICAgIGZvciAobGV0IGkgPSAxNjsgaSA8IDY0OyBpKyspIHtcbiAgICAgIGNvbnN0IFcxNSA9IFNIQTI1Nl9XW2kgLSAxNV07XG4gICAgICBjb25zdCBXMiA9IFNIQTI1Nl9XW2kgLSAyXTtcbiAgICAgIGNvbnN0IHMwID0gcm90cihXMTUsIDcpIF4gcm90cihXMTUsIDE4KSBeIChXMTUgPj4+IDMpO1xuICAgICAgY29uc3QgczEgPSByb3RyKFcyLCAxNykgXiByb3RyKFcyLCAxOSkgXiAoVzIgPj4+IDEwKTtcbiAgICAgIFNIQTI1Nl9XW2ldID0gKHMxICsgU0hBMjU2X1dbaSAtIDddICsgczAgKyBTSEEyNTZfV1tpIC0gMTZdKSB8IDA7XG4gICAgfVxuICAgIC8vIENvbXByZXNzaW9uIGZ1bmN0aW9uIG1haW4gbG9vcCwgNjQgcm91bmRzXG4gICAgbGV0IHsgQSwgQiwgQywgRCwgRSwgRiwgRywgSCB9ID0gdGhpcztcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IDY0OyBpKyspIHtcbiAgICAgIGNvbnN0IHNpZ21hMSA9IHJvdHIoRSwgNikgXiByb3RyKEUsIDExKSBeIHJvdHIoRSwgMjUpO1xuICAgICAgY29uc3QgVDEgPSAoSCArIHNpZ21hMSArIENoaShFLCBGLCBHKSArIFNIQTI1Nl9LW2ldICsgU0hBMjU2X1dbaV0pIHwgMDtcbiAgICAgIGNvbnN0IHNpZ21hMCA9IHJvdHIoQSwgMikgXiByb3RyKEEsIDEzKSBeIHJvdHIoQSwgMjIpO1xuICAgICAgY29uc3QgVDIgPSAoc2lnbWEwICsgTWFqKEEsIEIsIEMpKSB8IDA7XG4gICAgICBIID0gRztcbiAgICAgIEcgPSBGO1xuICAgICAgRiA9IEU7XG4gICAgICBFID0gKEQgKyBUMSkgfCAwO1xuICAgICAgRCA9IEM7XG4gICAgICBDID0gQjtcbiAgICAgIEIgPSBBO1xuICAgICAgQSA9IChUMSArIFQyKSB8IDA7XG4gICAgfVxuICAgIC8vIEFkZCB0aGUgY29tcHJlc3NlZCBjaHVuayB0byB0aGUgY3VycmVudCBoYXNoIHZhbHVlXG4gICAgQSA9IChBICsgdGhpcy5BKSB8IDA7XG4gICAgQiA9IChCICsgdGhpcy5CKSB8IDA7XG4gICAgQyA9IChDICsgdGhpcy5DKSB8IDA7XG4gICAgRCA9IChEICsgdGhpcy5EKSB8IDA7XG4gICAgRSA9IChFICsgdGhpcy5FKSB8IDA7XG4gICAgRiA9IChGICsgdGhpcy5GKSB8IDA7XG4gICAgRyA9IChHICsgdGhpcy5HKSB8IDA7XG4gICAgSCA9IChIICsgdGhpcy5IKSB8IDA7XG4gICAgdGhpcy5zZXQoQSwgQiwgQywgRCwgRSwgRiwgRywgSCk7XG4gIH1cbiAgcHJvdGVjdGVkIHJvdW5kQ2xlYW4oKSB7XG4gICAgU0hBMjU2X1cuZmlsbCgwKTtcbiAgfVxuICBkZXN0cm95KCkge1xuICAgIHRoaXMuc2V0KDAsIDAsIDAsIDAsIDAsIDAsIDAsIDApO1xuICAgIHRoaXMuYnVmZmVyLmZpbGwoMCk7XG4gIH1cbn1cbi8vIENvbnN0YW50cyBmcm9tIGh0dHBzOi8vbnZscHVicy5uaXN0Lmdvdi9uaXN0cHVicy9GSVBTL05JU1QuRklQUy4xODAtNC5wZGZcbmNsYXNzIFNIQTIyNCBleHRlbmRzIFNIQTI1NiB7XG4gIEEgPSAweGMxMDU5ZWQ4IHwgMDtcbiAgQiA9IDB4MzY3Y2Q1MDcgfCAwO1xuICBDID0gMHgzMDcwZGQxNyB8IDA7XG4gIEQgPSAweGY3MGU1OTM5IHwgMDtcbiAgRSA9IDB4ZmZjMDBiMzEgfCAwO1xuICBGID0gMHg2ODU4MTUxMSB8IDA7XG4gIEcgPSAweDY0Zjk4ZmE3IHwgMDtcbiAgSCA9IDB4YmVmYTRmYTQgfCAwO1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMub3V0cHV0TGVuID0gMjg7XG4gIH1cbn1cblxuLyoqXG4gKiBTSEEyLTI1NiBoYXNoIGZ1bmN0aW9uXG4gKiBAcGFyYW0gbWVzc2FnZSAtIGRhdGEgdGhhdCB3b3VsZCBiZSBoYXNoZWRcbiAqL1xuZXhwb3J0IGNvbnN0IHNoYTI1NiA9IC8qIEBfX1BVUkVfXyAqLyB3cmFwQ29uc3RydWN0b3IoKCkgPT4gbmV3IFNIQTI1NigpKTtcbmV4cG9ydCBjb25zdCBzaGEyMjQgPSAvKiBAX19QVVJFX18gKi8gd3JhcENvbnN0cnVjdG9yKCgpID0+IG5ldyBTSEEyMjQoKSk7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG4vLyBUaGlzIGlzIGZyZWUgYW5kIHVuZW5jdW1iZXJlZCBzb2Z0d2FyZSByZWxlYXNlZCBpbnRvIHRoZSBwdWJsaWMgZG9tYWluLlxuLy8gU2VlIExJQ0VOU0UubWQgZm9yIG1vcmUgaW5mb3JtYXRpb24uXG5cbi8vXG4vLyBVdGlsaXRpZXNcbi8vXG5cbi8qKlxuICogQHBhcmFtIHtudW1iZXJ9IGEgVGhlIG51bWJlciB0byB0ZXN0LlxuICogQHBhcmFtIHtudW1iZXJ9IG1pbiBUaGUgbWluaW11bSB2YWx1ZSBpbiB0aGUgcmFuZ2UsIGluY2x1c2l2ZS5cbiAqIEBwYXJhbSB7bnVtYmVyfSBtYXggVGhlIG1heGltdW0gdmFsdWUgaW4gdGhlIHJhbmdlLCBpbmNsdXNpdmUuXG4gKiBAcmV0dXJuIHtib29sZWFufSBUcnVlIGlmIGEgPj0gbWluIGFuZCBhIDw9IG1heC5cbiAqL1xuZnVuY3Rpb24gaW5SYW5nZShhLCBtaW4sIG1heCkge1xuICByZXR1cm4gbWluIDw9IGEgJiYgYSA8PSBtYXg7XG59XG5cbi8qKlxuICogQHBhcmFtIHsqfSBvXG4gKiBAcmV0dXJuIHtPYmplY3R9XG4gKi9cbmZ1bmN0aW9uIFRvRGljdGlvbmFyeShvKSB7XG4gIGlmIChvID09PSB1bmRlZmluZWQpIHJldHVybiB7fTtcbiAgaWYgKG8gPT09IE9iamVjdChvKSkgcmV0dXJuIG87XG4gIHRocm93IFR5cGVFcnJvcignQ291bGQgbm90IGNvbnZlcnQgYXJndW1lbnQgdG8gZGljdGlvbmFyeScpO1xufVxuXG4vKipcbiAqIEBwYXJhbSB7c3RyaW5nfSBzdHJpbmcgSW5wdXQgc3RyaW5nIG9mIFVURi0xNiBjb2RlIHVuaXRzLlxuICogQHJldHVybiB7IUFycmF5LjxudW1iZXI+fSBDb2RlIHBvaW50cy5cbiAqL1xuZnVuY3Rpb24gc3RyaW5nVG9Db2RlUG9pbnRzKHN0cmluZykge1xuICAvLyBodHRwczovL2hleWNhbS5naXRodWIuaW8vd2ViaWRsLyNkZm4tb2J0YWluLXVuaWNvZGVcblxuICAvLyAxLiBMZXQgUyBiZSB0aGUgRE9NU3RyaW5nIHZhbHVlLlxuICB2YXIgcyA9IFN0cmluZyhzdHJpbmcpO1xuXG4gIC8vIDIuIExldCBuIGJlIHRoZSBsZW5ndGggb2YgUy5cbiAgdmFyIG4gPSBzLmxlbmd0aDtcblxuICAvLyAzLiBJbml0aWFsaXplIGkgdG8gMC5cbiAgdmFyIGkgPSAwO1xuXG4gIC8vIDQuIEluaXRpYWxpemUgVSB0byBiZSBhbiBlbXB0eSBzZXF1ZW5jZSBvZiBVbmljb2RlIGNoYXJhY3RlcnMuXG4gIHZhciB1ID0gW107XG5cbiAgLy8gNS4gV2hpbGUgaSA8IG46XG4gIHdoaWxlIChpIDwgbikge1xuXG4gICAgLy8gMS4gTGV0IGMgYmUgdGhlIGNvZGUgdW5pdCBpbiBTIGF0IGluZGV4IGkuXG4gICAgdmFyIGMgPSBzLmNoYXJDb2RlQXQoaSk7XG5cbiAgICAvLyAyLiBEZXBlbmRpbmcgb24gdGhlIHZhbHVlIG9mIGM6XG5cbiAgICAvLyBjIDwgMHhEODAwIG9yIGMgPiAweERGRkZcbiAgICBpZiAoYyA8IDB4RDgwMCB8fCBjID4gMHhERkZGKSB7XG4gICAgICAvLyBBcHBlbmQgdG8gVSB0aGUgVW5pY29kZSBjaGFyYWN0ZXIgd2l0aCBjb2RlIHBvaW50IGMuXG4gICAgICB1LnB1c2goYyk7XG4gICAgfVxuXG4gICAgLy8gMHhEQzAwIFx1MjI2NCBjIFx1MjI2NCAweERGRkZcbiAgICBlbHNlIGlmICgweERDMDAgPD0gYyAmJiBjIDw9IDB4REZGRikge1xuICAgICAgLy8gQXBwZW5kIHRvIFUgYSBVK0ZGRkQgUkVQTEFDRU1FTlQgQ0hBUkFDVEVSLlxuICAgICAgdS5wdXNoKDB4RkZGRCk7XG4gICAgfVxuXG4gICAgLy8gMHhEODAwIFx1MjI2NCBjIFx1MjI2NCAweERCRkZcbiAgICBlbHNlIGlmICgweEQ4MDAgPD0gYyAmJiBjIDw9IDB4REJGRikge1xuICAgICAgLy8gMS4gSWYgaSA9IG5cdTIyMTIxLCB0aGVuIGFwcGVuZCB0byBVIGEgVStGRkZEIFJFUExBQ0VNRU5UXG4gICAgICAvLyBDSEFSQUNURVIuXG4gICAgICBpZiAoaSA9PT0gbiAtIDEpIHtcbiAgICAgICAgdS5wdXNoKDB4RkZGRCk7XG4gICAgICB9XG4gICAgICAvLyAyLiBPdGhlcndpc2UsIGkgPCBuXHUyMjEyMTpcbiAgICAgIGVsc2Uge1xuICAgICAgICAvLyAxLiBMZXQgZCBiZSB0aGUgY29kZSB1bml0IGluIFMgYXQgaW5kZXggaSsxLlxuICAgICAgICB2YXIgZCA9IHN0cmluZy5jaGFyQ29kZUF0KGkgKyAxKTtcblxuICAgICAgICAvLyAyLiBJZiAweERDMDAgXHUyMjY0IGQgXHUyMjY0IDB4REZGRiwgdGhlbjpcbiAgICAgICAgaWYgKDB4REMwMCA8PSBkICYmIGQgPD0gMHhERkZGKSB7XG4gICAgICAgICAgLy8gMS4gTGV0IGEgYmUgYyAmIDB4M0ZGLlxuICAgICAgICAgIHZhciBhID0gYyAmIDB4M0ZGO1xuXG4gICAgICAgICAgLy8gMi4gTGV0IGIgYmUgZCAmIDB4M0ZGLlxuICAgICAgICAgIHZhciBiID0gZCAmIDB4M0ZGO1xuXG4gICAgICAgICAgLy8gMy4gQXBwZW5kIHRvIFUgdGhlIFVuaWNvZGUgY2hhcmFjdGVyIHdpdGggY29kZSBwb2ludFxuICAgICAgICAgIC8vIDJeMTYrMl4xMCphK2IuXG4gICAgICAgICAgdS5wdXNoKDB4MTAwMDAgKyAoYSA8PCAxMCkgKyBiKTtcblxuICAgICAgICAgIC8vIDQuIFNldCBpIHRvIGkrMS5cbiAgICAgICAgICBpICs9IDE7XG4gICAgICAgIH1cblxuICAgICAgICAvLyAzLiBPdGhlcndpc2UsIGQgPCAweERDMDAgb3IgZCA+IDB4REZGRi4gQXBwZW5kIHRvIFUgYVxuICAgICAgICAvLyBVK0ZGRkQgUkVQTEFDRU1FTlQgQ0hBUkFDVEVSLlxuICAgICAgICBlbHNlICB7XG4gICAgICAgICAgdS5wdXNoKDB4RkZGRCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyAzLiBTZXQgaSB0byBpKzEuXG4gICAgaSArPSAxO1xuICB9XG5cbiAgLy8gNi4gUmV0dXJuIFUuXG4gIHJldHVybiB1O1xufVxuXG4vKipcbiAqIEBwYXJhbSB7IUFycmF5LjxudW1iZXI+fSBjb2RlX3BvaW50cyBBcnJheSBvZiBjb2RlIHBvaW50cy5cbiAqIEByZXR1cm4ge3N0cmluZ30gc3RyaW5nIFN0cmluZyBvZiBVVEYtMTYgY29kZSB1bml0cy5cbiAqL1xuZnVuY3Rpb24gY29kZVBvaW50c1RvU3RyaW5nKGNvZGVfcG9pbnRzKSB7XG4gIHZhciBzID0gJyc7XG4gIGZvciAodmFyIGkgPSAwOyBpIDwgY29kZV9wb2ludHMubGVuZ3RoOyArK2kpIHtcbiAgICB2YXIgY3AgPSBjb2RlX3BvaW50c1tpXTtcbiAgICBpZiAoY3AgPD0gMHhGRkZGKSB7XG4gICAgICBzICs9IFN0cmluZy5mcm9tQ2hhckNvZGUoY3ApO1xuICAgIH0gZWxzZSB7XG4gICAgICBjcCAtPSAweDEwMDAwO1xuICAgICAgcyArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKChjcCA+PiAxMCkgKyAweEQ4MDAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNwICYgMHgzRkYpICsgMHhEQzAwKTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHM7XG59XG5cblxuLy9cbi8vIEltcGxlbWVudGF0aW9uIG9mIEVuY29kaW5nIHNwZWNpZmljYXRpb25cbi8vIGh0dHBzOi8vZW5jb2Rpbmcuc3BlYy53aGF0d2cub3JnL1xuLy9cblxuLy9cbi8vIDMuIFRlcm1pbm9sb2d5XG4vL1xuXG4vKipcbiAqIEVuZC1vZi1zdHJlYW0gaXMgYSBzcGVjaWFsIHRva2VuIHRoYXQgc2lnbmlmaWVzIG5vIG1vcmUgdG9rZW5zXG4gKiBhcmUgaW4gdGhlIHN0cmVhbS5cbiAqIEBjb25zdFxuICovIHZhciBlbmRfb2Zfc3RyZWFtID0gLTE7XG5cbi8qKlxuICogQSBzdHJlYW0gcmVwcmVzZW50cyBhbiBvcmRlcmVkIHNlcXVlbmNlIG9mIHRva2Vucy5cbiAqXG4gKiBAY29uc3RydWN0b3JcbiAqIEBwYXJhbSB7IShBcnJheS48bnVtYmVyPnxVaW50OEFycmF5KX0gdG9rZW5zIEFycmF5IG9mIHRva2VucyB0aGF0IHByb3ZpZGUgdGhlXG4gKiBzdHJlYW0uXG4gKi9cbmZ1bmN0aW9uIFN0cmVhbSh0b2tlbnMpIHtcbiAgLyoqIEB0eXBlIHshQXJyYXkuPG51bWJlcj59ICovXG4gIHRoaXMudG9rZW5zID0gW10uc2xpY2UuY2FsbCh0b2tlbnMpO1xufVxuXG5TdHJlYW0ucHJvdG90eXBlID0ge1xuICAvKipcbiAgICogQHJldHVybiB7Ym9vbGVhbn0gVHJ1ZSBpZiBlbmQtb2Ytc3RyZWFtIGhhcyBiZWVuIGhpdC5cbiAgICovXG4gIGVuZE9mU3RyZWFtOiBmdW5jdGlvbigpIHtcbiAgICByZXR1cm4gIXRoaXMudG9rZW5zLmxlbmd0aDtcbiAgfSxcblxuICAvKipcbiAgICogV2hlbiBhIHRva2VuIGlzIHJlYWQgZnJvbSBhIHN0cmVhbSwgdGhlIGZpcnN0IHRva2VuIGluIHRoZVxuICAgKiBzdHJlYW0gbXVzdCBiZSByZXR1cm5lZCBhbmQgc3Vic2VxdWVudGx5IHJlbW92ZWQsIGFuZFxuICAgKiBlbmQtb2Ytc3RyZWFtIG11c3QgYmUgcmV0dXJuZWQgb3RoZXJ3aXNlLlxuICAgKlxuICAgKiBAcmV0dXJuIHtudW1iZXJ9IEdldCB0aGUgbmV4dCB0b2tlbiBmcm9tIHRoZSBzdHJlYW0sIG9yXG4gICAqIGVuZF9vZl9zdHJlYW0uXG4gICAqL1xuICAgcmVhZDogZnVuY3Rpb24oKSB7XG4gICAgaWYgKCF0aGlzLnRva2Vucy5sZW5ndGgpXG4gICAgICByZXR1cm4gZW5kX29mX3N0cmVhbTtcbiAgICAgcmV0dXJuIHRoaXMudG9rZW5zLnNoaWZ0KCk7XG4gICB9LFxuXG4gIC8qKlxuICAgKiBXaGVuIG9uZSBvciBtb3JlIHRva2VucyBhcmUgcHJlcGVuZGVkIHRvIGEgc3RyZWFtLCB0aG9zZSB0b2tlbnNcbiAgICogbXVzdCBiZSBpbnNlcnRlZCwgaW4gZ2l2ZW4gb3JkZXIsIGJlZm9yZSB0aGUgZmlyc3QgdG9rZW4gaW4gdGhlXG4gICAqIHN0cmVhbS5cbiAgICpcbiAgICogQHBhcmFtIHsobnVtYmVyfCFBcnJheS48bnVtYmVyPil9IHRva2VuIFRoZSB0b2tlbihzKSB0byBwcmVwZW5kIHRvIHRoZSBzdHJlYW0uXG4gICAqL1xuICBwcmVwZW5kOiBmdW5jdGlvbih0b2tlbikge1xuICAgIGlmIChBcnJheS5pc0FycmF5KHRva2VuKSkge1xuICAgICAgdmFyIHRva2VucyA9IC8qKkB0eXBlIHshQXJyYXkuPG51bWJlcj59Ki8odG9rZW4pO1xuICAgICAgd2hpbGUgKHRva2Vucy5sZW5ndGgpXG4gICAgICAgIHRoaXMudG9rZW5zLnVuc2hpZnQodG9rZW5zLnBvcCgpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy50b2tlbnMudW5zaGlmdCh0b2tlbik7XG4gICAgfVxuICB9LFxuXG4gIC8qKlxuICAgKiBXaGVuIG9uZSBvciBtb3JlIHRva2VucyBhcmUgcHVzaGVkIHRvIGEgc3RyZWFtLCB0aG9zZSB0b2tlbnNcbiAgICogbXVzdCBiZSBpbnNlcnRlZCwgaW4gZ2l2ZW4gb3JkZXIsIGFmdGVyIHRoZSBsYXN0IHRva2VuIGluIHRoZVxuICAgKiBzdHJlYW0uXG4gICAqXG4gICAqIEBwYXJhbSB7KG51bWJlcnwhQXJyYXkuPG51bWJlcj4pfSB0b2tlbiBUaGUgdG9rZW5zKHMpIHRvIHByZXBlbmQgdG8gdGhlIHN0cmVhbS5cbiAgICovXG4gIHB1c2g6IGZ1bmN0aW9uKHRva2VuKSB7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkodG9rZW4pKSB7XG4gICAgICB2YXIgdG9rZW5zID0gLyoqQHR5cGUgeyFBcnJheS48bnVtYmVyPn0qLyh0b2tlbik7XG4gICAgICB3aGlsZSAodG9rZW5zLmxlbmd0aClcbiAgICAgICAgdGhpcy50b2tlbnMucHVzaCh0b2tlbnMuc2hpZnQoKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudG9rZW5zLnB1c2godG9rZW4pO1xuICAgIH1cbiAgfVxufTtcblxuLy9cbi8vIDQuIEVuY29kaW5nc1xuLy9cblxuLy8gNC4xIEVuY29kZXJzIGFuZCBkZWNvZGVyc1xuXG4vKiogQGNvbnN0ICovXG52YXIgZmluaXNoZWQgPSAtMTtcblxuLyoqXG4gKiBAcGFyYW0ge2Jvb2xlYW59IGZhdGFsIElmIHRydWUsIGRlY29kaW5nIGVycm9ycyByYWlzZSBhbiBleGNlcHRpb24uXG4gKiBAcGFyYW0ge251bWJlcj19IG9wdF9jb2RlX3BvaW50IE92ZXJyaWRlIHRoZSBzdGFuZGFyZCBmYWxsYmFjayBjb2RlIHBvaW50LlxuICogQHJldHVybiB7bnVtYmVyfSBUaGUgY29kZSBwb2ludCB0byBpbnNlcnQgb24gYSBkZWNvZGluZyBlcnJvci5cbiAqL1xuZnVuY3Rpb24gZGVjb2RlckVycm9yKGZhdGFsLCBvcHRfY29kZV9wb2ludCkge1xuICBpZiAoZmF0YWwpXG4gICAgdGhyb3cgVHlwZUVycm9yKCdEZWNvZGVyIGVycm9yJyk7XG4gIHJldHVybiBvcHRfY29kZV9wb2ludCB8fCAweEZGRkQ7XG59XG5cbi8vXG4vLyA3LiBBUElcbi8vXG5cbi8qKiBAY29uc3QgKi8gdmFyIERFRkFVTFRfRU5DT0RJTkcgPSAndXRmLTgnO1xuXG4vLyA3LjEgSW50ZXJmYWNlIFRleHREZWNvZGVyXG5cbi8qKlxuICogQGNvbnN0cnVjdG9yXG4gKiBAcGFyYW0ge3N0cmluZz19IGVuY29kaW5nIFRoZSBsYWJlbCBvZiB0aGUgZW5jb2Rpbmc7XG4gKiAgICAgZGVmYXVsdHMgdG8gJ3V0Zi04Jy5cbiAqIEBwYXJhbSB7T2JqZWN0PX0gb3B0aW9uc1xuICovXG5mdW5jdGlvbiBUZXh0RGVjb2RlcihlbmNvZGluZywgb3B0aW9ucykge1xuICBpZiAoISh0aGlzIGluc3RhbmNlb2YgVGV4dERlY29kZXIpKSB7XG4gICAgcmV0dXJuIG5ldyBUZXh0RGVjb2RlcihlbmNvZGluZywgb3B0aW9ucyk7XG4gIH1cbiAgZW5jb2RpbmcgPSBlbmNvZGluZyAhPT0gdW5kZWZpbmVkID8gU3RyaW5nKGVuY29kaW5nKS50b0xvd2VyQ2FzZSgpIDogREVGQVVMVF9FTkNPRElORztcbiAgaWYgKGVuY29kaW5nICE9PSBERUZBVUxUX0VOQ09ESU5HKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdFbmNvZGluZyBub3Qgc3VwcG9ydGVkLiBPbmx5IHV0Zi04IGlzIHN1cHBvcnRlZCcpO1xuICB9XG4gIG9wdGlvbnMgPSBUb0RpY3Rpb25hcnkob3B0aW9ucyk7XG5cbiAgLyoqIEBwcml2YXRlIEB0eXBlIHtib29sZWFufSAqL1xuICB0aGlzLl9zdHJlYW1pbmcgPSBmYWxzZTtcbiAgLyoqIEBwcml2YXRlIEB0eXBlIHtib29sZWFufSAqL1xuICB0aGlzLl9CT01zZWVuID0gZmFsc2U7XG4gIC8qKiBAcHJpdmF0ZSBAdHlwZSB7P0RlY29kZXJ9ICovXG4gIHRoaXMuX2RlY29kZXIgPSBudWxsO1xuICAvKiogQHByaXZhdGUgQHR5cGUge2Jvb2xlYW59ICovXG4gIHRoaXMuX2ZhdGFsID0gQm9vbGVhbihvcHRpb25zWydmYXRhbCddKTtcbiAgLyoqIEBwcml2YXRlIEB0eXBlIHtib29sZWFufSAqL1xuICB0aGlzLl9pZ25vcmVCT00gPSBCb29sZWFuKG9wdGlvbnNbJ2lnbm9yZUJPTSddKTtcblxuICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgJ2VuY29kaW5nJywge3ZhbHVlOiAndXRmLTgnfSk7XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCAnZmF0YWwnLCB7dmFsdWU6IHRoaXMuX2ZhdGFsfSk7XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCAnaWdub3JlQk9NJywge3ZhbHVlOiB0aGlzLl9pZ25vcmVCT019KTtcbn1cblxuVGV4dERlY29kZXIucHJvdG90eXBlID0ge1xuICAvKipcbiAgICogQHBhcmFtIHtBcnJheUJ1ZmZlclZpZXc9fSBpbnB1dCBUaGUgYnVmZmVyIG9mIGJ5dGVzIHRvIGRlY29kZS5cbiAgICogQHBhcmFtIHtPYmplY3Q9fSBvcHRpb25zXG4gICAqIEByZXR1cm4ge3N0cmluZ30gVGhlIGRlY29kZWQgc3RyaW5nLlxuICAgKi9cbiAgZGVjb2RlOiBmdW5jdGlvbiBkZWNvZGUoaW5wdXQsIG9wdGlvbnMpIHtcbiAgICB2YXIgYnl0ZXM7XG4gICAgaWYgKHR5cGVvZiBpbnB1dCA9PT0gJ29iamVjdCcgJiYgaW5wdXQgaW5zdGFuY2VvZiBBcnJheUJ1ZmZlcikge1xuICAgICAgYnl0ZXMgPSBuZXcgVWludDhBcnJheShpbnB1dCk7XG4gICAgfSBlbHNlIGlmICh0eXBlb2YgaW5wdXQgPT09ICdvYmplY3QnICYmICdidWZmZXInIGluIGlucHV0ICYmXG4gICAgICAgICAgICAgICBpbnB1dC5idWZmZXIgaW5zdGFuY2VvZiBBcnJheUJ1ZmZlcikge1xuICAgICAgYnl0ZXMgPSBuZXcgVWludDhBcnJheShpbnB1dC5idWZmZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0LmJ5dGVPZmZzZXQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0LmJ5dGVMZW5ndGgpO1xuICAgIH0gZWxzZSB7XG4gICAgICBieXRlcyA9IG5ldyBVaW50OEFycmF5KDApO1xuICAgIH1cblxuICAgIG9wdGlvbnMgPSBUb0RpY3Rpb25hcnkob3B0aW9ucyk7XG5cbiAgICBpZiAoIXRoaXMuX3N0cmVhbWluZykge1xuICAgICAgdGhpcy5fZGVjb2RlciA9IG5ldyBVVEY4RGVjb2Rlcih7ZmF0YWw6IHRoaXMuX2ZhdGFsfSk7XG4gICAgICB0aGlzLl9CT01zZWVuID0gZmFsc2U7XG4gICAgfVxuICAgIHRoaXMuX3N0cmVhbWluZyA9IEJvb2xlYW4ob3B0aW9uc1snc3RyZWFtJ10pO1xuXG4gICAgdmFyIGlucHV0X3N0cmVhbSA9IG5ldyBTdHJlYW0oYnl0ZXMpO1xuXG4gICAgdmFyIGNvZGVfcG9pbnRzID0gW107XG5cbiAgICAvKiogQHR5cGUgez8obnVtYmVyfCFBcnJheS48bnVtYmVyPil9ICovXG4gICAgdmFyIHJlc3VsdDtcblxuICAgIHdoaWxlICghaW5wdXRfc3RyZWFtLmVuZE9mU3RyZWFtKCkpIHtcbiAgICAgIHJlc3VsdCA9IHRoaXMuX2RlY29kZXIuaGFuZGxlcihpbnB1dF9zdHJlYW0sIGlucHV0X3N0cmVhbS5yZWFkKCkpO1xuICAgICAgaWYgKHJlc3VsdCA9PT0gZmluaXNoZWQpXG4gICAgICAgIGJyZWFrO1xuICAgICAgaWYgKHJlc3VsdCA9PT0gbnVsbClcbiAgICAgICAgY29udGludWU7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShyZXN1bHQpKVxuICAgICAgICBjb2RlX3BvaW50cy5wdXNoLmFwcGx5KGNvZGVfcG9pbnRzLCAvKipAdHlwZSB7IUFycmF5LjxudW1iZXI+fSovKHJlc3VsdCkpO1xuICAgICAgZWxzZVxuICAgICAgICBjb2RlX3BvaW50cy5wdXNoKHJlc3VsdCk7XG4gICAgfVxuICAgIGlmICghdGhpcy5fc3RyZWFtaW5nKSB7XG4gICAgICBkbyB7XG4gICAgICAgIHJlc3VsdCA9IHRoaXMuX2RlY29kZXIuaGFuZGxlcihpbnB1dF9zdHJlYW0sIGlucHV0X3N0cmVhbS5yZWFkKCkpO1xuICAgICAgICBpZiAocmVzdWx0ID09PSBmaW5pc2hlZClcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgaWYgKHJlc3VsdCA9PT0gbnVsbClcbiAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkocmVzdWx0KSlcbiAgICAgICAgICBjb2RlX3BvaW50cy5wdXNoLmFwcGx5KGNvZGVfcG9pbnRzLCAvKipAdHlwZSB7IUFycmF5LjxudW1iZXI+fSovKHJlc3VsdCkpO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgY29kZV9wb2ludHMucHVzaChyZXN1bHQpO1xuICAgICAgfSB3aGlsZSAoIWlucHV0X3N0cmVhbS5lbmRPZlN0cmVhbSgpKTtcbiAgICAgIHRoaXMuX2RlY29kZXIgPSBudWxsO1xuICAgIH1cblxuICAgIGlmIChjb2RlX3BvaW50cy5sZW5ndGgpIHtcbiAgICAgIC8vIElmIGVuY29kaW5nIGlzIG9uZSBvZiB1dGYtOCwgdXRmLTE2YmUsIGFuZCB1dGYtMTZsZSwgYW5kXG4gICAgICAvLyBpZ25vcmUgQk9NIGZsYWcgYW5kIEJPTSBzZWVuIGZsYWcgYXJlIHVuc2V0LCBydW4gdGhlc2VcbiAgICAgIC8vIHN1YnN1YnN0ZXBzOlxuICAgICAgaWYgKFsndXRmLTgnXS5pbmRleE9mKHRoaXMuZW5jb2RpbmcpICE9PSAtMSAmJlxuICAgICAgICAgICF0aGlzLl9pZ25vcmVCT00gJiYgIXRoaXMuX0JPTXNlZW4pIHtcbiAgICAgICAgLy8gSWYgdG9rZW4gaXMgVStGRUZGLCBzZXQgQk9NIHNlZW4gZmxhZy5cbiAgICAgICAgaWYgKGNvZGVfcG9pbnRzWzBdID09PSAweEZFRkYpIHtcbiAgICAgICAgICB0aGlzLl9CT01zZWVuID0gdHJ1ZTtcbiAgICAgICAgICBjb2RlX3BvaW50cy5zaGlmdCgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIE90aGVyd2lzZSwgaWYgdG9rZW4gaXMgbm90IGVuZC1vZi1zdHJlYW0sIHNldCBCT00gc2VlblxuICAgICAgICAgIC8vIGZsYWcgYW5kIGFwcGVuZCB0b2tlbiB0byBvdXRwdXQuXG4gICAgICAgICAgdGhpcy5fQk9Nc2VlbiA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gY29kZVBvaW50c1RvU3RyaW5nKGNvZGVfcG9pbnRzKTtcbiAgfVxufTtcblxuLy8gNy4yIEludGVyZmFjZSBUZXh0RW5jb2RlclxuXG4vKipcbiAqIEBjb25zdHJ1Y3RvclxuICogQHBhcmFtIHtzdHJpbmc9fSBlbmNvZGluZyBUaGUgbGFiZWwgb2YgdGhlIGVuY29kaW5nO1xuICogICAgIGRlZmF1bHRzIHRvICd1dGYtOCcuXG4gKiBAcGFyYW0ge09iamVjdD19IG9wdGlvbnNcbiAqL1xuZnVuY3Rpb24gVGV4dEVuY29kZXIoZW5jb2RpbmcsIG9wdGlvbnMpIHtcbiAgaWYgKCEodGhpcyBpbnN0YW5jZW9mIFRleHRFbmNvZGVyKSlcbiAgICByZXR1cm4gbmV3IFRleHRFbmNvZGVyKGVuY29kaW5nLCBvcHRpb25zKTtcbiAgZW5jb2RpbmcgPSBlbmNvZGluZyAhPT0gdW5kZWZpbmVkID8gU3RyaW5nKGVuY29kaW5nKS50b0xvd2VyQ2FzZSgpIDogREVGQVVMVF9FTkNPRElORztcbiAgaWYgKGVuY29kaW5nICE9PSBERUZBVUxUX0VOQ09ESU5HKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdFbmNvZGluZyBub3Qgc3VwcG9ydGVkLiBPbmx5IHV0Zi04IGlzIHN1cHBvcnRlZCcpO1xuICB9XG4gIG9wdGlvbnMgPSBUb0RpY3Rpb25hcnkob3B0aW9ucyk7XG5cbiAgLyoqIEBwcml2YXRlIEB0eXBlIHtib29sZWFufSAqL1xuICB0aGlzLl9zdHJlYW1pbmcgPSBmYWxzZTtcbiAgLyoqIEBwcml2YXRlIEB0eXBlIHs/RW5jb2Rlcn0gKi9cbiAgdGhpcy5fZW5jb2RlciA9IG51bGw7XG4gIC8qKiBAcHJpdmF0ZSBAdHlwZSB7e2ZhdGFsOiBib29sZWFufX0gKi9cbiAgdGhpcy5fb3B0aW9ucyA9IHtmYXRhbDogQm9vbGVhbihvcHRpb25zWydmYXRhbCddKX07XG5cbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsICdlbmNvZGluZycsIHt2YWx1ZTogJ3V0Zi04J30pO1xufVxuXG5UZXh0RW5jb2Rlci5wcm90b3R5cGUgPSB7XG4gIC8qKlxuICAgKiBAcGFyYW0ge3N0cmluZz19IG9wdF9zdHJpbmcgVGhlIHN0cmluZyB0byBlbmNvZGUuXG4gICAqIEBwYXJhbSB7T2JqZWN0PX0gb3B0aW9uc1xuICAgKiBAcmV0dXJuIHtVaW50OEFycmF5fSBFbmNvZGVkIGJ5dGVzLCBhcyBhIFVpbnQ4QXJyYXkuXG4gICAqL1xuICBlbmNvZGU6IGZ1bmN0aW9uIGVuY29kZShvcHRfc3RyaW5nLCBvcHRpb25zKSB7XG4gICAgb3B0X3N0cmluZyA9IG9wdF9zdHJpbmcgPyBTdHJpbmcob3B0X3N0cmluZykgOiAnJztcbiAgICBvcHRpb25zID0gVG9EaWN0aW9uYXJ5KG9wdGlvbnMpO1xuXG4gICAgLy8gTk9URTogVGhpcyBvcHRpb24gaXMgbm9uc3RhbmRhcmQuIE5vbmUgb2YgdGhlIGVuY29kaW5nc1xuICAgIC8vIHBlcm1pdHRlZCBmb3IgZW5jb2RpbmcgKGkuZS4gVVRGLTgsIFVURi0xNikgYXJlIHN0YXRlZnVsLFxuICAgIC8vIHNvIHN0cmVhbWluZyBpcyBub3QgbmVjZXNzYXJ5LlxuICAgIGlmICghdGhpcy5fc3RyZWFtaW5nKVxuICAgICAgdGhpcy5fZW5jb2RlciA9IG5ldyBVVEY4RW5jb2Rlcih0aGlzLl9vcHRpb25zKTtcbiAgICB0aGlzLl9zdHJlYW1pbmcgPSBCb29sZWFuKG9wdGlvbnNbJ3N0cmVhbSddKTtcblxuICAgIHZhciBieXRlcyA9IFtdO1xuICAgIHZhciBpbnB1dF9zdHJlYW0gPSBuZXcgU3RyZWFtKHN0cmluZ1RvQ29kZVBvaW50cyhvcHRfc3RyaW5nKSk7XG4gICAgLyoqIEB0eXBlIHs/KG51bWJlcnwhQXJyYXkuPG51bWJlcj4pfSAqL1xuICAgIHZhciByZXN1bHQ7XG4gICAgd2hpbGUgKCFpbnB1dF9zdHJlYW0uZW5kT2ZTdHJlYW0oKSkge1xuICAgICAgcmVzdWx0ID0gdGhpcy5fZW5jb2Rlci5oYW5kbGVyKGlucHV0X3N0cmVhbSwgaW5wdXRfc3RyZWFtLnJlYWQoKSk7XG4gICAgICBpZiAocmVzdWx0ID09PSBmaW5pc2hlZClcbiAgICAgICAgYnJlYWs7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShyZXN1bHQpKVxuICAgICAgICBieXRlcy5wdXNoLmFwcGx5KGJ5dGVzLCAvKipAdHlwZSB7IUFycmF5LjxudW1iZXI+fSovKHJlc3VsdCkpO1xuICAgICAgZWxzZVxuICAgICAgICBieXRlcy5wdXNoKHJlc3VsdCk7XG4gICAgfVxuICAgIGlmICghdGhpcy5fc3RyZWFtaW5nKSB7XG4gICAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgICByZXN1bHQgPSB0aGlzLl9lbmNvZGVyLmhhbmRsZXIoaW5wdXRfc3RyZWFtLCBpbnB1dF9zdHJlYW0ucmVhZCgpKTtcbiAgICAgICAgaWYgKHJlc3VsdCA9PT0gZmluaXNoZWQpXG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHJlc3VsdCkpXG4gICAgICAgICAgYnl0ZXMucHVzaC5hcHBseShieXRlcywgLyoqQHR5cGUgeyFBcnJheS48bnVtYmVyPn0qLyhyZXN1bHQpKTtcbiAgICAgICAgZWxzZVxuICAgICAgICAgIGJ5dGVzLnB1c2gocmVzdWx0KTtcbiAgICAgIH1cbiAgICAgIHRoaXMuX2VuY29kZXIgPSBudWxsO1xuICAgIH1cbiAgICByZXR1cm4gbmV3IFVpbnQ4QXJyYXkoYnl0ZXMpO1xuICB9XG59O1xuXG4vL1xuLy8gOC4gVGhlIGVuY29kaW5nXG4vL1xuXG4vLyA4LjEgdXRmLThcblxuLyoqXG4gKiBAY29uc3RydWN0b3JcbiAqIEBpbXBsZW1lbnRzIHtEZWNvZGVyfVxuICogQHBhcmFtIHt7ZmF0YWw6IGJvb2xlYW59fSBvcHRpb25zXG4gKi9cbmZ1bmN0aW9uIFVURjhEZWNvZGVyKG9wdGlvbnMpIHtcbiAgdmFyIGZhdGFsID0gb3B0aW9ucy5mYXRhbDtcblxuICAvLyB1dGYtOCdzIGRlY29kZXIncyBoYXMgYW4gYXNzb2NpYXRlZCB1dGYtOCBjb2RlIHBvaW50LCB1dGYtOFxuICAvLyBieXRlcyBzZWVuLCBhbmQgdXRmLTggYnl0ZXMgbmVlZGVkIChhbGwgaW5pdGlhbGx5IDApLCBhIHV0Zi04XG4gIC8vIGxvd2VyIGJvdW5kYXJ5IChpbml0aWFsbHkgMHg4MCksIGFuZCBhIHV0Zi04IHVwcGVyIGJvdW5kYXJ5XG4gIC8vIChpbml0aWFsbHkgMHhCRikuXG4gIHZhciAvKiogQHR5cGUge251bWJlcn0gKi8gdXRmOF9jb2RlX3BvaW50ID0gMCxcbiAgICAgIC8qKiBAdHlwZSB7bnVtYmVyfSAqLyB1dGY4X2J5dGVzX3NlZW4gPSAwLFxuICAgICAgLyoqIEB0eXBlIHtudW1iZXJ9ICovIHV0ZjhfYnl0ZXNfbmVlZGVkID0gMCxcbiAgICAgIC8qKiBAdHlwZSB7bnVtYmVyfSAqLyB1dGY4X2xvd2VyX2JvdW5kYXJ5ID0gMHg4MCxcbiAgICAgIC8qKiBAdHlwZSB7bnVtYmVyfSAqLyB1dGY4X3VwcGVyX2JvdW5kYXJ5ID0gMHhCRjtcblxuICAvKipcbiAgICogQHBhcmFtIHtTdHJlYW19IHN0cmVhbSBUaGUgc3RyZWFtIG9mIGJ5dGVzIGJlaW5nIGRlY29kZWQuXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBiaXRlIFRoZSBuZXh0IGJ5dGUgcmVhZCBmcm9tIHRoZSBzdHJlYW0uXG4gICAqIEByZXR1cm4gez8obnVtYmVyfCFBcnJheS48bnVtYmVyPil9IFRoZSBuZXh0IGNvZGUgcG9pbnQocylcbiAgICogICAgIGRlY29kZWQsIG9yIG51bGwgaWYgbm90IGVub3VnaCBkYXRhIGV4aXN0cyBpbiB0aGUgaW5wdXRcbiAgICogICAgIHN0cmVhbSB0byBkZWNvZGUgYSBjb21wbGV0ZSBjb2RlIHBvaW50LlxuICAgKi9cbiAgdGhpcy5oYW5kbGVyID0gZnVuY3Rpb24oc3RyZWFtLCBiaXRlKSB7XG4gICAgLy8gMS4gSWYgYnl0ZSBpcyBlbmQtb2Ytc3RyZWFtIGFuZCB1dGYtOCBieXRlcyBuZWVkZWQgaXMgbm90IDAsXG4gICAgLy8gc2V0IHV0Zi04IGJ5dGVzIG5lZWRlZCB0byAwIGFuZCByZXR1cm4gZXJyb3IuXG4gICAgaWYgKGJpdGUgPT09IGVuZF9vZl9zdHJlYW0gJiYgdXRmOF9ieXRlc19uZWVkZWQgIT09IDApIHtcbiAgICAgIHV0ZjhfYnl0ZXNfbmVlZGVkID0gMDtcbiAgICAgIHJldHVybiBkZWNvZGVyRXJyb3IoZmF0YWwpO1xuICAgIH1cblxuICAgIC8vIDIuIElmIGJ5dGUgaXMgZW5kLW9mLXN0cmVhbSwgcmV0dXJuIGZpbmlzaGVkLlxuICAgIGlmIChiaXRlID09PSBlbmRfb2Zfc3RyZWFtKVxuICAgICAgcmV0dXJuIGZpbmlzaGVkO1xuXG4gICAgLy8gMy4gSWYgdXRmLTggYnl0ZXMgbmVlZGVkIGlzIDAsIGJhc2VkIG9uIGJ5dGU6XG4gICAgaWYgKHV0ZjhfYnl0ZXNfbmVlZGVkID09PSAwKSB7XG5cbiAgICAgIC8vIDB4MDAgdG8gMHg3RlxuICAgICAgaWYgKGluUmFuZ2UoYml0ZSwgMHgwMCwgMHg3RikpIHtcbiAgICAgICAgLy8gUmV0dXJuIGEgY29kZSBwb2ludCB3aG9zZSB2YWx1ZSBpcyBieXRlLlxuICAgICAgICByZXR1cm4gYml0ZTtcbiAgICAgIH1cblxuICAgICAgLy8gMHhDMiB0byAweERGXG4gICAgICBpZiAoaW5SYW5nZShiaXRlLCAweEMyLCAweERGKSkge1xuICAgICAgICAvLyBTZXQgdXRmLTggYnl0ZXMgbmVlZGVkIHRvIDEgYW5kIHV0Zi04IGNvZGUgcG9pbnQgdG8gYnl0ZVxuICAgICAgICAvLyBcdTIyMTIgMHhDMC5cbiAgICAgICAgdXRmOF9ieXRlc19uZWVkZWQgPSAxO1xuICAgICAgICB1dGY4X2NvZGVfcG9pbnQgPSBiaXRlIC0gMHhDMDtcbiAgICAgIH1cblxuICAgICAgLy8gMHhFMCB0byAweEVGXG4gICAgICBlbHNlIGlmIChpblJhbmdlKGJpdGUsIDB4RTAsIDB4RUYpKSB7XG4gICAgICAgIC8vIDEuIElmIGJ5dGUgaXMgMHhFMCwgc2V0IHV0Zi04IGxvd2VyIGJvdW5kYXJ5IHRvIDB4QTAuXG4gICAgICAgIGlmIChiaXRlID09PSAweEUwKVxuICAgICAgICAgIHV0ZjhfbG93ZXJfYm91bmRhcnkgPSAweEEwO1xuICAgICAgICAvLyAyLiBJZiBieXRlIGlzIDB4RUQsIHNldCB1dGYtOCB1cHBlciBib3VuZGFyeSB0byAweDlGLlxuICAgICAgICBpZiAoYml0ZSA9PT0gMHhFRClcbiAgICAgICAgICB1dGY4X3VwcGVyX2JvdW5kYXJ5ID0gMHg5RjtcbiAgICAgICAgLy8gMy4gU2V0IHV0Zi04IGJ5dGVzIG5lZWRlZCB0byAyIGFuZCB1dGYtOCBjb2RlIHBvaW50IHRvXG4gICAgICAgIC8vIGJ5dGUgXHUyMjEyIDB4RTAuXG4gICAgICAgIHV0ZjhfYnl0ZXNfbmVlZGVkID0gMjtcbiAgICAgICAgdXRmOF9jb2RlX3BvaW50ID0gYml0ZSAtIDB4RTA7XG4gICAgICB9XG5cbiAgICAgIC8vIDB4RjAgdG8gMHhGNFxuICAgICAgZWxzZSBpZiAoaW5SYW5nZShiaXRlLCAweEYwLCAweEY0KSkge1xuICAgICAgICAvLyAxLiBJZiBieXRlIGlzIDB4RjAsIHNldCB1dGYtOCBsb3dlciBib3VuZGFyeSB0byAweDkwLlxuICAgICAgICBpZiAoYml0ZSA9PT0gMHhGMClcbiAgICAgICAgICB1dGY4X2xvd2VyX2JvdW5kYXJ5ID0gMHg5MDtcbiAgICAgICAgLy8gMi4gSWYgYnl0ZSBpcyAweEY0LCBzZXQgdXRmLTggdXBwZXIgYm91bmRhcnkgdG8gMHg4Ri5cbiAgICAgICAgaWYgKGJpdGUgPT09IDB4RjQpXG4gICAgICAgICAgdXRmOF91cHBlcl9ib3VuZGFyeSA9IDB4OEY7XG4gICAgICAgIC8vIDMuIFNldCB1dGYtOCBieXRlcyBuZWVkZWQgdG8gMyBhbmQgdXRmLTggY29kZSBwb2ludCB0b1xuICAgICAgICAvLyBieXRlIFx1MjIxMiAweEYwLlxuICAgICAgICB1dGY4X2J5dGVzX25lZWRlZCA9IDM7XG4gICAgICAgIHV0ZjhfY29kZV9wb2ludCA9IGJpdGUgLSAweEYwO1xuICAgICAgfVxuXG4gICAgICAvLyBPdGhlcndpc2VcbiAgICAgIGVsc2Uge1xuICAgICAgICAvLyBSZXR1cm4gZXJyb3IuXG4gICAgICAgIHJldHVybiBkZWNvZGVyRXJyb3IoZmF0YWwpO1xuICAgICAgfVxuXG4gICAgICAvLyBUaGVuIChieXRlIGlzIGluIHRoZSByYW5nZSAweEMyIHRvIDB4RjQpIHNldCB1dGYtOCBjb2RlXG4gICAgICAvLyBwb2ludCB0byB1dGYtOCBjb2RlIHBvaW50IDw8ICg2IFx1MDBENyB1dGYtOCBieXRlcyBuZWVkZWQpIGFuZFxuICAgICAgLy8gcmV0dXJuIGNvbnRpbnVlLlxuICAgICAgdXRmOF9jb2RlX3BvaW50ID0gdXRmOF9jb2RlX3BvaW50IDw8ICg2ICogdXRmOF9ieXRlc19uZWVkZWQpO1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgLy8gNC4gSWYgYnl0ZSBpcyBub3QgaW4gdGhlIHJhbmdlIHV0Zi04IGxvd2VyIGJvdW5kYXJ5IHRvIHV0Zi04XG4gICAgLy8gdXBwZXIgYm91bmRhcnksIHJ1biB0aGVzZSBzdWJzdGVwczpcbiAgICBpZiAoIWluUmFuZ2UoYml0ZSwgdXRmOF9sb3dlcl9ib3VuZGFyeSwgdXRmOF91cHBlcl9ib3VuZGFyeSkpIHtcblxuICAgICAgLy8gMS4gU2V0IHV0Zi04IGNvZGUgcG9pbnQsIHV0Zi04IGJ5dGVzIG5lZWRlZCwgYW5kIHV0Zi04XG4gICAgICAvLyBieXRlcyBzZWVuIHRvIDAsIHNldCB1dGYtOCBsb3dlciBib3VuZGFyeSB0byAweDgwLCBhbmQgc2V0XG4gICAgICAvLyB1dGYtOCB1cHBlciBib3VuZGFyeSB0byAweEJGLlxuICAgICAgdXRmOF9jb2RlX3BvaW50ID0gdXRmOF9ieXRlc19uZWVkZWQgPSB1dGY4X2J5dGVzX3NlZW4gPSAwO1xuICAgICAgdXRmOF9sb3dlcl9ib3VuZGFyeSA9IDB4ODA7XG4gICAgICB1dGY4X3VwcGVyX2JvdW5kYXJ5ID0gMHhCRjtcblxuICAgICAgLy8gMi4gUHJlcGVuZCBieXRlIHRvIHN0cmVhbS5cbiAgICAgIHN0cmVhbS5wcmVwZW5kKGJpdGUpO1xuXG4gICAgICAvLyAzLiBSZXR1cm4gZXJyb3IuXG4gICAgICByZXR1cm4gZGVjb2RlckVycm9yKGZhdGFsKTtcbiAgICB9XG5cbiAgICAvLyA1LiBTZXQgdXRmLTggbG93ZXIgYm91bmRhcnkgdG8gMHg4MCBhbmQgdXRmLTggdXBwZXIgYm91bmRhcnlcbiAgICAvLyB0byAweEJGLlxuICAgIHV0ZjhfbG93ZXJfYm91bmRhcnkgPSAweDgwO1xuICAgIHV0ZjhfdXBwZXJfYm91bmRhcnkgPSAweEJGO1xuXG4gICAgLy8gNi4gSW5jcmVhc2UgdXRmLTggYnl0ZXMgc2VlbiBieSBvbmUgYW5kIHNldCB1dGYtOCBjb2RlIHBvaW50XG4gICAgLy8gdG8gdXRmLTggY29kZSBwb2ludCArIChieXRlIFx1MjIxMiAweDgwKSA8PCAoNiBcdTAwRDcgKHV0Zi04IGJ5dGVzXG4gICAgLy8gbmVlZGVkIFx1MjIxMiB1dGYtOCBieXRlcyBzZWVuKSkuXG4gICAgdXRmOF9ieXRlc19zZWVuICs9IDE7XG4gICAgdXRmOF9jb2RlX3BvaW50ICs9IChiaXRlIC0gMHg4MCkgPDwgKDYgKiAodXRmOF9ieXRlc19uZWVkZWQgLSB1dGY4X2J5dGVzX3NlZW4pKTtcblxuICAgIC8vIDcuIElmIHV0Zi04IGJ5dGVzIHNlZW4gaXMgbm90IGVxdWFsIHRvIHV0Zi04IGJ5dGVzIG5lZWRlZCxcbiAgICAvLyBjb250aW51ZS5cbiAgICBpZiAodXRmOF9ieXRlc19zZWVuICE9PSB1dGY4X2J5dGVzX25lZWRlZClcbiAgICAgIHJldHVybiBudWxsO1xuXG4gICAgLy8gOC4gTGV0IGNvZGUgcG9pbnQgYmUgdXRmLTggY29kZSBwb2ludC5cbiAgICB2YXIgY29kZV9wb2ludCA9IHV0ZjhfY29kZV9wb2ludDtcblxuICAgIC8vIDkuIFNldCB1dGYtOCBjb2RlIHBvaW50LCB1dGYtOCBieXRlcyBuZWVkZWQsIGFuZCB1dGYtOCBieXRlc1xuICAgIC8vIHNlZW4gdG8gMC5cbiAgICB1dGY4X2NvZGVfcG9pbnQgPSB1dGY4X2J5dGVzX25lZWRlZCA9IHV0ZjhfYnl0ZXNfc2VlbiA9IDA7XG5cbiAgICAvLyAxMC4gUmV0dXJuIGEgY29kZSBwb2ludCB3aG9zZSB2YWx1ZSBpcyBjb2RlIHBvaW50LlxuICAgIHJldHVybiBjb2RlX3BvaW50O1xuICB9O1xufVxuXG4vKipcbiAqIEBjb25zdHJ1Y3RvclxuICogQGltcGxlbWVudHMge0VuY29kZXJ9XG4gKiBAcGFyYW0ge3tmYXRhbDogYm9vbGVhbn19IG9wdGlvbnNcbiAqL1xuZnVuY3Rpb24gVVRGOEVuY29kZXIob3B0aW9ucykge1xuICB2YXIgZmF0YWwgPSBvcHRpb25zLmZhdGFsO1xuICAvKipcbiAgICogQHBhcmFtIHtTdHJlYW19IHN0cmVhbSBJbnB1dCBzdHJlYW0uXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBjb2RlX3BvaW50IE5leHQgY29kZSBwb2ludCByZWFkIGZyb20gdGhlIHN0cmVhbS5cbiAgICogQHJldHVybiB7KG51bWJlcnwhQXJyYXkuPG51bWJlcj4pfSBCeXRlKHMpIHRvIGVtaXQuXG4gICAqL1xuICB0aGlzLmhhbmRsZXIgPSBmdW5jdGlvbihzdHJlYW0sIGNvZGVfcG9pbnQpIHtcbiAgICAvLyAxLiBJZiBjb2RlIHBvaW50IGlzIGVuZC1vZi1zdHJlYW0sIHJldHVybiBmaW5pc2hlZC5cbiAgICBpZiAoY29kZV9wb2ludCA9PT0gZW5kX29mX3N0cmVhbSlcbiAgICAgIHJldHVybiBmaW5pc2hlZDtcblxuICAgIC8vIDIuIElmIGNvZGUgcG9pbnQgaXMgaW4gdGhlIHJhbmdlIFUrMDAwMCB0byBVKzAwN0YsIHJldHVybiBhXG4gICAgLy8gYnl0ZSB3aG9zZSB2YWx1ZSBpcyBjb2RlIHBvaW50LlxuICAgIGlmIChpblJhbmdlKGNvZGVfcG9pbnQsIDB4MDAwMCwgMHgwMDdmKSlcbiAgICAgIHJldHVybiBjb2RlX3BvaW50O1xuXG4gICAgLy8gMy4gU2V0IGNvdW50IGFuZCBvZmZzZXQgYmFzZWQgb24gdGhlIHJhbmdlIGNvZGUgcG9pbnQgaXMgaW46XG4gICAgdmFyIGNvdW50LCBvZmZzZXQ7XG4gICAgLy8gVSswMDgwIHRvIFUrMDdGRjogICAgMSBhbmQgMHhDMFxuICAgIGlmIChpblJhbmdlKGNvZGVfcG9pbnQsIDB4MDA4MCwgMHgwN0ZGKSkge1xuICAgICAgY291bnQgPSAxO1xuICAgICAgb2Zmc2V0ID0gMHhDMDtcbiAgICB9XG4gICAgLy8gVSswODAwIHRvIFUrRkZGRjogICAgMiBhbmQgMHhFMFxuICAgIGVsc2UgaWYgKGluUmFuZ2UoY29kZV9wb2ludCwgMHgwODAwLCAweEZGRkYpKSB7XG4gICAgICBjb3VudCA9IDI7XG4gICAgICBvZmZzZXQgPSAweEUwO1xuICAgIH1cbiAgICAvLyBVKzEwMDAwIHRvIFUrMTBGRkZGOiAzIGFuZCAweEYwXG4gICAgZWxzZSBpZiAoaW5SYW5nZShjb2RlX3BvaW50LCAweDEwMDAwLCAweDEwRkZGRikpIHtcbiAgICAgIGNvdW50ID0gMztcbiAgICAgIG9mZnNldCA9IDB4RjA7XG4gICAgfVxuXG4gICAgLy8gNC5MZXQgYnl0ZXMgYmUgYSBieXRlIHNlcXVlbmNlIHdob3NlIGZpcnN0IGJ5dGUgaXMgKGNvZGVcbiAgICAvLyBwb2ludCA+PiAoNiBcdTAwRDcgY291bnQpKSArIG9mZnNldC5cbiAgICB2YXIgYnl0ZXMgPSBbKGNvZGVfcG9pbnQgPj4gKDYgKiBjb3VudCkpICsgb2Zmc2V0XTtcblxuICAgIC8vIDUuIFJ1biB0aGVzZSBzdWJzdGVwcyB3aGlsZSBjb3VudCBpcyBncmVhdGVyIHRoYW4gMDpcbiAgICB3aGlsZSAoY291bnQgPiAwKSB7XG5cbiAgICAgIC8vIDEuIFNldCB0ZW1wIHRvIGNvZGUgcG9pbnQgPj4gKDYgXHUwMEQ3IChjb3VudCBcdTIyMTIgMSkpLlxuICAgICAgdmFyIHRlbXAgPSBjb2RlX3BvaW50ID4+ICg2ICogKGNvdW50IC0gMSkpO1xuXG4gICAgICAvLyAyLiBBcHBlbmQgdG8gYnl0ZXMgMHg4MCB8ICh0ZW1wICYgMHgzRikuXG4gICAgICBieXRlcy5wdXNoKDB4ODAgfCAodGVtcCAmIDB4M0YpKTtcblxuICAgICAgLy8gMy4gRGVjcmVhc2UgY291bnQgYnkgb25lLlxuICAgICAgY291bnQgLT0gMTtcbiAgICB9XG5cbiAgICAvLyA2LiBSZXR1cm4gYnl0ZXMgYnl0ZXMsIGluIG9yZGVyLlxuICAgIHJldHVybiBieXRlcztcbiAgfTtcbn1cblxuZXhwb3J0cy5UZXh0RW5jb2RlciA9IFRleHRFbmNvZGVyO1xuZXhwb3J0cy5UZXh0RGVjb2RlciA9IFRleHREZWNvZGVyOyIsICJcInVzZSBzdHJpY3RcIjtcbnZhciBfX2NyZWF0ZUJpbmRpbmcgPSAodGhpcyAmJiB0aGlzLl9fY3JlYXRlQmluZGluZykgfHwgKE9iamVjdC5jcmVhdGUgPyAoZnVuY3Rpb24obywgbSwgaywgazIpIHtcbiAgICBpZiAoazIgPT09IHVuZGVmaW5lZCkgazIgPSBrO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBrMiwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGZ1bmN0aW9uKCkgeyByZXR1cm4gbVtrXTsgfSB9KTtcbn0pIDogKGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7XG4gICAgaWYgKGsyID09PSB1bmRlZmluZWQpIGsyID0gaztcbiAgICBvW2syXSA9IG1ba107XG59KSk7XG52YXIgX19zZXRNb2R1bGVEZWZhdWx0ID0gKHRoaXMgJiYgdGhpcy5fX3NldE1vZHVsZURlZmF1bHQpIHx8IChPYmplY3QuY3JlYXRlID8gKGZ1bmN0aW9uKG8sIHYpIHtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgXCJkZWZhdWx0XCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHYgfSk7XG59KSA6IGZ1bmN0aW9uKG8sIHYpIHtcbiAgICBvW1wiZGVmYXVsdFwiXSA9IHY7XG59KTtcbnZhciBfX2RlY29yYXRlID0gKHRoaXMgJiYgdGhpcy5fX2RlY29yYXRlKSB8fCBmdW5jdGlvbiAoZGVjb3JhdG9ycywgdGFyZ2V0LCBrZXksIGRlc2MpIHtcbiAgICB2YXIgYyA9IGFyZ3VtZW50cy5sZW5ndGgsIHIgPSBjIDwgMyA/IHRhcmdldCA6IGRlc2MgPT09IG51bGwgPyBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0YXJnZXQsIGtleSkgOiBkZXNjLCBkO1xuICAgIGlmICh0eXBlb2YgUmVmbGVjdCA9PT0gXCJvYmplY3RcIiAmJiB0eXBlb2YgUmVmbGVjdC5kZWNvcmF0ZSA9PT0gXCJmdW5jdGlvblwiKSByID0gUmVmbGVjdC5kZWNvcmF0ZShkZWNvcmF0b3JzLCB0YXJnZXQsIGtleSwgZGVzYyk7XG4gICAgZWxzZSBmb3IgKHZhciBpID0gZGVjb3JhdG9ycy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkgaWYgKGQgPSBkZWNvcmF0b3JzW2ldKSByID0gKGMgPCAzID8gZChyKSA6IGMgPiAzID8gZCh0YXJnZXQsIGtleSwgcikgOiBkKHRhcmdldCwga2V5KSkgfHwgcjtcbiAgICByZXR1cm4gYyA+IDMgJiYgciAmJiBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBrZXksIHIpLCByO1xufTtcbnZhciBfX2ltcG9ydFN0YXIgPSAodGhpcyAmJiB0aGlzLl9faW1wb3J0U3RhcikgfHwgZnVuY3Rpb24gKG1vZCkge1xuICAgIGlmIChtb2QgJiYgbW9kLl9fZXNNb2R1bGUpIHJldHVybiBtb2Q7XG4gICAgdmFyIHJlc3VsdCA9IHt9O1xuICAgIGlmIChtb2QgIT0gbnVsbCkgZm9yICh2YXIgayBpbiBtb2QpIGlmIChrICE9PSBcImRlZmF1bHRcIiAmJiBPYmplY3QuaGFzT3duUHJvcGVydHkuY2FsbChtb2QsIGspKSBfX2NyZWF0ZUJpbmRpbmcocmVzdWx0LCBtb2QsIGspO1xuICAgIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7XG4gICAgcmV0dXJuIHJlc3VsdDtcbn07XG52YXIgX19pbXBvcnREZWZhdWx0ID0gKHRoaXMgJiYgdGhpcy5fX2ltcG9ydERlZmF1bHQpIHx8IGZ1bmN0aW9uIChtb2QpIHtcbiAgICByZXR1cm4gKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgPyBtb2QgOiB7IFwiZGVmYXVsdFwiOiBtb2QgfTtcbn07XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG5leHBvcnRzLmRlc2VyaWFsaXplVW5jaGVja2VkID0gZXhwb3J0cy5kZXNlcmlhbGl6ZSA9IGV4cG9ydHMuc2VyaWFsaXplID0gZXhwb3J0cy5CaW5hcnlSZWFkZXIgPSBleHBvcnRzLkJpbmFyeVdyaXRlciA9IGV4cG9ydHMuQm9yc2hFcnJvciA9IGV4cG9ydHMuYmFzZURlY29kZSA9IGV4cG9ydHMuYmFzZUVuY29kZSA9IHZvaWQgMDtcbmNvbnN0IGJuX2pzXzEgPSBfX2ltcG9ydERlZmF1bHQocmVxdWlyZShcImJuLmpzXCIpKTtcbmNvbnN0IGJzNThfMSA9IF9faW1wb3J0RGVmYXVsdChyZXF1aXJlKFwiYnM1OFwiKSk7XG4vLyBUT0RPOiBNYWtlIHN1cmUgdGhpcyBwb2x5ZmlsbCBub3QgaW5jbHVkZWQgd2hlbiBub3QgcmVxdWlyZWRcbmNvbnN0IGVuY29kaW5nID0gX19pbXBvcnRTdGFyKHJlcXVpcmUoXCJ0ZXh0LWVuY29kaW5nLXV0Zi04XCIpKTtcbmNvbnN0IFJlc29sdmVkVGV4dERlY29kZXIgPSB0eXBlb2YgVGV4dERlY29kZXIgIT09IFwiZnVuY3Rpb25cIiA/IGVuY29kaW5nLlRleHREZWNvZGVyIDogVGV4dERlY29kZXI7XG5jb25zdCB0ZXh0RGVjb2RlciA9IG5ldyBSZXNvbHZlZFRleHREZWNvZGVyKFwidXRmLThcIiwgeyBmYXRhbDogdHJ1ZSB9KTtcbmZ1bmN0aW9uIGJhc2VFbmNvZGUodmFsdWUpIHtcbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgIHZhbHVlID0gQnVmZmVyLmZyb20odmFsdWUsIFwidXRmOFwiKTtcbiAgICB9XG4gICAgcmV0dXJuIGJzNThfMS5kZWZhdWx0LmVuY29kZShCdWZmZXIuZnJvbSh2YWx1ZSkpO1xufVxuZXhwb3J0cy5iYXNlRW5jb2RlID0gYmFzZUVuY29kZTtcbmZ1bmN0aW9uIGJhc2VEZWNvZGUodmFsdWUpIHtcbiAgICByZXR1cm4gQnVmZmVyLmZyb20oYnM1OF8xLmRlZmF1bHQuZGVjb2RlKHZhbHVlKSk7XG59XG5leHBvcnRzLmJhc2VEZWNvZGUgPSBiYXNlRGVjb2RlO1xuY29uc3QgSU5JVElBTF9MRU5HVEggPSAxMDI0O1xuY2xhc3MgQm9yc2hFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgICBjb25zdHJ1Y3RvcihtZXNzYWdlKSB7XG4gICAgICAgIHN1cGVyKG1lc3NhZ2UpO1xuICAgICAgICB0aGlzLmZpZWxkUGF0aCA9IFtdO1xuICAgICAgICB0aGlzLm9yaWdpbmFsTWVzc2FnZSA9IG1lc3NhZ2U7XG4gICAgfVxuICAgIGFkZFRvRmllbGRQYXRoKGZpZWxkTmFtZSkge1xuICAgICAgICB0aGlzLmZpZWxkUGF0aC5zcGxpY2UoMCwgMCwgZmllbGROYW1lKTtcbiAgICAgICAgLy8gTk9URTogTW9kaWZ5aW5nIG1lc3NhZ2UgZGlyZWN0bHkgYXMgamVzdCBkb2Vzbid0IHVzZSAudG9TdHJpbmcoKVxuICAgICAgICB0aGlzLm1lc3NhZ2UgPSB0aGlzLm9yaWdpbmFsTWVzc2FnZSArIFwiOiBcIiArIHRoaXMuZmllbGRQYXRoLmpvaW4oXCIuXCIpO1xuICAgIH1cbn1cbmV4cG9ydHMuQm9yc2hFcnJvciA9IEJvcnNoRXJyb3I7XG4vLy8gQmluYXJ5IGVuY29kZXIuXG5jbGFzcyBCaW5hcnlXcml0ZXIge1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB0aGlzLmJ1ZiA9IEJ1ZmZlci5hbGxvYyhJTklUSUFMX0xFTkdUSCk7XG4gICAgICAgIHRoaXMubGVuZ3RoID0gMDtcbiAgICB9XG4gICAgbWF5YmVSZXNpemUoKSB7XG4gICAgICAgIGlmICh0aGlzLmJ1Zi5sZW5ndGggPCAxNiArIHRoaXMubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmJ1ZiA9IEJ1ZmZlci5jb25jYXQoW3RoaXMuYnVmLCBCdWZmZXIuYWxsb2MoSU5JVElBTF9MRU5HVEgpXSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgd3JpdGVVOCh2YWx1ZSkge1xuICAgICAgICB0aGlzLm1heWJlUmVzaXplKCk7XG4gICAgICAgIHRoaXMuYnVmLndyaXRlVUludDgodmFsdWUsIHRoaXMubGVuZ3RoKTtcbiAgICAgICAgdGhpcy5sZW5ndGggKz0gMTtcbiAgICB9XG4gICAgd3JpdGVVMTYodmFsdWUpIHtcbiAgICAgICAgdGhpcy5tYXliZVJlc2l6ZSgpO1xuICAgICAgICB0aGlzLmJ1Zi53cml0ZVVJbnQxNkxFKHZhbHVlLCB0aGlzLmxlbmd0aCk7XG4gICAgICAgIHRoaXMubGVuZ3RoICs9IDI7XG4gICAgfVxuICAgIHdyaXRlVTMyKHZhbHVlKSB7XG4gICAgICAgIHRoaXMubWF5YmVSZXNpemUoKTtcbiAgICAgICAgdGhpcy5idWYud3JpdGVVSW50MzJMRSh2YWx1ZSwgdGhpcy5sZW5ndGgpO1xuICAgICAgICB0aGlzLmxlbmd0aCArPSA0O1xuICAgIH1cbiAgICB3cml0ZVU2NCh2YWx1ZSkge1xuICAgICAgICB0aGlzLm1heWJlUmVzaXplKCk7XG4gICAgICAgIHRoaXMud3JpdGVCdWZmZXIoQnVmZmVyLmZyb20obmV3IGJuX2pzXzEuZGVmYXVsdCh2YWx1ZSkudG9BcnJheShcImxlXCIsIDgpKSk7XG4gICAgfVxuICAgIHdyaXRlVTEyOCh2YWx1ZSkge1xuICAgICAgICB0aGlzLm1heWJlUmVzaXplKCk7XG4gICAgICAgIHRoaXMud3JpdGVCdWZmZXIoQnVmZmVyLmZyb20obmV3IGJuX2pzXzEuZGVmYXVsdCh2YWx1ZSkudG9BcnJheShcImxlXCIsIDE2KSkpO1xuICAgIH1cbiAgICB3cml0ZVUyNTYodmFsdWUpIHtcbiAgICAgICAgdGhpcy5tYXliZVJlc2l6ZSgpO1xuICAgICAgICB0aGlzLndyaXRlQnVmZmVyKEJ1ZmZlci5mcm9tKG5ldyBibl9qc18xLmRlZmF1bHQodmFsdWUpLnRvQXJyYXkoXCJsZVwiLCAzMikpKTtcbiAgICB9XG4gICAgd3JpdGVVNTEyKHZhbHVlKSB7XG4gICAgICAgIHRoaXMubWF5YmVSZXNpemUoKTtcbiAgICAgICAgdGhpcy53cml0ZUJ1ZmZlcihCdWZmZXIuZnJvbShuZXcgYm5fanNfMS5kZWZhdWx0KHZhbHVlKS50b0FycmF5KFwibGVcIiwgNjQpKSk7XG4gICAgfVxuICAgIHdyaXRlQnVmZmVyKGJ1ZmZlcikge1xuICAgICAgICAvLyBCdWZmZXIuZnJvbSBpcyBuZWVkZWQgYXMgdGhpcy5idWYuc3ViYXJyYXkgY2FuIHJldHVybiBwbGFpbiBVaW50OEFycmF5IGluIGJyb3dzZXJcbiAgICAgICAgdGhpcy5idWYgPSBCdWZmZXIuY29uY2F0KFtcbiAgICAgICAgICAgIEJ1ZmZlci5mcm9tKHRoaXMuYnVmLnN1YmFycmF5KDAsIHRoaXMubGVuZ3RoKSksXG4gICAgICAgICAgICBidWZmZXIsXG4gICAgICAgICAgICBCdWZmZXIuYWxsb2MoSU5JVElBTF9MRU5HVEgpLFxuICAgICAgICBdKTtcbiAgICAgICAgdGhpcy5sZW5ndGggKz0gYnVmZmVyLmxlbmd0aDtcbiAgICB9XG4gICAgd3JpdGVTdHJpbmcoc3RyKSB7XG4gICAgICAgIHRoaXMubWF5YmVSZXNpemUoKTtcbiAgICAgICAgY29uc3QgYiA9IEJ1ZmZlci5mcm9tKHN0ciwgXCJ1dGY4XCIpO1xuICAgICAgICB0aGlzLndyaXRlVTMyKGIubGVuZ3RoKTtcbiAgICAgICAgdGhpcy53cml0ZUJ1ZmZlcihiKTtcbiAgICB9XG4gICAgd3JpdGVGaXhlZEFycmF5KGFycmF5KSB7XG4gICAgICAgIHRoaXMud3JpdGVCdWZmZXIoQnVmZmVyLmZyb20oYXJyYXkpKTtcbiAgICB9XG4gICAgd3JpdGVBcnJheShhcnJheSwgZm4pIHtcbiAgICAgICAgdGhpcy5tYXliZVJlc2l6ZSgpO1xuICAgICAgICB0aGlzLndyaXRlVTMyKGFycmF5Lmxlbmd0aCk7XG4gICAgICAgIGZvciAoY29uc3QgZWxlbSBvZiBhcnJheSkge1xuICAgICAgICAgICAgdGhpcy5tYXliZVJlc2l6ZSgpO1xuICAgICAgICAgICAgZm4oZWxlbSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgdG9BcnJheSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYnVmLnN1YmFycmF5KDAsIHRoaXMubGVuZ3RoKTtcbiAgICB9XG59XG5leHBvcnRzLkJpbmFyeVdyaXRlciA9IEJpbmFyeVdyaXRlcjtcbmZ1bmN0aW9uIGhhbmRsaW5nUmFuZ2VFcnJvcih0YXJnZXQsIHByb3BlcnR5S2V5LCBwcm9wZXJ0eURlc2NyaXB0b3IpIHtcbiAgICBjb25zdCBvcmlnaW5hbE1ldGhvZCA9IHByb3BlcnR5RGVzY3JpcHRvci52YWx1ZTtcbiAgICBwcm9wZXJ0eURlc2NyaXB0b3IudmFsdWUgPSBmdW5jdGlvbiAoLi4uYXJncykge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgcmV0dXJuIG9yaWdpbmFsTWV0aG9kLmFwcGx5KHRoaXMsIGFyZ3MpO1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlKSB7XG4gICAgICAgICAgICBpZiAoZSBpbnN0YW5jZW9mIFJhbmdlRXJyb3IpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBjb2RlID0gZS5jb2RlO1xuICAgICAgICAgICAgICAgIGlmIChbXCJFUlJfQlVGRkVSX09VVF9PRl9CT1VORFNcIiwgXCJFUlJfT1VUX09GX1JBTkdFXCJdLmluZGV4T2YoY29kZSkgPj0gMCkge1xuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgQm9yc2hFcnJvcihcIlJlYWNoZWQgdGhlIGVuZCBvZiBidWZmZXIgd2hlbiBkZXNlcmlhbGl6aW5nXCIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRocm93IGU7XG4gICAgICAgIH1cbiAgICB9O1xufVxuY2xhc3MgQmluYXJ5UmVhZGVyIHtcbiAgICBjb25zdHJ1Y3RvcihidWYpIHtcbiAgICAgICAgdGhpcy5idWYgPSBidWY7XG4gICAgICAgIHRoaXMub2Zmc2V0ID0gMDtcbiAgICB9XG4gICAgcmVhZFU4KCkge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuYnVmLnJlYWRVSW50OCh0aGlzLm9mZnNldCk7XG4gICAgICAgIHRoaXMub2Zmc2V0ICs9IDE7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9XG4gICAgcmVhZFUxNigpIHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLmJ1Zi5yZWFkVUludDE2TEUodGhpcy5vZmZzZXQpO1xuICAgICAgICB0aGlzLm9mZnNldCArPSAyO1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgfVxuICAgIHJlYWRVMzIoKSB7XG4gICAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5idWYucmVhZFVJbnQzMkxFKHRoaXMub2Zmc2V0KTtcbiAgICAgICAgdGhpcy5vZmZzZXQgKz0gNDtcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cbiAgICByZWFkVTY0KCkge1xuICAgICAgICBjb25zdCBidWYgPSB0aGlzLnJlYWRCdWZmZXIoOCk7XG4gICAgICAgIHJldHVybiBuZXcgYm5fanNfMS5kZWZhdWx0KGJ1ZiwgXCJsZVwiKTtcbiAgICB9XG4gICAgcmVhZFUxMjgoKSB7XG4gICAgICAgIGNvbnN0IGJ1ZiA9IHRoaXMucmVhZEJ1ZmZlcigxNik7XG4gICAgICAgIHJldHVybiBuZXcgYm5fanNfMS5kZWZhdWx0KGJ1ZiwgXCJsZVwiKTtcbiAgICB9XG4gICAgcmVhZFUyNTYoKSB7XG4gICAgICAgIGNvbnN0IGJ1ZiA9IHRoaXMucmVhZEJ1ZmZlcigzMik7XG4gICAgICAgIHJldHVybiBuZXcgYm5fanNfMS5kZWZhdWx0KGJ1ZiwgXCJsZVwiKTtcbiAgICB9XG4gICAgcmVhZFU1MTIoKSB7XG4gICAgICAgIGNvbnN0IGJ1ZiA9IHRoaXMucmVhZEJ1ZmZlcig2NCk7XG4gICAgICAgIHJldHVybiBuZXcgYm5fanNfMS5kZWZhdWx0KGJ1ZiwgXCJsZVwiKTtcbiAgICB9XG4gICAgcmVhZEJ1ZmZlcihsZW4pIHtcbiAgICAgICAgaWYgKHRoaXMub2Zmc2V0ICsgbGVuID4gdGhpcy5idWYubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgQm9yc2hFcnJvcihgRXhwZWN0ZWQgYnVmZmVyIGxlbmd0aCAke2xlbn0gaXNuJ3Qgd2l0aGluIGJvdW5kc2ApO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuYnVmLnNsaWNlKHRoaXMub2Zmc2V0LCB0aGlzLm9mZnNldCArIGxlbik7XG4gICAgICAgIHRoaXMub2Zmc2V0ICs9IGxlbjtcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG4gICAgcmVhZFN0cmluZygpIHtcbiAgICAgICAgY29uc3QgbGVuID0gdGhpcy5yZWFkVTMyKCk7XG4gICAgICAgIGNvbnN0IGJ1ZiA9IHRoaXMucmVhZEJ1ZmZlcihsZW4pO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgLy8gTk9URTogVXNpbmcgVGV4dERlY29kZXIgdG8gZmFpbCBvbiBpbnZhbGlkIFVURi04XG4gICAgICAgICAgICByZXR1cm4gdGV4dERlY29kZXIuZGVjb2RlKGJ1Zik7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBCb3JzaEVycm9yKGBFcnJvciBkZWNvZGluZyBVVEYtOCBzdHJpbmc6ICR7ZX1gKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZWFkRml4ZWRBcnJheShsZW4pIHtcbiAgICAgICAgcmV0dXJuIG5ldyBVaW50OEFycmF5KHRoaXMucmVhZEJ1ZmZlcihsZW4pKTtcbiAgICB9XG4gICAgcmVhZEFycmF5KGZuKSB7XG4gICAgICAgIGNvbnN0IGxlbiA9IHRoaXMucmVhZFUzMigpO1xuICAgICAgICBjb25zdCByZXN1bHQgPSBBcnJheSgpO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxlbjsgKytpKSB7XG4gICAgICAgICAgICByZXN1bHQucHVzaChmbigpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cbn1cbl9fZGVjb3JhdGUoW1xuICAgIGhhbmRsaW5nUmFuZ2VFcnJvclxuXSwgQmluYXJ5UmVhZGVyLnByb3RvdHlwZSwgXCJyZWFkVThcIiwgbnVsbCk7XG5fX2RlY29yYXRlKFtcbiAgICBoYW5kbGluZ1JhbmdlRXJyb3Jcbl0sIEJpbmFyeVJlYWRlci5wcm90b3R5cGUsIFwicmVhZFUxNlwiLCBudWxsKTtcbl9fZGVjb3JhdGUoW1xuICAgIGhhbmRsaW5nUmFuZ2VFcnJvclxuXSwgQmluYXJ5UmVhZGVyLnByb3RvdHlwZSwgXCJyZWFkVTMyXCIsIG51bGwpO1xuX19kZWNvcmF0ZShbXG4gICAgaGFuZGxpbmdSYW5nZUVycm9yXG5dLCBCaW5hcnlSZWFkZXIucHJvdG90eXBlLCBcInJlYWRVNjRcIiwgbnVsbCk7XG5fX2RlY29yYXRlKFtcbiAgICBoYW5kbGluZ1JhbmdlRXJyb3Jcbl0sIEJpbmFyeVJlYWRlci5wcm90b3R5cGUsIFwicmVhZFUxMjhcIiwgbnVsbCk7XG5fX2RlY29yYXRlKFtcbiAgICBoYW5kbGluZ1JhbmdlRXJyb3Jcbl0sIEJpbmFyeVJlYWRlci5wcm90b3R5cGUsIFwicmVhZFUyNTZcIiwgbnVsbCk7XG5fX2RlY29yYXRlKFtcbiAgICBoYW5kbGluZ1JhbmdlRXJyb3Jcbl0sIEJpbmFyeVJlYWRlci5wcm90b3R5cGUsIFwicmVhZFU1MTJcIiwgbnVsbCk7XG5fX2RlY29yYXRlKFtcbiAgICBoYW5kbGluZ1JhbmdlRXJyb3Jcbl0sIEJpbmFyeVJlYWRlci5wcm90b3R5cGUsIFwicmVhZFN0cmluZ1wiLCBudWxsKTtcbl9fZGVjb3JhdGUoW1xuICAgIGhhbmRsaW5nUmFuZ2VFcnJvclxuXSwgQmluYXJ5UmVhZGVyLnByb3RvdHlwZSwgXCJyZWFkRml4ZWRBcnJheVwiLCBudWxsKTtcbl9fZGVjb3JhdGUoW1xuICAgIGhhbmRsaW5nUmFuZ2VFcnJvclxuXSwgQmluYXJ5UmVhZGVyLnByb3RvdHlwZSwgXCJyZWFkQXJyYXlcIiwgbnVsbCk7XG5leHBvcnRzLkJpbmFyeVJlYWRlciA9IEJpbmFyeVJlYWRlcjtcbmZ1bmN0aW9uIGNhcGl0YWxpemVGaXJzdExldHRlcihzdHJpbmcpIHtcbiAgICByZXR1cm4gc3RyaW5nLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgc3RyaW5nLnNsaWNlKDEpO1xufVxuZnVuY3Rpb24gc2VyaWFsaXplRmllbGQoc2NoZW1hLCBmaWVsZE5hbWUsIHZhbHVlLCBmaWVsZFR5cGUsIHdyaXRlcikge1xuICAgIHRyeSB7XG4gICAgICAgIC8vIFRPRE86IEhhbmRsZSBtaXNzaW5nIHZhbHVlcyBwcm9wZXJseSAobWFrZSBzdXJlIHRoZXkgbmV2ZXIgcmVzdWx0IGluIGp1c3Qgc2tpcHBlZCB3cml0ZSlcbiAgICAgICAgaWYgKHR5cGVvZiBmaWVsZFR5cGUgPT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgICAgIHdyaXRlcltgd3JpdGUke2NhcGl0YWxpemVGaXJzdExldHRlcihmaWVsZFR5cGUpfWBdKHZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChmaWVsZFR5cGUgaW5zdGFuY2VvZiBBcnJheSkge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBmaWVsZFR5cGVbMF0gPT09IFwibnVtYmVyXCIpIHtcbiAgICAgICAgICAgICAgICBpZiAodmFsdWUubGVuZ3RoICE9PSBmaWVsZFR5cGVbMF0pIHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEJvcnNoRXJyb3IoYEV4cGVjdGluZyBieXRlIGFycmF5IG9mIGxlbmd0aCAke2ZpZWxkVHlwZVswXX0sIGJ1dCBnb3QgJHt2YWx1ZS5sZW5ndGh9IGJ5dGVzYCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHdyaXRlci53cml0ZUZpeGVkQXJyYXkodmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoZmllbGRUeXBlLmxlbmd0aCA9PT0gMiAmJiB0eXBlb2YgZmllbGRUeXBlWzFdID09PSBcIm51bWJlclwiKSB7XG4gICAgICAgICAgICAgICAgaWYgKHZhbHVlLmxlbmd0aCAhPT0gZmllbGRUeXBlWzFdKSB7XG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBCb3JzaEVycm9yKGBFeHBlY3RpbmcgYnl0ZSBhcnJheSBvZiBsZW5ndGggJHtmaWVsZFR5cGVbMV19LCBidXQgZ290ICR7dmFsdWUubGVuZ3RofSBieXRlc2ApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGZpZWxkVHlwZVsxXTsgaSsrKSB7XG4gICAgICAgICAgICAgICAgICAgIHNlcmlhbGl6ZUZpZWxkKHNjaGVtYSwgbnVsbCwgdmFsdWVbaV0sIGZpZWxkVHlwZVswXSwgd3JpdGVyKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICB3cml0ZXIud3JpdGVBcnJheSh2YWx1ZSwgKGl0ZW0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgc2VyaWFsaXplRmllbGQoc2NoZW1hLCBmaWVsZE5hbWUsIGl0ZW0sIGZpZWxkVHlwZVswXSwgd3JpdGVyKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChmaWVsZFR5cGUua2luZCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKGZpZWxkVHlwZS5raW5kKSB7XG4gICAgICAgICAgICAgICAgY2FzZSBcIm9wdGlvblwiOiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3cml0ZXIud3JpdGVVOCgwKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdyaXRlci53cml0ZVU4KDEpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc2VyaWFsaXplRmllbGQoc2NoZW1hLCBmaWVsZE5hbWUsIHZhbHVlLCBmaWVsZFR5cGUudHlwZSwgd3JpdGVyKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY2FzZSBcIm1hcFwiOiB7XG4gICAgICAgICAgICAgICAgICAgIHdyaXRlci53cml0ZVUzMih2YWx1ZS5zaXplKTtcbiAgICAgICAgICAgICAgICAgICAgdmFsdWUuZm9yRWFjaCgodmFsLCBrZXkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlcmlhbGl6ZUZpZWxkKHNjaGVtYSwgZmllbGROYW1lLCBrZXksIGZpZWxkVHlwZS5rZXksIHdyaXRlcik7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZXJpYWxpemVGaWVsZChzY2hlbWEsIGZpZWxkTmFtZSwgdmFsLCBmaWVsZFR5cGUudmFsdWUsIHdyaXRlcik7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEJvcnNoRXJyb3IoYEZpZWxkVHlwZSAke2ZpZWxkVHlwZX0gdW5yZWNvZ25pemVkYCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBzZXJpYWxpemVTdHJ1Y3Qoc2NoZW1hLCB2YWx1ZSwgd3JpdGVyKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgaWYgKGVycm9yIGluc3RhbmNlb2YgQm9yc2hFcnJvcikge1xuICAgICAgICAgICAgZXJyb3IuYWRkVG9GaWVsZFBhdGgoZmllbGROYW1lKTtcbiAgICAgICAgfVxuICAgICAgICB0aHJvdyBlcnJvcjtcbiAgICB9XG59XG5mdW5jdGlvbiBzZXJpYWxpemVTdHJ1Y3Qoc2NoZW1hLCBvYmosIHdyaXRlcikge1xuICAgIGlmICh0eXBlb2Ygb2JqLmJvcnNoU2VyaWFsaXplID09PSBcImZ1bmN0aW9uXCIpIHtcbiAgICAgICAgb2JqLmJvcnNoU2VyaWFsaXplKHdyaXRlcik7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3Qgc3RydWN0U2NoZW1hID0gc2NoZW1hLmdldChvYmouY29uc3RydWN0b3IpO1xuICAgIGlmICghc3RydWN0U2NoZW1hKSB7XG4gICAgICAgIHRocm93IG5ldyBCb3JzaEVycm9yKGBDbGFzcyAke29iai5jb25zdHJ1Y3Rvci5uYW1lfSBpcyBtaXNzaW5nIGluIHNjaGVtYWApO1xuICAgIH1cbiAgICBpZiAoc3RydWN0U2NoZW1hLmtpbmQgPT09IFwic3RydWN0XCIpIHtcbiAgICAgICAgc3RydWN0U2NoZW1hLmZpZWxkcy5tYXAoKFtmaWVsZE5hbWUsIGZpZWxkVHlwZV0pID0+IHtcbiAgICAgICAgICAgIHNlcmlhbGl6ZUZpZWxkKHNjaGVtYSwgZmllbGROYW1lLCBvYmpbZmllbGROYW1lXSwgZmllbGRUeXBlLCB3cml0ZXIpO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgZWxzZSBpZiAoc3RydWN0U2NoZW1hLmtpbmQgPT09IFwiZW51bVwiKSB7XG4gICAgICAgIGNvbnN0IG5hbWUgPSBvYmpbc3RydWN0U2NoZW1hLmZpZWxkXTtcbiAgICAgICAgZm9yIChsZXQgaWR4ID0gMDsgaWR4IDwgc3RydWN0U2NoZW1hLnZhbHVlcy5sZW5ndGg7ICsraWR4KSB7XG4gICAgICAgICAgICBjb25zdCBbZmllbGROYW1lLCBmaWVsZFR5cGVdID0gc3RydWN0U2NoZW1hLnZhbHVlc1tpZHhdO1xuICAgICAgICAgICAgaWYgKGZpZWxkTmFtZSA9PT0gbmFtZSkge1xuICAgICAgICAgICAgICAgIHdyaXRlci53cml0ZVU4KGlkeCk7XG4gICAgICAgICAgICAgICAgc2VyaWFsaXplRmllbGQoc2NoZW1hLCBmaWVsZE5hbWUsIG9ialtmaWVsZE5hbWVdLCBmaWVsZFR5cGUsIHdyaXRlcik7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHRocm93IG5ldyBCb3JzaEVycm9yKGBVbmV4cGVjdGVkIHNjaGVtYSBraW5kOiAke3N0cnVjdFNjaGVtYS5raW5kfSBmb3IgJHtvYmouY29uc3RydWN0b3IubmFtZX1gKTtcbiAgICB9XG59XG4vLy8gU2VyaWFsaXplIGdpdmVuIG9iamVjdCB1c2luZyBzY2hlbWEgb2YgdGhlIGZvcm06XG4vLy8geyBjbGFzc19uYW1lIC0+IFsgW2ZpZWxkX25hbWUsIGZpZWxkX3R5cGVdLCAuLiBdLCAuLiB9XG5mdW5jdGlvbiBzZXJpYWxpemUoc2NoZW1hLCBvYmosIFdyaXRlciA9IEJpbmFyeVdyaXRlcikge1xuICAgIGNvbnN0IHdyaXRlciA9IG5ldyBXcml0ZXIoKTtcbiAgICBzZXJpYWxpemVTdHJ1Y3Qoc2NoZW1hLCBvYmosIHdyaXRlcik7XG4gICAgcmV0dXJuIHdyaXRlci50b0FycmF5KCk7XG59XG5leHBvcnRzLnNlcmlhbGl6ZSA9IHNlcmlhbGl6ZTtcbmZ1bmN0aW9uIGRlc2VyaWFsaXplRmllbGQoc2NoZW1hLCBmaWVsZE5hbWUsIGZpZWxkVHlwZSwgcmVhZGVyKSB7XG4gICAgdHJ5IHtcbiAgICAgICAgaWYgKHR5cGVvZiBmaWVsZFR5cGUgPT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgICAgIHJldHVybiByZWFkZXJbYHJlYWQke2NhcGl0YWxpemVGaXJzdExldHRlcihmaWVsZFR5cGUpfWBdKCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGZpZWxkVHlwZSBpbnN0YW5jZW9mIEFycmF5KSB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIGZpZWxkVHlwZVswXSA9PT0gXCJudW1iZXJcIikge1xuICAgICAgICAgICAgICAgIHJldHVybiByZWFkZXIucmVhZEZpeGVkQXJyYXkoZmllbGRUeXBlWzBdKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKHR5cGVvZiBmaWVsZFR5cGVbMV0gPT09IFwibnVtYmVyXCIpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBhcnIgPSBbXTtcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGZpZWxkVHlwZVsxXTsgaSsrKSB7XG4gICAgICAgICAgICAgICAgICAgIGFyci5wdXNoKGRlc2VyaWFsaXplRmllbGQoc2NoZW1hLCBudWxsLCBmaWVsZFR5cGVbMF0sIHJlYWRlcikpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gYXJyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHJlYWRlci5yZWFkQXJyYXkoKCkgPT4gZGVzZXJpYWxpemVGaWVsZChzY2hlbWEsIGZpZWxkTmFtZSwgZmllbGRUeXBlWzBdLCByZWFkZXIpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoZmllbGRUeXBlLmtpbmQgPT09IFwib3B0aW9uXCIpIHtcbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbiA9IHJlYWRlci5yZWFkVTgoKTtcbiAgICAgICAgICAgIGlmIChvcHRpb24pIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZGVzZXJpYWxpemVGaWVsZChzY2hlbWEsIGZpZWxkTmFtZSwgZmllbGRUeXBlLnR5cGUsIHJlYWRlcik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIGlmIChmaWVsZFR5cGUua2luZCA9PT0gXCJtYXBcIikge1xuICAgICAgICAgICAgbGV0IG1hcCA9IG5ldyBNYXAoKTtcbiAgICAgICAgICAgIGNvbnN0IGxlbmd0aCA9IHJlYWRlci5yZWFkVTMyKCk7XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgY29uc3Qga2V5ID0gZGVzZXJpYWxpemVGaWVsZChzY2hlbWEsIGZpZWxkTmFtZSwgZmllbGRUeXBlLmtleSwgcmVhZGVyKTtcbiAgICAgICAgICAgICAgICBjb25zdCB2YWwgPSBkZXNlcmlhbGl6ZUZpZWxkKHNjaGVtYSwgZmllbGROYW1lLCBmaWVsZFR5cGUudmFsdWUsIHJlYWRlcik7XG4gICAgICAgICAgICAgICAgbWFwLnNldChrZXksIHZhbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gbWFwO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBkZXNlcmlhbGl6ZVN0cnVjdChzY2hlbWEsIGZpZWxkVHlwZSwgcmVhZGVyKTtcbiAgICB9XG4gICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEJvcnNoRXJyb3IpIHtcbiAgICAgICAgICAgIGVycm9yLmFkZFRvRmllbGRQYXRoKGZpZWxkTmFtZSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfVxufVxuZnVuY3Rpb24gZGVzZXJpYWxpemVTdHJ1Y3Qoc2NoZW1hLCBjbGFzc1R5cGUsIHJlYWRlcikge1xuICAgIGlmICh0eXBlb2YgY2xhc3NUeXBlLmJvcnNoRGVzZXJpYWxpemUgPT09IFwiZnVuY3Rpb25cIikge1xuICAgICAgICByZXR1cm4gY2xhc3NUeXBlLmJvcnNoRGVzZXJpYWxpemUocmVhZGVyKTtcbiAgICB9XG4gICAgY29uc3Qgc3RydWN0U2NoZW1hID0gc2NoZW1hLmdldChjbGFzc1R5cGUpO1xuICAgIGlmICghc3RydWN0U2NoZW1hKSB7XG4gICAgICAgIHRocm93IG5ldyBCb3JzaEVycm9yKGBDbGFzcyAke2NsYXNzVHlwZS5uYW1lfSBpcyBtaXNzaW5nIGluIHNjaGVtYWApO1xuICAgIH1cbiAgICBpZiAoc3RydWN0U2NoZW1hLmtpbmQgPT09IFwic3RydWN0XCIpIHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0ge307XG4gICAgICAgIGZvciAoY29uc3QgW2ZpZWxkTmFtZSwgZmllbGRUeXBlXSBvZiBzY2hlbWEuZ2V0KGNsYXNzVHlwZSkuZmllbGRzKSB7XG4gICAgICAgICAgICByZXN1bHRbZmllbGROYW1lXSA9IGRlc2VyaWFsaXplRmllbGQoc2NoZW1hLCBmaWVsZE5hbWUsIGZpZWxkVHlwZSwgcmVhZGVyKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbmV3IGNsYXNzVHlwZShyZXN1bHQpO1xuICAgIH1cbiAgICBpZiAoc3RydWN0U2NoZW1hLmtpbmQgPT09IFwiZW51bVwiKSB7XG4gICAgICAgIGNvbnN0IGlkeCA9IHJlYWRlci5yZWFkVTgoKTtcbiAgICAgICAgaWYgKGlkeCA+PSBzdHJ1Y3RTY2hlbWEudmFsdWVzLmxlbmd0aCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEJvcnNoRXJyb3IoYEVudW0gaW5kZXg6ICR7aWR4fSBpcyBvdXQgb2YgcmFuZ2VgKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBbZmllbGROYW1lLCBmaWVsZFR5cGVdID0gc3RydWN0U2NoZW1hLnZhbHVlc1tpZHhdO1xuICAgICAgICBjb25zdCBmaWVsZFZhbHVlID0gZGVzZXJpYWxpemVGaWVsZChzY2hlbWEsIGZpZWxkTmFtZSwgZmllbGRUeXBlLCByZWFkZXIpO1xuICAgICAgICByZXR1cm4gbmV3IGNsYXNzVHlwZSh7IFtmaWVsZE5hbWVdOiBmaWVsZFZhbHVlIH0pO1xuICAgIH1cbiAgICB0aHJvdyBuZXcgQm9yc2hFcnJvcihgVW5leHBlY3RlZCBzY2hlbWEga2luZDogJHtzdHJ1Y3RTY2hlbWEua2luZH0gZm9yICR7Y2xhc3NUeXBlLmNvbnN0cnVjdG9yLm5hbWV9YCk7XG59XG4vLy8gRGVzZXJpYWxpemVzIG9iamVjdCBmcm9tIGJ5dGVzIHVzaW5nIHNjaGVtYS5cbmZ1bmN0aW9uIGRlc2VyaWFsaXplKHNjaGVtYSwgY2xhc3NUeXBlLCBidWZmZXIsIFJlYWRlciA9IEJpbmFyeVJlYWRlcikge1xuICAgIGNvbnN0IHJlYWRlciA9IG5ldyBSZWFkZXIoYnVmZmVyKTtcbiAgICBjb25zdCByZXN1bHQgPSBkZXNlcmlhbGl6ZVN0cnVjdChzY2hlbWEsIGNsYXNzVHlwZSwgcmVhZGVyKTtcbiAgICBpZiAocmVhZGVyLm9mZnNldCA8IGJ1ZmZlci5sZW5ndGgpIHtcbiAgICAgICAgdGhyb3cgbmV3IEJvcnNoRXJyb3IoYFVuZXhwZWN0ZWQgJHtidWZmZXIubGVuZ3RoIC0gcmVhZGVyLm9mZnNldH0gYnl0ZXMgYWZ0ZXIgZGVzZXJpYWxpemVkIGRhdGFgKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbn1cbmV4cG9ydHMuZGVzZXJpYWxpemUgPSBkZXNlcmlhbGl6ZTtcbi8vLyBEZXNlcmlhbGl6ZXMgb2JqZWN0IGZyb20gYnl0ZXMgdXNpbmcgc2NoZW1hLCB3aXRob3V0IGNoZWNraW5nIHRoZSBsZW5ndGggcmVhZFxuZnVuY3Rpb24gZGVzZXJpYWxpemVVbmNoZWNrZWQoc2NoZW1hLCBjbGFzc1R5cGUsIGJ1ZmZlciwgUmVhZGVyID0gQmluYXJ5UmVhZGVyKSB7XG4gICAgY29uc3QgcmVhZGVyID0gbmV3IFJlYWRlcihidWZmZXIpO1xuICAgIHJldHVybiBkZXNlcmlhbGl6ZVN0cnVjdChzY2hlbWEsIGNsYXNzVHlwZSwgcmVhZGVyKTtcbn1cbmV4cG9ydHMuZGVzZXJpYWxpemVVbmNoZWNrZWQgPSBkZXNlcmlhbGl6ZVVuY2hlY2tlZDtcbiIsIG51bGwsICJcbi8qKlxuICogTW9kdWxlIGRlcGVuZGVuY2llcy5cbiAqL1xuXG52YXIgc2VwID0gcmVxdWlyZSgncGF0aCcpLnNlcCB8fCAnLyc7XG5cbi8qKlxuICogTW9kdWxlIGV4cG9ydHMuXG4gKi9cblxubW9kdWxlLmV4cG9ydHMgPSBmaWxlVXJpVG9QYXRoO1xuXG4vKipcbiAqIEZpbGUgVVJJIHRvIFBhdGggZnVuY3Rpb24uXG4gKlxuICogQHBhcmFtIHtTdHJpbmd9IHVyaVxuICogQHJldHVybiB7U3RyaW5nfSBwYXRoXG4gKiBAYXBpIHB1YmxpY1xuICovXG5cbmZ1bmN0aW9uIGZpbGVVcmlUb1BhdGggKHVyaSkge1xuICBpZiAoJ3N0cmluZycgIT0gdHlwZW9mIHVyaSB8fFxuICAgICAgdXJpLmxlbmd0aCA8PSA3IHx8XG4gICAgICAnZmlsZTovLycgIT0gdXJpLnN1YnN0cmluZygwLCA3KSkge1xuICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ211c3QgcGFzcyBpbiBhIGZpbGU6Ly8gVVJJIHRvIGNvbnZlcnQgdG8gYSBmaWxlIHBhdGgnKTtcbiAgfVxuXG4gIHZhciByZXN0ID0gZGVjb2RlVVJJKHVyaS5zdWJzdHJpbmcoNykpO1xuICB2YXIgZmlyc3RTbGFzaCA9IHJlc3QuaW5kZXhPZignLycpO1xuICB2YXIgaG9zdCA9IHJlc3Quc3Vic3RyaW5nKDAsIGZpcnN0U2xhc2gpO1xuICB2YXIgcGF0aCA9IHJlc3Quc3Vic3RyaW5nKGZpcnN0U2xhc2ggKyAxKTtcblxuICAvLyAyLiAgU2NoZW1lIERlZmluaXRpb25cbiAgLy8gQXMgYSBzcGVjaWFsIGNhc2UsIDxob3N0PiBjYW4gYmUgdGhlIHN0cmluZyBcImxvY2FsaG9zdFwiIG9yIHRoZSBlbXB0eVxuICAvLyBzdHJpbmc7IHRoaXMgaXMgaW50ZXJwcmV0ZWQgYXMgXCJ0aGUgbWFjaGluZSBmcm9tIHdoaWNoIHRoZSBVUkwgaXNcbiAgLy8gYmVpbmcgaW50ZXJwcmV0ZWRcIi5cbiAgaWYgKCdsb2NhbGhvc3QnID09IGhvc3QpIGhvc3QgPSAnJztcblxuICBpZiAoaG9zdCkge1xuICAgIGhvc3QgPSBzZXAgKyBzZXAgKyBob3N0O1xuICB9XG5cbiAgLy8gMy4yICBEcml2ZXMsIGRyaXZlIGxldHRlcnMsIG1vdW50IHBvaW50cywgZmlsZSBzeXN0ZW0gcm9vdFxuICAvLyBEcml2ZSBsZXR0ZXJzIGFyZSBtYXBwZWQgaW50byB0aGUgdG9wIG9mIGEgZmlsZSBVUkkgaW4gdmFyaW91cyB3YXlzLFxuICAvLyBkZXBlbmRpbmcgb24gdGhlIGltcGxlbWVudGF0aW9uOyBzb21lIGFwcGxpY2F0aW9ucyBzdWJzdGl0dXRlXG4gIC8vIHZlcnRpY2FsIGJhciAoXCJ8XCIpIGZvciB0aGUgY29sb24gYWZ0ZXIgdGhlIGRyaXZlIGxldHRlciwgeWllbGRpbmdcbiAgLy8gXCJmaWxlOi8vL2N8L3RtcC90ZXN0LnR4dFwiLiAgSW4gc29tZSBjYXNlcywgdGhlIGNvbG9uIGlzIGxlZnRcbiAgLy8gdW5jaGFuZ2VkLCBhcyBpbiBcImZpbGU6Ly8vYzovdG1wL3Rlc3QudHh0XCIuICBJbiBvdGhlciBjYXNlcywgdGhlXG4gIC8vIGNvbG9uIGlzIHNpbXBseSBvbWl0dGVkLCBhcyBpbiBcImZpbGU6Ly8vYy90bXAvdGVzdC50eHRcIi5cbiAgcGF0aCA9IHBhdGgucmVwbGFjZSgvXiguKylcXHwvLCAnJDE6Jyk7XG5cbiAgLy8gZm9yIFdpbmRvd3MsIHdlIG5lZWQgdG8gaW52ZXJ0IHRoZSBwYXRoIHNlcGFyYXRvcnMgZnJvbSB3aGF0IGEgVVJJIHVzZXNcbiAgaWYgKHNlcCA9PSAnXFxcXCcpIHtcbiAgICBwYXRoID0gcGF0aC5yZXBsYWNlKC9cXC8vZywgJ1xcXFwnKTtcbiAgfVxuXG4gIGlmICgvXi4rXFw6Ly50ZXN0KHBhdGgpKSB7XG4gICAgLy8gaGFzIFdpbmRvd3MgZHJpdmUgYXQgYmVnaW5uaW5nIG9mIHBhdGhcbiAgfSBlbHNlIHtcbiAgICAvLyB1bml4IHBhdGhcdTIwMjZcbiAgICBwYXRoID0gc2VwICsgcGF0aDtcbiAgfVxuXG4gIHJldHVybiBob3N0ICsgcGF0aDtcbn1cbiIsICIvKipcbiAqIE1vZHVsZSBkZXBlbmRlbmNpZXMuXG4gKi9cblxudmFyIGZzID0gcmVxdWlyZSgnZnMnKSxcbiAgcGF0aCA9IHJlcXVpcmUoJ3BhdGgnKSxcbiAgZmlsZVVSTFRvUGF0aCA9IHJlcXVpcmUoJ2ZpbGUtdXJpLXRvLXBhdGgnKSxcbiAgam9pbiA9IHBhdGguam9pbixcbiAgZGlybmFtZSA9IHBhdGguZGlybmFtZSxcbiAgZXhpc3RzID1cbiAgICAoZnMuYWNjZXNzU3luYyAmJlxuICAgICAgZnVuY3Rpb24ocGF0aCkge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGZzLmFjY2Vzc1N5bmMocGF0aCk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9KSB8fFxuICAgIGZzLmV4aXN0c1N5bmMgfHxcbiAgICBwYXRoLmV4aXN0c1N5bmMsXG4gIGRlZmF1bHRzID0ge1xuICAgIGFycm93OiBwcm9jZXNzLmVudi5OT0RFX0JJTkRJTkdTX0FSUk9XIHx8ICcgXHUyMTkyICcsXG4gICAgY29tcGlsZWQ6IHByb2Nlc3MuZW52Lk5PREVfQklORElOR1NfQ09NUElMRURfRElSIHx8ICdjb21waWxlZCcsXG4gICAgcGxhdGZvcm06IHByb2Nlc3MucGxhdGZvcm0sXG4gICAgYXJjaDogcHJvY2Vzcy5hcmNoLFxuICAgIG5vZGVQcmVHeXA6XG4gICAgICAnbm9kZS12JyArXG4gICAgICBwcm9jZXNzLnZlcnNpb25zLm1vZHVsZXMgK1xuICAgICAgJy0nICtcbiAgICAgIHByb2Nlc3MucGxhdGZvcm0gK1xuICAgICAgJy0nICtcbiAgICAgIHByb2Nlc3MuYXJjaCxcbiAgICB2ZXJzaW9uOiBwcm9jZXNzLnZlcnNpb25zLm5vZGUsXG4gICAgYmluZGluZ3M6ICdiaW5kaW5ncy5ub2RlJyxcbiAgICB0cnk6IFtcbiAgICAgIC8vIG5vZGUtZ3lwJ3MgbGlua2VkIHZlcnNpb24gaW4gdGhlIFwiYnVpbGRcIiBkaXJcbiAgICAgIFsnbW9kdWxlX3Jvb3QnLCAnYnVpbGQnLCAnYmluZGluZ3MnXSxcbiAgICAgIC8vIG5vZGUtd2FmIGFuZCBneXBfYWRkb24gKGEuay5hIG5vZGUtZ3lwKVxuICAgICAgWydtb2R1bGVfcm9vdCcsICdidWlsZCcsICdEZWJ1ZycsICdiaW5kaW5ncyddLFxuICAgICAgWydtb2R1bGVfcm9vdCcsICdidWlsZCcsICdSZWxlYXNlJywgJ2JpbmRpbmdzJ10sXG4gICAgICAvLyBEZWJ1ZyBmaWxlcywgZm9yIGRldmVsb3BtZW50IChsZWdhY3kgYmVoYXZpb3IsIHJlbW92ZSBmb3Igbm9kZSB2MC45KVxuICAgICAgWydtb2R1bGVfcm9vdCcsICdvdXQnLCAnRGVidWcnLCAnYmluZGluZ3MnXSxcbiAgICAgIFsnbW9kdWxlX3Jvb3QnLCAnRGVidWcnLCAnYmluZGluZ3MnXSxcbiAgICAgIC8vIFJlbGVhc2UgZmlsZXMsIGJ1dCBtYW51YWxseSBjb21waWxlZCAobGVnYWN5IGJlaGF2aW9yLCByZW1vdmUgZm9yIG5vZGUgdjAuOSlcbiAgICAgIFsnbW9kdWxlX3Jvb3QnLCAnb3V0JywgJ1JlbGVhc2UnLCAnYmluZGluZ3MnXSxcbiAgICAgIFsnbW9kdWxlX3Jvb3QnLCAnUmVsZWFzZScsICdiaW5kaW5ncyddLFxuICAgICAgLy8gTGVnYWN5IGZyb20gbm9kZS13YWYsIG5vZGUgPD0gMC40LnhcbiAgICAgIFsnbW9kdWxlX3Jvb3QnLCAnYnVpbGQnLCAnZGVmYXVsdCcsICdiaW5kaW5ncyddLFxuICAgICAgLy8gUHJvZHVjdGlvbiBcIlJlbGVhc2VcIiBidWlsZHR5cGUgYmluYXJ5IChtZWguLi4pXG4gICAgICBbJ21vZHVsZV9yb290JywgJ2NvbXBpbGVkJywgJ3ZlcnNpb24nLCAncGxhdGZvcm0nLCAnYXJjaCcsICdiaW5kaW5ncyddLFxuICAgICAgLy8gbm9kZS1xYnMgYnVpbGRzXG4gICAgICBbJ21vZHVsZV9yb290JywgJ2FkZG9uLWJ1aWxkJywgJ3JlbGVhc2UnLCAnaW5zdGFsbC1yb290JywgJ2JpbmRpbmdzJ10sXG4gICAgICBbJ21vZHVsZV9yb290JywgJ2FkZG9uLWJ1aWxkJywgJ2RlYnVnJywgJ2luc3RhbGwtcm9vdCcsICdiaW5kaW5ncyddLFxuICAgICAgWydtb2R1bGVfcm9vdCcsICdhZGRvbi1idWlsZCcsICdkZWZhdWx0JywgJ2luc3RhbGwtcm9vdCcsICdiaW5kaW5ncyddLFxuICAgICAgLy8gbm9kZS1wcmUtZ3lwIHBhdGggLi9saWIvYmluZGluZy97bm9kZV9hYml9LXtwbGF0Zm9ybX0te2FyY2h9XG4gICAgICBbJ21vZHVsZV9yb290JywgJ2xpYicsICdiaW5kaW5nJywgJ25vZGVQcmVHeXAnLCAnYmluZGluZ3MnXVxuICAgIF1cbiAgfTtcblxuLyoqXG4gKiBUaGUgbWFpbiBgYmluZGluZ3MoKWAgZnVuY3Rpb24gbG9hZHMgdGhlIGNvbXBpbGVkIGJpbmRpbmdzIGZvciBhIGdpdmVuIG1vZHVsZS5cbiAqIEl0IHVzZXMgVjgncyBFcnJvciBBUEkgdG8gZGV0ZXJtaW5lIHRoZSBwYXJlbnQgZmlsZW5hbWUgdGhhdCB0aGlzIGZ1bmN0aW9uIGlzXG4gKiBiZWluZyBpbnZva2VkIGZyb20sIHdoaWNoIGlzIHRoZW4gdXNlZCB0byBmaW5kIHRoZSByb290IGRpcmVjdG9yeS5cbiAqL1xuXG5mdW5jdGlvbiBiaW5kaW5ncyhvcHRzKSB7XG4gIC8vIEFyZ3VtZW50IHN1cmdlcnlcbiAgaWYgKHR5cGVvZiBvcHRzID09ICdzdHJpbmcnKSB7XG4gICAgb3B0cyA9IHsgYmluZGluZ3M6IG9wdHMgfTtcbiAgfSBlbHNlIGlmICghb3B0cykge1xuICAgIG9wdHMgPSB7fTtcbiAgfVxuXG4gIC8vIG1hcHMgYGRlZmF1bHRzYCBvbnRvIGBvcHRzYCBvYmplY3RcbiAgT2JqZWN0LmtleXMoZGVmYXVsdHMpLm1hcChmdW5jdGlvbihpKSB7XG4gICAgaWYgKCEoaSBpbiBvcHRzKSkgb3B0c1tpXSA9IGRlZmF1bHRzW2ldO1xuICB9KTtcblxuICAvLyBHZXQgdGhlIG1vZHVsZSByb290XG4gIGlmICghb3B0cy5tb2R1bGVfcm9vdCkge1xuICAgIG9wdHMubW9kdWxlX3Jvb3QgPSBleHBvcnRzLmdldFJvb3QoZXhwb3J0cy5nZXRGaWxlTmFtZSgpKTtcbiAgfVxuXG4gIC8vIEVuc3VyZSB0aGUgZ2l2ZW4gYmluZGluZ3MgbmFtZSBlbmRzIHdpdGggLm5vZGVcbiAgaWYgKHBhdGguZXh0bmFtZShvcHRzLmJpbmRpbmdzKSAhPSAnLm5vZGUnKSB7XG4gICAgb3B0cy5iaW5kaW5ncyArPSAnLm5vZGUnO1xuICB9XG5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3dlYnBhY2svd2VicGFjay9pc3N1ZXMvNDE3NSNpc3N1ZWNvbW1lbnQtMzQyOTMxMDM1XG4gIHZhciByZXF1aXJlRnVuYyA9XG4gICAgdHlwZW9mIF9fd2VicGFja19yZXF1aXJlX18gPT09ICdmdW5jdGlvbidcbiAgICAgID8gX19ub25fd2VicGFja19yZXF1aXJlX19cbiAgICAgIDogcmVxdWlyZTtcblxuICB2YXIgdHJpZXMgPSBbXSxcbiAgICBpID0gMCxcbiAgICBsID0gb3B0cy50cnkubGVuZ3RoLFxuICAgIG4sXG4gICAgYixcbiAgICBlcnI7XG5cbiAgZm9yICg7IGkgPCBsOyBpKyspIHtcbiAgICBuID0gam9pbi5hcHBseShcbiAgICAgIG51bGwsXG4gICAgICBvcHRzLnRyeVtpXS5tYXAoZnVuY3Rpb24ocCkge1xuICAgICAgICByZXR1cm4gb3B0c1twXSB8fCBwO1xuICAgICAgfSlcbiAgICApO1xuICAgIHRyaWVzLnB1c2gobik7XG4gICAgdHJ5IHtcbiAgICAgIGIgPSBvcHRzLnBhdGggPyByZXF1aXJlRnVuYy5yZXNvbHZlKG4pIDogcmVxdWlyZUZ1bmMobik7XG4gICAgICBpZiAoIW9wdHMucGF0aCkge1xuICAgICAgICBiLnBhdGggPSBuO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGI7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgaWYgKGUuY29kZSAhPT0gJ01PRFVMRV9OT1RfRk9VTkQnICYmXG4gICAgICAgICAgZS5jb2RlICE9PSAnUVVBTElGSUVEX1BBVEhfUkVTT0xVVElPTl9GQUlMRUQnICYmXG4gICAgICAgICAgIS9ub3QgZmluZC9pLnRlc3QoZS5tZXNzYWdlKSkge1xuICAgICAgICB0aHJvdyBlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGVyciA9IG5ldyBFcnJvcihcbiAgICAnQ291bGQgbm90IGxvY2F0ZSB0aGUgYmluZGluZ3MgZmlsZS4gVHJpZWQ6XFxuJyArXG4gICAgICB0cmllc1xuICAgICAgICAubWFwKGZ1bmN0aW9uKGEpIHtcbiAgICAgICAgICByZXR1cm4gb3B0cy5hcnJvdyArIGE7XG4gICAgICAgIH0pXG4gICAgICAgIC5qb2luKCdcXG4nKVxuICApO1xuICBlcnIudHJpZXMgPSB0cmllcztcbiAgdGhyb3cgZXJyO1xufVxubW9kdWxlLmV4cG9ydHMgPSBleHBvcnRzID0gYmluZGluZ3M7XG5cbi8qKlxuICogR2V0cyB0aGUgZmlsZW5hbWUgb2YgdGhlIEphdmFTY3JpcHQgZmlsZSB0aGF0IGludm9rZXMgdGhpcyBmdW5jdGlvbi5cbiAqIFVzZWQgdG8gaGVscCBmaW5kIHRoZSByb290IGRpcmVjdG9yeSBvZiBhIG1vZHVsZS5cbiAqIE9wdGlvbmFsbHkgYWNjZXB0cyBhbiBmaWxlbmFtZSBhcmd1bWVudCB0byBza2lwIHdoZW4gc2VhcmNoaW5nIGZvciB0aGUgaW52b2tpbmcgZmlsZW5hbWVcbiAqL1xuXG5leHBvcnRzLmdldEZpbGVOYW1lID0gZnVuY3Rpb24gZ2V0RmlsZU5hbWUoY2FsbGluZ19maWxlKSB7XG4gIHZhciBvcmlnUFNUID0gRXJyb3IucHJlcGFyZVN0YWNrVHJhY2UsXG4gICAgb3JpZ1NUTCA9IEVycm9yLnN0YWNrVHJhY2VMaW1pdCxcbiAgICBkdW1teSA9IHt9LFxuICAgIGZpbGVOYW1lO1xuXG4gIEVycm9yLnN0YWNrVHJhY2VMaW1pdCA9IDEwO1xuXG4gIEVycm9yLnByZXBhcmVTdGFja1RyYWNlID0gZnVuY3Rpb24oZSwgc3QpIHtcbiAgICBmb3IgKHZhciBpID0gMCwgbCA9IHN0Lmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgZmlsZU5hbWUgPSBzdFtpXS5nZXRGaWxlTmFtZSgpO1xuICAgICAgaWYgKGZpbGVOYW1lICE9PSBfX2ZpbGVuYW1lKSB7XG4gICAgICAgIGlmIChjYWxsaW5nX2ZpbGUpIHtcbiAgICAgICAgICBpZiAoZmlsZU5hbWUgIT09IGNhbGxpbmdfZmlsZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgLy8gcnVuIHRoZSAncHJlcGFyZVN0YWNrVHJhY2UnIGZ1bmN0aW9uIGFib3ZlXG4gIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKGR1bW15KTtcbiAgZHVtbXkuc3RhY2s7XG5cbiAgLy8gY2xlYW51cFxuICBFcnJvci5wcmVwYXJlU3RhY2tUcmFjZSA9IG9yaWdQU1Q7XG4gIEVycm9yLnN0YWNrVHJhY2VMaW1pdCA9IG9yaWdTVEw7XG5cbiAgLy8gaGFuZGxlIGZpbGVuYW1lIHRoYXQgc3RhcnRzIHdpdGggXCJmaWxlOi8vXCJcbiAgdmFyIGZpbGVTY2hlbWEgPSAnZmlsZTovLyc7XG4gIGlmIChmaWxlTmFtZS5pbmRleE9mKGZpbGVTY2hlbWEpID09PSAwKSB7XG4gICAgZmlsZU5hbWUgPSBmaWxlVVJMVG9QYXRoKGZpbGVOYW1lKTtcbiAgfVxuXG4gIHJldHVybiBmaWxlTmFtZTtcbn07XG5cbi8qKlxuICogR2V0cyB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgYSBtb2R1bGUsIGdpdmVuIGFuIGFyYml0cmFyeSBmaWxlbmFtZVxuICogc29tZXdoZXJlIGluIHRoZSBtb2R1bGUgdHJlZS4gVGhlIFwicm9vdCBkaXJlY3RvcnlcIiBpcyB0aGUgZGlyZWN0b3J5XG4gKiBjb250YWluaW5nIHRoZSBgcGFja2FnZS5qc29uYCBmaWxlLlxuICpcbiAqICAgSW46ICAvaG9tZS9uYXRlL25vZGUtbmF0aXZlLW1vZHVsZS9saWIvaW5kZXguanNcbiAqICAgT3V0OiAvaG9tZS9uYXRlL25vZGUtbmF0aXZlLW1vZHVsZVxuICovXG5cbmV4cG9ydHMuZ2V0Um9vdCA9IGZ1bmN0aW9uIGdldFJvb3QoZmlsZSkge1xuICB2YXIgZGlyID0gZGlybmFtZShmaWxlKSxcbiAgICBwcmV2O1xuICB3aGlsZSAodHJ1ZSkge1xuICAgIGlmIChkaXIgPT09ICcuJykge1xuICAgICAgLy8gQXZvaWRzIGFuIGluZmluaXRlIGxvb3AgaW4gcmFyZSBjYXNlcywgbGlrZSB0aGUgUkVQTFxuICAgICAgZGlyID0gcHJvY2Vzcy5jd2QoKTtcbiAgICB9XG4gICAgaWYgKFxuICAgICAgZXhpc3RzKGpvaW4oZGlyLCAncGFja2FnZS5qc29uJykpIHx8XG4gICAgICBleGlzdHMoam9pbihkaXIsICdub2RlX21vZHVsZXMnKSlcbiAgICApIHtcbiAgICAgIC8vIEZvdW5kIHRoZSAncGFja2FnZS5qc29uJyBmaWxlIG9yICdub2RlX21vZHVsZXMnIGRpcjsgd2UncmUgZG9uZVxuICAgICAgcmV0dXJuIGRpcjtcbiAgICB9XG4gICAgaWYgKHByZXYgPT09IGRpcikge1xuICAgICAgLy8gR290IHRvIHRoZSB0b3BcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ0NvdWxkIG5vdCBmaW5kIG1vZHVsZSByb290IGdpdmVuIGZpbGU6IFwiJyArXG4gICAgICAgICAgZmlsZSArXG4gICAgICAgICAgJ1wiLiBEbyB5b3UgaGF2ZSBhIGBwYWNrYWdlLmpzb25gIGZpbGU/ICdcbiAgICAgICk7XG4gICAgfVxuICAgIC8vIFRyeSB0aGUgcGFyZW50IGRpciBuZXh0XG4gICAgcHJldiA9IGRpcjtcbiAgICBkaXIgPSBqb2luKGRpciwgJy4uJyk7XG4gIH1cbn07XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG5sZXQgY29udmVydGVyO1xue1xuICAgIHRyeSB7XG4gICAgICAgIGNvbnZlcnRlciA9IHJlcXVpcmUoJ2JpbmRpbmdzJykoJ2JpZ2ludF9idWZmZXInKTtcbiAgICB9XG4gICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgY29uc29sZS53YXJuKCdiaWdpbnQ6IEZhaWxlZCB0byBsb2FkIGJpbmRpbmdzLCBwdXJlIEpTIHdpbGwgYmUgdXNlZCAodHJ5IG5wbSBydW4gcmVidWlsZD8pJyk7XG4gICAgfVxufVxuLyoqXG4gKiBDb252ZXJ0IGEgbGl0dGxlLWVuZGlhbiBidWZmZXIgaW50byBhIEJpZ0ludC5cbiAqIEBwYXJhbSBidWYgVGhlIGxpdHRsZS1lbmRpYW4gYnVmZmVyIHRvIGNvbnZlcnRcbiAqIEByZXR1cm5zIEEgQmlnSW50IHdpdGggdGhlIGxpdHRsZS1lbmRpYW4gcmVwcmVzZW50YXRpb24gb2YgYnVmLlxuICovXG5mdW5jdGlvbiB0b0JpZ0ludExFKGJ1Zikge1xuICAgIGlmIChjb252ZXJ0ZXIgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb25zdCByZXZlcnNlZCA9IEJ1ZmZlci5mcm9tKGJ1Zik7XG4gICAgICAgIHJldmVyc2VkLnJldmVyc2UoKTtcbiAgICAgICAgY29uc3QgaGV4ID0gcmV2ZXJzZWQudG9TdHJpbmcoJ2hleCcpO1xuICAgICAgICBpZiAoaGV4Lmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgcmV0dXJuIEJpZ0ludCgwKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gQmlnSW50KGAweCR7aGV4fWApO1xuICAgIH1cbiAgICByZXR1cm4gY29udmVydGVyLnRvQmlnSW50KGJ1ZiwgZmFsc2UpO1xufVxuZXhwb3J0cy50b0JpZ0ludExFID0gdG9CaWdJbnRMRTtcbi8qKlxuICogQ29udmVydCBhIGJpZy1lbmRpYW4gYnVmZmVyIGludG8gYSBCaWdJbnRcbiAqIEBwYXJhbSBidWYgVGhlIGJpZy1lbmRpYW4gYnVmZmVyIHRvIGNvbnZlcnQuXG4gKiBAcmV0dXJucyBBIEJpZ0ludCB3aXRoIHRoZSBiaWctZW5kaWFuIHJlcHJlc2VudGF0aW9uIG9mIGJ1Zi5cbiAqL1xuZnVuY3Rpb24gdG9CaWdJbnRCRShidWYpIHtcbiAgICBpZiAoY29udmVydGVyID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgY29uc3QgaGV4ID0gYnVmLnRvU3RyaW5nKCdoZXgnKTtcbiAgICAgICAgaWYgKGhleC5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgIHJldHVybiBCaWdJbnQoMCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIEJpZ0ludChgMHgke2hleH1gKTtcbiAgICB9XG4gICAgcmV0dXJuIGNvbnZlcnRlci50b0JpZ0ludChidWYsIHRydWUpO1xufVxuZXhwb3J0cy50b0JpZ0ludEJFID0gdG9CaWdJbnRCRTtcbi8qKlxuICogQ29udmVydCBhIEJpZ0ludCB0byBhIGxpdHRsZS1lbmRpYW4gYnVmZmVyLlxuICogQHBhcmFtIG51bSAgIFRoZSBCaWdJbnQgdG8gY29udmVydC5cbiAqIEBwYXJhbSB3aWR0aCBUaGUgbnVtYmVyIG9mIGJ5dGVzIHRoYXQgdGhlIHJlc3VsdGluZyBidWZmZXIgc2hvdWxkIGJlLlxuICogQHJldHVybnMgQSBsaXR0bGUtZW5kaWFuIGJ1ZmZlciByZXByZXNlbnRhdGlvbiBvZiBudW0uXG4gKi9cbmZ1bmN0aW9uIHRvQnVmZmVyTEUobnVtLCB3aWR0aCkge1xuICAgIGlmIChjb252ZXJ0ZXIgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb25zdCBoZXggPSBudW0udG9TdHJpbmcoMTYpO1xuICAgICAgICBjb25zdCBidWZmZXIgPSBCdWZmZXIuZnJvbShoZXgucGFkU3RhcnQod2lkdGggKiAyLCAnMCcpLnNsaWNlKDAsIHdpZHRoICogMiksICdoZXgnKTtcbiAgICAgICAgYnVmZmVyLnJldmVyc2UoKTtcbiAgICAgICAgcmV0dXJuIGJ1ZmZlcjtcbiAgICB9XG4gICAgLy8gQWxsb2NhdGlvbiBpcyBkb25lIGhlcmUsIHNpbmNlIGl0IGlzIHNsb3dlciB1c2luZyBuYXBpIGluIENcbiAgICByZXR1cm4gY29udmVydGVyLmZyb21CaWdJbnQobnVtLCBCdWZmZXIuYWxsb2NVbnNhZmUod2lkdGgpLCBmYWxzZSk7XG59XG5leHBvcnRzLnRvQnVmZmVyTEUgPSB0b0J1ZmZlckxFO1xuLyoqXG4gKiBDb252ZXJ0IGEgQmlnSW50IHRvIGEgYmlnLWVuZGlhbiBidWZmZXIuXG4gKiBAcGFyYW0gbnVtICAgVGhlIEJpZ0ludCB0byBjb252ZXJ0LlxuICogQHBhcmFtIHdpZHRoIFRoZSBudW1iZXIgb2YgYnl0ZXMgdGhhdCB0aGUgcmVzdWx0aW5nIGJ1ZmZlciBzaG91bGQgYmUuXG4gKiBAcmV0dXJucyBBIGJpZy1lbmRpYW4gYnVmZmVyIHJlcHJlc2VudGF0aW9uIG9mIG51bS5cbiAqL1xuZnVuY3Rpb24gdG9CdWZmZXJCRShudW0sIHdpZHRoKSB7XG4gICAgaWYgKGNvbnZlcnRlciA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGNvbnN0IGhleCA9IG51bS50b1N0cmluZygxNik7XG4gICAgICAgIHJldHVybiBCdWZmZXIuZnJvbShoZXgucGFkU3RhcnQod2lkdGggKiAyLCAnMCcpLnNsaWNlKDAsIHdpZHRoICogMiksICdoZXgnKTtcbiAgICB9XG4gICAgcmV0dXJuIGNvbnZlcnRlci5mcm9tQmlnSW50KG51bSwgQnVmZmVyLmFsbG9jVW5zYWZlKHdpZHRoKSwgdHJ1ZSk7XG59XG5leHBvcnRzLnRvQnVmZmVyQkUgPSB0b0J1ZmZlckJFO1xuIiwgIi8qKlxuICogQSBgU3RydWN0RmFpbHVyZWAgcmVwcmVzZW50cyBhIHNpbmdsZSBzcGVjaWZpYyBmYWlsdXJlIGluIHZhbGlkYXRpb24uXG4gKi9cblxuZXhwb3J0IHR5cGUgRmFpbHVyZSA9IHtcbiAgdmFsdWU6IGFueVxuICBrZXk6IGFueVxuICB0eXBlOiBzdHJpbmdcbiAgcmVmaW5lbWVudDogc3RyaW5nIHwgdW5kZWZpbmVkXG4gIG1lc3NhZ2U6IHN0cmluZ1xuICBicmFuY2g6IEFycmF5PGFueT5cbiAgcGF0aDogQXJyYXk8YW55PlxufVxuXG4vKipcbiAqIGBTdHJ1Y3RFcnJvcmAgb2JqZWN0cyBhcmUgdGhyb3duIChvciByZXR1cm5lZCkgd2hlbiB2YWxpZGF0aW9uIGZhaWxzLlxuICpcbiAqIFZhbGlkYXRpb24gbG9naWMgaXMgZGVzaWduIHRvIGV4aXQgZWFybHkgZm9yIG1heGltdW0gcGVyZm9ybWFuY2UuIFRoZSBlcnJvclxuICogcmVwcmVzZW50cyB0aGUgZmlyc3QgZXJyb3IgZW5jb3VudGVyZWQgZHVyaW5nIHZhbGlkYXRpb24uIEZvciBtb3JlIGRldGFpbCxcbiAqIHRoZSBgZXJyb3IuZmFpbHVyZXNgIHByb3BlcnR5IGlzIGEgZ2VuZXJhdG9yIGZ1bmN0aW9uIHRoYXQgY2FuIGJlIHJ1biB0b1xuICogY29udGludWUgdmFsaWRhdGlvbiBhbmQgcmVjZWl2ZSBhbGwgdGhlIGZhaWx1cmVzIGluIHRoZSBkYXRhLlxuICovXG5cbmV4cG9ydCBjbGFzcyBTdHJ1Y3RFcnJvciBleHRlbmRzIFR5cGVFcnJvciB7XG4gIHZhbHVlOiBhbnlcbiAga2V5ITogYW55XG4gIHR5cGUhOiBzdHJpbmdcbiAgcmVmaW5lbWVudCE6IHN0cmluZyB8IHVuZGVmaW5lZFxuICBwYXRoITogQXJyYXk8YW55PlxuICBicmFuY2ghOiBBcnJheTxhbnk+XG4gIGZhaWx1cmVzOiAoKSA9PiBBcnJheTxGYWlsdXJlPjtcbiAgW3g6IHN0cmluZ106IGFueVxuXG4gIGNvbnN0cnVjdG9yKGZhaWx1cmU6IEZhaWx1cmUsIGZhaWx1cmVzOiAoKSA9PiBHZW5lcmF0b3I8RmFpbHVyZT4pIHtcbiAgICBsZXQgY2FjaGVkOiBBcnJheTxGYWlsdXJlPiB8IHVuZGVmaW5lZFxuICAgIGNvbnN0IHsgbWVzc2FnZSwgLi4ucmVzdCB9ID0gZmFpbHVyZVxuICAgIGNvbnN0IHsgcGF0aCB9ID0gZmFpbHVyZVxuICAgIGNvbnN0IG1zZyA9XG4gICAgICBwYXRoLmxlbmd0aCA9PT0gMCA/IG1lc3NhZ2UgOiBgQXQgcGF0aDogJHtwYXRoLmpvaW4oJy4nKX0gLS0gJHttZXNzYWdlfWBcbiAgICBzdXBlcihtc2cpXG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLCByZXN0KVxuICAgIHRoaXMubmFtZSA9IHRoaXMuY29uc3RydWN0b3IubmFtZVxuICAgIHRoaXMuZmFpbHVyZXMgPSAoKSA9PiB7XG4gICAgICByZXR1cm4gKGNhY2hlZCA/Pz0gW2ZhaWx1cmUsIC4uLmZhaWx1cmVzKCldKVxuICAgIH1cbiAgfVxufVxuIiwgImltcG9ydCB7IFN0cnVjdCwgSW5mZXIsIFJlc3VsdCwgQ29udGV4dCwgRGVzY3JpYmUgfSBmcm9tICcuL3N0cnVjdCdcbmltcG9ydCB7IEZhaWx1cmUgfSBmcm9tICcuL2Vycm9yJ1xuXG4vKipcbiAqIENoZWNrIGlmIGEgdmFsdWUgaXMgYW4gaXRlcmF0b3IuXG4gKi9cblxuZnVuY3Rpb24gaXNJdGVyYWJsZTxUPih4OiB1bmtub3duKTogeCBpcyBJdGVyYWJsZTxUPiB7XG4gIHJldHVybiBpc09iamVjdCh4KSAmJiB0eXBlb2YgeFtTeW1ib2wuaXRlcmF0b3JdID09PSAnZnVuY3Rpb24nXG59XG5cbi8qKlxuICogQ2hlY2sgaWYgYSB2YWx1ZSBpcyBhIHBsYWluIG9iamVjdC5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gaXNPYmplY3QoeDogdW5rbm93bik6IHggaXMgb2JqZWN0IHtcbiAgcmV0dXJuIHR5cGVvZiB4ID09PSAnb2JqZWN0JyAmJiB4ICE9IG51bGxcbn1cblxuLyoqXG4gKiBDaGVjayBpZiBhIHZhbHVlIGlzIGEgcGxhaW4gb2JqZWN0LlxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBpc1BsYWluT2JqZWN0KHg6IHVua25vd24pOiB4IGlzIHsgW2tleTogc3RyaW5nXTogYW55IH0ge1xuICBpZiAoT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHgpICE9PSAnW29iamVjdCBPYmplY3RdJykge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG5cbiAgY29uc3QgcHJvdG90eXBlID0gT2JqZWN0LmdldFByb3RvdHlwZU9mKHgpXG4gIHJldHVybiBwcm90b3R5cGUgPT09IG51bGwgfHwgcHJvdG90eXBlID09PSBPYmplY3QucHJvdG90eXBlXG59XG5cbi8qKlxuICogUmV0dXJuIGEgdmFsdWUgYXMgYSBwcmludGFibGUgc3RyaW5nLlxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBwcmludCh2YWx1ZTogYW55KTogc3RyaW5nIHtcbiAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgPyBKU09OLnN0cmluZ2lmeSh2YWx1ZSkgOiBgJHt2YWx1ZX1gXG59XG5cbi8qKlxuICogU2hpZnRzIChyZW1vdmVzIGFuZCByZXR1cm5zKSB0aGUgZmlyc3QgdmFsdWUgZnJvbSB0aGUgYGlucHV0YCBpdGVyYXRvci5cbiAqIExpa2UgYEFycmF5LnByb3RvdHlwZS5zaGlmdCgpYCBidXQgZm9yIGFuIGBJdGVyYXRvcmAuXG4gKi9cblxuZXhwb3J0IGZ1bmN0aW9uIHNoaWZ0SXRlcmF0b3I8VD4oaW5wdXQ6IEl0ZXJhdG9yPFQ+KTogVCB8IHVuZGVmaW5lZCB7XG4gIGNvbnN0IHsgZG9uZSwgdmFsdWUgfSA9IGlucHV0Lm5leHQoKVxuICByZXR1cm4gZG9uZSA/IHVuZGVmaW5lZCA6IHZhbHVlXG59XG5cbi8qKlxuICogQ29udmVydCBhIHNpbmdsZSB2YWxpZGF0aW9uIHJlc3VsdCB0byBhIGZhaWx1cmUuXG4gKi9cblxuZXhwb3J0IGZ1bmN0aW9uIHRvRmFpbHVyZTxULCBTPihcbiAgcmVzdWx0OiBzdHJpbmcgfCBib29sZWFuIHwgUGFydGlhbDxGYWlsdXJlPixcbiAgY29udGV4dDogQ29udGV4dCxcbiAgc3RydWN0OiBTdHJ1Y3Q8VCwgUz4sXG4gIHZhbHVlOiBhbnlcbik6IEZhaWx1cmUgfCB1bmRlZmluZWQge1xuICBpZiAocmVzdWx0ID09PSB0cnVlKSB7XG4gICAgcmV0dXJuXG4gIH0gZWxzZSBpZiAocmVzdWx0ID09PSBmYWxzZSkge1xuICAgIHJlc3VsdCA9IHt9XG4gIH0gZWxzZSBpZiAodHlwZW9mIHJlc3VsdCA9PT0gJ3N0cmluZycpIHtcbiAgICByZXN1bHQgPSB7IG1lc3NhZ2U6IHJlc3VsdCB9XG4gIH1cblxuICBjb25zdCB7IHBhdGgsIGJyYW5jaCB9ID0gY29udGV4dFxuICBjb25zdCB7IHR5cGUgfSA9IHN0cnVjdFxuICBjb25zdCB7XG4gICAgcmVmaW5lbWVudCxcbiAgICBtZXNzYWdlID0gYEV4cGVjdGVkIGEgdmFsdWUgb2YgdHlwZSBcXGAke3R5cGV9XFxgJHtcbiAgICAgIHJlZmluZW1lbnQgPyBgIHdpdGggcmVmaW5lbWVudCBcXGAke3JlZmluZW1lbnR9XFxgYCA6ICcnXG4gICAgfSwgYnV0IHJlY2VpdmVkOiBcXGAke3ByaW50KHZhbHVlKX1cXGBgLFxuICB9ID0gcmVzdWx0XG5cbiAgcmV0dXJuIHtcbiAgICB2YWx1ZSxcbiAgICB0eXBlLFxuICAgIHJlZmluZW1lbnQsXG4gICAga2V5OiBwYXRoW3BhdGgubGVuZ3RoIC0gMV0sXG4gICAgcGF0aCxcbiAgICBicmFuY2gsXG4gICAgLi4ucmVzdWx0LFxuICAgIG1lc3NhZ2UsXG4gIH1cbn1cblxuLyoqXG4gKiBDb252ZXJ0IGEgdmFsaWRhdGlvbiByZXN1bHQgdG8gYW4gaXRlcmFibGUgb2YgZmFpbHVyZXMuXG4gKi9cblxuZXhwb3J0IGZ1bmN0aW9uKiB0b0ZhaWx1cmVzPFQsIFM+KFxuICByZXN1bHQ6IFJlc3VsdCxcbiAgY29udGV4dDogQ29udGV4dCxcbiAgc3RydWN0OiBTdHJ1Y3Q8VCwgUz4sXG4gIHZhbHVlOiBhbnlcbik6IEl0ZXJhYmxlSXRlcmF0b3I8RmFpbHVyZT4ge1xuICBpZiAoIWlzSXRlcmFibGUocmVzdWx0KSkge1xuICAgIHJlc3VsdCA9IFtyZXN1bHRdXG4gIH1cblxuICBmb3IgKGNvbnN0IHIgb2YgcmVzdWx0KSB7XG4gICAgY29uc3QgZmFpbHVyZSA9IHRvRmFpbHVyZShyLCBjb250ZXh0LCBzdHJ1Y3QsIHZhbHVlKVxuXG4gICAgaWYgKGZhaWx1cmUpIHtcbiAgICAgIHlpZWxkIGZhaWx1cmVcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBDaGVjayBhIHZhbHVlIGFnYWluc3QgYSBzdHJ1Y3QsIHRyYXZlcnNpbmcgZGVlcGx5IGludG8gbmVzdGVkIHZhbHVlcywgYW5kXG4gKiByZXR1cm5pbmcgYW4gaXRlcmF0b3Igb2YgZmFpbHVyZXMgb3Igc3VjY2Vzcy5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24qIHJ1bjxULCBTPihcbiAgdmFsdWU6IHVua25vd24sXG4gIHN0cnVjdDogU3RydWN0PFQsIFM+LFxuICBvcHRpb25zOiB7XG4gICAgcGF0aD86IGFueVtdXG4gICAgYnJhbmNoPzogYW55W11cbiAgICBjb2VyY2U/OiBib29sZWFuXG4gICAgbWFzaz86IGJvb2xlYW5cbiAgfSA9IHt9XG4pOiBJdGVyYWJsZUl0ZXJhdG9yPFtGYWlsdXJlLCB1bmRlZmluZWRdIHwgW3VuZGVmaW5lZCwgVF0+IHtcbiAgY29uc3QgeyBwYXRoID0gW10sIGJyYW5jaCA9IFt2YWx1ZV0sIGNvZXJjZSA9IGZhbHNlLCBtYXNrID0gZmFsc2UgfSA9IG9wdGlvbnNcbiAgY29uc3QgY3R4OiBDb250ZXh0ID0geyBwYXRoLCBicmFuY2ggfVxuXG4gIGlmIChjb2VyY2UpIHtcbiAgICB2YWx1ZSA9IHN0cnVjdC5jb2VyY2VyKHZhbHVlLCBjdHgpXG5cbiAgICBpZiAoXG4gICAgICBtYXNrICYmXG4gICAgICBzdHJ1Y3QudHlwZSAhPT0gJ3R5cGUnICYmXG4gICAgICBpc09iamVjdChzdHJ1Y3Quc2NoZW1hKSAmJlxuICAgICAgaXNPYmplY3QodmFsdWUpICYmXG4gICAgICAhQXJyYXkuaXNBcnJheSh2YWx1ZSlcbiAgICApIHtcbiAgICAgIGZvciAoY29uc3Qga2V5IGluIHZhbHVlKSB7XG4gICAgICAgIGlmIChzdHJ1Y3Quc2NoZW1hW2tleV0gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIGRlbGV0ZSB2YWx1ZVtrZXldXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBsZXQgdmFsaWQgPSB0cnVlXG5cbiAgZm9yIChjb25zdCBmYWlsdXJlIG9mIHN0cnVjdC52YWxpZGF0b3IodmFsdWUsIGN0eCkpIHtcbiAgICB2YWxpZCA9IGZhbHNlXG4gICAgeWllbGQgW2ZhaWx1cmUsIHVuZGVmaW5lZF1cbiAgfVxuXG4gIGZvciAobGV0IFtrLCB2LCBzXSBvZiBzdHJ1Y3QuZW50cmllcyh2YWx1ZSwgY3R4KSkge1xuICAgIGNvbnN0IHRzID0gcnVuKHYsIHMgYXMgU3RydWN0LCB7XG4gICAgICBwYXRoOiBrID09PSB1bmRlZmluZWQgPyBwYXRoIDogWy4uLnBhdGgsIGtdLFxuICAgICAgYnJhbmNoOiBrID09PSB1bmRlZmluZWQgPyBicmFuY2ggOiBbLi4uYnJhbmNoLCB2XSxcbiAgICAgIGNvZXJjZSxcbiAgICAgIG1hc2ssXG4gICAgfSlcblxuICAgIGZvciAoY29uc3QgdCBvZiB0cykge1xuICAgICAgaWYgKHRbMF0pIHtcbiAgICAgICAgdmFsaWQgPSBmYWxzZVxuICAgICAgICB5aWVsZCBbdFswXSwgdW5kZWZpbmVkXVxuICAgICAgfSBlbHNlIGlmIChjb2VyY2UpIHtcbiAgICAgICAgdiA9IHRbMV1cblxuICAgICAgICBpZiAoayA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgdmFsdWUgPSB2XG4gICAgICAgIH0gZWxzZSBpZiAodmFsdWUgaW5zdGFuY2VvZiBNYXApIHtcbiAgICAgICAgICB2YWx1ZS5zZXQoaywgdilcbiAgICAgICAgfSBlbHNlIGlmICh2YWx1ZSBpbnN0YW5jZW9mIFNldCkge1xuICAgICAgICAgIHZhbHVlLmFkZCh2KVxuICAgICAgICB9IGVsc2UgaWYgKGlzT2JqZWN0KHZhbHVlKSkge1xuICAgICAgICAgIHZhbHVlW2tdID0gdlxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaWYgKHZhbGlkKSB7XG4gICAgZm9yIChjb25zdCBmYWlsdXJlIG9mIHN0cnVjdC5yZWZpbmVyKHZhbHVlIGFzIFQsIGN0eCkpIHtcbiAgICAgIHZhbGlkID0gZmFsc2VcbiAgICAgIHlpZWxkIFtmYWlsdXJlLCB1bmRlZmluZWRdXG4gICAgfVxuICB9XG5cbiAgaWYgKHZhbGlkKSB7XG4gICAgeWllbGQgW3VuZGVmaW5lZCwgdmFsdWUgYXMgVF1cbiAgfVxufVxuXG4vKipcbiAqIEFzc2lnbiBwcm9wZXJ0aWVzIGZyb20gb25lIHR5cGUgdG8gYW5vdGhlciwgb3ZlcndyaXRpbmcgZXhpc3RpbmcuXG4gKi9cblxuZXhwb3J0IHR5cGUgQXNzaWduPFQsIFU+ID0gU2ltcGxpZnk8VSAmIE9taXQ8VCwga2V5b2YgVT4+XG5cbi8qKlxuICogQSBzY2hlbWEgZm9yIGVudW0gc3RydWN0cy5cbiAqL1xuXG5leHBvcnQgdHlwZSBFbnVtU2NoZW1hPFQgZXh0ZW5kcyBzdHJpbmcgfCBudW1iZXI+ID0geyBbSyBpbiBUXTogSyB9XG5cbi8qKlxuICogQ2hlY2sgaWYgYSB0eXBlIGlzIGFuIGV4YWN0IG1hdGNoLlxuICovXG5cbmV4cG9ydCB0eXBlIElzTWF0Y2g8VCwgRz4gPSBUIGV4dGVuZHMgRyA/IChHIGV4dGVuZHMgVCA/IFQgOiBuZXZlcikgOiBuZXZlclxuXG4vKipcbiAqIENoZWNrIGlmIGEgdHlwZSBpcyBhIHJlY29yZCB0eXBlLlxuICovXG5cbmV4cG9ydCB0eXBlIElzUmVjb3JkPFQ+ID0gVCBleHRlbmRzIG9iamVjdFxuICA/IHN0cmluZyBleHRlbmRzIGtleW9mIFRcbiAgICA/IFRcbiAgICA6IG5ldmVyXG4gIDogbmV2ZXJcbi8qKlxuICogQ2hlY2sgaWYgYSB0eXBlIGlzIGEgdHVwbGUuXG4gKi9cblxuZXhwb3J0IHR5cGUgSXNUdXBsZTxUPiA9IFQgZXh0ZW5kcyBbYW55XVxuICA/IFRcbiAgOiBUIGV4dGVuZHMgW2FueSwgYW55XVxuICA/IFRcbiAgOiBUIGV4dGVuZHMgW2FueSwgYW55LCBhbnldXG4gID8gVFxuICA6IFQgZXh0ZW5kcyBbYW55LCBhbnksIGFueSwgYW55XVxuICA/IFRcbiAgOiBUIGV4dGVuZHMgW2FueSwgYW55LCBhbnksIGFueSwgYW55XVxuICA/IFRcbiAgOiBuZXZlclxuXG4vKipcbiAqIENoZWNrIGlmIGEgdHlwZSBpcyBhIHVuaW9uLlxuICovXG5cbmV4cG9ydCB0eXBlIElzVW5pb248VCwgVSBleHRlbmRzIFQgPSBUPiA9IChcbiAgVCBleHRlbmRzIGFueSA/IChVIGV4dGVuZHMgVCA/IGZhbHNlIDogdHJ1ZSkgOiBmYWxzZVxuKSBleHRlbmRzIGZhbHNlXG4gID8gbmV2ZXJcbiAgOiBUXG5cbi8qKlxuICogQSBzY2hlbWEgZm9yIG9iamVjdCBzdHJ1Y3RzLlxuICovXG5cbmV4cG9ydCB0eXBlIE9iamVjdFNjaGVtYSA9IFJlY29yZDxzdHJpbmcsIFN0cnVjdDxhbnksIGFueT4+XG5cbi8qKlxuICogSW5mZXIgYSB0eXBlIGZyb20gYW4gb2JqZWN0IHN0cnVjdCBzY2hlbWEuXG4gKi9cblxuZXhwb3J0IHR5cGUgT2JqZWN0VHlwZTxTIGV4dGVuZHMgT2JqZWN0U2NoZW1hPiA9IFNpbXBsaWZ5PFxuICBPcHRpb25hbGl6ZTx7IFtLIGluIGtleW9mIFNdOiBJbmZlcjxTW0tdPiB9PlxuPlxuXG4vKipcbiAqIE9taXQgcHJvcGVydGllcyBmcm9tIGEgdHlwZSB0aGF0IGV4dGVuZCBmcm9tIGEgc3BlY2lmaWMgdHlwZS5cbiAqL1xuXG5leHBvcnQgdHlwZSBPbWl0Qnk8VCwgVj4gPSBPbWl0PFxuICBULFxuICB7IFtLIGluIGtleW9mIFRdOiBWIGV4dGVuZHMgRXh0cmFjdDxUW0tdLCBWPiA/IEsgOiBuZXZlciB9W2tleW9mIFRdXG4+XG5cbi8qKlxuICogTm9ybWFsaXplIHByb3BlcnRpZXMgb2YgYSB0eXBlIHRoYXQgYWxsb3cgYHVuZGVmaW5lZGAgdG8gbWFrZSB0aGVtIG9wdGlvbmFsLlxuICovXG5cbmV4cG9ydCB0eXBlIE9wdGlvbmFsaXplPFMgZXh0ZW5kcyBvYmplY3Q+ID0gT21pdEJ5PFMsIHVuZGVmaW5lZD4gJlxuICBQYXJ0aWFsPFBpY2tCeTxTLCB1bmRlZmluZWQ+PlxuXG4vKipcbiAqIFRyYW5zZm9ybSBhbiBvYmplY3Qgc2NoZW1hIHR5cGUgdG8gcmVwcmVzZW50IGEgcGFydGlhbC5cbiAqL1xuXG5leHBvcnQgdHlwZSBQYXJ0aWFsT2JqZWN0U2NoZW1hPFMgZXh0ZW5kcyBPYmplY3RTY2hlbWE+ID0ge1xuICBbSyBpbiBrZXlvZiBTXTogU3RydWN0PEluZmVyPFNbS10+IHwgdW5kZWZpbmVkPlxufVxuXG4vKipcbiAqIFBpY2sgcHJvcGVydGllcyBmcm9tIGEgdHlwZSB0aGF0IGV4dGVuZCBmcm9tIGEgc3BlY2lmaWMgdHlwZS5cbiAqL1xuXG5leHBvcnQgdHlwZSBQaWNrQnk8VCwgVj4gPSBQaWNrPFxuICBULFxuICB7IFtLIGluIGtleW9mIFRdOiBWIGV4dGVuZHMgRXh0cmFjdDxUW0tdLCBWPiA/IEsgOiBuZXZlciB9W2tleW9mIFRdXG4+XG5cbi8qKlxuICogU2ltcGxpZmllcyBhIHR5cGUgZGVmaW5pdGlvbiB0byBpdHMgbW9zdCBiYXNpYyByZXByZXNlbnRhdGlvbi5cbiAqL1xuXG5leHBvcnQgdHlwZSBTaW1wbGlmeTxUPiA9IFQgZXh0ZW5kcyBhbnlbXSB8IERhdGVcbiAgPyBUXG4gIDogeyBbSyBpbiBrZXlvZiBUXTogVFtLXSB9ICYge31cblxuZXhwb3J0IHR5cGUgSWY8QiBleHRlbmRzIEJvb2xlYW4sIFRoZW4sIEVsc2U+ID0gQiBleHRlbmRzIHRydWUgPyBUaGVuIDogRWxzZVxuXG4vKipcbiAqIEEgc2NoZW1hIGZvciBhbnkgdHlwZSBvZiBzdHJ1Y3QuXG4gKi9cblxuZXhwb3J0IHR5cGUgU3RydWN0U2NoZW1hPFQ+ID0gW1RdIGV4dGVuZHMgW3N0cmluZ11cbiAgPyBbVF0gZXh0ZW5kcyBbSXNNYXRjaDxULCBzdHJpbmc+XVxuICAgID8gbnVsbFxuICAgIDogW1RdIGV4dGVuZHMgW0lzVW5pb248VD5dXG4gICAgPyBFbnVtU2NoZW1hPFQ+XG4gICAgOiBUXG4gIDogW1RdIGV4dGVuZHMgW251bWJlcl1cbiAgPyBbVF0gZXh0ZW5kcyBbSXNNYXRjaDxULCBudW1iZXI+XVxuICAgID8gbnVsbFxuICAgIDogW1RdIGV4dGVuZHMgW0lzVW5pb248VD5dXG4gICAgPyBFbnVtU2NoZW1hPFQ+XG4gICAgOiBUXG4gIDogW1RdIGV4dGVuZHMgW2Jvb2xlYW5dXG4gID8gW1RdIGV4dGVuZHMgW0lzTWF0Y2g8VCwgYm9vbGVhbj5dXG4gICAgPyBudWxsXG4gICAgOiBUXG4gIDogVCBleHRlbmRzXG4gICAgICB8IGJpZ2ludFxuICAgICAgfCBzeW1ib2xcbiAgICAgIHwgdW5kZWZpbmVkXG4gICAgICB8IG51bGxcbiAgICAgIHwgRnVuY3Rpb25cbiAgICAgIHwgRGF0ZVxuICAgICAgfCBFcnJvclxuICAgICAgfCBSZWdFeHBcbiAgICAgIHwgTWFwPGFueSwgYW55PlxuICAgICAgfCBXZWFrTWFwPGFueSwgYW55PlxuICAgICAgfCBTZXQ8YW55PlxuICAgICAgfCBXZWFrU2V0PGFueT5cbiAgICAgIHwgUHJvbWlzZTxhbnk+XG4gID8gbnVsbFxuICA6IFQgZXh0ZW5kcyBBcnJheTxpbmZlciBFPlxuICA/IFQgZXh0ZW5kcyBJc1R1cGxlPFQ+XG4gICAgPyBudWxsXG4gICAgOiBTdHJ1Y3Q8RT5cbiAgOiBUIGV4dGVuZHMgb2JqZWN0XG4gID8gVCBleHRlbmRzIElzUmVjb3JkPFQ+XG4gICAgPyBudWxsXG4gICAgOiB7IFtLIGluIGtleW9mIFRdOiBEZXNjcmliZTxUW0tdPiB9XG4gIDogbnVsbFxuXG4vKipcbiAqIEEgc2NoZW1hIGZvciB0dXBsZSBzdHJ1Y3RzLlxuICovXG5cbmV4cG9ydCB0eXBlIFR1cGxlU2NoZW1hPFQ+ID0geyBbSyBpbiBrZXlvZiBUXTogU3RydWN0PFRbS10+IH1cbiIsICJpbXBvcnQgeyB0b0ZhaWx1cmVzLCBzaGlmdEl0ZXJhdG9yLCBTdHJ1Y3RTY2hlbWEsIHJ1biB9IGZyb20gJy4vdXRpbHMnXG5pbXBvcnQgeyBTdHJ1Y3RFcnJvciwgRmFpbHVyZSB9IGZyb20gJy4vZXJyb3InXG5cbi8qKlxuICogYFN0cnVjdGAgb2JqZWN0cyBlbmNhcHN1bGF0ZSB0aGUgdmFsaWRhdGlvbiBsb2dpYyBmb3IgYSBzcGVjaWZpYyB0eXBlIG9mXG4gKiB2YWx1ZXMuIE9uY2UgY29uc3RydWN0ZWQsIHlvdSB1c2UgdGhlIGBhc3NlcnRgLCBgaXNgIG9yIGB2YWxpZGF0ZWAgaGVscGVycyB0b1xuICogdmFsaWRhdGUgdW5rbm93biBpbnB1dCBkYXRhIGFnYWluc3QgdGhlIHN0cnVjdC5cbiAqL1xuXG5leHBvcnQgY2xhc3MgU3RydWN0PFQgPSB1bmtub3duLCBTID0gdW5rbm93bj4ge1xuICByZWFkb25seSBUWVBFITogVFxuICB0eXBlOiBzdHJpbmdcbiAgc2NoZW1hOiBTXG4gIGNvZXJjZXI6ICh2YWx1ZTogdW5rbm93biwgY29udGV4dDogQ29udGV4dCkgPT4gdW5rbm93blxuICB2YWxpZGF0b3I6ICh2YWx1ZTogdW5rbm93biwgY29udGV4dDogQ29udGV4dCkgPT4gSXRlcmFibGU8RmFpbHVyZT5cbiAgcmVmaW5lcjogKHZhbHVlOiBULCBjb250ZXh0OiBDb250ZXh0KSA9PiBJdGVyYWJsZTxGYWlsdXJlPlxuICBlbnRyaWVzOiAoXG4gICAgdmFsdWU6IHVua25vd24sXG4gICAgY29udGV4dDogQ29udGV4dFxuICApID0+IEl0ZXJhYmxlPFtzdHJpbmcgfCBudW1iZXIsIHVua25vd24sIFN0cnVjdDxhbnk+IHwgU3RydWN0PG5ldmVyPl0+XG5cbiAgY29uc3RydWN0b3IocHJvcHM6IHtcbiAgICB0eXBlOiBzdHJpbmdcbiAgICBzY2hlbWE6IFNcbiAgICBjb2VyY2VyPzogQ29lcmNlclxuICAgIHZhbGlkYXRvcj86IFZhbGlkYXRvclxuICAgIHJlZmluZXI/OiBSZWZpbmVyPFQ+XG4gICAgZW50cmllcz86IFN0cnVjdDxULCBTPlsnZW50cmllcyddXG4gIH0pIHtcbiAgICBjb25zdCB7XG4gICAgICB0eXBlLFxuICAgICAgc2NoZW1hLFxuICAgICAgdmFsaWRhdG9yLFxuICAgICAgcmVmaW5lcixcbiAgICAgIGNvZXJjZXIgPSAodmFsdWU6IHVua25vd24pID0+IHZhbHVlLFxuICAgICAgZW50cmllcyA9IGZ1bmN0aW9uKiAoKSB7fSxcbiAgICB9ID0gcHJvcHNcblxuICAgIHRoaXMudHlwZSA9IHR5cGVcbiAgICB0aGlzLnNjaGVtYSA9IHNjaGVtYVxuICAgIHRoaXMuZW50cmllcyA9IGVudHJpZXNcbiAgICB0aGlzLmNvZXJjZXIgPSBjb2VyY2VyXG5cbiAgICBpZiAodmFsaWRhdG9yKSB7XG4gICAgICB0aGlzLnZhbGlkYXRvciA9ICh2YWx1ZSwgY29udGV4dCkgPT4ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSB2YWxpZGF0b3IodmFsdWUsIGNvbnRleHQpXG4gICAgICAgIHJldHVybiB0b0ZhaWx1cmVzKHJlc3VsdCwgY29udGV4dCwgdGhpcywgdmFsdWUpXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmFsaWRhdG9yID0gKCkgPT4gW11cbiAgICB9XG5cbiAgICBpZiAocmVmaW5lcikge1xuICAgICAgdGhpcy5yZWZpbmVyID0gKHZhbHVlLCBjb250ZXh0KSA9PiB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IHJlZmluZXIodmFsdWUsIGNvbnRleHQpXG4gICAgICAgIHJldHVybiB0b0ZhaWx1cmVzKHJlc3VsdCwgY29udGV4dCwgdGhpcywgdmFsdWUpXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucmVmaW5lciA9ICgpID0+IFtdXG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEFzc2VydCB0aGF0IGEgdmFsdWUgcGFzc2VzIHRoZSBzdHJ1Y3QncyB2YWxpZGF0aW9uLCB0aHJvd2luZyBpZiBpdCBkb2Vzbid0LlxuICAgKi9cblxuICBhc3NlcnQodmFsdWU6IHVua25vd24pOiBhc3NlcnRzIHZhbHVlIGlzIFQge1xuICAgIHJldHVybiBhc3NlcnQodmFsdWUsIHRoaXMpXG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgdmFsdWUgd2l0aCB0aGUgc3RydWN0J3MgY29lcmNpb24gbG9naWMsIHRoZW4gdmFsaWRhdGUgaXQuXG4gICAqL1xuXG4gIGNyZWF0ZSh2YWx1ZTogdW5rbm93bik6IFQge1xuICAgIHJldHVybiBjcmVhdGUodmFsdWUsIHRoaXMpXG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgYSB2YWx1ZSBwYXNzZXMgdGhlIHN0cnVjdCdzIHZhbGlkYXRpb24uXG4gICAqL1xuXG4gIGlzKHZhbHVlOiB1bmtub3duKTogdmFsdWUgaXMgVCB7XG4gICAgcmV0dXJuIGlzKHZhbHVlLCB0aGlzKVxuICB9XG5cbiAgLyoqXG4gICAqIE1hc2sgYSB2YWx1ZSwgY29lcmNpbmcgYW5kIHZhbGlkYXRpbmcgaXQsIGJ1dCByZXR1cm5pbmcgb25seSB0aGUgc3Vic2V0IG9mXG4gICAqIHByb3BlcnRpZXMgZGVmaW5lZCBieSB0aGUgc3RydWN0J3Mgc2NoZW1hLlxuICAgKi9cblxuICBtYXNrKHZhbHVlOiB1bmtub3duKTogVCB7XG4gICAgcmV0dXJuIG1hc2sodmFsdWUsIHRoaXMpXG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGUgYSB2YWx1ZSB3aXRoIHRoZSBzdHJ1Y3QncyB2YWxpZGF0aW9uIGxvZ2ljLCByZXR1cm5pbmcgYSB0dXBsZVxuICAgKiByZXByZXNlbnRpbmcgdGhlIHJlc3VsdC5cbiAgICpcbiAgICogWW91IG1heSBvcHRpb25hbGx5IHBhc3MgYHRydWVgIGZvciB0aGUgYHdpdGhDb2VyY2lvbmAgYXJndW1lbnQgdG8gY29lcmNlXG4gICAqIHRoZSB2YWx1ZSBiZWZvcmUgYXR0ZW1wdGluZyB0byB2YWxpZGF0ZSBpdC4gSWYgeW91IGRvLCB0aGUgcmVzdWx0IHdpbGxcbiAgICogY29udGFpbiB0aGUgY29lcmNlZCByZXN1bHQgd2hlbiBzdWNjZXNzZnVsLlxuICAgKi9cblxuICB2YWxpZGF0ZShcbiAgICB2YWx1ZTogdW5rbm93bixcbiAgICBvcHRpb25zOiB7XG4gICAgICBjb2VyY2U/OiBib29sZWFuXG4gICAgfSA9IHt9XG4gICk6IFtTdHJ1Y3RFcnJvciwgdW5kZWZpbmVkXSB8IFt1bmRlZmluZWQsIFRdIHtcbiAgICByZXR1cm4gdmFsaWRhdGUodmFsdWUsIHRoaXMsIG9wdGlvbnMpXG4gIH1cbn1cblxuLyoqXG4gKiBBc3NlcnQgdGhhdCBhIHZhbHVlIHBhc3NlcyBhIHN0cnVjdCwgdGhyb3dpbmcgaWYgaXQgZG9lc24ndC5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0PFQsIFM+KFxuICB2YWx1ZTogdW5rbm93bixcbiAgc3RydWN0OiBTdHJ1Y3Q8VCwgUz5cbik6IGFzc2VydHMgdmFsdWUgaXMgVCB7XG4gIGNvbnN0IHJlc3VsdCA9IHZhbGlkYXRlKHZhbHVlLCBzdHJ1Y3QpXG5cbiAgaWYgKHJlc3VsdFswXSkge1xuICAgIHRocm93IHJlc3VsdFswXVxuICB9XG59XG5cbi8qKlxuICogQ3JlYXRlIGEgdmFsdWUgd2l0aCB0aGUgY29lcmNpb24gbG9naWMgb2Ygc3RydWN0IGFuZCB2YWxpZGF0ZSBpdC5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlPFQsIFM+KHZhbHVlOiB1bmtub3duLCBzdHJ1Y3Q6IFN0cnVjdDxULCBTPik6IFQge1xuICBjb25zdCByZXN1bHQgPSB2YWxpZGF0ZSh2YWx1ZSwgc3RydWN0LCB7IGNvZXJjZTogdHJ1ZSB9KVxuXG4gIGlmIChyZXN1bHRbMF0pIHtcbiAgICB0aHJvdyByZXN1bHRbMF1cbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gcmVzdWx0WzFdXG4gIH1cbn1cblxuLyoqXG4gKiBNYXNrIGEgdmFsdWUsIHJldHVybmluZyBvbmx5IHRoZSBzdWJzZXQgb2YgcHJvcGVydGllcyBkZWZpbmVkIGJ5IGEgc3RydWN0LlxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBtYXNrPFQsIFM+KHZhbHVlOiB1bmtub3duLCBzdHJ1Y3Q6IFN0cnVjdDxULCBTPik6IFQge1xuICBjb25zdCByZXN1bHQgPSB2YWxpZGF0ZSh2YWx1ZSwgc3RydWN0LCB7IGNvZXJjZTogdHJ1ZSwgbWFzazogdHJ1ZSB9KVxuXG4gIGlmIChyZXN1bHRbMF0pIHtcbiAgICB0aHJvdyByZXN1bHRbMF1cbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gcmVzdWx0WzFdXG4gIH1cbn1cblxuLyoqXG4gKiBDaGVjayBpZiBhIHZhbHVlIHBhc3NlcyBhIHN0cnVjdC5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gaXM8VCwgUz4odmFsdWU6IHVua25vd24sIHN0cnVjdDogU3RydWN0PFQsIFM+KTogdmFsdWUgaXMgVCB7XG4gIGNvbnN0IHJlc3VsdCA9IHZhbGlkYXRlKHZhbHVlLCBzdHJ1Y3QpXG4gIHJldHVybiAhcmVzdWx0WzBdXG59XG5cbi8qKlxuICogVmFsaWRhdGUgYSB2YWx1ZSBhZ2FpbnN0IGEgc3RydWN0LCByZXR1cm5pbmcgYW4gZXJyb3IgaWYgaW52YWxpZCwgb3IgdGhlXG4gKiB2YWx1ZSAod2l0aCBwb3RlbnRpYWwgY29lcmNpb24pIGlmIHZhbGlkLlxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZTxULCBTPihcbiAgdmFsdWU6IHVua25vd24sXG4gIHN0cnVjdDogU3RydWN0PFQsIFM+LFxuICBvcHRpb25zOiB7XG4gICAgY29lcmNlPzogYm9vbGVhblxuICAgIG1hc2s/OiBib29sZWFuXG4gIH0gPSB7fVxuKTogW1N0cnVjdEVycm9yLCB1bmRlZmluZWRdIHwgW3VuZGVmaW5lZCwgVF0ge1xuICBjb25zdCB0dXBsZXMgPSBydW4odmFsdWUsIHN0cnVjdCwgb3B0aW9ucylcbiAgY29uc3QgdHVwbGUgPSBzaGlmdEl0ZXJhdG9yKHR1cGxlcykhXG5cbiAgaWYgKHR1cGxlWzBdKSB7XG4gICAgY29uc3QgZXJyb3IgPSBuZXcgU3RydWN0RXJyb3IodHVwbGVbMF0sIGZ1bmN0aW9uKiAoKSB7XG4gICAgICBmb3IgKGNvbnN0IHQgb2YgdHVwbGVzKSB7XG4gICAgICAgIGlmICh0WzBdKSB7XG4gICAgICAgICAgeWllbGQgdFswXVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSlcblxuICAgIHJldHVybiBbZXJyb3IsIHVuZGVmaW5lZF1cbiAgfSBlbHNlIHtcbiAgICBjb25zdCB2ID0gdHVwbGVbMV1cbiAgICByZXR1cm4gW3VuZGVmaW5lZCwgdl1cbiAgfVxufVxuXG4vKipcbiAqIEEgYENvbnRleHRgIGNvbnRhaW5zIGluZm9ybWF0aW9uIGFib3V0IHRoZSBjdXJyZW50IGxvY2F0aW9uIG9mIHRoZVxuICogdmFsaWRhdGlvbiBpbnNpZGUgdGhlIGluaXRpYWwgaW5wdXQgdmFsdWUuXG4gKi9cblxuZXhwb3J0IHR5cGUgQ29udGV4dCA9IHtcbiAgYnJhbmNoOiBBcnJheTxhbnk+XG4gIHBhdGg6IEFycmF5PGFueT5cbn1cblxuLyoqXG4gKiBBIHR5cGUgdXRpbGl0eSB0byBleHRyYWN0IHRoZSB0eXBlIGZyb20gYSBgU3RydWN0YCBjbGFzcy5cbiAqL1xuXG5leHBvcnQgdHlwZSBJbmZlcjxUIGV4dGVuZHMgU3RydWN0PGFueSwgYW55Pj4gPSBUWydUWVBFJ11cblxuLyoqXG4gKiBBIHR5cGUgdXRpbGl0eSB0byBkZXNjcmliZSB0aGF0IGEgc3RydWN0IHJlcHJlc2VudHMgYSBUeXBlU2NyaXB0IHR5cGUuXG4gKi9cblxuZXhwb3J0IHR5cGUgRGVzY3JpYmU8VD4gPSBTdHJ1Y3Q8VCwgU3RydWN0U2NoZW1hPFQ+PlxuXG4vKipcbiAqIEEgYFJlc3VsdGAgaXMgcmV0dXJuZWQgZnJvbSB2YWxpZGF0aW9uIGZ1bmN0aW9ucy5cbiAqL1xuXG5leHBvcnQgdHlwZSBSZXN1bHQgPVxuICB8IGJvb2xlYW5cbiAgfCBzdHJpbmdcbiAgfCBQYXJ0aWFsPEZhaWx1cmU+XG4gIHwgSXRlcmFibGU8Ym9vbGVhbiB8IHN0cmluZyB8IFBhcnRpYWw8RmFpbHVyZT4+XG5cbi8qKlxuICogQSBgQ29lcmNlcmAgdGFrZXMgYW4gdW5rbm93biB2YWx1ZSBhbmQgb3B0aW9uYWxseSBjb2VyY2VzIGl0LlxuICovXG5cbmV4cG9ydCB0eXBlIENvZXJjZXI8VCA9IHVua25vd24+ID0gKHZhbHVlOiBULCBjb250ZXh0OiBDb250ZXh0KSA9PiB1bmtub3duXG5cbi8qKlxuICogQSBgVmFsaWRhdG9yYCB0YWtlcyBhbiB1bmtub3duIHZhbHVlIGFuZCB2YWxpZGF0ZXMgaXQuXG4gKi9cblxuZXhwb3J0IHR5cGUgVmFsaWRhdG9yID0gKHZhbHVlOiB1bmtub3duLCBjb250ZXh0OiBDb250ZXh0KSA9PiBSZXN1bHRcblxuLyoqXG4gKiBBIGBSZWZpbmVyYCB0YWtlcyBhIHZhbHVlIG9mIGEga25vd24gdHlwZSBhbmQgdmFsaWRhdGVzIGl0IGFnYWluc3QgYSBmdXJ0aGVyXG4gKiBjb25zdHJhaW50LlxuICovXG5cbmV4cG9ydCB0eXBlIFJlZmluZXI8VD4gPSAodmFsdWU6IFQsIGNvbnRleHQ6IENvbnRleHQpID0+IFJlc3VsdFxuIiwgImltcG9ydCB7IFN0cnVjdCwgQ29udGV4dCwgVmFsaWRhdG9yIH0gZnJvbSAnLi4vc3RydWN0J1xuaW1wb3J0IHsgb2JqZWN0LCBvcHRpb25hbCB9IGZyb20gJy4vdHlwZXMnXG5pbXBvcnQgeyBPYmplY3RTY2hlbWEsIEFzc2lnbiwgT2JqZWN0VHlwZSwgUGFydGlhbE9iamVjdFNjaGVtYSB9IGZyb20gJy4uL3V0aWxzJ1xuXG4vKipcbiAqIENyZWF0ZSBhIG5ldyBzdHJ1Y3QgdGhhdCBjb21iaW5lcyB0aGUgcHJvcGVydGllcyBwcm9wZXJ0aWVzIGZyb20gbXVsdGlwbGVcbiAqIG9iamVjdCBzdHJ1Y3RzLlxuICpcbiAqIExpa2UgSmF2YVNjcmlwdCdzIGBPYmplY3QuYXNzaWduYCB1dGlsaXR5LlxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBhc3NpZ248QSBleHRlbmRzIE9iamVjdFNjaGVtYSwgQiBleHRlbmRzIE9iamVjdFNjaGVtYT4oXG4gIEE6IFN0cnVjdDxPYmplY3RUeXBlPEE+LCBBPixcbiAgQjogU3RydWN0PE9iamVjdFR5cGU8Qj4sIEI+XG4pOiBTdHJ1Y3Q8T2JqZWN0VHlwZTxBc3NpZ248QSwgQj4+LCBBc3NpZ248QSwgQj4+XG5leHBvcnQgZnVuY3Rpb24gYXNzaWduPFxuICBBIGV4dGVuZHMgT2JqZWN0U2NoZW1hLFxuICBCIGV4dGVuZHMgT2JqZWN0U2NoZW1hLFxuICBDIGV4dGVuZHMgT2JqZWN0U2NoZW1hXG4+KFxuICBBOiBTdHJ1Y3Q8T2JqZWN0VHlwZTxBPiwgQT4sXG4gIEI6IFN0cnVjdDxPYmplY3RUeXBlPEI+LCBCPixcbiAgQzogU3RydWN0PE9iamVjdFR5cGU8Qz4sIEM+XG4pOiBTdHJ1Y3Q8T2JqZWN0VHlwZTxBc3NpZ248QXNzaWduPEEsIEI+LCBDPj4sIEFzc2lnbjxBc3NpZ248QSwgQj4sIEM+PlxuZXhwb3J0IGZ1bmN0aW9uIGFzc2lnbjxcbiAgQSBleHRlbmRzIE9iamVjdFNjaGVtYSxcbiAgQiBleHRlbmRzIE9iamVjdFNjaGVtYSxcbiAgQyBleHRlbmRzIE9iamVjdFNjaGVtYSxcbiAgRCBleHRlbmRzIE9iamVjdFNjaGVtYVxuPihcbiAgQTogU3RydWN0PE9iamVjdFR5cGU8QT4sIEE+LFxuICBCOiBTdHJ1Y3Q8T2JqZWN0VHlwZTxCPiwgQj4sXG4gIEM6IFN0cnVjdDxPYmplY3RUeXBlPEM+LCBDPixcbiAgRDogU3RydWN0PE9iamVjdFR5cGU8RD4sIEQ+XG4pOiBTdHJ1Y3Q8XG4gIE9iamVjdFR5cGU8QXNzaWduPEFzc2lnbjxBc3NpZ248QSwgQj4sIEM+LCBEPj4sXG4gIEFzc2lnbjxBc3NpZ248QXNzaWduPEEsIEI+LCBDPiwgRD5cbj5cbmV4cG9ydCBmdW5jdGlvbiBhc3NpZ248XG4gIEEgZXh0ZW5kcyBPYmplY3RTY2hlbWEsXG4gIEIgZXh0ZW5kcyBPYmplY3RTY2hlbWEsXG4gIEMgZXh0ZW5kcyBPYmplY3RTY2hlbWEsXG4gIEQgZXh0ZW5kcyBPYmplY3RTY2hlbWEsXG4gIEUgZXh0ZW5kcyBPYmplY3RTY2hlbWFcbj4oXG4gIEE6IFN0cnVjdDxPYmplY3RUeXBlPEE+LCBBPixcbiAgQjogU3RydWN0PE9iamVjdFR5cGU8Qj4sIEI+LFxuICBDOiBTdHJ1Y3Q8T2JqZWN0VHlwZTxDPiwgQz4sXG4gIEQ6IFN0cnVjdDxPYmplY3RUeXBlPEQ+LCBEPixcbiAgRTogU3RydWN0PE9iamVjdFR5cGU8RT4sIEU+XG4pOiBTdHJ1Y3Q8XG4gIE9iamVjdFR5cGU8QXNzaWduPEFzc2lnbjxBc3NpZ248QXNzaWduPEEsIEI+LCBDPiwgRD4sIEU+PixcbiAgQXNzaWduPEFzc2lnbjxBc3NpZ248QXNzaWduPEEsIEI+LCBDPiwgRD4sIEU+XG4+XG5leHBvcnQgZnVuY3Rpb24gYXNzaWduKC4uLlN0cnVjdHM6IFN0cnVjdDxhbnk+W10pOiBhbnkge1xuICBjb25zdCBzY2hlbWFzID0gU3RydWN0cy5tYXAoKHMpID0+IHMuc2NoZW1hKVxuICBjb25zdCBzY2hlbWEgPSBPYmplY3QuYXNzaWduKHt9LCAuLi5zY2hlbWFzKVxuICByZXR1cm4gb2JqZWN0KHNjaGVtYSlcbn1cblxuLyoqXG4gKiBEZWZpbmUgYSBuZXcgc3RydWN0IHR5cGUgd2l0aCBhIGN1c3RvbSB2YWxpZGF0aW9uIGZ1bmN0aW9uLlxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBkZWZpbmU8VD4obmFtZTogc3RyaW5nLCB2YWxpZGF0b3I6IFZhbGlkYXRvcik6IFN0cnVjdDxULCBudWxsPiB7XG4gIHJldHVybiBuZXcgU3RydWN0KHsgdHlwZTogbmFtZSwgc2NoZW1hOiBudWxsLCB2YWxpZGF0b3IgfSlcbn1cblxuLyoqXG4gKiBDcmVhdGUgYSBuZXcgc3RydWN0IGJhc2VkIG9uIGFuIGV4aXN0aW5nIHN0cnVjdCwgYnV0IHRoZSB2YWx1ZSBpcyBhbGxvd2VkIHRvXG4gKiBiZSBgdW5kZWZpbmVkYC4gYGxvZ2Agd2lsbCBiZSBjYWxsZWQgaWYgdGhlIHZhbHVlIGlzIG5vdCBgdW5kZWZpbmVkYC5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gZGVwcmVjYXRlZDxUPihcbiAgc3RydWN0OiBTdHJ1Y3Q8VD4sXG4gIGxvZzogKHZhbHVlOiB1bmtub3duLCBjdHg6IENvbnRleHQpID0+IHZvaWRcbik6IFN0cnVjdDxUPiB7XG4gIHJldHVybiBuZXcgU3RydWN0KHtcbiAgICAuLi5zdHJ1Y3QsXG4gICAgcmVmaW5lcjogKHZhbHVlLCBjdHgpID0+IHZhbHVlID09PSB1bmRlZmluZWQgfHwgc3RydWN0LnJlZmluZXIodmFsdWUsIGN0eCksXG4gICAgdmFsaWRhdG9yKHZhbHVlLCBjdHgpIHtcbiAgICAgIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHJldHVybiB0cnVlXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBsb2codmFsdWUsIGN0eClcbiAgICAgICAgcmV0dXJuIHN0cnVjdC52YWxpZGF0b3IodmFsdWUsIGN0eClcbiAgICAgIH1cbiAgICB9LFxuICB9KVxufVxuXG4vKipcbiAqIENyZWF0ZSBhIHN0cnVjdCB3aXRoIGR5bmFtaWMgdmFsaWRhdGlvbiBsb2dpYy5cbiAqXG4gKiBUaGUgY2FsbGJhY2sgd2lsbCByZWNlaXZlIHRoZSB2YWx1ZSBjdXJyZW50bHkgYmVpbmcgdmFsaWRhdGVkLCBhbmQgbXVzdFxuICogcmV0dXJuIGEgc3RydWN0IG9iamVjdCB0byB2YWxpZGF0ZSBpdCB3aXRoLiBUaGlzIGNhbiBiZSB1c2VmdWwgdG8gbW9kZWxcbiAqIHZhbGlkYXRpb24gbG9naWMgdGhhdCBjaGFuZ2VzIGJhc2VkIG9uIGl0cyBpbnB1dC5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gZHluYW1pYzxUPihcbiAgZm46ICh2YWx1ZTogdW5rbm93biwgY3R4OiBDb250ZXh0KSA9PiBTdHJ1Y3Q8VCwgYW55PlxuKTogU3RydWN0PFQsIG51bGw+IHtcbiAgcmV0dXJuIG5ldyBTdHJ1Y3Qoe1xuICAgIHR5cGU6ICdkeW5hbWljJyxcbiAgICBzY2hlbWE6IG51bGwsXG4gICAgKmVudHJpZXModmFsdWUsIGN0eCkge1xuICAgICAgY29uc3Qgc3RydWN0ID0gZm4odmFsdWUsIGN0eClcbiAgICAgIHlpZWxkKiBzdHJ1Y3QuZW50cmllcyh2YWx1ZSwgY3R4KVxuICAgIH0sXG4gICAgdmFsaWRhdG9yKHZhbHVlLCBjdHgpIHtcbiAgICAgIGNvbnN0IHN0cnVjdCA9IGZuKHZhbHVlLCBjdHgpXG4gICAgICByZXR1cm4gc3RydWN0LnZhbGlkYXRvcih2YWx1ZSwgY3R4KVxuICAgIH0sXG4gICAgY29lcmNlcih2YWx1ZSwgY3R4KSB7XG4gICAgICBjb25zdCBzdHJ1Y3QgPSBmbih2YWx1ZSwgY3R4KVxuICAgICAgcmV0dXJuIHN0cnVjdC5jb2VyY2VyKHZhbHVlLCBjdHgpXG4gICAgfSxcbiAgfSlcbn1cblxuLyoqXG4gKiBDcmVhdGUgYSBzdHJ1Y3Qgd2l0aCBsYXppbHkgZXZhbHVhdGVkIHZhbGlkYXRpb24gbG9naWMuXG4gKlxuICogVGhlIGZpcnN0IHRpbWUgdmFsaWRhdGlvbiBpcyBydW4gd2l0aCB0aGUgc3RydWN0LCB0aGUgY2FsbGJhY2sgd2lsbCBiZSBjYWxsZWRcbiAqIGFuZCBtdXN0IHJldHVybiBhIHN0cnVjdCBvYmplY3QgdG8gdXNlLiBUaGlzIGlzIHVzZWZ1bCBmb3IgY2FzZXMgd2hlcmUgeW91XG4gKiB3YW50IHRvIGhhdmUgc2VsZi1yZWZlcmVudGlhbCBzdHJ1Y3RzIGZvciBuZXN0ZWQgZGF0YSBzdHJ1Y3R1cmVzIHRvIGF2b2lkIGFcbiAqIGNpcmN1bGFyIGRlZmluaXRpb24gcHJvYmxlbS5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gbGF6eTxUPihmbjogKCkgPT4gU3RydWN0PFQsIGFueT4pOiBTdHJ1Y3Q8VCwgbnVsbD4ge1xuICBsZXQgc3RydWN0OiBTdHJ1Y3Q8VCwgYW55PiB8IHVuZGVmaW5lZFxuICByZXR1cm4gbmV3IFN0cnVjdCh7XG4gICAgdHlwZTogJ2xhenknLFxuICAgIHNjaGVtYTogbnVsbCxcbiAgICAqZW50cmllcyh2YWx1ZSwgY3R4KSB7XG4gICAgICBzdHJ1Y3QgPz89IGZuKClcbiAgICAgIHlpZWxkKiBzdHJ1Y3QuZW50cmllcyh2YWx1ZSwgY3R4KVxuICAgIH0sXG4gICAgdmFsaWRhdG9yKHZhbHVlLCBjdHgpIHtcbiAgICAgIHN0cnVjdCA/Pz0gZm4oKVxuICAgICAgcmV0dXJuIHN0cnVjdC52YWxpZGF0b3IodmFsdWUsIGN0eClcbiAgICB9LFxuICAgIGNvZXJjZXIodmFsdWUsIGN0eCkge1xuICAgICAgc3RydWN0ID8/PSBmbigpXG4gICAgICByZXR1cm4gc3RydWN0LmNvZXJjZXIodmFsdWUsIGN0eClcbiAgICB9LFxuICB9KVxufVxuXG4vKipcbiAqIENyZWF0ZSBhIG5ldyBzdHJ1Y3QgYmFzZWQgb24gYW4gZXhpc3Rpbmcgb2JqZWN0IHN0cnVjdCwgYnV0IGV4Y2x1ZGluZ1xuICogc3BlY2lmaWMgcHJvcGVydGllcy5cbiAqXG4gKiBMaWtlIFR5cGVTY3JpcHQncyBgT21pdGAgdXRpbGl0eS5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gb21pdDxTIGV4dGVuZHMgT2JqZWN0U2NoZW1hLCBLIGV4dGVuZHMga2V5b2YgUz4oXG4gIHN0cnVjdDogU3RydWN0PE9iamVjdFR5cGU8Uz4sIFM+LFxuICBrZXlzOiBLW11cbik6IFN0cnVjdDxPYmplY3RUeXBlPE9taXQ8UywgSz4+LCBPbWl0PFMsIEs+PiB7XG4gIGNvbnN0IHsgc2NoZW1hIH0gPSBzdHJ1Y3RcbiAgY29uc3Qgc3Vic2NoZW1hOiBhbnkgPSB7IC4uLnNjaGVtYSB9XG5cbiAgZm9yIChjb25zdCBrZXkgb2Yga2V5cykge1xuICAgIGRlbGV0ZSBzdWJzY2hlbWFba2V5XVxuICB9XG5cbiAgcmV0dXJuIG9iamVjdChzdWJzY2hlbWEgYXMgT21pdDxTLCBLPilcbn1cblxuLyoqXG4gKiBDcmVhdGUgYSBuZXcgc3RydWN0IGJhc2VkIG9uIGFuIGV4aXN0aW5nIG9iamVjdCBzdHJ1Y3QsIGJ1dCB3aXRoIGFsbCBvZiBpdHNcbiAqIHByb3BlcnRpZXMgYWxsb3dlZCB0byBiZSBgdW5kZWZpbmVkYC5cbiAqXG4gKiBMaWtlIFR5cGVTY3JpcHQncyBgUGFydGlhbGAgdXRpbGl0eS5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gcGFydGlhbDxTIGV4dGVuZHMgT2JqZWN0U2NoZW1hPihcbiAgc3RydWN0OiBTdHJ1Y3Q8T2JqZWN0VHlwZTxTPiwgUz4gfCBTXG4pOiBTdHJ1Y3Q8T2JqZWN0VHlwZTxQYXJ0aWFsT2JqZWN0U2NoZW1hPFM+PiwgUGFydGlhbE9iamVjdFNjaGVtYTxTPj4ge1xuICBjb25zdCBzY2hlbWE6IGFueSA9XG4gICAgc3RydWN0IGluc3RhbmNlb2YgU3RydWN0ID8geyAuLi5zdHJ1Y3Quc2NoZW1hIH0gOiB7IC4uLnN0cnVjdCB9XG5cbiAgZm9yIChjb25zdCBrZXkgaW4gc2NoZW1hKSB7XG4gICAgc2NoZW1hW2tleV0gPSBvcHRpb25hbChzY2hlbWFba2V5XSlcbiAgfVxuXG4gIHJldHVybiBvYmplY3Qoc2NoZW1hKSBhcyBhbnlcbn1cblxuLyoqXG4gKiBDcmVhdGUgYSBuZXcgc3RydWN0IGJhc2VkIG9uIGFuIGV4aXN0aW5nIG9iamVjdCBzdHJ1Y3QsIGJ1dCBvbmx5IGluY2x1ZGluZ1xuICogc3BlY2lmaWMgcHJvcGVydGllcy5cbiAqXG4gKiBMaWtlIFR5cGVTY3JpcHQncyBgUGlja2AgdXRpbGl0eS5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gcGljazxTIGV4dGVuZHMgT2JqZWN0U2NoZW1hLCBLIGV4dGVuZHMga2V5b2YgUz4oXG4gIHN0cnVjdDogU3RydWN0PE9iamVjdFR5cGU8Uz4sIFM+LFxuICBrZXlzOiBLW11cbik6IFN0cnVjdDxPYmplY3RUeXBlPFBpY2s8UywgSz4+LCBQaWNrPFMsIEs+PiB7XG4gIGNvbnN0IHsgc2NoZW1hIH0gPSBzdHJ1Y3RcbiAgY29uc3Qgc3Vic2NoZW1hOiBhbnkgPSB7fVxuXG4gIGZvciAoY29uc3Qga2V5IG9mIGtleXMpIHtcbiAgICBzdWJzY2hlbWFba2V5XSA9IHNjaGVtYVtrZXldXG4gIH1cblxuICByZXR1cm4gb2JqZWN0KHN1YnNjaGVtYSBhcyBQaWNrPFMsIEs+KVxufVxuXG4vKipcbiAqIERlZmluZSBhIG5ldyBzdHJ1Y3QgdHlwZSB3aXRoIGEgY3VzdG9tIHZhbGlkYXRpb24gZnVuY3Rpb24uXG4gKlxuICogQGRlcHJlY2F0ZWQgVGhpcyBmdW5jdGlvbiBoYXMgYmVlbiByZW5hbWVkIHRvIGBkZWZpbmVgLlxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBzdHJ1Y3Q8VD4obmFtZTogc3RyaW5nLCB2YWxpZGF0b3I6IFZhbGlkYXRvcik6IFN0cnVjdDxULCBudWxsPiB7XG4gIGNvbnNvbGUud2FybihcbiAgICAnc3VwZXJzdHJ1Y3RAMC4xMSAtIFRoZSBgc3RydWN0YCBoZWxwZXIgaGFzIGJlZW4gcmVuYW1lZCB0byBgZGVmaW5lYC4nXG4gIClcblxuICByZXR1cm4gZGVmaW5lKG5hbWUsIHZhbGlkYXRvcilcbn1cbiIsICJpbXBvcnQgeyBJbmZlciwgU3RydWN0IH0gZnJvbSAnLi4vc3RydWN0J1xuaW1wb3J0IHsgZGVmaW5lIH0gZnJvbSAnLi91dGlsaXRpZXMnXG5pbXBvcnQge1xuICBUdXBsZVNjaGVtYSxcbiAgT2JqZWN0U2NoZW1hLFxuICBPYmplY3RUeXBlLFxuICBwcmludCxcbiAgcnVuLFxuICBpc09iamVjdCxcbn0gZnJvbSAnLi4vdXRpbHMnXG5cbi8qKlxuICogRW5zdXJlIHRoYXQgYW55IHZhbHVlIHBhc3NlcyB2YWxpZGF0aW9uLlxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBhbnkoKTogU3RydWN0PGFueSwgbnVsbD4ge1xuICByZXR1cm4gZGVmaW5lKCdhbnknLCAoKSA9PiB0cnVlKVxufVxuXG4vKipcbiAqIEVuc3VyZSB0aGF0IGEgdmFsdWUgaXMgYW4gYXJyYXkgYW5kIHRoYXQgaXRzIGVsZW1lbnRzIGFyZSBvZiBhIHNwZWNpZmljIHR5cGUuXG4gKlxuICogTm90ZTogSWYgeW91IG9taXQgdGhlIGVsZW1lbnQgc3RydWN0LCB0aGUgYXJyYXlzIGVsZW1lbnRzIHdpbGwgbm90IGJlXG4gKiBpdGVyYXRlZCBhdCBhbGwuIFRoaXMgY2FuIGJlIGhlbHBmdWwgZm9yIGNhc2VzIHdoZXJlIHBlcmZvcm1hbmNlIGlzIGNyaXRpY2FsLFxuICogYW5kIGl0IGlzIHByZWZlcnJlZCB0byB1c2luZyBgYXJyYXkoYW55KCkpYC5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gYXJyYXk8VCBleHRlbmRzIFN0cnVjdDxhbnk+PihFbGVtZW50OiBUKTogU3RydWN0PEluZmVyPFQ+W10sIFQ+XG5leHBvcnQgZnVuY3Rpb24gYXJyYXkoKTogU3RydWN0PHVua25vd25bXSwgdW5kZWZpbmVkPlxuZXhwb3J0IGZ1bmN0aW9uIGFycmF5PFQgZXh0ZW5kcyBTdHJ1Y3Q8YW55Pj4oRWxlbWVudD86IFQpOiBhbnkge1xuICByZXR1cm4gbmV3IFN0cnVjdCh7XG4gICAgdHlwZTogJ2FycmF5JyxcbiAgICBzY2hlbWE6IEVsZW1lbnQsXG4gICAgKmVudHJpZXModmFsdWUpIHtcbiAgICAgIGlmIChFbGVtZW50ICYmIEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICAgIGZvciAoY29uc3QgW2ksIHZdIG9mIHZhbHVlLmVudHJpZXMoKSkge1xuICAgICAgICAgIHlpZWxkIFtpLCB2LCBFbGVtZW50XVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSxcbiAgICBjb2VyY2VyKHZhbHVlKSB7XG4gICAgICByZXR1cm4gQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyB2YWx1ZS5zbGljZSgpIDogdmFsdWVcbiAgICB9LFxuICAgIHZhbGlkYXRvcih2YWx1ZSkge1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgQXJyYXkuaXNBcnJheSh2YWx1ZSkgfHxcbiAgICAgICAgYEV4cGVjdGVkIGFuIGFycmF5IHZhbHVlLCBidXQgcmVjZWl2ZWQ6ICR7cHJpbnQodmFsdWUpfWBcbiAgICAgIClcbiAgICB9LFxuICB9KVxufVxuXG4vKipcbiAqIEVuc3VyZSB0aGF0IGEgdmFsdWUgaXMgYSBib29sZWFuLlxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBib29sZWFuKCk6IFN0cnVjdDxib29sZWFuLCBudWxsPiB7XG4gIHJldHVybiBkZWZpbmUoJ2Jvb2xlYW4nLCAodmFsdWUpID0+IHtcbiAgICByZXR1cm4gdHlwZW9mIHZhbHVlID09PSAnYm9vbGVhbidcbiAgfSlcbn1cblxuLyoqXG4gKiBFbnN1cmUgdGhhdCBhIHZhbHVlIGlzIGEgdmFsaWQgYERhdGVgLlxuICpcbiAqIE5vdGU6IHRoaXMgYWxzbyBlbnN1cmVzIHRoYXQgdGhlIHZhbHVlIGlzICpub3QqIGFuIGludmFsaWQgYERhdGVgIG9iamVjdCxcbiAqIHdoaWNoIGNhbiBvY2N1ciB3aGVuIHBhcnNpbmcgYSBkYXRlIGZhaWxzIGJ1dCBzdGlsbCByZXR1cm5zIGEgYERhdGVgLlxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBkYXRlKCk6IFN0cnVjdDxEYXRlLCBudWxsPiB7XG4gIHJldHVybiBkZWZpbmUoJ2RhdGUnLCAodmFsdWUpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgKHZhbHVlIGluc3RhbmNlb2YgRGF0ZSAmJiAhaXNOYU4odmFsdWUuZ2V0VGltZSgpKSkgfHxcbiAgICAgIGBFeHBlY3RlZCBhIHZhbGlkIFxcYERhdGVcXGAgb2JqZWN0LCBidXQgcmVjZWl2ZWQ6ICR7cHJpbnQodmFsdWUpfWBcbiAgICApXG4gIH0pXG59XG5cbi8qKlxuICogRW5zdXJlIHRoYXQgYSB2YWx1ZSBpcyBvbmUgb2YgYSBzZXQgb2YgcG90ZW50aWFsIHZhbHVlcy5cbiAqXG4gKiBOb3RlOiBhZnRlciBjcmVhdGluZyB0aGUgc3RydWN0LCB5b3UgY2FuIGFjY2VzcyB0aGUgZGVmaW5pdGlvbiBvZiB0aGVcbiAqIHBvdGVudGlhbCB2YWx1ZXMgYXMgYHN0cnVjdC5zY2hlbWFgLlxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBlbnVtczxUIGV4dGVuZHMgbnVtYmVyPihcbiAgdmFsdWVzOiByZWFkb25seSBUW11cbik6IFN0cnVjdDxULCB7IFtLIGluIFRbXVtudW1iZXJdXTogSyB9PlxuZXhwb3J0IGZ1bmN0aW9uIGVudW1zPFQgZXh0ZW5kcyBzdHJpbmc+KFxuICB2YWx1ZXM6IHJlYWRvbmx5IFRbXVxuKTogU3RydWN0PFQsIHsgW0sgaW4gVFtdW251bWJlcl1dOiBLIH0+XG5leHBvcnQgZnVuY3Rpb24gZW51bXM8VCBleHRlbmRzIG51bWJlciB8IHN0cmluZz4odmFsdWVzOiByZWFkb25seSBUW10pOiBhbnkge1xuICBjb25zdCBzY2hlbWE6IGFueSA9IHt9XG4gIGNvbnN0IGRlc2NyaXB0aW9uID0gdmFsdWVzLm1hcCgodikgPT4gcHJpbnQodikpLmpvaW4oKVxuXG4gIGZvciAoY29uc3Qga2V5IG9mIHZhbHVlcykge1xuICAgIHNjaGVtYVtrZXldID0ga2V5XG4gIH1cblxuICByZXR1cm4gbmV3IFN0cnVjdCh7XG4gICAgdHlwZTogJ2VudW1zJyxcbiAgICBzY2hlbWEsXG4gICAgdmFsaWRhdG9yKHZhbHVlKSB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICB2YWx1ZXMuaW5jbHVkZXModmFsdWUgYXMgYW55KSB8fFxuICAgICAgICBgRXhwZWN0ZWQgb25lIG9mIFxcYCR7ZGVzY3JpcHRpb259XFxgLCBidXQgcmVjZWl2ZWQ6ICR7cHJpbnQodmFsdWUpfWBcbiAgICAgIClcbiAgICB9LFxuICB9KVxufVxuXG4vKipcbiAqIEVuc3VyZSB0aGF0IGEgdmFsdWUgaXMgYSBmdW5jdGlvbi5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gZnVuYygpOiBTdHJ1Y3Q8RnVuY3Rpb24sIG51bGw+IHtcbiAgcmV0dXJuIGRlZmluZSgnZnVuYycsICh2YWx1ZSkgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICB0eXBlb2YgdmFsdWUgPT09ICdmdW5jdGlvbicgfHxcbiAgICAgIGBFeHBlY3RlZCBhIGZ1bmN0aW9uLCBidXQgcmVjZWl2ZWQ6ICR7cHJpbnQodmFsdWUpfWBcbiAgICApXG4gIH0pXG59XG5cbi8qKlxuICogRW5zdXJlIHRoYXQgYSB2YWx1ZSBpcyBhbiBpbnN0YW5jZSBvZiBhIHNwZWNpZmljIGNsYXNzLlxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBpbnN0YW5jZTxUIGV4dGVuZHMgeyBuZXcgKC4uLmFyZ3M6IGFueSk6IGFueSB9PihcbiAgQ2xhc3M6IFRcbik6IFN0cnVjdDxJbnN0YW5jZVR5cGU8VD4sIG51bGw+IHtcbiAgcmV0dXJuIGRlZmluZSgnaW5zdGFuY2UnLCAodmFsdWUpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgdmFsdWUgaW5zdGFuY2VvZiBDbGFzcyB8fFxuICAgICAgYEV4cGVjdGVkIGEgXFxgJHtDbGFzcy5uYW1lfVxcYCBpbnN0YW5jZSwgYnV0IHJlY2VpdmVkOiAke3ByaW50KHZhbHVlKX1gXG4gICAgKVxuICB9KVxufVxuXG4vKipcbiAqIEVuc3VyZSB0aGF0IGEgdmFsdWUgaXMgYW4gaW50ZWdlci5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gaW50ZWdlcigpOiBTdHJ1Y3Q8bnVtYmVyLCBudWxsPiB7XG4gIHJldHVybiBkZWZpbmUoJ2ludGVnZXInLCAodmFsdWUpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgKHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicgJiYgIWlzTmFOKHZhbHVlKSAmJiBOdW1iZXIuaXNJbnRlZ2VyKHZhbHVlKSkgfHxcbiAgICAgIGBFeHBlY3RlZCBhbiBpbnRlZ2VyLCBidXQgcmVjZWl2ZWQ6ICR7cHJpbnQodmFsdWUpfWBcbiAgICApXG4gIH0pXG59XG5cbi8qKlxuICogRW5zdXJlIHRoYXQgYSB2YWx1ZSBtYXRjaGVzIGFsbCBvZiBhIHNldCBvZiB0eXBlcy5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gaW50ZXJzZWN0aW9uPEE+KFN0cnVjdHM6IFR1cGxlU2NoZW1hPFtBXT4pOiBTdHJ1Y3Q8QSwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiBpbnRlcnNlY3Rpb248QSwgQj4oXG4gIFN0cnVjdHM6IFR1cGxlU2NoZW1hPFtBLCBCXT5cbik6IFN0cnVjdDxBICYgQiwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiBpbnRlcnNlY3Rpb248QSwgQiwgQz4oXG4gIFN0cnVjdHM6IFR1cGxlU2NoZW1hPFtBLCBCLCBDXT5cbik6IFN0cnVjdDxBICYgQiAmIEMsIG51bGw+XG5leHBvcnQgZnVuY3Rpb24gaW50ZXJzZWN0aW9uPEEsIEIsIEMsIEQ+KFxuICBTdHJ1Y3RzOiBUdXBsZVNjaGVtYTxbQSwgQiwgQywgRF0+XG4pOiBTdHJ1Y3Q8QSAmIEIgJiBDICYgRCwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiBpbnRlcnNlY3Rpb248QSwgQiwgQywgRCwgRT4oXG4gIFN0cnVjdHM6IFR1cGxlU2NoZW1hPFtBLCBCLCBDLCBELCBFXT5cbik6IFN0cnVjdDxBICYgQiAmIEMgJiBEICYgRSwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiBpbnRlcnNlY3Rpb248QSwgQiwgQywgRCwgRSwgRj4oXG4gIFN0cnVjdHM6IFR1cGxlU2NoZW1hPFtBLCBCLCBDLCBELCBFLCBGXT5cbik6IFN0cnVjdDxBICYgQiAmIEMgJiBEICYgRSAmIEYsIG51bGw+XG5leHBvcnQgZnVuY3Rpb24gaW50ZXJzZWN0aW9uPEEsIEIsIEMsIEQsIEUsIEYsIEc+KFxuICBTdHJ1Y3RzOiBUdXBsZVNjaGVtYTxbQSwgQiwgQywgRCwgRSwgRiwgR10+XG4pOiBTdHJ1Y3Q8QSAmIEIgJiBDICYgRCAmIEUgJiBGICYgRywgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiBpbnRlcnNlY3Rpb248QSwgQiwgQywgRCwgRSwgRiwgRywgSD4oXG4gIFN0cnVjdHM6IFR1cGxlU2NoZW1hPFtBLCBCLCBDLCBELCBFLCBGLCBHLCBIXT5cbik6IFN0cnVjdDxBICYgQiAmIEMgJiBEICYgRSAmIEYgJiBHICYgSCwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiBpbnRlcnNlY3Rpb248QSwgQiwgQywgRCwgRSwgRiwgRywgSCwgST4oXG4gIFN0cnVjdHM6IFR1cGxlU2NoZW1hPFtBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJXT5cbik6IFN0cnVjdDxBICYgQiAmIEMgJiBEICYgRSAmIEYgJiBHICYgSCAmIEksIG51bGw+XG5leHBvcnQgZnVuY3Rpb24gaW50ZXJzZWN0aW9uPEEsIEIsIEMsIEQsIEUsIEYsIEcsIEgsIEksIEo+KFxuICBTdHJ1Y3RzOiBUdXBsZVNjaGVtYTxbQSwgQiwgQywgRCwgRSwgRiwgRywgSCwgSSwgSl0+XG4pOiBTdHJ1Y3Q8QSAmIEIgJiBDICYgRCAmIEUgJiBGICYgRyAmIEggJiBJICYgSiwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiBpbnRlcnNlY3Rpb248QSwgQiwgQywgRCwgRSwgRiwgRywgSCwgSSwgSiwgSz4oXG4gIFN0cnVjdHM6IFR1cGxlU2NoZW1hPFtBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJLCBKLCBLXT5cbik6IFN0cnVjdDxBICYgQiAmIEMgJiBEICYgRSAmIEYgJiBHICYgSCAmIEkgJiBKICYgSywgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiBpbnRlcnNlY3Rpb248QSwgQiwgQywgRCwgRSwgRiwgRywgSCwgSSwgSiwgSywgTD4oXG4gIFN0cnVjdHM6IFR1cGxlU2NoZW1hPFtBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJLCBKLCBLLCBMXT5cbik6IFN0cnVjdDxBICYgQiAmIEMgJiBEICYgRSAmIEYgJiBHICYgSCAmIEkgJiBKICYgSyAmIEwsIG51bGw+XG5leHBvcnQgZnVuY3Rpb24gaW50ZXJzZWN0aW9uPEEsIEIsIEMsIEQsIEUsIEYsIEcsIEgsIEksIEosIEssIEwsIE0+KFxuICBTdHJ1Y3RzOiBUdXBsZVNjaGVtYTxbQSwgQiwgQywgRCwgRSwgRiwgRywgSCwgSSwgSiwgSywgTCwgTV0+XG4pOiBTdHJ1Y3Q8QSAmIEIgJiBDICYgRCAmIEUgJiBGICYgRyAmIEggJiBJICYgSiAmIEsgJiBMICYgTSwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiBpbnRlcnNlY3Rpb248QSwgQiwgQywgRCwgRSwgRiwgRywgSCwgSSwgSiwgSywgTCwgTSwgTj4oXG4gIFN0cnVjdHM6IFR1cGxlU2NoZW1hPFtBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJLCBKLCBLLCBMLCBNLCBOXT5cbik6IFN0cnVjdDxBICYgQiAmIEMgJiBEICYgRSAmIEYgJiBHICYgSCAmIEkgJiBKICYgSyAmIEwgJiBNICYgTiwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiBpbnRlcnNlY3Rpb248QSwgQiwgQywgRCwgRSwgRiwgRywgSCwgSSwgSiwgSywgTCwgTSwgTiwgTz4oXG4gIFN0cnVjdHM6IFR1cGxlU2NoZW1hPFtBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJLCBKLCBLLCBMLCBNLCBOLCBPXT5cbik6IFN0cnVjdDxBICYgQiAmIEMgJiBEICYgRSAmIEYgJiBHICYgSCAmIEkgJiBKICYgSyAmIEwgJiBNICYgTiAmIE8sIG51bGw+XG5leHBvcnQgZnVuY3Rpb24gaW50ZXJzZWN0aW9uPEEsIEIsIEMsIEQsIEUsIEYsIEcsIEgsIEksIEosIEssIEwsIE0sIE4sIE8sIFA+KFxuICBTdHJ1Y3RzOiBUdXBsZVNjaGVtYTxbQSwgQiwgQywgRCwgRSwgRiwgRywgSCwgSSwgSiwgSywgTCwgTSwgTiwgTywgUF0+XG4pOiBTdHJ1Y3Q8QSAmIEIgJiBDICYgRCAmIEUgJiBGICYgRyAmIEggJiBJICYgSiAmIEsgJiBMICYgTSAmIE4gJiBPICYgUCwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiBpbnRlcnNlY3Rpb248QSwgQiwgQywgRCwgRSwgRiwgRywgSCwgSSwgSiwgSywgTCwgTSwgTiwgTywgUCwgUT4oXG4gIFN0cnVjdHM6IFR1cGxlU2NoZW1hPFtBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJLCBKLCBLLCBMLCBNLCBOLCBPLCBQLCBRXT5cbik6IFN0cnVjdDxcbiAgQSAmIEIgJiBDICYgRCAmIEUgJiBGICYgRyAmIEggJiBJICYgSiAmIEsgJiBMICYgTSAmIE4gJiBPICYgUCAmIFEsXG4gIG51bGxcbj5cbmV4cG9ydCBmdW5jdGlvbiBpbnRlcnNlY3Rpb24oU3RydWN0czogQXJyYXk8U3RydWN0PGFueSwgYW55Pj4pOiBhbnkge1xuICByZXR1cm4gbmV3IFN0cnVjdCh7XG4gICAgdHlwZTogJ2ludGVyc2VjdGlvbicsXG4gICAgc2NoZW1hOiBudWxsLFxuICAgICplbnRyaWVzKHZhbHVlLCBjdHgpIHtcbiAgICAgIGZvciAoY29uc3QgUyBvZiBTdHJ1Y3RzKSB7XG4gICAgICAgIHlpZWxkKiBTLmVudHJpZXModmFsdWUsIGN0eClcbiAgICAgIH1cbiAgICB9LFxuICAgICp2YWxpZGF0b3IodmFsdWUsIGN0eCkge1xuICAgICAgZm9yIChjb25zdCBTIG9mIFN0cnVjdHMpIHtcbiAgICAgICAgeWllbGQqIFMudmFsaWRhdG9yKHZhbHVlLCBjdHgpXG4gICAgICB9XG4gICAgfSxcbiAgICAqcmVmaW5lcih2YWx1ZSwgY3R4KSB7XG4gICAgICBmb3IgKGNvbnN0IFMgb2YgU3RydWN0cykge1xuICAgICAgICB5aWVsZCogUy5yZWZpbmVyKHZhbHVlLCBjdHgpXG4gICAgICB9XG4gICAgfSxcbiAgfSlcbn1cblxuLyoqXG4gKiBFbnN1cmUgdGhhdCBhIHZhbHVlIGlzIGFuIGV4YWN0IHZhbHVlLCB1c2luZyBgPT09YCBmb3IgY29tcGFyaXNvbi5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gbGl0ZXJhbDxUIGV4dGVuZHMgYm9vbGVhbj4oY29uc3RhbnQ6IFQpOiBTdHJ1Y3Q8VCwgVD5cbmV4cG9ydCBmdW5jdGlvbiBsaXRlcmFsPFQgZXh0ZW5kcyBudW1iZXI+KGNvbnN0YW50OiBUKTogU3RydWN0PFQsIFQ+XG5leHBvcnQgZnVuY3Rpb24gbGl0ZXJhbDxUIGV4dGVuZHMgc3RyaW5nPihjb25zdGFudDogVCk6IFN0cnVjdDxULCBUPlxuZXhwb3J0IGZ1bmN0aW9uIGxpdGVyYWw8VD4oY29uc3RhbnQ6IFQpOiBTdHJ1Y3Q8VCwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiBsaXRlcmFsPFQ+KGNvbnN0YW50OiBUKTogYW55IHtcbiAgY29uc3QgZGVzY3JpcHRpb24gPSBwcmludChjb25zdGFudClcbiAgY29uc3QgdCA9IHR5cGVvZiBjb25zdGFudFxuICByZXR1cm4gbmV3IFN0cnVjdCh7XG4gICAgdHlwZTogJ2xpdGVyYWwnLFxuICAgIHNjaGVtYTpcbiAgICAgIHQgPT09ICdzdHJpbmcnIHx8IHQgPT09ICdudW1iZXInIHx8IHQgPT09ICdib29sZWFuJyA/IGNvbnN0YW50IDogbnVsbCxcbiAgICB2YWxpZGF0b3IodmFsdWUpIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIHZhbHVlID09PSBjb25zdGFudCB8fFxuICAgICAgICBgRXhwZWN0ZWQgdGhlIGxpdGVyYWwgXFxgJHtkZXNjcmlwdGlvbn1cXGAsIGJ1dCByZWNlaXZlZDogJHtwcmludCh2YWx1ZSl9YFxuICAgICAgKVxuICAgIH0sXG4gIH0pXG59XG5cbi8qKlxuICogRW5zdXJlIHRoYXQgYSB2YWx1ZSBpcyBhIGBNYXBgIG9iamVjdCwgYW5kIHRoYXQgaXRzIGtleXMgYW5kIHZhbHVlcyBhcmUgb2ZcbiAqIHNwZWNpZmljIHR5cGVzLlxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBtYXAoKTogU3RydWN0PE1hcDx1bmtub3duLCB1bmtub3duPiwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiBtYXA8SywgVj4oXG4gIEtleTogU3RydWN0PEs+LFxuICBWYWx1ZTogU3RydWN0PFY+XG4pOiBTdHJ1Y3Q8TWFwPEssIFY+LCBudWxsPlxuZXhwb3J0IGZ1bmN0aW9uIG1hcDxLLCBWPihLZXk/OiBTdHJ1Y3Q8Sz4sIFZhbHVlPzogU3RydWN0PFY+KTogYW55IHtcbiAgcmV0dXJuIG5ldyBTdHJ1Y3Qoe1xuICAgIHR5cGU6ICdtYXAnLFxuICAgIHNjaGVtYTogbnVsbCxcbiAgICAqZW50cmllcyh2YWx1ZSkge1xuICAgICAgaWYgKEtleSAmJiBWYWx1ZSAmJiB2YWx1ZSBpbnN0YW5jZW9mIE1hcCkge1xuICAgICAgICBmb3IgKGNvbnN0IFtrLCB2XSBvZiB2YWx1ZS5lbnRyaWVzKCkpIHtcbiAgICAgICAgICB5aWVsZCBbayBhcyBzdHJpbmcsIGssIEtleV1cbiAgICAgICAgICB5aWVsZCBbayBhcyBzdHJpbmcsIHYsIFZhbHVlXVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSxcbiAgICBjb2VyY2VyKHZhbHVlKSB7XG4gICAgICByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBNYXAgPyBuZXcgTWFwKHZhbHVlKSA6IHZhbHVlXG4gICAgfSxcbiAgICB2YWxpZGF0b3IodmFsdWUpIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIHZhbHVlIGluc3RhbmNlb2YgTWFwIHx8XG4gICAgICAgIGBFeHBlY3RlZCBhIFxcYE1hcFxcYCBvYmplY3QsIGJ1dCByZWNlaXZlZDogJHtwcmludCh2YWx1ZSl9YFxuICAgICAgKVxuICAgIH0sXG4gIH0pXG59XG5cbi8qKlxuICogRW5zdXJlIHRoYXQgbm8gdmFsdWUgZXZlciBwYXNzZXMgdmFsaWRhdGlvbi5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gbmV2ZXIoKTogU3RydWN0PG5ldmVyLCBudWxsPiB7XG4gIHJldHVybiBkZWZpbmUoJ25ldmVyJywgKCkgPT4gZmFsc2UpXG59XG5cbi8qKlxuICogQXVnbWVudCBhbiBleGlzdGluZyBzdHJ1Y3QgdG8gYWxsb3cgYG51bGxgIHZhbHVlcy5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gbnVsbGFibGU8VCwgUz4oc3RydWN0OiBTdHJ1Y3Q8VCwgUz4pOiBTdHJ1Y3Q8VCB8IG51bGwsIFM+IHtcbiAgcmV0dXJuIG5ldyBTdHJ1Y3Qoe1xuICAgIC4uLnN0cnVjdCxcbiAgICB2YWxpZGF0b3I6ICh2YWx1ZSwgY3R4KSA9PiB2YWx1ZSA9PT0gbnVsbCB8fCBzdHJ1Y3QudmFsaWRhdG9yKHZhbHVlLCBjdHgpLFxuICAgIHJlZmluZXI6ICh2YWx1ZSwgY3R4KSA9PiB2YWx1ZSA9PT0gbnVsbCB8fCBzdHJ1Y3QucmVmaW5lcih2YWx1ZSwgY3R4KSxcbiAgfSlcbn1cblxuLyoqXG4gKiBFbnN1cmUgdGhhdCBhIHZhbHVlIGlzIGEgbnVtYmVyLlxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBudW1iZXIoKTogU3RydWN0PG51bWJlciwgbnVsbD4ge1xuICByZXR1cm4gZGVmaW5lKCdudW1iZXInLCAodmFsdWUpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgKHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicgJiYgIWlzTmFOKHZhbHVlKSkgfHxcbiAgICAgIGBFeHBlY3RlZCBhIG51bWJlciwgYnV0IHJlY2VpdmVkOiAke3ByaW50KHZhbHVlKX1gXG4gICAgKVxuICB9KVxufVxuXG4vKipcbiAqIEVuc3VyZSB0aGF0IGEgdmFsdWUgaXMgYW4gb2JqZWN0LCB0aGF0IGlzIGhhcyBhIGtub3duIHNldCBvZiBwcm9wZXJ0aWVzLFxuICogYW5kIHRoYXQgaXRzIHByb3BlcnRpZXMgYXJlIG9mIHNwZWNpZmljIHR5cGVzLlxuICpcbiAqIE5vdGU6IFVucmVjb2duaXplZCBwcm9wZXJ0aWVzIHdpbGwgZmFpbCB2YWxpZGF0aW9uLlxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBvYmplY3QoKTogU3RydWN0PFJlY29yZDxzdHJpbmcsIHVua25vd24+LCBudWxsPlxuZXhwb3J0IGZ1bmN0aW9uIG9iamVjdDxTIGV4dGVuZHMgT2JqZWN0U2NoZW1hPihcbiAgc2NoZW1hOiBTXG4pOiBTdHJ1Y3Q8T2JqZWN0VHlwZTxTPiwgUz5cbmV4cG9ydCBmdW5jdGlvbiBvYmplY3Q8UyBleHRlbmRzIE9iamVjdFNjaGVtYT4oc2NoZW1hPzogUyk6IGFueSB7XG4gIGNvbnN0IGtub3ducyA9IHNjaGVtYSA/IE9iamVjdC5rZXlzKHNjaGVtYSkgOiBbXVxuICBjb25zdCBOZXZlciA9IG5ldmVyKClcbiAgcmV0dXJuIG5ldyBTdHJ1Y3Qoe1xuICAgIHR5cGU6ICdvYmplY3QnLFxuICAgIHNjaGVtYTogc2NoZW1hID8gc2NoZW1hIDogbnVsbCxcbiAgICAqZW50cmllcyh2YWx1ZSkge1xuICAgICAgaWYgKHNjaGVtYSAmJiBpc09iamVjdCh2YWx1ZSkpIHtcbiAgICAgICAgY29uc3QgdW5rbm93bnMgPSBuZXcgU2V0KE9iamVjdC5rZXlzKHZhbHVlKSlcblxuICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiBrbm93bnMpIHtcbiAgICAgICAgICB1bmtub3ducy5kZWxldGUoa2V5KVxuICAgICAgICAgIHlpZWxkIFtrZXksIHZhbHVlW2tleV0sIHNjaGVtYVtrZXldXVxuICAgICAgICB9XG5cbiAgICAgICAgZm9yIChjb25zdCBrZXkgb2YgdW5rbm93bnMpIHtcbiAgICAgICAgICB5aWVsZCBba2V5LCB2YWx1ZVtrZXldLCBOZXZlcl1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgdmFsaWRhdG9yKHZhbHVlKSB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICBpc09iamVjdCh2YWx1ZSkgfHwgYEV4cGVjdGVkIGFuIG9iamVjdCwgYnV0IHJlY2VpdmVkOiAke3ByaW50KHZhbHVlKX1gXG4gICAgICApXG4gICAgfSxcbiAgICBjb2VyY2VyKHZhbHVlKSB7XG4gICAgICByZXR1cm4gaXNPYmplY3QodmFsdWUpID8geyAuLi52YWx1ZSB9IDogdmFsdWVcbiAgICB9LFxuICB9KVxufVxuXG4vKipcbiAqIEF1Z21lbnQgYSBzdHJ1Y3QgdG8gYWxsb3cgYHVuZGVmaW5lZGAgdmFsdWVzLlxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBvcHRpb25hbDxULCBTPihzdHJ1Y3Q6IFN0cnVjdDxULCBTPik6IFN0cnVjdDxUIHwgdW5kZWZpbmVkLCBTPiB7XG4gIHJldHVybiBuZXcgU3RydWN0KHtcbiAgICAuLi5zdHJ1Y3QsXG4gICAgdmFsaWRhdG9yOiAodmFsdWUsIGN0eCkgPT5cbiAgICAgIHZhbHVlID09PSB1bmRlZmluZWQgfHwgc3RydWN0LnZhbGlkYXRvcih2YWx1ZSwgY3R4KSxcbiAgICByZWZpbmVyOiAodmFsdWUsIGN0eCkgPT4gdmFsdWUgPT09IHVuZGVmaW5lZCB8fCBzdHJ1Y3QucmVmaW5lcih2YWx1ZSwgY3R4KSxcbiAgfSlcbn1cblxuLyoqXG4gKiBFbnN1cmUgdGhhdCBhIHZhbHVlIGlzIGFuIG9iamVjdCB3aXRoIGtleXMgYW5kIHZhbHVlcyBvZiBzcGVjaWZpYyB0eXBlcywgYnV0XG4gKiB3aXRob3V0IGVuc3VyaW5nIGFueSBzcGVjaWZpYyBzaGFwZSBvZiBwcm9wZXJ0aWVzLlxuICpcbiAqIExpa2UgVHlwZVNjcmlwdCdzIGBSZWNvcmRgIHV0aWxpdHkuXG4gKi9cblxuZXhwb3J0IGZ1bmN0aW9uIHJlY29yZDxLIGV4dGVuZHMgc3RyaW5nLCBWPihcbiAgS2V5OiBTdHJ1Y3Q8Sz4sXG4gIFZhbHVlOiBTdHJ1Y3Q8Vj5cbik6IFN0cnVjdDxSZWNvcmQ8SywgVj4sIG51bGw+IHtcbiAgcmV0dXJuIG5ldyBTdHJ1Y3Qoe1xuICAgIHR5cGU6ICdyZWNvcmQnLFxuICAgIHNjaGVtYTogbnVsbCxcbiAgICAqZW50cmllcyh2YWx1ZSkge1xuICAgICAgaWYgKGlzT2JqZWN0KHZhbHVlKSkge1xuICAgICAgICBmb3IgKGNvbnN0IGsgaW4gdmFsdWUpIHtcbiAgICAgICAgICBjb25zdCB2ID0gdmFsdWVba11cbiAgICAgICAgICB5aWVsZCBbaywgaywgS2V5XVxuICAgICAgICAgIHlpZWxkIFtrLCB2LCBWYWx1ZV1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgdmFsaWRhdG9yKHZhbHVlKSB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICBpc09iamVjdCh2YWx1ZSkgfHwgYEV4cGVjdGVkIGFuIG9iamVjdCwgYnV0IHJlY2VpdmVkOiAke3ByaW50KHZhbHVlKX1gXG4gICAgICApXG4gICAgfSxcbiAgfSlcbn1cblxuLyoqXG4gKiBFbnN1cmUgdGhhdCBhIHZhbHVlIGlzIGEgYFJlZ0V4cGAuXG4gKlxuICogTm90ZTogdGhpcyBkb2VzIG5vdCB0ZXN0IHRoZSB2YWx1ZSBhZ2FpbnN0IHRoZSByZWd1bGFyIGV4cHJlc3Npb24hIEZvciB0aGF0XG4gKiB5b3UgbmVlZCB0byB1c2UgdGhlIGBwYXR0ZXJuKClgIHJlZmluZW1lbnQuXG4gKi9cblxuZXhwb3J0IGZ1bmN0aW9uIHJlZ2V4cCgpOiBTdHJ1Y3Q8UmVnRXhwLCBudWxsPiB7XG4gIHJldHVybiBkZWZpbmUoJ3JlZ2V4cCcsICh2YWx1ZSkgPT4ge1xuICAgIHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIFJlZ0V4cFxuICB9KVxufVxuXG4vKipcbiAqIEVuc3VyZSB0aGF0IGEgdmFsdWUgaXMgYSBgU2V0YCBvYmplY3QsIGFuZCB0aGF0IGl0cyBlbGVtZW50cyBhcmUgb2YgYVxuICogc3BlY2lmaWMgdHlwZS5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gc2V0KCk6IFN0cnVjdDxTZXQ8dW5rbm93bj4sIG51bGw+XG5leHBvcnQgZnVuY3Rpb24gc2V0PFQ+KEVsZW1lbnQ6IFN0cnVjdDxUPik6IFN0cnVjdDxTZXQ8VD4sIG51bGw+XG5leHBvcnQgZnVuY3Rpb24gc2V0PFQ+KEVsZW1lbnQ/OiBTdHJ1Y3Q8VD4pOiBhbnkge1xuICByZXR1cm4gbmV3IFN0cnVjdCh7XG4gICAgdHlwZTogJ3NldCcsXG4gICAgc2NoZW1hOiBudWxsLFxuICAgICplbnRyaWVzKHZhbHVlKSB7XG4gICAgICBpZiAoRWxlbWVudCAmJiB2YWx1ZSBpbnN0YW5jZW9mIFNldCkge1xuICAgICAgICBmb3IgKGNvbnN0IHYgb2YgdmFsdWUpIHtcbiAgICAgICAgICB5aWVsZCBbdiBhcyBzdHJpbmcsIHYsIEVsZW1lbnRdXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LFxuICAgIGNvZXJjZXIodmFsdWUpIHtcbiAgICAgIHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIFNldCA/IG5ldyBTZXQodmFsdWUpIDogdmFsdWVcbiAgICB9LFxuICAgIHZhbGlkYXRvcih2YWx1ZSkge1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgdmFsdWUgaW5zdGFuY2VvZiBTZXQgfHxcbiAgICAgICAgYEV4cGVjdGVkIGEgXFxgU2V0XFxgIG9iamVjdCwgYnV0IHJlY2VpdmVkOiAke3ByaW50KHZhbHVlKX1gXG4gICAgICApXG4gICAgfSxcbiAgfSlcbn1cblxuLyoqXG4gKiBFbnN1cmUgdGhhdCBhIHZhbHVlIGlzIGEgc3RyaW5nLlxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBzdHJpbmcoKTogU3RydWN0PHN0cmluZywgbnVsbD4ge1xuICByZXR1cm4gZGVmaW5lKCdzdHJpbmcnLCAodmFsdWUpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyB8fFxuICAgICAgYEV4cGVjdGVkIGEgc3RyaW5nLCBidXQgcmVjZWl2ZWQ6ICR7cHJpbnQodmFsdWUpfWBcbiAgICApXG4gIH0pXG59XG5cbi8qKlxuICogRW5zdXJlIHRoYXQgYSB2YWx1ZSBpcyBhIHR1cGxlIG9mIGEgc3BlY2lmaWMgbGVuZ3RoLCBhbmQgdGhhdCBlYWNoIG9mIGl0c1xuICogZWxlbWVudHMgaXMgb2YgYSBzcGVjaWZpYyB0eXBlLlxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiB0dXBsZTxBPihTdHJ1Y3RzOiBUdXBsZVNjaGVtYTxbQV0+KTogU3RydWN0PFtBXSwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiB0dXBsZTxBLCBCPihTdHJ1Y3RzOiBUdXBsZVNjaGVtYTxbQSwgQl0+KTogU3RydWN0PFtBLCBCXSwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiB0dXBsZTxBLCBCLCBDPihcbiAgU3RydWN0czogVHVwbGVTY2hlbWE8W0EsIEIsIENdPlxuKTogU3RydWN0PFtBLCBCLCBDXSwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiB0dXBsZTxBLCBCLCBDLCBEPihcbiAgU3RydWN0czogVHVwbGVTY2hlbWE8W0EsIEIsIEMsIERdPlxuKTogU3RydWN0PFtBLCBCLCBDLCBEXSwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiB0dXBsZTxBLCBCLCBDLCBELCBFPihcbiAgU3RydWN0czogVHVwbGVTY2hlbWE8W0EsIEIsIEMsIEQsIEVdPlxuKTogU3RydWN0PFtBLCBCLCBDLCBELCBFXSwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiB0dXBsZTxBLCBCLCBDLCBELCBFLCBGPihcbiAgU3RydWN0czogVHVwbGVTY2hlbWE8W0EsIEIsIEMsIEQsIEUsIEZdPlxuKTogU3RydWN0PFtBLCBCLCBDLCBELCBFLCBGXSwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiB0dXBsZTxBLCBCLCBDLCBELCBFLCBGLCBHPihcbiAgU3RydWN0czogVHVwbGVTY2hlbWE8W0EsIEIsIEMsIEQsIEUsIEYsIEddPlxuKTogU3RydWN0PFtBLCBCLCBDLCBELCBFLCBGLCBHXSwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiB0dXBsZTxBLCBCLCBDLCBELCBFLCBGLCBHLCBIPihcbiAgU3RydWN0czogVHVwbGVTY2hlbWE8W0EsIEIsIEMsIEQsIEUsIEYsIEcsIEhdPlxuKTogU3RydWN0PFtBLCBCLCBDLCBELCBFLCBGLCBHLCBIXSwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiB0dXBsZTxBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJPihcbiAgU3RydWN0czogVHVwbGVTY2hlbWE8W0EsIEIsIEMsIEQsIEUsIEYsIEcsIEgsIEldPlxuKTogU3RydWN0PFtBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJXSwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiB0dXBsZTxBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJLCBKPihcbiAgU3RydWN0czogVHVwbGVTY2hlbWE8W0EsIEIsIEMsIEQsIEUsIEYsIEcsIEgsIEksIEpdPlxuKTogU3RydWN0PFtBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJLCBKXSwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiB0dXBsZTxBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJLCBKLCBLPihcbiAgU3RydWN0czogVHVwbGVTY2hlbWE8W0EsIEIsIEMsIEQsIEUsIEYsIEcsIEgsIEksIEosIEtdPlxuKTogU3RydWN0PFtBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJLCBKLCBLXSwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiB0dXBsZTxBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJLCBKLCBLLCBMPihcbiAgU3RydWN0czogVHVwbGVTY2hlbWE8W0EsIEIsIEMsIEQsIEUsIEYsIEcsIEgsIEksIEosIEssIExdPlxuKTogU3RydWN0PFtBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJLCBKLCBLLCBMXSwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiB0dXBsZTxBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJLCBKLCBLLCBMLCBNPihcbiAgU3RydWN0czogVHVwbGVTY2hlbWE8W0EsIEIsIEMsIEQsIEUsIEYsIEcsIEgsIEksIEosIEssIEwsIE1dPlxuKTogU3RydWN0PFtBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJLCBKLCBLLCBMLCBNXSwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiB0dXBsZTxBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJLCBKLCBLLCBMLCBNLCBOPihcbiAgU3RydWN0czogVHVwbGVTY2hlbWE8W0EsIEIsIEMsIEQsIEUsIEYsIEcsIEgsIEksIEosIEssIEwsIE0sIE5dPlxuKTogU3RydWN0PFtBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJLCBKLCBLLCBMLCBNLCBOXSwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiB0dXBsZTxBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJLCBKLCBLLCBMLCBNLCBOLCBPPihcbiAgU3RydWN0czogVHVwbGVTY2hlbWE8W0EsIEIsIEMsIEQsIEUsIEYsIEcsIEgsIEksIEosIEssIEwsIE0sIE4sIE9dPlxuKTogU3RydWN0PFtBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJLCBKLCBLLCBMLCBNLCBOLCBPXSwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiB0dXBsZTxBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJLCBKLCBLLCBMLCBNLCBOLCBPLCBQPihcbiAgU3RydWN0czogVHVwbGVTY2hlbWE8W0EsIEIsIEMsIEQsIEUsIEYsIEcsIEgsIEksIEosIEssIEwsIE0sIE4sIE8sIFBdPlxuKTogU3RydWN0PFtBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJLCBKLCBLLCBMLCBNLCBOLCBPLCBQXSwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiB0dXBsZTxBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJLCBKLCBLLCBMLCBNLCBOLCBPLCBQLCBRPihcbiAgU3RydWN0czogVHVwbGVTY2hlbWE8W0EsIEIsIEMsIEQsIEUsIEYsIEcsIEgsIEksIEosIEssIEwsIE0sIE4sIE8sIFAsIFFdPlxuKTogU3RydWN0PFtBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJLCBKLCBLLCBMLCBNLCBOLCBPLCBQLCBRXSwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiB0dXBsZShFbGVtZW50czogU3RydWN0PGFueT5bXSk6IGFueSB7XG4gIGNvbnN0IE5ldmVyID0gbmV2ZXIoKVxuXG4gIHJldHVybiBuZXcgU3RydWN0KHtcbiAgICB0eXBlOiAndHVwbGUnLFxuICAgIHNjaGVtYTogbnVsbCxcbiAgICAqZW50cmllcyh2YWx1ZSkge1xuICAgICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICAgIGNvbnN0IGxlbmd0aCA9IE1hdGgubWF4KEVsZW1lbnRzLmxlbmd0aCwgdmFsdWUubGVuZ3RoKVxuXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICB5aWVsZCBbaSwgdmFsdWVbaV0sIEVsZW1lbnRzW2ldIHx8IE5ldmVyXVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSxcbiAgICB2YWxpZGF0b3IodmFsdWUpIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIEFycmF5LmlzQXJyYXkodmFsdWUpIHx8XG4gICAgICAgIGBFeHBlY3RlZCBhbiBhcnJheSwgYnV0IHJlY2VpdmVkOiAke3ByaW50KHZhbHVlKX1gXG4gICAgICApXG4gICAgfSxcbiAgfSlcbn1cblxuLyoqXG4gKiBFbnN1cmUgdGhhdCBhIHZhbHVlIGhhcyBhIHNldCBvZiBrbm93biBwcm9wZXJ0aWVzIG9mIHNwZWNpZmljIHR5cGVzLlxuICpcbiAqIE5vdGU6IFVucmVjb2duaXplZCBwcm9wZXJ0aWVzIGFyZSBhbGxvd2VkIGFuZCB1bnRvdWNoZWQuIFRoaXMgaXMgc2ltaWxhciB0b1xuICogaG93IFR5cGVTY3JpcHQncyBzdHJ1Y3R1cmFsIHR5cGluZyB3b3Jrcy5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gdHlwZTxTIGV4dGVuZHMgT2JqZWN0U2NoZW1hPihcbiAgc2NoZW1hOiBTXG4pOiBTdHJ1Y3Q8T2JqZWN0VHlwZTxTPiwgUz4ge1xuICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXMoc2NoZW1hKVxuICByZXR1cm4gbmV3IFN0cnVjdCh7XG4gICAgdHlwZTogJ3R5cGUnLFxuICAgIHNjaGVtYSxcbiAgICAqZW50cmllcyh2YWx1ZSkge1xuICAgICAgaWYgKGlzT2JqZWN0KHZhbHVlKSkge1xuICAgICAgICBmb3IgKGNvbnN0IGsgb2Yga2V5cykge1xuICAgICAgICAgIHlpZWxkIFtrLCB2YWx1ZVtrXSwgc2NoZW1hW2tdXVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSxcbiAgICB2YWxpZGF0b3IodmFsdWUpIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIGlzT2JqZWN0KHZhbHVlKSB8fCBgRXhwZWN0ZWQgYW4gb2JqZWN0LCBidXQgcmVjZWl2ZWQ6ICR7cHJpbnQodmFsdWUpfWBcbiAgICAgIClcbiAgICB9LFxuICB9KVxufVxuXG4vKipcbiAqIEVuc3VyZSB0aGF0IGEgdmFsdWUgbWF0Y2hlcyBvbmUgb2YgYSBzZXQgb2YgdHlwZXMuXG4gKi9cblxuZXhwb3J0IGZ1bmN0aW9uIHVuaW9uPEE+KFN0cnVjdHM6IFR1cGxlU2NoZW1hPFtBXT4pOiBTdHJ1Y3Q8QSwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiB1bmlvbjxBLCBCPihTdHJ1Y3RzOiBUdXBsZVNjaGVtYTxbQSwgQl0+KTogU3RydWN0PEEgfCBCLCBudWxsPlxuZXhwb3J0IGZ1bmN0aW9uIHVuaW9uPEEsIEIsIEM+KFxuICBTdHJ1Y3RzOiBUdXBsZVNjaGVtYTxbQSwgQiwgQ10+XG4pOiBTdHJ1Y3Q8QSB8IEIgfCBDLCBudWxsPlxuZXhwb3J0IGZ1bmN0aW9uIHVuaW9uPEEsIEIsIEMsIEQ+KFxuICBTdHJ1Y3RzOiBUdXBsZVNjaGVtYTxbQSwgQiwgQywgRF0+XG4pOiBTdHJ1Y3Q8QSB8IEIgfCBDIHwgRCwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiB1bmlvbjxBLCBCLCBDLCBELCBFPihcbiAgU3RydWN0czogVHVwbGVTY2hlbWE8W0EsIEIsIEMsIEQsIEVdPlxuKTogU3RydWN0PEEgfCBCIHwgQyB8IEQgfCBFLCBudWxsPlxuZXhwb3J0IGZ1bmN0aW9uIHVuaW9uPEEsIEIsIEMsIEQsIEUsIEY+KFxuICBTdHJ1Y3RzOiBUdXBsZVNjaGVtYTxbQSwgQiwgQywgRCwgRSwgRl0+XG4pOiBTdHJ1Y3Q8QSB8IEIgfCBDIHwgRCB8IEUgfCBGLCBudWxsPlxuZXhwb3J0IGZ1bmN0aW9uIHVuaW9uPEEsIEIsIEMsIEQsIEUsIEYsIEc+KFxuICBTdHJ1Y3RzOiBUdXBsZVNjaGVtYTxbQSwgQiwgQywgRCwgRSwgRiwgR10+XG4pOiBTdHJ1Y3Q8QSB8IEIgfCBDIHwgRCB8IEUgfCBGIHwgRywgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiB1bmlvbjxBLCBCLCBDLCBELCBFLCBGLCBHLCBIPihcbiAgU3RydWN0czogVHVwbGVTY2hlbWE8W0EsIEIsIEMsIEQsIEUsIEYsIEcsIEhdPlxuKTogU3RydWN0PEEgfCBCIHwgQyB8IEQgfCBFIHwgRiB8IEcgfCBILCBudWxsPlxuZXhwb3J0IGZ1bmN0aW9uIHVuaW9uPEEsIEIsIEMsIEQsIEUsIEYsIEcsIEgsIEk+KFxuICBTdHJ1Y3RzOiBUdXBsZVNjaGVtYTxbQSwgQiwgQywgRCwgRSwgRiwgRywgSCwgSV0+XG4pOiBTdHJ1Y3Q8QSB8IEIgfCBDIHwgRCB8IEUgfCBGIHwgRyB8IEggfCBJLCBudWxsPlxuZXhwb3J0IGZ1bmN0aW9uIHVuaW9uPEEsIEIsIEMsIEQsIEUsIEYsIEcsIEgsIEksIEo+KFxuICBTdHJ1Y3RzOiBUdXBsZVNjaGVtYTxbQSwgQiwgQywgRCwgRSwgRiwgRywgSCwgSSwgSl0+XG4pOiBTdHJ1Y3Q8QSB8IEIgfCBDIHwgRCB8IEUgfCBGIHwgRyB8IEggfCBJIHwgSiwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiB1bmlvbjxBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJLCBKLCBLPihcbiAgU3RydWN0czogVHVwbGVTY2hlbWE8W0EsIEIsIEMsIEQsIEUsIEYsIEcsIEgsIEksIEosIEtdPlxuKTogU3RydWN0PEEgfCBCIHwgQyB8IEQgfCBFIHwgRiB8IEcgfCBIIHwgSSB8IEogfCBLLCBudWxsPlxuZXhwb3J0IGZ1bmN0aW9uIHVuaW9uPEEsIEIsIEMsIEQsIEUsIEYsIEcsIEgsIEksIEosIEssIEw+KFxuICBTdHJ1Y3RzOiBUdXBsZVNjaGVtYTxbQSwgQiwgQywgRCwgRSwgRiwgRywgSCwgSSwgSiwgSywgTF0+XG4pOiBTdHJ1Y3Q8QSB8IEIgfCBDIHwgRCB8IEUgfCBGIHwgRyB8IEggfCBJIHwgSiB8IEsgfCBMLCBudWxsPlxuZXhwb3J0IGZ1bmN0aW9uIHVuaW9uPEEsIEIsIEMsIEQsIEUsIEYsIEcsIEgsIEksIEosIEssIEwsIE0+KFxuICBTdHJ1Y3RzOiBUdXBsZVNjaGVtYTxbQSwgQiwgQywgRCwgRSwgRiwgRywgSCwgSSwgSiwgSywgTCwgTV0+XG4pOiBTdHJ1Y3Q8QSB8IEIgfCBDIHwgRCB8IEUgfCBGIHwgRyB8IEggfCBJIHwgSiB8IEsgfCBMIHwgTSwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiB1bmlvbjxBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJLCBKLCBLLCBMLCBNLCBOPihcbiAgU3RydWN0czogVHVwbGVTY2hlbWE8W0EsIEIsIEMsIEQsIEUsIEYsIEcsIEgsIEksIEosIEssIEwsIE0sIE5dPlxuKTogU3RydWN0PEEgfCBCIHwgQyB8IEQgfCBFIHwgRiB8IEcgfCBIIHwgSSB8IEogfCBLIHwgTCB8IE0gfCBOLCBudWxsPlxuZXhwb3J0IGZ1bmN0aW9uIHVuaW9uPEEsIEIsIEMsIEQsIEUsIEYsIEcsIEgsIEksIEosIEssIEwsIE0sIE4sIE8+KFxuICBTdHJ1Y3RzOiBUdXBsZVNjaGVtYTxbQSwgQiwgQywgRCwgRSwgRiwgRywgSCwgSSwgSiwgSywgTCwgTSwgTiwgT10+XG4pOiBTdHJ1Y3Q8QSB8IEIgfCBDIHwgRCB8IEUgfCBGIHwgRyB8IEggfCBJIHwgSiB8IEsgfCBMIHwgTSB8IE4gfCBPLCBudWxsPlxuZXhwb3J0IGZ1bmN0aW9uIHVuaW9uPEEsIEIsIEMsIEQsIEUsIEYsIEcsIEgsIEksIEosIEssIEwsIE0sIE4sIE8sIFA+KFxuICBTdHJ1Y3RzOiBUdXBsZVNjaGVtYTxbQSwgQiwgQywgRCwgRSwgRiwgRywgSCwgSSwgSiwgSywgTCwgTSwgTiwgTywgUF0+XG4pOiBTdHJ1Y3Q8QSB8IEIgfCBDIHwgRCB8IEUgfCBGIHwgRyB8IEggfCBJIHwgSiB8IEsgfCBMIHwgTSB8IE4gfCBPIHwgUCwgbnVsbD5cbmV4cG9ydCBmdW5jdGlvbiB1bmlvbjxBLCBCLCBDLCBELCBFLCBGLCBHLCBILCBJLCBKLCBLLCBMLCBNLCBOLCBPLCBQLCBRPihcbiAgU3RydWN0czogVHVwbGVTY2hlbWE8W0EsIEIsIEMsIEQsIEUsIEYsIEcsIEgsIEksIEosIEssIEwsIE0sIE4sIE8sIFAsIFFdPlxuKTogU3RydWN0PFxuICBBIHwgQiB8IEMgfCBEIHwgRSB8IEYgfCBHIHwgSCB8IEkgfCBKIHwgSyB8IEwgfCBNIHwgTiB8IE8gfCBQIHwgUSxcbiAgbnVsbFxuPlxuZXhwb3J0IGZ1bmN0aW9uIHVuaW9uKFN0cnVjdHM6IFN0cnVjdDxhbnk+W10pOiBhbnkge1xuICBjb25zdCBkZXNjcmlwdGlvbiA9IFN0cnVjdHMubWFwKChzKSA9PiBzLnR5cGUpLmpvaW4oJyB8ICcpXG4gIHJldHVybiBuZXcgU3RydWN0KHtcbiAgICB0eXBlOiAndW5pb24nLFxuICAgIHNjaGVtYTogbnVsbCxcbiAgICB2YWxpZGF0b3IodmFsdWUsIGN0eCkge1xuICAgICAgY29uc3QgZmFpbHVyZXMgPSBbXVxuXG4gICAgICBmb3IgKGNvbnN0IFMgb2YgU3RydWN0cykge1xuICAgICAgICBjb25zdCBbLi4udHVwbGVzXSA9IHJ1bih2YWx1ZSwgUywgY3R4KVxuICAgICAgICBjb25zdCBbZmlyc3RdID0gdHVwbGVzXG5cbiAgICAgICAgaWYgKCFmaXJzdFswXSkge1xuICAgICAgICAgIHJldHVybiBbXVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGZvciAoY29uc3QgW2ZhaWx1cmVdIG9mIHR1cGxlcykge1xuICAgICAgICAgICAgaWYgKGZhaWx1cmUpIHtcbiAgICAgICAgICAgICAgZmFpbHVyZXMucHVzaChmYWlsdXJlKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gW1xuICAgICAgICBgRXhwZWN0ZWQgdGhlIHZhbHVlIHRvIHNhdGlzZnkgYSB1bmlvbiBvZiBcXGAke2Rlc2NyaXB0aW9ufVxcYCwgYnV0IHJlY2VpdmVkOiAke3ByaW50KFxuICAgICAgICAgIHZhbHVlXG4gICAgICAgICl9YCxcbiAgICAgICAgLi4uZmFpbHVyZXMsXG4gICAgICBdXG4gICAgfSxcbiAgfSlcbn1cblxuLyoqXG4gKiBFbnN1cmUgdGhhdCBhbnkgdmFsdWUgcGFzc2VzIHZhbGlkYXRpb24sIHdpdGhvdXQgd2lkZW5pbmcgaXRzIHR5cGUgdG8gYGFueWAuXG4gKi9cblxuZXhwb3J0IGZ1bmN0aW9uIHVua25vd24oKTogU3RydWN0PHVua25vd24sIG51bGw+IHtcbiAgcmV0dXJuIGRlZmluZSgndW5rbm93bicsICgpID0+IHRydWUpXG59XG4iLCAiaW1wb3J0IHsgU3RydWN0LCBpcywgQ29lcmNlciB9IGZyb20gJy4uL3N0cnVjdCdcbmltcG9ydCB7IGlzUGxhaW5PYmplY3QgfSBmcm9tICcuLi91dGlscydcbmltcG9ydCB7IHN0cmluZywgdW5rbm93biB9IGZyb20gJy4vdHlwZXMnXG5cbi8qKlxuICogQXVnbWVudCBhIGBTdHJ1Y3RgIHRvIGFkZCBhbiBhZGRpdGlvbmFsIGNvZXJjaW9uIHN0ZXAgdG8gaXRzIGlucHV0LlxuICpcbiAqIFRoaXMgYWxsb3dzIHlvdSB0byB0cmFuc2Zvcm0gaW5wdXQgZGF0YSBiZWZvcmUgdmFsaWRhdGluZyBpdCwgdG8gaW5jcmVhc2UgdGhlXG4gKiBsaWtlbGlob29kIHRoYXQgaXQgcGFzc2VzIHZhbGlkYXRpb27igJRmb3IgZXhhbXBsZSBmb3IgZGVmYXVsdCB2YWx1ZXMsIHBhcnNpbmdcbiAqIGRpZmZlcmVudCBmb3JtYXRzLCBldGMuXG4gKlxuICogTm90ZTogWW91IG11c3QgdXNlIGBjcmVhdGUodmFsdWUsIFN0cnVjdClgIG9uIHRoZSB2YWx1ZSB0byBoYXZlIHRoZSBjb2VyY2lvblxuICogdGFrZSBlZmZlY3QhIFVzaW5nIHNpbXBseSBgYXNzZXJ0KClgIG9yIGBpcygpYCB3aWxsIG5vdCB1c2UgY29lcmNpb24uXG4gKi9cblxuZXhwb3J0IGZ1bmN0aW9uIGNvZXJjZTxULCBTLCBDPihcbiAgc3RydWN0OiBTdHJ1Y3Q8VCwgUz4sXG4gIGNvbmRpdGlvbjogU3RydWN0PEMsIGFueT4sXG4gIGNvZXJjZXI6IENvZXJjZXI8Qz5cbik6IFN0cnVjdDxULCBTPiB7XG4gIHJldHVybiBuZXcgU3RydWN0KHtcbiAgICAuLi5zdHJ1Y3QsXG4gICAgY29lcmNlcjogKHZhbHVlLCBjdHgpID0+IHtcbiAgICAgIHJldHVybiBpcyh2YWx1ZSwgY29uZGl0aW9uKVxuICAgICAgICA/IHN0cnVjdC5jb2VyY2VyKGNvZXJjZXIodmFsdWUsIGN0eCksIGN0eClcbiAgICAgICAgOiBzdHJ1Y3QuY29lcmNlcih2YWx1ZSwgY3R4KVxuICAgIH0sXG4gIH0pXG59XG5cbi8qKlxuICogQXVnbWVudCBhIHN0cnVjdCB0byByZXBsYWNlIGB1bmRlZmluZWRgIHZhbHVlcyB3aXRoIGEgZGVmYXVsdC5cbiAqXG4gKiBOb3RlOiBZb3UgbXVzdCB1c2UgYGNyZWF0ZSh2YWx1ZSwgU3RydWN0KWAgb24gdGhlIHZhbHVlIHRvIGhhdmUgdGhlIGNvZXJjaW9uXG4gKiB0YWtlIGVmZmVjdCEgVXNpbmcgc2ltcGx5IGBhc3NlcnQoKWAgb3IgYGlzKClgIHdpbGwgbm90IHVzZSBjb2VyY2lvbi5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gZGVmYXVsdGVkPFQsIFM+KFxuICBzdHJ1Y3Q6IFN0cnVjdDxULCBTPixcbiAgZmFsbGJhY2s6IGFueSxcbiAgb3B0aW9uczoge1xuICAgIHN0cmljdD86IGJvb2xlYW5cbiAgfSA9IHt9XG4pOiBTdHJ1Y3Q8VCwgUz4ge1xuICByZXR1cm4gY29lcmNlKHN0cnVjdCwgdW5rbm93bigpLCAoeCkgPT4ge1xuICAgIGNvbnN0IGYgPSB0eXBlb2YgZmFsbGJhY2sgPT09ICdmdW5jdGlvbicgPyBmYWxsYmFjaygpIDogZmFsbGJhY2tcblxuICAgIGlmICh4ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiBmXG4gICAgfVxuXG4gICAgaWYgKCFvcHRpb25zLnN0cmljdCAmJiBpc1BsYWluT2JqZWN0KHgpICYmIGlzUGxhaW5PYmplY3QoZikpIHtcbiAgICAgIGNvbnN0IHJldCA9IHsgLi4ueCB9XG4gICAgICBsZXQgY2hhbmdlZCA9IGZhbHNlXG5cbiAgICAgIGZvciAoY29uc3Qga2V5IGluIGYpIHtcbiAgICAgICAgaWYgKHJldFtrZXldID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICByZXRba2V5XSA9IGZba2V5XVxuICAgICAgICAgIGNoYW5nZWQgPSB0cnVlXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKGNoYW5nZWQpIHtcbiAgICAgICAgcmV0dXJuIHJldFxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB4XG4gIH0pXG59XG5cbi8qKlxuICogQXVnbWVudCBhIHN0cnVjdCB0byB0cmltIHN0cmluZyBpbnB1dHMuXG4gKlxuICogTm90ZTogWW91IG11c3QgdXNlIGBjcmVhdGUodmFsdWUsIFN0cnVjdClgIG9uIHRoZSB2YWx1ZSB0byBoYXZlIHRoZSBjb2VyY2lvblxuICogdGFrZSBlZmZlY3QhIFVzaW5nIHNpbXBseSBgYXNzZXJ0KClgIG9yIGBpcygpYCB3aWxsIG5vdCB1c2UgY29lcmNpb24uXG4gKi9cblxuZXhwb3J0IGZ1bmN0aW9uIHRyaW1tZWQ8VCwgUz4oc3RydWN0OiBTdHJ1Y3Q8VCwgUz4pOiBTdHJ1Y3Q8VCwgUz4ge1xuICByZXR1cm4gY29lcmNlKHN0cnVjdCwgc3RyaW5nKCksICh4KSA9PiB4LnRyaW0oKSlcbn1cbiIsICJpbXBvcnQgeyBTdHJ1Y3QsIFJlZmluZXIgfSBmcm9tICcuLi9zdHJ1Y3QnXG5pbXBvcnQgeyB0b0ZhaWx1cmVzIH0gZnJvbSAnLi4vdXRpbHMnXG5cbi8qKlxuICogRW5zdXJlIHRoYXQgYSBzdHJpbmcsIGFycmF5LCBtYXAsIG9yIHNldCBpcyBlbXB0eS5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gZW1wdHk8XG4gIFQgZXh0ZW5kcyBzdHJpbmcgfCBhbnlbXSB8IE1hcDxhbnksIGFueT4gfCBTZXQ8YW55PixcbiAgUyBleHRlbmRzIGFueVxuPihzdHJ1Y3Q6IFN0cnVjdDxULCBTPik6IFN0cnVjdDxULCBTPiB7XG4gIGNvbnN0IGV4cGVjdGVkID0gYEV4cGVjdGVkIGFuIGVtcHR5ICR7c3RydWN0LnR5cGV9YFxuXG4gIHJldHVybiByZWZpbmUoc3RydWN0LCAnZW1wdHknLCAodmFsdWUpID0+IHtcbiAgICBpZiAodmFsdWUgaW5zdGFuY2VvZiBNYXAgfHwgdmFsdWUgaW5zdGFuY2VvZiBTZXQpIHtcbiAgICAgIGNvbnN0IHsgc2l6ZSB9ID0gdmFsdWVcbiAgICAgIHJldHVybiAoXG4gICAgICAgIHNpemUgPT09IDAgfHwgYCR7ZXhwZWN0ZWR9IGJ1dCByZWNlaXZlZCBvbmUgd2l0aCBhIHNpemUgb2YgXFxgJHtzaXplfVxcYGBcbiAgICAgIClcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgeyBsZW5ndGggfSA9IHZhbHVlIGFzIHN0cmluZyB8IGFueVtdXG4gICAgICByZXR1cm4gKFxuICAgICAgICBsZW5ndGggPT09IDAgfHxcbiAgICAgICAgYCR7ZXhwZWN0ZWR9IGJ1dCByZWNlaXZlZCBvbmUgd2l0aCBhIGxlbmd0aCBvZiBcXGAke2xlbmd0aH1cXGBgXG4gICAgICApXG4gICAgfVxuICB9KVxufVxuXG4vKipcbiAqIEVuc3VyZSB0aGF0IGEgbnVtYmVyIG9yIGRhdGUgaXMgYmVsb3cgYSB0aHJlc2hvbGQuXG4gKi9cblxuZXhwb3J0IGZ1bmN0aW9uIG1heDxUIGV4dGVuZHMgbnVtYmVyIHwgRGF0ZSwgUyBleHRlbmRzIGFueT4oXG4gIHN0cnVjdDogU3RydWN0PFQsIFM+LFxuICB0aHJlc2hvbGQ6IFQsXG4gIG9wdGlvbnM6IHtcbiAgICBleGNsdXNpdmU/OiBib29sZWFuXG4gIH0gPSB7fVxuKTogU3RydWN0PFQsIFM+IHtcbiAgY29uc3QgeyBleGNsdXNpdmUgfSA9IG9wdGlvbnNcbiAgcmV0dXJuIHJlZmluZShzdHJ1Y3QsICdtYXgnLCAodmFsdWUpID0+IHtcbiAgICByZXR1cm4gZXhjbHVzaXZlXG4gICAgICA/IHZhbHVlIDwgdGhyZXNob2xkXG4gICAgICA6IHZhbHVlIDw9IHRocmVzaG9sZCB8fFxuICAgICAgICAgIGBFeHBlY3RlZCBhICR7c3RydWN0LnR5cGV9IGdyZWF0ZXIgdGhhbiAke1xuICAgICAgICAgICAgZXhjbHVzaXZlID8gJycgOiAnb3IgZXF1YWwgdG8gJ1xuICAgICAgICAgIH0ke3RocmVzaG9sZH0gYnV0IHJlY2VpdmVkIFxcYCR7dmFsdWV9XFxgYFxuICB9KVxufVxuXG4vKipcbiAqIEVuc3VyZSB0aGF0IGEgbnVtYmVyIG9yIGRhdGUgaXMgYWJvdmUgYSB0aHJlc2hvbGQuXG4gKi9cblxuZXhwb3J0IGZ1bmN0aW9uIG1pbjxUIGV4dGVuZHMgbnVtYmVyIHwgRGF0ZSwgUyBleHRlbmRzIGFueT4oXG4gIHN0cnVjdDogU3RydWN0PFQsIFM+LFxuICB0aHJlc2hvbGQ6IFQsXG4gIG9wdGlvbnM6IHtcbiAgICBleGNsdXNpdmU/OiBib29sZWFuXG4gIH0gPSB7fVxuKTogU3RydWN0PFQsIFM+IHtcbiAgY29uc3QgeyBleGNsdXNpdmUgfSA9IG9wdGlvbnNcbiAgcmV0dXJuIHJlZmluZShzdHJ1Y3QsICdtaW4nLCAodmFsdWUpID0+IHtcbiAgICByZXR1cm4gZXhjbHVzaXZlXG4gICAgICA/IHZhbHVlID4gdGhyZXNob2xkXG4gICAgICA6IHZhbHVlID49IHRocmVzaG9sZCB8fFxuICAgICAgICAgIGBFeHBlY3RlZCBhICR7c3RydWN0LnR5cGV9IGdyZWF0ZXIgdGhhbiAke1xuICAgICAgICAgICAgZXhjbHVzaXZlID8gJycgOiAnb3IgZXF1YWwgdG8gJ1xuICAgICAgICAgIH0ke3RocmVzaG9sZH0gYnV0IHJlY2VpdmVkIFxcYCR7dmFsdWV9XFxgYFxuICB9KVxufVxuLyoqXG4gKiBFbnN1cmUgdGhhdCBhIHN0cmluZyBtYXRjaGVzIGEgcmVndWxhciBleHByZXNzaW9uLlxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBwYXR0ZXJuPFQgZXh0ZW5kcyBzdHJpbmcsIFMgZXh0ZW5kcyBhbnk+KFxuICBzdHJ1Y3Q6IFN0cnVjdDxULCBTPixcbiAgcmVnZXhwOiBSZWdFeHBcbik6IFN0cnVjdDxULCBTPiB7XG4gIHJldHVybiByZWZpbmUoc3RydWN0LCAncGF0dGVybicsICh2YWx1ZSkgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICByZWdleHAudGVzdCh2YWx1ZSkgfHxcbiAgICAgIGBFeHBlY3RlZCBhICR7c3RydWN0LnR5cGV9IG1hdGNoaW5nIFxcYC8ke3JlZ2V4cC5zb3VyY2V9L1xcYCBidXQgcmVjZWl2ZWQgXCIke3ZhbHVlfVwiYFxuICAgIClcbiAgfSlcbn1cblxuLyoqXG4gKiBFbnN1cmUgdGhhdCBhIHN0cmluZywgYXJyYXksIG51bWJlciwgZGF0ZSwgbWFwLCBvciBzZXQgaGFzIGEgc2l6ZSAob3IgbGVuZ3RoLCBvciB0aW1lKSBiZXR3ZWVuIGBtaW5gIGFuZCBgbWF4YC5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gc2l6ZTxcbiAgVCBleHRlbmRzIHN0cmluZyB8IG51bWJlciB8IERhdGUgfCBhbnlbXSB8IE1hcDxhbnksIGFueT4gfCBTZXQ8YW55PixcbiAgUyBleHRlbmRzIGFueVxuPihzdHJ1Y3Q6IFN0cnVjdDxULCBTPiwgbWluOiBudW1iZXIsIG1heDogbnVtYmVyID0gbWluKTogU3RydWN0PFQsIFM+IHtcbiAgY29uc3QgZXhwZWN0ZWQgPSBgRXhwZWN0ZWQgYSAke3N0cnVjdC50eXBlfWBcbiAgY29uc3Qgb2YgPSBtaW4gPT09IG1heCA/IGBvZiBcXGAke21pbn1cXGBgIDogYGJldHdlZW4gXFxgJHttaW59XFxgIGFuZCBcXGAke21heH1cXGBgXG5cbiAgcmV0dXJuIHJlZmluZShzdHJ1Y3QsICdzaXplJywgKHZhbHVlKSA9PiB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicgfHwgdmFsdWUgaW5zdGFuY2VvZiBEYXRlKSB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICAobWluIDw9IHZhbHVlICYmIHZhbHVlIDw9IG1heCkgfHxcbiAgICAgICAgYCR7ZXhwZWN0ZWR9ICR7b2Z9IGJ1dCByZWNlaXZlZCBcXGAke3ZhbHVlfVxcYGBcbiAgICAgIClcbiAgICB9IGVsc2UgaWYgKHZhbHVlIGluc3RhbmNlb2YgTWFwIHx8IHZhbHVlIGluc3RhbmNlb2YgU2V0KSB7XG4gICAgICBjb25zdCB7IHNpemUgfSA9IHZhbHVlXG4gICAgICByZXR1cm4gKFxuICAgICAgICAobWluIDw9IHNpemUgJiYgc2l6ZSA8PSBtYXgpIHx8XG4gICAgICAgIGAke2V4cGVjdGVkfSB3aXRoIGEgc2l6ZSAke29mfSBidXQgcmVjZWl2ZWQgb25lIHdpdGggYSBzaXplIG9mIFxcYCR7c2l6ZX1cXGBgXG4gICAgICApXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHsgbGVuZ3RoIH0gPSB2YWx1ZSBhcyBzdHJpbmcgfCBhbnlbXVxuICAgICAgcmV0dXJuIChcbiAgICAgICAgKG1pbiA8PSBsZW5ndGggJiYgbGVuZ3RoIDw9IG1heCkgfHxcbiAgICAgICAgYCR7ZXhwZWN0ZWR9IHdpdGggYSBsZW5ndGggJHtvZn0gYnV0IHJlY2VpdmVkIG9uZSB3aXRoIGEgbGVuZ3RoIG9mIFxcYCR7bGVuZ3RofVxcYGBcbiAgICAgIClcbiAgICB9XG4gIH0pXG59XG5cbi8qKlxuICogQXVnbWVudCBhIGBTdHJ1Y3RgIHRvIGFkZCBhbiBhZGRpdGlvbmFsIHJlZmluZW1lbnQgdG8gdGhlIHZhbGlkYXRpb24uXG4gKlxuICogVGhlIHJlZmluZXIgZnVuY3Rpb24gaXMgZ3VhcmFudGVlZCB0byByZWNlaXZlIGEgdmFsdWUgb2YgdGhlIHN0cnVjdCdzIHR5cGUsXG4gKiBiZWNhdXNlIHRoZSBzdHJ1Y3QncyBleGlzdGluZyB2YWxpZGF0aW9uIHdpbGwgYWxyZWFkeSBoYXZlIHBhc3NlZC4gVGhpc1xuICogYWxsb3dzIHlvdSB0byBsYXllciBhZGRpdGlvbmFsIHZhbGlkYXRpb24gb24gdG9wIG9mIGV4aXN0aW5nIHN0cnVjdHMuXG4gKi9cblxuZXhwb3J0IGZ1bmN0aW9uIHJlZmluZTxULCBTPihcbiAgc3RydWN0OiBTdHJ1Y3Q8VCwgUz4sXG4gIG5hbWU6IHN0cmluZyxcbiAgcmVmaW5lcjogUmVmaW5lcjxUPlxuKTogU3RydWN0PFQsIFM+IHtcbiAgcmV0dXJuIG5ldyBTdHJ1Y3Qoe1xuICAgIC4uLnN0cnVjdCxcbiAgICAqcmVmaW5lcih2YWx1ZSwgY3R4KSB7XG4gICAgICB5aWVsZCogc3RydWN0LnJlZmluZXIodmFsdWUsIGN0eClcbiAgICAgIGNvbnN0IHJlc3VsdCA9IHJlZmluZXIodmFsdWUsIGN0eClcbiAgICAgIGNvbnN0IGZhaWx1cmVzID0gdG9GYWlsdXJlcyhyZXN1bHQsIGN0eCwgc3RydWN0LCB2YWx1ZSlcblxuICAgICAgZm9yIChjb25zdCBmYWlsdXJlIG9mIGZhaWx1cmVzKSB7XG4gICAgICAgIHlpZWxkIHsgLi4uZmFpbHVyZSwgcmVmaW5lbWVudDogbmFtZSB9XG4gICAgICB9XG4gICAgfSxcbiAgfSlcbn1cbiIsICJpbXBvcnQgY3J5cHRvIGZyb20gJ2NyeXB0byc7XG5jb25zdCBybmRzOFBvb2wgPSBuZXcgVWludDhBcnJheSgyNTYpOyAvLyAjIG9mIHJhbmRvbSB2YWx1ZXMgdG8gcHJlLWFsbG9jYXRlXG5cbmxldCBwb29sUHRyID0gcm5kczhQb29sLmxlbmd0aDtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHJuZygpIHtcbiAgaWYgKHBvb2xQdHIgPiBybmRzOFBvb2wubGVuZ3RoIC0gMTYpIHtcbiAgICBjcnlwdG8ucmFuZG9tRmlsbFN5bmMocm5kczhQb29sKTtcbiAgICBwb29sUHRyID0gMDtcbiAgfVxuXG4gIHJldHVybiBybmRzOFBvb2wuc2xpY2UocG9vbFB0ciwgcG9vbFB0ciArPSAxNik7XG59IiwgImV4cG9ydCBkZWZhdWx0IC9eKD86WzAtOWEtZl17OH0tWzAtOWEtZl17NH0tWzEtNV1bMC05YS1mXXszfS1bODlhYl1bMC05YS1mXXszfS1bMC05YS1mXXsxMn18MDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAwKSQvaTsiLCAiaW1wb3J0IFJFR0VYIGZyb20gJy4vcmVnZXguanMnO1xuXG5mdW5jdGlvbiB2YWxpZGF0ZSh1dWlkKSB7XG4gIHJldHVybiB0eXBlb2YgdXVpZCA9PT0gJ3N0cmluZycgJiYgUkVHRVgudGVzdCh1dWlkKTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgdmFsaWRhdGU7IiwgImltcG9ydCB2YWxpZGF0ZSBmcm9tICcuL3ZhbGlkYXRlLmpzJztcbi8qKlxuICogQ29udmVydCBhcnJheSBvZiAxNiBieXRlIHZhbHVlcyB0byBVVUlEIHN0cmluZyBmb3JtYXQgb2YgdGhlIGZvcm06XG4gKiBYWFhYWFhYWC1YWFhYLVhYWFgtWFhYWC1YWFhYWFhYWFhYWFhcbiAqL1xuXG5jb25zdCBieXRlVG9IZXggPSBbXTtcblxuZm9yIChsZXQgaSA9IDA7IGkgPCAyNTY7ICsraSkge1xuICBieXRlVG9IZXgucHVzaCgoaSArIDB4MTAwKS50b1N0cmluZygxNikuc3Vic3RyKDEpKTtcbn1cblxuZnVuY3Rpb24gc3RyaW5naWZ5KGFyciwgb2Zmc2V0ID0gMCkge1xuICAvLyBOb3RlOiBCZSBjYXJlZnVsIGVkaXRpbmcgdGhpcyBjb2RlISAgSXQncyBiZWVuIHR1bmVkIGZvciBwZXJmb3JtYW5jZVxuICAvLyBhbmQgd29ya3MgaW4gd2F5cyB5b3UgbWF5IG5vdCBleHBlY3QuIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdXVpZGpzL3V1aWQvcHVsbC80MzRcbiAgY29uc3QgdXVpZCA9IChieXRlVG9IZXhbYXJyW29mZnNldCArIDBdXSArIGJ5dGVUb0hleFthcnJbb2Zmc2V0ICsgMV1dICsgYnl0ZVRvSGV4W2FycltvZmZzZXQgKyAyXV0gKyBieXRlVG9IZXhbYXJyW29mZnNldCArIDNdXSArICctJyArIGJ5dGVUb0hleFthcnJbb2Zmc2V0ICsgNF1dICsgYnl0ZVRvSGV4W2FycltvZmZzZXQgKyA1XV0gKyAnLScgKyBieXRlVG9IZXhbYXJyW29mZnNldCArIDZdXSArIGJ5dGVUb0hleFthcnJbb2Zmc2V0ICsgN11dICsgJy0nICsgYnl0ZVRvSGV4W2FycltvZmZzZXQgKyA4XV0gKyBieXRlVG9IZXhbYXJyW29mZnNldCArIDldXSArICctJyArIGJ5dGVUb0hleFthcnJbb2Zmc2V0ICsgMTBdXSArIGJ5dGVUb0hleFthcnJbb2Zmc2V0ICsgMTFdXSArIGJ5dGVUb0hleFthcnJbb2Zmc2V0ICsgMTJdXSArIGJ5dGVUb0hleFthcnJbb2Zmc2V0ICsgMTNdXSArIGJ5dGVUb0hleFthcnJbb2Zmc2V0ICsgMTRdXSArIGJ5dGVUb0hleFthcnJbb2Zmc2V0ICsgMTVdXSkudG9Mb3dlckNhc2UoKTsgLy8gQ29uc2lzdGVuY3kgY2hlY2sgZm9yIHZhbGlkIFVVSUQuICBJZiB0aGlzIHRocm93cywgaXQncyBsaWtlbHkgZHVlIHRvIG9uZVxuICAvLyBvZiB0aGUgZm9sbG93aW5nOlxuICAvLyAtIE9uZSBvciBtb3JlIGlucHV0IGFycmF5IHZhbHVlcyBkb24ndCBtYXAgdG8gYSBoZXggb2N0ZXQgKGxlYWRpbmcgdG9cbiAgLy8gXCJ1bmRlZmluZWRcIiBpbiB0aGUgdXVpZClcbiAgLy8gLSBJbnZhbGlkIGlucHV0IHZhbHVlcyBmb3IgdGhlIFJGQyBgdmVyc2lvbmAgb3IgYHZhcmlhbnRgIGZpZWxkc1xuXG4gIGlmICghdmFsaWRhdGUodXVpZCkpIHtcbiAgICB0aHJvdyBUeXBlRXJyb3IoJ1N0cmluZ2lmaWVkIFVVSUQgaXMgaW52YWxpZCcpO1xuICB9XG5cbiAgcmV0dXJuIHV1aWQ7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHN0cmluZ2lmeTsiLCAiaW1wb3J0IHJuZyBmcm9tICcuL3JuZy5qcyc7XG5pbXBvcnQgc3RyaW5naWZ5IGZyb20gJy4vc3RyaW5naWZ5LmpzJzsgLy8gKipgdjEoKWAgLSBHZW5lcmF0ZSB0aW1lLWJhc2VkIFVVSUQqKlxuLy9cbi8vIEluc3BpcmVkIGJ5IGh0dHBzOi8vZ2l0aHViLmNvbS9MaW9zSy9VVUlELmpzXG4vLyBhbmQgaHR0cDovL2RvY3MucHl0aG9uLm9yZy9saWJyYXJ5L3V1aWQuaHRtbFxuXG5sZXQgX25vZGVJZDtcblxubGV0IF9jbG9ja3NlcTsgLy8gUHJldmlvdXMgdXVpZCBjcmVhdGlvbiB0aW1lXG5cblxubGV0IF9sYXN0TVNlY3MgPSAwO1xubGV0IF9sYXN0TlNlY3MgPSAwOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3V1aWRqcy91dWlkIGZvciBBUEkgZGV0YWlsc1xuXG5mdW5jdGlvbiB2MShvcHRpb25zLCBidWYsIG9mZnNldCkge1xuICBsZXQgaSA9IGJ1ZiAmJiBvZmZzZXQgfHwgMDtcbiAgY29uc3QgYiA9IGJ1ZiB8fCBuZXcgQXJyYXkoMTYpO1xuICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcbiAgbGV0IG5vZGUgPSBvcHRpb25zLm5vZGUgfHwgX25vZGVJZDtcbiAgbGV0IGNsb2Nrc2VxID0gb3B0aW9ucy5jbG9ja3NlcSAhPT0gdW5kZWZpbmVkID8gb3B0aW9ucy5jbG9ja3NlcSA6IF9jbG9ja3NlcTsgLy8gbm9kZSBhbmQgY2xvY2tzZXEgbmVlZCB0byBiZSBpbml0aWFsaXplZCB0byByYW5kb20gdmFsdWVzIGlmIHRoZXkncmUgbm90XG4gIC8vIHNwZWNpZmllZC4gIFdlIGRvIHRoaXMgbGF6aWx5IHRvIG1pbmltaXplIGlzc3VlcyByZWxhdGVkIHRvIGluc3VmZmljaWVudFxuICAvLyBzeXN0ZW0gZW50cm9weS4gIFNlZSAjMTg5XG5cbiAgaWYgKG5vZGUgPT0gbnVsbCB8fCBjbG9ja3NlcSA9PSBudWxsKSB7XG4gICAgY29uc3Qgc2VlZEJ5dGVzID0gb3B0aW9ucy5yYW5kb20gfHwgKG9wdGlvbnMucm5nIHx8IHJuZykoKTtcblxuICAgIGlmIChub2RlID09IG51bGwpIHtcbiAgICAgIC8vIFBlciA0LjUsIGNyZWF0ZSBhbmQgNDgtYml0IG5vZGUgaWQsICg0NyByYW5kb20gYml0cyArIG11bHRpY2FzdCBiaXQgPSAxKVxuICAgICAgbm9kZSA9IF9ub2RlSWQgPSBbc2VlZEJ5dGVzWzBdIHwgMHgwMSwgc2VlZEJ5dGVzWzFdLCBzZWVkQnl0ZXNbMl0sIHNlZWRCeXRlc1szXSwgc2VlZEJ5dGVzWzRdLCBzZWVkQnl0ZXNbNV1dO1xuICAgIH1cblxuICAgIGlmIChjbG9ja3NlcSA9PSBudWxsKSB7XG4gICAgICAvLyBQZXIgNC4yLjIsIHJhbmRvbWl6ZSAoMTQgYml0KSBjbG9ja3NlcVxuICAgICAgY2xvY2tzZXEgPSBfY2xvY2tzZXEgPSAoc2VlZEJ5dGVzWzZdIDw8IDggfCBzZWVkQnl0ZXNbN10pICYgMHgzZmZmO1xuICAgIH1cbiAgfSAvLyBVVUlEIHRpbWVzdGFtcHMgYXJlIDEwMCBuYW5vLXNlY29uZCB1bml0cyBzaW5jZSB0aGUgR3JlZ29yaWFuIGVwb2NoLFxuICAvLyAoMTU4Mi0xMC0xNSAwMDowMCkuICBKU051bWJlcnMgYXJlbid0IHByZWNpc2UgZW5vdWdoIGZvciB0aGlzLCBzb1xuICAvLyB0aW1lIGlzIGhhbmRsZWQgaW50ZXJuYWxseSBhcyAnbXNlY3MnIChpbnRlZ2VyIG1pbGxpc2Vjb25kcykgYW5kICduc2VjcydcbiAgLy8gKDEwMC1uYW5vc2Vjb25kcyBvZmZzZXQgZnJvbSBtc2Vjcykgc2luY2UgdW5peCBlcG9jaCwgMTk3MC0wMS0wMSAwMDowMC5cblxuXG4gIGxldCBtc2VjcyA9IG9wdGlvbnMubXNlY3MgIT09IHVuZGVmaW5lZCA/IG9wdGlvbnMubXNlY3MgOiBEYXRlLm5vdygpOyAvLyBQZXIgNC4yLjEuMiwgdXNlIGNvdW50IG9mIHV1aWQncyBnZW5lcmF0ZWQgZHVyaW5nIHRoZSBjdXJyZW50IGNsb2NrXG4gIC8vIGN5Y2xlIHRvIHNpbXVsYXRlIGhpZ2hlciByZXNvbHV0aW9uIGNsb2NrXG5cbiAgbGV0IG5zZWNzID0gb3B0aW9ucy5uc2VjcyAhPT0gdW5kZWZpbmVkID8gb3B0aW9ucy5uc2VjcyA6IF9sYXN0TlNlY3MgKyAxOyAvLyBUaW1lIHNpbmNlIGxhc3QgdXVpZCBjcmVhdGlvbiAoaW4gbXNlY3MpXG5cbiAgY29uc3QgZHQgPSBtc2VjcyAtIF9sYXN0TVNlY3MgKyAobnNlY3MgLSBfbGFzdE5TZWNzKSAvIDEwMDAwOyAvLyBQZXIgNC4yLjEuMiwgQnVtcCBjbG9ja3NlcSBvbiBjbG9jayByZWdyZXNzaW9uXG5cbiAgaWYgKGR0IDwgMCAmJiBvcHRpb25zLmNsb2Nrc2VxID09PSB1bmRlZmluZWQpIHtcbiAgICBjbG9ja3NlcSA9IGNsb2Nrc2VxICsgMSAmIDB4M2ZmZjtcbiAgfSAvLyBSZXNldCBuc2VjcyBpZiBjbG9jayByZWdyZXNzZXMgKG5ldyBjbG9ja3NlcSkgb3Igd2UndmUgbW92ZWQgb250byBhIG5ld1xuICAvLyB0aW1lIGludGVydmFsXG5cblxuICBpZiAoKGR0IDwgMCB8fCBtc2VjcyA+IF9sYXN0TVNlY3MpICYmIG9wdGlvbnMubnNlY3MgPT09IHVuZGVmaW5lZCkge1xuICAgIG5zZWNzID0gMDtcbiAgfSAvLyBQZXIgNC4yLjEuMiBUaHJvdyBlcnJvciBpZiB0b28gbWFueSB1dWlkcyBhcmUgcmVxdWVzdGVkXG5cblxuICBpZiAobnNlY3MgPj0gMTAwMDApIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJ1dWlkLnYxKCk6IENhbid0IGNyZWF0ZSBtb3JlIHRoYW4gMTBNIHV1aWRzL3NlY1wiKTtcbiAgfVxuXG4gIF9sYXN0TVNlY3MgPSBtc2VjcztcbiAgX2xhc3ROU2VjcyA9IG5zZWNzO1xuICBfY2xvY2tzZXEgPSBjbG9ja3NlcTsgLy8gUGVyIDQuMS40IC0gQ29udmVydCBmcm9tIHVuaXggZXBvY2ggdG8gR3JlZ29yaWFuIGVwb2NoXG5cbiAgbXNlY3MgKz0gMTIyMTkyOTI4MDAwMDA7IC8vIGB0aW1lX2xvd2BcblxuICBjb25zdCB0bCA9ICgobXNlY3MgJiAweGZmZmZmZmYpICogMTAwMDAgKyBuc2VjcykgJSAweDEwMDAwMDAwMDtcbiAgYltpKytdID0gdGwgPj4+IDI0ICYgMHhmZjtcbiAgYltpKytdID0gdGwgPj4+IDE2ICYgMHhmZjtcbiAgYltpKytdID0gdGwgPj4+IDggJiAweGZmO1xuICBiW2krK10gPSB0bCAmIDB4ZmY7IC8vIGB0aW1lX21pZGBcblxuICBjb25zdCB0bWggPSBtc2VjcyAvIDB4MTAwMDAwMDAwICogMTAwMDAgJiAweGZmZmZmZmY7XG4gIGJbaSsrXSA9IHRtaCA+Pj4gOCAmIDB4ZmY7XG4gIGJbaSsrXSA9IHRtaCAmIDB4ZmY7IC8vIGB0aW1lX2hpZ2hfYW5kX3ZlcnNpb25gXG5cbiAgYltpKytdID0gdG1oID4+PiAyNCAmIDB4ZiB8IDB4MTA7IC8vIGluY2x1ZGUgdmVyc2lvblxuXG4gIGJbaSsrXSA9IHRtaCA+Pj4gMTYgJiAweGZmOyAvLyBgY2xvY2tfc2VxX2hpX2FuZF9yZXNlcnZlZGAgKFBlciA0LjIuMiAtIGluY2x1ZGUgdmFyaWFudClcblxuICBiW2krK10gPSBjbG9ja3NlcSA+Pj4gOCB8IDB4ODA7IC8vIGBjbG9ja19zZXFfbG93YFxuXG4gIGJbaSsrXSA9IGNsb2Nrc2VxICYgMHhmZjsgLy8gYG5vZGVgXG5cbiAgZm9yIChsZXQgbiA9IDA7IG4gPCA2OyArK24pIHtcbiAgICBiW2kgKyBuXSA9IG5vZGVbbl07XG4gIH1cblxuICByZXR1cm4gYnVmIHx8IHN0cmluZ2lmeShiKTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgdjE7IiwgImltcG9ydCB2YWxpZGF0ZSBmcm9tICcuL3ZhbGlkYXRlLmpzJztcblxuZnVuY3Rpb24gcGFyc2UodXVpZCkge1xuICBpZiAoIXZhbGlkYXRlKHV1aWQpKSB7XG4gICAgdGhyb3cgVHlwZUVycm9yKCdJbnZhbGlkIFVVSUQnKTtcbiAgfVxuXG4gIGxldCB2O1xuICBjb25zdCBhcnIgPSBuZXcgVWludDhBcnJheSgxNik7IC8vIFBhcnNlICMjIyMjIyMjLS4uLi4tLi4uLi0uLi4uLS4uLi4uLi4uLi4uLlxuXG4gIGFyclswXSA9ICh2ID0gcGFyc2VJbnQodXVpZC5zbGljZSgwLCA4KSwgMTYpKSA+Pj4gMjQ7XG4gIGFyclsxXSA9IHYgPj4+IDE2ICYgMHhmZjtcbiAgYXJyWzJdID0gdiA+Pj4gOCAmIDB4ZmY7XG4gIGFyclszXSA9IHYgJiAweGZmOyAvLyBQYXJzZSAuLi4uLi4uLi0jIyMjLS4uLi4tLi4uLi0uLi4uLi4uLi4uLi5cblxuICBhcnJbNF0gPSAodiA9IHBhcnNlSW50KHV1aWQuc2xpY2UoOSwgMTMpLCAxNikpID4+PiA4O1xuICBhcnJbNV0gPSB2ICYgMHhmZjsgLy8gUGFyc2UgLi4uLi4uLi4tLi4uLi0jIyMjLS4uLi4tLi4uLi4uLi4uLi4uXG5cbiAgYXJyWzZdID0gKHYgPSBwYXJzZUludCh1dWlkLnNsaWNlKDE0LCAxOCksIDE2KSkgPj4+IDg7XG4gIGFycls3XSA9IHYgJiAweGZmOyAvLyBQYXJzZSAuLi4uLi4uLi0uLi4uLS4uLi4tIyMjIy0uLi4uLi4uLi4uLi5cblxuICBhcnJbOF0gPSAodiA9IHBhcnNlSW50KHV1aWQuc2xpY2UoMTksIDIzKSwgMTYpKSA+Pj4gODtcbiAgYXJyWzldID0gdiAmIDB4ZmY7IC8vIFBhcnNlIC4uLi4uLi4uLS4uLi4tLi4uLi0uLi4uLSMjIyMjIyMjIyMjI1xuICAvLyAoVXNlIFwiL1wiIHRvIGF2b2lkIDMyLWJpdCB0cnVuY2F0aW9uIHdoZW4gYml0LXNoaWZ0aW5nIGhpZ2gtb3JkZXIgYnl0ZXMpXG5cbiAgYXJyWzEwXSA9ICh2ID0gcGFyc2VJbnQodXVpZC5zbGljZSgyNCwgMzYpLCAxNikpIC8gMHgxMDAwMDAwMDAwMCAmIDB4ZmY7XG4gIGFyclsxMV0gPSB2IC8gMHgxMDAwMDAwMDAgJiAweGZmO1xuICBhcnJbMTJdID0gdiA+Pj4gMjQgJiAweGZmO1xuICBhcnJbMTNdID0gdiA+Pj4gMTYgJiAweGZmO1xuICBhcnJbMTRdID0gdiA+Pj4gOCAmIDB4ZmY7XG4gIGFyclsxNV0gPSB2ICYgMHhmZjtcbiAgcmV0dXJuIGFycjtcbn1cblxuZXhwb3J0IGRlZmF1bHQgcGFyc2U7IiwgImltcG9ydCBzdHJpbmdpZnkgZnJvbSAnLi9zdHJpbmdpZnkuanMnO1xuaW1wb3J0IHBhcnNlIGZyb20gJy4vcGFyc2UuanMnO1xuXG5mdW5jdGlvbiBzdHJpbmdUb0J5dGVzKHN0cikge1xuICBzdHIgPSB1bmVzY2FwZShlbmNvZGVVUklDb21wb25lbnQoc3RyKSk7IC8vIFVURjggZXNjYXBlXG5cbiAgY29uc3QgYnl0ZXMgPSBbXTtcblxuICBmb3IgKGxldCBpID0gMDsgaSA8IHN0ci5sZW5ndGg7ICsraSkge1xuICAgIGJ5dGVzLnB1c2goc3RyLmNoYXJDb2RlQXQoaSkpO1xuICB9XG5cbiAgcmV0dXJuIGJ5dGVzO1xufVxuXG5leHBvcnQgY29uc3QgRE5TID0gJzZiYTdiODEwLTlkYWQtMTFkMS04MGI0LTAwYzA0ZmQ0MzBjOCc7XG5leHBvcnQgY29uc3QgVVJMID0gJzZiYTdiODExLTlkYWQtMTFkMS04MGI0LTAwYzA0ZmQ0MzBjOCc7XG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiAobmFtZSwgdmVyc2lvbiwgaGFzaGZ1bmMpIHtcbiAgZnVuY3Rpb24gZ2VuZXJhdGVVVUlEKHZhbHVlLCBuYW1lc3BhY2UsIGJ1Ziwgb2Zmc2V0KSB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHZhbHVlID0gc3RyaW5nVG9CeXRlcyh2YWx1ZSk7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBuYW1lc3BhY2UgPT09ICdzdHJpbmcnKSB7XG4gICAgICBuYW1lc3BhY2UgPSBwYXJzZShuYW1lc3BhY2UpO1xuICAgIH1cblxuICAgIGlmIChuYW1lc3BhY2UubGVuZ3RoICE9PSAxNikge1xuICAgICAgdGhyb3cgVHlwZUVycm9yKCdOYW1lc3BhY2UgbXVzdCBiZSBhcnJheS1saWtlICgxNiBpdGVyYWJsZSBpbnRlZ2VyIHZhbHVlcywgMC0yNTUpJyk7XG4gICAgfSAvLyBDb21wdXRlIGhhc2ggb2YgbmFtZXNwYWNlIGFuZCB2YWx1ZSwgUGVyIDQuM1xuICAgIC8vIEZ1dHVyZTogVXNlIHNwcmVhZCBzeW50YXggd2hlbiBzdXBwb3J0ZWQgb24gYWxsIHBsYXRmb3JtcywgZS5nLiBgYnl0ZXMgPVxuICAgIC8vIGhhc2hmdW5jKFsuLi5uYW1lc3BhY2UsIC4uLiB2YWx1ZV0pYFxuXG5cbiAgICBsZXQgYnl0ZXMgPSBuZXcgVWludDhBcnJheSgxNiArIHZhbHVlLmxlbmd0aCk7XG4gICAgYnl0ZXMuc2V0KG5hbWVzcGFjZSk7XG4gICAgYnl0ZXMuc2V0KHZhbHVlLCBuYW1lc3BhY2UubGVuZ3RoKTtcbiAgICBieXRlcyA9IGhhc2hmdW5jKGJ5dGVzKTtcbiAgICBieXRlc1s2XSA9IGJ5dGVzWzZdICYgMHgwZiB8IHZlcnNpb247XG4gICAgYnl0ZXNbOF0gPSBieXRlc1s4XSAmIDB4M2YgfCAweDgwO1xuXG4gICAgaWYgKGJ1Zikge1xuICAgICAgb2Zmc2V0ID0gb2Zmc2V0IHx8IDA7XG5cbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgMTY7ICsraSkge1xuICAgICAgICBidWZbb2Zmc2V0ICsgaV0gPSBieXRlc1tpXTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGJ1ZjtcbiAgICB9XG5cbiAgICByZXR1cm4gc3RyaW5naWZ5KGJ5dGVzKTtcbiAgfSAvLyBGdW5jdGlvbiNuYW1lIGlzIG5vdCBzZXR0YWJsZSBvbiBzb21lIHBsYXRmb3JtcyAoIzI3MClcblxuXG4gIHRyeSB7XG4gICAgZ2VuZXJhdGVVVUlELm5hbWUgPSBuYW1lOyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZW1wdHlcbiAgfSBjYXRjaCAoZXJyKSB7fSAvLyBGb3IgQ29tbW9uSlMgZGVmYXVsdCBleHBvcnQgc3VwcG9ydFxuXG5cbiAgZ2VuZXJhdGVVVUlELkROUyA9IEROUztcbiAgZ2VuZXJhdGVVVUlELlVSTCA9IFVSTDtcbiAgcmV0dXJuIGdlbmVyYXRlVVVJRDtcbn0iLCAiaW1wb3J0IGNyeXB0byBmcm9tICdjcnlwdG8nO1xuXG5mdW5jdGlvbiBtZDUoYnl0ZXMpIHtcbiAgaWYgKEFycmF5LmlzQXJyYXkoYnl0ZXMpKSB7XG4gICAgYnl0ZXMgPSBCdWZmZXIuZnJvbShieXRlcyk7XG4gIH0gZWxzZSBpZiAodHlwZW9mIGJ5dGVzID09PSAnc3RyaW5nJykge1xuICAgIGJ5dGVzID0gQnVmZmVyLmZyb20oYnl0ZXMsICd1dGY4Jyk7XG4gIH1cblxuICByZXR1cm4gY3J5cHRvLmNyZWF0ZUhhc2goJ21kNScpLnVwZGF0ZShieXRlcykuZGlnZXN0KCk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IG1kNTsiLCAiaW1wb3J0IHYzNSBmcm9tICcuL3YzNS5qcyc7XG5pbXBvcnQgbWQ1IGZyb20gJy4vbWQ1LmpzJztcbmNvbnN0IHYzID0gdjM1KCd2MycsIDB4MzAsIG1kNSk7XG5leHBvcnQgZGVmYXVsdCB2MzsiLCAiaW1wb3J0IHJuZyBmcm9tICcuL3JuZy5qcyc7XG5pbXBvcnQgc3RyaW5naWZ5IGZyb20gJy4vc3RyaW5naWZ5LmpzJztcblxuZnVuY3Rpb24gdjQob3B0aW9ucywgYnVmLCBvZmZzZXQpIHtcbiAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307XG4gIGNvbnN0IHJuZHMgPSBvcHRpb25zLnJhbmRvbSB8fCAob3B0aW9ucy5ybmcgfHwgcm5nKSgpOyAvLyBQZXIgNC40LCBzZXQgYml0cyBmb3IgdmVyc2lvbiBhbmQgYGNsb2NrX3NlcV9oaV9hbmRfcmVzZXJ2ZWRgXG5cbiAgcm5kc1s2XSA9IHJuZHNbNl0gJiAweDBmIHwgMHg0MDtcbiAgcm5kc1s4XSA9IHJuZHNbOF0gJiAweDNmIHwgMHg4MDsgLy8gQ29weSBieXRlcyB0byBidWZmZXIsIGlmIHByb3ZpZGVkXG5cbiAgaWYgKGJ1Zikge1xuICAgIG9mZnNldCA9IG9mZnNldCB8fCAwO1xuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCAxNjsgKytpKSB7XG4gICAgICBidWZbb2Zmc2V0ICsgaV0gPSBybmRzW2ldO1xuICAgIH1cblxuICAgIHJldHVybiBidWY7XG4gIH1cblxuICByZXR1cm4gc3RyaW5naWZ5KHJuZHMpO1xufVxuXG5leHBvcnQgZGVmYXVsdCB2NDsiLCAiaW1wb3J0IGNyeXB0byBmcm9tICdjcnlwdG8nO1xuXG5mdW5jdGlvbiBzaGExKGJ5dGVzKSB7XG4gIGlmIChBcnJheS5pc0FycmF5KGJ5dGVzKSkge1xuICAgIGJ5dGVzID0gQnVmZmVyLmZyb20oYnl0ZXMpO1xuICB9IGVsc2UgaWYgKHR5cGVvZiBieXRlcyA9PT0gJ3N0cmluZycpIHtcbiAgICBieXRlcyA9IEJ1ZmZlci5mcm9tKGJ5dGVzLCAndXRmOCcpO1xuICB9XG5cbiAgcmV0dXJuIGNyeXB0by5jcmVhdGVIYXNoKCdzaGExJykudXBkYXRlKGJ5dGVzKS5kaWdlc3QoKTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgc2hhMTsiLCAiaW1wb3J0IHYzNSBmcm9tICcuL3YzNS5qcyc7XG5pbXBvcnQgc2hhMSBmcm9tICcuL3NoYTEuanMnO1xuY29uc3QgdjUgPSB2MzUoJ3Y1JywgMHg1MCwgc2hhMSk7XG5leHBvcnQgZGVmYXVsdCB2NTsiLCAiZXhwb3J0IGRlZmF1bHQgJzAwMDAwMDAwLTAwMDAtMDAwMC0wMDAwLTAwMDAwMDAwMDAwMCc7IiwgImltcG9ydCB2YWxpZGF0ZSBmcm9tICcuL3ZhbGlkYXRlLmpzJztcblxuZnVuY3Rpb24gdmVyc2lvbih1dWlkKSB7XG4gIGlmICghdmFsaWRhdGUodXVpZCkpIHtcbiAgICB0aHJvdyBUeXBlRXJyb3IoJ0ludmFsaWQgVVVJRCcpO1xuICB9XG5cbiAgcmV0dXJuIHBhcnNlSW50KHV1aWQuc3Vic3RyKDE0LCAxKSwgMTYpO1xufVxuXG5leHBvcnQgZGVmYXVsdCB2ZXJzaW9uOyIsICJleHBvcnQgeyBkZWZhdWx0IGFzIHYxIH0gZnJvbSAnLi92MS5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHYzIH0gZnJvbSAnLi92My5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHY0IH0gZnJvbSAnLi92NC5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHY1IH0gZnJvbSAnLi92NS5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIE5JTCB9IGZyb20gJy4vbmlsLmpzJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgdmVyc2lvbiB9IGZyb20gJy4vdmVyc2lvbi5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHZhbGlkYXRlIH0gZnJvbSAnLi92YWxpZGF0ZS5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHN0cmluZ2lmeSB9IGZyb20gJy4vc3RyaW5naWZ5LmpzJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgcGFyc2UgfSBmcm9tICcuL3BhcnNlLmpzJzsiLCAiJ3VzZSBzdHJpY3QnO1xuXG5jb25zdCB1dWlkID0gcmVxdWlyZSgndXVpZCcpLnY0O1xuXG4vKipcbiAqICBHZW5lcmF0ZXMgYSBKU09OLVJQQyAxLjAgb3IgMi4wIHJlcXVlc3RcbiAqICBAcGFyYW0ge1N0cmluZ30gbWV0aG9kIE5hbWUgb2YgbWV0aG9kIHRvIGNhbGxcbiAqICBAcGFyYW0ge0FycmF5fE9iamVjdH0gcGFyYW1zIEFycmF5IG9mIHBhcmFtZXRlcnMgcGFzc2VkIHRvIHRoZSBtZXRob2QgYXMgc3BlY2lmaWVkLCBvciBhbiBvYmplY3Qgb2YgcGFyYW1ldGVyIG5hbWVzIGFuZCBjb3JyZXNwb25kaW5nIHZhbHVlXG4gKiAgQHBhcmFtIHtTdHJpbmd8TnVtYmVyfG51bGx9IFtpZF0gUmVxdWVzdCBJRCBjYW4gYmUgYSBzdHJpbmcsIG51bWJlciwgbnVsbCBmb3IgZXhwbGljaXQgbm90aWZpY2F0aW9uIG9yIGxlZnQgb3V0IGZvciBhdXRvbWF0aWMgZ2VuZXJhdGlvblxuICogIEBwYXJhbSB7T2JqZWN0fSBbb3B0aW9uc11cbiAqICBAcGFyYW0ge051bWJlcn0gW29wdGlvbnMudmVyc2lvbj0yXSBKU09OLVJQQyB2ZXJzaW9uIHRvIHVzZSAoMSBvciAyKVxuICogIEBwYXJhbSB7Qm9vbGVhbn0gW29wdGlvbnMubm90aWZpY2F0aW9uSWROdWxsPWZhbHNlXSBXaGVuIHRydWUsIHZlcnNpb24gMiByZXF1ZXN0cyB3aWxsIHNldCBpZCB0byBudWxsIGluc3RlYWQgb2Ygb21pdHRpbmcgaXRcbiAqICBAcGFyYW0ge0Z1bmN0aW9ufSBbb3B0aW9ucy5nZW5lcmF0b3JdIFBhc3NlZCB0aGUgcmVxdWVzdCwgYW5kIHRoZSBvcHRpb25zIG9iamVjdCBhbmQgaXMgZXhwZWN0ZWQgdG8gcmV0dXJuIGEgcmVxdWVzdCBJRFxuICogIEB0aHJvd3Mge1R5cGVFcnJvcn0gSWYgYW55IG9mIHRoZSBwYXJhbWV0ZXJzIGFyZSBpbnZhbGlkXG4gKiAgQHJldHVybiB7T2JqZWN0fSBBIEpTT04tUlBDIDEuMCBvciAyLjAgcmVxdWVzdFxuICogIEBtZW1iZXJPZiBVdGlsc1xuICovXG5jb25zdCBnZW5lcmF0ZVJlcXVlc3QgPSBmdW5jdGlvbihtZXRob2QsIHBhcmFtcywgaWQsIG9wdGlvbnMpIHtcbiAgaWYodHlwZW9mIG1ldGhvZCAhPT0gJ3N0cmluZycpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKG1ldGhvZCArICcgbXVzdCBiZSBhIHN0cmluZycpO1xuICB9XG5cbiAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307XG5cbiAgLy8gY2hlY2sgdmFsaWQgdmVyc2lvbiBwcm92aWRlZFxuICBjb25zdCB2ZXJzaW9uID0gdHlwZW9mIG9wdGlvbnMudmVyc2lvbiA9PT0gJ251bWJlcicgPyBvcHRpb25zLnZlcnNpb24gOiAyO1xuICBpZiAodmVyc2lvbiAhPT0gMSAmJiB2ZXJzaW9uICE9PSAyKSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcih2ZXJzaW9uICsgJyBtdXN0IGJlIDEgb3IgMicpO1xuICB9XG5cbiAgY29uc3QgcmVxdWVzdCA9IHtcbiAgICBtZXRob2Q6IG1ldGhvZFxuICB9O1xuXG4gIGlmKHZlcnNpb24gPT09IDIpIHtcbiAgICByZXF1ZXN0Lmpzb25ycGMgPSAnMi4wJztcbiAgfVxuXG4gIGlmKHBhcmFtcykge1xuICAgIC8vIHBhcmFtcyBnaXZlbiwgYnV0IGludmFsaWQ/XG4gICAgaWYodHlwZW9mIHBhcmFtcyAhPT0gJ29iamVjdCcgJiYgIUFycmF5LmlzQXJyYXkocGFyYW1zKSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihwYXJhbXMgKyAnIG11c3QgYmUgYW4gb2JqZWN0LCBhcnJheSBvciBvbWl0dGVkJyk7XG4gICAgfVxuICAgIHJlcXVlc3QucGFyYW1zID0gcGFyYW1zO1xuICB9XG5cbiAgLy8gaWYgaWQgd2FzIGxlZnQgb3V0LCBnZW5lcmF0ZSBvbmUgKG51bGwgbWVhbnMgZXhwbGljaXQgbm90aWZpY2F0aW9uKVxuICBpZih0eXBlb2YoaWQpID09PSAndW5kZWZpbmVkJykge1xuICAgIGNvbnN0IGdlbmVyYXRvciA9IHR5cGVvZiBvcHRpb25zLmdlbmVyYXRvciA9PT0gJ2Z1bmN0aW9uJyA/IG9wdGlvbnMuZ2VuZXJhdG9yIDogZnVuY3Rpb24oKSB7IHJldHVybiB1dWlkKCk7IH07XG4gICAgcmVxdWVzdC5pZCA9IGdlbmVyYXRvcihyZXF1ZXN0LCBvcHRpb25zKTtcbiAgfSBlbHNlIGlmICh2ZXJzaW9uID09PSAyICYmIGlkID09PSBudWxsKSB7XG4gICAgLy8gd2UgaGF2ZSBhIHZlcnNpb24gMiBub3RpZmljYXRpb25cbiAgICBpZiAob3B0aW9ucy5ub3RpZmljYXRpb25JZE51bGwpIHtcbiAgICAgIHJlcXVlc3QuaWQgPSBudWxsOyAvLyBpZCB3aWxsIG5vdCBiZSBzZXQgYXQgYWxsIHVubGVzcyBvcHRpb24gcHJvdmlkZWRcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgcmVxdWVzdC5pZCA9IGlkO1xuICB9XG5cbiAgcmV0dXJuIHJlcXVlc3Q7XG59O1xuXG5tb2R1bGUuZXhwb3J0cyA9IGdlbmVyYXRlUmVxdWVzdDtcbiIsICIndXNlIHN0cmljdCc7XG5cbmNvbnN0IHV1aWQgPSByZXF1aXJlKCd1dWlkJykudjQ7XG5jb25zdCBnZW5lcmF0ZVJlcXVlc3QgPSByZXF1aXJlKCcuLi8uLi9nZW5lcmF0ZVJlcXVlc3QnKTtcblxuLyoqXG4gKiBDb25zdHJ1Y3RvciBmb3IgYSBKYXlzb24gQnJvd3NlciBDbGllbnQgdGhhdCBkb2VzIG5vdCBkZXBlbmQgYW55IG5vZGUuanMgY29yZSBsaWJyYXJpZXNcbiAqIEBjbGFzcyBDbGllbnRCcm93c2VyXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBjYWxsU2VydmVyIE1ldGhvZCB0aGF0IGNhbGxzIHRoZSBzZXJ2ZXIsIHJlY2VpdmVzIHRoZSBzdHJpbmdpZmllZCByZXF1ZXN0IGFuZCBhIHJlZ3VsYXIgbm9kZS1zdHlsZSBjYWxsYmFja1xuICogQHBhcmFtIHtPYmplY3R9IFtvcHRpb25zXVxuICogQHBhcmFtIHtGdW5jdGlvbn0gW29wdGlvbnMucmV2aXZlcl0gUmV2aXZlciBmdW5jdGlvbiBmb3IgSlNPTlxuICogQHBhcmFtIHtGdW5jdGlvbn0gW29wdGlvbnMucmVwbGFjZXJdIFJlcGxhY2VyIGZ1bmN0aW9uIGZvciBKU09OXG4gKiBAcGFyYW0ge051bWJlcn0gW29wdGlvbnMudmVyc2lvbj0yXSBKU09OLVJQQyB2ZXJzaW9uIHRvIHVzZSAoMXwyKVxuICogQHBhcmFtIHtGdW5jdGlvbn0gW29wdGlvbnMuZ2VuZXJhdG9yXSBGdW5jdGlvbiB0byB1c2UgZm9yIGdlbmVyYXRpbmcgcmVxdWVzdCBJRHNcbiAqICBAcGFyYW0ge0Jvb2xlYW59IFtvcHRpb25zLm5vdGlmaWNhdGlvbklkTnVsbD1mYWxzZV0gV2hlbiB0cnVlLCB2ZXJzaW9uIDIgcmVxdWVzdHMgd2lsbCBzZXQgaWQgdG8gbnVsbCBpbnN0ZWFkIG9mIG9taXR0aW5nIGl0XG4gKiBAcmV0dXJuIHtDbGllbnRCcm93c2VyfVxuICovXG5jb25zdCBDbGllbnRCcm93c2VyID0gZnVuY3Rpb24oY2FsbFNlcnZlciwgb3B0aW9ucykge1xuICBpZighKHRoaXMgaW5zdGFuY2VvZiBDbGllbnRCcm93c2VyKSkge1xuICAgIHJldHVybiBuZXcgQ2xpZW50QnJvd3NlcihjYWxsU2VydmVyLCBvcHRpb25zKTtcbiAgfVxuXG4gIGlmICghb3B0aW9ucykge1xuICAgIG9wdGlvbnMgPSB7fTtcbiAgfVxuXG4gIHRoaXMub3B0aW9ucyA9IHtcbiAgICByZXZpdmVyOiB0eXBlb2Ygb3B0aW9ucy5yZXZpdmVyICE9PSAndW5kZWZpbmVkJyA/IG9wdGlvbnMucmV2aXZlciA6IG51bGwsXG4gICAgcmVwbGFjZXI6IHR5cGVvZiBvcHRpb25zLnJlcGxhY2VyICE9PSAndW5kZWZpbmVkJyA/IG9wdGlvbnMucmVwbGFjZXIgOiBudWxsLFxuICAgIGdlbmVyYXRvcjogdHlwZW9mIG9wdGlvbnMuZ2VuZXJhdG9yICE9PSAndW5kZWZpbmVkJyA/IG9wdGlvbnMuZ2VuZXJhdG9yIDogZnVuY3Rpb24oKSB7IHJldHVybiB1dWlkKCk7IH0sXG4gICAgdmVyc2lvbjogdHlwZW9mIG9wdGlvbnMudmVyc2lvbiAhPT0gJ3VuZGVmaW5lZCcgPyBvcHRpb25zLnZlcnNpb24gOiAyLFxuICAgIG5vdGlmaWNhdGlvbklkTnVsbDogdHlwZW9mIG9wdGlvbnMubm90aWZpY2F0aW9uSWROdWxsID09PSAnYm9vbGVhbicgPyBvcHRpb25zLm5vdGlmaWNhdGlvbklkTnVsbCA6IGZhbHNlLFxuICB9O1xuXG4gIHRoaXMuY2FsbFNlcnZlciA9IGNhbGxTZXJ2ZXI7XG59O1xuXG5tb2R1bGUuZXhwb3J0cyA9IENsaWVudEJyb3dzZXI7XG5cbi8qKlxuICogIENyZWF0ZXMgYSByZXF1ZXN0IGFuZCBkaXNwYXRjaGVzIGl0IGlmIGdpdmVuIGEgY2FsbGJhY2suXG4gKiAgQHBhcmFtIHtTdHJpbmd8QXJyYXl9IG1ldGhvZCBBIGJhdGNoIHJlcXVlc3QgaWYgcGFzc2VkIGFuIEFycmF5LCBvciBhIG1ldGhvZCBuYW1lIGlmIHBhc3NlZCBhIFN0cmluZ1xuICogIEBwYXJhbSB7QXJyYXl8T2JqZWN0fSBbcGFyYW1zXSBQYXJhbWV0ZXJzIGZvciB0aGUgbWV0aG9kXG4gKiAgQHBhcmFtIHtTdHJpbmd8TnVtYmVyfSBbaWRdIE9wdGlvbmFsIGlkLiBJZiB1bmRlZmluZWQgYW4gaWQgd2lsbCBiZSBnZW5lcmF0ZWQuIElmIG51bGwgaXQgY3JlYXRlcyBhIG5vdGlmaWNhdGlvbiByZXF1ZXN0XG4gKiAgQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSBSZXF1ZXN0IGNhbGxiYWNrLiBJZiBzcGVjaWZpZWQsIGV4ZWN1dGVzIHRoZSByZXF1ZXN0IHJhdGhlciB0aGFuIG9ubHkgcmV0dXJuaW5nIGl0LlxuICogIEB0aHJvd3Mge1R5cGVFcnJvcn0gSW52YWxpZCBwYXJhbWV0ZXJzXG4gKiAgQHJldHVybiB7T2JqZWN0fSBKU09OLVJQQyAxLjAgb3IgMi4wIGNvbXBhdGlibGUgcmVxdWVzdFxuICovXG5DbGllbnRCcm93c2VyLnByb3RvdHlwZS5yZXF1ZXN0ID0gZnVuY3Rpb24obWV0aG9kLCBwYXJhbXMsIGlkLCBjYWxsYmFjaykge1xuICBjb25zdCBzZWxmID0gdGhpcztcbiAgbGV0IHJlcXVlc3QgPSBudWxsO1xuXG4gIC8vIGlzIHRoaXMgYSBiYXRjaCByZXF1ZXN0P1xuICBjb25zdCBpc0JhdGNoID0gQXJyYXkuaXNBcnJheShtZXRob2QpICYmIHR5cGVvZiBwYXJhbXMgPT09ICdmdW5jdGlvbic7XG5cbiAgaWYgKHRoaXMub3B0aW9ucy52ZXJzaW9uID09PSAxICYmIGlzQmF0Y2gpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdKU09OLVJQQyAxLjAgZG9lcyBub3Qgc3VwcG9ydCBiYXRjaGluZycpO1xuICB9XG5cbiAgLy8gaXMgdGhpcyBhIHJhdyByZXF1ZXN0P1xuICBjb25zdCBpc1JhdyA9ICFpc0JhdGNoICYmIG1ldGhvZCAmJiB0eXBlb2YgbWV0aG9kID09PSAnb2JqZWN0JyAmJiB0eXBlb2YgcGFyYW1zID09PSAnZnVuY3Rpb24nO1xuXG4gIGlmKGlzQmF0Y2ggfHwgaXNSYXcpIHtcbiAgICBjYWxsYmFjayA9IHBhcmFtcztcbiAgICByZXF1ZXN0ID0gbWV0aG9kO1xuICB9IGVsc2Uge1xuICAgIGlmKHR5cGVvZiBpZCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgY2FsbGJhY2sgPSBpZDtcbiAgICAgIC8vIHNwZWNpZmljYWxseSB1bmRlZmluZWQgYmVjYXVzZSBcIm51bGxcIiBpcyBhIG5vdGlmaWNhdGlvbiByZXF1ZXN0XG4gICAgICBpZCA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBjb25zdCBoYXNDYWxsYmFjayA9IHR5cGVvZiBjYWxsYmFjayA9PT0gJ2Z1bmN0aW9uJztcblxuICAgIHRyeSB7XG4gICAgICByZXF1ZXN0ID0gZ2VuZXJhdGVSZXF1ZXN0KG1ldGhvZCwgcGFyYW1zLCBpZCwge1xuICAgICAgICBnZW5lcmF0b3I6IHRoaXMub3B0aW9ucy5nZW5lcmF0b3IsXG4gICAgICAgIHZlcnNpb246IHRoaXMub3B0aW9ucy52ZXJzaW9uLFxuICAgICAgICBub3RpZmljYXRpb25JZE51bGw6IHRoaXMub3B0aW9ucy5ub3RpZmljYXRpb25JZE51bGwsXG4gICAgICB9KTtcbiAgICB9IGNhdGNoKGVycikge1xuICAgICAgaWYoaGFzQ2FsbGJhY2spIHtcbiAgICAgICAgcmV0dXJuIGNhbGxiYWNrKGVycik7XG4gICAgICB9XG4gICAgICB0aHJvdyBlcnI7XG4gICAgfVxuXG4gICAgLy8gbm8gY2FsbGJhY2sgbWVhbnMgd2Ugc2hvdWxkIGp1c3QgcmV0dXJuIGEgcmF3IHJlcXVlc3RcbiAgICBpZighaGFzQ2FsbGJhY2spIHtcbiAgICAgIHJldHVybiByZXF1ZXN0O1xuICAgIH1cblxuICB9XG5cbiAgbGV0IG1lc3NhZ2U7XG4gIHRyeSB7XG4gICAgbWVzc2FnZSA9IEpTT04uc3RyaW5naWZ5KHJlcXVlc3QsIHRoaXMub3B0aW9ucy5yZXBsYWNlcik7XG4gIH0gY2F0Y2goZXJyKSB7XG4gICAgcmV0dXJuIGNhbGxiYWNrKGVycik7XG4gIH1cblxuICB0aGlzLmNhbGxTZXJ2ZXIobWVzc2FnZSwgZnVuY3Rpb24oZXJyLCByZXNwb25zZSkge1xuICAgIHNlbGYuX3BhcnNlUmVzcG9uc2UoZXJyLCByZXNwb25zZSwgY2FsbGJhY2spO1xuICB9KTtcblxuICAvLyBhbHdheXMgcmV0dXJuIHRoZSByYXcgcmVxdWVzdFxuICByZXR1cm4gcmVxdWVzdDtcbn07XG5cbi8qKlxuICogUGFyc2VzIGEgcmVzcG9uc2UgZnJvbSBhIHNlcnZlclxuICogQHBhcmFtIHtPYmplY3R9IGVyciBFcnJvciB0byBwYXNzIG9uIHRoYXQgaXMgdW5yZWxhdGVkIHRvIHRoZSBhY3R1YWwgcmVzcG9uc2VcbiAqIEBwYXJhbSB7U3RyaW5nfSByZXNwb25zZVRleHQgSlNPTi1SUEMgMS4wIG9yIDIuMCByZXNwb25zZVxuICogQHBhcmFtIHtGdW5jdGlvbn0gY2FsbGJhY2sgQ2FsbGJhY2sgdGhhdCB3aWxsIHJlY2VpdmUgZGlmZmVyZW50IGFyZ3VtZW50cyBkZXBlbmRpbmcgb24gdGhlIGFtb3VudCBvZiBwYXJhbWV0ZXJzXG4gKiBAcHJpdmF0ZVxuICovXG5DbGllbnRCcm93c2VyLnByb3RvdHlwZS5fcGFyc2VSZXNwb25zZSA9IGZ1bmN0aW9uKGVyciwgcmVzcG9uc2VUZXh0LCBjYWxsYmFjaykge1xuICBpZihlcnIpIHtcbiAgICBjYWxsYmFjayhlcnIpO1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGlmKCFyZXNwb25zZVRleHQpIHtcbiAgICAvLyBlbXB0eSByZXNwb25zZSB0ZXh0LCBhc3N1bWUgdGhhdCBpcyBjb3JyZWN0IGJlY2F1c2UgaXQgY291bGQgYmUgYVxuICAgIC8vIG5vdGlmaWNhdGlvbiB3aGljaCBqYXlzb24gZG9lcyBub3QgZ2l2ZSBhbnkgYm9keSBmb3JcbiAgICByZXR1cm4gY2FsbGJhY2soKTtcbiAgfVxuXG4gIGxldCByZXNwb25zZTtcbiAgdHJ5IHtcbiAgICByZXNwb25zZSA9IEpTT04ucGFyc2UocmVzcG9uc2VUZXh0LCB0aGlzLm9wdGlvbnMucmV2aXZlcik7XG4gIH0gY2F0Y2goZXJyKSB7XG4gICAgcmV0dXJuIGNhbGxiYWNrKGVycik7XG4gIH1cblxuICBpZihjYWxsYmFjay5sZW5ndGggPT09IDMpIHtcbiAgICAvLyBpZiBjYWxsYmFjayBsZW5ndGggaXMgMywgd2Ugc3BsaXQgY2FsbGJhY2sgYXJndW1lbnRzIG9uIGVycm9yIGFuZCByZXNwb25zZVxuXG4gICAgLy8gaXMgYmF0Y2ggcmVzcG9uc2U/XG4gICAgaWYoQXJyYXkuaXNBcnJheShyZXNwb25zZSkpIHtcblxuICAgICAgLy8gbmVjY2VzYXJ5IHRvIHNwbGl0IHN0cmljdGx5IG9uIHZhbGlkaXR5IGFjY29yZGluZyB0byBzcGVjIGhlcmVcbiAgICAgIGNvbnN0IGlzRXJyb3IgPSBmdW5jdGlvbihyZXMpIHtcbiAgICAgICAgcmV0dXJuIHR5cGVvZiByZXMuZXJyb3IgIT09ICd1bmRlZmluZWQnO1xuICAgICAgfTtcblxuICAgICAgY29uc3QgaXNOb3RFcnJvciA9IGZ1bmN0aW9uIChyZXMpIHtcbiAgICAgICAgcmV0dXJuICFpc0Vycm9yKHJlcyk7XG4gICAgICB9O1xuXG4gICAgICByZXR1cm4gY2FsbGJhY2sobnVsbCwgcmVzcG9uc2UuZmlsdGVyKGlzRXJyb3IpLCByZXNwb25zZS5maWx0ZXIoaXNOb3RFcnJvcikpO1xuICAgIFxuICAgIH0gZWxzZSB7XG5cbiAgICAgIC8vIHNwbGl0IHJlZ2FyZGxlc3Mgb2YgdmFsaWRpdHlcbiAgICAgIHJldHVybiBjYWxsYmFjayhudWxsLCByZXNwb25zZS5lcnJvciwgcmVzcG9uc2UucmVzdWx0KTtcbiAgICBcbiAgICB9XG4gIFxuICB9XG5cbiAgY2FsbGJhY2sobnVsbCwgcmVzcG9uc2UpO1xufTtcbiIsICJcInVzZSBzdHJpY3RcIjtcblxudmFyIGNvbnZlcnNpb25zID0ge307XG5tb2R1bGUuZXhwb3J0cyA9IGNvbnZlcnNpb25zO1xuXG5mdW5jdGlvbiBzaWduKHgpIHtcbiAgICByZXR1cm4geCA8IDAgPyAtMSA6IDE7XG59XG5cbmZ1bmN0aW9uIGV2ZW5Sb3VuZCh4KSB7XG4gICAgLy8gUm91bmQgeCB0byB0aGUgbmVhcmVzdCBpbnRlZ2VyLCBjaG9vc2luZyB0aGUgZXZlbiBpbnRlZ2VyIGlmIGl0IGxpZXMgaGFsZndheSBiZXR3ZWVuIHR3by5cbiAgICBpZiAoKHggJSAxKSA9PT0gMC41ICYmICh4ICYgMSkgPT09IDApIHsgLy8gW2V2ZW4gbnVtYmVyXS41OyByb3VuZCBkb3duIChpLmUuIGZsb29yKVxuICAgICAgICByZXR1cm4gTWF0aC5mbG9vcih4KTtcbiAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gTWF0aC5yb3VuZCh4KTtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZU51bWJlckNvbnZlcnNpb24oYml0TGVuZ3RoLCB0eXBlT3B0cykge1xuICAgIGlmICghdHlwZU9wdHMudW5zaWduZWQpIHtcbiAgICAgICAgLS1iaXRMZW5ndGg7XG4gICAgfVxuICAgIGNvbnN0IGxvd2VyQm91bmQgPSB0eXBlT3B0cy51bnNpZ25lZCA/IDAgOiAtTWF0aC5wb3coMiwgYml0TGVuZ3RoKTtcbiAgICBjb25zdCB1cHBlckJvdW5kID0gTWF0aC5wb3coMiwgYml0TGVuZ3RoKSAtIDE7XG5cbiAgICBjb25zdCBtb2R1bG9WYWwgPSB0eXBlT3B0cy5tb2R1bG9CaXRMZW5ndGggPyBNYXRoLnBvdygyLCB0eXBlT3B0cy5tb2R1bG9CaXRMZW5ndGgpIDogTWF0aC5wb3coMiwgYml0TGVuZ3RoKTtcbiAgICBjb25zdCBtb2R1bG9Cb3VuZCA9IHR5cGVPcHRzLm1vZHVsb0JpdExlbmd0aCA/IE1hdGgucG93KDIsIHR5cGVPcHRzLm1vZHVsb0JpdExlbmd0aCAtIDEpIDogTWF0aC5wb3coMiwgYml0TGVuZ3RoIC0gMSk7XG5cbiAgICByZXR1cm4gZnVuY3Rpb24oViwgb3B0cykge1xuICAgICAgICBpZiAoIW9wdHMpIG9wdHMgPSB7fTtcblxuICAgICAgICBsZXQgeCA9ICtWO1xuXG4gICAgICAgIGlmIChvcHRzLmVuZm9yY2VSYW5nZSkge1xuICAgICAgICAgICAgaWYgKCFOdW1iZXIuaXNGaW5pdGUoeCkpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQXJndW1lbnQgaXMgbm90IGEgZmluaXRlIG51bWJlclwiKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgeCA9IHNpZ24oeCkgKiBNYXRoLmZsb29yKE1hdGguYWJzKHgpKTtcbiAgICAgICAgICAgIGlmICh4IDwgbG93ZXJCb3VuZCB8fCB4ID4gdXBwZXJCb3VuZCkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXCJBcmd1bWVudCBpcyBub3QgaW4gYnl0ZSByYW5nZVwiKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIHg7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIWlzTmFOKHgpICYmIG9wdHMuY2xhbXApIHtcbiAgICAgICAgICAgIHggPSBldmVuUm91bmQoeCk7XG5cbiAgICAgICAgICAgIGlmICh4IDwgbG93ZXJCb3VuZCkgeCA9IGxvd2VyQm91bmQ7XG4gICAgICAgICAgICBpZiAoeCA+IHVwcGVyQm91bmQpIHggPSB1cHBlckJvdW5kO1xuICAgICAgICAgICAgcmV0dXJuIHg7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIU51bWJlci5pc0Zpbml0ZSh4KSB8fCB4ID09PSAwKSB7XG4gICAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHggPSBzaWduKHgpICogTWF0aC5mbG9vcihNYXRoLmFicyh4KSk7XG4gICAgICAgIHggPSB4ICUgbW9kdWxvVmFsO1xuXG4gICAgICAgIGlmICghdHlwZU9wdHMudW5zaWduZWQgJiYgeCA+PSBtb2R1bG9Cb3VuZCkge1xuICAgICAgICAgICAgcmV0dXJuIHggLSBtb2R1bG9WYWw7XG4gICAgICAgIH0gZWxzZSBpZiAodHlwZU9wdHMudW5zaWduZWQpIHtcbiAgICAgICAgICAgIGlmICh4IDwgMCkge1xuICAgICAgICAgICAgICB4ICs9IG1vZHVsb1ZhbDtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoeCA9PT0gLTApIHsgLy8gZG9uJ3QgcmV0dXJuIG5lZ2F0aXZlIHplcm9cbiAgICAgICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4geDtcbiAgICB9XG59XG5cbmNvbnZlcnNpb25zW1widm9pZFwiXSA9IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xufTtcblxuY29udmVyc2lvbnNbXCJib29sZWFuXCJdID0gZnVuY3Rpb24gKHZhbCkge1xuICAgIHJldHVybiAhIXZhbDtcbn07XG5cbmNvbnZlcnNpb25zW1wiYnl0ZVwiXSA9IGNyZWF0ZU51bWJlckNvbnZlcnNpb24oOCwgeyB1bnNpZ25lZDogZmFsc2UgfSk7XG5jb252ZXJzaW9uc1tcIm9jdGV0XCJdID0gY3JlYXRlTnVtYmVyQ29udmVyc2lvbig4LCB7IHVuc2lnbmVkOiB0cnVlIH0pO1xuXG5jb252ZXJzaW9uc1tcInNob3J0XCJdID0gY3JlYXRlTnVtYmVyQ29udmVyc2lvbigxNiwgeyB1bnNpZ25lZDogZmFsc2UgfSk7XG5jb252ZXJzaW9uc1tcInVuc2lnbmVkIHNob3J0XCJdID0gY3JlYXRlTnVtYmVyQ29udmVyc2lvbigxNiwgeyB1bnNpZ25lZDogdHJ1ZSB9KTtcblxuY29udmVyc2lvbnNbXCJsb25nXCJdID0gY3JlYXRlTnVtYmVyQ29udmVyc2lvbigzMiwgeyB1bnNpZ25lZDogZmFsc2UgfSk7XG5jb252ZXJzaW9uc1tcInVuc2lnbmVkIGxvbmdcIl0gPSBjcmVhdGVOdW1iZXJDb252ZXJzaW9uKDMyLCB7IHVuc2lnbmVkOiB0cnVlIH0pO1xuXG5jb252ZXJzaW9uc1tcImxvbmcgbG9uZ1wiXSA9IGNyZWF0ZU51bWJlckNvbnZlcnNpb24oMzIsIHsgdW5zaWduZWQ6IGZhbHNlLCBtb2R1bG9CaXRMZW5ndGg6IDY0IH0pO1xuY29udmVyc2lvbnNbXCJ1bnNpZ25lZCBsb25nIGxvbmdcIl0gPSBjcmVhdGVOdW1iZXJDb252ZXJzaW9uKDMyLCB7IHVuc2lnbmVkOiB0cnVlLCBtb2R1bG9CaXRMZW5ndGg6IDY0IH0pO1xuXG5jb252ZXJzaW9uc1tcImRvdWJsZVwiXSA9IGZ1bmN0aW9uIChWKSB7XG4gICAgY29uc3QgeCA9ICtWO1xuXG4gICAgaWYgKCFOdW1iZXIuaXNGaW5pdGUoeCkpIHtcbiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkFyZ3VtZW50IGlzIG5vdCBhIGZpbml0ZSBmbG9hdGluZy1wb2ludCB2YWx1ZVwiKTtcbiAgICB9XG5cbiAgICByZXR1cm4geDtcbn07XG5cbmNvbnZlcnNpb25zW1widW5yZXN0cmljdGVkIGRvdWJsZVwiXSA9IGZ1bmN0aW9uIChWKSB7XG4gICAgY29uc3QgeCA9ICtWO1xuXG4gICAgaWYgKGlzTmFOKHgpKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXCJBcmd1bWVudCBpcyBOYU5cIik7XG4gICAgfVxuXG4gICAgcmV0dXJuIHg7XG59O1xuXG4vLyBub3QgcXVpdGUgdmFsaWQsIGJ1dCBnb29kIGVub3VnaCBmb3IgSlNcbmNvbnZlcnNpb25zW1wiZmxvYXRcIl0gPSBjb252ZXJzaW9uc1tcImRvdWJsZVwiXTtcbmNvbnZlcnNpb25zW1widW5yZXN0cmljdGVkIGZsb2F0XCJdID0gY29udmVyc2lvbnNbXCJ1bnJlc3RyaWN0ZWQgZG91YmxlXCJdO1xuXG5jb252ZXJzaW9uc1tcIkRPTVN0cmluZ1wiXSA9IGZ1bmN0aW9uIChWLCBvcHRzKSB7XG4gICAgaWYgKCFvcHRzKSBvcHRzID0ge307XG5cbiAgICBpZiAob3B0cy50cmVhdE51bGxBc0VtcHR5U3RyaW5nICYmIFYgPT09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIFwiXCI7XG4gICAgfVxuXG4gICAgcmV0dXJuIFN0cmluZyhWKTtcbn07XG5cbmNvbnZlcnNpb25zW1wiQnl0ZVN0cmluZ1wiXSA9IGZ1bmN0aW9uIChWLCBvcHRzKSB7XG4gICAgY29uc3QgeCA9IFN0cmluZyhWKTtcbiAgICBsZXQgYyA9IHVuZGVmaW5lZDtcbiAgICBmb3IgKGxldCBpID0gMDsgKGMgPSB4LmNvZGVQb2ludEF0KGkpKSAhPT0gdW5kZWZpbmVkOyArK2kpIHtcbiAgICAgICAgaWYgKGMgPiAyNTUpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXCJBcmd1bWVudCBpcyBub3QgYSB2YWxpZCBieXRlc3RyaW5nXCIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHg7XG59O1xuXG5jb252ZXJzaW9uc1tcIlVTVlN0cmluZ1wiXSA9IGZ1bmN0aW9uIChWKSB7XG4gICAgY29uc3QgUyA9IFN0cmluZyhWKTtcbiAgICBjb25zdCBuID0gUy5sZW5ndGg7XG4gICAgY29uc3QgVSA9IFtdO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbjsgKytpKSB7XG4gICAgICAgIGNvbnN0IGMgPSBTLmNoYXJDb2RlQXQoaSk7XG4gICAgICAgIGlmIChjIDwgMHhEODAwIHx8IGMgPiAweERGRkYpIHtcbiAgICAgICAgICAgIFUucHVzaChTdHJpbmcuZnJvbUNvZGVQb2ludChjKSk7XG4gICAgICAgIH0gZWxzZSBpZiAoMHhEQzAwIDw9IGMgJiYgYyA8PSAweERGRkYpIHtcbiAgICAgICAgICAgIFUucHVzaChTdHJpbmcuZnJvbUNvZGVQb2ludCgweEZGRkQpKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGlmIChpID09PSBuIC0gMSkge1xuICAgICAgICAgICAgICAgIFUucHVzaChTdHJpbmcuZnJvbUNvZGVQb2ludCgweEZGRkQpKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZCA9IFMuY2hhckNvZGVBdChpICsgMSk7XG4gICAgICAgICAgICAgICAgaWYgKDB4REMwMCA8PSBkICYmIGQgPD0gMHhERkZGKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGEgPSBjICYgMHgzRkY7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGIgPSBkICYgMHgzRkY7XG4gICAgICAgICAgICAgICAgICAgIFUucHVzaChTdHJpbmcuZnJvbUNvZGVQb2ludCgoMiA8PCAxNSkgKyAoMiA8PCA5KSAqIGEgKyBiKSk7XG4gICAgICAgICAgICAgICAgICAgICsraTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBVLnB1c2goU3RyaW5nLmZyb21Db2RlUG9pbnQoMHhGRkZEKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIFUuam9pbignJyk7XG59O1xuXG5jb252ZXJzaW9uc1tcIkRhdGVcIl0gPSBmdW5jdGlvbiAoViwgb3B0cykge1xuICAgIGlmICghKFYgaW5zdGFuY2VvZiBEYXRlKSkge1xuICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQXJndW1lbnQgaXMgbm90IGEgRGF0ZSBvYmplY3RcIik7XG4gICAgfVxuICAgIGlmIChpc05hTihWKSkge1xuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHJldHVybiBWO1xufTtcblxuY29udmVyc2lvbnNbXCJSZWdFeHBcIl0gPSBmdW5jdGlvbiAoViwgb3B0cykge1xuICAgIGlmICghKFYgaW5zdGFuY2VvZiBSZWdFeHApKSB7XG4gICAgICAgIFYgPSBuZXcgUmVnRXhwKFYpO1xuICAgIH1cblxuICAgIHJldHVybiBWO1xufTtcbiIsICJcInVzZSBzdHJpY3RcIjtcblxubW9kdWxlLmV4cG9ydHMubWl4aW4gPSBmdW5jdGlvbiBtaXhpbih0YXJnZXQsIHNvdXJjZSkge1xuICBjb25zdCBrZXlzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoc291cmNlKTtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBrZXlzLmxlbmd0aDsgKytpKSB7XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwga2V5c1tpXSwgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihzb3VyY2UsIGtleXNbaV0pKTtcbiAgfVxufTtcblxubW9kdWxlLmV4cG9ydHMud3JhcHBlclN5bWJvbCA9IFN5bWJvbChcIndyYXBwZXJcIik7XG5tb2R1bGUuZXhwb3J0cy5pbXBsU3ltYm9sID0gU3ltYm9sKFwiaW1wbFwiKTtcblxubW9kdWxlLmV4cG9ydHMud3JhcHBlckZvckltcGwgPSBmdW5jdGlvbiAoaW1wbCkge1xuICByZXR1cm4gaW1wbFttb2R1bGUuZXhwb3J0cy53cmFwcGVyU3ltYm9sXTtcbn07XG5cbm1vZHVsZS5leHBvcnRzLmltcGxGb3JXcmFwcGVyID0gZnVuY3Rpb24gKHdyYXBwZXIpIHtcbiAgcmV0dXJuIHdyYXBwZXJbbW9kdWxlLmV4cG9ydHMuaW1wbFN5bWJvbF07XG59O1xuXG4iLCAiW1tbMCw0NF0sXCJkaXNhbGxvd2VkX1NURDNfdmFsaWRcIl0sW1s0NSw0Nl0sXCJ2YWxpZFwiXSxbWzQ3LDQ3XSxcImRpc2FsbG93ZWRfU1REM192YWxpZFwiXSxbWzQ4LDU3XSxcInZhbGlkXCJdLFtbNTgsNjRdLFwiZGlzYWxsb3dlZF9TVEQzX3ZhbGlkXCJdLFtbNjUsNjVdLFwibWFwcGVkXCIsWzk3XV0sW1s2Niw2Nl0sXCJtYXBwZWRcIixbOThdXSxbWzY3LDY3XSxcIm1hcHBlZFwiLFs5OV1dLFtbNjgsNjhdLFwibWFwcGVkXCIsWzEwMF1dLFtbNjksNjldLFwibWFwcGVkXCIsWzEwMV1dLFtbNzAsNzBdLFwibWFwcGVkXCIsWzEwMl1dLFtbNzEsNzFdLFwibWFwcGVkXCIsWzEwM11dLFtbNzIsNzJdLFwibWFwcGVkXCIsWzEwNF1dLFtbNzMsNzNdLFwibWFwcGVkXCIsWzEwNV1dLFtbNzQsNzRdLFwibWFwcGVkXCIsWzEwNl1dLFtbNzUsNzVdLFwibWFwcGVkXCIsWzEwN11dLFtbNzYsNzZdLFwibWFwcGVkXCIsWzEwOF1dLFtbNzcsNzddLFwibWFwcGVkXCIsWzEwOV1dLFtbNzgsNzhdLFwibWFwcGVkXCIsWzExMF1dLFtbNzksNzldLFwibWFwcGVkXCIsWzExMV1dLFtbODAsODBdLFwibWFwcGVkXCIsWzExMl1dLFtbODEsODFdLFwibWFwcGVkXCIsWzExM11dLFtbODIsODJdLFwibWFwcGVkXCIsWzExNF1dLFtbODMsODNdLFwibWFwcGVkXCIsWzExNV1dLFtbODQsODRdLFwibWFwcGVkXCIsWzExNl1dLFtbODUsODVdLFwibWFwcGVkXCIsWzExN11dLFtbODYsODZdLFwibWFwcGVkXCIsWzExOF1dLFtbODcsODddLFwibWFwcGVkXCIsWzExOV1dLFtbODgsODhdLFwibWFwcGVkXCIsWzEyMF1dLFtbODksODldLFwibWFwcGVkXCIsWzEyMV1dLFtbOTAsOTBdLFwibWFwcGVkXCIsWzEyMl1dLFtbOTEsOTZdLFwiZGlzYWxsb3dlZF9TVEQzX3ZhbGlkXCJdLFtbOTcsMTIyXSxcInZhbGlkXCJdLFtbMTIzLDEyN10sXCJkaXNhbGxvd2VkX1NURDNfdmFsaWRcIl0sW1sxMjgsMTU5XSxcImRpc2FsbG93ZWRcIl0sW1sxNjAsMTYwXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbMzJdXSxbWzE2MSwxNjddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzE2OCwxNjhdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFszMiw3NzZdXSxbWzE2OSwxNjldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzE3MCwxNzBdLFwibWFwcGVkXCIsWzk3XV0sW1sxNzEsMTcyXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxNzMsMTczXSxcImlnbm9yZWRcIl0sW1sxNzQsMTc0XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxNzUsMTc1XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbMzIsNzcyXV0sW1sxNzYsMTc3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxNzgsMTc4XSxcIm1hcHBlZFwiLFs1MF1dLFtbMTc5LDE3OV0sXCJtYXBwZWRcIixbNTFdXSxbWzE4MCwxODBdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFszMiw3NjldXSxbWzE4MSwxODFdLFwibWFwcGVkXCIsWzk1Nl1dLFtbMTgyLDE4Ml0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTgzLDE4M10sXCJ2YWxpZFwiXSxbWzE4NCwxODRdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFszMiw4MDddXSxbWzE4NSwxODVdLFwibWFwcGVkXCIsWzQ5XV0sW1sxODYsMTg2XSxcIm1hcHBlZFwiLFsxMTFdXSxbWzE4NywxODddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzE4OCwxODhdLFwibWFwcGVkXCIsWzQ5LDgyNjAsNTJdXSxbWzE4OSwxODldLFwibWFwcGVkXCIsWzQ5LDgyNjAsNTBdXSxbWzE5MCwxOTBdLFwibWFwcGVkXCIsWzUxLDgyNjAsNTJdXSxbWzE5MSwxOTFdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzE5MiwxOTJdLFwibWFwcGVkXCIsWzIyNF1dLFtbMTkzLDE5M10sXCJtYXBwZWRcIixbMjI1XV0sW1sxOTQsMTk0XSxcIm1hcHBlZFwiLFsyMjZdXSxbWzE5NSwxOTVdLFwibWFwcGVkXCIsWzIyN11dLFtbMTk2LDE5Nl0sXCJtYXBwZWRcIixbMjI4XV0sW1sxOTcsMTk3XSxcIm1hcHBlZFwiLFsyMjldXSxbWzE5OCwxOThdLFwibWFwcGVkXCIsWzIzMF1dLFtbMTk5LDE5OV0sXCJtYXBwZWRcIixbMjMxXV0sW1syMDAsMjAwXSxcIm1hcHBlZFwiLFsyMzJdXSxbWzIwMSwyMDFdLFwibWFwcGVkXCIsWzIzM11dLFtbMjAyLDIwMl0sXCJtYXBwZWRcIixbMjM0XV0sW1syMDMsMjAzXSxcIm1hcHBlZFwiLFsyMzVdXSxbWzIwNCwyMDRdLFwibWFwcGVkXCIsWzIzNl1dLFtbMjA1LDIwNV0sXCJtYXBwZWRcIixbMjM3XV0sW1syMDYsMjA2XSxcIm1hcHBlZFwiLFsyMzhdXSxbWzIwNywyMDddLFwibWFwcGVkXCIsWzIzOV1dLFtbMjA4LDIwOF0sXCJtYXBwZWRcIixbMjQwXV0sW1syMDksMjA5XSxcIm1hcHBlZFwiLFsyNDFdXSxbWzIxMCwyMTBdLFwibWFwcGVkXCIsWzI0Ml1dLFtbMjExLDIxMV0sXCJtYXBwZWRcIixbMjQzXV0sW1syMTIsMjEyXSxcIm1hcHBlZFwiLFsyNDRdXSxbWzIxMywyMTNdLFwibWFwcGVkXCIsWzI0NV1dLFtbMjE0LDIxNF0sXCJtYXBwZWRcIixbMjQ2XV0sW1syMTUsMjE1XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1syMTYsMjE2XSxcIm1hcHBlZFwiLFsyNDhdXSxbWzIxNywyMTddLFwibWFwcGVkXCIsWzI0OV1dLFtbMjE4LDIxOF0sXCJtYXBwZWRcIixbMjUwXV0sW1syMTksMjE5XSxcIm1hcHBlZFwiLFsyNTFdXSxbWzIyMCwyMjBdLFwibWFwcGVkXCIsWzI1Ml1dLFtbMjIxLDIyMV0sXCJtYXBwZWRcIixbMjUzXV0sW1syMjIsMjIyXSxcIm1hcHBlZFwiLFsyNTRdXSxbWzIyMywyMjNdLFwiZGV2aWF0aW9uXCIsWzExNSwxMTVdXSxbWzIyNCwyNDZdLFwidmFsaWRcIl0sW1syNDcsMjQ3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1syNDgsMjU1XSxcInZhbGlkXCJdLFtbMjU2LDI1Nl0sXCJtYXBwZWRcIixbMjU3XV0sW1syNTcsMjU3XSxcInZhbGlkXCJdLFtbMjU4LDI1OF0sXCJtYXBwZWRcIixbMjU5XV0sW1syNTksMjU5XSxcInZhbGlkXCJdLFtbMjYwLDI2MF0sXCJtYXBwZWRcIixbMjYxXV0sW1syNjEsMjYxXSxcInZhbGlkXCJdLFtbMjYyLDI2Ml0sXCJtYXBwZWRcIixbMjYzXV0sW1syNjMsMjYzXSxcInZhbGlkXCJdLFtbMjY0LDI2NF0sXCJtYXBwZWRcIixbMjY1XV0sW1syNjUsMjY1XSxcInZhbGlkXCJdLFtbMjY2LDI2Nl0sXCJtYXBwZWRcIixbMjY3XV0sW1syNjcsMjY3XSxcInZhbGlkXCJdLFtbMjY4LDI2OF0sXCJtYXBwZWRcIixbMjY5XV0sW1syNjksMjY5XSxcInZhbGlkXCJdLFtbMjcwLDI3MF0sXCJtYXBwZWRcIixbMjcxXV0sW1syNzEsMjcxXSxcInZhbGlkXCJdLFtbMjcyLDI3Ml0sXCJtYXBwZWRcIixbMjczXV0sW1syNzMsMjczXSxcInZhbGlkXCJdLFtbMjc0LDI3NF0sXCJtYXBwZWRcIixbMjc1XV0sW1syNzUsMjc1XSxcInZhbGlkXCJdLFtbMjc2LDI3Nl0sXCJtYXBwZWRcIixbMjc3XV0sW1syNzcsMjc3XSxcInZhbGlkXCJdLFtbMjc4LDI3OF0sXCJtYXBwZWRcIixbMjc5XV0sW1syNzksMjc5XSxcInZhbGlkXCJdLFtbMjgwLDI4MF0sXCJtYXBwZWRcIixbMjgxXV0sW1syODEsMjgxXSxcInZhbGlkXCJdLFtbMjgyLDI4Ml0sXCJtYXBwZWRcIixbMjgzXV0sW1syODMsMjgzXSxcInZhbGlkXCJdLFtbMjg0LDI4NF0sXCJtYXBwZWRcIixbMjg1XV0sW1syODUsMjg1XSxcInZhbGlkXCJdLFtbMjg2LDI4Nl0sXCJtYXBwZWRcIixbMjg3XV0sW1syODcsMjg3XSxcInZhbGlkXCJdLFtbMjg4LDI4OF0sXCJtYXBwZWRcIixbMjg5XV0sW1syODksMjg5XSxcInZhbGlkXCJdLFtbMjkwLDI5MF0sXCJtYXBwZWRcIixbMjkxXV0sW1syOTEsMjkxXSxcInZhbGlkXCJdLFtbMjkyLDI5Ml0sXCJtYXBwZWRcIixbMjkzXV0sW1syOTMsMjkzXSxcInZhbGlkXCJdLFtbMjk0LDI5NF0sXCJtYXBwZWRcIixbMjk1XV0sW1syOTUsMjk1XSxcInZhbGlkXCJdLFtbMjk2LDI5Nl0sXCJtYXBwZWRcIixbMjk3XV0sW1syOTcsMjk3XSxcInZhbGlkXCJdLFtbMjk4LDI5OF0sXCJtYXBwZWRcIixbMjk5XV0sW1syOTksMjk5XSxcInZhbGlkXCJdLFtbMzAwLDMwMF0sXCJtYXBwZWRcIixbMzAxXV0sW1szMDEsMzAxXSxcInZhbGlkXCJdLFtbMzAyLDMwMl0sXCJtYXBwZWRcIixbMzAzXV0sW1szMDMsMzAzXSxcInZhbGlkXCJdLFtbMzA0LDMwNF0sXCJtYXBwZWRcIixbMTA1LDc3NV1dLFtbMzA1LDMwNV0sXCJ2YWxpZFwiXSxbWzMwNiwzMDddLFwibWFwcGVkXCIsWzEwNSwxMDZdXSxbWzMwOCwzMDhdLFwibWFwcGVkXCIsWzMwOV1dLFtbMzA5LDMwOV0sXCJ2YWxpZFwiXSxbWzMxMCwzMTBdLFwibWFwcGVkXCIsWzMxMV1dLFtbMzExLDMxMl0sXCJ2YWxpZFwiXSxbWzMxMywzMTNdLFwibWFwcGVkXCIsWzMxNF1dLFtbMzE0LDMxNF0sXCJ2YWxpZFwiXSxbWzMxNSwzMTVdLFwibWFwcGVkXCIsWzMxNl1dLFtbMzE2LDMxNl0sXCJ2YWxpZFwiXSxbWzMxNywzMTddLFwibWFwcGVkXCIsWzMxOF1dLFtbMzE4LDMxOF0sXCJ2YWxpZFwiXSxbWzMxOSwzMjBdLFwibWFwcGVkXCIsWzEwOCwxODNdXSxbWzMyMSwzMjFdLFwibWFwcGVkXCIsWzMyMl1dLFtbMzIyLDMyMl0sXCJ2YWxpZFwiXSxbWzMyMywzMjNdLFwibWFwcGVkXCIsWzMyNF1dLFtbMzI0LDMyNF0sXCJ2YWxpZFwiXSxbWzMyNSwzMjVdLFwibWFwcGVkXCIsWzMyNl1dLFtbMzI2LDMyNl0sXCJ2YWxpZFwiXSxbWzMyNywzMjddLFwibWFwcGVkXCIsWzMyOF1dLFtbMzI4LDMyOF0sXCJ2YWxpZFwiXSxbWzMyOSwzMjldLFwibWFwcGVkXCIsWzcwMCwxMTBdXSxbWzMzMCwzMzBdLFwibWFwcGVkXCIsWzMzMV1dLFtbMzMxLDMzMV0sXCJ2YWxpZFwiXSxbWzMzMiwzMzJdLFwibWFwcGVkXCIsWzMzM11dLFtbMzMzLDMzM10sXCJ2YWxpZFwiXSxbWzMzNCwzMzRdLFwibWFwcGVkXCIsWzMzNV1dLFtbMzM1LDMzNV0sXCJ2YWxpZFwiXSxbWzMzNiwzMzZdLFwibWFwcGVkXCIsWzMzN11dLFtbMzM3LDMzN10sXCJ2YWxpZFwiXSxbWzMzOCwzMzhdLFwibWFwcGVkXCIsWzMzOV1dLFtbMzM5LDMzOV0sXCJ2YWxpZFwiXSxbWzM0MCwzNDBdLFwibWFwcGVkXCIsWzM0MV1dLFtbMzQxLDM0MV0sXCJ2YWxpZFwiXSxbWzM0MiwzNDJdLFwibWFwcGVkXCIsWzM0M11dLFtbMzQzLDM0M10sXCJ2YWxpZFwiXSxbWzM0NCwzNDRdLFwibWFwcGVkXCIsWzM0NV1dLFtbMzQ1LDM0NV0sXCJ2YWxpZFwiXSxbWzM0NiwzNDZdLFwibWFwcGVkXCIsWzM0N11dLFtbMzQ3LDM0N10sXCJ2YWxpZFwiXSxbWzM0OCwzNDhdLFwibWFwcGVkXCIsWzM0OV1dLFtbMzQ5LDM0OV0sXCJ2YWxpZFwiXSxbWzM1MCwzNTBdLFwibWFwcGVkXCIsWzM1MV1dLFtbMzUxLDM1MV0sXCJ2YWxpZFwiXSxbWzM1MiwzNTJdLFwibWFwcGVkXCIsWzM1M11dLFtbMzUzLDM1M10sXCJ2YWxpZFwiXSxbWzM1NCwzNTRdLFwibWFwcGVkXCIsWzM1NV1dLFtbMzU1LDM1NV0sXCJ2YWxpZFwiXSxbWzM1NiwzNTZdLFwibWFwcGVkXCIsWzM1N11dLFtbMzU3LDM1N10sXCJ2YWxpZFwiXSxbWzM1OCwzNThdLFwibWFwcGVkXCIsWzM1OV1dLFtbMzU5LDM1OV0sXCJ2YWxpZFwiXSxbWzM2MCwzNjBdLFwibWFwcGVkXCIsWzM2MV1dLFtbMzYxLDM2MV0sXCJ2YWxpZFwiXSxbWzM2MiwzNjJdLFwibWFwcGVkXCIsWzM2M11dLFtbMzYzLDM2M10sXCJ2YWxpZFwiXSxbWzM2NCwzNjRdLFwibWFwcGVkXCIsWzM2NV1dLFtbMzY1LDM2NV0sXCJ2YWxpZFwiXSxbWzM2NiwzNjZdLFwibWFwcGVkXCIsWzM2N11dLFtbMzY3LDM2N10sXCJ2YWxpZFwiXSxbWzM2OCwzNjhdLFwibWFwcGVkXCIsWzM2OV1dLFtbMzY5LDM2OV0sXCJ2YWxpZFwiXSxbWzM3MCwzNzBdLFwibWFwcGVkXCIsWzM3MV1dLFtbMzcxLDM3MV0sXCJ2YWxpZFwiXSxbWzM3MiwzNzJdLFwibWFwcGVkXCIsWzM3M11dLFtbMzczLDM3M10sXCJ2YWxpZFwiXSxbWzM3NCwzNzRdLFwibWFwcGVkXCIsWzM3NV1dLFtbMzc1LDM3NV0sXCJ2YWxpZFwiXSxbWzM3NiwzNzZdLFwibWFwcGVkXCIsWzI1NV1dLFtbMzc3LDM3N10sXCJtYXBwZWRcIixbMzc4XV0sW1szNzgsMzc4XSxcInZhbGlkXCJdLFtbMzc5LDM3OV0sXCJtYXBwZWRcIixbMzgwXV0sW1szODAsMzgwXSxcInZhbGlkXCJdLFtbMzgxLDM4MV0sXCJtYXBwZWRcIixbMzgyXV0sW1szODIsMzgyXSxcInZhbGlkXCJdLFtbMzgzLDM4M10sXCJtYXBwZWRcIixbMTE1XV0sW1szODQsMzg0XSxcInZhbGlkXCJdLFtbMzg1LDM4NV0sXCJtYXBwZWRcIixbNTk1XV0sW1szODYsMzg2XSxcIm1hcHBlZFwiLFszODddXSxbWzM4NywzODddLFwidmFsaWRcIl0sW1szODgsMzg4XSxcIm1hcHBlZFwiLFszODldXSxbWzM4OSwzODldLFwidmFsaWRcIl0sW1szOTAsMzkwXSxcIm1hcHBlZFwiLFs1OTZdXSxbWzM5MSwzOTFdLFwibWFwcGVkXCIsWzM5Ml1dLFtbMzkyLDM5Ml0sXCJ2YWxpZFwiXSxbWzM5MywzOTNdLFwibWFwcGVkXCIsWzU5OF1dLFtbMzk0LDM5NF0sXCJtYXBwZWRcIixbNTk5XV0sW1szOTUsMzk1XSxcIm1hcHBlZFwiLFszOTZdXSxbWzM5NiwzOTddLFwidmFsaWRcIl0sW1szOTgsMzk4XSxcIm1hcHBlZFwiLFs0NzddXSxbWzM5OSwzOTldLFwibWFwcGVkXCIsWzYwMV1dLFtbNDAwLDQwMF0sXCJtYXBwZWRcIixbNjAzXV0sW1s0MDEsNDAxXSxcIm1hcHBlZFwiLFs0MDJdXSxbWzQwMiw0MDJdLFwidmFsaWRcIl0sW1s0MDMsNDAzXSxcIm1hcHBlZFwiLFs2MDhdXSxbWzQwNCw0MDRdLFwibWFwcGVkXCIsWzYxMV1dLFtbNDA1LDQwNV0sXCJ2YWxpZFwiXSxbWzQwNiw0MDZdLFwibWFwcGVkXCIsWzYxN11dLFtbNDA3LDQwN10sXCJtYXBwZWRcIixbNjE2XV0sW1s0MDgsNDA4XSxcIm1hcHBlZFwiLFs0MDldXSxbWzQwOSw0MTFdLFwidmFsaWRcIl0sW1s0MTIsNDEyXSxcIm1hcHBlZFwiLFs2MjNdXSxbWzQxMyw0MTNdLFwibWFwcGVkXCIsWzYyNl1dLFtbNDE0LDQxNF0sXCJ2YWxpZFwiXSxbWzQxNSw0MTVdLFwibWFwcGVkXCIsWzYyOV1dLFtbNDE2LDQxNl0sXCJtYXBwZWRcIixbNDE3XV0sW1s0MTcsNDE3XSxcInZhbGlkXCJdLFtbNDE4LDQxOF0sXCJtYXBwZWRcIixbNDE5XV0sW1s0MTksNDE5XSxcInZhbGlkXCJdLFtbNDIwLDQyMF0sXCJtYXBwZWRcIixbNDIxXV0sW1s0MjEsNDIxXSxcInZhbGlkXCJdLFtbNDIyLDQyMl0sXCJtYXBwZWRcIixbNjQwXV0sW1s0MjMsNDIzXSxcIm1hcHBlZFwiLFs0MjRdXSxbWzQyNCw0MjRdLFwidmFsaWRcIl0sW1s0MjUsNDI1XSxcIm1hcHBlZFwiLFs2NDNdXSxbWzQyNiw0MjddLFwidmFsaWRcIl0sW1s0MjgsNDI4XSxcIm1hcHBlZFwiLFs0MjldXSxbWzQyOSw0MjldLFwidmFsaWRcIl0sW1s0MzAsNDMwXSxcIm1hcHBlZFwiLFs2NDhdXSxbWzQzMSw0MzFdLFwibWFwcGVkXCIsWzQzMl1dLFtbNDMyLDQzMl0sXCJ2YWxpZFwiXSxbWzQzMyw0MzNdLFwibWFwcGVkXCIsWzY1MF1dLFtbNDM0LDQzNF0sXCJtYXBwZWRcIixbNjUxXV0sW1s0MzUsNDM1XSxcIm1hcHBlZFwiLFs0MzZdXSxbWzQzNiw0MzZdLFwidmFsaWRcIl0sW1s0MzcsNDM3XSxcIm1hcHBlZFwiLFs0MzhdXSxbWzQzOCw0MzhdLFwidmFsaWRcIl0sW1s0MzksNDM5XSxcIm1hcHBlZFwiLFs2NThdXSxbWzQ0MCw0NDBdLFwibWFwcGVkXCIsWzQ0MV1dLFtbNDQxLDQ0M10sXCJ2YWxpZFwiXSxbWzQ0NCw0NDRdLFwibWFwcGVkXCIsWzQ0NV1dLFtbNDQ1LDQ1MV0sXCJ2YWxpZFwiXSxbWzQ1Miw0NTRdLFwibWFwcGVkXCIsWzEwMCwzODJdXSxbWzQ1NSw0NTddLFwibWFwcGVkXCIsWzEwOCwxMDZdXSxbWzQ1OCw0NjBdLFwibWFwcGVkXCIsWzExMCwxMDZdXSxbWzQ2MSw0NjFdLFwibWFwcGVkXCIsWzQ2Ml1dLFtbNDYyLDQ2Ml0sXCJ2YWxpZFwiXSxbWzQ2Myw0NjNdLFwibWFwcGVkXCIsWzQ2NF1dLFtbNDY0LDQ2NF0sXCJ2YWxpZFwiXSxbWzQ2NSw0NjVdLFwibWFwcGVkXCIsWzQ2Nl1dLFtbNDY2LDQ2Nl0sXCJ2YWxpZFwiXSxbWzQ2Nyw0NjddLFwibWFwcGVkXCIsWzQ2OF1dLFtbNDY4LDQ2OF0sXCJ2YWxpZFwiXSxbWzQ2OSw0NjldLFwibWFwcGVkXCIsWzQ3MF1dLFtbNDcwLDQ3MF0sXCJ2YWxpZFwiXSxbWzQ3MSw0NzFdLFwibWFwcGVkXCIsWzQ3Ml1dLFtbNDcyLDQ3Ml0sXCJ2YWxpZFwiXSxbWzQ3Myw0NzNdLFwibWFwcGVkXCIsWzQ3NF1dLFtbNDc0LDQ3NF0sXCJ2YWxpZFwiXSxbWzQ3NSw0NzVdLFwibWFwcGVkXCIsWzQ3Nl1dLFtbNDc2LDQ3N10sXCJ2YWxpZFwiXSxbWzQ3OCw0NzhdLFwibWFwcGVkXCIsWzQ3OV1dLFtbNDc5LDQ3OV0sXCJ2YWxpZFwiXSxbWzQ4MCw0ODBdLFwibWFwcGVkXCIsWzQ4MV1dLFtbNDgxLDQ4MV0sXCJ2YWxpZFwiXSxbWzQ4Miw0ODJdLFwibWFwcGVkXCIsWzQ4M11dLFtbNDgzLDQ4M10sXCJ2YWxpZFwiXSxbWzQ4NCw0ODRdLFwibWFwcGVkXCIsWzQ4NV1dLFtbNDg1LDQ4NV0sXCJ2YWxpZFwiXSxbWzQ4Niw0ODZdLFwibWFwcGVkXCIsWzQ4N11dLFtbNDg3LDQ4N10sXCJ2YWxpZFwiXSxbWzQ4OCw0ODhdLFwibWFwcGVkXCIsWzQ4OV1dLFtbNDg5LDQ4OV0sXCJ2YWxpZFwiXSxbWzQ5MCw0OTBdLFwibWFwcGVkXCIsWzQ5MV1dLFtbNDkxLDQ5MV0sXCJ2YWxpZFwiXSxbWzQ5Miw0OTJdLFwibWFwcGVkXCIsWzQ5M11dLFtbNDkzLDQ5M10sXCJ2YWxpZFwiXSxbWzQ5NCw0OTRdLFwibWFwcGVkXCIsWzQ5NV1dLFtbNDk1LDQ5Nl0sXCJ2YWxpZFwiXSxbWzQ5Nyw0OTldLFwibWFwcGVkXCIsWzEwMCwxMjJdXSxbWzUwMCw1MDBdLFwibWFwcGVkXCIsWzUwMV1dLFtbNTAxLDUwMV0sXCJ2YWxpZFwiXSxbWzUwMiw1MDJdLFwibWFwcGVkXCIsWzQwNV1dLFtbNTAzLDUwM10sXCJtYXBwZWRcIixbNDQ3XV0sW1s1MDQsNTA0XSxcIm1hcHBlZFwiLFs1MDVdXSxbWzUwNSw1MDVdLFwidmFsaWRcIl0sW1s1MDYsNTA2XSxcIm1hcHBlZFwiLFs1MDddXSxbWzUwNyw1MDddLFwidmFsaWRcIl0sW1s1MDgsNTA4XSxcIm1hcHBlZFwiLFs1MDldXSxbWzUwOSw1MDldLFwidmFsaWRcIl0sW1s1MTAsNTEwXSxcIm1hcHBlZFwiLFs1MTFdXSxbWzUxMSw1MTFdLFwidmFsaWRcIl0sW1s1MTIsNTEyXSxcIm1hcHBlZFwiLFs1MTNdXSxbWzUxMyw1MTNdLFwidmFsaWRcIl0sW1s1MTQsNTE0XSxcIm1hcHBlZFwiLFs1MTVdXSxbWzUxNSw1MTVdLFwidmFsaWRcIl0sW1s1MTYsNTE2XSxcIm1hcHBlZFwiLFs1MTddXSxbWzUxNyw1MTddLFwidmFsaWRcIl0sW1s1MTgsNTE4XSxcIm1hcHBlZFwiLFs1MTldXSxbWzUxOSw1MTldLFwidmFsaWRcIl0sW1s1MjAsNTIwXSxcIm1hcHBlZFwiLFs1MjFdXSxbWzUyMSw1MjFdLFwidmFsaWRcIl0sW1s1MjIsNTIyXSxcIm1hcHBlZFwiLFs1MjNdXSxbWzUyMyw1MjNdLFwidmFsaWRcIl0sW1s1MjQsNTI0XSxcIm1hcHBlZFwiLFs1MjVdXSxbWzUyNSw1MjVdLFwidmFsaWRcIl0sW1s1MjYsNTI2XSxcIm1hcHBlZFwiLFs1MjddXSxbWzUyNyw1MjddLFwidmFsaWRcIl0sW1s1MjgsNTI4XSxcIm1hcHBlZFwiLFs1MjldXSxbWzUyOSw1MjldLFwidmFsaWRcIl0sW1s1MzAsNTMwXSxcIm1hcHBlZFwiLFs1MzFdXSxbWzUzMSw1MzFdLFwidmFsaWRcIl0sW1s1MzIsNTMyXSxcIm1hcHBlZFwiLFs1MzNdXSxbWzUzMyw1MzNdLFwidmFsaWRcIl0sW1s1MzQsNTM0XSxcIm1hcHBlZFwiLFs1MzVdXSxbWzUzNSw1MzVdLFwidmFsaWRcIl0sW1s1MzYsNTM2XSxcIm1hcHBlZFwiLFs1MzddXSxbWzUzNyw1MzddLFwidmFsaWRcIl0sW1s1MzgsNTM4XSxcIm1hcHBlZFwiLFs1MzldXSxbWzUzOSw1MzldLFwidmFsaWRcIl0sW1s1NDAsNTQwXSxcIm1hcHBlZFwiLFs1NDFdXSxbWzU0MSw1NDFdLFwidmFsaWRcIl0sW1s1NDIsNTQyXSxcIm1hcHBlZFwiLFs1NDNdXSxbWzU0Myw1NDNdLFwidmFsaWRcIl0sW1s1NDQsNTQ0XSxcIm1hcHBlZFwiLFs0MTRdXSxbWzU0NSw1NDVdLFwidmFsaWRcIl0sW1s1NDYsNTQ2XSxcIm1hcHBlZFwiLFs1NDddXSxbWzU0Nyw1NDddLFwidmFsaWRcIl0sW1s1NDgsNTQ4XSxcIm1hcHBlZFwiLFs1NDldXSxbWzU0OSw1NDldLFwidmFsaWRcIl0sW1s1NTAsNTUwXSxcIm1hcHBlZFwiLFs1NTFdXSxbWzU1MSw1NTFdLFwidmFsaWRcIl0sW1s1NTIsNTUyXSxcIm1hcHBlZFwiLFs1NTNdXSxbWzU1Myw1NTNdLFwidmFsaWRcIl0sW1s1NTQsNTU0XSxcIm1hcHBlZFwiLFs1NTVdXSxbWzU1NSw1NTVdLFwidmFsaWRcIl0sW1s1NTYsNTU2XSxcIm1hcHBlZFwiLFs1NTddXSxbWzU1Nyw1NTddLFwidmFsaWRcIl0sW1s1NTgsNTU4XSxcIm1hcHBlZFwiLFs1NTldXSxbWzU1OSw1NTldLFwidmFsaWRcIl0sW1s1NjAsNTYwXSxcIm1hcHBlZFwiLFs1NjFdXSxbWzU2MSw1NjFdLFwidmFsaWRcIl0sW1s1NjIsNTYyXSxcIm1hcHBlZFwiLFs1NjNdXSxbWzU2Myw1NjNdLFwidmFsaWRcIl0sW1s1NjQsNTY2XSxcInZhbGlkXCJdLFtbNTY3LDU2OV0sXCJ2YWxpZFwiXSxbWzU3MCw1NzBdLFwibWFwcGVkXCIsWzExMzY1XV0sW1s1NzEsNTcxXSxcIm1hcHBlZFwiLFs1NzJdXSxbWzU3Miw1NzJdLFwidmFsaWRcIl0sW1s1NzMsNTczXSxcIm1hcHBlZFwiLFs0MTBdXSxbWzU3NCw1NzRdLFwibWFwcGVkXCIsWzExMzY2XV0sW1s1NzUsNTc2XSxcInZhbGlkXCJdLFtbNTc3LDU3N10sXCJtYXBwZWRcIixbNTc4XV0sW1s1NzgsNTc4XSxcInZhbGlkXCJdLFtbNTc5LDU3OV0sXCJtYXBwZWRcIixbMzg0XV0sW1s1ODAsNTgwXSxcIm1hcHBlZFwiLFs2NDldXSxbWzU4MSw1ODFdLFwibWFwcGVkXCIsWzY1Ml1dLFtbNTgyLDU4Ml0sXCJtYXBwZWRcIixbNTgzXV0sW1s1ODMsNTgzXSxcInZhbGlkXCJdLFtbNTg0LDU4NF0sXCJtYXBwZWRcIixbNTg1XV0sW1s1ODUsNTg1XSxcInZhbGlkXCJdLFtbNTg2LDU4Nl0sXCJtYXBwZWRcIixbNTg3XV0sW1s1ODcsNTg3XSxcInZhbGlkXCJdLFtbNTg4LDU4OF0sXCJtYXBwZWRcIixbNTg5XV0sW1s1ODksNTg5XSxcInZhbGlkXCJdLFtbNTkwLDU5MF0sXCJtYXBwZWRcIixbNTkxXV0sW1s1OTEsNTkxXSxcInZhbGlkXCJdLFtbNTkyLDY4MF0sXCJ2YWxpZFwiXSxbWzY4MSw2ODVdLFwidmFsaWRcIl0sW1s2ODYsNjg3XSxcInZhbGlkXCJdLFtbNjg4LDY4OF0sXCJtYXBwZWRcIixbMTA0XV0sW1s2ODksNjg5XSxcIm1hcHBlZFwiLFs2MTRdXSxbWzY5MCw2OTBdLFwibWFwcGVkXCIsWzEwNl1dLFtbNjkxLDY5MV0sXCJtYXBwZWRcIixbMTE0XV0sW1s2OTIsNjkyXSxcIm1hcHBlZFwiLFs2MzNdXSxbWzY5Myw2OTNdLFwibWFwcGVkXCIsWzYzNV1dLFtbNjk0LDY5NF0sXCJtYXBwZWRcIixbNjQxXV0sW1s2OTUsNjk1XSxcIm1hcHBlZFwiLFsxMTldXSxbWzY5Niw2OTZdLFwibWFwcGVkXCIsWzEyMV1dLFtbNjk3LDcwNV0sXCJ2YWxpZFwiXSxbWzcwNiw3MDldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzcxMCw3MjFdLFwidmFsaWRcIl0sW1s3MjIsNzI3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s3MjgsNzI4XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbMzIsNzc0XV0sW1s3MjksNzI5XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbMzIsNzc1XV0sW1s3MzAsNzMwXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbMzIsNzc4XV0sW1s3MzEsNzMxXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbMzIsODA4XV0sW1s3MzIsNzMyXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbMzIsNzcxXV0sW1s3MzMsNzMzXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbMzIsNzc5XV0sW1s3MzQsNzM0XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s3MzUsNzM1XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s3MzYsNzM2XSxcIm1hcHBlZFwiLFs2MTFdXSxbWzczNyw3MzddLFwibWFwcGVkXCIsWzEwOF1dLFtbNzM4LDczOF0sXCJtYXBwZWRcIixbMTE1XV0sW1s3MzksNzM5XSxcIm1hcHBlZFwiLFsxMjBdXSxbWzc0MCw3NDBdLFwibWFwcGVkXCIsWzY2MV1dLFtbNzQxLDc0NV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNzQ2LDc0N10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNzQ4LDc0OF0sXCJ2YWxpZFwiXSxbWzc0OSw3NDldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzc1MCw3NTBdLFwidmFsaWRcIl0sW1s3NTEsNzY3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s3NjgsODMxXSxcInZhbGlkXCJdLFtbODMyLDgzMl0sXCJtYXBwZWRcIixbNzY4XV0sW1s4MzMsODMzXSxcIm1hcHBlZFwiLFs3NjldXSxbWzgzNCw4MzRdLFwidmFsaWRcIl0sW1s4MzUsODM1XSxcIm1hcHBlZFwiLFs3ODddXSxbWzgzNiw4MzZdLFwibWFwcGVkXCIsWzc3Niw3NjldXSxbWzgzNyw4MzddLFwibWFwcGVkXCIsWzk1M11dLFtbODM4LDg0Nl0sXCJ2YWxpZFwiXSxbWzg0Nyw4NDddLFwiaWdub3JlZFwiXSxbWzg0OCw4NTVdLFwidmFsaWRcIl0sW1s4NTYsODYwXSxcInZhbGlkXCJdLFtbODYxLDg2M10sXCJ2YWxpZFwiXSxbWzg2NCw4NjVdLFwidmFsaWRcIl0sW1s4NjYsODY2XSxcInZhbGlkXCJdLFtbODY3LDg3OV0sXCJ2YWxpZFwiXSxbWzg4MCw4ODBdLFwibWFwcGVkXCIsWzg4MV1dLFtbODgxLDg4MV0sXCJ2YWxpZFwiXSxbWzg4Miw4ODJdLFwibWFwcGVkXCIsWzg4M11dLFtbODgzLDg4M10sXCJ2YWxpZFwiXSxbWzg4NCw4ODRdLFwibWFwcGVkXCIsWzY5N11dLFtbODg1LDg4NV0sXCJ2YWxpZFwiXSxbWzg4Niw4ODZdLFwibWFwcGVkXCIsWzg4N11dLFtbODg3LDg4N10sXCJ2YWxpZFwiXSxbWzg4OCw4ODldLFwiZGlzYWxsb3dlZFwiXSxbWzg5MCw4OTBdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFszMiw5NTNdXSxbWzg5MSw4OTNdLFwidmFsaWRcIl0sW1s4OTQsODk0XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNTldXSxbWzg5NSw4OTVdLFwibWFwcGVkXCIsWzEwMTFdXSxbWzg5Niw4OTldLFwiZGlzYWxsb3dlZFwiXSxbWzkwMCw5MDBdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFszMiw3NjldXSxbWzkwMSw5MDFdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFszMiw3NzYsNzY5XV0sW1s5MDIsOTAyXSxcIm1hcHBlZFwiLFs5NDBdXSxbWzkwMyw5MDNdLFwibWFwcGVkXCIsWzE4M11dLFtbOTA0LDkwNF0sXCJtYXBwZWRcIixbOTQxXV0sW1s5MDUsOTA1XSxcIm1hcHBlZFwiLFs5NDJdXSxbWzkwNiw5MDZdLFwibWFwcGVkXCIsWzk0M11dLFtbOTA3LDkwN10sXCJkaXNhbGxvd2VkXCJdLFtbOTA4LDkwOF0sXCJtYXBwZWRcIixbOTcyXV0sW1s5MDksOTA5XSxcImRpc2FsbG93ZWRcIl0sW1s5MTAsOTEwXSxcIm1hcHBlZFwiLFs5NzNdXSxbWzkxMSw5MTFdLFwibWFwcGVkXCIsWzk3NF1dLFtbOTEyLDkxMl0sXCJ2YWxpZFwiXSxbWzkxMyw5MTNdLFwibWFwcGVkXCIsWzk0NV1dLFtbOTE0LDkxNF0sXCJtYXBwZWRcIixbOTQ2XV0sW1s5MTUsOTE1XSxcIm1hcHBlZFwiLFs5NDddXSxbWzkxNiw5MTZdLFwibWFwcGVkXCIsWzk0OF1dLFtbOTE3LDkxN10sXCJtYXBwZWRcIixbOTQ5XV0sW1s5MTgsOTE4XSxcIm1hcHBlZFwiLFs5NTBdXSxbWzkxOSw5MTldLFwibWFwcGVkXCIsWzk1MV1dLFtbOTIwLDkyMF0sXCJtYXBwZWRcIixbOTUyXV0sW1s5MjEsOTIxXSxcIm1hcHBlZFwiLFs5NTNdXSxbWzkyMiw5MjJdLFwibWFwcGVkXCIsWzk1NF1dLFtbOTIzLDkyM10sXCJtYXBwZWRcIixbOTU1XV0sW1s5MjQsOTI0XSxcIm1hcHBlZFwiLFs5NTZdXSxbWzkyNSw5MjVdLFwibWFwcGVkXCIsWzk1N11dLFtbOTI2LDkyNl0sXCJtYXBwZWRcIixbOTU4XV0sW1s5MjcsOTI3XSxcIm1hcHBlZFwiLFs5NTldXSxbWzkyOCw5MjhdLFwibWFwcGVkXCIsWzk2MF1dLFtbOTI5LDkyOV0sXCJtYXBwZWRcIixbOTYxXV0sW1s5MzAsOTMwXSxcImRpc2FsbG93ZWRcIl0sW1s5MzEsOTMxXSxcIm1hcHBlZFwiLFs5NjNdXSxbWzkzMiw5MzJdLFwibWFwcGVkXCIsWzk2NF1dLFtbOTMzLDkzM10sXCJtYXBwZWRcIixbOTY1XV0sW1s5MzQsOTM0XSxcIm1hcHBlZFwiLFs5NjZdXSxbWzkzNSw5MzVdLFwibWFwcGVkXCIsWzk2N11dLFtbOTM2LDkzNl0sXCJtYXBwZWRcIixbOTY4XV0sW1s5MzcsOTM3XSxcIm1hcHBlZFwiLFs5NjldXSxbWzkzOCw5MzhdLFwibWFwcGVkXCIsWzk3MF1dLFtbOTM5LDkzOV0sXCJtYXBwZWRcIixbOTcxXV0sW1s5NDAsOTYxXSxcInZhbGlkXCJdLFtbOTYyLDk2Ml0sXCJkZXZpYXRpb25cIixbOTYzXV0sW1s5NjMsOTc0XSxcInZhbGlkXCJdLFtbOTc1LDk3NV0sXCJtYXBwZWRcIixbOTgzXV0sW1s5NzYsOTc2XSxcIm1hcHBlZFwiLFs5NDZdXSxbWzk3Nyw5NzddLFwibWFwcGVkXCIsWzk1Ml1dLFtbOTc4LDk3OF0sXCJtYXBwZWRcIixbOTY1XV0sW1s5NzksOTc5XSxcIm1hcHBlZFwiLFs5NzNdXSxbWzk4MCw5ODBdLFwibWFwcGVkXCIsWzk3MV1dLFtbOTgxLDk4MV0sXCJtYXBwZWRcIixbOTY2XV0sW1s5ODIsOTgyXSxcIm1hcHBlZFwiLFs5NjBdXSxbWzk4Myw5ODNdLFwidmFsaWRcIl0sW1s5ODQsOTg0XSxcIm1hcHBlZFwiLFs5ODVdXSxbWzk4NSw5ODVdLFwidmFsaWRcIl0sW1s5ODYsOTg2XSxcIm1hcHBlZFwiLFs5ODddXSxbWzk4Nyw5ODddLFwidmFsaWRcIl0sW1s5ODgsOTg4XSxcIm1hcHBlZFwiLFs5ODldXSxbWzk4OSw5ODldLFwidmFsaWRcIl0sW1s5OTAsOTkwXSxcIm1hcHBlZFwiLFs5OTFdXSxbWzk5MSw5OTFdLFwidmFsaWRcIl0sW1s5OTIsOTkyXSxcIm1hcHBlZFwiLFs5OTNdXSxbWzk5Myw5OTNdLFwidmFsaWRcIl0sW1s5OTQsOTk0XSxcIm1hcHBlZFwiLFs5OTVdXSxbWzk5NSw5OTVdLFwidmFsaWRcIl0sW1s5OTYsOTk2XSxcIm1hcHBlZFwiLFs5OTddXSxbWzk5Nyw5OTddLFwidmFsaWRcIl0sW1s5OTgsOTk4XSxcIm1hcHBlZFwiLFs5OTldXSxbWzk5OSw5OTldLFwidmFsaWRcIl0sW1sxMDAwLDEwMDBdLFwibWFwcGVkXCIsWzEwMDFdXSxbWzEwMDEsMTAwMV0sXCJ2YWxpZFwiXSxbWzEwMDIsMTAwMl0sXCJtYXBwZWRcIixbMTAwM11dLFtbMTAwMywxMDAzXSxcInZhbGlkXCJdLFtbMTAwNCwxMDA0XSxcIm1hcHBlZFwiLFsxMDA1XV0sW1sxMDA1LDEwMDVdLFwidmFsaWRcIl0sW1sxMDA2LDEwMDZdLFwibWFwcGVkXCIsWzEwMDddXSxbWzEwMDcsMTAwN10sXCJ2YWxpZFwiXSxbWzEwMDgsMTAwOF0sXCJtYXBwZWRcIixbOTU0XV0sW1sxMDA5LDEwMDldLFwibWFwcGVkXCIsWzk2MV1dLFtbMTAxMCwxMDEwXSxcIm1hcHBlZFwiLFs5NjNdXSxbWzEwMTEsMTAxMV0sXCJ2YWxpZFwiXSxbWzEwMTIsMTAxMl0sXCJtYXBwZWRcIixbOTUyXV0sW1sxMDEzLDEwMTNdLFwibWFwcGVkXCIsWzk0OV1dLFtbMTAxNCwxMDE0XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMDE1LDEwMTVdLFwibWFwcGVkXCIsWzEwMTZdXSxbWzEwMTYsMTAxNl0sXCJ2YWxpZFwiXSxbWzEwMTcsMTAxN10sXCJtYXBwZWRcIixbOTYzXV0sW1sxMDE4LDEwMThdLFwibWFwcGVkXCIsWzEwMTldXSxbWzEwMTksMTAxOV0sXCJ2YWxpZFwiXSxbWzEwMjAsMTAyMF0sXCJ2YWxpZFwiXSxbWzEwMjEsMTAyMV0sXCJtYXBwZWRcIixbODkxXV0sW1sxMDIyLDEwMjJdLFwibWFwcGVkXCIsWzg5Ml1dLFtbMTAyMywxMDIzXSxcIm1hcHBlZFwiLFs4OTNdXSxbWzEwMjQsMTAyNF0sXCJtYXBwZWRcIixbMTEwNF1dLFtbMTAyNSwxMDI1XSxcIm1hcHBlZFwiLFsxMTA1XV0sW1sxMDI2LDEwMjZdLFwibWFwcGVkXCIsWzExMDZdXSxbWzEwMjcsMTAyN10sXCJtYXBwZWRcIixbMTEwN11dLFtbMTAyOCwxMDI4XSxcIm1hcHBlZFwiLFsxMTA4XV0sW1sxMDI5LDEwMjldLFwibWFwcGVkXCIsWzExMDldXSxbWzEwMzAsMTAzMF0sXCJtYXBwZWRcIixbMTExMF1dLFtbMTAzMSwxMDMxXSxcIm1hcHBlZFwiLFsxMTExXV0sW1sxMDMyLDEwMzJdLFwibWFwcGVkXCIsWzExMTJdXSxbWzEwMzMsMTAzM10sXCJtYXBwZWRcIixbMTExM11dLFtbMTAzNCwxMDM0XSxcIm1hcHBlZFwiLFsxMTE0XV0sW1sxMDM1LDEwMzVdLFwibWFwcGVkXCIsWzExMTVdXSxbWzEwMzYsMTAzNl0sXCJtYXBwZWRcIixbMTExNl1dLFtbMTAzNywxMDM3XSxcIm1hcHBlZFwiLFsxMTE3XV0sW1sxMDM4LDEwMzhdLFwibWFwcGVkXCIsWzExMThdXSxbWzEwMzksMTAzOV0sXCJtYXBwZWRcIixbMTExOV1dLFtbMTA0MCwxMDQwXSxcIm1hcHBlZFwiLFsxMDcyXV0sW1sxMDQxLDEwNDFdLFwibWFwcGVkXCIsWzEwNzNdXSxbWzEwNDIsMTA0Ml0sXCJtYXBwZWRcIixbMTA3NF1dLFtbMTA0MywxMDQzXSxcIm1hcHBlZFwiLFsxMDc1XV0sW1sxMDQ0LDEwNDRdLFwibWFwcGVkXCIsWzEwNzZdXSxbWzEwNDUsMTA0NV0sXCJtYXBwZWRcIixbMTA3N11dLFtbMTA0NiwxMDQ2XSxcIm1hcHBlZFwiLFsxMDc4XV0sW1sxMDQ3LDEwNDddLFwibWFwcGVkXCIsWzEwNzldXSxbWzEwNDgsMTA0OF0sXCJtYXBwZWRcIixbMTA4MF1dLFtbMTA0OSwxMDQ5XSxcIm1hcHBlZFwiLFsxMDgxXV0sW1sxMDUwLDEwNTBdLFwibWFwcGVkXCIsWzEwODJdXSxbWzEwNTEsMTA1MV0sXCJtYXBwZWRcIixbMTA4M11dLFtbMTA1MiwxMDUyXSxcIm1hcHBlZFwiLFsxMDg0XV0sW1sxMDUzLDEwNTNdLFwibWFwcGVkXCIsWzEwODVdXSxbWzEwNTQsMTA1NF0sXCJtYXBwZWRcIixbMTA4Nl1dLFtbMTA1NSwxMDU1XSxcIm1hcHBlZFwiLFsxMDg3XV0sW1sxMDU2LDEwNTZdLFwibWFwcGVkXCIsWzEwODhdXSxbWzEwNTcsMTA1N10sXCJtYXBwZWRcIixbMTA4OV1dLFtbMTA1OCwxMDU4XSxcIm1hcHBlZFwiLFsxMDkwXV0sW1sxMDU5LDEwNTldLFwibWFwcGVkXCIsWzEwOTFdXSxbWzEwNjAsMTA2MF0sXCJtYXBwZWRcIixbMTA5Ml1dLFtbMTA2MSwxMDYxXSxcIm1hcHBlZFwiLFsxMDkzXV0sW1sxMDYyLDEwNjJdLFwibWFwcGVkXCIsWzEwOTRdXSxbWzEwNjMsMTA2M10sXCJtYXBwZWRcIixbMTA5NV1dLFtbMTA2NCwxMDY0XSxcIm1hcHBlZFwiLFsxMDk2XV0sW1sxMDY1LDEwNjVdLFwibWFwcGVkXCIsWzEwOTddXSxbWzEwNjYsMTA2Nl0sXCJtYXBwZWRcIixbMTA5OF1dLFtbMTA2NywxMDY3XSxcIm1hcHBlZFwiLFsxMDk5XV0sW1sxMDY4LDEwNjhdLFwibWFwcGVkXCIsWzExMDBdXSxbWzEwNjksMTA2OV0sXCJtYXBwZWRcIixbMTEwMV1dLFtbMTA3MCwxMDcwXSxcIm1hcHBlZFwiLFsxMTAyXV0sW1sxMDcxLDEwNzFdLFwibWFwcGVkXCIsWzExMDNdXSxbWzEwNzIsMTEwM10sXCJ2YWxpZFwiXSxbWzExMDQsMTEwNF0sXCJ2YWxpZFwiXSxbWzExMDUsMTExNl0sXCJ2YWxpZFwiXSxbWzExMTcsMTExN10sXCJ2YWxpZFwiXSxbWzExMTgsMTExOV0sXCJ2YWxpZFwiXSxbWzExMjAsMTEyMF0sXCJtYXBwZWRcIixbMTEyMV1dLFtbMTEyMSwxMTIxXSxcInZhbGlkXCJdLFtbMTEyMiwxMTIyXSxcIm1hcHBlZFwiLFsxMTIzXV0sW1sxMTIzLDExMjNdLFwidmFsaWRcIl0sW1sxMTI0LDExMjRdLFwibWFwcGVkXCIsWzExMjVdXSxbWzExMjUsMTEyNV0sXCJ2YWxpZFwiXSxbWzExMjYsMTEyNl0sXCJtYXBwZWRcIixbMTEyN11dLFtbMTEyNywxMTI3XSxcInZhbGlkXCJdLFtbMTEyOCwxMTI4XSxcIm1hcHBlZFwiLFsxMTI5XV0sW1sxMTI5LDExMjldLFwidmFsaWRcIl0sW1sxMTMwLDExMzBdLFwibWFwcGVkXCIsWzExMzFdXSxbWzExMzEsMTEzMV0sXCJ2YWxpZFwiXSxbWzExMzIsMTEzMl0sXCJtYXBwZWRcIixbMTEzM11dLFtbMTEzMywxMTMzXSxcInZhbGlkXCJdLFtbMTEzNCwxMTM0XSxcIm1hcHBlZFwiLFsxMTM1XV0sW1sxMTM1LDExMzVdLFwidmFsaWRcIl0sW1sxMTM2LDExMzZdLFwibWFwcGVkXCIsWzExMzddXSxbWzExMzcsMTEzN10sXCJ2YWxpZFwiXSxbWzExMzgsMTEzOF0sXCJtYXBwZWRcIixbMTEzOV1dLFtbMTEzOSwxMTM5XSxcInZhbGlkXCJdLFtbMTE0MCwxMTQwXSxcIm1hcHBlZFwiLFsxMTQxXV0sW1sxMTQxLDExNDFdLFwidmFsaWRcIl0sW1sxMTQyLDExNDJdLFwibWFwcGVkXCIsWzExNDNdXSxbWzExNDMsMTE0M10sXCJ2YWxpZFwiXSxbWzExNDQsMTE0NF0sXCJtYXBwZWRcIixbMTE0NV1dLFtbMTE0NSwxMTQ1XSxcInZhbGlkXCJdLFtbMTE0NiwxMTQ2XSxcIm1hcHBlZFwiLFsxMTQ3XV0sW1sxMTQ3LDExNDddLFwidmFsaWRcIl0sW1sxMTQ4LDExNDhdLFwibWFwcGVkXCIsWzExNDldXSxbWzExNDksMTE0OV0sXCJ2YWxpZFwiXSxbWzExNTAsMTE1MF0sXCJtYXBwZWRcIixbMTE1MV1dLFtbMTE1MSwxMTUxXSxcInZhbGlkXCJdLFtbMTE1MiwxMTUyXSxcIm1hcHBlZFwiLFsxMTUzXV0sW1sxMTUzLDExNTNdLFwidmFsaWRcIl0sW1sxMTU0LDExNTRdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzExNTUsMTE1OF0sXCJ2YWxpZFwiXSxbWzExNTksMTE1OV0sXCJ2YWxpZFwiXSxbWzExNjAsMTE2MV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTE2MiwxMTYyXSxcIm1hcHBlZFwiLFsxMTYzXV0sW1sxMTYzLDExNjNdLFwidmFsaWRcIl0sW1sxMTY0LDExNjRdLFwibWFwcGVkXCIsWzExNjVdXSxbWzExNjUsMTE2NV0sXCJ2YWxpZFwiXSxbWzExNjYsMTE2Nl0sXCJtYXBwZWRcIixbMTE2N11dLFtbMTE2NywxMTY3XSxcInZhbGlkXCJdLFtbMTE2OCwxMTY4XSxcIm1hcHBlZFwiLFsxMTY5XV0sW1sxMTY5LDExNjldLFwidmFsaWRcIl0sW1sxMTcwLDExNzBdLFwibWFwcGVkXCIsWzExNzFdXSxbWzExNzEsMTE3MV0sXCJ2YWxpZFwiXSxbWzExNzIsMTE3Ml0sXCJtYXBwZWRcIixbMTE3M11dLFtbMTE3MywxMTczXSxcInZhbGlkXCJdLFtbMTE3NCwxMTc0XSxcIm1hcHBlZFwiLFsxMTc1XV0sW1sxMTc1LDExNzVdLFwidmFsaWRcIl0sW1sxMTc2LDExNzZdLFwibWFwcGVkXCIsWzExNzddXSxbWzExNzcsMTE3N10sXCJ2YWxpZFwiXSxbWzExNzgsMTE3OF0sXCJtYXBwZWRcIixbMTE3OV1dLFtbMTE3OSwxMTc5XSxcInZhbGlkXCJdLFtbMTE4MCwxMTgwXSxcIm1hcHBlZFwiLFsxMTgxXV0sW1sxMTgxLDExODFdLFwidmFsaWRcIl0sW1sxMTgyLDExODJdLFwibWFwcGVkXCIsWzExODNdXSxbWzExODMsMTE4M10sXCJ2YWxpZFwiXSxbWzExODQsMTE4NF0sXCJtYXBwZWRcIixbMTE4NV1dLFtbMTE4NSwxMTg1XSxcInZhbGlkXCJdLFtbMTE4NiwxMTg2XSxcIm1hcHBlZFwiLFsxMTg3XV0sW1sxMTg3LDExODddLFwidmFsaWRcIl0sW1sxMTg4LDExODhdLFwibWFwcGVkXCIsWzExODldXSxbWzExODksMTE4OV0sXCJ2YWxpZFwiXSxbWzExOTAsMTE5MF0sXCJtYXBwZWRcIixbMTE5MV1dLFtbMTE5MSwxMTkxXSxcInZhbGlkXCJdLFtbMTE5MiwxMTkyXSxcIm1hcHBlZFwiLFsxMTkzXV0sW1sxMTkzLDExOTNdLFwidmFsaWRcIl0sW1sxMTk0LDExOTRdLFwibWFwcGVkXCIsWzExOTVdXSxbWzExOTUsMTE5NV0sXCJ2YWxpZFwiXSxbWzExOTYsMTE5Nl0sXCJtYXBwZWRcIixbMTE5N11dLFtbMTE5NywxMTk3XSxcInZhbGlkXCJdLFtbMTE5OCwxMTk4XSxcIm1hcHBlZFwiLFsxMTk5XV0sW1sxMTk5LDExOTldLFwidmFsaWRcIl0sW1sxMjAwLDEyMDBdLFwibWFwcGVkXCIsWzEyMDFdXSxbWzEyMDEsMTIwMV0sXCJ2YWxpZFwiXSxbWzEyMDIsMTIwMl0sXCJtYXBwZWRcIixbMTIwM11dLFtbMTIwMywxMjAzXSxcInZhbGlkXCJdLFtbMTIwNCwxMjA0XSxcIm1hcHBlZFwiLFsxMjA1XV0sW1sxMjA1LDEyMDVdLFwidmFsaWRcIl0sW1sxMjA2LDEyMDZdLFwibWFwcGVkXCIsWzEyMDddXSxbWzEyMDcsMTIwN10sXCJ2YWxpZFwiXSxbWzEyMDgsMTIwOF0sXCJtYXBwZWRcIixbMTIwOV1dLFtbMTIwOSwxMjA5XSxcInZhbGlkXCJdLFtbMTIxMCwxMjEwXSxcIm1hcHBlZFwiLFsxMjExXV0sW1sxMjExLDEyMTFdLFwidmFsaWRcIl0sW1sxMjEyLDEyMTJdLFwibWFwcGVkXCIsWzEyMTNdXSxbWzEyMTMsMTIxM10sXCJ2YWxpZFwiXSxbWzEyMTQsMTIxNF0sXCJtYXBwZWRcIixbMTIxNV1dLFtbMTIxNSwxMjE1XSxcInZhbGlkXCJdLFtbMTIxNiwxMjE2XSxcImRpc2FsbG93ZWRcIl0sW1sxMjE3LDEyMTddLFwibWFwcGVkXCIsWzEyMThdXSxbWzEyMTgsMTIxOF0sXCJ2YWxpZFwiXSxbWzEyMTksMTIxOV0sXCJtYXBwZWRcIixbMTIyMF1dLFtbMTIyMCwxMjIwXSxcInZhbGlkXCJdLFtbMTIyMSwxMjIxXSxcIm1hcHBlZFwiLFsxMjIyXV0sW1sxMjIyLDEyMjJdLFwidmFsaWRcIl0sW1sxMjIzLDEyMjNdLFwibWFwcGVkXCIsWzEyMjRdXSxbWzEyMjQsMTIyNF0sXCJ2YWxpZFwiXSxbWzEyMjUsMTIyNV0sXCJtYXBwZWRcIixbMTIyNl1dLFtbMTIyNiwxMjI2XSxcInZhbGlkXCJdLFtbMTIyNywxMjI3XSxcIm1hcHBlZFwiLFsxMjI4XV0sW1sxMjI4LDEyMjhdLFwidmFsaWRcIl0sW1sxMjI5LDEyMjldLFwibWFwcGVkXCIsWzEyMzBdXSxbWzEyMzAsMTIzMF0sXCJ2YWxpZFwiXSxbWzEyMzEsMTIzMV0sXCJ2YWxpZFwiXSxbWzEyMzIsMTIzMl0sXCJtYXBwZWRcIixbMTIzM11dLFtbMTIzMywxMjMzXSxcInZhbGlkXCJdLFtbMTIzNCwxMjM0XSxcIm1hcHBlZFwiLFsxMjM1XV0sW1sxMjM1LDEyMzVdLFwidmFsaWRcIl0sW1sxMjM2LDEyMzZdLFwibWFwcGVkXCIsWzEyMzddXSxbWzEyMzcsMTIzN10sXCJ2YWxpZFwiXSxbWzEyMzgsMTIzOF0sXCJtYXBwZWRcIixbMTIzOV1dLFtbMTIzOSwxMjM5XSxcInZhbGlkXCJdLFtbMTI0MCwxMjQwXSxcIm1hcHBlZFwiLFsxMjQxXV0sW1sxMjQxLDEyNDFdLFwidmFsaWRcIl0sW1sxMjQyLDEyNDJdLFwibWFwcGVkXCIsWzEyNDNdXSxbWzEyNDMsMTI0M10sXCJ2YWxpZFwiXSxbWzEyNDQsMTI0NF0sXCJtYXBwZWRcIixbMTI0NV1dLFtbMTI0NSwxMjQ1XSxcInZhbGlkXCJdLFtbMTI0NiwxMjQ2XSxcIm1hcHBlZFwiLFsxMjQ3XV0sW1sxMjQ3LDEyNDddLFwidmFsaWRcIl0sW1sxMjQ4LDEyNDhdLFwibWFwcGVkXCIsWzEyNDldXSxbWzEyNDksMTI0OV0sXCJ2YWxpZFwiXSxbWzEyNTAsMTI1MF0sXCJtYXBwZWRcIixbMTI1MV1dLFtbMTI1MSwxMjUxXSxcInZhbGlkXCJdLFtbMTI1MiwxMjUyXSxcIm1hcHBlZFwiLFsxMjUzXV0sW1sxMjUzLDEyNTNdLFwidmFsaWRcIl0sW1sxMjU0LDEyNTRdLFwibWFwcGVkXCIsWzEyNTVdXSxbWzEyNTUsMTI1NV0sXCJ2YWxpZFwiXSxbWzEyNTYsMTI1Nl0sXCJtYXBwZWRcIixbMTI1N11dLFtbMTI1NywxMjU3XSxcInZhbGlkXCJdLFtbMTI1OCwxMjU4XSxcIm1hcHBlZFwiLFsxMjU5XV0sW1sxMjU5LDEyNTldLFwidmFsaWRcIl0sW1sxMjYwLDEyNjBdLFwibWFwcGVkXCIsWzEyNjFdXSxbWzEyNjEsMTI2MV0sXCJ2YWxpZFwiXSxbWzEyNjIsMTI2Ml0sXCJtYXBwZWRcIixbMTI2M11dLFtbMTI2MywxMjYzXSxcInZhbGlkXCJdLFtbMTI2NCwxMjY0XSxcIm1hcHBlZFwiLFsxMjY1XV0sW1sxMjY1LDEyNjVdLFwidmFsaWRcIl0sW1sxMjY2LDEyNjZdLFwibWFwcGVkXCIsWzEyNjddXSxbWzEyNjcsMTI2N10sXCJ2YWxpZFwiXSxbWzEyNjgsMTI2OF0sXCJtYXBwZWRcIixbMTI2OV1dLFtbMTI2OSwxMjY5XSxcInZhbGlkXCJdLFtbMTI3MCwxMjcwXSxcIm1hcHBlZFwiLFsxMjcxXV0sW1sxMjcxLDEyNzFdLFwidmFsaWRcIl0sW1sxMjcyLDEyNzJdLFwibWFwcGVkXCIsWzEyNzNdXSxbWzEyNzMsMTI3M10sXCJ2YWxpZFwiXSxbWzEyNzQsMTI3NF0sXCJtYXBwZWRcIixbMTI3NV1dLFtbMTI3NSwxMjc1XSxcInZhbGlkXCJdLFtbMTI3NiwxMjc2XSxcIm1hcHBlZFwiLFsxMjc3XV0sW1sxMjc3LDEyNzddLFwidmFsaWRcIl0sW1sxMjc4LDEyNzhdLFwibWFwcGVkXCIsWzEyNzldXSxbWzEyNzksMTI3OV0sXCJ2YWxpZFwiXSxbWzEyODAsMTI4MF0sXCJtYXBwZWRcIixbMTI4MV1dLFtbMTI4MSwxMjgxXSxcInZhbGlkXCJdLFtbMTI4MiwxMjgyXSxcIm1hcHBlZFwiLFsxMjgzXV0sW1sxMjgzLDEyODNdLFwidmFsaWRcIl0sW1sxMjg0LDEyODRdLFwibWFwcGVkXCIsWzEyODVdXSxbWzEyODUsMTI4NV0sXCJ2YWxpZFwiXSxbWzEyODYsMTI4Nl0sXCJtYXBwZWRcIixbMTI4N11dLFtbMTI4NywxMjg3XSxcInZhbGlkXCJdLFtbMTI4OCwxMjg4XSxcIm1hcHBlZFwiLFsxMjg5XV0sW1sxMjg5LDEyODldLFwidmFsaWRcIl0sW1sxMjkwLDEyOTBdLFwibWFwcGVkXCIsWzEyOTFdXSxbWzEyOTEsMTI5MV0sXCJ2YWxpZFwiXSxbWzEyOTIsMTI5Ml0sXCJtYXBwZWRcIixbMTI5M11dLFtbMTI5MywxMjkzXSxcInZhbGlkXCJdLFtbMTI5NCwxMjk0XSxcIm1hcHBlZFwiLFsxMjk1XV0sW1sxMjk1LDEyOTVdLFwidmFsaWRcIl0sW1sxMjk2LDEyOTZdLFwibWFwcGVkXCIsWzEyOTddXSxbWzEyOTcsMTI5N10sXCJ2YWxpZFwiXSxbWzEyOTgsMTI5OF0sXCJtYXBwZWRcIixbMTI5OV1dLFtbMTI5OSwxMjk5XSxcInZhbGlkXCJdLFtbMTMwMCwxMzAwXSxcIm1hcHBlZFwiLFsxMzAxXV0sW1sxMzAxLDEzMDFdLFwidmFsaWRcIl0sW1sxMzAyLDEzMDJdLFwibWFwcGVkXCIsWzEzMDNdXSxbWzEzMDMsMTMwM10sXCJ2YWxpZFwiXSxbWzEzMDQsMTMwNF0sXCJtYXBwZWRcIixbMTMwNV1dLFtbMTMwNSwxMzA1XSxcInZhbGlkXCJdLFtbMTMwNiwxMzA2XSxcIm1hcHBlZFwiLFsxMzA3XV0sW1sxMzA3LDEzMDddLFwidmFsaWRcIl0sW1sxMzA4LDEzMDhdLFwibWFwcGVkXCIsWzEzMDldXSxbWzEzMDksMTMwOV0sXCJ2YWxpZFwiXSxbWzEzMTAsMTMxMF0sXCJtYXBwZWRcIixbMTMxMV1dLFtbMTMxMSwxMzExXSxcInZhbGlkXCJdLFtbMTMxMiwxMzEyXSxcIm1hcHBlZFwiLFsxMzEzXV0sW1sxMzEzLDEzMTNdLFwidmFsaWRcIl0sW1sxMzE0LDEzMTRdLFwibWFwcGVkXCIsWzEzMTVdXSxbWzEzMTUsMTMxNV0sXCJ2YWxpZFwiXSxbWzEzMTYsMTMxNl0sXCJtYXBwZWRcIixbMTMxN11dLFtbMTMxNywxMzE3XSxcInZhbGlkXCJdLFtbMTMxOCwxMzE4XSxcIm1hcHBlZFwiLFsxMzE5XV0sW1sxMzE5LDEzMTldLFwidmFsaWRcIl0sW1sxMzIwLDEzMjBdLFwibWFwcGVkXCIsWzEzMjFdXSxbWzEzMjEsMTMyMV0sXCJ2YWxpZFwiXSxbWzEzMjIsMTMyMl0sXCJtYXBwZWRcIixbMTMyM11dLFtbMTMyMywxMzIzXSxcInZhbGlkXCJdLFtbMTMyNCwxMzI0XSxcIm1hcHBlZFwiLFsxMzI1XV0sW1sxMzI1LDEzMjVdLFwidmFsaWRcIl0sW1sxMzI2LDEzMjZdLFwibWFwcGVkXCIsWzEzMjddXSxbWzEzMjcsMTMyN10sXCJ2YWxpZFwiXSxbWzEzMjgsMTMyOF0sXCJkaXNhbGxvd2VkXCJdLFtbMTMyOSwxMzI5XSxcIm1hcHBlZFwiLFsxMzc3XV0sW1sxMzMwLDEzMzBdLFwibWFwcGVkXCIsWzEzNzhdXSxbWzEzMzEsMTMzMV0sXCJtYXBwZWRcIixbMTM3OV1dLFtbMTMzMiwxMzMyXSxcIm1hcHBlZFwiLFsxMzgwXV0sW1sxMzMzLDEzMzNdLFwibWFwcGVkXCIsWzEzODFdXSxbWzEzMzQsMTMzNF0sXCJtYXBwZWRcIixbMTM4Ml1dLFtbMTMzNSwxMzM1XSxcIm1hcHBlZFwiLFsxMzgzXV0sW1sxMzM2LDEzMzZdLFwibWFwcGVkXCIsWzEzODRdXSxbWzEzMzcsMTMzN10sXCJtYXBwZWRcIixbMTM4NV1dLFtbMTMzOCwxMzM4XSxcIm1hcHBlZFwiLFsxMzg2XV0sW1sxMzM5LDEzMzldLFwibWFwcGVkXCIsWzEzODddXSxbWzEzNDAsMTM0MF0sXCJtYXBwZWRcIixbMTM4OF1dLFtbMTM0MSwxMzQxXSxcIm1hcHBlZFwiLFsxMzg5XV0sW1sxMzQyLDEzNDJdLFwibWFwcGVkXCIsWzEzOTBdXSxbWzEzNDMsMTM0M10sXCJtYXBwZWRcIixbMTM5MV1dLFtbMTM0NCwxMzQ0XSxcIm1hcHBlZFwiLFsxMzkyXV0sW1sxMzQ1LDEzNDVdLFwibWFwcGVkXCIsWzEzOTNdXSxbWzEzNDYsMTM0Nl0sXCJtYXBwZWRcIixbMTM5NF1dLFtbMTM0NywxMzQ3XSxcIm1hcHBlZFwiLFsxMzk1XV0sW1sxMzQ4LDEzNDhdLFwibWFwcGVkXCIsWzEzOTZdXSxbWzEzNDksMTM0OV0sXCJtYXBwZWRcIixbMTM5N11dLFtbMTM1MCwxMzUwXSxcIm1hcHBlZFwiLFsxMzk4XV0sW1sxMzUxLDEzNTFdLFwibWFwcGVkXCIsWzEzOTldXSxbWzEzNTIsMTM1Ml0sXCJtYXBwZWRcIixbMTQwMF1dLFtbMTM1MywxMzUzXSxcIm1hcHBlZFwiLFsxNDAxXV0sW1sxMzU0LDEzNTRdLFwibWFwcGVkXCIsWzE0MDJdXSxbWzEzNTUsMTM1NV0sXCJtYXBwZWRcIixbMTQwM11dLFtbMTM1NiwxMzU2XSxcIm1hcHBlZFwiLFsxNDA0XV0sW1sxMzU3LDEzNTddLFwibWFwcGVkXCIsWzE0MDVdXSxbWzEzNTgsMTM1OF0sXCJtYXBwZWRcIixbMTQwNl1dLFtbMTM1OSwxMzU5XSxcIm1hcHBlZFwiLFsxNDA3XV0sW1sxMzYwLDEzNjBdLFwibWFwcGVkXCIsWzE0MDhdXSxbWzEzNjEsMTM2MV0sXCJtYXBwZWRcIixbMTQwOV1dLFtbMTM2MiwxMzYyXSxcIm1hcHBlZFwiLFsxNDEwXV0sW1sxMzYzLDEzNjNdLFwibWFwcGVkXCIsWzE0MTFdXSxbWzEzNjQsMTM2NF0sXCJtYXBwZWRcIixbMTQxMl1dLFtbMTM2NSwxMzY1XSxcIm1hcHBlZFwiLFsxNDEzXV0sW1sxMzY2LDEzNjZdLFwibWFwcGVkXCIsWzE0MTRdXSxbWzEzNjcsMTM2OF0sXCJkaXNhbGxvd2VkXCJdLFtbMTM2OSwxMzY5XSxcInZhbGlkXCJdLFtbMTM3MCwxMzc1XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMzc2LDEzNzZdLFwiZGlzYWxsb3dlZFwiXSxbWzEzNzcsMTQxNF0sXCJ2YWxpZFwiXSxbWzE0MTUsMTQxNV0sXCJtYXBwZWRcIixbMTM4MSwxNDEwXV0sW1sxNDE2LDE0MTZdLFwiZGlzYWxsb3dlZFwiXSxbWzE0MTcsMTQxN10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTQxOCwxNDE4XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxNDE5LDE0MjBdLFwiZGlzYWxsb3dlZFwiXSxbWzE0MjEsMTQyMl0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTQyMywxNDIzXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxNDI0LDE0MjRdLFwiZGlzYWxsb3dlZFwiXSxbWzE0MjUsMTQ0MV0sXCJ2YWxpZFwiXSxbWzE0NDIsMTQ0Ml0sXCJ2YWxpZFwiXSxbWzE0NDMsMTQ1NV0sXCJ2YWxpZFwiXSxbWzE0NTYsMTQ2NV0sXCJ2YWxpZFwiXSxbWzE0NjYsMTQ2Nl0sXCJ2YWxpZFwiXSxbWzE0NjcsMTQ2OV0sXCJ2YWxpZFwiXSxbWzE0NzAsMTQ3MF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTQ3MSwxNDcxXSxcInZhbGlkXCJdLFtbMTQ3MiwxNDcyXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxNDczLDE0NzRdLFwidmFsaWRcIl0sW1sxNDc1LDE0NzVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzE0NzYsMTQ3Nl0sXCJ2YWxpZFwiXSxbWzE0NzcsMTQ3N10sXCJ2YWxpZFwiXSxbWzE0NzgsMTQ3OF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTQ3OSwxNDc5XSxcInZhbGlkXCJdLFtbMTQ4MCwxNDg3XSxcImRpc2FsbG93ZWRcIl0sW1sxNDg4LDE1MTRdLFwidmFsaWRcIl0sW1sxNTE1LDE1MTldLFwiZGlzYWxsb3dlZFwiXSxbWzE1MjAsMTUyNF0sXCJ2YWxpZFwiXSxbWzE1MjUsMTUzNV0sXCJkaXNhbGxvd2VkXCJdLFtbMTUzNiwxNTM5XSxcImRpc2FsbG93ZWRcIl0sW1sxNTQwLDE1NDBdLFwiZGlzYWxsb3dlZFwiXSxbWzE1NDEsMTU0MV0sXCJkaXNhbGxvd2VkXCJdLFtbMTU0MiwxNTQ2XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxNTQ3LDE1NDddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzE1NDgsMTU0OF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTU0OSwxNTUxXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxNTUyLDE1NTddLFwidmFsaWRcIl0sW1sxNTU4LDE1NjJdLFwidmFsaWRcIl0sW1sxNTYzLDE1NjNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzE1NjQsMTU2NF0sXCJkaXNhbGxvd2VkXCJdLFtbMTU2NSwxNTY1XSxcImRpc2FsbG93ZWRcIl0sW1sxNTY2LDE1NjZdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzE1NjcsMTU2N10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTU2OCwxNTY4XSxcInZhbGlkXCJdLFtbMTU2OSwxNTk0XSxcInZhbGlkXCJdLFtbMTU5NSwxNTk5XSxcInZhbGlkXCJdLFtbMTYwMCwxNjAwXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxNjAxLDE2MThdLFwidmFsaWRcIl0sW1sxNjE5LDE2MjFdLFwidmFsaWRcIl0sW1sxNjIyLDE2MjRdLFwidmFsaWRcIl0sW1sxNjI1LDE2MzBdLFwidmFsaWRcIl0sW1sxNjMxLDE2MzFdLFwidmFsaWRcIl0sW1sxNjMyLDE2NDFdLFwidmFsaWRcIl0sW1sxNjQyLDE2NDVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzE2NDYsMTY0N10sXCJ2YWxpZFwiXSxbWzE2NDgsMTY1Ml0sXCJ2YWxpZFwiXSxbWzE2NTMsMTY1M10sXCJtYXBwZWRcIixbMTU3NSwxNjUyXV0sW1sxNjU0LDE2NTRdLFwibWFwcGVkXCIsWzE2MDgsMTY1Ml1dLFtbMTY1NSwxNjU1XSxcIm1hcHBlZFwiLFsxNzM1LDE2NTJdXSxbWzE2NTYsMTY1Nl0sXCJtYXBwZWRcIixbMTYxMCwxNjUyXV0sW1sxNjU3LDE3MTldLFwidmFsaWRcIl0sW1sxNzIwLDE3MjFdLFwidmFsaWRcIl0sW1sxNzIyLDE3MjZdLFwidmFsaWRcIl0sW1sxNzI3LDE3MjddLFwidmFsaWRcIl0sW1sxNzI4LDE3NDJdLFwidmFsaWRcIl0sW1sxNzQzLDE3NDNdLFwidmFsaWRcIl0sW1sxNzQ0LDE3NDddLFwidmFsaWRcIl0sW1sxNzQ4LDE3NDhdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzE3NDksMTc1Nl0sXCJ2YWxpZFwiXSxbWzE3NTcsMTc1N10sXCJkaXNhbGxvd2VkXCJdLFtbMTc1OCwxNzU4XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxNzU5LDE3NjhdLFwidmFsaWRcIl0sW1sxNzY5LDE3NjldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzE3NzAsMTc3M10sXCJ2YWxpZFwiXSxbWzE3NzQsMTc3NV0sXCJ2YWxpZFwiXSxbWzE3NzYsMTc4NV0sXCJ2YWxpZFwiXSxbWzE3ODYsMTc5MF0sXCJ2YWxpZFwiXSxbWzE3OTEsMTc5MV0sXCJ2YWxpZFwiXSxbWzE3OTIsMTgwNV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTgwNiwxODA2XSxcImRpc2FsbG93ZWRcIl0sW1sxODA3LDE4MDddLFwiZGlzYWxsb3dlZFwiXSxbWzE4MDgsMTgzNl0sXCJ2YWxpZFwiXSxbWzE4MzcsMTgzOV0sXCJ2YWxpZFwiXSxbWzE4NDAsMTg2Nl0sXCJ2YWxpZFwiXSxbWzE4NjcsMTg2OF0sXCJkaXNhbGxvd2VkXCJdLFtbMTg2OSwxODcxXSxcInZhbGlkXCJdLFtbMTg3MiwxOTAxXSxcInZhbGlkXCJdLFtbMTkwMiwxOTE5XSxcInZhbGlkXCJdLFtbMTkyMCwxOTY4XSxcInZhbGlkXCJdLFtbMTk2OSwxOTY5XSxcInZhbGlkXCJdLFtbMTk3MCwxOTgzXSxcImRpc2FsbG93ZWRcIl0sW1sxOTg0LDIwMzddLFwidmFsaWRcIl0sW1syMDM4LDIwNDJdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzIwNDMsMjA0N10sXCJkaXNhbGxvd2VkXCJdLFtbMjA0OCwyMDkzXSxcInZhbGlkXCJdLFtbMjA5NCwyMDk1XSxcImRpc2FsbG93ZWRcIl0sW1syMDk2LDIxMTBdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzIxMTEsMjExMV0sXCJkaXNhbGxvd2VkXCJdLFtbMjExMiwyMTM5XSxcInZhbGlkXCJdLFtbMjE0MCwyMTQxXSxcImRpc2FsbG93ZWRcIl0sW1syMTQyLDIxNDJdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzIxNDMsMjIwN10sXCJkaXNhbGxvd2VkXCJdLFtbMjIwOCwyMjA4XSxcInZhbGlkXCJdLFtbMjIwOSwyMjA5XSxcInZhbGlkXCJdLFtbMjIxMCwyMjIwXSxcInZhbGlkXCJdLFtbMjIyMSwyMjI2XSxcInZhbGlkXCJdLFtbMjIyNywyMjI4XSxcInZhbGlkXCJdLFtbMjIyOSwyMjc0XSxcImRpc2FsbG93ZWRcIl0sW1syMjc1LDIyNzVdLFwidmFsaWRcIl0sW1syMjc2LDIzMDJdLFwidmFsaWRcIl0sW1syMzAzLDIzMDNdLFwidmFsaWRcIl0sW1syMzA0LDIzMDRdLFwidmFsaWRcIl0sW1syMzA1LDIzMDddLFwidmFsaWRcIl0sW1syMzA4LDIzMDhdLFwidmFsaWRcIl0sW1syMzA5LDIzNjFdLFwidmFsaWRcIl0sW1syMzYyLDIzNjNdLFwidmFsaWRcIl0sW1syMzY0LDIzODFdLFwidmFsaWRcIl0sW1syMzgyLDIzODJdLFwidmFsaWRcIl0sW1syMzgzLDIzODNdLFwidmFsaWRcIl0sW1syMzg0LDIzODhdLFwidmFsaWRcIl0sW1syMzg5LDIzODldLFwidmFsaWRcIl0sW1syMzkwLDIzOTFdLFwidmFsaWRcIl0sW1syMzkyLDIzOTJdLFwibWFwcGVkXCIsWzIzMjUsMjM2NF1dLFtbMjM5MywyMzkzXSxcIm1hcHBlZFwiLFsyMzI2LDIzNjRdXSxbWzIzOTQsMjM5NF0sXCJtYXBwZWRcIixbMjMyNywyMzY0XV0sW1syMzk1LDIzOTVdLFwibWFwcGVkXCIsWzIzMzIsMjM2NF1dLFtbMjM5NiwyMzk2XSxcIm1hcHBlZFwiLFsyMzM3LDIzNjRdXSxbWzIzOTcsMjM5N10sXCJtYXBwZWRcIixbMjMzOCwyMzY0XV0sW1syMzk4LDIzOThdLFwibWFwcGVkXCIsWzIzNDcsMjM2NF1dLFtbMjM5OSwyMzk5XSxcIm1hcHBlZFwiLFsyMzUxLDIzNjRdXSxbWzI0MDAsMjQwM10sXCJ2YWxpZFwiXSxbWzI0MDQsMjQwNV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMjQwNiwyNDE1XSxcInZhbGlkXCJdLFtbMjQxNiwyNDE2XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1syNDE3LDI0MThdLFwidmFsaWRcIl0sW1syNDE5LDI0MjNdLFwidmFsaWRcIl0sW1syNDI0LDI0MjRdLFwidmFsaWRcIl0sW1syNDI1LDI0MjZdLFwidmFsaWRcIl0sW1syNDI3LDI0MjhdLFwidmFsaWRcIl0sW1syNDI5LDI0MjldLFwidmFsaWRcIl0sW1syNDMwLDI0MzFdLFwidmFsaWRcIl0sW1syNDMyLDI0MzJdLFwidmFsaWRcIl0sW1syNDMzLDI0MzVdLFwidmFsaWRcIl0sW1syNDM2LDI0MzZdLFwiZGlzYWxsb3dlZFwiXSxbWzI0MzcsMjQ0NF0sXCJ2YWxpZFwiXSxbWzI0NDUsMjQ0Nl0sXCJkaXNhbGxvd2VkXCJdLFtbMjQ0NywyNDQ4XSxcInZhbGlkXCJdLFtbMjQ0OSwyNDUwXSxcImRpc2FsbG93ZWRcIl0sW1syNDUxLDI0NzJdLFwidmFsaWRcIl0sW1syNDczLDI0NzNdLFwiZGlzYWxsb3dlZFwiXSxbWzI0NzQsMjQ4MF0sXCJ2YWxpZFwiXSxbWzI0ODEsMjQ4MV0sXCJkaXNhbGxvd2VkXCJdLFtbMjQ4MiwyNDgyXSxcInZhbGlkXCJdLFtbMjQ4MywyNDg1XSxcImRpc2FsbG93ZWRcIl0sW1syNDg2LDI0ODldLFwidmFsaWRcIl0sW1syNDkwLDI0OTFdLFwiZGlzYWxsb3dlZFwiXSxbWzI0OTIsMjQ5Ml0sXCJ2YWxpZFwiXSxbWzI0OTMsMjQ5M10sXCJ2YWxpZFwiXSxbWzI0OTQsMjUwMF0sXCJ2YWxpZFwiXSxbWzI1MDEsMjUwMl0sXCJkaXNhbGxvd2VkXCJdLFtbMjUwMywyNTA0XSxcInZhbGlkXCJdLFtbMjUwNSwyNTA2XSxcImRpc2FsbG93ZWRcIl0sW1syNTA3LDI1MDldLFwidmFsaWRcIl0sW1syNTEwLDI1MTBdLFwidmFsaWRcIl0sW1syNTExLDI1MThdLFwiZGlzYWxsb3dlZFwiXSxbWzI1MTksMjUxOV0sXCJ2YWxpZFwiXSxbWzI1MjAsMjUyM10sXCJkaXNhbGxvd2VkXCJdLFtbMjUyNCwyNTI0XSxcIm1hcHBlZFwiLFsyNDY1LDI0OTJdXSxbWzI1MjUsMjUyNV0sXCJtYXBwZWRcIixbMjQ2NiwyNDkyXV0sW1syNTI2LDI1MjZdLFwiZGlzYWxsb3dlZFwiXSxbWzI1MjcsMjUyN10sXCJtYXBwZWRcIixbMjQ3OSwyNDkyXV0sW1syNTI4LDI1MzFdLFwidmFsaWRcIl0sW1syNTMyLDI1MzNdLFwiZGlzYWxsb3dlZFwiXSxbWzI1MzQsMjU0NV0sXCJ2YWxpZFwiXSxbWzI1NDYsMjU1NF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMjU1NSwyNTU1XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1syNTU2LDI1NjBdLFwiZGlzYWxsb3dlZFwiXSxbWzI1NjEsMjU2MV0sXCJ2YWxpZFwiXSxbWzI1NjIsMjU2Ml0sXCJ2YWxpZFwiXSxbWzI1NjMsMjU2M10sXCJ2YWxpZFwiXSxbWzI1NjQsMjU2NF0sXCJkaXNhbGxvd2VkXCJdLFtbMjU2NSwyNTcwXSxcInZhbGlkXCJdLFtbMjU3MSwyNTc0XSxcImRpc2FsbG93ZWRcIl0sW1syNTc1LDI1NzZdLFwidmFsaWRcIl0sW1syNTc3LDI1NzhdLFwiZGlzYWxsb3dlZFwiXSxbWzI1NzksMjYwMF0sXCJ2YWxpZFwiXSxbWzI2MDEsMjYwMV0sXCJkaXNhbGxvd2VkXCJdLFtbMjYwMiwyNjA4XSxcInZhbGlkXCJdLFtbMjYwOSwyNjA5XSxcImRpc2FsbG93ZWRcIl0sW1syNjEwLDI2MTBdLFwidmFsaWRcIl0sW1syNjExLDI2MTFdLFwibWFwcGVkXCIsWzI2MTAsMjYyMF1dLFtbMjYxMiwyNjEyXSxcImRpc2FsbG93ZWRcIl0sW1syNjEzLDI2MTNdLFwidmFsaWRcIl0sW1syNjE0LDI2MTRdLFwibWFwcGVkXCIsWzI2MTYsMjYyMF1dLFtbMjYxNSwyNjE1XSxcImRpc2FsbG93ZWRcIl0sW1syNjE2LDI2MTddLFwidmFsaWRcIl0sW1syNjE4LDI2MTldLFwiZGlzYWxsb3dlZFwiXSxbWzI2MjAsMjYyMF0sXCJ2YWxpZFwiXSxbWzI2MjEsMjYyMV0sXCJkaXNhbGxvd2VkXCJdLFtbMjYyMiwyNjI2XSxcInZhbGlkXCJdLFtbMjYyNywyNjMwXSxcImRpc2FsbG93ZWRcIl0sW1syNjMxLDI2MzJdLFwidmFsaWRcIl0sW1syNjMzLDI2MzRdLFwiZGlzYWxsb3dlZFwiXSxbWzI2MzUsMjYzN10sXCJ2YWxpZFwiXSxbWzI2MzgsMjY0MF0sXCJkaXNhbGxvd2VkXCJdLFtbMjY0MSwyNjQxXSxcInZhbGlkXCJdLFtbMjY0MiwyNjQ4XSxcImRpc2FsbG93ZWRcIl0sW1syNjQ5LDI2NDldLFwibWFwcGVkXCIsWzI1ODIsMjYyMF1dLFtbMjY1MCwyNjUwXSxcIm1hcHBlZFwiLFsyNTgzLDI2MjBdXSxbWzI2NTEsMjY1MV0sXCJtYXBwZWRcIixbMjU4OCwyNjIwXV0sW1syNjUyLDI2NTJdLFwidmFsaWRcIl0sW1syNjUzLDI2NTNdLFwiZGlzYWxsb3dlZFwiXSxbWzI2NTQsMjY1NF0sXCJtYXBwZWRcIixbMjYwMywyNjIwXV0sW1syNjU1LDI2NjFdLFwiZGlzYWxsb3dlZFwiXSxbWzI2NjIsMjY3Nl0sXCJ2YWxpZFwiXSxbWzI2NzcsMjY3N10sXCJ2YWxpZFwiXSxbWzI2NzgsMjY4OF0sXCJkaXNhbGxvd2VkXCJdLFtbMjY4OSwyNjkxXSxcInZhbGlkXCJdLFtbMjY5MiwyNjkyXSxcImRpc2FsbG93ZWRcIl0sW1syNjkzLDI2OTldLFwidmFsaWRcIl0sW1syNzAwLDI3MDBdLFwidmFsaWRcIl0sW1syNzAxLDI3MDFdLFwidmFsaWRcIl0sW1syNzAyLDI3MDJdLFwiZGlzYWxsb3dlZFwiXSxbWzI3MDMsMjcwNV0sXCJ2YWxpZFwiXSxbWzI3MDYsMjcwNl0sXCJkaXNhbGxvd2VkXCJdLFtbMjcwNywyNzI4XSxcInZhbGlkXCJdLFtbMjcyOSwyNzI5XSxcImRpc2FsbG93ZWRcIl0sW1syNzMwLDI3MzZdLFwidmFsaWRcIl0sW1syNzM3LDI3MzddLFwiZGlzYWxsb3dlZFwiXSxbWzI3MzgsMjczOV0sXCJ2YWxpZFwiXSxbWzI3NDAsMjc0MF0sXCJkaXNhbGxvd2VkXCJdLFtbMjc0MSwyNzQ1XSxcInZhbGlkXCJdLFtbMjc0NiwyNzQ3XSxcImRpc2FsbG93ZWRcIl0sW1syNzQ4LDI3NTddLFwidmFsaWRcIl0sW1syNzU4LDI3NThdLFwiZGlzYWxsb3dlZFwiXSxbWzI3NTksMjc2MV0sXCJ2YWxpZFwiXSxbWzI3NjIsMjc2Ml0sXCJkaXNhbGxvd2VkXCJdLFtbMjc2MywyNzY1XSxcInZhbGlkXCJdLFtbMjc2NiwyNzY3XSxcImRpc2FsbG93ZWRcIl0sW1syNzY4LDI3NjhdLFwidmFsaWRcIl0sW1syNzY5LDI3ODNdLFwiZGlzYWxsb3dlZFwiXSxbWzI3ODQsMjc4NF0sXCJ2YWxpZFwiXSxbWzI3ODUsMjc4N10sXCJ2YWxpZFwiXSxbWzI3ODgsMjc4OV0sXCJkaXNhbGxvd2VkXCJdLFtbMjc5MCwyNzk5XSxcInZhbGlkXCJdLFtbMjgwMCwyODAwXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1syODAxLDI4MDFdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzI4MDIsMjgwOF0sXCJkaXNhbGxvd2VkXCJdLFtbMjgwOSwyODA5XSxcInZhbGlkXCJdLFtbMjgxMCwyODE2XSxcImRpc2FsbG93ZWRcIl0sW1syODE3LDI4MTldLFwidmFsaWRcIl0sW1syODIwLDI4MjBdLFwiZGlzYWxsb3dlZFwiXSxbWzI4MjEsMjgyOF0sXCJ2YWxpZFwiXSxbWzI4MjksMjgzMF0sXCJkaXNhbGxvd2VkXCJdLFtbMjgzMSwyODMyXSxcInZhbGlkXCJdLFtbMjgzMywyODM0XSxcImRpc2FsbG93ZWRcIl0sW1syODM1LDI4NTZdLFwidmFsaWRcIl0sW1syODU3LDI4NTddLFwiZGlzYWxsb3dlZFwiXSxbWzI4NTgsMjg2NF0sXCJ2YWxpZFwiXSxbWzI4NjUsMjg2NV0sXCJkaXNhbGxvd2VkXCJdLFtbMjg2NiwyODY3XSxcInZhbGlkXCJdLFtbMjg2OCwyODY4XSxcImRpc2FsbG93ZWRcIl0sW1syODY5LDI4NjldLFwidmFsaWRcIl0sW1syODcwLDI4NzNdLFwidmFsaWRcIl0sW1syODc0LDI4NzVdLFwiZGlzYWxsb3dlZFwiXSxbWzI4NzYsMjg4M10sXCJ2YWxpZFwiXSxbWzI4ODQsMjg4NF0sXCJ2YWxpZFwiXSxbWzI4ODUsMjg4Nl0sXCJkaXNhbGxvd2VkXCJdLFtbMjg4NywyODg4XSxcInZhbGlkXCJdLFtbMjg4OSwyODkwXSxcImRpc2FsbG93ZWRcIl0sW1syODkxLDI4OTNdLFwidmFsaWRcIl0sW1syODk0LDI5MDFdLFwiZGlzYWxsb3dlZFwiXSxbWzI5MDIsMjkwM10sXCJ2YWxpZFwiXSxbWzI5MDQsMjkwN10sXCJkaXNhbGxvd2VkXCJdLFtbMjkwOCwyOTA4XSxcIm1hcHBlZFwiLFsyODQ5LDI4NzZdXSxbWzI5MDksMjkwOV0sXCJtYXBwZWRcIixbMjg1MCwyODc2XV0sW1syOTEwLDI5MTBdLFwiZGlzYWxsb3dlZFwiXSxbWzI5MTEsMjkxM10sXCJ2YWxpZFwiXSxbWzI5MTQsMjkxNV0sXCJ2YWxpZFwiXSxbWzI5MTYsMjkxN10sXCJkaXNhbGxvd2VkXCJdLFtbMjkxOCwyOTI3XSxcInZhbGlkXCJdLFtbMjkyOCwyOTI4XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1syOTI5LDI5MjldLFwidmFsaWRcIl0sW1syOTMwLDI5MzVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzI5MzYsMjk0NV0sXCJkaXNhbGxvd2VkXCJdLFtbMjk0NiwyOTQ3XSxcInZhbGlkXCJdLFtbMjk0OCwyOTQ4XSxcImRpc2FsbG93ZWRcIl0sW1syOTQ5LDI5NTRdLFwidmFsaWRcIl0sW1syOTU1LDI5NTddLFwiZGlzYWxsb3dlZFwiXSxbWzI5NTgsMjk2MF0sXCJ2YWxpZFwiXSxbWzI5NjEsMjk2MV0sXCJkaXNhbGxvd2VkXCJdLFtbMjk2MiwyOTY1XSxcInZhbGlkXCJdLFtbMjk2NiwyOTY4XSxcImRpc2FsbG93ZWRcIl0sW1syOTY5LDI5NzBdLFwidmFsaWRcIl0sW1syOTcxLDI5NzFdLFwiZGlzYWxsb3dlZFwiXSxbWzI5NzIsMjk3Ml0sXCJ2YWxpZFwiXSxbWzI5NzMsMjk3M10sXCJkaXNhbGxvd2VkXCJdLFtbMjk3NCwyOTc1XSxcInZhbGlkXCJdLFtbMjk3NiwyOTc4XSxcImRpc2FsbG93ZWRcIl0sW1syOTc5LDI5ODBdLFwidmFsaWRcIl0sW1syOTgxLDI5ODNdLFwiZGlzYWxsb3dlZFwiXSxbWzI5ODQsMjk4Nl0sXCJ2YWxpZFwiXSxbWzI5ODcsMjk4OV0sXCJkaXNhbGxvd2VkXCJdLFtbMjk5MCwyOTk3XSxcInZhbGlkXCJdLFtbMjk5OCwyOTk4XSxcInZhbGlkXCJdLFtbMjk5OSwzMDAxXSxcInZhbGlkXCJdLFtbMzAwMiwzMDA1XSxcImRpc2FsbG93ZWRcIl0sW1szMDA2LDMwMTBdLFwidmFsaWRcIl0sW1szMDExLDMwMTNdLFwiZGlzYWxsb3dlZFwiXSxbWzMwMTQsMzAxNl0sXCJ2YWxpZFwiXSxbWzMwMTcsMzAxN10sXCJkaXNhbGxvd2VkXCJdLFtbMzAxOCwzMDIxXSxcInZhbGlkXCJdLFtbMzAyMiwzMDIzXSxcImRpc2FsbG93ZWRcIl0sW1szMDI0LDMwMjRdLFwidmFsaWRcIl0sW1szMDI1LDMwMzBdLFwiZGlzYWxsb3dlZFwiXSxbWzMwMzEsMzAzMV0sXCJ2YWxpZFwiXSxbWzMwMzIsMzA0NV0sXCJkaXNhbGxvd2VkXCJdLFtbMzA0NiwzMDQ2XSxcInZhbGlkXCJdLFtbMzA0NywzMDU1XSxcInZhbGlkXCJdLFtbMzA1NiwzMDU4XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1szMDU5LDMwNjZdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzMwNjcsMzA3MV0sXCJkaXNhbGxvd2VkXCJdLFtbMzA3MiwzMDcyXSxcInZhbGlkXCJdLFtbMzA3MywzMDc1XSxcInZhbGlkXCJdLFtbMzA3NiwzMDc2XSxcImRpc2FsbG93ZWRcIl0sW1szMDc3LDMwODRdLFwidmFsaWRcIl0sW1szMDg1LDMwODVdLFwiZGlzYWxsb3dlZFwiXSxbWzMwODYsMzA4OF0sXCJ2YWxpZFwiXSxbWzMwODksMzA4OV0sXCJkaXNhbGxvd2VkXCJdLFtbMzA5MCwzMTEyXSxcInZhbGlkXCJdLFtbMzExMywzMTEzXSxcImRpc2FsbG93ZWRcIl0sW1szMTE0LDMxMjNdLFwidmFsaWRcIl0sW1szMTI0LDMxMjRdLFwidmFsaWRcIl0sW1szMTI1LDMxMjldLFwidmFsaWRcIl0sW1szMTMwLDMxMzJdLFwiZGlzYWxsb3dlZFwiXSxbWzMxMzMsMzEzM10sXCJ2YWxpZFwiXSxbWzMxMzQsMzE0MF0sXCJ2YWxpZFwiXSxbWzMxNDEsMzE0MV0sXCJkaXNhbGxvd2VkXCJdLFtbMzE0MiwzMTQ0XSxcInZhbGlkXCJdLFtbMzE0NSwzMTQ1XSxcImRpc2FsbG93ZWRcIl0sW1szMTQ2LDMxNDldLFwidmFsaWRcIl0sW1szMTUwLDMxNTZdLFwiZGlzYWxsb3dlZFwiXSxbWzMxNTcsMzE1OF0sXCJ2YWxpZFwiXSxbWzMxNTksMzE1OV0sXCJkaXNhbGxvd2VkXCJdLFtbMzE2MCwzMTYxXSxcInZhbGlkXCJdLFtbMzE2MiwzMTYyXSxcInZhbGlkXCJdLFtbMzE2MywzMTY3XSxcImRpc2FsbG93ZWRcIl0sW1szMTY4LDMxNjldLFwidmFsaWRcIl0sW1szMTcwLDMxNzFdLFwidmFsaWRcIl0sW1szMTcyLDMxNzNdLFwiZGlzYWxsb3dlZFwiXSxbWzMxNzQsMzE4M10sXCJ2YWxpZFwiXSxbWzMxODQsMzE5MV0sXCJkaXNhbGxvd2VkXCJdLFtbMzE5MiwzMTk5XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1szMjAwLDMyMDBdLFwiZGlzYWxsb3dlZFwiXSxbWzMyMDEsMzIwMV0sXCJ2YWxpZFwiXSxbWzMyMDIsMzIwM10sXCJ2YWxpZFwiXSxbWzMyMDQsMzIwNF0sXCJkaXNhbGxvd2VkXCJdLFtbMzIwNSwzMjEyXSxcInZhbGlkXCJdLFtbMzIxMywzMjEzXSxcImRpc2FsbG93ZWRcIl0sW1szMjE0LDMyMTZdLFwidmFsaWRcIl0sW1szMjE3LDMyMTddLFwiZGlzYWxsb3dlZFwiXSxbWzMyMTgsMzI0MF0sXCJ2YWxpZFwiXSxbWzMyNDEsMzI0MV0sXCJkaXNhbGxvd2VkXCJdLFtbMzI0MiwzMjUxXSxcInZhbGlkXCJdLFtbMzI1MiwzMjUyXSxcImRpc2FsbG93ZWRcIl0sW1szMjUzLDMyNTddLFwidmFsaWRcIl0sW1szMjU4LDMyNTldLFwiZGlzYWxsb3dlZFwiXSxbWzMyNjAsMzI2MV0sXCJ2YWxpZFwiXSxbWzMyNjIsMzI2OF0sXCJ2YWxpZFwiXSxbWzMyNjksMzI2OV0sXCJkaXNhbGxvd2VkXCJdLFtbMzI3MCwzMjcyXSxcInZhbGlkXCJdLFtbMzI3MywzMjczXSxcImRpc2FsbG93ZWRcIl0sW1szMjc0LDMyNzddLFwidmFsaWRcIl0sW1szMjc4LDMyODRdLFwiZGlzYWxsb3dlZFwiXSxbWzMyODUsMzI4Nl0sXCJ2YWxpZFwiXSxbWzMyODcsMzI5M10sXCJkaXNhbGxvd2VkXCJdLFtbMzI5NCwzMjk0XSxcInZhbGlkXCJdLFtbMzI5NSwzMjk1XSxcImRpc2FsbG93ZWRcIl0sW1szMjk2LDMyOTddLFwidmFsaWRcIl0sW1szMjk4LDMyOTldLFwidmFsaWRcIl0sW1szMzAwLDMzMDFdLFwiZGlzYWxsb3dlZFwiXSxbWzMzMDIsMzMxMV0sXCJ2YWxpZFwiXSxbWzMzMTIsMzMxMl0sXCJkaXNhbGxvd2VkXCJdLFtbMzMxMywzMzE0XSxcInZhbGlkXCJdLFtbMzMxNSwzMzI4XSxcImRpc2FsbG93ZWRcIl0sW1szMzI5LDMzMjldLFwidmFsaWRcIl0sW1szMzMwLDMzMzFdLFwidmFsaWRcIl0sW1szMzMyLDMzMzJdLFwiZGlzYWxsb3dlZFwiXSxbWzMzMzMsMzM0MF0sXCJ2YWxpZFwiXSxbWzMzNDEsMzM0MV0sXCJkaXNhbGxvd2VkXCJdLFtbMzM0MiwzMzQ0XSxcInZhbGlkXCJdLFtbMzM0NSwzMzQ1XSxcImRpc2FsbG93ZWRcIl0sW1szMzQ2LDMzNjhdLFwidmFsaWRcIl0sW1szMzY5LDMzNjldLFwidmFsaWRcIl0sW1szMzcwLDMzODVdLFwidmFsaWRcIl0sW1szMzg2LDMzODZdLFwidmFsaWRcIl0sW1szMzg3LDMzODhdLFwiZGlzYWxsb3dlZFwiXSxbWzMzODksMzM4OV0sXCJ2YWxpZFwiXSxbWzMzOTAsMzM5NV0sXCJ2YWxpZFwiXSxbWzMzOTYsMzM5Nl0sXCJ2YWxpZFwiXSxbWzMzOTcsMzM5N10sXCJkaXNhbGxvd2VkXCJdLFtbMzM5OCwzNDAwXSxcInZhbGlkXCJdLFtbMzQwMSwzNDAxXSxcImRpc2FsbG93ZWRcIl0sW1szNDAyLDM0MDVdLFwidmFsaWRcIl0sW1szNDA2LDM0MDZdLFwidmFsaWRcIl0sW1szNDA3LDM0MTRdLFwiZGlzYWxsb3dlZFwiXSxbWzM0MTUsMzQxNV0sXCJ2YWxpZFwiXSxbWzM0MTYsMzQyMl0sXCJkaXNhbGxvd2VkXCJdLFtbMzQyMywzNDIzXSxcInZhbGlkXCJdLFtbMzQyNCwzNDI1XSxcInZhbGlkXCJdLFtbMzQyNiwzNDI3XSxcInZhbGlkXCJdLFtbMzQyOCwzNDI5XSxcImRpc2FsbG93ZWRcIl0sW1szNDMwLDM0MzldLFwidmFsaWRcIl0sW1szNDQwLDM0NDVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzM0NDYsMzQ0OF0sXCJkaXNhbGxvd2VkXCJdLFtbMzQ0OSwzNDQ5XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1szNDUwLDM0NTVdLFwidmFsaWRcIl0sW1szNDU2LDM0NTddLFwiZGlzYWxsb3dlZFwiXSxbWzM0NTgsMzQ1OV0sXCJ2YWxpZFwiXSxbWzM0NjAsMzQ2MF0sXCJkaXNhbGxvd2VkXCJdLFtbMzQ2MSwzNDc4XSxcInZhbGlkXCJdLFtbMzQ3OSwzNDgxXSxcImRpc2FsbG93ZWRcIl0sW1szNDgyLDM1MDVdLFwidmFsaWRcIl0sW1szNTA2LDM1MDZdLFwiZGlzYWxsb3dlZFwiXSxbWzM1MDcsMzUxNV0sXCJ2YWxpZFwiXSxbWzM1MTYsMzUxNl0sXCJkaXNhbGxvd2VkXCJdLFtbMzUxNywzNTE3XSxcInZhbGlkXCJdLFtbMzUxOCwzNTE5XSxcImRpc2FsbG93ZWRcIl0sW1szNTIwLDM1MjZdLFwidmFsaWRcIl0sW1szNTI3LDM1MjldLFwiZGlzYWxsb3dlZFwiXSxbWzM1MzAsMzUzMF0sXCJ2YWxpZFwiXSxbWzM1MzEsMzUzNF0sXCJkaXNhbGxvd2VkXCJdLFtbMzUzNSwzNTQwXSxcInZhbGlkXCJdLFtbMzU0MSwzNTQxXSxcImRpc2FsbG93ZWRcIl0sW1szNTQyLDM1NDJdLFwidmFsaWRcIl0sW1szNTQzLDM1NDNdLFwiZGlzYWxsb3dlZFwiXSxbWzM1NDQsMzU1MV0sXCJ2YWxpZFwiXSxbWzM1NTIsMzU1N10sXCJkaXNhbGxvd2VkXCJdLFtbMzU1OCwzNTY3XSxcInZhbGlkXCJdLFtbMzU2OCwzNTY5XSxcImRpc2FsbG93ZWRcIl0sW1szNTcwLDM1NzFdLFwidmFsaWRcIl0sW1szNTcyLDM1NzJdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzM1NzMsMzU4NF0sXCJkaXNhbGxvd2VkXCJdLFtbMzU4NSwzNjM0XSxcInZhbGlkXCJdLFtbMzYzNSwzNjM1XSxcIm1hcHBlZFwiLFszNjYxLDM2MzRdXSxbWzM2MzYsMzY0Ml0sXCJ2YWxpZFwiXSxbWzM2NDMsMzY0Nl0sXCJkaXNhbGxvd2VkXCJdLFtbMzY0NywzNjQ3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1szNjQ4LDM2NjJdLFwidmFsaWRcIl0sW1szNjYzLDM2NjNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzM2NjQsMzY3M10sXCJ2YWxpZFwiXSxbWzM2NzQsMzY3NV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMzY3NiwzNzEyXSxcImRpc2FsbG93ZWRcIl0sW1szNzEzLDM3MTRdLFwidmFsaWRcIl0sW1szNzE1LDM3MTVdLFwiZGlzYWxsb3dlZFwiXSxbWzM3MTYsMzcxNl0sXCJ2YWxpZFwiXSxbWzM3MTcsMzcxOF0sXCJkaXNhbGxvd2VkXCJdLFtbMzcxOSwzNzIwXSxcInZhbGlkXCJdLFtbMzcyMSwzNzIxXSxcImRpc2FsbG93ZWRcIl0sW1szNzIyLDM3MjJdLFwidmFsaWRcIl0sW1szNzIzLDM3MjRdLFwiZGlzYWxsb3dlZFwiXSxbWzM3MjUsMzcyNV0sXCJ2YWxpZFwiXSxbWzM3MjYsMzczMV0sXCJkaXNhbGxvd2VkXCJdLFtbMzczMiwzNzM1XSxcInZhbGlkXCJdLFtbMzczNiwzNzM2XSxcImRpc2FsbG93ZWRcIl0sW1szNzM3LDM3NDNdLFwidmFsaWRcIl0sW1szNzQ0LDM3NDRdLFwiZGlzYWxsb3dlZFwiXSxbWzM3NDUsMzc0N10sXCJ2YWxpZFwiXSxbWzM3NDgsMzc0OF0sXCJkaXNhbGxvd2VkXCJdLFtbMzc0OSwzNzQ5XSxcInZhbGlkXCJdLFtbMzc1MCwzNzUwXSxcImRpc2FsbG93ZWRcIl0sW1szNzUxLDM3NTFdLFwidmFsaWRcIl0sW1szNzUyLDM3NTNdLFwiZGlzYWxsb3dlZFwiXSxbWzM3NTQsMzc1NV0sXCJ2YWxpZFwiXSxbWzM3NTYsMzc1Nl0sXCJkaXNhbGxvd2VkXCJdLFtbMzc1NywzNzYyXSxcInZhbGlkXCJdLFtbMzc2MywzNzYzXSxcIm1hcHBlZFwiLFszNzg5LDM3NjJdXSxbWzM3NjQsMzc2OV0sXCJ2YWxpZFwiXSxbWzM3NzAsMzc3MF0sXCJkaXNhbGxvd2VkXCJdLFtbMzc3MSwzNzczXSxcInZhbGlkXCJdLFtbMzc3NCwzNzc1XSxcImRpc2FsbG93ZWRcIl0sW1szNzc2LDM3ODBdLFwidmFsaWRcIl0sW1szNzgxLDM3ODFdLFwiZGlzYWxsb3dlZFwiXSxbWzM3ODIsMzc4Ml0sXCJ2YWxpZFwiXSxbWzM3ODMsMzc4M10sXCJkaXNhbGxvd2VkXCJdLFtbMzc4NCwzNzg5XSxcInZhbGlkXCJdLFtbMzc5MCwzNzkxXSxcImRpc2FsbG93ZWRcIl0sW1szNzkyLDM4MDFdLFwidmFsaWRcIl0sW1szODAyLDM4MDNdLFwiZGlzYWxsb3dlZFwiXSxbWzM4MDQsMzgwNF0sXCJtYXBwZWRcIixbMzc1NSwzNzM3XV0sW1szODA1LDM4MDVdLFwibWFwcGVkXCIsWzM3NTUsMzc0NV1dLFtbMzgwNiwzODA3XSxcInZhbGlkXCJdLFtbMzgwOCwzODM5XSxcImRpc2FsbG93ZWRcIl0sW1szODQwLDM4NDBdLFwidmFsaWRcIl0sW1szODQxLDM4NTBdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzM4NTEsMzg1MV0sXCJ2YWxpZFwiXSxbWzM4NTIsMzg1Ml0sXCJtYXBwZWRcIixbMzg1MV1dLFtbMzg1MywzODYzXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1szODY0LDM4NjVdLFwidmFsaWRcIl0sW1szODY2LDM4NzFdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzM4NzIsMzg4MV0sXCJ2YWxpZFwiXSxbWzM4ODIsMzg5Ml0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMzg5MywzODkzXSxcInZhbGlkXCJdLFtbMzg5NCwzODk0XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1szODk1LDM4OTVdLFwidmFsaWRcIl0sW1szODk2LDM4OTZdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzM4OTcsMzg5N10sXCJ2YWxpZFwiXSxbWzM4OTgsMzkwMV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMzkwMiwzOTA2XSxcInZhbGlkXCJdLFtbMzkwNywzOTA3XSxcIm1hcHBlZFwiLFszOTA2LDQwMjNdXSxbWzM5MDgsMzkxMV0sXCJ2YWxpZFwiXSxbWzM5MTIsMzkxMl0sXCJkaXNhbGxvd2VkXCJdLFtbMzkxMywzOTE2XSxcInZhbGlkXCJdLFtbMzkxNywzOTE3XSxcIm1hcHBlZFwiLFszOTE2LDQwMjNdXSxbWzM5MTgsMzkyMV0sXCJ2YWxpZFwiXSxbWzM5MjIsMzkyMl0sXCJtYXBwZWRcIixbMzkyMSw0MDIzXV0sW1szOTIzLDM5MjZdLFwidmFsaWRcIl0sW1szOTI3LDM5MjddLFwibWFwcGVkXCIsWzM5MjYsNDAyM11dLFtbMzkyOCwzOTMxXSxcInZhbGlkXCJdLFtbMzkzMiwzOTMyXSxcIm1hcHBlZFwiLFszOTMxLDQwMjNdXSxbWzM5MzMsMzk0NF0sXCJ2YWxpZFwiXSxbWzM5NDUsMzk0NV0sXCJtYXBwZWRcIixbMzkwNCw0MDIxXV0sW1szOTQ2LDM5NDZdLFwidmFsaWRcIl0sW1szOTQ3LDM5NDhdLFwidmFsaWRcIl0sW1szOTQ5LDM5NTJdLFwiZGlzYWxsb3dlZFwiXSxbWzM5NTMsMzk1NF0sXCJ2YWxpZFwiXSxbWzM5NTUsMzk1NV0sXCJtYXBwZWRcIixbMzk1MywzOTU0XV0sW1szOTU2LDM5NTZdLFwidmFsaWRcIl0sW1szOTU3LDM5NTddLFwibWFwcGVkXCIsWzM5NTMsMzk1Nl1dLFtbMzk1OCwzOTU4XSxcIm1hcHBlZFwiLFs0MDE4LDM5NjhdXSxbWzM5NTksMzk1OV0sXCJtYXBwZWRcIixbNDAxOCwzOTUzLDM5NjhdXSxbWzM5NjAsMzk2MF0sXCJtYXBwZWRcIixbNDAxOSwzOTY4XV0sW1szOTYxLDM5NjFdLFwibWFwcGVkXCIsWzQwMTksMzk1MywzOTY4XV0sW1szOTYyLDM5NjhdLFwidmFsaWRcIl0sW1szOTY5LDM5NjldLFwibWFwcGVkXCIsWzM5NTMsMzk2OF1dLFtbMzk3MCwzOTcyXSxcInZhbGlkXCJdLFtbMzk3MywzOTczXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1szOTc0LDM5NzldLFwidmFsaWRcIl0sW1szOTgwLDM5ODNdLFwidmFsaWRcIl0sW1szOTg0LDM5ODZdLFwidmFsaWRcIl0sW1szOTg3LDM5ODddLFwibWFwcGVkXCIsWzM5ODYsNDAyM11dLFtbMzk4OCwzOTg5XSxcInZhbGlkXCJdLFtbMzk5MCwzOTkwXSxcInZhbGlkXCJdLFtbMzk5MSwzOTkxXSxcInZhbGlkXCJdLFtbMzk5MiwzOTkyXSxcImRpc2FsbG93ZWRcIl0sW1szOTkzLDM5OTZdLFwidmFsaWRcIl0sW1szOTk3LDM5OTddLFwibWFwcGVkXCIsWzM5OTYsNDAyM11dLFtbMzk5OCw0MDAxXSxcInZhbGlkXCJdLFtbNDAwMiw0MDAyXSxcIm1hcHBlZFwiLFs0MDAxLDQwMjNdXSxbWzQwMDMsNDAwNl0sXCJ2YWxpZFwiXSxbWzQwMDcsNDAwN10sXCJtYXBwZWRcIixbNDAwNiw0MDIzXV0sW1s0MDA4LDQwMTFdLFwidmFsaWRcIl0sW1s0MDEyLDQwMTJdLFwibWFwcGVkXCIsWzQwMTEsNDAyM11dLFtbNDAxMyw0MDEzXSxcInZhbGlkXCJdLFtbNDAxNCw0MDE2XSxcInZhbGlkXCJdLFtbNDAxNyw0MDIzXSxcInZhbGlkXCJdLFtbNDAyNCw0MDI0XSxcInZhbGlkXCJdLFtbNDAyNSw0MDI1XSxcIm1hcHBlZFwiLFszOTg0LDQwMjFdXSxbWzQwMjYsNDAyOF0sXCJ2YWxpZFwiXSxbWzQwMjksNDAyOV0sXCJkaXNhbGxvd2VkXCJdLFtbNDAzMCw0MDM3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s0MDM4LDQwMzhdLFwidmFsaWRcIl0sW1s0MDM5LDQwNDRdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzQwNDUsNDA0NV0sXCJkaXNhbGxvd2VkXCJdLFtbNDA0Niw0MDQ2XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s0MDQ3LDQwNDddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzQwNDgsNDA0OV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNDA1MCw0MDUyXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s0MDUzLDQwNTZdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzQwNTcsNDA1OF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNDA1OSw0MDk1XSxcImRpc2FsbG93ZWRcIl0sW1s0MDk2LDQxMjldLFwidmFsaWRcIl0sW1s0MTMwLDQxMzBdLFwidmFsaWRcIl0sW1s0MTMxLDQxMzVdLFwidmFsaWRcIl0sW1s0MTM2LDQxMzZdLFwidmFsaWRcIl0sW1s0MTM3LDQxMzhdLFwidmFsaWRcIl0sW1s0MTM5LDQxMzldLFwidmFsaWRcIl0sW1s0MTQwLDQxNDZdLFwidmFsaWRcIl0sW1s0MTQ3LDQxNDldLFwidmFsaWRcIl0sW1s0MTUwLDQxNTNdLFwidmFsaWRcIl0sW1s0MTU0LDQxNTldLFwidmFsaWRcIl0sW1s0MTYwLDQxNjldLFwidmFsaWRcIl0sW1s0MTcwLDQxNzVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzQxNzYsNDE4NV0sXCJ2YWxpZFwiXSxbWzQxODYsNDI0OV0sXCJ2YWxpZFwiXSxbWzQyNTAsNDI1M10sXCJ2YWxpZFwiXSxbWzQyNTQsNDI1NV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNDI1Niw0MjkzXSxcImRpc2FsbG93ZWRcIl0sW1s0Mjk0LDQyOTRdLFwiZGlzYWxsb3dlZFwiXSxbWzQyOTUsNDI5NV0sXCJtYXBwZWRcIixbMTE1NTldXSxbWzQyOTYsNDMwMF0sXCJkaXNhbGxvd2VkXCJdLFtbNDMwMSw0MzAxXSxcIm1hcHBlZFwiLFsxMTU2NV1dLFtbNDMwMiw0MzAzXSxcImRpc2FsbG93ZWRcIl0sW1s0MzA0LDQzNDJdLFwidmFsaWRcIl0sW1s0MzQzLDQzNDRdLFwidmFsaWRcIl0sW1s0MzQ1LDQzNDZdLFwidmFsaWRcIl0sW1s0MzQ3LDQzNDddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzQzNDgsNDM0OF0sXCJtYXBwZWRcIixbNDMxNl1dLFtbNDM0OSw0MzUxXSxcInZhbGlkXCJdLFtbNDM1Miw0NDQxXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s0NDQyLDQ0NDZdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzQ0NDcsNDQ0OF0sXCJkaXNhbGxvd2VkXCJdLFtbNDQ0OSw0NTE0XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s0NTE1LDQ1MTldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzQ1MjAsNDYwMV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNDYwMiw0NjA3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s0NjA4LDQ2MTRdLFwidmFsaWRcIl0sW1s0NjE1LDQ2MTVdLFwidmFsaWRcIl0sW1s0NjE2LDQ2NzhdLFwidmFsaWRcIl0sW1s0Njc5LDQ2NzldLFwidmFsaWRcIl0sW1s0NjgwLDQ2ODBdLFwidmFsaWRcIl0sW1s0NjgxLDQ2ODFdLFwiZGlzYWxsb3dlZFwiXSxbWzQ2ODIsNDY4NV0sXCJ2YWxpZFwiXSxbWzQ2ODYsNDY4N10sXCJkaXNhbGxvd2VkXCJdLFtbNDY4OCw0Njk0XSxcInZhbGlkXCJdLFtbNDY5NSw0Njk1XSxcImRpc2FsbG93ZWRcIl0sW1s0Njk2LDQ2OTZdLFwidmFsaWRcIl0sW1s0Njk3LDQ2OTddLFwiZGlzYWxsb3dlZFwiXSxbWzQ2OTgsNDcwMV0sXCJ2YWxpZFwiXSxbWzQ3MDIsNDcwM10sXCJkaXNhbGxvd2VkXCJdLFtbNDcwNCw0NzQyXSxcInZhbGlkXCJdLFtbNDc0Myw0NzQzXSxcInZhbGlkXCJdLFtbNDc0NCw0NzQ0XSxcInZhbGlkXCJdLFtbNDc0NSw0NzQ1XSxcImRpc2FsbG93ZWRcIl0sW1s0NzQ2LDQ3NDldLFwidmFsaWRcIl0sW1s0NzUwLDQ3NTFdLFwiZGlzYWxsb3dlZFwiXSxbWzQ3NTIsNDc4Ml0sXCJ2YWxpZFwiXSxbWzQ3ODMsNDc4M10sXCJ2YWxpZFwiXSxbWzQ3ODQsNDc4NF0sXCJ2YWxpZFwiXSxbWzQ3ODUsNDc4NV0sXCJkaXNhbGxvd2VkXCJdLFtbNDc4Niw0Nzg5XSxcInZhbGlkXCJdLFtbNDc5MCw0NzkxXSxcImRpc2FsbG93ZWRcIl0sW1s0NzkyLDQ3OThdLFwidmFsaWRcIl0sW1s0Nzk5LDQ3OTldLFwiZGlzYWxsb3dlZFwiXSxbWzQ4MDAsNDgwMF0sXCJ2YWxpZFwiXSxbWzQ4MDEsNDgwMV0sXCJkaXNhbGxvd2VkXCJdLFtbNDgwMiw0ODA1XSxcInZhbGlkXCJdLFtbNDgwNiw0ODA3XSxcImRpc2FsbG93ZWRcIl0sW1s0ODA4LDQ4MTRdLFwidmFsaWRcIl0sW1s0ODE1LDQ4MTVdLFwidmFsaWRcIl0sW1s0ODE2LDQ4MjJdLFwidmFsaWRcIl0sW1s0ODIzLDQ4MjNdLFwiZGlzYWxsb3dlZFwiXSxbWzQ4MjQsNDg0Nl0sXCJ2YWxpZFwiXSxbWzQ4NDcsNDg0N10sXCJ2YWxpZFwiXSxbWzQ4NDgsNDg3OF0sXCJ2YWxpZFwiXSxbWzQ4NzksNDg3OV0sXCJ2YWxpZFwiXSxbWzQ4ODAsNDg4MF0sXCJ2YWxpZFwiXSxbWzQ4ODEsNDg4MV0sXCJkaXNhbGxvd2VkXCJdLFtbNDg4Miw0ODg1XSxcInZhbGlkXCJdLFtbNDg4Niw0ODg3XSxcImRpc2FsbG93ZWRcIl0sW1s0ODg4LDQ4OTRdLFwidmFsaWRcIl0sW1s0ODk1LDQ4OTVdLFwidmFsaWRcIl0sW1s0ODk2LDQ5MzRdLFwidmFsaWRcIl0sW1s0OTM1LDQ5MzVdLFwidmFsaWRcIl0sW1s0OTM2LDQ5NTRdLFwidmFsaWRcIl0sW1s0OTU1LDQ5NTZdLFwiZGlzYWxsb3dlZFwiXSxbWzQ5NTcsNDk1OF0sXCJ2YWxpZFwiXSxbWzQ5NTksNDk1OV0sXCJ2YWxpZFwiXSxbWzQ5NjAsNDk2MF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNDk2MSw0OTg4XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s0OTg5LDQ5OTFdLFwiZGlzYWxsb3dlZFwiXSxbWzQ5OTIsNTAwN10sXCJ2YWxpZFwiXSxbWzUwMDgsNTAxN10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNTAxOCw1MDIzXSxcImRpc2FsbG93ZWRcIl0sW1s1MDI0LDUxMDhdLFwidmFsaWRcIl0sW1s1MTA5LDUxMDldLFwidmFsaWRcIl0sW1s1MTEwLDUxMTFdLFwiZGlzYWxsb3dlZFwiXSxbWzUxMTIsNTExMl0sXCJtYXBwZWRcIixbNTEwNF1dLFtbNTExMyw1MTEzXSxcIm1hcHBlZFwiLFs1MTA1XV0sW1s1MTE0LDUxMTRdLFwibWFwcGVkXCIsWzUxMDZdXSxbWzUxMTUsNTExNV0sXCJtYXBwZWRcIixbNTEwN11dLFtbNTExNiw1MTE2XSxcIm1hcHBlZFwiLFs1MTA4XV0sW1s1MTE3LDUxMTddLFwibWFwcGVkXCIsWzUxMDldXSxbWzUxMTgsNTExOV0sXCJkaXNhbGxvd2VkXCJdLFtbNTEyMCw1MTIwXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s1MTIxLDU3NDBdLFwidmFsaWRcIl0sW1s1NzQxLDU3NDJdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzU3NDMsNTc1MF0sXCJ2YWxpZFwiXSxbWzU3NTEsNTc1OV0sXCJ2YWxpZFwiXSxbWzU3NjAsNTc2MF0sXCJkaXNhbGxvd2VkXCJdLFtbNTc2MSw1Nzg2XSxcInZhbGlkXCJdLFtbNTc4Nyw1Nzg4XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s1Nzg5LDU3OTFdLFwiZGlzYWxsb3dlZFwiXSxbWzU3OTIsNTg2Nl0sXCJ2YWxpZFwiXSxbWzU4NjcsNTg3Ml0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNTg3Myw1ODgwXSxcInZhbGlkXCJdLFtbNTg4MSw1ODg3XSxcImRpc2FsbG93ZWRcIl0sW1s1ODg4LDU5MDBdLFwidmFsaWRcIl0sW1s1OTAxLDU5MDFdLFwiZGlzYWxsb3dlZFwiXSxbWzU5MDIsNTkwOF0sXCJ2YWxpZFwiXSxbWzU5MDksNTkxOV0sXCJkaXNhbGxvd2VkXCJdLFtbNTkyMCw1OTQwXSxcInZhbGlkXCJdLFtbNTk0MSw1OTQyXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s1OTQzLDU5NTFdLFwiZGlzYWxsb3dlZFwiXSxbWzU5NTIsNTk3MV0sXCJ2YWxpZFwiXSxbWzU5NzIsNTk4M10sXCJkaXNhbGxvd2VkXCJdLFtbNTk4NCw1OTk2XSxcInZhbGlkXCJdLFtbNTk5Nyw1OTk3XSxcImRpc2FsbG93ZWRcIl0sW1s1OTk4LDYwMDBdLFwidmFsaWRcIl0sW1s2MDAxLDYwMDFdLFwiZGlzYWxsb3dlZFwiXSxbWzYwMDIsNjAwM10sXCJ2YWxpZFwiXSxbWzYwMDQsNjAxNV0sXCJkaXNhbGxvd2VkXCJdLFtbNjAxNiw2MDY3XSxcInZhbGlkXCJdLFtbNjA2OCw2MDY5XSxcImRpc2FsbG93ZWRcIl0sW1s2MDcwLDYwOTldLFwidmFsaWRcIl0sW1s2MTAwLDYxMDJdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzYxMDMsNjEwM10sXCJ2YWxpZFwiXSxbWzYxMDQsNjEwN10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNjEwOCw2MTA4XSxcInZhbGlkXCJdLFtbNjEwOSw2MTA5XSxcInZhbGlkXCJdLFtbNjExMCw2MTExXSxcImRpc2FsbG93ZWRcIl0sW1s2MTEyLDYxMjFdLFwidmFsaWRcIl0sW1s2MTIyLDYxMjddLFwiZGlzYWxsb3dlZFwiXSxbWzYxMjgsNjEzN10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNjEzOCw2MTQzXSxcImRpc2FsbG93ZWRcIl0sW1s2MTQ0LDYxNDldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzYxNTAsNjE1MF0sXCJkaXNhbGxvd2VkXCJdLFtbNjE1MSw2MTU0XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s2MTU1LDYxNTddLFwiaWdub3JlZFwiXSxbWzYxNTgsNjE1OF0sXCJkaXNhbGxvd2VkXCJdLFtbNjE1OSw2MTU5XSxcImRpc2FsbG93ZWRcIl0sW1s2MTYwLDYxNjldLFwidmFsaWRcIl0sW1s2MTcwLDYxNzVdLFwiZGlzYWxsb3dlZFwiXSxbWzYxNzYsNjI2M10sXCJ2YWxpZFwiXSxbWzYyNjQsNjI3MV0sXCJkaXNhbGxvd2VkXCJdLFtbNjI3Miw2MzEzXSxcInZhbGlkXCJdLFtbNjMxNCw2MzE0XSxcInZhbGlkXCJdLFtbNjMxNSw2MzE5XSxcImRpc2FsbG93ZWRcIl0sW1s2MzIwLDYzODldLFwidmFsaWRcIl0sW1s2MzkwLDYzOTldLFwiZGlzYWxsb3dlZFwiXSxbWzY0MDAsNjQyOF0sXCJ2YWxpZFwiXSxbWzY0MjksNjQzMF0sXCJ2YWxpZFwiXSxbWzY0MzEsNjQzMV0sXCJkaXNhbGxvd2VkXCJdLFtbNjQzMiw2NDQzXSxcInZhbGlkXCJdLFtbNjQ0NCw2NDQ3XSxcImRpc2FsbG93ZWRcIl0sW1s2NDQ4LDY0NTldLFwidmFsaWRcIl0sW1s2NDYwLDY0NjNdLFwiZGlzYWxsb3dlZFwiXSxbWzY0NjQsNjQ2NF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNjQ2NSw2NDY3XSxcImRpc2FsbG93ZWRcIl0sW1s2NDY4LDY0NjldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzY0NzAsNjUwOV0sXCJ2YWxpZFwiXSxbWzY1MTAsNjUxMV0sXCJkaXNhbGxvd2VkXCJdLFtbNjUxMiw2NTE2XSxcInZhbGlkXCJdLFtbNjUxNyw2NTI3XSxcImRpc2FsbG93ZWRcIl0sW1s2NTI4LDY1NjldLFwidmFsaWRcIl0sW1s2NTcwLDY1NzFdLFwidmFsaWRcIl0sW1s2NTcyLDY1NzVdLFwiZGlzYWxsb3dlZFwiXSxbWzY1NzYsNjYwMV0sXCJ2YWxpZFwiXSxbWzY2MDIsNjYwN10sXCJkaXNhbGxvd2VkXCJdLFtbNjYwOCw2NjE3XSxcInZhbGlkXCJdLFtbNjYxOCw2NjE4XSxcInZhbGlkXCIsW10sXCJYVjhcIl0sW1s2NjE5LDY2MjFdLFwiZGlzYWxsb3dlZFwiXSxbWzY2MjIsNjYyM10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNjYyNCw2NjU1XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s2NjU2LDY2ODNdLFwidmFsaWRcIl0sW1s2Njg0LDY2ODVdLFwiZGlzYWxsb3dlZFwiXSxbWzY2ODYsNjY4N10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNjY4OCw2NzUwXSxcInZhbGlkXCJdLFtbNjc1MSw2NzUxXSxcImRpc2FsbG93ZWRcIl0sW1s2NzUyLDY3ODBdLFwidmFsaWRcIl0sW1s2NzgxLDY3ODJdLFwiZGlzYWxsb3dlZFwiXSxbWzY3ODMsNjc5M10sXCJ2YWxpZFwiXSxbWzY3OTQsNjc5OV0sXCJkaXNhbGxvd2VkXCJdLFtbNjgwMCw2ODA5XSxcInZhbGlkXCJdLFtbNjgxMCw2ODE1XSxcImRpc2FsbG93ZWRcIl0sW1s2ODE2LDY4MjJdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzY4MjMsNjgyM10sXCJ2YWxpZFwiXSxbWzY4MjQsNjgyOV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNjgzMCw2ODMxXSxcImRpc2FsbG93ZWRcIl0sW1s2ODMyLDY4NDVdLFwidmFsaWRcIl0sW1s2ODQ2LDY4NDZdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzY4NDcsNjkxMV0sXCJkaXNhbGxvd2VkXCJdLFtbNjkxMiw2OTg3XSxcInZhbGlkXCJdLFtbNjk4OCw2OTkxXSxcImRpc2FsbG93ZWRcIl0sW1s2OTkyLDcwMDFdLFwidmFsaWRcIl0sW1s3MDAyLDcwMThdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzcwMTksNzAyN10sXCJ2YWxpZFwiXSxbWzcwMjgsNzAzNl0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNzAzNyw3MDM5XSxcImRpc2FsbG93ZWRcIl0sW1s3MDQwLDcwODJdLFwidmFsaWRcIl0sW1s3MDgzLDcwODVdLFwidmFsaWRcIl0sW1s3MDg2LDcwOTddLFwidmFsaWRcIl0sW1s3MDk4LDcxMDNdLFwidmFsaWRcIl0sW1s3MTA0LDcxNTVdLFwidmFsaWRcIl0sW1s3MTU2LDcxNjNdLFwiZGlzYWxsb3dlZFwiXSxbWzcxNjQsNzE2N10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNzE2OCw3MjIzXSxcInZhbGlkXCJdLFtbNzIyNCw3MjI2XSxcImRpc2FsbG93ZWRcIl0sW1s3MjI3LDcyMzFdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzcyMzIsNzI0MV0sXCJ2YWxpZFwiXSxbWzcyNDIsNzI0NF0sXCJkaXNhbGxvd2VkXCJdLFtbNzI0NSw3MjkzXSxcInZhbGlkXCJdLFtbNzI5NCw3Mjk1XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s3Mjk2LDczNTldLFwiZGlzYWxsb3dlZFwiXSxbWzczNjAsNzM2N10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNzM2OCw3Mzc1XSxcImRpc2FsbG93ZWRcIl0sW1s3Mzc2LDczNzhdLFwidmFsaWRcIl0sW1s3Mzc5LDczNzldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzczODAsNzQxMF0sXCJ2YWxpZFwiXSxbWzc0MTEsNzQxNF0sXCJ2YWxpZFwiXSxbWzc0MTUsNzQxNV0sXCJkaXNhbGxvd2VkXCJdLFtbNzQxNiw3NDE3XSxcInZhbGlkXCJdLFtbNzQxOCw3NDIzXSxcImRpc2FsbG93ZWRcIl0sW1s3NDI0LDc0NjddLFwidmFsaWRcIl0sW1s3NDY4LDc0NjhdLFwibWFwcGVkXCIsWzk3XV0sW1s3NDY5LDc0NjldLFwibWFwcGVkXCIsWzIzMF1dLFtbNzQ3MCw3NDcwXSxcIm1hcHBlZFwiLFs5OF1dLFtbNzQ3MSw3NDcxXSxcInZhbGlkXCJdLFtbNzQ3Miw3NDcyXSxcIm1hcHBlZFwiLFsxMDBdXSxbWzc0NzMsNzQ3M10sXCJtYXBwZWRcIixbMTAxXV0sW1s3NDc0LDc0NzRdLFwibWFwcGVkXCIsWzQ3N11dLFtbNzQ3NSw3NDc1XSxcIm1hcHBlZFwiLFsxMDNdXSxbWzc0NzYsNzQ3Nl0sXCJtYXBwZWRcIixbMTA0XV0sW1s3NDc3LDc0NzddLFwibWFwcGVkXCIsWzEwNV1dLFtbNzQ3OCw3NDc4XSxcIm1hcHBlZFwiLFsxMDZdXSxbWzc0NzksNzQ3OV0sXCJtYXBwZWRcIixbMTA3XV0sW1s3NDgwLDc0ODBdLFwibWFwcGVkXCIsWzEwOF1dLFtbNzQ4MSw3NDgxXSxcIm1hcHBlZFwiLFsxMDldXSxbWzc0ODIsNzQ4Ml0sXCJtYXBwZWRcIixbMTEwXV0sW1s3NDgzLDc0ODNdLFwidmFsaWRcIl0sW1s3NDg0LDc0ODRdLFwibWFwcGVkXCIsWzExMV1dLFtbNzQ4NSw3NDg1XSxcIm1hcHBlZFwiLFs1NDddXSxbWzc0ODYsNzQ4Nl0sXCJtYXBwZWRcIixbMTEyXV0sW1s3NDg3LDc0ODddLFwibWFwcGVkXCIsWzExNF1dLFtbNzQ4OCw3NDg4XSxcIm1hcHBlZFwiLFsxMTZdXSxbWzc0ODksNzQ4OV0sXCJtYXBwZWRcIixbMTE3XV0sW1s3NDkwLDc0OTBdLFwibWFwcGVkXCIsWzExOV1dLFtbNzQ5MSw3NDkxXSxcIm1hcHBlZFwiLFs5N11dLFtbNzQ5Miw3NDkyXSxcIm1hcHBlZFwiLFs1OTJdXSxbWzc0OTMsNzQ5M10sXCJtYXBwZWRcIixbNTkzXV0sW1s3NDk0LDc0OTRdLFwibWFwcGVkXCIsWzc0MjZdXSxbWzc0OTUsNzQ5NV0sXCJtYXBwZWRcIixbOThdXSxbWzc0OTYsNzQ5Nl0sXCJtYXBwZWRcIixbMTAwXV0sW1s3NDk3LDc0OTddLFwibWFwcGVkXCIsWzEwMV1dLFtbNzQ5OCw3NDk4XSxcIm1hcHBlZFwiLFs2MDFdXSxbWzc0OTksNzQ5OV0sXCJtYXBwZWRcIixbNjAzXV0sW1s3NTAwLDc1MDBdLFwibWFwcGVkXCIsWzYwNF1dLFtbNzUwMSw3NTAxXSxcIm1hcHBlZFwiLFsxMDNdXSxbWzc1MDIsNzUwMl0sXCJ2YWxpZFwiXSxbWzc1MDMsNzUwM10sXCJtYXBwZWRcIixbMTA3XV0sW1s3NTA0LDc1MDRdLFwibWFwcGVkXCIsWzEwOV1dLFtbNzUwNSw3NTA1XSxcIm1hcHBlZFwiLFszMzFdXSxbWzc1MDYsNzUwNl0sXCJtYXBwZWRcIixbMTExXV0sW1s3NTA3LDc1MDddLFwibWFwcGVkXCIsWzU5Nl1dLFtbNzUwOCw3NTA4XSxcIm1hcHBlZFwiLFs3NDQ2XV0sW1s3NTA5LDc1MDldLFwibWFwcGVkXCIsWzc0NDddXSxbWzc1MTAsNzUxMF0sXCJtYXBwZWRcIixbMTEyXV0sW1s3NTExLDc1MTFdLFwibWFwcGVkXCIsWzExNl1dLFtbNzUxMiw3NTEyXSxcIm1hcHBlZFwiLFsxMTddXSxbWzc1MTMsNzUxM10sXCJtYXBwZWRcIixbNzQ1M11dLFtbNzUxNCw3NTE0XSxcIm1hcHBlZFwiLFs2MjNdXSxbWzc1MTUsNzUxNV0sXCJtYXBwZWRcIixbMTE4XV0sW1s3NTE2LDc1MTZdLFwibWFwcGVkXCIsWzc0NjFdXSxbWzc1MTcsNzUxN10sXCJtYXBwZWRcIixbOTQ2XV0sW1s3NTE4LDc1MThdLFwibWFwcGVkXCIsWzk0N11dLFtbNzUxOSw3NTE5XSxcIm1hcHBlZFwiLFs5NDhdXSxbWzc1MjAsNzUyMF0sXCJtYXBwZWRcIixbOTY2XV0sW1s3NTIxLDc1MjFdLFwibWFwcGVkXCIsWzk2N11dLFtbNzUyMiw3NTIyXSxcIm1hcHBlZFwiLFsxMDVdXSxbWzc1MjMsNzUyM10sXCJtYXBwZWRcIixbMTE0XV0sW1s3NTI0LDc1MjRdLFwibWFwcGVkXCIsWzExN11dLFtbNzUyNSw3NTI1XSxcIm1hcHBlZFwiLFsxMThdXSxbWzc1MjYsNzUyNl0sXCJtYXBwZWRcIixbOTQ2XV0sW1s3NTI3LDc1MjddLFwibWFwcGVkXCIsWzk0N11dLFtbNzUyOCw3NTI4XSxcIm1hcHBlZFwiLFs5NjFdXSxbWzc1MjksNzUyOV0sXCJtYXBwZWRcIixbOTY2XV0sW1s3NTMwLDc1MzBdLFwibWFwcGVkXCIsWzk2N11dLFtbNzUzMSw3NTMxXSxcInZhbGlkXCJdLFtbNzUzMiw3NTQzXSxcInZhbGlkXCJdLFtbNzU0NCw3NTQ0XSxcIm1hcHBlZFwiLFsxMDg1XV0sW1s3NTQ1LDc1NzhdLFwidmFsaWRcIl0sW1s3NTc5LDc1NzldLFwibWFwcGVkXCIsWzU5NF1dLFtbNzU4MCw3NTgwXSxcIm1hcHBlZFwiLFs5OV1dLFtbNzU4MSw3NTgxXSxcIm1hcHBlZFwiLFs1OTddXSxbWzc1ODIsNzU4Ml0sXCJtYXBwZWRcIixbMjQwXV0sW1s3NTgzLDc1ODNdLFwibWFwcGVkXCIsWzYwNF1dLFtbNzU4NCw3NTg0XSxcIm1hcHBlZFwiLFsxMDJdXSxbWzc1ODUsNzU4NV0sXCJtYXBwZWRcIixbNjA3XV0sW1s3NTg2LDc1ODZdLFwibWFwcGVkXCIsWzYwOV1dLFtbNzU4Nyw3NTg3XSxcIm1hcHBlZFwiLFs2MTNdXSxbWzc1ODgsNzU4OF0sXCJtYXBwZWRcIixbNjE2XV0sW1s3NTg5LDc1ODldLFwibWFwcGVkXCIsWzYxN11dLFtbNzU5MCw3NTkwXSxcIm1hcHBlZFwiLFs2MThdXSxbWzc1OTEsNzU5MV0sXCJtYXBwZWRcIixbNzU0N11dLFtbNzU5Miw3NTkyXSxcIm1hcHBlZFwiLFs2NjldXSxbWzc1OTMsNzU5M10sXCJtYXBwZWRcIixbNjIxXV0sW1s3NTk0LDc1OTRdLFwibWFwcGVkXCIsWzc1NTddXSxbWzc1OTUsNzU5NV0sXCJtYXBwZWRcIixbNjcxXV0sW1s3NTk2LDc1OTZdLFwibWFwcGVkXCIsWzYyNV1dLFtbNzU5Nyw3NTk3XSxcIm1hcHBlZFwiLFs2MjRdXSxbWzc1OTgsNzU5OF0sXCJtYXBwZWRcIixbNjI2XV0sW1s3NTk5LDc1OTldLFwibWFwcGVkXCIsWzYyN11dLFtbNzYwMCw3NjAwXSxcIm1hcHBlZFwiLFs2MjhdXSxbWzc2MDEsNzYwMV0sXCJtYXBwZWRcIixbNjI5XV0sW1s3NjAyLDc2MDJdLFwibWFwcGVkXCIsWzYzMl1dLFtbNzYwMyw3NjAzXSxcIm1hcHBlZFwiLFs2NDJdXSxbWzc2MDQsNzYwNF0sXCJtYXBwZWRcIixbNjQzXV0sW1s3NjA1LDc2MDVdLFwibWFwcGVkXCIsWzQyN11dLFtbNzYwNiw3NjA2XSxcIm1hcHBlZFwiLFs2NDldXSxbWzc2MDcsNzYwN10sXCJtYXBwZWRcIixbNjUwXV0sW1s3NjA4LDc2MDhdLFwibWFwcGVkXCIsWzc0NTJdXSxbWzc2MDksNzYwOV0sXCJtYXBwZWRcIixbNjUxXV0sW1s3NjEwLDc2MTBdLFwibWFwcGVkXCIsWzY1Ml1dLFtbNzYxMSw3NjExXSxcIm1hcHBlZFwiLFsxMjJdXSxbWzc2MTIsNzYxMl0sXCJtYXBwZWRcIixbNjU2XV0sW1s3NjEzLDc2MTNdLFwibWFwcGVkXCIsWzY1N11dLFtbNzYxNCw3NjE0XSxcIm1hcHBlZFwiLFs2NThdXSxbWzc2MTUsNzYxNV0sXCJtYXBwZWRcIixbOTUyXV0sW1s3NjE2LDc2MTldLFwidmFsaWRcIl0sW1s3NjIwLDc2MjZdLFwidmFsaWRcIl0sW1s3NjI3LDc2NTRdLFwidmFsaWRcIl0sW1s3NjU1LDc2NjldLFwidmFsaWRcIl0sW1s3NjcwLDc2NzVdLFwiZGlzYWxsb3dlZFwiXSxbWzc2NzYsNzY3Nl0sXCJ2YWxpZFwiXSxbWzc2NzcsNzY3N10sXCJ2YWxpZFwiXSxbWzc2NzgsNzY3OV0sXCJ2YWxpZFwiXSxbWzc2ODAsNzY4MF0sXCJtYXBwZWRcIixbNzY4MV1dLFtbNzY4MSw3NjgxXSxcInZhbGlkXCJdLFtbNzY4Miw3NjgyXSxcIm1hcHBlZFwiLFs3NjgzXV0sW1s3NjgzLDc2ODNdLFwidmFsaWRcIl0sW1s3Njg0LDc2ODRdLFwibWFwcGVkXCIsWzc2ODVdXSxbWzc2ODUsNzY4NV0sXCJ2YWxpZFwiXSxbWzc2ODYsNzY4Nl0sXCJtYXBwZWRcIixbNzY4N11dLFtbNzY4Nyw3Njg3XSxcInZhbGlkXCJdLFtbNzY4OCw3Njg4XSxcIm1hcHBlZFwiLFs3Njg5XV0sW1s3Njg5LDc2ODldLFwidmFsaWRcIl0sW1s3NjkwLDc2OTBdLFwibWFwcGVkXCIsWzc2OTFdXSxbWzc2OTEsNzY5MV0sXCJ2YWxpZFwiXSxbWzc2OTIsNzY5Ml0sXCJtYXBwZWRcIixbNzY5M11dLFtbNzY5Myw3NjkzXSxcInZhbGlkXCJdLFtbNzY5NCw3Njk0XSxcIm1hcHBlZFwiLFs3Njk1XV0sW1s3Njk1LDc2OTVdLFwidmFsaWRcIl0sW1s3Njk2LDc2OTZdLFwibWFwcGVkXCIsWzc2OTddXSxbWzc2OTcsNzY5N10sXCJ2YWxpZFwiXSxbWzc2OTgsNzY5OF0sXCJtYXBwZWRcIixbNzY5OV1dLFtbNzY5OSw3Njk5XSxcInZhbGlkXCJdLFtbNzcwMCw3NzAwXSxcIm1hcHBlZFwiLFs3NzAxXV0sW1s3NzAxLDc3MDFdLFwidmFsaWRcIl0sW1s3NzAyLDc3MDJdLFwibWFwcGVkXCIsWzc3MDNdXSxbWzc3MDMsNzcwM10sXCJ2YWxpZFwiXSxbWzc3MDQsNzcwNF0sXCJtYXBwZWRcIixbNzcwNV1dLFtbNzcwNSw3NzA1XSxcInZhbGlkXCJdLFtbNzcwNiw3NzA2XSxcIm1hcHBlZFwiLFs3NzA3XV0sW1s3NzA3LDc3MDddLFwidmFsaWRcIl0sW1s3NzA4LDc3MDhdLFwibWFwcGVkXCIsWzc3MDldXSxbWzc3MDksNzcwOV0sXCJ2YWxpZFwiXSxbWzc3MTAsNzcxMF0sXCJtYXBwZWRcIixbNzcxMV1dLFtbNzcxMSw3NzExXSxcInZhbGlkXCJdLFtbNzcxMiw3NzEyXSxcIm1hcHBlZFwiLFs3NzEzXV0sW1s3NzEzLDc3MTNdLFwidmFsaWRcIl0sW1s3NzE0LDc3MTRdLFwibWFwcGVkXCIsWzc3MTVdXSxbWzc3MTUsNzcxNV0sXCJ2YWxpZFwiXSxbWzc3MTYsNzcxNl0sXCJtYXBwZWRcIixbNzcxN11dLFtbNzcxNyw3NzE3XSxcInZhbGlkXCJdLFtbNzcxOCw3NzE4XSxcIm1hcHBlZFwiLFs3NzE5XV0sW1s3NzE5LDc3MTldLFwidmFsaWRcIl0sW1s3NzIwLDc3MjBdLFwibWFwcGVkXCIsWzc3MjFdXSxbWzc3MjEsNzcyMV0sXCJ2YWxpZFwiXSxbWzc3MjIsNzcyMl0sXCJtYXBwZWRcIixbNzcyM11dLFtbNzcyMyw3NzIzXSxcInZhbGlkXCJdLFtbNzcyNCw3NzI0XSxcIm1hcHBlZFwiLFs3NzI1XV0sW1s3NzI1LDc3MjVdLFwidmFsaWRcIl0sW1s3NzI2LDc3MjZdLFwibWFwcGVkXCIsWzc3MjddXSxbWzc3MjcsNzcyN10sXCJ2YWxpZFwiXSxbWzc3MjgsNzcyOF0sXCJtYXBwZWRcIixbNzcyOV1dLFtbNzcyOSw3NzI5XSxcInZhbGlkXCJdLFtbNzczMCw3NzMwXSxcIm1hcHBlZFwiLFs3NzMxXV0sW1s3NzMxLDc3MzFdLFwidmFsaWRcIl0sW1s3NzMyLDc3MzJdLFwibWFwcGVkXCIsWzc3MzNdXSxbWzc3MzMsNzczM10sXCJ2YWxpZFwiXSxbWzc3MzQsNzczNF0sXCJtYXBwZWRcIixbNzczNV1dLFtbNzczNSw3NzM1XSxcInZhbGlkXCJdLFtbNzczNiw3NzM2XSxcIm1hcHBlZFwiLFs3NzM3XV0sW1s3NzM3LDc3MzddLFwidmFsaWRcIl0sW1s3NzM4LDc3MzhdLFwibWFwcGVkXCIsWzc3MzldXSxbWzc3MzksNzczOV0sXCJ2YWxpZFwiXSxbWzc3NDAsNzc0MF0sXCJtYXBwZWRcIixbNzc0MV1dLFtbNzc0MSw3NzQxXSxcInZhbGlkXCJdLFtbNzc0Miw3NzQyXSxcIm1hcHBlZFwiLFs3NzQzXV0sW1s3NzQzLDc3NDNdLFwidmFsaWRcIl0sW1s3NzQ0LDc3NDRdLFwibWFwcGVkXCIsWzc3NDVdXSxbWzc3NDUsNzc0NV0sXCJ2YWxpZFwiXSxbWzc3NDYsNzc0Nl0sXCJtYXBwZWRcIixbNzc0N11dLFtbNzc0Nyw3NzQ3XSxcInZhbGlkXCJdLFtbNzc0OCw3NzQ4XSxcIm1hcHBlZFwiLFs3NzQ5XV0sW1s3NzQ5LDc3NDldLFwidmFsaWRcIl0sW1s3NzUwLDc3NTBdLFwibWFwcGVkXCIsWzc3NTFdXSxbWzc3NTEsNzc1MV0sXCJ2YWxpZFwiXSxbWzc3NTIsNzc1Ml0sXCJtYXBwZWRcIixbNzc1M11dLFtbNzc1Myw3NzUzXSxcInZhbGlkXCJdLFtbNzc1NCw3NzU0XSxcIm1hcHBlZFwiLFs3NzU1XV0sW1s3NzU1LDc3NTVdLFwidmFsaWRcIl0sW1s3NzU2LDc3NTZdLFwibWFwcGVkXCIsWzc3NTddXSxbWzc3NTcsNzc1N10sXCJ2YWxpZFwiXSxbWzc3NTgsNzc1OF0sXCJtYXBwZWRcIixbNzc1OV1dLFtbNzc1OSw3NzU5XSxcInZhbGlkXCJdLFtbNzc2MCw3NzYwXSxcIm1hcHBlZFwiLFs3NzYxXV0sW1s3NzYxLDc3NjFdLFwidmFsaWRcIl0sW1s3NzYyLDc3NjJdLFwibWFwcGVkXCIsWzc3NjNdXSxbWzc3NjMsNzc2M10sXCJ2YWxpZFwiXSxbWzc3NjQsNzc2NF0sXCJtYXBwZWRcIixbNzc2NV1dLFtbNzc2NSw3NzY1XSxcInZhbGlkXCJdLFtbNzc2Niw3NzY2XSxcIm1hcHBlZFwiLFs3NzY3XV0sW1s3NzY3LDc3NjddLFwidmFsaWRcIl0sW1s3NzY4LDc3NjhdLFwibWFwcGVkXCIsWzc3NjldXSxbWzc3NjksNzc2OV0sXCJ2YWxpZFwiXSxbWzc3NzAsNzc3MF0sXCJtYXBwZWRcIixbNzc3MV1dLFtbNzc3MSw3NzcxXSxcInZhbGlkXCJdLFtbNzc3Miw3NzcyXSxcIm1hcHBlZFwiLFs3NzczXV0sW1s3NzczLDc3NzNdLFwidmFsaWRcIl0sW1s3Nzc0LDc3NzRdLFwibWFwcGVkXCIsWzc3NzVdXSxbWzc3NzUsNzc3NV0sXCJ2YWxpZFwiXSxbWzc3NzYsNzc3Nl0sXCJtYXBwZWRcIixbNzc3N11dLFtbNzc3Nyw3Nzc3XSxcInZhbGlkXCJdLFtbNzc3OCw3Nzc4XSxcIm1hcHBlZFwiLFs3Nzc5XV0sW1s3Nzc5LDc3NzldLFwidmFsaWRcIl0sW1s3NzgwLDc3ODBdLFwibWFwcGVkXCIsWzc3ODFdXSxbWzc3ODEsNzc4MV0sXCJ2YWxpZFwiXSxbWzc3ODIsNzc4Ml0sXCJtYXBwZWRcIixbNzc4M11dLFtbNzc4Myw3NzgzXSxcInZhbGlkXCJdLFtbNzc4NCw3Nzg0XSxcIm1hcHBlZFwiLFs3Nzg1XV0sW1s3Nzg1LDc3ODVdLFwidmFsaWRcIl0sW1s3Nzg2LDc3ODZdLFwibWFwcGVkXCIsWzc3ODddXSxbWzc3ODcsNzc4N10sXCJ2YWxpZFwiXSxbWzc3ODgsNzc4OF0sXCJtYXBwZWRcIixbNzc4OV1dLFtbNzc4OSw3Nzg5XSxcInZhbGlkXCJdLFtbNzc5MCw3NzkwXSxcIm1hcHBlZFwiLFs3NzkxXV0sW1s3NzkxLDc3OTFdLFwidmFsaWRcIl0sW1s3NzkyLDc3OTJdLFwibWFwcGVkXCIsWzc3OTNdXSxbWzc3OTMsNzc5M10sXCJ2YWxpZFwiXSxbWzc3OTQsNzc5NF0sXCJtYXBwZWRcIixbNzc5NV1dLFtbNzc5NSw3Nzk1XSxcInZhbGlkXCJdLFtbNzc5Niw3Nzk2XSxcIm1hcHBlZFwiLFs3Nzk3XV0sW1s3Nzk3LDc3OTddLFwidmFsaWRcIl0sW1s3Nzk4LDc3OThdLFwibWFwcGVkXCIsWzc3OTldXSxbWzc3OTksNzc5OV0sXCJ2YWxpZFwiXSxbWzc4MDAsNzgwMF0sXCJtYXBwZWRcIixbNzgwMV1dLFtbNzgwMSw3ODAxXSxcInZhbGlkXCJdLFtbNzgwMiw3ODAyXSxcIm1hcHBlZFwiLFs3ODAzXV0sW1s3ODAzLDc4MDNdLFwidmFsaWRcIl0sW1s3ODA0LDc4MDRdLFwibWFwcGVkXCIsWzc4MDVdXSxbWzc4MDUsNzgwNV0sXCJ2YWxpZFwiXSxbWzc4MDYsNzgwNl0sXCJtYXBwZWRcIixbNzgwN11dLFtbNzgwNyw3ODA3XSxcInZhbGlkXCJdLFtbNzgwOCw3ODA4XSxcIm1hcHBlZFwiLFs3ODA5XV0sW1s3ODA5LDc4MDldLFwidmFsaWRcIl0sW1s3ODEwLDc4MTBdLFwibWFwcGVkXCIsWzc4MTFdXSxbWzc4MTEsNzgxMV0sXCJ2YWxpZFwiXSxbWzc4MTIsNzgxMl0sXCJtYXBwZWRcIixbNzgxM11dLFtbNzgxMyw3ODEzXSxcInZhbGlkXCJdLFtbNzgxNCw3ODE0XSxcIm1hcHBlZFwiLFs3ODE1XV0sW1s3ODE1LDc4MTVdLFwidmFsaWRcIl0sW1s3ODE2LDc4MTZdLFwibWFwcGVkXCIsWzc4MTddXSxbWzc4MTcsNzgxN10sXCJ2YWxpZFwiXSxbWzc4MTgsNzgxOF0sXCJtYXBwZWRcIixbNzgxOV1dLFtbNzgxOSw3ODE5XSxcInZhbGlkXCJdLFtbNzgyMCw3ODIwXSxcIm1hcHBlZFwiLFs3ODIxXV0sW1s3ODIxLDc4MjFdLFwidmFsaWRcIl0sW1s3ODIyLDc4MjJdLFwibWFwcGVkXCIsWzc4MjNdXSxbWzc4MjMsNzgyM10sXCJ2YWxpZFwiXSxbWzc4MjQsNzgyNF0sXCJtYXBwZWRcIixbNzgyNV1dLFtbNzgyNSw3ODI1XSxcInZhbGlkXCJdLFtbNzgyNiw3ODI2XSxcIm1hcHBlZFwiLFs3ODI3XV0sW1s3ODI3LDc4MjddLFwidmFsaWRcIl0sW1s3ODI4LDc4MjhdLFwibWFwcGVkXCIsWzc4MjldXSxbWzc4MjksNzgzM10sXCJ2YWxpZFwiXSxbWzc4MzQsNzgzNF0sXCJtYXBwZWRcIixbOTcsNzAyXV0sW1s3ODM1LDc4MzVdLFwibWFwcGVkXCIsWzc3NzddXSxbWzc4MzYsNzgzN10sXCJ2YWxpZFwiXSxbWzc4MzgsNzgzOF0sXCJtYXBwZWRcIixbMTE1LDExNV1dLFtbNzgzOSw3ODM5XSxcInZhbGlkXCJdLFtbNzg0MCw3ODQwXSxcIm1hcHBlZFwiLFs3ODQxXV0sW1s3ODQxLDc4NDFdLFwidmFsaWRcIl0sW1s3ODQyLDc4NDJdLFwibWFwcGVkXCIsWzc4NDNdXSxbWzc4NDMsNzg0M10sXCJ2YWxpZFwiXSxbWzc4NDQsNzg0NF0sXCJtYXBwZWRcIixbNzg0NV1dLFtbNzg0NSw3ODQ1XSxcInZhbGlkXCJdLFtbNzg0Niw3ODQ2XSxcIm1hcHBlZFwiLFs3ODQ3XV0sW1s3ODQ3LDc4NDddLFwidmFsaWRcIl0sW1s3ODQ4LDc4NDhdLFwibWFwcGVkXCIsWzc4NDldXSxbWzc4NDksNzg0OV0sXCJ2YWxpZFwiXSxbWzc4NTAsNzg1MF0sXCJtYXBwZWRcIixbNzg1MV1dLFtbNzg1MSw3ODUxXSxcInZhbGlkXCJdLFtbNzg1Miw3ODUyXSxcIm1hcHBlZFwiLFs3ODUzXV0sW1s3ODUzLDc4NTNdLFwidmFsaWRcIl0sW1s3ODU0LDc4NTRdLFwibWFwcGVkXCIsWzc4NTVdXSxbWzc4NTUsNzg1NV0sXCJ2YWxpZFwiXSxbWzc4NTYsNzg1Nl0sXCJtYXBwZWRcIixbNzg1N11dLFtbNzg1Nyw3ODU3XSxcInZhbGlkXCJdLFtbNzg1OCw3ODU4XSxcIm1hcHBlZFwiLFs3ODU5XV0sW1s3ODU5LDc4NTldLFwidmFsaWRcIl0sW1s3ODYwLDc4NjBdLFwibWFwcGVkXCIsWzc4NjFdXSxbWzc4NjEsNzg2MV0sXCJ2YWxpZFwiXSxbWzc4NjIsNzg2Ml0sXCJtYXBwZWRcIixbNzg2M11dLFtbNzg2Myw3ODYzXSxcInZhbGlkXCJdLFtbNzg2NCw3ODY0XSxcIm1hcHBlZFwiLFs3ODY1XV0sW1s3ODY1LDc4NjVdLFwidmFsaWRcIl0sW1s3ODY2LDc4NjZdLFwibWFwcGVkXCIsWzc4NjddXSxbWzc4NjcsNzg2N10sXCJ2YWxpZFwiXSxbWzc4NjgsNzg2OF0sXCJtYXBwZWRcIixbNzg2OV1dLFtbNzg2OSw3ODY5XSxcInZhbGlkXCJdLFtbNzg3MCw3ODcwXSxcIm1hcHBlZFwiLFs3ODcxXV0sW1s3ODcxLDc4NzFdLFwidmFsaWRcIl0sW1s3ODcyLDc4NzJdLFwibWFwcGVkXCIsWzc4NzNdXSxbWzc4NzMsNzg3M10sXCJ2YWxpZFwiXSxbWzc4NzQsNzg3NF0sXCJtYXBwZWRcIixbNzg3NV1dLFtbNzg3NSw3ODc1XSxcInZhbGlkXCJdLFtbNzg3Niw3ODc2XSxcIm1hcHBlZFwiLFs3ODc3XV0sW1s3ODc3LDc4NzddLFwidmFsaWRcIl0sW1s3ODc4LDc4NzhdLFwibWFwcGVkXCIsWzc4NzldXSxbWzc4NzksNzg3OV0sXCJ2YWxpZFwiXSxbWzc4ODAsNzg4MF0sXCJtYXBwZWRcIixbNzg4MV1dLFtbNzg4MSw3ODgxXSxcInZhbGlkXCJdLFtbNzg4Miw3ODgyXSxcIm1hcHBlZFwiLFs3ODgzXV0sW1s3ODgzLDc4ODNdLFwidmFsaWRcIl0sW1s3ODg0LDc4ODRdLFwibWFwcGVkXCIsWzc4ODVdXSxbWzc4ODUsNzg4NV0sXCJ2YWxpZFwiXSxbWzc4ODYsNzg4Nl0sXCJtYXBwZWRcIixbNzg4N11dLFtbNzg4Nyw3ODg3XSxcInZhbGlkXCJdLFtbNzg4OCw3ODg4XSxcIm1hcHBlZFwiLFs3ODg5XV0sW1s3ODg5LDc4ODldLFwidmFsaWRcIl0sW1s3ODkwLDc4OTBdLFwibWFwcGVkXCIsWzc4OTFdXSxbWzc4OTEsNzg5MV0sXCJ2YWxpZFwiXSxbWzc4OTIsNzg5Ml0sXCJtYXBwZWRcIixbNzg5M11dLFtbNzg5Myw3ODkzXSxcInZhbGlkXCJdLFtbNzg5NCw3ODk0XSxcIm1hcHBlZFwiLFs3ODk1XV0sW1s3ODk1LDc4OTVdLFwidmFsaWRcIl0sW1s3ODk2LDc4OTZdLFwibWFwcGVkXCIsWzc4OTddXSxbWzc4OTcsNzg5N10sXCJ2YWxpZFwiXSxbWzc4OTgsNzg5OF0sXCJtYXBwZWRcIixbNzg5OV1dLFtbNzg5OSw3ODk5XSxcInZhbGlkXCJdLFtbNzkwMCw3OTAwXSxcIm1hcHBlZFwiLFs3OTAxXV0sW1s3OTAxLDc5MDFdLFwidmFsaWRcIl0sW1s3OTAyLDc5MDJdLFwibWFwcGVkXCIsWzc5MDNdXSxbWzc5MDMsNzkwM10sXCJ2YWxpZFwiXSxbWzc5MDQsNzkwNF0sXCJtYXBwZWRcIixbNzkwNV1dLFtbNzkwNSw3OTA1XSxcInZhbGlkXCJdLFtbNzkwNiw3OTA2XSxcIm1hcHBlZFwiLFs3OTA3XV0sW1s3OTA3LDc5MDddLFwidmFsaWRcIl0sW1s3OTA4LDc5MDhdLFwibWFwcGVkXCIsWzc5MDldXSxbWzc5MDksNzkwOV0sXCJ2YWxpZFwiXSxbWzc5MTAsNzkxMF0sXCJtYXBwZWRcIixbNzkxMV1dLFtbNzkxMSw3OTExXSxcInZhbGlkXCJdLFtbNzkxMiw3OTEyXSxcIm1hcHBlZFwiLFs3OTEzXV0sW1s3OTEzLDc5MTNdLFwidmFsaWRcIl0sW1s3OTE0LDc5MTRdLFwibWFwcGVkXCIsWzc5MTVdXSxbWzc5MTUsNzkxNV0sXCJ2YWxpZFwiXSxbWzc5MTYsNzkxNl0sXCJtYXBwZWRcIixbNzkxN11dLFtbNzkxNyw3OTE3XSxcInZhbGlkXCJdLFtbNzkxOCw3OTE4XSxcIm1hcHBlZFwiLFs3OTE5XV0sW1s3OTE5LDc5MTldLFwidmFsaWRcIl0sW1s3OTIwLDc5MjBdLFwibWFwcGVkXCIsWzc5MjFdXSxbWzc5MjEsNzkyMV0sXCJ2YWxpZFwiXSxbWzc5MjIsNzkyMl0sXCJtYXBwZWRcIixbNzkyM11dLFtbNzkyMyw3OTIzXSxcInZhbGlkXCJdLFtbNzkyNCw3OTI0XSxcIm1hcHBlZFwiLFs3OTI1XV0sW1s3OTI1LDc5MjVdLFwidmFsaWRcIl0sW1s3OTI2LDc5MjZdLFwibWFwcGVkXCIsWzc5MjddXSxbWzc5MjcsNzkyN10sXCJ2YWxpZFwiXSxbWzc5MjgsNzkyOF0sXCJtYXBwZWRcIixbNzkyOV1dLFtbNzkyOSw3OTI5XSxcInZhbGlkXCJdLFtbNzkzMCw3OTMwXSxcIm1hcHBlZFwiLFs3OTMxXV0sW1s3OTMxLDc5MzFdLFwidmFsaWRcIl0sW1s3OTMyLDc5MzJdLFwibWFwcGVkXCIsWzc5MzNdXSxbWzc5MzMsNzkzM10sXCJ2YWxpZFwiXSxbWzc5MzQsNzkzNF0sXCJtYXBwZWRcIixbNzkzNV1dLFtbNzkzNSw3OTM1XSxcInZhbGlkXCJdLFtbNzkzNiw3OTQzXSxcInZhbGlkXCJdLFtbNzk0NCw3OTQ0XSxcIm1hcHBlZFwiLFs3OTM2XV0sW1s3OTQ1LDc5NDVdLFwibWFwcGVkXCIsWzc5MzddXSxbWzc5NDYsNzk0Nl0sXCJtYXBwZWRcIixbNzkzOF1dLFtbNzk0Nyw3OTQ3XSxcIm1hcHBlZFwiLFs3OTM5XV0sW1s3OTQ4LDc5NDhdLFwibWFwcGVkXCIsWzc5NDBdXSxbWzc5NDksNzk0OV0sXCJtYXBwZWRcIixbNzk0MV1dLFtbNzk1MCw3OTUwXSxcIm1hcHBlZFwiLFs3OTQyXV0sW1s3OTUxLDc5NTFdLFwibWFwcGVkXCIsWzc5NDNdXSxbWzc5NTIsNzk1N10sXCJ2YWxpZFwiXSxbWzc5NTgsNzk1OV0sXCJkaXNhbGxvd2VkXCJdLFtbNzk2MCw3OTYwXSxcIm1hcHBlZFwiLFs3OTUyXV0sW1s3OTYxLDc5NjFdLFwibWFwcGVkXCIsWzc5NTNdXSxbWzc5NjIsNzk2Ml0sXCJtYXBwZWRcIixbNzk1NF1dLFtbNzk2Myw3OTYzXSxcIm1hcHBlZFwiLFs3OTU1XV0sW1s3OTY0LDc5NjRdLFwibWFwcGVkXCIsWzc5NTZdXSxbWzc5NjUsNzk2NV0sXCJtYXBwZWRcIixbNzk1N11dLFtbNzk2Niw3OTY3XSxcImRpc2FsbG93ZWRcIl0sW1s3OTY4LDc5NzVdLFwidmFsaWRcIl0sW1s3OTc2LDc5NzZdLFwibWFwcGVkXCIsWzc5NjhdXSxbWzc5NzcsNzk3N10sXCJtYXBwZWRcIixbNzk2OV1dLFtbNzk3OCw3OTc4XSxcIm1hcHBlZFwiLFs3OTcwXV0sW1s3OTc5LDc5NzldLFwibWFwcGVkXCIsWzc5NzFdXSxbWzc5ODAsNzk4MF0sXCJtYXBwZWRcIixbNzk3Ml1dLFtbNzk4MSw3OTgxXSxcIm1hcHBlZFwiLFs3OTczXV0sW1s3OTgyLDc5ODJdLFwibWFwcGVkXCIsWzc5NzRdXSxbWzc5ODMsNzk4M10sXCJtYXBwZWRcIixbNzk3NV1dLFtbNzk4NCw3OTkxXSxcInZhbGlkXCJdLFtbNzk5Miw3OTkyXSxcIm1hcHBlZFwiLFs3OTg0XV0sW1s3OTkzLDc5OTNdLFwibWFwcGVkXCIsWzc5ODVdXSxbWzc5OTQsNzk5NF0sXCJtYXBwZWRcIixbNzk4Nl1dLFtbNzk5NSw3OTk1XSxcIm1hcHBlZFwiLFs3OTg3XV0sW1s3OTk2LDc5OTZdLFwibWFwcGVkXCIsWzc5ODhdXSxbWzc5OTcsNzk5N10sXCJtYXBwZWRcIixbNzk4OV1dLFtbNzk5OCw3OTk4XSxcIm1hcHBlZFwiLFs3OTkwXV0sW1s3OTk5LDc5OTldLFwibWFwcGVkXCIsWzc5OTFdXSxbWzgwMDAsODAwNV0sXCJ2YWxpZFwiXSxbWzgwMDYsODAwN10sXCJkaXNhbGxvd2VkXCJdLFtbODAwOCw4MDA4XSxcIm1hcHBlZFwiLFs4MDAwXV0sW1s4MDA5LDgwMDldLFwibWFwcGVkXCIsWzgwMDFdXSxbWzgwMTAsODAxMF0sXCJtYXBwZWRcIixbODAwMl1dLFtbODAxMSw4MDExXSxcIm1hcHBlZFwiLFs4MDAzXV0sW1s4MDEyLDgwMTJdLFwibWFwcGVkXCIsWzgwMDRdXSxbWzgwMTMsODAxM10sXCJtYXBwZWRcIixbODAwNV1dLFtbODAxNCw4MDE1XSxcImRpc2FsbG93ZWRcIl0sW1s4MDE2LDgwMjNdLFwidmFsaWRcIl0sW1s4MDI0LDgwMjRdLFwiZGlzYWxsb3dlZFwiXSxbWzgwMjUsODAyNV0sXCJtYXBwZWRcIixbODAxN11dLFtbODAyNiw4MDI2XSxcImRpc2FsbG93ZWRcIl0sW1s4MDI3LDgwMjddLFwibWFwcGVkXCIsWzgwMTldXSxbWzgwMjgsODAyOF0sXCJkaXNhbGxvd2VkXCJdLFtbODAyOSw4MDI5XSxcIm1hcHBlZFwiLFs4MDIxXV0sW1s4MDMwLDgwMzBdLFwiZGlzYWxsb3dlZFwiXSxbWzgwMzEsODAzMV0sXCJtYXBwZWRcIixbODAyM11dLFtbODAzMiw4MDM5XSxcInZhbGlkXCJdLFtbODA0MCw4MDQwXSxcIm1hcHBlZFwiLFs4MDMyXV0sW1s4MDQxLDgwNDFdLFwibWFwcGVkXCIsWzgwMzNdXSxbWzgwNDIsODA0Ml0sXCJtYXBwZWRcIixbODAzNF1dLFtbODA0Myw4MDQzXSxcIm1hcHBlZFwiLFs4MDM1XV0sW1s4MDQ0LDgwNDRdLFwibWFwcGVkXCIsWzgwMzZdXSxbWzgwNDUsODA0NV0sXCJtYXBwZWRcIixbODAzN11dLFtbODA0Niw4MDQ2XSxcIm1hcHBlZFwiLFs4MDM4XV0sW1s4MDQ3LDgwNDddLFwibWFwcGVkXCIsWzgwMzldXSxbWzgwNDgsODA0OF0sXCJ2YWxpZFwiXSxbWzgwNDksODA0OV0sXCJtYXBwZWRcIixbOTQwXV0sW1s4MDUwLDgwNTBdLFwidmFsaWRcIl0sW1s4MDUxLDgwNTFdLFwibWFwcGVkXCIsWzk0MV1dLFtbODA1Miw4MDUyXSxcInZhbGlkXCJdLFtbODA1Myw4MDUzXSxcIm1hcHBlZFwiLFs5NDJdXSxbWzgwNTQsODA1NF0sXCJ2YWxpZFwiXSxbWzgwNTUsODA1NV0sXCJtYXBwZWRcIixbOTQzXV0sW1s4MDU2LDgwNTZdLFwidmFsaWRcIl0sW1s4MDU3LDgwNTddLFwibWFwcGVkXCIsWzk3Ml1dLFtbODA1OCw4MDU4XSxcInZhbGlkXCJdLFtbODA1OSw4MDU5XSxcIm1hcHBlZFwiLFs5NzNdXSxbWzgwNjAsODA2MF0sXCJ2YWxpZFwiXSxbWzgwNjEsODA2MV0sXCJtYXBwZWRcIixbOTc0XV0sW1s4MDYyLDgwNjNdLFwiZGlzYWxsb3dlZFwiXSxbWzgwNjQsODA2NF0sXCJtYXBwZWRcIixbNzkzNiw5NTNdXSxbWzgwNjUsODA2NV0sXCJtYXBwZWRcIixbNzkzNyw5NTNdXSxbWzgwNjYsODA2Nl0sXCJtYXBwZWRcIixbNzkzOCw5NTNdXSxbWzgwNjcsODA2N10sXCJtYXBwZWRcIixbNzkzOSw5NTNdXSxbWzgwNjgsODA2OF0sXCJtYXBwZWRcIixbNzk0MCw5NTNdXSxbWzgwNjksODA2OV0sXCJtYXBwZWRcIixbNzk0MSw5NTNdXSxbWzgwNzAsODA3MF0sXCJtYXBwZWRcIixbNzk0Miw5NTNdXSxbWzgwNzEsODA3MV0sXCJtYXBwZWRcIixbNzk0Myw5NTNdXSxbWzgwNzIsODA3Ml0sXCJtYXBwZWRcIixbNzkzNiw5NTNdXSxbWzgwNzMsODA3M10sXCJtYXBwZWRcIixbNzkzNyw5NTNdXSxbWzgwNzQsODA3NF0sXCJtYXBwZWRcIixbNzkzOCw5NTNdXSxbWzgwNzUsODA3NV0sXCJtYXBwZWRcIixbNzkzOSw5NTNdXSxbWzgwNzYsODA3Nl0sXCJtYXBwZWRcIixbNzk0MCw5NTNdXSxbWzgwNzcsODA3N10sXCJtYXBwZWRcIixbNzk0MSw5NTNdXSxbWzgwNzgsODA3OF0sXCJtYXBwZWRcIixbNzk0Miw5NTNdXSxbWzgwNzksODA3OV0sXCJtYXBwZWRcIixbNzk0Myw5NTNdXSxbWzgwODAsODA4MF0sXCJtYXBwZWRcIixbNzk2OCw5NTNdXSxbWzgwODEsODA4MV0sXCJtYXBwZWRcIixbNzk2OSw5NTNdXSxbWzgwODIsODA4Ml0sXCJtYXBwZWRcIixbNzk3MCw5NTNdXSxbWzgwODMsODA4M10sXCJtYXBwZWRcIixbNzk3MSw5NTNdXSxbWzgwODQsODA4NF0sXCJtYXBwZWRcIixbNzk3Miw5NTNdXSxbWzgwODUsODA4NV0sXCJtYXBwZWRcIixbNzk3Myw5NTNdXSxbWzgwODYsODA4Nl0sXCJtYXBwZWRcIixbNzk3NCw5NTNdXSxbWzgwODcsODA4N10sXCJtYXBwZWRcIixbNzk3NSw5NTNdXSxbWzgwODgsODA4OF0sXCJtYXBwZWRcIixbNzk2OCw5NTNdXSxbWzgwODksODA4OV0sXCJtYXBwZWRcIixbNzk2OSw5NTNdXSxbWzgwOTAsODA5MF0sXCJtYXBwZWRcIixbNzk3MCw5NTNdXSxbWzgwOTEsODA5MV0sXCJtYXBwZWRcIixbNzk3MSw5NTNdXSxbWzgwOTIsODA5Ml0sXCJtYXBwZWRcIixbNzk3Miw5NTNdXSxbWzgwOTMsODA5M10sXCJtYXBwZWRcIixbNzk3Myw5NTNdXSxbWzgwOTQsODA5NF0sXCJtYXBwZWRcIixbNzk3NCw5NTNdXSxbWzgwOTUsODA5NV0sXCJtYXBwZWRcIixbNzk3NSw5NTNdXSxbWzgwOTYsODA5Nl0sXCJtYXBwZWRcIixbODAzMiw5NTNdXSxbWzgwOTcsODA5N10sXCJtYXBwZWRcIixbODAzMyw5NTNdXSxbWzgwOTgsODA5OF0sXCJtYXBwZWRcIixbODAzNCw5NTNdXSxbWzgwOTksODA5OV0sXCJtYXBwZWRcIixbODAzNSw5NTNdXSxbWzgxMDAsODEwMF0sXCJtYXBwZWRcIixbODAzNiw5NTNdXSxbWzgxMDEsODEwMV0sXCJtYXBwZWRcIixbODAzNyw5NTNdXSxbWzgxMDIsODEwMl0sXCJtYXBwZWRcIixbODAzOCw5NTNdXSxbWzgxMDMsODEwM10sXCJtYXBwZWRcIixbODAzOSw5NTNdXSxbWzgxMDQsODEwNF0sXCJtYXBwZWRcIixbODAzMiw5NTNdXSxbWzgxMDUsODEwNV0sXCJtYXBwZWRcIixbODAzMyw5NTNdXSxbWzgxMDYsODEwNl0sXCJtYXBwZWRcIixbODAzNCw5NTNdXSxbWzgxMDcsODEwN10sXCJtYXBwZWRcIixbODAzNSw5NTNdXSxbWzgxMDgsODEwOF0sXCJtYXBwZWRcIixbODAzNiw5NTNdXSxbWzgxMDksODEwOV0sXCJtYXBwZWRcIixbODAzNyw5NTNdXSxbWzgxMTAsODExMF0sXCJtYXBwZWRcIixbODAzOCw5NTNdXSxbWzgxMTEsODExMV0sXCJtYXBwZWRcIixbODAzOSw5NTNdXSxbWzgxMTIsODExM10sXCJ2YWxpZFwiXSxbWzgxMTQsODExNF0sXCJtYXBwZWRcIixbODA0OCw5NTNdXSxbWzgxMTUsODExNV0sXCJtYXBwZWRcIixbOTQ1LDk1M11dLFtbODExNiw4MTE2XSxcIm1hcHBlZFwiLFs5NDAsOTUzXV0sW1s4MTE3LDgxMTddLFwiZGlzYWxsb3dlZFwiXSxbWzgxMTgsODExOF0sXCJ2YWxpZFwiXSxbWzgxMTksODExOV0sXCJtYXBwZWRcIixbODExOCw5NTNdXSxbWzgxMjAsODEyMF0sXCJtYXBwZWRcIixbODExMl1dLFtbODEyMSw4MTIxXSxcIm1hcHBlZFwiLFs4MTEzXV0sW1s4MTIyLDgxMjJdLFwibWFwcGVkXCIsWzgwNDhdXSxbWzgxMjMsODEyM10sXCJtYXBwZWRcIixbOTQwXV0sW1s4MTI0LDgxMjRdLFwibWFwcGVkXCIsWzk0NSw5NTNdXSxbWzgxMjUsODEyNV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzMyLDc4N11dLFtbODEyNiw4MTI2XSxcIm1hcHBlZFwiLFs5NTNdXSxbWzgxMjcsODEyN10sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzMyLDc4N11dLFtbODEyOCw4MTI4XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbMzIsODM0XV0sW1s4MTI5LDgxMjldLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFszMiw3NzYsODM0XV0sW1s4MTMwLDgxMzBdLFwibWFwcGVkXCIsWzgwNTIsOTUzXV0sW1s4MTMxLDgxMzFdLFwibWFwcGVkXCIsWzk1MSw5NTNdXSxbWzgxMzIsODEzMl0sXCJtYXBwZWRcIixbOTQyLDk1M11dLFtbODEzMyw4MTMzXSxcImRpc2FsbG93ZWRcIl0sW1s4MTM0LDgxMzRdLFwidmFsaWRcIl0sW1s4MTM1LDgxMzVdLFwibWFwcGVkXCIsWzgxMzQsOTUzXV0sW1s4MTM2LDgxMzZdLFwibWFwcGVkXCIsWzgwNTBdXSxbWzgxMzcsODEzN10sXCJtYXBwZWRcIixbOTQxXV0sW1s4MTM4LDgxMzhdLFwibWFwcGVkXCIsWzgwNTJdXSxbWzgxMzksODEzOV0sXCJtYXBwZWRcIixbOTQyXV0sW1s4MTQwLDgxNDBdLFwibWFwcGVkXCIsWzk1MSw5NTNdXSxbWzgxNDEsODE0MV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzMyLDc4Nyw3NjhdXSxbWzgxNDIsODE0Ml0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzMyLDc4Nyw3NjldXSxbWzgxNDMsODE0M10sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzMyLDc4Nyw4MzRdXSxbWzgxNDQsODE0Nl0sXCJ2YWxpZFwiXSxbWzgxNDcsODE0N10sXCJtYXBwZWRcIixbOTEyXV0sW1s4MTQ4LDgxNDldLFwiZGlzYWxsb3dlZFwiXSxbWzgxNTAsODE1MV0sXCJ2YWxpZFwiXSxbWzgxNTIsODE1Ml0sXCJtYXBwZWRcIixbODE0NF1dLFtbODE1Myw4MTUzXSxcIm1hcHBlZFwiLFs4MTQ1XV0sW1s4MTU0LDgxNTRdLFwibWFwcGVkXCIsWzgwNTRdXSxbWzgxNTUsODE1NV0sXCJtYXBwZWRcIixbOTQzXV0sW1s4MTU2LDgxNTZdLFwiZGlzYWxsb3dlZFwiXSxbWzgxNTcsODE1N10sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzMyLDc4OCw3NjhdXSxbWzgxNTgsODE1OF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzMyLDc4OCw3NjldXSxbWzgxNTksODE1OV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzMyLDc4OCw4MzRdXSxbWzgxNjAsODE2Ml0sXCJ2YWxpZFwiXSxbWzgxNjMsODE2M10sXCJtYXBwZWRcIixbOTQ0XV0sW1s4MTY0LDgxNjddLFwidmFsaWRcIl0sW1s4MTY4LDgxNjhdLFwibWFwcGVkXCIsWzgxNjBdXSxbWzgxNjksODE2OV0sXCJtYXBwZWRcIixbODE2MV1dLFtbODE3MCw4MTcwXSxcIm1hcHBlZFwiLFs4MDU4XV0sW1s4MTcxLDgxNzFdLFwibWFwcGVkXCIsWzk3M11dLFtbODE3Miw4MTcyXSxcIm1hcHBlZFwiLFs4MTY1XV0sW1s4MTczLDgxNzNdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFszMiw3NzYsNzY4XV0sW1s4MTc0LDgxNzRdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFszMiw3NzYsNzY5XV0sW1s4MTc1LDgxNzVdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs5Nl1dLFtbODE3Niw4MTc3XSxcImRpc2FsbG93ZWRcIl0sW1s4MTc4LDgxNzhdLFwibWFwcGVkXCIsWzgwNjAsOTUzXV0sW1s4MTc5LDgxNzldLFwibWFwcGVkXCIsWzk2OSw5NTNdXSxbWzgxODAsODE4MF0sXCJtYXBwZWRcIixbOTc0LDk1M11dLFtbODE4MSw4MTgxXSxcImRpc2FsbG93ZWRcIl0sW1s4MTgyLDgxODJdLFwidmFsaWRcIl0sW1s4MTgzLDgxODNdLFwibWFwcGVkXCIsWzgxODIsOTUzXV0sW1s4MTg0LDgxODRdLFwibWFwcGVkXCIsWzgwNTZdXSxbWzgxODUsODE4NV0sXCJtYXBwZWRcIixbOTcyXV0sW1s4MTg2LDgxODZdLFwibWFwcGVkXCIsWzgwNjBdXSxbWzgxODcsODE4N10sXCJtYXBwZWRcIixbOTc0XV0sW1s4MTg4LDgxODhdLFwibWFwcGVkXCIsWzk2OSw5NTNdXSxbWzgxODksODE4OV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzMyLDc2OV1dLFtbODE5MCw4MTkwXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbMzIsNzg4XV0sW1s4MTkxLDgxOTFdLFwiZGlzYWxsb3dlZFwiXSxbWzgxOTIsODIwMl0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzMyXV0sW1s4MjAzLDgyMDNdLFwiaWdub3JlZFwiXSxbWzgyMDQsODIwNV0sXCJkZXZpYXRpb25cIixbXV0sW1s4MjA2LDgyMDddLFwiZGlzYWxsb3dlZFwiXSxbWzgyMDgsODIwOF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbODIwOSw4MjA5XSxcIm1hcHBlZFwiLFs4MjA4XV0sW1s4MjEwLDgyMTRdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzgyMTUsODIxNV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzMyLDgxOV1dLFtbODIxNiw4MjI3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4MjI4LDgyMzBdLFwiZGlzYWxsb3dlZFwiXSxbWzgyMzEsODIzMV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbODIzMiw4MjM4XSxcImRpc2FsbG93ZWRcIl0sW1s4MjM5LDgyMzldLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFszMl1dLFtbODI0MCw4MjQyXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4MjQzLDgyNDNdLFwibWFwcGVkXCIsWzgyNDIsODI0Ml1dLFtbODI0NCw4MjQ0XSxcIm1hcHBlZFwiLFs4MjQyLDgyNDIsODI0Ml1dLFtbODI0NSw4MjQ1XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4MjQ2LDgyNDZdLFwibWFwcGVkXCIsWzgyNDUsODI0NV1dLFtbODI0Nyw4MjQ3XSxcIm1hcHBlZFwiLFs4MjQ1LDgyNDUsODI0NV1dLFtbODI0OCw4MjUxXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4MjUyLDgyNTJdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFszMywzM11dLFtbODI1Myw4MjUzXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4MjU0LDgyNTRdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFszMiw3NzNdXSxbWzgyNTUsODI2Ml0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbODI2Myw4MjYzXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNjMsNjNdXSxbWzgyNjQsODI2NF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzYzLDMzXV0sW1s4MjY1LDgyNjVdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFszMyw2M11dLFtbODI2Niw4MjY5XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4MjcwLDgyNzRdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzgyNzUsODI3Nl0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbODI3Nyw4Mjc4XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4Mjc5LDgyNzldLFwibWFwcGVkXCIsWzgyNDIsODI0Miw4MjQyLDgyNDJdXSxbWzgyODAsODI4Nl0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbODI4Nyw4Mjg3XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbMzJdXSxbWzgyODgsODI4OF0sXCJpZ25vcmVkXCJdLFtbODI4OSw4MjkxXSxcImRpc2FsbG93ZWRcIl0sW1s4MjkyLDgyOTJdLFwiaWdub3JlZFwiXSxbWzgyOTMsODI5M10sXCJkaXNhbGxvd2VkXCJdLFtbODI5NCw4Mjk3XSxcImRpc2FsbG93ZWRcIl0sW1s4Mjk4LDgzMDNdLFwiZGlzYWxsb3dlZFwiXSxbWzgzMDQsODMwNF0sXCJtYXBwZWRcIixbNDhdXSxbWzgzMDUsODMwNV0sXCJtYXBwZWRcIixbMTA1XV0sW1s4MzA2LDgzMDddLFwiZGlzYWxsb3dlZFwiXSxbWzgzMDgsODMwOF0sXCJtYXBwZWRcIixbNTJdXSxbWzgzMDksODMwOV0sXCJtYXBwZWRcIixbNTNdXSxbWzgzMTAsODMxMF0sXCJtYXBwZWRcIixbNTRdXSxbWzgzMTEsODMxMV0sXCJtYXBwZWRcIixbNTVdXSxbWzgzMTIsODMxMl0sXCJtYXBwZWRcIixbNTZdXSxbWzgzMTMsODMxM10sXCJtYXBwZWRcIixbNTddXSxbWzgzMTQsODMxNF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQzXV0sW1s4MzE1LDgzMTVdLFwibWFwcGVkXCIsWzg3MjJdXSxbWzgzMTYsODMxNl0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzYxXV0sW1s4MzE3LDgzMTddLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MF1dLFtbODMxOCw4MzE4XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNDFdXSxbWzgzMTksODMxOV0sXCJtYXBwZWRcIixbMTEwXV0sW1s4MzIwLDgzMjBdLFwibWFwcGVkXCIsWzQ4XV0sW1s4MzIxLDgzMjFdLFwibWFwcGVkXCIsWzQ5XV0sW1s4MzIyLDgzMjJdLFwibWFwcGVkXCIsWzUwXV0sW1s4MzIzLDgzMjNdLFwibWFwcGVkXCIsWzUxXV0sW1s4MzI0LDgzMjRdLFwibWFwcGVkXCIsWzUyXV0sW1s4MzI1LDgzMjVdLFwibWFwcGVkXCIsWzUzXV0sW1s4MzI2LDgzMjZdLFwibWFwcGVkXCIsWzU0XV0sW1s4MzI3LDgzMjddLFwibWFwcGVkXCIsWzU1XV0sW1s4MzI4LDgzMjhdLFwibWFwcGVkXCIsWzU2XV0sW1s4MzI5LDgzMjldLFwibWFwcGVkXCIsWzU3XV0sW1s4MzMwLDgzMzBdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0M11dLFtbODMzMSw4MzMxXSxcIm1hcHBlZFwiLFs4NzIyXV0sW1s4MzMyLDgzMzJdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs2MV1dLFtbODMzMyw4MzMzXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNDBdXSxbWzgzMzQsODMzNF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQxXV0sW1s4MzM1LDgzMzVdLFwiZGlzYWxsb3dlZFwiXSxbWzgzMzYsODMzNl0sXCJtYXBwZWRcIixbOTddXSxbWzgzMzcsODMzN10sXCJtYXBwZWRcIixbMTAxXV0sW1s4MzM4LDgzMzhdLFwibWFwcGVkXCIsWzExMV1dLFtbODMzOSw4MzM5XSxcIm1hcHBlZFwiLFsxMjBdXSxbWzgzNDAsODM0MF0sXCJtYXBwZWRcIixbNjAxXV0sW1s4MzQxLDgzNDFdLFwibWFwcGVkXCIsWzEwNF1dLFtbODM0Miw4MzQyXSxcIm1hcHBlZFwiLFsxMDddXSxbWzgzNDMsODM0M10sXCJtYXBwZWRcIixbMTA4XV0sW1s4MzQ0LDgzNDRdLFwibWFwcGVkXCIsWzEwOV1dLFtbODM0NSw4MzQ1XSxcIm1hcHBlZFwiLFsxMTBdXSxbWzgzNDYsODM0Nl0sXCJtYXBwZWRcIixbMTEyXV0sW1s4MzQ3LDgzNDddLFwibWFwcGVkXCIsWzExNV1dLFtbODM0OCw4MzQ4XSxcIm1hcHBlZFwiLFsxMTZdXSxbWzgzNDksODM1MV0sXCJkaXNhbGxvd2VkXCJdLFtbODM1Miw4MzU5XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4MzYwLDgzNjBdLFwibWFwcGVkXCIsWzExNCwxMTVdXSxbWzgzNjEsODM2Ml0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbODM2Myw4MzYzXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4MzY0LDgzNjRdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzgzNjUsODM2N10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbODM2OCw4MzY5XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4MzcwLDgzNzNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzgzNzQsODM3Nl0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbODM3Nyw4Mzc3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4Mzc4LDgzNzhdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzgzNzksODM4MV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbODM4Miw4MzgyXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4MzgzLDgzOTldLFwiZGlzYWxsb3dlZFwiXSxbWzg0MDAsODQxN10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbODQxOCw4NDE5XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4NDIwLDg0MjZdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzg0MjcsODQyN10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbODQyOCw4NDMxXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4NDMyLDg0MzJdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzg0MzMsODQ0N10sXCJkaXNhbGxvd2VkXCJdLFtbODQ0OCw4NDQ4XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbOTcsNDcsOTldXSxbWzg0NDksODQ0OV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzk3LDQ3LDExNV1dLFtbODQ1MCw4NDUwXSxcIm1hcHBlZFwiLFs5OV1dLFtbODQ1MSw4NDUxXSxcIm1hcHBlZFwiLFsxNzYsOTldXSxbWzg0NTIsODQ1Ml0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbODQ1Myw4NDUzXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbOTksNDcsMTExXV0sW1s4NDU0LDg0NTRdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs5OSw0NywxMTddXSxbWzg0NTUsODQ1NV0sXCJtYXBwZWRcIixbNjAzXV0sW1s4NDU2LDg0NTZdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzg0NTcsODQ1N10sXCJtYXBwZWRcIixbMTc2LDEwMl1dLFtbODQ1OCw4NDU4XSxcIm1hcHBlZFwiLFsxMDNdXSxbWzg0NTksODQ2Ml0sXCJtYXBwZWRcIixbMTA0XV0sW1s4NDYzLDg0NjNdLFwibWFwcGVkXCIsWzI5NV1dLFtbODQ2NCw4NDY1XSxcIm1hcHBlZFwiLFsxMDVdXSxbWzg0NjYsODQ2N10sXCJtYXBwZWRcIixbMTA4XV0sW1s4NDY4LDg0NjhdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzg0NjksODQ2OV0sXCJtYXBwZWRcIixbMTEwXV0sW1s4NDcwLDg0NzBdLFwibWFwcGVkXCIsWzExMCwxMTFdXSxbWzg0NzEsODQ3Ml0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbODQ3Myw4NDczXSxcIm1hcHBlZFwiLFsxMTJdXSxbWzg0NzQsODQ3NF0sXCJtYXBwZWRcIixbMTEzXV0sW1s4NDc1LDg0NzddLFwibWFwcGVkXCIsWzExNF1dLFtbODQ3OCw4NDc5XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4NDgwLDg0ODBdLFwibWFwcGVkXCIsWzExNSwxMDldXSxbWzg0ODEsODQ4MV0sXCJtYXBwZWRcIixbMTE2LDEwMSwxMDhdXSxbWzg0ODIsODQ4Ml0sXCJtYXBwZWRcIixbMTE2LDEwOV1dLFtbODQ4Myw4NDgzXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4NDg0LDg0ODRdLFwibWFwcGVkXCIsWzEyMl1dLFtbODQ4NSw4NDg1XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4NDg2LDg0ODZdLFwibWFwcGVkXCIsWzk2OV1dLFtbODQ4Nyw4NDg3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4NDg4LDg0ODhdLFwibWFwcGVkXCIsWzEyMl1dLFtbODQ4OSw4NDg5XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4NDkwLDg0OTBdLFwibWFwcGVkXCIsWzEwN11dLFtbODQ5MSw4NDkxXSxcIm1hcHBlZFwiLFsyMjldXSxbWzg0OTIsODQ5Ml0sXCJtYXBwZWRcIixbOThdXSxbWzg0OTMsODQ5M10sXCJtYXBwZWRcIixbOTldXSxbWzg0OTQsODQ5NF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbODQ5NSw4NDk2XSxcIm1hcHBlZFwiLFsxMDFdXSxbWzg0OTcsODQ5N10sXCJtYXBwZWRcIixbMTAyXV0sW1s4NDk4LDg0OThdLFwiZGlzYWxsb3dlZFwiXSxbWzg0OTksODQ5OV0sXCJtYXBwZWRcIixbMTA5XV0sW1s4NTAwLDg1MDBdLFwibWFwcGVkXCIsWzExMV1dLFtbODUwMSw4NTAxXSxcIm1hcHBlZFwiLFsxNDg4XV0sW1s4NTAyLDg1MDJdLFwibWFwcGVkXCIsWzE0ODldXSxbWzg1MDMsODUwM10sXCJtYXBwZWRcIixbMTQ5MF1dLFtbODUwNCw4NTA0XSxcIm1hcHBlZFwiLFsxNDkxXV0sW1s4NTA1LDg1MDVdLFwibWFwcGVkXCIsWzEwNV1dLFtbODUwNiw4NTA2XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4NTA3LDg1MDddLFwibWFwcGVkXCIsWzEwMiw5NywxMjBdXSxbWzg1MDgsODUwOF0sXCJtYXBwZWRcIixbOTYwXV0sW1s4NTA5LDg1MTBdLFwibWFwcGVkXCIsWzk0N11dLFtbODUxMSw4NTExXSxcIm1hcHBlZFwiLFs5NjBdXSxbWzg1MTIsODUxMl0sXCJtYXBwZWRcIixbODcyMV1dLFtbODUxMyw4NTE2XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4NTE3LDg1MThdLFwibWFwcGVkXCIsWzEwMF1dLFtbODUxOSw4NTE5XSxcIm1hcHBlZFwiLFsxMDFdXSxbWzg1MjAsODUyMF0sXCJtYXBwZWRcIixbMTA1XV0sW1s4NTIxLDg1MjFdLFwibWFwcGVkXCIsWzEwNl1dLFtbODUyMiw4NTIzXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4NTI0LDg1MjRdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzg1MjUsODUyNV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbODUyNiw4NTI2XSxcInZhbGlkXCJdLFtbODUyNyw4NTI3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4NTI4LDg1MjhdLFwibWFwcGVkXCIsWzQ5LDgyNjAsNTVdXSxbWzg1MjksODUyOV0sXCJtYXBwZWRcIixbNDksODI2MCw1N11dLFtbODUzMCw4NTMwXSxcIm1hcHBlZFwiLFs0OSw4MjYwLDQ5LDQ4XV0sW1s4NTMxLDg1MzFdLFwibWFwcGVkXCIsWzQ5LDgyNjAsNTFdXSxbWzg1MzIsODUzMl0sXCJtYXBwZWRcIixbNTAsODI2MCw1MV1dLFtbODUzMyw4NTMzXSxcIm1hcHBlZFwiLFs0OSw4MjYwLDUzXV0sW1s4NTM0LDg1MzRdLFwibWFwcGVkXCIsWzUwLDgyNjAsNTNdXSxbWzg1MzUsODUzNV0sXCJtYXBwZWRcIixbNTEsODI2MCw1M11dLFtbODUzNiw4NTM2XSxcIm1hcHBlZFwiLFs1Miw4MjYwLDUzXV0sW1s4NTM3LDg1MzddLFwibWFwcGVkXCIsWzQ5LDgyNjAsNTRdXSxbWzg1MzgsODUzOF0sXCJtYXBwZWRcIixbNTMsODI2MCw1NF1dLFtbODUzOSw4NTM5XSxcIm1hcHBlZFwiLFs0OSw4MjYwLDU2XV0sW1s4NTQwLDg1NDBdLFwibWFwcGVkXCIsWzUxLDgyNjAsNTZdXSxbWzg1NDEsODU0MV0sXCJtYXBwZWRcIixbNTMsODI2MCw1Nl1dLFtbODU0Miw4NTQyXSxcIm1hcHBlZFwiLFs1NSw4MjYwLDU2XV0sW1s4NTQzLDg1NDNdLFwibWFwcGVkXCIsWzQ5LDgyNjBdXSxbWzg1NDQsODU0NF0sXCJtYXBwZWRcIixbMTA1XV0sW1s4NTQ1LDg1NDVdLFwibWFwcGVkXCIsWzEwNSwxMDVdXSxbWzg1NDYsODU0Nl0sXCJtYXBwZWRcIixbMTA1LDEwNSwxMDVdXSxbWzg1NDcsODU0N10sXCJtYXBwZWRcIixbMTA1LDExOF1dLFtbODU0OCw4NTQ4XSxcIm1hcHBlZFwiLFsxMThdXSxbWzg1NDksODU0OV0sXCJtYXBwZWRcIixbMTE4LDEwNV1dLFtbODU1MCw4NTUwXSxcIm1hcHBlZFwiLFsxMTgsMTA1LDEwNV1dLFtbODU1MSw4NTUxXSxcIm1hcHBlZFwiLFsxMTgsMTA1LDEwNSwxMDVdXSxbWzg1NTIsODU1Ml0sXCJtYXBwZWRcIixbMTA1LDEyMF1dLFtbODU1Myw4NTUzXSxcIm1hcHBlZFwiLFsxMjBdXSxbWzg1NTQsODU1NF0sXCJtYXBwZWRcIixbMTIwLDEwNV1dLFtbODU1NSw4NTU1XSxcIm1hcHBlZFwiLFsxMjAsMTA1LDEwNV1dLFtbODU1Niw4NTU2XSxcIm1hcHBlZFwiLFsxMDhdXSxbWzg1NTcsODU1N10sXCJtYXBwZWRcIixbOTldXSxbWzg1NTgsODU1OF0sXCJtYXBwZWRcIixbMTAwXV0sW1s4NTU5LDg1NTldLFwibWFwcGVkXCIsWzEwOV1dLFtbODU2MCw4NTYwXSxcIm1hcHBlZFwiLFsxMDVdXSxbWzg1NjEsODU2MV0sXCJtYXBwZWRcIixbMTA1LDEwNV1dLFtbODU2Miw4NTYyXSxcIm1hcHBlZFwiLFsxMDUsMTA1LDEwNV1dLFtbODU2Myw4NTYzXSxcIm1hcHBlZFwiLFsxMDUsMTE4XV0sW1s4NTY0LDg1NjRdLFwibWFwcGVkXCIsWzExOF1dLFtbODU2NSw4NTY1XSxcIm1hcHBlZFwiLFsxMTgsMTA1XV0sW1s4NTY2LDg1NjZdLFwibWFwcGVkXCIsWzExOCwxMDUsMTA1XV0sW1s4NTY3LDg1NjddLFwibWFwcGVkXCIsWzExOCwxMDUsMTA1LDEwNV1dLFtbODU2OCw4NTY4XSxcIm1hcHBlZFwiLFsxMDUsMTIwXV0sW1s4NTY5LDg1NjldLFwibWFwcGVkXCIsWzEyMF1dLFtbODU3MCw4NTcwXSxcIm1hcHBlZFwiLFsxMjAsMTA1XV0sW1s4NTcxLDg1NzFdLFwibWFwcGVkXCIsWzEyMCwxMDUsMTA1XV0sW1s4NTcyLDg1NzJdLFwibWFwcGVkXCIsWzEwOF1dLFtbODU3Myw4NTczXSxcIm1hcHBlZFwiLFs5OV1dLFtbODU3NCw4NTc0XSxcIm1hcHBlZFwiLFsxMDBdXSxbWzg1NzUsODU3NV0sXCJtYXBwZWRcIixbMTA5XV0sW1s4NTc2LDg1NzhdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzg1NzksODU3OV0sXCJkaXNhbGxvd2VkXCJdLFtbODU4MCw4NTgwXSxcInZhbGlkXCJdLFtbODU4MSw4NTg0XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4NTg1LDg1ODVdLFwibWFwcGVkXCIsWzQ4LDgyNjAsNTFdXSxbWzg1ODYsODU4N10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbODU4OCw4NTkxXSxcImRpc2FsbG93ZWRcIl0sW1s4NTkyLDg2ODJdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzg2ODMsODY5MV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbODY5Miw4NzAzXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4NzA0LDg3NDddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzg3NDgsODc0OF0sXCJtYXBwZWRcIixbODc0Nyw4NzQ3XV0sW1s4NzQ5LDg3NDldLFwibWFwcGVkXCIsWzg3NDcsODc0Nyw4NzQ3XV0sW1s4NzUwLDg3NTBdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzg3NTEsODc1MV0sXCJtYXBwZWRcIixbODc1MCw4NzUwXV0sW1s4NzUyLDg3NTJdLFwibWFwcGVkXCIsWzg3NTAsODc1MCw4NzUwXV0sW1s4NzUzLDg3OTldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzg4MDAsODgwMF0sXCJkaXNhbGxvd2VkX1NURDNfdmFsaWRcIl0sW1s4ODAxLDg4MTNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzg4MTQsODgxNV0sXCJkaXNhbGxvd2VkX1NURDNfdmFsaWRcIl0sW1s4ODE2LDg5NDVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzg5NDYsODk1OV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbODk2MCw4OTYwXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s4OTYxLDg5NjFdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzg5NjIsOTAwMF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbOTAwMSw5MDAxXSxcIm1hcHBlZFwiLFsxMjI5Nl1dLFtbOTAwMiw5MDAyXSxcIm1hcHBlZFwiLFsxMjI5N11dLFtbOTAwMyw5MDgyXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s5MDgzLDkwODNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzkwODQsOTA4NF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbOTA4NSw5MTE0XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s5MTE1LDkxNjZdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzkxNjcsOTE2OF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbOTE2OSw5MTc5XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s5MTgwLDkxOTFdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzkxOTIsOTE5Ml0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbOTE5Myw5MjAzXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s5MjA0LDkyMTBdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzkyMTEsOTIxNV0sXCJkaXNhbGxvd2VkXCJdLFtbOTIxNiw5MjUyXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s5MjUzLDkyNTRdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzkyNTUsOTI3OV0sXCJkaXNhbGxvd2VkXCJdLFtbOTI4MCw5MjkwXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s5MjkxLDkzMTFdLFwiZGlzYWxsb3dlZFwiXSxbWzkzMTIsOTMxMl0sXCJtYXBwZWRcIixbNDldXSxbWzkzMTMsOTMxM10sXCJtYXBwZWRcIixbNTBdXSxbWzkzMTQsOTMxNF0sXCJtYXBwZWRcIixbNTFdXSxbWzkzMTUsOTMxNV0sXCJtYXBwZWRcIixbNTJdXSxbWzkzMTYsOTMxNl0sXCJtYXBwZWRcIixbNTNdXSxbWzkzMTcsOTMxN10sXCJtYXBwZWRcIixbNTRdXSxbWzkzMTgsOTMxOF0sXCJtYXBwZWRcIixbNTVdXSxbWzkzMTksOTMxOV0sXCJtYXBwZWRcIixbNTZdXSxbWzkzMjAsOTMyMF0sXCJtYXBwZWRcIixbNTddXSxbWzkzMjEsOTMyMV0sXCJtYXBwZWRcIixbNDksNDhdXSxbWzkzMjIsOTMyMl0sXCJtYXBwZWRcIixbNDksNDldXSxbWzkzMjMsOTMyM10sXCJtYXBwZWRcIixbNDksNTBdXSxbWzkzMjQsOTMyNF0sXCJtYXBwZWRcIixbNDksNTFdXSxbWzkzMjUsOTMyNV0sXCJtYXBwZWRcIixbNDksNTJdXSxbWzkzMjYsOTMyNl0sXCJtYXBwZWRcIixbNDksNTNdXSxbWzkzMjcsOTMyN10sXCJtYXBwZWRcIixbNDksNTRdXSxbWzkzMjgsOTMyOF0sXCJtYXBwZWRcIixbNDksNTVdXSxbWzkzMjksOTMyOV0sXCJtYXBwZWRcIixbNDksNTZdXSxbWzkzMzAsOTMzMF0sXCJtYXBwZWRcIixbNDksNTddXSxbWzkzMzEsOTMzMV0sXCJtYXBwZWRcIixbNTAsNDhdXSxbWzkzMzIsOTMzMl0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDQ5LDQxXV0sW1s5MzMzLDkzMzNdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCw1MCw0MV1dLFtbOTMzNCw5MzM0XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNDAsNTEsNDFdXSxbWzkzMzUsOTMzNV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDUyLDQxXV0sW1s5MzM2LDkzMzZdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCw1Myw0MV1dLFtbOTMzNyw5MzM3XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNDAsNTQsNDFdXSxbWzkzMzgsOTMzOF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDU1LDQxXV0sW1s5MzM5LDkzMzldLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCw1Niw0MV1dLFtbOTM0MCw5MzQwXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNDAsNTcsNDFdXSxbWzkzNDEsOTM0MV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDQ5LDQ4LDQxXV0sW1s5MzQyLDkzNDJdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCw0OSw0OSw0MV1dLFtbOTM0Myw5MzQzXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNDAsNDksNTAsNDFdXSxbWzkzNDQsOTM0NF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDQ5LDUxLDQxXV0sW1s5MzQ1LDkzNDVdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCw0OSw1Miw0MV1dLFtbOTM0Niw5MzQ2XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNDAsNDksNTMsNDFdXSxbWzkzNDcsOTM0N10sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDQ5LDU0LDQxXV0sW1s5MzQ4LDkzNDhdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCw0OSw1NSw0MV1dLFtbOTM0OSw5MzQ5XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNDAsNDksNTYsNDFdXSxbWzkzNTAsOTM1MF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDQ5LDU3LDQxXV0sW1s5MzUxLDkzNTFdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCw1MCw0OCw0MV1dLFtbOTM1Miw5MzcxXSxcImRpc2FsbG93ZWRcIl0sW1s5MzcyLDkzNzJdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCw5Nyw0MV1dLFtbOTM3Myw5MzczXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNDAsOTgsNDFdXSxbWzkzNzQsOTM3NF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDk5LDQxXV0sW1s5Mzc1LDkzNzVdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwxMDAsNDFdXSxbWzkzNzYsOTM3Nl0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDEwMSw0MV1dLFtbOTM3Nyw5Mzc3XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNDAsMTAyLDQxXV0sW1s5Mzc4LDkzNzhdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwxMDMsNDFdXSxbWzkzNzksOTM3OV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDEwNCw0MV1dLFtbOTM4MCw5MzgwXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNDAsMTA1LDQxXV0sW1s5MzgxLDkzODFdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwxMDYsNDFdXSxbWzkzODIsOTM4Ml0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDEwNyw0MV1dLFtbOTM4Myw5MzgzXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNDAsMTA4LDQxXV0sW1s5Mzg0LDkzODRdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwxMDksNDFdXSxbWzkzODUsOTM4NV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDExMCw0MV1dLFtbOTM4Niw5Mzg2XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNDAsMTExLDQxXV0sW1s5Mzg3LDkzODddLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwxMTIsNDFdXSxbWzkzODgsOTM4OF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDExMyw0MV1dLFtbOTM4OSw5Mzg5XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNDAsMTE0LDQxXV0sW1s5MzkwLDkzOTBdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwxMTUsNDFdXSxbWzkzOTEsOTM5MV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDExNiw0MV1dLFtbOTM5Miw5MzkyXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNDAsMTE3LDQxXV0sW1s5MzkzLDkzOTNdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwxMTgsNDFdXSxbWzkzOTQsOTM5NF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDExOSw0MV1dLFtbOTM5NSw5Mzk1XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNDAsMTIwLDQxXV0sW1s5Mzk2LDkzOTZdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwxMjEsNDFdXSxbWzkzOTcsOTM5N10sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDEyMiw0MV1dLFtbOTM5OCw5Mzk4XSxcIm1hcHBlZFwiLFs5N11dLFtbOTM5OSw5Mzk5XSxcIm1hcHBlZFwiLFs5OF1dLFtbOTQwMCw5NDAwXSxcIm1hcHBlZFwiLFs5OV1dLFtbOTQwMSw5NDAxXSxcIm1hcHBlZFwiLFsxMDBdXSxbWzk0MDIsOTQwMl0sXCJtYXBwZWRcIixbMTAxXV0sW1s5NDAzLDk0MDNdLFwibWFwcGVkXCIsWzEwMl1dLFtbOTQwNCw5NDA0XSxcIm1hcHBlZFwiLFsxMDNdXSxbWzk0MDUsOTQwNV0sXCJtYXBwZWRcIixbMTA0XV0sW1s5NDA2LDk0MDZdLFwibWFwcGVkXCIsWzEwNV1dLFtbOTQwNyw5NDA3XSxcIm1hcHBlZFwiLFsxMDZdXSxbWzk0MDgsOTQwOF0sXCJtYXBwZWRcIixbMTA3XV0sW1s5NDA5LDk0MDldLFwibWFwcGVkXCIsWzEwOF1dLFtbOTQxMCw5NDEwXSxcIm1hcHBlZFwiLFsxMDldXSxbWzk0MTEsOTQxMV0sXCJtYXBwZWRcIixbMTEwXV0sW1s5NDEyLDk0MTJdLFwibWFwcGVkXCIsWzExMV1dLFtbOTQxMyw5NDEzXSxcIm1hcHBlZFwiLFsxMTJdXSxbWzk0MTQsOTQxNF0sXCJtYXBwZWRcIixbMTEzXV0sW1s5NDE1LDk0MTVdLFwibWFwcGVkXCIsWzExNF1dLFtbOTQxNiw5NDE2XSxcIm1hcHBlZFwiLFsxMTVdXSxbWzk0MTcsOTQxN10sXCJtYXBwZWRcIixbMTE2XV0sW1s5NDE4LDk0MThdLFwibWFwcGVkXCIsWzExN11dLFtbOTQxOSw5NDE5XSxcIm1hcHBlZFwiLFsxMThdXSxbWzk0MjAsOTQyMF0sXCJtYXBwZWRcIixbMTE5XV0sW1s5NDIxLDk0MjFdLFwibWFwcGVkXCIsWzEyMF1dLFtbOTQyMiw5NDIyXSxcIm1hcHBlZFwiLFsxMjFdXSxbWzk0MjMsOTQyM10sXCJtYXBwZWRcIixbMTIyXV0sW1s5NDI0LDk0MjRdLFwibWFwcGVkXCIsWzk3XV0sW1s5NDI1LDk0MjVdLFwibWFwcGVkXCIsWzk4XV0sW1s5NDI2LDk0MjZdLFwibWFwcGVkXCIsWzk5XV0sW1s5NDI3LDk0MjddLFwibWFwcGVkXCIsWzEwMF1dLFtbOTQyOCw5NDI4XSxcIm1hcHBlZFwiLFsxMDFdXSxbWzk0MjksOTQyOV0sXCJtYXBwZWRcIixbMTAyXV0sW1s5NDMwLDk0MzBdLFwibWFwcGVkXCIsWzEwM11dLFtbOTQzMSw5NDMxXSxcIm1hcHBlZFwiLFsxMDRdXSxbWzk0MzIsOTQzMl0sXCJtYXBwZWRcIixbMTA1XV0sW1s5NDMzLDk0MzNdLFwibWFwcGVkXCIsWzEwNl1dLFtbOTQzNCw5NDM0XSxcIm1hcHBlZFwiLFsxMDddXSxbWzk0MzUsOTQzNV0sXCJtYXBwZWRcIixbMTA4XV0sW1s5NDM2LDk0MzZdLFwibWFwcGVkXCIsWzEwOV1dLFtbOTQzNyw5NDM3XSxcIm1hcHBlZFwiLFsxMTBdXSxbWzk0MzgsOTQzOF0sXCJtYXBwZWRcIixbMTExXV0sW1s5NDM5LDk0MzldLFwibWFwcGVkXCIsWzExMl1dLFtbOTQ0MCw5NDQwXSxcIm1hcHBlZFwiLFsxMTNdXSxbWzk0NDEsOTQ0MV0sXCJtYXBwZWRcIixbMTE0XV0sW1s5NDQyLDk0NDJdLFwibWFwcGVkXCIsWzExNV1dLFtbOTQ0Myw5NDQzXSxcIm1hcHBlZFwiLFsxMTZdXSxbWzk0NDQsOTQ0NF0sXCJtYXBwZWRcIixbMTE3XV0sW1s5NDQ1LDk0NDVdLFwibWFwcGVkXCIsWzExOF1dLFtbOTQ0Niw5NDQ2XSxcIm1hcHBlZFwiLFsxMTldXSxbWzk0NDcsOTQ0N10sXCJtYXBwZWRcIixbMTIwXV0sW1s5NDQ4LDk0NDhdLFwibWFwcGVkXCIsWzEyMV1dLFtbOTQ0OSw5NDQ5XSxcIm1hcHBlZFwiLFsxMjJdXSxbWzk0NTAsOTQ1MF0sXCJtYXBwZWRcIixbNDhdXSxbWzk0NTEsOTQ3MF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbOTQ3MSw5NDcxXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s5NDcyLDk2MjFdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzk2MjIsOTYzMV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbOTYzMiw5NzExXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s5NzEyLDk3MTldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzk3MjAsOTcyN10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbOTcyOCw5NzQ3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s5NzQ4LDk3NDldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzk3NTAsOTc1MV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbOTc1Miw5NzUyXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s5NzUzLDk3NTNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzk3NTQsOTgzOV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbOTg0MCw5ODQxXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s5ODQyLDk4NTNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzk4NTQsOTg1NV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbOTg1Niw5ODY1XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s5ODY2LDk4NzNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzk4NzQsOTg4NF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbOTg4NSw5ODg1XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s5ODg2LDk4ODddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzk4ODgsOTg4OV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbOTg5MCw5OTA1XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s5OTA2LDk5MDZdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzk5MDcsOTkxNl0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbOTkxNyw5OTE5XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s5OTIwLDk5MjNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzk5MjQsOTkzM10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbOTkzNCw5OTM0XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s5OTM1LDk5NTNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzk5NTQsOTk1NF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbOTk1NSw5OTU1XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s5OTU2LDk5NTldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzk5NjAsOTk4M10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbOTk4NCw5OTg0XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s5OTg1LDk5ODhdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzk5ODksOTk4OV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbOTk5MCw5OTkzXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s5OTk0LDk5OTVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzk5OTYsMTAwMjNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEwMDI0LDEwMDI0XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMDAyNSwxMDA1OV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTAwNjAsMTAwNjBdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEwMDYxLDEwMDYxXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMDA2MiwxMDA2Ml0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTAwNjMsMTAwNjZdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEwMDY3LDEwMDY5XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMDA3MCwxMDA3MF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTAwNzEsMTAwNzFdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEwMDcyLDEwMDc4XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMDA3OSwxMDA4MF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTAwODEsMTAwODddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEwMDg4LDEwMTAxXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMDEwMiwxMDEzMl0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTAxMzMsMTAxMzVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEwMTM2LDEwMTU5XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMDE2MCwxMDE2MF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTAxNjEsMTAxNzRdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEwMTc1LDEwMTc1XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMDE3NiwxMDE4Ml0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTAxODMsMTAxODZdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEwMTg3LDEwMTg3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMDE4OCwxMDE4OF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTAxODksMTAxODldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEwMTkwLDEwMTkxXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMDE5MiwxMDIxOV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTAyMjAsMTAyMjNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEwMjI0LDEwMjM5XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMDI0MCwxMDQ5NV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTA0OTYsMTA3NjNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEwNzY0LDEwNzY0XSxcIm1hcHBlZFwiLFs4NzQ3LDg3NDcsODc0Nyw4NzQ3XV0sW1sxMDc2NSwxMDg2N10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTA4NjgsMTA4NjhdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs1OCw1OCw2MV1dLFtbMTA4NjksMTA4NjldLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs2MSw2MV1dLFtbMTA4NzAsMTA4NzBdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs2MSw2MSw2MV1dLFtbMTA4NzEsMTA5NzFdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEwOTcyLDEwOTcyXSxcIm1hcHBlZFwiLFsxMDk3Myw4MjRdXSxbWzEwOTczLDExMDA3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMTAwOCwxMTAyMV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTEwMjIsMTEwMjddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzExMDI4LDExMDM0XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMTAzNSwxMTAzOV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTEwNDAsMTEwNDNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzExMDQ0LDExMDg0XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMTA4NSwxMTA4N10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTEwODgsMTEwOTJdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzExMDkzLDExMDk3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMTA5OCwxMTEyM10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTExMjQsMTExMjVdLFwiZGlzYWxsb3dlZFwiXSxbWzExMTI2LDExMTU3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMTE1OCwxMTE1OV0sXCJkaXNhbGxvd2VkXCJdLFtbMTExNjAsMTExOTNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzExMTk0LDExMTk2XSxcImRpc2FsbG93ZWRcIl0sW1sxMTE5NywxMTIwOF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTEyMDksMTEyMDldLFwiZGlzYWxsb3dlZFwiXSxbWzExMjEwLDExMjE3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMTIxOCwxMTI0M10sXCJkaXNhbGxvd2VkXCJdLFtbMTEyNDQsMTEyNDddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzExMjQ4LDExMjYzXSxcImRpc2FsbG93ZWRcIl0sW1sxMTI2NCwxMTI2NF0sXCJtYXBwZWRcIixbMTEzMTJdXSxbWzExMjY1LDExMjY1XSxcIm1hcHBlZFwiLFsxMTMxM11dLFtbMTEyNjYsMTEyNjZdLFwibWFwcGVkXCIsWzExMzE0XV0sW1sxMTI2NywxMTI2N10sXCJtYXBwZWRcIixbMTEzMTVdXSxbWzExMjY4LDExMjY4XSxcIm1hcHBlZFwiLFsxMTMxNl1dLFtbMTEyNjksMTEyNjldLFwibWFwcGVkXCIsWzExMzE3XV0sW1sxMTI3MCwxMTI3MF0sXCJtYXBwZWRcIixbMTEzMThdXSxbWzExMjcxLDExMjcxXSxcIm1hcHBlZFwiLFsxMTMxOV1dLFtbMTEyNzIsMTEyNzJdLFwibWFwcGVkXCIsWzExMzIwXV0sW1sxMTI3MywxMTI3M10sXCJtYXBwZWRcIixbMTEzMjFdXSxbWzExMjc0LDExMjc0XSxcIm1hcHBlZFwiLFsxMTMyMl1dLFtbMTEyNzUsMTEyNzVdLFwibWFwcGVkXCIsWzExMzIzXV0sW1sxMTI3NiwxMTI3Nl0sXCJtYXBwZWRcIixbMTEzMjRdXSxbWzExMjc3LDExMjc3XSxcIm1hcHBlZFwiLFsxMTMyNV1dLFtbMTEyNzgsMTEyNzhdLFwibWFwcGVkXCIsWzExMzI2XV0sW1sxMTI3OSwxMTI3OV0sXCJtYXBwZWRcIixbMTEzMjddXSxbWzExMjgwLDExMjgwXSxcIm1hcHBlZFwiLFsxMTMyOF1dLFtbMTEyODEsMTEyODFdLFwibWFwcGVkXCIsWzExMzI5XV0sW1sxMTI4MiwxMTI4Ml0sXCJtYXBwZWRcIixbMTEzMzBdXSxbWzExMjgzLDExMjgzXSxcIm1hcHBlZFwiLFsxMTMzMV1dLFtbMTEyODQsMTEyODRdLFwibWFwcGVkXCIsWzExMzMyXV0sW1sxMTI4NSwxMTI4NV0sXCJtYXBwZWRcIixbMTEzMzNdXSxbWzExMjg2LDExMjg2XSxcIm1hcHBlZFwiLFsxMTMzNF1dLFtbMTEyODcsMTEyODddLFwibWFwcGVkXCIsWzExMzM1XV0sW1sxMTI4OCwxMTI4OF0sXCJtYXBwZWRcIixbMTEzMzZdXSxbWzExMjg5LDExMjg5XSxcIm1hcHBlZFwiLFsxMTMzN11dLFtbMTEyOTAsMTEyOTBdLFwibWFwcGVkXCIsWzExMzM4XV0sW1sxMTI5MSwxMTI5MV0sXCJtYXBwZWRcIixbMTEzMzldXSxbWzExMjkyLDExMjkyXSxcIm1hcHBlZFwiLFsxMTM0MF1dLFtbMTEyOTMsMTEyOTNdLFwibWFwcGVkXCIsWzExMzQxXV0sW1sxMTI5NCwxMTI5NF0sXCJtYXBwZWRcIixbMTEzNDJdXSxbWzExMjk1LDExMjk1XSxcIm1hcHBlZFwiLFsxMTM0M11dLFtbMTEyOTYsMTEyOTZdLFwibWFwcGVkXCIsWzExMzQ0XV0sW1sxMTI5NywxMTI5N10sXCJtYXBwZWRcIixbMTEzNDVdXSxbWzExMjk4LDExMjk4XSxcIm1hcHBlZFwiLFsxMTM0Nl1dLFtbMTEyOTksMTEyOTldLFwibWFwcGVkXCIsWzExMzQ3XV0sW1sxMTMwMCwxMTMwMF0sXCJtYXBwZWRcIixbMTEzNDhdXSxbWzExMzAxLDExMzAxXSxcIm1hcHBlZFwiLFsxMTM0OV1dLFtbMTEzMDIsMTEzMDJdLFwibWFwcGVkXCIsWzExMzUwXV0sW1sxMTMwMywxMTMwM10sXCJtYXBwZWRcIixbMTEzNTFdXSxbWzExMzA0LDExMzA0XSxcIm1hcHBlZFwiLFsxMTM1Ml1dLFtbMTEzMDUsMTEzMDVdLFwibWFwcGVkXCIsWzExMzUzXV0sW1sxMTMwNiwxMTMwNl0sXCJtYXBwZWRcIixbMTEzNTRdXSxbWzExMzA3LDExMzA3XSxcIm1hcHBlZFwiLFsxMTM1NV1dLFtbMTEzMDgsMTEzMDhdLFwibWFwcGVkXCIsWzExMzU2XV0sW1sxMTMwOSwxMTMwOV0sXCJtYXBwZWRcIixbMTEzNTddXSxbWzExMzEwLDExMzEwXSxcIm1hcHBlZFwiLFsxMTM1OF1dLFtbMTEzMTEsMTEzMTFdLFwiZGlzYWxsb3dlZFwiXSxbWzExMzEyLDExMzU4XSxcInZhbGlkXCJdLFtbMTEzNTksMTEzNTldLFwiZGlzYWxsb3dlZFwiXSxbWzExMzYwLDExMzYwXSxcIm1hcHBlZFwiLFsxMTM2MV1dLFtbMTEzNjEsMTEzNjFdLFwidmFsaWRcIl0sW1sxMTM2MiwxMTM2Ml0sXCJtYXBwZWRcIixbNjE5XV0sW1sxMTM2MywxMTM2M10sXCJtYXBwZWRcIixbNzU0OV1dLFtbMTEzNjQsMTEzNjRdLFwibWFwcGVkXCIsWzYzN11dLFtbMTEzNjUsMTEzNjZdLFwidmFsaWRcIl0sW1sxMTM2NywxMTM2N10sXCJtYXBwZWRcIixbMTEzNjhdXSxbWzExMzY4LDExMzY4XSxcInZhbGlkXCJdLFtbMTEzNjksMTEzNjldLFwibWFwcGVkXCIsWzExMzcwXV0sW1sxMTM3MCwxMTM3MF0sXCJ2YWxpZFwiXSxbWzExMzcxLDExMzcxXSxcIm1hcHBlZFwiLFsxMTM3Ml1dLFtbMTEzNzIsMTEzNzJdLFwidmFsaWRcIl0sW1sxMTM3MywxMTM3M10sXCJtYXBwZWRcIixbNTkzXV0sW1sxMTM3NCwxMTM3NF0sXCJtYXBwZWRcIixbNjI1XV0sW1sxMTM3NSwxMTM3NV0sXCJtYXBwZWRcIixbNTkyXV0sW1sxMTM3NiwxMTM3Nl0sXCJtYXBwZWRcIixbNTk0XV0sW1sxMTM3NywxMTM3N10sXCJ2YWxpZFwiXSxbWzExMzc4LDExMzc4XSxcIm1hcHBlZFwiLFsxMTM3OV1dLFtbMTEzNzksMTEzNzldLFwidmFsaWRcIl0sW1sxMTM4MCwxMTM4MF0sXCJ2YWxpZFwiXSxbWzExMzgxLDExMzgxXSxcIm1hcHBlZFwiLFsxMTM4Ml1dLFtbMTEzODIsMTEzODNdLFwidmFsaWRcIl0sW1sxMTM4NCwxMTM4N10sXCJ2YWxpZFwiXSxbWzExMzg4LDExMzg4XSxcIm1hcHBlZFwiLFsxMDZdXSxbWzExMzg5LDExMzg5XSxcIm1hcHBlZFwiLFsxMThdXSxbWzExMzkwLDExMzkwXSxcIm1hcHBlZFwiLFs1NzVdXSxbWzExMzkxLDExMzkxXSxcIm1hcHBlZFwiLFs1NzZdXSxbWzExMzkyLDExMzkyXSxcIm1hcHBlZFwiLFsxMTM5M11dLFtbMTEzOTMsMTEzOTNdLFwidmFsaWRcIl0sW1sxMTM5NCwxMTM5NF0sXCJtYXBwZWRcIixbMTEzOTVdXSxbWzExMzk1LDExMzk1XSxcInZhbGlkXCJdLFtbMTEzOTYsMTEzOTZdLFwibWFwcGVkXCIsWzExMzk3XV0sW1sxMTM5NywxMTM5N10sXCJ2YWxpZFwiXSxbWzExMzk4LDExMzk4XSxcIm1hcHBlZFwiLFsxMTM5OV1dLFtbMTEzOTksMTEzOTldLFwidmFsaWRcIl0sW1sxMTQwMCwxMTQwMF0sXCJtYXBwZWRcIixbMTE0MDFdXSxbWzExNDAxLDExNDAxXSxcInZhbGlkXCJdLFtbMTE0MDIsMTE0MDJdLFwibWFwcGVkXCIsWzExNDAzXV0sW1sxMTQwMywxMTQwM10sXCJ2YWxpZFwiXSxbWzExNDA0LDExNDA0XSxcIm1hcHBlZFwiLFsxMTQwNV1dLFtbMTE0MDUsMTE0MDVdLFwidmFsaWRcIl0sW1sxMTQwNiwxMTQwNl0sXCJtYXBwZWRcIixbMTE0MDddXSxbWzExNDA3LDExNDA3XSxcInZhbGlkXCJdLFtbMTE0MDgsMTE0MDhdLFwibWFwcGVkXCIsWzExNDA5XV0sW1sxMTQwOSwxMTQwOV0sXCJ2YWxpZFwiXSxbWzExNDEwLDExNDEwXSxcIm1hcHBlZFwiLFsxMTQxMV1dLFtbMTE0MTEsMTE0MTFdLFwidmFsaWRcIl0sW1sxMTQxMiwxMTQxMl0sXCJtYXBwZWRcIixbMTE0MTNdXSxbWzExNDEzLDExNDEzXSxcInZhbGlkXCJdLFtbMTE0MTQsMTE0MTRdLFwibWFwcGVkXCIsWzExNDE1XV0sW1sxMTQxNSwxMTQxNV0sXCJ2YWxpZFwiXSxbWzExNDE2LDExNDE2XSxcIm1hcHBlZFwiLFsxMTQxN11dLFtbMTE0MTcsMTE0MTddLFwidmFsaWRcIl0sW1sxMTQxOCwxMTQxOF0sXCJtYXBwZWRcIixbMTE0MTldXSxbWzExNDE5LDExNDE5XSxcInZhbGlkXCJdLFtbMTE0MjAsMTE0MjBdLFwibWFwcGVkXCIsWzExNDIxXV0sW1sxMTQyMSwxMTQyMV0sXCJ2YWxpZFwiXSxbWzExNDIyLDExNDIyXSxcIm1hcHBlZFwiLFsxMTQyM11dLFtbMTE0MjMsMTE0MjNdLFwidmFsaWRcIl0sW1sxMTQyNCwxMTQyNF0sXCJtYXBwZWRcIixbMTE0MjVdXSxbWzExNDI1LDExNDI1XSxcInZhbGlkXCJdLFtbMTE0MjYsMTE0MjZdLFwibWFwcGVkXCIsWzExNDI3XV0sW1sxMTQyNywxMTQyN10sXCJ2YWxpZFwiXSxbWzExNDI4LDExNDI4XSxcIm1hcHBlZFwiLFsxMTQyOV1dLFtbMTE0MjksMTE0MjldLFwidmFsaWRcIl0sW1sxMTQzMCwxMTQzMF0sXCJtYXBwZWRcIixbMTE0MzFdXSxbWzExNDMxLDExNDMxXSxcInZhbGlkXCJdLFtbMTE0MzIsMTE0MzJdLFwibWFwcGVkXCIsWzExNDMzXV0sW1sxMTQzMywxMTQzM10sXCJ2YWxpZFwiXSxbWzExNDM0LDExNDM0XSxcIm1hcHBlZFwiLFsxMTQzNV1dLFtbMTE0MzUsMTE0MzVdLFwidmFsaWRcIl0sW1sxMTQzNiwxMTQzNl0sXCJtYXBwZWRcIixbMTE0MzddXSxbWzExNDM3LDExNDM3XSxcInZhbGlkXCJdLFtbMTE0MzgsMTE0MzhdLFwibWFwcGVkXCIsWzExNDM5XV0sW1sxMTQzOSwxMTQzOV0sXCJ2YWxpZFwiXSxbWzExNDQwLDExNDQwXSxcIm1hcHBlZFwiLFsxMTQ0MV1dLFtbMTE0NDEsMTE0NDFdLFwidmFsaWRcIl0sW1sxMTQ0MiwxMTQ0Ml0sXCJtYXBwZWRcIixbMTE0NDNdXSxbWzExNDQzLDExNDQzXSxcInZhbGlkXCJdLFtbMTE0NDQsMTE0NDRdLFwibWFwcGVkXCIsWzExNDQ1XV0sW1sxMTQ0NSwxMTQ0NV0sXCJ2YWxpZFwiXSxbWzExNDQ2LDExNDQ2XSxcIm1hcHBlZFwiLFsxMTQ0N11dLFtbMTE0NDcsMTE0NDddLFwidmFsaWRcIl0sW1sxMTQ0OCwxMTQ0OF0sXCJtYXBwZWRcIixbMTE0NDldXSxbWzExNDQ5LDExNDQ5XSxcInZhbGlkXCJdLFtbMTE0NTAsMTE0NTBdLFwibWFwcGVkXCIsWzExNDUxXV0sW1sxMTQ1MSwxMTQ1MV0sXCJ2YWxpZFwiXSxbWzExNDUyLDExNDUyXSxcIm1hcHBlZFwiLFsxMTQ1M11dLFtbMTE0NTMsMTE0NTNdLFwidmFsaWRcIl0sW1sxMTQ1NCwxMTQ1NF0sXCJtYXBwZWRcIixbMTE0NTVdXSxbWzExNDU1LDExNDU1XSxcInZhbGlkXCJdLFtbMTE0NTYsMTE0NTZdLFwibWFwcGVkXCIsWzExNDU3XV0sW1sxMTQ1NywxMTQ1N10sXCJ2YWxpZFwiXSxbWzExNDU4LDExNDU4XSxcIm1hcHBlZFwiLFsxMTQ1OV1dLFtbMTE0NTksMTE0NTldLFwidmFsaWRcIl0sW1sxMTQ2MCwxMTQ2MF0sXCJtYXBwZWRcIixbMTE0NjFdXSxbWzExNDYxLDExNDYxXSxcInZhbGlkXCJdLFtbMTE0NjIsMTE0NjJdLFwibWFwcGVkXCIsWzExNDYzXV0sW1sxMTQ2MywxMTQ2M10sXCJ2YWxpZFwiXSxbWzExNDY0LDExNDY0XSxcIm1hcHBlZFwiLFsxMTQ2NV1dLFtbMTE0NjUsMTE0NjVdLFwidmFsaWRcIl0sW1sxMTQ2NiwxMTQ2Nl0sXCJtYXBwZWRcIixbMTE0NjddXSxbWzExNDY3LDExNDY3XSxcInZhbGlkXCJdLFtbMTE0NjgsMTE0NjhdLFwibWFwcGVkXCIsWzExNDY5XV0sW1sxMTQ2OSwxMTQ2OV0sXCJ2YWxpZFwiXSxbWzExNDcwLDExNDcwXSxcIm1hcHBlZFwiLFsxMTQ3MV1dLFtbMTE0NzEsMTE0NzFdLFwidmFsaWRcIl0sW1sxMTQ3MiwxMTQ3Ml0sXCJtYXBwZWRcIixbMTE0NzNdXSxbWzExNDczLDExNDczXSxcInZhbGlkXCJdLFtbMTE0NzQsMTE0NzRdLFwibWFwcGVkXCIsWzExNDc1XV0sW1sxMTQ3NSwxMTQ3NV0sXCJ2YWxpZFwiXSxbWzExNDc2LDExNDc2XSxcIm1hcHBlZFwiLFsxMTQ3N11dLFtbMTE0NzcsMTE0NzddLFwidmFsaWRcIl0sW1sxMTQ3OCwxMTQ3OF0sXCJtYXBwZWRcIixbMTE0NzldXSxbWzExNDc5LDExNDc5XSxcInZhbGlkXCJdLFtbMTE0ODAsMTE0ODBdLFwibWFwcGVkXCIsWzExNDgxXV0sW1sxMTQ4MSwxMTQ4MV0sXCJ2YWxpZFwiXSxbWzExNDgyLDExNDgyXSxcIm1hcHBlZFwiLFsxMTQ4M11dLFtbMTE0ODMsMTE0ODNdLFwidmFsaWRcIl0sW1sxMTQ4NCwxMTQ4NF0sXCJtYXBwZWRcIixbMTE0ODVdXSxbWzExNDg1LDExNDg1XSxcInZhbGlkXCJdLFtbMTE0ODYsMTE0ODZdLFwibWFwcGVkXCIsWzExNDg3XV0sW1sxMTQ4NywxMTQ4N10sXCJ2YWxpZFwiXSxbWzExNDg4LDExNDg4XSxcIm1hcHBlZFwiLFsxMTQ4OV1dLFtbMTE0ODksMTE0ODldLFwidmFsaWRcIl0sW1sxMTQ5MCwxMTQ5MF0sXCJtYXBwZWRcIixbMTE0OTFdXSxbWzExNDkxLDExNDkyXSxcInZhbGlkXCJdLFtbMTE0OTMsMTE0OThdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzExNDk5LDExNDk5XSxcIm1hcHBlZFwiLFsxMTUwMF1dLFtbMTE1MDAsMTE1MDBdLFwidmFsaWRcIl0sW1sxMTUwMSwxMTUwMV0sXCJtYXBwZWRcIixbMTE1MDJdXSxbWzExNTAyLDExNTA1XSxcInZhbGlkXCJdLFtbMTE1MDYsMTE1MDZdLFwibWFwcGVkXCIsWzExNTA3XV0sW1sxMTUwNywxMTUwN10sXCJ2YWxpZFwiXSxbWzExNTA4LDExNTEyXSxcImRpc2FsbG93ZWRcIl0sW1sxMTUxMywxMTUxOV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTE1MjAsMTE1NTddLFwidmFsaWRcIl0sW1sxMTU1OCwxMTU1OF0sXCJkaXNhbGxvd2VkXCJdLFtbMTE1NTksMTE1NTldLFwidmFsaWRcIl0sW1sxMTU2MCwxMTU2NF0sXCJkaXNhbGxvd2VkXCJdLFtbMTE1NjUsMTE1NjVdLFwidmFsaWRcIl0sW1sxMTU2NiwxMTU2N10sXCJkaXNhbGxvd2VkXCJdLFtbMTE1NjgsMTE2MjFdLFwidmFsaWRcIl0sW1sxMTYyMiwxMTYyM10sXCJ2YWxpZFwiXSxbWzExNjI0LDExNjMwXSxcImRpc2FsbG93ZWRcIl0sW1sxMTYzMSwxMTYzMV0sXCJtYXBwZWRcIixbMTE2MTddXSxbWzExNjMyLDExNjMyXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMTYzMywxMTY0Nl0sXCJkaXNhbGxvd2VkXCJdLFtbMTE2NDcsMTE2NDddLFwidmFsaWRcIl0sW1sxMTY0OCwxMTY3MF0sXCJ2YWxpZFwiXSxbWzExNjcxLDExNjc5XSxcImRpc2FsbG93ZWRcIl0sW1sxMTY4MCwxMTY4Nl0sXCJ2YWxpZFwiXSxbWzExNjg3LDExNjg3XSxcImRpc2FsbG93ZWRcIl0sW1sxMTY4OCwxMTY5NF0sXCJ2YWxpZFwiXSxbWzExNjk1LDExNjk1XSxcImRpc2FsbG93ZWRcIl0sW1sxMTY5NiwxMTcwMl0sXCJ2YWxpZFwiXSxbWzExNzAzLDExNzAzXSxcImRpc2FsbG93ZWRcIl0sW1sxMTcwNCwxMTcxMF0sXCJ2YWxpZFwiXSxbWzExNzExLDExNzExXSxcImRpc2FsbG93ZWRcIl0sW1sxMTcxMiwxMTcxOF0sXCJ2YWxpZFwiXSxbWzExNzE5LDExNzE5XSxcImRpc2FsbG93ZWRcIl0sW1sxMTcyMCwxMTcyNl0sXCJ2YWxpZFwiXSxbWzExNzI3LDExNzI3XSxcImRpc2FsbG93ZWRcIl0sW1sxMTcyOCwxMTczNF0sXCJ2YWxpZFwiXSxbWzExNzM1LDExNzM1XSxcImRpc2FsbG93ZWRcIl0sW1sxMTczNiwxMTc0Ml0sXCJ2YWxpZFwiXSxbWzExNzQzLDExNzQzXSxcImRpc2FsbG93ZWRcIl0sW1sxMTc0NCwxMTc3NV0sXCJ2YWxpZFwiXSxbWzExNzc2LDExNzk5XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMTgwMCwxMTgwM10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTE4MDQsMTE4MDVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzExODA2LDExODIyXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMTgyMywxMTgyM10sXCJ2YWxpZFwiXSxbWzExODI0LDExODI0XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMTgyNSwxMTgyNV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTE4MjYsMTE4MzVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzExODM2LDExODQyXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMTg0MywxMTkwM10sXCJkaXNhbGxvd2VkXCJdLFtbMTE5MDQsMTE5MjldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzExOTMwLDExOTMwXSxcImRpc2FsbG93ZWRcIl0sW1sxMTkzMSwxMTkzNF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTE5MzUsMTE5MzVdLFwibWFwcGVkXCIsWzI3NTk3XV0sW1sxMTkzNiwxMjAxOF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTIwMTksMTIwMTldLFwibWFwcGVkXCIsWzQwODYzXV0sW1sxMjAyMCwxMjAzMV0sXCJkaXNhbGxvd2VkXCJdLFtbMTIwMzIsMTIwMzJdLFwibWFwcGVkXCIsWzE5OTY4XV0sW1sxMjAzMywxMjAzM10sXCJtYXBwZWRcIixbMjAwMDhdXSxbWzEyMDM0LDEyMDM0XSxcIm1hcHBlZFwiLFsyMDAyMl1dLFtbMTIwMzUsMTIwMzVdLFwibWFwcGVkXCIsWzIwMDMxXV0sW1sxMjAzNiwxMjAzNl0sXCJtYXBwZWRcIixbMjAwNTddXSxbWzEyMDM3LDEyMDM3XSxcIm1hcHBlZFwiLFsyMDEwMV1dLFtbMTIwMzgsMTIwMzhdLFwibWFwcGVkXCIsWzIwMTA4XV0sW1sxMjAzOSwxMjAzOV0sXCJtYXBwZWRcIixbMjAxMjhdXSxbWzEyMDQwLDEyMDQwXSxcIm1hcHBlZFwiLFsyMDE1NF1dLFtbMTIwNDEsMTIwNDFdLFwibWFwcGVkXCIsWzIwNzk5XV0sW1sxMjA0MiwxMjA0Ml0sXCJtYXBwZWRcIixbMjA4MzddXSxbWzEyMDQzLDEyMDQzXSxcIm1hcHBlZFwiLFsyMDg0M11dLFtbMTIwNDQsMTIwNDRdLFwibWFwcGVkXCIsWzIwODY2XV0sW1sxMjA0NSwxMjA0NV0sXCJtYXBwZWRcIixbMjA4ODZdXSxbWzEyMDQ2LDEyMDQ2XSxcIm1hcHBlZFwiLFsyMDkwN11dLFtbMTIwNDcsMTIwNDddLFwibWFwcGVkXCIsWzIwOTYwXV0sW1sxMjA0OCwxMjA0OF0sXCJtYXBwZWRcIixbMjA5ODFdXSxbWzEyMDQ5LDEyMDQ5XSxcIm1hcHBlZFwiLFsyMDk5Ml1dLFtbMTIwNTAsMTIwNTBdLFwibWFwcGVkXCIsWzIxMTQ3XV0sW1sxMjA1MSwxMjA1MV0sXCJtYXBwZWRcIixbMjEyNDFdXSxbWzEyMDUyLDEyMDUyXSxcIm1hcHBlZFwiLFsyMTI2OV1dLFtbMTIwNTMsMTIwNTNdLFwibWFwcGVkXCIsWzIxMjc0XV0sW1sxMjA1NCwxMjA1NF0sXCJtYXBwZWRcIixbMjEzMDRdXSxbWzEyMDU1LDEyMDU1XSxcIm1hcHBlZFwiLFsyMTMxM11dLFtbMTIwNTYsMTIwNTZdLFwibWFwcGVkXCIsWzIxMzQwXV0sW1sxMjA1NywxMjA1N10sXCJtYXBwZWRcIixbMjEzNTNdXSxbWzEyMDU4LDEyMDU4XSxcIm1hcHBlZFwiLFsyMTM3OF1dLFtbMTIwNTksMTIwNTldLFwibWFwcGVkXCIsWzIxNDMwXV0sW1sxMjA2MCwxMjA2MF0sXCJtYXBwZWRcIixbMjE0NDhdXSxbWzEyMDYxLDEyMDYxXSxcIm1hcHBlZFwiLFsyMTQ3NV1dLFtbMTIwNjIsMTIwNjJdLFwibWFwcGVkXCIsWzIyMjMxXV0sW1sxMjA2MywxMjA2M10sXCJtYXBwZWRcIixbMjIzMDNdXSxbWzEyMDY0LDEyMDY0XSxcIm1hcHBlZFwiLFsyMjc2M11dLFtbMTIwNjUsMTIwNjVdLFwibWFwcGVkXCIsWzIyNzg2XV0sW1sxMjA2NiwxMjA2Nl0sXCJtYXBwZWRcIixbMjI3OTRdXSxbWzEyMDY3LDEyMDY3XSxcIm1hcHBlZFwiLFsyMjgwNV1dLFtbMTIwNjgsMTIwNjhdLFwibWFwcGVkXCIsWzIyODIzXV0sW1sxMjA2OSwxMjA2OV0sXCJtYXBwZWRcIixbMjI4OTldXSxbWzEyMDcwLDEyMDcwXSxcIm1hcHBlZFwiLFsyMzM3Nl1dLFtbMTIwNzEsMTIwNzFdLFwibWFwcGVkXCIsWzIzNDI0XV0sW1sxMjA3MiwxMjA3Ml0sXCJtYXBwZWRcIixbMjM1NDRdXSxbWzEyMDczLDEyMDczXSxcIm1hcHBlZFwiLFsyMzU2N11dLFtbMTIwNzQsMTIwNzRdLFwibWFwcGVkXCIsWzIzNTg2XV0sW1sxMjA3NSwxMjA3NV0sXCJtYXBwZWRcIixbMjM2MDhdXSxbWzEyMDc2LDEyMDc2XSxcIm1hcHBlZFwiLFsyMzY2Ml1dLFtbMTIwNzcsMTIwNzddLFwibWFwcGVkXCIsWzIzNjY1XV0sW1sxMjA3OCwxMjA3OF0sXCJtYXBwZWRcIixbMjQwMjddXSxbWzEyMDc5LDEyMDc5XSxcIm1hcHBlZFwiLFsyNDAzN11dLFtbMTIwODAsMTIwODBdLFwibWFwcGVkXCIsWzI0MDQ5XV0sW1sxMjA4MSwxMjA4MV0sXCJtYXBwZWRcIixbMjQwNjJdXSxbWzEyMDgyLDEyMDgyXSxcIm1hcHBlZFwiLFsyNDE3OF1dLFtbMTIwODMsMTIwODNdLFwibWFwcGVkXCIsWzI0MTg2XV0sW1sxMjA4NCwxMjA4NF0sXCJtYXBwZWRcIixbMjQxOTFdXSxbWzEyMDg1LDEyMDg1XSxcIm1hcHBlZFwiLFsyNDMwOF1dLFtbMTIwODYsMTIwODZdLFwibWFwcGVkXCIsWzI0MzE4XV0sW1sxMjA4NywxMjA4N10sXCJtYXBwZWRcIixbMjQzMzFdXSxbWzEyMDg4LDEyMDg4XSxcIm1hcHBlZFwiLFsyNDMzOV1dLFtbMTIwODksMTIwODldLFwibWFwcGVkXCIsWzI0NDAwXV0sW1sxMjA5MCwxMjA5MF0sXCJtYXBwZWRcIixbMjQ0MTddXSxbWzEyMDkxLDEyMDkxXSxcIm1hcHBlZFwiLFsyNDQzNV1dLFtbMTIwOTIsMTIwOTJdLFwibWFwcGVkXCIsWzI0NTE1XV0sW1sxMjA5MywxMjA5M10sXCJtYXBwZWRcIixbMjUwOTZdXSxbWzEyMDk0LDEyMDk0XSxcIm1hcHBlZFwiLFsyNTE0Ml1dLFtbMTIwOTUsMTIwOTVdLFwibWFwcGVkXCIsWzI1MTYzXV0sW1sxMjA5NiwxMjA5Nl0sXCJtYXBwZWRcIixbMjU5MDNdXSxbWzEyMDk3LDEyMDk3XSxcIm1hcHBlZFwiLFsyNTkwOF1dLFtbMTIwOTgsMTIwOThdLFwibWFwcGVkXCIsWzI1OTkxXV0sW1sxMjA5OSwxMjA5OV0sXCJtYXBwZWRcIixbMjYwMDddXSxbWzEyMTAwLDEyMTAwXSxcIm1hcHBlZFwiLFsyNjAyMF1dLFtbMTIxMDEsMTIxMDFdLFwibWFwcGVkXCIsWzI2MDQxXV0sW1sxMjEwMiwxMjEwMl0sXCJtYXBwZWRcIixbMjYwODBdXSxbWzEyMTAzLDEyMTAzXSxcIm1hcHBlZFwiLFsyNjA4NV1dLFtbMTIxMDQsMTIxMDRdLFwibWFwcGVkXCIsWzI2MzUyXV0sW1sxMjEwNSwxMjEwNV0sXCJtYXBwZWRcIixbMjYzNzZdXSxbWzEyMTA2LDEyMTA2XSxcIm1hcHBlZFwiLFsyNjQwOF1dLFtbMTIxMDcsMTIxMDddLFwibWFwcGVkXCIsWzI3NDI0XV0sW1sxMjEwOCwxMjEwOF0sXCJtYXBwZWRcIixbMjc0OTBdXSxbWzEyMTA5LDEyMTA5XSxcIm1hcHBlZFwiLFsyNzUxM11dLFtbMTIxMTAsMTIxMTBdLFwibWFwcGVkXCIsWzI3NTcxXV0sW1sxMjExMSwxMjExMV0sXCJtYXBwZWRcIixbMjc1OTVdXSxbWzEyMTEyLDEyMTEyXSxcIm1hcHBlZFwiLFsyNzYwNF1dLFtbMTIxMTMsMTIxMTNdLFwibWFwcGVkXCIsWzI3NjExXV0sW1sxMjExNCwxMjExNF0sXCJtYXBwZWRcIixbMjc2NjNdXSxbWzEyMTE1LDEyMTE1XSxcIm1hcHBlZFwiLFsyNzY2OF1dLFtbMTIxMTYsMTIxMTZdLFwibWFwcGVkXCIsWzI3NzAwXV0sW1sxMjExNywxMjExN10sXCJtYXBwZWRcIixbMjg3NzldXSxbWzEyMTE4LDEyMTE4XSxcIm1hcHBlZFwiLFsyOTIyNl1dLFtbMTIxMTksMTIxMTldLFwibWFwcGVkXCIsWzI5MjM4XV0sW1sxMjEyMCwxMjEyMF0sXCJtYXBwZWRcIixbMjkyNDNdXSxbWzEyMTIxLDEyMTIxXSxcIm1hcHBlZFwiLFsyOTI0N11dLFtbMTIxMjIsMTIxMjJdLFwibWFwcGVkXCIsWzI5MjU1XV0sW1sxMjEyMywxMjEyM10sXCJtYXBwZWRcIixbMjkyNzNdXSxbWzEyMTI0LDEyMTI0XSxcIm1hcHBlZFwiLFsyOTI3NV1dLFtbMTIxMjUsMTIxMjVdLFwibWFwcGVkXCIsWzI5MzU2XV0sW1sxMjEyNiwxMjEyNl0sXCJtYXBwZWRcIixbMjk1NzJdXSxbWzEyMTI3LDEyMTI3XSxcIm1hcHBlZFwiLFsyOTU3N11dLFtbMTIxMjgsMTIxMjhdLFwibWFwcGVkXCIsWzI5OTE2XV0sW1sxMjEyOSwxMjEyOV0sXCJtYXBwZWRcIixbMjk5MjZdXSxbWzEyMTMwLDEyMTMwXSxcIm1hcHBlZFwiLFsyOTk3Nl1dLFtbMTIxMzEsMTIxMzFdLFwibWFwcGVkXCIsWzI5OTgzXV0sW1sxMjEzMiwxMjEzMl0sXCJtYXBwZWRcIixbMjk5OTJdXSxbWzEyMTMzLDEyMTMzXSxcIm1hcHBlZFwiLFszMDAwMF1dLFtbMTIxMzQsMTIxMzRdLFwibWFwcGVkXCIsWzMwMDkxXV0sW1sxMjEzNSwxMjEzNV0sXCJtYXBwZWRcIixbMzAwOThdXSxbWzEyMTM2LDEyMTM2XSxcIm1hcHBlZFwiLFszMDMyNl1dLFtbMTIxMzcsMTIxMzddLFwibWFwcGVkXCIsWzMwMzMzXV0sW1sxMjEzOCwxMjEzOF0sXCJtYXBwZWRcIixbMzAzODJdXSxbWzEyMTM5LDEyMTM5XSxcIm1hcHBlZFwiLFszMDM5OV1dLFtbMTIxNDAsMTIxNDBdLFwibWFwcGVkXCIsWzMwNDQ2XV0sW1sxMjE0MSwxMjE0MV0sXCJtYXBwZWRcIixbMzA2ODNdXSxbWzEyMTQyLDEyMTQyXSxcIm1hcHBlZFwiLFszMDY5MF1dLFtbMTIxNDMsMTIxNDNdLFwibWFwcGVkXCIsWzMwNzA3XV0sW1sxMjE0NCwxMjE0NF0sXCJtYXBwZWRcIixbMzEwMzRdXSxbWzEyMTQ1LDEyMTQ1XSxcIm1hcHBlZFwiLFszMTE2MF1dLFtbMTIxNDYsMTIxNDZdLFwibWFwcGVkXCIsWzMxMTY2XV0sW1sxMjE0NywxMjE0N10sXCJtYXBwZWRcIixbMzEzNDhdXSxbWzEyMTQ4LDEyMTQ4XSxcIm1hcHBlZFwiLFszMTQzNV1dLFtbMTIxNDksMTIxNDldLFwibWFwcGVkXCIsWzMxNDgxXV0sW1sxMjE1MCwxMjE1MF0sXCJtYXBwZWRcIixbMzE4NTldXSxbWzEyMTUxLDEyMTUxXSxcIm1hcHBlZFwiLFszMTk5Ml1dLFtbMTIxNTIsMTIxNTJdLFwibWFwcGVkXCIsWzMyNTY2XV0sW1sxMjE1MywxMjE1M10sXCJtYXBwZWRcIixbMzI1OTNdXSxbWzEyMTU0LDEyMTU0XSxcIm1hcHBlZFwiLFszMjY1MF1dLFtbMTIxNTUsMTIxNTVdLFwibWFwcGVkXCIsWzMyNzAxXV0sW1sxMjE1NiwxMjE1Nl0sXCJtYXBwZWRcIixbMzI3NjldXSxbWzEyMTU3LDEyMTU3XSxcIm1hcHBlZFwiLFszMjc4MF1dLFtbMTIxNTgsMTIxNThdLFwibWFwcGVkXCIsWzMyNzg2XV0sW1sxMjE1OSwxMjE1OV0sXCJtYXBwZWRcIixbMzI4MTldXSxbWzEyMTYwLDEyMTYwXSxcIm1hcHBlZFwiLFszMjg5NV1dLFtbMTIxNjEsMTIxNjFdLFwibWFwcGVkXCIsWzMyOTA1XV0sW1sxMjE2MiwxMjE2Ml0sXCJtYXBwZWRcIixbMzMyNTFdXSxbWzEyMTYzLDEyMTYzXSxcIm1hcHBlZFwiLFszMzI1OF1dLFtbMTIxNjQsMTIxNjRdLFwibWFwcGVkXCIsWzMzMjY3XV0sW1sxMjE2NSwxMjE2NV0sXCJtYXBwZWRcIixbMzMyNzZdXSxbWzEyMTY2LDEyMTY2XSxcIm1hcHBlZFwiLFszMzI5Ml1dLFtbMTIxNjcsMTIxNjddLFwibWFwcGVkXCIsWzMzMzA3XV0sW1sxMjE2OCwxMjE2OF0sXCJtYXBwZWRcIixbMzMzMTFdXSxbWzEyMTY5LDEyMTY5XSxcIm1hcHBlZFwiLFszMzM5MF1dLFtbMTIxNzAsMTIxNzBdLFwibWFwcGVkXCIsWzMzMzk0XV0sW1sxMjE3MSwxMjE3MV0sXCJtYXBwZWRcIixbMzM0MDBdXSxbWzEyMTcyLDEyMTcyXSxcIm1hcHBlZFwiLFszNDM4MV1dLFtbMTIxNzMsMTIxNzNdLFwibWFwcGVkXCIsWzM0NDExXV0sW1sxMjE3NCwxMjE3NF0sXCJtYXBwZWRcIixbMzQ4ODBdXSxbWzEyMTc1LDEyMTc1XSxcIm1hcHBlZFwiLFszNDg5Ml1dLFtbMTIxNzYsMTIxNzZdLFwibWFwcGVkXCIsWzM0OTE1XV0sW1sxMjE3NywxMjE3N10sXCJtYXBwZWRcIixbMzUxOThdXSxbWzEyMTc4LDEyMTc4XSxcIm1hcHBlZFwiLFszNTIxMV1dLFtbMTIxNzksMTIxNzldLFwibWFwcGVkXCIsWzM1MjgyXV0sW1sxMjE4MCwxMjE4MF0sXCJtYXBwZWRcIixbMzUzMjhdXSxbWzEyMTgxLDEyMTgxXSxcIm1hcHBlZFwiLFszNTg5NV1dLFtbMTIxODIsMTIxODJdLFwibWFwcGVkXCIsWzM1OTEwXV0sW1sxMjE4MywxMjE4M10sXCJtYXBwZWRcIixbMzU5MjVdXSxbWzEyMTg0LDEyMTg0XSxcIm1hcHBlZFwiLFszNTk2MF1dLFtbMTIxODUsMTIxODVdLFwibWFwcGVkXCIsWzM1OTk3XV0sW1sxMjE4NiwxMjE4Nl0sXCJtYXBwZWRcIixbMzYxOTZdXSxbWzEyMTg3LDEyMTg3XSxcIm1hcHBlZFwiLFszNjIwOF1dLFtbMTIxODgsMTIxODhdLFwibWFwcGVkXCIsWzM2Mjc1XV0sW1sxMjE4OSwxMjE4OV0sXCJtYXBwZWRcIixbMzY1MjNdXSxbWzEyMTkwLDEyMTkwXSxcIm1hcHBlZFwiLFszNjU1NF1dLFtbMTIxOTEsMTIxOTFdLFwibWFwcGVkXCIsWzM2NzYzXV0sW1sxMjE5MiwxMjE5Ml0sXCJtYXBwZWRcIixbMzY3ODRdXSxbWzEyMTkzLDEyMTkzXSxcIm1hcHBlZFwiLFszNjc4OV1dLFtbMTIxOTQsMTIxOTRdLFwibWFwcGVkXCIsWzM3MDA5XV0sW1sxMjE5NSwxMjE5NV0sXCJtYXBwZWRcIixbMzcxOTNdXSxbWzEyMTk2LDEyMTk2XSxcIm1hcHBlZFwiLFszNzMxOF1dLFtbMTIxOTcsMTIxOTddLFwibWFwcGVkXCIsWzM3MzI0XV0sW1sxMjE5OCwxMjE5OF0sXCJtYXBwZWRcIixbMzczMjldXSxbWzEyMTk5LDEyMTk5XSxcIm1hcHBlZFwiLFszODI2M11dLFtbMTIyMDAsMTIyMDBdLFwibWFwcGVkXCIsWzM4MjcyXV0sW1sxMjIwMSwxMjIwMV0sXCJtYXBwZWRcIixbMzg0MjhdXSxbWzEyMjAyLDEyMjAyXSxcIm1hcHBlZFwiLFszODU4Ml1dLFtbMTIyMDMsMTIyMDNdLFwibWFwcGVkXCIsWzM4NTg1XV0sW1sxMjIwNCwxMjIwNF0sXCJtYXBwZWRcIixbMzg2MzJdXSxbWzEyMjA1LDEyMjA1XSxcIm1hcHBlZFwiLFszODczN11dLFtbMTIyMDYsMTIyMDZdLFwibWFwcGVkXCIsWzM4NzUwXV0sW1sxMjIwNywxMjIwN10sXCJtYXBwZWRcIixbMzg3NTRdXSxbWzEyMjA4LDEyMjA4XSxcIm1hcHBlZFwiLFszODc2MV1dLFtbMTIyMDksMTIyMDldLFwibWFwcGVkXCIsWzM4ODU5XV0sW1sxMjIxMCwxMjIxMF0sXCJtYXBwZWRcIixbMzg4OTNdXSxbWzEyMjExLDEyMjExXSxcIm1hcHBlZFwiLFszODg5OV1dLFtbMTIyMTIsMTIyMTJdLFwibWFwcGVkXCIsWzM4OTEzXV0sW1sxMjIxMywxMjIxM10sXCJtYXBwZWRcIixbMzkwODBdXSxbWzEyMjE0LDEyMjE0XSxcIm1hcHBlZFwiLFszOTEzMV1dLFtbMTIyMTUsMTIyMTVdLFwibWFwcGVkXCIsWzM5MTM1XV0sW1sxMjIxNiwxMjIxNl0sXCJtYXBwZWRcIixbMzkzMThdXSxbWzEyMjE3LDEyMjE3XSxcIm1hcHBlZFwiLFszOTMyMV1dLFtbMTIyMTgsMTIyMThdLFwibWFwcGVkXCIsWzM5MzQwXV0sW1sxMjIxOSwxMjIxOV0sXCJtYXBwZWRcIixbMzk1OTJdXSxbWzEyMjIwLDEyMjIwXSxcIm1hcHBlZFwiLFszOTY0MF1dLFtbMTIyMjEsMTIyMjFdLFwibWFwcGVkXCIsWzM5NjQ3XV0sW1sxMjIyMiwxMjIyMl0sXCJtYXBwZWRcIixbMzk3MTddXSxbWzEyMjIzLDEyMjIzXSxcIm1hcHBlZFwiLFszOTcyN11dLFtbMTIyMjQsMTIyMjRdLFwibWFwcGVkXCIsWzM5NzMwXV0sW1sxMjIyNSwxMjIyNV0sXCJtYXBwZWRcIixbMzk3NDBdXSxbWzEyMjI2LDEyMjI2XSxcIm1hcHBlZFwiLFszOTc3MF1dLFtbMTIyMjcsMTIyMjddLFwibWFwcGVkXCIsWzQwMTY1XV0sW1sxMjIyOCwxMjIyOF0sXCJtYXBwZWRcIixbNDA1NjVdXSxbWzEyMjI5LDEyMjI5XSxcIm1hcHBlZFwiLFs0MDU3NV1dLFtbMTIyMzAsMTIyMzBdLFwibWFwcGVkXCIsWzQwNjEzXV0sW1sxMjIzMSwxMjIzMV0sXCJtYXBwZWRcIixbNDA2MzVdXSxbWzEyMjMyLDEyMjMyXSxcIm1hcHBlZFwiLFs0MDY0M11dLFtbMTIyMzMsMTIyMzNdLFwibWFwcGVkXCIsWzQwNjUzXV0sW1sxMjIzNCwxMjIzNF0sXCJtYXBwZWRcIixbNDA2NTddXSxbWzEyMjM1LDEyMjM1XSxcIm1hcHBlZFwiLFs0MDY5N11dLFtbMTIyMzYsMTIyMzZdLFwibWFwcGVkXCIsWzQwNzAxXV0sW1sxMjIzNywxMjIzN10sXCJtYXBwZWRcIixbNDA3MThdXSxbWzEyMjM4LDEyMjM4XSxcIm1hcHBlZFwiLFs0MDcyM11dLFtbMTIyMzksMTIyMzldLFwibWFwcGVkXCIsWzQwNzM2XV0sW1sxMjI0MCwxMjI0MF0sXCJtYXBwZWRcIixbNDA3NjNdXSxbWzEyMjQxLDEyMjQxXSxcIm1hcHBlZFwiLFs0MDc3OF1dLFtbMTIyNDIsMTIyNDJdLFwibWFwcGVkXCIsWzQwNzg2XV0sW1sxMjI0MywxMjI0M10sXCJtYXBwZWRcIixbNDA4NDVdXSxbWzEyMjQ0LDEyMjQ0XSxcIm1hcHBlZFwiLFs0MDg2MF1dLFtbMTIyNDUsMTIyNDVdLFwibWFwcGVkXCIsWzQwODY0XV0sW1sxMjI0NiwxMjI3MV0sXCJkaXNhbGxvd2VkXCJdLFtbMTIyNzIsMTIyODNdLFwiZGlzYWxsb3dlZFwiXSxbWzEyMjg0LDEyMjg3XSxcImRpc2FsbG93ZWRcIl0sW1sxMjI4OCwxMjI4OF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzMyXV0sW1sxMjI4OSwxMjI4OV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTIyOTAsMTIyOTBdLFwibWFwcGVkXCIsWzQ2XV0sW1sxMjI5MSwxMjI5Ml0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTIyOTMsMTIyOTVdLFwidmFsaWRcIl0sW1sxMjI5NiwxMjMyOV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTIzMzAsMTIzMzNdLFwidmFsaWRcIl0sW1sxMjMzNCwxMjM0MV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTIzNDIsMTIzNDJdLFwibWFwcGVkXCIsWzEyMzA2XV0sW1sxMjM0MywxMjM0M10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTIzNDQsMTIzNDRdLFwibWFwcGVkXCIsWzIxMzEzXV0sW1sxMjM0NSwxMjM0NV0sXCJtYXBwZWRcIixbMjEzMTZdXSxbWzEyMzQ2LDEyMzQ2XSxcIm1hcHBlZFwiLFsyMTMxN11dLFtbMTIzNDcsMTIzNDddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyMzQ4LDEyMzQ4XSxcInZhbGlkXCJdLFtbMTIzNDksMTIzNDldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyMzUwLDEyMzUwXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMjM1MSwxMjM1MV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTIzNTIsMTIzNTJdLFwiZGlzYWxsb3dlZFwiXSxbWzEyMzUzLDEyNDM2XSxcInZhbGlkXCJdLFtbMTI0MzcsMTI0MzhdLFwidmFsaWRcIl0sW1sxMjQzOSwxMjQ0MF0sXCJkaXNhbGxvd2VkXCJdLFtbMTI0NDEsMTI0NDJdLFwidmFsaWRcIl0sW1sxMjQ0MywxMjQ0M10sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzMyLDEyNDQxXV0sW1sxMjQ0NCwxMjQ0NF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzMyLDEyNDQyXV0sW1sxMjQ0NSwxMjQ0Nl0sXCJ2YWxpZFwiXSxbWzEyNDQ3LDEyNDQ3XSxcIm1hcHBlZFwiLFsxMjQyNCwxMjQyNl1dLFtbMTI0NDgsMTI0NDhdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNDQ5LDEyNTQyXSxcInZhbGlkXCJdLFtbMTI1NDMsMTI1NDNdLFwibWFwcGVkXCIsWzEyNDY3LDEyNDg4XV0sW1sxMjU0NCwxMjU0OF0sXCJkaXNhbGxvd2VkXCJdLFtbMTI1NDksMTI1ODhdLFwidmFsaWRcIl0sW1sxMjU4OSwxMjU4OV0sXCJ2YWxpZFwiXSxbWzEyNTkwLDEyNTkyXSxcImRpc2FsbG93ZWRcIl0sW1sxMjU5MywxMjU5M10sXCJtYXBwZWRcIixbNDM1Ml1dLFtbMTI1OTQsMTI1OTRdLFwibWFwcGVkXCIsWzQzNTNdXSxbWzEyNTk1LDEyNTk1XSxcIm1hcHBlZFwiLFs0NTIyXV0sW1sxMjU5NiwxMjU5Nl0sXCJtYXBwZWRcIixbNDM1NF1dLFtbMTI1OTcsMTI1OTddLFwibWFwcGVkXCIsWzQ1MjRdXSxbWzEyNTk4LDEyNTk4XSxcIm1hcHBlZFwiLFs0NTI1XV0sW1sxMjU5OSwxMjU5OV0sXCJtYXBwZWRcIixbNDM1NV1dLFtbMTI2MDAsMTI2MDBdLFwibWFwcGVkXCIsWzQzNTZdXSxbWzEyNjAxLDEyNjAxXSxcIm1hcHBlZFwiLFs0MzU3XV0sW1sxMjYwMiwxMjYwMl0sXCJtYXBwZWRcIixbNDUyOF1dLFtbMTI2MDMsMTI2MDNdLFwibWFwcGVkXCIsWzQ1MjldXSxbWzEyNjA0LDEyNjA0XSxcIm1hcHBlZFwiLFs0NTMwXV0sW1sxMjYwNSwxMjYwNV0sXCJtYXBwZWRcIixbNDUzMV1dLFtbMTI2MDYsMTI2MDZdLFwibWFwcGVkXCIsWzQ1MzJdXSxbWzEyNjA3LDEyNjA3XSxcIm1hcHBlZFwiLFs0NTMzXV0sW1sxMjYwOCwxMjYwOF0sXCJtYXBwZWRcIixbNDM3OF1dLFtbMTI2MDksMTI2MDldLFwibWFwcGVkXCIsWzQzNThdXSxbWzEyNjEwLDEyNjEwXSxcIm1hcHBlZFwiLFs0MzU5XV0sW1sxMjYxMSwxMjYxMV0sXCJtYXBwZWRcIixbNDM2MF1dLFtbMTI2MTIsMTI2MTJdLFwibWFwcGVkXCIsWzQzODVdXSxbWzEyNjEzLDEyNjEzXSxcIm1hcHBlZFwiLFs0MzYxXV0sW1sxMjYxNCwxMjYxNF0sXCJtYXBwZWRcIixbNDM2Ml1dLFtbMTI2MTUsMTI2MTVdLFwibWFwcGVkXCIsWzQzNjNdXSxbWzEyNjE2LDEyNjE2XSxcIm1hcHBlZFwiLFs0MzY0XV0sW1sxMjYxNywxMjYxN10sXCJtYXBwZWRcIixbNDM2NV1dLFtbMTI2MTgsMTI2MThdLFwibWFwcGVkXCIsWzQzNjZdXSxbWzEyNjE5LDEyNjE5XSxcIm1hcHBlZFwiLFs0MzY3XV0sW1sxMjYyMCwxMjYyMF0sXCJtYXBwZWRcIixbNDM2OF1dLFtbMTI2MjEsMTI2MjFdLFwibWFwcGVkXCIsWzQzNjldXSxbWzEyNjIyLDEyNjIyXSxcIm1hcHBlZFwiLFs0MzcwXV0sW1sxMjYyMywxMjYyM10sXCJtYXBwZWRcIixbNDQ0OV1dLFtbMTI2MjQsMTI2MjRdLFwibWFwcGVkXCIsWzQ0NTBdXSxbWzEyNjI1LDEyNjI1XSxcIm1hcHBlZFwiLFs0NDUxXV0sW1sxMjYyNiwxMjYyNl0sXCJtYXBwZWRcIixbNDQ1Ml1dLFtbMTI2MjcsMTI2MjddLFwibWFwcGVkXCIsWzQ0NTNdXSxbWzEyNjI4LDEyNjI4XSxcIm1hcHBlZFwiLFs0NDU0XV0sW1sxMjYyOSwxMjYyOV0sXCJtYXBwZWRcIixbNDQ1NV1dLFtbMTI2MzAsMTI2MzBdLFwibWFwcGVkXCIsWzQ0NTZdXSxbWzEyNjMxLDEyNjMxXSxcIm1hcHBlZFwiLFs0NDU3XV0sW1sxMjYzMiwxMjYzMl0sXCJtYXBwZWRcIixbNDQ1OF1dLFtbMTI2MzMsMTI2MzNdLFwibWFwcGVkXCIsWzQ0NTldXSxbWzEyNjM0LDEyNjM0XSxcIm1hcHBlZFwiLFs0NDYwXV0sW1sxMjYzNSwxMjYzNV0sXCJtYXBwZWRcIixbNDQ2MV1dLFtbMTI2MzYsMTI2MzZdLFwibWFwcGVkXCIsWzQ0NjJdXSxbWzEyNjM3LDEyNjM3XSxcIm1hcHBlZFwiLFs0NDYzXV0sW1sxMjYzOCwxMjYzOF0sXCJtYXBwZWRcIixbNDQ2NF1dLFtbMTI2MzksMTI2MzldLFwibWFwcGVkXCIsWzQ0NjVdXSxbWzEyNjQwLDEyNjQwXSxcIm1hcHBlZFwiLFs0NDY2XV0sW1sxMjY0MSwxMjY0MV0sXCJtYXBwZWRcIixbNDQ2N11dLFtbMTI2NDIsMTI2NDJdLFwibWFwcGVkXCIsWzQ0NjhdXSxbWzEyNjQzLDEyNjQzXSxcIm1hcHBlZFwiLFs0NDY5XV0sW1sxMjY0NCwxMjY0NF0sXCJkaXNhbGxvd2VkXCJdLFtbMTI2NDUsMTI2NDVdLFwibWFwcGVkXCIsWzQzNzJdXSxbWzEyNjQ2LDEyNjQ2XSxcIm1hcHBlZFwiLFs0MzczXV0sW1sxMjY0NywxMjY0N10sXCJtYXBwZWRcIixbNDU1MV1dLFtbMTI2NDgsMTI2NDhdLFwibWFwcGVkXCIsWzQ1NTJdXSxbWzEyNjQ5LDEyNjQ5XSxcIm1hcHBlZFwiLFs0NTU2XV0sW1sxMjY1MCwxMjY1MF0sXCJtYXBwZWRcIixbNDU1OF1dLFtbMTI2NTEsMTI2NTFdLFwibWFwcGVkXCIsWzQ1NjNdXSxbWzEyNjUyLDEyNjUyXSxcIm1hcHBlZFwiLFs0NTY3XV0sW1sxMjY1MywxMjY1M10sXCJtYXBwZWRcIixbNDU2OV1dLFtbMTI2NTQsMTI2NTRdLFwibWFwcGVkXCIsWzQzODBdXSxbWzEyNjU1LDEyNjU1XSxcIm1hcHBlZFwiLFs0NTczXV0sW1sxMjY1NiwxMjY1Nl0sXCJtYXBwZWRcIixbNDU3NV1dLFtbMTI2NTcsMTI2NTddLFwibWFwcGVkXCIsWzQzODFdXSxbWzEyNjU4LDEyNjU4XSxcIm1hcHBlZFwiLFs0MzgyXV0sW1sxMjY1OSwxMjY1OV0sXCJtYXBwZWRcIixbNDM4NF1dLFtbMTI2NjAsMTI2NjBdLFwibWFwcGVkXCIsWzQzODZdXSxbWzEyNjYxLDEyNjYxXSxcIm1hcHBlZFwiLFs0Mzg3XV0sW1sxMjY2MiwxMjY2Ml0sXCJtYXBwZWRcIixbNDM5MV1dLFtbMTI2NjMsMTI2NjNdLFwibWFwcGVkXCIsWzQzOTNdXSxbWzEyNjY0LDEyNjY0XSxcIm1hcHBlZFwiLFs0Mzk1XV0sW1sxMjY2NSwxMjY2NV0sXCJtYXBwZWRcIixbNDM5Nl1dLFtbMTI2NjYsMTI2NjZdLFwibWFwcGVkXCIsWzQzOTddXSxbWzEyNjY3LDEyNjY3XSxcIm1hcHBlZFwiLFs0Mzk4XV0sW1sxMjY2OCwxMjY2OF0sXCJtYXBwZWRcIixbNDM5OV1dLFtbMTI2NjksMTI2NjldLFwibWFwcGVkXCIsWzQ0MDJdXSxbWzEyNjcwLDEyNjcwXSxcIm1hcHBlZFwiLFs0NDA2XV0sW1sxMjY3MSwxMjY3MV0sXCJtYXBwZWRcIixbNDQxNl1dLFtbMTI2NzIsMTI2NzJdLFwibWFwcGVkXCIsWzQ0MjNdXSxbWzEyNjczLDEyNjczXSxcIm1hcHBlZFwiLFs0NDI4XV0sW1sxMjY3NCwxMjY3NF0sXCJtYXBwZWRcIixbNDU5M11dLFtbMTI2NzUsMTI2NzVdLFwibWFwcGVkXCIsWzQ1OTRdXSxbWzEyNjc2LDEyNjc2XSxcIm1hcHBlZFwiLFs0NDM5XV0sW1sxMjY3NywxMjY3N10sXCJtYXBwZWRcIixbNDQ0MF1dLFtbMTI2NzgsMTI2NzhdLFwibWFwcGVkXCIsWzQ0NDFdXSxbWzEyNjc5LDEyNjc5XSxcIm1hcHBlZFwiLFs0NDg0XV0sW1sxMjY4MCwxMjY4MF0sXCJtYXBwZWRcIixbNDQ4NV1dLFtbMTI2ODEsMTI2ODFdLFwibWFwcGVkXCIsWzQ0ODhdXSxbWzEyNjgyLDEyNjgyXSxcIm1hcHBlZFwiLFs0NDk3XV0sW1sxMjY4MywxMjY4M10sXCJtYXBwZWRcIixbNDQ5OF1dLFtbMTI2ODQsMTI2ODRdLFwibWFwcGVkXCIsWzQ1MDBdXSxbWzEyNjg1LDEyNjg1XSxcIm1hcHBlZFwiLFs0NTEwXV0sW1sxMjY4NiwxMjY4Nl0sXCJtYXBwZWRcIixbNDUxM11dLFtbMTI2ODcsMTI2ODddLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjg4LDEyNjg5XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMjY5MCwxMjY5MF0sXCJtYXBwZWRcIixbMTk5NjhdXSxbWzEyNjkxLDEyNjkxXSxcIm1hcHBlZFwiLFsyMDEwOF1dLFtbMTI2OTIsMTI2OTJdLFwibWFwcGVkXCIsWzE5OTc3XV0sW1sxMjY5MywxMjY5M10sXCJtYXBwZWRcIixbMjIyMzVdXSxbWzEyNjk0LDEyNjk0XSxcIm1hcHBlZFwiLFsxOTk3OF1dLFtbMTI2OTUsMTI2OTVdLFwibWFwcGVkXCIsWzIwMDEzXV0sW1sxMjY5NiwxMjY5Nl0sXCJtYXBwZWRcIixbMTk5NzldXSxbWzEyNjk3LDEyNjk3XSxcIm1hcHBlZFwiLFszMDAwMl1dLFtbMTI2OTgsMTI2OThdLFwibWFwcGVkXCIsWzIwMDU3XV0sW1sxMjY5OSwxMjY5OV0sXCJtYXBwZWRcIixbMTk5OTNdXSxbWzEyNzAwLDEyNzAwXSxcIm1hcHBlZFwiLFsxOTk2OV1dLFtbMTI3MDEsMTI3MDFdLFwibWFwcGVkXCIsWzIyODI1XV0sW1sxMjcwMiwxMjcwMl0sXCJtYXBwZWRcIixbMjIzMjBdXSxbWzEyNzAzLDEyNzAzXSxcIm1hcHBlZFwiLFsyMDE1NF1dLFtbMTI3MDQsMTI3MjddLFwidmFsaWRcIl0sW1sxMjcyOCwxMjczMF0sXCJ2YWxpZFwiXSxbWzEyNzMxLDEyNzM1XSxcImRpc2FsbG93ZWRcIl0sW1sxMjczNiwxMjc1MV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTI3NTIsMTI3NzFdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzcyLDEyNzgzXSxcImRpc2FsbG93ZWRcIl0sW1sxMjc4NCwxMjc5OV0sXCJ2YWxpZFwiXSxbWzEyODAwLDEyODAwXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNDAsNDM1Miw0MV1dLFtbMTI4MDEsMTI4MDFdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCw0MzU0LDQxXV0sW1sxMjgwMiwxMjgwMl0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDQzNTUsNDFdXSxbWzEyODAzLDEyODAzXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNDAsNDM1Nyw0MV1dLFtbMTI4MDQsMTI4MDRdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCw0MzU4LDQxXV0sW1sxMjgwNSwxMjgwNV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDQzNTksNDFdXSxbWzEyODA2LDEyODA2XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNDAsNDM2MSw0MV1dLFtbMTI4MDcsMTI4MDddLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCw0MzYzLDQxXV0sW1sxMjgwOCwxMjgwOF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDQzNjQsNDFdXSxbWzEyODA5LDEyODA5XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNDAsNDM2Niw0MV1dLFtbMTI4MTAsMTI4MTBdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCw0MzY3LDQxXV0sW1sxMjgxMSwxMjgxMV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDQzNjgsNDFdXSxbWzEyODEyLDEyODEyXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNDAsNDM2OSw0MV1dLFtbMTI4MTMsMTI4MTNdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCw0MzcwLDQxXV0sW1sxMjgxNCwxMjgxNF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDQ0MDMyLDQxXV0sW1sxMjgxNSwxMjgxNV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDQ1MjA4LDQxXV0sW1sxMjgxNiwxMjgxNl0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDQ1Nzk2LDQxXV0sW1sxMjgxNywxMjgxN10sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDQ2OTcyLDQxXV0sW1sxMjgxOCwxMjgxOF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDQ3NTYwLDQxXV0sW1sxMjgxOSwxMjgxOV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDQ4MTQ4LDQxXV0sW1sxMjgyMCwxMjgyMF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDQ5MzI0LDQxXV0sW1sxMjgyMSwxMjgyMV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDUwNTAwLDQxXV0sW1sxMjgyMiwxMjgyMl0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDUxMDg4LDQxXV0sW1sxMjgyMywxMjgyM10sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDUyMjY0LDQxXV0sW1sxMjgyNCwxMjgyNF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDUyODUyLDQxXV0sW1sxMjgyNSwxMjgyNV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDUzNDQwLDQxXV0sW1sxMjgyNiwxMjgyNl0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDU0MDI4LDQxXV0sW1sxMjgyNywxMjgyN10sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDU0NjE2LDQxXV0sW1sxMjgyOCwxMjgyOF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDUxNDUyLDQxXV0sW1sxMjgyOSwxMjgyOV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDUwNzI0LDUxMjA0LDQxXV0sW1sxMjgzMCwxMjgzMF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDUwNzI0LDU0OTgwLDQxXV0sW1sxMjgzMSwxMjgzMV0sXCJkaXNhbGxvd2VkXCJdLFtbMTI4MzIsMTI4MzJdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwxOTk2OCw0MV1dLFtbMTI4MzMsMTI4MzNdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwyMDEwOCw0MV1dLFtbMTI4MzQsMTI4MzRdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwxOTk3Nyw0MV1dLFtbMTI4MzUsMTI4MzVdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwyMjIzNSw0MV1dLFtbMTI4MzYsMTI4MzZdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwyMDExNiw0MV1dLFtbMTI4MzcsMTI4MzddLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwyMDg0NSw0MV1dLFtbMTI4MzgsMTI4MzhdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwxOTk3MSw0MV1dLFtbMTI4MzksMTI4MzldLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwyMDg0Myw0MV1dLFtbMTI4NDAsMTI4NDBdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwyMDA2MSw0MV1dLFtbMTI4NDEsMTI4NDFdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwyMTMxMyw0MV1dLFtbMTI4NDIsMTI4NDJdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwyNjM3Niw0MV1dLFtbMTI4NDMsMTI4NDNdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwyODc3OSw0MV1dLFtbMTI4NDQsMTI4NDRdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwyNzcwMCw0MV1dLFtbMTI4NDUsMTI4NDVdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwyNjQwOCw0MV1dLFtbMTI4NDYsMTI4NDZdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwzNzMyOSw0MV1dLFtbMTI4NDcsMTI4NDddLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwyMjMwMyw0MV1dLFtbMTI4NDgsMTI4NDhdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwyNjA4NSw0MV1dLFtbMTI4NDksMTI4NDldLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwyNjY2Niw0MV1dLFtbMTI4NTAsMTI4NTBdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwyNjM3Nyw0MV1dLFtbMTI4NTEsMTI4NTFdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwzMTAzOCw0MV1dLFtbMTI4NTIsMTI4NTJdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwyMTUxNyw0MV1dLFtbMTI4NTMsMTI4NTNdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwyOTMwNSw0MV1dLFtbMTI4NTQsMTI4NTRdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwzNjAwMSw0MV1dLFtbMTI4NTUsMTI4NTVdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwzMTA2OSw0MV1dLFtbMTI4NTYsMTI4NTZdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwyMTE3Miw0MV1dLFtbMTI4NTcsMTI4NTddLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwyMDE5NSw0MV1dLFtbMTI4NTgsMTI4NThdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwyMTYyOCw0MV1dLFtbMTI4NTksMTI4NTldLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwyMzM5OCw0MV1dLFtbMTI4NjAsMTI4NjBdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwzMDQzNSw0MV1dLFtbMTI4NjEsMTI4NjFdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwyMDIyNSw0MV1dLFtbMTI4NjIsMTI4NjJdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwzNjAzOSw0MV1dLFtbMTI4NjMsMTI4NjNdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwyMTMzMiw0MV1dLFtbMTI4NjQsMTI4NjRdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwzMTA4NSw0MV1dLFtbMTI4NjUsMTI4NjVdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwyMDI0MSw0MV1dLFtbMTI4NjYsMTI4NjZdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwzMzI1OCw0MV1dLFtbMTI4NjcsMTI4NjddLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCwzMzI2Nyw0MV1dLFtbMTI4NjgsMTI4NjhdLFwibWFwcGVkXCIsWzIxODM5XV0sW1sxMjg2OSwxMjg2OV0sXCJtYXBwZWRcIixbMjQxODhdXSxbWzEyODcwLDEyODcwXSxcIm1hcHBlZFwiLFsyNTk5MV1dLFtbMTI4NzEsMTI4NzFdLFwibWFwcGVkXCIsWzMxNjMxXV0sW1sxMjg3MiwxMjg3OV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTI4ODAsMTI4ODBdLFwibWFwcGVkXCIsWzExMiwxMTYsMTAxXV0sW1sxMjg4MSwxMjg4MV0sXCJtYXBwZWRcIixbNTAsNDldXSxbWzEyODgyLDEyODgyXSxcIm1hcHBlZFwiLFs1MCw1MF1dLFtbMTI4ODMsMTI4ODNdLFwibWFwcGVkXCIsWzUwLDUxXV0sW1sxMjg4NCwxMjg4NF0sXCJtYXBwZWRcIixbNTAsNTJdXSxbWzEyODg1LDEyODg1XSxcIm1hcHBlZFwiLFs1MCw1M11dLFtbMTI4ODYsMTI4ODZdLFwibWFwcGVkXCIsWzUwLDU0XV0sW1sxMjg4NywxMjg4N10sXCJtYXBwZWRcIixbNTAsNTVdXSxbWzEyODg4LDEyODg4XSxcIm1hcHBlZFwiLFs1MCw1Nl1dLFtbMTI4ODksMTI4ODldLFwibWFwcGVkXCIsWzUwLDU3XV0sW1sxMjg5MCwxMjg5MF0sXCJtYXBwZWRcIixbNTEsNDhdXSxbWzEyODkxLDEyODkxXSxcIm1hcHBlZFwiLFs1MSw0OV1dLFtbMTI4OTIsMTI4OTJdLFwibWFwcGVkXCIsWzUxLDUwXV0sW1sxMjg5MywxMjg5M10sXCJtYXBwZWRcIixbNTEsNTFdXSxbWzEyODk0LDEyODk0XSxcIm1hcHBlZFwiLFs1MSw1Ml1dLFtbMTI4OTUsMTI4OTVdLFwibWFwcGVkXCIsWzUxLDUzXV0sW1sxMjg5NiwxMjg5Nl0sXCJtYXBwZWRcIixbNDM1Ml1dLFtbMTI4OTcsMTI4OTddLFwibWFwcGVkXCIsWzQzNTRdXSxbWzEyODk4LDEyODk4XSxcIm1hcHBlZFwiLFs0MzU1XV0sW1sxMjg5OSwxMjg5OV0sXCJtYXBwZWRcIixbNDM1N11dLFtbMTI5MDAsMTI5MDBdLFwibWFwcGVkXCIsWzQzNThdXSxbWzEyOTAxLDEyOTAxXSxcIm1hcHBlZFwiLFs0MzU5XV0sW1sxMjkwMiwxMjkwMl0sXCJtYXBwZWRcIixbNDM2MV1dLFtbMTI5MDMsMTI5MDNdLFwibWFwcGVkXCIsWzQzNjNdXSxbWzEyOTA0LDEyOTA0XSxcIm1hcHBlZFwiLFs0MzY0XV0sW1sxMjkwNSwxMjkwNV0sXCJtYXBwZWRcIixbNDM2Nl1dLFtbMTI5MDYsMTI5MDZdLFwibWFwcGVkXCIsWzQzNjddXSxbWzEyOTA3LDEyOTA3XSxcIm1hcHBlZFwiLFs0MzY4XV0sW1sxMjkwOCwxMjkwOF0sXCJtYXBwZWRcIixbNDM2OV1dLFtbMTI5MDksMTI5MDldLFwibWFwcGVkXCIsWzQzNzBdXSxbWzEyOTEwLDEyOTEwXSxcIm1hcHBlZFwiLFs0NDAzMl1dLFtbMTI5MTEsMTI5MTFdLFwibWFwcGVkXCIsWzQ1MjA4XV0sW1sxMjkxMiwxMjkxMl0sXCJtYXBwZWRcIixbNDU3OTZdXSxbWzEyOTEzLDEyOTEzXSxcIm1hcHBlZFwiLFs0Njk3Ml1dLFtbMTI5MTQsMTI5MTRdLFwibWFwcGVkXCIsWzQ3NTYwXV0sW1sxMjkxNSwxMjkxNV0sXCJtYXBwZWRcIixbNDgxNDhdXSxbWzEyOTE2LDEyOTE2XSxcIm1hcHBlZFwiLFs0OTMyNF1dLFtbMTI5MTcsMTI5MTddLFwibWFwcGVkXCIsWzUwNTAwXV0sW1sxMjkxOCwxMjkxOF0sXCJtYXBwZWRcIixbNTEwODhdXSxbWzEyOTE5LDEyOTE5XSxcIm1hcHBlZFwiLFs1MjI2NF1dLFtbMTI5MjAsMTI5MjBdLFwibWFwcGVkXCIsWzUyODUyXV0sW1sxMjkyMSwxMjkyMV0sXCJtYXBwZWRcIixbNTM0NDBdXSxbWzEyOTIyLDEyOTIyXSxcIm1hcHBlZFwiLFs1NDAyOF1dLFtbMTI5MjMsMTI5MjNdLFwibWFwcGVkXCIsWzU0NjE2XV0sW1sxMjkyNCwxMjkyNF0sXCJtYXBwZWRcIixbNTIyODAsNDQyNTZdXSxbWzEyOTI1LDEyOTI1XSxcIm1hcHBlZFwiLFs1MTQ1Miw1MTAzMl1dLFtbMTI5MjYsMTI5MjZdLFwibWFwcGVkXCIsWzUwODY0XV0sW1sxMjkyNywxMjkyN10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTI5MjgsMTI5MjhdLFwibWFwcGVkXCIsWzE5OTY4XV0sW1sxMjkyOSwxMjkyOV0sXCJtYXBwZWRcIixbMjAxMDhdXSxbWzEyOTMwLDEyOTMwXSxcIm1hcHBlZFwiLFsxOTk3N11dLFtbMTI5MzEsMTI5MzFdLFwibWFwcGVkXCIsWzIyMjM1XV0sW1sxMjkzMiwxMjkzMl0sXCJtYXBwZWRcIixbMjAxMTZdXSxbWzEyOTMzLDEyOTMzXSxcIm1hcHBlZFwiLFsyMDg0NV1dLFtbMTI5MzQsMTI5MzRdLFwibWFwcGVkXCIsWzE5OTcxXV0sW1sxMjkzNSwxMjkzNV0sXCJtYXBwZWRcIixbMjA4NDNdXSxbWzEyOTM2LDEyOTM2XSxcIm1hcHBlZFwiLFsyMDA2MV1dLFtbMTI5MzcsMTI5MzddLFwibWFwcGVkXCIsWzIxMzEzXV0sW1sxMjkzOCwxMjkzOF0sXCJtYXBwZWRcIixbMjYzNzZdXSxbWzEyOTM5LDEyOTM5XSxcIm1hcHBlZFwiLFsyODc3OV1dLFtbMTI5NDAsMTI5NDBdLFwibWFwcGVkXCIsWzI3NzAwXV0sW1sxMjk0MSwxMjk0MV0sXCJtYXBwZWRcIixbMjY0MDhdXSxbWzEyOTQyLDEyOTQyXSxcIm1hcHBlZFwiLFszNzMyOV1dLFtbMTI5NDMsMTI5NDNdLFwibWFwcGVkXCIsWzIyMzAzXV0sW1sxMjk0NCwxMjk0NF0sXCJtYXBwZWRcIixbMjYwODVdXSxbWzEyOTQ1LDEyOTQ1XSxcIm1hcHBlZFwiLFsyNjY2Nl1dLFtbMTI5NDYsMTI5NDZdLFwibWFwcGVkXCIsWzI2Mzc3XV0sW1sxMjk0NywxMjk0N10sXCJtYXBwZWRcIixbMzEwMzhdXSxbWzEyOTQ4LDEyOTQ4XSxcIm1hcHBlZFwiLFsyMTUxN11dLFtbMTI5NDksMTI5NDldLFwibWFwcGVkXCIsWzI5MzA1XV0sW1sxMjk1MCwxMjk1MF0sXCJtYXBwZWRcIixbMzYwMDFdXSxbWzEyOTUxLDEyOTUxXSxcIm1hcHBlZFwiLFszMTA2OV1dLFtbMTI5NTIsMTI5NTJdLFwibWFwcGVkXCIsWzIxMTcyXV0sW1sxMjk1MywxMjk1M10sXCJtYXBwZWRcIixbMzExOTJdXSxbWzEyOTU0LDEyOTU0XSxcIm1hcHBlZFwiLFszMDAwN11dLFtbMTI5NTUsMTI5NTVdLFwibWFwcGVkXCIsWzIyODk5XV0sW1sxMjk1NiwxMjk1Nl0sXCJtYXBwZWRcIixbMzY5NjldXSxbWzEyOTU3LDEyOTU3XSxcIm1hcHBlZFwiLFsyMDc3OF1dLFtbMTI5NTgsMTI5NThdLFwibWFwcGVkXCIsWzIxMzYwXV0sW1sxMjk1OSwxMjk1OV0sXCJtYXBwZWRcIixbMjc4ODBdXSxbWzEyOTYwLDEyOTYwXSxcIm1hcHBlZFwiLFszODkxN11dLFtbMTI5NjEsMTI5NjFdLFwibWFwcGVkXCIsWzIwMjQxXV0sW1sxMjk2MiwxMjk2Ml0sXCJtYXBwZWRcIixbMjA4ODldXSxbWzEyOTYzLDEyOTYzXSxcIm1hcHBlZFwiLFsyNzQ5MV1dLFtbMTI5NjQsMTI5NjRdLFwibWFwcGVkXCIsWzE5OTc4XV0sW1sxMjk2NSwxMjk2NV0sXCJtYXBwZWRcIixbMjAwMTNdXSxbWzEyOTY2LDEyOTY2XSxcIm1hcHBlZFwiLFsxOTk3OV1dLFtbMTI5NjcsMTI5NjddLFwibWFwcGVkXCIsWzI0MDM4XV0sW1sxMjk2OCwxMjk2OF0sXCJtYXBwZWRcIixbMjE0OTFdXSxbWzEyOTY5LDEyOTY5XSxcIm1hcHBlZFwiLFsyMTMwN11dLFtbMTI5NzAsMTI5NzBdLFwibWFwcGVkXCIsWzIzNDQ3XV0sW1sxMjk3MSwxMjk3MV0sXCJtYXBwZWRcIixbMjMzOThdXSxbWzEyOTcyLDEyOTcyXSxcIm1hcHBlZFwiLFszMDQzNV1dLFtbMTI5NzMsMTI5NzNdLFwibWFwcGVkXCIsWzIwMjI1XV0sW1sxMjk3NCwxMjk3NF0sXCJtYXBwZWRcIixbMzYwMzldXSxbWzEyOTc1LDEyOTc1XSxcIm1hcHBlZFwiLFsyMTMzMl1dLFtbMTI5NzYsMTI5NzZdLFwibWFwcGVkXCIsWzIyODEyXV0sW1sxMjk3NywxMjk3N10sXCJtYXBwZWRcIixbNTEsNTRdXSxbWzEyOTc4LDEyOTc4XSxcIm1hcHBlZFwiLFs1MSw1NV1dLFtbMTI5NzksMTI5NzldLFwibWFwcGVkXCIsWzUxLDU2XV0sW1sxMjk4MCwxMjk4MF0sXCJtYXBwZWRcIixbNTEsNTddXSxbWzEyOTgxLDEyOTgxXSxcIm1hcHBlZFwiLFs1Miw0OF1dLFtbMTI5ODIsMTI5ODJdLFwibWFwcGVkXCIsWzUyLDQ5XV0sW1sxMjk4MywxMjk4M10sXCJtYXBwZWRcIixbNTIsNTBdXSxbWzEyOTg0LDEyOTg0XSxcIm1hcHBlZFwiLFs1Miw1MV1dLFtbMTI5ODUsMTI5ODVdLFwibWFwcGVkXCIsWzUyLDUyXV0sW1sxMjk4NiwxMjk4Nl0sXCJtYXBwZWRcIixbNTIsNTNdXSxbWzEyOTg3LDEyOTg3XSxcIm1hcHBlZFwiLFs1Miw1NF1dLFtbMTI5ODgsMTI5ODhdLFwibWFwcGVkXCIsWzUyLDU1XV0sW1sxMjk4OSwxMjk4OV0sXCJtYXBwZWRcIixbNTIsNTZdXSxbWzEyOTkwLDEyOTkwXSxcIm1hcHBlZFwiLFs1Miw1N11dLFtbMTI5OTEsMTI5OTFdLFwibWFwcGVkXCIsWzUzLDQ4XV0sW1sxMjk5MiwxMjk5Ml0sXCJtYXBwZWRcIixbNDksMjYzNzZdXSxbWzEyOTkzLDEyOTkzXSxcIm1hcHBlZFwiLFs1MCwyNjM3Nl1dLFtbMTI5OTQsMTI5OTRdLFwibWFwcGVkXCIsWzUxLDI2Mzc2XV0sW1sxMjk5NSwxMjk5NV0sXCJtYXBwZWRcIixbNTIsMjYzNzZdXSxbWzEyOTk2LDEyOTk2XSxcIm1hcHBlZFwiLFs1MywyNjM3Nl1dLFtbMTI5OTcsMTI5OTddLFwibWFwcGVkXCIsWzU0LDI2Mzc2XV0sW1sxMjk5OCwxMjk5OF0sXCJtYXBwZWRcIixbNTUsMjYzNzZdXSxbWzEyOTk5LDEyOTk5XSxcIm1hcHBlZFwiLFs1NiwyNjM3Nl1dLFtbMTMwMDAsMTMwMDBdLFwibWFwcGVkXCIsWzU3LDI2Mzc2XV0sW1sxMzAwMSwxMzAwMV0sXCJtYXBwZWRcIixbNDksNDgsMjYzNzZdXSxbWzEzMDAyLDEzMDAyXSxcIm1hcHBlZFwiLFs0OSw0OSwyNjM3Nl1dLFtbMTMwMDMsMTMwMDNdLFwibWFwcGVkXCIsWzQ5LDUwLDI2Mzc2XV0sW1sxMzAwNCwxMzAwNF0sXCJtYXBwZWRcIixbMTA0LDEwM11dLFtbMTMwMDUsMTMwMDVdLFwibWFwcGVkXCIsWzEwMSwxMTQsMTAzXV0sW1sxMzAwNiwxMzAwNl0sXCJtYXBwZWRcIixbMTAxLDExOF1dLFtbMTMwMDcsMTMwMDddLFwibWFwcGVkXCIsWzEwOCwxMTYsMTAwXV0sW1sxMzAwOCwxMzAwOF0sXCJtYXBwZWRcIixbMTI0NTBdXSxbWzEzMDA5LDEzMDA5XSxcIm1hcHBlZFwiLFsxMjQ1Ml1dLFtbMTMwMTAsMTMwMTBdLFwibWFwcGVkXCIsWzEyNDU0XV0sW1sxMzAxMSwxMzAxMV0sXCJtYXBwZWRcIixbMTI0NTZdXSxbWzEzMDEyLDEzMDEyXSxcIm1hcHBlZFwiLFsxMjQ1OF1dLFtbMTMwMTMsMTMwMTNdLFwibWFwcGVkXCIsWzEyNDU5XV0sW1sxMzAxNCwxMzAxNF0sXCJtYXBwZWRcIixbMTI0NjFdXSxbWzEzMDE1LDEzMDE1XSxcIm1hcHBlZFwiLFsxMjQ2M11dLFtbMTMwMTYsMTMwMTZdLFwibWFwcGVkXCIsWzEyNDY1XV0sW1sxMzAxNywxMzAxN10sXCJtYXBwZWRcIixbMTI0NjddXSxbWzEzMDE4LDEzMDE4XSxcIm1hcHBlZFwiLFsxMjQ2OV1dLFtbMTMwMTksMTMwMTldLFwibWFwcGVkXCIsWzEyNDcxXV0sW1sxMzAyMCwxMzAyMF0sXCJtYXBwZWRcIixbMTI0NzNdXSxbWzEzMDIxLDEzMDIxXSxcIm1hcHBlZFwiLFsxMjQ3NV1dLFtbMTMwMjIsMTMwMjJdLFwibWFwcGVkXCIsWzEyNDc3XV0sW1sxMzAyMywxMzAyM10sXCJtYXBwZWRcIixbMTI0NzldXSxbWzEzMDI0LDEzMDI0XSxcIm1hcHBlZFwiLFsxMjQ4MV1dLFtbMTMwMjUsMTMwMjVdLFwibWFwcGVkXCIsWzEyNDg0XV0sW1sxMzAyNiwxMzAyNl0sXCJtYXBwZWRcIixbMTI0ODZdXSxbWzEzMDI3LDEzMDI3XSxcIm1hcHBlZFwiLFsxMjQ4OF1dLFtbMTMwMjgsMTMwMjhdLFwibWFwcGVkXCIsWzEyNDkwXV0sW1sxMzAyOSwxMzAyOV0sXCJtYXBwZWRcIixbMTI0OTFdXSxbWzEzMDMwLDEzMDMwXSxcIm1hcHBlZFwiLFsxMjQ5Ml1dLFtbMTMwMzEsMTMwMzFdLFwibWFwcGVkXCIsWzEyNDkzXV0sW1sxMzAzMiwxMzAzMl0sXCJtYXBwZWRcIixbMTI0OTRdXSxbWzEzMDMzLDEzMDMzXSxcIm1hcHBlZFwiLFsxMjQ5NV1dLFtbMTMwMzQsMTMwMzRdLFwibWFwcGVkXCIsWzEyNDk4XV0sW1sxMzAzNSwxMzAzNV0sXCJtYXBwZWRcIixbMTI1MDFdXSxbWzEzMDM2LDEzMDM2XSxcIm1hcHBlZFwiLFsxMjUwNF1dLFtbMTMwMzcsMTMwMzddLFwibWFwcGVkXCIsWzEyNTA3XV0sW1sxMzAzOCwxMzAzOF0sXCJtYXBwZWRcIixbMTI1MTBdXSxbWzEzMDM5LDEzMDM5XSxcIm1hcHBlZFwiLFsxMjUxMV1dLFtbMTMwNDAsMTMwNDBdLFwibWFwcGVkXCIsWzEyNTEyXV0sW1sxMzA0MSwxMzA0MV0sXCJtYXBwZWRcIixbMTI1MTNdXSxbWzEzMDQyLDEzMDQyXSxcIm1hcHBlZFwiLFsxMjUxNF1dLFtbMTMwNDMsMTMwNDNdLFwibWFwcGVkXCIsWzEyNTE2XV0sW1sxMzA0NCwxMzA0NF0sXCJtYXBwZWRcIixbMTI1MThdXSxbWzEzMDQ1LDEzMDQ1XSxcIm1hcHBlZFwiLFsxMjUyMF1dLFtbMTMwNDYsMTMwNDZdLFwibWFwcGVkXCIsWzEyNTIxXV0sW1sxMzA0NywxMzA0N10sXCJtYXBwZWRcIixbMTI1MjJdXSxbWzEzMDQ4LDEzMDQ4XSxcIm1hcHBlZFwiLFsxMjUyM11dLFtbMTMwNDksMTMwNDldLFwibWFwcGVkXCIsWzEyNTI0XV0sW1sxMzA1MCwxMzA1MF0sXCJtYXBwZWRcIixbMTI1MjVdXSxbWzEzMDUxLDEzMDUxXSxcIm1hcHBlZFwiLFsxMjUyN11dLFtbMTMwNTIsMTMwNTJdLFwibWFwcGVkXCIsWzEyNTI4XV0sW1sxMzA1MywxMzA1M10sXCJtYXBwZWRcIixbMTI1MjldXSxbWzEzMDU0LDEzMDU0XSxcIm1hcHBlZFwiLFsxMjUzMF1dLFtbMTMwNTUsMTMwNTVdLFwiZGlzYWxsb3dlZFwiXSxbWzEzMDU2LDEzMDU2XSxcIm1hcHBlZFwiLFsxMjQ1MCwxMjQ5NywxMjU0MCwxMjQ4OF1dLFtbMTMwNTcsMTMwNTddLFwibWFwcGVkXCIsWzEyNDUwLDEyNTIzLDEyNTAxLDEyNDQ5XV0sW1sxMzA1OCwxMzA1OF0sXCJtYXBwZWRcIixbMTI0NTAsMTI1MzEsMTI1MDYsMTI0NTBdXSxbWzEzMDU5LDEzMDU5XSxcIm1hcHBlZFwiLFsxMjQ1MCwxMjU0MCwxMjUyM11dLFtbMTMwNjAsMTMwNjBdLFwibWFwcGVkXCIsWzEyNDUyLDEyNDkxLDEyNTMxLDEyNDY0XV0sW1sxMzA2MSwxMzA2MV0sXCJtYXBwZWRcIixbMTI0NTIsMTI1MzEsMTI0ODFdXSxbWzEzMDYyLDEzMDYyXSxcIm1hcHBlZFwiLFsxMjQ1NCwxMjQ1NywxMjUzMV1dLFtbMTMwNjMsMTMwNjNdLFwibWFwcGVkXCIsWzEyNDU2LDEyNDczLDEyNDYzLDEyNTQwLDEyNDg5XV0sW1sxMzA2NCwxMzA2NF0sXCJtYXBwZWRcIixbMTI0NTYsMTI1NDAsMTI0NTksMTI1NDBdXSxbWzEzMDY1LDEzMDY1XSxcIm1hcHBlZFwiLFsxMjQ1OCwxMjUzMSwxMjQ3M11dLFtbMTMwNjYsMTMwNjZdLFwibWFwcGVkXCIsWzEyNDU4LDEyNTQwLDEyNTEyXV0sW1sxMzA2NywxMzA2N10sXCJtYXBwZWRcIixbMTI0NTksMTI0NTIsMTI1MjJdXSxbWzEzMDY4LDEzMDY4XSxcIm1hcHBlZFwiLFsxMjQ1OSwxMjUyMSwxMjQ4MywxMjQ4OF1dLFtbMTMwNjksMTMwNjldLFwibWFwcGVkXCIsWzEyNDU5LDEyNTI1LDEyNTIyLDEyNTQwXV0sW1sxMzA3MCwxMzA3MF0sXCJtYXBwZWRcIixbMTI0NjAsMTI1MjUsMTI1MzFdXSxbWzEzMDcxLDEzMDcxXSxcIm1hcHBlZFwiLFsxMjQ2MCwxMjUzMSwxMjUxMF1dLFtbMTMwNzIsMTMwNzJdLFwibWFwcGVkXCIsWzEyNDYyLDEyNDYwXV0sW1sxMzA3MywxMzA3M10sXCJtYXBwZWRcIixbMTI0NjIsMTI0OTEsMTI1NDBdXSxbWzEzMDc0LDEzMDc0XSxcIm1hcHBlZFwiLFsxMjQ2MSwxMjUxNywxMjUyMiwxMjU0MF1dLFtbMTMwNzUsMTMwNzVdLFwibWFwcGVkXCIsWzEyNDYyLDEyNTIzLDEyNDgwLDEyNTQwXV0sW1sxMzA3NiwxMzA3Nl0sXCJtYXBwZWRcIixbMTI0NjEsMTI1MjVdXSxbWzEzMDc3LDEzMDc3XSxcIm1hcHBlZFwiLFsxMjQ2MSwxMjUyNSwxMjQ2NCwxMjUyMSwxMjUxMl1dLFtbMTMwNzgsMTMwNzhdLFwibWFwcGVkXCIsWzEyNDYxLDEyNTI1LDEyNTEzLDEyNTQwLDEyNDg4LDEyNTIzXV0sW1sxMzA3OSwxMzA3OV0sXCJtYXBwZWRcIixbMTI0NjEsMTI1MjUsMTI1MjcsMTI0ODMsMTI0ODhdXSxbWzEzMDgwLDEzMDgwXSxcIm1hcHBlZFwiLFsxMjQ2NCwxMjUyMSwxMjUxMl1dLFtbMTMwODEsMTMwODFdLFwibWFwcGVkXCIsWzEyNDY0LDEyNTIxLDEyNTEyLDEyNDg4LDEyNTMxXV0sW1sxMzA4MiwxMzA4Ml0sXCJtYXBwZWRcIixbMTI0NjMsMTI1MjMsMTI0NzYsMTI0NTIsMTI1MjVdXSxbWzEzMDgzLDEzMDgzXSxcIm1hcHBlZFwiLFsxMjQ2MywxMjUyNSwxMjU0MCwxMjQ5M11dLFtbMTMwODQsMTMwODRdLFwibWFwcGVkXCIsWzEyNDY1LDEyNTQwLDEyNDczXV0sW1sxMzA4NSwxMzA4NV0sXCJtYXBwZWRcIixbMTI0NjcsMTI1MjMsMTI0OTBdXSxbWzEzMDg2LDEzMDg2XSxcIm1hcHBlZFwiLFsxMjQ2NywxMjU0MCwxMjUwOV1dLFtbMTMwODcsMTMwODddLFwibWFwcGVkXCIsWzEyNDY5LDEyNDUyLDEyNDYzLDEyNTIzXV0sW1sxMzA4OCwxMzA4OF0sXCJtYXBwZWRcIixbMTI0NjksMTI1MzEsMTI0ODEsMTI1NDAsMTI1MTJdXSxbWzEzMDg5LDEzMDg5XSxcIm1hcHBlZFwiLFsxMjQ3MSwxMjUyMiwxMjUzMSwxMjQ2NF1dLFtbMTMwOTAsMTMwOTBdLFwibWFwcGVkXCIsWzEyNDc1LDEyNTMxLDEyNDgxXV0sW1sxMzA5MSwxMzA5MV0sXCJtYXBwZWRcIixbMTI0NzUsMTI1MzEsMTI0ODhdXSxbWzEzMDkyLDEzMDkyXSxcIm1hcHBlZFwiLFsxMjQ4MCwxMjU0MCwxMjQ3M11dLFtbMTMwOTMsMTMwOTNdLFwibWFwcGVkXCIsWzEyNDg3LDEyNDcxXV0sW1sxMzA5NCwxMzA5NF0sXCJtYXBwZWRcIixbMTI0ODksMTI1MjNdXSxbWzEzMDk1LDEzMDk1XSxcIm1hcHBlZFwiLFsxMjQ4OCwxMjUzMV1dLFtbMTMwOTYsMTMwOTZdLFwibWFwcGVkXCIsWzEyNDkwLDEyNDk0XV0sW1sxMzA5NywxMzA5N10sXCJtYXBwZWRcIixbMTI0OTQsMTI0ODMsMTI0ODhdXSxbWzEzMDk4LDEzMDk4XSxcIm1hcHBlZFwiLFsxMjQ5NSwxMjQ1MiwxMjQ4NF1dLFtbMTMwOTksMTMwOTldLFwibWFwcGVkXCIsWzEyNDk3LDEyNTQwLDEyNDc1LDEyNTMxLDEyNDg4XV0sW1sxMzEwMCwxMzEwMF0sXCJtYXBwZWRcIixbMTI0OTcsMTI1NDAsMTI0ODRdXSxbWzEzMTAxLDEzMTAxXSxcIm1hcHBlZFwiLFsxMjQ5NiwxMjU0MCwxMjUyNCwxMjUyM11dLFtbMTMxMDIsMTMxMDJdLFwibWFwcGVkXCIsWzEyNTAwLDEyNDUwLDEyNDczLDEyNDg4LDEyNTIzXV0sW1sxMzEwMywxMzEwM10sXCJtYXBwZWRcIixbMTI1MDAsMTI0NjMsMTI1MjNdXSxbWzEzMTA0LDEzMTA0XSxcIm1hcHBlZFwiLFsxMjUwMCwxMjQ2N11dLFtbMTMxMDUsMTMxMDVdLFwibWFwcGVkXCIsWzEyNDk5LDEyNTIzXV0sW1sxMzEwNiwxMzEwNl0sXCJtYXBwZWRcIixbMTI1MDEsMTI0NDksMTI1MjEsMTI0ODMsMTI0ODldXSxbWzEzMTA3LDEzMTA3XSxcIm1hcHBlZFwiLFsxMjUwMSwxMjQ1MSwxMjU0MCwxMjQ4OF1dLFtbMTMxMDgsMTMxMDhdLFwibWFwcGVkXCIsWzEyNTAyLDEyNDgzLDEyNDcxLDEyNDU1LDEyNTIzXV0sW1sxMzEwOSwxMzEwOV0sXCJtYXBwZWRcIixbMTI1MDEsMTI1MjEsMTI1MzFdXSxbWzEzMTEwLDEzMTEwXSxcIm1hcHBlZFwiLFsxMjUwNCwxMjQ2MywxMjQ3OSwxMjU0MCwxMjUyM11dLFtbMTMxMTEsMTMxMTFdLFwibWFwcGVkXCIsWzEyNTA2LDEyNDc3XV0sW1sxMzExMiwxMzExMl0sXCJtYXBwZWRcIixbMTI1MDYsMTI0OTEsMTI0OThdXSxbWzEzMTEzLDEzMTEzXSxcIm1hcHBlZFwiLFsxMjUwNCwxMjUyMywxMjQ4NF1dLFtbMTMxMTQsMTMxMTRdLFwibWFwcGVkXCIsWzEyNTA2LDEyNTMxLDEyNDczXV0sW1sxMzExNSwxMzExNV0sXCJtYXBwZWRcIixbMTI1MDYsMTI1NDAsMTI0NzJdXSxbWzEzMTE2LDEzMTE2XSxcIm1hcHBlZFwiLFsxMjUwNSwxMjU0MCwxMjQ3OV1dLFtbMTMxMTcsMTMxMTddLFwibWFwcGVkXCIsWzEyNTA5LDEyNDUyLDEyNTMxLDEyNDg4XV0sW1sxMzExOCwxMzExOF0sXCJtYXBwZWRcIixbMTI1MDgsMTI1MjMsMTI0ODhdXSxbWzEzMTE5LDEzMTE5XSxcIm1hcHBlZFwiLFsxMjUwNywxMjUzMV1dLFtbMTMxMjAsMTMxMjBdLFwibWFwcGVkXCIsWzEyNTA5LDEyNTMxLDEyNDg5XV0sW1sxMzEyMSwxMzEyMV0sXCJtYXBwZWRcIixbMTI1MDcsMTI1NDAsMTI1MjNdXSxbWzEzMTIyLDEzMTIyXSxcIm1hcHBlZFwiLFsxMjUwNywxMjU0MCwxMjUzMV1dLFtbMTMxMjMsMTMxMjNdLFwibWFwcGVkXCIsWzEyNTEwLDEyNDUyLDEyNDYzLDEyNTI1XV0sW1sxMzEyNCwxMzEyNF0sXCJtYXBwZWRcIixbMTI1MTAsMTI0NTIsMTI1MjNdXSxbWzEzMTI1LDEzMTI1XSxcIm1hcHBlZFwiLFsxMjUxMCwxMjQ4MywxMjQ5NV1dLFtbMTMxMjYsMTMxMjZdLFwibWFwcGVkXCIsWzEyNTEwLDEyNTIzLDEyNDYzXV0sW1sxMzEyNywxMzEyN10sXCJtYXBwZWRcIixbMTI1MTAsMTI1MzEsMTI0NzEsMTI1MTksMTI1MzFdXSxbWzEzMTI4LDEzMTI4XSxcIm1hcHBlZFwiLFsxMjUxMSwxMjQ2MywxMjUyNSwxMjUzMV1dLFtbMTMxMjksMTMxMjldLFwibWFwcGVkXCIsWzEyNTExLDEyNTIyXV0sW1sxMzEzMCwxMzEzMF0sXCJtYXBwZWRcIixbMTI1MTEsMTI1MjIsMTI0OTYsMTI1NDAsMTI1MjNdXSxbWzEzMTMxLDEzMTMxXSxcIm1hcHBlZFwiLFsxMjUxMywxMjQ2MF1dLFtbMTMxMzIsMTMxMzJdLFwibWFwcGVkXCIsWzEyNTEzLDEyNDYwLDEyNDg4LDEyNTMxXV0sW1sxMzEzMywxMzEzM10sXCJtYXBwZWRcIixbMTI1MTMsMTI1NDAsMTI0ODgsMTI1MjNdXSxbWzEzMTM0LDEzMTM0XSxcIm1hcHBlZFwiLFsxMjUxNiwxMjU0MCwxMjQ4OV1dLFtbMTMxMzUsMTMxMzVdLFwibWFwcGVkXCIsWzEyNTE2LDEyNTQwLDEyNTIzXV0sW1sxMzEzNiwxMzEzNl0sXCJtYXBwZWRcIixbMTI1MTgsMTI0NTAsMTI1MzFdXSxbWzEzMTM3LDEzMTM3XSxcIm1hcHBlZFwiLFsxMjUyMiwxMjQ4MywxMjQ4OCwxMjUyM11dLFtbMTMxMzgsMTMxMzhdLFwibWFwcGVkXCIsWzEyNTIyLDEyNTIxXV0sW1sxMzEzOSwxMzEzOV0sXCJtYXBwZWRcIixbMTI1MjMsMTI1MDAsMTI1NDBdXSxbWzEzMTQwLDEzMTQwXSxcIm1hcHBlZFwiLFsxMjUyMywxMjU0MCwxMjUwMiwxMjUyM11dLFtbMTMxNDEsMTMxNDFdLFwibWFwcGVkXCIsWzEyNTI0LDEyNTEyXV0sW1sxMzE0MiwxMzE0Ml0sXCJtYXBwZWRcIixbMTI1MjQsMTI1MzEsMTI0ODgsMTI0NjYsMTI1MzFdXSxbWzEzMTQzLDEzMTQzXSxcIm1hcHBlZFwiLFsxMjUyNywxMjQ4MywxMjQ4OF1dLFtbMTMxNDQsMTMxNDRdLFwibWFwcGVkXCIsWzQ4LDI4ODU3XV0sW1sxMzE0NSwxMzE0NV0sXCJtYXBwZWRcIixbNDksMjg4NTddXSxbWzEzMTQ2LDEzMTQ2XSxcIm1hcHBlZFwiLFs1MCwyODg1N11dLFtbMTMxNDcsMTMxNDddLFwibWFwcGVkXCIsWzUxLDI4ODU3XV0sW1sxMzE0OCwxMzE0OF0sXCJtYXBwZWRcIixbNTIsMjg4NTddXSxbWzEzMTQ5LDEzMTQ5XSxcIm1hcHBlZFwiLFs1MywyODg1N11dLFtbMTMxNTAsMTMxNTBdLFwibWFwcGVkXCIsWzU0LDI4ODU3XV0sW1sxMzE1MSwxMzE1MV0sXCJtYXBwZWRcIixbNTUsMjg4NTddXSxbWzEzMTUyLDEzMTUyXSxcIm1hcHBlZFwiLFs1NiwyODg1N11dLFtbMTMxNTMsMTMxNTNdLFwibWFwcGVkXCIsWzU3LDI4ODU3XV0sW1sxMzE1NCwxMzE1NF0sXCJtYXBwZWRcIixbNDksNDgsMjg4NTddXSxbWzEzMTU1LDEzMTU1XSxcIm1hcHBlZFwiLFs0OSw0OSwyODg1N11dLFtbMTMxNTYsMTMxNTZdLFwibWFwcGVkXCIsWzQ5LDUwLDI4ODU3XV0sW1sxMzE1NywxMzE1N10sXCJtYXBwZWRcIixbNDksNTEsMjg4NTddXSxbWzEzMTU4LDEzMTU4XSxcIm1hcHBlZFwiLFs0OSw1MiwyODg1N11dLFtbMTMxNTksMTMxNTldLFwibWFwcGVkXCIsWzQ5LDUzLDI4ODU3XV0sW1sxMzE2MCwxMzE2MF0sXCJtYXBwZWRcIixbNDksNTQsMjg4NTddXSxbWzEzMTYxLDEzMTYxXSxcIm1hcHBlZFwiLFs0OSw1NSwyODg1N11dLFtbMTMxNjIsMTMxNjJdLFwibWFwcGVkXCIsWzQ5LDU2LDI4ODU3XV0sW1sxMzE2MywxMzE2M10sXCJtYXBwZWRcIixbNDksNTcsMjg4NTddXSxbWzEzMTY0LDEzMTY0XSxcIm1hcHBlZFwiLFs1MCw0OCwyODg1N11dLFtbMTMxNjUsMTMxNjVdLFwibWFwcGVkXCIsWzUwLDQ5LDI4ODU3XV0sW1sxMzE2NiwxMzE2Nl0sXCJtYXBwZWRcIixbNTAsNTAsMjg4NTddXSxbWzEzMTY3LDEzMTY3XSxcIm1hcHBlZFwiLFs1MCw1MSwyODg1N11dLFtbMTMxNjgsMTMxNjhdLFwibWFwcGVkXCIsWzUwLDUyLDI4ODU3XV0sW1sxMzE2OSwxMzE2OV0sXCJtYXBwZWRcIixbMTA0LDExMiw5N11dLFtbMTMxNzAsMTMxNzBdLFwibWFwcGVkXCIsWzEwMCw5N11dLFtbMTMxNzEsMTMxNzFdLFwibWFwcGVkXCIsWzk3LDExN11dLFtbMTMxNzIsMTMxNzJdLFwibWFwcGVkXCIsWzk4LDk3LDExNF1dLFtbMTMxNzMsMTMxNzNdLFwibWFwcGVkXCIsWzExMSwxMThdXSxbWzEzMTc0LDEzMTc0XSxcIm1hcHBlZFwiLFsxMTIsOTldXSxbWzEzMTc1LDEzMTc1XSxcIm1hcHBlZFwiLFsxMDAsMTA5XV0sW1sxMzE3NiwxMzE3Nl0sXCJtYXBwZWRcIixbMTAwLDEwOSw1MF1dLFtbMTMxNzcsMTMxNzddLFwibWFwcGVkXCIsWzEwMCwxMDksNTFdXSxbWzEzMTc4LDEzMTc4XSxcIm1hcHBlZFwiLFsxMDUsMTE3XV0sW1sxMzE3OSwxMzE3OV0sXCJtYXBwZWRcIixbMjQxNzksMjUxMDRdXSxbWzEzMTgwLDEzMTgwXSxcIm1hcHBlZFwiLFsyNjE1NywyMTY0NF1dLFtbMTMxODEsMTMxODFdLFwibWFwcGVkXCIsWzIyODIzLDI3NDkxXV0sW1sxMzE4MiwxMzE4Ml0sXCJtYXBwZWRcIixbMjYxMjYsMjc4MzVdXSxbWzEzMTgzLDEzMTgzXSxcIm1hcHBlZFwiLFsyNjY2NiwyNDMzNSwyMDI1MCwzMTAzOF1dLFtbMTMxODQsMTMxODRdLFwibWFwcGVkXCIsWzExMiw5N11dLFtbMTMxODUsMTMxODVdLFwibWFwcGVkXCIsWzExMCw5N11dLFtbMTMxODYsMTMxODZdLFwibWFwcGVkXCIsWzk1Niw5N11dLFtbMTMxODcsMTMxODddLFwibWFwcGVkXCIsWzEwOSw5N11dLFtbMTMxODgsMTMxODhdLFwibWFwcGVkXCIsWzEwNyw5N11dLFtbMTMxODksMTMxODldLFwibWFwcGVkXCIsWzEwNyw5OF1dLFtbMTMxOTAsMTMxOTBdLFwibWFwcGVkXCIsWzEwOSw5OF1dLFtbMTMxOTEsMTMxOTFdLFwibWFwcGVkXCIsWzEwMyw5OF1dLFtbMTMxOTIsMTMxOTJdLFwibWFwcGVkXCIsWzk5LDk3LDEwOF1dLFtbMTMxOTMsMTMxOTNdLFwibWFwcGVkXCIsWzEwNyw5OSw5NywxMDhdXSxbWzEzMTk0LDEzMTk0XSxcIm1hcHBlZFwiLFsxMTIsMTAyXV0sW1sxMzE5NSwxMzE5NV0sXCJtYXBwZWRcIixbMTEwLDEwMl1dLFtbMTMxOTYsMTMxOTZdLFwibWFwcGVkXCIsWzk1NiwxMDJdXSxbWzEzMTk3LDEzMTk3XSxcIm1hcHBlZFwiLFs5NTYsMTAzXV0sW1sxMzE5OCwxMzE5OF0sXCJtYXBwZWRcIixbMTA5LDEwM11dLFtbMTMxOTksMTMxOTldLFwibWFwcGVkXCIsWzEwNywxMDNdXSxbWzEzMjAwLDEzMjAwXSxcIm1hcHBlZFwiLFsxMDQsMTIyXV0sW1sxMzIwMSwxMzIwMV0sXCJtYXBwZWRcIixbMTA3LDEwNCwxMjJdXSxbWzEzMjAyLDEzMjAyXSxcIm1hcHBlZFwiLFsxMDksMTA0LDEyMl1dLFtbMTMyMDMsMTMyMDNdLFwibWFwcGVkXCIsWzEwMywxMDQsMTIyXV0sW1sxMzIwNCwxMzIwNF0sXCJtYXBwZWRcIixbMTE2LDEwNCwxMjJdXSxbWzEzMjA1LDEzMjA1XSxcIm1hcHBlZFwiLFs5NTYsMTA4XV0sW1sxMzIwNiwxMzIwNl0sXCJtYXBwZWRcIixbMTA5LDEwOF1dLFtbMTMyMDcsMTMyMDddLFwibWFwcGVkXCIsWzEwMCwxMDhdXSxbWzEzMjA4LDEzMjA4XSxcIm1hcHBlZFwiLFsxMDcsMTA4XV0sW1sxMzIwOSwxMzIwOV0sXCJtYXBwZWRcIixbMTAyLDEwOV1dLFtbMTMyMTAsMTMyMTBdLFwibWFwcGVkXCIsWzExMCwxMDldXSxbWzEzMjExLDEzMjExXSxcIm1hcHBlZFwiLFs5NTYsMTA5XV0sW1sxMzIxMiwxMzIxMl0sXCJtYXBwZWRcIixbMTA5LDEwOV1dLFtbMTMyMTMsMTMyMTNdLFwibWFwcGVkXCIsWzk5LDEwOV1dLFtbMTMyMTQsMTMyMTRdLFwibWFwcGVkXCIsWzEwNywxMDldXSxbWzEzMjE1LDEzMjE1XSxcIm1hcHBlZFwiLFsxMDksMTA5LDUwXV0sW1sxMzIxNiwxMzIxNl0sXCJtYXBwZWRcIixbOTksMTA5LDUwXV0sW1sxMzIxNywxMzIxN10sXCJtYXBwZWRcIixbMTA5LDUwXV0sW1sxMzIxOCwxMzIxOF0sXCJtYXBwZWRcIixbMTA3LDEwOSw1MF1dLFtbMTMyMTksMTMyMTldLFwibWFwcGVkXCIsWzEwOSwxMDksNTFdXSxbWzEzMjIwLDEzMjIwXSxcIm1hcHBlZFwiLFs5OSwxMDksNTFdXSxbWzEzMjIxLDEzMjIxXSxcIm1hcHBlZFwiLFsxMDksNTFdXSxbWzEzMjIyLDEzMjIyXSxcIm1hcHBlZFwiLFsxMDcsMTA5LDUxXV0sW1sxMzIyMywxMzIyM10sXCJtYXBwZWRcIixbMTA5LDg3MjUsMTE1XV0sW1sxMzIyNCwxMzIyNF0sXCJtYXBwZWRcIixbMTA5LDg3MjUsMTE1LDUwXV0sW1sxMzIyNSwxMzIyNV0sXCJtYXBwZWRcIixbMTEyLDk3XV0sW1sxMzIyNiwxMzIyNl0sXCJtYXBwZWRcIixbMTA3LDExMiw5N11dLFtbMTMyMjcsMTMyMjddLFwibWFwcGVkXCIsWzEwOSwxMTIsOTddXSxbWzEzMjI4LDEzMjI4XSxcIm1hcHBlZFwiLFsxMDMsMTEyLDk3XV0sW1sxMzIyOSwxMzIyOV0sXCJtYXBwZWRcIixbMTE0LDk3LDEwMF1dLFtbMTMyMzAsMTMyMzBdLFwibWFwcGVkXCIsWzExNCw5NywxMDAsODcyNSwxMTVdXSxbWzEzMjMxLDEzMjMxXSxcIm1hcHBlZFwiLFsxMTQsOTcsMTAwLDg3MjUsMTE1LDUwXV0sW1sxMzIzMiwxMzIzMl0sXCJtYXBwZWRcIixbMTEyLDExNV1dLFtbMTMyMzMsMTMyMzNdLFwibWFwcGVkXCIsWzExMCwxMTVdXSxbWzEzMjM0LDEzMjM0XSxcIm1hcHBlZFwiLFs5NTYsMTE1XV0sW1sxMzIzNSwxMzIzNV0sXCJtYXBwZWRcIixbMTA5LDExNV1dLFtbMTMyMzYsMTMyMzZdLFwibWFwcGVkXCIsWzExMiwxMThdXSxbWzEzMjM3LDEzMjM3XSxcIm1hcHBlZFwiLFsxMTAsMTE4XV0sW1sxMzIzOCwxMzIzOF0sXCJtYXBwZWRcIixbOTU2LDExOF1dLFtbMTMyMzksMTMyMzldLFwibWFwcGVkXCIsWzEwOSwxMThdXSxbWzEzMjQwLDEzMjQwXSxcIm1hcHBlZFwiLFsxMDcsMTE4XV0sW1sxMzI0MSwxMzI0MV0sXCJtYXBwZWRcIixbMTA5LDExOF1dLFtbMTMyNDIsMTMyNDJdLFwibWFwcGVkXCIsWzExMiwxMTldXSxbWzEzMjQzLDEzMjQzXSxcIm1hcHBlZFwiLFsxMTAsMTE5XV0sW1sxMzI0NCwxMzI0NF0sXCJtYXBwZWRcIixbOTU2LDExOV1dLFtbMTMyNDUsMTMyNDVdLFwibWFwcGVkXCIsWzEwOSwxMTldXSxbWzEzMjQ2LDEzMjQ2XSxcIm1hcHBlZFwiLFsxMDcsMTE5XV0sW1sxMzI0NywxMzI0N10sXCJtYXBwZWRcIixbMTA5LDExOV1dLFtbMTMyNDgsMTMyNDhdLFwibWFwcGVkXCIsWzEwNyw5NjldXSxbWzEzMjQ5LDEzMjQ5XSxcIm1hcHBlZFwiLFsxMDksOTY5XV0sW1sxMzI1MCwxMzI1MF0sXCJkaXNhbGxvd2VkXCJdLFtbMTMyNTEsMTMyNTFdLFwibWFwcGVkXCIsWzk4LDExM11dLFtbMTMyNTIsMTMyNTJdLFwibWFwcGVkXCIsWzk5LDk5XV0sW1sxMzI1MywxMzI1M10sXCJtYXBwZWRcIixbOTksMTAwXV0sW1sxMzI1NCwxMzI1NF0sXCJtYXBwZWRcIixbOTksODcyNSwxMDcsMTAzXV0sW1sxMzI1NSwxMzI1NV0sXCJkaXNhbGxvd2VkXCJdLFtbMTMyNTYsMTMyNTZdLFwibWFwcGVkXCIsWzEwMCw5OF1dLFtbMTMyNTcsMTMyNTddLFwibWFwcGVkXCIsWzEwMywxMjFdXSxbWzEzMjU4LDEzMjU4XSxcIm1hcHBlZFwiLFsxMDQsOTddXSxbWzEzMjU5LDEzMjU5XSxcIm1hcHBlZFwiLFsxMDQsMTEyXV0sW1sxMzI2MCwxMzI2MF0sXCJtYXBwZWRcIixbMTA1LDExMF1dLFtbMTMyNjEsMTMyNjFdLFwibWFwcGVkXCIsWzEwNywxMDddXSxbWzEzMjYyLDEzMjYyXSxcIm1hcHBlZFwiLFsxMDcsMTA5XV0sW1sxMzI2MywxMzI2M10sXCJtYXBwZWRcIixbMTA3LDExNl1dLFtbMTMyNjQsMTMyNjRdLFwibWFwcGVkXCIsWzEwOCwxMDldXSxbWzEzMjY1LDEzMjY1XSxcIm1hcHBlZFwiLFsxMDgsMTEwXV0sW1sxMzI2NiwxMzI2Nl0sXCJtYXBwZWRcIixbMTA4LDExMSwxMDNdXSxbWzEzMjY3LDEzMjY3XSxcIm1hcHBlZFwiLFsxMDgsMTIwXV0sW1sxMzI2OCwxMzI2OF0sXCJtYXBwZWRcIixbMTA5LDk4XV0sW1sxMzI2OSwxMzI2OV0sXCJtYXBwZWRcIixbMTA5LDEwNSwxMDhdXSxbWzEzMjcwLDEzMjcwXSxcIm1hcHBlZFwiLFsxMDksMTExLDEwOF1dLFtbMTMyNzEsMTMyNzFdLFwibWFwcGVkXCIsWzExMiwxMDRdXSxbWzEzMjcyLDEzMjcyXSxcImRpc2FsbG93ZWRcIl0sW1sxMzI3MywxMzI3M10sXCJtYXBwZWRcIixbMTEyLDExMiwxMDldXSxbWzEzMjc0LDEzMjc0XSxcIm1hcHBlZFwiLFsxMTIsMTE0XV0sW1sxMzI3NSwxMzI3NV0sXCJtYXBwZWRcIixbMTE1LDExNF1dLFtbMTMyNzYsMTMyNzZdLFwibWFwcGVkXCIsWzExNSwxMThdXSxbWzEzMjc3LDEzMjc3XSxcIm1hcHBlZFwiLFsxMTksOThdXSxbWzEzMjc4LDEzMjc4XSxcIm1hcHBlZFwiLFsxMTgsODcyNSwxMDldXSxbWzEzMjc5LDEzMjc5XSxcIm1hcHBlZFwiLFs5Nyw4NzI1LDEwOV1dLFtbMTMyODAsMTMyODBdLFwibWFwcGVkXCIsWzQ5LDI2MDg1XV0sW1sxMzI4MSwxMzI4MV0sXCJtYXBwZWRcIixbNTAsMjYwODVdXSxbWzEzMjgyLDEzMjgyXSxcIm1hcHBlZFwiLFs1MSwyNjA4NV1dLFtbMTMyODMsMTMyODNdLFwibWFwcGVkXCIsWzUyLDI2MDg1XV0sW1sxMzI4NCwxMzI4NF0sXCJtYXBwZWRcIixbNTMsMjYwODVdXSxbWzEzMjg1LDEzMjg1XSxcIm1hcHBlZFwiLFs1NCwyNjA4NV1dLFtbMTMyODYsMTMyODZdLFwibWFwcGVkXCIsWzU1LDI2MDg1XV0sW1sxMzI4NywxMzI4N10sXCJtYXBwZWRcIixbNTYsMjYwODVdXSxbWzEzMjg4LDEzMjg4XSxcIm1hcHBlZFwiLFs1NywyNjA4NV1dLFtbMTMyODksMTMyODldLFwibWFwcGVkXCIsWzQ5LDQ4LDI2MDg1XV0sW1sxMzI5MCwxMzI5MF0sXCJtYXBwZWRcIixbNDksNDksMjYwODVdXSxbWzEzMjkxLDEzMjkxXSxcIm1hcHBlZFwiLFs0OSw1MCwyNjA4NV1dLFtbMTMyOTIsMTMyOTJdLFwibWFwcGVkXCIsWzQ5LDUxLDI2MDg1XV0sW1sxMzI5MywxMzI5M10sXCJtYXBwZWRcIixbNDksNTIsMjYwODVdXSxbWzEzMjk0LDEzMjk0XSxcIm1hcHBlZFwiLFs0OSw1MywyNjA4NV1dLFtbMTMyOTUsMTMyOTVdLFwibWFwcGVkXCIsWzQ5LDU0LDI2MDg1XV0sW1sxMzI5NiwxMzI5Nl0sXCJtYXBwZWRcIixbNDksNTUsMjYwODVdXSxbWzEzMjk3LDEzMjk3XSxcIm1hcHBlZFwiLFs0OSw1NiwyNjA4NV1dLFtbMTMyOTgsMTMyOThdLFwibWFwcGVkXCIsWzQ5LDU3LDI2MDg1XV0sW1sxMzI5OSwxMzI5OV0sXCJtYXBwZWRcIixbNTAsNDgsMjYwODVdXSxbWzEzMzAwLDEzMzAwXSxcIm1hcHBlZFwiLFs1MCw0OSwyNjA4NV1dLFtbMTMzMDEsMTMzMDFdLFwibWFwcGVkXCIsWzUwLDUwLDI2MDg1XV0sW1sxMzMwMiwxMzMwMl0sXCJtYXBwZWRcIixbNTAsNTEsMjYwODVdXSxbWzEzMzAzLDEzMzAzXSxcIm1hcHBlZFwiLFs1MCw1MiwyNjA4NV1dLFtbMTMzMDQsMTMzMDRdLFwibWFwcGVkXCIsWzUwLDUzLDI2MDg1XV0sW1sxMzMwNSwxMzMwNV0sXCJtYXBwZWRcIixbNTAsNTQsMjYwODVdXSxbWzEzMzA2LDEzMzA2XSxcIm1hcHBlZFwiLFs1MCw1NSwyNjA4NV1dLFtbMTMzMDcsMTMzMDddLFwibWFwcGVkXCIsWzUwLDU2LDI2MDg1XV0sW1sxMzMwOCwxMzMwOF0sXCJtYXBwZWRcIixbNTAsNTcsMjYwODVdXSxbWzEzMzA5LDEzMzA5XSxcIm1hcHBlZFwiLFs1MSw0OCwyNjA4NV1dLFtbMTMzMTAsMTMzMTBdLFwibWFwcGVkXCIsWzUxLDQ5LDI2MDg1XV0sW1sxMzMxMSwxMzMxMV0sXCJtYXBwZWRcIixbMTAzLDk3LDEwOF1dLFtbMTMzMTIsMTk4OTNdLFwidmFsaWRcIl0sW1sxOTg5NCwxOTkwM10sXCJkaXNhbGxvd2VkXCJdLFtbMTk5MDQsMTk5NjddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzE5OTY4LDQwODY5XSxcInZhbGlkXCJdLFtbNDA4NzAsNDA4OTFdLFwidmFsaWRcIl0sW1s0MDg5Miw0MDg5OV0sXCJ2YWxpZFwiXSxbWzQwOTAwLDQwOTA3XSxcInZhbGlkXCJdLFtbNDA5MDgsNDA5MDhdLFwidmFsaWRcIl0sW1s0MDkwOSw0MDkxN10sXCJ2YWxpZFwiXSxbWzQwOTE4LDQwOTU5XSxcImRpc2FsbG93ZWRcIl0sW1s0MDk2MCw0MjEyNF0sXCJ2YWxpZFwiXSxbWzQyMTI1LDQyMTI3XSxcImRpc2FsbG93ZWRcIl0sW1s0MjEyOCw0MjE0NV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNDIxNDYsNDIxNDddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzQyMTQ4LDQyMTYzXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s0MjE2NCw0MjE2NF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNDIxNjUsNDIxNzZdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzQyMTc3LDQyMTc3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s0MjE3OCw0MjE4MF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNDIxODEsNDIxODFdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzQyMTgyLDQyMTgyXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s0MjE4Myw0MjE5MV0sXCJkaXNhbGxvd2VkXCJdLFtbNDIxOTIsNDIyMzddLFwidmFsaWRcIl0sW1s0MjIzOCw0MjIzOV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNDIyNDAsNDI1MDhdLFwidmFsaWRcIl0sW1s0MjUwOSw0MjUxMV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNDI1MTIsNDI1MzldLFwidmFsaWRcIl0sW1s0MjU0MCw0MjU1OV0sXCJkaXNhbGxvd2VkXCJdLFtbNDI1NjAsNDI1NjBdLFwibWFwcGVkXCIsWzQyNTYxXV0sW1s0MjU2MSw0MjU2MV0sXCJ2YWxpZFwiXSxbWzQyNTYyLDQyNTYyXSxcIm1hcHBlZFwiLFs0MjU2M11dLFtbNDI1NjMsNDI1NjNdLFwidmFsaWRcIl0sW1s0MjU2NCw0MjU2NF0sXCJtYXBwZWRcIixbNDI1NjVdXSxbWzQyNTY1LDQyNTY1XSxcInZhbGlkXCJdLFtbNDI1NjYsNDI1NjZdLFwibWFwcGVkXCIsWzQyNTY3XV0sW1s0MjU2Nyw0MjU2N10sXCJ2YWxpZFwiXSxbWzQyNTY4LDQyNTY4XSxcIm1hcHBlZFwiLFs0MjU2OV1dLFtbNDI1NjksNDI1NjldLFwidmFsaWRcIl0sW1s0MjU3MCw0MjU3MF0sXCJtYXBwZWRcIixbNDI1NzFdXSxbWzQyNTcxLDQyNTcxXSxcInZhbGlkXCJdLFtbNDI1NzIsNDI1NzJdLFwibWFwcGVkXCIsWzQyNTczXV0sW1s0MjU3Myw0MjU3M10sXCJ2YWxpZFwiXSxbWzQyNTc0LDQyNTc0XSxcIm1hcHBlZFwiLFs0MjU3NV1dLFtbNDI1NzUsNDI1NzVdLFwidmFsaWRcIl0sW1s0MjU3Niw0MjU3Nl0sXCJtYXBwZWRcIixbNDI1NzddXSxbWzQyNTc3LDQyNTc3XSxcInZhbGlkXCJdLFtbNDI1NzgsNDI1NzhdLFwibWFwcGVkXCIsWzQyNTc5XV0sW1s0MjU3OSw0MjU3OV0sXCJ2YWxpZFwiXSxbWzQyNTgwLDQyNTgwXSxcIm1hcHBlZFwiLFs0MjU4MV1dLFtbNDI1ODEsNDI1ODFdLFwidmFsaWRcIl0sW1s0MjU4Miw0MjU4Ml0sXCJtYXBwZWRcIixbNDI1ODNdXSxbWzQyNTgzLDQyNTgzXSxcInZhbGlkXCJdLFtbNDI1ODQsNDI1ODRdLFwibWFwcGVkXCIsWzQyNTg1XV0sW1s0MjU4NSw0MjU4NV0sXCJ2YWxpZFwiXSxbWzQyNTg2LDQyNTg2XSxcIm1hcHBlZFwiLFs0MjU4N11dLFtbNDI1ODcsNDI1ODddLFwidmFsaWRcIl0sW1s0MjU4OCw0MjU4OF0sXCJtYXBwZWRcIixbNDI1ODldXSxbWzQyNTg5LDQyNTg5XSxcInZhbGlkXCJdLFtbNDI1OTAsNDI1OTBdLFwibWFwcGVkXCIsWzQyNTkxXV0sW1s0MjU5MSw0MjU5MV0sXCJ2YWxpZFwiXSxbWzQyNTkyLDQyNTkyXSxcIm1hcHBlZFwiLFs0MjU5M11dLFtbNDI1OTMsNDI1OTNdLFwidmFsaWRcIl0sW1s0MjU5NCw0MjU5NF0sXCJtYXBwZWRcIixbNDI1OTVdXSxbWzQyNTk1LDQyNTk1XSxcInZhbGlkXCJdLFtbNDI1OTYsNDI1OTZdLFwibWFwcGVkXCIsWzQyNTk3XV0sW1s0MjU5Nyw0MjU5N10sXCJ2YWxpZFwiXSxbWzQyNTk4LDQyNTk4XSxcIm1hcHBlZFwiLFs0MjU5OV1dLFtbNDI1OTksNDI1OTldLFwidmFsaWRcIl0sW1s0MjYwMCw0MjYwMF0sXCJtYXBwZWRcIixbNDI2MDFdXSxbWzQyNjAxLDQyNjAxXSxcInZhbGlkXCJdLFtbNDI2MDIsNDI2MDJdLFwibWFwcGVkXCIsWzQyNjAzXV0sW1s0MjYwMyw0MjYwM10sXCJ2YWxpZFwiXSxbWzQyNjA0LDQyNjA0XSxcIm1hcHBlZFwiLFs0MjYwNV1dLFtbNDI2MDUsNDI2MDddLFwidmFsaWRcIl0sW1s0MjYwOCw0MjYxMV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNDI2MTIsNDI2MTldLFwidmFsaWRcIl0sW1s0MjYyMCw0MjYyMV0sXCJ2YWxpZFwiXSxbWzQyNjIyLDQyNjIyXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s0MjYyMyw0MjYyM10sXCJ2YWxpZFwiXSxbWzQyNjI0LDQyNjI0XSxcIm1hcHBlZFwiLFs0MjYyNV1dLFtbNDI2MjUsNDI2MjVdLFwidmFsaWRcIl0sW1s0MjYyNiw0MjYyNl0sXCJtYXBwZWRcIixbNDI2MjddXSxbWzQyNjI3LDQyNjI3XSxcInZhbGlkXCJdLFtbNDI2MjgsNDI2MjhdLFwibWFwcGVkXCIsWzQyNjI5XV0sW1s0MjYyOSw0MjYyOV0sXCJ2YWxpZFwiXSxbWzQyNjMwLDQyNjMwXSxcIm1hcHBlZFwiLFs0MjYzMV1dLFtbNDI2MzEsNDI2MzFdLFwidmFsaWRcIl0sW1s0MjYzMiw0MjYzMl0sXCJtYXBwZWRcIixbNDI2MzNdXSxbWzQyNjMzLDQyNjMzXSxcInZhbGlkXCJdLFtbNDI2MzQsNDI2MzRdLFwibWFwcGVkXCIsWzQyNjM1XV0sW1s0MjYzNSw0MjYzNV0sXCJ2YWxpZFwiXSxbWzQyNjM2LDQyNjM2XSxcIm1hcHBlZFwiLFs0MjYzN11dLFtbNDI2MzcsNDI2MzddLFwidmFsaWRcIl0sW1s0MjYzOCw0MjYzOF0sXCJtYXBwZWRcIixbNDI2MzldXSxbWzQyNjM5LDQyNjM5XSxcInZhbGlkXCJdLFtbNDI2NDAsNDI2NDBdLFwibWFwcGVkXCIsWzQyNjQxXV0sW1s0MjY0MSw0MjY0MV0sXCJ2YWxpZFwiXSxbWzQyNjQyLDQyNjQyXSxcIm1hcHBlZFwiLFs0MjY0M11dLFtbNDI2NDMsNDI2NDNdLFwidmFsaWRcIl0sW1s0MjY0NCw0MjY0NF0sXCJtYXBwZWRcIixbNDI2NDVdXSxbWzQyNjQ1LDQyNjQ1XSxcInZhbGlkXCJdLFtbNDI2NDYsNDI2NDZdLFwibWFwcGVkXCIsWzQyNjQ3XV0sW1s0MjY0Nyw0MjY0N10sXCJ2YWxpZFwiXSxbWzQyNjQ4LDQyNjQ4XSxcIm1hcHBlZFwiLFs0MjY0OV1dLFtbNDI2NDksNDI2NDldLFwidmFsaWRcIl0sW1s0MjY1MCw0MjY1MF0sXCJtYXBwZWRcIixbNDI2NTFdXSxbWzQyNjUxLDQyNjUxXSxcInZhbGlkXCJdLFtbNDI2NTIsNDI2NTJdLFwibWFwcGVkXCIsWzEwOThdXSxbWzQyNjUzLDQyNjUzXSxcIm1hcHBlZFwiLFsxMTAwXV0sW1s0MjY1NCw0MjY1NF0sXCJ2YWxpZFwiXSxbWzQyNjU1LDQyNjU1XSxcInZhbGlkXCJdLFtbNDI2NTYsNDI3MjVdLFwidmFsaWRcIl0sW1s0MjcyNiw0MjczNV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNDI3MzYsNDI3MzddLFwidmFsaWRcIl0sW1s0MjczOCw0Mjc0M10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNDI3NDQsNDI3NTFdLFwiZGlzYWxsb3dlZFwiXSxbWzQyNzUyLDQyNzc0XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s0Mjc3NSw0Mjc3OF0sXCJ2YWxpZFwiXSxbWzQyNzc5LDQyNzgzXSxcInZhbGlkXCJdLFtbNDI3ODQsNDI3ODVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzQyNzg2LDQyNzg2XSxcIm1hcHBlZFwiLFs0Mjc4N11dLFtbNDI3ODcsNDI3ODddLFwidmFsaWRcIl0sW1s0Mjc4OCw0Mjc4OF0sXCJtYXBwZWRcIixbNDI3ODldXSxbWzQyNzg5LDQyNzg5XSxcInZhbGlkXCJdLFtbNDI3OTAsNDI3OTBdLFwibWFwcGVkXCIsWzQyNzkxXV0sW1s0Mjc5MSw0Mjc5MV0sXCJ2YWxpZFwiXSxbWzQyNzkyLDQyNzkyXSxcIm1hcHBlZFwiLFs0Mjc5M11dLFtbNDI3OTMsNDI3OTNdLFwidmFsaWRcIl0sW1s0Mjc5NCw0Mjc5NF0sXCJtYXBwZWRcIixbNDI3OTVdXSxbWzQyNzk1LDQyNzk1XSxcInZhbGlkXCJdLFtbNDI3OTYsNDI3OTZdLFwibWFwcGVkXCIsWzQyNzk3XV0sW1s0Mjc5Nyw0Mjc5N10sXCJ2YWxpZFwiXSxbWzQyNzk4LDQyNzk4XSxcIm1hcHBlZFwiLFs0Mjc5OV1dLFtbNDI3OTksNDI4MDFdLFwidmFsaWRcIl0sW1s0MjgwMiw0MjgwMl0sXCJtYXBwZWRcIixbNDI4MDNdXSxbWzQyODAzLDQyODAzXSxcInZhbGlkXCJdLFtbNDI4MDQsNDI4MDRdLFwibWFwcGVkXCIsWzQyODA1XV0sW1s0MjgwNSw0MjgwNV0sXCJ2YWxpZFwiXSxbWzQyODA2LDQyODA2XSxcIm1hcHBlZFwiLFs0MjgwN11dLFtbNDI4MDcsNDI4MDddLFwidmFsaWRcIl0sW1s0MjgwOCw0MjgwOF0sXCJtYXBwZWRcIixbNDI4MDldXSxbWzQyODA5LDQyODA5XSxcInZhbGlkXCJdLFtbNDI4MTAsNDI4MTBdLFwibWFwcGVkXCIsWzQyODExXV0sW1s0MjgxMSw0MjgxMV0sXCJ2YWxpZFwiXSxbWzQyODEyLDQyODEyXSxcIm1hcHBlZFwiLFs0MjgxM11dLFtbNDI4MTMsNDI4MTNdLFwidmFsaWRcIl0sW1s0MjgxNCw0MjgxNF0sXCJtYXBwZWRcIixbNDI4MTVdXSxbWzQyODE1LDQyODE1XSxcInZhbGlkXCJdLFtbNDI4MTYsNDI4MTZdLFwibWFwcGVkXCIsWzQyODE3XV0sW1s0MjgxNyw0MjgxN10sXCJ2YWxpZFwiXSxbWzQyODE4LDQyODE4XSxcIm1hcHBlZFwiLFs0MjgxOV1dLFtbNDI4MTksNDI4MTldLFwidmFsaWRcIl0sW1s0MjgyMCw0MjgyMF0sXCJtYXBwZWRcIixbNDI4MjFdXSxbWzQyODIxLDQyODIxXSxcInZhbGlkXCJdLFtbNDI4MjIsNDI4MjJdLFwibWFwcGVkXCIsWzQyODIzXV0sW1s0MjgyMyw0MjgyM10sXCJ2YWxpZFwiXSxbWzQyODI0LDQyODI0XSxcIm1hcHBlZFwiLFs0MjgyNV1dLFtbNDI4MjUsNDI4MjVdLFwidmFsaWRcIl0sW1s0MjgyNiw0MjgyNl0sXCJtYXBwZWRcIixbNDI4MjddXSxbWzQyODI3LDQyODI3XSxcInZhbGlkXCJdLFtbNDI4MjgsNDI4MjhdLFwibWFwcGVkXCIsWzQyODI5XV0sW1s0MjgyOSw0MjgyOV0sXCJ2YWxpZFwiXSxbWzQyODMwLDQyODMwXSxcIm1hcHBlZFwiLFs0MjgzMV1dLFtbNDI4MzEsNDI4MzFdLFwidmFsaWRcIl0sW1s0MjgzMiw0MjgzMl0sXCJtYXBwZWRcIixbNDI4MzNdXSxbWzQyODMzLDQyODMzXSxcInZhbGlkXCJdLFtbNDI4MzQsNDI4MzRdLFwibWFwcGVkXCIsWzQyODM1XV0sW1s0MjgzNSw0MjgzNV0sXCJ2YWxpZFwiXSxbWzQyODM2LDQyODM2XSxcIm1hcHBlZFwiLFs0MjgzN11dLFtbNDI4MzcsNDI4MzddLFwidmFsaWRcIl0sW1s0MjgzOCw0MjgzOF0sXCJtYXBwZWRcIixbNDI4MzldXSxbWzQyODM5LDQyODM5XSxcInZhbGlkXCJdLFtbNDI4NDAsNDI4NDBdLFwibWFwcGVkXCIsWzQyODQxXV0sW1s0Mjg0MSw0Mjg0MV0sXCJ2YWxpZFwiXSxbWzQyODQyLDQyODQyXSxcIm1hcHBlZFwiLFs0Mjg0M11dLFtbNDI4NDMsNDI4NDNdLFwidmFsaWRcIl0sW1s0Mjg0NCw0Mjg0NF0sXCJtYXBwZWRcIixbNDI4NDVdXSxbWzQyODQ1LDQyODQ1XSxcInZhbGlkXCJdLFtbNDI4NDYsNDI4NDZdLFwibWFwcGVkXCIsWzQyODQ3XV0sW1s0Mjg0Nyw0Mjg0N10sXCJ2YWxpZFwiXSxbWzQyODQ4LDQyODQ4XSxcIm1hcHBlZFwiLFs0Mjg0OV1dLFtbNDI4NDksNDI4NDldLFwidmFsaWRcIl0sW1s0Mjg1MCw0Mjg1MF0sXCJtYXBwZWRcIixbNDI4NTFdXSxbWzQyODUxLDQyODUxXSxcInZhbGlkXCJdLFtbNDI4NTIsNDI4NTJdLFwibWFwcGVkXCIsWzQyODUzXV0sW1s0Mjg1Myw0Mjg1M10sXCJ2YWxpZFwiXSxbWzQyODU0LDQyODU0XSxcIm1hcHBlZFwiLFs0Mjg1NV1dLFtbNDI4NTUsNDI4NTVdLFwidmFsaWRcIl0sW1s0Mjg1Niw0Mjg1Nl0sXCJtYXBwZWRcIixbNDI4NTddXSxbWzQyODU3LDQyODU3XSxcInZhbGlkXCJdLFtbNDI4NTgsNDI4NThdLFwibWFwcGVkXCIsWzQyODU5XV0sW1s0Mjg1OSw0Mjg1OV0sXCJ2YWxpZFwiXSxbWzQyODYwLDQyODYwXSxcIm1hcHBlZFwiLFs0Mjg2MV1dLFtbNDI4NjEsNDI4NjFdLFwidmFsaWRcIl0sW1s0Mjg2Miw0Mjg2Ml0sXCJtYXBwZWRcIixbNDI4NjNdXSxbWzQyODYzLDQyODYzXSxcInZhbGlkXCJdLFtbNDI4NjQsNDI4NjRdLFwibWFwcGVkXCIsWzQyODYzXV0sW1s0Mjg2NSw0Mjg3Ml0sXCJ2YWxpZFwiXSxbWzQyODczLDQyODczXSxcIm1hcHBlZFwiLFs0Mjg3NF1dLFtbNDI4NzQsNDI4NzRdLFwidmFsaWRcIl0sW1s0Mjg3NSw0Mjg3NV0sXCJtYXBwZWRcIixbNDI4NzZdXSxbWzQyODc2LDQyODc2XSxcInZhbGlkXCJdLFtbNDI4NzcsNDI4NzddLFwibWFwcGVkXCIsWzc1NDVdXSxbWzQyODc4LDQyODc4XSxcIm1hcHBlZFwiLFs0Mjg3OV1dLFtbNDI4NzksNDI4NzldLFwidmFsaWRcIl0sW1s0Mjg4MCw0Mjg4MF0sXCJtYXBwZWRcIixbNDI4ODFdXSxbWzQyODgxLDQyODgxXSxcInZhbGlkXCJdLFtbNDI4ODIsNDI4ODJdLFwibWFwcGVkXCIsWzQyODgzXV0sW1s0Mjg4Myw0Mjg4M10sXCJ2YWxpZFwiXSxbWzQyODg0LDQyODg0XSxcIm1hcHBlZFwiLFs0Mjg4NV1dLFtbNDI4ODUsNDI4ODVdLFwidmFsaWRcIl0sW1s0Mjg4Niw0Mjg4Nl0sXCJtYXBwZWRcIixbNDI4ODddXSxbWzQyODg3LDQyODg4XSxcInZhbGlkXCJdLFtbNDI4ODksNDI4OTBdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzQyODkxLDQyODkxXSxcIm1hcHBlZFwiLFs0Mjg5Ml1dLFtbNDI4OTIsNDI4OTJdLFwidmFsaWRcIl0sW1s0Mjg5Myw0Mjg5M10sXCJtYXBwZWRcIixbNjEzXV0sW1s0Mjg5NCw0Mjg5NF0sXCJ2YWxpZFwiXSxbWzQyODk1LDQyODk1XSxcInZhbGlkXCJdLFtbNDI4OTYsNDI4OTZdLFwibWFwcGVkXCIsWzQyODk3XV0sW1s0Mjg5Nyw0Mjg5N10sXCJ2YWxpZFwiXSxbWzQyODk4LDQyODk4XSxcIm1hcHBlZFwiLFs0Mjg5OV1dLFtbNDI4OTksNDI4OTldLFwidmFsaWRcIl0sW1s0MjkwMCw0MjkwMV0sXCJ2YWxpZFwiXSxbWzQyOTAyLDQyOTAyXSxcIm1hcHBlZFwiLFs0MjkwM11dLFtbNDI5MDMsNDI5MDNdLFwidmFsaWRcIl0sW1s0MjkwNCw0MjkwNF0sXCJtYXBwZWRcIixbNDI5MDVdXSxbWzQyOTA1LDQyOTA1XSxcInZhbGlkXCJdLFtbNDI5MDYsNDI5MDZdLFwibWFwcGVkXCIsWzQyOTA3XV0sW1s0MjkwNyw0MjkwN10sXCJ2YWxpZFwiXSxbWzQyOTA4LDQyOTA4XSxcIm1hcHBlZFwiLFs0MjkwOV1dLFtbNDI5MDksNDI5MDldLFwidmFsaWRcIl0sW1s0MjkxMCw0MjkxMF0sXCJtYXBwZWRcIixbNDI5MTFdXSxbWzQyOTExLDQyOTExXSxcInZhbGlkXCJdLFtbNDI5MTIsNDI5MTJdLFwibWFwcGVkXCIsWzQyOTEzXV0sW1s0MjkxMyw0MjkxM10sXCJ2YWxpZFwiXSxbWzQyOTE0LDQyOTE0XSxcIm1hcHBlZFwiLFs0MjkxNV1dLFtbNDI5MTUsNDI5MTVdLFwidmFsaWRcIl0sW1s0MjkxNiw0MjkxNl0sXCJtYXBwZWRcIixbNDI5MTddXSxbWzQyOTE3LDQyOTE3XSxcInZhbGlkXCJdLFtbNDI5MTgsNDI5MThdLFwibWFwcGVkXCIsWzQyOTE5XV0sW1s0MjkxOSw0MjkxOV0sXCJ2YWxpZFwiXSxbWzQyOTIwLDQyOTIwXSxcIm1hcHBlZFwiLFs0MjkyMV1dLFtbNDI5MjEsNDI5MjFdLFwidmFsaWRcIl0sW1s0MjkyMiw0MjkyMl0sXCJtYXBwZWRcIixbNjE0XV0sW1s0MjkyMyw0MjkyM10sXCJtYXBwZWRcIixbNjA0XV0sW1s0MjkyNCw0MjkyNF0sXCJtYXBwZWRcIixbNjA5XV0sW1s0MjkyNSw0MjkyNV0sXCJtYXBwZWRcIixbNjIwXV0sW1s0MjkyNiw0MjkyN10sXCJkaXNhbGxvd2VkXCJdLFtbNDI5MjgsNDI5MjhdLFwibWFwcGVkXCIsWzY3MF1dLFtbNDI5MjksNDI5MjldLFwibWFwcGVkXCIsWzY0N11dLFtbNDI5MzAsNDI5MzBdLFwibWFwcGVkXCIsWzY2OV1dLFtbNDI5MzEsNDI5MzFdLFwibWFwcGVkXCIsWzQzODU5XV0sW1s0MjkzMiw0MjkzMl0sXCJtYXBwZWRcIixbNDI5MzNdXSxbWzQyOTMzLDQyOTMzXSxcInZhbGlkXCJdLFtbNDI5MzQsNDI5MzRdLFwibWFwcGVkXCIsWzQyOTM1XV0sW1s0MjkzNSw0MjkzNV0sXCJ2YWxpZFwiXSxbWzQyOTM2LDQyOTk4XSxcImRpc2FsbG93ZWRcIl0sW1s0Mjk5OSw0Mjk5OV0sXCJ2YWxpZFwiXSxbWzQzMDAwLDQzMDAwXSxcIm1hcHBlZFwiLFsyOTVdXSxbWzQzMDAxLDQzMDAxXSxcIm1hcHBlZFwiLFszMzldXSxbWzQzMDAyLDQzMDAyXSxcInZhbGlkXCJdLFtbNDMwMDMsNDMwMDddLFwidmFsaWRcIl0sW1s0MzAwOCw0MzA0N10sXCJ2YWxpZFwiXSxbWzQzMDQ4LDQzMDUxXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s0MzA1Miw0MzA1NV0sXCJkaXNhbGxvd2VkXCJdLFtbNDMwNTYsNDMwNjVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzQzMDY2LDQzMDcxXSxcImRpc2FsbG93ZWRcIl0sW1s0MzA3Miw0MzEyM10sXCJ2YWxpZFwiXSxbWzQzMTI0LDQzMTI3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s0MzEyOCw0MzEzNV0sXCJkaXNhbGxvd2VkXCJdLFtbNDMxMzYsNDMyMDRdLFwidmFsaWRcIl0sW1s0MzIwNSw0MzIxM10sXCJkaXNhbGxvd2VkXCJdLFtbNDMyMTQsNDMyMTVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzQzMjE2LDQzMjI1XSxcInZhbGlkXCJdLFtbNDMyMjYsNDMyMzFdLFwiZGlzYWxsb3dlZFwiXSxbWzQzMjMyLDQzMjU1XSxcInZhbGlkXCJdLFtbNDMyNTYsNDMyNThdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzQzMjU5LDQzMjU5XSxcInZhbGlkXCJdLFtbNDMyNjAsNDMyNjBdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzQzMjYxLDQzMjYxXSxcInZhbGlkXCJdLFtbNDMyNjIsNDMyNjNdLFwiZGlzYWxsb3dlZFwiXSxbWzQzMjY0LDQzMzA5XSxcInZhbGlkXCJdLFtbNDMzMTAsNDMzMTFdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzQzMzEyLDQzMzQ3XSxcInZhbGlkXCJdLFtbNDMzNDgsNDMzNThdLFwiZGlzYWxsb3dlZFwiXSxbWzQzMzU5LDQzMzU5XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s0MzM2MCw0MzM4OF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNDMzODksNDMzOTFdLFwiZGlzYWxsb3dlZFwiXSxbWzQzMzkyLDQzNDU2XSxcInZhbGlkXCJdLFtbNDM0NTcsNDM0NjldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzQzNDcwLDQzNDcwXSxcImRpc2FsbG93ZWRcIl0sW1s0MzQ3MSw0MzQ4MV0sXCJ2YWxpZFwiXSxbWzQzNDgyLDQzNDg1XSxcImRpc2FsbG93ZWRcIl0sW1s0MzQ4Niw0MzQ4N10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNDM0ODgsNDM1MThdLFwidmFsaWRcIl0sW1s0MzUxOSw0MzUxOV0sXCJkaXNhbGxvd2VkXCJdLFtbNDM1MjAsNDM1NzRdLFwidmFsaWRcIl0sW1s0MzU3NSw0MzU4M10sXCJkaXNhbGxvd2VkXCJdLFtbNDM1ODQsNDM1OTddLFwidmFsaWRcIl0sW1s0MzU5OCw0MzU5OV0sXCJkaXNhbGxvd2VkXCJdLFtbNDM2MDAsNDM2MDldLFwidmFsaWRcIl0sW1s0MzYxMCw0MzYxMV0sXCJkaXNhbGxvd2VkXCJdLFtbNDM2MTIsNDM2MTVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzQzNjE2LDQzNjM4XSxcInZhbGlkXCJdLFtbNDM2MzksNDM2NDFdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzQzNjQyLDQzNjQzXSxcInZhbGlkXCJdLFtbNDM2NDQsNDM2NDddLFwidmFsaWRcIl0sW1s0MzY0OCw0MzcxNF0sXCJ2YWxpZFwiXSxbWzQzNzE1LDQzNzM4XSxcImRpc2FsbG93ZWRcIl0sW1s0MzczOSw0Mzc0MV0sXCJ2YWxpZFwiXSxbWzQzNzQyLDQzNzQzXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s0Mzc0NCw0Mzc1OV0sXCJ2YWxpZFwiXSxbWzQzNzYwLDQzNzYxXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s0Mzc2Miw0Mzc2Nl0sXCJ2YWxpZFwiXSxbWzQzNzY3LDQzNzc2XSxcImRpc2FsbG93ZWRcIl0sW1s0Mzc3Nyw0Mzc4Ml0sXCJ2YWxpZFwiXSxbWzQzNzgzLDQzNzg0XSxcImRpc2FsbG93ZWRcIl0sW1s0Mzc4NSw0Mzc5MF0sXCJ2YWxpZFwiXSxbWzQzNzkxLDQzNzkyXSxcImRpc2FsbG93ZWRcIl0sW1s0Mzc5Myw0Mzc5OF0sXCJ2YWxpZFwiXSxbWzQzNzk5LDQzODA3XSxcImRpc2FsbG93ZWRcIl0sW1s0MzgwOCw0MzgxNF0sXCJ2YWxpZFwiXSxbWzQzODE1LDQzODE1XSxcImRpc2FsbG93ZWRcIl0sW1s0MzgxNiw0MzgyMl0sXCJ2YWxpZFwiXSxbWzQzODIzLDQzODIzXSxcImRpc2FsbG93ZWRcIl0sW1s0MzgyNCw0Mzg2Nl0sXCJ2YWxpZFwiXSxbWzQzODY3LDQzODY3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s0Mzg2OCw0Mzg2OF0sXCJtYXBwZWRcIixbNDI3OTFdXSxbWzQzODY5LDQzODY5XSxcIm1hcHBlZFwiLFs0MzgzMV1dLFtbNDM4NzAsNDM4NzBdLFwibWFwcGVkXCIsWzYxOV1dLFtbNDM4NzEsNDM4NzFdLFwibWFwcGVkXCIsWzQzODU4XV0sW1s0Mzg3Miw0Mzg3NV0sXCJ2YWxpZFwiXSxbWzQzODc2LDQzODc3XSxcInZhbGlkXCJdLFtbNDM4NzgsNDM4ODddLFwiZGlzYWxsb3dlZFwiXSxbWzQzODg4LDQzODg4XSxcIm1hcHBlZFwiLFs1MDI0XV0sW1s0Mzg4OSw0Mzg4OV0sXCJtYXBwZWRcIixbNTAyNV1dLFtbNDM4OTAsNDM4OTBdLFwibWFwcGVkXCIsWzUwMjZdXSxbWzQzODkxLDQzODkxXSxcIm1hcHBlZFwiLFs1MDI3XV0sW1s0Mzg5Miw0Mzg5Ml0sXCJtYXBwZWRcIixbNTAyOF1dLFtbNDM4OTMsNDM4OTNdLFwibWFwcGVkXCIsWzUwMjldXSxbWzQzODk0LDQzODk0XSxcIm1hcHBlZFwiLFs1MDMwXV0sW1s0Mzg5NSw0Mzg5NV0sXCJtYXBwZWRcIixbNTAzMV1dLFtbNDM4OTYsNDM4OTZdLFwibWFwcGVkXCIsWzUwMzJdXSxbWzQzODk3LDQzODk3XSxcIm1hcHBlZFwiLFs1MDMzXV0sW1s0Mzg5OCw0Mzg5OF0sXCJtYXBwZWRcIixbNTAzNF1dLFtbNDM4OTksNDM4OTldLFwibWFwcGVkXCIsWzUwMzVdXSxbWzQzOTAwLDQzOTAwXSxcIm1hcHBlZFwiLFs1MDM2XV0sW1s0MzkwMSw0MzkwMV0sXCJtYXBwZWRcIixbNTAzN11dLFtbNDM5MDIsNDM5MDJdLFwibWFwcGVkXCIsWzUwMzhdXSxbWzQzOTAzLDQzOTAzXSxcIm1hcHBlZFwiLFs1MDM5XV0sW1s0MzkwNCw0MzkwNF0sXCJtYXBwZWRcIixbNTA0MF1dLFtbNDM5MDUsNDM5MDVdLFwibWFwcGVkXCIsWzUwNDFdXSxbWzQzOTA2LDQzOTA2XSxcIm1hcHBlZFwiLFs1MDQyXV0sW1s0MzkwNyw0MzkwN10sXCJtYXBwZWRcIixbNTA0M11dLFtbNDM5MDgsNDM5MDhdLFwibWFwcGVkXCIsWzUwNDRdXSxbWzQzOTA5LDQzOTA5XSxcIm1hcHBlZFwiLFs1MDQ1XV0sW1s0MzkxMCw0MzkxMF0sXCJtYXBwZWRcIixbNTA0Nl1dLFtbNDM5MTEsNDM5MTFdLFwibWFwcGVkXCIsWzUwNDddXSxbWzQzOTEyLDQzOTEyXSxcIm1hcHBlZFwiLFs1MDQ4XV0sW1s0MzkxMyw0MzkxM10sXCJtYXBwZWRcIixbNTA0OV1dLFtbNDM5MTQsNDM5MTRdLFwibWFwcGVkXCIsWzUwNTBdXSxbWzQzOTE1LDQzOTE1XSxcIm1hcHBlZFwiLFs1MDUxXV0sW1s0MzkxNiw0MzkxNl0sXCJtYXBwZWRcIixbNTA1Ml1dLFtbNDM5MTcsNDM5MTddLFwibWFwcGVkXCIsWzUwNTNdXSxbWzQzOTE4LDQzOTE4XSxcIm1hcHBlZFwiLFs1MDU0XV0sW1s0MzkxOSw0MzkxOV0sXCJtYXBwZWRcIixbNTA1NV1dLFtbNDM5MjAsNDM5MjBdLFwibWFwcGVkXCIsWzUwNTZdXSxbWzQzOTIxLDQzOTIxXSxcIm1hcHBlZFwiLFs1MDU3XV0sW1s0MzkyMiw0MzkyMl0sXCJtYXBwZWRcIixbNTA1OF1dLFtbNDM5MjMsNDM5MjNdLFwibWFwcGVkXCIsWzUwNTldXSxbWzQzOTI0LDQzOTI0XSxcIm1hcHBlZFwiLFs1MDYwXV0sW1s0MzkyNSw0MzkyNV0sXCJtYXBwZWRcIixbNTA2MV1dLFtbNDM5MjYsNDM5MjZdLFwibWFwcGVkXCIsWzUwNjJdXSxbWzQzOTI3LDQzOTI3XSxcIm1hcHBlZFwiLFs1MDYzXV0sW1s0MzkyOCw0MzkyOF0sXCJtYXBwZWRcIixbNTA2NF1dLFtbNDM5MjksNDM5MjldLFwibWFwcGVkXCIsWzUwNjVdXSxbWzQzOTMwLDQzOTMwXSxcIm1hcHBlZFwiLFs1MDY2XV0sW1s0MzkzMSw0MzkzMV0sXCJtYXBwZWRcIixbNTA2N11dLFtbNDM5MzIsNDM5MzJdLFwibWFwcGVkXCIsWzUwNjhdXSxbWzQzOTMzLDQzOTMzXSxcIm1hcHBlZFwiLFs1MDY5XV0sW1s0MzkzNCw0MzkzNF0sXCJtYXBwZWRcIixbNTA3MF1dLFtbNDM5MzUsNDM5MzVdLFwibWFwcGVkXCIsWzUwNzFdXSxbWzQzOTM2LDQzOTM2XSxcIm1hcHBlZFwiLFs1MDcyXV0sW1s0MzkzNyw0MzkzN10sXCJtYXBwZWRcIixbNTA3M11dLFtbNDM5MzgsNDM5MzhdLFwibWFwcGVkXCIsWzUwNzRdXSxbWzQzOTM5LDQzOTM5XSxcIm1hcHBlZFwiLFs1MDc1XV0sW1s0Mzk0MCw0Mzk0MF0sXCJtYXBwZWRcIixbNTA3Nl1dLFtbNDM5NDEsNDM5NDFdLFwibWFwcGVkXCIsWzUwNzddXSxbWzQzOTQyLDQzOTQyXSxcIm1hcHBlZFwiLFs1MDc4XV0sW1s0Mzk0Myw0Mzk0M10sXCJtYXBwZWRcIixbNTA3OV1dLFtbNDM5NDQsNDM5NDRdLFwibWFwcGVkXCIsWzUwODBdXSxbWzQzOTQ1LDQzOTQ1XSxcIm1hcHBlZFwiLFs1MDgxXV0sW1s0Mzk0Niw0Mzk0Nl0sXCJtYXBwZWRcIixbNTA4Ml1dLFtbNDM5NDcsNDM5NDddLFwibWFwcGVkXCIsWzUwODNdXSxbWzQzOTQ4LDQzOTQ4XSxcIm1hcHBlZFwiLFs1MDg0XV0sW1s0Mzk0OSw0Mzk0OV0sXCJtYXBwZWRcIixbNTA4NV1dLFtbNDM5NTAsNDM5NTBdLFwibWFwcGVkXCIsWzUwODZdXSxbWzQzOTUxLDQzOTUxXSxcIm1hcHBlZFwiLFs1MDg3XV0sW1s0Mzk1Miw0Mzk1Ml0sXCJtYXBwZWRcIixbNTA4OF1dLFtbNDM5NTMsNDM5NTNdLFwibWFwcGVkXCIsWzUwODldXSxbWzQzOTU0LDQzOTU0XSxcIm1hcHBlZFwiLFs1MDkwXV0sW1s0Mzk1NSw0Mzk1NV0sXCJtYXBwZWRcIixbNTA5MV1dLFtbNDM5NTYsNDM5NTZdLFwibWFwcGVkXCIsWzUwOTJdXSxbWzQzOTU3LDQzOTU3XSxcIm1hcHBlZFwiLFs1MDkzXV0sW1s0Mzk1OCw0Mzk1OF0sXCJtYXBwZWRcIixbNTA5NF1dLFtbNDM5NTksNDM5NTldLFwibWFwcGVkXCIsWzUwOTVdXSxbWzQzOTYwLDQzOTYwXSxcIm1hcHBlZFwiLFs1MDk2XV0sW1s0Mzk2MSw0Mzk2MV0sXCJtYXBwZWRcIixbNTA5N11dLFtbNDM5NjIsNDM5NjJdLFwibWFwcGVkXCIsWzUwOThdXSxbWzQzOTYzLDQzOTYzXSxcIm1hcHBlZFwiLFs1MDk5XV0sW1s0Mzk2NCw0Mzk2NF0sXCJtYXBwZWRcIixbNTEwMF1dLFtbNDM5NjUsNDM5NjVdLFwibWFwcGVkXCIsWzUxMDFdXSxbWzQzOTY2LDQzOTY2XSxcIm1hcHBlZFwiLFs1MTAyXV0sW1s0Mzk2Nyw0Mzk2N10sXCJtYXBwZWRcIixbNTEwM11dLFtbNDM5NjgsNDQwMTBdLFwidmFsaWRcIl0sW1s0NDAxMSw0NDAxMV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNDQwMTIsNDQwMTNdLFwidmFsaWRcIl0sW1s0NDAxNCw0NDAxNV0sXCJkaXNhbGxvd2VkXCJdLFtbNDQwMTYsNDQwMjVdLFwidmFsaWRcIl0sW1s0NDAyNiw0NDAzMV0sXCJkaXNhbGxvd2VkXCJdLFtbNDQwMzIsNTUyMDNdLFwidmFsaWRcIl0sW1s1NTIwNCw1NTIxNV0sXCJkaXNhbGxvd2VkXCJdLFtbNTUyMTYsNTUyMzhdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzU1MjM5LDU1MjQyXSxcImRpc2FsbG93ZWRcIl0sW1s1NTI0Myw1NTI5MV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNTUyOTIsNTUyOTVdLFwiZGlzYWxsb3dlZFwiXSxbWzU1Mjk2LDU3MzQzXSxcImRpc2FsbG93ZWRcIl0sW1s1NzM0NCw2Mzc0M10sXCJkaXNhbGxvd2VkXCJdLFtbNjM3NDQsNjM3NDRdLFwibWFwcGVkXCIsWzM1OTEyXV0sW1s2Mzc0NSw2Mzc0NV0sXCJtYXBwZWRcIixbMjYzNTZdXSxbWzYzNzQ2LDYzNzQ2XSxcIm1hcHBlZFwiLFszNjU1NF1dLFtbNjM3NDcsNjM3NDddLFwibWFwcGVkXCIsWzM2MDQwXV0sW1s2Mzc0OCw2Mzc0OF0sXCJtYXBwZWRcIixbMjgzNjldXSxbWzYzNzQ5LDYzNzQ5XSxcIm1hcHBlZFwiLFsyMDAxOF1dLFtbNjM3NTAsNjM3NTBdLFwibWFwcGVkXCIsWzIxNDc3XV0sW1s2Mzc1MSw2Mzc1Ml0sXCJtYXBwZWRcIixbNDA4NjBdXSxbWzYzNzUzLDYzNzUzXSxcIm1hcHBlZFwiLFsyMjg2NV1dLFtbNjM3NTQsNjM3NTRdLFwibWFwcGVkXCIsWzM3MzI5XV0sW1s2Mzc1NSw2Mzc1NV0sXCJtYXBwZWRcIixbMjE4OTVdXSxbWzYzNzU2LDYzNzU2XSxcIm1hcHBlZFwiLFsyMjg1Nl1dLFtbNjM3NTcsNjM3NTddLFwibWFwcGVkXCIsWzI1MDc4XV0sW1s2Mzc1OCw2Mzc1OF0sXCJtYXBwZWRcIixbMzAzMTNdXSxbWzYzNzU5LDYzNzU5XSxcIm1hcHBlZFwiLFszMjY0NV1dLFtbNjM3NjAsNjM3NjBdLFwibWFwcGVkXCIsWzM0MzY3XV0sW1s2Mzc2MSw2Mzc2MV0sXCJtYXBwZWRcIixbMzQ3NDZdXSxbWzYzNzYyLDYzNzYyXSxcIm1hcHBlZFwiLFszNTA2NF1dLFtbNjM3NjMsNjM3NjNdLFwibWFwcGVkXCIsWzM3MDA3XV0sW1s2Mzc2NCw2Mzc2NF0sXCJtYXBwZWRcIixbMjcxMzhdXSxbWzYzNzY1LDYzNzY1XSxcIm1hcHBlZFwiLFsyNzkzMV1dLFtbNjM3NjYsNjM3NjZdLFwibWFwcGVkXCIsWzI4ODg5XV0sW1s2Mzc2Nyw2Mzc2N10sXCJtYXBwZWRcIixbMjk2NjJdXSxbWzYzNzY4LDYzNzY4XSxcIm1hcHBlZFwiLFszMzg1M11dLFtbNjM3NjksNjM3NjldLFwibWFwcGVkXCIsWzM3MjI2XV0sW1s2Mzc3MCw2Mzc3MF0sXCJtYXBwZWRcIixbMzk0MDldXSxbWzYzNzcxLDYzNzcxXSxcIm1hcHBlZFwiLFsyMDA5OF1dLFtbNjM3NzIsNjM3NzJdLFwibWFwcGVkXCIsWzIxMzY1XV0sW1s2Mzc3Myw2Mzc3M10sXCJtYXBwZWRcIixbMjczOTZdXSxbWzYzNzc0LDYzNzc0XSxcIm1hcHBlZFwiLFsyOTIxMV1dLFtbNjM3NzUsNjM3NzVdLFwibWFwcGVkXCIsWzM0MzQ5XV0sW1s2Mzc3Niw2Mzc3Nl0sXCJtYXBwZWRcIixbNDA0NzhdXSxbWzYzNzc3LDYzNzc3XSxcIm1hcHBlZFwiLFsyMzg4OF1dLFtbNjM3NzgsNjM3NzhdLFwibWFwcGVkXCIsWzI4NjUxXV0sW1s2Mzc3OSw2Mzc3OV0sXCJtYXBwZWRcIixbMzQyNTNdXSxbWzYzNzgwLDYzNzgwXSxcIm1hcHBlZFwiLFszNTE3Ml1dLFtbNjM3ODEsNjM3ODFdLFwibWFwcGVkXCIsWzI1Mjg5XV0sW1s2Mzc4Miw2Mzc4Ml0sXCJtYXBwZWRcIixbMzMyNDBdXSxbWzYzNzgzLDYzNzgzXSxcIm1hcHBlZFwiLFszNDg0N11dLFtbNjM3ODQsNjM3ODRdLFwibWFwcGVkXCIsWzI0MjY2XV0sW1s2Mzc4NSw2Mzc4NV0sXCJtYXBwZWRcIixbMjYzOTFdXSxbWzYzNzg2LDYzNzg2XSxcIm1hcHBlZFwiLFsyODAxMF1dLFtbNjM3ODcsNjM3ODddLFwibWFwcGVkXCIsWzI5NDM2XV0sW1s2Mzc4OCw2Mzc4OF0sXCJtYXBwZWRcIixbMzcwNzBdXSxbWzYzNzg5LDYzNzg5XSxcIm1hcHBlZFwiLFsyMDM1OF1dLFtbNjM3OTAsNjM3OTBdLFwibWFwcGVkXCIsWzIwOTE5XV0sW1s2Mzc5MSw2Mzc5MV0sXCJtYXBwZWRcIixbMjEyMTRdXSxbWzYzNzkyLDYzNzkyXSxcIm1hcHBlZFwiLFsyNTc5Nl1dLFtbNjM3OTMsNjM3OTNdLFwibWFwcGVkXCIsWzI3MzQ3XV0sW1s2Mzc5NCw2Mzc5NF0sXCJtYXBwZWRcIixbMjkyMDBdXSxbWzYzNzk1LDYzNzk1XSxcIm1hcHBlZFwiLFszMDQzOV1dLFtbNjM3OTYsNjM3OTZdLFwibWFwcGVkXCIsWzMyNzY5XV0sW1s2Mzc5Nyw2Mzc5N10sXCJtYXBwZWRcIixbMzQzMTBdXSxbWzYzNzk4LDYzNzk4XSxcIm1hcHBlZFwiLFszNDM5Nl1dLFtbNjM3OTksNjM3OTldLFwibWFwcGVkXCIsWzM2MzM1XV0sW1s2MzgwMCw2MzgwMF0sXCJtYXBwZWRcIixbMzg3MDZdXSxbWzYzODAxLDYzODAxXSxcIm1hcHBlZFwiLFszOTc5MV1dLFtbNjM4MDIsNjM4MDJdLFwibWFwcGVkXCIsWzQwNDQyXV0sW1s2MzgwMyw2MzgwM10sXCJtYXBwZWRcIixbMzA4NjBdXSxbWzYzODA0LDYzODA0XSxcIm1hcHBlZFwiLFszMTEwM11dLFtbNjM4MDUsNjM4MDVdLFwibWFwcGVkXCIsWzMyMTYwXV0sW1s2MzgwNiw2MzgwNl0sXCJtYXBwZWRcIixbMzM3MzddXSxbWzYzODA3LDYzODA3XSxcIm1hcHBlZFwiLFszNzYzNl1dLFtbNjM4MDgsNjM4MDhdLFwibWFwcGVkXCIsWzQwNTc1XV0sW1s2MzgwOSw2MzgwOV0sXCJtYXBwZWRcIixbMzU1NDJdXSxbWzYzODEwLDYzODEwXSxcIm1hcHBlZFwiLFsyMjc1MV1dLFtbNjM4MTEsNjM4MTFdLFwibWFwcGVkXCIsWzI0MzI0XV0sW1s2MzgxMiw2MzgxMl0sXCJtYXBwZWRcIixbMzE4NDBdXSxbWzYzODEzLDYzODEzXSxcIm1hcHBlZFwiLFszMjg5NF1dLFtbNjM4MTQsNjM4MTRdLFwibWFwcGVkXCIsWzI5MjgyXV0sW1s2MzgxNSw2MzgxNV0sXCJtYXBwZWRcIixbMzA5MjJdXSxbWzYzODE2LDYzODE2XSxcIm1hcHBlZFwiLFszNjAzNF1dLFtbNjM4MTcsNjM4MTddLFwibWFwcGVkXCIsWzM4NjQ3XV0sW1s2MzgxOCw2MzgxOF0sXCJtYXBwZWRcIixbMjI3NDRdXSxbWzYzODE5LDYzODE5XSxcIm1hcHBlZFwiLFsyMzY1MF1dLFtbNjM4MjAsNjM4MjBdLFwibWFwcGVkXCIsWzI3MTU1XV0sW1s2MzgyMSw2MzgyMV0sXCJtYXBwZWRcIixbMjgxMjJdXSxbWzYzODIyLDYzODIyXSxcIm1hcHBlZFwiLFsyODQzMV1dLFtbNjM4MjMsNjM4MjNdLFwibWFwcGVkXCIsWzMyMDQ3XV0sW1s2MzgyNCw2MzgyNF0sXCJtYXBwZWRcIixbMzIzMTFdXSxbWzYzODI1LDYzODI1XSxcIm1hcHBlZFwiLFszODQ3NV1dLFtbNjM4MjYsNjM4MjZdLFwibWFwcGVkXCIsWzIxMjAyXV0sW1s2MzgyNyw2MzgyN10sXCJtYXBwZWRcIixbMzI5MDddXSxbWzYzODI4LDYzODI4XSxcIm1hcHBlZFwiLFsyMDk1Nl1dLFtbNjM4MjksNjM4MjldLFwibWFwcGVkXCIsWzIwOTQwXV0sW1s2MzgzMCw2MzgzMF0sXCJtYXBwZWRcIixbMzEyNjBdXSxbWzYzODMxLDYzODMxXSxcIm1hcHBlZFwiLFszMjE5MF1dLFtbNjM4MzIsNjM4MzJdLFwibWFwcGVkXCIsWzMzNzc3XV0sW1s2MzgzMyw2MzgzM10sXCJtYXBwZWRcIixbMzg1MTddXSxbWzYzODM0LDYzODM0XSxcIm1hcHBlZFwiLFszNTcxMl1dLFtbNjM4MzUsNjM4MzVdLFwibWFwcGVkXCIsWzI1Mjk1XV0sW1s2MzgzNiw2MzgzNl0sXCJtYXBwZWRcIixbMjcxMzhdXSxbWzYzODM3LDYzODM3XSxcIm1hcHBlZFwiLFszNTU4Ml1dLFtbNjM4MzgsNjM4MzhdLFwibWFwcGVkXCIsWzIwMDI1XV0sW1s2MzgzOSw2MzgzOV0sXCJtYXBwZWRcIixbMjM1MjddXSxbWzYzODQwLDYzODQwXSxcIm1hcHBlZFwiLFsyNDU5NF1dLFtbNjM4NDEsNjM4NDFdLFwibWFwcGVkXCIsWzI5NTc1XV0sW1s2Mzg0Miw2Mzg0Ml0sXCJtYXBwZWRcIixbMzAwNjRdXSxbWzYzODQzLDYzODQzXSxcIm1hcHBlZFwiLFsyMTI3MV1dLFtbNjM4NDQsNjM4NDRdLFwibWFwcGVkXCIsWzMwOTcxXV0sW1s2Mzg0NSw2Mzg0NV0sXCJtYXBwZWRcIixbMjA0MTVdXSxbWzYzODQ2LDYzODQ2XSxcIm1hcHBlZFwiLFsyNDQ4OV1dLFtbNjM4NDcsNjM4NDddLFwibWFwcGVkXCIsWzE5OTgxXV0sW1s2Mzg0OCw2Mzg0OF0sXCJtYXBwZWRcIixbMjc4NTJdXSxbWzYzODQ5LDYzODQ5XSxcIm1hcHBlZFwiLFsyNTk3Nl1dLFtbNjM4NTAsNjM4NTBdLFwibWFwcGVkXCIsWzMyMDM0XV0sW1s2Mzg1MSw2Mzg1MV0sXCJtYXBwZWRcIixbMjE0NDNdXSxbWzYzODUyLDYzODUyXSxcIm1hcHBlZFwiLFsyMjYyMl1dLFtbNjM4NTMsNjM4NTNdLFwibWFwcGVkXCIsWzMwNDY1XV0sW1s2Mzg1NCw2Mzg1NF0sXCJtYXBwZWRcIixbMzM4NjVdXSxbWzYzODU1LDYzODU1XSxcIm1hcHBlZFwiLFszNTQ5OF1dLFtbNjM4NTYsNjM4NTZdLFwibWFwcGVkXCIsWzI3NTc4XV0sW1s2Mzg1Nyw2Mzg1N10sXCJtYXBwZWRcIixbMzY3ODRdXSxbWzYzODU4LDYzODU4XSxcIm1hcHBlZFwiLFsyNzc4NF1dLFtbNjM4NTksNjM4NTldLFwibWFwcGVkXCIsWzI1MzQyXV0sW1s2Mzg2MCw2Mzg2MF0sXCJtYXBwZWRcIixbMzM1MDldXSxbWzYzODYxLDYzODYxXSxcIm1hcHBlZFwiLFsyNTUwNF1dLFtbNjM4NjIsNjM4NjJdLFwibWFwcGVkXCIsWzMwMDUzXV0sW1s2Mzg2Myw2Mzg2M10sXCJtYXBwZWRcIixbMjAxNDJdXSxbWzYzODY0LDYzODY0XSxcIm1hcHBlZFwiLFsyMDg0MV1dLFtbNjM4NjUsNjM4NjVdLFwibWFwcGVkXCIsWzIwOTM3XV0sW1s2Mzg2Niw2Mzg2Nl0sXCJtYXBwZWRcIixbMjY3NTNdXSxbWzYzODY3LDYzODY3XSxcIm1hcHBlZFwiLFszMTk3NV1dLFtbNjM4NjgsNjM4NjhdLFwibWFwcGVkXCIsWzMzMzkxXV0sW1s2Mzg2OSw2Mzg2OV0sXCJtYXBwZWRcIixbMzU1MzhdXSxbWzYzODcwLDYzODcwXSxcIm1hcHBlZFwiLFszNzMyN11dLFtbNjM4NzEsNjM4NzFdLFwibWFwcGVkXCIsWzIxMjM3XV0sW1s2Mzg3Miw2Mzg3Ml0sXCJtYXBwZWRcIixbMjE1NzBdXSxbWzYzODczLDYzODczXSxcIm1hcHBlZFwiLFsyMjg5OV1dLFtbNjM4NzQsNjM4NzRdLFwibWFwcGVkXCIsWzI0MzAwXV0sW1s2Mzg3NSw2Mzg3NV0sXCJtYXBwZWRcIixbMjYwNTNdXSxbWzYzODc2LDYzODc2XSxcIm1hcHBlZFwiLFsyODY3MF1dLFtbNjM4NzcsNjM4NzddLFwibWFwcGVkXCIsWzMxMDE4XV0sW1s2Mzg3OCw2Mzg3OF0sXCJtYXBwZWRcIixbMzgzMTddXSxbWzYzODc5LDYzODc5XSxcIm1hcHBlZFwiLFszOTUzMF1dLFtbNjM4ODAsNjM4ODBdLFwibWFwcGVkXCIsWzQwNTk5XV0sW1s2Mzg4MSw2Mzg4MV0sXCJtYXBwZWRcIixbNDA2NTRdXSxbWzYzODgyLDYzODgyXSxcIm1hcHBlZFwiLFsyMTE0N11dLFtbNjM4ODMsNjM4ODNdLFwibWFwcGVkXCIsWzI2MzEwXV0sW1s2Mzg4NCw2Mzg4NF0sXCJtYXBwZWRcIixbMjc1MTFdXSxbWzYzODg1LDYzODg1XSxcIm1hcHBlZFwiLFszNjcwNl1dLFtbNjM4ODYsNjM4ODZdLFwibWFwcGVkXCIsWzI0MTgwXV0sW1s2Mzg4Nyw2Mzg4N10sXCJtYXBwZWRcIixbMjQ5NzZdXSxbWzYzODg4LDYzODg4XSxcIm1hcHBlZFwiLFsyNTA4OF1dLFtbNjM4ODksNjM4ODldLFwibWFwcGVkXCIsWzI1NzU0XV0sW1s2Mzg5MCw2Mzg5MF0sXCJtYXBwZWRcIixbMjg0NTFdXSxbWzYzODkxLDYzODkxXSxcIm1hcHBlZFwiLFsyOTAwMV1dLFtbNjM4OTIsNjM4OTJdLFwibWFwcGVkXCIsWzI5ODMzXV0sW1s2Mzg5Myw2Mzg5M10sXCJtYXBwZWRcIixbMzExNzhdXSxbWzYzODk0LDYzODk0XSxcIm1hcHBlZFwiLFszMjI0NF1dLFtbNjM4OTUsNjM4OTVdLFwibWFwcGVkXCIsWzMyODc5XV0sW1s2Mzg5Niw2Mzg5Nl0sXCJtYXBwZWRcIixbMzY2NDZdXSxbWzYzODk3LDYzODk3XSxcIm1hcHBlZFwiLFszNDAzMF1dLFtbNjM4OTgsNjM4OThdLFwibWFwcGVkXCIsWzM2ODk5XV0sW1s2Mzg5OSw2Mzg5OV0sXCJtYXBwZWRcIixbMzc3MDZdXSxbWzYzOTAwLDYzOTAwXSxcIm1hcHBlZFwiLFsyMTAxNV1dLFtbNjM5MDEsNjM5MDFdLFwibWFwcGVkXCIsWzIxMTU1XV0sW1s2MzkwMiw2MzkwMl0sXCJtYXBwZWRcIixbMjE2OTNdXSxbWzYzOTAzLDYzOTAzXSxcIm1hcHBlZFwiLFsyODg3Ml1dLFtbNjM5MDQsNjM5MDRdLFwibWFwcGVkXCIsWzM1MDEwXV0sW1s2MzkwNSw2MzkwNV0sXCJtYXBwZWRcIixbMzU0OThdXSxbWzYzOTA2LDYzOTA2XSxcIm1hcHBlZFwiLFsyNDI2NV1dLFtbNjM5MDcsNjM5MDddLFwibWFwcGVkXCIsWzI0NTY1XV0sW1s2MzkwOCw2MzkwOF0sXCJtYXBwZWRcIixbMjU0NjddXSxbWzYzOTA5LDYzOTA5XSxcIm1hcHBlZFwiLFsyNzU2Nl1dLFtbNjM5MTAsNjM5MTBdLFwibWFwcGVkXCIsWzMxODA2XV0sW1s2MzkxMSw2MzkxMV0sXCJtYXBwZWRcIixbMjk1NTddXSxbWzYzOTEyLDYzOTEyXSxcIm1hcHBlZFwiLFsyMDE5Nl1dLFtbNjM5MTMsNjM5MTNdLFwibWFwcGVkXCIsWzIyMjY1XV0sW1s2MzkxNCw2MzkxNF0sXCJtYXBwZWRcIixbMjM1MjddXSxbWzYzOTE1LDYzOTE1XSxcIm1hcHBlZFwiLFsyMzk5NF1dLFtbNjM5MTYsNjM5MTZdLFwibWFwcGVkXCIsWzI0NjA0XV0sW1s2MzkxNyw2MzkxN10sXCJtYXBwZWRcIixbMjk2MThdXSxbWzYzOTE4LDYzOTE4XSxcIm1hcHBlZFwiLFsyOTgwMV1dLFtbNjM5MTksNjM5MTldLFwibWFwcGVkXCIsWzMyNjY2XV0sW1s2MzkyMCw2MzkyMF0sXCJtYXBwZWRcIixbMzI4MzhdXSxbWzYzOTIxLDYzOTIxXSxcIm1hcHBlZFwiLFszNzQyOF1dLFtbNjM5MjIsNjM5MjJdLFwibWFwcGVkXCIsWzM4NjQ2XV0sW1s2MzkyMyw2MzkyM10sXCJtYXBwZWRcIixbMzg3MjhdXSxbWzYzOTI0LDYzOTI0XSxcIm1hcHBlZFwiLFszODkzNl1dLFtbNjM5MjUsNjM5MjVdLFwibWFwcGVkXCIsWzIwMzYzXV0sW1s2MzkyNiw2MzkyNl0sXCJtYXBwZWRcIixbMzExNTBdXSxbWzYzOTI3LDYzOTI3XSxcIm1hcHBlZFwiLFszNzMwMF1dLFtbNjM5MjgsNjM5MjhdLFwibWFwcGVkXCIsWzM4NTg0XV0sW1s2MzkyOSw2MzkyOV0sXCJtYXBwZWRcIixbMjQ4MDFdXSxbWzYzOTMwLDYzOTMwXSxcIm1hcHBlZFwiLFsyMDEwMl1dLFtbNjM5MzEsNjM5MzFdLFwibWFwcGVkXCIsWzIwNjk4XV0sW1s2MzkzMiw2MzkzMl0sXCJtYXBwZWRcIixbMjM1MzRdXSxbWzYzOTMzLDYzOTMzXSxcIm1hcHBlZFwiLFsyMzYxNV1dLFtbNjM5MzQsNjM5MzRdLFwibWFwcGVkXCIsWzI2MDA5XV0sW1s2MzkzNSw2MzkzNV0sXCJtYXBwZWRcIixbMjcxMzhdXSxbWzYzOTM2LDYzOTM2XSxcIm1hcHBlZFwiLFsyOTEzNF1dLFtbNjM5MzcsNjM5MzddLFwibWFwcGVkXCIsWzMwMjc0XV0sW1s2MzkzOCw2MzkzOF0sXCJtYXBwZWRcIixbMzQwNDRdXSxbWzYzOTM5LDYzOTM5XSxcIm1hcHBlZFwiLFszNjk4OF1dLFtbNjM5NDAsNjM5NDBdLFwibWFwcGVkXCIsWzQwODQ1XV0sW1s2Mzk0MSw2Mzk0MV0sXCJtYXBwZWRcIixbMjYyNDhdXSxbWzYzOTQyLDYzOTQyXSxcIm1hcHBlZFwiLFszODQ0Nl1dLFtbNjM5NDMsNjM5NDNdLFwibWFwcGVkXCIsWzIxMTI5XV0sW1s2Mzk0NCw2Mzk0NF0sXCJtYXBwZWRcIixbMjY0OTFdXSxbWzYzOTQ1LDYzOTQ1XSxcIm1hcHBlZFwiLFsyNjYxMV1dLFtbNjM5NDYsNjM5NDZdLFwibWFwcGVkXCIsWzI3OTY5XV0sW1s2Mzk0Nyw2Mzk0N10sXCJtYXBwZWRcIixbMjgzMTZdXSxbWzYzOTQ4LDYzOTQ4XSxcIm1hcHBlZFwiLFsyOTcwNV1dLFtbNjM5NDksNjM5NDldLFwibWFwcGVkXCIsWzMwMDQxXV0sW1s2Mzk1MCw2Mzk1MF0sXCJtYXBwZWRcIixbMzA4MjddXSxbWzYzOTUxLDYzOTUxXSxcIm1hcHBlZFwiLFszMjAxNl1dLFtbNjM5NTIsNjM5NTJdLFwibWFwcGVkXCIsWzM5MDA2XV0sW1s2Mzk1Myw2Mzk1M10sXCJtYXBwZWRcIixbMjA4NDVdXSxbWzYzOTU0LDYzOTU0XSxcIm1hcHBlZFwiLFsyNTEzNF1dLFtbNjM5NTUsNjM5NTVdLFwibWFwcGVkXCIsWzM4NTIwXV0sW1s2Mzk1Niw2Mzk1Nl0sXCJtYXBwZWRcIixbMjA1MjNdXSxbWzYzOTU3LDYzOTU3XSxcIm1hcHBlZFwiLFsyMzgzM11dLFtbNjM5NTgsNjM5NThdLFwibWFwcGVkXCIsWzI4MTM4XV0sW1s2Mzk1OSw2Mzk1OV0sXCJtYXBwZWRcIixbMzY2NTBdXSxbWzYzOTYwLDYzOTYwXSxcIm1hcHBlZFwiLFsyNDQ1OV1dLFtbNjM5NjEsNjM5NjFdLFwibWFwcGVkXCIsWzI0OTAwXV0sW1s2Mzk2Miw2Mzk2Ml0sXCJtYXBwZWRcIixbMjY2NDddXSxbWzYzOTYzLDYzOTYzXSxcIm1hcHBlZFwiLFsyOTU3NV1dLFtbNjM5NjQsNjM5NjRdLFwibWFwcGVkXCIsWzM4NTM0XV0sW1s2Mzk2NSw2Mzk2NV0sXCJtYXBwZWRcIixbMjEwMzNdXSxbWzYzOTY2LDYzOTY2XSxcIm1hcHBlZFwiLFsyMTUxOV1dLFtbNjM5NjcsNjM5NjddLFwibWFwcGVkXCIsWzIzNjUzXV0sW1s2Mzk2OCw2Mzk2OF0sXCJtYXBwZWRcIixbMjYxMzFdXSxbWzYzOTY5LDYzOTY5XSxcIm1hcHBlZFwiLFsyNjQ0Nl1dLFtbNjM5NzAsNjM5NzBdLFwibWFwcGVkXCIsWzI2NzkyXV0sW1s2Mzk3MSw2Mzk3MV0sXCJtYXBwZWRcIixbMjc4NzddXSxbWzYzOTcyLDYzOTcyXSxcIm1hcHBlZFwiLFsyOTcwMl1dLFtbNjM5NzMsNjM5NzNdLFwibWFwcGVkXCIsWzMwMTc4XV0sW1s2Mzk3NCw2Mzk3NF0sXCJtYXBwZWRcIixbMzI2MzNdXSxbWzYzOTc1LDYzOTc1XSxcIm1hcHBlZFwiLFszNTAyM11dLFtbNjM5NzYsNjM5NzZdLFwibWFwcGVkXCIsWzM1MDQxXV0sW1s2Mzk3Nyw2Mzk3N10sXCJtYXBwZWRcIixbMzczMjRdXSxbWzYzOTc4LDYzOTc4XSxcIm1hcHBlZFwiLFszODYyNl1dLFtbNjM5NzksNjM5NzldLFwibWFwcGVkXCIsWzIxMzExXV0sW1s2Mzk4MCw2Mzk4MF0sXCJtYXBwZWRcIixbMjgzNDZdXSxbWzYzOTgxLDYzOTgxXSxcIm1hcHBlZFwiLFsyMTUzM11dLFtbNjM5ODIsNjM5ODJdLFwibWFwcGVkXCIsWzI5MTM2XV0sW1s2Mzk4Myw2Mzk4M10sXCJtYXBwZWRcIixbMjk4NDhdXSxbWzYzOTg0LDYzOTg0XSxcIm1hcHBlZFwiLFszNDI5OF1dLFtbNjM5ODUsNjM5ODVdLFwibWFwcGVkXCIsWzM4NTYzXV0sW1s2Mzk4Niw2Mzk4Nl0sXCJtYXBwZWRcIixbNDAwMjNdXSxbWzYzOTg3LDYzOTg3XSxcIm1hcHBlZFwiLFs0MDYwN11dLFtbNjM5ODgsNjM5ODhdLFwibWFwcGVkXCIsWzI2NTE5XV0sW1s2Mzk4OSw2Mzk4OV0sXCJtYXBwZWRcIixbMjgxMDddXSxbWzYzOTkwLDYzOTkwXSxcIm1hcHBlZFwiLFszMzI1Nl1dLFtbNjM5OTEsNjM5OTFdLFwibWFwcGVkXCIsWzMxNDM1XV0sW1s2Mzk5Miw2Mzk5Ml0sXCJtYXBwZWRcIixbMzE1MjBdXSxbWzYzOTkzLDYzOTkzXSxcIm1hcHBlZFwiLFszMTg5MF1dLFtbNjM5OTQsNjM5OTRdLFwibWFwcGVkXCIsWzI5Mzc2XV0sW1s2Mzk5NSw2Mzk5NV0sXCJtYXBwZWRcIixbMjg4MjVdXSxbWzYzOTk2LDYzOTk2XSxcIm1hcHBlZFwiLFszNTY3Ml1dLFtbNjM5OTcsNjM5OTddLFwibWFwcGVkXCIsWzIwMTYwXV0sW1s2Mzk5OCw2Mzk5OF0sXCJtYXBwZWRcIixbMzM1OTBdXSxbWzYzOTk5LDYzOTk5XSxcIm1hcHBlZFwiLFsyMTA1MF1dLFtbNjQwMDAsNjQwMDBdLFwibWFwcGVkXCIsWzIwOTk5XV0sW1s2NDAwMSw2NDAwMV0sXCJtYXBwZWRcIixbMjQyMzBdXSxbWzY0MDAyLDY0MDAyXSxcIm1hcHBlZFwiLFsyNTI5OV1dLFtbNjQwMDMsNjQwMDNdLFwibWFwcGVkXCIsWzMxOTU4XV0sW1s2NDAwNCw2NDAwNF0sXCJtYXBwZWRcIixbMjM0MjldXSxbWzY0MDA1LDY0MDA1XSxcIm1hcHBlZFwiLFsyNzkzNF1dLFtbNjQwMDYsNjQwMDZdLFwibWFwcGVkXCIsWzI2MjkyXV0sW1s2NDAwNyw2NDAwN10sXCJtYXBwZWRcIixbMzY2NjddXSxbWzY0MDA4LDY0MDA4XSxcIm1hcHBlZFwiLFszNDg5Ml1dLFtbNjQwMDksNjQwMDldLFwibWFwcGVkXCIsWzM4NDc3XV0sW1s2NDAxMCw2NDAxMF0sXCJtYXBwZWRcIixbMzUyMTFdXSxbWzY0MDExLDY0MDExXSxcIm1hcHBlZFwiLFsyNDI3NV1dLFtbNjQwMTIsNjQwMTJdLFwibWFwcGVkXCIsWzIwODAwXV0sW1s2NDAxMyw2NDAxM10sXCJtYXBwZWRcIixbMjE5NTJdXSxbWzY0MDE0LDY0MDE1XSxcInZhbGlkXCJdLFtbNjQwMTYsNjQwMTZdLFwibWFwcGVkXCIsWzIyNjE4XV0sW1s2NDAxNyw2NDAxN10sXCJ2YWxpZFwiXSxbWzY0MDE4LDY0MDE4XSxcIm1hcHBlZFwiLFsyNjIyOF1dLFtbNjQwMTksNjQwMjBdLFwidmFsaWRcIl0sW1s2NDAyMSw2NDAyMV0sXCJtYXBwZWRcIixbMjA5NThdXSxbWzY0MDIyLDY0MDIyXSxcIm1hcHBlZFwiLFsyOTQ4Ml1dLFtbNjQwMjMsNjQwMjNdLFwibWFwcGVkXCIsWzMwNDEwXV0sW1s2NDAyNCw2NDAyNF0sXCJtYXBwZWRcIixbMzEwMzZdXSxbWzY0MDI1LDY0MDI1XSxcIm1hcHBlZFwiLFszMTA3MF1dLFtbNjQwMjYsNjQwMjZdLFwibWFwcGVkXCIsWzMxMDc3XV0sW1s2NDAyNyw2NDAyN10sXCJtYXBwZWRcIixbMzExMTldXSxbWzY0MDI4LDY0MDI4XSxcIm1hcHBlZFwiLFszODc0Ml1dLFtbNjQwMjksNjQwMjldLFwibWFwcGVkXCIsWzMxOTM0XV0sW1s2NDAzMCw2NDAzMF0sXCJtYXBwZWRcIixbMzI3MDFdXSxbWzY0MDMxLDY0MDMxXSxcInZhbGlkXCJdLFtbNjQwMzIsNjQwMzJdLFwibWFwcGVkXCIsWzM0MzIyXV0sW1s2NDAzMyw2NDAzM10sXCJ2YWxpZFwiXSxbWzY0MDM0LDY0MDM0XSxcIm1hcHBlZFwiLFszNTU3Nl1dLFtbNjQwMzUsNjQwMzZdLFwidmFsaWRcIl0sW1s2NDAzNyw2NDAzN10sXCJtYXBwZWRcIixbMzY5MjBdXSxbWzY0MDM4LDY0MDM4XSxcIm1hcHBlZFwiLFszNzExN11dLFtbNjQwMzksNjQwNDFdLFwidmFsaWRcIl0sW1s2NDA0Miw2NDA0Ml0sXCJtYXBwZWRcIixbMzkxNTFdXSxbWzY0MDQzLDY0MDQzXSxcIm1hcHBlZFwiLFszOTE2NF1dLFtbNjQwNDQsNjQwNDRdLFwibWFwcGVkXCIsWzM5MjA4XV0sW1s2NDA0NSw2NDA0NV0sXCJtYXBwZWRcIixbNDAzNzJdXSxbWzY0MDQ2LDY0MDQ2XSxcIm1hcHBlZFwiLFszNzA4Nl1dLFtbNjQwNDcsNjQwNDddLFwibWFwcGVkXCIsWzM4NTgzXV0sW1s2NDA0OCw2NDA0OF0sXCJtYXBwZWRcIixbMjAzOThdXSxbWzY0MDQ5LDY0MDQ5XSxcIm1hcHBlZFwiLFsyMDcxMV1dLFtbNjQwNTAsNjQwNTBdLFwibWFwcGVkXCIsWzIwODEzXV0sW1s2NDA1MSw2NDA1MV0sXCJtYXBwZWRcIixbMjExOTNdXSxbWzY0MDUyLDY0MDUyXSxcIm1hcHBlZFwiLFsyMTIyMF1dLFtbNjQwNTMsNjQwNTNdLFwibWFwcGVkXCIsWzIxMzI5XV0sW1s2NDA1NCw2NDA1NF0sXCJtYXBwZWRcIixbMjE5MTddXSxbWzY0MDU1LDY0MDU1XSxcIm1hcHBlZFwiLFsyMjAyMl1dLFtbNjQwNTYsNjQwNTZdLFwibWFwcGVkXCIsWzIyMTIwXV0sW1s2NDA1Nyw2NDA1N10sXCJtYXBwZWRcIixbMjI1OTJdXSxbWzY0MDU4LDY0MDU4XSxcIm1hcHBlZFwiLFsyMjY5Nl1dLFtbNjQwNTksNjQwNTldLFwibWFwcGVkXCIsWzIzNjUyXV0sW1s2NDA2MCw2NDA2MF0sXCJtYXBwZWRcIixbMjM2NjJdXSxbWzY0MDYxLDY0MDYxXSxcIm1hcHBlZFwiLFsyNDcyNF1dLFtbNjQwNjIsNjQwNjJdLFwibWFwcGVkXCIsWzI0OTM2XV0sW1s2NDA2Myw2NDA2M10sXCJtYXBwZWRcIixbMjQ5NzRdXSxbWzY0MDY0LDY0MDY0XSxcIm1hcHBlZFwiLFsyNTA3NF1dLFtbNjQwNjUsNjQwNjVdLFwibWFwcGVkXCIsWzI1OTM1XV0sW1s2NDA2Niw2NDA2Nl0sXCJtYXBwZWRcIixbMjYwODJdXSxbWzY0MDY3LDY0MDY3XSxcIm1hcHBlZFwiLFsyNjI1N11dLFtbNjQwNjgsNjQwNjhdLFwibWFwcGVkXCIsWzI2NzU3XV0sW1s2NDA2OSw2NDA2OV0sXCJtYXBwZWRcIixbMjgwMjNdXSxbWzY0MDcwLDY0MDcwXSxcIm1hcHBlZFwiLFsyODE4Nl1dLFtbNjQwNzEsNjQwNzFdLFwibWFwcGVkXCIsWzI4NDUwXV0sW1s2NDA3Miw2NDA3Ml0sXCJtYXBwZWRcIixbMjkwMzhdXSxbWzY0MDczLDY0MDczXSxcIm1hcHBlZFwiLFsyOTIyN11dLFtbNjQwNzQsNjQwNzRdLFwibWFwcGVkXCIsWzI5NzMwXV0sW1s2NDA3NSw2NDA3NV0sXCJtYXBwZWRcIixbMzA4NjVdXSxbWzY0MDc2LDY0MDc2XSxcIm1hcHBlZFwiLFszMTAzOF1dLFtbNjQwNzcsNjQwNzddLFwibWFwcGVkXCIsWzMxMDQ5XV0sW1s2NDA3OCw2NDA3OF0sXCJtYXBwZWRcIixbMzEwNDhdXSxbWzY0MDc5LDY0MDc5XSxcIm1hcHBlZFwiLFszMTA1Nl1dLFtbNjQwODAsNjQwODBdLFwibWFwcGVkXCIsWzMxMDYyXV0sW1s2NDA4MSw2NDA4MV0sXCJtYXBwZWRcIixbMzEwNjldXSxbWzY0MDgyLDY0MDgyXSxcIm1hcHBlZFwiLFszMTExN11dLFtbNjQwODMsNjQwODNdLFwibWFwcGVkXCIsWzMxMTE4XV0sW1s2NDA4NCw2NDA4NF0sXCJtYXBwZWRcIixbMzEyOTZdXSxbWzY0MDg1LDY0MDg1XSxcIm1hcHBlZFwiLFszMTM2MV1dLFtbNjQwODYsNjQwODZdLFwibWFwcGVkXCIsWzMxNjgwXV0sW1s2NDA4Nyw2NDA4N10sXCJtYXBwZWRcIixbMzIyNDRdXSxbWzY0MDg4LDY0MDg4XSxcIm1hcHBlZFwiLFszMjI2NV1dLFtbNjQwODksNjQwODldLFwibWFwcGVkXCIsWzMyMzIxXV0sW1s2NDA5MCw2NDA5MF0sXCJtYXBwZWRcIixbMzI2MjZdXSxbWzY0MDkxLDY0MDkxXSxcIm1hcHBlZFwiLFszMjc3M11dLFtbNjQwOTIsNjQwOTJdLFwibWFwcGVkXCIsWzMzMjYxXV0sW1s2NDA5Myw2NDA5NF0sXCJtYXBwZWRcIixbMzM0MDFdXSxbWzY0MDk1LDY0MDk1XSxcIm1hcHBlZFwiLFszMzg3OV1dLFtbNjQwOTYsNjQwOTZdLFwibWFwcGVkXCIsWzM1MDg4XV0sW1s2NDA5Nyw2NDA5N10sXCJtYXBwZWRcIixbMzUyMjJdXSxbWzY0MDk4LDY0MDk4XSxcIm1hcHBlZFwiLFszNTU4NV1dLFtbNjQwOTksNjQwOTldLFwibWFwcGVkXCIsWzM1NjQxXV0sW1s2NDEwMCw2NDEwMF0sXCJtYXBwZWRcIixbMzYwNTFdXSxbWzY0MTAxLDY0MTAxXSxcIm1hcHBlZFwiLFszNjEwNF1dLFtbNjQxMDIsNjQxMDJdLFwibWFwcGVkXCIsWzM2NzkwXV0sW1s2NDEwMyw2NDEwM10sXCJtYXBwZWRcIixbMzY5MjBdXSxbWzY0MTA0LDY0MTA0XSxcIm1hcHBlZFwiLFszODYyN11dLFtbNjQxMDUsNjQxMDVdLFwibWFwcGVkXCIsWzM4OTExXV0sW1s2NDEwNiw2NDEwNl0sXCJtYXBwZWRcIixbMzg5NzFdXSxbWzY0MTA3LDY0MTA3XSxcIm1hcHBlZFwiLFsyNDY5M11dLFtbNjQxMDgsNjQxMDhdLFwibWFwcGVkXCIsWzE0ODIwNl1dLFtbNjQxMDksNjQxMDldLFwibWFwcGVkXCIsWzMzMzA0XV0sW1s2NDExMCw2NDExMV0sXCJkaXNhbGxvd2VkXCJdLFtbNjQxMTIsNjQxMTJdLFwibWFwcGVkXCIsWzIwMDA2XV0sW1s2NDExMyw2NDExM10sXCJtYXBwZWRcIixbMjA5MTddXSxbWzY0MTE0LDY0MTE0XSxcIm1hcHBlZFwiLFsyMDg0MF1dLFtbNjQxMTUsNjQxMTVdLFwibWFwcGVkXCIsWzIwMzUyXV0sW1s2NDExNiw2NDExNl0sXCJtYXBwZWRcIixbMjA4MDVdXSxbWzY0MTE3LDY0MTE3XSxcIm1hcHBlZFwiLFsyMDg2NF1dLFtbNjQxMTgsNjQxMThdLFwibWFwcGVkXCIsWzIxMTkxXV0sW1s2NDExOSw2NDExOV0sXCJtYXBwZWRcIixbMjEyNDJdXSxbWzY0MTIwLDY0MTIwXSxcIm1hcHBlZFwiLFsyMTkxN11dLFtbNjQxMjEsNjQxMjFdLFwibWFwcGVkXCIsWzIxODQ1XV0sW1s2NDEyMiw2NDEyMl0sXCJtYXBwZWRcIixbMjE5MTNdXSxbWzY0MTIzLDY0MTIzXSxcIm1hcHBlZFwiLFsyMTk4Nl1dLFtbNjQxMjQsNjQxMjRdLFwibWFwcGVkXCIsWzIyNjE4XV0sW1s2NDEyNSw2NDEyNV0sXCJtYXBwZWRcIixbMjI3MDddXSxbWzY0MTI2LDY0MTI2XSxcIm1hcHBlZFwiLFsyMjg1Ml1dLFtbNjQxMjcsNjQxMjddLFwibWFwcGVkXCIsWzIyODY4XV0sW1s2NDEyOCw2NDEyOF0sXCJtYXBwZWRcIixbMjMxMzhdXSxbWzY0MTI5LDY0MTI5XSxcIm1hcHBlZFwiLFsyMzMzNl1dLFtbNjQxMzAsNjQxMzBdLFwibWFwcGVkXCIsWzI0Mjc0XV0sW1s2NDEzMSw2NDEzMV0sXCJtYXBwZWRcIixbMjQyODFdXSxbWzY0MTMyLDY0MTMyXSxcIm1hcHBlZFwiLFsyNDQyNV1dLFtbNjQxMzMsNjQxMzNdLFwibWFwcGVkXCIsWzI0NDkzXV0sW1s2NDEzNCw2NDEzNF0sXCJtYXBwZWRcIixbMjQ3OTJdXSxbWzY0MTM1LDY0MTM1XSxcIm1hcHBlZFwiLFsyNDkxMF1dLFtbNjQxMzYsNjQxMzZdLFwibWFwcGVkXCIsWzI0ODQwXV0sW1s2NDEzNyw2NDEzN10sXCJtYXBwZWRcIixbMjQ5NzRdXSxbWzY0MTM4LDY0MTM4XSxcIm1hcHBlZFwiLFsyNDkyOF1dLFtbNjQxMzksNjQxMzldLFwibWFwcGVkXCIsWzI1MDc0XV0sW1s2NDE0MCw2NDE0MF0sXCJtYXBwZWRcIixbMjUxNDBdXSxbWzY0MTQxLDY0MTQxXSxcIm1hcHBlZFwiLFsyNTU0MF1dLFtbNjQxNDIsNjQxNDJdLFwibWFwcGVkXCIsWzI1NjI4XV0sW1s2NDE0Myw2NDE0M10sXCJtYXBwZWRcIixbMjU2ODJdXSxbWzY0MTQ0LDY0MTQ0XSxcIm1hcHBlZFwiLFsyNTk0Ml1dLFtbNjQxNDUsNjQxNDVdLFwibWFwcGVkXCIsWzI2MjI4XV0sW1s2NDE0Niw2NDE0Nl0sXCJtYXBwZWRcIixbMjYzOTFdXSxbWzY0MTQ3LDY0MTQ3XSxcIm1hcHBlZFwiLFsyNjM5NV1dLFtbNjQxNDgsNjQxNDhdLFwibWFwcGVkXCIsWzI2NDU0XV0sW1s2NDE0OSw2NDE0OV0sXCJtYXBwZWRcIixbMjc1MTNdXSxbWzY0MTUwLDY0MTUwXSxcIm1hcHBlZFwiLFsyNzU3OF1dLFtbNjQxNTEsNjQxNTFdLFwibWFwcGVkXCIsWzI3OTY5XV0sW1s2NDE1Miw2NDE1Ml0sXCJtYXBwZWRcIixbMjgzNzldXSxbWzY0MTUzLDY0MTUzXSxcIm1hcHBlZFwiLFsyODM2M11dLFtbNjQxNTQsNjQxNTRdLFwibWFwcGVkXCIsWzI4NDUwXV0sW1s2NDE1NSw2NDE1NV0sXCJtYXBwZWRcIixbMjg3MDJdXSxbWzY0MTU2LDY0MTU2XSxcIm1hcHBlZFwiLFsyOTAzOF1dLFtbNjQxNTcsNjQxNTddLFwibWFwcGVkXCIsWzMwNjMxXV0sW1s2NDE1OCw2NDE1OF0sXCJtYXBwZWRcIixbMjkyMzddXSxbWzY0MTU5LDY0MTU5XSxcIm1hcHBlZFwiLFsyOTM1OV1dLFtbNjQxNjAsNjQxNjBdLFwibWFwcGVkXCIsWzI5NDgyXV0sW1s2NDE2MSw2NDE2MV0sXCJtYXBwZWRcIixbMjk4MDldXSxbWzY0MTYyLDY0MTYyXSxcIm1hcHBlZFwiLFsyOTk1OF1dLFtbNjQxNjMsNjQxNjNdLFwibWFwcGVkXCIsWzMwMDExXV0sW1s2NDE2NCw2NDE2NF0sXCJtYXBwZWRcIixbMzAyMzddXSxbWzY0MTY1LDY0MTY1XSxcIm1hcHBlZFwiLFszMDIzOV1dLFtbNjQxNjYsNjQxNjZdLFwibWFwcGVkXCIsWzMwNDEwXV0sW1s2NDE2Nyw2NDE2N10sXCJtYXBwZWRcIixbMzA0MjddXSxbWzY0MTY4LDY0MTY4XSxcIm1hcHBlZFwiLFszMDQ1Ml1dLFtbNjQxNjksNjQxNjldLFwibWFwcGVkXCIsWzMwNTM4XV0sW1s2NDE3MCw2NDE3MF0sXCJtYXBwZWRcIixbMzA1MjhdXSxbWzY0MTcxLDY0MTcxXSxcIm1hcHBlZFwiLFszMDkyNF1dLFtbNjQxNzIsNjQxNzJdLFwibWFwcGVkXCIsWzMxNDA5XV0sW1s2NDE3Myw2NDE3M10sXCJtYXBwZWRcIixbMzE2ODBdXSxbWzY0MTc0LDY0MTc0XSxcIm1hcHBlZFwiLFszMTg2N11dLFtbNjQxNzUsNjQxNzVdLFwibWFwcGVkXCIsWzMyMDkxXV0sW1s2NDE3Niw2NDE3Nl0sXCJtYXBwZWRcIixbMzIyNDRdXSxbWzY0MTc3LDY0MTc3XSxcIm1hcHBlZFwiLFszMjU3NF1dLFtbNjQxNzgsNjQxNzhdLFwibWFwcGVkXCIsWzMyNzczXV0sW1s2NDE3OSw2NDE3OV0sXCJtYXBwZWRcIixbMzM2MThdXSxbWzY0MTgwLDY0MTgwXSxcIm1hcHBlZFwiLFszMzc3NV1dLFtbNjQxODEsNjQxODFdLFwibWFwcGVkXCIsWzM0NjgxXV0sW1s2NDE4Miw2NDE4Ml0sXCJtYXBwZWRcIixbMzUxMzddXSxbWzY0MTgzLDY0MTgzXSxcIm1hcHBlZFwiLFszNTIwNl1dLFtbNjQxODQsNjQxODRdLFwibWFwcGVkXCIsWzM1MjIyXV0sW1s2NDE4NSw2NDE4NV0sXCJtYXBwZWRcIixbMzU1MTldXSxbWzY0MTg2LDY0MTg2XSxcIm1hcHBlZFwiLFszNTU3Nl1dLFtbNjQxODcsNjQxODddLFwibWFwcGVkXCIsWzM1NTMxXV0sW1s2NDE4OCw2NDE4OF0sXCJtYXBwZWRcIixbMzU1ODVdXSxbWzY0MTg5LDY0MTg5XSxcIm1hcHBlZFwiLFszNTU4Ml1dLFtbNjQxOTAsNjQxOTBdLFwibWFwcGVkXCIsWzM1NTY1XV0sW1s2NDE5MSw2NDE5MV0sXCJtYXBwZWRcIixbMzU2NDFdXSxbWzY0MTkyLDY0MTkyXSxcIm1hcHBlZFwiLFszNTcyMl1dLFtbNjQxOTMsNjQxOTNdLFwibWFwcGVkXCIsWzM2MTA0XV0sW1s2NDE5NCw2NDE5NF0sXCJtYXBwZWRcIixbMzY2NjRdXSxbWzY0MTk1LDY0MTk1XSxcIm1hcHBlZFwiLFszNjk3OF1dLFtbNjQxOTYsNjQxOTZdLFwibWFwcGVkXCIsWzM3MjczXV0sW1s2NDE5Nyw2NDE5N10sXCJtYXBwZWRcIixbMzc0OTRdXSxbWzY0MTk4LDY0MTk4XSxcIm1hcHBlZFwiLFszODUyNF1dLFtbNjQxOTksNjQxOTldLFwibWFwcGVkXCIsWzM4NjI3XV0sW1s2NDIwMCw2NDIwMF0sXCJtYXBwZWRcIixbMzg3NDJdXSxbWzY0MjAxLDY0MjAxXSxcIm1hcHBlZFwiLFszODg3NV1dLFtbNjQyMDIsNjQyMDJdLFwibWFwcGVkXCIsWzM4OTExXV0sW1s2NDIwMyw2NDIwM10sXCJtYXBwZWRcIixbMzg5MjNdXSxbWzY0MjA0LDY0MjA0XSxcIm1hcHBlZFwiLFszODk3MV1dLFtbNjQyMDUsNjQyMDVdLFwibWFwcGVkXCIsWzM5Njk4XV0sW1s2NDIwNiw2NDIwNl0sXCJtYXBwZWRcIixbNDA4NjBdXSxbWzY0MjA3LDY0MjA3XSxcIm1hcHBlZFwiLFsxNDEzODZdXSxbWzY0MjA4LDY0MjA4XSxcIm1hcHBlZFwiLFsxNDEzODBdXSxbWzY0MjA5LDY0MjA5XSxcIm1hcHBlZFwiLFsxNDQzNDFdXSxbWzY0MjEwLDY0MjEwXSxcIm1hcHBlZFwiLFsxNTI2MV1dLFtbNjQyMTEsNjQyMTFdLFwibWFwcGVkXCIsWzE2NDA4XV0sW1s2NDIxMiw2NDIxMl0sXCJtYXBwZWRcIixbMTY0NDFdXSxbWzY0MjEzLDY0MjEzXSxcIm1hcHBlZFwiLFsxNTIxMzddXSxbWzY0MjE0LDY0MjE0XSxcIm1hcHBlZFwiLFsxNTQ4MzJdXSxbWzY0MjE1LDY0MjE1XSxcIm1hcHBlZFwiLFsxNjM1MzldXSxbWzY0MjE2LDY0MjE2XSxcIm1hcHBlZFwiLFs0MDc3MV1dLFtbNjQyMTcsNjQyMTddLFwibWFwcGVkXCIsWzQwODQ2XV0sW1s2NDIxOCw2NDI1NV0sXCJkaXNhbGxvd2VkXCJdLFtbNjQyNTYsNjQyNTZdLFwibWFwcGVkXCIsWzEwMiwxMDJdXSxbWzY0MjU3LDY0MjU3XSxcIm1hcHBlZFwiLFsxMDIsMTA1XV0sW1s2NDI1OCw2NDI1OF0sXCJtYXBwZWRcIixbMTAyLDEwOF1dLFtbNjQyNTksNjQyNTldLFwibWFwcGVkXCIsWzEwMiwxMDIsMTA1XV0sW1s2NDI2MCw2NDI2MF0sXCJtYXBwZWRcIixbMTAyLDEwMiwxMDhdXSxbWzY0MjYxLDY0MjYyXSxcIm1hcHBlZFwiLFsxMTUsMTE2XV0sW1s2NDI2Myw2NDI3NF0sXCJkaXNhbGxvd2VkXCJdLFtbNjQyNzUsNjQyNzVdLFwibWFwcGVkXCIsWzEzOTYsMTM5OF1dLFtbNjQyNzYsNjQyNzZdLFwibWFwcGVkXCIsWzEzOTYsMTM4MV1dLFtbNjQyNzcsNjQyNzddLFwibWFwcGVkXCIsWzEzOTYsMTM4N11dLFtbNjQyNzgsNjQyNzhdLFwibWFwcGVkXCIsWzE0MDYsMTM5OF1dLFtbNjQyNzksNjQyNzldLFwibWFwcGVkXCIsWzEzOTYsMTM4OV1dLFtbNjQyODAsNjQyODRdLFwiZGlzYWxsb3dlZFwiXSxbWzY0Mjg1LDY0Mjg1XSxcIm1hcHBlZFwiLFsxNDk3LDE0NjBdXSxbWzY0Mjg2LDY0Mjg2XSxcInZhbGlkXCJdLFtbNjQyODcsNjQyODddLFwibWFwcGVkXCIsWzE1MjIsMTQ2M11dLFtbNjQyODgsNjQyODhdLFwibWFwcGVkXCIsWzE1MDZdXSxbWzY0Mjg5LDY0Mjg5XSxcIm1hcHBlZFwiLFsxNDg4XV0sW1s2NDI5MCw2NDI5MF0sXCJtYXBwZWRcIixbMTQ5MV1dLFtbNjQyOTEsNjQyOTFdLFwibWFwcGVkXCIsWzE0OTJdXSxbWzY0MjkyLDY0MjkyXSxcIm1hcHBlZFwiLFsxNDk5XV0sW1s2NDI5Myw2NDI5M10sXCJtYXBwZWRcIixbMTUwMF1dLFtbNjQyOTQsNjQyOTRdLFwibWFwcGVkXCIsWzE1MDFdXSxbWzY0Mjk1LDY0Mjk1XSxcIm1hcHBlZFwiLFsxNTEyXV0sW1s2NDI5Niw2NDI5Nl0sXCJtYXBwZWRcIixbMTUxNF1dLFtbNjQyOTcsNjQyOTddLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0M11dLFtbNjQyOTgsNjQyOThdLFwibWFwcGVkXCIsWzE1MTMsMTQ3M11dLFtbNjQyOTksNjQyOTldLFwibWFwcGVkXCIsWzE1MTMsMTQ3NF1dLFtbNjQzMDAsNjQzMDBdLFwibWFwcGVkXCIsWzE1MTMsMTQ2OCwxNDczXV0sW1s2NDMwMSw2NDMwMV0sXCJtYXBwZWRcIixbMTUxMywxNDY4LDE0NzRdXSxbWzY0MzAyLDY0MzAyXSxcIm1hcHBlZFwiLFsxNDg4LDE0NjNdXSxbWzY0MzAzLDY0MzAzXSxcIm1hcHBlZFwiLFsxNDg4LDE0NjRdXSxbWzY0MzA0LDY0MzA0XSxcIm1hcHBlZFwiLFsxNDg4LDE0NjhdXSxbWzY0MzA1LDY0MzA1XSxcIm1hcHBlZFwiLFsxNDg5LDE0NjhdXSxbWzY0MzA2LDY0MzA2XSxcIm1hcHBlZFwiLFsxNDkwLDE0NjhdXSxbWzY0MzA3LDY0MzA3XSxcIm1hcHBlZFwiLFsxNDkxLDE0NjhdXSxbWzY0MzA4LDY0MzA4XSxcIm1hcHBlZFwiLFsxNDkyLDE0NjhdXSxbWzY0MzA5LDY0MzA5XSxcIm1hcHBlZFwiLFsxNDkzLDE0NjhdXSxbWzY0MzEwLDY0MzEwXSxcIm1hcHBlZFwiLFsxNDk0LDE0NjhdXSxbWzY0MzExLDY0MzExXSxcImRpc2FsbG93ZWRcIl0sW1s2NDMxMiw2NDMxMl0sXCJtYXBwZWRcIixbMTQ5NiwxNDY4XV0sW1s2NDMxMyw2NDMxM10sXCJtYXBwZWRcIixbMTQ5NywxNDY4XV0sW1s2NDMxNCw2NDMxNF0sXCJtYXBwZWRcIixbMTQ5OCwxNDY4XV0sW1s2NDMxNSw2NDMxNV0sXCJtYXBwZWRcIixbMTQ5OSwxNDY4XV0sW1s2NDMxNiw2NDMxNl0sXCJtYXBwZWRcIixbMTUwMCwxNDY4XV0sW1s2NDMxNyw2NDMxN10sXCJkaXNhbGxvd2VkXCJdLFtbNjQzMTgsNjQzMThdLFwibWFwcGVkXCIsWzE1MDIsMTQ2OF1dLFtbNjQzMTksNjQzMTldLFwiZGlzYWxsb3dlZFwiXSxbWzY0MzIwLDY0MzIwXSxcIm1hcHBlZFwiLFsxNTA0LDE0NjhdXSxbWzY0MzIxLDY0MzIxXSxcIm1hcHBlZFwiLFsxNTA1LDE0NjhdXSxbWzY0MzIyLDY0MzIyXSxcImRpc2FsbG93ZWRcIl0sW1s2NDMyMyw2NDMyM10sXCJtYXBwZWRcIixbMTUwNywxNDY4XV0sW1s2NDMyNCw2NDMyNF0sXCJtYXBwZWRcIixbMTUwOCwxNDY4XV0sW1s2NDMyNSw2NDMyNV0sXCJkaXNhbGxvd2VkXCJdLFtbNjQzMjYsNjQzMjZdLFwibWFwcGVkXCIsWzE1MTAsMTQ2OF1dLFtbNjQzMjcsNjQzMjddLFwibWFwcGVkXCIsWzE1MTEsMTQ2OF1dLFtbNjQzMjgsNjQzMjhdLFwibWFwcGVkXCIsWzE1MTIsMTQ2OF1dLFtbNjQzMjksNjQzMjldLFwibWFwcGVkXCIsWzE1MTMsMTQ2OF1dLFtbNjQzMzAsNjQzMzBdLFwibWFwcGVkXCIsWzE1MTQsMTQ2OF1dLFtbNjQzMzEsNjQzMzFdLFwibWFwcGVkXCIsWzE0OTMsMTQ2NV1dLFtbNjQzMzIsNjQzMzJdLFwibWFwcGVkXCIsWzE0ODksMTQ3MV1dLFtbNjQzMzMsNjQzMzNdLFwibWFwcGVkXCIsWzE0OTksMTQ3MV1dLFtbNjQzMzQsNjQzMzRdLFwibWFwcGVkXCIsWzE1MDgsMTQ3MV1dLFtbNjQzMzUsNjQzMzVdLFwibWFwcGVkXCIsWzE0ODgsMTUwMF1dLFtbNjQzMzYsNjQzMzddLFwibWFwcGVkXCIsWzE2NDldXSxbWzY0MzM4LDY0MzQxXSxcIm1hcHBlZFwiLFsxNjU5XV0sW1s2NDM0Miw2NDM0NV0sXCJtYXBwZWRcIixbMTY2Ml1dLFtbNjQzNDYsNjQzNDldLFwibWFwcGVkXCIsWzE2NjRdXSxbWzY0MzUwLDY0MzUzXSxcIm1hcHBlZFwiLFsxNjU4XV0sW1s2NDM1NCw2NDM1N10sXCJtYXBwZWRcIixbMTY2M11dLFtbNjQzNTgsNjQzNjFdLFwibWFwcGVkXCIsWzE2NTddXSxbWzY0MzYyLDY0MzY1XSxcIm1hcHBlZFwiLFsxNzAwXV0sW1s2NDM2Niw2NDM2OV0sXCJtYXBwZWRcIixbMTcwMl1dLFtbNjQzNzAsNjQzNzNdLFwibWFwcGVkXCIsWzE2NjhdXSxbWzY0Mzc0LDY0Mzc3XSxcIm1hcHBlZFwiLFsxNjY3XV0sW1s2NDM3OCw2NDM4MV0sXCJtYXBwZWRcIixbMTY3MF1dLFtbNjQzODIsNjQzODVdLFwibWFwcGVkXCIsWzE2NzFdXSxbWzY0Mzg2LDY0Mzg3XSxcIm1hcHBlZFwiLFsxNjc3XV0sW1s2NDM4OCw2NDM4OV0sXCJtYXBwZWRcIixbMTY3Nl1dLFtbNjQzOTAsNjQzOTFdLFwibWFwcGVkXCIsWzE2NzhdXSxbWzY0MzkyLDY0MzkzXSxcIm1hcHBlZFwiLFsxNjcyXV0sW1s2NDM5NCw2NDM5NV0sXCJtYXBwZWRcIixbMTY4OF1dLFtbNjQzOTYsNjQzOTddLFwibWFwcGVkXCIsWzE2ODFdXSxbWzY0Mzk4LDY0NDAxXSxcIm1hcHBlZFwiLFsxNzA1XV0sW1s2NDQwMiw2NDQwNV0sXCJtYXBwZWRcIixbMTcxMV1dLFtbNjQ0MDYsNjQ0MDldLFwibWFwcGVkXCIsWzE3MTVdXSxbWzY0NDEwLDY0NDEzXSxcIm1hcHBlZFwiLFsxNzEzXV0sW1s2NDQxNCw2NDQxNV0sXCJtYXBwZWRcIixbMTcyMl1dLFtbNjQ0MTYsNjQ0MTldLFwibWFwcGVkXCIsWzE3MjNdXSxbWzY0NDIwLDY0NDIxXSxcIm1hcHBlZFwiLFsxNzI4XV0sW1s2NDQyMiw2NDQyNV0sXCJtYXBwZWRcIixbMTcyOV1dLFtbNjQ0MjYsNjQ0MjldLFwibWFwcGVkXCIsWzE3MjZdXSxbWzY0NDMwLDY0NDMxXSxcIm1hcHBlZFwiLFsxNzQ2XV0sW1s2NDQzMiw2NDQzM10sXCJtYXBwZWRcIixbMTc0N11dLFtbNjQ0MzQsNjQ0NDldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzY0NDUwLDY0NDY2XSxcImRpc2FsbG93ZWRcIl0sW1s2NDQ2Nyw2NDQ3MF0sXCJtYXBwZWRcIixbMTcwOV1dLFtbNjQ0NzEsNjQ0NzJdLFwibWFwcGVkXCIsWzE3MzVdXSxbWzY0NDczLDY0NDc0XSxcIm1hcHBlZFwiLFsxNzM0XV0sW1s2NDQ3NSw2NDQ3Nl0sXCJtYXBwZWRcIixbMTczNl1dLFtbNjQ0NzcsNjQ0NzddLFwibWFwcGVkXCIsWzE3MzUsMTY1Ml1dLFtbNjQ0NzgsNjQ0NzldLFwibWFwcGVkXCIsWzE3MzldXSxbWzY0NDgwLDY0NDgxXSxcIm1hcHBlZFwiLFsxNzMzXV0sW1s2NDQ4Miw2NDQ4M10sXCJtYXBwZWRcIixbMTczN11dLFtbNjQ0ODQsNjQ0ODddLFwibWFwcGVkXCIsWzE3NDRdXSxbWzY0NDg4LDY0NDg5XSxcIm1hcHBlZFwiLFsxNjA5XV0sW1s2NDQ5MCw2NDQ5MV0sXCJtYXBwZWRcIixbMTU3NCwxNTc1XV0sW1s2NDQ5Miw2NDQ5M10sXCJtYXBwZWRcIixbMTU3NCwxNzQ5XV0sW1s2NDQ5NCw2NDQ5NV0sXCJtYXBwZWRcIixbMTU3NCwxNjA4XV0sW1s2NDQ5Niw2NDQ5N10sXCJtYXBwZWRcIixbMTU3NCwxNzM1XV0sW1s2NDQ5OCw2NDQ5OV0sXCJtYXBwZWRcIixbMTU3NCwxNzM0XV0sW1s2NDUwMCw2NDUwMV0sXCJtYXBwZWRcIixbMTU3NCwxNzM2XV0sW1s2NDUwMiw2NDUwNF0sXCJtYXBwZWRcIixbMTU3NCwxNzQ0XV0sW1s2NDUwNSw2NDUwN10sXCJtYXBwZWRcIixbMTU3NCwxNjA5XV0sW1s2NDUwOCw2NDUxMV0sXCJtYXBwZWRcIixbMTc0MF1dLFtbNjQ1MTIsNjQ1MTJdLFwibWFwcGVkXCIsWzE1NzQsMTU4MF1dLFtbNjQ1MTMsNjQ1MTNdLFwibWFwcGVkXCIsWzE1NzQsMTU4MV1dLFtbNjQ1MTQsNjQ1MTRdLFwibWFwcGVkXCIsWzE1NzQsMTYwNV1dLFtbNjQ1MTUsNjQ1MTVdLFwibWFwcGVkXCIsWzE1NzQsMTYwOV1dLFtbNjQ1MTYsNjQ1MTZdLFwibWFwcGVkXCIsWzE1NzQsMTYxMF1dLFtbNjQ1MTcsNjQ1MTddLFwibWFwcGVkXCIsWzE1NzYsMTU4MF1dLFtbNjQ1MTgsNjQ1MThdLFwibWFwcGVkXCIsWzE1NzYsMTU4MV1dLFtbNjQ1MTksNjQ1MTldLFwibWFwcGVkXCIsWzE1NzYsMTU4Ml1dLFtbNjQ1MjAsNjQ1MjBdLFwibWFwcGVkXCIsWzE1NzYsMTYwNV1dLFtbNjQ1MjEsNjQ1MjFdLFwibWFwcGVkXCIsWzE1NzYsMTYwOV1dLFtbNjQ1MjIsNjQ1MjJdLFwibWFwcGVkXCIsWzE1NzYsMTYxMF1dLFtbNjQ1MjMsNjQ1MjNdLFwibWFwcGVkXCIsWzE1NzgsMTU4MF1dLFtbNjQ1MjQsNjQ1MjRdLFwibWFwcGVkXCIsWzE1NzgsMTU4MV1dLFtbNjQ1MjUsNjQ1MjVdLFwibWFwcGVkXCIsWzE1NzgsMTU4Ml1dLFtbNjQ1MjYsNjQ1MjZdLFwibWFwcGVkXCIsWzE1NzgsMTYwNV1dLFtbNjQ1MjcsNjQ1MjddLFwibWFwcGVkXCIsWzE1NzgsMTYwOV1dLFtbNjQ1MjgsNjQ1MjhdLFwibWFwcGVkXCIsWzE1NzgsMTYxMF1dLFtbNjQ1MjksNjQ1MjldLFwibWFwcGVkXCIsWzE1NzksMTU4MF1dLFtbNjQ1MzAsNjQ1MzBdLFwibWFwcGVkXCIsWzE1NzksMTYwNV1dLFtbNjQ1MzEsNjQ1MzFdLFwibWFwcGVkXCIsWzE1NzksMTYwOV1dLFtbNjQ1MzIsNjQ1MzJdLFwibWFwcGVkXCIsWzE1NzksMTYxMF1dLFtbNjQ1MzMsNjQ1MzNdLFwibWFwcGVkXCIsWzE1ODAsMTU4MV1dLFtbNjQ1MzQsNjQ1MzRdLFwibWFwcGVkXCIsWzE1ODAsMTYwNV1dLFtbNjQ1MzUsNjQ1MzVdLFwibWFwcGVkXCIsWzE1ODEsMTU4MF1dLFtbNjQ1MzYsNjQ1MzZdLFwibWFwcGVkXCIsWzE1ODEsMTYwNV1dLFtbNjQ1MzcsNjQ1MzddLFwibWFwcGVkXCIsWzE1ODIsMTU4MF1dLFtbNjQ1MzgsNjQ1MzhdLFwibWFwcGVkXCIsWzE1ODIsMTU4MV1dLFtbNjQ1MzksNjQ1MzldLFwibWFwcGVkXCIsWzE1ODIsMTYwNV1dLFtbNjQ1NDAsNjQ1NDBdLFwibWFwcGVkXCIsWzE1ODcsMTU4MF1dLFtbNjQ1NDEsNjQ1NDFdLFwibWFwcGVkXCIsWzE1ODcsMTU4MV1dLFtbNjQ1NDIsNjQ1NDJdLFwibWFwcGVkXCIsWzE1ODcsMTU4Ml1dLFtbNjQ1NDMsNjQ1NDNdLFwibWFwcGVkXCIsWzE1ODcsMTYwNV1dLFtbNjQ1NDQsNjQ1NDRdLFwibWFwcGVkXCIsWzE1ODksMTU4MV1dLFtbNjQ1NDUsNjQ1NDVdLFwibWFwcGVkXCIsWzE1ODksMTYwNV1dLFtbNjQ1NDYsNjQ1NDZdLFwibWFwcGVkXCIsWzE1OTAsMTU4MF1dLFtbNjQ1NDcsNjQ1NDddLFwibWFwcGVkXCIsWzE1OTAsMTU4MV1dLFtbNjQ1NDgsNjQ1NDhdLFwibWFwcGVkXCIsWzE1OTAsMTU4Ml1dLFtbNjQ1NDksNjQ1NDldLFwibWFwcGVkXCIsWzE1OTAsMTYwNV1dLFtbNjQ1NTAsNjQ1NTBdLFwibWFwcGVkXCIsWzE1OTEsMTU4MV1dLFtbNjQ1NTEsNjQ1NTFdLFwibWFwcGVkXCIsWzE1OTEsMTYwNV1dLFtbNjQ1NTIsNjQ1NTJdLFwibWFwcGVkXCIsWzE1OTIsMTYwNV1dLFtbNjQ1NTMsNjQ1NTNdLFwibWFwcGVkXCIsWzE1OTMsMTU4MF1dLFtbNjQ1NTQsNjQ1NTRdLFwibWFwcGVkXCIsWzE1OTMsMTYwNV1dLFtbNjQ1NTUsNjQ1NTVdLFwibWFwcGVkXCIsWzE1OTQsMTU4MF1dLFtbNjQ1NTYsNjQ1NTZdLFwibWFwcGVkXCIsWzE1OTQsMTYwNV1dLFtbNjQ1NTcsNjQ1NTddLFwibWFwcGVkXCIsWzE2MDEsMTU4MF1dLFtbNjQ1NTgsNjQ1NThdLFwibWFwcGVkXCIsWzE2MDEsMTU4MV1dLFtbNjQ1NTksNjQ1NTldLFwibWFwcGVkXCIsWzE2MDEsMTU4Ml1dLFtbNjQ1NjAsNjQ1NjBdLFwibWFwcGVkXCIsWzE2MDEsMTYwNV1dLFtbNjQ1NjEsNjQ1NjFdLFwibWFwcGVkXCIsWzE2MDEsMTYwOV1dLFtbNjQ1NjIsNjQ1NjJdLFwibWFwcGVkXCIsWzE2MDEsMTYxMF1dLFtbNjQ1NjMsNjQ1NjNdLFwibWFwcGVkXCIsWzE2MDIsMTU4MV1dLFtbNjQ1NjQsNjQ1NjRdLFwibWFwcGVkXCIsWzE2MDIsMTYwNV1dLFtbNjQ1NjUsNjQ1NjVdLFwibWFwcGVkXCIsWzE2MDIsMTYwOV1dLFtbNjQ1NjYsNjQ1NjZdLFwibWFwcGVkXCIsWzE2MDIsMTYxMF1dLFtbNjQ1NjcsNjQ1NjddLFwibWFwcGVkXCIsWzE2MDMsMTU3NV1dLFtbNjQ1NjgsNjQ1NjhdLFwibWFwcGVkXCIsWzE2MDMsMTU4MF1dLFtbNjQ1NjksNjQ1NjldLFwibWFwcGVkXCIsWzE2MDMsMTU4MV1dLFtbNjQ1NzAsNjQ1NzBdLFwibWFwcGVkXCIsWzE2MDMsMTU4Ml1dLFtbNjQ1NzEsNjQ1NzFdLFwibWFwcGVkXCIsWzE2MDMsMTYwNF1dLFtbNjQ1NzIsNjQ1NzJdLFwibWFwcGVkXCIsWzE2MDMsMTYwNV1dLFtbNjQ1NzMsNjQ1NzNdLFwibWFwcGVkXCIsWzE2MDMsMTYwOV1dLFtbNjQ1NzQsNjQ1NzRdLFwibWFwcGVkXCIsWzE2MDMsMTYxMF1dLFtbNjQ1NzUsNjQ1NzVdLFwibWFwcGVkXCIsWzE2MDQsMTU4MF1dLFtbNjQ1NzYsNjQ1NzZdLFwibWFwcGVkXCIsWzE2MDQsMTU4MV1dLFtbNjQ1NzcsNjQ1NzddLFwibWFwcGVkXCIsWzE2MDQsMTU4Ml1dLFtbNjQ1NzgsNjQ1NzhdLFwibWFwcGVkXCIsWzE2MDQsMTYwNV1dLFtbNjQ1NzksNjQ1NzldLFwibWFwcGVkXCIsWzE2MDQsMTYwOV1dLFtbNjQ1ODAsNjQ1ODBdLFwibWFwcGVkXCIsWzE2MDQsMTYxMF1dLFtbNjQ1ODEsNjQ1ODFdLFwibWFwcGVkXCIsWzE2MDUsMTU4MF1dLFtbNjQ1ODIsNjQ1ODJdLFwibWFwcGVkXCIsWzE2MDUsMTU4MV1dLFtbNjQ1ODMsNjQ1ODNdLFwibWFwcGVkXCIsWzE2MDUsMTU4Ml1dLFtbNjQ1ODQsNjQ1ODRdLFwibWFwcGVkXCIsWzE2MDUsMTYwNV1dLFtbNjQ1ODUsNjQ1ODVdLFwibWFwcGVkXCIsWzE2MDUsMTYwOV1dLFtbNjQ1ODYsNjQ1ODZdLFwibWFwcGVkXCIsWzE2MDUsMTYxMF1dLFtbNjQ1ODcsNjQ1ODddLFwibWFwcGVkXCIsWzE2MDYsMTU4MF1dLFtbNjQ1ODgsNjQ1ODhdLFwibWFwcGVkXCIsWzE2MDYsMTU4MV1dLFtbNjQ1ODksNjQ1ODldLFwibWFwcGVkXCIsWzE2MDYsMTU4Ml1dLFtbNjQ1OTAsNjQ1OTBdLFwibWFwcGVkXCIsWzE2MDYsMTYwNV1dLFtbNjQ1OTEsNjQ1OTFdLFwibWFwcGVkXCIsWzE2MDYsMTYwOV1dLFtbNjQ1OTIsNjQ1OTJdLFwibWFwcGVkXCIsWzE2MDYsMTYxMF1dLFtbNjQ1OTMsNjQ1OTNdLFwibWFwcGVkXCIsWzE2MDcsMTU4MF1dLFtbNjQ1OTQsNjQ1OTRdLFwibWFwcGVkXCIsWzE2MDcsMTYwNV1dLFtbNjQ1OTUsNjQ1OTVdLFwibWFwcGVkXCIsWzE2MDcsMTYwOV1dLFtbNjQ1OTYsNjQ1OTZdLFwibWFwcGVkXCIsWzE2MDcsMTYxMF1dLFtbNjQ1OTcsNjQ1OTddLFwibWFwcGVkXCIsWzE2MTAsMTU4MF1dLFtbNjQ1OTgsNjQ1OThdLFwibWFwcGVkXCIsWzE2MTAsMTU4MV1dLFtbNjQ1OTksNjQ1OTldLFwibWFwcGVkXCIsWzE2MTAsMTU4Ml1dLFtbNjQ2MDAsNjQ2MDBdLFwibWFwcGVkXCIsWzE2MTAsMTYwNV1dLFtbNjQ2MDEsNjQ2MDFdLFwibWFwcGVkXCIsWzE2MTAsMTYwOV1dLFtbNjQ2MDIsNjQ2MDJdLFwibWFwcGVkXCIsWzE2MTAsMTYxMF1dLFtbNjQ2MDMsNjQ2MDNdLFwibWFwcGVkXCIsWzE1ODQsMTY0OF1dLFtbNjQ2MDQsNjQ2MDRdLFwibWFwcGVkXCIsWzE1ODUsMTY0OF1dLFtbNjQ2MDUsNjQ2MDVdLFwibWFwcGVkXCIsWzE2MDksMTY0OF1dLFtbNjQ2MDYsNjQ2MDZdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFszMiwxNjEyLDE2MTddXSxbWzY0NjA3LDY0NjA3XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbMzIsMTYxMywxNjE3XV0sW1s2NDYwOCw2NDYwOF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzMyLDE2MTQsMTYxN11dLFtbNjQ2MDksNjQ2MDldLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFszMiwxNjE1LDE2MTddXSxbWzY0NjEwLDY0NjEwXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbMzIsMTYxNiwxNjE3XV0sW1s2NDYxMSw2NDYxMV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzMyLDE2MTcsMTY0OF1dLFtbNjQ2MTIsNjQ2MTJdLFwibWFwcGVkXCIsWzE1NzQsMTU4NV1dLFtbNjQ2MTMsNjQ2MTNdLFwibWFwcGVkXCIsWzE1NzQsMTU4Nl1dLFtbNjQ2MTQsNjQ2MTRdLFwibWFwcGVkXCIsWzE1NzQsMTYwNV1dLFtbNjQ2MTUsNjQ2MTVdLFwibWFwcGVkXCIsWzE1NzQsMTYwNl1dLFtbNjQ2MTYsNjQ2MTZdLFwibWFwcGVkXCIsWzE1NzQsMTYwOV1dLFtbNjQ2MTcsNjQ2MTddLFwibWFwcGVkXCIsWzE1NzQsMTYxMF1dLFtbNjQ2MTgsNjQ2MThdLFwibWFwcGVkXCIsWzE1NzYsMTU4NV1dLFtbNjQ2MTksNjQ2MTldLFwibWFwcGVkXCIsWzE1NzYsMTU4Nl1dLFtbNjQ2MjAsNjQ2MjBdLFwibWFwcGVkXCIsWzE1NzYsMTYwNV1dLFtbNjQ2MjEsNjQ2MjFdLFwibWFwcGVkXCIsWzE1NzYsMTYwNl1dLFtbNjQ2MjIsNjQ2MjJdLFwibWFwcGVkXCIsWzE1NzYsMTYwOV1dLFtbNjQ2MjMsNjQ2MjNdLFwibWFwcGVkXCIsWzE1NzYsMTYxMF1dLFtbNjQ2MjQsNjQ2MjRdLFwibWFwcGVkXCIsWzE1NzgsMTU4NV1dLFtbNjQ2MjUsNjQ2MjVdLFwibWFwcGVkXCIsWzE1NzgsMTU4Nl1dLFtbNjQ2MjYsNjQ2MjZdLFwibWFwcGVkXCIsWzE1NzgsMTYwNV1dLFtbNjQ2MjcsNjQ2MjddLFwibWFwcGVkXCIsWzE1NzgsMTYwNl1dLFtbNjQ2MjgsNjQ2MjhdLFwibWFwcGVkXCIsWzE1NzgsMTYwOV1dLFtbNjQ2MjksNjQ2MjldLFwibWFwcGVkXCIsWzE1NzgsMTYxMF1dLFtbNjQ2MzAsNjQ2MzBdLFwibWFwcGVkXCIsWzE1NzksMTU4NV1dLFtbNjQ2MzEsNjQ2MzFdLFwibWFwcGVkXCIsWzE1NzksMTU4Nl1dLFtbNjQ2MzIsNjQ2MzJdLFwibWFwcGVkXCIsWzE1NzksMTYwNV1dLFtbNjQ2MzMsNjQ2MzNdLFwibWFwcGVkXCIsWzE1NzksMTYwNl1dLFtbNjQ2MzQsNjQ2MzRdLFwibWFwcGVkXCIsWzE1NzksMTYwOV1dLFtbNjQ2MzUsNjQ2MzVdLFwibWFwcGVkXCIsWzE1NzksMTYxMF1dLFtbNjQ2MzYsNjQ2MzZdLFwibWFwcGVkXCIsWzE2MDEsMTYwOV1dLFtbNjQ2MzcsNjQ2MzddLFwibWFwcGVkXCIsWzE2MDEsMTYxMF1dLFtbNjQ2MzgsNjQ2MzhdLFwibWFwcGVkXCIsWzE2MDIsMTYwOV1dLFtbNjQ2MzksNjQ2MzldLFwibWFwcGVkXCIsWzE2MDIsMTYxMF1dLFtbNjQ2NDAsNjQ2NDBdLFwibWFwcGVkXCIsWzE2MDMsMTU3NV1dLFtbNjQ2NDEsNjQ2NDFdLFwibWFwcGVkXCIsWzE2MDMsMTYwNF1dLFtbNjQ2NDIsNjQ2NDJdLFwibWFwcGVkXCIsWzE2MDMsMTYwNV1dLFtbNjQ2NDMsNjQ2NDNdLFwibWFwcGVkXCIsWzE2MDMsMTYwOV1dLFtbNjQ2NDQsNjQ2NDRdLFwibWFwcGVkXCIsWzE2MDMsMTYxMF1dLFtbNjQ2NDUsNjQ2NDVdLFwibWFwcGVkXCIsWzE2MDQsMTYwNV1dLFtbNjQ2NDYsNjQ2NDZdLFwibWFwcGVkXCIsWzE2MDQsMTYwOV1dLFtbNjQ2NDcsNjQ2NDddLFwibWFwcGVkXCIsWzE2MDQsMTYxMF1dLFtbNjQ2NDgsNjQ2NDhdLFwibWFwcGVkXCIsWzE2MDUsMTU3NV1dLFtbNjQ2NDksNjQ2NDldLFwibWFwcGVkXCIsWzE2MDUsMTYwNV1dLFtbNjQ2NTAsNjQ2NTBdLFwibWFwcGVkXCIsWzE2MDYsMTU4NV1dLFtbNjQ2NTEsNjQ2NTFdLFwibWFwcGVkXCIsWzE2MDYsMTU4Nl1dLFtbNjQ2NTIsNjQ2NTJdLFwibWFwcGVkXCIsWzE2MDYsMTYwNV1dLFtbNjQ2NTMsNjQ2NTNdLFwibWFwcGVkXCIsWzE2MDYsMTYwNl1dLFtbNjQ2NTQsNjQ2NTRdLFwibWFwcGVkXCIsWzE2MDYsMTYwOV1dLFtbNjQ2NTUsNjQ2NTVdLFwibWFwcGVkXCIsWzE2MDYsMTYxMF1dLFtbNjQ2NTYsNjQ2NTZdLFwibWFwcGVkXCIsWzE2MDksMTY0OF1dLFtbNjQ2NTcsNjQ2NTddLFwibWFwcGVkXCIsWzE2MTAsMTU4NV1dLFtbNjQ2NTgsNjQ2NThdLFwibWFwcGVkXCIsWzE2MTAsMTU4Nl1dLFtbNjQ2NTksNjQ2NTldLFwibWFwcGVkXCIsWzE2MTAsMTYwNV1dLFtbNjQ2NjAsNjQ2NjBdLFwibWFwcGVkXCIsWzE2MTAsMTYwNl1dLFtbNjQ2NjEsNjQ2NjFdLFwibWFwcGVkXCIsWzE2MTAsMTYwOV1dLFtbNjQ2NjIsNjQ2NjJdLFwibWFwcGVkXCIsWzE2MTAsMTYxMF1dLFtbNjQ2NjMsNjQ2NjNdLFwibWFwcGVkXCIsWzE1NzQsMTU4MF1dLFtbNjQ2NjQsNjQ2NjRdLFwibWFwcGVkXCIsWzE1NzQsMTU4MV1dLFtbNjQ2NjUsNjQ2NjVdLFwibWFwcGVkXCIsWzE1NzQsMTU4Ml1dLFtbNjQ2NjYsNjQ2NjZdLFwibWFwcGVkXCIsWzE1NzQsMTYwNV1dLFtbNjQ2NjcsNjQ2NjddLFwibWFwcGVkXCIsWzE1NzQsMTYwN11dLFtbNjQ2NjgsNjQ2NjhdLFwibWFwcGVkXCIsWzE1NzYsMTU4MF1dLFtbNjQ2NjksNjQ2NjldLFwibWFwcGVkXCIsWzE1NzYsMTU4MV1dLFtbNjQ2NzAsNjQ2NzBdLFwibWFwcGVkXCIsWzE1NzYsMTU4Ml1dLFtbNjQ2NzEsNjQ2NzFdLFwibWFwcGVkXCIsWzE1NzYsMTYwNV1dLFtbNjQ2NzIsNjQ2NzJdLFwibWFwcGVkXCIsWzE1NzYsMTYwN11dLFtbNjQ2NzMsNjQ2NzNdLFwibWFwcGVkXCIsWzE1NzgsMTU4MF1dLFtbNjQ2NzQsNjQ2NzRdLFwibWFwcGVkXCIsWzE1NzgsMTU4MV1dLFtbNjQ2NzUsNjQ2NzVdLFwibWFwcGVkXCIsWzE1NzgsMTU4Ml1dLFtbNjQ2NzYsNjQ2NzZdLFwibWFwcGVkXCIsWzE1NzgsMTYwNV1dLFtbNjQ2NzcsNjQ2NzddLFwibWFwcGVkXCIsWzE1NzgsMTYwN11dLFtbNjQ2NzgsNjQ2NzhdLFwibWFwcGVkXCIsWzE1NzksMTYwNV1dLFtbNjQ2NzksNjQ2NzldLFwibWFwcGVkXCIsWzE1ODAsMTU4MV1dLFtbNjQ2ODAsNjQ2ODBdLFwibWFwcGVkXCIsWzE1ODAsMTYwNV1dLFtbNjQ2ODEsNjQ2ODFdLFwibWFwcGVkXCIsWzE1ODEsMTU4MF1dLFtbNjQ2ODIsNjQ2ODJdLFwibWFwcGVkXCIsWzE1ODEsMTYwNV1dLFtbNjQ2ODMsNjQ2ODNdLFwibWFwcGVkXCIsWzE1ODIsMTU4MF1dLFtbNjQ2ODQsNjQ2ODRdLFwibWFwcGVkXCIsWzE1ODIsMTYwNV1dLFtbNjQ2ODUsNjQ2ODVdLFwibWFwcGVkXCIsWzE1ODcsMTU4MF1dLFtbNjQ2ODYsNjQ2ODZdLFwibWFwcGVkXCIsWzE1ODcsMTU4MV1dLFtbNjQ2ODcsNjQ2ODddLFwibWFwcGVkXCIsWzE1ODcsMTU4Ml1dLFtbNjQ2ODgsNjQ2ODhdLFwibWFwcGVkXCIsWzE1ODcsMTYwNV1dLFtbNjQ2ODksNjQ2ODldLFwibWFwcGVkXCIsWzE1ODksMTU4MV1dLFtbNjQ2OTAsNjQ2OTBdLFwibWFwcGVkXCIsWzE1ODksMTU4Ml1dLFtbNjQ2OTEsNjQ2OTFdLFwibWFwcGVkXCIsWzE1ODksMTYwNV1dLFtbNjQ2OTIsNjQ2OTJdLFwibWFwcGVkXCIsWzE1OTAsMTU4MF1dLFtbNjQ2OTMsNjQ2OTNdLFwibWFwcGVkXCIsWzE1OTAsMTU4MV1dLFtbNjQ2OTQsNjQ2OTRdLFwibWFwcGVkXCIsWzE1OTAsMTU4Ml1dLFtbNjQ2OTUsNjQ2OTVdLFwibWFwcGVkXCIsWzE1OTAsMTYwNV1dLFtbNjQ2OTYsNjQ2OTZdLFwibWFwcGVkXCIsWzE1OTEsMTU4MV1dLFtbNjQ2OTcsNjQ2OTddLFwibWFwcGVkXCIsWzE1OTIsMTYwNV1dLFtbNjQ2OTgsNjQ2OThdLFwibWFwcGVkXCIsWzE1OTMsMTU4MF1dLFtbNjQ2OTksNjQ2OTldLFwibWFwcGVkXCIsWzE1OTMsMTYwNV1dLFtbNjQ3MDAsNjQ3MDBdLFwibWFwcGVkXCIsWzE1OTQsMTU4MF1dLFtbNjQ3MDEsNjQ3MDFdLFwibWFwcGVkXCIsWzE1OTQsMTYwNV1dLFtbNjQ3MDIsNjQ3MDJdLFwibWFwcGVkXCIsWzE2MDEsMTU4MF1dLFtbNjQ3MDMsNjQ3MDNdLFwibWFwcGVkXCIsWzE2MDEsMTU4MV1dLFtbNjQ3MDQsNjQ3MDRdLFwibWFwcGVkXCIsWzE2MDEsMTU4Ml1dLFtbNjQ3MDUsNjQ3MDVdLFwibWFwcGVkXCIsWzE2MDEsMTYwNV1dLFtbNjQ3MDYsNjQ3MDZdLFwibWFwcGVkXCIsWzE2MDIsMTU4MV1dLFtbNjQ3MDcsNjQ3MDddLFwibWFwcGVkXCIsWzE2MDIsMTYwNV1dLFtbNjQ3MDgsNjQ3MDhdLFwibWFwcGVkXCIsWzE2MDMsMTU4MF1dLFtbNjQ3MDksNjQ3MDldLFwibWFwcGVkXCIsWzE2MDMsMTU4MV1dLFtbNjQ3MTAsNjQ3MTBdLFwibWFwcGVkXCIsWzE2MDMsMTU4Ml1dLFtbNjQ3MTEsNjQ3MTFdLFwibWFwcGVkXCIsWzE2MDMsMTYwNF1dLFtbNjQ3MTIsNjQ3MTJdLFwibWFwcGVkXCIsWzE2MDMsMTYwNV1dLFtbNjQ3MTMsNjQ3MTNdLFwibWFwcGVkXCIsWzE2MDQsMTU4MF1dLFtbNjQ3MTQsNjQ3MTRdLFwibWFwcGVkXCIsWzE2MDQsMTU4MV1dLFtbNjQ3MTUsNjQ3MTVdLFwibWFwcGVkXCIsWzE2MDQsMTU4Ml1dLFtbNjQ3MTYsNjQ3MTZdLFwibWFwcGVkXCIsWzE2MDQsMTYwNV1dLFtbNjQ3MTcsNjQ3MTddLFwibWFwcGVkXCIsWzE2MDQsMTYwN11dLFtbNjQ3MTgsNjQ3MThdLFwibWFwcGVkXCIsWzE2MDUsMTU4MF1dLFtbNjQ3MTksNjQ3MTldLFwibWFwcGVkXCIsWzE2MDUsMTU4MV1dLFtbNjQ3MjAsNjQ3MjBdLFwibWFwcGVkXCIsWzE2MDUsMTU4Ml1dLFtbNjQ3MjEsNjQ3MjFdLFwibWFwcGVkXCIsWzE2MDUsMTYwNV1dLFtbNjQ3MjIsNjQ3MjJdLFwibWFwcGVkXCIsWzE2MDYsMTU4MF1dLFtbNjQ3MjMsNjQ3MjNdLFwibWFwcGVkXCIsWzE2MDYsMTU4MV1dLFtbNjQ3MjQsNjQ3MjRdLFwibWFwcGVkXCIsWzE2MDYsMTU4Ml1dLFtbNjQ3MjUsNjQ3MjVdLFwibWFwcGVkXCIsWzE2MDYsMTYwNV1dLFtbNjQ3MjYsNjQ3MjZdLFwibWFwcGVkXCIsWzE2MDYsMTYwN11dLFtbNjQ3MjcsNjQ3MjddLFwibWFwcGVkXCIsWzE2MDcsMTU4MF1dLFtbNjQ3MjgsNjQ3MjhdLFwibWFwcGVkXCIsWzE2MDcsMTYwNV1dLFtbNjQ3MjksNjQ3MjldLFwibWFwcGVkXCIsWzE2MDcsMTY0OF1dLFtbNjQ3MzAsNjQ3MzBdLFwibWFwcGVkXCIsWzE2MTAsMTU4MF1dLFtbNjQ3MzEsNjQ3MzFdLFwibWFwcGVkXCIsWzE2MTAsMTU4MV1dLFtbNjQ3MzIsNjQ3MzJdLFwibWFwcGVkXCIsWzE2MTAsMTU4Ml1dLFtbNjQ3MzMsNjQ3MzNdLFwibWFwcGVkXCIsWzE2MTAsMTYwNV1dLFtbNjQ3MzQsNjQ3MzRdLFwibWFwcGVkXCIsWzE2MTAsMTYwN11dLFtbNjQ3MzUsNjQ3MzVdLFwibWFwcGVkXCIsWzE1NzQsMTYwNV1dLFtbNjQ3MzYsNjQ3MzZdLFwibWFwcGVkXCIsWzE1NzQsMTYwN11dLFtbNjQ3MzcsNjQ3MzddLFwibWFwcGVkXCIsWzE1NzYsMTYwNV1dLFtbNjQ3MzgsNjQ3MzhdLFwibWFwcGVkXCIsWzE1NzYsMTYwN11dLFtbNjQ3MzksNjQ3MzldLFwibWFwcGVkXCIsWzE1NzgsMTYwNV1dLFtbNjQ3NDAsNjQ3NDBdLFwibWFwcGVkXCIsWzE1NzgsMTYwN11dLFtbNjQ3NDEsNjQ3NDFdLFwibWFwcGVkXCIsWzE1NzksMTYwNV1dLFtbNjQ3NDIsNjQ3NDJdLFwibWFwcGVkXCIsWzE1NzksMTYwN11dLFtbNjQ3NDMsNjQ3NDNdLFwibWFwcGVkXCIsWzE1ODcsMTYwNV1dLFtbNjQ3NDQsNjQ3NDRdLFwibWFwcGVkXCIsWzE1ODcsMTYwN11dLFtbNjQ3NDUsNjQ3NDVdLFwibWFwcGVkXCIsWzE1ODgsMTYwNV1dLFtbNjQ3NDYsNjQ3NDZdLFwibWFwcGVkXCIsWzE1ODgsMTYwN11dLFtbNjQ3NDcsNjQ3NDddLFwibWFwcGVkXCIsWzE2MDMsMTYwNF1dLFtbNjQ3NDgsNjQ3NDhdLFwibWFwcGVkXCIsWzE2MDMsMTYwNV1dLFtbNjQ3NDksNjQ3NDldLFwibWFwcGVkXCIsWzE2MDQsMTYwNV1dLFtbNjQ3NTAsNjQ3NTBdLFwibWFwcGVkXCIsWzE2MDYsMTYwNV1dLFtbNjQ3NTEsNjQ3NTFdLFwibWFwcGVkXCIsWzE2MDYsMTYwN11dLFtbNjQ3NTIsNjQ3NTJdLFwibWFwcGVkXCIsWzE2MTAsMTYwNV1dLFtbNjQ3NTMsNjQ3NTNdLFwibWFwcGVkXCIsWzE2MTAsMTYwN11dLFtbNjQ3NTQsNjQ3NTRdLFwibWFwcGVkXCIsWzE2MDAsMTYxNCwxNjE3XV0sW1s2NDc1NSw2NDc1NV0sXCJtYXBwZWRcIixbMTYwMCwxNjE1LDE2MTddXSxbWzY0NzU2LDY0NzU2XSxcIm1hcHBlZFwiLFsxNjAwLDE2MTYsMTYxN11dLFtbNjQ3NTcsNjQ3NTddLFwibWFwcGVkXCIsWzE1OTEsMTYwOV1dLFtbNjQ3NTgsNjQ3NThdLFwibWFwcGVkXCIsWzE1OTEsMTYxMF1dLFtbNjQ3NTksNjQ3NTldLFwibWFwcGVkXCIsWzE1OTMsMTYwOV1dLFtbNjQ3NjAsNjQ3NjBdLFwibWFwcGVkXCIsWzE1OTMsMTYxMF1dLFtbNjQ3NjEsNjQ3NjFdLFwibWFwcGVkXCIsWzE1OTQsMTYwOV1dLFtbNjQ3NjIsNjQ3NjJdLFwibWFwcGVkXCIsWzE1OTQsMTYxMF1dLFtbNjQ3NjMsNjQ3NjNdLFwibWFwcGVkXCIsWzE1ODcsMTYwOV1dLFtbNjQ3NjQsNjQ3NjRdLFwibWFwcGVkXCIsWzE1ODcsMTYxMF1dLFtbNjQ3NjUsNjQ3NjVdLFwibWFwcGVkXCIsWzE1ODgsMTYwOV1dLFtbNjQ3NjYsNjQ3NjZdLFwibWFwcGVkXCIsWzE1ODgsMTYxMF1dLFtbNjQ3NjcsNjQ3NjddLFwibWFwcGVkXCIsWzE1ODEsMTYwOV1dLFtbNjQ3NjgsNjQ3NjhdLFwibWFwcGVkXCIsWzE1ODEsMTYxMF1dLFtbNjQ3NjksNjQ3NjldLFwibWFwcGVkXCIsWzE1ODAsMTYwOV1dLFtbNjQ3NzAsNjQ3NzBdLFwibWFwcGVkXCIsWzE1ODAsMTYxMF1dLFtbNjQ3NzEsNjQ3NzFdLFwibWFwcGVkXCIsWzE1ODIsMTYwOV1dLFtbNjQ3NzIsNjQ3NzJdLFwibWFwcGVkXCIsWzE1ODIsMTYxMF1dLFtbNjQ3NzMsNjQ3NzNdLFwibWFwcGVkXCIsWzE1ODksMTYwOV1dLFtbNjQ3NzQsNjQ3NzRdLFwibWFwcGVkXCIsWzE1ODksMTYxMF1dLFtbNjQ3NzUsNjQ3NzVdLFwibWFwcGVkXCIsWzE1OTAsMTYwOV1dLFtbNjQ3NzYsNjQ3NzZdLFwibWFwcGVkXCIsWzE1OTAsMTYxMF1dLFtbNjQ3NzcsNjQ3NzddLFwibWFwcGVkXCIsWzE1ODgsMTU4MF1dLFtbNjQ3NzgsNjQ3NzhdLFwibWFwcGVkXCIsWzE1ODgsMTU4MV1dLFtbNjQ3NzksNjQ3NzldLFwibWFwcGVkXCIsWzE1ODgsMTU4Ml1dLFtbNjQ3ODAsNjQ3ODBdLFwibWFwcGVkXCIsWzE1ODgsMTYwNV1dLFtbNjQ3ODEsNjQ3ODFdLFwibWFwcGVkXCIsWzE1ODgsMTU4NV1dLFtbNjQ3ODIsNjQ3ODJdLFwibWFwcGVkXCIsWzE1ODcsMTU4NV1dLFtbNjQ3ODMsNjQ3ODNdLFwibWFwcGVkXCIsWzE1ODksMTU4NV1dLFtbNjQ3ODQsNjQ3ODRdLFwibWFwcGVkXCIsWzE1OTAsMTU4NV1dLFtbNjQ3ODUsNjQ3ODVdLFwibWFwcGVkXCIsWzE1OTEsMTYwOV1dLFtbNjQ3ODYsNjQ3ODZdLFwibWFwcGVkXCIsWzE1OTEsMTYxMF1dLFtbNjQ3ODcsNjQ3ODddLFwibWFwcGVkXCIsWzE1OTMsMTYwOV1dLFtbNjQ3ODgsNjQ3ODhdLFwibWFwcGVkXCIsWzE1OTMsMTYxMF1dLFtbNjQ3ODksNjQ3ODldLFwibWFwcGVkXCIsWzE1OTQsMTYwOV1dLFtbNjQ3OTAsNjQ3OTBdLFwibWFwcGVkXCIsWzE1OTQsMTYxMF1dLFtbNjQ3OTEsNjQ3OTFdLFwibWFwcGVkXCIsWzE1ODcsMTYwOV1dLFtbNjQ3OTIsNjQ3OTJdLFwibWFwcGVkXCIsWzE1ODcsMTYxMF1dLFtbNjQ3OTMsNjQ3OTNdLFwibWFwcGVkXCIsWzE1ODgsMTYwOV1dLFtbNjQ3OTQsNjQ3OTRdLFwibWFwcGVkXCIsWzE1ODgsMTYxMF1dLFtbNjQ3OTUsNjQ3OTVdLFwibWFwcGVkXCIsWzE1ODEsMTYwOV1dLFtbNjQ3OTYsNjQ3OTZdLFwibWFwcGVkXCIsWzE1ODEsMTYxMF1dLFtbNjQ3OTcsNjQ3OTddLFwibWFwcGVkXCIsWzE1ODAsMTYwOV1dLFtbNjQ3OTgsNjQ3OThdLFwibWFwcGVkXCIsWzE1ODAsMTYxMF1dLFtbNjQ3OTksNjQ3OTldLFwibWFwcGVkXCIsWzE1ODIsMTYwOV1dLFtbNjQ4MDAsNjQ4MDBdLFwibWFwcGVkXCIsWzE1ODIsMTYxMF1dLFtbNjQ4MDEsNjQ4MDFdLFwibWFwcGVkXCIsWzE1ODksMTYwOV1dLFtbNjQ4MDIsNjQ4MDJdLFwibWFwcGVkXCIsWzE1ODksMTYxMF1dLFtbNjQ4MDMsNjQ4MDNdLFwibWFwcGVkXCIsWzE1OTAsMTYwOV1dLFtbNjQ4MDQsNjQ4MDRdLFwibWFwcGVkXCIsWzE1OTAsMTYxMF1dLFtbNjQ4MDUsNjQ4MDVdLFwibWFwcGVkXCIsWzE1ODgsMTU4MF1dLFtbNjQ4MDYsNjQ4MDZdLFwibWFwcGVkXCIsWzE1ODgsMTU4MV1dLFtbNjQ4MDcsNjQ4MDddLFwibWFwcGVkXCIsWzE1ODgsMTU4Ml1dLFtbNjQ4MDgsNjQ4MDhdLFwibWFwcGVkXCIsWzE1ODgsMTYwNV1dLFtbNjQ4MDksNjQ4MDldLFwibWFwcGVkXCIsWzE1ODgsMTU4NV1dLFtbNjQ4MTAsNjQ4MTBdLFwibWFwcGVkXCIsWzE1ODcsMTU4NV1dLFtbNjQ4MTEsNjQ4MTFdLFwibWFwcGVkXCIsWzE1ODksMTU4NV1dLFtbNjQ4MTIsNjQ4MTJdLFwibWFwcGVkXCIsWzE1OTAsMTU4NV1dLFtbNjQ4MTMsNjQ4MTNdLFwibWFwcGVkXCIsWzE1ODgsMTU4MF1dLFtbNjQ4MTQsNjQ4MTRdLFwibWFwcGVkXCIsWzE1ODgsMTU4MV1dLFtbNjQ4MTUsNjQ4MTVdLFwibWFwcGVkXCIsWzE1ODgsMTU4Ml1dLFtbNjQ4MTYsNjQ4MTZdLFwibWFwcGVkXCIsWzE1ODgsMTYwNV1dLFtbNjQ4MTcsNjQ4MTddLFwibWFwcGVkXCIsWzE1ODcsMTYwN11dLFtbNjQ4MTgsNjQ4MThdLFwibWFwcGVkXCIsWzE1ODgsMTYwN11dLFtbNjQ4MTksNjQ4MTldLFwibWFwcGVkXCIsWzE1OTEsMTYwNV1dLFtbNjQ4MjAsNjQ4MjBdLFwibWFwcGVkXCIsWzE1ODcsMTU4MF1dLFtbNjQ4MjEsNjQ4MjFdLFwibWFwcGVkXCIsWzE1ODcsMTU4MV1dLFtbNjQ4MjIsNjQ4MjJdLFwibWFwcGVkXCIsWzE1ODcsMTU4Ml1dLFtbNjQ4MjMsNjQ4MjNdLFwibWFwcGVkXCIsWzE1ODgsMTU4MF1dLFtbNjQ4MjQsNjQ4MjRdLFwibWFwcGVkXCIsWzE1ODgsMTU4MV1dLFtbNjQ4MjUsNjQ4MjVdLFwibWFwcGVkXCIsWzE1ODgsMTU4Ml1dLFtbNjQ4MjYsNjQ4MjZdLFwibWFwcGVkXCIsWzE1OTEsMTYwNV1dLFtbNjQ4MjcsNjQ4MjddLFwibWFwcGVkXCIsWzE1OTIsMTYwNV1dLFtbNjQ4MjgsNjQ4MjldLFwibWFwcGVkXCIsWzE1NzUsMTYxMV1dLFtbNjQ4MzAsNjQ4MzFdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzY0ODMyLDY0ODQ3XSxcImRpc2FsbG93ZWRcIl0sW1s2NDg0OCw2NDg0OF0sXCJtYXBwZWRcIixbMTU3OCwxNTgwLDE2MDVdXSxbWzY0ODQ5LDY0ODUwXSxcIm1hcHBlZFwiLFsxNTc4LDE1ODEsMTU4MF1dLFtbNjQ4NTEsNjQ4NTFdLFwibWFwcGVkXCIsWzE1NzgsMTU4MSwxNjA1XV0sW1s2NDg1Miw2NDg1Ml0sXCJtYXBwZWRcIixbMTU3OCwxNTgyLDE2MDVdXSxbWzY0ODUzLDY0ODUzXSxcIm1hcHBlZFwiLFsxNTc4LDE2MDUsMTU4MF1dLFtbNjQ4NTQsNjQ4NTRdLFwibWFwcGVkXCIsWzE1NzgsMTYwNSwxNTgxXV0sW1s2NDg1NSw2NDg1NV0sXCJtYXBwZWRcIixbMTU3OCwxNjA1LDE1ODJdXSxbWzY0ODU2LDY0ODU3XSxcIm1hcHBlZFwiLFsxNTgwLDE2MDUsMTU4MV1dLFtbNjQ4NTgsNjQ4NThdLFwibWFwcGVkXCIsWzE1ODEsMTYwNSwxNjEwXV0sW1s2NDg1OSw2NDg1OV0sXCJtYXBwZWRcIixbMTU4MSwxNjA1LDE2MDldXSxbWzY0ODYwLDY0ODYwXSxcIm1hcHBlZFwiLFsxNTg3LDE1ODEsMTU4MF1dLFtbNjQ4NjEsNjQ4NjFdLFwibWFwcGVkXCIsWzE1ODcsMTU4MCwxNTgxXV0sW1s2NDg2Miw2NDg2Ml0sXCJtYXBwZWRcIixbMTU4NywxNTgwLDE2MDldXSxbWzY0ODYzLDY0ODY0XSxcIm1hcHBlZFwiLFsxNTg3LDE2MDUsMTU4MV1dLFtbNjQ4NjUsNjQ4NjVdLFwibWFwcGVkXCIsWzE1ODcsMTYwNSwxNTgwXV0sW1s2NDg2Niw2NDg2N10sXCJtYXBwZWRcIixbMTU4NywxNjA1LDE2MDVdXSxbWzY0ODY4LDY0ODY5XSxcIm1hcHBlZFwiLFsxNTg5LDE1ODEsMTU4MV1dLFtbNjQ4NzAsNjQ4NzBdLFwibWFwcGVkXCIsWzE1ODksMTYwNSwxNjA1XV0sW1s2NDg3MSw2NDg3Ml0sXCJtYXBwZWRcIixbMTU4OCwxNTgxLDE2MDVdXSxbWzY0ODczLDY0ODczXSxcIm1hcHBlZFwiLFsxNTg4LDE1ODAsMTYxMF1dLFtbNjQ4NzQsNjQ4NzVdLFwibWFwcGVkXCIsWzE1ODgsMTYwNSwxNTgyXV0sW1s2NDg3Niw2NDg3N10sXCJtYXBwZWRcIixbMTU4OCwxNjA1LDE2MDVdXSxbWzY0ODc4LDY0ODc4XSxcIm1hcHBlZFwiLFsxNTkwLDE1ODEsMTYwOV1dLFtbNjQ4NzksNjQ4ODBdLFwibWFwcGVkXCIsWzE1OTAsMTU4MiwxNjA1XV0sW1s2NDg4MSw2NDg4Ml0sXCJtYXBwZWRcIixbMTU5MSwxNjA1LDE1ODFdXSxbWzY0ODgzLDY0ODgzXSxcIm1hcHBlZFwiLFsxNTkxLDE2MDUsMTYwNV1dLFtbNjQ4ODQsNjQ4ODRdLFwibWFwcGVkXCIsWzE1OTEsMTYwNSwxNjEwXV0sW1s2NDg4NSw2NDg4NV0sXCJtYXBwZWRcIixbMTU5MywxNTgwLDE2MDVdXSxbWzY0ODg2LDY0ODg3XSxcIm1hcHBlZFwiLFsxNTkzLDE2MDUsMTYwNV1dLFtbNjQ4ODgsNjQ4ODhdLFwibWFwcGVkXCIsWzE1OTMsMTYwNSwxNjA5XV0sW1s2NDg4OSw2NDg4OV0sXCJtYXBwZWRcIixbMTU5NCwxNjA1LDE2MDVdXSxbWzY0ODkwLDY0ODkwXSxcIm1hcHBlZFwiLFsxNTk0LDE2MDUsMTYxMF1dLFtbNjQ4OTEsNjQ4OTFdLFwibWFwcGVkXCIsWzE1OTQsMTYwNSwxNjA5XV0sW1s2NDg5Miw2NDg5M10sXCJtYXBwZWRcIixbMTYwMSwxNTgyLDE2MDVdXSxbWzY0ODk0LDY0ODk0XSxcIm1hcHBlZFwiLFsxNjAyLDE2MDUsMTU4MV1dLFtbNjQ4OTUsNjQ4OTVdLFwibWFwcGVkXCIsWzE2MDIsMTYwNSwxNjA1XV0sW1s2NDg5Niw2NDg5Nl0sXCJtYXBwZWRcIixbMTYwNCwxNTgxLDE2MDVdXSxbWzY0ODk3LDY0ODk3XSxcIm1hcHBlZFwiLFsxNjA0LDE1ODEsMTYxMF1dLFtbNjQ4OTgsNjQ4OThdLFwibWFwcGVkXCIsWzE2MDQsMTU4MSwxNjA5XV0sW1s2NDg5OSw2NDkwMF0sXCJtYXBwZWRcIixbMTYwNCwxNTgwLDE1ODBdXSxbWzY0OTAxLDY0OTAyXSxcIm1hcHBlZFwiLFsxNjA0LDE1ODIsMTYwNV1dLFtbNjQ5MDMsNjQ5MDRdLFwibWFwcGVkXCIsWzE2MDQsMTYwNSwxNTgxXV0sW1s2NDkwNSw2NDkwNV0sXCJtYXBwZWRcIixbMTYwNSwxNTgxLDE1ODBdXSxbWzY0OTA2LDY0OTA2XSxcIm1hcHBlZFwiLFsxNjA1LDE1ODEsMTYwNV1dLFtbNjQ5MDcsNjQ5MDddLFwibWFwcGVkXCIsWzE2MDUsMTU4MSwxNjEwXV0sW1s2NDkwOCw2NDkwOF0sXCJtYXBwZWRcIixbMTYwNSwxNTgwLDE1ODFdXSxbWzY0OTA5LDY0OTA5XSxcIm1hcHBlZFwiLFsxNjA1LDE1ODAsMTYwNV1dLFtbNjQ5MTAsNjQ5MTBdLFwibWFwcGVkXCIsWzE2MDUsMTU4MiwxNTgwXV0sW1s2NDkxMSw2NDkxMV0sXCJtYXBwZWRcIixbMTYwNSwxNTgyLDE2MDVdXSxbWzY0OTEyLDY0OTEzXSxcImRpc2FsbG93ZWRcIl0sW1s2NDkxNCw2NDkxNF0sXCJtYXBwZWRcIixbMTYwNSwxNTgwLDE1ODJdXSxbWzY0OTE1LDY0OTE1XSxcIm1hcHBlZFwiLFsxNjA3LDE2MDUsMTU4MF1dLFtbNjQ5MTYsNjQ5MTZdLFwibWFwcGVkXCIsWzE2MDcsMTYwNSwxNjA1XV0sW1s2NDkxNyw2NDkxN10sXCJtYXBwZWRcIixbMTYwNiwxNTgxLDE2MDVdXSxbWzY0OTE4LDY0OTE4XSxcIm1hcHBlZFwiLFsxNjA2LDE1ODEsMTYwOV1dLFtbNjQ5MTksNjQ5MjBdLFwibWFwcGVkXCIsWzE2MDYsMTU4MCwxNjA1XV0sW1s2NDkyMSw2NDkyMV0sXCJtYXBwZWRcIixbMTYwNiwxNTgwLDE2MDldXSxbWzY0OTIyLDY0OTIyXSxcIm1hcHBlZFwiLFsxNjA2LDE2MDUsMTYxMF1dLFtbNjQ5MjMsNjQ5MjNdLFwibWFwcGVkXCIsWzE2MDYsMTYwNSwxNjA5XV0sW1s2NDkyNCw2NDkyNV0sXCJtYXBwZWRcIixbMTYxMCwxNjA1LDE2MDVdXSxbWzY0OTI2LDY0OTI2XSxcIm1hcHBlZFwiLFsxNTc2LDE1ODIsMTYxMF1dLFtbNjQ5MjcsNjQ5MjddLFwibWFwcGVkXCIsWzE1NzgsMTU4MCwxNjEwXV0sW1s2NDkyOCw2NDkyOF0sXCJtYXBwZWRcIixbMTU3OCwxNTgwLDE2MDldXSxbWzY0OTI5LDY0OTI5XSxcIm1hcHBlZFwiLFsxNTc4LDE1ODIsMTYxMF1dLFtbNjQ5MzAsNjQ5MzBdLFwibWFwcGVkXCIsWzE1NzgsMTU4MiwxNjA5XV0sW1s2NDkzMSw2NDkzMV0sXCJtYXBwZWRcIixbMTU3OCwxNjA1LDE2MTBdXSxbWzY0OTMyLDY0OTMyXSxcIm1hcHBlZFwiLFsxNTc4LDE2MDUsMTYwOV1dLFtbNjQ5MzMsNjQ5MzNdLFwibWFwcGVkXCIsWzE1ODAsMTYwNSwxNjEwXV0sW1s2NDkzNCw2NDkzNF0sXCJtYXBwZWRcIixbMTU4MCwxNTgxLDE2MDldXSxbWzY0OTM1LDY0OTM1XSxcIm1hcHBlZFwiLFsxNTgwLDE2MDUsMTYwOV1dLFtbNjQ5MzYsNjQ5MzZdLFwibWFwcGVkXCIsWzE1ODcsMTU4MiwxNjA5XV0sW1s2NDkzNyw2NDkzN10sXCJtYXBwZWRcIixbMTU4OSwxNTgxLDE2MTBdXSxbWzY0OTM4LDY0OTM4XSxcIm1hcHBlZFwiLFsxNTg4LDE1ODEsMTYxMF1dLFtbNjQ5MzksNjQ5MzldLFwibWFwcGVkXCIsWzE1OTAsMTU4MSwxNjEwXV0sW1s2NDk0MCw2NDk0MF0sXCJtYXBwZWRcIixbMTYwNCwxNTgwLDE2MTBdXSxbWzY0OTQxLDY0OTQxXSxcIm1hcHBlZFwiLFsxNjA0LDE2MDUsMTYxMF1dLFtbNjQ5NDIsNjQ5NDJdLFwibWFwcGVkXCIsWzE2MTAsMTU4MSwxNjEwXV0sW1s2NDk0Myw2NDk0M10sXCJtYXBwZWRcIixbMTYxMCwxNTgwLDE2MTBdXSxbWzY0OTQ0LDY0OTQ0XSxcIm1hcHBlZFwiLFsxNjEwLDE2MDUsMTYxMF1dLFtbNjQ5NDUsNjQ5NDVdLFwibWFwcGVkXCIsWzE2MDUsMTYwNSwxNjEwXV0sW1s2NDk0Niw2NDk0Nl0sXCJtYXBwZWRcIixbMTYwMiwxNjA1LDE2MTBdXSxbWzY0OTQ3LDY0OTQ3XSxcIm1hcHBlZFwiLFsxNjA2LDE1ODEsMTYxMF1dLFtbNjQ5NDgsNjQ5NDhdLFwibWFwcGVkXCIsWzE2MDIsMTYwNSwxNTgxXV0sW1s2NDk0OSw2NDk0OV0sXCJtYXBwZWRcIixbMTYwNCwxNTgxLDE2MDVdXSxbWzY0OTUwLDY0OTUwXSxcIm1hcHBlZFwiLFsxNTkzLDE2MDUsMTYxMF1dLFtbNjQ5NTEsNjQ5NTFdLFwibWFwcGVkXCIsWzE2MDMsMTYwNSwxNjEwXV0sW1s2NDk1Miw2NDk1Ml0sXCJtYXBwZWRcIixbMTYwNiwxNTgwLDE1ODFdXSxbWzY0OTUzLDY0OTUzXSxcIm1hcHBlZFwiLFsxNjA1LDE1ODIsMTYxMF1dLFtbNjQ5NTQsNjQ5NTRdLFwibWFwcGVkXCIsWzE2MDQsMTU4MCwxNjA1XV0sW1s2NDk1NSw2NDk1NV0sXCJtYXBwZWRcIixbMTYwMywxNjA1LDE2MDVdXSxbWzY0OTU2LDY0OTU2XSxcIm1hcHBlZFwiLFsxNjA0LDE1ODAsMTYwNV1dLFtbNjQ5NTcsNjQ5NTddLFwibWFwcGVkXCIsWzE2MDYsMTU4MCwxNTgxXV0sW1s2NDk1OCw2NDk1OF0sXCJtYXBwZWRcIixbMTU4MCwxNTgxLDE2MTBdXSxbWzY0OTU5LDY0OTU5XSxcIm1hcHBlZFwiLFsxNTgxLDE1ODAsMTYxMF1dLFtbNjQ5NjAsNjQ5NjBdLFwibWFwcGVkXCIsWzE2MDUsMTU4MCwxNjEwXV0sW1s2NDk2MSw2NDk2MV0sXCJtYXBwZWRcIixbMTYwMSwxNjA1LDE2MTBdXSxbWzY0OTYyLDY0OTYyXSxcIm1hcHBlZFwiLFsxNTc2LDE1ODEsMTYxMF1dLFtbNjQ5NjMsNjQ5NjNdLFwibWFwcGVkXCIsWzE2MDMsMTYwNSwxNjA1XV0sW1s2NDk2NCw2NDk2NF0sXCJtYXBwZWRcIixbMTU5MywxNTgwLDE2MDVdXSxbWzY0OTY1LDY0OTY1XSxcIm1hcHBlZFwiLFsxNTg5LDE2MDUsMTYwNV1dLFtbNjQ5NjYsNjQ5NjZdLFwibWFwcGVkXCIsWzE1ODcsMTU4MiwxNjEwXV0sW1s2NDk2Nyw2NDk2N10sXCJtYXBwZWRcIixbMTYwNiwxNTgwLDE2MTBdXSxbWzY0OTY4LDY0OTc1XSxcImRpc2FsbG93ZWRcIl0sW1s2NDk3Niw2NTAwN10sXCJkaXNhbGxvd2VkXCJdLFtbNjUwMDgsNjUwMDhdLFwibWFwcGVkXCIsWzE1ODksMTYwNCwxNzQ2XV0sW1s2NTAwOSw2NTAwOV0sXCJtYXBwZWRcIixbMTYwMiwxNjA0LDE3NDZdXSxbWzY1MDEwLDY1MDEwXSxcIm1hcHBlZFwiLFsxNTc1LDE2MDQsMTYwNCwxNjA3XV0sW1s2NTAxMSw2NTAxMV0sXCJtYXBwZWRcIixbMTU3NSwxNjAzLDE1NzYsMTU4NV1dLFtbNjUwMTIsNjUwMTJdLFwibWFwcGVkXCIsWzE2MDUsMTU4MSwxNjA1LDE1ODNdXSxbWzY1MDEzLDY1MDEzXSxcIm1hcHBlZFwiLFsxNTg5LDE2MDQsMTU5MywxNjA1XV0sW1s2NTAxNCw2NTAxNF0sXCJtYXBwZWRcIixbMTU4NSwxNTg3LDE2MDgsMTYwNF1dLFtbNjUwMTUsNjUwMTVdLFwibWFwcGVkXCIsWzE1OTMsMTYwNCwxNjEwLDE2MDddXSxbWzY1MDE2LDY1MDE2XSxcIm1hcHBlZFwiLFsxNjA4LDE1ODcsMTYwNCwxNjA1XV0sW1s2NTAxNyw2NTAxN10sXCJtYXBwZWRcIixbMTU4OSwxNjA0LDE2MDldXSxbWzY1MDE4LDY1MDE4XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbMTU4OSwxNjA0LDE2MDksMzIsMTU3NSwxNjA0LDE2MDQsMTYwNywzMiwxNTkzLDE2MDQsMTYxMCwxNjA3LDMyLDE2MDgsMTU4NywxNjA0LDE2MDVdXSxbWzY1MDE5LDY1MDE5XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbMTU4MCwxNjA0LDMyLDE1ODAsMTYwNCwxNTc1LDE2MDQsMTYwN11dLFtbNjUwMjAsNjUwMjBdLFwibWFwcGVkXCIsWzE1ODUsMTc0MCwxNTc1LDE2MDRdXSxbWzY1MDIxLDY1MDIxXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s2NTAyMiw2NTAyM10sXCJkaXNhbGxvd2VkXCJdLFtbNjUwMjQsNjUwMzldLFwiaWdub3JlZFwiXSxbWzY1MDQwLDY1MDQwXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNDRdXSxbWzY1MDQxLDY1MDQxXSxcIm1hcHBlZFwiLFsxMjI4OV1dLFtbNjUwNDIsNjUwNDJdLFwiZGlzYWxsb3dlZFwiXSxbWzY1MDQzLDY1MDQzXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNThdXSxbWzY1MDQ0LDY1MDQ0XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNTldXSxbWzY1MDQ1LDY1MDQ1XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbMzNdXSxbWzY1MDQ2LDY1MDQ2XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNjNdXSxbWzY1MDQ3LDY1MDQ3XSxcIm1hcHBlZFwiLFsxMjMxMF1dLFtbNjUwNDgsNjUwNDhdLFwibWFwcGVkXCIsWzEyMzExXV0sW1s2NTA0OSw2NTA0OV0sXCJkaXNhbGxvd2VkXCJdLFtbNjUwNTAsNjUwNTVdLFwiZGlzYWxsb3dlZFwiXSxbWzY1MDU2LDY1MDU5XSxcInZhbGlkXCJdLFtbNjUwNjAsNjUwNjJdLFwidmFsaWRcIl0sW1s2NTA2Myw2NTA2OV0sXCJ2YWxpZFwiXSxbWzY1MDcwLDY1MDcxXSxcInZhbGlkXCJdLFtbNjUwNzIsNjUwNzJdLFwiZGlzYWxsb3dlZFwiXSxbWzY1MDczLDY1MDczXSxcIm1hcHBlZFwiLFs4MjEyXV0sW1s2NTA3NCw2NTA3NF0sXCJtYXBwZWRcIixbODIxMV1dLFtbNjUwNzUsNjUwNzZdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs5NV1dLFtbNjUwNzcsNjUwNzddLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MF1dLFtbNjUwNzgsNjUwNzhdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MV1dLFtbNjUwNzksNjUwNzldLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFsxMjNdXSxbWzY1MDgwLDY1MDgwXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbMTI1XV0sW1s2NTA4MSw2NTA4MV0sXCJtYXBwZWRcIixbMTIzMDhdXSxbWzY1MDgyLDY1MDgyXSxcIm1hcHBlZFwiLFsxMjMwOV1dLFtbNjUwODMsNjUwODNdLFwibWFwcGVkXCIsWzEyMzA0XV0sW1s2NTA4NCw2NTA4NF0sXCJtYXBwZWRcIixbMTIzMDVdXSxbWzY1MDg1LDY1MDg1XSxcIm1hcHBlZFwiLFsxMjI5OF1dLFtbNjUwODYsNjUwODZdLFwibWFwcGVkXCIsWzEyMjk5XV0sW1s2NTA4Nyw2NTA4N10sXCJtYXBwZWRcIixbMTIyOTZdXSxbWzY1MDg4LDY1MDg4XSxcIm1hcHBlZFwiLFsxMjI5N11dLFtbNjUwODksNjUwODldLFwibWFwcGVkXCIsWzEyMzAwXV0sW1s2NTA5MCw2NTA5MF0sXCJtYXBwZWRcIixbMTIzMDFdXSxbWzY1MDkxLDY1MDkxXSxcIm1hcHBlZFwiLFsxMjMwMl1dLFtbNjUwOTIsNjUwOTJdLFwibWFwcGVkXCIsWzEyMzAzXV0sW1s2NTA5Myw2NTA5NF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNjUwOTUsNjUwOTVdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs5MV1dLFtbNjUwOTYsNjUwOTZdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs5M11dLFtbNjUwOTcsNjUxMDBdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFszMiw3NzNdXSxbWzY1MTAxLDY1MTAzXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbOTVdXSxbWzY1MTA0LDY1MTA0XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNDRdXSxbWzY1MTA1LDY1MTA1XSxcIm1hcHBlZFwiLFsxMjI4OV1dLFtbNjUxMDYsNjUxMDZdLFwiZGlzYWxsb3dlZFwiXSxbWzY1MTA3LDY1MTA3XSxcImRpc2FsbG93ZWRcIl0sW1s2NTEwOCw2NTEwOF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzU5XV0sW1s2NTEwOSw2NTEwOV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzU4XV0sW1s2NTExMCw2NTExMF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzYzXV0sW1s2NTExMSw2NTExMV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzMzXV0sW1s2NTExMiw2NTExMl0sXCJtYXBwZWRcIixbODIxMl1dLFtbNjUxMTMsNjUxMTNdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MF1dLFtbNjUxMTQsNjUxMTRdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MV1dLFtbNjUxMTUsNjUxMTVdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFsxMjNdXSxbWzY1MTE2LDY1MTE2XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbMTI1XV0sW1s2NTExNyw2NTExN10sXCJtYXBwZWRcIixbMTIzMDhdXSxbWzY1MTE4LDY1MTE4XSxcIm1hcHBlZFwiLFsxMjMwOV1dLFtbNjUxMTksNjUxMTldLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFszNV1dLFtbNjUxMjAsNjUxMjBdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFszOF1dLFtbNjUxMjEsNjUxMjFdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0Ml1dLFtbNjUxMjIsNjUxMjJdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0M11dLFtbNjUxMjMsNjUxMjNdLFwibWFwcGVkXCIsWzQ1XV0sW1s2NTEyNCw2NTEyNF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzYwXV0sW1s2NTEyNSw2NTEyNV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzYyXV0sW1s2NTEyNiw2NTEyNl0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzYxXV0sW1s2NTEyNyw2NTEyN10sXCJkaXNhbGxvd2VkXCJdLFtbNjUxMjgsNjUxMjhdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs5Ml1dLFtbNjUxMjksNjUxMjldLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFszNl1dLFtbNjUxMzAsNjUxMzBdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFszN11dLFtbNjUxMzEsNjUxMzFdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs2NF1dLFtbNjUxMzIsNjUxMzVdLFwiZGlzYWxsb3dlZFwiXSxbWzY1MTM2LDY1MTM2XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbMzIsMTYxMV1dLFtbNjUxMzcsNjUxMzddLFwibWFwcGVkXCIsWzE2MDAsMTYxMV1dLFtbNjUxMzgsNjUxMzhdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFszMiwxNjEyXV0sW1s2NTEzOSw2NTEzOV0sXCJ2YWxpZFwiXSxbWzY1MTQwLDY1MTQwXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbMzIsMTYxM11dLFtbNjUxNDEsNjUxNDFdLFwiZGlzYWxsb3dlZFwiXSxbWzY1MTQyLDY1MTQyXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbMzIsMTYxNF1dLFtbNjUxNDMsNjUxNDNdLFwibWFwcGVkXCIsWzE2MDAsMTYxNF1dLFtbNjUxNDQsNjUxNDRdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFszMiwxNjE1XV0sW1s2NTE0NSw2NTE0NV0sXCJtYXBwZWRcIixbMTYwMCwxNjE1XV0sW1s2NTE0Niw2NTE0Nl0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzMyLDE2MTZdXSxbWzY1MTQ3LDY1MTQ3XSxcIm1hcHBlZFwiLFsxNjAwLDE2MTZdXSxbWzY1MTQ4LDY1MTQ4XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbMzIsMTYxN11dLFtbNjUxNDksNjUxNDldLFwibWFwcGVkXCIsWzE2MDAsMTYxN11dLFtbNjUxNTAsNjUxNTBdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFszMiwxNjE4XV0sW1s2NTE1MSw2NTE1MV0sXCJtYXBwZWRcIixbMTYwMCwxNjE4XV0sW1s2NTE1Miw2NTE1Ml0sXCJtYXBwZWRcIixbMTU2OV1dLFtbNjUxNTMsNjUxNTRdLFwibWFwcGVkXCIsWzE1NzBdXSxbWzY1MTU1LDY1MTU2XSxcIm1hcHBlZFwiLFsxNTcxXV0sW1s2NTE1Nyw2NTE1OF0sXCJtYXBwZWRcIixbMTU3Ml1dLFtbNjUxNTksNjUxNjBdLFwibWFwcGVkXCIsWzE1NzNdXSxbWzY1MTYxLDY1MTY0XSxcIm1hcHBlZFwiLFsxNTc0XV0sW1s2NTE2NSw2NTE2Nl0sXCJtYXBwZWRcIixbMTU3NV1dLFtbNjUxNjcsNjUxNzBdLFwibWFwcGVkXCIsWzE1NzZdXSxbWzY1MTcxLDY1MTcyXSxcIm1hcHBlZFwiLFsxNTc3XV0sW1s2NTE3Myw2NTE3Nl0sXCJtYXBwZWRcIixbMTU3OF1dLFtbNjUxNzcsNjUxODBdLFwibWFwcGVkXCIsWzE1NzldXSxbWzY1MTgxLDY1MTg0XSxcIm1hcHBlZFwiLFsxNTgwXV0sW1s2NTE4NSw2NTE4OF0sXCJtYXBwZWRcIixbMTU4MV1dLFtbNjUxODksNjUxOTJdLFwibWFwcGVkXCIsWzE1ODJdXSxbWzY1MTkzLDY1MTk0XSxcIm1hcHBlZFwiLFsxNTgzXV0sW1s2NTE5NSw2NTE5Nl0sXCJtYXBwZWRcIixbMTU4NF1dLFtbNjUxOTcsNjUxOThdLFwibWFwcGVkXCIsWzE1ODVdXSxbWzY1MTk5LDY1MjAwXSxcIm1hcHBlZFwiLFsxNTg2XV0sW1s2NTIwMSw2NTIwNF0sXCJtYXBwZWRcIixbMTU4N11dLFtbNjUyMDUsNjUyMDhdLFwibWFwcGVkXCIsWzE1ODhdXSxbWzY1MjA5LDY1MjEyXSxcIm1hcHBlZFwiLFsxNTg5XV0sW1s2NTIxMyw2NTIxNl0sXCJtYXBwZWRcIixbMTU5MF1dLFtbNjUyMTcsNjUyMjBdLFwibWFwcGVkXCIsWzE1OTFdXSxbWzY1MjIxLDY1MjI0XSxcIm1hcHBlZFwiLFsxNTkyXV0sW1s2NTIyNSw2NTIyOF0sXCJtYXBwZWRcIixbMTU5M11dLFtbNjUyMjksNjUyMzJdLFwibWFwcGVkXCIsWzE1OTRdXSxbWzY1MjMzLDY1MjM2XSxcIm1hcHBlZFwiLFsxNjAxXV0sW1s2NTIzNyw2NTI0MF0sXCJtYXBwZWRcIixbMTYwMl1dLFtbNjUyNDEsNjUyNDRdLFwibWFwcGVkXCIsWzE2MDNdXSxbWzY1MjQ1LDY1MjQ4XSxcIm1hcHBlZFwiLFsxNjA0XV0sW1s2NTI0OSw2NTI1Ml0sXCJtYXBwZWRcIixbMTYwNV1dLFtbNjUyNTMsNjUyNTZdLFwibWFwcGVkXCIsWzE2MDZdXSxbWzY1MjU3LDY1MjYwXSxcIm1hcHBlZFwiLFsxNjA3XV0sW1s2NTI2MSw2NTI2Ml0sXCJtYXBwZWRcIixbMTYwOF1dLFtbNjUyNjMsNjUyNjRdLFwibWFwcGVkXCIsWzE2MDldXSxbWzY1MjY1LDY1MjY4XSxcIm1hcHBlZFwiLFsxNjEwXV0sW1s2NTI2OSw2NTI3MF0sXCJtYXBwZWRcIixbMTYwNCwxNTcwXV0sW1s2NTI3MSw2NTI3Ml0sXCJtYXBwZWRcIixbMTYwNCwxNTcxXV0sW1s2NTI3Myw2NTI3NF0sXCJtYXBwZWRcIixbMTYwNCwxNTczXV0sW1s2NTI3NSw2NTI3Nl0sXCJtYXBwZWRcIixbMTYwNCwxNTc1XV0sW1s2NTI3Nyw2NTI3OF0sXCJkaXNhbGxvd2VkXCJdLFtbNjUyNzksNjUyNzldLFwiaWdub3JlZFwiXSxbWzY1MjgwLDY1MjgwXSxcImRpc2FsbG93ZWRcIl0sW1s2NTI4MSw2NTI4MV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzMzXV0sW1s2NTI4Miw2NTI4Ml0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzM0XV0sW1s2NTI4Myw2NTI4M10sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzM1XV0sW1s2NTI4NCw2NTI4NF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzM2XV0sW1s2NTI4NSw2NTI4NV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzM3XV0sW1s2NTI4Niw2NTI4Nl0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzM4XV0sW1s2NTI4Nyw2NTI4N10sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzM5XV0sW1s2NTI4OCw2NTI4OF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwXV0sW1s2NTI4OSw2NTI4OV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQxXV0sW1s2NTI5MCw2NTI5MF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQyXV0sW1s2NTI5MSw2NTI5MV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQzXV0sW1s2NTI5Miw2NTI5Ml0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQ0XV0sW1s2NTI5Myw2NTI5M10sXCJtYXBwZWRcIixbNDVdXSxbWzY1Mjk0LDY1Mjk0XSxcIm1hcHBlZFwiLFs0Nl1dLFtbNjUyOTUsNjUyOTVdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0N11dLFtbNjUyOTYsNjUyOTZdLFwibWFwcGVkXCIsWzQ4XV0sW1s2NTI5Nyw2NTI5N10sXCJtYXBwZWRcIixbNDldXSxbWzY1Mjk4LDY1Mjk4XSxcIm1hcHBlZFwiLFs1MF1dLFtbNjUyOTksNjUyOTldLFwibWFwcGVkXCIsWzUxXV0sW1s2NTMwMCw2NTMwMF0sXCJtYXBwZWRcIixbNTJdXSxbWzY1MzAxLDY1MzAxXSxcIm1hcHBlZFwiLFs1M11dLFtbNjUzMDIsNjUzMDJdLFwibWFwcGVkXCIsWzU0XV0sW1s2NTMwMyw2NTMwM10sXCJtYXBwZWRcIixbNTVdXSxbWzY1MzA0LDY1MzA0XSxcIm1hcHBlZFwiLFs1Nl1dLFtbNjUzMDUsNjUzMDVdLFwibWFwcGVkXCIsWzU3XV0sW1s2NTMwNiw2NTMwNl0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzU4XV0sW1s2NTMwNyw2NTMwN10sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzU5XV0sW1s2NTMwOCw2NTMwOF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzYwXV0sW1s2NTMwOSw2NTMwOV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzYxXV0sW1s2NTMxMCw2NTMxMF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzYyXV0sW1s2NTMxMSw2NTMxMV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzYzXV0sW1s2NTMxMiw2NTMxMl0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzY0XV0sW1s2NTMxMyw2NTMxM10sXCJtYXBwZWRcIixbOTddXSxbWzY1MzE0LDY1MzE0XSxcIm1hcHBlZFwiLFs5OF1dLFtbNjUzMTUsNjUzMTVdLFwibWFwcGVkXCIsWzk5XV0sW1s2NTMxNiw2NTMxNl0sXCJtYXBwZWRcIixbMTAwXV0sW1s2NTMxNyw2NTMxN10sXCJtYXBwZWRcIixbMTAxXV0sW1s2NTMxOCw2NTMxOF0sXCJtYXBwZWRcIixbMTAyXV0sW1s2NTMxOSw2NTMxOV0sXCJtYXBwZWRcIixbMTAzXV0sW1s2NTMyMCw2NTMyMF0sXCJtYXBwZWRcIixbMTA0XV0sW1s2NTMyMSw2NTMyMV0sXCJtYXBwZWRcIixbMTA1XV0sW1s2NTMyMiw2NTMyMl0sXCJtYXBwZWRcIixbMTA2XV0sW1s2NTMyMyw2NTMyM10sXCJtYXBwZWRcIixbMTA3XV0sW1s2NTMyNCw2NTMyNF0sXCJtYXBwZWRcIixbMTA4XV0sW1s2NTMyNSw2NTMyNV0sXCJtYXBwZWRcIixbMTA5XV0sW1s2NTMyNiw2NTMyNl0sXCJtYXBwZWRcIixbMTEwXV0sW1s2NTMyNyw2NTMyN10sXCJtYXBwZWRcIixbMTExXV0sW1s2NTMyOCw2NTMyOF0sXCJtYXBwZWRcIixbMTEyXV0sW1s2NTMyOSw2NTMyOV0sXCJtYXBwZWRcIixbMTEzXV0sW1s2NTMzMCw2NTMzMF0sXCJtYXBwZWRcIixbMTE0XV0sW1s2NTMzMSw2NTMzMV0sXCJtYXBwZWRcIixbMTE1XV0sW1s2NTMzMiw2NTMzMl0sXCJtYXBwZWRcIixbMTE2XV0sW1s2NTMzMyw2NTMzM10sXCJtYXBwZWRcIixbMTE3XV0sW1s2NTMzNCw2NTMzNF0sXCJtYXBwZWRcIixbMTE4XV0sW1s2NTMzNSw2NTMzNV0sXCJtYXBwZWRcIixbMTE5XV0sW1s2NTMzNiw2NTMzNl0sXCJtYXBwZWRcIixbMTIwXV0sW1s2NTMzNyw2NTMzN10sXCJtYXBwZWRcIixbMTIxXV0sW1s2NTMzOCw2NTMzOF0sXCJtYXBwZWRcIixbMTIyXV0sW1s2NTMzOSw2NTMzOV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzkxXV0sW1s2NTM0MCw2NTM0MF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzkyXV0sW1s2NTM0MSw2NTM0MV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzkzXV0sW1s2NTM0Miw2NTM0Ml0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzk0XV0sW1s2NTM0Myw2NTM0M10sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzk1XV0sW1s2NTM0NCw2NTM0NF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzk2XV0sW1s2NTM0NSw2NTM0NV0sXCJtYXBwZWRcIixbOTddXSxbWzY1MzQ2LDY1MzQ2XSxcIm1hcHBlZFwiLFs5OF1dLFtbNjUzNDcsNjUzNDddLFwibWFwcGVkXCIsWzk5XV0sW1s2NTM0OCw2NTM0OF0sXCJtYXBwZWRcIixbMTAwXV0sW1s2NTM0OSw2NTM0OV0sXCJtYXBwZWRcIixbMTAxXV0sW1s2NTM1MCw2NTM1MF0sXCJtYXBwZWRcIixbMTAyXV0sW1s2NTM1MSw2NTM1MV0sXCJtYXBwZWRcIixbMTAzXV0sW1s2NTM1Miw2NTM1Ml0sXCJtYXBwZWRcIixbMTA0XV0sW1s2NTM1Myw2NTM1M10sXCJtYXBwZWRcIixbMTA1XV0sW1s2NTM1NCw2NTM1NF0sXCJtYXBwZWRcIixbMTA2XV0sW1s2NTM1NSw2NTM1NV0sXCJtYXBwZWRcIixbMTA3XV0sW1s2NTM1Niw2NTM1Nl0sXCJtYXBwZWRcIixbMTA4XV0sW1s2NTM1Nyw2NTM1N10sXCJtYXBwZWRcIixbMTA5XV0sW1s2NTM1OCw2NTM1OF0sXCJtYXBwZWRcIixbMTEwXV0sW1s2NTM1OSw2NTM1OV0sXCJtYXBwZWRcIixbMTExXV0sW1s2NTM2MCw2NTM2MF0sXCJtYXBwZWRcIixbMTEyXV0sW1s2NTM2MSw2NTM2MV0sXCJtYXBwZWRcIixbMTEzXV0sW1s2NTM2Miw2NTM2Ml0sXCJtYXBwZWRcIixbMTE0XV0sW1s2NTM2Myw2NTM2M10sXCJtYXBwZWRcIixbMTE1XV0sW1s2NTM2NCw2NTM2NF0sXCJtYXBwZWRcIixbMTE2XV0sW1s2NTM2NSw2NTM2NV0sXCJtYXBwZWRcIixbMTE3XV0sW1s2NTM2Niw2NTM2Nl0sXCJtYXBwZWRcIixbMTE4XV0sW1s2NTM2Nyw2NTM2N10sXCJtYXBwZWRcIixbMTE5XV0sW1s2NTM2OCw2NTM2OF0sXCJtYXBwZWRcIixbMTIwXV0sW1s2NTM2OSw2NTM2OV0sXCJtYXBwZWRcIixbMTIxXV0sW1s2NTM3MCw2NTM3MF0sXCJtYXBwZWRcIixbMTIyXV0sW1s2NTM3MSw2NTM3MV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzEyM11dLFtbNjUzNzIsNjUzNzJdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFsxMjRdXSxbWzY1MzczLDY1MzczXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbMTI1XV0sW1s2NTM3NCw2NTM3NF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzEyNl1dLFtbNjUzNzUsNjUzNzVdLFwibWFwcGVkXCIsWzEwNjI5XV0sW1s2NTM3Niw2NTM3Nl0sXCJtYXBwZWRcIixbMTA2MzBdXSxbWzY1Mzc3LDY1Mzc3XSxcIm1hcHBlZFwiLFs0Nl1dLFtbNjUzNzgsNjUzNzhdLFwibWFwcGVkXCIsWzEyMzAwXV0sW1s2NTM3OSw2NTM3OV0sXCJtYXBwZWRcIixbMTIzMDFdXSxbWzY1MzgwLDY1MzgwXSxcIm1hcHBlZFwiLFsxMjI4OV1dLFtbNjUzODEsNjUzODFdLFwibWFwcGVkXCIsWzEyNTM5XV0sW1s2NTM4Miw2NTM4Ml0sXCJtYXBwZWRcIixbMTI1MzBdXSxbWzY1MzgzLDY1MzgzXSxcIm1hcHBlZFwiLFsxMjQ0OV1dLFtbNjUzODQsNjUzODRdLFwibWFwcGVkXCIsWzEyNDUxXV0sW1s2NTM4NSw2NTM4NV0sXCJtYXBwZWRcIixbMTI0NTNdXSxbWzY1Mzg2LDY1Mzg2XSxcIm1hcHBlZFwiLFsxMjQ1NV1dLFtbNjUzODcsNjUzODddLFwibWFwcGVkXCIsWzEyNDU3XV0sW1s2NTM4OCw2NTM4OF0sXCJtYXBwZWRcIixbMTI1MTVdXSxbWzY1Mzg5LDY1Mzg5XSxcIm1hcHBlZFwiLFsxMjUxN11dLFtbNjUzOTAsNjUzOTBdLFwibWFwcGVkXCIsWzEyNTE5XV0sW1s2NTM5MSw2NTM5MV0sXCJtYXBwZWRcIixbMTI0ODNdXSxbWzY1MzkyLDY1MzkyXSxcIm1hcHBlZFwiLFsxMjU0MF1dLFtbNjUzOTMsNjUzOTNdLFwibWFwcGVkXCIsWzEyNDUwXV0sW1s2NTM5NCw2NTM5NF0sXCJtYXBwZWRcIixbMTI0NTJdXSxbWzY1Mzk1LDY1Mzk1XSxcIm1hcHBlZFwiLFsxMjQ1NF1dLFtbNjUzOTYsNjUzOTZdLFwibWFwcGVkXCIsWzEyNDU2XV0sW1s2NTM5Nyw2NTM5N10sXCJtYXBwZWRcIixbMTI0NThdXSxbWzY1Mzk4LDY1Mzk4XSxcIm1hcHBlZFwiLFsxMjQ1OV1dLFtbNjUzOTksNjUzOTldLFwibWFwcGVkXCIsWzEyNDYxXV0sW1s2NTQwMCw2NTQwMF0sXCJtYXBwZWRcIixbMTI0NjNdXSxbWzY1NDAxLDY1NDAxXSxcIm1hcHBlZFwiLFsxMjQ2NV1dLFtbNjU0MDIsNjU0MDJdLFwibWFwcGVkXCIsWzEyNDY3XV0sW1s2NTQwMyw2NTQwM10sXCJtYXBwZWRcIixbMTI0NjldXSxbWzY1NDA0LDY1NDA0XSxcIm1hcHBlZFwiLFsxMjQ3MV1dLFtbNjU0MDUsNjU0MDVdLFwibWFwcGVkXCIsWzEyNDczXV0sW1s2NTQwNiw2NTQwNl0sXCJtYXBwZWRcIixbMTI0NzVdXSxbWzY1NDA3LDY1NDA3XSxcIm1hcHBlZFwiLFsxMjQ3N11dLFtbNjU0MDgsNjU0MDhdLFwibWFwcGVkXCIsWzEyNDc5XV0sW1s2NTQwOSw2NTQwOV0sXCJtYXBwZWRcIixbMTI0ODFdXSxbWzY1NDEwLDY1NDEwXSxcIm1hcHBlZFwiLFsxMjQ4NF1dLFtbNjU0MTEsNjU0MTFdLFwibWFwcGVkXCIsWzEyNDg2XV0sW1s2NTQxMiw2NTQxMl0sXCJtYXBwZWRcIixbMTI0ODhdXSxbWzY1NDEzLDY1NDEzXSxcIm1hcHBlZFwiLFsxMjQ5MF1dLFtbNjU0MTQsNjU0MTRdLFwibWFwcGVkXCIsWzEyNDkxXV0sW1s2NTQxNSw2NTQxNV0sXCJtYXBwZWRcIixbMTI0OTJdXSxbWzY1NDE2LDY1NDE2XSxcIm1hcHBlZFwiLFsxMjQ5M11dLFtbNjU0MTcsNjU0MTddLFwibWFwcGVkXCIsWzEyNDk0XV0sW1s2NTQxOCw2NTQxOF0sXCJtYXBwZWRcIixbMTI0OTVdXSxbWzY1NDE5LDY1NDE5XSxcIm1hcHBlZFwiLFsxMjQ5OF1dLFtbNjU0MjAsNjU0MjBdLFwibWFwcGVkXCIsWzEyNTAxXV0sW1s2NTQyMSw2NTQyMV0sXCJtYXBwZWRcIixbMTI1MDRdXSxbWzY1NDIyLDY1NDIyXSxcIm1hcHBlZFwiLFsxMjUwN11dLFtbNjU0MjMsNjU0MjNdLFwibWFwcGVkXCIsWzEyNTEwXV0sW1s2NTQyNCw2NTQyNF0sXCJtYXBwZWRcIixbMTI1MTFdXSxbWzY1NDI1LDY1NDI1XSxcIm1hcHBlZFwiLFsxMjUxMl1dLFtbNjU0MjYsNjU0MjZdLFwibWFwcGVkXCIsWzEyNTEzXV0sW1s2NTQyNyw2NTQyN10sXCJtYXBwZWRcIixbMTI1MTRdXSxbWzY1NDI4LDY1NDI4XSxcIm1hcHBlZFwiLFsxMjUxNl1dLFtbNjU0MjksNjU0MjldLFwibWFwcGVkXCIsWzEyNTE4XV0sW1s2NTQzMCw2NTQzMF0sXCJtYXBwZWRcIixbMTI1MjBdXSxbWzY1NDMxLDY1NDMxXSxcIm1hcHBlZFwiLFsxMjUyMV1dLFtbNjU0MzIsNjU0MzJdLFwibWFwcGVkXCIsWzEyNTIyXV0sW1s2NTQzMyw2NTQzM10sXCJtYXBwZWRcIixbMTI1MjNdXSxbWzY1NDM0LDY1NDM0XSxcIm1hcHBlZFwiLFsxMjUyNF1dLFtbNjU0MzUsNjU0MzVdLFwibWFwcGVkXCIsWzEyNTI1XV0sW1s2NTQzNiw2NTQzNl0sXCJtYXBwZWRcIixbMTI1MjddXSxbWzY1NDM3LDY1NDM3XSxcIm1hcHBlZFwiLFsxMjUzMV1dLFtbNjU0MzgsNjU0MzhdLFwibWFwcGVkXCIsWzEyNDQxXV0sW1s2NTQzOSw2NTQzOV0sXCJtYXBwZWRcIixbMTI0NDJdXSxbWzY1NDQwLDY1NDQwXSxcImRpc2FsbG93ZWRcIl0sW1s2NTQ0MSw2NTQ0MV0sXCJtYXBwZWRcIixbNDM1Ml1dLFtbNjU0NDIsNjU0NDJdLFwibWFwcGVkXCIsWzQzNTNdXSxbWzY1NDQzLDY1NDQzXSxcIm1hcHBlZFwiLFs0NTIyXV0sW1s2NTQ0NCw2NTQ0NF0sXCJtYXBwZWRcIixbNDM1NF1dLFtbNjU0NDUsNjU0NDVdLFwibWFwcGVkXCIsWzQ1MjRdXSxbWzY1NDQ2LDY1NDQ2XSxcIm1hcHBlZFwiLFs0NTI1XV0sW1s2NTQ0Nyw2NTQ0N10sXCJtYXBwZWRcIixbNDM1NV1dLFtbNjU0NDgsNjU0NDhdLFwibWFwcGVkXCIsWzQzNTZdXSxbWzY1NDQ5LDY1NDQ5XSxcIm1hcHBlZFwiLFs0MzU3XV0sW1s2NTQ1MCw2NTQ1MF0sXCJtYXBwZWRcIixbNDUyOF1dLFtbNjU0NTEsNjU0NTFdLFwibWFwcGVkXCIsWzQ1MjldXSxbWzY1NDUyLDY1NDUyXSxcIm1hcHBlZFwiLFs0NTMwXV0sW1s2NTQ1Myw2NTQ1M10sXCJtYXBwZWRcIixbNDUzMV1dLFtbNjU0NTQsNjU0NTRdLFwibWFwcGVkXCIsWzQ1MzJdXSxbWzY1NDU1LDY1NDU1XSxcIm1hcHBlZFwiLFs0NTMzXV0sW1s2NTQ1Niw2NTQ1Nl0sXCJtYXBwZWRcIixbNDM3OF1dLFtbNjU0NTcsNjU0NTddLFwibWFwcGVkXCIsWzQzNThdXSxbWzY1NDU4LDY1NDU4XSxcIm1hcHBlZFwiLFs0MzU5XV0sW1s2NTQ1OSw2NTQ1OV0sXCJtYXBwZWRcIixbNDM2MF1dLFtbNjU0NjAsNjU0NjBdLFwibWFwcGVkXCIsWzQzODVdXSxbWzY1NDYxLDY1NDYxXSxcIm1hcHBlZFwiLFs0MzYxXV0sW1s2NTQ2Miw2NTQ2Ml0sXCJtYXBwZWRcIixbNDM2Ml1dLFtbNjU0NjMsNjU0NjNdLFwibWFwcGVkXCIsWzQzNjNdXSxbWzY1NDY0LDY1NDY0XSxcIm1hcHBlZFwiLFs0MzY0XV0sW1s2NTQ2NSw2NTQ2NV0sXCJtYXBwZWRcIixbNDM2NV1dLFtbNjU0NjYsNjU0NjZdLFwibWFwcGVkXCIsWzQzNjZdXSxbWzY1NDY3LDY1NDY3XSxcIm1hcHBlZFwiLFs0MzY3XV0sW1s2NTQ2OCw2NTQ2OF0sXCJtYXBwZWRcIixbNDM2OF1dLFtbNjU0NjksNjU0NjldLFwibWFwcGVkXCIsWzQzNjldXSxbWzY1NDcwLDY1NDcwXSxcIm1hcHBlZFwiLFs0MzcwXV0sW1s2NTQ3MSw2NTQ3M10sXCJkaXNhbGxvd2VkXCJdLFtbNjU0NzQsNjU0NzRdLFwibWFwcGVkXCIsWzQ0NDldXSxbWzY1NDc1LDY1NDc1XSxcIm1hcHBlZFwiLFs0NDUwXV0sW1s2NTQ3Niw2NTQ3Nl0sXCJtYXBwZWRcIixbNDQ1MV1dLFtbNjU0NzcsNjU0NzddLFwibWFwcGVkXCIsWzQ0NTJdXSxbWzY1NDc4LDY1NDc4XSxcIm1hcHBlZFwiLFs0NDUzXV0sW1s2NTQ3OSw2NTQ3OV0sXCJtYXBwZWRcIixbNDQ1NF1dLFtbNjU0ODAsNjU0ODFdLFwiZGlzYWxsb3dlZFwiXSxbWzY1NDgyLDY1NDgyXSxcIm1hcHBlZFwiLFs0NDU1XV0sW1s2NTQ4Myw2NTQ4M10sXCJtYXBwZWRcIixbNDQ1Nl1dLFtbNjU0ODQsNjU0ODRdLFwibWFwcGVkXCIsWzQ0NTddXSxbWzY1NDg1LDY1NDg1XSxcIm1hcHBlZFwiLFs0NDU4XV0sW1s2NTQ4Niw2NTQ4Nl0sXCJtYXBwZWRcIixbNDQ1OV1dLFtbNjU0ODcsNjU0ODddLFwibWFwcGVkXCIsWzQ0NjBdXSxbWzY1NDg4LDY1NDg5XSxcImRpc2FsbG93ZWRcIl0sW1s2NTQ5MCw2NTQ5MF0sXCJtYXBwZWRcIixbNDQ2MV1dLFtbNjU0OTEsNjU0OTFdLFwibWFwcGVkXCIsWzQ0NjJdXSxbWzY1NDkyLDY1NDkyXSxcIm1hcHBlZFwiLFs0NDYzXV0sW1s2NTQ5Myw2NTQ5M10sXCJtYXBwZWRcIixbNDQ2NF1dLFtbNjU0OTQsNjU0OTRdLFwibWFwcGVkXCIsWzQ0NjVdXSxbWzY1NDk1LDY1NDk1XSxcIm1hcHBlZFwiLFs0NDY2XV0sW1s2NTQ5Niw2NTQ5N10sXCJkaXNhbGxvd2VkXCJdLFtbNjU0OTgsNjU0OThdLFwibWFwcGVkXCIsWzQ0NjddXSxbWzY1NDk5LDY1NDk5XSxcIm1hcHBlZFwiLFs0NDY4XV0sW1s2NTUwMCw2NTUwMF0sXCJtYXBwZWRcIixbNDQ2OV1dLFtbNjU1MDEsNjU1MDNdLFwiZGlzYWxsb3dlZFwiXSxbWzY1NTA0LDY1NTA0XSxcIm1hcHBlZFwiLFsxNjJdXSxbWzY1NTA1LDY1NTA1XSxcIm1hcHBlZFwiLFsxNjNdXSxbWzY1NTA2LDY1NTA2XSxcIm1hcHBlZFwiLFsxNzJdXSxbWzY1NTA3LDY1NTA3XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbMzIsNzcyXV0sW1s2NTUwOCw2NTUwOF0sXCJtYXBwZWRcIixbMTY2XV0sW1s2NTUwOSw2NTUwOV0sXCJtYXBwZWRcIixbMTY1XV0sW1s2NTUxMCw2NTUxMF0sXCJtYXBwZWRcIixbODM2MV1dLFtbNjU1MTEsNjU1MTFdLFwiZGlzYWxsb3dlZFwiXSxbWzY1NTEyLDY1NTEyXSxcIm1hcHBlZFwiLFs5NDc0XV0sW1s2NTUxMyw2NTUxM10sXCJtYXBwZWRcIixbODU5Ml1dLFtbNjU1MTQsNjU1MTRdLFwibWFwcGVkXCIsWzg1OTNdXSxbWzY1NTE1LDY1NTE1XSxcIm1hcHBlZFwiLFs4NTk0XV0sW1s2NTUxNiw2NTUxNl0sXCJtYXBwZWRcIixbODU5NV1dLFtbNjU1MTcsNjU1MTddLFwibWFwcGVkXCIsWzk2MzJdXSxbWzY1NTE4LDY1NTE4XSxcIm1hcHBlZFwiLFs5Njc1XV0sW1s2NTUxOSw2NTUyOF0sXCJkaXNhbGxvd2VkXCJdLFtbNjU1MjksNjU1MzFdLFwiZGlzYWxsb3dlZFwiXSxbWzY1NTMyLDY1NTMyXSxcImRpc2FsbG93ZWRcIl0sW1s2NTUzMyw2NTUzM10sXCJkaXNhbGxvd2VkXCJdLFtbNjU1MzQsNjU1MzVdLFwiZGlzYWxsb3dlZFwiXSxbWzY1NTM2LDY1NTQ3XSxcInZhbGlkXCJdLFtbNjU1NDgsNjU1NDhdLFwiZGlzYWxsb3dlZFwiXSxbWzY1NTQ5LDY1NTc0XSxcInZhbGlkXCJdLFtbNjU1NzUsNjU1NzVdLFwiZGlzYWxsb3dlZFwiXSxbWzY1NTc2LDY1NTk0XSxcInZhbGlkXCJdLFtbNjU1OTUsNjU1OTVdLFwiZGlzYWxsb3dlZFwiXSxbWzY1NTk2LDY1NTk3XSxcInZhbGlkXCJdLFtbNjU1OTgsNjU1OThdLFwiZGlzYWxsb3dlZFwiXSxbWzY1NTk5LDY1NjEzXSxcInZhbGlkXCJdLFtbNjU2MTQsNjU2MTVdLFwiZGlzYWxsb3dlZFwiXSxbWzY1NjE2LDY1NjI5XSxcInZhbGlkXCJdLFtbNjU2MzAsNjU2NjNdLFwiZGlzYWxsb3dlZFwiXSxbWzY1NjY0LDY1Nzg2XSxcInZhbGlkXCJdLFtbNjU3ODcsNjU3OTFdLFwiZGlzYWxsb3dlZFwiXSxbWzY1NzkyLDY1Nzk0XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s2NTc5NSw2NTc5OF0sXCJkaXNhbGxvd2VkXCJdLFtbNjU3OTksNjU4NDNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzY1ODQ0LDY1ODQ2XSxcImRpc2FsbG93ZWRcIl0sW1s2NTg0Nyw2NTg1NV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNjU4NTYsNjU5MzBdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzY1OTMxLDY1OTMyXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s2NTkzMyw2NTkzNV0sXCJkaXNhbGxvd2VkXCJdLFtbNjU5MzYsNjU5NDddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzY1OTQ4LDY1OTUxXSxcImRpc2FsbG93ZWRcIl0sW1s2NTk1Miw2NTk1Ml0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNjU5NTMsNjU5OTldLFwiZGlzYWxsb3dlZFwiXSxbWzY2MDAwLDY2MDQ0XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s2NjA0NSw2NjA0NV0sXCJ2YWxpZFwiXSxbWzY2MDQ2LDY2MTc1XSxcImRpc2FsbG93ZWRcIl0sW1s2NjE3Niw2NjIwNF0sXCJ2YWxpZFwiXSxbWzY2MjA1LDY2MjA3XSxcImRpc2FsbG93ZWRcIl0sW1s2NjIwOCw2NjI1Nl0sXCJ2YWxpZFwiXSxbWzY2MjU3LDY2MjcxXSxcImRpc2FsbG93ZWRcIl0sW1s2NjI3Miw2NjI3Ml0sXCJ2YWxpZFwiXSxbWzY2MjczLDY2Mjk5XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s2NjMwMCw2NjMwM10sXCJkaXNhbGxvd2VkXCJdLFtbNjYzMDQsNjYzMzRdLFwidmFsaWRcIl0sW1s2NjMzNSw2NjMzNV0sXCJ2YWxpZFwiXSxbWzY2MzM2LDY2MzM5XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s2NjM0MCw2NjM1MV0sXCJkaXNhbGxvd2VkXCJdLFtbNjYzNTIsNjYzNjhdLFwidmFsaWRcIl0sW1s2NjM2OSw2NjM2OV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNjYzNzAsNjYzNzddLFwidmFsaWRcIl0sW1s2NjM3OCw2NjM3OF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNjYzNzksNjYzODNdLFwiZGlzYWxsb3dlZFwiXSxbWzY2Mzg0LDY2NDI2XSxcInZhbGlkXCJdLFtbNjY0MjcsNjY0MzFdLFwiZGlzYWxsb3dlZFwiXSxbWzY2NDMyLDY2NDYxXSxcInZhbGlkXCJdLFtbNjY0NjIsNjY0NjJdLFwiZGlzYWxsb3dlZFwiXSxbWzY2NDYzLDY2NDYzXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s2NjQ2NCw2NjQ5OV0sXCJ2YWxpZFwiXSxbWzY2NTAwLDY2NTAzXSxcImRpc2FsbG93ZWRcIl0sW1s2NjUwNCw2NjUxMV0sXCJ2YWxpZFwiXSxbWzY2NTEyLDY2NTE3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s2NjUxOCw2NjU1OV0sXCJkaXNhbGxvd2VkXCJdLFtbNjY1NjAsNjY1NjBdLFwibWFwcGVkXCIsWzY2NjAwXV0sW1s2NjU2MSw2NjU2MV0sXCJtYXBwZWRcIixbNjY2MDFdXSxbWzY2NTYyLDY2NTYyXSxcIm1hcHBlZFwiLFs2NjYwMl1dLFtbNjY1NjMsNjY1NjNdLFwibWFwcGVkXCIsWzY2NjAzXV0sW1s2NjU2NCw2NjU2NF0sXCJtYXBwZWRcIixbNjY2MDRdXSxbWzY2NTY1LDY2NTY1XSxcIm1hcHBlZFwiLFs2NjYwNV1dLFtbNjY1NjYsNjY1NjZdLFwibWFwcGVkXCIsWzY2NjA2XV0sW1s2NjU2Nyw2NjU2N10sXCJtYXBwZWRcIixbNjY2MDddXSxbWzY2NTY4LDY2NTY4XSxcIm1hcHBlZFwiLFs2NjYwOF1dLFtbNjY1NjksNjY1NjldLFwibWFwcGVkXCIsWzY2NjA5XV0sW1s2NjU3MCw2NjU3MF0sXCJtYXBwZWRcIixbNjY2MTBdXSxbWzY2NTcxLDY2NTcxXSxcIm1hcHBlZFwiLFs2NjYxMV1dLFtbNjY1NzIsNjY1NzJdLFwibWFwcGVkXCIsWzY2NjEyXV0sW1s2NjU3Myw2NjU3M10sXCJtYXBwZWRcIixbNjY2MTNdXSxbWzY2NTc0LDY2NTc0XSxcIm1hcHBlZFwiLFs2NjYxNF1dLFtbNjY1NzUsNjY1NzVdLFwibWFwcGVkXCIsWzY2NjE1XV0sW1s2NjU3Niw2NjU3Nl0sXCJtYXBwZWRcIixbNjY2MTZdXSxbWzY2NTc3LDY2NTc3XSxcIm1hcHBlZFwiLFs2NjYxN11dLFtbNjY1NzgsNjY1NzhdLFwibWFwcGVkXCIsWzY2NjE4XV0sW1s2NjU3OSw2NjU3OV0sXCJtYXBwZWRcIixbNjY2MTldXSxbWzY2NTgwLDY2NTgwXSxcIm1hcHBlZFwiLFs2NjYyMF1dLFtbNjY1ODEsNjY1ODFdLFwibWFwcGVkXCIsWzY2NjIxXV0sW1s2NjU4Miw2NjU4Ml0sXCJtYXBwZWRcIixbNjY2MjJdXSxbWzY2NTgzLDY2NTgzXSxcIm1hcHBlZFwiLFs2NjYyM11dLFtbNjY1ODQsNjY1ODRdLFwibWFwcGVkXCIsWzY2NjI0XV0sW1s2NjU4NSw2NjU4NV0sXCJtYXBwZWRcIixbNjY2MjVdXSxbWzY2NTg2LDY2NTg2XSxcIm1hcHBlZFwiLFs2NjYyNl1dLFtbNjY1ODcsNjY1ODddLFwibWFwcGVkXCIsWzY2NjI3XV0sW1s2NjU4OCw2NjU4OF0sXCJtYXBwZWRcIixbNjY2MjhdXSxbWzY2NTg5LDY2NTg5XSxcIm1hcHBlZFwiLFs2NjYyOV1dLFtbNjY1OTAsNjY1OTBdLFwibWFwcGVkXCIsWzY2NjMwXV0sW1s2NjU5MSw2NjU5MV0sXCJtYXBwZWRcIixbNjY2MzFdXSxbWzY2NTkyLDY2NTkyXSxcIm1hcHBlZFwiLFs2NjYzMl1dLFtbNjY1OTMsNjY1OTNdLFwibWFwcGVkXCIsWzY2NjMzXV0sW1s2NjU5NCw2NjU5NF0sXCJtYXBwZWRcIixbNjY2MzRdXSxbWzY2NTk1LDY2NTk1XSxcIm1hcHBlZFwiLFs2NjYzNV1dLFtbNjY1OTYsNjY1OTZdLFwibWFwcGVkXCIsWzY2NjM2XV0sW1s2NjU5Nyw2NjU5N10sXCJtYXBwZWRcIixbNjY2MzddXSxbWzY2NTk4LDY2NTk4XSxcIm1hcHBlZFwiLFs2NjYzOF1dLFtbNjY1OTksNjY1OTldLFwibWFwcGVkXCIsWzY2NjM5XV0sW1s2NjYwMCw2NjYzN10sXCJ2YWxpZFwiXSxbWzY2NjM4LDY2NzE3XSxcInZhbGlkXCJdLFtbNjY3MTgsNjY3MTldLFwiZGlzYWxsb3dlZFwiXSxbWzY2NzIwLDY2NzI5XSxcInZhbGlkXCJdLFtbNjY3MzAsNjY4MTVdLFwiZGlzYWxsb3dlZFwiXSxbWzY2ODE2LDY2ODU1XSxcInZhbGlkXCJdLFtbNjY4NTYsNjY4NjNdLFwiZGlzYWxsb3dlZFwiXSxbWzY2ODY0LDY2OTE1XSxcInZhbGlkXCJdLFtbNjY5MTYsNjY5MjZdLFwiZGlzYWxsb3dlZFwiXSxbWzY2OTI3LDY2OTI3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s2NjkyOCw2NzA3MV0sXCJkaXNhbGxvd2VkXCJdLFtbNjcwNzIsNjczODJdLFwidmFsaWRcIl0sW1s2NzM4Myw2NzM5MV0sXCJkaXNhbGxvd2VkXCJdLFtbNjczOTIsNjc0MTNdLFwidmFsaWRcIl0sW1s2NzQxNCw2NzQyM10sXCJkaXNhbGxvd2VkXCJdLFtbNjc0MjQsNjc0MzFdLFwidmFsaWRcIl0sW1s2NzQzMiw2NzU4M10sXCJkaXNhbGxvd2VkXCJdLFtbNjc1ODQsNjc1ODldLFwidmFsaWRcIl0sW1s2NzU5MCw2NzU5MV0sXCJkaXNhbGxvd2VkXCJdLFtbNjc1OTIsNjc1OTJdLFwidmFsaWRcIl0sW1s2NzU5Myw2NzU5M10sXCJkaXNhbGxvd2VkXCJdLFtbNjc1OTQsNjc2MzddLFwidmFsaWRcIl0sW1s2NzYzOCw2NzYzOF0sXCJkaXNhbGxvd2VkXCJdLFtbNjc2MzksNjc2NDBdLFwidmFsaWRcIl0sW1s2NzY0MSw2NzY0M10sXCJkaXNhbGxvd2VkXCJdLFtbNjc2NDQsNjc2NDRdLFwidmFsaWRcIl0sW1s2NzY0NSw2NzY0Nl0sXCJkaXNhbGxvd2VkXCJdLFtbNjc2NDcsNjc2NDddLFwidmFsaWRcIl0sW1s2NzY0OCw2NzY2OV0sXCJ2YWxpZFwiXSxbWzY3NjcwLDY3NjcwXSxcImRpc2FsbG93ZWRcIl0sW1s2NzY3MSw2NzY3OV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNjc2ODAsNjc3MDJdLFwidmFsaWRcIl0sW1s2NzcwMyw2NzcxMV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNjc3MTIsNjc3NDJdLFwidmFsaWRcIl0sW1s2Nzc0Myw2Nzc1MF0sXCJkaXNhbGxvd2VkXCJdLFtbNjc3NTEsNjc3NTldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzY3NzYwLDY3ODA3XSxcImRpc2FsbG93ZWRcIl0sW1s2NzgwOCw2NzgyNl0sXCJ2YWxpZFwiXSxbWzY3ODI3LDY3ODI3XSxcImRpc2FsbG93ZWRcIl0sW1s2NzgyOCw2NzgyOV0sXCJ2YWxpZFwiXSxbWzY3ODMwLDY3ODM0XSxcImRpc2FsbG93ZWRcIl0sW1s2NzgzNSw2NzgzOV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNjc4NDAsNjc4NjFdLFwidmFsaWRcIl0sW1s2Nzg2Miw2Nzg2NV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNjc4NjYsNjc4NjddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzY3ODY4LDY3ODcwXSxcImRpc2FsbG93ZWRcIl0sW1s2Nzg3MSw2Nzg3MV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNjc4NzIsNjc4OTddLFwidmFsaWRcIl0sW1s2Nzg5OCw2NzkwMl0sXCJkaXNhbGxvd2VkXCJdLFtbNjc5MDMsNjc5MDNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzY3OTA0LDY3OTY3XSxcImRpc2FsbG93ZWRcIl0sW1s2Nzk2OCw2ODAyM10sXCJ2YWxpZFwiXSxbWzY4MDI0LDY4MDI3XSxcImRpc2FsbG93ZWRcIl0sW1s2ODAyOCw2ODAyOV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNjgwMzAsNjgwMzFdLFwidmFsaWRcIl0sW1s2ODAzMiw2ODA0N10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNjgwNDgsNjgwNDldLFwiZGlzYWxsb3dlZFwiXSxbWzY4MDUwLDY4MDk1XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s2ODA5Niw2ODA5OV0sXCJ2YWxpZFwiXSxbWzY4MTAwLDY4MTAwXSxcImRpc2FsbG93ZWRcIl0sW1s2ODEwMSw2ODEwMl0sXCJ2YWxpZFwiXSxbWzY4MTAzLDY4MTA3XSxcImRpc2FsbG93ZWRcIl0sW1s2ODEwOCw2ODExNV0sXCJ2YWxpZFwiXSxbWzY4MTE2LDY4MTE2XSxcImRpc2FsbG93ZWRcIl0sW1s2ODExNyw2ODExOV0sXCJ2YWxpZFwiXSxbWzY4MTIwLDY4MTIwXSxcImRpc2FsbG93ZWRcIl0sW1s2ODEyMSw2ODE0N10sXCJ2YWxpZFwiXSxbWzY4MTQ4LDY4MTUxXSxcImRpc2FsbG93ZWRcIl0sW1s2ODE1Miw2ODE1NF0sXCJ2YWxpZFwiXSxbWzY4MTU1LDY4MTU4XSxcImRpc2FsbG93ZWRcIl0sW1s2ODE1OSw2ODE1OV0sXCJ2YWxpZFwiXSxbWzY4MTYwLDY4MTY3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s2ODE2OCw2ODE3NV0sXCJkaXNhbGxvd2VkXCJdLFtbNjgxNzYsNjgxODRdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzY4MTg1LDY4MTkxXSxcImRpc2FsbG93ZWRcIl0sW1s2ODE5Miw2ODIyMF0sXCJ2YWxpZFwiXSxbWzY4MjIxLDY4MjIzXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s2ODIyNCw2ODI1Ml0sXCJ2YWxpZFwiXSxbWzY4MjUzLDY4MjU1XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s2ODI1Niw2ODI4N10sXCJkaXNhbGxvd2VkXCJdLFtbNjgyODgsNjgyOTVdLFwidmFsaWRcIl0sW1s2ODI5Niw2ODI5Nl0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNjgyOTcsNjgzMjZdLFwidmFsaWRcIl0sW1s2ODMyNyw2ODMzMF0sXCJkaXNhbGxvd2VkXCJdLFtbNjgzMzEsNjgzNDJdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzY4MzQzLDY4MzUxXSxcImRpc2FsbG93ZWRcIl0sW1s2ODM1Miw2ODQwNV0sXCJ2YWxpZFwiXSxbWzY4NDA2LDY4NDA4XSxcImRpc2FsbG93ZWRcIl0sW1s2ODQwOSw2ODQxNV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNjg0MTYsNjg0MzddLFwidmFsaWRcIl0sW1s2ODQzOCw2ODQzOV0sXCJkaXNhbGxvd2VkXCJdLFtbNjg0NDAsNjg0NDddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzY4NDQ4LDY4NDY2XSxcInZhbGlkXCJdLFtbNjg0NjcsNjg0NzFdLFwiZGlzYWxsb3dlZFwiXSxbWzY4NDcyLDY4NDc5XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s2ODQ4MCw2ODQ5N10sXCJ2YWxpZFwiXSxbWzY4NDk4LDY4NTA0XSxcImRpc2FsbG93ZWRcIl0sW1s2ODUwNSw2ODUwOF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNjg1MDksNjg1MjBdLFwiZGlzYWxsb3dlZFwiXSxbWzY4NTIxLDY4NTI3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s2ODUyOCw2ODYwN10sXCJkaXNhbGxvd2VkXCJdLFtbNjg2MDgsNjg2ODBdLFwidmFsaWRcIl0sW1s2ODY4MSw2ODczNV0sXCJkaXNhbGxvd2VkXCJdLFtbNjg3MzYsNjg3MzZdLFwibWFwcGVkXCIsWzY4ODAwXV0sW1s2ODczNyw2ODczN10sXCJtYXBwZWRcIixbNjg4MDFdXSxbWzY4NzM4LDY4NzM4XSxcIm1hcHBlZFwiLFs2ODgwMl1dLFtbNjg3MzksNjg3MzldLFwibWFwcGVkXCIsWzY4ODAzXV0sW1s2ODc0MCw2ODc0MF0sXCJtYXBwZWRcIixbNjg4MDRdXSxbWzY4NzQxLDY4NzQxXSxcIm1hcHBlZFwiLFs2ODgwNV1dLFtbNjg3NDIsNjg3NDJdLFwibWFwcGVkXCIsWzY4ODA2XV0sW1s2ODc0Myw2ODc0M10sXCJtYXBwZWRcIixbNjg4MDddXSxbWzY4NzQ0LDY4NzQ0XSxcIm1hcHBlZFwiLFs2ODgwOF1dLFtbNjg3NDUsNjg3NDVdLFwibWFwcGVkXCIsWzY4ODA5XV0sW1s2ODc0Niw2ODc0Nl0sXCJtYXBwZWRcIixbNjg4MTBdXSxbWzY4NzQ3LDY4NzQ3XSxcIm1hcHBlZFwiLFs2ODgxMV1dLFtbNjg3NDgsNjg3NDhdLFwibWFwcGVkXCIsWzY4ODEyXV0sW1s2ODc0OSw2ODc0OV0sXCJtYXBwZWRcIixbNjg4MTNdXSxbWzY4NzUwLDY4NzUwXSxcIm1hcHBlZFwiLFs2ODgxNF1dLFtbNjg3NTEsNjg3NTFdLFwibWFwcGVkXCIsWzY4ODE1XV0sW1s2ODc1Miw2ODc1Ml0sXCJtYXBwZWRcIixbNjg4MTZdXSxbWzY4NzUzLDY4NzUzXSxcIm1hcHBlZFwiLFs2ODgxN11dLFtbNjg3NTQsNjg3NTRdLFwibWFwcGVkXCIsWzY4ODE4XV0sW1s2ODc1NSw2ODc1NV0sXCJtYXBwZWRcIixbNjg4MTldXSxbWzY4NzU2LDY4NzU2XSxcIm1hcHBlZFwiLFs2ODgyMF1dLFtbNjg3NTcsNjg3NTddLFwibWFwcGVkXCIsWzY4ODIxXV0sW1s2ODc1OCw2ODc1OF0sXCJtYXBwZWRcIixbNjg4MjJdXSxbWzY4NzU5LDY4NzU5XSxcIm1hcHBlZFwiLFs2ODgyM11dLFtbNjg3NjAsNjg3NjBdLFwibWFwcGVkXCIsWzY4ODI0XV0sW1s2ODc2MSw2ODc2MV0sXCJtYXBwZWRcIixbNjg4MjVdXSxbWzY4NzYyLDY4NzYyXSxcIm1hcHBlZFwiLFs2ODgyNl1dLFtbNjg3NjMsNjg3NjNdLFwibWFwcGVkXCIsWzY4ODI3XV0sW1s2ODc2NCw2ODc2NF0sXCJtYXBwZWRcIixbNjg4MjhdXSxbWzY4NzY1LDY4NzY1XSxcIm1hcHBlZFwiLFs2ODgyOV1dLFtbNjg3NjYsNjg3NjZdLFwibWFwcGVkXCIsWzY4ODMwXV0sW1s2ODc2Nyw2ODc2N10sXCJtYXBwZWRcIixbNjg4MzFdXSxbWzY4NzY4LDY4NzY4XSxcIm1hcHBlZFwiLFs2ODgzMl1dLFtbNjg3NjksNjg3NjldLFwibWFwcGVkXCIsWzY4ODMzXV0sW1s2ODc3MCw2ODc3MF0sXCJtYXBwZWRcIixbNjg4MzRdXSxbWzY4NzcxLDY4NzcxXSxcIm1hcHBlZFwiLFs2ODgzNV1dLFtbNjg3NzIsNjg3NzJdLFwibWFwcGVkXCIsWzY4ODM2XV0sW1s2ODc3Myw2ODc3M10sXCJtYXBwZWRcIixbNjg4MzddXSxbWzY4Nzc0LDY4Nzc0XSxcIm1hcHBlZFwiLFs2ODgzOF1dLFtbNjg3NzUsNjg3NzVdLFwibWFwcGVkXCIsWzY4ODM5XV0sW1s2ODc3Niw2ODc3Nl0sXCJtYXBwZWRcIixbNjg4NDBdXSxbWzY4Nzc3LDY4Nzc3XSxcIm1hcHBlZFwiLFs2ODg0MV1dLFtbNjg3NzgsNjg3NzhdLFwibWFwcGVkXCIsWzY4ODQyXV0sW1s2ODc3OSw2ODc3OV0sXCJtYXBwZWRcIixbNjg4NDNdXSxbWzY4NzgwLDY4NzgwXSxcIm1hcHBlZFwiLFs2ODg0NF1dLFtbNjg3ODEsNjg3ODFdLFwibWFwcGVkXCIsWzY4ODQ1XV0sW1s2ODc4Miw2ODc4Ml0sXCJtYXBwZWRcIixbNjg4NDZdXSxbWzY4NzgzLDY4NzgzXSxcIm1hcHBlZFwiLFs2ODg0N11dLFtbNjg3ODQsNjg3ODRdLFwibWFwcGVkXCIsWzY4ODQ4XV0sW1s2ODc4NSw2ODc4NV0sXCJtYXBwZWRcIixbNjg4NDldXSxbWzY4Nzg2LDY4Nzg2XSxcIm1hcHBlZFwiLFs2ODg1MF1dLFtbNjg3ODcsNjg3OTldLFwiZGlzYWxsb3dlZFwiXSxbWzY4ODAwLDY4ODUwXSxcInZhbGlkXCJdLFtbNjg4NTEsNjg4NTddLFwiZGlzYWxsb3dlZFwiXSxbWzY4ODU4LDY4ODYzXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s2ODg2NCw2OTIxNV0sXCJkaXNhbGxvd2VkXCJdLFtbNjkyMTYsNjkyNDZdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzY5MjQ3LDY5NjMxXSxcImRpc2FsbG93ZWRcIl0sW1s2OTYzMiw2OTcwMl0sXCJ2YWxpZFwiXSxbWzY5NzAzLDY5NzA5XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s2OTcxMCw2OTcxM10sXCJkaXNhbGxvd2VkXCJdLFtbNjk3MTQsNjk3MzNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzY5NzM0LDY5NzQzXSxcInZhbGlkXCJdLFtbNjk3NDQsNjk3NThdLFwiZGlzYWxsb3dlZFwiXSxbWzY5NzU5LDY5NzU5XSxcInZhbGlkXCJdLFtbNjk3NjAsNjk4MThdLFwidmFsaWRcIl0sW1s2OTgxOSw2OTgyMF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNjk4MjEsNjk4MjFdLFwiZGlzYWxsb3dlZFwiXSxbWzY5ODIyLDY5ODI1XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s2OTgyNiw2OTgzOV0sXCJkaXNhbGxvd2VkXCJdLFtbNjk4NDAsNjk4NjRdLFwidmFsaWRcIl0sW1s2OTg2NSw2OTg3MV0sXCJkaXNhbGxvd2VkXCJdLFtbNjk4NzIsNjk4ODFdLFwidmFsaWRcIl0sW1s2OTg4Miw2OTg4N10sXCJkaXNhbGxvd2VkXCJdLFtbNjk4ODgsNjk5NDBdLFwidmFsaWRcIl0sW1s2OTk0MSw2OTk0MV0sXCJkaXNhbGxvd2VkXCJdLFtbNjk5NDIsNjk5NTFdLFwidmFsaWRcIl0sW1s2OTk1Miw2OTk1NV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNjk5NTYsNjk5NjddLFwiZGlzYWxsb3dlZFwiXSxbWzY5OTY4LDcwMDAzXSxcInZhbGlkXCJdLFtbNzAwMDQsNzAwMDVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzcwMDA2LDcwMDA2XSxcInZhbGlkXCJdLFtbNzAwMDcsNzAwMTVdLFwiZGlzYWxsb3dlZFwiXSxbWzcwMDE2LDcwMDg0XSxcInZhbGlkXCJdLFtbNzAwODUsNzAwODhdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzcwMDg5LDcwMDg5XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s3MDA5MCw3MDA5Ml0sXCJ2YWxpZFwiXSxbWzcwMDkzLDcwMDkzXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s3MDA5NCw3MDA5NV0sXCJkaXNhbGxvd2VkXCJdLFtbNzAwOTYsNzAxMDVdLFwidmFsaWRcIl0sW1s3MDEwNiw3MDEwNl0sXCJ2YWxpZFwiXSxbWzcwMTA3LDcwMTA3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s3MDEwOCw3MDEwOF0sXCJ2YWxpZFwiXSxbWzcwMTA5LDcwMTExXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s3MDExMiw3MDExMl0sXCJkaXNhbGxvd2VkXCJdLFtbNzAxMTMsNzAxMzJdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzcwMTMzLDcwMTQzXSxcImRpc2FsbG93ZWRcIl0sW1s3MDE0NCw3MDE2MV0sXCJ2YWxpZFwiXSxbWzcwMTYyLDcwMTYyXSxcImRpc2FsbG93ZWRcIl0sW1s3MDE2Myw3MDE5OV0sXCJ2YWxpZFwiXSxbWzcwMjAwLDcwMjA1XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s3MDIwNiw3MDI3MV0sXCJkaXNhbGxvd2VkXCJdLFtbNzAyNzIsNzAyNzhdLFwidmFsaWRcIl0sW1s3MDI3OSw3MDI3OV0sXCJkaXNhbGxvd2VkXCJdLFtbNzAyODAsNzAyODBdLFwidmFsaWRcIl0sW1s3MDI4MSw3MDI4MV0sXCJkaXNhbGxvd2VkXCJdLFtbNzAyODIsNzAyODVdLFwidmFsaWRcIl0sW1s3MDI4Niw3MDI4Nl0sXCJkaXNhbGxvd2VkXCJdLFtbNzAyODcsNzAzMDFdLFwidmFsaWRcIl0sW1s3MDMwMiw3MDMwMl0sXCJkaXNhbGxvd2VkXCJdLFtbNzAzMDMsNzAzMTJdLFwidmFsaWRcIl0sW1s3MDMxMyw3MDMxM10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNzAzMTQsNzAzMTldLFwiZGlzYWxsb3dlZFwiXSxbWzcwMzIwLDcwMzc4XSxcInZhbGlkXCJdLFtbNzAzNzksNzAzODNdLFwiZGlzYWxsb3dlZFwiXSxbWzcwMzg0LDcwMzkzXSxcInZhbGlkXCJdLFtbNzAzOTQsNzAzOTldLFwiZGlzYWxsb3dlZFwiXSxbWzcwNDAwLDcwNDAwXSxcInZhbGlkXCJdLFtbNzA0MDEsNzA0MDNdLFwidmFsaWRcIl0sW1s3MDQwNCw3MDQwNF0sXCJkaXNhbGxvd2VkXCJdLFtbNzA0MDUsNzA0MTJdLFwidmFsaWRcIl0sW1s3MDQxMyw3MDQxNF0sXCJkaXNhbGxvd2VkXCJdLFtbNzA0MTUsNzA0MTZdLFwidmFsaWRcIl0sW1s3MDQxNyw3MDQxOF0sXCJkaXNhbGxvd2VkXCJdLFtbNzA0MTksNzA0NDBdLFwidmFsaWRcIl0sW1s3MDQ0MSw3MDQ0MV0sXCJkaXNhbGxvd2VkXCJdLFtbNzA0NDIsNzA0NDhdLFwidmFsaWRcIl0sW1s3MDQ0OSw3MDQ0OV0sXCJkaXNhbGxvd2VkXCJdLFtbNzA0NTAsNzA0NTFdLFwidmFsaWRcIl0sW1s3MDQ1Miw3MDQ1Ml0sXCJkaXNhbGxvd2VkXCJdLFtbNzA0NTMsNzA0NTddLFwidmFsaWRcIl0sW1s3MDQ1OCw3MDQ1OV0sXCJkaXNhbGxvd2VkXCJdLFtbNzA0NjAsNzA0NjhdLFwidmFsaWRcIl0sW1s3MDQ2OSw3MDQ3MF0sXCJkaXNhbGxvd2VkXCJdLFtbNzA0NzEsNzA0NzJdLFwidmFsaWRcIl0sW1s3MDQ3Myw3MDQ3NF0sXCJkaXNhbGxvd2VkXCJdLFtbNzA0NzUsNzA0NzddLFwidmFsaWRcIl0sW1s3MDQ3OCw3MDQ3OV0sXCJkaXNhbGxvd2VkXCJdLFtbNzA0ODAsNzA0ODBdLFwidmFsaWRcIl0sW1s3MDQ4MSw3MDQ4Nl0sXCJkaXNhbGxvd2VkXCJdLFtbNzA0ODcsNzA0ODddLFwidmFsaWRcIl0sW1s3MDQ4OCw3MDQ5Ml0sXCJkaXNhbGxvd2VkXCJdLFtbNzA0OTMsNzA0OTldLFwidmFsaWRcIl0sW1s3MDUwMCw3MDUwMV0sXCJkaXNhbGxvd2VkXCJdLFtbNzA1MDIsNzA1MDhdLFwidmFsaWRcIl0sW1s3MDUwOSw3MDUxMV0sXCJkaXNhbGxvd2VkXCJdLFtbNzA1MTIsNzA1MTZdLFwidmFsaWRcIl0sW1s3MDUxNyw3MDc4M10sXCJkaXNhbGxvd2VkXCJdLFtbNzA3ODQsNzA4NTNdLFwidmFsaWRcIl0sW1s3MDg1NCw3MDg1NF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNzA4NTUsNzA4NTVdLFwidmFsaWRcIl0sW1s3MDg1Niw3MDg2M10sXCJkaXNhbGxvd2VkXCJdLFtbNzA4NjQsNzA4NzNdLFwidmFsaWRcIl0sW1s3MDg3NCw3MTAzOV0sXCJkaXNhbGxvd2VkXCJdLFtbNzEwNDAsNzEwOTNdLFwidmFsaWRcIl0sW1s3MTA5NCw3MTA5NV0sXCJkaXNhbGxvd2VkXCJdLFtbNzEwOTYsNzExMDRdLFwidmFsaWRcIl0sW1s3MTEwNSw3MTExM10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNzExMTQsNzExMjddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzcxMTI4LDcxMTMzXSxcInZhbGlkXCJdLFtbNzExMzQsNzExNjddLFwiZGlzYWxsb3dlZFwiXSxbWzcxMTY4LDcxMjMyXSxcInZhbGlkXCJdLFtbNzEyMzMsNzEyMzVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzcxMjM2LDcxMjM2XSxcInZhbGlkXCJdLFtbNzEyMzcsNzEyNDddLFwiZGlzYWxsb3dlZFwiXSxbWzcxMjQ4LDcxMjU3XSxcInZhbGlkXCJdLFtbNzEyNTgsNzEyOTVdLFwiZGlzYWxsb3dlZFwiXSxbWzcxMjk2LDcxMzUxXSxcInZhbGlkXCJdLFtbNzEzNTIsNzEzNTldLFwiZGlzYWxsb3dlZFwiXSxbWzcxMzYwLDcxMzY5XSxcInZhbGlkXCJdLFtbNzEzNzAsNzE0MjNdLFwiZGlzYWxsb3dlZFwiXSxbWzcxNDI0LDcxNDQ5XSxcInZhbGlkXCJdLFtbNzE0NTAsNzE0NTJdLFwiZGlzYWxsb3dlZFwiXSxbWzcxNDUzLDcxNDY3XSxcInZhbGlkXCJdLFtbNzE0NjgsNzE0NzFdLFwiZGlzYWxsb3dlZFwiXSxbWzcxNDcyLDcxNDgxXSxcInZhbGlkXCJdLFtbNzE0ODIsNzE0ODddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzcxNDg4LDcxODM5XSxcImRpc2FsbG93ZWRcIl0sW1s3MTg0MCw3MTg0MF0sXCJtYXBwZWRcIixbNzE4NzJdXSxbWzcxODQxLDcxODQxXSxcIm1hcHBlZFwiLFs3MTg3M11dLFtbNzE4NDIsNzE4NDJdLFwibWFwcGVkXCIsWzcxODc0XV0sW1s3MTg0Myw3MTg0M10sXCJtYXBwZWRcIixbNzE4NzVdXSxbWzcxODQ0LDcxODQ0XSxcIm1hcHBlZFwiLFs3MTg3Nl1dLFtbNzE4NDUsNzE4NDVdLFwibWFwcGVkXCIsWzcxODc3XV0sW1s3MTg0Niw3MTg0Nl0sXCJtYXBwZWRcIixbNzE4NzhdXSxbWzcxODQ3LDcxODQ3XSxcIm1hcHBlZFwiLFs3MTg3OV1dLFtbNzE4NDgsNzE4NDhdLFwibWFwcGVkXCIsWzcxODgwXV0sW1s3MTg0OSw3MTg0OV0sXCJtYXBwZWRcIixbNzE4ODFdXSxbWzcxODUwLDcxODUwXSxcIm1hcHBlZFwiLFs3MTg4Ml1dLFtbNzE4NTEsNzE4NTFdLFwibWFwcGVkXCIsWzcxODgzXV0sW1s3MTg1Miw3MTg1Ml0sXCJtYXBwZWRcIixbNzE4ODRdXSxbWzcxODUzLDcxODUzXSxcIm1hcHBlZFwiLFs3MTg4NV1dLFtbNzE4NTQsNzE4NTRdLFwibWFwcGVkXCIsWzcxODg2XV0sW1s3MTg1NSw3MTg1NV0sXCJtYXBwZWRcIixbNzE4ODddXSxbWzcxODU2LDcxODU2XSxcIm1hcHBlZFwiLFs3MTg4OF1dLFtbNzE4NTcsNzE4NTddLFwibWFwcGVkXCIsWzcxODg5XV0sW1s3MTg1OCw3MTg1OF0sXCJtYXBwZWRcIixbNzE4OTBdXSxbWzcxODU5LDcxODU5XSxcIm1hcHBlZFwiLFs3MTg5MV1dLFtbNzE4NjAsNzE4NjBdLFwibWFwcGVkXCIsWzcxODkyXV0sW1s3MTg2MSw3MTg2MV0sXCJtYXBwZWRcIixbNzE4OTNdXSxbWzcxODYyLDcxODYyXSxcIm1hcHBlZFwiLFs3MTg5NF1dLFtbNzE4NjMsNzE4NjNdLFwibWFwcGVkXCIsWzcxODk1XV0sW1s3MTg2NCw3MTg2NF0sXCJtYXBwZWRcIixbNzE4OTZdXSxbWzcxODY1LDcxODY1XSxcIm1hcHBlZFwiLFs3MTg5N11dLFtbNzE4NjYsNzE4NjZdLFwibWFwcGVkXCIsWzcxODk4XV0sW1s3MTg2Nyw3MTg2N10sXCJtYXBwZWRcIixbNzE4OTldXSxbWzcxODY4LDcxODY4XSxcIm1hcHBlZFwiLFs3MTkwMF1dLFtbNzE4NjksNzE4NjldLFwibWFwcGVkXCIsWzcxOTAxXV0sW1s3MTg3MCw3MTg3MF0sXCJtYXBwZWRcIixbNzE5MDJdXSxbWzcxODcxLDcxODcxXSxcIm1hcHBlZFwiLFs3MTkwM11dLFtbNzE4NzIsNzE5MTNdLFwidmFsaWRcIl0sW1s3MTkxNCw3MTkyMl0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNzE5MjMsNzE5MzRdLFwiZGlzYWxsb3dlZFwiXSxbWzcxOTM1LDcxOTM1XSxcInZhbGlkXCJdLFtbNzE5MzYsNzIzODNdLFwiZGlzYWxsb3dlZFwiXSxbWzcyMzg0LDcyNDQwXSxcInZhbGlkXCJdLFtbNzI0NDEsNzM3MjddLFwiZGlzYWxsb3dlZFwiXSxbWzczNzI4LDc0NjA2XSxcInZhbGlkXCJdLFtbNzQ2MDcsNzQ2NDhdLFwidmFsaWRcIl0sW1s3NDY0OSw3NDY0OV0sXCJ2YWxpZFwiXSxbWzc0NjUwLDc0NzUxXSxcImRpc2FsbG93ZWRcIl0sW1s3NDc1Miw3NDg1MF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNzQ4NTEsNzQ4NjJdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzc0ODYzLDc0ODYzXSxcImRpc2FsbG93ZWRcIl0sW1s3NDg2NCw3NDg2N10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbNzQ4NjgsNzQ4NjhdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzc0ODY5LDc0ODc5XSxcImRpc2FsbG93ZWRcIl0sW1s3NDg4MCw3NTA3NV0sXCJ2YWxpZFwiXSxbWzc1MDc2LDc3ODIzXSxcImRpc2FsbG93ZWRcIl0sW1s3NzgyNCw3ODg5NF0sXCJ2YWxpZFwiXSxbWzc4ODk1LDgyOTQzXSxcImRpc2FsbG93ZWRcIl0sW1s4Mjk0NCw4MzUyNl0sXCJ2YWxpZFwiXSxbWzgzNTI3LDkyMTU5XSxcImRpc2FsbG93ZWRcIl0sW1s5MjE2MCw5MjcyOF0sXCJ2YWxpZFwiXSxbWzkyNzI5LDkyNzM1XSxcImRpc2FsbG93ZWRcIl0sW1s5MjczNiw5Mjc2Nl0sXCJ2YWxpZFwiXSxbWzkyNzY3LDkyNzY3XSxcImRpc2FsbG93ZWRcIl0sW1s5Mjc2OCw5Mjc3N10sXCJ2YWxpZFwiXSxbWzkyNzc4LDkyNzgxXSxcImRpc2FsbG93ZWRcIl0sW1s5Mjc4Miw5Mjc4M10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbOTI3ODQsOTI4NzldLFwiZGlzYWxsb3dlZFwiXSxbWzkyODgwLDkyOTA5XSxcInZhbGlkXCJdLFtbOTI5MTAsOTI5MTFdLFwiZGlzYWxsb3dlZFwiXSxbWzkyOTEyLDkyOTE2XSxcInZhbGlkXCJdLFtbOTI5MTcsOTI5MTddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzkyOTE4LDkyOTI3XSxcImRpc2FsbG93ZWRcIl0sW1s5MjkyOCw5Mjk4Ml0sXCJ2YWxpZFwiXSxbWzkyOTgzLDkyOTkxXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s5Mjk5Miw5Mjk5NV0sXCJ2YWxpZFwiXSxbWzkyOTk2LDkyOTk3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1s5Mjk5OCw5MzAwN10sXCJkaXNhbGxvd2VkXCJdLFtbOTMwMDgsOTMwMTddLFwidmFsaWRcIl0sW1s5MzAxOCw5MzAxOF0sXCJkaXNhbGxvd2VkXCJdLFtbOTMwMTksOTMwMjVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzkzMDI2LDkzMDI2XSxcImRpc2FsbG93ZWRcIl0sW1s5MzAyNyw5MzA0N10sXCJ2YWxpZFwiXSxbWzkzMDQ4LDkzMDUyXSxcImRpc2FsbG93ZWRcIl0sW1s5MzA1Myw5MzA3MV0sXCJ2YWxpZFwiXSxbWzkzMDcyLDkzOTUxXSxcImRpc2FsbG93ZWRcIl0sW1s5Mzk1Miw5NDAyMF0sXCJ2YWxpZFwiXSxbWzk0MDIxLDk0MDMxXSxcImRpc2FsbG93ZWRcIl0sW1s5NDAzMiw5NDA3OF0sXCJ2YWxpZFwiXSxbWzk0MDc5LDk0MDk0XSxcImRpc2FsbG93ZWRcIl0sW1s5NDA5NSw5NDExMV0sXCJ2YWxpZFwiXSxbWzk0MTEyLDExMDU5MV0sXCJkaXNhbGxvd2VkXCJdLFtbMTEwNTkyLDExMDU5M10sXCJ2YWxpZFwiXSxbWzExMDU5NCwxMTM2NjNdLFwiZGlzYWxsb3dlZFwiXSxbWzExMzY2NCwxMTM3NzBdLFwidmFsaWRcIl0sW1sxMTM3NzEsMTEzNzc1XSxcImRpc2FsbG93ZWRcIl0sW1sxMTM3NzYsMTEzNzg4XSxcInZhbGlkXCJdLFtbMTEzNzg5LDExMzc5MV0sXCJkaXNhbGxvd2VkXCJdLFtbMTEzNzkyLDExMzgwMF0sXCJ2YWxpZFwiXSxbWzExMzgwMSwxMTM4MDddLFwiZGlzYWxsb3dlZFwiXSxbWzExMzgwOCwxMTM4MTddLFwidmFsaWRcIl0sW1sxMTM4MTgsMTEzODE5XSxcImRpc2FsbG93ZWRcIl0sW1sxMTM4MjAsMTEzODIwXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMTM4MjEsMTEzODIyXSxcInZhbGlkXCJdLFtbMTEzODIzLDExMzgyM10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTEzODI0LDExMzgyN10sXCJpZ25vcmVkXCJdLFtbMTEzODI4LDExODc4M10sXCJkaXNhbGxvd2VkXCJdLFtbMTE4Nzg0LDExOTAyOV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTE5MDMwLDExOTAzOV0sXCJkaXNhbGxvd2VkXCJdLFtbMTE5MDQwLDExOTA3OF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTE5MDc5LDExOTA4MF0sXCJkaXNhbGxvd2VkXCJdLFtbMTE5MDgxLDExOTA4MV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTE5MDgyLDExOTEzM10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTE5MTM0LDExOTEzNF0sXCJtYXBwZWRcIixbMTE5MTI3LDExOTE0MV1dLFtbMTE5MTM1LDExOTEzNV0sXCJtYXBwZWRcIixbMTE5MTI4LDExOTE0MV1dLFtbMTE5MTM2LDExOTEzNl0sXCJtYXBwZWRcIixbMTE5MTI4LDExOTE0MSwxMTkxNTBdXSxbWzExOTEzNywxMTkxMzddLFwibWFwcGVkXCIsWzExOTEyOCwxMTkxNDEsMTE5MTUxXV0sW1sxMTkxMzgsMTE5MTM4XSxcIm1hcHBlZFwiLFsxMTkxMjgsMTE5MTQxLDExOTE1Ml1dLFtbMTE5MTM5LDExOTEzOV0sXCJtYXBwZWRcIixbMTE5MTI4LDExOTE0MSwxMTkxNTNdXSxbWzExOTE0MCwxMTkxNDBdLFwibWFwcGVkXCIsWzExOTEyOCwxMTkxNDEsMTE5MTU0XV0sW1sxMTkxNDEsMTE5MTU0XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMTkxNTUsMTE5MTYyXSxcImRpc2FsbG93ZWRcIl0sW1sxMTkxNjMsMTE5MjI2XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMTkyMjcsMTE5MjI3XSxcIm1hcHBlZFwiLFsxMTkyMjUsMTE5MTQxXV0sW1sxMTkyMjgsMTE5MjI4XSxcIm1hcHBlZFwiLFsxMTkyMjYsMTE5MTQxXV0sW1sxMTkyMjksMTE5MjI5XSxcIm1hcHBlZFwiLFsxMTkyMjUsMTE5MTQxLDExOTE1MF1dLFtbMTE5MjMwLDExOTIzMF0sXCJtYXBwZWRcIixbMTE5MjI2LDExOTE0MSwxMTkxNTBdXSxbWzExOTIzMSwxMTkyMzFdLFwibWFwcGVkXCIsWzExOTIyNSwxMTkxNDEsMTE5MTUxXV0sW1sxMTkyMzIsMTE5MjMyXSxcIm1hcHBlZFwiLFsxMTkyMjYsMTE5MTQxLDExOTE1MV1dLFtbMTE5MjMzLDExOTI2MV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTE5MjYyLDExOTI3Ml0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTE5MjczLDExOTI5NV0sXCJkaXNhbGxvd2VkXCJdLFtbMTE5Mjk2LDExOTM2NV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTE5MzY2LDExOTU1MV0sXCJkaXNhbGxvd2VkXCJdLFtbMTE5NTUyLDExOTYzOF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTE5NjM5LDExOTY0N10sXCJkaXNhbGxvd2VkXCJdLFtbMTE5NjQ4LDExOTY2NV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTE5NjY2LDExOTgwN10sXCJkaXNhbGxvd2VkXCJdLFtbMTE5ODA4LDExOTgwOF0sXCJtYXBwZWRcIixbOTddXSxbWzExOTgwOSwxMTk4MDldLFwibWFwcGVkXCIsWzk4XV0sW1sxMTk4MTAsMTE5ODEwXSxcIm1hcHBlZFwiLFs5OV1dLFtbMTE5ODExLDExOTgxMV0sXCJtYXBwZWRcIixbMTAwXV0sW1sxMTk4MTIsMTE5ODEyXSxcIm1hcHBlZFwiLFsxMDFdXSxbWzExOTgxMywxMTk4MTNdLFwibWFwcGVkXCIsWzEwMl1dLFtbMTE5ODE0LDExOTgxNF0sXCJtYXBwZWRcIixbMTAzXV0sW1sxMTk4MTUsMTE5ODE1XSxcIm1hcHBlZFwiLFsxMDRdXSxbWzExOTgxNiwxMTk4MTZdLFwibWFwcGVkXCIsWzEwNV1dLFtbMTE5ODE3LDExOTgxN10sXCJtYXBwZWRcIixbMTA2XV0sW1sxMTk4MTgsMTE5ODE4XSxcIm1hcHBlZFwiLFsxMDddXSxbWzExOTgxOSwxMTk4MTldLFwibWFwcGVkXCIsWzEwOF1dLFtbMTE5ODIwLDExOTgyMF0sXCJtYXBwZWRcIixbMTA5XV0sW1sxMTk4MjEsMTE5ODIxXSxcIm1hcHBlZFwiLFsxMTBdXSxbWzExOTgyMiwxMTk4MjJdLFwibWFwcGVkXCIsWzExMV1dLFtbMTE5ODIzLDExOTgyM10sXCJtYXBwZWRcIixbMTEyXV0sW1sxMTk4MjQsMTE5ODI0XSxcIm1hcHBlZFwiLFsxMTNdXSxbWzExOTgyNSwxMTk4MjVdLFwibWFwcGVkXCIsWzExNF1dLFtbMTE5ODI2LDExOTgyNl0sXCJtYXBwZWRcIixbMTE1XV0sW1sxMTk4MjcsMTE5ODI3XSxcIm1hcHBlZFwiLFsxMTZdXSxbWzExOTgyOCwxMTk4MjhdLFwibWFwcGVkXCIsWzExN11dLFtbMTE5ODI5LDExOTgyOV0sXCJtYXBwZWRcIixbMTE4XV0sW1sxMTk4MzAsMTE5ODMwXSxcIm1hcHBlZFwiLFsxMTldXSxbWzExOTgzMSwxMTk4MzFdLFwibWFwcGVkXCIsWzEyMF1dLFtbMTE5ODMyLDExOTgzMl0sXCJtYXBwZWRcIixbMTIxXV0sW1sxMTk4MzMsMTE5ODMzXSxcIm1hcHBlZFwiLFsxMjJdXSxbWzExOTgzNCwxMTk4MzRdLFwibWFwcGVkXCIsWzk3XV0sW1sxMTk4MzUsMTE5ODM1XSxcIm1hcHBlZFwiLFs5OF1dLFtbMTE5ODM2LDExOTgzNl0sXCJtYXBwZWRcIixbOTldXSxbWzExOTgzNywxMTk4MzddLFwibWFwcGVkXCIsWzEwMF1dLFtbMTE5ODM4LDExOTgzOF0sXCJtYXBwZWRcIixbMTAxXV0sW1sxMTk4MzksMTE5ODM5XSxcIm1hcHBlZFwiLFsxMDJdXSxbWzExOTg0MCwxMTk4NDBdLFwibWFwcGVkXCIsWzEwM11dLFtbMTE5ODQxLDExOTg0MV0sXCJtYXBwZWRcIixbMTA0XV0sW1sxMTk4NDIsMTE5ODQyXSxcIm1hcHBlZFwiLFsxMDVdXSxbWzExOTg0MywxMTk4NDNdLFwibWFwcGVkXCIsWzEwNl1dLFtbMTE5ODQ0LDExOTg0NF0sXCJtYXBwZWRcIixbMTA3XV0sW1sxMTk4NDUsMTE5ODQ1XSxcIm1hcHBlZFwiLFsxMDhdXSxbWzExOTg0NiwxMTk4NDZdLFwibWFwcGVkXCIsWzEwOV1dLFtbMTE5ODQ3LDExOTg0N10sXCJtYXBwZWRcIixbMTEwXV0sW1sxMTk4NDgsMTE5ODQ4XSxcIm1hcHBlZFwiLFsxMTFdXSxbWzExOTg0OSwxMTk4NDldLFwibWFwcGVkXCIsWzExMl1dLFtbMTE5ODUwLDExOTg1MF0sXCJtYXBwZWRcIixbMTEzXV0sW1sxMTk4NTEsMTE5ODUxXSxcIm1hcHBlZFwiLFsxMTRdXSxbWzExOTg1MiwxMTk4NTJdLFwibWFwcGVkXCIsWzExNV1dLFtbMTE5ODUzLDExOTg1M10sXCJtYXBwZWRcIixbMTE2XV0sW1sxMTk4NTQsMTE5ODU0XSxcIm1hcHBlZFwiLFsxMTddXSxbWzExOTg1NSwxMTk4NTVdLFwibWFwcGVkXCIsWzExOF1dLFtbMTE5ODU2LDExOTg1Nl0sXCJtYXBwZWRcIixbMTE5XV0sW1sxMTk4NTcsMTE5ODU3XSxcIm1hcHBlZFwiLFsxMjBdXSxbWzExOTg1OCwxMTk4NThdLFwibWFwcGVkXCIsWzEyMV1dLFtbMTE5ODU5LDExOTg1OV0sXCJtYXBwZWRcIixbMTIyXV0sW1sxMTk4NjAsMTE5ODYwXSxcIm1hcHBlZFwiLFs5N11dLFtbMTE5ODYxLDExOTg2MV0sXCJtYXBwZWRcIixbOThdXSxbWzExOTg2MiwxMTk4NjJdLFwibWFwcGVkXCIsWzk5XV0sW1sxMTk4NjMsMTE5ODYzXSxcIm1hcHBlZFwiLFsxMDBdXSxbWzExOTg2NCwxMTk4NjRdLFwibWFwcGVkXCIsWzEwMV1dLFtbMTE5ODY1LDExOTg2NV0sXCJtYXBwZWRcIixbMTAyXV0sW1sxMTk4NjYsMTE5ODY2XSxcIm1hcHBlZFwiLFsxMDNdXSxbWzExOTg2NywxMTk4NjddLFwibWFwcGVkXCIsWzEwNF1dLFtbMTE5ODY4LDExOTg2OF0sXCJtYXBwZWRcIixbMTA1XV0sW1sxMTk4NjksMTE5ODY5XSxcIm1hcHBlZFwiLFsxMDZdXSxbWzExOTg3MCwxMTk4NzBdLFwibWFwcGVkXCIsWzEwN11dLFtbMTE5ODcxLDExOTg3MV0sXCJtYXBwZWRcIixbMTA4XV0sW1sxMTk4NzIsMTE5ODcyXSxcIm1hcHBlZFwiLFsxMDldXSxbWzExOTg3MywxMTk4NzNdLFwibWFwcGVkXCIsWzExMF1dLFtbMTE5ODc0LDExOTg3NF0sXCJtYXBwZWRcIixbMTExXV0sW1sxMTk4NzUsMTE5ODc1XSxcIm1hcHBlZFwiLFsxMTJdXSxbWzExOTg3NiwxMTk4NzZdLFwibWFwcGVkXCIsWzExM11dLFtbMTE5ODc3LDExOTg3N10sXCJtYXBwZWRcIixbMTE0XV0sW1sxMTk4NzgsMTE5ODc4XSxcIm1hcHBlZFwiLFsxMTVdXSxbWzExOTg3OSwxMTk4NzldLFwibWFwcGVkXCIsWzExNl1dLFtbMTE5ODgwLDExOTg4MF0sXCJtYXBwZWRcIixbMTE3XV0sW1sxMTk4ODEsMTE5ODgxXSxcIm1hcHBlZFwiLFsxMThdXSxbWzExOTg4MiwxMTk4ODJdLFwibWFwcGVkXCIsWzExOV1dLFtbMTE5ODgzLDExOTg4M10sXCJtYXBwZWRcIixbMTIwXV0sW1sxMTk4ODQsMTE5ODg0XSxcIm1hcHBlZFwiLFsxMjFdXSxbWzExOTg4NSwxMTk4ODVdLFwibWFwcGVkXCIsWzEyMl1dLFtbMTE5ODg2LDExOTg4Nl0sXCJtYXBwZWRcIixbOTddXSxbWzExOTg4NywxMTk4ODddLFwibWFwcGVkXCIsWzk4XV0sW1sxMTk4ODgsMTE5ODg4XSxcIm1hcHBlZFwiLFs5OV1dLFtbMTE5ODg5LDExOTg4OV0sXCJtYXBwZWRcIixbMTAwXV0sW1sxMTk4OTAsMTE5ODkwXSxcIm1hcHBlZFwiLFsxMDFdXSxbWzExOTg5MSwxMTk4OTFdLFwibWFwcGVkXCIsWzEwMl1dLFtbMTE5ODkyLDExOTg5Ml0sXCJtYXBwZWRcIixbMTAzXV0sW1sxMTk4OTMsMTE5ODkzXSxcImRpc2FsbG93ZWRcIl0sW1sxMTk4OTQsMTE5ODk0XSxcIm1hcHBlZFwiLFsxMDVdXSxbWzExOTg5NSwxMTk4OTVdLFwibWFwcGVkXCIsWzEwNl1dLFtbMTE5ODk2LDExOTg5Nl0sXCJtYXBwZWRcIixbMTA3XV0sW1sxMTk4OTcsMTE5ODk3XSxcIm1hcHBlZFwiLFsxMDhdXSxbWzExOTg5OCwxMTk4OThdLFwibWFwcGVkXCIsWzEwOV1dLFtbMTE5ODk5LDExOTg5OV0sXCJtYXBwZWRcIixbMTEwXV0sW1sxMTk5MDAsMTE5OTAwXSxcIm1hcHBlZFwiLFsxMTFdXSxbWzExOTkwMSwxMTk5MDFdLFwibWFwcGVkXCIsWzExMl1dLFtbMTE5OTAyLDExOTkwMl0sXCJtYXBwZWRcIixbMTEzXV0sW1sxMTk5MDMsMTE5OTAzXSxcIm1hcHBlZFwiLFsxMTRdXSxbWzExOTkwNCwxMTk5MDRdLFwibWFwcGVkXCIsWzExNV1dLFtbMTE5OTA1LDExOTkwNV0sXCJtYXBwZWRcIixbMTE2XV0sW1sxMTk5MDYsMTE5OTA2XSxcIm1hcHBlZFwiLFsxMTddXSxbWzExOTkwNywxMTk5MDddLFwibWFwcGVkXCIsWzExOF1dLFtbMTE5OTA4LDExOTkwOF0sXCJtYXBwZWRcIixbMTE5XV0sW1sxMTk5MDksMTE5OTA5XSxcIm1hcHBlZFwiLFsxMjBdXSxbWzExOTkxMCwxMTk5MTBdLFwibWFwcGVkXCIsWzEyMV1dLFtbMTE5OTExLDExOTkxMV0sXCJtYXBwZWRcIixbMTIyXV0sW1sxMTk5MTIsMTE5OTEyXSxcIm1hcHBlZFwiLFs5N11dLFtbMTE5OTEzLDExOTkxM10sXCJtYXBwZWRcIixbOThdXSxbWzExOTkxNCwxMTk5MTRdLFwibWFwcGVkXCIsWzk5XV0sW1sxMTk5MTUsMTE5OTE1XSxcIm1hcHBlZFwiLFsxMDBdXSxbWzExOTkxNiwxMTk5MTZdLFwibWFwcGVkXCIsWzEwMV1dLFtbMTE5OTE3LDExOTkxN10sXCJtYXBwZWRcIixbMTAyXV0sW1sxMTk5MTgsMTE5OTE4XSxcIm1hcHBlZFwiLFsxMDNdXSxbWzExOTkxOSwxMTk5MTldLFwibWFwcGVkXCIsWzEwNF1dLFtbMTE5OTIwLDExOTkyMF0sXCJtYXBwZWRcIixbMTA1XV0sW1sxMTk5MjEsMTE5OTIxXSxcIm1hcHBlZFwiLFsxMDZdXSxbWzExOTkyMiwxMTk5MjJdLFwibWFwcGVkXCIsWzEwN11dLFtbMTE5OTIzLDExOTkyM10sXCJtYXBwZWRcIixbMTA4XV0sW1sxMTk5MjQsMTE5OTI0XSxcIm1hcHBlZFwiLFsxMDldXSxbWzExOTkyNSwxMTk5MjVdLFwibWFwcGVkXCIsWzExMF1dLFtbMTE5OTI2LDExOTkyNl0sXCJtYXBwZWRcIixbMTExXV0sW1sxMTk5MjcsMTE5OTI3XSxcIm1hcHBlZFwiLFsxMTJdXSxbWzExOTkyOCwxMTk5MjhdLFwibWFwcGVkXCIsWzExM11dLFtbMTE5OTI5LDExOTkyOV0sXCJtYXBwZWRcIixbMTE0XV0sW1sxMTk5MzAsMTE5OTMwXSxcIm1hcHBlZFwiLFsxMTVdXSxbWzExOTkzMSwxMTk5MzFdLFwibWFwcGVkXCIsWzExNl1dLFtbMTE5OTMyLDExOTkzMl0sXCJtYXBwZWRcIixbMTE3XV0sW1sxMTk5MzMsMTE5OTMzXSxcIm1hcHBlZFwiLFsxMThdXSxbWzExOTkzNCwxMTk5MzRdLFwibWFwcGVkXCIsWzExOV1dLFtbMTE5OTM1LDExOTkzNV0sXCJtYXBwZWRcIixbMTIwXV0sW1sxMTk5MzYsMTE5OTM2XSxcIm1hcHBlZFwiLFsxMjFdXSxbWzExOTkzNywxMTk5MzddLFwibWFwcGVkXCIsWzEyMl1dLFtbMTE5OTM4LDExOTkzOF0sXCJtYXBwZWRcIixbOTddXSxbWzExOTkzOSwxMTk5MzldLFwibWFwcGVkXCIsWzk4XV0sW1sxMTk5NDAsMTE5OTQwXSxcIm1hcHBlZFwiLFs5OV1dLFtbMTE5OTQxLDExOTk0MV0sXCJtYXBwZWRcIixbMTAwXV0sW1sxMTk5NDIsMTE5OTQyXSxcIm1hcHBlZFwiLFsxMDFdXSxbWzExOTk0MywxMTk5NDNdLFwibWFwcGVkXCIsWzEwMl1dLFtbMTE5OTQ0LDExOTk0NF0sXCJtYXBwZWRcIixbMTAzXV0sW1sxMTk5NDUsMTE5OTQ1XSxcIm1hcHBlZFwiLFsxMDRdXSxbWzExOTk0NiwxMTk5NDZdLFwibWFwcGVkXCIsWzEwNV1dLFtbMTE5OTQ3LDExOTk0N10sXCJtYXBwZWRcIixbMTA2XV0sW1sxMTk5NDgsMTE5OTQ4XSxcIm1hcHBlZFwiLFsxMDddXSxbWzExOTk0OSwxMTk5NDldLFwibWFwcGVkXCIsWzEwOF1dLFtbMTE5OTUwLDExOTk1MF0sXCJtYXBwZWRcIixbMTA5XV0sW1sxMTk5NTEsMTE5OTUxXSxcIm1hcHBlZFwiLFsxMTBdXSxbWzExOTk1MiwxMTk5NTJdLFwibWFwcGVkXCIsWzExMV1dLFtbMTE5OTUzLDExOTk1M10sXCJtYXBwZWRcIixbMTEyXV0sW1sxMTk5NTQsMTE5OTU0XSxcIm1hcHBlZFwiLFsxMTNdXSxbWzExOTk1NSwxMTk5NTVdLFwibWFwcGVkXCIsWzExNF1dLFtbMTE5OTU2LDExOTk1Nl0sXCJtYXBwZWRcIixbMTE1XV0sW1sxMTk5NTcsMTE5OTU3XSxcIm1hcHBlZFwiLFsxMTZdXSxbWzExOTk1OCwxMTk5NThdLFwibWFwcGVkXCIsWzExN11dLFtbMTE5OTU5LDExOTk1OV0sXCJtYXBwZWRcIixbMTE4XV0sW1sxMTk5NjAsMTE5OTYwXSxcIm1hcHBlZFwiLFsxMTldXSxbWzExOTk2MSwxMTk5NjFdLFwibWFwcGVkXCIsWzEyMF1dLFtbMTE5OTYyLDExOTk2Ml0sXCJtYXBwZWRcIixbMTIxXV0sW1sxMTk5NjMsMTE5OTYzXSxcIm1hcHBlZFwiLFsxMjJdXSxbWzExOTk2NCwxMTk5NjRdLFwibWFwcGVkXCIsWzk3XV0sW1sxMTk5NjUsMTE5OTY1XSxcImRpc2FsbG93ZWRcIl0sW1sxMTk5NjYsMTE5OTY2XSxcIm1hcHBlZFwiLFs5OV1dLFtbMTE5OTY3LDExOTk2N10sXCJtYXBwZWRcIixbMTAwXV0sW1sxMTk5NjgsMTE5OTY5XSxcImRpc2FsbG93ZWRcIl0sW1sxMTk5NzAsMTE5OTcwXSxcIm1hcHBlZFwiLFsxMDNdXSxbWzExOTk3MSwxMTk5NzJdLFwiZGlzYWxsb3dlZFwiXSxbWzExOTk3MywxMTk5NzNdLFwibWFwcGVkXCIsWzEwNl1dLFtbMTE5OTc0LDExOTk3NF0sXCJtYXBwZWRcIixbMTA3XV0sW1sxMTk5NzUsMTE5OTc2XSxcImRpc2FsbG93ZWRcIl0sW1sxMTk5NzcsMTE5OTc3XSxcIm1hcHBlZFwiLFsxMTBdXSxbWzExOTk3OCwxMTk5NzhdLFwibWFwcGVkXCIsWzExMV1dLFtbMTE5OTc5LDExOTk3OV0sXCJtYXBwZWRcIixbMTEyXV0sW1sxMTk5ODAsMTE5OTgwXSxcIm1hcHBlZFwiLFsxMTNdXSxbWzExOTk4MSwxMTk5ODFdLFwiZGlzYWxsb3dlZFwiXSxbWzExOTk4MiwxMTk5ODJdLFwibWFwcGVkXCIsWzExNV1dLFtbMTE5OTgzLDExOTk4M10sXCJtYXBwZWRcIixbMTE2XV0sW1sxMTk5ODQsMTE5OTg0XSxcIm1hcHBlZFwiLFsxMTddXSxbWzExOTk4NSwxMTk5ODVdLFwibWFwcGVkXCIsWzExOF1dLFtbMTE5OTg2LDExOTk4Nl0sXCJtYXBwZWRcIixbMTE5XV0sW1sxMTk5ODcsMTE5OTg3XSxcIm1hcHBlZFwiLFsxMjBdXSxbWzExOTk4OCwxMTk5ODhdLFwibWFwcGVkXCIsWzEyMV1dLFtbMTE5OTg5LDExOTk4OV0sXCJtYXBwZWRcIixbMTIyXV0sW1sxMTk5OTAsMTE5OTkwXSxcIm1hcHBlZFwiLFs5N11dLFtbMTE5OTkxLDExOTk5MV0sXCJtYXBwZWRcIixbOThdXSxbWzExOTk5MiwxMTk5OTJdLFwibWFwcGVkXCIsWzk5XV0sW1sxMTk5OTMsMTE5OTkzXSxcIm1hcHBlZFwiLFsxMDBdXSxbWzExOTk5NCwxMTk5OTRdLFwiZGlzYWxsb3dlZFwiXSxbWzExOTk5NSwxMTk5OTVdLFwibWFwcGVkXCIsWzEwMl1dLFtbMTE5OTk2LDExOTk5Nl0sXCJkaXNhbGxvd2VkXCJdLFtbMTE5OTk3LDExOTk5N10sXCJtYXBwZWRcIixbMTA0XV0sW1sxMTk5OTgsMTE5OTk4XSxcIm1hcHBlZFwiLFsxMDVdXSxbWzExOTk5OSwxMTk5OTldLFwibWFwcGVkXCIsWzEwNl1dLFtbMTIwMDAwLDEyMDAwMF0sXCJtYXBwZWRcIixbMTA3XV0sW1sxMjAwMDEsMTIwMDAxXSxcIm1hcHBlZFwiLFsxMDhdXSxbWzEyMDAwMiwxMjAwMDJdLFwibWFwcGVkXCIsWzEwOV1dLFtbMTIwMDAzLDEyMDAwM10sXCJtYXBwZWRcIixbMTEwXV0sW1sxMjAwMDQsMTIwMDA0XSxcImRpc2FsbG93ZWRcIl0sW1sxMjAwMDUsMTIwMDA1XSxcIm1hcHBlZFwiLFsxMTJdXSxbWzEyMDAwNiwxMjAwMDZdLFwibWFwcGVkXCIsWzExM11dLFtbMTIwMDA3LDEyMDAwN10sXCJtYXBwZWRcIixbMTE0XV0sW1sxMjAwMDgsMTIwMDA4XSxcIm1hcHBlZFwiLFsxMTVdXSxbWzEyMDAwOSwxMjAwMDldLFwibWFwcGVkXCIsWzExNl1dLFtbMTIwMDEwLDEyMDAxMF0sXCJtYXBwZWRcIixbMTE3XV0sW1sxMjAwMTEsMTIwMDExXSxcIm1hcHBlZFwiLFsxMThdXSxbWzEyMDAxMiwxMjAwMTJdLFwibWFwcGVkXCIsWzExOV1dLFtbMTIwMDEzLDEyMDAxM10sXCJtYXBwZWRcIixbMTIwXV0sW1sxMjAwMTQsMTIwMDE0XSxcIm1hcHBlZFwiLFsxMjFdXSxbWzEyMDAxNSwxMjAwMTVdLFwibWFwcGVkXCIsWzEyMl1dLFtbMTIwMDE2LDEyMDAxNl0sXCJtYXBwZWRcIixbOTddXSxbWzEyMDAxNywxMjAwMTddLFwibWFwcGVkXCIsWzk4XV0sW1sxMjAwMTgsMTIwMDE4XSxcIm1hcHBlZFwiLFs5OV1dLFtbMTIwMDE5LDEyMDAxOV0sXCJtYXBwZWRcIixbMTAwXV0sW1sxMjAwMjAsMTIwMDIwXSxcIm1hcHBlZFwiLFsxMDFdXSxbWzEyMDAyMSwxMjAwMjFdLFwibWFwcGVkXCIsWzEwMl1dLFtbMTIwMDIyLDEyMDAyMl0sXCJtYXBwZWRcIixbMTAzXV0sW1sxMjAwMjMsMTIwMDIzXSxcIm1hcHBlZFwiLFsxMDRdXSxbWzEyMDAyNCwxMjAwMjRdLFwibWFwcGVkXCIsWzEwNV1dLFtbMTIwMDI1LDEyMDAyNV0sXCJtYXBwZWRcIixbMTA2XV0sW1sxMjAwMjYsMTIwMDI2XSxcIm1hcHBlZFwiLFsxMDddXSxbWzEyMDAyNywxMjAwMjddLFwibWFwcGVkXCIsWzEwOF1dLFtbMTIwMDI4LDEyMDAyOF0sXCJtYXBwZWRcIixbMTA5XV0sW1sxMjAwMjksMTIwMDI5XSxcIm1hcHBlZFwiLFsxMTBdXSxbWzEyMDAzMCwxMjAwMzBdLFwibWFwcGVkXCIsWzExMV1dLFtbMTIwMDMxLDEyMDAzMV0sXCJtYXBwZWRcIixbMTEyXV0sW1sxMjAwMzIsMTIwMDMyXSxcIm1hcHBlZFwiLFsxMTNdXSxbWzEyMDAzMywxMjAwMzNdLFwibWFwcGVkXCIsWzExNF1dLFtbMTIwMDM0LDEyMDAzNF0sXCJtYXBwZWRcIixbMTE1XV0sW1sxMjAwMzUsMTIwMDM1XSxcIm1hcHBlZFwiLFsxMTZdXSxbWzEyMDAzNiwxMjAwMzZdLFwibWFwcGVkXCIsWzExN11dLFtbMTIwMDM3LDEyMDAzN10sXCJtYXBwZWRcIixbMTE4XV0sW1sxMjAwMzgsMTIwMDM4XSxcIm1hcHBlZFwiLFsxMTldXSxbWzEyMDAzOSwxMjAwMzldLFwibWFwcGVkXCIsWzEyMF1dLFtbMTIwMDQwLDEyMDA0MF0sXCJtYXBwZWRcIixbMTIxXV0sW1sxMjAwNDEsMTIwMDQxXSxcIm1hcHBlZFwiLFsxMjJdXSxbWzEyMDA0MiwxMjAwNDJdLFwibWFwcGVkXCIsWzk3XV0sW1sxMjAwNDMsMTIwMDQzXSxcIm1hcHBlZFwiLFs5OF1dLFtbMTIwMDQ0LDEyMDA0NF0sXCJtYXBwZWRcIixbOTldXSxbWzEyMDA0NSwxMjAwNDVdLFwibWFwcGVkXCIsWzEwMF1dLFtbMTIwMDQ2LDEyMDA0Nl0sXCJtYXBwZWRcIixbMTAxXV0sW1sxMjAwNDcsMTIwMDQ3XSxcIm1hcHBlZFwiLFsxMDJdXSxbWzEyMDA0OCwxMjAwNDhdLFwibWFwcGVkXCIsWzEwM11dLFtbMTIwMDQ5LDEyMDA0OV0sXCJtYXBwZWRcIixbMTA0XV0sW1sxMjAwNTAsMTIwMDUwXSxcIm1hcHBlZFwiLFsxMDVdXSxbWzEyMDA1MSwxMjAwNTFdLFwibWFwcGVkXCIsWzEwNl1dLFtbMTIwMDUyLDEyMDA1Ml0sXCJtYXBwZWRcIixbMTA3XV0sW1sxMjAwNTMsMTIwMDUzXSxcIm1hcHBlZFwiLFsxMDhdXSxbWzEyMDA1NCwxMjAwNTRdLFwibWFwcGVkXCIsWzEwOV1dLFtbMTIwMDU1LDEyMDA1NV0sXCJtYXBwZWRcIixbMTEwXV0sW1sxMjAwNTYsMTIwMDU2XSxcIm1hcHBlZFwiLFsxMTFdXSxbWzEyMDA1NywxMjAwNTddLFwibWFwcGVkXCIsWzExMl1dLFtbMTIwMDU4LDEyMDA1OF0sXCJtYXBwZWRcIixbMTEzXV0sW1sxMjAwNTksMTIwMDU5XSxcIm1hcHBlZFwiLFsxMTRdXSxbWzEyMDA2MCwxMjAwNjBdLFwibWFwcGVkXCIsWzExNV1dLFtbMTIwMDYxLDEyMDA2MV0sXCJtYXBwZWRcIixbMTE2XV0sW1sxMjAwNjIsMTIwMDYyXSxcIm1hcHBlZFwiLFsxMTddXSxbWzEyMDA2MywxMjAwNjNdLFwibWFwcGVkXCIsWzExOF1dLFtbMTIwMDY0LDEyMDA2NF0sXCJtYXBwZWRcIixbMTE5XV0sW1sxMjAwNjUsMTIwMDY1XSxcIm1hcHBlZFwiLFsxMjBdXSxbWzEyMDA2NiwxMjAwNjZdLFwibWFwcGVkXCIsWzEyMV1dLFtbMTIwMDY3LDEyMDA2N10sXCJtYXBwZWRcIixbMTIyXV0sW1sxMjAwNjgsMTIwMDY4XSxcIm1hcHBlZFwiLFs5N11dLFtbMTIwMDY5LDEyMDA2OV0sXCJtYXBwZWRcIixbOThdXSxbWzEyMDA3MCwxMjAwNzBdLFwiZGlzYWxsb3dlZFwiXSxbWzEyMDA3MSwxMjAwNzFdLFwibWFwcGVkXCIsWzEwMF1dLFtbMTIwMDcyLDEyMDA3Ml0sXCJtYXBwZWRcIixbMTAxXV0sW1sxMjAwNzMsMTIwMDczXSxcIm1hcHBlZFwiLFsxMDJdXSxbWzEyMDA3NCwxMjAwNzRdLFwibWFwcGVkXCIsWzEwM11dLFtbMTIwMDc1LDEyMDA3Nl0sXCJkaXNhbGxvd2VkXCJdLFtbMTIwMDc3LDEyMDA3N10sXCJtYXBwZWRcIixbMTA2XV0sW1sxMjAwNzgsMTIwMDc4XSxcIm1hcHBlZFwiLFsxMDddXSxbWzEyMDA3OSwxMjAwNzldLFwibWFwcGVkXCIsWzEwOF1dLFtbMTIwMDgwLDEyMDA4MF0sXCJtYXBwZWRcIixbMTA5XV0sW1sxMjAwODEsMTIwMDgxXSxcIm1hcHBlZFwiLFsxMTBdXSxbWzEyMDA4MiwxMjAwODJdLFwibWFwcGVkXCIsWzExMV1dLFtbMTIwMDgzLDEyMDA4M10sXCJtYXBwZWRcIixbMTEyXV0sW1sxMjAwODQsMTIwMDg0XSxcIm1hcHBlZFwiLFsxMTNdXSxbWzEyMDA4NSwxMjAwODVdLFwiZGlzYWxsb3dlZFwiXSxbWzEyMDA4NiwxMjAwODZdLFwibWFwcGVkXCIsWzExNV1dLFtbMTIwMDg3LDEyMDA4N10sXCJtYXBwZWRcIixbMTE2XV0sW1sxMjAwODgsMTIwMDg4XSxcIm1hcHBlZFwiLFsxMTddXSxbWzEyMDA4OSwxMjAwODldLFwibWFwcGVkXCIsWzExOF1dLFtbMTIwMDkwLDEyMDA5MF0sXCJtYXBwZWRcIixbMTE5XV0sW1sxMjAwOTEsMTIwMDkxXSxcIm1hcHBlZFwiLFsxMjBdXSxbWzEyMDA5MiwxMjAwOTJdLFwibWFwcGVkXCIsWzEyMV1dLFtbMTIwMDkzLDEyMDA5M10sXCJkaXNhbGxvd2VkXCJdLFtbMTIwMDk0LDEyMDA5NF0sXCJtYXBwZWRcIixbOTddXSxbWzEyMDA5NSwxMjAwOTVdLFwibWFwcGVkXCIsWzk4XV0sW1sxMjAwOTYsMTIwMDk2XSxcIm1hcHBlZFwiLFs5OV1dLFtbMTIwMDk3LDEyMDA5N10sXCJtYXBwZWRcIixbMTAwXV0sW1sxMjAwOTgsMTIwMDk4XSxcIm1hcHBlZFwiLFsxMDFdXSxbWzEyMDA5OSwxMjAwOTldLFwibWFwcGVkXCIsWzEwMl1dLFtbMTIwMTAwLDEyMDEwMF0sXCJtYXBwZWRcIixbMTAzXV0sW1sxMjAxMDEsMTIwMTAxXSxcIm1hcHBlZFwiLFsxMDRdXSxbWzEyMDEwMiwxMjAxMDJdLFwibWFwcGVkXCIsWzEwNV1dLFtbMTIwMTAzLDEyMDEwM10sXCJtYXBwZWRcIixbMTA2XV0sW1sxMjAxMDQsMTIwMTA0XSxcIm1hcHBlZFwiLFsxMDddXSxbWzEyMDEwNSwxMjAxMDVdLFwibWFwcGVkXCIsWzEwOF1dLFtbMTIwMTA2LDEyMDEwNl0sXCJtYXBwZWRcIixbMTA5XV0sW1sxMjAxMDcsMTIwMTA3XSxcIm1hcHBlZFwiLFsxMTBdXSxbWzEyMDEwOCwxMjAxMDhdLFwibWFwcGVkXCIsWzExMV1dLFtbMTIwMTA5LDEyMDEwOV0sXCJtYXBwZWRcIixbMTEyXV0sW1sxMjAxMTAsMTIwMTEwXSxcIm1hcHBlZFwiLFsxMTNdXSxbWzEyMDExMSwxMjAxMTFdLFwibWFwcGVkXCIsWzExNF1dLFtbMTIwMTEyLDEyMDExMl0sXCJtYXBwZWRcIixbMTE1XV0sW1sxMjAxMTMsMTIwMTEzXSxcIm1hcHBlZFwiLFsxMTZdXSxbWzEyMDExNCwxMjAxMTRdLFwibWFwcGVkXCIsWzExN11dLFtbMTIwMTE1LDEyMDExNV0sXCJtYXBwZWRcIixbMTE4XV0sW1sxMjAxMTYsMTIwMTE2XSxcIm1hcHBlZFwiLFsxMTldXSxbWzEyMDExNywxMjAxMTddLFwibWFwcGVkXCIsWzEyMF1dLFtbMTIwMTE4LDEyMDExOF0sXCJtYXBwZWRcIixbMTIxXV0sW1sxMjAxMTksMTIwMTE5XSxcIm1hcHBlZFwiLFsxMjJdXSxbWzEyMDEyMCwxMjAxMjBdLFwibWFwcGVkXCIsWzk3XV0sW1sxMjAxMjEsMTIwMTIxXSxcIm1hcHBlZFwiLFs5OF1dLFtbMTIwMTIyLDEyMDEyMl0sXCJkaXNhbGxvd2VkXCJdLFtbMTIwMTIzLDEyMDEyM10sXCJtYXBwZWRcIixbMTAwXV0sW1sxMjAxMjQsMTIwMTI0XSxcIm1hcHBlZFwiLFsxMDFdXSxbWzEyMDEyNSwxMjAxMjVdLFwibWFwcGVkXCIsWzEwMl1dLFtbMTIwMTI2LDEyMDEyNl0sXCJtYXBwZWRcIixbMTAzXV0sW1sxMjAxMjcsMTIwMTI3XSxcImRpc2FsbG93ZWRcIl0sW1sxMjAxMjgsMTIwMTI4XSxcIm1hcHBlZFwiLFsxMDVdXSxbWzEyMDEyOSwxMjAxMjldLFwibWFwcGVkXCIsWzEwNl1dLFtbMTIwMTMwLDEyMDEzMF0sXCJtYXBwZWRcIixbMTA3XV0sW1sxMjAxMzEsMTIwMTMxXSxcIm1hcHBlZFwiLFsxMDhdXSxbWzEyMDEzMiwxMjAxMzJdLFwibWFwcGVkXCIsWzEwOV1dLFtbMTIwMTMzLDEyMDEzM10sXCJkaXNhbGxvd2VkXCJdLFtbMTIwMTM0LDEyMDEzNF0sXCJtYXBwZWRcIixbMTExXV0sW1sxMjAxMzUsMTIwMTM3XSxcImRpc2FsbG93ZWRcIl0sW1sxMjAxMzgsMTIwMTM4XSxcIm1hcHBlZFwiLFsxMTVdXSxbWzEyMDEzOSwxMjAxMzldLFwibWFwcGVkXCIsWzExNl1dLFtbMTIwMTQwLDEyMDE0MF0sXCJtYXBwZWRcIixbMTE3XV0sW1sxMjAxNDEsMTIwMTQxXSxcIm1hcHBlZFwiLFsxMThdXSxbWzEyMDE0MiwxMjAxNDJdLFwibWFwcGVkXCIsWzExOV1dLFtbMTIwMTQzLDEyMDE0M10sXCJtYXBwZWRcIixbMTIwXV0sW1sxMjAxNDQsMTIwMTQ0XSxcIm1hcHBlZFwiLFsxMjFdXSxbWzEyMDE0NSwxMjAxNDVdLFwiZGlzYWxsb3dlZFwiXSxbWzEyMDE0NiwxMjAxNDZdLFwibWFwcGVkXCIsWzk3XV0sW1sxMjAxNDcsMTIwMTQ3XSxcIm1hcHBlZFwiLFs5OF1dLFtbMTIwMTQ4LDEyMDE0OF0sXCJtYXBwZWRcIixbOTldXSxbWzEyMDE0OSwxMjAxNDldLFwibWFwcGVkXCIsWzEwMF1dLFtbMTIwMTUwLDEyMDE1MF0sXCJtYXBwZWRcIixbMTAxXV0sW1sxMjAxNTEsMTIwMTUxXSxcIm1hcHBlZFwiLFsxMDJdXSxbWzEyMDE1MiwxMjAxNTJdLFwibWFwcGVkXCIsWzEwM11dLFtbMTIwMTUzLDEyMDE1M10sXCJtYXBwZWRcIixbMTA0XV0sW1sxMjAxNTQsMTIwMTU0XSxcIm1hcHBlZFwiLFsxMDVdXSxbWzEyMDE1NSwxMjAxNTVdLFwibWFwcGVkXCIsWzEwNl1dLFtbMTIwMTU2LDEyMDE1Nl0sXCJtYXBwZWRcIixbMTA3XV0sW1sxMjAxNTcsMTIwMTU3XSxcIm1hcHBlZFwiLFsxMDhdXSxbWzEyMDE1OCwxMjAxNThdLFwibWFwcGVkXCIsWzEwOV1dLFtbMTIwMTU5LDEyMDE1OV0sXCJtYXBwZWRcIixbMTEwXV0sW1sxMjAxNjAsMTIwMTYwXSxcIm1hcHBlZFwiLFsxMTFdXSxbWzEyMDE2MSwxMjAxNjFdLFwibWFwcGVkXCIsWzExMl1dLFtbMTIwMTYyLDEyMDE2Ml0sXCJtYXBwZWRcIixbMTEzXV0sW1sxMjAxNjMsMTIwMTYzXSxcIm1hcHBlZFwiLFsxMTRdXSxbWzEyMDE2NCwxMjAxNjRdLFwibWFwcGVkXCIsWzExNV1dLFtbMTIwMTY1LDEyMDE2NV0sXCJtYXBwZWRcIixbMTE2XV0sW1sxMjAxNjYsMTIwMTY2XSxcIm1hcHBlZFwiLFsxMTddXSxbWzEyMDE2NywxMjAxNjddLFwibWFwcGVkXCIsWzExOF1dLFtbMTIwMTY4LDEyMDE2OF0sXCJtYXBwZWRcIixbMTE5XV0sW1sxMjAxNjksMTIwMTY5XSxcIm1hcHBlZFwiLFsxMjBdXSxbWzEyMDE3MCwxMjAxNzBdLFwibWFwcGVkXCIsWzEyMV1dLFtbMTIwMTcxLDEyMDE3MV0sXCJtYXBwZWRcIixbMTIyXV0sW1sxMjAxNzIsMTIwMTcyXSxcIm1hcHBlZFwiLFs5N11dLFtbMTIwMTczLDEyMDE3M10sXCJtYXBwZWRcIixbOThdXSxbWzEyMDE3NCwxMjAxNzRdLFwibWFwcGVkXCIsWzk5XV0sW1sxMjAxNzUsMTIwMTc1XSxcIm1hcHBlZFwiLFsxMDBdXSxbWzEyMDE3NiwxMjAxNzZdLFwibWFwcGVkXCIsWzEwMV1dLFtbMTIwMTc3LDEyMDE3N10sXCJtYXBwZWRcIixbMTAyXV0sW1sxMjAxNzgsMTIwMTc4XSxcIm1hcHBlZFwiLFsxMDNdXSxbWzEyMDE3OSwxMjAxNzldLFwibWFwcGVkXCIsWzEwNF1dLFtbMTIwMTgwLDEyMDE4MF0sXCJtYXBwZWRcIixbMTA1XV0sW1sxMjAxODEsMTIwMTgxXSxcIm1hcHBlZFwiLFsxMDZdXSxbWzEyMDE4MiwxMjAxODJdLFwibWFwcGVkXCIsWzEwN11dLFtbMTIwMTgzLDEyMDE4M10sXCJtYXBwZWRcIixbMTA4XV0sW1sxMjAxODQsMTIwMTg0XSxcIm1hcHBlZFwiLFsxMDldXSxbWzEyMDE4NSwxMjAxODVdLFwibWFwcGVkXCIsWzExMF1dLFtbMTIwMTg2LDEyMDE4Nl0sXCJtYXBwZWRcIixbMTExXV0sW1sxMjAxODcsMTIwMTg3XSxcIm1hcHBlZFwiLFsxMTJdXSxbWzEyMDE4OCwxMjAxODhdLFwibWFwcGVkXCIsWzExM11dLFtbMTIwMTg5LDEyMDE4OV0sXCJtYXBwZWRcIixbMTE0XV0sW1sxMjAxOTAsMTIwMTkwXSxcIm1hcHBlZFwiLFsxMTVdXSxbWzEyMDE5MSwxMjAxOTFdLFwibWFwcGVkXCIsWzExNl1dLFtbMTIwMTkyLDEyMDE5Ml0sXCJtYXBwZWRcIixbMTE3XV0sW1sxMjAxOTMsMTIwMTkzXSxcIm1hcHBlZFwiLFsxMThdXSxbWzEyMDE5NCwxMjAxOTRdLFwibWFwcGVkXCIsWzExOV1dLFtbMTIwMTk1LDEyMDE5NV0sXCJtYXBwZWRcIixbMTIwXV0sW1sxMjAxOTYsMTIwMTk2XSxcIm1hcHBlZFwiLFsxMjFdXSxbWzEyMDE5NywxMjAxOTddLFwibWFwcGVkXCIsWzEyMl1dLFtbMTIwMTk4LDEyMDE5OF0sXCJtYXBwZWRcIixbOTddXSxbWzEyMDE5OSwxMjAxOTldLFwibWFwcGVkXCIsWzk4XV0sW1sxMjAyMDAsMTIwMjAwXSxcIm1hcHBlZFwiLFs5OV1dLFtbMTIwMjAxLDEyMDIwMV0sXCJtYXBwZWRcIixbMTAwXV0sW1sxMjAyMDIsMTIwMjAyXSxcIm1hcHBlZFwiLFsxMDFdXSxbWzEyMDIwMywxMjAyMDNdLFwibWFwcGVkXCIsWzEwMl1dLFtbMTIwMjA0LDEyMDIwNF0sXCJtYXBwZWRcIixbMTAzXV0sW1sxMjAyMDUsMTIwMjA1XSxcIm1hcHBlZFwiLFsxMDRdXSxbWzEyMDIwNiwxMjAyMDZdLFwibWFwcGVkXCIsWzEwNV1dLFtbMTIwMjA3LDEyMDIwN10sXCJtYXBwZWRcIixbMTA2XV0sW1sxMjAyMDgsMTIwMjA4XSxcIm1hcHBlZFwiLFsxMDddXSxbWzEyMDIwOSwxMjAyMDldLFwibWFwcGVkXCIsWzEwOF1dLFtbMTIwMjEwLDEyMDIxMF0sXCJtYXBwZWRcIixbMTA5XV0sW1sxMjAyMTEsMTIwMjExXSxcIm1hcHBlZFwiLFsxMTBdXSxbWzEyMDIxMiwxMjAyMTJdLFwibWFwcGVkXCIsWzExMV1dLFtbMTIwMjEzLDEyMDIxM10sXCJtYXBwZWRcIixbMTEyXV0sW1sxMjAyMTQsMTIwMjE0XSxcIm1hcHBlZFwiLFsxMTNdXSxbWzEyMDIxNSwxMjAyMTVdLFwibWFwcGVkXCIsWzExNF1dLFtbMTIwMjE2LDEyMDIxNl0sXCJtYXBwZWRcIixbMTE1XV0sW1sxMjAyMTcsMTIwMjE3XSxcIm1hcHBlZFwiLFsxMTZdXSxbWzEyMDIxOCwxMjAyMThdLFwibWFwcGVkXCIsWzExN11dLFtbMTIwMjE5LDEyMDIxOV0sXCJtYXBwZWRcIixbMTE4XV0sW1sxMjAyMjAsMTIwMjIwXSxcIm1hcHBlZFwiLFsxMTldXSxbWzEyMDIyMSwxMjAyMjFdLFwibWFwcGVkXCIsWzEyMF1dLFtbMTIwMjIyLDEyMDIyMl0sXCJtYXBwZWRcIixbMTIxXV0sW1sxMjAyMjMsMTIwMjIzXSxcIm1hcHBlZFwiLFsxMjJdXSxbWzEyMDIyNCwxMjAyMjRdLFwibWFwcGVkXCIsWzk3XV0sW1sxMjAyMjUsMTIwMjI1XSxcIm1hcHBlZFwiLFs5OF1dLFtbMTIwMjI2LDEyMDIyNl0sXCJtYXBwZWRcIixbOTldXSxbWzEyMDIyNywxMjAyMjddLFwibWFwcGVkXCIsWzEwMF1dLFtbMTIwMjI4LDEyMDIyOF0sXCJtYXBwZWRcIixbMTAxXV0sW1sxMjAyMjksMTIwMjI5XSxcIm1hcHBlZFwiLFsxMDJdXSxbWzEyMDIzMCwxMjAyMzBdLFwibWFwcGVkXCIsWzEwM11dLFtbMTIwMjMxLDEyMDIzMV0sXCJtYXBwZWRcIixbMTA0XV0sW1sxMjAyMzIsMTIwMjMyXSxcIm1hcHBlZFwiLFsxMDVdXSxbWzEyMDIzMywxMjAyMzNdLFwibWFwcGVkXCIsWzEwNl1dLFtbMTIwMjM0LDEyMDIzNF0sXCJtYXBwZWRcIixbMTA3XV0sW1sxMjAyMzUsMTIwMjM1XSxcIm1hcHBlZFwiLFsxMDhdXSxbWzEyMDIzNiwxMjAyMzZdLFwibWFwcGVkXCIsWzEwOV1dLFtbMTIwMjM3LDEyMDIzN10sXCJtYXBwZWRcIixbMTEwXV0sW1sxMjAyMzgsMTIwMjM4XSxcIm1hcHBlZFwiLFsxMTFdXSxbWzEyMDIzOSwxMjAyMzldLFwibWFwcGVkXCIsWzExMl1dLFtbMTIwMjQwLDEyMDI0MF0sXCJtYXBwZWRcIixbMTEzXV0sW1sxMjAyNDEsMTIwMjQxXSxcIm1hcHBlZFwiLFsxMTRdXSxbWzEyMDI0MiwxMjAyNDJdLFwibWFwcGVkXCIsWzExNV1dLFtbMTIwMjQzLDEyMDI0M10sXCJtYXBwZWRcIixbMTE2XV0sW1sxMjAyNDQsMTIwMjQ0XSxcIm1hcHBlZFwiLFsxMTddXSxbWzEyMDI0NSwxMjAyNDVdLFwibWFwcGVkXCIsWzExOF1dLFtbMTIwMjQ2LDEyMDI0Nl0sXCJtYXBwZWRcIixbMTE5XV0sW1sxMjAyNDcsMTIwMjQ3XSxcIm1hcHBlZFwiLFsxMjBdXSxbWzEyMDI0OCwxMjAyNDhdLFwibWFwcGVkXCIsWzEyMV1dLFtbMTIwMjQ5LDEyMDI0OV0sXCJtYXBwZWRcIixbMTIyXV0sW1sxMjAyNTAsMTIwMjUwXSxcIm1hcHBlZFwiLFs5N11dLFtbMTIwMjUxLDEyMDI1MV0sXCJtYXBwZWRcIixbOThdXSxbWzEyMDI1MiwxMjAyNTJdLFwibWFwcGVkXCIsWzk5XV0sW1sxMjAyNTMsMTIwMjUzXSxcIm1hcHBlZFwiLFsxMDBdXSxbWzEyMDI1NCwxMjAyNTRdLFwibWFwcGVkXCIsWzEwMV1dLFtbMTIwMjU1LDEyMDI1NV0sXCJtYXBwZWRcIixbMTAyXV0sW1sxMjAyNTYsMTIwMjU2XSxcIm1hcHBlZFwiLFsxMDNdXSxbWzEyMDI1NywxMjAyNTddLFwibWFwcGVkXCIsWzEwNF1dLFtbMTIwMjU4LDEyMDI1OF0sXCJtYXBwZWRcIixbMTA1XV0sW1sxMjAyNTksMTIwMjU5XSxcIm1hcHBlZFwiLFsxMDZdXSxbWzEyMDI2MCwxMjAyNjBdLFwibWFwcGVkXCIsWzEwN11dLFtbMTIwMjYxLDEyMDI2MV0sXCJtYXBwZWRcIixbMTA4XV0sW1sxMjAyNjIsMTIwMjYyXSxcIm1hcHBlZFwiLFsxMDldXSxbWzEyMDI2MywxMjAyNjNdLFwibWFwcGVkXCIsWzExMF1dLFtbMTIwMjY0LDEyMDI2NF0sXCJtYXBwZWRcIixbMTExXV0sW1sxMjAyNjUsMTIwMjY1XSxcIm1hcHBlZFwiLFsxMTJdXSxbWzEyMDI2NiwxMjAyNjZdLFwibWFwcGVkXCIsWzExM11dLFtbMTIwMjY3LDEyMDI2N10sXCJtYXBwZWRcIixbMTE0XV0sW1sxMjAyNjgsMTIwMjY4XSxcIm1hcHBlZFwiLFsxMTVdXSxbWzEyMDI2OSwxMjAyNjldLFwibWFwcGVkXCIsWzExNl1dLFtbMTIwMjcwLDEyMDI3MF0sXCJtYXBwZWRcIixbMTE3XV0sW1sxMjAyNzEsMTIwMjcxXSxcIm1hcHBlZFwiLFsxMThdXSxbWzEyMDI3MiwxMjAyNzJdLFwibWFwcGVkXCIsWzExOV1dLFtbMTIwMjczLDEyMDI3M10sXCJtYXBwZWRcIixbMTIwXV0sW1sxMjAyNzQsMTIwMjc0XSxcIm1hcHBlZFwiLFsxMjFdXSxbWzEyMDI3NSwxMjAyNzVdLFwibWFwcGVkXCIsWzEyMl1dLFtbMTIwMjc2LDEyMDI3Nl0sXCJtYXBwZWRcIixbOTddXSxbWzEyMDI3NywxMjAyNzddLFwibWFwcGVkXCIsWzk4XV0sW1sxMjAyNzgsMTIwMjc4XSxcIm1hcHBlZFwiLFs5OV1dLFtbMTIwMjc5LDEyMDI3OV0sXCJtYXBwZWRcIixbMTAwXV0sW1sxMjAyODAsMTIwMjgwXSxcIm1hcHBlZFwiLFsxMDFdXSxbWzEyMDI4MSwxMjAyODFdLFwibWFwcGVkXCIsWzEwMl1dLFtbMTIwMjgyLDEyMDI4Ml0sXCJtYXBwZWRcIixbMTAzXV0sW1sxMjAyODMsMTIwMjgzXSxcIm1hcHBlZFwiLFsxMDRdXSxbWzEyMDI4NCwxMjAyODRdLFwibWFwcGVkXCIsWzEwNV1dLFtbMTIwMjg1LDEyMDI4NV0sXCJtYXBwZWRcIixbMTA2XV0sW1sxMjAyODYsMTIwMjg2XSxcIm1hcHBlZFwiLFsxMDddXSxbWzEyMDI4NywxMjAyODddLFwibWFwcGVkXCIsWzEwOF1dLFtbMTIwMjg4LDEyMDI4OF0sXCJtYXBwZWRcIixbMTA5XV0sW1sxMjAyODksMTIwMjg5XSxcIm1hcHBlZFwiLFsxMTBdXSxbWzEyMDI5MCwxMjAyOTBdLFwibWFwcGVkXCIsWzExMV1dLFtbMTIwMjkxLDEyMDI5MV0sXCJtYXBwZWRcIixbMTEyXV0sW1sxMjAyOTIsMTIwMjkyXSxcIm1hcHBlZFwiLFsxMTNdXSxbWzEyMDI5MywxMjAyOTNdLFwibWFwcGVkXCIsWzExNF1dLFtbMTIwMjk0LDEyMDI5NF0sXCJtYXBwZWRcIixbMTE1XV0sW1sxMjAyOTUsMTIwMjk1XSxcIm1hcHBlZFwiLFsxMTZdXSxbWzEyMDI5NiwxMjAyOTZdLFwibWFwcGVkXCIsWzExN11dLFtbMTIwMjk3LDEyMDI5N10sXCJtYXBwZWRcIixbMTE4XV0sW1sxMjAyOTgsMTIwMjk4XSxcIm1hcHBlZFwiLFsxMTldXSxbWzEyMDI5OSwxMjAyOTldLFwibWFwcGVkXCIsWzEyMF1dLFtbMTIwMzAwLDEyMDMwMF0sXCJtYXBwZWRcIixbMTIxXV0sW1sxMjAzMDEsMTIwMzAxXSxcIm1hcHBlZFwiLFsxMjJdXSxbWzEyMDMwMiwxMjAzMDJdLFwibWFwcGVkXCIsWzk3XV0sW1sxMjAzMDMsMTIwMzAzXSxcIm1hcHBlZFwiLFs5OF1dLFtbMTIwMzA0LDEyMDMwNF0sXCJtYXBwZWRcIixbOTldXSxbWzEyMDMwNSwxMjAzMDVdLFwibWFwcGVkXCIsWzEwMF1dLFtbMTIwMzA2LDEyMDMwNl0sXCJtYXBwZWRcIixbMTAxXV0sW1sxMjAzMDcsMTIwMzA3XSxcIm1hcHBlZFwiLFsxMDJdXSxbWzEyMDMwOCwxMjAzMDhdLFwibWFwcGVkXCIsWzEwM11dLFtbMTIwMzA5LDEyMDMwOV0sXCJtYXBwZWRcIixbMTA0XV0sW1sxMjAzMTAsMTIwMzEwXSxcIm1hcHBlZFwiLFsxMDVdXSxbWzEyMDMxMSwxMjAzMTFdLFwibWFwcGVkXCIsWzEwNl1dLFtbMTIwMzEyLDEyMDMxMl0sXCJtYXBwZWRcIixbMTA3XV0sW1sxMjAzMTMsMTIwMzEzXSxcIm1hcHBlZFwiLFsxMDhdXSxbWzEyMDMxNCwxMjAzMTRdLFwibWFwcGVkXCIsWzEwOV1dLFtbMTIwMzE1LDEyMDMxNV0sXCJtYXBwZWRcIixbMTEwXV0sW1sxMjAzMTYsMTIwMzE2XSxcIm1hcHBlZFwiLFsxMTFdXSxbWzEyMDMxNywxMjAzMTddLFwibWFwcGVkXCIsWzExMl1dLFtbMTIwMzE4LDEyMDMxOF0sXCJtYXBwZWRcIixbMTEzXV0sW1sxMjAzMTksMTIwMzE5XSxcIm1hcHBlZFwiLFsxMTRdXSxbWzEyMDMyMCwxMjAzMjBdLFwibWFwcGVkXCIsWzExNV1dLFtbMTIwMzIxLDEyMDMyMV0sXCJtYXBwZWRcIixbMTE2XV0sW1sxMjAzMjIsMTIwMzIyXSxcIm1hcHBlZFwiLFsxMTddXSxbWzEyMDMyMywxMjAzMjNdLFwibWFwcGVkXCIsWzExOF1dLFtbMTIwMzI0LDEyMDMyNF0sXCJtYXBwZWRcIixbMTE5XV0sW1sxMjAzMjUsMTIwMzI1XSxcIm1hcHBlZFwiLFsxMjBdXSxbWzEyMDMyNiwxMjAzMjZdLFwibWFwcGVkXCIsWzEyMV1dLFtbMTIwMzI3LDEyMDMyN10sXCJtYXBwZWRcIixbMTIyXV0sW1sxMjAzMjgsMTIwMzI4XSxcIm1hcHBlZFwiLFs5N11dLFtbMTIwMzI5LDEyMDMyOV0sXCJtYXBwZWRcIixbOThdXSxbWzEyMDMzMCwxMjAzMzBdLFwibWFwcGVkXCIsWzk5XV0sW1sxMjAzMzEsMTIwMzMxXSxcIm1hcHBlZFwiLFsxMDBdXSxbWzEyMDMzMiwxMjAzMzJdLFwibWFwcGVkXCIsWzEwMV1dLFtbMTIwMzMzLDEyMDMzM10sXCJtYXBwZWRcIixbMTAyXV0sW1sxMjAzMzQsMTIwMzM0XSxcIm1hcHBlZFwiLFsxMDNdXSxbWzEyMDMzNSwxMjAzMzVdLFwibWFwcGVkXCIsWzEwNF1dLFtbMTIwMzM2LDEyMDMzNl0sXCJtYXBwZWRcIixbMTA1XV0sW1sxMjAzMzcsMTIwMzM3XSxcIm1hcHBlZFwiLFsxMDZdXSxbWzEyMDMzOCwxMjAzMzhdLFwibWFwcGVkXCIsWzEwN11dLFtbMTIwMzM5LDEyMDMzOV0sXCJtYXBwZWRcIixbMTA4XV0sW1sxMjAzNDAsMTIwMzQwXSxcIm1hcHBlZFwiLFsxMDldXSxbWzEyMDM0MSwxMjAzNDFdLFwibWFwcGVkXCIsWzExMF1dLFtbMTIwMzQyLDEyMDM0Ml0sXCJtYXBwZWRcIixbMTExXV0sW1sxMjAzNDMsMTIwMzQzXSxcIm1hcHBlZFwiLFsxMTJdXSxbWzEyMDM0NCwxMjAzNDRdLFwibWFwcGVkXCIsWzExM11dLFtbMTIwMzQ1LDEyMDM0NV0sXCJtYXBwZWRcIixbMTE0XV0sW1sxMjAzNDYsMTIwMzQ2XSxcIm1hcHBlZFwiLFsxMTVdXSxbWzEyMDM0NywxMjAzNDddLFwibWFwcGVkXCIsWzExNl1dLFtbMTIwMzQ4LDEyMDM0OF0sXCJtYXBwZWRcIixbMTE3XV0sW1sxMjAzNDksMTIwMzQ5XSxcIm1hcHBlZFwiLFsxMThdXSxbWzEyMDM1MCwxMjAzNTBdLFwibWFwcGVkXCIsWzExOV1dLFtbMTIwMzUxLDEyMDM1MV0sXCJtYXBwZWRcIixbMTIwXV0sW1sxMjAzNTIsMTIwMzUyXSxcIm1hcHBlZFwiLFsxMjFdXSxbWzEyMDM1MywxMjAzNTNdLFwibWFwcGVkXCIsWzEyMl1dLFtbMTIwMzU0LDEyMDM1NF0sXCJtYXBwZWRcIixbOTddXSxbWzEyMDM1NSwxMjAzNTVdLFwibWFwcGVkXCIsWzk4XV0sW1sxMjAzNTYsMTIwMzU2XSxcIm1hcHBlZFwiLFs5OV1dLFtbMTIwMzU3LDEyMDM1N10sXCJtYXBwZWRcIixbMTAwXV0sW1sxMjAzNTgsMTIwMzU4XSxcIm1hcHBlZFwiLFsxMDFdXSxbWzEyMDM1OSwxMjAzNTldLFwibWFwcGVkXCIsWzEwMl1dLFtbMTIwMzYwLDEyMDM2MF0sXCJtYXBwZWRcIixbMTAzXV0sW1sxMjAzNjEsMTIwMzYxXSxcIm1hcHBlZFwiLFsxMDRdXSxbWzEyMDM2MiwxMjAzNjJdLFwibWFwcGVkXCIsWzEwNV1dLFtbMTIwMzYzLDEyMDM2M10sXCJtYXBwZWRcIixbMTA2XV0sW1sxMjAzNjQsMTIwMzY0XSxcIm1hcHBlZFwiLFsxMDddXSxbWzEyMDM2NSwxMjAzNjVdLFwibWFwcGVkXCIsWzEwOF1dLFtbMTIwMzY2LDEyMDM2Nl0sXCJtYXBwZWRcIixbMTA5XV0sW1sxMjAzNjcsMTIwMzY3XSxcIm1hcHBlZFwiLFsxMTBdXSxbWzEyMDM2OCwxMjAzNjhdLFwibWFwcGVkXCIsWzExMV1dLFtbMTIwMzY5LDEyMDM2OV0sXCJtYXBwZWRcIixbMTEyXV0sW1sxMjAzNzAsMTIwMzcwXSxcIm1hcHBlZFwiLFsxMTNdXSxbWzEyMDM3MSwxMjAzNzFdLFwibWFwcGVkXCIsWzExNF1dLFtbMTIwMzcyLDEyMDM3Ml0sXCJtYXBwZWRcIixbMTE1XV0sW1sxMjAzNzMsMTIwMzczXSxcIm1hcHBlZFwiLFsxMTZdXSxbWzEyMDM3NCwxMjAzNzRdLFwibWFwcGVkXCIsWzExN11dLFtbMTIwMzc1LDEyMDM3NV0sXCJtYXBwZWRcIixbMTE4XV0sW1sxMjAzNzYsMTIwMzc2XSxcIm1hcHBlZFwiLFsxMTldXSxbWzEyMDM3NywxMjAzNzddLFwibWFwcGVkXCIsWzEyMF1dLFtbMTIwMzc4LDEyMDM3OF0sXCJtYXBwZWRcIixbMTIxXV0sW1sxMjAzNzksMTIwMzc5XSxcIm1hcHBlZFwiLFsxMjJdXSxbWzEyMDM4MCwxMjAzODBdLFwibWFwcGVkXCIsWzk3XV0sW1sxMjAzODEsMTIwMzgxXSxcIm1hcHBlZFwiLFs5OF1dLFtbMTIwMzgyLDEyMDM4Ml0sXCJtYXBwZWRcIixbOTldXSxbWzEyMDM4MywxMjAzODNdLFwibWFwcGVkXCIsWzEwMF1dLFtbMTIwMzg0LDEyMDM4NF0sXCJtYXBwZWRcIixbMTAxXV0sW1sxMjAzODUsMTIwMzg1XSxcIm1hcHBlZFwiLFsxMDJdXSxbWzEyMDM4NiwxMjAzODZdLFwibWFwcGVkXCIsWzEwM11dLFtbMTIwMzg3LDEyMDM4N10sXCJtYXBwZWRcIixbMTA0XV0sW1sxMjAzODgsMTIwMzg4XSxcIm1hcHBlZFwiLFsxMDVdXSxbWzEyMDM4OSwxMjAzODldLFwibWFwcGVkXCIsWzEwNl1dLFtbMTIwMzkwLDEyMDM5MF0sXCJtYXBwZWRcIixbMTA3XV0sW1sxMjAzOTEsMTIwMzkxXSxcIm1hcHBlZFwiLFsxMDhdXSxbWzEyMDM5MiwxMjAzOTJdLFwibWFwcGVkXCIsWzEwOV1dLFtbMTIwMzkzLDEyMDM5M10sXCJtYXBwZWRcIixbMTEwXV0sW1sxMjAzOTQsMTIwMzk0XSxcIm1hcHBlZFwiLFsxMTFdXSxbWzEyMDM5NSwxMjAzOTVdLFwibWFwcGVkXCIsWzExMl1dLFtbMTIwMzk2LDEyMDM5Nl0sXCJtYXBwZWRcIixbMTEzXV0sW1sxMjAzOTcsMTIwMzk3XSxcIm1hcHBlZFwiLFsxMTRdXSxbWzEyMDM5OCwxMjAzOThdLFwibWFwcGVkXCIsWzExNV1dLFtbMTIwMzk5LDEyMDM5OV0sXCJtYXBwZWRcIixbMTE2XV0sW1sxMjA0MDAsMTIwNDAwXSxcIm1hcHBlZFwiLFsxMTddXSxbWzEyMDQwMSwxMjA0MDFdLFwibWFwcGVkXCIsWzExOF1dLFtbMTIwNDAyLDEyMDQwMl0sXCJtYXBwZWRcIixbMTE5XV0sW1sxMjA0MDMsMTIwNDAzXSxcIm1hcHBlZFwiLFsxMjBdXSxbWzEyMDQwNCwxMjA0MDRdLFwibWFwcGVkXCIsWzEyMV1dLFtbMTIwNDA1LDEyMDQwNV0sXCJtYXBwZWRcIixbMTIyXV0sW1sxMjA0MDYsMTIwNDA2XSxcIm1hcHBlZFwiLFs5N11dLFtbMTIwNDA3LDEyMDQwN10sXCJtYXBwZWRcIixbOThdXSxbWzEyMDQwOCwxMjA0MDhdLFwibWFwcGVkXCIsWzk5XV0sW1sxMjA0MDksMTIwNDA5XSxcIm1hcHBlZFwiLFsxMDBdXSxbWzEyMDQxMCwxMjA0MTBdLFwibWFwcGVkXCIsWzEwMV1dLFtbMTIwNDExLDEyMDQxMV0sXCJtYXBwZWRcIixbMTAyXV0sW1sxMjA0MTIsMTIwNDEyXSxcIm1hcHBlZFwiLFsxMDNdXSxbWzEyMDQxMywxMjA0MTNdLFwibWFwcGVkXCIsWzEwNF1dLFtbMTIwNDE0LDEyMDQxNF0sXCJtYXBwZWRcIixbMTA1XV0sW1sxMjA0MTUsMTIwNDE1XSxcIm1hcHBlZFwiLFsxMDZdXSxbWzEyMDQxNiwxMjA0MTZdLFwibWFwcGVkXCIsWzEwN11dLFtbMTIwNDE3LDEyMDQxN10sXCJtYXBwZWRcIixbMTA4XV0sW1sxMjA0MTgsMTIwNDE4XSxcIm1hcHBlZFwiLFsxMDldXSxbWzEyMDQxOSwxMjA0MTldLFwibWFwcGVkXCIsWzExMF1dLFtbMTIwNDIwLDEyMDQyMF0sXCJtYXBwZWRcIixbMTExXV0sW1sxMjA0MjEsMTIwNDIxXSxcIm1hcHBlZFwiLFsxMTJdXSxbWzEyMDQyMiwxMjA0MjJdLFwibWFwcGVkXCIsWzExM11dLFtbMTIwNDIzLDEyMDQyM10sXCJtYXBwZWRcIixbMTE0XV0sW1sxMjA0MjQsMTIwNDI0XSxcIm1hcHBlZFwiLFsxMTVdXSxbWzEyMDQyNSwxMjA0MjVdLFwibWFwcGVkXCIsWzExNl1dLFtbMTIwNDI2LDEyMDQyNl0sXCJtYXBwZWRcIixbMTE3XV0sW1sxMjA0MjcsMTIwNDI3XSxcIm1hcHBlZFwiLFsxMThdXSxbWzEyMDQyOCwxMjA0MjhdLFwibWFwcGVkXCIsWzExOV1dLFtbMTIwNDI5LDEyMDQyOV0sXCJtYXBwZWRcIixbMTIwXV0sW1sxMjA0MzAsMTIwNDMwXSxcIm1hcHBlZFwiLFsxMjFdXSxbWzEyMDQzMSwxMjA0MzFdLFwibWFwcGVkXCIsWzEyMl1dLFtbMTIwNDMyLDEyMDQzMl0sXCJtYXBwZWRcIixbOTddXSxbWzEyMDQzMywxMjA0MzNdLFwibWFwcGVkXCIsWzk4XV0sW1sxMjA0MzQsMTIwNDM0XSxcIm1hcHBlZFwiLFs5OV1dLFtbMTIwNDM1LDEyMDQzNV0sXCJtYXBwZWRcIixbMTAwXV0sW1sxMjA0MzYsMTIwNDM2XSxcIm1hcHBlZFwiLFsxMDFdXSxbWzEyMDQzNywxMjA0MzddLFwibWFwcGVkXCIsWzEwMl1dLFtbMTIwNDM4LDEyMDQzOF0sXCJtYXBwZWRcIixbMTAzXV0sW1sxMjA0MzksMTIwNDM5XSxcIm1hcHBlZFwiLFsxMDRdXSxbWzEyMDQ0MCwxMjA0NDBdLFwibWFwcGVkXCIsWzEwNV1dLFtbMTIwNDQxLDEyMDQ0MV0sXCJtYXBwZWRcIixbMTA2XV0sW1sxMjA0NDIsMTIwNDQyXSxcIm1hcHBlZFwiLFsxMDddXSxbWzEyMDQ0MywxMjA0NDNdLFwibWFwcGVkXCIsWzEwOF1dLFtbMTIwNDQ0LDEyMDQ0NF0sXCJtYXBwZWRcIixbMTA5XV0sW1sxMjA0NDUsMTIwNDQ1XSxcIm1hcHBlZFwiLFsxMTBdXSxbWzEyMDQ0NiwxMjA0NDZdLFwibWFwcGVkXCIsWzExMV1dLFtbMTIwNDQ3LDEyMDQ0N10sXCJtYXBwZWRcIixbMTEyXV0sW1sxMjA0NDgsMTIwNDQ4XSxcIm1hcHBlZFwiLFsxMTNdXSxbWzEyMDQ0OSwxMjA0NDldLFwibWFwcGVkXCIsWzExNF1dLFtbMTIwNDUwLDEyMDQ1MF0sXCJtYXBwZWRcIixbMTE1XV0sW1sxMjA0NTEsMTIwNDUxXSxcIm1hcHBlZFwiLFsxMTZdXSxbWzEyMDQ1MiwxMjA0NTJdLFwibWFwcGVkXCIsWzExN11dLFtbMTIwNDUzLDEyMDQ1M10sXCJtYXBwZWRcIixbMTE4XV0sW1sxMjA0NTQsMTIwNDU0XSxcIm1hcHBlZFwiLFsxMTldXSxbWzEyMDQ1NSwxMjA0NTVdLFwibWFwcGVkXCIsWzEyMF1dLFtbMTIwNDU2LDEyMDQ1Nl0sXCJtYXBwZWRcIixbMTIxXV0sW1sxMjA0NTcsMTIwNDU3XSxcIm1hcHBlZFwiLFsxMjJdXSxbWzEyMDQ1OCwxMjA0NThdLFwibWFwcGVkXCIsWzk3XV0sW1sxMjA0NTksMTIwNDU5XSxcIm1hcHBlZFwiLFs5OF1dLFtbMTIwNDYwLDEyMDQ2MF0sXCJtYXBwZWRcIixbOTldXSxbWzEyMDQ2MSwxMjA0NjFdLFwibWFwcGVkXCIsWzEwMF1dLFtbMTIwNDYyLDEyMDQ2Ml0sXCJtYXBwZWRcIixbMTAxXV0sW1sxMjA0NjMsMTIwNDYzXSxcIm1hcHBlZFwiLFsxMDJdXSxbWzEyMDQ2NCwxMjA0NjRdLFwibWFwcGVkXCIsWzEwM11dLFtbMTIwNDY1LDEyMDQ2NV0sXCJtYXBwZWRcIixbMTA0XV0sW1sxMjA0NjYsMTIwNDY2XSxcIm1hcHBlZFwiLFsxMDVdXSxbWzEyMDQ2NywxMjA0NjddLFwibWFwcGVkXCIsWzEwNl1dLFtbMTIwNDY4LDEyMDQ2OF0sXCJtYXBwZWRcIixbMTA3XV0sW1sxMjA0NjksMTIwNDY5XSxcIm1hcHBlZFwiLFsxMDhdXSxbWzEyMDQ3MCwxMjA0NzBdLFwibWFwcGVkXCIsWzEwOV1dLFtbMTIwNDcxLDEyMDQ3MV0sXCJtYXBwZWRcIixbMTEwXV0sW1sxMjA0NzIsMTIwNDcyXSxcIm1hcHBlZFwiLFsxMTFdXSxbWzEyMDQ3MywxMjA0NzNdLFwibWFwcGVkXCIsWzExMl1dLFtbMTIwNDc0LDEyMDQ3NF0sXCJtYXBwZWRcIixbMTEzXV0sW1sxMjA0NzUsMTIwNDc1XSxcIm1hcHBlZFwiLFsxMTRdXSxbWzEyMDQ3NiwxMjA0NzZdLFwibWFwcGVkXCIsWzExNV1dLFtbMTIwNDc3LDEyMDQ3N10sXCJtYXBwZWRcIixbMTE2XV0sW1sxMjA0NzgsMTIwNDc4XSxcIm1hcHBlZFwiLFsxMTddXSxbWzEyMDQ3OSwxMjA0NzldLFwibWFwcGVkXCIsWzExOF1dLFtbMTIwNDgwLDEyMDQ4MF0sXCJtYXBwZWRcIixbMTE5XV0sW1sxMjA0ODEsMTIwNDgxXSxcIm1hcHBlZFwiLFsxMjBdXSxbWzEyMDQ4MiwxMjA0ODJdLFwibWFwcGVkXCIsWzEyMV1dLFtbMTIwNDgzLDEyMDQ4M10sXCJtYXBwZWRcIixbMTIyXV0sW1sxMjA0ODQsMTIwNDg0XSxcIm1hcHBlZFwiLFszMDVdXSxbWzEyMDQ4NSwxMjA0ODVdLFwibWFwcGVkXCIsWzU2N11dLFtbMTIwNDg2LDEyMDQ4N10sXCJkaXNhbGxvd2VkXCJdLFtbMTIwNDg4LDEyMDQ4OF0sXCJtYXBwZWRcIixbOTQ1XV0sW1sxMjA0ODksMTIwNDg5XSxcIm1hcHBlZFwiLFs5NDZdXSxbWzEyMDQ5MCwxMjA0OTBdLFwibWFwcGVkXCIsWzk0N11dLFtbMTIwNDkxLDEyMDQ5MV0sXCJtYXBwZWRcIixbOTQ4XV0sW1sxMjA0OTIsMTIwNDkyXSxcIm1hcHBlZFwiLFs5NDldXSxbWzEyMDQ5MywxMjA0OTNdLFwibWFwcGVkXCIsWzk1MF1dLFtbMTIwNDk0LDEyMDQ5NF0sXCJtYXBwZWRcIixbOTUxXV0sW1sxMjA0OTUsMTIwNDk1XSxcIm1hcHBlZFwiLFs5NTJdXSxbWzEyMDQ5NiwxMjA0OTZdLFwibWFwcGVkXCIsWzk1M11dLFtbMTIwNDk3LDEyMDQ5N10sXCJtYXBwZWRcIixbOTU0XV0sW1sxMjA0OTgsMTIwNDk4XSxcIm1hcHBlZFwiLFs5NTVdXSxbWzEyMDQ5OSwxMjA0OTldLFwibWFwcGVkXCIsWzk1Nl1dLFtbMTIwNTAwLDEyMDUwMF0sXCJtYXBwZWRcIixbOTU3XV0sW1sxMjA1MDEsMTIwNTAxXSxcIm1hcHBlZFwiLFs5NThdXSxbWzEyMDUwMiwxMjA1MDJdLFwibWFwcGVkXCIsWzk1OV1dLFtbMTIwNTAzLDEyMDUwM10sXCJtYXBwZWRcIixbOTYwXV0sW1sxMjA1MDQsMTIwNTA0XSxcIm1hcHBlZFwiLFs5NjFdXSxbWzEyMDUwNSwxMjA1MDVdLFwibWFwcGVkXCIsWzk1Ml1dLFtbMTIwNTA2LDEyMDUwNl0sXCJtYXBwZWRcIixbOTYzXV0sW1sxMjA1MDcsMTIwNTA3XSxcIm1hcHBlZFwiLFs5NjRdXSxbWzEyMDUwOCwxMjA1MDhdLFwibWFwcGVkXCIsWzk2NV1dLFtbMTIwNTA5LDEyMDUwOV0sXCJtYXBwZWRcIixbOTY2XV0sW1sxMjA1MTAsMTIwNTEwXSxcIm1hcHBlZFwiLFs5NjddXSxbWzEyMDUxMSwxMjA1MTFdLFwibWFwcGVkXCIsWzk2OF1dLFtbMTIwNTEyLDEyMDUxMl0sXCJtYXBwZWRcIixbOTY5XV0sW1sxMjA1MTMsMTIwNTEzXSxcIm1hcHBlZFwiLFs4NzExXV0sW1sxMjA1MTQsMTIwNTE0XSxcIm1hcHBlZFwiLFs5NDVdXSxbWzEyMDUxNSwxMjA1MTVdLFwibWFwcGVkXCIsWzk0Nl1dLFtbMTIwNTE2LDEyMDUxNl0sXCJtYXBwZWRcIixbOTQ3XV0sW1sxMjA1MTcsMTIwNTE3XSxcIm1hcHBlZFwiLFs5NDhdXSxbWzEyMDUxOCwxMjA1MThdLFwibWFwcGVkXCIsWzk0OV1dLFtbMTIwNTE5LDEyMDUxOV0sXCJtYXBwZWRcIixbOTUwXV0sW1sxMjA1MjAsMTIwNTIwXSxcIm1hcHBlZFwiLFs5NTFdXSxbWzEyMDUyMSwxMjA1MjFdLFwibWFwcGVkXCIsWzk1Ml1dLFtbMTIwNTIyLDEyMDUyMl0sXCJtYXBwZWRcIixbOTUzXV0sW1sxMjA1MjMsMTIwNTIzXSxcIm1hcHBlZFwiLFs5NTRdXSxbWzEyMDUyNCwxMjA1MjRdLFwibWFwcGVkXCIsWzk1NV1dLFtbMTIwNTI1LDEyMDUyNV0sXCJtYXBwZWRcIixbOTU2XV0sW1sxMjA1MjYsMTIwNTI2XSxcIm1hcHBlZFwiLFs5NTddXSxbWzEyMDUyNywxMjA1MjddLFwibWFwcGVkXCIsWzk1OF1dLFtbMTIwNTI4LDEyMDUyOF0sXCJtYXBwZWRcIixbOTU5XV0sW1sxMjA1MjksMTIwNTI5XSxcIm1hcHBlZFwiLFs5NjBdXSxbWzEyMDUzMCwxMjA1MzBdLFwibWFwcGVkXCIsWzk2MV1dLFtbMTIwNTMxLDEyMDUzMl0sXCJtYXBwZWRcIixbOTYzXV0sW1sxMjA1MzMsMTIwNTMzXSxcIm1hcHBlZFwiLFs5NjRdXSxbWzEyMDUzNCwxMjA1MzRdLFwibWFwcGVkXCIsWzk2NV1dLFtbMTIwNTM1LDEyMDUzNV0sXCJtYXBwZWRcIixbOTY2XV0sW1sxMjA1MzYsMTIwNTM2XSxcIm1hcHBlZFwiLFs5NjddXSxbWzEyMDUzNywxMjA1MzddLFwibWFwcGVkXCIsWzk2OF1dLFtbMTIwNTM4LDEyMDUzOF0sXCJtYXBwZWRcIixbOTY5XV0sW1sxMjA1MzksMTIwNTM5XSxcIm1hcHBlZFwiLFs4NzA2XV0sW1sxMjA1NDAsMTIwNTQwXSxcIm1hcHBlZFwiLFs5NDldXSxbWzEyMDU0MSwxMjA1NDFdLFwibWFwcGVkXCIsWzk1Ml1dLFtbMTIwNTQyLDEyMDU0Ml0sXCJtYXBwZWRcIixbOTU0XV0sW1sxMjA1NDMsMTIwNTQzXSxcIm1hcHBlZFwiLFs5NjZdXSxbWzEyMDU0NCwxMjA1NDRdLFwibWFwcGVkXCIsWzk2MV1dLFtbMTIwNTQ1LDEyMDU0NV0sXCJtYXBwZWRcIixbOTYwXV0sW1sxMjA1NDYsMTIwNTQ2XSxcIm1hcHBlZFwiLFs5NDVdXSxbWzEyMDU0NywxMjA1NDddLFwibWFwcGVkXCIsWzk0Nl1dLFtbMTIwNTQ4LDEyMDU0OF0sXCJtYXBwZWRcIixbOTQ3XV0sW1sxMjA1NDksMTIwNTQ5XSxcIm1hcHBlZFwiLFs5NDhdXSxbWzEyMDU1MCwxMjA1NTBdLFwibWFwcGVkXCIsWzk0OV1dLFtbMTIwNTUxLDEyMDU1MV0sXCJtYXBwZWRcIixbOTUwXV0sW1sxMjA1NTIsMTIwNTUyXSxcIm1hcHBlZFwiLFs5NTFdXSxbWzEyMDU1MywxMjA1NTNdLFwibWFwcGVkXCIsWzk1Ml1dLFtbMTIwNTU0LDEyMDU1NF0sXCJtYXBwZWRcIixbOTUzXV0sW1sxMjA1NTUsMTIwNTU1XSxcIm1hcHBlZFwiLFs5NTRdXSxbWzEyMDU1NiwxMjA1NTZdLFwibWFwcGVkXCIsWzk1NV1dLFtbMTIwNTU3LDEyMDU1N10sXCJtYXBwZWRcIixbOTU2XV0sW1sxMjA1NTgsMTIwNTU4XSxcIm1hcHBlZFwiLFs5NTddXSxbWzEyMDU1OSwxMjA1NTldLFwibWFwcGVkXCIsWzk1OF1dLFtbMTIwNTYwLDEyMDU2MF0sXCJtYXBwZWRcIixbOTU5XV0sW1sxMjA1NjEsMTIwNTYxXSxcIm1hcHBlZFwiLFs5NjBdXSxbWzEyMDU2MiwxMjA1NjJdLFwibWFwcGVkXCIsWzk2MV1dLFtbMTIwNTYzLDEyMDU2M10sXCJtYXBwZWRcIixbOTUyXV0sW1sxMjA1NjQsMTIwNTY0XSxcIm1hcHBlZFwiLFs5NjNdXSxbWzEyMDU2NSwxMjA1NjVdLFwibWFwcGVkXCIsWzk2NF1dLFtbMTIwNTY2LDEyMDU2Nl0sXCJtYXBwZWRcIixbOTY1XV0sW1sxMjA1NjcsMTIwNTY3XSxcIm1hcHBlZFwiLFs5NjZdXSxbWzEyMDU2OCwxMjA1NjhdLFwibWFwcGVkXCIsWzk2N11dLFtbMTIwNTY5LDEyMDU2OV0sXCJtYXBwZWRcIixbOTY4XV0sW1sxMjA1NzAsMTIwNTcwXSxcIm1hcHBlZFwiLFs5NjldXSxbWzEyMDU3MSwxMjA1NzFdLFwibWFwcGVkXCIsWzg3MTFdXSxbWzEyMDU3MiwxMjA1NzJdLFwibWFwcGVkXCIsWzk0NV1dLFtbMTIwNTczLDEyMDU3M10sXCJtYXBwZWRcIixbOTQ2XV0sW1sxMjA1NzQsMTIwNTc0XSxcIm1hcHBlZFwiLFs5NDddXSxbWzEyMDU3NSwxMjA1NzVdLFwibWFwcGVkXCIsWzk0OF1dLFtbMTIwNTc2LDEyMDU3Nl0sXCJtYXBwZWRcIixbOTQ5XV0sW1sxMjA1NzcsMTIwNTc3XSxcIm1hcHBlZFwiLFs5NTBdXSxbWzEyMDU3OCwxMjA1NzhdLFwibWFwcGVkXCIsWzk1MV1dLFtbMTIwNTc5LDEyMDU3OV0sXCJtYXBwZWRcIixbOTUyXV0sW1sxMjA1ODAsMTIwNTgwXSxcIm1hcHBlZFwiLFs5NTNdXSxbWzEyMDU4MSwxMjA1ODFdLFwibWFwcGVkXCIsWzk1NF1dLFtbMTIwNTgyLDEyMDU4Ml0sXCJtYXBwZWRcIixbOTU1XV0sW1sxMjA1ODMsMTIwNTgzXSxcIm1hcHBlZFwiLFs5NTZdXSxbWzEyMDU4NCwxMjA1ODRdLFwibWFwcGVkXCIsWzk1N11dLFtbMTIwNTg1LDEyMDU4NV0sXCJtYXBwZWRcIixbOTU4XV0sW1sxMjA1ODYsMTIwNTg2XSxcIm1hcHBlZFwiLFs5NTldXSxbWzEyMDU4NywxMjA1ODddLFwibWFwcGVkXCIsWzk2MF1dLFtbMTIwNTg4LDEyMDU4OF0sXCJtYXBwZWRcIixbOTYxXV0sW1sxMjA1ODksMTIwNTkwXSxcIm1hcHBlZFwiLFs5NjNdXSxbWzEyMDU5MSwxMjA1OTFdLFwibWFwcGVkXCIsWzk2NF1dLFtbMTIwNTkyLDEyMDU5Ml0sXCJtYXBwZWRcIixbOTY1XV0sW1sxMjA1OTMsMTIwNTkzXSxcIm1hcHBlZFwiLFs5NjZdXSxbWzEyMDU5NCwxMjA1OTRdLFwibWFwcGVkXCIsWzk2N11dLFtbMTIwNTk1LDEyMDU5NV0sXCJtYXBwZWRcIixbOTY4XV0sW1sxMjA1OTYsMTIwNTk2XSxcIm1hcHBlZFwiLFs5NjldXSxbWzEyMDU5NywxMjA1OTddLFwibWFwcGVkXCIsWzg3MDZdXSxbWzEyMDU5OCwxMjA1OThdLFwibWFwcGVkXCIsWzk0OV1dLFtbMTIwNTk5LDEyMDU5OV0sXCJtYXBwZWRcIixbOTUyXV0sW1sxMjA2MDAsMTIwNjAwXSxcIm1hcHBlZFwiLFs5NTRdXSxbWzEyMDYwMSwxMjA2MDFdLFwibWFwcGVkXCIsWzk2Nl1dLFtbMTIwNjAyLDEyMDYwMl0sXCJtYXBwZWRcIixbOTYxXV0sW1sxMjA2MDMsMTIwNjAzXSxcIm1hcHBlZFwiLFs5NjBdXSxbWzEyMDYwNCwxMjA2MDRdLFwibWFwcGVkXCIsWzk0NV1dLFtbMTIwNjA1LDEyMDYwNV0sXCJtYXBwZWRcIixbOTQ2XV0sW1sxMjA2MDYsMTIwNjA2XSxcIm1hcHBlZFwiLFs5NDddXSxbWzEyMDYwNywxMjA2MDddLFwibWFwcGVkXCIsWzk0OF1dLFtbMTIwNjA4LDEyMDYwOF0sXCJtYXBwZWRcIixbOTQ5XV0sW1sxMjA2MDksMTIwNjA5XSxcIm1hcHBlZFwiLFs5NTBdXSxbWzEyMDYxMCwxMjA2MTBdLFwibWFwcGVkXCIsWzk1MV1dLFtbMTIwNjExLDEyMDYxMV0sXCJtYXBwZWRcIixbOTUyXV0sW1sxMjA2MTIsMTIwNjEyXSxcIm1hcHBlZFwiLFs5NTNdXSxbWzEyMDYxMywxMjA2MTNdLFwibWFwcGVkXCIsWzk1NF1dLFtbMTIwNjE0LDEyMDYxNF0sXCJtYXBwZWRcIixbOTU1XV0sW1sxMjA2MTUsMTIwNjE1XSxcIm1hcHBlZFwiLFs5NTZdXSxbWzEyMDYxNiwxMjA2MTZdLFwibWFwcGVkXCIsWzk1N11dLFtbMTIwNjE3LDEyMDYxN10sXCJtYXBwZWRcIixbOTU4XV0sW1sxMjA2MTgsMTIwNjE4XSxcIm1hcHBlZFwiLFs5NTldXSxbWzEyMDYxOSwxMjA2MTldLFwibWFwcGVkXCIsWzk2MF1dLFtbMTIwNjIwLDEyMDYyMF0sXCJtYXBwZWRcIixbOTYxXV0sW1sxMjA2MjEsMTIwNjIxXSxcIm1hcHBlZFwiLFs5NTJdXSxbWzEyMDYyMiwxMjA2MjJdLFwibWFwcGVkXCIsWzk2M11dLFtbMTIwNjIzLDEyMDYyM10sXCJtYXBwZWRcIixbOTY0XV0sW1sxMjA2MjQsMTIwNjI0XSxcIm1hcHBlZFwiLFs5NjVdXSxbWzEyMDYyNSwxMjA2MjVdLFwibWFwcGVkXCIsWzk2Nl1dLFtbMTIwNjI2LDEyMDYyNl0sXCJtYXBwZWRcIixbOTY3XV0sW1sxMjA2MjcsMTIwNjI3XSxcIm1hcHBlZFwiLFs5NjhdXSxbWzEyMDYyOCwxMjA2MjhdLFwibWFwcGVkXCIsWzk2OV1dLFtbMTIwNjI5LDEyMDYyOV0sXCJtYXBwZWRcIixbODcxMV1dLFtbMTIwNjMwLDEyMDYzMF0sXCJtYXBwZWRcIixbOTQ1XV0sW1sxMjA2MzEsMTIwNjMxXSxcIm1hcHBlZFwiLFs5NDZdXSxbWzEyMDYzMiwxMjA2MzJdLFwibWFwcGVkXCIsWzk0N11dLFtbMTIwNjMzLDEyMDYzM10sXCJtYXBwZWRcIixbOTQ4XV0sW1sxMjA2MzQsMTIwNjM0XSxcIm1hcHBlZFwiLFs5NDldXSxbWzEyMDYzNSwxMjA2MzVdLFwibWFwcGVkXCIsWzk1MF1dLFtbMTIwNjM2LDEyMDYzNl0sXCJtYXBwZWRcIixbOTUxXV0sW1sxMjA2MzcsMTIwNjM3XSxcIm1hcHBlZFwiLFs5NTJdXSxbWzEyMDYzOCwxMjA2MzhdLFwibWFwcGVkXCIsWzk1M11dLFtbMTIwNjM5LDEyMDYzOV0sXCJtYXBwZWRcIixbOTU0XV0sW1sxMjA2NDAsMTIwNjQwXSxcIm1hcHBlZFwiLFs5NTVdXSxbWzEyMDY0MSwxMjA2NDFdLFwibWFwcGVkXCIsWzk1Nl1dLFtbMTIwNjQyLDEyMDY0Ml0sXCJtYXBwZWRcIixbOTU3XV0sW1sxMjA2NDMsMTIwNjQzXSxcIm1hcHBlZFwiLFs5NThdXSxbWzEyMDY0NCwxMjA2NDRdLFwibWFwcGVkXCIsWzk1OV1dLFtbMTIwNjQ1LDEyMDY0NV0sXCJtYXBwZWRcIixbOTYwXV0sW1sxMjA2NDYsMTIwNjQ2XSxcIm1hcHBlZFwiLFs5NjFdXSxbWzEyMDY0NywxMjA2NDhdLFwibWFwcGVkXCIsWzk2M11dLFtbMTIwNjQ5LDEyMDY0OV0sXCJtYXBwZWRcIixbOTY0XV0sW1sxMjA2NTAsMTIwNjUwXSxcIm1hcHBlZFwiLFs5NjVdXSxbWzEyMDY1MSwxMjA2NTFdLFwibWFwcGVkXCIsWzk2Nl1dLFtbMTIwNjUyLDEyMDY1Ml0sXCJtYXBwZWRcIixbOTY3XV0sW1sxMjA2NTMsMTIwNjUzXSxcIm1hcHBlZFwiLFs5NjhdXSxbWzEyMDY1NCwxMjA2NTRdLFwibWFwcGVkXCIsWzk2OV1dLFtbMTIwNjU1LDEyMDY1NV0sXCJtYXBwZWRcIixbODcwNl1dLFtbMTIwNjU2LDEyMDY1Nl0sXCJtYXBwZWRcIixbOTQ5XV0sW1sxMjA2NTcsMTIwNjU3XSxcIm1hcHBlZFwiLFs5NTJdXSxbWzEyMDY1OCwxMjA2NThdLFwibWFwcGVkXCIsWzk1NF1dLFtbMTIwNjU5LDEyMDY1OV0sXCJtYXBwZWRcIixbOTY2XV0sW1sxMjA2NjAsMTIwNjYwXSxcIm1hcHBlZFwiLFs5NjFdXSxbWzEyMDY2MSwxMjA2NjFdLFwibWFwcGVkXCIsWzk2MF1dLFtbMTIwNjYyLDEyMDY2Ml0sXCJtYXBwZWRcIixbOTQ1XV0sW1sxMjA2NjMsMTIwNjYzXSxcIm1hcHBlZFwiLFs5NDZdXSxbWzEyMDY2NCwxMjA2NjRdLFwibWFwcGVkXCIsWzk0N11dLFtbMTIwNjY1LDEyMDY2NV0sXCJtYXBwZWRcIixbOTQ4XV0sW1sxMjA2NjYsMTIwNjY2XSxcIm1hcHBlZFwiLFs5NDldXSxbWzEyMDY2NywxMjA2NjddLFwibWFwcGVkXCIsWzk1MF1dLFtbMTIwNjY4LDEyMDY2OF0sXCJtYXBwZWRcIixbOTUxXV0sW1sxMjA2NjksMTIwNjY5XSxcIm1hcHBlZFwiLFs5NTJdXSxbWzEyMDY3MCwxMjA2NzBdLFwibWFwcGVkXCIsWzk1M11dLFtbMTIwNjcxLDEyMDY3MV0sXCJtYXBwZWRcIixbOTU0XV0sW1sxMjA2NzIsMTIwNjcyXSxcIm1hcHBlZFwiLFs5NTVdXSxbWzEyMDY3MywxMjA2NzNdLFwibWFwcGVkXCIsWzk1Nl1dLFtbMTIwNjc0LDEyMDY3NF0sXCJtYXBwZWRcIixbOTU3XV0sW1sxMjA2NzUsMTIwNjc1XSxcIm1hcHBlZFwiLFs5NThdXSxbWzEyMDY3NiwxMjA2NzZdLFwibWFwcGVkXCIsWzk1OV1dLFtbMTIwNjc3LDEyMDY3N10sXCJtYXBwZWRcIixbOTYwXV0sW1sxMjA2NzgsMTIwNjc4XSxcIm1hcHBlZFwiLFs5NjFdXSxbWzEyMDY3OSwxMjA2NzldLFwibWFwcGVkXCIsWzk1Ml1dLFtbMTIwNjgwLDEyMDY4MF0sXCJtYXBwZWRcIixbOTYzXV0sW1sxMjA2ODEsMTIwNjgxXSxcIm1hcHBlZFwiLFs5NjRdXSxbWzEyMDY4MiwxMjA2ODJdLFwibWFwcGVkXCIsWzk2NV1dLFtbMTIwNjgzLDEyMDY4M10sXCJtYXBwZWRcIixbOTY2XV0sW1sxMjA2ODQsMTIwNjg0XSxcIm1hcHBlZFwiLFs5NjddXSxbWzEyMDY4NSwxMjA2ODVdLFwibWFwcGVkXCIsWzk2OF1dLFtbMTIwNjg2LDEyMDY4Nl0sXCJtYXBwZWRcIixbOTY5XV0sW1sxMjA2ODcsMTIwNjg3XSxcIm1hcHBlZFwiLFs4NzExXV0sW1sxMjA2ODgsMTIwNjg4XSxcIm1hcHBlZFwiLFs5NDVdXSxbWzEyMDY4OSwxMjA2ODldLFwibWFwcGVkXCIsWzk0Nl1dLFtbMTIwNjkwLDEyMDY5MF0sXCJtYXBwZWRcIixbOTQ3XV0sW1sxMjA2OTEsMTIwNjkxXSxcIm1hcHBlZFwiLFs5NDhdXSxbWzEyMDY5MiwxMjA2OTJdLFwibWFwcGVkXCIsWzk0OV1dLFtbMTIwNjkzLDEyMDY5M10sXCJtYXBwZWRcIixbOTUwXV0sW1sxMjA2OTQsMTIwNjk0XSxcIm1hcHBlZFwiLFs5NTFdXSxbWzEyMDY5NSwxMjA2OTVdLFwibWFwcGVkXCIsWzk1Ml1dLFtbMTIwNjk2LDEyMDY5Nl0sXCJtYXBwZWRcIixbOTUzXV0sW1sxMjA2OTcsMTIwNjk3XSxcIm1hcHBlZFwiLFs5NTRdXSxbWzEyMDY5OCwxMjA2OThdLFwibWFwcGVkXCIsWzk1NV1dLFtbMTIwNjk5LDEyMDY5OV0sXCJtYXBwZWRcIixbOTU2XV0sW1sxMjA3MDAsMTIwNzAwXSxcIm1hcHBlZFwiLFs5NTddXSxbWzEyMDcwMSwxMjA3MDFdLFwibWFwcGVkXCIsWzk1OF1dLFtbMTIwNzAyLDEyMDcwMl0sXCJtYXBwZWRcIixbOTU5XV0sW1sxMjA3MDMsMTIwNzAzXSxcIm1hcHBlZFwiLFs5NjBdXSxbWzEyMDcwNCwxMjA3MDRdLFwibWFwcGVkXCIsWzk2MV1dLFtbMTIwNzA1LDEyMDcwNl0sXCJtYXBwZWRcIixbOTYzXV0sW1sxMjA3MDcsMTIwNzA3XSxcIm1hcHBlZFwiLFs5NjRdXSxbWzEyMDcwOCwxMjA3MDhdLFwibWFwcGVkXCIsWzk2NV1dLFtbMTIwNzA5LDEyMDcwOV0sXCJtYXBwZWRcIixbOTY2XV0sW1sxMjA3MTAsMTIwNzEwXSxcIm1hcHBlZFwiLFs5NjddXSxbWzEyMDcxMSwxMjA3MTFdLFwibWFwcGVkXCIsWzk2OF1dLFtbMTIwNzEyLDEyMDcxMl0sXCJtYXBwZWRcIixbOTY5XV0sW1sxMjA3MTMsMTIwNzEzXSxcIm1hcHBlZFwiLFs4NzA2XV0sW1sxMjA3MTQsMTIwNzE0XSxcIm1hcHBlZFwiLFs5NDldXSxbWzEyMDcxNSwxMjA3MTVdLFwibWFwcGVkXCIsWzk1Ml1dLFtbMTIwNzE2LDEyMDcxNl0sXCJtYXBwZWRcIixbOTU0XV0sW1sxMjA3MTcsMTIwNzE3XSxcIm1hcHBlZFwiLFs5NjZdXSxbWzEyMDcxOCwxMjA3MThdLFwibWFwcGVkXCIsWzk2MV1dLFtbMTIwNzE5LDEyMDcxOV0sXCJtYXBwZWRcIixbOTYwXV0sW1sxMjA3MjAsMTIwNzIwXSxcIm1hcHBlZFwiLFs5NDVdXSxbWzEyMDcyMSwxMjA3MjFdLFwibWFwcGVkXCIsWzk0Nl1dLFtbMTIwNzIyLDEyMDcyMl0sXCJtYXBwZWRcIixbOTQ3XV0sW1sxMjA3MjMsMTIwNzIzXSxcIm1hcHBlZFwiLFs5NDhdXSxbWzEyMDcyNCwxMjA3MjRdLFwibWFwcGVkXCIsWzk0OV1dLFtbMTIwNzI1LDEyMDcyNV0sXCJtYXBwZWRcIixbOTUwXV0sW1sxMjA3MjYsMTIwNzI2XSxcIm1hcHBlZFwiLFs5NTFdXSxbWzEyMDcyNywxMjA3MjddLFwibWFwcGVkXCIsWzk1Ml1dLFtbMTIwNzI4LDEyMDcyOF0sXCJtYXBwZWRcIixbOTUzXV0sW1sxMjA3MjksMTIwNzI5XSxcIm1hcHBlZFwiLFs5NTRdXSxbWzEyMDczMCwxMjA3MzBdLFwibWFwcGVkXCIsWzk1NV1dLFtbMTIwNzMxLDEyMDczMV0sXCJtYXBwZWRcIixbOTU2XV0sW1sxMjA3MzIsMTIwNzMyXSxcIm1hcHBlZFwiLFs5NTddXSxbWzEyMDczMywxMjA3MzNdLFwibWFwcGVkXCIsWzk1OF1dLFtbMTIwNzM0LDEyMDczNF0sXCJtYXBwZWRcIixbOTU5XV0sW1sxMjA3MzUsMTIwNzM1XSxcIm1hcHBlZFwiLFs5NjBdXSxbWzEyMDczNiwxMjA3MzZdLFwibWFwcGVkXCIsWzk2MV1dLFtbMTIwNzM3LDEyMDczN10sXCJtYXBwZWRcIixbOTUyXV0sW1sxMjA3MzgsMTIwNzM4XSxcIm1hcHBlZFwiLFs5NjNdXSxbWzEyMDczOSwxMjA3MzldLFwibWFwcGVkXCIsWzk2NF1dLFtbMTIwNzQwLDEyMDc0MF0sXCJtYXBwZWRcIixbOTY1XV0sW1sxMjA3NDEsMTIwNzQxXSxcIm1hcHBlZFwiLFs5NjZdXSxbWzEyMDc0MiwxMjA3NDJdLFwibWFwcGVkXCIsWzk2N11dLFtbMTIwNzQzLDEyMDc0M10sXCJtYXBwZWRcIixbOTY4XV0sW1sxMjA3NDQsMTIwNzQ0XSxcIm1hcHBlZFwiLFs5NjldXSxbWzEyMDc0NSwxMjA3NDVdLFwibWFwcGVkXCIsWzg3MTFdXSxbWzEyMDc0NiwxMjA3NDZdLFwibWFwcGVkXCIsWzk0NV1dLFtbMTIwNzQ3LDEyMDc0N10sXCJtYXBwZWRcIixbOTQ2XV0sW1sxMjA3NDgsMTIwNzQ4XSxcIm1hcHBlZFwiLFs5NDddXSxbWzEyMDc0OSwxMjA3NDldLFwibWFwcGVkXCIsWzk0OF1dLFtbMTIwNzUwLDEyMDc1MF0sXCJtYXBwZWRcIixbOTQ5XV0sW1sxMjA3NTEsMTIwNzUxXSxcIm1hcHBlZFwiLFs5NTBdXSxbWzEyMDc1MiwxMjA3NTJdLFwibWFwcGVkXCIsWzk1MV1dLFtbMTIwNzUzLDEyMDc1M10sXCJtYXBwZWRcIixbOTUyXV0sW1sxMjA3NTQsMTIwNzU0XSxcIm1hcHBlZFwiLFs5NTNdXSxbWzEyMDc1NSwxMjA3NTVdLFwibWFwcGVkXCIsWzk1NF1dLFtbMTIwNzU2LDEyMDc1Nl0sXCJtYXBwZWRcIixbOTU1XV0sW1sxMjA3NTcsMTIwNzU3XSxcIm1hcHBlZFwiLFs5NTZdXSxbWzEyMDc1OCwxMjA3NThdLFwibWFwcGVkXCIsWzk1N11dLFtbMTIwNzU5LDEyMDc1OV0sXCJtYXBwZWRcIixbOTU4XV0sW1sxMjA3NjAsMTIwNzYwXSxcIm1hcHBlZFwiLFs5NTldXSxbWzEyMDc2MSwxMjA3NjFdLFwibWFwcGVkXCIsWzk2MF1dLFtbMTIwNzYyLDEyMDc2Ml0sXCJtYXBwZWRcIixbOTYxXV0sW1sxMjA3NjMsMTIwNzY0XSxcIm1hcHBlZFwiLFs5NjNdXSxbWzEyMDc2NSwxMjA3NjVdLFwibWFwcGVkXCIsWzk2NF1dLFtbMTIwNzY2LDEyMDc2Nl0sXCJtYXBwZWRcIixbOTY1XV0sW1sxMjA3NjcsMTIwNzY3XSxcIm1hcHBlZFwiLFs5NjZdXSxbWzEyMDc2OCwxMjA3NjhdLFwibWFwcGVkXCIsWzk2N11dLFtbMTIwNzY5LDEyMDc2OV0sXCJtYXBwZWRcIixbOTY4XV0sW1sxMjA3NzAsMTIwNzcwXSxcIm1hcHBlZFwiLFs5NjldXSxbWzEyMDc3MSwxMjA3NzFdLFwibWFwcGVkXCIsWzg3MDZdXSxbWzEyMDc3MiwxMjA3NzJdLFwibWFwcGVkXCIsWzk0OV1dLFtbMTIwNzczLDEyMDc3M10sXCJtYXBwZWRcIixbOTUyXV0sW1sxMjA3NzQsMTIwNzc0XSxcIm1hcHBlZFwiLFs5NTRdXSxbWzEyMDc3NSwxMjA3NzVdLFwibWFwcGVkXCIsWzk2Nl1dLFtbMTIwNzc2LDEyMDc3Nl0sXCJtYXBwZWRcIixbOTYxXV0sW1sxMjA3NzcsMTIwNzc3XSxcIm1hcHBlZFwiLFs5NjBdXSxbWzEyMDc3OCwxMjA3NzldLFwibWFwcGVkXCIsWzk4OV1dLFtbMTIwNzgwLDEyMDc4MV0sXCJkaXNhbGxvd2VkXCJdLFtbMTIwNzgyLDEyMDc4Ml0sXCJtYXBwZWRcIixbNDhdXSxbWzEyMDc4MywxMjA3ODNdLFwibWFwcGVkXCIsWzQ5XV0sW1sxMjA3ODQsMTIwNzg0XSxcIm1hcHBlZFwiLFs1MF1dLFtbMTIwNzg1LDEyMDc4NV0sXCJtYXBwZWRcIixbNTFdXSxbWzEyMDc4NiwxMjA3ODZdLFwibWFwcGVkXCIsWzUyXV0sW1sxMjA3ODcsMTIwNzg3XSxcIm1hcHBlZFwiLFs1M11dLFtbMTIwNzg4LDEyMDc4OF0sXCJtYXBwZWRcIixbNTRdXSxbWzEyMDc4OSwxMjA3ODldLFwibWFwcGVkXCIsWzU1XV0sW1sxMjA3OTAsMTIwNzkwXSxcIm1hcHBlZFwiLFs1Nl1dLFtbMTIwNzkxLDEyMDc5MV0sXCJtYXBwZWRcIixbNTddXSxbWzEyMDc5MiwxMjA3OTJdLFwibWFwcGVkXCIsWzQ4XV0sW1sxMjA3OTMsMTIwNzkzXSxcIm1hcHBlZFwiLFs0OV1dLFtbMTIwNzk0LDEyMDc5NF0sXCJtYXBwZWRcIixbNTBdXSxbWzEyMDc5NSwxMjA3OTVdLFwibWFwcGVkXCIsWzUxXV0sW1sxMjA3OTYsMTIwNzk2XSxcIm1hcHBlZFwiLFs1Ml1dLFtbMTIwNzk3LDEyMDc5N10sXCJtYXBwZWRcIixbNTNdXSxbWzEyMDc5OCwxMjA3OThdLFwibWFwcGVkXCIsWzU0XV0sW1sxMjA3OTksMTIwNzk5XSxcIm1hcHBlZFwiLFs1NV1dLFtbMTIwODAwLDEyMDgwMF0sXCJtYXBwZWRcIixbNTZdXSxbWzEyMDgwMSwxMjA4MDFdLFwibWFwcGVkXCIsWzU3XV0sW1sxMjA4MDIsMTIwODAyXSxcIm1hcHBlZFwiLFs0OF1dLFtbMTIwODAzLDEyMDgwM10sXCJtYXBwZWRcIixbNDldXSxbWzEyMDgwNCwxMjA4MDRdLFwibWFwcGVkXCIsWzUwXV0sW1sxMjA4MDUsMTIwODA1XSxcIm1hcHBlZFwiLFs1MV1dLFtbMTIwODA2LDEyMDgwNl0sXCJtYXBwZWRcIixbNTJdXSxbWzEyMDgwNywxMjA4MDddLFwibWFwcGVkXCIsWzUzXV0sW1sxMjA4MDgsMTIwODA4XSxcIm1hcHBlZFwiLFs1NF1dLFtbMTIwODA5LDEyMDgwOV0sXCJtYXBwZWRcIixbNTVdXSxbWzEyMDgxMCwxMjA4MTBdLFwibWFwcGVkXCIsWzU2XV0sW1sxMjA4MTEsMTIwODExXSxcIm1hcHBlZFwiLFs1N11dLFtbMTIwODEyLDEyMDgxMl0sXCJtYXBwZWRcIixbNDhdXSxbWzEyMDgxMywxMjA4MTNdLFwibWFwcGVkXCIsWzQ5XV0sW1sxMjA4MTQsMTIwODE0XSxcIm1hcHBlZFwiLFs1MF1dLFtbMTIwODE1LDEyMDgxNV0sXCJtYXBwZWRcIixbNTFdXSxbWzEyMDgxNiwxMjA4MTZdLFwibWFwcGVkXCIsWzUyXV0sW1sxMjA4MTcsMTIwODE3XSxcIm1hcHBlZFwiLFs1M11dLFtbMTIwODE4LDEyMDgxOF0sXCJtYXBwZWRcIixbNTRdXSxbWzEyMDgxOSwxMjA4MTldLFwibWFwcGVkXCIsWzU1XV0sW1sxMjA4MjAsMTIwODIwXSxcIm1hcHBlZFwiLFs1Nl1dLFtbMTIwODIxLDEyMDgyMV0sXCJtYXBwZWRcIixbNTddXSxbWzEyMDgyMiwxMjA4MjJdLFwibWFwcGVkXCIsWzQ4XV0sW1sxMjA4MjMsMTIwODIzXSxcIm1hcHBlZFwiLFs0OV1dLFtbMTIwODI0LDEyMDgyNF0sXCJtYXBwZWRcIixbNTBdXSxbWzEyMDgyNSwxMjA4MjVdLFwibWFwcGVkXCIsWzUxXV0sW1sxMjA4MjYsMTIwODI2XSxcIm1hcHBlZFwiLFs1Ml1dLFtbMTIwODI3LDEyMDgyN10sXCJtYXBwZWRcIixbNTNdXSxbWzEyMDgyOCwxMjA4MjhdLFwibWFwcGVkXCIsWzU0XV0sW1sxMjA4MjksMTIwODI5XSxcIm1hcHBlZFwiLFs1NV1dLFtbMTIwODMwLDEyMDgzMF0sXCJtYXBwZWRcIixbNTZdXSxbWzEyMDgzMSwxMjA4MzFdLFwibWFwcGVkXCIsWzU3XV0sW1sxMjA4MzIsMTIxMzQzXSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMjEzNDQsMTIxMzk4XSxcInZhbGlkXCJdLFtbMTIxMzk5LDEyMTQwMl0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTIxNDAzLDEyMTQ1Ml0sXCJ2YWxpZFwiXSxbWzEyMTQ1MywxMjE0NjBdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyMTQ2MSwxMjE0NjFdLFwidmFsaWRcIl0sW1sxMjE0NjIsMTIxNDc1XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMjE0NzYsMTIxNDc2XSxcInZhbGlkXCJdLFtbMTIxNDc3LDEyMTQ4M10sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTIxNDg0LDEyMTQ5OF0sXCJkaXNhbGxvd2VkXCJdLFtbMTIxNDk5LDEyMTUwM10sXCJ2YWxpZFwiXSxbWzEyMTUwNCwxMjE1MDRdLFwiZGlzYWxsb3dlZFwiXSxbWzEyMTUwNSwxMjE1MTldLFwidmFsaWRcIl0sW1sxMjE1MjAsMTI0OTI3XSxcImRpc2FsbG93ZWRcIl0sW1sxMjQ5MjgsMTI1MTI0XSxcInZhbGlkXCJdLFtbMTI1MTI1LDEyNTEyNl0sXCJkaXNhbGxvd2VkXCJdLFtbMTI1MTI3LDEyNTEzNV0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTI1MTM2LDEyNTE0Ml0sXCJ2YWxpZFwiXSxbWzEyNTE0MywxMjY0NjNdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjQ2NCwxMjY0NjRdLFwibWFwcGVkXCIsWzE1NzVdXSxbWzEyNjQ2NSwxMjY0NjVdLFwibWFwcGVkXCIsWzE1NzZdXSxbWzEyNjQ2NiwxMjY0NjZdLFwibWFwcGVkXCIsWzE1ODBdXSxbWzEyNjQ2NywxMjY0NjddLFwibWFwcGVkXCIsWzE1ODNdXSxbWzEyNjQ2OCwxMjY0NjhdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjQ2OSwxMjY0NjldLFwibWFwcGVkXCIsWzE2MDhdXSxbWzEyNjQ3MCwxMjY0NzBdLFwibWFwcGVkXCIsWzE1ODZdXSxbWzEyNjQ3MSwxMjY0NzFdLFwibWFwcGVkXCIsWzE1ODFdXSxbWzEyNjQ3MiwxMjY0NzJdLFwibWFwcGVkXCIsWzE1OTFdXSxbWzEyNjQ3MywxMjY0NzNdLFwibWFwcGVkXCIsWzE2MTBdXSxbWzEyNjQ3NCwxMjY0NzRdLFwibWFwcGVkXCIsWzE2MDNdXSxbWzEyNjQ3NSwxMjY0NzVdLFwibWFwcGVkXCIsWzE2MDRdXSxbWzEyNjQ3NiwxMjY0NzZdLFwibWFwcGVkXCIsWzE2MDVdXSxbWzEyNjQ3NywxMjY0NzddLFwibWFwcGVkXCIsWzE2MDZdXSxbWzEyNjQ3OCwxMjY0NzhdLFwibWFwcGVkXCIsWzE1ODddXSxbWzEyNjQ3OSwxMjY0NzldLFwibWFwcGVkXCIsWzE1OTNdXSxbWzEyNjQ4MCwxMjY0ODBdLFwibWFwcGVkXCIsWzE2MDFdXSxbWzEyNjQ4MSwxMjY0ODFdLFwibWFwcGVkXCIsWzE1ODldXSxbWzEyNjQ4MiwxMjY0ODJdLFwibWFwcGVkXCIsWzE2MDJdXSxbWzEyNjQ4MywxMjY0ODNdLFwibWFwcGVkXCIsWzE1ODVdXSxbWzEyNjQ4NCwxMjY0ODRdLFwibWFwcGVkXCIsWzE1ODhdXSxbWzEyNjQ4NSwxMjY0ODVdLFwibWFwcGVkXCIsWzE1NzhdXSxbWzEyNjQ4NiwxMjY0ODZdLFwibWFwcGVkXCIsWzE1NzldXSxbWzEyNjQ4NywxMjY0ODddLFwibWFwcGVkXCIsWzE1ODJdXSxbWzEyNjQ4OCwxMjY0ODhdLFwibWFwcGVkXCIsWzE1ODRdXSxbWzEyNjQ4OSwxMjY0ODldLFwibWFwcGVkXCIsWzE1OTBdXSxbWzEyNjQ5MCwxMjY0OTBdLFwibWFwcGVkXCIsWzE1OTJdXSxbWzEyNjQ5MSwxMjY0OTFdLFwibWFwcGVkXCIsWzE1OTRdXSxbWzEyNjQ5MiwxMjY0OTJdLFwibWFwcGVkXCIsWzE2NDZdXSxbWzEyNjQ5MywxMjY0OTNdLFwibWFwcGVkXCIsWzE3MjJdXSxbWzEyNjQ5NCwxMjY0OTRdLFwibWFwcGVkXCIsWzE2OTddXSxbWzEyNjQ5NSwxMjY0OTVdLFwibWFwcGVkXCIsWzE2NDddXSxbWzEyNjQ5NiwxMjY0OTZdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjQ5NywxMjY0OTddLFwibWFwcGVkXCIsWzE1NzZdXSxbWzEyNjQ5OCwxMjY0OThdLFwibWFwcGVkXCIsWzE1ODBdXSxbWzEyNjQ5OSwxMjY0OTldLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjUwMCwxMjY1MDBdLFwibWFwcGVkXCIsWzE2MDddXSxbWzEyNjUwMSwxMjY1MDJdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjUwMywxMjY1MDNdLFwibWFwcGVkXCIsWzE1ODFdXSxbWzEyNjUwNCwxMjY1MDRdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjUwNSwxMjY1MDVdLFwibWFwcGVkXCIsWzE2MTBdXSxbWzEyNjUwNiwxMjY1MDZdLFwibWFwcGVkXCIsWzE2MDNdXSxbWzEyNjUwNywxMjY1MDddLFwibWFwcGVkXCIsWzE2MDRdXSxbWzEyNjUwOCwxMjY1MDhdLFwibWFwcGVkXCIsWzE2MDVdXSxbWzEyNjUwOSwxMjY1MDldLFwibWFwcGVkXCIsWzE2MDZdXSxbWzEyNjUxMCwxMjY1MTBdLFwibWFwcGVkXCIsWzE1ODddXSxbWzEyNjUxMSwxMjY1MTFdLFwibWFwcGVkXCIsWzE1OTNdXSxbWzEyNjUxMiwxMjY1MTJdLFwibWFwcGVkXCIsWzE2MDFdXSxbWzEyNjUxMywxMjY1MTNdLFwibWFwcGVkXCIsWzE1ODldXSxbWzEyNjUxNCwxMjY1MTRdLFwibWFwcGVkXCIsWzE2MDJdXSxbWzEyNjUxNSwxMjY1MTVdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjUxNiwxMjY1MTZdLFwibWFwcGVkXCIsWzE1ODhdXSxbWzEyNjUxNywxMjY1MTddLFwibWFwcGVkXCIsWzE1NzhdXSxbWzEyNjUxOCwxMjY1MThdLFwibWFwcGVkXCIsWzE1NzldXSxbWzEyNjUxOSwxMjY1MTldLFwibWFwcGVkXCIsWzE1ODJdXSxbWzEyNjUyMCwxMjY1MjBdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjUyMSwxMjY1MjFdLFwibWFwcGVkXCIsWzE1OTBdXSxbWzEyNjUyMiwxMjY1MjJdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjUyMywxMjY1MjNdLFwibWFwcGVkXCIsWzE1OTRdXSxbWzEyNjUyNCwxMjY1MjldLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjUzMCwxMjY1MzBdLFwibWFwcGVkXCIsWzE1ODBdXSxbWzEyNjUzMSwxMjY1MzRdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjUzNSwxMjY1MzVdLFwibWFwcGVkXCIsWzE1ODFdXSxbWzEyNjUzNiwxMjY1MzZdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjUzNywxMjY1MzddLFwibWFwcGVkXCIsWzE2MTBdXSxbWzEyNjUzOCwxMjY1MzhdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjUzOSwxMjY1MzldLFwibWFwcGVkXCIsWzE2MDRdXSxbWzEyNjU0MCwxMjY1NDBdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjU0MSwxMjY1NDFdLFwibWFwcGVkXCIsWzE2MDZdXSxbWzEyNjU0MiwxMjY1NDJdLFwibWFwcGVkXCIsWzE1ODddXSxbWzEyNjU0MywxMjY1NDNdLFwibWFwcGVkXCIsWzE1OTNdXSxbWzEyNjU0NCwxMjY1NDRdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjU0NSwxMjY1NDVdLFwibWFwcGVkXCIsWzE1ODldXSxbWzEyNjU0NiwxMjY1NDZdLFwibWFwcGVkXCIsWzE2MDJdXSxbWzEyNjU0NywxMjY1NDddLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjU0OCwxMjY1NDhdLFwibWFwcGVkXCIsWzE1ODhdXSxbWzEyNjU0OSwxMjY1NTBdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjU1MSwxMjY1NTFdLFwibWFwcGVkXCIsWzE1ODJdXSxbWzEyNjU1MiwxMjY1NTJdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjU1MywxMjY1NTNdLFwibWFwcGVkXCIsWzE1OTBdXSxbWzEyNjU1NCwxMjY1NTRdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjU1NSwxMjY1NTVdLFwibWFwcGVkXCIsWzE1OTRdXSxbWzEyNjU1NiwxMjY1NTZdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjU1NywxMjY1NTddLFwibWFwcGVkXCIsWzE3MjJdXSxbWzEyNjU1OCwxMjY1NThdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjU1OSwxMjY1NTldLFwibWFwcGVkXCIsWzE2NDddXSxbWzEyNjU2MCwxMjY1NjBdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjU2MSwxMjY1NjFdLFwibWFwcGVkXCIsWzE1NzZdXSxbWzEyNjU2MiwxMjY1NjJdLFwibWFwcGVkXCIsWzE1ODBdXSxbWzEyNjU2MywxMjY1NjNdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjU2NCwxMjY1NjRdLFwibWFwcGVkXCIsWzE2MDddXSxbWzEyNjU2NSwxMjY1NjZdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjU2NywxMjY1NjddLFwibWFwcGVkXCIsWzE1ODFdXSxbWzEyNjU2OCwxMjY1NjhdLFwibWFwcGVkXCIsWzE1OTFdXSxbWzEyNjU2OSwxMjY1NjldLFwibWFwcGVkXCIsWzE2MTBdXSxbWzEyNjU3MCwxMjY1NzBdLFwibWFwcGVkXCIsWzE2MDNdXSxbWzEyNjU3MSwxMjY1NzFdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjU3MiwxMjY1NzJdLFwibWFwcGVkXCIsWzE2MDVdXSxbWzEyNjU3MywxMjY1NzNdLFwibWFwcGVkXCIsWzE2MDZdXSxbWzEyNjU3NCwxMjY1NzRdLFwibWFwcGVkXCIsWzE1ODddXSxbWzEyNjU3NSwxMjY1NzVdLFwibWFwcGVkXCIsWzE1OTNdXSxbWzEyNjU3NiwxMjY1NzZdLFwibWFwcGVkXCIsWzE2MDFdXSxbWzEyNjU3NywxMjY1NzddLFwibWFwcGVkXCIsWzE1ODldXSxbWzEyNjU3OCwxMjY1NzhdLFwibWFwcGVkXCIsWzE2MDJdXSxbWzEyNjU3OSwxMjY1NzldLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjU4MCwxMjY1ODBdLFwibWFwcGVkXCIsWzE1ODhdXSxbWzEyNjU4MSwxMjY1ODFdLFwibWFwcGVkXCIsWzE1NzhdXSxbWzEyNjU4MiwxMjY1ODJdLFwibWFwcGVkXCIsWzE1NzldXSxbWzEyNjU4MywxMjY1ODNdLFwibWFwcGVkXCIsWzE1ODJdXSxbWzEyNjU4NCwxMjY1ODRdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjU4NSwxMjY1ODVdLFwibWFwcGVkXCIsWzE1OTBdXSxbWzEyNjU4NiwxMjY1ODZdLFwibWFwcGVkXCIsWzE1OTJdXSxbWzEyNjU4NywxMjY1ODddLFwibWFwcGVkXCIsWzE1OTRdXSxbWzEyNjU4OCwxMjY1ODhdLFwibWFwcGVkXCIsWzE2NDZdXSxbWzEyNjU4OSwxMjY1ODldLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjU5MCwxMjY1OTBdLFwibWFwcGVkXCIsWzE2OTddXSxbWzEyNjU5MSwxMjY1OTFdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjU5MiwxMjY1OTJdLFwibWFwcGVkXCIsWzE1NzVdXSxbWzEyNjU5MywxMjY1OTNdLFwibWFwcGVkXCIsWzE1NzZdXSxbWzEyNjU5NCwxMjY1OTRdLFwibWFwcGVkXCIsWzE1ODBdXSxbWzEyNjU5NSwxMjY1OTVdLFwibWFwcGVkXCIsWzE1ODNdXSxbWzEyNjU5NiwxMjY1OTZdLFwibWFwcGVkXCIsWzE2MDddXSxbWzEyNjU5NywxMjY1OTddLFwibWFwcGVkXCIsWzE2MDhdXSxbWzEyNjU5OCwxMjY1OThdLFwibWFwcGVkXCIsWzE1ODZdXSxbWzEyNjU5OSwxMjY1OTldLFwibWFwcGVkXCIsWzE1ODFdXSxbWzEyNjYwMCwxMjY2MDBdLFwibWFwcGVkXCIsWzE1OTFdXSxbWzEyNjYwMSwxMjY2MDFdLFwibWFwcGVkXCIsWzE2MTBdXSxbWzEyNjYwMiwxMjY2MDJdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjYwMywxMjY2MDNdLFwibWFwcGVkXCIsWzE2MDRdXSxbWzEyNjYwNCwxMjY2MDRdLFwibWFwcGVkXCIsWzE2MDVdXSxbWzEyNjYwNSwxMjY2MDVdLFwibWFwcGVkXCIsWzE2MDZdXSxbWzEyNjYwNiwxMjY2MDZdLFwibWFwcGVkXCIsWzE1ODddXSxbWzEyNjYwNywxMjY2MDddLFwibWFwcGVkXCIsWzE1OTNdXSxbWzEyNjYwOCwxMjY2MDhdLFwibWFwcGVkXCIsWzE2MDFdXSxbWzEyNjYwOSwxMjY2MDldLFwibWFwcGVkXCIsWzE1ODldXSxbWzEyNjYxMCwxMjY2MTBdLFwibWFwcGVkXCIsWzE2MDJdXSxbWzEyNjYxMSwxMjY2MTFdLFwibWFwcGVkXCIsWzE1ODVdXSxbWzEyNjYxMiwxMjY2MTJdLFwibWFwcGVkXCIsWzE1ODhdXSxbWzEyNjYxMywxMjY2MTNdLFwibWFwcGVkXCIsWzE1NzhdXSxbWzEyNjYxNCwxMjY2MTRdLFwibWFwcGVkXCIsWzE1NzldXSxbWzEyNjYxNSwxMjY2MTVdLFwibWFwcGVkXCIsWzE1ODJdXSxbWzEyNjYxNiwxMjY2MTZdLFwibWFwcGVkXCIsWzE1ODRdXSxbWzEyNjYxNywxMjY2MTddLFwibWFwcGVkXCIsWzE1OTBdXSxbWzEyNjYxOCwxMjY2MThdLFwibWFwcGVkXCIsWzE1OTJdXSxbWzEyNjYxOSwxMjY2MTldLFwibWFwcGVkXCIsWzE1OTRdXSxbWzEyNjYyMCwxMjY2MjRdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjYyNSwxMjY2MjVdLFwibWFwcGVkXCIsWzE1NzZdXSxbWzEyNjYyNiwxMjY2MjZdLFwibWFwcGVkXCIsWzE1ODBdXSxbWzEyNjYyNywxMjY2MjddLFwibWFwcGVkXCIsWzE1ODNdXSxbWzEyNjYyOCwxMjY2MjhdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjYyOSwxMjY2MjldLFwibWFwcGVkXCIsWzE2MDhdXSxbWzEyNjYzMCwxMjY2MzBdLFwibWFwcGVkXCIsWzE1ODZdXSxbWzEyNjYzMSwxMjY2MzFdLFwibWFwcGVkXCIsWzE1ODFdXSxbWzEyNjYzMiwxMjY2MzJdLFwibWFwcGVkXCIsWzE1OTFdXSxbWzEyNjYzMywxMjY2MzNdLFwibWFwcGVkXCIsWzE2MTBdXSxbWzEyNjYzNCwxMjY2MzRdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjYzNSwxMjY2MzVdLFwibWFwcGVkXCIsWzE2MDRdXSxbWzEyNjYzNiwxMjY2MzZdLFwibWFwcGVkXCIsWzE2MDVdXSxbWzEyNjYzNywxMjY2MzddLFwibWFwcGVkXCIsWzE2MDZdXSxbWzEyNjYzOCwxMjY2MzhdLFwibWFwcGVkXCIsWzE1ODddXSxbWzEyNjYzOSwxMjY2MzldLFwibWFwcGVkXCIsWzE1OTNdXSxbWzEyNjY0MCwxMjY2NDBdLFwibWFwcGVkXCIsWzE2MDFdXSxbWzEyNjY0MSwxMjY2NDFdLFwibWFwcGVkXCIsWzE1ODldXSxbWzEyNjY0MiwxMjY2NDJdLFwibWFwcGVkXCIsWzE2MDJdXSxbWzEyNjY0MywxMjY2NDNdLFwibWFwcGVkXCIsWzE1ODVdXSxbWzEyNjY0NCwxMjY2NDRdLFwibWFwcGVkXCIsWzE1ODhdXSxbWzEyNjY0NSwxMjY2NDVdLFwibWFwcGVkXCIsWzE1NzhdXSxbWzEyNjY0NiwxMjY2NDZdLFwibWFwcGVkXCIsWzE1NzldXSxbWzEyNjY0NywxMjY2NDddLFwibWFwcGVkXCIsWzE1ODJdXSxbWzEyNjY0OCwxMjY2NDhdLFwibWFwcGVkXCIsWzE1ODRdXSxbWzEyNjY0OSwxMjY2NDldLFwibWFwcGVkXCIsWzE1OTBdXSxbWzEyNjY1MCwxMjY2NTBdLFwibWFwcGVkXCIsWzE1OTJdXSxbWzEyNjY1MSwxMjY2NTFdLFwibWFwcGVkXCIsWzE1OTRdXSxbWzEyNjY1MiwxMjY3MDNdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjcwNCwxMjY3MDVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNjcwNiwxMjY5NzVdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNjk3NiwxMjcwMTldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzAyMCwxMjcwMjNdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNzAyNCwxMjcxMjNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzEyNCwxMjcxMzVdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNzEzNiwxMjcxNTBdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzE1MSwxMjcxNTJdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNzE1MywxMjcxNjZdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzE2NywxMjcxNjddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzE2OCwxMjcxNjhdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNzE2OSwxMjcxODNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzE4NCwxMjcxODRdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNzE4NSwxMjcxOTldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzIwMCwxMjcyMjFdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzIyMiwxMjcyMzFdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNzIzMiwxMjcyMzJdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNzIzMywxMjcyMzNdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0OCw0NF1dLFtbMTI3MjM0LDEyNzIzNF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQ5LDQ0XV0sW1sxMjcyMzUsMTI3MjM1XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNTAsNDRdXSxbWzEyNzIzNiwxMjcyMzZdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs1MSw0NF1dLFtbMTI3MjM3LDEyNzIzN10sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzUyLDQ0XV0sW1sxMjcyMzgsMTI3MjM4XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNTMsNDRdXSxbWzEyNzIzOSwxMjcyMzldLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs1NCw0NF1dLFtbMTI3MjQwLDEyNzI0MF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzU1LDQ0XV0sW1sxMjcyNDEsMTI3MjQxXSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNTYsNDRdXSxbWzEyNzI0MiwxMjcyNDJdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs1Nyw0NF1dLFtbMTI3MjQzLDEyNzI0NF0sXCJ2YWxpZFwiLFtdLFwiTlY4XCJdLFtbMTI3MjQ1LDEyNzI0N10sXCJkaXNhbGxvd2VkXCJdLFtbMTI3MjQ4LDEyNzI0OF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDk3LDQxXV0sW1sxMjcyNDksMTI3MjQ5XSxcImRpc2FsbG93ZWRfU1REM19tYXBwZWRcIixbNDAsOTgsNDFdXSxbWzEyNzI1MCwxMjcyNTBdLFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiLFs0MCw5OSw0MV1dLFtbMTI3MjUxLDEyNzI1MV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDEwMCw0MV1dLFtbMTI3MjUyLDEyNzI1Ml0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDEwMSw0MV1dLFtbMTI3MjUzLDEyNzI1M10sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDEwMiw0MV1dLFtbMTI3MjU0LDEyNzI1NF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDEwMyw0MV1dLFtbMTI3MjU1LDEyNzI1NV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDEwNCw0MV1dLFtbMTI3MjU2LDEyNzI1Nl0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDEwNSw0MV1dLFtbMTI3MjU3LDEyNzI1N10sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDEwNiw0MV1dLFtbMTI3MjU4LDEyNzI1OF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDEwNyw0MV1dLFtbMTI3MjU5LDEyNzI1OV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDEwOCw0MV1dLFtbMTI3MjYwLDEyNzI2MF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDEwOSw0MV1dLFtbMTI3MjYxLDEyNzI2MV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDExMCw0MV1dLFtbMTI3MjYyLDEyNzI2Ml0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDExMSw0MV1dLFtbMTI3MjYzLDEyNzI2M10sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDExMiw0MV1dLFtbMTI3MjY0LDEyNzI2NF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDExMyw0MV1dLFtbMTI3MjY1LDEyNzI2NV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDExNCw0MV1dLFtbMTI3MjY2LDEyNzI2Nl0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDExNSw0MV1dLFtbMTI3MjY3LDEyNzI2N10sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDExNiw0MV1dLFtbMTI3MjY4LDEyNzI2OF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDExNyw0MV1dLFtbMTI3MjY5LDEyNzI2OV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDExOCw0MV1dLFtbMTI3MjcwLDEyNzI3MF0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDExOSw0MV1dLFtbMTI3MjcxLDEyNzI3MV0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDEyMCw0MV1dLFtbMTI3MjcyLDEyNzI3Ml0sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDEyMSw0MV1dLFtbMTI3MjczLDEyNzI3M10sXCJkaXNhbGxvd2VkX1NURDNfbWFwcGVkXCIsWzQwLDEyMiw0MV1dLFtbMTI3Mjc0LDEyNzI3NF0sXCJtYXBwZWRcIixbMTIzMDgsMTE1LDEyMzA5XV0sW1sxMjcyNzUsMTI3Mjc1XSxcIm1hcHBlZFwiLFs5OV1dLFtbMTI3Mjc2LDEyNzI3Nl0sXCJtYXBwZWRcIixbMTE0XV0sW1sxMjcyNzcsMTI3Mjc3XSxcIm1hcHBlZFwiLFs5OSwxMDBdXSxbWzEyNzI3OCwxMjcyNzhdLFwibWFwcGVkXCIsWzExOSwxMjJdXSxbWzEyNzI3OSwxMjcyNzldLFwiZGlzYWxsb3dlZFwiXSxbWzEyNzI4MCwxMjcyODBdLFwibWFwcGVkXCIsWzk3XV0sW1sxMjcyODEsMTI3MjgxXSxcIm1hcHBlZFwiLFs5OF1dLFtbMTI3MjgyLDEyNzI4Ml0sXCJtYXBwZWRcIixbOTldXSxbWzEyNzI4MywxMjcyODNdLFwibWFwcGVkXCIsWzEwMF1dLFtbMTI3Mjg0LDEyNzI4NF0sXCJtYXBwZWRcIixbMTAxXV0sW1sxMjcyODUsMTI3Mjg1XSxcIm1hcHBlZFwiLFsxMDJdXSxbWzEyNzI4NiwxMjcyODZdLFwibWFwcGVkXCIsWzEwM11dLFtbMTI3Mjg3LDEyNzI4N10sXCJtYXBwZWRcIixbMTA0XV0sW1sxMjcyODgsMTI3Mjg4XSxcIm1hcHBlZFwiLFsxMDVdXSxbWzEyNzI4OSwxMjcyODldLFwibWFwcGVkXCIsWzEwNl1dLFtbMTI3MjkwLDEyNzI5MF0sXCJtYXBwZWRcIixbMTA3XV0sW1sxMjcyOTEsMTI3MjkxXSxcIm1hcHBlZFwiLFsxMDhdXSxbWzEyNzI5MiwxMjcyOTJdLFwibWFwcGVkXCIsWzEwOV1dLFtbMTI3MjkzLDEyNzI5M10sXCJtYXBwZWRcIixbMTEwXV0sW1sxMjcyOTQsMTI3Mjk0XSxcIm1hcHBlZFwiLFsxMTFdXSxbWzEyNzI5NSwxMjcyOTVdLFwibWFwcGVkXCIsWzExMl1dLFtbMTI3Mjk2LDEyNzI5Nl0sXCJtYXBwZWRcIixbMTEzXV0sW1sxMjcyOTcsMTI3Mjk3XSxcIm1hcHBlZFwiLFsxMTRdXSxbWzEyNzI5OCwxMjcyOThdLFwibWFwcGVkXCIsWzExNV1dLFtbMTI3Mjk5LDEyNzI5OV0sXCJtYXBwZWRcIixbMTE2XV0sW1sxMjczMDAsMTI3MzAwXSxcIm1hcHBlZFwiLFsxMTddXSxbWzEyNzMwMSwxMjczMDFdLFwibWFwcGVkXCIsWzExOF1dLFtbMTI3MzAyLDEyNzMwMl0sXCJtYXBwZWRcIixbMTE5XV0sW1sxMjczMDMsMTI3MzAzXSxcIm1hcHBlZFwiLFsxMjBdXSxbWzEyNzMwNCwxMjczMDRdLFwibWFwcGVkXCIsWzEyMV1dLFtbMTI3MzA1LDEyNzMwNV0sXCJtYXBwZWRcIixbMTIyXV0sW1sxMjczMDYsMTI3MzA2XSxcIm1hcHBlZFwiLFsxMDQsMTE4XV0sW1sxMjczMDcsMTI3MzA3XSxcIm1hcHBlZFwiLFsxMDksMTE4XV0sW1sxMjczMDgsMTI3MzA4XSxcIm1hcHBlZFwiLFsxMTUsMTAwXV0sW1sxMjczMDksMTI3MzA5XSxcIm1hcHBlZFwiLFsxMTUsMTE1XV0sW1sxMjczMTAsMTI3MzEwXSxcIm1hcHBlZFwiLFsxMTIsMTEyLDExOF1dLFtbMTI3MzExLDEyNzMxMV0sXCJtYXBwZWRcIixbMTE5LDk5XV0sW1sxMjczMTIsMTI3MzE4XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMjczMTksMTI3MzE5XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMjczMjAsMTI3MzI2XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMjczMjcsMTI3MzI3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMjczMjgsMTI3MzM3XSxcInZhbGlkXCIsW10sXCJOVjhcIl0sW1sxMjczMzgsMTI3MzM4XSxcIm1hcHBlZFwiLFsxMDksOTldXSxbWzEyNzMzOSwxMjczMzldLFwibWFwcGVkXCIsWzEwOSwxMDBdXSxbWzEyNzM0MCwxMjczNDNdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNzM0NCwxMjczNTJdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzM1MywxMjczNTNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzM1NCwxMjczNTRdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzM1NSwxMjczNTZdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzM1NywxMjczNThdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzM1OSwxMjczNTldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzM2MCwxMjczNjldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzM3MCwxMjczNzNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzM3NCwxMjczNzVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzM3NiwxMjczNzZdLFwibWFwcGVkXCIsWzEwMCwxMDZdXSxbWzEyNzM3NywxMjczODZdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzM4NywxMjc0NjFdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNzQ2MiwxMjc0ODddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzQ4OCwxMjc0ODhdLFwibWFwcGVkXCIsWzEyNDExLDEyMzYzXV0sW1sxMjc0ODksMTI3NDg5XSxcIm1hcHBlZFwiLFsxMjQ2NywxMjQ2N11dLFtbMTI3NDkwLDEyNzQ5MF0sXCJtYXBwZWRcIixbMTI0NjldXSxbWzEyNzQ5MSwxMjc1MDNdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNzUwNCwxMjc1MDRdLFwibWFwcGVkXCIsWzI1MTYzXV0sW1sxMjc1MDUsMTI3NTA1XSxcIm1hcHBlZFwiLFsyMzM4M11dLFtbMTI3NTA2LDEyNzUwNl0sXCJtYXBwZWRcIixbMjE0NTJdXSxbWzEyNzUwNywxMjc1MDddLFwibWFwcGVkXCIsWzEyNDg3XV0sW1sxMjc1MDgsMTI3NTA4XSxcIm1hcHBlZFwiLFsyMDEwOF1dLFtbMTI3NTA5LDEyNzUwOV0sXCJtYXBwZWRcIixbMjI4MTBdXSxbWzEyNzUxMCwxMjc1MTBdLFwibWFwcGVkXCIsWzM1Mjk5XV0sW1sxMjc1MTEsMTI3NTExXSxcIm1hcHBlZFwiLFsyMjgyNV1dLFtbMTI3NTEyLDEyNzUxMl0sXCJtYXBwZWRcIixbMjAxMzJdXSxbWzEyNzUxMywxMjc1MTNdLFwibWFwcGVkXCIsWzI2MTQ0XV0sW1sxMjc1MTQsMTI3NTE0XSxcIm1hcHBlZFwiLFsyODk2MV1dLFtbMTI3NTE1LDEyNzUxNV0sXCJtYXBwZWRcIixbMjYwMDldXSxbWzEyNzUxNiwxMjc1MTZdLFwibWFwcGVkXCIsWzIxMDY5XV0sW1sxMjc1MTcsMTI3NTE3XSxcIm1hcHBlZFwiLFsyNDQ2MF1dLFtbMTI3NTE4LDEyNzUxOF0sXCJtYXBwZWRcIixbMjA4NzddXSxbWzEyNzUxOSwxMjc1MTldLFwibWFwcGVkXCIsWzI2MDMyXV0sW1sxMjc1MjAsMTI3NTIwXSxcIm1hcHBlZFwiLFsyMTAyMV1dLFtbMTI3NTIxLDEyNzUyMV0sXCJtYXBwZWRcIixbMzIwNjZdXSxbWzEyNzUyMiwxMjc1MjJdLFwibWFwcGVkXCIsWzI5OTgzXV0sW1sxMjc1MjMsMTI3NTIzXSxcIm1hcHBlZFwiLFszNjAwOV1dLFtbMTI3NTI0LDEyNzUyNF0sXCJtYXBwZWRcIixbMjI3NjhdXSxbWzEyNzUyNSwxMjc1MjVdLFwibWFwcGVkXCIsWzIxNTYxXV0sW1sxMjc1MjYsMTI3NTI2XSxcIm1hcHBlZFwiLFsyODQzNl1dLFtbMTI3NTI3LDEyNzUyN10sXCJtYXBwZWRcIixbMjUyMzddXSxbWzEyNzUyOCwxMjc1MjhdLFwibWFwcGVkXCIsWzI1NDI5XV0sW1sxMjc1MjksMTI3NTI5XSxcIm1hcHBlZFwiLFsxOTk2OF1dLFtbMTI3NTMwLDEyNzUzMF0sXCJtYXBwZWRcIixbMTk5NzddXSxbWzEyNzUzMSwxMjc1MzFdLFwibWFwcGVkXCIsWzM2OTM4XV0sW1sxMjc1MzIsMTI3NTMyXSxcIm1hcHBlZFwiLFsyNDAzOF1dLFtbMTI3NTMzLDEyNzUzM10sXCJtYXBwZWRcIixbMjAwMTNdXSxbWzEyNzUzNCwxMjc1MzRdLFwibWFwcGVkXCIsWzIxNDkxXV0sW1sxMjc1MzUsMTI3NTM1XSxcIm1hcHBlZFwiLFsyNTM1MV1dLFtbMTI3NTM2LDEyNzUzNl0sXCJtYXBwZWRcIixbMzYyMDhdXSxbWzEyNzUzNywxMjc1MzddLFwibWFwcGVkXCIsWzI1MTcxXV0sW1sxMjc1MzgsMTI3NTM4XSxcIm1hcHBlZFwiLFszMTEwNV1dLFtbMTI3NTM5LDEyNzUzOV0sXCJtYXBwZWRcIixbMzEzNTRdXSxbWzEyNzU0MCwxMjc1NDBdLFwibWFwcGVkXCIsWzIxNTEyXV0sW1sxMjc1NDEsMTI3NTQxXSxcIm1hcHBlZFwiLFsyODI4OF1dLFtbMTI3NTQyLDEyNzU0Ml0sXCJtYXBwZWRcIixbMjYzNzddXSxbWzEyNzU0MywxMjc1NDNdLFwibWFwcGVkXCIsWzI2Mzc2XV0sW1sxMjc1NDQsMTI3NTQ0XSxcIm1hcHBlZFwiLFszMDAwM11dLFtbMTI3NTQ1LDEyNzU0NV0sXCJtYXBwZWRcIixbMjExMDZdXSxbWzEyNzU0NiwxMjc1NDZdLFwibWFwcGVkXCIsWzIxOTQyXV0sW1sxMjc1NDcsMTI3NTUxXSxcImRpc2FsbG93ZWRcIl0sW1sxMjc1NTIsMTI3NTUyXSxcIm1hcHBlZFwiLFsxMjMwOCwyNjQxMiwxMjMwOV1dLFtbMTI3NTUzLDEyNzU1M10sXCJtYXBwZWRcIixbMTIzMDgsMTk5NzcsMTIzMDldXSxbWzEyNzU1NCwxMjc1NTRdLFwibWFwcGVkXCIsWzEyMzA4LDIwMTA4LDEyMzA5XV0sW1sxMjc1NTUsMTI3NTU1XSxcIm1hcHBlZFwiLFsxMjMwOCwyMzQzMywxMjMwOV1dLFtbMTI3NTU2LDEyNzU1Nl0sXCJtYXBwZWRcIixbMTIzMDgsMjg4NTcsMTIzMDldXSxbWzEyNzU1NywxMjc1NTddLFwibWFwcGVkXCIsWzEyMzA4LDI1MTcxLDEyMzA5XV0sW1sxMjc1NTgsMTI3NTU4XSxcIm1hcHBlZFwiLFsxMjMwOCwzMDQyMywxMjMwOV1dLFtbMTI3NTU5LDEyNzU1OV0sXCJtYXBwZWRcIixbMTIzMDgsMjEyMTMsMTIzMDldXSxbWzEyNzU2MCwxMjc1NjBdLFwibWFwcGVkXCIsWzEyMzA4LDI1OTQzLDEyMzA5XV0sW1sxMjc1NjEsMTI3NTY3XSxcImRpc2FsbG93ZWRcIl0sW1sxMjc1NjgsMTI3NTY4XSxcIm1hcHBlZFwiLFsyNDQ3MV1dLFtbMTI3NTY5LDEyNzU2OV0sXCJtYXBwZWRcIixbMjE0ODddXSxbWzEyNzU3MCwxMjc3NDNdLFwiZGlzYWxsb3dlZFwiXSxbWzEyNzc0NCwxMjc3NzZdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzc3NywxMjc3ODhdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzc4OSwxMjc3OTFdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzc5MiwxMjc3OTddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzc5OCwxMjc3OThdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzc5OSwxMjc4NjhdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzg2OSwxMjc4NjldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzg3MCwxMjc4NzFdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzg3MiwxMjc4OTFdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzg5MiwxMjc5MDNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzkwNCwxMjc5NDBdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzk0MSwxMjc5NDFdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzk0MiwxMjc5NDZdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzk0NywxMjc5NTBdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzk1MSwxMjc5NTVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzk1NiwxMjc5NjddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzk2OCwxMjc5ODRdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzk4NSwxMjc5OTFdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyNzk5MiwxMjc5OTldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODAwMCwxMjgwNjJdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODA2MywxMjgwNjNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODA2NCwxMjgwNjRdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODA2NSwxMjgwNjVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODA2NiwxMjgyNDddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODI0OCwxMjgyNDhdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODI0OSwxMjgyNTJdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODI1MywxMjgyNTRdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODI1NSwxMjgyNTVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODI1NiwxMjgzMTddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODMxOCwxMjgzMTldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODMyMCwxMjgzMjNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODMyNCwxMjgzMzBdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODMzMSwxMjgzMzVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODMzNiwxMjgzNTldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODM2MCwxMjgzNzddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODM3OCwxMjgzNzhdLFwiZGlzYWxsb3dlZFwiXSxbWzEyODM3OSwxMjg0MTldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODQyMCwxMjg0MjBdLFwiZGlzYWxsb3dlZFwiXSxbWzEyODQyMSwxMjg1MDZdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODUwNywxMjg1MTFdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODUxMiwxMjg1MTJdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODUxMywxMjg1MjhdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODUyOSwxMjg1MjldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODUzMCwxMjg1MzJdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODUzMywxMjg1MzNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODUzNCwxMjg1MzRdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODUzNSwxMjg1MzVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODUzNiwxMjg1MzZdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODUzNywxMjg1MzddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODUzOCwxMjg1MzhdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODUzOSwxMjg1MzldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODU0MCwxMjg1NDJdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODU0MywxMjg1NDNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODU0NCwxMjg1NDldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODU1MCwxMjg1NTFdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODU1MiwxMjg1NTVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODU1NiwxMjg1NTZdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODU1NywxMjg1NTddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODU1OCwxMjg1NTldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODU2MCwxMjg1NjNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODU2NCwxMjg1NjRdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODU2NSwxMjg1NzZdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODU3NywxMjg1NzhdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODU3OSwxMjg1ODBdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODU4MSwxMjg1OTFdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODU5MiwxMjg2MzldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODY0MCwxMjg3MDldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODcxMCwxMjg3MTldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODcyMCwxMjg3MjBdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODcyMSwxMjg3MzVdLFwiZGlzYWxsb3dlZFwiXSxbWzEyODczNiwxMjg3NDhdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODc0OSwxMjg3NTFdLFwiZGlzYWxsb3dlZFwiXSxbWzEyODc1MiwxMjg3NTVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODc1NiwxMjg3NjddLFwiZGlzYWxsb3dlZFwiXSxbWzEyODc2OCwxMjg4ODNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODg4NCwxMjg4OTVdLFwiZGlzYWxsb3dlZFwiXSxbWzEyODg5NiwxMjg5ODBdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyODk4MSwxMjkwMjNdLFwiZGlzYWxsb3dlZFwiXSxbWzEyOTAyNCwxMjkwMzVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyOTAzNiwxMjkwMzldLFwiZGlzYWxsb3dlZFwiXSxbWzEyOTA0MCwxMjkwOTVdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyOTA5NiwxMjkxMDNdLFwiZGlzYWxsb3dlZFwiXSxbWzEyOTEwNCwxMjkxMTNdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyOTExNCwxMjkxMTldLFwiZGlzYWxsb3dlZFwiXSxbWzEyOTEyMCwxMjkxNTldLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyOTE2MCwxMjkxNjddLFwiZGlzYWxsb3dlZFwiXSxbWzEyOTE2OCwxMjkxOTddLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyOTE5OCwxMjkyOTVdLFwiZGlzYWxsb3dlZFwiXSxbWzEyOTI5NiwxMjkzMDRdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyOTMwNSwxMjk0MDddLFwiZGlzYWxsb3dlZFwiXSxbWzEyOTQwOCwxMjk0MTJdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyOTQxMywxMjk0NzFdLFwiZGlzYWxsb3dlZFwiXSxbWzEyOTQ3MiwxMjk0NzJdLFwidmFsaWRcIixbXSxcIk5WOFwiXSxbWzEyOTQ3MywxMzEwNjldLFwiZGlzYWxsb3dlZFwiXSxbWzEzMTA3MCwxMzEwNzFdLFwiZGlzYWxsb3dlZFwiXSxbWzEzMTA3MiwxNzM3ODJdLFwidmFsaWRcIl0sW1sxNzM3ODMsMTczODIzXSxcImRpc2FsbG93ZWRcIl0sW1sxNzM4MjQsMTc3OTcyXSxcInZhbGlkXCJdLFtbMTc3OTczLDE3Nzk4M10sXCJkaXNhbGxvd2VkXCJdLFtbMTc3OTg0LDE3ODIwNV0sXCJ2YWxpZFwiXSxbWzE3ODIwNiwxNzgyMDddLFwiZGlzYWxsb3dlZFwiXSxbWzE3ODIwOCwxODM5NjldLFwidmFsaWRcIl0sW1sxODM5NzAsMTk0NTU5XSxcImRpc2FsbG93ZWRcIl0sW1sxOTQ1NjAsMTk0NTYwXSxcIm1hcHBlZFwiLFsyMDAyOV1dLFtbMTk0NTYxLDE5NDU2MV0sXCJtYXBwZWRcIixbMjAwMjRdXSxbWzE5NDU2MiwxOTQ1NjJdLFwibWFwcGVkXCIsWzIwMDMzXV0sW1sxOTQ1NjMsMTk0NTYzXSxcIm1hcHBlZFwiLFsxMzEzNjJdXSxbWzE5NDU2NCwxOTQ1NjRdLFwibWFwcGVkXCIsWzIwMzIwXV0sW1sxOTQ1NjUsMTk0NTY1XSxcIm1hcHBlZFwiLFsyMDM5OF1dLFtbMTk0NTY2LDE5NDU2Nl0sXCJtYXBwZWRcIixbMjA0MTFdXSxbWzE5NDU2NywxOTQ1NjddLFwibWFwcGVkXCIsWzIwNDgyXV0sW1sxOTQ1NjgsMTk0NTY4XSxcIm1hcHBlZFwiLFsyMDYwMl1dLFtbMTk0NTY5LDE5NDU2OV0sXCJtYXBwZWRcIixbMjA2MzNdXSxbWzE5NDU3MCwxOTQ1NzBdLFwibWFwcGVkXCIsWzIwNzExXV0sW1sxOTQ1NzEsMTk0NTcxXSxcIm1hcHBlZFwiLFsyMDY4N11dLFtbMTk0NTcyLDE5NDU3Ml0sXCJtYXBwZWRcIixbMTM0NzBdXSxbWzE5NDU3MywxOTQ1NzNdLFwibWFwcGVkXCIsWzEzMjY2Nl1dLFtbMTk0NTc0LDE5NDU3NF0sXCJtYXBwZWRcIixbMjA4MTNdXSxbWzE5NDU3NSwxOTQ1NzVdLFwibWFwcGVkXCIsWzIwODIwXV0sW1sxOTQ1NzYsMTk0NTc2XSxcIm1hcHBlZFwiLFsyMDgzNl1dLFtbMTk0NTc3LDE5NDU3N10sXCJtYXBwZWRcIixbMjA4NTVdXSxbWzE5NDU3OCwxOTQ1NzhdLFwibWFwcGVkXCIsWzEzMjM4MF1dLFtbMTk0NTc5LDE5NDU3OV0sXCJtYXBwZWRcIixbMTM0OTddXSxbWzE5NDU4MCwxOTQ1ODBdLFwibWFwcGVkXCIsWzIwODM5XV0sW1sxOTQ1ODEsMTk0NTgxXSxcIm1hcHBlZFwiLFsyMDg3N11dLFtbMTk0NTgyLDE5NDU4Ml0sXCJtYXBwZWRcIixbMTMyNDI3XV0sW1sxOTQ1ODMsMTk0NTgzXSxcIm1hcHBlZFwiLFsyMDg4N11dLFtbMTk0NTg0LDE5NDU4NF0sXCJtYXBwZWRcIixbMjA5MDBdXSxbWzE5NDU4NSwxOTQ1ODVdLFwibWFwcGVkXCIsWzIwMTcyXV0sW1sxOTQ1ODYsMTk0NTg2XSxcIm1hcHBlZFwiLFsyMDkwOF1dLFtbMTk0NTg3LDE5NDU4N10sXCJtYXBwZWRcIixbMjA5MTddXSxbWzE5NDU4OCwxOTQ1ODhdLFwibWFwcGVkXCIsWzE2ODQxNV1dLFtbMTk0NTg5LDE5NDU4OV0sXCJtYXBwZWRcIixbMjA5ODFdXSxbWzE5NDU5MCwxOTQ1OTBdLFwibWFwcGVkXCIsWzIwOTk1XV0sW1sxOTQ1OTEsMTk0NTkxXSxcIm1hcHBlZFwiLFsxMzUzNV1dLFtbMTk0NTkyLDE5NDU5Ml0sXCJtYXBwZWRcIixbMjEwNTFdXSxbWzE5NDU5MywxOTQ1OTNdLFwibWFwcGVkXCIsWzIxMDYyXV0sW1sxOTQ1OTQsMTk0NTk0XSxcIm1hcHBlZFwiLFsyMTEwNl1dLFtbMTk0NTk1LDE5NDU5NV0sXCJtYXBwZWRcIixbMjExMTFdXSxbWzE5NDU5NiwxOTQ1OTZdLFwibWFwcGVkXCIsWzEzNTg5XV0sW1sxOTQ1OTcsMTk0NTk3XSxcIm1hcHBlZFwiLFsyMTE5MV1dLFtbMTk0NTk4LDE5NDU5OF0sXCJtYXBwZWRcIixbMjExOTNdXSxbWzE5NDU5OSwxOTQ1OTldLFwibWFwcGVkXCIsWzIxMjIwXV0sW1sxOTQ2MDAsMTk0NjAwXSxcIm1hcHBlZFwiLFsyMTI0Ml1dLFtbMTk0NjAxLDE5NDYwMV0sXCJtYXBwZWRcIixbMjEyNTNdXSxbWzE5NDYwMiwxOTQ2MDJdLFwibWFwcGVkXCIsWzIxMjU0XV0sW1sxOTQ2MDMsMTk0NjAzXSxcIm1hcHBlZFwiLFsyMTI3MV1dLFtbMTk0NjA0LDE5NDYwNF0sXCJtYXBwZWRcIixbMjEzMjFdXSxbWzE5NDYwNSwxOTQ2MDVdLFwibWFwcGVkXCIsWzIxMzI5XV0sW1sxOTQ2MDYsMTk0NjA2XSxcIm1hcHBlZFwiLFsyMTMzOF1dLFtbMTk0NjA3LDE5NDYwN10sXCJtYXBwZWRcIixbMjEzNjNdXSxbWzE5NDYwOCwxOTQ2MDhdLFwibWFwcGVkXCIsWzIxMzczXV0sW1sxOTQ2MDksMTk0NjExXSxcIm1hcHBlZFwiLFsyMTM3NV1dLFtbMTk0NjEyLDE5NDYxMl0sXCJtYXBwZWRcIixbMTMzNjc2XV0sW1sxOTQ2MTMsMTk0NjEzXSxcIm1hcHBlZFwiLFsyODc4NF1dLFtbMTk0NjE0LDE5NDYxNF0sXCJtYXBwZWRcIixbMjE0NTBdXSxbWzE5NDYxNSwxOTQ2MTVdLFwibWFwcGVkXCIsWzIxNDcxXV0sW1sxOTQ2MTYsMTk0NjE2XSxcIm1hcHBlZFwiLFsxMzM5ODddXSxbWzE5NDYxNywxOTQ2MTddLFwibWFwcGVkXCIsWzIxNDgzXV0sW1sxOTQ2MTgsMTk0NjE4XSxcIm1hcHBlZFwiLFsyMTQ4OV1dLFtbMTk0NjE5LDE5NDYxOV0sXCJtYXBwZWRcIixbMjE1MTBdXSxbWzE5NDYyMCwxOTQ2MjBdLFwibWFwcGVkXCIsWzIxNjYyXV0sW1sxOTQ2MjEsMTk0NjIxXSxcIm1hcHBlZFwiLFsyMTU2MF1dLFtbMTk0NjIyLDE5NDYyMl0sXCJtYXBwZWRcIixbMjE1NzZdXSxbWzE5NDYyMywxOTQ2MjNdLFwibWFwcGVkXCIsWzIxNjA4XV0sW1sxOTQ2MjQsMTk0NjI0XSxcIm1hcHBlZFwiLFsyMTY2Nl1dLFtbMTk0NjI1LDE5NDYyNV0sXCJtYXBwZWRcIixbMjE3NTBdXSxbWzE5NDYyNiwxOTQ2MjZdLFwibWFwcGVkXCIsWzIxNzc2XV0sW1sxOTQ2MjcsMTk0NjI3XSxcIm1hcHBlZFwiLFsyMTg0M11dLFtbMTk0NjI4LDE5NDYyOF0sXCJtYXBwZWRcIixbMjE4NTldXSxbWzE5NDYyOSwxOTQ2MzBdLFwibWFwcGVkXCIsWzIxODkyXV0sW1sxOTQ2MzEsMTk0NjMxXSxcIm1hcHBlZFwiLFsyMTkxM11dLFtbMTk0NjMyLDE5NDYzMl0sXCJtYXBwZWRcIixbMjE5MzFdXSxbWzE5NDYzMywxOTQ2MzNdLFwibWFwcGVkXCIsWzIxOTM5XV0sW1sxOTQ2MzQsMTk0NjM0XSxcIm1hcHBlZFwiLFsyMTk1NF1dLFtbMTk0NjM1LDE5NDYzNV0sXCJtYXBwZWRcIixbMjIyOTRdXSxbWzE5NDYzNiwxOTQ2MzZdLFwibWFwcGVkXCIsWzIyMDIyXV0sW1sxOTQ2MzcsMTk0NjM3XSxcIm1hcHBlZFwiLFsyMjI5NV1dLFtbMTk0NjM4LDE5NDYzOF0sXCJtYXBwZWRcIixbMjIwOTddXSxbWzE5NDYzOSwxOTQ2MzldLFwibWFwcGVkXCIsWzIyMTMyXV0sW1sxOTQ2NDAsMTk0NjQwXSxcIm1hcHBlZFwiLFsyMDk5OV1dLFtbMTk0NjQxLDE5NDY0MV0sXCJtYXBwZWRcIixbMjI3NjZdXSxbWzE5NDY0MiwxOTQ2NDJdLFwibWFwcGVkXCIsWzIyNDc4XV0sW1sxOTQ2NDMsMTk0NjQzXSxcIm1hcHBlZFwiLFsyMjUxNl1dLFtbMTk0NjQ0LDE5NDY0NF0sXCJtYXBwZWRcIixbMjI1NDFdXSxbWzE5NDY0NSwxOTQ2NDVdLFwibWFwcGVkXCIsWzIyNDExXV0sW1sxOTQ2NDYsMTk0NjQ2XSxcIm1hcHBlZFwiLFsyMjU3OF1dLFtbMTk0NjQ3LDE5NDY0N10sXCJtYXBwZWRcIixbMjI1NzddXSxbWzE5NDY0OCwxOTQ2NDhdLFwibWFwcGVkXCIsWzIyNzAwXV0sW1sxOTQ2NDksMTk0NjQ5XSxcIm1hcHBlZFwiLFsxMzY0MjBdXSxbWzE5NDY1MCwxOTQ2NTBdLFwibWFwcGVkXCIsWzIyNzcwXV0sW1sxOTQ2NTEsMTk0NjUxXSxcIm1hcHBlZFwiLFsyMjc3NV1dLFtbMTk0NjUyLDE5NDY1Ml0sXCJtYXBwZWRcIixbMjI3OTBdXSxbWzE5NDY1MywxOTQ2NTNdLFwibWFwcGVkXCIsWzIyODEwXV0sW1sxOTQ2NTQsMTk0NjU0XSxcIm1hcHBlZFwiLFsyMjgxOF1dLFtbMTk0NjU1LDE5NDY1NV0sXCJtYXBwZWRcIixbMjI4ODJdXSxbWzE5NDY1NiwxOTQ2NTZdLFwibWFwcGVkXCIsWzEzNjg3Ml1dLFtbMTk0NjU3LDE5NDY1N10sXCJtYXBwZWRcIixbMTM2OTM4XV0sW1sxOTQ2NTgsMTk0NjU4XSxcIm1hcHBlZFwiLFsyMzAyMF1dLFtbMTk0NjU5LDE5NDY1OV0sXCJtYXBwZWRcIixbMjMwNjddXSxbWzE5NDY2MCwxOTQ2NjBdLFwibWFwcGVkXCIsWzIzMDc5XV0sW1sxOTQ2NjEsMTk0NjYxXSxcIm1hcHBlZFwiLFsyMzAwMF1dLFtbMTk0NjYyLDE5NDY2Ml0sXCJtYXBwZWRcIixbMjMxNDJdXSxbWzE5NDY2MywxOTQ2NjNdLFwibWFwcGVkXCIsWzE0MDYyXV0sW1sxOTQ2NjQsMTk0NjY0XSxcImRpc2FsbG93ZWRcIl0sW1sxOTQ2NjUsMTk0NjY1XSxcIm1hcHBlZFwiLFsyMzMwNF1dLFtbMTk0NjY2LDE5NDY2N10sXCJtYXBwZWRcIixbMjMzNThdXSxbWzE5NDY2OCwxOTQ2NjhdLFwibWFwcGVkXCIsWzEzNzY3Ml1dLFtbMTk0NjY5LDE5NDY2OV0sXCJtYXBwZWRcIixbMjM0OTFdXSxbWzE5NDY3MCwxOTQ2NzBdLFwibWFwcGVkXCIsWzIzNTEyXV0sW1sxOTQ2NzEsMTk0NjcxXSxcIm1hcHBlZFwiLFsyMzUyN11dLFtbMTk0NjcyLDE5NDY3Ml0sXCJtYXBwZWRcIixbMjM1MzldXSxbWzE5NDY3MywxOTQ2NzNdLFwibWFwcGVkXCIsWzEzODAwOF1dLFtbMTk0Njc0LDE5NDY3NF0sXCJtYXBwZWRcIixbMjM1NTFdXSxbWzE5NDY3NSwxOTQ2NzVdLFwibWFwcGVkXCIsWzIzNTU4XV0sW1sxOTQ2NzYsMTk0Njc2XSxcImRpc2FsbG93ZWRcIl0sW1sxOTQ2NzcsMTk0Njc3XSxcIm1hcHBlZFwiLFsyMzU4Nl1dLFtbMTk0Njc4LDE5NDY3OF0sXCJtYXBwZWRcIixbMTQyMDldXSxbWzE5NDY3OSwxOTQ2NzldLFwibWFwcGVkXCIsWzIzNjQ4XV0sW1sxOTQ2ODAsMTk0NjgwXSxcIm1hcHBlZFwiLFsyMzY2Ml1dLFtbMTk0NjgxLDE5NDY4MV0sXCJtYXBwZWRcIixbMjM3NDRdXSxbWzE5NDY4MiwxOTQ2ODJdLFwibWFwcGVkXCIsWzIzNjkzXV0sW1sxOTQ2ODMsMTk0NjgzXSxcIm1hcHBlZFwiLFsxMzg3MjRdXSxbWzE5NDY4NCwxOTQ2ODRdLFwibWFwcGVkXCIsWzIzODc1XV0sW1sxOTQ2ODUsMTk0Njg1XSxcIm1hcHBlZFwiLFsxMzg3MjZdXSxbWzE5NDY4NiwxOTQ2ODZdLFwibWFwcGVkXCIsWzIzOTE4XV0sW1sxOTQ2ODcsMTk0Njg3XSxcIm1hcHBlZFwiLFsyMzkxNV1dLFtbMTk0Njg4LDE5NDY4OF0sXCJtYXBwZWRcIixbMjM5MzJdXSxbWzE5NDY4OSwxOTQ2ODldLFwibWFwcGVkXCIsWzI0MDMzXV0sW1sxOTQ2OTAsMTk0NjkwXSxcIm1hcHBlZFwiLFsyNDAzNF1dLFtbMTk0NjkxLDE5NDY5MV0sXCJtYXBwZWRcIixbMTQzODNdXSxbWzE5NDY5MiwxOTQ2OTJdLFwibWFwcGVkXCIsWzI0MDYxXV0sW1sxOTQ2OTMsMTk0NjkzXSxcIm1hcHBlZFwiLFsyNDEwNF1dLFtbMTk0Njk0LDE5NDY5NF0sXCJtYXBwZWRcIixbMjQxMjVdXSxbWzE5NDY5NSwxOTQ2OTVdLFwibWFwcGVkXCIsWzI0MTY5XV0sW1sxOTQ2OTYsMTk0Njk2XSxcIm1hcHBlZFwiLFsxNDQzNF1dLFtbMTk0Njk3LDE5NDY5N10sXCJtYXBwZWRcIixbMTM5NjUxXV0sW1sxOTQ2OTgsMTk0Njk4XSxcIm1hcHBlZFwiLFsxNDQ2MF1dLFtbMTk0Njk5LDE5NDY5OV0sXCJtYXBwZWRcIixbMjQyNDBdXSxbWzE5NDcwMCwxOTQ3MDBdLFwibWFwcGVkXCIsWzI0MjQzXV0sW1sxOTQ3MDEsMTk0NzAxXSxcIm1hcHBlZFwiLFsyNDI0Nl1dLFtbMTk0NzAyLDE5NDcwMl0sXCJtYXBwZWRcIixbMjQyNjZdXSxbWzE5NDcwMywxOTQ3MDNdLFwibWFwcGVkXCIsWzE3Mjk0Nl1dLFtbMTk0NzA0LDE5NDcwNF0sXCJtYXBwZWRcIixbMjQzMThdXSxbWzE5NDcwNSwxOTQ3MDZdLFwibWFwcGVkXCIsWzE0MDA4MV1dLFtbMTk0NzA3LDE5NDcwN10sXCJtYXBwZWRcIixbMzMyODFdXSxbWzE5NDcwOCwxOTQ3MDldLFwibWFwcGVkXCIsWzI0MzU0XV0sW1sxOTQ3MTAsMTk0NzEwXSxcIm1hcHBlZFwiLFsxNDUzNV1dLFtbMTk0NzExLDE5NDcxMV0sXCJtYXBwZWRcIixbMTQ0MDU2XV0sW1sxOTQ3MTIsMTk0NzEyXSxcIm1hcHBlZFwiLFsxNTYxMjJdXSxbWzE5NDcxMywxOTQ3MTNdLFwibWFwcGVkXCIsWzI0NDE4XV0sW1sxOTQ3MTQsMTk0NzE0XSxcIm1hcHBlZFwiLFsyNDQyN11dLFtbMTk0NzE1LDE5NDcxNV0sXCJtYXBwZWRcIixbMTQ1NjNdXSxbWzE5NDcxNiwxOTQ3MTZdLFwibWFwcGVkXCIsWzI0NDc0XV0sW1sxOTQ3MTcsMTk0NzE3XSxcIm1hcHBlZFwiLFsyNDUyNV1dLFtbMTk0NzE4LDE5NDcxOF0sXCJtYXBwZWRcIixbMjQ1MzVdXSxbWzE5NDcxOSwxOTQ3MTldLFwibWFwcGVkXCIsWzI0NTY5XV0sW1sxOTQ3MjAsMTk0NzIwXSxcIm1hcHBlZFwiLFsyNDcwNV1dLFtbMTk0NzIxLDE5NDcyMV0sXCJtYXBwZWRcIixbMTQ2NTBdXSxbWzE5NDcyMiwxOTQ3MjJdLFwibWFwcGVkXCIsWzE0NjIwXV0sW1sxOTQ3MjMsMTk0NzIzXSxcIm1hcHBlZFwiLFsyNDcyNF1dLFtbMTk0NzI0LDE5NDcyNF0sXCJtYXBwZWRcIixbMTQxMDEyXV0sW1sxOTQ3MjUsMTk0NzI1XSxcIm1hcHBlZFwiLFsyNDc3NV1dLFtbMTk0NzI2LDE5NDcyNl0sXCJtYXBwZWRcIixbMjQ5MDRdXSxbWzE5NDcyNywxOTQ3MjddLFwibWFwcGVkXCIsWzI0OTA4XV0sW1sxOTQ3MjgsMTk0NzI4XSxcIm1hcHBlZFwiLFsyNDkxMF1dLFtbMTk0NzI5LDE5NDcyOV0sXCJtYXBwZWRcIixbMjQ5MDhdXSxbWzE5NDczMCwxOTQ3MzBdLFwibWFwcGVkXCIsWzI0OTU0XV0sW1sxOTQ3MzEsMTk0NzMxXSxcIm1hcHBlZFwiLFsyNDk3NF1dLFtbMTk0NzMyLDE5NDczMl0sXCJtYXBwZWRcIixbMjUwMTBdXSxbWzE5NDczMywxOTQ3MzNdLFwibWFwcGVkXCIsWzI0OTk2XV0sW1sxOTQ3MzQsMTk0NzM0XSxcIm1hcHBlZFwiLFsyNTAwN11dLFtbMTk0NzM1LDE5NDczNV0sXCJtYXBwZWRcIixbMjUwNTRdXSxbWzE5NDczNiwxOTQ3MzZdLFwibWFwcGVkXCIsWzI1MDc0XV0sW1sxOTQ3MzcsMTk0NzM3XSxcIm1hcHBlZFwiLFsyNTA3OF1dLFtbMTk0NzM4LDE5NDczOF0sXCJtYXBwZWRcIixbMjUxMDRdXSxbWzE5NDczOSwxOTQ3MzldLFwibWFwcGVkXCIsWzI1MTE1XV0sW1sxOTQ3NDAsMTk0NzQwXSxcIm1hcHBlZFwiLFsyNTE4MV1dLFtbMTk0NzQxLDE5NDc0MV0sXCJtYXBwZWRcIixbMjUyNjVdXSxbWzE5NDc0MiwxOTQ3NDJdLFwibWFwcGVkXCIsWzI1MzAwXV0sW1sxOTQ3NDMsMTk0NzQzXSxcIm1hcHBlZFwiLFsyNTQyNF1dLFtbMTk0NzQ0LDE5NDc0NF0sXCJtYXBwZWRcIixbMTQyMDkyXV0sW1sxOTQ3NDUsMTk0NzQ1XSxcIm1hcHBlZFwiLFsyNTQwNV1dLFtbMTk0NzQ2LDE5NDc0Nl0sXCJtYXBwZWRcIixbMjUzNDBdXSxbWzE5NDc0NywxOTQ3NDddLFwibWFwcGVkXCIsWzI1NDQ4XV0sW1sxOTQ3NDgsMTk0NzQ4XSxcIm1hcHBlZFwiLFsyNTQ3NV1dLFtbMTk0NzQ5LDE5NDc0OV0sXCJtYXBwZWRcIixbMjU1NzJdXSxbWzE5NDc1MCwxOTQ3NTBdLFwibWFwcGVkXCIsWzE0MjMyMV1dLFtbMTk0NzUxLDE5NDc1MV0sXCJtYXBwZWRcIixbMjU2MzRdXSxbWzE5NDc1MiwxOTQ3NTJdLFwibWFwcGVkXCIsWzI1NTQxXV0sW1sxOTQ3NTMsMTk0NzUzXSxcIm1hcHBlZFwiLFsyNTUxM11dLFtbMTk0NzU0LDE5NDc1NF0sXCJtYXBwZWRcIixbMTQ4OTRdXSxbWzE5NDc1NSwxOTQ3NTVdLFwibWFwcGVkXCIsWzI1NzA1XV0sW1sxOTQ3NTYsMTk0NzU2XSxcIm1hcHBlZFwiLFsyNTcyNl1dLFtbMTk0NzU3LDE5NDc1N10sXCJtYXBwZWRcIixbMjU3NTddXSxbWzE5NDc1OCwxOTQ3NThdLFwibWFwcGVkXCIsWzI1NzE5XV0sW1sxOTQ3NTksMTk0NzU5XSxcIm1hcHBlZFwiLFsxNDk1Nl1dLFtbMTk0NzYwLDE5NDc2MF0sXCJtYXBwZWRcIixbMjU5MzVdXSxbWzE5NDc2MSwxOTQ3NjFdLFwibWFwcGVkXCIsWzI1OTY0XV0sW1sxOTQ3NjIsMTk0NzYyXSxcIm1hcHBlZFwiLFsxNDMzNzBdXSxbWzE5NDc2MywxOTQ3NjNdLFwibWFwcGVkXCIsWzI2MDgzXV0sW1sxOTQ3NjQsMTk0NzY0XSxcIm1hcHBlZFwiLFsyNjM2MF1dLFtbMTk0NzY1LDE5NDc2NV0sXCJtYXBwZWRcIixbMjYxODVdXSxbWzE5NDc2NiwxOTQ3NjZdLFwibWFwcGVkXCIsWzE1MTI5XV0sW1sxOTQ3NjcsMTk0NzY3XSxcIm1hcHBlZFwiLFsyNjI1N11dLFtbMTk0NzY4LDE5NDc2OF0sXCJtYXBwZWRcIixbMTUxMTJdXSxbWzE5NDc2OSwxOTQ3NjldLFwibWFwcGVkXCIsWzE1MDc2XV0sW1sxOTQ3NzAsMTk0NzcwXSxcIm1hcHBlZFwiLFsyMDg4Ml1dLFtbMTk0NzcxLDE5NDc3MV0sXCJtYXBwZWRcIixbMjA4ODVdXSxbWzE5NDc3MiwxOTQ3NzJdLFwibWFwcGVkXCIsWzI2MzY4XV0sW1sxOTQ3NzMsMTk0NzczXSxcIm1hcHBlZFwiLFsyNjI2OF1dLFtbMTk0Nzc0LDE5NDc3NF0sXCJtYXBwZWRcIixbMzI5NDFdXSxbWzE5NDc3NSwxOTQ3NzVdLFwibWFwcGVkXCIsWzE3MzY5XV0sW1sxOTQ3NzYsMTk0Nzc2XSxcIm1hcHBlZFwiLFsyNjM5MV1dLFtbMTk0Nzc3LDE5NDc3N10sXCJtYXBwZWRcIixbMjYzOTVdXSxbWzE5NDc3OCwxOTQ3NzhdLFwibWFwcGVkXCIsWzI2NDAxXV0sW1sxOTQ3NzksMTk0Nzc5XSxcIm1hcHBlZFwiLFsyNjQ2Ml1dLFtbMTk0NzgwLDE5NDc4MF0sXCJtYXBwZWRcIixbMjY0NTFdXSxbWzE5NDc4MSwxOTQ3ODFdLFwibWFwcGVkXCIsWzE0NDMyM11dLFtbMTk0NzgyLDE5NDc4Ml0sXCJtYXBwZWRcIixbMTUxNzddXSxbWzE5NDc4MywxOTQ3ODNdLFwibWFwcGVkXCIsWzI2NjE4XV0sW1sxOTQ3ODQsMTk0Nzg0XSxcIm1hcHBlZFwiLFsyNjUwMV1dLFtbMTk0Nzg1LDE5NDc4NV0sXCJtYXBwZWRcIixbMjY3MDZdXSxbWzE5NDc4NiwxOTQ3ODZdLFwibWFwcGVkXCIsWzI2NzU3XV0sW1sxOTQ3ODcsMTk0Nzg3XSxcIm1hcHBlZFwiLFsxNDQ0OTNdXSxbWzE5NDc4OCwxOTQ3ODhdLFwibWFwcGVkXCIsWzI2NzY2XV0sW1sxOTQ3ODksMTk0Nzg5XSxcIm1hcHBlZFwiLFsyNjY1NV1dLFtbMTk0NzkwLDE5NDc5MF0sXCJtYXBwZWRcIixbMjY5MDBdXSxbWzE5NDc5MSwxOTQ3OTFdLFwibWFwcGVkXCIsWzE1MjYxXV0sW1sxOTQ3OTIsMTk0NzkyXSxcIm1hcHBlZFwiLFsyNjk0Nl1dLFtbMTk0NzkzLDE5NDc5M10sXCJtYXBwZWRcIixbMjcwNDNdXSxbWzE5NDc5NCwxOTQ3OTRdLFwibWFwcGVkXCIsWzI3MTE0XV0sW1sxOTQ3OTUsMTk0Nzk1XSxcIm1hcHBlZFwiLFsyNzMwNF1dLFtbMTk0Nzk2LDE5NDc5Nl0sXCJtYXBwZWRcIixbMTQ1MDU5XV0sW1sxOTQ3OTcsMTk0Nzk3XSxcIm1hcHBlZFwiLFsyNzM1NV1dLFtbMTk0Nzk4LDE5NDc5OF0sXCJtYXBwZWRcIixbMTUzODRdXSxbWzE5NDc5OSwxOTQ3OTldLFwibWFwcGVkXCIsWzI3NDI1XV0sW1sxOTQ4MDAsMTk0ODAwXSxcIm1hcHBlZFwiLFsxNDU1NzVdXSxbWzE5NDgwMSwxOTQ4MDFdLFwibWFwcGVkXCIsWzI3NDc2XV0sW1sxOTQ4MDIsMTk0ODAyXSxcIm1hcHBlZFwiLFsxNTQzOF1dLFtbMTk0ODAzLDE5NDgwM10sXCJtYXBwZWRcIixbMjc1MDZdXSxbWzE5NDgwNCwxOTQ4MDRdLFwibWFwcGVkXCIsWzI3NTUxXV0sW1sxOTQ4MDUsMTk0ODA1XSxcIm1hcHBlZFwiLFsyNzU3OF1dLFtbMTk0ODA2LDE5NDgwNl0sXCJtYXBwZWRcIixbMjc1NzldXSxbWzE5NDgwNywxOTQ4MDddLFwibWFwcGVkXCIsWzE0NjA2MV1dLFtbMTk0ODA4LDE5NDgwOF0sXCJtYXBwZWRcIixbMTM4NTA3XV0sW1sxOTQ4MDksMTk0ODA5XSxcIm1hcHBlZFwiLFsxNDYxNzBdXSxbWzE5NDgxMCwxOTQ4MTBdLFwibWFwcGVkXCIsWzI3NzI2XV0sW1sxOTQ4MTEsMTk0ODExXSxcIm1hcHBlZFwiLFsxNDY2MjBdXSxbWzE5NDgxMiwxOTQ4MTJdLFwibWFwcGVkXCIsWzI3ODM5XV0sW1sxOTQ4MTMsMTk0ODEzXSxcIm1hcHBlZFwiLFsyNzg1M11dLFtbMTk0ODE0LDE5NDgxNF0sXCJtYXBwZWRcIixbMjc3NTFdXSxbWzE5NDgxNSwxOTQ4MTVdLFwibWFwcGVkXCIsWzI3OTI2XV0sW1sxOTQ4MTYsMTk0ODE2XSxcIm1hcHBlZFwiLFsyNzk2Nl1dLFtbMTk0ODE3LDE5NDgxN10sXCJtYXBwZWRcIixbMjgwMjNdXSxbWzE5NDgxOCwxOTQ4MThdLFwibWFwcGVkXCIsWzI3OTY5XV0sW1sxOTQ4MTksMTk0ODE5XSxcIm1hcHBlZFwiLFsyODAwOV1dLFtbMTk0ODIwLDE5NDgyMF0sXCJtYXBwZWRcIixbMjgwMjRdXSxbWzE5NDgyMSwxOTQ4MjFdLFwibWFwcGVkXCIsWzI4MDM3XV0sW1sxOTQ4MjIsMTk0ODIyXSxcIm1hcHBlZFwiLFsxNDY3MThdXSxbWzE5NDgyMywxOTQ4MjNdLFwibWFwcGVkXCIsWzI3OTU2XV0sW1sxOTQ4MjQsMTk0ODI0XSxcIm1hcHBlZFwiLFsyODIwN11dLFtbMTk0ODI1LDE5NDgyNV0sXCJtYXBwZWRcIixbMjgyNzBdXSxbWzE5NDgyNiwxOTQ4MjZdLFwibWFwcGVkXCIsWzE1NjY3XV0sW1sxOTQ4MjcsMTk0ODI3XSxcIm1hcHBlZFwiLFsyODM2M11dLFtbMTk0ODI4LDE5NDgyOF0sXCJtYXBwZWRcIixbMjgzNTldXSxbWzE5NDgyOSwxOTQ4MjldLFwibWFwcGVkXCIsWzE0NzE1M11dLFtbMTk0ODMwLDE5NDgzMF0sXCJtYXBwZWRcIixbMjgxNTNdXSxbWzE5NDgzMSwxOTQ4MzFdLFwibWFwcGVkXCIsWzI4NTI2XV0sW1sxOTQ4MzIsMTk0ODMyXSxcIm1hcHBlZFwiLFsxNDcyOTRdXSxbWzE5NDgzMywxOTQ4MzNdLFwibWFwcGVkXCIsWzE0NzM0Ml1dLFtbMTk0ODM0LDE5NDgzNF0sXCJtYXBwZWRcIixbMjg2MTRdXSxbWzE5NDgzNSwxOTQ4MzVdLFwibWFwcGVkXCIsWzI4NzI5XV0sW1sxOTQ4MzYsMTk0ODM2XSxcIm1hcHBlZFwiLFsyODcwMl1dLFtbMTk0ODM3LDE5NDgzN10sXCJtYXBwZWRcIixbMjg2OTldXSxbWzE5NDgzOCwxOTQ4MzhdLFwibWFwcGVkXCIsWzE1NzY2XV0sW1sxOTQ4MzksMTk0ODM5XSxcIm1hcHBlZFwiLFsyODc0Nl1dLFtbMTk0ODQwLDE5NDg0MF0sXCJtYXBwZWRcIixbMjg3OTddXSxbWzE5NDg0MSwxOTQ4NDFdLFwibWFwcGVkXCIsWzI4NzkxXV0sW1sxOTQ4NDIsMTk0ODQyXSxcIm1hcHBlZFwiLFsyODg0NV1dLFtbMTk0ODQzLDE5NDg0M10sXCJtYXBwZWRcIixbMTMyMzg5XV0sW1sxOTQ4NDQsMTk0ODQ0XSxcIm1hcHBlZFwiLFsyODk5N11dLFtbMTk0ODQ1LDE5NDg0NV0sXCJtYXBwZWRcIixbMTQ4MDY3XV0sW1sxOTQ4NDYsMTk0ODQ2XSxcIm1hcHBlZFwiLFsyOTA4NF1dLFtbMTk0ODQ3LDE5NDg0N10sXCJkaXNhbGxvd2VkXCJdLFtbMTk0ODQ4LDE5NDg0OF0sXCJtYXBwZWRcIixbMjkyMjRdXSxbWzE5NDg0OSwxOTQ4NDldLFwibWFwcGVkXCIsWzI5MjM3XV0sW1sxOTQ4NTAsMTk0ODUwXSxcIm1hcHBlZFwiLFsyOTI2NF1dLFtbMTk0ODUxLDE5NDg1MV0sXCJtYXBwZWRcIixbMTQ5MDAwXV0sW1sxOTQ4NTIsMTk0ODUyXSxcIm1hcHBlZFwiLFsyOTMxMl1dLFtbMTk0ODUzLDE5NDg1M10sXCJtYXBwZWRcIixbMjkzMzNdXSxbWzE5NDg1NCwxOTQ4NTRdLFwibWFwcGVkXCIsWzE0OTMwMV1dLFtbMTk0ODU1LDE5NDg1NV0sXCJtYXBwZWRcIixbMTQ5NTI0XV0sW1sxOTQ4NTYsMTk0ODU2XSxcIm1hcHBlZFwiLFsyOTU2Ml1dLFtbMTk0ODU3LDE5NDg1N10sXCJtYXBwZWRcIixbMjk1NzldXSxbWzE5NDg1OCwxOTQ4NThdLFwibWFwcGVkXCIsWzE2MDQ0XV0sW1sxOTQ4NTksMTk0ODU5XSxcIm1hcHBlZFwiLFsyOTYwNV1dLFtbMTk0ODYwLDE5NDg2MV0sXCJtYXBwZWRcIixbMTYwNTZdXSxbWzE5NDg2MiwxOTQ4NjJdLFwibWFwcGVkXCIsWzI5NzY3XV0sW1sxOTQ4NjMsMTk0ODYzXSxcIm1hcHBlZFwiLFsyOTc4OF1dLFtbMTk0ODY0LDE5NDg2NF0sXCJtYXBwZWRcIixbMjk4MDldXSxbWzE5NDg2NSwxOTQ4NjVdLFwibWFwcGVkXCIsWzI5ODI5XV0sW1sxOTQ4NjYsMTk0ODY2XSxcIm1hcHBlZFwiLFsyOTg5OF1dLFtbMTk0ODY3LDE5NDg2N10sXCJtYXBwZWRcIixbMTYxNTVdXSxbWzE5NDg2OCwxOTQ4NjhdLFwibWFwcGVkXCIsWzI5OTg4XV0sW1sxOTQ4NjksMTk0ODY5XSxcIm1hcHBlZFwiLFsxNTA1ODJdXSxbWzE5NDg3MCwxOTQ4NzBdLFwibWFwcGVkXCIsWzMwMDE0XV0sW1sxOTQ4NzEsMTk0ODcxXSxcIm1hcHBlZFwiLFsxNTA2NzRdXSxbWzE5NDg3MiwxOTQ4NzJdLFwibWFwcGVkXCIsWzMwMDY0XV0sW1sxOTQ4NzMsMTk0ODczXSxcIm1hcHBlZFwiLFsxMzk2NzldXSxbWzE5NDg3NCwxOTQ4NzRdLFwibWFwcGVkXCIsWzMwMjI0XV0sW1sxOTQ4NzUsMTk0ODc1XSxcIm1hcHBlZFwiLFsxNTE0NTddXSxbWzE5NDg3NiwxOTQ4NzZdLFwibWFwcGVkXCIsWzE1MTQ4MF1dLFtbMTk0ODc3LDE5NDg3N10sXCJtYXBwZWRcIixbMTUxNjIwXV0sW1sxOTQ4NzgsMTk0ODc4XSxcIm1hcHBlZFwiLFsxNjM4MF1dLFtbMTk0ODc5LDE5NDg3OV0sXCJtYXBwZWRcIixbMTYzOTJdXSxbWzE5NDg4MCwxOTQ4ODBdLFwibWFwcGVkXCIsWzMwNDUyXV0sW1sxOTQ4ODEsMTk0ODgxXSxcIm1hcHBlZFwiLFsxNTE3OTVdXSxbWzE5NDg4MiwxOTQ4ODJdLFwibWFwcGVkXCIsWzE1MTc5NF1dLFtbMTk0ODgzLDE5NDg4M10sXCJtYXBwZWRcIixbMTUxODMzXV0sW1sxOTQ4ODQsMTk0ODg0XSxcIm1hcHBlZFwiLFsxNTE4NTldXSxbWzE5NDg4NSwxOTQ4ODVdLFwibWFwcGVkXCIsWzMwNDk0XV0sW1sxOTQ4ODYsMTk0ODg3XSxcIm1hcHBlZFwiLFszMDQ5NV1dLFtbMTk0ODg4LDE5NDg4OF0sXCJtYXBwZWRcIixbMzA1MzhdXSxbWzE5NDg4OSwxOTQ4ODldLFwibWFwcGVkXCIsWzE2NDQxXV0sW1sxOTQ4OTAsMTk0ODkwXSxcIm1hcHBlZFwiLFszMDYwM11dLFtbMTk0ODkxLDE5NDg5MV0sXCJtYXBwZWRcIixbMTY0NTRdXSxbWzE5NDg5MiwxOTQ4OTJdLFwibWFwcGVkXCIsWzE2NTM0XV0sW1sxOTQ4OTMsMTk0ODkzXSxcIm1hcHBlZFwiLFsxNTI2MDVdXSxbWzE5NDg5NCwxOTQ4OTRdLFwibWFwcGVkXCIsWzMwNzk4XV0sW1sxOTQ4OTUsMTk0ODk1XSxcIm1hcHBlZFwiLFszMDg2MF1dLFtbMTk0ODk2LDE5NDg5Nl0sXCJtYXBwZWRcIixbMzA5MjRdXSxbWzE5NDg5NywxOTQ4OTddLFwibWFwcGVkXCIsWzE2NjExXV0sW1sxOTQ4OTgsMTk0ODk4XSxcIm1hcHBlZFwiLFsxNTMxMjZdXSxbWzE5NDg5OSwxOTQ4OTldLFwibWFwcGVkXCIsWzMxMDYyXV0sW1sxOTQ5MDAsMTk0OTAwXSxcIm1hcHBlZFwiLFsxNTMyNDJdXSxbWzE5NDkwMSwxOTQ5MDFdLFwibWFwcGVkXCIsWzE1MzI4NV1dLFtbMTk0OTAyLDE5NDkwMl0sXCJtYXBwZWRcIixbMzExMTldXSxbWzE5NDkwMywxOTQ5MDNdLFwibWFwcGVkXCIsWzMxMjExXV0sW1sxOTQ5MDQsMTk0OTA0XSxcIm1hcHBlZFwiLFsxNjY4N11dLFtbMTk0OTA1LDE5NDkwNV0sXCJtYXBwZWRcIixbMzEyOTZdXSxbWzE5NDkwNiwxOTQ5MDZdLFwibWFwcGVkXCIsWzMxMzA2XV0sW1sxOTQ5MDcsMTk0OTA3XSxcIm1hcHBlZFwiLFszMTMxMV1dLFtbMTk0OTA4LDE5NDkwOF0sXCJtYXBwZWRcIixbMTUzOTgwXV0sW1sxOTQ5MDksMTk0OTEwXSxcIm1hcHBlZFwiLFsxNTQyNzldXSxbWzE5NDkxMSwxOTQ5MTFdLFwiZGlzYWxsb3dlZFwiXSxbWzE5NDkxMiwxOTQ5MTJdLFwibWFwcGVkXCIsWzE2ODk4XV0sW1sxOTQ5MTMsMTk0OTEzXSxcIm1hcHBlZFwiLFsxNTQ1MzldXSxbWzE5NDkxNCwxOTQ5MTRdLFwibWFwcGVkXCIsWzMxNjg2XV0sW1sxOTQ5MTUsMTk0OTE1XSxcIm1hcHBlZFwiLFszMTY4OV1dLFtbMTk0OTE2LDE5NDkxNl0sXCJtYXBwZWRcIixbMTY5MzVdXSxbWzE5NDkxNywxOTQ5MTddLFwibWFwcGVkXCIsWzE1NDc1Ml1dLFtbMTk0OTE4LDE5NDkxOF0sXCJtYXBwZWRcIixbMzE5NTRdXSxbWzE5NDkxOSwxOTQ5MTldLFwibWFwcGVkXCIsWzE3MDU2XV0sW1sxOTQ5MjAsMTk0OTIwXSxcIm1hcHBlZFwiLFszMTk3Nl1dLFtbMTk0OTIxLDE5NDkyMV0sXCJtYXBwZWRcIixbMzE5NzFdXSxbWzE5NDkyMiwxOTQ5MjJdLFwibWFwcGVkXCIsWzMyMDAwXV0sW1sxOTQ5MjMsMTk0OTIzXSxcIm1hcHBlZFwiLFsxNTU1MjZdXSxbWzE5NDkyNCwxOTQ5MjRdLFwibWFwcGVkXCIsWzMyMDk5XV0sW1sxOTQ5MjUsMTk0OTI1XSxcIm1hcHBlZFwiLFsxNzE1M11dLFtbMTk0OTI2LDE5NDkyNl0sXCJtYXBwZWRcIixbMzIxOTldXSxbWzE5NDkyNywxOTQ5MjddLFwibWFwcGVkXCIsWzMyMjU4XV0sW1sxOTQ5MjgsMTk0OTI4XSxcIm1hcHBlZFwiLFszMjMyNV1dLFtbMTk0OTI5LDE5NDkyOV0sXCJtYXBwZWRcIixbMTcyMDRdXSxbWzE5NDkzMCwxOTQ5MzBdLFwibWFwcGVkXCIsWzE1NjIwMF1dLFtbMTk0OTMxLDE5NDkzMV0sXCJtYXBwZWRcIixbMTU2MjMxXV0sW1sxOTQ5MzIsMTk0OTMyXSxcIm1hcHBlZFwiLFsxNzI0MV1dLFtbMTk0OTMzLDE5NDkzM10sXCJtYXBwZWRcIixbMTU2Mzc3XV0sW1sxOTQ5MzQsMTk0OTM0XSxcIm1hcHBlZFwiLFszMjYzNF1dLFtbMTk0OTM1LDE5NDkzNV0sXCJtYXBwZWRcIixbMTU2NDc4XV0sW1sxOTQ5MzYsMTk0OTM2XSxcIm1hcHBlZFwiLFszMjY2MV1dLFtbMTk0OTM3LDE5NDkzN10sXCJtYXBwZWRcIixbMzI3NjJdXSxbWzE5NDkzOCwxOTQ5MzhdLFwibWFwcGVkXCIsWzMyNzczXV0sW1sxOTQ5MzksMTk0OTM5XSxcIm1hcHBlZFwiLFsxNTY4OTBdXSxbWzE5NDk0MCwxOTQ5NDBdLFwibWFwcGVkXCIsWzE1Njk2M11dLFtbMTk0OTQxLDE5NDk0MV0sXCJtYXBwZWRcIixbMzI4NjRdXSxbWzE5NDk0MiwxOTQ5NDJdLFwibWFwcGVkXCIsWzE1NzA5Nl1dLFtbMTk0OTQzLDE5NDk0M10sXCJtYXBwZWRcIixbMzI4ODBdXSxbWzE5NDk0NCwxOTQ5NDRdLFwibWFwcGVkXCIsWzE0NDIyM11dLFtbMTk0OTQ1LDE5NDk0NV0sXCJtYXBwZWRcIixbMTczNjVdXSxbWzE5NDk0NiwxOTQ5NDZdLFwibWFwcGVkXCIsWzMyOTQ2XV0sW1sxOTQ5NDcsMTk0OTQ3XSxcIm1hcHBlZFwiLFszMzAyN11dLFtbMTk0OTQ4LDE5NDk0OF0sXCJtYXBwZWRcIixbMTc0MTldXSxbWzE5NDk0OSwxOTQ5NDldLFwibWFwcGVkXCIsWzMzMDg2XV0sW1sxOTQ5NTAsMTk0OTUwXSxcIm1hcHBlZFwiLFsyMzIyMV1dLFtbMTk0OTUxLDE5NDk1MV0sXCJtYXBwZWRcIixbMTU3NjA3XV0sW1sxOTQ5NTIsMTk0OTUyXSxcIm1hcHBlZFwiLFsxNTc2MjFdXSxbWzE5NDk1MywxOTQ5NTNdLFwibWFwcGVkXCIsWzE0NDI3NV1dLFtbMTk0OTU0LDE5NDk1NF0sXCJtYXBwZWRcIixbMTQ0Mjg0XV0sW1sxOTQ5NTUsMTk0OTU1XSxcIm1hcHBlZFwiLFszMzI4MV1dLFtbMTk0OTU2LDE5NDk1Nl0sXCJtYXBwZWRcIixbMzMyODRdXSxbWzE5NDk1NywxOTQ5NTddLFwibWFwcGVkXCIsWzM2NzY2XV0sW1sxOTQ5NTgsMTk0OTU4XSxcIm1hcHBlZFwiLFsxNzUxNV1dLFtbMTk0OTU5LDE5NDk1OV0sXCJtYXBwZWRcIixbMzM0MjVdXSxbWzE5NDk2MCwxOTQ5NjBdLFwibWFwcGVkXCIsWzMzNDE5XV0sW1sxOTQ5NjEsMTk0OTYxXSxcIm1hcHBlZFwiLFszMzQzN11dLFtbMTk0OTYyLDE5NDk2Ml0sXCJtYXBwZWRcIixbMjExNzFdXSxbWzE5NDk2MywxOTQ5NjNdLFwibWFwcGVkXCIsWzMzNDU3XV0sW1sxOTQ5NjQsMTk0OTY0XSxcIm1hcHBlZFwiLFszMzQ1OV1dLFtbMTk0OTY1LDE5NDk2NV0sXCJtYXBwZWRcIixbMzM0NjldXSxbWzE5NDk2NiwxOTQ5NjZdLFwibWFwcGVkXCIsWzMzNTEwXV0sW1sxOTQ5NjcsMTk0OTY3XSxcIm1hcHBlZFwiLFsxNTg1MjRdXSxbWzE5NDk2OCwxOTQ5NjhdLFwibWFwcGVkXCIsWzMzNTA5XV0sW1sxOTQ5NjksMTk0OTY5XSxcIm1hcHBlZFwiLFszMzU2NV1dLFtbMTk0OTcwLDE5NDk3MF0sXCJtYXBwZWRcIixbMzM2MzVdXSxbWzE5NDk3MSwxOTQ5NzFdLFwibWFwcGVkXCIsWzMzNzA5XV0sW1sxOTQ5NzIsMTk0OTcyXSxcIm1hcHBlZFwiLFszMzU3MV1dLFtbMTk0OTczLDE5NDk3M10sXCJtYXBwZWRcIixbMzM3MjVdXSxbWzE5NDk3NCwxOTQ5NzRdLFwibWFwcGVkXCIsWzMzNzY3XV0sW1sxOTQ5NzUsMTk0OTc1XSxcIm1hcHBlZFwiLFszMzg3OV1dLFtbMTk0OTc2LDE5NDk3Nl0sXCJtYXBwZWRcIixbMzM2MTldXSxbWzE5NDk3NywxOTQ5NzddLFwibWFwcGVkXCIsWzMzNzM4XV0sW1sxOTQ5NzgsMTk0OTc4XSxcIm1hcHBlZFwiLFszMzc0MF1dLFtbMTk0OTc5LDE5NDk3OV0sXCJtYXBwZWRcIixbMzM3NTZdXSxbWzE5NDk4MCwxOTQ5ODBdLFwibWFwcGVkXCIsWzE1ODc3NF1dLFtbMTk0OTgxLDE5NDk4MV0sXCJtYXBwZWRcIixbMTU5MDgzXV0sW1sxOTQ5ODIsMTk0OTgyXSxcIm1hcHBlZFwiLFsxNTg5MzNdXSxbWzE5NDk4MywxOTQ5ODNdLFwibWFwcGVkXCIsWzE3NzA3XV0sW1sxOTQ5ODQsMTk0OTg0XSxcIm1hcHBlZFwiLFszNDAzM11dLFtbMTk0OTg1LDE5NDk4NV0sXCJtYXBwZWRcIixbMzQwMzVdXSxbWzE5NDk4NiwxOTQ5ODZdLFwibWFwcGVkXCIsWzM0MDcwXV0sW1sxOTQ5ODcsMTk0OTg3XSxcIm1hcHBlZFwiLFsxNjA3MTRdXSxbWzE5NDk4OCwxOTQ5ODhdLFwibWFwcGVkXCIsWzM0MTQ4XV0sW1sxOTQ5ODksMTk0OTg5XSxcIm1hcHBlZFwiLFsxNTk1MzJdXSxbWzE5NDk5MCwxOTQ5OTBdLFwibWFwcGVkXCIsWzE3NzU3XV0sW1sxOTQ5OTEsMTk0OTkxXSxcIm1hcHBlZFwiLFsxNzc2MV1dLFtbMTk0OTkyLDE5NDk5Ml0sXCJtYXBwZWRcIixbMTU5NjY1XV0sW1sxOTQ5OTMsMTk0OTkzXSxcIm1hcHBlZFwiLFsxNTk5NTRdXSxbWzE5NDk5NCwxOTQ5OTRdLFwibWFwcGVkXCIsWzE3NzcxXV0sW1sxOTQ5OTUsMTk0OTk1XSxcIm1hcHBlZFwiLFszNDM4NF1dLFtbMTk0OTk2LDE5NDk5Nl0sXCJtYXBwZWRcIixbMzQzOTZdXSxbWzE5NDk5NywxOTQ5OTddLFwibWFwcGVkXCIsWzM0NDA3XV0sW1sxOTQ5OTgsMTk0OTk4XSxcIm1hcHBlZFwiLFszNDQwOV1dLFtbMTk0OTk5LDE5NDk5OV0sXCJtYXBwZWRcIixbMzQ0NzNdXSxbWzE5NTAwMCwxOTUwMDBdLFwibWFwcGVkXCIsWzM0NDQwXV0sW1sxOTUwMDEsMTk1MDAxXSxcIm1hcHBlZFwiLFszNDU3NF1dLFtbMTk1MDAyLDE5NTAwMl0sXCJtYXBwZWRcIixbMzQ1MzBdXSxbWzE5NTAwMywxOTUwMDNdLFwibWFwcGVkXCIsWzM0NjgxXV0sW1sxOTUwMDQsMTk1MDA0XSxcIm1hcHBlZFwiLFszNDYwMF1dLFtbMTk1MDA1LDE5NTAwNV0sXCJtYXBwZWRcIixbMzQ2NjddXSxbWzE5NTAwNiwxOTUwMDZdLFwibWFwcGVkXCIsWzM0Njk0XV0sW1sxOTUwMDcsMTk1MDA3XSxcImRpc2FsbG93ZWRcIl0sW1sxOTUwMDgsMTk1MDA4XSxcIm1hcHBlZFwiLFszNDc4NV1dLFtbMTk1MDA5LDE5NTAwOV0sXCJtYXBwZWRcIixbMzQ4MTddXSxbWzE5NTAxMCwxOTUwMTBdLFwibWFwcGVkXCIsWzE3OTEzXV0sW1sxOTUwMTEsMTk1MDExXSxcIm1hcHBlZFwiLFszNDkxMl1dLFtbMTk1MDEyLDE5NTAxMl0sXCJtYXBwZWRcIixbMzQ5MTVdXSxbWzE5NTAxMywxOTUwMTNdLFwibWFwcGVkXCIsWzE2MTM4M11dLFtbMTk1MDE0LDE5NTAxNF0sXCJtYXBwZWRcIixbMzUwMzFdXSxbWzE5NTAxNSwxOTUwMTVdLFwibWFwcGVkXCIsWzM1MDM4XV0sW1sxOTUwMTYsMTk1MDE2XSxcIm1hcHBlZFwiLFsxNzk3M11dLFtbMTk1MDE3LDE5NTAxN10sXCJtYXBwZWRcIixbMzUwNjZdXSxbWzE5NTAxOCwxOTUwMThdLFwibWFwcGVkXCIsWzEzNDk5XV0sW1sxOTUwMTksMTk1MDE5XSxcIm1hcHBlZFwiLFsxNjE5NjZdXSxbWzE5NTAyMCwxOTUwMjBdLFwibWFwcGVkXCIsWzE2MjE1MF1dLFtbMTk1MDIxLDE5NTAyMV0sXCJtYXBwZWRcIixbMTgxMTBdXSxbWzE5NTAyMiwxOTUwMjJdLFwibWFwcGVkXCIsWzE4MTE5XV0sW1sxOTUwMjMsMTk1MDIzXSxcIm1hcHBlZFwiLFszNTQ4OF1dLFtbMTk1MDI0LDE5NTAyNF0sXCJtYXBwZWRcIixbMzU1NjVdXSxbWzE5NTAyNSwxOTUwMjVdLFwibWFwcGVkXCIsWzM1NzIyXV0sW1sxOTUwMjYsMTk1MDI2XSxcIm1hcHBlZFwiLFszNTkyNV1dLFtbMTk1MDI3LDE5NTAyN10sXCJtYXBwZWRcIixbMTYyOTg0XV0sW1sxOTUwMjgsMTk1MDI4XSxcIm1hcHBlZFwiLFszNjAxMV1dLFtbMTk1MDI5LDE5NTAyOV0sXCJtYXBwZWRcIixbMzYwMzNdXSxbWzE5NTAzMCwxOTUwMzBdLFwibWFwcGVkXCIsWzM2MTIzXV0sW1sxOTUwMzEsMTk1MDMxXSxcIm1hcHBlZFwiLFszNjIxNV1dLFtbMTk1MDMyLDE5NTAzMl0sXCJtYXBwZWRcIixbMTYzNjMxXV0sW1sxOTUwMzMsMTk1MDMzXSxcIm1hcHBlZFwiLFsxMzMxMjRdXSxbWzE5NTAzNCwxOTUwMzRdLFwibWFwcGVkXCIsWzM2Mjk5XV0sW1sxOTUwMzUsMTk1MDM1XSxcIm1hcHBlZFwiLFszNjI4NF1dLFtbMTk1MDM2LDE5NTAzNl0sXCJtYXBwZWRcIixbMzYzMzZdXSxbWzE5NTAzNywxOTUwMzddLFwibWFwcGVkXCIsWzEzMzM0Ml1dLFtbMTk1MDM4LDE5NTAzOF0sXCJtYXBwZWRcIixbMzY1NjRdXSxbWzE5NTAzOSwxOTUwMzldLFwibWFwcGVkXCIsWzM2NjY0XV0sW1sxOTUwNDAsMTk1MDQwXSxcIm1hcHBlZFwiLFsxNjUzMzBdXSxbWzE5NTA0MSwxOTUwNDFdLFwibWFwcGVkXCIsWzE2NTM1N11dLFtbMTk1MDQyLDE5NTA0Ml0sXCJtYXBwZWRcIixbMzcwMTJdXSxbWzE5NTA0MywxOTUwNDNdLFwibWFwcGVkXCIsWzM3MTA1XV0sW1sxOTUwNDQsMTk1MDQ0XSxcIm1hcHBlZFwiLFszNzEzN11dLFtbMTk1MDQ1LDE5NTA0NV0sXCJtYXBwZWRcIixbMTY1Njc4XV0sW1sxOTUwNDYsMTk1MDQ2XSxcIm1hcHBlZFwiLFszNzE0N11dLFtbMTk1MDQ3LDE5NTA0N10sXCJtYXBwZWRcIixbMzc0MzJdXSxbWzE5NTA0OCwxOTUwNDhdLFwibWFwcGVkXCIsWzM3NTkxXV0sW1sxOTUwNDksMTk1MDQ5XSxcIm1hcHBlZFwiLFszNzU5Ml1dLFtbMTk1MDUwLDE5NTA1MF0sXCJtYXBwZWRcIixbMzc1MDBdXSxbWzE5NTA1MSwxOTUwNTFdLFwibWFwcGVkXCIsWzM3ODgxXV0sW1sxOTUwNTIsMTk1MDUyXSxcIm1hcHBlZFwiLFszNzkwOV1dLFtbMTk1MDUzLDE5NTA1M10sXCJtYXBwZWRcIixbMTY2OTA2XV0sW1sxOTUwNTQsMTk1MDU0XSxcIm1hcHBlZFwiLFszODI4M11dLFtbMTk1MDU1LDE5NTA1NV0sXCJtYXBwZWRcIixbMTg4MzddXSxbWzE5NTA1NiwxOTUwNTZdLFwibWFwcGVkXCIsWzM4MzI3XV0sW1sxOTUwNTcsMTk1MDU3XSxcIm1hcHBlZFwiLFsxNjcyODddXSxbWzE5NTA1OCwxOTUwNThdLFwibWFwcGVkXCIsWzE4OTE4XV0sW1sxOTUwNTksMTk1MDU5XSxcIm1hcHBlZFwiLFszODU5NV1dLFtbMTk1MDYwLDE5NTA2MF0sXCJtYXBwZWRcIixbMjM5ODZdXSxbWzE5NTA2MSwxOTUwNjFdLFwibWFwcGVkXCIsWzM4NjkxXV0sW1sxOTUwNjIsMTk1MDYyXSxcIm1hcHBlZFwiLFsxNjgyNjFdXSxbWzE5NTA2MywxOTUwNjNdLFwibWFwcGVkXCIsWzE2ODQ3NF1dLFtbMTk1MDY0LDE5NTA2NF0sXCJtYXBwZWRcIixbMTkwNTRdXSxbWzE5NTA2NSwxOTUwNjVdLFwibWFwcGVkXCIsWzE5MDYyXV0sW1sxOTUwNjYsMTk1MDY2XSxcIm1hcHBlZFwiLFszODg4MF1dLFtbMTk1MDY3LDE5NTA2N10sXCJtYXBwZWRcIixbMTY4OTcwXV0sW1sxOTUwNjgsMTk1MDY4XSxcIm1hcHBlZFwiLFsxOTEyMl1dLFtbMTk1MDY5LDE5NTA2OV0sXCJtYXBwZWRcIixbMTY5MTEwXV0sW1sxOTUwNzAsMTk1MDcxXSxcIm1hcHBlZFwiLFszODkyM11dLFtbMTk1MDcyLDE5NTA3Ml0sXCJtYXBwZWRcIixbMzg5NTNdXSxbWzE5NTA3MywxOTUwNzNdLFwibWFwcGVkXCIsWzE2OTM5OF1dLFtbMTk1MDc0LDE5NTA3NF0sXCJtYXBwZWRcIixbMzkxMzhdXSxbWzE5NTA3NSwxOTUwNzVdLFwibWFwcGVkXCIsWzE5MjUxXV0sW1sxOTUwNzYsMTk1MDc2XSxcIm1hcHBlZFwiLFszOTIwOV1dLFtbMTk1MDc3LDE5NTA3N10sXCJtYXBwZWRcIixbMzkzMzVdXSxbWzE5NTA3OCwxOTUwNzhdLFwibWFwcGVkXCIsWzM5MzYyXV0sW1sxOTUwNzksMTk1MDc5XSxcIm1hcHBlZFwiLFszOTQyMl1dLFtbMTk1MDgwLDE5NTA4MF0sXCJtYXBwZWRcIixbMTk0MDZdXSxbWzE5NTA4MSwxOTUwODFdLFwibWFwcGVkXCIsWzE3MDgwMF1dLFtbMTk1MDgyLDE5NTA4Ml0sXCJtYXBwZWRcIixbMzk2OThdXSxbWzE5NTA4MywxOTUwODNdLFwibWFwcGVkXCIsWzQwMDAwXV0sW1sxOTUwODQsMTk1MDg0XSxcIm1hcHBlZFwiLFs0MDE4OV1dLFtbMTk1MDg1LDE5NTA4NV0sXCJtYXBwZWRcIixbMTk2NjJdXSxbWzE5NTA4NiwxOTUwODZdLFwibWFwcGVkXCIsWzE5NjkzXV0sW1sxOTUwODcsMTk1MDg3XSxcIm1hcHBlZFwiLFs0MDI5NV1dLFtbMTk1MDg4LDE5NTA4OF0sXCJtYXBwZWRcIixbMTcyMjM4XV0sW1sxOTUwODksMTk1MDg5XSxcIm1hcHBlZFwiLFsxOTcwNF1dLFtbMTk1MDkwLDE5NTA5MF0sXCJtYXBwZWRcIixbMTcyMjkzXV0sW1sxOTUwOTEsMTk1MDkxXSxcIm1hcHBlZFwiLFsxNzI1NThdXSxbWzE5NTA5MiwxOTUwOTJdLFwibWFwcGVkXCIsWzE3MjY4OV1dLFtbMTk1MDkzLDE5NTA5M10sXCJtYXBwZWRcIixbNDA2MzVdXSxbWzE5NTA5NCwxOTUwOTRdLFwibWFwcGVkXCIsWzE5Nzk4XV0sW1sxOTUwOTUsMTk1MDk1XSxcIm1hcHBlZFwiLFs0MDY5N11dLFtbMTk1MDk2LDE5NTA5Nl0sXCJtYXBwZWRcIixbNDA3MDJdXSxbWzE5NTA5NywxOTUwOTddLFwibWFwcGVkXCIsWzQwNzA5XV0sW1sxOTUwOTgsMTk1MDk4XSxcIm1hcHBlZFwiLFs0MDcxOV1dLFtbMTk1MDk5LDE5NTA5OV0sXCJtYXBwZWRcIixbNDA3MjZdXSxbWzE5NTEwMCwxOTUxMDBdLFwibWFwcGVkXCIsWzQwNzYzXV0sW1sxOTUxMDEsMTk1MTAxXSxcIm1hcHBlZFwiLFsxNzM1NjhdXSxbWzE5NTEwMiwxOTY2MDVdLFwiZGlzYWxsb3dlZFwiXSxbWzE5NjYwNiwxOTY2MDddLFwiZGlzYWxsb3dlZFwiXSxbWzE5NjYwOCwyNjIxNDFdLFwiZGlzYWxsb3dlZFwiXSxbWzI2MjE0MiwyNjIxNDNdLFwiZGlzYWxsb3dlZFwiXSxbWzI2MjE0NCwzMjc2NzddLFwiZGlzYWxsb3dlZFwiXSxbWzMyNzY3OCwzMjc2NzldLFwiZGlzYWxsb3dlZFwiXSxbWzMyNzY4MCwzOTMyMTNdLFwiZGlzYWxsb3dlZFwiXSxbWzM5MzIxNCwzOTMyMTVdLFwiZGlzYWxsb3dlZFwiXSxbWzM5MzIxNiw0NTg3NDldLFwiZGlzYWxsb3dlZFwiXSxbWzQ1ODc1MCw0NTg3NTFdLFwiZGlzYWxsb3dlZFwiXSxbWzQ1ODc1Miw1MjQyODVdLFwiZGlzYWxsb3dlZFwiXSxbWzUyNDI4Niw1MjQyODddLFwiZGlzYWxsb3dlZFwiXSxbWzUyNDI4OCw1ODk4MjFdLFwiZGlzYWxsb3dlZFwiXSxbWzU4OTgyMiw1ODk4MjNdLFwiZGlzYWxsb3dlZFwiXSxbWzU4OTgyNCw2NTUzNTddLFwiZGlzYWxsb3dlZFwiXSxbWzY1NTM1OCw2NTUzNTldLFwiZGlzYWxsb3dlZFwiXSxbWzY1NTM2MCw3MjA4OTNdLFwiZGlzYWxsb3dlZFwiXSxbWzcyMDg5NCw3MjA4OTVdLFwiZGlzYWxsb3dlZFwiXSxbWzcyMDg5Niw3ODY0MjldLFwiZGlzYWxsb3dlZFwiXSxbWzc4NjQzMCw3ODY0MzFdLFwiZGlzYWxsb3dlZFwiXSxbWzc4NjQzMiw4NTE5NjVdLFwiZGlzYWxsb3dlZFwiXSxbWzg1MTk2Niw4NTE5NjddLFwiZGlzYWxsb3dlZFwiXSxbWzg1MTk2OCw5MTc1MDFdLFwiZGlzYWxsb3dlZFwiXSxbWzkxNzUwMiw5MTc1MDNdLFwiZGlzYWxsb3dlZFwiXSxbWzkxNzUwNCw5MTc1MDRdLFwiZGlzYWxsb3dlZFwiXSxbWzkxNzUwNSw5MTc1MDVdLFwiZGlzYWxsb3dlZFwiXSxbWzkxNzUwNiw5MTc1MzVdLFwiZGlzYWxsb3dlZFwiXSxbWzkxNzUzNiw5MTc2MzFdLFwiZGlzYWxsb3dlZFwiXSxbWzkxNzYzMiw5MTc3NTldLFwiZGlzYWxsb3dlZFwiXSxbWzkxNzc2MCw5MTc5OTldLFwiaWdub3JlZFwiXSxbWzkxODAwMCw5ODMwMzddLFwiZGlzYWxsb3dlZFwiXSxbWzk4MzAzOCw5ODMwMzldLFwiZGlzYWxsb3dlZFwiXSxbWzk4MzA0MCwxMDQ4NTczXSxcImRpc2FsbG93ZWRcIl0sW1sxMDQ4NTc0LDEwNDg1NzVdLFwiZGlzYWxsb3dlZFwiXSxbWzEwNDg1NzYsMTExNDEwOV0sXCJkaXNhbGxvd2VkXCJdLFtbMTExNDExMCwxMTE0MTExXSxcImRpc2FsbG93ZWRcIl1dIiwgIlwidXNlIHN0cmljdFwiO1xuXG52YXIgcHVueWNvZGUgPSByZXF1aXJlKFwicHVueWNvZGVcIik7XG52YXIgbWFwcGluZ1RhYmxlID0gcmVxdWlyZShcIi4vbGliL21hcHBpbmdUYWJsZS5qc29uXCIpO1xuXG52YXIgUFJPQ0VTU0lOR19PUFRJT05TID0ge1xuICBUUkFOU0lUSU9OQUw6IDAsXG4gIE5PTlRSQU5TSVRJT05BTDogMVxufTtcblxuZnVuY3Rpb24gbm9ybWFsaXplKHN0cikgeyAvLyBmaXggYnVnIGluIHY4XG4gIHJldHVybiBzdHIuc3BsaXQoJ1xcdTAwMDAnKS5tYXAoZnVuY3Rpb24gKHMpIHsgcmV0dXJuIHMubm9ybWFsaXplKCdORkMnKTsgfSkuam9pbignXFx1MDAwMCcpO1xufVxuXG5mdW5jdGlvbiBmaW5kU3RhdHVzKHZhbCkge1xuICB2YXIgc3RhcnQgPSAwO1xuICB2YXIgZW5kID0gbWFwcGluZ1RhYmxlLmxlbmd0aCAtIDE7XG5cbiAgd2hpbGUgKHN0YXJ0IDw9IGVuZCkge1xuICAgIHZhciBtaWQgPSBNYXRoLmZsb29yKChzdGFydCArIGVuZCkgLyAyKTtcblxuICAgIHZhciB0YXJnZXQgPSBtYXBwaW5nVGFibGVbbWlkXTtcbiAgICBpZiAodGFyZ2V0WzBdWzBdIDw9IHZhbCAmJiB0YXJnZXRbMF1bMV0gPj0gdmFsKSB7XG4gICAgICByZXR1cm4gdGFyZ2V0O1xuICAgIH0gZWxzZSBpZiAodGFyZ2V0WzBdWzBdID4gdmFsKSB7XG4gICAgICBlbmQgPSBtaWQgLSAxO1xuICAgIH0gZWxzZSB7XG4gICAgICBzdGFydCA9IG1pZCArIDE7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG51bGw7XG59XG5cbnZhciByZWdleEFzdHJhbFN5bWJvbHMgPSAvW1xcdUQ4MDAtXFx1REJGRl1bXFx1REMwMC1cXHVERkZGXS9nO1xuXG5mdW5jdGlvbiBjb3VudFN5bWJvbHMoc3RyaW5nKSB7XG4gIHJldHVybiBzdHJpbmdcbiAgICAvLyByZXBsYWNlIGV2ZXJ5IHN1cnJvZ2F0ZSBwYWlyIHdpdGggYSBCTVAgc3ltYm9sXG4gICAgLnJlcGxhY2UocmVnZXhBc3RyYWxTeW1ib2xzLCAnXycpXG4gICAgLy8gdGhlbiBnZXQgdGhlIGxlbmd0aFxuICAgIC5sZW5ndGg7XG59XG5cbmZ1bmN0aW9uIG1hcENoYXJzKGRvbWFpbl9uYW1lLCB1c2VTVEQzLCBwcm9jZXNzaW5nX29wdGlvbikge1xuICB2YXIgaGFzRXJyb3IgPSBmYWxzZTtcbiAgdmFyIHByb2Nlc3NlZCA9IFwiXCI7XG5cbiAgdmFyIGxlbiA9IGNvdW50U3ltYm9scyhkb21haW5fbmFtZSk7XG4gIGZvciAodmFyIGkgPSAwOyBpIDwgbGVuOyArK2kpIHtcbiAgICB2YXIgY29kZVBvaW50ID0gZG9tYWluX25hbWUuY29kZVBvaW50QXQoaSk7XG4gICAgdmFyIHN0YXR1cyA9IGZpbmRTdGF0dXMoY29kZVBvaW50KTtcblxuICAgIHN3aXRjaCAoc3RhdHVzWzFdKSB7XG4gICAgICBjYXNlIFwiZGlzYWxsb3dlZFwiOlxuICAgICAgICBoYXNFcnJvciA9IHRydWU7XG4gICAgICAgIHByb2Nlc3NlZCArPSBTdHJpbmcuZnJvbUNvZGVQb2ludChjb2RlUG9pbnQpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgXCJpZ25vcmVkXCI6XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBcIm1hcHBlZFwiOlxuICAgICAgICBwcm9jZXNzZWQgKz0gU3RyaW5nLmZyb21Db2RlUG9pbnQuYXBwbHkoU3RyaW5nLCBzdGF0dXNbMl0pO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgXCJkZXZpYXRpb25cIjpcbiAgICAgICAgaWYgKHByb2Nlc3Npbmdfb3B0aW9uID09PSBQUk9DRVNTSU5HX09QVElPTlMuVFJBTlNJVElPTkFMKSB7XG4gICAgICAgICAgcHJvY2Vzc2VkICs9IFN0cmluZy5mcm9tQ29kZVBvaW50LmFwcGx5KFN0cmluZywgc3RhdHVzWzJdKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBwcm9jZXNzZWQgKz0gU3RyaW5nLmZyb21Db2RlUG9pbnQoY29kZVBvaW50KTtcbiAgICAgICAgfVxuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgXCJ2YWxpZFwiOlxuICAgICAgICBwcm9jZXNzZWQgKz0gU3RyaW5nLmZyb21Db2RlUG9pbnQoY29kZVBvaW50KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIFwiZGlzYWxsb3dlZF9TVEQzX21hcHBlZFwiOlxuICAgICAgICBpZiAodXNlU1REMykge1xuICAgICAgICAgIGhhc0Vycm9yID0gdHJ1ZTtcbiAgICAgICAgICBwcm9jZXNzZWQgKz0gU3RyaW5nLmZyb21Db2RlUG9pbnQoY29kZVBvaW50KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBwcm9jZXNzZWQgKz0gU3RyaW5nLmZyb21Db2RlUG9pbnQuYXBwbHkoU3RyaW5nLCBzdGF0dXNbMl0pO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBcImRpc2FsbG93ZWRfU1REM192YWxpZFwiOlxuICAgICAgICBpZiAodXNlU1REMykge1xuICAgICAgICAgIGhhc0Vycm9yID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHByb2Nlc3NlZCArPSBTdHJpbmcuZnJvbUNvZGVQb2ludChjb2RlUG9pbnQpO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICByZXR1cm4ge1xuICAgIHN0cmluZzogcHJvY2Vzc2VkLFxuICAgIGVycm9yOiBoYXNFcnJvclxuICB9O1xufVxuXG52YXIgY29tYmluaW5nTWFya3NSZWdleCA9IC9bXFx1MDMwMC1cXHUwMzZGXFx1MDQ4My1cXHUwNDg5XFx1MDU5MS1cXHUwNUJEXFx1MDVCRlxcdTA1QzFcXHUwNUMyXFx1MDVDNFxcdTA1QzVcXHUwNUM3XFx1MDYxMC1cXHUwNjFBXFx1MDY0Qi1cXHUwNjVGXFx1MDY3MFxcdTA2RDYtXFx1MDZEQ1xcdTA2REYtXFx1MDZFNFxcdTA2RTdcXHUwNkU4XFx1MDZFQS1cXHUwNkVEXFx1MDcxMVxcdTA3MzAtXFx1MDc0QVxcdTA3QTYtXFx1MDdCMFxcdTA3RUItXFx1MDdGM1xcdTA4MTYtXFx1MDgxOVxcdTA4MUItXFx1MDgyM1xcdTA4MjUtXFx1MDgyN1xcdTA4MjktXFx1MDgyRFxcdTA4NTktXFx1MDg1QlxcdTA4RTQtXFx1MDkwM1xcdTA5M0EtXFx1MDkzQ1xcdTA5M0UtXFx1MDk0RlxcdTA5NTEtXFx1MDk1N1xcdTA5NjJcXHUwOTYzXFx1MDk4MS1cXHUwOTgzXFx1MDlCQ1xcdTA5QkUtXFx1MDlDNFxcdTA5QzdcXHUwOUM4XFx1MDlDQi1cXHUwOUNEXFx1MDlEN1xcdTA5RTJcXHUwOUUzXFx1MEEwMS1cXHUwQTAzXFx1MEEzQ1xcdTBBM0UtXFx1MEE0MlxcdTBBNDdcXHUwQTQ4XFx1MEE0Qi1cXHUwQTREXFx1MEE1MVxcdTBBNzBcXHUwQTcxXFx1MEE3NVxcdTBBODEtXFx1MEE4M1xcdTBBQkNcXHUwQUJFLVxcdTBBQzVcXHUwQUM3LVxcdTBBQzlcXHUwQUNCLVxcdTBBQ0RcXHUwQUUyXFx1MEFFM1xcdTBCMDEtXFx1MEIwM1xcdTBCM0NcXHUwQjNFLVxcdTBCNDRcXHUwQjQ3XFx1MEI0OFxcdTBCNEItXFx1MEI0RFxcdTBCNTZcXHUwQjU3XFx1MEI2MlxcdTBCNjNcXHUwQjgyXFx1MEJCRS1cXHUwQkMyXFx1MEJDNi1cXHUwQkM4XFx1MEJDQS1cXHUwQkNEXFx1MEJEN1xcdTBDMDAtXFx1MEMwM1xcdTBDM0UtXFx1MEM0NFxcdTBDNDYtXFx1MEM0OFxcdTBDNEEtXFx1MEM0RFxcdTBDNTVcXHUwQzU2XFx1MEM2MlxcdTBDNjNcXHUwQzgxLVxcdTBDODNcXHUwQ0JDXFx1MENCRS1cXHUwQ0M0XFx1MENDNi1cXHUwQ0M4XFx1MENDQS1cXHUwQ0NEXFx1MENENVxcdTBDRDZcXHUwQ0UyXFx1MENFM1xcdTBEMDEtXFx1MEQwM1xcdTBEM0UtXFx1MEQ0NFxcdTBENDYtXFx1MEQ0OFxcdTBENEEtXFx1MEQ0RFxcdTBENTdcXHUwRDYyXFx1MEQ2M1xcdTBEODJcXHUwRDgzXFx1MERDQVxcdTBEQ0YtXFx1MERENFxcdTBERDZcXHUwREQ4LVxcdTBEREZcXHUwREYyXFx1MERGM1xcdTBFMzFcXHUwRTM0LVxcdTBFM0FcXHUwRTQ3LVxcdTBFNEVcXHUwRUIxXFx1MEVCNC1cXHUwRUI5XFx1MEVCQlxcdTBFQkNcXHUwRUM4LVxcdTBFQ0RcXHUwRjE4XFx1MEYxOVxcdTBGMzVcXHUwRjM3XFx1MEYzOVxcdTBGM0VcXHUwRjNGXFx1MEY3MS1cXHUwRjg0XFx1MEY4NlxcdTBGODdcXHUwRjhELVxcdTBGOTdcXHUwRjk5LVxcdTBGQkNcXHUwRkM2XFx1MTAyQi1cXHUxMDNFXFx1MTA1Ni1cXHUxMDU5XFx1MTA1RS1cXHUxMDYwXFx1MTA2Mi1cXHUxMDY0XFx1MTA2Ny1cXHUxMDZEXFx1MTA3MS1cXHUxMDc0XFx1MTA4Mi1cXHUxMDhEXFx1MTA4RlxcdTEwOUEtXFx1MTA5RFxcdTEzNUQtXFx1MTM1RlxcdTE3MTItXFx1MTcxNFxcdTE3MzItXFx1MTczNFxcdTE3NTJcXHUxNzUzXFx1MTc3MlxcdTE3NzNcXHUxN0I0LVxcdTE3RDNcXHUxN0REXFx1MTgwQi1cXHUxODBEXFx1MThBOVxcdTE5MjAtXFx1MTkyQlxcdTE5MzAtXFx1MTkzQlxcdTE5QjAtXFx1MTlDMFxcdTE5QzhcXHUxOUM5XFx1MUExNy1cXHUxQTFCXFx1MUE1NS1cXHUxQTVFXFx1MUE2MC1cXHUxQTdDXFx1MUE3RlxcdTFBQjAtXFx1MUFCRVxcdTFCMDAtXFx1MUIwNFxcdTFCMzQtXFx1MUI0NFxcdTFCNkItXFx1MUI3M1xcdTFCODAtXFx1MUI4MlxcdTFCQTEtXFx1MUJBRFxcdTFCRTYtXFx1MUJGM1xcdTFDMjQtXFx1MUMzN1xcdTFDRDAtXFx1MUNEMlxcdTFDRDQtXFx1MUNFOFxcdTFDRURcXHUxQ0YyLVxcdTFDRjRcXHUxQ0Y4XFx1MUNGOVxcdTFEQzAtXFx1MURGNVxcdTFERkMtXFx1MURGRlxcdTIwRDAtXFx1MjBGMFxcdTJDRUYtXFx1MkNGMVxcdTJEN0ZcXHUyREUwLVxcdTJERkZcXHUzMDJBLVxcdTMwMkZcXHUzMDk5XFx1MzA5QVxcdUE2NkYtXFx1QTY3MlxcdUE2NzQtXFx1QTY3RFxcdUE2OUZcXHVBNkYwXFx1QTZGMVxcdUE4MDJcXHVBODA2XFx1QTgwQlxcdUE4MjMtXFx1QTgyN1xcdUE4ODBcXHVBODgxXFx1QThCNC1cXHVBOEM0XFx1QThFMC1cXHVBOEYxXFx1QTkyNi1cXHVBOTJEXFx1QTk0Ny1cXHVBOTUzXFx1QTk4MC1cXHVBOTgzXFx1QTlCMy1cXHVBOUMwXFx1QTlFNVxcdUFBMjktXFx1QUEzNlxcdUFBNDNcXHVBQTRDXFx1QUE0RFxcdUFBN0ItXFx1QUE3RFxcdUFBQjBcXHVBQUIyLVxcdUFBQjRcXHVBQUI3XFx1QUFCOFxcdUFBQkVcXHVBQUJGXFx1QUFDMVxcdUFBRUItXFx1QUFFRlxcdUFBRjVcXHVBQUY2XFx1QUJFMy1cXHVBQkVBXFx1QUJFQ1xcdUFCRURcXHVGQjFFXFx1RkUwMC1cXHVGRTBGXFx1RkUyMC1cXHVGRTJEXXxcXHVEODAwW1xcdURERkRcXHVERUUwXFx1REY3Ni1cXHVERjdBXXxcXHVEODAyW1xcdURFMDEtXFx1REUwM1xcdURFMDVcXHVERTA2XFx1REUwQy1cXHVERTBGXFx1REUzOC1cXHVERTNBXFx1REUzRlxcdURFRTVcXHVERUU2XXxcXHVEODA0W1xcdURDMDAtXFx1REMwMlxcdURDMzgtXFx1REM0NlxcdURDN0YtXFx1REM4MlxcdURDQjAtXFx1RENCQVxcdUREMDAtXFx1REQwMlxcdUREMjctXFx1REQzNFxcdURENzNcXHVERDgwLVxcdUREODJcXHVEREIzLVxcdUREQzBcXHVERTJDLVxcdURFMzdcXHVERURGLVxcdURFRUFcXHVERjAxLVxcdURGMDNcXHVERjNDXFx1REYzRS1cXHVERjQ0XFx1REY0N1xcdURGNDhcXHVERjRCLVxcdURGNERcXHVERjU3XFx1REY2MlxcdURGNjNcXHVERjY2LVxcdURGNkNcXHVERjcwLVxcdURGNzRdfFxcdUQ4MDVbXFx1RENCMC1cXHVEQ0MzXFx1RERBRi1cXHVEREI1XFx1RERCOC1cXHVEREMwXFx1REUzMC1cXHVERTQwXFx1REVBQi1cXHVERUI3XXxcXHVEODFBW1xcdURFRjAtXFx1REVGNFxcdURGMzAtXFx1REYzNl18XFx1RDgxQltcXHVERjUxLVxcdURGN0VcXHVERjhGLVxcdURGOTJdfFxcdUQ4MkZbXFx1REM5RFxcdURDOUVdfFxcdUQ4MzRbXFx1REQ2NS1cXHVERDY5XFx1REQ2RC1cXHVERDcyXFx1REQ3Qi1cXHVERDgyXFx1REQ4NS1cXHVERDhCXFx1RERBQS1cXHVEREFEXFx1REU0Mi1cXHVERTQ0XXxcXHVEODNBW1xcdURDRDAtXFx1RENENl18XFx1REI0MFtcXHVERDAwLVxcdURERUZdLztcblxuZnVuY3Rpb24gdmFsaWRhdGVMYWJlbChsYWJlbCwgcHJvY2Vzc2luZ19vcHRpb24pIHtcbiAgaWYgKGxhYmVsLnN1YnN0cigwLCA0KSA9PT0gXCJ4bi0tXCIpIHtcbiAgICBsYWJlbCA9IHB1bnljb2RlLnRvVW5pY29kZShsYWJlbCk7XG4gICAgcHJvY2Vzc2luZ19vcHRpb24gPSBQUk9DRVNTSU5HX09QVElPTlMuTk9OVFJBTlNJVElPTkFMO1xuICB9XG5cbiAgdmFyIGVycm9yID0gZmFsc2U7XG5cbiAgaWYgKG5vcm1hbGl6ZShsYWJlbCkgIT09IGxhYmVsIHx8XG4gICAgICAobGFiZWxbM10gPT09IFwiLVwiICYmIGxhYmVsWzRdID09PSBcIi1cIikgfHxcbiAgICAgIGxhYmVsWzBdID09PSBcIi1cIiB8fCBsYWJlbFtsYWJlbC5sZW5ndGggLSAxXSA9PT0gXCItXCIgfHxcbiAgICAgIGxhYmVsLmluZGV4T2YoXCIuXCIpICE9PSAtMSB8fFxuICAgICAgbGFiZWwuc2VhcmNoKGNvbWJpbmluZ01hcmtzUmVnZXgpID09PSAwKSB7XG4gICAgZXJyb3IgPSB0cnVlO1xuICB9XG5cbiAgdmFyIGxlbiA9IGNvdW50U3ltYm9scyhsYWJlbCk7XG4gIGZvciAodmFyIGkgPSAwOyBpIDwgbGVuOyArK2kpIHtcbiAgICB2YXIgc3RhdHVzID0gZmluZFN0YXR1cyhsYWJlbC5jb2RlUG9pbnRBdChpKSk7XG4gICAgaWYgKChwcm9jZXNzaW5nID09PSBQUk9DRVNTSU5HX09QVElPTlMuVFJBTlNJVElPTkFMICYmIHN0YXR1c1sxXSAhPT0gXCJ2YWxpZFwiKSB8fFxuICAgICAgICAocHJvY2Vzc2luZyA9PT0gUFJPQ0VTU0lOR19PUFRJT05TLk5PTlRSQU5TSVRJT05BTCAmJlxuICAgICAgICAgc3RhdHVzWzFdICE9PSBcInZhbGlkXCIgJiYgc3RhdHVzWzFdICE9PSBcImRldmlhdGlvblwiKSkge1xuICAgICAgZXJyb3IgPSB0cnVlO1xuICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBsYWJlbDogbGFiZWwsXG4gICAgZXJyb3I6IGVycm9yXG4gIH07XG59XG5cbmZ1bmN0aW9uIHByb2Nlc3NpbmcoZG9tYWluX25hbWUsIHVzZVNURDMsIHByb2Nlc3Npbmdfb3B0aW9uKSB7XG4gIHZhciByZXN1bHQgPSBtYXBDaGFycyhkb21haW5fbmFtZSwgdXNlU1REMywgcHJvY2Vzc2luZ19vcHRpb24pO1xuICByZXN1bHQuc3RyaW5nID0gbm9ybWFsaXplKHJlc3VsdC5zdHJpbmcpO1xuXG4gIHZhciBsYWJlbHMgPSByZXN1bHQuc3RyaW5nLnNwbGl0KFwiLlwiKTtcbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBsYWJlbHMubGVuZ3RoOyArK2kpIHtcbiAgICB0cnkge1xuICAgICAgdmFyIHZhbGlkYXRpb24gPSB2YWxpZGF0ZUxhYmVsKGxhYmVsc1tpXSk7XG4gICAgICBsYWJlbHNbaV0gPSB2YWxpZGF0aW9uLmxhYmVsO1xuICAgICAgcmVzdWx0LmVycm9yID0gcmVzdWx0LmVycm9yIHx8IHZhbGlkYXRpb24uZXJyb3I7XG4gICAgfSBjYXRjaChlKSB7XG4gICAgICByZXN1bHQuZXJyb3IgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB7XG4gICAgc3RyaW5nOiBsYWJlbHMuam9pbihcIi5cIiksXG4gICAgZXJyb3I6IHJlc3VsdC5lcnJvclxuICB9O1xufVxuXG5tb2R1bGUuZXhwb3J0cy50b0FTQ0lJID0gZnVuY3Rpb24oZG9tYWluX25hbWUsIHVzZVNURDMsIHByb2Nlc3Npbmdfb3B0aW9uLCB2ZXJpZnlEbnNMZW5ndGgpIHtcbiAgdmFyIHJlc3VsdCA9IHByb2Nlc3NpbmcoZG9tYWluX25hbWUsIHVzZVNURDMsIHByb2Nlc3Npbmdfb3B0aW9uKTtcbiAgdmFyIGxhYmVscyA9IHJlc3VsdC5zdHJpbmcuc3BsaXQoXCIuXCIpO1xuICBsYWJlbHMgPSBsYWJlbHMubWFwKGZ1bmN0aW9uKGwpIHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIHB1bnljb2RlLnRvQVNDSUkobCk7XG4gICAgfSBjYXRjaChlKSB7XG4gICAgICByZXN1bHQuZXJyb3IgPSB0cnVlO1xuICAgICAgcmV0dXJuIGw7XG4gICAgfVxuICB9KTtcblxuICBpZiAodmVyaWZ5RG5zTGVuZ3RoKSB7XG4gICAgdmFyIHRvdGFsID0gbGFiZWxzLnNsaWNlKDAsIGxhYmVscy5sZW5ndGggLSAxKS5qb2luKFwiLlwiKS5sZW5ndGg7XG4gICAgaWYgKHRvdGFsLmxlbmd0aCA+IDI1MyB8fCB0b3RhbC5sZW5ndGggPT09IDApIHtcbiAgICAgIHJlc3VsdC5lcnJvciA9IHRydWU7XG4gICAgfVxuXG4gICAgZm9yICh2YXIgaT0wOyBpIDwgbGFiZWxzLmxlbmd0aDsgKytpKSB7XG4gICAgICBpZiAobGFiZWxzLmxlbmd0aCA+IDYzIHx8IGxhYmVscy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgcmVzdWx0LmVycm9yID0gdHJ1ZTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaWYgKHJlc3VsdC5lcnJvcikgcmV0dXJuIG51bGw7XG4gIHJldHVybiBsYWJlbHMuam9pbihcIi5cIik7XG59O1xuXG5tb2R1bGUuZXhwb3J0cy50b1VuaWNvZGUgPSBmdW5jdGlvbihkb21haW5fbmFtZSwgdXNlU1REMykge1xuICB2YXIgcmVzdWx0ID0gcHJvY2Vzc2luZyhkb21haW5fbmFtZSwgdXNlU1REMywgUFJPQ0VTU0lOR19PUFRJT05TLk5PTlRSQU5TSVRJT05BTCk7XG5cbiAgcmV0dXJuIHtcbiAgICBkb21haW46IHJlc3VsdC5zdHJpbmcsXG4gICAgZXJyb3I6IHJlc3VsdC5lcnJvclxuICB9O1xufTtcblxubW9kdWxlLmV4cG9ydHMuUFJPQ0VTU0lOR19PUFRJT05TID0gUFJPQ0VTU0lOR19PUFRJT05TO1xuIiwgIlwidXNlIHN0cmljdFwiO1xyXG5jb25zdCBwdW55Y29kZSA9IHJlcXVpcmUoXCJwdW55Y29kZVwiKTtcclxuY29uc3QgdHI0NiA9IHJlcXVpcmUoXCJ0cjQ2XCIpO1xyXG5cclxuY29uc3Qgc3BlY2lhbFNjaGVtZXMgPSB7XHJcbiAgZnRwOiAyMSxcclxuICBmaWxlOiBudWxsLFxyXG4gIGdvcGhlcjogNzAsXHJcbiAgaHR0cDogODAsXHJcbiAgaHR0cHM6IDQ0MyxcclxuICB3czogODAsXHJcbiAgd3NzOiA0NDNcclxufTtcclxuXHJcbmNvbnN0IGZhaWx1cmUgPSBTeW1ib2woXCJmYWlsdXJlXCIpO1xyXG5cclxuZnVuY3Rpb24gY291bnRTeW1ib2xzKHN0cikge1xyXG4gIHJldHVybiBwdW55Y29kZS51Y3MyLmRlY29kZShzdHIpLmxlbmd0aDtcclxufVxyXG5cclxuZnVuY3Rpb24gYXQoaW5wdXQsIGlkeCkge1xyXG4gIGNvbnN0IGMgPSBpbnB1dFtpZHhdO1xyXG4gIHJldHVybiBpc05hTihjKSA/IHVuZGVmaW5lZCA6IFN0cmluZy5mcm9tQ29kZVBvaW50KGMpO1xyXG59XHJcblxyXG5mdW5jdGlvbiBpc0FTQ0lJRGlnaXQoYykge1xyXG4gIHJldHVybiBjID49IDB4MzAgJiYgYyA8PSAweDM5O1xyXG59XHJcblxyXG5mdW5jdGlvbiBpc0FTQ0lJQWxwaGEoYykge1xyXG4gIHJldHVybiAoYyA+PSAweDQxICYmIGMgPD0gMHg1QSkgfHwgKGMgPj0gMHg2MSAmJiBjIDw9IDB4N0EpO1xyXG59XHJcblxyXG5mdW5jdGlvbiBpc0FTQ0lJQWxwaGFudW1lcmljKGMpIHtcclxuICByZXR1cm4gaXNBU0NJSUFscGhhKGMpIHx8IGlzQVNDSUlEaWdpdChjKTtcclxufVxyXG5cclxuZnVuY3Rpb24gaXNBU0NJSUhleChjKSB7XHJcbiAgcmV0dXJuIGlzQVNDSUlEaWdpdChjKSB8fCAoYyA+PSAweDQxICYmIGMgPD0gMHg0NikgfHwgKGMgPj0gMHg2MSAmJiBjIDw9IDB4NjYpO1xyXG59XHJcblxyXG5mdW5jdGlvbiBpc1NpbmdsZURvdChidWZmZXIpIHtcclxuICByZXR1cm4gYnVmZmVyID09PSBcIi5cIiB8fCBidWZmZXIudG9Mb3dlckNhc2UoKSA9PT0gXCIlMmVcIjtcclxufVxyXG5cclxuZnVuY3Rpb24gaXNEb3VibGVEb3QoYnVmZmVyKSB7XHJcbiAgYnVmZmVyID0gYnVmZmVyLnRvTG93ZXJDYXNlKCk7XHJcbiAgcmV0dXJuIGJ1ZmZlciA9PT0gXCIuLlwiIHx8IGJ1ZmZlciA9PT0gXCIlMmUuXCIgfHwgYnVmZmVyID09PSBcIi4lMmVcIiB8fCBidWZmZXIgPT09IFwiJTJlJTJlXCI7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGlzV2luZG93c0RyaXZlTGV0dGVyQ29kZVBvaW50cyhjcDEsIGNwMikge1xyXG4gIHJldHVybiBpc0FTQ0lJQWxwaGEoY3AxKSAmJiAoY3AyID09PSA1OCB8fCBjcDIgPT09IDEyNCk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGlzV2luZG93c0RyaXZlTGV0dGVyU3RyaW5nKHN0cmluZykge1xyXG4gIHJldHVybiBzdHJpbmcubGVuZ3RoID09PSAyICYmIGlzQVNDSUlBbHBoYShzdHJpbmcuY29kZVBvaW50QXQoMCkpICYmIChzdHJpbmdbMV0gPT09IFwiOlwiIHx8IHN0cmluZ1sxXSA9PT0gXCJ8XCIpO1xyXG59XHJcblxyXG5mdW5jdGlvbiBpc05vcm1hbGl6ZWRXaW5kb3dzRHJpdmVMZXR0ZXJTdHJpbmcoc3RyaW5nKSB7XHJcbiAgcmV0dXJuIHN0cmluZy5sZW5ndGggPT09IDIgJiYgaXNBU0NJSUFscGhhKHN0cmluZy5jb2RlUG9pbnRBdCgwKSkgJiYgc3RyaW5nWzFdID09PSBcIjpcIjtcclxufVxyXG5cclxuZnVuY3Rpb24gY29udGFpbnNGb3JiaWRkZW5Ib3N0Q29kZVBvaW50KHN0cmluZykge1xyXG4gIHJldHVybiBzdHJpbmcuc2VhcmNoKC9cXHUwMDAwfFxcdTAwMDl8XFx1MDAwQXxcXHUwMDBEfFxcdTAwMjB8I3wlfFxcL3w6fFxcP3xAfFxcW3xcXFxcfFxcXS8pICE9PSAtMTtcclxufVxyXG5cclxuZnVuY3Rpb24gY29udGFpbnNGb3JiaWRkZW5Ib3N0Q29kZVBvaW50RXhjbHVkaW5nUGVyY2VudChzdHJpbmcpIHtcclxuICByZXR1cm4gc3RyaW5nLnNlYXJjaCgvXFx1MDAwMHxcXHUwMDA5fFxcdTAwMEF8XFx1MDAwRHxcXHUwMDIwfCN8XFwvfDp8XFw/fEB8XFxbfFxcXFx8XFxdLykgIT09IC0xO1xyXG59XHJcblxyXG5mdW5jdGlvbiBpc1NwZWNpYWxTY2hlbWUoc2NoZW1lKSB7XHJcbiAgcmV0dXJuIHNwZWNpYWxTY2hlbWVzW3NjaGVtZV0gIT09IHVuZGVmaW5lZDtcclxufVxyXG5cclxuZnVuY3Rpb24gaXNTcGVjaWFsKHVybCkge1xyXG4gIHJldHVybiBpc1NwZWNpYWxTY2hlbWUodXJsLnNjaGVtZSk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGRlZmF1bHRQb3J0KHNjaGVtZSkge1xyXG4gIHJldHVybiBzcGVjaWFsU2NoZW1lc1tzY2hlbWVdO1xyXG59XHJcblxyXG5mdW5jdGlvbiBwZXJjZW50RW5jb2RlKGMpIHtcclxuICBsZXQgaGV4ID0gYy50b1N0cmluZygxNikudG9VcHBlckNhc2UoKTtcclxuICBpZiAoaGV4Lmxlbmd0aCA9PT0gMSkge1xyXG4gICAgaGV4ID0gXCIwXCIgKyBoZXg7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gXCIlXCIgKyBoZXg7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHV0ZjhQZXJjZW50RW5jb2RlKGMpIHtcclxuICBjb25zdCBidWYgPSBuZXcgQnVmZmVyKGMpO1xyXG5cclxuICBsZXQgc3RyID0gXCJcIjtcclxuXHJcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBidWYubGVuZ3RoOyArK2kpIHtcclxuICAgIHN0ciArPSBwZXJjZW50RW5jb2RlKGJ1ZltpXSk7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gc3RyO1xyXG59XHJcblxyXG5mdW5jdGlvbiB1dGY4UGVyY2VudERlY29kZShzdHIpIHtcclxuICBjb25zdCBpbnB1dCA9IG5ldyBCdWZmZXIoc3RyKTtcclxuICBjb25zdCBvdXRwdXQgPSBbXTtcclxuICBmb3IgKGxldCBpID0gMDsgaSA8IGlucHV0Lmxlbmd0aDsgKytpKSB7XHJcbiAgICBpZiAoaW5wdXRbaV0gIT09IDM3KSB7XHJcbiAgICAgIG91dHB1dC5wdXNoKGlucHV0W2ldKTtcclxuICAgIH0gZWxzZSBpZiAoaW5wdXRbaV0gPT09IDM3ICYmIGlzQVNDSUlIZXgoaW5wdXRbaSArIDFdKSAmJiBpc0FTQ0lJSGV4KGlucHV0W2kgKyAyXSkpIHtcclxuICAgICAgb3V0cHV0LnB1c2gocGFyc2VJbnQoaW5wdXQuc2xpY2UoaSArIDEsIGkgKyAzKS50b1N0cmluZygpLCAxNikpO1xyXG4gICAgICBpICs9IDI7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBvdXRwdXQucHVzaChpbnB1dFtpXSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJldHVybiBuZXcgQnVmZmVyKG91dHB1dCkudG9TdHJpbmcoKTtcclxufVxyXG5cclxuZnVuY3Rpb24gaXNDMENvbnRyb2xQZXJjZW50RW5jb2RlKGMpIHtcclxuICByZXR1cm4gYyA8PSAweDFGIHx8IGMgPiAweDdFO1xyXG59XHJcblxyXG5jb25zdCBleHRyYVBhdGhQZXJjZW50RW5jb2RlU2V0ID0gbmV3IFNldChbMzIsIDM0LCAzNSwgNjAsIDYyLCA2MywgOTYsIDEyMywgMTI1XSk7XHJcbmZ1bmN0aW9uIGlzUGF0aFBlcmNlbnRFbmNvZGUoYykge1xyXG4gIHJldHVybiBpc0MwQ29udHJvbFBlcmNlbnRFbmNvZGUoYykgfHwgZXh0cmFQYXRoUGVyY2VudEVuY29kZVNldC5oYXMoYyk7XHJcbn1cclxuXHJcbmNvbnN0IGV4dHJhVXNlcmluZm9QZXJjZW50RW5jb2RlU2V0ID1cclxuICBuZXcgU2V0KFs0NywgNTgsIDU5LCA2MSwgNjQsIDkxLCA5MiwgOTMsIDk0LCAxMjRdKTtcclxuZnVuY3Rpb24gaXNVc2VyaW5mb1BlcmNlbnRFbmNvZGUoYykge1xyXG4gIHJldHVybiBpc1BhdGhQZXJjZW50RW5jb2RlKGMpIHx8IGV4dHJhVXNlcmluZm9QZXJjZW50RW5jb2RlU2V0LmhhcyhjKTtcclxufVxyXG5cclxuZnVuY3Rpb24gcGVyY2VudEVuY29kZUNoYXIoYywgZW5jb2RlU2V0UHJlZGljYXRlKSB7XHJcbiAgY29uc3QgY1N0ciA9IFN0cmluZy5mcm9tQ29kZVBvaW50KGMpO1xyXG5cclxuICBpZiAoZW5jb2RlU2V0UHJlZGljYXRlKGMpKSB7XHJcbiAgICByZXR1cm4gdXRmOFBlcmNlbnRFbmNvZGUoY1N0cik7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gY1N0cjtcclxufVxyXG5cclxuZnVuY3Rpb24gcGFyc2VJUHY0TnVtYmVyKGlucHV0KSB7XHJcbiAgbGV0IFIgPSAxMDtcclxuXHJcbiAgaWYgKGlucHV0Lmxlbmd0aCA+PSAyICYmIGlucHV0LmNoYXJBdCgwKSA9PT0gXCIwXCIgJiYgaW5wdXQuY2hhckF0KDEpLnRvTG93ZXJDYXNlKCkgPT09IFwieFwiKSB7XHJcbiAgICBpbnB1dCA9IGlucHV0LnN1YnN0cmluZygyKTtcclxuICAgIFIgPSAxNjtcclxuICB9IGVsc2UgaWYgKGlucHV0Lmxlbmd0aCA+PSAyICYmIGlucHV0LmNoYXJBdCgwKSA9PT0gXCIwXCIpIHtcclxuICAgIGlucHV0ID0gaW5wdXQuc3Vic3RyaW5nKDEpO1xyXG4gICAgUiA9IDg7XHJcbiAgfVxyXG5cclxuICBpZiAoaW5wdXQgPT09IFwiXCIpIHtcclxuICAgIHJldHVybiAwO1xyXG4gIH1cclxuXHJcbiAgY29uc3QgcmVnZXggPSBSID09PSAxMCA/IC9bXjAtOV0vIDogKFIgPT09IDE2ID8gL1teMC05QS1GYS1mXS8gOiAvW14wLTddLyk7XHJcbiAgaWYgKHJlZ2V4LnRlc3QoaW5wdXQpKSB7XHJcbiAgICByZXR1cm4gZmFpbHVyZTtcclxuICB9XHJcblxyXG4gIHJldHVybiBwYXJzZUludChpbnB1dCwgUik7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHBhcnNlSVB2NChpbnB1dCkge1xyXG4gIGNvbnN0IHBhcnRzID0gaW5wdXQuc3BsaXQoXCIuXCIpO1xyXG4gIGlmIChwYXJ0c1twYXJ0cy5sZW5ndGggLSAxXSA9PT0gXCJcIikge1xyXG4gICAgaWYgKHBhcnRzLmxlbmd0aCA+IDEpIHtcclxuICAgICAgcGFydHMucG9wKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpZiAocGFydHMubGVuZ3RoID4gNCkge1xyXG4gICAgcmV0dXJuIGlucHV0O1xyXG4gIH1cclxuXHJcbiAgY29uc3QgbnVtYmVycyA9IFtdO1xyXG4gIGZvciAoY29uc3QgcGFydCBvZiBwYXJ0cykge1xyXG4gICAgaWYgKHBhcnQgPT09IFwiXCIpIHtcclxuICAgICAgcmV0dXJuIGlucHV0O1xyXG4gICAgfVxyXG4gICAgY29uc3QgbiA9IHBhcnNlSVB2NE51bWJlcihwYXJ0KTtcclxuICAgIGlmIChuID09PSBmYWlsdXJlKSB7XHJcbiAgICAgIHJldHVybiBpbnB1dDtcclxuICAgIH1cclxuXHJcbiAgICBudW1iZXJzLnB1c2gobik7XHJcbiAgfVxyXG5cclxuICBmb3IgKGxldCBpID0gMDsgaSA8IG51bWJlcnMubGVuZ3RoIC0gMTsgKytpKSB7XHJcbiAgICBpZiAobnVtYmVyc1tpXSA+IDI1NSkge1xyXG4gICAgICByZXR1cm4gZmFpbHVyZTtcclxuICAgIH1cclxuICB9XHJcbiAgaWYgKG51bWJlcnNbbnVtYmVycy5sZW5ndGggLSAxXSA+PSBNYXRoLnBvdygyNTYsIDUgLSBudW1iZXJzLmxlbmd0aCkpIHtcclxuICAgIHJldHVybiBmYWlsdXJlO1xyXG4gIH1cclxuXHJcbiAgbGV0IGlwdjQgPSBudW1iZXJzLnBvcCgpO1xyXG4gIGxldCBjb3VudGVyID0gMDtcclxuXHJcbiAgZm9yIChjb25zdCBuIG9mIG51bWJlcnMpIHtcclxuICAgIGlwdjQgKz0gbiAqIE1hdGgucG93KDI1NiwgMyAtIGNvdW50ZXIpO1xyXG4gICAgKytjb3VudGVyO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIGlwdjQ7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHNlcmlhbGl6ZUlQdjQoYWRkcmVzcykge1xyXG4gIGxldCBvdXRwdXQgPSBcIlwiO1xyXG4gIGxldCBuID0gYWRkcmVzcztcclxuXHJcbiAgZm9yIChsZXQgaSA9IDE7IGkgPD0gNDsgKytpKSB7XHJcbiAgICBvdXRwdXQgPSBTdHJpbmcobiAlIDI1NikgKyBvdXRwdXQ7XHJcbiAgICBpZiAoaSAhPT0gNCkge1xyXG4gICAgICBvdXRwdXQgPSBcIi5cIiArIG91dHB1dDtcclxuICAgIH1cclxuICAgIG4gPSBNYXRoLmZsb29yKG4gLyAyNTYpO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIG91dHB1dDtcclxufVxyXG5cclxuZnVuY3Rpb24gcGFyc2VJUHY2KGlucHV0KSB7XHJcbiAgY29uc3QgYWRkcmVzcyA9IFswLCAwLCAwLCAwLCAwLCAwLCAwLCAwXTtcclxuICBsZXQgcGllY2VJbmRleCA9IDA7XHJcbiAgbGV0IGNvbXByZXNzID0gbnVsbDtcclxuICBsZXQgcG9pbnRlciA9IDA7XHJcblxyXG4gIGlucHV0ID0gcHVueWNvZGUudWNzMi5kZWNvZGUoaW5wdXQpO1xyXG5cclxuICBpZiAoaW5wdXRbcG9pbnRlcl0gPT09IDU4KSB7XHJcbiAgICBpZiAoaW5wdXRbcG9pbnRlciArIDFdICE9PSA1OCkge1xyXG4gICAgICByZXR1cm4gZmFpbHVyZTtcclxuICAgIH1cclxuXHJcbiAgICBwb2ludGVyICs9IDI7XHJcbiAgICArK3BpZWNlSW5kZXg7XHJcbiAgICBjb21wcmVzcyA9IHBpZWNlSW5kZXg7XHJcbiAgfVxyXG5cclxuICB3aGlsZSAocG9pbnRlciA8IGlucHV0Lmxlbmd0aCkge1xyXG4gICAgaWYgKHBpZWNlSW5kZXggPT09IDgpIHtcclxuICAgICAgcmV0dXJuIGZhaWx1cmU7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGlucHV0W3BvaW50ZXJdID09PSA1OCkge1xyXG4gICAgICBpZiAoY29tcHJlc3MgIT09IG51bGwpIHtcclxuICAgICAgICByZXR1cm4gZmFpbHVyZTtcclxuICAgICAgfVxyXG4gICAgICArK3BvaW50ZXI7XHJcbiAgICAgICsrcGllY2VJbmRleDtcclxuICAgICAgY29tcHJlc3MgPSBwaWVjZUluZGV4O1xyXG4gICAgICBjb250aW51ZTtcclxuICAgIH1cclxuXHJcbiAgICBsZXQgdmFsdWUgPSAwO1xyXG4gICAgbGV0IGxlbmd0aCA9IDA7XHJcblxyXG4gICAgd2hpbGUgKGxlbmd0aCA8IDQgJiYgaXNBU0NJSUhleChpbnB1dFtwb2ludGVyXSkpIHtcclxuICAgICAgdmFsdWUgPSB2YWx1ZSAqIDB4MTAgKyBwYXJzZUludChhdChpbnB1dCwgcG9pbnRlciksIDE2KTtcclxuICAgICAgKytwb2ludGVyO1xyXG4gICAgICArK2xlbmd0aDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoaW5wdXRbcG9pbnRlcl0gPT09IDQ2KSB7XHJcbiAgICAgIGlmIChsZW5ndGggPT09IDApIHtcclxuICAgICAgICByZXR1cm4gZmFpbHVyZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgcG9pbnRlciAtPSBsZW5ndGg7XHJcblxyXG4gICAgICBpZiAocGllY2VJbmRleCA+IDYpIHtcclxuICAgICAgICByZXR1cm4gZmFpbHVyZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgbGV0IG51bWJlcnNTZWVuID0gMDtcclxuXHJcbiAgICAgIHdoaWxlIChpbnB1dFtwb2ludGVyXSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgbGV0IGlwdjRQaWVjZSA9IG51bGw7XHJcblxyXG4gICAgICAgIGlmIChudW1iZXJzU2VlbiA+IDApIHtcclxuICAgICAgICAgIGlmIChpbnB1dFtwb2ludGVyXSA9PT0gNDYgJiYgbnVtYmVyc1NlZW4gPCA0KSB7XHJcbiAgICAgICAgICAgICsrcG9pbnRlcjtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWlsdXJlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCFpc0FTQ0lJRGlnaXQoaW5wdXRbcG9pbnRlcl0pKSB7XHJcbiAgICAgICAgICByZXR1cm4gZmFpbHVyZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHdoaWxlIChpc0FTQ0lJRGlnaXQoaW5wdXRbcG9pbnRlcl0pKSB7XHJcbiAgICAgICAgICBjb25zdCBudW1iZXIgPSBwYXJzZUludChhdChpbnB1dCwgcG9pbnRlcikpO1xyXG4gICAgICAgICAgaWYgKGlwdjRQaWVjZSA9PT0gbnVsbCkge1xyXG4gICAgICAgICAgICBpcHY0UGllY2UgPSBudW1iZXI7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKGlwdjRQaWVjZSA9PT0gMCkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFpbHVyZTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGlwdjRQaWVjZSA9IGlwdjRQaWVjZSAqIDEwICsgbnVtYmVyO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKGlwdjRQaWVjZSA+IDI1NSkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFpbHVyZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgICsrcG9pbnRlcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGFkZHJlc3NbcGllY2VJbmRleF0gPSBhZGRyZXNzW3BpZWNlSW5kZXhdICogMHgxMDAgKyBpcHY0UGllY2U7XHJcblxyXG4gICAgICAgICsrbnVtYmVyc1NlZW47XHJcblxyXG4gICAgICAgIGlmIChudW1iZXJzU2VlbiA9PT0gMiB8fCBudW1iZXJzU2VlbiA9PT0gNCkge1xyXG4gICAgICAgICAgKytwaWVjZUluZGV4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKG51bWJlcnNTZWVuICE9PSA0KSB7XHJcbiAgICAgICAgcmV0dXJuIGZhaWx1cmU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGJyZWFrO1xyXG4gICAgfSBlbHNlIGlmIChpbnB1dFtwb2ludGVyXSA9PT0gNTgpIHtcclxuICAgICAgKytwb2ludGVyO1xyXG4gICAgICBpZiAoaW5wdXRbcG9pbnRlcl0gPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgIHJldHVybiBmYWlsdXJlO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKGlucHV0W3BvaW50ZXJdICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgcmV0dXJuIGZhaWx1cmU7XHJcbiAgICB9XHJcblxyXG4gICAgYWRkcmVzc1twaWVjZUluZGV4XSA9IHZhbHVlO1xyXG4gICAgKytwaWVjZUluZGV4O1xyXG4gIH1cclxuXHJcbiAgaWYgKGNvbXByZXNzICE9PSBudWxsKSB7XHJcbiAgICBsZXQgc3dhcHMgPSBwaWVjZUluZGV4IC0gY29tcHJlc3M7XHJcbiAgICBwaWVjZUluZGV4ID0gNztcclxuICAgIHdoaWxlIChwaWVjZUluZGV4ICE9PSAwICYmIHN3YXBzID4gMCkge1xyXG4gICAgICBjb25zdCB0ZW1wID0gYWRkcmVzc1tjb21wcmVzcyArIHN3YXBzIC0gMV07XHJcbiAgICAgIGFkZHJlc3NbY29tcHJlc3MgKyBzd2FwcyAtIDFdID0gYWRkcmVzc1twaWVjZUluZGV4XTtcclxuICAgICAgYWRkcmVzc1twaWVjZUluZGV4XSA9IHRlbXA7XHJcbiAgICAgIC0tcGllY2VJbmRleDtcclxuICAgICAgLS1zd2FwcztcclxuICAgIH1cclxuICB9IGVsc2UgaWYgKGNvbXByZXNzID09PSBudWxsICYmIHBpZWNlSW5kZXggIT09IDgpIHtcclxuICAgIHJldHVybiBmYWlsdXJlO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIGFkZHJlc3M7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHNlcmlhbGl6ZUlQdjYoYWRkcmVzcykge1xyXG4gIGxldCBvdXRwdXQgPSBcIlwiO1xyXG4gIGNvbnN0IHNlcVJlc3VsdCA9IGZpbmRMb25nZXN0WmVyb1NlcXVlbmNlKGFkZHJlc3MpO1xyXG4gIGNvbnN0IGNvbXByZXNzID0gc2VxUmVzdWx0LmlkeDtcclxuICBsZXQgaWdub3JlMCA9IGZhbHNlO1xyXG5cclxuICBmb3IgKGxldCBwaWVjZUluZGV4ID0gMDsgcGllY2VJbmRleCA8PSA3OyArK3BpZWNlSW5kZXgpIHtcclxuICAgIGlmIChpZ25vcmUwICYmIGFkZHJlc3NbcGllY2VJbmRleF0gPT09IDApIHtcclxuICAgICAgY29udGludWU7XHJcbiAgICB9IGVsc2UgaWYgKGlnbm9yZTApIHtcclxuICAgICAgaWdub3JlMCA9IGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChjb21wcmVzcyA9PT0gcGllY2VJbmRleCkge1xyXG4gICAgICBjb25zdCBzZXBhcmF0b3IgPSBwaWVjZUluZGV4ID09PSAwID8gXCI6OlwiIDogXCI6XCI7XHJcbiAgICAgIG91dHB1dCArPSBzZXBhcmF0b3I7XHJcbiAgICAgIGlnbm9yZTAgPSB0cnVlO1xyXG4gICAgICBjb250aW51ZTtcclxuICAgIH1cclxuXHJcbiAgICBvdXRwdXQgKz0gYWRkcmVzc1twaWVjZUluZGV4XS50b1N0cmluZygxNik7XHJcblxyXG4gICAgaWYgKHBpZWNlSW5kZXggIT09IDcpIHtcclxuICAgICAgb3V0cHV0ICs9IFwiOlwiO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmV0dXJuIG91dHB1dDtcclxufVxyXG5cclxuZnVuY3Rpb24gcGFyc2VIb3N0KGlucHV0LCBpc1NwZWNpYWxBcmcpIHtcclxuICBpZiAoaW5wdXRbMF0gPT09IFwiW1wiKSB7XHJcbiAgICBpZiAoaW5wdXRbaW5wdXQubGVuZ3RoIC0gMV0gIT09IFwiXVwiKSB7XHJcbiAgICAgIHJldHVybiBmYWlsdXJlO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBwYXJzZUlQdjYoaW5wdXQuc3Vic3RyaW5nKDEsIGlucHV0Lmxlbmd0aCAtIDEpKTtcclxuICB9XHJcblxyXG4gIGlmICghaXNTcGVjaWFsQXJnKSB7XHJcbiAgICByZXR1cm4gcGFyc2VPcGFxdWVIb3N0KGlucHV0KTtcclxuICB9XHJcblxyXG4gIGNvbnN0IGRvbWFpbiA9IHV0ZjhQZXJjZW50RGVjb2RlKGlucHV0KTtcclxuICBjb25zdCBhc2NpaURvbWFpbiA9IHRyNDYudG9BU0NJSShkb21haW4sIGZhbHNlLCB0cjQ2LlBST0NFU1NJTkdfT1BUSU9OUy5OT05UUkFOU0lUSU9OQUwsIGZhbHNlKTtcclxuICBpZiAoYXNjaWlEb21haW4gPT09IG51bGwpIHtcclxuICAgIHJldHVybiBmYWlsdXJlO1xyXG4gIH1cclxuXHJcbiAgaWYgKGNvbnRhaW5zRm9yYmlkZGVuSG9zdENvZGVQb2ludChhc2NpaURvbWFpbikpIHtcclxuICAgIHJldHVybiBmYWlsdXJlO1xyXG4gIH1cclxuXHJcbiAgY29uc3QgaXB2NEhvc3QgPSBwYXJzZUlQdjQoYXNjaWlEb21haW4pO1xyXG4gIGlmICh0eXBlb2YgaXB2NEhvc3QgPT09IFwibnVtYmVyXCIgfHwgaXB2NEhvc3QgPT09IGZhaWx1cmUpIHtcclxuICAgIHJldHVybiBpcHY0SG9zdDtcclxuICB9XHJcblxyXG4gIHJldHVybiBhc2NpaURvbWFpbjtcclxufVxyXG5cclxuZnVuY3Rpb24gcGFyc2VPcGFxdWVIb3N0KGlucHV0KSB7XHJcbiAgaWYgKGNvbnRhaW5zRm9yYmlkZGVuSG9zdENvZGVQb2ludEV4Y2x1ZGluZ1BlcmNlbnQoaW5wdXQpKSB7XHJcbiAgICByZXR1cm4gZmFpbHVyZTtcclxuICB9XHJcblxyXG4gIGxldCBvdXRwdXQgPSBcIlwiO1xyXG4gIGNvbnN0IGRlY29kZWQgPSBwdW55Y29kZS51Y3MyLmRlY29kZShpbnB1dCk7XHJcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBkZWNvZGVkLmxlbmd0aDsgKytpKSB7XHJcbiAgICBvdXRwdXQgKz0gcGVyY2VudEVuY29kZUNoYXIoZGVjb2RlZFtpXSwgaXNDMENvbnRyb2xQZXJjZW50RW5jb2RlKTtcclxuICB9XHJcbiAgcmV0dXJuIG91dHB1dDtcclxufVxyXG5cclxuZnVuY3Rpb24gZmluZExvbmdlc3RaZXJvU2VxdWVuY2UoYXJyKSB7XHJcbiAgbGV0IG1heElkeCA9IG51bGw7XHJcbiAgbGV0IG1heExlbiA9IDE7IC8vIG9ubHkgZmluZCBlbGVtZW50cyA+IDFcclxuICBsZXQgY3VyclN0YXJ0ID0gbnVsbDtcclxuICBsZXQgY3VyckxlbiA9IDA7XHJcblxyXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgYXJyLmxlbmd0aDsgKytpKSB7XHJcbiAgICBpZiAoYXJyW2ldICE9PSAwKSB7XHJcbiAgICAgIGlmIChjdXJyTGVuID4gbWF4TGVuKSB7XHJcbiAgICAgICAgbWF4SWR4ID0gY3VyclN0YXJ0O1xyXG4gICAgICAgIG1heExlbiA9IGN1cnJMZW47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGN1cnJTdGFydCA9IG51bGw7XHJcbiAgICAgIGN1cnJMZW4gPSAwO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKGN1cnJTdGFydCA9PT0gbnVsbCkge1xyXG4gICAgICAgIGN1cnJTdGFydCA9IGk7XHJcbiAgICAgIH1cclxuICAgICAgKytjdXJyTGVuO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gaWYgdHJhaWxpbmcgemVyb3NcclxuICBpZiAoY3VyckxlbiA+IG1heExlbikge1xyXG4gICAgbWF4SWR4ID0gY3VyclN0YXJ0O1xyXG4gICAgbWF4TGVuID0gY3VyckxlbjtcclxuICB9XHJcblxyXG4gIHJldHVybiB7XHJcbiAgICBpZHg6IG1heElkeCxcclxuICAgIGxlbjogbWF4TGVuXHJcbiAgfTtcclxufVxyXG5cclxuZnVuY3Rpb24gc2VyaWFsaXplSG9zdChob3N0KSB7XHJcbiAgaWYgKHR5cGVvZiBob3N0ID09PSBcIm51bWJlclwiKSB7XHJcbiAgICByZXR1cm4gc2VyaWFsaXplSVB2NChob3N0KTtcclxuICB9XHJcblxyXG4gIC8vIElQdjYgc2VyaWFsaXplclxyXG4gIGlmIChob3N0IGluc3RhbmNlb2YgQXJyYXkpIHtcclxuICAgIHJldHVybiBcIltcIiArIHNlcmlhbGl6ZUlQdjYoaG9zdCkgKyBcIl1cIjtcclxuICB9XHJcblxyXG4gIHJldHVybiBob3N0O1xyXG59XHJcblxyXG5mdW5jdGlvbiB0cmltQ29udHJvbENoYXJzKHVybCkge1xyXG4gIHJldHVybiB1cmwucmVwbGFjZSgvXltcXHUwMDAwLVxcdTAwMUZcXHUwMDIwXSt8W1xcdTAwMDAtXFx1MDAxRlxcdTAwMjBdKyQvZywgXCJcIik7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHRyaW1UYWJBbmROZXdsaW5lKHVybCkge1xyXG4gIHJldHVybiB1cmwucmVwbGFjZSgvXFx1MDAwOXxcXHUwMDBBfFxcdTAwMEQvZywgXCJcIik7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHNob3J0ZW5QYXRoKHVybCkge1xyXG4gIGNvbnN0IHBhdGggPSB1cmwucGF0aDtcclxuICBpZiAocGF0aC5sZW5ndGggPT09IDApIHtcclxuICAgIHJldHVybjtcclxuICB9XHJcbiAgaWYgKHVybC5zY2hlbWUgPT09IFwiZmlsZVwiICYmIHBhdGgubGVuZ3RoID09PSAxICYmIGlzTm9ybWFsaXplZFdpbmRvd3NEcml2ZUxldHRlcihwYXRoWzBdKSkge1xyXG4gICAgcmV0dXJuO1xyXG4gIH1cclxuXHJcbiAgcGF0aC5wb3AoKTtcclxufVxyXG5cclxuZnVuY3Rpb24gaW5jbHVkZXNDcmVkZW50aWFscyh1cmwpIHtcclxuICByZXR1cm4gdXJsLnVzZXJuYW1lICE9PSBcIlwiIHx8IHVybC5wYXNzd29yZCAhPT0gXCJcIjtcclxufVxyXG5cclxuZnVuY3Rpb24gY2Fubm90SGF2ZUFVc2VybmFtZVBhc3N3b3JkUG9ydCh1cmwpIHtcclxuICByZXR1cm4gdXJsLmhvc3QgPT09IG51bGwgfHwgdXJsLmhvc3QgPT09IFwiXCIgfHwgdXJsLmNhbm5vdEJlQUJhc2VVUkwgfHwgdXJsLnNjaGVtZSA9PT0gXCJmaWxlXCI7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGlzTm9ybWFsaXplZFdpbmRvd3NEcml2ZUxldHRlcihzdHJpbmcpIHtcclxuICByZXR1cm4gL15bQS1aYS16XTokLy50ZXN0KHN0cmluZyk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIFVSTFN0YXRlTWFjaGluZShpbnB1dCwgYmFzZSwgZW5jb2RpbmdPdmVycmlkZSwgdXJsLCBzdGF0ZU92ZXJyaWRlKSB7XHJcbiAgdGhpcy5wb2ludGVyID0gMDtcclxuICB0aGlzLmlucHV0ID0gaW5wdXQ7XHJcbiAgdGhpcy5iYXNlID0gYmFzZSB8fCBudWxsO1xyXG4gIHRoaXMuZW5jb2RpbmdPdmVycmlkZSA9IGVuY29kaW5nT3ZlcnJpZGUgfHwgXCJ1dGYtOFwiO1xyXG4gIHRoaXMuc3RhdGVPdmVycmlkZSA9IHN0YXRlT3ZlcnJpZGU7XHJcbiAgdGhpcy51cmwgPSB1cmw7XHJcbiAgdGhpcy5mYWlsdXJlID0gZmFsc2U7XHJcbiAgdGhpcy5wYXJzZUVycm9yID0gZmFsc2U7XHJcblxyXG4gIGlmICghdGhpcy51cmwpIHtcclxuICAgIHRoaXMudXJsID0ge1xyXG4gICAgICBzY2hlbWU6IFwiXCIsXHJcbiAgICAgIHVzZXJuYW1lOiBcIlwiLFxyXG4gICAgICBwYXNzd29yZDogXCJcIixcclxuICAgICAgaG9zdDogbnVsbCxcclxuICAgICAgcG9ydDogbnVsbCxcclxuICAgICAgcGF0aDogW10sXHJcbiAgICAgIHF1ZXJ5OiBudWxsLFxyXG4gICAgICBmcmFnbWVudDogbnVsbCxcclxuXHJcbiAgICAgIGNhbm5vdEJlQUJhc2VVUkw6IGZhbHNlXHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0IHJlcyA9IHRyaW1Db250cm9sQ2hhcnModGhpcy5pbnB1dCk7XHJcbiAgICBpZiAocmVzICE9PSB0aGlzLmlucHV0KSB7XHJcbiAgICAgIHRoaXMucGFyc2VFcnJvciA9IHRydWU7XHJcbiAgICB9XHJcbiAgICB0aGlzLmlucHV0ID0gcmVzO1xyXG4gIH1cclxuXHJcbiAgY29uc3QgcmVzID0gdHJpbVRhYkFuZE5ld2xpbmUodGhpcy5pbnB1dCk7XHJcbiAgaWYgKHJlcyAhPT0gdGhpcy5pbnB1dCkge1xyXG4gICAgdGhpcy5wYXJzZUVycm9yID0gdHJ1ZTtcclxuICB9XHJcbiAgdGhpcy5pbnB1dCA9IHJlcztcclxuXHJcbiAgdGhpcy5zdGF0ZSA9IHN0YXRlT3ZlcnJpZGUgfHwgXCJzY2hlbWUgc3RhcnRcIjtcclxuXHJcbiAgdGhpcy5idWZmZXIgPSBcIlwiO1xyXG4gIHRoaXMuYXRGbGFnID0gZmFsc2U7XHJcbiAgdGhpcy5hcnJGbGFnID0gZmFsc2U7XHJcbiAgdGhpcy5wYXNzd29yZFRva2VuU2VlbkZsYWcgPSBmYWxzZTtcclxuXHJcbiAgdGhpcy5pbnB1dCA9IHB1bnljb2RlLnVjczIuZGVjb2RlKHRoaXMuaW5wdXQpO1xyXG5cclxuICBmb3IgKDsgdGhpcy5wb2ludGVyIDw9IHRoaXMuaW5wdXQubGVuZ3RoOyArK3RoaXMucG9pbnRlcikge1xyXG4gICAgY29uc3QgYyA9IHRoaXMuaW5wdXRbdGhpcy5wb2ludGVyXTtcclxuICAgIGNvbnN0IGNTdHIgPSBpc05hTihjKSA/IHVuZGVmaW5lZCA6IFN0cmluZy5mcm9tQ29kZVBvaW50KGMpO1xyXG5cclxuICAgIC8vIGV4ZWMgc3RhdGUgbWFjaGluZVxyXG4gICAgY29uc3QgcmV0ID0gdGhpc1tcInBhcnNlIFwiICsgdGhpcy5zdGF0ZV0oYywgY1N0cik7XHJcbiAgICBpZiAoIXJldCkge1xyXG4gICAgICBicmVhazsgLy8gdGVybWluYXRlIGFsZ29yaXRobVxyXG4gICAgfSBlbHNlIGlmIChyZXQgPT09IGZhaWx1cmUpIHtcclxuICAgICAgdGhpcy5mYWlsdXJlID0gdHJ1ZTtcclxuICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5VUkxTdGF0ZU1hY2hpbmUucHJvdG90eXBlW1wicGFyc2Ugc2NoZW1lIHN0YXJ0XCJdID0gZnVuY3Rpb24gcGFyc2VTY2hlbWVTdGFydChjLCBjU3RyKSB7XHJcbiAgaWYgKGlzQVNDSUlBbHBoYShjKSkge1xyXG4gICAgdGhpcy5idWZmZXIgKz0gY1N0ci50b0xvd2VyQ2FzZSgpO1xyXG4gICAgdGhpcy5zdGF0ZSA9IFwic2NoZW1lXCI7XHJcbiAgfSBlbHNlIGlmICghdGhpcy5zdGF0ZU92ZXJyaWRlKSB7XHJcbiAgICB0aGlzLnN0YXRlID0gXCJubyBzY2hlbWVcIjtcclxuICAgIC0tdGhpcy5wb2ludGVyO1xyXG4gIH0gZWxzZSB7XHJcbiAgICB0aGlzLnBhcnNlRXJyb3IgPSB0cnVlO1xyXG4gICAgcmV0dXJuIGZhaWx1cmU7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gdHJ1ZTtcclxufTtcclxuXHJcblVSTFN0YXRlTWFjaGluZS5wcm90b3R5cGVbXCJwYXJzZSBzY2hlbWVcIl0gPSBmdW5jdGlvbiBwYXJzZVNjaGVtZShjLCBjU3RyKSB7XHJcbiAgaWYgKGlzQVNDSUlBbHBoYW51bWVyaWMoYykgfHwgYyA9PT0gNDMgfHwgYyA9PT0gNDUgfHwgYyA9PT0gNDYpIHtcclxuICAgIHRoaXMuYnVmZmVyICs9IGNTdHIudG9Mb3dlckNhc2UoKTtcclxuICB9IGVsc2UgaWYgKGMgPT09IDU4KSB7XHJcbiAgICBpZiAodGhpcy5zdGF0ZU92ZXJyaWRlKSB7XHJcbiAgICAgIGlmIChpc1NwZWNpYWwodGhpcy51cmwpICYmICFpc1NwZWNpYWxTY2hlbWUodGhpcy5idWZmZXIpKSB7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoIWlzU3BlY2lhbCh0aGlzLnVybCkgJiYgaXNTcGVjaWFsU2NoZW1lKHRoaXMuYnVmZmVyKSkge1xyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKChpbmNsdWRlc0NyZWRlbnRpYWxzKHRoaXMudXJsKSB8fCB0aGlzLnVybC5wb3J0ICE9PSBudWxsKSAmJiB0aGlzLmJ1ZmZlciA9PT0gXCJmaWxlXCIpIHtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmICh0aGlzLnVybC5zY2hlbWUgPT09IFwiZmlsZVwiICYmICh0aGlzLnVybC5ob3N0ID09PSBcIlwiIHx8IHRoaXMudXJsLmhvc3QgPT09IG51bGwpKSB7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB0aGlzLnVybC5zY2hlbWUgPSB0aGlzLmJ1ZmZlcjtcclxuICAgIHRoaXMuYnVmZmVyID0gXCJcIjtcclxuICAgIGlmICh0aGlzLnN0YXRlT3ZlcnJpZGUpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMudXJsLnNjaGVtZSA9PT0gXCJmaWxlXCIpIHtcclxuICAgICAgaWYgKHRoaXMuaW5wdXRbdGhpcy5wb2ludGVyICsgMV0gIT09IDQ3IHx8IHRoaXMuaW5wdXRbdGhpcy5wb2ludGVyICsgMl0gIT09IDQ3KSB7XHJcbiAgICAgICAgdGhpcy5wYXJzZUVycm9yID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnN0YXRlID0gXCJmaWxlXCI7XHJcbiAgICB9IGVsc2UgaWYgKGlzU3BlY2lhbCh0aGlzLnVybCkgJiYgdGhpcy5iYXNlICE9PSBudWxsICYmIHRoaXMuYmFzZS5zY2hlbWUgPT09IHRoaXMudXJsLnNjaGVtZSkge1xyXG4gICAgICB0aGlzLnN0YXRlID0gXCJzcGVjaWFsIHJlbGF0aXZlIG9yIGF1dGhvcml0eVwiO1xyXG4gICAgfSBlbHNlIGlmIChpc1NwZWNpYWwodGhpcy51cmwpKSB7XHJcbiAgICAgIHRoaXMuc3RhdGUgPSBcInNwZWNpYWwgYXV0aG9yaXR5IHNsYXNoZXNcIjtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5pbnB1dFt0aGlzLnBvaW50ZXIgKyAxXSA9PT0gNDcpIHtcclxuICAgICAgdGhpcy5zdGF0ZSA9IFwicGF0aCBvciBhdXRob3JpdHlcIjtcclxuICAgICAgKyt0aGlzLnBvaW50ZXI7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnVybC5jYW5ub3RCZUFCYXNlVVJMID0gdHJ1ZTtcclxuICAgICAgdGhpcy51cmwucGF0aC5wdXNoKFwiXCIpO1xyXG4gICAgICB0aGlzLnN0YXRlID0gXCJjYW5ub3QtYmUtYS1iYXNlLVVSTCBwYXRoXCI7XHJcbiAgICB9XHJcbiAgfSBlbHNlIGlmICghdGhpcy5zdGF0ZU92ZXJyaWRlKSB7XHJcbiAgICB0aGlzLmJ1ZmZlciA9IFwiXCI7XHJcbiAgICB0aGlzLnN0YXRlID0gXCJubyBzY2hlbWVcIjtcclxuICAgIHRoaXMucG9pbnRlciA9IC0xO1xyXG4gIH0gZWxzZSB7XHJcbiAgICB0aGlzLnBhcnNlRXJyb3IgPSB0cnVlO1xyXG4gICAgcmV0dXJuIGZhaWx1cmU7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gdHJ1ZTtcclxufTtcclxuXHJcblVSTFN0YXRlTWFjaGluZS5wcm90b3R5cGVbXCJwYXJzZSBubyBzY2hlbWVcIl0gPSBmdW5jdGlvbiBwYXJzZU5vU2NoZW1lKGMpIHtcclxuICBpZiAodGhpcy5iYXNlID09PSBudWxsIHx8ICh0aGlzLmJhc2UuY2Fubm90QmVBQmFzZVVSTCAmJiBjICE9PSAzNSkpIHtcclxuICAgIHJldHVybiBmYWlsdXJlO1xyXG4gIH0gZWxzZSBpZiAodGhpcy5iYXNlLmNhbm5vdEJlQUJhc2VVUkwgJiYgYyA9PT0gMzUpIHtcclxuICAgIHRoaXMudXJsLnNjaGVtZSA9IHRoaXMuYmFzZS5zY2hlbWU7XHJcbiAgICB0aGlzLnVybC5wYXRoID0gdGhpcy5iYXNlLnBhdGguc2xpY2UoKTtcclxuICAgIHRoaXMudXJsLnF1ZXJ5ID0gdGhpcy5iYXNlLnF1ZXJ5O1xyXG4gICAgdGhpcy51cmwuZnJhZ21lbnQgPSBcIlwiO1xyXG4gICAgdGhpcy51cmwuY2Fubm90QmVBQmFzZVVSTCA9IHRydWU7XHJcbiAgICB0aGlzLnN0YXRlID0gXCJmcmFnbWVudFwiO1xyXG4gIH0gZWxzZSBpZiAodGhpcy5iYXNlLnNjaGVtZSA9PT0gXCJmaWxlXCIpIHtcclxuICAgIHRoaXMuc3RhdGUgPSBcImZpbGVcIjtcclxuICAgIC0tdGhpcy5wb2ludGVyO1xyXG4gIH0gZWxzZSB7XHJcbiAgICB0aGlzLnN0YXRlID0gXCJyZWxhdGl2ZVwiO1xyXG4gICAgLS10aGlzLnBvaW50ZXI7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gdHJ1ZTtcclxufTtcclxuXHJcblVSTFN0YXRlTWFjaGluZS5wcm90b3R5cGVbXCJwYXJzZSBzcGVjaWFsIHJlbGF0aXZlIG9yIGF1dGhvcml0eVwiXSA9IGZ1bmN0aW9uIHBhcnNlU3BlY2lhbFJlbGF0aXZlT3JBdXRob3JpdHkoYykge1xyXG4gIGlmIChjID09PSA0NyAmJiB0aGlzLmlucHV0W3RoaXMucG9pbnRlciArIDFdID09PSA0Nykge1xyXG4gICAgdGhpcy5zdGF0ZSA9IFwic3BlY2lhbCBhdXRob3JpdHkgaWdub3JlIHNsYXNoZXNcIjtcclxuICAgICsrdGhpcy5wb2ludGVyO1xyXG4gIH0gZWxzZSB7XHJcbiAgICB0aGlzLnBhcnNlRXJyb3IgPSB0cnVlO1xyXG4gICAgdGhpcy5zdGF0ZSA9IFwicmVsYXRpdmVcIjtcclxuICAgIC0tdGhpcy5wb2ludGVyO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHRydWU7XHJcbn07XHJcblxyXG5VUkxTdGF0ZU1hY2hpbmUucHJvdG90eXBlW1wicGFyc2UgcGF0aCBvciBhdXRob3JpdHlcIl0gPSBmdW5jdGlvbiBwYXJzZVBhdGhPckF1dGhvcml0eShjKSB7XHJcbiAgaWYgKGMgPT09IDQ3KSB7XHJcbiAgICB0aGlzLnN0YXRlID0gXCJhdXRob3JpdHlcIjtcclxuICB9IGVsc2Uge1xyXG4gICAgdGhpcy5zdGF0ZSA9IFwicGF0aFwiO1xyXG4gICAgLS10aGlzLnBvaW50ZXI7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gdHJ1ZTtcclxufTtcclxuXHJcblVSTFN0YXRlTWFjaGluZS5wcm90b3R5cGVbXCJwYXJzZSByZWxhdGl2ZVwiXSA9IGZ1bmN0aW9uIHBhcnNlUmVsYXRpdmUoYykge1xyXG4gIHRoaXMudXJsLnNjaGVtZSA9IHRoaXMuYmFzZS5zY2hlbWU7XHJcbiAgaWYgKGlzTmFOKGMpKSB7XHJcbiAgICB0aGlzLnVybC51c2VybmFtZSA9IHRoaXMuYmFzZS51c2VybmFtZTtcclxuICAgIHRoaXMudXJsLnBhc3N3b3JkID0gdGhpcy5iYXNlLnBhc3N3b3JkO1xyXG4gICAgdGhpcy51cmwuaG9zdCA9IHRoaXMuYmFzZS5ob3N0O1xyXG4gICAgdGhpcy51cmwucG9ydCA9IHRoaXMuYmFzZS5wb3J0O1xyXG4gICAgdGhpcy51cmwucGF0aCA9IHRoaXMuYmFzZS5wYXRoLnNsaWNlKCk7XHJcbiAgICB0aGlzLnVybC5xdWVyeSA9IHRoaXMuYmFzZS5xdWVyeTtcclxuICB9IGVsc2UgaWYgKGMgPT09IDQ3KSB7XHJcbiAgICB0aGlzLnN0YXRlID0gXCJyZWxhdGl2ZSBzbGFzaFwiO1xyXG4gIH0gZWxzZSBpZiAoYyA9PT0gNjMpIHtcclxuICAgIHRoaXMudXJsLnVzZXJuYW1lID0gdGhpcy5iYXNlLnVzZXJuYW1lO1xyXG4gICAgdGhpcy51cmwucGFzc3dvcmQgPSB0aGlzLmJhc2UucGFzc3dvcmQ7XHJcbiAgICB0aGlzLnVybC5ob3N0ID0gdGhpcy5iYXNlLmhvc3Q7XHJcbiAgICB0aGlzLnVybC5wb3J0ID0gdGhpcy5iYXNlLnBvcnQ7XHJcbiAgICB0aGlzLnVybC5wYXRoID0gdGhpcy5iYXNlLnBhdGguc2xpY2UoKTtcclxuICAgIHRoaXMudXJsLnF1ZXJ5ID0gXCJcIjtcclxuICAgIHRoaXMuc3RhdGUgPSBcInF1ZXJ5XCI7XHJcbiAgfSBlbHNlIGlmIChjID09PSAzNSkge1xyXG4gICAgdGhpcy51cmwudXNlcm5hbWUgPSB0aGlzLmJhc2UudXNlcm5hbWU7XHJcbiAgICB0aGlzLnVybC5wYXNzd29yZCA9IHRoaXMuYmFzZS5wYXNzd29yZDtcclxuICAgIHRoaXMudXJsLmhvc3QgPSB0aGlzLmJhc2UuaG9zdDtcclxuICAgIHRoaXMudXJsLnBvcnQgPSB0aGlzLmJhc2UucG9ydDtcclxuICAgIHRoaXMudXJsLnBhdGggPSB0aGlzLmJhc2UucGF0aC5zbGljZSgpO1xyXG4gICAgdGhpcy51cmwucXVlcnkgPSB0aGlzLmJhc2UucXVlcnk7XHJcbiAgICB0aGlzLnVybC5mcmFnbWVudCA9IFwiXCI7XHJcbiAgICB0aGlzLnN0YXRlID0gXCJmcmFnbWVudFwiO1xyXG4gIH0gZWxzZSBpZiAoaXNTcGVjaWFsKHRoaXMudXJsKSAmJiBjID09PSA5Mikge1xyXG4gICAgdGhpcy5wYXJzZUVycm9yID0gdHJ1ZTtcclxuICAgIHRoaXMuc3RhdGUgPSBcInJlbGF0aXZlIHNsYXNoXCI7XHJcbiAgfSBlbHNlIHtcclxuICAgIHRoaXMudXJsLnVzZXJuYW1lID0gdGhpcy5iYXNlLnVzZXJuYW1lO1xyXG4gICAgdGhpcy51cmwucGFzc3dvcmQgPSB0aGlzLmJhc2UucGFzc3dvcmQ7XHJcbiAgICB0aGlzLnVybC5ob3N0ID0gdGhpcy5iYXNlLmhvc3Q7XHJcbiAgICB0aGlzLnVybC5wb3J0ID0gdGhpcy5iYXNlLnBvcnQ7XHJcbiAgICB0aGlzLnVybC5wYXRoID0gdGhpcy5iYXNlLnBhdGguc2xpY2UoMCwgdGhpcy5iYXNlLnBhdGgubGVuZ3RoIC0gMSk7XHJcblxyXG4gICAgdGhpcy5zdGF0ZSA9IFwicGF0aFwiO1xyXG4gICAgLS10aGlzLnBvaW50ZXI7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gdHJ1ZTtcclxufTtcclxuXHJcblVSTFN0YXRlTWFjaGluZS5wcm90b3R5cGVbXCJwYXJzZSByZWxhdGl2ZSBzbGFzaFwiXSA9IGZ1bmN0aW9uIHBhcnNlUmVsYXRpdmVTbGFzaChjKSB7XHJcbiAgaWYgKGlzU3BlY2lhbCh0aGlzLnVybCkgJiYgKGMgPT09IDQ3IHx8IGMgPT09IDkyKSkge1xyXG4gICAgaWYgKGMgPT09IDkyKSB7XHJcbiAgICAgIHRoaXMucGFyc2VFcnJvciA9IHRydWU7XHJcbiAgICB9XHJcbiAgICB0aGlzLnN0YXRlID0gXCJzcGVjaWFsIGF1dGhvcml0eSBpZ25vcmUgc2xhc2hlc1wiO1xyXG4gIH0gZWxzZSBpZiAoYyA9PT0gNDcpIHtcclxuICAgIHRoaXMuc3RhdGUgPSBcImF1dGhvcml0eVwiO1xyXG4gIH0gZWxzZSB7XHJcbiAgICB0aGlzLnVybC51c2VybmFtZSA9IHRoaXMuYmFzZS51c2VybmFtZTtcclxuICAgIHRoaXMudXJsLnBhc3N3b3JkID0gdGhpcy5iYXNlLnBhc3N3b3JkO1xyXG4gICAgdGhpcy51cmwuaG9zdCA9IHRoaXMuYmFzZS5ob3N0O1xyXG4gICAgdGhpcy51cmwucG9ydCA9IHRoaXMuYmFzZS5wb3J0O1xyXG4gICAgdGhpcy5zdGF0ZSA9IFwicGF0aFwiO1xyXG4gICAgLS10aGlzLnBvaW50ZXI7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gdHJ1ZTtcclxufTtcclxuXHJcblVSTFN0YXRlTWFjaGluZS5wcm90b3R5cGVbXCJwYXJzZSBzcGVjaWFsIGF1dGhvcml0eSBzbGFzaGVzXCJdID0gZnVuY3Rpb24gcGFyc2VTcGVjaWFsQXV0aG9yaXR5U2xhc2hlcyhjKSB7XHJcbiAgaWYgKGMgPT09IDQ3ICYmIHRoaXMuaW5wdXRbdGhpcy5wb2ludGVyICsgMV0gPT09IDQ3KSB7XHJcbiAgICB0aGlzLnN0YXRlID0gXCJzcGVjaWFsIGF1dGhvcml0eSBpZ25vcmUgc2xhc2hlc1wiO1xyXG4gICAgKyt0aGlzLnBvaW50ZXI7XHJcbiAgfSBlbHNlIHtcclxuICAgIHRoaXMucGFyc2VFcnJvciA9IHRydWU7XHJcbiAgICB0aGlzLnN0YXRlID0gXCJzcGVjaWFsIGF1dGhvcml0eSBpZ25vcmUgc2xhc2hlc1wiO1xyXG4gICAgLS10aGlzLnBvaW50ZXI7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gdHJ1ZTtcclxufTtcclxuXHJcblVSTFN0YXRlTWFjaGluZS5wcm90b3R5cGVbXCJwYXJzZSBzcGVjaWFsIGF1dGhvcml0eSBpZ25vcmUgc2xhc2hlc1wiXSA9IGZ1bmN0aW9uIHBhcnNlU3BlY2lhbEF1dGhvcml0eUlnbm9yZVNsYXNoZXMoYykge1xyXG4gIGlmIChjICE9PSA0NyAmJiBjICE9PSA5Mikge1xyXG4gICAgdGhpcy5zdGF0ZSA9IFwiYXV0aG9yaXR5XCI7XHJcbiAgICAtLXRoaXMucG9pbnRlcjtcclxuICB9IGVsc2Uge1xyXG4gICAgdGhpcy5wYXJzZUVycm9yID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHJldHVybiB0cnVlO1xyXG59O1xyXG5cclxuVVJMU3RhdGVNYWNoaW5lLnByb3RvdHlwZVtcInBhcnNlIGF1dGhvcml0eVwiXSA9IGZ1bmN0aW9uIHBhcnNlQXV0aG9yaXR5KGMsIGNTdHIpIHtcclxuICBpZiAoYyA9PT0gNjQpIHtcclxuICAgIHRoaXMucGFyc2VFcnJvciA9IHRydWU7XHJcbiAgICBpZiAodGhpcy5hdEZsYWcpIHtcclxuICAgICAgdGhpcy5idWZmZXIgPSBcIiU0MFwiICsgdGhpcy5idWZmZXI7XHJcbiAgICB9XHJcbiAgICB0aGlzLmF0RmxhZyA9IHRydWU7XHJcblxyXG4gICAgLy8gY2FyZWZ1bCwgdGhpcyBpcyBiYXNlZCBvbiBidWZmZXIgYW5kIGhhcyBpdHMgb3duIHBvaW50ZXIgKHRoaXMucG9pbnRlciAhPSBwb2ludGVyKSBhbmQgaW5uZXIgY2hhcnNcclxuICAgIGNvbnN0IGxlbiA9IGNvdW50U3ltYm9scyh0aGlzLmJ1ZmZlcik7XHJcbiAgICBmb3IgKGxldCBwb2ludGVyID0gMDsgcG9pbnRlciA8IGxlbjsgKytwb2ludGVyKSB7XHJcbiAgICAgIGNvbnN0IGNvZGVQb2ludCA9IHRoaXMuYnVmZmVyLmNvZGVQb2ludEF0KHBvaW50ZXIpO1xyXG5cclxuICAgICAgaWYgKGNvZGVQb2ludCA9PT0gNTggJiYgIXRoaXMucGFzc3dvcmRUb2tlblNlZW5GbGFnKSB7XHJcbiAgICAgICAgdGhpcy5wYXNzd29yZFRva2VuU2VlbkZsYWcgPSB0cnVlO1xyXG4gICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICB9XHJcbiAgICAgIGNvbnN0IGVuY29kZWRDb2RlUG9pbnRzID0gcGVyY2VudEVuY29kZUNoYXIoY29kZVBvaW50LCBpc1VzZXJpbmZvUGVyY2VudEVuY29kZSk7XHJcbiAgICAgIGlmICh0aGlzLnBhc3N3b3JkVG9rZW5TZWVuRmxhZykge1xyXG4gICAgICAgIHRoaXMudXJsLnBhc3N3b3JkICs9IGVuY29kZWRDb2RlUG9pbnRzO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMudXJsLnVzZXJuYW1lICs9IGVuY29kZWRDb2RlUG9pbnRzO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB0aGlzLmJ1ZmZlciA9IFwiXCI7XHJcbiAgfSBlbHNlIGlmIChpc05hTihjKSB8fCBjID09PSA0NyB8fCBjID09PSA2MyB8fCBjID09PSAzNSB8fFxyXG4gICAgICAgICAgICAgKGlzU3BlY2lhbCh0aGlzLnVybCkgJiYgYyA9PT0gOTIpKSB7XHJcbiAgICBpZiAodGhpcy5hdEZsYWcgJiYgdGhpcy5idWZmZXIgPT09IFwiXCIpIHtcclxuICAgICAgdGhpcy5wYXJzZUVycm9yID0gdHJ1ZTtcclxuICAgICAgcmV0dXJuIGZhaWx1cmU7XHJcbiAgICB9XHJcbiAgICB0aGlzLnBvaW50ZXIgLT0gY291bnRTeW1ib2xzKHRoaXMuYnVmZmVyKSArIDE7XHJcbiAgICB0aGlzLmJ1ZmZlciA9IFwiXCI7XHJcbiAgICB0aGlzLnN0YXRlID0gXCJob3N0XCI7XHJcbiAgfSBlbHNlIHtcclxuICAgIHRoaXMuYnVmZmVyICs9IGNTdHI7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gdHJ1ZTtcclxufTtcclxuXHJcblVSTFN0YXRlTWFjaGluZS5wcm90b3R5cGVbXCJwYXJzZSBob3N0bmFtZVwiXSA9XHJcblVSTFN0YXRlTWFjaGluZS5wcm90b3R5cGVbXCJwYXJzZSBob3N0XCJdID0gZnVuY3Rpb24gcGFyc2VIb3N0TmFtZShjLCBjU3RyKSB7XHJcbiAgaWYgKHRoaXMuc3RhdGVPdmVycmlkZSAmJiB0aGlzLnVybC5zY2hlbWUgPT09IFwiZmlsZVwiKSB7XHJcbiAgICAtLXRoaXMucG9pbnRlcjtcclxuICAgIHRoaXMuc3RhdGUgPSBcImZpbGUgaG9zdFwiO1xyXG4gIH0gZWxzZSBpZiAoYyA9PT0gNTggJiYgIXRoaXMuYXJyRmxhZykge1xyXG4gICAgaWYgKHRoaXMuYnVmZmVyID09PSBcIlwiKSB7XHJcbiAgICAgIHRoaXMucGFyc2VFcnJvciA9IHRydWU7XHJcbiAgICAgIHJldHVybiBmYWlsdXJlO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGhvc3QgPSBwYXJzZUhvc3QodGhpcy5idWZmZXIsIGlzU3BlY2lhbCh0aGlzLnVybCkpO1xyXG4gICAgaWYgKGhvc3QgPT09IGZhaWx1cmUpIHtcclxuICAgICAgcmV0dXJuIGZhaWx1cmU7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy51cmwuaG9zdCA9IGhvc3Q7XHJcbiAgICB0aGlzLmJ1ZmZlciA9IFwiXCI7XHJcbiAgICB0aGlzLnN0YXRlID0gXCJwb3J0XCI7XHJcbiAgICBpZiAodGhpcy5zdGF0ZU92ZXJyaWRlID09PSBcImhvc3RuYW1lXCIpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gIH0gZWxzZSBpZiAoaXNOYU4oYykgfHwgYyA9PT0gNDcgfHwgYyA9PT0gNjMgfHwgYyA9PT0gMzUgfHxcclxuICAgICAgICAgICAgIChpc1NwZWNpYWwodGhpcy51cmwpICYmIGMgPT09IDkyKSkge1xyXG4gICAgLS10aGlzLnBvaW50ZXI7XHJcbiAgICBpZiAoaXNTcGVjaWFsKHRoaXMudXJsKSAmJiB0aGlzLmJ1ZmZlciA9PT0gXCJcIikge1xyXG4gICAgICB0aGlzLnBhcnNlRXJyb3IgPSB0cnVlO1xyXG4gICAgICByZXR1cm4gZmFpbHVyZTtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5zdGF0ZU92ZXJyaWRlICYmIHRoaXMuYnVmZmVyID09PSBcIlwiICYmXHJcbiAgICAgICAgICAgICAgIChpbmNsdWRlc0NyZWRlbnRpYWxzKHRoaXMudXJsKSB8fCB0aGlzLnVybC5wb3J0ICE9PSBudWxsKSkge1xyXG4gICAgICB0aGlzLnBhcnNlRXJyb3IgPSB0cnVlO1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgaG9zdCA9IHBhcnNlSG9zdCh0aGlzLmJ1ZmZlciwgaXNTcGVjaWFsKHRoaXMudXJsKSk7XHJcbiAgICBpZiAoaG9zdCA9PT0gZmFpbHVyZSkge1xyXG4gICAgICByZXR1cm4gZmFpbHVyZTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnVybC5ob3N0ID0gaG9zdDtcclxuICAgIHRoaXMuYnVmZmVyID0gXCJcIjtcclxuICAgIHRoaXMuc3RhdGUgPSBcInBhdGggc3RhcnRcIjtcclxuICAgIGlmICh0aGlzLnN0YXRlT3ZlcnJpZGUpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gIH0gZWxzZSB7XHJcbiAgICBpZiAoYyA9PT0gOTEpIHtcclxuICAgICAgdGhpcy5hcnJGbGFnID0gdHJ1ZTtcclxuICAgIH0gZWxzZSBpZiAoYyA9PT0gOTMpIHtcclxuICAgICAgdGhpcy5hcnJGbGFnID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgICB0aGlzLmJ1ZmZlciArPSBjU3RyO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHRydWU7XHJcbn07XHJcblxyXG5VUkxTdGF0ZU1hY2hpbmUucHJvdG90eXBlW1wicGFyc2UgcG9ydFwiXSA9IGZ1bmN0aW9uIHBhcnNlUG9ydChjLCBjU3RyKSB7XHJcbiAgaWYgKGlzQVNDSUlEaWdpdChjKSkge1xyXG4gICAgdGhpcy5idWZmZXIgKz0gY1N0cjtcclxuICB9IGVsc2UgaWYgKGlzTmFOKGMpIHx8IGMgPT09IDQ3IHx8IGMgPT09IDYzIHx8IGMgPT09IDM1IHx8XHJcbiAgICAgICAgICAgICAoaXNTcGVjaWFsKHRoaXMudXJsKSAmJiBjID09PSA5MikgfHxcclxuICAgICAgICAgICAgIHRoaXMuc3RhdGVPdmVycmlkZSkge1xyXG4gICAgaWYgKHRoaXMuYnVmZmVyICE9PSBcIlwiKSB7XHJcbiAgICAgIGNvbnN0IHBvcnQgPSBwYXJzZUludCh0aGlzLmJ1ZmZlcik7XHJcbiAgICAgIGlmIChwb3J0ID4gTWF0aC5wb3coMiwgMTYpIC0gMSkge1xyXG4gICAgICAgIHRoaXMucGFyc2VFcnJvciA9IHRydWU7XHJcbiAgICAgICAgcmV0dXJuIGZhaWx1cmU7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy51cmwucG9ydCA9IHBvcnQgPT09IGRlZmF1bHRQb3J0KHRoaXMudXJsLnNjaGVtZSkgPyBudWxsIDogcG9ydDtcclxuICAgICAgdGhpcy5idWZmZXIgPSBcIlwiO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuc3RhdGVPdmVycmlkZSkge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgICB0aGlzLnN0YXRlID0gXCJwYXRoIHN0YXJ0XCI7XHJcbiAgICAtLXRoaXMucG9pbnRlcjtcclxuICB9IGVsc2Uge1xyXG4gICAgdGhpcy5wYXJzZUVycm9yID0gdHJ1ZTtcclxuICAgIHJldHVybiBmYWlsdXJlO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHRydWU7XHJcbn07XHJcblxyXG5jb25zdCBmaWxlT3RoZXJ3aXNlQ29kZVBvaW50cyA9IG5ldyBTZXQoWzQ3LCA5MiwgNjMsIDM1XSk7XHJcblxyXG5VUkxTdGF0ZU1hY2hpbmUucHJvdG90eXBlW1wicGFyc2UgZmlsZVwiXSA9IGZ1bmN0aW9uIHBhcnNlRmlsZShjKSB7XHJcbiAgdGhpcy51cmwuc2NoZW1lID0gXCJmaWxlXCI7XHJcblxyXG4gIGlmIChjID09PSA0NyB8fCBjID09PSA5Mikge1xyXG4gICAgaWYgKGMgPT09IDkyKSB7XHJcbiAgICAgIHRoaXMucGFyc2VFcnJvciA9IHRydWU7XHJcbiAgICB9XHJcbiAgICB0aGlzLnN0YXRlID0gXCJmaWxlIHNsYXNoXCI7XHJcbiAgfSBlbHNlIGlmICh0aGlzLmJhc2UgIT09IG51bGwgJiYgdGhpcy5iYXNlLnNjaGVtZSA9PT0gXCJmaWxlXCIpIHtcclxuICAgIGlmIChpc05hTihjKSkge1xyXG4gICAgICB0aGlzLnVybC5ob3N0ID0gdGhpcy5iYXNlLmhvc3Q7XHJcbiAgICAgIHRoaXMudXJsLnBhdGggPSB0aGlzLmJhc2UucGF0aC5zbGljZSgpO1xyXG4gICAgICB0aGlzLnVybC5xdWVyeSA9IHRoaXMuYmFzZS5xdWVyeTtcclxuICAgIH0gZWxzZSBpZiAoYyA9PT0gNjMpIHtcclxuICAgICAgdGhpcy51cmwuaG9zdCA9IHRoaXMuYmFzZS5ob3N0O1xyXG4gICAgICB0aGlzLnVybC5wYXRoID0gdGhpcy5iYXNlLnBhdGguc2xpY2UoKTtcclxuICAgICAgdGhpcy51cmwucXVlcnkgPSBcIlwiO1xyXG4gICAgICB0aGlzLnN0YXRlID0gXCJxdWVyeVwiO1xyXG4gICAgfSBlbHNlIGlmIChjID09PSAzNSkge1xyXG4gICAgICB0aGlzLnVybC5ob3N0ID0gdGhpcy5iYXNlLmhvc3Q7XHJcbiAgICAgIHRoaXMudXJsLnBhdGggPSB0aGlzLmJhc2UucGF0aC5zbGljZSgpO1xyXG4gICAgICB0aGlzLnVybC5xdWVyeSA9IHRoaXMuYmFzZS5xdWVyeTtcclxuICAgICAgdGhpcy51cmwuZnJhZ21lbnQgPSBcIlwiO1xyXG4gICAgICB0aGlzLnN0YXRlID0gXCJmcmFnbWVudFwiO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKHRoaXMuaW5wdXQubGVuZ3RoIC0gdGhpcy5wb2ludGVyIC0gMSA9PT0gMCB8fCAvLyByZW1haW5pbmcgY29uc2lzdHMgb2YgMCBjb2RlIHBvaW50c1xyXG4gICAgICAgICAgIWlzV2luZG93c0RyaXZlTGV0dGVyQ29kZVBvaW50cyhjLCB0aGlzLmlucHV0W3RoaXMucG9pbnRlciArIDFdKSB8fFxyXG4gICAgICAgICAgKHRoaXMuaW5wdXQubGVuZ3RoIC0gdGhpcy5wb2ludGVyIC0gMSA+PSAyICYmIC8vIHJlbWFpbmluZyBoYXMgYXQgbGVhc3QgMiBjb2RlIHBvaW50c1xyXG4gICAgICAgICAgICFmaWxlT3RoZXJ3aXNlQ29kZVBvaW50cy5oYXModGhpcy5pbnB1dFt0aGlzLnBvaW50ZXIgKyAyXSkpKSB7XHJcbiAgICAgICAgdGhpcy51cmwuaG9zdCA9IHRoaXMuYmFzZS5ob3N0O1xyXG4gICAgICAgIHRoaXMudXJsLnBhdGggPSB0aGlzLmJhc2UucGF0aC5zbGljZSgpO1xyXG4gICAgICAgIHNob3J0ZW5QYXRoKHRoaXMudXJsKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLnBhcnNlRXJyb3IgPSB0cnVlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLnN0YXRlID0gXCJwYXRoXCI7XHJcbiAgICAgIC0tdGhpcy5wb2ludGVyO1xyXG4gICAgfVxyXG4gIH0gZWxzZSB7XHJcbiAgICB0aGlzLnN0YXRlID0gXCJwYXRoXCI7XHJcbiAgICAtLXRoaXMucG9pbnRlcjtcclxuICB9XHJcblxyXG4gIHJldHVybiB0cnVlO1xyXG59O1xyXG5cclxuVVJMU3RhdGVNYWNoaW5lLnByb3RvdHlwZVtcInBhcnNlIGZpbGUgc2xhc2hcIl0gPSBmdW5jdGlvbiBwYXJzZUZpbGVTbGFzaChjKSB7XHJcbiAgaWYgKGMgPT09IDQ3IHx8IGMgPT09IDkyKSB7XHJcbiAgICBpZiAoYyA9PT0gOTIpIHtcclxuICAgICAgdGhpcy5wYXJzZUVycm9yID0gdHJ1ZTtcclxuICAgIH1cclxuICAgIHRoaXMuc3RhdGUgPSBcImZpbGUgaG9zdFwiO1xyXG4gIH0gZWxzZSB7XHJcbiAgICBpZiAodGhpcy5iYXNlICE9PSBudWxsICYmIHRoaXMuYmFzZS5zY2hlbWUgPT09IFwiZmlsZVwiKSB7XHJcbiAgICAgIGlmIChpc05vcm1hbGl6ZWRXaW5kb3dzRHJpdmVMZXR0ZXJTdHJpbmcodGhpcy5iYXNlLnBhdGhbMF0pKSB7XHJcbiAgICAgICAgdGhpcy51cmwucGF0aC5wdXNoKHRoaXMuYmFzZS5wYXRoWzBdKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLnVybC5ob3N0ID0gdGhpcy5iYXNlLmhvc3Q7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRoaXMuc3RhdGUgPSBcInBhdGhcIjtcclxuICAgIC0tdGhpcy5wb2ludGVyO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHRydWU7XHJcbn07XHJcblxyXG5VUkxTdGF0ZU1hY2hpbmUucHJvdG90eXBlW1wicGFyc2UgZmlsZSBob3N0XCJdID0gZnVuY3Rpb24gcGFyc2VGaWxlSG9zdChjLCBjU3RyKSB7XHJcbiAgaWYgKGlzTmFOKGMpIHx8IGMgPT09IDQ3IHx8IGMgPT09IDkyIHx8IGMgPT09IDYzIHx8IGMgPT09IDM1KSB7XHJcbiAgICAtLXRoaXMucG9pbnRlcjtcclxuICAgIGlmICghdGhpcy5zdGF0ZU92ZXJyaWRlICYmIGlzV2luZG93c0RyaXZlTGV0dGVyU3RyaW5nKHRoaXMuYnVmZmVyKSkge1xyXG4gICAgICB0aGlzLnBhcnNlRXJyb3IgPSB0cnVlO1xyXG4gICAgICB0aGlzLnN0YXRlID0gXCJwYXRoXCI7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuYnVmZmVyID09PSBcIlwiKSB7XHJcbiAgICAgIHRoaXMudXJsLmhvc3QgPSBcIlwiO1xyXG4gICAgICBpZiAodGhpcy5zdGF0ZU92ZXJyaWRlKSB7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuc3RhdGUgPSBcInBhdGggc3RhcnRcIjtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGxldCBob3N0ID0gcGFyc2VIb3N0KHRoaXMuYnVmZmVyLCBpc1NwZWNpYWwodGhpcy51cmwpKTtcclxuICAgICAgaWYgKGhvc3QgPT09IGZhaWx1cmUpIHtcclxuICAgICAgICByZXR1cm4gZmFpbHVyZTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoaG9zdCA9PT0gXCJsb2NhbGhvc3RcIikge1xyXG4gICAgICAgIGhvc3QgPSBcIlwiO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMudXJsLmhvc3QgPSBob3N0O1xyXG5cclxuICAgICAgaWYgKHRoaXMuc3RhdGVPdmVycmlkZSkge1xyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5idWZmZXIgPSBcIlwiO1xyXG4gICAgICB0aGlzLnN0YXRlID0gXCJwYXRoIHN0YXJ0XCI7XHJcbiAgICB9XHJcbiAgfSBlbHNlIHtcclxuICAgIHRoaXMuYnVmZmVyICs9IGNTdHI7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gdHJ1ZTtcclxufTtcclxuXHJcblVSTFN0YXRlTWFjaGluZS5wcm90b3R5cGVbXCJwYXJzZSBwYXRoIHN0YXJ0XCJdID0gZnVuY3Rpb24gcGFyc2VQYXRoU3RhcnQoYykge1xyXG4gIGlmIChpc1NwZWNpYWwodGhpcy51cmwpKSB7XHJcbiAgICBpZiAoYyA9PT0gOTIpIHtcclxuICAgICAgdGhpcy5wYXJzZUVycm9yID0gdHJ1ZTtcclxuICAgIH1cclxuICAgIHRoaXMuc3RhdGUgPSBcInBhdGhcIjtcclxuXHJcbiAgICBpZiAoYyAhPT0gNDcgJiYgYyAhPT0gOTIpIHtcclxuICAgICAgLS10aGlzLnBvaW50ZXI7XHJcbiAgICB9XHJcbiAgfSBlbHNlIGlmICghdGhpcy5zdGF0ZU92ZXJyaWRlICYmIGMgPT09IDYzKSB7XHJcbiAgICB0aGlzLnVybC5xdWVyeSA9IFwiXCI7XHJcbiAgICB0aGlzLnN0YXRlID0gXCJxdWVyeVwiO1xyXG4gIH0gZWxzZSBpZiAoIXRoaXMuc3RhdGVPdmVycmlkZSAmJiBjID09PSAzNSkge1xyXG4gICAgdGhpcy51cmwuZnJhZ21lbnQgPSBcIlwiO1xyXG4gICAgdGhpcy5zdGF0ZSA9IFwiZnJhZ21lbnRcIjtcclxuICB9IGVsc2UgaWYgKGMgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgdGhpcy5zdGF0ZSA9IFwicGF0aFwiO1xyXG4gICAgaWYgKGMgIT09IDQ3KSB7XHJcbiAgICAgIC0tdGhpcy5wb2ludGVyO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHRydWU7XHJcbn07XHJcblxyXG5VUkxTdGF0ZU1hY2hpbmUucHJvdG90eXBlW1wicGFyc2UgcGF0aFwiXSA9IGZ1bmN0aW9uIHBhcnNlUGF0aChjKSB7XHJcbiAgaWYgKGlzTmFOKGMpIHx8IGMgPT09IDQ3IHx8IChpc1NwZWNpYWwodGhpcy51cmwpICYmIGMgPT09IDkyKSB8fFxyXG4gICAgICAoIXRoaXMuc3RhdGVPdmVycmlkZSAmJiAoYyA9PT0gNjMgfHwgYyA9PT0gMzUpKSkge1xyXG4gICAgaWYgKGlzU3BlY2lhbCh0aGlzLnVybCkgJiYgYyA9PT0gOTIpIHtcclxuICAgICAgdGhpcy5wYXJzZUVycm9yID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoaXNEb3VibGVEb3QodGhpcy5idWZmZXIpKSB7XHJcbiAgICAgIHNob3J0ZW5QYXRoKHRoaXMudXJsKTtcclxuICAgICAgaWYgKGMgIT09IDQ3ICYmICEoaXNTcGVjaWFsKHRoaXMudXJsKSAmJiBjID09PSA5MikpIHtcclxuICAgICAgICB0aGlzLnVybC5wYXRoLnB1c2goXCJcIik7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSBpZiAoaXNTaW5nbGVEb3QodGhpcy5idWZmZXIpICYmIGMgIT09IDQ3ICYmXHJcbiAgICAgICAgICAgICAgICEoaXNTcGVjaWFsKHRoaXMudXJsKSAmJiBjID09PSA5MikpIHtcclxuICAgICAgdGhpcy51cmwucGF0aC5wdXNoKFwiXCIpO1xyXG4gICAgfSBlbHNlIGlmICghaXNTaW5nbGVEb3QodGhpcy5idWZmZXIpKSB7XHJcbiAgICAgIGlmICh0aGlzLnVybC5zY2hlbWUgPT09IFwiZmlsZVwiICYmIHRoaXMudXJsLnBhdGgubGVuZ3RoID09PSAwICYmIGlzV2luZG93c0RyaXZlTGV0dGVyU3RyaW5nKHRoaXMuYnVmZmVyKSkge1xyXG4gICAgICAgIGlmICh0aGlzLnVybC5ob3N0ICE9PSBcIlwiICYmIHRoaXMudXJsLmhvc3QgIT09IG51bGwpIHtcclxuICAgICAgICAgIHRoaXMucGFyc2VFcnJvciA9IHRydWU7XHJcbiAgICAgICAgICB0aGlzLnVybC5ob3N0ID0gXCJcIjtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5idWZmZXIgPSB0aGlzLmJ1ZmZlclswXSArIFwiOlwiO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMudXJsLnBhdGgucHVzaCh0aGlzLmJ1ZmZlcik7XHJcbiAgICB9XHJcbiAgICB0aGlzLmJ1ZmZlciA9IFwiXCI7XHJcbiAgICBpZiAodGhpcy51cmwuc2NoZW1lID09PSBcImZpbGVcIiAmJiAoYyA9PT0gdW5kZWZpbmVkIHx8IGMgPT09IDYzIHx8IGMgPT09IDM1KSkge1xyXG4gICAgICB3aGlsZSAodGhpcy51cmwucGF0aC5sZW5ndGggPiAxICYmIHRoaXMudXJsLnBhdGhbMF0gPT09IFwiXCIpIHtcclxuICAgICAgICB0aGlzLnBhcnNlRXJyb3IgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMudXJsLnBhdGguc2hpZnQoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgaWYgKGMgPT09IDYzKSB7XHJcbiAgICAgIHRoaXMudXJsLnF1ZXJ5ID0gXCJcIjtcclxuICAgICAgdGhpcy5zdGF0ZSA9IFwicXVlcnlcIjtcclxuICAgIH1cclxuICAgIGlmIChjID09PSAzNSkge1xyXG4gICAgICB0aGlzLnVybC5mcmFnbWVudCA9IFwiXCI7XHJcbiAgICAgIHRoaXMuc3RhdGUgPSBcImZyYWdtZW50XCI7XHJcbiAgICB9XHJcbiAgfSBlbHNlIHtcclxuICAgIC8vIFRPRE86IElmIGMgaXMgbm90IGEgVVJMIGNvZGUgcG9pbnQgYW5kIG5vdCBcIiVcIiwgcGFyc2UgZXJyb3IuXHJcblxyXG4gICAgaWYgKGMgPT09IDM3ICYmXHJcbiAgICAgICghaXNBU0NJSUhleCh0aGlzLmlucHV0W3RoaXMucG9pbnRlciArIDFdKSB8fFxyXG4gICAgICAgICFpc0FTQ0lJSGV4KHRoaXMuaW5wdXRbdGhpcy5wb2ludGVyICsgMl0pKSkge1xyXG4gICAgICB0aGlzLnBhcnNlRXJyb3IgPSB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuYnVmZmVyICs9IHBlcmNlbnRFbmNvZGVDaGFyKGMsIGlzUGF0aFBlcmNlbnRFbmNvZGUpO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHRydWU7XHJcbn07XHJcblxyXG5VUkxTdGF0ZU1hY2hpbmUucHJvdG90eXBlW1wicGFyc2UgY2Fubm90LWJlLWEtYmFzZS1VUkwgcGF0aFwiXSA9IGZ1bmN0aW9uIHBhcnNlQ2Fubm90QmVBQmFzZVVSTFBhdGgoYykge1xyXG4gIGlmIChjID09PSA2Mykge1xyXG4gICAgdGhpcy51cmwucXVlcnkgPSBcIlwiO1xyXG4gICAgdGhpcy5zdGF0ZSA9IFwicXVlcnlcIjtcclxuICB9IGVsc2UgaWYgKGMgPT09IDM1KSB7XHJcbiAgICB0aGlzLnVybC5mcmFnbWVudCA9IFwiXCI7XHJcbiAgICB0aGlzLnN0YXRlID0gXCJmcmFnbWVudFwiO1xyXG4gIH0gZWxzZSB7XHJcbiAgICAvLyBUT0RPOiBBZGQ6IG5vdCBhIFVSTCBjb2RlIHBvaW50XHJcbiAgICBpZiAoIWlzTmFOKGMpICYmIGMgIT09IDM3KSB7XHJcbiAgICAgIHRoaXMucGFyc2VFcnJvciA9IHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGMgPT09IDM3ICYmXHJcbiAgICAgICAgKCFpc0FTQ0lJSGV4KHRoaXMuaW5wdXRbdGhpcy5wb2ludGVyICsgMV0pIHx8XHJcbiAgICAgICAgICFpc0FTQ0lJSGV4KHRoaXMuaW5wdXRbdGhpcy5wb2ludGVyICsgMl0pKSkge1xyXG4gICAgICB0aGlzLnBhcnNlRXJyb3IgPSB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICghaXNOYU4oYykpIHtcclxuICAgICAgdGhpcy51cmwucGF0aFswXSA9IHRoaXMudXJsLnBhdGhbMF0gKyBwZXJjZW50RW5jb2RlQ2hhcihjLCBpc0MwQ29udHJvbFBlcmNlbnRFbmNvZGUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHRydWU7XHJcbn07XHJcblxyXG5VUkxTdGF0ZU1hY2hpbmUucHJvdG90eXBlW1wicGFyc2UgcXVlcnlcIl0gPSBmdW5jdGlvbiBwYXJzZVF1ZXJ5KGMsIGNTdHIpIHtcclxuICBpZiAoaXNOYU4oYykgfHwgKCF0aGlzLnN0YXRlT3ZlcnJpZGUgJiYgYyA9PT0gMzUpKSB7XHJcbiAgICBpZiAoIWlzU3BlY2lhbCh0aGlzLnVybCkgfHwgdGhpcy51cmwuc2NoZW1lID09PSBcIndzXCIgfHwgdGhpcy51cmwuc2NoZW1lID09PSBcIndzc1wiKSB7XHJcbiAgICAgIHRoaXMuZW5jb2RpbmdPdmVycmlkZSA9IFwidXRmLThcIjtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBidWZmZXIgPSBuZXcgQnVmZmVyKHRoaXMuYnVmZmVyKTsgLy8gVE9ETzogVXNlIGVuY29kaW5nIG92ZXJyaWRlIGluc3RlYWRcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYnVmZmVyLmxlbmd0aDsgKytpKSB7XHJcbiAgICAgIGlmIChidWZmZXJbaV0gPCAweDIxIHx8IGJ1ZmZlcltpXSA+IDB4N0UgfHwgYnVmZmVyW2ldID09PSAweDIyIHx8IGJ1ZmZlcltpXSA9PT0gMHgyMyB8fFxyXG4gICAgICAgICAgYnVmZmVyW2ldID09PSAweDNDIHx8IGJ1ZmZlcltpXSA9PT0gMHgzRSkge1xyXG4gICAgICAgIHRoaXMudXJsLnF1ZXJ5ICs9IHBlcmNlbnRFbmNvZGUoYnVmZmVyW2ldKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLnVybC5xdWVyeSArPSBTdHJpbmcuZnJvbUNvZGVQb2ludChidWZmZXJbaV0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5idWZmZXIgPSBcIlwiO1xyXG4gICAgaWYgKGMgPT09IDM1KSB7XHJcbiAgICAgIHRoaXMudXJsLmZyYWdtZW50ID0gXCJcIjtcclxuICAgICAgdGhpcy5zdGF0ZSA9IFwiZnJhZ21lbnRcIjtcclxuICAgIH1cclxuICB9IGVsc2Uge1xyXG4gICAgLy8gVE9ETzogSWYgYyBpcyBub3QgYSBVUkwgY29kZSBwb2ludCBhbmQgbm90IFwiJVwiLCBwYXJzZSBlcnJvci5cclxuICAgIGlmIChjID09PSAzNyAmJlxyXG4gICAgICAoIWlzQVNDSUlIZXgodGhpcy5pbnB1dFt0aGlzLnBvaW50ZXIgKyAxXSkgfHxcclxuICAgICAgICAhaXNBU0NJSUhleCh0aGlzLmlucHV0W3RoaXMucG9pbnRlciArIDJdKSkpIHtcclxuICAgICAgdGhpcy5wYXJzZUVycm9yID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmJ1ZmZlciArPSBjU3RyO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHRydWU7XHJcbn07XHJcblxyXG5VUkxTdGF0ZU1hY2hpbmUucHJvdG90eXBlW1wicGFyc2UgZnJhZ21lbnRcIl0gPSBmdW5jdGlvbiBwYXJzZUZyYWdtZW50KGMpIHtcclxuICBpZiAoaXNOYU4oYykpIHsgLy8gZG8gbm90aGluZ1xyXG4gIH0gZWxzZSBpZiAoYyA9PT0gMHgwKSB7XHJcbiAgICB0aGlzLnBhcnNlRXJyb3IgPSB0cnVlO1xyXG4gIH0gZWxzZSB7XHJcbiAgICAvLyBUT0RPOiBJZiBjIGlzIG5vdCBhIFVSTCBjb2RlIHBvaW50IGFuZCBub3QgXCIlXCIsIHBhcnNlIGVycm9yLlxyXG4gICAgaWYgKGMgPT09IDM3ICYmXHJcbiAgICAgICghaXNBU0NJSUhleCh0aGlzLmlucHV0W3RoaXMucG9pbnRlciArIDFdKSB8fFxyXG4gICAgICAgICFpc0FTQ0lJSGV4KHRoaXMuaW5wdXRbdGhpcy5wb2ludGVyICsgMl0pKSkge1xyXG4gICAgICB0aGlzLnBhcnNlRXJyb3IgPSB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMudXJsLmZyYWdtZW50ICs9IHBlcmNlbnRFbmNvZGVDaGFyKGMsIGlzQzBDb250cm9sUGVyY2VudEVuY29kZSk7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gdHJ1ZTtcclxufTtcclxuXHJcbmZ1bmN0aW9uIHNlcmlhbGl6ZVVSTCh1cmwsIGV4Y2x1ZGVGcmFnbWVudCkge1xyXG4gIGxldCBvdXRwdXQgPSB1cmwuc2NoZW1lICsgXCI6XCI7XHJcbiAgaWYgKHVybC5ob3N0ICE9PSBudWxsKSB7XHJcbiAgICBvdXRwdXQgKz0gXCIvL1wiO1xyXG5cclxuICAgIGlmICh1cmwudXNlcm5hbWUgIT09IFwiXCIgfHwgdXJsLnBhc3N3b3JkICE9PSBcIlwiKSB7XHJcbiAgICAgIG91dHB1dCArPSB1cmwudXNlcm5hbWU7XHJcbiAgICAgIGlmICh1cmwucGFzc3dvcmQgIT09IFwiXCIpIHtcclxuICAgICAgICBvdXRwdXQgKz0gXCI6XCIgKyB1cmwucGFzc3dvcmQ7XHJcbiAgICAgIH1cclxuICAgICAgb3V0cHV0ICs9IFwiQFwiO1xyXG4gICAgfVxyXG5cclxuICAgIG91dHB1dCArPSBzZXJpYWxpemVIb3N0KHVybC5ob3N0KTtcclxuXHJcbiAgICBpZiAodXJsLnBvcnQgIT09IG51bGwpIHtcclxuICAgICAgb3V0cHV0ICs9IFwiOlwiICsgdXJsLnBvcnQ7XHJcbiAgICB9XHJcbiAgfSBlbHNlIGlmICh1cmwuaG9zdCA9PT0gbnVsbCAmJiB1cmwuc2NoZW1lID09PSBcImZpbGVcIikge1xyXG4gICAgb3V0cHV0ICs9IFwiLy9cIjtcclxuICB9XHJcblxyXG4gIGlmICh1cmwuY2Fubm90QmVBQmFzZVVSTCkge1xyXG4gICAgb3V0cHV0ICs9IHVybC5wYXRoWzBdO1xyXG4gIH0gZWxzZSB7XHJcbiAgICBmb3IgKGNvbnN0IHN0cmluZyBvZiB1cmwucGF0aCkge1xyXG4gICAgICBvdXRwdXQgKz0gXCIvXCIgKyBzdHJpbmc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpZiAodXJsLnF1ZXJ5ICE9PSBudWxsKSB7XHJcbiAgICBvdXRwdXQgKz0gXCI/XCIgKyB1cmwucXVlcnk7XHJcbiAgfVxyXG5cclxuICBpZiAoIWV4Y2x1ZGVGcmFnbWVudCAmJiB1cmwuZnJhZ21lbnQgIT09IG51bGwpIHtcclxuICAgIG91dHB1dCArPSBcIiNcIiArIHVybC5mcmFnbWVudDtcclxuICB9XHJcblxyXG4gIHJldHVybiBvdXRwdXQ7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHNlcmlhbGl6ZU9yaWdpbih0dXBsZSkge1xyXG4gIGxldCByZXN1bHQgPSB0dXBsZS5zY2hlbWUgKyBcIjovL1wiO1xyXG4gIHJlc3VsdCArPSBzZXJpYWxpemVIb3N0KHR1cGxlLmhvc3QpO1xyXG5cclxuICBpZiAodHVwbGUucG9ydCAhPT0gbnVsbCkge1xyXG4gICAgcmVzdWx0ICs9IFwiOlwiICsgdHVwbGUucG9ydDtcclxuICB9XHJcblxyXG4gIHJldHVybiByZXN1bHQ7XHJcbn1cclxuXHJcbm1vZHVsZS5leHBvcnRzLnNlcmlhbGl6ZVVSTCA9IHNlcmlhbGl6ZVVSTDtcclxuXHJcbm1vZHVsZS5leHBvcnRzLnNlcmlhbGl6ZVVSTE9yaWdpbiA9IGZ1bmN0aW9uICh1cmwpIHtcclxuICAvLyBodHRwczovL3VybC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtdXJsLW9yaWdpblxyXG4gIHN3aXRjaCAodXJsLnNjaGVtZSkge1xyXG4gICAgY2FzZSBcImJsb2JcIjpcclxuICAgICAgdHJ5IHtcclxuICAgICAgICByZXR1cm4gbW9kdWxlLmV4cG9ydHMuc2VyaWFsaXplVVJMT3JpZ2luKG1vZHVsZS5leHBvcnRzLnBhcnNlVVJMKHVybC5wYXRoWzBdKSk7XHJcbiAgICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgICAvLyBzZXJpYWxpemluZyBhbiBvcGFxdWUgb3JpZ2luIHJldHVybnMgXCJudWxsXCJcclxuICAgICAgICByZXR1cm4gXCJudWxsXCI7XHJcbiAgICAgIH1cclxuICAgIGNhc2UgXCJmdHBcIjpcclxuICAgIGNhc2UgXCJnb3BoZXJcIjpcclxuICAgIGNhc2UgXCJodHRwXCI6XHJcbiAgICBjYXNlIFwiaHR0cHNcIjpcclxuICAgIGNhc2UgXCJ3c1wiOlxyXG4gICAgY2FzZSBcIndzc1wiOlxyXG4gICAgICByZXR1cm4gc2VyaWFsaXplT3JpZ2luKHtcclxuICAgICAgICBzY2hlbWU6IHVybC5zY2hlbWUsXHJcbiAgICAgICAgaG9zdDogdXJsLmhvc3QsXHJcbiAgICAgICAgcG9ydDogdXJsLnBvcnRcclxuICAgICAgfSk7XHJcbiAgICBjYXNlIFwiZmlsZVwiOlxyXG4gICAgICAvLyBzcGVjIHNheXMgXCJleGVyY2lzZSB0byB0aGUgcmVhZGVyXCIsIGNocm9tZSBzYXlzIFwiZmlsZTovL1wiXHJcbiAgICAgIHJldHVybiBcImZpbGU6Ly9cIjtcclxuICAgIGRlZmF1bHQ6XHJcbiAgICAgIC8vIHNlcmlhbGl6aW5nIGFuIG9wYXF1ZSBvcmlnaW4gcmV0dXJucyBcIm51bGxcIlxyXG4gICAgICByZXR1cm4gXCJudWxsXCI7XHJcbiAgfVxyXG59O1xyXG5cclxubW9kdWxlLmV4cG9ydHMuYmFzaWNVUkxQYXJzZSA9IGZ1bmN0aW9uIChpbnB1dCwgb3B0aW9ucykge1xyXG4gIGlmIChvcHRpb25zID09PSB1bmRlZmluZWQpIHtcclxuICAgIG9wdGlvbnMgPSB7fTtcclxuICB9XHJcblxyXG4gIGNvbnN0IHVzbSA9IG5ldyBVUkxTdGF0ZU1hY2hpbmUoaW5wdXQsIG9wdGlvbnMuYmFzZVVSTCwgb3B0aW9ucy5lbmNvZGluZ092ZXJyaWRlLCBvcHRpb25zLnVybCwgb3B0aW9ucy5zdGF0ZU92ZXJyaWRlKTtcclxuICBpZiAodXNtLmZhaWx1cmUpIHtcclxuICAgIHJldHVybiBcImZhaWx1cmVcIjtcclxuICB9XHJcblxyXG4gIHJldHVybiB1c20udXJsO1xyXG59O1xyXG5cclxubW9kdWxlLmV4cG9ydHMuc2V0VGhlVXNlcm5hbWUgPSBmdW5jdGlvbiAodXJsLCB1c2VybmFtZSkge1xyXG4gIHVybC51c2VybmFtZSA9IFwiXCI7XHJcbiAgY29uc3QgZGVjb2RlZCA9IHB1bnljb2RlLnVjczIuZGVjb2RlKHVzZXJuYW1lKTtcclxuICBmb3IgKGxldCBpID0gMDsgaSA8IGRlY29kZWQubGVuZ3RoOyArK2kpIHtcclxuICAgIHVybC51c2VybmFtZSArPSBwZXJjZW50RW5jb2RlQ2hhcihkZWNvZGVkW2ldLCBpc1VzZXJpbmZvUGVyY2VudEVuY29kZSk7XHJcbiAgfVxyXG59O1xyXG5cclxubW9kdWxlLmV4cG9ydHMuc2V0VGhlUGFzc3dvcmQgPSBmdW5jdGlvbiAodXJsLCBwYXNzd29yZCkge1xyXG4gIHVybC5wYXNzd29yZCA9IFwiXCI7XHJcbiAgY29uc3QgZGVjb2RlZCA9IHB1bnljb2RlLnVjczIuZGVjb2RlKHBhc3N3b3JkKTtcclxuICBmb3IgKGxldCBpID0gMDsgaSA8IGRlY29kZWQubGVuZ3RoOyArK2kpIHtcclxuICAgIHVybC5wYXNzd29yZCArPSBwZXJjZW50RW5jb2RlQ2hhcihkZWNvZGVkW2ldLCBpc1VzZXJpbmZvUGVyY2VudEVuY29kZSk7XHJcbiAgfVxyXG59O1xyXG5cclxubW9kdWxlLmV4cG9ydHMuc2VyaWFsaXplSG9zdCA9IHNlcmlhbGl6ZUhvc3Q7XHJcblxyXG5tb2R1bGUuZXhwb3J0cy5jYW5ub3RIYXZlQVVzZXJuYW1lUGFzc3dvcmRQb3J0ID0gY2Fubm90SGF2ZUFVc2VybmFtZVBhc3N3b3JkUG9ydDtcclxuXHJcbm1vZHVsZS5leHBvcnRzLnNlcmlhbGl6ZUludGVnZXIgPSBmdW5jdGlvbiAoaW50ZWdlcikge1xyXG4gIHJldHVybiBTdHJpbmcoaW50ZWdlcik7XHJcbn07XHJcblxyXG5tb2R1bGUuZXhwb3J0cy5wYXJzZVVSTCA9IGZ1bmN0aW9uIChpbnB1dCwgb3B0aW9ucykge1xyXG4gIGlmIChvcHRpb25zID09PSB1bmRlZmluZWQpIHtcclxuICAgIG9wdGlvbnMgPSB7fTtcclxuICB9XHJcblxyXG4gIC8vIFdlIGRvbid0IGhhbmRsZSBibG9icywgc28gdGhpcyBqdXN0IGRlbGVnYXRlczpcclxuICByZXR1cm4gbW9kdWxlLmV4cG9ydHMuYmFzaWNVUkxQYXJzZShpbnB1dCwgeyBiYXNlVVJMOiBvcHRpb25zLmJhc2VVUkwsIGVuY29kaW5nT3ZlcnJpZGU6IG9wdGlvbnMuZW5jb2RpbmdPdmVycmlkZSB9KTtcclxufTtcclxuIiwgIlwidXNlIHN0cmljdFwiO1xuY29uc3QgdXNtID0gcmVxdWlyZShcIi4vdXJsLXN0YXRlLW1hY2hpbmVcIik7XG5cbmV4cG9ydHMuaW1wbGVtZW50YXRpb24gPSBjbGFzcyBVUkxJbXBsIHtcbiAgY29uc3RydWN0b3IoY29uc3RydWN0b3JBcmdzKSB7XG4gICAgY29uc3QgdXJsID0gY29uc3RydWN0b3JBcmdzWzBdO1xuICAgIGNvbnN0IGJhc2UgPSBjb25zdHJ1Y3RvckFyZ3NbMV07XG5cbiAgICBsZXQgcGFyc2VkQmFzZSA9IG51bGw7XG4gICAgaWYgKGJhc2UgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcGFyc2VkQmFzZSA9IHVzbS5iYXNpY1VSTFBhcnNlKGJhc2UpO1xuICAgICAgaWYgKHBhcnNlZEJhc2UgPT09IFwiZmFpbHVyZVwiKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXCJJbnZhbGlkIGJhc2UgVVJMXCIpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IHBhcnNlZFVSTCA9IHVzbS5iYXNpY1VSTFBhcnNlKHVybCwgeyBiYXNlVVJMOiBwYXJzZWRCYXNlIH0pO1xuICAgIGlmIChwYXJzZWRVUkwgPT09IFwiZmFpbHVyZVwiKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFwiSW52YWxpZCBVUkxcIik7XG4gICAgfVxuXG4gICAgdGhpcy5fdXJsID0gcGFyc2VkVVJMO1xuXG4gICAgLy8gVE9ETzogcXVlcnkgc3R1ZmZcbiAgfVxuXG4gIGdldCBocmVmKCkge1xuICAgIHJldHVybiB1c20uc2VyaWFsaXplVVJMKHRoaXMuX3VybCk7XG4gIH1cblxuICBzZXQgaHJlZih2KSB7XG4gICAgY29uc3QgcGFyc2VkVVJMID0gdXNtLmJhc2ljVVJMUGFyc2Uodik7XG4gICAgaWYgKHBhcnNlZFVSTCA9PT0gXCJmYWlsdXJlXCIpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXCJJbnZhbGlkIFVSTFwiKTtcbiAgICB9XG5cbiAgICB0aGlzLl91cmwgPSBwYXJzZWRVUkw7XG4gIH1cblxuICBnZXQgb3JpZ2luKCkge1xuICAgIHJldHVybiB1c20uc2VyaWFsaXplVVJMT3JpZ2luKHRoaXMuX3VybCk7XG4gIH1cblxuICBnZXQgcHJvdG9jb2woKSB7XG4gICAgcmV0dXJuIHRoaXMuX3VybC5zY2hlbWUgKyBcIjpcIjtcbiAgfVxuXG4gIHNldCBwcm90b2NvbCh2KSB7XG4gICAgdXNtLmJhc2ljVVJMUGFyc2UodiArIFwiOlwiLCB7IHVybDogdGhpcy5fdXJsLCBzdGF0ZU92ZXJyaWRlOiBcInNjaGVtZSBzdGFydFwiIH0pO1xuICB9XG5cbiAgZ2V0IHVzZXJuYW1lKCkge1xuICAgIHJldHVybiB0aGlzLl91cmwudXNlcm5hbWU7XG4gIH1cblxuICBzZXQgdXNlcm5hbWUodikge1xuICAgIGlmICh1c20uY2Fubm90SGF2ZUFVc2VybmFtZVBhc3N3b3JkUG9ydCh0aGlzLl91cmwpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdXNtLnNldFRoZVVzZXJuYW1lKHRoaXMuX3VybCwgdik7XG4gIH1cblxuICBnZXQgcGFzc3dvcmQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3VybC5wYXNzd29yZDtcbiAgfVxuXG4gIHNldCBwYXNzd29yZCh2KSB7XG4gICAgaWYgKHVzbS5jYW5ub3RIYXZlQVVzZXJuYW1lUGFzc3dvcmRQb3J0KHRoaXMuX3VybCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB1c20uc2V0VGhlUGFzc3dvcmQodGhpcy5fdXJsLCB2KTtcbiAgfVxuXG4gIGdldCBob3N0KCkge1xuICAgIGNvbnN0IHVybCA9IHRoaXMuX3VybDtcblxuICAgIGlmICh1cmwuaG9zdCA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuIFwiXCI7XG4gICAgfVxuXG4gICAgaWYgKHVybC5wb3J0ID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gdXNtLnNlcmlhbGl6ZUhvc3QodXJsLmhvc3QpO1xuICAgIH1cblxuICAgIHJldHVybiB1c20uc2VyaWFsaXplSG9zdCh1cmwuaG9zdCkgKyBcIjpcIiArIHVzbS5zZXJpYWxpemVJbnRlZ2VyKHVybC5wb3J0KTtcbiAgfVxuXG4gIHNldCBob3N0KHYpIHtcbiAgICBpZiAodGhpcy5fdXJsLmNhbm5vdEJlQUJhc2VVUkwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB1c20uYmFzaWNVUkxQYXJzZSh2LCB7IHVybDogdGhpcy5fdXJsLCBzdGF0ZU92ZXJyaWRlOiBcImhvc3RcIiB9KTtcbiAgfVxuXG4gIGdldCBob3N0bmFtZSgpIHtcbiAgICBpZiAodGhpcy5fdXJsLmhvc3QgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiBcIlwiO1xuICAgIH1cblxuICAgIHJldHVybiB1c20uc2VyaWFsaXplSG9zdCh0aGlzLl91cmwuaG9zdCk7XG4gIH1cblxuICBzZXQgaG9zdG5hbWUodikge1xuICAgIGlmICh0aGlzLl91cmwuY2Fubm90QmVBQmFzZVVSTCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHVzbS5iYXNpY1VSTFBhcnNlKHYsIHsgdXJsOiB0aGlzLl91cmwsIHN0YXRlT3ZlcnJpZGU6IFwiaG9zdG5hbWVcIiB9KTtcbiAgfVxuXG4gIGdldCBwb3J0KCkge1xuICAgIGlmICh0aGlzLl91cmwucG9ydCA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuIFwiXCI7XG4gICAgfVxuXG4gICAgcmV0dXJuIHVzbS5zZXJpYWxpemVJbnRlZ2VyKHRoaXMuX3VybC5wb3J0KTtcbiAgfVxuXG4gIHNldCBwb3J0KHYpIHtcbiAgICBpZiAodXNtLmNhbm5vdEhhdmVBVXNlcm5hbWVQYXNzd29yZFBvcnQodGhpcy5fdXJsKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh2ID09PSBcIlwiKSB7XG4gICAgICB0aGlzLl91cmwucG9ydCA9IG51bGw7XG4gICAgfSBlbHNlIHtcbiAgICAgIHVzbS5iYXNpY1VSTFBhcnNlKHYsIHsgdXJsOiB0aGlzLl91cmwsIHN0YXRlT3ZlcnJpZGU6IFwicG9ydFwiIH0pO1xuICAgIH1cbiAgfVxuXG4gIGdldCBwYXRobmFtZSgpIHtcbiAgICBpZiAodGhpcy5fdXJsLmNhbm5vdEJlQUJhc2VVUkwpIHtcbiAgICAgIHJldHVybiB0aGlzLl91cmwucGF0aFswXTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fdXJsLnBhdGgubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4gXCJcIjtcbiAgICB9XG5cbiAgICByZXR1cm4gXCIvXCIgKyB0aGlzLl91cmwucGF0aC5qb2luKFwiL1wiKTtcbiAgfVxuXG4gIHNldCBwYXRobmFtZSh2KSB7XG4gICAgaWYgKHRoaXMuX3VybC5jYW5ub3RCZUFCYXNlVVJMKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fdXJsLnBhdGggPSBbXTtcbiAgICB1c20uYmFzaWNVUkxQYXJzZSh2LCB7IHVybDogdGhpcy5fdXJsLCBzdGF0ZU92ZXJyaWRlOiBcInBhdGggc3RhcnRcIiB9KTtcbiAgfVxuXG4gIGdldCBzZWFyY2goKSB7XG4gICAgaWYgKHRoaXMuX3VybC5xdWVyeSA9PT0gbnVsbCB8fCB0aGlzLl91cmwucXVlcnkgPT09IFwiXCIpIHtcbiAgICAgIHJldHVybiBcIlwiO1xuICAgIH1cblxuICAgIHJldHVybiBcIj9cIiArIHRoaXMuX3VybC5xdWVyeTtcbiAgfVxuXG4gIHNldCBzZWFyY2godikge1xuICAgIC8vIFRPRE86IHF1ZXJ5IHN0dWZmXG5cbiAgICBjb25zdCB1cmwgPSB0aGlzLl91cmw7XG5cbiAgICBpZiAodiA9PT0gXCJcIikge1xuICAgICAgdXJsLnF1ZXJ5ID0gbnVsbDtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBpbnB1dCA9IHZbMF0gPT09IFwiP1wiID8gdi5zdWJzdHJpbmcoMSkgOiB2O1xuICAgIHVybC5xdWVyeSA9IFwiXCI7XG4gICAgdXNtLmJhc2ljVVJMUGFyc2UoaW5wdXQsIHsgdXJsLCBzdGF0ZU92ZXJyaWRlOiBcInF1ZXJ5XCIgfSk7XG4gIH1cblxuICBnZXQgaGFzaCgpIHtcbiAgICBpZiAodGhpcy5fdXJsLmZyYWdtZW50ID09PSBudWxsIHx8IHRoaXMuX3VybC5mcmFnbWVudCA9PT0gXCJcIikge1xuICAgICAgcmV0dXJuIFwiXCI7XG4gICAgfVxuXG4gICAgcmV0dXJuIFwiI1wiICsgdGhpcy5fdXJsLmZyYWdtZW50O1xuICB9XG5cbiAgc2V0IGhhc2godikge1xuICAgIGlmICh2ID09PSBcIlwiKSB7XG4gICAgICB0aGlzLl91cmwuZnJhZ21lbnQgPSBudWxsO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGlucHV0ID0gdlswXSA9PT0gXCIjXCIgPyB2LnN1YnN0cmluZygxKSA6IHY7XG4gICAgdGhpcy5fdXJsLmZyYWdtZW50ID0gXCJcIjtcbiAgICB1c20uYmFzaWNVUkxQYXJzZShpbnB1dCwgeyB1cmw6IHRoaXMuX3VybCwgc3RhdGVPdmVycmlkZTogXCJmcmFnbWVudFwiIH0pO1xuICB9XG5cbiAgdG9KU09OKCkge1xuICAgIHJldHVybiB0aGlzLmhyZWY7XG4gIH1cbn07XG4iLCAiXCJ1c2Ugc3RyaWN0XCI7XG5cbmNvbnN0IGNvbnZlcnNpb25zID0gcmVxdWlyZShcIndlYmlkbC1jb252ZXJzaW9uc1wiKTtcbmNvbnN0IHV0aWxzID0gcmVxdWlyZShcIi4vdXRpbHMuanNcIik7XG5jb25zdCBJbXBsID0gcmVxdWlyZShcIi4vL1VSTC1pbXBsLmpzXCIpO1xuXG5jb25zdCBpbXBsID0gdXRpbHMuaW1wbFN5bWJvbDtcblxuZnVuY3Rpb24gVVJMKHVybCkge1xuICBpZiAoIXRoaXMgfHwgdGhpc1tpbXBsXSB8fCAhKHRoaXMgaW5zdGFuY2VvZiBVUkwpKSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkZhaWxlZCB0byBjb25zdHJ1Y3QgJ1VSTCc6IFBsZWFzZSB1c2UgdGhlICduZXcnIG9wZXJhdG9yLCB0aGlzIERPTSBvYmplY3QgY29uc3RydWN0b3IgY2Fubm90IGJlIGNhbGxlZCBhcyBhIGZ1bmN0aW9uLlwiKTtcbiAgfVxuICBpZiAoYXJndW1lbnRzLmxlbmd0aCA8IDEpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFwiRmFpbGVkIHRvIGNvbnN0cnVjdCAnVVJMJzogMSBhcmd1bWVudCByZXF1aXJlZCwgYnV0IG9ubHkgXCIgKyBhcmd1bWVudHMubGVuZ3RoICsgXCIgcHJlc2VudC5cIik7XG4gIH1cbiAgY29uc3QgYXJncyA9IFtdO1xuICBmb3IgKGxldCBpID0gMDsgaSA8IGFyZ3VtZW50cy5sZW5ndGggJiYgaSA8IDI7ICsraSkge1xuICAgIGFyZ3NbaV0gPSBhcmd1bWVudHNbaV07XG4gIH1cbiAgYXJnc1swXSA9IGNvbnZlcnNpb25zW1wiVVNWU3RyaW5nXCJdKGFyZ3NbMF0pO1xuICBpZiAoYXJnc1sxXSAhPT0gdW5kZWZpbmVkKSB7XG4gIGFyZ3NbMV0gPSBjb252ZXJzaW9uc1tcIlVTVlN0cmluZ1wiXShhcmdzWzFdKTtcbiAgfVxuXG4gIG1vZHVsZS5leHBvcnRzLnNldHVwKHRoaXMsIGFyZ3MpO1xufVxuXG5VUkwucHJvdG90eXBlLnRvSlNPTiA9IGZ1bmN0aW9uIHRvSlNPTigpIHtcbiAgaWYgKCF0aGlzIHx8ICFtb2R1bGUuZXhwb3J0cy5pcyh0aGlzKSkge1xuICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXCJJbGxlZ2FsIGludm9jYXRpb25cIik7XG4gIH1cbiAgY29uc3QgYXJncyA9IFtdO1xuICBmb3IgKGxldCBpID0gMDsgaSA8IGFyZ3VtZW50cy5sZW5ndGggJiYgaSA8IDA7ICsraSkge1xuICAgIGFyZ3NbaV0gPSBhcmd1bWVudHNbaV07XG4gIH1cbiAgcmV0dXJuIHRoaXNbaW1wbF0udG9KU09OLmFwcGx5KHRoaXNbaW1wbF0sIGFyZ3MpO1xufTtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShVUkwucHJvdG90eXBlLCBcImhyZWZcIiwge1xuICBnZXQoKSB7XG4gICAgcmV0dXJuIHRoaXNbaW1wbF0uaHJlZjtcbiAgfSxcbiAgc2V0KFYpIHtcbiAgICBWID0gY29udmVyc2lvbnNbXCJVU1ZTdHJpbmdcIl0oVik7XG4gICAgdGhpc1tpbXBsXS5ocmVmID0gVjtcbiAgfSxcbiAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgY29uZmlndXJhYmxlOiB0cnVlXG59KTtcblxuVVJMLnByb3RvdHlwZS50b1N0cmluZyA9IGZ1bmN0aW9uICgpIHtcbiAgaWYgKCF0aGlzIHx8ICFtb2R1bGUuZXhwb3J0cy5pcyh0aGlzKSkge1xuICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXCJJbGxlZ2FsIGludm9jYXRpb25cIik7XG4gIH1cbiAgcmV0dXJuIHRoaXMuaHJlZjtcbn07XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShVUkwucHJvdG90eXBlLCBcIm9yaWdpblwiLCB7XG4gIGdldCgpIHtcbiAgICByZXR1cm4gdGhpc1tpbXBsXS5vcmlnaW47XG4gIH0sXG4gIGVudW1lcmFibGU6IHRydWUsXG4gIGNvbmZpZ3VyYWJsZTogdHJ1ZVxufSk7XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShVUkwucHJvdG90eXBlLCBcInByb3RvY29sXCIsIHtcbiAgZ2V0KCkge1xuICAgIHJldHVybiB0aGlzW2ltcGxdLnByb3RvY29sO1xuICB9LFxuICBzZXQoVikge1xuICAgIFYgPSBjb252ZXJzaW9uc1tcIlVTVlN0cmluZ1wiXShWKTtcbiAgICB0aGlzW2ltcGxdLnByb3RvY29sID0gVjtcbiAgfSxcbiAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgY29uZmlndXJhYmxlOiB0cnVlXG59KTtcblxuT2JqZWN0LmRlZmluZVByb3BlcnR5KFVSTC5wcm90b3R5cGUsIFwidXNlcm5hbWVcIiwge1xuICBnZXQoKSB7XG4gICAgcmV0dXJuIHRoaXNbaW1wbF0udXNlcm5hbWU7XG4gIH0sXG4gIHNldChWKSB7XG4gICAgViA9IGNvbnZlcnNpb25zW1wiVVNWU3RyaW5nXCJdKFYpO1xuICAgIHRoaXNbaW1wbF0udXNlcm5hbWUgPSBWO1xuICB9LFxuICBlbnVtZXJhYmxlOiB0cnVlLFxuICBjb25maWd1cmFibGU6IHRydWVcbn0pO1xuXG5PYmplY3QuZGVmaW5lUHJvcGVydHkoVVJMLnByb3RvdHlwZSwgXCJwYXNzd29yZFwiLCB7XG4gIGdldCgpIHtcbiAgICByZXR1cm4gdGhpc1tpbXBsXS5wYXNzd29yZDtcbiAgfSxcbiAgc2V0KFYpIHtcbiAgICBWID0gY29udmVyc2lvbnNbXCJVU1ZTdHJpbmdcIl0oVik7XG4gICAgdGhpc1tpbXBsXS5wYXNzd29yZCA9IFY7XG4gIH0sXG4gIGVudW1lcmFibGU6IHRydWUsXG4gIGNvbmZpZ3VyYWJsZTogdHJ1ZVxufSk7XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShVUkwucHJvdG90eXBlLCBcImhvc3RcIiwge1xuICBnZXQoKSB7XG4gICAgcmV0dXJuIHRoaXNbaW1wbF0uaG9zdDtcbiAgfSxcbiAgc2V0KFYpIHtcbiAgICBWID0gY29udmVyc2lvbnNbXCJVU1ZTdHJpbmdcIl0oVik7XG4gICAgdGhpc1tpbXBsXS5ob3N0ID0gVjtcbiAgfSxcbiAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgY29uZmlndXJhYmxlOiB0cnVlXG59KTtcblxuT2JqZWN0LmRlZmluZVByb3BlcnR5KFVSTC5wcm90b3R5cGUsIFwiaG9zdG5hbWVcIiwge1xuICBnZXQoKSB7XG4gICAgcmV0dXJuIHRoaXNbaW1wbF0uaG9zdG5hbWU7XG4gIH0sXG4gIHNldChWKSB7XG4gICAgViA9IGNvbnZlcnNpb25zW1wiVVNWU3RyaW5nXCJdKFYpO1xuICAgIHRoaXNbaW1wbF0uaG9zdG5hbWUgPSBWO1xuICB9LFxuICBlbnVtZXJhYmxlOiB0cnVlLFxuICBjb25maWd1cmFibGU6IHRydWVcbn0pO1xuXG5PYmplY3QuZGVmaW5lUHJvcGVydHkoVVJMLnByb3RvdHlwZSwgXCJwb3J0XCIsIHtcbiAgZ2V0KCkge1xuICAgIHJldHVybiB0aGlzW2ltcGxdLnBvcnQ7XG4gIH0sXG4gIHNldChWKSB7XG4gICAgViA9IGNvbnZlcnNpb25zW1wiVVNWU3RyaW5nXCJdKFYpO1xuICAgIHRoaXNbaW1wbF0ucG9ydCA9IFY7XG4gIH0sXG4gIGVudW1lcmFibGU6IHRydWUsXG4gIGNvbmZpZ3VyYWJsZTogdHJ1ZVxufSk7XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShVUkwucHJvdG90eXBlLCBcInBhdGhuYW1lXCIsIHtcbiAgZ2V0KCkge1xuICAgIHJldHVybiB0aGlzW2ltcGxdLnBhdGhuYW1lO1xuICB9LFxuICBzZXQoVikge1xuICAgIFYgPSBjb252ZXJzaW9uc1tcIlVTVlN0cmluZ1wiXShWKTtcbiAgICB0aGlzW2ltcGxdLnBhdGhuYW1lID0gVjtcbiAgfSxcbiAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgY29uZmlndXJhYmxlOiB0cnVlXG59KTtcblxuT2JqZWN0LmRlZmluZVByb3BlcnR5KFVSTC5wcm90b3R5cGUsIFwic2VhcmNoXCIsIHtcbiAgZ2V0KCkge1xuICAgIHJldHVybiB0aGlzW2ltcGxdLnNlYXJjaDtcbiAgfSxcbiAgc2V0KFYpIHtcbiAgICBWID0gY29udmVyc2lvbnNbXCJVU1ZTdHJpbmdcIl0oVik7XG4gICAgdGhpc1tpbXBsXS5zZWFyY2ggPSBWO1xuICB9LFxuICBlbnVtZXJhYmxlOiB0cnVlLFxuICBjb25maWd1cmFibGU6IHRydWVcbn0pO1xuXG5PYmplY3QuZGVmaW5lUHJvcGVydHkoVVJMLnByb3RvdHlwZSwgXCJoYXNoXCIsIHtcbiAgZ2V0KCkge1xuICAgIHJldHVybiB0aGlzW2ltcGxdLmhhc2g7XG4gIH0sXG4gIHNldChWKSB7XG4gICAgViA9IGNvbnZlcnNpb25zW1wiVVNWU3RyaW5nXCJdKFYpO1xuICAgIHRoaXNbaW1wbF0uaGFzaCA9IFY7XG4gIH0sXG4gIGVudW1lcmFibGU6IHRydWUsXG4gIGNvbmZpZ3VyYWJsZTogdHJ1ZVxufSk7XG5cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGlzKG9iaikge1xuICAgIHJldHVybiAhIW9iaiAmJiBvYmpbaW1wbF0gaW5zdGFuY2VvZiBJbXBsLmltcGxlbWVudGF0aW9uO1xuICB9LFxuICBjcmVhdGUoY29uc3RydWN0b3JBcmdzLCBwcml2YXRlRGF0YSkge1xuICAgIGxldCBvYmogPSBPYmplY3QuY3JlYXRlKFVSTC5wcm90b3R5cGUpO1xuICAgIHRoaXMuc2V0dXAob2JqLCBjb25zdHJ1Y3RvckFyZ3MsIHByaXZhdGVEYXRhKTtcbiAgICByZXR1cm4gb2JqO1xuICB9LFxuICBzZXR1cChvYmosIGNvbnN0cnVjdG9yQXJncywgcHJpdmF0ZURhdGEpIHtcbiAgICBpZiAoIXByaXZhdGVEYXRhKSBwcml2YXRlRGF0YSA9IHt9O1xuICAgIHByaXZhdGVEYXRhLndyYXBwZXIgPSBvYmo7XG5cbiAgICBvYmpbaW1wbF0gPSBuZXcgSW1wbC5pbXBsZW1lbnRhdGlvbihjb25zdHJ1Y3RvckFyZ3MsIHByaXZhdGVEYXRhKTtcbiAgICBvYmpbaW1wbF1bdXRpbHMud3JhcHBlclN5bWJvbF0gPSBvYmo7XG4gIH0sXG4gIGludGVyZmFjZTogVVJMLFxuICBleHBvc2U6IHtcbiAgICBXaW5kb3c6IHsgVVJMOiBVUkwgfSxcbiAgICBXb3JrZXI6IHsgVVJMOiBVUkwgfVxuICB9XG59O1xuXG4iLCAiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydHMuVVJMID0gcmVxdWlyZShcIi4vVVJMXCIpLmludGVyZmFjZTtcbmV4cG9ydHMuc2VyaWFsaXplVVJMID0gcmVxdWlyZShcIi4vdXJsLXN0YXRlLW1hY2hpbmVcIikuc2VyaWFsaXplVVJMO1xuZXhwb3J0cy5zZXJpYWxpemVVUkxPcmlnaW4gPSByZXF1aXJlKFwiLi91cmwtc3RhdGUtbWFjaGluZVwiKS5zZXJpYWxpemVVUkxPcmlnaW47XG5leHBvcnRzLmJhc2ljVVJMUGFyc2UgPSByZXF1aXJlKFwiLi91cmwtc3RhdGUtbWFjaGluZVwiKS5iYXNpY1VSTFBhcnNlO1xuZXhwb3J0cy5zZXRUaGVVc2VybmFtZSA9IHJlcXVpcmUoXCIuL3VybC1zdGF0ZS1tYWNoaW5lXCIpLnNldFRoZVVzZXJuYW1lO1xuZXhwb3J0cy5zZXRUaGVQYXNzd29yZCA9IHJlcXVpcmUoXCIuL3VybC1zdGF0ZS1tYWNoaW5lXCIpLnNldFRoZVBhc3N3b3JkO1xuZXhwb3J0cy5zZXJpYWxpemVIb3N0ID0gcmVxdWlyZShcIi4vdXJsLXN0YXRlLW1hY2hpbmVcIikuc2VyaWFsaXplSG9zdDtcbmV4cG9ydHMuc2VyaWFsaXplSW50ZWdlciA9IHJlcXVpcmUoXCIuL3VybC1zdGF0ZS1tYWNoaW5lXCIpLnNlcmlhbGl6ZUludGVnZXI7XG5leHBvcnRzLnBhcnNlVVJMID0gcmVxdWlyZShcIi4vdXJsLXN0YXRlLW1hY2hpbmVcIikucGFyc2VVUkw7XG4iLCAiLyogZXNsaW50LWRpc2FibGUgbm9kZS9uby1kZXByZWNhdGVkLWFwaSAqL1xuXG4ndXNlIHN0cmljdCdcblxudmFyIGJ1ZmZlciA9IHJlcXVpcmUoJ2J1ZmZlcicpXG52YXIgQnVmZmVyID0gYnVmZmVyLkJ1ZmZlclxuXG52YXIgc2FmZXIgPSB7fVxuXG52YXIga2V5XG5cbmZvciAoa2V5IGluIGJ1ZmZlcikge1xuICBpZiAoIWJ1ZmZlci5oYXNPd25Qcm9wZXJ0eShrZXkpKSBjb250aW51ZVxuICBpZiAoa2V5ID09PSAnU2xvd0J1ZmZlcicgfHwga2V5ID09PSAnQnVmZmVyJykgY29udGludWVcbiAgc2FmZXJba2V5XSA9IGJ1ZmZlcltrZXldXG59XG5cbnZhciBTYWZlciA9IHNhZmVyLkJ1ZmZlciA9IHt9XG5mb3IgKGtleSBpbiBCdWZmZXIpIHtcbiAgaWYgKCFCdWZmZXIuaGFzT3duUHJvcGVydHkoa2V5KSkgY29udGludWVcbiAgaWYgKGtleSA9PT0gJ2FsbG9jVW5zYWZlJyB8fCBrZXkgPT09ICdhbGxvY1Vuc2FmZVNsb3cnKSBjb250aW51ZVxuICBTYWZlcltrZXldID0gQnVmZmVyW2tleV1cbn1cblxuc2FmZXIuQnVmZmVyLnByb3RvdHlwZSA9IEJ1ZmZlci5wcm90b3R5cGVcblxuaWYgKCFTYWZlci5mcm9tIHx8IFNhZmVyLmZyb20gPT09IFVpbnQ4QXJyYXkuZnJvbSkge1xuICBTYWZlci5mcm9tID0gZnVuY3Rpb24gKHZhbHVlLCBlbmNvZGluZ09yT2Zmc2V0LCBsZW5ndGgpIHtcbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignVGhlIFwidmFsdWVcIiBhcmd1bWVudCBtdXN0IG5vdCBiZSBvZiB0eXBlIG51bWJlci4gUmVjZWl2ZWQgdHlwZSAnICsgdHlwZW9mIHZhbHVlKVxuICAgIH1cbiAgICBpZiAodmFsdWUgJiYgdHlwZW9mIHZhbHVlLmxlbmd0aCA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ1RoZSBmaXJzdCBhcmd1bWVudCBtdXN0IGJlIG9uZSBvZiB0eXBlIHN0cmluZywgQnVmZmVyLCBBcnJheUJ1ZmZlciwgQXJyYXksIG9yIEFycmF5LWxpa2UgT2JqZWN0LiBSZWNlaXZlZCB0eXBlICcgKyB0eXBlb2YgdmFsdWUpXG4gICAgfVxuICAgIHJldHVybiBCdWZmZXIodmFsdWUsIGVuY29kaW5nT3JPZmZzZXQsIGxlbmd0aClcbiAgfVxufVxuXG5pZiAoIVNhZmVyLmFsbG9jKSB7XG4gIFNhZmVyLmFsbG9jID0gZnVuY3Rpb24gKHNpemUsIGZpbGwsIGVuY29kaW5nKSB7XG4gICAgaWYgKHR5cGVvZiBzaXplICE9PSAnbnVtYmVyJykge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignVGhlIFwic2l6ZVwiIGFyZ3VtZW50IG11c3QgYmUgb2YgdHlwZSBudW1iZXIuIFJlY2VpdmVkIHR5cGUgJyArIHR5cGVvZiBzaXplKVxuICAgIH1cbiAgICBpZiAoc2l6ZSA8IDAgfHwgc2l6ZSA+PSAyICogKDEgPDwgMzApKSB7XG4gICAgICB0aHJvdyBuZXcgUmFuZ2VFcnJvcignVGhlIHZhbHVlIFwiJyArIHNpemUgKyAnXCIgaXMgaW52YWxpZCBmb3Igb3B0aW9uIFwic2l6ZVwiJylcbiAgICB9XG4gICAgdmFyIGJ1ZiA9IEJ1ZmZlcihzaXplKVxuICAgIGlmICghZmlsbCB8fCBmaWxsLmxlbmd0aCA9PT0gMCkge1xuICAgICAgYnVmLmZpbGwoMClcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiBlbmNvZGluZyA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGJ1Zi5maWxsKGZpbGwsIGVuY29kaW5nKVxuICAgIH0gZWxzZSB7XG4gICAgICBidWYuZmlsbChmaWxsKVxuICAgIH1cbiAgICByZXR1cm4gYnVmXG4gIH1cbn1cblxuaWYgKCFzYWZlci5rU3RyaW5nTWF4TGVuZ3RoKSB7XG4gIHRyeSB7XG4gICAgc2FmZXIua1N0cmluZ01heExlbmd0aCA9IHByb2Nlc3MuYmluZGluZygnYnVmZmVyJykua1N0cmluZ01heExlbmd0aFxuICB9IGNhdGNoIChlKSB7XG4gICAgLy8gd2UgY2FuJ3QgZGV0ZXJtaW5lIGtTdHJpbmdNYXhMZW5ndGggaW4gZW52aXJvbm1lbnRzIHdoZXJlIHByb2Nlc3MuYmluZGluZ1xuICAgIC8vIGlzIHVuc3VwcG9ydGVkLCBzbyBsZXQncyBub3Qgc2V0IGl0XG4gIH1cbn1cblxuaWYgKCFzYWZlci5jb25zdGFudHMpIHtcbiAgc2FmZXIuY29uc3RhbnRzID0ge1xuICAgIE1BWF9MRU5HVEg6IHNhZmVyLmtNYXhMZW5ndGhcbiAgfVxuICBpZiAoc2FmZXIua1N0cmluZ01heExlbmd0aCkge1xuICAgIHNhZmVyLmNvbnN0YW50cy5NQVhfU1RSSU5HX0xFTkdUSCA9IHNhZmVyLmtTdHJpbmdNYXhMZW5ndGhcbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHNhZmVyXG4iLCAiXCJ1c2Ugc3RyaWN0XCI7XG5cbnZhciBCT01DaGFyID0gJ1xcdUZFRkYnO1xuXG5leHBvcnRzLlByZXBlbmRCT00gPSBQcmVwZW5kQk9NV3JhcHBlclxuZnVuY3Rpb24gUHJlcGVuZEJPTVdyYXBwZXIoZW5jb2Rlciwgb3B0aW9ucykge1xuICAgIHRoaXMuZW5jb2RlciA9IGVuY29kZXI7XG4gICAgdGhpcy5hZGRCT00gPSB0cnVlO1xufVxuXG5QcmVwZW5kQk9NV3JhcHBlci5wcm90b3R5cGUud3JpdGUgPSBmdW5jdGlvbihzdHIpIHtcbiAgICBpZiAodGhpcy5hZGRCT00pIHtcbiAgICAgICAgc3RyID0gQk9NQ2hhciArIHN0cjtcbiAgICAgICAgdGhpcy5hZGRCT00gPSBmYWxzZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5lbmNvZGVyLndyaXRlKHN0cik7XG59XG5cblByZXBlbmRCT01XcmFwcGVyLnByb3RvdHlwZS5lbmQgPSBmdW5jdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5lbmNvZGVyLmVuZCgpO1xufVxuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbmV4cG9ydHMuU3RyaXBCT00gPSBTdHJpcEJPTVdyYXBwZXI7XG5mdW5jdGlvbiBTdHJpcEJPTVdyYXBwZXIoZGVjb2Rlciwgb3B0aW9ucykge1xuICAgIHRoaXMuZGVjb2RlciA9IGRlY29kZXI7XG4gICAgdGhpcy5wYXNzID0gZmFsc2U7XG4gICAgdGhpcy5vcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcbn1cblxuU3RyaXBCT01XcmFwcGVyLnByb3RvdHlwZS53cml0ZSA9IGZ1bmN0aW9uKGJ1Zikge1xuICAgIHZhciByZXMgPSB0aGlzLmRlY29kZXIud3JpdGUoYnVmKTtcbiAgICBpZiAodGhpcy5wYXNzIHx8ICFyZXMpXG4gICAgICAgIHJldHVybiByZXM7XG5cbiAgICBpZiAocmVzWzBdID09PSBCT01DaGFyKSB7XG4gICAgICAgIHJlcyA9IHJlcy5zbGljZSgxKTtcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLm9wdGlvbnMuc3RyaXBCT00gPT09ICdmdW5jdGlvbicpXG4gICAgICAgICAgICB0aGlzLm9wdGlvbnMuc3RyaXBCT00oKTtcbiAgICB9XG5cbiAgICB0aGlzLnBhc3MgPSB0cnVlO1xuICAgIHJldHVybiByZXM7XG59XG5cblN0cmlwQk9NV3JhcHBlci5wcm90b3R5cGUuZW5kID0gZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuZGVjb2Rlci5lbmQoKTtcbn1cblxuIiwgIlwidXNlIHN0cmljdFwiO1xudmFyIEJ1ZmZlciA9IHJlcXVpcmUoXCJzYWZlci1idWZmZXJcIikuQnVmZmVyO1xuXG4vLyBFeHBvcnQgTm9kZS5qcyBpbnRlcm5hbCBlbmNvZGluZ3MuXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICAgIC8vIEVuY29kaW5nc1xuICAgIHV0Zjg6ICAgeyB0eXBlOiBcIl9pbnRlcm5hbFwiLCBib21Bd2FyZTogdHJ1ZX0sXG4gICAgY2VzdTg6ICB7IHR5cGU6IFwiX2ludGVybmFsXCIsIGJvbUF3YXJlOiB0cnVlfSxcbiAgICB1bmljb2RlMTF1dGY4OiBcInV0ZjhcIixcblxuICAgIHVjczI6ICAgeyB0eXBlOiBcIl9pbnRlcm5hbFwiLCBib21Bd2FyZTogdHJ1ZX0sXG4gICAgdXRmMTZsZTogXCJ1Y3MyXCIsXG5cbiAgICBiaW5hcnk6IHsgdHlwZTogXCJfaW50ZXJuYWxcIiB9LFxuICAgIGJhc2U2NDogeyB0eXBlOiBcIl9pbnRlcm5hbFwiIH0sXG4gICAgaGV4OiAgICB7IHR5cGU6IFwiX2ludGVybmFsXCIgfSxcblxuICAgIC8vIENvZGVjLlxuICAgIF9pbnRlcm5hbDogSW50ZXJuYWxDb2RlYyxcbn07XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbmZ1bmN0aW9uIEludGVybmFsQ29kZWMoY29kZWNPcHRpb25zLCBpY29udikge1xuICAgIHRoaXMuZW5jID0gY29kZWNPcHRpb25zLmVuY29kaW5nTmFtZTtcbiAgICB0aGlzLmJvbUF3YXJlID0gY29kZWNPcHRpb25zLmJvbUF3YXJlO1xuXG4gICAgaWYgKHRoaXMuZW5jID09PSBcImJhc2U2NFwiKVxuICAgICAgICB0aGlzLmVuY29kZXIgPSBJbnRlcm5hbEVuY29kZXJCYXNlNjQ7XG4gICAgZWxzZSBpZiAodGhpcy5lbmMgPT09IFwiY2VzdThcIikge1xuICAgICAgICB0aGlzLmVuYyA9IFwidXRmOFwiOyAvLyBVc2UgdXRmOCBmb3IgZGVjb2RpbmcuXG4gICAgICAgIHRoaXMuZW5jb2RlciA9IEludGVybmFsRW5jb2RlckNlc3U4O1xuXG4gICAgICAgIC8vIEFkZCBkZWNvZGVyIGZvciB2ZXJzaW9ucyBvZiBOb2RlIG5vdCBzdXBwb3J0aW5nIENFU1UtOFxuICAgICAgICBpZiAoQnVmZmVyLmZyb20oJ2VkYTBiZGVkYjJhOScsICdoZXgnKS50b1N0cmluZygpICE9PSAnXHVEODNEXHVEQ0E5Jykge1xuICAgICAgICAgICAgdGhpcy5kZWNvZGVyID0gSW50ZXJuYWxEZWNvZGVyQ2VzdTg7XG4gICAgICAgICAgICB0aGlzLmRlZmF1bHRDaGFyVW5pY29kZSA9IGljb252LmRlZmF1bHRDaGFyVW5pY29kZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuSW50ZXJuYWxDb2RlYy5wcm90b3R5cGUuZW5jb2RlciA9IEludGVybmFsRW5jb2RlcjtcbkludGVybmFsQ29kZWMucHJvdG90eXBlLmRlY29kZXIgPSBJbnRlcm5hbERlY29kZXI7XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFdlIHVzZSBub2RlLmpzIGludGVybmFsIGRlY29kZXIuIEl0cyBzaWduYXR1cmUgaXMgdGhlIHNhbWUgYXMgb3Vycy5cbnZhciBTdHJpbmdEZWNvZGVyID0gcmVxdWlyZSgnc3RyaW5nX2RlY29kZXInKS5TdHJpbmdEZWNvZGVyO1xuXG5pZiAoIVN0cmluZ0RlY29kZXIucHJvdG90eXBlLmVuZCkgLy8gTm9kZSB2MC44IGRvZXNuJ3QgaGF2ZSB0aGlzIG1ldGhvZC5cbiAgICBTdHJpbmdEZWNvZGVyLnByb3RvdHlwZS5lbmQgPSBmdW5jdGlvbigpIHt9O1xuXG5cbmZ1bmN0aW9uIEludGVybmFsRGVjb2RlcihvcHRpb25zLCBjb2RlYykge1xuICAgIHRoaXMuZGVjb2RlciA9IG5ldyBTdHJpbmdEZWNvZGVyKGNvZGVjLmVuYyk7XG59XG5cbkludGVybmFsRGVjb2Rlci5wcm90b3R5cGUud3JpdGUgPSBmdW5jdGlvbihidWYpIHtcbiAgICBpZiAoIUJ1ZmZlci5pc0J1ZmZlcihidWYpKSB7XG4gICAgICAgIGJ1ZiA9IEJ1ZmZlci5mcm9tKGJ1Zik7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuZGVjb2Rlci53cml0ZShidWYpO1xufVxuXG5JbnRlcm5hbERlY29kZXIucHJvdG90eXBlLmVuZCA9IGZ1bmN0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLmRlY29kZXIuZW5kKCk7XG59XG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEVuY29kZXIgaXMgbW9zdGx5IHRyaXZpYWxcblxuZnVuY3Rpb24gSW50ZXJuYWxFbmNvZGVyKG9wdGlvbnMsIGNvZGVjKSB7XG4gICAgdGhpcy5lbmMgPSBjb2RlYy5lbmM7XG59XG5cbkludGVybmFsRW5jb2Rlci5wcm90b3R5cGUud3JpdGUgPSBmdW5jdGlvbihzdHIpIHtcbiAgICByZXR1cm4gQnVmZmVyLmZyb20oc3RyLCB0aGlzLmVuYyk7XG59XG5cbkludGVybmFsRW5jb2Rlci5wcm90b3R5cGUuZW5kID0gZnVuY3Rpb24oKSB7XG59XG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEV4Y2VwdCBiYXNlNjQgZW5jb2Rlciwgd2hpY2ggbXVzdCBrZWVwIGl0cyBzdGF0ZS5cblxuZnVuY3Rpb24gSW50ZXJuYWxFbmNvZGVyQmFzZTY0KG9wdGlvbnMsIGNvZGVjKSB7XG4gICAgdGhpcy5wcmV2U3RyID0gJyc7XG59XG5cbkludGVybmFsRW5jb2RlckJhc2U2NC5wcm90b3R5cGUud3JpdGUgPSBmdW5jdGlvbihzdHIpIHtcbiAgICBzdHIgPSB0aGlzLnByZXZTdHIgKyBzdHI7XG4gICAgdmFyIGNvbXBsZXRlUXVhZHMgPSBzdHIubGVuZ3RoIC0gKHN0ci5sZW5ndGggJSA0KTtcbiAgICB0aGlzLnByZXZTdHIgPSBzdHIuc2xpY2UoY29tcGxldGVRdWFkcyk7XG4gICAgc3RyID0gc3RyLnNsaWNlKDAsIGNvbXBsZXRlUXVhZHMpO1xuXG4gICAgcmV0dXJuIEJ1ZmZlci5mcm9tKHN0ciwgXCJiYXNlNjRcIik7XG59XG5cbkludGVybmFsRW5jb2RlckJhc2U2NC5wcm90b3R5cGUuZW5kID0gZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuIEJ1ZmZlci5mcm9tKHRoaXMucHJldlN0ciwgXCJiYXNlNjRcIik7XG59XG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENFU1UtOCBlbmNvZGVyIGlzIGFsc28gc3BlY2lhbC5cblxuZnVuY3Rpb24gSW50ZXJuYWxFbmNvZGVyQ2VzdTgob3B0aW9ucywgY29kZWMpIHtcbn1cblxuSW50ZXJuYWxFbmNvZGVyQ2VzdTgucHJvdG90eXBlLndyaXRlID0gZnVuY3Rpb24oc3RyKSB7XG4gICAgdmFyIGJ1ZiA9IEJ1ZmZlci5hbGxvYyhzdHIubGVuZ3RoICogMyksIGJ1ZklkeCA9IDA7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBzdHIubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgdmFyIGNoYXJDb2RlID0gc3RyLmNoYXJDb2RlQXQoaSk7XG4gICAgICAgIC8vIE5haXZlIGltcGxlbWVudGF0aW9uLCBidXQgaXQgd29ya3MgYmVjYXVzZSBDRVNVLTggaXMgZXNwZWNpYWxseSBlYXN5XG4gICAgICAgIC8vIHRvIGNvbnZlcnQgZnJvbSBVVEYtMTYgKHdoaWNoIGFsbCBKUyBzdHJpbmdzIGFyZSBlbmNvZGVkIGluKS5cbiAgICAgICAgaWYgKGNoYXJDb2RlIDwgMHg4MClcbiAgICAgICAgICAgIGJ1ZltidWZJZHgrK10gPSBjaGFyQ29kZTtcbiAgICAgICAgZWxzZSBpZiAoY2hhckNvZGUgPCAweDgwMCkge1xuICAgICAgICAgICAgYnVmW2J1ZklkeCsrXSA9IDB4QzAgKyAoY2hhckNvZGUgPj4+IDYpO1xuICAgICAgICAgICAgYnVmW2J1ZklkeCsrXSA9IDB4ODAgKyAoY2hhckNvZGUgJiAweDNmKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHsgLy8gY2hhckNvZGUgd2lsbCBhbHdheXMgYmUgPCAweDEwMDAwIGluIGphdmFzY3JpcHQuXG4gICAgICAgICAgICBidWZbYnVmSWR4KytdID0gMHhFMCArIChjaGFyQ29kZSA+Pj4gMTIpO1xuICAgICAgICAgICAgYnVmW2J1ZklkeCsrXSA9IDB4ODAgKyAoKGNoYXJDb2RlID4+PiA2KSAmIDB4M2YpO1xuICAgICAgICAgICAgYnVmW2J1ZklkeCsrXSA9IDB4ODAgKyAoY2hhckNvZGUgJiAweDNmKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gYnVmLnNsaWNlKDAsIGJ1ZklkeCk7XG59XG5cbkludGVybmFsRW5jb2RlckNlc3U4LnByb3RvdHlwZS5lbmQgPSBmdW5jdGlvbigpIHtcbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENFU1UtOCBkZWNvZGVyIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiBOb2RlIHY0LjArXG5cbmZ1bmN0aW9uIEludGVybmFsRGVjb2RlckNlc3U4KG9wdGlvbnMsIGNvZGVjKSB7XG4gICAgdGhpcy5hY2MgPSAwO1xuICAgIHRoaXMuY29udEJ5dGVzID0gMDtcbiAgICB0aGlzLmFjY0J5dGVzID0gMDtcbiAgICB0aGlzLmRlZmF1bHRDaGFyVW5pY29kZSA9IGNvZGVjLmRlZmF1bHRDaGFyVW5pY29kZTtcbn1cblxuSW50ZXJuYWxEZWNvZGVyQ2VzdTgucHJvdG90eXBlLndyaXRlID0gZnVuY3Rpb24oYnVmKSB7XG4gICAgdmFyIGFjYyA9IHRoaXMuYWNjLCBjb250Qnl0ZXMgPSB0aGlzLmNvbnRCeXRlcywgYWNjQnl0ZXMgPSB0aGlzLmFjY0J5dGVzLCBcbiAgICAgICAgcmVzID0gJyc7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBidWYubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgdmFyIGN1ckJ5dGUgPSBidWZbaV07XG4gICAgICAgIGlmICgoY3VyQnl0ZSAmIDB4QzApICE9PSAweDgwKSB7IC8vIExlYWRpbmcgYnl0ZVxuICAgICAgICAgICAgaWYgKGNvbnRCeXRlcyA+IDApIHsgLy8gUHJldmlvdXMgY29kZSBpcyBpbnZhbGlkXG4gICAgICAgICAgICAgICAgcmVzICs9IHRoaXMuZGVmYXVsdENoYXJVbmljb2RlO1xuICAgICAgICAgICAgICAgIGNvbnRCeXRlcyA9IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChjdXJCeXRlIDwgMHg4MCkgeyAvLyBTaW5nbGUtYnl0ZSBjb2RlXG4gICAgICAgICAgICAgICAgcmVzICs9IFN0cmluZy5mcm9tQ2hhckNvZGUoY3VyQnl0ZSk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGN1ckJ5dGUgPCAweEUwKSB7IC8vIFR3by1ieXRlIGNvZGVcbiAgICAgICAgICAgICAgICBhY2MgPSBjdXJCeXRlICYgMHgxRjtcbiAgICAgICAgICAgICAgICBjb250Qnl0ZXMgPSAxOyBhY2NCeXRlcyA9IDE7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGN1ckJ5dGUgPCAweEYwKSB7IC8vIFRocmVlLWJ5dGUgY29kZVxuICAgICAgICAgICAgICAgIGFjYyA9IGN1ckJ5dGUgJiAweDBGO1xuICAgICAgICAgICAgICAgIGNvbnRCeXRlcyA9IDI7IGFjY0J5dGVzID0gMTtcbiAgICAgICAgICAgIH0gZWxzZSB7IC8vIEZvdXIgb3IgbW9yZSBhcmUgbm90IHN1cHBvcnRlZCBmb3IgQ0VTVS04LlxuICAgICAgICAgICAgICAgIHJlcyArPSB0aGlzLmRlZmF1bHRDaGFyVW5pY29kZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHsgLy8gQ29udGludWF0aW9uIGJ5dGVcbiAgICAgICAgICAgIGlmIChjb250Qnl0ZXMgPiAwKSB7IC8vIFdlJ3JlIHdhaXRpbmcgZm9yIGl0LlxuICAgICAgICAgICAgICAgIGFjYyA9IChhY2MgPDwgNikgfCAoY3VyQnl0ZSAmIDB4M2YpO1xuICAgICAgICAgICAgICAgIGNvbnRCeXRlcy0tOyBhY2NCeXRlcysrO1xuICAgICAgICAgICAgICAgIGlmIChjb250Qnl0ZXMgPT09IDApIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gQ2hlY2sgZm9yIG92ZXJsb25nIGVuY29kaW5nLCBidXQgc3VwcG9ydCBNb2RpZmllZCBVVEYtOCAoZW5jb2RpbmcgTlVMTCBhcyBDMCA4MClcbiAgICAgICAgICAgICAgICAgICAgaWYgKGFjY0J5dGVzID09PSAyICYmIGFjYyA8IDB4ODAgJiYgYWNjID4gMClcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlcyArPSB0aGlzLmRlZmF1bHRDaGFyVW5pY29kZTtcbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoYWNjQnl0ZXMgPT09IDMgJiYgYWNjIDwgMHg4MDApXG4gICAgICAgICAgICAgICAgICAgICAgICByZXMgKz0gdGhpcy5kZWZhdWx0Q2hhclVuaWNvZGU7XG4gICAgICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIEFjdHVhbGx5IGFkZCBjaGFyYWN0ZXIuXG4gICAgICAgICAgICAgICAgICAgICAgICByZXMgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShhY2MpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZWxzZSB7IC8vIFVuZXhwZWN0ZWQgY29udGludWF0aW9uIGJ5dGVcbiAgICAgICAgICAgICAgICByZXMgKz0gdGhpcy5kZWZhdWx0Q2hhclVuaWNvZGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5hY2MgPSBhY2M7IHRoaXMuY29udEJ5dGVzID0gY29udEJ5dGVzOyB0aGlzLmFjY0J5dGVzID0gYWNjQnl0ZXM7XG4gICAgcmV0dXJuIHJlcztcbn1cblxuSW50ZXJuYWxEZWNvZGVyQ2VzdTgucHJvdG90eXBlLmVuZCA9IGZ1bmN0aW9uKCkge1xuICAgIHZhciByZXMgPSAwO1xuICAgIGlmICh0aGlzLmNvbnRCeXRlcyA+IDApXG4gICAgICAgIHJlcyArPSB0aGlzLmRlZmF1bHRDaGFyVW5pY29kZTtcbiAgICByZXR1cm4gcmVzO1xufVxuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIEJ1ZmZlciA9IHJlcXVpcmUoJ3NhZmVyLWJ1ZmZlcicpLkJ1ZmZlcjtcblxuLy8gPT0gVVRGMzItTEUvQkUgY29kZWMuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0cy5fdXRmMzIgPSBVdGYzMkNvZGVjO1xuXG5mdW5jdGlvbiBVdGYzMkNvZGVjKGNvZGVjT3B0aW9ucywgaWNvbnYpIHtcbiAgICB0aGlzLmljb252ID0gaWNvbnY7XG4gICAgdGhpcy5ib21Bd2FyZSA9IHRydWU7XG4gICAgdGhpcy5pc0xFID0gY29kZWNPcHRpb25zLmlzTEU7XG59XG5cbmV4cG9ydHMudXRmMzJsZSA9IHsgdHlwZTogJ191dGYzMicsIGlzTEU6IHRydWUgfTtcbmV4cG9ydHMudXRmMzJiZSA9IHsgdHlwZTogJ191dGYzMicsIGlzTEU6IGZhbHNlIH07XG5cbi8vIEFsaWFzZXNcbmV4cG9ydHMudWNzNGxlID0gJ3V0ZjMybGUnO1xuZXhwb3J0cy51Y3M0YmUgPSAndXRmMzJiZSc7XG5cblV0ZjMyQ29kZWMucHJvdG90eXBlLmVuY29kZXIgPSBVdGYzMkVuY29kZXI7XG5VdGYzMkNvZGVjLnByb3RvdHlwZS5kZWNvZGVyID0gVXRmMzJEZWNvZGVyO1xuXG4vLyAtLSBFbmNvZGluZ1xuXG5mdW5jdGlvbiBVdGYzMkVuY29kZXIob3B0aW9ucywgY29kZWMpIHtcbiAgICB0aGlzLmlzTEUgPSBjb2RlYy5pc0xFO1xuICAgIHRoaXMuaGlnaFN1cnJvZ2F0ZSA9IDA7XG59XG5cblV0ZjMyRW5jb2Rlci5wcm90b3R5cGUud3JpdGUgPSBmdW5jdGlvbihzdHIpIHtcbiAgICB2YXIgc3JjID0gQnVmZmVyLmZyb20oc3RyLCAndWNzMicpO1xuICAgIHZhciBkc3QgPSBCdWZmZXIuYWxsb2Moc3JjLmxlbmd0aCAqIDIpO1xuICAgIHZhciB3cml0ZTMyID0gdGhpcy5pc0xFID8gZHN0LndyaXRlVUludDMyTEUgOiBkc3Qud3JpdGVVSW50MzJCRTtcbiAgICB2YXIgb2Zmc2V0ID0gMDtcblxuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgc3JjLmxlbmd0aDsgaSArPSAyKSB7XG4gICAgICAgIHZhciBjb2RlID0gc3JjLnJlYWRVSW50MTZMRShpKTtcbiAgICAgICAgdmFyIGlzSGlnaFN1cnJvZ2F0ZSA9ICgweEQ4MDAgPD0gY29kZSAmJiBjb2RlIDwgMHhEQzAwKTtcbiAgICAgICAgdmFyIGlzTG93U3Vycm9nYXRlID0gKDB4REMwMCA8PSBjb2RlICYmIGNvZGUgPCAweEUwMDApO1xuXG4gICAgICAgIGlmICh0aGlzLmhpZ2hTdXJyb2dhdGUpIHtcbiAgICAgICAgICAgIGlmIChpc0hpZ2hTdXJyb2dhdGUgfHwgIWlzTG93U3Vycm9nYXRlKSB7XG4gICAgICAgICAgICAgICAgLy8gVGhlcmUgc2hvdWxkbid0IGJlIHR3byBoaWdoIHN1cnJvZ2F0ZXMgaW4gYSByb3csIG5vciBhIGhpZ2ggc3Vycm9nYXRlIHdoaWNoIGlzbid0IGZvbGxvd2VkIGJ5IGEgbG93XG4gICAgICAgICAgICAgICAgLy8gc3Vycm9nYXRlLiBJZiB0aGlzIGhhcHBlbnMsIGtlZXAgdGhlIHBlbmRpbmcgaGlnaCBzdXJyb2dhdGUgYXMgYSBzdGFuZC1hbG9uZSBzZW1pLWludmFsaWQgY2hhcmFjdGVyXG4gICAgICAgICAgICAgICAgLy8gKHRlY2huaWNhbGx5IHdyb25nLCBidXQgZXhwZWN0ZWQgYnkgc29tZSBhcHBsaWNhdGlvbnMsIGxpa2UgV2luZG93cyBmaWxlIG5hbWVzKS5cbiAgICAgICAgICAgICAgICB3cml0ZTMyLmNhbGwoZHN0LCB0aGlzLmhpZ2hTdXJyb2dhdGUsIG9mZnNldCk7XG4gICAgICAgICAgICAgICAgb2Zmc2V0ICs9IDQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAvLyBDcmVhdGUgMzItYml0IHZhbHVlIGZyb20gaGlnaCBhbmQgbG93IHN1cnJvZ2F0ZXM7XG4gICAgICAgICAgICAgICAgdmFyIGNvZGVwb2ludCA9ICgoKHRoaXMuaGlnaFN1cnJvZ2F0ZSAtIDB4RDgwMCkgPDwgMTApIHwgKGNvZGUgLSAweERDMDApKSArIDB4MTAwMDA7XG5cbiAgICAgICAgICAgICAgICB3cml0ZTMyLmNhbGwoZHN0LCBjb2RlcG9pbnQsIG9mZnNldCk7XG4gICAgICAgICAgICAgICAgb2Zmc2V0ICs9IDQ7XG4gICAgICAgICAgICAgICAgdGhpcy5oaWdoU3Vycm9nYXRlID0gMDtcblxuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGlzSGlnaFN1cnJvZ2F0ZSlcbiAgICAgICAgICAgIHRoaXMuaGlnaFN1cnJvZ2F0ZSA9IGNvZGU7XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgLy8gRXZlbiBpZiB0aGUgY3VycmVudCBjaGFyYWN0ZXIgaXMgYSBsb3cgc3Vycm9nYXRlLCB3aXRoIG5vIHByZXZpb3VzIGhpZ2ggc3Vycm9nYXRlLCB3ZSdsbFxuICAgICAgICAgICAgLy8gZW5jb2RlIGl0IGFzIGEgc2VtaS1pbnZhbGlkIHN0YW5kLWFsb25lIGNoYXJhY3RlciBmb3IgdGhlIHNhbWUgcmVhc29ucyBleHByZXNzZWQgYWJvdmUgZm9yXG4gICAgICAgICAgICAvLyB1bnBhaXJlZCBoaWdoIHN1cnJvZ2F0ZXMuXG4gICAgICAgICAgICB3cml0ZTMyLmNhbGwoZHN0LCBjb2RlLCBvZmZzZXQpO1xuICAgICAgICAgICAgb2Zmc2V0ICs9IDQ7XG4gICAgICAgICAgICB0aGlzLmhpZ2hTdXJyb2dhdGUgPSAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaWYgKG9mZnNldCA8IGRzdC5sZW5ndGgpXG4gICAgICAgIGRzdCA9IGRzdC5zbGljZSgwLCBvZmZzZXQpO1xuXG4gICAgcmV0dXJuIGRzdDtcbn07XG5cblV0ZjMyRW5jb2Rlci5wcm90b3R5cGUuZW5kID0gZnVuY3Rpb24oKSB7XG4gICAgLy8gVHJlYXQgYW55IGxlZnRvdmVyIGhpZ2ggc3Vycm9nYXRlIGFzIGEgc2VtaS12YWxpZCBpbmRlcGVuZGVudCBjaGFyYWN0ZXIuXG4gICAgaWYgKCF0aGlzLmhpZ2hTdXJyb2dhdGUpXG4gICAgICAgIHJldHVybjtcblxuICAgIHZhciBidWYgPSBCdWZmZXIuYWxsb2MoNCk7XG5cbiAgICBpZiAodGhpcy5pc0xFKVxuICAgICAgICBidWYud3JpdGVVSW50MzJMRSh0aGlzLmhpZ2hTdXJyb2dhdGUsIDApO1xuICAgIGVsc2VcbiAgICAgICAgYnVmLndyaXRlVUludDMyQkUodGhpcy5oaWdoU3Vycm9nYXRlLCAwKTtcblxuICAgIHRoaXMuaGlnaFN1cnJvZ2F0ZSA9IDA7XG5cbiAgICByZXR1cm4gYnVmO1xufTtcblxuLy8gLS0gRGVjb2RpbmdcblxuZnVuY3Rpb24gVXRmMzJEZWNvZGVyKG9wdGlvbnMsIGNvZGVjKSB7XG4gICAgdGhpcy5pc0xFID0gY29kZWMuaXNMRTtcbiAgICB0aGlzLmJhZENoYXIgPSBjb2RlYy5pY29udi5kZWZhdWx0Q2hhclVuaWNvZGUuY2hhckNvZGVBdCgwKTtcbiAgICB0aGlzLm92ZXJmbG93ID0gW107XG59XG5cblV0ZjMyRGVjb2Rlci5wcm90b3R5cGUud3JpdGUgPSBmdW5jdGlvbihzcmMpIHtcbiAgICBpZiAoc3JjLmxlbmd0aCA9PT0gMClcbiAgICAgICAgcmV0dXJuICcnO1xuXG4gICAgdmFyIGkgPSAwO1xuICAgIHZhciBjb2RlcG9pbnQgPSAwO1xuICAgIHZhciBkc3QgPSBCdWZmZXIuYWxsb2Moc3JjLmxlbmd0aCArIDQpO1xuICAgIHZhciBvZmZzZXQgPSAwO1xuICAgIHZhciBpc0xFID0gdGhpcy5pc0xFO1xuICAgIHZhciBvdmVyZmxvdyA9IHRoaXMub3ZlcmZsb3c7XG4gICAgdmFyIGJhZENoYXIgPSB0aGlzLmJhZENoYXI7XG5cbiAgICBpZiAob3ZlcmZsb3cubGVuZ3RoID4gMCkge1xuICAgICAgICBmb3IgKDsgaSA8IHNyYy5sZW5ndGggJiYgb3ZlcmZsb3cubGVuZ3RoIDwgNDsgaSsrKVxuICAgICAgICAgICAgb3ZlcmZsb3cucHVzaChzcmNbaV0pO1xuICAgICAgICBcbiAgICAgICAgaWYgKG92ZXJmbG93Lmxlbmd0aCA9PT0gNCkge1xuICAgICAgICAgICAgLy8gTk9URTogY29kZXBvaW50IGlzIGEgc2lnbmVkIGludDMyIGFuZCBjYW4gYmUgbmVnYXRpdmUuXG4gICAgICAgICAgICAvLyBOT1RFOiBXZSBjb3BpZWQgdGhpcyBibG9jayBmcm9tIGJlbG93IHRvIGhlbHAgVjggb3B0aW1pemUgaXQgKGl0IHdvcmtzIHdpdGggYXJyYXksIG5vdCBidWZmZXIpLlxuICAgICAgICAgICAgaWYgKGlzTEUpIHtcbiAgICAgICAgICAgICAgICBjb2RlcG9pbnQgPSBvdmVyZmxvd1tpXSB8IChvdmVyZmxvd1tpKzFdIDw8IDgpIHwgKG92ZXJmbG93W2krMl0gPDwgMTYpIHwgKG92ZXJmbG93W2krM10gPDwgMjQpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb2RlcG9pbnQgPSBvdmVyZmxvd1tpKzNdIHwgKG92ZXJmbG93W2krMl0gPDwgOCkgfCAob3ZlcmZsb3dbaSsxXSA8PCAxNikgfCAob3ZlcmZsb3dbaV0gPDwgMjQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgb3ZlcmZsb3cubGVuZ3RoID0gMDtcblxuICAgICAgICAgICAgb2Zmc2V0ID0gX3dyaXRlQ29kZXBvaW50KGRzdCwgb2Zmc2V0LCBjb2RlcG9pbnQsIGJhZENoYXIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gTWFpbiBsb29wLiBTaG91bGQgYmUgYXMgb3B0aW1pemVkIGFzIHBvc3NpYmxlLlxuICAgIGZvciAoOyBpIDwgc3JjLmxlbmd0aCAtIDM7IGkgKz0gNCkge1xuICAgICAgICAvLyBOT1RFOiBjb2RlcG9pbnQgaXMgYSBzaWduZWQgaW50MzIgYW5kIGNhbiBiZSBuZWdhdGl2ZS5cbiAgICAgICAgaWYgKGlzTEUpIHtcbiAgICAgICAgICAgIGNvZGVwb2ludCA9IHNyY1tpXSB8IChzcmNbaSsxXSA8PCA4KSB8IChzcmNbaSsyXSA8PCAxNikgfCAoc3JjW2krM10gPDwgMjQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29kZXBvaW50ID0gc3JjW2krM10gfCAoc3JjW2krMl0gPDwgOCkgfCAoc3JjW2krMV0gPDwgMTYpIHwgKHNyY1tpXSA8PCAyNCk7XG4gICAgICAgIH1cbiAgICAgICAgb2Zmc2V0ID0gX3dyaXRlQ29kZXBvaW50KGRzdCwgb2Zmc2V0LCBjb2RlcG9pbnQsIGJhZENoYXIpO1xuICAgIH1cblxuICAgIC8vIEtlZXAgb3ZlcmZsb3dpbmcgYnl0ZXMuXG4gICAgZm9yICg7IGkgPCBzcmMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgb3ZlcmZsb3cucHVzaChzcmNbaV0pO1xuICAgIH1cblxuICAgIHJldHVybiBkc3Quc2xpY2UoMCwgb2Zmc2V0KS50b1N0cmluZygndWNzMicpO1xufTtcblxuZnVuY3Rpb24gX3dyaXRlQ29kZXBvaW50KGRzdCwgb2Zmc2V0LCBjb2RlcG9pbnQsIGJhZENoYXIpIHtcbiAgICAvLyBOT1RFOiBjb2RlcG9pbnQgaXMgc2lnbmVkIGludDMyIGFuZCBjYW4gYmUgbmVnYXRpdmUuIFdlIGtlZXAgaXQgdGhhdCB3YXkgdG8gaGVscCBWOCB3aXRoIG9wdGltaXphdGlvbnMuXG4gICAgaWYgKGNvZGVwb2ludCA8IDAgfHwgY29kZXBvaW50ID4gMHgxMEZGRkYpIHtcbiAgICAgICAgLy8gTm90IGEgdmFsaWQgVW5pY29kZSBjb2RlcG9pbnRcbiAgICAgICAgY29kZXBvaW50ID0gYmFkQ2hhcjtcbiAgICB9IFxuXG4gICAgLy8gRXBoZW1lcmFsIFBsYW5lczogV3JpdGUgaGlnaCBzdXJyb2dhdGUuXG4gICAgaWYgKGNvZGVwb2ludCA+PSAweDEwMDAwKSB7XG4gICAgICAgIGNvZGVwb2ludCAtPSAweDEwMDAwO1xuXG4gICAgICAgIHZhciBoaWdoID0gMHhEODAwIHwgKGNvZGVwb2ludCA+PiAxMCk7XG4gICAgICAgIGRzdFtvZmZzZXQrK10gPSBoaWdoICYgMHhmZjtcbiAgICAgICAgZHN0W29mZnNldCsrXSA9IGhpZ2ggPj4gODtcblxuICAgICAgICAvLyBMb3cgc3Vycm9nYXRlIGlzIHdyaXR0ZW4gYmVsb3cuXG4gICAgICAgIHZhciBjb2RlcG9pbnQgPSAweERDMDAgfCAoY29kZXBvaW50ICYgMHgzRkYpO1xuICAgIH1cblxuICAgIC8vIFdyaXRlIEJNUCBjaGFyIG9yIGxvdyBzdXJyb2dhdGUuXG4gICAgZHN0W29mZnNldCsrXSA9IGNvZGVwb2ludCAmIDB4ZmY7XG4gICAgZHN0W29mZnNldCsrXSA9IGNvZGVwb2ludCA+PiA4O1xuXG4gICAgcmV0dXJuIG9mZnNldDtcbn07XG5cblV0ZjMyRGVjb2Rlci5wcm90b3R5cGUuZW5kID0gZnVuY3Rpb24oKSB7XG4gICAgdGhpcy5vdmVyZmxvdy5sZW5ndGggPSAwO1xufTtcblxuLy8gPT0gVVRGLTMyIEF1dG8gY29kZWMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gRGVjb2RlciBjaG9vc2VzIGF1dG9tYXRpY2FsbHkgZnJvbSBVVEYtMzJMRSBhbmQgVVRGLTMyQkUgdXNpbmcgQk9NIGFuZCBzcGFjZS1iYXNlZCBoZXVyaXN0aWMuXG4vLyBEZWZhdWx0cyB0byBVVEYtMzJMRS4gaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9VVEYtMzJcbi8vIEVuY29kZXIvZGVjb2RlciBkZWZhdWx0IGNhbiBiZSBjaGFuZ2VkOiBpY29udi5kZWNvZGUoYnVmLCAndXRmMzInLCB7ZGVmYXVsdEVuY29kaW5nOiAndXRmLTMyYmUnfSk7XG5cbi8vIEVuY29kZXIgcHJlcGVuZHMgQk9NICh3aGljaCBjYW4gYmUgb3ZlcnJpZGRlbiB3aXRoIChhZGRCT006IGZhbHNlfSkuXG5cbmV4cG9ydHMudXRmMzIgPSBVdGYzMkF1dG9Db2RlYztcbmV4cG9ydHMudWNzNCA9ICd1dGYzMic7XG5cbmZ1bmN0aW9uIFV0ZjMyQXV0b0NvZGVjKG9wdGlvbnMsIGljb252KSB7XG4gICAgdGhpcy5pY29udiA9IGljb252O1xufVxuXG5VdGYzMkF1dG9Db2RlYy5wcm90b3R5cGUuZW5jb2RlciA9IFV0ZjMyQXV0b0VuY29kZXI7XG5VdGYzMkF1dG9Db2RlYy5wcm90b3R5cGUuZGVjb2RlciA9IFV0ZjMyQXV0b0RlY29kZXI7XG5cbi8vIC0tIEVuY29kaW5nXG5cbmZ1bmN0aW9uIFV0ZjMyQXV0b0VuY29kZXIob3B0aW9ucywgY29kZWMpIHtcbiAgICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcblxuICAgIGlmIChvcHRpb25zLmFkZEJPTSA9PT0gdW5kZWZpbmVkKVxuICAgICAgICBvcHRpb25zLmFkZEJPTSA9IHRydWU7XG5cbiAgICB0aGlzLmVuY29kZXIgPSBjb2RlYy5pY29udi5nZXRFbmNvZGVyKG9wdGlvbnMuZGVmYXVsdEVuY29kaW5nIHx8ICd1dGYtMzJsZScsIG9wdGlvbnMpO1xufVxuXG5VdGYzMkF1dG9FbmNvZGVyLnByb3RvdHlwZS53cml0ZSA9IGZ1bmN0aW9uKHN0cikge1xuICAgIHJldHVybiB0aGlzLmVuY29kZXIud3JpdGUoc3RyKTtcbn07XG5cblV0ZjMyQXV0b0VuY29kZXIucHJvdG90eXBlLmVuZCA9IGZ1bmN0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLmVuY29kZXIuZW5kKCk7XG59O1xuXG4vLyAtLSBEZWNvZGluZ1xuXG5mdW5jdGlvbiBVdGYzMkF1dG9EZWNvZGVyKG9wdGlvbnMsIGNvZGVjKSB7XG4gICAgdGhpcy5kZWNvZGVyID0gbnVsbDtcbiAgICB0aGlzLmluaXRpYWxCdWZzID0gW107XG4gICAgdGhpcy5pbml0aWFsQnVmc0xlbiA9IDA7XG4gICAgdGhpcy5vcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcbiAgICB0aGlzLmljb252ID0gY29kZWMuaWNvbnY7XG59XG5cblV0ZjMyQXV0b0RlY29kZXIucHJvdG90eXBlLndyaXRlID0gZnVuY3Rpb24oYnVmKSB7XG4gICAgaWYgKCF0aGlzLmRlY29kZXIpIHsgXG4gICAgICAgIC8vIENvZGVjIGlzIG5vdCBjaG9zZW4geWV0LiBBY2N1bXVsYXRlIGluaXRpYWwgYnl0ZXMuXG4gICAgICAgIHRoaXMuaW5pdGlhbEJ1ZnMucHVzaChidWYpO1xuICAgICAgICB0aGlzLmluaXRpYWxCdWZzTGVuICs9IGJ1Zi5sZW5ndGg7XG5cbiAgICAgICAgaWYgKHRoaXMuaW5pdGlhbEJ1ZnNMZW4gPCAzMikgLy8gV2UgbmVlZCBtb3JlIGJ5dGVzIHRvIHVzZSBzcGFjZSBoZXVyaXN0aWMgKHNlZSBiZWxvdylcbiAgICAgICAgICAgIHJldHVybiAnJztcblxuICAgICAgICAvLyBXZSBoYXZlIGVub3VnaCBieXRlcyAtPiBkZXRlY3QgZW5kaWFubmVzcy5cbiAgICAgICAgdmFyIGVuY29kaW5nID0gZGV0ZWN0RW5jb2RpbmcodGhpcy5pbml0aWFsQnVmcywgdGhpcy5vcHRpb25zLmRlZmF1bHRFbmNvZGluZyk7XG4gICAgICAgIHRoaXMuZGVjb2RlciA9IHRoaXMuaWNvbnYuZ2V0RGVjb2RlcihlbmNvZGluZywgdGhpcy5vcHRpb25zKTtcblxuICAgICAgICB2YXIgcmVzU3RyID0gJyc7XG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5pbml0aWFsQnVmcy5sZW5ndGg7IGkrKylcbiAgICAgICAgICAgIHJlc1N0ciArPSB0aGlzLmRlY29kZXIud3JpdGUodGhpcy5pbml0aWFsQnVmc1tpXSk7XG5cbiAgICAgICAgdGhpcy5pbml0aWFsQnVmcy5sZW5ndGggPSB0aGlzLmluaXRpYWxCdWZzTGVuID0gMDtcbiAgICAgICAgcmV0dXJuIHJlc1N0cjtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5kZWNvZGVyLndyaXRlKGJ1Zik7XG59O1xuXG5VdGYzMkF1dG9EZWNvZGVyLnByb3RvdHlwZS5lbmQgPSBmdW5jdGlvbigpIHtcbiAgICBpZiAoIXRoaXMuZGVjb2Rlcikge1xuICAgICAgICB2YXIgZW5jb2RpbmcgPSBkZXRlY3RFbmNvZGluZyh0aGlzLmluaXRpYWxCdWZzLCB0aGlzLm9wdGlvbnMuZGVmYXVsdEVuY29kaW5nKTtcbiAgICAgICAgdGhpcy5kZWNvZGVyID0gdGhpcy5pY29udi5nZXREZWNvZGVyKGVuY29kaW5nLCB0aGlzLm9wdGlvbnMpO1xuXG4gICAgICAgIHZhciByZXNTdHIgPSAnJztcbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLmluaXRpYWxCdWZzLmxlbmd0aDsgaSsrKVxuICAgICAgICAgICAgcmVzU3RyICs9IHRoaXMuZGVjb2Rlci53cml0ZSh0aGlzLmluaXRpYWxCdWZzW2ldKTtcblxuICAgICAgICB2YXIgdHJhaWwgPSB0aGlzLmRlY29kZXIuZW5kKCk7XG4gICAgICAgIGlmICh0cmFpbClcbiAgICAgICAgICAgIHJlc1N0ciArPSB0cmFpbDtcblxuICAgICAgICB0aGlzLmluaXRpYWxCdWZzLmxlbmd0aCA9IHRoaXMuaW5pdGlhbEJ1ZnNMZW4gPSAwO1xuICAgICAgICByZXR1cm4gcmVzU3RyO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmRlY29kZXIuZW5kKCk7XG59O1xuXG5mdW5jdGlvbiBkZXRlY3RFbmNvZGluZyhidWZzLCBkZWZhdWx0RW5jb2RpbmcpIHtcbiAgICB2YXIgYiA9IFtdO1xuICAgIHZhciBjaGFyc1Byb2Nlc3NlZCA9IDA7XG4gICAgdmFyIGludmFsaWRMRSA9IDAsIGludmFsaWRCRSA9IDA7ICAgLy8gTnVtYmVyIG9mIGludmFsaWQgY2hhcnMgd2hlbiBkZWNvZGVkIGFzIExFIG9yIEJFLlxuICAgIHZhciBibXBDaGFyc0xFID0gMCwgYm1wQ2hhcnNCRSA9IDA7IC8vIE51bWJlciBvZiBCTVAgY2hhcnMgd2hlbiBkZWNvZGVkIGFzIExFIG9yIEJFLlxuXG4gICAgb3V0ZXJfbG9vcDpcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGJ1ZnMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgdmFyIGJ1ZiA9IGJ1ZnNbaV07XG4gICAgICAgIGZvciAodmFyIGogPSAwOyBqIDwgYnVmLmxlbmd0aDsgaisrKSB7XG4gICAgICAgICAgICBiLnB1c2goYnVmW2pdKTtcbiAgICAgICAgICAgIGlmIChiLmxlbmd0aCA9PT0gNCkge1xuICAgICAgICAgICAgICAgIGlmIChjaGFyc1Byb2Nlc3NlZCA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgICAvLyBDaGVjayBCT00gZmlyc3QuXG4gICAgICAgICAgICAgICAgICAgIGlmIChiWzBdID09PSAweEZGICYmIGJbMV0gPT09IDB4RkUgJiYgYlsyXSA9PT0gMCAmJiBiWzNdID09PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ3V0Zi0zMmxlJztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAoYlswXSA9PT0gMCAmJiBiWzFdID09PSAwICYmIGJbMl0gPT09IDB4RkUgJiYgYlszXSA9PT0gMHhGRikge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICd1dGYtMzJiZSc7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoYlswXSAhPT0gMCB8fCBiWzFdID4gMHgxMCkgaW52YWxpZEJFKys7XG4gICAgICAgICAgICAgICAgaWYgKGJbM10gIT09IDAgfHwgYlsyXSA+IDB4MTApIGludmFsaWRMRSsrO1xuXG4gICAgICAgICAgICAgICAgaWYgKGJbMF0gPT09IDAgJiYgYlsxXSA9PT0gMCAmJiAoYlsyXSAhPT0gMCB8fCBiWzNdICE9PSAwKSkgYm1wQ2hhcnNCRSsrO1xuICAgICAgICAgICAgICAgIGlmICgoYlswXSAhPT0gMCB8fCBiWzFdICE9PSAwKSAmJiBiWzJdID09PSAwICYmIGJbM10gPT09IDApIGJtcENoYXJzTEUrKztcblxuICAgICAgICAgICAgICAgIGIubGVuZ3RoID0gMDtcbiAgICAgICAgICAgICAgICBjaGFyc1Byb2Nlc3NlZCsrO1xuXG4gICAgICAgICAgICAgICAgaWYgKGNoYXJzUHJvY2Vzc2VkID49IDEwMCkge1xuICAgICAgICAgICAgICAgICAgICBicmVhayBvdXRlcl9sb29wO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIE1ha2UgZGVjaXNpb25zLlxuICAgIGlmIChibXBDaGFyc0JFIC0gaW52YWxpZEJFID4gYm1wQ2hhcnNMRSAtIGludmFsaWRMRSkgIHJldHVybiAndXRmLTMyYmUnO1xuICAgIGlmIChibXBDaGFyc0JFIC0gaW52YWxpZEJFIDwgYm1wQ2hhcnNMRSAtIGludmFsaWRMRSkgIHJldHVybiAndXRmLTMybGUnO1xuXG4gICAgLy8gQ291bGRuJ3QgZGVjaWRlIChsaWtlbHkgYWxsIHplcm9zIG9yIG5vdCBlbm91Z2ggZGF0YSkuXG4gICAgcmV0dXJuIGRlZmF1bHRFbmNvZGluZyB8fCAndXRmLTMybGUnO1xufVxuIiwgIlwidXNlIHN0cmljdFwiO1xudmFyIEJ1ZmZlciA9IHJlcXVpcmUoXCJzYWZlci1idWZmZXJcIikuQnVmZmVyO1xuXG4vLyBOb3RlOiBVVEYxNi1MRSAob3IgVUNTMikgY29kZWMgaXMgTm9kZS5qcyBuYXRpdmUuIFNlZSBlbmNvZGluZ3MvaW50ZXJuYWwuanNcblxuLy8gPT0gVVRGMTYtQkUgY29kZWMuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0cy51dGYxNmJlID0gVXRmMTZCRUNvZGVjO1xuZnVuY3Rpb24gVXRmMTZCRUNvZGVjKCkge1xufVxuXG5VdGYxNkJFQ29kZWMucHJvdG90eXBlLmVuY29kZXIgPSBVdGYxNkJFRW5jb2RlcjtcblV0ZjE2QkVDb2RlYy5wcm90b3R5cGUuZGVjb2RlciA9IFV0ZjE2QkVEZWNvZGVyO1xuVXRmMTZCRUNvZGVjLnByb3RvdHlwZS5ib21Bd2FyZSA9IHRydWU7XG5cblxuLy8gLS0gRW5jb2RpbmdcblxuZnVuY3Rpb24gVXRmMTZCRUVuY29kZXIoKSB7XG59XG5cblV0ZjE2QkVFbmNvZGVyLnByb3RvdHlwZS53cml0ZSA9IGZ1bmN0aW9uKHN0cikge1xuICAgIHZhciBidWYgPSBCdWZmZXIuZnJvbShzdHIsICd1Y3MyJyk7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBidWYubGVuZ3RoOyBpICs9IDIpIHtcbiAgICAgICAgdmFyIHRtcCA9IGJ1ZltpXTsgYnVmW2ldID0gYnVmW2krMV07IGJ1ZltpKzFdID0gdG1wO1xuICAgIH1cbiAgICByZXR1cm4gYnVmO1xufVxuXG5VdGYxNkJFRW5jb2Rlci5wcm90b3R5cGUuZW5kID0gZnVuY3Rpb24oKSB7XG59XG5cblxuLy8gLS0gRGVjb2RpbmdcblxuZnVuY3Rpb24gVXRmMTZCRURlY29kZXIoKSB7XG4gICAgdGhpcy5vdmVyZmxvd0J5dGUgPSAtMTtcbn1cblxuVXRmMTZCRURlY29kZXIucHJvdG90eXBlLndyaXRlID0gZnVuY3Rpb24oYnVmKSB7XG4gICAgaWYgKGJ1Zi5sZW5ndGggPT0gMClcbiAgICAgICAgcmV0dXJuICcnO1xuXG4gICAgdmFyIGJ1ZjIgPSBCdWZmZXIuYWxsb2MoYnVmLmxlbmd0aCArIDEpLFxuICAgICAgICBpID0gMCwgaiA9IDA7XG5cbiAgICBpZiAodGhpcy5vdmVyZmxvd0J5dGUgIT09IC0xKSB7XG4gICAgICAgIGJ1ZjJbMF0gPSBidWZbMF07XG4gICAgICAgIGJ1ZjJbMV0gPSB0aGlzLm92ZXJmbG93Qnl0ZTtcbiAgICAgICAgaSA9IDE7IGogPSAyO1xuICAgIH1cblxuICAgIGZvciAoOyBpIDwgYnVmLmxlbmd0aC0xOyBpICs9IDIsIGorPSAyKSB7XG4gICAgICAgIGJ1ZjJbal0gPSBidWZbaSsxXTtcbiAgICAgICAgYnVmMltqKzFdID0gYnVmW2ldO1xuICAgIH1cblxuICAgIHRoaXMub3ZlcmZsb3dCeXRlID0gKGkgPT0gYnVmLmxlbmd0aC0xKSA/IGJ1ZltidWYubGVuZ3RoLTFdIDogLTE7XG5cbiAgICByZXR1cm4gYnVmMi5zbGljZSgwLCBqKS50b1N0cmluZygndWNzMicpO1xufVxuXG5VdGYxNkJFRGVjb2Rlci5wcm90b3R5cGUuZW5kID0gZnVuY3Rpb24oKSB7XG4gICAgdGhpcy5vdmVyZmxvd0J5dGUgPSAtMTtcbn1cblxuXG4vLyA9PSBVVEYtMTYgY29kZWMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gRGVjb2RlciBjaG9vc2VzIGF1dG9tYXRpY2FsbHkgZnJvbSBVVEYtMTZMRSBhbmQgVVRGLTE2QkUgdXNpbmcgQk9NIGFuZCBzcGFjZS1iYXNlZCBoZXVyaXN0aWMuXG4vLyBEZWZhdWx0cyB0byBVVEYtMTZMRSwgYXMgaXQncyBwcmV2YWxlbnQgYW5kIGRlZmF1bHQgaW4gTm9kZS5cbi8vIGh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvVVRGLTE2IGFuZCBodHRwOi8vZW5jb2Rpbmcuc3BlYy53aGF0d2cub3JnLyN1dGYtMTZsZVxuLy8gRGVjb2RlciBkZWZhdWx0IGNhbiBiZSBjaGFuZ2VkOiBpY29udi5kZWNvZGUoYnVmLCAndXRmMTYnLCB7ZGVmYXVsdEVuY29kaW5nOiAndXRmLTE2YmUnfSk7XG5cbi8vIEVuY29kZXIgdXNlcyBVVEYtMTZMRSBhbmQgcHJlcGVuZHMgQk9NICh3aGljaCBjYW4gYmUgb3ZlcnJpZGRlbiB3aXRoIGFkZEJPTTogZmFsc2UpLlxuXG5leHBvcnRzLnV0ZjE2ID0gVXRmMTZDb2RlYztcbmZ1bmN0aW9uIFV0ZjE2Q29kZWMoY29kZWNPcHRpb25zLCBpY29udikge1xuICAgIHRoaXMuaWNvbnYgPSBpY29udjtcbn1cblxuVXRmMTZDb2RlYy5wcm90b3R5cGUuZW5jb2RlciA9IFV0ZjE2RW5jb2RlcjtcblV0ZjE2Q29kZWMucHJvdG90eXBlLmRlY29kZXIgPSBVdGYxNkRlY29kZXI7XG5cblxuLy8gLS0gRW5jb2RpbmcgKHBhc3MtdGhyb3VnaClcblxuZnVuY3Rpb24gVXRmMTZFbmNvZGVyKG9wdGlvbnMsIGNvZGVjKSB7XG4gICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307XG4gICAgaWYgKG9wdGlvbnMuYWRkQk9NID09PSB1bmRlZmluZWQpXG4gICAgICAgIG9wdGlvbnMuYWRkQk9NID0gdHJ1ZTtcbiAgICB0aGlzLmVuY29kZXIgPSBjb2RlYy5pY29udi5nZXRFbmNvZGVyKCd1dGYtMTZsZScsIG9wdGlvbnMpO1xufVxuXG5VdGYxNkVuY29kZXIucHJvdG90eXBlLndyaXRlID0gZnVuY3Rpb24oc3RyKSB7XG4gICAgcmV0dXJuIHRoaXMuZW5jb2Rlci53cml0ZShzdHIpO1xufVxuXG5VdGYxNkVuY29kZXIucHJvdG90eXBlLmVuZCA9IGZ1bmN0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLmVuY29kZXIuZW5kKCk7XG59XG5cblxuLy8gLS0gRGVjb2RpbmdcblxuZnVuY3Rpb24gVXRmMTZEZWNvZGVyKG9wdGlvbnMsIGNvZGVjKSB7XG4gICAgdGhpcy5kZWNvZGVyID0gbnVsbDtcbiAgICB0aGlzLmluaXRpYWxCdWZzID0gW107XG4gICAgdGhpcy5pbml0aWFsQnVmc0xlbiA9IDA7XG5cbiAgICB0aGlzLm9wdGlvbnMgPSBvcHRpb25zIHx8IHt9O1xuICAgIHRoaXMuaWNvbnYgPSBjb2RlYy5pY29udjtcbn1cblxuVXRmMTZEZWNvZGVyLnByb3RvdHlwZS53cml0ZSA9IGZ1bmN0aW9uKGJ1Zikge1xuICAgIGlmICghdGhpcy5kZWNvZGVyKSB7XG4gICAgICAgIC8vIENvZGVjIGlzIG5vdCBjaG9zZW4geWV0LiBBY2N1bXVsYXRlIGluaXRpYWwgYnl0ZXMuXG4gICAgICAgIHRoaXMuaW5pdGlhbEJ1ZnMucHVzaChidWYpO1xuICAgICAgICB0aGlzLmluaXRpYWxCdWZzTGVuICs9IGJ1Zi5sZW5ndGg7XG4gICAgICAgIFxuICAgICAgICBpZiAodGhpcy5pbml0aWFsQnVmc0xlbiA8IDE2KSAvLyBXZSBuZWVkIG1vcmUgYnl0ZXMgdG8gdXNlIHNwYWNlIGhldXJpc3RpYyAoc2VlIGJlbG93KVxuICAgICAgICAgICAgcmV0dXJuICcnO1xuXG4gICAgICAgIC8vIFdlIGhhdmUgZW5vdWdoIGJ5dGVzIC0+IGRldGVjdCBlbmRpYW5uZXNzLlxuICAgICAgICB2YXIgZW5jb2RpbmcgPSBkZXRlY3RFbmNvZGluZyh0aGlzLmluaXRpYWxCdWZzLCB0aGlzLm9wdGlvbnMuZGVmYXVsdEVuY29kaW5nKTtcbiAgICAgICAgdGhpcy5kZWNvZGVyID0gdGhpcy5pY29udi5nZXREZWNvZGVyKGVuY29kaW5nLCB0aGlzLm9wdGlvbnMpO1xuXG4gICAgICAgIHZhciByZXNTdHIgPSAnJztcbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLmluaXRpYWxCdWZzLmxlbmd0aDsgaSsrKVxuICAgICAgICAgICAgcmVzU3RyICs9IHRoaXMuZGVjb2Rlci53cml0ZSh0aGlzLmluaXRpYWxCdWZzW2ldKTtcblxuICAgICAgICB0aGlzLmluaXRpYWxCdWZzLmxlbmd0aCA9IHRoaXMuaW5pdGlhbEJ1ZnNMZW4gPSAwO1xuICAgICAgICByZXR1cm4gcmVzU3RyO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmRlY29kZXIud3JpdGUoYnVmKTtcbn1cblxuVXRmMTZEZWNvZGVyLnByb3RvdHlwZS5lbmQgPSBmdW5jdGlvbigpIHtcbiAgICBpZiAoIXRoaXMuZGVjb2Rlcikge1xuICAgICAgICB2YXIgZW5jb2RpbmcgPSBkZXRlY3RFbmNvZGluZyh0aGlzLmluaXRpYWxCdWZzLCB0aGlzLm9wdGlvbnMuZGVmYXVsdEVuY29kaW5nKTtcbiAgICAgICAgdGhpcy5kZWNvZGVyID0gdGhpcy5pY29udi5nZXREZWNvZGVyKGVuY29kaW5nLCB0aGlzLm9wdGlvbnMpO1xuXG4gICAgICAgIHZhciByZXNTdHIgPSAnJztcbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLmluaXRpYWxCdWZzLmxlbmd0aDsgaSsrKVxuICAgICAgICAgICAgcmVzU3RyICs9IHRoaXMuZGVjb2Rlci53cml0ZSh0aGlzLmluaXRpYWxCdWZzW2ldKTtcblxuICAgICAgICB2YXIgdHJhaWwgPSB0aGlzLmRlY29kZXIuZW5kKCk7XG4gICAgICAgIGlmICh0cmFpbClcbiAgICAgICAgICAgIHJlc1N0ciArPSB0cmFpbDtcblxuICAgICAgICB0aGlzLmluaXRpYWxCdWZzLmxlbmd0aCA9IHRoaXMuaW5pdGlhbEJ1ZnNMZW4gPSAwO1xuICAgICAgICByZXR1cm4gcmVzU3RyO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5kZWNvZGVyLmVuZCgpO1xufVxuXG5mdW5jdGlvbiBkZXRlY3RFbmNvZGluZyhidWZzLCBkZWZhdWx0RW5jb2RpbmcpIHtcbiAgICB2YXIgYiA9IFtdO1xuICAgIHZhciBjaGFyc1Byb2Nlc3NlZCA9IDA7XG4gICAgdmFyIGFzY2lpQ2hhcnNMRSA9IDAsIGFzY2lpQ2hhcnNCRSA9IDA7IC8vIE51bWJlciBvZiBBU0NJSSBjaGFycyB3aGVuIGRlY29kZWQgYXMgTEUgb3IgQkUuXG5cbiAgICBvdXRlcl9sb29wOlxuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYnVmcy5sZW5ndGg7IGkrKykge1xuICAgICAgICB2YXIgYnVmID0gYnVmc1tpXTtcbiAgICAgICAgZm9yICh2YXIgaiA9IDA7IGogPCBidWYubGVuZ3RoOyBqKyspIHtcbiAgICAgICAgICAgIGIucHVzaChidWZbal0pO1xuICAgICAgICAgICAgaWYgKGIubGVuZ3RoID09PSAyKSB7XG4gICAgICAgICAgICAgICAgaWYgKGNoYXJzUHJvY2Vzc2VkID09PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIENoZWNrIEJPTSBmaXJzdC5cbiAgICAgICAgICAgICAgICAgICAgaWYgKGJbMF0gPT09IDB4RkYgJiYgYlsxXSA9PT0gMHhGRSkgcmV0dXJuICd1dGYtMTZsZSc7XG4gICAgICAgICAgICAgICAgICAgIGlmIChiWzBdID09PSAweEZFICYmIGJbMV0gPT09IDB4RkYpIHJldHVybiAndXRmLTE2YmUnO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlmIChiWzBdID09PSAwICYmIGJbMV0gIT09IDApIGFzY2lpQ2hhcnNCRSsrO1xuICAgICAgICAgICAgICAgIGlmIChiWzBdICE9PSAwICYmIGJbMV0gPT09IDApIGFzY2lpQ2hhcnNMRSsrO1xuXG4gICAgICAgICAgICAgICAgYi5sZW5ndGggPSAwO1xuICAgICAgICAgICAgICAgIGNoYXJzUHJvY2Vzc2VkKys7XG5cbiAgICAgICAgICAgICAgICBpZiAoY2hhcnNQcm9jZXNzZWQgPj0gMTAwKSB7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrIG91dGVyX2xvb3A7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gTWFrZSBkZWNpc2lvbnMuXG4gICAgLy8gTW9zdCBvZiB0aGUgdGltZSwgdGhlIGNvbnRlbnQgaGFzIEFTQ0lJIGNoYXJzIChVKzAwKiopLCBidXQgdGhlIG9wcG9zaXRlIChVKyoqMDApIGlzIHVuY29tbW9uLlxuICAgIC8vIFNvLCB3ZSBjb3VudCBBU0NJSSBhcyBpZiBpdCB3YXMgTEUgb3IgQkUsIGFuZCBkZWNpZGUgZnJvbSB0aGF0LlxuICAgIGlmIChhc2NpaUNoYXJzQkUgPiBhc2NpaUNoYXJzTEUpIHJldHVybiAndXRmLTE2YmUnO1xuICAgIGlmIChhc2NpaUNoYXJzQkUgPCBhc2NpaUNoYXJzTEUpIHJldHVybiAndXRmLTE2bGUnO1xuXG4gICAgLy8gQ291bGRuJ3QgZGVjaWRlIChsaWtlbHkgYWxsIHplcm9zIG9yIG5vdCBlbm91Z2ggZGF0YSkuXG4gICAgcmV0dXJuIGRlZmF1bHRFbmNvZGluZyB8fCAndXRmLTE2bGUnO1xufVxuXG5cbiIsICJcInVzZSBzdHJpY3RcIjtcbnZhciBCdWZmZXIgPSByZXF1aXJlKFwic2FmZXItYnVmZmVyXCIpLkJ1ZmZlcjtcblxuLy8gVVRGLTcgY29kZWMsIGFjY29yZGluZyB0byBodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjMjE1MlxuLy8gU2VlIGFsc28gYmVsb3cgYSBVVEYtNy1JTUFQIGNvZGVjLCBhY2NvcmRpbmcgdG8gaHR0cDovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjMzUwMSNzZWN0aW9uLTUuMS4zXG5cbmV4cG9ydHMudXRmNyA9IFV0ZjdDb2RlYztcbmV4cG9ydHMudW5pY29kZTExdXRmNyA9ICd1dGY3JzsgLy8gQWxpYXMgVU5JQ09ERS0xLTEtVVRGLTdcbmZ1bmN0aW9uIFV0ZjdDb2RlYyhjb2RlY09wdGlvbnMsIGljb252KSB7XG4gICAgdGhpcy5pY29udiA9IGljb252O1xufTtcblxuVXRmN0NvZGVjLnByb3RvdHlwZS5lbmNvZGVyID0gVXRmN0VuY29kZXI7XG5VdGY3Q29kZWMucHJvdG90eXBlLmRlY29kZXIgPSBVdGY3RGVjb2RlcjtcblV0ZjdDb2RlYy5wcm90b3R5cGUuYm9tQXdhcmUgPSB0cnVlO1xuXG5cbi8vIC0tIEVuY29kaW5nXG5cbnZhciBub25EaXJlY3RDaGFycyA9IC9bXkEtWmEtejAtOSdcXChcXCksLVxcLlxcLzpcXD8gXFxuXFxyXFx0XSsvZztcblxuZnVuY3Rpb24gVXRmN0VuY29kZXIob3B0aW9ucywgY29kZWMpIHtcbiAgICB0aGlzLmljb252ID0gY29kZWMuaWNvbnY7XG59XG5cblV0ZjdFbmNvZGVyLnByb3RvdHlwZS53cml0ZSA9IGZ1bmN0aW9uKHN0cikge1xuICAgIC8vIE5haXZlIGltcGxlbWVudGF0aW9uLlxuICAgIC8vIE5vbi1kaXJlY3QgY2hhcnMgYXJlIGVuY29kZWQgYXMgXCIrPGJhc2U2ND4tXCI7IHNpbmdsZSBcIitcIiBjaGFyIGlzIGVuY29kZWQgYXMgXCIrLVwiLlxuICAgIHJldHVybiBCdWZmZXIuZnJvbShzdHIucmVwbGFjZShub25EaXJlY3RDaGFycywgZnVuY3Rpb24oY2h1bmspIHtcbiAgICAgICAgcmV0dXJuIFwiK1wiICsgKGNodW5rID09PSAnKycgPyAnJyA6IFxuICAgICAgICAgICAgdGhpcy5pY29udi5lbmNvZGUoY2h1bmssICd1dGYxNi1iZScpLnRvU3RyaW5nKCdiYXNlNjQnKS5yZXBsYWNlKC89KyQvLCAnJykpIFxuICAgICAgICAgICAgKyBcIi1cIjtcbiAgICB9LmJpbmQodGhpcykpKTtcbn1cblxuVXRmN0VuY29kZXIucHJvdG90eXBlLmVuZCA9IGZ1bmN0aW9uKCkge1xufVxuXG5cbi8vIC0tIERlY29kaW5nXG5cbmZ1bmN0aW9uIFV0ZjdEZWNvZGVyKG9wdGlvbnMsIGNvZGVjKSB7XG4gICAgdGhpcy5pY29udiA9IGNvZGVjLmljb252O1xuICAgIHRoaXMuaW5CYXNlNjQgPSBmYWxzZTtcbiAgICB0aGlzLmJhc2U2NEFjY3VtID0gJyc7XG59XG5cbnZhciBiYXNlNjRSZWdleCA9IC9bQS1aYS16MC05XFwvK10vO1xudmFyIGJhc2U2NENoYXJzID0gW107XG5mb3IgKHZhciBpID0gMDsgaSA8IDI1NjsgaSsrKVxuICAgIGJhc2U2NENoYXJzW2ldID0gYmFzZTY0UmVnZXgudGVzdChTdHJpbmcuZnJvbUNoYXJDb2RlKGkpKTtcblxudmFyIHBsdXNDaGFyID0gJysnLmNoYXJDb2RlQXQoMCksIFxuICAgIG1pbnVzQ2hhciA9ICctJy5jaGFyQ29kZUF0KDApLFxuICAgIGFuZENoYXIgPSAnJicuY2hhckNvZGVBdCgwKTtcblxuVXRmN0RlY29kZXIucHJvdG90eXBlLndyaXRlID0gZnVuY3Rpb24oYnVmKSB7XG4gICAgdmFyIHJlcyA9IFwiXCIsIGxhc3RJID0gMCxcbiAgICAgICAgaW5CYXNlNjQgPSB0aGlzLmluQmFzZTY0LFxuICAgICAgICBiYXNlNjRBY2N1bSA9IHRoaXMuYmFzZTY0QWNjdW07XG5cbiAgICAvLyBUaGUgZGVjb2RlciBpcyBtb3JlIGludm9sdmVkIGFzIHdlIG11c3QgaGFuZGxlIGNodW5rcyBpbiBzdHJlYW0uXG5cbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGJ1Zi5sZW5ndGg7IGkrKykge1xuICAgICAgICBpZiAoIWluQmFzZTY0KSB7IC8vIFdlJ3JlIGluIGRpcmVjdCBtb2RlLlxuICAgICAgICAgICAgLy8gV3JpdGUgZGlyZWN0IGNoYXJzIHVudGlsICcrJ1xuICAgICAgICAgICAgaWYgKGJ1ZltpXSA9PSBwbHVzQ2hhcikge1xuICAgICAgICAgICAgICAgIHJlcyArPSB0aGlzLmljb252LmRlY29kZShidWYuc2xpY2UobGFzdEksIGkpLCBcImFzY2lpXCIpOyAvLyBXcml0ZSBkaXJlY3QgY2hhcnMuXG4gICAgICAgICAgICAgICAgbGFzdEkgPSBpKzE7XG4gICAgICAgICAgICAgICAgaW5CYXNlNjQgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgeyAvLyBXZSBkZWNvZGUgYmFzZTY0LlxuICAgICAgICAgICAgaWYgKCFiYXNlNjRDaGFyc1tidWZbaV1dKSB7IC8vIEJhc2U2NCBlbmRlZC5cbiAgICAgICAgICAgICAgICBpZiAoaSA9PSBsYXN0SSAmJiBidWZbaV0gPT0gbWludXNDaGFyKSB7Ly8gXCIrLVwiIC0+IFwiK1wiXG4gICAgICAgICAgICAgICAgICAgIHJlcyArPSBcIitcIjtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB2YXIgYjY0c3RyID0gYmFzZTY0QWNjdW0gKyB0aGlzLmljb252LmRlY29kZShidWYuc2xpY2UobGFzdEksIGkpLCBcImFzY2lpXCIpO1xuICAgICAgICAgICAgICAgICAgICByZXMgKz0gdGhpcy5pY29udi5kZWNvZGUoQnVmZmVyLmZyb20oYjY0c3RyLCAnYmFzZTY0JyksIFwidXRmMTYtYmVcIik7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaWYgKGJ1ZltpXSAhPSBtaW51c0NoYXIpIC8vIE1pbnVzIGlzIGFic29yYmVkIGFmdGVyIGJhc2U2NC5cbiAgICAgICAgICAgICAgICAgICAgaS0tO1xuXG4gICAgICAgICAgICAgICAgbGFzdEkgPSBpKzE7XG4gICAgICAgICAgICAgICAgaW5CYXNlNjQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICBiYXNlNjRBY2N1bSA9ICcnO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgaWYgKCFpbkJhc2U2NCkge1xuICAgICAgICByZXMgKz0gdGhpcy5pY29udi5kZWNvZGUoYnVmLnNsaWNlKGxhc3RJKSwgXCJhc2NpaVwiKTsgLy8gV3JpdGUgZGlyZWN0IGNoYXJzLlxuICAgIH0gZWxzZSB7XG4gICAgICAgIHZhciBiNjRzdHIgPSBiYXNlNjRBY2N1bSArIHRoaXMuaWNvbnYuZGVjb2RlKGJ1Zi5zbGljZShsYXN0SSksIFwiYXNjaWlcIik7XG5cbiAgICAgICAgdmFyIGNhbkJlRGVjb2RlZCA9IGI2NHN0ci5sZW5ndGggLSAoYjY0c3RyLmxlbmd0aCAlIDgpOyAvLyBNaW5pbWFsIGNodW5rOiAyIHF1YWRzIC0+IDJ4MyBieXRlcyAtPiAzIGNoYXJzLlxuICAgICAgICBiYXNlNjRBY2N1bSA9IGI2NHN0ci5zbGljZShjYW5CZURlY29kZWQpOyAvLyBUaGUgcmVzdCB3aWxsIGJlIGRlY29kZWQgaW4gZnV0dXJlLlxuICAgICAgICBiNjRzdHIgPSBiNjRzdHIuc2xpY2UoMCwgY2FuQmVEZWNvZGVkKTtcblxuICAgICAgICByZXMgKz0gdGhpcy5pY29udi5kZWNvZGUoQnVmZmVyLmZyb20oYjY0c3RyLCAnYmFzZTY0JyksIFwidXRmMTYtYmVcIik7XG4gICAgfVxuXG4gICAgdGhpcy5pbkJhc2U2NCA9IGluQmFzZTY0O1xuICAgIHRoaXMuYmFzZTY0QWNjdW0gPSBiYXNlNjRBY2N1bTtcblxuICAgIHJldHVybiByZXM7XG59XG5cblV0ZjdEZWNvZGVyLnByb3RvdHlwZS5lbmQgPSBmdW5jdGlvbigpIHtcbiAgICB2YXIgcmVzID0gXCJcIjtcbiAgICBpZiAodGhpcy5pbkJhc2U2NCAmJiB0aGlzLmJhc2U2NEFjY3VtLmxlbmd0aCA+IDApXG4gICAgICAgIHJlcyA9IHRoaXMuaWNvbnYuZGVjb2RlKEJ1ZmZlci5mcm9tKHRoaXMuYmFzZTY0QWNjdW0sICdiYXNlNjQnKSwgXCJ1dGYxNi1iZVwiKTtcblxuICAgIHRoaXMuaW5CYXNlNjQgPSBmYWxzZTtcbiAgICB0aGlzLmJhc2U2NEFjY3VtID0gJyc7XG4gICAgcmV0dXJuIHJlcztcbn1cblxuXG4vLyBVVEYtNy1JTUFQIGNvZGVjLlxuLy8gUkZDMzUwMSBTZWMuIDUuMS4zIE1vZGlmaWVkIFVURi03IChodHRwOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmMzNTAxI3NlY3Rpb24tNS4xLjMpXG4vLyBEaWZmZXJlbmNlczpcbi8vICAqIEJhc2U2NCBwYXJ0IGlzIHN0YXJ0ZWQgYnkgXCImXCIgaW5zdGVhZCBvZiBcIitcIlxuLy8gICogRGlyZWN0IGNoYXJhY3RlcnMgYXJlIDB4MjAtMHg3RSwgZXhjZXB0IFwiJlwiICgweDI2KVxuLy8gICogSW4gQmFzZTY0LCBcIixcIiBpcyB1c2VkIGluc3RlYWQgb2YgXCIvXCJcbi8vICAqIEJhc2U2NCBtdXN0IG5vdCBiZSB1c2VkIHRvIHJlcHJlc2VudCBkaXJlY3QgY2hhcmFjdGVycy5cbi8vICAqIE5vIGltcGxpY2l0IHNoaWZ0IGJhY2sgZnJvbSBCYXNlNjQgKHNob3VsZCBhbHdheXMgZW5kIHdpdGggJy0nKVxuLy8gICogU3RyaW5nIG11c3QgZW5kIGluIG5vbi1zaGlmdGVkIHBvc2l0aW9uLlxuLy8gICogXCItJlwiIHdoaWxlIGluIGJhc2U2NCBpcyBub3QgYWxsb3dlZC5cblxuXG5leHBvcnRzLnV0ZjdpbWFwID0gVXRmN0lNQVBDb2RlYztcbmZ1bmN0aW9uIFV0ZjdJTUFQQ29kZWMoY29kZWNPcHRpb25zLCBpY29udikge1xuICAgIHRoaXMuaWNvbnYgPSBpY29udjtcbn07XG5cblV0ZjdJTUFQQ29kZWMucHJvdG90eXBlLmVuY29kZXIgPSBVdGY3SU1BUEVuY29kZXI7XG5VdGY3SU1BUENvZGVjLnByb3RvdHlwZS5kZWNvZGVyID0gVXRmN0lNQVBEZWNvZGVyO1xuVXRmN0lNQVBDb2RlYy5wcm90b3R5cGUuYm9tQXdhcmUgPSB0cnVlO1xuXG5cbi8vIC0tIEVuY29kaW5nXG5cbmZ1bmN0aW9uIFV0ZjdJTUFQRW5jb2RlcihvcHRpb25zLCBjb2RlYykge1xuICAgIHRoaXMuaWNvbnYgPSBjb2RlYy5pY29udjtcbiAgICB0aGlzLmluQmFzZTY0ID0gZmFsc2U7XG4gICAgdGhpcy5iYXNlNjRBY2N1bSA9IEJ1ZmZlci5hbGxvYyg2KTtcbiAgICB0aGlzLmJhc2U2NEFjY3VtSWR4ID0gMDtcbn1cblxuVXRmN0lNQVBFbmNvZGVyLnByb3RvdHlwZS53cml0ZSA9IGZ1bmN0aW9uKHN0cikge1xuICAgIHZhciBpbkJhc2U2NCA9IHRoaXMuaW5CYXNlNjQsXG4gICAgICAgIGJhc2U2NEFjY3VtID0gdGhpcy5iYXNlNjRBY2N1bSxcbiAgICAgICAgYmFzZTY0QWNjdW1JZHggPSB0aGlzLmJhc2U2NEFjY3VtSWR4LFxuICAgICAgICBidWYgPSBCdWZmZXIuYWxsb2Moc3RyLmxlbmd0aCo1ICsgMTApLCBidWZJZHggPSAwO1xuXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBzdHIubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgdmFyIHVDaGFyID0gc3RyLmNoYXJDb2RlQXQoaSk7XG4gICAgICAgIGlmICgweDIwIDw9IHVDaGFyICYmIHVDaGFyIDw9IDB4N0UpIHsgLy8gRGlyZWN0IGNoYXJhY3RlciBvciAnJicuXG4gICAgICAgICAgICBpZiAoaW5CYXNlNjQpIHtcbiAgICAgICAgICAgICAgICBpZiAoYmFzZTY0QWNjdW1JZHggPiAwKSB7XG4gICAgICAgICAgICAgICAgICAgIGJ1ZklkeCArPSBidWYud3JpdGUoYmFzZTY0QWNjdW0uc2xpY2UoMCwgYmFzZTY0QWNjdW1JZHgpLnRvU3RyaW5nKCdiYXNlNjQnKS5yZXBsYWNlKC9cXC8vZywgJywnKS5yZXBsYWNlKC89KyQvLCAnJyksIGJ1ZklkeCk7XG4gICAgICAgICAgICAgICAgICAgIGJhc2U2NEFjY3VtSWR4ID0gMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBidWZbYnVmSWR4KytdID0gbWludXNDaGFyOyAvLyBXcml0ZSAnLScsIHRoZW4gZ28gdG8gZGlyZWN0IG1vZGUuXG4gICAgICAgICAgICAgICAgaW5CYXNlNjQgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCFpbkJhc2U2NCkge1xuICAgICAgICAgICAgICAgIGJ1ZltidWZJZHgrK10gPSB1Q2hhcjsgLy8gV3JpdGUgZGlyZWN0IGNoYXJhY3RlclxuXG4gICAgICAgICAgICAgICAgaWYgKHVDaGFyID09PSBhbmRDaGFyKSAgLy8gQW1wZXJzYW5kIC0+ICcmLSdcbiAgICAgICAgICAgICAgICAgICAgYnVmW2J1ZklkeCsrXSA9IG1pbnVzQ2hhcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9IGVsc2UgeyAvLyBOb24tZGlyZWN0IGNoYXJhY3RlclxuICAgICAgICAgICAgaWYgKCFpbkJhc2U2NCkge1xuICAgICAgICAgICAgICAgIGJ1ZltidWZJZHgrK10gPSBhbmRDaGFyOyAvLyBXcml0ZSAnJicsIHRoZW4gZ28gdG8gYmFzZTY0IG1vZGUuXG4gICAgICAgICAgICAgICAgaW5CYXNlNjQgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGluQmFzZTY0KSB7XG4gICAgICAgICAgICAgICAgYmFzZTY0QWNjdW1bYmFzZTY0QWNjdW1JZHgrK10gPSB1Q2hhciA+PiA4O1xuICAgICAgICAgICAgICAgIGJhc2U2NEFjY3VtW2Jhc2U2NEFjY3VtSWR4KytdID0gdUNoYXIgJiAweEZGO1xuXG4gICAgICAgICAgICAgICAgaWYgKGJhc2U2NEFjY3VtSWR4ID09IGJhc2U2NEFjY3VtLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICBidWZJZHggKz0gYnVmLndyaXRlKGJhc2U2NEFjY3VtLnRvU3RyaW5nKCdiYXNlNjQnKS5yZXBsYWNlKC9cXC8vZywgJywnKSwgYnVmSWR4KTtcbiAgICAgICAgICAgICAgICAgICAgYmFzZTY0QWNjdW1JZHggPSAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuaW5CYXNlNjQgPSBpbkJhc2U2NDtcbiAgICB0aGlzLmJhc2U2NEFjY3VtSWR4ID0gYmFzZTY0QWNjdW1JZHg7XG5cbiAgICByZXR1cm4gYnVmLnNsaWNlKDAsIGJ1ZklkeCk7XG59XG5cblV0ZjdJTUFQRW5jb2Rlci5wcm90b3R5cGUuZW5kID0gZnVuY3Rpb24oKSB7XG4gICAgdmFyIGJ1ZiA9IEJ1ZmZlci5hbGxvYygxMCksIGJ1ZklkeCA9IDA7XG4gICAgaWYgKHRoaXMuaW5CYXNlNjQpIHtcbiAgICAgICAgaWYgKHRoaXMuYmFzZTY0QWNjdW1JZHggPiAwKSB7XG4gICAgICAgICAgICBidWZJZHggKz0gYnVmLndyaXRlKHRoaXMuYmFzZTY0QWNjdW0uc2xpY2UoMCwgdGhpcy5iYXNlNjRBY2N1bUlkeCkudG9TdHJpbmcoJ2Jhc2U2NCcpLnJlcGxhY2UoL1xcLy9nLCAnLCcpLnJlcGxhY2UoLz0rJC8sICcnKSwgYnVmSWR4KTtcbiAgICAgICAgICAgIHRoaXMuYmFzZTY0QWNjdW1JZHggPSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgYnVmW2J1ZklkeCsrXSA9IG1pbnVzQ2hhcjsgLy8gV3JpdGUgJy0nLCB0aGVuIGdvIHRvIGRpcmVjdCBtb2RlLlxuICAgICAgICB0aGlzLmluQmFzZTY0ID0gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIGJ1Zi5zbGljZSgwLCBidWZJZHgpO1xufVxuXG5cbi8vIC0tIERlY29kaW5nXG5cbmZ1bmN0aW9uIFV0ZjdJTUFQRGVjb2RlcihvcHRpb25zLCBjb2RlYykge1xuICAgIHRoaXMuaWNvbnYgPSBjb2RlYy5pY29udjtcbiAgICB0aGlzLmluQmFzZTY0ID0gZmFsc2U7XG4gICAgdGhpcy5iYXNlNjRBY2N1bSA9ICcnO1xufVxuXG52YXIgYmFzZTY0SU1BUENoYXJzID0gYmFzZTY0Q2hhcnMuc2xpY2UoKTtcbmJhc2U2NElNQVBDaGFyc1snLCcuY2hhckNvZGVBdCgwKV0gPSB0cnVlO1xuXG5VdGY3SU1BUERlY29kZXIucHJvdG90eXBlLndyaXRlID0gZnVuY3Rpb24oYnVmKSB7XG4gICAgdmFyIHJlcyA9IFwiXCIsIGxhc3RJID0gMCxcbiAgICAgICAgaW5CYXNlNjQgPSB0aGlzLmluQmFzZTY0LFxuICAgICAgICBiYXNlNjRBY2N1bSA9IHRoaXMuYmFzZTY0QWNjdW07XG5cbiAgICAvLyBUaGUgZGVjb2RlciBpcyBtb3JlIGludm9sdmVkIGFzIHdlIG11c3QgaGFuZGxlIGNodW5rcyBpbiBzdHJlYW0uXG4gICAgLy8gSXQgaXMgZm9yZ2l2aW5nLCBjbG9zZXIgdG8gc3RhbmRhcmQgVVRGLTcgKGZvciBleGFtcGxlLCAnLScgaXMgb3B0aW9uYWwgYXQgdGhlIGVuZCkuXG5cbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGJ1Zi5sZW5ndGg7IGkrKykge1xuICAgICAgICBpZiAoIWluQmFzZTY0KSB7IC8vIFdlJ3JlIGluIGRpcmVjdCBtb2RlLlxuICAgICAgICAgICAgLy8gV3JpdGUgZGlyZWN0IGNoYXJzIHVudGlsICcmJ1xuICAgICAgICAgICAgaWYgKGJ1ZltpXSA9PSBhbmRDaGFyKSB7XG4gICAgICAgICAgICAgICAgcmVzICs9IHRoaXMuaWNvbnYuZGVjb2RlKGJ1Zi5zbGljZShsYXN0SSwgaSksIFwiYXNjaWlcIik7IC8vIFdyaXRlIGRpcmVjdCBjaGFycy5cbiAgICAgICAgICAgICAgICBsYXN0SSA9IGkrMTtcbiAgICAgICAgICAgICAgICBpbkJhc2U2NCA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7IC8vIFdlIGRlY29kZSBiYXNlNjQuXG4gICAgICAgICAgICBpZiAoIWJhc2U2NElNQVBDaGFyc1tidWZbaV1dKSB7IC8vIEJhc2U2NCBlbmRlZC5cbiAgICAgICAgICAgICAgICBpZiAoaSA9PSBsYXN0SSAmJiBidWZbaV0gPT0gbWludXNDaGFyKSB7IC8vIFwiJi1cIiAtPiBcIiZcIlxuICAgICAgICAgICAgICAgICAgICByZXMgKz0gXCImXCI7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIGI2NHN0ciA9IGJhc2U2NEFjY3VtICsgdGhpcy5pY29udi5kZWNvZGUoYnVmLnNsaWNlKGxhc3RJLCBpKSwgXCJhc2NpaVwiKS5yZXBsYWNlKC8sL2csICcvJyk7XG4gICAgICAgICAgICAgICAgICAgIHJlcyArPSB0aGlzLmljb252LmRlY29kZShCdWZmZXIuZnJvbShiNjRzdHIsICdiYXNlNjQnKSwgXCJ1dGYxNi1iZVwiKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoYnVmW2ldICE9IG1pbnVzQ2hhcikgLy8gTWludXMgbWF5IGJlIGFic29yYmVkIGFmdGVyIGJhc2U2NC5cbiAgICAgICAgICAgICAgICAgICAgaS0tO1xuXG4gICAgICAgICAgICAgICAgbGFzdEkgPSBpKzE7XG4gICAgICAgICAgICAgICAgaW5CYXNlNjQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICBiYXNlNjRBY2N1bSA9ICcnO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgaWYgKCFpbkJhc2U2NCkge1xuICAgICAgICByZXMgKz0gdGhpcy5pY29udi5kZWNvZGUoYnVmLnNsaWNlKGxhc3RJKSwgXCJhc2NpaVwiKTsgLy8gV3JpdGUgZGlyZWN0IGNoYXJzLlxuICAgIH0gZWxzZSB7XG4gICAgICAgIHZhciBiNjRzdHIgPSBiYXNlNjRBY2N1bSArIHRoaXMuaWNvbnYuZGVjb2RlKGJ1Zi5zbGljZShsYXN0SSksIFwiYXNjaWlcIikucmVwbGFjZSgvLC9nLCAnLycpO1xuXG4gICAgICAgIHZhciBjYW5CZURlY29kZWQgPSBiNjRzdHIubGVuZ3RoIC0gKGI2NHN0ci5sZW5ndGggJSA4KTsgLy8gTWluaW1hbCBjaHVuazogMiBxdWFkcyAtPiAyeDMgYnl0ZXMgLT4gMyBjaGFycy5cbiAgICAgICAgYmFzZTY0QWNjdW0gPSBiNjRzdHIuc2xpY2UoY2FuQmVEZWNvZGVkKTsgLy8gVGhlIHJlc3Qgd2lsbCBiZSBkZWNvZGVkIGluIGZ1dHVyZS5cbiAgICAgICAgYjY0c3RyID0gYjY0c3RyLnNsaWNlKDAsIGNhbkJlRGVjb2RlZCk7XG5cbiAgICAgICAgcmVzICs9IHRoaXMuaWNvbnYuZGVjb2RlKEJ1ZmZlci5mcm9tKGI2NHN0ciwgJ2Jhc2U2NCcpLCBcInV0ZjE2LWJlXCIpO1xuICAgIH1cblxuICAgIHRoaXMuaW5CYXNlNjQgPSBpbkJhc2U2NDtcbiAgICB0aGlzLmJhc2U2NEFjY3VtID0gYmFzZTY0QWNjdW07XG5cbiAgICByZXR1cm4gcmVzO1xufVxuXG5VdGY3SU1BUERlY29kZXIucHJvdG90eXBlLmVuZCA9IGZ1bmN0aW9uKCkge1xuICAgIHZhciByZXMgPSBcIlwiO1xuICAgIGlmICh0aGlzLmluQmFzZTY0ICYmIHRoaXMuYmFzZTY0QWNjdW0ubGVuZ3RoID4gMClcbiAgICAgICAgcmVzID0gdGhpcy5pY29udi5kZWNvZGUoQnVmZmVyLmZyb20odGhpcy5iYXNlNjRBY2N1bSwgJ2Jhc2U2NCcpLCBcInV0ZjE2LWJlXCIpO1xuXG4gICAgdGhpcy5pbkJhc2U2NCA9IGZhbHNlO1xuICAgIHRoaXMuYmFzZTY0QWNjdW0gPSAnJztcbiAgICByZXR1cm4gcmVzO1xufVxuXG5cbiIsICJcInVzZSBzdHJpY3RcIjtcbnZhciBCdWZmZXIgPSByZXF1aXJlKFwic2FmZXItYnVmZmVyXCIpLkJ1ZmZlcjtcblxuLy8gU2luZ2xlLWJ5dGUgY29kZWMuIE5lZWRzIGEgJ2NoYXJzJyBzdHJpbmcgcGFyYW1ldGVyIHRoYXQgY29udGFpbnMgMjU2IG9yIDEyOCBjaGFycyB0aGF0XG4vLyBjb3JyZXNwb25kIHRvIGVuY29kZWQgYnl0ZXMgKGlmIDEyOCAtIHRoZW4gbG93ZXIgaGFsZiBpcyBBU0NJSSkuIFxuXG5leHBvcnRzLl9zYmNzID0gU0JDU0NvZGVjO1xuZnVuY3Rpb24gU0JDU0NvZGVjKGNvZGVjT3B0aW9ucywgaWNvbnYpIHtcbiAgICBpZiAoIWNvZGVjT3B0aW9ucylcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiU0JDUyBjb2RlYyBpcyBjYWxsZWQgd2l0aG91dCB0aGUgZGF0YS5cIilcbiAgICBcbiAgICAvLyBQcmVwYXJlIGNoYXIgYnVmZmVyIGZvciBkZWNvZGluZy5cbiAgICBpZiAoIWNvZGVjT3B0aW9ucy5jaGFycyB8fCAoY29kZWNPcHRpb25zLmNoYXJzLmxlbmd0aCAhPT0gMTI4ICYmIGNvZGVjT3B0aW9ucy5jaGFycy5sZW5ndGggIT09IDI1NikpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIkVuY29kaW5nICdcIitjb2RlY09wdGlvbnMudHlwZStcIicgaGFzIGluY29ycmVjdCAnY2hhcnMnIChtdXN0IGJlIG9mIGxlbiAxMjggb3IgMjU2KVwiKTtcbiAgICBcbiAgICBpZiAoY29kZWNPcHRpb25zLmNoYXJzLmxlbmd0aCA9PT0gMTI4KSB7XG4gICAgICAgIHZhciBhc2NpaVN0cmluZyA9IFwiXCI7XG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgMTI4OyBpKyspXG4gICAgICAgICAgICBhc2NpaVN0cmluZyArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGkpO1xuICAgICAgICBjb2RlY09wdGlvbnMuY2hhcnMgPSBhc2NpaVN0cmluZyArIGNvZGVjT3B0aW9ucy5jaGFycztcbiAgICB9XG5cbiAgICB0aGlzLmRlY29kZUJ1ZiA9IEJ1ZmZlci5mcm9tKGNvZGVjT3B0aW9ucy5jaGFycywgJ3VjczInKTtcbiAgICBcbiAgICAvLyBFbmNvZGluZyBidWZmZXIuXG4gICAgdmFyIGVuY29kZUJ1ZiA9IEJ1ZmZlci5hbGxvYyg2NTUzNiwgaWNvbnYuZGVmYXVsdENoYXJTaW5nbGVCeXRlLmNoYXJDb2RlQXQoMCkpO1xuXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjb2RlY09wdGlvbnMuY2hhcnMubGVuZ3RoOyBpKyspXG4gICAgICAgIGVuY29kZUJ1Zltjb2RlY09wdGlvbnMuY2hhcnMuY2hhckNvZGVBdChpKV0gPSBpO1xuXG4gICAgdGhpcy5lbmNvZGVCdWYgPSBlbmNvZGVCdWY7XG59XG5cblNCQ1NDb2RlYy5wcm90b3R5cGUuZW5jb2RlciA9IFNCQ1NFbmNvZGVyO1xuU0JDU0NvZGVjLnByb3RvdHlwZS5kZWNvZGVyID0gU0JDU0RlY29kZXI7XG5cblxuZnVuY3Rpb24gU0JDU0VuY29kZXIob3B0aW9ucywgY29kZWMpIHtcbiAgICB0aGlzLmVuY29kZUJ1ZiA9IGNvZGVjLmVuY29kZUJ1Zjtcbn1cblxuU0JDU0VuY29kZXIucHJvdG90eXBlLndyaXRlID0gZnVuY3Rpb24oc3RyKSB7XG4gICAgdmFyIGJ1ZiA9IEJ1ZmZlci5hbGxvYyhzdHIubGVuZ3RoKTtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IHN0ci5sZW5ndGg7IGkrKylcbiAgICAgICAgYnVmW2ldID0gdGhpcy5lbmNvZGVCdWZbc3RyLmNoYXJDb2RlQXQoaSldO1xuICAgIFxuICAgIHJldHVybiBidWY7XG59XG5cblNCQ1NFbmNvZGVyLnByb3RvdHlwZS5lbmQgPSBmdW5jdGlvbigpIHtcbn1cblxuXG5mdW5jdGlvbiBTQkNTRGVjb2RlcihvcHRpb25zLCBjb2RlYykge1xuICAgIHRoaXMuZGVjb2RlQnVmID0gY29kZWMuZGVjb2RlQnVmO1xufVxuXG5TQkNTRGVjb2Rlci5wcm90b3R5cGUud3JpdGUgPSBmdW5jdGlvbihidWYpIHtcbiAgICAvLyBTdHJpbmdzIGFyZSBpbW11dGFibGUgaW4gSlMgLT4gd2UgdXNlIHVjczIgYnVmZmVyIHRvIHNwZWVkIHVwIGNvbXB1dGF0aW9ucy5cbiAgICB2YXIgZGVjb2RlQnVmID0gdGhpcy5kZWNvZGVCdWY7XG4gICAgdmFyIG5ld0J1ZiA9IEJ1ZmZlci5hbGxvYyhidWYubGVuZ3RoKjIpO1xuICAgIHZhciBpZHgxID0gMCwgaWR4MiA9IDA7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBidWYubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgaWR4MSA9IGJ1ZltpXSoyOyBpZHgyID0gaSoyO1xuICAgICAgICBuZXdCdWZbaWR4Ml0gPSBkZWNvZGVCdWZbaWR4MV07XG4gICAgICAgIG5ld0J1ZltpZHgyKzFdID0gZGVjb2RlQnVmW2lkeDErMV07XG4gICAgfVxuICAgIHJldHVybiBuZXdCdWYudG9TdHJpbmcoJ3VjczInKTtcbn1cblxuU0JDU0RlY29kZXIucHJvdG90eXBlLmVuZCA9IGZ1bmN0aW9uKCkge1xufVxuIiwgIlwidXNlIHN0cmljdFwiO1xuXG4vLyBNYW51YWxseSBhZGRlZCBkYXRhIHRvIGJlIHVzZWQgYnkgc2JjcyBjb2RlYyBpbiBhZGRpdGlvbiB0byBnZW5lcmF0ZWQgb25lLlxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgICAvLyBOb3Qgc3VwcG9ydGVkIGJ5IGljb252LCBub3Qgc3VyZSB3aHkuXG4gICAgXCIxMDAyOVwiOiBcIm1hY2NlbnRldXJvXCIsXG4gICAgXCJtYWNjZW50ZXVyb1wiOiB7XG4gICAgICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgICAgIFwiY2hhcnNcIjogXCJcdTAwQzRcdTAxMDBcdTAxMDFcdTAwQzlcdTAxMDRcdTAwRDZcdTAwRENcdTAwRTFcdTAxMDVcdTAxMENcdTAwRTRcdTAxMERcdTAxMDZcdTAxMDdcdTAwRTlcdTAxNzlcdTAxN0FcdTAxMEVcdTAwRURcdTAxMEZcdTAxMTJcdTAxMTNcdTAxMTZcdTAwRjNcdTAxMTdcdTAwRjRcdTAwRjZcdTAwRjVcdTAwRkFcdTAxMUFcdTAxMUJcdTAwRkNcdTIwMjBcdTAwQjBcdTAxMThcdTAwQTNcdTAwQTdcdTIwMjJcdTAwQjZcdTAwREZcdTAwQUVcdTAwQTlcdTIxMjJcdTAxMTlcdTAwQThcdTIyNjBcdTAxMjNcdTAxMkVcdTAxMkZcdTAxMkFcdTIyNjRcdTIyNjVcdTAxMkJcdTAxMzZcdTIyMDJcdTIyMTFcdTAxNDJcdTAxM0JcdTAxM0NcdTAxM0RcdTAxM0VcdTAxMzlcdTAxM0FcdTAxNDVcdTAxNDZcdTAxNDNcdTAwQUNcdTIyMUFcdTAxNDRcdTAxNDdcdTIyMDZcdTAwQUJcdTAwQkJcdTIwMjZcdTAwQTBcdTAxNDhcdTAxNTBcdTAwRDVcdTAxNTFcdTAxNENcdTIwMTNcdTIwMTRcdTIwMUNcdTIwMURcdTIwMThcdTIwMTlcdTAwRjdcdTI1Q0FcdTAxNERcdTAxNTRcdTAxNTVcdTAxNThcdTIwMzlcdTIwM0FcdTAxNTlcdTAxNTZcdTAxNTdcdTAxNjBcdTIwMUFcdTIwMUVcdTAxNjFcdTAxNUFcdTAxNUJcdTAwQzFcdTAxNjRcdTAxNjVcdTAwQ0RcdTAxN0RcdTAxN0VcdTAxNkFcdTAwRDNcdTAwRDRcdTAxNkJcdTAxNkVcdTAwREFcdTAxNkZcdTAxNzBcdTAxNzFcdTAxNzJcdTAxNzNcdTAwRERcdTAwRkRcdTAxMzdcdTAxN0JcdTAxNDFcdTAxN0NcdTAxMjJcdTAyQzdcIlxuICAgIH0sXG5cbiAgICBcIjgwOFwiOiBcImNwODA4XCIsXG4gICAgXCJpYm04MDhcIjogXCJjcDgwOFwiLFxuICAgIFwiY3A4MDhcIjoge1xuICAgICAgICBcInR5cGVcIjogXCJfc2Jjc1wiLFxuICAgICAgICBcImNoYXJzXCI6IFwiXHUwNDEwXHUwNDExXHUwNDEyXHUwNDEzXHUwNDE0XHUwNDE1XHUwNDE2XHUwNDE3XHUwNDE4XHUwNDE5XHUwNDFBXHUwNDFCXHUwNDFDXHUwNDFEXHUwNDFFXHUwNDFGXHUwNDIwXHUwNDIxXHUwNDIyXHUwNDIzXHUwNDI0XHUwNDI1XHUwNDI2XHUwNDI3XHUwNDI4XHUwNDI5XHUwNDJBXHUwNDJCXHUwNDJDXHUwNDJEXHUwNDJFXHUwNDJGXHUwNDMwXHUwNDMxXHUwNDMyXHUwNDMzXHUwNDM0XHUwNDM1XHUwNDM2XHUwNDM3XHUwNDM4XHUwNDM5XHUwNDNBXHUwNDNCXHUwNDNDXHUwNDNEXHUwNDNFXHUwNDNGXHUyNTkxXHUyNTkyXHUyNTkzXHUyNTAyXHUyNTI0XHUyNTYxXHUyNTYyXHUyNTU2XHUyNTU1XHUyNTYzXHUyNTUxXHUyNTU3XHUyNTVEXHUyNTVDXHUyNTVCXHUyNTEwXHUyNTE0XHUyNTM0XHUyNTJDXHUyNTFDXHUyNTAwXHUyNTNDXHUyNTVFXHUyNTVGXHUyNTVBXHUyNTU0XHUyNTY5XHUyNTY2XHUyNTYwXHUyNTUwXHUyNTZDXHUyNTY3XHUyNTY4XHUyNTY0XHUyNTY1XHUyNTU5XHUyNTU4XHUyNTUyXHUyNTUzXHUyNTZCXHUyNTZBXHUyNTE4XHUyNTBDXHUyNTg4XHUyNTg0XHUyNThDXHUyNTkwXHUyNTgwXHUwNDQwXHUwNDQxXHUwNDQyXHUwNDQzXHUwNDQ0XHUwNDQ1XHUwNDQ2XHUwNDQ3XHUwNDQ4XHUwNDQ5XHUwNDRBXHUwNDRCXHUwNDRDXHUwNDREXHUwNDRFXHUwNDRGXHUwNDAxXHUwNDUxXHUwNDA0XHUwNDU0XHUwNDA3XHUwNDU3XHUwNDBFXHUwNDVFXHUwMEIwXHUyMjE5XHUwMEI3XHUyMjFBXHUyMTE2XHUyMEFDXHUyNUEwXHUwMEEwXCJcbiAgICB9LFxuXG4gICAgXCJtaWtcIjoge1xuICAgICAgICBcInR5cGVcIjogXCJfc2Jjc1wiLFxuICAgICAgICBcImNoYXJzXCI6IFwiXHUwNDEwXHUwNDExXHUwNDEyXHUwNDEzXHUwNDE0XHUwNDE1XHUwNDE2XHUwNDE3XHUwNDE4XHUwNDE5XHUwNDFBXHUwNDFCXHUwNDFDXHUwNDFEXHUwNDFFXHUwNDFGXHUwNDIwXHUwNDIxXHUwNDIyXHUwNDIzXHUwNDI0XHUwNDI1XHUwNDI2XHUwNDI3XHUwNDI4XHUwNDI5XHUwNDJBXHUwNDJCXHUwNDJDXHUwNDJEXHUwNDJFXHUwNDJGXHUwNDMwXHUwNDMxXHUwNDMyXHUwNDMzXHUwNDM0XHUwNDM1XHUwNDM2XHUwNDM3XHUwNDM4XHUwNDM5XHUwNDNBXHUwNDNCXHUwNDNDXHUwNDNEXHUwNDNFXHUwNDNGXHUwNDQwXHUwNDQxXHUwNDQyXHUwNDQzXHUwNDQ0XHUwNDQ1XHUwNDQ2XHUwNDQ3XHUwNDQ4XHUwNDQ5XHUwNDRBXHUwNDRCXHUwNDRDXHUwNDREXHUwNDRFXHUwNDRGXHUyNTE0XHUyNTM0XHUyNTJDXHUyNTFDXHUyNTAwXHUyNTNDXHUyNTYzXHUyNTUxXHUyNTVBXHUyNTU0XHUyNTY5XHUyNTY2XHUyNTYwXHUyNTUwXHUyNTZDXHUyNTEwXHUyNTkxXHUyNTkyXHUyNTkzXHUyNTAyXHUyNTI0XHUyMTE2XHUwMEE3XHUyNTU3XHUyNTVEXHUyNTE4XHUyNTBDXHUyNTg4XHUyNTg0XHUyNThDXHUyNTkwXHUyNTgwXHUwM0IxXHUwMERGXHUwMzkzXHUwM0MwXHUwM0EzXHUwM0MzXHUwMEI1XHUwM0M0XHUwM0E2XHUwMzk4XHUwM0E5XHUwM0I0XHUyMjFFXHUwM0M2XHUwM0I1XHUyMjI5XHUyMjYxXHUwMEIxXHUyMjY1XHUyMjY0XHUyMzIwXHUyMzIxXHUwMEY3XHUyMjQ4XHUwMEIwXHUyMjE5XHUwMEI3XHUyMjFBXHUyMDdGXHUwMEIyXHUyNUEwXHUwMEEwXCJcbiAgICB9LFxuXG4gICAgXCJjcDcyMFwiOiB7XG4gICAgICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgICAgIFwiY2hhcnNcIjogXCJcXHg4MFxceDgxXHUwMEU5XHUwMEUyXFx4ODRcdTAwRTBcXHg4Nlx1MDBFN1x1MDBFQVx1MDBFQlx1MDBFOFx1MDBFRlx1MDBFRVxceDhkXFx4OGVcXHg4ZlxceDkwXFx1MDY1MVxcdTA2NTJcdTAwRjRcdTAwQTRcdTA2NDBcdTAwRkJcdTAwRjlcdTA2MjFcdTA2MjJcdTA2MjNcdTA2MjRcdTAwQTNcdTA2MjVcdTA2MjZcdTA2MjdcdTA2MjhcdTA2MjlcdTA2MkFcdTA2MkJcdTA2MkNcdTA2MkRcdTA2MkVcdTA2MkZcdTA2MzBcdTA2MzFcdTA2MzJcdTA2MzNcdTA2MzRcdTA2MzVcdTAwQUJcdTAwQkJcdTI1OTFcdTI1OTJcdTI1OTNcdTI1MDJcdTI1MjRcdTI1NjFcdTI1NjJcdTI1NTZcdTI1NTVcdTI1NjNcdTI1NTFcdTI1NTdcdTI1NURcdTI1NUNcdTI1NUJcdTI1MTBcdTI1MTRcdTI1MzRcdTI1MkNcdTI1MUNcdTI1MDBcdTI1M0NcdTI1NUVcdTI1NUZcdTI1NUFcdTI1NTRcdTI1NjlcdTI1NjZcdTI1NjBcdTI1NTBcdTI1NkNcdTI1NjdcdTI1NjhcdTI1NjRcdTI1NjVcdTI1NTlcdTI1NThcdTI1NTJcdTI1NTNcdTI1NkJcdTI1NkFcdTI1MThcdTI1MENcdTI1ODhcdTI1ODRcdTI1OENcdTI1OTBcdTI1ODBcdTA2MzZcdTA2MzdcdTA2MzhcdTA2MzlcdTA2M0FcdTA2NDFcdTAwQjVcdTA2NDJcdTA2NDNcdTA2NDRcdTA2NDVcdTA2NDZcdTA2NDdcdTA2NDhcdTA2NDlcdTA2NEFcdTIyNjFcXHUwNjRiXFx1MDY0Y1xcdTA2NGRcXHUwNjRlXFx1MDY0ZlxcdTA2NTBcdTIyNDhcdTAwQjBcdTIyMTlcdTAwQjdcdTIyMUFcdTIwN0ZcdTAwQjJcdTI1QTBcXHUwMGEwXCJcbiAgICB9LFxuXG4gICAgLy8gQWxpYXNlcyBvZiBnZW5lcmF0ZWQgZW5jb2RpbmdzLlxuICAgIFwiYXNjaWk4Yml0XCI6IFwiYXNjaWlcIixcbiAgICBcInVzYXNjaWlcIjogXCJhc2NpaVwiLFxuICAgIFwiYW5zaXgzNFwiOiBcImFzY2lpXCIsXG4gICAgXCJhbnNpeDM0MTk2OFwiOiBcImFzY2lpXCIsXG4gICAgXCJhbnNpeDM0MTk4NlwiOiBcImFzY2lpXCIsXG4gICAgXCJjc2FzY2lpXCI6IFwiYXNjaWlcIixcbiAgICBcImNwMzY3XCI6IFwiYXNjaWlcIixcbiAgICBcImlibTM2N1wiOiBcImFzY2lpXCIsXG4gICAgXCJpc29pcjZcIjogXCJhc2NpaVwiLFxuICAgIFwiaXNvNjQ2dXNcIjogXCJhc2NpaVwiLFxuICAgIFwiaXNvNjQ2aXJ2XCI6IFwiYXNjaWlcIixcbiAgICBcInVzXCI6IFwiYXNjaWlcIixcblxuICAgIFwibGF0aW4xXCI6IFwiaXNvODg1OTFcIixcbiAgICBcImxhdGluMlwiOiBcImlzbzg4NTkyXCIsXG4gICAgXCJsYXRpbjNcIjogXCJpc284ODU5M1wiLFxuICAgIFwibGF0aW40XCI6IFwiaXNvODg1OTRcIixcbiAgICBcImxhdGluNVwiOiBcImlzbzg4NTk5XCIsXG4gICAgXCJsYXRpbjZcIjogXCJpc284ODU5MTBcIixcbiAgICBcImxhdGluN1wiOiBcImlzbzg4NTkxM1wiLFxuICAgIFwibGF0aW44XCI6IFwiaXNvODg1OTE0XCIsXG4gICAgXCJsYXRpbjlcIjogXCJpc284ODU5MTVcIixcbiAgICBcImxhdGluMTBcIjogXCJpc284ODU5MTZcIixcblxuICAgIFwiY3Npc29sYXRpbjFcIjogXCJpc284ODU5MVwiLFxuICAgIFwiY3Npc29sYXRpbjJcIjogXCJpc284ODU5MlwiLFxuICAgIFwiY3Npc29sYXRpbjNcIjogXCJpc284ODU5M1wiLFxuICAgIFwiY3Npc29sYXRpbjRcIjogXCJpc284ODU5NFwiLFxuICAgIFwiY3Npc29sYXRpbmN5cmlsbGljXCI6IFwiaXNvODg1OTVcIixcbiAgICBcImNzaXNvbGF0aW5hcmFiaWNcIjogXCJpc284ODU5NlwiLFxuICAgIFwiY3Npc29sYXRpbmdyZWVrXCIgOiBcImlzbzg4NTk3XCIsXG4gICAgXCJjc2lzb2xhdGluaGVicmV3XCI6IFwiaXNvODg1OThcIixcbiAgICBcImNzaXNvbGF0aW41XCI6IFwiaXNvODg1OTlcIixcbiAgICBcImNzaXNvbGF0aW42XCI6IFwiaXNvODg1OTEwXCIsXG5cbiAgICBcImwxXCI6IFwiaXNvODg1OTFcIixcbiAgICBcImwyXCI6IFwiaXNvODg1OTJcIixcbiAgICBcImwzXCI6IFwiaXNvODg1OTNcIixcbiAgICBcImw0XCI6IFwiaXNvODg1OTRcIixcbiAgICBcImw1XCI6IFwiaXNvODg1OTlcIixcbiAgICBcImw2XCI6IFwiaXNvODg1OTEwXCIsXG4gICAgXCJsN1wiOiBcImlzbzg4NTkxM1wiLFxuICAgIFwibDhcIjogXCJpc284ODU5MTRcIixcbiAgICBcImw5XCI6IFwiaXNvODg1OTE1XCIsXG4gICAgXCJsMTBcIjogXCJpc284ODU5MTZcIixcblxuICAgIFwiaXNvaXIxNFwiOiBcImlzbzY0NmpwXCIsXG4gICAgXCJpc29pcjU3XCI6IFwiaXNvNjQ2Y25cIixcbiAgICBcImlzb2lyMTAwXCI6IFwiaXNvODg1OTFcIixcbiAgICBcImlzb2lyMTAxXCI6IFwiaXNvODg1OTJcIixcbiAgICBcImlzb2lyMTA5XCI6IFwiaXNvODg1OTNcIixcbiAgICBcImlzb2lyMTEwXCI6IFwiaXNvODg1OTRcIixcbiAgICBcImlzb2lyMTQ0XCI6IFwiaXNvODg1OTVcIixcbiAgICBcImlzb2lyMTI3XCI6IFwiaXNvODg1OTZcIixcbiAgICBcImlzb2lyMTI2XCI6IFwiaXNvODg1OTdcIixcbiAgICBcImlzb2lyMTM4XCI6IFwiaXNvODg1OThcIixcbiAgICBcImlzb2lyMTQ4XCI6IFwiaXNvODg1OTlcIixcbiAgICBcImlzb2lyMTU3XCI6IFwiaXNvODg1OTEwXCIsXG4gICAgXCJpc29pcjE2NlwiOiBcInRpczYyMFwiLFxuICAgIFwiaXNvaXIxNzlcIjogXCJpc284ODU5MTNcIixcbiAgICBcImlzb2lyMTk5XCI6IFwiaXNvODg1OTE0XCIsXG4gICAgXCJpc29pcjIwM1wiOiBcImlzbzg4NTkxNVwiLFxuICAgIFwiaXNvaXIyMjZcIjogXCJpc284ODU5MTZcIixcblxuICAgIFwiY3A4MTlcIjogXCJpc284ODU5MVwiLFxuICAgIFwiaWJtODE5XCI6IFwiaXNvODg1OTFcIixcblxuICAgIFwiY3lyaWxsaWNcIjogXCJpc284ODU5NVwiLFxuXG4gICAgXCJhcmFiaWNcIjogXCJpc284ODU5NlwiLFxuICAgIFwiYXJhYmljOFwiOiBcImlzbzg4NTk2XCIsXG4gICAgXCJlY21hMTE0XCI6IFwiaXNvODg1OTZcIixcbiAgICBcImFzbW83MDhcIjogXCJpc284ODU5NlwiLFxuXG4gICAgXCJncmVla1wiIDogXCJpc284ODU5N1wiLFxuICAgIFwiZ3JlZWs4XCIgOiBcImlzbzg4NTk3XCIsXG4gICAgXCJlY21hMTE4XCIgOiBcImlzbzg4NTk3XCIsXG4gICAgXCJlbG90OTI4XCIgOiBcImlzbzg4NTk3XCIsXG5cbiAgICBcImhlYnJld1wiOiBcImlzbzg4NTk4XCIsXG4gICAgXCJoZWJyZXc4XCI6IFwiaXNvODg1OThcIixcblxuICAgIFwidHVya2lzaFwiOiBcImlzbzg4NTk5XCIsXG4gICAgXCJ0dXJraXNoOFwiOiBcImlzbzg4NTk5XCIsXG5cbiAgICBcInRoYWlcIjogXCJpc284ODU5MTFcIixcbiAgICBcInRoYWk4XCI6IFwiaXNvODg1OTExXCIsXG5cbiAgICBcImNlbHRpY1wiOiBcImlzbzg4NTkxNFwiLFxuICAgIFwiY2VsdGljOFwiOiBcImlzbzg4NTkxNFwiLFxuICAgIFwiaXNvY2VsdGljXCI6IFwiaXNvODg1OTE0XCIsXG5cbiAgICBcInRpczYyMDBcIjogXCJ0aXM2MjBcIixcbiAgICBcInRpczYyMDI1MjkxXCI6IFwidGlzNjIwXCIsXG4gICAgXCJ0aXM2MjAyNTMzMFwiOiBcInRpczYyMFwiLFxuXG4gICAgXCIxMDAwMFwiOiBcIm1hY3JvbWFuXCIsXG4gICAgXCIxMDAwNlwiOiBcIm1hY2dyZWVrXCIsXG4gICAgXCIxMDAwN1wiOiBcIm1hY2N5cmlsbGljXCIsXG4gICAgXCIxMDA3OVwiOiBcIm1hY2ljZWxhbmRcIixcbiAgICBcIjEwMDgxXCI6IFwibWFjdHVya2lzaFwiLFxuXG4gICAgXCJjc3BjOGNvZGVwYWdlNDM3XCI6IFwiY3A0MzdcIixcbiAgICBcImNzcGM3NzViYWx0aWNcIjogXCJjcDc3NVwiLFxuICAgIFwiY3NwYzg1MG11bHRpbGluZ3VhbFwiOiBcImNwODUwXCIsXG4gICAgXCJjc3BjcDg1MlwiOiBcImNwODUyXCIsXG4gICAgXCJjc3BjODYybGF0aW5oZWJyZXdcIjogXCJjcDg2MlwiLFxuICAgIFwiY3BnclwiOiBcImNwODY5XCIsXG5cbiAgICBcIm1zZWVcIjogXCJjcDEyNTBcIixcbiAgICBcIm1zY3lybFwiOiBcImNwMTI1MVwiLFxuICAgIFwibXNhbnNpXCI6IFwiY3AxMjUyXCIsXG4gICAgXCJtc2dyZWVrXCI6IFwiY3AxMjUzXCIsXG4gICAgXCJtc3R1cmtcIjogXCJjcDEyNTRcIixcbiAgICBcIm1zaGViclwiOiBcImNwMTI1NVwiLFxuICAgIFwibXNhcmFiXCI6IFwiY3AxMjU2XCIsXG4gICAgXCJ3aW5iYWx0cmltXCI6IFwiY3AxMjU3XCIsXG5cbiAgICBcImNwMjA4NjZcIjogXCJrb2k4clwiLFxuICAgIFwiMjA4NjZcIjogXCJrb2k4clwiLFxuICAgIFwiaWJtODc4XCI6IFwia29pOHJcIixcbiAgICBcImNza29pOHJcIjogXCJrb2k4clwiLFxuXG4gICAgXCJjcDIxODY2XCI6IFwia29pOHVcIixcbiAgICBcIjIxODY2XCI6IFwia29pOHVcIixcbiAgICBcImlibTExNjhcIjogXCJrb2k4dVwiLFxuXG4gICAgXCJzdHJrMTA0ODIwMDJcIjogXCJyazEwNDhcIixcblxuICAgIFwidGN2bjU3MTJcIjogXCJ0Y3ZuXCIsXG4gICAgXCJ0Y3ZuNTcxMjFcIjogXCJ0Y3ZuXCIsXG5cbiAgICBcImdiMTk4ODgwXCI6IFwiaXNvNjQ2Y25cIixcbiAgICBcImNuXCI6IFwiaXNvNjQ2Y25cIixcblxuICAgIFwiY3Npc28xNGppc2M2MjIwcm9cIjogXCJpc282NDZqcFwiLFxuICAgIFwiamlzYzYyMjAxOTY5cm9cIjogXCJpc282NDZqcFwiLFxuICAgIFwianBcIjogXCJpc282NDZqcFwiLFxuXG4gICAgXCJjc2hwcm9tYW44XCI6IFwiaHByb21hbjhcIixcbiAgICBcInI4XCI6IFwiaHByb21hbjhcIixcbiAgICBcInJvbWFuOFwiOiBcImhwcm9tYW44XCIsXG4gICAgXCJ4cm9tYW44XCI6IFwiaHByb21hbjhcIixcbiAgICBcImlibTEwNTFcIjogXCJocHJvbWFuOFwiLFxuXG4gICAgXCJtYWNcIjogXCJtYWNpbnRvc2hcIixcbiAgICBcImNzbWFjaW50b3NoXCI6IFwibWFjaW50b3NoXCIsXG59O1xuXG4iLCAiXCJ1c2Ugc3RyaWN0XCI7XG5cbi8vIEdlbmVyYXRlZCBkYXRhIGZvciBzYmNzIGNvZGVjLiBEb24ndCBlZGl0IG1hbnVhbGx5LiBSZWdlbmVyYXRlIHVzaW5nIGdlbmVyYXRpb24vZ2VuLXNiY3MuanMgc2NyaXB0LlxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIFwiNDM3XCI6IFwiY3A0MzdcIixcbiAgXCI3MzdcIjogXCJjcDczN1wiLFxuICBcIjc3NVwiOiBcImNwNzc1XCIsXG4gIFwiODUwXCI6IFwiY3A4NTBcIixcbiAgXCI4NTJcIjogXCJjcDg1MlwiLFxuICBcIjg1NVwiOiBcImNwODU1XCIsXG4gIFwiODU2XCI6IFwiY3A4NTZcIixcbiAgXCI4NTdcIjogXCJjcDg1N1wiLFxuICBcIjg1OFwiOiBcImNwODU4XCIsXG4gIFwiODYwXCI6IFwiY3A4NjBcIixcbiAgXCI4NjFcIjogXCJjcDg2MVwiLFxuICBcIjg2MlwiOiBcImNwODYyXCIsXG4gIFwiODYzXCI6IFwiY3A4NjNcIixcbiAgXCI4NjRcIjogXCJjcDg2NFwiLFxuICBcIjg2NVwiOiBcImNwODY1XCIsXG4gIFwiODY2XCI6IFwiY3A4NjZcIixcbiAgXCI4NjlcIjogXCJjcDg2OVwiLFxuICBcIjg3NFwiOiBcIndpbmRvd3M4NzRcIixcbiAgXCI5MjJcIjogXCJjcDkyMlwiLFxuICBcIjEwNDZcIjogXCJjcDEwNDZcIixcbiAgXCIxMTI0XCI6IFwiY3AxMTI0XCIsXG4gIFwiMTEyNVwiOiBcImNwMTEyNVwiLFxuICBcIjExMjlcIjogXCJjcDExMjlcIixcbiAgXCIxMTMzXCI6IFwiY3AxMTMzXCIsXG4gIFwiMTE2MVwiOiBcImNwMTE2MVwiLFxuICBcIjExNjJcIjogXCJjcDExNjJcIixcbiAgXCIxMTYzXCI6IFwiY3AxMTYzXCIsXG4gIFwiMTI1MFwiOiBcIndpbmRvd3MxMjUwXCIsXG4gIFwiMTI1MVwiOiBcIndpbmRvd3MxMjUxXCIsXG4gIFwiMTI1MlwiOiBcIndpbmRvd3MxMjUyXCIsXG4gIFwiMTI1M1wiOiBcIndpbmRvd3MxMjUzXCIsXG4gIFwiMTI1NFwiOiBcIndpbmRvd3MxMjU0XCIsXG4gIFwiMTI1NVwiOiBcIndpbmRvd3MxMjU1XCIsXG4gIFwiMTI1NlwiOiBcIndpbmRvd3MxMjU2XCIsXG4gIFwiMTI1N1wiOiBcIndpbmRvd3MxMjU3XCIsXG4gIFwiMTI1OFwiOiBcIndpbmRvd3MxMjU4XCIsXG4gIFwiMjg1OTFcIjogXCJpc284ODU5MVwiLFxuICBcIjI4NTkyXCI6IFwiaXNvODg1OTJcIixcbiAgXCIyODU5M1wiOiBcImlzbzg4NTkzXCIsXG4gIFwiMjg1OTRcIjogXCJpc284ODU5NFwiLFxuICBcIjI4NTk1XCI6IFwiaXNvODg1OTVcIixcbiAgXCIyODU5NlwiOiBcImlzbzg4NTk2XCIsXG4gIFwiMjg1OTdcIjogXCJpc284ODU5N1wiLFxuICBcIjI4NTk4XCI6IFwiaXNvODg1OThcIixcbiAgXCIyODU5OVwiOiBcImlzbzg4NTk5XCIsXG4gIFwiMjg2MDBcIjogXCJpc284ODU5MTBcIixcbiAgXCIyODYwMVwiOiBcImlzbzg4NTkxMVwiLFxuICBcIjI4NjAzXCI6IFwiaXNvODg1OTEzXCIsXG4gIFwiMjg2MDRcIjogXCJpc284ODU5MTRcIixcbiAgXCIyODYwNVwiOiBcImlzbzg4NTkxNVwiLFxuICBcIjI4NjA2XCI6IFwiaXNvODg1OTE2XCIsXG4gIFwid2luZG93czg3NFwiOiB7XG4gICAgXCJ0eXBlXCI6IFwiX3NiY3NcIixcbiAgICBcImNoYXJzXCI6IFwiXHUyMEFDXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHUyMDI2XHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHUyMDE4XHUyMDE5XHUyMDFDXHUyMDFEXHUyMDIyXHUyMDEzXHUyMDE0XHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHUwMEEwXHUwRTAxXHUwRTAyXHUwRTAzXHUwRTA0XHUwRTA1XHUwRTA2XHUwRTA3XHUwRTA4XHUwRTA5XHUwRTBBXHUwRTBCXHUwRTBDXHUwRTBEXHUwRTBFXHUwRTBGXHUwRTEwXHUwRTExXHUwRTEyXHUwRTEzXHUwRTE0XHUwRTE1XHUwRTE2XHUwRTE3XHUwRTE4XHUwRTE5XHUwRTFBXHUwRTFCXHUwRTFDXHUwRTFEXHUwRTFFXHUwRTFGXHUwRTIwXHUwRTIxXHUwRTIyXHUwRTIzXHUwRTI0XHUwRTI1XHUwRTI2XHUwRTI3XHUwRTI4XHUwRTI5XHUwRTJBXHUwRTJCXHUwRTJDXHUwRTJEXHUwRTJFXHUwRTJGXHUwRTMwXHUwRTMxXHUwRTMyXHUwRTMzXHUwRTM0XHUwRTM1XHUwRTM2XHUwRTM3XHUwRTM4XHUwRTM5XHUwRTNBXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHUwRTNGXHUwRTQwXHUwRTQxXHUwRTQyXHUwRTQzXHUwRTQ0XHUwRTQ1XHUwRTQ2XHUwRTQ3XHUwRTQ4XHUwRTQ5XHUwRTRBXHUwRTRCXHUwRTRDXHUwRTREXHUwRTRFXHUwRTRGXHUwRTUwXHUwRTUxXHUwRTUyXHUwRTUzXHUwRTU0XHUwRTU1XHUwRTU2XHUwRTU3XHUwRTU4XHUwRTU5XHUwRTVBXHUwRTVCXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXCJcbiAgfSxcbiAgXCJ3aW44NzRcIjogXCJ3aW5kb3dzODc0XCIsXG4gIFwiY3A4NzRcIjogXCJ3aW5kb3dzODc0XCIsXG4gIFwid2luZG93czEyNTBcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MjBBQ1x1RkZGRFx1MjAxQVx1RkZGRFx1MjAxRVx1MjAyNlx1MjAyMFx1MjAyMVx1RkZGRFx1MjAzMFx1MDE2MFx1MjAzOVx1MDE1QVx1MDE2NFx1MDE3RFx1MDE3OVx1RkZGRFx1MjAxOFx1MjAxOVx1MjAxQ1x1MjAxRFx1MjAyMlx1MjAxM1x1MjAxNFx1RkZGRFx1MjEyMlx1MDE2MVx1MjAzQVx1MDE1Qlx1MDE2NVx1MDE3RVx1MDE3QVx1MDBBMFx1MDJDN1x1MDJEOFx1MDE0MVx1MDBBNFx1MDEwNFx1MDBBNlx1MDBBN1x1MDBBOFx1MDBBOVx1MDE1RVx1MDBBQlx1MDBBQ1x1MDBBRFx1MDBBRVx1MDE3Qlx1MDBCMFx1MDBCMVx1MDJEQlx1MDE0Mlx1MDBCNFx1MDBCNVx1MDBCNlx1MDBCN1x1MDBCOFx1MDEwNVx1MDE1Rlx1MDBCQlx1MDEzRFx1MDJERFx1MDEzRVx1MDE3Q1x1MDE1NFx1MDBDMVx1MDBDMlx1MDEwMlx1MDBDNFx1MDEzOVx1MDEwNlx1MDBDN1x1MDEwQ1x1MDBDOVx1MDExOFx1MDBDQlx1MDExQVx1MDBDRFx1MDBDRVx1MDEwRVx1MDExMFx1MDE0M1x1MDE0N1x1MDBEM1x1MDBENFx1MDE1MFx1MDBENlx1MDBEN1x1MDE1OFx1MDE2RVx1MDBEQVx1MDE3MFx1MDBEQ1x1MDBERFx1MDE2Mlx1MDBERlx1MDE1NVx1MDBFMVx1MDBFMlx1MDEwM1x1MDBFNFx1MDEzQVx1MDEwN1x1MDBFN1x1MDEwRFx1MDBFOVx1MDExOVx1MDBFQlx1MDExQlx1MDBFRFx1MDBFRVx1MDEwRlx1MDExMVx1MDE0NFx1MDE0OFx1MDBGM1x1MDBGNFx1MDE1MVx1MDBGNlx1MDBGN1x1MDE1OVx1MDE2Rlx1MDBGQVx1MDE3MVx1MDBGQ1x1MDBGRFx1MDE2M1x1MDJEOVwiXG4gIH0sXG4gIFwid2luMTI1MFwiOiBcIndpbmRvd3MxMjUwXCIsXG4gIFwiY3AxMjUwXCI6IFwid2luZG93czEyNTBcIixcbiAgXCJ3aW5kb3dzMTI1MVwiOiB7XG4gICAgXCJ0eXBlXCI6IFwiX3NiY3NcIixcbiAgICBcImNoYXJzXCI6IFwiXHUwNDAyXHUwNDAzXHUyMDFBXHUwNDUzXHUyMDFFXHUyMDI2XHUyMDIwXHUyMDIxXHUyMEFDXHUyMDMwXHUwNDA5XHUyMDM5XHUwNDBBXHUwNDBDXHUwNDBCXHUwNDBGXHUwNDUyXHUyMDE4XHUyMDE5XHUyMDFDXHUyMDFEXHUyMDIyXHUyMDEzXHUyMDE0XHVGRkZEXHUyMTIyXHUwNDU5XHUyMDNBXHUwNDVBXHUwNDVDXHUwNDVCXHUwNDVGXHUwMEEwXHUwNDBFXHUwNDVFXHUwNDA4XHUwMEE0XHUwNDkwXHUwMEE2XHUwMEE3XHUwNDAxXHUwMEE5XHUwNDA0XHUwMEFCXHUwMEFDXHUwMEFEXHUwMEFFXHUwNDA3XHUwMEIwXHUwMEIxXHUwNDA2XHUwNDU2XHUwNDkxXHUwMEI1XHUwMEI2XHUwMEI3XHUwNDUxXHUyMTE2XHUwNDU0XHUwMEJCXHUwNDU4XHUwNDA1XHUwNDU1XHUwNDU3XHUwNDEwXHUwNDExXHUwNDEyXHUwNDEzXHUwNDE0XHUwNDE1XHUwNDE2XHUwNDE3XHUwNDE4XHUwNDE5XHUwNDFBXHUwNDFCXHUwNDFDXHUwNDFEXHUwNDFFXHUwNDFGXHUwNDIwXHUwNDIxXHUwNDIyXHUwNDIzXHUwNDI0XHUwNDI1XHUwNDI2XHUwNDI3XHUwNDI4XHUwNDI5XHUwNDJBXHUwNDJCXHUwNDJDXHUwNDJEXHUwNDJFXHUwNDJGXHUwNDMwXHUwNDMxXHUwNDMyXHUwNDMzXHUwNDM0XHUwNDM1XHUwNDM2XHUwNDM3XHUwNDM4XHUwNDM5XHUwNDNBXHUwNDNCXHUwNDNDXHUwNDNEXHUwNDNFXHUwNDNGXHUwNDQwXHUwNDQxXHUwNDQyXHUwNDQzXHUwNDQ0XHUwNDQ1XHUwNDQ2XHUwNDQ3XHUwNDQ4XHUwNDQ5XHUwNDRBXHUwNDRCXHUwNDRDXHUwNDREXHUwNDRFXHUwNDRGXCJcbiAgfSxcbiAgXCJ3aW4xMjUxXCI6IFwid2luZG93czEyNTFcIixcbiAgXCJjcDEyNTFcIjogXCJ3aW5kb3dzMTI1MVwiLFxuICBcIndpbmRvd3MxMjUyXCI6IHtcbiAgICBcInR5cGVcIjogXCJfc2Jjc1wiLFxuICAgIFwiY2hhcnNcIjogXCJcdTIwQUNcdUZGRkRcdTIwMUFcdTAxOTJcdTIwMUVcdTIwMjZcdTIwMjBcdTIwMjFcdTAyQzZcdTIwMzBcdTAxNjBcdTIwMzlcdTAxNTJcdUZGRkRcdTAxN0RcdUZGRkRcdUZGRkRcdTIwMThcdTIwMTlcdTIwMUNcdTIwMURcdTIwMjJcdTIwMTNcdTIwMTRcdTAyRENcdTIxMjJcdTAxNjFcdTIwM0FcdTAxNTNcdUZGRkRcdTAxN0VcdTAxNzhcdTAwQTBcdTAwQTFcdTAwQTJcdTAwQTNcdTAwQTRcdTAwQTVcdTAwQTZcdTAwQTdcdTAwQThcdTAwQTlcdTAwQUFcdTAwQUJcdTAwQUNcdTAwQURcdTAwQUVcdTAwQUZcdTAwQjBcdTAwQjFcdTAwQjJcdTAwQjNcdTAwQjRcdTAwQjVcdTAwQjZcdTAwQjdcdTAwQjhcdTAwQjlcdTAwQkFcdTAwQkJcdTAwQkNcdTAwQkRcdTAwQkVcdTAwQkZcdTAwQzBcdTAwQzFcdTAwQzJcdTAwQzNcdTAwQzRcdTAwQzVcdTAwQzZcdTAwQzdcdTAwQzhcdTAwQzlcdTAwQ0FcdTAwQ0JcdTAwQ0NcdTAwQ0RcdTAwQ0VcdTAwQ0ZcdTAwRDBcdTAwRDFcdTAwRDJcdTAwRDNcdTAwRDRcdTAwRDVcdTAwRDZcdTAwRDdcdTAwRDhcdTAwRDlcdTAwREFcdTAwREJcdTAwRENcdTAwRERcdTAwREVcdTAwREZcdTAwRTBcdTAwRTFcdTAwRTJcdTAwRTNcdTAwRTRcdTAwRTVcdTAwRTZcdTAwRTdcdTAwRThcdTAwRTlcdTAwRUFcdTAwRUJcdTAwRUNcdTAwRURcdTAwRUVcdTAwRUZcdTAwRjBcdTAwRjFcdTAwRjJcdTAwRjNcdTAwRjRcdTAwRjVcdTAwRjZcdTAwRjdcdTAwRjhcdTAwRjlcdTAwRkFcdTAwRkJcdTAwRkNcdTAwRkRcdTAwRkVcdTAwRkZcIlxuICB9LFxuICBcIndpbjEyNTJcIjogXCJ3aW5kb3dzMTI1MlwiLFxuICBcImNwMTI1MlwiOiBcIndpbmRvd3MxMjUyXCIsXG4gIFwid2luZG93czEyNTNcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MjBBQ1x1RkZGRFx1MjAxQVx1MDE5Mlx1MjAxRVx1MjAyNlx1MjAyMFx1MjAyMVx1RkZGRFx1MjAzMFx1RkZGRFx1MjAzOVx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1MjAxOFx1MjAxOVx1MjAxQ1x1MjAxRFx1MjAyMlx1MjAxM1x1MjAxNFx1RkZGRFx1MjEyMlx1RkZGRFx1MjAzQVx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1MDBBMFx1MDM4NVx1MDM4Nlx1MDBBM1x1MDBBNFx1MDBBNVx1MDBBNlx1MDBBN1x1MDBBOFx1MDBBOVx1RkZGRFx1MDBBQlx1MDBBQ1x1MDBBRFx1MDBBRVx1MjAxNVx1MDBCMFx1MDBCMVx1MDBCMlx1MDBCM1x1MDM4NFx1MDBCNVx1MDBCNlx1MDBCN1x1MDM4OFx1MDM4OVx1MDM4QVx1MDBCQlx1MDM4Q1x1MDBCRFx1MDM4RVx1MDM4Rlx1MDM5MFx1MDM5MVx1MDM5Mlx1MDM5M1x1MDM5NFx1MDM5NVx1MDM5Nlx1MDM5N1x1MDM5OFx1MDM5OVx1MDM5QVx1MDM5Qlx1MDM5Q1x1MDM5RFx1MDM5RVx1MDM5Rlx1MDNBMFx1MDNBMVx1RkZGRFx1MDNBM1x1MDNBNFx1MDNBNVx1MDNBNlx1MDNBN1x1MDNBOFx1MDNBOVx1MDNBQVx1MDNBQlx1MDNBQ1x1MDNBRFx1MDNBRVx1MDNBRlx1MDNCMFx1MDNCMVx1MDNCMlx1MDNCM1x1MDNCNFx1MDNCNVx1MDNCNlx1MDNCN1x1MDNCOFx1MDNCOVx1MDNCQVx1MDNCQlx1MDNCQ1x1MDNCRFx1MDNCRVx1MDNCRlx1MDNDMFx1MDNDMVx1MDNDMlx1MDNDM1x1MDNDNFx1MDNDNVx1MDNDNlx1MDNDN1x1MDNDOFx1MDNDOVx1MDNDQVx1MDNDQlx1MDNDQ1x1MDNDRFx1MDNDRVx1RkZGRFwiXG4gIH0sXG4gIFwid2luMTI1M1wiOiBcIndpbmRvd3MxMjUzXCIsXG4gIFwiY3AxMjUzXCI6IFwid2luZG93czEyNTNcIixcbiAgXCJ3aW5kb3dzMTI1NFwiOiB7XG4gICAgXCJ0eXBlXCI6IFwiX3NiY3NcIixcbiAgICBcImNoYXJzXCI6IFwiXHUyMEFDXHVGRkZEXHUyMDFBXHUwMTkyXHUyMDFFXHUyMDI2XHUyMDIwXHUyMDIxXHUwMkM2XHUyMDMwXHUwMTYwXHUyMDM5XHUwMTUyXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHUyMDE4XHUyMDE5XHUyMDFDXHUyMDFEXHUyMDIyXHUyMDEzXHUyMDE0XHUwMkRDXHUyMTIyXHUwMTYxXHUyMDNBXHUwMTUzXHVGRkZEXHVGRkZEXHUwMTc4XHUwMEEwXHUwMEExXHUwMEEyXHUwMEEzXHUwMEE0XHUwMEE1XHUwMEE2XHUwMEE3XHUwMEE4XHUwMEE5XHUwMEFBXHUwMEFCXHUwMEFDXHUwMEFEXHUwMEFFXHUwMEFGXHUwMEIwXHUwMEIxXHUwMEIyXHUwMEIzXHUwMEI0XHUwMEI1XHUwMEI2XHUwMEI3XHUwMEI4XHUwMEI5XHUwMEJBXHUwMEJCXHUwMEJDXHUwMEJEXHUwMEJFXHUwMEJGXHUwMEMwXHUwMEMxXHUwMEMyXHUwMEMzXHUwMEM0XHUwMEM1XHUwMEM2XHUwMEM3XHUwMEM4XHUwMEM5XHUwMENBXHUwMENCXHUwMENDXHUwMENEXHUwMENFXHUwMENGXHUwMTFFXHUwMEQxXHUwMEQyXHUwMEQzXHUwMEQ0XHUwMEQ1XHUwMEQ2XHUwMEQ3XHUwMEQ4XHUwMEQ5XHUwMERBXHUwMERCXHUwMERDXHUwMTMwXHUwMTVFXHUwMERGXHUwMEUwXHUwMEUxXHUwMEUyXHUwMEUzXHUwMEU0XHUwMEU1XHUwMEU2XHUwMEU3XHUwMEU4XHUwMEU5XHUwMEVBXHUwMEVCXHUwMEVDXHUwMEVEXHUwMEVFXHUwMEVGXHUwMTFGXHUwMEYxXHUwMEYyXHUwMEYzXHUwMEY0XHUwMEY1XHUwMEY2XHUwMEY3XHUwMEY4XHUwMEY5XHUwMEZBXHUwMEZCXHUwMEZDXHUwMTMxXHUwMTVGXHUwMEZGXCJcbiAgfSxcbiAgXCJ3aW4xMjU0XCI6IFwid2luZG93czEyNTRcIixcbiAgXCJjcDEyNTRcIjogXCJ3aW5kb3dzMTI1NFwiLFxuICBcIndpbmRvd3MxMjU1XCI6IHtcbiAgICBcInR5cGVcIjogXCJfc2Jjc1wiLFxuICAgIFwiY2hhcnNcIjogXCJcdTIwQUNcdUZGRkRcdTIwMUFcdTAxOTJcdTIwMUVcdTIwMjZcdTIwMjBcdTIwMjFcdTAyQzZcdTIwMzBcdUZGRkRcdTIwMzlcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdTIwMThcdTIwMTlcdTIwMUNcdTIwMURcdTIwMjJcdTIwMTNcdTIwMTRcdTAyRENcdTIxMjJcdUZGRkRcdTIwM0FcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdTAwQTBcdTAwQTFcdTAwQTJcdTAwQTNcdTIwQUFcdTAwQTVcdTAwQTZcdTAwQTdcdTAwQThcdTAwQTlcdTAwRDdcdTAwQUJcdTAwQUNcdTAwQURcdTAwQUVcdTAwQUZcdTAwQjBcdTAwQjFcdTAwQjJcdTAwQjNcdTAwQjRcdTAwQjVcdTAwQjZcdTAwQjdcdTAwQjhcdTAwQjlcdTAwRjdcdTAwQkJcdTAwQkNcdTAwQkRcdTAwQkVcdTAwQkZcdTA1QjBcdTA1QjFcdTA1QjJcdTA1QjNcdTA1QjRcdTA1QjVcdTA1QjZcdTA1QjdcdTA1QjhcdTA1QjlcdTA1QkFcdTA1QkJcdTA1QkNcdTA1QkRcdTA1QkVcdTA1QkZcdTA1QzBcdTA1QzFcdTA1QzJcdTA1QzNcdTA1RjBcdTA1RjFcdTA1RjJcdTA1RjNcdTA1RjRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdTA1RDBcdTA1RDFcdTA1RDJcdTA1RDNcdTA1RDRcdTA1RDVcdTA1RDZcdTA1RDdcdTA1RDhcdTA1RDlcdTA1REFcdTA1REJcdTA1RENcdTA1RERcdTA1REVcdTA1REZcdTA1RTBcdTA1RTFcdTA1RTJcdTA1RTNcdTA1RTRcdTA1RTVcdTA1RTZcdTA1RTdcdTA1RThcdTA1RTlcdTA1RUFcdUZGRkRcdUZGRkRcdTIwMEVcdTIwMEZcdUZGRkRcIlxuICB9LFxuICBcIndpbjEyNTVcIjogXCJ3aW5kb3dzMTI1NVwiLFxuICBcImNwMTI1NVwiOiBcIndpbmRvd3MxMjU1XCIsXG4gIFwid2luZG93czEyNTZcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MjBBQ1x1MDY3RVx1MjAxQVx1MDE5Mlx1MjAxRVx1MjAyNlx1MjAyMFx1MjAyMVx1MDJDNlx1MjAzMFx1MDY3OVx1MjAzOVx1MDE1Mlx1MDY4Nlx1MDY5OFx1MDY4OFx1MDZBRlx1MjAxOFx1MjAxOVx1MjAxQ1x1MjAxRFx1MjAyMlx1MjAxM1x1MjAxNFx1MDZBOVx1MjEyMlx1MDY5MVx1MjAzQVx1MDE1M1x1MjAwQ1x1MjAwRFx1MDZCQVx1MDBBMFx1MDYwQ1x1MDBBMlx1MDBBM1x1MDBBNFx1MDBBNVx1MDBBNlx1MDBBN1x1MDBBOFx1MDBBOVx1MDZCRVx1MDBBQlx1MDBBQ1x1MDBBRFx1MDBBRVx1MDBBRlx1MDBCMFx1MDBCMVx1MDBCMlx1MDBCM1x1MDBCNFx1MDBCNVx1MDBCNlx1MDBCN1x1MDBCOFx1MDBCOVx1MDYxQlx1MDBCQlx1MDBCQ1x1MDBCRFx1MDBCRVx1MDYxRlx1MDZDMVx1MDYyMVx1MDYyMlx1MDYyM1x1MDYyNFx1MDYyNVx1MDYyNlx1MDYyN1x1MDYyOFx1MDYyOVx1MDYyQVx1MDYyQlx1MDYyQ1x1MDYyRFx1MDYyRVx1MDYyRlx1MDYzMFx1MDYzMVx1MDYzMlx1MDYzM1x1MDYzNFx1MDYzNVx1MDYzNlx1MDBEN1x1MDYzN1x1MDYzOFx1MDYzOVx1MDYzQVx1MDY0MFx1MDY0MVx1MDY0Mlx1MDY0M1x1MDBFMFx1MDY0NFx1MDBFMlx1MDY0NVx1MDY0Nlx1MDY0N1x1MDY0OFx1MDBFN1x1MDBFOFx1MDBFOVx1MDBFQVx1MDBFQlx1MDY0OVx1MDY0QVx1MDBFRVx1MDBFRlx1MDY0Qlx1MDY0Q1x1MDY0RFx1MDY0RVx1MDBGNFx1MDY0Rlx1MDY1MFx1MDBGN1x1MDY1MVx1MDBGOVx1MDY1Mlx1MDBGQlx1MDBGQ1x1MjAwRVx1MjAwRlx1MDZEMlwiXG4gIH0sXG4gIFwid2luMTI1NlwiOiBcIndpbmRvd3MxMjU2XCIsXG4gIFwiY3AxMjU2XCI6IFwid2luZG93czEyNTZcIixcbiAgXCJ3aW5kb3dzMTI1N1wiOiB7XG4gICAgXCJ0eXBlXCI6IFwiX3NiY3NcIixcbiAgICBcImNoYXJzXCI6IFwiXHUyMEFDXHVGRkZEXHUyMDFBXHVGRkZEXHUyMDFFXHUyMDI2XHUyMDIwXHUyMDIxXHVGRkZEXHUyMDMwXHVGRkZEXHUyMDM5XHVGRkZEXHUwMEE4XHUwMkM3XHUwMEI4XHVGRkZEXHUyMDE4XHUyMDE5XHUyMDFDXHUyMDFEXHUyMDIyXHUyMDEzXHUyMDE0XHVGRkZEXHUyMTIyXHVGRkZEXHUyMDNBXHVGRkZEXHUwMEFGXHUwMkRCXHVGRkZEXHUwMEEwXHVGRkZEXHUwMEEyXHUwMEEzXHUwMEE0XHVGRkZEXHUwMEE2XHUwMEE3XHUwMEQ4XHUwMEE5XHUwMTU2XHUwMEFCXHUwMEFDXHUwMEFEXHUwMEFFXHUwMEM2XHUwMEIwXHUwMEIxXHUwMEIyXHUwMEIzXHUwMEI0XHUwMEI1XHUwMEI2XHUwMEI3XHUwMEY4XHUwMEI5XHUwMTU3XHUwMEJCXHUwMEJDXHUwMEJEXHUwMEJFXHUwMEU2XHUwMTA0XHUwMTJFXHUwMTAwXHUwMTA2XHUwMEM0XHUwMEM1XHUwMTE4XHUwMTEyXHUwMTBDXHUwMEM5XHUwMTc5XHUwMTE2XHUwMTIyXHUwMTM2XHUwMTJBXHUwMTNCXHUwMTYwXHUwMTQzXHUwMTQ1XHUwMEQzXHUwMTRDXHUwMEQ1XHUwMEQ2XHUwMEQ3XHUwMTcyXHUwMTQxXHUwMTVBXHUwMTZBXHUwMERDXHUwMTdCXHUwMTdEXHUwMERGXHUwMTA1XHUwMTJGXHUwMTAxXHUwMTA3XHUwMEU0XHUwMEU1XHUwMTE5XHUwMTEzXHUwMTBEXHUwMEU5XHUwMTdBXHUwMTE3XHUwMTIzXHUwMTM3XHUwMTJCXHUwMTNDXHUwMTYxXHUwMTQ0XHUwMTQ2XHUwMEYzXHUwMTREXHUwMEY1XHUwMEY2XHUwMEY3XHUwMTczXHUwMTQyXHUwMTVCXHUwMTZCXHUwMEZDXHUwMTdDXHUwMTdFXHUwMkQ5XCJcbiAgfSxcbiAgXCJ3aW4xMjU3XCI6IFwid2luZG93czEyNTdcIixcbiAgXCJjcDEyNTdcIjogXCJ3aW5kb3dzMTI1N1wiLFxuICBcIndpbmRvd3MxMjU4XCI6IHtcbiAgICBcInR5cGVcIjogXCJfc2Jjc1wiLFxuICAgIFwiY2hhcnNcIjogXCJcdTIwQUNcdUZGRkRcdTIwMUFcdTAxOTJcdTIwMUVcdTIwMjZcdTIwMjBcdTIwMjFcdTAyQzZcdTIwMzBcdUZGRkRcdTIwMzlcdTAxNTJcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdTIwMThcdTIwMTlcdTIwMUNcdTIwMURcdTIwMjJcdTIwMTNcdTIwMTRcdTAyRENcdTIxMjJcdUZGRkRcdTIwM0FcdTAxNTNcdUZGRkRcdUZGRkRcdTAxNzhcdTAwQTBcdTAwQTFcdTAwQTJcdTAwQTNcdTAwQTRcdTAwQTVcdTAwQTZcdTAwQTdcdTAwQThcdTAwQTlcdTAwQUFcdTAwQUJcdTAwQUNcdTAwQURcdTAwQUVcdTAwQUZcdTAwQjBcdTAwQjFcdTAwQjJcdTAwQjNcdTAwQjRcdTAwQjVcdTAwQjZcdTAwQjdcdTAwQjhcdTAwQjlcdTAwQkFcdTAwQkJcdTAwQkNcdTAwQkRcdTAwQkVcdTAwQkZcdTAwQzBcdTAwQzFcdTAwQzJcdTAxMDJcdTAwQzRcdTAwQzVcdTAwQzZcdTAwQzdcdTAwQzhcdTAwQzlcdTAwQ0FcdTAwQ0JcdTAzMDBcdTAwQ0RcdTAwQ0VcdTAwQ0ZcdTAxMTBcdTAwRDFcdTAzMDlcdTAwRDNcdTAwRDRcdTAxQTBcdTAwRDZcdTAwRDdcdTAwRDhcdTAwRDlcdTAwREFcdTAwREJcdTAwRENcdTAxQUZcdTAzMDNcdTAwREZcdTAwRTBcdTAwRTFcdTAwRTJcdTAxMDNcdTAwRTRcdTAwRTVcdTAwRTZcdTAwRTdcdTAwRThcdTAwRTlcdTAwRUFcdTAwRUJcdTAzMDFcdTAwRURcdTAwRUVcdTAwRUZcdTAxMTFcdTAwRjFcdTAzMjNcdTAwRjNcdTAwRjRcdTAxQTFcdTAwRjZcdTAwRjdcdTAwRjhcdTAwRjlcdTAwRkFcdTAwRkJcdTAwRkNcdTAxQjBcdTIwQUJcdTAwRkZcIlxuICB9LFxuICBcIndpbjEyNThcIjogXCJ3aW5kb3dzMTI1OFwiLFxuICBcImNwMTI1OFwiOiBcIndpbmRvd3MxMjU4XCIsXG4gIFwiaXNvODg1OTFcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDA4MFx1MDA4MVx1MDA4Mlx1MDA4M1x1MDA4NFx1MDA4NVx1MDA4Nlx1MDA4N1x1MDA4OFx1MDA4OVx1MDA4QVx1MDA4Qlx1MDA4Q1x1MDA4RFx1MDA4RVx1MDA4Rlx1MDA5MFx1MDA5MVx1MDA5Mlx1MDA5M1x1MDA5NFx1MDA5NVx1MDA5Nlx1MDA5N1x1MDA5OFx1MDA5OVx1MDA5QVx1MDA5Qlx1MDA5Q1x1MDA5RFx1MDA5RVx1MDA5Rlx1MDBBMFx1MDBBMVx1MDBBMlx1MDBBM1x1MDBBNFx1MDBBNVx1MDBBNlx1MDBBN1x1MDBBOFx1MDBBOVx1MDBBQVx1MDBBQlx1MDBBQ1x1MDBBRFx1MDBBRVx1MDBBRlx1MDBCMFx1MDBCMVx1MDBCMlx1MDBCM1x1MDBCNFx1MDBCNVx1MDBCNlx1MDBCN1x1MDBCOFx1MDBCOVx1MDBCQVx1MDBCQlx1MDBCQ1x1MDBCRFx1MDBCRVx1MDBCRlx1MDBDMFx1MDBDMVx1MDBDMlx1MDBDM1x1MDBDNFx1MDBDNVx1MDBDNlx1MDBDN1x1MDBDOFx1MDBDOVx1MDBDQVx1MDBDQlx1MDBDQ1x1MDBDRFx1MDBDRVx1MDBDRlx1MDBEMFx1MDBEMVx1MDBEMlx1MDBEM1x1MDBENFx1MDBENVx1MDBENlx1MDBEN1x1MDBEOFx1MDBEOVx1MDBEQVx1MDBEQlx1MDBEQ1x1MDBERFx1MDBERVx1MDBERlx1MDBFMFx1MDBFMVx1MDBFMlx1MDBFM1x1MDBFNFx1MDBFNVx1MDBFNlx1MDBFN1x1MDBFOFx1MDBFOVx1MDBFQVx1MDBFQlx1MDBFQ1x1MDBFRFx1MDBFRVx1MDBFRlx1MDBGMFx1MDBGMVx1MDBGMlx1MDBGM1x1MDBGNFx1MDBGNVx1MDBGNlx1MDBGN1x1MDBGOFx1MDBGOVx1MDBGQVx1MDBGQlx1MDBGQ1x1MDBGRFx1MDBGRVx1MDBGRlwiXG4gIH0sXG4gIFwiY3AyODU5MVwiOiBcImlzbzg4NTkxXCIsXG4gIFwiaXNvODg1OTJcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDA4MFx1MDA4MVx1MDA4Mlx1MDA4M1x1MDA4NFx1MDA4NVx1MDA4Nlx1MDA4N1x1MDA4OFx1MDA4OVx1MDA4QVx1MDA4Qlx1MDA4Q1x1MDA4RFx1MDA4RVx1MDA4Rlx1MDA5MFx1MDA5MVx1MDA5Mlx1MDA5M1x1MDA5NFx1MDA5NVx1MDA5Nlx1MDA5N1x1MDA5OFx1MDA5OVx1MDA5QVx1MDA5Qlx1MDA5Q1x1MDA5RFx1MDA5RVx1MDA5Rlx1MDBBMFx1MDEwNFx1MDJEOFx1MDE0MVx1MDBBNFx1MDEzRFx1MDE1QVx1MDBBN1x1MDBBOFx1MDE2MFx1MDE1RVx1MDE2NFx1MDE3OVx1MDBBRFx1MDE3RFx1MDE3Qlx1MDBCMFx1MDEwNVx1MDJEQlx1MDE0Mlx1MDBCNFx1MDEzRVx1MDE1Qlx1MDJDN1x1MDBCOFx1MDE2MVx1MDE1Rlx1MDE2NVx1MDE3QVx1MDJERFx1MDE3RVx1MDE3Q1x1MDE1NFx1MDBDMVx1MDBDMlx1MDEwMlx1MDBDNFx1MDEzOVx1MDEwNlx1MDBDN1x1MDEwQ1x1MDBDOVx1MDExOFx1MDBDQlx1MDExQVx1MDBDRFx1MDBDRVx1MDEwRVx1MDExMFx1MDE0M1x1MDE0N1x1MDBEM1x1MDBENFx1MDE1MFx1MDBENlx1MDBEN1x1MDE1OFx1MDE2RVx1MDBEQVx1MDE3MFx1MDBEQ1x1MDBERFx1MDE2Mlx1MDBERlx1MDE1NVx1MDBFMVx1MDBFMlx1MDEwM1x1MDBFNFx1MDEzQVx1MDEwN1x1MDBFN1x1MDEwRFx1MDBFOVx1MDExOVx1MDBFQlx1MDExQlx1MDBFRFx1MDBFRVx1MDEwRlx1MDExMVx1MDE0NFx1MDE0OFx1MDBGM1x1MDBGNFx1MDE1MVx1MDBGNlx1MDBGN1x1MDE1OVx1MDE2Rlx1MDBGQVx1MDE3MVx1MDBGQ1x1MDBGRFx1MDE2M1x1MDJEOVwiXG4gIH0sXG4gIFwiY3AyODU5MlwiOiBcImlzbzg4NTkyXCIsXG4gIFwiaXNvODg1OTNcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDA4MFx1MDA4MVx1MDA4Mlx1MDA4M1x1MDA4NFx1MDA4NVx1MDA4Nlx1MDA4N1x1MDA4OFx1MDA4OVx1MDA4QVx1MDA4Qlx1MDA4Q1x1MDA4RFx1MDA4RVx1MDA4Rlx1MDA5MFx1MDA5MVx1MDA5Mlx1MDA5M1x1MDA5NFx1MDA5NVx1MDA5Nlx1MDA5N1x1MDA5OFx1MDA5OVx1MDA5QVx1MDA5Qlx1MDA5Q1x1MDA5RFx1MDA5RVx1MDA5Rlx1MDBBMFx1MDEyNlx1MDJEOFx1MDBBM1x1MDBBNFx1RkZGRFx1MDEyNFx1MDBBN1x1MDBBOFx1MDEzMFx1MDE1RVx1MDExRVx1MDEzNFx1MDBBRFx1RkZGRFx1MDE3Qlx1MDBCMFx1MDEyN1x1MDBCMlx1MDBCM1x1MDBCNFx1MDBCNVx1MDEyNVx1MDBCN1x1MDBCOFx1MDEzMVx1MDE1Rlx1MDExRlx1MDEzNVx1MDBCRFx1RkZGRFx1MDE3Q1x1MDBDMFx1MDBDMVx1MDBDMlx1RkZGRFx1MDBDNFx1MDEwQVx1MDEwOFx1MDBDN1x1MDBDOFx1MDBDOVx1MDBDQVx1MDBDQlx1MDBDQ1x1MDBDRFx1MDBDRVx1MDBDRlx1RkZGRFx1MDBEMVx1MDBEMlx1MDBEM1x1MDBENFx1MDEyMFx1MDBENlx1MDBEN1x1MDExQ1x1MDBEOVx1MDBEQVx1MDBEQlx1MDBEQ1x1MDE2Q1x1MDE1Q1x1MDBERlx1MDBFMFx1MDBFMVx1MDBFMlx1RkZGRFx1MDBFNFx1MDEwQlx1MDEwOVx1MDBFN1x1MDBFOFx1MDBFOVx1MDBFQVx1MDBFQlx1MDBFQ1x1MDBFRFx1MDBFRVx1MDBFRlx1RkZGRFx1MDBGMVx1MDBGMlx1MDBGM1x1MDBGNFx1MDEyMVx1MDBGNlx1MDBGN1x1MDExRFx1MDBGOVx1MDBGQVx1MDBGQlx1MDBGQ1x1MDE2RFx1MDE1RFx1MDJEOVwiXG4gIH0sXG4gIFwiY3AyODU5M1wiOiBcImlzbzg4NTkzXCIsXG4gIFwiaXNvODg1OTRcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDA4MFx1MDA4MVx1MDA4Mlx1MDA4M1x1MDA4NFx1MDA4NVx1MDA4Nlx1MDA4N1x1MDA4OFx1MDA4OVx1MDA4QVx1MDA4Qlx1MDA4Q1x1MDA4RFx1MDA4RVx1MDA4Rlx1MDA5MFx1MDA5MVx1MDA5Mlx1MDA5M1x1MDA5NFx1MDA5NVx1MDA5Nlx1MDA5N1x1MDA5OFx1MDA5OVx1MDA5QVx1MDA5Qlx1MDA5Q1x1MDA5RFx1MDA5RVx1MDA5Rlx1MDBBMFx1MDEwNFx1MDEzOFx1MDE1Nlx1MDBBNFx1MDEyOFx1MDEzQlx1MDBBN1x1MDBBOFx1MDE2MFx1MDExMlx1MDEyMlx1MDE2Nlx1MDBBRFx1MDE3RFx1MDBBRlx1MDBCMFx1MDEwNVx1MDJEQlx1MDE1N1x1MDBCNFx1MDEyOVx1MDEzQ1x1MDJDN1x1MDBCOFx1MDE2MVx1MDExM1x1MDEyM1x1MDE2N1x1MDE0QVx1MDE3RVx1MDE0Qlx1MDEwMFx1MDBDMVx1MDBDMlx1MDBDM1x1MDBDNFx1MDBDNVx1MDBDNlx1MDEyRVx1MDEwQ1x1MDBDOVx1MDExOFx1MDBDQlx1MDExNlx1MDBDRFx1MDBDRVx1MDEyQVx1MDExMFx1MDE0NVx1MDE0Q1x1MDEzNlx1MDBENFx1MDBENVx1MDBENlx1MDBEN1x1MDBEOFx1MDE3Mlx1MDBEQVx1MDBEQlx1MDBEQ1x1MDE2OFx1MDE2QVx1MDBERlx1MDEwMVx1MDBFMVx1MDBFMlx1MDBFM1x1MDBFNFx1MDBFNVx1MDBFNlx1MDEyRlx1MDEwRFx1MDBFOVx1MDExOVx1MDBFQlx1MDExN1x1MDBFRFx1MDBFRVx1MDEyQlx1MDExMVx1MDE0Nlx1MDE0RFx1MDEzN1x1MDBGNFx1MDBGNVx1MDBGNlx1MDBGN1x1MDBGOFx1MDE3M1x1MDBGQVx1MDBGQlx1MDBGQ1x1MDE2OVx1MDE2Qlx1MDJEOVwiXG4gIH0sXG4gIFwiY3AyODU5NFwiOiBcImlzbzg4NTk0XCIsXG4gIFwiaXNvODg1OTVcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDA4MFx1MDA4MVx1MDA4Mlx1MDA4M1x1MDA4NFx1MDA4NVx1MDA4Nlx1MDA4N1x1MDA4OFx1MDA4OVx1MDA4QVx1MDA4Qlx1MDA4Q1x1MDA4RFx1MDA4RVx1MDA4Rlx1MDA5MFx1MDA5MVx1MDA5Mlx1MDA5M1x1MDA5NFx1MDA5NVx1MDA5Nlx1MDA5N1x1MDA5OFx1MDA5OVx1MDA5QVx1MDA5Qlx1MDA5Q1x1MDA5RFx1MDA5RVx1MDA5Rlx1MDBBMFx1MDQwMVx1MDQwMlx1MDQwM1x1MDQwNFx1MDQwNVx1MDQwNlx1MDQwN1x1MDQwOFx1MDQwOVx1MDQwQVx1MDQwQlx1MDQwQ1x1MDBBRFx1MDQwRVx1MDQwRlx1MDQxMFx1MDQxMVx1MDQxMlx1MDQxM1x1MDQxNFx1MDQxNVx1MDQxNlx1MDQxN1x1MDQxOFx1MDQxOVx1MDQxQVx1MDQxQlx1MDQxQ1x1MDQxRFx1MDQxRVx1MDQxRlx1MDQyMFx1MDQyMVx1MDQyMlx1MDQyM1x1MDQyNFx1MDQyNVx1MDQyNlx1MDQyN1x1MDQyOFx1MDQyOVx1MDQyQVx1MDQyQlx1MDQyQ1x1MDQyRFx1MDQyRVx1MDQyRlx1MDQzMFx1MDQzMVx1MDQzMlx1MDQzM1x1MDQzNFx1MDQzNVx1MDQzNlx1MDQzN1x1MDQzOFx1MDQzOVx1MDQzQVx1MDQzQlx1MDQzQ1x1MDQzRFx1MDQzRVx1MDQzRlx1MDQ0MFx1MDQ0MVx1MDQ0Mlx1MDQ0M1x1MDQ0NFx1MDQ0NVx1MDQ0Nlx1MDQ0N1x1MDQ0OFx1MDQ0OVx1MDQ0QVx1MDQ0Qlx1MDQ0Q1x1MDQ0RFx1MDQ0RVx1MDQ0Rlx1MjExNlx1MDQ1MVx1MDQ1Mlx1MDQ1M1x1MDQ1NFx1MDQ1NVx1MDQ1Nlx1MDQ1N1x1MDQ1OFx1MDQ1OVx1MDQ1QVx1MDQ1Qlx1MDQ1Q1x1MDBBN1x1MDQ1RVx1MDQ1RlwiXG4gIH0sXG4gIFwiY3AyODU5NVwiOiBcImlzbzg4NTk1XCIsXG4gIFwiaXNvODg1OTZcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDA4MFx1MDA4MVx1MDA4Mlx1MDA4M1x1MDA4NFx1MDA4NVx1MDA4Nlx1MDA4N1x1MDA4OFx1MDA4OVx1MDA4QVx1MDA4Qlx1MDA4Q1x1MDA4RFx1MDA4RVx1MDA4Rlx1MDA5MFx1MDA5MVx1MDA5Mlx1MDA5M1x1MDA5NFx1MDA5NVx1MDA5Nlx1MDA5N1x1MDA5OFx1MDA5OVx1MDA5QVx1MDA5Qlx1MDA5Q1x1MDA5RFx1MDA5RVx1MDA5Rlx1MDBBMFx1RkZGRFx1RkZGRFx1RkZGRFx1MDBBNFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1MDYwQ1x1MDBBRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1MDYxQlx1RkZGRFx1RkZGRFx1RkZGRFx1MDYxRlx1RkZGRFx1MDYyMVx1MDYyMlx1MDYyM1x1MDYyNFx1MDYyNVx1MDYyNlx1MDYyN1x1MDYyOFx1MDYyOVx1MDYyQVx1MDYyQlx1MDYyQ1x1MDYyRFx1MDYyRVx1MDYyRlx1MDYzMFx1MDYzMVx1MDYzMlx1MDYzM1x1MDYzNFx1MDYzNVx1MDYzNlx1MDYzN1x1MDYzOFx1MDYzOVx1MDYzQVx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1MDY0MFx1MDY0MVx1MDY0Mlx1MDY0M1x1MDY0NFx1MDY0NVx1MDY0Nlx1MDY0N1x1MDY0OFx1MDY0OVx1MDY0QVx1MDY0Qlx1MDY0Q1x1MDY0RFx1MDY0RVx1MDY0Rlx1MDY1MFx1MDY1MVx1MDY1Mlx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFwiXG4gIH0sXG4gIFwiY3AyODU5NlwiOiBcImlzbzg4NTk2XCIsXG4gIFwiaXNvODg1OTdcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDA4MFx1MDA4MVx1MDA4Mlx1MDA4M1x1MDA4NFx1MDA4NVx1MDA4Nlx1MDA4N1x1MDA4OFx1MDA4OVx1MDA4QVx1MDA4Qlx1MDA4Q1x1MDA4RFx1MDA4RVx1MDA4Rlx1MDA5MFx1MDA5MVx1MDA5Mlx1MDA5M1x1MDA5NFx1MDA5NVx1MDA5Nlx1MDA5N1x1MDA5OFx1MDA5OVx1MDA5QVx1MDA5Qlx1MDA5Q1x1MDA5RFx1MDA5RVx1MDA5Rlx1MDBBMFx1MjAxOFx1MjAxOVx1MDBBM1x1MjBBQ1x1MjBBRlx1MDBBNlx1MDBBN1x1MDBBOFx1MDBBOVx1MDM3QVx1MDBBQlx1MDBBQ1x1MDBBRFx1RkZGRFx1MjAxNVx1MDBCMFx1MDBCMVx1MDBCMlx1MDBCM1x1MDM4NFx1MDM4NVx1MDM4Nlx1MDBCN1x1MDM4OFx1MDM4OVx1MDM4QVx1MDBCQlx1MDM4Q1x1MDBCRFx1MDM4RVx1MDM4Rlx1MDM5MFx1MDM5MVx1MDM5Mlx1MDM5M1x1MDM5NFx1MDM5NVx1MDM5Nlx1MDM5N1x1MDM5OFx1MDM5OVx1MDM5QVx1MDM5Qlx1MDM5Q1x1MDM5RFx1MDM5RVx1MDM5Rlx1MDNBMFx1MDNBMVx1RkZGRFx1MDNBM1x1MDNBNFx1MDNBNVx1MDNBNlx1MDNBN1x1MDNBOFx1MDNBOVx1MDNBQVx1MDNBQlx1MDNBQ1x1MDNBRFx1MDNBRVx1MDNBRlx1MDNCMFx1MDNCMVx1MDNCMlx1MDNCM1x1MDNCNFx1MDNCNVx1MDNCNlx1MDNCN1x1MDNCOFx1MDNCOVx1MDNCQVx1MDNCQlx1MDNCQ1x1MDNCRFx1MDNCRVx1MDNCRlx1MDNDMFx1MDNDMVx1MDNDMlx1MDNDM1x1MDNDNFx1MDNDNVx1MDNDNlx1MDNDN1x1MDNDOFx1MDNDOVx1MDNDQVx1MDNDQlx1MDNDQ1x1MDNDRFx1MDNDRVx1RkZGRFwiXG4gIH0sXG4gIFwiY3AyODU5N1wiOiBcImlzbzg4NTk3XCIsXG4gIFwiaXNvODg1OThcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDA4MFx1MDA4MVx1MDA4Mlx1MDA4M1x1MDA4NFx1MDA4NVx1MDA4Nlx1MDA4N1x1MDA4OFx1MDA4OVx1MDA4QVx1MDA4Qlx1MDA4Q1x1MDA4RFx1MDA4RVx1MDA4Rlx1MDA5MFx1MDA5MVx1MDA5Mlx1MDA5M1x1MDA5NFx1MDA5NVx1MDA5Nlx1MDA5N1x1MDA5OFx1MDA5OVx1MDA5QVx1MDA5Qlx1MDA5Q1x1MDA5RFx1MDA5RVx1MDA5Rlx1MDBBMFx1RkZGRFx1MDBBMlx1MDBBM1x1MDBBNFx1MDBBNVx1MDBBNlx1MDBBN1x1MDBBOFx1MDBBOVx1MDBEN1x1MDBBQlx1MDBBQ1x1MDBBRFx1MDBBRVx1MDBBRlx1MDBCMFx1MDBCMVx1MDBCMlx1MDBCM1x1MDBCNFx1MDBCNVx1MDBCNlx1MDBCN1x1MDBCOFx1MDBCOVx1MDBGN1x1MDBCQlx1MDBCQ1x1MDBCRFx1MDBCRVx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1MjAxN1x1MDVEMFx1MDVEMVx1MDVEMlx1MDVEM1x1MDVENFx1MDVENVx1MDVENlx1MDVEN1x1MDVEOFx1MDVEOVx1MDVEQVx1MDVEQlx1MDVEQ1x1MDVERFx1MDVERVx1MDVERlx1MDVFMFx1MDVFMVx1MDVFMlx1MDVFM1x1MDVFNFx1MDVFNVx1MDVFNlx1MDVFN1x1MDVFOFx1MDVFOVx1MDVFQVx1RkZGRFx1RkZGRFx1MjAwRVx1MjAwRlx1RkZGRFwiXG4gIH0sXG4gIFwiY3AyODU5OFwiOiBcImlzbzg4NTk4XCIsXG4gIFwiaXNvODg1OTlcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDA4MFx1MDA4MVx1MDA4Mlx1MDA4M1x1MDA4NFx1MDA4NVx1MDA4Nlx1MDA4N1x1MDA4OFx1MDA4OVx1MDA4QVx1MDA4Qlx1MDA4Q1x1MDA4RFx1MDA4RVx1MDA4Rlx1MDA5MFx1MDA5MVx1MDA5Mlx1MDA5M1x1MDA5NFx1MDA5NVx1MDA5Nlx1MDA5N1x1MDA5OFx1MDA5OVx1MDA5QVx1MDA5Qlx1MDA5Q1x1MDA5RFx1MDA5RVx1MDA5Rlx1MDBBMFx1MDBBMVx1MDBBMlx1MDBBM1x1MDBBNFx1MDBBNVx1MDBBNlx1MDBBN1x1MDBBOFx1MDBBOVx1MDBBQVx1MDBBQlx1MDBBQ1x1MDBBRFx1MDBBRVx1MDBBRlx1MDBCMFx1MDBCMVx1MDBCMlx1MDBCM1x1MDBCNFx1MDBCNVx1MDBCNlx1MDBCN1x1MDBCOFx1MDBCOVx1MDBCQVx1MDBCQlx1MDBCQ1x1MDBCRFx1MDBCRVx1MDBCRlx1MDBDMFx1MDBDMVx1MDBDMlx1MDBDM1x1MDBDNFx1MDBDNVx1MDBDNlx1MDBDN1x1MDBDOFx1MDBDOVx1MDBDQVx1MDBDQlx1MDBDQ1x1MDBDRFx1MDBDRVx1MDBDRlx1MDExRVx1MDBEMVx1MDBEMlx1MDBEM1x1MDBENFx1MDBENVx1MDBENlx1MDBEN1x1MDBEOFx1MDBEOVx1MDBEQVx1MDBEQlx1MDBEQ1x1MDEzMFx1MDE1RVx1MDBERlx1MDBFMFx1MDBFMVx1MDBFMlx1MDBFM1x1MDBFNFx1MDBFNVx1MDBFNlx1MDBFN1x1MDBFOFx1MDBFOVx1MDBFQVx1MDBFQlx1MDBFQ1x1MDBFRFx1MDBFRVx1MDBFRlx1MDExRlx1MDBGMVx1MDBGMlx1MDBGM1x1MDBGNFx1MDBGNVx1MDBGNlx1MDBGN1x1MDBGOFx1MDBGOVx1MDBGQVx1MDBGQlx1MDBGQ1x1MDEzMVx1MDE1Rlx1MDBGRlwiXG4gIH0sXG4gIFwiY3AyODU5OVwiOiBcImlzbzg4NTk5XCIsXG4gIFwiaXNvODg1OTEwXCI6IHtcbiAgICBcInR5cGVcIjogXCJfc2Jjc1wiLFxuICAgIFwiY2hhcnNcIjogXCJcdTAwODBcdTAwODFcdTAwODJcdTAwODNcdTAwODRcdTAwODVcdTAwODZcdTAwODdcdTAwODhcdTAwODlcdTAwOEFcdTAwOEJcdTAwOENcdTAwOERcdTAwOEVcdTAwOEZcdTAwOTBcdTAwOTFcdTAwOTJcdTAwOTNcdTAwOTRcdTAwOTVcdTAwOTZcdTAwOTdcdTAwOThcdTAwOTlcdTAwOUFcdTAwOUJcdTAwOUNcdTAwOURcdTAwOUVcdTAwOUZcdTAwQTBcdTAxMDRcdTAxMTJcdTAxMjJcdTAxMkFcdTAxMjhcdTAxMzZcdTAwQTdcdTAxM0JcdTAxMTBcdTAxNjBcdTAxNjZcdTAxN0RcdTAwQURcdTAxNkFcdTAxNEFcdTAwQjBcdTAxMDVcdTAxMTNcdTAxMjNcdTAxMkJcdTAxMjlcdTAxMzdcdTAwQjdcdTAxM0NcdTAxMTFcdTAxNjFcdTAxNjdcdTAxN0VcdTIwMTVcdTAxNkJcdTAxNEJcdTAxMDBcdTAwQzFcdTAwQzJcdTAwQzNcdTAwQzRcdTAwQzVcdTAwQzZcdTAxMkVcdTAxMENcdTAwQzlcdTAxMThcdTAwQ0JcdTAxMTZcdTAwQ0RcdTAwQ0VcdTAwQ0ZcdTAwRDBcdTAxNDVcdTAxNENcdTAwRDNcdTAwRDRcdTAwRDVcdTAwRDZcdTAxNjhcdTAwRDhcdTAxNzJcdTAwREFcdTAwREJcdTAwRENcdTAwRERcdTAwREVcdTAwREZcdTAxMDFcdTAwRTFcdTAwRTJcdTAwRTNcdTAwRTRcdTAwRTVcdTAwRTZcdTAxMkZcdTAxMERcdTAwRTlcdTAxMTlcdTAwRUJcdTAxMTdcdTAwRURcdTAwRUVcdTAwRUZcdTAwRjBcdTAxNDZcdTAxNERcdTAwRjNcdTAwRjRcdTAwRjVcdTAwRjZcdTAxNjlcdTAwRjhcdTAxNzNcdTAwRkFcdTAwRkJcdTAwRkNcdTAwRkRcdTAwRkVcdTAxMzhcIlxuICB9LFxuICBcImNwMjg2MDBcIjogXCJpc284ODU5MTBcIixcbiAgXCJpc284ODU5MTFcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDA4MFx1MDA4MVx1MDA4Mlx1MDA4M1x1MDA4NFx1MDA4NVx1MDA4Nlx1MDA4N1x1MDA4OFx1MDA4OVx1MDA4QVx1MDA4Qlx1MDA4Q1x1MDA4RFx1MDA4RVx1MDA4Rlx1MDA5MFx1MDA5MVx1MDA5Mlx1MDA5M1x1MDA5NFx1MDA5NVx1MDA5Nlx1MDA5N1x1MDA5OFx1MDA5OVx1MDA5QVx1MDA5Qlx1MDA5Q1x1MDA5RFx1MDA5RVx1MDA5Rlx1MDBBMFx1MEUwMVx1MEUwMlx1MEUwM1x1MEUwNFx1MEUwNVx1MEUwNlx1MEUwN1x1MEUwOFx1MEUwOVx1MEUwQVx1MEUwQlx1MEUwQ1x1MEUwRFx1MEUwRVx1MEUwRlx1MEUxMFx1MEUxMVx1MEUxMlx1MEUxM1x1MEUxNFx1MEUxNVx1MEUxNlx1MEUxN1x1MEUxOFx1MEUxOVx1MEUxQVx1MEUxQlx1MEUxQ1x1MEUxRFx1MEUxRVx1MEUxRlx1MEUyMFx1MEUyMVx1MEUyMlx1MEUyM1x1MEUyNFx1MEUyNVx1MEUyNlx1MEUyN1x1MEUyOFx1MEUyOVx1MEUyQVx1MEUyQlx1MEUyQ1x1MEUyRFx1MEUyRVx1MEUyRlx1MEUzMFx1MEUzMVx1MEUzMlx1MEUzM1x1MEUzNFx1MEUzNVx1MEUzNlx1MEUzN1x1MEUzOFx1MEUzOVx1MEUzQVx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1MEUzRlx1MEU0MFx1MEU0MVx1MEU0Mlx1MEU0M1x1MEU0NFx1MEU0NVx1MEU0Nlx1MEU0N1x1MEU0OFx1MEU0OVx1MEU0QVx1MEU0Qlx1MEU0Q1x1MEU0RFx1MEU0RVx1MEU0Rlx1MEU1MFx1MEU1MVx1MEU1Mlx1MEU1M1x1MEU1NFx1MEU1NVx1MEU1Nlx1MEU1N1x1MEU1OFx1MEU1OVx1MEU1QVx1MEU1Qlx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFwiXG4gIH0sXG4gIFwiY3AyODYwMVwiOiBcImlzbzg4NTkxMVwiLFxuICBcImlzbzg4NTkxM1wiOiB7XG4gICAgXCJ0eXBlXCI6IFwiX3NiY3NcIixcbiAgICBcImNoYXJzXCI6IFwiXHUwMDgwXHUwMDgxXHUwMDgyXHUwMDgzXHUwMDg0XHUwMDg1XHUwMDg2XHUwMDg3XHUwMDg4XHUwMDg5XHUwMDhBXHUwMDhCXHUwMDhDXHUwMDhEXHUwMDhFXHUwMDhGXHUwMDkwXHUwMDkxXHUwMDkyXHUwMDkzXHUwMDk0XHUwMDk1XHUwMDk2XHUwMDk3XHUwMDk4XHUwMDk5XHUwMDlBXHUwMDlCXHUwMDlDXHUwMDlEXHUwMDlFXHUwMDlGXHUwMEEwXHUyMDFEXHUwMEEyXHUwMEEzXHUwMEE0XHUyMDFFXHUwMEE2XHUwMEE3XHUwMEQ4XHUwMEE5XHUwMTU2XHUwMEFCXHUwMEFDXHUwMEFEXHUwMEFFXHUwMEM2XHUwMEIwXHUwMEIxXHUwMEIyXHUwMEIzXHUyMDFDXHUwMEI1XHUwMEI2XHUwMEI3XHUwMEY4XHUwMEI5XHUwMTU3XHUwMEJCXHUwMEJDXHUwMEJEXHUwMEJFXHUwMEU2XHUwMTA0XHUwMTJFXHUwMTAwXHUwMTA2XHUwMEM0XHUwMEM1XHUwMTE4XHUwMTEyXHUwMTBDXHUwMEM5XHUwMTc5XHUwMTE2XHUwMTIyXHUwMTM2XHUwMTJBXHUwMTNCXHUwMTYwXHUwMTQzXHUwMTQ1XHUwMEQzXHUwMTRDXHUwMEQ1XHUwMEQ2XHUwMEQ3XHUwMTcyXHUwMTQxXHUwMTVBXHUwMTZBXHUwMERDXHUwMTdCXHUwMTdEXHUwMERGXHUwMTA1XHUwMTJGXHUwMTAxXHUwMTA3XHUwMEU0XHUwMEU1XHUwMTE5XHUwMTEzXHUwMTBEXHUwMEU5XHUwMTdBXHUwMTE3XHUwMTIzXHUwMTM3XHUwMTJCXHUwMTNDXHUwMTYxXHUwMTQ0XHUwMTQ2XHUwMEYzXHUwMTREXHUwMEY1XHUwMEY2XHUwMEY3XHUwMTczXHUwMTQyXHUwMTVCXHUwMTZCXHUwMEZDXHUwMTdDXHUwMTdFXHUyMDE5XCJcbiAgfSxcbiAgXCJjcDI4NjAzXCI6IFwiaXNvODg1OTEzXCIsXG4gIFwiaXNvODg1OTE0XCI6IHtcbiAgICBcInR5cGVcIjogXCJfc2Jjc1wiLFxuICAgIFwiY2hhcnNcIjogXCJcdTAwODBcdTAwODFcdTAwODJcdTAwODNcdTAwODRcdTAwODVcdTAwODZcdTAwODdcdTAwODhcdTAwODlcdTAwOEFcdTAwOEJcdTAwOENcdTAwOERcdTAwOEVcdTAwOEZcdTAwOTBcdTAwOTFcdTAwOTJcdTAwOTNcdTAwOTRcdTAwOTVcdTAwOTZcdTAwOTdcdTAwOThcdTAwOTlcdTAwOUFcdTAwOUJcdTAwOUNcdTAwOURcdTAwOUVcdTAwOUZcdTAwQTBcdTFFMDJcdTFFMDNcdTAwQTNcdTAxMEFcdTAxMEJcdTFFMEFcdTAwQTdcdTFFODBcdTAwQTlcdTFFODJcdTFFMEJcdTFFRjJcdTAwQURcdTAwQUVcdTAxNzhcdTFFMUVcdTFFMUZcdTAxMjBcdTAxMjFcdTFFNDBcdTFFNDFcdTAwQjZcdTFFNTZcdTFFODFcdTFFNTdcdTFFODNcdTFFNjBcdTFFRjNcdTFFODRcdTFFODVcdTFFNjFcdTAwQzBcdTAwQzFcdTAwQzJcdTAwQzNcdTAwQzRcdTAwQzVcdTAwQzZcdTAwQzdcdTAwQzhcdTAwQzlcdTAwQ0FcdTAwQ0JcdTAwQ0NcdTAwQ0RcdTAwQ0VcdTAwQ0ZcdTAxNzRcdTAwRDFcdTAwRDJcdTAwRDNcdTAwRDRcdTAwRDVcdTAwRDZcdTFFNkFcdTAwRDhcdTAwRDlcdTAwREFcdTAwREJcdTAwRENcdTAwRERcdTAxNzZcdTAwREZcdTAwRTBcdTAwRTFcdTAwRTJcdTAwRTNcdTAwRTRcdTAwRTVcdTAwRTZcdTAwRTdcdTAwRThcdTAwRTlcdTAwRUFcdTAwRUJcdTAwRUNcdTAwRURcdTAwRUVcdTAwRUZcdTAxNzVcdTAwRjFcdTAwRjJcdTAwRjNcdTAwRjRcdTAwRjVcdTAwRjZcdTFFNkJcdTAwRjhcdTAwRjlcdTAwRkFcdTAwRkJcdTAwRkNcdTAwRkRcdTAxNzdcdTAwRkZcIlxuICB9LFxuICBcImNwMjg2MDRcIjogXCJpc284ODU5MTRcIixcbiAgXCJpc284ODU5MTVcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDA4MFx1MDA4MVx1MDA4Mlx1MDA4M1x1MDA4NFx1MDA4NVx1MDA4Nlx1MDA4N1x1MDA4OFx1MDA4OVx1MDA4QVx1MDA4Qlx1MDA4Q1x1MDA4RFx1MDA4RVx1MDA4Rlx1MDA5MFx1MDA5MVx1MDA5Mlx1MDA5M1x1MDA5NFx1MDA5NVx1MDA5Nlx1MDA5N1x1MDA5OFx1MDA5OVx1MDA5QVx1MDA5Qlx1MDA5Q1x1MDA5RFx1MDA5RVx1MDA5Rlx1MDBBMFx1MDBBMVx1MDBBMlx1MDBBM1x1MjBBQ1x1MDBBNVx1MDE2MFx1MDBBN1x1MDE2MVx1MDBBOVx1MDBBQVx1MDBBQlx1MDBBQ1x1MDBBRFx1MDBBRVx1MDBBRlx1MDBCMFx1MDBCMVx1MDBCMlx1MDBCM1x1MDE3RFx1MDBCNVx1MDBCNlx1MDBCN1x1MDE3RVx1MDBCOVx1MDBCQVx1MDBCQlx1MDE1Mlx1MDE1M1x1MDE3OFx1MDBCRlx1MDBDMFx1MDBDMVx1MDBDMlx1MDBDM1x1MDBDNFx1MDBDNVx1MDBDNlx1MDBDN1x1MDBDOFx1MDBDOVx1MDBDQVx1MDBDQlx1MDBDQ1x1MDBDRFx1MDBDRVx1MDBDRlx1MDBEMFx1MDBEMVx1MDBEMlx1MDBEM1x1MDBENFx1MDBENVx1MDBENlx1MDBEN1x1MDBEOFx1MDBEOVx1MDBEQVx1MDBEQlx1MDBEQ1x1MDBERFx1MDBERVx1MDBERlx1MDBFMFx1MDBFMVx1MDBFMlx1MDBFM1x1MDBFNFx1MDBFNVx1MDBFNlx1MDBFN1x1MDBFOFx1MDBFOVx1MDBFQVx1MDBFQlx1MDBFQ1x1MDBFRFx1MDBFRVx1MDBFRlx1MDBGMFx1MDBGMVx1MDBGMlx1MDBGM1x1MDBGNFx1MDBGNVx1MDBGNlx1MDBGN1x1MDBGOFx1MDBGOVx1MDBGQVx1MDBGQlx1MDBGQ1x1MDBGRFx1MDBGRVx1MDBGRlwiXG4gIH0sXG4gIFwiY3AyODYwNVwiOiBcImlzbzg4NTkxNVwiLFxuICBcImlzbzg4NTkxNlwiOiB7XG4gICAgXCJ0eXBlXCI6IFwiX3NiY3NcIixcbiAgICBcImNoYXJzXCI6IFwiXHUwMDgwXHUwMDgxXHUwMDgyXHUwMDgzXHUwMDg0XHUwMDg1XHUwMDg2XHUwMDg3XHUwMDg4XHUwMDg5XHUwMDhBXHUwMDhCXHUwMDhDXHUwMDhEXHUwMDhFXHUwMDhGXHUwMDkwXHUwMDkxXHUwMDkyXHUwMDkzXHUwMDk0XHUwMDk1XHUwMDk2XHUwMDk3XHUwMDk4XHUwMDk5XHUwMDlBXHUwMDlCXHUwMDlDXHUwMDlEXHUwMDlFXHUwMDlGXHUwMEEwXHUwMTA0XHUwMTA1XHUwMTQxXHUyMEFDXHUyMDFFXHUwMTYwXHUwMEE3XHUwMTYxXHUwMEE5XHUwMjE4XHUwMEFCXHUwMTc5XHUwMEFEXHUwMTdBXHUwMTdCXHUwMEIwXHUwMEIxXHUwMTBDXHUwMTQyXHUwMTdEXHUyMDFEXHUwMEI2XHUwMEI3XHUwMTdFXHUwMTBEXHUwMjE5XHUwMEJCXHUwMTUyXHUwMTUzXHUwMTc4XHUwMTdDXHUwMEMwXHUwMEMxXHUwMEMyXHUwMTAyXHUwMEM0XHUwMTA2XHUwMEM2XHUwMEM3XHUwMEM4XHUwMEM5XHUwMENBXHUwMENCXHUwMENDXHUwMENEXHUwMENFXHUwMENGXHUwMTEwXHUwMTQzXHUwMEQyXHUwMEQzXHUwMEQ0XHUwMTUwXHUwMEQ2XHUwMTVBXHUwMTcwXHUwMEQ5XHUwMERBXHUwMERCXHUwMERDXHUwMTE4XHUwMjFBXHUwMERGXHUwMEUwXHUwMEUxXHUwMEUyXHUwMTAzXHUwMEU0XHUwMTA3XHUwMEU2XHUwMEU3XHUwMEU4XHUwMEU5XHUwMEVBXHUwMEVCXHUwMEVDXHUwMEVEXHUwMEVFXHUwMEVGXHUwMTExXHUwMTQ0XHUwMEYyXHUwMEYzXHUwMEY0XHUwMTUxXHUwMEY2XHUwMTVCXHUwMTcxXHUwMEY5XHUwMEZBXHUwMEZCXHUwMEZDXHUwMTE5XHUwMjFCXHUwMEZGXCJcbiAgfSxcbiAgXCJjcDI4NjA2XCI6IFwiaXNvODg1OTE2XCIsXG4gIFwiY3A0MzdcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDBDN1x1MDBGQ1x1MDBFOVx1MDBFMlx1MDBFNFx1MDBFMFx1MDBFNVx1MDBFN1x1MDBFQVx1MDBFQlx1MDBFOFx1MDBFRlx1MDBFRVx1MDBFQ1x1MDBDNFx1MDBDNVx1MDBDOVx1MDBFNlx1MDBDNlx1MDBGNFx1MDBGNlx1MDBGMlx1MDBGQlx1MDBGOVx1MDBGRlx1MDBENlx1MDBEQ1x1MDBBMlx1MDBBM1x1MDBBNVx1MjBBN1x1MDE5Mlx1MDBFMVx1MDBFRFx1MDBGM1x1MDBGQVx1MDBGMVx1MDBEMVx1MDBBQVx1MDBCQVx1MDBCRlx1MjMxMFx1MDBBQ1x1MDBCRFx1MDBCQ1x1MDBBMVx1MDBBQlx1MDBCQlx1MjU5MVx1MjU5Mlx1MjU5M1x1MjUwMlx1MjUyNFx1MjU2MVx1MjU2Mlx1MjU1Nlx1MjU1NVx1MjU2M1x1MjU1MVx1MjU1N1x1MjU1RFx1MjU1Q1x1MjU1Qlx1MjUxMFx1MjUxNFx1MjUzNFx1MjUyQ1x1MjUxQ1x1MjUwMFx1MjUzQ1x1MjU1RVx1MjU1Rlx1MjU1QVx1MjU1NFx1MjU2OVx1MjU2Nlx1MjU2MFx1MjU1MFx1MjU2Q1x1MjU2N1x1MjU2OFx1MjU2NFx1MjU2NVx1MjU1OVx1MjU1OFx1MjU1Mlx1MjU1M1x1MjU2Qlx1MjU2QVx1MjUxOFx1MjUwQ1x1MjU4OFx1MjU4NFx1MjU4Q1x1MjU5MFx1MjU4MFx1MDNCMVx1MDBERlx1MDM5M1x1MDNDMFx1MDNBM1x1MDNDM1x1MDBCNVx1MDNDNFx1MDNBNlx1MDM5OFx1MDNBOVx1MDNCNFx1MjIxRVx1MDNDNlx1MDNCNVx1MjIyOVx1MjI2MVx1MDBCMVx1MjI2NVx1MjI2NFx1MjMyMFx1MjMyMVx1MDBGN1x1MjI0OFx1MDBCMFx1MjIxOVx1MDBCN1x1MjIxQVx1MjA3Rlx1MDBCMlx1MjVBMFx1MDBBMFwiXG4gIH0sXG4gIFwiaWJtNDM3XCI6IFwiY3A0MzdcIixcbiAgXCJjc2libTQzN1wiOiBcImNwNDM3XCIsXG4gIFwiY3A3MzdcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDM5MVx1MDM5Mlx1MDM5M1x1MDM5NFx1MDM5NVx1MDM5Nlx1MDM5N1x1MDM5OFx1MDM5OVx1MDM5QVx1MDM5Qlx1MDM5Q1x1MDM5RFx1MDM5RVx1MDM5Rlx1MDNBMFx1MDNBMVx1MDNBM1x1MDNBNFx1MDNBNVx1MDNBNlx1MDNBN1x1MDNBOFx1MDNBOVx1MDNCMVx1MDNCMlx1MDNCM1x1MDNCNFx1MDNCNVx1MDNCNlx1MDNCN1x1MDNCOFx1MDNCOVx1MDNCQVx1MDNCQlx1MDNCQ1x1MDNCRFx1MDNCRVx1MDNCRlx1MDNDMFx1MDNDMVx1MDNDM1x1MDNDMlx1MDNDNFx1MDNDNVx1MDNDNlx1MDNDN1x1MDNDOFx1MjU5MVx1MjU5Mlx1MjU5M1x1MjUwMlx1MjUyNFx1MjU2MVx1MjU2Mlx1MjU1Nlx1MjU1NVx1MjU2M1x1MjU1MVx1MjU1N1x1MjU1RFx1MjU1Q1x1MjU1Qlx1MjUxMFx1MjUxNFx1MjUzNFx1MjUyQ1x1MjUxQ1x1MjUwMFx1MjUzQ1x1MjU1RVx1MjU1Rlx1MjU1QVx1MjU1NFx1MjU2OVx1MjU2Nlx1MjU2MFx1MjU1MFx1MjU2Q1x1MjU2N1x1MjU2OFx1MjU2NFx1MjU2NVx1MjU1OVx1MjU1OFx1MjU1Mlx1MjU1M1x1MjU2Qlx1MjU2QVx1MjUxOFx1MjUwQ1x1MjU4OFx1MjU4NFx1MjU4Q1x1MjU5MFx1MjU4MFx1MDNDOVx1MDNBQ1x1MDNBRFx1MDNBRVx1MDNDQVx1MDNBRlx1MDNDQ1x1MDNDRFx1MDNDQlx1MDNDRVx1MDM4Nlx1MDM4OFx1MDM4OVx1MDM4QVx1MDM4Q1x1MDM4RVx1MDM4Rlx1MDBCMVx1MjI2NVx1MjI2NFx1MDNBQVx1MDNBQlx1MDBGN1x1MjI0OFx1MDBCMFx1MjIxOVx1MDBCN1x1MjIxQVx1MjA3Rlx1MDBCMlx1MjVBMFx1MDBBMFwiXG4gIH0sXG4gIFwiaWJtNzM3XCI6IFwiY3A3MzdcIixcbiAgXCJjc2libTczN1wiOiBcImNwNzM3XCIsXG4gIFwiY3A3NzVcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDEwNlx1MDBGQ1x1MDBFOVx1MDEwMVx1MDBFNFx1MDEyM1x1MDBFNVx1MDEwN1x1MDE0Mlx1MDExM1x1MDE1Nlx1MDE1N1x1MDEyQlx1MDE3OVx1MDBDNFx1MDBDNVx1MDBDOVx1MDBFNlx1MDBDNlx1MDE0RFx1MDBGNlx1MDEyMlx1MDBBMlx1MDE1QVx1MDE1Qlx1MDBENlx1MDBEQ1x1MDBGOFx1MDBBM1x1MDBEOFx1MDBEN1x1MDBBNFx1MDEwMFx1MDEyQVx1MDBGM1x1MDE3Qlx1MDE3Q1x1MDE3QVx1MjAxRFx1MDBBNlx1MDBBOVx1MDBBRVx1MDBBQ1x1MDBCRFx1MDBCQ1x1MDE0MVx1MDBBQlx1MDBCQlx1MjU5MVx1MjU5Mlx1MjU5M1x1MjUwMlx1MjUyNFx1MDEwNFx1MDEwQ1x1MDExOFx1MDExNlx1MjU2M1x1MjU1MVx1MjU1N1x1MjU1RFx1MDEyRVx1MDE2MFx1MjUxMFx1MjUxNFx1MjUzNFx1MjUyQ1x1MjUxQ1x1MjUwMFx1MjUzQ1x1MDE3Mlx1MDE2QVx1MjU1QVx1MjU1NFx1MjU2OVx1MjU2Nlx1MjU2MFx1MjU1MFx1MjU2Q1x1MDE3RFx1MDEwNVx1MDEwRFx1MDExOVx1MDExN1x1MDEyRlx1MDE2MVx1MDE3M1x1MDE2Qlx1MDE3RVx1MjUxOFx1MjUwQ1x1MjU4OFx1MjU4NFx1MjU4Q1x1MjU5MFx1MjU4MFx1MDBEM1x1MDBERlx1MDE0Q1x1MDE0M1x1MDBGNVx1MDBENVx1MDBCNVx1MDE0NFx1MDEzNlx1MDEzN1x1MDEzQlx1MDEzQ1x1MDE0Nlx1MDExMlx1MDE0NVx1MjAxOVx1MDBBRFx1MDBCMVx1MjAxQ1x1MDBCRVx1MDBCNlx1MDBBN1x1MDBGN1x1MjAxRVx1MDBCMFx1MjIxOVx1MDBCN1x1MDBCOVx1MDBCM1x1MDBCMlx1MjVBMFx1MDBBMFwiXG4gIH0sXG4gIFwiaWJtNzc1XCI6IFwiY3A3NzVcIixcbiAgXCJjc2libTc3NVwiOiBcImNwNzc1XCIsXG4gIFwiY3A4NTBcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDBDN1x1MDBGQ1x1MDBFOVx1MDBFMlx1MDBFNFx1MDBFMFx1MDBFNVx1MDBFN1x1MDBFQVx1MDBFQlx1MDBFOFx1MDBFRlx1MDBFRVx1MDBFQ1x1MDBDNFx1MDBDNVx1MDBDOVx1MDBFNlx1MDBDNlx1MDBGNFx1MDBGNlx1MDBGMlx1MDBGQlx1MDBGOVx1MDBGRlx1MDBENlx1MDBEQ1x1MDBGOFx1MDBBM1x1MDBEOFx1MDBEN1x1MDE5Mlx1MDBFMVx1MDBFRFx1MDBGM1x1MDBGQVx1MDBGMVx1MDBEMVx1MDBBQVx1MDBCQVx1MDBCRlx1MDBBRVx1MDBBQ1x1MDBCRFx1MDBCQ1x1MDBBMVx1MDBBQlx1MDBCQlx1MjU5MVx1MjU5Mlx1MjU5M1x1MjUwMlx1MjUyNFx1MDBDMVx1MDBDMlx1MDBDMFx1MDBBOVx1MjU2M1x1MjU1MVx1MjU1N1x1MjU1RFx1MDBBMlx1MDBBNVx1MjUxMFx1MjUxNFx1MjUzNFx1MjUyQ1x1MjUxQ1x1MjUwMFx1MjUzQ1x1MDBFM1x1MDBDM1x1MjU1QVx1MjU1NFx1MjU2OVx1MjU2Nlx1MjU2MFx1MjU1MFx1MjU2Q1x1MDBBNFx1MDBGMFx1MDBEMFx1MDBDQVx1MDBDQlx1MDBDOFx1MDEzMVx1MDBDRFx1MDBDRVx1MDBDRlx1MjUxOFx1MjUwQ1x1MjU4OFx1MjU4NFx1MDBBNlx1MDBDQ1x1MjU4MFx1MDBEM1x1MDBERlx1MDBENFx1MDBEMlx1MDBGNVx1MDBENVx1MDBCNVx1MDBGRVx1MDBERVx1MDBEQVx1MDBEQlx1MDBEOVx1MDBGRFx1MDBERFx1MDBBRlx1MDBCNFx1MDBBRFx1MDBCMVx1MjAxN1x1MDBCRVx1MDBCNlx1MDBBN1x1MDBGN1x1MDBCOFx1MDBCMFx1MDBBOFx1MDBCN1x1MDBCOVx1MDBCM1x1MDBCMlx1MjVBMFx1MDBBMFwiXG4gIH0sXG4gIFwiaWJtODUwXCI6IFwiY3A4NTBcIixcbiAgXCJjc2libTg1MFwiOiBcImNwODUwXCIsXG4gIFwiY3A4NTJcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDBDN1x1MDBGQ1x1MDBFOVx1MDBFMlx1MDBFNFx1MDE2Rlx1MDEwN1x1MDBFN1x1MDE0Mlx1MDBFQlx1MDE1MFx1MDE1MVx1MDBFRVx1MDE3OVx1MDBDNFx1MDEwNlx1MDBDOVx1MDEzOVx1MDEzQVx1MDBGNFx1MDBGNlx1MDEzRFx1MDEzRVx1MDE1QVx1MDE1Qlx1MDBENlx1MDBEQ1x1MDE2NFx1MDE2NVx1MDE0MVx1MDBEN1x1MDEwRFx1MDBFMVx1MDBFRFx1MDBGM1x1MDBGQVx1MDEwNFx1MDEwNVx1MDE3RFx1MDE3RVx1MDExOFx1MDExOVx1MDBBQ1x1MDE3QVx1MDEwQ1x1MDE1Rlx1MDBBQlx1MDBCQlx1MjU5MVx1MjU5Mlx1MjU5M1x1MjUwMlx1MjUyNFx1MDBDMVx1MDBDMlx1MDExQVx1MDE1RVx1MjU2M1x1MjU1MVx1MjU1N1x1MjU1RFx1MDE3Qlx1MDE3Q1x1MjUxMFx1MjUxNFx1MjUzNFx1MjUyQ1x1MjUxQ1x1MjUwMFx1MjUzQ1x1MDEwMlx1MDEwM1x1MjU1QVx1MjU1NFx1MjU2OVx1MjU2Nlx1MjU2MFx1MjU1MFx1MjU2Q1x1MDBBNFx1MDExMVx1MDExMFx1MDEwRVx1MDBDQlx1MDEwRlx1MDE0N1x1MDBDRFx1MDBDRVx1MDExQlx1MjUxOFx1MjUwQ1x1MjU4OFx1MjU4NFx1MDE2Mlx1MDE2RVx1MjU4MFx1MDBEM1x1MDBERlx1MDBENFx1MDE0M1x1MDE0NFx1MDE0OFx1MDE2MFx1MDE2MVx1MDE1NFx1MDBEQVx1MDE1NVx1MDE3MFx1MDBGRFx1MDBERFx1MDE2M1x1MDBCNFx1MDBBRFx1MDJERFx1MDJEQlx1MDJDN1x1MDJEOFx1MDBBN1x1MDBGN1x1MDBCOFx1MDBCMFx1MDBBOFx1MDJEOVx1MDE3MVx1MDE1OFx1MDE1OVx1MjVBMFx1MDBBMFwiXG4gIH0sXG4gIFwiaWJtODUyXCI6IFwiY3A4NTJcIixcbiAgXCJjc2libTg1MlwiOiBcImNwODUyXCIsXG4gIFwiY3A4NTVcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDQ1Mlx1MDQwMlx1MDQ1M1x1MDQwM1x1MDQ1MVx1MDQwMVx1MDQ1NFx1MDQwNFx1MDQ1NVx1MDQwNVx1MDQ1Nlx1MDQwNlx1MDQ1N1x1MDQwN1x1MDQ1OFx1MDQwOFx1MDQ1OVx1MDQwOVx1MDQ1QVx1MDQwQVx1MDQ1Qlx1MDQwQlx1MDQ1Q1x1MDQwQ1x1MDQ1RVx1MDQwRVx1MDQ1Rlx1MDQwRlx1MDQ0RVx1MDQyRVx1MDQ0QVx1MDQyQVx1MDQzMFx1MDQxMFx1MDQzMVx1MDQxMVx1MDQ0Nlx1MDQyNlx1MDQzNFx1MDQxNFx1MDQzNVx1MDQxNVx1MDQ0NFx1MDQyNFx1MDQzM1x1MDQxM1x1MDBBQlx1MDBCQlx1MjU5MVx1MjU5Mlx1MjU5M1x1MjUwMlx1MjUyNFx1MDQ0NVx1MDQyNVx1MDQzOFx1MDQxOFx1MjU2M1x1MjU1MVx1MjU1N1x1MjU1RFx1MDQzOVx1MDQxOVx1MjUxMFx1MjUxNFx1MjUzNFx1MjUyQ1x1MjUxQ1x1MjUwMFx1MjUzQ1x1MDQzQVx1MDQxQVx1MjU1QVx1MjU1NFx1MjU2OVx1MjU2Nlx1MjU2MFx1MjU1MFx1MjU2Q1x1MDBBNFx1MDQzQlx1MDQxQlx1MDQzQ1x1MDQxQ1x1MDQzRFx1MDQxRFx1MDQzRVx1MDQxRVx1MDQzRlx1MjUxOFx1MjUwQ1x1MjU4OFx1MjU4NFx1MDQxRlx1MDQ0Rlx1MjU4MFx1MDQyRlx1MDQ0MFx1MDQyMFx1MDQ0MVx1MDQyMVx1MDQ0Mlx1MDQyMlx1MDQ0M1x1MDQyM1x1MDQzNlx1MDQxNlx1MDQzMlx1MDQxMlx1MDQ0Q1x1MDQyQ1x1MjExNlx1MDBBRFx1MDQ0Qlx1MDQyQlx1MDQzN1x1MDQxN1x1MDQ0OFx1MDQyOFx1MDQ0RFx1MDQyRFx1MDQ0OVx1MDQyOVx1MDQ0N1x1MDQyN1x1MDBBN1x1MjVBMFx1MDBBMFwiXG4gIH0sXG4gIFwiaWJtODU1XCI6IFwiY3A4NTVcIixcbiAgXCJjc2libTg1NVwiOiBcImNwODU1XCIsXG4gIFwiY3A4NTZcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDVEMFx1MDVEMVx1MDVEMlx1MDVEM1x1MDVENFx1MDVENVx1MDVENlx1MDVEN1x1MDVEOFx1MDVEOVx1MDVEQVx1MDVEQlx1MDVEQ1x1MDVERFx1MDVERVx1MDVERlx1MDVFMFx1MDVFMVx1MDVFMlx1MDVFM1x1MDVFNFx1MDVFNVx1MDVFNlx1MDVFN1x1MDVFOFx1MDVFOVx1MDVFQVx1RkZGRFx1MDBBM1x1RkZGRFx1MDBEN1x1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1MDBBRVx1MDBBQ1x1MDBCRFx1MDBCQ1x1RkZGRFx1MDBBQlx1MDBCQlx1MjU5MVx1MjU5Mlx1MjU5M1x1MjUwMlx1MjUyNFx1RkZGRFx1RkZGRFx1RkZGRFx1MDBBOVx1MjU2M1x1MjU1MVx1MjU1N1x1MjU1RFx1MDBBMlx1MDBBNVx1MjUxMFx1MjUxNFx1MjUzNFx1MjUyQ1x1MjUxQ1x1MjUwMFx1MjUzQ1x1RkZGRFx1RkZGRFx1MjU1QVx1MjU1NFx1MjU2OVx1MjU2Nlx1MjU2MFx1MjU1MFx1MjU2Q1x1MDBBNFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1MjUxOFx1MjUwQ1x1MjU4OFx1MjU4NFx1MDBBNlx1RkZGRFx1MjU4MFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1MDBCNVx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1MDBBRlx1MDBCNFx1MDBBRFx1MDBCMVx1MjAxN1x1MDBCRVx1MDBCNlx1MDBBN1x1MDBGN1x1MDBCOFx1MDBCMFx1MDBBOFx1MDBCN1x1MDBCOVx1MDBCM1x1MDBCMlx1MjVBMFx1MDBBMFwiXG4gIH0sXG4gIFwiaWJtODU2XCI6IFwiY3A4NTZcIixcbiAgXCJjc2libTg1NlwiOiBcImNwODU2XCIsXG4gIFwiY3A4NTdcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDBDN1x1MDBGQ1x1MDBFOVx1MDBFMlx1MDBFNFx1MDBFMFx1MDBFNVx1MDBFN1x1MDBFQVx1MDBFQlx1MDBFOFx1MDBFRlx1MDBFRVx1MDEzMVx1MDBDNFx1MDBDNVx1MDBDOVx1MDBFNlx1MDBDNlx1MDBGNFx1MDBGNlx1MDBGMlx1MDBGQlx1MDBGOVx1MDEzMFx1MDBENlx1MDBEQ1x1MDBGOFx1MDBBM1x1MDBEOFx1MDE1RVx1MDE1Rlx1MDBFMVx1MDBFRFx1MDBGM1x1MDBGQVx1MDBGMVx1MDBEMVx1MDExRVx1MDExRlx1MDBCRlx1MDBBRVx1MDBBQ1x1MDBCRFx1MDBCQ1x1MDBBMVx1MDBBQlx1MDBCQlx1MjU5MVx1MjU5Mlx1MjU5M1x1MjUwMlx1MjUyNFx1MDBDMVx1MDBDMlx1MDBDMFx1MDBBOVx1MjU2M1x1MjU1MVx1MjU1N1x1MjU1RFx1MDBBMlx1MDBBNVx1MjUxMFx1MjUxNFx1MjUzNFx1MjUyQ1x1MjUxQ1x1MjUwMFx1MjUzQ1x1MDBFM1x1MDBDM1x1MjU1QVx1MjU1NFx1MjU2OVx1MjU2Nlx1MjU2MFx1MjU1MFx1MjU2Q1x1MDBBNFx1MDBCQVx1MDBBQVx1MDBDQVx1MDBDQlx1MDBDOFx1RkZGRFx1MDBDRFx1MDBDRVx1MDBDRlx1MjUxOFx1MjUwQ1x1MjU4OFx1MjU4NFx1MDBBNlx1MDBDQ1x1MjU4MFx1MDBEM1x1MDBERlx1MDBENFx1MDBEMlx1MDBGNVx1MDBENVx1MDBCNVx1RkZGRFx1MDBEN1x1MDBEQVx1MDBEQlx1MDBEOVx1MDBFQ1x1MDBGRlx1MDBBRlx1MDBCNFx1MDBBRFx1MDBCMVx1RkZGRFx1MDBCRVx1MDBCNlx1MDBBN1x1MDBGN1x1MDBCOFx1MDBCMFx1MDBBOFx1MDBCN1x1MDBCOVx1MDBCM1x1MDBCMlx1MjVBMFx1MDBBMFwiXG4gIH0sXG4gIFwiaWJtODU3XCI6IFwiY3A4NTdcIixcbiAgXCJjc2libTg1N1wiOiBcImNwODU3XCIsXG4gIFwiY3A4NThcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDBDN1x1MDBGQ1x1MDBFOVx1MDBFMlx1MDBFNFx1MDBFMFx1MDBFNVx1MDBFN1x1MDBFQVx1MDBFQlx1MDBFOFx1MDBFRlx1MDBFRVx1MDBFQ1x1MDBDNFx1MDBDNVx1MDBDOVx1MDBFNlx1MDBDNlx1MDBGNFx1MDBGNlx1MDBGMlx1MDBGQlx1MDBGOVx1MDBGRlx1MDBENlx1MDBEQ1x1MDBGOFx1MDBBM1x1MDBEOFx1MDBEN1x1MDE5Mlx1MDBFMVx1MDBFRFx1MDBGM1x1MDBGQVx1MDBGMVx1MDBEMVx1MDBBQVx1MDBCQVx1MDBCRlx1MDBBRVx1MDBBQ1x1MDBCRFx1MDBCQ1x1MDBBMVx1MDBBQlx1MDBCQlx1MjU5MVx1MjU5Mlx1MjU5M1x1MjUwMlx1MjUyNFx1MDBDMVx1MDBDMlx1MDBDMFx1MDBBOVx1MjU2M1x1MjU1MVx1MjU1N1x1MjU1RFx1MDBBMlx1MDBBNVx1MjUxMFx1MjUxNFx1MjUzNFx1MjUyQ1x1MjUxQ1x1MjUwMFx1MjUzQ1x1MDBFM1x1MDBDM1x1MjU1QVx1MjU1NFx1MjU2OVx1MjU2Nlx1MjU2MFx1MjU1MFx1MjU2Q1x1MDBBNFx1MDBGMFx1MDBEMFx1MDBDQVx1MDBDQlx1MDBDOFx1MjBBQ1x1MDBDRFx1MDBDRVx1MDBDRlx1MjUxOFx1MjUwQ1x1MjU4OFx1MjU4NFx1MDBBNlx1MDBDQ1x1MjU4MFx1MDBEM1x1MDBERlx1MDBENFx1MDBEMlx1MDBGNVx1MDBENVx1MDBCNVx1MDBGRVx1MDBERVx1MDBEQVx1MDBEQlx1MDBEOVx1MDBGRFx1MDBERFx1MDBBRlx1MDBCNFx1MDBBRFx1MDBCMVx1MjAxN1x1MDBCRVx1MDBCNlx1MDBBN1x1MDBGN1x1MDBCOFx1MDBCMFx1MDBBOFx1MDBCN1x1MDBCOVx1MDBCM1x1MDBCMlx1MjVBMFx1MDBBMFwiXG4gIH0sXG4gIFwiaWJtODU4XCI6IFwiY3A4NThcIixcbiAgXCJjc2libTg1OFwiOiBcImNwODU4XCIsXG4gIFwiY3A4NjBcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDBDN1x1MDBGQ1x1MDBFOVx1MDBFMlx1MDBFM1x1MDBFMFx1MDBDMVx1MDBFN1x1MDBFQVx1MDBDQVx1MDBFOFx1MDBDRFx1MDBENFx1MDBFQ1x1MDBDM1x1MDBDMlx1MDBDOVx1MDBDMFx1MDBDOFx1MDBGNFx1MDBGNVx1MDBGMlx1MDBEQVx1MDBGOVx1MDBDQ1x1MDBENVx1MDBEQ1x1MDBBMlx1MDBBM1x1MDBEOVx1MjBBN1x1MDBEM1x1MDBFMVx1MDBFRFx1MDBGM1x1MDBGQVx1MDBGMVx1MDBEMVx1MDBBQVx1MDBCQVx1MDBCRlx1MDBEMlx1MDBBQ1x1MDBCRFx1MDBCQ1x1MDBBMVx1MDBBQlx1MDBCQlx1MjU5MVx1MjU5Mlx1MjU5M1x1MjUwMlx1MjUyNFx1MjU2MVx1MjU2Mlx1MjU1Nlx1MjU1NVx1MjU2M1x1MjU1MVx1MjU1N1x1MjU1RFx1MjU1Q1x1MjU1Qlx1MjUxMFx1MjUxNFx1MjUzNFx1MjUyQ1x1MjUxQ1x1MjUwMFx1MjUzQ1x1MjU1RVx1MjU1Rlx1MjU1QVx1MjU1NFx1MjU2OVx1MjU2Nlx1MjU2MFx1MjU1MFx1MjU2Q1x1MjU2N1x1MjU2OFx1MjU2NFx1MjU2NVx1MjU1OVx1MjU1OFx1MjU1Mlx1MjU1M1x1MjU2Qlx1MjU2QVx1MjUxOFx1MjUwQ1x1MjU4OFx1MjU4NFx1MjU4Q1x1MjU5MFx1MjU4MFx1MDNCMVx1MDBERlx1MDM5M1x1MDNDMFx1MDNBM1x1MDNDM1x1MDBCNVx1MDNDNFx1MDNBNlx1MDM5OFx1MDNBOVx1MDNCNFx1MjIxRVx1MDNDNlx1MDNCNVx1MjIyOVx1MjI2MVx1MDBCMVx1MjI2NVx1MjI2NFx1MjMyMFx1MjMyMVx1MDBGN1x1MjI0OFx1MDBCMFx1MjIxOVx1MDBCN1x1MjIxQVx1MjA3Rlx1MDBCMlx1MjVBMFx1MDBBMFwiXG4gIH0sXG4gIFwiaWJtODYwXCI6IFwiY3A4NjBcIixcbiAgXCJjc2libTg2MFwiOiBcImNwODYwXCIsXG4gIFwiY3A4NjFcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDBDN1x1MDBGQ1x1MDBFOVx1MDBFMlx1MDBFNFx1MDBFMFx1MDBFNVx1MDBFN1x1MDBFQVx1MDBFQlx1MDBFOFx1MDBEMFx1MDBGMFx1MDBERVx1MDBDNFx1MDBDNVx1MDBDOVx1MDBFNlx1MDBDNlx1MDBGNFx1MDBGNlx1MDBGRVx1MDBGQlx1MDBERFx1MDBGRFx1MDBENlx1MDBEQ1x1MDBGOFx1MDBBM1x1MDBEOFx1MjBBN1x1MDE5Mlx1MDBFMVx1MDBFRFx1MDBGM1x1MDBGQVx1MDBDMVx1MDBDRFx1MDBEM1x1MDBEQVx1MDBCRlx1MjMxMFx1MDBBQ1x1MDBCRFx1MDBCQ1x1MDBBMVx1MDBBQlx1MDBCQlx1MjU5MVx1MjU5Mlx1MjU5M1x1MjUwMlx1MjUyNFx1MjU2MVx1MjU2Mlx1MjU1Nlx1MjU1NVx1MjU2M1x1MjU1MVx1MjU1N1x1MjU1RFx1MjU1Q1x1MjU1Qlx1MjUxMFx1MjUxNFx1MjUzNFx1MjUyQ1x1MjUxQ1x1MjUwMFx1MjUzQ1x1MjU1RVx1MjU1Rlx1MjU1QVx1MjU1NFx1MjU2OVx1MjU2Nlx1MjU2MFx1MjU1MFx1MjU2Q1x1MjU2N1x1MjU2OFx1MjU2NFx1MjU2NVx1MjU1OVx1MjU1OFx1MjU1Mlx1MjU1M1x1MjU2Qlx1MjU2QVx1MjUxOFx1MjUwQ1x1MjU4OFx1MjU4NFx1MjU4Q1x1MjU5MFx1MjU4MFx1MDNCMVx1MDBERlx1MDM5M1x1MDNDMFx1MDNBM1x1MDNDM1x1MDBCNVx1MDNDNFx1MDNBNlx1MDM5OFx1MDNBOVx1MDNCNFx1MjIxRVx1MDNDNlx1MDNCNVx1MjIyOVx1MjI2MVx1MDBCMVx1MjI2NVx1MjI2NFx1MjMyMFx1MjMyMVx1MDBGN1x1MjI0OFx1MDBCMFx1MjIxOVx1MDBCN1x1MjIxQVx1MjA3Rlx1MDBCMlx1MjVBMFx1MDBBMFwiXG4gIH0sXG4gIFwiaWJtODYxXCI6IFwiY3A4NjFcIixcbiAgXCJjc2libTg2MVwiOiBcImNwODYxXCIsXG4gIFwiY3A4NjJcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDVEMFx1MDVEMVx1MDVEMlx1MDVEM1x1MDVENFx1MDVENVx1MDVENlx1MDVEN1x1MDVEOFx1MDVEOVx1MDVEQVx1MDVEQlx1MDVEQ1x1MDVERFx1MDVERVx1MDVERlx1MDVFMFx1MDVFMVx1MDVFMlx1MDVFM1x1MDVFNFx1MDVFNVx1MDVFNlx1MDVFN1x1MDVFOFx1MDVFOVx1MDVFQVx1MDBBMlx1MDBBM1x1MDBBNVx1MjBBN1x1MDE5Mlx1MDBFMVx1MDBFRFx1MDBGM1x1MDBGQVx1MDBGMVx1MDBEMVx1MDBBQVx1MDBCQVx1MDBCRlx1MjMxMFx1MDBBQ1x1MDBCRFx1MDBCQ1x1MDBBMVx1MDBBQlx1MDBCQlx1MjU5MVx1MjU5Mlx1MjU5M1x1MjUwMlx1MjUyNFx1MjU2MVx1MjU2Mlx1MjU1Nlx1MjU1NVx1MjU2M1x1MjU1MVx1MjU1N1x1MjU1RFx1MjU1Q1x1MjU1Qlx1MjUxMFx1MjUxNFx1MjUzNFx1MjUyQ1x1MjUxQ1x1MjUwMFx1MjUzQ1x1MjU1RVx1MjU1Rlx1MjU1QVx1MjU1NFx1MjU2OVx1MjU2Nlx1MjU2MFx1MjU1MFx1MjU2Q1x1MjU2N1x1MjU2OFx1MjU2NFx1MjU2NVx1MjU1OVx1MjU1OFx1MjU1Mlx1MjU1M1x1MjU2Qlx1MjU2QVx1MjUxOFx1MjUwQ1x1MjU4OFx1MjU4NFx1MjU4Q1x1MjU5MFx1MjU4MFx1MDNCMVx1MDBERlx1MDM5M1x1MDNDMFx1MDNBM1x1MDNDM1x1MDBCNVx1MDNDNFx1MDNBNlx1MDM5OFx1MDNBOVx1MDNCNFx1MjIxRVx1MDNDNlx1MDNCNVx1MjIyOVx1MjI2MVx1MDBCMVx1MjI2NVx1MjI2NFx1MjMyMFx1MjMyMVx1MDBGN1x1MjI0OFx1MDBCMFx1MjIxOVx1MDBCN1x1MjIxQVx1MjA3Rlx1MDBCMlx1MjVBMFx1MDBBMFwiXG4gIH0sXG4gIFwiaWJtODYyXCI6IFwiY3A4NjJcIixcbiAgXCJjc2libTg2MlwiOiBcImNwODYyXCIsXG4gIFwiY3A4NjNcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDBDN1x1MDBGQ1x1MDBFOVx1MDBFMlx1MDBDMlx1MDBFMFx1MDBCNlx1MDBFN1x1MDBFQVx1MDBFQlx1MDBFOFx1MDBFRlx1MDBFRVx1MjAxN1x1MDBDMFx1MDBBN1x1MDBDOVx1MDBDOFx1MDBDQVx1MDBGNFx1MDBDQlx1MDBDRlx1MDBGQlx1MDBGOVx1MDBBNFx1MDBENFx1MDBEQ1x1MDBBMlx1MDBBM1x1MDBEOVx1MDBEQlx1MDE5Mlx1MDBBNlx1MDBCNFx1MDBGM1x1MDBGQVx1MDBBOFx1MDBCOFx1MDBCM1x1MDBBRlx1MDBDRVx1MjMxMFx1MDBBQ1x1MDBCRFx1MDBCQ1x1MDBCRVx1MDBBQlx1MDBCQlx1MjU5MVx1MjU5Mlx1MjU5M1x1MjUwMlx1MjUyNFx1MjU2MVx1MjU2Mlx1MjU1Nlx1MjU1NVx1MjU2M1x1MjU1MVx1MjU1N1x1MjU1RFx1MjU1Q1x1MjU1Qlx1MjUxMFx1MjUxNFx1MjUzNFx1MjUyQ1x1MjUxQ1x1MjUwMFx1MjUzQ1x1MjU1RVx1MjU1Rlx1MjU1QVx1MjU1NFx1MjU2OVx1MjU2Nlx1MjU2MFx1MjU1MFx1MjU2Q1x1MjU2N1x1MjU2OFx1MjU2NFx1MjU2NVx1MjU1OVx1MjU1OFx1MjU1Mlx1MjU1M1x1MjU2Qlx1MjU2QVx1MjUxOFx1MjUwQ1x1MjU4OFx1MjU4NFx1MjU4Q1x1MjU5MFx1MjU4MFx1MDNCMVx1MDBERlx1MDM5M1x1MDNDMFx1MDNBM1x1MDNDM1x1MDBCNVx1MDNDNFx1MDNBNlx1MDM5OFx1MDNBOVx1MDNCNFx1MjIxRVx1MDNDNlx1MDNCNVx1MjIyOVx1MjI2MVx1MDBCMVx1MjI2NVx1MjI2NFx1MjMyMFx1MjMyMVx1MDBGN1x1MjI0OFx1MDBCMFx1MjIxOVx1MDBCN1x1MjIxQVx1MjA3Rlx1MDBCMlx1MjVBMFx1MDBBMFwiXG4gIH0sXG4gIFwiaWJtODYzXCI6IFwiY3A4NjNcIixcbiAgXCJjc2libTg2M1wiOiBcImNwODYzXCIsXG4gIFwiY3A4NjRcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlxcdTAwMDBcXHUwMDAxXFx1MDAwMlxcdTAwMDNcXHUwMDA0XFx1MDAwNVxcdTAwMDZcXHUwMDA3XFxiXFx0XFxuXFx1MDAwYlxcZlxcclxcdTAwMGVcXHUwMDBmXFx1MDAxMFxcdTAwMTFcXHUwMDEyXFx1MDAxM1xcdTAwMTRcXHUwMDE1XFx1MDAxNlxcdTAwMTdcXHUwMDE4XFx1MDAxOVxcdTAwMWFcXHUwMDFiXFx1MDAxY1xcdTAwMWRcXHUwMDFlXFx1MDAxZiAhXFxcIiMkXHUwNjZBJicoKSorLC0uLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVpbXFxcXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX5cdTAwN0ZcdTAwQjBcdTAwQjdcdTIyMTlcdTIyMUFcdTI1OTJcdTI1MDBcdTI1MDJcdTI1M0NcdTI1MjRcdTI1MkNcdTI1MUNcdTI1MzRcdTI1MTBcdTI1MENcdTI1MTRcdTI1MThcdTAzQjJcdTIyMUVcdTAzQzZcdTAwQjFcdTAwQkRcdTAwQkNcdTIyNDhcdTAwQUJcdTAwQkJcdUZFRjdcdUZFRjhcdUZGRkRcdUZGRkRcdUZFRkJcdUZFRkNcdUZGRkRcdTAwQTBcdTAwQURcdUZFODJcdTAwQTNcdTAwQTRcdUZFODRcdUZGRkRcdUZGRkRcdUZFOEVcdUZFOEZcdUZFOTVcdUZFOTlcdTA2MENcdUZFOURcdUZFQTFcdUZFQTVcdTA2NjBcdTA2NjFcdTA2NjJcdTA2NjNcdTA2NjRcdTA2NjVcdTA2NjZcdTA2NjdcdTA2NjhcdTA2NjlcdUZFRDFcdTA2MUJcdUZFQjFcdUZFQjVcdUZFQjlcdTA2MUZcdTAwQTJcdUZFODBcdUZFODFcdUZFODNcdUZFODVcdUZFQ0FcdUZFOEJcdUZFOERcdUZFOTFcdUZFOTNcdUZFOTdcdUZFOUJcdUZFOUZcdUZFQTNcdUZFQTdcdUZFQTlcdUZFQUJcdUZFQURcdUZFQUZcdUZFQjNcdUZFQjdcdUZFQkJcdUZFQkZcdUZFQzFcdUZFQzVcdUZFQ0JcdUZFQ0ZcdTAwQTZcdTAwQUNcdTAwRjdcdTAwRDdcdUZFQzlcdTA2NDBcdUZFRDNcdUZFRDdcdUZFREJcdUZFREZcdUZFRTNcdUZFRTdcdUZFRUJcdUZFRURcdUZFRUZcdUZFRjNcdUZFQkRcdUZFQ0NcdUZFQ0VcdUZFQ0RcdUZFRTFcdUZFN0RcdTA2NTFcdUZFRTVcdUZFRTlcdUZFRUNcdUZFRjBcdUZFRjJcdUZFRDBcdUZFRDVcdUZFRjVcdUZFRjZcdUZFRERcdUZFRDlcdUZFRjFcdTI1QTBcdUZGRkRcIlxuICB9LFxuICBcImlibTg2NFwiOiBcImNwODY0XCIsXG4gIFwiY3NpYm04NjRcIjogXCJjcDg2NFwiLFxuICBcImNwODY1XCI6IHtcbiAgICBcInR5cGVcIjogXCJfc2Jjc1wiLFxuICAgIFwiY2hhcnNcIjogXCJcdTAwQzdcdTAwRkNcdTAwRTlcdTAwRTJcdTAwRTRcdTAwRTBcdTAwRTVcdTAwRTdcdTAwRUFcdTAwRUJcdTAwRThcdTAwRUZcdTAwRUVcdTAwRUNcdTAwQzRcdTAwQzVcdTAwQzlcdTAwRTZcdTAwQzZcdTAwRjRcdTAwRjZcdTAwRjJcdTAwRkJcdTAwRjlcdTAwRkZcdTAwRDZcdTAwRENcdTAwRjhcdTAwQTNcdTAwRDhcdTIwQTdcdTAxOTJcdTAwRTFcdTAwRURcdTAwRjNcdTAwRkFcdTAwRjFcdTAwRDFcdTAwQUFcdTAwQkFcdTAwQkZcdTIzMTBcdTAwQUNcdTAwQkRcdTAwQkNcdTAwQTFcdTAwQUJcdTAwQTRcdTI1OTFcdTI1OTJcdTI1OTNcdTI1MDJcdTI1MjRcdTI1NjFcdTI1NjJcdTI1NTZcdTI1NTVcdTI1NjNcdTI1NTFcdTI1NTdcdTI1NURcdTI1NUNcdTI1NUJcdTI1MTBcdTI1MTRcdTI1MzRcdTI1MkNcdTI1MUNcdTI1MDBcdTI1M0NcdTI1NUVcdTI1NUZcdTI1NUFcdTI1NTRcdTI1NjlcdTI1NjZcdTI1NjBcdTI1NTBcdTI1NkNcdTI1NjdcdTI1NjhcdTI1NjRcdTI1NjVcdTI1NTlcdTI1NThcdTI1NTJcdTI1NTNcdTI1NkJcdTI1NkFcdTI1MThcdTI1MENcdTI1ODhcdTI1ODRcdTI1OENcdTI1OTBcdTI1ODBcdTAzQjFcdTAwREZcdTAzOTNcdTAzQzBcdTAzQTNcdTAzQzNcdTAwQjVcdTAzQzRcdTAzQTZcdTAzOThcdTAzQTlcdTAzQjRcdTIyMUVcdTAzQzZcdTAzQjVcdTIyMjlcdTIyNjFcdTAwQjFcdTIyNjVcdTIyNjRcdTIzMjBcdTIzMjFcdTAwRjdcdTIyNDhcdTAwQjBcdTIyMTlcdTAwQjdcdTIyMUFcdTIwN0ZcdTAwQjJcdTI1QTBcdTAwQTBcIlxuICB9LFxuICBcImlibTg2NVwiOiBcImNwODY1XCIsXG4gIFwiY3NpYm04NjVcIjogXCJjcDg2NVwiLFxuICBcImNwODY2XCI6IHtcbiAgICBcInR5cGVcIjogXCJfc2Jjc1wiLFxuICAgIFwiY2hhcnNcIjogXCJcdTA0MTBcdTA0MTFcdTA0MTJcdTA0MTNcdTA0MTRcdTA0MTVcdTA0MTZcdTA0MTdcdTA0MThcdTA0MTlcdTA0MUFcdTA0MUJcdTA0MUNcdTA0MURcdTA0MUVcdTA0MUZcdTA0MjBcdTA0MjFcdTA0MjJcdTA0MjNcdTA0MjRcdTA0MjVcdTA0MjZcdTA0MjdcdTA0MjhcdTA0MjlcdTA0MkFcdTA0MkJcdTA0MkNcdTA0MkRcdTA0MkVcdTA0MkZcdTA0MzBcdTA0MzFcdTA0MzJcdTA0MzNcdTA0MzRcdTA0MzVcdTA0MzZcdTA0MzdcdTA0MzhcdTA0MzlcdTA0M0FcdTA0M0JcdTA0M0NcdTA0M0RcdTA0M0VcdTA0M0ZcdTI1OTFcdTI1OTJcdTI1OTNcdTI1MDJcdTI1MjRcdTI1NjFcdTI1NjJcdTI1NTZcdTI1NTVcdTI1NjNcdTI1NTFcdTI1NTdcdTI1NURcdTI1NUNcdTI1NUJcdTI1MTBcdTI1MTRcdTI1MzRcdTI1MkNcdTI1MUNcdTI1MDBcdTI1M0NcdTI1NUVcdTI1NUZcdTI1NUFcdTI1NTRcdTI1NjlcdTI1NjZcdTI1NjBcdTI1NTBcdTI1NkNcdTI1NjdcdTI1NjhcdTI1NjRcdTI1NjVcdTI1NTlcdTI1NThcdTI1NTJcdTI1NTNcdTI1NkJcdTI1NkFcdTI1MThcdTI1MENcdTI1ODhcdTI1ODRcdTI1OENcdTI1OTBcdTI1ODBcdTA0NDBcdTA0NDFcdTA0NDJcdTA0NDNcdTA0NDRcdTA0NDVcdTA0NDZcdTA0NDdcdTA0NDhcdTA0NDlcdTA0NEFcdTA0NEJcdTA0NENcdTA0NERcdTA0NEVcdTA0NEZcdTA0MDFcdTA0NTFcdTA0MDRcdTA0NTRcdTA0MDdcdTA0NTdcdTA0MEVcdTA0NUVcdTAwQjBcdTIyMTlcdTAwQjdcdTIyMUFcdTIxMTZcdTAwQTRcdTI1QTBcdTAwQTBcIlxuICB9LFxuICBcImlibTg2NlwiOiBcImNwODY2XCIsXG4gIFwiY3NpYm04NjZcIjogXCJjcDg2NlwiLFxuICBcImNwODY5XCI6IHtcbiAgICBcInR5cGVcIjogXCJfc2Jjc1wiLFxuICAgIFwiY2hhcnNcIjogXCJcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdTAzODZcdUZGRkRcdTAwQjdcdTAwQUNcdTAwQTZcdTIwMThcdTIwMTlcdTAzODhcdTIwMTVcdTAzODlcdTAzOEFcdTAzQUFcdTAzOENcdUZGRkRcdUZGRkRcdTAzOEVcdTAzQUJcdTAwQTlcdTAzOEZcdTAwQjJcdTAwQjNcdTAzQUNcdTAwQTNcdTAzQURcdTAzQUVcdTAzQUZcdTAzQ0FcdTAzOTBcdTAzQ0NcdTAzQ0RcdTAzOTFcdTAzOTJcdTAzOTNcdTAzOTRcdTAzOTVcdTAzOTZcdTAzOTdcdTAwQkRcdTAzOThcdTAzOTlcdTAwQUJcdTAwQkJcdTI1OTFcdTI1OTJcdTI1OTNcdTI1MDJcdTI1MjRcdTAzOUFcdTAzOUJcdTAzOUNcdTAzOURcdTI1NjNcdTI1NTFcdTI1NTdcdTI1NURcdTAzOUVcdTAzOUZcdTI1MTBcdTI1MTRcdTI1MzRcdTI1MkNcdTI1MUNcdTI1MDBcdTI1M0NcdTAzQTBcdTAzQTFcdTI1NUFcdTI1NTRcdTI1NjlcdTI1NjZcdTI1NjBcdTI1NTBcdTI1NkNcdTAzQTNcdTAzQTRcdTAzQTVcdTAzQTZcdTAzQTdcdTAzQThcdTAzQTlcdTAzQjFcdTAzQjJcdTAzQjNcdTI1MThcdTI1MENcdTI1ODhcdTI1ODRcdTAzQjRcdTAzQjVcdTI1ODBcdTAzQjZcdTAzQjdcdTAzQjhcdTAzQjlcdTAzQkFcdTAzQkJcdTAzQkNcdTAzQkRcdTAzQkVcdTAzQkZcdTAzQzBcdTAzQzFcdTAzQzNcdTAzQzJcdTAzQzRcdTAzODRcdTAwQURcdTAwQjFcdTAzQzVcdTAzQzZcdTAzQzdcdTAwQTdcdTAzQzhcdTAzODVcdTAwQjBcdTAwQThcdTAzQzlcdTAzQ0JcdTAzQjBcdTAzQ0VcdTI1QTBcdTAwQTBcIlxuICB9LFxuICBcImlibTg2OVwiOiBcImNwODY5XCIsXG4gIFwiY3NpYm04NjlcIjogXCJjcDg2OVwiLFxuICBcImNwOTIyXCI6IHtcbiAgICBcInR5cGVcIjogXCJfc2Jjc1wiLFxuICAgIFwiY2hhcnNcIjogXCJcdTAwODBcdTAwODFcdTAwODJcdTAwODNcdTAwODRcdTAwODVcdTAwODZcdTAwODdcdTAwODhcdTAwODlcdTAwOEFcdTAwOEJcdTAwOENcdTAwOERcdTAwOEVcdTAwOEZcdTAwOTBcdTAwOTFcdTAwOTJcdTAwOTNcdTAwOTRcdTAwOTVcdTAwOTZcdTAwOTdcdTAwOThcdTAwOTlcdTAwOUFcdTAwOUJcdTAwOUNcdTAwOURcdTAwOUVcdTAwOUZcdTAwQTBcdTAwQTFcdTAwQTJcdTAwQTNcdTAwQTRcdTAwQTVcdTAwQTZcdTAwQTdcdTAwQThcdTAwQTlcdTAwQUFcdTAwQUJcdTAwQUNcdTAwQURcdTAwQUVcdTIwM0VcdTAwQjBcdTAwQjFcdTAwQjJcdTAwQjNcdTAwQjRcdTAwQjVcdTAwQjZcdTAwQjdcdTAwQjhcdTAwQjlcdTAwQkFcdTAwQkJcdTAwQkNcdTAwQkRcdTAwQkVcdTAwQkZcdTAwQzBcdTAwQzFcdTAwQzJcdTAwQzNcdTAwQzRcdTAwQzVcdTAwQzZcdTAwQzdcdTAwQzhcdTAwQzlcdTAwQ0FcdTAwQ0JcdTAwQ0NcdTAwQ0RcdTAwQ0VcdTAwQ0ZcdTAxNjBcdTAwRDFcdTAwRDJcdTAwRDNcdTAwRDRcdTAwRDVcdTAwRDZcdTAwRDdcdTAwRDhcdTAwRDlcdTAwREFcdTAwREJcdTAwRENcdTAwRERcdTAxN0RcdTAwREZcdTAwRTBcdTAwRTFcdTAwRTJcdTAwRTNcdTAwRTRcdTAwRTVcdTAwRTZcdTAwRTdcdTAwRThcdTAwRTlcdTAwRUFcdTAwRUJcdTAwRUNcdTAwRURcdTAwRUVcdTAwRUZcdTAxNjFcdTAwRjFcdTAwRjJcdTAwRjNcdTAwRjRcdTAwRjVcdTAwRjZcdTAwRjdcdTAwRjhcdTAwRjlcdTAwRkFcdTAwRkJcdTAwRkNcdTAwRkRcdTAxN0VcdTAwRkZcIlxuICB9LFxuICBcImlibTkyMlwiOiBcImNwOTIyXCIsXG4gIFwiY3NpYm05MjJcIjogXCJjcDkyMlwiLFxuICBcImNwMTA0NlwiOiB7XG4gICAgXCJ0eXBlXCI6IFwiX3NiY3NcIixcbiAgICBcImNoYXJzXCI6IFwiXHVGRTg4XHUwMEQ3XHUwMEY3XHVGOEY2XHVGOEY1XHVGOEY0XHVGOEY3XHVGRTcxXHUwMDg4XHUyNUEwXHUyNTAyXHUyNTAwXHUyNTEwXHUyNTBDXHUyNTE0XHUyNTE4XHVGRTc5XHVGRTdCXHVGRTdEXHVGRTdGXHVGRTc3XHVGRThBXHVGRUYwXHVGRUYzXHVGRUYyXHVGRUNFXHVGRUNGXHVGRUQwXHVGRUY2XHVGRUY4XHVGRUZBXHVGRUZDXHUwMEEwXHVGOEZBXHVGOEY5XHVGOEY4XHUwMEE0XHVGOEZCXHVGRThCXHVGRTkxXHVGRTk3XHVGRTlCXHVGRTlGXHVGRUEzXHUwNjBDXHUwMEFEXHVGRUE3XHVGRUIzXHUwNjYwXHUwNjYxXHUwNjYyXHUwNjYzXHUwNjY0XHUwNjY1XHUwNjY2XHUwNjY3XHUwNjY4XHUwNjY5XHVGRUI3XHUwNjFCXHVGRUJCXHVGRUJGXHVGRUNBXHUwNjFGXHVGRUNCXHUwNjIxXHUwNjIyXHUwNjIzXHUwNjI0XHUwNjI1XHUwNjI2XHUwNjI3XHUwNjI4XHUwNjI5XHUwNjJBXHUwNjJCXHUwNjJDXHUwNjJEXHUwNjJFXHUwNjJGXHUwNjMwXHUwNjMxXHUwNjMyXHUwNjMzXHUwNjM0XHUwNjM1XHUwNjM2XHUwNjM3XHVGRUM3XHUwNjM5XHUwNjNBXHVGRUNDXHVGRTgyXHVGRTg0XHVGRThFXHVGRUQzXHUwNjQwXHUwNjQxXHUwNjQyXHUwNjQzXHUwNjQ0XHUwNjQ1XHUwNjQ2XHUwNjQ3XHUwNjQ4XHUwNjQ5XHUwNjRBXHUwNjRCXHUwNjRDXHUwNjREXHUwNjRFXHUwNjRGXHUwNjUwXHUwNjUxXHUwNjUyXHVGRUQ3XHVGRURCXHVGRURGXHVGOEZDXHVGRUY1XHVGRUY3XHVGRUY5XHVGRUZCXHVGRUUzXHVGRUU3XHVGRUVDXHVGRUU5XHVGRkZEXCJcbiAgfSxcbiAgXCJpYm0xMDQ2XCI6IFwiY3AxMDQ2XCIsXG4gIFwiY3NpYm0xMDQ2XCI6IFwiY3AxMDQ2XCIsXG4gIFwiY3AxMTI0XCI6IHtcbiAgICBcInR5cGVcIjogXCJfc2Jjc1wiLFxuICAgIFwiY2hhcnNcIjogXCJcdTAwODBcdTAwODFcdTAwODJcdTAwODNcdTAwODRcdTAwODVcdTAwODZcdTAwODdcdTAwODhcdTAwODlcdTAwOEFcdTAwOEJcdTAwOENcdTAwOERcdTAwOEVcdTAwOEZcdTAwOTBcdTAwOTFcdTAwOTJcdTAwOTNcdTAwOTRcdTAwOTVcdTAwOTZcdTAwOTdcdTAwOThcdTAwOTlcdTAwOUFcdTAwOUJcdTAwOUNcdTAwOURcdTAwOUVcdTAwOUZcdTAwQTBcdTA0MDFcdTA0MDJcdTA0OTBcdTA0MDRcdTA0MDVcdTA0MDZcdTA0MDdcdTA0MDhcdTA0MDlcdTA0MEFcdTA0MEJcdTA0MENcdTAwQURcdTA0MEVcdTA0MEZcdTA0MTBcdTA0MTFcdTA0MTJcdTA0MTNcdTA0MTRcdTA0MTVcdTA0MTZcdTA0MTdcdTA0MThcdTA0MTlcdTA0MUFcdTA0MUJcdTA0MUNcdTA0MURcdTA0MUVcdTA0MUZcdTA0MjBcdTA0MjFcdTA0MjJcdTA0MjNcdTA0MjRcdTA0MjVcdTA0MjZcdTA0MjdcdTA0MjhcdTA0MjlcdTA0MkFcdTA0MkJcdTA0MkNcdTA0MkRcdTA0MkVcdTA0MkZcdTA0MzBcdTA0MzFcdTA0MzJcdTA0MzNcdTA0MzRcdTA0MzVcdTA0MzZcdTA0MzdcdTA0MzhcdTA0MzlcdTA0M0FcdTA0M0JcdTA0M0NcdTA0M0RcdTA0M0VcdTA0M0ZcdTA0NDBcdTA0NDFcdTA0NDJcdTA0NDNcdTA0NDRcdTA0NDVcdTA0NDZcdTA0NDdcdTA0NDhcdTA0NDlcdTA0NEFcdTA0NEJcdTA0NENcdTA0NERcdTA0NEVcdTA0NEZcdTIxMTZcdTA0NTFcdTA0NTJcdTA0OTFcdTA0NTRcdTA0NTVcdTA0NTZcdTA0NTdcdTA0NThcdTA0NTlcdTA0NUFcdTA0NUJcdTA0NUNcdTAwQTdcdTA0NUVcdTA0NUZcIlxuICB9LFxuICBcImlibTExMjRcIjogXCJjcDExMjRcIixcbiAgXCJjc2libTExMjRcIjogXCJjcDExMjRcIixcbiAgXCJjcDExMjVcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDQxMFx1MDQxMVx1MDQxMlx1MDQxM1x1MDQxNFx1MDQxNVx1MDQxNlx1MDQxN1x1MDQxOFx1MDQxOVx1MDQxQVx1MDQxQlx1MDQxQ1x1MDQxRFx1MDQxRVx1MDQxRlx1MDQyMFx1MDQyMVx1MDQyMlx1MDQyM1x1MDQyNFx1MDQyNVx1MDQyNlx1MDQyN1x1MDQyOFx1MDQyOVx1MDQyQVx1MDQyQlx1MDQyQ1x1MDQyRFx1MDQyRVx1MDQyRlx1MDQzMFx1MDQzMVx1MDQzMlx1MDQzM1x1MDQzNFx1MDQzNVx1MDQzNlx1MDQzN1x1MDQzOFx1MDQzOVx1MDQzQVx1MDQzQlx1MDQzQ1x1MDQzRFx1MDQzRVx1MDQzRlx1MjU5MVx1MjU5Mlx1MjU5M1x1MjUwMlx1MjUyNFx1MjU2MVx1MjU2Mlx1MjU1Nlx1MjU1NVx1MjU2M1x1MjU1MVx1MjU1N1x1MjU1RFx1MjU1Q1x1MjU1Qlx1MjUxMFx1MjUxNFx1MjUzNFx1MjUyQ1x1MjUxQ1x1MjUwMFx1MjUzQ1x1MjU1RVx1MjU1Rlx1MjU1QVx1MjU1NFx1MjU2OVx1MjU2Nlx1MjU2MFx1MjU1MFx1MjU2Q1x1MjU2N1x1MjU2OFx1MjU2NFx1MjU2NVx1MjU1OVx1MjU1OFx1MjU1Mlx1MjU1M1x1MjU2Qlx1MjU2QVx1MjUxOFx1MjUwQ1x1MjU4OFx1MjU4NFx1MjU4Q1x1MjU5MFx1MjU4MFx1MDQ0MFx1MDQ0MVx1MDQ0Mlx1MDQ0M1x1MDQ0NFx1MDQ0NVx1MDQ0Nlx1MDQ0N1x1MDQ0OFx1MDQ0OVx1MDQ0QVx1MDQ0Qlx1MDQ0Q1x1MDQ0RFx1MDQ0RVx1MDQ0Rlx1MDQwMVx1MDQ1MVx1MDQ5MFx1MDQ5MVx1MDQwNFx1MDQ1NFx1MDQwNlx1MDQ1Nlx1MDQwN1x1MDQ1N1x1MDBCN1x1MjIxQVx1MjExNlx1MDBBNFx1MjVBMFx1MDBBMFwiXG4gIH0sXG4gIFwiaWJtMTEyNVwiOiBcImNwMTEyNVwiLFxuICBcImNzaWJtMTEyNVwiOiBcImNwMTEyNVwiLFxuICBcImNwMTEyOVwiOiB7XG4gICAgXCJ0eXBlXCI6IFwiX3NiY3NcIixcbiAgICBcImNoYXJzXCI6IFwiXHUwMDgwXHUwMDgxXHUwMDgyXHUwMDgzXHUwMDg0XHUwMDg1XHUwMDg2XHUwMDg3XHUwMDg4XHUwMDg5XHUwMDhBXHUwMDhCXHUwMDhDXHUwMDhEXHUwMDhFXHUwMDhGXHUwMDkwXHUwMDkxXHUwMDkyXHUwMDkzXHUwMDk0XHUwMDk1XHUwMDk2XHUwMDk3XHUwMDk4XHUwMDk5XHUwMDlBXHUwMDlCXHUwMDlDXHUwMDlEXHUwMDlFXHUwMDlGXHUwMEEwXHUwMEExXHUwMEEyXHUwMEEzXHUwMEE0XHUwMEE1XHUwMEE2XHUwMEE3XHUwMTUzXHUwMEE5XHUwMEFBXHUwMEFCXHUwMEFDXHUwMEFEXHUwMEFFXHUwMEFGXHUwMEIwXHUwMEIxXHUwMEIyXHUwMEIzXHUwMTc4XHUwMEI1XHUwMEI2XHUwMEI3XHUwMTUyXHUwMEI5XHUwMEJBXHUwMEJCXHUwMEJDXHUwMEJEXHUwMEJFXHUwMEJGXHUwMEMwXHUwMEMxXHUwMEMyXHUwMTAyXHUwMEM0XHUwMEM1XHUwMEM2XHUwMEM3XHUwMEM4XHUwMEM5XHUwMENBXHUwMENCXHUwMzAwXHUwMENEXHUwMENFXHUwMENGXHUwMTEwXHUwMEQxXHUwMzA5XHUwMEQzXHUwMEQ0XHUwMUEwXHUwMEQ2XHUwMEQ3XHUwMEQ4XHUwMEQ5XHUwMERBXHUwMERCXHUwMERDXHUwMUFGXHUwMzAzXHUwMERGXHUwMEUwXHUwMEUxXHUwMEUyXHUwMTAzXHUwMEU0XHUwMEU1XHUwMEU2XHUwMEU3XHUwMEU4XHUwMEU5XHUwMEVBXHUwMEVCXHUwMzAxXHUwMEVEXHUwMEVFXHUwMEVGXHUwMTExXHUwMEYxXHUwMzIzXHUwMEYzXHUwMEY0XHUwMUExXHUwMEY2XHUwMEY3XHUwMEY4XHUwMEY5XHUwMEZBXHUwMEZCXHUwMEZDXHUwMUIwXHUyMEFCXHUwMEZGXCJcbiAgfSxcbiAgXCJpYm0xMTI5XCI6IFwiY3AxMTI5XCIsXG4gIFwiY3NpYm0xMTI5XCI6IFwiY3AxMTI5XCIsXG4gIFwiY3AxMTMzXCI6IHtcbiAgICBcInR5cGVcIjogXCJfc2Jjc1wiLFxuICAgIFwiY2hhcnNcIjogXCJcdTAwODBcdTAwODFcdTAwODJcdTAwODNcdTAwODRcdTAwODVcdTAwODZcdTAwODdcdTAwODhcdTAwODlcdTAwOEFcdTAwOEJcdTAwOENcdTAwOERcdTAwOEVcdTAwOEZcdTAwOTBcdTAwOTFcdTAwOTJcdTAwOTNcdTAwOTRcdTAwOTVcdTAwOTZcdTAwOTdcdTAwOThcdTAwOTlcdTAwOUFcdTAwOUJcdTAwOUNcdTAwOURcdTAwOUVcdTAwOUZcdTAwQTBcdTBFODFcdTBFODJcdTBFODRcdTBFODdcdTBFODhcdTBFQUFcdTBFOEFcdTBFOERcdTBFOTRcdTBFOTVcdTBFOTZcdTBFOTdcdTBFOTlcdTBFOUFcdTBFOUJcdTBFOUNcdTBFOURcdTBFOUVcdTBFOUZcdTBFQTFcdTBFQTJcdTBFQTNcdTBFQTVcdTBFQTdcdTBFQUJcdTBFQURcdTBFQUVcdUZGRkRcdUZGRkRcdUZGRkRcdTBFQUZcdTBFQjBcdTBFQjJcdTBFQjNcdTBFQjRcdTBFQjVcdTBFQjZcdTBFQjdcdTBFQjhcdTBFQjlcdTBFQkNcdTBFQjFcdTBFQkJcdTBFQkRcdUZGRkRcdUZGRkRcdUZGRkRcdTBFQzBcdTBFQzFcdTBFQzJcdTBFQzNcdTBFQzRcdTBFQzhcdTBFQzlcdTBFQ0FcdTBFQ0JcdTBFQ0NcdTBFQ0RcdTBFQzZcdUZGRkRcdTBFRENcdTBFRERcdTIwQURcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdTBFRDBcdTBFRDFcdTBFRDJcdTBFRDNcdTBFRDRcdTBFRDVcdTBFRDZcdTBFRDdcdTBFRDhcdTBFRDlcdUZGRkRcdUZGRkRcdTAwQTJcdTAwQUNcdTAwQTZcdUZGRkRcIlxuICB9LFxuICBcImlibTExMzNcIjogXCJjcDExMzNcIixcbiAgXCJjc2libTExMzNcIjogXCJjcDExMzNcIixcbiAgXCJjcDExNjFcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1MEU0OFx1MEUwMVx1MEUwMlx1MEUwM1x1MEUwNFx1MEUwNVx1MEUwNlx1MEUwN1x1MEUwOFx1MEUwOVx1MEUwQVx1MEUwQlx1MEUwQ1x1MEUwRFx1MEUwRVx1MEUwRlx1MEUxMFx1MEUxMVx1MEUxMlx1MEUxM1x1MEUxNFx1MEUxNVx1MEUxNlx1MEUxN1x1MEUxOFx1MEUxOVx1MEUxQVx1MEUxQlx1MEUxQ1x1MEUxRFx1MEUxRVx1MEUxRlx1MEUyMFx1MEUyMVx1MEUyMlx1MEUyM1x1MEUyNFx1MEUyNVx1MEUyNlx1MEUyN1x1MEUyOFx1MEUyOVx1MEUyQVx1MEUyQlx1MEUyQ1x1MEUyRFx1MEUyRVx1MEUyRlx1MEUzMFx1MEUzMVx1MEUzMlx1MEUzM1x1MEUzNFx1MEUzNVx1MEUzNlx1MEUzN1x1MEUzOFx1MEUzOVx1MEUzQVx1MEU0OVx1MEU0QVx1MEU0Qlx1MjBBQ1x1MEUzRlx1MEU0MFx1MEU0MVx1MEU0Mlx1MEU0M1x1MEU0NFx1MEU0NVx1MEU0Nlx1MEU0N1x1MEU0OFx1MEU0OVx1MEU0QVx1MEU0Qlx1MEU0Q1x1MEU0RFx1MEU0RVx1MEU0Rlx1MEU1MFx1MEU1MVx1MEU1Mlx1MEU1M1x1MEU1NFx1MEU1NVx1MEU1Nlx1MEU1N1x1MEU1OFx1MEU1OVx1MEU1QVx1MEU1Qlx1MDBBMlx1MDBBQ1x1MDBBNlx1MDBBMFwiXG4gIH0sXG4gIFwiaWJtMTE2MVwiOiBcImNwMTE2MVwiLFxuICBcImNzaWJtMTE2MVwiOiBcImNwMTE2MVwiLFxuICBcImNwMTE2MlwiOiB7XG4gICAgXCJ0eXBlXCI6IFwiX3NiY3NcIixcbiAgICBcImNoYXJzXCI6IFwiXHUyMEFDXHUwMDgxXHUwMDgyXHUwMDgzXHUwMDg0XHUyMDI2XHUwMDg2XHUwMDg3XHUwMDg4XHUwMDg5XHUwMDhBXHUwMDhCXHUwMDhDXHUwMDhEXHUwMDhFXHUwMDhGXHUwMDkwXHUyMDE4XHUyMDE5XHUyMDFDXHUyMDFEXHUyMDIyXHUyMDEzXHUyMDE0XHUwMDk4XHUwMDk5XHUwMDlBXHUwMDlCXHUwMDlDXHUwMDlEXHUwMDlFXHUwMDlGXHUwMEEwXHUwRTAxXHUwRTAyXHUwRTAzXHUwRTA0XHUwRTA1XHUwRTA2XHUwRTA3XHUwRTA4XHUwRTA5XHUwRTBBXHUwRTBCXHUwRTBDXHUwRTBEXHUwRTBFXHUwRTBGXHUwRTEwXHUwRTExXHUwRTEyXHUwRTEzXHUwRTE0XHUwRTE1XHUwRTE2XHUwRTE3XHUwRTE4XHUwRTE5XHUwRTFBXHUwRTFCXHUwRTFDXHUwRTFEXHUwRTFFXHUwRTFGXHUwRTIwXHUwRTIxXHUwRTIyXHUwRTIzXHUwRTI0XHUwRTI1XHUwRTI2XHUwRTI3XHUwRTI4XHUwRTI5XHUwRTJBXHUwRTJCXHUwRTJDXHUwRTJEXHUwRTJFXHUwRTJGXHUwRTMwXHUwRTMxXHUwRTMyXHUwRTMzXHUwRTM0XHUwRTM1XHUwRTM2XHUwRTM3XHUwRTM4XHUwRTM5XHUwRTNBXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHUwRTNGXHUwRTQwXHUwRTQxXHUwRTQyXHUwRTQzXHUwRTQ0XHUwRTQ1XHUwRTQ2XHUwRTQ3XHUwRTQ4XHUwRTQ5XHUwRTRBXHUwRTRCXHUwRTRDXHUwRTREXHUwRTRFXHUwRTRGXHUwRTUwXHUwRTUxXHUwRTUyXHUwRTUzXHUwRTU0XHUwRTU1XHUwRTU2XHUwRTU3XHUwRTU4XHUwRTU5XHUwRTVBXHUwRTVCXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXCJcbiAgfSxcbiAgXCJpYm0xMTYyXCI6IFwiY3AxMTYyXCIsXG4gIFwiY3NpYm0xMTYyXCI6IFwiY3AxMTYyXCIsXG4gIFwiY3AxMTYzXCI6IHtcbiAgICBcInR5cGVcIjogXCJfc2Jjc1wiLFxuICAgIFwiY2hhcnNcIjogXCJcdTAwODBcdTAwODFcdTAwODJcdTAwODNcdTAwODRcdTAwODVcdTAwODZcdTAwODdcdTAwODhcdTAwODlcdTAwOEFcdTAwOEJcdTAwOENcdTAwOERcdTAwOEVcdTAwOEZcdTAwOTBcdTAwOTFcdTAwOTJcdTAwOTNcdTAwOTRcdTAwOTVcdTAwOTZcdTAwOTdcdTAwOThcdTAwOTlcdTAwOUFcdTAwOUJcdTAwOUNcdTAwOURcdTAwOUVcdTAwOUZcdTAwQTBcdTAwQTFcdTAwQTJcdTAwQTNcdTIwQUNcdTAwQTVcdTAwQTZcdTAwQTdcdTAxNTNcdTAwQTlcdTAwQUFcdTAwQUJcdTAwQUNcdTAwQURcdTAwQUVcdTAwQUZcdTAwQjBcdTAwQjFcdTAwQjJcdTAwQjNcdTAxNzhcdTAwQjVcdTAwQjZcdTAwQjdcdTAxNTJcdTAwQjlcdTAwQkFcdTAwQkJcdTAwQkNcdTAwQkRcdTAwQkVcdTAwQkZcdTAwQzBcdTAwQzFcdTAwQzJcdTAxMDJcdTAwQzRcdTAwQzVcdTAwQzZcdTAwQzdcdTAwQzhcdTAwQzlcdTAwQ0FcdTAwQ0JcdTAzMDBcdTAwQ0RcdTAwQ0VcdTAwQ0ZcdTAxMTBcdTAwRDFcdTAzMDlcdTAwRDNcdTAwRDRcdTAxQTBcdTAwRDZcdTAwRDdcdTAwRDhcdTAwRDlcdTAwREFcdTAwREJcdTAwRENcdTAxQUZcdTAzMDNcdTAwREZcdTAwRTBcdTAwRTFcdTAwRTJcdTAxMDNcdTAwRTRcdTAwRTVcdTAwRTZcdTAwRTdcdTAwRThcdTAwRTlcdTAwRUFcdTAwRUJcdTAzMDFcdTAwRURcdTAwRUVcdTAwRUZcdTAxMTFcdTAwRjFcdTAzMjNcdTAwRjNcdTAwRjRcdTAxQTFcdTAwRjZcdTAwRjdcdTAwRjhcdTAwRjlcdTAwRkFcdTAwRkJcdTAwRkNcdTAxQjBcdTIwQUJcdTAwRkZcIlxuICB9LFxuICBcImlibTExNjNcIjogXCJjcDExNjNcIixcbiAgXCJjc2libTExNjNcIjogXCJjcDExNjNcIixcbiAgXCJtYWNjcm9hdGlhblwiOiB7XG4gICAgXCJ0eXBlXCI6IFwiX3NiY3NcIixcbiAgICBcImNoYXJzXCI6IFwiXHUwMEM0XHUwMEM1XHUwMEM3XHUwMEM5XHUwMEQxXHUwMEQ2XHUwMERDXHUwMEUxXHUwMEUwXHUwMEUyXHUwMEU0XHUwMEUzXHUwMEU1XHUwMEU3XHUwMEU5XHUwMEU4XHUwMEVBXHUwMEVCXHUwMEVEXHUwMEVDXHUwMEVFXHUwMEVGXHUwMEYxXHUwMEYzXHUwMEYyXHUwMEY0XHUwMEY2XHUwMEY1XHUwMEZBXHUwMEY5XHUwMEZCXHUwMEZDXHUyMDIwXHUwMEIwXHUwMEEyXHUwMEEzXHUwMEE3XHUyMDIyXHUwMEI2XHUwMERGXHUwMEFFXHUwMTYwXHUyMTIyXHUwMEI0XHUwMEE4XHUyMjYwXHUwMTdEXHUwMEQ4XHUyMjFFXHUwMEIxXHUyMjY0XHUyMjY1XHUyMjA2XHUwMEI1XHUyMjAyXHUyMjExXHUyMjBGXHUwMTYxXHUyMjJCXHUwMEFBXHUwMEJBXHUyMTI2XHUwMTdFXHUwMEY4XHUwMEJGXHUwMEExXHUwMEFDXHUyMjFBXHUwMTkyXHUyMjQ4XHUwMTA2XHUwMEFCXHUwMTBDXHUyMDI2XHUwMEEwXHUwMEMwXHUwMEMzXHUwMEQ1XHUwMTUyXHUwMTUzXHUwMTEwXHUyMDE0XHUyMDFDXHUyMDFEXHUyMDE4XHUyMDE5XHUwMEY3XHUyNUNBXHVGRkZEXHUwMEE5XHUyMDQ0XHUwMEE0XHUyMDM5XHUyMDNBXHUwMEM2XHUwMEJCXHUyMDEzXHUwMEI3XHUyMDFBXHUyMDFFXHUyMDMwXHUwMEMyXHUwMTA3XHUwMEMxXHUwMTBEXHUwMEM4XHUwMENEXHUwMENFXHUwMENGXHUwMENDXHUwMEQzXHUwMEQ0XHUwMTExXHUwMEQyXHUwMERBXHUwMERCXHUwMEQ5XHUwMTMxXHUwMkM2XHUwMkRDXHUwMEFGXHUwM0MwXHUwMENCXHUwMkRBXHUwMEI4XHUwMENBXHUwMEU2XHUwMkM3XCJcbiAgfSxcbiAgXCJtYWNjeXJpbGxpY1wiOiB7XG4gICAgXCJ0eXBlXCI6IFwiX3NiY3NcIixcbiAgICBcImNoYXJzXCI6IFwiXHUwNDEwXHUwNDExXHUwNDEyXHUwNDEzXHUwNDE0XHUwNDE1XHUwNDE2XHUwNDE3XHUwNDE4XHUwNDE5XHUwNDFBXHUwNDFCXHUwNDFDXHUwNDFEXHUwNDFFXHUwNDFGXHUwNDIwXHUwNDIxXHUwNDIyXHUwNDIzXHUwNDI0XHUwNDI1XHUwNDI2XHUwNDI3XHUwNDI4XHUwNDI5XHUwNDJBXHUwNDJCXHUwNDJDXHUwNDJEXHUwNDJFXHUwNDJGXHUyMDIwXHUwMEIwXHUwMEEyXHUwMEEzXHUwMEE3XHUyMDIyXHUwMEI2XHUwNDA2XHUwMEFFXHUwMEE5XHUyMTIyXHUwNDAyXHUwNDUyXHUyMjYwXHUwNDAzXHUwNDUzXHUyMjFFXHUwMEIxXHUyMjY0XHUyMjY1XHUwNDU2XHUwMEI1XHUyMjAyXHUwNDA4XHUwNDA0XHUwNDU0XHUwNDA3XHUwNDU3XHUwNDA5XHUwNDU5XHUwNDBBXHUwNDVBXHUwNDU4XHUwNDA1XHUwMEFDXHUyMjFBXHUwMTkyXHUyMjQ4XHUyMjA2XHUwMEFCXHUwMEJCXHUyMDI2XHUwMEEwXHUwNDBCXHUwNDVCXHUwNDBDXHUwNDVDXHUwNDU1XHUyMDEzXHUyMDE0XHUyMDFDXHUyMDFEXHUyMDE4XHUyMDE5XHUwMEY3XHUyMDFFXHUwNDBFXHUwNDVFXHUwNDBGXHUwNDVGXHUyMTE2XHUwNDAxXHUwNDUxXHUwNDRGXHUwNDMwXHUwNDMxXHUwNDMyXHUwNDMzXHUwNDM0XHUwNDM1XHUwNDM2XHUwNDM3XHUwNDM4XHUwNDM5XHUwNDNBXHUwNDNCXHUwNDNDXHUwNDNEXHUwNDNFXHUwNDNGXHUwNDQwXHUwNDQxXHUwNDQyXHUwNDQzXHUwNDQ0XHUwNDQ1XHUwNDQ2XHUwNDQ3XHUwNDQ4XHUwNDQ5XHUwNDRBXHUwNDRCXHUwNDRDXHUwNDREXHUwNDRFXHUwMEE0XCJcbiAgfSxcbiAgXCJtYWNncmVla1wiOiB7XG4gICAgXCJ0eXBlXCI6IFwiX3NiY3NcIixcbiAgICBcImNoYXJzXCI6IFwiXHUwMEM0XHUwMEI5XHUwMEIyXHUwMEM5XHUwMEIzXHUwMEQ2XHUwMERDXHUwMzg1XHUwMEUwXHUwMEUyXHUwMEU0XHUwMzg0XHUwMEE4XHUwMEU3XHUwMEU5XHUwMEU4XHUwMEVBXHUwMEVCXHUwMEEzXHUyMTIyXHUwMEVFXHUwMEVGXHUyMDIyXHUwMEJEXHUyMDMwXHUwMEY0XHUwMEY2XHUwMEE2XHUwMEFEXHUwMEY5XHUwMEZCXHUwMEZDXHUyMDIwXHUwMzkzXHUwMzk0XHUwMzk4XHUwMzlCXHUwMzlFXHUwM0EwXHUwMERGXHUwMEFFXHUwMEE5XHUwM0EzXHUwM0FBXHUwMEE3XHUyMjYwXHUwMEIwXHUwMzg3XHUwMzkxXHUwMEIxXHUyMjY0XHUyMjY1XHUwMEE1XHUwMzkyXHUwMzk1XHUwMzk2XHUwMzk3XHUwMzk5XHUwMzlBXHUwMzlDXHUwM0E2XHUwM0FCXHUwM0E4XHUwM0E5XHUwM0FDXHUwMzlEXHUwMEFDXHUwMzlGXHUwM0ExXHUyMjQ4XHUwM0E0XHUwMEFCXHUwMEJCXHUyMDI2XHUwMEEwXHUwM0E1XHUwM0E3XHUwMzg2XHUwMzg4XHUwMTUzXHUyMDEzXHUyMDE1XHUyMDFDXHUyMDFEXHUyMDE4XHUyMDE5XHUwMEY3XHUwMzg5XHUwMzhBXHUwMzhDXHUwMzhFXHUwM0FEXHUwM0FFXHUwM0FGXHUwM0NDXHUwMzhGXHUwM0NEXHUwM0IxXHUwM0IyXHUwM0M4XHUwM0I0XHUwM0I1XHUwM0M2XHUwM0IzXHUwM0I3XHUwM0I5XHUwM0JFXHUwM0JBXHUwM0JCXHUwM0JDXHUwM0JEXHUwM0JGXHUwM0MwXHUwM0NFXHUwM0MxXHUwM0MzXHUwM0M0XHUwM0I4XHUwM0M5XHUwM0MyXHUwM0M3XHUwM0M1XHUwM0I2XHUwM0NBXHUwM0NCXHUwMzkwXHUwM0IwXHVGRkZEXCJcbiAgfSxcbiAgXCJtYWNpY2VsYW5kXCI6IHtcbiAgICBcInR5cGVcIjogXCJfc2Jjc1wiLFxuICAgIFwiY2hhcnNcIjogXCJcdTAwQzRcdTAwQzVcdTAwQzdcdTAwQzlcdTAwRDFcdTAwRDZcdTAwRENcdTAwRTFcdTAwRTBcdTAwRTJcdTAwRTRcdTAwRTNcdTAwRTVcdTAwRTdcdTAwRTlcdTAwRThcdTAwRUFcdTAwRUJcdTAwRURcdTAwRUNcdTAwRUVcdTAwRUZcdTAwRjFcdTAwRjNcdTAwRjJcdTAwRjRcdTAwRjZcdTAwRjVcdTAwRkFcdTAwRjlcdTAwRkJcdTAwRkNcdTAwRERcdTAwQjBcdTAwQTJcdTAwQTNcdTAwQTdcdTIwMjJcdTAwQjZcdTAwREZcdTAwQUVcdTAwQTlcdTIxMjJcdTAwQjRcdTAwQThcdTIyNjBcdTAwQzZcdTAwRDhcdTIyMUVcdTAwQjFcdTIyNjRcdTIyNjVcdTAwQTVcdTAwQjVcdTIyMDJcdTIyMTFcdTIyMEZcdTAzQzBcdTIyMkJcdTAwQUFcdTAwQkFcdTIxMjZcdTAwRTZcdTAwRjhcdTAwQkZcdTAwQTFcdTAwQUNcdTIyMUFcdTAxOTJcdTIyNDhcdTIyMDZcdTAwQUJcdTAwQkJcdTIwMjZcdTAwQTBcdTAwQzBcdTAwQzNcdTAwRDVcdTAxNTJcdTAxNTNcdTIwMTNcdTIwMTRcdTIwMUNcdTIwMURcdTIwMThcdTIwMTlcdTAwRjdcdTI1Q0FcdTAwRkZcdTAxNzhcdTIwNDRcdTAwQTRcdTAwRDBcdTAwRjBcdTAwREVcdTAwRkVcdTAwRkRcdTAwQjdcdTIwMUFcdTIwMUVcdTIwMzBcdTAwQzJcdTAwQ0FcdTAwQzFcdTAwQ0JcdTAwQzhcdTAwQ0RcdTAwQ0VcdTAwQ0ZcdTAwQ0NcdTAwRDNcdTAwRDRcdUZGRkRcdTAwRDJcdTAwREFcdTAwREJcdTAwRDlcdTAxMzFcdTAyQzZcdTAyRENcdTAwQUZcdTAyRDhcdTAyRDlcdTAyREFcdTAwQjhcdTAyRERcdTAyREJcdTAyQzdcIlxuICB9LFxuICBcIm1hY3JvbWFuXCI6IHtcbiAgICBcInR5cGVcIjogXCJfc2Jjc1wiLFxuICAgIFwiY2hhcnNcIjogXCJcdTAwQzRcdTAwQzVcdTAwQzdcdTAwQzlcdTAwRDFcdTAwRDZcdTAwRENcdTAwRTFcdTAwRTBcdTAwRTJcdTAwRTRcdTAwRTNcdTAwRTVcdTAwRTdcdTAwRTlcdTAwRThcdTAwRUFcdTAwRUJcdTAwRURcdTAwRUNcdTAwRUVcdTAwRUZcdTAwRjFcdTAwRjNcdTAwRjJcdTAwRjRcdTAwRjZcdTAwRjVcdTAwRkFcdTAwRjlcdTAwRkJcdTAwRkNcdTIwMjBcdTAwQjBcdTAwQTJcdTAwQTNcdTAwQTdcdTIwMjJcdTAwQjZcdTAwREZcdTAwQUVcdTAwQTlcdTIxMjJcdTAwQjRcdTAwQThcdTIyNjBcdTAwQzZcdTAwRDhcdTIyMUVcdTAwQjFcdTIyNjRcdTIyNjVcdTAwQTVcdTAwQjVcdTIyMDJcdTIyMTFcdTIyMEZcdTAzQzBcdTIyMkJcdTAwQUFcdTAwQkFcdTIxMjZcdTAwRTZcdTAwRjhcdTAwQkZcdTAwQTFcdTAwQUNcdTIyMUFcdTAxOTJcdTIyNDhcdTIyMDZcdTAwQUJcdTAwQkJcdTIwMjZcdTAwQTBcdTAwQzBcdTAwQzNcdTAwRDVcdTAxNTJcdTAxNTNcdTIwMTNcdTIwMTRcdTIwMUNcdTIwMURcdTIwMThcdTIwMTlcdTAwRjdcdTI1Q0FcdTAwRkZcdTAxNzhcdTIwNDRcdTAwQTRcdTIwMzlcdTIwM0FcdUZCMDFcdUZCMDJcdTIwMjFcdTAwQjdcdTIwMUFcdTIwMUVcdTIwMzBcdTAwQzJcdTAwQ0FcdTAwQzFcdTAwQ0JcdTAwQzhcdTAwQ0RcdTAwQ0VcdTAwQ0ZcdTAwQ0NcdTAwRDNcdTAwRDRcdUZGRkRcdTAwRDJcdTAwREFcdTAwREJcdTAwRDlcdTAxMzFcdTAyQzZcdTAyRENcdTAwQUZcdTAyRDhcdTAyRDlcdTAyREFcdTAwQjhcdTAyRERcdTAyREJcdTAyQzdcIlxuICB9LFxuICBcIm1hY3JvbWFuaWFcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDBDNFx1MDBDNVx1MDBDN1x1MDBDOVx1MDBEMVx1MDBENlx1MDBEQ1x1MDBFMVx1MDBFMFx1MDBFMlx1MDBFNFx1MDBFM1x1MDBFNVx1MDBFN1x1MDBFOVx1MDBFOFx1MDBFQVx1MDBFQlx1MDBFRFx1MDBFQ1x1MDBFRVx1MDBFRlx1MDBGMVx1MDBGM1x1MDBGMlx1MDBGNFx1MDBGNlx1MDBGNVx1MDBGQVx1MDBGOVx1MDBGQlx1MDBGQ1x1MjAyMFx1MDBCMFx1MDBBMlx1MDBBM1x1MDBBN1x1MjAyMlx1MDBCNlx1MDBERlx1MDBBRVx1MDBBOVx1MjEyMlx1MDBCNFx1MDBBOFx1MjI2MFx1MDEwMlx1MDE1RVx1MjIxRVx1MDBCMVx1MjI2NFx1MjI2NVx1MDBBNVx1MDBCNVx1MjIwMlx1MjIxMVx1MjIwRlx1MDNDMFx1MjIyQlx1MDBBQVx1MDBCQVx1MjEyNlx1MDEwM1x1MDE1Rlx1MDBCRlx1MDBBMVx1MDBBQ1x1MjIxQVx1MDE5Mlx1MjI0OFx1MjIwNlx1MDBBQlx1MDBCQlx1MjAyNlx1MDBBMFx1MDBDMFx1MDBDM1x1MDBENVx1MDE1Mlx1MDE1M1x1MjAxM1x1MjAxNFx1MjAxQ1x1MjAxRFx1MjAxOFx1MjAxOVx1MDBGN1x1MjVDQVx1MDBGRlx1MDE3OFx1MjA0NFx1MDBBNFx1MjAzOVx1MjAzQVx1MDE2Mlx1MDE2M1x1MjAyMVx1MDBCN1x1MjAxQVx1MjAxRVx1MjAzMFx1MDBDMlx1MDBDQVx1MDBDMVx1MDBDQlx1MDBDOFx1MDBDRFx1MDBDRVx1MDBDRlx1MDBDQ1x1MDBEM1x1MDBENFx1RkZGRFx1MDBEMlx1MDBEQVx1MDBEQlx1MDBEOVx1MDEzMVx1MDJDNlx1MDJEQ1x1MDBBRlx1MDJEOFx1MDJEOVx1MDJEQVx1MDBCOFx1MDJERFx1MDJEQlx1MDJDN1wiXG4gIH0sXG4gIFwibWFjdGhhaVwiOiB7XG4gICAgXCJ0eXBlXCI6IFwiX3NiY3NcIixcbiAgICBcImNoYXJzXCI6IFwiXHUwMEFCXHUwMEJCXHUyMDI2XHVGODhDXHVGODhGXHVGODkyXHVGODk1XHVGODk4XHVGODhCXHVGODhFXHVGODkxXHVGODk0XHVGODk3XHUyMDFDXHUyMDFEXHVGODk5XHVGRkZEXHUyMDIyXHVGODg0XHVGODg5XHVGODg1XHVGODg2XHVGODg3XHVGODg4XHVGODhBXHVGODhEXHVGODkwXHVGODkzXHVGODk2XHUyMDE4XHUyMDE5XHVGRkZEXHUwMEEwXHUwRTAxXHUwRTAyXHUwRTAzXHUwRTA0XHUwRTA1XHUwRTA2XHUwRTA3XHUwRTA4XHUwRTA5XHUwRTBBXHUwRTBCXHUwRTBDXHUwRTBEXHUwRTBFXHUwRTBGXHUwRTEwXHUwRTExXHUwRTEyXHUwRTEzXHUwRTE0XHUwRTE1XHUwRTE2XHUwRTE3XHUwRTE4XHUwRTE5XHUwRTFBXHUwRTFCXHUwRTFDXHUwRTFEXHUwRTFFXHUwRTFGXHUwRTIwXHUwRTIxXHUwRTIyXHUwRTIzXHUwRTI0XHUwRTI1XHUwRTI2XHUwRTI3XHUwRTI4XHUwRTI5XHUwRTJBXHUwRTJCXHUwRTJDXHUwRTJEXHUwRTJFXHUwRTJGXHUwRTMwXHUwRTMxXHUwRTMyXHUwRTMzXHUwRTM0XHUwRTM1XHUwRTM2XHUwRTM3XHUwRTM4XHUwRTM5XHUwRTNBXHVGRUZGXHUyMDBCXHUyMDEzXHUyMDE0XHUwRTNGXHUwRTQwXHUwRTQxXHUwRTQyXHUwRTQzXHUwRTQ0XHUwRTQ1XHUwRTQ2XHUwRTQ3XHUwRTQ4XHUwRTQ5XHUwRTRBXHUwRTRCXHUwRTRDXHUwRTREXHUyMTIyXHUwRTRGXHUwRTUwXHUwRTUxXHUwRTUyXHUwRTUzXHUwRTU0XHUwRTU1XHUwRTU2XHUwRTU3XHUwRTU4XHUwRTU5XHUwMEFFXHUwMEE5XHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXCJcbiAgfSxcbiAgXCJtYWN0dXJraXNoXCI6IHtcbiAgICBcInR5cGVcIjogXCJfc2Jjc1wiLFxuICAgIFwiY2hhcnNcIjogXCJcdTAwQzRcdTAwQzVcdTAwQzdcdTAwQzlcdTAwRDFcdTAwRDZcdTAwRENcdTAwRTFcdTAwRTBcdTAwRTJcdTAwRTRcdTAwRTNcdTAwRTVcdTAwRTdcdTAwRTlcdTAwRThcdTAwRUFcdTAwRUJcdTAwRURcdTAwRUNcdTAwRUVcdTAwRUZcdTAwRjFcdTAwRjNcdTAwRjJcdTAwRjRcdTAwRjZcdTAwRjVcdTAwRkFcdTAwRjlcdTAwRkJcdTAwRkNcdTIwMjBcdTAwQjBcdTAwQTJcdTAwQTNcdTAwQTdcdTIwMjJcdTAwQjZcdTAwREZcdTAwQUVcdTAwQTlcdTIxMjJcdTAwQjRcdTAwQThcdTIyNjBcdTAwQzZcdTAwRDhcdTIyMUVcdTAwQjFcdTIyNjRcdTIyNjVcdTAwQTVcdTAwQjVcdTIyMDJcdTIyMTFcdTIyMEZcdTAzQzBcdTIyMkJcdTAwQUFcdTAwQkFcdTIxMjZcdTAwRTZcdTAwRjhcdTAwQkZcdTAwQTFcdTAwQUNcdTIyMUFcdTAxOTJcdTIyNDhcdTIyMDZcdTAwQUJcdTAwQkJcdTIwMjZcdTAwQTBcdTAwQzBcdTAwQzNcdTAwRDVcdTAxNTJcdTAxNTNcdTIwMTNcdTIwMTRcdTIwMUNcdTIwMURcdTIwMThcdTIwMTlcdTAwRjdcdTI1Q0FcdTAwRkZcdTAxNzhcdTAxMUVcdTAxMUZcdTAxMzBcdTAxMzFcdTAxNUVcdTAxNUZcdTIwMjFcdTAwQjdcdTIwMUFcdTIwMUVcdTIwMzBcdTAwQzJcdTAwQ0FcdTAwQzFcdTAwQ0JcdTAwQzhcdTAwQ0RcdTAwQ0VcdTAwQ0ZcdTAwQ0NcdTAwRDNcdTAwRDRcdUZGRkRcdTAwRDJcdTAwREFcdTAwREJcdTAwRDlcdUZGRkRcdTAyQzZcdTAyRENcdTAwQUZcdTAyRDhcdTAyRDlcdTAyREFcdTAwQjhcdTAyRERcdTAyREJcdTAyQzdcIlxuICB9LFxuICBcIm1hY3VrcmFpbmVcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDQxMFx1MDQxMVx1MDQxMlx1MDQxM1x1MDQxNFx1MDQxNVx1MDQxNlx1MDQxN1x1MDQxOFx1MDQxOVx1MDQxQVx1MDQxQlx1MDQxQ1x1MDQxRFx1MDQxRVx1MDQxRlx1MDQyMFx1MDQyMVx1MDQyMlx1MDQyM1x1MDQyNFx1MDQyNVx1MDQyNlx1MDQyN1x1MDQyOFx1MDQyOVx1MDQyQVx1MDQyQlx1MDQyQ1x1MDQyRFx1MDQyRVx1MDQyRlx1MjAyMFx1MDBCMFx1MDQ5MFx1MDBBM1x1MDBBN1x1MjAyMlx1MDBCNlx1MDQwNlx1MDBBRVx1MDBBOVx1MjEyMlx1MDQwMlx1MDQ1Mlx1MjI2MFx1MDQwM1x1MDQ1M1x1MjIxRVx1MDBCMVx1MjI2NFx1MjI2NVx1MDQ1Nlx1MDBCNVx1MDQ5MVx1MDQwOFx1MDQwNFx1MDQ1NFx1MDQwN1x1MDQ1N1x1MDQwOVx1MDQ1OVx1MDQwQVx1MDQ1QVx1MDQ1OFx1MDQwNVx1MDBBQ1x1MjIxQVx1MDE5Mlx1MjI0OFx1MjIwNlx1MDBBQlx1MDBCQlx1MjAyNlx1MDBBMFx1MDQwQlx1MDQ1Qlx1MDQwQ1x1MDQ1Q1x1MDQ1NVx1MjAxM1x1MjAxNFx1MjAxQ1x1MjAxRFx1MjAxOFx1MjAxOVx1MDBGN1x1MjAxRVx1MDQwRVx1MDQ1RVx1MDQwRlx1MDQ1Rlx1MjExNlx1MDQwMVx1MDQ1MVx1MDQ0Rlx1MDQzMFx1MDQzMVx1MDQzMlx1MDQzM1x1MDQzNFx1MDQzNVx1MDQzNlx1MDQzN1x1MDQzOFx1MDQzOVx1MDQzQVx1MDQzQlx1MDQzQ1x1MDQzRFx1MDQzRVx1MDQzRlx1MDQ0MFx1MDQ0MVx1MDQ0Mlx1MDQ0M1x1MDQ0NFx1MDQ0NVx1MDQ0Nlx1MDQ0N1x1MDQ0OFx1MDQ0OVx1MDQ0QVx1MDQ0Qlx1MDQ0Q1x1MDQ0RFx1MDQ0RVx1MDBBNFwiXG4gIH0sXG4gIFwia29pOHJcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MjUwMFx1MjUwMlx1MjUwQ1x1MjUxMFx1MjUxNFx1MjUxOFx1MjUxQ1x1MjUyNFx1MjUyQ1x1MjUzNFx1MjUzQ1x1MjU4MFx1MjU4NFx1MjU4OFx1MjU4Q1x1MjU5MFx1MjU5MVx1MjU5Mlx1MjU5M1x1MjMyMFx1MjVBMFx1MjIxOVx1MjIxQVx1MjI0OFx1MjI2NFx1MjI2NVx1MDBBMFx1MjMyMVx1MDBCMFx1MDBCMlx1MDBCN1x1MDBGN1x1MjU1MFx1MjU1MVx1MjU1Mlx1MDQ1MVx1MjU1M1x1MjU1NFx1MjU1NVx1MjU1Nlx1MjU1N1x1MjU1OFx1MjU1OVx1MjU1QVx1MjU1Qlx1MjU1Q1x1MjU1RFx1MjU1RVx1MjU1Rlx1MjU2MFx1MjU2MVx1MDQwMVx1MjU2Mlx1MjU2M1x1MjU2NFx1MjU2NVx1MjU2Nlx1MjU2N1x1MjU2OFx1MjU2OVx1MjU2QVx1MjU2Qlx1MjU2Q1x1MDBBOVx1MDQ0RVx1MDQzMFx1MDQzMVx1MDQ0Nlx1MDQzNFx1MDQzNVx1MDQ0NFx1MDQzM1x1MDQ0NVx1MDQzOFx1MDQzOVx1MDQzQVx1MDQzQlx1MDQzQ1x1MDQzRFx1MDQzRVx1MDQzRlx1MDQ0Rlx1MDQ0MFx1MDQ0MVx1MDQ0Mlx1MDQ0M1x1MDQzNlx1MDQzMlx1MDQ0Q1x1MDQ0Qlx1MDQzN1x1MDQ0OFx1MDQ0RFx1MDQ0OVx1MDQ0N1x1MDQ0QVx1MDQyRVx1MDQxMFx1MDQxMVx1MDQyNlx1MDQxNFx1MDQxNVx1MDQyNFx1MDQxM1x1MDQyNVx1MDQxOFx1MDQxOVx1MDQxQVx1MDQxQlx1MDQxQ1x1MDQxRFx1MDQxRVx1MDQxRlx1MDQyRlx1MDQyMFx1MDQyMVx1MDQyMlx1MDQyM1x1MDQxNlx1MDQxMlx1MDQyQ1x1MDQyQlx1MDQxN1x1MDQyOFx1MDQyRFx1MDQyOVx1MDQyN1x1MDQyQVwiXG4gIH0sXG4gIFwia29pOHVcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MjUwMFx1MjUwMlx1MjUwQ1x1MjUxMFx1MjUxNFx1MjUxOFx1MjUxQ1x1MjUyNFx1MjUyQ1x1MjUzNFx1MjUzQ1x1MjU4MFx1MjU4NFx1MjU4OFx1MjU4Q1x1MjU5MFx1MjU5MVx1MjU5Mlx1MjU5M1x1MjMyMFx1MjVBMFx1MjIxOVx1MjIxQVx1MjI0OFx1MjI2NFx1MjI2NVx1MDBBMFx1MjMyMVx1MDBCMFx1MDBCMlx1MDBCN1x1MDBGN1x1MjU1MFx1MjU1MVx1MjU1Mlx1MDQ1MVx1MDQ1NFx1MjU1NFx1MDQ1Nlx1MDQ1N1x1MjU1N1x1MjU1OFx1MjU1OVx1MjU1QVx1MjU1Qlx1MDQ5MVx1MjU1RFx1MjU1RVx1MjU1Rlx1MjU2MFx1MjU2MVx1MDQwMVx1MDQwNFx1MjU2M1x1MDQwNlx1MDQwN1x1MjU2Nlx1MjU2N1x1MjU2OFx1MjU2OVx1MjU2QVx1MDQ5MFx1MjU2Q1x1MDBBOVx1MDQ0RVx1MDQzMFx1MDQzMVx1MDQ0Nlx1MDQzNFx1MDQzNVx1MDQ0NFx1MDQzM1x1MDQ0NVx1MDQzOFx1MDQzOVx1MDQzQVx1MDQzQlx1MDQzQ1x1MDQzRFx1MDQzRVx1MDQzRlx1MDQ0Rlx1MDQ0MFx1MDQ0MVx1MDQ0Mlx1MDQ0M1x1MDQzNlx1MDQzMlx1MDQ0Q1x1MDQ0Qlx1MDQzN1x1MDQ0OFx1MDQ0RFx1MDQ0OVx1MDQ0N1x1MDQ0QVx1MDQyRVx1MDQxMFx1MDQxMVx1MDQyNlx1MDQxNFx1MDQxNVx1MDQyNFx1MDQxM1x1MDQyNVx1MDQxOFx1MDQxOVx1MDQxQVx1MDQxQlx1MDQxQ1x1MDQxRFx1MDQxRVx1MDQxRlx1MDQyRlx1MDQyMFx1MDQyMVx1MDQyMlx1MDQyM1x1MDQxNlx1MDQxMlx1MDQyQ1x1MDQyQlx1MDQxN1x1MDQyOFx1MDQyRFx1MDQyOVx1MDQyN1x1MDQyQVwiXG4gIH0sXG4gIFwia29pOHJ1XCI6IHtcbiAgICBcInR5cGVcIjogXCJfc2Jjc1wiLFxuICAgIFwiY2hhcnNcIjogXCJcdTI1MDBcdTI1MDJcdTI1MENcdTI1MTBcdTI1MTRcdTI1MThcdTI1MUNcdTI1MjRcdTI1MkNcdTI1MzRcdTI1M0NcdTI1ODBcdTI1ODRcdTI1ODhcdTI1OENcdTI1OTBcdTI1OTFcdTI1OTJcdTI1OTNcdTIzMjBcdTI1QTBcdTIyMTlcdTIyMUFcdTIyNDhcdTIyNjRcdTIyNjVcdTAwQTBcdTIzMjFcdTAwQjBcdTAwQjJcdTAwQjdcdTAwRjdcdTI1NTBcdTI1NTFcdTI1NTJcdTA0NTFcdTA0NTRcdTI1NTRcdTA0NTZcdTA0NTdcdTI1NTdcdTI1NThcdTI1NTlcdTI1NUFcdTI1NUJcdTA0OTFcdTA0NUVcdTI1NUVcdTI1NUZcdTI1NjBcdTI1NjFcdTA0MDFcdTA0MDRcdTI1NjNcdTA0MDZcdTA0MDdcdTI1NjZcdTI1NjdcdTI1NjhcdTI1NjlcdTI1NkFcdTA0OTBcdTA0MEVcdTAwQTlcdTA0NEVcdTA0MzBcdTA0MzFcdTA0NDZcdTA0MzRcdTA0MzVcdTA0NDRcdTA0MzNcdTA0NDVcdTA0MzhcdTA0MzlcdTA0M0FcdTA0M0JcdTA0M0NcdTA0M0RcdTA0M0VcdTA0M0ZcdTA0NEZcdTA0NDBcdTA0NDFcdTA0NDJcdTA0NDNcdTA0MzZcdTA0MzJcdTA0NENcdTA0NEJcdTA0MzdcdTA0NDhcdTA0NERcdTA0NDlcdTA0NDdcdTA0NEFcdTA0MkVcdTA0MTBcdTA0MTFcdTA0MjZcdTA0MTRcdTA0MTVcdTA0MjRcdTA0MTNcdTA0MjVcdTA0MThcdTA0MTlcdTA0MUFcdTA0MUJcdTA0MUNcdTA0MURcdTA0MUVcdTA0MUZcdTA0MkZcdTA0MjBcdTA0MjFcdTA0MjJcdTA0MjNcdTA0MTZcdTA0MTJcdTA0MkNcdTA0MkJcdTA0MTdcdTA0MjhcdTA0MkRcdTA0MjlcdTA0MjdcdTA0MkFcIlxuICB9LFxuICBcImtvaTh0XCI6IHtcbiAgICBcInR5cGVcIjogXCJfc2Jjc1wiLFxuICAgIFwiY2hhcnNcIjogXCJcdTA0OUJcdTA0OTNcdTIwMUFcdTA0OTJcdTIwMUVcdTIwMjZcdTIwMjBcdTIwMjFcdUZGRkRcdTIwMzBcdTA0QjNcdTIwMzlcdTA0QjJcdTA0QjdcdTA0QjZcdUZGRkRcdTA0OUFcdTIwMThcdTIwMTlcdTIwMUNcdTIwMURcdTIwMjJcdTIwMTNcdTIwMTRcdUZGRkRcdTIxMjJcdUZGRkRcdTIwM0FcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdTA0RUZcdTA0RUVcdTA0NTFcdTAwQTRcdTA0RTNcdTAwQTZcdTAwQTdcdUZGRkRcdUZGRkRcdUZGRkRcdTAwQUJcdTAwQUNcdTAwQURcdTAwQUVcdUZGRkRcdTAwQjBcdTAwQjFcdTAwQjJcdTA0MDFcdUZGRkRcdTA0RTJcdTAwQjZcdTAwQjdcdUZGRkRcdTIxMTZcdUZGRkRcdTAwQkJcdUZGRkRcdUZGRkRcdUZGRkRcdTAwQTlcdTA0NEVcdTA0MzBcdTA0MzFcdTA0NDZcdTA0MzRcdTA0MzVcdTA0NDRcdTA0MzNcdTA0NDVcdTA0MzhcdTA0MzlcdTA0M0FcdTA0M0JcdTA0M0NcdTA0M0RcdTA0M0VcdTA0M0ZcdTA0NEZcdTA0NDBcdTA0NDFcdTA0NDJcdTA0NDNcdTA0MzZcdTA0MzJcdTA0NENcdTA0NEJcdTA0MzdcdTA0NDhcdTA0NERcdTA0NDlcdTA0NDdcdTA0NEFcdTA0MkVcdTA0MTBcdTA0MTFcdTA0MjZcdTA0MTRcdTA0MTVcdTA0MjRcdTA0MTNcdTA0MjVcdTA0MThcdTA0MTlcdTA0MUFcdTA0MUJcdTA0MUNcdTA0MURcdTA0MUVcdTA0MUZcdTA0MkZcdTA0MjBcdTA0MjFcdTA0MjJcdTA0MjNcdTA0MTZcdTA0MTJcdTA0MkNcdTA0MkJcdTA0MTdcdTA0MjhcdTA0MkRcdTA0MjlcdTA0MjdcdTA0MkFcIlxuICB9LFxuICBcImFybXNjaWk4XCI6IHtcbiAgICBcInR5cGVcIjogXCJfc2Jjc1wiLFxuICAgIFwiY2hhcnNcIjogXCJcdTAwODBcdTAwODFcdTAwODJcdTAwODNcdTAwODRcdTAwODVcdTAwODZcdTAwODdcdTAwODhcdTAwODlcdTAwOEFcdTAwOEJcdTAwOENcdTAwOERcdTAwOEVcdTAwOEZcdTAwOTBcdTAwOTFcdTAwOTJcdTAwOTNcdTAwOTRcdTAwOTVcdTAwOTZcdTAwOTdcdTAwOThcdTAwOTlcdTAwOUFcdTAwOUJcdTAwOUNcdTAwOURcdTAwOUVcdTAwOUZcdTAwQTBcdUZGRkRcdTA1ODdcdTA1ODkpKFx1MDBCQlx1MDBBQlx1MjAxNC5cdTA1NUQsLVx1MDU4QVx1MjAyNlx1MDU1Q1x1MDU1Qlx1MDU1RVx1MDUzMVx1MDU2MVx1MDUzMlx1MDU2Mlx1MDUzM1x1MDU2M1x1MDUzNFx1MDU2NFx1MDUzNVx1MDU2NVx1MDUzNlx1MDU2Nlx1MDUzN1x1MDU2N1x1MDUzOFx1MDU2OFx1MDUzOVx1MDU2OVx1MDUzQVx1MDU2QVx1MDUzQlx1MDU2Qlx1MDUzQ1x1MDU2Q1x1MDUzRFx1MDU2RFx1MDUzRVx1MDU2RVx1MDUzRlx1MDU2Rlx1MDU0MFx1MDU3MFx1MDU0MVx1MDU3MVx1MDU0Mlx1MDU3Mlx1MDU0M1x1MDU3M1x1MDU0NFx1MDU3NFx1MDU0NVx1MDU3NVx1MDU0Nlx1MDU3Nlx1MDU0N1x1MDU3N1x1MDU0OFx1MDU3OFx1MDU0OVx1MDU3OVx1MDU0QVx1MDU3QVx1MDU0Qlx1MDU3Qlx1MDU0Q1x1MDU3Q1x1MDU0RFx1MDU3RFx1MDU0RVx1MDU3RVx1MDU0Rlx1MDU3Rlx1MDU1MFx1MDU4MFx1MDU1MVx1MDU4MVx1MDU1Mlx1MDU4Mlx1MDU1M1x1MDU4M1x1MDU1NFx1MDU4NFx1MDU1NVx1MDU4NVx1MDU1Nlx1MDU4Nlx1MDU1QVx1RkZGRFwiXG4gIH0sXG4gIFwicmsxMDQ4XCI6IHtcbiAgICBcInR5cGVcIjogXCJfc2Jjc1wiLFxuICAgIFwiY2hhcnNcIjogXCJcdTA0MDJcdTA0MDNcdTIwMUFcdTA0NTNcdTIwMUVcdTIwMjZcdTIwMjBcdTIwMjFcdTIwQUNcdTIwMzBcdTA0MDlcdTIwMzlcdTA0MEFcdTA0OUFcdTA0QkFcdTA0MEZcdTA0NTJcdTIwMThcdTIwMTlcdTIwMUNcdTIwMURcdTIwMjJcdTIwMTNcdTIwMTRcdUZGRkRcdTIxMjJcdTA0NTlcdTIwM0FcdTA0NUFcdTA0OUJcdTA0QkJcdTA0NUZcdTAwQTBcdTA0QjBcdTA0QjFcdTA0RDhcdTAwQTRcdTA0RThcdTAwQTZcdTAwQTdcdTA0MDFcdTAwQTlcdTA0OTJcdTAwQUJcdTAwQUNcdTAwQURcdTAwQUVcdTA0QUVcdTAwQjBcdTAwQjFcdTA0MDZcdTA0NTZcdTA0RTlcdTAwQjVcdTAwQjZcdTAwQjdcdTA0NTFcdTIxMTZcdTA0OTNcdTAwQkJcdTA0RDlcdTA0QTJcdTA0QTNcdTA0QUZcdTA0MTBcdTA0MTFcdTA0MTJcdTA0MTNcdTA0MTRcdTA0MTVcdTA0MTZcdTA0MTdcdTA0MThcdTA0MTlcdTA0MUFcdTA0MUJcdTA0MUNcdTA0MURcdTA0MUVcdTA0MUZcdTA0MjBcdTA0MjFcdTA0MjJcdTA0MjNcdTA0MjRcdTA0MjVcdTA0MjZcdTA0MjdcdTA0MjhcdTA0MjlcdTA0MkFcdTA0MkJcdTA0MkNcdTA0MkRcdTA0MkVcdTA0MkZcdTA0MzBcdTA0MzFcdTA0MzJcdTA0MzNcdTA0MzRcdTA0MzVcdTA0MzZcdTA0MzdcdTA0MzhcdTA0MzlcdTA0M0FcdTA0M0JcdTA0M0NcdTA0M0RcdTA0M0VcdTA0M0ZcdTA0NDBcdTA0NDFcdTA0NDJcdTA0NDNcdTA0NDRcdTA0NDVcdTA0NDZcdTA0NDdcdTA0NDhcdTA0NDlcdTA0NEFcdTA0NEJcdTA0NENcdTA0NERcdTA0NEVcdTA0NEZcIlxuICB9LFxuICBcInRjdm5cIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlxcdTAwMDBcdTAwREFcdTFFRTRcXHUwMDAzXHUxRUVBXHUxRUVDXHUxRUVFXFx1MDAwN1xcYlxcdFxcblxcdTAwMGJcXGZcXHJcXHUwMDBlXFx1MDAwZlxcdTAwMTBcdTFFRThcdTFFRjBcdTFFRjJcdTFFRjZcdTFFRjhcdTAwRERcdTFFRjRcXHUwMDE4XFx1MDAxOVxcdTAwMWFcXHUwMDFiXFx1MDAxY1xcdTAwMWRcXHUwMDFlXFx1MDAxZiAhXFxcIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/QEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaW1xcXFxdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+XHUwMDdGXHUwMEMwXHUxRUEyXHUwMEMzXHUwMEMxXHUxRUEwXHUxRUI2XHUxRUFDXHUwMEM4XHUxRUJBXHUxRUJDXHUwMEM5XHUxRUI4XHUxRUM2XHUwMENDXHUxRUM4XHUwMTI4XHUwMENEXHUxRUNBXHUwMEQyXHUxRUNFXHUwMEQ1XHUwMEQzXHUxRUNDXHUxRUQ4XHUxRURDXHUxRURFXHUxRUUwXHUxRURBXHUxRUUyXHUwMEQ5XHUxRUU2XHUwMTY4XHUwMEEwXHUwMTAyXHUwMEMyXHUwMENBXHUwMEQ0XHUwMUEwXHUwMUFGXHUwMTEwXHUwMTAzXHUwMEUyXHUwMEVBXHUwMEY0XHUwMUExXHUwMUIwXHUwMTExXHUxRUIwXHUwMzAwXHUwMzA5XHUwMzAzXHUwMzAxXHUwMzIzXHUwMEUwXHUxRUEzXHUwMEUzXHUwMEUxXHUxRUExXHUxRUIyXHUxRUIxXHUxRUIzXHUxRUI1XHUxRUFGXHUxRUI0XHUxRUFFXHUxRUE2XHUxRUE4XHUxRUFBXHUxRUE0XHUxRUMwXHUxRUI3XHUxRUE3XHUxRUE5XHUxRUFCXHUxRUE1XHUxRUFEXHUwMEU4XHUxRUMyXHUxRUJCXHUxRUJEXHUwMEU5XHUxRUI5XHUxRUMxXHUxRUMzXHUxRUM1XHUxRUJGXHUxRUM3XHUwMEVDXHUxRUM5XHUxRUM0XHUxRUJFXHUxRUQyXHUwMTI5XHUwMEVEXHUxRUNCXHUwMEYyXHUxRUQ0XHUxRUNGXHUwMEY1XHUwMEYzXHUxRUNEXHUxRUQzXHUxRUQ1XHUxRUQ3XHUxRUQxXHUxRUQ5XHUxRUREXHUxRURGXHUxRUUxXHUxRURCXHUxRUUzXHUwMEY5XHUxRUQ2XHUxRUU3XHUwMTY5XHUwMEZBXHUxRUU1XHUxRUVCXHUxRUVEXHUxRUVGXHUxRUU5XHUxRUYxXHUxRUYzXHUxRUY3XHUxRUY5XHUwMEZEXHUxRUY1XHUxRUQwXCJcbiAgfSxcbiAgXCJnZW9yZ2lhbmFjYWRlbXlcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDA4MFx1MDA4MVx1MjAxQVx1MDE5Mlx1MjAxRVx1MjAyNlx1MjAyMFx1MjAyMVx1MDJDNlx1MjAzMFx1MDE2MFx1MjAzOVx1MDE1Mlx1MDA4RFx1MDA4RVx1MDA4Rlx1MDA5MFx1MjAxOFx1MjAxOVx1MjAxQ1x1MjAxRFx1MjAyMlx1MjAxM1x1MjAxNFx1MDJEQ1x1MjEyMlx1MDE2MVx1MjAzQVx1MDE1M1x1MDA5RFx1MDA5RVx1MDE3OFx1MDBBMFx1MDBBMVx1MDBBMlx1MDBBM1x1MDBBNFx1MDBBNVx1MDBBNlx1MDBBN1x1MDBBOFx1MDBBOVx1MDBBQVx1MDBBQlx1MDBBQ1x1MDBBRFx1MDBBRVx1MDBBRlx1MDBCMFx1MDBCMVx1MDBCMlx1MDBCM1x1MDBCNFx1MDBCNVx1MDBCNlx1MDBCN1x1MDBCOFx1MDBCOVx1MDBCQVx1MDBCQlx1MDBCQ1x1MDBCRFx1MDBCRVx1MDBCRlx1MTBEMFx1MTBEMVx1MTBEMlx1MTBEM1x1MTBENFx1MTBENVx1MTBENlx1MTBEN1x1MTBEOFx1MTBEOVx1MTBEQVx1MTBEQlx1MTBEQ1x1MTBERFx1MTBERVx1MTBERlx1MTBFMFx1MTBFMVx1MTBFMlx1MTBFM1x1MTBFNFx1MTBFNVx1MTBFNlx1MTBFN1x1MTBFOFx1MTBFOVx1MTBFQVx1MTBFQlx1MTBFQ1x1MTBFRFx1MTBFRVx1MTBFRlx1MTBGMFx1MTBGMVx1MTBGMlx1MTBGM1x1MTBGNFx1MTBGNVx1MTBGNlx1MDBFN1x1MDBFOFx1MDBFOVx1MDBFQVx1MDBFQlx1MDBFQ1x1MDBFRFx1MDBFRVx1MDBFRlx1MDBGMFx1MDBGMVx1MDBGMlx1MDBGM1x1MDBGNFx1MDBGNVx1MDBGNlx1MDBGN1x1MDBGOFx1MDBGOVx1MDBGQVx1MDBGQlx1MDBGQ1x1MDBGRFx1MDBGRVx1MDBGRlwiXG4gIH0sXG4gIFwiZ2VvcmdpYW5wc1wiOiB7XG4gICAgXCJ0eXBlXCI6IFwiX3NiY3NcIixcbiAgICBcImNoYXJzXCI6IFwiXHUwMDgwXHUwMDgxXHUyMDFBXHUwMTkyXHUyMDFFXHUyMDI2XHUyMDIwXHUyMDIxXHUwMkM2XHUyMDMwXHUwMTYwXHUyMDM5XHUwMTUyXHUwMDhEXHUwMDhFXHUwMDhGXHUwMDkwXHUyMDE4XHUyMDE5XHUyMDFDXHUyMDFEXHUyMDIyXHUyMDEzXHUyMDE0XHUwMkRDXHUyMTIyXHUwMTYxXHUyMDNBXHUwMTUzXHUwMDlEXHUwMDlFXHUwMTc4XHUwMEEwXHUwMEExXHUwMEEyXHUwMEEzXHUwMEE0XHUwMEE1XHUwMEE2XHUwMEE3XHUwMEE4XHUwMEE5XHUwMEFBXHUwMEFCXHUwMEFDXHUwMEFEXHUwMEFFXHUwMEFGXHUwMEIwXHUwMEIxXHUwMEIyXHUwMEIzXHUwMEI0XHUwMEI1XHUwMEI2XHUwMEI3XHUwMEI4XHUwMEI5XHUwMEJBXHUwMEJCXHUwMEJDXHUwMEJEXHUwMEJFXHUwMEJGXHUxMEQwXHUxMEQxXHUxMEQyXHUxMEQzXHUxMEQ0XHUxMEQ1XHUxMEQ2XHUxMEYxXHUxMEQ3XHUxMEQ4XHUxMEQ5XHUxMERBXHUxMERCXHUxMERDXHUxMEYyXHUxMEREXHUxMERFXHUxMERGXHUxMEUwXHUxMEUxXHUxMEUyXHUxMEYzXHUxMEUzXHUxMEU0XHUxMEU1XHUxMEU2XHUxMEU3XHUxMEU4XHUxMEU5XHUxMEVBXHUxMEVCXHUxMEVDXHUxMEVEXHUxMEVFXHUxMEY0XHUxMEVGXHUxMEYwXHUxMEY1XHUwMEU2XHUwMEU3XHUwMEU4XHUwMEU5XHUwMEVBXHUwMEVCXHUwMEVDXHUwMEVEXHUwMEVFXHUwMEVGXHUwMEYwXHUwMEYxXHUwMEYyXHUwMEYzXHUwMEY0XHUwMEY1XHUwMEY2XHUwMEY3XHUwMEY4XHUwMEY5XHUwMEZBXHUwMEZCXHUwMEZDXHUwMEZEXHUwMEZFXHUwMEZGXCJcbiAgfSxcbiAgXCJwdDE1NFwiOiB7XG4gICAgXCJ0eXBlXCI6IFwiX3NiY3NcIixcbiAgICBcImNoYXJzXCI6IFwiXHUwNDk2XHUwNDkyXHUwNEVFXHUwNDkzXHUyMDFFXHUyMDI2XHUwNEI2XHUwNEFFXHUwNEIyXHUwNEFGXHUwNEEwXHUwNEUyXHUwNEEyXHUwNDlBXHUwNEJBXHUwNEI4XHUwNDk3XHUyMDE4XHUyMDE5XHUyMDFDXHUyMDFEXHUyMDIyXHUyMDEzXHUyMDE0XHUwNEIzXHUwNEI3XHUwNEExXHUwNEUzXHUwNEEzXHUwNDlCXHUwNEJCXHUwNEI5XHUwMEEwXHUwNDBFXHUwNDVFXHUwNDA4XHUwNEU4XHUwNDk4XHUwNEIwXHUwMEE3XHUwNDAxXHUwMEE5XHUwNEQ4XHUwMEFCXHUwMEFDXHUwNEVGXHUwMEFFXHUwNDlDXHUwMEIwXHUwNEIxXHUwNDA2XHUwNDU2XHUwNDk5XHUwNEU5XHUwMEI2XHUwMEI3XHUwNDUxXHUyMTE2XHUwNEQ5XHUwMEJCXHUwNDU4XHUwNEFBXHUwNEFCXHUwNDlEXHUwNDEwXHUwNDExXHUwNDEyXHUwNDEzXHUwNDE0XHUwNDE1XHUwNDE2XHUwNDE3XHUwNDE4XHUwNDE5XHUwNDFBXHUwNDFCXHUwNDFDXHUwNDFEXHUwNDFFXHUwNDFGXHUwNDIwXHUwNDIxXHUwNDIyXHUwNDIzXHUwNDI0XHUwNDI1XHUwNDI2XHUwNDI3XHUwNDI4XHUwNDI5XHUwNDJBXHUwNDJCXHUwNDJDXHUwNDJEXHUwNDJFXHUwNDJGXHUwNDMwXHUwNDMxXHUwNDMyXHUwNDMzXHUwNDM0XHUwNDM1XHUwNDM2XHUwNDM3XHUwNDM4XHUwNDM5XHUwNDNBXHUwNDNCXHUwNDNDXHUwNDNEXHUwNDNFXHUwNDNGXHUwNDQwXHUwNDQxXHUwNDQyXHUwNDQzXHUwNDQ0XHUwNDQ1XHUwNDQ2XHUwNDQ3XHUwNDQ4XHUwNDQ5XHUwNDRBXHUwNDRCXHUwNDRDXHUwNDREXHUwNDRFXHUwNDRGXCJcbiAgfSxcbiAgXCJ2aXNjaWlcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlxcdTAwMDBcXHUwMDAxXHUxRUIyXFx1MDAwM1xcdTAwMDRcdTFFQjRcdTFFQUFcXHUwMDA3XFxiXFx0XFxuXFx1MDAwYlxcZlxcclxcdTAwMGVcXHUwMDBmXFx1MDAxMFxcdTAwMTFcXHUwMDEyXFx1MDAxM1x1MUVGNlxcdTAwMTVcXHUwMDE2XFx1MDAxN1xcdTAwMThcdTFFRjhcXHUwMDFhXFx1MDAxYlxcdTAwMWNcXHUwMDFkXHUxRUY0XFx1MDAxZiAhXFxcIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/QEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaW1xcXFxdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+XHUwMDdGXHUxRUEwXHUxRUFFXHUxRUIwXHUxRUI2XHUxRUE0XHUxRUE2XHUxRUE4XHUxRUFDXHUxRUJDXHUxRUI4XHUxRUJFXHUxRUMwXHUxRUMyXHUxRUM0XHUxRUM2XHUxRUQwXHUxRUQyXHUxRUQ0XHUxRUQ2XHUxRUQ4XHUxRUUyXHUxRURBXHUxRURDXHUxRURFXHUxRUNBXHUxRUNFXHUxRUNDXHUxRUM4XHUxRUU2XHUwMTY4XHUxRUU0XHUxRUYyXHUwMEQ1XHUxRUFGXHUxRUIxXHUxRUI3XHUxRUE1XHUxRUE3XHUxRUE5XHUxRUFEXHUxRUJEXHUxRUI5XHUxRUJGXHUxRUMxXHUxRUMzXHUxRUM1XHUxRUM3XHUxRUQxXHUxRUQzXHUxRUQ1XHUxRUQ3XHUxRUUwXHUwMUEwXHUxRUQ5XHUxRUREXHUxRURGXHUxRUNCXHUxRUYwXHUxRUU4XHUxRUVBXHUxRUVDXHUwMUExXHUxRURCXHUwMUFGXHUwMEMwXHUwMEMxXHUwMEMyXHUwMEMzXHUxRUEyXHUwMTAyXHUxRUIzXHUxRUI1XHUwMEM4XHUwMEM5XHUwMENBXHUxRUJBXHUwMENDXHUwMENEXHUwMTI4XHUxRUYzXHUwMTEwXHUxRUU5XHUwMEQyXHUwMEQzXHUwMEQ0XHUxRUExXHUxRUY3XHUxRUVCXHUxRUVEXHUwMEQ5XHUwMERBXHUxRUY5XHUxRUY1XHUwMEREXHUxRUUxXHUwMUIwXHUwMEUwXHUwMEUxXHUwMEUyXHUwMEUzXHUxRUEzXHUwMTAzXHUxRUVGXHUxRUFCXHUwMEU4XHUwMEU5XHUwMEVBXHUxRUJCXHUwMEVDXHUwMEVEXHUwMTI5XHUxRUM5XHUwMTExXHUxRUYxXHUwMEYyXHUwMEYzXHUwMEY0XHUwMEY1XHUxRUNGXHUxRUNEXHUxRUU1XHUwMEY5XHUwMEZBXHUwMTY5XHUxRUU3XHUwMEZEXHUxRUUzXHUxRUVFXCJcbiAgfSxcbiAgXCJpc282NDZjblwiOiB7XG4gICAgXCJ0eXBlXCI6IFwiX3NiY3NcIixcbiAgICBcImNoYXJzXCI6IFwiXFx1MDAwMFxcdTAwMDFcXHUwMDAyXFx1MDAwM1xcdTAwMDRcXHUwMDA1XFx1MDAwNlxcdTAwMDdcXGJcXHRcXG5cXHUwMDBiXFxmXFxyXFx1MDAwZVxcdTAwMGZcXHUwMDEwXFx1MDAxMVxcdTAwMTJcXHUwMDEzXFx1MDAxNFxcdTAwMTVcXHUwMDE2XFx1MDAxN1xcdTAwMThcXHUwMDE5XFx1MDAxYVxcdTAwMWJcXHUwMDFjXFx1MDAxZFxcdTAwMWVcXHUwMDFmICFcXFwiI1x1MDBBNSUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWltcXFxcXV5fYGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6e3x9XHUyMDNFXHUwMDdGXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXCJcbiAgfSxcbiAgXCJpc282NDZqcFwiOiB7XG4gICAgXCJ0eXBlXCI6IFwiX3NiY3NcIixcbiAgICBcImNoYXJzXCI6IFwiXFx1MDAwMFxcdTAwMDFcXHUwMDAyXFx1MDAwM1xcdTAwMDRcXHUwMDA1XFx1MDAwNlxcdTAwMDdcXGJcXHRcXG5cXHUwMDBiXFxmXFxyXFx1MDAwZVxcdTAwMGZcXHUwMDEwXFx1MDAxMVxcdTAwMTJcXHUwMDEzXFx1MDAxNFxcdTAwMTVcXHUwMDE2XFx1MDAxN1xcdTAwMThcXHUwMDE5XFx1MDAxYVxcdTAwMWJcXHUwMDFjXFx1MDAxZFxcdTAwMWVcXHUwMDFmICFcXFwiIyQlJicoKSorLC0uLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVpbXHUwMEE1XV5fYGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6e3x9XHUyMDNFXHUwMDdGXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXHVGRkZEXCJcbiAgfSxcbiAgXCJocHJvbWFuOFwiOiB7XG4gICAgXCJ0eXBlXCI6IFwiX3NiY3NcIixcbiAgICBcImNoYXJzXCI6IFwiXHUwMDgwXHUwMDgxXHUwMDgyXHUwMDgzXHUwMDg0XHUwMDg1XHUwMDg2XHUwMDg3XHUwMDg4XHUwMDg5XHUwMDhBXHUwMDhCXHUwMDhDXHUwMDhEXHUwMDhFXHUwMDhGXHUwMDkwXHUwMDkxXHUwMDkyXHUwMDkzXHUwMDk0XHUwMDk1XHUwMDk2XHUwMDk3XHUwMDk4XHUwMDk5XHUwMDlBXHUwMDlCXHUwMDlDXHUwMDlEXHUwMDlFXHUwMDlGXHUwMEEwXHUwMEMwXHUwMEMyXHUwMEM4XHUwMENBXHUwMENCXHUwMENFXHUwMENGXHUwMEI0XHUwMkNCXHUwMkM2XHUwMEE4XHUwMkRDXHUwMEQ5XHUwMERCXHUyMEE0XHUwMEFGXHUwMEREXHUwMEZEXHUwMEIwXHUwMEM3XHUwMEU3XHUwMEQxXHUwMEYxXHUwMEExXHUwMEJGXHUwMEE0XHUwMEEzXHUwMEE1XHUwMEE3XHUwMTkyXHUwMEEyXHUwMEUyXHUwMEVBXHUwMEY0XHUwMEZCXHUwMEUxXHUwMEU5XHUwMEYzXHUwMEZBXHUwMEUwXHUwMEU4XHUwMEYyXHUwMEY5XHUwMEU0XHUwMEVCXHUwMEY2XHUwMEZDXHUwMEM1XHUwMEVFXHUwMEQ4XHUwMEM2XHUwMEU1XHUwMEVEXHUwMEY4XHUwMEU2XHUwMEM0XHUwMEVDXHUwMEQ2XHUwMERDXHUwMEM5XHUwMEVGXHUwMERGXHUwMEQ0XHUwMEMxXHUwMEMzXHUwMEUzXHUwMEQwXHUwMEYwXHUwMENEXHUwMENDXHUwMEQzXHUwMEQyXHUwMEQ1XHUwMEY1XHUwMTYwXHUwMTYxXHUwMERBXHUwMTc4XHUwMEZGXHUwMERFXHUwMEZFXHUwMEI3XHUwMEI1XHUwMEI2XHUwMEJFXHUyMDE0XHUwMEJDXHUwMEJEXHUwMEFBXHUwMEJBXHUwMEFCXHUyNUEwXHUwMEJCXHUwMEIxXHVGRkZEXCJcbiAgfSxcbiAgXCJtYWNpbnRvc2hcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1MDBDNFx1MDBDNVx1MDBDN1x1MDBDOVx1MDBEMVx1MDBENlx1MDBEQ1x1MDBFMVx1MDBFMFx1MDBFMlx1MDBFNFx1MDBFM1x1MDBFNVx1MDBFN1x1MDBFOVx1MDBFOFx1MDBFQVx1MDBFQlx1MDBFRFx1MDBFQ1x1MDBFRVx1MDBFRlx1MDBGMVx1MDBGM1x1MDBGMlx1MDBGNFx1MDBGNlx1MDBGNVx1MDBGQVx1MDBGOVx1MDBGQlx1MDBGQ1x1MjAyMFx1MDBCMFx1MDBBMlx1MDBBM1x1MDBBN1x1MjAyMlx1MDBCNlx1MDBERlx1MDBBRVx1MDBBOVx1MjEyMlx1MDBCNFx1MDBBOFx1MjI2MFx1MDBDNlx1MDBEOFx1MjIxRVx1MDBCMVx1MjI2NFx1MjI2NVx1MDBBNVx1MDBCNVx1MjIwMlx1MjIxMVx1MjIwRlx1MDNDMFx1MjIyQlx1MDBBQVx1MDBCQVx1MjEyNlx1MDBFNlx1MDBGOFx1MDBCRlx1MDBBMVx1MDBBQ1x1MjIxQVx1MDE5Mlx1MjI0OFx1MjIwNlx1MDBBQlx1MDBCQlx1MjAyNlx1MDBBMFx1MDBDMFx1MDBDM1x1MDBENVx1MDE1Mlx1MDE1M1x1MjAxM1x1MjAxNFx1MjAxQ1x1MjAxRFx1MjAxOFx1MjAxOVx1MDBGN1x1MjVDQVx1MDBGRlx1MDE3OFx1MjA0NFx1MDBBNFx1MjAzOVx1MjAzQVx1RkIwMVx1RkIwMlx1MjAyMVx1MDBCN1x1MjAxQVx1MjAxRVx1MjAzMFx1MDBDMlx1MDBDQVx1MDBDMVx1MDBDQlx1MDBDOFx1MDBDRFx1MDBDRVx1MDBDRlx1MDBDQ1x1MDBEM1x1MDBENFx1RkZGRFx1MDBEMlx1MDBEQVx1MDBEQlx1MDBEOVx1MDEzMVx1MDJDNlx1MDJEQ1x1MDBBRlx1MDJEOFx1MDJEOVx1MDJEQVx1MDBCOFx1MDJERFx1MDJEQlx1MDJDN1wiXG4gIH0sXG4gIFwiYXNjaWlcIjoge1xuICAgIFwidHlwZVwiOiBcIl9zYmNzXCIsXG4gICAgXCJjaGFyc1wiOiBcIlx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFx1RkZGRFwiXG4gIH0sXG4gIFwidGlzNjIwXCI6IHtcbiAgICBcInR5cGVcIjogXCJfc2Jjc1wiLFxuICAgIFwiY2hhcnNcIjogXCJcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdTBFMDFcdTBFMDJcdTBFMDNcdTBFMDRcdTBFMDVcdTBFMDZcdTBFMDdcdTBFMDhcdTBFMDlcdTBFMEFcdTBFMEJcdTBFMENcdTBFMERcdTBFMEVcdTBFMEZcdTBFMTBcdTBFMTFcdTBFMTJcdTBFMTNcdTBFMTRcdTBFMTVcdTBFMTZcdTBFMTdcdTBFMThcdTBFMTlcdTBFMUFcdTBFMUJcdTBFMUNcdTBFMURcdTBFMUVcdTBFMUZcdTBFMjBcdTBFMjFcdTBFMjJcdTBFMjNcdTBFMjRcdTBFMjVcdTBFMjZcdTBFMjdcdTBFMjhcdTBFMjlcdTBFMkFcdTBFMkJcdTBFMkNcdTBFMkRcdTBFMkVcdTBFMkZcdTBFMzBcdTBFMzFcdTBFMzJcdTBFMzNcdTBFMzRcdTBFMzVcdTBFMzZcdTBFMzdcdTBFMzhcdTBFMzlcdTBFM0FcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcdTBFM0ZcdTBFNDBcdTBFNDFcdTBFNDJcdTBFNDNcdTBFNDRcdTBFNDVcdTBFNDZcdTBFNDdcdTBFNDhcdTBFNDlcdTBFNEFcdTBFNEJcdTBFNENcdTBFNERcdTBFNEVcdTBFNEZcdTBFNTBcdTBFNTFcdTBFNTJcdTBFNTNcdTBFNTRcdTBFNTVcdTBFNTZcdTBFNTdcdTBFNThcdTBFNTlcdTBFNUFcdTBFNUJcdUZGRkRcdUZGRkRcdUZGRkRcdUZGRkRcIlxuICB9XG59IiwgIlwidXNlIHN0cmljdFwiO1xudmFyIEJ1ZmZlciA9IHJlcXVpcmUoXCJzYWZlci1idWZmZXJcIikuQnVmZmVyO1xuXG4vLyBNdWx0aWJ5dGUgY29kZWMuIEluIHRoaXMgc2NoZW1lLCBhIGNoYXJhY3RlciBpcyByZXByZXNlbnRlZCBieSAxIG9yIG1vcmUgYnl0ZXMuXG4vLyBPdXIgY29kZWMgc3VwcG9ydHMgVVRGLTE2IHN1cnJvZ2F0ZXMsIGV4dGVuc2lvbnMgZm9yIEdCMTgwMzAgYW5kIHVuaWNvZGUgc2VxdWVuY2VzLlxuLy8gVG8gc2F2ZSBtZW1vcnkgYW5kIGxvYWRpbmcgdGltZSwgd2UgcmVhZCB0YWJsZSBmaWxlcyBvbmx5IHdoZW4gcmVxdWVzdGVkLlxuXG5leHBvcnRzLl9kYmNzID0gREJDU0NvZGVjO1xuXG52YXIgVU5BU1NJR05FRCA9IC0xLFxuICAgIEdCMTgwMzBfQ09ERSA9IC0yLFxuICAgIFNFUV9TVEFSVCAgPSAtMTAsXG4gICAgTk9ERV9TVEFSVCA9IC0xMDAwLFxuICAgIFVOQVNTSUdORURfTk9ERSA9IG5ldyBBcnJheSgweDEwMCksXG4gICAgREVGX0NIQVIgPSAtMTtcblxuZm9yICh2YXIgaSA9IDA7IGkgPCAweDEwMDsgaSsrKVxuICAgIFVOQVNTSUdORURfTk9ERVtpXSA9IFVOQVNTSUdORUQ7XG5cblxuLy8gQ2xhc3MgREJDU0NvZGVjIHJlYWRzIGFuZCBpbml0aWFsaXplcyBtYXBwaW5nIHRhYmxlcy5cbmZ1bmN0aW9uIERCQ1NDb2RlYyhjb2RlY09wdGlvbnMsIGljb252KSB7XG4gICAgdGhpcy5lbmNvZGluZ05hbWUgPSBjb2RlY09wdGlvbnMuZW5jb2RpbmdOYW1lO1xuICAgIGlmICghY29kZWNPcHRpb25zKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJEQkNTIGNvZGVjIGlzIGNhbGxlZCB3aXRob3V0IHRoZSBkYXRhLlwiKVxuICAgIGlmICghY29kZWNPcHRpb25zLnRhYmxlKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJFbmNvZGluZyAnXCIgKyB0aGlzLmVuY29kaW5nTmFtZSArIFwiJyBoYXMgbm8gZGF0YS5cIik7XG5cbiAgICAvLyBMb2FkIHRhYmxlcy5cbiAgICB2YXIgbWFwcGluZ1RhYmxlID0gY29kZWNPcHRpb25zLnRhYmxlKCk7XG5cblxuICAgIC8vIERlY29kZSB0YWJsZXM6IE1CQ1MgLT4gVW5pY29kZS5cblxuICAgIC8vIGRlY29kZVRhYmxlcyBpcyBhIHRyaWUsIGVuY29kZWQgYXMgYW4gYXJyYXkgb2YgYXJyYXlzIG9mIGludGVnZXJzLiBJbnRlcm5hbCBhcnJheXMgYXJlIHRyaWUgbm9kZXMgYW5kIGFsbCBoYXZlIGxlbiA9IDI1Ni5cbiAgICAvLyBUcmllIHJvb3QgaXMgZGVjb2RlVGFibGVzWzBdLlxuICAgIC8vIFZhbHVlczogPj0gIDAgLT4gdW5pY29kZSBjaGFyYWN0ZXIgY29kZS4gY2FuIGJlID4gMHhGRkZGXG4gICAgLy8gICAgICAgICA9PSBVTkFTU0lHTkVEIC0+IHVua25vd24vdW5hc3NpZ25lZCBzZXF1ZW5jZS5cbiAgICAvLyAgICAgICAgID09IEdCMTgwMzBfQ09ERSAtPiB0aGlzIGlzIHRoZSBlbmQgb2YgYSBHQjE4MDMwIDQtYnl0ZSBzZXF1ZW5jZS5cbiAgICAvLyAgICAgICAgIDw9IE5PREVfU1RBUlQgLT4gaW5kZXggb2YgdGhlIG5leHQgbm9kZSBpbiBvdXIgdHJpZSB0byBwcm9jZXNzIG5leHQgYnl0ZS5cbiAgICAvLyAgICAgICAgIDw9IFNFUV9TVEFSVCAgLT4gaW5kZXggb2YgdGhlIHN0YXJ0IG9mIGEgY2hhcmFjdGVyIGNvZGUgc2VxdWVuY2UsIGluIGRlY29kZVRhYmxlU2VxLlxuICAgIHRoaXMuZGVjb2RlVGFibGVzID0gW107XG4gICAgdGhpcy5kZWNvZGVUYWJsZXNbMF0gPSBVTkFTU0lHTkVEX05PREUuc2xpY2UoMCk7IC8vIENyZWF0ZSByb290IG5vZGUuXG5cbiAgICAvLyBTb21ldGltZXMgYSBNQkNTIGNoYXIgY29ycmVzcG9uZHMgdG8gYSBzZXF1ZW5jZSBvZiB1bmljb2RlIGNoYXJzLiBXZSBzdG9yZSB0aGVtIGFzIGFycmF5cyBvZiBpbnRlZ2VycyBoZXJlLiBcbiAgICB0aGlzLmRlY29kZVRhYmxlU2VxID0gW107XG5cbiAgICAvLyBBY3R1YWwgbWFwcGluZyB0YWJsZXMgY29uc2lzdCBvZiBjaHVua3MuIFVzZSB0aGVtIHRvIGZpbGwgdXAgZGVjb2RlIHRhYmxlcy5cbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IG1hcHBpbmdUYWJsZS5sZW5ndGg7IGkrKylcbiAgICAgICAgdGhpcy5fYWRkRGVjb2RlQ2h1bmsobWFwcGluZ1RhYmxlW2ldKTtcblxuICAgIC8vIExvYWQgJiBjcmVhdGUgR0IxODAzMCB0YWJsZXMgd2hlbiBuZWVkZWQuXG4gICAgaWYgKHR5cGVvZiBjb2RlY09wdGlvbnMuZ2IxODAzMCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICB0aGlzLmdiMTgwMzAgPSBjb2RlY09wdGlvbnMuZ2IxODAzMCgpOyAvLyBMb2FkIEdCMTgwMzAgcmFuZ2VzLlxuXG4gICAgICAgIC8vIEFkZCBHQjE4MDMwIGNvbW1vbiBkZWNvZGUgbm9kZXMuXG4gICAgICAgIHZhciBjb21tb25UaGlyZEJ5dGVOb2RlSWR4ID0gdGhpcy5kZWNvZGVUYWJsZXMubGVuZ3RoO1xuICAgICAgICB0aGlzLmRlY29kZVRhYmxlcy5wdXNoKFVOQVNTSUdORURfTk9ERS5zbGljZSgwKSk7XG5cbiAgICAgICAgdmFyIGNvbW1vbkZvdXJ0aEJ5dGVOb2RlSWR4ID0gdGhpcy5kZWNvZGVUYWJsZXMubGVuZ3RoO1xuICAgICAgICB0aGlzLmRlY29kZVRhYmxlcy5wdXNoKFVOQVNTSUdORURfTk9ERS5zbGljZSgwKSk7XG5cbiAgICAgICAgLy8gRmlsbCBvdXQgdGhlIHRyZWVcbiAgICAgICAgdmFyIGZpcnN0Qnl0ZU5vZGUgPSB0aGlzLmRlY29kZVRhYmxlc1swXTtcbiAgICAgICAgZm9yICh2YXIgaSA9IDB4ODE7IGkgPD0gMHhGRTsgaSsrKSB7XG4gICAgICAgICAgICB2YXIgc2Vjb25kQnl0ZU5vZGUgPSB0aGlzLmRlY29kZVRhYmxlc1tOT0RFX1NUQVJUIC0gZmlyc3RCeXRlTm9kZVtpXV07XG4gICAgICAgICAgICBmb3IgKHZhciBqID0gMHgzMDsgaiA8PSAweDM5OyBqKyspIHtcbiAgICAgICAgICAgICAgICBpZiAoc2Vjb25kQnl0ZU5vZGVbal0gPT09IFVOQVNTSUdORUQpIHtcbiAgICAgICAgICAgICAgICAgICAgc2Vjb25kQnl0ZU5vZGVbal0gPSBOT0RFX1NUQVJUIC0gY29tbW9uVGhpcmRCeXRlTm9kZUlkeDtcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHNlY29uZEJ5dGVOb2RlW2pdID4gTk9ERV9TVEFSVCkge1xuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJnYjE4MDMwIGRlY29kZSB0YWJsZXMgY29uZmxpY3QgYXQgYnl0ZSAyXCIpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHZhciB0aGlyZEJ5dGVOb2RlID0gdGhpcy5kZWNvZGVUYWJsZXNbTk9ERV9TVEFSVCAtIHNlY29uZEJ5dGVOb2RlW2pdXTtcbiAgICAgICAgICAgICAgICBmb3IgKHZhciBrID0gMHg4MTsgayA8PSAweEZFOyBrKyspIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXJkQnl0ZU5vZGVba10gPT09IFVOQVNTSUdORUQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXJkQnl0ZU5vZGVba10gPSBOT0RFX1NUQVJUIC0gY29tbW9uRm91cnRoQnl0ZU5vZGVJZHg7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcmRCeXRlTm9kZVtrXSA9PT0gTk9ERV9TVEFSVCAtIGNvbW1vbkZvdXJ0aEJ5dGVOb2RlSWR4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlyZEJ5dGVOb2RlW2tdID4gTk9ERV9TVEFSVCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiZ2IxODAzMCBkZWNvZGUgdGFibGVzIGNvbmZsaWN0IGF0IGJ5dGUgM1wiKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHZhciBmb3VydGhCeXRlTm9kZSA9IHRoaXMuZGVjb2RlVGFibGVzW05PREVfU1RBUlQgLSB0aGlyZEJ5dGVOb2RlW2tdXTtcbiAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgbCA9IDB4MzA7IGwgPD0gMHgzOTsgbCsrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZm91cnRoQnl0ZU5vZGVbbF0gPT09IFVOQVNTSUdORUQpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm91cnRoQnl0ZU5vZGVbbF0gPSBHQjE4MDMwX0NPREU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLmRlZmF1bHRDaGFyVW5pY29kZSA9IGljb252LmRlZmF1bHRDaGFyVW5pY29kZTtcblxuICAgIFxuICAgIC8vIEVuY29kZSB0YWJsZXM6IFVuaWNvZGUgLT4gREJDUy5cblxuICAgIC8vIGBlbmNvZGVUYWJsZWAgaXMgYXJyYXkgbWFwcGluZyBmcm9tIHVuaWNvZGUgY2hhciB0byBlbmNvZGVkIGNoYXIuIEFsbCBpdHMgdmFsdWVzIGFyZSBpbnRlZ2VycyBmb3IgcGVyZm9ybWFuY2UuXG4gICAgLy8gQmVjYXVzZSBpdCBjYW4gYmUgc3BhcnNlLCBpdCBpcyByZXByZXNlbnRlZCBhcyBhcnJheSBvZiBidWNrZXRzIGJ5IDI1NiBjaGFycyBlYWNoLiBCdWNrZXQgY2FuIGJlIG51bGwuXG4gICAgLy8gVmFsdWVzOiA+PSAgMCAtPiBpdCBpcyBhIG5vcm1hbCBjaGFyLiBXcml0ZSB0aGUgdmFsdWUgKGlmIDw9MjU2IHRoZW4gMSBieXRlLCBpZiA8PTY1NTM2IHRoZW4gMiBieXRlcywgZXRjLikuXG4gICAgLy8gICAgICAgICA9PSBVTkFTU0lHTkVEIC0+IG5vIGNvbnZlcnNpb24gZm91bmQuIE91dHB1dCBhIGRlZmF1bHQgY2hhci5cbiAgICAvLyAgICAgICAgIDw9IFNFUV9TVEFSVCAgLT4gaXQncyBhbiBpbmRleCBpbiBlbmNvZGVUYWJsZVNlcSwgc2VlIGJlbG93LiBUaGUgY2hhcmFjdGVyIHN0YXJ0cyBhIHNlcXVlbmNlLlxuICAgIHRoaXMuZW5jb2RlVGFibGUgPSBbXTtcbiAgICBcbiAgICAvLyBgZW5jb2RlVGFibGVTZXFgIGlzIHVzZWQgd2hlbiBhIHNlcXVlbmNlIG9mIHVuaWNvZGUgY2hhcmFjdGVycyBpcyBlbmNvZGVkIGFzIGEgc2luZ2xlIGNvZGUuIFdlIHVzZSBhIHRyZWUgb2ZcbiAgICAvLyBvYmplY3RzIHdoZXJlIGtleXMgY29ycmVzcG9uZCB0byBjaGFyYWN0ZXJzIGluIHNlcXVlbmNlIGFuZCBsZWFmcyBhcmUgdGhlIGVuY29kZWQgZGJjcyB2YWx1ZXMuIEEgc3BlY2lhbCBERUZfQ0hBUiBrZXlcbiAgICAvLyBtZWFucyBlbmQgb2Ygc2VxdWVuY2UgKG5lZWRlZCB3aGVuIG9uZSBzZXF1ZW5jZSBpcyBhIHN0cmljdCBzdWJzZXF1ZW5jZSBvZiBhbm90aGVyKS5cbiAgICAvLyBPYmplY3RzIGFyZSBrZXB0IHNlcGFyYXRlbHkgZnJvbSBlbmNvZGVUYWJsZSB0byBpbmNyZWFzZSBwZXJmb3JtYW5jZS5cbiAgICB0aGlzLmVuY29kZVRhYmxlU2VxID0gW107XG5cbiAgICAvLyBTb21lIGNoYXJzIGNhbiBiZSBkZWNvZGVkLCBidXQgbmVlZCBub3QgYmUgZW5jb2RlZC5cbiAgICB2YXIgc2tpcEVuY29kZUNoYXJzID0ge307XG4gICAgaWYgKGNvZGVjT3B0aW9ucy5lbmNvZGVTa2lwVmFscylcbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjb2RlY09wdGlvbnMuZW5jb2RlU2tpcFZhbHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIHZhciB2YWwgPSBjb2RlY09wdGlvbnMuZW5jb2RlU2tpcFZhbHNbaV07XG4gICAgICAgICAgICBpZiAodHlwZW9mIHZhbCA9PT0gJ251bWJlcicpXG4gICAgICAgICAgICAgICAgc2tpcEVuY29kZUNoYXJzW3ZhbF0gPSB0cnVlO1xuICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgIGZvciAodmFyIGogPSB2YWwuZnJvbTsgaiA8PSB2YWwudG87IGorKylcbiAgICAgICAgICAgICAgICAgICAgc2tpcEVuY29kZUNoYXJzW2pdID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAvLyBVc2UgZGVjb2RlIHRyaWUgdG8gcmVjdXJzaXZlbHkgZmlsbCBvdXQgZW5jb2RlIHRhYmxlcy5cbiAgICB0aGlzLl9maWxsRW5jb2RlVGFibGUoMCwgMCwgc2tpcEVuY29kZUNoYXJzKTtcblxuICAgIC8vIEFkZCBtb3JlIGVuY29kaW5nIHBhaXJzIHdoZW4gbmVlZGVkLlxuICAgIGlmIChjb2RlY09wdGlvbnMuZW5jb2RlQWRkKSB7XG4gICAgICAgIGZvciAodmFyIHVDaGFyIGluIGNvZGVjT3B0aW9ucy5lbmNvZGVBZGQpXG4gICAgICAgICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGNvZGVjT3B0aW9ucy5lbmNvZGVBZGQsIHVDaGFyKSlcbiAgICAgICAgICAgICAgICB0aGlzLl9zZXRFbmNvZGVDaGFyKHVDaGFyLmNoYXJDb2RlQXQoMCksIGNvZGVjT3B0aW9ucy5lbmNvZGVBZGRbdUNoYXJdKTtcbiAgICB9XG5cbiAgICB0aGlzLmRlZkNoYXJTQiAgPSB0aGlzLmVuY29kZVRhYmxlWzBdW2ljb252LmRlZmF1bHRDaGFyU2luZ2xlQnl0ZS5jaGFyQ29kZUF0KDApXTtcbiAgICBpZiAodGhpcy5kZWZDaGFyU0IgPT09IFVOQVNTSUdORUQpIHRoaXMuZGVmQ2hhclNCID0gdGhpcy5lbmNvZGVUYWJsZVswXVsnPyddO1xuICAgIGlmICh0aGlzLmRlZkNoYXJTQiA9PT0gVU5BU1NJR05FRCkgdGhpcy5kZWZDaGFyU0IgPSBcIj9cIi5jaGFyQ29kZUF0KDApO1xufVxuXG5EQkNTQ29kZWMucHJvdG90eXBlLmVuY29kZXIgPSBEQkNTRW5jb2RlcjtcbkRCQ1NDb2RlYy5wcm90b3R5cGUuZGVjb2RlciA9IERCQ1NEZWNvZGVyO1xuXG4vLyBEZWNvZGVyIGhlbHBlcnNcbkRCQ1NDb2RlYy5wcm90b3R5cGUuX2dldERlY29kZVRyaWVOb2RlID0gZnVuY3Rpb24oYWRkcikge1xuICAgIHZhciBieXRlcyA9IFtdO1xuICAgIGZvciAoOyBhZGRyID4gMDsgYWRkciA+Pj49IDgpXG4gICAgICAgIGJ5dGVzLnB1c2goYWRkciAmIDB4RkYpO1xuICAgIGlmIChieXRlcy5sZW5ndGggPT0gMClcbiAgICAgICAgYnl0ZXMucHVzaCgwKTtcblxuICAgIHZhciBub2RlID0gdGhpcy5kZWNvZGVUYWJsZXNbMF07XG4gICAgZm9yICh2YXIgaSA9IGJ5dGVzLmxlbmd0aC0xOyBpID4gMDsgaS0tKSB7IC8vIFRyYXZlcnNlIG5vZGVzIGRlZXBlciBpbnRvIHRoZSB0cmllLlxuICAgICAgICB2YXIgdmFsID0gbm9kZVtieXRlc1tpXV07XG5cbiAgICAgICAgaWYgKHZhbCA9PSBVTkFTU0lHTkVEKSB7IC8vIENyZWF0ZSBuZXcgbm9kZS5cbiAgICAgICAgICAgIG5vZGVbYnl0ZXNbaV1dID0gTk9ERV9TVEFSVCAtIHRoaXMuZGVjb2RlVGFibGVzLmxlbmd0aDtcbiAgICAgICAgICAgIHRoaXMuZGVjb2RlVGFibGVzLnB1c2gobm9kZSA9IFVOQVNTSUdORURfTk9ERS5zbGljZSgwKSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAodmFsIDw9IE5PREVfU1RBUlQpIHsgLy8gRXhpc3Rpbmcgbm9kZS5cbiAgICAgICAgICAgIG5vZGUgPSB0aGlzLmRlY29kZVRhYmxlc1tOT0RFX1NUQVJUIC0gdmFsXTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJPdmVyd3JpdGUgYnl0ZSBpbiBcIiArIHRoaXMuZW5jb2RpbmdOYW1lICsgXCIsIGFkZHI6IFwiICsgYWRkci50b1N0cmluZygxNikpO1xuICAgIH1cbiAgICByZXR1cm4gbm9kZTtcbn1cblxuXG5EQkNTQ29kZWMucHJvdG90eXBlLl9hZGREZWNvZGVDaHVuayA9IGZ1bmN0aW9uKGNodW5rKSB7XG4gICAgLy8gRmlyc3QgZWxlbWVudCBvZiBjaHVuayBpcyB0aGUgaGV4IG1iY3MgY29kZSB3aGVyZSB3ZSBzdGFydC5cbiAgICB2YXIgY3VyQWRkciA9IHBhcnNlSW50KGNodW5rWzBdLCAxNik7XG5cbiAgICAvLyBDaG9vc2UgdGhlIGRlY29kaW5nIG5vZGUgd2hlcmUgd2UnbGwgd3JpdGUgb3VyIGNoYXJzLlxuICAgIHZhciB3cml0ZVRhYmxlID0gdGhpcy5fZ2V0RGVjb2RlVHJpZU5vZGUoY3VyQWRkcik7XG4gICAgY3VyQWRkciA9IGN1ckFkZHIgJiAweEZGO1xuXG4gICAgLy8gV3JpdGUgYWxsIG90aGVyIGVsZW1lbnRzIG9mIHRoZSBjaHVuayB0byB0aGUgdGFibGUuXG4gICAgZm9yICh2YXIgayA9IDE7IGsgPCBjaHVuay5sZW5ndGg7IGsrKykge1xuICAgICAgICB2YXIgcGFydCA9IGNodW5rW2tdO1xuICAgICAgICBpZiAodHlwZW9mIHBhcnQgPT09IFwic3RyaW5nXCIpIHsgLy8gU3RyaW5nLCB3cml0ZSBhcy1pcy5cbiAgICAgICAgICAgIGZvciAodmFyIGwgPSAwOyBsIDwgcGFydC5sZW5ndGg7KSB7XG4gICAgICAgICAgICAgICAgdmFyIGNvZGUgPSBwYXJ0LmNoYXJDb2RlQXQobCsrKTtcbiAgICAgICAgICAgICAgICBpZiAoMHhEODAwIDw9IGNvZGUgJiYgY29kZSA8IDB4REMwMCkgeyAvLyBEZWNvZGUgc3Vycm9nYXRlXG4gICAgICAgICAgICAgICAgICAgIHZhciBjb2RlVHJhaWwgPSBwYXJ0LmNoYXJDb2RlQXQobCsrKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKDB4REMwMCA8PSBjb2RlVHJhaWwgJiYgY29kZVRyYWlsIDwgMHhFMDAwKVxuICAgICAgICAgICAgICAgICAgICAgICAgd3JpdGVUYWJsZVtjdXJBZGRyKytdID0gMHgxMDAwMCArIChjb2RlIC0gMHhEODAwKSAqIDB4NDAwICsgKGNvZGVUcmFpbCAtIDB4REMwMCk7XG4gICAgICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkluY29ycmVjdCBzdXJyb2dhdGUgcGFpciBpbiBcIiAgKyB0aGlzLmVuY29kaW5nTmFtZSArIFwiIGF0IGNodW5rIFwiICsgY2h1bmtbMF0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIGlmICgweDBGRjAgPCBjb2RlICYmIGNvZGUgPD0gMHgwRkZGKSB7IC8vIENoYXJhY3RlciBzZXF1ZW5jZSAob3VyIG93biBlbmNvZGluZyB1c2VkKVxuICAgICAgICAgICAgICAgICAgICB2YXIgbGVuID0gMHhGRkYgLSBjb2RlICsgMjtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHNlcSA9IFtdO1xuICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBtID0gMDsgbSA8IGxlbjsgbSsrKVxuICAgICAgICAgICAgICAgICAgICAgICAgc2VxLnB1c2gocGFydC5jaGFyQ29kZUF0KGwrKykpOyAvLyBTaW1wbGUgdmFyaWF0aW9uOiBkb24ndCBzdXBwb3J0IHN1cnJvZ2F0ZXMgb3Igc3Vic2VxdWVuY2VzIGluIHNlcS5cblxuICAgICAgICAgICAgICAgICAgICB3cml0ZVRhYmxlW2N1ckFkZHIrK10gPSBTRVFfU1RBUlQgLSB0aGlzLmRlY29kZVRhYmxlU2VxLmxlbmd0aDtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kZWNvZGVUYWJsZVNlcS5wdXNoKHNlcSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgd3JpdGVUYWJsZVtjdXJBZGRyKytdID0gY29kZTsgLy8gQmFzaWMgY2hhclxuICAgICAgICAgICAgfVxuICAgICAgICB9IFxuICAgICAgICBlbHNlIGlmICh0eXBlb2YgcGFydCA9PT0gXCJudW1iZXJcIikgeyAvLyBJbnRlZ2VyLCBtZWFuaW5nIGluY3JlYXNpbmcgc2VxdWVuY2Ugc3RhcnRpbmcgd2l0aCBwcmV2IGNoYXJhY3Rlci5cbiAgICAgICAgICAgIHZhciBjaGFyQ29kZSA9IHdyaXRlVGFibGVbY3VyQWRkciAtIDFdICsgMTtcbiAgICAgICAgICAgIGZvciAodmFyIGwgPSAwOyBsIDwgcGFydDsgbCsrKVxuICAgICAgICAgICAgICAgIHdyaXRlVGFibGVbY3VyQWRkcisrXSA9IGNoYXJDb2RlKys7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiSW5jb3JyZWN0IHR5cGUgJ1wiICsgdHlwZW9mIHBhcnQgKyBcIicgZ2l2ZW4gaW4gXCIgICsgdGhpcy5lbmNvZGluZ05hbWUgKyBcIiBhdCBjaHVuayBcIiArIGNodW5rWzBdKTtcbiAgICB9XG4gICAgaWYgKGN1ckFkZHIgPiAweEZGKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJJbmNvcnJlY3QgY2h1bmsgaW4gXCIgICsgdGhpcy5lbmNvZGluZ05hbWUgKyBcIiBhdCBhZGRyIFwiICsgY2h1bmtbMF0gKyBcIjogdG9vIGxvbmdcIiArIGN1ckFkZHIpO1xufVxuXG4vLyBFbmNvZGVyIGhlbHBlcnNcbkRCQ1NDb2RlYy5wcm90b3R5cGUuX2dldEVuY29kZUJ1Y2tldCA9IGZ1bmN0aW9uKHVDb2RlKSB7XG4gICAgdmFyIGhpZ2ggPSB1Q29kZSA+PiA4OyAvLyBUaGlzIGNvdWxkIGJlID4gMHhGRiBiZWNhdXNlIG9mIGFzdHJhbCBjaGFyYWN0ZXJzLlxuICAgIGlmICh0aGlzLmVuY29kZVRhYmxlW2hpZ2hdID09PSB1bmRlZmluZWQpXG4gICAgICAgIHRoaXMuZW5jb2RlVGFibGVbaGlnaF0gPSBVTkFTU0lHTkVEX05PREUuc2xpY2UoMCk7IC8vIENyZWF0ZSBidWNrZXQgb24gZGVtYW5kLlxuICAgIHJldHVybiB0aGlzLmVuY29kZVRhYmxlW2hpZ2hdO1xufVxuXG5EQkNTQ29kZWMucHJvdG90eXBlLl9zZXRFbmNvZGVDaGFyID0gZnVuY3Rpb24odUNvZGUsIGRiY3NDb2RlKSB7XG4gICAgdmFyIGJ1Y2tldCA9IHRoaXMuX2dldEVuY29kZUJ1Y2tldCh1Q29kZSk7XG4gICAgdmFyIGxvdyA9IHVDb2RlICYgMHhGRjtcbiAgICBpZiAoYnVja2V0W2xvd10gPD0gU0VRX1NUQVJUKVxuICAgICAgICB0aGlzLmVuY29kZVRhYmxlU2VxW1NFUV9TVEFSVC1idWNrZXRbbG93XV1bREVGX0NIQVJdID0gZGJjc0NvZGU7IC8vIFRoZXJlJ3MgYWxyZWFkeSBhIHNlcXVlbmNlLCBzZXQgYSBzaW5nbGUtY2hhciBzdWJzZXF1ZW5jZSBvZiBpdC5cbiAgICBlbHNlIGlmIChidWNrZXRbbG93XSA9PSBVTkFTU0lHTkVEKVxuICAgICAgICBidWNrZXRbbG93XSA9IGRiY3NDb2RlO1xufVxuXG5EQkNTQ29kZWMucHJvdG90eXBlLl9zZXRFbmNvZGVTZXF1ZW5jZSA9IGZ1bmN0aW9uKHNlcSwgZGJjc0NvZGUpIHtcbiAgICBcbiAgICAvLyBHZXQgdGhlIHJvb3Qgb2YgY2hhcmFjdGVyIHRyZWUgYWNjb3JkaW5nIHRvIGZpcnN0IGNoYXJhY3RlciBvZiB0aGUgc2VxdWVuY2UuXG4gICAgdmFyIHVDb2RlID0gc2VxWzBdO1xuICAgIHZhciBidWNrZXQgPSB0aGlzLl9nZXRFbmNvZGVCdWNrZXQodUNvZGUpO1xuICAgIHZhciBsb3cgPSB1Q29kZSAmIDB4RkY7XG5cbiAgICB2YXIgbm9kZTtcbiAgICBpZiAoYnVja2V0W2xvd10gPD0gU0VRX1NUQVJUKSB7XG4gICAgICAgIC8vIFRoZXJlJ3MgYWxyZWFkeSBhIHNlcXVlbmNlIHdpdGggIC0gdXNlIGl0LlxuICAgICAgICBub2RlID0gdGhpcy5lbmNvZGVUYWJsZVNlcVtTRVFfU1RBUlQtYnVja2V0W2xvd11dO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgLy8gVGhlcmUgd2FzIG5vIHNlcXVlbmNlIG9iamVjdCAtIGFsbG9jYXRlIGEgbmV3IG9uZS5cbiAgICAgICAgbm9kZSA9IHt9O1xuICAgICAgICBpZiAoYnVja2V0W2xvd10gIT09IFVOQVNTSUdORUQpIG5vZGVbREVGX0NIQVJdID0gYnVja2V0W2xvd107IC8vIElmIGEgY2hhciB3YXMgc2V0IGJlZm9yZSAtIG1ha2UgaXQgYSBzaW5nbGUtY2hhciBzdWJzZXF1ZW5jZS5cbiAgICAgICAgYnVja2V0W2xvd10gPSBTRVFfU1RBUlQgLSB0aGlzLmVuY29kZVRhYmxlU2VxLmxlbmd0aDtcbiAgICAgICAgdGhpcy5lbmNvZGVUYWJsZVNlcS5wdXNoKG5vZGUpO1xuICAgIH1cblxuICAgIC8vIFRyYXZlcnNlIHRoZSBjaGFyYWN0ZXIgdHJlZSwgYWxsb2NhdGluZyBuZXcgbm9kZXMgYXMgbmVlZGVkLlxuICAgIGZvciAodmFyIGogPSAxOyBqIDwgc2VxLmxlbmd0aC0xOyBqKyspIHtcbiAgICAgICAgdmFyIG9sZFZhbCA9IG5vZGVbdUNvZGVdO1xuICAgICAgICBpZiAodHlwZW9mIG9sZFZhbCA9PT0gJ29iamVjdCcpXG4gICAgICAgICAgICBub2RlID0gb2xkVmFsO1xuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIG5vZGUgPSBub2RlW3VDb2RlXSA9IHt9XG4gICAgICAgICAgICBpZiAob2xkVmFsICE9PSB1bmRlZmluZWQpXG4gICAgICAgICAgICAgICAgbm9kZVtERUZfQ0hBUl0gPSBvbGRWYWxcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldCB0aGUgbGVhZiB0byBnaXZlbiBkYmNzQ29kZS5cbiAgICB1Q29kZSA9IHNlcVtzZXEubGVuZ3RoLTFdO1xuICAgIG5vZGVbdUNvZGVdID0gZGJjc0NvZGU7XG59XG5cbkRCQ1NDb2RlYy5wcm90b3R5cGUuX2ZpbGxFbmNvZGVUYWJsZSA9IGZ1bmN0aW9uKG5vZGVJZHgsIHByZWZpeCwgc2tpcEVuY29kZUNoYXJzKSB7XG4gICAgdmFyIG5vZGUgPSB0aGlzLmRlY29kZVRhYmxlc1tub2RlSWR4XTtcbiAgICB2YXIgaGFzVmFsdWVzID0gZmFsc2U7XG4gICAgdmFyIHN1Yk5vZGVFbXB0eSA9IHt9O1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgMHgxMDA7IGkrKykge1xuICAgICAgICB2YXIgdUNvZGUgPSBub2RlW2ldO1xuICAgICAgICB2YXIgbWJDb2RlID0gcHJlZml4ICsgaTtcbiAgICAgICAgaWYgKHNraXBFbmNvZGVDaGFyc1ttYkNvZGVdKVxuICAgICAgICAgICAgY29udGludWU7XG5cbiAgICAgICAgaWYgKHVDb2RlID49IDApIHtcbiAgICAgICAgICAgIHRoaXMuX3NldEVuY29kZUNoYXIodUNvZGUsIG1iQ29kZSk7XG4gICAgICAgICAgICBoYXNWYWx1ZXMgPSB0cnVlO1xuICAgICAgICB9IGVsc2UgaWYgKHVDb2RlIDw9IE5PREVfU1RBUlQpIHtcbiAgICAgICAgICAgIHZhciBzdWJOb2RlSWR4ID0gTk9ERV9TVEFSVCAtIHVDb2RlO1xuICAgICAgICAgICAgaWYgKCFzdWJOb2RlRW1wdHlbc3ViTm9kZUlkeF0pIHsgIC8vIFNraXAgZW1wdHkgc3VidHJlZXMgKHRoZXkgYXJlIHRvbyBsYXJnZSBpbiBnYjE4MDMwKS5cbiAgICAgICAgICAgICAgICB2YXIgbmV3UHJlZml4ID0gKG1iQ29kZSA8PCA4KSA+Pj4gMDsgIC8vIE5PVEU6ICc+Pj4gMCcga2VlcHMgMzItYml0IG51bSBwb3NpdGl2ZS5cbiAgICAgICAgICAgICAgICBpZiAodGhpcy5fZmlsbEVuY29kZVRhYmxlKHN1Yk5vZGVJZHgsIG5ld1ByZWZpeCwgc2tpcEVuY29kZUNoYXJzKSlcbiAgICAgICAgICAgICAgICAgICAgaGFzVmFsdWVzID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgIHN1Yk5vZGVFbXB0eVtzdWJOb2RlSWR4XSA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAodUNvZGUgPD0gU0VRX1NUQVJUKSB7XG4gICAgICAgICAgICB0aGlzLl9zZXRFbmNvZGVTZXF1ZW5jZSh0aGlzLmRlY29kZVRhYmxlU2VxW1NFUV9TVEFSVCAtIHVDb2RlXSwgbWJDb2RlKTtcbiAgICAgICAgICAgIGhhc1ZhbHVlcyA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGhhc1ZhbHVlcztcbn1cblxuXG5cbi8vID09IEVuY29kZXIgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmZ1bmN0aW9uIERCQ1NFbmNvZGVyKG9wdGlvbnMsIGNvZGVjKSB7XG4gICAgLy8gRW5jb2RlciBzdGF0ZVxuICAgIHRoaXMubGVhZFN1cnJvZ2F0ZSA9IC0xO1xuICAgIHRoaXMuc2VxT2JqID0gdW5kZWZpbmVkO1xuICAgIFxuICAgIC8vIFN0YXRpYyBkYXRhXG4gICAgdGhpcy5lbmNvZGVUYWJsZSA9IGNvZGVjLmVuY29kZVRhYmxlO1xuICAgIHRoaXMuZW5jb2RlVGFibGVTZXEgPSBjb2RlYy5lbmNvZGVUYWJsZVNlcTtcbiAgICB0aGlzLmRlZmF1bHRDaGFyU2luZ2xlQnl0ZSA9IGNvZGVjLmRlZkNoYXJTQjtcbiAgICB0aGlzLmdiMTgwMzAgPSBjb2RlYy5nYjE4MDMwO1xufVxuXG5EQkNTRW5jb2Rlci5wcm90b3R5cGUud3JpdGUgPSBmdW5jdGlvbihzdHIpIHtcbiAgICB2YXIgbmV3QnVmID0gQnVmZmVyLmFsbG9jKHN0ci5sZW5ndGggKiAodGhpcy5nYjE4MDMwID8gNCA6IDMpKSxcbiAgICAgICAgbGVhZFN1cnJvZ2F0ZSA9IHRoaXMubGVhZFN1cnJvZ2F0ZSxcbiAgICAgICAgc2VxT2JqID0gdGhpcy5zZXFPYmosIG5leHRDaGFyID0gLTEsXG4gICAgICAgIGkgPSAwLCBqID0gMDtcblxuICAgIHdoaWxlICh0cnVlKSB7XG4gICAgICAgIC8vIDAuIEdldCBuZXh0IGNoYXJhY3Rlci5cbiAgICAgICAgaWYgKG5leHRDaGFyID09PSAtMSkge1xuICAgICAgICAgICAgaWYgKGkgPT0gc3RyLmxlbmd0aCkgYnJlYWs7XG4gICAgICAgICAgICB2YXIgdUNvZGUgPSBzdHIuY2hhckNvZGVBdChpKyspO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdmFyIHVDb2RlID0gbmV4dENoYXI7XG4gICAgICAgICAgICBuZXh0Q2hhciA9IC0xOyAgICBcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIDEuIEhhbmRsZSBzdXJyb2dhdGVzLlxuICAgICAgICBpZiAoMHhEODAwIDw9IHVDb2RlICYmIHVDb2RlIDwgMHhFMDAwKSB7IC8vIENoYXIgaXMgb25lIG9mIHN1cnJvZ2F0ZXMuXG4gICAgICAgICAgICBpZiAodUNvZGUgPCAweERDMDApIHsgLy8gV2UndmUgZ290IGxlYWQgc3Vycm9nYXRlLlxuICAgICAgICAgICAgICAgIGlmIChsZWFkU3Vycm9nYXRlID09PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICBsZWFkU3Vycm9nYXRlID0gdUNvZGU7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGxlYWRTdXJyb2dhdGUgPSB1Q29kZTtcbiAgICAgICAgICAgICAgICAgICAgLy8gRG91YmxlIGxlYWQgc3Vycm9nYXRlIGZvdW5kLlxuICAgICAgICAgICAgICAgICAgICB1Q29kZSA9IFVOQVNTSUdORUQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHsgLy8gV2UndmUgZ290IHRyYWlsIHN1cnJvZ2F0ZS5cbiAgICAgICAgICAgICAgICBpZiAobGVhZFN1cnJvZ2F0ZSAhPT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgdUNvZGUgPSAweDEwMDAwICsgKGxlYWRTdXJyb2dhdGUgLSAweEQ4MDApICogMHg0MDAgKyAodUNvZGUgLSAweERDMDApO1xuICAgICAgICAgICAgICAgICAgICBsZWFkU3Vycm9nYXRlID0gLTE7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gSW5jb21wbGV0ZSBzdXJyb2dhdGUgcGFpciAtIG9ubHkgdHJhaWwgc3Vycm9nYXRlIGZvdW5kLlxuICAgICAgICAgICAgICAgICAgICB1Q29kZSA9IFVOQVNTSUdORUQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGxlYWRTdXJyb2dhdGUgIT09IC0xKSB7XG4gICAgICAgICAgICAvLyBJbmNvbXBsZXRlIHN1cnJvZ2F0ZSBwYWlyIC0gb25seSBsZWFkIHN1cnJvZ2F0ZSBmb3VuZC5cbiAgICAgICAgICAgIG5leHRDaGFyID0gdUNvZGU7IHVDb2RlID0gVU5BU1NJR05FRDsgLy8gV3JpdGUgYW4gZXJyb3IsIHRoZW4gY3VycmVudCBjaGFyLlxuICAgICAgICAgICAgbGVhZFN1cnJvZ2F0ZSA9IC0xO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gMi4gQ29udmVydCB1Q29kZSBjaGFyYWN0ZXIuXG4gICAgICAgIHZhciBkYmNzQ29kZSA9IFVOQVNTSUdORUQ7XG4gICAgICAgIGlmIChzZXFPYmogIT09IHVuZGVmaW5lZCAmJiB1Q29kZSAhPSBVTkFTU0lHTkVEKSB7IC8vIFdlIGFyZSBpbiB0aGUgbWlkZGxlIG9mIHRoZSBzZXF1ZW5jZVxuICAgICAgICAgICAgdmFyIHJlc0NvZGUgPSBzZXFPYmpbdUNvZGVdO1xuICAgICAgICAgICAgaWYgKHR5cGVvZiByZXNDb2RlID09PSAnb2JqZWN0JykgeyAvLyBTZXF1ZW5jZSBjb250aW51ZXMuXG4gICAgICAgICAgICAgICAgc2VxT2JqID0gcmVzQ29kZTtcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcblxuICAgICAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgcmVzQ29kZSA9PSAnbnVtYmVyJykgeyAvLyBTZXF1ZW5jZSBmaW5pc2hlZC4gV3JpdGUgaXQuXG4gICAgICAgICAgICAgICAgZGJjc0NvZGUgPSByZXNDb2RlO1xuXG4gICAgICAgICAgICB9IGVsc2UgaWYgKHJlc0NvZGUgPT0gdW5kZWZpbmVkKSB7IC8vIEN1cnJlbnQgY2hhcmFjdGVyIGlzIG5vdCBwYXJ0IG9mIHRoZSBzZXF1ZW5jZS5cblxuICAgICAgICAgICAgICAgIC8vIFRyeSBkZWZhdWx0IGNoYXJhY3RlciBmb3IgdGhpcyBzZXF1ZW5jZVxuICAgICAgICAgICAgICAgIHJlc0NvZGUgPSBzZXFPYmpbREVGX0NIQVJdO1xuICAgICAgICAgICAgICAgIGlmIChyZXNDb2RlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgZGJjc0NvZGUgPSByZXNDb2RlOyAvLyBGb3VuZC4gV3JpdGUgaXQuXG4gICAgICAgICAgICAgICAgICAgIG5leHRDaGFyID0gdUNvZGU7IC8vIEN1cnJlbnQgY2hhcmFjdGVyIHdpbGwgYmUgd3JpdHRlbiB0b28gaW4gdGhlIG5leHQgaXRlcmF0aW9uLlxuXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gVE9ETzogV2hhdCBpZiB3ZSBoYXZlIG5vIGRlZmF1bHQ/IChyZXNDb2RlID09IHVuZGVmaW5lZClcbiAgICAgICAgICAgICAgICAgICAgLy8gVGhlbiwgd2Ugc2hvdWxkIHdyaXRlIGZpcnN0IGNoYXIgb2YgdGhlIHNlcXVlbmNlIGFzLWlzIGFuZCB0cnkgdGhlIHJlc3QgcmVjdXJzaXZlbHkuXG4gICAgICAgICAgICAgICAgICAgIC8vIERpZG4ndCBkbyBpdCBmb3Igbm93IGJlY2F1c2Ugbm8gZW5jb2RpbmcgaGFzIHRoaXMgc2l0dWF0aW9uIHlldC5cbiAgICAgICAgICAgICAgICAgICAgLy8gQ3VycmVudGx5LCBqdXN0IHNraXAgdGhlIHNlcXVlbmNlIGFuZCB3cml0ZSBjdXJyZW50IGNoYXIuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc2VxT2JqID0gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHVDb2RlID49IDApIHsgIC8vIFJlZ3VsYXIgY2hhcmFjdGVyXG4gICAgICAgICAgICB2YXIgc3VidGFibGUgPSB0aGlzLmVuY29kZVRhYmxlW3VDb2RlID4+IDhdO1xuICAgICAgICAgICAgaWYgKHN1YnRhYmxlICE9PSB1bmRlZmluZWQpXG4gICAgICAgICAgICAgICAgZGJjc0NvZGUgPSBzdWJ0YWJsZVt1Q29kZSAmIDB4RkZdO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBpZiAoZGJjc0NvZGUgPD0gU0VRX1NUQVJUKSB7IC8vIFNlcXVlbmNlIHN0YXJ0XG4gICAgICAgICAgICAgICAgc2VxT2JqID0gdGhpcy5lbmNvZGVUYWJsZVNlcVtTRVFfU1RBUlQtZGJjc0NvZGVdO1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoZGJjc0NvZGUgPT0gVU5BU1NJR05FRCAmJiB0aGlzLmdiMTgwMzApIHtcbiAgICAgICAgICAgICAgICAvLyBVc2UgR0IxODAzMCBhbGdvcml0aG0gdG8gZmluZCBjaGFyYWN0ZXIocykgdG8gd3JpdGUuXG4gICAgICAgICAgICAgICAgdmFyIGlkeCA9IGZpbmRJZHgodGhpcy5nYjE4MDMwLnVDaGFycywgdUNvZGUpO1xuICAgICAgICAgICAgICAgIGlmIChpZHggIT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIGRiY3NDb2RlID0gdGhpcy5nYjE4MDMwLmdiQ2hhcnNbaWR4XSArICh1Q29kZSAtIHRoaXMuZ2IxODAzMC51Q2hhcnNbaWR4XSk7XG4gICAgICAgICAgICAgICAgICAgIG5ld0J1ZltqKytdID0gMHg4MSArIE1hdGguZmxvb3IoZGJjc0NvZGUgLyAxMjYwMCk7IGRiY3NDb2RlID0gZGJjc0NvZGUgJSAxMjYwMDtcbiAgICAgICAgICAgICAgICAgICAgbmV3QnVmW2orK10gPSAweDMwICsgTWF0aC5mbG9vcihkYmNzQ29kZSAvIDEyNjApOyBkYmNzQ29kZSA9IGRiY3NDb2RlICUgMTI2MDtcbiAgICAgICAgICAgICAgICAgICAgbmV3QnVmW2orK10gPSAweDgxICsgTWF0aC5mbG9vcihkYmNzQ29kZSAvIDEwKTsgZGJjc0NvZGUgPSBkYmNzQ29kZSAlIDEwO1xuICAgICAgICAgICAgICAgICAgICBuZXdCdWZbaisrXSA9IDB4MzAgKyBkYmNzQ29kZTtcbiAgICAgICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gMy4gV3JpdGUgZGJjc0NvZGUgY2hhcmFjdGVyLlxuICAgICAgICBpZiAoZGJjc0NvZGUgPT09IFVOQVNTSUdORUQpXG4gICAgICAgICAgICBkYmNzQ29kZSA9IHRoaXMuZGVmYXVsdENoYXJTaW5nbGVCeXRlO1xuICAgICAgICBcbiAgICAgICAgaWYgKGRiY3NDb2RlIDwgMHgxMDApIHtcbiAgICAgICAgICAgIG5ld0J1ZltqKytdID0gZGJjc0NvZGU7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoZGJjc0NvZGUgPCAweDEwMDAwKSB7XG4gICAgICAgICAgICBuZXdCdWZbaisrXSA9IGRiY3NDb2RlID4+IDg7ICAgLy8gaGlnaCBieXRlXG4gICAgICAgICAgICBuZXdCdWZbaisrXSA9IGRiY3NDb2RlICYgMHhGRjsgLy8gbG93IGJ5dGVcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChkYmNzQ29kZSA8IDB4MTAwMDAwMCkge1xuICAgICAgICAgICAgbmV3QnVmW2orK10gPSBkYmNzQ29kZSA+PiAxNjtcbiAgICAgICAgICAgIG5ld0J1ZltqKytdID0gKGRiY3NDb2RlID4+IDgpICYgMHhGRjtcbiAgICAgICAgICAgIG5ld0J1ZltqKytdID0gZGJjc0NvZGUgJiAweEZGO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbmV3QnVmW2orK10gPSBkYmNzQ29kZSA+Pj4gMjQ7XG4gICAgICAgICAgICBuZXdCdWZbaisrXSA9IChkYmNzQ29kZSA+Pj4gMTYpICYgMHhGRjtcbiAgICAgICAgICAgIG5ld0J1ZltqKytdID0gKGRiY3NDb2RlID4+PiA4KSAmIDB4RkY7XG4gICAgICAgICAgICBuZXdCdWZbaisrXSA9IGRiY3NDb2RlICYgMHhGRjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuc2VxT2JqID0gc2VxT2JqO1xuICAgIHRoaXMubGVhZFN1cnJvZ2F0ZSA9IGxlYWRTdXJyb2dhdGU7XG4gICAgcmV0dXJuIG5ld0J1Zi5zbGljZSgwLCBqKTtcbn1cblxuREJDU0VuY29kZXIucHJvdG90eXBlLmVuZCA9IGZ1bmN0aW9uKCkge1xuICAgIGlmICh0aGlzLmxlYWRTdXJyb2dhdGUgPT09IC0xICYmIHRoaXMuc2VxT2JqID09PSB1bmRlZmluZWQpXG4gICAgICAgIHJldHVybjsgLy8gQWxsIGNsZWFuLiBNb3N0IG9mdGVuIGNhc2UuXG5cbiAgICB2YXIgbmV3QnVmID0gQnVmZmVyLmFsbG9jKDEwKSwgaiA9IDA7XG5cbiAgICBpZiAodGhpcy5zZXFPYmopIHsgLy8gV2UncmUgaW4gdGhlIHNlcXVlbmNlLlxuICAgICAgICB2YXIgZGJjc0NvZGUgPSB0aGlzLnNlcU9ialtERUZfQ0hBUl07XG4gICAgICAgIGlmIChkYmNzQ29kZSAhPT0gdW5kZWZpbmVkKSB7IC8vIFdyaXRlIGJlZ2lubmluZyBvZiB0aGUgc2VxdWVuY2UuXG4gICAgICAgICAgICBpZiAoZGJjc0NvZGUgPCAweDEwMCkge1xuICAgICAgICAgICAgICAgIG5ld0J1ZltqKytdID0gZGJjc0NvZGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBuZXdCdWZbaisrXSA9IGRiY3NDb2RlID4+IDg7ICAgLy8gaGlnaCBieXRlXG4gICAgICAgICAgICAgICAgbmV3QnVmW2orK10gPSBkYmNzQ29kZSAmIDB4RkY7IC8vIGxvdyBieXRlXG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBTZWUgdG9kbyBhYm92ZS5cbiAgICAgICAgfVxuICAgICAgICB0aGlzLnNlcU9iaiA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5sZWFkU3Vycm9nYXRlICE9PSAtMSkge1xuICAgICAgICAvLyBJbmNvbXBsZXRlIHN1cnJvZ2F0ZSBwYWlyIC0gb25seSBsZWFkIHN1cnJvZ2F0ZSBmb3VuZC5cbiAgICAgICAgbmV3QnVmW2orK10gPSB0aGlzLmRlZmF1bHRDaGFyU2luZ2xlQnl0ZTtcbiAgICAgICAgdGhpcy5sZWFkU3Vycm9nYXRlID0gLTE7XG4gICAgfVxuICAgIFxuICAgIHJldHVybiBuZXdCdWYuc2xpY2UoMCwgaik7XG59XG5cbi8vIEV4cG9ydCBmb3IgdGVzdGluZ1xuREJDU0VuY29kZXIucHJvdG90eXBlLmZpbmRJZHggPSBmaW5kSWR4O1xuXG5cbi8vID09IERlY29kZXIgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmZ1bmN0aW9uIERCQ1NEZWNvZGVyKG9wdGlvbnMsIGNvZGVjKSB7XG4gICAgLy8gRGVjb2RlciBzdGF0ZVxuICAgIHRoaXMubm9kZUlkeCA9IDA7XG4gICAgdGhpcy5wcmV2Qnl0ZXMgPSBbXTtcblxuICAgIC8vIFN0YXRpYyBkYXRhXG4gICAgdGhpcy5kZWNvZGVUYWJsZXMgPSBjb2RlYy5kZWNvZGVUYWJsZXM7XG4gICAgdGhpcy5kZWNvZGVUYWJsZVNlcSA9IGNvZGVjLmRlY29kZVRhYmxlU2VxO1xuICAgIHRoaXMuZGVmYXVsdENoYXJVbmljb2RlID0gY29kZWMuZGVmYXVsdENoYXJVbmljb2RlO1xuICAgIHRoaXMuZ2IxODAzMCA9IGNvZGVjLmdiMTgwMzA7XG59XG5cbkRCQ1NEZWNvZGVyLnByb3RvdHlwZS53cml0ZSA9IGZ1bmN0aW9uKGJ1Zikge1xuICAgIHZhciBuZXdCdWYgPSBCdWZmZXIuYWxsb2MoYnVmLmxlbmd0aCoyKSxcbiAgICAgICAgbm9kZUlkeCA9IHRoaXMubm9kZUlkeCwgXG4gICAgICAgIHByZXZCeXRlcyA9IHRoaXMucHJldkJ5dGVzLCBwcmV2T2Zmc2V0ID0gdGhpcy5wcmV2Qnl0ZXMubGVuZ3RoLFxuICAgICAgICBzZXFTdGFydCA9IC10aGlzLnByZXZCeXRlcy5sZW5ndGgsIC8vIGlkeCBvZiB0aGUgc3RhcnQgb2YgY3VycmVudCBwYXJzZWQgc2VxdWVuY2UuXG4gICAgICAgIHVDb2RlO1xuXG4gICAgZm9yICh2YXIgaSA9IDAsIGogPSAwOyBpIDwgYnVmLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHZhciBjdXJCeXRlID0gKGkgPj0gMCkgPyBidWZbaV0gOiBwcmV2Qnl0ZXNbaSArIHByZXZPZmZzZXRdO1xuXG4gICAgICAgIC8vIExvb2t1cCBpbiBjdXJyZW50IHRyaWUgbm9kZS5cbiAgICAgICAgdmFyIHVDb2RlID0gdGhpcy5kZWNvZGVUYWJsZXNbbm9kZUlkeF1bY3VyQnl0ZV07XG5cbiAgICAgICAgaWYgKHVDb2RlID49IDApIHsgXG4gICAgICAgICAgICAvLyBOb3JtYWwgY2hhcmFjdGVyLCBqdXN0IHVzZSBpdC5cbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICh1Q29kZSA9PT0gVU5BU1NJR05FRCkgeyAvLyBVbmtub3duIGNoYXIuXG4gICAgICAgICAgICAvLyBUT0RPOiBDYWxsYmFjayB3aXRoIHNlcS5cbiAgICAgICAgICAgIHVDb2RlID0gdGhpcy5kZWZhdWx0Q2hhclVuaWNvZGUuY2hhckNvZGVBdCgwKTtcbiAgICAgICAgICAgIGkgPSBzZXFTdGFydDsgLy8gU2tpcCBvbmUgYnl0ZSAoJ2knIHdpbGwgYmUgaW5jcmVtZW50ZWQgYnkgdGhlIGZvciBsb29wKSBhbmQgdHJ5IHRvIHBhcnNlIGFnYWluLlxuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHVDb2RlID09PSBHQjE4MDMwX0NPREUpIHtcbiAgICAgICAgICAgIGlmIChpID49IDMpIHtcbiAgICAgICAgICAgICAgICB2YXIgcHRyID0gKGJ1ZltpLTNdLTB4ODEpKjEyNjAwICsgKGJ1ZltpLTJdLTB4MzApKjEyNjAgKyAoYnVmW2ktMV0tMHg4MSkqMTAgKyAoY3VyQnl0ZS0weDMwKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdmFyIHB0ciA9IChwcmV2Qnl0ZXNbaS0zK3ByZXZPZmZzZXRdLTB4ODEpKjEyNjAwICsgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICgoKGktMiA+PSAwKSA/IGJ1ZltpLTJdIDogcHJldkJ5dGVzW2ktMitwcmV2T2Zmc2V0XSktMHgzMCkqMTI2MCArIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAoKChpLTEgPj0gMCkgPyBidWZbaS0xXSA6IHByZXZCeXRlc1tpLTErcHJldk9mZnNldF0pLTB4ODEpKjEwICsgXG4gICAgICAgICAgICAgICAgICAgICAgICAgIChjdXJCeXRlLTB4MzApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdmFyIGlkeCA9IGZpbmRJZHgodGhpcy5nYjE4MDMwLmdiQ2hhcnMsIHB0cik7XG4gICAgICAgICAgICB1Q29kZSA9IHRoaXMuZ2IxODAzMC51Q2hhcnNbaWR4XSArIHB0ciAtIHRoaXMuZ2IxODAzMC5nYkNoYXJzW2lkeF07XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAodUNvZGUgPD0gTk9ERV9TVEFSVCkgeyAvLyBHbyB0byBuZXh0IHRyaWUgbm9kZS5cbiAgICAgICAgICAgIG5vZGVJZHggPSBOT0RFX1NUQVJUIC0gdUNvZGU7XG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICh1Q29kZSA8PSBTRVFfU1RBUlQpIHsgLy8gT3V0cHV0IGEgc2VxdWVuY2Ugb2YgY2hhcnMuXG4gICAgICAgICAgICB2YXIgc2VxID0gdGhpcy5kZWNvZGVUYWJsZVNlcVtTRVFfU1RBUlQgLSB1Q29kZV07XG4gICAgICAgICAgICBmb3IgKHZhciBrID0gMDsgayA8IHNlcS5sZW5ndGggLSAxOyBrKyspIHtcbiAgICAgICAgICAgICAgICB1Q29kZSA9IHNlcVtrXTtcbiAgICAgICAgICAgICAgICBuZXdCdWZbaisrXSA9IHVDb2RlICYgMHhGRjtcbiAgICAgICAgICAgICAgICBuZXdCdWZbaisrXSA9IHVDb2RlID4+IDg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB1Q29kZSA9IHNlcVtzZXEubGVuZ3RoLTFdO1xuICAgICAgICB9XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcImljb252LWxpdGUgaW50ZXJuYWwgZXJyb3I6IGludmFsaWQgZGVjb2RpbmcgdGFibGUgdmFsdWUgXCIgKyB1Q29kZSArIFwiIGF0IFwiICsgbm9kZUlkeCArIFwiL1wiICsgY3VyQnl0ZSk7XG5cbiAgICAgICAgLy8gV3JpdGUgdGhlIGNoYXJhY3RlciB0byBidWZmZXIsIGhhbmRsaW5nIGhpZ2hlciBwbGFuZXMgdXNpbmcgc3Vycm9nYXRlIHBhaXIuXG4gICAgICAgIGlmICh1Q29kZSA+PSAweDEwMDAwKSB7IFxuICAgICAgICAgICAgdUNvZGUgLT0gMHgxMDAwMDtcbiAgICAgICAgICAgIHZhciB1Q29kZUxlYWQgPSAweEQ4MDAgfCAodUNvZGUgPj4gMTApO1xuICAgICAgICAgICAgbmV3QnVmW2orK10gPSB1Q29kZUxlYWQgJiAweEZGO1xuICAgICAgICAgICAgbmV3QnVmW2orK10gPSB1Q29kZUxlYWQgPj4gODtcblxuICAgICAgICAgICAgdUNvZGUgPSAweERDMDAgfCAodUNvZGUgJiAweDNGRik7XG4gICAgICAgIH1cbiAgICAgICAgbmV3QnVmW2orK10gPSB1Q29kZSAmIDB4RkY7XG4gICAgICAgIG5ld0J1ZltqKytdID0gdUNvZGUgPj4gODtcblxuICAgICAgICAvLyBSZXNldCB0cmllIG5vZGUuXG4gICAgICAgIG5vZGVJZHggPSAwOyBzZXFTdGFydCA9IGkrMTtcbiAgICB9XG5cbiAgICB0aGlzLm5vZGVJZHggPSBub2RlSWR4O1xuICAgIHRoaXMucHJldkJ5dGVzID0gKHNlcVN0YXJ0ID49IDApXG4gICAgICAgID8gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYnVmLCBzZXFTdGFydClcbiAgICAgICAgOiBwcmV2Qnl0ZXMuc2xpY2Uoc2VxU3RhcnQgKyBwcmV2T2Zmc2V0KS5jb25jYXQoQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYnVmKSk7XG5cbiAgICByZXR1cm4gbmV3QnVmLnNsaWNlKDAsIGopLnRvU3RyaW5nKCd1Y3MyJyk7XG59XG5cbkRCQ1NEZWNvZGVyLnByb3RvdHlwZS5lbmQgPSBmdW5jdGlvbigpIHtcbiAgICB2YXIgcmV0ID0gJyc7XG5cbiAgICAvLyBUcnkgdG8gcGFyc2UgYWxsIHJlbWFpbmluZyBjaGFycy5cbiAgICB3aGlsZSAodGhpcy5wcmV2Qnl0ZXMubGVuZ3RoID4gMCkge1xuICAgICAgICAvLyBTa2lwIDEgY2hhcmFjdGVyIGluIHRoZSBidWZmZXIuXG4gICAgICAgIHJldCArPSB0aGlzLmRlZmF1bHRDaGFyVW5pY29kZTtcbiAgICAgICAgdmFyIGJ5dGVzQXJyID0gdGhpcy5wcmV2Qnl0ZXMuc2xpY2UoMSk7XG5cbiAgICAgICAgLy8gUGFyc2UgcmVtYWluaW5nIGFzIHVzdWFsLlxuICAgICAgICB0aGlzLnByZXZCeXRlcyA9IFtdO1xuICAgICAgICB0aGlzLm5vZGVJZHggPSAwO1xuICAgICAgICBpZiAoYnl0ZXNBcnIubGVuZ3RoID4gMClcbiAgICAgICAgICAgIHJldCArPSB0aGlzLndyaXRlKGJ5dGVzQXJyKTtcbiAgICB9XG5cbiAgICB0aGlzLnByZXZCeXRlcyA9IFtdO1xuICAgIHRoaXMubm9kZUlkeCA9IDA7XG4gICAgcmV0dXJuIHJldDtcbn1cblxuLy8gQmluYXJ5IHNlYXJjaCBmb3IgR0IxODAzMC4gUmV0dXJucyBsYXJnZXN0IGkgc3VjaCB0aGF0IHRhYmxlW2ldIDw9IHZhbC5cbmZ1bmN0aW9uIGZpbmRJZHgodGFibGUsIHZhbCkge1xuICAgIGlmICh0YWJsZVswXSA+IHZhbClcbiAgICAgICAgcmV0dXJuIC0xO1xuXG4gICAgdmFyIGwgPSAwLCByID0gdGFibGUubGVuZ3RoO1xuICAgIHdoaWxlIChsIDwgci0xKSB7IC8vIGFsd2F5cyB0YWJsZVtsXSA8PSB2YWwgPCB0YWJsZVtyXVxuICAgICAgICB2YXIgbWlkID0gbCArICgoci1sKzEpID4+IDEpO1xuICAgICAgICBpZiAodGFibGVbbWlkXSA8PSB2YWwpXG4gICAgICAgICAgICBsID0gbWlkO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICByID0gbWlkO1xuICAgIH1cbiAgICByZXR1cm4gbDtcbn1cblxuIiwgIltcbltcIjBcIixcIlxcdTAwMDBcIiwxMjhdLFxuW1wiYTFcIixcIlx1RkY2MVwiLDYyXSxcbltcIjgxNDBcIixcIlx1MzAwMFx1MzAwMVx1MzAwMlx1RkYwQ1x1RkYwRVx1MzBGQlx1RkYxQVx1RkYxQlx1RkYxRlx1RkYwMVx1MzA5Qlx1MzA5Q1x1MDBCNFx1RkY0MFx1MDBBOFx1RkYzRVx1RkZFM1x1RkYzRlx1MzBGRFx1MzBGRVx1MzA5RFx1MzA5RVx1MzAwM1x1NEVERFx1MzAwNVx1MzAwNlx1MzAwN1x1MzBGQ1x1MjAxNVx1MjAxMFx1RkYwRlx1RkYzQ1x1RkY1RVx1MjIyNVx1RkY1Q1x1MjAyNlx1MjAyNVx1MjAxOFx1MjAxOVx1MjAxQ1x1MjAxRFx1RkYwOFx1RkYwOVx1MzAxNFx1MzAxNVx1RkYzQlx1RkYzRFx1RkY1Qlx1RkY1RFx1MzAwOFwiLDksXCJcdUZGMEJcdUZGMERcdTAwQjFcdTAwRDdcIl0sXG5bXCI4MTgwXCIsXCJcdTAwRjdcdUZGMURcdTIyNjBcdUZGMUNcdUZGMUVcdTIyNjZcdTIyNjdcdTIyMUVcdTIyMzRcdTI2NDJcdTI2NDBcdTAwQjBcdTIwMzJcdTIwMzNcdTIxMDNcdUZGRTVcdUZGMDRcdUZGRTBcdUZGRTFcdUZGMDVcdUZGMDNcdUZGMDZcdUZGMEFcdUZGMjBcdTAwQTdcdTI2MDZcdTI2MDVcdTI1Q0JcdTI1Q0ZcdTI1Q0VcdTI1QzdcdTI1QzZcdTI1QTFcdTI1QTBcdTI1QjNcdTI1QjJcdTI1QkRcdTI1QkNcdTIwM0JcdTMwMTJcdTIxOTJcdTIxOTBcdTIxOTFcdTIxOTNcdTMwMTNcIl0sXG5bXCI4MWI4XCIsXCJcdTIyMDhcdTIyMEJcdTIyODZcdTIyODdcdTIyODJcdTIyODNcdTIyMkFcdTIyMjlcIl0sXG5bXCI4MWM4XCIsXCJcdTIyMjdcdTIyMjhcdUZGRTJcdTIxRDJcdTIxRDRcdTIyMDBcdTIyMDNcIl0sXG5bXCI4MWRhXCIsXCJcdTIyMjBcdTIyQTVcdTIzMTJcdTIyMDJcdTIyMDdcdTIyNjFcdTIyNTJcdTIyNkFcdTIyNkJcdTIyMUFcdTIyM0RcdTIyMURcdTIyMzVcdTIyMkJcdTIyMkNcIl0sXG5bXCI4MWYwXCIsXCJcdTIxMkJcdTIwMzBcdTI2NkZcdTI2NkRcdTI2NkFcdTIwMjBcdTIwMjFcdTAwQjZcIl0sXG5bXCI4MWZjXCIsXCJcdTI1RUZcIl0sXG5bXCI4MjRmXCIsXCJcdUZGMTBcIiw5XSxcbltcIjgyNjBcIixcIlx1RkYyMVwiLDI1XSxcbltcIjgyODFcIixcIlx1RkY0MVwiLDI1XSxcbltcIjgyOWZcIixcIlx1MzA0MVwiLDgyXSxcbltcIjgzNDBcIixcIlx1MzBBMVwiLDYyXSxcbltcIjgzODBcIixcIlx1MzBFMFwiLDIyXSxcbltcIjgzOWZcIixcIlx1MDM5MVwiLDE2LFwiXHUwM0EzXCIsNl0sXG5bXCI4M2JmXCIsXCJcdTAzQjFcIiwxNixcIlx1MDNDM1wiLDZdLFxuW1wiODQ0MFwiLFwiXHUwNDEwXCIsNSxcIlx1MDQwMVx1MDQxNlwiLDI1XSxcbltcIjg0NzBcIixcIlx1MDQzMFwiLDUsXCJcdTA0NTFcdTA0MzZcIiw3XSxcbltcIjg0ODBcIixcIlx1MDQzRVwiLDE3XSxcbltcIjg0OWZcIixcIlx1MjUwMFx1MjUwMlx1MjUwQ1x1MjUxMFx1MjUxOFx1MjUxNFx1MjUxQ1x1MjUyQ1x1MjUyNFx1MjUzNFx1MjUzQ1x1MjUwMVx1MjUwM1x1MjUwRlx1MjUxM1x1MjUxQlx1MjUxN1x1MjUyM1x1MjUzM1x1MjUyQlx1MjUzQlx1MjU0Qlx1MjUyMFx1MjUyRlx1MjUyOFx1MjUzN1x1MjUzRlx1MjUxRFx1MjUzMFx1MjUyNVx1MjUzOFx1MjU0MlwiXSxcbltcIjg3NDBcIixcIlx1MjQ2MFwiLDE5LFwiXHUyMTYwXCIsOV0sXG5bXCI4NzVmXCIsXCJcdTMzNDlcdTMzMTRcdTMzMjJcdTMzNERcdTMzMThcdTMzMjdcdTMzMDNcdTMzMzZcdTMzNTFcdTMzNTdcdTMzMERcdTMzMjZcdTMzMjNcdTMzMkJcdTMzNEFcdTMzM0JcdTMzOUNcdTMzOURcdTMzOUVcdTMzOEVcdTMzOEZcdTMzQzRcdTMzQTFcIl0sXG5bXCI4NzdlXCIsXCJcdTMzN0JcIl0sXG5bXCI4NzgwXCIsXCJcdTMwMURcdTMwMUZcdTIxMTZcdTMzQ0RcdTIxMjFcdTMyQTRcIiw0LFwiXHUzMjMxXHUzMjMyXHUzMjM5XHUzMzdFXHUzMzdEXHUzMzdDXHUyMjUyXHUyMjYxXHUyMjJCXHUyMjJFXHUyMjExXHUyMjFBXHUyMkE1XHUyMjIwXHUyMjFGXHUyMkJGXHUyMjM1XHUyMjI5XHUyMjJBXCJdLFxuW1wiODg5ZlwiLFwiXHU0RTlDXHU1NTE2XHU1QTAzXHU5NjNGXHU1NEMwXHU2MTFCXHU2MzI4XHU1OUY2XHU5MDIyXHU4NDc1XHU4MzFDXHU3QTUwXHU2MEFBXHU2M0UxXHU2RTI1XHU2NUVEXHU4NDY2XHU4MkE2XHU5QkY1XHU2ODkzXHU1NzI3XHU2NUExXHU2MjcxXHU1QjlCXHU1OUQwXHU4NjdCXHU5OEY0XHU3RDYyXHU3REJFXHU5QjhFXHU2MjE2XHU3QzlGXHU4OEI3XHU1Qjg5XHU1RUI1XHU2MzA5XHU2Njk3XHU2ODQ4XHU5NUM3XHU5NzhEXHU2NzRGXHU0RUU1XHU0RjBBXHU0RjREXHU0RjlEXHU1MDQ5XHU1NkYyXHU1OTM3XHU1OUQ0XHU1QTAxXHU1QzA5XHU2MERGXHU2MTBGXHU2MTcwXHU2NjEzXHU2OTA1XHU3MEJBXHU3NTRGXHU3NTcwXHU3OUZCXHU3REFEXHU3REVGXHU4MEMzXHU4NDBFXHU4ODYzXHU4QjAyXHU5MDU1XHU5MDdBXHU1MzNCXHU0RTk1XHU0RUE1XHU1N0RGXHU4MEIyXHU5MEMxXHU3OEVGXHU0RTAwXHU1OEYxXHU2RUEyXHU5MDM4XHU3QTMyXHU4MzI4XHU4MjhCXHU5QzJGXHU1MTQxXHU1MzcwXHU1NEJEXHU1NEUxXHU1NkUwXHU1OUZCXHU1RjE1XHU5OEYyXHU2REVCXHU4MEU0XHU4NTJEXCJdLFxuW1wiODk0MFwiLFwiXHU5NjYyXHU5NjcwXHU5NkEwXHU5N0ZCXHU1NDBCXHU1M0YzXHU1Qjg3XHU3MENGXHU3RkJEXHU4RkMyXHU5NkU4XHU1MzZGXHU5RDVDXHU3QUJBXHU0RTExXHU3ODkzXHU4MUZDXHU2RTI2XHU1NjE4XHU1NTA0XHU2QjFEXHU4NTFBXHU5QzNCXHU1OUU1XHU1M0E5XHU2RDY2XHU3NERDXHU5NThGXHU1NjQyXHU0RTkxXHU5MDRCXHU5NkYyXHU4MzRGXHU5OTBDXHU1M0UxXHU1NUI2XHU1QjMwXHU1RjcxXHU2NjIwXHU2NkYzXHU2ODA0XHU2QzM4XHU2Q0YzXHU2RDI5XHU3NDVCXHU3NkM4XHU3QTRFXHU5ODM0XHU4MkYxXHU4ODVCXHU4QTYwXHU5MkVEXHU2REIyXHU3NUFCXHU3NkNBXHU5OUM1XHU2MEE2XHU4QjAxXHU4RDhBXHU5NUIyXHU2OThFXHU1M0FEXHU1MTg2XCJdLFxuW1wiODk4MFwiLFwiXHU1NzEyXHU1ODMwXHU1OTQ0XHU1QkI0XHU1RUY2XHU2MDI4XHU2M0E5XHU2M0Y0XHU2Q0JGXHU2RjE0XHU3MDhFXHU3MTE0XHU3MTU5XHU3MUQ1XHU3MzNGXHU3RTAxXHU4Mjc2XHU4MkQxXHU4NTk3XHU5MDYwXHU5MjVCXHU5RDFCXHU1ODY5XHU2NUJDXHU2QzVBXHU3NTI1XHU1MUY5XHU1OTJFXHU1OTY1XHU1RjgwXHU1RkRDXHU2MkJDXHU2NUZBXHU2QTJBXHU2QjI3XHU2QkI0XHU3MzhCXHU3RkMxXHU4OTU2XHU5RDJDXHU5RDBFXHU5RUM0XHU1Q0ExXHU2Qzk2XHU4MzdCXHU1MTA0XHU1QzRCXHU2MUI2XHU4MUM2XHU2ODc2XHU3MjYxXHU0RTU5XHU0RkZBXHU1Mzc4XHU2MDY5XHU2RTI5XHU3QTRGXHU5N0YzXHU0RTBCXHU1MzE2XHU0RUVFXHU0RjU1XHU0RjNEXHU0RkExXHU0RjczXHU1MkEwXHU1M0VGXHU1NjA5XHU1OTBGXHU1QUMxXHU1QkI2XHU1QkUxXHU3OUQxXHU2Njg3XHU2NzlDXHU2N0I2XHU2QjRDXHU2Q0IzXHU3MDZCXHU3M0MyXHU3OThEXHU3OUJFXHU3QTNDXHU3Qjg3XHU4MkIxXHU4MkRCXHU4MzA0XHU4Mzc3XHU4M0VGXHU4M0QzXHU4NzY2XHU4QUIyXHU1NjI5XHU4Q0E4XHU4RkU2XHU5MDRFXHU5NzFFXHU4NjhBXHU0RkM0XHU1Q0U4XHU2MjExXHU3MjU5XHU3NTNCXHU4MUU1XHU4MkJEXHU4NkZFXHU4Q0MwXHU5NkM1XHU5OTEzXHU5OUQ1XHU0RUNCXHU0RjFBXHU4OUUzXHU1NkRFXHU1ODRBXHU1OENBXHU1RUZCXHU1RkVCXHU2MDJBXHU2MDk0XHU2MDYyXHU2MUQwXHU2MjEyXHU2MkQwXHU2NTM5XCJdLFxuW1wiOGE0MFwiLFwiXHU5QjQxXHU2NjY2XHU2OEIwXHU2RDc3XHU3MDcwXHU3NTRDXHU3Njg2XHU3RDc1XHU4MkE1XHU4N0Y5XHU5NThCXHU5NjhFXHU4QzlEXHU1MUYxXHU1MkJFXHU1OTE2XHU1NEIzXHU1QkIzXHU1RDE2XHU2MTY4XHU2OTgyXHU2REFGXHU3ODhEXHU4NENCXHU4ODU3XHU4QTcyXHU5M0E3XHU5QUI4XHU2RDZDXHU5OUE4XHU4NkQ5XHU1N0EzXHU2N0ZGXHU4NkNFXHU5MjBFXHU1MjgzXHU1Njg3XHU1NDA0XHU1RUQzXHU2MkUxXHU2NEI5XHU2ODNDXHU2ODM4XHU2QkJCXHU3MzcyXHU3OEJBXHU3QTZCXHU4OTlBXHU4OUQyXHU4RDZCXHU4RjAzXHU5MEVEXHU5NUEzXHU5Njk0XHU5NzY5XHU1QjY2XHU1Q0IzXHU2OTdEXHU5ODREXHU5ODRFXHU2MzlCXHU3QjIwXHU2QTJCXCJdLFxuW1wiOGE4MFwiLFwiXHU2QTdGXHU2OEI2XHU5QzBEXHU2RjVGXHU1MjcyXHU1NTlEXHU2MDcwXHU2MkVDXHU2RDNCXHU2RTA3XHU2RUQxXHU4NDVCXHU4OTEwXHU4RjQ0XHU0RTE0XHU5QzM5XHU1M0Y2XHU2OTFCXHU2QTNBXHU5Nzg0XHU2ODJBXHU1MTVDXHU3QUMzXHU4NEIyXHU5MURDXHU5MzhDXHU1NjVCXHU5RDI4XHU2ODIyXHU4MzA1XHU4NDMxXHU3Q0E1XHU1MjA4XHU4MkM1XHU3NEU2XHU0RTdFXHU0RjgzXHU1MUEwXHU1QkQyXHU1MjBBXHU1MkQ4XHU1MkU3XHU1REZCXHU1NTlBXHU1ODJBXHU1OUU2XHU1QjhDXHU1Qjk4XHU1QkRCXHU1RTcyXHU1RTc5XHU2MEEzXHU2MTFGXHU2MTYzXHU2MUJFXHU2M0RCXHU2NTYyXHU2N0QxXHU2ODUzXHU2OEZBXHU2QjNFXHU2QjUzXHU2QzU3XHU2RjIyXHU2Rjk3XHU2RjQ1XHU3NEIwXHU3NTE4XHU3NkUzXHU3NzBCXHU3QUZGXHU3QkExXHU3QzIxXHU3REU5XHU3RjM2XHU3RkYwXHU4MDlEXHU4MjY2XHU4MzlFXHU4OUIzXHU4QUNDXHU4Q0FCXHU5MDg0XHU5NDUxXHU5NTkzXHU5NTkxXHU5NUEyXHU5NjY1XHU5N0QzXHU5OTI4XHU4MjE4XHU0RTM4XHU1NDJCXHU1Q0I4XHU1RENDXHU3M0E5XHU3NjRDXHU3NzNDXHU1Q0E5XHU3RkVCXHU4RDBCXHU5NkMxXHU5ODExXHU5ODU0XHU5ODU4XHU0RjAxXHU0RjBFXHU1MzcxXHU1NTlDXHU1NjY4XHU1N0ZBXHU1OTQ3XHU1QjA5XHU1QkM0XHU1QzkwXHU1RTBDXHU1RTdFXHU1RkNDXHU2M0VFXHU2NzNBXHU2NUQ3XHU2NUUyXHU2NzFGXHU2OENCXHU2OEM0XCJdLFxuW1wiOGI0MFwiLFwiXHU2QTVGXHU1RTMwXHU2QkM1XHU2QzE3XHU2QzdEXHU3NTdGXHU3OTQ4XHU1QjYzXHU3QTAwXHU3RDAwXHU1RkJEXHU4OThGXHU4QTE4XHU4Q0I0XHU4RDc3XHU4RUNDXHU4RjFEXHU5OEUyXHU5QTBFXHU5QjNDXHU0RTgwXHU1MDdEXHU1MTAwXHU1OTkzXHU1QjlDXHU2MjJGXHU2MjgwXHU2NEVDXHU2QjNBXHU3MkEwXHU3NTkxXHU3OTQ3XHU3RkE5XHU4N0ZCXHU4QUJDXHU4QjcwXHU2M0FDXHU4M0NBXHU5N0EwXHU1NDA5XHU1NDAzXHU1NUFCXHU2ODU0XHU2QTU4XHU4QTcwXHU3ODI3XHU2Nzc1XHU5RUNEXHU1Mzc0XHU1QkEyXHU4MTFBXHU4NjUwXHU5MDA2XHU0RTE4XHU0RTQ1XHU0RUM3XHU0RjExXHU1M0NBXHU1NDM4XHU1QkFFXHU1RjEzXHU2MDI1XHU2NTUxXCJdLFxuW1wiOGI4MFwiLFwiXHU2NzNEXHU2QzQyXHU2QzcyXHU2Q0UzXHU3MDc4XHU3NDAzXHU3QTc2XHU3QUFFXHU3QjA4XHU3RDFBXHU3Q0ZFXHU3RDY2XHU2NUU3XHU3MjVCXHU1M0JCXHU1QzQ1XHU1REU4XHU2MkQyXHU2MkUwXHU2MzE5XHU2RTIwXHU4NjVBXHU4QTMxXHU4REREXHU5MkY4XHU2RjAxXHU3OUE2XHU5QjVBXHU0RUE4XHU0RUFCXHU0RUFDXHU0RjlCXHU0RkEwXHU1MEQxXHU1MTQ3XHU3QUY2XHU1MTcxXHU1MUY2XHU1MzU0XHU1MzIxXHU1MzdGXHU1M0VCXHU1NUFDXHU1ODgzXHU1Q0UxXHU1RjM3XHU1RjRBXHU2MDJGXHU2MDUwXHU2MDZEXHU2MzFGXHU2NTU5XHU2QTRCXHU2Q0MxXHU3MkMyXHU3MkVEXHU3N0VGXHU4MEY4XHU4MTA1XHU4MjA4XHU4NTRFXHU5MEY3XHU5M0UxXHU5N0ZGXHU5OTU3XHU5QTVBXHU0RUYwXHU1MUREXHU1QzJEXHU2NjgxXHU2OTZEXHU1QzQwXHU2NkYyXHU2OTc1XHU3Mzg5XHU2ODUwXHU3QzgxXHU1MEM1XHU1MkU0XHU1NzQ3XHU1REZFXHU5MzI2XHU2NUE0XHU2QjIzXHU2QjNEXHU3NDM0XHU3OTgxXHU3OUJEXHU3QjRCXHU3RENBXHU4MkI5XHU4M0NDXHU4ODdGXHU4OTVGXHU4QjM5XHU4RkQxXHU5MUQxXHU1NDFGXHU5MjgwXHU0RTVEXHU1MDM2XHU1M0U1XHU1MzNBXHU3MkQ3XHU3Mzk2XHU3N0U5XHU4MkU2XHU4RUFGXHU5OUM2XHU5OUM4XHU5OUQyXHU1MTc3XHU2MTFBXHU4NjVFXHU1NUIwXHU3QTdBXHU1MDc2XHU1QkQzXHU5MDQ3XHU5Njg1XHU0RTMyXHU2QURCXHU5MUU3XHU1QzUxXHU1QzQ4XCJdLFxuW1wiOGM0MFwiLFwiXHU2Mzk4XHU3QTlGXHU2QzkzXHU5Nzc0XHU4RjYxXHU3QUFBXHU3MThBXHU5Njg4XHU3QzgyXHU2ODE3XHU3RTcwXHU2ODUxXHU5MzZDXHU1MkYyXHU1NDFCXHU4NUFCXHU4QTEzXHU3RkE0XHU4RUNEXHU5MEUxXHU1MzY2XHU4ODg4XHU3OTQxXHU0RkMyXHU1MEJFXHU1MjExXHU1MTQ0XHU1NTUzXHU1NzJEXHU3M0VBXHU1NzhCXHU1OTUxXHU1RjYyXHU1Rjg0XHU2MDc1XHU2MTc2XHU2MTY3XHU2MUE5XHU2M0IyXHU2NDNBXHU2NTZDXHU2NjZGXHU2ODQyXHU2RTEzXHU3NTY2XHU3QTNEXHU3Q0ZCXHU3RDRDXHU3RDk5XHU3RTRCXHU3RjZCXHU4MzBFXHU4MzRBXHU4NkNEXHU4QTA4XHU4QTYzXHU4QjY2XHU4RUZEXHU5ODFBXHU5RDhGXHU4MkI4XHU4RkNFXHU5QkU4XCJdLFxuW1wiOGM4MFwiLFwiXHU1Mjg3XHU2MjFGXHU2NDgzXHU2RkMwXHU5Njk5XHU2ODQxXHU1MDkxXHU2QjIwXHU2QzdBXHU2RjU0XHU3QTc0XHU3RDUwXHU4ODQwXHU4QTIzXHU2NzA4XHU0RUY2XHU1MDM5XHU1MDI2XHU1MDY1XHU1MTdDXHU1MjM4XHU1MjYzXHU1NUE3XHU1NzBGXHU1ODA1XHU1QUNDXHU1RUZBXHU2MUIyXHU2MUY4XHU2MkYzXHU2MzcyXHU2OTFDXHU2QTI5XHU3MjdEXHU3MkFDXHU3MzJFXHU3ODE0XHU3ODZGXHU3RDc5XHU3NzBDXHU4MEE5XHU4OThCXHU4QjE5XHU4Q0UyXHU4RUQyXHU5MDYzXHU5Mzc1XHU5NjdBXHU5ODU1XHU5QTEzXHU5RTc4XHU1MTQzXHU1MzlGXHU1M0IzXHU1RTdCXHU1RjI2XHU2RTFCXHU2RTkwXHU3Mzg0XHU3M0ZFXHU3RDQzXHU4MjM3XHU4QTAwXHU4QUZBXHU5NjUwXHU0RTRFXHU1MDBCXHU1M0U0XHU1NDdDXHU1NkZBXHU1OUQxXHU1QjY0XHU1REYxXHU1RUFCXHU1RjI3XHU2MjM4XHU2NTQ1XHU2N0FGXHU2RTU2XHU3MkQwXHU3Q0NBXHU4OEI0XHU4MEExXHU4MEUxXHU4M0YwXHU4NjRFXHU4QTg3XHU4REU4XHU5MjM3XHU5NkM3XHU5ODY3XHU5RjEzXHU0RTk0XHU0RTkyXHU0RjBEXHU1MzQ4XHU1NDQ5XHU1NDNFXHU1QTJGXHU1RjhDXHU1RkExXHU2MDlGXHU2OEE3XHU2QThFXHU3NDVBXHU3ODgxXHU4QTlFXHU4QUE0XHU4Qjc3XHU5MTkwXHU0RTVFXHU5QkM5XHU0RUE0XHU0RjdDXHU0RkFGXHU1MDE5XHU1MDE2XHU1MTQ5XHU1MTZDXHU1MjlGXHU1MkI5XHU1MkZFXHU1MzlBXHU1M0UzXHU1NDExXCJdLFxuW1wiOGQ0MFwiLFwiXHU1NDBFXHU1NTg5XHU1NzUxXHU1N0EyXHU1OTdEXHU1QjU0XHU1QjVEXHU1QjhGXHU1REU1XHU1REU3XHU1REY3XHU1RTc4XHU1RTgzXHU1RTlBXHU1RUI3XHU1RjE4XHU2MDUyXHU2MTRDXHU2Mjk3XHU2MkQ4XHU2M0E3XHU2NTNCXHU2NjAyXHU2NjQzXHU2NkY0XHU2NzZEXHU2ODIxXHU2ODk3XHU2OUNCXHU2QzVGXHU2RDJBXHU2RDY5XHU2RTJGXHU2RTlEXHU3NTMyXHU3Njg3XHU3ODZDXHU3QTNGXHU3Q0UwXHU3RDA1XHU3RDE4XHU3RDVFXHU3REIxXHU4MDE1XHU4MDAzXHU4MEFGXHU4MEIxXHU4MTU0XHU4MThGXHU4MjJBXHU4MzUyXHU4ODRDXHU4ODYxXHU4QjFCXHU4Q0EyXHU4Q0ZDXHU5MENBXHU5MTc1XHU5MjcxXHU3ODNGXHU5MkZDXHU5NUE0XHU5NjREXCJdLFxuW1wiOGQ4MFwiLFwiXHU5ODA1XHU5OTk5XHU5QUQ4XHU5RDNCXHU1MjVCXHU1MkFCXHU1M0Y3XHU1NDA4XHU1OEQ1XHU2MkY3XHU2RkUwXHU4QzZBXHU4RjVGXHU5RUI5XHU1MTRCXHU1MjNCXHU1NDRBXHU1NkZEXHU3QTQwXHU5MTc3XHU5RDYwXHU5RUQyXHU3MzQ0XHU2RjA5XHU4MTcwXHU3NTExXHU1RkZEXHU2MERBXHU5QUE4XHU3MkRCXHU4RkJDXHU2QjY0XHU5ODAzXHU0RUNBXHU1NkYwXHU1NzY0XHU1OEJFXHU1QTVBXHU2MDY4XHU2MUM3XHU2NjBGXHU2NjA2XHU2ODM5XHU2OEIxXHU2REY3XHU3NUQ1XHU3RDNBXHU4MjZFXHU5QjQyXHU0RTlCXHU0RjUwXHU1M0M5XHU1NTA2XHU1RDZGXHU1REU2XHU1REVFXHU2N0ZCXHU2Qzk5XHU3NDczXHU3ODAyXHU4QTUwXHU5Mzk2XHU4OERGXHU1NzUwXHU1RUE3XHU2MzJCXHU1MEI1XHU1MEFDXHU1MThEXHU2NzAwXHU1NEM5XHU1ODVFXHU1OUJCXHU1QkIwXHU1RjY5XHU2MjREXHU2M0ExXHU2ODNEXHU2QjczXHU2RTA4XHU3MDdEXHU5MUM3XHU3MjgwXHU3ODE1XHU3ODI2XHU3OTZEXHU2NThFXHU3RDMwXHU4M0RDXHU4OEMxXHU4RjA5XHU5NjlCXHU1MjY0XHU1NzI4XHU2NzUwXHU3RjZBXHU4Q0ExXHU1MUI0XHU1NzQyXHU5NjJBXHU1ODNBXHU2OThBXHU4MEI0XHU1NEIyXHU1RDBFXHU1N0ZDXHU3ODk1XHU5REZBXHU0RjVDXHU1MjRBXHU1NDhCXHU2NDNFXHU2NjI4XHU2NzE0XHU2N0Y1XHU3QTg0XHU3QjU2XHU3RDIyXHU5MzJGXHU2ODVDXHU5QkFEXHU3QjM5XHU1MzE5XHU1MThBXHU1MjM3XCJdLFxuW1wiOGU0MFwiLFwiXHU1QkRGXHU2MkY2XHU2NEFFXHU2NEU2XHU2NzJEXHU2QkJBXHU4NUE5XHU5NkQxXHU3NjkwXHU5QkQ2XHU2MzRDXHU5MzA2XHU5QkFCXHU3NkJGXHU2NjUyXHU0RTA5XHU1MDk4XHU1M0MyXHU1QzcxXHU2MEU4XHU2NDkyXHU2NTYzXHU2ODVGXHU3MUU2XHU3M0NBXHU3NTIzXHU3Qjk3XHU3RTgyXHU4Njk1XHU4QjgzXHU4Q0RCXHU5MTc4XHU5OTEwXHU2NUFDXHU2NkFCXHU2QjhCXHU0RUQ1XHU0RUQ0XHU0RjNBXHU0RjdGXHU1MjNBXHU1M0Y4XHU1M0YyXHU1NUUzXHU1NkRCXHU1OEVCXHU1OUNCXHU1OUM5XHU1OUZGXHU1QjUwXHU1QzREXHU1RTAyXHU1RTJCXHU1RkQ3XHU2MDFEXHU2MzA3XHU2NTJGXHU1QjVDXHU2NUFGXHU2NUJEXHU2NUU4XHU2NzlEXHU2QjYyXCJdLFxuW1wiOGU4MFwiLFwiXHU2QjdCXHU2QzBGXHU3MzQ1XHU3OTQ5XHU3OUMxXHU3Q0Y4XHU3RDE5XHU3RDJCXHU4MEEyXHU4MTAyXHU4MUYzXHU4OTk2XHU4QTVFXHU4QTY5XHU4QTY2XHU4QThDXHU4QUVFXHU4Q0M3XHU4Q0RDXHU5NkNDXHU5OEZDXHU2QjZGXHU0RThCXHU0RjNDXHU0RjhEXHU1MTUwXHU1QjU3XHU1QkZBXHU2MTQ4XHU2MzAxXHU2NjQyXHU2QjIxXHU2RUNCXHU2Q0JCXHU3MjNFXHU3NEJEXHU3NUQ0XHU3OEMxXHU3OTNBXHU4MDBDXHU4MDMzXHU4MUVBXHU4NDk0XHU4RjlFXHU2QzUwXHU5RTdGXHU1RjBGXHU4QjU4XHU5RDJCXHU3QUZBXHU4RUY4XHU1QjhEXHU5NkVCXHU0RTAzXHU1M0YxXHU1N0Y3XHU1OTMxXHU1QUM5XHU1QkE0XHU2MDg5XHU2RTdGXHU2RjA2XHU3NUJFXHU4Q0VBXHU1QjlGXHU4NTAwXHU3QkUwXHU1MDcyXHU2N0Y0XHU4MjlEXHU1QzYxXHU4NTRBXHU3RTFFXHU4MjBFXHU1MTk5XHU1QzA0XHU2MzY4XHU4RDY2XHU2NTlDXHU3MTZFXHU3OTNFXHU3RDE3XHU4MDA1XHU4QjFEXHU4RUNBXHU5MDZFXHU4NkM3XHU5MEFBXHU1MDFGXHU1MkZBXHU1QzNBXHU2NzUzXHU3MDdDXHU3MjM1XHU5MTRDXHU5MUM4XHU5MzJCXHU4MkU1XHU1QkMyXHU1RjMxXHU2MEY5XHU0RTNCXHU1M0Q2XHU1Qjg4XHU2MjRCXHU2NzMxXHU2QjhBXHU3MkU5XHU3M0UwXHU3QTJFXHU4MTZCXHU4REEzXHU5MTUyXHU5OTk2XHU1MTEyXHU1M0Q3XHU1NDZBXHU1QkZGXHU2Mzg4XHU2QTM5XHU3REFDXHU5NzAwXHU1NkRBXHU1M0NFXHU1NDY4XCJdLFxuW1wiOGY0MFwiLFwiXHU1Qjk3XHU1QzMxXHU1RERFXHU0RkVFXHU2MTAxXHU2MkZFXHU2RDMyXHU3OUMwXHU3OUNCXHU3RDQyXHU3RTREXHU3RkQyXHU4MUVEXHU4MjFGXHU4NDkwXHU4ODQ2XHU4OTcyXHU4QjkwXHU4RTc0XHU4RjJGXHU5MDMxXHU5MTRCXHU5MTZDXHU5NkM2XHU5MTlDXHU0RUMwXHU0RjRGXHU1MTQ1XHU1MzQxXHU1RjkzXHU2MjBFXHU2N0Q0XHU2QzQxXHU2RTBCXHU3MzYzXHU3RTI2XHU5MUNEXHU5MjgzXHU1M0Q0XHU1OTE5XHU1QkJGXHU2REQxXHU3OTVEXHU3RTJFXHU3QzlCXHU1ODdFXHU3MTlGXHU1MUZBXHU4ODUzXHU4RkYwXHU0RkNBXHU1Q0ZCXHU2NjI1XHU3N0FDXHU3QUUzXHU4MjFDXHU5OUZGXHU1MUM2XHU1RkFBXHU2NUVDXHU2OTZGXHU2Qjg5XHU2REYzXCJdLFxuW1wiOGY4MFwiLFwiXHU2RTk2XHU2RjY0XHU3NkZFXHU3RDE0XHU1REUxXHU5MDc1XHU5MTg3XHU5ODA2XHU1MUU2XHU1MjFEXHU2MjQwXHU2NjkxXHU2NkQ5XHU2RTFBXHU1RUI2XHU3REQyXHU3RjcyXHU2NkY4XHU4NUFGXHU4NUY3XHU4QUY4XHU1MkE5XHU1M0Q5XHU1OTczXHU1RThGXHU1RjkwXHU2MDU1XHU5MkU0XHU5NjY0XHU1MEI3XHU1MTFGXHU1MkREXHU1MzIwXHU1MzQ3XHU1M0VDXHU1NEU4XHU1NTQ2XHU1NTMxXHU1NjE3XHU1OTY4XHU1OUJFXHU1QTNDXHU1QkI1XHU1QzA2XHU1QzBGXHU1QzExXHU1QzFBXHU1RTg0XHU1RThBXHU1RUUwXHU1RjcwXHU2MjdGXHU2Mjg0XHU2MkRCXHU2MzhDXHU2Mzc3XHU2NjA3XHU2NjBDXHU2NjJEXHU2Njc2XHU2NzdFXHU2OEEyXHU2QTFGXHU2QTM1XHU2Q0JDXHU2RDg4XHU2RTA5XHU2RTU4XHU3MTNDXHU3MTI2XHU3MTY3XHU3NUM3XHU3NzAxXHU3ODVEXHU3OTAxXHU3OTY1XHU3OUYwXHU3QUUwXHU3QjExXHU3Q0E3XHU3RDM5XHU4MDk2XHU4M0Q2XHU4NDhCXHU4NTQ5XHU4ODVEXHU4OEYzXHU4QTFGXHU4QTNDXHU4QTU0XHU4QTczXHU4QzYxXHU4Q0RFXHU5MUE0XHU5MjY2XHU5MzdFXHU5NDE4XHU5NjlDXHU5Nzk4XHU0RTBBXHU0RTA4XHU0RTFFXHU0RTU3XHU1MTk3XHU1MjcwXHU1N0NFXHU1ODM0XHU1OENDXHU1QjIyXHU1RTM4XHU2MEM1XHU2NEZFXHU2NzYxXHU2NzU2XHU2RDQ0XHU3MkI2XHU3NTczXHU3QTYzXHU4NEI4XHU4QjcyXHU5MUI4XHU5MzIwXHU1NjMxXHU1N0Y0XHU5OEZFXCJdLFxuW1wiOTA0MFwiLFwiXHU2MkVEXHU2OTBEXHU2Qjk2XHU3MUVEXHU3RTU0XHU4MDc3XHU4MjcyXHU4OUU2XHU5OERGXHU4NzU1XHU4RkIxXHU1QzNCXHU0RjM4XHU0RkUxXHU0RkI1XHU1NTA3XHU1QTIwXHU1QkREXHU1QkU5XHU1RkMzXHU2MTRFXHU2MzJGXHU2NUIwXHU2NjRCXHU2OEVFXHU2OTlCXHU2RDc4XHU2REYxXHU3NTMzXHU3NUI5XHU3NzFGXHU3OTVFXHU3OUU2XHU3RDMzXHU4MUUzXHU4MkFGXHU4NUFBXHU4OUFBXHU4QTNBXHU4RUFCXHU4RjlCXHU5MDMyXHU5MUREXHU5NzA3XHU0RUJBXHU0RUMxXHU1MjAzXHU1ODc1XHU1OEVDXHU1QzBCXHU3NTFBXHU1QzNEXHU4MTRFXHU4QTBBXHU4RkM1XHU5NjYzXHU5NzZEXHU3QjI1XHU4QUNGXHU5ODA4XHU5MTYyXHU1NkYzXHU1M0E4XCJdLFxuW1wiOTA4MFwiLFwiXHU5MDE3XHU1NDM5XHU1NzgyXHU1RTI1XHU2M0E4XHU2QzM0XHU3MDhBXHU3NzYxXHU3QzhCXHU3RkUwXHU4ODcwXHU5MDQyXHU5MTU0XHU5MzEwXHU5MzE4XHU5NjhGXHU3NDVFXHU5QUM0XHU1RDA3XHU1RDY5XHU2NTcwXHU2N0EyXHU4REE4XHU5NkRCXHU2MzZFXHU2NzQ5XHU2OTE5XHU4M0M1XHU5ODE3XHU5NkMwXHU4OEZFXHU2Rjg0XHU2NDdBXHU1QkY4XHU0RTE2XHU3MDJDXHU3NTVEXHU2NjJGXHU1MUM0XHU1MjM2XHU1MkUyXHU1OUQzXHU1RjgxXHU2MDI3XHU2MjEwXHU2NTNGXHU2NTc0XHU2NjFGXHU2Njc0XHU2OEYyXHU2ODE2XHU2QjYzXHU2RTA1XHU3MjcyXHU3NTFGXHU3NkRCXHU3Q0JFXHU4MDU2XHU1OEYwXHU4OEZEXHU4OTdGXHU4QUEwXHU4QTkzXHU4QUNCXHU5MDFEXHU5MTkyXHU5NzUyXHU5NzU5XHU2NTg5XHU3QTBFXHU4MTA2XHU5NkJCXHU1RTJEXHU2MERDXHU2MjFBXHU2NUE1XHU2NjE0XHU2NzkwXHU3N0YzXHU3QTREXHU3QzREXHU3RTNFXHU4MTBBXHU4Q0FDXHU4RDY0XHU4REUxXHU4RTVGXHU3OEE5XHU1MjA3XHU2MkQ5XHU2M0E1XHU2NDQyXHU2Mjk4XHU4QTJEXHU3QTgzXHU3QkMwXHU4QUFDXHU5NkVBXHU3RDc2XHU4MjBDXHU4NzQ5XHU0RUQ5XHU1MTQ4XHU1MzQzXHU1MzYwXHU1QkEzXHU1QzAyXHU1QzE2XHU1REREXHU2MjI2XHU2MjQ3XHU2NEIwXHU2ODEzXHU2ODM0XHU2Q0M5XHU2RDQ1XHU2RDE3XHU2N0QzXHU2RjVDXHU3MTRFXHU3MTdEXHU2NUNCXHU3QTdGXHU3QkFEXHU3RERBXCJdLFxuW1wiOTE0MFwiLFwiXHU3RTRBXHU3RkE4XHU4MTdBXHU4MjFCXHU4MjM5XHU4NUE2XHU4QTZFXHU4Q0NFXHU4REY1XHU5MDc4XHU5MDc3XHU5MkFEXHU5MjkxXHU5NTgzXHU5QkFFXHU1MjREXHU1NTg0XHU2RjM4XHU3MTM2XHU1MTY4XHU3OTg1XHU3RTU1XHU4MUIzXHU3Q0NFXHU1NjRDXHU1ODUxXHU1Q0E4XHU2M0FBXHU2NkZFXHU2NkZEXHU2OTVBXHU3MkQ5XHU3NThGXHU3NThFXHU3OTBFXHU3OTU2XHU3OURGXHU3Qzk3XHU3RDIwXHU3RDQ0XHU4NjA3XHU4QTM0XHU5NjNCXHU5MDYxXHU5RjIwXHU1MEU3XHU1Mjc1XHU1M0NDXHU1M0UyXHU1MDA5XHU1NUFBXHU1OEVFXHU1OTRGXHU3MjNEXHU1QjhCXHU1QzY0XHU1MzFEXHU2MEUzXHU2MEYzXHU2MzVDXHU2MzgzXHU2MzNGXHU2M0JCXCJdLFxuW1wiOTE4MFwiLFwiXHU2NENEXHU2NUU5XHU2NkY5XHU1REUzXHU2OUNEXHU2OUZEXHU2RjE1XHU3MUU1XHU0RTg5XHU3NUU5XHU3NkY4XHU3QTkzXHU3Q0RGXHU3RENGXHU3RDlDXHU4MDYxXHU4MzQ5XHU4MzU4XHU4NDZDXHU4NEJDXHU4NUZCXHU4OEM1XHU4RDcwXHU5MDAxXHU5MDZEXHU5Mzk3XHU5NzFDXHU5QTEyXHU1MENGXHU1ODk3XHU2MThFXHU4MUQzXHU4NTM1XHU4RDA4XHU5MDIwXHU0RkMzXHU1MDc0XHU1MjQ3XHU1MzczXHU2MDZGXHU2MzQ5XHU2NzVGXHU2RTJDXHU4REIzXHU5MDFGXHU0RkQ3XHU1QzVFXHU4Q0NBXHU2NUNGXHU3RDlBXHU1MzUyXHU4ODk2XHU1MTc2XHU2M0MzXHU1QjU4XHU1QjZCXHU1QzBBXHU2NDBEXHU2NzUxXHU5MDVDXHU0RUQ2XHU1OTFBXHU1OTJBXHU2QzcwXHU4QTUxXHU1NTNFXHU1ODE1XHU1OUE1XHU2MEYwXHU2MjUzXHU2N0MxXHU4MjM1XHU2OTU1XHU5NjQwXHU5OUM0XHU5QTI4XHU0RjUzXHU1ODA2XHU1QkZFXHU4MDEwXHU1Q0IxXHU1RTJGXHU1Rjg1XHU2MDIwXHU2MTRCXHU2MjM0XHU2NkZGXHU2Q0YwXHU2RURFXHU4MENFXHU4MTdGXHU4MkQ0XHU4ODhCXHU4Q0I4XHU5MDAwXHU5MDJFXHU5NjhBXHU5RURCXHU5QkRCXHU0RUUzXHU1M0YwXHU1OTI3XHU3QjJDXHU5MThEXHU5ODRDXHU5REY5XHU2RUREXHU3MDI3XHU1MzUzXHU1NTQ0XHU1Qjg1XHU2MjU4XHU2MjlFXHU2MkQzXHU2Q0EyXHU2RkVGXHU3NDIyXHU4QTE3XHU5NDM4XHU2RkMxXHU4QUZFXHU4MzM4XHU1MUU3XHU4NkY4XHU1M0VBXCJdLFxuW1wiOTI0MFwiLFwiXHU1M0U5XHU0RjQ2XHU5MDU0XHU4RkIwXHU1OTZBXHU4MTMxXHU1REZEXHU3QUVBXHU4RkJGXHU2OERBXHU4QzM3XHU3MkY4XHU5QzQ4XHU2QTNEXHU4QUIwXHU0RTM5XHU1MzU4XHU1NjA2XHU1NzY2XHU2MkM1XHU2M0EyXHU2NUU2XHU2QjRFXHU2REUxXHU2RTVCXHU3MEFEXHU3N0VEXHU3QUVGXHU3QkFBXHU3REJCXHU4MDNEXHU4MEM2XHU4NkNCXHU4QTk1XHU5MzVCXHU1NkUzXHU1OEM3XHU1RjNFXHU2NUFEXHU2Njk2XHU2QTgwXHU2QkI1XHU3NTM3XHU4QUM3XHU1MDI0XHU3N0U1XHU1NzMwXHU1RjFCXHU2MDY1XHU2NjdBXHU2QzYwXHU3NUY0XHU3QTFBXHU3RjZFXHU4MUY0XHU4NzE4XHU5MDQ1XHU5OUIzXHU3QkM5XHU3NTVDXHU3QUY5XHU3QjUxXHU4NEM0XCJdLFxuW1wiOTI4MFwiLFwiXHU5MDEwXHU3OUU5XHU3QTkyXHU4MzM2XHU1QUUxXHU3NzQwXHU0RTJEXHU0RUYyXHU1Qjk5XHU1RkUwXHU2MkJEXHU2NjNDXHU2N0YxXHU2Q0U4XHU4NjZCXHU4ODc3XHU4QTNCXHU5MTRFXHU5MkYzXHU5OUQwXHU2QTE3XHU3MDI2XHU3MzJBXHU4MkU3XHU4NDU3XHU4Q0FGXHU0RTAxXHU1MTQ2XHU1MUNCXHU1NThCXHU1QkY1XHU1RTE2XHU1RTMzXHU1RTgxXHU1RjE0XHU1RjM1XHU1RjZCXHU1RkI0XHU2MUYyXHU2MzExXHU2NkEyXHU2NzFEXHU2RjZFXHU3MjUyXHU3NTNBXHU3NzNBXHU4MDc0XHU4MTM5XHU4MTc4XHU4Nzc2XHU4QUJGXHU4QURDXHU4RDg1XHU4REYzXHU5MjlBXHU5NTc3XHU5ODAyXHU5Q0U1XHU1MkM1XHU2MzU3XHU3NkY0XHU2NzE1XHU2Qzg4XHU3M0NEXHU4Q0MzXHU5M0FFXHU5NjczXHU2RDI1XHU1ODlDXHU2OTBFXHU2OUNDXHU4RkZEXHU5MzlBXHU3NURCXHU5MDFBXHU1ODVBXHU2ODAyXHU2M0I0XHU2OUZCXHU0RjQzXHU2RjJDXHU2N0Q4XHU4RkJCXHU4NTI2XHU3REI0XHU5MzU0XHU2OTNGXHU2RjcwXHU1NzZBXHU1OEY3XHU1QjJDXHU3RDJDXHU3MjJBXHU1NDBBXHU5MUUzXHU5REI0XHU0RUFEXHU0RjRFXHU1MDVDXHU1MDc1XHU1MjQzXHU4QzlFXHU1NDQ4XHU1ODI0XHU1QjlBXHU1RTFEXHU1RTk1XHU1RUFEXHU1RUY3XHU1RjFGXHU2MDhDXHU2MkI1XHU2MzNBXHU2M0QwXHU2OEFGXHU2QzQwXHU3ODg3XHU3OThFXHU3QTBCXHU3REUwXHU4MjQ3XHU4QTAyXHU4QUU2XHU4RTQ0XHU5MDEzXCJdLFxuW1wiOTM0MFwiLFwiXHU5MEI4XHU5MTJEXHU5MUQ4XHU5RjBFXHU2Q0U1XHU2NDU4XHU2NEUyXHU2NTc1XHU2RUY0XHU3Njg0XHU3QjFCXHU5MDY5XHU5M0QxXHU2RUJBXHU1NEYyXHU1RkI5XHU2NEE0XHU4RjREXHU4RkVEXHU5MjQ0XHU1MTc4XHU1ODZCXHU1OTI5XHU1QzU1XHU1RTk3XHU2REZCXHU3RThGXHU3NTFDXHU4Q0JDXHU4RUUyXHU5ODVCXHU3MEI5XHU0RjFEXHU2QkJGXHU2RkIxXHU3NTMwXHU5NkZCXHU1MTRFXHU1NDEwXHU1ODM1XHU1ODU3XHU1OUFDXHU1QzYwXHU1RjkyXHU2NTk3XHU2NzVDXHU2RTIxXHU3NjdCXHU4M0RGXHU4Q0VEXHU5MDE0XHU5MEZEXHU5MzREXHU3ODI1XHU3ODNBXHU1MkFBXHU1RUE2XHU1NzFGXHU1OTc0XHU2MDEyXHU1MDEyXHU1MTVBXHU1MUFDXCJdLFxuW1wiOTM4MFwiLFwiXHU1MUNEXHU1MjAwXHU1NTEwXHU1ODU0XHU1ODU4XHU1OTU3XHU1Qjk1XHU1Q0Y2XHU1RDhCXHU2MEJDXHU2Mjk1XHU2NDJEXHU2NzcxXHU2ODQzXHU2OEJDXHU2OERGXHU3NkQ3XHU2REQ4XHU2RTZGXHU2RDlCXHU3MDZGXHU3MUM4XHU1RjUzXHU3NUQ4XHU3OTc3XHU3QjQ5XHU3QjU0XHU3QjUyXHU3Q0Q2XHU3RDcxXHU1MjMwXHU4NDYzXHU4NTY5XHU4NUU0XHU4QTBFXHU4QjA0XHU4QzQ2XHU4RTBGXHU5MDAzXHU5MDBGXHU5NDE5XHU5Njc2XHU5ODJEXHU5QTMwXHU5NUQ4XHU1MENEXHU1MkQ1XHU1NDBDXHU1ODAyXHU1QzBFXHU2MUE3XHU2NDlFXHU2RDFFXHU3N0IzXHU3QUU1XHU4MEY0XHU4NDA0XHU5MDUzXHU5Mjg1XHU1Q0UwXHU5RDA3XHU1MzNGXHU1Rjk3XHU1RkIzXHU2RDlDXHU3Mjc5XHU3NzYzXHU3OUJGXHU3QkU0XHU2QkQyXHU3MkVDXHU4QUFEXHU2ODAzXHU2QTYxXHU1MUY4XHU3QTgxXHU2OTM0XHU1QzRBXHU5Q0Y2XHU4MkVCXHU1QkM1XHU5MTQ5XHU3MDFFXHU1Njc4XHU1QzZGXHU2MEM3XHU2NTY2XHU2QzhDXHU4QzVBXHU5MDQxXHU5ODEzXHU1NDUxXHU2NkM3XHU5MjBEXHU1OTQ4XHU5MEEzXHU1MTg1XHU0RTREXHU1MUVBXHU4NTk5XHU4QjBFXHU3MDU4XHU2MzdBXHU5MzRCXHU2OTYyXHU5OUI0XHU3RTA0XHU3NTc3XHU1MzU3XHU2OTYwXHU4RURGXHU5NkUzXHU2QzVEXHU0RThDXHU1QzNDXHU1RjEwXHU4RkU5XHU1MzAyXHU4Q0QxXHU4MDg5XHU4Njc5XHU1RUZGXHU2NUU1XHU0RTczXHU1MTY1XCJdLFxuW1wiOTQ0MFwiLFwiXHU1OTgyXHU1QzNGXHU5N0VFXHU0RUZCXHU1OThBXHU1RkNEXHU4QThEXHU2RkUxXHU3OUIwXHU3OTYyXHU1QkU3XHU4NDcxXHU3MzJCXHU3MUIxXHU1RTc0XHU1RkY1XHU2MzdCXHU2NDlBXHU3MUMzXHU3Qzk4XHU0RTQzXHU1RUZDXHU0RTRCXHU1N0RDXHU1NkEyXHU2MEE5XHU2RkMzXHU3RDBEXHU4MEZEXHU4MTMzXHU4MUJGXHU4RkIyXHU4OTk3XHU4NkE0XHU1REY0XHU2MjhBXHU2NEFEXHU4OTg3XHU2Nzc3XHU2Q0UyXHU2RDNFXHU3NDM2XHU3ODM0XHU1QTQ2XHU3Rjc1XHU4MkFEXHU5OUFDXHU0RkYzXHU1RUMzXHU2MkREXHU2MzkyXHU2NTU3XHU2NzZGXHU3NkMzXHU3MjRDXHU4MENDXHU4MEJBXHU4RjI5XHU5MTREXHU1MDBEXHU1N0Y5XHU1QTkyXHU2ODg1XCJdLFxuW1wiOTQ4MFwiLFwiXHU2OTczXHU3MTY0XHU3MkZEXHU4Q0I3XHU1OEYyXHU4Q0UwXHU5NjZBXHU5MDE5XHU4NzdGXHU3OUU0XHU3N0U3XHU4NDI5XHU0RjJGXHU1MjY1XHU1MzVBXHU2MkNEXHU2N0NGXHU2Q0NBXHU3NjdEXHU3Qjk0XHU3Qzk1XHU4MjM2XHU4NTg0XHU4RkVCXHU2NkREXHU2RjIwXHU3MjA2XHU3RTFCXHU4M0FCXHU5OUMxXHU5RUE2XHU1MUZEXHU3QkIxXHU3ODcyXHU3QkI4XHU4MDg3XHU3QjQ4XHU2QUU4XHU1RTYxXHU4MDhDXHU3NTUxXHU3NTYwXHU1MTZCXHU5MjYyXHU2RThDXHU3NjdBXHU5MTk3XHU5QUVBXHU0RjEwXHU3RjcwXHU2MjlDXHU3QjRGXHU5NUE1XHU5Q0U5XHU1NjdBXHU1ODU5XHU4NkU0XHU5NkJDXHU0RjM0XHU1MjI0XHU1MzRBXHU1M0NEXHU1M0RCXHU1RTA2XHU2NDJDXHU2NTkxXHU2NzdGXHU2QzNFXHU2QzRFXHU3MjQ4XHU3MkFGXHU3M0VEXHU3NTU0XHU3RTQxXHU4MjJDXHU4NUU5XHU4Q0E5XHU3QkM0XHU5MUM2XHU3MTY5XHU5ODEyXHU5OEVGXHU2MzNEXHU2NjY5XHU3NTZBXHU3NkU0XHU3OEQwXHU4NTQzXHU4NkVFXHU1MzJBXHU1MzUxXHU1NDI2XHU1OTgzXHU1RTg3XHU1RjdDXHU2MEIyXHU2MjQ5XHU2Mjc5XHU2MkFCXHU2NTkwXHU2QkQ0XHU2Q0NDXHU3NUIyXHU3NkFFXHU3ODkxXHU3OUQ4XHU3RENCXHU3Rjc3XHU4MEE1XHU4OEFCXHU4QUI5XHU4Q0JCXHU5MDdGXHU5NzVFXHU5OERCXHU2QTBCXHU3QzM4XHU1MDk5XHU1QzNFXHU1RkFFXHU2Nzg3XHU2QkQ4XHU3NDM1XHU3NzA5XHU3RjhFXCJdLFxuW1wiOTU0MFwiLFwiXHU5RjNCXHU2N0NBXHU3QTE3XHU1MzM5XHU3NThCXHU5QUVEXHU1RjY2XHU4MTlEXHU4M0YxXHU4MDk4XHU1RjNDXHU1RkM1XHU3NTYyXHU3QjQ2XHU5MDNDXHU2ODY3XHU1OUVCXHU1QTlCXHU3RDEwXHU3NjdFXHU4QjJDXHU0RkY1XHU1RjZBXHU2QTE5XHU2QzM3XHU2RjAyXHU3NEUyXHU3OTY4XHU4ODY4XHU4QTU1XHU4Qzc5XHU1RURGXHU2M0NGXHU3NUM1XHU3OUQyXHU4MkQ3XHU5MzI4XHU5MkYyXHU4NDlDXHU4NkVEXHU5QzJEXHU1NEMxXHU1RjZDXHU2NThDXHU2RDVDXHU3MDE1XHU4Q0E3XHU4Q0QzXHU5ODNCXHU2NTRGXHU3NEY2XHU0RTBEXHU0RUQ4XHU1N0UwXHU1OTJCXHU1QTY2XHU1QkNDXHU1MUE4XHU1RTAzXHU1RTlDXHU2MDE2XHU2Mjc2XHU2NTc3XCJdLFxuW1wiOTU4MFwiLFwiXHU2NUE3XHU2NjZFXHU2RDZFXHU3MjM2XHU3QjI2XHU4MTUwXHU4MTlBXHU4Mjk5XHU4QjVDXHU4Q0EwXHU4Q0U2XHU4RDc0XHU5NjFDXHU5NjQ0XHU0RkFFXHU2NEFCXHU2QjY2XHU4MjFFXHU4NDYxXHU4NTZBXHU5MEU4XHU1QzAxXHU2OTUzXHU5OEE4XHU4NDdBXHU4NTU3XHU0RjBGXHU1MjZGXHU1RkE5XHU1RTQ1XHU2NzBEXHU3OThGXHU4MTc5XHU4OTA3XHU4OTg2XHU2REY1XHU1RjE3XHU2MjU1XHU2Q0I4XHU0RUNGXHU3MjY5XHU5QjkyXHU1MjA2XHU1NDNCXHU1Njc0XHU1OEIzXHU2MUE0XHU2MjZFXHU3MTFBXHU1OTZFXHU3Qzg5XHU3Q0RFXHU3RDFCXHU5NkYwXHU2NTg3XHU4MDVFXHU0RTE5XHU0Rjc1XHU1MTc1XHU1ODQwXHU1RTYzXHU1RTczXHU1RjBBXHU2N0M0XHU0RTI2XHU4NTNEXHU5NTg5XHU5NjVCXHU3QzczXHU5ODAxXHU1MEZCXHU1OEMxXHU3NjU2XHU3OEE3XHU1MjI1XHU3N0E1XHU4NTExXHU3Qjg2XHU1MDRGXHU1OTA5XHU3MjQ3XHU3QkM3XHU3REU4XHU4RkJBXHU4RkQ0XHU5MDREXHU0RkJGXHU1MkM5XHU1QTI5XHU1RjAxXHU5N0FEXHU0RkREXHU4MjE3XHU5MkVBXHU1NzAzXHU2MzU1XHU2QjY5XHU3NTJCXHU4OERDXHU4RjE0XHU3QTQyXHU1MkRGXHU1ODkzXHU2MTU1XHU2MjBBXHU2NkFFXHU2QkNEXHU3QzNGXHU4M0U5XHU1MDIzXHU0RkY4XHU1MzA1XHU1NDQ2XHU1ODMxXHU1OTQ5XHU1QjlEXHU1Q0YwXHU1Q0VGXHU1RDI5XHU1RTk2XHU2MkIxXHU2MzY3XHU2NTNFXHU2NUI5XHU2NzBCXCJdLFxuW1wiOTY0MFwiLFwiXHU2Q0Q1XHU2Q0UxXHU3MEY5XHU3ODMyXHU3RTJCXHU4MERFXHU4MkIzXHU4NDBDXHU4NEVDXHU4NzAyXHU4OTEyXHU4QTJBXHU4QzRBXHU5MEE2XHU5MkQyXHU5OEZEXHU5Q0YzXHU5RDZDXHU0RTRGXHU0RUExXHU1MDhEXHU1MjU2XHU1NzRBXHU1OUE4XHU1RTNEXHU1RkQ4XHU1RkQ5XHU2MjNGXHU2NkI0XHU2NzFCXHU2N0QwXHU2OEQyXHU1MTkyXHU3RDIxXHU4MEFBXHU4MUE4XHU4QjAwXHU4QzhDXHU4Q0JGXHU5MjdFXHU5NjMyXHU1NDIwXHU5ODJDXHU1MzE3XHU1MEQ1XHU1MzVDXHU1OEE4XHU2NEIyXHU2NzM0XHU3MjY3XHU3NzY2XHU3QTQ2XHU5MUU2XHU1MkMzXHU2Q0ExXHU2Qjg2XHU1ODAwXHU1RTRDXHU1OTU0XHU2NzJDXHU3RkZCXHU1MUUxXHU3NkM2XCJdLFxuW1wiOTY4MFwiLFwiXHU2NDY5XHU3OEU4XHU5QjU0XHU5RUJCXHU1N0NCXHU1OUI5XHU2NjI3XHU2NzlBXHU2QkNFXHU1NEU5XHU2OUQ5XHU1RTU1XHU4MTlDXHU2Nzk1XHU5QkFBXHU2N0ZFXHU5QzUyXHU2ODVEXHU0RUE2XHU0RkUzXHU1M0M4XHU2MkI5XHU2NzJCXHU2Q0FCXHU4RkM0XHU0RkFEXHU3RTZEXHU5RUJGXHU0RTA3XHU2MTYyXHU2RTgwXHU2RjJCXHU4NTEzXHU1NDczXHU2NzJBXHU5QjQ1XHU1REYzXHU3Qjk1XHU1Q0FDXHU1QkM2XHU4NzFDXHU2RTRBXHU4NEQxXHU3QTE0XHU4MTA4XHU1OTk5XHU3QzhEXHU2QzExXHU3NzIwXHU1MkQ5XHU1OTIyXHU3MTIxXHU3MjVGXHU3N0RCXHU5NzI3XHU5RDYxXHU2OTBCXHU1QTdGXHU1QTE4XHU1MUE1XHU1NDBEXHU1NDdEXHU2NjBFXHU3NkRGXHU4RkY3XHU5Mjk4XHU5Q0Y0XHU1OUVBXHU3MjVEXHU2RUM1XHU1MTREXHU2OEM5XHU3REJGXHU3REVDXHU5NzYyXHU5RUJBXHU2NDc4XHU2QTIxXHU4MzAyXHU1OTg0XHU1QjVGXHU2QkRCXHU3MzFCXHU3NkYyXHU3REIyXHU4MDE3XHU4NDk5XHU1MTMyXHU2NzI4XHU5RUQ5XHU3NkVFXHU2NzYyXHU1MkZGXHU5OTA1XHU1QzI0XHU2MjNCXHU3QzdFXHU4Q0IwXHU1NTRGXHU2MEI2XHU3RDBCXHU5NTgwXHU1MzAxXHU0RTVGXHU1MUI2XHU1OTFDXHU3MjNBXHU4MDM2XHU5MUNFXHU1RjI1XHU3N0UyXHU1Mzg0XHU1Rjc5XHU3RDA0XHU4NUFDXHU4QTMzXHU4RThEXHU5NzU2XHU2N0YzXHU4NUFFXHU5NDUzXHU2MTA5XHU2MTA4XHU2Q0I5XHU3NjUyXCJdLFxuW1wiOTc0MFwiLFwiXHU4QUVEXHU4RjM4XHU1NTJGXHU0RjUxXHU1MTJBXHU1MkM3XHU1M0NCXHU1QkE1XHU1RTdEXHU2MEEwXHU2MTgyXHU2M0Q2XHU2NzA5XHU2N0RBXHU2RTY3XHU2RDhDXHU3MzM2XHU3MzM3XHU3NTMxXHU3OTUwXHU4OEQ1XHU4QTk4XHU5MDRBXHU5MDkxXHU5MEY1XHU5NkM0XHU4NzhEXHU1OTE1XHU0RTg4XHU0RjU5XHU0RTBFXHU4QTg5XHU4RjNGXHU5ODEwXHU1MEFEXHU1RTdDXHU1OTk2XHU1QkI5XHU1RUI4XHU2M0RBXHU2M0ZBXHU2NEMxXHU2NkRDXHU2OTRBXHU2OUQ4XHU2RDBCXHU2RUI2XHU3MTk0XHU3NTI4XHU3QUFGXHU3RjhBXHU4MDAwXHU4NDQ5XHU4NEM5XHU4OTgxXHU4QjIxXHU4RTBBXHU5MDY1XHU5NjdEXHU5OTBBXHU2MTdFXHU2MjkxXHU2QjMyXCJdLFxuW1wiOTc4MFwiLFwiXHU2QzgzXHU2RDc0XHU3RkNDXHU3RkZDXHU2REMwXHU3Rjg1XHU4N0JBXHU4OEY4XHU2NzY1XHU4M0IxXHU5ODNDXHU5NkY3XHU2RDFCXHU3RDYxXHU4NDNEXHU5MTZBXHU0RTcxXHU1Mzc1XHU1RDUwXHU2QjA0XHU2RkVCXHU4NUNEXHU4NjJEXHU4OUE3XHU1MjI5XHU1NDBGXHU1QzY1XHU2NzRFXHU2OEE4XHU3NDA2XHU3NDgzXHU3NUUyXHU4OENGXHU4OEUxXHU5MUNDXHU5NkUyXHU5Njc4XHU1RjhCXHU3Mzg3XHU3QUNCXHU4NDRFXHU2M0EwXHU3NTY1XHU1Mjg5XHU2RDQxXHU2RTlDXHU3NDA5XHU3NTU5XHU3ODZCXHU3QzkyXHU5Njg2XHU3QURDXHU5RjhEXHU0RkI2XHU2MTZFXHU2NUM1XHU4NjVDXHU0RTg2XHU0RUFFXHU1MERBXHU0RTIxXHU1MUNDXHU1QkVFXHU2NTk5XHU2ODgxXHU2REJDXHU3MzFGXHU3NjQyXHU3N0FEXHU3QTFDXHU3Q0U3XHU4MjZGXHU4QUQyXHU5MDdDXHU5MUNGXHU5Njc1XHU5ODE4XHU1MjlCXHU3REQxXHU1MDJCXHU1Mzk4XHU2Nzk3XHU2RENCXHU3MUQwXHU3NDMzXHU4MUU4XHU4RjJBXHU5NkEzXHU5QzU3XHU5RTlGXHU3NDYwXHU1ODQxXHU2RDk5XHU3RDJGXHU5ODVFXHU0RUU0XHU0RjM2XHU0RjhCXHU1MUI3XHU1MkIxXHU1REJBXHU2MDFDXHU3M0IyXHU3OTNDXHU4MkQzXHU5MjM0XHU5NkI3XHU5NkY2XHU5NzBBXHU5RTk3XHU5RjYyXHU2NkE2XHU2Qjc0XHU1MjE3XHU1MkEzXHU3MEM4XHU4OEMyXHU1RUM5XHU2MDRCXHU2MTkwXHU2RjIzXHU3MTQ5XHU3QzNFXHU3REY0XHU4MDZGXCJdLFxuW1wiOTg0MFwiLFwiXHU4NEVFXHU5MDIzXHU5MzJDXHU1NDQyXHU5QjZGXHU2QUQzXHU3MDg5XHU4Q0MyXHU4REVGXHU5NzMyXHU1MkI0XHU1QTQxXHU1RUNBXHU1RjA0XHU2NzE3XHU2OTdDXHU2OTk0XHU2RDZBXHU2RjBGXHU3MjYyXHU3MkZDXHU3QkVEXHU4MDAxXHU4MDdFXHU4NzRCXHU5MENFXHU1MTZEXHU5RTkzXHU3OTg0XHU4MDhCXHU5MzMyXHU4QUQ2XHU1MDJEXHU1NDhDXHU4QTcxXHU2QjZBXHU4Q0M0XHU4MTA3XHU2MEQxXHU2N0EwXHU5REYyXHU0RTk5XHU0RTk4XHU5QzEwXHU4QTZCXHU4NUMxXHU4NTY4XHU2OTAwXHU2RTdFXHU3ODk3XHU4MTU1XCJdLFxuW1wiOTg5ZlwiLFwiXHU1RjBDXHU0RTEwXHU0RTE1XHU0RTJBXHU0RTMxXHU0RTM2XHU0RTNDXHU0RTNGXHU0RTQyXHU0RTU2XHU0RTU4XHU0RTgyXHU0RTg1XHU4QzZCXHU0RThBXHU4MjEyXHU1RjBEXHU0RThFXHU0RTlFXHU0RTlGXHU0RUEwXHU0RUEyXHU0RUIwXHU0RUIzXHU0RUI2XHU0RUNFXHU0RUNEXHU0RUM0XHU0RUM2XHU0RUMyXHU0RUQ3XHU0RURFXHU0RUVEXHU0RURGXHU0RUY3XHU0RjA5XHU0RjVBXHU0RjMwXHU0RjVCXHU0RjVEXHU0RjU3XHU0RjQ3XHU0Rjc2XHU0Rjg4XHU0RjhGXHU0Rjk4XHU0RjdCXHU0RjY5XHU0RjcwXHU0RjkxXHU0RjZGXHU0Rjg2XHU0Rjk2XHU1MTE4XHU0RkQ0XHU0RkRGXHU0RkNFXHU0RkQ4XHU0RkRCXHU0RkQxXHU0RkRBXHU0RkQwXHU0RkU0XHU0RkU1XHU1MDFBXHU1MDI4XHU1MDE0XHU1MDJBXHU1MDI1XHU1MDA1XHU0RjFDXHU0RkY2XHU1MDIxXHU1MDI5XHU1MDJDXHU0RkZFXHU0RkVGXHU1MDExXHU1MDA2XHU1MDQzXHU1MDQ3XHU2NzAzXHU1MDU1XHU1MDUwXHU1MDQ4XHU1MDVBXHU1MDU2XHU1MDZDXHU1MDc4XHU1MDgwXHU1MDlBXHU1MDg1XHU1MEI0XHU1MEIyXCJdLFxuW1wiOTk0MFwiLFwiXHU1MEM5XHU1MENBXHU1MEIzXHU1MEMyXHU1MEQ2XHU1MERFXHU1MEU1XHU1MEVEXHU1MEUzXHU1MEVFXHU1MEY5XHU1MEY1XHU1MTA5XHU1MTAxXHU1MTAyXHU1MTE2XHU1MTE1XHU1MTE0XHU1MTFBXHU1MTIxXHU1MTNBXHU1MTM3XHU1MTNDXHU1MTNCXHU1MTNGXHU1MTQwXHU1MTUyXHU1MTRDXHU1MTU0XHU1MTYyXHU3QUY4XHU1MTY5XHU1MTZBXHU1MTZFXHU1MTgwXHU1MTgyXHU1NkQ4XHU1MThDXHU1MTg5XHU1MThGXHU1MTkxXHU1MTkzXHU1MTk1XHU1MTk2XHU1MUE0XHU1MUE2XHU1MUEyXHU1MUE5XHU1MUFBXHU1MUFCXHU1MUIzXHU1MUIxXHU1MUIyXHU1MUIwXHU1MUI1XHU1MUJEXHU1MUM1XHU1MUM5XHU1MURCXHU1MUUwXHU4NjU1XHU1MUU5XHU1MUVEXCJdLFxuW1wiOTk4MFwiLFwiXHU1MUYwXHU1MUY1XHU1MUZFXHU1MjA0XHU1MjBCXHU1MjE0XHU1MjBFXHU1MjI3XHU1MjJBXHU1MjJFXHU1MjMzXHU1MjM5XHU1MjRGXHU1MjQ0XHU1MjRCXHU1MjRDXHU1MjVFXHU1MjU0XHU1MjZBXHU1Mjc0XHU1MjY5XHU1MjczXHU1MjdGXHU1MjdEXHU1MjhEXHU1Mjk0XHU1MjkyXHU1MjcxXHU1Mjg4XHU1MjkxXHU4RkE4XHU4RkE3XHU1MkFDXHU1MkFEXHU1MkJDXHU1MkI1XHU1MkMxXHU1MkNEXHU1MkQ3XHU1MkRFXHU1MkUzXHU1MkU2XHU5OEVEXHU1MkUwXHU1MkYzXHU1MkY1XHU1MkY4XHU1MkY5XHU1MzA2XHU1MzA4XHU3NTM4XHU1MzBEXHU1MzEwXHU1MzBGXHU1MzE1XHU1MzFBXHU1MzIzXHU1MzJGXHU1MzMxXHU1MzMzXHU1MzM4XHU1MzQwXHU1MzQ2XHU1MzQ1XHU0RTE3XHU1MzQ5XHU1MzREXHU1MUQ2XHU1MzVFXHU1MzY5XHU1MzZFXHU1OTE4XHU1MzdCXHU1Mzc3XHU1MzgyXHU1Mzk2XHU1M0EwXHU1M0E2XHU1M0E1XHU1M0FFXHU1M0IwXHU1M0I2XHU1M0MzXHU3QzEyXHU5NkQ5XHU1M0RGXHU2NkZDXHU3MUVFXHU1M0VFXHU1M0U4XHU1M0VEXHU1M0ZBXHU1NDAxXHU1NDNEXHU1NDQwXHU1NDJDXHU1NDJEXHU1NDNDXHU1NDJFXHU1NDM2XHU1NDI5XHU1NDFEXHU1NDRFXHU1NDhGXHU1NDc1XHU1NDhFXHU1NDVGXHU1NDcxXHU1NDc3XHU1NDcwXHU1NDkyXHU1NDdCXHU1NDgwXHU1NDc2XHU1NDg0XHU1NDkwXHU1NDg2XHU1NEM3XHU1NEEyXHU1NEI4XHU1NEE1XHU1NEFDXHU1NEM0XHU1NEM4XHU1NEE4XCJdLFxuW1wiOWE0MFwiLFwiXHU1NEFCXHU1NEMyXHU1NEE0XHU1NEJFXHU1NEJDXHU1NEQ4XHU1NEU1XHU1NEU2XHU1NTBGXHU1NTE0XHU1NEZEXHU1NEVFXHU1NEVEXHU1NEZBXHU1NEUyXHU1NTM5XHU1NTQwXHU1NTYzXHU1NTRDXHU1NTJFXHU1NTVDXHU1NTQ1XHU1NTU2XHU1NTU3XHU1NTM4XHU1NTMzXHU1NTVEXHU1NTk5XHU1NTgwXHU1NEFGXHU1NThBXHU1NTlGXHU1NTdCXHU1NTdFXHU1NTk4XHU1NTlFXHU1NUFFXHU1NTdDXHU1NTgzXHU1NUE5XHU1NTg3XHU1NUE4XHU1NURBXHU1NUM1XHU1NURGXHU1NUM0XHU1NURDXHU1NUU0XHU1NUQ0XHU1NjE0XHU1NUY3XHU1NjE2XHU1NUZFXHU1NUZEXHU1NjFCXHU1NUY5XHU1NjRFXHU1NjUwXHU3MURGXHU1NjM0XHU1NjM2XHU1NjMyXHU1NjM4XCJdLFxuW1wiOWE4MFwiLFwiXHU1NjZCXHU1NjY0XHU1NjJGXHU1NjZDXHU1NjZBXHU1Njg2XHU1NjgwXHU1NjhBXHU1NkEwXHU1Njk0XHU1NjhGXHU1NkE1XHU1NkFFXHU1NkI2XHU1NkI0XHU1NkMyXHU1NkJDXHU1NkMxXHU1NkMzXHU1NkMwXHU1NkM4XHU1NkNFXHU1NkQxXHU1NkQzXHU1NkQ3XHU1NkVFXHU1NkY5XHU1NzAwXHU1NkZGXHU1NzA0XHU1NzA5XHU1NzA4XHU1NzBCXHU1NzBEXHU1NzEzXHU1NzE4XHU1NzE2XHU1NUM3XHU1NzFDXHU1NzI2XHU1NzM3XHU1NzM4XHU1NzRFXHU1NzNCXHU1NzQwXHU1NzRGXHU1NzY5XHU1N0MwXHU1Nzg4XHU1NzYxXHU1NzdGXHU1Nzg5XHU1NzkzXHU1N0EwXHU1N0IzXHU1N0E0XHU1N0FBXHU1N0IwXHU1N0MzXHU1N0M2XHU1N0Q0XHU1N0QyXHU1N0QzXHU1ODBBXHU1N0Q2XHU1N0UzXHU1ODBCXHU1ODE5XHU1ODFEXHU1ODcyXHU1ODIxXHU1ODYyXHU1ODRCXHU1ODcwXHU2QkMwXHU1ODUyXHU1ODNEXHU1ODc5XHU1ODg1XHU1OEI5XHU1ODlGXHU1OEFCXHU1OEJBXHU1OERFXHU1OEJCXHU1OEI4XHU1OEFFXHU1OEM1XHU1OEQzXHU1OEQxXHU1OEQ3XHU1OEQ5XHU1OEQ4XHU1OEU1XHU1OERDXHU1OEU0XHU1OERGXHU1OEVGXHU1OEZBXHU1OEY5XHU1OEZCXHU1OEZDXHU1OEZEXHU1OTAyXHU1OTBBXHU1OTEwXHU1OTFCXHU2OEE2XHU1OTI1XHU1OTJDXHU1OTJEXHU1OTMyXHU1OTM4XHU1OTNFXHU3QUQyXHU1OTU1XHU1OTUwXHU1OTRFXHU1OTVBXHU1OTU4XHU1OTYyXHU1OTYwXHU1OTY3XHU1OTZDXHU1OTY5XCJdLFxuW1wiOWI0MFwiLFwiXHU1OTc4XHU1OTgxXHU1OTlEXHU0RjVFXHU0RkFCXHU1OUEzXHU1OUIyXHU1OUM2XHU1OUU4XHU1OURDXHU1OThEXHU1OUQ5XHU1OURBXHU1QTI1XHU1QTFGXHU1QTExXHU1QTFDXHU1QTA5XHU1QTFBXHU1QTQwXHU1QTZDXHU1QTQ5XHU1QTM1XHU1QTM2XHU1QTYyXHU1QTZBXHU1QTlBXHU1QUJDXHU1QUJFXHU1QUNCXHU1QUMyXHU1QUJEXHU1QUUzXHU1QUQ3XHU1QUU2XHU1QUU5XHU1QUQ2XHU1QUZBXHU1QUZCXHU1QjBDXHU1QjBCXHU1QjE2XHU1QjMyXHU1QUQwXHU1QjJBXHU1QjM2XHU1QjNFXHU1QjQzXHU1QjQ1XHU1QjQwXHU1QjUxXHU1QjU1XHU1QjVBXHU1QjVCXHU1QjY1XHU1QjY5XHU1QjcwXHU1QjczXHU1Qjc1XHU1Qjc4XHU2NTg4XHU1QjdBXHU1QjgwXCJdLFxuW1wiOWI4MFwiLFwiXHU1QjgzXHU1QkE2XHU1QkI4XHU1QkMzXHU1QkM3XHU1QkM5XHU1QkQ0XHU1QkQwXHU1QkU0XHU1QkU2XHU1QkUyXHU1QkRFXHU1QkU1XHU1QkVCXHU1QkYwXHU1QkY2XHU1QkYzXHU1QzA1XHU1QzA3XHU1QzA4XHU1QzBEXHU1QzEzXHU1QzIwXHU1QzIyXHU1QzI4XHU1QzM4XHU1QzM5XHU1QzQxXHU1QzQ2XHU1QzRFXHU1QzUzXHU1QzUwXHU1QzRGXHU1QjcxXHU1QzZDXHU1QzZFXHU0RTYyXHU1Qzc2XHU1Qzc5XHU1QzhDXHU1QzkxXHU1Qzk0XHU1OTlCXHU1Q0FCXHU1Q0JCXHU1Q0I2XHU1Q0JDXHU1Q0I3XHU1Q0M1XHU1Q0JFXHU1Q0M3XHU1Q0Q5XHU1Q0U5XHU1Q0ZEXHU1Q0ZBXHU1Q0VEXHU1RDhDXHU1Q0VBXHU1RDBCXHU1RDE1XHU1RDE3XHU1RDVDXHU1RDFGXHU1RDFCXHU1RDExXHU1RDE0XHU1RDIyXHU1RDFBXHU1RDE5XHU1RDE4XHU1RDRDXHU1RDUyXHU1RDRFXHU1RDRCXHU1RDZDXHU1RDczXHU1RDc2XHU1RDg3XHU1RDg0XHU1RDgyXHU1REEyXHU1RDlEXHU1REFDXHU1REFFXHU1REJEXHU1RDkwXHU1REI3XHU1REJDXHU1REM5XHU1RENEXHU1REQzXHU1REQyXHU1REQ2XHU1RERCXHU1REVCXHU1REYyXHU1REY1XHU1RTBCXHU1RTFBXHU1RTE5XHU1RTExXHU1RTFCXHU1RTM2XHU1RTM3XHU1RTQ0XHU1RTQzXHU1RTQwXHU1RTRFXHU1RTU3XHU1RTU0XHU1RTVGXHU1RTYyXHU1RTY0XHU1RTQ3XHU1RTc1XHU1RTc2XHU1RTdBXHU5RUJDXHU1RTdGXHU1RUEwXHU1RUMxXHU1RUMyXHU1RUM4XHU1RUQwXHU1RUNGXCJdLFxuW1wiOWM0MFwiLFwiXHU1RUQ2XHU1RUUzXHU1RUREXHU1RURBXHU1RURCXHU1RUUyXHU1RUUxXHU1RUU4XHU1RUU5XHU1RUVDXHU1RUYxXHU1RUYzXHU1RUYwXHU1RUY0XHU1RUY4XHU1RUZFXHU1RjAzXHU1RjA5XHU1RjVEXHU1RjVDXHU1RjBCXHU1RjExXHU1RjE2XHU1RjI5XHU1RjJEXHU1RjM4XHU1RjQxXHU1RjQ4XHU1RjRDXHU1RjRFXHU1RjJGXHU1RjUxXHU1RjU2XHU1RjU3XHU1RjU5XHU1RjYxXHU1RjZEXHU1RjczXHU1Rjc3XHU1RjgzXHU1RjgyXHU1RjdGXHU1RjhBXHU1Rjg4XHU1RjkxXHU1Rjg3XHU1RjlFXHU1Rjk5XHU1Rjk4XHU1RkEwXHU1RkE4XHU1RkFEXHU1RkJDXHU1RkQ2XHU1RkZCXHU1RkU0XHU1RkY4XHU1RkYxXHU1RkREXHU2MEIzXHU1RkZGXHU2MDIxXHU2MDYwXCJdLFxuW1wiOWM4MFwiLFwiXHU2MDE5XHU2MDEwXHU2MDI5XHU2MDBFXHU2MDMxXHU2MDFCXHU2MDE1XHU2MDJCXHU2MDI2XHU2MDBGXHU2MDNBXHU2MDVBXHU2MDQxXHU2MDZBXHU2MDc3XHU2MDVGXHU2MDRBXHU2MDQ2XHU2MDREXHU2MDYzXHU2MDQzXHU2MDY0XHU2MDQyXHU2MDZDXHU2MDZCXHU2MDU5XHU2MDgxXHU2MDhEXHU2MEU3XHU2MDgzXHU2MDlBXHU2MDg0XHU2MDlCXHU2MDk2XHU2MDk3XHU2MDkyXHU2MEE3XHU2MDhCXHU2MEUxXHU2MEI4XHU2MEUwXHU2MEQzXHU2MEI0XHU1RkYwXHU2MEJEXHU2MEM2XHU2MEI1XHU2MEQ4XHU2MTREXHU2MTE1XHU2MTA2XHU2MEY2XHU2MEY3XHU2MTAwXHU2MEY0XHU2MEZBXHU2MTAzXHU2MTIxXHU2MEZCXHU2MEYxXHU2MTBEXHU2MTBFXHU2MTQ3XHU2MTNFXHU2MTI4XHU2MTI3XHU2MTRBXHU2MTNGXHU2MTNDXHU2MTJDXHU2MTM0XHU2MTNEXHU2MTQyXHU2MTQ0XHU2MTczXHU2MTc3XHU2MTU4XHU2MTU5XHU2MTVBXHU2MTZCXHU2MTc0XHU2MTZGXHU2MTY1XHU2MTcxXHU2MTVGXHU2MTVEXHU2MTUzXHU2MTc1XHU2MTk5XHU2MTk2XHU2MTg3XHU2MUFDXHU2MTk0XHU2MTlBXHU2MThBXHU2MTkxXHU2MUFCXHU2MUFFXHU2MUNDXHU2MUNBXHU2MUM5XHU2MUY3XHU2MUM4XHU2MUMzXHU2MUM2XHU2MUJBXHU2MUNCXHU3Rjc5XHU2MUNEXHU2MUU2XHU2MUUzXHU2MUY2XHU2MUZBXHU2MUY0XHU2MUZGXHU2MUZEXHU2MUZDXHU2MUZFXHU2MjAwXHU2MjA4XHU2MjA5XHU2MjBEXHU2MjBDXHU2MjE0XHU2MjFCXCJdLFxuW1wiOWQ0MFwiLFwiXHU2MjFFXHU2MjIxXHU2MjJBXHU2MjJFXHU2MjMwXHU2MjMyXHU2MjMzXHU2MjQxXHU2MjRFXHU2MjVFXHU2MjYzXHU2MjVCXHU2MjYwXHU2MjY4XHU2MjdDXHU2MjgyXHU2Mjg5XHU2MjdFXHU2MjkyXHU2MjkzXHU2Mjk2XHU2MkQ0XHU2MjgzXHU2Mjk0XHU2MkQ3XHU2MkQxXHU2MkJCXHU2MkNGXHU2MkZGXHU2MkM2XHU2NEQ0XHU2MkM4XHU2MkRDXHU2MkNDXHU2MkNBXHU2MkMyXHU2MkM3XHU2MjlCXHU2MkM5XHU2MzBDXHU2MkVFXHU2MkYxXHU2MzI3XHU2MzAyXHU2MzA4XHU2MkVGXHU2MkY1XHU2MzUwXHU2MzNFXHU2MzREXHU2NDFDXHU2MzRGXHU2Mzk2XHU2MzhFXHU2MzgwXHU2M0FCXHU2Mzc2XHU2M0EzXHU2MzhGXHU2Mzg5XHU2MzlGXHU2M0I1XHU2MzZCXCJdLFxuW1wiOWQ4MFwiLFwiXHU2MzY5XHU2M0JFXHU2M0U5XHU2M0MwXHU2M0M2XHU2M0UzXHU2M0M5XHU2M0QyXHU2M0Y2XHU2M0M0XHU2NDE2XHU2NDM0XHU2NDA2XHU2NDEzXHU2NDI2XHU2NDM2XHU2NTFEXHU2NDE3XHU2NDI4XHU2NDBGXHU2NDY3XHU2NDZGXHU2NDc2XHU2NDRFXHU2NTJBXHU2NDk1XHU2NDkzXHU2NEE1XHU2NEE5XHU2NDg4XHU2NEJDXHU2NERBXHU2NEQyXHU2NEM1XHU2NEM3XHU2NEJCXHU2NEQ4XHU2NEMyXHU2NEYxXHU2NEU3XHU4MjA5XHU2NEUwXHU2NEUxXHU2MkFDXHU2NEUzXHU2NEVGXHU2NTJDXHU2NEY2XHU2NEY0XHU2NEYyXHU2NEZBXHU2NTAwXHU2NEZEXHU2NTE4XHU2NTFDXHU2NTA1XHU2NTI0XHU2NTIzXHU2NTJCXHU2NTM0XHU2NTM1XHU2NTM3XHU2NTM2XHU2NTM4XHU3NTRCXHU2NTQ4XHU2NTU2XHU2NTU1XHU2NTREXHU2NTU4XHU2NTVFXHU2NTVEXHU2NTcyXHU2NTc4XHU2NTgyXHU2NTgzXHU4QjhBXHU2NTlCXHU2NTlGXHU2NUFCXHU2NUI3XHU2NUMzXHU2NUM2XHU2NUMxXHU2NUM0XHU2NUNDXHU2NUQyXHU2NURCXHU2NUQ5XHU2NUUwXHU2NUUxXHU2NUYxXHU2NzcyXHU2NjBBXHU2NjAzXHU2NUZCXHU2NzczXHU2NjM1XHU2NjM2XHU2NjM0XHU2NjFDXHU2NjRGXHU2NjQ0XHU2NjQ5XHU2NjQxXHU2NjVFXHU2NjVEXHU2NjY0XHU2NjY3XHU2NjY4XHU2NjVGXHU2NjYyXHU2NjcwXHU2NjgzXHU2Njg4XHU2NjhFXHU2Njg5XHU2Njg0XHU2Njk4XHU2NjlEXHU2NkMxXHU2NkI5XHU2NkM5XHU2NkJFXHU2NkJDXCJdLFxuW1wiOWU0MFwiLFwiXHU2NkM0XHU2NkI4XHU2NkQ2XHU2NkRBXHU2NkUwXHU2NjNGXHU2NkU2XHU2NkU5XHU2NkYwXHU2NkY1XHU2NkY3XHU2NzBGXHU2NzE2XHU2NzFFXHU2NzI2XHU2NzI3XHU5NzM4XHU2NzJFXHU2NzNGXHU2NzM2XHU2NzQxXHU2NzM4XHU2NzM3XHU2NzQ2XHU2NzVFXHU2NzYwXHU2NzU5XHU2NzYzXHU2NzY0XHU2Nzg5XHU2NzcwXHU2N0E5XHU2NzdDXHU2NzZBXHU2NzhDXHU2NzhCXHU2N0E2XHU2N0ExXHU2Nzg1XHU2N0I3XHU2N0VGXHU2N0I0XHU2N0VDXHU2N0IzXHU2N0U5XHU2N0I4XHU2N0U0XHU2N0RFXHU2N0REXHU2N0UyXHU2N0VFXHU2N0I5XHU2N0NFXHU2N0M2XHU2N0U3XHU2QTlDXHU2ODFFXHU2ODQ2XHU2ODI5XHU2ODQwXHU2ODREXHU2ODMyXHU2ODRFXCJdLFxuW1wiOWU4MFwiLFwiXHU2OEIzXHU2ODJCXHU2ODU5XHU2ODYzXHU2ODc3XHU2ODdGXHU2ODlGXHU2ODhGXHU2OEFEXHU2ODk0XHU2ODlEXHU2ODlCXHU2ODgzXHU2QUFFXHU2OEI5XHU2ODc0XHU2OEI1XHU2OEEwXHU2OEJBXHU2OTBGXHU2ODhEXHU2ODdFXHU2OTAxXHU2OENBXHU2OTA4XHU2OEQ4XHU2OTIyXHU2OTI2XHU2OEUxXHU2OTBDXHU2OENEXHU2OEQ0XHU2OEU3XHU2OEQ1XHU2OTM2XHU2OTEyXHU2OTA0XHU2OEQ3XHU2OEUzXHU2OTI1XHU2OEY5XHU2OEUwXHU2OEVGXHU2OTI4XHU2OTJBXHU2OTFBXHU2OTIzXHU2OTIxXHU2OEM2XHU2OTc5XHU2OTc3XHU2OTVDXHU2OTc4XHU2OTZCXHU2OTU0XHU2OTdFXHU2OTZFXHU2OTM5XHU2OTc0XHU2OTNEXHU2OTU5XHU2OTMwXHU2OTYxXHU2OTVFXHU2OTVEXHU2OTgxXHU2OTZBXHU2OUIyXHU2OUFFXHU2OUQwXHU2OUJGXHU2OUMxXHU2OUQzXHU2OUJFXHU2OUNFXHU1QkU4XHU2OUNBXHU2OUREXHU2OUJCXHU2OUMzXHU2OUE3XHU2QTJFXHU2OTkxXHU2OUEwXHU2OTlDXHU2OTk1XHU2OUI0XHU2OURFXHU2OUU4XHU2QTAyXHU2QTFCXHU2OUZGXHU2QjBBXHU2OUY5XHU2OUYyXHU2OUU3XHU2QTA1XHU2OUIxXHU2QTFFXHU2OUVEXHU2QTE0XHU2OUVCXHU2QTBBXHU2QTEyXHU2QUMxXHU2QTIzXHU2QTEzXHU2QTQ0XHU2QTBDXHU2QTcyXHU2QTM2XHU2QTc4XHU2QTQ3XHU2QTYyXHU2QTU5XHU2QTY2XHU2QTQ4XHU2QTM4XHU2QTIyXHU2QTkwXHU2QThEXHU2QUEwXHU2QTg0XHU2QUEyXHU2QUEzXCJdLFxuW1wiOWY0MFwiLFwiXHU2QTk3XHU4NjE3XHU2QUJCXHU2QUMzXHU2QUMyXHU2QUI4XHU2QUIzXHU2QUFDXHU2QURFXHU2QUQxXHU2QURGXHU2QUFBXHU2QURBXHU2QUVBXHU2QUZCXHU2QjA1XHU4NjE2XHU2QUZBXHU2QjEyXHU2QjE2XHU5QjMxXHU2QjFGXHU2QjM4XHU2QjM3XHU3NkRDXHU2QjM5XHU5OEVFXHU2QjQ3XHU2QjQzXHU2QjQ5XHU2QjUwXHU2QjU5XHU2QjU0XHU2QjVCXHU2QjVGXHU2QjYxXHU2Qjc4XHU2Qjc5XHU2QjdGXHU2QjgwXHU2Qjg0XHU2QjgzXHU2QjhEXHU2Qjk4XHU2Qjk1XHU2QjlFXHU2QkE0XHU2QkFBXHU2QkFCXHU2QkFGXHU2QkIyXHU2QkIxXHU2QkIzXHU2QkI3XHU2QkJDXHU2QkM2XHU2QkNCXHU2QkQzXHU2QkRGXHU2QkVDXHU2QkVCXHU2QkYzXHU2QkVGXCJdLFxuW1wiOWY4MFwiLFwiXHU5RUJFXHU2QzA4XHU2QzEzXHU2QzE0XHU2QzFCXHU2QzI0XHU2QzIzXHU2QzVFXHU2QzU1XHU2QzYyXHU2QzZBXHU2QzgyXHU2QzhEXHU2QzlBXHU2QzgxXHU2QzlCXHU2QzdFXHU2QzY4XHU2QzczXHU2QzkyXHU2QzkwXHU2Q0M0XHU2Q0YxXHU2Q0QzXHU2Q0JEXHU2Q0Q3XHU2Q0M1XHU2Q0REXHU2Q0FFXHU2Q0IxXHU2Q0JFXHU2Q0JBXHU2Q0RCXHU2Q0VGXHU2Q0Q5XHU2Q0VBXHU2RDFGXHU4ODREXHU2RDM2XHU2RDJCXHU2RDNEXHU2RDM4XHU2RDE5XHU2RDM1XHU2RDMzXHU2RDEyXHU2RDBDXHU2RDYzXHU2RDkzXHU2RDY0XHU2RDVBXHU2RDc5XHU2RDU5XHU2RDhFXHU2RDk1XHU2RkU0XHU2RDg1XHU2REY5XHU2RTE1XHU2RTBBXHU2REI1XHU2REM3XHU2REU2XHU2REI4XHU2REM2XHU2REVDXHU2RERFXHU2RENDXHU2REU4XHU2REQyXHU2REM1XHU2REZBXHU2REQ5XHU2REU0XHU2REQ1XHU2REVBXHU2REVFXHU2RTJEXHU2RTZFXHU2RTJFXHU2RTE5XHU2RTcyXHU2RTVGXHU2RTNFXHU2RTIzXHU2RTZCXHU2RTJCXHU2RTc2XHU2RTREXHU2RTFGXHU2RTQzXHU2RTNBXHU2RTRFXHU2RTI0XHU2RUZGXHU2RTFEXHU2RTM4XHU2RTgyXHU2RUFBXHU2RTk4XHU2RUM5XHU2RUI3XHU2RUQzXHU2RUJEXHU2RUFGXHU2RUM0XHU2RUIyXHU2RUQ0XHU2RUQ1XHU2RThGXHU2RUE1XHU2RUMyXHU2RTlGXHU2RjQxXHU2RjExXHU3MDRDXHU2RUVDXHU2RUY4XHU2RUZFXHU2RjNGXHU2RUYyXHU2RjMxXHU2RUVGXHU2RjMyXHU2RUNDXCJdLFxuW1wiZTA0MFwiLFwiXHU2RjNFXHU2RjEzXHU2RUY3XHU2Rjg2XHU2RjdBXHU2Rjc4XHU2RjgxXHU2RjgwXHU2RjZGXHU2RjVCXHU2RkYzXHU2RjZEXHU2RjgyXHU2RjdDXHU2RjU4XHU2RjhFXHU2RjkxXHU2RkMyXHU2RjY2XHU2RkIzXHU2RkEzXHU2RkExXHU2RkE0XHU2RkI5XHU2RkM2XHU2RkFBXHU2RkRGXHU2RkQ1XHU2RkVDXHU2RkQ0XHU2RkQ4XHU2RkYxXHU2RkVFXHU2RkRCXHU3MDA5XHU3MDBCXHU2RkZBXHU3MDExXHU3MDAxXHU3MDBGXHU2RkZFXHU3MDFCXHU3MDFBXHU2Rjc0XHU3MDFEXHU3MDE4XHU3MDFGXHU3MDMwXHU3MDNFXHU3MDMyXHU3MDUxXHU3MDYzXHU3MDk5XHU3MDkyXHU3MEFGXHU3MEYxXHU3MEFDXHU3MEI4XHU3MEIzXHU3MEFFXHU3MERGXHU3MENCXHU3MEREXCJdLFxuW1wiZTA4MFwiLFwiXHU3MEQ5XHU3MTA5XHU3MEZEXHU3MTFDXHU3MTE5XHU3MTY1XHU3MTU1XHU3MTg4XHU3MTY2XHU3MTYyXHU3MTRDXHU3MTU2XHU3MTZDXHU3MThGXHU3MUZCXHU3MTg0XHU3MTk1XHU3MUE4XHU3MUFDXHU3MUQ3XHU3MUI5XHU3MUJFXHU3MUQyXHU3MUM5XHU3MUQ0XHU3MUNFXHU3MUUwXHU3MUVDXHU3MUU3XHU3MUY1XHU3MUZDXHU3MUY5XHU3MUZGXHU3MjBEXHU3MjEwXHU3MjFCXHU3MjI4XHU3MjJEXHU3MjJDXHU3MjMwXHU3MjMyXHU3MjNCXHU3MjNDXHU3MjNGXHU3MjQwXHU3MjQ2XHU3MjRCXHU3MjU4XHU3Mjc0XHU3MjdFXHU3MjgyXHU3MjgxXHU3Mjg3XHU3MjkyXHU3Mjk2XHU3MkEyXHU3MkE3XHU3MkI5XHU3MkIyXHU3MkMzXHU3MkM2XHU3MkM0XHU3MkNFXHU3MkQyXHU3MkUyXHU3MkUwXHU3MkUxXHU3MkY5XHU3MkY3XHU1MDBGXHU3MzE3XHU3MzBBXHU3MzFDXHU3MzE2XHU3MzFEXHU3MzM0XHU3MzJGXHU3MzI5XHU3MzI1XHU3MzNFXHU3MzRFXHU3MzRGXHU5RUQ4XHU3MzU3XHU3MzZBXHU3MzY4XHU3MzcwXHU3Mzc4XHU3Mzc1XHU3MzdCXHU3MzdBXHU3M0M4XHU3M0IzXHU3M0NFXHU3M0JCXHU3M0MwXHU3M0U1XHU3M0VFXHU3M0RFXHU3NEEyXHU3NDA1XHU3NDZGXHU3NDI1XHU3M0Y4XHU3NDMyXHU3NDNBXHU3NDU1XHU3NDNGXHU3NDVGXHU3NDU5XHU3NDQxXHU3NDVDXHU3NDY5XHU3NDcwXHU3NDYzXHU3NDZBXHU3NDc2XHU3NDdFXHU3NDhCXHU3NDlFXHU3NEE3XHU3NENBXHU3NENGXHU3NEQ0XHU3M0YxXCJdLFxuW1wiZTE0MFwiLFwiXHU3NEUwXHU3NEUzXHU3NEU3XHU3NEU5XHU3NEVFXHU3NEYyXHU3NEYwXHU3NEYxXHU3NEY4XHU3NEY3XHU3NTA0XHU3NTAzXHU3NTA1XHU3NTBDXHU3NTBFXHU3NTBEXHU3NTE1XHU3NTEzXHU3NTFFXHU3NTI2XHU3NTJDXHU3NTNDXHU3NTQ0XHU3NTREXHU3NTRBXHU3NTQ5XHU3NTVCXHU3NTQ2XHU3NTVBXHU3NTY5XHU3NTY0XHU3NTY3XHU3NTZCXHU3NTZEXHU3NTc4XHU3NTc2XHU3NTg2XHU3NTg3XHU3NTc0XHU3NThBXHU3NTg5XHU3NTgyXHU3NTk0XHU3NTlBXHU3NTlEXHU3NUE1XHU3NUEzXHU3NUMyXHU3NUIzXHU3NUMzXHU3NUI1XHU3NUJEXHU3NUI4XHU3NUJDXHU3NUIxXHU3NUNEXHU3NUNBXHU3NUQyXHU3NUQ5XHU3NUUzXHU3NURFXHU3NUZFXHU3NUZGXCJdLFxuW1wiZTE4MFwiLFwiXHU3NUZDXHU3NjAxXHU3NUYwXHU3NUZBXHU3NUYyXHU3NUYzXHU3NjBCXHU3NjBEXHU3NjA5XHU3NjFGXHU3NjI3XHU3NjIwXHU3NjIxXHU3NjIyXHU3NjI0XHU3NjM0XHU3NjMwXHU3NjNCXHU3NjQ3XHU3NjQ4XHU3NjQ2XHU3NjVDXHU3NjU4XHU3NjYxXHU3NjYyXHU3NjY4XHU3NjY5XHU3NjZBXHU3NjY3XHU3NjZDXHU3NjcwXHU3NjcyXHU3Njc2XHU3Njc4XHU3NjdDXHU3NjgwXHU3NjgzXHU3Njg4XHU3NjhCXHU3NjhFXHU3Njk2XHU3NjkzXHU3Njk5XHU3NjlBXHU3NkIwXHU3NkI0XHU3NkI4XHU3NkI5XHU3NkJBXHU3NkMyXHU3NkNEXHU3NkQ2XHU3NkQyXHU3NkRFXHU3NkUxXHU3NkU1XHU3NkU3XHU3NkVBXHU4NjJGXHU3NkZCXHU3NzA4XHU3NzA3XHU3NzA0XHU3NzI5XHU3NzI0XHU3NzFFXHU3NzI1XHU3NzI2XHU3NzFCXHU3NzM3XHU3NzM4XHU3NzQ3XHU3NzVBXHU3NzY4XHU3NzZCXHU3NzVCXHU3NzY1XHU3NzdGXHU3NzdFXHU3Nzc5XHU3NzhFXHU3NzhCXHU3NzkxXHU3N0EwXHU3NzlFXHU3N0IwXHU3N0I2XHU3N0I5XHU3N0JGXHU3N0JDXHU3N0JEXHU3N0JCXHU3N0M3XHU3N0NEXHU3N0Q3XHU3N0RBXHU3N0RDXHU3N0UzXHU3N0VFXHU3N0ZDXHU3ODBDXHU3ODEyXHU3OTI2XHU3ODIwXHU3OTJBXHU3ODQ1XHU3ODhFXHU3ODc0XHU3ODg2XHU3ODdDXHU3ODlBXHU3ODhDXHU3OEEzXHU3OEI1XHU3OEFBXHU3OEFGXHU3OEQxXHU3OEM2XHU3OENCXHU3OEQ0XHU3OEJFXHU3OEJDXHU3OEM1XHU3OENBXHU3OEVDXCJdLFxuW1wiZTI0MFwiLFwiXHU3OEU3XHU3OERBXHU3OEZEXHU3OEY0XHU3OTA3XHU3OTEyXHU3OTExXHU3OTE5XHU3OTJDXHU3OTJCXHU3OTQwXHU3OTYwXHU3OTU3XHU3OTVGXHU3OTVBXHU3OTU1XHU3OTUzXHU3OTdBXHU3OTdGXHU3OThBXHU3OTlEXHU3OUE3XHU5RjRCXHU3OUFBXHU3OUFFXHU3OUIzXHU3OUI5XHU3OUJBXHU3OUM5XHU3OUQ1XHU3OUU3XHU3OUVDXHU3OUUxXHU3OUUzXHU3QTA4XHU3QTBEXHU3QTE4XHU3QTE5XHU3QTIwXHU3QTFGXHU3OTgwXHU3QTMxXHU3QTNCXHU3QTNFXHU3QTM3XHU3QTQzXHU3QTU3XHU3QTQ5XHU3QTYxXHU3QTYyXHU3QTY5XHU5RjlEXHU3QTcwXHU3QTc5XHU3QTdEXHU3QTg4XHU3QTk3XHU3QTk1XHU3QTk4XHU3QTk2XHU3QUE5XHU3QUM4XHU3QUIwXCJdLFxuW1wiZTI4MFwiLFwiXHU3QUI2XHU3QUM1XHU3QUM0XHU3QUJGXHU5MDgzXHU3QUM3XHU3QUNBXHU3QUNEXHU3QUNGXHU3QUQ1XHU3QUQzXHU3QUQ5XHU3QURBXHU3QUREXHU3QUUxXHU3QUUyXHU3QUU2XHU3QUVEXHU3QUYwXHU3QjAyXHU3QjBGXHU3QjBBXHU3QjA2XHU3QjMzXHU3QjE4XHU3QjE5XHU3QjFFXHU3QjM1XHU3QjI4XHU3QjM2XHU3QjUwXHU3QjdBXHU3QjA0XHU3QjREXHU3QjBCXHU3QjRDXHU3QjQ1XHU3Qjc1XHU3QjY1XHU3Qjc0XHU3QjY3XHU3QjcwXHU3QjcxXHU3QjZDXHU3QjZFXHU3QjlEXHU3Qjk4XHU3QjlGXHU3QjhEXHU3QjlDXHU3QjlBXHU3QjhCXHU3QjkyXHU3QjhGXHU3QjVEXHU3Qjk5XHU3QkNCXHU3QkMxXHU3QkNDXHU3QkNGXHU3QkI0XHU3QkM2XHU3QkREXHU3QkU5XHU3QzExXHU3QzE0XHU3QkU2XHU3QkU1XHU3QzYwXHU3QzAwXHU3QzA3XHU3QzEzXHU3QkYzXHU3QkY3XHU3QzE3XHU3QzBEXHU3QkY2XHU3QzIzXHU3QzI3XHU3QzJBXHU3QzFGXHU3QzM3XHU3QzJCXHU3QzNEXHU3QzRDXHU3QzQzXHU3QzU0XHU3QzRGXHU3QzQwXHU3QzUwXHU3QzU4XHU3QzVGXHU3QzY0XHU3QzU2XHU3QzY1XHU3QzZDXHU3Qzc1XHU3QzgzXHU3QzkwXHU3Q0E0XHU3Q0FEXHU3Q0EyXHU3Q0FCXHU3Q0ExXHU3Q0E4XHU3Q0IzXHU3Q0IyXHU3Q0IxXHU3Q0FFXHU3Q0I5XHU3Q0JEXHU3Q0MwXHU3Q0M1XHU3Q0MyXHU3Q0Q4XHU3Q0QyXHU3Q0RDXHU3Q0UyXHU5QjNCXHU3Q0VGXHU3Q0YyXHU3Q0Y0XHU3Q0Y2XHU3Q0ZBXHU3RDA2XCJdLFxuW1wiZTM0MFwiLFwiXHU3RDAyXHU3RDFDXHU3RDE1XHU3RDBBXHU3RDQ1XHU3RDRCXHU3RDJFXHU3RDMyXHU3RDNGXHU3RDM1XHU3RDQ2XHU3RDczXHU3RDU2XHU3RDRFXHU3RDcyXHU3RDY4XHU3RDZFXHU3RDRGXHU3RDYzXHU3RDkzXHU3RDg5XHU3RDVCXHU3RDhGXHU3RDdEXHU3RDlCXHU3REJBXHU3REFFXHU3REEzXHU3REI1XHU3REM3XHU3REJEXHU3REFCXHU3RTNEXHU3REEyXHU3REFGXHU3RERDXHU3REI4XHU3RDlGXHU3REIwXHU3REQ4XHU3REREXHU3REU0XHU3RERFXHU3REZCXHU3REYyXHU3REUxXHU3RTA1XHU3RTBBXHU3RTIzXHU3RTIxXHU3RTEyXHU3RTMxXHU3RTFGXHU3RTA5XHU3RTBCXHU3RTIyXHU3RTQ2XHU3RTY2XHU3RTNCXHU3RTM1XHU3RTM5XHU3RTQzXHU3RTM3XCJdLFxuW1wiZTM4MFwiLFwiXHU3RTMyXHU3RTNBXHU3RTY3XHU3RTVEXHU3RTU2XHU3RTVFXHU3RTU5XHU3RTVBXHU3RTc5XHU3RTZBXHU3RTY5XHU3RTdDXHU3RTdCXHU3RTgzXHU3REQ1XHU3RTdEXHU4RkFFXHU3RTdGXHU3RTg4XHU3RTg5XHU3RThDXHU3RTkyXHU3RTkwXHU3RTkzXHU3RTk0XHU3RTk2XHU3RThFXHU3RTlCXHU3RTlDXHU3RjM4XHU3RjNBXHU3RjQ1XHU3RjRDXHU3RjREXHU3RjRFXHU3RjUwXHU3RjUxXHU3RjU1XHU3RjU0XHU3RjU4XHU3RjVGXHU3RjYwXHU3RjY4XHU3RjY5XHU3RjY3XHU3Rjc4XHU3RjgyXHU3Rjg2XHU3RjgzXHU3Rjg4XHU3Rjg3XHU3RjhDXHU3Rjk0XHU3RjlFXHU3RjlEXHU3RjlBXHU3RkEzXHU3RkFGXHU3RkIyXHU3RkI5XHU3RkFFXHU3RkI2XHU3RkI4XHU4QjcxXHU3RkM1XHU3RkM2XHU3RkNBXHU3RkQ1XHU3RkQ0XHU3RkUxXHU3RkU2XHU3RkU5XHU3RkYzXHU3RkY5XHU5OERDXHU4MDA2XHU4MDA0XHU4MDBCXHU4MDEyXHU4MDE4XHU4MDE5XHU4MDFDXHU4MDIxXHU4MDI4XHU4MDNGXHU4MDNCXHU4MDRBXHU4MDQ2XHU4MDUyXHU4MDU4XHU4MDVBXHU4MDVGXHU4MDYyXHU4MDY4XHU4MDczXHU4MDcyXHU4MDcwXHU4MDc2XHU4MDc5XHU4MDdEXHU4MDdGXHU4MDg0XHU4MDg2XHU4MDg1XHU4MDlCXHU4MDkzXHU4MDlBXHU4MEFEXHU1MTkwXHU4MEFDXHU4MERCXHU4MEU1XHU4MEQ5XHU4MEREXHU4MEM0XHU4MERBXHU4MEQ2XHU4MTA5XHU4MEVGXHU4MEYxXHU4MTFCXHU4MTI5XHU4MTIzXHU4MTJGXHU4MTRCXCJdLFxuW1wiZTQ0MFwiLFwiXHU5NjhCXHU4MTQ2XHU4MTNFXHU4MTUzXHU4MTUxXHU4MEZDXHU4MTcxXHU4MTZFXHU4MTY1XHU4MTY2XHU4MTc0XHU4MTgzXHU4MTg4XHU4MThBXHU4MTgwXHU4MTgyXHU4MUEwXHU4MTk1XHU4MUE0XHU4MUEzXHU4MTVGXHU4MTkzXHU4MUE5XHU4MUIwXHU4MUI1XHU4MUJFXHU4MUI4XHU4MUJEXHU4MUMwXHU4MUMyXHU4MUJBXHU4MUM5XHU4MUNEXHU4MUQxXHU4MUQ5XHU4MUQ4XHU4MUM4XHU4MURBXHU4MURGXHU4MUUwXHU4MUU3XHU4MUZBXHU4MUZCXHU4MUZFXHU4MjAxXHU4MjAyXHU4MjA1XHU4MjA3XHU4MjBBXHU4MjBEXHU4MjEwXHU4MjE2XHU4MjI5XHU4MjJCXHU4MjM4XHU4MjMzXHU4MjQwXHU4MjU5XHU4MjU4XHU4MjVEXHU4MjVBXHU4MjVGXHU4MjY0XCJdLFxuW1wiZTQ4MFwiLFwiXHU4MjYyXHU4MjY4XHU4MjZBXHU4MjZCXHU4MjJFXHU4MjcxXHU4Mjc3XHU4Mjc4XHU4MjdFXHU4MjhEXHU4MjkyXHU4MkFCXHU4MjlGXHU4MkJCXHU4MkFDXHU4MkUxXHU4MkUzXHU4MkRGXHU4MkQyXHU4MkY0XHU4MkYzXHU4MkZBXHU4MzkzXHU4MzAzXHU4MkZCXHU4MkY5XHU4MkRFXHU4MzA2XHU4MkRDXHU4MzA5XHU4MkQ5XHU4MzM1XHU4MzM0XHU4MzE2XHU4MzMyXHU4MzMxXHU4MzQwXHU4MzM5XHU4MzUwXHU4MzQ1XHU4MzJGXHU4MzJCXHU4MzE3XHU4MzE4XHU4Mzg1XHU4MzlBXHU4M0FBXHU4MzlGXHU4M0EyXHU4Mzk2XHU4MzIzXHU4MzhFXHU4Mzg3XHU4MzhBXHU4MzdDXHU4M0I1XHU4MzczXHU4Mzc1XHU4M0EwXHU4Mzg5XHU4M0E4XHU4M0Y0XHU4NDEzXHU4M0VCXHU4M0NFXHU4M0ZEXHU4NDAzXHU4M0Q4XHU4NDBCXHU4M0MxXHU4M0Y3XHU4NDA3XHU4M0UwXHU4M0YyXHU4NDBEXHU4NDIyXHU4NDIwXHU4M0JEXHU4NDM4XHU4NTA2XHU4M0ZCXHU4NDZEXHU4NDJBXHU4NDNDXHU4NTVBXHU4NDg0XHU4NDc3XHU4NDZCXHU4NEFEXHU4NDZFXHU4NDgyXHU4NDY5XHU4NDQ2XHU4NDJDXHU4NDZGXHU4NDc5XHU4NDM1XHU4NENBXHU4NDYyXHU4NEI5XHU4NEJGXHU4NDlGXHU4NEQ5XHU4NENEXHU4NEJCXHU4NERBXHU4NEQwXHU4NEMxXHU4NEM2XHU4NEQ2XHU4NEExXHU4NTIxXHU4NEZGXHU4NEY0XHU4NTE3XHU4NTE4XHU4NTJDXHU4NTFGXHU4NTE1XHU4NTE0XHU4NEZDXHU4NTQwXHU4NTYzXHU4NTU4XHU4NTQ4XCJdLFxuW1wiZTU0MFwiLFwiXHU4NTQxXHU4NjAyXHU4NTRCXHU4NTU1XHU4NTgwXHU4NUE0XHU4NTg4XHU4NTkxXHU4NThBXHU4NUE4XHU4NTZEXHU4NTk0XHU4NTlCXHU4NUVBXHU4NTg3XHU4NTlDXHU4NTc3XHU4NTdFXHU4NTkwXHU4NUM5XHU4NUJBXHU4NUNGXHU4NUI5XHU4NUQwXHU4NUQ1XHU4NUREXHU4NUU1XHU4NURDXHU4NUY5XHU4NjBBXHU4NjEzXHU4NjBCXHU4NUZFXHU4NUZBXHU4NjA2XHU4NjIyXHU4NjFBXHU4NjMwXHU4NjNGXHU4NjREXHU0RTU1XHU4NjU0XHU4NjVGXHU4NjY3XHU4NjcxXHU4NjkzXHU4NkEzXHU4NkE5XHU4NkFBXHU4NjhCXHU4NjhDXHU4NkI2XHU4NkFGXHU4NkM0XHU4NkM2XHU4NkIwXHU4NkM5XHU4ODIzXHU4NkFCXHU4NkQ0XHU4NkRFXHU4NkU5XHU4NkVDXCJdLFxuW1wiZTU4MFwiLFwiXHU4NkRGXHU4NkRCXHU4NkVGXHU4NzEyXHU4NzA2XHU4NzA4XHU4NzAwXHU4NzAzXHU4NkZCXHU4NzExXHU4NzA5XHU4NzBEXHU4NkY5XHU4NzBBXHU4NzM0XHU4NzNGXHU4NzM3XHU4NzNCXHU4NzI1XHU4NzI5XHU4NzFBXHU4NzYwXHU4NzVGXHU4Nzc4XHU4NzRDXHU4NzRFXHU4Nzc0XHU4NzU3XHU4NzY4XHU4NzZFXHU4NzU5XHU4NzUzXHU4NzYzXHU4NzZBXHU4ODA1XHU4N0EyXHU4NzlGXHU4NzgyXHU4N0FGXHU4N0NCXHU4N0JEXHU4N0MwXHU4N0QwXHU5NkQ2XHU4N0FCXHU4N0M0XHU4N0IzXHU4N0M3XHU4N0M2XHU4N0JCXHU4N0VGXHU4N0YyXHU4N0UwXHU4ODBGXHU4ODBEXHU4N0ZFXHU4N0Y2XHU4N0Y3XHU4ODBFXHU4N0QyXHU4ODExXHU4ODE2XHU4ODE1XHU4ODIyXHU4ODIxXHU4ODMxXHU4ODM2XHU4ODM5XHU4ODI3XHU4ODNCXHU4ODQ0XHU4ODQyXHU4ODUyXHU4ODU5XHU4ODVFXHU4ODYyXHU4ODZCXHU4ODgxXHU4ODdFXHU4ODlFXHU4ODc1XHU4ODdEXHU4OEI1XHU4ODcyXHU4ODgyXHU4ODk3XHU4ODkyXHU4OEFFXHU4ODk5XHU4OEEyXHU4ODhEXHU4OEE0XHU4OEIwXHU4OEJGXHU4OEIxXHU4OEMzXHU4OEM0XHU4OEQ0XHU4OEQ4XHU4OEQ5XHU4OEREXHU4OEY5XHU4OTAyXHU4OEZDXHU4OEY0XHU4OEU4XHU4OEYyXHU4OTA0XHU4OTBDXHU4OTBBXHU4OTEzXHU4OTQzXHU4OTFFXHU4OTI1XHU4OTJBXHU4OTJCXHU4OTQxXHU4OTQ0XHU4OTNCXHU4OTM2XHU4OTM4XHU4OTRDXHU4OTFEXHU4OTYwXHU4OTVFXCJdLFxuW1wiZTY0MFwiLFwiXHU4OTY2XHU4OTY0XHU4OTZEXHU4OTZBXHU4OTZGXHU4OTc0XHU4OTc3XHU4OTdFXHU4OTgzXHU4OTg4XHU4OThBXHU4OTkzXHU4OTk4XHU4OUExXHU4OUE5XHU4OUE2XHU4OUFDXHU4OUFGXHU4OUIyXHU4OUJBXHU4OUJEXHU4OUJGXHU4OUMwXHU4OURBXHU4OURDXHU4OUREXHU4OUU3XHU4OUY0XHU4OUY4XHU4QTAzXHU4QTE2XHU4QTEwXHU4QTBDXHU4QTFCXHU4QTFEXHU4QTI1XHU4QTM2XHU4QTQxXHU4QTVCXHU4QTUyXHU4QTQ2XHU4QTQ4XHU4QTdDXHU4QTZEXHU4QTZDXHU4QTYyXHU4QTg1XHU4QTgyXHU4QTg0XHU4QUE4XHU4QUExXHU4QTkxXHU4QUE1XHU4QUE2XHU4QTlBXHU4QUEzXHU4QUM0XHU4QUNEXHU4QUMyXHU4QURBXHU4QUVCXHU4QUYzXHU4QUU3XCJdLFxuW1wiZTY4MFwiLFwiXHU4QUU0XHU4QUYxXHU4QjE0XHU4QUUwXHU4QUUyXHU4QUY3XHU4QURFXHU4QURCXHU4QjBDXHU4QjA3XHU4QjFBXHU4QUUxXHU4QjE2XHU4QjEwXHU4QjE3XHU4QjIwXHU4QjMzXHU5N0FCXHU4QjI2XHU4QjJCXHU4QjNFXHU4QjI4XHU4QjQxXHU4QjRDXHU4QjRGXHU4QjRFXHU4QjQ5XHU4QjU2XHU4QjVCXHU4QjVBXHU4QjZCXHU4QjVGXHU4QjZDXHU4QjZGXHU4Qjc0XHU4QjdEXHU4QjgwXHU4QjhDXHU4QjhFXHU4QjkyXHU4QjkzXHU4Qjk2XHU4Qjk5XHU4QjlBXHU4QzNBXHU4QzQxXHU4QzNGXHU4QzQ4XHU4QzRDXHU4QzRFXHU4QzUwXHU4QzU1XHU4QzYyXHU4QzZDXHU4Qzc4XHU4QzdBXHU4QzgyXHU4Qzg5XHU4Qzg1XHU4QzhBXHU4QzhEXHU4QzhFXHU4Qzk0XHU4QzdDXHU4Qzk4XHU2MjFEXHU4Q0FEXHU4Q0FBXHU4Q0JEXHU4Q0IyXHU4Q0IzXHU4Q0FFXHU4Q0I2XHU4Q0M4XHU4Q0MxXHU4Q0U0XHU4Q0UzXHU4Q0RBXHU4Q0ZEXHU4Q0ZBXHU4Q0ZCXHU4RDA0XHU4RDA1XHU4RDBBXHU4RDA3XHU4RDBGXHU4RDBEXHU4RDEwXHU5RjRFXHU4RDEzXHU4Q0NEXHU4RDE0XHU4RDE2XHU4RDY3XHU4RDZEXHU4RDcxXHU4RDczXHU4RDgxXHU4RDk5XHU4REMyXHU4REJFXHU4REJBXHU4RENGXHU4RERBXHU4REQ2XHU4RENDXHU4RERCXHU4RENCXHU4REVBXHU4REVCXHU4RERGXHU4REUzXHU4REZDXHU4RTA4XHU4RTA5XHU4REZGXHU4RTFEXHU4RTFFXHU4RTEwXHU4RTFGXHU4RTQyXHU4RTM1XHU4RTMwXHU4RTM0XHU4RTRBXCJdLFxuW1wiZTc0MFwiLFwiXHU4RTQ3XHU4RTQ5XHU4RTRDXHU4RTUwXHU4RTQ4XHU4RTU5XHU4RTY0XHU4RTYwXHU4RTJBXHU4RTYzXHU4RTU1XHU4RTc2XHU4RTcyXHU4RTdDXHU4RTgxXHU4RTg3XHU4RTg1XHU4RTg0XHU4RThCXHU4RThBXHU4RTkzXHU4RTkxXHU4RTk0XHU4RTk5XHU4RUFBXHU4RUExXHU4RUFDXHU4RUIwXHU4RUM2XHU4RUIxXHU4RUJFXHU4RUM1XHU4RUM4XHU4RUNCXHU4RURCXHU4RUUzXHU4RUZDXHU4RUZCXHU4RUVCXHU4RUZFXHU4RjBBXHU4RjA1XHU4RjE1XHU4RjEyXHU4RjE5XHU4RjEzXHU4RjFDXHU4RjFGXHU4RjFCXHU4RjBDXHU4RjI2XHU4RjMzXHU4RjNCXHU4RjM5XHU4RjQ1XHU4RjQyXHU4RjNFXHU4RjRDXHU4RjQ5XHU4RjQ2XHU4RjRFXHU4RjU3XHU4RjVDXCJdLFxuW1wiZTc4MFwiLFwiXHU4RjYyXHU4RjYzXHU4RjY0XHU4RjlDXHU4RjlGXHU4RkEzXHU4RkFEXHU4RkFGXHU4RkI3XHU4RkRBXHU4RkU1XHU4RkUyXHU4RkVBXHU4RkVGXHU5MDg3XHU4RkY0XHU5MDA1XHU4RkY5XHU4RkZBXHU5MDExXHU5MDE1XHU5MDIxXHU5MDBEXHU5MDFFXHU5MDE2XHU5MDBCXHU5MDI3XHU5MDM2XHU5MDM1XHU5MDM5XHU4RkY4XHU5MDRGXHU5MDUwXHU5MDUxXHU5MDUyXHU5MDBFXHU5MDQ5XHU5MDNFXHU5MDU2XHU5MDU4XHU5MDVFXHU5MDY4XHU5MDZGXHU5MDc2XHU5NkE4XHU5MDcyXHU5MDgyXHU5MDdEXHU5MDgxXHU5MDgwXHU5MDhBXHU5MDg5XHU5MDhGXHU5MEE4XHU5MEFGXHU5MEIxXHU5MEI1XHU5MEUyXHU5MEU0XHU2MjQ4XHU5MERCXHU5MTAyXHU5MTEyXHU5MTE5XHU5MTMyXHU5MTMwXHU5MTRBXHU5MTU2XHU5MTU4XHU5MTYzXHU5MTY1XHU5MTY5XHU5MTczXHU5MTcyXHU5MThCXHU5MTg5XHU5MTgyXHU5MUEyXHU5MUFCXHU5MUFGXHU5MUFBXHU5MUI1XHU5MUI0XHU5MUJBXHU5MUMwXHU5MUMxXHU5MUM5XHU5MUNCXHU5MUQwXHU5MUQ2XHU5MURGXHU5MUUxXHU5MURCXHU5MUZDXHU5MUY1XHU5MUY2XHU5MjFFXHU5MUZGXHU5MjE0XHU5MjJDXHU5MjE1XHU5MjExXHU5MjVFXHU5MjU3XHU5MjQ1XHU5MjQ5XHU5MjY0XHU5MjQ4XHU5Mjk1XHU5MjNGXHU5MjRCXHU5MjUwXHU5MjlDXHU5Mjk2XHU5MjkzXHU5MjlCXHU5MjVBXHU5MkNGXHU5MkI5XHU5MkI3XHU5MkU5XHU5MzBGXHU5MkZBXHU5MzQ0XHU5MzJFXCJdLFxuW1wiZTg0MFwiLFwiXHU5MzE5XHU5MzIyXHU5MzFBXHU5MzIzXHU5MzNBXHU5MzM1XHU5MzNCXHU5MzVDXHU5MzYwXHU5MzdDXHU5MzZFXHU5MzU2XHU5M0IwXHU5M0FDXHU5M0FEXHU5Mzk0XHU5M0I5XHU5M0Q2XHU5M0Q3XHU5M0U4XHU5M0U1XHU5M0Q4XHU5M0MzXHU5M0REXHU5M0QwXHU5M0M4XHU5M0U0XHU5NDFBXHU5NDE0XHU5NDEzXHU5NDAzXHU5NDA3XHU5NDEwXHU5NDM2XHU5NDJCXHU5NDM1XHU5NDIxXHU5NDNBXHU5NDQxXHU5NDUyXHU5NDQ0XHU5NDVCXHU5NDYwXHU5NDYyXHU5NDVFXHU5NDZBXHU5MjI5XHU5NDcwXHU5NDc1XHU5NDc3XHU5NDdEXHU5NDVBXHU5NDdDXHU5NDdFXHU5NDgxXHU5NDdGXHU5NTgyXHU5NTg3XHU5NThBXHU5NTk0XHU5NTk2XHU5NTk4XHU5NTk5XCJdLFxuW1wiZTg4MFwiLFwiXHU5NUEwXHU5NUE4XHU5NUE3XHU5NUFEXHU5NUJDXHU5NUJCXHU5NUI5XHU5NUJFXHU5NUNBXHU2RkY2XHU5NUMzXHU5NUNEXHU5NUNDXHU5NUQ1XHU5NUQ0XHU5NUQ2XHU5NURDXHU5NUUxXHU5NUU1XHU5NUUyXHU5NjIxXHU5NjI4XHU5NjJFXHU5NjJGXHU5NjQyXHU5NjRDXHU5NjRGXHU5NjRCXHU5Njc3XHU5NjVDXHU5NjVFXHU5NjVEXHU5NjVGXHU5NjY2XHU5NjcyXHU5NjZDXHU5NjhEXHU5Njk4XHU5Njk1XHU5Njk3XHU5NkFBXHU5NkE3XHU5NkIxXHU5NkIyXHU5NkIwXHU5NkI0XHU5NkI2XHU5NkI4XHU5NkI5XHU5NkNFXHU5NkNCXHU5NkM5XHU5NkNEXHU4OTREXHU5NkRDXHU5NzBEXHU5NkQ1XHU5NkY5XHU5NzA0XHU5NzA2XHU5NzA4XHU5NzEzXHU5NzBFXHU5NzExXHU5NzBGXHU5NzE2XHU5NzE5XHU5NzI0XHU5NzJBXHU5NzMwXHU5NzM5XHU5NzNEXHU5NzNFXHU5NzQ0XHU5NzQ2XHU5NzQ4XHU5NzQyXHU5NzQ5XHU5NzVDXHU5NzYwXHU5NzY0XHU5NzY2XHU5NzY4XHU1MkQyXHU5NzZCXHU5NzcxXHU5Nzc5XHU5Nzg1XHU5NzdDXHU5NzgxXHU5NzdBXHU5Nzg2XHU5NzhCXHU5NzhGXHU5NzkwXHU5NzlDXHU5N0E4XHU5N0E2XHU5N0EzXHU5N0IzXHU5N0I0XHU5N0MzXHU5N0M2XHU5N0M4XHU5N0NCXHU5N0RDXHU5N0VEXHU5RjRGXHU5N0YyXHU3QURGXHU5N0Y2XHU5N0Y1XHU5ODBGXHU5ODBDXHU5ODM4XHU5ODI0XHU5ODIxXHU5ODM3XHU5ODNEXHU5ODQ2XHU5ODRGXHU5ODRCXHU5ODZCXHU5ODZGXHU5ODcwXCJdLFxuW1wiZTk0MFwiLFwiXHU5ODcxXHU5ODc0XHU5ODczXHU5OEFBXHU5OEFGXHU5OEIxXHU5OEI2XHU5OEM0XHU5OEMzXHU5OEM2XHU5OEU5XHU5OEVCXHU5OTAzXHU5OTA5XHU5OTEyXHU5OTE0XHU5OTE4XHU5OTIxXHU5OTFEXHU5OTFFXHU5OTI0XHU5OTIwXHU5OTJDXHU5OTJFXHU5OTNEXHU5OTNFXHU5OTQyXHU5OTQ5XHU5OTQ1XHU5OTUwXHU5OTRCXHU5OTUxXHU5OTUyXHU5OTRDXHU5OTU1XHU5OTk3XHU5OTk4XHU5OUE1XHU5OUFEXHU5OUFFXHU5OUJDXHU5OURGXHU5OURCXHU5OUREXHU5OUQ4XHU5OUQxXHU5OUVEXHU5OUVFXHU5OUYxXHU5OUYyXHU5OUZCXHU5OUY4XHU5QTAxXHU5QTBGXHU5QTA1XHU5OUUyXHU5QTE5XHU5QTJCXHU5QTM3XHU5QTQ1XHU5QTQyXHU5QTQwXHU5QTQzXCJdLFxuW1wiZTk4MFwiLFwiXHU5QTNFXHU5QTU1XHU5QTREXHU5QTVCXHU5QTU3XHU5QTVGXHU5QTYyXHU5QTY1XHU5QTY0XHU5QTY5XHU5QTZCXHU5QTZBXHU5QUFEXHU5QUIwXHU5QUJDXHU5QUMwXHU5QUNGXHU5QUQxXHU5QUQzXHU5QUQ0XHU5QURFXHU5QURGXHU5QUUyXHU5QUUzXHU5QUU2XHU5QUVGXHU5QUVCXHU5QUVFXHU5QUY0XHU5QUYxXHU5QUY3XHU5QUZCXHU5QjA2XHU5QjE4XHU5QjFBXHU5QjFGXHU5QjIyXHU5QjIzXHU5QjI1XHU5QjI3XHU5QjI4XHU5QjI5XHU5QjJBXHU5QjJFXHU5QjJGXHU5QjMyXHU5QjQ0XHU5QjQzXHU5QjRGXHU5QjREXHU5QjRFXHU5QjUxXHU5QjU4XHU5Qjc0XHU5QjkzXHU5QjgzXHU5QjkxXHU5Qjk2XHU5Qjk3XHU5QjlGXHU5QkEwXHU5QkE4XHU5QkI0XHU5QkMwXHU5QkNBXHU5QkI5XHU5QkM2XHU5QkNGXHU5QkQxXHU5QkQyXHU5QkUzXHU5QkUyXHU5QkU0XHU5QkQ0XHU5QkUxXHU5QzNBXHU5QkYyXHU5QkYxXHU5QkYwXHU5QzE1XHU5QzE0XHU5QzA5XHU5QzEzXHU5QzBDXHU5QzA2XHU5QzA4XHU5QzEyXHU5QzBBXHU5QzA0XHU5QzJFXHU5QzFCXHU5QzI1XHU5QzI0XHU5QzIxXHU5QzMwXHU5QzQ3XHU5QzMyXHU5QzQ2XHU5QzNFXHU5QzVBXHU5QzYwXHU5QzY3XHU5Qzc2XHU5Qzc4XHU5Q0U3XHU5Q0VDXHU5Q0YwXHU5RDA5XHU5RDA4XHU5Q0VCXHU5RDAzXHU5RDA2XHU5RDJBXHU5RDI2XHU5REFGXHU5RDIzXHU5RDFGXHU5RDQ0XHU5RDE1XHU5RDEyXHU5RDQxXHU5RDNGXHU5RDNFXHU5RDQ2XHU5RDQ4XCJdLFxuW1wiZWE0MFwiLFwiXHU5RDVEXHU5RDVFXHU5RDY0XHU5RDUxXHU5RDUwXHU5RDU5XHU5RDcyXHU5RDg5XHU5RDg3XHU5REFCXHU5RDZGXHU5RDdBXHU5RDlBXHU5REE0XHU5REE5XHU5REIyXHU5REM0XHU5REMxXHU5REJCXHU5REI4XHU5REJBXHU5REM2XHU5RENGXHU5REMyXHU5REQ5XHU5REQzXHU5REY4XHU5REU2XHU5REVEXHU5REVGXHU5REZEXHU5RTFBXHU5RTFCXHU5RTFFXHU5RTc1XHU5RTc5XHU5RTdEXHU5RTgxXHU5RTg4XHU5RThCXHU5RThDXHU5RTkyXHU5RTk1XHU5RTkxXHU5RTlEXHU5RUE1XHU5RUE5XHU5RUI4XHU5RUFBXHU5RUFEXHU5NzYxXHU5RUNDXHU5RUNFXHU5RUNGXHU5RUQwXHU5RUQ0XHU5RURDXHU5RURFXHU5RUREXHU5RUUwXHU5RUU1XHU5RUU4XHU5RUVGXCJdLFxuW1wiZWE4MFwiLFwiXHU5RUY0XHU5RUY2XHU5RUY3XHU5RUY5XHU5RUZCXHU5RUZDXHU5RUZEXHU5RjA3XHU5RjA4XHU3NkI3XHU5RjE1XHU5RjIxXHU5RjJDXHU5RjNFXHU5RjRBXHU5RjUyXHU5RjU0XHU5RjYzXHU5RjVGXHU5RjYwXHU5RjYxXHU5RjY2XHU5RjY3XHU5RjZDXHU5RjZBXHU5Rjc3XHU5RjcyXHU5Rjc2XHU5Rjk1XHU5RjlDXHU5RkEwXHU1ODJGXHU2OUM3XHU5MDU5XHU3NDY0XHU1MURDXHU3MTk5XCJdLFxuW1wiZWQ0MFwiLFwiXHU3RThBXHU4OTFDXHU5MzQ4XHU5Mjg4XHU4NERDXHU0RkM5XHU3MEJCXHU2NjMxXHU2OEM4XHU5MkY5XHU2NkZCXHU1RjQ1XHU0RTI4XHU0RUUxXHU0RUZDXHU0RjAwXHU0RjAzXHU0RjM5XHU0RjU2XHU0RjkyXHU0RjhBXHU0RjlBXHU0Rjk0XHU0RkNEXHU1MDQwXHU1MDIyXHU0RkZGXHU1MDFFXHU1MDQ2XHU1MDcwXHU1MDQyXHU1MDk0XHU1MEY0XHU1MEQ4XHU1MTRBXHU1MTY0XHU1MTlEXHU1MUJFXHU1MUVDXHU1MjE1XHU1MjlDXHU1MkE2XHU1MkMwXHU1MkRCXHU1MzAwXHU1MzA3XHU1MzI0XHU1MzcyXHU1MzkzXHU1M0IyXHU1M0REXHVGQTBFXHU1NDlDXHU1NDhBXHU1NEE5XHU1NEZGXHU1NTg2XHU1NzU5XHU1NzY1XHU1N0FDXHU1N0M4XHU1N0M3XHVGQTBGXCJdLFxuW1wiZWQ4MFwiLFwiXHVGQTEwXHU1ODlFXHU1OEIyXHU1OTBCXHU1OTUzXHU1OTVCXHU1OTVEXHU1OTYzXHU1OUE0XHU1OUJBXHU1QjU2XHU1QkMwXHU3NTJGXHU1QkQ4XHU1QkVDXHU1QzFFXHU1Q0E2XHU1Q0JBXHU1Q0Y1XHU1RDI3XHU1RDUzXHVGQTExXHU1RDQyXHU1RDZEXHU1REI4XHU1REI5XHU1REQwXHU1RjIxXHU1RjM0XHU1RjY3XHU1RkI3XHU1RkRFXHU2MDVEXHU2MDg1XHU2MDhBXHU2MERFXHU2MEQ1XHU2MTIwXHU2MEYyXHU2MTExXHU2MTM3XHU2MTMwXHU2MTk4XHU2MjEzXHU2MkE2XHU2M0Y1XHU2NDYwXHU2NDlEXHU2NENFXHU2NTRFXHU2NjAwXHU2NjE1XHU2NjNCXHU2NjA5XHU2NjJFXHU2NjFFXHU2NjI0XHU2NjY1XHU2NjU3XHU2NjU5XHVGQTEyXHU2NjczXHU2Njk5XHU2NkEwXHU2NkIyXHU2NkJGXHU2NkZBXHU2NzBFXHVGOTI5XHU2NzY2XHU2N0JCXHU2ODUyXHU2N0MwXHU2ODAxXHU2ODQ0XHU2OENGXHVGQTEzXHU2OTY4XHVGQTE0XHU2OTk4XHU2OUUyXHU2QTMwXHU2QTZCXHU2QTQ2XHU2QTczXHU2QTdFXHU2QUUyXHU2QUU0XHU2QkQ2XHU2QzNGXHU2QzVDXHU2Qzg2XHU2QzZGXHU2Q0RBXHU2RDA0XHU2RDg3XHU2RDZGXHU2RDk2XHU2REFDXHU2RENGXHU2REY4XHU2REYyXHU2REZDXHU2RTM5XHU2RTVDXHU2RTI3XHU2RTNDXHU2RUJGXHU2Rjg4XHU2RkI1XHU2RkY1XHU3MDA1XHU3MDA3XHU3MDI4XHU3MDg1XHU3MEFCXHU3MTBGXHU3MTA0XHU3MTVDXHU3MTQ2XHU3MTQ3XHVGQTE1XHU3MUMxXHU3MUZFXHU3MkIxXCJdLFxuW1wiZWU0MFwiLFwiXHU3MkJFXHU3MzI0XHVGQTE2XHU3Mzc3XHU3M0JEXHU3M0M5XHU3M0Q2XHU3M0UzXHU3M0QyXHU3NDA3XHU3M0Y1XHU3NDI2XHU3NDJBXHU3NDI5XHU3NDJFXHU3NDYyXHU3NDg5XHU3NDlGXHU3NTAxXHU3NTZGXHU3NjgyXHU3NjlDXHU3NjlFXHU3NjlCXHU3NkE2XHVGQTE3XHU3NzQ2XHU1MkFGXHU3ODIxXHU3ODRFXHU3ODY0XHU3ODdBXHU3OTMwXHVGQTE4XHVGQTE5XHVGQTFBXHU3OTk0XHVGQTFCXHU3OTlCXHU3QUQxXHU3QUU3XHVGQTFDXHU3QUVCXHU3QjlFXHVGQTFEXHU3RDQ4XHU3RDVDXHU3REI3XHU3REEwXHU3REQ2XHU3RTUyXHU3RjQ3XHU3RkExXHVGQTFFXHU4MzAxXHU4MzYyXHU4MzdGXHU4M0M3XHU4M0Y2XHU4NDQ4XHU4NEI0XHU4NTUzXHU4NTU5XCJdLFxuW1wiZWU4MFwiLFwiXHU4NTZCXHVGQTFGXHU4NUIwXHVGQTIwXHVGQTIxXHU4ODA3XHU4OEY1XHU4QTEyXHU4QTM3XHU4QTc5XHU4QUE3XHU4QUJFXHU4QURGXHVGQTIyXHU4QUY2XHU4QjUzXHU4QjdGXHU4Q0YwXHU4Q0Y0XHU4RDEyXHU4RDc2XHVGQTIzXHU4RUNGXHVGQTI0XHVGQTI1XHU5MDY3XHU5MERFXHVGQTI2XHU5MTE1XHU5MTI3XHU5MURBXHU5MUQ3XHU5MURFXHU5MUVEXHU5MUVFXHU5MUU0XHU5MUU1XHU5MjA2XHU5MjEwXHU5MjBBXHU5MjNBXHU5MjQwXHU5MjNDXHU5MjRFXHU5MjU5XHU5MjUxXHU5MjM5XHU5MjY3XHU5MkE3XHU5Mjc3XHU5Mjc4XHU5MkU3XHU5MkQ3XHU5MkQ5XHU5MkQwXHVGQTI3XHU5MkQ1XHU5MkUwXHU5MkQzXHU5MzI1XHU5MzIxXHU5MkZCXHVGQTI4XHU5MzFFXHU5MkZGXHU5MzFEXHU5MzAyXHU5MzcwXHU5MzU3XHU5M0E0XHU5M0M2XHU5M0RFXHU5M0Y4XHU5NDMxXHU5NDQ1XHU5NDQ4XHU5NTkyXHVGOURDXHVGQTI5XHU5NjlEXHU5NkFGXHU5NzMzXHU5NzNCXHU5NzQzXHU5NzREXHU5NzRGXHU5NzUxXHU5NzU1XHU5ODU3XHU5ODY1XHVGQTJBXHVGQTJCXHU5OTI3XHVGQTJDXHU5OTlFXHU5QTRFXHU5QUQ5XHU5QURDXHU5Qjc1XHU5QjcyXHU5QjhGXHU5QkIxXHU5QkJCXHU5QzAwXHU5RDcwXHU5RDZCXHVGQTJEXHU5RTE5XHU5RUQxXCJdLFxuW1wiZWVlZlwiLFwiXHUyMTcwXCIsOSxcIlx1RkZFMlx1RkZFNFx1RkYwN1x1RkYwMlwiXSxcbltcImYwNDBcIixcIlx1RTAwMFwiLDYyXSxcbltcImYwODBcIixcIlx1RTAzRlwiLDEyNF0sXG5bXCJmMTQwXCIsXCJcdUUwQkNcIiw2Ml0sXG5bXCJmMTgwXCIsXCJcdUUwRkJcIiwxMjRdLFxuW1wiZjI0MFwiLFwiXHVFMTc4XCIsNjJdLFxuW1wiZjI4MFwiLFwiXHVFMUI3XCIsMTI0XSxcbltcImYzNDBcIixcIlx1RTIzNFwiLDYyXSxcbltcImYzODBcIixcIlx1RTI3M1wiLDEyNF0sXG5bXCJmNDQwXCIsXCJcdUUyRjBcIiw2Ml0sXG5bXCJmNDgwXCIsXCJcdUUzMkZcIiwxMjRdLFxuW1wiZjU0MFwiLFwiXHVFM0FDXCIsNjJdLFxuW1wiZjU4MFwiLFwiXHVFM0VCXCIsMTI0XSxcbltcImY2NDBcIixcIlx1RTQ2OFwiLDYyXSxcbltcImY2ODBcIixcIlx1RTRBN1wiLDEyNF0sXG5bXCJmNzQwXCIsXCJcdUU1MjRcIiw2Ml0sXG5bXCJmNzgwXCIsXCJcdUU1NjNcIiwxMjRdLFxuW1wiZjg0MFwiLFwiXHVFNUUwXCIsNjJdLFxuW1wiZjg4MFwiLFwiXHVFNjFGXCIsMTI0XSxcbltcImY5NDBcIixcIlx1RTY5Q1wiXSxcbltcImZhNDBcIixcIlx1MjE3MFwiLDksXCJcdTIxNjBcIiw5LFwiXHVGRkUyXHVGRkU0XHVGRjA3XHVGRjAyXHUzMjMxXHUyMTE2XHUyMTIxXHUyMjM1XHU3RThBXHU4OTFDXHU5MzQ4XHU5Mjg4XHU4NERDXHU0RkM5XHU3MEJCXHU2NjMxXHU2OEM4XHU5MkY5XHU2NkZCXHU1RjQ1XHU0RTI4XHU0RUUxXHU0RUZDXHU0RjAwXHU0RjAzXHU0RjM5XHU0RjU2XHU0RjkyXHU0RjhBXHU0RjlBXHU0Rjk0XHU0RkNEXHU1MDQwXHU1MDIyXHU0RkZGXHU1MDFFXHU1MDQ2XHU1MDcwXHU1MDQyXHU1MDk0XHU1MEY0XHU1MEQ4XHU1MTRBXCJdLFxuW1wiZmE4MFwiLFwiXHU1MTY0XHU1MTlEXHU1MUJFXHU1MUVDXHU1MjE1XHU1MjlDXHU1MkE2XHU1MkMwXHU1MkRCXHU1MzAwXHU1MzA3XHU1MzI0XHU1MzcyXHU1MzkzXHU1M0IyXHU1M0REXHVGQTBFXHU1NDlDXHU1NDhBXHU1NEE5XHU1NEZGXHU1NTg2XHU1NzU5XHU1NzY1XHU1N0FDXHU1N0M4XHU1N0M3XHVGQTBGXHVGQTEwXHU1ODlFXHU1OEIyXHU1OTBCXHU1OTUzXHU1OTVCXHU1OTVEXHU1OTYzXHU1OUE0XHU1OUJBXHU1QjU2XHU1QkMwXHU3NTJGXHU1QkQ4XHU1QkVDXHU1QzFFXHU1Q0E2XHU1Q0JBXHU1Q0Y1XHU1RDI3XHU1RDUzXHVGQTExXHU1RDQyXHU1RDZEXHU1REI4XHU1REI5XHU1REQwXHU1RjIxXHU1RjM0XHU1RjY3XHU1RkI3XHU1RkRFXHU2MDVEXHU2MDg1XHU2MDhBXHU2MERFXHU2MEQ1XHU2MTIwXHU2MEYyXHU2MTExXHU2MTM3XHU2MTMwXHU2MTk4XHU2MjEzXHU2MkE2XHU2M0Y1XHU2NDYwXHU2NDlEXHU2NENFXHU2NTRFXHU2NjAwXHU2NjE1XHU2NjNCXHU2NjA5XHU2NjJFXHU2NjFFXHU2NjI0XHU2NjY1XHU2NjU3XHU2NjU5XHVGQTEyXHU2NjczXHU2Njk5XHU2NkEwXHU2NkIyXHU2NkJGXHU2NkZBXHU2NzBFXHVGOTI5XHU2NzY2XHU2N0JCXHU2ODUyXHU2N0MwXHU2ODAxXHU2ODQ0XHU2OENGXHVGQTEzXHU2OTY4XHVGQTE0XHU2OTk4XHU2OUUyXHU2QTMwXHU2QTZCXHU2QTQ2XHU2QTczXHU2QTdFXHU2QUUyXHU2QUU0XHU2QkQ2XHU2QzNGXHU2QzVDXHU2Qzg2XHU2QzZGXHU2Q0RBXHU2RDA0XHU2RDg3XHU2RDZGXCJdLFxuW1wiZmI0MFwiLFwiXHU2RDk2XHU2REFDXHU2RENGXHU2REY4XHU2REYyXHU2REZDXHU2RTM5XHU2RTVDXHU2RTI3XHU2RTNDXHU2RUJGXHU2Rjg4XHU2RkI1XHU2RkY1XHU3MDA1XHU3MDA3XHU3MDI4XHU3MDg1XHU3MEFCXHU3MTBGXHU3MTA0XHU3MTVDXHU3MTQ2XHU3MTQ3XHVGQTE1XHU3MUMxXHU3MUZFXHU3MkIxXHU3MkJFXHU3MzI0XHVGQTE2XHU3Mzc3XHU3M0JEXHU3M0M5XHU3M0Q2XHU3M0UzXHU3M0QyXHU3NDA3XHU3M0Y1XHU3NDI2XHU3NDJBXHU3NDI5XHU3NDJFXHU3NDYyXHU3NDg5XHU3NDlGXHU3NTAxXHU3NTZGXHU3NjgyXHU3NjlDXHU3NjlFXHU3NjlCXHU3NkE2XHVGQTE3XHU3NzQ2XHU1MkFGXHU3ODIxXHU3ODRFXHU3ODY0XHU3ODdBXHU3OTMwXHVGQTE4XHVGQTE5XCJdLFxuW1wiZmI4MFwiLFwiXHVGQTFBXHU3OTk0XHVGQTFCXHU3OTlCXHU3QUQxXHU3QUU3XHVGQTFDXHU3QUVCXHU3QjlFXHVGQTFEXHU3RDQ4XHU3RDVDXHU3REI3XHU3REEwXHU3REQ2XHU3RTUyXHU3RjQ3XHU3RkExXHVGQTFFXHU4MzAxXHU4MzYyXHU4MzdGXHU4M0M3XHU4M0Y2XHU4NDQ4XHU4NEI0XHU4NTUzXHU4NTU5XHU4NTZCXHVGQTFGXHU4NUIwXHVGQTIwXHVGQTIxXHU4ODA3XHU4OEY1XHU4QTEyXHU4QTM3XHU4QTc5XHU4QUE3XHU4QUJFXHU4QURGXHVGQTIyXHU4QUY2XHU4QjUzXHU4QjdGXHU4Q0YwXHU4Q0Y0XHU4RDEyXHU4RDc2XHVGQTIzXHU4RUNGXHVGQTI0XHVGQTI1XHU5MDY3XHU5MERFXHVGQTI2XHU5MTE1XHU5MTI3XHU5MURBXHU5MUQ3XHU5MURFXHU5MUVEXHU5MUVFXHU5MUU0XHU5MUU1XHU5MjA2XHU5MjEwXHU5MjBBXHU5MjNBXHU5MjQwXHU5MjNDXHU5MjRFXHU5MjU5XHU5MjUxXHU5MjM5XHU5MjY3XHU5MkE3XHU5Mjc3XHU5Mjc4XHU5MkU3XHU5MkQ3XHU5MkQ5XHU5MkQwXHVGQTI3XHU5MkQ1XHU5MkUwXHU5MkQzXHU5MzI1XHU5MzIxXHU5MkZCXHVGQTI4XHU5MzFFXHU5MkZGXHU5MzFEXHU5MzAyXHU5MzcwXHU5MzU3XHU5M0E0XHU5M0M2XHU5M0RFXHU5M0Y4XHU5NDMxXHU5NDQ1XHU5NDQ4XHU5NTkyXHVGOURDXHVGQTI5XHU5NjlEXHU5NkFGXHU5NzMzXHU5NzNCXHU5NzQzXHU5NzREXHU5NzRGXHU5NzUxXHU5NzU1XHU5ODU3XHU5ODY1XHVGQTJBXHVGQTJCXHU5OTI3XHVGQTJDXHU5OTlFXHU5QTRFXHU5QUQ5XCJdLFxuW1wiZmM0MFwiLFwiXHU5QURDXHU5Qjc1XHU5QjcyXHU5QjhGXHU5QkIxXHU5QkJCXHU5QzAwXHU5RDcwXHU5RDZCXHVGQTJEXHU5RTE5XHU5RUQxXCJdXG5dXG4iLCAiW1xuW1wiMFwiLFwiXFx1MDAwMFwiLDEyN10sXG5bXCI4ZWExXCIsXCJcdUZGNjFcIiw2Ml0sXG5bXCJhMWExXCIsXCJcdTMwMDBcdTMwMDFcdTMwMDJcdUZGMENcdUZGMEVcdTMwRkJcdUZGMUFcdUZGMUJcdUZGMUZcdUZGMDFcdTMwOUJcdTMwOUNcdTAwQjRcdUZGNDBcdTAwQThcdUZGM0VcdUZGRTNcdUZGM0ZcdTMwRkRcdTMwRkVcdTMwOURcdTMwOUVcdTMwMDNcdTRFRERcdTMwMDVcdTMwMDZcdTMwMDdcdTMwRkNcdTIwMTVcdTIwMTBcdUZGMEZcdUZGM0NcdUZGNUVcdTIyMjVcdUZGNUNcdTIwMjZcdTIwMjVcdTIwMThcdTIwMTlcdTIwMUNcdTIwMURcdUZGMDhcdUZGMDlcdTMwMTRcdTMwMTVcdUZGM0JcdUZGM0RcdUZGNUJcdUZGNURcdTMwMDhcIiw5LFwiXHVGRjBCXHVGRjBEXHUwMEIxXHUwMEQ3XHUwMEY3XHVGRjFEXHUyMjYwXHVGRjFDXHVGRjFFXHUyMjY2XHUyMjY3XHUyMjFFXHUyMjM0XHUyNjQyXHUyNjQwXHUwMEIwXHUyMDMyXHUyMDMzXHUyMTAzXHVGRkU1XHVGRjA0XHVGRkUwXHVGRkUxXHVGRjA1XHVGRjAzXHVGRjA2XHVGRjBBXHVGRjIwXHUwMEE3XHUyNjA2XHUyNjA1XHUyNUNCXHUyNUNGXHUyNUNFXHUyNUM3XCJdLFxuW1wiYTJhMVwiLFwiXHUyNUM2XHUyNUExXHUyNUEwXHUyNUIzXHUyNUIyXHUyNUJEXHUyNUJDXHUyMDNCXHUzMDEyXHUyMTkyXHUyMTkwXHUyMTkxXHUyMTkzXHUzMDEzXCJdLFxuW1wiYTJiYVwiLFwiXHUyMjA4XHUyMjBCXHUyMjg2XHUyMjg3XHUyMjgyXHUyMjgzXHUyMjJBXHUyMjI5XCJdLFxuW1wiYTJjYVwiLFwiXHUyMjI3XHUyMjI4XHVGRkUyXHUyMUQyXHUyMUQ0XHUyMjAwXHUyMjAzXCJdLFxuW1wiYTJkY1wiLFwiXHUyMjIwXHUyMkE1XHUyMzEyXHUyMjAyXHUyMjA3XHUyMjYxXHUyMjUyXHUyMjZBXHUyMjZCXHUyMjFBXHUyMjNEXHUyMjFEXHUyMjM1XHUyMjJCXHUyMjJDXCJdLFxuW1wiYTJmMlwiLFwiXHUyMTJCXHUyMDMwXHUyNjZGXHUyNjZEXHUyNjZBXHUyMDIwXHUyMDIxXHUwMEI2XCJdLFxuW1wiYTJmZVwiLFwiXHUyNUVGXCJdLFxuW1wiYTNiMFwiLFwiXHVGRjEwXCIsOV0sXG5bXCJhM2MxXCIsXCJcdUZGMjFcIiwyNV0sXG5bXCJhM2UxXCIsXCJcdUZGNDFcIiwyNV0sXG5bXCJhNGExXCIsXCJcdTMwNDFcIiw4Ml0sXG5bXCJhNWExXCIsXCJcdTMwQTFcIiw4NV0sXG5bXCJhNmExXCIsXCJcdTAzOTFcIiwxNixcIlx1MDNBM1wiLDZdLFxuW1wiYTZjMVwiLFwiXHUwM0IxXCIsMTYsXCJcdTAzQzNcIiw2XSxcbltcImE3YTFcIixcIlx1MDQxMFwiLDUsXCJcdTA0MDFcdTA0MTZcIiwyNV0sXG5bXCJhN2QxXCIsXCJcdTA0MzBcIiw1LFwiXHUwNDUxXHUwNDM2XCIsMjVdLFxuW1wiYThhMVwiLFwiXHUyNTAwXHUyNTAyXHUyNTBDXHUyNTEwXHUyNTE4XHUyNTE0XHUyNTFDXHUyNTJDXHUyNTI0XHUyNTM0XHUyNTNDXHUyNTAxXHUyNTAzXHUyNTBGXHUyNTEzXHUyNTFCXHUyNTE3XHUyNTIzXHUyNTMzXHUyNTJCXHUyNTNCXHUyNTRCXHUyNTIwXHUyNTJGXHUyNTI4XHUyNTM3XHUyNTNGXHUyNTFEXHUyNTMwXHUyNTI1XHUyNTM4XHUyNTQyXCJdLFxuW1wiYWRhMVwiLFwiXHUyNDYwXCIsMTksXCJcdTIxNjBcIiw5XSxcbltcImFkYzBcIixcIlx1MzM0OVx1MzMxNFx1MzMyMlx1MzM0RFx1MzMxOFx1MzMyN1x1MzMwM1x1MzMzNlx1MzM1MVx1MzM1N1x1MzMwRFx1MzMyNlx1MzMyM1x1MzMyQlx1MzM0QVx1MzMzQlx1MzM5Q1x1MzM5RFx1MzM5RVx1MzM4RVx1MzM4Rlx1MzNDNFx1MzNBMVwiXSxcbltcImFkZGZcIixcIlx1MzM3Qlx1MzAxRFx1MzAxRlx1MjExNlx1MzNDRFx1MjEyMVx1MzJBNFwiLDQsXCJcdTMyMzFcdTMyMzJcdTMyMzlcdTMzN0VcdTMzN0RcdTMzN0NcdTIyNTJcdTIyNjFcdTIyMkJcdTIyMkVcdTIyMTFcdTIyMUFcdTIyQTVcdTIyMjBcdTIyMUZcdTIyQkZcdTIyMzVcdTIyMjlcdTIyMkFcIl0sXG5bXCJiMGExXCIsXCJcdTRFOUNcdTU1MTZcdTVBMDNcdTk2M0ZcdTU0QzBcdTYxMUJcdTYzMjhcdTU5RjZcdTkwMjJcdTg0NzVcdTgzMUNcdTdBNTBcdTYwQUFcdTYzRTFcdTZFMjVcdTY1RURcdTg0NjZcdTgyQTZcdTlCRjVcdTY4OTNcdTU3MjdcdTY1QTFcdTYyNzFcdTVCOUJcdTU5RDBcdTg2N0JcdTk4RjRcdTdENjJcdTdEQkVcdTlCOEVcdTYyMTZcdTdDOUZcdTg4QjdcdTVCODlcdTVFQjVcdTYzMDlcdTY2OTdcdTY4NDhcdTk1QzdcdTk3OERcdTY3NEZcdTRFRTVcdTRGMEFcdTRGNERcdTRGOURcdTUwNDlcdTU2RjJcdTU5MzdcdTU5RDRcdTVBMDFcdTVDMDlcdTYwREZcdTYxMEZcdTYxNzBcdTY2MTNcdTY5MDVcdTcwQkFcdTc1NEZcdTc1NzBcdTc5RkJcdTdEQURcdTdERUZcdTgwQzNcdTg0MEVcdTg4NjNcdThCMDJcdTkwNTVcdTkwN0FcdTUzM0JcdTRFOTVcdTRFQTVcdTU3REZcdTgwQjJcdTkwQzFcdTc4RUZcdTRFMDBcdTU4RjFcdTZFQTJcdTkwMzhcdTdBMzJcdTgzMjhcdTgyOEJcdTlDMkZcdTUxNDFcdTUzNzBcdTU0QkRcdTU0RTFcdTU2RTBcdTU5RkJcdTVGMTVcdTk4RjJcdTZERUJcdTgwRTRcdTg1MkRcIl0sXG5bXCJiMWExXCIsXCJcdTk2NjJcdTk2NzBcdTk2QTBcdTk3RkJcdTU0MEJcdTUzRjNcdTVCODdcdTcwQ0ZcdTdGQkRcdThGQzJcdTk2RThcdTUzNkZcdTlENUNcdTdBQkFcdTRFMTFcdTc4OTNcdTgxRkNcdTZFMjZcdTU2MThcdTU1MDRcdTZCMURcdTg1MUFcdTlDM0JcdTU5RTVcdTUzQTlcdTZENjZcdTc0RENcdTk1OEZcdTU2NDJcdTRFOTFcdTkwNEJcdTk2RjJcdTgzNEZcdTk5MENcdTUzRTFcdTU1QjZcdTVCMzBcdTVGNzFcdTY2MjBcdTY2RjNcdTY4MDRcdTZDMzhcdTZDRjNcdTZEMjlcdTc0NUJcdTc2QzhcdTdBNEVcdTk4MzRcdTgyRjFcdTg4NUJcdThBNjBcdTkyRURcdTZEQjJcdTc1QUJcdTc2Q0FcdTk5QzVcdTYwQTZcdThCMDFcdThEOEFcdTk1QjJcdTY5OEVcdTUzQURcdTUxODZcdTU3MTJcdTU4MzBcdTU5NDRcdTVCQjRcdTVFRjZcdTYwMjhcdTYzQTlcdTYzRjRcdTZDQkZcdTZGMTRcdTcwOEVcdTcxMTRcdTcxNTlcdTcxRDVcdTczM0ZcdTdFMDFcdTgyNzZcdTgyRDFcdTg1OTdcdTkwNjBcdTkyNUJcdTlEMUJcdTU4NjlcdTY1QkNcdTZDNUFcdTc1MjVcdTUxRjlcdTU5MkVcdTU5NjVcdTVGODBcdTVGRENcIl0sXG5bXCJiMmExXCIsXCJcdTYyQkNcdTY1RkFcdTZBMkFcdTZCMjdcdTZCQjRcdTczOEJcdTdGQzFcdTg5NTZcdTlEMkNcdTlEMEVcdTlFQzRcdTVDQTFcdTZDOTZcdTgzN0JcdTUxMDRcdTVDNEJcdTYxQjZcdTgxQzZcdTY4NzZcdTcyNjFcdTRFNTlcdTRGRkFcdTUzNzhcdTYwNjlcdTZFMjlcdTdBNEZcdTk3RjNcdTRFMEJcdTUzMTZcdTRFRUVcdTRGNTVcdTRGM0RcdTRGQTFcdTRGNzNcdTUyQTBcdTUzRUZcdTU2MDlcdTU5MEZcdTVBQzFcdTVCQjZcdTVCRTFcdTc5RDFcdTY2ODdcdTY3OUNcdTY3QjZcdTZCNENcdTZDQjNcdTcwNkJcdTczQzJcdTc5OERcdTc5QkVcdTdBM0NcdTdCODdcdTgyQjFcdTgyREJcdTgzMDRcdTgzNzdcdTgzRUZcdTgzRDNcdTg3NjZcdThBQjJcdTU2MjlcdThDQThcdThGRTZcdTkwNEVcdTk3MUVcdTg2OEFcdTRGQzRcdTVDRThcdTYyMTFcdTcyNTlcdTc1M0JcdTgxRTVcdTgyQkRcdTg2RkVcdThDQzBcdTk2QzVcdTk5MTNcdTk5RDVcdTRFQ0JcdTRGMUFcdTg5RTNcdTU2REVcdTU4NEFcdTU4Q0FcdTVFRkJcdTVGRUJcdTYwMkFcdTYwOTRcdTYwNjJcdTYxRDBcdTYyMTJcdTYyRDBcdTY1MzlcIl0sXG5bXCJiM2ExXCIsXCJcdTlCNDFcdTY2NjZcdTY4QjBcdTZENzdcdTcwNzBcdTc1NENcdTc2ODZcdTdENzVcdTgyQTVcdTg3RjlcdTk1OEJcdTk2OEVcdThDOURcdTUxRjFcdTUyQkVcdTU5MTZcdTU0QjNcdTVCQjNcdTVEMTZcdTYxNjhcdTY5ODJcdTZEQUZcdTc4OERcdTg0Q0JcdTg4NTdcdThBNzJcdTkzQTdcdTlBQjhcdTZENkNcdTk5QThcdTg2RDlcdTU3QTNcdTY3RkZcdTg2Q0VcdTkyMEVcdTUyODNcdTU2ODdcdTU0MDRcdTVFRDNcdTYyRTFcdTY0QjlcdTY4M0NcdTY4MzhcdTZCQkJcdTczNzJcdTc4QkFcdTdBNkJcdTg5OUFcdTg5RDJcdThENkJcdThGMDNcdTkwRURcdTk1QTNcdTk2OTRcdTk3NjlcdTVCNjZcdTVDQjNcdTY5N0RcdTk4NERcdTk4NEVcdTYzOUJcdTdCMjBcdTZBMkJcdTZBN0ZcdTY4QjZcdTlDMERcdTZGNUZcdTUyNzJcdTU1OURcdTYwNzBcdTYyRUNcdTZEM0JcdTZFMDdcdTZFRDFcdTg0NUJcdTg5MTBcdThGNDRcdTRFMTRcdTlDMzlcdTUzRjZcdTY5MUJcdTZBM0FcdTk3ODRcdTY4MkFcdTUxNUNcdTdBQzNcdTg0QjJcdTkxRENcdTkzOENcdTU2NUJcdTlEMjhcdTY4MjJcdTgzMDVcdTg0MzFcIl0sXG5bXCJiNGExXCIsXCJcdTdDQTVcdTUyMDhcdTgyQzVcdTc0RTZcdTRFN0VcdTRGODNcdTUxQTBcdTVCRDJcdTUyMEFcdTUyRDhcdTUyRTdcdTVERkJcdTU1OUFcdTU4MkFcdTU5RTZcdTVCOENcdTVCOThcdTVCREJcdTVFNzJcdTVFNzlcdTYwQTNcdTYxMUZcdTYxNjNcdTYxQkVcdTYzREJcdTY1NjJcdTY3RDFcdTY4NTNcdTY4RkFcdTZCM0VcdTZCNTNcdTZDNTdcdTZGMjJcdTZGOTdcdTZGNDVcdTc0QjBcdTc1MThcdTc2RTNcdTc3MEJcdTdBRkZcdTdCQTFcdTdDMjFcdTdERTlcdTdGMzZcdTdGRjBcdTgwOURcdTgyNjZcdTgzOUVcdTg5QjNcdThBQ0NcdThDQUJcdTkwODRcdTk0NTFcdTk1OTNcdTk1OTFcdTk1QTJcdTk2NjVcdTk3RDNcdTk5MjhcdTgyMThcdTRFMzhcdTU0MkJcdTVDQjhcdTVEQ0NcdTczQTlcdTc2NENcdTc3M0NcdTVDQTlcdTdGRUJcdThEMEJcdTk2QzFcdTk4MTFcdTk4NTRcdTk4NThcdTRGMDFcdTRGMEVcdTUzNzFcdTU1OUNcdTU2NjhcdTU3RkFcdTU5NDdcdTVCMDlcdTVCQzRcdTVDOTBcdTVFMENcdTVFN0VcdTVGQ0NcdTYzRUVcdTY3M0FcdTY1RDdcdTY1RTJcdTY3MUZcdTY4Q0JcdTY4QzRcIl0sXG5bXCJiNWExXCIsXCJcdTZBNUZcdTVFMzBcdTZCQzVcdTZDMTdcdTZDN0RcdTc1N0ZcdTc5NDhcdTVCNjNcdTdBMDBcdTdEMDBcdTVGQkRcdTg5OEZcdThBMThcdThDQjRcdThENzdcdThFQ0NcdThGMURcdTk4RTJcdTlBMEVcdTlCM0NcdTRFODBcdTUwN0RcdTUxMDBcdTU5OTNcdTVCOUNcdTYyMkZcdTYyODBcdTY0RUNcdTZCM0FcdTcyQTBcdTc1OTFcdTc5NDdcdTdGQTlcdTg3RkJcdThBQkNcdThCNzBcdTYzQUNcdTgzQ0FcdTk3QTBcdTU0MDlcdTU0MDNcdTU1QUJcdTY4NTRcdTZBNThcdThBNzBcdTc4MjdcdTY3NzVcdTlFQ0RcdTUzNzRcdTVCQTJcdTgxMUFcdTg2NTBcdTkwMDZcdTRFMThcdTRFNDVcdTRFQzdcdTRGMTFcdTUzQ0FcdTU0MzhcdTVCQUVcdTVGMTNcdTYwMjVcdTY1NTFcdTY3M0RcdTZDNDJcdTZDNzJcdTZDRTNcdTcwNzhcdTc0MDNcdTdBNzZcdTdBQUVcdTdCMDhcdTdEMUFcdTdDRkVcdTdENjZcdTY1RTdcdTcyNUJcdTUzQkJcdTVDNDVcdTVERThcdTYyRDJcdTYyRTBcdTYzMTlcdTZFMjBcdTg2NUFcdThBMzFcdThERERcdTkyRjhcdTZGMDFcdTc5QTZcdTlCNUFcdTRFQThcdTRFQUJcdTRFQUNcIl0sXG5bXCJiNmExXCIsXCJcdTRGOUJcdTRGQTBcdTUwRDFcdTUxNDdcdTdBRjZcdTUxNzFcdTUxRjZcdTUzNTRcdTUzMjFcdTUzN0ZcdTUzRUJcdTU1QUNcdTU4ODNcdTVDRTFcdTVGMzdcdTVGNEFcdTYwMkZcdTYwNTBcdTYwNkRcdTYzMUZcdTY1NTlcdTZBNEJcdTZDQzFcdTcyQzJcdTcyRURcdTc3RUZcdTgwRjhcdTgxMDVcdTgyMDhcdTg1NEVcdTkwRjdcdTkzRTFcdTk3RkZcdTk5NTdcdTlBNUFcdTRFRjBcdTUxRERcdTVDMkRcdTY2ODFcdTY5NkRcdTVDNDBcdTY2RjJcdTY5NzVcdTczODlcdTY4NTBcdTdDODFcdTUwQzVcdTUyRTRcdTU3NDdcdTVERkVcdTkzMjZcdTY1QTRcdTZCMjNcdTZCM0RcdTc0MzRcdTc5ODFcdTc5QkRcdTdCNEJcdTdEQ0FcdTgyQjlcdTgzQ0NcdTg4N0ZcdTg5NUZcdThCMzlcdThGRDFcdTkxRDFcdTU0MUZcdTkyODBcdTRFNURcdTUwMzZcdTUzRTVcdTUzM0FcdTcyRDdcdTczOTZcdTc3RTlcdTgyRTZcdThFQUZcdTk5QzZcdTk5QzhcdTk5RDJcdTUxNzdcdTYxMUFcdTg2NUVcdTU1QjBcdTdBN0FcdTUwNzZcdTVCRDNcdTkwNDdcdTk2ODVcdTRFMzJcdTZBREJcdTkxRTdcdTVDNTFcdTVDNDhcIl0sXG5bXCJiN2ExXCIsXCJcdTYzOThcdTdBOUZcdTZDOTNcdTk3NzRcdThGNjFcdTdBQUFcdTcxOEFcdTk2ODhcdTdDODJcdTY4MTdcdTdFNzBcdTY4NTFcdTkzNkNcdTUyRjJcdTU0MUJcdTg1QUJcdThBMTNcdTdGQTRcdThFQ0RcdTkwRTFcdTUzNjZcdTg4ODhcdTc5NDFcdTRGQzJcdTUwQkVcdTUyMTFcdTUxNDRcdTU1NTNcdTU3MkRcdTczRUFcdTU3OEJcdTU5NTFcdTVGNjJcdTVGODRcdTYwNzVcdTYxNzZcdTYxNjdcdTYxQTlcdTYzQjJcdTY0M0FcdTY1NkNcdTY2NkZcdTY4NDJcdTZFMTNcdTc1NjZcdTdBM0RcdTdDRkJcdTdENENcdTdEOTlcdTdFNEJcdTdGNkJcdTgzMEVcdTgzNEFcdTg2Q0RcdThBMDhcdThBNjNcdThCNjZcdThFRkRcdTk4MUFcdTlEOEZcdTgyQjhcdThGQ0VcdTlCRThcdTUyODdcdTYyMUZcdTY0ODNcdTZGQzBcdTk2OTlcdTY4NDFcdTUwOTFcdTZCMjBcdTZDN0FcdTZGNTRcdTdBNzRcdTdENTBcdTg4NDBcdThBMjNcdTY3MDhcdTRFRjZcdTUwMzlcdTUwMjZcdTUwNjVcdTUxN0NcdTUyMzhcdTUyNjNcdTU1QTdcdTU3MEZcdTU4MDVcdTVBQ0NcdTVFRkFcdTYxQjJcdTYxRjhcdTYyRjNcdTYzNzJcIl0sXG5bXCJiOGExXCIsXCJcdTY5MUNcdTZBMjlcdTcyN0RcdTcyQUNcdTczMkVcdTc4MTRcdTc4NkZcdTdENzlcdTc3MENcdTgwQTlcdTg5OEJcdThCMTlcdThDRTJcdThFRDJcdTkwNjNcdTkzNzVcdTk2N0FcdTk4NTVcdTlBMTNcdTlFNzhcdTUxNDNcdTUzOUZcdTUzQjNcdTVFN0JcdTVGMjZcdTZFMUJcdTZFOTBcdTczODRcdTczRkVcdTdENDNcdTgyMzdcdThBMDBcdThBRkFcdTk2NTBcdTRFNEVcdTUwMEJcdTUzRTRcdTU0N0NcdTU2RkFcdTU5RDFcdTVCNjRcdTVERjFcdTVFQUJcdTVGMjdcdTYyMzhcdTY1NDVcdTY3QUZcdTZFNTZcdTcyRDBcdTdDQ0FcdTg4QjRcdTgwQTFcdTgwRTFcdTgzRjBcdTg2NEVcdThBODdcdThERThcdTkyMzdcdTk2QzdcdTk4NjdcdTlGMTNcdTRFOTRcdTRFOTJcdTRGMERcdTUzNDhcdTU0NDlcdTU0M0VcdTVBMkZcdTVGOENcdTVGQTFcdTYwOUZcdTY4QTdcdTZBOEVcdTc0NUFcdTc4ODFcdThBOUVcdThBQTRcdThCNzdcdTkxOTBcdTRFNUVcdTlCQzlcdTRFQTRcdTRGN0NcdTRGQUZcdTUwMTlcdTUwMTZcdTUxNDlcdTUxNkNcdTUyOUZcdTUyQjlcdTUyRkVcdTUzOUFcdTUzRTNcdTU0MTFcIl0sXG5bXCJiOWExXCIsXCJcdTU0MEVcdTU1ODlcdTU3NTFcdTU3QTJcdTU5N0RcdTVCNTRcdTVCNURcdTVCOEZcdTVERTVcdTVERTdcdTVERjdcdTVFNzhcdTVFODNcdTVFOUFcdTVFQjdcdTVGMThcdTYwNTJcdTYxNENcdTYyOTdcdTYyRDhcdTYzQTdcdTY1M0JcdTY2MDJcdTY2NDNcdTY2RjRcdTY3NkRcdTY4MjFcdTY4OTdcdTY5Q0JcdTZDNUZcdTZEMkFcdTZENjlcdTZFMkZcdTZFOURcdTc1MzJcdTc2ODdcdTc4NkNcdTdBM0ZcdTdDRTBcdTdEMDVcdTdEMThcdTdENUVcdTdEQjFcdTgwMTVcdTgwMDNcdTgwQUZcdTgwQjFcdTgxNTRcdTgxOEZcdTgyMkFcdTgzNTJcdTg4NENcdTg4NjFcdThCMUJcdThDQTJcdThDRkNcdTkwQ0FcdTkxNzVcdTkyNzFcdTc4M0ZcdTkyRkNcdTk1QTRcdTk2NERcdTk4MDVcdTk5OTlcdTlBRDhcdTlEM0JcdTUyNUJcdTUyQUJcdTUzRjdcdTU0MDhcdTU4RDVcdTYyRjdcdTZGRTBcdThDNkFcdThGNUZcdTlFQjlcdTUxNEJcdTUyM0JcdTU0NEFcdTU2RkRcdTdBNDBcdTkxNzdcdTlENjBcdTlFRDJcdTczNDRcdTZGMDlcdTgxNzBcdTc1MTFcdTVGRkRcdTYwREFcdTlBQThcdTcyREJcdThGQkNcIl0sXG5bXCJiYWExXCIsXCJcdTZCNjRcdTk4MDNcdTRFQ0FcdTU2RjBcdTU3NjRcdTU4QkVcdTVBNUFcdTYwNjhcdTYxQzdcdTY2MEZcdTY2MDZcdTY4MzlcdTY4QjFcdTZERjdcdTc1RDVcdTdEM0FcdTgyNkVcdTlCNDJcdTRFOUJcdTRGNTBcdTUzQzlcdTU1MDZcdTVENkZcdTVERTZcdTVERUVcdTY3RkJcdTZDOTlcdTc0NzNcdTc4MDJcdThBNTBcdTkzOTZcdTg4REZcdTU3NTBcdTVFQTdcdTYzMkJcdTUwQjVcdTUwQUNcdTUxOERcdTY3MDBcdTU0QzlcdTU4NUVcdTU5QkJcdTVCQjBcdTVGNjlcdTYyNERcdTYzQTFcdTY4M0RcdTZCNzNcdTZFMDhcdTcwN0RcdTkxQzdcdTcyODBcdTc4MTVcdTc4MjZcdTc5NkRcdTY1OEVcdTdEMzBcdTgzRENcdTg4QzFcdThGMDlcdTk2OUJcdTUyNjRcdTU3MjhcdTY3NTBcdTdGNkFcdThDQTFcdTUxQjRcdTU3NDJcdTk2MkFcdTU4M0FcdTY5OEFcdTgwQjRcdTU0QjJcdTVEMEVcdTU3RkNcdTc4OTVcdTlERkFcdTRGNUNcdTUyNEFcdTU0OEJcdTY0M0VcdTY2MjhcdTY3MTRcdTY3RjVcdTdBODRcdTdCNTZcdTdEMjJcdTkzMkZcdTY4NUNcdTlCQURcdTdCMzlcdTUzMTlcdTUxOEFcdTUyMzdcIl0sXG5bXCJiYmExXCIsXCJcdTVCREZcdTYyRjZcdTY0QUVcdTY0RTZcdTY3MkRcdTZCQkFcdTg1QTlcdTk2RDFcdTc2OTBcdTlCRDZcdTYzNENcdTkzMDZcdTlCQUJcdTc2QkZcdTY2NTJcdTRFMDlcdTUwOThcdTUzQzJcdTVDNzFcdTYwRThcdTY0OTJcdTY1NjNcdTY4NUZcdTcxRTZcdTczQ0FcdTc1MjNcdTdCOTdcdTdFODJcdTg2OTVcdThCODNcdThDREJcdTkxNzhcdTk5MTBcdTY1QUNcdTY2QUJcdTZCOEJcdTRFRDVcdTRFRDRcdTRGM0FcdTRGN0ZcdTUyM0FcdTUzRjhcdTUzRjJcdTU1RTNcdTU2REJcdTU4RUJcdTU5Q0JcdTU5QzlcdTU5RkZcdTVCNTBcdTVDNERcdTVFMDJcdTVFMkJcdTVGRDdcdTYwMURcdTYzMDdcdTY1MkZcdTVCNUNcdTY1QUZcdTY1QkRcdTY1RThcdTY3OURcdTZCNjJcdTZCN0JcdTZDMEZcdTczNDVcdTc5NDlcdTc5QzFcdTdDRjhcdTdEMTlcdTdEMkJcdTgwQTJcdTgxMDJcdTgxRjNcdTg5OTZcdThBNUVcdThBNjlcdThBNjZcdThBOENcdThBRUVcdThDQzdcdThDRENcdTk2Q0NcdTk4RkNcdTZCNkZcdTRFOEJcdTRGM0NcdTRGOERcdTUxNTBcdTVCNTdcdTVCRkFcdTYxNDhcdTYzMDFcdTY2NDJcIl0sXG5bXCJiY2ExXCIsXCJcdTZCMjFcdTZFQ0JcdTZDQkJcdTcyM0VcdTc0QkRcdTc1RDRcdTc4QzFcdTc5M0FcdTgwMENcdTgwMzNcdTgxRUFcdTg0OTRcdThGOUVcdTZDNTBcdTlFN0ZcdTVGMEZcdThCNThcdTlEMkJcdTdBRkFcdThFRjhcdTVCOERcdTk2RUJcdTRFMDNcdTUzRjFcdTU3RjdcdTU5MzFcdTVBQzlcdTVCQTRcdTYwODlcdTZFN0ZcdTZGMDZcdTc1QkVcdThDRUFcdTVCOUZcdTg1MDBcdTdCRTBcdTUwNzJcdTY3RjRcdTgyOURcdTVDNjFcdTg1NEFcdTdFMUVcdTgyMEVcdTUxOTlcdTVDMDRcdTYzNjhcdThENjZcdTY1OUNcdTcxNkVcdTc5M0VcdTdEMTdcdTgwMDVcdThCMURcdThFQ0FcdTkwNkVcdTg2QzdcdTkwQUFcdTUwMUZcdTUyRkFcdTVDM0FcdTY3NTNcdTcwN0NcdTcyMzVcdTkxNENcdTkxQzhcdTkzMkJcdTgyRTVcdTVCQzJcdTVGMzFcdTYwRjlcdTRFM0JcdTUzRDZcdTVCODhcdTYyNEJcdTY3MzFcdTZCOEFcdTcyRTlcdTczRTBcdTdBMkVcdTgxNkJcdThEQTNcdTkxNTJcdTk5OTZcdTUxMTJcdTUzRDdcdTU0NkFcdTVCRkZcdTYzODhcdTZBMzlcdTdEQUNcdTk3MDBcdTU2REFcdTUzQ0VcdTU0NjhcIl0sXG5bXCJiZGExXCIsXCJcdTVCOTdcdTVDMzFcdTVEREVcdTRGRUVcdTYxMDFcdTYyRkVcdTZEMzJcdTc5QzBcdTc5Q0JcdTdENDJcdTdFNERcdTdGRDJcdTgxRURcdTgyMUZcdTg0OTBcdTg4NDZcdTg5NzJcdThCOTBcdThFNzRcdThGMkZcdTkwMzFcdTkxNEJcdTkxNkNcdTk2QzZcdTkxOUNcdTRFQzBcdTRGNEZcdTUxNDVcdTUzNDFcdTVGOTNcdTYyMEVcdTY3RDRcdTZDNDFcdTZFMEJcdTczNjNcdTdFMjZcdTkxQ0RcdTkyODNcdTUzRDRcdTU5MTlcdTVCQkZcdTZERDFcdTc5NURcdTdFMkVcdTdDOUJcdTU4N0VcdTcxOUZcdTUxRkFcdTg4NTNcdThGRjBcdTRGQ0FcdTVDRkJcdTY2MjVcdTc3QUNcdTdBRTNcdTgyMUNcdTk5RkZcdTUxQzZcdTVGQUFcdTY1RUNcdTY5NkZcdTZCODlcdTZERjNcdTZFOTZcdTZGNjRcdTc2RkVcdTdEMTRcdTVERTFcdTkwNzVcdTkxODdcdTk4MDZcdTUxRTZcdTUyMURcdTYyNDBcdTY2OTFcdTY2RDlcdTZFMUFcdTVFQjZcdTdERDJcdTdGNzJcdTY2RjhcdTg1QUZcdTg1RjdcdThBRjhcdTUyQTlcdTUzRDlcdTU5NzNcdTVFOEZcdTVGOTBcdTYwNTVcdTkyRTRcdTk2NjRcdTUwQjdcdTUxMUZcIl0sXG5bXCJiZWExXCIsXCJcdTUyRERcdTUzMjBcdTUzNDdcdTUzRUNcdTU0RThcdTU1NDZcdTU1MzFcdTU2MTdcdTU5NjhcdTU5QkVcdTVBM0NcdTVCQjVcdTVDMDZcdTVDMEZcdTVDMTFcdTVDMUFcdTVFODRcdTVFOEFcdTVFRTBcdTVGNzBcdTYyN0ZcdTYyODRcdTYyREJcdTYzOENcdTYzNzdcdTY2MDdcdTY2MENcdTY2MkRcdTY2NzZcdTY3N0VcdTY4QTJcdTZBMUZcdTZBMzVcdTZDQkNcdTZEODhcdTZFMDlcdTZFNThcdTcxM0NcdTcxMjZcdTcxNjdcdTc1QzdcdTc3MDFcdTc4NURcdTc5MDFcdTc5NjVcdTc5RjBcdTdBRTBcdTdCMTFcdTdDQTdcdTdEMzlcdTgwOTZcdTgzRDZcdTg0OEJcdTg1NDlcdTg4NURcdTg4RjNcdThBMUZcdThBM0NcdThBNTRcdThBNzNcdThDNjFcdThDREVcdTkxQTRcdTkyNjZcdTkzN0VcdTk0MThcdTk2OUNcdTk3OThcdTRFMEFcdTRFMDhcdTRFMUVcdTRFNTdcdTUxOTdcdTUyNzBcdTU3Q0VcdTU4MzRcdTU4Q0NcdTVCMjJcdTVFMzhcdTYwQzVcdTY0RkVcdTY3NjFcdTY3NTZcdTZENDRcdTcyQjZcdTc1NzNcdTdBNjNcdTg0QjhcdThCNzJcdTkxQjhcdTkzMjBcdTU2MzFcdTU3RjRcdTk4RkVcIl0sXG5bXCJiZmExXCIsXCJcdTYyRURcdTY5MERcdTZCOTZcdTcxRURcdTdFNTRcdTgwNzdcdTgyNzJcdTg5RTZcdTk4REZcdTg3NTVcdThGQjFcdTVDM0JcdTRGMzhcdTRGRTFcdTRGQjVcdTU1MDdcdTVBMjBcdTVCRERcdTVCRTlcdTVGQzNcdTYxNEVcdTYzMkZcdTY1QjBcdTY2NEJcdTY4RUVcdTY5OUJcdTZENzhcdTZERjFcdTc1MzNcdTc1QjlcdTc3MUZcdTc5NUVcdTc5RTZcdTdEMzNcdTgxRTNcdTgyQUZcdTg1QUFcdTg5QUFcdThBM0FcdThFQUJcdThGOUJcdTkwMzJcdTkxRERcdTk3MDdcdTRFQkFcdTRFQzFcdTUyMDNcdTU4NzVcdTU4RUNcdTVDMEJcdTc1MUFcdTVDM0RcdTgxNEVcdThBMEFcdThGQzVcdTk2NjNcdTk3NkRcdTdCMjVcdThBQ0ZcdTk4MDhcdTkxNjJcdTU2RjNcdTUzQThcdTkwMTdcdTU0MzlcdTU3ODJcdTVFMjVcdTYzQThcdTZDMzRcdTcwOEFcdTc3NjFcdTdDOEJcdTdGRTBcdTg4NzBcdTkwNDJcdTkxNTRcdTkzMTBcdTkzMThcdTk2OEZcdTc0NUVcdTlBQzRcdTVEMDdcdTVENjlcdTY1NzBcdTY3QTJcdThEQThcdTk2REJcdTYzNkVcdTY3NDlcdTY5MTlcdTgzQzVcdTk4MTdcdTk2QzBcdTg4RkVcIl0sXG5bXCJjMGExXCIsXCJcdTZGODRcdTY0N0FcdTVCRjhcdTRFMTZcdTcwMkNcdTc1NURcdTY2MkZcdTUxQzRcdTUyMzZcdTUyRTJcdTU5RDNcdTVGODFcdTYwMjdcdTYyMTBcdTY1M0ZcdTY1NzRcdTY2MUZcdTY2NzRcdTY4RjJcdTY4MTZcdTZCNjNcdTZFMDVcdTcyNzJcdTc1MUZcdTc2REJcdTdDQkVcdTgwNTZcdTU4RjBcdTg4RkRcdTg5N0ZcdThBQTBcdThBOTNcdThBQ0JcdTkwMURcdTkxOTJcdTk3NTJcdTk3NTlcdTY1ODlcdTdBMEVcdTgxMDZcdTk2QkJcdTVFMkRcdTYwRENcdTYyMUFcdTY1QTVcdTY2MTRcdTY3OTBcdTc3RjNcdTdBNERcdTdDNERcdTdFM0VcdTgxMEFcdThDQUNcdThENjRcdThERTFcdThFNUZcdTc4QTlcdTUyMDdcdTYyRDlcdTYzQTVcdTY0NDJcdTYyOThcdThBMkRcdTdBODNcdTdCQzBcdThBQUNcdTk2RUFcdTdENzZcdTgyMENcdTg3NDlcdTRFRDlcdTUxNDhcdTUzNDNcdTUzNjBcdTVCQTNcdTVDMDJcdTVDMTZcdTVERERcdTYyMjZcdTYyNDdcdTY0QjBcdTY4MTNcdTY4MzRcdTZDQzlcdTZENDVcdTZEMTdcdTY3RDNcdTZGNUNcdTcxNEVcdTcxN0RcdTY1Q0JcdTdBN0ZcdTdCQURcdTdEREFcIl0sXG5bXCJjMWExXCIsXCJcdTdFNEFcdTdGQThcdTgxN0FcdTgyMUJcdTgyMzlcdTg1QTZcdThBNkVcdThDQ0VcdThERjVcdTkwNzhcdTkwNzdcdTkyQURcdTkyOTFcdTk1ODNcdTlCQUVcdTUyNERcdTU1ODRcdTZGMzhcdTcxMzZcdTUxNjhcdTc5ODVcdTdFNTVcdTgxQjNcdTdDQ0VcdTU2NENcdTU4NTFcdTVDQThcdTYzQUFcdTY2RkVcdTY2RkRcdTY5NUFcdTcyRDlcdTc1OEZcdTc1OEVcdTc5MEVcdTc5NTZcdTc5REZcdTdDOTdcdTdEMjBcdTdENDRcdTg2MDdcdThBMzRcdTk2M0JcdTkwNjFcdTlGMjBcdTUwRTdcdTUyNzVcdTUzQ0NcdTUzRTJcdTUwMDlcdTU1QUFcdTU4RUVcdTU5NEZcdTcyM0RcdTVCOEJcdTVDNjRcdTUzMURcdTYwRTNcdTYwRjNcdTYzNUNcdTYzODNcdTYzM0ZcdTYzQkJcdTY0Q0RcdTY1RTlcdTY2RjlcdTVERTNcdTY5Q0RcdTY5RkRcdTZGMTVcdTcxRTVcdTRFODlcdTc1RTlcdTc2RjhcdTdBOTNcdTdDREZcdTdEQ0ZcdTdEOUNcdTgwNjFcdTgzNDlcdTgzNThcdTg0NkNcdTg0QkNcdTg1RkJcdTg4QzVcdThENzBcdTkwMDFcdTkwNkRcdTkzOTdcdTk3MUNcdTlBMTJcdTUwQ0ZcdTU4OTdcdTYxOEVcIl0sXG5bXCJjMmExXCIsXCJcdTgxRDNcdTg1MzVcdThEMDhcdTkwMjBcdTRGQzNcdTUwNzRcdTUyNDdcdTUzNzNcdTYwNkZcdTYzNDlcdTY3NUZcdTZFMkNcdThEQjNcdTkwMUZcdTRGRDdcdTVDNUVcdThDQ0FcdTY1Q0ZcdTdEOUFcdTUzNTJcdTg4OTZcdTUxNzZcdTYzQzNcdTVCNThcdTVCNkJcdTVDMEFcdTY0MERcdTY3NTFcdTkwNUNcdTRFRDZcdTU5MUFcdTU5MkFcdTZDNzBcdThBNTFcdTU1M0VcdTU4MTVcdTU5QTVcdTYwRjBcdTYyNTNcdTY3QzFcdTgyMzVcdTY5NTVcdTk2NDBcdTk5QzRcdTlBMjhcdTRGNTNcdTU4MDZcdTVCRkVcdTgwMTBcdTVDQjFcdTVFMkZcdTVGODVcdTYwMjBcdTYxNEJcdTYyMzRcdTY2RkZcdTZDRjBcdTZFREVcdTgwQ0VcdTgxN0ZcdTgyRDRcdTg4OEJcdThDQjhcdTkwMDBcdTkwMkVcdTk2OEFcdTlFREJcdTlCREJcdTRFRTNcdTUzRjBcdTU5MjdcdTdCMkNcdTkxOERcdTk4NENcdTlERjlcdTZFRERcdTcwMjdcdTUzNTNcdTU1NDRcdTVCODVcdTYyNThcdTYyOUVcdTYyRDNcdTZDQTJcdTZGRUZcdTc0MjJcdThBMTdcdTk0MzhcdTZGQzFcdThBRkVcdTgzMzhcdTUxRTdcdTg2RjhcdTUzRUFcIl0sXG5bXCJjM2ExXCIsXCJcdTUzRTlcdTRGNDZcdTkwNTRcdThGQjBcdTU5NkFcdTgxMzFcdTVERkRcdTdBRUFcdThGQkZcdTY4REFcdThDMzdcdTcyRjhcdTlDNDhcdTZBM0RcdThBQjBcdTRFMzlcdTUzNThcdTU2MDZcdTU3NjZcdTYyQzVcdTYzQTJcdTY1RTZcdTZCNEVcdTZERTFcdTZFNUJcdTcwQURcdTc3RURcdTdBRUZcdTdCQUFcdTdEQkJcdTgwM0RcdTgwQzZcdTg2Q0JcdThBOTVcdTkzNUJcdTU2RTNcdTU4QzdcdTVGM0VcdTY1QURcdTY2OTZcdTZBODBcdTZCQjVcdTc1MzdcdThBQzdcdTUwMjRcdTc3RTVcdTU3MzBcdTVGMUJcdTYwNjVcdTY2N0FcdTZDNjBcdTc1RjRcdTdBMUFcdTdGNkVcdTgxRjRcdTg3MThcdTkwNDVcdTk5QjNcdTdCQzlcdTc1NUNcdTdBRjlcdTdCNTFcdTg0QzRcdTkwMTBcdTc5RTlcdTdBOTJcdTgzMzZcdTVBRTFcdTc3NDBcdTRFMkRcdTRFRjJcdTVCOTlcdTVGRTBcdTYyQkRcdTY2M0NcdTY3RjFcdTZDRThcdTg2NkJcdTg4NzdcdThBM0JcdTkxNEVcdTkyRjNcdTk5RDBcdTZBMTdcdTcwMjZcdTczMkFcdTgyRTdcdTg0NTdcdThDQUZcdTRFMDFcdTUxNDZcdTUxQ0JcdTU1OEJcdTVCRjVcIl0sXG5bXCJjNGExXCIsXCJcdTVFMTZcdTVFMzNcdTVFODFcdTVGMTRcdTVGMzVcdTVGNkJcdTVGQjRcdTYxRjJcdTYzMTFcdTY2QTJcdTY3MURcdTZGNkVcdTcyNTJcdTc1M0FcdTc3M0FcdTgwNzRcdTgxMzlcdTgxNzhcdTg3NzZcdThBQkZcdThBRENcdThEODVcdThERjNcdTkyOUFcdTk1NzdcdTk4MDJcdTlDRTVcdTUyQzVcdTYzNTdcdTc2RjRcdTY3MTVcdTZDODhcdTczQ0RcdThDQzNcdTkzQUVcdTk2NzNcdTZEMjVcdTU4OUNcdTY5MEVcdTY5Q0NcdThGRkRcdTkzOUFcdTc1REJcdTkwMUFcdTU4NUFcdTY4MDJcdTYzQjRcdTY5RkJcdTRGNDNcdTZGMkNcdTY3RDhcdThGQkJcdTg1MjZcdTdEQjRcdTkzNTRcdTY5M0ZcdTZGNzBcdTU3NkFcdTU4RjdcdTVCMkNcdTdEMkNcdTcyMkFcdTU0MEFcdTkxRTNcdTlEQjRcdTRFQURcdTRGNEVcdTUwNUNcdTUwNzVcdTUyNDNcdThDOUVcdTU0NDhcdTU4MjRcdTVCOUFcdTVFMURcdTVFOTVcdTVFQURcdTVFRjdcdTVGMUZcdTYwOENcdTYyQjVcdTYzM0FcdTYzRDBcdTY4QUZcdTZDNDBcdTc4ODdcdTc5OEVcdTdBMEJcdTdERTBcdTgyNDdcdThBMDJcdThBRTZcdThFNDRcdTkwMTNcIl0sXG5bXCJjNWExXCIsXCJcdTkwQjhcdTkxMkRcdTkxRDhcdTlGMEVcdTZDRTVcdTY0NThcdTY0RTJcdTY1NzVcdTZFRjRcdTc2ODRcdTdCMUJcdTkwNjlcdTkzRDFcdTZFQkFcdTU0RjJcdTVGQjlcdTY0QTRcdThGNERcdThGRURcdTkyNDRcdTUxNzhcdTU4NkJcdTU5MjlcdTVDNTVcdTVFOTdcdTZERkJcdTdFOEZcdTc1MUNcdThDQkNcdThFRTJcdTk4NUJcdTcwQjlcdTRGMURcdTZCQkZcdTZGQjFcdTc1MzBcdTk2RkJcdTUxNEVcdTU0MTBcdTU4MzVcdTU4NTdcdTU5QUNcdTVDNjBcdTVGOTJcdTY1OTdcdTY3NUNcdTZFMjFcdTc2N0JcdTgzREZcdThDRURcdTkwMTRcdTkwRkRcdTkzNERcdTc4MjVcdTc4M0FcdTUyQUFcdTVFQTZcdTU3MUZcdTU5NzRcdTYwMTJcdTUwMTJcdTUxNUFcdTUxQUNcdTUxQ0RcdTUyMDBcdTU1MTBcdTU4NTRcdTU4NThcdTU5NTdcdTVCOTVcdTVDRjZcdTVEOEJcdTYwQkNcdTYyOTVcdTY0MkRcdTY3NzFcdTY4NDNcdTY4QkNcdTY4REZcdTc2RDdcdTZERDhcdTZFNkZcdTZEOUJcdTcwNkZcdTcxQzhcdTVGNTNcdTc1RDhcdTc5NzdcdTdCNDlcdTdCNTRcdTdCNTJcdTdDRDZcdTdENzFcdTUyMzBcIl0sXG5bXCJjNmExXCIsXCJcdTg0NjNcdTg1NjlcdTg1RTRcdThBMEVcdThCMDRcdThDNDZcdThFMEZcdTkwMDNcdTkwMEZcdTk0MTlcdTk2NzZcdTk4MkRcdTlBMzBcdTk1RDhcdTUwQ0RcdTUyRDVcdTU0MENcdTU4MDJcdTVDMEVcdTYxQTdcdTY0OUVcdTZEMUVcdTc3QjNcdTdBRTVcdTgwRjRcdTg0MDRcdTkwNTNcdTkyODVcdTVDRTBcdTlEMDdcdTUzM0ZcdTVGOTdcdTVGQjNcdTZEOUNcdTcyNzlcdTc3NjNcdTc5QkZcdTdCRTRcdTZCRDJcdTcyRUNcdThBQURcdTY4MDNcdTZBNjFcdTUxRjhcdTdBODFcdTY5MzRcdTVDNEFcdTlDRjZcdTgyRUJcdTVCQzVcdTkxNDlcdTcwMUVcdTU2NzhcdTVDNkZcdTYwQzdcdTY1NjZcdTZDOENcdThDNUFcdTkwNDFcdTk4MTNcdTU0NTFcdTY2QzdcdTkyMERcdTU5NDhcdTkwQTNcdTUxODVcdTRFNERcdTUxRUFcdTg1OTlcdThCMEVcdTcwNThcdTYzN0FcdTkzNEJcdTY5NjJcdTk5QjRcdTdFMDRcdTc1NzdcdTUzNTdcdTY5NjBcdThFREZcdTk2RTNcdTZDNURcdTRFOENcdTVDM0NcdTVGMTBcdThGRTlcdTUzMDJcdThDRDFcdTgwODlcdTg2NzlcdTVFRkZcdTY1RTVcdTRFNzNcdTUxNjVcIl0sXG5bXCJjN2ExXCIsXCJcdTU5ODJcdTVDM0ZcdTk3RUVcdTRFRkJcdTU5OEFcdTVGQ0RcdThBOERcdTZGRTFcdTc5QjBcdTc5NjJcdTVCRTdcdTg0NzFcdTczMkJcdTcxQjFcdTVFNzRcdTVGRjVcdTYzN0JcdTY0OUFcdTcxQzNcdTdDOThcdTRFNDNcdTVFRkNcdTRFNEJcdTU3RENcdTU2QTJcdTYwQTlcdTZGQzNcdTdEMERcdTgwRkRcdTgxMzNcdTgxQkZcdThGQjJcdTg5OTdcdTg2QTRcdTVERjRcdTYyOEFcdTY0QURcdTg5ODdcdTY3NzdcdTZDRTJcdTZEM0VcdTc0MzZcdTc4MzRcdTVBNDZcdTdGNzVcdTgyQURcdTk5QUNcdTRGRjNcdTVFQzNcdTYyRERcdTYzOTJcdTY1NTdcdTY3NkZcdTc2QzNcdTcyNENcdTgwQ0NcdTgwQkFcdThGMjlcdTkxNERcdTUwMERcdTU3RjlcdTVBOTJcdTY4ODVcdTY5NzNcdTcxNjRcdTcyRkRcdThDQjdcdTU4RjJcdThDRTBcdTk2NkFcdTkwMTlcdTg3N0ZcdTc5RTRcdTc3RTdcdTg0MjlcdTRGMkZcdTUyNjVcdTUzNUFcdTYyQ0RcdTY3Q0ZcdTZDQ0FcdTc2N0RcdTdCOTRcdTdDOTVcdTgyMzZcdTg1ODRcdThGRUJcdTY2RERcdTZGMjBcdTcyMDZcdTdFMUJcdTgzQUJcdTk5QzFcdTlFQTZcIl0sXG5bXCJjOGExXCIsXCJcdTUxRkRcdTdCQjFcdTc4NzJcdTdCQjhcdTgwODdcdTdCNDhcdTZBRThcdTVFNjFcdTgwOENcdTc1NTFcdTc1NjBcdTUxNkJcdTkyNjJcdTZFOENcdTc2N0FcdTkxOTdcdTlBRUFcdTRGMTBcdTdGNzBcdTYyOUNcdTdCNEZcdTk1QTVcdTlDRTlcdTU2N0FcdTU4NTlcdTg2RTRcdTk2QkNcdTRGMzRcdTUyMjRcdTUzNEFcdTUzQ0RcdTUzREJcdTVFMDZcdTY0MkNcdTY1OTFcdTY3N0ZcdTZDM0VcdTZDNEVcdTcyNDhcdTcyQUZcdTczRURcdTc1NTRcdTdFNDFcdTgyMkNcdTg1RTlcdThDQTlcdTdCQzRcdTkxQzZcdTcxNjlcdTk4MTJcdTk4RUZcdTYzM0RcdTY2NjlcdTc1NkFcdTc2RTRcdTc4RDBcdTg1NDNcdTg2RUVcdTUzMkFcdTUzNTFcdTU0MjZcdTU5ODNcdTVFODdcdTVGN0NcdTYwQjJcdTYyNDlcdTYyNzlcdTYyQUJcdTY1OTBcdTZCRDRcdTZDQ0NcdTc1QjJcdTc2QUVcdTc4OTFcdTc5RDhcdTdEQ0JcdTdGNzdcdTgwQTVcdTg4QUJcdThBQjlcdThDQkJcdTkwN0ZcdTk3NUVcdTk4REJcdTZBMEJcdTdDMzhcdTUwOTlcdTVDM0VcdTVGQUVcdTY3ODdcdTZCRDhcdTc0MzVcdTc3MDlcdTdGOEVcIl0sXG5bXCJjOWExXCIsXCJcdTlGM0JcdTY3Q0FcdTdBMTdcdTUzMzlcdTc1OEJcdTlBRURcdTVGNjZcdTgxOURcdTgzRjFcdTgwOThcdTVGM0NcdTVGQzVcdTc1NjJcdTdCNDZcdTkwM0NcdTY4NjdcdTU5RUJcdTVBOUJcdTdEMTBcdTc2N0VcdThCMkNcdTRGRjVcdTVGNkFcdTZBMTlcdTZDMzdcdTZGMDJcdTc0RTJcdTc5NjhcdTg4NjhcdThBNTVcdThDNzlcdTVFREZcdTYzQ0ZcdTc1QzVcdTc5RDJcdTgyRDdcdTkzMjhcdTkyRjJcdTg0OUNcdTg2RURcdTlDMkRcdTU0QzFcdTVGNkNcdTY1OENcdTZENUNcdTcwMTVcdThDQTdcdThDRDNcdTk4M0JcdTY1NEZcdTc0RjZcdTRFMERcdTRFRDhcdTU3RTBcdTU5MkJcdTVBNjZcdTVCQ0NcdTUxQThcdTVFMDNcdTVFOUNcdTYwMTZcdTYyNzZcdTY1NzdcdTY1QTdcdTY2NkVcdTZENkVcdTcyMzZcdTdCMjZcdTgxNTBcdTgxOUFcdTgyOTlcdThCNUNcdThDQTBcdThDRTZcdThENzRcdTk2MUNcdTk2NDRcdTRGQUVcdTY0QUJcdTZCNjZcdTgyMUVcdTg0NjFcdTg1NkFcdTkwRThcdTVDMDFcdTY5NTNcdTk4QThcdTg0N0FcdTg1NTdcdTRGMEZcdTUyNkZcdTVGQTlcdTVFNDVcdTY3MERcIl0sXG5bXCJjYWExXCIsXCJcdTc5OEZcdTgxNzlcdTg5MDdcdTg5ODZcdTZERjVcdTVGMTdcdTYyNTVcdTZDQjhcdTRFQ0ZcdTcyNjlcdTlCOTJcdTUyMDZcdTU0M0JcdTU2NzRcdTU4QjNcdTYxQTRcdTYyNkVcdTcxMUFcdTU5NkVcdTdDODlcdTdDREVcdTdEMUJcdTk2RjBcdTY1ODdcdTgwNUVcdTRFMTlcdTRGNzVcdTUxNzVcdTU4NDBcdTVFNjNcdTVFNzNcdTVGMEFcdTY3QzRcdTRFMjZcdTg1M0RcdTk1ODlcdTk2NUJcdTdDNzNcdTk4MDFcdTUwRkJcdTU4QzFcdTc2NTZcdTc4QTdcdTUyMjVcdTc3QTVcdTg1MTFcdTdCODZcdTUwNEZcdTU5MDlcdTcyNDdcdTdCQzdcdTdERThcdThGQkFcdThGRDRcdTkwNERcdTRGQkZcdTUyQzlcdTVBMjlcdTVGMDFcdTk3QURcdTRGRERcdTgyMTdcdTkyRUFcdTU3MDNcdTYzNTVcdTZCNjlcdTc1MkJcdTg4RENcdThGMTRcdTdBNDJcdTUyREZcdTU4OTNcdTYxNTVcdTYyMEFcdTY2QUVcdTZCQ0RcdTdDM0ZcdTgzRTlcdTUwMjNcdTRGRjhcdTUzMDVcdTU0NDZcdTU4MzFcdTU5NDlcdTVCOURcdTVDRjBcdTVDRUZcdTVEMjlcdTVFOTZcdTYyQjFcdTYzNjdcdTY1M0VcdTY1QjlcdTY3MEJcIl0sXG5bXCJjYmExXCIsXCJcdTZDRDVcdTZDRTFcdTcwRjlcdTc4MzJcdTdFMkJcdTgwREVcdTgyQjNcdTg0MENcdTg0RUNcdTg3MDJcdTg5MTJcdThBMkFcdThDNEFcdTkwQTZcdTkyRDJcdTk4RkRcdTlDRjNcdTlENkNcdTRFNEZcdTRFQTFcdTUwOERcdTUyNTZcdTU3NEFcdTU5QThcdTVFM0RcdTVGRDhcdTVGRDlcdTYyM0ZcdTY2QjRcdTY3MUJcdTY3RDBcdTY4RDJcdTUxOTJcdTdEMjFcdTgwQUFcdTgxQThcdThCMDBcdThDOENcdThDQkZcdTkyN0VcdTk2MzJcdTU0MjBcdTk4MkNcdTUzMTdcdTUwRDVcdTUzNUNcdTU4QThcdTY0QjJcdTY3MzRcdTcyNjdcdTc3NjZcdTdBNDZcdTkxRTZcdTUyQzNcdTZDQTFcdTZCODZcdTU4MDBcdTVFNENcdTU5NTRcdTY3MkNcdTdGRkJcdTUxRTFcdTc2QzZcdTY0NjlcdTc4RThcdTlCNTRcdTlFQkJcdTU3Q0JcdTU5QjlcdTY2MjdcdTY3OUFcdTZCQ0VcdTU0RTlcdTY5RDlcdTVFNTVcdTgxOUNcdTY3OTVcdTlCQUFcdTY3RkVcdTlDNTJcdTY4NURcdTRFQTZcdTRGRTNcdTUzQzhcdTYyQjlcdTY3MkJcdTZDQUJcdThGQzRcdTRGQURcdTdFNkRcdTlFQkZcdTRFMDdcdTYxNjJcdTZFODBcIl0sXG5bXCJjY2ExXCIsXCJcdTZGMkJcdTg1MTNcdTU0NzNcdTY3MkFcdTlCNDVcdTVERjNcdTdCOTVcdTVDQUNcdTVCQzZcdTg3MUNcdTZFNEFcdTg0RDFcdTdBMTRcdTgxMDhcdTU5OTlcdTdDOERcdTZDMTFcdTc3MjBcdTUyRDlcdTU5MjJcdTcxMjFcdTcyNUZcdTc3REJcdTk3MjdcdTlENjFcdTY5MEJcdTVBN0ZcdTVBMThcdTUxQTVcdTU0MERcdTU0N0RcdTY2MEVcdTc2REZcdThGRjdcdTkyOThcdTlDRjRcdTU5RUFcdTcyNURcdTZFQzVcdTUxNERcdTY4QzlcdTdEQkZcdTdERUNcdTk3NjJcdTlFQkFcdTY0NzhcdTZBMjFcdTgzMDJcdTU5ODRcdTVCNUZcdTZCREJcdTczMUJcdTc2RjJcdTdEQjJcdTgwMTdcdTg0OTlcdTUxMzJcdTY3MjhcdTlFRDlcdTc2RUVcdTY3NjJcdTUyRkZcdTk5MDVcdTVDMjRcdTYyM0JcdTdDN0VcdThDQjBcdTU1NEZcdTYwQjZcdTdEMEJcdTk1ODBcdTUzMDFcdTRFNUZcdTUxQjZcdTU5MUNcdTcyM0FcdTgwMzZcdTkxQ0VcdTVGMjVcdTc3RTJcdTUzODRcdTVGNzlcdTdEMDRcdTg1QUNcdThBMzNcdThFOERcdTk3NTZcdTY3RjNcdTg1QUVcdTk0NTNcdTYxMDlcdTYxMDhcdTZDQjlcdTc2NTJcIl0sXG5bXCJjZGExXCIsXCJcdThBRURcdThGMzhcdTU1MkZcdTRGNTFcdTUxMkFcdTUyQzdcdTUzQ0JcdTVCQTVcdTVFN0RcdTYwQTBcdTYxODJcdTYzRDZcdTY3MDlcdTY3REFcdTZFNjdcdTZEOENcdTczMzZcdTczMzdcdTc1MzFcdTc5NTBcdTg4RDVcdThBOThcdTkwNEFcdTkwOTFcdTkwRjVcdTk2QzRcdTg3OERcdTU5MTVcdTRFODhcdTRGNTlcdTRFMEVcdThBODlcdThGM0ZcdTk4MTBcdTUwQURcdTVFN0NcdTU5OTZcdTVCQjlcdTVFQjhcdTYzREFcdTYzRkFcdTY0QzFcdTY2RENcdTY5NEFcdTY5RDhcdTZEMEJcdTZFQjZcdTcxOTRcdTc1MjhcdTdBQUZcdTdGOEFcdTgwMDBcdTg0NDlcdTg0QzlcdTg5ODFcdThCMjFcdThFMEFcdTkwNjVcdTk2N0RcdTk5MEFcdTYxN0VcdTYyOTFcdTZCMzJcdTZDODNcdTZENzRcdTdGQ0NcdTdGRkNcdTZEQzBcdTdGODVcdTg3QkFcdTg4RjhcdTY3NjVcdTgzQjFcdTk4M0NcdTk2RjdcdTZEMUJcdTdENjFcdTg0M0RcdTkxNkFcdTRFNzFcdTUzNzVcdTVENTBcdTZCMDRcdTZGRUJcdTg1Q0RcdTg2MkRcdTg5QTdcdTUyMjlcdTU0MEZcdTVDNjVcdTY3NEVcdTY4QThcdTc0MDZcdTc0ODNcIl0sXG5bXCJjZWExXCIsXCJcdTc1RTJcdTg4Q0ZcdTg4RTFcdTkxQ0NcdTk2RTJcdTk2NzhcdTVGOEJcdTczODdcdTdBQ0JcdTg0NEVcdTYzQTBcdTc1NjVcdTUyODlcdTZENDFcdTZFOUNcdTc0MDlcdTc1NTlcdTc4NkJcdTdDOTJcdTk2ODZcdTdBRENcdTlGOERcdTRGQjZcdTYxNkVcdTY1QzVcdTg2NUNcdTRFODZcdTRFQUVcdTUwREFcdTRFMjFcdTUxQ0NcdTVCRUVcdTY1OTlcdTY4ODFcdTZEQkNcdTczMUZcdTc2NDJcdTc3QURcdTdBMUNcdTdDRTdcdTgyNkZcdThBRDJcdTkwN0NcdTkxQ0ZcdTk2NzVcdTk4MThcdTUyOUJcdTdERDFcdTUwMkJcdTUzOThcdTY3OTdcdTZEQ0JcdTcxRDBcdTc0MzNcdTgxRThcdThGMkFcdTk2QTNcdTlDNTdcdTlFOUZcdTc0NjBcdTU4NDFcdTZEOTlcdTdEMkZcdTk4NUVcdTRFRTRcdTRGMzZcdTRGOEJcdTUxQjdcdTUyQjFcdTVEQkFcdTYwMUNcdTczQjJcdTc5M0NcdTgyRDNcdTkyMzRcdTk2QjdcdTk2RjZcdTk3MEFcdTlFOTdcdTlGNjJcdTY2QTZcdTZCNzRcdTUyMTdcdTUyQTNcdTcwQzhcdTg4QzJcdTVFQzlcdTYwNEJcdTYxOTBcdTZGMjNcdTcxNDlcdTdDM0VcdTdERjRcdTgwNkZcIl0sXG5bXCJjZmExXCIsXCJcdTg0RUVcdTkwMjNcdTkzMkNcdTU0NDJcdTlCNkZcdTZBRDNcdTcwODlcdThDQzJcdThERUZcdTk3MzJcdTUyQjRcdTVBNDFcdTVFQ0FcdTVGMDRcdTY3MTdcdTY5N0NcdTY5OTRcdTZENkFcdTZGMEZcdTcyNjJcdTcyRkNcdTdCRURcdTgwMDFcdTgwN0VcdTg3NEJcdTkwQ0VcdTUxNkRcdTlFOTNcdTc5ODRcdTgwOEJcdTkzMzJcdThBRDZcdTUwMkRcdTU0OENcdThBNzFcdTZCNkFcdThDQzRcdTgxMDdcdTYwRDFcdTY3QTBcdTlERjJcdTRFOTlcdTRFOThcdTlDMTBcdThBNkJcdTg1QzFcdTg1NjhcdTY5MDBcdTZFN0VcdTc4OTdcdTgxNTVcIl0sXG5bXCJkMGExXCIsXCJcdTVGMENcdTRFMTBcdTRFMTVcdTRFMkFcdTRFMzFcdTRFMzZcdTRFM0NcdTRFM0ZcdTRFNDJcdTRFNTZcdTRFNThcdTRFODJcdTRFODVcdThDNkJcdTRFOEFcdTgyMTJcdTVGMERcdTRFOEVcdTRFOUVcdTRFOUZcdTRFQTBcdTRFQTJcdTRFQjBcdTRFQjNcdTRFQjZcdTRFQ0VcdTRFQ0RcdTRFQzRcdTRFQzZcdTRFQzJcdTRFRDdcdTRFREVcdTRFRURcdTRFREZcdTRFRjdcdTRGMDlcdTRGNUFcdTRGMzBcdTRGNUJcdTRGNURcdTRGNTdcdTRGNDdcdTRGNzZcdTRGODhcdTRGOEZcdTRGOThcdTRGN0JcdTRGNjlcdTRGNzBcdTRGOTFcdTRGNkZcdTRGODZcdTRGOTZcdTUxMThcdTRGRDRcdTRGREZcdTRGQ0VcdTRGRDhcdTRGREJcdTRGRDFcdTRGREFcdTRGRDBcdTRGRTRcdTRGRTVcdTUwMUFcdTUwMjhcdTUwMTRcdTUwMkFcdTUwMjVcdTUwMDVcdTRGMUNcdTRGRjZcdTUwMjFcdTUwMjlcdTUwMkNcdTRGRkVcdTRGRUZcdTUwMTFcdTUwMDZcdTUwNDNcdTUwNDdcdTY3MDNcdTUwNTVcdTUwNTBcdTUwNDhcdTUwNUFcdTUwNTZcdTUwNkNcdTUwNzhcdTUwODBcdTUwOUFcdTUwODVcdTUwQjRcdTUwQjJcIl0sXG5bXCJkMWExXCIsXCJcdTUwQzlcdTUwQ0FcdTUwQjNcdTUwQzJcdTUwRDZcdTUwREVcdTUwRTVcdTUwRURcdTUwRTNcdTUwRUVcdTUwRjlcdTUwRjVcdTUxMDlcdTUxMDFcdTUxMDJcdTUxMTZcdTUxMTVcdTUxMTRcdTUxMUFcdTUxMjFcdTUxM0FcdTUxMzdcdTUxM0NcdTUxM0JcdTUxM0ZcdTUxNDBcdTUxNTJcdTUxNENcdTUxNTRcdTUxNjJcdTdBRjhcdTUxNjlcdTUxNkFcdTUxNkVcdTUxODBcdTUxODJcdTU2RDhcdTUxOENcdTUxODlcdTUxOEZcdTUxOTFcdTUxOTNcdTUxOTVcdTUxOTZcdTUxQTRcdTUxQTZcdTUxQTJcdTUxQTlcdTUxQUFcdTUxQUJcdTUxQjNcdTUxQjFcdTUxQjJcdTUxQjBcdTUxQjVcdTUxQkRcdTUxQzVcdTUxQzlcdTUxREJcdTUxRTBcdTg2NTVcdTUxRTlcdTUxRURcdTUxRjBcdTUxRjVcdTUxRkVcdTUyMDRcdTUyMEJcdTUyMTRcdTUyMEVcdTUyMjdcdTUyMkFcdTUyMkVcdTUyMzNcdTUyMzlcdTUyNEZcdTUyNDRcdTUyNEJcdTUyNENcdTUyNUVcdTUyNTRcdTUyNkFcdTUyNzRcdTUyNjlcdTUyNzNcdTUyN0ZcdTUyN0RcdTUyOERcdTUyOTRcdTUyOTJcdTUyNzFcdTUyODhcdTUyOTFcdThGQThcIl0sXG5bXCJkMmExXCIsXCJcdThGQTdcdTUyQUNcdTUyQURcdTUyQkNcdTUyQjVcdTUyQzFcdTUyQ0RcdTUyRDdcdTUyREVcdTUyRTNcdTUyRTZcdTk4RURcdTUyRTBcdTUyRjNcdTUyRjVcdTUyRjhcdTUyRjlcdTUzMDZcdTUzMDhcdTc1MzhcdTUzMERcdTUzMTBcdTUzMEZcdTUzMTVcdTUzMUFcdTUzMjNcdTUzMkZcdTUzMzFcdTUzMzNcdTUzMzhcdTUzNDBcdTUzNDZcdTUzNDVcdTRFMTdcdTUzNDlcdTUzNERcdTUxRDZcdTUzNUVcdTUzNjlcdTUzNkVcdTU5MThcdTUzN0JcdTUzNzdcdTUzODJcdTUzOTZcdTUzQTBcdTUzQTZcdTUzQTVcdTUzQUVcdTUzQjBcdTUzQjZcdTUzQzNcdTdDMTJcdTk2RDlcdTUzREZcdTY2RkNcdTcxRUVcdTUzRUVcdTUzRThcdTUzRURcdTUzRkFcdTU0MDFcdTU0M0RcdTU0NDBcdTU0MkNcdTU0MkRcdTU0M0NcdTU0MkVcdTU0MzZcdTU0MjlcdTU0MURcdTU0NEVcdTU0OEZcdTU0NzVcdTU0OEVcdTU0NUZcdTU0NzFcdTU0NzdcdTU0NzBcdTU0OTJcdTU0N0JcdTU0ODBcdTU0NzZcdTU0ODRcdTU0OTBcdTU0ODZcdTU0QzdcdTU0QTJcdTU0QjhcdTU0QTVcdTU0QUNcdTU0QzRcdTU0QzhcdTU0QThcIl0sXG5bXCJkM2ExXCIsXCJcdTU0QUJcdTU0QzJcdTU0QTRcdTU0QkVcdTU0QkNcdTU0RDhcdTU0RTVcdTU0RTZcdTU1MEZcdTU1MTRcdTU0RkRcdTU0RUVcdTU0RURcdTU0RkFcdTU0RTJcdTU1MzlcdTU1NDBcdTU1NjNcdTU1NENcdTU1MkVcdTU1NUNcdTU1NDVcdTU1NTZcdTU1NTdcdTU1MzhcdTU1MzNcdTU1NURcdTU1OTlcdTU1ODBcdTU0QUZcdTU1OEFcdTU1OUZcdTU1N0JcdTU1N0VcdTU1OThcdTU1OUVcdTU1QUVcdTU1N0NcdTU1ODNcdTU1QTlcdTU1ODdcdTU1QThcdTU1REFcdTU1QzVcdTU1REZcdTU1QzRcdTU1RENcdTU1RTRcdTU1RDRcdTU2MTRcdTU1RjdcdTU2MTZcdTU1RkVcdTU1RkRcdTU2MUJcdTU1RjlcdTU2NEVcdTU2NTBcdTcxREZcdTU2MzRcdTU2MzZcdTU2MzJcdTU2MzhcdTU2NkJcdTU2NjRcdTU2MkZcdTU2NkNcdTU2NkFcdTU2ODZcdTU2ODBcdTU2OEFcdTU2QTBcdTU2OTRcdTU2OEZcdTU2QTVcdTU2QUVcdTU2QjZcdTU2QjRcdTU2QzJcdTU2QkNcdTU2QzFcdTU2QzNcdTU2QzBcdTU2QzhcdTU2Q0VcdTU2RDFcdTU2RDNcdTU2RDdcdTU2RUVcdTU2RjlcdTU3MDBcdTU2RkZcdTU3MDRcdTU3MDlcIl0sXG5bXCJkNGExXCIsXCJcdTU3MDhcdTU3MEJcdTU3MERcdTU3MTNcdTU3MThcdTU3MTZcdTU1QzdcdTU3MUNcdTU3MjZcdTU3MzdcdTU3MzhcdTU3NEVcdTU3M0JcdTU3NDBcdTU3NEZcdTU3NjlcdTU3QzBcdTU3ODhcdTU3NjFcdTU3N0ZcdTU3ODlcdTU3OTNcdTU3QTBcdTU3QjNcdTU3QTRcdTU3QUFcdTU3QjBcdTU3QzNcdTU3QzZcdTU3RDRcdTU3RDJcdTU3RDNcdTU4MEFcdTU3RDZcdTU3RTNcdTU4MEJcdTU4MTlcdTU4MURcdTU4NzJcdTU4MjFcdTU4NjJcdTU4NEJcdTU4NzBcdTZCQzBcdTU4NTJcdTU4M0RcdTU4NzlcdTU4ODVcdTU4QjlcdTU4OUZcdTU4QUJcdTU4QkFcdTU4REVcdTU4QkJcdTU4QjhcdTU4QUVcdTU4QzVcdTU4RDNcdTU4RDFcdTU4RDdcdTU4RDlcdTU4RDhcdTU4RTVcdTU4RENcdTU4RTRcdTU4REZcdTU4RUZcdTU4RkFcdTU4RjlcdTU4RkJcdTU4RkNcdTU4RkRcdTU5MDJcdTU5MEFcdTU5MTBcdTU5MUJcdTY4QTZcdTU5MjVcdTU5MkNcdTU5MkRcdTU5MzJcdTU5MzhcdTU5M0VcdTdBRDJcdTU5NTVcdTU5NTBcdTU5NEVcdTU5NUFcdTU5NThcdTU5NjJcdTU5NjBcdTU5NjdcdTU5NkNcdTU5NjlcIl0sXG5bXCJkNWExXCIsXCJcdTU5NzhcdTU5ODFcdTU5OURcdTRGNUVcdTRGQUJcdTU5QTNcdTU5QjJcdTU5QzZcdTU5RThcdTU5RENcdTU5OERcdTU5RDlcdTU5REFcdTVBMjVcdTVBMUZcdTVBMTFcdTVBMUNcdTVBMDlcdTVBMUFcdTVBNDBcdTVBNkNcdTVBNDlcdTVBMzVcdTVBMzZcdTVBNjJcdTVBNkFcdTVBOUFcdTVBQkNcdTVBQkVcdTVBQ0JcdTVBQzJcdTVBQkRcdTVBRTNcdTVBRDdcdTVBRTZcdTVBRTlcdTVBRDZcdTVBRkFcdTVBRkJcdTVCMENcdTVCMEJcdTVCMTZcdTVCMzJcdTVBRDBcdTVCMkFcdTVCMzZcdTVCM0VcdTVCNDNcdTVCNDVcdTVCNDBcdTVCNTFcdTVCNTVcdTVCNUFcdTVCNUJcdTVCNjVcdTVCNjlcdTVCNzBcdTVCNzNcdTVCNzVcdTVCNzhcdTY1ODhcdTVCN0FcdTVCODBcdTVCODNcdTVCQTZcdTVCQjhcdTVCQzNcdTVCQzdcdTVCQzlcdTVCRDRcdTVCRDBcdTVCRTRcdTVCRTZcdTVCRTJcdTVCREVcdTVCRTVcdTVCRUJcdTVCRjBcdTVCRjZcdTVCRjNcdTVDMDVcdTVDMDdcdTVDMDhcdTVDMERcdTVDMTNcdTVDMjBcdTVDMjJcdTVDMjhcdTVDMzhcdTVDMzlcdTVDNDFcdTVDNDZcdTVDNEVcdTVDNTNcIl0sXG5bXCJkNmExXCIsXCJcdTVDNTBcdTVDNEZcdTVCNzFcdTVDNkNcdTVDNkVcdTRFNjJcdTVDNzZcdTVDNzlcdTVDOENcdTVDOTFcdTVDOTRcdTU5OUJcdTVDQUJcdTVDQkJcdTVDQjZcdTVDQkNcdTVDQjdcdTVDQzVcdTVDQkVcdTVDQzdcdTVDRDlcdTVDRTlcdTVDRkRcdTVDRkFcdTVDRURcdTVEOENcdTVDRUFcdTVEMEJcdTVEMTVcdTVEMTdcdTVENUNcdTVEMUZcdTVEMUJcdTVEMTFcdTVEMTRcdTVEMjJcdTVEMUFcdTVEMTlcdTVEMThcdTVENENcdTVENTJcdTVENEVcdTVENEJcdTVENkNcdTVENzNcdTVENzZcdTVEODdcdTVEODRcdTVEODJcdTVEQTJcdTVEOURcdTVEQUNcdTVEQUVcdTVEQkRcdTVEOTBcdTVEQjdcdTVEQkNcdTVEQzlcdTVEQ0RcdTVERDNcdTVERDJcdTVERDZcdTVEREJcdTVERUJcdTVERjJcdTVERjVcdTVFMEJcdTVFMUFcdTVFMTlcdTVFMTFcdTVFMUJcdTVFMzZcdTVFMzdcdTVFNDRcdTVFNDNcdTVFNDBcdTVFNEVcdTVFNTdcdTVFNTRcdTVFNUZcdTVFNjJcdTVFNjRcdTVFNDdcdTVFNzVcdTVFNzZcdTVFN0FcdTlFQkNcdTVFN0ZcdTVFQTBcdTVFQzFcdTVFQzJcdTVFQzhcdTVFRDBcdTVFQ0ZcIl0sXG5bXCJkN2ExXCIsXCJcdTVFRDZcdTVFRTNcdTVFRERcdTVFREFcdTVFREJcdTVFRTJcdTVFRTFcdTVFRThcdTVFRTlcdTVFRUNcdTVFRjFcdTVFRjNcdTVFRjBcdTVFRjRcdTVFRjhcdTVFRkVcdTVGMDNcdTVGMDlcdTVGNURcdTVGNUNcdTVGMEJcdTVGMTFcdTVGMTZcdTVGMjlcdTVGMkRcdTVGMzhcdTVGNDFcdTVGNDhcdTVGNENcdTVGNEVcdTVGMkZcdTVGNTFcdTVGNTZcdTVGNTdcdTVGNTlcdTVGNjFcdTVGNkRcdTVGNzNcdTVGNzdcdTVGODNcdTVGODJcdTVGN0ZcdTVGOEFcdTVGODhcdTVGOTFcdTVGODdcdTVGOUVcdTVGOTlcdTVGOThcdTVGQTBcdTVGQThcdTVGQURcdTVGQkNcdTVGRDZcdTVGRkJcdTVGRTRcdTVGRjhcdTVGRjFcdTVGRERcdTYwQjNcdTVGRkZcdTYwMjFcdTYwNjBcdTYwMTlcdTYwMTBcdTYwMjlcdTYwMEVcdTYwMzFcdTYwMUJcdTYwMTVcdTYwMkJcdTYwMjZcdTYwMEZcdTYwM0FcdTYwNUFcdTYwNDFcdTYwNkFcdTYwNzdcdTYwNUZcdTYwNEFcdTYwNDZcdTYwNERcdTYwNjNcdTYwNDNcdTYwNjRcdTYwNDJcdTYwNkNcdTYwNkJcdTYwNTlcdTYwODFcdTYwOERcdTYwRTdcdTYwODNcdTYwOUFcIl0sXG5bXCJkOGExXCIsXCJcdTYwODRcdTYwOUJcdTYwOTZcdTYwOTdcdTYwOTJcdTYwQTdcdTYwOEJcdTYwRTFcdTYwQjhcdTYwRTBcdTYwRDNcdTYwQjRcdTVGRjBcdTYwQkRcdTYwQzZcdTYwQjVcdTYwRDhcdTYxNERcdTYxMTVcdTYxMDZcdTYwRjZcdTYwRjdcdTYxMDBcdTYwRjRcdTYwRkFcdTYxMDNcdTYxMjFcdTYwRkJcdTYwRjFcdTYxMERcdTYxMEVcdTYxNDdcdTYxM0VcdTYxMjhcdTYxMjdcdTYxNEFcdTYxM0ZcdTYxM0NcdTYxMkNcdTYxMzRcdTYxM0RcdTYxNDJcdTYxNDRcdTYxNzNcdTYxNzdcdTYxNThcdTYxNTlcdTYxNUFcdTYxNkJcdTYxNzRcdTYxNkZcdTYxNjVcdTYxNzFcdTYxNUZcdTYxNURcdTYxNTNcdTYxNzVcdTYxOTlcdTYxOTZcdTYxODdcdTYxQUNcdTYxOTRcdTYxOUFcdTYxOEFcdTYxOTFcdTYxQUJcdTYxQUVcdTYxQ0NcdTYxQ0FcdTYxQzlcdTYxRjdcdTYxQzhcdTYxQzNcdTYxQzZcdTYxQkFcdTYxQ0JcdTdGNzlcdTYxQ0RcdTYxRTZcdTYxRTNcdTYxRjZcdTYxRkFcdTYxRjRcdTYxRkZcdTYxRkRcdTYxRkNcdTYxRkVcdTYyMDBcdTYyMDhcdTYyMDlcdTYyMERcdTYyMENcdTYyMTRcdTYyMUJcIl0sXG5bXCJkOWExXCIsXCJcdTYyMUVcdTYyMjFcdTYyMkFcdTYyMkVcdTYyMzBcdTYyMzJcdTYyMzNcdTYyNDFcdTYyNEVcdTYyNUVcdTYyNjNcdTYyNUJcdTYyNjBcdTYyNjhcdTYyN0NcdTYyODJcdTYyODlcdTYyN0VcdTYyOTJcdTYyOTNcdTYyOTZcdTYyRDRcdTYyODNcdTYyOTRcdTYyRDdcdTYyRDFcdTYyQkJcdTYyQ0ZcdTYyRkZcdTYyQzZcdTY0RDRcdTYyQzhcdTYyRENcdTYyQ0NcdTYyQ0FcdTYyQzJcdTYyQzdcdTYyOUJcdTYyQzlcdTYzMENcdTYyRUVcdTYyRjFcdTYzMjdcdTYzMDJcdTYzMDhcdTYyRUZcdTYyRjVcdTYzNTBcdTYzM0VcdTYzNERcdTY0MUNcdTYzNEZcdTYzOTZcdTYzOEVcdTYzODBcdTYzQUJcdTYzNzZcdTYzQTNcdTYzOEZcdTYzODlcdTYzOUZcdTYzQjVcdTYzNkJcdTYzNjlcdTYzQkVcdTYzRTlcdTYzQzBcdTYzQzZcdTYzRTNcdTYzQzlcdTYzRDJcdTYzRjZcdTYzQzRcdTY0MTZcdTY0MzRcdTY0MDZcdTY0MTNcdTY0MjZcdTY0MzZcdTY1MURcdTY0MTdcdTY0MjhcdTY0MEZcdTY0NjdcdTY0NkZcdTY0NzZcdTY0NEVcdTY1MkFcdTY0OTVcdTY0OTNcdTY0QTVcdTY0QTlcdTY0ODhcdTY0QkNcIl0sXG5bXCJkYWExXCIsXCJcdTY0REFcdTY0RDJcdTY0QzVcdTY0QzdcdTY0QkJcdTY0RDhcdTY0QzJcdTY0RjFcdTY0RTdcdTgyMDlcdTY0RTBcdTY0RTFcdTYyQUNcdTY0RTNcdTY0RUZcdTY1MkNcdTY0RjZcdTY0RjRcdTY0RjJcdTY0RkFcdTY1MDBcdTY0RkRcdTY1MThcdTY1MUNcdTY1MDVcdTY1MjRcdTY1MjNcdTY1MkJcdTY1MzRcdTY1MzVcdTY1MzdcdTY1MzZcdTY1MzhcdTc1NEJcdTY1NDhcdTY1NTZcdTY1NTVcdTY1NERcdTY1NThcdTY1NUVcdTY1NURcdTY1NzJcdTY1NzhcdTY1ODJcdTY1ODNcdThCOEFcdTY1OUJcdTY1OUZcdTY1QUJcdTY1QjdcdTY1QzNcdTY1QzZcdTY1QzFcdTY1QzRcdTY1Q0NcdTY1RDJcdTY1REJcdTY1RDlcdTY1RTBcdTY1RTFcdTY1RjFcdTY3NzJcdTY2MEFcdTY2MDNcdTY1RkJcdTY3NzNcdTY2MzVcdTY2MzZcdTY2MzRcdTY2MUNcdTY2NEZcdTY2NDRcdTY2NDlcdTY2NDFcdTY2NUVcdTY2NURcdTY2NjRcdTY2NjdcdTY2NjhcdTY2NUZcdTY2NjJcdTY2NzBcdTY2ODNcdTY2ODhcdTY2OEVcdTY2ODlcdTY2ODRcdTY2OThcdTY2OURcdTY2QzFcdTY2QjlcdTY2QzlcdTY2QkVcdTY2QkNcIl0sXG5bXCJkYmExXCIsXCJcdTY2QzRcdTY2QjhcdTY2RDZcdTY2REFcdTY2RTBcdTY2M0ZcdTY2RTZcdTY2RTlcdTY2RjBcdTY2RjVcdTY2RjdcdTY3MEZcdTY3MTZcdTY3MUVcdTY3MjZcdTY3MjdcdTk3MzhcdTY3MkVcdTY3M0ZcdTY3MzZcdTY3NDFcdTY3MzhcdTY3MzdcdTY3NDZcdTY3NUVcdTY3NjBcdTY3NTlcdTY3NjNcdTY3NjRcdTY3ODlcdTY3NzBcdTY3QTlcdTY3N0NcdTY3NkFcdTY3OENcdTY3OEJcdTY3QTZcdTY3QTFcdTY3ODVcdTY3QjdcdTY3RUZcdTY3QjRcdTY3RUNcdTY3QjNcdTY3RTlcdTY3QjhcdTY3RTRcdTY3REVcdTY3RERcdTY3RTJcdTY3RUVcdTY3QjlcdTY3Q0VcdTY3QzZcdTY3RTdcdTZBOUNcdTY4MUVcdTY4NDZcdTY4MjlcdTY4NDBcdTY4NERcdTY4MzJcdTY4NEVcdTY4QjNcdTY4MkJcdTY4NTlcdTY4NjNcdTY4NzdcdTY4N0ZcdTY4OUZcdTY4OEZcdTY4QURcdTY4OTRcdTY4OURcdTY4OUJcdTY4ODNcdTZBQUVcdTY4QjlcdTY4NzRcdTY4QjVcdTY4QTBcdTY4QkFcdTY5MEZcdTY4OERcdTY4N0VcdTY5MDFcdTY4Q0FcdTY5MDhcdTY4RDhcdTY5MjJcdTY5MjZcdTY4RTFcdTY5MENcdTY4Q0RcIl0sXG5bXCJkY2ExXCIsXCJcdTY4RDRcdTY4RTdcdTY4RDVcdTY5MzZcdTY5MTJcdTY5MDRcdTY4RDdcdTY4RTNcdTY5MjVcdTY4RjlcdTY4RTBcdTY4RUZcdTY5MjhcdTY5MkFcdTY5MUFcdTY5MjNcdTY5MjFcdTY4QzZcdTY5NzlcdTY5NzdcdTY5NUNcdTY5NzhcdTY5NkJcdTY5NTRcdTY5N0VcdTY5NkVcdTY5MzlcdTY5NzRcdTY5M0RcdTY5NTlcdTY5MzBcdTY5NjFcdTY5NUVcdTY5NURcdTY5ODFcdTY5NkFcdTY5QjJcdTY5QUVcdTY5RDBcdTY5QkZcdTY5QzFcdTY5RDNcdTY5QkVcdTY5Q0VcdTVCRThcdTY5Q0FcdTY5RERcdTY5QkJcdTY5QzNcdTY5QTdcdTZBMkVcdTY5OTFcdTY5QTBcdTY5OUNcdTY5OTVcdTY5QjRcdTY5REVcdTY5RThcdTZBMDJcdTZBMUJcdTY5RkZcdTZCMEFcdTY5RjlcdTY5RjJcdTY5RTdcdTZBMDVcdTY5QjFcdTZBMUVcdTY5RURcdTZBMTRcdTY5RUJcdTZBMEFcdTZBMTJcdTZBQzFcdTZBMjNcdTZBMTNcdTZBNDRcdTZBMENcdTZBNzJcdTZBMzZcdTZBNzhcdTZBNDdcdTZBNjJcdTZBNTlcdTZBNjZcdTZBNDhcdTZBMzhcdTZBMjJcdTZBOTBcdTZBOERcdTZBQTBcdTZBODRcdTZBQTJcdTZBQTNcIl0sXG5bXCJkZGExXCIsXCJcdTZBOTdcdTg2MTdcdTZBQkJcdTZBQzNcdTZBQzJcdTZBQjhcdTZBQjNcdTZBQUNcdTZBREVcdTZBRDFcdTZBREZcdTZBQUFcdTZBREFcdTZBRUFcdTZBRkJcdTZCMDVcdTg2MTZcdTZBRkFcdTZCMTJcdTZCMTZcdTlCMzFcdTZCMUZcdTZCMzhcdTZCMzdcdTc2RENcdTZCMzlcdTk4RUVcdTZCNDdcdTZCNDNcdTZCNDlcdTZCNTBcdTZCNTlcdTZCNTRcdTZCNUJcdTZCNUZcdTZCNjFcdTZCNzhcdTZCNzlcdTZCN0ZcdTZCODBcdTZCODRcdTZCODNcdTZCOERcdTZCOThcdTZCOTVcdTZCOUVcdTZCQTRcdTZCQUFcdTZCQUJcdTZCQUZcdTZCQjJcdTZCQjFcdTZCQjNcdTZCQjdcdTZCQkNcdTZCQzZcdTZCQ0JcdTZCRDNcdTZCREZcdTZCRUNcdTZCRUJcdTZCRjNcdTZCRUZcdTlFQkVcdTZDMDhcdTZDMTNcdTZDMTRcdTZDMUJcdTZDMjRcdTZDMjNcdTZDNUVcdTZDNTVcdTZDNjJcdTZDNkFcdTZDODJcdTZDOERcdTZDOUFcdTZDODFcdTZDOUJcdTZDN0VcdTZDNjhcdTZDNzNcdTZDOTJcdTZDOTBcdTZDQzRcdTZDRjFcdTZDRDNcdTZDQkRcdTZDRDdcdTZDQzVcdTZDRERcdTZDQUVcdTZDQjFcdTZDQkVcIl0sXG5bXCJkZWExXCIsXCJcdTZDQkFcdTZDREJcdTZDRUZcdTZDRDlcdTZDRUFcdTZEMUZcdTg4NERcdTZEMzZcdTZEMkJcdTZEM0RcdTZEMzhcdTZEMTlcdTZEMzVcdTZEMzNcdTZEMTJcdTZEMENcdTZENjNcdTZEOTNcdTZENjRcdTZENUFcdTZENzlcdTZENTlcdTZEOEVcdTZEOTVcdTZGRTRcdTZEODVcdTZERjlcdTZFMTVcdTZFMEFcdTZEQjVcdTZEQzdcdTZERTZcdTZEQjhcdTZEQzZcdTZERUNcdTZEREVcdTZEQ0NcdTZERThcdTZERDJcdTZEQzVcdTZERkFcdTZERDlcdTZERTRcdTZERDVcdTZERUFcdTZERUVcdTZFMkRcdTZFNkVcdTZFMkVcdTZFMTlcdTZFNzJcdTZFNUZcdTZFM0VcdTZFMjNcdTZFNkJcdTZFMkJcdTZFNzZcdTZFNERcdTZFMUZcdTZFNDNcdTZFM0FcdTZFNEVcdTZFMjRcdTZFRkZcdTZFMURcdTZFMzhcdTZFODJcdTZFQUFcdTZFOThcdTZFQzlcdTZFQjdcdTZFRDNcdTZFQkRcdTZFQUZcdTZFQzRcdTZFQjJcdTZFRDRcdTZFRDVcdTZFOEZcdTZFQTVcdTZFQzJcdTZFOUZcdTZGNDFcdTZGMTFcdTcwNENcdTZFRUNcdTZFRjhcdTZFRkVcdTZGM0ZcdTZFRjJcdTZGMzFcdTZFRUZcdTZGMzJcdTZFQ0NcIl0sXG5bXCJkZmExXCIsXCJcdTZGM0VcdTZGMTNcdTZFRjdcdTZGODZcdTZGN0FcdTZGNzhcdTZGODFcdTZGODBcdTZGNkZcdTZGNUJcdTZGRjNcdTZGNkRcdTZGODJcdTZGN0NcdTZGNThcdTZGOEVcdTZGOTFcdTZGQzJcdTZGNjZcdTZGQjNcdTZGQTNcdTZGQTFcdTZGQTRcdTZGQjlcdTZGQzZcdTZGQUFcdTZGREZcdTZGRDVcdTZGRUNcdTZGRDRcdTZGRDhcdTZGRjFcdTZGRUVcdTZGREJcdTcwMDlcdTcwMEJcdTZGRkFcdTcwMTFcdTcwMDFcdTcwMEZcdTZGRkVcdTcwMUJcdTcwMUFcdTZGNzRcdTcwMURcdTcwMThcdTcwMUZcdTcwMzBcdTcwM0VcdTcwMzJcdTcwNTFcdTcwNjNcdTcwOTlcdTcwOTJcdTcwQUZcdTcwRjFcdTcwQUNcdTcwQjhcdTcwQjNcdTcwQUVcdTcwREZcdTcwQ0JcdTcwRERcdTcwRDlcdTcxMDlcdTcwRkRcdTcxMUNcdTcxMTlcdTcxNjVcdTcxNTVcdTcxODhcdTcxNjZcdTcxNjJcdTcxNENcdTcxNTZcdTcxNkNcdTcxOEZcdTcxRkJcdTcxODRcdTcxOTVcdTcxQThcdTcxQUNcdTcxRDdcdTcxQjlcdTcxQkVcdTcxRDJcdTcxQzlcdTcxRDRcdTcxQ0VcdTcxRTBcdTcxRUNcdTcxRTdcdTcxRjVcdTcxRkNcIl0sXG5bXCJlMGExXCIsXCJcdTcxRjlcdTcxRkZcdTcyMERcdTcyMTBcdTcyMUJcdTcyMjhcdTcyMkRcdTcyMkNcdTcyMzBcdTcyMzJcdTcyM0JcdTcyM0NcdTcyM0ZcdTcyNDBcdTcyNDZcdTcyNEJcdTcyNThcdTcyNzRcdTcyN0VcdTcyODJcdTcyODFcdTcyODdcdTcyOTJcdTcyOTZcdTcyQTJcdTcyQTdcdTcyQjlcdTcyQjJcdTcyQzNcdTcyQzZcdTcyQzRcdTcyQ0VcdTcyRDJcdTcyRTJcdTcyRTBcdTcyRTFcdTcyRjlcdTcyRjdcdTUwMEZcdTczMTdcdTczMEFcdTczMUNcdTczMTZcdTczMURcdTczMzRcdTczMkZcdTczMjlcdTczMjVcdTczM0VcdTczNEVcdTczNEZcdTlFRDhcdTczNTdcdTczNkFcdTczNjhcdTczNzBcdTczNzhcdTczNzVcdTczN0JcdTczN0FcdTczQzhcdTczQjNcdTczQ0VcdTczQkJcdTczQzBcdTczRTVcdTczRUVcdTczREVcdTc0QTJcdTc0MDVcdTc0NkZcdTc0MjVcdTczRjhcdTc0MzJcdTc0M0FcdTc0NTVcdTc0M0ZcdTc0NUZcdTc0NTlcdTc0NDFcdTc0NUNcdTc0NjlcdTc0NzBcdTc0NjNcdTc0NkFcdTc0NzZcdTc0N0VcdTc0OEJcdTc0OUVcdTc0QTdcdTc0Q0FcdTc0Q0ZcdTc0RDRcdTczRjFcIl0sXG5bXCJlMWExXCIsXCJcdTc0RTBcdTc0RTNcdTc0RTdcdTc0RTlcdTc0RUVcdTc0RjJcdTc0RjBcdTc0RjFcdTc0RjhcdTc0RjdcdTc1MDRcdTc1MDNcdTc1MDVcdTc1MENcdTc1MEVcdTc1MERcdTc1MTVcdTc1MTNcdTc1MUVcdTc1MjZcdTc1MkNcdTc1M0NcdTc1NDRcdTc1NERcdTc1NEFcdTc1NDlcdTc1NUJcdTc1NDZcdTc1NUFcdTc1NjlcdTc1NjRcdTc1NjdcdTc1NkJcdTc1NkRcdTc1NzhcdTc1NzZcdTc1ODZcdTc1ODdcdTc1NzRcdTc1OEFcdTc1ODlcdTc1ODJcdTc1OTRcdTc1OUFcdTc1OURcdTc1QTVcdTc1QTNcdTc1QzJcdTc1QjNcdTc1QzNcdTc1QjVcdTc1QkRcdTc1QjhcdTc1QkNcdTc1QjFcdTc1Q0RcdTc1Q0FcdTc1RDJcdTc1RDlcdTc1RTNcdTc1REVcdTc1RkVcdTc1RkZcdTc1RkNcdTc2MDFcdTc1RjBcdTc1RkFcdTc1RjJcdTc1RjNcdTc2MEJcdTc2MERcdTc2MDlcdTc2MUZcdTc2MjdcdTc2MjBcdTc2MjFcdTc2MjJcdTc2MjRcdTc2MzRcdTc2MzBcdTc2M0JcdTc2NDdcdTc2NDhcdTc2NDZcdTc2NUNcdTc2NThcdTc2NjFcdTc2NjJcdTc2NjhcdTc2NjlcdTc2NkFcdTc2NjdcdTc2NkNcdTc2NzBcIl0sXG5bXCJlMmExXCIsXCJcdTc2NzJcdTc2NzZcdTc2NzhcdTc2N0NcdTc2ODBcdTc2ODNcdTc2ODhcdTc2OEJcdTc2OEVcdTc2OTZcdTc2OTNcdTc2OTlcdTc2OUFcdTc2QjBcdTc2QjRcdTc2QjhcdTc2QjlcdTc2QkFcdTc2QzJcdTc2Q0RcdTc2RDZcdTc2RDJcdTc2REVcdTc2RTFcdTc2RTVcdTc2RTdcdTc2RUFcdTg2MkZcdTc2RkJcdTc3MDhcdTc3MDdcdTc3MDRcdTc3MjlcdTc3MjRcdTc3MUVcdTc3MjVcdTc3MjZcdTc3MUJcdTc3MzdcdTc3MzhcdTc3NDdcdTc3NUFcdTc3NjhcdTc3NkJcdTc3NUJcdTc3NjVcdTc3N0ZcdTc3N0VcdTc3NzlcdTc3OEVcdTc3OEJcdTc3OTFcdTc3QTBcdTc3OUVcdTc3QjBcdTc3QjZcdTc3QjlcdTc3QkZcdTc3QkNcdTc3QkRcdTc3QkJcdTc3QzdcdTc3Q0RcdTc3RDdcdTc3REFcdTc3RENcdTc3RTNcdTc3RUVcdTc3RkNcdTc4MENcdTc4MTJcdTc5MjZcdTc4MjBcdTc5MkFcdTc4NDVcdTc4OEVcdTc4NzRcdTc4ODZcdTc4N0NcdTc4OUFcdTc4OENcdTc4QTNcdTc4QjVcdTc4QUFcdTc4QUZcdTc4RDFcdTc4QzZcdTc4Q0JcdTc4RDRcdTc4QkVcdTc4QkNcdTc4QzVcdTc4Q0FcdTc4RUNcIl0sXG5bXCJlM2ExXCIsXCJcdTc4RTdcdTc4REFcdTc4RkRcdTc4RjRcdTc5MDdcdTc5MTJcdTc5MTFcdTc5MTlcdTc5MkNcdTc5MkJcdTc5NDBcdTc5NjBcdTc5NTdcdTc5NUZcdTc5NUFcdTc5NTVcdTc5NTNcdTc5N0FcdTc5N0ZcdTc5OEFcdTc5OURcdTc5QTdcdTlGNEJcdTc5QUFcdTc5QUVcdTc5QjNcdTc5QjlcdTc5QkFcdTc5QzlcdTc5RDVcdTc5RTdcdTc5RUNcdTc5RTFcdTc5RTNcdTdBMDhcdTdBMERcdTdBMThcdTdBMTlcdTdBMjBcdTdBMUZcdTc5ODBcdTdBMzFcdTdBM0JcdTdBM0VcdTdBMzdcdTdBNDNcdTdBNTdcdTdBNDlcdTdBNjFcdTdBNjJcdTdBNjlcdTlGOURcdTdBNzBcdTdBNzlcdTdBN0RcdTdBODhcdTdBOTdcdTdBOTVcdTdBOThcdTdBOTZcdTdBQTlcdTdBQzhcdTdBQjBcdTdBQjZcdTdBQzVcdTdBQzRcdTdBQkZcdTkwODNcdTdBQzdcdTdBQ0FcdTdBQ0RcdTdBQ0ZcdTdBRDVcdTdBRDNcdTdBRDlcdTdBREFcdTdBRERcdTdBRTFcdTdBRTJcdTdBRTZcdTdBRURcdTdBRjBcdTdCMDJcdTdCMEZcdTdCMEFcdTdCMDZcdTdCMzNcdTdCMThcdTdCMTlcdTdCMUVcdTdCMzVcdTdCMjhcdTdCMzZcdTdCNTBcIl0sXG5bXCJlNGExXCIsXCJcdTdCN0FcdTdCMDRcdTdCNERcdTdCMEJcdTdCNENcdTdCNDVcdTdCNzVcdTdCNjVcdTdCNzRcdTdCNjdcdTdCNzBcdTdCNzFcdTdCNkNcdTdCNkVcdTdCOURcdTdCOThcdTdCOUZcdTdCOERcdTdCOUNcdTdCOUFcdTdCOEJcdTdCOTJcdTdCOEZcdTdCNURcdTdCOTlcdTdCQ0JcdTdCQzFcdTdCQ0NcdTdCQ0ZcdTdCQjRcdTdCQzZcdTdCRERcdTdCRTlcdTdDMTFcdTdDMTRcdTdCRTZcdTdCRTVcdTdDNjBcdTdDMDBcdTdDMDdcdTdDMTNcdTdCRjNcdTdCRjdcdTdDMTdcdTdDMERcdTdCRjZcdTdDMjNcdTdDMjdcdTdDMkFcdTdDMUZcdTdDMzdcdTdDMkJcdTdDM0RcdTdDNENcdTdDNDNcdTdDNTRcdTdDNEZcdTdDNDBcdTdDNTBcdTdDNThcdTdDNUZcdTdDNjRcdTdDNTZcdTdDNjVcdTdDNkNcdTdDNzVcdTdDODNcdTdDOTBcdTdDQTRcdTdDQURcdTdDQTJcdTdDQUJcdTdDQTFcdTdDQThcdTdDQjNcdTdDQjJcdTdDQjFcdTdDQUVcdTdDQjlcdTdDQkRcdTdDQzBcdTdDQzVcdTdDQzJcdTdDRDhcdTdDRDJcdTdDRENcdTdDRTJcdTlCM0JcdTdDRUZcdTdDRjJcdTdDRjRcdTdDRjZcdTdDRkFcdTdEMDZcIl0sXG5bXCJlNWExXCIsXCJcdTdEMDJcdTdEMUNcdTdEMTVcdTdEMEFcdTdENDVcdTdENEJcdTdEMkVcdTdEMzJcdTdEM0ZcdTdEMzVcdTdENDZcdTdENzNcdTdENTZcdTdENEVcdTdENzJcdTdENjhcdTdENkVcdTdENEZcdTdENjNcdTdEOTNcdTdEODlcdTdENUJcdTdEOEZcdTdEN0RcdTdEOUJcdTdEQkFcdTdEQUVcdTdEQTNcdTdEQjVcdTdEQzdcdTdEQkRcdTdEQUJcdTdFM0RcdTdEQTJcdTdEQUZcdTdERENcdTdEQjhcdTdEOUZcdTdEQjBcdTdERDhcdTdERERcdTdERTRcdTdEREVcdTdERkJcdTdERjJcdTdERTFcdTdFMDVcdTdFMEFcdTdFMjNcdTdFMjFcdTdFMTJcdTdFMzFcdTdFMUZcdTdFMDlcdTdFMEJcdTdFMjJcdTdFNDZcdTdFNjZcdTdFM0JcdTdFMzVcdTdFMzlcdTdFNDNcdTdFMzdcdTdFMzJcdTdFM0FcdTdFNjdcdTdFNURcdTdFNTZcdTdFNUVcdTdFNTlcdTdFNUFcdTdFNzlcdTdFNkFcdTdFNjlcdTdFN0NcdTdFN0JcdTdFODNcdTdERDVcdTdFN0RcdThGQUVcdTdFN0ZcdTdFODhcdTdFODlcdTdFOENcdTdFOTJcdTdFOTBcdTdFOTNcdTdFOTRcdTdFOTZcdTdFOEVcdTdFOUJcdTdFOUNcdTdGMzhcdTdGM0FcIl0sXG5bXCJlNmExXCIsXCJcdTdGNDVcdTdGNENcdTdGNERcdTdGNEVcdTdGNTBcdTdGNTFcdTdGNTVcdTdGNTRcdTdGNThcdTdGNUZcdTdGNjBcdTdGNjhcdTdGNjlcdTdGNjdcdTdGNzhcdTdGODJcdTdGODZcdTdGODNcdTdGODhcdTdGODdcdTdGOENcdTdGOTRcdTdGOUVcdTdGOURcdTdGOUFcdTdGQTNcdTdGQUZcdTdGQjJcdTdGQjlcdTdGQUVcdTdGQjZcdTdGQjhcdThCNzFcdTdGQzVcdTdGQzZcdTdGQ0FcdTdGRDVcdTdGRDRcdTdGRTFcdTdGRTZcdTdGRTlcdTdGRjNcdTdGRjlcdTk4RENcdTgwMDZcdTgwMDRcdTgwMEJcdTgwMTJcdTgwMThcdTgwMTlcdTgwMUNcdTgwMjFcdTgwMjhcdTgwM0ZcdTgwM0JcdTgwNEFcdTgwNDZcdTgwNTJcdTgwNThcdTgwNUFcdTgwNUZcdTgwNjJcdTgwNjhcdTgwNzNcdTgwNzJcdTgwNzBcdTgwNzZcdTgwNzlcdTgwN0RcdTgwN0ZcdTgwODRcdTgwODZcdTgwODVcdTgwOUJcdTgwOTNcdTgwOUFcdTgwQURcdTUxOTBcdTgwQUNcdTgwREJcdTgwRTVcdTgwRDlcdTgwRERcdTgwQzRcdTgwREFcdTgwRDZcdTgxMDlcdTgwRUZcdTgwRjFcdTgxMUJcdTgxMjlcdTgxMjNcdTgxMkZcdTgxNEJcIl0sXG5bXCJlN2ExXCIsXCJcdTk2OEJcdTgxNDZcdTgxM0VcdTgxNTNcdTgxNTFcdTgwRkNcdTgxNzFcdTgxNkVcdTgxNjVcdTgxNjZcdTgxNzRcdTgxODNcdTgxODhcdTgxOEFcdTgxODBcdTgxODJcdTgxQTBcdTgxOTVcdTgxQTRcdTgxQTNcdTgxNUZcdTgxOTNcdTgxQTlcdTgxQjBcdTgxQjVcdTgxQkVcdTgxQjhcdTgxQkRcdTgxQzBcdTgxQzJcdTgxQkFcdTgxQzlcdTgxQ0RcdTgxRDFcdTgxRDlcdTgxRDhcdTgxQzhcdTgxREFcdTgxREZcdTgxRTBcdTgxRTdcdTgxRkFcdTgxRkJcdTgxRkVcdTgyMDFcdTgyMDJcdTgyMDVcdTgyMDdcdTgyMEFcdTgyMERcdTgyMTBcdTgyMTZcdTgyMjlcdTgyMkJcdTgyMzhcdTgyMzNcdTgyNDBcdTgyNTlcdTgyNThcdTgyNURcdTgyNUFcdTgyNUZcdTgyNjRcdTgyNjJcdTgyNjhcdTgyNkFcdTgyNkJcdTgyMkVcdTgyNzFcdTgyNzdcdTgyNzhcdTgyN0VcdTgyOERcdTgyOTJcdTgyQUJcdTgyOUZcdTgyQkJcdTgyQUNcdTgyRTFcdTgyRTNcdTgyREZcdTgyRDJcdTgyRjRcdTgyRjNcdTgyRkFcdTgzOTNcdTgzMDNcdTgyRkJcdTgyRjlcdTgyREVcdTgzMDZcdTgyRENcdTgzMDlcdTgyRDlcIl0sXG5bXCJlOGExXCIsXCJcdTgzMzVcdTgzMzRcdTgzMTZcdTgzMzJcdTgzMzFcdTgzNDBcdTgzMzlcdTgzNTBcdTgzNDVcdTgzMkZcdTgzMkJcdTgzMTdcdTgzMThcdTgzODVcdTgzOUFcdTgzQUFcdTgzOUZcdTgzQTJcdTgzOTZcdTgzMjNcdTgzOEVcdTgzODdcdTgzOEFcdTgzN0NcdTgzQjVcdTgzNzNcdTgzNzVcdTgzQTBcdTgzODlcdTgzQThcdTgzRjRcdTg0MTNcdTgzRUJcdTgzQ0VcdTgzRkRcdTg0MDNcdTgzRDhcdTg0MEJcdTgzQzFcdTgzRjdcdTg0MDdcdTgzRTBcdTgzRjJcdTg0MERcdTg0MjJcdTg0MjBcdTgzQkRcdTg0MzhcdTg1MDZcdTgzRkJcdTg0NkRcdTg0MkFcdTg0M0NcdTg1NUFcdTg0ODRcdTg0NzdcdTg0NkJcdTg0QURcdTg0NkVcdTg0ODJcdTg0NjlcdTg0NDZcdTg0MkNcdTg0NkZcdTg0NzlcdTg0MzVcdTg0Q0FcdTg0NjJcdTg0QjlcdTg0QkZcdTg0OUZcdTg0RDlcdTg0Q0RcdTg0QkJcdTg0REFcdTg0RDBcdTg0QzFcdTg0QzZcdTg0RDZcdTg0QTFcdTg1MjFcdTg0RkZcdTg0RjRcdTg1MTdcdTg1MThcdTg1MkNcdTg1MUZcdTg1MTVcdTg1MTRcdTg0RkNcdTg1NDBcdTg1NjNcdTg1NThcdTg1NDhcIl0sXG5bXCJlOWExXCIsXCJcdTg1NDFcdTg2MDJcdTg1NEJcdTg1NTVcdTg1ODBcdTg1QTRcdTg1ODhcdTg1OTFcdTg1OEFcdTg1QThcdTg1NkRcdTg1OTRcdTg1OUJcdTg1RUFcdTg1ODdcdTg1OUNcdTg1NzdcdTg1N0VcdTg1OTBcdTg1QzlcdTg1QkFcdTg1Q0ZcdTg1QjlcdTg1RDBcdTg1RDVcdTg1RERcdTg1RTVcdTg1RENcdTg1RjlcdTg2MEFcdTg2MTNcdTg2MEJcdTg1RkVcdTg1RkFcdTg2MDZcdTg2MjJcdTg2MUFcdTg2MzBcdTg2M0ZcdTg2NERcdTRFNTVcdTg2NTRcdTg2NUZcdTg2NjdcdTg2NzFcdTg2OTNcdTg2QTNcdTg2QTlcdTg2QUFcdTg2OEJcdTg2OENcdTg2QjZcdTg2QUZcdTg2QzRcdTg2QzZcdTg2QjBcdTg2QzlcdTg4MjNcdTg2QUJcdTg2RDRcdTg2REVcdTg2RTlcdTg2RUNcdTg2REZcdTg2REJcdTg2RUZcdTg3MTJcdTg3MDZcdTg3MDhcdTg3MDBcdTg3MDNcdTg2RkJcdTg3MTFcdTg3MDlcdTg3MERcdTg2RjlcdTg3MEFcdTg3MzRcdTg3M0ZcdTg3MzdcdTg3M0JcdTg3MjVcdTg3MjlcdTg3MUFcdTg3NjBcdTg3NUZcdTg3NzhcdTg3NENcdTg3NEVcdTg3NzRcdTg3NTdcdTg3NjhcdTg3NkVcdTg3NTlcIl0sXG5bXCJlYWExXCIsXCJcdTg3NTNcdTg3NjNcdTg3NkFcdTg4MDVcdTg3QTJcdTg3OUZcdTg3ODJcdTg3QUZcdTg3Q0JcdTg3QkRcdTg3QzBcdTg3RDBcdTk2RDZcdTg3QUJcdTg3QzRcdTg3QjNcdTg3QzdcdTg3QzZcdTg3QkJcdTg3RUZcdTg3RjJcdTg3RTBcdTg4MEZcdTg4MERcdTg3RkVcdTg3RjZcdTg3RjdcdTg4MEVcdTg3RDJcdTg4MTFcdTg4MTZcdTg4MTVcdTg4MjJcdTg4MjFcdTg4MzFcdTg4MzZcdTg4MzlcdTg4MjdcdTg4M0JcdTg4NDRcdTg4NDJcdTg4NTJcdTg4NTlcdTg4NUVcdTg4NjJcdTg4NkJcdTg4ODFcdTg4N0VcdTg4OUVcdTg4NzVcdTg4N0RcdTg4QjVcdTg4NzJcdTg4ODJcdTg4OTdcdTg4OTJcdTg4QUVcdTg4OTlcdTg4QTJcdTg4OERcdTg4QTRcdTg4QjBcdTg4QkZcdTg4QjFcdTg4QzNcdTg4QzRcdTg4RDRcdTg4RDhcdTg4RDlcdTg4RERcdTg4RjlcdTg5MDJcdTg4RkNcdTg4RjRcdTg4RThcdTg4RjJcdTg5MDRcdTg5MENcdTg5MEFcdTg5MTNcdTg5NDNcdTg5MUVcdTg5MjVcdTg5MkFcdTg5MkJcdTg5NDFcdTg5NDRcdTg5M0JcdTg5MzZcdTg5MzhcdTg5NENcdTg5MURcdTg5NjBcdTg5NUVcIl0sXG5bXCJlYmExXCIsXCJcdTg5NjZcdTg5NjRcdTg5NkRcdTg5NkFcdTg5NkZcdTg5NzRcdTg5NzdcdTg5N0VcdTg5ODNcdTg5ODhcdTg5OEFcdTg5OTNcdTg5OThcdTg5QTFcdTg5QTlcdTg5QTZcdTg5QUNcdTg5QUZcdTg5QjJcdTg5QkFcdTg5QkRcdTg5QkZcdTg5QzBcdTg5REFcdTg5RENcdTg5RERcdTg5RTdcdTg5RjRcdTg5RjhcdThBMDNcdThBMTZcdThBMTBcdThBMENcdThBMUJcdThBMURcdThBMjVcdThBMzZcdThBNDFcdThBNUJcdThBNTJcdThBNDZcdThBNDhcdThBN0NcdThBNkRcdThBNkNcdThBNjJcdThBODVcdThBODJcdThBODRcdThBQThcdThBQTFcdThBOTFcdThBQTVcdThBQTZcdThBOUFcdThBQTNcdThBQzRcdThBQ0RcdThBQzJcdThBREFcdThBRUJcdThBRjNcdThBRTdcdThBRTRcdThBRjFcdThCMTRcdThBRTBcdThBRTJcdThBRjdcdThBREVcdThBREJcdThCMENcdThCMDdcdThCMUFcdThBRTFcdThCMTZcdThCMTBcdThCMTdcdThCMjBcdThCMzNcdTk3QUJcdThCMjZcdThCMkJcdThCM0VcdThCMjhcdThCNDFcdThCNENcdThCNEZcdThCNEVcdThCNDlcdThCNTZcdThCNUJcdThCNUFcdThCNkJcIl0sXG5bXCJlY2ExXCIsXCJcdThCNUZcdThCNkNcdThCNkZcdThCNzRcdThCN0RcdThCODBcdThCOENcdThCOEVcdThCOTJcdThCOTNcdThCOTZcdThCOTlcdThCOUFcdThDM0FcdThDNDFcdThDM0ZcdThDNDhcdThDNENcdThDNEVcdThDNTBcdThDNTVcdThDNjJcdThDNkNcdThDNzhcdThDN0FcdThDODJcdThDODlcdThDODVcdThDOEFcdThDOERcdThDOEVcdThDOTRcdThDN0NcdThDOThcdTYyMURcdThDQURcdThDQUFcdThDQkRcdThDQjJcdThDQjNcdThDQUVcdThDQjZcdThDQzhcdThDQzFcdThDRTRcdThDRTNcdThDREFcdThDRkRcdThDRkFcdThDRkJcdThEMDRcdThEMDVcdThEMEFcdThEMDdcdThEMEZcdThEMERcdThEMTBcdTlGNEVcdThEMTNcdThDQ0RcdThEMTRcdThEMTZcdThENjdcdThENkRcdThENzFcdThENzNcdThEODFcdThEOTlcdThEQzJcdThEQkVcdThEQkFcdThEQ0ZcdThEREFcdThERDZcdThEQ0NcdThEREJcdThEQ0JcdThERUFcdThERUJcdThEREZcdThERTNcdThERkNcdThFMDhcdThFMDlcdThERkZcdThFMURcdThFMUVcdThFMTBcdThFMUZcdThFNDJcdThFMzVcdThFMzBcdThFMzRcdThFNEFcIl0sXG5bXCJlZGExXCIsXCJcdThFNDdcdThFNDlcdThFNENcdThFNTBcdThFNDhcdThFNTlcdThFNjRcdThFNjBcdThFMkFcdThFNjNcdThFNTVcdThFNzZcdThFNzJcdThFN0NcdThFODFcdThFODdcdThFODVcdThFODRcdThFOEJcdThFOEFcdThFOTNcdThFOTFcdThFOTRcdThFOTlcdThFQUFcdThFQTFcdThFQUNcdThFQjBcdThFQzZcdThFQjFcdThFQkVcdThFQzVcdThFQzhcdThFQ0JcdThFREJcdThFRTNcdThFRkNcdThFRkJcdThFRUJcdThFRkVcdThGMEFcdThGMDVcdThGMTVcdThGMTJcdThGMTlcdThGMTNcdThGMUNcdThGMUZcdThGMUJcdThGMENcdThGMjZcdThGMzNcdThGM0JcdThGMzlcdThGNDVcdThGNDJcdThGM0VcdThGNENcdThGNDlcdThGNDZcdThGNEVcdThGNTdcdThGNUNcdThGNjJcdThGNjNcdThGNjRcdThGOUNcdThGOUZcdThGQTNcdThGQURcdThGQUZcdThGQjdcdThGREFcdThGRTVcdThGRTJcdThGRUFcdThGRUZcdTkwODdcdThGRjRcdTkwMDVcdThGRjlcdThGRkFcdTkwMTFcdTkwMTVcdTkwMjFcdTkwMERcdTkwMUVcdTkwMTZcdTkwMEJcdTkwMjdcdTkwMzZcdTkwMzVcdTkwMzlcdThGRjhcIl0sXG5bXCJlZWExXCIsXCJcdTkwNEZcdTkwNTBcdTkwNTFcdTkwNTJcdTkwMEVcdTkwNDlcdTkwM0VcdTkwNTZcdTkwNThcdTkwNUVcdTkwNjhcdTkwNkZcdTkwNzZcdTk2QThcdTkwNzJcdTkwODJcdTkwN0RcdTkwODFcdTkwODBcdTkwOEFcdTkwODlcdTkwOEZcdTkwQThcdTkwQUZcdTkwQjFcdTkwQjVcdTkwRTJcdTkwRTRcdTYyNDhcdTkwREJcdTkxMDJcdTkxMTJcdTkxMTlcdTkxMzJcdTkxMzBcdTkxNEFcdTkxNTZcdTkxNThcdTkxNjNcdTkxNjVcdTkxNjlcdTkxNzNcdTkxNzJcdTkxOEJcdTkxODlcdTkxODJcdTkxQTJcdTkxQUJcdTkxQUZcdTkxQUFcdTkxQjVcdTkxQjRcdTkxQkFcdTkxQzBcdTkxQzFcdTkxQzlcdTkxQ0JcdTkxRDBcdTkxRDZcdTkxREZcdTkxRTFcdTkxREJcdTkxRkNcdTkxRjVcdTkxRjZcdTkyMUVcdTkxRkZcdTkyMTRcdTkyMkNcdTkyMTVcdTkyMTFcdTkyNUVcdTkyNTdcdTkyNDVcdTkyNDlcdTkyNjRcdTkyNDhcdTkyOTVcdTkyM0ZcdTkyNEJcdTkyNTBcdTkyOUNcdTkyOTZcdTkyOTNcdTkyOUJcdTkyNUFcdTkyQ0ZcdTkyQjlcdTkyQjdcdTkyRTlcdTkzMEZcdTkyRkFcdTkzNDRcdTkzMkVcIl0sXG5bXCJlZmExXCIsXCJcdTkzMTlcdTkzMjJcdTkzMUFcdTkzMjNcdTkzM0FcdTkzMzVcdTkzM0JcdTkzNUNcdTkzNjBcdTkzN0NcdTkzNkVcdTkzNTZcdTkzQjBcdTkzQUNcdTkzQURcdTkzOTRcdTkzQjlcdTkzRDZcdTkzRDdcdTkzRThcdTkzRTVcdTkzRDhcdTkzQzNcdTkzRERcdTkzRDBcdTkzQzhcdTkzRTRcdTk0MUFcdTk0MTRcdTk0MTNcdTk0MDNcdTk0MDdcdTk0MTBcdTk0MzZcdTk0MkJcdTk0MzVcdTk0MjFcdTk0M0FcdTk0NDFcdTk0NTJcdTk0NDRcdTk0NUJcdTk0NjBcdTk0NjJcdTk0NUVcdTk0NkFcdTkyMjlcdTk0NzBcdTk0NzVcdTk0NzdcdTk0N0RcdTk0NUFcdTk0N0NcdTk0N0VcdTk0ODFcdTk0N0ZcdTk1ODJcdTk1ODdcdTk1OEFcdTk1OTRcdTk1OTZcdTk1OThcdTk1OTlcdTk1QTBcdTk1QThcdTk1QTdcdTk1QURcdTk1QkNcdTk1QkJcdTk1QjlcdTk1QkVcdTk1Q0FcdTZGRjZcdTk1QzNcdTk1Q0RcdTk1Q0NcdTk1RDVcdTk1RDRcdTk1RDZcdTk1RENcdTk1RTFcdTk1RTVcdTk1RTJcdTk2MjFcdTk2MjhcdTk2MkVcdTk2MkZcdTk2NDJcdTk2NENcdTk2NEZcdTk2NEJcdTk2NzdcdTk2NUNcdTk2NUVcIl0sXG5bXCJmMGExXCIsXCJcdTk2NURcdTk2NUZcdTk2NjZcdTk2NzJcdTk2NkNcdTk2OERcdTk2OThcdTk2OTVcdTk2OTdcdTk2QUFcdTk2QTdcdTk2QjFcdTk2QjJcdTk2QjBcdTk2QjRcdTk2QjZcdTk2QjhcdTk2QjlcdTk2Q0VcdTk2Q0JcdTk2QzlcdTk2Q0RcdTg5NERcdTk2RENcdTk3MERcdTk2RDVcdTk2RjlcdTk3MDRcdTk3MDZcdTk3MDhcdTk3MTNcdTk3MEVcdTk3MTFcdTk3MEZcdTk3MTZcdTk3MTlcdTk3MjRcdTk3MkFcdTk3MzBcdTk3MzlcdTk3M0RcdTk3M0VcdTk3NDRcdTk3NDZcdTk3NDhcdTk3NDJcdTk3NDlcdTk3NUNcdTk3NjBcdTk3NjRcdTk3NjZcdTk3NjhcdTUyRDJcdTk3NkJcdTk3NzFcdTk3NzlcdTk3ODVcdTk3N0NcdTk3ODFcdTk3N0FcdTk3ODZcdTk3OEJcdTk3OEZcdTk3OTBcdTk3OUNcdTk3QThcdTk3QTZcdTk3QTNcdTk3QjNcdTk3QjRcdTk3QzNcdTk3QzZcdTk3QzhcdTk3Q0JcdTk3RENcdTk3RURcdTlGNEZcdTk3RjJcdTdBREZcdTk3RjZcdTk3RjVcdTk4MEZcdTk4MENcdTk4MzhcdTk4MjRcdTk4MjFcdTk4MzdcdTk4M0RcdTk4NDZcdTk4NEZcdTk4NEJcdTk4NkJcdTk4NkZcdTk4NzBcIl0sXG5bXCJmMWExXCIsXCJcdTk4NzFcdTk4NzRcdTk4NzNcdTk4QUFcdTk4QUZcdTk4QjFcdTk4QjZcdTk4QzRcdTk4QzNcdTk4QzZcdTk4RTlcdTk4RUJcdTk5MDNcdTk5MDlcdTk5MTJcdTk5MTRcdTk5MThcdTk5MjFcdTk5MURcdTk5MUVcdTk5MjRcdTk5MjBcdTk5MkNcdTk5MkVcdTk5M0RcdTk5M0VcdTk5NDJcdTk5NDlcdTk5NDVcdTk5NTBcdTk5NEJcdTk5NTFcdTk5NTJcdTk5NENcdTk5NTVcdTk5OTdcdTk5OThcdTk5QTVcdTk5QURcdTk5QUVcdTk5QkNcdTk5REZcdTk5REJcdTk5RERcdTk5RDhcdTk5RDFcdTk5RURcdTk5RUVcdTk5RjFcdTk5RjJcdTk5RkJcdTk5RjhcdTlBMDFcdTlBMEZcdTlBMDVcdTk5RTJcdTlBMTlcdTlBMkJcdTlBMzdcdTlBNDVcdTlBNDJcdTlBNDBcdTlBNDNcdTlBM0VcdTlBNTVcdTlBNERcdTlBNUJcdTlBNTdcdTlBNUZcdTlBNjJcdTlBNjVcdTlBNjRcdTlBNjlcdTlBNkJcdTlBNkFcdTlBQURcdTlBQjBcdTlBQkNcdTlBQzBcdTlBQ0ZcdTlBRDFcdTlBRDNcdTlBRDRcdTlBREVcdTlBREZcdTlBRTJcdTlBRTNcdTlBRTZcdTlBRUZcdTlBRUJcdTlBRUVcdTlBRjRcdTlBRjFcdTlBRjdcIl0sXG5bXCJmMmExXCIsXCJcdTlBRkJcdTlCMDZcdTlCMThcdTlCMUFcdTlCMUZcdTlCMjJcdTlCMjNcdTlCMjVcdTlCMjdcdTlCMjhcdTlCMjlcdTlCMkFcdTlCMkVcdTlCMkZcdTlCMzJcdTlCNDRcdTlCNDNcdTlCNEZcdTlCNERcdTlCNEVcdTlCNTFcdTlCNThcdTlCNzRcdTlCOTNcdTlCODNcdTlCOTFcdTlCOTZcdTlCOTdcdTlCOUZcdTlCQTBcdTlCQThcdTlCQjRcdTlCQzBcdTlCQ0FcdTlCQjlcdTlCQzZcdTlCQ0ZcdTlCRDFcdTlCRDJcdTlCRTNcdTlCRTJcdTlCRTRcdTlCRDRcdTlCRTFcdTlDM0FcdTlCRjJcdTlCRjFcdTlCRjBcdTlDMTVcdTlDMTRcdTlDMDlcdTlDMTNcdTlDMENcdTlDMDZcdTlDMDhcdTlDMTJcdTlDMEFcdTlDMDRcdTlDMkVcdTlDMUJcdTlDMjVcdTlDMjRcdTlDMjFcdTlDMzBcdTlDNDdcdTlDMzJcdTlDNDZcdTlDM0VcdTlDNUFcdTlDNjBcdTlDNjdcdTlDNzZcdTlDNzhcdTlDRTdcdTlDRUNcdTlDRjBcdTlEMDlcdTlEMDhcdTlDRUJcdTlEMDNcdTlEMDZcdTlEMkFcdTlEMjZcdTlEQUZcdTlEMjNcdTlEMUZcdTlENDRcdTlEMTVcdTlEMTJcdTlENDFcdTlEM0ZcdTlEM0VcdTlENDZcdTlENDhcIl0sXG5bXCJmM2ExXCIsXCJcdTlENURcdTlENUVcdTlENjRcdTlENTFcdTlENTBcdTlENTlcdTlENzJcdTlEODlcdTlEODdcdTlEQUJcdTlENkZcdTlEN0FcdTlEOUFcdTlEQTRcdTlEQTlcdTlEQjJcdTlEQzRcdTlEQzFcdTlEQkJcdTlEQjhcdTlEQkFcdTlEQzZcdTlEQ0ZcdTlEQzJcdTlERDlcdTlERDNcdTlERjhcdTlERTZcdTlERURcdTlERUZcdTlERkRcdTlFMUFcdTlFMUJcdTlFMUVcdTlFNzVcdTlFNzlcdTlFN0RcdTlFODFcdTlFODhcdTlFOEJcdTlFOENcdTlFOTJcdTlFOTVcdTlFOTFcdTlFOURcdTlFQTVcdTlFQTlcdTlFQjhcdTlFQUFcdTlFQURcdTk3NjFcdTlFQ0NcdTlFQ0VcdTlFQ0ZcdTlFRDBcdTlFRDRcdTlFRENcdTlFREVcdTlFRERcdTlFRTBcdTlFRTVcdTlFRThcdTlFRUZcdTlFRjRcdTlFRjZcdTlFRjdcdTlFRjlcdTlFRkJcdTlFRkNcdTlFRkRcdTlGMDdcdTlGMDhcdTc2QjdcdTlGMTVcdTlGMjFcdTlGMkNcdTlGM0VcdTlGNEFcdTlGNTJcdTlGNTRcdTlGNjNcdTlGNUZcdTlGNjBcdTlGNjFcdTlGNjZcdTlGNjdcdTlGNkNcdTlGNkFcdTlGNzdcdTlGNzJcdTlGNzZcdTlGOTVcdTlGOUNcdTlGQTBcIl0sXG5bXCJmNGExXCIsXCJcdTU4MkZcdTY5QzdcdTkwNTlcdTc0NjRcdTUxRENcdTcxOTlcIl0sXG5bXCJmOWExXCIsXCJcdTdFOEFcdTg5MUNcdTkzNDhcdTkyODhcdTg0RENcdTRGQzlcdTcwQkJcdTY2MzFcdTY4QzhcdTkyRjlcdTY2RkJcdTVGNDVcdTRFMjhcdTRFRTFcdTRFRkNcdTRGMDBcdTRGMDNcdTRGMzlcdTRGNTZcdTRGOTJcdTRGOEFcdTRGOUFcdTRGOTRcdTRGQ0RcdTUwNDBcdTUwMjJcdTRGRkZcdTUwMUVcdTUwNDZcdTUwNzBcdTUwNDJcdTUwOTRcdTUwRjRcdTUwRDhcdTUxNEFcdTUxNjRcdTUxOURcdTUxQkVcdTUxRUNcdTUyMTVcdTUyOUNcdTUyQTZcdTUyQzBcdTUyREJcdTUzMDBcdTUzMDdcdTUzMjRcdTUzNzJcdTUzOTNcdTUzQjJcdTUzRERcdUZBMEVcdTU0OUNcdTU0OEFcdTU0QTlcdTU0RkZcdTU1ODZcdTU3NTlcdTU3NjVcdTU3QUNcdTU3QzhcdTU3QzdcdUZBMEZcdUZBMTBcdTU4OUVcdTU4QjJcdTU5MEJcdTU5NTNcdTU5NUJcdTU5NURcdTU5NjNcdTU5QTRcdTU5QkFcdTVCNTZcdTVCQzBcdTc1MkZcdTVCRDhcdTVCRUNcdTVDMUVcdTVDQTZcdTVDQkFcdTVDRjVcdTVEMjdcdTVENTNcdUZBMTFcdTVENDJcdTVENkRcdTVEQjhcdTVEQjlcdTVERDBcdTVGMjFcdTVGMzRcdTVGNjdcdTVGQjdcIl0sXG5bXCJmYWExXCIsXCJcdTVGREVcdTYwNURcdTYwODVcdTYwOEFcdTYwREVcdTYwRDVcdTYxMjBcdTYwRjJcdTYxMTFcdTYxMzdcdTYxMzBcdTYxOThcdTYyMTNcdTYyQTZcdTYzRjVcdTY0NjBcdTY0OURcdTY0Q0VcdTY1NEVcdTY2MDBcdTY2MTVcdTY2M0JcdTY2MDlcdTY2MkVcdTY2MUVcdTY2MjRcdTY2NjVcdTY2NTdcdTY2NTlcdUZBMTJcdTY2NzNcdTY2OTlcdTY2QTBcdTY2QjJcdTY2QkZcdTY2RkFcdTY3MEVcdUY5MjlcdTY3NjZcdTY3QkJcdTY4NTJcdTY3QzBcdTY4MDFcdTY4NDRcdTY4Q0ZcdUZBMTNcdTY5NjhcdUZBMTRcdTY5OThcdTY5RTJcdTZBMzBcdTZBNkJcdTZBNDZcdTZBNzNcdTZBN0VcdTZBRTJcdTZBRTRcdTZCRDZcdTZDM0ZcdTZDNUNcdTZDODZcdTZDNkZcdTZDREFcdTZEMDRcdTZEODdcdTZENkZcdTZEOTZcdTZEQUNcdTZEQ0ZcdTZERjhcdTZERjJcdTZERkNcdTZFMzlcdTZFNUNcdTZFMjdcdTZFM0NcdTZFQkZcdTZGODhcdTZGQjVcdTZGRjVcdTcwMDVcdTcwMDdcdTcwMjhcdTcwODVcdTcwQUJcdTcxMEZcdTcxMDRcdTcxNUNcdTcxNDZcdTcxNDdcdUZBMTVcdTcxQzFcdTcxRkVcdTcyQjFcIl0sXG5bXCJmYmExXCIsXCJcdTcyQkVcdTczMjRcdUZBMTZcdTczNzdcdTczQkRcdTczQzlcdTczRDZcdTczRTNcdTczRDJcdTc0MDdcdTczRjVcdTc0MjZcdTc0MkFcdTc0MjlcdTc0MkVcdTc0NjJcdTc0ODlcdTc0OUZcdTc1MDFcdTc1NkZcdTc2ODJcdTc2OUNcdTc2OUVcdTc2OUJcdTc2QTZcdUZBMTdcdTc3NDZcdTUyQUZcdTc4MjFcdTc4NEVcdTc4NjRcdTc4N0FcdTc5MzBcdUZBMThcdUZBMTlcdUZBMUFcdTc5OTRcdUZBMUJcdTc5OUJcdTdBRDFcdTdBRTdcdUZBMUNcdTdBRUJcdTdCOUVcdUZBMURcdTdENDhcdTdENUNcdTdEQjdcdTdEQTBcdTdERDZcdTdFNTJcdTdGNDdcdTdGQTFcdUZBMUVcdTgzMDFcdTgzNjJcdTgzN0ZcdTgzQzdcdTgzRjZcdTg0NDhcdTg0QjRcdTg1NTNcdTg1NTlcdTg1NkJcdUZBMUZcdTg1QjBcdUZBMjBcdUZBMjFcdTg4MDdcdTg4RjVcdThBMTJcdThBMzdcdThBNzlcdThBQTdcdThBQkVcdThBREZcdUZBMjJcdThBRjZcdThCNTNcdThCN0ZcdThDRjBcdThDRjRcdThEMTJcdThENzZcdUZBMjNcdThFQ0ZcdUZBMjRcdUZBMjVcdTkwNjdcdTkwREVcdUZBMjZcdTkxMTVcdTkxMjdcdTkxREFcIl0sXG5bXCJmY2ExXCIsXCJcdTkxRDdcdTkxREVcdTkxRURcdTkxRUVcdTkxRTRcdTkxRTVcdTkyMDZcdTkyMTBcdTkyMEFcdTkyM0FcdTkyNDBcdTkyM0NcdTkyNEVcdTkyNTlcdTkyNTFcdTkyMzlcdTkyNjdcdTkyQTdcdTkyNzdcdTkyNzhcdTkyRTdcdTkyRDdcdTkyRDlcdTkyRDBcdUZBMjdcdTkyRDVcdTkyRTBcdTkyRDNcdTkzMjVcdTkzMjFcdTkyRkJcdUZBMjhcdTkzMUVcdTkyRkZcdTkzMURcdTkzMDJcdTkzNzBcdTkzNTdcdTkzQTRcdTkzQzZcdTkzREVcdTkzRjhcdTk0MzFcdTk0NDVcdTk0NDhcdTk1OTJcdUY5RENcdUZBMjlcdTk2OURcdTk2QUZcdTk3MzNcdTk3M0JcdTk3NDNcdTk3NERcdTk3NEZcdTk3NTFcdTk3NTVcdTk4NTdcdTk4NjVcdUZBMkFcdUZBMkJcdTk5MjdcdUZBMkNcdTk5OUVcdTlBNEVcdTlBRDlcdTlBRENcdTlCNzVcdTlCNzJcdTlCOEZcdTlCQjFcdTlCQkJcdTlDMDBcdTlENzBcdTlENkJcdUZBMkRcdTlFMTlcdTlFRDFcIl0sXG5bXCJmY2YxXCIsXCJcdTIxNzBcIiw5LFwiXHVGRkUyXHVGRkU0XHVGRjA3XHVGRjAyXCJdLFxuW1wiOGZhMmFmXCIsXCJcdTAyRDhcdTAyQzdcdTAwQjhcdTAyRDlcdTAyRERcdTAwQUZcdTAyREJcdTAyREFcdUZGNUVcdTAzODRcdTAzODVcIl0sXG5bXCI4ZmEyYzJcIixcIlx1MDBBMVx1MDBBNlx1MDBCRlwiXSxcbltcIjhmYTJlYlwiLFwiXHUwMEJBXHUwMEFBXHUwMEE5XHUwMEFFXHUyMTIyXHUwMEE0XHUyMTE2XCJdLFxuW1wiOGZhNmUxXCIsXCJcdTAzODZcdTAzODhcdTAzODlcdTAzOEFcdTAzQUFcIl0sXG5bXCI4ZmE2ZTdcIixcIlx1MDM4Q1wiXSxcbltcIjhmYTZlOVwiLFwiXHUwMzhFXHUwM0FCXCJdLFxuW1wiOGZhNmVjXCIsXCJcdTAzOEZcIl0sXG5bXCI4ZmE2ZjFcIixcIlx1MDNBQ1x1MDNBRFx1MDNBRVx1MDNBRlx1MDNDQVx1MDM5MFx1MDNDQ1x1MDNDMlx1MDNDRFx1MDNDQlx1MDNCMFx1MDNDRVwiXSxcbltcIjhmYTdjMlwiLFwiXHUwNDAyXCIsMTAsXCJcdTA0MEVcdTA0MEZcIl0sXG5bXCI4ZmE3ZjJcIixcIlx1MDQ1MlwiLDEwLFwiXHUwNDVFXHUwNDVGXCJdLFxuW1wiOGZhOWExXCIsXCJcdTAwQzZcdTAxMTBcIl0sXG5bXCI4ZmE5YTRcIixcIlx1MDEyNlwiXSxcbltcIjhmYTlhNlwiLFwiXHUwMTMyXCJdLFxuW1wiOGZhOWE4XCIsXCJcdTAxNDFcdTAxM0ZcIl0sXG5bXCI4ZmE5YWJcIixcIlx1MDE0QVx1MDBEOFx1MDE1MlwiXSxcbltcIjhmYTlhZlwiLFwiXHUwMTY2XHUwMERFXCJdLFxuW1wiOGZhOWMxXCIsXCJcdTAwRTZcdTAxMTFcdTAwRjBcdTAxMjdcdTAxMzFcdTAxMzNcdTAxMzhcdTAxNDJcdTAxNDBcdTAxNDlcdTAxNEJcdTAwRjhcdTAxNTNcdTAwREZcdTAxNjdcdTAwRkVcIl0sXG5bXCI4ZmFhYTFcIixcIlx1MDBDMVx1MDBDMFx1MDBDNFx1MDBDMlx1MDEwMlx1MDFDRFx1MDEwMFx1MDEwNFx1MDBDNVx1MDBDM1x1MDEwNlx1MDEwOFx1MDEwQ1x1MDBDN1x1MDEwQVx1MDEwRVx1MDBDOVx1MDBDOFx1MDBDQlx1MDBDQVx1MDExQVx1MDExNlx1MDExMlx1MDExOFwiXSxcbltcIjhmYWFiYVwiLFwiXHUwMTFDXHUwMTFFXHUwMTIyXHUwMTIwXHUwMTI0XHUwMENEXHUwMENDXHUwMENGXHUwMENFXHUwMUNGXHUwMTMwXHUwMTJBXHUwMTJFXHUwMTI4XHUwMTM0XHUwMTM2XHUwMTM5XHUwMTNEXHUwMTNCXHUwMTQzXHUwMTQ3XHUwMTQ1XHUwMEQxXHUwMEQzXHUwMEQyXHUwMEQ2XHUwMEQ0XHUwMUQxXHUwMTUwXHUwMTRDXHUwMEQ1XHUwMTU0XHUwMTU4XHUwMTU2XHUwMTVBXHUwMTVDXHUwMTYwXHUwMTVFXHUwMTY0XHUwMTYyXHUwMERBXHUwMEQ5XHUwMERDXHUwMERCXHUwMTZDXHUwMUQzXHUwMTcwXHUwMTZBXHUwMTcyXHUwMTZFXHUwMTY4XHUwMUQ3XHUwMURCXHUwMUQ5XHUwMUQ1XHUwMTc0XHUwMEREXHUwMTc4XHUwMTc2XHUwMTc5XHUwMTdEXHUwMTdCXCJdLFxuW1wiOGZhYmExXCIsXCJcdTAwRTFcdTAwRTBcdTAwRTRcdTAwRTJcdTAxMDNcdTAxQ0VcdTAxMDFcdTAxMDVcdTAwRTVcdTAwRTNcdTAxMDdcdTAxMDlcdTAxMERcdTAwRTdcdTAxMEJcdTAxMEZcdTAwRTlcdTAwRThcdTAwRUJcdTAwRUFcdTAxMUJcdTAxMTdcdTAxMTNcdTAxMTlcdTAxRjVcdTAxMURcdTAxMUZcIl0sXG5bXCI4ZmFiYmRcIixcIlx1MDEyMVx1MDEyNVx1MDBFRFx1MDBFQ1x1MDBFRlx1MDBFRVx1MDFEMFwiXSxcbltcIjhmYWJjNVwiLFwiXHUwMTJCXHUwMTJGXHUwMTI5XHUwMTM1XHUwMTM3XHUwMTNBXHUwMTNFXHUwMTNDXHUwMTQ0XHUwMTQ4XHUwMTQ2XHUwMEYxXHUwMEYzXHUwMEYyXHUwMEY2XHUwMEY0XHUwMUQyXHUwMTUxXHUwMTREXHUwMEY1XHUwMTU1XHUwMTU5XHUwMTU3XHUwMTVCXHUwMTVEXHUwMTYxXHUwMTVGXHUwMTY1XHUwMTYzXHUwMEZBXHUwMEY5XHUwMEZDXHUwMEZCXHUwMTZEXHUwMUQ0XHUwMTcxXHUwMTZCXHUwMTczXHUwMTZGXHUwMTY5XHUwMUQ4XHUwMURDXHUwMURBXHUwMUQ2XHUwMTc1XHUwMEZEXHUwMEZGXHUwMTc3XHUwMTdBXHUwMTdFXHUwMTdDXCJdLFxuW1wiOGZiMGExXCIsXCJcdTRFMDJcdTRFMDRcdTRFMDVcdTRFMENcdTRFMTJcdTRFMUZcdTRFMjNcdTRFMjRcdTRFMjhcdTRFMkJcdTRFMkVcdTRFMkZcdTRFMzBcdTRFMzVcdTRFNDBcdTRFNDFcdTRFNDRcdTRFNDdcdTRFNTFcdTRFNUFcdTRFNUNcdTRFNjNcdTRFNjhcdTRFNjlcdTRFNzRcdTRFNzVcdTRFNzlcdTRFN0ZcdTRFOERcdTRFOTZcdTRFOTdcdTRFOURcdTRFQUZcdTRFQjlcdTRFQzNcdTRFRDBcdTRFREFcdTRFREJcdTRFRTBcdTRFRTFcdTRFRTJcdTRFRThcdTRFRUZcdTRFRjFcdTRFRjNcdTRFRjVcdTRFRkRcdTRFRkVcdTRFRkZcdTRGMDBcdTRGMDJcdTRGMDNcdTRGMDhcdTRGMEJcdTRGMENcdTRGMTJcdTRGMTVcdTRGMTZcdTRGMTdcdTRGMTlcdTRGMkVcdTRGMzFcdTRGNjBcdTRGMzNcdTRGMzVcdTRGMzdcdTRGMzlcdTRGM0JcdTRGM0VcdTRGNDBcdTRGNDJcdTRGNDhcdTRGNDlcdTRGNEJcdTRGNENcdTRGNTJcdTRGNTRcdTRGNTZcdTRGNThcdTRGNUZcdTRGNjNcdTRGNkFcdTRGNkNcdTRGNkVcdTRGNzFcdTRGNzdcdTRGNzhcdTRGNzlcdTRGN0FcdTRGN0RcdTRGN0VcdTRGODFcdTRGODJcdTRGODRcIl0sXG5bXCI4ZmIxYTFcIixcIlx1NEY4NVx1NEY4OVx1NEY4QVx1NEY4Q1x1NEY4RVx1NEY5MFx1NEY5Mlx1NEY5M1x1NEY5NFx1NEY5N1x1NEY5OVx1NEY5QVx1NEY5RVx1NEY5Rlx1NEZCMlx1NEZCN1x1NEZCOVx1NEZCQlx1NEZCQ1x1NEZCRFx1NEZCRVx1NEZDMFx1NEZDMVx1NEZDNVx1NEZDNlx1NEZDOFx1NEZDOVx1NEZDQlx1NEZDQ1x1NEZDRFx1NEZDRlx1NEZEMlx1NEZEQ1x1NEZFMFx1NEZFMlx1NEZGMFx1NEZGMlx1NEZGQ1x1NEZGRFx1NEZGRlx1NTAwMFx1NTAwMVx1NTAwNFx1NTAwN1x1NTAwQVx1NTAwQ1x1NTAwRVx1NTAxMFx1NTAxM1x1NTAxN1x1NTAxOFx1NTAxQlx1NTAxQ1x1NTAxRFx1NTAxRVx1NTAyMlx1NTAyN1x1NTAyRVx1NTAzMFx1NTAzMlx1NTAzM1x1NTAzNVx1NTA0MFx1NTA0MVx1NTA0Mlx1NTA0NVx1NTA0Nlx1NTA0QVx1NTA0Q1x1NTA0RVx1NTA1MVx1NTA1Mlx1NTA1M1x1NTA1N1x1NTA1OVx1NTA1Rlx1NTA2MFx1NTA2Mlx1NTA2M1x1NTA2Nlx1NTA2N1x1NTA2QVx1NTA2RFx1NTA3MFx1NTA3MVx1NTAzQlx1NTA4MVx1NTA4M1x1NTA4NFx1NTA4Nlx1NTA4QVx1NTA4RVx1NTA4Rlx1NTA5MFwiXSxcbltcIjhmYjJhMVwiLFwiXHU1MDkyXHU1MDkzXHU1MDk0XHU1MDk2XHU1MDlCXHU1MDlDXHU1MDlFXCIsNCxcIlx1NTBBQVx1NTBBRlx1NTBCMFx1NTBCOVx1NTBCQVx1NTBCRFx1NTBDMFx1NTBDM1x1NTBDNFx1NTBDN1x1NTBDQ1x1NTBDRVx1NTBEMFx1NTBEM1x1NTBENFx1NTBEOFx1NTBEQ1x1NTBERFx1NTBERlx1NTBFMlx1NTBFNFx1NTBFNlx1NTBFOFx1NTBFOVx1NTBFRlx1NTBGMVx1NTBGNlx1NTBGQVx1NTBGRVx1NTEwM1x1NTEwNlx1NTEwN1x1NTEwOFx1NTEwQlx1NTEwQ1x1NTEwRFx1NTEwRVx1NTBGMlx1NTExMFx1NTExN1x1NTExOVx1NTExQlx1NTExQ1x1NTExRFx1NTExRVx1NTEyM1x1NTEyN1x1NTEyOFx1NTEyQ1x1NTEyRFx1NTEyRlx1NTEzMVx1NTEzM1x1NTEzNFx1NTEzNVx1NTEzOFx1NTEzOVx1NTE0Mlx1NTE0QVx1NTE0Rlx1NTE1M1x1NTE1NVx1NTE1N1x1NTE1OFx1NTE1Rlx1NTE2NFx1NTE2Nlx1NTE3RVx1NTE4M1x1NTE4NFx1NTE4Qlx1NTE4RVx1NTE5OFx1NTE5RFx1NTFBMVx1NTFBM1x1NTFBRFx1NTFCOFx1NTFCQVx1NTFCQ1x1NTFCRVx1NTFCRlx1NTFDMlwiXSxcbltcIjhmYjNhMVwiLFwiXHU1MUM4XHU1MUNGXHU1MUQxXHU1MUQyXHU1MUQzXHU1MUQ1XHU1MUQ4XHU1MURFXHU1MUUyXHU1MUU1XHU1MUVFXHU1MUYyXHU1MUYzXHU1MUY0XHU1MUY3XHU1MjAxXHU1MjAyXHU1MjA1XHU1MjEyXHU1MjEzXHU1MjE1XHU1MjE2XHU1MjE4XHU1MjIyXHU1MjI4XHU1MjMxXHU1MjMyXHU1MjM1XHU1MjNDXHU1MjQ1XHU1MjQ5XHU1MjU1XHU1MjU3XHU1MjU4XHU1MjVBXHU1MjVDXHU1MjVGXHU1MjYwXHU1MjYxXHU1MjY2XHU1MjZFXHU1Mjc3XHU1Mjc4XHU1Mjc5XHU1MjgwXHU1MjgyXHU1Mjg1XHU1MjhBXHU1MjhDXHU1MjkzXHU1Mjk1XHU1Mjk2XHU1Mjk3XHU1Mjk4XHU1MjlBXHU1MjlDXHU1MkE0XHU1MkE1XHU1MkE2XHU1MkE3XHU1MkFGXHU1MkIwXHU1MkI2XHU1MkI3XHU1MkI4XHU1MkJBXHU1MkJCXHU1MkJEXHU1MkMwXHU1MkM0XHU1MkM2XHU1MkM4XHU1MkNDXHU1MkNGXHU1MkQxXHU1MkQ0XHU1MkQ2XHU1MkRCXHU1MkRDXHU1MkUxXHU1MkU1XHU1MkU4XHU1MkU5XHU1MkVBXHU1MkVDXHU1MkYwXHU1MkYxXHU1MkY0XHU1MkY2XHU1MkY3XHU1MzAwXHU1MzAzXHU1MzBBXHU1MzBCXCJdLFxuW1wiOGZiNGExXCIsXCJcdTUzMENcdTUzMTFcdTUzMTNcdTUzMThcdTUzMUJcdTUzMUNcdTUzMUVcdTUzMUZcdTUzMjVcdTUzMjdcdTUzMjhcdTUzMjlcdTUzMkJcdTUzMkNcdTUzMkRcdTUzMzBcdTUzMzJcdTUzMzVcdTUzM0NcdTUzM0RcdTUzM0VcdTUzNDJcdTUzNENcdTUzNEJcdTUzNTlcdTUzNUJcdTUzNjFcdTUzNjNcdTUzNjVcdTUzNkNcdTUzNkRcdTUzNzJcdTUzNzlcdTUzN0VcdTUzODNcdTUzODdcdTUzODhcdTUzOEVcdTUzOTNcdTUzOTRcdTUzOTlcdTUzOURcdTUzQTFcdTUzQTRcdTUzQUFcdTUzQUJcdTUzQUZcdTUzQjJcdTUzQjRcdTUzQjVcdTUzQjdcdTUzQjhcdTUzQkFcdTUzQkRcdTUzQzBcdTUzQzVcdTUzQ0ZcdTUzRDJcdTUzRDNcdTUzRDVcdTUzREFcdTUzRERcdTUzREVcdTUzRTBcdTUzRTZcdTUzRTdcdTUzRjVcdTU0MDJcdTU0MTNcdTU0MUFcdTU0MjFcdTU0MjdcdTU0MjhcdTU0MkFcdTU0MkZcdTU0MzFcdTU0MzRcdTU0MzVcdTU0NDNcdTU0NDRcdTU0NDdcdTU0NERcdTU0NEZcdTU0NUVcdTU0NjJcdTU0NjRcdTU0NjZcdTU0NjdcdTU0NjlcdTU0NkJcdTU0NkRcdTU0NkVcdTU0NzRcdTU0N0ZcIl0sXG5bXCI4ZmI1YTFcIixcIlx1NTQ4MVx1NTQ4M1x1NTQ4NVx1NTQ4OFx1NTQ4OVx1NTQ4RFx1NTQ5MVx1NTQ5NVx1NTQ5Nlx1NTQ5Q1x1NTQ5Rlx1NTRBMVx1NTRBNlx1NTRBN1x1NTRBOVx1NTRBQVx1NTRBRFx1NTRBRVx1NTRCMVx1NTRCN1x1NTRCOVx1NTRCQVx1NTRCQlx1NTRCRlx1NTRDNlx1NTRDQVx1NTRDRFx1NTRDRVx1NTRFMFx1NTRFQVx1NTRFQ1x1NTRFRlx1NTRGNlx1NTRGQ1x1NTRGRVx1NTRGRlx1NTUwMFx1NTUwMVx1NTUwNVx1NTUwOFx1NTUwOVx1NTUwQ1x1NTUwRFx1NTUwRVx1NTUxNVx1NTUyQVx1NTUyQlx1NTUzMlx1NTUzNVx1NTUzNlx1NTUzQlx1NTUzQ1x1NTUzRFx1NTU0MVx1NTU0N1x1NTU0OVx1NTU0QVx1NTU0RFx1NTU1MFx1NTU1MVx1NTU1OFx1NTU1QVx1NTU1Qlx1NTU1RVx1NTU2MFx1NTU2MVx1NTU2NFx1NTU2Nlx1NTU3Rlx1NTU4MVx1NTU4Mlx1NTU4Nlx1NTU4OFx1NTU4RVx1NTU4Rlx1NTU5MVx1NTU5Mlx1NTU5M1x1NTU5NFx1NTU5N1x1NTVBM1x1NTVBNFx1NTVBRFx1NTVCMlx1NTVCRlx1NTVDMVx1NTVDM1x1NTVDNlx1NTVDOVx1NTVDQlx1NTVDQ1x1NTVDRVx1NTVEMVx1NTVEMlwiXSxcbltcIjhmYjZhMVwiLFwiXHU1NUQzXHU1NUQ3XHU1NUQ4XHU1NURCXHU1NURFXHU1NUUyXHU1NUU5XHU1NUY2XHU1NUZGXHU1NjA1XHU1NjA4XHU1NjBBXHU1NjBEXCIsNSxcIlx1NTYxOVx1NTYyQ1x1NTYzMFx1NTYzM1x1NTYzNVx1NTYzN1x1NTYzOVx1NTYzQlx1NTYzQ1x1NTYzRFx1NTYzRlx1NTY0MFx1NTY0MVx1NTY0M1x1NTY0NFx1NTY0Nlx1NTY0OVx1NTY0Qlx1NTY0RFx1NTY0Rlx1NTY1NFx1NTY1RVx1NTY2MFx1NTY2MVx1NTY2Mlx1NTY2M1x1NTY2Nlx1NTY2OVx1NTY2RFx1NTY2Rlx1NTY3MVx1NTY3Mlx1NTY3NVx1NTY4NFx1NTY4NVx1NTY4OFx1NTY4Qlx1NTY4Q1x1NTY5NVx1NTY5OVx1NTY5QVx1NTY5RFx1NTY5RVx1NTY5Rlx1NTZBNlx1NTZBN1x1NTZBOFx1NTZBOVx1NTZBQlx1NTZBQ1x1NTZBRFx1NTZCMVx1NTZCM1x1NTZCN1x1NTZCRVx1NTZDNVx1NTZDOVx1NTZDQVx1NTZDQlx1NTZDRlx1NTZEMFx1NTZDQ1x1NTZDRFx1NTZEOVx1NTZEQ1x1NTZERFx1NTZERlx1NTZFMVx1NTZFNFwiLDQsXCJcdTU2RjFcdTU2RUJcdTU2RURcIl0sXG5bXCI4ZmI3YTFcIixcIlx1NTZGNlx1NTZGN1x1NTcwMVx1NTcwMlx1NTcwN1x1NTcwQVx1NTcwQ1x1NTcxMVx1NTcxNVx1NTcxQVx1NTcxQlx1NTcxRFx1NTcyMFx1NTcyMlx1NTcyM1x1NTcyNFx1NTcyNVx1NTcyOVx1NTcyQVx1NTcyQ1x1NTcyRVx1NTcyRlx1NTczM1x1NTczNFx1NTczRFx1NTczRVx1NTczRlx1NTc0NVx1NTc0Nlx1NTc0Q1x1NTc0RFx1NTc1Mlx1NTc2Mlx1NTc2NVx1NTc2N1x1NTc2OFx1NTc2Qlx1NTc2RFwiLDQsXCJcdTU3NzNcdTU3NzRcdTU3NzVcdTU3NzdcdTU3NzlcdTU3N0FcdTU3N0JcdTU3N0NcdTU3N0VcdTU3ODFcdTU3ODNcdTU3OENcdTU3OTRcdTU3OTdcdTU3OTlcdTU3OUFcdTU3OUNcdTU3OURcdTU3OUVcdTU3OUZcdTU3QTFcdTU3OTVcdTU3QTdcdTU3QThcdTU3QTlcdTU3QUNcdTU3QjhcdTU3QkRcdTU3QzdcdTU3QzhcdTU3Q0NcdTU3Q0ZcdTU3RDVcdTU3RERcdTU3REVcdTU3RTRcdTU3RTZcdTU3RTdcdTU3RTlcdTU3RURcdTU3RjBcdTU3RjVcdTU3RjZcdTU3RjhcdTU3RkRcdTU3RkVcdTU3RkZcdTU4MDNcdTU4MDRcdTU4MDhcdTU4MDlcdTU3RTFcIl0sXG5bXCI4ZmI4YTFcIixcIlx1NTgwQ1x1NTgwRFx1NTgxQlx1NTgxRVx1NTgxRlx1NTgyMFx1NTgyNlx1NTgyN1x1NTgyRFx1NTgzMlx1NTgzOVx1NTgzRlx1NTg0OVx1NTg0Q1x1NTg0RFx1NTg0Rlx1NTg1MFx1NTg1NVx1NTg1Rlx1NTg2MVx1NTg2NFx1NTg2N1x1NTg2OFx1NTg3OFx1NTg3Q1x1NTg3Rlx1NTg4MFx1NTg4MVx1NTg4N1x1NTg4OFx1NTg4OVx1NTg4QVx1NTg4Q1x1NTg4RFx1NTg4Rlx1NTg5MFx1NTg5NFx1NTg5Nlx1NTg5RFx1NThBMFx1NThBMVx1NThBMlx1NThBNlx1NThBOVx1NThCMVx1NThCMlx1NThDNFx1NThCQ1x1NThDMlx1NThDOFx1NThDRFx1NThDRVx1NThEMFx1NThEMlx1NThENFx1NThENlx1NThEQVx1NThERFx1NThFMVx1NThFMlx1NThFOVx1NThGM1x1NTkwNVx1NTkwNlx1NTkwQlx1NTkwQ1x1NTkxMlx1NTkxM1x1NTkxNFx1ODY0MVx1NTkxRFx1NTkyMVx1NTkyM1x1NTkyNFx1NTkyOFx1NTkyRlx1NTkzMFx1NTkzM1x1NTkzNVx1NTkzNlx1NTkzRlx1NTk0M1x1NTk0Nlx1NTk1Mlx1NTk1M1x1NTk1OVx1NTk1Qlx1NTk1RFx1NTk1RVx1NTk1Rlx1NTk2MVx1NTk2M1x1NTk2Qlx1NTk2RFwiXSxcbltcIjhmYjlhMVwiLFwiXHU1OTZGXHU1OTcyXHU1OTc1XHU1OTc2XHU1OTc5XHU1OTdCXHU1OTdDXHU1OThCXHU1OThDXHU1OThFXHU1OTkyXHU1OTk1XHU1OTk3XHU1OTlGXHU1OUE0XHU1OUE3XHU1OUFEXHU1OUFFXHU1OUFGXHU1OUIwXHU1OUIzXHU1OUI3XHU1OUJBXHU1OUJDXHU1OUMxXHU1OUMzXHU1OUM0XHU1OUM4XHU1OUNBXHU1OUNEXHU1OUQyXHU1OUREXHU1OURFXHU1OURGXHU1OUUzXHU1OUU0XHU1OUU3XHU1OUVFXHU1OUVGXHU1OUYxXHU1OUYyXHU1OUY0XHU1OUY3XHU1QTAwXHU1QTA0XHU1QTBDXHU1QTBEXHU1QTBFXHU1QTEyXHU1QTEzXHU1QTFFXHU1QTIzXHU1QTI0XHU1QTI3XHU1QTI4XHU1QTJBXHU1QTJEXHU1QTMwXHU1QTQ0XHU1QTQ1XHU1QTQ3XHU1QTQ4XHU1QTRDXHU1QTUwXHU1QTU1XHU1QTVFXHU1QTYzXHU1QTY1XHU1QTY3XHU1QTZEXHU1QTc3XHU1QTdBXHU1QTdCXHU1QTdFXHU1QThCXHU1QTkwXHU1QTkzXHU1QTk2XHU1QTk5XHU1QTlDXHU1QTlFXHU1QTlGXHU1QUEwXHU1QUEyXHU1QUE3XHU1QUFDXHU1QUIxXHU1QUIyXHU1QUIzXHU1QUI1XHU1QUI4XHU1QUJBXHU1QUJCXHU1QUJGXCJdLFxuW1wiOGZiYWExXCIsXCJcdTVBQzRcdTVBQzZcdTVBQzhcdTVBQ0ZcdTVBREFcdTVBRENcdTVBRTBcdTVBRTVcdTVBRUFcdTVBRUVcdTVBRjVcdTVBRjZcdTVBRkRcdTVCMDBcdTVCMDFcdTVCMDhcdTVCMTdcdTVCMzRcdTVCMTlcdTVCMUJcdTVCMURcdTVCMjFcdTVCMjVcdTVCMkRcdTVCMzhcdTVCNDFcdTVCNEJcdTVCNENcdTVCNTJcdTVCNTZcdTVCNUVcdTVCNjhcdTVCNkVcdTVCNkZcdTVCN0NcdTVCN0RcdTVCN0VcdTVCN0ZcdTVCODFcdTVCODRcdTVCODZcdTVCOEFcdTVCOEVcdTVCOTBcdTVCOTFcdTVCOTNcdTVCOTRcdTVCOTZcdTVCQThcdTVCQTlcdTVCQUNcdTVCQURcdTVCQUZcdTVCQjFcdTVCQjJcdTVCQjdcdTVCQkFcdTVCQkNcdTVCQzBcdTVCQzFcdTVCQ0RcdTVCQ0ZcdTVCRDZcIiw0LFwiXHU1QkUwXHU1QkVGXHU1QkYxXHU1QkY0XHU1QkZEXHU1QzBDXHU1QzE3XHU1QzFFXHU1QzFGXHU1QzIzXHU1QzI2XHU1QzI5XHU1QzJCXHU1QzJDXHU1QzJFXHU1QzMwXHU1QzMyXHU1QzM1XHU1QzM2XHU1QzU5XHU1QzVBXHU1QzVDXHU1QzYyXHU1QzYzXHU1QzY3XHU1QzY4XHU1QzY5XCJdLFxuW1wiOGZiYmExXCIsXCJcdTVDNkRcdTVDNzBcdTVDNzRcdTVDNzVcdTVDN0FcdTVDN0JcdTVDN0NcdTVDN0RcdTVDODdcdTVDODhcdTVDOEFcdTVDOEZcdTVDOTJcdTVDOURcdTVDOUZcdTVDQTBcdTVDQTJcdTVDQTNcdTVDQTZcdTVDQUFcdTVDQjJcdTVDQjRcdTVDQjVcdTVDQkFcdTVDQzlcdTVDQ0JcdTVDRDJcdTVDRERcdTVDRDdcdTVDRUVcdTVDRjFcdTVDRjJcdTVDRjRcdTVEMDFcdTVEMDZcdTVEMERcdTVEMTJcdTVEMkJcdTVEMjNcdTVEMjRcdTVEMjZcdTVEMjdcdTVEMzFcdTVEMzRcdTVEMzlcdTVEM0RcdTVEM0ZcdTVENDJcdTVENDNcdTVENDZcdTVENDhcdTVENTVcdTVENTFcdTVENTlcdTVENEFcdTVENUZcdTVENjBcdTVENjFcdTVENjJcdTVENjRcdTVENkFcdTVENkRcdTVENzBcdTVENzlcdTVEN0FcdTVEN0VcdTVEN0ZcdTVEODFcdTVEODNcdTVEODhcdTVEOEFcdTVEOTJcdTVEOTNcdTVEOTRcdTVEOTVcdTVEOTlcdTVEOUJcdTVEOUZcdTVEQTBcdTVEQTdcdTVEQUJcdTVEQjBcdTVEQjRcdTVEQjhcdTVEQjlcdTVEQzNcdTVEQzdcdTVEQ0JcdTVERDBcdTVEQ0VcdTVERDhcdTVERDlcdTVERTBcdTVERTRcIl0sXG5bXCI4ZmJjYTFcIixcIlx1NURFOVx1NURGOFx1NURGOVx1NUUwMFx1NUUwN1x1NUUwRFx1NUUxMlx1NUUxNFx1NUUxNVx1NUUxOFx1NUUxRlx1NUUyMFx1NUUyRVx1NUUyOFx1NUUzMlx1NUUzNVx1NUUzRVx1NUU0Qlx1NUU1MFx1NUU0OVx1NUU1MVx1NUU1Nlx1NUU1OFx1NUU1Qlx1NUU1Q1x1NUU1RVx1NUU2OFx1NUU2QVwiLDQsXCJcdTVFNzBcdTVFODBcdTVFOEJcdTVFOEVcdTVFQTJcdTVFQTRcdTVFQTVcdTVFQThcdTVFQUFcdTVFQUNcdTVFQjFcdTVFQjNcdTVFQkRcdTVFQkVcdTVFQkZcdTVFQzZcdTVFQ0NcdTVFQ0JcdTVFQ0VcdTVFRDFcdTVFRDJcdTVFRDRcdTVFRDVcdTVFRENcdTVFREVcdTVFRTVcdTVFRUJcdTVGMDJcdTVGMDZcdTVGMDdcdTVGMDhcdTVGMEVcdTVGMTlcdTVGMUNcdTVGMURcdTVGMjFcdTVGMjJcdTVGMjNcdTVGMjRcdTVGMjhcdTVGMkJcdTVGMkNcdTVGMkVcdTVGMzBcdTVGMzRcdTVGMzZcdTVGM0JcdTVGM0RcdTVGM0ZcdTVGNDBcdTVGNDRcdTVGNDVcdTVGNDdcdTVGNERcdTVGNTBcdTVGNTRcdTVGNThcdTVGNUJcdTVGNjBcdTVGNjNcdTVGNjRcdTVGNjdcIl0sXG5bXCI4ZmJkYTFcIixcIlx1NUY2Rlx1NUY3Mlx1NUY3NFx1NUY3NVx1NUY3OFx1NUY3QVx1NUY3RFx1NUY3RVx1NUY4OVx1NUY4RFx1NUY4Rlx1NUY5Nlx1NUY5Q1x1NUY5RFx1NUZBMlx1NUZBN1x1NUZBQlx1NUZBNFx1NUZBQ1x1NUZBRlx1NUZCMFx1NUZCMVx1NUZCOFx1NUZDNFx1NUZDN1x1NUZDOFx1NUZDOVx1NUZDQlx1NUZEMFwiLDQsXCJcdTVGREVcdTVGRTFcdTVGRTJcdTVGRThcdTVGRTlcdTVGRUFcdTVGRUNcdTVGRURcdTVGRUVcdTVGRUZcdTVGRjJcdTVGRjNcdTVGRjZcdTVGRkFcdTVGRkNcdTYwMDdcdTYwMEFcdTYwMERcdTYwMTNcdTYwMTRcdTYwMTdcdTYwMThcdTYwMUFcdTYwMUZcdTYwMjRcdTYwMkRcdTYwMzNcdTYwMzVcdTYwNDBcdTYwNDdcdTYwNDhcdTYwNDlcdTYwNENcdTYwNTFcdTYwNTRcdTYwNTZcdTYwNTdcdTYwNURcdTYwNjFcdTYwNjdcdTYwNzFcdTYwN0VcdTYwN0ZcdTYwODJcdTYwODZcdTYwODhcdTYwOEFcdTYwOEVcdTYwOTFcdTYwOTNcdTYwOTVcdTYwOThcdTYwOURcdTYwOUVcdTYwQTJcdTYwQTRcdTYwQTVcdTYwQThcdTYwQjBcdTYwQjFcdTYwQjdcIl0sXG5bXCI4ZmJlYTFcIixcIlx1NjBCQlx1NjBCRVx1NjBDMlx1NjBDNFx1NjBDOFx1NjBDOVx1NjBDQVx1NjBDQlx1NjBDRVx1NjBDRlx1NjBENFx1NjBENVx1NjBEOVx1NjBEQlx1NjBERFx1NjBERVx1NjBFMlx1NjBFNVx1NjBGMlx1NjBGNVx1NjBGOFx1NjBGQ1x1NjBGRFx1NjEwMlx1NjEwN1x1NjEwQVx1NjEwQ1x1NjExMFwiLDQsXCJcdTYxMTZcdTYxMTdcdTYxMTlcdTYxMUNcdTYxMUVcdTYxMjJcdTYxMkFcdTYxMkJcdTYxMzBcdTYxMzFcdTYxMzVcdTYxMzZcdTYxMzdcdTYxMzlcdTYxNDFcdTYxNDVcdTYxNDZcdTYxNDlcdTYxNUVcdTYxNjBcdTYxNkNcdTYxNzJcdTYxNzhcdTYxN0JcdTYxN0NcdTYxN0ZcdTYxODBcdTYxODFcdTYxODNcdTYxODRcdTYxOEJcdTYxOERcdTYxOTJcdTYxOTNcdTYxOTdcdTYxOThcdTYxOUNcdTYxOURcdTYxOUZcdTYxQTBcdTYxQTVcdTYxQThcdTYxQUFcdTYxQURcdTYxQjhcdTYxQjlcdTYxQkNcdTYxQzBcdTYxQzFcdTYxQzJcdTYxQ0VcdTYxQ0ZcdTYxRDVcdTYxRENcdTYxRERcdTYxREVcdTYxREZcdTYxRTFcdTYxRTJcdTYxRTdcdTYxRTlcdTYxRTVcIl0sXG5bXCI4ZmJmYTFcIixcIlx1NjFFQ1x1NjFFRFx1NjFFRlx1NjIwMVx1NjIwM1x1NjIwNFx1NjIwN1x1NjIxM1x1NjIxNVx1NjIxQ1x1NjIyMFx1NjIyMlx1NjIyM1x1NjIyN1x1NjIyOVx1NjIyQlx1NjIzOVx1NjIzRFx1NjI0Mlx1NjI0M1x1NjI0NFx1NjI0Nlx1NjI0Q1x1NjI1MFx1NjI1MVx1NjI1Mlx1NjI1NFx1NjI1Nlx1NjI1QVx1NjI1Q1x1NjI2NFx1NjI2RFx1NjI2Rlx1NjI3M1x1NjI3QVx1NjI3RFx1NjI4RFx1NjI4RVx1NjI4Rlx1NjI5MFx1NjJBNlx1NjJBOFx1NjJCM1x1NjJCNlx1NjJCN1x1NjJCQVx1NjJCRVx1NjJCRlx1NjJDNFx1NjJDRVx1NjJENVx1NjJENlx1NjJEQVx1NjJFQVx1NjJGMlx1NjJGNFx1NjJGQ1x1NjJGRFx1NjMwM1x1NjMwNFx1NjMwQVx1NjMwQlx1NjMwRFx1NjMxMFx1NjMxM1x1NjMxNlx1NjMxOFx1NjMyOVx1NjMyQVx1NjMyRFx1NjMzNVx1NjMzNlx1NjMzOVx1NjMzQ1x1NjM0MVx1NjM0Mlx1NjM0M1x1NjM0NFx1NjM0Nlx1NjM0QVx1NjM0Qlx1NjM0RVx1NjM1Mlx1NjM1M1x1NjM1NFx1NjM1OFx1NjM1Qlx1NjM2NVx1NjM2Nlx1NjM2Q1x1NjM2RFx1NjM3MVx1NjM3NFx1NjM3NVwiXSxcbltcIjhmYzBhMVwiLFwiXHU2Mzc4XHU2MzdDXHU2MzdEXHU2MzdGXHU2MzgyXHU2Mzg0XHU2Mzg3XHU2MzhBXHU2MzkwXHU2Mzk0XHU2Mzk1XHU2Mzk5XHU2MzlBXHU2MzlFXHU2M0E0XHU2M0E2XHU2M0FEXHU2M0FFXHU2M0FGXHU2M0JEXHU2M0MxXHU2M0M1XHU2M0M4XHU2M0NFXHU2M0QxXHU2M0QzXHU2M0Q0XHU2M0Q1XHU2M0RDXHU2M0UwXHU2M0U1XHU2M0VBXHU2M0VDXHU2M0YyXHU2M0YzXHU2M0Y1XHU2M0Y4XHU2M0Y5XHU2NDA5XHU2NDBBXHU2NDEwXHU2NDEyXHU2NDE0XHU2NDE4XHU2NDFFXHU2NDIwXHU2NDIyXHU2NDI0XHU2NDI1XHU2NDI5XHU2NDJBXHU2NDJGXHU2NDMwXHU2NDM1XHU2NDNEXHU2NDNGXHU2NDRCXHU2NDRGXHU2NDUxXHU2NDUyXHU2NDUzXHU2NDU0XHU2NDVBXHU2NDVCXHU2NDVDXHU2NDVEXHU2NDVGXHU2NDYwXHU2NDYxXHU2NDYzXHU2NDZEXHU2NDczXHU2NDc0XHU2NDdCXHU2NDdEXHU2NDg1XHU2NDg3XHU2NDhGXHU2NDkwXHU2NDkxXHU2NDk4XHU2NDk5XHU2NDlCXHU2NDlEXHU2NDlGXHU2NEExXHU2NEEzXHU2NEE2XHU2NEE4XHU2NEFDXHU2NEIzXHU2NEJEXHU2NEJFXHU2NEJGXCJdLFxuW1wiOGZjMWExXCIsXCJcdTY0QzRcdTY0QzlcdTY0Q0FcdTY0Q0JcdTY0Q0NcdTY0Q0VcdTY0RDBcdTY0RDFcdTY0RDVcdTY0RDdcdTY0RTRcdTY0RTVcdTY0RTlcdTY0RUFcdTY0RURcdTY0RjBcdTY0RjVcdTY0RjdcdTY0RkJcdTY0RkZcdTY1MDFcdTY1MDRcdTY1MDhcdTY1MDlcdTY1MEFcdTY1MEZcdTY1MTNcdTY1MTRcdTY1MTZcdTY1MTlcdTY1MUJcdTY1MUVcdTY1MUZcdTY1MjJcdTY1MjZcdTY1MjlcdTY1MkVcdTY1MzFcdTY1M0FcdTY1M0NcdTY1M0RcdTY1NDNcdTY1NDdcdTY1NDlcdTY1NTBcdTY1NTJcdTY1NTRcdTY1NUZcdTY1NjBcdTY1NjdcdTY1NkJcdTY1N0FcdTY1N0RcdTY1ODFcdTY1ODVcdTY1OEFcdTY1OTJcdTY1OTVcdTY1OThcdTY1OURcdTY1QTBcdTY1QTNcdTY1QTZcdTY1QUVcdTY1QjJcdTY1QjNcdTY1QjRcdTY1QkZcdTY1QzJcdTY1QzhcdTY1QzlcdTY1Q0VcdTY1RDBcdTY1RDRcdTY1RDZcdTY1RDhcdTY1REZcdTY1RjBcdTY1RjJcdTY1RjRcdTY1RjVcdTY1RjlcdTY1RkVcdTY1RkZcdTY2MDBcdTY2MDRcdTY2MDhcdTY2MDlcdTY2MERcdTY2MTFcdTY2MTJcdTY2MTVcdTY2MTZcdTY2MURcIl0sXG5bXCI4ZmMyYTFcIixcIlx1NjYxRVx1NjYyMVx1NjYyMlx1NjYyM1x1NjYyNFx1NjYyNlx1NjYyOVx1NjYyQVx1NjYyQlx1NjYyQ1x1NjYyRVx1NjYzMFx1NjYzMVx1NjYzM1x1NjYzOVx1NjYzN1x1NjY0MFx1NjY0NVx1NjY0Nlx1NjY0QVx1NjY0Q1x1NjY1MVx1NjY0RVx1NjY1N1x1NjY1OFx1NjY1OVx1NjY1Qlx1NjY1Q1x1NjY2MFx1NjY2MVx1NjZGQlx1NjY2QVx1NjY2Qlx1NjY2Q1x1NjY3RVx1NjY3M1x1NjY3NVx1NjY3Rlx1NjY3N1x1NjY3OFx1NjY3OVx1NjY3Qlx1NjY4MFx1NjY3Q1x1NjY4Qlx1NjY4Q1x1NjY4RFx1NjY5MFx1NjY5Mlx1NjY5OVx1NjY5QVx1NjY5Qlx1NjY5Q1x1NjY5Rlx1NjZBMFx1NjZBNFx1NjZBRFx1NjZCMVx1NjZCMlx1NjZCNVx1NjZCQlx1NjZCRlx1NjZDMFx1NjZDMlx1NjZDM1x1NjZDOFx1NjZDQ1x1NjZDRVx1NjZDRlx1NjZENFx1NjZEQlx1NjZERlx1NjZFOFx1NjZFQlx1NjZFQ1x1NjZFRVx1NjZGQVx1NjcwNVx1NjcwN1x1NjcwRVx1NjcxM1x1NjcxOVx1NjcxQ1x1NjcyMFx1NjcyMlx1NjczM1x1NjczRVx1Njc0NVx1Njc0N1x1Njc0OFx1Njc0Q1x1Njc1NFx1Njc1NVx1Njc1RFwiXSxcbltcIjhmYzNhMVwiLFwiXHU2NzY2XHU2NzZDXHU2NzZFXHU2Nzc0XHU2Nzc2XHU2NzdCXHU2NzgxXHU2Nzg0XHU2NzhFXHU2NzhGXHU2NzkxXHU2NzkzXHU2Nzk2XHU2Nzk4XHU2Nzk5XHU2NzlCXHU2N0IwXHU2N0IxXHU2N0IyXHU2N0I1XHU2N0JCXHU2N0JDXHU2N0JEXHU2N0Y5XHU2N0MwXHU2N0MyXHU2N0MzXHU2N0M1XHU2N0M4XHU2N0M5XHU2N0QyXHU2N0Q3XHU2N0Q5XHU2N0RDXHU2N0UxXHU2N0U2XHU2N0YwXHU2N0YyXHU2N0Y2XHU2N0Y3XHU2ODUyXHU2ODE0XHU2ODE5XHU2ODFEXHU2ODFGXHU2ODI4XHU2ODI3XHU2ODJDXHU2ODJEXHU2ODJGXHU2ODMwXHU2ODMxXHU2ODMzXHU2ODNCXHU2ODNGXHU2ODQ0XHU2ODQ1XHU2ODRBXHU2ODRDXHU2ODU1XHU2ODU3XHU2ODU4XHU2ODVCXHU2ODZCXHU2ODZFXCIsNCxcIlx1Njg3NVx1Njg3OVx1Njg3QVx1Njg3Qlx1Njg3Q1x1Njg4Mlx1Njg4NFx1Njg4Nlx1Njg4OFx1Njg5Nlx1Njg5OFx1Njg5QVx1Njg5Q1x1NjhBMVx1NjhBM1x1NjhBNVx1NjhBOVx1NjhBQVx1NjhBRVx1NjhCMlx1NjhCQlx1NjhDNVx1NjhDOFx1NjhDQ1x1NjhDRlwiXSxcbltcIjhmYzRhMVwiLFwiXHU2OEQwXHU2OEQxXHU2OEQzXHU2OEQ2XHU2OEQ5XHU2OERDXHU2OEREXHU2OEU1XHU2OEU4XHU2OEVBXHU2OEVCXHU2OEVDXHU2OEVEXHU2OEYwXHU2OEYxXHU2OEY1XHU2OEY2XHU2OEZCXHU2OEZDXHU2OEZEXHU2OTA2XHU2OTA5XHU2OTBBXHU2OTEwXHU2OTExXHU2OTEzXHU2OTE2XHU2OTE3XHU2OTMxXHU2OTMzXHU2OTM1XHU2OTM4XHU2OTNCXHU2OTQyXHU2OTQ1XHU2OTQ5XHU2OTRFXHU2OTU3XHU2OTVCXHU2OTYzXHU2OTY0XHU2OTY1XHU2OTY2XHU2OTY4XHU2OTY5XHU2OTZDXHU2OTcwXHU2OTcxXHU2OTcyXHU2OTdBXHU2OTdCXHU2OTdGXHU2OTgwXHU2OThEXHU2OTkyXHU2OTk2XHU2OTk4XHU2OUExXHU2OUE1XHU2OUE2XHU2OUE4XHU2OUFCXHU2OUFEXHU2OUFGXHU2OUI3XHU2OUI4XHU2OUJBXHU2OUJDXHU2OUM1XHU2OUM4XHU2OUQxXHU2OUQ2XHU2OUQ3XHU2OUUyXHU2OUU1XHU2OUVFXHU2OUVGXHU2OUYxXHU2OUYzXHU2OUY1XHU2OUZFXHU2QTAwXHU2QTAxXHU2QTAzXHU2QTBGXHU2QTExXHU2QTE1XHU2QTFBXHU2QTFEXHU2QTIwXHU2QTI0XHU2QTI4XHU2QTMwXHU2QTMyXCJdLFxuW1wiOGZjNWExXCIsXCJcdTZBMzRcdTZBMzdcdTZBM0JcdTZBM0VcdTZBM0ZcdTZBNDVcdTZBNDZcdTZBNDlcdTZBNEFcdTZBNEVcdTZBNTBcdTZBNTFcdTZBNTJcdTZBNTVcdTZBNTZcdTZBNUJcdTZBNjRcdTZBNjdcdTZBNkFcdTZBNzFcdTZBNzNcdTZBN0VcdTZBODFcdTZBODNcdTZBODZcdTZBODdcdTZBODlcdTZBOEJcdTZBOTFcdTZBOUJcdTZBOURcdTZBOUVcdTZBOUZcdTZBQTVcdTZBQUJcdTZBQUZcdTZBQjBcdTZBQjFcdTZBQjRcdTZBQkRcdTZBQkVcdTZBQkZcdTZBQzZcdTZBQzlcdTZBQzhcdTZBQ0NcdTZBRDBcdTZBRDRcdTZBRDVcdTZBRDZcdTZBRENcdTZBRERcdTZBRTRcdTZBRTdcdTZBRUNcdTZBRjBcdTZBRjFcdTZBRjJcdTZBRkNcdTZBRkRcdTZCMDJcdTZCMDNcdTZCMDZcdTZCMDdcdTZCMDlcdTZCMEZcdTZCMTBcdTZCMTFcdTZCMTdcdTZCMUJcdTZCMUVcdTZCMjRcdTZCMjhcdTZCMkJcdTZCMkNcdTZCMkZcdTZCMzVcdTZCMzZcdTZCM0JcdTZCM0ZcdTZCNDZcdTZCNEFcdTZCNERcdTZCNTJcdTZCNTZcdTZCNThcdTZCNURcdTZCNjBcdTZCNjdcdTZCNkJcdTZCNkVcdTZCNzBcdTZCNzVcdTZCN0RcIl0sXG5bXCI4ZmM2YTFcIixcIlx1NkI3RVx1NkI4Mlx1NkI4NVx1NkI5N1x1NkI5Qlx1NkI5Rlx1NkJBMFx1NkJBMlx1NkJBM1x1NkJBOFx1NkJBOVx1NkJBQ1x1NkJBRFx1NkJBRVx1NkJCMFx1NkJCOFx1NkJCOVx1NkJCRFx1NkJCRVx1NkJDM1x1NkJDNFx1NkJDOVx1NkJDQ1x1NkJENlx1NkJEQVx1NkJFMVx1NkJFM1x1NkJFNlx1NkJFN1x1NkJFRVx1NkJGMVx1NkJGN1x1NkJGOVx1NkJGRlx1NkMwMlx1NkMwNFx1NkMwNVx1NkMwOVx1NkMwRFx1NkMwRVx1NkMxMFx1NkMxMlx1NkMxOVx1NkMxRlx1NkMyNlx1NkMyN1x1NkMyOFx1NkMyQ1x1NkMyRVx1NkMzM1x1NkMzNVx1NkMzNlx1NkMzQVx1NkMzQlx1NkMzRlx1NkM0QVx1NkM0Qlx1NkM0RFx1NkM0Rlx1NkM1Mlx1NkM1NFx1NkM1OVx1NkM1Qlx1NkM1Q1x1NkM2Qlx1NkM2RFx1NkM2Rlx1NkM3NFx1NkM3Nlx1NkM3OFx1NkM3OVx1NkM3Qlx1NkM4NVx1NkM4Nlx1NkM4N1x1NkM4OVx1NkM5NFx1NkM5NVx1NkM5N1x1NkM5OFx1NkM5Q1x1NkM5Rlx1NkNCMFx1NkNCMlx1NkNCNFx1NkNDMlx1NkNDNlx1NkNDRFx1NkNDRlx1NkNEMFx1NkNEMVx1NkNEMlx1NkNENFx1NkNENlwiXSxcbltcIjhmYzdhMVwiLFwiXHU2Q0RBXHU2Q0RDXHU2Q0UwXHU2Q0U3XHU2Q0U5XHU2Q0VCXHU2Q0VDXHU2Q0VFXHU2Q0YyXHU2Q0Y0XHU2RDA0XHU2RDA3XHU2RDBBXHU2RDBFXHU2RDBGXHU2RDExXHU2RDEzXHU2RDFBXHU2RDI2XHU2RDI3XHU2RDI4XHU2QzY3XHU2RDJFXHU2RDJGXHU2RDMxXHU2RDM5XHU2RDNDXHU2RDNGXHU2RDU3XHU2RDVFXHU2RDVGXHU2RDYxXHU2RDY1XHU2RDY3XHU2RDZGXHU2RDcwXHU2RDdDXHU2RDgyXHU2RDg3XHU2RDkxXHU2RDkyXHU2RDk0XHU2RDk2XHU2RDk3XHU2RDk4XHU2REFBXHU2REFDXHU2REI0XHU2REI3XHU2REI5XHU2REJEXHU2REJGXHU2REM0XHU2REM4XHU2RENBXHU2RENFXHU2RENGXHU2REQ2XHU2RERCXHU2REREXHU2RERGXHU2REUwXHU2REUyXHU2REU1XHU2REU5XHU2REVGXHU2REYwXHU2REY0XHU2REY2XHU2REZDXHU2RTAwXHU2RTA0XHU2RTFFXHU2RTIyXHU2RTI3XHU2RTMyXHU2RTM2XHU2RTM5XHU2RTNCXHU2RTNDXHU2RTQ0XHU2RTQ1XHU2RTQ4XHU2RTQ5XHU2RTRCXHU2RTRGXHU2RTUxXHU2RTUyXHU2RTUzXHU2RTU0XHU2RTU3XHU2RTVDXHU2RTVEXHU2RTVFXCJdLFxuW1wiOGZjOGExXCIsXCJcdTZFNjJcdTZFNjNcdTZFNjhcdTZFNzNcdTZFN0JcdTZFN0RcdTZFOERcdTZFOTNcdTZFOTlcdTZFQTBcdTZFQTdcdTZFQURcdTZFQUVcdTZFQjFcdTZFQjNcdTZFQkJcdTZFQkZcdTZFQzBcdTZFQzFcdTZFQzNcdTZFQzdcdTZFQzhcdTZFQ0FcdTZFQ0RcdTZFQ0VcdTZFQ0ZcdTZFRUJcdTZFRURcdTZFRUVcdTZFRjlcdTZFRkJcdTZFRkRcdTZGMDRcdTZGMDhcdTZGMEFcdTZGMENcdTZGMERcdTZGMTZcdTZGMThcdTZGMUFcdTZGMUJcdTZGMjZcdTZGMjlcdTZGMkFcdTZGMkZcdTZGMzBcdTZGMzNcdTZGMzZcdTZGM0JcdTZGM0NcdTZGMkRcdTZGNEZcdTZGNTFcdTZGNTJcdTZGNTNcdTZGNTdcdTZGNTlcdTZGNUFcdTZGNURcdTZGNUVcdTZGNjFcdTZGNjJcdTZGNjhcdTZGNkNcdTZGN0RcdTZGN0VcdTZGODNcdTZGODdcdTZGODhcdTZGOEJcdTZGOENcdTZGOERcdTZGOTBcdTZGOTJcdTZGOTNcdTZGOTRcdTZGOTZcdTZGOUFcdTZGOUZcdTZGQTBcdTZGQTVcdTZGQTZcdTZGQTdcdTZGQThcdTZGQUVcdTZGQUZcdTZGQjBcdTZGQjVcdTZGQjZcdTZGQkNcdTZGQzVcdTZGQzdcdTZGQzhcdTZGQ0FcIl0sXG5bXCI4ZmM5YTFcIixcIlx1NkZEQVx1NkZERVx1NkZFOFx1NkZFOVx1NkZGMFx1NkZGNVx1NkZGOVx1NkZGQ1x1NkZGRFx1NzAwMFx1NzAwNVx1NzAwNlx1NzAwN1x1NzAwRFx1NzAxN1x1NzAyMFx1NzAyM1x1NzAyRlx1NzAzNFx1NzAzN1x1NzAzOVx1NzAzQ1x1NzA0M1x1NzA0NFx1NzA0OFx1NzA0OVx1NzA0QVx1NzA0Qlx1NzA1NFx1NzA1NVx1NzA1RFx1NzA1RVx1NzA0RVx1NzA2NFx1NzA2NVx1NzA2Q1x1NzA2RVx1NzA3NVx1NzA3Nlx1NzA3RVx1NzA4MVx1NzA4NVx1NzA4Nlx1NzA5NFwiLDQsXCJcdTcwOUJcdTcwQTRcdTcwQUJcdTcwQjBcdTcwQjFcdTcwQjRcdTcwQjdcdTcwQ0FcdTcwRDFcdTcwRDNcdTcwRDRcdTcwRDVcdTcwRDZcdTcwRDhcdTcwRENcdTcwRTRcdTcwRkFcdTcxMDNcIiw0LFwiXHU3MTBCXHU3MTBDXHU3MTBGXHU3MTFFXHU3MTIwXHU3MTJCXHU3MTJEXHU3MTJGXHU3MTMwXHU3MTMxXHU3MTM4XHU3MTQxXHU3MTQ1XHU3MTQ2XHU3MTQ3XHU3MTRBXHU3MTRCXHU3MTUwXHU3MTUyXHU3MTU3XHU3MTVBXHU3MTVDXHU3MTVFXHU3MTYwXCJdLFxuW1wiOGZjYWExXCIsXCJcdTcxNjhcdTcxNzlcdTcxODBcdTcxODVcdTcxODdcdTcxOENcdTcxOTJcdTcxOUFcdTcxOUJcdTcxQTBcdTcxQTJcdTcxQUZcdTcxQjBcdTcxQjJcdTcxQjNcdTcxQkFcdTcxQkZcdTcxQzBcdTcxQzFcdTcxQzRcdTcxQ0JcdTcxQ0NcdTcxRDNcdTcxRDZcdTcxRDlcdTcxREFcdTcxRENcdTcxRjhcdTcxRkVcdTcyMDBcdTcyMDdcdTcyMDhcdTcyMDlcdTcyMTNcdTcyMTdcdTcyMUFcdTcyMURcdTcyMUZcdTcyMjRcdTcyMkJcdTcyMkZcdTcyMzRcdTcyMzhcdTcyMzlcdTcyNDFcdTcyNDJcdTcyNDNcdTcyNDVcdTcyNEVcdTcyNEZcdTcyNTBcdTcyNTNcdTcyNTVcdTcyNTZcdTcyNUFcdTcyNUNcdTcyNUVcdTcyNjBcdTcyNjNcdTcyNjhcdTcyNkJcdTcyNkVcdTcyNkZcdTcyNzFcdTcyNzdcdTcyNzhcdTcyN0JcdTcyN0NcdTcyN0ZcdTcyODRcdTcyODlcdTcyOERcdTcyOEVcdTcyOTNcdTcyOUJcdTcyQThcdTcyQURcdTcyQUVcdTcyQjFcdTcyQjRcdTcyQkVcdTcyQzFcdTcyQzdcdTcyQzlcdTcyQ0NcdTcyRDVcdTcyRDZcdTcyRDhcdTcyREZcdTcyRTVcdTcyRjNcdTcyRjRcdTcyRkFcdTcyRkJcIl0sXG5bXCI4ZmNiYTFcIixcIlx1NzJGRVx1NzMwMlx1NzMwNFx1NzMwNVx1NzMwN1x1NzMwQlx1NzMwRFx1NzMxMlx1NzMxM1x1NzMxOFx1NzMxOVx1NzMxRVx1NzMyMlx1NzMyNFx1NzMyN1x1NzMyOFx1NzMyQ1x1NzMzMVx1NzMzMlx1NzMzNVx1NzMzQVx1NzMzQlx1NzMzRFx1NzM0M1x1NzM0RFx1NzM1MFx1NzM1Mlx1NzM1Nlx1NzM1OFx1NzM1RFx1NzM1RVx1NzM1Rlx1NzM2MFx1NzM2Nlx1NzM2N1x1NzM2OVx1NzM2Qlx1NzM2Q1x1NzM2RVx1NzM2Rlx1NzM3MVx1NzM3N1x1NzM3OVx1NzM3Q1x1NzM4MFx1NzM4MVx1NzM4M1x1NzM4NVx1NzM4Nlx1NzM4RVx1NzM5MFx1NzM5M1x1NzM5NVx1NzM5N1x1NzM5OFx1NzM5Q1x1NzM5RVx1NzM5Rlx1NzNBMFx1NzNBMlx1NzNBNVx1NzNBNlx1NzNBQVx1NzNBQlx1NzNBRFx1NzNCNVx1NzNCN1x1NzNCOVx1NzNCQ1x1NzNCRFx1NzNCRlx1NzNDNVx1NzNDNlx1NzNDOVx1NzNDQlx1NzNDQ1x1NzNDRlx1NzNEMlx1NzNEM1x1NzNENlx1NzNEOVx1NzNERFx1NzNFMVx1NzNFM1x1NzNFNlx1NzNFN1x1NzNFOVx1NzNGNFx1NzNGNVx1NzNGN1x1NzNGOVx1NzNGQVx1NzNGQlx1NzNGRFwiXSxcbltcIjhmY2NhMVwiLFwiXHU3M0ZGXHU3NDAwXHU3NDAxXHU3NDA0XHU3NDA3XHU3NDBBXHU3NDExXHU3NDFBXHU3NDFCXHU3NDI0XHU3NDI2XHU3NDI4XCIsOSxcIlx1NzQzOVx1NzQ0MFx1NzQ0M1x1NzQ0NFx1NzQ0Nlx1NzQ0N1x1NzQ0Qlx1NzQ0RFx1NzQ1MVx1NzQ1Mlx1NzQ1N1x1NzQ1RFx1NzQ2Mlx1NzQ2Nlx1NzQ2N1x1NzQ2OFx1NzQ2Qlx1NzQ2RFx1NzQ2RVx1NzQ3MVx1NzQ3Mlx1NzQ4MFx1NzQ4MVx1NzQ4NVx1NzQ4Nlx1NzQ4N1x1NzQ4OVx1NzQ4Rlx1NzQ5MFx1NzQ5MVx1NzQ5Mlx1NzQ5OFx1NzQ5OVx1NzQ5QVx1NzQ5Q1x1NzQ5Rlx1NzRBMFx1NzRBMVx1NzRBM1x1NzRBNlx1NzRBOFx1NzRBOVx1NzRBQVx1NzRBQlx1NzRBRVx1NzRBRlx1NzRCMVx1NzRCMlx1NzRCNVx1NzRCOVx1NzRCQlx1NzRCRlx1NzRDOFx1NzRDOVx1NzRDQ1x1NzREMFx1NzREM1x1NzREOFx1NzREQVx1NzREQlx1NzRERVx1NzRERlx1NzRFNFx1NzRFOFx1NzRFQVx1NzRFQlx1NzRFRlx1NzRGNFx1NzRGQVx1NzRGQlx1NzRGQ1x1NzRGRlx1NzUwNlwiXSxcbltcIjhmY2RhMVwiLFwiXHU3NTEyXHU3NTE2XHU3NTE3XHU3NTIwXHU3NTIxXHU3NTI0XHU3NTI3XHU3NTI5XHU3NTJBXHU3NTJGXHU3NTM2XHU3NTM5XHU3NTNEXHU3NTNFXHU3NTNGXHU3NTQwXHU3NTQzXHU3NTQ3XHU3NTQ4XHU3NTRFXHU3NTUwXHU3NTUyXHU3NTU3XHU3NTVFXHU3NTVGXHU3NTYxXHU3NTZGXHU3NTcxXHU3NTc5XCIsNSxcIlx1NzU4MVx1NzU4NVx1NzU5MFx1NzU5Mlx1NzU5M1x1NzU5NVx1NzU5OVx1NzU5Q1x1NzVBMlx1NzVBNFx1NzVCNFx1NzVCQVx1NzVCRlx1NzVDMFx1NzVDMVx1NzVDNFx1NzVDNlx1NzVDQ1x1NzVDRVx1NzVDRlx1NzVEN1x1NzVEQ1x1NzVERlx1NzVFMFx1NzVFMVx1NzVFNFx1NzVFN1x1NzVFQ1x1NzVFRVx1NzVFRlx1NzVGMVx1NzVGOVx1NzYwMFx1NzYwMlx1NzYwM1x1NzYwNFx1NzYwN1x1NzYwOFx1NzYwQVx1NzYwQ1x1NzYwRlx1NzYxMlx1NzYxM1x1NzYxNVx1NzYxNlx1NzYxOVx1NzYxQlx1NzYxQ1x1NzYxRFx1NzYxRVx1NzYyM1x1NzYyNVx1NzYyNlx1NzYyOVx1NzYyRFx1NzYzMlx1NzYzM1x1NzYzNVx1NzYzOFx1NzYzOVwiXSxcbltcIjhmY2VhMVwiLFwiXHU3NjNBXHU3NjNDXHU3NjRBXHU3NjQwXHU3NjQxXHU3NjQzXHU3NjQ0XHU3NjQ1XHU3NjQ5XHU3NjRCXHU3NjU1XHU3NjU5XHU3NjVGXHU3NjY0XHU3NjY1XHU3NjZEXHU3NjZFXHU3NjZGXHU3NjcxXHU3Njc0XHU3NjgxXHU3Njg1XHU3NjhDXHU3NjhEXHU3Njk1XHU3NjlCXHU3NjlDXHU3NjlEXHU3NjlGXHU3NkEwXHU3NkEyXCIsNixcIlx1NzZBQVx1NzZBRFx1NzZCRFx1NzZDMVx1NzZDNVx1NzZDOVx1NzZDQlx1NzZDQ1x1NzZDRVx1NzZENFx1NzZEOVx1NzZFMFx1NzZFNlx1NzZFOFx1NzZFQ1x1NzZGMFx1NzZGMVx1NzZGNlx1NzZGOVx1NzZGQ1x1NzcwMFx1NzcwNlx1NzcwQVx1NzcwRVx1NzcxMlx1NzcxNFx1NzcxNVx1NzcxN1x1NzcxOVx1NzcxQVx1NzcxQ1x1NzcyMlx1NzcyOFx1NzcyRFx1NzcyRVx1NzcyRlx1NzczNFx1NzczNVx1NzczNlx1NzczOVx1NzczRFx1NzczRVx1Nzc0Mlx1Nzc0NVx1Nzc0Nlx1Nzc0QVx1Nzc0RFx1Nzc0RVx1Nzc0Rlx1Nzc1Mlx1Nzc1Nlx1Nzc1N1x1Nzc1Q1x1Nzc1RVx1Nzc1Rlx1Nzc2MFx1Nzc2MlwiXSxcbltcIjhmY2ZhMVwiLFwiXHU3NzY0XHU3NzY3XHU3NzZBXHU3NzZDXHU3NzcwXHU3NzcyXHU3NzczXHU3Nzc0XHU3NzdBXHU3NzdEXHU3NzgwXHU3Nzg0XHU3NzhDXHU3NzhEXHU3Nzk0XHU3Nzk1XHU3Nzk2XHU3NzlBXHU3NzlGXHU3N0EyXHU3N0E3XHU3N0FBXHU3N0FFXHU3N0FGXHU3N0IxXHU3N0I1XHU3N0JFXHU3N0MzXHU3N0M5XHU3N0QxXHU3N0QyXHU3N0Q1XHU3N0Q5XHU3N0RFXHU3N0RGXHU3N0UwXHU3N0U0XHU3N0U2XHU3N0VBXHU3N0VDXHU3N0YwXHU3N0YxXHU3N0Y0XHU3N0Y4XHU3N0ZCXHU3ODA1XHU3ODA2XHU3ODA5XHU3ODBEXHU3ODBFXHU3ODExXHU3ODFEXHU3ODIxXHU3ODIyXHU3ODIzXHU3ODJEXHU3ODJFXHU3ODMwXHU3ODM1XHU3ODM3XHU3ODQzXHU3ODQ0XHU3ODQ3XHU3ODQ4XHU3ODRDXHU3ODRFXHU3ODUyXHU3ODVDXHU3ODVFXHU3ODYwXHU3ODYxXHU3ODYzXHU3ODY0XHU3ODY4XHU3ODZBXHU3ODZFXHU3ODdBXHU3ODdFXHU3ODhBXHU3ODhGXHU3ODk0XHU3ODk4XHU3OEExXHU3ODlEXHU3ODlFXHU3ODlGXHU3OEE0XHU3OEE4XHU3OEFDXHU3OEFEXHU3OEIwXHU3OEIxXHU3OEIyXHU3OEIzXCJdLFxuW1wiOGZkMGExXCIsXCJcdTc4QkJcdTc4QkRcdTc4QkZcdTc4QzdcdTc4QzhcdTc4QzlcdTc4Q0NcdTc4Q0VcdTc4RDJcdTc4RDNcdTc4RDVcdTc4RDZcdTc4RTRcdTc4REJcdTc4REZcdTc4RTBcdTc4RTFcdTc4RTZcdTc4RUFcdTc4RjJcdTc4RjNcdTc5MDBcdTc4RjZcdTc4RjdcdTc4RkFcdTc4RkJcdTc4RkZcdTc5MDZcdTc5MENcdTc5MTBcdTc5MUFcdTc5MUNcdTc5MUVcdTc5MUZcdTc5MjBcdTc5MjVcdTc5MjdcdTc5MjlcdTc5MkRcdTc5MzFcdTc5MzRcdTc5MzVcdTc5M0JcdTc5M0RcdTc5M0ZcdTc5NDRcdTc5NDVcdTc5NDZcdTc5NEFcdTc5NEJcdTc5NEZcdTc5NTFcdTc5NTRcdTc5NThcdTc5NUJcdTc5NUNcdTc5NjdcdTc5NjlcdTc5NkJcdTc5NzJcdTc5NzlcdTc5N0JcdTc5N0NcdTc5N0VcdTc5OEJcdTc5OENcdTc5OTFcdTc5OTNcdTc5OTRcdTc5OTVcdTc5OTZcdTc5OThcdTc5OUJcdTc5OUNcdTc5QTFcdTc5QThcdTc5QTlcdTc5QUJcdTc5QUZcdTc5QjFcdTc5QjRcdTc5QjhcdTc5QkJcdTc5QzJcdTc5QzRcdTc5QzdcdTc5QzhcdTc5Q0FcdTc5Q0ZcdTc5RDRcdTc5RDZcdTc5REFcdTc5RERcdTc5REVcIl0sXG5bXCI4ZmQxYTFcIixcIlx1NzlFMFx1NzlFMlx1NzlFNVx1NzlFQVx1NzlFQlx1NzlFRFx1NzlGMVx1NzlGOFx1NzlGQ1x1N0EwMlx1N0EwM1x1N0EwN1x1N0EwOVx1N0EwQVx1N0EwQ1x1N0ExMVx1N0ExNVx1N0ExQlx1N0ExRVx1N0EyMVx1N0EyN1x1N0EyQlx1N0EyRFx1N0EyRlx1N0EzMFx1N0EzNFx1N0EzNVx1N0EzOFx1N0EzOVx1N0EzQVx1N0E0NFx1N0E0NVx1N0E0N1x1N0E0OFx1N0E0Q1x1N0E1NVx1N0E1Nlx1N0E1OVx1N0E1Q1x1N0E1RFx1N0E1Rlx1N0E2MFx1N0E2NVx1N0E2N1x1N0E2QVx1N0E2RFx1N0E3NVx1N0E3OFx1N0E3RVx1N0E4MFx1N0E4Mlx1N0E4NVx1N0E4Nlx1N0E4QVx1N0E4Qlx1N0E5MFx1N0E5MVx1N0E5NFx1N0E5RVx1N0FBMFx1N0FBM1x1N0FBQ1x1N0FCM1x1N0FCNVx1N0FCOVx1N0FCQlx1N0FCQ1x1N0FDNlx1N0FDOVx1N0FDQ1x1N0FDRVx1N0FEMVx1N0FEQlx1N0FFOFx1N0FFOVx1N0FFQlx1N0FFQ1x1N0FGMVx1N0FGNFx1N0FGQlx1N0FGRFx1N0FGRVx1N0IwN1x1N0IxNFx1N0IxRlx1N0IyM1x1N0IyN1x1N0IyOVx1N0IyQVx1N0IyQlx1N0IyRFx1N0IyRVx1N0IyRlx1N0IzMFwiXSxcbltcIjhmZDJhMVwiLFwiXHU3QjMxXHU3QjM0XHU3QjNEXHU3QjNGXHU3QjQwXHU3QjQxXHU3QjQ3XHU3QjRFXHU3QjU1XHU3QjYwXHU3QjY0XHU3QjY2XHU3QjY5XHU3QjZBXHU3QjZEXHU3QjZGXHU3QjcyXHU3QjczXHU3Qjc3XHU3Qjg0XHU3Qjg5XHU3QjhFXHU3QjkwXHU3QjkxXHU3Qjk2XHU3QjlCXHU3QjlFXHU3QkEwXHU3QkE1XHU3QkFDXHU3QkFGXHU3QkIwXHU3QkIyXHU3QkI1XHU3QkI2XHU3QkJBXHU3QkJCXHU3QkJDXHU3QkJEXHU3QkMyXHU3QkM1XHU3QkM4XHU3QkNBXHU3QkQ0XHU3QkQ2XHU3QkQ3XHU3QkQ5XHU3QkRBXHU3QkRCXHU3QkU4XHU3QkVBXHU3QkYyXHU3QkY0XHU3QkY1XHU3QkY4XHU3QkY5XHU3QkZBXHU3QkZDXHU3QkZFXHU3QzAxXHU3QzAyXHU3QzAzXHU3QzA0XHU3QzA2XHU3QzA5XHU3QzBCXHU3QzBDXHU3QzBFXHU3QzBGXHU3QzE5XHU3QzFCXHU3QzIwXHU3QzI1XHU3QzI2XHU3QzI4XHU3QzJDXHU3QzMxXHU3QzMzXHU3QzM0XHU3QzM2XHU3QzM5XHU3QzNBXHU3QzQ2XHU3QzRBXHU3QzU1XHU3QzUxXHU3QzUyXHU3QzUzXHU3QzU5XCIsNV0sXG5bXCI4ZmQzYTFcIixcIlx1N0M2MVx1N0M2M1x1N0M2N1x1N0M2OVx1N0M2RFx1N0M2RVx1N0M3MFx1N0M3Mlx1N0M3OVx1N0M3Q1x1N0M3RFx1N0M4Nlx1N0M4N1x1N0M4Rlx1N0M5NFx1N0M5RVx1N0NBMFx1N0NBNlx1N0NCMFx1N0NCNlx1N0NCN1x1N0NCQVx1N0NCQlx1N0NCQ1x1N0NCRlx1N0NDNFx1N0NDN1x1N0NDOFx1N0NDOVx1N0NDRFx1N0NDRlx1N0NEM1x1N0NENFx1N0NENVx1N0NEN1x1N0NEOVx1N0NEQVx1N0NERFx1N0NFNlx1N0NFOVx1N0NFQlx1N0NGNVx1N0QwM1x1N0QwN1x1N0QwOFx1N0QwOVx1N0QwRlx1N0QxMVx1N0QxMlx1N0QxM1x1N0QxNlx1N0QxRFx1N0QxRVx1N0QyM1x1N0QyNlx1N0QyQVx1N0QyRFx1N0QzMVx1N0QzQ1x1N0QzRFx1N0QzRVx1N0Q0MFx1N0Q0MVx1N0Q0N1x1N0Q0OFx1N0Q0RFx1N0Q1MVx1N0Q1M1x1N0Q1N1x1N0Q1OVx1N0Q1QVx1N0Q1Q1x1N0Q1RFx1N0Q2NVx1N0Q2N1x1N0Q2QVx1N0Q3MFx1N0Q3OFx1N0Q3QVx1N0Q3Qlx1N0Q3Rlx1N0Q4MVx1N0Q4Mlx1N0Q4M1x1N0Q4NVx1N0Q4Nlx1N0Q4OFx1N0Q4Qlx1N0Q4Q1x1N0Q4RFx1N0Q5MVx1N0Q5Nlx1N0Q5N1x1N0Q5RFwiXSxcbltcIjhmZDRhMVwiLFwiXHU3RDlFXHU3REE2XHU3REE3XHU3REFBXHU3REIzXHU3REI2XHU3REI3XHU3REI5XHU3REMyXCIsNCxcIlx1N0RDQ1x1N0RDRFx1N0RDRVx1N0REN1x1N0REOVx1N0UwMFx1N0RFMlx1N0RFNVx1N0RFNlx1N0RFQVx1N0RFQlx1N0RFRFx1N0RGMVx1N0RGNVx1N0RGNlx1N0RGOVx1N0RGQVx1N0UwOFx1N0UxMFx1N0UxMVx1N0UxNVx1N0UxN1x1N0UxQ1x1N0UxRFx1N0UyMFx1N0UyN1x1N0UyOFx1N0UyQ1x1N0UyRFx1N0UyRlx1N0UzM1x1N0UzNlx1N0UzRlx1N0U0NFx1N0U0NVx1N0U0N1x1N0U0RVx1N0U1MFx1N0U1Mlx1N0U1OFx1N0U1Rlx1N0U2MVx1N0U2Mlx1N0U2NVx1N0U2Qlx1N0U2RVx1N0U2Rlx1N0U3M1x1N0U3OFx1N0U3RVx1N0U4MVx1N0U4Nlx1N0U4N1x1N0U4QVx1N0U4RFx1N0U5MVx1N0U5NVx1N0U5OFx1N0U5QVx1N0U5RFx1N0U5RVx1N0YzQ1x1N0YzQlx1N0YzRFx1N0YzRVx1N0YzRlx1N0Y0M1x1N0Y0NFx1N0Y0N1x1N0Y0Rlx1N0Y1Mlx1N0Y1M1x1N0Y1Qlx1N0Y1Q1x1N0Y1RFx1N0Y2MVx1N0Y2M1x1N0Y2NFx1N0Y2NVx1N0Y2Nlx1N0Y2RFwiXSxcbltcIjhmZDVhMVwiLFwiXHU3RjcxXHU3RjdEXHU3RjdFXHU3RjdGXHU3RjgwXHU3RjhCXHU3RjhEXHU3RjhGXHU3RjkwXHU3RjkxXHU3Rjk2XHU3Rjk3XHU3RjlDXHU3RkExXHU3RkEyXHU3RkE2XHU3RkFBXHU3RkFEXHU3RkI0XHU3RkJDXHU3RkJGXHU3RkMwXHU3RkMzXHU3RkM4XHU3RkNFXHU3RkNGXHU3RkRCXHU3RkRGXHU3RkUzXHU3RkU1XHU3RkU4XHU3RkVDXHU3RkVFXHU3RkVGXHU3RkYyXHU3RkZBXHU3RkZEXHU3RkZFXHU3RkZGXHU4MDA3XHU4MDA4XHU4MDBBXHU4MDBEXHU4MDBFXHU4MDBGXHU4MDExXHU4MDEzXHU4MDE0XHU4MDE2XHU4MDFEXHU4MDFFXHU4MDFGXHU4MDIwXHU4MDI0XHU4MDI2XHU4MDJDXHU4MDJFXHU4MDMwXHU4MDM0XHU4MDM1XHU4MDM3XHU4MDM5XHU4MDNBXHU4MDNDXHU4MDNFXHU4MDQwXHU4MDQ0XHU4MDYwXHU4MDY0XHU4MDY2XHU4MDZEXHU4MDcxXHU4MDc1XHU4MDgxXHU4MDg4XHU4MDhFXHU4MDlDXHU4MDlFXHU4MEE2XHU4MEE3XHU4MEFCXHU4MEI4XHU4MEI5XHU4MEM4XHU4MENEXHU4MENGXHU4MEQyXHU4MEQ0XHU4MEQ1XHU4MEQ3XHU4MEQ4XHU4MEUwXHU4MEVEXHU4MEVFXCJdLFxuW1wiOGZkNmExXCIsXCJcdTgwRjBcdTgwRjJcdTgwRjNcdTgwRjZcdTgwRjlcdTgwRkFcdTgwRkVcdTgxMDNcdTgxMEJcdTgxMTZcdTgxMTdcdTgxMThcdTgxMUNcdTgxMUVcdTgxMjBcdTgxMjRcdTgxMjdcdTgxMkNcdTgxMzBcdTgxMzVcdTgxM0FcdTgxM0NcdTgxNDVcdTgxNDdcdTgxNEFcdTgxNENcdTgxNTJcdTgxNTdcdTgxNjBcdTgxNjFcdTgxNjdcdTgxNjhcdTgxNjlcdTgxNkRcdTgxNkZcdTgxNzdcdTgxODFcdTgxOTBcdTgxODRcdTgxODVcdTgxODZcdTgxOEJcdTgxOEVcdTgxOTZcdTgxOThcdTgxOUJcdTgxOUVcdTgxQTJcdTgxQUVcdTgxQjJcdTgxQjRcdTgxQkJcdTgxQ0JcdTgxQzNcdTgxQzVcdTgxQ0FcdTgxQ0VcdTgxQ0ZcdTgxRDVcdTgxRDdcdTgxREJcdTgxRERcdTgxREVcdTgxRTFcdTgxRTRcdTgxRUJcdTgxRUNcdTgxRjBcdTgxRjFcdTgxRjJcdTgxRjVcdTgxRjZcdTgxRjhcdTgxRjlcdTgxRkRcdTgxRkZcdTgyMDBcdTgyMDNcdTgyMEZcdTgyMTNcdTgyMTRcdTgyMTlcdTgyMUFcdTgyMURcdTgyMjFcdTgyMjJcdTgyMjhcdTgyMzJcdTgyMzRcdTgyM0FcdTgyNDNcdTgyNDRcdTgyNDVcdTgyNDZcIl0sXG5bXCI4ZmQ3YTFcIixcIlx1ODI0Qlx1ODI0RVx1ODI0Rlx1ODI1MVx1ODI1Nlx1ODI1Q1x1ODI2MFx1ODI2M1x1ODI2N1x1ODI2RFx1ODI3NFx1ODI3Qlx1ODI3RFx1ODI3Rlx1ODI4MFx1ODI4MVx1ODI4M1x1ODI4NFx1ODI4N1x1ODI4OVx1ODI4QVx1ODI4RVx1ODI5MVx1ODI5NFx1ODI5Nlx1ODI5OFx1ODI5QVx1ODI5Qlx1ODJBMFx1ODJBMVx1ODJBM1x1ODJBNFx1ODJBN1x1ODJBOFx1ODJBOVx1ODJBQVx1ODJBRVx1ODJCMFx1ODJCMlx1ODJCNFx1ODJCN1x1ODJCQVx1ODJCQ1x1ODJCRVx1ODJCRlx1ODJDNlx1ODJEMFx1ODJENVx1ODJEQVx1ODJFMFx1ODJFMlx1ODJFNFx1ODJFOFx1ODJFQVx1ODJFRFx1ODJFRlx1ODJGNlx1ODJGN1x1ODJGRFx1ODJGRVx1ODMwMFx1ODMwMVx1ODMwN1x1ODMwOFx1ODMwQVx1ODMwQlx1ODM1NFx1ODMxQlx1ODMxRFx1ODMxRVx1ODMxRlx1ODMyMVx1ODMyMlx1ODMyQ1x1ODMyRFx1ODMyRVx1ODMzMFx1ODMzM1x1ODMzN1x1ODMzQVx1ODMzQ1x1ODMzRFx1ODM0Mlx1ODM0M1x1ODM0NFx1ODM0N1x1ODM0RFx1ODM0RVx1ODM1MVx1ODM1NVx1ODM1Nlx1ODM1N1x1ODM3MFx1ODM3OFwiXSxcbltcIjhmZDhhMVwiLFwiXHU4MzdEXHU4MzdGXHU4MzgwXHU4MzgyXHU4Mzg0XHU4Mzg2XHU4MzhEXHU4MzkyXHU4Mzk0XHU4Mzk1XHU4Mzk4XHU4Mzk5XHU4MzlCXHU4MzlDXHU4MzlEXHU4M0E2XHU4M0E3XHU4M0E5XHU4M0FDXHU4M0JFXHU4M0JGXHU4M0MwXHU4M0M3XHU4M0M5XHU4M0NGXHU4M0QwXHU4M0QxXHU4M0Q0XHU4M0REXHU4MzUzXHU4M0U4XHU4M0VBXHU4M0Y2XHU4M0Y4XHU4M0Y5XHU4M0ZDXHU4NDAxXHU4NDA2XHU4NDBBXHU4NDBGXHU4NDExXHU4NDE1XHU4NDE5XHU4M0FEXHU4NDJGXHU4NDM5XHU4NDQ1XHU4NDQ3XHU4NDQ4XHU4NDRBXHU4NDREXHU4NDRGXHU4NDUxXHU4NDUyXHU4NDU2XHU4NDU4XHU4NDU5XHU4NDVBXHU4NDVDXHU4NDYwXHU4NDY0XHU4NDY1XHU4NDY3XHU4NDZBXHU4NDcwXHU4NDczXHU4NDc0XHU4NDc2XHU4NDc4XHU4NDdDXHU4NDdEXHU4NDgxXHU4NDg1XHU4NDkyXHU4NDkzXHU4NDk1XHU4NDlFXHU4NEE2XHU4NEE4XHU4NEE5XHU4NEFBXHU4NEFGXHU4NEIxXHU4NEI0XHU4NEJBXHU4NEJEXHU4NEJFXHU4NEMwXHU4NEMyXHU4NEM3XHU4NEM4XHU4NENDXHU4NENGXHU4NEQzXCJdLFxuW1wiOGZkOWExXCIsXCJcdTg0RENcdTg0RTdcdTg0RUFcdTg0RUZcdTg0RjBcdTg0RjFcdTg0RjJcdTg0RjdcdTg1MzJcdTg0RkFcdTg0RkJcdTg0RkRcdTg1MDJcdTg1MDNcdTg1MDdcdTg1MENcdTg1MEVcdTg1MTBcdTg1MUNcdTg1MUVcdTg1MjJcdTg1MjNcdTg1MjRcdTg1MjVcdTg1MjdcdTg1MkFcdTg1MkJcdTg1MkZcdTg1MzNcdTg1MzRcdTg1MzZcdTg1M0ZcdTg1NDZcdTg1NEZcIiw0LFwiXHU4NTU2XHU4NTU5XHU4NTVDXCIsNixcIlx1ODU2NFx1ODU2Qlx1ODU2Rlx1ODU3OVx1ODU3QVx1ODU3Qlx1ODU3RFx1ODU3Rlx1ODU4MVx1ODU4NVx1ODU4Nlx1ODU4OVx1ODU4Qlx1ODU4Q1x1ODU4Rlx1ODU5M1x1ODU5OFx1ODU5RFx1ODU5Rlx1ODVBMFx1ODVBMlx1ODVBNVx1ODVBN1x1ODVCNFx1ODVCNlx1ODVCN1x1ODVCOFx1ODVCQ1x1ODVCRFx1ODVCRVx1ODVCRlx1ODVDMlx1ODVDN1x1ODVDQVx1ODVDQlx1ODVDRVx1ODVBRFx1ODVEOFx1ODVEQVx1ODVERlx1ODVFMFx1ODVFNlx1ODVFOFx1ODVFRFx1ODVGM1x1ODVGNlx1ODVGQ1wiXSxcbltcIjhmZGFhMVwiLFwiXHU4NUZGXHU4NjAwXHU4NjA0XHU4NjA1XHU4NjBEXHU4NjBFXHU4NjEwXHU4NjExXHU4NjEyXHU4NjE4XHU4NjE5XHU4NjFCXHU4NjFFXHU4NjIxXHU4NjI3XHU4NjI5XHU4NjM2XHU4NjM4XHU4NjNBXHU4NjNDXHU4NjNEXHU4NjQwXHU4NjQyXHU4NjQ2XHU4NjUyXHU4NjUzXHU4NjU2XHU4NjU3XHU4NjU4XHU4NjU5XHU4NjVEXHU4NjYwXCIsNCxcIlx1ODY2OVx1ODY2Q1x1ODY2Rlx1ODY3NVx1ODY3Nlx1ODY3N1x1ODY3QVx1ODY4RFx1ODY5MVx1ODY5Nlx1ODY5OFx1ODY5QVx1ODY5Q1x1ODZBMVx1ODZBNlx1ODZBN1x1ODZBOFx1ODZBRFx1ODZCMVx1ODZCM1x1ODZCNFx1ODZCNVx1ODZCN1x1ODZCOFx1ODZCOVx1ODZCRlx1ODZDMFx1ODZDMVx1ODZDM1x1ODZDNVx1ODZEMVx1ODZEMlx1ODZENVx1ODZEN1x1ODZEQVx1ODZEQ1x1ODZFMFx1ODZFM1x1ODZFNVx1ODZFN1x1ODY4OFx1ODZGQVx1ODZGQ1x1ODZGRFx1ODcwNFx1ODcwNVx1ODcwN1x1ODcwQlx1ODcwRVx1ODcwRlx1ODcxMFx1ODcxM1x1ODcxNFx1ODcxOVx1ODcxRVx1ODcxRlx1ODcyMVx1ODcyM1wiXSxcbltcIjhmZGJhMVwiLFwiXHU4NzI4XHU4NzJFXHU4NzJGXHU4NzMxXHU4NzMyXHU4NzM5XHU4NzNBXHU4NzNDXHU4NzNEXHU4NzNFXHU4NzQwXHU4NzQzXHU4NzQ1XHU4NzREXHU4NzU4XHU4NzVEXHU4NzYxXHU4NzY0XHU4NzY1XHU4NzZGXHU4NzcxXHU4NzcyXHU4NzdCXHU4NzgzXCIsNixcIlx1ODc4Qlx1ODc4Q1x1ODc5MFx1ODc5M1x1ODc5NVx1ODc5N1x1ODc5OFx1ODc5OVx1ODc5RVx1ODdBMFx1ODdBM1x1ODdBN1x1ODdBQ1x1ODdBRFx1ODdBRVx1ODdCMVx1ODdCNVx1ODdCRVx1ODdCRlx1ODdDMVx1ODdDOFx1ODdDOVx1ODdDQVx1ODdDRVx1ODdENVx1ODdENlx1ODdEOVx1ODdEQVx1ODdEQ1x1ODdERlx1ODdFMlx1ODdFM1x1ODdFNFx1ODdFQVx1ODdFQlx1ODdFRFx1ODdGMVx1ODdGM1x1ODdGOFx1ODdGQVx1ODdGRlx1ODgwMVx1ODgwM1x1ODgwNlx1ODgwOVx1ODgwQVx1ODgwQlx1ODgxMFx1ODgxOVx1ODgxMlx1ODgxM1x1ODgxNFx1ODgxOFx1ODgxQVx1ODgxQlx1ODgxQ1x1ODgxRVx1ODgxRlx1ODgyOFx1ODgyRFx1ODgyRVx1ODgzMFx1ODgzMlx1ODgzNVwiXSxcbltcIjhmZGNhMVwiLFwiXHU4ODNBXHU4ODNDXHU4ODQxXHU4ODQzXHU4ODQ1XHU4ODQ4XHU4ODQ5XHU4ODRBXHU4ODRCXHU4ODRFXHU4ODUxXHU4ODU1XHU4ODU2XHU4ODU4XHU4ODVBXHU4ODVDXHU4ODVGXHU4ODYwXHU4ODY0XHU4ODY5XHU4ODcxXHU4ODc5XHU4ODdCXHU4ODgwXHU4ODk4XHU4ODlBXHU4ODlCXHU4ODlDXHU4ODlGXHU4OEEwXHU4OEE4XHU4OEFBXHU4OEJBXHU4OEJEXHU4OEJFXHU4OEMwXHU4OENBXCIsNCxcIlx1ODhEMVx1ODhEMlx1ODhEM1x1ODhEQlx1ODhERVx1ODhFN1x1ODhFRlx1ODhGMFx1ODhGMVx1ODhGNVx1ODhGN1x1ODkwMVx1ODkwNlx1ODkwRFx1ODkwRVx1ODkwRlx1ODkxNVx1ODkxNlx1ODkxOFx1ODkxOVx1ODkxQVx1ODkxQ1x1ODkyMFx1ODkyNlx1ODkyN1x1ODkyOFx1ODkzMFx1ODkzMVx1ODkzMlx1ODkzNVx1ODkzOVx1ODkzQVx1ODkzRVx1ODk0MFx1ODk0Mlx1ODk0NVx1ODk0Nlx1ODk0OVx1ODk0Rlx1ODk1Mlx1ODk1N1x1ODk1QVx1ODk1Qlx1ODk1Q1x1ODk2MVx1ODk2Mlx1ODk2M1x1ODk2Qlx1ODk2RVx1ODk3MFx1ODk3M1x1ODk3NVx1ODk3QVwiXSxcbltcIjhmZGRhMVwiLFwiXHU4OTdCXHU4OTdDXHU4OTdEXHU4OTg5XHU4OThEXHU4OTkwXHU4OTk0XHU4OTk1XHU4OTlCXHU4OTlDXHU4OTlGXHU4OUEwXHU4OUE1XHU4OUIwXHU4OUI0XHU4OUI1XHU4OUI2XHU4OUI3XHU4OUJDXHU4OUQ0XCIsNCxcIlx1ODlFNVx1ODlFOVx1ODlFQlx1ODlFRFx1ODlGMVx1ODlGM1x1ODlGNlx1ODlGOVx1ODlGRFx1ODlGRlx1OEEwNFx1OEEwNVx1OEEwN1x1OEEwRlx1OEExMVx1OEExMlx1OEExNFx1OEExNVx1OEExRVx1OEEyMFx1OEEyMlx1OEEyNFx1OEEyNlx1OEEyQlx1OEEyQ1x1OEEyRlx1OEEzNVx1OEEzN1x1OEEzRFx1OEEzRVx1OEE0MFx1OEE0M1x1OEE0NVx1OEE0N1x1OEE0OVx1OEE0RFx1OEE0RVx1OEE1M1x1OEE1Nlx1OEE1N1x1OEE1OFx1OEE1Q1x1OEE1RFx1OEE2MVx1OEE2NVx1OEE2N1x1OEE3NVx1OEE3Nlx1OEE3N1x1OEE3OVx1OEE3QVx1OEE3Qlx1OEE3RVx1OEE3Rlx1OEE4MFx1OEE4M1x1OEE4Nlx1OEE4Qlx1OEE4Rlx1OEE5MFx1OEE5Mlx1OEE5Nlx1OEE5N1x1OEE5OVx1OEE5Rlx1OEFBN1x1OEFBOVx1OEFBRVx1OEFBRlx1OEFCM1wiXSxcbltcIjhmZGVhMVwiLFwiXHU4QUI2XHU4QUI3XHU4QUJCXHU4QUJFXHU4QUMzXHU4QUM2XHU4QUM4XHU4QUM5XHU4QUNBXHU4QUQxXHU4QUQzXHU4QUQ0XHU4QUQ1XHU4QUQ3XHU4QUREXHU4QURGXHU4QUVDXHU4QUYwXHU4QUY0XHU4QUY1XHU4QUY2XHU4QUZDXHU4QUZGXHU4QjA1XHU4QjA2XHU4QjBCXHU4QjExXHU4QjFDXHU4QjFFXHU4QjFGXHU4QjBBXHU4QjJEXHU4QjMwXHU4QjM3XHU4QjNDXHU4QjQyXCIsNCxcIlx1OEI0OFx1OEI1Mlx1OEI1M1x1OEI1NFx1OEI1OVx1OEI0RFx1OEI1RVx1OEI2M1x1OEI2RFx1OEI3Nlx1OEI3OFx1OEI3OVx1OEI3Q1x1OEI3RVx1OEI4MVx1OEI4NFx1OEI4NVx1OEI4Qlx1OEI4RFx1OEI4Rlx1OEI5NFx1OEI5NVx1OEI5Q1x1OEI5RVx1OEI5Rlx1OEMzOFx1OEMzOVx1OEMzRFx1OEMzRVx1OEM0NVx1OEM0N1x1OEM0OVx1OEM0Qlx1OEM0Rlx1OEM1MVx1OEM1M1x1OEM1NFx1OEM1N1x1OEM1OFx1OEM1Qlx1OEM1RFx1OEM1OVx1OEM2M1x1OEM2NFx1OEM2Nlx1OEM2OFx1OEM2OVx1OEM2RFx1OEM3M1x1OEM3NVx1OEM3Nlx1OEM3Qlx1OEM3RVx1OEM4NlwiXSxcbltcIjhmZGZhMVwiLFwiXHU4Qzg3XHU4QzhCXHU4QzkwXHU4QzkyXHU4QzkzXHU4Qzk5XHU4QzlCXHU4QzlDXHU4Q0E0XHU4Q0I5XHU4Q0JBXHU4Q0M1XHU4Q0M2XHU4Q0M5XHU4Q0NCXHU4Q0NGXHU4Q0Q2XHU4Q0Q1XHU4Q0Q5XHU4Q0REXHU4Q0UxXHU4Q0U4XHU4Q0VDXHU4Q0VGXHU4Q0YwXHU4Q0YyXHU4Q0Y1XHU4Q0Y3XHU4Q0Y4XHU4Q0ZFXHU4Q0ZGXHU4RDAxXHU4RDAzXHU4RDA5XHU4RDEyXHU4RDE3XHU4RDFCXHU4RDY1XHU4RDY5XHU4RDZDXHU4RDZFXHU4RDdGXHU4RDgyXHU4RDg0XHU4RDg4XHU4RDhEXHU4RDkwXHU4RDkxXHU4RDk1XHU4RDlFXHU4RDlGXHU4REEwXHU4REE2XHU4REFCXHU4REFDXHU4REFGXHU4REIyXHU4REI1XHU4REI3XHU4REI5XHU4REJCXHU4REMwXHU4REM1XHU4REM2XHU4REM3XHU4REM4XHU4RENBXHU4RENFXHU4REQxXHU4REQ0XHU4REQ1XHU4REQ3XHU4REQ5XHU4REU0XHU4REU1XHU4REU3XHU4REVDXHU4REYwXHU4REJDXHU4REYxXHU4REYyXHU4REY0XHU4REZEXHU4RTAxXHU4RTA0XHU4RTA1XHU4RTA2XHU4RTBCXHU4RTExXHU4RTE0XHU4RTE2XHU4RTIwXHU4RTIxXHU4RTIyXCJdLFxuW1wiOGZlMGExXCIsXCJcdThFMjNcdThFMjZcdThFMjdcdThFMzFcdThFMzNcdThFMzZcdThFMzdcdThFMzhcdThFMzlcdThFM0RcdThFNDBcdThFNDFcdThFNEJcdThFNERcdThFNEVcdThFNEZcdThFNTRcdThFNUJcdThFNUNcdThFNURcdThFNUVcdThFNjFcdThFNjJcdThFNjlcdThFNkNcdThFNkRcdThFNkZcdThFNzBcdThFNzFcdThFNzlcdThFN0FcdThFN0JcdThFODJcdThFODNcdThFODlcdThFOTBcdThFOTJcdThFOTVcdThFOUFcdThFOUJcdThFOURcdThFOUVcdThFQTJcdThFQTdcdThFQTlcdThFQURcdThFQUVcdThFQjNcdThFQjVcdThFQkFcdThFQkJcdThFQzBcdThFQzFcdThFQzNcdThFQzRcdThFQzdcdThFQ0ZcdThFRDFcdThFRDRcdThFRENcdThFRThcdThFRUVcdThFRjBcdThFRjFcdThFRjdcdThFRjlcdThFRkFcdThFRURcdThGMDBcdThGMDJcdThGMDdcdThGMDhcdThGMEZcdThGMTBcdThGMTZcdThGMTdcdThGMThcdThGMUVcdThGMjBcdThGMjFcdThGMjNcdThGMjVcdThGMjdcdThGMjhcdThGMkNcdThGMkRcdThGMkVcdThGMzRcdThGMzVcdThGMzZcdThGMzdcdThGM0FcdThGNDBcdThGNDFcIl0sXG5bXCI4ZmUxYTFcIixcIlx1OEY0M1x1OEY0N1x1OEY0Rlx1OEY1MVwiLDQsXCJcdThGNThcdThGNURcdThGNUVcdThGNjVcdThGOURcdThGQTBcdThGQTFcdThGQTRcdThGQTVcdThGQTZcdThGQjVcdThGQjZcdThGQjhcdThGQkVcdThGQzBcdThGQzFcdThGQzZcdThGQ0FcdThGQ0JcdThGQ0RcdThGRDBcdThGRDJcdThGRDNcdThGRDVcdThGRTBcdThGRTNcdThGRTRcdThGRThcdThGRUVcdThGRjFcdThGRjVcdThGRjZcdThGRkJcdThGRkVcdTkwMDJcdTkwMDRcdTkwMDhcdTkwMENcdTkwMThcdTkwMUJcdTkwMjhcdTkwMjlcdTkwMkZcdTkwMkFcdTkwMkNcdTkwMkRcdTkwMzNcdTkwMzRcdTkwMzdcdTkwM0ZcdTkwNDNcdTkwNDRcdTkwNENcdTkwNUJcdTkwNURcdTkwNjJcdTkwNjZcdTkwNjdcdTkwNkNcdTkwNzBcdTkwNzRcdTkwNzlcdTkwODVcdTkwODhcdTkwOEJcdTkwOENcdTkwOEVcdTkwOTBcdTkwOTVcdTkwOTdcdTkwOThcdTkwOTlcdTkwOUJcdTkwQTBcdTkwQTFcdTkwQTJcdTkwQTVcdTkwQjBcdTkwQjJcdTkwQjNcdTkwQjRcdTkwQjZcdTkwQkRcdTkwQ0NcdTkwQkVcdTkwQzNcIl0sXG5bXCI4ZmUyYTFcIixcIlx1OTBDNFx1OTBDNVx1OTBDN1x1OTBDOFx1OTBENVx1OTBEN1x1OTBEOFx1OTBEOVx1OTBEQ1x1OTBERFx1OTBERlx1OTBFNVx1OTBEMlx1OTBGNlx1OTBFQlx1OTBFRlx1OTBGMFx1OTBGNFx1OTBGRVx1OTBGRlx1OTEwMFx1OTEwNFx1OTEwNVx1OTEwNlx1OTEwOFx1OTEwRFx1OTExMFx1OTExNFx1OTExNlx1OTExN1x1OTExOFx1OTExQVx1OTExQ1x1OTExRVx1OTEyMFx1OTEyNVx1OTEyMlx1OTEyM1x1OTEyN1x1OTEyOVx1OTEyRVx1OTEyRlx1OTEzMVx1OTEzNFx1OTEzNlx1OTEzN1x1OTEzOVx1OTEzQVx1OTEzQ1x1OTEzRFx1OTE0M1x1OTE0N1x1OTE0OFx1OTE0Rlx1OTE1M1x1OTE1N1x1OTE1OVx1OTE1QVx1OTE1Qlx1OTE2MVx1OTE2NFx1OTE2N1x1OTE2RFx1OTE3NFx1OTE3OVx1OTE3QVx1OTE3Qlx1OTE4MVx1OTE4M1x1OTE4NVx1OTE4Nlx1OTE4QVx1OTE4RVx1OTE5MVx1OTE5M1x1OTE5NFx1OTE5NVx1OTE5OFx1OTE5RVx1OTFBMVx1OTFBNlx1OTFBOFx1OTFBQ1x1OTFBRFx1OTFBRVx1OTFCMFx1OTFCMVx1OTFCMlx1OTFCM1x1OTFCNlx1OTFCQlx1OTFCQ1x1OTFCRFx1OTFCRlwiXSxcbltcIjhmZTNhMVwiLFwiXHU5MUMyXHU5MUMzXHU5MUM1XHU5MUQzXHU5MUQ0XHU5MUQ3XHU5MUQ5XHU5MURBXHU5MURFXHU5MUU0XHU5MUU1XHU5MUU5XHU5MUVBXHU5MUVDXCIsNSxcIlx1OTFGN1x1OTFGOVx1OTFGQlx1OTFGRFx1OTIwMFx1OTIwMVx1OTIwNFx1OTIwNVx1OTIwNlx1OTIwN1x1OTIwOVx1OTIwQVx1OTIwQ1x1OTIxMFx1OTIxMlx1OTIxM1x1OTIxNlx1OTIxOFx1OTIxQ1x1OTIxRFx1OTIyM1x1OTIyNFx1OTIyNVx1OTIyNlx1OTIyOFx1OTIyRVx1OTIyRlx1OTIzMFx1OTIzM1x1OTIzNVx1OTIzNlx1OTIzOFx1OTIzOVx1OTIzQVx1OTIzQ1x1OTIzRVx1OTI0MFx1OTI0Mlx1OTI0M1x1OTI0Nlx1OTI0N1x1OTI0QVx1OTI0RFx1OTI0RVx1OTI0Rlx1OTI1MVx1OTI1OFx1OTI1OVx1OTI1Q1x1OTI1RFx1OTI2MFx1OTI2MVx1OTI2NVx1OTI2N1x1OTI2OFx1OTI2OVx1OTI2RVx1OTI2Rlx1OTI3MFx1OTI3NVwiLDQsXCJcdTkyN0JcdTkyN0NcdTkyN0RcdTkyN0ZcdTkyODhcdTkyODlcdTkyOEFcdTkyOERcdTkyOEVcdTkyOTJcdTkyOTdcIl0sXG5bXCI4ZmU0YTFcIixcIlx1OTI5OVx1OTI5Rlx1OTJBMFx1OTJBNFx1OTJBNVx1OTJBN1x1OTJBOFx1OTJBQlx1OTJBRlx1OTJCMlx1OTJCNlx1OTJCOFx1OTJCQVx1OTJCQlx1OTJCQ1x1OTJCRFx1OTJCRlwiLDQsXCJcdTkyQzVcdTkyQzZcdTkyQzdcdTkyQzhcdTkyQ0JcdTkyQ0NcdTkyQ0RcdTkyQ0VcdTkyRDBcdTkyRDNcdTkyRDVcdTkyRDdcdTkyRDhcdTkyRDlcdTkyRENcdTkyRERcdTkyREZcdTkyRTBcdTkyRTFcdTkyRTNcdTkyRTVcdTkyRTdcdTkyRThcdTkyRUNcdTkyRUVcdTkyRjBcdTkyRjlcdTkyRkJcdTkyRkZcdTkzMDBcdTkzMDJcdTkzMDhcdTkzMERcdTkzMTFcdTkzMTRcdTkzMTVcdTkzMUNcdTkzMURcdTkzMUVcdTkzMUZcdTkzMjFcdTkzMjRcdTkzMjVcdTkzMjdcdTkzMjlcdTkzMkFcdTkzMzNcdTkzMzRcdTkzMzZcdTkzMzdcdTkzNDdcdTkzNDhcdTkzNDlcdTkzNTBcdTkzNTFcdTkzNTJcdTkzNTVcdTkzNTdcdTkzNThcdTkzNUFcdTkzNUVcdTkzNjRcdTkzNjVcdTkzNjdcdTkzNjlcdTkzNkFcdTkzNkRcdTkzNkZcdTkzNzBcdTkzNzFcdTkzNzNcdTkzNzRcdTkzNzZcIl0sXG5bXCI4ZmU1YTFcIixcIlx1OTM3QVx1OTM3RFx1OTM3Rlx1OTM4MFx1OTM4MVx1OTM4Mlx1OTM4OFx1OTM4QVx1OTM4Qlx1OTM4RFx1OTM4Rlx1OTM5Mlx1OTM5NVx1OTM5OFx1OTM5Qlx1OTM5RVx1OTNBMVx1OTNBM1x1OTNBNFx1OTNBNlx1OTNBOFx1OTNBQlx1OTNCNFx1OTNCNVx1OTNCNlx1OTNCQVx1OTNBOVx1OTNDMVx1OTNDNFx1OTNDNVx1OTNDNlx1OTNDN1x1OTNDOVwiLDQsXCJcdTkzRDNcdTkzRDlcdTkzRENcdTkzREVcdTkzREZcdTkzRTJcdTkzRTZcdTkzRTdcdTkzRjlcdTkzRjdcdTkzRjhcdTkzRkFcdTkzRkJcdTkzRkRcdTk0MDFcdTk0MDJcdTk0MDRcdTk0MDhcdTk0MDlcdTk0MERcdTk0MEVcdTk0MEZcdTk0MTVcdTk0MTZcdTk0MTdcdTk0MUZcdTk0MkVcdTk0MkZcdTk0MzFcdTk0MzJcdTk0MzNcdTk0MzRcdTk0M0JcdTk0M0ZcdTk0M0RcdTk0NDNcdTk0NDVcdTk0NDhcdTk0NEFcdTk0NENcdTk0NTVcdTk0NTlcdTk0NUNcdTk0NUZcdTk0NjFcdTk0NjNcdTk0NjhcdTk0NkJcdTk0NkRcdTk0NkVcdTk0NkZcdTk0NzFcdTk0NzJcdTk0ODRcdTk0ODNcdTk1NzhcdTk1NzlcIl0sXG5bXCI4ZmU2YTFcIixcIlx1OTU3RVx1OTU4NFx1OTU4OFx1OTU4Q1x1OTU4RFx1OTU4RVx1OTU5RFx1OTU5RVx1OTU5Rlx1OTVBMVx1OTVBNlx1OTVBOVx1OTVBQlx1OTVBQ1x1OTVCNFx1OTVCNlx1OTVCQVx1OTVCRFx1OTVCRlx1OTVDNlx1OTVDOFx1OTVDOVx1OTVDQlx1OTVEMFx1OTVEMVx1OTVEMlx1OTVEM1x1OTVEOVx1OTVEQVx1OTVERFx1OTVERVx1OTVERlx1OTVFMFx1OTVFNFx1OTVFNlx1OTYxRFx1OTYxRVx1OTYyMlx1OTYyNFx1OTYyNVx1OTYyNlx1OTYyQ1x1OTYzMVx1OTYzM1x1OTYzN1x1OTYzOFx1OTYzOVx1OTYzQVx1OTYzQ1x1OTYzRFx1OTY0MVx1OTY1Mlx1OTY1NFx1OTY1Nlx1OTY1N1x1OTY1OFx1OTY2MVx1OTY2RVx1OTY3NFx1OTY3Qlx1OTY3Q1x1OTY3RVx1OTY3Rlx1OTY4MVx1OTY4Mlx1OTY4M1x1OTY4NFx1OTY4OVx1OTY5MVx1OTY5Nlx1OTY5QVx1OTY5RFx1OTY5Rlx1OTZBNFx1OTZBNVx1OTZBNlx1OTZBOVx1OTZBRVx1OTZBRlx1OTZCM1x1OTZCQVx1OTZDQVx1OTZEMlx1NURCMlx1OTZEOFx1OTZEQVx1OTZERFx1OTZERVx1OTZERlx1OTZFOVx1OTZFRlx1OTZGMVx1OTZGQVx1OTcwMlwiXSxcbltcIjhmZTdhMVwiLFwiXHU5NzAzXHU5NzA1XHU5NzA5XHU5NzFBXHU5NzFCXHU5NzFEXHU5NzIxXHU5NzIyXHU5NzIzXHU5NzI4XHU5NzMxXHU5NzMzXHU5NzQxXHU5NzQzXHU5NzRBXHU5NzRFXHU5NzRGXHU5NzU1XHU5NzU3XHU5NzU4XHU5NzVBXHU5NzVCXHU5NzYzXHU5NzY3XHU5NzZBXHU5NzZFXHU5NzczXHU5Nzc2XHU5Nzc3XHU5Nzc4XHU5NzdCXHU5NzdEXHU5NzdGXHU5NzgwXHU5Nzg5XHU5Nzk1XHU5Nzk2XHU5Nzk3XHU5Nzk5XHU5NzlBXHU5NzlFXHU5NzlGXHU5N0EyXHU5N0FDXHU5N0FFXHU5N0IxXHU5N0IyXHU5N0I1XHU5N0I2XHU5N0I4XHU5N0I5XHU5N0JBXHU5N0JDXHU5N0JFXHU5N0JGXHU5N0MxXHU5N0M0XHU5N0M1XHU5N0M3XHU5N0M5XHU5N0NBXHU5N0NDXHU5N0NEXHU5N0NFXHU5N0QwXHU5N0QxXHU5N0Q0XHU5N0Q3XHU5N0Q4XHU5N0Q5XHU5N0REXHU5N0RFXHU5N0UwXHU5N0RCXHU5N0UxXHU5N0U0XHU5N0VGXHU5N0YxXHU5N0Y0XHU5N0Y3XHU5N0Y4XHU5N0ZBXHU5ODA3XHU5ODBBXHU5ODE5XHU5ODBEXHU5ODBFXHU5ODE0XHU5ODE2XHU5ODFDXHU5ODFFXHU5ODIwXHU5ODIzXHU5ODI2XCJdLFxuW1wiOGZlOGExXCIsXCJcdTk4MkJcdTk4MkVcdTk4MkZcdTk4MzBcdTk4MzJcdTk4MzNcdTk4MzVcdTk4MjVcdTk4M0VcdTk4NDRcdTk4NDdcdTk4NEFcdTk4NTFcdTk4NTJcdTk4NTNcdTk4NTZcdTk4NTdcdTk4NTlcdTk4NUFcdTk4NjJcdTk4NjNcdTk4NjVcdTk4NjZcdTk4NkFcdTk4NkNcdTk4QUJcdTk4QURcdTk4QUVcdTk4QjBcdTk4QjRcdTk4QjdcdTk4QjhcdTk4QkFcdTk4QkJcdTk4QkZcdTk4QzJcdTk4QzVcdTk4QzhcdTk4Q0NcdTk4RTFcdTk4RTNcdTk4RTVcdTk4RTZcdTk4RTdcdTk4RUFcdTk4RjNcdTk4RjZcdTk5MDJcdTk5MDdcdTk5MDhcdTk5MTFcdTk5MTVcdTk5MTZcdTk5MTdcdTk5MUFcdTk5MUJcdTk5MUNcdTk5MUZcdTk5MjJcdTk5MjZcdTk5MjdcdTk5MkJcdTk5MzFcIiw0LFwiXHU5OTM5XHU5OTNBXHU5OTNCXHU5OTNDXHU5OTQwXHU5OTQxXHU5OTQ2XHU5OTQ3XHU5OTQ4XHU5OTREXHU5OTRFXHU5OTU0XHU5OTU4XHU5OTU5XHU5OTVCXHU5OTVDXHU5OTVFXHU5OTVGXHU5OTYwXHU5OTlCXHU5OTlEXHU5OTlGXHU5OUE2XHU5OUIwXHU5OUIxXHU5OUIyXHU5OUI1XCJdLFxuW1wiOGZlOWExXCIsXCJcdTk5QjlcdTk5QkFcdTk5QkRcdTk5QkZcdTk5QzNcdTk5QzlcdTk5RDNcdTk5RDRcdTk5RDlcdTk5REFcdTk5RENcdTk5REVcdTk5RTdcdTk5RUFcdTk5RUJcdTk5RUNcdTk5RjBcdTk5RjRcdTk5RjVcdTk5RjlcdTk5RkRcdTk5RkVcdTlBMDJcdTlBMDNcdTlBMDRcdTlBMEJcdTlBMENcdTlBMTBcdTlBMTFcdTlBMTZcdTlBMUVcdTlBMjBcdTlBMjJcdTlBMjNcdTlBMjRcdTlBMjdcdTlBMkRcdTlBMkVcdTlBMzNcdTlBMzVcdTlBMzZcdTlBMzhcdTlBNDdcdTlBNDFcdTlBNDRcdTlBNEFcdTlBNEJcdTlBNENcdTlBNEVcdTlBNTFcdTlBNTRcdTlBNTZcdTlBNURcdTlBQUFcdTlBQUNcdTlBQUVcdTlBQUZcdTlBQjJcdTlBQjRcdTlBQjVcdTlBQjZcdTlBQjlcdTlBQkJcdTlBQkVcdTlBQkZcdTlBQzFcdTlBQzNcdTlBQzZcdTlBQzhcdTlBQ0VcdTlBRDBcdTlBRDJcdTlBRDVcdTlBRDZcdTlBRDdcdTlBREJcdTlBRENcdTlBRTBcdTlBRTRcdTlBRTVcdTlBRTdcdTlBRTlcdTlBRUNcdTlBRjJcdTlBRjNcdTlBRjVcdTlBRjlcdTlBRkFcdTlBRkRcdTlBRkZcIiw0XSxcbltcIjhmZWFhMVwiLFwiXHU5QjA0XHU5QjA1XHU5QjA4XHU5QjA5XHU5QjBCXHU5QjBDXHU5QjBEXHU5QjBFXHU5QjEwXHU5QjEyXHU5QjE2XHU5QjE5XHU5QjFCXHU5QjFDXHU5QjIwXHU5QjI2XHU5QjJCXHU5QjJEXHU5QjMzXHU5QjM0XHU5QjM1XHU5QjM3XHU5QjM5XHU5QjNBXHU5QjNEXHU5QjQ4XHU5QjRCXHU5QjRDXHU5QjU1XHU5QjU2XHU5QjU3XHU5QjVCXHU5QjVFXHU5QjYxXHU5QjYzXHU5QjY1XHU5QjY2XHU5QjY4XHU5QjZBXCIsNCxcIlx1OUI3M1x1OUI3NVx1OUI3N1x1OUI3OFx1OUI3OVx1OUI3Rlx1OUI4MFx1OUI4NFx1OUI4NVx1OUI4Nlx1OUI4N1x1OUI4OVx1OUI4QVx1OUI4Qlx1OUI4RFx1OUI4Rlx1OUI5MFx1OUI5NFx1OUI5QVx1OUI5RFx1OUI5RVx1OUJBNlx1OUJBN1x1OUJBOVx1OUJBQ1x1OUJCMFx1OUJCMVx1OUJCMlx1OUJCN1x1OUJCOFx1OUJCQlx1OUJCQ1x1OUJCRVx1OUJCRlx1OUJDMVx1OUJDN1x1OUJDOFx1OUJDRVx1OUJEMFx1OUJEN1x1OUJEOFx1OUJERFx1OUJERlx1OUJFNVx1OUJFN1x1OUJFQVx1OUJFQlx1OUJFRlx1OUJGM1x1OUJGN1x1OUJGOFwiXSxcbltcIjhmZWJhMVwiLFwiXHU5QkY5XHU5QkZBXHU5QkZEXHU5QkZGXHU5QzAwXHU5QzAyXHU5QzBCXHU5QzBGXHU5QzExXHU5QzE2XHU5QzE4XHU5QzE5XHU5QzFBXHU5QzFDXHU5QzFFXHU5QzIyXHU5QzIzXHU5QzI2XCIsNCxcIlx1OUMzMVx1OUMzNVx1OUMzNlx1OUMzN1x1OUMzRFx1OUM0MVx1OUM0M1x1OUM0NFx1OUM0NVx1OUM0OVx1OUM0QVx1OUM0RVx1OUM0Rlx1OUM1MFx1OUM1M1x1OUM1NFx1OUM1Nlx1OUM1OFx1OUM1Qlx1OUM1RFx1OUM1RVx1OUM1Rlx1OUM2M1x1OUM2OVx1OUM2QVx1OUM1Q1x1OUM2Qlx1OUM2OFx1OUM2RVx1OUM3MFx1OUM3Mlx1OUM3NVx1OUM3N1x1OUM3Qlx1OUNFNlx1OUNGMlx1OUNGN1x1OUNGOVx1OUQwQlx1OUQwMlx1OUQxMVx1OUQxN1x1OUQxOFx1OUQxQ1x1OUQxRFx1OUQxRVx1OUQyRlx1OUQzMFx1OUQzMlx1OUQzM1x1OUQzNFx1OUQzQVx1OUQzQ1x1OUQ0NVx1OUQzRFx1OUQ0Mlx1OUQ0M1x1OUQ0N1x1OUQ0QVx1OUQ1M1x1OUQ1NFx1OUQ1Rlx1OUQ2M1x1OUQ2Mlx1OUQ2NVx1OUQ2OVx1OUQ2QVx1OUQ2Qlx1OUQ3MFx1OUQ3Nlx1OUQ3N1x1OUQ3QlwiXSxcbltcIjhmZWNhMVwiLFwiXHU5RDdDXHU5RDdFXHU5RDgzXHU5RDg0XHU5RDg2XHU5RDhBXHU5RDhEXHU5RDhFXHU5RDkyXHU5RDkzXHU5RDk1XHU5RDk2XHU5RDk3XHU5RDk4XHU5REExXHU5REFBXHU5REFDXHU5REFFXHU5REIxXHU5REI1XHU5REI5XHU5REJDXHU5REJGXHU5REMzXHU5REM3XHU5REM5XHU5RENBXHU5REQ0XHU5REQ1XHU5REQ2XHU5REQ3XHU5RERBXHU5RERFXHU5RERGXHU5REUwXHU5REU1XHU5REU3XHU5REU5XHU5REVCXHU5REVFXHU5REYwXHU5REYzXHU5REY0XHU5REZFXHU5RTBBXHU5RTAyXHU5RTA3XHU5RTBFXHU5RTEwXHU5RTExXHU5RTEyXHU5RTE1XHU5RTE2XHU5RTE5XHU5RTFDXHU5RTFEXHU5RTdBXHU5RTdCXHU5RTdDXHU5RTgwXHU5RTgyXHU5RTgzXHU5RTg0XHU5RTg1XHU5RTg3XHU5RThFXHU5RThGXHU5RTk2XHU5RTk4XHU5RTlCXHU5RTlFXHU5RUE0XHU5RUE4XHU5RUFDXHU5RUFFXHU5RUFGXHU5RUIwXHU5RUIzXHU5RUI0XHU5RUI1XHU5RUM2XHU5RUM4XHU5RUNCXHU5RUQ1XHU5RURGXHU5RUU0XHU5RUU3XHU5RUVDXHU5RUVEXHU5RUVFXHU5RUYwXHU5RUYxXHU5RUYyXHU5RUY1XCJdLFxuW1wiOGZlZGExXCIsXCJcdTlFRjhcdTlFRkZcdTlGMDJcdTlGMDNcdTlGMDlcdTlGMEZcdTlGMTBcdTlGMTFcdTlGMTJcdTlGMTRcdTlGMTZcdTlGMTdcdTlGMTlcdTlGMUFcdTlGMUJcdTlGMUZcdTlGMjJcdTlGMjZcdTlGMkFcdTlGMkJcdTlGMkZcdTlGMzFcdTlGMzJcdTlGMzRcdTlGMzdcdTlGMzlcdTlGM0FcdTlGM0NcdTlGM0RcdTlGM0ZcdTlGNDFcdTlGNDNcIiw0LFwiXHU5RjUzXHU5RjU1XHU5RjU2XHU5RjU3XHU5RjU4XHU5RjVBXHU5RjVEXHU5RjVFXHU5RjY4XHU5RjY5XHU5RjZEXCIsNCxcIlx1OUY3M1x1OUY3NVx1OUY3QVx1OUY3RFx1OUY4Rlx1OUY5MFx1OUY5MVx1OUY5Mlx1OUY5NFx1OUY5Nlx1OUY5N1x1OUY5RVx1OUZBMVx1OUZBMlx1OUZBM1x1OUZBNVwiXVxuXVxuIiwgIltcbltcIjBcIixcIlxcdTAwMDBcIiwxMjcsXCJcdTIwQUNcIl0sXG5bXCI4MTQwXCIsXCJcdTRFMDJcdTRFMDRcdTRFMDVcdTRFMDZcdTRFMEZcdTRFMTJcdTRFMTdcdTRFMUZcdTRFMjBcdTRFMjFcdTRFMjNcdTRFMjZcdTRFMjlcdTRFMkVcdTRFMkZcdTRFMzFcdTRFMzNcdTRFMzVcdTRFMzdcdTRFM0NcdTRFNDBcdTRFNDFcdTRFNDJcdTRFNDRcdTRFNDZcdTRFNEFcdTRFNTFcdTRFNTVcdTRFNTdcdTRFNUFcdTRFNUJcdTRFNjJcdTRFNjNcdTRFNjRcdTRFNjVcdTRFNjdcdTRFNjhcdTRFNkFcIiw1LFwiXHU0RTcyXHU0RTc0XCIsOSxcIlx1NEU3RlwiLDYsXCJcdTRFODdcdTRFOEFcIl0sXG5bXCI4MTgwXCIsXCJcdTRFOTBcdTRFOTZcdTRFOTdcdTRFOTlcdTRFOUNcdTRFOURcdTRFOUVcdTRFQTNcdTRFQUFcdTRFQUZcdTRFQjBcdTRFQjFcdTRFQjRcdTRFQjZcdTRFQjdcdTRFQjhcdTRFQjlcdTRFQkNcdTRFQkRcdTRFQkVcdTRFQzhcdTRFQ0NcdTRFQ0ZcdTRFRDBcdTRFRDJcdTRFREFcdTRFREJcdTRFRENcdTRFRTBcdTRFRTJcdTRFRTZcdTRFRTdcdTRFRTlcdTRFRURcdTRFRUVcdTRFRUZcdTRFRjFcdTRFRjRcdTRFRjhcdTRFRjlcdTRFRkFcdTRFRkNcdTRFRkVcdTRGMDBcdTRGMDJcIiw2LFwiXHU0RjBCXHU0RjBDXHU0RjEyXCIsNCxcIlx1NEYxQ1x1NEYxRFx1NEYyMVx1NEYyM1x1NEYyOFx1NEYyOVx1NEYyQ1x1NEYyRFx1NEYyRVx1NEYzMVx1NEYzM1x1NEYzNVx1NEYzN1x1NEYzOVx1NEYzQlx1NEYzRVwiLDQsXCJcdTRGNDRcdTRGNDVcdTRGNDdcIiw1LFwiXHU0RjUyXHU0RjU0XHU0RjU2XHU0RjYxXHU0RjYyXHU0RjY2XHU0RjY4XHU0RjZBXHU0RjZCXHU0RjZEXHU0RjZFXHU0RjcxXHU0RjcyXHU0Rjc1XHU0Rjc3XHU0Rjc4XHU0Rjc5XHU0RjdBXHU0RjdEXHU0RjgwXHU0RjgxXHU0RjgyXHU0Rjg1XHU0Rjg2XHU0Rjg3XHU0RjhBXHU0RjhDXHU0RjhFXHU0RjkwXHU0RjkyXHU0RjkzXHU0Rjk1XHU0Rjk2XHU0Rjk4XHU0Rjk5XHU0RjlBXHU0RjlDXHU0RjlFXHU0RjlGXHU0RkExXHU0RkEyXCJdLFxuW1wiODI0MFwiLFwiXHU0RkE0XHU0RkFCXHU0RkFEXHU0RkIwXCIsNCxcIlx1NEZCNlwiLDgsXCJcdTRGQzBcdTRGQzFcdTRGQzJcdTRGQzZcdTRGQzdcdTRGQzhcdTRGQzlcdTRGQ0JcdTRGQ0NcdTRGQ0RcdTRGRDJcIiw0LFwiXHU0RkQ5XHU0RkRCXHU0RkUwXHU0RkUyXHU0RkU0XHU0RkU1XHU0RkU3XHU0RkVCXHU0RkVDXHU0RkYwXHU0RkYyXHU0RkY0XHU0RkY1XHU0RkY2XHU0RkY3XHU0RkY5XHU0RkZCXHU0RkZDXHU0RkZEXHU0RkZGXCIsMTFdLFxuW1wiODI4MFwiLFwiXHU1MDBCXHU1MDBFXHU1MDEwXHU1MDExXHU1MDEzXHU1MDE1XHU1MDE2XHU1MDE3XHU1MDFCXHU1MDFEXHU1MDFFXHU1MDIwXHU1MDIyXHU1MDIzXHU1MDI0XHU1MDI3XHU1MDJCXHU1MDJGXCIsMTAsXCJcdTUwM0JcdTUwM0RcdTUwM0ZcdTUwNDBcdTUwNDFcdTUwNDJcdTUwNDRcdTUwNDVcdTUwNDZcdTUwNDlcdTUwNEFcdTUwNEJcdTUwNERcdTUwNTBcIiw0LFwiXHU1MDU2XHU1MDU3XHU1MDU4XHU1MDU5XHU1MDVCXHU1MDVEXCIsNyxcIlx1NTA2NlwiLDUsXCJcdTUwNkRcIiw4LFwiXHU1MDc4XHU1MDc5XHU1MDdBXHU1MDdDXHU1MDdEXHU1MDgxXHU1MDgyXHU1MDgzXHU1MDg0XHU1MDg2XHU1MDg3XHU1MDg5XHU1MDhBXHU1MDhCXHU1MDhDXHU1MDhFXCIsMjAsXCJcdTUwQTRcdTUwQTZcdTUwQUFcdTUwQUJcdTUwQURcIiw0LFwiXHU1MEIzXCIsNixcIlx1NTBCQ1wiXSxcbltcIjgzNDBcIixcIlx1NTBCRFwiLDE3LFwiXHU1MEQwXCIsNSxcIlx1NTBEN1x1NTBEOFx1NTBEOVx1NTBEQlwiLDEwLFwiXHU1MEU4XHU1MEU5XHU1MEVBXHU1MEVCXHU1MEVGXHU1MEYwXHU1MEYxXHU1MEYyXHU1MEY0XHU1MEY2XCIsNCxcIlx1NTBGQ1wiLDksXCJcdTUxMDhcIl0sXG5bXCI4MzgwXCIsXCJcdTUxMDlcdTUxMEFcdTUxMENcIiw1LFwiXHU1MTEzXCIsMTMsXCJcdTUxMjJcIiwyOCxcIlx1NTE0Mlx1NTE0N1x1NTE0QVx1NTE0Q1x1NTE0RVx1NTE0Rlx1NTE1MFx1NTE1Mlx1NTE1M1x1NTE1N1x1NTE1OFx1NTE1OVx1NTE1Qlx1NTE1RFwiLDQsXCJcdTUxNjNcdTUxNjRcdTUxNjZcdTUxNjdcdTUxNjlcdTUxNkFcdTUxNkZcdTUxNzJcdTUxN0FcdTUxN0VcdTUxN0ZcdTUxODNcdTUxODRcdTUxODZcdTUxODdcdTUxOEFcdTUxOEJcdTUxOEVcdTUxOEZcdTUxOTBcdTUxOTFcdTUxOTNcdTUxOTRcdTUxOThcdTUxOUFcdTUxOURcdTUxOUVcdTUxOUZcdTUxQTFcdTUxQTNcdTUxQTZcIiw0LFwiXHU1MUFEXHU1MUFFXHU1MUI0XHU1MUI4XHU1MUI5XHU1MUJBXHU1MUJFXHU1MUJGXHU1MUMxXHU1MUMyXHU1MUMzXHU1MUM1XHU1MUM4XHU1MUNBXHU1MUNEXHU1MUNFXHU1MUQwXHU1MUQyXCIsNV0sXG5bXCI4NDQwXCIsXCJcdTUxRDhcdTUxRDlcdTUxREFcdTUxRENcdTUxREVcdTUxREZcdTUxRTJcdTUxRTNcdTUxRTVcIiw1LFwiXHU1MUVDXHU1MUVFXHU1MUYxXHU1MUYyXHU1MUY0XHU1MUY3XHU1MUZFXHU1MjA0XHU1MjA1XHU1MjA5XHU1MjBCXHU1MjBDXHU1MjBGXHU1MjEwXHU1MjEzXHU1MjE0XHU1MjE1XHU1MjFDXHU1MjFFXHU1MjFGXHU1MjIxXHU1MjIyXHU1MjIzXHU1MjI1XHU1MjI2XHU1MjI3XHU1MjJBXHU1MjJDXHU1MjJGXHU1MjMxXHU1MjMyXHU1MjM0XHU1MjM1XHU1MjNDXHU1MjNFXHU1MjQ0XCIsNSxcIlx1NTI0Qlx1NTI0RVx1NTI0Rlx1NTI1Mlx1NTI1M1x1NTI1NVx1NTI1N1x1NTI1OFwiXSxcbltcIjg0ODBcIixcIlx1NTI1OVx1NTI1QVx1NTI1Qlx1NTI1RFx1NTI1Rlx1NTI2MFx1NTI2Mlx1NTI2M1x1NTI2NFx1NTI2Nlx1NTI2OFx1NTI2Qlx1NTI2Q1x1NTI2RFx1NTI2RVx1NTI3MFx1NTI3MVx1NTI3M1wiLDksXCJcdTUyN0VcdTUyODBcdTUyODNcIiw0LFwiXHU1Mjg5XCIsNixcIlx1NTI5MVx1NTI5Mlx1NTI5NFwiLDYsXCJcdTUyOUNcdTUyQTRcdTUyQTVcdTUyQTZcdTUyQTdcdTUyQUVcdTUyQUZcdTUyQjBcdTUyQjRcIiw5LFwiXHU1MkMwXHU1MkMxXHU1MkMyXHU1MkM0XHU1MkM1XHU1MkM2XHU1MkM4XHU1MkNBXHU1MkNDXHU1MkNEXHU1MkNFXHU1MkNGXHU1MkQxXHU1MkQzXHU1MkQ0XHU1MkQ1XHU1MkQ3XHU1MkQ5XCIsNSxcIlx1NTJFMFx1NTJFMVx1NTJFMlx1NTJFM1x1NTJFNVwiLDEwLFwiXHU1MkYxXCIsNyxcIlx1NTJGQlx1NTJGQ1x1NTJGRFx1NTMwMVx1NTMwMlx1NTMwM1x1NTMwNFx1NTMwN1x1NTMwOVx1NTMwQVx1NTMwQlx1NTMwQ1x1NTMwRVwiXSxcbltcIjg1NDBcIixcIlx1NTMxMVx1NTMxMlx1NTMxM1x1NTMxNFx1NTMxOFx1NTMxQlx1NTMxQ1x1NTMxRVx1NTMxRlx1NTMyMlx1NTMyNFx1NTMyNVx1NTMyN1x1NTMyOFx1NTMyOVx1NTMyQlx1NTMyQ1x1NTMyRFx1NTMyRlwiLDksXCJcdTUzM0NcdTUzM0RcdTUzNDBcdTUzNDJcdTUzNDRcdTUzNDZcdTUzNEJcdTUzNENcdTUzNERcdTUzNTBcdTUzNTRcdTUzNThcdTUzNTlcdTUzNUJcdTUzNURcdTUzNjVcdTUzNjhcdTUzNkFcdTUzNkNcdTUzNkRcdTUzNzJcdTUzNzZcdTUzNzlcdTUzN0JcdTUzN0NcdTUzN0RcdTUzN0VcdTUzODBcdTUzODFcdTUzODNcdTUzODdcdTUzODhcdTUzOEFcdTUzOEVcdTUzOEZcIl0sXG5bXCI4NTgwXCIsXCJcdTUzOTBcIiw0LFwiXHU1Mzk2XHU1Mzk3XHU1Mzk5XHU1MzlCXHU1MzlDXHU1MzlFXHU1M0EwXHU1M0ExXHU1M0E0XHU1M0E3XHU1M0FBXHU1M0FCXHU1M0FDXHU1M0FEXHU1M0FGXCIsNixcIlx1NTNCN1x1NTNCOFx1NTNCOVx1NTNCQVx1NTNCQ1x1NTNCRFx1NTNCRVx1NTNDMFx1NTNDM1wiLDQsXCJcdTUzQ0VcdTUzQ0ZcdTUzRDBcdTUzRDJcdTUzRDNcdTUzRDVcdTUzREFcdTUzRENcdTUzRERcdTUzREVcdTUzRTFcdTUzRTJcdTUzRTdcdTUzRjRcdTUzRkFcdTUzRkVcdTUzRkZcdTU0MDBcdTU0MDJcdTU0MDVcdTU0MDdcdTU0MEJcdTU0MTRcdTU0MThcdTU0MTlcdTU0MUFcdTU0MUNcdTU0MjJcdTU0MjRcdTU0MjVcdTU0MkFcdTU0MzBcdTU0MzNcdTU0MzZcdTU0MzdcdTU0M0FcdTU0M0RcdTU0M0ZcdTU0NDFcdTU0NDJcdTU0NDRcdTU0NDVcdTU0NDdcdTU0NDlcdTU0NENcdTU0NERcdTU0NEVcdTU0NEZcdTU0NTFcdTU0NUFcdTU0NURcIiw0LFwiXHU1NDYzXHU1NDY1XHU1NDY3XHU1NDY5XCIsNyxcIlx1NTQ3NFx1NTQ3OVx1NTQ3QVx1NTQ3RVx1NTQ3Rlx1NTQ4MVx1NTQ4M1x1NTQ4NVx1NTQ4N1x1NTQ4OFx1NTQ4OVx1NTQ4QVx1NTQ4RFx1NTQ5MVx1NTQ5M1x1NTQ5N1x1NTQ5OFx1NTQ5Q1x1NTQ5RVx1NTQ5Rlx1NTRBMFx1NTRBMVwiXSxcbltcIjg2NDBcIixcIlx1NTRBMlx1NTRBNVx1NTRBRVx1NTRCMFx1NTRCMlx1NTRCNVx1NTRCNlx1NTRCN1x1NTRCOVx1NTRCQVx1NTRCQ1x1NTRCRVx1NTRDM1x1NTRDNVx1NTRDQVx1NTRDQlx1NTRENlx1NTREOFx1NTREQlx1NTRFMFwiLDQsXCJcdTU0RUJcdTU0RUNcdTU0RUZcdTU0RjBcdTU0RjFcdTU0RjRcIiw1LFwiXHU1NEZCXHU1NEZFXHU1NTAwXHU1NTAyXHU1NTAzXHU1NTA0XHU1NTA1XHU1NTA4XHU1NTBBXCIsNCxcIlx1NTUxMlx1NTUxM1x1NTUxNVwiLDUsXCJcdTU1MUNcdTU1MURcdTU1MUVcdTU1MUZcdTU1MjFcdTU1MjVcdTU1MjZcIl0sXG5bXCI4NjgwXCIsXCJcdTU1MjhcdTU1MjlcdTU1MkJcdTU1MkRcdTU1MzJcdTU1MzRcdTU1MzVcdTU1MzZcdTU1MzhcdTU1MzlcdTU1M0FcdTU1M0JcdTU1M0RcdTU1NDBcdTU1NDJcdTU1NDVcdTU1NDdcdTU1NDhcdTU1NEJcIiw0LFwiXHU1NTUxXHU1NTUyXHU1NTUzXHU1NTU0XHU1NTU3XCIsNCxcIlx1NTU1RFx1NTU1RVx1NTU1Rlx1NTU2MFx1NTU2Mlx1NTU2M1x1NTU2OFx1NTU2OVx1NTU2Qlx1NTU2RlwiLDUsXCJcdTU1NzlcdTU1N0FcdTU1N0RcdTU1N0ZcdTU1ODVcdTU1ODZcdTU1OENcdTU1OERcdTU1OEVcdTU1OTBcdTU1OTJcdTU1OTNcdTU1OTVcdTU1OTZcdTU1OTdcdTU1OUFcdTU1OUJcdTU1OUVcdTU1QTBcIiw2LFwiXHU1NUE4XCIsOCxcIlx1NTVCMlx1NTVCNFx1NTVCNlx1NTVCOFx1NTVCQVx1NTVCQ1x1NTVCRlwiLDQsXCJcdTU1QzZcdTU1QzdcdTU1QzhcdTU1Q0FcdTU1Q0JcdTU1Q0VcdTU1Q0ZcdTU1RDBcdTU1RDVcdTU1RDdcIiw0LFwiXHU1NURFXHU1NUUwXHU1NUUyXHU1NUU3XHU1NUU5XHU1NUVEXHU1NUVFXHU1NUYwXHU1NUYxXHU1NUY0XHU1NUY2XHU1NUY4XCIsNCxcIlx1NTVGRlx1NTYwMlx1NTYwM1x1NTYwNFx1NTYwNVwiXSxcbltcIjg3NDBcIixcIlx1NTYwNlx1NTYwN1x1NTYwQVx1NTYwQlx1NTYwRFx1NTYxMFwiLDcsXCJcdTU2MTlcdTU2MUFcdTU2MUNcdTU2MURcdTU2MjBcdTU2MjFcdTU2MjJcdTU2MjVcdTU2MjZcdTU2MjhcdTU2MjlcdTU2MkFcdTU2MkJcdTU2MkVcdTU2MkZcdTU2MzBcdTU2MzNcdTU2MzVcdTU2MzdcdTU2MzhcdTU2M0FcdTU2M0NcdTU2M0RcdTU2M0VcdTU2NDBcIiwxMSxcIlx1NTY0RlwiLDQsXCJcdTU2NTVcdTU2NTZcdTU2NUFcdTU2NUJcdTU2NURcIiw0XSxcbltcIjg3ODBcIixcIlx1NTY2M1x1NTY2NVx1NTY2Nlx1NTY2N1x1NTY2RFx1NTY2RVx1NTY2Rlx1NTY3MFx1NTY3Mlx1NTY3M1x1NTY3NFx1NTY3NVx1NTY3N1x1NTY3OFx1NTY3OVx1NTY3QVx1NTY3RFwiLDcsXCJcdTU2ODdcIiw2LFwiXHU1NjkwXHU1NjkxXHU1NjkyXHU1Njk0XCIsMTQsXCJcdTU2QTRcIiwxMCxcIlx1NTZCMFwiLDYsXCJcdTU2QjhcdTU2QjlcdTU2QkFcdTU2QkJcdTU2QkRcIiwxMixcIlx1NTZDQlwiLDgsXCJcdTU2RDVcdTU2RDZcdTU2RDhcdTU2RDlcdTU2RENcdTU2RTNcdTU2RTVcIiw1LFwiXHU1NkVDXHU1NkVFXHU1NkVGXHU1NkYyXHU1NkYzXHU1NkY2XHU1NkY3XHU1NkY4XHU1NkZCXHU1NkZDXHU1NzAwXHU1NzAxXHU1NzAyXHU1NzA1XHU1NzA3XHU1NzBCXCIsNl0sXG5bXCI4ODQwXCIsXCJcdTU3MTJcIiw5LFwiXHU1NzFEXHU1NzFFXHU1NzIwXHU1NzIxXHU1NzIyXHU1NzI0XHU1NzI1XHU1NzI2XHU1NzI3XHU1NzJCXHU1NzMxXHU1NzMyXHU1NzM0XCIsNCxcIlx1NTczQ1x1NTczRFx1NTczRlx1NTc0MVx1NTc0M1x1NTc0NFx1NTc0NVx1NTc0Nlx1NTc0OFx1NTc0OVx1NTc0Qlx1NTc1MlwiLDQsXCJcdTU3NThcdTU3NTlcdTU3NjJcdTU3NjNcdTU3NjVcdTU3NjdcdTU3NkNcdTU3NkVcdTU3NzBcdTU3NzFcdTU3NzJcdTU3NzRcdTU3NzVcdTU3NzhcdTU3NzlcdTU3N0FcdTU3N0RcdTU3N0VcdTU3N0ZcdTU3ODBcIl0sXG5bXCI4ODgwXCIsXCJcdTU3ODFcdTU3ODdcdTU3ODhcdTU3ODlcdTU3OEFcdTU3OERcIiw0LFwiXHU1Nzk0XCIsNixcIlx1NTc5Q1x1NTc5RFx1NTc5RVx1NTc5Rlx1NTdBNVx1NTdBOFx1NTdBQVx1NTdBQ1x1NTdBRlx1NTdCMFx1NTdCMVx1NTdCM1x1NTdCNVx1NTdCNlx1NTdCN1x1NTdCOVwiLDgsXCJcdTU3QzRcIiw2LFwiXHU1N0NDXHU1N0NEXHU1N0QwXHU1N0QxXHU1N0QzXHU1N0Q2XHU1N0Q3XHU1N0RCXHU1N0RDXHU1N0RFXHU1N0UxXHU1N0UyXHU1N0UzXHU1N0U1XCIsNyxcIlx1NTdFRVx1NTdGMFx1NTdGMVx1NTdGMlx1NTdGM1x1NTdGNVx1NTdGNlx1NTdGN1x1NTdGQlx1NTdGQ1x1NTdGRVx1NTdGRlx1NTgwMVx1NTgwM1x1NTgwNFx1NTgwNVx1NTgwOFx1NTgwOVx1NTgwQVx1NTgwQ1x1NTgwRVx1NTgwRlx1NTgxMFx1NTgxMlx1NTgxM1x1NTgxNFx1NTgxNlx1NTgxN1x1NTgxOFx1NTgxQVx1NTgxQlx1NTgxQ1x1NTgxRFx1NTgxRlx1NTgyMlx1NTgyM1x1NTgyNVwiLDQsXCJcdTU4MkJcIiw0LFwiXHU1ODMxXHU1ODMyXHU1ODMzXHU1ODM0XHU1ODM2XCIsN10sXG5bXCI4OTQwXCIsXCJcdTU4M0VcIiw1LFwiXHU1ODQ1XCIsNixcIlx1NTg0RVx1NTg0Rlx1NTg1MFx1NTg1Mlx1NTg1M1x1NTg1NVx1NTg1Nlx1NTg1N1x1NTg1OVwiLDQsXCJcdTU4NUZcIiw1LFwiXHU1ODY2XCIsNCxcIlx1NTg2RFwiLDE2LFwiXHU1ODdGXHU1ODgyXHU1ODg0XHU1ODg2XHU1ODg3XHU1ODg4XHU1ODhBXHU1ODhCXHU1ODhDXCJdLFxuW1wiODk4MFwiLFwiXHU1ODhEXCIsNCxcIlx1NTg5NFwiLDQsXCJcdTU4OUJcdTU4OUNcdTU4OURcdTU4QTBcIiw3LFwiXHU1OEFBXCIsMTcsXCJcdTU4QkRcdTU4QkVcdTU4QkZcdTU4QzBcdTU4QzJcdTU4QzNcdTU4QzRcdTU4QzZcIiwxMCxcIlx1NThEMlx1NThEM1x1NThENFx1NThENlwiLDEzLFwiXHU1OEU1XCIsNSxcIlx1NThFRFx1NThFRlx1NThGMVx1NThGMlx1NThGNFx1NThGNVx1NThGN1x1NThGOFx1NThGQVwiLDcsXCJcdTU5MDNcdTU5MDVcdTU5MDZcdTU5MDhcIiw0LFwiXHU1OTBFXHU1OTEwXHU1OTExXHU1OTEyXHU1OTEzXHU1OTE3XHU1OTE4XHU1OTFCXHU1OTFEXHU1OTFFXHU1OTIwXHU1OTIxXHU1OTIyXHU1OTIzXHU1OTI2XHU1OTI4XHU1OTJDXHU1OTMwXHU1OTMyXHU1OTMzXHU1OTM1XHU1OTM2XHU1OTNCXCJdLFxuW1wiOGE0MFwiLFwiXHU1OTNEXHU1OTNFXHU1OTNGXHU1OTQwXHU1OTQzXHU1OTQ1XHU1OTQ2XHU1OTRBXHU1OTRDXHU1OTREXHU1OTUwXHU1OTUyXHU1OTUzXHU1OTU5XHU1OTVCXCIsNCxcIlx1NTk2MVx1NTk2M1x1NTk2NFx1NTk2NlwiLDEyLFwiXHU1OTc1XHU1OTc3XHU1OTdBXHU1OTdCXHU1OTdDXHU1OTdFXHU1OTdGXHU1OTgwXHU1OTg1XHU1OTg5XHU1OThCXHU1OThDXHU1OThFXHU1OThGXHU1OTkwXHU1OTkxXHU1OTk0XHU1OTk1XHU1OTk4XHU1OTlBXHU1OTlCXHU1OTlDXHU1OTlEXHU1OTlGXHU1OUEwXHU1OUExXHU1OUEyXHU1OUE2XCJdLFxuW1wiOGE4MFwiLFwiXHU1OUE3XHU1OUFDXHU1OUFEXHU1OUIwXHU1OUIxXHU1OUIzXCIsNSxcIlx1NTlCQVx1NTlCQ1x1NTlCRFx1NTlCRlwiLDYsXCJcdTU5QzdcdTU5QzhcdTU5QzlcdTU5Q0NcdTU5Q0RcdTU5Q0VcdTU5Q0ZcdTU5RDVcdTU5RDZcdTU5RDlcdTU5REJcdTU5REVcIiw0LFwiXHU1OUU0XHU1OUU2XHU1OUU3XHU1OUU5XHU1OUVBXHU1OUVCXHU1OUVEXCIsMTEsXCJcdTU5RkFcdTU5RkNcdTU5RkRcdTU5RkVcdTVBMDBcdTVBMDJcdTVBMEFcdTVBMEJcdTVBMERcdTVBMEVcdTVBMEZcdTVBMTBcdTVBMTJcdTVBMTRcdTVBMTVcdTVBMTZcdTVBMTdcdTVBMTlcdTVBMUFcdTVBMUJcdTVBMURcdTVBMUVcdTVBMjFcdTVBMjJcdTVBMjRcdTVBMjZcdTVBMjdcdTVBMjhcdTVBMkFcIiw2LFwiXHU1QTMzXHU1QTM1XHU1QTM3XCIsNCxcIlx1NUEzRFx1NUEzRVx1NUEzRlx1NUE0MVwiLDQsXCJcdTVBNDdcdTVBNDhcdTVBNEJcIiw5LFwiXHU1QTU2XHU1QTU3XHU1QTU4XHU1QTU5XHU1QTVCXCIsNV0sXG5bXCI4YjQwXCIsXCJcdTVBNjFcdTVBNjNcdTVBNjRcdTVBNjVcdTVBNjZcdTVBNjhcdTVBNjlcdTVBNkJcIiw4LFwiXHU1QTc4XHU1QTc5XHU1QTdCXHU1QTdDXHU1QTdEXHU1QTdFXHU1QTgwXCIsMTcsXCJcdTVBOTNcIiw2LFwiXHU1QTlDXCIsMTMsXCJcdTVBQUJcdTVBQUNcIl0sXG5bXCI4YjgwXCIsXCJcdTVBQURcIiw0LFwiXHU1QUI0XHU1QUI2XHU1QUI3XHU1QUI5XCIsNCxcIlx1NUFCRlx1NUFDMFx1NUFDM1wiLDUsXCJcdTVBQ0FcdTVBQ0JcdTVBQ0RcIiw0LFwiXHU1QUQzXHU1QUQ1XHU1QUQ3XHU1QUQ5XHU1QURBXHU1QURCXHU1QUREXHU1QURFXHU1QURGXHU1QUUyXHU1QUU0XHU1QUU1XHU1QUU3XHU1QUU4XHU1QUVBXHU1QUVDXCIsNCxcIlx1NUFGMlwiLDIyLFwiXHU1QjBBXCIsMTEsXCJcdTVCMThcIiwyNSxcIlx1NUIzM1x1NUIzNVx1NUIzNlx1NUIzOFwiLDcsXCJcdTVCNDFcIiw2XSxcbltcIjhjNDBcIixcIlx1NUI0OFwiLDcsXCJcdTVCNTJcdTVCNTZcdTVCNUVcdTVCNjBcdTVCNjFcdTVCNjdcdTVCNjhcdTVCNkJcdTVCNkRcdTVCNkVcdTVCNkZcdTVCNzJcdTVCNzRcdTVCNzZcdTVCNzdcdTVCNzhcdTVCNzlcdTVCN0JcdTVCN0NcdTVCN0VcdTVCN0ZcdTVCODJcdTVCODZcdTVCOEFcdTVCOERcdTVCOEVcdTVCOTBcdTVCOTFcdTVCOTJcdTVCOTRcdTVCOTZcdTVCOUZcdTVCQTdcdTVCQThcdTVCQTlcdTVCQUNcdTVCQURcdTVCQUVcdTVCQUZcdTVCQjFcdTVCQjJcdTVCQjdcdTVCQkFcdTVCQkJcdTVCQkNcdTVCQzBcdTVCQzFcdTVCQzNcdTVCQzhcdTVCQzlcdTVCQ0FcdTVCQ0JcdTVCQ0RcdTVCQ0VcdTVCQ0ZcIl0sXG5bXCI4YzgwXCIsXCJcdTVCRDFcdTVCRDRcIiw4LFwiXHU1QkUwXHU1QkUyXHU1QkUzXHU1QkU2XHU1QkU3XHU1QkU5XCIsNCxcIlx1NUJFRlx1NUJGMVwiLDYsXCJcdTVCRkRcdTVCRkVcdTVDMDBcdTVDMDJcdTVDMDNcdTVDMDVcdTVDMDdcdTVDMDhcdTVDMEJcdTVDMENcdTVDMERcdTVDMEVcdTVDMTBcdTVDMTJcdTVDMTNcdTVDMTdcdTVDMTlcdTVDMUJcdTVDMUVcdTVDMUZcdTVDMjBcdTVDMjFcdTVDMjNcdTVDMjZcdTVDMjhcdTVDMjlcdTVDMkFcdTVDMkJcdTVDMkRcdTVDMkVcdTVDMkZcdTVDMzBcdTVDMzJcdTVDMzNcdTVDMzVcdTVDMzZcdTVDMzdcdTVDNDNcdTVDNDRcdTVDNDZcdTVDNDdcdTVDNENcdTVDNERcdTVDNTJcdTVDNTNcdTVDNTRcdTVDNTZcdTVDNTdcdTVDNThcdTVDNUFcdTVDNUJcdTVDNUNcdTVDNURcdTVDNUZcdTVDNjJcdTVDNjRcdTVDNjdcIiw2LFwiXHU1QzcwXHU1QzcyXCIsNixcIlx1NUM3Qlx1NUM3Q1x1NUM3RFx1NUM3RVx1NUM4MFx1NUM4M1wiLDQsXCJcdTVDODlcdTVDOEFcdTVDOEJcdTVDOEVcdTVDOEZcdTVDOTJcdTVDOTNcdTVDOTVcdTVDOURcIiw0LFwiXHU1Q0E0XCIsNF0sXG5bXCI4ZDQwXCIsXCJcdTVDQUFcdTVDQUVcdTVDQUZcdTVDQjBcdTVDQjJcdTVDQjRcdTVDQjZcdTVDQjlcdTVDQkFcdTVDQkJcdTVDQkNcdTVDQkVcdTVDQzBcdTVDQzJcdTVDQzNcdTVDQzVcIiw1LFwiXHU1Q0NDXCIsNSxcIlx1NUNEM1wiLDUsXCJcdTVDREFcIiw2LFwiXHU1Q0UyXHU1Q0UzXHU1Q0U3XHU1Q0U5XHU1Q0VCXHU1Q0VDXHU1Q0VFXHU1Q0VGXHU1Q0YxXCIsOSxcIlx1NUNGQ1wiLDRdLFxuW1wiOGQ4MFwiLFwiXHU1RDAxXHU1RDA0XHU1RDA1XHU1RDA4XCIsNSxcIlx1NUQwRlwiLDQsXCJcdTVEMTVcdTVEMTdcdTVEMThcdTVEMTlcdTVEMUFcdTVEMUNcdTVEMURcdTVEMUZcIiw0LFwiXHU1RDI1XHU1RDI4XHU1RDJBXHU1RDJCXHU1RDJDXHU1RDJGXCIsNCxcIlx1NUQzNVwiLDcsXCJcdTVEM0ZcIiw3LFwiXHU1RDQ4XHU1RDQ5XHU1RDREXCIsMTAsXCJcdTVENTlcdTVENUFcdTVENUNcdTVENUVcIiwxMCxcIlx1NUQ2QVx1NUQ2RFx1NUQ2RVx1NUQ3MFx1NUQ3MVx1NUQ3Mlx1NUQ3M1x1NUQ3NVwiLDEyLFwiXHU1RDgzXCIsMjEsXCJcdTVEOUFcdTVEOUJcdTVEOUNcdTVEOUVcdTVEOUZcdTVEQTBcIl0sXG5bXCI4ZTQwXCIsXCJcdTVEQTFcIiwyMSxcIlx1NURCOFwiLDEyLFwiXHU1REM2XCIsNixcIlx1NURDRVwiLDEyLFwiXHU1RERDXHU1RERGXHU1REUwXHU1REUzXHU1REU0XHU1REVBXHU1REVDXHU1REVEXCJdLFxuW1wiOGU4MFwiLFwiXHU1REYwXHU1REY1XHU1REY2XHU1REY4XCIsNCxcIlx1NURGRlx1NUUwMFx1NUUwNFx1NUUwN1x1NUUwOVx1NUUwQVx1NUUwQlx1NUUwRFx1NUUwRVx1NUUxMlx1NUUxM1x1NUUxN1x1NUUxRVwiLDcsXCJcdTVFMjhcIiw0LFwiXHU1RTJGXHU1RTMwXHU1RTMyXCIsNCxcIlx1NUUzOVx1NUUzQVx1NUUzRVx1NUUzRlx1NUU0MFx1NUU0MVx1NUU0M1x1NUU0NlwiLDUsXCJcdTVFNERcIiw2LFwiXHU1RTU2XCIsNCxcIlx1NUU1Q1x1NUU1RFx1NUU1Rlx1NUU2MFx1NUU2M1wiLDE0LFwiXHU1RTc1XHU1RTc3XHU1RTc5XHU1RTdFXHU1RTgxXHU1RTgyXHU1RTgzXHU1RTg1XHU1RTg4XHU1RTg5XHU1RThDXHU1RThEXHU1RThFXHU1RTkyXHU1RTk4XHU1RTlCXHU1RTlEXHU1RUExXHU1RUEyXHU1RUEzXHU1RUE0XHU1RUE4XCIsNCxcIlx1NUVBRVwiLDQsXCJcdTVFQjRcdTVFQkFcdTVFQkJcdTVFQkNcdTVFQkRcdTVFQkZcIiw2XSxcbltcIjhmNDBcIixcIlx1NUVDNlx1NUVDN1x1NUVDOFx1NUVDQlwiLDUsXCJcdTVFRDRcdTVFRDVcdTVFRDdcdTVFRDhcdTVFRDlcdTVFREFcdTVFRENcIiwxMSxcIlx1NUVFOVx1NUVFQlwiLDgsXCJcdTVFRjVcdTVFRjhcdTVFRjlcdTVFRkJcdTVFRkNcdTVFRkRcdTVGMDVcdTVGMDZcdTVGMDdcdTVGMDlcdTVGMENcdTVGMERcdTVGMEVcdTVGMTBcdTVGMTJcdTVGMTRcdTVGMTZcdTVGMTlcdTVGMUFcdTVGMUNcdTVGMURcdTVGMUVcdTVGMjFcdTVGMjJcdTVGMjNcdTVGMjRcIl0sXG5bXCI4ZjgwXCIsXCJcdTVGMjhcdTVGMkJcdTVGMkNcdTVGMkVcdTVGMzBcdTVGMzJcIiw2LFwiXHU1RjNCXHU1RjNEXHU1RjNFXHU1RjNGXHU1RjQxXCIsMTQsXCJcdTVGNTFcdTVGNTRcdTVGNTlcdTVGNUFcdTVGNUJcdTVGNUNcdTVGNUVcdTVGNUZcdTVGNjBcdTVGNjNcdTVGNjVcdTVGNjdcdTVGNjhcdTVGNkJcdTVGNkVcdTVGNkZcdTVGNzJcdTVGNzRcdTVGNzVcdTVGNzZcdTVGNzhcdTVGN0FcdTVGN0RcdTVGN0VcdTVGN0ZcdTVGODNcdTVGODZcdTVGOERcdTVGOEVcdTVGOEZcdTVGOTFcdTVGOTNcdTVGOTRcdTVGOTZcdTVGOUFcdTVGOUJcdTVGOURcdTVGOUVcdTVGOUZcdTVGQTBcdTVGQTJcIiw1LFwiXHU1RkE5XHU1RkFCXHU1RkFDXHU1RkFGXCIsNSxcIlx1NUZCNlx1NUZCOFx1NUZCOVx1NUZCQVx1NUZCQlx1NUZCRVwiLDQsXCJcdTVGQzdcdTVGQzhcdTVGQ0FcdTVGQ0JcdTVGQ0VcdTVGRDNcdTVGRDRcdTVGRDVcdTVGREFcdTVGREJcdTVGRENcdTVGREVcdTVGREZcdTVGRTJcdTVGRTNcdTVGRTVcdTVGRTZcdTVGRThcdTVGRTlcdTVGRUNcdTVGRUZcdTVGRjBcdTVGRjJcdTVGRjNcdTVGRjRcdTVGRjZcdTVGRjdcdTVGRjlcdTVGRkFcdTVGRkNcdTYwMDdcIl0sXG5bXCI5MDQwXCIsXCJcdTYwMDhcdTYwMDlcdTYwMEJcdTYwMENcdTYwMTBcdTYwMTFcdTYwMTNcdTYwMTdcdTYwMThcdTYwMUFcdTYwMUVcdTYwMUZcdTYwMjJcdTYwMjNcdTYwMjRcdTYwMkNcdTYwMkRcdTYwMkVcdTYwMzBcIiw0LFwiXHU2MDM2XCIsNCxcIlx1NjAzRFx1NjAzRVx1NjA0MFx1NjA0NFwiLDYsXCJcdTYwNENcdTYwNEVcdTYwNEZcdTYwNTFcdTYwNTNcdTYwNTRcdTYwNTZcdTYwNTdcdTYwNThcdTYwNUJcdTYwNUNcdTYwNUVcdTYwNUZcdTYwNjBcdTYwNjFcdTYwNjVcdTYwNjZcdTYwNkVcdTYwNzFcdTYwNzJcdTYwNzRcdTYwNzVcdTYwNzdcdTYwN0VcdTYwODBcIl0sXG5bXCI5MDgwXCIsXCJcdTYwODFcdTYwODJcdTYwODVcdTYwODZcdTYwODdcdTYwODhcdTYwOEFcdTYwOEJcdTYwOEVcdTYwOEZcdTYwOTBcdTYwOTFcdTYwOTNcdTYwOTVcdTYwOTdcdTYwOThcdTYwOTlcdTYwOUNcdTYwOUVcdTYwQTFcdTYwQTJcdTYwQTRcdTYwQTVcdTYwQTdcdTYwQTlcdTYwQUFcdTYwQUVcdTYwQjBcdTYwQjNcdTYwQjVcdTYwQjZcdTYwQjdcdTYwQjlcdTYwQkFcdTYwQkRcIiw3LFwiXHU2MEM3XHU2MEM4XHU2MEM5XHU2MENDXCIsNCxcIlx1NjBEMlx1NjBEM1x1NjBENFx1NjBENlx1NjBEN1x1NjBEOVx1NjBEQlx1NjBERVx1NjBFMVwiLDQsXCJcdTYwRUFcdTYwRjFcdTYwRjJcdTYwRjVcdTYwRjdcdTYwRjhcdTYwRkJcIiw0LFwiXHU2MTAyXHU2MTAzXHU2MTA0XHU2MTA1XHU2MTA3XHU2MTBBXHU2MTBCXHU2MTBDXHU2MTEwXCIsNCxcIlx1NjExNlx1NjExN1x1NjExOFx1NjExOVx1NjExQlx1NjExQ1x1NjExRFx1NjExRVx1NjEyMVx1NjEyMlx1NjEyNVx1NjEyOFx1NjEyOVx1NjEyQVx1NjEyQ1wiLDE4LFwiXHU2MTQwXCIsNl0sXG5bXCI5MTQwXCIsXCJcdTYxNDdcdTYxNDlcdTYxNEJcdTYxNERcdTYxNEZcdTYxNTBcdTYxNTJcdTYxNTNcdTYxNTRcdTYxNTZcIiw2LFwiXHU2MTVFXHU2MTVGXHU2MTYwXHU2MTYxXHU2MTYzXHU2MTY0XHU2MTY1XHU2MTY2XHU2MTY5XCIsNixcIlx1NjE3MVx1NjE3Mlx1NjE3M1x1NjE3NFx1NjE3Nlx1NjE3OFwiLDE4LFwiXHU2MThDXHU2MThEXHU2MThGXCIsNCxcIlx1NjE5NVwiXSxcbltcIjkxODBcIixcIlx1NjE5NlwiLDYsXCJcdTYxOUVcIiw4LFwiXHU2MUFBXHU2MUFCXHU2MUFEXCIsOSxcIlx1NjFCOFwiLDUsXCJcdTYxQkZcdTYxQzBcdTYxQzFcdTYxQzNcIiw0LFwiXHU2MUM5XHU2MUNDXCIsNCxcIlx1NjFEM1x1NjFENVwiLDE2LFwiXHU2MUU3XCIsMTMsXCJcdTYxRjZcIiw4LFwiXHU2MjAwXCIsNSxcIlx1NjIwN1x1NjIwOVx1NjIxM1x1NjIxNFx1NjIxOVx1NjIxQ1x1NjIxRFx1NjIxRVx1NjIyMFx1NjIyM1x1NjIyNlx1NjIyN1x1NjIyOFx1NjIyOVx1NjIyQlx1NjIyRFx1NjIyRlx1NjIzMFx1NjIzMVx1NjIzMlx1NjIzNVx1NjIzNlx1NjIzOFwiLDQsXCJcdTYyNDJcdTYyNDRcdTYyNDVcdTYyNDZcdTYyNEFcIl0sXG5bXCI5MjQwXCIsXCJcdTYyNEZcdTYyNTBcdTYyNTVcdTYyNTZcdTYyNTdcdTYyNTlcdTYyNUFcdTYyNUNcIiw2LFwiXHU2MjY0XHU2MjY1XHU2MjY4XHU2MjcxXHU2MjcyXHU2Mjc0XHU2Mjc1XHU2Mjc3XHU2Mjc4XHU2MjdBXHU2MjdCXHU2MjdEXHU2MjgxXHU2MjgyXHU2MjgzXHU2Mjg1XHU2Mjg2XHU2Mjg3XHU2Mjg4XHU2MjhCXCIsNSxcIlx1NjI5NFx1NjI5OVx1NjI5Q1x1NjI5RFx1NjI5RVx1NjJBM1x1NjJBNlx1NjJBN1x1NjJBOVx1NjJBQVx1NjJBRFx1NjJBRVx1NjJBRlx1NjJCMFx1NjJCMlx1NjJCM1x1NjJCNFx1NjJCNlx1NjJCN1x1NjJCOFx1NjJCQVx1NjJCRVx1NjJDMFx1NjJDMVwiXSxcbltcIjkyODBcIixcIlx1NjJDM1x1NjJDQlx1NjJDRlx1NjJEMVx1NjJENVx1NjJERFx1NjJERVx1NjJFMFx1NjJFMVx1NjJFNFx1NjJFQVx1NjJFQlx1NjJGMFx1NjJGMlx1NjJGNVx1NjJGOFx1NjJGOVx1NjJGQVx1NjJGQlx1NjMwMFx1NjMwM1x1NjMwNFx1NjMwNVx1NjMwNlx1NjMwQVx1NjMwQlx1NjMwQ1x1NjMwRFx1NjMwRlx1NjMxMFx1NjMxMlx1NjMxM1x1NjMxNFx1NjMxNVx1NjMxN1x1NjMxOFx1NjMxOVx1NjMxQ1x1NjMyNlx1NjMyN1x1NjMyOVx1NjMyQ1x1NjMyRFx1NjMyRVx1NjMzMFx1NjMzMVx1NjMzM1wiLDUsXCJcdTYzM0JcdTYzM0NcdTYzM0VcdTYzM0ZcdTYzNDBcdTYzNDFcdTYzNDRcdTYzNDdcdTYzNDhcdTYzNEFcdTYzNTFcdTYzNTJcdTYzNTNcdTYzNTRcdTYzNTZcIiw3LFwiXHU2MzYwXHU2MzY0XHU2MzY1XHU2MzY2XHU2MzY4XHU2MzZBXHU2MzZCXHU2MzZDXHU2MzZGXHU2MzcwXHU2MzcyXHU2MzczXHU2Mzc0XHU2Mzc1XHU2Mzc4XHU2Mzc5XHU2MzdDXHU2MzdEXHU2MzdFXHU2MzdGXHU2MzgxXHU2MzgzXHU2Mzg0XHU2Mzg1XHU2Mzg2XHU2MzhCXHU2MzhEXHU2MzkxXHU2MzkzXHU2Mzk0XHU2Mzk1XHU2Mzk3XHU2Mzk5XCIsNixcIlx1NjNBMVx1NjNBNFx1NjNBNlx1NjNBQlx1NjNBRlx1NjNCMVx1NjNCMlx1NjNCNVx1NjNCNlx1NjNCOVx1NjNCQlx1NjNCRFx1NjNCRlx1NjNDMFwiXSxcbltcIjkzNDBcIixcIlx1NjNDMVx1NjNDMlx1NjNDM1x1NjNDNVx1NjNDN1x1NjNDOFx1NjNDQVx1NjNDQlx1NjNDQ1x1NjNEMVx1NjNEM1x1NjNENFx1NjNENVx1NjNEN1wiLDYsXCJcdTYzREZcdTYzRTJcdTYzRTRcIiw0LFwiXHU2M0VCXHU2M0VDXHU2M0VFXHU2M0VGXHU2M0YwXHU2M0YxXHU2M0YzXHU2M0Y1XHU2M0Y3XHU2M0Y5XHU2M0ZBXHU2M0ZCXHU2M0ZDXHU2M0ZFXHU2NDAzXHU2NDA0XHU2NDA2XCIsNCxcIlx1NjQwRFx1NjQwRVx1NjQxMVx1NjQxMlx1NjQxNVwiLDUsXCJcdTY0MURcdTY0MUZcdTY0MjJcdTY0MjNcdTY0MjRcIl0sXG5bXCI5MzgwXCIsXCJcdTY0MjVcdTY0MjdcdTY0MjhcdTY0MjlcdTY0MkJcdTY0MkVcIiw1LFwiXHU2NDM1XCIsNCxcIlx1NjQzQlx1NjQzQ1x1NjQzRVx1NjQ0MFx1NjQ0Mlx1NjQ0M1x1NjQ0OVx1NjQ0QlwiLDYsXCJcdTY0NTNcdTY0NTVcdTY0NTZcdTY0NTdcdTY0NTlcIiw0LFwiXHU2NDVGXCIsNyxcIlx1NjQ2OFx1NjQ2QVx1NjQ2Qlx1NjQ2Q1x1NjQ2RVwiLDksXCJcdTY0N0JcIiw2LFwiXHU2NDgzXHU2NDg2XHU2NDg4XCIsOCxcIlx1NjQ5M1x1NjQ5NFx1NjQ5N1x1NjQ5OFx1NjQ5QVx1NjQ5Qlx1NjQ5Q1x1NjQ5RFx1NjQ5RlwiLDQsXCJcdTY0QTVcdTY0QTZcdTY0QTdcdTY0QThcdTY0QUFcdTY0QUJcdTY0QUZcdTY0QjFcdTY0QjJcdTY0QjNcdTY0QjRcdTY0QjZcdTY0QjlcdTY0QkJcdTY0QkRcdTY0QkVcdTY0QkZcdTY0QzFcdTY0QzNcdTY0QzRcdTY0QzZcIiw2LFwiXHU2NENGXHU2NEQxXHU2NEQzXHU2NEQ0XHU2NEQ1XHU2NEQ2XHU2NEQ5XHU2NERBXCJdLFxuW1wiOTQ0MFwiLFwiXHU2NERCXHU2NERDXHU2NEREXHU2NERGXHU2NEUwXHU2NEUxXHU2NEUzXHU2NEU1XHU2NEU3XCIsMjQsXCJcdTY1MDFcIiw3LFwiXHU2NTBBXCIsNyxcIlx1NjUxM1wiLDQsXCJcdTY1MTlcIiw4XSxcbltcIjk0ODBcIixcIlx1NjUyMlx1NjUyM1x1NjUyNFx1NjUyNlwiLDQsXCJcdTY1MkNcdTY1MkRcdTY1MzBcdTY1MzFcdTY1MzJcdTY1MzNcdTY1MzdcdTY1M0FcdTY1M0NcdTY1M0RcdTY1NDBcIiw0LFwiXHU2NTQ2XHU2NTQ3XHU2NTRBXHU2NTRCXHU2NTREXHU2NTRFXHU2NTUwXHU2NTUyXHU2NTUzXHU2NTU0XHU2NTU3XHU2NTU4XHU2NTVBXHU2NTVDXHU2NTVGXHU2NTYwXHU2NTYxXHU2NTY0XHU2NTY1XHU2NTY3XHU2NTY4XHU2NTY5XHU2NTZBXHU2NTZEXHU2NTZFXHU2NTZGXHU2NTcxXHU2NTczXHU2NTc1XHU2NTc2XHU2NTc4XCIsMTQsXCJcdTY1ODhcdTY1ODlcdTY1OEFcdTY1OERcdTY1OEVcdTY1OEZcdTY1OTJcdTY1OTRcdTY1OTVcdTY1OTZcdTY1OThcdTY1OUFcdTY1OURcdTY1OUVcdTY1QTBcdTY1QTJcdTY1QTNcdTY1QTZcdTY1QThcdTY1QUFcdTY1QUNcdTY1QUVcdTY1QjFcIiw3LFwiXHU2NUJBXHU2NUJCXHU2NUJFXHU2NUJGXHU2NUMwXHU2NUMyXHU2NUM3XHU2NUM4XHU2NUM5XHU2NUNBXHU2NUNEXHU2NUQwXHU2NUQxXHU2NUQzXHU2NUQ0XHU2NUQ1XHU2NUQ4XCIsNyxcIlx1NjVFMVx1NjVFM1x1NjVFNFx1NjVFQVx1NjVFQlwiXSxcbltcIjk1NDBcIixcIlx1NjVGMlx1NjVGM1x1NjVGNFx1NjVGNVx1NjVGOFx1NjVGOVx1NjVGQlwiLDQsXCJcdTY2MDFcdTY2MDRcdTY2MDVcdTY2MDdcdTY2MDhcdTY2MDlcdTY2MEJcdTY2MERcdTY2MTBcdTY2MTFcdTY2MTJcdTY2MTZcdTY2MTdcdTY2MThcdTY2MUFcdTY2MUJcdTY2MUNcdTY2MUVcdTY2MjFcdTY2MjJcdTY2MjNcdTY2MjRcdTY2MjZcdTY2MjlcdTY2MkFcdTY2MkJcdTY2MkNcdTY2MkVcdTY2MzBcdTY2MzJcdTY2MzNcdTY2MzdcIiw0LFwiXHU2NjNEXHU2NjNGXHU2NjQwXHU2NjQyXHU2NjQ0XCIsNixcIlx1NjY0RFx1NjY0RVx1NjY1MFx1NjY1MVx1NjY1OFwiXSxcbltcIjk1ODBcIixcIlx1NjY1OVx1NjY1Qlx1NjY1Q1x1NjY1RFx1NjY1RVx1NjY2MFx1NjY2Mlx1NjY2M1x1NjY2NVx1NjY2N1x1NjY2OVwiLDQsXCJcdTY2NzFcdTY2NzJcdTY2NzNcdTY2NzVcdTY2NzhcdTY2NzlcdTY2N0JcdTY2N0NcdTY2N0RcdTY2N0ZcdTY2ODBcdTY2ODFcdTY2ODNcdTY2ODVcdTY2ODZcdTY2ODhcdTY2ODlcdTY2OEFcdTY2OEJcdTY2OERcdTY2OEVcdTY2OEZcdTY2OTBcdTY2OTJcdTY2OTNcdTY2OTRcdTY2OTVcdTY2OThcIiw0LFwiXHU2NjlFXCIsOCxcIlx1NjZBOVwiLDQsXCJcdTY2QUZcIiw0LFwiXHU2NkI1XHU2NkI2XHU2NkI3XHU2NkI4XHU2NkJBXHU2NkJCXHU2NkJDXHU2NkJEXHU2NkJGXCIsMjUsXCJcdTY2REFcdTY2REVcIiw3LFwiXHU2NkU3XHU2NkU4XHU2NkVBXCIsNSxcIlx1NjZGMVx1NjZGNVx1NjZGNlx1NjZGOFx1NjZGQVx1NjZGQlx1NjZGRFx1NjcwMVx1NjcwMlx1NjcwM1wiXSxcbltcIjk2NDBcIixcIlx1NjcwNFx1NjcwNVx1NjcwNlx1NjcwN1x1NjcwQ1x1NjcwRVx1NjcwRlx1NjcxMVx1NjcxMlx1NjcxM1x1NjcxNlx1NjcxOFx1NjcxOVx1NjcxQVx1NjcxQ1x1NjcxRVx1NjcyMFwiLDUsXCJcdTY3MjdcdTY3MjlcdTY3MkVcdTY3MzBcdTY3MzJcdTY3MzNcdTY3MzZcdTY3MzdcdTY3MzhcdTY3MzlcdTY3M0JcdTY3M0NcdTY3M0VcdTY3M0ZcdTY3NDFcdTY3NDRcdTY3NDVcdTY3NDdcdTY3NEFcdTY3NEJcdTY3NERcdTY3NTJcdTY3NTRcdTY3NTVcdTY3NTdcIiw0LFwiXHU2NzVEXHU2NzYyXHU2NzYzXHU2NzY0XHU2NzY2XHU2NzY3XHU2NzZCXHU2NzZDXHU2NzZFXHU2NzcxXHU2Nzc0XHU2Nzc2XCJdLFxuW1wiOTY4MFwiLFwiXHU2Nzc4XHU2Nzc5XHU2NzdBXHU2NzdCXHU2NzdEXHU2NzgwXHU2NzgyXHU2NzgzXHU2Nzg1XHU2Nzg2XHU2Nzg4XHU2NzhBXHU2NzhDXHU2NzhEXHU2NzhFXHU2NzhGXHU2NzkxXHU2NzkyXHU2NzkzXHU2Nzk0XHU2Nzk2XHU2Nzk5XHU2NzlCXHU2NzlGXHU2N0EwXHU2N0ExXHU2N0E0XHU2N0E2XHU2N0E5XHU2N0FDXHU2N0FFXHU2N0IxXHU2N0IyXHU2N0I0XHU2N0I5XCIsNyxcIlx1NjdDMlx1NjdDNVwiLDksXCJcdTY3RDVcdTY3RDZcdTY3RDdcdTY3REJcdTY3REZcdTY3RTFcdTY3RTNcdTY3RTRcdTY3RTZcdTY3RTdcdTY3RThcdTY3RUFcdTY3RUJcdTY3RURcdTY3RUVcdTY3RjJcdTY3RjVcIiw3LFwiXHU2N0ZFXHU2ODAxXHU2ODAyXHU2ODAzXHU2ODA0XHU2ODA2XHU2ODBEXHU2ODEwXHU2ODEyXHU2ODE0XHU2ODE1XHU2ODE4XCIsNCxcIlx1NjgxRVx1NjgxRlx1NjgyMFx1NjgyMlwiLDYsXCJcdTY4MkJcIiw2LFwiXHU2ODM0XHU2ODM1XHU2ODM2XHU2ODNBXHU2ODNCXHU2ODNGXHU2ODQ3XHU2ODRCXHU2ODREXHU2ODRGXHU2ODUyXHU2ODU2XCIsNV0sXG5bXCI5NzQwXCIsXCJcdTY4NUNcdTY4NURcdTY4NUVcdTY4NUZcdTY4NkFcdTY4NkNcIiw3LFwiXHU2ODc1XHU2ODc4XCIsOCxcIlx1Njg4Mlx1Njg4NFx1Njg4N1wiLDcsXCJcdTY4OTBcdTY4OTFcdTY4OTJcdTY4OTRcdTY4OTVcdTY4OTZcdTY4OThcIiw5LFwiXHU2OEEzXHU2OEE0XHU2OEE1XHU2OEE5XHU2OEFBXHU2OEFCXHU2OEFDXHU2OEFFXHU2OEIxXHU2OEIyXHU2OEI0XHU2OEI2XHU2OEI3XHU2OEI4XCJdLFxuW1wiOTc4MFwiLFwiXHU2OEI5XCIsNixcIlx1NjhDMVx1NjhDM1wiLDUsXCJcdTY4Q0FcdTY4Q0NcdTY4Q0VcdTY4Q0ZcdTY4RDBcdTY4RDFcdTY4RDNcdTY4RDRcdTY4RDZcdTY4RDdcdTY4RDlcdTY4REJcIiw0LFwiXHU2OEUxXHU2OEUyXHU2OEU0XCIsOSxcIlx1NjhFRlx1NjhGMlx1NjhGM1x1NjhGNFx1NjhGNlx1NjhGN1x1NjhGOFx1NjhGQlx1NjhGRFx1NjhGRVx1NjhGRlx1NjkwMFx1NjkwMlx1NjkwM1x1NjkwNFx1NjkwNlwiLDQsXCJcdTY5MENcdTY5MEZcdTY5MTFcdTY5MTNcIiwxMSxcIlx1NjkyMVx1NjkyMlx1NjkyM1x1NjkyNVwiLDcsXCJcdTY5MkVcdTY5MkZcdTY5MzFcdTY5MzJcdTY5MzNcdTY5MzVcdTY5MzZcdTY5MzdcdTY5MzhcdTY5M0FcdTY5M0JcdTY5M0NcdTY5M0VcdTY5NDBcdTY5NDFcdTY5NDNcIiwxNixcIlx1Njk1NVx1Njk1Nlx1Njk1OFx1Njk1OVx1Njk1Qlx1Njk1Q1x1Njk1RlwiXSxcbltcIjk4NDBcIixcIlx1Njk2MVx1Njk2Mlx1Njk2NFx1Njk2NVx1Njk2N1x1Njk2OFx1Njk2OVx1Njk2QVx1Njk2Q1x1Njk2RFx1Njk2Rlx1Njk3MFx1Njk3MlwiLDQsXCJcdTY5N0FcdTY5N0JcdTY5N0RcdTY5N0VcdTY5N0ZcdTY5ODFcdTY5ODNcdTY5ODVcdTY5OEFcdTY5OEJcdTY5OENcdTY5OEVcIiw1LFwiXHU2OTk2XHU2OTk3XHU2OTk5XHU2OTlBXHU2OTlEXCIsOSxcIlx1NjlBOVx1NjlBQVx1NjlBQ1x1NjlBRVx1NjlBRlx1NjlCMFx1NjlCMlx1NjlCM1x1NjlCNVx1NjlCNlx1NjlCOFx1NjlCOVx1NjlCQVx1NjlCQ1x1NjlCRFwiXSxcbltcIjk4ODBcIixcIlx1NjlCRVx1NjlCRlx1NjlDMFx1NjlDMlwiLDcsXCJcdTY5Q0JcdTY5Q0RcdTY5Q0ZcdTY5RDFcdTY5RDJcdTY5RDNcdTY5RDVcIiw1LFwiXHU2OURDXHU2OUREXHU2OURFXHU2OUUxXCIsMTEsXCJcdTY5RUVcdTY5RUZcdTY5RjBcdTY5RjFcdTY5RjNcIiw5LFwiXHU2OUZFXHU2QTAwXCIsOSxcIlx1NkEwQlwiLDExLFwiXHU2QTE5XCIsNSxcIlx1NkEyMFx1NkEyMlwiLDUsXCJcdTZBMjlcdTZBMkJcdTZBMkNcdTZBMkRcdTZBMkVcdTZBMzBcdTZBMzJcdTZBMzNcdTZBMzRcdTZBMzZcIiw2LFwiXHU2QTNGXCIsNCxcIlx1NkE0NVx1NkE0Nlx1NkE0OFwiLDcsXCJcdTZBNTFcIiw2LFwiXHU2QTVBXCJdLFxuW1wiOTk0MFwiLFwiXHU2QTVDXCIsNCxcIlx1NkE2Mlx1NkE2M1x1NkE2NFx1NkE2NlwiLDEwLFwiXHU2QTcyXCIsNixcIlx1NkE3QVx1NkE3Qlx1NkE3RFx1NkE3RVx1NkE3Rlx1NkE4MVx1NkE4Mlx1NkE4M1x1NkE4NVwiLDgsXCJcdTZBOEZcdTZBOTJcIiw0LFwiXHU2QTk4XCIsNyxcIlx1NkFBMVwiLDVdLFxuW1wiOTk4MFwiLFwiXHU2QUE3XHU2QUE4XHU2QUFBXHU2QUFEXCIsMTE0LFwiXHU2QjI1XHU2QjI2XHU2QjI4XCIsNl0sXG5bXCI5YTQwXCIsXCJcdTZCMkZcdTZCMzBcdTZCMzFcdTZCMzNcdTZCMzRcdTZCMzVcdTZCMzZcdTZCMzhcdTZCM0JcdTZCM0NcdTZCM0RcdTZCM0ZcdTZCNDBcdTZCNDFcdTZCNDJcdTZCNDRcdTZCNDVcdTZCNDhcdTZCNEFcdTZCNEJcdTZCNERcIiwxMSxcIlx1NkI1QVwiLDcsXCJcdTZCNjhcdTZCNjlcdTZCNkJcIiwxMyxcIlx1NkI3QVx1NkI3RFx1NkI3RVx1NkI3Rlx1NkI4MFx1NkI4NVx1NkI4OFwiXSxcbltcIjlhODBcIixcIlx1NkI4Q1x1NkI4RVx1NkI4Rlx1NkI5MFx1NkI5MVx1NkI5NFx1NkI5NVx1NkI5N1x1NkI5OFx1NkI5OVx1NkI5Q1wiLDQsXCJcdTZCQTJcIiw3LFwiXHU2QkFCXCIsNyxcIlx1NkJCNlx1NkJCOFwiLDYsXCJcdTZCQzBcdTZCQzNcdTZCQzRcdTZCQzZcIiw0LFwiXHU2QkNDXHU2QkNFXHU2QkQwXHU2QkQxXHU2QkQ4XHU2QkRBXHU2QkRDXCIsNCxcIlx1NkJFMlwiLDcsXCJcdTZCRUNcdTZCRURcdTZCRUVcdTZCRjBcdTZCRjFcdTZCRjJcdTZCRjRcdTZCRjZcdTZCRjdcdTZCRjhcdTZCRkFcdTZCRkJcdTZCRkNcdTZCRkVcIiw2LFwiXHU2QzA4XCIsNCxcIlx1NkMwRVx1NkMxMlx1NkMxN1x1NkMxQ1x1NkMxRFx1NkMxRVx1NkMyMFx1NkMyM1x1NkMyNVx1NkMyQlx1NkMyQ1x1NkMyRFx1NkMzMVx1NkMzM1x1NkMzNlx1NkMzN1x1NkMzOVx1NkMzQVx1NkMzQlx1NkMzQ1x1NkMzRVx1NkMzRlx1NkM0M1x1NkM0NFx1NkM0NVx1NkM0OFx1NkM0QlwiLDQsXCJcdTZDNTFcdTZDNTJcdTZDNTNcdTZDNTZcdTZDNThcIl0sXG5bXCI5YjQwXCIsXCJcdTZDNTlcdTZDNUFcdTZDNjJcdTZDNjNcdTZDNjVcdTZDNjZcdTZDNjdcdTZDNkJcIiw0LFwiXHU2QzcxXHU2QzczXHU2Qzc1XHU2Qzc3XHU2Qzc4XHU2QzdBXHU2QzdCXHU2QzdDXHU2QzdGXHU2QzgwXHU2Qzg0XHU2Qzg3XHU2QzhBXHU2QzhCXHU2QzhEXHU2QzhFXHU2QzkxXHU2QzkyXHU2Qzk1XHU2Qzk2XHU2Qzk3XHU2Qzk4XHU2QzlBXHU2QzlDXHU2QzlEXHU2QzlFXHU2Q0EwXHU2Q0EyXHU2Q0E4XHU2Q0FDXHU2Q0FGXHU2Q0IwXHU2Q0I0XHU2Q0I1XHU2Q0I2XHU2Q0I3XHU2Q0JBXHU2Q0MwXHU2Q0MxXHU2Q0MyXHU2Q0MzXHU2Q0M2XHU2Q0M3XHU2Q0M4XHU2Q0NCXHU2Q0NEXHU2Q0NFXHU2Q0NGXHU2Q0QxXHU2Q0QyXHU2Q0Q4XCJdLFxuW1wiOWI4MFwiLFwiXHU2Q0Q5XHU2Q0RBXHU2Q0RDXHU2Q0REXHU2Q0RGXHU2Q0U0XHU2Q0U2XHU2Q0U3XHU2Q0U5XHU2Q0VDXHU2Q0VEXHU2Q0YyXHU2Q0Y0XHU2Q0Y5XHU2Q0ZGXHU2RDAwXHU2RDAyXHU2RDAzXHU2RDA1XHU2RDA2XHU2RDA4XHU2RDA5XHU2RDBBXHU2RDBEXHU2RDBGXHU2RDEwXHU2RDExXHU2RDEzXHU2RDE0XHU2RDE1XHU2RDE2XHU2RDE4XHU2RDFDXHU2RDFEXHU2RDFGXCIsNSxcIlx1NkQyNlx1NkQyOFx1NkQyOVx1NkQyQ1x1NkQyRFx1NkQyRlx1NkQzMFx1NkQzNFx1NkQzNlx1NkQzN1x1NkQzOFx1NkQzQVx1NkQzRlx1NkQ0MFx1NkQ0Mlx1NkQ0NFx1NkQ0OVx1NkQ0Q1x1NkQ1MFx1NkQ1NVx1NkQ1Nlx1NkQ1N1x1NkQ1OFx1NkQ1Qlx1NkQ1RFx1NkQ1Rlx1NkQ2MVx1NkQ2Mlx1NkQ2NFx1NkQ2NVx1NkQ2N1x1NkQ2OFx1NkQ2Qlx1NkQ2Q1x1NkQ2RFx1NkQ3MFx1NkQ3MVx1NkQ3Mlx1NkQ3M1x1NkQ3NVx1NkQ3Nlx1NkQ3OVx1NkQ3QVx1NkQ3Qlx1NkQ3RFwiLDQsXCJcdTZEODNcdTZEODRcdTZEODZcdTZEODdcdTZEOEFcdTZEOEJcdTZEOERcdTZEOEZcdTZEOTBcdTZEOTJcdTZEOTZcIiw0LFwiXHU2RDlDXHU2REEyXHU2REE1XHU2REFDXHU2REFEXHU2REIwXHU2REIxXHU2REIzXHU2REI0XHU2REI2XHU2REI3XHU2REI5XCIsNSxcIlx1NkRDMVx1NkRDMlx1NkRDM1x1NkRDOFx1NkRDOVx1NkRDQVwiXSxcbltcIjljNDBcIixcIlx1NkRDRFx1NkRDRVx1NkRDRlx1NkREMFx1NkREMlx1NkREM1x1NkRENFx1NkRENVx1NkREN1x1NkREQVx1NkREQlx1NkREQ1x1NkRERlx1NkRFMlx1NkRFM1x1NkRFNVx1NkRFN1x1NkRFOFx1NkRFOVx1NkRFQVx1NkRFRFx1NkRFRlx1NkRGMFx1NkRGMlx1NkRGNFx1NkRGNVx1NkRGNlx1NkRGOFx1NkRGQVx1NkRGRFwiLDcsXCJcdTZFMDZcdTZFMDdcdTZFMDhcdTZFMDlcdTZFMEJcdTZFMEZcdTZFMTJcdTZFMTNcdTZFMTVcdTZFMThcdTZFMTlcdTZFMUJcdTZFMUNcdTZFMUVcdTZFMUZcdTZFMjJcdTZFMjZcdTZFMjdcdTZFMjhcdTZFMkFcdTZFMkNcdTZFMkVcdTZFMzBcdTZFMzFcdTZFMzNcdTZFMzVcIl0sXG5bXCI5YzgwXCIsXCJcdTZFMzZcdTZFMzdcdTZFMzlcdTZFM0JcIiw3LFwiXHU2RTQ1XCIsNyxcIlx1NkU0Rlx1NkU1MFx1NkU1MVx1NkU1Mlx1NkU1NVx1NkU1N1x1NkU1OVx1NkU1QVx1NkU1Q1x1NkU1RFx1NkU1RVx1NkU2MFwiLDEwLFwiXHU2RTZDXHU2RTZEXHU2RTZGXCIsMTQsXCJcdTZFODBcdTZFODFcdTZFODJcdTZFODRcdTZFODdcdTZFODhcdTZFOEFcIiw0LFwiXHU2RTkxXCIsNixcIlx1NkU5OVx1NkU5QVx1NkU5Qlx1NkU5RFx1NkU5RVx1NkVBMFx1NkVBMVx1NkVBM1x1NkVBNFx1NkVBNlx1NkVBOFx1NkVBOVx1NkVBQlx1NkVBQ1x1NkVBRFx1NkVBRVx1NkVCMFx1NkVCM1x1NkVCNVx1NkVCOFx1NkVCOVx1NkVCQ1x1NkVCRVx1NkVCRlx1NkVDMFx1NkVDM1x1NkVDNFx1NkVDNVx1NkVDNlx1NkVDOFx1NkVDOVx1NkVDQVx1NkVDQ1x1NkVDRFx1NkVDRVx1NkVEMFx1NkVEMlx1NkVENlx1NkVEOFx1NkVEOVx1NkVEQlx1NkVEQ1x1NkVERFx1NkVFM1x1NkVFN1x1NkVFQVwiLDVdLFxuW1wiOWQ0MFwiLFwiXHU2RUYwXHU2RUYxXHU2RUYyXHU2RUYzXHU2RUY1XHU2RUY2XHU2RUY3XHU2RUY4XHU2RUZBXCIsNyxcIlx1NkYwM1x1NkYwNFx1NkYwNVx1NkYwN1x1NkYwOFx1NkYwQVwiLDQsXCJcdTZGMTBcdTZGMTFcdTZGMTJcdTZGMTZcIiw5LFwiXHU2RjIxXHU2RjIyXHU2RjIzXHU2RjI1XHU2RjI2XHU2RjI3XHU2RjI4XHU2RjJDXHU2RjJFXHU2RjMwXHU2RjMyXHU2RjM0XHU2RjM1XHU2RjM3XCIsNixcIlx1NkYzRlx1NkY0MFx1NkY0MVx1NkY0MlwiXSxcbltcIjlkODBcIixcIlx1NkY0M1x1NkY0NFx1NkY0NVx1NkY0OFx1NkY0OVx1NkY0QVx1NkY0Q1x1NkY0RVwiLDksXCJcdTZGNTlcdTZGNUFcdTZGNUJcdTZGNURcdTZGNUZcdTZGNjBcdTZGNjFcdTZGNjNcdTZGNjRcdTZGNjVcdTZGNjdcIiw1LFwiXHU2RjZGXHU2RjcwXHU2RjcxXHU2RjczXHU2Rjc1XHU2Rjc2XHU2Rjc3XHU2Rjc5XHU2RjdCXHU2RjdEXCIsNixcIlx1NkY4NVx1NkY4Nlx1NkY4N1x1NkY4QVx1NkY4Qlx1NkY4RlwiLDEyLFwiXHU2RjlEXHU2RjlFXHU2RjlGXHU2RkEwXHU2RkEyXCIsNCxcIlx1NkZBOFwiLDEwLFwiXHU2RkI0XHU2RkI1XHU2RkI3XHU2RkI4XHU2RkJBXCIsNSxcIlx1NkZDMVx1NkZDM1wiLDUsXCJcdTZGQ0FcIiw2LFwiXHU2RkQzXCIsMTAsXCJcdTZGREZcdTZGRTJcdTZGRTNcdTZGRTRcdTZGRTVcIl0sXG5bXCI5ZTQwXCIsXCJcdTZGRTZcIiw3LFwiXHU2RkYwXCIsMzIsXCJcdTcwMTJcIiw3LFwiXHU3MDFDXCIsNixcIlx1NzAyNFwiLDZdLFxuW1wiOWU4MFwiLFwiXHU3MDJCXCIsOSxcIlx1NzAzNlx1NzAzN1x1NzAzOFx1NzAzQVwiLDE3LFwiXHU3MDREXHU3MDRFXHU3MDUwXCIsMTMsXCJcdTcwNUZcIiwxMSxcIlx1NzA2RVx1NzA3MVx1NzA3Mlx1NzA3M1x1NzA3NFx1NzA3N1x1NzA3OVx1NzA3QVx1NzA3Qlx1NzA3RFx1NzA4MVx1NzA4Mlx1NzA4M1x1NzA4NFx1NzA4Nlx1NzA4N1x1NzA4OFx1NzA4Qlx1NzA4Q1x1NzA4RFx1NzA4Rlx1NzA5MFx1NzA5MVx1NzA5M1x1NzA5N1x1NzA5OFx1NzA5QVx1NzA5Qlx1NzA5RVwiLDEyLFwiXHU3MEIwXHU3MEIyXHU3MEI0XHU3MEI1XHU3MEI2XHU3MEJBXHU3MEJFXHU3MEJGXHU3MEM0XHU3MEM1XHU3MEM2XHU3MEM3XHU3MEM5XHU3MENCXCIsMTIsXCJcdTcwREFcIl0sXG5bXCI5ZjQwXCIsXCJcdTcwRENcdTcwRERcdTcwREVcdTcwRTBcdTcwRTFcdTcwRTJcdTcwRTNcdTcwRTVcdTcwRUFcdTcwRUVcdTcwRjBcIiw2LFwiXHU3MEY4XHU3MEZBXHU3MEZCXHU3MEZDXHU3MEZFXCIsMTAsXCJcdTcxMEJcIiw0LFwiXHU3MTExXHU3MTEyXHU3MTE0XHU3MTE3XHU3MTFCXCIsMTAsXCJcdTcxMjdcIiw3LFwiXHU3MTMyXHU3MTMzXHU3MTM0XCJdLFxuW1wiOWY4MFwiLFwiXHU3MTM1XHU3MTM3XCIsMTMsXCJcdTcxNDZcdTcxNDdcdTcxNDhcdTcxNDlcdTcxNEJcdTcxNERcdTcxNEZcIiwxMixcIlx1NzE1RFx1NzE1RlwiLDQsXCJcdTcxNjVcdTcxNjlcIiw0LFwiXHU3MTZGXHU3MTcwXHU3MTcxXHU3MTc0XHU3MTc1XHU3MTc2XHU3MTc3XHU3MTc5XHU3MTdCXHU3MTdDXHU3MTdFXCIsNSxcIlx1NzE4NVwiLDQsXCJcdTcxOEJcdTcxOENcdTcxOERcdTcxOEVcdTcxOTBcdTcxOTFcdTcxOTJcdTcxOTNcdTcxOTVcdTcxOTZcdTcxOTdcdTcxOUFcIiw0LFwiXHU3MUExXCIsNixcIlx1NzFBOVx1NzFBQVx1NzFBQlx1NzFBRFwiLDUsXCJcdTcxQjRcdTcxQjZcdTcxQjdcdTcxQjhcdTcxQkFcIiw4LFwiXHU3MUM0XCIsOSxcIlx1NzFDRlwiLDRdLFxuW1wiYTA0MFwiLFwiXHU3MUQ2XCIsOSxcIlx1NzFFMVx1NzFFMlx1NzFFM1x1NzFFNFx1NzFFNlx1NzFFOFwiLDUsXCJcdTcxRUZcIiw5LFwiXHU3MUZBXCIsMTEsXCJcdTcyMDdcIiwxOV0sXG5bXCJhMDgwXCIsXCJcdTcyMUJcdTcyMUNcdTcyMUVcIiw5LFwiXHU3MjI5XHU3MjJCXHU3MjJEXHU3MjJFXHU3MjJGXHU3MjMyXHU3MjMzXHU3MjM0XHU3MjNBXHU3MjNDXHU3MjNFXHU3MjQwXCIsNixcIlx1NzI0OVx1NzI0QVx1NzI0Qlx1NzI0RVx1NzI0Rlx1NzI1MFx1NzI1MVx1NzI1M1x1NzI1NFx1NzI1NVx1NzI1N1x1NzI1OFx1NzI1QVx1NzI1Q1x1NzI1RVx1NzI2MFx1NzI2M1x1NzI2NFx1NzI2NVx1NzI2OFx1NzI2QVx1NzI2Qlx1NzI2Q1x1NzI2RFx1NzI3MFx1NzI3MVx1NzI3M1x1NzI3NFx1NzI3Nlx1NzI3N1x1NzI3OFx1NzI3Qlx1NzI3Q1x1NzI3RFx1NzI4Mlx1NzI4M1x1NzI4NVwiLDQsXCJcdTcyOENcdTcyOEVcdTcyOTBcdTcyOTFcdTcyOTNcIiwxMSxcIlx1NzJBMFwiLDExLFwiXHU3MkFFXHU3MkIxXHU3MkIyXHU3MkIzXHU3MkI1XHU3MkJBXCIsNixcIlx1NzJDNVx1NzJDNlx1NzJDN1x1NzJDOVx1NzJDQVx1NzJDQlx1NzJDQ1x1NzJDRlx1NzJEMVx1NzJEM1x1NzJENFx1NzJENVx1NzJENlx1NzJEOFx1NzJEQVx1NzJEQlwiXSxcbltcImExYTFcIixcIlx1MzAwMFx1MzAwMVx1MzAwMlx1MDBCN1x1MDJDOVx1MDJDN1x1MDBBOFx1MzAwM1x1MzAwNVx1MjAxNFx1RkY1RVx1MjAxNlx1MjAyNlx1MjAxOFx1MjAxOVx1MjAxQ1x1MjAxRFx1MzAxNFx1MzAxNVx1MzAwOFwiLDcsXCJcdTMwMTZcdTMwMTdcdTMwMTBcdTMwMTFcdTAwQjFcdTAwRDdcdTAwRjdcdTIyMzZcdTIyMjdcdTIyMjhcdTIyMTFcdTIyMEZcdTIyMkFcdTIyMjlcdTIyMDhcdTIyMzdcdTIyMUFcdTIyQTVcdTIyMjVcdTIyMjBcdTIzMTJcdTIyOTlcdTIyMkJcdTIyMkVcdTIyNjFcdTIyNENcdTIyNDhcdTIyM0RcdTIyMURcdTIyNjBcdTIyNkVcdTIyNkZcdTIyNjRcdTIyNjVcdTIyMUVcdTIyMzVcdTIyMzRcdTI2NDJcdTI2NDBcdTAwQjBcdTIwMzJcdTIwMzNcdTIxMDNcdUZGMDRcdTAwQTRcdUZGRTBcdUZGRTFcdTIwMzBcdTAwQTdcdTIxMTZcdTI2MDZcdTI2MDVcdTI1Q0JcdTI1Q0ZcdTI1Q0VcdTI1QzdcdTI1QzZcdTI1QTFcdTI1QTBcdTI1QjNcdTI1QjJcdTIwM0JcdTIxOTJcdTIxOTBcdTIxOTFcdTIxOTNcdTMwMTNcIl0sXG5bXCJhMmExXCIsXCJcdTIxNzBcIiw5XSxcbltcImEyYjFcIixcIlx1MjQ4OFwiLDE5LFwiXHUyNDc0XCIsMTksXCJcdTI0NjBcIiw5XSxcbltcImEyZTVcIixcIlx1MzIyMFwiLDldLFxuW1wiYTJmMVwiLFwiXHUyMTYwXCIsMTFdLFxuW1wiYTNhMVwiLFwiXHVGRjAxXHVGRjAyXHVGRjAzXHVGRkU1XHVGRjA1XCIsODgsXCJcdUZGRTNcIl0sXG5bXCJhNGExXCIsXCJcdTMwNDFcIiw4Ml0sXG5bXCJhNWExXCIsXCJcdTMwQTFcIiw4NV0sXG5bXCJhNmExXCIsXCJcdTAzOTFcIiwxNixcIlx1MDNBM1wiLDZdLFxuW1wiYTZjMVwiLFwiXHUwM0IxXCIsMTYsXCJcdTAzQzNcIiw2XSxcbltcImE2ZTBcIixcIlx1RkUzNVx1RkUzNlx1RkUzOVx1RkUzQVx1RkUzRlx1RkU0MFx1RkUzRFx1RkUzRVx1RkU0MVx1RkU0Mlx1RkU0M1x1RkU0NFwiXSxcbltcImE2ZWVcIixcIlx1RkUzQlx1RkUzQ1x1RkUzN1x1RkUzOFx1RkUzMVwiXSxcbltcImE2ZjRcIixcIlx1RkUzM1x1RkUzNFwiXSxcbltcImE3YTFcIixcIlx1MDQxMFwiLDUsXCJcdTA0MDFcdTA0MTZcIiwyNV0sXG5bXCJhN2QxXCIsXCJcdTA0MzBcIiw1LFwiXHUwNDUxXHUwNDM2XCIsMjVdLFxuW1wiYTg0MFwiLFwiXHUwMkNBXHUwMkNCXHUwMkQ5XHUyMDEzXHUyMDE1XHUyMDI1XHUyMDM1XHUyMTA1XHUyMTA5XHUyMTk2XHUyMTk3XHUyMTk4XHUyMTk5XHUyMjE1XHUyMjFGXHUyMjIzXHUyMjUyXHUyMjY2XHUyMjY3XHUyMkJGXHUyNTUwXCIsMzUsXCJcdTI1ODFcIiw2XSxcbltcImE4ODBcIixcIlx1MjU4OFwiLDcsXCJcdTI1OTNcdTI1OTRcdTI1OTVcdTI1QkNcdTI1QkRcdTI1RTJcdTI1RTNcdTI1RTRcdTI1RTVcdTI2MDlcdTIyOTVcdTMwMTJcdTMwMURcdTMwMUVcIl0sXG5bXCJhOGExXCIsXCJcdTAxMDFcdTAwRTFcdTAxQ0VcdTAwRTBcdTAxMTNcdTAwRTlcdTAxMUJcdTAwRThcdTAxMkJcdTAwRURcdTAxRDBcdTAwRUNcdTAxNERcdTAwRjNcdTAxRDJcdTAwRjJcdTAxNkJcdTAwRkFcdTAxRDRcdTAwRjlcdTAxRDZcdTAxRDhcdTAxREFcdTAxRENcdTAwRkNcdTAwRUFcdTAyNTFcIl0sXG5bXCJhOGJkXCIsXCJcdTAxNDRcdTAxNDhcIl0sXG5bXCJhOGMwXCIsXCJcdTAyNjFcIl0sXG5bXCJhOGM1XCIsXCJcdTMxMDVcIiwzNl0sXG5bXCJhOTQwXCIsXCJcdTMwMjFcIiw4LFwiXHUzMkEzXHUzMzhFXHUzMzhGXHUzMzlDXHUzMzlEXHUzMzlFXHUzM0ExXHUzM0M0XHUzM0NFXHUzM0QxXHUzM0QyXHUzM0Q1XHVGRTMwXHVGRkUyXHVGRkU0XCJdLFxuW1wiYTk1OVwiLFwiXHUyMTIxXHUzMjMxXCJdLFxuW1wiYTk1Y1wiLFwiXHUyMDEwXCJdLFxuW1wiYTk2MFwiLFwiXHUzMEZDXHUzMDlCXHUzMDlDXHUzMEZEXHUzMEZFXHUzMDA2XHUzMDlEXHUzMDlFXHVGRTQ5XCIsOSxcIlx1RkU1NFx1RkU1NVx1RkU1Nlx1RkU1N1x1RkU1OVwiLDhdLFxuW1wiYTk4MFwiLFwiXHVGRTYyXCIsNCxcIlx1RkU2OFx1RkU2OVx1RkU2QVx1RkU2QlwiXSxcbltcImE5OTZcIixcIlx1MzAwN1wiXSxcbltcImE5YTRcIixcIlx1MjUwMFwiLDc1XSxcbltcImFhNDBcIixcIlx1NzJEQ1x1NzJERFx1NzJERlx1NzJFMlwiLDUsXCJcdTcyRUFcdTcyRUJcdTcyRjVcdTcyRjZcdTcyRjlcdTcyRkRcdTcyRkVcdTcyRkZcdTczMDBcdTczMDJcdTczMDRcIiw1LFwiXHU3MzBCXHU3MzBDXHU3MzBEXHU3MzBGXHU3MzEwXHU3MzExXHU3MzEyXHU3MzE0XHU3MzE4XHU3MzE5XHU3MzFBXHU3MzFGXHU3MzIwXHU3MzIzXHU3MzI0XHU3MzI2XHU3MzI3XHU3MzI4XHU3MzJEXHU3MzJGXHU3MzMwXHU3MzMyXHU3MzMzXHU3MzM1XHU3MzM2XHU3MzNBXHU3MzNCXHU3MzNDXHU3MzNEXHU3MzQwXCIsOF0sXG5bXCJhYTgwXCIsXCJcdTczNDlcdTczNEFcdTczNEJcdTczNENcdTczNEVcdTczNEZcdTczNTFcdTczNTNcdTczNTRcdTczNTVcdTczNTZcdTczNThcIiw3LFwiXHU3MzYxXCIsMTAsXCJcdTczNkVcdTczNzBcdTczNzFcIl0sXG5bXCJhYjQwXCIsXCJcdTczNzJcIiwxMSxcIlx1NzM3RlwiLDQsXCJcdTczODVcdTczODZcdTczODhcdTczOEFcdTczOENcdTczOERcdTczOEZcdTczOTBcdTczOTJcdTczOTNcdTczOTRcdTczOTVcdTczOTdcdTczOThcdTczOTlcdTczOUFcdTczOUNcdTczOURcdTczOUVcdTczQTBcdTczQTFcdTczQTNcIiw1LFwiXHU3M0FBXHU3M0FDXHU3M0FEXHU3M0IxXHU3M0I0XHU3M0I1XHU3M0I2XHU3M0I4XHU3M0I5XHU3M0JDXHU3M0JEXHU3M0JFXHU3M0JGXHU3M0MxXHU3M0MzXCIsNF0sXG5bXCJhYjgwXCIsXCJcdTczQ0JcdTczQ0NcdTczQ0VcdTczRDJcIiw2LFwiXHU3M0RBXHU3M0RCXHU3M0RDXHU3M0REXHU3M0RGXHU3M0UxXHU3M0UyXHU3M0UzXHU3M0U0XHU3M0U2XHU3M0U4XHU3M0VBXHU3M0VCXHU3M0VDXHU3M0VFXHU3M0VGXHU3M0YwXHU3M0YxXHU3M0YzXCIsNF0sXG5bXCJhYzQwXCIsXCJcdTczRjhcIiwxMCxcIlx1NzQwNFx1NzQwN1x1NzQwOFx1NzQwQlx1NzQwQ1x1NzQwRFx1NzQwRVx1NzQxMVwiLDgsXCJcdTc0MUNcIiw1LFwiXHU3NDIzXHU3NDI0XHU3NDI3XHU3NDI5XHU3NDJCXHU3NDJEXHU3NDJGXHU3NDMxXHU3NDMyXHU3NDM3XCIsNCxcIlx1NzQzRFx1NzQzRVx1NzQzRlx1NzQ0MFx1NzQ0MlwiLDExXSxcbltcImFjODBcIixcIlx1NzQ0RVwiLDYsXCJcdTc0NTZcdTc0NThcdTc0NURcdTc0NjBcIiwxMixcIlx1NzQ2RVx1NzQ2Rlx1NzQ3MVwiLDQsXCJcdTc0NzhcdTc0NzlcdTc0N0FcIl0sXG5bXCJhZDQwXCIsXCJcdTc0N0JcdTc0N0NcdTc0N0RcdTc0N0ZcdTc0ODJcdTc0ODRcdTc0ODVcdTc0ODZcdTc0ODhcdTc0ODlcdTc0OEFcdTc0OENcdTc0OERcdTc0OEZcdTc0OTFcIiwxMCxcIlx1NzQ5RFx1NzQ5RlwiLDcsXCJcdTc0QUFcIiwxNSxcIlx1NzRCQlwiLDEyXSxcbltcImFkODBcIixcIlx1NzRDOFwiLDksXCJcdTc0RDNcIiw4LFwiXHU3NEREXHU3NERGXHU3NEUxXHU3NEU1XHU3NEU3XCIsNixcIlx1NzRGMFx1NzRGMVx1NzRGMlwiXSxcbltcImFlNDBcIixcIlx1NzRGM1x1NzRGNVx1NzRGOFwiLDYsXCJcdTc1MDBcdTc1MDFcdTc1MDJcdTc1MDNcdTc1MDVcIiw3LFwiXHU3NTBFXHU3NTEwXHU3NTEyXHU3NTE0XHU3NTE1XHU3NTE2XHU3NTE3XHU3NTFCXHU3NTFEXHU3NTFFXHU3NTIwXCIsNCxcIlx1NzUyNlx1NzUyN1x1NzUyQVx1NzUyRVx1NzUzNFx1NzUzNlx1NzUzOVx1NzUzQ1x1NzUzRFx1NzUzRlx1NzU0MVx1NzU0Mlx1NzU0M1x1NzU0NFx1NzU0Nlx1NzU0N1x1NzU0OVx1NzU0QVx1NzU0RFx1NzU1MFx1NzU1MVx1NzU1Mlx1NzU1M1x1NzU1NVx1NzU1Nlx1NzU1N1x1NzU1OFwiXSxcbltcImFlODBcIixcIlx1NzU1RFwiLDcsXCJcdTc1NjdcdTc1NjhcdTc1NjlcdTc1NkJcIiw2LFwiXHU3NTczXHU3NTc1XHU3NTc2XHU3NTc3XHU3NTdBXCIsNCxcIlx1NzU4MFx1NzU4MVx1NzU4Mlx1NzU4NFx1NzU4NVx1NzU4N1wiXSxcbltcImFmNDBcIixcIlx1NzU4OFx1NzU4OVx1NzU4QVx1NzU4Q1x1NzU4RFx1NzU4RVx1NzU5MFx1NzU5M1x1NzU5NVx1NzU5OFx1NzU5Qlx1NzU5Q1x1NzU5RVx1NzVBMlx1NzVBNlwiLDQsXCJcdTc1QURcdTc1QjZcdTc1QjdcdTc1QkFcdTc1QkJcdTc1QkZcdTc1QzBcdTc1QzFcdTc1QzZcdTc1Q0JcdTc1Q0NcdTc1Q0VcdTc1Q0ZcdTc1RDBcdTc1RDFcdTc1RDNcdTc1RDdcdTc1RDlcdTc1REFcdTc1RENcdTc1RERcdTc1REZcdTc1RTBcdTc1RTFcdTc1RTVcdTc1RTlcdTc1RUNcdTc1RURcdTc1RUVcdTc1RUZcdTc1RjJcdTc1RjNcdTc1RjVcdTc1RjZcdTc1RjdcdTc1RjhcdTc1RkFcdTc1RkJcdTc1RkRcdTc1RkVcdTc2MDJcdTc2MDRcdTc2MDZcdTc2MDdcIl0sXG5bXCJhZjgwXCIsXCJcdTc2MDhcdTc2MDlcdTc2MEJcdTc2MERcdTc2MEVcdTc2MEZcdTc2MTFcdTc2MTJcdTc2MTNcdTc2MTRcdTc2MTZcdTc2MUFcdTc2MUNcdTc2MURcdTc2MUVcdTc2MjFcdTc2MjNcdTc2MjdcdTc2MjhcdTc2MkNcdTc2MkVcdTc2MkZcdTc2MzFcdTc2MzJcdTc2MzZcdTc2MzdcdTc2MzlcdTc2M0FcdTc2M0JcdTc2M0RcdTc2NDFcdTc2NDJcdTc2NDRcIl0sXG5bXCJiMDQwXCIsXCJcdTc2NDVcIiw2LFwiXHU3NjRFXCIsNSxcIlx1NzY1NVx1NzY1N1wiLDQsXCJcdTc2NURcdTc2NUZcdTc2NjBcdTc2NjFcdTc2NjJcdTc2NjRcIiw2LFwiXHU3NjZDXHU3NjZEXHU3NjZFXHU3NjcwXCIsNyxcIlx1NzY3OVx1NzY3QVx1NzY3Q1x1NzY3Rlx1NzY4MFx1NzY4MVx1NzY4M1x1NzY4NVx1NzY4OVx1NzY4QVx1NzY4Q1x1NzY4RFx1NzY4Rlx1NzY5MFx1NzY5Mlx1NzY5NFx1NzY5NVx1NzY5N1x1NzY5OFx1NzY5QVx1NzY5QlwiXSxcbltcImIwODBcIixcIlx1NzY5Q1wiLDcsXCJcdTc2QTVcIiw4LFwiXHU3NkFGXHU3NkIwXHU3NkIzXHU3NkI1XCIsOSxcIlx1NzZDMFx1NzZDMVx1NzZDM1x1NTU0QVx1OTYzRlx1NTdDM1x1NjMyOFx1NTRDRVx1NTUwOVx1NTRDMFx1NzY5MVx1NzY0Q1x1ODUzQ1x1NzdFRVx1ODI3RVx1Nzg4RFx1NzIzMVx1OTY5OFx1OTc4RFx1NkMyOFx1NUI4OVx1NEZGQVx1NjMwOVx1NjY5N1x1NUNCOFx1ODBGQVx1Njg0OFx1ODBBRVx1NjYwMlx1NzZDRVx1NTFGOVx1NjU1Nlx1NzFBQ1x1N0ZGMVx1ODg4NFx1NTBCMlx1NTk2NVx1NjFDQVx1NkZCM1x1ODJBRFx1NjM0Q1x1NjI1Mlx1NTNFRFx1NTQyN1x1N0IwNlx1NTE2Qlx1NzVBNFx1NURGNFx1NjJENFx1OERDQlx1OTc3Nlx1NjI4QVx1ODAxOVx1NTc1RFx1OTczOFx1N0Y2Mlx1NzIzOFx1NzY3RFx1NjdDRlx1NzY3RVx1NjQ0Nlx1NEY3MFx1OEQyNVx1NjJEQ1x1N0ExN1x1NjU5MVx1NzNFRFx1NjQyQ1x1NjI3M1x1ODIyQ1x1OTg4MVx1Njc3Rlx1NzI0OFx1NjI2RVx1NjJDQ1x1NEYzNFx1NzRFM1x1NTM0QVx1NTI5RVx1N0VDQVx1OTBBNlx1NUUyRVx1Njg4Nlx1Njk5Q1x1ODE4MFx1N0VEMVx1NjhEMlx1NzhDNVx1ODY4Q1x1OTU1MVx1NTA4RFx1OEMyNFx1ODJERVx1ODBERVx1NTMwNVx1ODkxMlx1NTI2NVwiXSxcbltcImIxNDBcIixcIlx1NzZDNFx1NzZDN1x1NzZDOVx1NzZDQlx1NzZDQ1x1NzZEM1x1NzZENVx1NzZEOVx1NzZEQVx1NzZEQ1x1NzZERFx1NzZERVx1NzZFMFwiLDQsXCJcdTc2RTZcIiw3LFwiXHU3NkYwXHU3NkYzXHU3NkY1XHU3NkY2XHU3NkY3XHU3NkZBXHU3NkZCXHU3NkZEXHU3NkZGXHU3NzAwXHU3NzAyXHU3NzAzXHU3NzA1XHU3NzA2XHU3NzBBXHU3NzBDXHU3NzBFXCIsMTAsXCJcdTc3MUJcdTc3MUNcdTc3MURcdTc3MUVcdTc3MjFcdTc3MjNcdTc3MjRcdTc3MjVcdTc3MjdcdTc3MkFcdTc3MkJcIl0sXG5bXCJiMTgwXCIsXCJcdTc3MkNcdTc3MkVcdTc3MzBcIiw0LFwiXHU3NzM5XHU3NzNCXHU3NzNEXHU3NzNFXHU3NzNGXHU3NzQyXHU3NzQ0XHU3NzQ1XHU3NzQ2XHU3NzQ4XCIsNyxcIlx1Nzc1MlwiLDcsXCJcdTc3NUNcdTg1ODRcdTk2RjlcdTRGRERcdTU4MjFcdTk5NzFcdTVCOURcdTYyQjFcdTYyQTVcdTY2QjRcdThDNzlcdTlDOERcdTcyMDZcdTY3NkZcdTc4OTFcdTYwQjJcdTUzNTFcdTUzMTdcdThGODhcdTgwQ0NcdThEMURcdTk0QTFcdTUwMERcdTcyQzhcdTU5MDdcdTYwRUJcdTcxMTlcdTg4QUJcdTU5NTRcdTgyRUZcdTY3MkNcdTdCMjhcdTVEMjlcdTdFRjdcdTc1MkRcdTZDRjVcdThFNjZcdThGRjhcdTkwM0NcdTlGM0JcdTZCRDRcdTkxMTlcdTdCMTRcdTVGN0NcdTc4QTdcdTg0RDZcdTg1M0RcdTZCRDVcdTZCRDlcdTZCRDZcdTVFMDFcdTVFODdcdTc1RjlcdTk1RURcdTY1NURcdTVGMEFcdTVGQzVcdThGOUZcdTU4QzFcdTgxQzJcdTkwN0ZcdTk2NUJcdTk3QURcdThGQjlcdTdGMTZcdThEMkNcdTYyNDFcdTRGQkZcdTUzRDhcdTUzNUVcdThGQThcdThGQTlcdThGQUJcdTkwNERcdTY4MDdcdTVGNkFcdTgxOThcdTg4NjhcdTlDRDZcdTYxOEJcdTUyMkJcdTc2MkFcdTVGNkNcdTY1OENcdTZGRDJcdTZFRThcdTVCQkVcdTY0NDhcdTUxNzVcdTUxQjBcdTY3QzRcdTRFMTlcdTc5QzlcdTk5N0NcdTcwQjNcIl0sXG5bXCJiMjQwXCIsXCJcdTc3NURcdTc3NUVcdTc3NUZcdTc3NjBcdTc3NjRcdTc3NjdcdTc3NjlcdTc3NkFcdTc3NkRcIiwxMSxcIlx1Nzc3QVx1Nzc3Qlx1Nzc3Q1x1Nzc4MVx1Nzc4Mlx1Nzc4M1x1Nzc4NlwiLDUsXCJcdTc3OEZcdTc3OTBcdTc3OTNcIiwxMSxcIlx1NzdBMVx1NzdBM1x1NzdBNFx1NzdBNlx1NzdBOFx1NzdBQlx1NzdBRFx1NzdBRVx1NzdBRlx1NzdCMVx1NzdCMlx1NzdCNFx1NzdCNlwiLDRdLFxuW1wiYjI4MFwiLFwiXHU3N0JDXHU3N0JFXHU3N0MwXCIsMTIsXCJcdTc3Q0VcIiw4LFwiXHU3N0Q4XHU3N0Q5XHU3N0RBXHU3N0REXCIsNCxcIlx1NzdFNFx1NzVDNVx1NUU3Nlx1NzNCQlx1ODNFMFx1NjRBRFx1NjJFOFx1OTRCNVx1NkNFMlx1NTM1QVx1NTJDM1x1NjQwRlx1OTRDMlx1N0I5NFx1NEYyRlx1NUUxQlx1ODIzNlx1ODExNlx1ODE4QVx1NkUyNFx1NkNDQVx1OUE3M1x1NjM1NVx1NTM1Q1x1NTRGQVx1ODg2NVx1NTdFMFx1NEUwRFx1NUUwM1x1NkI2NVx1N0MzRlx1OTBFOFx1NjAxNlx1NjRFNlx1NzMxQ1x1ODhDMVx1Njc1MFx1NjI0RFx1OEQyMlx1Nzc2Q1x1OEUyOVx1OTFDN1x1NUY2OVx1ODNEQ1x1ODUyMVx1OTkxMFx1NTNDMlx1ODY5NVx1NkI4Qlx1NjBFRFx1NjBFOFx1NzA3Rlx1ODJDRFx1ODIzMVx1NEVEM1x1NkNBN1x1ODVDRlx1NjRDRFx1N0NEOVx1NjlGRFx1NjZGOVx1ODM0OVx1NTM5NVx1N0I1Nlx1NEZBN1x1NTE4Q1x1NkQ0Qlx1NUM0Mlx1OEU2RFx1NjNEMlx1NTNDOVx1ODMyQ1x1ODMzNlx1NjdFNVx1NzhCNFx1NjQzRFx1NUJERlx1NUM5NFx1NURFRVx1OEJFN1x1NjJDNlx1NjdGNFx1OEM3QVx1NjQwMFx1NjNCQVx1ODc0OVx1OTk4Qlx1OEMxN1x1N0YyMFx1OTRGMlx1NEVBN1x1OTYxMFx1OThBNFx1NjYwQ1x1NzMxNlwiXSxcbltcImIzNDBcIixcIlx1NzdFNlx1NzdFOFx1NzdFQVx1NzdFRlx1NzdGMFx1NzdGMVx1NzdGMlx1NzdGNFx1NzdGNVx1NzdGN1x1NzdGOVx1NzdGQVx1NzdGQlx1NzdGQ1x1NzgwM1wiLDUsXCJcdTc4MEFcdTc4MEJcdTc4MEVcdTc4MEZcdTc4MTBcdTc4MTNcdTc4MTVcdTc4MTlcdTc4MUJcdTc4MUVcdTc4MjBcdTc4MjFcdTc4MjJcdTc4MjRcdTc4MjhcdTc4MkFcdTc4MkJcdTc4MkVcdTc4MkZcdTc4MzFcdTc4MzJcdTc4MzNcdTc4MzVcdTc4MzZcdTc4M0RcdTc4M0ZcdTc4NDFcdTc4NDJcdTc4NDNcdTc4NDRcdTc4NDZcdTc4NDhcdTc4NDlcdTc4NEFcdTc4NEJcdTc4NERcdTc4NEZcdTc4NTFcdTc4NTNcdTc4NTRcdTc4NThcdTc4NTlcdTc4NUFcIl0sXG5bXCJiMzgwXCIsXCJcdTc4NUJcdTc4NUNcdTc4NUVcIiwxMSxcIlx1Nzg2RlwiLDcsXCJcdTc4NzhcdTc4NzlcdTc4N0FcdTc4N0JcdTc4N0RcIiw2LFwiXHU1NzNBXHU1QzFEXHU1RTM4XHU5NTdGXHU1MDdGXHU4MEEwXHU1MzgyXHU2NTVFXHU3NTQ1XHU1NTMxXHU1MDIxXHU4RDg1XHU2Mjg0XHU5NDlFXHU2NzFEXHU1NjMyXHU2RjZFXHU1REUyXHU1NDM1XHU3MDkyXHU4RjY2XHU2MjZGXHU2NEE0XHU2M0EzXHU1RjdCXHU2Rjg4XHU5MEY0XHU4MUUzXHU4RkIwXHU1QzE4XHU2NjY4XHU1RkYxXHU2Qzg5XHU5NjQ4XHU4RDgxXHU4ODZDXHU2NDkxXHU3OUYwXHU1N0NFXHU2QTU5XHU2MjEwXHU1NDQ4XHU0RTU4XHU3QTBCXHU2MEU5XHU2Rjg0XHU4QkRBXHU2MjdGXHU5MDFFXHU5QThCXHU3OUU0XHU1NDAzXHU3NUY0XHU2MzAxXHU1MzE5XHU2QzYwXHU4RkRGXHU1RjFCXHU5QTcwXHU4MDNCXHU5RjdGXHU0Rjg4XHU1QzNBXHU4RDY0XHU3RkM1XHU2NUE1XHU3MEJEXHU1MTQ1XHU1MUIyXHU4NjZCXHU1RDA3XHU1QkEwXHU2MkJEXHU5MTZDXHU3NTc0XHU4RTBDXHU3QTIwXHU2MTAxXHU3Qjc5XHU0RUM3XHU3RUY4XHU3Nzg1XHU0RTExXHU4MUVEXHU1MjFEXHU1MUZBXHU2QTcxXHU1M0E4XHU4RTg3XHU5NTA0XHU5NkNGXHU2RUMxXHU5NjY0XHU2OTVBXCJdLFxuW1wiYjQ0MFwiLFwiXHU3ODg0XHU3ODg1XHU3ODg2XHU3ODg4XHU3ODhBXHU3ODhCXHU3ODhGXHU3ODkwXHU3ODkyXHU3ODk0XHU3ODk1XHU3ODk2XHU3ODk5XHU3ODlEXHU3ODlFXHU3OEEwXHU3OEEyXHU3OEE0XHU3OEE2XHU3OEE4XCIsNyxcIlx1NzhCNVx1NzhCNlx1NzhCN1x1NzhCOFx1NzhCQVx1NzhCQlx1NzhCQ1x1NzhCRFx1NzhCRlx1NzhDMFx1NzhDMlx1NzhDM1x1NzhDNFx1NzhDNlx1NzhDN1x1NzhDOFx1NzhDQ1x1NzhDRFx1NzhDRVx1NzhDRlx1NzhEMVx1NzhEMlx1NzhEM1x1NzhENlx1NzhEN1x1NzhEOFx1NzhEQVwiLDldLFxuW1wiYjQ4MFwiLFwiXHU3OEU0XHU3OEU1XHU3OEU2XHU3OEU3XHU3OEU5XHU3OEVBXHU3OEVCXHU3OEVEXCIsNCxcIlx1NzhGM1x1NzhGNVx1NzhGNlx1NzhGOFx1NzhGOVx1NzhGQlwiLDUsXCJcdTc5MDJcdTc5MDNcdTc5MDRcdTc5MDZcIiw2LFwiXHU3ODQwXHU1MEE4XHU3N0Q3XHU2NDEwXHU4OUU2XHU1OTA0XHU2M0UzXHU1REREXHU3QTdGXHU2OTNEXHU0RjIwXHU4MjM5XHU1NTk4XHU0RTMyXHU3NUFFXHU3QTk3XHU1RTYyXHU1RThBXHU5NUVGXHU1MjFCXHU1NDM5XHU3MDhBXHU2Mzc2XHU5NTI0XHU1NzgyXHU2NjI1XHU2OTNGXHU5MTg3XHU1NTA3XHU2REYzXHU3RUFGXHU4ODIyXHU2MjMzXHU3RUYwXHU3NUI1XHU4MzI4XHU3OEMxXHU5NkNDXHU4RjlFXHU2MTQ4XHU3NEY3XHU4QkNEXHU2QjY0XHU1MjNBXHU4RDUwXHU2QjIxXHU4MDZBXHU4NDcxXHU1NkYxXHU1MzA2XHU0RUNFXHU0RTFCXHU1MUQxXHU3Qzk3XHU5MThCXHU3QzA3XHU0RkMzXHU4RTdGXHU3QkUxXHU3QTlDXHU2NDY3XHU1RDE0XHU1MEFDXHU4MTA2XHU3NjAxXHU3Q0I5XHU2REVDXHU3RkUwXHU2NzUxXHU1QjU4XHU1QkY4XHU3OENCXHU2NEFFXHU2NDEzXHU2M0FBXHU2MzJCXHU5NTE5XHU2NDJEXHU4RkJFXHU3QjU0XHU3NjI5XHU2MjUzXHU1OTI3XHU1NDQ2XHU2Qjc5XHU1MEEzXHU2MjM0XHU1RTI2XHU2Qjg2XHU0RUUzXHU4RDM3XHU4ODhCXHU1Rjg1XHU5MDJFXCJdLFxuW1wiYjU0MFwiLFwiXHU3OTBEXCIsNSxcIlx1NzkxNFwiLDksXCJcdTc5MUZcIiw0LFwiXHU3OTI1XCIsMTQsXCJcdTc5MzVcIiw0LFwiXHU3OTNEXHU3OTNGXHU3OTQyXHU3OTQzXHU3OTQ0XHU3OTQ1XHU3OTQ3XHU3OTRBXCIsOCxcIlx1Nzk1NFx1Nzk1NVx1Nzk1OFx1Nzk1OVx1Nzk2MVx1Nzk2M1wiXSxcbltcImI1ODBcIixcIlx1Nzk2NFx1Nzk2Nlx1Nzk2OVx1Nzk2QVx1Nzk2Qlx1Nzk2Q1x1Nzk2RVx1Nzk3MFwiLDYsXCJcdTc5NzlcdTc5N0JcIiw0LFwiXHU3OTgyXHU3OTgzXHU3OTg2XHU3OTg3XHU3OTg4XHU3OTg5XHU3OThCXHU3OThDXHU3OThEXHU3OThFXHU3OTkwXHU3OTkxXHU3OTkyXHU2MDIwXHU4MDNEXHU2MkM1XHU0RTM5XHU1MzU1XHU5MEY4XHU2M0I4XHU4MEM2XHU2NUU2XHU2QzJFXHU0RjQ2XHU2MEVFXHU2REUxXHU4QkRFXHU1RjM5XHU4NkNCXHU1RjUzXHU2MzIxXHU1MTVBXHU4MzYxXHU2ODYzXHU1MjAwXHU2MzYzXHU4RTQ4XHU1MDEyXHU1QzlCXHU3OTc3XHU1QkZDXHU1MjMwXHU3QTNCXHU2MEJDXHU5MDUzXHU3NkQ3XHU1RkI3XHU1Rjk3XHU3Njg0XHU4RTZDXHU3MDZGXHU3NjdCXHU3QjQ5XHU3N0FBXHU1MUYzXHU5MDkzXHU1ODI0XHU0RjRFXHU2RUY0XHU4RkVBXHU2NTRDXHU3QjFCXHU3MkM0XHU2REE0XHU3RkRGXHU1QUUxXHU2MkI1XHU1RTk1XHU1NzMwXHU4NDgyXHU3QjJDXHU1RTFEXHU1RjFGXHU5MDEyXHU3RjE0XHU5OEEwXHU2MzgyXHU2RUM3XHU3ODk4XHU3MEI5XHU1MTc4XHU5NzVCXHU1N0FCXHU3NTM1XHU0RjQzXHU3NTM4XHU1RTk3XHU2MEU2XHU1OTYwXHU2REMwXHU2QkJGXHU3ODg5XHU1M0ZDXHU5NkQ1XHU1MUNCXHU1MjAxXHU2Mzg5XHU1NDBBXHU5NDkzXHU4QzAzXHU4RENDXHU3MjM5XHU3ODlGXHU4Nzc2XHU4RkVEXHU4QzBEXHU1M0UwXCJdLFxuW1wiYjY0MFwiLFwiXHU3OTkzXCIsNixcIlx1Nzk5QlwiLDExLFwiXHU3OUE4XCIsMTAsXCJcdTc5QjRcIiw0LFwiXHU3OUJDXHU3OUJGXHU3OUMyXHU3OUM0XHU3OUM1XHU3OUM3XHU3OUM4XHU3OUNBXHU3OUNDXHU3OUNFXHU3OUNGXHU3OUQwXHU3OUQzXHU3OUQ0XHU3OUQ2XHU3OUQ3XHU3OUQ5XCIsNSxcIlx1NzlFMFx1NzlFMVx1NzlFMlx1NzlFNVx1NzlFOFx1NzlFQVwiXSxcbltcImI2ODBcIixcIlx1NzlFQ1x1NzlFRVx1NzlGMVwiLDYsXCJcdTc5RjlcdTc5RkFcdTc5RkNcdTc5RkVcdTc5RkZcdTdBMDFcdTdBMDRcdTdBMDVcdTdBMDdcdTdBMDhcdTdBMDlcdTdBMEFcdTdBMENcdTdBMEZcIiw0LFwiXHU3QTE1XHU3QTE2XHU3QTE4XHU3QTE5XHU3QTFCXHU3QTFDXHU0RTAxXHU3NkVGXHU1M0VFXHU5NDg5XHU5ODc2XHU5RjBFXHU5NTJEXHU1QjlBXHU4QkEyXHU0RTIyXHU0RTFDXHU1MUFDXHU4NDYzXHU2MUMyXHU1MkE4XHU2ODBCXHU0Rjk3XHU2MDZCXHU1MUJCXHU2RDFFXHU1MTVDXHU2Mjk2XHU2NTk3XHU5NjYxXHU4QzQ2XHU5MDE3XHU3NUQ4XHU5MEZEXHU3NzYzXHU2QkQyXHU3MjhBXHU3MkVDXHU4QkZCXHU1ODM1XHU3Nzc5XHU4RDRDXHU2NzVDXHU5NTQwXHU4MDlBXHU1RUE2XHU2RTIxXHU1OTkyXHU3QUVGXHU3N0VEXHU5NTNCXHU2QkI1XHU2NUFEXHU3RjBFXHU1ODA2XHU1MTUxXHU5NjFGXHU1QkY5XHU1OEE5XHU1NDI4XHU4RTcyXHU2NTY2XHU5ODdGXHU1NkU0XHU5NDlEXHU3NkZFXHU5MDQxXHU2Mzg3XHU1NEM2XHU1OTFBXHU1OTNBXHU1NzlCXHU4RUIyXHU2NzM1XHU4REZBXHU4MjM1XHU1MjQxXHU2MEYwXHU1ODE1XHU4NkZFXHU1Q0U4XHU5RTQ1XHU0RkM0XHU5ODlEXHU4QkI5XHU1QTI1XHU2MDc2XHU1Mzg0XHU2MjdDXHU5MDRGXHU5MTAyXHU5OTdGXHU2MDY5XHU4MDBDXHU1MTNGXHU4MDMzXHU1QzE0XHU5OTc1XHU2RDMxXHU0RThDXCJdLFxuW1wiYjc0MFwiLFwiXHU3QTFEXHU3QTFGXHU3QTIxXHU3QTIyXHU3QTI0XCIsMTQsXCJcdTdBMzRcdTdBMzVcdTdBMzZcdTdBMzhcdTdBM0FcdTdBM0VcdTdBNDBcIiw1LFwiXHU3QTQ3XCIsOSxcIlx1N0E1MlwiLDQsXCJcdTdBNThcIiwxNl0sXG5bXCJiNzgwXCIsXCJcdTdBNjlcIiw2LFwiXHU3QTcxXHU3QTcyXHU3QTczXHU3QTc1XHU3QTdCXHU3QTdDXHU3QTdEXHU3QTdFXHU3QTgyXHU3QTg1XHU3QTg3XHU3QTg5XHU3QThBXHU3QThCXHU3QThDXHU3QThFXHU3QThGXHU3QTkwXHU3QTkzXHU3QTk0XHU3QTk5XHU3QTlBXHU3QTlCXHU3QTlFXHU3QUExXHU3QUEyXHU4RDMwXHU1M0QxXHU3RjVBXHU3QjRGXHU0RjEwXHU0RTRGXHU5NjAwXHU2Q0Q1XHU3M0QwXHU4NUU5XHU1RTA2XHU3NTZBXHU3RkZCXHU2QTBBXHU3N0ZFXHU5NDkyXHU3RTQxXHU1MUUxXHU3MEU2XHU1M0NEXHU4RkQ0XHU4MzAzXHU4RDI5XHU3MkFGXHU5OTZEXHU2Q0RCXHU1NzRBXHU4MkIzXHU2NUI5XHU4MEFBXHU2MjNGXHU5NjMyXHU1OUE4XHU0RUZGXHU4QkJGXHU3RUJBXHU2NTNFXHU4M0YyXHU5NzVFXHU1NTYxXHU5OERFXHU4MEE1XHU1MzJBXHU4QkZEXHU1NDIwXHU4MEJBXHU1RTlGXHU2Q0I4XHU4RDM5XHU4MkFDXHU5MTVBXHU1NDI5XHU2QzFCXHU1MjA2XHU3RUI3XHU1NzVGXHU3MTFBXHU2QzdFXHU3Qzg5XHU1OTRCXHU0RUZEXHU1RkZGXHU2MTI0XHU3Q0FBXHU0RTMwXHU1QzAxXHU2N0FCXHU4NzAyXHU1Q0YwXHU5NTBCXHU5OENFXHU3NUFGXHU3MEZEXHU5MDIyXHU1MUFGXHU3RjFEXHU4QkJEXHU1OTQ5XHU1MUU0XHU0RjVCXHU1NDI2XHU1OTJCXHU2NTc3XHU4MEE0XHU1Qjc1XHU2Mjc2XHU2MkMyXHU4RjkwXHU1RTQ1XHU2QzFGXHU3QjI2XHU0RjBGXHU0RkQ4XHU2NzBEXCJdLFxuW1wiYjg0MFwiLFwiXHU3QUEzXHU3QUE0XHU3QUE3XHU3QUE5XHU3QUFBXHU3QUFCXHU3QUFFXCIsNCxcIlx1N0FCNFwiLDEwLFwiXHU3QUMwXCIsMTAsXCJcdTdBQ0NcIiw5LFwiXHU3QUQ3XHU3QUQ4XHU3QURBXHU3QURCXHU3QURDXHU3QUREXHU3QUUxXHU3QUUyXHU3QUU0XHU3QUU3XCIsNSxcIlx1N0FFRVx1N0FGMFx1N0FGMVx1N0FGMlx1N0FGM1wiXSxcbltcImI4ODBcIixcIlx1N0FGNFwiLDQsXCJcdTdBRkJcdTdBRkNcdTdBRkVcdTdCMDBcdTdCMDFcdTdCMDJcdTdCMDVcdTdCMDdcdTdCMDlcdTdCMENcdTdCMERcdTdCMEVcdTdCMTBcdTdCMTJcdTdCMTNcdTdCMTZcdTdCMTdcdTdCMThcdTdCMUFcdTdCMUNcdTdCMURcdTdCMUZcdTdCMjFcdTdCMjJcdTdCMjNcdTdCMjdcdTdCMjlcdTdCMkRcdTZENkVcdTZEQUFcdTc5OEZcdTg4QjFcdTVGMTdcdTc1MkJcdTYyOUFcdThGODVcdTRGRUZcdTkxRENcdTY1QTdcdTgxMkZcdTgxNTFcdTVFOUNcdTgxNTBcdThENzRcdTUyNkZcdTg5ODZcdThENEJcdTU5MERcdTUwODVcdTRFRDhcdTk2MUNcdTcyMzZcdTgxNzlcdThEMUZcdTVCQ0NcdThCQTNcdTk2NDRcdTU5ODdcdTdGMUFcdTU0OTBcdTU2NzZcdTU2MEVcdThCRTVcdTY1MzlcdTY5ODJcdTk0OTlcdTc2RDZcdTZFODlcdTVFNzJcdTc1MThcdTY3NDZcdTY3RDFcdTdBRkZcdTgwOURcdThENzZcdTYxMUZcdTc5QzZcdTY1NjJcdThENjNcdTUxODhcdTUyMUFcdTk0QTJcdTdGMzhcdTgwOUJcdTdFQjJcdTVDOTdcdTZFMkZcdTY3NjBcdTdCRDlcdTc2OEJcdTlBRDhcdTgxOEZcdTdGOTRcdTdDRDVcdTY0MUVcdTk1NTBcdTdBM0ZcdTU0NEFcdTU0RTVcdTZCNENcdTY0MDFcdTYyMDhcdTlFM0RcdTgwRjNcdTc1OTlcdTUyNzJcdTk3NjlcdTg0NUJcdTY4M0NcdTg2RTRcdTk2MDFcdTk2OTRcdTk0RUNcdTRFMkFcdTU0MDRcdTdFRDlcdTY4MzlcdThEREZcdTgwMTVcdTY2RjRcdTVFOUFcdTdGQjlcIl0sXG5bXCJiOTQwXCIsXCJcdTdCMkZcdTdCMzBcdTdCMzJcdTdCMzRcdTdCMzVcdTdCMzZcdTdCMzdcdTdCMzlcdTdCM0JcdTdCM0RcdTdCM0ZcIiw1LFwiXHU3QjQ2XHU3QjQ4XHU3QjRBXHU3QjREXHU3QjRFXHU3QjUzXHU3QjU1XHU3QjU3XHU3QjU5XHU3QjVDXHU3QjVFXHU3QjVGXHU3QjYxXHU3QjYzXCIsMTAsXCJcdTdCNkZcdTdCNzBcdTdCNzNcdTdCNzRcdTdCNzZcdTdCNzhcdTdCN0FcdTdCN0NcdTdCN0RcdTdCN0ZcdTdCODFcdTdCODJcdTdCODNcdTdCODRcdTdCODZcIiw2LFwiXHU3QjhFXHU3QjhGXCJdLFxuW1wiYjk4MFwiLFwiXHU3QjkxXHU3QjkyXHU3QjkzXHU3Qjk2XHU3Qjk4XHU3Qjk5XHU3QjlBXHU3QjlCXHU3QjlFXHU3QjlGXHU3QkEwXHU3QkEzXHU3QkE0XHU3QkE1XHU3QkFFXHU3QkFGXHU3QkIwXHU3QkIyXHU3QkIzXHU3QkI1XHU3QkI2XHU3QkI3XHU3QkI5XCIsNyxcIlx1N0JDMlx1N0JDM1x1N0JDNFx1NTdDMlx1ODAzRlx1Njg5N1x1NURFNVx1NjUzQlx1NTI5Rlx1NjA2RFx1OUY5QVx1NEY5Qlx1OEVBQ1x1NTE2Q1x1NUJBQlx1NUYxM1x1NURFOVx1NkM1RVx1NjJGMVx1OEQyMVx1NTE3MVx1OTRBOVx1NTJGRVx1NkM5Rlx1ODJERlx1NzJEN1x1NTdBMlx1Njc4NFx1OEQyRFx1NTkxRlx1OEY5Q1x1ODNDN1x1NTQ5NVx1N0I4RFx1NEYzMFx1NkNCRFx1NUI2NFx1NTlEMVx1OUYxM1x1NTNFNFx1ODZDQVx1OUFBOFx1OEMzN1x1ODBBMVx1NjU0NVx1OTg3RVx1NTZGQVx1OTZDN1x1NTIyRVx1NzREQ1x1NTI1MFx1NUJFMVx1NjMwMlx1ODkwMlx1NEU1Nlx1NjJEMFx1NjAyQVx1NjhGQVx1NTE3M1x1NUI5OFx1NTFBMFx1ODlDMlx1N0JBMVx1OTk4Nlx1N0Y1MFx1NjBFRlx1NzA0Q1x1OEQyRlx1NTE0OVx1NUU3Rlx1OTAxQlx1NzQ3MFx1ODlDNFx1NTcyRFx1Nzg0NVx1NUY1Mlx1OUY5Rlx1OTVGQVx1OEY2OFx1OUIzQ1x1OEJFMVx1NzY3OFx1Njg0Mlx1NjdEQ1x1OERFQVx1OEQzNVx1NTIzRFx1OEY4QVx1NkVEQVx1NjhDRFx1OTUwNVx1OTBFRFx1NTZGRFx1Njc5Q1x1ODhGOVx1OEZDN1x1NTRDOFwiXSxcbltcImJhNDBcIixcIlx1N0JDNVx1N0JDOFx1N0JDOVx1N0JDQVx1N0JDQlx1N0JDRFx1N0JDRVx1N0JDRlx1N0JEMFx1N0JEMlx1N0JENFwiLDQsXCJcdTdCREJcdTdCRENcdTdCREVcdTdCREZcdTdCRTBcdTdCRTJcdTdCRTNcdTdCRTRcdTdCRTdcdTdCRThcdTdCRTlcdTdCRUJcdTdCRUNcdTdCRURcdTdCRUZcdTdCRjBcdTdCRjJcIiw0LFwiXHU3QkY4XHU3QkY5XHU3QkZBXHU3QkZCXHU3QkZEXHU3QkZGXCIsNyxcIlx1N0MwOFx1N0MwOVx1N0MwQVx1N0MwRFx1N0MwRVx1N0MxMFwiLDUsXCJcdTdDMTdcdTdDMThcdTdDMTlcIl0sXG5bXCJiYTgwXCIsXCJcdTdDMUFcIiw0LFwiXHU3QzIwXCIsNSxcIlx1N0MyOFx1N0MyOVx1N0MyQlwiLDEyLFwiXHU3QzM5XCIsNSxcIlx1N0M0Mlx1OUFCOFx1NUI2OVx1NkQ3N1x1NkMyNlx1NEVBNVx1NUJCM1x1OUE4N1x1OTE2M1x1NjFBOFx1OTBBRlx1OTdFOVx1NTQyQlx1NkRCNVx1NUJEMlx1NTFGRFx1NTU4QVx1N0Y1NVx1N0ZGMFx1NjRCQ1x1NjM0RFx1NjVGMVx1NjFCRVx1NjA4RFx1NzEwQVx1NkM1N1x1NkM0OVx1NTkyRlx1Njc2RFx1ODIyQVx1NThENVx1NTY4RVx1OEM2QVx1NkJFQlx1OTBERFx1NTk3RFx1ODAxN1x1NTNGN1x1NkQ2OVx1NTQ3NVx1NTU5RFx1ODM3N1x1ODNDRlx1NjgzOFx1NzlCRVx1NTQ4Q1x1NEY1NVx1NTQwOFx1NzZEMlx1OEM4OVx1OTYwMlx1NkNCM1x1NkRCOFx1OEQ2Qlx1ODkxMFx1OUU2NFx1OEQzQVx1NTYzRlx1OUVEMVx1NzVENVx1NUY4OFx1NzJFMFx1NjA2OFx1NTRGQ1x1NEVBOFx1NkEyQVx1ODg2MVx1NjA1Mlx1OEY3MFx1NTRDNFx1NzBEOFx1ODY3OVx1OUUzRlx1NkQyQVx1NUI4Rlx1NUYxOFx1N0VBMlx1NTU4OVx1NEZBRlx1NzMzNFx1NTQzQ1x1NTM5QVx1NTAxOVx1NTQwRVx1NTQ3Q1x1NEU0RVx1NUZGRFx1NzQ1QVx1NThGNlx1ODQ2Qlx1ODBFMVx1ODc3NFx1NzJEMFx1N0NDQVx1NkU1NlwiXSxcbltcImJiNDBcIixcIlx1N0M0M1wiLDksXCJcdTdDNEVcIiwzNixcIlx1N0M3NVwiLDUsXCJcdTdDN0VcIiw5XSxcbltcImJiODBcIixcIlx1N0M4OFx1N0M4QVwiLDYsXCJcdTdDOTNcdTdDOTRcdTdDOTZcdTdDOTlcdTdDOUFcdTdDOUJcdTdDQTBcdTdDQTFcdTdDQTNcdTdDQTZcdTdDQTdcdTdDQThcdTdDQTlcdTdDQUJcdTdDQUNcdTdDQURcdTdDQUZcdTdDQjBcdTdDQjRcIiw0LFwiXHU3Q0JBXHU3Q0JCXHU1RjI3XHU4NjRFXHU1NTJDXHU2MkE0XHU0RTkyXHU2Q0FBXHU2MjM3XHU4MkIxXHU1NEQ3XHU1MzRFXHU3MzNFXHU2RUQxXHU3NTNCXHU1MjEyXHU1MzE2XHU4QkREXHU2OUQwXHU1RjhBXHU2MDAwXHU2REVFXHU1NzRGXHU2QjIyXHU3M0FGXHU2ODUzXHU4RkQ4XHU3RjEzXHU2MzYyXHU2MEEzXHU1NTI0XHU3NUVBXHU4QzYyXHU3MTE1XHU2REEzXHU1QkE2XHU1RTdCXHU4MzUyXHU2MTRDXHU5RUM0XHU3OEZBXHU4NzU3XHU3QzI3XHU3Njg3XHU1MUYwXHU2MEY2XHU3MTRDXHU2NjQzXHU1RTRDXHU2MDREXHU4QzBFXHU3MDcwXHU2MzI1XHU4Rjg5XHU1RkJEXHU2MDYyXHU4NkQ0XHU1NkRFXHU2QkMxXHU2MDk0XHU2MTY3XHU1MzQ5XHU2MEUwXHU2NjY2XHU4RDNGXHU3OUZEXHU0RjFBXHU3MEU5XHU2QzQ3XHU4QkIzXHU4QkYyXHU3RUQ4XHU4MzY0XHU2NjBGXHU1QTVBXHU5QjQyXHU2RDUxXHU2REY3XHU4QzQxXHU2RDNCXHU0RjE5XHU3MDZCXHU4M0I3XHU2MjE2XHU2MEQxXHU5NzBEXHU4RDI3XHU3OTc4XHU1MUZCXHU1NzNFXHU1N0ZBXHU2NzNBXHU3NTc4XHU3QTNEXHU3OUVGXHU3Qjk1XCJdLFxuW1wiYmM0MFwiLFwiXHU3Q0JGXHU3Q0MwXHU3Q0MyXHU3Q0MzXHU3Q0M0XHU3Q0M2XHU3Q0M5XHU3Q0NCXHU3Q0NFXCIsNixcIlx1N0NEOFx1N0NEQVx1N0NEQlx1N0NERFx1N0NERVx1N0NFMVwiLDYsXCJcdTdDRTlcIiw1LFwiXHU3Q0YwXCIsNyxcIlx1N0NGOVx1N0NGQVx1N0NGQ1wiLDEzLFwiXHU3RDBCXCIsNV0sXG5bXCJiYzgwXCIsXCJcdTdEMTFcIiwxNCxcIlx1N0QyMVx1N0QyM1x1N0QyNFx1N0QyNVx1N0QyNlx1N0QyOFx1N0QyOVx1N0QyQVx1N0QyQ1x1N0QyRFx1N0QyRVx1N0QzMFwiLDYsXCJcdTgwOENcdTk5NjVcdThGRjlcdTZGQzBcdThCQTVcdTlFMjFcdTU5RUNcdTdFRTlcdTdGMDlcdTU0MDlcdTY3ODFcdTY4RDhcdThGOTFcdTdDNERcdTk2QzZcdTUzQ0FcdTYwMjVcdTc1QkVcdTZDNzJcdTUzNzNcdTVBQzlcdTdFQTdcdTYzMjRcdTUxRTBcdTgxMEFcdTVERjFcdTg0REZcdTYyODBcdTUxODBcdTVCNjNcdTRGMEVcdTc5NkRcdTUyNDJcdTYwQjhcdTZENEVcdTVCQzRcdTVCQzJcdThCQTFcdThCQjBcdTY1RTJcdTVGQ0NcdTk2NDVcdTU5OTNcdTdFRTdcdTdFQUFcdTU2MDlcdTY3QjdcdTU5MzlcdTRGNzNcdTVCQjZcdTUyQTBcdTgzNUFcdTk4OEFcdThEM0VcdTc1MzJcdTk0QkVcdTUwNDdcdTdBM0NcdTRFRjdcdTY3QjZcdTlBN0VcdTVBQzFcdTZCN0NcdTc2RDFcdTU3NUFcdTVDMTZcdTdCM0FcdTk1RjRcdTcxNEVcdTUxN0NcdTgwQTlcdTgyNzBcdTU5NzhcdTdGMDRcdTgzMjdcdTY4QzBcdTY3RUNcdTc4QjFcdTc4NzdcdTYyRTNcdTYzNjFcdTdCODBcdTRGRURcdTUyNkFcdTUxQ0ZcdTgzNTBcdTY5REJcdTkyNzRcdThERjVcdThEMzFcdTg5QzFcdTk1MkVcdTdCQURcdTRFRjZcIl0sXG5bXCJiZDQwXCIsXCJcdTdEMzdcIiw1NCxcIlx1N0Q2RlwiLDddLFxuW1wiYmQ4MFwiLFwiXHU3RDc4XCIsMzIsXCJcdTUwNjVcdTgyMzBcdTUyNTFcdTk5NkZcdTZFMTBcdTZFODVcdTZEQTdcdTVFRkFcdTUwRjVcdTU5RENcdTVDMDZcdTZENDZcdTZDNUZcdTc1ODZcdTg0OEJcdTY4NjhcdTU5NTZcdThCQjJcdTUzMjBcdTkxNzFcdTk2NERcdTg1NDlcdTY5MTJcdTc5MDFcdTcxMjZcdTgwRjZcdTRFQTRcdTkwQ0FcdTZENDdcdTlBODRcdTVBMDdcdTU2QkNcdTY0MDVcdTk0RjBcdTc3RUJcdTRGQTVcdTgxMUFcdTcyRTFcdTg5RDJcdTk5N0FcdTdGMzRcdTdFREVcdTUyN0ZcdTY1NTlcdTkxNzVcdThGN0ZcdThGODNcdTUzRUJcdTdBOTZcdTYzRURcdTYzQTVcdTc2ODZcdTc5RjhcdTg4NTdcdTk2MzZcdTYyMkFcdTUyQUJcdTgyODJcdTY4NTRcdTY3NzBcdTYzNzdcdTc3NkJcdTdBRURcdTZEMDFcdTdFRDNcdTg5RTNcdTU5RDBcdTYyMTJcdTg1QzlcdTgyQTVcdTc1NENcdTUwMUZcdTRFQ0JcdTc1QTVcdThCRUJcdTVDNEFcdTVERkVcdTdCNEJcdTY1QTRcdTkxRDFcdTRFQ0FcdTZEMjVcdTg5NUZcdTdEMjdcdTk1MjZcdTRFQzVcdThDMjhcdThGREJcdTk3NzNcdTY2NEJcdTc5ODFcdThGRDFcdTcwRUNcdTZENzhcIl0sXG5bXCJiZTQwXCIsXCJcdTdEOTlcIiwxMixcIlx1N0RBN1wiLDYsXCJcdTdEQUZcIiw0Ml0sXG5bXCJiZTgwXCIsXCJcdTdEREFcIiwzMixcIlx1NUMzRFx1NTJCMlx1ODM0Nlx1NTE2Mlx1ODMwRVx1Nzc1Qlx1NjY3Nlx1OUNCOFx1NEVBQ1x1NjBDQVx1N0NCRVx1N0NCM1x1N0VDRlx1NEU5NVx1OEI2Nlx1NjY2Rlx1OTg4OFx1OTc1OVx1NTg4M1x1NjU2Q1x1OTU1Q1x1NUY4NFx1NzVDOVx1OTc1Nlx1N0FERlx1N0FERVx1NTFDMFx1NzBBRlx1N0E5OFx1NjNFQVx1N0E3Nlx1N0VBMFx1NzM5Nlx1OTdFRFx1NEU0NVx1NzA3OFx1NEU1RFx1OTE1Mlx1NTNBOVx1NjU1MVx1NjVFN1x1ODFGQ1x1ODIwNVx1NTQ4RVx1NUMzMVx1NzU5QVx1OTdBMFx1NjJEOFx1NzJEOVx1NzVCRFx1NUM0NVx1OUE3OVx1ODNDQVx1NUM0MFx1NTQ4MFx1NzdFOVx1NEUzRVx1NkNBRVx1ODA1QVx1NjJEMlx1NjM2RVx1NURFOFx1NTE3N1x1OERERFx1OEUxRVx1OTUyRlx1NEZGMVx1NTNFNVx1NjBFN1x1NzBBQ1x1NTI2N1x1NjM1MFx1OUU0M1x1NUExRlx1NTAyNlx1NzczN1x1NTM3N1x1N0VFMlx1NjQ4NVx1NjUyQlx1NjI4OVx1NjM5OFx1NTAxNFx1NzIzNVx1ODlDOVx1NTFCM1x1OEJDMFx1N0VERFx1NTc0N1x1ODNDQ1x1OTRBN1x1NTE5Qlx1NTQxQlx1NUNGQlwiXSxcbltcImJmNDBcIixcIlx1N0RGQlwiLDYyXSxcbltcImJmODBcIixcIlx1N0UzQVx1N0UzQ1wiLDQsXCJcdTdFNDJcIiw0LFwiXHU3RTQ4XCIsMjEsXCJcdTRGQ0FcdTdBRTNcdTZENUFcdTkwRTFcdTlBOEZcdTU1ODBcdTU0OTZcdTUzNjFcdTU0QUZcdTVGMDBcdTYzRTlcdTY5NzdcdTUxRUZcdTYxNjhcdTUyMEFcdTU4MkFcdTUyRDhcdTU3NEVcdTc4MERcdTc3MEJcdTVFQjdcdTYxNzdcdTdDRTBcdTYyNUJcdTYyOTdcdTRFQTJcdTcwOTVcdTgwMDNcdTYyRjdcdTcwRTRcdTk3NjBcdTU3NzdcdTgyREJcdTY3RUZcdTY4RjVcdTc4RDVcdTk4OTdcdTc5RDFcdTU4RjNcdTU0QjNcdTUzRUZcdTZFMzRcdTUxNEJcdTUyM0JcdTVCQTJcdThCRkVcdTgwQUZcdTU1NDNcdTU3QTZcdTYwNzNcdTU3NTFcdTU0MkRcdTdBN0FcdTYwNTBcdTVCNTRcdTYzQTdcdTYyQTBcdTUzRTNcdTYyNjNcdTVCQzdcdTY3QUZcdTU0RURcdTdBOUZcdTgyRTZcdTkxNzdcdTVFOTNcdTg4RTRcdTU5MzhcdTU3QUVcdTYzMEVcdThERThcdTgwRUZcdTU3NTdcdTdCNzdcdTRGQTlcdTVGRUJcdTVCQkRcdTZCM0VcdTUzMjFcdTdCNTBcdTcyQzJcdTY4NDZcdTc3RkZcdTc3MzZcdTY1RjdcdTUxQjVcdTRFOEZcdTc2RDRcdTVDQkZcdTdBQTVcdTg0NzVcdTU5NEVcdTlCNDFcdTUwODBcIl0sXG5bXCJjMDQwXCIsXCJcdTdFNUVcIiwzNSxcIlx1N0U4M1wiLDIzLFwiXHU3RTlDXHU3RTlEXHU3RTlFXCJdLFxuW1wiYzA4MFwiLFwiXHU3RUFFXHU3RUI0XHU3RUJCXHU3RUJDXHU3RUQ2XHU3RUU0XHU3RUVDXHU3RUY5XHU3RjBBXHU3RjEwXHU3RjFFXHU3RjM3XHU3RjM5XHU3RjNCXCIsNixcIlx1N0Y0M1x1N0Y0NlwiLDksXCJcdTdGNTJcdTdGNTNcdTk5ODhcdTYxMjdcdTZFODNcdTU3NjRcdTY2MDZcdTYzNDZcdTU2RjBcdTYyRUNcdTYyNjlcdTVFRDNcdTk2MTRcdTU3ODNcdTYyQzlcdTU1ODdcdTg3MjFcdTgxNEFcdThGQTNcdTU1NjZcdTgzQjFcdTY3NjVcdThENTZcdTg0RERcdTVBNkFcdTY4MEZcdTYyRTZcdTdCRUVcdTk2MTFcdTUxNzBcdTZGOUNcdThDMzBcdTYzRkRcdTg5QzhcdTYxRDJcdTdGMDZcdTcwQzJcdTZFRTVcdTc0MDVcdTY5OTRcdTcyRkNcdTVFQ0FcdTkwQ0VcdTY3MTdcdTZENkFcdTYzNUVcdTUyQjNcdTcyNjJcdTgwMDFcdTRGNkNcdTU5RTVcdTkxNkFcdTcwRDlcdTZEOURcdTUyRDJcdTRFNTBcdTk2RjdcdTk1NkRcdTg1N0VcdTc4Q0FcdTdEMkZcdTUxMjFcdTU3OTJcdTY0QzJcdTgwOEJcdTdDN0JcdTZDRUFcdTY4RjFcdTY5NUVcdTUxQjdcdTUzOThcdTY4QThcdTcyODFcdTlFQ0VcdTdCRjFcdTcyRjhcdTc5QkJcdTZGMTNcdTc0MDZcdTY3NEVcdTkxQ0NcdTlDQTRcdTc5M0NcdTgzODlcdTgzNTRcdTU0MEZcdTY4MTdcdTRFM0RcdTUzODlcdTUyQjFcdTc4M0VcdTUzODZcdTUyMjlcdTUwODhcdTRGOEJcdTRGRDBcIl0sXG5bXCJjMTQwXCIsXCJcdTdGNTZcdTdGNTlcdTdGNUJcdTdGNUNcdTdGNURcdTdGNUVcdTdGNjBcdTdGNjNcIiw0LFwiXHU3RjZCXHU3RjZDXHU3RjZEXHU3RjZGXHU3RjcwXHU3RjczXHU3Rjc1XHU3Rjc2XHU3Rjc3XHU3Rjc4XHU3RjdBXHU3RjdCXHU3RjdDXHU3RjdEXHU3RjdGXHU3RjgwXHU3RjgyXCIsNyxcIlx1N0Y4Qlx1N0Y4RFx1N0Y4RlwiLDQsXCJcdTdGOTVcIiw0LFwiXHU3RjlCXHU3RjlDXHU3RkEwXHU3RkEyXHU3RkEzXHU3RkE1XHU3RkE2XHU3RkE4XCIsNixcIlx1N0ZCMVwiXSxcbltcImMxODBcIixcIlx1N0ZCM1wiLDQsXCJcdTdGQkFcdTdGQkJcdTdGQkVcdTdGQzBcdTdGQzJcdTdGQzNcdTdGQzRcdTdGQzZcdTdGQzdcdTdGQzhcdTdGQzlcdTdGQ0JcdTdGQ0RcdTdGQ0ZcIiw0LFwiXHU3RkQ2XHU3RkQ3XHU3RkQ5XCIsNSxcIlx1N0ZFMlx1N0ZFM1x1NzVFMlx1N0FDQlx1N0M5Mlx1NkNBNVx1OTZCNlx1NTI5Qlx1NzQ4M1x1NTRFOVx1NEZFOVx1ODA1NFx1ODNCMlx1OEZERVx1OTU3MFx1NUVDOVx1NjAxQ1x1NkQ5Rlx1NUUxOFx1NjU1Qlx1ODEzOFx1OTRGRVx1NjA0Qlx1NzBCQ1x1N0VDM1x1N0NBRVx1NTFDOVx1Njg4MVx1N0NCMVx1ODI2Rlx1NEUyNFx1OEY4Nlx1OTFDRlx1NjY3RVx1NEVBRVx1OEMwNVx1NjRBOVx1ODA0QVx1NTBEQVx1NzU5N1x1NzFDRVx1NUJFNVx1OEZCRFx1NkY2Nlx1NEU4Nlx1NjQ4Mlx1OTU2M1x1NUVENlx1NjU5OVx1NTIxN1x1ODhDMlx1NzBDOFx1NTJBM1x1NzMwRVx1NzQzM1x1Njc5N1x1NzhGN1x1OTcxNlx1NEUzNFx1OTBCQlx1OUNERVx1NkRDQlx1NTFEQlx1OEQ0MVx1NTQxRFx1NjJDRVx1NzNCMlx1ODNGMVx1OTZGNlx1OUY4NFx1OTRDM1x1NEYzNlx1N0Y5QVx1NTFDQ1x1NzA3NVx1OTY3NVx1NUNBRFx1OTg4Nlx1NTNFNlx1NEVFNFx1NkU5Q1x1NzQwOVx1NjlCNFx1Nzg2Qlx1OTk4Rlx1NzU1OVx1NTIxOFx1NzYyNFx1NkQ0MVx1NjdGM1x1NTE2RFx1OUY5OVx1ODA0Qlx1NTQ5OVx1N0IzQ1x1N0FCRlwiXSxcbltcImMyNDBcIixcIlx1N0ZFNFx1N0ZFN1x1N0ZFOFx1N0ZFQVx1N0ZFQlx1N0ZFQ1x1N0ZFRFx1N0ZFRlx1N0ZGMlx1N0ZGNFwiLDYsXCJcdTdGRkRcdTdGRkVcdTdGRkZcdTgwMDJcdTgwMDdcdTgwMDhcdTgwMDlcdTgwMEFcdTgwMEVcdTgwMEZcdTgwMTFcdTgwMTNcdTgwMUFcdTgwMUJcdTgwMURcdTgwMUVcdTgwMUZcdTgwMjFcdTgwMjNcdTgwMjRcdTgwMkJcIiw1LFwiXHU4MDMyXHU4MDM0XHU4MDM5XHU4MDNBXHU4MDNDXHU4MDNFXHU4MDQwXHU4MDQxXHU4MDQ0XHU4MDQ1XHU4MDQ3XHU4MDQ4XHU4MDQ5XHU4MDRFXHU4MDRGXHU4MDUwXHU4MDUxXHU4MDUzXHU4MDU1XHU4MDU2XHU4MDU3XCJdLFxuW1wiYzI4MFwiLFwiXHU4MDU5XHU4MDVCXCIsMTMsXCJcdTgwNkJcIiw1LFwiXHU4MDcyXCIsMTEsXCJcdTk2ODZcdTU3ODRcdTYyRTJcdTk2NDdcdTY5N0NcdTVBMDRcdTY0MDJcdTdCRDNcdTZGMEZcdTk2NEJcdTgyQTZcdTUzNjJcdTk4ODVcdTVFOTBcdTcwODlcdTYzQjNcdTUzNjRcdTg2NEZcdTlDODFcdTlFOTNcdTc4OENcdTk3MzJcdThERUZcdThENDJcdTlFN0ZcdTZGNUVcdTc5ODRcdTVGNTVcdTk2NDZcdTYyMkVcdTlBNzRcdTU0MTVcdTk0RERcdTRGQTNcdTY1QzVcdTVDNjVcdTVDNjFcdTdGMTVcdTg2NTFcdTZDMkZcdTVGOEJcdTczODdcdTZFRTRcdTdFRkZcdTVDRTZcdTYzMUJcdTVCNkFcdTZFRTZcdTUzNzVcdTRFNzFcdTYzQTBcdTc1NjVcdTYyQTFcdThGNkVcdTRGMjZcdTRFRDFcdTZDQTZcdTdFQjZcdThCQkFcdTg0MURcdTg3QkFcdTdGNTdcdTkwM0JcdTk1MjNcdTdCQTlcdTlBQTFcdTg4RjhcdTg0M0RcdTZEMUJcdTlBODZcdTdFRENcdTU5ODhcdTlFQkJcdTczOUJcdTc4MDFcdTg2ODJcdTlBNkNcdTlBODJcdTU2MUJcdTU0MTdcdTU3Q0JcdTRFNzBcdTlFQTZcdTUzNTZcdThGQzhcdTgxMDlcdTc3OTJcdTk5OTJcdTg2RUVcdTZFRTFcdTg1MTNcdTY2RkNcdTYxNjJcdTZGMkJcIl0sXG5bXCJjMzQwXCIsXCJcdTgwN0VcdTgwODFcdTgwODJcdTgwODVcdTgwODhcdTgwOEFcdTgwOERcIiw1LFwiXHU4MDk0XHU4MDk1XHU4MDk3XHU4MDk5XHU4MDlFXHU4MEEzXHU4MEE2XHU4MEE3XHU4MEE4XHU4MEFDXHU4MEIwXHU4MEIzXHU4MEI1XHU4MEI2XHU4MEI4XHU4MEI5XHU4MEJCXHU4MEM1XHU4MEM3XCIsNCxcIlx1ODBDRlwiLDYsXCJcdTgwRDhcdTgwREZcdTgwRTBcdTgwRTJcdTgwRTNcdTgwRTZcdTgwRUVcdTgwRjVcdTgwRjdcdTgwRjlcdTgwRkJcdTgwRkVcdTgwRkZcdTgxMDBcdTgxMDFcdTgxMDNcdTgxMDRcdTgxMDVcdTgxMDdcdTgxMDhcdTgxMEJcIl0sXG5bXCJjMzgwXCIsXCJcdTgxMENcdTgxMTVcdTgxMTdcdTgxMTlcdTgxMUJcdTgxMUNcdTgxMURcdTgxMUZcIiwxMixcIlx1ODEyRFx1ODEyRVx1ODEzMFx1ODEzM1x1ODEzNFx1ODEzNVx1ODEzN1x1ODEzOVwiLDQsXCJcdTgxM0ZcdThDMjlcdTgyOTJcdTgzMkJcdTc2RjJcdTZDMTNcdTVGRDlcdTgzQkRcdTczMkJcdTgzMDVcdTk1MUFcdTZCREJcdTc3REJcdTk0QzZcdTUzNkZcdTgzMDJcdTUxOTJcdTVFM0RcdThDOENcdThEMzhcdTRFNDhcdTczQUJcdTY3OUFcdTY4ODVcdTkxNzZcdTk3MDlcdTcxNjRcdTZDQTFcdTc3MDlcdTVBOTJcdTk1NDFcdTZCQ0ZcdTdGOEVcdTY2MjdcdTVCRDBcdTU5QjlcdTVBOUFcdTk1RThcdTk1RjdcdTRFRUNcdTg0MENcdTg0OTlcdTZBQUNcdTc2REZcdTk1MzBcdTczMUJcdTY4QTZcdTVCNUZcdTc3MkZcdTkxOUFcdTk3NjFcdTdDRENcdThGRjdcdThDMUNcdTVGMjVcdTdDNzNcdTc5RDhcdTg5QzVcdTZDQ0NcdTg3MUNcdTVCQzZcdTVFNDJcdTY4QzlcdTc3MjBcdTdFRjVcdTUxOTVcdTUxNERcdTUyQzlcdTVBMjlcdTdGMDVcdTk3NjJcdTgyRDdcdTYzQ0ZcdTc3ODRcdTg1RDBcdTc5RDJcdTZFM0FcdTVFOTlcdTU5OTlcdTg1MTFcdTcwNkRcdTZDMTFcdTYyQkZcdTc2QkZcdTY1NEZcdTYwQUZcdTk1RkRcdTY2MEVcdTg3OUZcdTlFMjNcdTk0RURcdTU0MERcdTU0N0RcdThDMkNcdTY0NzhcIl0sXG5bXCJjNDQwXCIsXCJcdTgxNDBcIiw1LFwiXHU4MTQ3XHU4MTQ5XHU4MTREXHU4MTRFXHU4MTRGXHU4MTUyXHU4MTU2XHU4MTU3XHU4MTU4XHU4MTVCXCIsNCxcIlx1ODE2MVx1ODE2Mlx1ODE2M1x1ODE2NFx1ODE2Nlx1ODE2OFx1ODE2QVx1ODE2Qlx1ODE2Q1x1ODE2Rlx1ODE3Mlx1ODE3M1x1ODE3NVx1ODE3Nlx1ODE3N1x1ODE3OFx1ODE4MVx1ODE4M1wiLDQsXCJcdTgxODlcdTgxOEJcdTgxOENcdTgxOERcdTgxOEVcdTgxOTBcdTgxOTJcIiw1LFwiXHU4MTk5XHU4MTlBXHU4MTlFXCIsNCxcIlx1ODFBNFx1ODFBNVwiXSxcbltcImM0ODBcIixcIlx1ODFBN1x1ODFBOVx1ODFBQlwiLDcsXCJcdTgxQjRcIiw1LFwiXHU4MUJDXHU4MUJEXHU4MUJFXHU4MUJGXHU4MUM0XHU4MUM1XHU4MUM3XHU4MUM4XHU4MUM5XHU4MUNCXHU4MUNEXCIsNixcIlx1NjQ3OVx1ODYxMVx1NkEyMVx1ODE5Q1x1NzhFOFx1NjQ2OVx1OUI1NFx1NjJCOVx1NjcyQlx1ODNBQlx1NThBOFx1OUVEOFx1NkNBQlx1NkYyMFx1NUJERVx1OTY0Q1x1OEMwQlx1NzI1Rlx1NjdEMFx1NjJDN1x1NzI2MVx1NEVBOVx1NTlDNlx1NkJDRFx1NTg5M1x1NjZBRVx1NUU1NVx1NTJERlx1NjE1NVx1NjcyOFx1NzZFRVx1Nzc2Nlx1NzI2N1x1N0E0Nlx1NjJGRlx1NTRFQVx1NTQ1MFx1OTRBMFx1OTBBM1x1NUExQ1x1N0VCM1x1NkMxNlx1NEU0M1x1NTk3Nlx1ODAxMFx1NTk0OFx1NTM1N1x1NzUzN1x1OTZCRVx1NTZDQVx1NjMyMFx1ODExMVx1NjA3Q1x1OTVGOVx1NkRENlx1NTQ2Mlx1OTk4MVx1NTE4NVx1NUFFOVx1ODBGRFx1NTlBRVx1OTcxM1x1NTAyQVx1NkNFNVx1NUMzQ1x1NjJERlx1NEY2MFx1NTMzRlx1ODE3Qlx1OTAwNlx1NkVCQVx1ODUyQlx1NjJDOFx1NUU3NFx1NzhCRVx1NjRCNVx1NjM3Qlx1NUZGNVx1NUExOFx1OTE3Rlx1OUUxRlx1NUMzRlx1NjM0Rlx1ODA0Mlx1NUI3RFx1NTU2RVx1OTU0QVx1OTU0RFx1NkQ4NVx1NjBBOFx1NjdFMFx1NzJERVx1NTFERFx1NUI4MVwiXSxcbltcImM1NDBcIixcIlx1ODFENFwiLDE0LFwiXHU4MUU0XHU4MUU1XHU4MUU2XHU4MUU4XHU4MUU5XHU4MUVCXHU4MUVFXCIsNCxcIlx1ODFGNVwiLDUsXCJcdTgxRkRcdTgxRkZcdTgyMDNcdTgyMDdcIiw0LFwiXHU4MjBFXHU4MjBGXHU4MjExXHU4MjEzXHU4MjE1XCIsNSxcIlx1ODIxRFx1ODIyMFx1ODIyNFx1ODIyNVx1ODIyNlx1ODIyN1x1ODIyOVx1ODIyRVx1ODIzMlx1ODIzQVx1ODIzQ1x1ODIzRFx1ODIzRlwiXSxcbltcImM1ODBcIixcIlx1ODI0MFx1ODI0MVx1ODI0Mlx1ODI0M1x1ODI0NVx1ODI0Nlx1ODI0OFx1ODI0QVx1ODI0Q1x1ODI0RFx1ODI0RVx1ODI1MFwiLDcsXCJcdTgyNTlcdTgyNUJcdTgyNUNcdTgyNURcdTgyNUVcdTgyNjBcIiw3LFwiXHU4MjY5XHU2MkU3XHU2Q0RFXHU3MjVCXHU2MjZEXHU5NEFFXHU3RUJEXHU4MTEzXHU2RDUzXHU1MTlDXHU1RjA0XHU1OTc0XHU1MkFBXHU2MDEyXHU1OTczXHU2Njk2XHU4NjUwXHU3NTlGXHU2MzJBXHU2MUU2XHU3Q0VGXHU4QkZBXHU1NEU2XHU2QjI3XHU5RTI1XHU2QkI0XHU4NUQ1XHU1NDU1XHU1MDc2XHU2Q0E0XHU1NTZBXHU4REI0XHU3MjJDXHU1RTE1XHU2MDE1XHU3NDM2XHU2MkNEXHU2MzkyXHU3MjRDXHU1Rjk4XHU2RTQzXHU2RDNFXHU2NTAwXHU2RjU4XHU3NkQ4XHU3OEQwXHU3NkZDXHU3NTU0XHU1MjI0XHU1M0RCXHU0RTUzXHU1RTlFXHU2NUMxXHU4MDJBXHU4MEQ2XHU2MjlCXHU1NDg2XHU1MjI4XHU3MEFFXHU4ODhEXHU4REQxXHU2Q0UxXHU1NDc4XHU4MERBXHU1N0Y5XHU4OEY0XHU4RDU0XHU5NjZBXHU5MTREXHU0RjY5XHU2QzlCXHU1NUI3XHU3NkM2XHU3ODMwXHU2MkE4XHU3MEY5XHU2RjhFXHU1RjZEXHU4NEVDXHU2OERBXHU3ODdDXHU3QkY3XHU4MUE4XHU2NzBCXHU5RTRGXHU2MzY3XHU3OEIwXHU1NzZGXHU3ODEyXHU5NzM5XHU2Mjc5XHU2MkFCXHU1Mjg4XHU3NDM1XHU2QkQ3XCJdLFxuW1wiYzY0MFwiLFwiXHU4MjZBXHU4MjZCXHU4MjZDXHU4MjZEXHU4MjcxXHU4Mjc1XHU4Mjc2XHU4Mjc3XHU4Mjc4XHU4MjdCXHU4MjdDXHU4MjgwXHU4MjgxXHU4MjgzXHU4Mjg1XHU4Mjg2XHU4Mjg3XHU4Mjg5XHU4MjhDXHU4MjkwXHU4MjkzXHU4Mjk0XHU4Mjk1XHU4Mjk2XHU4MjlBXHU4MjlCXHU4MjlFXHU4MkEwXHU4MkEyXHU4MkEzXHU4MkE3XHU4MkIyXHU4MkI1XHU4MkI2XHU4MkJBXHU4MkJCXHU4MkJDXHU4MkJGXHU4MkMwXHU4MkMyXHU4MkMzXHU4MkM1XHU4MkM2XHU4MkM5XHU4MkQwXHU4MkQ2XHU4MkQ5XHU4MkRBXHU4MkREXHU4MkUyXHU4MkU3XHU4MkU4XHU4MkU5XHU4MkVBXHU4MkVDXHU4MkVEXHU4MkVFXHU4MkYwXHU4MkYyXHU4MkYzXHU4MkY1XHU4MkY2XHU4MkY4XCJdLFxuW1wiYzY4MFwiLFwiXHU4MkZBXHU4MkZDXCIsNCxcIlx1ODMwQVx1ODMwQlx1ODMwRFx1ODMxMFx1ODMxMlx1ODMxM1x1ODMxNlx1ODMxOFx1ODMxOVx1ODMxRFwiLDksXCJcdTgzMjlcdTgzMkFcdTgzMkVcdTgzMzBcdTgzMzJcdTgzMzdcdTgzM0JcdTgzM0RcdTU1NjRcdTgxM0VcdTc1QjJcdTc2QUVcdTUzMzlcdTc1REVcdTUwRkJcdTVDNDFcdThCNkNcdTdCQzdcdTUwNEZcdTcyNDdcdTlBOTdcdTk4RDhcdTZGMDJcdTc0RTJcdTc5NjhcdTY0ODdcdTc3QTVcdTYyRkNcdTk4OTFcdThEMkJcdTU0QzFcdTgwNThcdTRFNTJcdTU3NkFcdTgyRjlcdTg0MERcdTVFNzNcdTUxRURcdTc0RjZcdThCQzRcdTVDNEZcdTU3NjFcdTZDRkNcdTk4ODdcdTVBNDZcdTc4MzRcdTlCNDRcdThGRUJcdTdDOTVcdTUyNTZcdTYyNTFcdTk0RkFcdTRFQzZcdTgzODZcdTg0NjFcdTgzRTlcdTg0QjJcdTU3RDRcdTY3MzRcdTU3MDNcdTY2NkVcdTZENjZcdThDMzFcdTY2RERcdTcwMTFcdTY3MUZcdTZCM0FcdTY4MTZcdTYyMUFcdTU5QkJcdTRFMDNcdTUxQzRcdTZGMDZcdTY3RDJcdTZDOEZcdTUxNzZcdTY4Q0JcdTU5NDdcdTZCNjdcdTc1NjZcdTVEMEVcdTgxMTBcdTlGNTBcdTY1RDdcdTc5NDhcdTc5NDFcdTlBOTFcdThENzdcdTVDODJcdTRFNUVcdTRGMDFcdTU0MkZcdTU5NTFcdTc4MENcdTU2NjhcdTZDMTRcdThGQzRcdTVGMDNcdTZDN0RcdTZDRTNcdThCQUJcdTYzOTBcIl0sXG5bXCJjNzQwXCIsXCJcdTgzM0VcdTgzM0ZcdTgzNDFcdTgzNDJcdTgzNDRcdTgzNDVcdTgzNDhcdTgzNEFcIiw0LFwiXHU4MzUzXHU4MzU1XCIsNCxcIlx1ODM1RFx1ODM2Mlx1ODM3MFwiLDYsXCJcdTgzNzlcdTgzN0FcdTgzN0VcIiw2LFwiXHU4Mzg3XHU4Mzg4XHU4MzhBXHU4MzhCXHU4MzhDXHU4MzhEXHU4MzhGXHU4MzkwXHU4MzkxXHU4Mzk0XHU4Mzk1XHU4Mzk2XHU4Mzk3XHU4Mzk5XHU4MzlBXHU4MzlEXHU4MzlGXHU4M0ExXCIsNixcIlx1ODNBQ1x1ODNBRFx1ODNBRVwiXSxcbltcImM3ODBcIixcIlx1ODNBRlx1ODNCNVx1ODNCQlx1ODNCRVx1ODNCRlx1ODNDMlx1ODNDM1x1ODNDNFx1ODNDNlx1ODNDOFx1ODNDOVx1ODNDQlx1ODNDRFx1ODNDRVx1ODNEMFx1ODNEMVx1ODNEMlx1ODNEM1x1ODNENVx1ODNEN1x1ODNEOVx1ODNEQVx1ODNEQlx1ODNERVx1ODNFMlx1ODNFM1x1ODNFNFx1ODNFNlx1ODNFN1x1ODNFOFx1ODNFQlx1ODNFQ1x1ODNFRFx1NjA3MFx1NkQzRFx1NzI3NVx1NjI2Nlx1OTQ4RVx1OTRDNVx1NTM0M1x1OEZDMVx1N0I3RVx1NEVERlx1OEMyNlx1NEU3RVx1OUVENFx1OTRCMVx1OTRCM1x1NTI0RFx1NkY1Q1x1OTA2M1x1NkQ0NVx1OEMzNFx1NTgxMVx1NUQ0Q1x1NkIyMFx1NkI0OVx1NjdBQVx1NTQ1Qlx1ODE1NFx1N0Y4Q1x1NTg5OVx1ODUzN1x1NUYzQVx1NjJBMlx1NkE0N1x1OTUzOVx1NjU3Mlx1NjA4NFx1Njg2NVx1NzdBN1x1NEU1NFx1NEZBOFx1NURFN1x1OTc5OFx1NjRBQ1x1N0ZEOFx1NUNFRFx1NEZDRlx1N0E4RFx1NTIwN1x1ODMwNFx1NEUxNFx1NjAyRlx1N0E4M1x1OTRBNlx1NEZCNVx1NEVCMlx1NzlFNlx1NzQzNFx1NTJFNFx1ODJCOVx1NjREMlx1NzlCRFx1NUJERFx1NkM4MVx1OTc1Mlx1OEY3Qlx1NkMyMlx1NTAzRVx1NTM3Rlx1NkUwNVx1NjRDRVx1NjY3NFx1NkMzMFx1NjBDNVx1OTg3N1x1OEJGN1x1NUU4Nlx1NzQzQ1x1N0E3N1x1NzlDQlx1NEUxOFx1OTBCMVx1NzQwM1x1NkM0Mlx1NTZEQVx1OTE0Qlx1NkNDNVx1OEQ4Qlx1NTMzQVx1ODZDNlx1NjZGMlx1OEVBRlx1NUM0OFx1OUE3MVx1NkUyMFwiXSxcbltcImM4NDBcIixcIlx1ODNFRVx1ODNFRlx1ODNGM1wiLDQsXCJcdTgzRkFcdTgzRkJcdTgzRkNcdTgzRkVcdTgzRkZcdTg0MDBcdTg0MDJcdTg0MDVcdTg0MDdcdTg0MDhcdTg0MDlcdTg0MEFcdTg0MTBcdTg0MTJcIiw1LFwiXHU4NDE5XHU4NDFBXHU4NDFCXHU4NDFFXCIsNSxcIlx1ODQyOVwiLDcsXCJcdTg0MzJcIiw1LFwiXHU4NDM5XHU4NDNBXHU4NDNCXHU4NDNFXCIsNyxcIlx1ODQ0N1x1ODQ0OFx1ODQ0OVwiXSxcbltcImM4ODBcIixcIlx1ODQ0QVwiLDYsXCJcdTg0NTJcIiw0LFwiXHU4NDU4XHU4NDVEXHU4NDVFXHU4NDVGXHU4NDYwXHU4NDYyXHU4NDY0XCIsNCxcIlx1ODQ2QVx1ODQ2RVx1ODQ2Rlx1ODQ3MFx1ODQ3Mlx1ODQ3NFx1ODQ3N1x1ODQ3OVx1ODQ3Qlx1ODQ3Q1x1NTNENlx1NUEzNlx1OUY4Qlx1OERBM1x1NTNCQlx1NTcwOFx1OThBN1x1Njc0M1x1OTE5Qlx1NkNDOVx1NTE2OFx1NzVDQVx1NjJGM1x1NzJBQ1x1NTIzOFx1NTI5RFx1N0YzQVx1NzA5NFx1NzYzOFx1NTM3NFx1OUU0QVx1NjlCN1x1Nzg2RVx1OTZDMFx1ODhEOVx1N0ZBNFx1NzEzNlx1NzFDM1x1NTE4OVx1NjdEM1x1NzRFNFx1NThFNFx1NjUxOFx1NTZCN1x1OEJBOVx1OTk3Nlx1NjI3MFx1N0VENVx1NjBGOVx1NzBFRFx1NThFQ1x1NEVDMVx1NEVCQVx1NUZDRFx1OTdFN1x1NEVGQlx1OEJBNFx1NTIwM1x1NTk4QVx1N0VBQlx1NjI1NFx1NEVDRFx1NjVFNVx1NjIwRVx1ODMzOFx1ODRDOVx1ODM2M1x1ODc4RFx1NzE5NFx1NkVCNlx1NUJCOVx1N0VEMlx1NTE5N1x1NjNDOVx1NjdENFx1ODA4OVx1ODMzOVx1ODgxNVx1NTExMlx1NUI3QVx1NTk4Mlx1OEZCMVx1NEU3M1x1NkM1RFx1NTE2NVx1ODkyNVx1OEY2Rlx1OTYyRVx1ODU0QVx1NzQ1RVx1OTUxMFx1OTVGMFx1NkRBNlx1ODJFNVx1NUYzMVx1NjQ5Mlx1NkQxMlx1ODQyOFx1ODE2RVx1OUNDM1x1NTg1RVx1OEQ1Qlx1NEUwOVx1NTNDMVwiXSxcbltcImM5NDBcIixcIlx1ODQ3RFwiLDQsXCJcdTg0ODNcdTg0ODRcdTg0ODVcdTg0ODZcdTg0OEFcdTg0OERcdTg0OEZcIiw3LFwiXHU4NDk4XHU4NDlBXHU4NDlCXHU4NDlEXHU4NDlFXHU4NDlGXHU4NEEwXHU4NEEyXCIsMTIsXCJcdTg0QjBcdTg0QjFcdTg0QjNcdTg0QjVcdTg0QjZcdTg0QjdcdTg0QkJcdTg0QkNcdTg0QkVcdTg0QzBcdTg0QzJcdTg0QzNcdTg0QzVcdTg0QzZcdTg0QzdcdTg0QzhcdTg0Q0JcdTg0Q0NcdTg0Q0VcdTg0Q0ZcdTg0RDJcdTg0RDRcdTg0RDVcdTg0RDdcIl0sXG5bXCJjOTgwXCIsXCJcdTg0RDhcIiw0LFwiXHU4NERFXHU4NEUxXHU4NEUyXHU4NEU0XHU4NEU3XCIsNCxcIlx1ODRFRFx1ODRFRVx1ODRFRlx1ODRGMVwiLDEwLFwiXHU4NEZEXHU4NEZFXHU4NTAwXHU4NTAxXHU4NTAyXHU0RjFFXHU2NTYzXHU2ODUxXHU1NUQzXHU0RTI3XHU2NDE0XHU5QTlBXHU2MjZCXHU1QUMyXHU3NDVGXHU4MjcyXHU2REE5XHU2OEVFXHU1MEU3XHU4MzhFXHU3ODAyXHU2NzQwXHU1MjM5XHU2Qzk5XHU3RUIxXHU1MEJCXHU1NTY1XHU3MTVFXHU3QjVCXHU2NjUyXHU3M0NBXHU4MkVCXHU2NzQ5XHU1QzcxXHU1MjIwXHU3MTdEXHU4ODZCXHU5NUVBXHU5NjU1XHU2NEM1XHU4RDYxXHU4MUIzXHU1NTg0XHU2QzU1XHU2MjQ3XHU3RjJFXHU1ODkyXHU0RjI0XHU1NTQ2XHU4RDRGXHU2NjRDXHU0RTBBXHU1QzFBXHU4OEYzXHU2OEEyXHU2MzRFXHU3QTBEXHU3MEU3XHU4MjhEXHU1MkZBXHU5N0Y2XHU1QzExXHU1NEU4XHU5MEI1XHU3RUNEXHU1OTYyXHU4RDRBXHU4NkM3XHU4MjBDXHU4MjBEXHU4RDY2XHU2NDQ0XHU1QzA0XHU2MTUxXHU2RDg5XHU3OTNFXHU4QkJFXHU3ODM3XHU3NTMzXHU1NDdCXHU0RjM4XHU4RUFCXHU2REYxXHU1QTIwXHU3RUM1XHU3OTVFXHU2Qzg4XHU1QkExXHU1QTc2XHU3NTFBXHU4MEJFXHU2MTRFXHU2RTE3XHU1OEYwXHU3NTFGXHU3NTI1XHU3MjcyXHU1MzQ3XHU3RUYzXCJdLFxuW1wiY2E0MFwiLFwiXHU4NTAzXCIsOCxcIlx1ODUwRFx1ODUwRVx1ODUwRlx1ODUxMFx1ODUxMlx1ODUxNFx1ODUxNVx1ODUxNlx1ODUxOFx1ODUxOVx1ODUxQlx1ODUxQ1x1ODUxRFx1ODUxRVx1ODUyMFx1ODUyMlwiLDgsXCJcdTg1MkRcIiw5LFwiXHU4NTNFXCIsNCxcIlx1ODU0NFx1ODU0NVx1ODU0Nlx1ODU0N1x1ODU0QlwiLDEwXSxcbltcImNhODBcIixcIlx1ODU1N1x1ODU1OFx1ODU1QVx1ODU1Qlx1ODU1Q1x1ODU1RFx1ODU1RlwiLDQsXCJcdTg1NjVcdTg1NjZcdTg1NjdcdTg1NjlcIiw4LFwiXHU4NTczXHU4NTc1XHU4NTc2XHU4NTc3XHU4NTc4XHU4NTdDXHU4NTdEXHU4NTdGXHU4NTgwXHU4NTgxXHU3NzAxXHU3NkRCXHU1MjY5XHU4MERDXHU1NzIzXHU1RTA4XHU1OTMxXHU3MkVFXHU2NUJEXHU2RTdGXHU4QkQ3XHU1QzM4XHU4NjcxXHU1MzQxXHU3N0YzXHU2MkZFXHU2NUY2XHU0RUMwXHU5OERGXHU4NjgwXHU1QjlFXHU4QkM2XHU1M0YyXHU3N0UyXHU0RjdGXHU1QzRFXHU5QTc2XHU1OUNCXHU1RjBGXHU3OTNBXHU1OEVCXHU0RTE2XHU2N0ZGXHU0RThCXHU2MkVEXHU4QTkzXHU5MDFEXHU1MkJGXHU2NjJGXHU1NURDXHU1NjZDXHU5MDAyXHU0RUQ1XHU0RjhEXHU5MUNBXHU5OTcwXHU2QzBGXHU1RTAyXHU2MDQzXHU1QkE0XHU4OUM2XHU4QkQ1XHU2NTM2XHU2MjRCXHU5OTk2XHU1Qjg4XHU1QkZGXHU2Mzg4XHU1NTJFXHU1M0Q3XHU3NjI2XHU1MTdEXHU4NTJDXHU2N0EyXHU2OEIzXHU2QjhBXHU2MjkyXHU4RjkzXHU1M0Q0XHU4MjEyXHU2REQxXHU3NThGXHU0RTY2XHU4RDRFXHU1QjcwXHU3MTlGXHU4NUFGXHU2NjkxXHU2NkQ5XHU3RjcyXHU4NzAwXHU5RUNEXHU5RjIwXHU1QzVFXHU2NzJGXHU4RkYwXHU2ODExXHU2NzVGXHU2MjBEXHU3QUQ2XHU1ODg1XHU1RUI2XHU2NTcwXHU2RjMxXCJdLFxuW1wiY2I0MFwiLFwiXHU4NTgyXHU4NTgzXHU4NTg2XHU4NTg4XCIsNixcIlx1ODU5MFwiLDEwLFwiXHU4NTlEXCIsNixcIlx1ODVBNVx1ODVBNlx1ODVBN1x1ODVBOVx1ODVBQlx1ODVBQ1x1ODVBRFx1ODVCMVwiLDUsXCJcdTg1QjhcdTg1QkFcIiw2LFwiXHU4NUMyXCIsNixcIlx1ODVDQVwiLDQsXCJcdTg1RDFcdTg1RDJcIl0sXG5bXCJjYjgwXCIsXCJcdTg1RDRcdTg1RDZcIiw1LFwiXHU4NUREXCIsNixcIlx1ODVFNVx1ODVFNlx1ODVFN1x1ODVFOFx1ODVFQVwiLDE0LFwiXHU2MDU1XHU1MjM3XHU4MDBEXHU2NDU0XHU4ODcwXHU3NTI5XHU1RTA1XHU2ODEzXHU2MkY0XHU5NzFDXHU1M0NDXHU3MjNEXHU4QzAxXHU2QzM0XHU3NzYxXHU3QTBFXHU1NDJFXHU3N0FDXHU5ODdBXHU4MjFDXHU4QkY0XHU3ODU1XHU2NzE0XHU3MEMxXHU2NUFGXHU2NDk1XHU1NjM2XHU2MDFEXHU3OUMxXHU1M0Y4XHU0RTFEXHU2QjdCXHU4MDg2XHU1QkZBXHU1NUUzXHU1NkRCXHU0RjNBXHU0RjNDXHU5OTcyXHU1REYzXHU2NzdFXHU4MDM4XHU2MDAyXHU5ODgyXHU5MDAxXHU1QjhCXHU4QkJDXHU4QkY1XHU2NDFDXHU4MjU4XHU2NERFXHU1NUZEXHU4MkNGXHU5MTY1XHU0RkQ3XHU3RDIwXHU5MDFGXHU3QzlGXHU1MEYzXHU1ODUxXHU2RUFGXHU1QkJGXHU4QkM5XHU4MDgzXHU5MTc4XHU4NDlDXHU3Qjk3XHU4NjdEXHU5NjhCXHU5NjhGXHU3RUU1XHU5QUQzXHU3ODhFXHU1QzgxXHU3QTU3XHU5MDQyXHU5NkE3XHU3OTVGXHU1QjU5XHU2MzVGXHU3QjBCXHU4NEQxXHU2OEFEXHU1NTA2XHU3RjI5XHU3NDEwXHU3RDIyXHU5NTAxXHU2MjQwXHU1ODRDXHU0RUQ2XHU1QjgzXHU1OTc5XHU1ODU0XCJdLFxuW1wiY2M0MFwiLFwiXHU4NUY5XHU4NUZBXHU4NUZDXHU4NUZEXHU4NUZFXHU4NjAwXCIsNCxcIlx1ODYwNlwiLDEwLFwiXHU4NjEyXHU4NjEzXHU4NjE0XHU4NjE1XHU4NjE3XCIsMTUsXCJcdTg2MjhcdTg2MkFcIiwxMyxcIlx1ODYzOVx1ODYzQVx1ODYzQlx1ODYzRFx1ODYzRVx1ODYzRlx1ODY0MFwiXSxcbltcImNjODBcIixcIlx1ODY0MVwiLDExLFwiXHU4NjUyXHU4NjUzXHU4NjU1XCIsNCxcIlx1ODY1Qlx1ODY1Q1x1ODY1RFx1ODY1Rlx1ODY2MFx1ODY2MVx1ODY2M1wiLDcsXCJcdTczNkRcdTYzMUVcdThFNEJcdThFMEZcdTgwQ0VcdTgyRDRcdTYyQUNcdTUzRjBcdTZDRjBcdTkxNUVcdTU5MkFcdTYwMDFcdTZDNzBcdTU3NERcdTY0NEFcdThEMkFcdTc2MkJcdTZFRTlcdTU3NUJcdTZBODBcdTc1RjBcdTZGNkRcdThDMkRcdThDMDhcdTU3NjZcdTZCRUZcdTg4OTJcdTc4QjNcdTYzQTJcdTUzRjlcdTcwQURcdTZDNjRcdTU4NThcdTY0MkFcdTU4MDJcdTY4RTBcdTgxOUJcdTU1MTBcdTdDRDZcdTUwMThcdThFQkFcdTZEQ0NcdThEOUZcdTcwRUJcdTYzOEZcdTZEOUJcdTZFRDRcdTdFRTZcdTg0MDRcdTY4NDNcdTkwMDNcdTZERDhcdTk2NzZcdThCQThcdTU5NTdcdTcyNzlcdTg1RTRcdTgxN0VcdTc1QkNcdThBOEFcdTY4QUZcdTUyNTRcdThFMjJcdTk1MTFcdTYzRDBcdTk4OThcdThFNDRcdTU1N0NcdTRGNTNcdTY2RkZcdTU2OEZcdTYwRDVcdTZEOTVcdTUyNDNcdTVDNDlcdTU5MjlcdTZERkJcdTU4NkJcdTc1MzBcdTc1MUNcdTYwNkNcdTgyMTRcdTgxNDZcdTYzMTFcdTY3NjFcdThGRTJcdTc3M0FcdThERjNcdThEMzRcdTk0QzFcdTVFMTZcdTUzODVcdTU0MkNcdTcwQzNcIl0sXG5bXCJjZDQwXCIsXCJcdTg2NkRcdTg2NkZcdTg2NzBcdTg2NzJcIiw2LFwiXHU4NjgzXCIsNixcIlx1ODY4RVwiLDQsXCJcdTg2OTRcdTg2OTZcIiw1LFwiXHU4NjlFXCIsNCxcIlx1ODZBNVx1ODZBNlx1ODZBQlx1ODZBRFx1ODZBRVx1ODZCMlx1ODZCM1x1ODZCN1x1ODZCOFx1ODZCOVx1ODZCQlwiLDQsXCJcdTg2QzFcdTg2QzJcdTg2QzNcdTg2QzVcdTg2QzhcdTg2Q0NcdTg2Q0RcdTg2RDJcdTg2RDNcdTg2RDVcdTg2RDZcdTg2RDdcdTg2REFcdTg2RENcIl0sXG5bXCJjZDgwXCIsXCJcdTg2RERcdTg2RTBcdTg2RTFcdTg2RTJcdTg2RTNcdTg2RTVcdTg2RTZcdTg2RTdcdTg2RThcdTg2RUFcdTg2RUJcdTg2RUNcdTg2RUZcdTg2RjVcdTg2RjZcdTg2RjdcdTg2RkFcdTg2RkJcdTg2RkNcdTg2RkRcdTg2RkZcdTg3MDFcdTg3MDRcdTg3MDVcdTg3MDZcdTg3MEJcdTg3MENcdTg3MEVcdTg3MEZcdTg3MTBcdTg3MTFcdTg3MTRcdTg3MTZcdTZDNDBcdTVFRjdcdTUwNUNcdTRFQURcdTVFQURcdTYzM0FcdTgyNDdcdTkwMUFcdTY4NTBcdTkxNkVcdTc3QjNcdTU0MENcdTk0RENcdTVGNjRcdTdBRTVcdTY4NzZcdTYzNDVcdTdCNTJcdTdFREZcdTc1REJcdTUwNzdcdTYyOTVcdTU5MzRcdTkwMEZcdTUxRjhcdTc5QzNcdTdBODFcdTU2RkVcdTVGOTJcdTkwMTRcdTZEODJcdTVDNjBcdTU3MUZcdTU0MTBcdTUxNTRcdTZFNERcdTU2RTJcdTYzQThcdTk4OTNcdTgxN0ZcdTg3MTVcdTg5MkFcdTkwMDBcdTU0MUVcdTVDNkZcdTgxQzBcdTYyRDZcdTYyNThcdTgxMzFcdTlFMzVcdTk2NDBcdTlBNkVcdTlBN0NcdTY5MkRcdTU5QTVcdTYyRDNcdTU1M0VcdTYzMTZcdTU0QzdcdTg2RDlcdTZEM0NcdTVBMDNcdTc0RTZcdTg4OUNcdTZCNkFcdTU5MTZcdThDNENcdTVGMkZcdTZFN0VcdTczQTlcdTk4N0RcdTRFMzhcdTcwRjdcdTVCOENcdTc4OTdcdTYzM0RcdTY2NUFcdTc2OTZcdTYwQ0JcdTVCOUJcdTVBNDlcdTRFMDdcdTgxNTVcdTZDNkFcdTczOEJcdTRFQTFcdTY3ODlcdTdGNTFcdTVGODBcdTY1RkFcdTY3MUJcdTVGRDhcdTU5ODRcdTVBMDFcIl0sXG5bXCJjZTQwXCIsXCJcdTg3MTlcdTg3MUJcdTg3MURcdTg3MUZcdTg3MjBcdTg3MjRcdTg3MjZcdTg3MjdcdTg3MjhcdTg3MkFcdTg3MkJcdTg3MkNcdTg3MkRcdTg3MkZcdTg3MzBcdTg3MzJcdTg3MzNcdTg3MzVcdTg3MzZcdTg3MzhcdTg3MzlcdTg3M0FcdTg3M0NcdTg3M0RcdTg3NDBcIiw2LFwiXHU4NzRBXHU4NzRCXHU4NzREXHU4NzRGXHU4NzUwXHU4NzUxXHU4NzUyXHU4NzU0XHU4NzU1XHU4NzU2XHU4NzU4XHU4NzVBXCIsNSxcIlx1ODc2MVx1ODc2Mlx1ODc2NlwiLDcsXCJcdTg3NkZcdTg3NzFcdTg3NzJcdTg3NzNcdTg3NzVcIl0sXG5bXCJjZTgwXCIsXCJcdTg3NzdcdTg3NzhcdTg3NzlcdTg3N0FcdTg3N0ZcdTg3ODBcdTg3ODFcdTg3ODRcdTg3ODZcdTg3ODdcdTg3ODlcdTg3OEFcdTg3OENcdTg3OEVcIiw0LFwiXHU4Nzk0XHU4Nzk1XHU4Nzk2XHU4Nzk4XCIsNixcIlx1ODdBMFwiLDQsXCJcdTVEQ0RcdTVGQUVcdTUzNzFcdTk3RTZcdThGRERcdTY4NDVcdTU2RjRcdTU1MkZcdTYwREZcdTRFM0FcdTZGNERcdTdFRjRcdTgyQzdcdTg0MEVcdTU5RDRcdTRGMUZcdTRGMkFcdTVDM0VcdTdFQUNcdTY3MkFcdTg1MUFcdTU0NzNcdTc1NEZcdTgwQzNcdTU1ODJcdTlCNEZcdTRGNERcdTZFMkRcdThDMTNcdTVDMDlcdTYxNzBcdTUzNkJcdTc2MUZcdTZFMjlcdTg2OEFcdTY1ODdcdTk1RkJcdTdFQjlcdTU0M0JcdTdBMzNcdTdEMEFcdTk1RUVcdTU1RTFcdTdGQzFcdTc0RUVcdTYzMURcdTg3MTdcdTZEQTFcdTdBOURcdTYyMTFcdTY1QTFcdTUzNjdcdTYzRTFcdTZDODNcdTVERUJcdTU0NUNcdTk0QThcdTRFNENcdTZDNjFcdThCRUNcdTVDNEJcdTY1RTBcdTgyOUNcdTY4QTdcdTU0M0VcdTU0MzRcdTZCQ0JcdTZCNjZcdTRFOTRcdTYzNDJcdTUzNDhcdTgyMUVcdTRGMERcdTRGQUVcdTU3NUVcdTYyMEFcdTk2RkVcdTY2NjRcdTcyNjlcdTUyRkZcdTUyQTFcdTYwOUZcdThCRUZcdTY2MTRcdTcxOTlcdTY3OTBcdTg5N0ZcdTc4NTJcdTc3RkRcdTY2NzBcdTU2M0JcdTU0MzhcdTk1MjFcdTcyN0FcIl0sXG5bXCJjZjQwXCIsXCJcdTg3QTVcdTg3QTZcdTg3QTdcdTg3QTlcdTg3QUFcdTg3QUVcdTg3QjBcdTg3QjFcdTg3QjJcdTg3QjRcdTg3QjZcdTg3QjdcdTg3QjhcdTg3QjlcdTg3QkJcdTg3QkNcdTg3QkVcdTg3QkZcdTg3QzFcIiw0LFwiXHU4N0M3XHU4N0M4XHU4N0M5XHU4N0NDXCIsNCxcIlx1ODdENFwiLDYsXCJcdTg3RENcdTg3RERcdTg3REVcdTg3REZcdTg3RTFcdTg3RTJcdTg3RTNcdTg3RTRcdTg3RTZcdTg3RTdcdTg3RThcdTg3RTlcdTg3RUJcdTg3RUNcdTg3RURcdTg3RUZcIiw5XSxcbltcImNmODBcIixcIlx1ODdGQVx1ODdGQlx1ODdGQ1x1ODdGRFx1ODdGRlx1ODgwMFx1ODgwMVx1ODgwMlx1ODgwNFwiLDUsXCJcdTg4MEJcIiw3LFwiXHU4ODE0XHU4ODE3XHU4ODE4XHU4ODE5XHU4ODFBXHU4ODFDXCIsNCxcIlx1ODgyM1x1N0EwMFx1NjA2Rlx1NUUwQ1x1NjA4OVx1ODE5RFx1NTkxNVx1NjBEQ1x1NzE4NFx1NzBFRlx1NkVBQVx1NkM1MFx1NzI4MFx1NkE4NFx1ODhBRFx1NUUyRFx1NEU2MFx1NUFCM1x1NTU5Q1x1OTRFM1x1NkQxN1x1N0NGQlx1OTY5OVx1NjIwRlx1N0VDNlx1Nzc4RVx1ODY3RVx1NTMyM1x1OTcxRVx1OEY5Nlx1NjY4N1x1NUNFMVx1NEZBMFx1NzJFRFx1NEUwQlx1NTNBNlx1NTkwRlx1NTQxM1x1NjM4MFx1OTUyOFx1NTE0OFx1NEVEOVx1OUM5Q1x1N0VBNFx1NTRCOFx1OEQyNFx1ODg1NFx1ODIzN1x1OTVGMlx1NkQ4RVx1NUYyNlx1NUFDQ1x1NjYzRVx1OTY2OVx1NzNCMFx1NzMyRVx1NTNCRlx1ODE3QVx1OTk4NVx1N0ZBMVx1NUJBQVx1OTY3N1x1OTY1MFx1N0VCRlx1NzZGOFx1NTNBMlx1OTU3Nlx1OTk5OVx1N0JCMVx1ODk0NFx1NkU1OFx1NEU2MVx1N0ZENFx1Nzk2NVx1OEJFNlx1NjBGM1x1NTRDRFx1NEVBQlx1OTg3OVx1NURGN1x1NkE2MVx1NTBDRlx1NTQxMVx1OEM2MVx1ODQyN1x1Nzg1RFx1OTcwNFx1NTI0QVx1NTRFRVx1NTZBM1x1OTUwMFx1NkQ4OFx1NUJCNVx1NkRDNlx1NjY1M1wiXSxcbltcImQwNDBcIixcIlx1ODgyNFwiLDEzLFwiXHU4ODMzXCIsNSxcIlx1ODgzQVx1ODgzQlx1ODgzRFx1ODgzRVx1ODgzRlx1ODg0MVx1ODg0Mlx1ODg0M1x1ODg0NlwiLDUsXCJcdTg4NEVcIiw1LFwiXHU4ODU1XHU4ODU2XHU4ODU4XHU4ODVBXCIsNixcIlx1ODg2Nlx1ODg2N1x1ODg2QVx1ODg2RFx1ODg2Rlx1ODg3MVx1ODg3M1x1ODg3NFx1ODg3NVx1ODg3Nlx1ODg3OFx1ODg3OVx1ODg3QVwiXSxcbltcImQwODBcIixcIlx1ODg3Qlx1ODg3Q1x1ODg4MFx1ODg4M1x1ODg4Nlx1ODg4N1x1ODg4OVx1ODg4QVx1ODg4Q1x1ODg4RVx1ODg4Rlx1ODg5MFx1ODg5MVx1ODg5M1x1ODg5NFx1ODg5NVx1ODg5N1wiLDQsXCJcdTg4OURcIiw0LFwiXHU4OEEzXHU4OEE1XCIsNSxcIlx1NUMwRlx1NUI1RFx1NjgyMVx1ODA5Nlx1NTU3OFx1N0IxMVx1NjU0OFx1Njk1NFx1NEU5Qlx1NkI0N1x1ODc0RVx1OTc4Qlx1NTM0Rlx1NjMxRlx1NjQzQVx1OTBBQVx1NjU5Q1x1ODBDMVx1OEMxMFx1NTE5OVx1NjhCMFx1NTM3OFx1ODdGOVx1NjFDOFx1NkNDNFx1NkNGQlx1OEMyMlx1NUM1MVx1ODVBQVx1ODJBRlx1OTUwQ1x1NkIyM1x1OEY5Qlx1NjVCMFx1NUZGQlx1NUZDM1x1NEZFMVx1ODg0NVx1NjYxRlx1ODE2NVx1NzMyOVx1NjBGQVx1NTE3NFx1NTIxMVx1NTc4Qlx1NUY2Mlx1OTBBMlx1ODg0Q1x1OTE5Mlx1NUU3OFx1Njc0Rlx1NjAyN1x1NTlEM1x1NTE0NFx1NTFGNlx1ODBGOFx1NTMwOFx1NkM3OVx1OTZDNFx1NzE4QVx1NEYxMVx1NEZFRVx1N0Y5RVx1NjczRFx1NTVDNVx1OTUwOFx1NzlDMFx1ODg5Nlx1N0VFM1x1NTg5Rlx1NjIwQ1x1OTcwMFx1ODY1QVx1NTYxOFx1OTg3Qlx1NUY5MFx1OEJCOFx1ODRDNFx1OTE1N1x1NTNEOVx1NjVFRFx1NUU4Rlx1NzU1Q1x1NjA2NFx1N0Q2RVx1NUE3Rlx1N0VFQVx1N0VFRFx1OEY2OVx1NTVBN1x1NUJBM1x1NjBBQ1x1NjVDQlx1NzM4NFwiXSxcbltcImQxNDBcIixcIlx1ODhBQ1x1ODhBRVx1ODhBRlx1ODhCMFx1ODhCMlwiLDQsXCJcdTg4QjhcdTg4QjlcdTg4QkFcdTg4QkJcdTg4QkRcdTg4QkVcdTg4QkZcdTg4QzBcdTg4QzNcdTg4QzRcdTg4QzdcdTg4QzhcdTg4Q0FcdTg4Q0JcdTg4Q0NcdTg4Q0RcdTg4Q0ZcdTg4RDBcdTg4RDFcdTg4RDNcdTg4RDZcdTg4RDdcdTg4REFcIiw0LFwiXHU4OEUwXHU4OEUxXHU4OEU2XHU4OEU3XHU4OEU5XCIsNixcIlx1ODhGMlx1ODhGNVx1ODhGNlx1ODhGN1x1ODhGQVx1ODhGQlx1ODhGRFx1ODhGRlx1ODkwMFx1ODkwMVx1ODkwM1wiLDVdLFxuW1wiZDE4MFwiLFwiXHU4OTA5XHU4OTBCXCIsNCxcIlx1ODkxMVx1ODkxNFwiLDQsXCJcdTg5MUNcIiw0LFwiXHU4OTIyXHU4OTIzXHU4OTI0XHU4OTI2XHU4OTI3XHU4OTI4XHU4OTI5XHU4OTJDXHU4OTJEXHU4OTJFXHU4OTJGXHU4OTMxXHU4OTMyXHU4OTMzXHU4OTM1XHU4OTM3XHU5MDA5XHU3NjYzXHU3NzI5XHU3RURBXHU5Nzc0XHU4NTlCXHU1QjY2XHU3QTc0XHU5NkVBXHU4ODQwXHU1MkNCXHU3MThGXHU1RkFBXHU2NUVDXHU4QkUyXHU1QkZCXHU5QTZGXHU1REUxXHU2Qjg5XHU2QzVCXHU4QkFEXHU4QkFGXHU5MDBBXHU4RkM1XHU1MzhCXHU2MkJDXHU5RTI2XHU5RTJEXHU1NDQwXHU0RTJCXHU4MkJEXHU3MjU5XHU4NjlDXHU1RDE2XHU4ODU5XHU2REFGXHU5NkM1XHU1NEQxXHU0RTlBXHU4QkI2XHU3MTA5XHU1NEJEXHU5NjA5XHU3MERGXHU2REY5XHU3NkQwXHU0RTI1XHU3ODE0XHU4NzEyXHU1Q0E5XHU1RUY2XHU4QTAwXHU5ODlDXHU5NjBFXHU3MDhFXHU2Q0JGXHU1OTQ0XHU2M0E5XHU3NzNDXHU4ODREXHU2RjE0XHU4MjczXHU1ODMwXHU3MUQ1XHU1MzhDXHU3ODFBXHU5NkMxXHU1NTAxXHU1RjY2XHU3MTMwXHU1QkI0XHU4QzFBXHU5QThDXHU2QjgzXHU1OTJFXHU5RTJGXHU3OUU3XHU2NzY4XHU2MjZDXHU0RjZGXHU3NUExXHU3RjhBXHU2RDBCXHU5NjMzXHU2QzI3XHU0RUYwXHU3NUQyXHU1MTdCXHU2ODM3XHU2RjNFXHU5MDgwXHU4MTcwXHU1OTk2XHU3NDc2XCJdLFxuW1wiZDI0MFwiLFwiXHU4OTM4XCIsOCxcIlx1ODk0Mlx1ODk0M1x1ODk0NVwiLDI0LFwiXHU4OTYwXCIsNSxcIlx1ODk2N1wiLDE5LFwiXHU4OTdDXCJdLFxuW1wiZDI4MFwiLFwiXHU4OTdEXHU4OTdFXHU4OTgwXHU4OTgyXHU4OTg0XHU4OTg1XHU4OTg3XCIsMjYsXCJcdTY0NDdcdTVDMjdcdTkwNjVcdTdBOTFcdThDMjNcdTU5REFcdTU0QUNcdTgyMDBcdTgzNkZcdTg5ODFcdTgwMDBcdTY5MzBcdTU2NEVcdTgwMzZcdTcyMzdcdTkxQ0VcdTUxQjZcdTRFNUZcdTk4NzVcdTYzOTZcdTRFMUFcdTUzRjZcdTY2RjNcdTgxNEJcdTU5MUNcdTZEQjJcdTRFMDBcdTU4RjlcdTUzM0JcdTYzRDZcdTk0RjFcdTRGOURcdTRGMEFcdTg4NjNcdTk4OTBcdTU5MzdcdTkwNTdcdTc5RkJcdTRFRUFcdTgwRjBcdTc1OTFcdTZDODJcdTVCOUNcdTU5RThcdTVGNURcdTY5MDVcdTg2ODFcdTUwMUFcdTVERjJcdTRFNTlcdTc3RTNcdTRFRTVcdTgyN0FcdTYyOTFcdTY2MTNcdTkwOTFcdTVDNzlcdTRFQkZcdTVGNzlcdTgxQzZcdTkwMzhcdTgwODRcdTc1QUJcdTRFQTZcdTg4RDRcdTYxMEZcdTZCQzVcdTVGQzZcdTRFNDlcdTc2Q0FcdTZFQTJcdThCRTNcdThCQUVcdThDMEFcdThCRDFcdTVGMDJcdTdGRkNcdTdGQ0NcdTdFQ0VcdTgzMzVcdTgzNkJcdTU2RTBcdTZCQjdcdTk3RjNcdTk2MzRcdTU5RkJcdTU0MUZcdTk0RjZcdTZERUJcdTVCQzVcdTk5NkVcdTVDMzlcdTVGMTVcdTk2OTBcIl0sXG5bXCJkMzQwXCIsXCJcdTg5QTJcIiwzMCxcIlx1ODlDM1x1ODlDRFx1ODlEM1x1ODlENFx1ODlENVx1ODlEN1x1ODlEOFx1ODlEOVx1ODlEQlx1ODlERFx1ODlERlx1ODlFMFx1ODlFMVx1ODlFMlx1ODlFNFx1ODlFN1x1ODlFOFx1ODlFOVx1ODlFQVx1ODlFQ1x1ODlFRFx1ODlFRVx1ODlGMFx1ODlGMVx1ODlGMlx1ODlGNFwiLDZdLFxuW1wiZDM4MFwiLFwiXHU4OUZCXCIsNCxcIlx1OEEwMVwiLDUsXCJcdThBMDhcIiwyMSxcIlx1NTM3MFx1ODJGMVx1NkEzMVx1NUE3NFx1OUU3MFx1NUU5NFx1N0YyOFx1ODNCOVx1ODQyNFx1ODQyNVx1ODM2N1x1ODc0N1x1OEZDRVx1OEQ2Mlx1NzZDOFx1NUY3MVx1OTg5Nlx1Nzg2Q1x1NjYyMFx1NTRERlx1NjJFNVx1NEY2M1x1ODFDM1x1NzVDOFx1NUVCOFx1OTZDRFx1OEUwQVx1ODZGOVx1NTQ4Rlx1NkNGM1x1NkQ4Q1x1NkMzOFx1NjA3Rlx1NTJDN1x1NzUyOFx1NUU3RFx1NEYxOFx1NjBBMFx1NUZFN1x1NUMyNFx1NzUzMVx1OTBBRVx1OTRDMFx1NzJCOVx1NkNCOVx1NkUzOFx1OTE0OVx1NjcwOVx1NTNDQlx1NTNGM1x1NEY1MVx1OTFDOVx1OEJGMVx1NTNDOFx1NUU3Q1x1OEZDMlx1NkRFNFx1NEU4RVx1NzZDMlx1Njk4Nlx1ODY1RVx1NjExQVx1ODIwNlx1NEY1OVx1NEZERVx1OTAzRVx1OUM3Q1x1NjEwOVx1NkUxRFx1NkUxNFx1OTY4NVx1NEU4OFx1NUEzMVx1OTZFOFx1NEUwRVx1NUM3Rlx1NzlCOVx1NUI4N1x1OEJFRFx1N0ZCRFx1NzM4OVx1NTdERlx1ODI4Qlx1OTBDMVx1NTQwMVx1OTA0N1x1NTVCQlx1NUNFQVx1NUZBMVx1NjEwOFx1NkIzMlx1NzJGMVx1ODBCMlx1OEE4OVwiXSxcbltcImQ0NDBcIixcIlx1OEExRVwiLDMxLFwiXHU4QTNGXCIsOCxcIlx1OEE0OVwiLDIxXSxcbltcImQ0ODBcIixcIlx1OEE1RlwiLDI1LFwiXHU4QTdBXCIsNixcIlx1NkQ3NFx1NUJEM1x1ODhENVx1OTg4NFx1OEM2Qlx1OUE2RFx1OUUzM1x1NkUwQVx1NTFBNFx1NTE0M1x1NTdBM1x1ODg4MVx1NTM5Rlx1NjNGNFx1OEY5NVx1NTZFRFx1NTQ1OFx1NTcwNlx1NzMzRlx1NkU5MFx1N0YxOFx1OEZEQ1x1ODJEMVx1NjEzRlx1NjAyOFx1OTY2Mlx1NjZGMFx1N0VBNlx1OEQ4QVx1OERDM1x1OTRBNVx1NUNCM1x1N0NBNFx1NjcwOFx1NjBBNlx1OTYwNVx1ODAxOFx1NEU5MVx1OTBFN1x1NTMwMFx1OTY2OFx1NTE0MVx1OEZEMFx1ODU3NFx1OTE1RFx1NjY1NVx1OTdGNVx1NUI1NVx1NTMxRFx1NzgzOFx1Njc0Mlx1NjgzRFx1NTRDOVx1NzA3RVx1NUJCMFx1OEY3RFx1NTE4RFx1NTcyOFx1NTRCMVx1NjUxMlx1NjY4Mlx1OEQ1RVx1OEQ0M1x1ODEwRlx1ODQ2Q1x1OTA2RFx1N0NERlx1NTFGRlx1ODVGQlx1NjdBM1x1NjVFOVx1NkZBMVx1ODZBNFx1OEU4MVx1NTY2QVx1OTAyMFx1NzY4Mlx1NzA3Nlx1NzFFNVx1OEQyM1x1NjJFOVx1NTIxOVx1NkNGRFx1OEQzQ1x1NjAwRVx1NTg5RVx1NjE4RVx1NjZGRVx1OEQ2MFx1NjI0RVx1NTVCM1x1NkUyM1x1NjcyRFx1OEY2N1wiXSxcbltcImQ1NDBcIixcIlx1OEE4MVwiLDcsXCJcdThBOEJcIiw3LFwiXHU4QTk0XCIsNDZdLFxuW1wiZDU4MFwiLFwiXHU4QUMzXCIsMzIsXCJcdTk0RTFcdTk1RjhcdTc3MjhcdTY4MDVcdTY5QThcdTU0OEJcdTRFNERcdTcwQjhcdThCQzhcdTY0NThcdTY1OEJcdTVCODVcdTdBODRcdTUwM0FcdTVCRThcdTc3QkJcdTZCRTFcdThBNzlcdTdDOThcdTZDQkVcdTc2Q0ZcdTY1QTlcdThGOTdcdTVEMkRcdTVDNTVcdTg2MzhcdTY4MDhcdTUzNjBcdTYyMThcdTdBRDlcdTZFNUJcdTdFRkRcdTZBMUZcdTdBRTBcdTVGNzBcdTZGMzNcdTVGMjBcdTYzOENcdTZEQThcdTY3NTZcdTRFMDhcdTVFMTBcdThEMjZcdTRFRDdcdTgwQzBcdTc2MzRcdTk2OUNcdTYyREJcdTY2MkRcdTYyN0VcdTZDQkNcdThENzVcdTcxNjdcdTdGNjlcdTUxNDZcdTgwODdcdTUzRUNcdTkwNkVcdTYyOThcdTU0RjJcdTg2RjBcdThGOTlcdTgwMDVcdTk1MTdcdTg1MTdcdThGRDlcdTZENTlcdTczQ0RcdTY1OUZcdTc3MUZcdTc1MDRcdTc4MjdcdTgxRkJcdThEMUVcdTk0ODhcdTRGQTZcdTY3OTVcdTc1QjlcdThCQ0FcdTk3MDdcdTYzMkZcdTk1NDdcdTk2MzVcdTg0QjhcdTYzMjNcdTc3NDFcdTVGODFcdTcyRjBcdTRFODlcdTYwMTRcdTY1NzRcdTYyRUZcdTZCNjNcdTY1M0ZcIl0sXG5bXCJkNjQwXCIsXCJcdThBRTRcIiwzNCxcIlx1OEIwOFwiLDI3XSxcbltcImQ2ODBcIixcIlx1OEIyNFx1OEIyNVx1OEIyN1wiLDMwLFwiXHU1RTI3XHU3NUM3XHU5MEQxXHU4QkMxXHU4MjlEXHU2NzlEXHU2NTJGXHU1NDMxXHU4NzE4XHU3N0U1XHU4MEEyXHU4MTAyXHU2QzQxXHU0RTRCXHU3RUM3XHU4MDRDXHU3NkY0XHU2OTBEXHU2Qjk2XHU2MjY3XHU1MDNDXHU0Rjg0XHU1NzQwXHU2MzA3XHU2QjYyXHU4REJFXHU1M0VBXHU2NUU4XHU3RUI4XHU1RkQ3XHU2MzFBXHU2M0I3XHU4MUYzXHU4MUY0XHU3RjZFXHU1RTFDXHU1Q0Q5XHU1MjM2XHU2NjdBXHU3OUU5XHU3QTFBXHU4RDI4XHU3MDk5XHU3NUQ0XHU2RURFXHU2Q0JCXHU3QTkyXHU0RTJEXHU3NkM1XHU1RkUwXHU5NDlGXHU4ODc3XHU3RUM4XHU3OUNEXHU4MEJGXHU5MUNEXHU0RUYyXHU0RjE3XHU4MjFGXHU1NDY4XHU1RERFXHU2RDMyXHU4QkNDXHU3Q0E1XHU4Rjc0XHU4MDk4XHU1RTFBXHU1NDkyXHU3NkIxXHU1Qjk5XHU2NjNDXHU5QUE0XHU3M0UwXHU2ODJBXHU4NkRCXHU2NzMxXHU3MzJBXHU4QkY4XHU4QkRCXHU5MDEwXHU3QUY5XHU3MERCXHU3MTZFXHU2MkM0XHU3N0E5XHU1NjMxXHU0RTNCXHU4NDU3XHU2N0YxXHU1MkE5XHU4NkMwXHU4RDJFXHU5NEY4XHU3QjUxXCJdLFxuW1wiZDc0MFwiLFwiXHU4QjQ2XCIsMzEsXCJcdThCNjdcIiw0LFwiXHU4QjZEXCIsMjVdLFxuW1wiZDc4MFwiLFwiXHU4Qjg3XCIsMjQsXCJcdThCQUNcdThCQjFcdThCQkJcdThCQzdcdThCRDBcdThCRUFcdThDMDlcdThDMUVcdTRGNEZcdTZDRThcdTc5NURcdTlBN0JcdTYyOTNcdTcyMkFcdTYyRkRcdTRFMTNcdTc4MTZcdThGNkNcdTY0QjBcdThENUFcdTdCQzZcdTY4NjlcdTVFODRcdTg4QzVcdTU5ODZcdTY0OUVcdTU4RUVcdTcyQjZcdTY5MEVcdTk1MjVcdThGRkRcdThENThcdTU3NjBcdTdGMDBcdThDMDZcdTUxQzZcdTYzNDlcdTYyRDlcdTUzNTNcdTY4NENcdTc0MjJcdTgzMDFcdTkxNENcdTU1NDRcdTc3NDBcdTcwN0NcdTZENEFcdTUxNzlcdTU0QThcdThENDRcdTU5RkZcdTZFQ0JcdTZEQzRcdTVCNUNcdTdEMkJcdTRFRDRcdTdDN0RcdTZFRDNcdTVCNTBcdTgxRUFcdTZFMERcdTVCNTdcdTlCMDNcdTY4RDVcdThFMkFcdTVCOTdcdTdFRkNcdTYwM0JcdTdFQjVcdTkwQjlcdThENzBcdTU5NEZcdTYzQ0RcdTc5REZcdThEQjNcdTUzNTJcdTY1Q0ZcdTc5NTZcdThCQzVcdTk2M0JcdTdFQzRcdTk0QkJcdTdFODJcdTU2MzRcdTkxODlcdTY3MDBcdTdGNkFcdTVDMEFcdTkwNzVcdTY2MjhcdTVERTZcdTRGNTBcdTY3REVcdTUwNUFcdTRGNUNcdTU3NTBcdTVFQTdcIl0sXG5bXCJkODQwXCIsXCJcdThDMzhcIiw4LFwiXHU4QzQyXHU4QzQzXHU4QzQ0XHU4QzQ1XHU4QzQ4XHU4QzRBXHU4QzRCXHU4QzREXCIsNyxcIlx1OEM1Nlx1OEM1N1x1OEM1OFx1OEM1OVx1OEM1QlwiLDUsXCJcdThDNjNcIiw2LFwiXHU4QzZDXCIsNixcIlx1OEM3NFx1OEM3NVx1OEM3Nlx1OEM3N1x1OEM3QlwiLDYsXCJcdThDODNcdThDODRcdThDODZcdThDODdcIl0sXG5bXCJkODgwXCIsXCJcdThDODhcdThDOEJcdThDOERcIiw2LFwiXHU4Qzk1XHU4Qzk2XHU4Qzk3XHU4Qzk5XCIsMjAsXCJcdTRFOERcdTRFMENcdTUxNDBcdTRFMTBcdTVFRkZcdTUzNDVcdTRFMTVcdTRFOThcdTRFMUVcdTlCMzJcdTVCNkNcdTU2NjlcdTRFMjhcdTc5QkFcdTRFM0ZcdTUzMTVcdTRFNDdcdTU5MkRcdTcyM0JcdTUzNkVcdTZDMTBcdTU2REZcdTgwRTRcdTk5OTdcdTZCRDNcdTc3N0VcdTlGMTdcdTRFMzZcdTRFOUZcdTlGMTBcdTRFNUNcdTRFNjlcdTRFOTNcdTgyODhcdTVCNUJcdTU1NkNcdTU2MEZcdTRFQzRcdTUzOERcdTUzOURcdTUzQTNcdTUzQTVcdTUzQUVcdTk3NjVcdThENURcdTUzMUFcdTUzRjVcdTUzMjZcdTUzMkVcdTUzM0VcdThENUNcdTUzNjZcdTUzNjNcdTUyMDJcdTUyMDhcdTUyMEVcdTUyMkRcdTUyMzNcdTUyM0ZcdTUyNDBcdTUyNENcdTUyNUVcdTUyNjFcdTUyNUNcdTg0QUZcdTUyN0RcdTUyODJcdTUyODFcdTUyOTBcdTUyOTNcdTUxODJcdTdGNTRcdTRFQkJcdTRFQzNcdTRFQzlcdTRFQzJcdTRFRThcdTRFRTFcdTRFRUJcdTRFREVcdTRGMUJcdTRFRjNcdTRGMjJcdTRGNjRcdTRFRjVcdTRGMjVcdTRGMjdcdTRGMDlcdTRGMkJcdTRGNUVcdTRGNjdcdTY1MzhcdTRGNUFcdTRGNURcIl0sXG5bXCJkOTQwXCIsXCJcdThDQUVcIiw2Ml0sXG5bXCJkOTgwXCIsXCJcdThDRURcIiwzMixcIlx1NEY1Rlx1NEY1N1x1NEYzMlx1NEYzRFx1NEY3Nlx1NEY3NFx1NEY5MVx1NEY4OVx1NEY4M1x1NEY4Rlx1NEY3RVx1NEY3Qlx1NEZBQVx1NEY3Q1x1NEZBQ1x1NEY5NFx1NEZFNlx1NEZFOFx1NEZFQVx1NEZDNVx1NEZEQVx1NEZFM1x1NEZEQ1x1NEZEMVx1NEZERlx1NEZGOFx1NTAyOVx1NTA0Q1x1NEZGM1x1NTAyQ1x1NTAwRlx1NTAyRVx1NTAyRFx1NEZGRVx1NTAxQ1x1NTAwQ1x1NTAyNVx1NTAyOFx1NTA3RVx1NTA0M1x1NTA1NVx1NTA0OFx1NTA0RVx1NTA2Q1x1NTA3Qlx1NTBBNVx1NTBBN1x1NTBBOVx1NTBCQVx1NTBENlx1NTEwNlx1NTBFRFx1NTBFQ1x1NTBFNlx1NTBFRVx1NTEwN1x1NTEwQlx1NEVERFx1NkMzRFx1NEY1OFx1NEY2NVx1NEZDRVx1OUZBMFx1NkM0Nlx1N0M3NFx1NTE2RVx1NURGRFx1OUVDOVx1OTk5OFx1NTE4MVx1NTkxNFx1NTJGOVx1NTMwRFx1OEEwN1x1NTMxMFx1NTFFQlx1NTkxOVx1NTE1NVx1NEVBMFx1NTE1Nlx1NEVCM1x1ODg2RVx1ODhBNFx1NEVCNVx1ODExNFx1ODhEMlx1Nzk4MFx1NUIzNFx1ODgwM1x1N0ZCOFx1NTFBQlx1NTFCMVx1NTFCRFx1NTFCQ1wiXSxcbltcImRhNDBcIixcIlx1OEQwRVwiLDE0LFwiXHU4RDIwXHU4RDUxXHU4RDUyXHU4RDU3XHU4RDVGXHU4RDY1XHU4RDY4XHU4RDY5XHU4RDZBXHU4RDZDXHU4RDZFXHU4RDZGXHU4RDcxXHU4RDcyXHU4RDc4XCIsOCxcIlx1OEQ4Mlx1OEQ4M1x1OEQ4Nlx1OEQ4N1x1OEQ4OFx1OEQ4OVx1OEQ4Q1wiLDQsXCJcdThEOTJcdThEOTNcdThEOTVcIiw5LFwiXHU4REEwXHU4REExXCJdLFxuW1wiZGE4MFwiLFwiXHU4REEyXHU4REE0XCIsMTIsXCJcdThEQjJcdThEQjZcdThEQjdcdThEQjlcdThEQkJcdThEQkRcdThEQzBcdThEQzFcdThEQzJcdThEQzVcdThEQzdcdThEQzhcdThEQzlcdThEQ0FcdThEQ0RcdThERDBcdThERDJcdThERDNcdThERDRcdTUxQzdcdTUxOTZcdTUxQTJcdTUxQTVcdThCQTBcdThCQTZcdThCQTdcdThCQUFcdThCQjRcdThCQjVcdThCQjdcdThCQzJcdThCQzNcdThCQ0JcdThCQ0ZcdThCQ0VcdThCRDJcdThCRDNcdThCRDRcdThCRDZcdThCRDhcdThCRDlcdThCRENcdThCREZcdThCRTBcdThCRTRcdThCRThcdThCRTlcdThCRUVcdThCRjBcdThCRjNcdThCRjZcdThCRjlcdThCRkNcdThCRkZcdThDMDBcdThDMDJcdThDMDRcdThDMDdcdThDMENcdThDMEZcdThDMTFcdThDMTJcdThDMTRcdThDMTVcdThDMTZcdThDMTlcdThDMUJcdThDMThcdThDMURcdThDMUZcdThDMjBcdThDMjFcdThDMjVcdThDMjdcdThDMkFcdThDMkJcdThDMkVcdThDMkZcdThDMzJcdThDMzNcdThDMzVcdThDMzZcdTUzNjlcdTUzN0FcdTk2MURcdTk2MjJcdTk2MjFcdTk2MzFcdTk2MkFcdTk2M0RcdTk2M0NcdTk2NDJcdTk2NDlcdTk2NTRcdTk2NUZcdTk2NjdcdTk2NkNcdTk2NzJcdTk2NzRcdTk2ODhcdTk2OERcdTk2OTdcdTk2QjBcdTkwOTdcdTkwOUJcdTkwOURcdTkwOTlcdTkwQUNcdTkwQTFcdTkwQjRcdTkwQjNcdTkwQjZcdTkwQkFcIl0sXG5bXCJkYjQwXCIsXCJcdThERDVcdThERDhcdThERDlcdThERENcdThERTBcdThERTFcdThERTJcdThERTVcdThERTZcdThERTdcdThERTlcdThERURcdThERUVcdThERjBcdThERjFcdThERjJcdThERjRcdThERjZcdThERkNcdThERkVcIiw2LFwiXHU4RTA2XHU4RTA3XHU4RTA4XHU4RTBCXHU4RTBEXHU4RTBFXHU4RTEwXHU4RTExXHU4RTEyXHU4RTEzXHU4RTE1XCIsNyxcIlx1OEUyMFx1OEUyMVx1OEUyNFwiLDQsXCJcdThFMkJcdThFMkRcdThFMzBcdThFMzJcdThFMzNcdThFMzRcdThFMzZcdThFMzdcdThFMzhcdThFM0JcdThFM0NcdThFM0VcIl0sXG5bXCJkYjgwXCIsXCJcdThFM0ZcdThFNDNcdThFNDVcdThFNDZcdThFNENcIiw0LFwiXHU4RTUzXCIsNSxcIlx1OEU1QVwiLDExLFwiXHU4RTY3XHU4RTY4XHU4RTZBXHU4RTZCXHU4RTZFXHU4RTcxXHU5MEI4XHU5MEIwXHU5MENGXHU5MEM1XHU5MEJFXHU5MEQwXHU5MEM0XHU5MEM3XHU5MEQzXHU5MEU2XHU5MEUyXHU5MERDXHU5MEQ3XHU5MERCXHU5MEVCXHU5MEVGXHU5MEZFXHU5MTA0XHU5MTIyXHU5MTFFXHU5MTIzXHU5MTMxXHU5MTJGXHU5MTM5XHU5MTQzXHU5MTQ2XHU1MjBEXHU1OTQyXHU1MkEyXHU1MkFDXHU1MkFEXHU1MkJFXHU1NEZGXHU1MkQwXHU1MkQ2XHU1MkYwXHU1M0RGXHU3MUVFXHU3N0NEXHU1RUY0XHU1MUY1XHU1MUZDXHU5QjJGXHU1M0I2XHU1RjAxXHU3NTVBXHU1REVGXHU1NzRDXHU1N0E5XHU1N0ExXHU1ODdFXHU1OEJDXHU1OEM1XHU1OEQxXHU1NzI5XHU1NzJDXHU1NzJBXHU1NzMzXHU1NzM5XHU1NzJFXHU1NzJGXHU1NzVDXHU1NzNCXHU1NzQyXHU1NzY5XHU1Nzg1XHU1NzZCXHU1Nzg2XHU1NzdDXHU1NzdCXHU1NzY4XHU1NzZEXHU1Nzc2XHU1NzczXHU1N0FEXHU1N0E0XHU1NzhDXHU1N0IyXHU1N0NGXHU1N0E3XHU1N0I0XHU1NzkzXHU1N0EwXHU1N0Q1XHU1N0Q4XHU1N0RBXHU1N0Q5XHU1N0QyXHU1N0I4XHU1N0Y0XHU1N0VGXHU1N0Y4XHU1N0U0XHU1N0REXCJdLFxuW1wiZGM0MFwiLFwiXHU4RTczXHU4RTc1XHU4RTc3XCIsNCxcIlx1OEU3RFx1OEU3RVx1OEU4MFx1OEU4Mlx1OEU4M1x1OEU4NFx1OEU4Nlx1OEU4OFwiLDYsXCJcdThFOTFcdThFOTJcdThFOTNcdThFOTVcIiw2LFwiXHU4RTlEXHU4RTlGXCIsMTEsXCJcdThFQURcdThFQUVcdThFQjBcdThFQjFcdThFQjNcIiw2LFwiXHU4RUJCXCIsN10sXG5bXCJkYzgwXCIsXCJcdThFQzNcIiwxMCxcIlx1OEVDRlwiLDIxLFwiXHU1ODBCXHU1ODBEXHU1N0ZEXHU1N0VEXHU1ODAwXHU1ODFFXHU1ODE5XHU1ODQ0XHU1ODIwXHU1ODY1XHU1ODZDXHU1ODgxXHU1ODg5XHU1ODlBXHU1ODgwXHU5OUE4XHU5RjE5XHU2MUZGXHU4Mjc5XHU4MjdEXHU4MjdGXHU4MjhGXHU4MjhBXHU4MkE4XHU4Mjg0XHU4MjhFXHU4MjkxXHU4Mjk3XHU4Mjk5XHU4MkFCXHU4MkI4XHU4MkJFXHU4MkIwXHU4MkM4XHU4MkNBXHU4MkUzXHU4Mjk4XHU4MkI3XHU4MkFFXHU4MkNCXHU4MkNDXHU4MkMxXHU4MkE5XHU4MkI0XHU4MkExXHU4MkFBXHU4MjlGXHU4MkM0XHU4MkNFXHU4MkE0XHU4MkUxXHU4MzA5XHU4MkY3XHU4MkU0XHU4MzBGXHU4MzA3XHU4MkRDXHU4MkY0XHU4MkQyXHU4MkQ4XHU4MzBDXHU4MkZCXHU4MkQzXHU4MzExXHU4MzFBXHU4MzA2XHU4MzE0XHU4MzE1XHU4MkUwXHU4MkQ1XHU4MzFDXHU4MzUxXHU4MzVCXHU4MzVDXHU4MzA4XHU4MzkyXHU4MzNDXHU4MzM0XHU4MzMxXHU4MzlCXHU4MzVFXHU4MzJGXHU4MzRGXHU4MzQ3XHU4MzQzXHU4MzVGXHU4MzQwXHU4MzE3XHU4MzYwXHU4MzJEXHU4MzNBXHU4MzMzXHU4MzY2XHU4MzY1XCJdLFxuW1wiZGQ0MFwiLFwiXHU4RUU1XCIsNjJdLFxuW1wiZGQ4MFwiLFwiXHU4RjI0XCIsMzIsXCJcdTgzNjhcdTgzMUJcdTgzNjlcdTgzNkNcdTgzNkFcdTgzNkRcdTgzNkVcdTgzQjBcdTgzNzhcdTgzQjNcdTgzQjRcdTgzQTBcdTgzQUFcdTgzOTNcdTgzOUNcdTgzODVcdTgzN0NcdTgzQjZcdTgzQTlcdTgzN0RcdTgzQjhcdTgzN0JcdTgzOThcdTgzOUVcdTgzQThcdTgzQkFcdTgzQkNcdTgzQzFcdTg0MDFcdTgzRTVcdTgzRDhcdTU4MDdcdTg0MThcdTg0MEJcdTgzRERcdTgzRkRcdTgzRDZcdTg0MUNcdTg0MzhcdTg0MTFcdTg0MDZcdTgzRDRcdTgzREZcdTg0MEZcdTg0MDNcdTgzRjhcdTgzRjlcdTgzRUFcdTgzQzVcdTgzQzBcdTg0MjZcdTgzRjBcdTgzRTFcdTg0NUNcdTg0NTFcdTg0NUFcdTg0NTlcdTg0NzNcdTg0ODdcdTg0ODhcdTg0N0FcdTg0ODlcdTg0NzhcdTg0M0NcdTg0NDZcdTg0NjlcdTg0NzZcdTg0OENcdTg0OEVcdTg0MzFcdTg0NkRcdTg0QzFcdTg0Q0RcdTg0RDBcdTg0RTZcdTg0QkRcdTg0RDNcdTg0Q0FcdTg0QkZcdTg0QkFcdTg0RTBcdTg0QTFcdTg0QjlcdTg0QjRcdTg0OTdcdTg0RTVcdTg0RTNcdTg1MENcdTc1MERcdTg1MzhcdTg0RjBcdTg1MzlcdTg1MUZcdTg1M0FcIl0sXG5bXCJkZTQwXCIsXCJcdThGNDVcIiwzMixcIlx1OEY2QVx1OEY4MFx1OEY4Q1x1OEY5Mlx1OEY5RFx1OEZBMFx1OEZBMVx1OEZBMlx1OEZBNFx1OEZBNVx1OEZBNlx1OEZBN1x1OEZBQVx1OEZBQ1x1OEZBRFx1OEZBRVx1OEZBRlx1OEZCMlx1OEZCM1x1OEZCNFx1OEZCNVx1OEZCN1x1OEZCOFx1OEZCQVx1OEZCQlx1OEZCQ1x1OEZCRlx1OEZDMFx1OEZDM1x1OEZDNlwiXSxcbltcImRlODBcIixcIlx1OEZDOVwiLDQsXCJcdThGQ0ZcdThGRDJcdThGRDZcdThGRDdcdThGREFcdThGRTBcdThGRTFcdThGRTNcdThGRTdcdThGRUNcdThGRUZcdThGRjFcdThGRjJcdThGRjRcdThGRjVcdThGRjZcdThGRkFcdThGRkJcdThGRkNcdThGRkVcdThGRkZcdTkwMDdcdTkwMDhcdTkwMENcdTkwMEVcdTkwMTNcdTkwMTVcdTkwMThcdTg1NTZcdTg1M0JcdTg0RkZcdTg0RkNcdTg1NTlcdTg1NDhcdTg1NjhcdTg1NjRcdTg1NUVcdTg1N0FcdTc3QTJcdTg1NDNcdTg1NzJcdTg1N0JcdTg1QTRcdTg1QThcdTg1ODdcdTg1OEZcdTg1NzlcdTg1QUVcdTg1OUNcdTg1ODVcdTg1QjlcdTg1QjdcdTg1QjBcdTg1RDNcdTg1QzFcdTg1RENcdTg1RkZcdTg2MjdcdTg2MDVcdTg2MjlcdTg2MTZcdTg2M0NcdTVFRkVcdTVGMDhcdTU5M0NcdTU5NDFcdTgwMzdcdTU5NTVcdTU5NUFcdTU5NThcdTUzMEZcdTVDMjJcdTVDMjVcdTVDMkNcdTVDMzRcdTYyNENcdTYyNkFcdTYyOUZcdTYyQkJcdTYyQ0FcdTYyREFcdTYyRDdcdTYyRUVcdTYzMjJcdTYyRjZcdTYzMzlcdTYzNEJcdTYzNDNcdTYzQURcdTYzRjZcdTYzNzFcdTYzN0FcdTYzOEVcdTYzQjRcdTYzNkRcdTYzQUNcdTYzOEFcdTYzNjlcdTYzQUVcdTYzQkNcdTYzRjJcdTYzRjhcdTYzRTBcdTYzRkZcdTYzQzRcdTYzREVcdTYzQ0VcdTY0NTJcdTYzQzZcdTYzQkVcdTY0NDVcdTY0NDFcdTY0MEJcdTY0MUJcdTY0MjBcdTY0MENcdTY0MjZcdTY0MjFcdTY0NUVcdTY0ODRcdTY0NkRcdTY0OTZcIl0sXG5bXCJkZjQwXCIsXCJcdTkwMTlcdTkwMUNcdTkwMjNcdTkwMjRcdTkwMjVcdTkwMjdcIiw1LFwiXHU5MDMwXCIsNCxcIlx1OTAzN1x1OTAzOVx1OTAzQVx1OTAzRFx1OTAzRlx1OTA0MFx1OTA0M1x1OTA0NVx1OTA0Nlx1OTA0OFwiLDQsXCJcdTkwNEVcdTkwNTRcdTkwNTVcdTkwNTZcdTkwNTlcdTkwNUFcdTkwNUNcIiw1LFwiXHU5MDY0XHU5MDY2XHU5MDY3XHU5MDY5XHU5MDZBXHU5MDZCXHU5MDZDXHU5MDZGXCIsNCxcIlx1OTA3NlwiLDYsXCJcdTkwN0VcdTkwODFcIl0sXG5bXCJkZjgwXCIsXCJcdTkwODRcdTkwODVcdTkwODZcdTkwODdcdTkwODlcdTkwOEFcdTkwOENcIiw0LFwiXHU5MDkyXHU5MDk0XHU5MDk2XHU5MDk4XHU5MDlBXHU5MDlDXHU5MDlFXHU5MDlGXHU5MEEwXHU5MEE0XHU5MEE1XHU5MEE3XHU5MEE4XHU5MEE5XHU5MEFCXHU5MEFEXHU5MEIyXHU5MEI3XHU5MEJDXHU5MEJEXHU5MEJGXHU5MEMwXHU2NDdBXHU2NEI3XHU2NEI4XHU2NDk5XHU2NEJBXHU2NEMwXHU2NEQwXHU2NEQ3XHU2NEU0XHU2NEUyXHU2NTA5XHU2NTI1XHU2NTJFXHU1RjBCXHU1RkQyXHU3NTE5XHU1RjExXHU1MzVGXHU1M0YxXHU1M0ZEXHU1M0U5XHU1M0U4XHU1M0ZCXHU1NDEyXHU1NDE2XHU1NDA2XHU1NDRCXHU1NDUyXHU1NDUzXHU1NDU0XHU1NDU2XHU1NDQzXHU1NDIxXHU1NDU3XHU1NDU5XHU1NDIzXHU1NDMyXHU1NDgyXHU1NDk0XHU1NDc3XHU1NDcxXHU1NDY0XHU1NDlBXHU1NDlCXHU1NDg0XHU1NDc2XHU1NDY2XHU1NDlEXHU1NEQwXHU1NEFEXHU1NEMyXHU1NEI0XHU1NEQyXHU1NEE3XHU1NEE2XHU1NEQzXHU1NEQ0XHU1NDcyXHU1NEEzXHU1NEQ1XHU1NEJCXHU1NEJGXHU1NENDXHU1NEQ5XHU1NERBXHU1NERDXHU1NEE5XHU1NEFBXHU1NEE0XHU1NEREXHU1NENGXHU1NERFXHU1NTFCXHU1NEU3XHU1NTIwXHU1NEZEXHU1NTE0XHU1NEYzXHU1NTIyXHU1NTIzXHU1NTBGXHU1NTExXHU1NTI3XHU1NTJBXHU1NTY3XHU1NThGXHU1NUI1XHU1NTQ5XHU1NTZEXHU1NTQxXHU1NTU1XHU1NTNGXHU1NTUwXHU1NTNDXCJdLFxuW1wiZTA0MFwiLFwiXHU5MEMyXHU5MEMzXHU5MEM2XHU5MEM4XHU5MEM5XHU5MENCXHU5MENDXHU5MENEXHU5MEQyXHU5MEQ0XHU5MEQ1XHU5MEQ2XHU5MEQ4XHU5MEQ5XHU5MERBXHU5MERFXHU5MERGXHU5MEUwXHU5MEUzXHU5MEU0XHU5MEU1XHU5MEU5XHU5MEVBXHU5MEVDXHU5MEVFXHU5MEYwXHU5MEYxXHU5MEYyXHU5MEYzXHU5MEY1XHU5MEY2XHU5MEY3XHU5MEY5XHU5MEZBXHU5MEZCXHU5MEZDXHU5MEZGXHU5MTAwXHU5MTAxXHU5MTAzXHU5MTA1XCIsMTksXCJcdTkxMUFcdTkxMUJcdTkxMUNcIl0sXG5bXCJlMDgwXCIsXCJcdTkxMURcdTkxMUZcdTkxMjBcdTkxMjFcdTkxMjRcIiwxMCxcIlx1OTEzMFx1OTEzMlwiLDYsXCJcdTkxM0FcIiw4LFwiXHU5MTQ0XHU1NTM3XHU1NTU2XHU1NTc1XHU1NTc2XHU1NTc3XHU1NTMzXHU1NTMwXHU1NTVDXHU1NThCXHU1NUQyXHU1NTgzXHU1NUIxXHU1NUI5XHU1NTg4XHU1NTgxXHU1NTlGXHU1NTdFXHU1NUQ2XHU1NTkxXHU1NTdCXHU1NURGXHU1NUJEXHU1NUJFXHU1NTk0XHU1NTk5XHU1NUVBXHU1NUY3XHU1NUM5XHU1NjFGXHU1NUQxXHU1NUVCXHU1NUVDXHU1NUQ0XHU1NUU2XHU1NUREXHU1NUM0XHU1NUVGXHU1NUU1XHU1NUYyXHU1NUYzXHU1NUNDXHU1NUNEXHU1NUU4XHU1NUY1XHU1NUU0XHU4Rjk0XHU1NjFFXHU1NjA4XHU1NjBDXHU1NjAxXHU1NjI0XHU1NjIzXHU1NUZFXHU1NjAwXHU1NjI3XHU1NjJEXHU1NjU4XHU1NjM5XHU1NjU3XHU1NjJDXHU1NjREXHU1NjYyXHU1NjU5XHU1NjVDXHU1NjRDXHU1NjU0XHU1Njg2XHU1NjY0XHU1NjcxXHU1NjZCXHU1NjdCXHU1NjdDXHU1Njg1XHU1NjkzXHU1NkFGXHU1NkQ0XHU1NkQ3XHU1NkREXHU1NkUxXHU1NkY1XHU1NkVCXHU1NkY5XHU1NkZGXHU1NzA0XHU1NzBBXHU1NzA5XHU1NzFDXHU1RTBGXHU1RTE5XHU1RTE0XHU1RTExXHU1RTMxXHU1RTNCXHU1RTNDXCJdLFxuW1wiZTE0MFwiLFwiXHU5MTQ1XHU5MTQ3XHU5MTQ4XHU5MTUxXHU5MTUzXHU5MTU0XHU5MTU1XHU5MTU2XHU5MTU4XHU5MTU5XHU5MTVCXHU5MTVDXHU5MTVGXHU5MTYwXHU5MTY2XHU5MTY3XHU5MTY4XHU5MTZCXHU5MTZEXHU5MTczXHU5MTdBXHU5MTdCXHU5MTdDXHU5MTgwXCIsNCxcIlx1OTE4Nlx1OTE4OFx1OTE4QVx1OTE4RVx1OTE4Rlx1OTE5M1wiLDYsXCJcdTkxOUNcIiw1LFwiXHU5MUE0XCIsNSxcIlx1OTFBQlx1OTFBQ1x1OTFCMFx1OTFCMVx1OTFCMlx1OTFCM1x1OTFCNlx1OTFCN1x1OTFCOFx1OTFCOVx1OTFCQlwiXSxcbltcImUxODBcIixcIlx1OTFCQ1wiLDEwLFwiXHU5MUM4XHU5MUNCXHU5MUQwXHU5MUQyXCIsOSxcIlx1OTFERFwiLDgsXCJcdTVFMzdcdTVFNDRcdTVFNTRcdTVFNUJcdTVFNUVcdTVFNjFcdTVDOENcdTVDN0FcdTVDOERcdTVDOTBcdTVDOTZcdTVDODhcdTVDOThcdTVDOTlcdTVDOTFcdTVDOUFcdTVDOUNcdTVDQjVcdTVDQTJcdTVDQkRcdTVDQUNcdTVDQUJcdTVDQjFcdTVDQTNcdTVDQzFcdTVDQjdcdTVDQzRcdTVDRDJcdTVDRTRcdTVDQ0JcdTVDRTVcdTVEMDJcdTVEMDNcdTVEMjdcdTVEMjZcdTVEMkVcdTVEMjRcdTVEMUVcdTVEMDZcdTVEMUJcdTVENThcdTVEM0VcdTVEMzRcdTVEM0RcdTVENkNcdTVENUJcdTVENkZcdTVENURcdTVENkJcdTVENEJcdTVENEFcdTVENjlcdTVENzRcdTVEODJcdTVEOTlcdTVEOURcdThDNzNcdTVEQjdcdTVEQzVcdTVGNzNcdTVGNzdcdTVGODJcdTVGODdcdTVGODlcdTVGOENcdTVGOTVcdTVGOTlcdTVGOUNcdTVGQThcdTVGQURcdTVGQjVcdTVGQkNcdTg4NjJcdTVGNjFcdTcyQURcdTcyQjBcdTcyQjRcdTcyQjdcdTcyQjhcdTcyQzNcdTcyQzFcdTcyQ0VcdTcyQ0RcdTcyRDJcdTcyRThcdTcyRUZcdTcyRTlcdTcyRjJcdTcyRjRcdTcyRjdcdTczMDFcdTcyRjNcdTczMDNcdTcyRkFcIl0sXG5bXCJlMjQwXCIsXCJcdTkxRTZcIiw2Ml0sXG5bXCJlMjgwXCIsXCJcdTkyMjVcIiwzMixcIlx1NzJGQlx1NzMxN1x1NzMxM1x1NzMyMVx1NzMwQVx1NzMxRVx1NzMxRFx1NzMxNVx1NzMyMlx1NzMzOVx1NzMyNVx1NzMyQ1x1NzMzOFx1NzMzMVx1NzM1MFx1NzM0RFx1NzM1N1x1NzM2MFx1NzM2Q1x1NzM2Rlx1NzM3RVx1ODIxQlx1NTkyNVx1OThFN1x1NTkyNFx1NTkwMlx1OTk2M1x1OTk2N1wiLDUsXCJcdTk5NzRcdTk5NzdcdTk5N0RcdTk5ODBcdTk5ODRcdTk5ODdcdTk5OEFcdTk5OERcdTk5OTBcdTk5OTFcdTk5OTNcdTk5OTRcdTk5OTVcdTVFODBcdTVFOTFcdTVFOEJcdTVFOTZcdTVFQTVcdTVFQTBcdTVFQjlcdTVFQjVcdTVFQkVcdTVFQjNcdThENTNcdTVFRDJcdTVFRDFcdTVFREJcdTVFRThcdTVFRUFcdTgxQkFcdTVGQzRcdTVGQzlcdTVGRDZcdTVGQ0ZcdTYwMDNcdTVGRUVcdTYwMDRcdTVGRTFcdTVGRTRcdTVGRkVcdTYwMDVcdTYwMDZcdTVGRUFcdTVGRURcdTVGRjhcdTYwMTlcdTYwMzVcdTYwMjZcdTYwMUJcdTYwMEZcdTYwMERcdTYwMjlcdTYwMkJcdTYwMEFcdTYwM0ZcdTYwMjFcdTYwNzhcdTYwNzlcdTYwN0JcdTYwN0FcdTYwNDJcIl0sXG5bXCJlMzQwXCIsXCJcdTkyNDZcIiw0NSxcIlx1OTI3NVwiLDE2XSxcbltcImUzODBcIixcIlx1OTI4NlwiLDcsXCJcdTkyOEZcIiwyNCxcIlx1NjA2QVx1NjA3RFx1NjA5Nlx1NjA5QVx1NjBBRFx1NjA5RFx1NjA4M1x1NjA5Mlx1NjA4Q1x1NjA5Qlx1NjBFQ1x1NjBCQlx1NjBCMVx1NjBERFx1NjBEOFx1NjBDNlx1NjBEQVx1NjBCNFx1NjEyMFx1NjEyNlx1NjExNVx1NjEyM1x1NjBGNFx1NjEwMFx1NjEwRVx1NjEyQlx1NjE0QVx1NjE3NVx1NjFBQ1x1NjE5NFx1NjFBN1x1NjFCN1x1NjFENFx1NjFGNVx1NUZERFx1OTZCM1x1OTVFOVx1OTVFQlx1OTVGMVx1OTVGM1x1OTVGNVx1OTVGNlx1OTVGQ1x1OTVGRVx1OTYwM1x1OTYwNFx1OTYwNlx1OTYwOFx1OTYwQVx1OTYwQlx1OTYwQ1x1OTYwRFx1OTYwRlx1OTYxMlx1OTYxNVx1OTYxNlx1OTYxN1x1OTYxOVx1OTYxQVx1NEUyQ1x1NzIzRlx1NjIxNVx1NkMzNVx1NkM1NFx1NkM1Q1x1NkM0QVx1NkNBM1x1NkM4NVx1NkM5MFx1NkM5NFx1NkM4Q1x1NkM2OFx1NkM2OVx1NkM3NFx1NkM3Nlx1NkM4Nlx1NkNBOVx1NkNEMFx1NkNENFx1NkNBRFx1NkNGN1x1NkNGOFx1NkNGMVx1NkNEN1x1NkNCMlx1NkNFMFx1NkNENlx1NkNGQVx1NkNFQlx1NkNFRVx1NkNCMVx1NkNEM1x1NkNFRlx1NkNGRVwiXSxcbltcImU0NDBcIixcIlx1OTJBOFwiLDUsXCJcdTkyQUZcIiwyNCxcIlx1OTJDOVwiLDMxXSxcbltcImU0ODBcIixcIlx1OTJFOVwiLDMyLFwiXHU2RDM5XHU2RDI3XHU2RDBDXHU2RDQzXHU2RDQ4XHU2RDA3XHU2RDA0XHU2RDE5XHU2RDBFXHU2RDJCXHU2RDREXHU2RDJFXHU2RDM1XHU2RDFBXHU2RDRGXHU2RDUyXHU2RDU0XHU2RDMzXHU2RDkxXHU2RDZGXHU2RDlFXHU2REEwXHU2RDVFXHU2RDkzXHU2RDk0XHU2RDVDXHU2RDYwXHU2RDdDXHU2RDYzXHU2RTFBXHU2REM3XHU2REM1XHU2RERFXHU2RTBFXHU2REJGXHU2REUwXHU2RTExXHU2REU2XHU2REREXHU2REQ5XHU2RTE2XHU2REFCXHU2RTBDXHU2REFFXHU2RTJCXHU2RTZFXHU2RTRFXHU2RTZCXHU2RUIyXHU2RTVGXHU2RTg2XHU2RTUzXHU2RTU0XHU2RTMyXHU2RTI1XHU2RTQ0XHU2RURGXHU2RUIxXHU2RTk4XHU2RUUwXHU2RjJEXHU2RUUyXHU2RUE1XHU2RUE3XHU2RUJEXHU2RUJCXHU2RUI3XHU2RUQ3XHU2RUI0XHU2RUNGXHU2RThGXHU2RUMyXHU2RTlGXHU2RjYyXHU2RjQ2XHU2RjQ3XHU2RjI0XHU2RjE1XHU2RUY5XHU2RjJGXHU2RjM2XHU2RjRCXHU2Rjc0XHU2RjJBXHU2RjA5XHU2RjI5XHU2Rjg5XHU2RjhEXHU2RjhDXHU2Rjc4XHU2RjcyXHU2RjdDXHU2RjdBXHU2RkQxXCJdLFxuW1wiZTU0MFwiLFwiXHU5MzBBXCIsNTEsXCJcdTkzM0ZcIiwxMF0sXG5bXCJlNTgwXCIsXCJcdTkzNEFcIiwzMSxcIlx1OTM2Qlx1NkZDOVx1NkZBN1x1NkZCOVx1NkZCNlx1NkZDMlx1NkZFMVx1NkZFRVx1NkZERVx1NkZFMFx1NkZFRlx1NzAxQVx1NzAyM1x1NzAxQlx1NzAzOVx1NzAzNVx1NzA0Rlx1NzA1RVx1NUI4MFx1NUI4NFx1NUI5NVx1NUI5M1x1NUJBNVx1NUJCOFx1NzUyRlx1OUE5RVx1NjQzNFx1NUJFNFx1NUJFRVx1ODkzMFx1NUJGMFx1OEU0N1x1OEIwN1x1OEZCNlx1OEZEM1x1OEZENVx1OEZFNVx1OEZFRVx1OEZFNFx1OEZFOVx1OEZFNlx1OEZGM1x1OEZFOFx1OTAwNVx1OTAwNFx1OTAwQlx1OTAyNlx1OTAxMVx1OTAwRFx1OTAxNlx1OTAyMVx1OTAzNVx1OTAzNlx1OTAyRFx1OTAyRlx1OTA0NFx1OTA1MVx1OTA1Mlx1OTA1MFx1OTA2OFx1OTA1OFx1OTA2Mlx1OTA1Qlx1NjZCOVx1OTA3NFx1OTA3RFx1OTA4Mlx1OTA4OFx1OTA4M1x1OTA4Qlx1NUY1MFx1NUY1N1x1NUY1Nlx1NUY1OFx1NUMzQlx1NTRBQlx1NUM1MFx1NUM1OVx1NUI3MVx1NUM2M1x1NUM2Nlx1N0ZCQ1x1NUYyQVx1NUYyOVx1NUYyRFx1ODI3NFx1NUYzQ1x1OUIzQlx1NUM2RVx1NTk4MVx1NTk4M1x1NTk4RFx1NTlBOVx1NTlBQVx1NTlBM1wiXSxcbltcImU2NDBcIixcIlx1OTM2Q1wiLDM0LFwiXHU5MzkwXCIsMjddLFxuW1wiZTY4MFwiLFwiXHU5M0FDXCIsMjksXCJcdTkzQ0JcdTkzQ0NcdTkzQ0RcdTU5OTdcdTU5Q0FcdTU5QUJcdTU5OUVcdTU5QTRcdTU5RDJcdTU5QjJcdTU5QUZcdTU5RDdcdTU5QkVcdTVBMDVcdTVBMDZcdTU5RERcdTVBMDhcdTU5RTNcdTU5RDhcdTU5RjlcdTVBMENcdTVBMDlcdTVBMzJcdTVBMzRcdTVBMTFcdTVBMjNcdTVBMTNcdTVBNDBcdTVBNjdcdTVBNEFcdTVBNTVcdTVBM0NcdTVBNjJcdTVBNzVcdTgwRUNcdTVBQUFcdTVBOUJcdTVBNzdcdTVBN0FcdTVBQkVcdTVBRUJcdTVBQjJcdTVBRDJcdTVBRDRcdTVBQjhcdTVBRTBcdTVBRTNcdTVBRjFcdTVBRDZcdTVBRTZcdTVBRDhcdTVBRENcdTVCMDlcdTVCMTdcdTVCMTZcdTVCMzJcdTVCMzdcdTVCNDBcdTVDMTVcdTVDMUNcdTVCNUFcdTVCNjVcdTVCNzNcdTVCNTFcdTVCNTNcdTVCNjJcdTlBNzVcdTlBNzdcdTlBNzhcdTlBN0FcdTlBN0ZcdTlBN0RcdTlBODBcdTlBODFcdTlBODVcdTlBODhcdTlBOEFcdTlBOTBcdTlBOTJcdTlBOTNcdTlBOTZcdTlBOThcdTlBOUJcdTlBOUNcdTlBOURcdTlBOUZcdTlBQTBcdTlBQTJcdTlBQTNcdTlBQTVcdTlBQTdcdTdFOUZcdTdFQTFcdTdFQTNcdTdFQTVcdTdFQThcdTdFQTlcIl0sXG5bXCJlNzQwXCIsXCJcdTkzQ0VcIiw3LFwiXHU5M0Q3XCIsNTRdLFxuW1wiZTc4MFwiLFwiXHU5NDBFXCIsMzIsXCJcdTdFQURcdTdFQjBcdTdFQkVcdTdFQzBcdTdFQzFcdTdFQzJcdTdFQzlcdTdFQ0JcdTdFQ0NcdTdFRDBcdTdFRDRcdTdFRDdcdTdFREJcdTdFRTBcdTdFRTFcdTdFRThcdTdFRUJcdTdFRUVcdTdFRUZcdTdFRjFcdTdFRjJcdTdGMERcdTdFRjZcdTdFRkFcdTdFRkJcdTdFRkVcdTdGMDFcdTdGMDJcdTdGMDNcdTdGMDdcdTdGMDhcdTdGMEJcdTdGMENcdTdGMEZcdTdGMTFcdTdGMTJcdTdGMTdcdTdGMTlcdTdGMUNcdTdGMUJcdTdGMUZcdTdGMjFcIiw2LFwiXHU3RjJBXHU3RjJCXHU3RjJDXHU3RjJEXHU3RjJGXCIsNCxcIlx1N0YzNVx1NUU3QVx1NzU3Rlx1NUREQlx1NzUzRVx1OTA5NVx1NzM4RVx1NzM5MVx1NzNBRVx1NzNBMlx1NzM5Rlx1NzNDRlx1NzNDMlx1NzNEMVx1NzNCN1x1NzNCM1x1NzNDMFx1NzNDOVx1NzNDOFx1NzNFNVx1NzNEOVx1OTg3Q1x1NzQwQVx1NzNFOVx1NzNFN1x1NzNERVx1NzNCQVx1NzNGMlx1NzQwRlx1NzQyQVx1NzQ1Qlx1NzQyNlx1NzQyNVx1NzQyOFx1NzQzMFx1NzQyRVx1NzQyQ1wiXSxcbltcImU4NDBcIixcIlx1OTQyRlwiLDE0LFwiXHU5NDNGXCIsNDMsXCJcdTk0NkNcdTk0NkRcdTk0NkVcdTk0NkZcIl0sXG5bXCJlODgwXCIsXCJcdTk0NzBcIiwyMCxcIlx1OTQ5MVx1OTQ5Nlx1OTQ5OFx1OTRDN1x1OTRDRlx1OTREM1x1OTRENFx1OTREQVx1OTRFNlx1OTRGQlx1OTUxQ1x1OTUyMFx1NzQxQlx1NzQxQVx1NzQ0MVx1NzQ1Q1x1NzQ1N1x1NzQ1NVx1NzQ1OVx1NzQ3N1x1NzQ2RFx1NzQ3RVx1NzQ5Q1x1NzQ4RVx1NzQ4MFx1NzQ4MVx1NzQ4N1x1NzQ4Qlx1NzQ5RVx1NzRBOFx1NzRBOVx1NzQ5MFx1NzRBN1x1NzREMlx1NzRCQVx1OTdFQVx1OTdFQlx1OTdFQ1x1Njc0Q1x1Njc1M1x1Njc1RVx1Njc0OFx1Njc2OVx1NjdBNVx1Njc4N1x1Njc2QVx1Njc3M1x1Njc5OFx1NjdBN1x1Njc3NVx1NjdBOFx1Njc5RVx1NjdBRFx1Njc4Qlx1Njc3N1x1Njc3Q1x1NjdGMFx1NjgwOVx1NjdEOFx1NjgwQVx1NjdFOVx1NjdCMFx1NjgwQ1x1NjdEOVx1NjdCNVx1NjdEQVx1NjdCM1x1NjdERFx1NjgwMFx1NjdDM1x1NjdCOFx1NjdFMlx1NjgwRVx1NjdDMVx1NjdGRFx1NjgzMlx1NjgzM1x1Njg2MFx1Njg2MVx1Njg0RVx1Njg2Mlx1Njg0NFx1Njg2NFx1Njg4M1x1NjgxRFx1Njg1NVx1Njg2Nlx1Njg0MVx1Njg2N1x1Njg0MFx1NjgzRVx1Njg0QVx1Njg0OVx1NjgyOVx1NjhCNVx1Njg4Rlx1Njg3NFx1Njg3N1x1Njg5M1x1Njg2Qlx1NjhDMlx1Njk2RVx1NjhGQ1x1NjkxRlx1NjkyMFx1NjhGOVwiXSxcbltcImU5NDBcIixcIlx1OTUyN1x1OTUzM1x1OTUzRFx1OTU0M1x1OTU0OFx1OTU0Qlx1OTU1NVx1OTU1QVx1OTU2MFx1OTU2RVx1OTU3NFx1OTU3NVx1OTU3N1wiLDcsXCJcdTk1ODBcIiw0Ml0sXG5bXCJlOTgwXCIsXCJcdTk1QUJcIiwzMixcIlx1NjkyNFx1NjhGMFx1NjkwQlx1NjkwMVx1Njk1N1x1NjhFM1x1NjkxMFx1Njk3MVx1NjkzOVx1Njk2MFx1Njk0Mlx1Njk1RFx1Njk4NFx1Njk2Qlx1Njk4MFx1Njk5OFx1Njk3OFx1NjkzNFx1NjlDQ1x1Njk4N1x1Njk4OFx1NjlDRVx1Njk4OVx1Njk2Nlx1Njk2M1x1Njk3OVx1Njk5Qlx1NjlBN1x1NjlCQlx1NjlBQlx1NjlBRFx1NjlENFx1NjlCMVx1NjlDMVx1NjlDQVx1NjlERlx1Njk5NVx1NjlFMFx1Njk4RFx1NjlGRlx1NkEyRlx1NjlFRFx1NkExN1x1NkExOFx1NkE2NVx1NjlGMlx1NkE0NFx1NkEzRVx1NkFBMFx1NkE1MFx1NkE1Qlx1NkEzNVx1NkE4RVx1NkE3OVx1NkEzRFx1NkEyOFx1NkE1OFx1NkE3Q1x1NkE5MVx1NkE5MFx1NkFBOVx1NkE5N1x1NkFBQlx1NzMzN1x1NzM1Mlx1NkI4MVx1NkI4Mlx1NkI4N1x1NkI4NFx1NkI5Mlx1NkI5M1x1NkI4RFx1NkI5QVx1NkI5Qlx1NkJBMVx1NkJBQVx1OEY2Qlx1OEY2RFx1OEY3MVx1OEY3Mlx1OEY3M1x1OEY3NVx1OEY3Nlx1OEY3OFx1OEY3N1x1OEY3OVx1OEY3QVx1OEY3Q1x1OEY3RVx1OEY4MVx1OEY4Mlx1OEY4NFx1OEY4N1x1OEY4QlwiXSxcbltcImVhNDBcIixcIlx1OTVDQ1wiLDI3LFwiXHU5NUVDXHU5NUZGXHU5NjA3XHU5NjEzXHU5NjE4XHU5NjFCXHU5NjFFXHU5NjIwXHU5NjIzXCIsNixcIlx1OTYyQlx1OTYyQ1x1OTYyRFx1OTYyRlx1OTYzMFx1OTYzN1x1OTYzOFx1OTYzOVx1OTYzQVx1OTYzRVx1OTY0MVx1OTY0M1x1OTY0QVx1OTY0RVx1OTY0Rlx1OTY1MVx1OTY1Mlx1OTY1M1x1OTY1Nlx1OTY1N1wiXSxcbltcImVhODBcIixcIlx1OTY1OFx1OTY1OVx1OTY1QVx1OTY1Q1x1OTY1RFx1OTY1RVx1OTY2MFx1OTY2M1x1OTY2NVx1OTY2Nlx1OTY2Qlx1OTY2RFwiLDQsXCJcdTk2NzNcdTk2NzhcIiwxMixcIlx1OTY4N1x1OTY4OVx1OTY4QVx1OEY4RFx1OEY4RVx1OEY4Rlx1OEY5OFx1OEY5QVx1OEVDRVx1NjIwQlx1NjIxN1x1NjIxQlx1NjIxRlx1NjIyMlx1NjIyMVx1NjIyNVx1NjIyNFx1NjIyQ1x1ODFFN1x1NzRFRlx1NzRGNFx1NzRGRlx1NzUwRlx1NzUxMVx1NzUxM1x1NjUzNFx1NjVFRVx1NjVFRlx1NjVGMFx1NjYwQVx1NjYxOVx1Njc3Mlx1NjYwM1x1NjYxNVx1NjYwMFx1NzA4NVx1NjZGN1x1NjYxRFx1NjYzNFx1NjYzMVx1NjYzNlx1NjYzNVx1ODAwNlx1NjY1Rlx1NjY1NFx1NjY0MVx1NjY0Rlx1NjY1Nlx1NjY2MVx1NjY1N1x1NjY3N1x1NjY4NFx1NjY4Q1x1NjZBN1x1NjY5RFx1NjZCRVx1NjZEQlx1NjZEQ1x1NjZFNlx1NjZFOVx1OEQzMlx1OEQzM1x1OEQzNlx1OEQzQlx1OEQzRFx1OEQ0MFx1OEQ0NVx1OEQ0Nlx1OEQ0OFx1OEQ0OVx1OEQ0N1x1OEQ0RFx1OEQ1NVx1OEQ1OVx1ODlDN1x1ODlDQVx1ODlDQlx1ODlDQ1x1ODlDRVx1ODlDRlx1ODlEMFx1ODlEMVx1NzI2RVx1NzI5Rlx1NzI1RFx1NzI2Nlx1NzI2Rlx1NzI3RVx1NzI3Rlx1NzI4NFx1NzI4Qlx1NzI4RFx1NzI4Rlx1NzI5Mlx1NjMwOFx1NjMzMlx1NjNCMFwiXSxcbltcImViNDBcIixcIlx1OTY4Q1x1OTY4RVx1OTY5MVx1OTY5Mlx1OTY5M1x1OTY5NVx1OTY5Nlx1OTY5QVx1OTY5Qlx1OTY5RFwiLDksXCJcdTk2QThcIiw3LFwiXHU5NkIxXHU5NkIyXHU5NkI0XHU5NkI1XHU5NkI3XHU5NkI4XHU5NkJBXHU5NkJCXHU5NkJGXHU5NkMyXHU5NkMzXHU5NkM4XHU5NkNBXHU5NkNCXHU5NkQwXHU5NkQxXHU5NkQzXHU5NkQ0XHU5NkQ2XCIsOSxcIlx1OTZFMVwiLDYsXCJcdTk2RUJcIl0sXG5bXCJlYjgwXCIsXCJcdTk2RUNcdTk2RURcdTk2RUVcdTk2RjBcdTk2RjFcdTk2RjJcdTk2RjRcdTk2RjVcdTk2RjhcdTk2RkFcdTk2RkJcdTk2RkNcdTk2RkRcdTk2RkZcdTk3MDJcdTk3MDNcdTk3MDVcdTk3MEFcdTk3MEJcdTk3MENcdTk3MTBcdTk3MTFcdTk3MTJcdTk3MTRcdTk3MTVcdTk3MTdcIiw0LFwiXHU5NzFEXHU5NzFGXHU5NzIwXHU2NDNGXHU2NEQ4XHU4MDA0XHU2QkVBXHU2QkYzXHU2QkZEXHU2QkY1XHU2QkY5XHU2QzA1XHU2QzA3XHU2QzA2XHU2QzBEXHU2QzE1XHU2QzE4XHU2QzE5XHU2QzFBXHU2QzIxXHU2QzI5XHU2QzI0XHU2QzJBXHU2QzMyXHU2NTM1XHU2NTU1XHU2NTZCXHU3MjREXHU3MjUyXHU3MjU2XHU3MjMwXHU4NjYyXHU1MjE2XHU4MDlGXHU4MDlDXHU4MDkzXHU4MEJDXHU2NzBBXHU4MEJEXHU4MEIxXHU4MEFCXHU4MEFEXHU4MEI0XHU4MEI3XHU4MEU3XHU4MEU4XHU4MEU5XHU4MEVBXHU4MERCXHU4MEMyXHU4MEM0XHU4MEQ5XHU4MENEXHU4MEQ3XHU2NzEwXHU4MEREXHU4MEVCXHU4MEYxXHU4MEY0XHU4MEVEXHU4MTBEXHU4MTBFXHU4MEYyXHU4MEZDXHU2NzE1XHU4MTEyXHU4QzVBXHU4MTM2XHU4MTFFXHU4MTJDXHU4MTE4XHU4MTMyXHU4MTQ4XHU4MTRDXHU4MTUzXHU4MTc0XHU4MTU5XHU4MTVBXHU4MTcxXHU4MTYwXHU4MTY5XHU4MTdDXHU4MTdEXHU4MTZEXHU4MTY3XHU1ODREXHU1QUI1XHU4MTg4XHU4MTgyXHU4MTkxXHU2RUQ1XHU4MUEzXHU4MUFBXHU4MUNDXHU2NzI2XHU4MUNBXHU4MUJCXCJdLFxuW1wiZWM0MFwiLFwiXHU5NzIxXCIsOCxcIlx1OTcyQlx1OTcyQ1x1OTcyRVx1OTcyRlx1OTczMVx1OTczM1wiLDQsXCJcdTk3M0FcdTk3M0JcdTk3M0NcdTk3M0RcdTk3M0ZcIiwxOCxcIlx1OTc1NFx1OTc1NVx1OTc1N1x1OTc1OFx1OTc1QVx1OTc1Q1x1OTc1RFx1OTc1Rlx1OTc2M1x1OTc2NFx1OTc2Nlx1OTc2N1x1OTc2OFx1OTc2QVwiLDddLFxuW1wiZWM4MFwiLFwiXHU5NzcyXHU5Nzc1XHU5Nzc3XCIsNCxcIlx1OTc3RFwiLDcsXCJcdTk3ODZcIiw0LFwiXHU5NzhDXHU5NzhFXHU5NzhGXHU5NzkwXHU5NzkzXHU5Nzk1XHU5Nzk2XHU5Nzk3XHU5Nzk5XCIsNCxcIlx1ODFDMVx1ODFBNlx1NkIyNFx1NkIzN1x1NkIzOVx1NkI0M1x1NkI0Nlx1NkI1OVx1OThEMVx1OThEMlx1OThEM1x1OThENVx1OThEOVx1OThEQVx1NkJCM1x1NUY0MFx1NkJDMlx1ODlGM1x1NjU5MFx1OUY1MVx1NjU5M1x1NjVCQ1x1NjVDNlx1NjVDNFx1NjVDM1x1NjVDQ1x1NjVDRVx1NjVEMlx1NjVENlx1NzA4MFx1NzA5Q1x1NzA5Nlx1NzA5RFx1NzBCQlx1NzBDMFx1NzBCN1x1NzBBQlx1NzBCMVx1NzBFOFx1NzBDQVx1NzExMFx1NzExM1x1NzExNlx1NzEyRlx1NzEzMVx1NzE3M1x1NzE1Q1x1NzE2OFx1NzE0NVx1NzE3Mlx1NzE0QVx1NzE3OFx1NzE3QVx1NzE5OFx1NzFCM1x1NzFCNVx1NzFBOFx1NzFBMFx1NzFFMFx1NzFENFx1NzFFN1x1NzFGOVx1NzIxRFx1NzIyOFx1NzA2Q1x1NzExOFx1NzE2Nlx1NzFCOVx1NjIzRVx1NjIzRFx1NjI0M1x1NjI0OFx1NjI0OVx1NzkzQlx1Nzk0MFx1Nzk0Nlx1Nzk0OVx1Nzk1Qlx1Nzk1Q1x1Nzk1M1x1Nzk1QVx1Nzk2Mlx1Nzk1N1x1Nzk2MFx1Nzk2Rlx1Nzk2N1x1Nzk3QVx1Nzk4NVx1Nzk4QVx1Nzk5QVx1NzlBN1x1NzlCM1x1NUZEMVx1NUZEMFwiXSxcbltcImVkNDBcIixcIlx1OTc5RVx1OTc5Rlx1OTdBMVx1OTdBMlx1OTdBNFwiLDYsXCJcdTk3QUNcdTk3QUVcdTk3QjBcdTk3QjFcdTk3QjNcdTk3QjVcIiw0Nl0sXG5bXCJlZDgwXCIsXCJcdTk3RTRcdTk3RTVcdTk3RThcdTk3RUVcIiw0LFwiXHU5N0Y0XHU5N0Y3XCIsMjMsXCJcdTYwM0NcdTYwNURcdTYwNUFcdTYwNjdcdTYwNDFcdTYwNTlcdTYwNjNcdTYwQUJcdTYxMDZcdTYxMERcdTYxNURcdTYxQTlcdTYxOURcdTYxQ0JcdTYxRDFcdTYyMDZcdTgwODBcdTgwN0ZcdTZDOTNcdTZDRjZcdTZERkNcdTc3RjZcdTc3RjhcdTc4MDBcdTc4MDlcdTc4MTdcdTc4MThcdTc4MTFcdTY1QUJcdTc4MkRcdTc4MUNcdTc4MURcdTc4MzlcdTc4M0FcdTc4M0JcdTc4MUZcdTc4M0NcdTc4MjVcdTc4MkNcdTc4MjNcdTc4MjlcdTc4NEVcdTc4NkRcdTc4NTZcdTc4NTdcdTc4MjZcdTc4NTBcdTc4NDdcdTc4NENcdTc4NkFcdTc4OUJcdTc4OTNcdTc4OUFcdTc4ODdcdTc4OUNcdTc4QTFcdTc4QTNcdTc4QjJcdTc4QjlcdTc4QTVcdTc4RDRcdTc4RDlcdTc4QzlcdTc4RUNcdTc4RjJcdTc5MDVcdTc4RjRcdTc5MTNcdTc5MjRcdTc5MUVcdTc5MzRcdTlGOUJcdTlFRjlcdTlFRkJcdTlFRkNcdTc2RjFcdTc3MDRcdTc3MERcdTc2RjlcdTc3MDdcdTc3MDhcdTc3MUFcdTc3MjJcdTc3MTlcdTc3MkRcdTc3MjZcdTc3MzVcdTc3MzhcdTc3NTBcdTc3NTFcdTc3NDdcdTc3NDNcdTc3NUFcdTc3NjhcIl0sXG5bXCJlZTQwXCIsXCJcdTk4MEZcIiw2Ml0sXG5bXCJlZTgwXCIsXCJcdTk4NEVcIiwzMixcIlx1Nzc2Mlx1Nzc2NVx1Nzc3Rlx1Nzc4RFx1Nzc3RFx1Nzc4MFx1Nzc4Q1x1Nzc5MVx1Nzc5Rlx1NzdBMFx1NzdCMFx1NzdCNVx1NzdCRFx1NzUzQVx1NzU0MFx1NzU0RVx1NzU0Qlx1NzU0OFx1NzU1Qlx1NzU3Mlx1NzU3OVx1NzU4M1x1N0Y1OFx1N0Y2MVx1N0Y1Rlx1OEE0OFx1N0Y2OFx1N0Y3NFx1N0Y3MVx1N0Y3OVx1N0Y4MVx1N0Y3RVx1NzZDRFx1NzZFNVx1ODgzMlx1OTQ4NVx1OTQ4Nlx1OTQ4N1x1OTQ4Qlx1OTQ4QVx1OTQ4Q1x1OTQ4RFx1OTQ4Rlx1OTQ5MFx1OTQ5NFx1OTQ5N1x1OTQ5NVx1OTQ5QVx1OTQ5Qlx1OTQ5Q1x1OTRBM1x1OTRBNFx1OTRBQlx1OTRBQVx1OTRBRFx1OTRBQ1x1OTRBRlx1OTRCMFx1OTRCMlx1OTRCNFx1OTRCNlwiLDQsXCJcdTk0QkNcdTk0QkRcdTk0QkZcdTk0QzRcdTk0QzhcIiw2LFwiXHU5NEQwXHU5NEQxXHU5NEQyXHU5NEQ1XHU5NEQ2XHU5NEQ3XHU5NEQ5XHU5NEQ4XHU5NERCXHU5NERFXHU5NERGXHU5NEUwXHU5NEUyXHU5NEU0XHU5NEU1XHU5NEU3XHU5NEU4XHU5NEVBXCJdLFxuW1wiZWY0MFwiLFwiXHU5ODZGXCIsNSxcIlx1OTg4Qlx1OTg4RVx1OTg5Mlx1OTg5NVx1OTg5OVx1OThBM1x1OThBOFwiLDM3LFwiXHU5OENGXHU5OEQwXHU5OEQ0XHU5OEQ2XHU5OEQ3XHU5OERCXHU5OERDXHU5OEREXHU5OEUwXCIsNF0sXG5bXCJlZjgwXCIsXCJcdTk4RTVcdTk4RTZcdTk4RTlcIiwzMCxcIlx1OTRFOVx1OTRFQlx1OTRFRVx1OTRFRlx1OTRGM1x1OTRGNFx1OTRGNVx1OTRGN1x1OTRGOVx1OTRGQ1x1OTRGRFx1OTRGRlx1OTUwM1x1OTUwMlx1OTUwNlx1OTUwN1x1OTUwOVx1OTUwQVx1OTUwRFx1OTUwRVx1OTUwRlx1OTUxMlwiLDQsXCJcdTk1MThcdTk1MUJcdTk1MURcdTk1MUVcdTk1MUZcdTk1MjJcdTk1MkFcdTk1MkJcdTk1MjlcdTk1MkNcdTk1MzFcdTk1MzJcdTk1MzRcdTk1MzZcdTk1MzdcdTk1MzhcdTk1M0NcdTk1M0VcdTk1M0ZcdTk1NDJcdTk1MzVcdTk1NDRcdTk1NDVcdTk1NDZcdTk1NDlcdTk1NENcdTk1NEVcdTk1NEZcdTk1NTJcdTk1NTNcdTk1NTRcdTk1NTZcdTk1NTdcdTk1NThcdTk1NTlcdTk1NUJcdTk1NUVcdTk1NUZcdTk1NURcdTk1NjFcdTk1NjJcdTk1NjRcIiw4LFwiXHU5NTZGXHU5NTcxXHU5NTcyXHU5NTczXHU5NTNBXHU3N0U3XHU3N0VDXHU5NkM5XHU3OUQ1XHU3OUVEXHU3OUUzXHU3OUVCXHU3QTA2XHU1RDQ3XHU3QTAzXHU3QTAyXHU3QTFFXHU3QTE0XCJdLFxuW1wiZjA0MFwiLFwiXHU5OTA4XCIsNCxcIlx1OTkwRVx1OTkwRlx1OTkxMVwiLDI4LFwiXHU5OTJGXCIsMjZdLFxuW1wiZjA4MFwiLFwiXHU5OTRBXCIsOSxcIlx1OTk1NlwiLDEyLFwiXHU5OTY0XHU5OTY2XHU5OTczXHU5OTc4XHU5OTc5XHU5OTdCXHU5OTdFXHU5OTgyXHU5OTgzXHU5OTg5XHU3QTM5XHU3QTM3XHU3QTUxXHU5RUNGXHU5OUE1XHU3QTcwXHU3Njg4XHU3NjhFXHU3NjkzXHU3Njk5XHU3NkE0XHU3NERFXHU3NEUwXHU3NTJDXHU5RTIwXHU5RTIyXHU5RTI4XCIsNCxcIlx1OUUzMlx1OUUzMVx1OUUzNlx1OUUzOFx1OUUzN1x1OUUzOVx1OUUzQVx1OUUzRVx1OUU0MVx1OUU0Mlx1OUU0NFx1OUU0Nlx1OUU0N1x1OUU0OFx1OUU0OVx1OUU0Qlx1OUU0Q1x1OUU0RVx1OUU1MVx1OUU1NVx1OUU1N1x1OUU1QVx1OUU1Qlx1OUU1Q1x1OUU1RVx1OUU2M1x1OUU2NlwiLDYsXCJcdTlFNzFcdTlFNkRcdTlFNzNcdTc1OTJcdTc1OTRcdTc1OTZcdTc1QTBcdTc1OURcdTc1QUNcdTc1QTNcdTc1QjNcdTc1QjRcdTc1QjhcdTc1QzRcdTc1QjFcdTc1QjBcdTc1QzNcdTc1QzJcdTc1RDZcdTc1Q0RcdTc1RTNcdTc1RThcdTc1RTZcdTc1RTRcdTc1RUJcdTc1RTdcdTc2MDNcdTc1RjFcdTc1RkNcdTc1RkZcdTc2MTBcdTc2MDBcdTc2MDVcdTc2MENcdTc2MTdcdTc2MEFcdTc2MjVcdTc2MThcdTc2MTVcdTc2MTlcIl0sXG5bXCJmMTQwXCIsXCJcdTk5OENcdTk5OEVcdTk5OUFcIiwxMCxcIlx1OTlBNlx1OTlBN1x1OTlBOVwiLDQ3XSxcbltcImYxODBcIixcIlx1OTlEOVwiLDMyLFwiXHU3NjFCXHU3NjNDXHU3NjIyXHU3NjIwXHU3NjQwXHU3NjJEXHU3NjMwXHU3NjNGXHU3NjM1XHU3NjQzXHU3NjNFXHU3NjMzXHU3NjREXHU3NjVFXHU3NjU0XHU3NjVDXHU3NjU2XHU3NjZCXHU3NjZGXHU3RkNBXHU3QUU2XHU3QTc4XHU3QTc5XHU3QTgwXHU3QTg2XHU3QTg4XHU3QTk1XHU3QUE2XHU3QUEwXHU3QUFDXHU3QUE4XHU3QUFEXHU3QUIzXHU4ODY0XHU4ODY5XHU4ODcyXHU4ODdEXHU4ODdGXHU4ODgyXHU4OEEyXHU4OEM2XHU4OEI3XHU4OEJDXHU4OEM5XHU4OEUyXHU4OENFXHU4OEUzXHU4OEU1XHU4OEYxXHU4OTFBXHU4OEZDXHU4OEU4XHU4OEZFXHU4OEYwXHU4OTIxXHU4OTE5XHU4OTEzXHU4OTFCXHU4OTBBXHU4OTM0XHU4OTJCXHU4OTM2XHU4OTQxXHU4OTY2XHU4OTdCXHU3NThCXHU4MEU1XHU3NkIyXHU3NkI0XHU3N0RDXHU4MDEyXHU4MDE0XHU4MDE2XHU4MDFDXHU4MDIwXHU4MDIyXHU4MDI1XHU4MDI2XHU4MDI3XHU4MDI5XHU4MDI4XHU4MDMxXHU4MDBCXHU4MDM1XHU4MDQzXHU4MDQ2XHU4MDREXHU4MDUyXHU4MDY5XHU4MDcxXHU4OTgzXHU5ODc4XHU5ODgwXHU5ODgzXCJdLFxuW1wiZjI0MFwiLFwiXHU5OUZBXCIsNjJdLFxuW1wiZjI4MFwiLFwiXHU5QTM5XCIsMzIsXCJcdTk4ODlcdTk4OENcdTk4OERcdTk4OEZcdTk4OTRcdTk4OUFcdTk4OUJcdTk4OUVcdTk4OUZcdTk4QTFcdTk4QTJcdTk4QTVcdTk4QTZcdTg2NERcdTg2NTRcdTg2NkNcdTg2NkVcdTg2N0ZcdTg2N0FcdTg2N0NcdTg2N0JcdTg2QThcdTg2OERcdTg2OEJcdTg2QUNcdTg2OURcdTg2QTdcdTg2QTNcdTg2QUFcdTg2OTNcdTg2QTlcdTg2QjZcdTg2QzRcdTg2QjVcdTg2Q0VcdTg2QjBcdTg2QkFcdTg2QjFcdTg2QUZcdTg2QzlcdTg2Q0ZcdTg2QjRcdTg2RTlcdTg2RjFcdTg2RjJcdTg2RURcdTg2RjNcdTg2RDBcdTg3MTNcdTg2REVcdTg2RjRcdTg2REZcdTg2RDhcdTg2RDFcdTg3MDNcdTg3MDdcdTg2RjhcdTg3MDhcdTg3MEFcdTg3MERcdTg3MDlcdTg3MjNcdTg3M0JcdTg3MUVcdTg3MjVcdTg3MkVcdTg3MUFcdTg3M0VcdTg3NDhcdTg3MzRcdTg3MzFcdTg3MjlcdTg3MzdcdTg3M0ZcdTg3ODJcdTg3MjJcdTg3N0RcdTg3N0VcdTg3N0JcdTg3NjBcdTg3NzBcdTg3NENcdTg3NkVcdTg3OEJcdTg3NTNcdTg3NjNcdTg3N0NcdTg3NjRcdTg3NTlcdTg3NjVcdTg3OTNcdTg3QUZcdTg3QThcdTg3RDJcIl0sXG5bXCJmMzQwXCIsXCJcdTlBNUFcIiwxNyxcIlx1OUE3Mlx1OUE4M1x1OUE4OVx1OUE4RFx1OUE4RVx1OUE5NFx1OUE5NVx1OUE5OVx1OUFBNlx1OUFBOVwiLDYsXCJcdTlBQjJcdTlBQjNcdTlBQjRcdTlBQjVcdTlBQjlcdTlBQkJcdTlBQkRcdTlBQkVcdTlBQkZcdTlBQzNcdTlBQzRcdTlBQzZcIiw0LFwiXHU5QUNEXHU5QUNFXHU5QUNGXHU5QUQwXHU5QUQyXHU5QUQ0XHU5QUQ1XHU5QUQ2XHU5QUQ3XHU5QUQ5XHU5QURBXHU5QURCXHU5QURDXCJdLFxuW1wiZjM4MFwiLFwiXHU5QUREXHU5QURFXHU5QUUwXHU5QUUyXHU5QUUzXHU5QUU0XHU5QUU1XHU5QUU3XHU5QUU4XHU5QUU5XHU5QUVBXHU5QUVDXHU5QUVFXHU5QUYwXCIsOCxcIlx1OUFGQVx1OUFGQ1wiLDYsXCJcdTlCMDRcdTlCMDVcdTlCMDZcdTg3QzZcdTg3ODhcdTg3ODVcdTg3QURcdTg3OTdcdTg3ODNcdTg3QUJcdTg3RTVcdTg3QUNcdTg3QjVcdTg3QjNcdTg3Q0JcdTg3RDNcdTg3QkRcdTg3RDFcdTg3QzBcdTg3Q0FcdTg3REJcdTg3RUFcdTg3RTBcdTg3RUVcdTg4MTZcdTg4MTNcdTg3RkVcdTg4MEFcdTg4MUJcdTg4MjFcdTg4MzlcdTg4M0NcdTdGMzZcdTdGNDJcdTdGNDRcdTdGNDVcdTgyMTBcdTdBRkFcdTdBRkRcdTdCMDhcdTdCMDNcdTdCMDRcdTdCMTVcdTdCMEFcdTdCMkJcdTdCMEZcdTdCNDdcdTdCMzhcdTdCMkFcdTdCMTlcdTdCMkVcdTdCMzFcdTdCMjBcdTdCMjVcdTdCMjRcdTdCMzNcdTdCM0VcdTdCMUVcdTdCNThcdTdCNUFcdTdCNDVcdTdCNzVcdTdCNENcdTdCNURcdTdCNjBcdTdCNkVcdTdCN0JcdTdCNjJcdTdCNzJcdTdCNzFcdTdCOTBcdTdCQTZcdTdCQTdcdTdCQjhcdTdCQUNcdTdCOURcdTdCQThcdTdCODVcdTdCQUFcdTdCOUNcdTdCQTJcdTdCQUJcdTdCQjRcdTdCRDFcdTdCQzFcdTdCQ0NcdTdCRERcdTdCREFcdTdCRTVcdTdCRTZcdTdCRUFcdTdDMENcdTdCRkVcdTdCRkNcdTdDMEZcdTdDMTZcdTdDMEJcIl0sXG5bXCJmNDQwXCIsXCJcdTlCMDdcdTlCMDlcIiw1LFwiXHU5QjEwXHU5QjExXHU5QjEyXHU5QjE0XCIsMTAsXCJcdTlCMjBcdTlCMjFcdTlCMjJcdTlCMjRcIiwxMCxcIlx1OUIzMFx1OUIzMVx1OUIzM1wiLDcsXCJcdTlCM0RcdTlCM0VcdTlCM0ZcdTlCNDBcdTlCNDZcdTlCNEFcdTlCNEJcdTlCNENcdTlCNEVcdTlCNTBcdTlCNTJcdTlCNTNcdTlCNTVcIiw1XSxcbltcImY0ODBcIixcIlx1OUI1QlwiLDMyLFwiXHU3QzFGXHU3QzJBXHU3QzI2XHU3QzM4XHU3QzQxXHU3QzQwXHU4MUZFXHU4MjAxXHU4MjAyXHU4MjA0XHU4MUVDXHU4ODQ0XHU4MjIxXHU4MjIyXHU4MjIzXHU4MjJEXHU4MjJGXHU4MjI4XHU4MjJCXHU4MjM4XHU4MjNCXHU4MjMzXHU4MjM0XHU4MjNFXHU4MjQ0XHU4MjQ5XHU4MjRCXHU4MjRGXHU4MjVBXHU4MjVGXHU4MjY4XHU4ODdFXHU4ODg1XHU4ODg4XHU4OEQ4XHU4OERGXHU4OTVFXHU3RjlEXHU3RjlGXHU3RkE3XHU3RkFGXHU3RkIwXHU3RkIyXHU3QzdDXHU2NTQ5XHU3QzkxXHU3QzlEXHU3QzlDXHU3QzlFXHU3Q0EyXHU3Q0IyXHU3Q0JDXHU3Q0JEXHU3Q0MxXHU3Q0M3XHU3Q0NDXHU3Q0NEXHU3Q0M4XHU3Q0M1XHU3Q0Q3XHU3Q0U4XHU4MjZFXHU2NkE4XHU3RkJGXHU3RkNFXHU3RkQ1XHU3RkU1XHU3RkUxXHU3RkU2XHU3RkU5XHU3RkVFXHU3RkYzXHU3Q0Y4XHU3RDc3XHU3REE2XHU3REFFXHU3RTQ3XHU3RTlCXHU5RUI4XHU5RUI0XHU4RDczXHU4RDg0XHU4RDk0XHU4RDkxXHU4REIxXHU4RDY3XHU4RDZEXHU4QzQ3XHU4QzQ5XHU5MTRBXHU5MTUwXHU5MTRFXHU5MTRGXHU5MTY0XCJdLFxuW1wiZjU0MFwiLFwiXHU5QjdDXCIsNjJdLFxuW1wiZjU4MFwiLFwiXHU5QkJCXCIsMzIsXCJcdTkxNjJcdTkxNjFcdTkxNzBcdTkxNjlcdTkxNkZcdTkxN0RcdTkxN0VcdTkxNzJcdTkxNzRcdTkxNzlcdTkxOENcdTkxODVcdTkxOTBcdTkxOERcdTkxOTFcdTkxQTJcdTkxQTNcdTkxQUFcdTkxQURcdTkxQUVcdTkxQUZcdTkxQjVcdTkxQjRcdTkxQkFcdThDNTVcdTlFN0VcdThEQjhcdThERUJcdThFMDVcdThFNTlcdThFNjlcdThEQjVcdThEQkZcdThEQkNcdThEQkFcdThEQzRcdThERDZcdThERDdcdThEREFcdThEREVcdThEQ0VcdThEQ0ZcdThEREJcdThEQzZcdThERUNcdThERjdcdThERjhcdThERTNcdThERjlcdThERkJcdThERTRcdThFMDlcdThERkRcdThFMTRcdThFMURcdThFMUZcdThFMkNcdThFMkVcdThFMjNcdThFMkZcdThFM0FcdThFNDBcdThFMzlcdThFMzVcdThFM0RcdThFMzFcdThFNDlcdThFNDFcdThFNDJcdThFNTFcdThFNTJcdThFNEFcdThFNzBcdThFNzZcdThFN0NcdThFNkZcdThFNzRcdThFODVcdThFOEZcdThFOTRcdThFOTBcdThFOUNcdThFOUVcdThDNzhcdThDODJcdThDOEFcdThDODVcdThDOThcdThDOTRcdTY1OUJcdTg5RDZcdTg5REVcdTg5REFcdTg5RENcIl0sXG5bXCJmNjQwXCIsXCJcdTlCRENcIiw2Ml0sXG5bXCJmNjgwXCIsXCJcdTlDMUJcIiwzMixcIlx1ODlFNVx1ODlFQlx1ODlFRlx1OEEzRVx1OEIyNlx1OTc1M1x1OTZFOVx1OTZGM1x1OTZFRlx1OTcwNlx1OTcwMVx1OTcwOFx1OTcwRlx1OTcwRVx1OTcyQVx1OTcyRFx1OTczMFx1OTczRVx1OUY4MFx1OUY4M1x1OUY4NVwiLDUsXCJcdTlGOENcdTlFRkVcdTlGMEJcdTlGMERcdTk2QjlcdTk2QkNcdTk2QkRcdTk2Q0VcdTk2RDJcdTc3QkZcdTk2RTBcdTkyOEVcdTkyQUVcdTkyQzhcdTkzM0VcdTkzNkFcdTkzQ0FcdTkzOEZcdTk0M0VcdTk0NkJcdTlDN0ZcdTlDODJcdTlDODVcdTlDODZcdTlDODdcdTlDODhcdTdBMjNcdTlDOEJcdTlDOEVcdTlDOTBcdTlDOTFcdTlDOTJcdTlDOTRcdTlDOTVcdTlDOUFcdTlDOUJcdTlDOUVcIiw1LFwiXHU5Q0E1XCIsNCxcIlx1OUNBQlx1OUNBRFx1OUNBRVx1OUNCMFwiLDcsXCJcdTlDQkFcdTlDQkJcdTlDQkNcdTlDQkRcdTlDQzRcdTlDQzVcdTlDQzZcdTlDQzdcdTlDQ0FcdTlDQ0JcIl0sXG5bXCJmNzQwXCIsXCJcdTlDM0NcIiw2Ml0sXG5bXCJmNzgwXCIsXCJcdTlDN0JcdTlDN0RcdTlDN0VcdTlDODBcdTlDODNcdTlDODRcdTlDODlcdTlDOEFcdTlDOENcdTlDOEZcdTlDOTNcdTlDOTZcdTlDOTdcdTlDOThcdTlDOTlcdTlDOURcdTlDQUFcdTlDQUNcdTlDQUZcdTlDQjlcdTlDQkVcIiw0LFwiXHU5Q0M4XHU5Q0M5XHU5Q0QxXHU5Q0QyXHU5Q0RBXHU5Q0RCXHU5Q0UwXHU5Q0UxXHU5Q0NDXCIsNCxcIlx1OUNEM1x1OUNENFx1OUNENVx1OUNEN1x1OUNEOFx1OUNEOVx1OUNEQ1x1OUNERFx1OUNERlx1OUNFMlx1OTc3Q1x1OTc4NVx1OTc5MVx1OTc5Mlx1OTc5NFx1OTdBRlx1OTdBQlx1OTdBM1x1OTdCMlx1OTdCNFx1OUFCMVx1OUFCMFx1OUFCN1x1OUU1OFx1OUFCNlx1OUFCQVx1OUFCQ1x1OUFDMVx1OUFDMFx1OUFDNVx1OUFDMlx1OUFDQlx1OUFDQ1x1OUFEMVx1OUI0NVx1OUI0M1x1OUI0N1x1OUI0OVx1OUI0OFx1OUI0RFx1OUI1MVx1OThFOFx1OTkwRFx1OTkyRVx1OTk1NVx1OTk1NFx1OUFERlx1OUFFMVx1OUFFNlx1OUFFRlx1OUFFQlx1OUFGQlx1OUFFRFx1OUFGOVx1OUIwOFx1OUIwRlx1OUIxM1x1OUIxRlx1OUIyM1x1OUVCRFx1OUVCRVx1N0UzQlx1OUU4Mlx1OUU4N1x1OUU4OFx1OUU4Qlx1OUU5Mlx1OTNENlx1OUU5RFx1OUU5Rlx1OUVEQlx1OUVEQ1x1OUVERFx1OUVFMFx1OUVERlx1OUVFMlx1OUVFOVx1OUVFN1x1OUVFNVx1OUVFQVx1OUVFRlx1OUYyMlx1OUYyQ1x1OUYyRlx1OUYzOVx1OUYzN1x1OUYzRFx1OUYzRVx1OUY0NFwiXSxcbltcImY4NDBcIixcIlx1OUNFM1wiLDYyXSxcbltcImY4ODBcIixcIlx1OUQyMlwiLDMyXSxcbltcImY5NDBcIixcIlx1OUQ0M1wiLDYyXSxcbltcImY5ODBcIixcIlx1OUQ4MlwiLDMyXSxcbltcImZhNDBcIixcIlx1OURBM1wiLDYyXSxcbltcImZhODBcIixcIlx1OURFMlwiLDMyXSxcbltcImZiNDBcIixcIlx1OUUwM1wiLDI3LFwiXHU5RTI0XHU5RTI3XHU5RTJFXHU5RTMwXHU5RTM0XHU5RTNCXHU5RTNDXHU5RTQwXHU5RTREXHU5RTUwXHU5RTUyXHU5RTUzXHU5RTU0XHU5RTU2XHU5RTU5XHU5RTVEXHU5RTVGXHU5RTYwXHU5RTYxXHU5RTYyXHU5RTY1XHU5RTZFXHU5RTZGXHU5RTcyXHU5RTc0XCIsOSxcIlx1OUU4MFwiXSxcbltcImZiODBcIixcIlx1OUU4MVx1OUU4M1x1OUU4NFx1OUU4NVx1OUU4Nlx1OUU4OVx1OUU4QVx1OUU4Q1wiLDUsXCJcdTlFOTRcIiw4LFwiXHU5RTlFXHU5RUEwXCIsNSxcIlx1OUVBN1x1OUVBOFx1OUVBOVx1OUVBQVwiXSxcbltcImZjNDBcIixcIlx1OUVBQlwiLDgsXCJcdTlFQjVcdTlFQjZcdTlFQjdcdTlFQjlcdTlFQkFcdTlFQkNcdTlFQkZcIiw0LFwiXHU5RUM1XHU5RUM2XHU5RUM3XHU5RUM4XHU5RUNBXHU5RUNCXHU5RUNDXHU5RUQwXHU5RUQyXHU5RUQzXHU5RUQ1XHU5RUQ2XHU5RUQ3XHU5RUQ5XHU5RURBXHU5RURFXHU5RUUxXHU5RUUzXHU5RUU0XHU5RUU2XHU5RUU4XHU5RUVCXHU5RUVDXHU5RUVEXHU5RUVFXHU5RUYwXCIsOCxcIlx1OUVGQVx1OUVGRFx1OUVGRlwiLDZdLFxuW1wiZmM4MFwiLFwiXHU5RjA2XCIsNCxcIlx1OUYwQ1x1OUYwRlx1OUYxMVx1OUYxMlx1OUYxNFx1OUYxNVx1OUYxNlx1OUYxOFx1OUYxQVwiLDUsXCJcdTlGMjFcdTlGMjNcIiw4LFwiXHU5RjJEXHU5RjJFXHU5RjMwXHU5RjMxXCJdLFxuW1wiZmQ0MFwiLFwiXHU5RjMyXCIsNCxcIlx1OUYzOFx1OUYzQVx1OUYzQ1x1OUYzRlwiLDQsXCJcdTlGNDVcIiwxMCxcIlx1OUY1MlwiLDM4XSxcbltcImZkODBcIixcIlx1OUY3OVwiLDUsXCJcdTlGODFcdTlGODJcdTlGOERcIiwxMSxcIlx1OUY5Q1x1OUY5RFx1OUY5RVx1OUZBMVwiLDQsXCJcdUY5MkNcdUY5NzlcdUY5OTVcdUY5RTdcdUY5RjFcIl0sXG5bXCJmZTQwXCIsXCJcdUZBMENcdUZBMERcdUZBMEVcdUZBMEZcdUZBMTFcdUZBMTNcdUZBMTRcdUZBMThcdUZBMUZcdUZBMjBcdUZBMjFcdUZBMjNcdUZBMjRcdUZBMjdcdUZBMjhcdUZBMjlcIl1cbl1cbiIsICJbXG5bXCJhMTQwXCIsXCJcdUU0QzZcIiw2Ml0sXG5bXCJhMTgwXCIsXCJcdUU1MDVcIiwzMl0sXG5bXCJhMjQwXCIsXCJcdUU1MjZcIiw2Ml0sXG5bXCJhMjgwXCIsXCJcdUU1NjVcIiwzMl0sXG5bXCJhMmFiXCIsXCJcdUU3NjZcIiw1XSxcbltcImEyZTNcIixcIlx1MjBBQ1x1RTc2RFwiXSxcbltcImEyZWZcIixcIlx1RTc2RVx1RTc2RlwiXSxcbltcImEyZmRcIixcIlx1RTc3MFx1RTc3MVwiXSxcbltcImEzNDBcIixcIlx1RTU4NlwiLDYyXSxcbltcImEzODBcIixcIlx1RTVDNVwiLDMxLFwiXHUzMDAwXCJdLFxuW1wiYTQ0MFwiLFwiXHVFNUU2XCIsNjJdLFxuW1wiYTQ4MFwiLFwiXHVFNjI1XCIsMzJdLFxuW1wiYTRmNFwiLFwiXHVFNzcyXCIsMTBdLFxuW1wiYTU0MFwiLFwiXHVFNjQ2XCIsNjJdLFxuW1wiYTU4MFwiLFwiXHVFNjg1XCIsMzJdLFxuW1wiYTVmN1wiLFwiXHVFNzdEXCIsN10sXG5bXCJhNjQwXCIsXCJcdUU2QTZcIiw2Ml0sXG5bXCJhNjgwXCIsXCJcdUU2RTVcIiwzMl0sXG5bXCJhNmI5XCIsXCJcdUU3ODVcIiw3XSxcbltcImE2ZDlcIixcIlx1RTc4RFwiLDZdLFxuW1wiYTZlY1wiLFwiXHVFNzk0XHVFNzk1XCJdLFxuW1wiYTZmM1wiLFwiXHVFNzk2XCJdLFxuW1wiYTZmNlwiLFwiXHVFNzk3XCIsOF0sXG5bXCJhNzQwXCIsXCJcdUU3MDZcIiw2Ml0sXG5bXCJhNzgwXCIsXCJcdUU3NDVcIiwzMl0sXG5bXCJhN2MyXCIsXCJcdUU3QTBcIiwxNF0sXG5bXCJhN2YyXCIsXCJcdUU3QUZcIiwxMl0sXG5bXCJhODk2XCIsXCJcdUU3QkNcIiwxMF0sXG5bXCJhOGJjXCIsXCJcdTFFM0ZcIl0sXG5bXCJhOGJmXCIsXCJcdTAxRjlcIl0sXG5bXCJhOGMxXCIsXCJcdUU3QzlcdUU3Q0FcdUU3Q0JcdUU3Q0NcIl0sXG5bXCJhOGVhXCIsXCJcdUU3Q0RcIiwyMF0sXG5bXCJhOTU4XCIsXCJcdUU3RTJcIl0sXG5bXCJhOTViXCIsXCJcdUU3RTNcIl0sXG5bXCJhOTVkXCIsXCJcdUU3RTRcdUU3RTVcdUU3RTZcIl0sXG5bXCJhOTg5XCIsXCJcdTMwM0VcdTJGRjBcIiwxMV0sXG5bXCJhOTk3XCIsXCJcdUU3RjRcIiwxMl0sXG5bXCJhOWYwXCIsXCJcdUU4MDFcIiwxNF0sXG5bXCJhYWExXCIsXCJcdUUwMDBcIiw5M10sXG5bXCJhYmExXCIsXCJcdUUwNUVcIiw5M10sXG5bXCJhY2ExXCIsXCJcdUUwQkNcIiw5M10sXG5bXCJhZGExXCIsXCJcdUUxMUFcIiw5M10sXG5bXCJhZWExXCIsXCJcdUUxNzhcIiw5M10sXG5bXCJhZmExXCIsXCJcdUUxRDZcIiw5M10sXG5bXCJkN2ZhXCIsXCJcdUU4MTBcIiw0XSxcbltcImY4YTFcIixcIlx1RTIzNFwiLDkzXSxcbltcImY5YTFcIixcIlx1RTI5MlwiLDkzXSxcbltcImZhYTFcIixcIlx1RTJGMFwiLDkzXSxcbltcImZiYTFcIixcIlx1RTM0RVwiLDkzXSxcbltcImZjYTFcIixcIlx1RTNBQ1wiLDkzXSxcbltcImZkYTFcIixcIlx1RTQwQVwiLDkzXSxcbltcImZlNTBcIixcIlx1MkU4MVx1RTgxNlx1RTgxN1x1RTgxOFx1MkU4NFx1MzQ3M1x1MzQ0N1x1MkU4OFx1MkU4Qlx1RTgxRVx1MzU5RVx1MzYxQVx1MzYwRVx1MkU4Q1x1MkU5N1x1Mzk2RVx1MzkxOFx1RTgyNlx1MzlDRlx1MzlERlx1M0E3M1x1MzlEMFx1RTgyQlx1RTgyQ1x1M0I0RVx1M0M2RVx1M0NFMFx1MkVBN1x1RTgzMVx1RTgzMlx1MkVBQVx1NDA1Nlx1NDE1Rlx1MkVBRVx1NDMzN1x1MkVCM1x1MkVCNlx1MkVCN1x1RTgzQlx1NDNCMVx1NDNBQ1x1MkVCQlx1NDNERFx1NDRENlx1NDY2MVx1NDY0Q1x1RTg0M1wiXSxcbltcImZlODBcIixcIlx1NDcyM1x1NDcyOVx1NDc3Q1x1NDc4RFx1MkVDQVx1NDk0N1x1NDk3QVx1NDk3RFx1NDk4Mlx1NDk4M1x1NDk4NVx1NDk4Nlx1NDk5Rlx1NDk5Qlx1NDlCN1x1NDlCNlx1RTg1NFx1RTg1NVx1NENBM1x1NEM5Rlx1NENBMFx1NENBMVx1NEM3N1x1NENBMlx1NEQxM1wiLDYsXCJcdTREQUVcdUU4NjRcdUU0NjhcIiw5M10sXG5bXCI4MTM1ZjQzN1wiLFwiXHVFN0M3XCJdXG5dXG4iLCAie1widUNoYXJzXCI6WzEyOCwxNjUsMTY5LDE3OCwxODQsMjE2LDIyNiwyMzUsMjM4LDI0NCwyNDgsMjUxLDI1MywyNTgsMjc2LDI4NCwzMDAsMzI1LDMyOSwzMzQsMzY0LDQ2Myw0NjUsNDY3LDQ2OSw0NzEsNDczLDQ3NSw0NzcsNTA2LDU5NCw2MTAsNzEyLDcxNiw3MzAsOTMwLDkzOCw5NjIsOTcwLDEwMjYsMTEwNCwxMTA2LDgyMDksODIxNSw4MjE4LDgyMjIsODIzMSw4MjQxLDgyNDQsODI0Niw4MjUyLDgzNjUsODQ1Miw4NDU0LDg0NTgsODQ3MSw4NDgyLDg1NTYsODU3MCw4NTk2LDg2MDIsODcxMyw4NzIwLDg3MjIsODcyNiw4NzMxLDg3MzcsODc0MCw4NzQyLDg3NDgsODc1MSw4NzYwLDg3NjYsODc3Nyw4NzgxLDg3ODcsODgwMiw4ODA4LDg4MTYsODg1NCw4ODU4LDg4NzAsODg5Niw4OTc5LDkzMjIsOTM3Miw5NTQ4LDk1ODgsOTYxNiw5NjIyLDk2MzQsOTY1Miw5NjYyLDk2NzIsOTY3Niw5NjgwLDk3MDIsOTczNSw5NzM4LDk3OTMsOTc5NSwxMTkwNiwxMTkwOSwxMTkxMywxMTkxNywxMTkyOCwxMTk0NCwxMTk0NywxMTk1MSwxMTk1NiwxMTk2MCwxMTk2NCwxMTk3OSwxMjI4NCwxMjI5MiwxMjMxMiwxMjMxOSwxMjMzMCwxMjM1MSwxMjQzNiwxMjQ0NywxMjUzNSwxMjU0MywxMjU4NiwxMjg0MiwxMjg1MCwxMjk2NCwxMzIwMCwxMzIxNSwxMzIxOCwxMzI1MywxMzI2MywxMzI2NywxMzI3MCwxMzM4NCwxMzQyOCwxMzcyNywxMzgzOSwxMzg1MSwxNDYxNywxNDcwMywxNDgwMSwxNDgxNiwxNDk2NCwxNTE4MywxNTQ3MSwxNTU4NSwxNjQ3MSwxNjczNiwxNzIwOCwxNzMyNSwxNzMzMCwxNzM3NCwxNzYyMywxNzk5NywxODAxOCwxODIxMiwxODIxOCwxODMwMSwxODMxOCwxODc2MCwxODgxMSwxODgxNCwxODgyMCwxODgyMywxODg0NCwxODg0OCwxODg3MiwxOTU3NiwxOTYyMCwxOTczOCwxOTg4Nyw0MDg3MCw1OTI0NCw1OTMzNiw1OTM2Nyw1OTQxMyw1OTQxNyw1OTQyMyw1OTQzMSw1OTQzNyw1OTQ0Myw1OTQ1Miw1OTQ2MCw1OTQ3OCw1OTQ5Myw2Mzc4OSw2Mzg2Niw2Mzg5NCw2Mzk3Niw2Mzk4Niw2NDAxNiw2NDAxOCw2NDAyMSw2NDAyNSw2NDAzNCw2NDAzNyw2NDA0Miw2NTA3NCw2NTA5Myw2NTEwNyw2NTExMiw2NTEyNyw2NTEzMiw2NTM3NSw2NTUxMCw2NTUzNl0sXCJnYkNoYXJzXCI6WzAsMzYsMzgsNDUsNTAsODEsODksOTUsOTYsMTAwLDEwMywxMDQsMTA1LDEwOSwxMjYsMTMzLDE0OCwxNzIsMTc1LDE3OSwyMDgsMzA2LDMwNywzMDgsMzA5LDMxMCwzMTEsMzEyLDMxMywzNDEsNDI4LDQ0Myw1NDQsNTQ1LDU1OCw3NDEsNzQyLDc0OSw3NTAsODA1LDgxOSw4MjAsNzkyMiw3OTI0LDc5MjUsNzkyNyw3OTM0LDc5NDMsNzk0NCw3OTQ1LDc5NTAsODA2Miw4MTQ4LDgxNDksODE1Miw4MTY0LDgxNzQsODIzNiw4MjQwLDgyNjIsODI2NCw4Mzc0LDgzODAsODM4MSw4Mzg0LDgzODgsODM5MCw4MzkyLDgzOTMsODM5NCw4Mzk2LDg0MDEsODQwNiw4NDE2LDg0MTksODQyNCw4NDM3LDg0MzksODQ0NSw4NDgyLDg0ODUsODQ5Niw4NTIxLDg2MDMsODkzNiw4OTQ2LDkwNDYsOTA1MCw5MDYzLDkwNjYsOTA3Niw5MDkyLDkxMDAsOTEwOCw5MTExLDkxMTMsOTEzMSw5MTYyLDkxNjQsOTIxOCw5MjE5LDExMzI5LDExMzMxLDExMzM0LDExMzM2LDExMzQ2LDExMzYxLDExMzYzLDExMzY2LDExMzcwLDExMzcyLDExMzc1LDExMzg5LDExNjgyLDExNjg2LDExNjg3LDExNjkyLDExNjk0LDExNzE0LDExNzE2LDExNzIzLDExNzI1LDExNzMwLDExNzM2LDExOTgyLDExOTg5LDEyMTAyLDEyMzM2LDEyMzQ4LDEyMzUwLDEyMzg0LDEyMzkzLDEyMzk1LDEyMzk3LDEyNTEwLDEyNTUzLDEyODUxLDEyOTYyLDEyOTczLDEzNzM4LDEzODIzLDEzOTE5LDEzOTMzLDE0MDgwLDE0Mjk4LDE0NTg1LDE0Njk4LDE1NTgzLDE1ODQ3LDE2MzE4LDE2NDM0LDE2NDM4LDE2NDgxLDE2NzI5LDE3MTAyLDE3MTIyLDE3MzE1LDE3MzIwLDE3NDAyLDE3NDE4LDE3ODU5LDE3OTA5LDE3OTExLDE3OTE1LDE3OTE2LDE3OTM2LDE3OTM5LDE3OTYxLDE4NjY0LDE4NzAzLDE4ODE0LDE4OTYyLDE5MDQzLDMzNDY5LDMzNDcwLDMzNDcxLDMzNDg0LDMzNDg1LDMzNDkwLDMzNDk3LDMzNTAxLDMzNTA1LDMzNTEzLDMzNTIwLDMzNTM2LDMzNTUwLDM3ODQ1LDM3OTIxLDM3OTQ4LDM4MDI5LDM4MDM4LDM4MDY0LDM4MDY1LDM4MDY2LDM4MDY5LDM4MDc1LDM4MDc2LDM4MDc4LDM5MTA4LDM5MTA5LDM5MTEzLDM5MTE0LDM5MTE1LDM5MTE2LDM5MjY1LDM5Mzk0LDE4OTAwMF19IiwgIltcbltcIjBcIixcIlxcdTAwMDBcIiwxMjddLFxuW1wiODE0MVwiLFwiXHVBQzAyXHVBQzAzXHVBQzA1XHVBQzA2XHVBQzBCXCIsNCxcIlx1QUMxOFx1QUMxRVx1QUMxRlx1QUMyMVx1QUMyMlx1QUMyM1x1QUMyNVwiLDYsXCJcdUFDMkVcdUFDMzJcdUFDMzNcdUFDMzRcIl0sXG5bXCI4MTYxXCIsXCJcdUFDMzVcdUFDMzZcdUFDMzdcdUFDM0FcdUFDM0JcdUFDM0RcdUFDM0VcdUFDM0ZcdUFDNDFcIiw5LFwiXHVBQzRDXHVBQzRFXCIsNSxcIlx1QUM1NVwiXSxcbltcIjgxODFcIixcIlx1QUM1Nlx1QUM1N1x1QUM1OVx1QUM1QVx1QUM1Qlx1QUM1RFwiLDE4LFwiXHVBQzcyXHVBQzczXHVBQzc1XHVBQzc2XHVBQzc5XHVBQzdCXCIsNCxcIlx1QUM4Mlx1QUM4N1x1QUM4OFx1QUM4RFx1QUM4RVx1QUM4Rlx1QUM5MVx1QUM5Mlx1QUM5M1x1QUM5NVwiLDYsXCJcdUFDOUVcdUFDQTJcIiw1LFwiXHVBQ0FCXHVBQ0FEXHVBQ0FFXHVBQ0IxXCIsNixcIlx1QUNCQVx1QUNCRVx1QUNCRlx1QUNDMFx1QUNDMlx1QUNDM1x1QUNDNVx1QUNDNlx1QUNDN1x1QUNDOVx1QUNDQVx1QUNDQlx1QUNDRFwiLDcsXCJcdUFDRDZcdUFDRDhcIiw3LFwiXHVBQ0UyXHVBQ0UzXHVBQ0U1XHVBQ0U2XHVBQ0U5XHVBQ0VCXHVBQ0VEXHVBQ0VFXHVBQ0YyXHVBQ0Y0XHVBQ0Y3XCIsNCxcIlx1QUNGRVx1QUNGRlx1QUQwMVx1QUQwMlx1QUQwM1x1QUQwNVx1QUQwN1wiLDQsXCJcdUFEMEVcdUFEMTBcdUFEMTJcdUFEMTNcIl0sXG5bXCI4MjQxXCIsXCJcdUFEMTRcdUFEMTVcdUFEMTZcdUFEMTdcdUFEMTlcdUFEMUFcdUFEMUJcdUFEMURcdUFEMUVcdUFEMUZcdUFEMjFcIiw3LFwiXHVBRDJBXHVBRDJCXHVBRDJFXCIsNV0sXG5bXCI4MjYxXCIsXCJcdUFEMzZcdUFEMzdcdUFEMzlcdUFEM0FcdUFEM0JcdUFEM0RcIiw2LFwiXHVBRDQ2XHVBRDQ4XHVBRDRBXCIsNSxcIlx1QUQ1MVx1QUQ1Mlx1QUQ1M1x1QUQ1NVx1QUQ1Nlx1QUQ1N1wiXSxcbltcIjgyODFcIixcIlx1QUQ1OVwiLDcsXCJcdUFENjJcdUFENjRcIiw3LFwiXHVBRDZFXHVBRDZGXHVBRDcxXHVBRDcyXHVBRDc3XHVBRDc4XHVBRDc5XHVBRDdBXHVBRDdFXHVBRDgwXHVBRDgzXCIsNCxcIlx1QUQ4QVx1QUQ4Qlx1QUQ4RFx1QUQ4RVx1QUQ4Rlx1QUQ5MVwiLDEwLFwiXHVBRDlFXCIsNSxcIlx1QURBNVwiLDE3LFwiXHVBREI4XCIsNyxcIlx1QURDMlx1QURDM1x1QURDNVx1QURDNlx1QURDN1x1QURDOVwiLDYsXCJcdUFERDJcdUFERDRcIiw3LFwiXHVBREREXHVBRERFXHVBRERGXHVBREUxXHVBREUyXHVBREUzXHVBREU1XCIsMThdLFxuW1wiODM0MVwiLFwiXHVBREZBXHVBREZCXHVBREZEXHVBREZFXHVBRTAyXCIsNSxcIlx1QUUwQVx1QUUwQ1x1QUUwRVwiLDUsXCJcdUFFMTVcIiw3XSxcbltcIjgzNjFcIixcIlx1QUUxRFwiLDE4LFwiXHVBRTMyXHVBRTMzXHVBRTM1XHVBRTM2XHVBRTM5XHVBRTNCXHVBRTNDXCJdLFxuW1wiODM4MVwiLFwiXHVBRTNEXHVBRTNFXHVBRTNGXHVBRTQyXHVBRTQ0XHVBRTQ3XHVBRTQ4XHVBRTQ5XHVBRTRCXHVBRTRGXHVBRTUxXHVBRTUyXHVBRTUzXHVBRTU1XHVBRTU3XCIsNCxcIlx1QUU1RVx1QUU2Mlx1QUU2M1x1QUU2NFx1QUU2Nlx1QUU2N1x1QUU2QVx1QUU2Qlx1QUU2RFx1QUU2RVx1QUU2Rlx1QUU3MVwiLDYsXCJcdUFFN0FcdUFFN0VcIiw1LFwiXHVBRTg2XCIsNSxcIlx1QUU4RFwiLDQ2LFwiXHVBRUJGXHVBRUMxXHVBRUMyXHVBRUMzXHVBRUM1XCIsNixcIlx1QUVDRVx1QUVEMlwiLDUsXCJcdUFFREFcdUFFREJcdUFFRERcIiw4XSxcbltcIjg0NDFcIixcIlx1QUVFNlx1QUVFN1x1QUVFOVx1QUVFQVx1QUVFQ1x1QUVFRVwiLDUsXCJcdUFFRjVcdUFFRjZcdUFFRjdcdUFFRjlcdUFFRkFcdUFFRkJcdUFFRkRcIiw4XSxcbltcIjg0NjFcIixcIlx1QUYwNlx1QUYwOVx1QUYwQVx1QUYwQlx1QUYwQ1x1QUYwRVx1QUYwRlx1QUYxMVwiLDE4XSxcbltcIjg0ODFcIixcIlx1QUYyNFwiLDcsXCJcdUFGMkVcdUFGMkZcdUFGMzFcdUFGMzNcdUFGMzVcIiw2LFwiXHVBRjNFXHVBRjQwXHVBRjQ0XHVBRjQ1XHVBRjQ2XHVBRjQ3XHVBRjRBXCIsNSxcIlx1QUY1MVwiLDEwLFwiXHVBRjVFXCIsNSxcIlx1QUY2NlwiLDE4LFwiXHVBRjdBXCIsNSxcIlx1QUY4MVx1QUY4Mlx1QUY4M1x1QUY4NVx1QUY4Nlx1QUY4N1x1QUY4OVwiLDYsXCJcdUFGOTJcdUFGOTNcdUFGOTRcdUFGOTZcIiw1LFwiXHVBRjlEXCIsMjYsXCJcdUFGQkFcdUFGQkJcdUFGQkRcdUFGQkVcIl0sXG5bXCI4NTQxXCIsXCJcdUFGQkZcdUFGQzFcIiw1LFwiXHVBRkNBXHVBRkNDXHVBRkNGXCIsNCxcIlx1QUZENVwiLDYsXCJcdUFGRERcIiw0XSxcbltcIjg1NjFcIixcIlx1QUZFMlwiLDUsXCJcdUFGRUFcIiw1LFwiXHVBRkYyXHVBRkYzXHVBRkY1XHVBRkY2XHVBRkY3XHVBRkY5XCIsNixcIlx1QjAwMlx1QjAwM1wiXSxcbltcIjg1ODFcIixcIlx1QjAwNVwiLDYsXCJcdUIwMERcdUIwMEVcdUIwMEZcdUIwMTFcdUIwMTJcdUIwMTNcdUIwMTVcIiw2LFwiXHVCMDFFXCIsOSxcIlx1QjAyOVwiLDI2LFwiXHVCMDQ2XHVCMDQ3XHVCMDQ5XHVCMDRCXHVCMDREXHVCMDRGXHVCMDUwXHVCMDUxXHVCMDUyXHVCMDU2XHVCMDU4XHVCMDVBXHVCMDVCXHVCMDVDXHVCMDVFXCIsMjksXCJcdUIwN0VcdUIwN0ZcdUIwODFcdUIwODJcdUIwODNcdUIwODVcIiw2LFwiXHVCMDhFXHVCMDkwXHVCMDkyXCIsNSxcIlx1QjA5Qlx1QjA5RFx1QjA5RVx1QjBBM1x1QjBBNFwiXSxcbltcIjg2NDFcIixcIlx1QjBBNVx1QjBBNlx1QjBBN1x1QjBBQVx1QjBCMFx1QjBCMlx1QjBCNlx1QjBCN1x1QjBCOVx1QjBCQVx1QjBCQlx1QjBCRFwiLDYsXCJcdUIwQzZcdUIwQ0FcIiw1LFwiXHVCMEQyXCJdLFxuW1wiODY2MVwiLFwiXHVCMEQzXHVCMEQ1XHVCMEQ2XHVCMEQ3XHVCMEQ5XCIsNixcIlx1QjBFMVx1QjBFMlx1QjBFM1x1QjBFNFx1QjBFNlwiLDEwXSxcbltcIjg2ODFcIixcIlx1QjBGMVwiLDIyLFwiXHVCMTBBXHVCMTBEXHVCMTBFXHVCMTBGXHVCMTExXHVCMTE0XHVCMTE1XHVCMTE2XHVCMTE3XHVCMTFBXHVCMTFFXCIsNCxcIlx1QjEyNlx1QjEyN1x1QjEyOVx1QjEyQVx1QjEyQlx1QjEyRFwiLDYsXCJcdUIxMzZcdUIxM0FcIiw1LFwiXHVCMTQyXHVCMTQzXHVCMTQ1XHVCMTQ2XHVCMTQ3XHVCMTQ5XCIsNixcIlx1QjE1Mlx1QjE1M1x1QjE1Nlx1QjE1N1x1QjE1OVx1QjE1QVx1QjE1Qlx1QjE1RFx1QjE1RVx1QjE1Rlx1QjE2MVwiLDIyLFwiXHVCMTdBXHVCMTdCXHVCMTdEXHVCMTdFXHVCMTdGXHVCMTgxXHVCMTgzXCIsNCxcIlx1QjE4QVx1QjE4Q1x1QjE4RVx1QjE4Rlx1QjE5MFx1QjE5MVx1QjE5NVx1QjE5Nlx1QjE5N1x1QjE5OVx1QjE5QVx1QjE5Qlx1QjE5RFwiXSxcbltcIjg3NDFcIixcIlx1QjE5RVwiLDksXCJcdUIxQTlcIiwxNV0sXG5bXCI4NzYxXCIsXCJcdUIxQjlcIiwxOCxcIlx1QjFDRFx1QjFDRVx1QjFDRlx1QjFEMVx1QjFEMlx1QjFEM1x1QjFENVwiXSxcbltcIjg3ODFcIixcIlx1QjFENlwiLDUsXCJcdUIxREVcdUIxRTBcIiw3LFwiXHVCMUVBXHVCMUVCXHVCMUVEXHVCMUVFXHVCMUVGXHVCMUYxXCIsNyxcIlx1QjFGQVx1QjFGQ1x1QjFGRVwiLDUsXCJcdUIyMDZcdUIyMDdcdUIyMDlcdUIyMEFcdUIyMERcIiw2LFwiXHVCMjE2XHVCMjE4XHVCMjFBXCIsNSxcIlx1QjIyMVwiLDE4LFwiXHVCMjM1XCIsNixcIlx1QjIzRFwiLDI2LFwiXHVCMjU5XHVCMjVBXHVCMjVCXHVCMjVEXHVCMjVFXHVCMjVGXHVCMjYxXCIsNixcIlx1QjI2QVwiLDRdLFxuW1wiODg0MVwiLFwiXHVCMjZGXCIsNCxcIlx1QjI3NlwiLDUsXCJcdUIyN0RcIiw2LFwiXHVCMjg2XHVCMjg3XHVCMjg4XHVCMjhBXCIsNF0sXG5bXCI4ODYxXCIsXCJcdUIyOEZcdUIyOTJcdUIyOTNcdUIyOTVcdUIyOTZcdUIyOTdcdUIyOUJcIiw0LFwiXHVCMkEyXHVCMkE0XHVCMkE3XHVCMkE4XHVCMkE5XHVCMkFCXHVCMkFEXHVCMkFFXHVCMkFGXHVCMkIxXHVCMkIyXHVCMkIzXHVCMkI1XHVCMkI2XHVCMkI3XCJdLFxuW1wiODg4MVwiLFwiXHVCMkI4XCIsMTUsXCJcdUIyQ0FcdUIyQ0JcdUIyQ0RcdUIyQ0VcdUIyQ0ZcdUIyRDFcdUIyRDNcIiw0LFwiXHVCMkRBXHVCMkRDXHVCMkRFXHVCMkRGXHVCMkUwXHVCMkUxXHVCMkUzXHVCMkU3XHVCMkU5XHVCMkVBXHVCMkYwXHVCMkYxXHVCMkYyXHVCMkY2XHVCMkZDXHVCMkZEXHVCMkZFXHVCMzAyXHVCMzAzXHVCMzA1XHVCMzA2XHVCMzA3XHVCMzA5XCIsNixcIlx1QjMxMlx1QjMxNlwiLDUsXCJcdUIzMURcIiw1NCxcIlx1QjM1N1x1QjM1OVx1QjM1QVx1QjM1RFx1QjM2MFx1QjM2MVx1QjM2Mlx1QjM2M1wiXSxcbltcIjg5NDFcIixcIlx1QjM2Nlx1QjM2OFx1QjM2QVx1QjM2Q1x1QjM2RFx1QjM2Rlx1QjM3Mlx1QjM3M1x1QjM3NVx1QjM3Nlx1QjM3N1x1QjM3OVwiLDYsXCJcdUIzODJcdUIzODZcIiw1LFwiXHVCMzhEXCJdLFxuW1wiODk2MVwiLFwiXHVCMzhFXHVCMzhGXHVCMzkxXHVCMzkyXHVCMzkzXHVCMzk1XCIsMTAsXCJcdUIzQTJcIiw1LFwiXHVCM0E5XHVCM0FBXHVCM0FCXHVCM0FEXCJdLFxuW1wiODk4MVwiLFwiXHVCM0FFXCIsMjEsXCJcdUIzQzZcdUIzQzdcdUIzQzlcdUIzQ0FcdUIzQ0RcdUIzQ0ZcdUIzRDFcdUIzRDJcdUIzRDNcdUIzRDZcdUIzRDhcdUIzREFcdUIzRENcdUIzREVcdUIzREZcdUIzRTFcdUIzRTJcdUIzRTNcdUIzRTVcdUIzRTZcdUIzRTdcdUIzRTlcIiwxOCxcIlx1QjNGRFwiLDE4LFwiXHVCNDExXCIsNixcIlx1QjQxOVx1QjQxQVx1QjQxQlx1QjQxRFx1QjQxRVx1QjQxRlx1QjQyMVwiLDYsXCJcdUI0MkFcdUI0MkNcIiw3LFwiXHVCNDM1XCIsMTVdLFxuW1wiOGE0MVwiLFwiXHVCNDQ1XCIsMTAsXCJcdUI0NTJcdUI0NTNcdUI0NTVcdUI0NTZcdUI0NTdcdUI0NTlcIiw2LFwiXHVCNDYyXHVCNDY0XHVCNDY2XCJdLFxuW1wiOGE2MVwiLFwiXHVCNDY3XCIsNCxcIlx1QjQ2RFwiLDE4LFwiXHVCNDgxXHVCNDgyXCJdLFxuW1wiOGE4MVwiLFwiXHVCNDgzXCIsNCxcIlx1QjQ4OVwiLDE5LFwiXHVCNDlFXCIsNSxcIlx1QjRBNVx1QjRBNlx1QjRBN1x1QjRBOVx1QjRBQVx1QjRBQlx1QjRBRFwiLDcsXCJcdUI0QjZcdUI0QjhcdUI0QkFcIiw1LFwiXHVCNEMxXHVCNEMyXHVCNEMzXHVCNEM1XHVCNEM2XHVCNEM3XHVCNEM5XCIsNixcIlx1QjREMVx1QjREMlx1QjREM1x1QjRENFx1QjRENlwiLDUsXCJcdUI0REVcdUI0REZcdUI0RTFcdUI0RTJcdUI0RTVcdUI0RTdcIiw0LFwiXHVCNEVFXHVCNEYwXHVCNEYyXCIsNSxcIlx1QjRGOVwiLDI2LFwiXHVCNTE2XHVCNTE3XHVCNTE5XHVCNTFBXHVCNTFEXCJdLFxuW1wiOGI0MVwiLFwiXHVCNTFFXCIsNSxcIlx1QjUyNlx1QjUyQlwiLDQsXCJcdUI1MzJcdUI1MzNcdUI1MzVcdUI1MzZcdUI1MzdcdUI1MzlcIiw2LFwiXHVCNTQyXHVCNTQ2XCJdLFxuW1wiOGI2MVwiLFwiXHVCNTQ3XHVCNTQ4XHVCNTQ5XHVCNTRBXHVCNTRFXHVCNTRGXHVCNTUxXHVCNTUyXHVCNTUzXHVCNTU1XCIsNixcIlx1QjU1RVx1QjU2MlwiLDhdLFxuW1wiOGI4MVwiLFwiXHVCNTZCXCIsNTIsXCJcdUI1QTJcdUI1QTNcdUI1QTVcdUI1QTZcdUI1QTdcdUI1QTlcdUI1QUNcdUI1QURcdUI1QUVcdUI1QUZcdUI1QjJcdUI1QjZcIiw0LFwiXHVCNUJFXHVCNUJGXHVCNUMxXHVCNUMyXHVCNUMzXHVCNUM1XCIsNixcIlx1QjVDRVx1QjVEMlwiLDUsXCJcdUI1RDlcIiwxOCxcIlx1QjVFRFwiLDE4XSxcbltcIjhjNDFcIixcIlx1QjYwMFwiLDE1LFwiXHVCNjEyXHVCNjEzXHVCNjE1XHVCNjE2XHVCNjE3XHVCNjE5XCIsNF0sXG5bXCI4YzYxXCIsXCJcdUI2MUVcIiw2LFwiXHVCNjI2XCIsNSxcIlx1QjYyRFwiLDYsXCJcdUI2MzVcIiw1XSxcbltcIjhjODFcIixcIlx1QjYzQlwiLDEyLFwiXHVCNjQ5XCIsMjYsXCJcdUI2NjVcdUI2NjZcdUI2NjdcdUI2NjlcIiw1MCxcIlx1QjY5RVx1QjY5Rlx1QjZBMVx1QjZBMlx1QjZBM1x1QjZBNVwiLDUsXCJcdUI2QURcdUI2QUVcdUI2QUZcdUI2QjBcdUI2QjJcIiwxNl0sXG5bXCI4ZDQxXCIsXCJcdUI2QzNcIiwxNixcIlx1QjZENVwiLDhdLFxuW1wiOGQ2MVwiLFwiXHVCNkRFXCIsMTcsXCJcdUI2RjFcdUI2RjJcdUI2RjNcdUI2RjVcdUI2RjZcdUI2RjdcdUI2RjlcdUI2RkFcIl0sXG5bXCI4ZDgxXCIsXCJcdUI2RkJcIiw0LFwiXHVCNzAyXHVCNzAzXHVCNzA0XHVCNzA2XCIsMzMsXCJcdUI3MkFcdUI3MkJcdUI3MkRcdUI3MkVcdUI3MzFcIiw2LFwiXHVCNzNBXHVCNzNDXCIsNyxcIlx1Qjc0NVx1Qjc0Nlx1Qjc0N1x1Qjc0OVx1Qjc0QVx1Qjc0Qlx1Qjc0RFwiLDYsXCJcdUI3NTZcIiw5LFwiXHVCNzYxXHVCNzYyXHVCNzYzXHVCNzY1XHVCNzY2XHVCNzY3XHVCNzY5XCIsNixcIlx1Qjc3Mlx1Qjc3NFx1Qjc3NlwiLDUsXCJcdUI3N0VcdUI3N0ZcdUI3ODFcdUI3ODJcdUI3ODNcdUI3ODVcIiw2LFwiXHVCNzhFXHVCNzkzXHVCNzk0XHVCNzk1XHVCNzlBXHVCNzlCXHVCNzlEXHVCNzlFXCJdLFxuW1wiOGU0MVwiLFwiXHVCNzlGXHVCN0ExXCIsNixcIlx1QjdBQVx1QjdBRVwiLDUsXCJcdUI3QjZcdUI3QjdcdUI3QjlcIiw4XSxcbltcIjhlNjFcIixcIlx1QjdDMlwiLDQsXCJcdUI3QzhcdUI3Q0FcIiwxOV0sXG5bXCI4ZTgxXCIsXCJcdUI3REVcIiwxMyxcIlx1QjdFRVx1QjdFRlx1QjdGMVx1QjdGMlx1QjdGM1x1QjdGNVwiLDYsXCJcdUI3RkVcdUI4MDJcIiw0LFwiXHVCODBBXHVCODBCXHVCODBEXHVCODBFXHVCODBGXHVCODExXCIsNixcIlx1QjgxQVx1QjgxQ1x1QjgxRVwiLDUsXCJcdUI4MjZcdUI4MjdcdUI4MjlcdUI4MkFcdUI4MkJcdUI4MkRcIiw2LFwiXHVCODM2XHVCODNBXCIsNSxcIlx1Qjg0MVx1Qjg0Mlx1Qjg0M1x1Qjg0NVwiLDExLFwiXHVCODUyXHVCODU0XCIsNyxcIlx1Qjg1RVx1Qjg1Rlx1Qjg2MVx1Qjg2Mlx1Qjg2M1x1Qjg2NVwiLDYsXCJcdUI4NkVcdUI4NzBcdUI4NzJcIiw1LFwiXHVCODc5XHVCODdBXHVCODdCXHVCODdEXCIsN10sXG5bXCI4ZjQxXCIsXCJcdUI4ODVcIiw3LFwiXHVCODhFXCIsMTddLFxuW1wiOGY2MVwiLFwiXHVCOEEwXCIsNyxcIlx1QjhBOVwiLDYsXCJcdUI4QjFcdUI4QjJcdUI4QjNcdUI4QjVcdUI4QjZcdUI4QjdcdUI4QjlcIiw0XSxcbltcIjhmODFcIixcIlx1QjhCRVx1QjhCRlx1QjhDMlx1QjhDNFx1QjhDNlwiLDUsXCJcdUI4Q0RcdUI4Q0VcdUI4Q0ZcdUI4RDFcdUI4RDJcdUI4RDNcdUI4RDVcIiw3LFwiXHVCOERFXHVCOEUwXHVCOEUyXCIsNSxcIlx1QjhFQVx1QjhFQlx1QjhFRFx1QjhFRVx1QjhFRlx1QjhGMVwiLDYsXCJcdUI4RkFcdUI4RkNcdUI4RkVcIiw1LFwiXHVCOTA1XCIsMTgsXCJcdUI5MTlcIiw2LFwiXHVCOTIxXCIsMjYsXCJcdUI5M0VcdUI5M0ZcdUI5NDFcdUI5NDJcdUI5NDNcdUI5NDVcIiw2LFwiXHVCOTREXHVCOTRFXHVCOTUwXHVCOTUyXCIsNV0sXG5bXCI5MDQxXCIsXCJcdUI5NUFcdUI5NUJcdUI5NURcdUI5NUVcdUI5NUZcdUI5NjFcIiw2LFwiXHVCOTZBXHVCOTZDXHVCOTZFXCIsNSxcIlx1Qjk3Nlx1Qjk3N1x1Qjk3OVx1Qjk3QVx1Qjk3Qlx1Qjk3RFwiXSxcbltcIjkwNjFcIixcIlx1Qjk3RVwiLDUsXCJcdUI5ODZcdUI5ODhcdUI5OEJcdUI5OENcdUI5OEZcIiwxNV0sXG5bXCI5MDgxXCIsXCJcdUI5OUZcIiwxMixcIlx1QjlBRVx1QjlBRlx1QjlCMVx1QjlCMlx1QjlCM1x1QjlCNVwiLDYsXCJcdUI5QkVcdUI5QzBcdUI5QzJcIiw1LFwiXHVCOUNBXHVCOUNCXHVCOUNEXHVCOUQzXCIsNCxcIlx1QjlEQVx1QjlEQ1x1QjlERlx1QjlFMFx1QjlFMlx1QjlFNlx1QjlFN1x1QjlFOVx1QjlFQVx1QjlFQlx1QjlFRFwiLDYsXCJcdUI5RjZcdUI5RkJcIiw0LFwiXHVCQTAyXCIsNSxcIlx1QkEwOVwiLDExLFwiXHVCQTE2XCIsMzMsXCJcdUJBM0FcdUJBM0JcdUJBM0RcdUJBM0VcdUJBM0ZcdUJBNDFcdUJBNDNcdUJBNDRcdUJBNDVcdUJBNDZcIl0sXG5bXCI5MTQxXCIsXCJcdUJBNDdcdUJBNEFcdUJBNENcdUJBNEZcdUJBNTBcdUJBNTFcdUJBNTJcdUJBNTZcdUJBNTdcdUJBNTlcdUJBNUFcdUJBNUJcdUJBNURcIiw2LFwiXHVCQTY2XHVCQTZBXCIsNV0sXG5bXCI5MTYxXCIsXCJcdUJBNzJcdUJBNzNcdUJBNzVcdUJBNzZcdUJBNzdcdUJBNzlcIiw5LFwiXHVCQTg2XHVCQTg4XHVCQTg5XHVCQThBXHVCQThCXHVCQThEXCIsNV0sXG5bXCI5MTgxXCIsXCJcdUJBOTNcIiwyMCxcIlx1QkFBQVx1QkFBRFx1QkFBRVx1QkFBRlx1QkFCMVx1QkFCM1wiLDQsXCJcdUJBQkFcdUJBQkNcdUJBQkVcIiw1LFwiXHVCQUM1XHVCQUM2XHVCQUM3XHVCQUM5XCIsMTQsXCJcdUJBREFcIiwzMyxcIlx1QkFGRFx1QkFGRVx1QkFGRlx1QkIwMVx1QkIwMlx1QkIwM1x1QkIwNVwiLDcsXCJcdUJCMEVcdUJCMTBcdUJCMTJcIiw1LFwiXHVCQjE5XHVCQjFBXHVCQjFCXHVCQjFEXHVCQjFFXHVCQjFGXHVCQjIxXCIsNl0sXG5bXCI5MjQxXCIsXCJcdUJCMjhcdUJCMkFcdUJCMkNcIiw3LFwiXHVCQjM3XHVCQjM5XHVCQjNBXHVCQjNGXCIsNCxcIlx1QkI0Nlx1QkI0OFx1QkI0QVx1QkI0Qlx1QkI0Q1x1QkI0RVx1QkI1MVx1QkI1MlwiXSxcbltcIjkyNjFcIixcIlx1QkI1M1x1QkI1NVx1QkI1Nlx1QkI1N1x1QkI1OVwiLDcsXCJcdUJCNjJcdUJCNjRcIiw3LFwiXHVCQjZEXCIsNF0sXG5bXCI5MjgxXCIsXCJcdUJCNzJcIiwyMSxcIlx1QkI4OVx1QkI4QVx1QkI4Qlx1QkI4RFx1QkI4RVx1QkI4Rlx1QkI5MVwiLDE4LFwiXHVCQkE1XHVCQkE2XHVCQkE3XHVCQkE5XHVCQkFBXHVCQkFCXHVCQkFEXCIsNixcIlx1QkJCNVx1QkJCNlx1QkJCOFwiLDcsXCJcdUJCQzFcdUJCQzJcdUJCQzNcdUJCQzVcdUJCQzZcdUJCQzdcdUJCQzlcIiw2LFwiXHVCQkQxXHVCQkQyXHVCQkQ0XCIsMzUsXCJcdUJCRkFcdUJCRkJcdUJCRkRcdUJCRkVcdUJDMDFcIl0sXG5bXCI5MzQxXCIsXCJcdUJDMDNcIiw0LFwiXHVCQzBBXHVCQzBFXHVCQzEwXHVCQzEyXHVCQzEzXHVCQzE5XHVCQzFBXHVCQzIwXHVCQzIxXHVCQzIyXHVCQzIzXHVCQzI2XHVCQzI4XHVCQzJBXHVCQzJCXHVCQzJDXHVCQzJFXHVCQzJGXHVCQzMyXHVCQzMzXHVCQzM1XCJdLFxuW1wiOTM2MVwiLFwiXHVCQzM2XHVCQzM3XHVCQzM5XCIsNixcIlx1QkM0Mlx1QkM0Nlx1QkM0N1x1QkM0OFx1QkM0QVx1QkM0Qlx1QkM0RVx1QkM0Rlx1QkM1MVwiLDhdLFxuW1wiOTM4MVwiLFwiXHVCQzVBXHVCQzVCXHVCQzVDXHVCQzVFXCIsMzcsXCJcdUJDODZcdUJDODdcdUJDODlcdUJDOEFcdUJDOERcdUJDOEZcIiw0LFwiXHVCQzk2XHVCQzk4XHVCQzlCXCIsNCxcIlx1QkNBMlx1QkNBM1x1QkNBNVx1QkNBNlx1QkNBOVwiLDYsXCJcdUJDQjJcdUJDQjZcIiw1LFwiXHVCQ0JFXHVCQ0JGXHVCQ0MxXHVCQ0MyXHVCQ0MzXHVCQ0M1XCIsNyxcIlx1QkNDRVx1QkNEMlx1QkNEM1x1QkNENFx1QkNENlx1QkNEN1x1QkNEOVx1QkNEQVx1QkNEQlx1QkNERFwiLDIyLFwiXHVCQ0Y3XHVCQ0Y5XHVCQ0ZBXHVCQ0ZCXHVCQ0ZEXCJdLFxuW1wiOTQ0MVwiLFwiXHVCQ0ZFXCIsNSxcIlx1QkQwNlx1QkQwOFx1QkQwQVwiLDUsXCJcdUJEMTFcdUJEMTJcdUJEMTNcdUJEMTVcIiw4XSxcbltcIjk0NjFcIixcIlx1QkQxRVwiLDUsXCJcdUJEMjVcIiw2LFwiXHVCRDJEXCIsMTJdLFxuW1wiOTQ4MVwiLFwiXHVCRDNBXCIsNSxcIlx1QkQ0MVwiLDYsXCJcdUJENEFcdUJENEJcdUJENERcdUJENEVcdUJENEZcdUJENTFcIiw2LFwiXHVCRDVBXCIsOSxcIlx1QkQ2NVx1QkQ2Nlx1QkQ2N1x1QkQ2OVwiLDIyLFwiXHVCRDgyXHVCRDgzXHVCRDg1XHVCRDg2XHVCRDhCXCIsNCxcIlx1QkQ5Mlx1QkQ5NFx1QkQ5Nlx1QkQ5N1x1QkQ5OFx1QkQ5Qlx1QkQ5RFwiLDYsXCJcdUJEQTVcIiwxMCxcIlx1QkRCMVwiLDYsXCJcdUJEQjlcIiwyNF0sXG5bXCI5NTQxXCIsXCJcdUJERDJcdUJERDNcdUJERDZcdUJERDdcdUJERDlcdUJEREFcdUJEREJcdUJERERcIiwxMSxcIlx1QkRFQVwiLDUsXCJcdUJERjFcIl0sXG5bXCI5NTYxXCIsXCJcdUJERjJcdUJERjNcdUJERjVcdUJERjZcdUJERjdcdUJERjlcIiw2LFwiXHVCRTAxXHVCRTAyXHVCRTA0XHVCRTA2XCIsNSxcIlx1QkUwRVx1QkUwRlx1QkUxMVx1QkUxMlx1QkUxM1wiXSxcbltcIjk1ODFcIixcIlx1QkUxNVwiLDYsXCJcdUJFMUVcdUJFMjBcIiwzNSxcIlx1QkU0Nlx1QkU0N1x1QkU0OVx1QkU0QVx1QkU0Qlx1QkU0RFx1QkU0RlwiLDQsXCJcdUJFNTZcdUJFNThcdUJFNUNcdUJFNURcdUJFNUVcdUJFNUZcdUJFNjJcdUJFNjNcdUJFNjVcdUJFNjZcdUJFNjdcdUJFNjlcdUJFNkJcIiw0LFwiXHVCRTcyXHVCRTc2XCIsNCxcIlx1QkU3RVx1QkU3Rlx1QkU4MVx1QkU4Mlx1QkU4M1x1QkU4NVwiLDYsXCJcdUJFOEVcdUJFOTJcIiw1LFwiXHVCRTlBXCIsMTMsXCJcdUJFQTlcIiwxNF0sXG5bXCI5NjQxXCIsXCJcdUJFQjhcIiwyMyxcIlx1QkVEMlx1QkVEM1wiXSxcbltcIjk2NjFcIixcIlx1QkVENVx1QkVENlx1QkVEOVwiLDYsXCJcdUJFRTFcdUJFRTJcdUJFRTZcIiw1LFwiXHVCRUVEXCIsOF0sXG5bXCI5NjgxXCIsXCJcdUJFRjZcIiwxMCxcIlx1QkYwMlwiLDUsXCJcdUJGMEFcIiwxMyxcIlx1QkYxQVx1QkYxRVwiLDMzLFwiXHVCRjQyXHVCRjQzXHVCRjQ1XHVCRjQ2XHVCRjQ3XHVCRjQ5XCIsNixcIlx1QkY1Mlx1QkY1M1x1QkY1NFx1QkY1NlwiLDQ0XSxcbltcIjk3NDFcIixcIlx1QkY4M1wiLDE2LFwiXHVCRjk1XCIsOF0sXG5bXCI5NzYxXCIsXCJcdUJGOUVcIiwxNyxcIlx1QkZCMVwiLDddLFxuW1wiOTc4MVwiLFwiXHVCRkI5XCIsMTEsXCJcdUJGQzZcIiw1LFwiXHVCRkNFXHVCRkNGXHVCRkQxXHVCRkQyXHVCRkQzXHVCRkQ1XCIsNixcIlx1QkZERFx1QkZERVx1QkZFMFx1QkZFMlwiLDg5LFwiXHVDMDNEXHVDMDNFXHVDMDNGXCJdLFxuW1wiOTg0MVwiLFwiXHVDMDQwXCIsMTYsXCJcdUMwNTJcIiw1LFwiXHVDMDU5XHVDMDVBXHVDMDVCXCJdLFxuW1wiOTg2MVwiLFwiXHVDMDVEXHVDMDVFXHVDMDVGXHVDMDYxXCIsNixcIlx1QzA2QVwiLDE1XSxcbltcIjk4ODFcIixcIlx1QzA3QVwiLDIxLFwiXHVDMDkyXHVDMDkzXHVDMDk1XHVDMDk2XHVDMDk3XHVDMDk5XCIsNixcIlx1QzBBMlx1QzBBNFx1QzBBNlwiLDUsXCJcdUMwQUVcdUMwQjFcdUMwQjJcdUMwQjdcIiw0LFwiXHVDMEJFXHVDMEMyXHVDMEMzXHVDMEM0XHVDMEM2XHVDMEM3XHVDMENBXHVDMENCXHVDMENEXHVDMENFXHVDMENGXHVDMEQxXCIsNixcIlx1QzBEQVx1QzBERVwiLDUsXCJcdUMwRTZcdUMwRTdcdUMwRTlcdUMwRUFcdUMwRUJcdUMwRURcIiw2LFwiXHVDMEY2XHVDMEY4XHVDMEZBXCIsNSxcIlx1QzEwMVx1QzEwMlx1QzEwM1x1QzEwNVx1QzEwNlx1QzEwN1x1QzEwOVwiLDYsXCJcdUMxMTFcdUMxMTJcdUMxMTNcdUMxMTRcdUMxMTZcIiw1LFwiXHVDMTIxXHVDMTIyXHVDMTI1XHVDMTI4XHVDMTI5XHVDMTJBXHVDMTJCXHVDMTJFXCJdLFxuW1wiOTk0MVwiLFwiXHVDMTMyXHVDMTMzXHVDMTM0XHVDMTM1XHVDMTM3XHVDMTNBXHVDMTNCXHVDMTNEXHVDMTNFXHVDMTNGXHVDMTQxXCIsNixcIlx1QzE0QVx1QzE0RVwiLDUsXCJcdUMxNTZcdUMxNTdcIl0sXG5bXCI5OTYxXCIsXCJcdUMxNTlcdUMxNUFcdUMxNUJcdUMxNURcIiw2LFwiXHVDMTY2XHVDMTZBXCIsNSxcIlx1QzE3MVx1QzE3Mlx1QzE3M1x1QzE3NVx1QzE3Nlx1QzE3N1x1QzE3OVx1QzE3QVx1QzE3QlwiXSxcbltcIjk5ODFcIixcIlx1QzE3Q1wiLDgsXCJcdUMxODZcIiw1LFwiXHVDMThGXHVDMTkxXHVDMTkyXHVDMTkzXHVDMTk1XHVDMTk3XCIsNCxcIlx1QzE5RVx1QzFBMFx1QzFBMlx1QzFBM1x1QzFBNFx1QzFBNlx1QzFBN1x1QzFBQVx1QzFBQlx1QzFBRFx1QzFBRVx1QzFBRlx1QzFCMVwiLDExLFwiXHVDMUJFXCIsNSxcIlx1QzFDNVx1QzFDNlx1QzFDN1x1QzFDOVx1QzFDQVx1QzFDQlx1QzFDRFwiLDYsXCJcdUMxRDVcdUMxRDZcdUMxRDlcIiw2LFwiXHVDMUUxXHVDMUUyXHVDMUUzXHVDMUU1XHVDMUU2XHVDMUU3XHVDMUU5XCIsNixcIlx1QzFGMlx1QzFGNFwiLDcsXCJcdUMxRkVcdUMxRkZcdUMyMDFcdUMyMDJcdUMyMDNcdUMyMDVcIiw2LFwiXHVDMjBFXHVDMjEwXHVDMjEyXCIsNSxcIlx1QzIxQVx1QzIxQlx1QzIxRFx1QzIxRVx1QzIyMVx1QzIyMlx1QzIyM1wiXSxcbltcIjlhNDFcIixcIlx1QzIyNFx1QzIyNVx1QzIyNlx1QzIyN1x1QzIyQVx1QzIyQ1x1QzIyRVx1QzIzMFx1QzIzM1x1QzIzNVwiLDE2XSxcbltcIjlhNjFcIixcIlx1QzI0Nlx1QzI0N1x1QzI0OVwiLDYsXCJcdUMyNTJcdUMyNTNcdUMyNTVcdUMyNTZcdUMyNTdcdUMyNTlcIiw2LFwiXHVDMjYxXHVDMjYyXHVDMjYzXHVDMjY0XHVDMjY2XCJdLFxuW1wiOWE4MVwiLFwiXHVDMjY3XCIsNCxcIlx1QzI2RVx1QzI2Rlx1QzI3MVx1QzI3Mlx1QzI3M1x1QzI3NVwiLDYsXCJcdUMyN0VcdUMyODBcdUMyODJcIiw1LFwiXHVDMjhBXCIsNSxcIlx1QzI5MVwiLDYsXCJcdUMyOTlcdUMyOUFcdUMyOUNcdUMyOUVcIiw1LFwiXHVDMkE2XHVDMkE3XHVDMkE5XHVDMkFBXHVDMkFCXHVDMkFFXCIsNSxcIlx1QzJCNlx1QzJCOFx1QzJCQVwiLDMzLFwiXHVDMkRFXHVDMkRGXHVDMkUxXHVDMkUyXHVDMkU1XCIsNSxcIlx1QzJFRVx1QzJGMFx1QzJGMlx1QzJGM1x1QzJGNFx1QzJGNVx1QzJGN1x1QzJGQVx1QzJGRFx1QzJGRVx1QzJGRlx1QzMwMVwiLDYsXCJcdUMzMEFcdUMzMEJcdUMzMEVcdUMzMEZcIl0sXG5bXCI5YjQxXCIsXCJcdUMzMTBcdUMzMTFcdUMzMTJcdUMzMTZcdUMzMTdcdUMzMTlcdUMzMUFcdUMzMUJcdUMzMURcIiw2LFwiXHVDMzI2XHVDMzI3XHVDMzJBXCIsOF0sXG5bXCI5YjYxXCIsXCJcdUMzMzNcIiwxNyxcIlx1QzM0NlwiLDddLFxuW1wiOWI4MVwiLFwiXHVDMzRFXCIsMjUsXCJcdUMzNkFcdUMzNkJcdUMzNkRcdUMzNkVcdUMzNkZcdUMzNzFcdUMzNzNcIiw0LFwiXHVDMzdBXHVDMzdCXHVDMzdFXCIsNSxcIlx1QzM4NVx1QzM4Nlx1QzM4N1x1QzM4OVx1QzM4QVx1QzM4Qlx1QzM4RFwiLDUwLFwiXHVDM0MxXCIsMjIsXCJcdUMzREFcIl0sXG5bXCI5YzQxXCIsXCJcdUMzREJcdUMzRERcdUMzREVcdUMzRTFcdUMzRTNcIiw0LFwiXHVDM0VBXHVDM0VCXHVDM0VDXHVDM0VFXCIsNSxcIlx1QzNGNlx1QzNGN1x1QzNGOVwiLDVdLFxuW1wiOWM2MVwiLFwiXHVDM0ZGXCIsOCxcIlx1QzQwOVwiLDYsXCJcdUM0MTFcIiw5XSxcbltcIjljODFcIixcIlx1QzQxQlwiLDgsXCJcdUM0MjVcIiw2LFwiXHVDNDJEXHVDNDJFXHVDNDJGXHVDNDMxXHVDNDMyXHVDNDMzXHVDNDM1XCIsNixcIlx1QzQzRVwiLDksXCJcdUM0NDlcIiwyNixcIlx1QzQ2Nlx1QzQ2N1x1QzQ2OVx1QzQ2QVx1QzQ2Qlx1QzQ2RFwiLDYsXCJcdUM0NzZcdUM0NzdcdUM0NzhcdUM0N0FcIiw1LFwiXHVDNDgxXCIsMTgsXCJcdUM0OTVcIiw2LFwiXHVDNDlEXCIsMTJdLFxuW1wiOWQ0MVwiLFwiXHVDNEFBXCIsMTMsXCJcdUM0QjlcdUM0QkFcdUM0QkJcdUM0QkRcIiw4XSxcbltcIjlkNjFcIixcIlx1QzRDNlwiLDI1XSxcbltcIjlkODFcIixcIlx1QzRFMFwiLDgsXCJcdUM0RUFcIiw1LFwiXHVDNEYyXHVDNEYzXHVDNEY1XHVDNEY2XHVDNEY3XHVDNEY5XHVDNEZCXHVDNEZDXHVDNEZEXHVDNEZFXHVDNTAyXCIsOSxcIlx1QzUwRFx1QzUwRVx1QzUwRlx1QzUxMVx1QzUxMlx1QzUxM1x1QzUxNVwiLDYsXCJcdUM1MURcIiwxMCxcIlx1QzUyQVx1QzUyQlx1QzUyRFx1QzUyRVx1QzUyRlx1QzUzMVwiLDYsXCJcdUM1M0FcdUM1M0NcdUM1M0VcIiw1LFwiXHVDNTQ2XHVDNTQ3XHVDNTRCXHVDNTRGXHVDNTUwXHVDNTUxXHVDNTUyXHVDNTU2XHVDNTVBXHVDNTVCXHVDNTVDXHVDNTVGXHVDNTYyXHVDNTYzXHVDNTY1XHVDNTY2XHVDNTY3XHVDNTY5XCIsNixcIlx1QzU3Mlx1QzU3NlwiLDUsXCJcdUM1N0VcdUM1N0ZcdUM1ODFcdUM1ODJcdUM1ODNcdUM1ODVcdUM1ODZcdUM1ODhcdUM1ODlcdUM1OEFcdUM1OEJcdUM1OEVcdUM1OTBcdUM1OTJcdUM1OTNcdUM1OTRcIl0sXG5bXCI5ZTQxXCIsXCJcdUM1OTZcdUM1OTlcdUM1OUFcdUM1OUJcdUM1OURcdUM1OUVcdUM1OUZcdUM1QTFcIiw3LFwiXHVDNUFBXCIsOSxcIlx1QzVCNlwiXSxcbltcIjllNjFcIixcIlx1QzVCN1x1QzVCQVx1QzVCRlwiLDQsXCJcdUM1Q0JcdUM1Q0RcdUM1Q0ZcdUM1RDJcdUM1RDNcdUM1RDVcdUM1RDZcdUM1RDdcdUM1RDlcIiw2LFwiXHVDNUUyXHVDNUU0XHVDNUU2XHVDNUU3XCJdLFxuW1wiOWU4MVwiLFwiXHVDNUU4XHVDNUU5XHVDNUVBXHVDNUVCXHVDNUVGXHVDNUYxXHVDNUYyXHVDNUYzXHVDNUY1XHVDNUY4XHVDNUY5XHVDNUZBXHVDNUZCXHVDNjAyXHVDNjAzXHVDNjA0XHVDNjA5XHVDNjBBXHVDNjBCXHVDNjBEXHVDNjBFXHVDNjBGXHVDNjExXCIsNixcIlx1QzYxQVx1QzYxRFwiLDYsXCJcdUM2MjZcdUM2MjdcdUM2MjlcdUM2MkFcdUM2MkJcdUM2MkZcdUM2MzFcdUM2MzJcdUM2MzZcdUM2MzhcdUM2M0FcdUM2M0NcdUM2M0RcdUM2M0VcdUM2M0ZcdUM2NDJcdUM2NDNcdUM2NDVcdUM2NDZcdUM2NDdcdUM2NDlcIiw2LFwiXHVDNjUyXHVDNjU2XCIsNSxcIlx1QzY1RVx1QzY1Rlx1QzY2MVwiLDEwLFwiXHVDNjZEXHVDNjZFXHVDNjcwXHVDNjcyXCIsNSxcIlx1QzY3QVx1QzY3Qlx1QzY3RFx1QzY3RVx1QzY3Rlx1QzY4MVwiLDYsXCJcdUM2OEFcdUM2OENcdUM2OEVcIiw1LFwiXHVDNjk2XHVDNjk3XHVDNjk5XHVDNjlBXHVDNjlCXHVDNjlEXCIsNixcIlx1QzZBNlwiXSxcbltcIjlmNDFcIixcIlx1QzZBOFx1QzZBQVwiLDUsXCJcdUM2QjJcdUM2QjNcdUM2QjVcdUM2QjZcdUM2QjdcdUM2QkJcIiw0LFwiXHVDNkMyXHVDNkM0XHVDNkM2XCIsNSxcIlx1QzZDRVwiXSxcbltcIjlmNjFcIixcIlx1QzZDRlx1QzZEMVx1QzZEMlx1QzZEM1x1QzZENVwiLDYsXCJcdUM2REVcdUM2REZcdUM2RTJcIiw1LFwiXHVDNkVBXHVDNkVCXHVDNkVEXHVDNkVFXHVDNkVGXHVDNkYxXHVDNkYyXCJdLFxuW1wiOWY4MVwiLFwiXHVDNkYzXCIsNCxcIlx1QzZGQVx1QzZGQlx1QzZGQ1x1QzZGRVwiLDUsXCJcdUM3MDZcdUM3MDdcdUM3MDlcdUM3MEFcdUM3MEJcdUM3MERcIiw2LFwiXHVDNzE2XHVDNzE4XHVDNzFBXCIsNSxcIlx1QzcyMlx1QzcyM1x1QzcyNVx1QzcyNlx1QzcyN1x1QzcyOVwiLDYsXCJcdUM3MzJcdUM3MzRcdUM3MzZcdUM3MzhcdUM3MzlcdUM3M0FcdUM3M0JcdUM3M0VcdUM3M0ZcdUM3NDFcdUM3NDJcdUM3NDNcdUM3NDVcIiw0LFwiXHVDNzRCXHVDNzRFXHVDNzUwXHVDNzU5XHVDNzVBXHVDNzVCXHVDNzVEXHVDNzVFXHVDNzVGXHVDNzYxXCIsNixcIlx1Qzc2OVx1Qzc2QVx1Qzc2Q1wiLDcsXCJcdUM3NzZcdUM3NzdcdUM3NzlcdUM3N0FcdUM3N0JcdUM3N0ZcdUM3ODBcdUM3ODFcdUM3ODJcdUM3ODZcdUM3OEJcdUM3OENcdUM3OERcdUM3OEZcdUM3OTJcdUM3OTNcdUM3OTVcdUM3OTlcdUM3OUJcIiw0LFwiXHVDN0EyXHVDN0E3XCIsNCxcIlx1QzdBRVx1QzdBRlx1QzdCMVx1QzdCMlx1QzdCM1x1QzdCNVx1QzdCNlx1QzdCN1wiXSxcbltcImEwNDFcIixcIlx1QzdCOFx1QzdCOVx1QzdCQVx1QzdCQlx1QzdCRVx1QzdDMlwiLDUsXCJcdUM3Q0FcdUM3Q0JcdUM3Q0RcdUM3Q0ZcdUM3RDFcIiw2LFwiXHVDN0Q5XHVDN0RBXHVDN0RCXHVDN0RDXCJdLFxuW1wiYTA2MVwiLFwiXHVDN0RFXCIsNSxcIlx1QzdFNVx1QzdFNlx1QzdFN1x1QzdFOVx1QzdFQVx1QzdFQlx1QzdFRFwiLDEzXSxcbltcImEwODFcIixcIlx1QzdGQlwiLDQsXCJcdUM4MDJcdUM4MDNcdUM4MDVcdUM4MDZcdUM4MDdcdUM4MDlcdUM4MEJcIiw0LFwiXHVDODEyXHVDODE0XHVDODE3XCIsNCxcIlx1QzgxRVx1QzgxRlx1QzgyMVx1QzgyMlx1QzgyM1x1QzgyNVwiLDYsXCJcdUM4MkVcdUM4MzBcdUM4MzJcIiw1LFwiXHVDODM5XHVDODNBXHVDODNCXHVDODNEXHVDODNFXHVDODNGXHVDODQxXCIsNixcIlx1Qzg0QVx1Qzg0Qlx1Qzg0RVwiLDUsXCJcdUM4NTVcIiwyNixcIlx1Qzg3Mlx1Qzg3M1x1Qzg3NVx1Qzg3Nlx1Qzg3N1x1Qzg3OVx1Qzg3QlwiLDQsXCJcdUM4ODJcdUM4ODRcdUM4ODhcdUM4ODlcdUM4OEFcdUM4OEVcIiw1LFwiXHVDODk1XCIsNyxcIlx1Qzg5RVx1QzhBMFx1QzhBMlx1QzhBM1x1QzhBNFwiXSxcbltcImExNDFcIixcIlx1QzhBNVx1QzhBNlx1QzhBN1x1QzhBOVwiLDE4LFwiXHVDOEJFXHVDOEJGXHVDOEMwXHVDOEMxXCJdLFxuW1wiYTE2MVwiLFwiXHVDOEMyXHVDOEMzXHVDOEM1XHVDOEM2XHVDOEM3XHVDOEM5XHVDOENBXHVDOENCXHVDOENEXCIsNixcIlx1QzhENlx1QzhEOFx1QzhEQVwiLDUsXCJcdUM4RTJcdUM4RTNcdUM4RTVcIl0sXG5bXCJhMTgxXCIsXCJcdUM4RTZcIiwxNCxcIlx1QzhGNlwiLDUsXCJcdUM4RkVcdUM4RkZcdUM5MDFcdUM5MDJcdUM5MDNcdUM5MDdcIiw0LFwiXHVDOTBFXHUzMDAwXHUzMDAxXHUzMDAyXHUwMEI3XHUyMDI1XHUyMDI2XHUwMEE4XHUzMDAzXHUwMEFEXHUyMDE1XHUyMjI1XHVGRjNDXHUyMjNDXHUyMDE4XHUyMDE5XHUyMDFDXHUyMDFEXHUzMDE0XHUzMDE1XHUzMDA4XCIsOSxcIlx1MDBCMVx1MDBEN1x1MDBGN1x1MjI2MFx1MjI2NFx1MjI2NVx1MjIxRVx1MjIzNFx1MDBCMFx1MjAzMlx1MjAzM1x1MjEwM1x1MjEyQlx1RkZFMFx1RkZFMVx1RkZFNVx1MjY0Mlx1MjY0MFx1MjIyMFx1MjJBNVx1MjMxMlx1MjIwMlx1MjIwN1x1MjI2MVx1MjI1Mlx1MDBBN1x1MjAzQlx1MjYwNlx1MjYwNVx1MjVDQlx1MjVDRlx1MjVDRVx1MjVDN1x1MjVDNlx1MjVBMVx1MjVBMFx1MjVCM1x1MjVCMlx1MjVCRFx1MjVCQ1x1MjE5Mlx1MjE5MFx1MjE5MVx1MjE5M1x1MjE5NFx1MzAxM1x1MjI2QVx1MjI2Qlx1MjIxQVx1MjIzRFx1MjIxRFx1MjIzNVx1MjIyQlx1MjIyQ1x1MjIwOFx1MjIwQlx1MjI4Nlx1MjI4N1x1MjI4Mlx1MjI4M1x1MjIyQVx1MjIyOVx1MjIyN1x1MjIyOFx1RkZFMlwiXSxcbltcImEyNDFcIixcIlx1QzkxMFx1QzkxMlwiLDUsXCJcdUM5MTlcIiwxOF0sXG5bXCJhMjYxXCIsXCJcdUM5MkRcIiw2LFwiXHVDOTM1XCIsMThdLFxuW1wiYTI4MVwiLFwiXHVDOTQ4XCIsNyxcIlx1Qzk1Mlx1Qzk1M1x1Qzk1NVx1Qzk1Nlx1Qzk1N1x1Qzk1OVwiLDYsXCJcdUM5NjJcdUM5NjRcIiw3LFwiXHVDOTZEXHVDOTZFXHVDOTZGXHUyMUQyXHUyMUQ0XHUyMjAwXHUyMjAzXHUwMEI0XHVGRjVFXHUwMkM3XHUwMkQ4XHUwMkREXHUwMkRBXHUwMkQ5XHUwMEI4XHUwMkRCXHUwMEExXHUwMEJGXHUwMkQwXHUyMjJFXHUyMjExXHUyMjBGXHUwMEE0XHUyMTA5XHUyMDMwXHUyNUMxXHUyNUMwXHUyNUI3XHUyNUI2XHUyNjY0XHUyNjYwXHUyNjYxXHUyNjY1XHUyNjY3XHUyNjYzXHUyMjk5XHUyNUM4XHUyNUEzXHUyNUQwXHUyNUQxXHUyNTkyXHUyNUE0XHUyNUE1XHUyNUE4XHUyNUE3XHUyNUE2XHUyNUE5XHUyNjY4XHUyNjBGXHUyNjBFXHUyNjFDXHUyNjFFXHUwMEI2XHUyMDIwXHUyMDIxXHUyMTk1XHUyMTk3XHUyMTk5XHUyMTk2XHUyMTk4XHUyNjZEXHUyNjY5XHUyNjZBXHUyNjZDXHUzMjdGXHUzMjFDXHUyMTE2XHUzM0M3XHUyMTIyXHUzM0MyXHUzM0Q4XHUyMTIxXHUyMEFDXHUwMEFFXCJdLFxuW1wiYTM0MVwiLFwiXHVDOTcxXHVDOTcyXHVDOTczXHVDOTc1XCIsNixcIlx1Qzk3RFwiLDEwLFwiXHVDOThBXHVDOThCXHVDOThEXHVDOThFXHVDOThGXCJdLFxuW1wiYTM2MVwiLFwiXHVDOTkxXCIsNixcIlx1Qzk5QVx1Qzk5Q1x1Qzk5RVwiLDE2XSxcbltcImEzODFcIixcIlx1QzlBRlwiLDE2LFwiXHVDOUMyXHVDOUMzXHVDOUM1XHVDOUM2XHVDOUM5XHVDOUNCXCIsNCxcIlx1QzlEMlx1QzlENFx1QzlEN1x1QzlEOFx1QzlEQlx1RkYwMVwiLDU4LFwiXHVGRkU2XHVGRjNEXCIsMzIsXCJcdUZGRTNcIl0sXG5bXCJhNDQxXCIsXCJcdUM5REVcdUM5REZcdUM5RTFcdUM5RTNcdUM5RTVcdUM5RTZcdUM5RThcdUM5RTlcdUM5RUFcdUM5RUJcdUM5RUVcdUM5RjJcIiw1LFwiXHVDOUZBXHVDOUZCXHVDOUZEXHVDOUZFXHVDOUZGXHVDQTAxXHVDQTAyXHVDQTAzXHVDQTA0XCJdLFxuW1wiYTQ2MVwiLFwiXHVDQTA1XHVDQTA2XHVDQTA3XHVDQTBBXHVDQTBFXCIsNSxcIlx1Q0ExNVx1Q0ExNlx1Q0ExN1x1Q0ExOVwiLDEyXSxcbltcImE0ODFcIixcIlx1Q0EyNlx1Q0EyN1x1Q0EyOFx1Q0EyQVwiLDI4LFwiXHUzMTMxXCIsOTNdLFxuW1wiYTU0MVwiLFwiXHVDQTQ3XCIsNCxcIlx1Q0E0RVx1Q0E0Rlx1Q0E1MVx1Q0E1Mlx1Q0E1M1x1Q0E1NVwiLDYsXCJcdUNBNUVcdUNBNjJcIiw1LFwiXHVDQTY5XHVDQTZBXCJdLFxuW1wiYTU2MVwiLFwiXHVDQTZCXCIsMTcsXCJcdUNBN0VcIiw1LFwiXHVDQTg1XHVDQTg2XCJdLFxuW1wiYTU4MVwiLFwiXHVDQTg3XCIsMTYsXCJcdUNBOTlcIiwxNCxcIlx1MjE3MFwiLDldLFxuW1wiYTViMFwiLFwiXHUyMTYwXCIsOV0sXG5bXCJhNWMxXCIsXCJcdTAzOTFcIiwxNixcIlx1MDNBM1wiLDZdLFxuW1wiYTVlMVwiLFwiXHUwM0IxXCIsMTYsXCJcdTAzQzNcIiw2XSxcbltcImE2NDFcIixcIlx1Q0FBOFwiLDE5LFwiXHVDQUJFXHVDQUJGXHVDQUMxXHVDQUMyXHVDQUMzXHVDQUM1XCJdLFxuW1wiYTY2MVwiLFwiXHVDQUM2XCIsNSxcIlx1Q0FDRVx1Q0FEMFx1Q0FEMlx1Q0FENFx1Q0FENVx1Q0FENlx1Q0FEN1x1Q0FEQVwiLDUsXCJcdUNBRTFcIiw2XSxcbltcImE2ODFcIixcIlx1Q0FFOFx1Q0FFOVx1Q0FFQVx1Q0FFQlx1Q0FFRFwiLDYsXCJcdUNBRjVcIiwxOCxcIlx1Q0IwOVx1Q0IwQVx1MjUwMFx1MjUwMlx1MjUwQ1x1MjUxMFx1MjUxOFx1MjUxNFx1MjUxQ1x1MjUyQ1x1MjUyNFx1MjUzNFx1MjUzQ1x1MjUwMVx1MjUwM1x1MjUwRlx1MjUxM1x1MjUxQlx1MjUxN1x1MjUyM1x1MjUzM1x1MjUyQlx1MjUzQlx1MjU0Qlx1MjUyMFx1MjUyRlx1MjUyOFx1MjUzN1x1MjUzRlx1MjUxRFx1MjUzMFx1MjUyNVx1MjUzOFx1MjU0Mlx1MjUxMlx1MjUxMVx1MjUxQVx1MjUxOVx1MjUxNlx1MjUxNVx1MjUwRVx1MjUwRFx1MjUxRVx1MjUxRlx1MjUyMVx1MjUyMlx1MjUyNlx1MjUyN1x1MjUyOVx1MjUyQVx1MjUyRFx1MjUyRVx1MjUzMVx1MjUzMlx1MjUzNVx1MjUzNlx1MjUzOVx1MjUzQVx1MjUzRFx1MjUzRVx1MjU0MFx1MjU0MVx1MjU0M1wiLDddLFxuW1wiYTc0MVwiLFwiXHVDQjBCXCIsNCxcIlx1Q0IxMVx1Q0IxMlx1Q0IxM1x1Q0IxNVx1Q0IxNlx1Q0IxN1x1Q0IxOVwiLDYsXCJcdUNCMjJcIiw3XSxcbltcImE3NjFcIixcIlx1Q0IyQVwiLDIyLFwiXHVDQjQyXHVDQjQzXHVDQjQ0XCJdLFxuW1wiYTc4MVwiLFwiXHVDQjQ1XHVDQjQ2XHVDQjQ3XHVDQjRBXHVDQjRCXHVDQjREXHVDQjRFXHVDQjRGXHVDQjUxXCIsNixcIlx1Q0I1QVx1Q0I1Qlx1Q0I1Q1x1Q0I1RVwiLDUsXCJcdUNCNjVcIiw3LFwiXHUzMzk1XHUzMzk2XHUzMzk3XHUyMTEzXHUzMzk4XHUzM0M0XHUzM0EzXHUzM0E0XHUzM0E1XHUzM0E2XHUzMzk5XCIsOSxcIlx1MzNDQVx1MzM4RFx1MzM4RVx1MzM4Rlx1MzNDRlx1MzM4OFx1MzM4OVx1MzNDOFx1MzNBN1x1MzNBOFx1MzNCMFwiLDksXCJcdTMzODBcIiw0LFwiXHUzM0JBXCIsNSxcIlx1MzM5MFwiLDQsXCJcdTIxMjZcdTMzQzBcdTMzQzFcdTMzOEFcdTMzOEJcdTMzOENcdTMzRDZcdTMzQzVcdTMzQURcdTMzQUVcdTMzQUZcdTMzREJcdTMzQTlcdTMzQUFcdTMzQUJcdTMzQUNcdTMzRERcdTMzRDBcdTMzRDNcdTMzQzNcdTMzQzlcdTMzRENcdTMzQzZcIl0sXG5bXCJhODQxXCIsXCJcdUNCNkRcIiwxMCxcIlx1Q0I3QVwiLDE0XSxcbltcImE4NjFcIixcIlx1Q0I4OVwiLDE4LFwiXHVDQjlEXCIsNl0sXG5bXCJhODgxXCIsXCJcdUNCQTRcIiwxOSxcIlx1Q0JCOVwiLDExLFwiXHUwMEM2XHUwMEQwXHUwMEFBXHUwMTI2XCJdLFxuW1wiYThhNlwiLFwiXHUwMTMyXCJdLFxuW1wiYThhOFwiLFwiXHUwMTNGXHUwMTQxXHUwMEQ4XHUwMTUyXHUwMEJBXHUwMERFXHUwMTY2XHUwMTRBXCJdLFxuW1wiYThiMVwiLFwiXHUzMjYwXCIsMjcsXCJcdTI0RDBcIiwyNSxcIlx1MjQ2MFwiLDE0LFwiXHUwMEJEXHUyMTUzXHUyMTU0XHUwMEJDXHUwMEJFXHUyMTVCXHUyMTVDXHUyMTVEXHUyMTVFXCJdLFxuW1wiYTk0MVwiLFwiXHVDQkM1XCIsMTQsXCJcdUNCRDVcIiwxMF0sXG5bXCJhOTYxXCIsXCJcdUNCRTBcdUNCRTFcdUNCRTJcdUNCRTNcdUNCRTVcdUNCRTZcdUNCRThcdUNCRUFcIiwxOF0sXG5bXCJhOTgxXCIsXCJcdUNCRkRcIiwxNCxcIlx1Q0MwRVx1Q0MwRlx1Q0MxMVx1Q0MxMlx1Q0MxM1x1Q0MxNVwiLDYsXCJcdUNDMUVcdUNDMUZcdUNDMjBcdUNDMjNcdUNDMjRcdTAwRTZcdTAxMTFcdTAwRjBcdTAxMjdcdTAxMzFcdTAxMzNcdTAxMzhcdTAxNDBcdTAxNDJcdTAwRjhcdTAxNTNcdTAwREZcdTAwRkVcdTAxNjdcdTAxNEJcdTAxNDlcdTMyMDBcIiwyNyxcIlx1MjQ5Q1wiLDI1LFwiXHUyNDc0XCIsMTQsXCJcdTAwQjlcdTAwQjJcdTAwQjNcdTIwNzRcdTIwN0ZcdTIwODFcdTIwODJcdTIwODNcdTIwODRcIl0sXG5bXCJhYTQxXCIsXCJcdUNDMjVcdUNDMjZcdUNDMkFcdUNDMkJcdUNDMkRcdUNDMkZcdUNDMzFcIiw2LFwiXHVDQzNBXHVDQzNGXCIsNCxcIlx1Q0M0Nlx1Q0M0N1x1Q0M0OVx1Q0M0QVx1Q0M0Qlx1Q0M0RFx1Q0M0RVwiXSxcbltcImFhNjFcIixcIlx1Q0M0RlwiLDQsXCJcdUNDNTZcdUNDNUFcIiw1LFwiXHVDQzYxXHVDQzYyXHVDQzYzXHVDQzY1XHVDQzY3XHVDQzY5XCIsNixcIlx1Q0M3MVx1Q0M3MlwiXSxcbltcImFhODFcIixcIlx1Q0M3M1x1Q0M3NFx1Q0M3NlwiLDI5LFwiXHUzMDQxXCIsODJdLFxuW1wiYWI0MVwiLFwiXHVDQzk0XHVDQzk1XHVDQzk2XHVDQzk3XHVDQzlBXHVDQzlCXHVDQzlEXHVDQzlFXHVDQzlGXHVDQ0ExXCIsNixcIlx1Q0NBQVx1Q0NBRVwiLDUsXCJcdUNDQjZcdUNDQjdcdUNDQjlcIl0sXG5bXCJhYjYxXCIsXCJcdUNDQkFcdUNDQkJcdUNDQkRcIiw2LFwiXHVDQ0M2XHVDQ0M4XHVDQ0NBXCIsNSxcIlx1Q0NEMVx1Q0NEMlx1Q0NEM1x1Q0NENVwiLDVdLFxuW1wiYWI4MVwiLFwiXHVDQ0RCXCIsOCxcIlx1Q0NFNVwiLDYsXCJcdUNDRURcdUNDRUVcdUNDRUZcdUNDRjFcIiwxMixcIlx1MzBBMVwiLDg1XSxcbltcImFjNDFcIixcIlx1Q0NGRVx1Q0NGRlx1Q0QwMFx1Q0QwMlwiLDUsXCJcdUNEMEFcdUNEMEJcdUNEMERcdUNEMEVcdUNEMEZcdUNEMTFcIiw2LFwiXHVDRDFBXHVDRDFDXHVDRDFFXHVDRDFGXHVDRDIwXCJdLFxuW1wiYWM2MVwiLFwiXHVDRDIxXHVDRDIyXHVDRDIzXHVDRDI1XHVDRDI2XHVDRDI3XHVDRDI5XHVDRDJBXHVDRDJCXHVDRDJEXCIsMTEsXCJcdUNEM0FcIiw0XSxcbltcImFjODFcIixcIlx1Q0QzRlwiLDI4LFwiXHVDRDVEXHVDRDVFXHVDRDVGXHUwNDEwXCIsNSxcIlx1MDQwMVx1MDQxNlwiLDI1XSxcbltcImFjZDFcIixcIlx1MDQzMFwiLDUsXCJcdTA0NTFcdTA0MzZcIiwyNV0sXG5bXCJhZDQxXCIsXCJcdUNENjFcdUNENjJcdUNENjNcdUNENjVcIiw2LFwiXHVDRDZFXHVDRDcwXHVDRDcyXCIsNSxcIlx1Q0Q3OVwiLDddLFxuW1wiYWQ2MVwiLFwiXHVDRDgxXCIsNixcIlx1Q0Q4OVwiLDEwLFwiXHVDRDk2XHVDRDk3XHVDRDk5XHVDRDlBXHVDRDlCXHVDRDlEXHVDRDlFXHVDRDlGXCJdLFxuW1wiYWQ4MVwiLFwiXHVDREEwXHVDREExXHVDREEyXHVDREEzXHVDREE2XHVDREE4XHVDREFBXCIsNSxcIlx1Q0RCMVwiLDE4LFwiXHVDREM1XCJdLFxuW1wiYWU0MVwiLFwiXHVDREM2XCIsNSxcIlx1Q0RDRFx1Q0RDRVx1Q0RDRlx1Q0REMVwiLDE2XSxcbltcImFlNjFcIixcIlx1Q0RFMlwiLDUsXCJcdUNERTlcdUNERUFcdUNERUJcdUNERURcdUNERUVcdUNERUZcdUNERjFcIiw2LFwiXHVDREZBXHVDREZDXHVDREZFXCIsNF0sXG5bXCJhZTgxXCIsXCJcdUNFMDNcdUNFMDVcdUNFMDZcdUNFMDdcdUNFMDlcdUNFMEFcdUNFMEJcdUNFMERcIiw2LFwiXHVDRTE1XHVDRTE2XHVDRTE3XHVDRTE4XHVDRTFBXCIsNSxcIlx1Q0UyMlx1Q0UyM1x1Q0UyNVx1Q0UyNlx1Q0UyN1x1Q0UyOVx1Q0UyQVx1Q0UyQlwiXSxcbltcImFmNDFcIixcIlx1Q0UyQ1x1Q0UyRFx1Q0UyRVx1Q0UyRlx1Q0UzMlx1Q0UzNFx1Q0UzNlwiLDE5XSxcbltcImFmNjFcIixcIlx1Q0U0QVwiLDEzLFwiXHVDRTVBXHVDRTVCXHVDRTVEXHVDRTVFXHVDRTYyXCIsNSxcIlx1Q0U2QVx1Q0U2Q1wiXSxcbltcImFmODFcIixcIlx1Q0U2RVwiLDUsXCJcdUNFNzZcdUNFNzdcdUNFNzlcdUNFN0FcdUNFN0JcdUNFN0RcIiw2LFwiXHVDRTg2XHVDRTg4XHVDRThBXCIsNSxcIlx1Q0U5Mlx1Q0U5M1x1Q0U5NVx1Q0U5Nlx1Q0U5N1x1Q0U5OVwiXSxcbltcImIwNDFcIixcIlx1Q0U5QVwiLDUsXCJcdUNFQTJcdUNFQTZcIiw1LFwiXHVDRUFFXCIsMTJdLFxuW1wiYjA2MVwiLFwiXHVDRUJCXCIsNSxcIlx1Q0VDMlwiLDE5XSxcbltcImIwODFcIixcIlx1Q0VENlwiLDEzLFwiXHVDRUU2XHVDRUU3XHVDRUU5XHVDRUVBXHVDRUVEXCIsNixcIlx1Q0VGNlx1Q0VGQVwiLDUsXCJcdUFDMDBcdUFDMDFcdUFDMDRcdUFDMDdcdUFDMDhcdUFDMDlcdUFDMEFcdUFDMTBcIiw3LFwiXHVBQzE5XCIsNCxcIlx1QUMyMFx1QUMyNFx1QUMyQ1x1QUMyRFx1QUMyRlx1QUMzMFx1QUMzMVx1QUMzOFx1QUMzOVx1QUMzQ1x1QUM0MFx1QUM0Qlx1QUM0RFx1QUM1NFx1QUM1OFx1QUM1Q1x1QUM3MFx1QUM3MVx1QUM3NFx1QUM3N1x1QUM3OFx1QUM3QVx1QUM4MFx1QUM4MVx1QUM4M1x1QUM4NFx1QUM4NVx1QUM4Nlx1QUM4OVx1QUM4QVx1QUM4Qlx1QUM4Q1x1QUM5MFx1QUM5NFx1QUM5Q1x1QUM5RFx1QUM5Rlx1QUNBMFx1QUNBMVx1QUNBOFx1QUNBOVx1QUNBQVx1QUNBQ1x1QUNBRlx1QUNCMFx1QUNCOFx1QUNCOVx1QUNCQlx1QUNCQ1x1QUNCRFx1QUNDMVx1QUNDNFx1QUNDOFx1QUNDQ1x1QUNENVx1QUNEN1x1QUNFMFx1QUNFMVx1QUNFNFx1QUNFN1x1QUNFOFx1QUNFQVx1QUNFQ1x1QUNFRlx1QUNGMFx1QUNGMVx1QUNGM1x1QUNGNVx1QUNGNlx1QUNGQ1x1QUNGRFx1QUQwMFx1QUQwNFx1QUQwNlwiXSxcbltcImIxNDFcIixcIlx1Q0YwMlx1Q0YwM1x1Q0YwNVx1Q0YwNlx1Q0YwN1x1Q0YwOVwiLDYsXCJcdUNGMTJcdUNGMTRcdUNGMTZcIiw1LFwiXHVDRjFEXHVDRjFFXHVDRjFGXHVDRjIxXHVDRjIyXHVDRjIzXCJdLFxuW1wiYjE2MVwiLFwiXHVDRjI1XCIsNixcIlx1Q0YyRVx1Q0YzMlwiLDUsXCJcdUNGMzlcIiwxMV0sXG5bXCJiMTgxXCIsXCJcdUNGNDVcIiwxNCxcIlx1Q0Y1Nlx1Q0Y1N1x1Q0Y1OVx1Q0Y1QVx1Q0Y1Qlx1Q0Y1RFwiLDYsXCJcdUNGNjZcdUNGNjhcdUNGNkFcdUNGNkJcdUNGNkNcdUFEMENcdUFEMERcdUFEMEZcdUFEMTFcdUFEMThcdUFEMUNcdUFEMjBcdUFEMjlcdUFEMkNcdUFEMkRcdUFEMzRcdUFEMzVcdUFEMzhcdUFEM0NcdUFENDRcdUFENDVcdUFENDdcdUFENDlcdUFENTBcdUFENTRcdUFENThcdUFENjFcdUFENjNcdUFENkNcdUFENkRcdUFENzBcdUFENzNcdUFENzRcdUFENzVcdUFENzZcdUFEN0JcdUFEN0NcdUFEN0RcdUFEN0ZcdUFEODFcdUFEODJcdUFEODhcdUFEODlcdUFEOENcdUFEOTBcdUFEOUNcdUFEOURcdUFEQTRcdUFEQjdcdUFEQzBcdUFEQzFcdUFEQzRcdUFEQzhcdUFERDBcdUFERDFcdUFERDNcdUFERENcdUFERTBcdUFERTRcdUFERjhcdUFERjlcdUFERkNcdUFERkZcdUFFMDBcdUFFMDFcdUFFMDhcdUFFMDlcdUFFMEJcdUFFMERcdUFFMTRcdUFFMzBcdUFFMzFcdUFFMzRcdUFFMzdcdUFFMzhcdUFFM0FcdUFFNDBcdUFFNDFcdUFFNDNcdUFFNDVcdUFFNDZcdUFFNEFcdUFFNENcdUFFNERcdUFFNEVcdUFFNTBcdUFFNTRcdUFFNTZcdUFFNUNcdUFFNURcdUFFNUZcdUFFNjBcdUFFNjFcdUFFNjVcdUFFNjhcdUFFNjlcdUFFNkNcdUFFNzBcdUFFNzhcIl0sXG5bXCJiMjQxXCIsXCJcdUNGNkRcdUNGNkVcdUNGNkZcdUNGNzJcdUNGNzNcdUNGNzVcdUNGNzZcdUNGNzdcdUNGNzlcIiw2LFwiXHVDRjgxXHVDRjgyXHVDRjgzXHVDRjg0XHVDRjg2XCIsNSxcIlx1Q0Y4RFwiXSxcbltcImIyNjFcIixcIlx1Q0Y4RVwiLDE4LFwiXHVDRkEyXCIsNSxcIlx1Q0ZBOVwiXSxcbltcImIyODFcIixcIlx1Q0ZBQVwiLDUsXCJcdUNGQjFcIiwxOCxcIlx1Q0ZDNVwiLDYsXCJcdUFFNzlcdUFFN0JcdUFFN0NcdUFFN0RcdUFFODRcdUFFODVcdUFFOENcdUFFQkNcdUFFQkRcdUFFQkVcdUFFQzBcdUFFQzRcdUFFQ0NcdUFFQ0RcdUFFQ0ZcdUFFRDBcdUFFRDFcdUFFRDhcdUFFRDlcdUFFRENcdUFFRThcdUFFRUJcdUFFRURcdUFFRjRcdUFFRjhcdUFFRkNcdUFGMDdcdUFGMDhcdUFGMERcdUFGMTBcdUFGMkNcdUFGMkRcdUFGMzBcdUFGMzJcdUFGMzRcdUFGM0NcdUFGM0RcdUFGM0ZcdUFGNDFcdUFGNDJcdUFGNDNcdUFGNDhcdUFGNDlcdUFGNTBcdUFGNUNcdUFGNURcdUFGNjRcdUFGNjVcdUFGNzlcdUFGODBcdUFGODRcdUFGODhcdUFGOTBcdUFGOTFcdUFGOTVcdUFGOUNcdUFGQjhcdUFGQjlcdUFGQkNcdUFGQzBcdUFGQzdcdUFGQzhcdUFGQzlcdUFGQ0JcdUFGQ0RcdUFGQ0VcdUFGRDRcdUFGRENcdUFGRThcdUFGRTlcdUFGRjBcdUFGRjFcdUFGRjRcdUFGRjhcdUIwMDBcdUIwMDFcdUIwMDRcdUIwMENcdUIwMTBcdUIwMTRcdUIwMUNcdUIwMURcdUIwMjhcdUIwNDRcdUIwNDVcdUIwNDhcdUIwNEFcdUIwNENcdUIwNEVcdUIwNTNcdUIwNTRcdUIwNTVcdUIwNTdcdUIwNTlcIl0sXG5bXCJiMzQxXCIsXCJcdUNGQ0NcIiwxOSxcIlx1Q0ZFMlx1Q0ZFM1x1Q0ZFNVx1Q0ZFNlx1Q0ZFN1x1Q0ZFOVwiXSxcbltcImIzNjFcIixcIlx1Q0ZFQVwiLDUsXCJcdUNGRjJcdUNGRjRcdUNGRjZcIiw1LFwiXHVDRkZEXHVDRkZFXHVDRkZGXHVEMDAxXHVEMDAyXHVEMDAzXHVEMDA1XCIsNV0sXG5bXCJiMzgxXCIsXCJcdUQwMEJcIiw1LFwiXHVEMDEyXCIsNSxcIlx1RDAxOVwiLDE5LFwiXHVCMDVEXHVCMDdDXHVCMDdEXHVCMDgwXHVCMDg0XHVCMDhDXHVCMDhEXHVCMDhGXHVCMDkxXHVCMDk4XHVCMDk5XHVCMDlBXHVCMDlDXHVCMDlGXHVCMEEwXHVCMEExXHVCMEEyXHVCMEE4XHVCMEE5XHVCMEFCXCIsNCxcIlx1QjBCMVx1QjBCM1x1QjBCNFx1QjBCNVx1QjBCOFx1QjBCQ1x1QjBDNFx1QjBDNVx1QjBDN1x1QjBDOFx1QjBDOVx1QjBEMFx1QjBEMVx1QjBENFx1QjBEOFx1QjBFMFx1QjBFNVx1QjEwOFx1QjEwOVx1QjEwQlx1QjEwQ1x1QjExMFx1QjExMlx1QjExM1x1QjExOFx1QjExOVx1QjExQlx1QjExQ1x1QjExRFx1QjEyM1x1QjEyNFx1QjEyNVx1QjEyOFx1QjEyQ1x1QjEzNFx1QjEzNVx1QjEzN1x1QjEzOFx1QjEzOVx1QjE0MFx1QjE0MVx1QjE0NFx1QjE0OFx1QjE1MFx1QjE1MVx1QjE1NFx1QjE1NVx1QjE1OFx1QjE1Q1x1QjE2MFx1QjE3OFx1QjE3OVx1QjE3Q1x1QjE4MFx1QjE4Mlx1QjE4OFx1QjE4OVx1QjE4Qlx1QjE4RFx1QjE5Mlx1QjE5M1x1QjE5NFx1QjE5OFx1QjE5Q1x1QjFBOFx1QjFDQ1x1QjFEMFx1QjFENFx1QjFEQ1x1QjFERFwiXSxcbltcImI0NDFcIixcIlx1RDAyRVwiLDUsXCJcdUQwMzZcdUQwMzdcdUQwMzlcdUQwM0FcdUQwM0JcdUQwM0RcIiw2LFwiXHVEMDQ2XHVEMDQ4XHVEMDRBXCIsNV0sXG5bXCJiNDYxXCIsXCJcdUQwNTFcdUQwNTJcdUQwNTNcdUQwNTVcdUQwNTZcdUQwNTdcdUQwNTlcIiw2LFwiXHVEMDYxXCIsMTAsXCJcdUQwNkVcdUQwNkZcIl0sXG5bXCJiNDgxXCIsXCJcdUQwNzFcdUQwNzJcdUQwNzNcdUQwNzVcIiw2LFwiXHVEMDdFXHVEMDdGXHVEMDgwXHVEMDgyXCIsMTgsXCJcdUIxREZcdUIxRThcdUIxRTlcdUIxRUNcdUIxRjBcdUIxRjlcdUIxRkJcdUIxRkRcdUIyMDRcdUIyMDVcdUIyMDhcdUIyMEJcdUIyMENcdUIyMTRcdUIyMTVcdUIyMTdcdUIyMTlcdUIyMjBcdUIyMzRcdUIyM0NcdUIyNThcdUIyNUNcdUIyNjBcdUIyNjhcdUIyNjlcdUIyNzRcdUIyNzVcdUIyN0NcdUIyODRcdUIyODVcdUIyODlcdUIyOTBcdUIyOTFcdUIyOTRcdUIyOThcdUIyOTlcdUIyOUFcdUIyQTBcdUIyQTFcdUIyQTNcdUIyQTVcdUIyQTZcdUIyQUFcdUIyQUNcdUIyQjBcdUIyQjRcdUIyQzhcdUIyQzlcdUIyQ0NcdUIyRDBcdUIyRDJcdUIyRDhcdUIyRDlcdUIyREJcdUIyRERcdUIyRTJcdUIyRTRcdUIyRTVcdUIyRTZcdUIyRThcdUIyRUJcIiw0LFwiXHVCMkYzXHVCMkY0XHVCMkY1XHVCMkY3XCIsNCxcIlx1QjJGRlx1QjMwMFx1QjMwMVx1QjMwNFx1QjMwOFx1QjMxMFx1QjMxMVx1QjMxM1x1QjMxNFx1QjMxNVx1QjMxQ1x1QjM1NFx1QjM1NVx1QjM1Nlx1QjM1OFx1QjM1Qlx1QjM1Q1x1QjM1RVx1QjM1Rlx1QjM2NFx1QjM2NVwiXSxcbltcImI1NDFcIixcIlx1RDA5NVwiLDE0LFwiXHVEMEE2XHVEMEE3XHVEMEE5XHVEMEFBXHVEMEFCXHVEMEFEXCIsNV0sXG5bXCJiNTYxXCIsXCJcdUQwQjNcdUQwQjZcdUQwQjhcdUQwQkFcIiw1LFwiXHVEMEMyXHVEMEMzXHVEMEM1XHVEMEM2XHVEMEM3XHVEMENBXCIsNSxcIlx1RDBEMlx1RDBENlwiLDRdLFxuW1wiYjU4MVwiLFwiXHVEMERCXHVEMERFXHVEMERGXHVEMEUxXHVEMEUyXHVEMEUzXHVEMEU1XCIsNixcIlx1RDBFRVx1RDBGMlwiLDUsXCJcdUQwRjlcIiwxMSxcIlx1QjM2N1x1QjM2OVx1QjM2Qlx1QjM2RVx1QjM3MFx1QjM3MVx1QjM3NFx1QjM3OFx1QjM4MFx1QjM4MVx1QjM4M1x1QjM4NFx1QjM4NVx1QjM4Q1x1QjM5MFx1QjM5NFx1QjNBMFx1QjNBMVx1QjNBOFx1QjNBQ1x1QjNDNFx1QjNDNVx1QjNDOFx1QjNDQlx1QjNDQ1x1QjNDRVx1QjNEMFx1QjNENFx1QjNENVx1QjNEN1x1QjNEOVx1QjNEQlx1QjNERFx1QjNFMFx1QjNFNFx1QjNFOFx1QjNGQ1x1QjQxMFx1QjQxOFx1QjQxQ1x1QjQyMFx1QjQyOFx1QjQyOVx1QjQyQlx1QjQzNFx1QjQ1MFx1QjQ1MVx1QjQ1NFx1QjQ1OFx1QjQ2MFx1QjQ2MVx1QjQ2M1x1QjQ2NVx1QjQ2Q1x1QjQ4MFx1QjQ4OFx1QjQ5RFx1QjRBNFx1QjRBOFx1QjRBQ1x1QjRCNVx1QjRCN1x1QjRCOVx1QjRDMFx1QjRDNFx1QjRDOFx1QjREMFx1QjRENVx1QjREQ1x1QjRERFx1QjRFMFx1QjRFM1x1QjRFNFx1QjRFNlx1QjRFQ1x1QjRFRFx1QjRFRlx1QjRGMVx1QjRGOFx1QjUxNFx1QjUxNVx1QjUxOFx1QjUxQlx1QjUxQ1x1QjUyNFx1QjUyNVx1QjUyN1x1QjUyOFx1QjUyOVx1QjUyQVx1QjUzMFx1QjUzMVx1QjUzNFx1QjUzOFwiXSxcbltcImI2NDFcIixcIlx1RDEwNVwiLDcsXCJcdUQxMEVcIiwxN10sXG5bXCJiNjYxXCIsXCJcdUQxMjBcIiwxNSxcIlx1RDEzMlx1RDEzM1x1RDEzNVx1RDEzNlx1RDEzN1x1RDEzOVx1RDEzQlx1RDEzQ1x1RDEzRFx1RDEzRVwiXSxcbltcImI2ODFcIixcIlx1RDEzRlx1RDE0Mlx1RDE0NlwiLDUsXCJcdUQxNEVcdUQxNEZcdUQxNTFcdUQxNTJcdUQxNTNcdUQxNTVcIiw2LFwiXHVEMTVFXHVEMTYwXHVEMTYyXCIsNSxcIlx1RDE2OVx1RDE2QVx1RDE2Qlx1RDE2RFx1QjU0MFx1QjU0MVx1QjU0M1x1QjU0NFx1QjU0NVx1QjU0Qlx1QjU0Q1x1QjU0RFx1QjU1MFx1QjU1NFx1QjU1Q1x1QjU1RFx1QjU1Rlx1QjU2MFx1QjU2MVx1QjVBMFx1QjVBMVx1QjVBNFx1QjVBOFx1QjVBQVx1QjVBQlx1QjVCMFx1QjVCMVx1QjVCM1x1QjVCNFx1QjVCNVx1QjVCQlx1QjVCQ1x1QjVCRFx1QjVDMFx1QjVDNFx1QjVDQ1x1QjVDRFx1QjVDRlx1QjVEMFx1QjVEMVx1QjVEOFx1QjVFQ1x1QjYxMFx1QjYxMVx1QjYxNFx1QjYxOFx1QjYyNVx1QjYyQ1x1QjYzNFx1QjY0OFx1QjY2NFx1QjY2OFx1QjY5Q1x1QjY5RFx1QjZBMFx1QjZBNFx1QjZBQlx1QjZBQ1x1QjZCMVx1QjZENFx1QjZGMFx1QjZGNFx1QjZGOFx1QjcwMFx1QjcwMVx1QjcwNVx1QjcyOFx1QjcyOVx1QjcyQ1x1QjcyRlx1QjczMFx1QjczOFx1QjczOVx1QjczQlx1Qjc0NFx1Qjc0OFx1Qjc0Q1x1Qjc1NFx1Qjc1NVx1Qjc2MFx1Qjc2NFx1Qjc2OFx1Qjc3MFx1Qjc3MVx1Qjc3M1x1Qjc3NVx1Qjc3Q1x1Qjc3RFx1Qjc4MFx1Qjc4NFx1Qjc4Q1x1Qjc4RFx1Qjc4Rlx1Qjc5MFx1Qjc5MVx1Qjc5Mlx1Qjc5Nlx1Qjc5N1wiXSxcbltcImI3NDFcIixcIlx1RDE2RVwiLDEzLFwiXHVEMTdEXCIsNixcIlx1RDE4NVx1RDE4Nlx1RDE4N1x1RDE4OVx1RDE4QVwiXSxcbltcImI3NjFcIixcIlx1RDE4QlwiLDIwLFwiXHVEMUEyXHVEMUEzXHVEMUE1XHVEMUE2XHVEMUE3XCJdLFxuW1wiYjc4MVwiLFwiXHVEMUE5XCIsNixcIlx1RDFCMlx1RDFCNFx1RDFCNlx1RDFCN1x1RDFCOFx1RDFCOVx1RDFCQlx1RDFCRFx1RDFCRVx1RDFCRlx1RDFDMVwiLDE0LFwiXHVCNzk4XHVCNzk5XHVCNzlDXHVCN0EwXHVCN0E4XHVCN0E5XHVCN0FCXHVCN0FDXHVCN0FEXHVCN0I0XHVCN0I1XHVCN0I4XHVCN0M3XHVCN0M5XHVCN0VDXHVCN0VEXHVCN0YwXHVCN0Y0XHVCN0ZDXHVCN0ZEXHVCN0ZGXHVCODAwXHVCODAxXHVCODA3XHVCODA4XHVCODA5XHVCODBDXHVCODEwXHVCODE4XHVCODE5XHVCODFCXHVCODFEXHVCODI0XHVCODI1XHVCODI4XHVCODJDXHVCODM0XHVCODM1XHVCODM3XHVCODM4XHVCODM5XHVCODQwXHVCODQ0XHVCODUxXHVCODUzXHVCODVDXHVCODVEXHVCODYwXHVCODY0XHVCODZDXHVCODZEXHVCODZGXHVCODcxXHVCODc4XHVCODdDXHVCODhEXHVCOEE4XHVCOEIwXHVCOEI0XHVCOEI4XHVCOEMwXHVCOEMxXHVCOEMzXHVCOEM1XHVCOENDXHVCOEQwXHVCOEQ0XHVCOEREXHVCOERGXHVCOEUxXHVCOEU4XHVCOEU5XHVCOEVDXHVCOEYwXHVCOEY4XHVCOEY5XHVCOEZCXHVCOEZEXHVCOTA0XHVCOTE4XHVCOTIwXHVCOTNDXHVCOTNEXHVCOTQwXHVCOTQ0XHVCOTRDXHVCOTRGXHVCOTUxXHVCOTU4XHVCOTU5XHVCOTVDXHVCOTYwXHVCOTY4XHVCOTY5XCJdLFxuW1wiYjg0MVwiLFwiXHVEMUQwXCIsNyxcIlx1RDFEOVwiLDE3XSxcbltcImI4NjFcIixcIlx1RDFFQlwiLDgsXCJcdUQxRjVcdUQxRjZcdUQxRjdcdUQxRjlcIiwxM10sXG5bXCJiODgxXCIsXCJcdUQyMDhcdUQyMEFcIiw1LFwiXHVEMjExXCIsMjQsXCJcdUI5NkJcdUI5NkRcdUI5NzRcdUI5NzVcdUI5NzhcdUI5N0NcdUI5ODRcdUI5ODVcdUI5ODdcdUI5ODlcdUI5OEFcdUI5OERcdUI5OEVcdUI5QUNcdUI5QURcdUI5QjBcdUI5QjRcdUI5QkNcdUI5QkRcdUI5QkZcdUI5QzFcdUI5QzhcdUI5QzlcdUI5Q0NcdUI5Q0VcIiw0LFwiXHVCOUQ4XHVCOUQ5XHVCOURCXHVCOUREXHVCOURFXHVCOUUxXHVCOUUzXHVCOUU0XHVCOUU1XHVCOUU4XHVCOUVDXHVCOUY0XHVCOUY1XHVCOUY3XHVCOUY4XHVCOUY5XHVCOUZBXHVCQTAwXHVCQTAxXHVCQTA4XHVCQTE1XHVCQTM4XHVCQTM5XHVCQTNDXHVCQTQwXHVCQTQyXHVCQTQ4XHVCQTQ5XHVCQTRCXHVCQTREXHVCQTRFXHVCQTUzXHVCQTU0XHVCQTU1XHVCQTU4XHVCQTVDXHVCQTY0XHVCQTY1XHVCQTY3XHVCQTY4XHVCQTY5XHVCQTcwXHVCQTcxXHVCQTc0XHVCQTc4XHVCQTgzXHVCQTg0XHVCQTg1XHVCQTg3XHVCQThDXHVCQUE4XHVCQUE5XHVCQUFCXHVCQUFDXHVCQUIwXHVCQUIyXHVCQUI4XHVCQUI5XHVCQUJCXHVCQUJEXHVCQUM0XHVCQUM4XHVCQUQ4XHVCQUQ5XHVCQUZDXCJdLFxuW1wiYjk0MVwiLFwiXHVEMjJBXHVEMjJCXHVEMjJFXHVEMjJGXHVEMjMxXHVEMjMyXHVEMjMzXHVEMjM1XCIsNixcIlx1RDIzRVx1RDI0MFx1RDI0MlwiLDUsXCJcdUQyNDlcdUQyNEFcdUQyNEJcdUQyNENcIl0sXG5bXCJiOTYxXCIsXCJcdUQyNERcIiwxNCxcIlx1RDI1RFwiLDYsXCJcdUQyNjVcdUQyNjZcdUQyNjdcdUQyNjhcIl0sXG5bXCJiOTgxXCIsXCJcdUQyNjlcIiwyMixcIlx1RDI4Mlx1RDI4M1x1RDI4NVx1RDI4Nlx1RDI4N1x1RDI4OVx1RDI4QVx1RDI4Qlx1RDI4Q1x1QkIwMFx1QkIwNFx1QkIwRFx1QkIwRlx1QkIxMVx1QkIxOFx1QkIxQ1x1QkIyMFx1QkIyOVx1QkIyQlx1QkIzNFx1QkIzNVx1QkIzNlx1QkIzOFx1QkIzQlx1QkIzQ1x1QkIzRFx1QkIzRVx1QkI0NFx1QkI0NVx1QkI0N1x1QkI0OVx1QkI0RFx1QkI0Rlx1QkI1MFx1QkI1NFx1QkI1OFx1QkI2MVx1QkI2M1x1QkI2Q1x1QkI4OFx1QkI4Q1x1QkI5MFx1QkJBNFx1QkJBOFx1QkJBQ1x1QkJCNFx1QkJCN1x1QkJDMFx1QkJDNFx1QkJDOFx1QkJEMFx1QkJEM1x1QkJGOFx1QkJGOVx1QkJGQ1x1QkJGRlx1QkMwMFx1QkMwMlx1QkMwOFx1QkMwOVx1QkMwQlx1QkMwQ1x1QkMwRFx1QkMwRlx1QkMxMVx1QkMxNFwiLDQsXCJcdUJDMUJcIiw0LFwiXHVCQzI0XHVCQzI1XHVCQzI3XHVCQzI5XHVCQzJEXHVCQzMwXHVCQzMxXHVCQzM0XHVCQzM4XHVCQzQwXHVCQzQxXHVCQzQzXHVCQzQ0XHVCQzQ1XHVCQzQ5XHVCQzRDXHVCQzREXHVCQzUwXHVCQzVEXHVCQzg0XHVCQzg1XHVCQzg4XHVCQzhCXHVCQzhDXHVCQzhFXHVCQzk0XHVCQzk1XHVCQzk3XCJdLFxuW1wiYmE0MVwiLFwiXHVEMjhEXHVEMjhFXHVEMjhGXHVEMjkyXHVEMjkzXHVEMjk0XHVEMjk2XCIsNSxcIlx1RDI5RFx1RDI5RVx1RDI5Rlx1RDJBMVx1RDJBMlx1RDJBM1x1RDJBNVwiLDYsXCJcdUQyQURcIl0sXG5bXCJiYTYxXCIsXCJcdUQyQUVcdUQyQUZcdUQyQjBcdUQyQjJcIiw1LFwiXHVEMkJBXHVEMkJCXHVEMkJEXHVEMkJFXHVEMkMxXHVEMkMzXCIsNCxcIlx1RDJDQVx1RDJDQ1wiLDVdLFxuW1wiYmE4MVwiLFwiXHVEMkQyXHVEMkQzXHVEMkQ1XHVEMkQ2XHVEMkQ3XHVEMkQ5XHVEMkRBXHVEMkRCXHVEMkREXCIsNixcIlx1RDJFNlwiLDksXCJcdUQyRjJcdUQyRjNcdUQyRjVcdUQyRjZcdUQyRjdcdUQyRjlcdUQyRkFcdUJDOTlcdUJDOUFcdUJDQTBcdUJDQTFcdUJDQTRcdUJDQTdcdUJDQThcdUJDQjBcdUJDQjFcdUJDQjNcdUJDQjRcdUJDQjVcdUJDQkNcdUJDQkRcdUJDQzBcdUJDQzRcdUJDQ0RcdUJDQ0ZcdUJDRDBcdUJDRDFcdUJDRDVcdUJDRDhcdUJDRENcdUJDRjRcdUJDRjVcdUJDRjZcdUJDRjhcdUJDRkNcdUJEMDRcdUJEMDVcdUJEMDdcdUJEMDlcdUJEMTBcdUJEMTRcdUJEMjRcdUJEMkNcdUJENDBcdUJENDhcdUJENDlcdUJENENcdUJENTBcdUJENThcdUJENTlcdUJENjRcdUJENjhcdUJEODBcdUJEODFcdUJEODRcdUJEODdcdUJEODhcdUJEODlcdUJEOEFcdUJEOTBcdUJEOTFcdUJEOTNcdUJEOTVcdUJEOTlcdUJEOUFcdUJEOUNcdUJEQTRcdUJEQjBcdUJEQjhcdUJERDRcdUJERDVcdUJERDhcdUJERENcdUJERTlcdUJERjBcdUJERjRcdUJERjhcdUJFMDBcdUJFMDNcdUJFMDVcdUJFMENcdUJFMERcdUJFMTBcdUJFMTRcdUJFMUNcdUJFMURcdUJFMUZcdUJFNDRcdUJFNDVcdUJFNDhcdUJFNENcdUJFNEVcdUJFNTRcdUJFNTVcdUJFNTdcdUJFNTlcdUJFNUFcdUJFNUJcdUJFNjBcdUJFNjFcdUJFNjRcIl0sXG5bXCJiYjQxXCIsXCJcdUQyRkJcIiw0LFwiXHVEMzAyXHVEMzA0XHVEMzA2XCIsNSxcIlx1RDMwRlx1RDMxMVx1RDMxMlx1RDMxM1x1RDMxNVx1RDMxN1wiLDQsXCJcdUQzMUVcdUQzMjJcdUQzMjNcIl0sXG5bXCJiYjYxXCIsXCJcdUQzMjRcdUQzMjZcdUQzMjdcdUQzMkFcdUQzMkJcdUQzMkRcdUQzMkVcdUQzMkZcdUQzMzFcIiw2LFwiXHVEMzNBXHVEMzNFXCIsNSxcIlx1RDM0Nlx1RDM0N1x1RDM0OFx1RDM0OVwiXSxcbltcImJiODFcIixcIlx1RDM0QVwiLDMxLFwiXHVCRTY4XHVCRTZBXHVCRTcwXHVCRTcxXHVCRTczXHVCRTc0XHVCRTc1XHVCRTdCXHVCRTdDXHVCRTdEXHVCRTgwXHVCRTg0XHVCRThDXHVCRThEXHVCRThGXHVCRTkwXHVCRTkxXHVCRTk4XHVCRTk5XHVCRUE4XHVCRUQwXHVCRUQxXHVCRUQ0XHVCRUQ3XHVCRUQ4XHVCRUUwXHVCRUUzXHVCRUU0XHVCRUU1XHVCRUVDXHVCRjAxXHVCRjA4XHVCRjA5XHVCRjE4XHVCRjE5XHVCRjFCXHVCRjFDXHVCRjFEXHVCRjQwXHVCRjQxXHVCRjQ0XHVCRjQ4XHVCRjUwXHVCRjUxXHVCRjU1XHVCRjk0XHVCRkIwXHVCRkM1XHVCRkNDXHVCRkNEXHVCRkQwXHVCRkQ0XHVCRkRDXHVCRkRGXHVCRkUxXHVDMDNDXHVDMDUxXHVDMDU4XHVDMDVDXHVDMDYwXHVDMDY4XHVDMDY5XHVDMDkwXHVDMDkxXHVDMDk0XHVDMDk4XHVDMEEwXHVDMEExXHVDMEEzXHVDMEE1XHVDMEFDXHVDMEFEXHVDMEFGXHVDMEIwXHVDMEIzXHVDMEI0XHVDMEI1XHVDMEI2XHVDMEJDXHVDMEJEXHVDMEJGXHVDMEMwXHVDMEMxXHVDMEM1XHVDMEM4XHVDMEM5XHVDMENDXHVDMEQwXHVDMEQ4XHVDMEQ5XHVDMERCXHVDMERDXHVDMEREXHVDMEU0XCJdLFxuW1wiYmM0MVwiLFwiXHVEMzZBXCIsMTcsXCJcdUQzN0VcdUQzN0ZcdUQzODFcdUQzODJcdUQzODNcdUQzODVcdUQzODZcdUQzODdcIl0sXG5bXCJiYzYxXCIsXCJcdUQzODhcdUQzODlcdUQzOEFcdUQzOEJcdUQzOEVcdUQzOTJcIiw1LFwiXHVEMzlBXHVEMzlCXHVEMzlEXHVEMzlFXHVEMzlGXHVEM0ExXCIsNixcIlx1RDNBQVx1RDNBQ1x1RDNBRVwiXSxcbltcImJjODFcIixcIlx1RDNBRlwiLDQsXCJcdUQzQjVcdUQzQjZcdUQzQjdcdUQzQjlcdUQzQkFcdUQzQkJcdUQzQkRcIiw2LFwiXHVEM0M2XHVEM0M3XHVEM0NBXCIsNSxcIlx1RDNEMVwiLDUsXCJcdUMwRTVcdUMwRThcdUMwRUNcdUMwRjRcdUMwRjVcdUMwRjdcdUMwRjlcdUMxMDBcdUMxMDRcdUMxMDhcdUMxMTBcdUMxMTVcdUMxMUNcIiw0LFwiXHVDMTIzXHVDMTI0XHVDMTI2XHVDMTI3XHVDMTJDXHVDMTJEXHVDMTJGXHVDMTMwXHVDMTMxXHVDMTM2XHVDMTM4XHVDMTM5XHVDMTNDXHVDMTQwXHVDMTQ4XHVDMTQ5XHVDMTRCXHVDMTRDXHVDMTREXHVDMTU0XHVDMTU1XHVDMTU4XHVDMTVDXHVDMTY0XHVDMTY1XHVDMTY3XHVDMTY4XHVDMTY5XHVDMTcwXHVDMTc0XHVDMTc4XHVDMTg1XHVDMThDXHVDMThEXHVDMThFXHVDMTkwXHVDMTk0XHVDMTk2XHVDMTlDXHVDMTlEXHVDMTlGXHVDMUExXHVDMUE1XHVDMUE4XHVDMUE5XHVDMUFDXHVDMUIwXHVDMUJEXHVDMUM0XHVDMUM4XHVDMUNDXHVDMUQ0XHVDMUQ3XHVDMUQ4XHVDMUUwXHVDMUU0XHVDMUU4XHVDMUYwXHVDMUYxXHVDMUYzXHVDMUZDXHVDMUZEXHVDMjAwXHVDMjA0XHVDMjBDXHVDMjBEXHVDMjBGXHVDMjExXHVDMjE4XHVDMjE5XHVDMjFDXHVDMjFGXHVDMjIwXHVDMjI4XHVDMjI5XHVDMjJCXHVDMjJEXCJdLFxuW1wiYmQ0MVwiLFwiXHVEM0Q3XHVEM0Q5XCIsNyxcIlx1RDNFMlx1RDNFNFwiLDcsXCJcdUQzRUVcdUQzRUZcdUQzRjFcdUQzRjJcdUQzRjNcdUQzRjVcdUQzRjZcdUQzRjdcIl0sXG5bXCJiZDYxXCIsXCJcdUQzRjhcdUQzRjlcdUQzRkFcdUQzRkJcdUQzRkVcdUQ0MDBcdUQ0MDJcIiw1LFwiXHVENDA5XCIsMTNdLFxuW1wiYmQ4MVwiLFwiXHVENDE3XCIsNSxcIlx1RDQxRVwiLDI1LFwiXHVDMjJGXHVDMjMxXHVDMjMyXHVDMjM0XHVDMjQ4XHVDMjUwXHVDMjUxXHVDMjU0XHVDMjU4XHVDMjYwXHVDMjY1XHVDMjZDXHVDMjZEXHVDMjcwXHVDMjc0XHVDMjdDXHVDMjdEXHVDMjdGXHVDMjgxXHVDMjg4XHVDMjg5XHVDMjkwXHVDMjk4XHVDMjlCXHVDMjlEXHVDMkE0XHVDMkE1XHVDMkE4XHVDMkFDXHVDMkFEXHVDMkI0XHVDMkI1XHVDMkI3XHVDMkI5XHVDMkRDXHVDMkREXHVDMkUwXHVDMkUzXHVDMkU0XHVDMkVCXHVDMkVDXHVDMkVEXHVDMkVGXHVDMkYxXHVDMkY2XHVDMkY4XHVDMkY5XHVDMkZCXHVDMkZDXHVDMzAwXHVDMzA4XHVDMzA5XHVDMzBDXHVDMzBEXHVDMzEzXHVDMzE0XHVDMzE1XHVDMzE4XHVDMzFDXHVDMzI0XHVDMzI1XHVDMzI4XHVDMzI5XHVDMzQ1XHVDMzY4XHVDMzY5XHVDMzZDXHVDMzcwXHVDMzcyXHVDMzc4XHVDMzc5XHVDMzdDXHVDMzdEXHVDMzg0XHVDMzg4XHVDMzhDXHVDM0MwXHVDM0Q4XHVDM0Q5XHVDM0RDXHVDM0RGXHVDM0UwXHVDM0UyXHVDM0U4XHVDM0U5XHVDM0VEXHVDM0Y0XHVDM0Y1XHVDM0Y4XHVDNDA4XHVDNDEwXHVDNDI0XHVDNDJDXHVDNDMwXCJdLFxuW1wiYmU0MVwiLFwiXHVENDM4XCIsNyxcIlx1RDQ0MVx1RDQ0Mlx1RDQ0M1x1RDQ0NVwiLDE0XSxcbltcImJlNjFcIixcIlx1RDQ1NFwiLDcsXCJcdUQ0NURcdUQ0NUVcdUQ0NUZcdUQ0NjFcdUQ0NjJcdUQ0NjNcdUQ0NjVcIiw3LFwiXHVENDZFXHVENDcwXHVENDcxXHVENDcyXCJdLFxuW1wiYmU4MVwiLFwiXHVENDczXCIsNCxcIlx1RDQ3QVx1RDQ3Qlx1RDQ3RFx1RDQ3RVx1RDQ4MVx1RDQ4M1wiLDQsXCJcdUQ0OEFcdUQ0OENcdUQ0OEVcIiw1LFwiXHVENDk1XCIsOCxcIlx1QzQzNFx1QzQzQ1x1QzQzRFx1QzQ0OFx1QzQ2NFx1QzQ2NVx1QzQ2OFx1QzQ2Q1x1QzQ3NFx1QzQ3NVx1QzQ3OVx1QzQ4MFx1QzQ5NFx1QzQ5Q1x1QzRCOFx1QzRCQ1x1QzRFOVx1QzRGMFx1QzRGMVx1QzRGNFx1QzRGOFx1QzRGQVx1QzRGRlx1QzUwMFx1QzUwMVx1QzUwQ1x1QzUxMFx1QzUxNFx1QzUxQ1x1QzUyOFx1QzUyOVx1QzUyQ1x1QzUzMFx1QzUzOFx1QzUzOVx1QzUzQlx1QzUzRFx1QzU0NFx1QzU0NVx1QzU0OFx1QzU0OVx1QzU0QVx1QzU0Q1x1QzU0RFx1QzU0RVx1QzU1M1x1QzU1NFx1QzU1NVx1QzU1N1x1QzU1OFx1QzU1OVx1QzU1RFx1QzU1RVx1QzU2MFx1QzU2MVx1QzU2NFx1QzU2OFx1QzU3MFx1QzU3MVx1QzU3M1x1QzU3NFx1QzU3NVx1QzU3Q1x1QzU3RFx1QzU4MFx1QzU4NFx1QzU4N1x1QzU4Q1x1QzU4RFx1QzU4Rlx1QzU5MVx1QzU5NVx1QzU5N1x1QzU5OFx1QzU5Q1x1QzVBMFx1QzVBOVx1QzVCNFx1QzVCNVx1QzVCOFx1QzVCOVx1QzVCQlx1QzVCQ1x1QzVCRFx1QzVCRVx1QzVDNFwiLDYsXCJcdUM1Q0NcdUM1Q0VcIl0sXG5bXCJiZjQxXCIsXCJcdUQ0OUVcIiwxMCxcIlx1RDRBQVwiLDE0XSxcbltcImJmNjFcIixcIlx1RDRCOVwiLDE4LFwiXHVENENEXHVENENFXHVENENGXHVENEQxXHVENEQyXHVENEQzXHVENEQ1XCJdLFxuW1wiYmY4MVwiLFwiXHVENEQ2XCIsNSxcIlx1RDRERFx1RDRERVx1RDRFMFwiLDcsXCJcdUQ0RTlcdUQ0RUFcdUQ0RUJcdUQ0RURcdUQ0RUVcdUQ0RUZcdUQ0RjFcIiw2LFwiXHVENEY5XHVENEZBXHVENEZDXHVDNUQwXHVDNUQxXHVDNUQ0XHVDNUQ4XHVDNUUwXHVDNUUxXHVDNUUzXHVDNUU1XHVDNUVDXHVDNUVEXHVDNUVFXHVDNUYwXHVDNUY0XHVDNUY2XHVDNUY3XHVDNUZDXCIsNSxcIlx1QzYwNVx1QzYwNlx1QzYwN1x1QzYwOFx1QzYwQ1x1QzYxMFx1QzYxOFx1QzYxOVx1QzYxQlx1QzYxQ1x1QzYyNFx1QzYyNVx1QzYyOFx1QzYyQ1x1QzYyRFx1QzYyRVx1QzYzMFx1QzYzM1x1QzYzNFx1QzYzNVx1QzYzN1x1QzYzOVx1QzYzQlx1QzY0MFx1QzY0MVx1QzY0NFx1QzY0OFx1QzY1MFx1QzY1MVx1QzY1M1x1QzY1NFx1QzY1NVx1QzY1Q1x1QzY1RFx1QzY2MFx1QzY2Q1x1QzY2Rlx1QzY3MVx1QzY3OFx1QzY3OVx1QzY3Q1x1QzY4MFx1QzY4OFx1QzY4OVx1QzY4Qlx1QzY4RFx1QzY5NFx1QzY5NVx1QzY5OFx1QzY5Q1x1QzZBNFx1QzZBNVx1QzZBN1x1QzZBOVx1QzZCMFx1QzZCMVx1QzZCNFx1QzZCOFx1QzZCOVx1QzZCQVx1QzZDMFx1QzZDMVx1QzZDM1x1QzZDNVx1QzZDQ1x1QzZDRFx1QzZEMFx1QzZENFx1QzZEQ1x1QzZERFx1QzZFMFx1QzZFMVx1QzZFOFwiXSxcbltcImMwNDFcIixcIlx1RDRGRVwiLDUsXCJcdUQ1MDVcdUQ1MDZcdUQ1MDdcdUQ1MDlcdUQ1MEFcdUQ1MEJcdUQ1MERcIiw2LFwiXHVENTE2XHVENTE4XCIsNV0sXG5bXCJjMDYxXCIsXCJcdUQ1MUVcIiwyNV0sXG5bXCJjMDgxXCIsXCJcdUQ1MzhcdUQ1MzlcdUQ1M0FcdUQ1M0JcdUQ1M0VcdUQ1M0ZcdUQ1NDFcdUQ1NDJcdUQ1NDNcdUQ1NDVcIiw2LFwiXHVENTRFXHVENTUwXHVENTUyXCIsNSxcIlx1RDU1QVx1RDU1Qlx1RDU1RFx1RDU1RVx1RDU1Rlx1RDU2MVx1RDU2Mlx1RDU2M1x1QzZFOVx1QzZFQ1x1QzZGMFx1QzZGOFx1QzZGOVx1QzZGRFx1QzcwNFx1QzcwNVx1QzcwOFx1QzcwQ1x1QzcxNFx1QzcxNVx1QzcxN1x1QzcxOVx1QzcyMFx1QzcyMVx1QzcyNFx1QzcyOFx1QzczMFx1QzczMVx1QzczM1x1QzczNVx1QzczN1x1QzczQ1x1QzczRFx1Qzc0MFx1Qzc0NFx1Qzc0QVx1Qzc0Q1x1Qzc0RFx1Qzc0Rlx1Qzc1MVwiLDcsXCJcdUM3NUNcdUM3NjBcdUM3NjhcdUM3NkJcdUM3NzRcdUM3NzVcdUM3NzhcdUM3N0NcdUM3N0RcdUM3N0VcdUM3ODNcdUM3ODRcdUM3ODVcdUM3ODdcdUM3ODhcdUM3ODlcdUM3OEFcdUM3OEVcdUM3OTBcdUM3OTFcdUM3OTRcdUM3OTZcdUM3OTdcdUM3OThcdUM3OUFcdUM3QTBcdUM3QTFcdUM3QTNcdUM3QTRcdUM3QTVcdUM3QTZcdUM3QUNcdUM3QURcdUM3QjBcdUM3QjRcdUM3QkNcdUM3QkRcdUM3QkZcdUM3QzBcdUM3QzFcdUM3QzhcdUM3QzlcdUM3Q0NcdUM3Q0VcdUM3RDBcdUM3RDhcdUM3RERcdUM3RTRcdUM3RThcdUM3RUNcdUM4MDBcdUM4MDFcdUM4MDRcdUM4MDhcdUM4MEFcIl0sXG5bXCJjMTQxXCIsXCJcdUQ1NjRcdUQ1NjZcdUQ1NjdcdUQ1NkFcdUQ1NkNcdUQ1NkVcIiw1LFwiXHVENTc2XHVENTc3XHVENTc5XHVENTdBXHVENTdCXHVENTdEXCIsNixcIlx1RDU4Nlx1RDU4QVx1RDU4QlwiXSxcbltcImMxNjFcIixcIlx1RDU4Q1x1RDU4RFx1RDU4RVx1RDU4Rlx1RDU5MVwiLDE5LFwiXHVENUE2XHVENUE3XCJdLFxuW1wiYzE4MVwiLFwiXHVENUE4XCIsMzEsXCJcdUM4MTBcdUM4MTFcdUM4MTNcdUM4MTVcdUM4MTZcdUM4MUNcdUM4MURcdUM4MjBcdUM4MjRcdUM4MkNcdUM4MkRcdUM4MkZcdUM4MzFcdUM4MzhcdUM4M0NcdUM4NDBcdUM4NDhcdUM4NDlcdUM4NENcdUM4NERcdUM4NTRcdUM4NzBcdUM4NzFcdUM4NzRcdUM4NzhcdUM4N0FcdUM4ODBcdUM4ODFcdUM4ODNcdUM4ODVcdUM4ODZcdUM4ODdcdUM4OEJcdUM4OENcdUM4OERcdUM4OTRcdUM4OURcdUM4OUZcdUM4QTFcdUM4QThcdUM4QkNcdUM4QkRcdUM4QzRcdUM4QzhcdUM4Q0NcdUM4RDRcdUM4RDVcdUM4RDdcdUM4RDlcdUM4RTBcdUM4RTFcdUM4RTRcdUM4RjVcdUM4RkNcdUM4RkRcdUM5MDBcdUM5MDRcdUM5MDVcdUM5MDZcdUM5MENcdUM5MERcdUM5MEZcdUM5MTFcdUM5MThcdUM5MkNcdUM5MzRcdUM5NTBcdUM5NTFcdUM5NTRcdUM5NThcdUM5NjBcdUM5NjFcdUM5NjNcdUM5NkNcdUM5NzBcdUM5NzRcdUM5N0NcdUM5ODhcdUM5ODlcdUM5OENcdUM5OTBcdUM5OThcdUM5OTlcdUM5OUJcdUM5OURcdUM5QzBcdUM5QzFcdUM5QzRcdUM5QzdcdUM5QzhcdUM5Q0FcdUM5RDBcdUM5RDFcdUM5RDNcIl0sXG5bXCJjMjQxXCIsXCJcdUQ1Q0FcdUQ1Q0JcdUQ1Q0RcdUQ1Q0VcdUQ1Q0ZcdUQ1RDFcdUQ1RDNcIiw0LFwiXHVENURBXHVENURDXHVENURFXCIsNSxcIlx1RDVFNlx1RDVFN1x1RDVFOVx1RDVFQVx1RDVFQlx1RDVFRFx1RDVFRVwiXSxcbltcImMyNjFcIixcIlx1RDVFRlwiLDQsXCJcdUQ1RjZcdUQ1RjhcdUQ1RkFcIiw1LFwiXHVENjAyXHVENjAzXHVENjA1XHVENjA2XHVENjA3XHVENjA5XCIsNixcIlx1RDYxMlwiXSxcbltcImMyODFcIixcIlx1RDYxNlwiLDUsXCJcdUQ2MURcdUQ2MUVcdUQ2MUZcdUQ2MjFcdUQ2MjJcdUQ2MjNcdUQ2MjVcIiw3LFwiXHVENjJFXCIsOSxcIlx1RDYzQVx1RDYzQlx1QzlENVx1QzlENlx1QzlEOVx1QzlEQVx1QzlEQ1x1QzlERFx1QzlFMFx1QzlFMlx1QzlFNFx1QzlFN1x1QzlFQ1x1QzlFRFx1QzlFRlx1QzlGMFx1QzlGMVx1QzlGOFx1QzlGOVx1QzlGQ1x1Q0EwMFx1Q0EwOFx1Q0EwOVx1Q0EwQlx1Q0EwQ1x1Q0EwRFx1Q0ExNFx1Q0ExOFx1Q0EyOVx1Q0E0Q1x1Q0E0RFx1Q0E1MFx1Q0E1NFx1Q0E1Q1x1Q0E1RFx1Q0E1Rlx1Q0E2MFx1Q0E2MVx1Q0E2OFx1Q0E3RFx1Q0E4NFx1Q0E5OFx1Q0FCQ1x1Q0FCRFx1Q0FDMFx1Q0FDNFx1Q0FDQ1x1Q0FDRFx1Q0FDRlx1Q0FEMVx1Q0FEM1x1Q0FEOFx1Q0FEOVx1Q0FFMFx1Q0FFQ1x1Q0FGNFx1Q0IwOFx1Q0IxMFx1Q0IxNFx1Q0IxOFx1Q0IyMFx1Q0IyMVx1Q0I0MVx1Q0I0OFx1Q0I0OVx1Q0I0Q1x1Q0I1MFx1Q0I1OFx1Q0I1OVx1Q0I1RFx1Q0I2NFx1Q0I3OFx1Q0I3OVx1Q0I5Q1x1Q0JCOFx1Q0JENFx1Q0JFNFx1Q0JFN1x1Q0JFOVx1Q0MwQ1x1Q0MwRFx1Q0MxMFx1Q0MxNFx1Q0MxQ1x1Q0MxRFx1Q0MyMVx1Q0MyMlx1Q0MyN1x1Q0MyOFx1Q0MyOVx1Q0MyQ1x1Q0MyRVx1Q0MzMFx1Q0MzOFx1Q0MzOVx1Q0MzQlwiXSxcbltcImMzNDFcIixcIlx1RDYzRFx1RDYzRVx1RDYzRlx1RDY0MVx1RDY0Mlx1RDY0M1x1RDY0NFx1RDY0Nlx1RDY0N1x1RDY0QVx1RDY0Q1x1RDY0RVx1RDY0Rlx1RDY1MFx1RDY1Mlx1RDY1M1x1RDY1Nlx1RDY1N1x1RDY1OVx1RDY1QVx1RDY1Qlx1RDY1RFwiLDRdLFxuW1wiYzM2MVwiLFwiXHVENjYyXCIsNCxcIlx1RDY2OFx1RDY2QVwiLDUsXCJcdUQ2NzJcdUQ2NzNcdUQ2NzVcIiwxMV0sXG5bXCJjMzgxXCIsXCJcdUQ2ODFcdUQ2ODJcdUQ2ODRcdUQ2ODZcIiw1LFwiXHVENjhFXHVENjhGXHVENjkxXHVENjkyXHVENjkzXHVENjk1XCIsNyxcIlx1RDY5RVx1RDZBMFx1RDZBMlwiLDUsXCJcdUQ2QTlcdUQ2QUFcdUNDM0NcdUNDM0RcdUNDM0VcdUNDNDRcdUNDNDVcdUNDNDhcdUNDNENcdUNDNTRcdUNDNTVcdUNDNTdcdUNDNThcdUNDNTlcdUNDNjBcdUNDNjRcdUNDNjZcdUNDNjhcdUNDNzBcdUNDNzVcdUNDOThcdUNDOTlcdUNDOUNcdUNDQTBcdUNDQThcdUNDQTlcdUNDQUJcdUNDQUNcdUNDQURcdUNDQjRcdUNDQjVcdUNDQjhcdUNDQkNcdUNDQzRcdUNDQzVcdUNDQzdcdUNDQzlcdUNDRDBcdUNDRDRcdUNDRTRcdUNDRUNcdUNDRjBcdUNEMDFcdUNEMDhcdUNEMDlcdUNEMENcdUNEMTBcdUNEMThcdUNEMTlcdUNEMUJcdUNEMURcdUNEMjRcdUNEMjhcdUNEMkNcdUNEMzlcdUNENUNcdUNENjBcdUNENjRcdUNENkNcdUNENkRcdUNENkZcdUNENzFcdUNENzhcdUNEODhcdUNEOTRcdUNEOTVcdUNEOThcdUNEOUNcdUNEQTRcdUNEQTVcdUNEQTdcdUNEQTlcdUNEQjBcdUNEQzRcdUNEQ0NcdUNERDBcdUNERThcdUNERUNcdUNERjBcdUNERjhcdUNERjlcdUNERkJcdUNERkRcdUNFMDRcdUNFMDhcdUNFMENcdUNFMTRcdUNFMTlcdUNFMjBcdUNFMjFcdUNFMjRcdUNFMjhcdUNFMzBcdUNFMzFcdUNFMzNcdUNFMzVcIl0sXG5bXCJjNDQxXCIsXCJcdUQ2QUJcdUQ2QURcdUQ2QUVcdUQ2QUZcdUQ2QjFcIiw3LFwiXHVENkJBXHVENkJDXCIsNyxcIlx1RDZDNlx1RDZDN1x1RDZDOVx1RDZDQVx1RDZDQlwiXSxcbltcImM0NjFcIixcIlx1RDZDRFx1RDZDRVx1RDZDRlx1RDZEMFx1RDZEMlx1RDZEM1x1RDZENVx1RDZENlx1RDZEOFx1RDZEQVwiLDUsXCJcdUQ2RTFcdUQ2RTJcdUQ2RTNcdUQ2RTVcdUQ2RTZcdUQ2RTdcdUQ2RTlcIiw0XSxcbltcImM0ODFcIixcIlx1RDZFRVx1RDZFRlx1RDZGMVx1RDZGMlx1RDZGM1x1RDZGNFx1RDZGNlwiLDUsXCJcdUQ2RkVcdUQ2RkZcdUQ3MDFcdUQ3MDJcdUQ3MDNcdUQ3MDVcIiwxMSxcIlx1RDcxMlx1RDcxM1x1RDcxNFx1Q0U1OFx1Q0U1OVx1Q0U1Q1x1Q0U1Rlx1Q0U2MFx1Q0U2MVx1Q0U2OFx1Q0U2OVx1Q0U2Qlx1Q0U2RFx1Q0U3NFx1Q0U3NVx1Q0U3OFx1Q0U3Q1x1Q0U4NFx1Q0U4NVx1Q0U4N1x1Q0U4OVx1Q0U5MFx1Q0U5MVx1Q0U5NFx1Q0U5OFx1Q0VBMFx1Q0VBMVx1Q0VBM1x1Q0VBNFx1Q0VBNVx1Q0VBQ1x1Q0VBRFx1Q0VDMVx1Q0VFNFx1Q0VFNVx1Q0VFOFx1Q0VFQlx1Q0VFQ1x1Q0VGNFx1Q0VGNVx1Q0VGN1x1Q0VGOFx1Q0VGOVx1Q0YwMFx1Q0YwMVx1Q0YwNFx1Q0YwOFx1Q0YxMFx1Q0YxMVx1Q0YxM1x1Q0YxNVx1Q0YxQ1x1Q0YyMFx1Q0YyNFx1Q0YyQ1x1Q0YyRFx1Q0YyRlx1Q0YzMFx1Q0YzMVx1Q0YzOFx1Q0Y1NFx1Q0Y1NVx1Q0Y1OFx1Q0Y1Q1x1Q0Y2NFx1Q0Y2NVx1Q0Y2N1x1Q0Y2OVx1Q0Y3MFx1Q0Y3MVx1Q0Y3NFx1Q0Y3OFx1Q0Y4MFx1Q0Y4NVx1Q0Y4Q1x1Q0ZBMVx1Q0ZBOFx1Q0ZCMFx1Q0ZDNFx1Q0ZFMFx1Q0ZFMVx1Q0ZFNFx1Q0ZFOFx1Q0ZGMFx1Q0ZGMVx1Q0ZGM1x1Q0ZGNVx1Q0ZGQ1x1RDAwMFx1RDAwNFx1RDAxMVx1RDAxOFx1RDAyRFx1RDAzNFx1RDAzNVx1RDAzOFx1RDAzQ1wiXSxcbltcImM1NDFcIixcIlx1RDcxNVx1RDcxNlx1RDcxN1x1RDcxQVx1RDcxQlx1RDcxRFx1RDcxRVx1RDcxRlx1RDcyMVwiLDYsXCJcdUQ3MkFcdUQ3MkNcdUQ3MkVcIiw1LFwiXHVENzM2XHVENzM3XHVENzM5XCJdLFxuW1wiYzU2MVwiLFwiXHVENzNBXHVENzNCXHVENzNEXCIsNixcIlx1RDc0NVx1RDc0Nlx1RDc0OFx1RDc0QVwiLDUsXCJcdUQ3NTJcdUQ3NTNcdUQ3NTVcdUQ3NUFcIiw0XSxcbltcImM1ODFcIixcIlx1RDc1Rlx1RDc2Mlx1RDc2NFx1RDc2Nlx1RDc2N1x1RDc2OFx1RDc2QVx1RDc2Qlx1RDc2RFx1RDc2RVx1RDc2Rlx1RDc3MVx1RDc3Mlx1RDc3M1x1RDc3NVwiLDYsXCJcdUQ3N0VcdUQ3N0ZcdUQ3ODBcdUQ3ODJcIiw1LFwiXHVENzhBXHVENzhCXHVEMDQ0XHVEMDQ1XHVEMDQ3XHVEMDQ5XHVEMDUwXHVEMDU0XHVEMDU4XHVEMDYwXHVEMDZDXHVEMDZEXHVEMDcwXHVEMDc0XHVEMDdDXHVEMDdEXHVEMDgxXHVEMEE0XHVEMEE1XHVEMEE4XHVEMEFDXHVEMEI0XHVEMEI1XHVEMEI3XHVEMEI5XHVEMEMwXHVEMEMxXHVEMEM0XHVEMEM4XHVEMEM5XHVEMEQwXHVEMEQxXHVEMEQzXHVEMEQ0XHVEMEQ1XHVEMERDXHVEMEREXHVEMEUwXHVEMEU0XHVEMEVDXHVEMEVEXHVEMEVGXHVEMEYwXHVEMEYxXHVEMEY4XHVEMTBEXHVEMTMwXHVEMTMxXHVEMTM0XHVEMTM4XHVEMTNBXHVEMTQwXHVEMTQxXHVEMTQzXHVEMTQ0XHVEMTQ1XHVEMTRDXHVEMTREXHVEMTUwXHVEMTU0XHVEMTVDXHVEMTVEXHVEMTVGXHVEMTYxXHVEMTY4XHVEMTZDXHVEMTdDXHVEMTg0XHVEMTg4XHVEMUEwXHVEMUExXHVEMUE0XHVEMUE4XHVEMUIwXHVEMUIxXHVEMUIzXHVEMUI1XHVEMUJBXHVEMUJDXHVEMUMwXHVEMUQ4XHVEMUY0XHVEMUY4XHVEMjA3XHVEMjA5XHVEMjEwXHVEMjJDXHVEMjJEXHVEMjMwXHVEMjM0XHVEMjNDXHVEMjNEXHVEMjNGXHVEMjQxXHVEMjQ4XHVEMjVDXCJdLFxuW1wiYzY0MVwiLFwiXHVENzhEXHVENzhFXHVENzhGXHVENzkxXCIsNixcIlx1RDc5QVx1RDc5Q1x1RDc5RVwiLDVdLFxuW1wiYzZhMVwiLFwiXHVEMjY0XHVEMjgwXHVEMjgxXHVEMjg0XHVEMjg4XHVEMjkwXHVEMjkxXHVEMjk1XHVEMjlDXHVEMkEwXHVEMkE0XHVEMkFDXHVEMkIxXHVEMkI4XHVEMkI5XHVEMkJDXHVEMkJGXHVEMkMwXHVEMkMyXHVEMkM4XHVEMkM5XHVEMkNCXHVEMkQ0XHVEMkQ4XHVEMkRDXHVEMkU0XHVEMkU1XHVEMkYwXHVEMkYxXHVEMkY0XHVEMkY4XHVEMzAwXHVEMzAxXHVEMzAzXHVEMzA1XHVEMzBDXHVEMzBEXHVEMzBFXHVEMzEwXHVEMzE0XHVEMzE2XHVEMzFDXHVEMzFEXHVEMzFGXHVEMzIwXHVEMzIxXHVEMzI1XHVEMzI4XHVEMzI5XHVEMzJDXHVEMzMwXHVEMzM4XHVEMzM5XHVEMzNCXHVEMzNDXHVEMzNEXHVEMzQ0XHVEMzQ1XHVEMzdDXHVEMzdEXHVEMzgwXHVEMzg0XHVEMzhDXHVEMzhEXHVEMzhGXHVEMzkwXHVEMzkxXHVEMzk4XHVEMzk5XHVEMzlDXHVEM0EwXHVEM0E4XHVEM0E5XHVEM0FCXHVEM0FEXHVEM0I0XHVEM0I4XHVEM0JDXHVEM0M0XHVEM0M1XHVEM0M4XHVEM0M5XHVEM0QwXHVEM0Q4XHVEM0UxXHVEM0UzXHVEM0VDXHVEM0VEXHVEM0YwXHVEM0Y0XHVEM0ZDXHVEM0ZEXHVEM0ZGXHVENDAxXCJdLFxuW1wiYzdhMVwiLFwiXHVENDA4XHVENDFEXHVENDQwXHVENDQ0XHVENDVDXHVENDYwXHVENDY0XHVENDZEXHVENDZGXHVENDc4XHVENDc5XHVENDdDXHVENDdGXHVENDgwXHVENDgyXHVENDg4XHVENDg5XHVENDhCXHVENDhEXHVENDk0XHVENEE5XHVENENDXHVENEQwXHVENEQ0XHVENERDXHVENERGXHVENEU4XHVENEVDXHVENEYwXHVENEY4XHVENEZCXHVENEZEXHVENTA0XHVENTA4XHVENTBDXHVENTE0XHVENTE1XHVENTE3XHVENTNDXHVENTNEXHVENTQwXHVENTQ0XHVENTRDXHVENTREXHVENTRGXHVENTUxXHVENTU4XHVENTU5XHVENTVDXHVENTYwXHVENTY1XHVENTY4XHVENTY5XHVENTZCXHVENTZEXHVENTc0XHVENTc1XHVENTc4XHVENTdDXHVENTg0XHVENTg1XHVENTg3XHVENTg4XHVENTg5XHVENTkwXHVENUE1XHVENUM4XHVENUM5XHVENUNDXHVENUQwXHVENUQyXHVENUQ4XHVENUQ5XHVENURCXHVENUREXHVENUU0XHVENUU1XHVENUU4XHVENUVDXHVENUY0XHVENUY1XHVENUY3XHVENUY5XHVENjAwXHVENjAxXHVENjA0XHVENjA4XHVENjEwXHVENjExXHVENjEzXHVENjE0XHVENjE1XHVENjFDXHVENjIwXCJdLFxuW1wiYzhhMVwiLFwiXHVENjI0XHVENjJEXHVENjM4XHVENjM5XHVENjNDXHVENjQwXHVENjQ1XHVENjQ4XHVENjQ5XHVENjRCXHVENjREXHVENjUxXHVENjU0XHVENjU1XHVENjU4XHVENjVDXHVENjY3XHVENjY5XHVENjcwXHVENjcxXHVENjc0XHVENjgzXHVENjg1XHVENjhDXHVENjhEXHVENjkwXHVENjk0XHVENjlEXHVENjlGXHVENkExXHVENkE4XHVENkFDXHVENkIwXHVENkI5XHVENkJCXHVENkM0XHVENkM1XHVENkM4XHVENkNDXHVENkQxXHVENkQ0XHVENkQ3XHVENkQ5XHVENkUwXHVENkU0XHVENkU4XHVENkYwXHVENkY1XHVENkZDXHVENkZEXHVENzAwXHVENzA0XHVENzExXHVENzE4XHVENzE5XHVENzFDXHVENzIwXHVENzI4XHVENzI5XHVENzJCXHVENzJEXHVENzM0XHVENzM1XHVENzM4XHVENzNDXHVENzQ0XHVENzQ3XHVENzQ5XHVENzUwXHVENzUxXHVENzU0XHVENzU2XHVENzU3XHVENzU4XHVENzU5XHVENzYwXHVENzYxXHVENzYzXHVENzY1XHVENzY5XHVENzZDXHVENzcwXHVENzc0XHVENzdDXHVENzdEXHVENzgxXHVENzg4XHVENzg5XHVENzhDXHVENzkwXHVENzk4XHVENzk5XHVENzlCXHVENzlEXCJdLFxuW1wiY2FhMVwiLFwiXHU0RjNEXHU0RjczXHU1MDQ3XHU1MEY5XHU1MkEwXHU1M0VGXHU1NDc1XHU1NEU1XHU1NjA5XHU1QUMxXHU1QkI2XHU2Njg3XHU2N0I2XHU2N0I3XHU2N0VGXHU2QjRDXHU3M0MyXHU3NUMyXHU3QTNDXHU4MkRCXHU4MzA0XHU4ODU3XHU4ODg4XHU4QTM2XHU4Q0M4XHU4RENGXHU4RUZCXHU4RkU2XHU5OUQ1XHU1MjNCXHU1Mzc0XHU1NDA0XHU2MDZBXHU2MTY0XHU2QkJDXHU3M0NGXHU4MTFBXHU4OUJBXHU4OUQyXHU5NUEzXHU0RjgzXHU1MjBBXHU1OEJFXHU1OTc4XHU1OUU2XHU1RTcyXHU1RTc5XHU2MUM3XHU2M0MwXHU2NzQ2XHU2N0VDXHU2ODdGXHU2Rjk3XHU3NjRFXHU3NzBCXHU3OEY1XHU3QTA4XHU3QUZGXHU3QzIxXHU4MDlEXHU4MjZFXHU4MjcxXHU4QUVCXHU5NTkzXHU0RTZCXHU1NTlEXHU2NkY3XHU2RTM0XHU3OEEzXHU3QUVEXHU4NDVCXHU4OTEwXHU4NzRFXHU5N0E4XHU1MkQ4XHU1NzRFXHU1ODJBXHU1RDRDXHU2MTFGXHU2MUJFXHU2MjIxXHU2NTYyXHU2N0QxXHU2QTQ0XHU2RTFCXHU3NTE4XHU3NUIzXHU3NkUzXHU3N0IwXHU3RDNBXHU5MEFGXHU5NDUxXHU5NDUyXHU5Rjk1XCJdLFxuW1wiY2JhMVwiLFwiXHU1MzIzXHU1Q0FDXHU3NTMyXHU4MERCXHU5MjQwXHU5NTk4XHU1MjVCXHU1ODA4XHU1OURDXHU1Q0ExXHU1RDE3XHU1RUI3XHU1RjNBXHU1RjRBXHU2MTc3XHU2QzVGXHU3NTdBXHU3NTg2XHU3Q0UwXHU3RDczXHU3REIxXHU3RjhDXHU4MTU0XHU4MjIxXHU4NTkxXHU4OTQxXHU4QjFCXHU5MkZDXHU5NjREXHU5QzQ3XHU0RUNCXHU0RUY3XHU1MDBCXHU1MUYxXHU1ODRGXHU2MTM3XHU2MTNFXHU2MTY4XHU2NTM5XHU2OUVBXHU2RjExXHU3NUE1XHU3Njg2XHU3NkQ2XHU3Qjg3XHU4MkE1XHU4NENCXHVGOTAwXHU5M0E3XHU5NThCXHU1NTgwXHU1QkEyXHU1NzUxXHVGOTAxXHU3Q0IzXHU3RkI5XHU5MUI1XHU1MDI4XHU1M0JCXHU1QzQ1XHU1REU4XHU2MkQyXHU2MzZFXHU2NERBXHU2NEU3XHU2RTIwXHU3MEFDXHU3OTVCXHU4REREXHU4RTFFXHVGOTAyXHU5MDdEXHU5MjQ1XHU5MkY4XHU0RTdFXHU0RUY2XHU1MDY1XHU1REZFXHU1RUZBXHU2MTA2XHU2OTU3XHU4MTcxXHU4NjU0XHU4RTQ3XHU5Mzc1XHU5QTJCXHU0RTVFXHU1MDkxXHU2NzcwXHU2ODQwXHU1MTA5XHU1MjhEXHU1MjkyXHU2QUEyXCJdLFxuW1wiY2NhMVwiLFwiXHU3N0JDXHU5MjEwXHU5RUQ0XHU1MkFCXHU2MDJGXHU4RkYyXHU1MDQ4XHU2MUE5XHU2M0VEXHU2NENBXHU2ODNDXHU2QTg0XHU2RkMwXHU4MTg4XHU4OUExXHU5Njk0XHU1ODA1XHU3MjdEXHU3MkFDXHU3NTA0XHU3RDc5XHU3RTZEXHU4MEE5XHU4OThCXHU4Qjc0XHU5MDYzXHU5RDUxXHU2Mjg5XHU2QzdBXHU2RjU0XHU3RDUwXHU3RjNBXHU4QTIzXHU1MTdDXHU2MTRBXHU3QjlEXHU4QjE5XHU5MjU3XHU5MzhDXHU0RUFDXHU0RkQzXHU1MDFFXHU1MEJFXHU1MTA2XHU1MkMxXHU1MkNEXHU1MzdGXHU1NzcwXHU1ODgzXHU1RTlBXHU1RjkxXHU2MTc2XHU2MUFDXHU2NENFXHU2NTZDXHU2NjZGXHU2NkJCXHU2NkY0XHU2ODk3XHU2RDg3XHU3MDg1XHU3MEYxXHU3NDlGXHU3NEE1XHU3NENBXHU3NUQ5XHU3ODZDXHU3OEVDXHU3QURGXHU3QUY2XHU3RDQ1XHU3RDkzXHU4MDE1XHU4MDNGXHU4MTFCXHU4Mzk2XHU4QjY2XHU4RjE1XHU5MDE1XHU5M0UxXHU5ODAzXHU5ODM4XHU5QTVBXHU5QkU4XHU0RkMyXHU1NTUzXHU1ODNBXHU1OTUxXHU1QjYzXHU1QzQ2XHU2MEI4XHU2MjEyXHU2ODQyXHU2OEIwXCJdLFxuW1wiY2RhMVwiLFwiXHU2OEU4XHU2RUFBXHU3NTRDXHU3Njc4XHU3OENFXHU3QTNEXHU3Q0ZCXHU3RTZCXHU3RTdDXHU4QTA4XHU4QUExXHU4QzNGXHU5NjhFXHU5REM0XHU1M0U0XHU1M0U5XHU1NDRBXHU1NDcxXHU1NkZBXHU1OUQxXHU1QjY0XHU1QzNCXHU1RUFCXHU2MkY3XHU2NTM3XHU2NTQ1XHU2NTcyXHU2NkEwXHU2N0FGXHU2OUMxXHU2Q0JEXHU3NUZDXHU3NjkwXHU3NzdFXHU3QTNGXHU3Rjk0XHU4MDAzXHU4MEExXHU4MThGXHU4MkU2XHU4MkZEXHU4M0YwXHU4NUMxXHU4ODMxXHU4OEI0XHU4QUE1XHVGOTAzXHU4RjlDXHU5MzJFXHU5NkM3XHU5ODY3XHU5QUQ4XHU5RjEzXHU1NEVEXHU2NTlCXHU2NkYyXHU2ODhGXHU3QTQwXHU4QzM3XHU5RDYwXHU1NkYwXHU1NzY0XHU1RDExXHU2NjA2XHU2OEIxXHU2OENEXHU2RUZFXHU3NDI4XHU4ODlFXHU5QkU0XHU2QzY4XHVGOTA0XHU5QUE4XHU0RjlCXHU1MTZDXHU1MTcxXHU1MjlGXHU1QjU0XHU1REU1XHU2MDUwXHU2MDZEXHU2MkYxXHU2M0E3XHU2NTNCXHU3M0Q5XHU3QTdBXHU4NkEzXHU4Q0EyXHU5NzhGXHU0RTMyXHU1QkUxXHU2MjA4XHU2NzlDXHU3NERDXCJdLFxuW1wiY2VhMVwiLFwiXHU3OUQxXHU4M0QzXHU4QTg3XHU4QUIyXHU4REU4XHU5MDRFXHU5MzRCXHU5ODQ2XHU1RUQzXHU2OUU4XHU4NUZGXHU5MEVEXHVGOTA1XHU1MUEwXHU1Qjk4XHU1QkVDXHU2MTYzXHU2OEZBXHU2QjNFXHU3MDRDXHU3NDJGXHU3NEQ4XHU3QkExXHU3RjUwXHU4M0M1XHU4OUMwXHU4Q0FCXHU5NURDXHU5OTI4XHU1MjJFXHU2MDVEXHU2MkVDXHU5MDAyXHU0RjhBXHU1MTQ5XHU1MzIxXHU1OEQ5XHU1RUUzXHU2NkUwXHU2RDM4XHU3MDlBXHU3MkMyXHU3M0Q2XHU3QjUwXHU4MEYxXHU5NDVCXHU1MzY2XHU2MzlCXHU3RjZCXHU0RTU2XHU1MDgwXHU1ODRBXHU1OERFXHU2MDJBXHU2MTI3XHU2MkQwXHU2OUQwXHU5QjQxXHU1QjhGXHU3RDE4XHU4MEIxXHU4RjVGXHU0RUE0XHU1MEQxXHU1NEFDXHU1NUFDXHU1QjBDXHU1REEwXHU1REU3XHU2NTJBXHU2NTRFXHU2ODIxXHU2QTRCXHU3MkUxXHU3NjhFXHU3N0VGXHU3RDVFXHU3RkY5XHU4MUEwXHU4NTRFXHU4NkRGXHU4RjAzXHU4RjRFXHU5MENBXHU5OTAzXHU5QTU1XHU5QkFCXHU0RTE4XHU0RTQ1XHU0RTVEXHU0RUM3XHU0RkYxXHU1MTc3XHU1MkZFXCJdLFxuW1wiY2ZhMVwiLFwiXHU1MzQwXHU1M0UzXHU1M0U1XHU1NDhFXHU1NjE0XHU1Nzc1XHU1N0EyXHU1QkM3XHU1RDg3XHU1RUQwXHU2MUZDXHU2MkQ4XHU2NTUxXHU2N0I4XHU2N0U5XHU2OUNCXHU2QjUwXHU2QkM2XHU2QkVDXHU2QzQyXHU2RTlEXHU3MDc4XHU3MkQ3XHU3Mzk2XHU3NDAzXHU3N0JGXHU3N0U5XHU3QTc2XHU3RDdGXHU4MDA5XHU4MUZDXHU4MjA1XHU4MjBBXHU4MkRGXHU4ODYyXHU4QjMzXHU4Q0ZDXHU4RUMwXHU5MDExXHU5MEIxXHU5MjY0XHU5MkI2XHU5OUQyXHU5QTQ1XHU5Q0U5XHU5REQ3XHU5RjlDXHU1NzBCXHU1QzQwXHU4M0NBXHU5N0EwXHU5N0FCXHU5RUI0XHU1NDFCXHU3QTk4XHU3RkE0XHU4OEQ5XHU4RUNEXHU5MEUxXHU1ODAwXHU1QzQ4XHU2Mzk4XHU3QTlGXHU1QkFFXHU1RjEzXHU3QTc5XHU3QUFFXHU4MjhFXHU4RUFDXHU1MDI2XHU1MjM4XHU1MkY4XHU1Mzc3XHU1NzA4XHU2MkYzXHU2MzcyXHU2QjBBXHU2REMzXHU3NzM3XHU1M0E1XHU3MzU3XHU4NTY4XHU4RTc2XHU5NUQ1XHU2NzNBXHU2QUMzXHU2RjcwXHU4QTZEXHU4RUNDXHU5OTRCXHVGOTA2XHU2Njc3XHU2Qjc4XHU4Q0I0XCJdLFxuW1wiZDBhMVwiLFwiXHU5QjNDXHVGOTA3XHU1M0VCXHU1NzJEXHU1OTRFXHU2M0M2XHU2OUZCXHU3M0VBXHU3ODQ1XHU3QUJBXHU3QUM1XHU3Q0ZFXHU4NDc1XHU4OThGXHU4RDczXHU5MDM1XHU5NUE4XHU1MkZCXHU1NzQ3XHU3NTQ3XHU3QjYwXHU4M0NDXHU5MjFFXHVGOTA4XHU2QTU4XHU1MTRCXHU1MjRCXHU1Mjg3XHU2MjFGXHU2OEQ4XHU2OTc1XHU5Njk5XHU1MEM1XHU1MkE0XHU1MkU0XHU2MUMzXHU2NUE0XHU2ODM5XHU2OUZGXHU3NDdFXHU3QjRCXHU4MkI5XHU4M0VCXHU4OUIyXHU4QjM5XHU4RkQxXHU5OTQ5XHVGOTA5XHU0RUNBXHU1OTk3XHU2NEQyXHU2NjExXHU2QThFXHU3NDM0XHU3OTgxXHU3OUJEXHU4MkE5XHU4ODdFXHU4ODdGXHU4OTVGXHVGOTBBXHU5MzI2XHU0RjBCXHU1M0NBXHU2MDI1XHU2MjcxXHU2QzcyXHU3RDFBXHU3RDY2XHU0RTk4XHU1MTYyXHU3N0RDXHU4MEFGXHU0RjAxXHU0RjBFXHU1MTc2XHU1MTgwXHU1NURDXHU1NjY4XHU1NzNCXHU1N0ZBXHU1N0ZDXHU1OTE0XHU1OTQ3XHU1OTkzXHU1QkM0XHU1QzkwXHU1RDBFXHU1REYxXHU1RTdFXHU1RkNDXHU2MjgwXHU2NUQ3XHU2NUUzXCJdLFxuW1wiZDFhMVwiLFwiXHU2NzFFXHU2NzFGXHU2NzVFXHU2OENCXHU2OEM0XHU2QTVGXHU2QjNBXHU2QzIzXHU2QzdEXHU2QzgyXHU2REM3XHU3Mzk4XHU3NDI2XHU3NDJBXHU3NDgyXHU3NEEzXHU3NTc4XHU3NTdGXHU3ODgxXHU3OEVGXHU3OTQxXHU3OTQ3XHU3OTQ4XHU3OTdBXHU3Qjk1XHU3RDAwXHU3REJBXHU3Rjg4XHU4MDA2XHU4MDJEXHU4MDhDXHU4QTE4XHU4QjRGXHU4QzQ4XHU4RDc3XHU5MzIxXHU5MzI0XHU5OEUyXHU5OTUxXHU5QTBFXHU5QTBGXHU5QTY1XHU5RTkyXHU3RENBXHU0Rjc2XHU1NDA5XHU2MkVFXHU2ODU0XHU5MUQxXHU1NUFCXHU1MTNBXHVGOTBCXHVGOTBDXHU1QTFDXHU2MUU2XHVGOTBEXHU2MkNGXHU2MkZGXHVGOTBFXCIsNSxcIlx1OTBBM1x1RjkxNFwiLDQsXCJcdThBRkVcdUY5MTlcdUY5MUFcdUY5MUJcdUY5MUNcdTY2OTZcdUY5MURcdTcxNTZcdUY5MUVcdUY5MUZcdTk2RTNcdUY5MjBcdTYzNEZcdTYzN0FcdTUzNTdcdUY5MjFcdTY3OEZcdTY5NjBcdTZFNzNcdUY5MjJcdTc1MzdcdUY5MjNcdUY5MjRcdUY5MjVcIl0sXG5bXCJkMmExXCIsXCJcdTdEMERcdUY5MjZcdUY5MjdcdTg4NzJcdTU2Q0FcdTVBMThcdUY5MjhcIiw0LFwiXHU0RTQzXHVGOTJEXHU1MTY3XHU1OTQ4XHU2N0YwXHU4MDEwXHVGOTJFXHU1OTczXHU1RTc0XHU2NDlBXHU3OUNBXHU1RkY1XHU2MDZDXHU2MkM4XHU2MzdCXHU1QkU3XHU1QkQ3XHU1MkFBXHVGOTJGXHU1OTc0XHU1RjI5XHU2MDEyXHVGOTMwXHVGOTMxXHVGOTMyXHU3NDU5XHVGOTMzXCIsNSxcIlx1OTlEMVx1RjkzOVwiLDEwLFwiXHU2RkMzXHVGOTQ0XHVGOTQ1XHU4MUJGXHU4RkIyXHU2MEYxXHVGOTQ2XHVGOTQ3XHU4MTY2XHVGOTQ4XHVGOTQ5XHU1QzNGXHVGOTRBXCIsNyxcIlx1NUFFOVx1OEEyNVx1Njc3Qlx1N0QxMFx1Rjk1MlwiLDUsXCJcdTgwRkRcdUY5NThcdUY5NTlcdTVDM0NcdTZDRTVcdTUzM0ZcdTZFQkFcdTU5MUFcdTgzMzZcIl0sXG5bXCJkM2ExXCIsXCJcdTRFMzlcdTRFQjZcdTRGNDZcdTU1QUVcdTU3MThcdTU4QzdcdTVGNTZcdTY1QjdcdTY1RTZcdTZBODBcdTZCQjVcdTZFNERcdTc3RURcdTdBRUZcdTdDMUVcdTdEREVcdTg2Q0JcdTg4OTJcdTkxMzJcdTkzNUJcdTY0QkJcdTZGQkVcdTczN0FcdTc1QjhcdTkwNTRcdTU1NTZcdTU3NERcdTYxQkFcdTY0RDRcdTY2QzdcdTZERTFcdTZFNUJcdTZGNkRcdTZGQjlcdTc1RjBcdTgwNDNcdTgxQkRcdTg1NDFcdTg5ODNcdThBQzdcdThCNUFcdTkzMUZcdTZDOTNcdTc1NTNcdTdCNTRcdThFMEZcdTkwNURcdTU1MTBcdTU4MDJcdTU4NThcdTVFNjJcdTYyMDdcdTY0OUVcdTY4RTBcdTc1NzZcdTdDRDZcdTg3QjNcdTlFRThcdTRFRTNcdTU3ODhcdTU3NkVcdTU5MjdcdTVDMERcdTVDQjFcdTVFMzZcdTVGODVcdTYyMzRcdTY0RTFcdTczQjNcdTgxRkFcdTg4OEJcdThDQjhcdTk2OEFcdTlFREJcdTVCODVcdTVGQjdcdTYwQjNcdTUwMTJcdTUyMDBcdTUyMzBcdTU3MTZcdTU4MzVcdTU4NTdcdTVDMEVcdTVDNjBcdTVDRjZcdTVEOEJcdTVFQTZcdTVGOTJcdTYwQkNcdTYzMTFcdTYzODlcdTY0MTdcdTY4NDNcIl0sXG5bXCJkNGExXCIsXCJcdTY4RjlcdTZBQzJcdTZERDhcdTZFMjFcdTZFRDRcdTZGRTRcdTcxRkVcdTc2RENcdTc3NzlcdTc5QjFcdTdBM0JcdTg0MDRcdTg5QTlcdThDRURcdThERjNcdThFNDhcdTkwMDNcdTkwMTRcdTkwNTNcdTkwRkRcdTkzNERcdTk2NzZcdTk3RENcdTZCRDJcdTcwMDZcdTcyNThcdTcyQTJcdTczNjhcdTc3NjNcdTc5QkZcdTdCRTRcdTdFOUJcdThCODBcdTU4QTlcdTYwQzdcdTY1NjZcdTY1RkRcdTY2QkVcdTZDOENcdTcxMUVcdTcxQzlcdThDNUFcdTk4MTNcdTRFNkRcdTdBODFcdTRFRERcdTUxQUNcdTUxQ0RcdTUyRDVcdTU0MENcdTYxQTdcdTY3NzFcdTY4NTBcdTY4REZcdTZEMUVcdTZGN0NcdTc1QkNcdTc3QjNcdTdBRTVcdTgwRjRcdTg0NjNcdTkyODVcdTUxNUNcdTY1OTdcdTY3NUNcdTY3OTNcdTc1RDhcdTdBQzdcdTgzNzNcdUY5NUFcdThDNDZcdTkwMTdcdTk4MkRcdTVDNkZcdTgxQzBcdTgyOUFcdTkwNDFcdTkwNkZcdTkyMERcdTVGOTdcdTVEOURcdTZBNTlcdTcxQzhcdTc2N0JcdTdCNDlcdTg1RTRcdThCMDRcdTkxMjdcdTlBMzBcdTU1ODdcdTYxRjZcdUY5NUJcdTc2NjlcdTdGODVcIl0sXG5bXCJkNWExXCIsXCJcdTg2M0ZcdTg3QkFcdTg4RjhcdTkwOEZcdUY5NUNcdTZEMUJcdTcwRDlcdTczREVcdTdENjFcdTg0M0RcdUY5NURcdTkxNkFcdTk5RjFcdUY5NUVcdTRFODJcdTUzNzVcdTZCMDRcdTZCMTJcdTcwM0VcdTcyMUJcdTg2MkRcdTlFMUVcdTUyNENcdThGQTNcdTVENTBcdTY0RTVcdTY1MkNcdTZCMTZcdTZGRUJcdTdDNDNcdTdFOUNcdTg1Q0RcdTg5NjRcdTg5QkRcdTYyQzlcdTgxRDhcdTg4MUZcdTVFQ0FcdTY3MTdcdTZENkFcdTcyRkNcdTc0MDVcdTc0NkZcdTg3ODJcdTkwREVcdTRGODZcdTVEMERcdTVGQTBcdTg0MEFcdTUxQjdcdTYzQTBcdTc1NjVcdTRFQUVcdTUwMDZcdTUxNjlcdTUxQzlcdTY4ODFcdTZBMTFcdTdDQUVcdTdDQjFcdTdDRTdcdTgyNkZcdThBRDJcdThGMUJcdTkxQ0ZcdTRGQjZcdTUxMzdcdTUyRjVcdTU0NDJcdTVFRUNcdTYxNkVcdTYyM0VcdTY1QzVcdTZBREFcdTZGRkVcdTc5MkFcdTg1RENcdTg4MjNcdTk1QURcdTlBNjJcdTlBNkFcdTlFOTdcdTlFQ0VcdTUyOUJcdTY2QzZcdTZCNzdcdTcwMURcdTc5MkJcdThGNjJcdTk3NDJcdTYxOTBcdTYyMDBcdTY1MjNcdTZGMjNcIl0sXG5bXCJkNmExXCIsXCJcdTcxNDlcdTc0ODlcdTdERjRcdTgwNkZcdTg0RUVcdThGMjZcdTkwMjNcdTkzNEFcdTUxQkRcdTUyMTdcdTUyQTNcdTZEMENcdTcwQzhcdTg4QzJcdTVFQzlcdTY1ODJcdTZCQUVcdTZGQzJcdTdDM0VcdTczNzVcdTRFRTRcdTRGMzZcdTU2RjlcdUY5NUZcdTVDQkFcdTVEQkFcdTYwMUNcdTczQjJcdTdCMkRcdTdGOUFcdTdGQ0VcdTgwNDZcdTkwMUVcdTkyMzRcdTk2RjZcdTk3NDhcdTk4MThcdTlGNjFcdTRGOEJcdTZGQTdcdTc5QUVcdTkxQjRcdTk2QjdcdTUyREVcdUY5NjBcdTY0ODhcdTY0QzRcdTZBRDNcdTZGNUVcdTcwMThcdTcyMTBcdTc2RTdcdTgwMDFcdTg2MDZcdTg2NUNcdThERUZcdThGMDVcdTk3MzJcdTlCNkZcdTlERkFcdTlFNzVcdTc4OENcdTc5N0ZcdTdEQTBcdTgzQzlcdTkzMDRcdTlFN0ZcdTlFOTNcdThBRDZcdTU4REZcdTVGMDRcdTY3MjdcdTcwMjdcdTc0Q0ZcdTdDNjBcdTgwN0VcdTUxMjFcdTcwMjhcdTcyNjJcdTc4Q0FcdThDQzJcdThDREFcdThDRjRcdTk2RjdcdTRFODZcdTUwREFcdTVCRUVcdTVFRDZcdTY1OTlcdTcxQ0VcdTc2NDJcdTc3QURcdTgwNEFcdTg0RkNcIl0sXG5bXCJkN2ExXCIsXCJcdTkwN0NcdTlCMjdcdTlGOERcdTU4RDhcdTVBNDFcdTVDNjJcdTZBMTNcdTZEREFcdTZGMEZcdTc2M0JcdTdEMkZcdTdFMzdcdTg1MUVcdTg5MzhcdTkzRTRcdTk2NEJcdTUyODlcdTY1RDJcdTY3RjNcdTY5QjRcdTZENDFcdTZFOUNcdTcwMEZcdTc0MDlcdTc0NjBcdTc1NTlcdTc2MjRcdTc4NkJcdThCMkNcdTk4NUVcdTUxNkRcdTYyMkVcdTk2NzhcdTRGOTZcdTUwMkJcdTVEMTlcdTZERUFcdTdEQjhcdThGMkFcdTVGOEJcdTYxNDRcdTY4MTdcdUY5NjFcdTk2ODZcdTUyRDJcdTgwOEJcdTUxRENcdTUxQ0NcdTY5NUVcdTdBMUNcdTdEQkVcdTgzRjFcdTk2NzVcdTRGREFcdTUyMjlcdTUzOThcdTU0MEZcdTU1MEVcdTVDNjVcdTYwQTdcdTY3NEVcdTY4QThcdTZENkNcdTcyODFcdTcyRjhcdTc0MDZcdTc0ODNcdUY5NjJcdTc1RTJcdTdDNkNcdTdGNzlcdTdGQjhcdTgzODlcdTg4Q0ZcdTg4RTFcdTkxQ0NcdTkxRDBcdTk2RTJcdTlCQzlcdTU0MURcdTZGN0VcdTcxRDBcdTc0OThcdTg1RkFcdThFQUFcdTk2QTNcdTlDNTdcdTlFOUZcdTY3OTdcdTZEQ0JcdTc0MzNcdTgxRThcdTk3MTZcdTc4MkNcIl0sXG5bXCJkOGExXCIsXCJcdTdBQ0JcdTdCMjBcdTdDOTJcdTY0NjlcdTc0NkFcdTc1RjJcdTc4QkNcdTc4RThcdTk5QUNcdTlCNTRcdTlFQkJcdTVCREVcdTVFNTVcdTZGMjBcdTgxOUNcdTgzQUJcdTkwODhcdTRFMDdcdTUzNERcdTVBMjlcdTVERDJcdTVGNEVcdTYxNjJcdTYzM0RcdTY2NjlcdTY2RkNcdTZFRkZcdTZGMkJcdTcwNjNcdTc3OUVcdTg0MkNcdTg1MTNcdTg4M0JcdThGMTNcdTk5NDVcdTlDM0JcdTU1MUNcdTYyQjlcdTY3MkJcdTZDQUJcdTgzMDlcdTg5NkFcdTk3N0FcdTRFQTFcdTU5ODRcdTVGRDhcdTVGRDlcdTY3MUJcdTdEQjJcdTdGNTRcdTgyOTJcdTgzMkJcdTgzQkRcdThGMUVcdTkwOTlcdTU3Q0JcdTU5QjlcdTVBOTJcdTVCRDBcdTY2MjdcdTY3OUFcdTY4ODVcdTZCQ0ZcdTcxNjRcdTdGNzVcdThDQjdcdThDRTNcdTkwODFcdTlCNDVcdTgxMDhcdThDOEFcdTk2NENcdTlBNDBcdTlFQTVcdTVCNUZcdTZDMTNcdTczMUJcdTc2RjJcdTc2REZcdTg0MENcdTUxQUFcdTg5OTNcdTUxNERcdTUxOTVcdTUyQzlcdTY4QzlcdTZDOTRcdTc3MDRcdTc3MjBcdTdEQkZcdTdERUNcdTk3NjJcdTlFQjVcdTZFQzVcIl0sXG5bXCJkOWExXCIsXCJcdTg1MTFcdTUxQTVcdTU0MERcdTU0N0RcdTY2MEVcdTY2OURcdTY5MjdcdTZFOUZcdTc2QkZcdTc3OTFcdTgzMTdcdTg0QzJcdTg3OUZcdTkxNjlcdTkyOThcdTlDRjRcdTg4ODJcdTRGQUVcdTUxOTJcdTUyREZcdTU5QzZcdTVFM0RcdTYxNTVcdTY0NzhcdTY0NzlcdTY2QUVcdTY3RDBcdTZBMjFcdTZCQ0RcdTZCREJcdTcyNUZcdTcyNjFcdTc0NDFcdTc3MzhcdTc3REJcdTgwMTdcdTgyQkNcdTgzMDVcdThCMDBcdThCMjhcdThDOENcdTY3MjhcdTZDOTBcdTcyNjdcdTc2RUVcdTc3NjZcdTdBNDZcdTlEQTlcdTZCN0ZcdTZDOTJcdTU5MjJcdTY3MjZcdTg0OTlcdTUzNkZcdTU4OTNcdTU5OTlcdTVFREZcdTYzQ0ZcdTY2MzRcdTY3NzNcdTZFM0FcdTczMkJcdTdBRDdcdTgyRDdcdTkzMjhcdTUyRDlcdTVERUJcdTYxQUVcdTYxQ0JcdTYyMEFcdTYyQzdcdTY0QUJcdTY1RTBcdTY5NTlcdTZCNjZcdTZCQ0JcdTcxMjFcdTczRjdcdTc1NURcdTdFNDZcdTgyMUVcdTgzMDJcdTg1NkFcdThBQTNcdThDQkZcdTk3MjdcdTlENjFcdTU4QThcdTlFRDhcdTUwMTFcdTUyMEVcdTU0M0JcdTU1NEZcdTY1ODdcIl0sXG5bXCJkYWExXCIsXCJcdTZDNzZcdTdEMEFcdTdEMEJcdTgwNUVcdTg2OEFcdTk1ODBcdTk2RUZcdTUyRkZcdTZDOTVcdTcyNjlcdTU0NzNcdTVBOUFcdTVDM0VcdTVENEJcdTVGNENcdTVGQUVcdTY3MkFcdTY4QjZcdTY5NjNcdTZFM0NcdTZFNDRcdTc3MDlcdTdDNzNcdTdGOEVcdTg1ODdcdThCMEVcdThGRjdcdTk3NjFcdTlFRjRcdTVDQjdcdTYwQjZcdTYxMERcdTYxQUJcdTY1NEZcdTY1RkJcdTY1RkNcdTZDMTFcdTZDRUZcdTczOUZcdTczQzlcdTdERTFcdTk1OTRcdTVCQzZcdTg3MUNcdThCMTBcdTUyNURcdTUzNUFcdTYyQ0RcdTY0MEZcdTY0QjJcdTY3MzRcdTZBMzhcdTZDQ0FcdTczQzBcdTc0OUVcdTdCOTRcdTdDOTVcdTdFMUJcdTgxOEFcdTgyMzZcdTg1ODRcdThGRUJcdTk2RjlcdTk5QzFcdTRGMzRcdTUzNEFcdTUzQ0RcdTUzREJcdTYyQ0NcdTY0MkNcdTY1MDBcdTY1OTFcdTY5QzNcdTZDRUVcdTZGNThcdTczRURcdTc1NTRcdTc2MjJcdTc2RTRcdTc2RkNcdTc4RDBcdTc4RkJcdTc5MkNcdTdENDZcdTgyMkNcdTg3RTBcdThGRDRcdTk4MTJcdTk4RUZcdTUyQzNcdTYyRDRcdTY0QTVcdTZFMjRcdTZGNTFcIl0sXG5bXCJkYmExXCIsXCJcdTc2N0NcdThEQ0JcdTkxQjFcdTkyNjJcdTlBRUVcdTlCNDNcdTUwMjNcdTUwOERcdTU3NEFcdTU5QThcdTVDMjhcdTVFNDdcdTVGNzdcdTYyM0ZcdTY1M0VcdTY1QjlcdTY1QzFcdTY2MDlcdTY3OEJcdTY5OUNcdTZFQzJcdTc4QzVcdTdEMjFcdTgwQUFcdTgxODBcdTgyMkJcdTgyQjNcdTg0QTFcdTg2OENcdThBMkFcdThCMTdcdTkwQTZcdTk2MzJcdTlGOTBcdTUwMERcdTRGRjNcdUY5NjNcdTU3RjlcdTVGOThcdTYyRENcdTYzOTJcdTY3NkZcdTZFNDNcdTcxMTlcdTc2QzNcdTgwQ0NcdTgwREFcdTg4RjRcdTg4RjVcdTg5MTlcdThDRTBcdThGMjlcdTkxNERcdTk2NkFcdTRGMkZcdTRGNzBcdTVFMUJcdTY3Q0ZcdTY4MjJcdTc2N0RcdTc2N0VcdTlCNDRcdTVFNjFcdTZBMEFcdTcxNjlcdTcxRDRcdTc1NkFcdUY5NjRcdTdFNDFcdTg1NDNcdTg1RTlcdTk4RENcdTRGMTBcdTdCNEZcdTdGNzBcdTk1QTVcdTUxRTFcdTVFMDZcdTY4QjVcdTZDM0VcdTZDNEVcdTZDREJcdTcyQUZcdTdCQzRcdTgzMDNcdTZDRDVcdTc0M0FcdTUwRkJcdTUyODhcdTU4QzFcdTY0RDhcdTZBOTdcdTc0QTdcdTc2NTZcIl0sXG5bXCJkY2ExXCIsXCJcdTc4QTdcdTg2MTdcdTk1RTJcdTk3MzlcdUY5NjVcdTUzNUVcdTVGMDFcdThCOEFcdThGQThcdThGQUZcdTkwOEFcdTUyMjVcdTc3QTVcdTlDNDlcdTlGMDhcdTRFMTlcdTUwMDJcdTUxNzVcdTVDNUJcdTVFNzdcdTY2MUVcdTY2M0FcdTY3QzRcdTY4QzVcdTcwQjNcdTc1MDFcdTc1QzVcdTc5QzlcdTdBRERcdThGMjdcdTk5MjBcdTlBMDhcdTRGRERcdTU4MjFcdTU4MzFcdTVCRjZcdTY2NkVcdTZCNjVcdTZEMTFcdTZFN0FcdTZGN0RcdTczRTRcdTc1MkJcdTgzRTlcdTg4RENcdTg5MTNcdThCNUNcdThGMTRcdTRGMEZcdTUwRDVcdTUzMTBcdTUzNUNcdTVCOTNcdTVGQTlcdTY3MERcdTc5OEZcdTgxNzlcdTgzMkZcdTg1MTRcdTg5MDdcdTg5ODZcdThGMzlcdThGM0JcdTk5QTVcdTlDMTJcdTY3MkNcdTRFNzZcdTRGRjhcdTU5NDlcdTVDMDFcdTVDRUZcdTVDRjBcdTYzNjdcdTY4RDJcdTcwRkRcdTcxQTJcdTc0MkJcdTdFMkJcdTg0RUNcdTg3MDJcdTkwMjJcdTkyRDJcdTlDRjNcdTRFMERcdTRFRDhcdTRGRUZcdTUwODVcdTUyNTZcdTUyNkZcdTU0MjZcdTU0OTBcdTU3RTBcdTU5MkJcdTVBNjZcIl0sXG5bXCJkZGExXCIsXCJcdTVCNUFcdTVCNzVcdTVCQ0NcdTVFOUNcdUY5NjZcdTYyNzZcdTY1NzdcdTY1QTdcdTZENkVcdTZFQTVcdTcyMzZcdTdCMjZcdTdDM0ZcdTdGMzZcdTgxNTBcdTgxNTFcdTgxOUFcdTgyNDBcdTgyOTlcdTgzQTlcdThBMDNcdThDQTBcdThDRTZcdThDRkJcdThENzRcdThEQkFcdTkwRThcdTkxRENcdTk2MUNcdTk2NDRcdTk5RDlcdTlDRTdcdTUzMTdcdTUyMDZcdTU0MjlcdTU2NzRcdTU4QjNcdTU5NTRcdTU5NkVcdTVGRkZcdTYxQTRcdTYyNkVcdTY2MTBcdTZDN0VcdTcxMUFcdTc2QzZcdTdDODlcdTdDREVcdTdEMUJcdTgyQUNcdThDQzFcdTk2RjBcdUY5NjdcdTRGNUJcdTVGMTdcdTVGN0ZcdTYyQzJcdTVEMjlcdTY3MEJcdTY4REFcdTc4N0NcdTdFNDNcdTlENkNcdTRFMTVcdTUwOTlcdTUzMTVcdTUzMkFcdTUzNTFcdTU5ODNcdTVBNjJcdTVFODdcdTYwQjJcdTYxOEFcdTYyNDlcdTYyNzlcdTY1OTBcdTY3ODdcdTY5QTdcdTZCRDRcdTZCRDZcdTZCRDdcdTZCRDhcdTZDQjhcdUY5NjhcdTc0MzVcdTc1RkFcdTc4MTJcdTc4OTFcdTc5RDVcdTc5RDhcdTdDODNcdTdEQ0JcdTdGRTFcdTgwQTVcIl0sXG5bXCJkZWExXCIsXCJcdTgxM0VcdTgxQzJcdTgzRjJcdTg3MUFcdTg4RThcdThBQjlcdThCNkNcdThDQkJcdTkxMTlcdTk3NUVcdTk4REJcdTlGM0JcdTU2QUNcdTVCMkFcdTVGNkNcdTY1OENcdTZBQjNcdTZCQUZcdTZENUNcdTZGRjFcdTcwMTVcdTcyNURcdTczQURcdThDQTdcdThDRDNcdTk4M0JcdTYxOTFcdTZDMzdcdTgwNThcdTlBMDFcdTRFNERcdTRFOEJcdTRFOUJcdTRFRDVcdTRGM0FcdTRGM0NcdTRGN0ZcdTRGREZcdTUwRkZcdTUzRjJcdTUzRjhcdTU1MDZcdTU1RTNcdTU2REJcdTU4RUJcdTU5NjJcdTVBMTFcdTVCRUJcdTVCRkFcdTVDMDRcdTVERjNcdTVFMkJcdTVGOTlcdTYwMURcdTYzNjhcdTY1OUNcdTY1QUZcdTY3RjZcdTY3RkJcdTY4QURcdTZCN0JcdTZDOTlcdTZDRDdcdTZFMjNcdTcwMDlcdTczNDVcdTc4MDJcdTc5M0VcdTc5NDBcdTc5NjBcdTc5QzFcdTdCRTlcdTdEMTdcdTdENzJcdTgwODZcdTgyMERcdTgzOEVcdTg0RDFcdTg2QzdcdTg4REZcdThBNTBcdThBNUVcdThCMURcdThDRENcdThENjZcdThGQURcdTkwQUFcdTk4RkNcdTk5REZcdTlFOURcdTUyNEFcdUY5NjlcdTY3MTRcdUY5NkFcIl0sXG5bXCJkZmExXCIsXCJcdTUwOThcdTUyMkFcdTVDNzFcdTY1NjNcdTZDNTVcdTczQ0FcdTc1MjNcdTc1OURcdTdCOTdcdTg0OUNcdTkxNzhcdTk3MzBcdTRFNzdcdTY0OTJcdTZCQkFcdTcxNUVcdTg1QTlcdTRFMDlcdUY5NkJcdTY3NDlcdTY4RUVcdTZFMTdcdTgyOUZcdTg1MThcdTg4NkJcdTYzRjdcdTZGODFcdTkyMTJcdTk4QUZcdTRFMEFcdTUwQjdcdTUwQ0ZcdTUxMUZcdTU1NDZcdTU1QUFcdTU2MTdcdTVCNDBcdTVDMTlcdTVDRTBcdTVFMzhcdTVFOEFcdTVFQTBcdTVFQzJcdTYwRjNcdTY4NTFcdTZBNjFcdTZFNThcdTcyM0RcdTcyNDBcdTcyQzBcdTc2RjhcdTc5NjVcdTdCQjFcdTdGRDRcdTg4RjNcdTg5RjRcdThBNzNcdThDNjFcdThDREVcdTk3MUNcdTU4NUVcdTc0QkRcdThDRkRcdTU1QzdcdUY5NkNcdTdBNjFcdTdEMjJcdTgyNzJcdTcyNzJcdTc1MUZcdTc1MjVcdUY5NkRcdTdCMTlcdTU4ODVcdTU4RkJcdTVEQkNcdTVFOEZcdTVFQjZcdTVGOTBcdTYwNTVcdTYyOTJcdTYzN0ZcdTY1NERcdTY2OTFcdTY2RDlcdTY2RjhcdTY4MTZcdTY4RjJcdTcyODBcdTc0NUVcdTdCNkVcdTdENkVcdTdERDZcdTdGNzJcIl0sXG5bXCJlMGExXCIsXCJcdTgwRTVcdTgyMTJcdTg1QUZcdTg5N0ZcdThBOTNcdTkwMURcdTkyRTRcdTlFQ0RcdTlGMjBcdTU5MTVcdTU5NkRcdTVFMkRcdTYwRENcdTY2MTRcdTY2NzNcdTY3OTBcdTZDNTBcdTZEQzVcdTZGNUZcdTc3RjNcdTc4QTlcdTg0QzZcdTkxQ0JcdTkzMkJcdTRFRDlcdTUwQ0FcdTUxNDhcdTU1ODRcdTVCMEJcdTVCQTNcdTYyNDdcdTY1N0VcdTY1Q0JcdTZFMzJcdTcxN0RcdTc0MDFcdTc0NDRcdTc0ODdcdTc0QkZcdTc2NkNcdTc5QUFcdTdEREFcdTdFNTVcdTdGQThcdTgxN0FcdTgxQjNcdTgyMzlcdTg2MUFcdTg3RUNcdThBNzVcdThERTNcdTkwNzhcdTkyOTFcdTk0MjVcdTk5NERcdTlCQUVcdTUzNjhcdTVDNTFcdTY5NTRcdTZDQzRcdTZEMjlcdTZFMkJcdTgyMENcdTg1OUJcdTg5M0JcdThBMkRcdThBQUFcdTk2RUFcdTlGNjdcdTUyNjFcdTY2QjlcdTZCQjJcdTdFOTZcdTg3RkVcdThEMERcdTk1ODNcdTk2NURcdTY1MURcdTZEODlcdTcxRUVcdUY5NkVcdTU3Q0VcdTU5RDNcdTVCQUNcdTYwMjdcdTYwRkFcdTYyMTBcdTY2MUZcdTY2NUZcdTczMjlcdTczRjlcdTc2REJcdTc3MDFcdTdCNkNcIl0sXG5bXCJlMWExXCIsXCJcdTgwNTZcdTgwNzJcdTgxNjVcdThBQTBcdTkxOTJcdTRFMTZcdTUyRTJcdTZCNzJcdTZEMTdcdTdBMDVcdTdCMzlcdTdEMzBcdUY5NkZcdThDQjBcdTUzRUNcdTU2MkZcdTU4NTFcdTVCQjVcdTVDMEZcdTVDMTFcdTVERTJcdTYyNDBcdTYzODNcdTY0MTRcdTY2MkRcdTY4QjNcdTZDQkNcdTZEODhcdTZFQUZcdTcwMUZcdTcwQTRcdTcxRDJcdTc1MjZcdTc1OEZcdTc1OEVcdTc2MTlcdTdCMTFcdTdCRTBcdTdDMkJcdTdEMjBcdTdEMzlcdTg1MkNcdTg1NkRcdTg2MDdcdThBMzRcdTkwMERcdTkwNjFcdTkwQjVcdTkyQjdcdTk3RjZcdTlBMzdcdTRGRDdcdTVDNkNcdTY3NUZcdTZEOTFcdTdDOUZcdTdFOENcdThCMTZcdThEMTZcdTkwMUZcdTVCNkJcdTVERkRcdTY0MERcdTg0QzBcdTkwNUNcdTk4RTFcdTczODdcdTVCOEJcdTYwOUFcdTY3N0VcdTZEREVcdThBMUZcdThBQTZcdTkwMDFcdTk4MENcdTUyMzdcdUY5NzBcdTcwNTFcdTc4OEVcdTkzOTZcdTg4NzBcdTkxRDdcdTRGRUVcdTUzRDdcdTU1RkRcdTU2REFcdTU3ODJcdTU4RkRcdTVBQzJcdTVCODhcdTVDQUJcdTVDQzBcdTVFMjVcdTYxMDFcIl0sXG5bXCJlMmExXCIsXCJcdTYyMERcdTYyNEJcdTYzODhcdTY0MUNcdTY1MzZcdTY1NzhcdTZBMzlcdTZCOEFcdTZDMzRcdTZEMTlcdTZGMzFcdTcxRTdcdTcyRTlcdTczNzhcdTc0MDdcdTc0QjJcdTc2MjZcdTc3NjFcdTc5QzBcdTdBNTdcdTdBRUFcdTdDQjlcdTdEOEZcdTdEQUNcdTdFNjFcdTdGOUVcdTgxMjlcdTgzMzFcdTg0OTBcdTg0REFcdTg1RUFcdTg4OTZcdThBQjBcdThCOTBcdThGMzhcdTkwNDJcdTkwODNcdTkxNkNcdTkyOTZcdTkyQjlcdTk2OEJcdTk2QTdcdTk2QThcdTk2RDZcdTk3MDBcdTk4MDhcdTk5OTZcdTlBRDNcdTlCMUFcdTUzRDRcdTU4N0VcdTU5MTlcdTVCNzBcdTVCQkZcdTZERDFcdTZGNUFcdTcxOUZcdTc0MjFcdTc0QjlcdTgwODVcdTgzRkRcdTVERTFcdTVGODdcdTVGQUFcdTYwNDJcdTY1RUNcdTY4MTJcdTY5NkZcdTZBNTNcdTZCODlcdTZEMzVcdTZERjNcdTczRTNcdTc2RkVcdTc3QUNcdTdCNERcdTdEMTRcdTgxMjNcdTgyMUNcdTgzNDBcdTg0RjRcdTg1NjNcdThBNjJcdThBQzRcdTkxODdcdTkzMUVcdTk4MDZcdTk5QjRcdTYyMENcdTg4NTNcdThGRjBcdTkyNjVcdTVEMDdcdTVEMjdcIl0sXG5bXCJlM2ExXCIsXCJcdTVENjlcdTc0NUZcdTgxOURcdTg3NjhcdTZGRDVcdTYyRkVcdTdGRDJcdTg5MzZcdTg5NzJcdTRFMUVcdTRFNThcdTUwRTdcdTUyRERcdTUzNDdcdTYyN0ZcdTY2MDdcdTdFNjlcdTg4MDVcdTk2NUVcdTRGOERcdTUzMTlcdTU2MzZcdTU5Q0JcdTVBQTRcdTVDMzhcdTVDNEVcdTVDNERcdTVFMDJcdTVGMTFcdTYwNDNcdTY1QkRcdTY2MkZcdTY2NDJcdTY3QkVcdTY3RjRcdTczMUNcdTc3RTJcdTc5M0FcdTdGQzVcdTg0OTRcdTg0Q0RcdTg5OTZcdThBNjZcdThBNjlcdThBRTFcdThDNTVcdThDN0FcdTU3RjRcdTVCRDRcdTVGMEZcdTYwNkZcdTYyRURcdTY5MERcdTZCOTZcdTZFNUNcdTcxODRcdTdCRDJcdTg3NTVcdThCNThcdThFRkVcdTk4REZcdTk4RkVcdTRGMzhcdTRGODFcdTRGRTFcdTU0N0JcdTVBMjBcdTVCQjhcdTYxM0NcdTY1QjBcdTY2NjhcdTcxRkNcdTc1MzNcdTc5NUVcdTdEMzNcdTgxNEVcdTgxRTNcdTgzOThcdTg1QUFcdTg1Q0VcdTg3MDNcdThBMEFcdThFQUJcdThGOUJcdUY5NzFcdThGQzVcdTU5MzFcdTVCQTRcdTVCRTZcdTYwODlcdTVCRTlcdTVDMEJcdTVGQzNcdTZDODFcIl0sXG5bXCJlNGExXCIsXCJcdUY5NzJcdTZERjFcdTcwMEJcdTc1MUFcdTgyQUZcdThBRjZcdTRFQzBcdTUzNDFcdUY5NzNcdTk2RDlcdTZDMEZcdTRFOUVcdTRGQzRcdTUxNTJcdTU1NUVcdTVBMjVcdTVDRThcdTYyMTFcdTcyNTlcdTgyQkRcdTgzQUFcdTg2RkVcdTg4NTlcdThBMURcdTk2M0ZcdTk2QzVcdTk5MTNcdTlEMDlcdTlENURcdTU4MEFcdTVDQjNcdTVEQkRcdTVFNDRcdTYwRTFcdTYxMTVcdTYzRTFcdTZBMDJcdTZFMjVcdTkxMDJcdTkzNTRcdTk4NEVcdTlDMTBcdTlGNzdcdTVCODlcdTVDQjhcdTYzMDlcdTY2NEZcdTY4NDhcdTc3M0NcdTk2QzFcdTk3OERcdTk4NTRcdTlCOUZcdTY1QTFcdThCMDFcdThFQ0JcdTk1QkNcdTU1MzVcdTVDQTlcdTVERDZcdTVFQjVcdTY2OTdcdTc2NENcdTgzRjRcdTk1QzdcdTU4RDNcdTYyQkNcdTcyQ0VcdTlEMjhcdTRFRjBcdTU5MkVcdTYwMEZcdTY2M0JcdTZCODNcdTc5RTdcdTlEMjZcdTUzOTNcdTU0QzBcdTU3QzNcdTVEMTZcdTYxMUJcdTY2RDZcdTZEQUZcdTc4OERcdTgyN0VcdTk2OThcdTk3NDRcdTUzODRcdTYyN0NcdTYzOTZcdTZEQjJcdTdFMEFcdTgxNEJcdTk4NERcIl0sXG5bXCJlNWExXCIsXCJcdTZBRkJcdTdGNENcdTlEQUZcdTlFMUFcdTRFNUZcdTUwM0JcdTUxQjZcdTU5MUNcdTYwRjlcdTYzRjZcdTY5MzBcdTcyM0FcdTgwMzZcdUY5NzRcdTkxQ0VcdTVGMzFcdUY5NzVcdUY5NzZcdTdEMDRcdTgyRTVcdTg0NkZcdTg0QkJcdTg1RTVcdThFOERcdUY5NzdcdTRGNkZcdUY5NzhcdUY5NzlcdTU4RTRcdTVCNDNcdTYwNTlcdTYzREFcdTY1MThcdTY1NkRcdTY2OThcdUY5N0FcdTY5NEFcdTZBMjNcdTZEMEJcdTcwMDFcdTcxNkNcdTc1RDJcdTc2MERcdTc5QjNcdTdBNzBcdUY5N0JcdTdGOEFcdUY5N0NcdTg5NDRcdUY5N0RcdThCOTNcdTkxQzBcdTk2N0RcdUY5N0VcdTk5MEFcdTU3MDRcdTVGQTFcdTY1QkNcdTZGMDFcdTc2MDBcdTc5QTZcdThBOUVcdTk5QURcdTlCNUFcdTlGNkNcdTUxMDRcdTYxQjZcdTYyOTFcdTZBOERcdTgxQzZcdTUwNDNcdTU4MzBcdTVGNjZcdTcxMDlcdThBMDBcdThBRkFcdTVCN0NcdTg2MTZcdTRGRkFcdTUxM0NcdTU2QjRcdTU5NDRcdTYzQTlcdTZERjlcdTVEQUFcdTY5NkRcdTUxODZcdTRFODhcdTRGNTlcdUY5N0ZcdUY5ODBcdUY5ODFcdTU5ODJcdUY5ODJcIl0sXG5bXCJlNmExXCIsXCJcdUY5ODNcdTZCNUZcdTZDNURcdUY5ODRcdTc0QjVcdTc5MTZcdUY5ODVcdTgyMDdcdTgyNDVcdTgzMzlcdThGM0ZcdThGNURcdUY5ODZcdTk5MThcdUY5ODdcdUY5ODhcdUY5ODlcdTRFQTZcdUY5OEFcdTU3REZcdTVGNzlcdTY2MTNcdUY5OEJcdUY5OENcdTc1QUJcdTdFNzlcdThCNkZcdUY5OERcdTkwMDZcdTlBNUJcdTU2QTVcdTU4MjdcdTU5RjhcdTVBMUZcdTVCQjRcdUY5OEVcdTVFRjZcdUY5OEZcdUY5OTBcdTYzNTBcdTYzM0JcdUY5OTFcdTY5M0RcdTZDODdcdTZDQkZcdTZEOEVcdTZEOTNcdTZERjVcdTZGMTRcdUY5OTJcdTcwREZcdTcxMzZcdTcxNTlcdUY5OTNcdTcxQzNcdTcxRDVcdUY5OTRcdTc4NEZcdTc4NkZcdUY5OTVcdTdCNzVcdTdERTNcdUY5OTZcdTdFMkZcdUY5OTdcdTg4NERcdThFREZcdUY5OThcdUY5OTlcdUY5OUFcdTkyNUJcdUY5OUJcdTlDRjZcdUY5OUNcdUY5OURcdUY5OUVcdTYwODVcdTZEODVcdUY5OUZcdTcxQjFcdUY5QTBcdUY5QTFcdTk1QjFcdTUzQURcdUY5QTJcdUY5QTNcdUY5QTRcdTY3RDNcdUY5QTVcdTcwOEVcdTcxMzBcdTc0MzBcdTgyNzZcdTgyRDJcIl0sXG5bXCJlN2ExXCIsXCJcdUY5QTZcdTk1QkJcdTlBRTVcdTlFN0RcdTY2QzRcdUY5QTdcdTcxQzFcdTg0NDlcdUY5QThcdUY5QTlcdTU4NEJcdUY5QUFcdUY5QUJcdTVEQjhcdTVGNzFcdUY5QUNcdTY2MjBcdTY2OEVcdTY5NzlcdTY5QUVcdTZDMzhcdTZDRjNcdTZFMzZcdTZGNDFcdTZGREFcdTcwMUJcdTcwMkZcdTcxNTBcdTcxREZcdTczNzBcdUY5QURcdTc0NUJcdUY5QUVcdTc0RDRcdTc2QzhcdTdBNEVcdTdFOTNcdUY5QUZcdUY5QjBcdTgyRjFcdThBNjBcdThGQ0VcdUY5QjFcdTkzNDhcdUY5QjJcdTk3MTlcdUY5QjNcdUY5QjRcdTRFNDJcdTUwMkFcdUY5QjVcdTUyMDhcdTUzRTFcdTY2RjNcdTZDNkRcdTZGQ0FcdTczMEFcdTc3N0ZcdTdBNjJcdTgyQUVcdTg1RERcdTg2MDJcdUY5QjZcdTg4RDRcdThBNjNcdThCN0RcdThDNkJcdUY5QjdcdTkyQjNcdUY5QjhcdTk3MTNcdTk4MTBcdTRFOTRcdTRGMERcdTRGQzlcdTUwQjJcdTUzNDhcdTU0M0VcdTU0MzNcdTU1REFcdTU4NjJcdTU4QkFcdTU5NjdcdTVBMUJcdTVCRTRcdTYwOUZcdUY5QjlcdTYxQ0FcdTY1NTZcdTY1RkZcdTY2NjRcdTY4QTdcdTZDNUFcdTZGQjNcIl0sXG5bXCJlOGExXCIsXCJcdTcwQ0ZcdTcxQUNcdTczNTJcdTdCN0RcdTg3MDhcdThBQTRcdTlDMzJcdTlGMDdcdTVDNEJcdTZDODNcdTczNDRcdTczODlcdTkyM0FcdTZFQUJcdTc0NjVcdTc2MUZcdTdBNjlcdTdFMTVcdTg2MEFcdTUxNDBcdTU4QzVcdTY0QzFcdTc0RUVcdTc1MTVcdTc2NzBcdTdGQzFcdTkwOTVcdTk2Q0RcdTk5NTRcdTZFMjZcdTc0RTZcdTdBQTlcdTdBQUFcdTgxRTVcdTg2RDlcdTg3NzhcdThBMUJcdTVBNDlcdTVCOENcdTVCOUJcdTY4QTFcdTY5MDBcdTZENjNcdTczQTlcdTc0MTNcdTc0MkNcdTc4OTdcdTdERTlcdTdGRUJcdTgxMThcdTgxNTVcdTgzOUVcdThDNENcdTk2MkVcdTk4MTFcdTY2RjBcdTVGODBcdTY1RkFcdTY3ODlcdTZDNkFcdTczOEJcdTUwMkRcdTVBMDNcdTZCNkFcdTc3RUVcdTU5MTZcdTVENkNcdTVEQ0RcdTczMjVcdTc1NEZcdUY5QkFcdUY5QkJcdTUwRTVcdTUxRjlcdTU4MkZcdTU5MkRcdTU5OTZcdTU5REFcdTVCRTVcdUY5QkNcdUY5QkRcdTVEQTJcdTYyRDdcdTY0MTZcdTY0OTNcdTY0RkVcdUY5QkVcdTY2RENcdUY5QkZcdTZBNDhcdUY5QzBcdTcxRkZcdTc0NjRcdUY5QzFcIl0sXG5bXCJlOWExXCIsXCJcdTdBODhcdTdBQUZcdTdFNDdcdTdFNUVcdTgwMDBcdTgxNzBcdUY5QzJcdTg3RUZcdTg5ODFcdThCMjBcdTkwNTlcdUY5QzNcdTkwODBcdTk5NTJcdTYxN0VcdTZCMzJcdTZENzRcdTdFMUZcdTg5MjVcdThGQjFcdTRGRDFcdTUwQURcdTUxOTdcdTUyQzdcdTU3QzdcdTU4ODlcdTVCQjlcdTVFQjhcdTYxNDJcdTY5OTVcdTZEOENcdTZFNjdcdTZFQjZcdTcxOTRcdTc0NjJcdTc1MjhcdTc1MkNcdTgwNzNcdTgzMzhcdTg0QzlcdThFMEFcdTkzOTRcdTkzREVcdUY5QzRcdTRFOEVcdTRGNTFcdTUwNzZcdTUxMkFcdTUzQzhcdTUzQ0JcdTUzRjNcdTVCODdcdTVCRDNcdTVDMjRcdTYxMUFcdTYxODJcdTY1RjRcdTcyNUJcdTczOTdcdTc0NDBcdTc2QzJcdTc5NTBcdTc5OTFcdTc5QjlcdTdEMDZcdTdGQkRcdTgyOEJcdTg1RDVcdTg2NUVcdThGQzJcdTkwNDdcdTkwRjVcdTkxRUFcdTk2ODVcdTk2RThcdTk2RTlcdTUyRDZcdTVGNjdcdTY1RURcdTY2MzFcdTY4MkZcdTcxNUNcdTdBMzZcdTkwQzFcdTk4MEFcdTRFOTFcdUY5QzVcdTZBNTJcdTZCOUVcdTZGOTBcdTcxODlcdTgwMThcdTgyQjhcdTg1NTNcIl0sXG5bXCJlYWExXCIsXCJcdTkwNEJcdTk2OTVcdTk2RjJcdTk3RkJcdTg1MUFcdTlCMzFcdTRFOTBcdTcxOEFcdTk2QzRcdTUxNDNcdTUzOUZcdTU0RTFcdTU3MTNcdTU3MTJcdTU3QTNcdTVBOUJcdTVBQzRcdTVCQzNcdTYwMjhcdTYxM0ZcdTYzRjRcdTZDODVcdTZEMzlcdTZFNzJcdTZFOTBcdTcyMzBcdTczM0ZcdTc0NTdcdTgyRDFcdTg4ODFcdThGNDVcdTkwNjBcdUY5QzZcdTk2NjJcdTk4NThcdTlEMUJcdTY3MDhcdThEOEFcdTkyNUVcdTRGNERcdTUwNDlcdTUwREVcdTUzNzFcdTU3MERcdTU5RDRcdTVBMDFcdTVDMDlcdTYxNzBcdTY2OTBcdTZFMkRcdTcyMzJcdTc0NEJcdTdERUZcdTgwQzNcdTg0MEVcdTg0NjZcdTg1M0ZcdTg3NUZcdTg4NUJcdTg5MThcdThCMDJcdTkwNTVcdTk3Q0JcdTlCNEZcdTRFNzNcdTRGOTFcdTUxMTJcdTUxNkFcdUY5QzdcdTU1MkZcdTU1QTlcdTVCN0FcdTVCQTVcdTVFN0NcdTVFN0RcdTVFQkVcdTYwQTBcdTYwREZcdTYxMDhcdTYxMDlcdTYzQzRcdTY1MzhcdTY3MDlcdUY5QzhcdTY3RDRcdTY3REFcdUY5QzlcdTY5NjFcdTY5NjJcdTZDQjlcdTZEMjdcdUY5Q0FcdTZFMzhcdUY5Q0JcIl0sXG5bXCJlYmExXCIsXCJcdTZGRTFcdTczMzZcdTczMzdcdUY5Q0NcdTc0NUNcdTc1MzFcdUY5Q0RcdTc2NTJcdUY5Q0VcdUY5Q0ZcdTdEQURcdTgxRkVcdTg0MzhcdTg4RDVcdThBOThcdThBREJcdThBRURcdThFMzBcdThFNDJcdTkwNEFcdTkwM0VcdTkwN0FcdTkxNDlcdTkxQzlcdTkzNkVcdUY5RDBcdUY5RDFcdTU4MDlcdUY5RDJcdTZCRDNcdTgwODlcdTgwQjJcdUY5RDNcdUY5RDRcdTUxNDFcdTU5NkJcdTVDMzlcdUY5RDVcdUY5RDZcdTZGNjRcdTczQTdcdTgwRTRcdThEMDdcdUY5RDdcdTkyMTdcdTk1OEZcdUY5RDhcdUY5RDlcdUY5REFcdUY5REJcdTgwN0ZcdTYyMEVcdTcwMUNcdTdENjhcdTg3OERcdUY5RENcdTU3QTBcdTYwNjlcdTYxNDdcdTZCQjdcdThBQkVcdTkyODBcdTk2QjFcdTRFNTlcdTU0MUZcdTZERUJcdTg1MkRcdTk2NzBcdTk3RjNcdTk4RUVcdTYzRDZcdTZDRTNcdTkwOTFcdTUxRERcdTYxQzlcdTgxQkFcdTlERjlcdTRGOURcdTUwMUFcdTUxMDBcdTVCOUNcdTYxMEZcdTYxRkZcdTY0RUNcdTY5MDVcdTZCQzVcdTc1OTFcdTc3RTNcdTdGQTlcdTgyNjRcdTg1OEZcdTg3RkJcdTg4NjNcdThBQkNcIl0sXG5bXCJlY2ExXCIsXCJcdThCNzBcdTkxQUJcdTRFOENcdTRFRTVcdTRGMEFcdUY5RERcdUY5REVcdTU5MzdcdTU5RThcdUY5REZcdTVERjJcdTVGMUJcdTVGNUJcdTYwMjFcdUY5RTBcdUY5RTFcdUY5RTJcdUY5RTNcdTcyM0VcdTczRTVcdUY5RTRcdTc1NzBcdTc1Q0RcdUY5RTVcdTc5RkJcdUY5RTZcdTgwMENcdTgwMzNcdTgwODRcdTgyRTFcdTgzNTFcdUY5RTdcdUY5RThcdThDQkRcdThDQjNcdTkwODdcdUY5RTlcdUY5RUFcdTk4RjRcdTk5MENcdUY5RUJcdUY5RUNcdTcwMzdcdTc2Q0FcdTdGQ0FcdTdGQ0NcdTdGRkNcdThCMUFcdTRFQkFcdTRFQzFcdTUyMDNcdTUzNzBcdUY5RURcdTU0QkRcdTU2RTBcdTU5RkJcdTVCQzVcdTVGMTVcdTVGQ0RcdTZFNkVcdUY5RUVcdUY5RUZcdTdENkFcdTgzMzVcdUY5RjBcdTg2OTNcdThBOERcdUY5RjFcdTk3NkRcdTk3NzdcdUY5RjJcdUY5RjNcdTRFMDBcdTRGNUFcdTRGN0VcdTU4RjlcdTY1RTVcdTZFQTJcdTkwMzhcdTkzQjBcdTk5QjlcdTRFRkJcdTU4RUNcdTU5OEFcdTU5RDlcdTYwNDFcdUY5RjRcdUY5RjVcdTdBMTRcdUY5RjZcdTgzNEZcdThDQzNcdTUxNjVcdTUzNDRcIl0sXG5bXCJlZGExXCIsXCJcdUY5RjdcdUY5RjhcdUY5RjlcdTRFQ0RcdTUyNjlcdTVCNTVcdTgyQkZcdTRFRDRcdTUyM0FcdTU0QThcdTU5QzlcdTU5RkZcdTVCNTBcdTVCNTdcdTVCNUNcdTYwNjNcdTYxNDhcdTZFQ0JcdTcwOTlcdTcxNkVcdTczODZcdTc0RjdcdTc1QjVcdTc4QzFcdTdEMkJcdTgwMDVcdTgxRUFcdTgzMjhcdTg1MTdcdTg1QzlcdThBRUVcdThDQzdcdTk2Q0NcdTRGNUNcdTUyRkFcdTU2QkNcdTY1QUJcdTY2MjhcdTcwN0NcdTcwQjhcdTcyMzVcdTdEQkRcdTgyOERcdTkxNENcdTk2QzBcdTlENzJcdTVCNzFcdTY4RTdcdTZCOThcdTZGN0FcdTc2REVcdTVDOTFcdTY2QUJcdTZGNUJcdTdCQjRcdTdDMkFcdTg4MzZcdTk2RENcdTRFMDhcdTRFRDdcdTUzMjBcdTU4MzRcdTU4QkJcdTU4RUZcdTU5NkNcdTVDMDdcdTVFMzNcdTVFODRcdTVGMzVcdTYzOENcdTY2QjJcdTY3NTZcdTZBMUZcdTZBQTNcdTZCMENcdTZGM0ZcdTcyNDZcdUY5RkFcdTczNTBcdTc0OEJcdTdBRTBcdTdDQTdcdTgxNzhcdTgxREZcdTgxRTdcdTgzOEFcdTg0NkNcdTg1MjNcdTg1OTRcdTg1Q0ZcdTg4RERcdThEMTNcdTkxQUNcdTk1NzdcIl0sXG5bXCJlZWExXCIsXCJcdTk2OUNcdTUxOERcdTU0QzlcdTU3MjhcdTVCQjBcdTYyNERcdTY3NTBcdTY4M0RcdTY4OTNcdTZFM0RcdTZFRDNcdTcwN0RcdTdFMjFcdTg4QzFcdThDQTFcdThGMDlcdTlGNEJcdTlGNEVcdTcyMkRcdTdCOEZcdThBQ0RcdTkzMUFcdTRGNDdcdTRGNEVcdTUxMzJcdTU0ODBcdTU5RDBcdTVFOTVcdTYyQjVcdTY3NzVcdTY5NkVcdTZBMTdcdTZDQUVcdTZFMUFcdTcyRDlcdTczMkFcdTc1QkRcdTdCQjhcdTdEMzVcdTgyRTdcdTgzRjlcdTg0NTdcdTg1RjdcdThBNUJcdThDQUZcdThFODdcdTkwMTlcdTkwQjhcdTk2Q0VcdTlGNUZcdTUyRTNcdTU0MEFcdTVBRTFcdTVCQzJcdTY0NThcdTY1NzVcdTZFRjRcdTcyQzRcdUY5RkJcdTc2ODRcdTdBNERcdTdCMUJcdTdDNERcdTdFM0VcdTdGREZcdTgzN0JcdThCMkJcdThDQ0FcdThENjRcdThERTFcdThFNUZcdThGRUFcdThGRjlcdTkwNjlcdTkzRDFcdTRGNDNcdTRGN0FcdTUwQjNcdTUxNjhcdTUxNzhcdTUyNERcdTUyNkFcdTU4NjFcdTU4N0NcdTU5NjBcdTVDMDhcdTVDNTVcdTVFREJcdTYwOUJcdTYyMzBcdTY4MTNcdTZCQkZcdTZDMDhcdTZGQjFcIl0sXG5bXCJlZmExXCIsXCJcdTcxNEVcdTc0MjBcdTc1MzBcdTc1MzhcdTc1NTFcdTc2NzJcdTdCNENcdTdCOEJcdTdCQURcdTdCQzZcdTdFOEZcdThBNkVcdThGM0VcdThGNDlcdTkyM0ZcdTkyOTNcdTkzMjJcdTk0MkJcdTk2RkJcdTk4NUFcdTk4NkJcdTk5MUVcdTUyMDdcdTYyMkFcdTYyOThcdTZENTlcdTc2NjRcdTdBQ0FcdTdCQzBcdTdENzZcdTUzNjBcdTVDQkVcdTVFOTdcdTZGMzhcdTcwQjlcdTdDOThcdTk3MTFcdTlCOEVcdTlFREVcdTYzQTVcdTY0N0FcdTg3NzZcdTRFMDFcdTRFOTVcdTRFQURcdTUwNUNcdTUwNzVcdTU0NDhcdTU5QzNcdTVCOUFcdTVFNDBcdTVFQURcdTVFRjdcdTVGODFcdTYwQzVcdTYzM0FcdTY1M0ZcdTY1NzRcdTY1Q0NcdTY2NzZcdTY2NzhcdTY3RkVcdTY5NjhcdTZBODlcdTZCNjNcdTZDNDBcdTZEQzBcdTZERThcdTZFMUZcdTZFNUVcdTcwMUVcdTcwQTFcdTczOEVcdTczRkRcdTc1M0FcdTc3NUJcdTc4ODdcdTc5OEVcdTdBMEJcdTdBN0RcdTdDQkVcdTdEOEVcdTgyNDdcdThBMDJcdThBRUFcdThDOUVcdTkxMkRcdTkxNEFcdTkxRDhcdTkyNjZcdTkyQ0NcdTkzMjBcdTk3MDZcdTk3NTZcIl0sXG5bXCJmMGExXCIsXCJcdTk3NUNcdTk4MDJcdTlGMEVcdTUyMzZcdTUyOTFcdTU1N0NcdTU4MjRcdTVFMURcdTVGMUZcdTYwOENcdTYzRDBcdTY4QUZcdTZGREZcdTc5NkRcdTdCMkNcdTgxQ0RcdTg1QkFcdTg4RkRcdThBRjhcdThFNDRcdTkxOERcdTk2NjRcdTk2OUJcdTk3M0RcdTk4NENcdTlGNEFcdTRGQ0VcdTUxNDZcdTUxQ0JcdTUyQTlcdTU2MzJcdTVGMTRcdTVGNkJcdTYzQUFcdTY0Q0RcdTY1RTlcdTY2NDFcdTY2RkFcdTY2RjlcdTY3MURcdTY4OURcdTY4RDdcdTY5RkRcdTZGMTVcdTZGNkVcdTcxNjdcdTcxRTVcdTcyMkFcdTc0QUFcdTc3M0FcdTc5NTZcdTc5NUFcdTc5REZcdTdBMjBcdTdBOTVcdTdDOTdcdTdDREZcdTdENDRcdTdFNzBcdTgwODdcdTg1RkJcdTg2QTRcdThBNTRcdThBQkZcdThEOTlcdThFODFcdTkwMjBcdTkwNkRcdTkxRTNcdTk2M0JcdTk2RDVcdTlDRTVcdTY1Q0ZcdTdDMDdcdThEQjNcdTkzQzNcdTVCNThcdTVDMEFcdTUzNTJcdTYyRDlcdTczMURcdTUwMjdcdTVCOTdcdTVGOUVcdTYwQjBcdTYxNkJcdTY4RDVcdTZERDlcdTc0MkVcdTdBMkVcdTdENDJcdTdEOUNcdTdFMzFcdTgxNkJcIl0sXG5bXCJmMWExXCIsXCJcdThFMkFcdThFMzVcdTkzN0VcdTk0MThcdTRGNTBcdTU3NTBcdTVERTZcdTVFQTdcdTYzMkJcdTdGNkFcdTRFM0JcdTRGNEZcdTRGOEZcdTUwNUFcdTU5RERcdTgwQzRcdTU0NkFcdTU0NjhcdTU1RkVcdTU5NEZcdTVCOTlcdTVEREVcdTVFREFcdTY2NURcdTY3MzFcdTY3RjFcdTY4MkFcdTZDRThcdTZEMzJcdTZFNEFcdTZGOERcdTcwQjdcdTczRTBcdTc1ODdcdTdDNENcdTdEMDJcdTdEMkNcdTdEQTJcdTgyMUZcdTg2REJcdThBM0JcdThBODVcdThENzBcdThFOEFcdThGMzNcdTkwMzFcdTkxNEVcdTkxNTJcdTk0NDRcdTk5RDBcdTdBRjlcdTdDQTVcdTRGQ0FcdTUxMDFcdTUxQzZcdTU3QzhcdTVCRUZcdTVDRkJcdTY2NTlcdTZBM0RcdTZENUFcdTZFOTZcdTZGRUNcdTcxMENcdTc1NkZcdTdBRTNcdTg4MjJcdTkwMjFcdTkwNzVcdTk2Q0JcdTk5RkZcdTgzMDFcdTRFMkRcdTRFRjJcdTg4NDZcdTkxQ0RcdTUzN0RcdTZBREJcdTY5NkJcdTZDNDFcdTg0N0FcdTU4OUVcdTYxOEVcdTY2RkVcdTYyRUZcdTcwRERcdTc1MTFcdTc1QzdcdTdFNTJcdTg0QjhcdThCNDlcdThEMDhcdTRFNEJcdTUzRUFcIl0sXG5bXCJmMmExXCIsXCJcdTU0QUJcdTU3MzBcdTU3NDBcdTVGRDdcdTYzMDFcdTYzMDdcdTY0NkZcdTY1MkZcdTY1RThcdTY2N0FcdTY3OURcdTY3QjNcdTZCNjJcdTZDNjBcdTZDOUFcdTZGMkNcdTc3RTVcdTc4MjVcdTc5NDlcdTc5NTdcdTdEMTlcdTgwQTJcdTgxMDJcdTgxRjNcdTgyOURcdTgyQjdcdTg3MThcdThBOENcdUY5RkNcdThEMDRcdThEQkVcdTkwNzJcdTc2RjRcdTdBMTlcdTdBMzdcdTdFNTRcdTgwNzdcdTU1MDdcdTU1RDRcdTU4NzVcdTYzMkZcdTY0MjJcdTY2NDlcdTY2NEJcdTY4NkRcdTY5OUJcdTZCODRcdTZEMjVcdTZFQjFcdTczQ0RcdTc0NjhcdTc0QTFcdTc1NUJcdTc1QjlcdTc2RTFcdTc3MUVcdTc3OEJcdTc5RTZcdTdFMDlcdTdFMURcdTgxRkJcdTg1MkZcdTg4OTdcdThBM0FcdThDRDFcdThFRUJcdThGQjBcdTkwMzJcdTkzQURcdTk2NjNcdTk2NzNcdTk3MDdcdTRGODRcdTUzRjFcdTU5RUFcdTVBQzlcdTVFMTlcdTY4NEVcdTc0QzZcdTc1QkVcdTc5RTlcdTdBOTJcdTgxQTNcdTg2RURcdThDRUFcdThEQ0NcdThGRURcdTY1OUZcdTY3MTVcdUY5RkRcdTU3RjdcdTZGNTdcdTdERERcdThGMkZcIl0sXG5bXCJmM2ExXCIsXCJcdTkzRjZcdTk2QzZcdTVGQjVcdTYxRjJcdTZGODRcdTRFMTRcdTRGOThcdTUwMUZcdTUzQzlcdTU1REZcdTVENkZcdTVERUVcdTZCMjFcdTZCNjRcdTc4Q0JcdTdCOUFcdUY5RkVcdThFNDlcdThFQ0FcdTkwNkVcdTYzNDlcdTY0M0VcdTc3NDBcdTdBODRcdTkzMkZcdTk0N0ZcdTlGNkFcdTY0QjBcdTZGQUZcdTcxRTZcdTc0QThcdTc0REFcdTdBQzRcdTdDMTJcdTdFODJcdTdDQjJcdTdFOThcdThCOUFcdThEMEFcdTk0N0RcdTk5MTBcdTk5NENcdTUyMzlcdTVCREZcdTY0RTZcdTY3MkRcdTdEMkVcdTUwRURcdTUzQzNcdTU4NzlcdTYxNThcdTYxNTlcdTYxRkFcdTY1QUNcdTdBRDlcdThCOTJcdThCOTZcdTUwMDlcdTUwMjFcdTUyNzVcdTU1MzFcdTVBM0NcdTVFRTBcdTVGNzBcdTYxMzRcdTY1NUVcdTY2MENcdTY2MzZcdTY2QTJcdTY5Q0RcdTZFQzRcdTZGMzJcdTczMTZcdTc2MjFcdTdBOTNcdTgxMzlcdTgyNTlcdTgzRDZcdTg0QkNcdTUwQjVcdTU3RjBcdTVCQzBcdTVCRThcdTVGNjlcdTYzQTFcdTc4MjZcdTdEQjVcdTgzRENcdTg1MjFcdTkxQzdcdTkxRjVcdTUxOEFcdTY3RjVcdTdCNTZcIl0sXG5bXCJmNGExXCIsXCJcdThDQUNcdTUxQzRcdTU5QkJcdTYwQkRcdTg2NTVcdTUwMUNcdUY5RkZcdTUyNTRcdTVDM0FcdTYxN0RcdTYyMUFcdTYyRDNcdTY0RjJcdTY1QTVcdTZFQ0NcdTc2MjBcdTgxMEFcdThFNjBcdTk2NUZcdTk2QkJcdTRFREZcdTUzNDNcdTU1OThcdTU5MjlcdTVERERcdTY0QzVcdTZDQzlcdTZERkFcdTczOTRcdTdBN0ZcdTgyMUJcdTg1QTZcdThDRTRcdThFMTBcdTkwNzdcdTkxRTdcdTk1RTFcdTk2MjFcdTk3QzZcdTUxRjhcdTU0RjJcdTU1ODZcdTVGQjlcdTY0QTRcdTZGODhcdTdEQjRcdThGMUZcdThGNERcdTk0MzVcdTUwQzlcdTVDMTZcdTZDQkVcdTZERkJcdTc1MUJcdTc3QkJcdTdDM0RcdTdDNjRcdThBNzlcdThBQzJcdTU4MUVcdTU5QkVcdTVFMTZcdTYzNzdcdTcyNTJcdTc1OEFcdTc3NkJcdThBRENcdThDQkNcdThGMTJcdTVFRjNcdTY2NzRcdTZERjhcdTgwN0RcdTgzQzFcdThBQ0JcdTk3NTFcdTlCRDZcdUZBMDBcdTUyNDNcdTY2RkZcdTZEOTVcdTZFRUZcdTdERTBcdThBRTZcdTkwMkVcdTkwNUVcdTlBRDRcdTUyMURcdTUyN0ZcdTU0RThcdTYxOTRcdTYyODRcdTYyREJcdTY4QTJcIl0sXG5bXCJmNWExXCIsXCJcdTY5MTJcdTY5NUFcdTZBMzVcdTcwOTJcdTcxMjZcdTc4NURcdTc5MDFcdTc5MEVcdTc5RDJcdTdBMERcdTgwOTZcdTgyNzhcdTgyRDVcdTgzNDlcdTg1NDlcdThDODJcdThEODVcdTkxNjJcdTkxOEJcdTkxQUVcdTRGQzNcdTU2RDFcdTcxRURcdTc3RDdcdTg3MDBcdTg5RjhcdTVCRjhcdTVGRDZcdTY3NTFcdTkwQThcdTUzRTJcdTU4NUFcdTVCRjVcdTYwQTRcdTYxODFcdTY0NjBcdTdFM0RcdTgwNzBcdTg1MjVcdTkyODNcdTY0QUVcdTUwQUNcdTVEMTRcdTY3MDBcdTU4OUNcdTYyQkRcdTYzQThcdTY5MEVcdTY5NzhcdTZBMUVcdTZFNkJcdTc2QkFcdTc5Q0JcdTgyQkJcdTg0MjlcdThBQ0ZcdThEQThcdThGRkRcdTkxMTJcdTkxNEJcdTkxOUNcdTkzMTBcdTkzMThcdTkzOUFcdTk2REJcdTlBMzZcdTlDMERcdTRFMTFcdTc1NUNcdTc5NURcdTdBRkFcdTdCNTFcdTdCQzlcdTdFMkVcdTg0QzRcdThFNTlcdThFNzRcdThFRjhcdTkwMTBcdTY2MjVcdTY5M0ZcdTc0NDNcdTUxRkFcdTY3MkVcdTlFRENcdTUxNDVcdTVGRTBcdTZDOTZcdTg3RjJcdTg4NURcdTg4NzdcdTYwQjRcdTgxQjVcdTg0MDNcIl0sXG5bXCJmNmExXCIsXCJcdThEMDVcdTUzRDZcdTU0MzlcdTU2MzRcdTVBMzZcdTVDMzFcdTcwOEFcdTdGRTBcdTgwNUFcdTgxMDZcdTgxRURcdThEQTNcdTkxODlcdTlBNUZcdTlERjJcdTUwNzRcdTRFQzRcdTUzQTBcdTYwRkJcdTZFMkNcdTVDNjRcdTRGODhcdTUwMjRcdTU1RTRcdTVDRDlcdTVFNUZcdTYwNjVcdTY4OTRcdTZDQkJcdTZEQzRcdTcxQkVcdTc1RDRcdTc1RjRcdTc2NjFcdTdBMUFcdTdBNDlcdTdEQzdcdTdERkJcdTdGNkVcdTgxRjRcdTg2QTlcdThGMUNcdTk2QzlcdTk5QjNcdTlGNTJcdTUyNDdcdTUyQzVcdTk4RURcdTg5QUFcdTRFMDNcdTY3RDJcdTZGMDZcdTRGQjVcdTVCRTJcdTY3OTVcdTZDODhcdTZENzhcdTc0MUJcdTc4MjdcdTkxRERcdTkzN0NcdTg3QzRcdTc5RTRcdTdBMzFcdTVGRUJcdTRFRDZcdTU0QTRcdTU1M0VcdTU4QUVcdTU5QTVcdTYwRjBcdTYyNTNcdTYyRDZcdTY3MzZcdTY5NTVcdTgyMzVcdTk2NDBcdTk5QjFcdTk5RERcdTUwMkNcdTUzNTNcdTU1NDRcdTU3N0NcdUZBMDFcdTYyNThcdUZBMDJcdTY0RTJcdTY2NkJcdTY3RERcdTZGQzFcdTZGRUZcdTc0MjJcdTc0MzhcdThBMTdcIl0sXG5bXCJmN2ExXCIsXCJcdTk0MzhcdTU0NTFcdTU2MDZcdTU3NjZcdTVGNDhcdTYxOUFcdTZCNEVcdTcwNThcdTcwQURcdTdEQkJcdThBOTVcdTU5NkFcdTgxMkJcdTYzQTJcdTc3MDhcdTgwM0RcdThDQUFcdTU4NTRcdTY0MkRcdTY5QkJcdTVCOTVcdTVFMTFcdTZFNkZcdUZBMDNcdTg1NjlcdTUxNENcdTUzRjBcdTU5MkFcdTYwMjBcdTYxNEJcdTZCODZcdTZDNzBcdTZDRjBcdTdCMUVcdTgwQ0VcdTgyRDRcdThEQzZcdTkwQjBcdTk4QjFcdUZBMDRcdTY0QzdcdTZGQTRcdTY0OTFcdTY1MDRcdTUxNEVcdTU0MTBcdTU3MUZcdThBMEVcdTYxNUZcdTY4NzZcdUZBMDVcdTc1REJcdTdCNTJcdTdENzFcdTkwMUFcdTU4MDZcdTY5Q0NcdTgxN0ZcdTg5MkFcdTkwMDBcdTk4MzlcdTUwNzhcdTU5NTdcdTU5QUNcdTYyOTVcdTkwMEZcdTlCMkFcdTYxNURcdTcyNzlcdTk1RDZcdTU3NjFcdTVBNDZcdTVERjRcdTYyOEFcdTY0QURcdTY0RkFcdTY3NzdcdTZDRTJcdTZEM0VcdTcyMkNcdTc0MzZcdTc4MzRcdTdGNzdcdTgyQURcdThEREJcdTk4MTdcdTUyMjRcdTU3NDJcdTY3N0ZcdTcyNDhcdTc0RTNcdThDQTlcdThGQTZcdTkyMTFcIl0sXG5bXCJmOGExXCIsXCJcdTk2MkFcdTUxNkJcdTUzRURcdTYzNENcdTRGNjlcdTU1MDRcdTYwOTZcdTY1NTdcdTZDOUJcdTZEN0ZcdTcyNENcdTcyRkRcdTdBMTdcdTg5ODdcdThDOURcdTVGNkRcdTZGOEVcdTcwRjlcdTgxQThcdTYxMEVcdTRGQkZcdTUwNEZcdTYyNDFcdTcyNDdcdTdCQzdcdTdERThcdTdGRTlcdTkwNERcdTk3QURcdTlBMTlcdThDQjZcdTU3NkFcdTVFNzNcdTY3QjBcdTg0MERcdThBNTVcdTU0MjBcdTVCMTZcdTVFNjNcdTVFRTJcdTVGMEFcdTY1ODNcdTgwQkFcdTg1M0RcdTk1ODlcdTk2NUJcdTRGNDhcdTUzMDVcdTUzMERcdTUzMEZcdTU0ODZcdTU0RkFcdTU3MDNcdTVFMDNcdTYwMTZcdTYyOUJcdTYyQjFcdTYzNTVcdUZBMDZcdTZDRTFcdTZENjZcdTc1QjFcdTc4MzJcdTgwREVcdTgxMkZcdTgyREVcdTg0NjFcdTg0QjJcdTg4OERcdTg5MTJcdTkwMEJcdTkyRUFcdTk4RkRcdTlCOTFcdTVFNDVcdTY2QjRcdTY2RERcdTcwMTFcdTcyMDZcdUZBMDdcdTRGRjVcdTUyN0RcdTVGNkFcdTYxNTNcdTY3NTNcdTZBMTlcdTZGMDJcdTc0RTJcdTc5NjhcdTg4NjhcdThDNzlcdTk4QzdcdTk4QzRcdTlBNDNcIl0sXG5bXCJmOWExXCIsXCJcdTU0QzFcdTdBMUZcdTY5NTNcdThBRjdcdThDNEFcdTk4QThcdTk5QUVcdTVGN0NcdTYyQUJcdTc1QjJcdTc2QUVcdTg4QUJcdTkwN0ZcdTk2NDJcdTUzMzlcdTVGM0NcdTVGQzVcdTZDQ0NcdTczQ0NcdTc1NjJcdTc1OEJcdTdCNDZcdTgyRkVcdTk5OURcdTRFNEZcdTkwM0NcdTRFMEJcdTRGNTVcdTUzQTZcdTU5MEZcdTVFQzhcdTY2MzBcdTZDQjNcdTc0NTVcdTgzNzdcdTg3NjZcdThDQzBcdTkwNTBcdTk3MUVcdTlDMTVcdTU4RDFcdTVCNzhcdTg2NTBcdThCMTRcdTlEQjRcdTVCRDJcdTYwNjhcdTYwOERcdTY1RjFcdTZDNTdcdTZGMjJcdTZGQTNcdTcwMUFcdTdGNTVcdTdGRjBcdTk1OTFcdTk1OTJcdTk2NTBcdTk3RDNcdTUyNzJcdThGNDRcdTUxRkRcdTU0MkJcdTU0QjhcdTU1NjNcdTU1OEFcdTZBQkJcdTZEQjVcdTdERDhcdTgyNjZcdTkyOUNcdTk2NzdcdTlFNzlcdTU0MDhcdTU0QzhcdTc2RDJcdTg2RTRcdTk1QTRcdTk1RDRcdTk2NUNcdTRFQTJcdTRGMDlcdTU5RUVcdTVBRTZcdTVERjdcdTYwNTJcdTYyOTdcdTY3NkRcdTY4NDFcdTZDODZcdTZFMkZcdTdGMzhcdTgwOUJcdTgyMkFcIl0sXG5bXCJmYWExXCIsXCJcdUZBMDhcdUZBMDlcdTk4MDVcdTRFQTVcdTUwNTVcdTU0QjNcdTU3OTNcdTU5NUFcdTVCNjlcdTVCQjNcdTYxQzhcdTY5NzdcdTZENzdcdTcwMjNcdTg3RjlcdTg5RTNcdThBNzJcdThBRTdcdTkwODJcdTk5RURcdTlBQjhcdTUyQkVcdTY4MzhcdTUwMTZcdTVFNzhcdTY3NEZcdTgzNDdcdTg4NENcdTRFQUJcdTU0MTFcdTU2QUVcdTczRTZcdTkxMTVcdTk3RkZcdTk5MDlcdTk5NTdcdTk5OTlcdTU2NTNcdTU4OUZcdTg2NUJcdThBMzFcdTYxQjJcdTZBRjZcdTczN0JcdThFRDJcdTZCNDdcdTk2QUFcdTlBNTdcdTU5NTVcdTcyMDBcdThENkJcdTk3NjlcdTRGRDRcdTVDRjRcdTVGMjZcdTYxRjhcdTY2NUJcdTZDRUJcdTcwQUJcdTczODRcdTczQjlcdTczRkVcdTc3MjlcdTc3NERcdTdENDNcdTdENjJcdTdFMjNcdTgyMzdcdTg4NTJcdUZBMEFcdThDRTJcdTkyNDlcdTk4NkZcdTVCNTFcdTdBNzRcdTg4NDBcdTk4MDFcdTVBQ0NcdTRGRTBcdTUzNTRcdTU5M0VcdTVDRkRcdTYzM0VcdTZENzlcdTcyRjlcdTgxMDVcdTgxMDdcdTgzQTJcdTkyQ0ZcdTk4MzBcdTRFQThcdTUxNDRcdTUyMTFcdTU3OEJcIl0sXG5bXCJmYmExXCIsXCJcdTVGNjJcdTZDQzJcdTZFQ0VcdTcwMDVcdTcwNTBcdTcwQUZcdTcxOTJcdTczRTlcdTc0NjlcdTgzNEFcdTg3QTJcdTg4NjFcdTkwMDhcdTkwQTJcdTkzQTNcdTk5QThcdTUxNkVcdTVGNTdcdTYwRTBcdTYxNjdcdTY2QjNcdTg1NTlcdThFNEFcdTkxQUZcdTk3OEJcdTRFNEVcdTRFOTJcdTU0N0NcdTU4RDVcdTU4RkFcdTU5N0RcdTVDQjVcdTVGMjdcdTYyMzZcdTYyNDhcdTY2MEFcdTY2NjdcdTZCRUJcdTZENjlcdTZEQ0ZcdTZFNTZcdTZFRjhcdTZGOTRcdTZGRTBcdTZGRTlcdTcwNURcdTcyRDBcdTc0MjVcdTc0NUFcdTc0RTBcdTc2OTNcdTc5NUNcdTdDQ0FcdTdFMUVcdTgwRTFcdTgyQTZcdTg0NkJcdTg0QkZcdTg2NEVcdTg2NUZcdTg3NzRcdThCNzdcdThDNkFcdTkzQUNcdTk4MDBcdTk4NjVcdTYwRDFcdTYyMTZcdTkxNzdcdTVBNUFcdTY2MEZcdTZERjdcdTZFM0VcdTc0M0ZcdTlCNDJcdTVGRkRcdTYwREFcdTdCMEZcdTU0QzRcdTVGMThcdTZDNUVcdTZDRDNcdTZEMkFcdTcwRDhcdTdEMDVcdTg2NzlcdThBMENcdTlEM0JcdTUzMTZcdTU0OENcdTVCMDVcdTZBM0FcdTcwNkJcdTc1NzVcIl0sXG5bXCJmY2ExXCIsXCJcdTc5OERcdTc5QkVcdTgyQjFcdTgzRUZcdThBNzFcdThCNDFcdThDQThcdTk3NzRcdUZBMEJcdTY0RjRcdTY1MkJcdTc4QkFcdTc4QkJcdTdBNkJcdTRFMzhcdTU1OUFcdTU5NTBcdTVCQTZcdTVFN0JcdTYwQTNcdTYzREJcdTZCNjFcdTY2NjVcdTY4NTNcdTZFMTlcdTcxNjVcdTc0QjBcdTdEMDhcdTkwODRcdTlBNjlcdTlDMjVcdTZEM0JcdTZFRDFcdTczM0VcdThDNDFcdTk1Q0FcdTUxRjBcdTVFNENcdTVGQThcdTYwNERcdTYwRjZcdTYxMzBcdTYxNENcdTY2NDNcdTY2NDRcdTY5QTVcdTZDQzFcdTZFNUZcdTZFQzlcdTZGNjJcdTcxNENcdTc0OUNcdTc2ODdcdTdCQzFcdTdDMjdcdTgzNTJcdTg3NTdcdTkwNTFcdTk2OERcdTlFQzNcdTUzMkZcdTU2REVcdTVFRkJcdTVGOEFcdTYwNjJcdTYwOTRcdTYxRjdcdTY2NjZcdTY3MDNcdTZBOUNcdTZERUVcdTZGQUVcdTcwNzBcdTczNkFcdTdFNkFcdTgxQkVcdTgzMzRcdTg2RDRcdThBQThcdThDQzRcdTUyODNcdTczNzJcdTVCOTZcdTZBNkJcdTk0MDRcdTU0RUVcdTU2ODZcdTVCNURcdTY1NDhcdTY1ODVcdTY2QzlcdTY4OUZcdTZEOERcdTZEQzZcIl0sXG5bXCJmZGExXCIsXCJcdTcyM0JcdTgwQjRcdTkxNzVcdTlBNERcdTRGQUZcdTUwMTlcdTUzOUFcdTU0MEVcdTU0M0NcdTU1ODlcdTU1QzVcdTVFM0ZcdTVGOENcdTY3M0RcdTcxNjZcdTczRERcdTkwMDVcdTUyREJcdTUyRjNcdTU4NjRcdTU4Q0VcdTcxMDRcdTcxOEZcdTcxRkJcdTg1QjBcdThBMTNcdTY2ODhcdTg1QThcdTU1QTdcdTY2ODRcdTcxNEFcdTg0MzFcdTUzNDlcdTU1OTlcdTZCQzFcdTVGNTlcdTVGQkRcdTYzRUVcdTY2ODlcdTcxNDdcdThBRjFcdThGMURcdTlFQkVcdTRGMTFcdTY0M0FcdTcwQ0JcdTc1NjZcdTg2NjdcdTYwNjRcdThCNEVcdTlERjhcdTUxNDdcdTUxRjZcdTUzMDhcdTZEMzZcdTgwRjhcdTlFRDFcdTY2MTVcdTZCMjNcdTcwOThcdTc1RDVcdTU0MDNcdTVDNzlcdTdEMDdcdThBMTZcdTZCMjBcdTZCM0RcdTZCNDZcdTU0MzhcdTYwNzBcdTZEM0RcdTdGRDVcdTgyMDhcdTUwRDZcdTUxREVcdTU1OUNcdTU2NkJcdTU2Q0RcdTU5RUNcdTVCMDlcdTVFMENcdTYxOTlcdTYxOThcdTYyMzFcdTY2NUVcdTY2RTZcdTcxOTlcdTcxQjlcdTcxQkFcdTcyQTdcdTc5QTdcdTdBMDBcdTdGQjJcdThBNzBcIl1cbl1cbiIsICJbXG5bXCIwXCIsXCJcXHUwMDAwXCIsMTI3XSxcbltcImExNDBcIixcIlx1MzAwMFx1RkYwQ1x1MzAwMVx1MzAwMlx1RkYwRVx1MjAyN1x1RkYxQlx1RkYxQVx1RkYxRlx1RkYwMVx1RkUzMFx1MjAyNlx1MjAyNVx1RkU1MFx1RkU1MVx1RkU1Mlx1MDBCN1x1RkU1NFx1RkU1NVx1RkU1Nlx1RkU1N1x1RkY1Q1x1MjAxM1x1RkUzMVx1MjAxNFx1RkUzM1x1MjU3NFx1RkUzNFx1RkU0Rlx1RkYwOFx1RkYwOVx1RkUzNVx1RkUzNlx1RkY1Qlx1RkY1RFx1RkUzN1x1RkUzOFx1MzAxNFx1MzAxNVx1RkUzOVx1RkUzQVx1MzAxMFx1MzAxMVx1RkUzQlx1RkUzQ1x1MzAwQVx1MzAwQlx1RkUzRFx1RkUzRVx1MzAwOFx1MzAwOVx1RkUzRlx1RkU0MFx1MzAwQ1x1MzAwRFx1RkU0MVx1RkU0Mlx1MzAwRVx1MzAwRlx1RkU0M1x1RkU0NFx1RkU1OVx1RkU1QVwiXSxcbltcImExYTFcIixcIlx1RkU1Qlx1RkU1Q1x1RkU1RFx1RkU1RVx1MjAxOFx1MjAxOVx1MjAxQ1x1MjAxRFx1MzAxRFx1MzAxRVx1MjAzNVx1MjAzMlx1RkYwM1x1RkYwNlx1RkYwQVx1MjAzQlx1MDBBN1x1MzAwM1x1MjVDQlx1MjVDRlx1MjVCM1x1MjVCMlx1MjVDRVx1MjYwNlx1MjYwNVx1MjVDN1x1MjVDNlx1MjVBMVx1MjVBMFx1MjVCRFx1MjVCQ1x1MzJBM1x1MjEwNVx1MDBBRlx1RkZFM1x1RkYzRlx1MDJDRFx1RkU0OVx1RkU0QVx1RkU0RFx1RkU0RVx1RkU0Qlx1RkU0Q1x1RkU1Rlx1RkU2MFx1RkU2MVx1RkYwQlx1RkYwRFx1MDBEN1x1MDBGN1x1MDBCMVx1MjIxQVx1RkYxQ1x1RkYxRVx1RkYxRFx1MjI2Nlx1MjI2N1x1MjI2MFx1MjIxRVx1MjI1Mlx1MjI2MVx1RkU2MlwiLDQsXCJcdUZGNUVcdTIyMjlcdTIyMkFcdTIyQTVcdTIyMjBcdTIyMUZcdTIyQkZcdTMzRDJcdTMzRDFcdTIyMkJcdTIyMkVcdTIyMzVcdTIyMzRcdTI2NDBcdTI2NDJcdTIyOTVcdTIyOTlcdTIxOTFcdTIxOTNcdTIxOTBcdTIxOTJcdTIxOTZcdTIxOTdcdTIxOTlcdTIxOThcdTIyMjVcdTIyMjNcdUZGMEZcIl0sXG5bXCJhMjQwXCIsXCJcdUZGM0NcdTIyMTVcdUZFNjhcdUZGMDRcdUZGRTVcdTMwMTJcdUZGRTBcdUZGRTFcdUZGMDVcdUZGMjBcdTIxMDNcdTIxMDlcdUZFNjlcdUZFNkFcdUZFNkJcdTMzRDVcdTMzOUNcdTMzOURcdTMzOUVcdTMzQ0VcdTMzQTFcdTMzOEVcdTMzOEZcdTMzQzRcdTAwQjBcdTUxNTlcdTUxNUJcdTUxNUVcdTUxNURcdTUxNjFcdTUxNjNcdTU1RTdcdTc0RTlcdTdDQ0VcdTI1ODFcIiw3LFwiXHUyNThGXHUyNThFXHUyNThEXHUyNThDXHUyNThCXHUyNThBXHUyNTg5XHUyNTNDXHUyNTM0XHUyNTJDXHUyNTI0XHUyNTFDXHUyNTk0XHUyNTAwXHUyNTAyXHUyNTk1XHUyNTBDXHUyNTEwXHUyNTE0XHUyNTE4XHUyNTZEXCJdLFxuW1wiYTJhMVwiLFwiXHUyNTZFXHUyNTcwXHUyNTZGXHUyNTUwXHUyNTVFXHUyNTZBXHUyNTYxXHUyNUUyXHUyNUUzXHUyNUU1XHUyNUU0XHUyNTcxXHUyNTcyXHUyNTczXHVGRjEwXCIsOSxcIlx1MjE2MFwiLDksXCJcdTMwMjFcIiw4LFwiXHU1MzQxXHU1MzQ0XHU1MzQ1XHVGRjIxXCIsMjUsXCJcdUZGNDFcIiwyMV0sXG5bXCJhMzQwXCIsXCJcdUZGNTdcdUZGNThcdUZGNTlcdUZGNUFcdTAzOTFcIiwxNixcIlx1MDNBM1wiLDYsXCJcdTAzQjFcIiwxNixcIlx1MDNDM1wiLDYsXCJcdTMxMDVcIiwxMF0sXG5bXCJhM2ExXCIsXCJcdTMxMTBcIiwyNSxcIlx1MDJEOVx1MDJDOVx1MDJDQVx1MDJDN1x1MDJDQlwiXSxcbltcImEzZTFcIixcIlx1MjBBQ1wiXSxcbltcImE0NDBcIixcIlx1NEUwMFx1NEU1OVx1NEUwMVx1NEUwM1x1NEU0M1x1NEU1RFx1NEU4Nlx1NEU4Q1x1NEVCQVx1NTEzRlx1NTE2NVx1NTE2Qlx1NTFFMFx1NTIwMFx1NTIwMVx1NTI5Qlx1NTMxNVx1NTM0MVx1NTM1Q1x1NTNDOFx1NEUwOVx1NEUwQlx1NEUwOFx1NEUwQVx1NEUyQlx1NEUzOFx1NTFFMVx1NEU0NVx1NEU0OFx1NEU1Rlx1NEU1RVx1NEU4RVx1NEVBMVx1NTE0MFx1NTIwM1x1NTJGQVx1NTM0M1x1NTNDOVx1NTNFM1x1NTcxRlx1NThFQlx1NTkxNVx1NTkyN1x1NTk3M1x1NUI1MFx1NUI1MVx1NUI1M1x1NUJGOFx1NUMwRlx1NUMyMlx1NUMzOFx1NUM3MVx1NURERFx1NURFNVx1NURGMVx1NURGMlx1NURGM1x1NURGRVx1NUU3Mlx1NUVGRVx1NUYwQlx1NUYxM1x1NjI0RFwiXSxcbltcImE0YTFcIixcIlx1NEUxMVx1NEUxMFx1NEUwRFx1NEUyRFx1NEUzMFx1NEUzOVx1NEU0Qlx1NUMzOVx1NEU4OFx1NEU5MVx1NEU5NVx1NEU5Mlx1NEU5NFx1NEVBMlx1NEVDMVx1NEVDMFx1NEVDM1x1NEVDNlx1NEVDN1x1NEVDRFx1NEVDQVx1NEVDQlx1NEVDNFx1NTE0M1x1NTE0MVx1NTE2N1x1NTE2RFx1NTE2RVx1NTE2Q1x1NTE5N1x1NTFGNlx1NTIwNlx1NTIwN1x1NTIwOFx1NTJGQlx1NTJGRVx1NTJGRlx1NTMxNlx1NTMzOVx1NTM0OFx1NTM0N1x1NTM0NVx1NTM1RVx1NTM4NFx1NTNDQlx1NTNDQVx1NTNDRFx1NThFQ1x1NTkyOVx1NTkyQlx1NTkyQVx1NTkyRFx1NUI1NFx1NUMxMVx1NUMyNFx1NUMzQVx1NUM2Rlx1NURGNFx1NUU3Qlx1NUVGRlx1NUYxNFx1NUYxNVx1NUZDM1x1NjIwOFx1NjIzNlx1NjI0Qlx1NjI0RVx1NjUyRlx1NjU4N1x1NjU5N1x1NjVBNFx1NjVCOVx1NjVFNVx1NjZGMFx1NjcwOFx1NjcyOFx1NkIyMFx1NkI2Mlx1NkI3OVx1NkJDQlx1NkJENFx1NkJEQlx1NkMwRlx1NkMzNFx1NzA2Qlx1NzIyQVx1NzIzNlx1NzIzQlx1NzI0N1x1NzI1OVx1NzI1Qlx1NzJBQ1x1NzM4Qlx1NEUxOVwiXSxcbltcImE1NDBcIixcIlx1NEUxNlx1NEUxNVx1NEUxNFx1NEUxOFx1NEUzQlx1NEU0RFx1NEU0Rlx1NEU0RVx1NEVFNVx1NEVEOFx1NEVENFx1NEVENVx1NEVENlx1NEVEN1x1NEVFM1x1NEVFNFx1NEVEOVx1NEVERVx1NTE0NVx1NTE0NFx1NTE4OVx1NTE4QVx1NTFBQ1x1NTFGOVx1NTFGQVx1NTFGOFx1NTIwQVx1NTJBMFx1NTI5Rlx1NTMwNVx1NTMwNlx1NTMxN1x1NTMxRFx1NEVERlx1NTM0QVx1NTM0OVx1NTM2MVx1NTM2MFx1NTM2Rlx1NTM2RVx1NTNCQlx1NTNFRlx1NTNFNFx1NTNGM1x1NTNFQ1x1NTNFRVx1NTNFOVx1NTNFOFx1NTNGQ1x1NTNGOFx1NTNGNVx1NTNFQlx1NTNFNlx1NTNFQVx1NTNGMlx1NTNGMVx1NTNGMFx1NTNFNVx1NTNFRFx1NTNGQlx1NTZEQlx1NTZEQVx1NTkxNlwiXSxcbltcImE1YTFcIixcIlx1NTkyRVx1NTkzMVx1NTk3NFx1NTk3Nlx1NUI1NVx1NUI4M1x1NUMzQ1x1NURFOFx1NURFN1x1NURFNlx1NUUwMlx1NUUwM1x1NUU3M1x1NUU3Q1x1NUYwMVx1NUYxOFx1NUYxN1x1NUZDNVx1NjIwQVx1NjI1M1x1NjI1NFx1NjI1Mlx1NjI1MVx1NjVBNVx1NjVFNlx1NjcyRVx1NjcyQ1x1NjcyQVx1NjcyQlx1NjcyRFx1NkI2M1x1NkJDRFx1NkMxMVx1NkMxMFx1NkMzOFx1NkM0MVx1NkM0MFx1NkMzRVx1NzJBRlx1NzM4NFx1NzM4OVx1NzREQ1x1NzRFNlx1NzUxOFx1NzUxRlx1NzUyOFx1NzUyOVx1NzUzMFx1NzUzMVx1NzUzMlx1NzUzM1x1NzU4Qlx1NzY3RFx1NzZBRVx1NzZCRlx1NzZFRVx1NzdEQlx1NzdFMlx1NzdGM1x1NzkzQVx1NzlCRVx1N0E3NFx1N0FDQlx1NEUxRVx1NEUxRlx1NEU1Mlx1NEU1M1x1NEU2OVx1NEU5OVx1NEVBNFx1NEVBNlx1NEVBNVx1NEVGRlx1NEYwOVx1NEYxOVx1NEYwQVx1NEYxNVx1NEYwRFx1NEYxMFx1NEYxMVx1NEYwRlx1NEVGMlx1NEVGNlx1NEVGQlx1NEVGMFx1NEVGM1x1NEVGRFx1NEYwMVx1NEYwQlx1NTE0OVx1NTE0N1x1NTE0Nlx1NTE0OFx1NTE2OFwiXSxcbltcImE2NDBcIixcIlx1NTE3MVx1NTE4RFx1NTFCMFx1NTIxN1x1NTIxMVx1NTIxMlx1NTIwRVx1NTIxNlx1NTJBM1x1NTMwOFx1NTMyMVx1NTMyMFx1NTM3MFx1NTM3MVx1NTQwOVx1NTQwRlx1NTQwQ1x1NTQwQVx1NTQxMFx1NTQwMVx1NTQwQlx1NTQwNFx1NTQxMVx1NTQwRFx1NTQwOFx1NTQwM1x1NTQwRVx1NTQwNlx1NTQxMlx1NTZFMFx1NTZERVx1NTZERFx1NTczM1x1NTczMFx1NTcyOFx1NTcyRFx1NTcyQ1x1NTcyRlx1NTcyOVx1NTkxOVx1NTkxQVx1NTkzN1x1NTkzOFx1NTk4NFx1NTk3OFx1NTk4M1x1NTk3RFx1NTk3OVx1NTk4Mlx1NTk4MVx1NUI1N1x1NUI1OFx1NUI4N1x1NUI4OFx1NUI4NVx1NUI4OVx1NUJGQVx1NUMxNlx1NUM3OVx1NURERVx1NUUwNlx1NUU3Nlx1NUU3NFwiXSxcbltcImE2YTFcIixcIlx1NUYwRlx1NUYxQlx1NUZEOVx1NUZENlx1NjIwRVx1NjIwQ1x1NjIwRFx1NjIxMFx1NjI2M1x1NjI1Qlx1NjI1OFx1NjUzNlx1NjVFOVx1NjVFOFx1NjVFQ1x1NjVFRFx1NjZGMlx1NjZGM1x1NjcwOVx1NjczRFx1NjczNFx1NjczMVx1NjczNVx1NkIyMVx1NkI2NFx1NkI3Qlx1NkMxNlx1NkM1RFx1NkM1N1x1NkM1OVx1NkM1Rlx1NkM2MFx1NkM1MFx1NkM1NVx1NkM2MVx1NkM1Qlx1NkM0RFx1NkM0RVx1NzA3MFx1NzI1Rlx1NzI1RFx1NzY3RVx1N0FGOVx1N0M3M1x1N0NGOFx1N0YzNlx1N0Y4QVx1N0ZCRFx1ODAwMVx1ODAwM1x1ODAwQ1x1ODAxMlx1ODAzM1x1ODA3Rlx1ODA4OVx1ODA4Qlx1ODA4Q1x1ODFFM1x1ODFFQVx1ODFGM1x1ODFGQ1x1ODIwQ1x1ODIxQlx1ODIxRlx1ODI2RVx1ODI3Mlx1ODI3RVx1ODY2Qlx1ODg0MFx1ODg0Q1x1ODg2M1x1ODk3Rlx1OTYyMVx1NEUzMlx1NEVBOFx1NEY0RFx1NEY0Rlx1NEY0N1x1NEY1N1x1NEY1RVx1NEYzNFx1NEY1Qlx1NEY1NVx1NEYzMFx1NEY1MFx1NEY1MVx1NEYzRFx1NEYzQVx1NEYzOFx1NEY0M1x1NEY1NFx1NEYzQ1x1NEY0Nlx1NEY2M1wiXSxcbltcImE3NDBcIixcIlx1NEY1Q1x1NEY2MFx1NEYyRlx1NEY0RVx1NEYzNlx1NEY1OVx1NEY1RFx1NEY0OFx1NEY1QVx1NTE0Q1x1NTE0Qlx1NTE0RFx1NTE3NVx1NTFCNlx1NTFCN1x1NTIyNVx1NTIyNFx1NTIyOVx1NTIyQVx1NTIyOFx1NTJBQlx1NTJBOVx1NTJBQVx1NTJBQ1x1NTMyM1x1NTM3M1x1NTM3NVx1NTQxRFx1NTQyRFx1NTQxRVx1NTQzRVx1NTQyNlx1NTQ0RVx1NTQyN1x1NTQ0Nlx1NTQ0M1x1NTQzM1x1NTQ0OFx1NTQ0Mlx1NTQxQlx1NTQyOVx1NTQ0QVx1NTQzOVx1NTQzQlx1NTQzOFx1NTQyRVx1NTQzNVx1NTQzNlx1NTQyMFx1NTQzQ1x1NTQ0MFx1NTQzMVx1NTQyQlx1NTQxRlx1NTQyQ1x1NTZFQVx1NTZGMFx1NTZFNFx1NTZFQlx1NTc0QVx1NTc1MVx1NTc0MFx1NTc0RFwiXSxcbltcImE3YTFcIixcIlx1NTc0N1x1NTc0RVx1NTczRVx1NTc1MFx1NTc0Rlx1NTczQlx1NThFRlx1NTkzRVx1NTk5RFx1NTk5Mlx1NTlBOFx1NTk5RVx1NTlBM1x1NTk5OVx1NTk5Nlx1NTk4RFx1NTlBNFx1NTk5M1x1NTk4QVx1NTlBNVx1NUI1RFx1NUI1Q1x1NUI1QVx1NUI1Qlx1NUI4Q1x1NUI4Qlx1NUI4Rlx1NUMyQ1x1NUM0MFx1NUM0MVx1NUMzRlx1NUMzRVx1NUM5MFx1NUM5MVx1NUM5NFx1NUM4Q1x1NURFQlx1NUUwQ1x1NUU4Rlx1NUU4N1x1NUU4QVx1NUVGN1x1NUYwNFx1NUYxRlx1NUY2NFx1NUY2Mlx1NUY3N1x1NUY3OVx1NUZEOFx1NUZDQ1x1NUZEN1x1NUZDRFx1NUZGMVx1NUZFQlx1NUZGOFx1NUZFQVx1NjIxMlx1NjIxMVx1NjI4NFx1NjI5N1x1NjI5Nlx1NjI4MFx1NjI3Nlx1NjI4OVx1NjI2RFx1NjI4QVx1NjI3Q1x1NjI3RVx1NjI3OVx1NjI3M1x1NjI5Mlx1NjI2Rlx1NjI5OFx1NjI2RVx1NjI5NVx1NjI5M1x1NjI5MVx1NjI4Nlx1NjUzOVx1NjUzQlx1NjUzOFx1NjVGMVx1NjZGNFx1Njc1Rlx1Njc0RVx1Njc0Rlx1Njc1MFx1Njc1MVx1Njc1Q1x1Njc1Nlx1Njc1RVx1Njc0OVx1Njc0Nlx1Njc2MFwiXSxcbltcImE4NDBcIixcIlx1Njc1M1x1Njc1N1x1NkI2NVx1NkJDRlx1NkM0Mlx1NkM1RVx1NkM5OVx1NkM4MVx1NkM4OFx1NkM4OVx1NkM4NVx1NkM5Qlx1NkM2QVx1NkM3QVx1NkM5MFx1NkM3MFx1NkM4Q1x1NkM2OFx1NkM5Nlx1NkM5Mlx1NkM3RFx1NkM4M1x1NkM3Mlx1NkM3RVx1NkM3NFx1NkM4Nlx1NkM3Nlx1NkM4RFx1NkM5NFx1NkM5OFx1NkM4Mlx1NzA3Nlx1NzA3Q1x1NzA3RFx1NzA3OFx1NzI2Mlx1NzI2MVx1NzI2MFx1NzJDNFx1NzJDMlx1NzM5Nlx1NzUyQ1x1NzUyQlx1NzUzN1x1NzUzOFx1NzY4Mlx1NzZFRlx1NzdFM1x1NzlDMVx1NzlDMFx1NzlCRlx1N0E3Nlx1N0NGQlx1N0Y1NVx1ODA5Nlx1ODA5M1x1ODA5RFx1ODA5OFx1ODA5Qlx1ODA5QVx1ODBCMlx1ODI2Rlx1ODI5MlwiXSxcbltcImE4YTFcIixcIlx1ODI4Qlx1ODI4RFx1ODk4Qlx1ODlEMlx1OEEwMFx1OEMzN1x1OEM0Nlx1OEM1NVx1OEM5RFx1OEQ2NFx1OEQ3MFx1OERCM1x1OEVBQlx1OEVDQVx1OEY5Qlx1OEZCMFx1OEZDMlx1OEZDNlx1OEZDNVx1OEZDNFx1NURFMVx1OTA5MVx1OTBBMlx1OTBBQVx1OTBBNlx1OTBBM1x1OTE0OVx1OTFDNlx1OTFDQ1x1OTYzMlx1OTYyRVx1OTYzMVx1OTYyQVx1OTYyQ1x1NEUyNlx1NEU1Nlx1NEU3M1x1NEU4Qlx1NEU5Qlx1NEU5RVx1NEVBQlx1NEVBQ1x1NEY2Rlx1NEY5RFx1NEY4RFx1NEY3M1x1NEY3Rlx1NEY2Q1x1NEY5Qlx1NEY4Qlx1NEY4Nlx1NEY4M1x1NEY3MFx1NEY3NVx1NEY4OFx1NEY2OVx1NEY3Qlx1NEY5Nlx1NEY3RVx1NEY4Rlx1NEY5MVx1NEY3QVx1NTE1NFx1NTE1Mlx1NTE1NVx1NTE2OVx1NTE3N1x1NTE3Nlx1NTE3OFx1NTFCRFx1NTFGRFx1NTIzQlx1NTIzOFx1NTIzN1x1NTIzQVx1NTIzMFx1NTIyRVx1NTIzNlx1NTI0MVx1NTJCRVx1NTJCQlx1NTM1Mlx1NTM1NFx1NTM1M1x1NTM1MVx1NTM2Nlx1NTM3N1x1NTM3OFx1NTM3OVx1NTNENlx1NTNENFx1NTNEN1x1NTQ3M1x1NTQ3NVwiXSxcbltcImE5NDBcIixcIlx1NTQ5Nlx1NTQ3OFx1NTQ5NVx1NTQ4MFx1NTQ3Qlx1NTQ3N1x1NTQ4NFx1NTQ5Mlx1NTQ4Nlx1NTQ3Q1x1NTQ5MFx1NTQ3MVx1NTQ3Nlx1NTQ4Q1x1NTQ5QVx1NTQ2Mlx1NTQ2OFx1NTQ4Qlx1NTQ3RFx1NTQ4RVx1NTZGQVx1NTc4M1x1NTc3N1x1NTc2QVx1NTc2OVx1NTc2MVx1NTc2Nlx1NTc2NFx1NTc3Q1x1NTkxQ1x1NTk0OVx1NTk0N1x1NTk0OFx1NTk0NFx1NTk1NFx1NTlCRVx1NTlCQlx1NTlENFx1NTlCOVx1NTlBRVx1NTlEMVx1NTlDNlx1NTlEMFx1NTlDRFx1NTlDQlx1NTlEM1x1NTlDQVx1NTlBRlx1NTlCM1x1NTlEMlx1NTlDNVx1NUI1Rlx1NUI2NFx1NUI2M1x1NUI5N1x1NUI5QVx1NUI5OFx1NUI5Q1x1NUI5OVx1NUI5Qlx1NUMxQVx1NUM0OFx1NUM0NVwiXSxcbltcImE5YTFcIixcIlx1NUM0Nlx1NUNCN1x1NUNBMVx1NUNCOFx1NUNBOVx1NUNBQlx1NUNCMVx1NUNCM1x1NUUxOFx1NUUxQVx1NUUxNlx1NUUxNVx1NUUxQlx1NUUxMVx1NUU3OFx1NUU5QVx1NUU5N1x1NUU5Q1x1NUU5NVx1NUU5Nlx1NUVGNlx1NUYyNlx1NUYyN1x1NUYyOVx1NUY4MFx1NUY4MVx1NUY3Rlx1NUY3Q1x1NUZERFx1NUZFMFx1NUZGRFx1NUZGNVx1NUZGRlx1NjAwRlx1NjAxNFx1NjAyRlx1NjAzNVx1NjAxNlx1NjAyQVx1NjAxNVx1NjAyMVx1NjAyN1x1NjAyOVx1NjAyQlx1NjAxQlx1NjIxNlx1NjIxNVx1NjIzRlx1NjIzRVx1NjI0MFx1NjI3Rlx1NjJDOVx1NjJDQ1x1NjJDNFx1NjJCRlx1NjJDMlx1NjJCOVx1NjJEMlx1NjJEQlx1NjJBQlx1NjJEM1x1NjJENFx1NjJDQlx1NjJDOFx1NjJBOFx1NjJCRFx1NjJCQ1x1NjJEMFx1NjJEOVx1NjJDN1x1NjJDRFx1NjJCNVx1NjJEQVx1NjJCMVx1NjJEOFx1NjJENlx1NjJEN1x1NjJDNlx1NjJBQ1x1NjJDRVx1NjUzRVx1NjVBN1x1NjVCQ1x1NjVGQVx1NjYxNFx1NjYxM1x1NjYwQ1x1NjYwNlx1NjYwMlx1NjYwRVx1NjYwMFx1NjYwRlx1NjYxNVx1NjYwQVwiXSxcbltcImFhNDBcIixcIlx1NjYwN1x1NjcwRFx1NjcwQlx1Njc2RFx1Njc4Qlx1Njc5NVx1Njc3MVx1Njc5Q1x1Njc3M1x1Njc3N1x1Njc4N1x1Njc5RFx1Njc5N1x1Njc2Rlx1Njc3MFx1Njc3Rlx1Njc4OVx1Njc3RVx1Njc5MFx1Njc3NVx1Njc5QVx1Njc5M1x1Njc3Q1x1Njc2QVx1Njc3Mlx1NkIyM1x1NkI2Nlx1NkI2N1x1NkI3Rlx1NkMxM1x1NkMxQlx1NkNFM1x1NkNFOFx1NkNGM1x1NkNCMVx1NkNDQ1x1NkNFNVx1NkNCM1x1NkNCRFx1NkNCRVx1NkNCQ1x1NkNFMlx1NkNBQlx1NkNENVx1NkNEM1x1NkNCOFx1NkNDNFx1NkNCOVx1NkNDMVx1NkNBRVx1NkNEN1x1NkNDNVx1NkNGMVx1NkNCRlx1NkNCQlx1NkNFMVx1NkNEQlx1NkNDQVx1NkNBQ1x1NkNFRlx1NkNEQ1x1NkNENlx1NkNFMFwiXSxcbltcImFhYTFcIixcIlx1NzA5NVx1NzA4RVx1NzA5Mlx1NzA4QVx1NzA5OVx1NzIyQ1x1NzIyRFx1NzIzOFx1NzI0OFx1NzI2N1x1NzI2OVx1NzJDMFx1NzJDRVx1NzJEOVx1NzJEN1x1NzJEMFx1NzNBOVx1NzNBOFx1NzM5Rlx1NzNBQlx1NzNBNVx1NzUzRFx1NzU5RFx1NzU5OVx1NzU5QVx1NzY4NFx1NzZDMlx1NzZGMlx1NzZGNFx1NzdFNVx1NzdGRFx1NzkzRVx1Nzk0MFx1Nzk0MVx1NzlDOVx1NzlDOFx1N0E3QVx1N0E3OVx1N0FGQVx1N0NGRVx1N0Y1NFx1N0Y4Q1x1N0Y4Qlx1ODAwNVx1ODBCQVx1ODBBNVx1ODBBMlx1ODBCMVx1ODBBMVx1ODBBQlx1ODBBOVx1ODBCNFx1ODBBQVx1ODBBRlx1ODFFNVx1ODFGRVx1ODIwRFx1ODJCM1x1ODI5RFx1ODI5OVx1ODJBRFx1ODJCRFx1ODI5Rlx1ODJCOVx1ODJCMVx1ODJBQ1x1ODJBNVx1ODJBRlx1ODJCOFx1ODJBM1x1ODJCMFx1ODJCRVx1ODJCN1x1ODY0RVx1ODY3MVx1NTIxRFx1ODg2OFx1OEVDQlx1OEZDRVx1OEZENFx1OEZEMVx1OTBCNVx1OTBCOFx1OTBCMVx1OTBCNlx1OTFDN1x1OTFEMVx1OTU3N1x1OTU4MFx1OTYxQ1x1OTY0MFx1OTYzRlx1OTYzQlx1OTY0NFwiXSxcbltcImFiNDBcIixcIlx1OTY0Mlx1OTZCOVx1OTZFOFx1OTc1Mlx1OTc1RVx1NEU5Rlx1NEVBRFx1NEVBRVx1NEZFMVx1NEZCNVx1NEZBRlx1NEZCRlx1NEZFMFx1NEZEMVx1NEZDRlx1NEZERFx1NEZDM1x1NEZCNlx1NEZEOFx1NEZERlx1NEZDQVx1NEZEN1x1NEZBRVx1NEZEMFx1NEZDNFx1NEZDMlx1NEZEQVx1NEZDRVx1NEZERVx1NEZCN1x1NTE1N1x1NTE5Mlx1NTE5MVx1NTFBMFx1NTI0RVx1NTI0M1x1NTI0QVx1NTI0RFx1NTI0Q1x1NTI0Qlx1NTI0N1x1NTJDN1x1NTJDOVx1NTJDM1x1NTJDMVx1NTMwRFx1NTM1N1x1NTM3Qlx1NTM5QVx1NTNEQlx1NTRBQ1x1NTRDMFx1NTRBOFx1NTRDRVx1NTRDOVx1NTRCOFx1NTRBNlx1NTRCM1x1NTRDN1x1NTRDMlx1NTRCRFx1NTRBQVx1NTRDMVwiXSxcbltcImFiYTFcIixcIlx1NTRDNFx1NTRDOFx1NTRBRlx1NTRBQlx1NTRCMVx1NTRCQlx1NTRBOVx1NTRBN1x1NTRCRlx1NTZGRlx1NTc4Mlx1NTc4Qlx1NTdBMFx1NTdBM1x1NTdBMlx1NTdDRVx1NTdBRVx1NTc5M1x1NTk1NVx1NTk1MVx1NTk0Rlx1NTk0RVx1NTk1MFx1NTlEQ1x1NTlEOFx1NTlGRlx1NTlFM1x1NTlFOFx1NUEwM1x1NTlFNVx1NTlFQVx1NTlEQVx1NTlFNlx1NUEwMVx1NTlGQlx1NUI2OVx1NUJBM1x1NUJBNlx1NUJBNFx1NUJBMlx1NUJBNVx1NUMwMVx1NUM0RVx1NUM0Rlx1NUM0RFx1NUM0Qlx1NUNEOVx1NUNEMlx1NURGN1x1NUUxRFx1NUUyNVx1NUUxRlx1NUU3RFx1NUVBMFx1NUVBNlx1NUVGQVx1NUYwOFx1NUYyRFx1NUY2NVx1NUY4OFx1NUY4NVx1NUY4QVx1NUY4Qlx1NUY4N1x1NUY4Q1x1NUY4OVx1NjAxMlx1NjAxRFx1NjAyMFx1NjAyNVx1NjAwRVx1NjAyOFx1NjA0RFx1NjA3MFx1NjA2OFx1NjA2Mlx1NjA0Nlx1NjA0M1x1NjA2Q1x1NjA2Qlx1NjA2QVx1NjA2NFx1NjI0MVx1NjJEQ1x1NjMxNlx1NjMwOVx1NjJGQ1x1NjJFRFx1NjMwMVx1NjJFRVx1NjJGRFx1NjMwN1x1NjJGMVx1NjJGN1wiXSxcbltcImFjNDBcIixcIlx1NjJFRlx1NjJFQ1x1NjJGRVx1NjJGNFx1NjMxMVx1NjMwMlx1NjUzRlx1NjU0NVx1NjVBQlx1NjVCRFx1NjVFMlx1NjYyNVx1NjYyRFx1NjYyMFx1NjYyN1x1NjYyRlx1NjYxRlx1NjYyOFx1NjYzMVx1NjYyNFx1NjZGN1x1NjdGRlx1NjdEM1x1NjdGMVx1NjdENFx1NjdEMFx1NjdFQ1x1NjdCNlx1NjdBRlx1NjdGNVx1NjdFOVx1NjdFRlx1NjdDNFx1NjdEMVx1NjdCNFx1NjdEQVx1NjdFNVx1NjdCOFx1NjdDRlx1NjdERVx1NjdGM1x1NjdCMFx1NjdEOVx1NjdFMlx1NjdERFx1NjdEMlx1NkI2QVx1NkI4M1x1NkI4Nlx1NkJCNVx1NkJEMlx1NkJEN1x1NkMxRlx1NkNDOVx1NkQwQlx1NkQzMlx1NkQyQVx1NkQ0MVx1NkQyNVx1NkQwQ1x1NkQzMVx1NkQxRVx1NkQxN1wiXSxcbltcImFjYTFcIixcIlx1NkQzQlx1NkQzRFx1NkQzRVx1NkQzNlx1NkQxQlx1NkNGNVx1NkQzOVx1NkQyN1x1NkQzOFx1NkQyOVx1NkQyRVx1NkQzNVx1NkQwRVx1NkQyQlx1NzBBQlx1NzBCQVx1NzBCM1x1NzBBQ1x1NzBBRlx1NzBBRFx1NzBCOFx1NzBBRVx1NzBBNFx1NzIzMFx1NzI3Mlx1NzI2Rlx1NzI3NFx1NzJFOVx1NzJFMFx1NzJFMVx1NzNCN1x1NzNDQVx1NzNCQlx1NzNCMlx1NzNDRFx1NzNDMFx1NzNCM1x1NzUxQVx1NzUyRFx1NzU0Rlx1NzU0Q1x1NzU0RVx1NzU0Qlx1NzVBQlx1NzVBNFx1NzVBNVx1NzVBMlx1NzVBM1x1NzY3OFx1NzY4Nlx1NzY4N1x1NzY4OFx1NzZDOFx1NzZDNlx1NzZDM1x1NzZDNVx1NzcwMVx1NzZGOVx1NzZGOFx1NzcwOVx1NzcwQlx1NzZGRVx1NzZGQ1x1NzcwN1x1NzdEQ1x1NzgwMlx1NzgxNFx1NzgwQ1x1NzgwRFx1Nzk0Nlx1Nzk0OVx1Nzk0OFx1Nzk0N1x1NzlCOVx1NzlCQVx1NzlEMVx1NzlEMlx1NzlDQlx1N0E3Rlx1N0E4MVx1N0FGRlx1N0FGRFx1N0M3RFx1N0QwMlx1N0QwNVx1N0QwMFx1N0QwOVx1N0QwN1x1N0QwNFx1N0QwNlx1N0YzOFx1N0Y4RVx1N0ZCRlx1ODAwNFwiXSxcbltcImFkNDBcIixcIlx1ODAxMFx1ODAwRFx1ODAxMVx1ODAzNlx1ODBENlx1ODBFNVx1ODBEQVx1ODBDM1x1ODBDNFx1ODBDQ1x1ODBFMVx1ODBEQlx1ODBDRVx1ODBERVx1ODBFNFx1ODBERFx1ODFGNFx1ODIyMlx1ODJFN1x1ODMwM1x1ODMwNVx1ODJFM1x1ODJEQlx1ODJFNlx1ODMwNFx1ODJFNVx1ODMwMlx1ODMwOVx1ODJEMlx1ODJEN1x1ODJGMVx1ODMwMVx1ODJEQ1x1ODJENFx1ODJEMVx1ODJERVx1ODJEM1x1ODJERlx1ODJFRlx1ODMwNlx1ODY1MFx1ODY3OVx1ODY3Qlx1ODY3QVx1ODg0RFx1ODg2Qlx1ODk4MVx1ODlENFx1OEEwOFx1OEEwMlx1OEEwM1x1OEM5RVx1OENBMFx1OEQ3NFx1OEQ3M1x1OERCNFx1OEVDRFx1OEVDQ1x1OEZGMFx1OEZFNlx1OEZFMlx1OEZFQVx1OEZFNVwiXSxcbltcImFkYTFcIixcIlx1OEZFRFx1OEZFQlx1OEZFNFx1OEZFOFx1OTBDQVx1OTBDRVx1OTBDMVx1OTBDM1x1OTE0Qlx1OTE0QVx1OTFDRFx1OTU4Mlx1OTY1MFx1OTY0Qlx1OTY0Q1x1OTY0RFx1OTc2Mlx1OTc2OVx1OTdDQlx1OTdFRFx1OTdGM1x1OTgwMVx1OThBOFx1OThEQlx1OThERlx1OTk5Nlx1OTk5OVx1NEU1OFx1NEVCM1x1NTAwQ1x1NTAwRFx1NTAyM1x1NEZFRlx1NTAyNlx1NTAyNVx1NEZGOFx1NTAyOVx1NTAxNlx1NTAwNlx1NTAzQ1x1NTAxRlx1NTAxQVx1NTAxMlx1NTAxMVx1NEZGQVx1NTAwMFx1NTAxNFx1NTAyOFx1NEZGMVx1NTAyMVx1NTAwQlx1NTAxOVx1NTAxOFx1NEZGM1x1NEZFRVx1NTAyRFx1NTAyQVx1NEZGRVx1NTAyQlx1NTAwOVx1NTE3Q1x1NTFBNFx1NTFBNVx1NTFBMlx1NTFDRFx1NTFDQ1x1NTFDNlx1NTFDQlx1NTI1Nlx1NTI1Q1x1NTI1NFx1NTI1Qlx1NTI1RFx1NTMyQVx1NTM3Rlx1NTM5Rlx1NTM5RFx1NTNERlx1NTRFOFx1NTUxMFx1NTUwMVx1NTUzN1x1NTRGQ1x1NTRFNVx1NTRGMlx1NTUwNlx1NTRGQVx1NTUxNFx1NTRFOVx1NTRFRFx1NTRFMVx1NTUwOVx1NTRFRVx1NTRFQVwiXSxcbltcImFlNDBcIixcIlx1NTRFNlx1NTUyN1x1NTUwN1x1NTRGRFx1NTUwRlx1NTcwM1x1NTcwNFx1NTdDMlx1NTdENFx1NTdDQlx1NTdDM1x1NTgwOVx1NTkwRlx1NTk1N1x1NTk1OFx1NTk1QVx1NUExMVx1NUExOFx1NUExQ1x1NUExRlx1NUExQlx1NUExM1x1NTlFQ1x1NUEyMFx1NUEyM1x1NUEyOVx1NUEyNVx1NUEwQ1x1NUEwOVx1NUI2Qlx1NUM1OFx1NUJCMFx1NUJCM1x1NUJCNlx1NUJCNFx1NUJBRVx1NUJCNVx1NUJCOVx1NUJCOFx1NUMwNFx1NUM1MVx1NUM1NVx1NUM1MFx1NUNFRFx1NUNGRFx1NUNGQlx1NUNFQVx1NUNFOFx1NUNGMFx1NUNGNlx1NUQwMVx1NUNGNFx1NURFRVx1NUUyRFx1NUUyQlx1NUVBQlx1NUVBRFx1NUVBN1x1NUYzMVx1NUY5Mlx1NUY5MVx1NUY5MFx1NjA1OVwiXSxcbltcImFlYTFcIixcIlx1NjA2M1x1NjA2NVx1NjA1MFx1NjA1NVx1NjA2RFx1NjA2OVx1NjA2Rlx1NjA4NFx1NjA5Rlx1NjA5QVx1NjA4RFx1NjA5NFx1NjA4Q1x1NjA4NVx1NjA5Nlx1NjI0N1x1NjJGM1x1NjMwOFx1NjJGRlx1NjM0RVx1NjMzRVx1NjMyRlx1NjM1NVx1NjM0Mlx1NjM0Nlx1NjM0Rlx1NjM0OVx1NjMzQVx1NjM1MFx1NjMzRFx1NjMyQVx1NjMyQlx1NjMyOFx1NjM0RFx1NjM0Q1x1NjU0OFx1NjU0OVx1NjU5OVx1NjVDMVx1NjVDNVx1NjY0Mlx1NjY0OVx1NjY0Rlx1NjY0M1x1NjY1Mlx1NjY0Q1x1NjY0NVx1NjY0MVx1NjZGOFx1NjcxNFx1NjcxNVx1NjcxN1x1NjgyMVx1NjgzOFx1Njg0OFx1Njg0Nlx1Njg1M1x1NjgzOVx1Njg0Mlx1Njg1NFx1NjgyOVx1NjhCM1x1NjgxN1x1Njg0Q1x1Njg1MVx1NjgzRFx1NjdGNFx1Njg1MFx1Njg0MFx1NjgzQ1x1Njg0M1x1NjgyQVx1Njg0NVx1NjgxM1x1NjgxOFx1Njg0MVx1NkI4QVx1NkI4OVx1NkJCN1x1NkMyM1x1NkMyN1x1NkMyOFx1NkMyNlx1NkMyNFx1NkNGMFx1NkQ2QVx1NkQ5NVx1NkQ4OFx1NkQ4N1x1NkQ2Nlx1NkQ3OFx1NkQ3N1x1NkQ1OVx1NkQ5M1wiXSxcbltcImFmNDBcIixcIlx1NkQ2Q1x1NkQ4OVx1NkQ2RVx1NkQ1QVx1NkQ3NFx1NkQ2OVx1NkQ4Q1x1NkQ4QVx1NkQ3OVx1NkQ4NVx1NkQ2NVx1NkQ5NFx1NzBDQVx1NzBEOFx1NzBFNFx1NzBEOVx1NzBDOFx1NzBDRlx1NzIzOVx1NzI3OVx1NzJGQ1x1NzJGOVx1NzJGRFx1NzJGOFx1NzJGN1x1NzM4Nlx1NzNFRFx1NzQwOVx1NzNFRVx1NzNFMFx1NzNFQVx1NzNERVx1NzU1NFx1NzU1RFx1NzU1Q1x1NzU1QVx1NzU1OVx1NzVCRVx1NzVDNVx1NzVDN1x1NzVCMlx1NzVCM1x1NzVCRFx1NzVCQ1x1NzVCOVx1NzVDMlx1NzVCOFx1NzY4Qlx1NzZCMFx1NzZDQVx1NzZDRFx1NzZDRVx1NzcyOVx1NzcxRlx1NzcyMFx1NzcyOFx1NzdFOVx1NzgzMFx1NzgyN1x1NzgzOFx1NzgxRFx1NzgzNFx1NzgzN1wiXSxcbltcImFmYTFcIixcIlx1NzgyNVx1NzgyRFx1NzgyMFx1NzgxRlx1NzgzMlx1Nzk1NVx1Nzk1MFx1Nzk2MFx1Nzk1Rlx1Nzk1Nlx1Nzk1RVx1Nzk1RFx1Nzk1N1x1Nzk1QVx1NzlFNFx1NzlFM1x1NzlFN1x1NzlERlx1NzlFNlx1NzlFOVx1NzlEOFx1N0E4NFx1N0E4OFx1N0FEOVx1N0IwNlx1N0IxMVx1N0M4OVx1N0QyMVx1N0QxN1x1N0QwQlx1N0QwQVx1N0QyMFx1N0QyMlx1N0QxNFx1N0QxMFx1N0QxNVx1N0QxQVx1N0QxQ1x1N0QwRFx1N0QxOVx1N0QxQlx1N0YzQVx1N0Y1Rlx1N0Y5NFx1N0ZDNVx1N0ZDMVx1ODAwNlx1ODAxOFx1ODAxNVx1ODAxOVx1ODAxN1x1ODAzRFx1ODAzRlx1ODBGMVx1ODEwMlx1ODBGMFx1ODEwNVx1ODBFRFx1ODBGNFx1ODEwNlx1ODBGOFx1ODBGM1x1ODEwOFx1ODBGRFx1ODEwQVx1ODBGQ1x1ODBFRlx1ODFFRFx1ODFFQ1x1ODIwMFx1ODIxMFx1ODIyQVx1ODIyQlx1ODIyOFx1ODIyQ1x1ODJCQlx1ODMyQlx1ODM1Mlx1ODM1NFx1ODM0QVx1ODMzOFx1ODM1MFx1ODM0OVx1ODMzNVx1ODMzNFx1ODM0Rlx1ODMzMlx1ODMzOVx1ODMzNlx1ODMxN1x1ODM0MFx1ODMzMVx1ODMyOFx1ODM0M1wiXSxcbltcImIwNDBcIixcIlx1ODY1NFx1ODY4QVx1ODZBQVx1ODY5M1x1ODZBNFx1ODZBOVx1ODY4Q1x1ODZBM1x1ODY5Q1x1ODg3MFx1ODg3N1x1ODg4MVx1ODg4Mlx1ODg3RFx1ODg3OVx1OEExOFx1OEExMFx1OEEwRVx1OEEwQ1x1OEExNVx1OEEwQVx1OEExN1x1OEExM1x1OEExNlx1OEEwRlx1OEExMVx1OEM0OFx1OEM3QVx1OEM3OVx1OENBMVx1OENBMlx1OEQ3N1x1OEVBQ1x1OEVEMlx1OEVENFx1OEVDRlx1OEZCMVx1OTAwMVx1OTAwNlx1OEZGN1x1OTAwMFx1OEZGQVx1OEZGNFx1OTAwM1x1OEZGRFx1OTAwNVx1OEZGOFx1OTA5NVx1OTBFMVx1OTBERFx1OTBFMlx1OTE1Mlx1OTE0RFx1OTE0Q1x1OTFEOFx1OTFERFx1OTFEN1x1OTFEQ1x1OTFEOVx1OTU4M1x1OTY2Mlx1OTY2M1x1OTY2MVwiXSxcbltcImIwYTFcIixcIlx1OTY1Qlx1OTY1RFx1OTY2NFx1OTY1OFx1OTY1RVx1OTZCQlx1OThFMlx1OTlBQ1x1OUFBOFx1OUFEOFx1OUIyNVx1OUIzMlx1OUIzQ1x1NEU3RVx1NTA3QVx1NTA3RFx1NTA1Q1x1NTA0N1x1NTA0M1x1NTA0Q1x1NTA1QVx1NTA0OVx1NTA2NVx1NTA3Nlx1NTA0RVx1NTA1NVx1NTA3NVx1NTA3NFx1NTA3N1x1NTA0Rlx1NTAwRlx1NTA2Rlx1NTA2RFx1NTE1Q1x1NTE5NVx1NTFGMFx1NTI2QVx1NTI2Rlx1NTJEMlx1NTJEOVx1NTJEOFx1NTJENVx1NTMxMFx1NTMwRlx1NTMxOVx1NTMzRlx1NTM0MFx1NTMzRVx1NTNDM1x1NjZGQ1x1NTU0Nlx1NTU2QVx1NTU2Nlx1NTU0NFx1NTU1RVx1NTU2MVx1NTU0M1x1NTU0QVx1NTUzMVx1NTU1Nlx1NTU0Rlx1NTU1NVx1NTUyRlx1NTU2NFx1NTUzOFx1NTUyRVx1NTU1Q1x1NTUyQ1x1NTU2M1x1NTUzM1x1NTU0MVx1NTU1N1x1NTcwOFx1NTcwQlx1NTcwOVx1NTdERlx1NTgwNVx1NTgwQVx1NTgwNlx1NTdFMFx1NTdFNFx1NTdGQVx1NTgwMlx1NTgzNVx1NTdGN1x1NTdGOVx1NTkyMFx1NTk2Mlx1NUEzNlx1NUE0MVx1NUE0OVx1NUE2Nlx1NUE2QVx1NUE0MFwiXSxcbltcImIxNDBcIixcIlx1NUEzQ1x1NUE2Mlx1NUE1QVx1NUE0Nlx1NUE0QVx1NUI3MFx1NUJDN1x1NUJDNVx1NUJDNFx1NUJDMlx1NUJCRlx1NUJDNlx1NUMwOVx1NUMwOFx1NUMwN1x1NUM2MFx1NUM1Q1x1NUM1RFx1NUQwN1x1NUQwNlx1NUQwRVx1NUQxQlx1NUQxNlx1NUQyMlx1NUQxMVx1NUQyOVx1NUQxNFx1NUQxOVx1NUQyNFx1NUQyN1x1NUQxN1x1NURFMlx1NUUzOFx1NUUzNlx1NUUzM1x1NUUzN1x1NUVCN1x1NUVCOFx1NUVCNlx1NUVCNVx1NUVCRVx1NUYzNVx1NUYzN1x1NUY1N1x1NUY2Q1x1NUY2OVx1NUY2Qlx1NUY5N1x1NUY5OVx1NUY5RVx1NUY5OFx1NUZBMVx1NUZBMFx1NUY5Q1x1NjA3Rlx1NjBBM1x1NjA4OVx1NjBBMFx1NjBBOFx1NjBDQlx1NjBCNFx1NjBFNlx1NjBCRFwiXSxcbltcImIxYTFcIixcIlx1NjBDNVx1NjBCQlx1NjBCNVx1NjBEQ1x1NjBCQ1x1NjBEOFx1NjBENVx1NjBDNlx1NjBERlx1NjBCOFx1NjBEQVx1NjBDN1x1NjIxQVx1NjIxQlx1NjI0OFx1NjNBMFx1NjNBN1x1NjM3Mlx1NjM5Nlx1NjNBMlx1NjNBNVx1NjM3N1x1NjM2N1x1NjM5OFx1NjNBQVx1NjM3MVx1NjNBOVx1NjM4OVx1NjM4M1x1NjM5Qlx1NjM2Qlx1NjNBOFx1NjM4NFx1NjM4OFx1NjM5OVx1NjNBMVx1NjNBQ1x1NjM5Mlx1NjM4Rlx1NjM4MFx1NjM3Qlx1NjM2OVx1NjM2OFx1NjM3QVx1NjU1RFx1NjU1Nlx1NjU1MVx1NjU1OVx1NjU1N1x1NTU1Rlx1NjU0Rlx1NjU1OFx1NjU1NVx1NjU1NFx1NjU5Q1x1NjU5Qlx1NjVBQ1x1NjVDRlx1NjVDQlx1NjVDQ1x1NjVDRVx1NjY1RFx1NjY1QVx1NjY2NFx1NjY2OFx1NjY2Nlx1NjY1RVx1NjZGOVx1NTJEN1x1NjcxQlx1Njg4MVx1NjhBRlx1NjhBMlx1Njg5M1x1NjhCNVx1Njg3Rlx1Njg3Nlx1NjhCMVx1NjhBN1x1Njg5N1x1NjhCMFx1Njg4M1x1NjhDNFx1NjhBRFx1Njg4Nlx1Njg4NVx1Njg5NFx1Njg5RFx1NjhBOFx1Njg5Rlx1NjhBMVx1Njg4Mlx1NkIzMlx1NkJCQVwiXSxcbltcImIyNDBcIixcIlx1NkJFQlx1NkJFQ1x1NkMyQlx1NkQ4RVx1NkRCQ1x1NkRGM1x1NkREOVx1NkRCMlx1NkRFMVx1NkRDQ1x1NkRFNFx1NkRGQlx1NkRGQVx1NkUwNVx1NkRDN1x1NkRDQlx1NkRBRlx1NkREMVx1NkRBRVx1NkRERVx1NkRGOVx1NkRCOFx1NkRGN1x1NkRGNVx1NkRDNVx1NkREMlx1NkUxQVx1NkRCNVx1NkREQVx1NkRFQlx1NkREOFx1NkRFQVx1NkRGMVx1NkRFRVx1NkRFOFx1NkRDNlx1NkRDNFx1NkRBQVx1NkRFQ1x1NkRCRlx1NkRFNlx1NzBGOVx1NzEwOVx1NzEwQVx1NzBGRFx1NzBFRlx1NzIzRFx1NzI3RFx1NzI4MVx1NzMxQ1x1NzMxQlx1NzMxNlx1NzMxM1x1NzMxOVx1NzM4N1x1NzQwNVx1NzQwQVx1NzQwM1x1NzQwNlx1NzNGRVx1NzQwRFx1NzRFMFx1NzRGNlwiXSxcbltcImIyYTFcIixcIlx1NzRGN1x1NzUxQ1x1NzUyMlx1NzU2NVx1NzU2Nlx1NzU2Mlx1NzU3MFx1NzU4Rlx1NzVENFx1NzVENVx1NzVCNVx1NzVDQVx1NzVDRFx1NzY4RVx1NzZENFx1NzZEMlx1NzZEQlx1NzczN1x1NzczRVx1NzczQ1x1NzczNlx1NzczOFx1NzczQVx1Nzg2Qlx1Nzg0M1x1Nzg0RVx1Nzk2NVx1Nzk2OFx1Nzk2RFx1NzlGQlx1N0E5Mlx1N0E5NVx1N0IyMFx1N0IyOFx1N0IxQlx1N0IyQ1x1N0IyNlx1N0IxOVx1N0IxRVx1N0IyRVx1N0M5Mlx1N0M5N1x1N0M5NVx1N0Q0Nlx1N0Q0M1x1N0Q3MVx1N0QyRVx1N0QzOVx1N0QzQ1x1N0Q0MFx1N0QzMFx1N0QzM1x1N0Q0NFx1N0QyRlx1N0Q0Mlx1N0QzMlx1N0QzMVx1N0YzRFx1N0Y5RVx1N0Y5QVx1N0ZDQ1x1N0ZDRVx1N0ZEMlx1ODAxQ1x1ODA0QVx1ODA0Nlx1ODEyRlx1ODExNlx1ODEyM1x1ODEyQlx1ODEyOVx1ODEzMFx1ODEyNFx1ODIwMlx1ODIzNVx1ODIzN1x1ODIzNlx1ODIzOVx1ODM4RVx1ODM5RVx1ODM5OFx1ODM3OFx1ODNBMlx1ODM5Nlx1ODNCRFx1ODNBQlx1ODM5Mlx1ODM4QVx1ODM5M1x1ODM4OVx1ODNBMFx1ODM3N1x1ODM3Qlx1ODM3Q1wiXSxcbltcImIzNDBcIixcIlx1ODM4Nlx1ODNBN1x1ODY1NVx1NUY2QVx1ODZDN1x1ODZDMFx1ODZCNlx1ODZDNFx1ODZCNVx1ODZDNlx1ODZDQlx1ODZCMVx1ODZBRlx1ODZDOVx1ODg1M1x1ODg5RVx1ODg4OFx1ODhBQlx1ODg5Mlx1ODg5Nlx1ODg4RFx1ODg4Qlx1ODk5M1x1ODk4Rlx1OEEyQVx1OEExRFx1OEEyM1x1OEEyNVx1OEEzMVx1OEEyRFx1OEExRlx1OEExQlx1OEEyMlx1OEM0OVx1OEM1QVx1OENBOVx1OENBQ1x1OENBQlx1OENBOFx1OENBQVx1OENBN1x1OEQ2N1x1OEQ2Nlx1OERCRVx1OERCQVx1OEVEQlx1OEVERlx1OTAxOVx1OTAwRFx1OTAxQVx1OTAxN1x1OTAyM1x1OTAxRlx1OTAxRFx1OTAxMFx1OTAxNVx1OTAxRVx1OTAyMFx1OTAwRlx1OTAyMlx1OTAxNlx1OTAxQlx1OTAxNFwiXSxcbltcImIzYTFcIixcIlx1OTBFOFx1OTBFRFx1OTBGRFx1OTE1N1x1OTFDRVx1OTFGNVx1OTFFNlx1OTFFM1x1OTFFN1x1OTFFRFx1OTFFOVx1OTU4OVx1OTY2QVx1OTY3NVx1OTY3M1x1OTY3OFx1OTY3MFx1OTY3NFx1OTY3Nlx1OTY3N1x1OTY2Q1x1OTZDMFx1OTZFQVx1OTZFOVx1N0FFMFx1N0FERlx1OTgwMlx1OTgwM1x1OUI1QVx1OUNFNVx1OUU3NVx1OUU3Rlx1OUVBNVx1OUVCQlx1NTBBMlx1NTA4RFx1NTA4NVx1NTA5OVx1NTA5MVx1NTA4MFx1NTA5Nlx1NTA5OFx1NTA5QVx1NjcwMFx1NTFGMVx1NTI3Mlx1NTI3NFx1NTI3NVx1NTI2OVx1NTJERVx1NTJERFx1NTJEQlx1NTM1QVx1NTNBNVx1NTU3Qlx1NTU4MFx1NTVBN1x1NTU3Q1x1NTU4QVx1NTU5RFx1NTU5OFx1NTU4Mlx1NTU5Q1x1NTVBQVx1NTU5NFx1NTU4N1x1NTU4Qlx1NTU4M1x1NTVCM1x1NTVBRVx1NTU5Rlx1NTUzRVx1NTVCMlx1NTU5QVx1NTVCQlx1NTVBQ1x1NTVCMVx1NTU3RVx1NTU4OVx1NTVBQlx1NTU5OVx1NTcwRFx1NTgyRlx1NTgyQVx1NTgzNFx1NTgyNFx1NTgzMFx1NTgzMVx1NTgyMVx1NTgxRFx1NTgyMFx1NThGOVx1NThGQVx1NTk2MFwiXSxcbltcImI0NDBcIixcIlx1NUE3N1x1NUE5QVx1NUE3Rlx1NUE5Mlx1NUE5Qlx1NUFBN1x1NUI3M1x1NUI3MVx1NUJEMlx1NUJDQ1x1NUJEM1x1NUJEMFx1NUMwQVx1NUMwQlx1NUMzMVx1NUQ0Q1x1NUQ1MFx1NUQzNFx1NUQ0N1x1NURGRFx1NUU0NVx1NUUzRFx1NUU0MFx1NUU0M1x1NUU3RVx1NUVDQVx1NUVDMVx1NUVDMlx1NUVDNFx1NUYzQ1x1NUY2RFx1NUZBOVx1NUZBQVx1NUZBOFx1NjBEMVx1NjBFMVx1NjBCMlx1NjBCNlx1NjBFMFx1NjExQ1x1NjEyM1x1NjBGQVx1NjExNVx1NjBGMFx1NjBGQlx1NjBGNFx1NjE2OFx1NjBGMVx1NjEwRVx1NjBGNlx1NjEwOVx1NjEwMFx1NjExMlx1NjIxRlx1NjI0OVx1NjNBM1x1NjM4Q1x1NjNDRlx1NjNDMFx1NjNFOVx1NjNDOVx1NjNDNlx1NjNDRFwiXSxcbltcImI0YTFcIixcIlx1NjNEMlx1NjNFM1x1NjNEMFx1NjNFMVx1NjNENlx1NjNFRFx1NjNFRVx1NjM3Nlx1NjNGNFx1NjNFQVx1NjNEQlx1NjQ1Mlx1NjNEQVx1NjNGOVx1NjU1RVx1NjU2Nlx1NjU2Mlx1NjU2M1x1NjU5MVx1NjU5MFx1NjVBRlx1NjY2RVx1NjY3MFx1NjY3NFx1NjY3Nlx1NjY2Rlx1NjY5MVx1NjY3QVx1NjY3RVx1NjY3N1x1NjZGRVx1NjZGRlx1NjcxRlx1NjcxRFx1NjhGQVx1NjhENVx1NjhFMFx1NjhEOFx1NjhEN1x1NjkwNVx1NjhERlx1NjhGNVx1NjhFRVx1NjhFN1x1NjhGOVx1NjhEMlx1NjhGMlx1NjhFM1x1NjhDQlx1NjhDRFx1NjkwRFx1NjkxMlx1NjkwRVx1NjhDOVx1NjhEQVx1Njk2RVx1NjhGQlx1NkIzRVx1NkIzQVx1NkIzRFx1NkI5OFx1NkI5Nlx1NkJCQ1x1NkJFRlx1NkMyRVx1NkMyRlx1NkMyQ1x1NkUyRlx1NkUzOFx1NkU1NFx1NkUyMVx1NkUzMlx1NkU2N1x1NkU0QVx1NkUyMFx1NkUyNVx1NkUyM1x1NkUxQlx1NkU1Qlx1NkU1OFx1NkUyNFx1NkU1Nlx1NkU2RVx1NkUyRFx1NkUyNlx1NkU2Rlx1NkUzNFx1NkU0RFx1NkUzQVx1NkUyQ1x1NkU0M1x1NkUxRFx1NkUzRVx1NkVDQlwiXSxcbltcImI1NDBcIixcIlx1NkU4OVx1NkUxOVx1NkU0RVx1NkU2M1x1NkU0NFx1NkU3Mlx1NkU2OVx1NkU1Rlx1NzExOVx1NzExQVx1NzEyNlx1NzEzMFx1NzEyMVx1NzEzNlx1NzE2RVx1NzExQ1x1NzI0Q1x1NzI4NFx1NzI4MFx1NzMzNlx1NzMyNVx1NzMzNFx1NzMyOVx1NzQzQVx1NzQyQVx1NzQzM1x1NzQyMlx1NzQyNVx1NzQzNVx1NzQzNlx1NzQzNFx1NzQyRlx1NzQxQlx1NzQyNlx1NzQyOFx1NzUyNVx1NzUyNlx1NzU2Qlx1NzU2QVx1NzVFMlx1NzVEQlx1NzVFM1x1NzVEOVx1NzVEOFx1NzVERVx1NzVFMFx1NzY3Qlx1NzY3Q1x1NzY5Nlx1NzY5M1x1NzZCNFx1NzZEQ1x1Nzc0Rlx1NzdFRFx1Nzg1RFx1Nzg2Q1x1Nzg2Rlx1N0EwRFx1N0EwOFx1N0EwQlx1N0EwNVx1N0EwMFx1N0E5OFwiXSxcbltcImI1YTFcIixcIlx1N0E5N1x1N0E5Nlx1N0FFNVx1N0FFM1x1N0I0OVx1N0I1Nlx1N0I0Nlx1N0I1MFx1N0I1Mlx1N0I1NFx1N0I0RFx1N0I0Qlx1N0I0Rlx1N0I1MVx1N0M5Rlx1N0NBNVx1N0Q1RVx1N0Q1MFx1N0Q2OFx1N0Q1NVx1N0QyQlx1N0Q2RVx1N0Q3Mlx1N0Q2MVx1N0Q2Nlx1N0Q2Mlx1N0Q3MFx1N0Q3M1x1NTU4NFx1N0ZENFx1N0ZENVx1ODAwQlx1ODA1Mlx1ODA4NVx1ODE1NVx1ODE1NFx1ODE0Qlx1ODE1MVx1ODE0RVx1ODEzOVx1ODE0Nlx1ODEzRVx1ODE0Q1x1ODE1M1x1ODE3NFx1ODIxMlx1ODIxQ1x1ODNFOVx1ODQwM1x1ODNGOFx1ODQwRFx1ODNFMFx1ODNDNVx1ODQwQlx1ODNDMVx1ODNFRlx1ODNGMVx1ODNGNFx1ODQ1N1x1ODQwQVx1ODNGMFx1ODQwQ1x1ODNDQ1x1ODNGRFx1ODNGMlx1ODNDQVx1ODQzOFx1ODQwRVx1ODQwNFx1ODNEQ1x1ODQwN1x1ODNENFx1ODNERlx1ODY1Qlx1ODZERlx1ODZEOVx1ODZFRFx1ODZENFx1ODZEQlx1ODZFNFx1ODZEMFx1ODZERVx1ODg1N1x1ODhDMVx1ODhDMlx1ODhCMVx1ODk4M1x1ODk5Nlx1OEEzQlx1OEE2MFx1OEE1NVx1OEE1RVx1OEEzQ1x1OEE0MVwiXSxcbltcImI2NDBcIixcIlx1OEE1NFx1OEE1Qlx1OEE1MFx1OEE0Nlx1OEEzNFx1OEEzQVx1OEEzNlx1OEE1Nlx1OEM2MVx1OEM4Mlx1OENBRlx1OENCQ1x1OENCM1x1OENCRFx1OENDMVx1OENCQlx1OENDMFx1OENCNFx1OENCN1x1OENCNlx1OENCRlx1OENCOFx1OEQ4QVx1OEQ4NVx1OEQ4MVx1OERDRVx1OERERFx1OERDQlx1OEREQVx1OEREMVx1OERDQ1x1OEREQlx1OERDNlx1OEVGQlx1OEVGOFx1OEVGQ1x1OEY5Q1x1OTAyRVx1OTAzNVx1OTAzMVx1OTAzOFx1OTAzMlx1OTAzNlx1OTEwMlx1OTBGNVx1OTEwOVx1OTBGRVx1OTE2M1x1OTE2NVx1OTFDRlx1OTIxNFx1OTIxNVx1OTIyM1x1OTIwOVx1OTIxRVx1OTIwRFx1OTIxMFx1OTIwN1x1OTIxMVx1OTU5NFx1OTU4Rlx1OTU4Qlx1OTU5MVwiXSxcbltcImI2YTFcIixcIlx1OTU5M1x1OTU5Mlx1OTU4RVx1OTY4QVx1OTY4RVx1OTY4Qlx1OTY3RFx1OTY4NVx1OTY4Nlx1OTY4RFx1OTY3Mlx1OTY4NFx1OTZDMVx1OTZDNVx1OTZDNFx1OTZDNlx1OTZDN1x1OTZFRlx1OTZGMlx1OTdDQ1x1OTgwNVx1OTgwNlx1OTgwOFx1OThFN1x1OThFQVx1OThFRlx1OThFOVx1OThGMlx1OThFRFx1OTlBRVx1OTlBRFx1OUVDM1x1OUVDRFx1OUVEMVx1NEU4Mlx1NTBBRFx1NTBCNVx1NTBCMlx1NTBCM1x1NTBDNVx1NTBCRVx1NTBBQ1x1NTBCN1x1NTBCQlx1NTBBRlx1NTBDN1x1NTI3Rlx1NTI3N1x1NTI3RFx1NTJERlx1NTJFNlx1NTJFNFx1NTJFMlx1NTJFM1x1NTMyRlx1NTVERlx1NTVFOFx1NTVEM1x1NTVFNlx1NTVDRVx1NTVEQ1x1NTVDN1x1NTVEMVx1NTVFM1x1NTVFNFx1NTVFRlx1NTVEQVx1NTVFMVx1NTVDNVx1NTVDNlx1NTVFNVx1NTVDOVx1NTcxMlx1NTcxM1x1NTg1RVx1NTg1MVx1NTg1OFx1NTg1N1x1NTg1QVx1NTg1NFx1NTg2Qlx1NTg0Q1x1NTg2RFx1NTg0QVx1NTg2Mlx1NTg1Mlx1NTg0Qlx1NTk2N1x1NUFDMVx1NUFDOVx1NUFDQ1x1NUFCRVx1NUFCRFx1NUFCQ1wiXSxcbltcImI3NDBcIixcIlx1NUFCM1x1NUFDMlx1NUFCMlx1NUQ2OVx1NUQ2Rlx1NUU0Q1x1NUU3OVx1NUVDOVx1NUVDOFx1NUYxMlx1NUY1OVx1NUZBQ1x1NUZBRVx1NjExQVx1NjEwRlx1NjE0OFx1NjExRlx1NjBGM1x1NjExQlx1NjBGOVx1NjEwMVx1NjEwOFx1NjE0RVx1NjE0Q1x1NjE0NFx1NjE0RFx1NjEzRVx1NjEzNFx1NjEyN1x1NjEwRFx1NjEwNlx1NjEzN1x1NjIyMVx1NjIyMlx1NjQxM1x1NjQzRVx1NjQxRVx1NjQyQVx1NjQyRFx1NjQzRFx1NjQyQ1x1NjQwRlx1NjQxQ1x1NjQxNFx1NjQwRFx1NjQzNlx1NjQxNlx1NjQxN1x1NjQwNlx1NjU2Q1x1NjU5Rlx1NjVCMFx1NjY5N1x1NjY4OVx1NjY4N1x1NjY4OFx1NjY5Nlx1NjY4NFx1NjY5OFx1NjY4RFx1NjcwM1x1Njk5NFx1Njk2RFwiXSxcbltcImI3YTFcIixcIlx1Njk1QVx1Njk3N1x1Njk2MFx1Njk1NFx1Njk3NVx1NjkzMFx1Njk4Mlx1Njk0QVx1Njk2OFx1Njk2Qlx1Njk1RVx1Njk1M1x1Njk3OVx1Njk4Nlx1Njk1RFx1Njk2M1x1Njk1Qlx1NkI0N1x1NkI3Mlx1NkJDMFx1NkJCRlx1NkJEM1x1NkJGRFx1NkVBMlx1NkVBRlx1NkVEM1x1NkVCNlx1NkVDMlx1NkU5MFx1NkU5RFx1NkVDN1x1NkVDNVx1NkVBNVx1NkU5OFx1NkVCQ1x1NkVCQVx1NkVBQlx1NkVEMVx1NkU5Nlx1NkU5Q1x1NkVDNFx1NkVENFx1NkVBQVx1NkVBN1x1NkVCNFx1NzE0RVx1NzE1OVx1NzE2OVx1NzE2NFx1NzE0OVx1NzE2N1x1NzE1Q1x1NzE2Q1x1NzE2Nlx1NzE0Q1x1NzE2NVx1NzE1RVx1NzE0Nlx1NzE2OFx1NzE1Nlx1NzIzQVx1NzI1Mlx1NzMzN1x1NzM0NVx1NzMzRlx1NzMzRVx1NzQ2Rlx1NzQ1QVx1NzQ1NVx1NzQ1Rlx1NzQ1RVx1NzQ0MVx1NzQzRlx1NzQ1OVx1NzQ1Qlx1NzQ1Q1x1NzU3Nlx1NzU3OFx1NzYwMFx1NzVGMFx1NzYwMVx1NzVGMlx1NzVGMVx1NzVGQVx1NzVGRlx1NzVGNFx1NzVGM1x1NzZERVx1NzZERlx1Nzc1Qlx1Nzc2Qlx1Nzc2Nlx1Nzc1RVx1Nzc2M1wiXSxcbltcImI4NDBcIixcIlx1Nzc3OVx1Nzc2QVx1Nzc2Q1x1Nzc1Q1x1Nzc2NVx1Nzc2OFx1Nzc2Mlx1NzdFRVx1Nzg4RVx1NzhCMFx1Nzg5N1x1Nzg5OFx1Nzg4Q1x1Nzg4OVx1Nzg3Q1x1Nzg5MVx1Nzg5M1x1Nzg3Rlx1Nzk3QVx1Nzk3Rlx1Nzk4MVx1ODQyQ1x1NzlCRFx1N0ExQ1x1N0ExQVx1N0EyMFx1N0ExNFx1N0ExRlx1N0ExRVx1N0E5Rlx1N0FBMFx1N0I3N1x1N0JDMFx1N0I2MFx1N0I2RVx1N0I2N1x1N0NCMVx1N0NCM1x1N0NCNVx1N0Q5M1x1N0Q3OVx1N0Q5MVx1N0Q4MVx1N0Q4Rlx1N0Q1Qlx1N0Y2RVx1N0Y2OVx1N0Y2QVx1N0Y3Mlx1N0ZBOVx1N0ZBOFx1N0ZBNFx1ODA1Nlx1ODA1OFx1ODA4Nlx1ODA4NFx1ODE3MVx1ODE3MFx1ODE3OFx1ODE2NVx1ODE2RVx1ODE3M1x1ODE2QlwiXSxcbltcImI4YTFcIixcIlx1ODE3OVx1ODE3QVx1ODE2Nlx1ODIwNVx1ODI0N1x1ODQ4Mlx1ODQ3N1x1ODQzRFx1ODQzMVx1ODQ3NVx1ODQ2Nlx1ODQ2Qlx1ODQ0OVx1ODQ2Q1x1ODQ1Qlx1ODQzQ1x1ODQzNVx1ODQ2MVx1ODQ2M1x1ODQ2OVx1ODQ2RFx1ODQ0Nlx1ODY1RVx1ODY1Q1x1ODY1Rlx1ODZGOVx1ODcxM1x1ODcwOFx1ODcwN1x1ODcwMFx1ODZGRVx1ODZGQlx1ODcwMlx1ODcwM1x1ODcwNlx1ODcwQVx1ODg1OVx1ODhERlx1ODhENFx1ODhEOVx1ODhEQ1x1ODhEOFx1ODhERFx1ODhFMVx1ODhDQVx1ODhENVx1ODhEMlx1ODk5Q1x1ODlFM1x1OEE2Qlx1OEE3Mlx1OEE3M1x1OEE2Nlx1OEE2OVx1OEE3MFx1OEE4N1x1OEE3Q1x1OEE2M1x1OEFBMFx1OEE3MVx1OEE4NVx1OEE2RFx1OEE2Mlx1OEE2RVx1OEE2Q1x1OEE3OVx1OEE3Qlx1OEEzRVx1OEE2OFx1OEM2Mlx1OEM4QVx1OEM4OVx1OENDQVx1OENDN1x1OENDOFx1OENDNFx1OENCMlx1OENDM1x1OENDMlx1OENDNVx1OERFMVx1OERERlx1OERFOFx1OERFRlx1OERGM1x1OERGQVx1OERFQVx1OERFNFx1OERFNlx1OEVCMlx1OEYwM1x1OEYwOVx1OEVGRVx1OEYwQVwiXSxcbltcImI5NDBcIixcIlx1OEY5Rlx1OEZCMlx1OTA0Qlx1OTA0QVx1OTA1M1x1OTA0Mlx1OTA1NFx1OTAzQ1x1OTA1NVx1OTA1MFx1OTA0N1x1OTA0Rlx1OTA0RVx1OTA0RFx1OTA1MVx1OTAzRVx1OTA0MVx1OTExMlx1OTExN1x1OTE2Q1x1OTE2QVx1OTE2OVx1OTFDOVx1OTIzN1x1OTI1N1x1OTIzOFx1OTIzRFx1OTI0MFx1OTIzRVx1OTI1Qlx1OTI0Qlx1OTI2NFx1OTI1MVx1OTIzNFx1OTI0OVx1OTI0RFx1OTI0NVx1OTIzOVx1OTIzRlx1OTI1QVx1OTU5OFx1OTY5OFx1OTY5NFx1OTY5NVx1OTZDRFx1OTZDQlx1OTZDOVx1OTZDQVx1OTZGN1x1OTZGQlx1OTZGOVx1OTZGNlx1OTc1Nlx1OTc3NFx1OTc3Nlx1OTgxMFx1OTgxMVx1OTgxM1x1OTgwQVx1OTgxMlx1OTgwQ1x1OThGQ1x1OThGNFwiXSxcbltcImI5YTFcIixcIlx1OThGRFx1OThGRVx1OTlCM1x1OTlCMVx1OTlCNFx1OUFFMVx1OUNFOVx1OUU4Mlx1OUYwRVx1OUYxM1x1OUYyMFx1NTBFN1x1NTBFRVx1NTBFNVx1NTBENlx1NTBFRFx1NTBEQVx1NTBENVx1NTBDRlx1NTBEMVx1NTBGMVx1NTBDRVx1NTBFOVx1NTE2Mlx1NTFGM1x1NTI4M1x1NTI4Mlx1NTMzMVx1NTNBRFx1NTVGRVx1NTYwMFx1NTYxQlx1NTYxN1x1NTVGRFx1NTYxNFx1NTYwNlx1NTYwOVx1NTYwRFx1NTYwRVx1NTVGN1x1NTYxNlx1NTYxRlx1NTYwOFx1NTYxMFx1NTVGNlx1NTcxOFx1NTcxNlx1NTg3NVx1NTg3RVx1NTg4M1x1NTg5M1x1NTg4QVx1NTg3OVx1NTg4NVx1NTg3RFx1NThGRFx1NTkyNVx1NTkyMlx1NTkyNFx1NTk2QVx1NTk2OVx1NUFFMVx1NUFFNlx1NUFFOVx1NUFEN1x1NUFENlx1NUFEOFx1NUFFM1x1NUI3NVx1NUJERVx1NUJFN1x1NUJFMVx1NUJFNVx1NUJFNlx1NUJFOFx1NUJFMlx1NUJFNFx1NUJERlx1NUMwRFx1NUM2Mlx1NUQ4NFx1NUQ4N1x1NUU1Qlx1NUU2M1x1NUU1NVx1NUU1N1x1NUU1NFx1NUVEM1x1NUVENlx1NUYwQVx1NUY0Nlx1NUY3MFx1NUZCOVx1NjE0N1wiXSxcbltcImJhNDBcIixcIlx1NjEzRlx1NjE0Qlx1NjE3N1x1NjE2Mlx1NjE2M1x1NjE1Rlx1NjE1QVx1NjE1OFx1NjE3NVx1NjIyQVx1NjQ4N1x1NjQ1OFx1NjQ1NFx1NjRBNFx1NjQ3OFx1NjQ1Rlx1NjQ3QVx1NjQ1MVx1NjQ2N1x1NjQzNFx1NjQ2RFx1NjQ3Qlx1NjU3Mlx1NjVBMVx1NjVEN1x1NjVENlx1NjZBMlx1NjZBOFx1NjY5RFx1Njk5Q1x1NjlBOFx1Njk5NVx1NjlDMVx1NjlBRVx1NjlEM1x1NjlDQlx1Njk5Qlx1NjlCN1x1NjlCQlx1NjlBQlx1NjlCNFx1NjlEMFx1NjlDRFx1NjlBRFx1NjlDQ1x1NjlBNlx1NjlDM1x1NjlBM1x1NkI0OVx1NkI0Q1x1NkMzM1x1NkYzM1x1NkYxNFx1NkVGRVx1NkYxM1x1NkVGNFx1NkYyOVx1NkYzRVx1NkYyMFx1NkYyQ1x1NkYwRlx1NkYwMlx1NkYyMlwiXSxcbltcImJhYTFcIixcIlx1NkVGRlx1NkVFRlx1NkYwNlx1NkYzMVx1NkYzOFx1NkYzMlx1NkYyM1x1NkYxNVx1NkYyQlx1NkYyRlx1NkY4OFx1NkYyQVx1NkVFQ1x1NkYwMVx1NkVGMlx1NkVDQ1x1NkVGN1x1NzE5NFx1NzE5OVx1NzE3RFx1NzE4QVx1NzE4NFx1NzE5Mlx1NzIzRVx1NzI5Mlx1NzI5Nlx1NzM0NFx1NzM1MFx1NzQ2NFx1NzQ2M1x1NzQ2QVx1NzQ3MFx1NzQ2RFx1NzUwNFx1NzU5MVx1NzYyN1x1NzYwRFx1NzYwQlx1NzYwOVx1NzYxM1x1NzZFMVx1NzZFM1x1Nzc4NFx1Nzc3RFx1Nzc3Rlx1Nzc2MVx1NzhDMVx1Nzg5Rlx1NzhBN1x1NzhCM1x1NzhBOVx1NzhBM1x1Nzk4RVx1Nzk4Rlx1Nzk4RFx1N0EyRVx1N0EzMVx1N0FBQVx1N0FBOVx1N0FFRFx1N0FFRlx1N0JBMVx1N0I5NVx1N0I4Qlx1N0I3NVx1N0I5N1x1N0I5RFx1N0I5NFx1N0I4Rlx1N0JCOFx1N0I4N1x1N0I4NFx1N0NCOVx1N0NCRFx1N0NCRVx1N0RCQlx1N0RCMFx1N0Q5Q1x1N0RCRFx1N0RCRVx1N0RBMFx1N0RDQVx1N0RCNFx1N0RCMlx1N0RCMVx1N0RCQVx1N0RBMlx1N0RCRlx1N0RCNVx1N0RCOFx1N0RBRFx1N0REMlx1N0RDN1x1N0RBQ1wiXSxcbltcImJiNDBcIixcIlx1N0Y3MFx1N0ZFMFx1N0ZFMVx1N0ZERlx1ODA1RVx1ODA1QVx1ODA4N1x1ODE1MFx1ODE4MFx1ODE4Rlx1ODE4OFx1ODE4QVx1ODE3Rlx1ODE4Mlx1ODFFN1x1ODFGQVx1ODIwN1x1ODIxNFx1ODIxRVx1ODI0Qlx1ODRDOVx1ODRCRlx1ODRDNlx1ODRDNFx1ODQ5OVx1ODQ5RVx1ODRCMlx1ODQ5Q1x1ODRDQlx1ODRCOFx1ODRDMFx1ODREM1x1ODQ5MFx1ODRCQ1x1ODREMVx1ODRDQVx1ODczRlx1ODcxQ1x1ODczQlx1ODcyMlx1ODcyNVx1ODczNFx1ODcxOFx1ODc1NVx1ODczN1x1ODcyOVx1ODhGM1x1ODkwMlx1ODhGNFx1ODhGOVx1ODhGOFx1ODhGRFx1ODhFOFx1ODkxQVx1ODhFRlx1OEFBNlx1OEE4Q1x1OEE5RVx1OEFBM1x1OEE4RFx1OEFBMVx1OEE5M1x1OEFBNFwiXSxcbltcImJiYTFcIixcIlx1OEFBQVx1OEFBNVx1OEFBOFx1OEE5OFx1OEE5MVx1OEE5QVx1OEFBN1x1OEM2QVx1OEM4RFx1OEM4Q1x1OENEM1x1OENEMVx1OENEMlx1OEQ2Qlx1OEQ5OVx1OEQ5NVx1OERGQ1x1OEYxNFx1OEYxMlx1OEYxNVx1OEYxM1x1OEZBM1x1OTA2MFx1OTA1OFx1OTA1Q1x1OTA2M1x1OTA1OVx1OTA1RVx1OTA2Mlx1OTA1RFx1OTA1Qlx1OTExOVx1OTExOFx1OTExRVx1OTE3NVx1OTE3OFx1OTE3N1x1OTE3NFx1OTI3OFx1OTI4MFx1OTI4NVx1OTI5OFx1OTI5Nlx1OTI3Qlx1OTI5M1x1OTI5Q1x1OTJBOFx1OTI3Q1x1OTI5MVx1OTVBMVx1OTVBOFx1OTVBOVx1OTVBM1x1OTVBNVx1OTVBNFx1OTY5OVx1OTY5Q1x1OTY5Qlx1OTZDQ1x1OTZEMlx1OTcwMFx1OTc3Q1x1OTc4NVx1OTdGNlx1OTgxN1x1OTgxOFx1OThBRlx1OThCMVx1OTkwM1x1OTkwNVx1OTkwQ1x1OTkwOVx1OTlDMVx1OUFBRlx1OUFCMFx1OUFFNlx1OUI0MVx1OUI0Mlx1OUNGNFx1OUNGNlx1OUNGM1x1OUVCQ1x1OUYzQlx1OUY0QVx1NTEwNFx1NTEwMFx1NTBGQlx1NTBGNVx1NTBGOVx1NTEwMlx1NTEwOFx1NTEwOVx1NTEwNVx1NTFEQ1wiXSxcbltcImJjNDBcIixcIlx1NTI4N1x1NTI4OFx1NTI4OVx1NTI4RFx1NTI4QVx1NTJGMFx1NTNCMlx1NTYyRVx1NTYzQlx1NTYzOVx1NTYzMlx1NTYzRlx1NTYzNFx1NTYyOVx1NTY1M1x1NTY0RVx1NTY1N1x1NTY3NFx1NTYzNlx1NTYyRlx1NTYzMFx1NTg4MFx1NTg5Rlx1NTg5RVx1NThCM1x1NTg5Q1x1NThBRVx1NThBOVx1NThBNlx1NTk2RFx1NUIwOVx1NUFGQlx1NUIwQlx1NUFGNVx1NUIwQ1x1NUIwOFx1NUJFRVx1NUJFQ1x1NUJFOVx1NUJFQlx1NUM2NFx1NUM2NVx1NUQ5RFx1NUQ5NFx1NUU2Mlx1NUU1Rlx1NUU2MVx1NUVFMlx1NUVEQVx1NUVERlx1NUVERFx1NUVFM1x1NUVFMFx1NUY0OFx1NUY3MVx1NUZCN1x1NUZCNVx1NjE3Nlx1NjE2N1x1NjE2RVx1NjE1RFx1NjE1NVx1NjE4MlwiXSxcbltcImJjYTFcIixcIlx1NjE3Q1x1NjE3MFx1NjE2Qlx1NjE3RVx1NjFBN1x1NjE5MFx1NjFBQlx1NjE4RVx1NjFBQ1x1NjE5QVx1NjFBNFx1NjE5NFx1NjFBRVx1NjIyRVx1NjQ2OVx1NjQ2Rlx1NjQ3OVx1NjQ5RVx1NjRCMlx1NjQ4OFx1NjQ5MFx1NjRCMFx1NjRBNVx1NjQ5M1x1NjQ5NVx1NjRBOVx1NjQ5Mlx1NjRBRVx1NjRBRFx1NjRBQlx1NjQ5QVx1NjRBQ1x1NjQ5OVx1NjRBMlx1NjRCM1x1NjU3NVx1NjU3N1x1NjU3OFx1NjZBRVx1NjZBQlx1NjZCNFx1NjZCMVx1NkEyM1x1NkExRlx1NjlFOFx1NkEwMVx1NkExRVx1NkExOVx1NjlGRFx1NkEyMVx1NkExM1x1NkEwQVx1NjlGM1x1NkEwMlx1NkEwNVx1NjlFRFx1NkExMVx1NkI1MFx1NkI0RVx1NkJBNFx1NkJDNVx1NkJDNlx1NkYzRlx1NkY3Q1x1NkY4NFx1NkY1MVx1NkY2Nlx1NkY1NFx1NkY4Nlx1NkY2RFx1NkY1Qlx1NkY3OFx1NkY2RVx1NkY4RVx1NkY3QVx1NkY3MFx1NkY2NFx1NkY5N1x1NkY1OFx1NkVENVx1NkY2Rlx1NkY2MFx1NkY1Rlx1NzE5Rlx1NzFBQ1x1NzFCMVx1NzFBOFx1NzI1Nlx1NzI5Qlx1NzM0RVx1NzM1N1x1NzQ2OVx1NzQ4Qlx1NzQ4M1wiXSxcbltcImJkNDBcIixcIlx1NzQ3RVx1NzQ4MFx1NzU3Rlx1NzYyMFx1NzYyOVx1NzYxRlx1NzYyNFx1NzYyNlx1NzYyMVx1NzYyMlx1NzY5QVx1NzZCQVx1NzZFNFx1Nzc4RVx1Nzc4N1x1Nzc4Q1x1Nzc5MVx1Nzc4Qlx1NzhDQlx1NzhDNVx1NzhCQVx1NzhDQVx1NzhCRVx1NzhENVx1NzhCQ1x1NzhEMFx1N0EzRlx1N0EzQ1x1N0E0MFx1N0EzRFx1N0EzN1x1N0EzQlx1N0FBRlx1N0FBRVx1N0JBRFx1N0JCMVx1N0JDNFx1N0JCNFx1N0JDNlx1N0JDN1x1N0JDMVx1N0JBMFx1N0JDQ1x1N0NDQVx1N0RFMFx1N0RGNFx1N0RFRlx1N0RGQlx1N0REOFx1N0RFQ1x1N0RERFx1N0RFOFx1N0RFM1x1N0REQVx1N0RERVx1N0RFOVx1N0Q5RVx1N0REOVx1N0RGMlx1N0RGOVx1N0Y3NVx1N0Y3N1x1N0ZBRlwiXSxcbltcImJkYTFcIixcIlx1N0ZFOVx1ODAyNlx1ODE5Qlx1ODE5Q1x1ODE5RFx1ODFBMFx1ODE5QVx1ODE5OFx1ODUxN1x1ODUzRFx1ODUxQVx1ODRFRVx1ODUyQ1x1ODUyRFx1ODUxM1x1ODUxMVx1ODUyM1x1ODUyMVx1ODUxNFx1ODRFQ1x1ODUyNVx1ODRGRlx1ODUwNlx1ODc4Mlx1ODc3NFx1ODc3Nlx1ODc2MFx1ODc2Nlx1ODc3OFx1ODc2OFx1ODc1OVx1ODc1N1x1ODc0Q1x1ODc1M1x1ODg1Qlx1ODg1RFx1ODkxMFx1ODkwN1x1ODkxMlx1ODkxM1x1ODkxNVx1ODkwQVx1OEFCQ1x1OEFEMlx1OEFDN1x1OEFDNFx1OEE5NVx1OEFDQlx1OEFGOFx1OEFCMlx1OEFDOVx1OEFDMlx1OEFCRlx1OEFCMFx1OEFENlx1OEFDRFx1OEFCNlx1OEFCOVx1OEFEQlx1OEM0Q1x1OEM0RVx1OEM2Q1x1OENFMFx1OENERVx1OENFNlx1OENFNFx1OENFQ1x1OENFRFx1OENFMlx1OENFM1x1OENEQ1x1OENFQVx1OENFMVx1OEQ2RFx1OEQ5Rlx1OERBM1x1OEUyQlx1OEUxMFx1OEUxRFx1OEUyMlx1OEUwRlx1OEUyOVx1OEUxRlx1OEUyMVx1OEUxRVx1OEVCQVx1OEYxRFx1OEYxQlx1OEYxRlx1OEYyOVx1OEYyNlx1OEYyQVx1OEYxQ1x1OEYxRVwiXSxcbltcImJlNDBcIixcIlx1OEYyNVx1OTA2OVx1OTA2RVx1OTA2OFx1OTA2RFx1OTA3N1x1OTEzMFx1OTEyRFx1OTEyN1x1OTEzMVx1OTE4N1x1OTE4OVx1OTE4Qlx1OTE4M1x1OTJDNVx1OTJCQlx1OTJCN1x1OTJFQVx1OTJBQ1x1OTJFNFx1OTJDMVx1OTJCM1x1OTJCQ1x1OTJEMlx1OTJDN1x1OTJGMFx1OTJCMlx1OTVBRFx1OTVCMVx1OTcwNFx1OTcwNlx1OTcwN1x1OTcwOVx1OTc2MFx1OTc4RFx1OTc4Qlx1OTc4Rlx1OTgyMVx1OTgyQlx1OTgxQ1x1OThCM1x1OTkwQVx1OTkxM1x1OTkxMlx1OTkxOFx1OTlERFx1OTlEMFx1OTlERlx1OTlEQlx1OTlEMVx1OTlENVx1OTlEMlx1OTlEOVx1OUFCN1x1OUFFRVx1OUFFRlx1OUIyN1x1OUI0NVx1OUI0NFx1OUI3N1x1OUI2Rlx1OUQwNlx1OUQwOVwiXSxcbltcImJlYTFcIixcIlx1OUQwM1x1OUVBOVx1OUVCRVx1OUVDRVx1NThBOFx1OUY1Mlx1NTExMlx1NTExOFx1NTExNFx1NTExMFx1NTExNVx1NTE4MFx1NTFBQVx1NTFERFx1NTI5MVx1NTI5M1x1NTJGM1x1NTY1OVx1NTY2Qlx1NTY3OVx1NTY2OVx1NTY2NFx1NTY3OFx1NTY2QVx1NTY2OFx1NTY2NVx1NTY3MVx1NTY2Rlx1NTY2Q1x1NTY2Mlx1NTY3Nlx1NThDMVx1NThCRVx1NThDN1x1NThDNVx1NTk2RVx1NUIxRFx1NUIzNFx1NUI3OFx1NUJGMFx1NUMwRVx1NUY0QVx1NjFCMlx1NjE5MVx1NjFBOVx1NjE4QVx1NjFDRFx1NjFCNlx1NjFCRVx1NjFDQVx1NjFDOFx1NjIzMFx1NjRDNVx1NjRDMVx1NjRDQlx1NjRCQlx1NjRCQ1x1NjREQVx1NjRDNFx1NjRDN1x1NjRDMlx1NjRDRFx1NjRCRlx1NjREMlx1NjRENFx1NjRCRVx1NjU3NFx1NjZDNlx1NjZDOVx1NjZCOVx1NjZDNFx1NjZDN1x1NjZCOFx1NkEzRFx1NkEzOFx1NkEzQVx1NkE1OVx1NkE2Qlx1NkE1OFx1NkEzOVx1NkE0NFx1NkE2Mlx1NkE2MVx1NkE0Qlx1NkE0N1x1NkEzNVx1NkE1Rlx1NkE0OFx1NkI1OVx1NkI3N1x1NkMwNVx1NkZDMlx1NkZCMVx1NkZBMVwiXSxcbltcImJmNDBcIixcIlx1NkZDM1x1NkZBNFx1NkZDMVx1NkZBN1x1NkZCM1x1NkZDMFx1NkZCOVx1NkZCNlx1NkZBNlx1NkZBMFx1NkZCNFx1NzFCRVx1NzFDOVx1NzFEMFx1NzFEMlx1NzFDOFx1NzFENVx1NzFCOVx1NzFDRVx1NzFEOVx1NzFEQ1x1NzFDM1x1NzFDNFx1NzM2OFx1NzQ5Q1x1NzRBM1x1NzQ5OFx1NzQ5Rlx1NzQ5RVx1NzRFMlx1NzUwQ1x1NzUwRFx1NzYzNFx1NzYzOFx1NzYzQVx1NzZFN1x1NzZFNVx1NzdBMFx1Nzc5RVx1Nzc5Rlx1NzdBNVx1NzhFOFx1NzhEQVx1NzhFQ1x1NzhFN1x1NzlBNlx1N0E0RFx1N0E0RVx1N0E0Nlx1N0E0Q1x1N0E0Qlx1N0FCQVx1N0JEOVx1N0MxMVx1N0JDOVx1N0JFNFx1N0JEQlx1N0JFMVx1N0JFOVx1N0JFNlx1N0NENVx1N0NENlx1N0UwQVwiXSxcbltcImJmYTFcIixcIlx1N0UxMVx1N0UwOFx1N0UxQlx1N0UyM1x1N0UxRVx1N0UxRFx1N0UwOVx1N0UxMFx1N0Y3OVx1N0ZCMlx1N0ZGMFx1N0ZGMVx1N0ZFRVx1ODAyOFx1ODFCM1x1ODFBOVx1ODFBOFx1ODFGQlx1ODIwOFx1ODI1OFx1ODI1OVx1ODU0QVx1ODU1OVx1ODU0OFx1ODU2OFx1ODU2OVx1ODU0M1x1ODU0OVx1ODU2RFx1ODU2QVx1ODU1RVx1ODc4M1x1ODc5Rlx1ODc5RVx1ODdBMlx1ODc4RFx1ODg2MVx1ODkyQVx1ODkzMlx1ODkyNVx1ODkyQlx1ODkyMVx1ODlBQVx1ODlBNlx1OEFFNlx1OEFGQVx1OEFFQlx1OEFGMVx1OEIwMFx1OEFEQ1x1OEFFN1x1OEFFRVx1OEFGRVx1OEIwMVx1OEIwMlx1OEFGN1x1OEFFRFx1OEFGM1x1OEFGNlx1OEFGQ1x1OEM2Qlx1OEM2RFx1OEM5M1x1OENGNFx1OEU0NFx1OEUzMVx1OEUzNFx1OEU0Mlx1OEUzOVx1OEUzNVx1OEYzQlx1OEYyRlx1OEYzOFx1OEYzM1x1OEZBOFx1OEZBNlx1OTA3NVx1OTA3NFx1OTA3OFx1OTA3Mlx1OTA3Q1x1OTA3QVx1OTEzNFx1OTE5Mlx1OTMyMFx1OTMzNlx1OTJGOFx1OTMzM1x1OTMyRlx1OTMyMlx1OTJGQ1x1OTMyQlx1OTMwNFx1OTMxQVwiXSxcbltcImMwNDBcIixcIlx1OTMxMFx1OTMyNlx1OTMyMVx1OTMxNVx1OTMyRVx1OTMxOVx1OTVCQlx1OTZBN1x1OTZBOFx1OTZBQVx1OTZENVx1OTcwRVx1OTcxMVx1OTcxNlx1OTcwRFx1OTcxM1x1OTcwRlx1OTc1Qlx1OTc1Q1x1OTc2Nlx1OTc5OFx1OTgzMFx1OTgzOFx1OTgzQlx1OTgzN1x1OTgyRFx1OTgzOVx1OTgyNFx1OTkxMFx1OTkyOFx1OTkxRVx1OTkxQlx1OTkyMVx1OTkxQVx1OTlFRFx1OTlFMlx1OTlGMVx1OUFCOFx1OUFCQ1x1OUFGQlx1OUFFRFx1OUIyOFx1OUI5MVx1OUQxNVx1OUQyM1x1OUQyNlx1OUQyOFx1OUQxMlx1OUQxQlx1OUVEOFx1OUVENFx1OUY4RFx1OUY5Q1x1NTEyQVx1NTExRlx1NTEyMVx1NTEzMlx1NTJGNVx1NTY4RVx1NTY4MFx1NTY5MFx1NTY4NVx1NTY4N1wiXSxcbltcImMwYTFcIixcIlx1NTY4Rlx1NThENVx1NThEM1x1NThEMVx1NThDRVx1NUIzMFx1NUIyQVx1NUIyNFx1NUI3QVx1NUMzN1x1NUM2OFx1NURCQ1x1NURCQVx1NURCRFx1NURCOFx1NUU2Qlx1NUY0Q1x1NUZCRFx1NjFDOVx1NjFDMlx1NjFDN1x1NjFFNlx1NjFDQlx1NjIzMlx1NjIzNFx1NjRDRVx1NjRDQVx1NjREOFx1NjRFMFx1NjRGMFx1NjRFNlx1NjRFQ1x1NjRGMVx1NjRFMlx1NjRFRFx1NjU4Mlx1NjU4M1x1NjZEOVx1NjZENlx1NkE4MFx1NkE5NFx1NkE4NFx1NkFBMlx1NkE5Q1x1NkFEQlx1NkFBM1x1NkE3RVx1NkE5N1x1NkE5MFx1NkFBMFx1NkI1Q1x1NkJBRVx1NkJEQVx1NkMwOFx1NkZEOFx1NkZGMVx1NkZERlx1NkZFMFx1NkZEQlx1NkZFNFx1NkZFQlx1NkZFRlx1NkY4MFx1NkZFQ1x1NkZFMVx1NkZFOVx1NkZENVx1NkZFRVx1NkZGMFx1NzFFN1x1NzFERlx1NzFFRVx1NzFFNlx1NzFFNVx1NzFFRFx1NzFFQ1x1NzFGNFx1NzFFMFx1NzIzNVx1NzI0Nlx1NzM3MFx1NzM3Mlx1NzRBOVx1NzRCMFx1NzRBNlx1NzRBOFx1NzY0Nlx1NzY0Mlx1NzY0Q1x1NzZFQVx1NzdCM1x1NzdBQVx1NzdCMFx1NzdBQ1wiXSxcbltcImMxNDBcIixcIlx1NzdBN1x1NzdBRFx1NzdFRlx1NzhGN1x1NzhGQVx1NzhGNFx1NzhFRlx1NzkwMVx1NzlBN1x1NzlBQVx1N0E1N1x1N0FCRlx1N0MwN1x1N0MwRFx1N0JGRVx1N0JGN1x1N0MwQ1x1N0JFMFx1N0NFMFx1N0NEQ1x1N0NERVx1N0NFMlx1N0NERlx1N0NEOVx1N0NERFx1N0UyRVx1N0UzRVx1N0U0Nlx1N0UzN1x1N0UzMlx1N0U0M1x1N0UyQlx1N0UzRFx1N0UzMVx1N0U0NVx1N0U0MVx1N0UzNFx1N0UzOVx1N0U0OFx1N0UzNVx1N0UzRlx1N0UyRlx1N0Y0NFx1N0ZGM1x1N0ZGQ1x1ODA3MVx1ODA3Mlx1ODA3MFx1ODA2Rlx1ODA3M1x1ODFDNlx1ODFDM1x1ODFCQVx1ODFDMlx1ODFDMFx1ODFCRlx1ODFCRFx1ODFDOVx1ODFCRVx1ODFFOFx1ODIwOVx1ODI3MVx1ODVBQVwiXSxcbltcImMxYTFcIixcIlx1ODU4NFx1ODU3RVx1ODU5Q1x1ODU5MVx1ODU5NFx1ODVBRlx1ODU5Qlx1ODU4N1x1ODVBOFx1ODU4QVx1ODY2N1x1ODdDMFx1ODdEMVx1ODdCM1x1ODdEMlx1ODdDNlx1ODdBQlx1ODdCQlx1ODdCQVx1ODdDOFx1ODdDQlx1ODkzQlx1ODkzNlx1ODk0NFx1ODkzOFx1ODkzRFx1ODlBQ1x1OEIwRVx1OEIxN1x1OEIxOVx1OEIxQlx1OEIwQVx1OEIyMFx1OEIxRFx1OEIwNFx1OEIxMFx1OEM0MVx1OEMzRlx1OEM3M1x1OENGQVx1OENGRFx1OENGQ1x1OENGOFx1OENGQlx1OERBOFx1OEU0OVx1OEU0Qlx1OEU0OFx1OEU0QVx1OEY0NFx1OEYzRVx1OEY0Mlx1OEY0NVx1OEYzRlx1OTA3Rlx1OTA3RFx1OTA4NFx1OTA4MVx1OTA4Mlx1OTA4MFx1OTEzOVx1OTFBM1x1OTE5RVx1OTE5Q1x1OTM0RFx1OTM4Mlx1OTMyOFx1OTM3NVx1OTM0QVx1OTM2NVx1OTM0Qlx1OTMxOFx1OTM3RVx1OTM2Q1x1OTM1Qlx1OTM3MFx1OTM1QVx1OTM1NFx1OTVDQVx1OTVDQlx1OTVDQ1x1OTVDOFx1OTVDNlx1OTZCMVx1OTZCOFx1OTZENlx1OTcxQ1x1OTcxRVx1OTdBMFx1OTdEM1x1OTg0Nlx1OThCNlx1OTkzNVx1OUEwMVwiXSxcbltcImMyNDBcIixcIlx1OTlGRlx1OUJBRVx1OUJBQlx1OUJBQVx1OUJBRFx1OUQzQlx1OUQzRlx1OUU4Qlx1OUVDRlx1OUVERVx1OUVEQ1x1OUVERFx1OUVEQlx1OUYzRVx1OUY0Qlx1NTNFMlx1NTY5NVx1NTZBRVx1NThEOVx1NThEOFx1NUIzOFx1NUY1RFx1NjFFM1x1NjIzM1x1NjRGNFx1NjRGMlx1NjRGRVx1NjUwNlx1NjRGQVx1NjRGQlx1NjRGN1x1NjVCN1x1NjZEQ1x1NjcyNlx1NkFCM1x1NkFBQ1x1NkFDM1x1NkFCQlx1NkFCOFx1NkFDMlx1NkFBRVx1NkFBRlx1NkI1Rlx1NkI3OFx1NkJBRlx1NzAwOVx1NzAwQlx1NkZGRVx1NzAwNlx1NkZGQVx1NzAxMVx1NzAwRlx1NzFGQlx1NzFGQ1x1NzFGRVx1NzFGOFx1NzM3N1x1NzM3NVx1NzRBN1x1NzRCRlx1NzUxNVx1NzY1Nlx1NzY1OFwiXSxcbltcImMyYTFcIixcIlx1NzY1Mlx1NzdCRFx1NzdCRlx1NzdCQlx1NzdCQ1x1NzkwRVx1NzlBRVx1N0E2MVx1N0E2Mlx1N0E2MFx1N0FDNFx1N0FDNVx1N0MyQlx1N0MyN1x1N0MyQVx1N0MxRVx1N0MyM1x1N0MyMVx1N0NFN1x1N0U1NFx1N0U1NVx1N0U1RVx1N0U1QVx1N0U2MVx1N0U1Mlx1N0U1OVx1N0Y0OFx1N0ZGOVx1N0ZGQlx1ODA3N1x1ODA3Nlx1ODFDRFx1ODFDRlx1ODIwQVx1ODVDRlx1ODVBOVx1ODVDRFx1ODVEMFx1ODVDOVx1ODVCMFx1ODVCQVx1ODVCOVx1ODVBNlx1ODdFRlx1ODdFQ1x1ODdGMlx1ODdFMFx1ODk4Nlx1ODlCMlx1ODlGNFx1OEIyOFx1OEIzOVx1OEIyQ1x1OEIyQlx1OEM1MFx1OEQwNVx1OEU1OVx1OEU2M1x1OEU2Nlx1OEU2NFx1OEU1Rlx1OEU1NVx1OEVDMFx1OEY0OVx1OEY0RFx1OTA4N1x1OTA4M1x1OTA4OFx1OTFBQlx1OTFBQ1x1OTFEMFx1OTM5NFx1OTM4QVx1OTM5Nlx1OTNBMlx1OTNCM1x1OTNBRVx1OTNBQ1x1OTNCMFx1OTM5OFx1OTM5QVx1OTM5N1x1OTVENFx1OTVENlx1OTVEMFx1OTVENVx1OTZFMlx1OTZEQ1x1OTZEOVx1OTZEQlx1OTZERVx1OTcyNFx1OTdBM1x1OTdBNlwiXSxcbltcImMzNDBcIixcIlx1OTdBRFx1OTdGOVx1OTg0RFx1OTg0Rlx1OTg0Q1x1OTg0RVx1OTg1M1x1OThCQVx1OTkzRVx1OTkzRlx1OTkzRFx1OTkyRVx1OTlBNVx1OUEwRVx1OUFDMVx1OUIwM1x1OUIwNlx1OUI0Rlx1OUI0RVx1OUI0RFx1OUJDQVx1OUJDOVx1OUJGRFx1OUJDOFx1OUJDMFx1OUQ1MVx1OUQ1RFx1OUQ2MFx1OUVFMFx1OUYxNVx1OUYyQ1x1NTEzM1x1NTZBNVx1NThERVx1NThERlx1NThFMlx1NUJGNVx1OUY5MFx1NUVFQ1x1NjFGMlx1NjFGN1x1NjFGNlx1NjFGNVx1NjUwMFx1NjUwRlx1NjZFMFx1NjZERFx1NkFFNVx1NkFERFx1NkFEQVx1NkFEM1x1NzAxQlx1NzAxRlx1NzAyOFx1NzAxQVx1NzAxRFx1NzAxNVx1NzAxOFx1NzIwNlx1NzIwRFx1NzI1OFx1NzJBMlx1NzM3OFwiXSxcbltcImMzYTFcIixcIlx1NzM3QVx1NzRCRFx1NzRDQVx1NzRFM1x1NzU4N1x1NzU4Nlx1NzY1Rlx1NzY2MVx1NzdDN1x1NzkxOVx1NzlCMVx1N0E2Qlx1N0E2OVx1N0MzRVx1N0MzRlx1N0MzOFx1N0MzRFx1N0MzN1x1N0M0MFx1N0U2Qlx1N0U2RFx1N0U3OVx1N0U2OVx1N0U2QVx1N0Y4NVx1N0U3M1x1N0ZCNlx1N0ZCOVx1N0ZCOFx1ODFEOFx1ODVFOVx1ODVERFx1ODVFQVx1ODVENVx1ODVFNFx1ODVFNVx1ODVGN1x1ODdGQlx1ODgwNVx1ODgwRFx1ODdGOVx1ODdGRVx1ODk2MFx1ODk1Rlx1ODk1Nlx1ODk1RVx1OEI0MVx1OEI1Q1x1OEI1OFx1OEI0OVx1OEI1QVx1OEI0RVx1OEI0Rlx1OEI0Nlx1OEI1OVx1OEQwOFx1OEQwQVx1OEU3Q1x1OEU3Mlx1OEU4N1x1OEU3Nlx1OEU2Q1x1OEU3QVx1OEU3NFx1OEY1NFx1OEY0RVx1OEZBRFx1OTA4QVx1OTA4Qlx1OTFCMVx1OTFBRVx1OTNFMVx1OTNEMVx1OTNERlx1OTNDM1x1OTNDOFx1OTNEQ1x1OTNERFx1OTNENlx1OTNFMlx1OTNDRFx1OTNEOFx1OTNFNFx1OTNEN1x1OTNFOFx1OTVEQ1x1OTZCNFx1OTZFM1x1OTcyQVx1OTcyN1x1OTc2MVx1OTdEQ1x1OTdGQlx1OTg1RVwiXSxcbltcImM0NDBcIixcIlx1OTg1OFx1OTg1Qlx1OThCQ1x1OTk0NVx1OTk0OVx1OUExNlx1OUExOVx1OUIwRFx1OUJFOFx1OUJFN1x1OUJENlx1OUJEQlx1OUQ4OVx1OUQ2MVx1OUQ3Mlx1OUQ2QVx1OUQ2Q1x1OUU5Mlx1OUU5N1x1OUU5M1x1OUVCNFx1NTJGOFx1NTZBOFx1NTZCN1x1NTZCNlx1NTZCNFx1NTZCQ1x1NThFNFx1NUI0MFx1NUI0M1x1NUI3RFx1NUJGNlx1NURDOVx1NjFGOFx1NjFGQVx1NjUxOFx1NjUxNFx1NjUxOVx1NjZFNlx1NjcyN1x1NkFFQ1x1NzAzRVx1NzAzMFx1NzAzMlx1NzIxMFx1NzM3Qlx1NzRDRlx1NzY2Mlx1NzY2NVx1NzkyNlx1NzkyQVx1NzkyQ1x1NzkyQlx1N0FDN1x1N0FGNlx1N0M0Q1x1N0M0M1x1N0M0RFx1N0NFRlx1N0NGMFx1OEZBRVx1N0U3RFx1N0U3Q1wiXSxcbltcImM0YTFcIixcIlx1N0U4Mlx1N0Y0Q1x1ODAwMFx1ODFEQVx1ODI2Nlx1ODVGQlx1ODVGOVx1ODYxMVx1ODVGQVx1ODYwNlx1ODYwQlx1ODYwN1x1ODYwQVx1ODgxNFx1ODgxNVx1ODk2NFx1ODlCQVx1ODlGOFx1OEI3MFx1OEI2Q1x1OEI2Nlx1OEI2Rlx1OEI1Rlx1OEI2Qlx1OEQwRlx1OEQwRFx1OEU4OVx1OEU4MVx1OEU4NVx1OEU4Mlx1OTFCNFx1OTFDQlx1OTQxOFx1OTQwM1x1OTNGRFx1OTVFMVx1OTczMFx1OThDNFx1OTk1Mlx1OTk1MVx1OTlBOFx1OUEyQlx1OUEzMFx1OUEzN1x1OUEzNVx1OUMxM1x1OUMwRFx1OUU3OVx1OUVCNVx1OUVFOFx1OUYyRlx1OUY1Rlx1OUY2M1x1OUY2MVx1NTEzN1x1NTEzOFx1NTZDMVx1NTZDMFx1NTZDMlx1NTkxNFx1NUM2Q1x1NURDRFx1NjFGQ1x1NjFGRVx1NjUxRFx1NjUxQ1x1NjU5NVx1NjZFOVx1NkFGQlx1NkIwNFx1NkFGQVx1NkJCMlx1NzA0Q1x1NzIxQlx1NzJBN1x1NzRENlx1NzRENFx1NzY2OVx1NzdEM1x1N0M1MFx1N0U4Rlx1N0U4Q1x1N0ZCQ1x1ODYxN1x1ODYyRFx1ODYxQVx1ODgyM1x1ODgyMlx1ODgyMVx1ODgxRlx1ODk2QVx1ODk2Q1x1ODlCRFx1OEI3NFwiXSxcbltcImM1NDBcIixcIlx1OEI3N1x1OEI3RFx1OEQxM1x1OEU4QVx1OEU4RFx1OEU4Qlx1OEY1Rlx1OEZBRlx1OTFCQVx1OTQyRVx1OTQzM1x1OTQzNVx1OTQzQVx1OTQzOFx1OTQzMlx1OTQyQlx1OTVFMlx1OTczOFx1OTczOVx1OTczMlx1OTdGRlx1OTg2N1x1OTg2NVx1OTk1N1x1OUE0NVx1OUE0M1x1OUE0MFx1OUEzRVx1OUFDRlx1OUI1NFx1OUI1MVx1OUMyRFx1OUMyNVx1OURBRlx1OURCNFx1OURDMlx1OURCOFx1OUU5RFx1OUVFRlx1OUYxOVx1OUY1Q1x1OUY2Nlx1OUY2N1x1NTEzQ1x1NTEzQlx1NTZDOFx1NTZDQVx1NTZDOVx1NUI3Rlx1NURENFx1NUREMlx1NUY0RVx1NjFGRlx1NjUyNFx1NkIwQVx1NkI2MVx1NzA1MVx1NzA1OFx1NzM4MFx1NzRFNFx1NzU4QVx1NzY2RVx1NzY2Q1wiXSxcbltcImM1YTFcIixcIlx1NzlCM1x1N0M2MFx1N0M1Rlx1ODA3RVx1ODA3RFx1ODFERlx1ODk3Mlx1ODk2Rlx1ODlGQ1x1OEI4MFx1OEQxNlx1OEQxN1x1OEU5MVx1OEU5M1x1OEY2MVx1OTE0OFx1OTQ0NFx1OTQ1MVx1OTQ1Mlx1OTczRFx1OTczRVx1OTdDM1x1OTdDMVx1OTg2Qlx1OTk1NVx1OUE1NVx1OUE0RFx1OUFEMlx1OUIxQVx1OUM0OVx1OUMzMVx1OUMzRVx1OUMzQlx1OUREM1x1OUREN1x1OUYzNFx1OUY2Q1x1OUY2QVx1OUY5NFx1NTZDQ1x1NURENlx1NjIwMFx1NjUyM1x1NjUyQlx1NjUyQVx1NjZFQ1x1NkIxMFx1NzREQVx1N0FDQVx1N0M2NFx1N0M2M1x1N0M2NVx1N0U5M1x1N0U5Nlx1N0U5NFx1ODFFMlx1ODYzOFx1ODYzRlx1ODgzMVx1OEI4QVx1OTA5MFx1OTA4Rlx1OTQ2M1x1OTQ2MFx1OTQ2NFx1OTc2OFx1OTg2Rlx1OTk1Q1x1OUE1QVx1OUE1Qlx1OUE1N1x1OUFEM1x1OUFENFx1OUFEMVx1OUM1NFx1OUM1N1x1OUM1Nlx1OURFNVx1OUU5Rlx1OUVGNFx1NTZEMVx1NThFOVx1NjUyQ1x1NzA1RVx1NzY3MVx1NzY3Mlx1NzdEN1x1N0Y1MFx1N0Y4OFx1ODgzNlx1ODgzOVx1ODg2Mlx1OEI5M1x1OEI5MlwiXSxcbltcImM2NDBcIixcIlx1OEI5Nlx1ODI3N1x1OEQxQlx1OTFDMFx1OTQ2QVx1OTc0Mlx1OTc0OFx1OTc0NFx1OTdDNlx1OTg3MFx1OUE1Rlx1OUIyMlx1OUI1OFx1OUM1Rlx1OURGOVx1OURGQVx1OUU3Q1x1OUU3RFx1OUYwN1x1OUY3N1x1OUY3Mlx1NUVGM1x1NkIxNlx1NzA2M1x1N0M2Q1x1N0M2RVx1ODgzQlx1ODlDMFx1OEVBMVx1OTFDMVx1OTQ3Mlx1OTQ3MFx1OTg3MVx1OTk1RVx1OUFENlx1OUIyM1x1OUVDQ1x1NzA2NFx1NzdEQVx1OEI5QVx1OTQ3N1x1OTdDOVx1OUE2Mlx1OUE2NVx1N0U5Q1x1OEI5Q1x1OEVBQVx1OTFDNVx1OTQ3RFx1OTQ3RVx1OTQ3Q1x1OUM3N1x1OUM3OFx1OUVGN1x1OEM1NFx1OTQ3Rlx1OUUxQVx1NzIyOFx1OUE2QVx1OUIzMVx1OUUxQlx1OUUxRVx1N0M3MlwiXSxcbltcImM5NDBcIixcIlx1NEU0Mlx1NEU1Q1x1NTFGNVx1NTMxQVx1NTM4Mlx1NEUwN1x1NEUwQ1x1NEU0N1x1NEU4RFx1NTZEN1x1RkEwQ1x1NUM2RVx1NUY3M1x1NEUwRlx1NTE4N1x1NEUwRVx1NEUyRVx1NEU5M1x1NEVDMlx1NEVDOVx1NEVDOFx1NTE5OFx1NTJGQ1x1NTM2Q1x1NTNCOVx1NTcyMFx1NTkwM1x1NTkyQ1x1NUMxMFx1NURGRlx1NjVFMVx1NkJCM1x1NkJDQ1x1NkMxNFx1NzIzRlx1NEUzMVx1NEUzQ1x1NEVFOFx1NEVEQ1x1NEVFOVx1NEVFMVx1NEVERFx1NEVEQVx1NTIwQ1x1NTMxQ1x1NTM0Q1x1NTcyMlx1NTcyM1x1NTkxN1x1NTkyRlx1NUI4MVx1NUI4NFx1NUMxMlx1NUMzQlx1NUM3NFx1NUM3M1x1NUUwNFx1NUU4MFx1NUU4Mlx1NUZDOVx1NjIwOVx1NjI1MFx1NkMxNVwiXSxcbltcImM5YTFcIixcIlx1NkMzNlx1NkM0M1x1NkMzRlx1NkMzQlx1NzJBRVx1NzJCMFx1NzM4QVx1NzlCOFx1ODA4QVx1OTYxRVx1NEYwRVx1NEYxOFx1NEYyQ1x1NEVGNVx1NEYxNFx1NEVGMVx1NEYwMFx1NEVGN1x1NEYwOFx1NEYxRFx1NEYwMlx1NEYwNVx1NEYyMlx1NEYxM1x1NEYwNFx1NEVGNFx1NEYxMlx1NTFCMVx1NTIxM1x1NTIwOVx1NTIxMFx1NTJBNlx1NTMyMlx1NTMxRlx1NTM0RFx1NTM4QVx1NTQwN1x1NTZFMVx1NTZERlx1NTcyRVx1NTcyQVx1NTczNFx1NTkzQ1x1NTk4MFx1NTk3Q1x1NTk4NVx1NTk3Qlx1NTk3RVx1NTk3N1x1NTk3Rlx1NUI1Nlx1NUMxNVx1NUMyNVx1NUM3Q1x1NUM3QVx1NUM3Qlx1NUM3RVx1NURERlx1NUU3NVx1NUU4NFx1NUYwMlx1NUYxQVx1NUY3NFx1NUZENVx1NUZENFx1NUZDRlx1NjI1Q1x1NjI1RVx1NjI2NFx1NjI2MVx1NjI2Nlx1NjI2Mlx1NjI1OVx1NjI2MFx1NjI1QVx1NjI2NVx1NjVFRlx1NjVFRVx1NjczRVx1NjczOVx1NjczOFx1NjczQlx1NjczQVx1NjczRlx1NjczQ1x1NjczM1x1NkMxOFx1NkM0Nlx1NkM1Mlx1NkM1Q1x1NkM0Rlx1NkM0QVx1NkM1NFx1NkM0QlwiXSxcbltcImNhNDBcIixcIlx1NkM0Q1x1NzA3MVx1NzI1RVx1NzJCNFx1NzJCNVx1NzM4RVx1NzUyQVx1NzY3Rlx1N0E3NVx1N0Y1MVx1ODI3OFx1ODI3Q1x1ODI4MFx1ODI3RFx1ODI3Rlx1ODY0RFx1ODk3RVx1OTA5OVx1OTA5N1x1OTA5OFx1OTA5Qlx1OTA5NFx1OTYyMlx1OTYyNFx1OTYyMFx1OTYyM1x1NEY1Nlx1NEYzQlx1NEY2Mlx1NEY0OVx1NEY1M1x1NEY2NFx1NEYzRVx1NEY2N1x1NEY1Mlx1NEY1Rlx1NEY0MVx1NEY1OFx1NEYyRFx1NEYzM1x1NEYzRlx1NEY2MVx1NTE4Rlx1NTFCOVx1NTIxQ1x1NTIxRVx1NTIyMVx1NTJBRFx1NTJBRVx1NTMwOVx1NTM2M1x1NTM3Mlx1NTM4RVx1NTM4Rlx1NTQzMFx1NTQzN1x1NTQyQVx1NTQ1NFx1NTQ0NVx1NTQxOVx1NTQxQ1x1NTQyNVx1NTQxOFwiXSxcbltcImNhYTFcIixcIlx1NTQzRFx1NTQ0Rlx1NTQ0MVx1NTQyOFx1NTQyNFx1NTQ0N1x1NTZFRVx1NTZFN1x1NTZFNVx1NTc0MVx1NTc0NVx1NTc0Q1x1NTc0OVx1NTc0Qlx1NTc1Mlx1NTkwNlx1NTk0MFx1NTlBNlx1NTk5OFx1NTlBMFx1NTk5N1x1NTk4RVx1NTlBMlx1NTk5MFx1NTk4Rlx1NTlBN1x1NTlBMVx1NUI4RVx1NUI5Mlx1NUMyOFx1NUMyQVx1NUM4RFx1NUM4Rlx1NUM4OFx1NUM4Qlx1NUM4OVx1NUM5Mlx1NUM4QVx1NUM4Nlx1NUM5M1x1NUM5NVx1NURFMFx1NUUwQVx1NUUwRVx1NUU4Qlx1NUU4OVx1NUU4Q1x1NUU4OFx1NUU4RFx1NUYwNVx1NUYxRFx1NUY3OFx1NUY3Nlx1NUZEMlx1NUZEMVx1NUZEMFx1NUZFRFx1NUZFOFx1NUZFRVx1NUZGM1x1NUZFMVx1NUZFNFx1NUZFM1x1NUZGQVx1NUZFRlx1NUZGN1x1NUZGQlx1NjAwMFx1NUZGNFx1NjIzQVx1NjI4M1x1NjI4Q1x1NjI4RVx1NjI4Rlx1NjI5NFx1NjI4N1x1NjI3MVx1NjI3Qlx1NjI3QVx1NjI3MFx1NjI4MVx1NjI4OFx1NjI3N1x1NjI3RFx1NjI3Mlx1NjI3NFx1NjUzN1x1NjVGMFx1NjVGNFx1NjVGM1x1NjVGMlx1NjVGNVx1Njc0NVx1Njc0N1wiXSxcbltcImNiNDBcIixcIlx1Njc1OVx1Njc1NVx1Njc0Q1x1Njc0OFx1Njc1RFx1Njc0RFx1Njc1QVx1Njc0Qlx1NkJEMFx1NkMxOVx1NkMxQVx1NkM3OFx1NkM2N1x1NkM2Qlx1NkM4NFx1NkM4Qlx1NkM4Rlx1NkM3MVx1NkM2Rlx1NkM2OVx1NkM5QVx1NkM2RFx1NkM4N1x1NkM5NVx1NkM5Q1x1NkM2Nlx1NkM3M1x1NkM2NVx1NkM3Qlx1NkM4RVx1NzA3NFx1NzA3QVx1NzI2M1x1NzJCRlx1NzJCRFx1NzJDM1x1NzJDNlx1NzJDMVx1NzJCQVx1NzJDNVx1NzM5NVx1NzM5N1x1NzM5M1x1NzM5NFx1NzM5Mlx1NzUzQVx1NzUzOVx1NzU5NFx1NzU5NVx1NzY4MVx1NzkzRFx1ODAzNFx1ODA5NVx1ODA5OVx1ODA5MFx1ODA5Mlx1ODA5Q1x1ODI5MFx1ODI4Rlx1ODI4NVx1ODI4RVx1ODI5MVx1ODI5M1wiXSxcbltcImNiYTFcIixcIlx1ODI4QVx1ODI4M1x1ODI4NFx1OEM3OFx1OEZDOVx1OEZCRlx1OTA5Rlx1OTBBMVx1OTBBNVx1OTA5RVx1OTBBN1x1OTBBMFx1OTYzMFx1OTYyOFx1OTYyRlx1OTYyRFx1NEUzM1x1NEY5OFx1NEY3Q1x1NEY4NVx1NEY3RFx1NEY4MFx1NEY4N1x1NEY3Nlx1NEY3NFx1NEY4OVx1NEY4NFx1NEY3N1x1NEY0Q1x1NEY5N1x1NEY2QVx1NEY5QVx1NEY3OVx1NEY4MVx1NEY3OFx1NEY5MFx1NEY5Q1x1NEY5NFx1NEY5RVx1NEY5Mlx1NEY4Mlx1NEY5NVx1NEY2Qlx1NEY2RVx1NTE5RVx1NTFCQ1x1NTFCRVx1NTIzNVx1NTIzMlx1NTIzM1x1NTI0Nlx1NTIzMVx1NTJCQ1x1NTMwQVx1NTMwQlx1NTMzQ1x1NTM5Mlx1NTM5NFx1NTQ4N1x1NTQ3Rlx1NTQ4MVx1NTQ5MVx1NTQ4Mlx1NTQ4OFx1NTQ2Qlx1NTQ3QVx1NTQ3RVx1NTQ2NVx1NTQ2Q1x1NTQ3NFx1NTQ2Nlx1NTQ4RFx1NTQ2Rlx1NTQ2MVx1NTQ2MFx1NTQ5OFx1NTQ2M1x1NTQ2N1x1NTQ2NFx1NTZGN1x1NTZGOVx1NTc2Rlx1NTc3Mlx1NTc2RFx1NTc2Qlx1NTc3MVx1NTc3MFx1NTc3Nlx1NTc4MFx1NTc3NVx1NTc3Qlx1NTc3M1x1NTc3NFx1NTc2MlwiXSxcbltcImNjNDBcIixcIlx1NTc2OFx1NTc3RFx1NTkwQ1x1NTk0NVx1NTlCNVx1NTlCQVx1NTlDRlx1NTlDRVx1NTlCMlx1NTlDQ1x1NTlDMVx1NTlCNlx1NTlCQ1x1NTlDM1x1NTlENlx1NTlCMVx1NTlCRFx1NTlDMFx1NTlDOFx1NTlCNFx1NTlDN1x1NUI2Mlx1NUI2NVx1NUI5M1x1NUI5NVx1NUM0NFx1NUM0N1x1NUNBRVx1NUNBNFx1NUNBMFx1NUNCNVx1NUNBRlx1NUNBOFx1NUNBQ1x1NUM5Rlx1NUNBM1x1NUNBRFx1NUNBMlx1NUNBQVx1NUNBN1x1NUM5RFx1NUNBNVx1NUNCNlx1NUNCMFx1NUNBNlx1NUUxN1x1NUUxNFx1NUUxOVx1NUYyOFx1NUYyMlx1NUYyM1x1NUYyNFx1NUY1NFx1NUY4Mlx1NUY3RVx1NUY3RFx1NUZERVx1NUZFNVx1NjAyRFx1NjAyNlx1NjAxOVx1NjAzMlx1NjAwQlwiXSxcbltcImNjYTFcIixcIlx1NjAzNFx1NjAwQVx1NjAxN1x1NjAzM1x1NjAxQVx1NjAxRVx1NjAyQ1x1NjAyMlx1NjAwRFx1NjAxMFx1NjAyRVx1NjAxM1x1NjAxMVx1NjAwQ1x1NjAwOVx1NjAxQ1x1NjIxNFx1NjIzRFx1NjJBRFx1NjJCNFx1NjJEMVx1NjJCRVx1NjJBQVx1NjJCNlx1NjJDQVx1NjJBRVx1NjJCM1x1NjJBRlx1NjJCQlx1NjJBOVx1NjJCMFx1NjJCOFx1NjUzRFx1NjVBOFx1NjVCQlx1NjYwOVx1NjVGQ1x1NjYwNFx1NjYxMlx1NjYwOFx1NjVGQlx1NjYwM1x1NjYwQlx1NjYwRFx1NjYwNVx1NjVGRFx1NjYxMVx1NjYxMFx1NjZGNlx1NjcwQVx1Njc4NVx1Njc2Q1x1Njc4RVx1Njc5Mlx1Njc3Nlx1Njc3Qlx1Njc5OFx1Njc4Nlx1Njc4NFx1Njc3NFx1Njc4RFx1Njc4Q1x1Njc3QVx1Njc5Rlx1Njc5MVx1Njc5OVx1Njc4M1x1Njc3RFx1Njc4MVx1Njc3OFx1Njc3OVx1Njc5NFx1NkIyNVx1NkI4MFx1NkI3RVx1NkJERVx1NkMxRFx1NkM5M1x1NkNFQ1x1NkNFQlx1NkNFRVx1NkNEOVx1NkNCNlx1NkNENFx1NkNBRFx1NkNFN1x1NkNCN1x1NkNEMFx1NkNDMlx1NkNCQVx1NkNDM1x1NkNDNlx1NkNFRFx1NkNGMlwiXSxcbltcImNkNDBcIixcIlx1NkNEMlx1NkNERFx1NkNCNFx1NkM4QVx1NkM5RFx1NkM4MFx1NkNERVx1NkNDMFx1NkQzMFx1NkNDRFx1NkNDN1x1NkNCMFx1NkNGOVx1NkNDRlx1NkNFOVx1NkNEMVx1NzA5NFx1NzA5OFx1NzA4NVx1NzA5M1x1NzA4Nlx1NzA4NFx1NzA5MVx1NzA5Nlx1NzA4Mlx1NzA5QVx1NzA4M1x1NzI2QVx1NzJENlx1NzJDQlx1NzJEOFx1NzJDOVx1NzJEQ1x1NzJEMlx1NzJENFx1NzJEQVx1NzJDQ1x1NzJEMVx1NzNBNFx1NzNBMVx1NzNBRFx1NzNBNlx1NzNBMlx1NzNBMFx1NzNBQ1x1NzM5RFx1NzRERFx1NzRFOFx1NzUzRlx1NzU0MFx1NzUzRVx1NzU4Q1x1NzU5OFx1NzZBRlx1NzZGM1x1NzZGMVx1NzZGMFx1NzZGNVx1NzdGOFx1NzdGQ1x1NzdGOVx1NzdGQlx1NzdGQVwiXSxcbltcImNkYTFcIixcIlx1NzdGN1x1Nzk0Mlx1NzkzRlx1NzlDNVx1N0E3OFx1N0E3Qlx1N0FGQlx1N0M3NVx1N0NGRFx1ODAzNVx1ODA4Rlx1ODBBRVx1ODBBM1x1ODBCOFx1ODBCNVx1ODBBRFx1ODIyMFx1ODJBMFx1ODJDMFx1ODJBQlx1ODI5QVx1ODI5OFx1ODI5Qlx1ODJCNVx1ODJBN1x1ODJBRVx1ODJCQ1x1ODI5RVx1ODJCQVx1ODJCNFx1ODJBOFx1ODJBMVx1ODJBOVx1ODJDMlx1ODJBNFx1ODJDM1x1ODJCNlx1ODJBMlx1ODY3MFx1ODY2Rlx1ODY2RFx1ODY2RVx1OEM1Nlx1OEZEMlx1OEZDQlx1OEZEM1x1OEZDRFx1OEZENlx1OEZENVx1OEZEN1x1OTBCMlx1OTBCNFx1OTBBRlx1OTBCM1x1OTBCMFx1OTYzOVx1OTYzRFx1OTYzQ1x1OTYzQVx1OTY0M1x1NEZDRFx1NEZDNVx1NEZEM1x1NEZCMlx1NEZDOVx1NEZDQlx1NEZDMVx1NEZENFx1NEZEQ1x1NEZEOVx1NEZCQlx1NEZCM1x1NEZEQlx1NEZDN1x1NEZENlx1NEZCQVx1NEZDMFx1NEZCOVx1NEZFQ1x1NTI0NFx1NTI0OVx1NTJDMFx1NTJDMlx1NTMzRFx1NTM3Q1x1NTM5N1x1NTM5Nlx1NTM5OVx1NTM5OFx1NTRCQVx1NTRBMVx1NTRBRFx1NTRBNVx1NTRDRlwiXSxcbltcImNlNDBcIixcIlx1NTRDM1x1ODMwRFx1NTRCN1x1NTRBRVx1NTRENlx1NTRCNlx1NTRDNVx1NTRDNlx1NTRBMFx1NTQ3MFx1NTRCQ1x1NTRBMlx1NTRCRVx1NTQ3Mlx1NTRERVx1NTRCMFx1NTdCNVx1NTc5RVx1NTc5Rlx1NTdBNFx1NTc4Q1x1NTc5N1x1NTc5RFx1NTc5Qlx1NTc5NFx1NTc5OFx1NTc4Rlx1NTc5OVx1NTdBNVx1NTc5QVx1NTc5NVx1NThGNFx1NTkwRFx1NTk1M1x1NTlFMVx1NTlERVx1NTlFRVx1NUEwMFx1NTlGMVx1NTlERFx1NTlGQVx1NTlGRFx1NTlGQ1x1NTlGNlx1NTlFNFx1NTlGMlx1NTlGN1x1NTlEQlx1NTlFOVx1NTlGM1x1NTlGNVx1NTlFMFx1NTlGRVx1NTlGNFx1NTlFRFx1NUJBOFx1NUM0Q1x1NUNEMFx1NUNEOFx1NUNDQ1x1NUNEN1x1NUNDQlx1NUNEQlwiXSxcbltcImNlYTFcIixcIlx1NUNERVx1NUNEQVx1NUNDOVx1NUNDN1x1NUNDQVx1NUNENlx1NUNEM1x1NUNENFx1NUNDRlx1NUNDOFx1NUNDNlx1NUNDRVx1NUNERlx1NUNGOFx1NURGOVx1NUUyMVx1NUUyMlx1NUUyM1x1NUUyMFx1NUUyNFx1NUVCMFx1NUVBNFx1NUVBMlx1NUU5Qlx1NUVBM1x1NUVBNVx1NUYwN1x1NUYyRVx1NUY1Nlx1NUY4Nlx1NjAzN1x1NjAzOVx1NjA1NFx1NjA3Mlx1NjA1RVx1NjA0NVx1NjA1M1x1NjA0N1x1NjA0OVx1NjA1Qlx1NjA0Q1x1NjA0MFx1NjA0Mlx1NjA1Rlx1NjAyNFx1NjA0NFx1NjA1OFx1NjA2Nlx1NjA2RVx1NjI0Mlx1NjI0M1x1NjJDRlx1NjMwRFx1NjMwQlx1NjJGNVx1NjMwRVx1NjMwM1x1NjJFQlx1NjJGOVx1NjMwRlx1NjMwQ1x1NjJGOFx1NjJGNlx1NjMwMFx1NjMxM1x1NjMxNFx1NjJGQVx1NjMxNVx1NjJGQlx1NjJGMFx1NjU0MVx1NjU0M1x1NjVBQVx1NjVCRlx1NjYzNlx1NjYyMVx1NjYzMlx1NjYzNVx1NjYxQ1x1NjYyNlx1NjYyMlx1NjYzM1x1NjYyQlx1NjYzQVx1NjYxRFx1NjYzNFx1NjYzOVx1NjYyRVx1NjcwRlx1NjcxMFx1NjdDMVx1NjdGMlx1NjdDOFx1NjdCQVwiXSxcbltcImNmNDBcIixcIlx1NjdEQ1x1NjdCQlx1NjdGOFx1NjdEOFx1NjdDMFx1NjdCN1x1NjdDNVx1NjdFQlx1NjdFNFx1NjdERlx1NjdCNVx1NjdDRFx1NjdCM1x1NjdGN1x1NjdGNlx1NjdFRVx1NjdFM1x1NjdDMlx1NjdCOVx1NjdDRVx1NjdFN1x1NjdGMFx1NjdCMlx1NjdGQ1x1NjdDNlx1NjdFRFx1NjdDQ1x1NjdBRVx1NjdFNlx1NjdEQlx1NjdGQVx1NjdDOVx1NjdDQVx1NjdDM1x1NjdFQVx1NjdDQlx1NkIyOFx1NkI4Mlx1NkI4NFx1NkJCNlx1NkJENlx1NkJEOFx1NkJFMFx1NkMyMFx1NkMyMVx1NkQyOFx1NkQzNFx1NkQyRFx1NkQxRlx1NkQzQ1x1NkQzRlx1NkQxMlx1NkQwQVx1NkNEQVx1NkQzM1x1NkQwNFx1NkQxOVx1NkQzQVx1NkQxQVx1NkQxMVx1NkQwMFx1NkQxRFx1NkQ0MlwiXSxcbltcImNmYTFcIixcIlx1NkQwMVx1NkQxOFx1NkQzN1x1NkQwM1x1NkQwRlx1NkQ0MFx1NkQwN1x1NkQyMFx1NkQyQ1x1NkQwOFx1NkQyMlx1NkQwOVx1NkQxMFx1NzBCN1x1NzA5Rlx1NzBCRVx1NzBCMVx1NzBCMFx1NzBBMVx1NzBCNFx1NzBCNVx1NzBBOVx1NzI0MVx1NzI0OVx1NzI0QVx1NzI2Q1x1NzI3MFx1NzI3M1x1NzI2RVx1NzJDQVx1NzJFNFx1NzJFOFx1NzJFQlx1NzJERlx1NzJFQVx1NzJFNlx1NzJFM1x1NzM4NVx1NzNDQ1x1NzNDMlx1NzNDOFx1NzNDNVx1NzNCOVx1NzNCNlx1NzNCNVx1NzNCNFx1NzNFQlx1NzNCRlx1NzNDN1x1NzNCRVx1NzNDM1x1NzNDNlx1NzNCOFx1NzNDQlx1NzRFQ1x1NzRFRVx1NzUyRVx1NzU0N1x1NzU0OFx1NzVBN1x1NzVBQVx1NzY3OVx1NzZDNFx1NzcwOFx1NzcwM1x1NzcwNFx1NzcwNVx1NzcwQVx1NzZGN1x1NzZGQlx1NzZGQVx1NzdFN1x1NzdFOFx1NzgwNlx1NzgxMVx1NzgxMlx1NzgwNVx1NzgxMFx1NzgwRlx1NzgwRVx1NzgwOVx1NzgwM1x1NzgxM1x1Nzk0QVx1Nzk0Q1x1Nzk0Qlx1Nzk0NVx1Nzk0NFx1NzlENVx1NzlDRFx1NzlDRlx1NzlENlx1NzlDRVx1N0E4MFwiXSxcbltcImQwNDBcIixcIlx1N0E3RVx1N0FEMVx1N0IwMFx1N0IwMVx1N0M3QVx1N0M3OFx1N0M3OVx1N0M3Rlx1N0M4MFx1N0M4MVx1N0QwM1x1N0QwOFx1N0QwMVx1N0Y1OFx1N0Y5MVx1N0Y4RFx1N0ZCRVx1ODAwN1x1ODAwRVx1ODAwRlx1ODAxNFx1ODAzN1x1ODBEOFx1ODBDN1x1ODBFMFx1ODBEMVx1ODBDOFx1ODBDMlx1ODBEMFx1ODBDNVx1ODBFM1x1ODBEOVx1ODBEQ1x1ODBDQVx1ODBENVx1ODBDOVx1ODBDRlx1ODBEN1x1ODBFNlx1ODBDRFx1ODFGRlx1ODIyMVx1ODI5NFx1ODJEOVx1ODJGRVx1ODJGOVx1ODMwN1x1ODJFOFx1ODMwMFx1ODJENVx1ODMzQVx1ODJFQlx1ODJENlx1ODJGNFx1ODJFQ1x1ODJFMVx1ODJGMlx1ODJGNVx1ODMwQ1x1ODJGQlx1ODJGNlx1ODJGMFx1ODJFQVwiXSxcbltcImQwYTFcIixcIlx1ODJFNFx1ODJFMFx1ODJGQVx1ODJGM1x1ODJFRFx1ODY3N1x1ODY3NFx1ODY3Q1x1ODY3M1x1ODg0MVx1ODg0RVx1ODg2N1x1ODg2QVx1ODg2OVx1ODlEM1x1OEEwNFx1OEEwN1x1OEQ3Mlx1OEZFM1x1OEZFMVx1OEZFRVx1OEZFMFx1OTBGMVx1OTBCRFx1OTBCRlx1OTBENVx1OTBDNVx1OTBCRVx1OTBDN1x1OTBDQlx1OTBDOFx1OTFENFx1OTFEM1x1OTY1NFx1OTY0Rlx1OTY1MVx1OTY1M1x1OTY0QVx1OTY0RVx1NTAxRVx1NTAwNVx1NTAwN1x1NTAxM1x1NTAyMlx1NTAzMFx1NTAxQlx1NEZGNVx1NEZGNFx1NTAzM1x1NTAzN1x1NTAyQ1x1NEZGNlx1NEZGN1x1NTAxN1x1NTAxQ1x1NTAyMFx1NTAyN1x1NTAzNVx1NTAyRlx1NTAzMVx1NTAwRVx1NTE1QVx1NTE5NFx1NTE5M1x1NTFDQVx1NTFDNFx1NTFDNVx1NTFDOFx1NTFDRVx1NTI2MVx1NTI1QVx1NTI1Mlx1NTI1RVx1NTI1Rlx1NTI1NVx1NTI2Mlx1NTJDRFx1NTMwRVx1NTM5RVx1NTUyNlx1NTRFMlx1NTUxN1x1NTUxMlx1NTRFN1x1NTRGM1x1NTRFNFx1NTUxQVx1NTRGRlx1NTUwNFx1NTUwOFx1NTRFQlx1NTUxMVx1NTUwNVx1NTRGMVwiXSxcbltcImQxNDBcIixcIlx1NTUwQVx1NTRGQlx1NTRGN1x1NTRGOFx1NTRFMFx1NTUwRVx1NTUwM1x1NTUwQlx1NTcwMVx1NTcwMlx1NTdDQ1x1NTgzMlx1NTdENVx1NTdEMlx1NTdCQVx1NTdDNlx1NTdCRFx1NTdCQ1x1NTdCOFx1NTdCNlx1NTdCRlx1NTdDN1x1NTdEMFx1NTdCOVx1NTdDMVx1NTkwRVx1NTk0QVx1NUExOVx1NUExNlx1NUEyRFx1NUEyRVx1NUExNVx1NUEwRlx1NUExN1x1NUEwQVx1NUExRVx1NUEzM1x1NUI2Q1x1NUJBN1x1NUJBRFx1NUJBQ1x1NUMwM1x1NUM1Nlx1NUM1NFx1NUNFQ1x1NUNGRlx1NUNFRVx1NUNGMVx1NUNGN1x1NUQwMFx1NUNGOVx1NUUyOVx1NUUyOFx1NUVBOFx1NUVBRVx1NUVBQVx1NUVBQ1x1NUYzM1x1NUYzMFx1NUY2N1x1NjA1RFx1NjA1QVx1NjA2N1wiXSxcbltcImQxYTFcIixcIlx1NjA0MVx1NjBBMlx1NjA4OFx1NjA4MFx1NjA5Mlx1NjA4MVx1NjA5RFx1NjA4M1x1NjA5NVx1NjA5Qlx1NjA5N1x1NjA4N1x1NjA5Q1x1NjA4RVx1NjIxOVx1NjI0Nlx1NjJGMlx1NjMxMFx1NjM1Nlx1NjMyQ1x1NjM0NFx1NjM0NVx1NjMzNlx1NjM0M1x1NjNFNFx1NjMzOVx1NjM0Qlx1NjM0QVx1NjMzQ1x1NjMyOVx1NjM0MVx1NjMzNFx1NjM1OFx1NjM1NFx1NjM1OVx1NjMyRFx1NjM0N1x1NjMzM1x1NjM1QVx1NjM1MVx1NjMzOFx1NjM1N1x1NjM0MFx1NjM0OFx1NjU0QVx1NjU0Nlx1NjVDNlx1NjVDM1x1NjVDNFx1NjVDMlx1NjY0QVx1NjY1Rlx1NjY0N1x1NjY1MVx1NjcxMlx1NjcxM1x1NjgxRlx1NjgxQVx1Njg0OVx1NjgzMlx1NjgzM1x1NjgzQlx1Njg0Qlx1Njg0Rlx1NjgxNlx1NjgzMVx1NjgxQ1x1NjgzNVx1NjgyQlx1NjgyRFx1NjgyRlx1Njg0RVx1Njg0NFx1NjgzNFx1NjgxRFx1NjgxMlx1NjgxNFx1NjgyNlx1NjgyOFx1NjgyRVx1Njg0RFx1NjgzQVx1NjgyNVx1NjgyMFx1NkIyQ1x1NkIyRlx1NkIyRFx1NkIzMVx1NkIzNFx1NkI2RFx1ODA4Mlx1NkI4OFx1NkJFNlx1NkJFNFwiXSxcbltcImQyNDBcIixcIlx1NkJFOFx1NkJFM1x1NkJFMlx1NkJFN1x1NkMyNVx1NkQ3QVx1NkQ2M1x1NkQ2NFx1NkQ3Nlx1NkQwRFx1NkQ2MVx1NkQ5Mlx1NkQ1OFx1NkQ2Mlx1NkQ2RFx1NkQ2Rlx1NkQ5MVx1NkQ4RFx1NkRFRlx1NkQ3Rlx1NkQ4Nlx1NkQ1RVx1NkQ2N1x1NkQ2MFx1NkQ5N1x1NkQ3MFx1NkQ3Q1x1NkQ1Rlx1NkQ4Mlx1NkQ5OFx1NkQyRlx1NkQ2OFx1NkQ4Qlx1NkQ3RVx1NkQ4MFx1NkQ4NFx1NkQxNlx1NkQ4M1x1NkQ3Qlx1NkQ3RFx1NkQ3NVx1NkQ5MFx1NzBEQ1x1NzBEM1x1NzBEMVx1NzBERFx1NzBDQlx1N0YzOVx1NzBFMlx1NzBEN1x1NzBEMlx1NzBERVx1NzBFMFx1NzBENFx1NzBDRFx1NzBDNVx1NzBDNlx1NzBDN1x1NzBEQVx1NzBDRVx1NzBFMVx1NzI0Mlx1NzI3OFwiXSxcbltcImQyYTFcIixcIlx1NzI3N1x1NzI3Nlx1NzMwMFx1NzJGQVx1NzJGNFx1NzJGRVx1NzJGNlx1NzJGM1x1NzJGQlx1NzMwMVx1NzNEM1x1NzNEOVx1NzNFNVx1NzNENlx1NzNCQ1x1NzNFN1x1NzNFM1x1NzNFOVx1NzNEQ1x1NzNEMlx1NzNEQlx1NzNENFx1NzNERFx1NzNEQVx1NzNEN1x1NzNEOFx1NzNFOFx1NzRERVx1NzRERlx1NzRGNFx1NzRGNVx1NzUyMVx1NzU1Qlx1NzU1Rlx1NzVCMFx1NzVDMVx1NzVCQlx1NzVDNFx1NzVDMFx1NzVCRlx1NzVCNlx1NzVCQVx1NzY4QVx1NzZDOVx1NzcxRFx1NzcxQlx1NzcxMFx1NzcxM1x1NzcxMlx1NzcyM1x1NzcxMVx1NzcxNVx1NzcxOVx1NzcxQVx1NzcyMlx1NzcyN1x1NzgyM1x1NzgyQ1x1NzgyMlx1NzgzNVx1NzgyRlx1NzgyOFx1NzgyRVx1NzgyQlx1NzgyMVx1NzgyOVx1NzgzM1x1NzgyQVx1NzgzMVx1Nzk1NFx1Nzk1Qlx1Nzk0Rlx1Nzk1Q1x1Nzk1M1x1Nzk1Mlx1Nzk1MVx1NzlFQlx1NzlFQ1x1NzlFMFx1NzlFRVx1NzlFRFx1NzlFQVx1NzlEQ1x1NzlERVx1NzlERFx1N0E4Nlx1N0E4OVx1N0E4NVx1N0E4Qlx1N0E4Q1x1N0E4QVx1N0E4N1x1N0FEOFx1N0IxMFwiXSxcbltcImQzNDBcIixcIlx1N0IwNFx1N0IxM1x1N0IwNVx1N0IwRlx1N0IwOFx1N0IwQVx1N0IwRVx1N0IwOVx1N0IxMlx1N0M4NFx1N0M5MVx1N0M4QVx1N0M4Q1x1N0M4OFx1N0M4RFx1N0M4NVx1N0QxRVx1N0QxRFx1N0QxMVx1N0QwRVx1N0QxOFx1N0QxNlx1N0QxM1x1N0QxRlx1N0QxMlx1N0QwRlx1N0QwQ1x1N0Y1Q1x1N0Y2MVx1N0Y1RVx1N0Y2MFx1N0Y1RFx1N0Y1Qlx1N0Y5Nlx1N0Y5Mlx1N0ZDM1x1N0ZDMlx1N0ZDMFx1ODAxNlx1ODAzRVx1ODAzOVx1ODBGQVx1ODBGMlx1ODBGOVx1ODBGNVx1ODEwMVx1ODBGQlx1ODEwMFx1ODIwMVx1ODIyRlx1ODIyNVx1ODMzM1x1ODMyRFx1ODM0NFx1ODMxOVx1ODM1MVx1ODMyNVx1ODM1Nlx1ODMzRlx1ODM0MVx1ODMyNlx1ODMxQ1x1ODMyMlwiXSxcbltcImQzYTFcIixcIlx1ODM0Mlx1ODM0RVx1ODMxQlx1ODMyQVx1ODMwOFx1ODMzQ1x1ODM0RFx1ODMxNlx1ODMyNFx1ODMyMFx1ODMzN1x1ODMyRlx1ODMyOVx1ODM0N1x1ODM0NVx1ODM0Q1x1ODM1M1x1ODMxRVx1ODMyQ1x1ODM0Qlx1ODMyN1x1ODM0OFx1ODY1M1x1ODY1Mlx1ODZBMlx1ODZBOFx1ODY5Nlx1ODY4RFx1ODY5MVx1ODY5RVx1ODY4N1x1ODY5N1x1ODY4Nlx1ODY4Qlx1ODY5QVx1ODY4NVx1ODZBNVx1ODY5OVx1ODZBMVx1ODZBN1x1ODY5NVx1ODY5OFx1ODY4RVx1ODY5RFx1ODY5MFx1ODY5NFx1ODg0M1x1ODg0NFx1ODg2RFx1ODg3NVx1ODg3Nlx1ODg3Mlx1ODg4MFx1ODg3MVx1ODg3Rlx1ODg2Rlx1ODg4M1x1ODg3RVx1ODg3NFx1ODg3Q1x1OEExMlx1OEM0N1x1OEM1N1x1OEM3Qlx1OENBNFx1OENBM1x1OEQ3Nlx1OEQ3OFx1OERCNVx1OERCN1x1OERCNlx1OEVEMVx1OEVEM1x1OEZGRVx1OEZGNVx1OTAwMlx1OEZGRlx1OEZGQlx1OTAwNFx1OEZGQ1x1OEZGNlx1OTBENlx1OTBFMFx1OTBEOVx1OTBEQVx1OTBFM1x1OTBERlx1OTBFNVx1OTBEOFx1OTBEQlx1OTBEN1x1OTBEQ1x1OTBFNFx1OTE1MFwiXSxcbltcImQ0NDBcIixcIlx1OTE0RVx1OTE0Rlx1OTFENVx1OTFFMlx1OTFEQVx1OTY1Q1x1OTY1Rlx1OTZCQ1x1OThFM1x1OUFERlx1OUIyRlx1NEU3Rlx1NTA3MFx1NTA2QVx1NTA2MVx1NTA1RVx1NTA2MFx1NTA1M1x1NTA0Qlx1NTA1RFx1NTA3Mlx1NTA0OFx1NTA0RFx1NTA0MVx1NTA1Qlx1NTA0QVx1NTA2Mlx1NTAxNVx1NTA0NVx1NTA1Rlx1NTA2OVx1NTA2Qlx1NTA2M1x1NTA2NFx1NTA0Nlx1NTA0MFx1NTA2RVx1NTA3M1x1NTA1N1x1NTA1MVx1NTFEMFx1NTI2Qlx1NTI2RFx1NTI2Q1x1NTI2RVx1NTJENlx1NTJEM1x1NTMyRFx1NTM5Q1x1NTU3NVx1NTU3Nlx1NTUzQ1x1NTU0RFx1NTU1MFx1NTUzNFx1NTUyQVx1NTU1MVx1NTU2Mlx1NTUzNlx1NTUzNVx1NTUzMFx1NTU1Mlx1NTU0NVwiXSxcbltcImQ0YTFcIixcIlx1NTUwQ1x1NTUzMlx1NTU2NVx1NTU0RVx1NTUzOVx1NTU0OFx1NTUyRFx1NTUzQlx1NTU0MFx1NTU0Qlx1NTcwQVx1NTcwN1x1NTdGQlx1NTgxNFx1NTdFMlx1NTdGNlx1NTdEQ1x1NTdGNFx1NTgwMFx1NTdFRFx1NTdGRFx1NTgwOFx1NTdGOFx1NTgwQlx1NTdGM1x1NTdDRlx1NTgwN1x1NTdFRVx1NTdFM1x1NTdGMlx1NTdFNVx1NTdFQ1x1NTdFMVx1NTgwRVx1NTdGQ1x1NTgxMFx1NTdFN1x1NTgwMVx1NTgwQ1x1NTdGMVx1NTdFOVx1NTdGMFx1NTgwRFx1NTgwNFx1NTk1Q1x1NUE2MFx1NUE1OFx1NUE1NVx1NUE2N1x1NUE1RVx1NUEzOFx1NUEzNVx1NUE2RFx1NUE1MFx1NUE1Rlx1NUE2NVx1NUE2Q1x1NUE1M1x1NUE2NFx1NUE1N1x1NUE0M1x1NUE1RFx1NUE1Mlx1NUE0NFx1NUE1Qlx1NUE0OFx1NUE4RVx1NUEzRVx1NUE0RFx1NUEzOVx1NUE0Q1x1NUE3MFx1NUE2OVx1NUE0N1x1NUE1MVx1NUE1Nlx1NUE0Mlx1NUE1Q1x1NUI3Mlx1NUI2RVx1NUJDMVx1NUJDMFx1NUM1OVx1NUQxRVx1NUQwQlx1NUQxRFx1NUQxQVx1NUQyMFx1NUQwQ1x1NUQyOFx1NUQwRFx1NUQyNlx1NUQyNVx1NUQwRlwiXSxcbltcImQ1NDBcIixcIlx1NUQzMFx1NUQxMlx1NUQyM1x1NUQxRlx1NUQyRVx1NUUzRVx1NUUzNFx1NUVCMVx1NUVCNFx1NUVCOVx1NUVCMlx1NUVCM1x1NUYzNlx1NUYzOFx1NUY5Qlx1NUY5Nlx1NUY5Rlx1NjA4QVx1NjA5MFx1NjA4Nlx1NjBCRVx1NjBCMFx1NjBCQVx1NjBEM1x1NjBENFx1NjBDRlx1NjBFNFx1NjBEOVx1NjBERFx1NjBDOFx1NjBCMVx1NjBEQlx1NjBCN1x1NjBDQVx1NjBCRlx1NjBDM1x1NjBDRFx1NjBDMFx1NjMzMlx1NjM2NVx1NjM4QVx1NjM4Mlx1NjM3RFx1NjNCRFx1NjM5RVx1NjNBRFx1NjM5RFx1NjM5N1x1NjNBQlx1NjM4RVx1NjM2Rlx1NjM4N1x1NjM5MFx1NjM2RVx1NjNBRlx1NjM3NVx1NjM5Q1x1NjM2RFx1NjNBRVx1NjM3Q1x1NjNBNFx1NjMzQlx1NjM5RlwiXSxcbltcImQ1YTFcIixcIlx1NjM3OFx1NjM4NVx1NjM4MVx1NjM5MVx1NjM4RFx1NjM3MFx1NjU1M1x1NjVDRFx1NjY2NVx1NjY2MVx1NjY1Qlx1NjY1OVx1NjY1Q1x1NjY2Mlx1NjcxOFx1Njg3OVx1Njg4N1x1Njg5MFx1Njg5Q1x1Njg2RFx1Njg2RVx1NjhBRVx1NjhBQlx1Njk1Nlx1Njg2Rlx1NjhBM1x1NjhBQ1x1NjhBOVx1Njg3NVx1Njg3NFx1NjhCMlx1Njg4Rlx1Njg3N1x1Njg5Mlx1Njg3Q1x1Njg2Qlx1Njg3Mlx1NjhBQVx1Njg4MFx1Njg3MVx1Njg3RVx1Njg5Qlx1Njg5Nlx1Njg4Qlx1NjhBMFx1Njg4OVx1NjhBNFx1Njg3OFx1Njg3Qlx1Njg5MVx1Njg4Q1x1Njg4QVx1Njg3RFx1NkIzNlx1NkIzM1x1NkIzN1x1NkIzOFx1NkI5MVx1NkI4Rlx1NkI4RFx1NkI4RVx1NkI4Q1x1NkMyQVx1NkRDMFx1NkRBQlx1NkRCNFx1NkRCM1x1NkU3NFx1NkRBQ1x1NkRFOVx1NkRFMlx1NkRCN1x1NkRGNlx1NkRENFx1NkUwMFx1NkRDOFx1NkRFMFx1NkRERlx1NkRENlx1NkRCRVx1NkRFNVx1NkREQ1x1NkRERFx1NkREQlx1NkRGNFx1NkRDQVx1NkRCRFx1NkRFRFx1NkRGMFx1NkRCQVx1NkRENVx1NkRDMlx1NkRDRlx1NkRDOVwiXSxcbltcImQ2NDBcIixcIlx1NkREMFx1NkRGMlx1NkREM1x1NkRGRFx1NkREN1x1NkRDRFx1NkRFM1x1NkRCQlx1NzBGQVx1NzEwRFx1NzBGN1x1NzExN1x1NzBGNFx1NzEwQ1x1NzBGMFx1NzEwNFx1NzBGM1x1NzExMFx1NzBGQ1x1NzBGRlx1NzEwNlx1NzExM1x1NzEwMFx1NzBGOFx1NzBGNlx1NzEwQlx1NzEwMlx1NzEwRVx1NzI3RVx1NzI3Qlx1NzI3Q1x1NzI3Rlx1NzMxRFx1NzMxN1x1NzMwN1x1NzMxMVx1NzMxOFx1NzMwQVx1NzMwOFx1NzJGRlx1NzMwRlx1NzMxRVx1NzM4OFx1NzNGNlx1NzNGOFx1NzNGNVx1NzQwNFx1NzQwMVx1NzNGRFx1NzQwN1x1NzQwMFx1NzNGQVx1NzNGQ1x1NzNGRlx1NzQwQ1x1NzQwQlx1NzNGNFx1NzQwOFx1NzU2NFx1NzU2M1x1NzVDRVx1NzVEMlx1NzVDRlwiXSxcbltcImQ2YTFcIixcIlx1NzVDQlx1NzVDQ1x1NzVEMVx1NzVEMFx1NzY4Rlx1NzY4OVx1NzZEM1x1NzczOVx1NzcyRlx1NzcyRFx1NzczMVx1NzczMlx1NzczNFx1NzczM1x1NzczRFx1NzcyNVx1NzczQlx1NzczNVx1Nzg0OFx1Nzg1Mlx1Nzg0OVx1Nzg0RFx1Nzg0QVx1Nzg0Q1x1NzgyNlx1Nzg0NVx1Nzg1MFx1Nzk2NFx1Nzk2N1x1Nzk2OVx1Nzk2QVx1Nzk2M1x1Nzk2Qlx1Nzk2MVx1NzlCQlx1NzlGQVx1NzlGOFx1NzlGNlx1NzlGN1x1N0E4Rlx1N0E5NFx1N0E5MFx1N0IzNVx1N0I0N1x1N0IzNFx1N0IyNVx1N0IzMFx1N0IyMlx1N0IyNFx1N0IzM1x1N0IxOFx1N0IyQVx1N0IxRFx1N0IzMVx1N0IyQlx1N0IyRFx1N0IyRlx1N0IzMlx1N0IzOFx1N0IxQVx1N0IyM1x1N0M5NFx1N0M5OFx1N0M5Nlx1N0NBM1x1N0QzNVx1N0QzRFx1N0QzOFx1N0QzNlx1N0QzQVx1N0Q0NVx1N0QyQ1x1N0QyOVx1N0Q0MVx1N0Q0N1x1N0QzRVx1N0QzRlx1N0Q0QVx1N0QzQlx1N0QyOFx1N0Y2M1x1N0Y5NVx1N0Y5Q1x1N0Y5RFx1N0Y5Qlx1N0ZDQVx1N0ZDQlx1N0ZDRFx1N0ZEMFx1N0ZEMVx1N0ZDN1x1N0ZDRlx1N0ZDOVx1ODAxRlwiXSxcbltcImQ3NDBcIixcIlx1ODAxRVx1ODAxQlx1ODA0N1x1ODA0M1x1ODA0OFx1ODExOFx1ODEyNVx1ODExOVx1ODExQlx1ODEyRFx1ODExRlx1ODEyQ1x1ODExRVx1ODEyMVx1ODExNVx1ODEyN1x1ODExRFx1ODEyMlx1ODIxMVx1ODIzOFx1ODIzM1x1ODIzQVx1ODIzNFx1ODIzMlx1ODI3NFx1ODM5MFx1ODNBM1x1ODNBOFx1ODM4RFx1ODM3QVx1ODM3M1x1ODNBNFx1ODM3NFx1ODM4Rlx1ODM4MVx1ODM5NVx1ODM5OVx1ODM3NVx1ODM5NFx1ODNBOVx1ODM3RFx1ODM4M1x1ODM4Q1x1ODM5RFx1ODM5Qlx1ODNBQVx1ODM4Qlx1ODM3RVx1ODNBNVx1ODNBRlx1ODM4OFx1ODM5N1x1ODNCMFx1ODM3Rlx1ODNBNlx1ODM4N1x1ODNBRVx1ODM3Nlx1ODM5QVx1ODY1OVx1ODY1Nlx1ODZCRlx1ODZCN1wiXSxcbltcImQ3YTFcIixcIlx1ODZDMlx1ODZDMVx1ODZDNVx1ODZCQVx1ODZCMFx1ODZDOFx1ODZCOVx1ODZCM1x1ODZCOFx1ODZDQ1x1ODZCNFx1ODZCQlx1ODZCQ1x1ODZDM1x1ODZCRFx1ODZCRVx1ODg1Mlx1ODg4OVx1ODg5NVx1ODhBOFx1ODhBMlx1ODhBQVx1ODg5QVx1ODg5MVx1ODhBMVx1ODg5Rlx1ODg5OFx1ODhBN1x1ODg5OVx1ODg5Qlx1ODg5N1x1ODhBNFx1ODhBQ1x1ODg4Q1x1ODg5M1x1ODg4RVx1ODk4Mlx1ODlENlx1ODlEOVx1ODlENVx1OEEzMFx1OEEyN1x1OEEyQ1x1OEExRVx1OEMzOVx1OEMzQlx1OEM1Q1x1OEM1RFx1OEM3RFx1OENBNVx1OEQ3RFx1OEQ3Qlx1OEQ3OVx1OERCQ1x1OERDMlx1OERCOVx1OERCRlx1OERDMVx1OEVEOFx1OEVERVx1OEVERFx1OEVEQ1x1OEVEN1x1OEVFMFx1OEVFMVx1OTAyNFx1OTAwQlx1OTAxMVx1OTAxQ1x1OTAwQ1x1OTAyMVx1OTBFRlx1OTBFQVx1OTBGMFx1OTBGNFx1OTBGMlx1OTBGM1x1OTBENFx1OTBFQlx1OTBFQ1x1OTBFOVx1OTE1Nlx1OTE1OFx1OTE1QVx1OTE1M1x1OTE1NVx1OTFFQ1x1OTFGNFx1OTFGMVx1OTFGM1x1OTFGOFx1OTFFNFx1OTFGOVx1OTFFQVwiXSxcbltcImQ4NDBcIixcIlx1OTFFQlx1OTFGN1x1OTFFOFx1OTFFRVx1OTU3QVx1OTU4Nlx1OTU4OFx1OTY3Q1x1OTY2RFx1OTY2Qlx1OTY3MVx1OTY2Rlx1OTZCRlx1OTc2QVx1OTgwNFx1OThFNVx1OTk5N1x1NTA5Qlx1NTA5NVx1NTA5NFx1NTA5RVx1NTA4Qlx1NTBBM1x1NTA4M1x1NTA4Q1x1NTA4RVx1NTA5RFx1NTA2OFx1NTA5Q1x1NTA5Mlx1NTA4Mlx1NTA4N1x1NTE1Rlx1NTFENFx1NTMxMlx1NTMxMVx1NTNBNFx1NTNBN1x1NTU5MVx1NTVBOFx1NTVBNVx1NTVBRFx1NTU3N1x1NTY0NVx1NTVBMlx1NTU5M1x1NTU4OFx1NTU4Rlx1NTVCNVx1NTU4MVx1NTVBM1x1NTU5Mlx1NTVBNFx1NTU3RFx1NTU4Q1x1NTVBNlx1NTU3Rlx1NTU5NVx1NTVBMVx1NTU4RVx1NTcwQ1x1NTgyOVx1NTgzN1wiXSxcbltcImQ4YTFcIixcIlx1NTgxOVx1NTgxRVx1NTgyN1x1NTgyM1x1NTgyOFx1NTdGNVx1NTg0OFx1NTgyNVx1NTgxQ1x1NTgxQlx1NTgzM1x1NTgzRlx1NTgzNlx1NTgyRVx1NTgzOVx1NTgzOFx1NTgyRFx1NTgyQ1x1NTgzQlx1NTk2MVx1NUFBRlx1NUE5NFx1NUE5Rlx1NUE3QVx1NUFBMlx1NUE5RVx1NUE3OFx1NUFBNlx1NUE3Q1x1NUFBNVx1NUFBQ1x1NUE5NVx1NUFBRVx1NUEzN1x1NUE4NFx1NUE4QVx1NUE5N1x1NUE4M1x1NUE4Qlx1NUFBOVx1NUE3Qlx1NUE3RFx1NUE4Q1x1NUE5Q1x1NUE4Rlx1NUE5M1x1NUE5RFx1NUJFQVx1NUJDRFx1NUJDQlx1NUJENFx1NUJEMVx1NUJDQVx1NUJDRVx1NUMwQ1x1NUMzMFx1NUQzN1x1NUQ0M1x1NUQ2Qlx1NUQ0MVx1NUQ0Qlx1NUQzRlx1NUQzNVx1NUQ1MVx1NUQ0RVx1NUQ1NVx1NUQzM1x1NUQzQVx1NUQ1Mlx1NUQzRFx1NUQzMVx1NUQ1OVx1NUQ0Mlx1NUQzOVx1NUQ0OVx1NUQzOFx1NUQzQ1x1NUQzMlx1NUQzNlx1NUQ0MFx1NUQ0NVx1NUU0NFx1NUU0MVx1NUY1OFx1NUZBNlx1NUZBNVx1NUZBQlx1NjBDOVx1NjBCOVx1NjBDQ1x1NjBFMlx1NjBDRVx1NjBDNFx1NjExNFwiXSxcbltcImQ5NDBcIixcIlx1NjBGMlx1NjEwQVx1NjExNlx1NjEwNVx1NjBGNVx1NjExM1x1NjBGOFx1NjBGQ1x1NjBGRVx1NjBDMVx1NjEwM1x1NjExOFx1NjExRFx1NjExMFx1NjBGRlx1NjEwNFx1NjEwQlx1NjI0QVx1NjM5NFx1NjNCMVx1NjNCMFx1NjNDRVx1NjNFNVx1NjNFOFx1NjNFRlx1NjNDM1x1NjQ5RFx1NjNGM1x1NjNDQVx1NjNFMFx1NjNGNlx1NjNENVx1NjNGMlx1NjNGNVx1NjQ2MVx1NjNERlx1NjNCRVx1NjNERFx1NjNEQ1x1NjNDNFx1NjNEOFx1NjNEM1x1NjNDMlx1NjNDN1x1NjNDQ1x1NjNDQlx1NjNDOFx1NjNGMFx1NjNEN1x1NjNEOVx1NjUzMlx1NjU2N1x1NjU2QVx1NjU2NFx1NjU1Q1x1NjU2OFx1NjU2NVx1NjU4Q1x1NjU5RFx1NjU5RVx1NjVBRVx1NjVEMFx1NjVEMlwiXSxcbltcImQ5YTFcIixcIlx1NjY3Q1x1NjY2Q1x1NjY3Qlx1NjY4MFx1NjY3MVx1NjY3OVx1NjY2QVx1NjY3Mlx1NjcwMVx1NjkwQ1x1NjhEM1x1NjkwNFx1NjhEQ1x1NjkyQVx1NjhFQ1x1NjhFQVx1NjhGMVx1NjkwRlx1NjhENlx1NjhGN1x1NjhFQlx1NjhFNFx1NjhGNlx1NjkxM1x1NjkxMFx1NjhGM1x1NjhFMVx1NjkwN1x1NjhDQ1x1NjkwOFx1Njk3MFx1NjhCNFx1NjkxMVx1NjhFRlx1NjhDNlx1NjkxNFx1NjhGOFx1NjhEMFx1NjhGRFx1NjhGQ1x1NjhFOFx1NjkwQlx1NjkwQVx1NjkxN1x1NjhDRVx1NjhDOFx1NjhERFx1NjhERVx1NjhFNlx1NjhGNFx1NjhEMVx1NjkwNlx1NjhENFx1NjhFOVx1NjkxNVx1NjkyNVx1NjhDN1x1NkIzOVx1NkIzQlx1NkIzRlx1NkIzQ1x1NkI5NFx1NkI5N1x1NkI5OVx1NkI5NVx1NkJCRFx1NkJGMFx1NkJGMlx1NkJGM1x1NkMzMFx1NkRGQ1x1NkU0Nlx1NkU0N1x1NkUxRlx1NkU0OVx1NkU4OFx1NkUzQ1x1NkUzRFx1NkU0NVx1NkU2Mlx1NkUyQlx1NkUzRlx1NkU0MVx1NkU1RFx1NkU3M1x1NkUxQ1x1NkUzM1x1NkU0Qlx1NkU0MFx1NkU1MVx1NkUzQlx1NkUwM1x1NkUyRVx1NkU1RVwiXSxcbltcImRhNDBcIixcIlx1NkU2OFx1NkU1Q1x1NkU2MVx1NkUzMVx1NkUyOFx1NkU2MFx1NkU3MVx1NkU2Qlx1NkUzOVx1NkUyMlx1NkUzMFx1NkU1M1x1NkU2NVx1NkUyN1x1NkU3OFx1NkU2NFx1NkU3N1x1NkU1NVx1NkU3OVx1NkU1Mlx1NkU2Nlx1NkUzNVx1NkUzNlx1NkU1QVx1NzEyMFx1NzExRVx1NzEyRlx1NzBGQlx1NzEyRVx1NzEzMVx1NzEyM1x1NzEyNVx1NzEyMlx1NzEzMlx1NzExRlx1NzEyOFx1NzEzQVx1NzExQlx1NzI0Qlx1NzI1QVx1NzI4OFx1NzI4OVx1NzI4Nlx1NzI4NVx1NzI4Qlx1NzMxMlx1NzMwQlx1NzMzMFx1NzMyMlx1NzMzMVx1NzMzM1x1NzMyN1x1NzMzMlx1NzMyRFx1NzMyNlx1NzMyM1x1NzMzNVx1NzMwQ1x1NzQyRVx1NzQyQ1x1NzQzMFx1NzQyQlx1NzQxNlwiXSxcbltcImRhYTFcIixcIlx1NzQxQVx1NzQyMVx1NzQyRFx1NzQzMVx1NzQyNFx1NzQyM1x1NzQxRFx1NzQyOVx1NzQyMFx1NzQzMlx1NzRGQlx1NzUyRlx1NzU2Rlx1NzU2Q1x1NzVFN1x1NzVEQVx1NzVFMVx1NzVFNlx1NzVERFx1NzVERlx1NzVFNFx1NzVEN1x1NzY5NVx1NzY5Mlx1NzZEQVx1Nzc0Nlx1Nzc0N1x1Nzc0NFx1Nzc0RFx1Nzc0NVx1Nzc0QVx1Nzc0RVx1Nzc0Qlx1Nzc0Q1x1NzdERVx1NzdFQ1x1Nzg2MFx1Nzg2NFx1Nzg2NVx1Nzg1Q1x1Nzg2RFx1Nzg3MVx1Nzg2QVx1Nzg2RVx1Nzg3MFx1Nzg2OVx1Nzg2OFx1Nzg1RVx1Nzg2Mlx1Nzk3NFx1Nzk3M1x1Nzk3Mlx1Nzk3MFx1N0EwMlx1N0EwQVx1N0EwM1x1N0EwQ1x1N0EwNFx1N0E5OVx1N0FFNlx1N0FFNFx1N0I0QVx1N0IzQlx1N0I0NFx1N0I0OFx1N0I0Q1x1N0I0RVx1N0I0MFx1N0I1OFx1N0I0NVx1N0NBMlx1N0M5RVx1N0NBOFx1N0NBMVx1N0Q1OFx1N0Q2Rlx1N0Q2M1x1N0Q1M1x1N0Q1Nlx1N0Q2N1x1N0Q2QVx1N0Q0Rlx1N0Q2RFx1N0Q1Q1x1N0Q2Qlx1N0Q1Mlx1N0Q1NFx1N0Q2OVx1N0Q1MVx1N0Q1Rlx1N0Q0RVx1N0YzRVx1N0YzRlx1N0Y2NVwiXSxcbltcImRiNDBcIixcIlx1N0Y2Nlx1N0ZBMlx1N0ZBMFx1N0ZBMVx1N0ZEN1x1ODA1MVx1ODA0Rlx1ODA1MFx1ODBGRVx1ODBENFx1ODE0M1x1ODE0QVx1ODE1Mlx1ODE0Rlx1ODE0N1x1ODEzRFx1ODE0RFx1ODEzQVx1ODFFNlx1ODFFRVx1ODFGN1x1ODFGOFx1ODFGOVx1ODIwNFx1ODIzQ1x1ODIzRFx1ODIzRlx1ODI3NVx1ODMzQlx1ODNDRlx1ODNGOVx1ODQyM1x1ODNDMFx1ODNFOFx1ODQxMlx1ODNFN1x1ODNFNFx1ODNGQ1x1ODNGNlx1ODQxMFx1ODNDNlx1ODNDOFx1ODNFQlx1ODNFM1x1ODNCRlx1ODQwMVx1ODNERFx1ODNFNVx1ODNEOFx1ODNGRlx1ODNFMVx1ODNDQlx1ODNDRVx1ODNENlx1ODNGNVx1ODNDOVx1ODQwOVx1ODQwRlx1ODNERVx1ODQxMVx1ODQwNlx1ODNDMlx1ODNGM1wiXSxcbltcImRiYTFcIixcIlx1ODNENVx1ODNGQVx1ODNDN1x1ODNEMVx1ODNFQVx1ODQxM1x1ODNDM1x1ODNFQ1x1ODNFRVx1ODNDNFx1ODNGQlx1ODNEN1x1ODNFMlx1ODQxQlx1ODNEQlx1ODNGRVx1ODZEOFx1ODZFMlx1ODZFNlx1ODZEM1x1ODZFM1x1ODZEQVx1ODZFQVx1ODZERFx1ODZFQlx1ODZEQ1x1ODZFQ1x1ODZFOVx1ODZEN1x1ODZFOFx1ODZEMVx1ODg0OFx1ODg1Nlx1ODg1NVx1ODhCQVx1ODhEN1x1ODhCOVx1ODhCOFx1ODhDMFx1ODhCRVx1ODhCNlx1ODhCQ1x1ODhCN1x1ODhCRFx1ODhCMlx1ODkwMVx1ODhDOVx1ODk5NVx1ODk5OFx1ODk5N1x1ODlERFx1ODlEQVx1ODlEQlx1OEE0RVx1OEE0RFx1OEEzOVx1OEE1OVx1OEE0MFx1OEE1N1x1OEE1OFx1OEE0NFx1OEE0NVx1OEE1Mlx1OEE0OFx1OEE1MVx1OEE0QVx1OEE0Q1x1OEE0Rlx1OEM1Rlx1OEM4MVx1OEM4MFx1OENCQVx1OENCRVx1OENCMFx1OENCOVx1OENCNVx1OEQ4NFx1OEQ4MFx1OEQ4OVx1OEREOFx1OEREM1x1OERDRFx1OERDN1x1OERENlx1OEREQ1x1OERDRlx1OERENVx1OEREOVx1OERDOFx1OEREN1x1OERDNVx1OEVFRlx1OEVGN1x1OEVGQVwiXSxcbltcImRjNDBcIixcIlx1OEVGOVx1OEVFNlx1OEVFRVx1OEVFNVx1OEVGNVx1OEVFN1x1OEVFOFx1OEVGNlx1OEVFQlx1OEVGMVx1OEVFQ1x1OEVGNFx1OEVFOVx1OTAyRFx1OTAzNFx1OTAyRlx1OTEwNlx1OTEyQ1x1OTEwNFx1OTBGRlx1OTBGQ1x1OTEwOFx1OTBGOVx1OTBGQlx1OTEwMVx1OTEwMFx1OTEwN1x1OTEwNVx1OTEwM1x1OTE2MVx1OTE2NFx1OTE1Rlx1OTE2Mlx1OTE2MFx1OTIwMVx1OTIwQVx1OTIyNVx1OTIwM1x1OTIxQVx1OTIyNlx1OTIwRlx1OTIwQ1x1OTIwMFx1OTIxMlx1OTFGRlx1OTFGRFx1OTIwNlx1OTIwNFx1OTIyN1x1OTIwMlx1OTIxQ1x1OTIyNFx1OTIxOVx1OTIxN1x1OTIwNVx1OTIxNlx1OTU3Qlx1OTU4RFx1OTU4Q1x1OTU5MFx1OTY4N1x1OTY3RVx1OTY4OFwiXSxcbltcImRjYTFcIixcIlx1OTY4OVx1OTY4M1x1OTY4MFx1OTZDMlx1OTZDOFx1OTZDM1x1OTZGMVx1OTZGMFx1OTc2Q1x1OTc3MFx1OTc2RVx1OTgwN1x1OThBOVx1OThFQlx1OUNFNlx1OUVGOVx1NEU4M1x1NEU4NFx1NEVCNlx1NTBCRFx1NTBCRlx1NTBDNlx1NTBBRVx1NTBDNFx1NTBDQVx1NTBCNFx1NTBDOFx1NTBDMlx1NTBCMFx1NTBDMVx1NTBCQVx1NTBCMVx1NTBDQlx1NTBDOVx1NTBCNlx1NTBCOFx1NTFEN1x1NTI3QVx1NTI3OFx1NTI3Qlx1NTI3Q1x1NTVDM1x1NTVEQlx1NTVDQ1x1NTVEMFx1NTVDQlx1NTVDQVx1NTVERFx1NTVDMFx1NTVENFx1NTVDNFx1NTVFOVx1NTVCRlx1NTVEMlx1NTU4RFx1NTVDRlx1NTVENVx1NTVFMlx1NTVENlx1NTVDOFx1NTVGMlx1NTVDRFx1NTVEOVx1NTVDMlx1NTcxNFx1NTg1M1x1NTg2OFx1NTg2NFx1NTg0Rlx1NTg0RFx1NTg0OVx1NTg2Rlx1NTg1NVx1NTg0RVx1NTg1RFx1NTg1OVx1NTg2NVx1NTg1Qlx1NTgzRFx1NTg2M1x1NTg3MVx1NThGQ1x1NUFDN1x1NUFDNFx1NUFDQlx1NUFCQVx1NUFCOFx1NUFCMVx1NUFCNVx1NUFCMFx1NUFCRlx1NUFDOFx1NUFCQlx1NUFDNlwiXSxcbltcImRkNDBcIixcIlx1NUFCN1x1NUFDMFx1NUFDQVx1NUFCNFx1NUFCNlx1NUFDRFx1NUFCOVx1NUE5MFx1NUJENlx1NUJEOFx1NUJEOVx1NUMxRlx1NUMzM1x1NUQ3MVx1NUQ2M1x1NUQ0QVx1NUQ2NVx1NUQ3Mlx1NUQ2Q1x1NUQ1RVx1NUQ2OFx1NUQ2N1x1NUQ2Mlx1NURGMFx1NUU0Rlx1NUU0RVx1NUU0QVx1NUU0RFx1NUU0Qlx1NUVDNVx1NUVDQ1x1NUVDNlx1NUVDQlx1NUVDN1x1NUY0MFx1NUZBRlx1NUZBRFx1NjBGN1x1NjE0OVx1NjE0QVx1NjEyQlx1NjE0NVx1NjEzNlx1NjEzMlx1NjEyRVx1NjE0Nlx1NjEyRlx1NjE0Rlx1NjEyOVx1NjE0MFx1NjIyMFx1OTE2OFx1NjIyM1x1NjIyNVx1NjIyNFx1NjNDNVx1NjNGMVx1NjNFQlx1NjQxMFx1NjQxMlx1NjQwOVx1NjQyMFx1NjQyNFwiXSxcbltcImRkYTFcIixcIlx1NjQzM1x1NjQ0M1x1NjQxRlx1NjQxNVx1NjQxOFx1NjQzOVx1NjQzN1x1NjQyMlx1NjQyM1x1NjQwQ1x1NjQyNlx1NjQzMFx1NjQyOFx1NjQ0MVx1NjQzNVx1NjQyRlx1NjQwQVx1NjQxQVx1NjQ0MFx1NjQyNVx1NjQyN1x1NjQwQlx1NjNFN1x1NjQxQlx1NjQyRVx1NjQyMVx1NjQwRVx1NjU2Rlx1NjU5Mlx1NjVEM1x1NjY4Nlx1NjY4Q1x1NjY5NVx1NjY5MFx1NjY4Qlx1NjY4QVx1NjY5OVx1NjY5NFx1NjY3OFx1NjcyMFx1Njk2Nlx1Njk1Rlx1NjkzOFx1Njk0RVx1Njk2Mlx1Njk3MVx1NjkzRlx1Njk0NVx1Njk2QVx1NjkzOVx1Njk0Mlx1Njk1N1x1Njk1OVx1Njk3QVx1Njk0OFx1Njk0OVx1NjkzNVx1Njk2Q1x1NjkzM1x1NjkzRFx1Njk2NVx1NjhGMFx1Njk3OFx1NjkzNFx1Njk2OVx1Njk0MFx1Njk2Rlx1Njk0NFx1Njk3Nlx1Njk1OFx1Njk0MVx1Njk3NFx1Njk0Q1x1NjkzQlx1Njk0Qlx1NjkzN1x1Njk1Q1x1Njk0Rlx1Njk1MVx1NjkzMlx1Njk1Mlx1NjkyRlx1Njk3Qlx1NjkzQ1x1NkI0Nlx1NkI0NVx1NkI0M1x1NkI0Mlx1NkI0OFx1NkI0MVx1NkI5Qlx1RkEwRFx1NkJGQlx1NkJGQ1wiXSxcbltcImRlNDBcIixcIlx1NkJGOVx1NkJGN1x1NkJGOFx1NkU5Qlx1NkVENlx1NkVDOFx1NkU4Rlx1NkVDMFx1NkU5Rlx1NkU5M1x1NkU5NFx1NkVBMFx1NkVCMVx1NkVCOVx1NkVDNlx1NkVEMlx1NkVCRFx1NkVDMVx1NkU5RVx1NkVDOVx1NkVCN1x1NkVCMFx1NkVDRFx1NkVBNlx1NkVDRlx1NkVCMlx1NkVCRVx1NkVDM1x1NkVEQ1x1NkVEOFx1NkU5OVx1NkU5Mlx1NkU4RVx1NkU4RFx1NkVBNFx1NkVBMVx1NkVCRlx1NkVCM1x1NkVEMFx1NkVDQVx1NkU5N1x1NkVBRVx1NkVBM1x1NzE0N1x1NzE1NFx1NzE1Mlx1NzE2M1x1NzE2MFx1NzE0MVx1NzE1RFx1NzE2Mlx1NzE3Mlx1NzE3OFx1NzE2QVx1NzE2MVx1NzE0Mlx1NzE1OFx1NzE0M1x1NzE0Qlx1NzE3MFx1NzE1Rlx1NzE1MFx1NzE1M1wiXSxcbltcImRlYTFcIixcIlx1NzE0NFx1NzE0RFx1NzE1QVx1NzI0Rlx1NzI4RFx1NzI4Q1x1NzI5MVx1NzI5MFx1NzI4RVx1NzMzQ1x1NzM0Mlx1NzMzQlx1NzMzQVx1NzM0MFx1NzM0QVx1NzM0OVx1NzQ0NFx1NzQ0QVx1NzQ0Qlx1NzQ1Mlx1NzQ1MVx1NzQ1N1x1NzQ0MFx1NzQ0Rlx1NzQ1MFx1NzQ0RVx1NzQ0Mlx1NzQ0Nlx1NzQ0RFx1NzQ1NFx1NzRFMVx1NzRGRlx1NzRGRVx1NzRGRFx1NzUxRFx1NzU3OVx1NzU3N1x1Njk4M1x1NzVFRlx1NzYwRlx1NzYwM1x1NzVGN1x1NzVGRVx1NzVGQ1x1NzVGOVx1NzVGOFx1NzYxMFx1NzVGQlx1NzVGNlx1NzVFRFx1NzVGNVx1NzVGRFx1NzY5OVx1NzZCNVx1NzZERFx1Nzc1NVx1Nzc1Rlx1Nzc2MFx1Nzc1Mlx1Nzc1Nlx1Nzc1QVx1Nzc2OVx1Nzc2N1x1Nzc1NFx1Nzc1OVx1Nzc2RFx1NzdFMFx1Nzg4N1x1Nzg5QVx1Nzg5NFx1Nzg4Rlx1Nzg4NFx1Nzg5NVx1Nzg4NVx1Nzg4Nlx1NzhBMVx1Nzg4M1x1Nzg3OVx1Nzg5OVx1Nzg4MFx1Nzg5Nlx1Nzg3Qlx1Nzk3Q1x1Nzk4Mlx1Nzk3RFx1Nzk3OVx1N0ExMVx1N0ExOFx1N0ExOVx1N0ExMlx1N0ExN1x1N0ExNVx1N0EyMlx1N0ExM1wiXSxcbltcImRmNDBcIixcIlx1N0ExQlx1N0ExMFx1N0FBM1x1N0FBMlx1N0E5RVx1N0FFQlx1N0I2Nlx1N0I2NFx1N0I2RFx1N0I3NFx1N0I2OVx1N0I3Mlx1N0I2NVx1N0I3M1x1N0I3MVx1N0I3MFx1N0I2MVx1N0I3OFx1N0I3Nlx1N0I2M1x1N0NCMlx1N0NCNFx1N0NBRlx1N0Q4OFx1N0Q4Nlx1N0Q4MFx1N0Q4RFx1N0Q3Rlx1N0Q4NVx1N0Q3QVx1N0Q4RVx1N0Q3Qlx1N0Q4M1x1N0Q3Q1x1N0Q4Q1x1N0Q5NFx1N0Q4NFx1N0Q3RFx1N0Q5Mlx1N0Y2RFx1N0Y2Qlx1N0Y2N1x1N0Y2OFx1N0Y2Q1x1N0ZBNlx1N0ZBNVx1N0ZBN1x1N0ZEQlx1N0ZEQ1x1ODAyMVx1ODE2NFx1ODE2MFx1ODE3N1x1ODE1Q1x1ODE2OVx1ODE1Qlx1ODE2Mlx1ODE3Mlx1NjcyMVx1ODE1RVx1ODE3Nlx1ODE2N1x1ODE2RlwiXSxcbltcImRmYTFcIixcIlx1ODE0NFx1ODE2MVx1ODIxRFx1ODI0OVx1ODI0NFx1ODI0MFx1ODI0Mlx1ODI0NVx1ODRGMVx1ODQzRlx1ODQ1Nlx1ODQ3Nlx1ODQ3OVx1ODQ4Rlx1ODQ4RFx1ODQ2NVx1ODQ1MVx1ODQ0MFx1ODQ4Nlx1ODQ2N1x1ODQzMFx1ODQ0RFx1ODQ3RFx1ODQ1QVx1ODQ1OVx1ODQ3NFx1ODQ3M1x1ODQ1RFx1ODUwN1x1ODQ1RVx1ODQzN1x1ODQzQVx1ODQzNFx1ODQ3QVx1ODQ0M1x1ODQ3OFx1ODQzMlx1ODQ0NVx1ODQyOVx1ODNEOVx1ODQ0Qlx1ODQyRlx1ODQ0Mlx1ODQyRFx1ODQ1Rlx1ODQ3MFx1ODQzOVx1ODQ0RVx1ODQ0Q1x1ODQ1Mlx1ODQ2Rlx1ODRDNVx1ODQ4RVx1ODQzQlx1ODQ0N1x1ODQzNlx1ODQzM1x1ODQ2OFx1ODQ3RVx1ODQ0NFx1ODQyQlx1ODQ2MFx1ODQ1NFx1ODQ2RVx1ODQ1MFx1ODcwQlx1ODcwNFx1ODZGN1x1ODcwQ1x1ODZGQVx1ODZENlx1ODZGNVx1ODc0RFx1ODZGOFx1ODcwRVx1ODcwOVx1ODcwMVx1ODZGNlx1ODcwRFx1ODcwNVx1ODhENlx1ODhDQlx1ODhDRFx1ODhDRVx1ODhERVx1ODhEQlx1ODhEQVx1ODhDQ1x1ODhEMFx1ODk4NVx1ODk5Qlx1ODlERlx1ODlFNVx1ODlFNFwiXSxcbltcImUwNDBcIixcIlx1ODlFMVx1ODlFMFx1ODlFMlx1ODlEQ1x1ODlFNlx1OEE3Nlx1OEE4Nlx1OEE3Rlx1OEE2MVx1OEEzRlx1OEE3N1x1OEE4Mlx1OEE4NFx1OEE3NVx1OEE4M1x1OEE4MVx1OEE3NFx1OEE3QVx1OEMzQ1x1OEM0Qlx1OEM0QVx1OEM2NVx1OEM2NFx1OEM2Nlx1OEM4Nlx1OEM4NFx1OEM4NVx1OENDQ1x1OEQ2OFx1OEQ2OVx1OEQ5MVx1OEQ4Q1x1OEQ4RVx1OEQ4Rlx1OEQ4RFx1OEQ5M1x1OEQ5NFx1OEQ5MFx1OEQ5Mlx1OERGMFx1OERFMFx1OERFQ1x1OERGMVx1OERFRVx1OEREMFx1OERFOVx1OERFM1x1OERFMlx1OERFN1x1OERGMlx1OERFQlx1OERGNFx1OEYwNlx1OEVGRlx1OEYwMVx1OEYwMFx1OEYwNVx1OEYwN1x1OEYwOFx1OEYwMlx1OEYwQlx1OTA1Mlx1OTAzRlwiXSxcbltcImUwYTFcIixcIlx1OTA0NFx1OTA0OVx1OTAzRFx1OTExMFx1OTEwRFx1OTEwRlx1OTExMVx1OTExNlx1OTExNFx1OTEwQlx1OTEwRVx1OTE2RVx1OTE2Rlx1OTI0OFx1OTI1Mlx1OTIzMFx1OTIzQVx1OTI2Nlx1OTIzM1x1OTI2NVx1OTI1RVx1OTI4M1x1OTIyRVx1OTI0QVx1OTI0Nlx1OTI2RFx1OTI2Q1x1OTI0Rlx1OTI2MFx1OTI2N1x1OTI2Rlx1OTIzNlx1OTI2MVx1OTI3MFx1OTIzMVx1OTI1NFx1OTI2M1x1OTI1MFx1OTI3Mlx1OTI0RVx1OTI1M1x1OTI0Q1x1OTI1Nlx1OTIzMlx1OTU5Rlx1OTU5Q1x1OTU5RVx1OTU5Qlx1OTY5Mlx1OTY5M1x1OTY5MVx1OTY5N1x1OTZDRVx1OTZGQVx1OTZGRFx1OTZGOFx1OTZGNVx1OTc3M1x1OTc3N1x1OTc3OFx1OTc3Mlx1OTgwRlx1OTgwRFx1OTgwRVx1OThBQ1x1OThGNlx1OThGOVx1OTlBRlx1OTlCMlx1OTlCMFx1OTlCNVx1OUFBRFx1OUFBQlx1OUI1Qlx1OUNFQVx1OUNFRFx1OUNFN1x1OUU4MFx1OUVGRFx1NTBFNlx1NTBENFx1NTBEN1x1NTBFOFx1NTBGM1x1NTBEQlx1NTBFQVx1NTBERFx1NTBFNFx1NTBEM1x1NTBFQ1x1NTBGMFx1NTBFRlx1NTBFM1x1NTBFMFwiXSxcbltcImUxNDBcIixcIlx1NTFEOFx1NTI4MFx1NTI4MVx1NTJFOVx1NTJFQlx1NTMzMFx1NTNBQ1x1NTYyN1x1NTYxNVx1NTYwQ1x1NTYxMlx1NTVGQ1x1NTYwRlx1NTYxQ1x1NTYwMVx1NTYxM1x1NTYwMlx1NTVGQVx1NTYxRFx1NTYwNFx1NTVGRlx1NTVGOVx1NTg4OVx1NTg3Q1x1NTg5MFx1NTg5OFx1NTg4Nlx1NTg4MVx1NTg3Rlx1NTg3NFx1NTg4Qlx1NTg3QVx1NTg4N1x1NTg5MVx1NTg4RVx1NTg3Nlx1NTg4Mlx1NTg4OFx1NTg3Qlx1NTg5NFx1NTg4Rlx1NThGRVx1NTk2Qlx1NUFEQ1x1NUFFRVx1NUFFNVx1NUFENVx1NUFFQVx1NUFEQVx1NUFFRFx1NUFFQlx1NUFGM1x1NUFFMlx1NUFFMFx1NUFEQlx1NUFFQ1x1NUFERVx1NUFERFx1NUFEOVx1NUFFOFx1NUFERlx1NUI3N1x1NUJFMFwiXSxcbltcImUxYTFcIixcIlx1NUJFM1x1NUM2M1x1NUQ4Mlx1NUQ4MFx1NUQ3RFx1NUQ4Nlx1NUQ3QVx1NUQ4MVx1NUQ3N1x1NUQ4QVx1NUQ4OVx1NUQ4OFx1NUQ3RVx1NUQ3Q1x1NUQ4RFx1NUQ3OVx1NUQ3Rlx1NUU1OFx1NUU1OVx1NUU1M1x1NUVEOFx1NUVEMVx1NUVEN1x1NUVDRVx1NUVEQ1x1NUVENVx1NUVEOVx1NUVEMlx1NUVENFx1NUY0NFx1NUY0M1x1NUY2Rlx1NUZCNlx1NjEyQ1x1NjEyOFx1NjE0MVx1NjE1RVx1NjE3MVx1NjE3M1x1NjE1Mlx1NjE1M1x1NjE3Mlx1NjE2Q1x1NjE4MFx1NjE3NFx1NjE1NFx1NjE3QVx1NjE1Qlx1NjE2NVx1NjEzQlx1NjE2QVx1NjE2MVx1NjE1Nlx1NjIyOVx1NjIyN1x1NjIyQlx1NjQyQlx1NjQ0RFx1NjQ1Qlx1NjQ1RFx1NjQ3NFx1NjQ3Nlx1NjQ3Mlx1NjQ3M1x1NjQ3RFx1NjQ3NVx1NjQ2Nlx1NjRBNlx1NjQ0RVx1NjQ4Mlx1NjQ1RVx1NjQ1Q1x1NjQ0Qlx1NjQ1M1x1NjQ2MFx1NjQ1MFx1NjQ3Rlx1NjQzRlx1NjQ2Q1x1NjQ2Qlx1NjQ1OVx1NjQ2NVx1NjQ3N1x1NjU3M1x1NjVBMFx1NjZBMVx1NjZBMFx1NjY5Rlx1NjcwNVx1NjcwNFx1NjcyMlx1NjlCMVx1NjlCNlx1NjlDOVwiXSxcbltcImUyNDBcIixcIlx1NjlBMFx1NjlDRVx1Njk5Nlx1NjlCMFx1NjlBQ1x1NjlCQ1x1Njk5MVx1Njk5OVx1Njk4RVx1NjlBN1x1Njk4RFx1NjlBOVx1NjlCRVx1NjlBRlx1NjlCRlx1NjlDNFx1NjlCRFx1NjlBNFx1NjlENFx1NjlCOVx1NjlDQVx1Njk5QVx1NjlDRlx1NjlCM1x1Njk5M1x1NjlBQVx1NjlBMVx1Njk5RVx1NjlEOVx1Njk5N1x1Njk5MFx1NjlDMlx1NjlCNVx1NjlBNVx1NjlDNlx1NkI0QVx1NkI0RFx1NkI0Qlx1NkI5RVx1NkI5Rlx1NkJBMFx1NkJDM1x1NkJDNFx1NkJGRVx1NkVDRVx1NkVGNVx1NkVGMVx1NkYwM1x1NkYyNVx1NkVGOFx1NkYzN1x1NkVGQlx1NkYyRVx1NkYwOVx1NkY0RVx1NkYxOVx1NkYxQVx1NkYyN1x1NkYxOFx1NkYzQlx1NkYxMlx1NkVFRFx1NkYwQVwiXSxcbltcImUyYTFcIixcIlx1NkYzNlx1NkY3M1x1NkVGOVx1NkVFRVx1NkYyRFx1NkY0MFx1NkYzMFx1NkYzQ1x1NkYzNVx1NkVFQlx1NkYwN1x1NkYwRVx1NkY0M1x1NkYwNVx1NkVGRFx1NkVGNlx1NkYzOVx1NkYxQ1x1NkVGQ1x1NkYzQVx1NkYxRlx1NkYwRFx1NkYxRVx1NkYwOFx1NkYyMVx1NzE4N1x1NzE5MFx1NzE4OVx1NzE4MFx1NzE4NVx1NzE4Mlx1NzE4Rlx1NzE3Qlx1NzE4Nlx1NzE4MVx1NzE5N1x1NzI0NFx1NzI1M1x1NzI5N1x1NzI5NVx1NzI5M1x1NzM0M1x1NzM0RFx1NzM1MVx1NzM0Q1x1NzQ2Mlx1NzQ3M1x1NzQ3MVx1NzQ3NVx1NzQ3Mlx1NzQ2N1x1NzQ2RVx1NzUwMFx1NzUwMlx1NzUwM1x1NzU3RFx1NzU5MFx1NzYxNlx1NzYwOFx1NzYwQ1x1NzYxNVx1NzYxMVx1NzYwQVx1NzYxNFx1NzZCOFx1Nzc4MVx1Nzc3Q1x1Nzc4NVx1Nzc4Mlx1Nzc2RVx1Nzc4MFx1Nzc2Rlx1Nzc3RVx1Nzc4M1x1NzhCMlx1NzhBQVx1NzhCNFx1NzhBRFx1NzhBOFx1Nzg3RVx1NzhBQlx1Nzg5RVx1NzhBNVx1NzhBMFx1NzhBQ1x1NzhBMlx1NzhBNFx1Nzk5OFx1Nzk4QVx1Nzk4Qlx1Nzk5Nlx1Nzk5NVx1Nzk5NFx1Nzk5M1wiXSxcbltcImUzNDBcIixcIlx1Nzk5N1x1Nzk4OFx1Nzk5Mlx1Nzk5MFx1N0EyQlx1N0E0QVx1N0EzMFx1N0EyRlx1N0EyOFx1N0EyNlx1N0FBOFx1N0FBQlx1N0FBQ1x1N0FFRVx1N0I4OFx1N0I5Q1x1N0I4QVx1N0I5MVx1N0I5MFx1N0I5Nlx1N0I4RFx1N0I4Q1x1N0I5Qlx1N0I4RVx1N0I4NVx1N0I5OFx1NTI4NFx1N0I5OVx1N0JBNFx1N0I4Mlx1N0NCQlx1N0NCRlx1N0NCQ1x1N0NCQVx1N0RBN1x1N0RCN1x1N0RDMlx1N0RBM1x1N0RBQVx1N0RDMVx1N0RDMFx1N0RDNVx1N0Q5RFx1N0RDRVx1N0RDNFx1N0RDNlx1N0RDQlx1N0RDQ1x1N0RBRlx1N0RCOVx1N0Q5Nlx1N0RCQ1x1N0Q5Rlx1N0RBNlx1N0RBRVx1N0RBOVx1N0RBMVx1N0RDOVx1N0Y3M1x1N0ZFMlx1N0ZFM1x1N0ZFNVx1N0ZERVwiXSxcbltcImUzYTFcIixcIlx1ODAyNFx1ODA1RFx1ODA1Q1x1ODE4OVx1ODE4Nlx1ODE4M1x1ODE4N1x1ODE4RFx1ODE4Q1x1ODE4Qlx1ODIxNVx1ODQ5N1x1ODRBNFx1ODRBMVx1ODQ5Rlx1ODRCQVx1ODRDRVx1ODRDMlx1ODRBQ1x1ODRBRVx1ODRBQlx1ODRCOVx1ODRCNFx1ODRDMVx1ODRDRFx1ODRBQVx1ODQ5QVx1ODRCMVx1ODREMFx1ODQ5RFx1ODRBN1x1ODRCQlx1ODRBMlx1ODQ5NFx1ODRDN1x1ODRDQ1x1ODQ5Qlx1ODRBOVx1ODRBRlx1ODRBOFx1ODRENlx1ODQ5OFx1ODRCNlx1ODRDRlx1ODRBMFx1ODREN1x1ODRENFx1ODREMlx1ODREQlx1ODRCMFx1ODQ5MVx1ODY2MVx1ODczM1x1ODcyM1x1ODcyOFx1ODc2Qlx1ODc0MFx1ODcyRVx1ODcxRVx1ODcyMVx1ODcxOVx1ODcxQlx1ODc0M1x1ODcyQ1x1ODc0MVx1ODczRVx1ODc0Nlx1ODcyMFx1ODczMlx1ODcyQVx1ODcyRFx1ODczQ1x1ODcxMlx1ODczQVx1ODczMVx1ODczNVx1ODc0Mlx1ODcyNlx1ODcyN1x1ODczOFx1ODcyNFx1ODcxQVx1ODczMFx1ODcxMVx1ODhGN1x1ODhFN1x1ODhGMVx1ODhGMlx1ODhGQVx1ODhGRVx1ODhFRVx1ODhGQ1x1ODhGNlx1ODhGQlwiXSxcbltcImU0NDBcIixcIlx1ODhGMFx1ODhFQ1x1ODhFQlx1ODk5RFx1ODlBMVx1ODk5Rlx1ODk5RVx1ODlFOVx1ODlFQlx1ODlFOFx1OEFBQlx1OEE5OVx1OEE4Qlx1OEE5Mlx1OEE4Rlx1OEE5Nlx1OEMzRFx1OEM2OFx1OEM2OVx1OENENVx1OENDRlx1OENEN1x1OEQ5Nlx1OEUwOVx1OEUwMlx1OERGRlx1OEUwRFx1OERGRFx1OEUwQVx1OEUwM1x1OEUwN1x1OEUwNlx1OEUwNVx1OERGRVx1OEUwMFx1OEUwNFx1OEYxMFx1OEYxMVx1OEYwRVx1OEYwRFx1OTEyM1x1OTExQ1x1OTEyMFx1OTEyMlx1OTExRlx1OTExRFx1OTExQVx1OTEyNFx1OTEyMVx1OTExQlx1OTE3QVx1OTE3Mlx1OTE3OVx1OTE3M1x1OTJBNVx1OTJBNFx1OTI3Nlx1OTI5Qlx1OTI3QVx1OTJBMFx1OTI5NFx1OTJBQVx1OTI4RFwiXSxcbltcImU0YTFcIixcIlx1OTJBNlx1OTI5QVx1OTJBQlx1OTI3OVx1OTI5N1x1OTI3Rlx1OTJBM1x1OTJFRVx1OTI4RVx1OTI4Mlx1OTI5NVx1OTJBMlx1OTI3RFx1OTI4OFx1OTJBMVx1OTI4QVx1OTI4Nlx1OTI4Q1x1OTI5OVx1OTJBN1x1OTI3RVx1OTI4N1x1OTJBOVx1OTI5RFx1OTI4Qlx1OTIyRFx1OTY5RVx1OTZBMVx1OTZGRlx1OTc1OFx1OTc3RFx1OTc3QVx1OTc3RVx1OTc4M1x1OTc4MFx1OTc4Mlx1OTc3Qlx1OTc4NFx1OTc4MVx1OTc3Rlx1OTdDRVx1OTdDRFx1OTgxNlx1OThBRFx1OThBRVx1OTkwMlx1OTkwMFx1OTkwN1x1OTk5RFx1OTk5Q1x1OTlDM1x1OTlCOVx1OTlCQlx1OTlCQVx1OTlDMlx1OTlCRFx1OTlDN1x1OUFCMVx1OUFFM1x1OUFFN1x1OUIzRVx1OUIzRlx1OUI2MFx1OUI2MVx1OUI1Rlx1OUNGMVx1OUNGMlx1OUNGNVx1OUVBN1x1NTBGRlx1NTEwM1x1NTEzMFx1NTBGOFx1NTEwNlx1NTEwN1x1NTBGNlx1NTBGRVx1NTEwQlx1NTEwQ1x1NTBGRFx1NTEwQVx1NTI4Qlx1NTI4Q1x1NTJGMVx1NTJFRlx1NTY0OFx1NTY0Mlx1NTY0Q1x1NTYzNVx1NTY0MVx1NTY0QVx1NTY0OVx1NTY0Nlx1NTY1OFwiXSxcbltcImU1NDBcIixcIlx1NTY1QVx1NTY0MFx1NTYzM1x1NTYzRFx1NTYyQ1x1NTYzRVx1NTYzOFx1NTYyQVx1NTYzQVx1NTcxQVx1NThBQlx1NTg5RFx1NThCMVx1NThBMFx1NThBM1x1NThBRlx1NThBQ1x1NThBNVx1NThBMVx1NThGRlx1NUFGRlx1NUFGNFx1NUFGRFx1NUFGN1x1NUFGNlx1NUIwM1x1NUFGOFx1NUIwMlx1NUFGOVx1NUIwMVx1NUIwN1x1NUIwNVx1NUIwRlx1NUM2N1x1NUQ5OVx1NUQ5N1x1NUQ5Rlx1NUQ5Mlx1NURBMlx1NUQ5M1x1NUQ5NVx1NURBMFx1NUQ5Q1x1NURBMVx1NUQ5QVx1NUQ5RVx1NUU2OVx1NUU1RFx1NUU2MFx1NUU1Q1x1N0RGM1x1NUVEQlx1NUVERVx1NUVFMVx1NUY0OVx1NUZCMlx1NjE4Qlx1NjE4M1x1NjE3OVx1NjFCMVx1NjFCMFx1NjFBMlx1NjE4OVwiXSxcbltcImU1YTFcIixcIlx1NjE5Qlx1NjE5M1x1NjFBRlx1NjFBRFx1NjE5Rlx1NjE5Mlx1NjFBQVx1NjFBMVx1NjE4RFx1NjE2Nlx1NjFCM1x1NjIyRFx1NjQ2RVx1NjQ3MFx1NjQ5Nlx1NjRBMFx1NjQ4NVx1NjQ5N1x1NjQ5Q1x1NjQ4Rlx1NjQ4Qlx1NjQ4QVx1NjQ4Q1x1NjRBM1x1NjQ5Rlx1NjQ2OFx1NjRCMVx1NjQ5OFx1NjU3Nlx1NjU3QVx1NjU3OVx1NjU3Qlx1NjVCMlx1NjVCM1x1NjZCNVx1NjZCMFx1NjZBOVx1NjZCMlx1NjZCN1x1NjZBQVx1NjZBRlx1NkEwMFx1NkEwNlx1NkExN1x1NjlFNVx1NjlGOFx1NkExNVx1NjlGMVx1NjlFNFx1NkEyMFx1NjlGRlx1NjlFQ1x1NjlFMlx1NkExQlx1NkExRFx1NjlGRVx1NkEyN1x1NjlGMlx1NjlFRVx1NkExNFx1NjlGN1x1NjlFN1x1NkE0MFx1NkEwOFx1NjlFNlx1NjlGQlx1NkEwRFx1NjlGQ1x1NjlFQlx1NkEwOVx1NkEwNFx1NkExOFx1NkEyNVx1NkEwRlx1NjlGNlx1NkEyNlx1NkEwN1x1NjlGNFx1NkExNlx1NkI1MVx1NkJBNVx1NkJBM1x1NkJBMlx1NkJBNlx1NkMwMVx1NkMwMFx1NkJGRlx1NkMwMlx1NkY0MVx1NkYyNlx1NkY3RVx1NkY4N1x1NkZDNlx1NkY5MlwiXSxcbltcImU2NDBcIixcIlx1NkY4RFx1NkY4OVx1NkY4Q1x1NkY2Mlx1NkY0Rlx1NkY4NVx1NkY1QVx1NkY5Nlx1NkY3Nlx1NkY2Q1x1NkY4Mlx1NkY1NVx1NkY3Mlx1NkY1Mlx1NkY1MFx1NkY1N1x1NkY5NFx1NkY5M1x1NkY1RFx1NkYwMFx1NkY2MVx1NkY2Qlx1NkY3RFx1NkY2N1x1NkY5MFx1NkY1M1x1NkY4Qlx1NkY2OVx1NkY3Rlx1NkY5NVx1NkY2M1x1NkY3N1x1NkY2QVx1NkY3Qlx1NzFCMlx1NzFBRlx1NzE5Qlx1NzFCMFx1NzFBMFx1NzE5QVx1NzFBOVx1NzFCNVx1NzE5RFx1NzFBNVx1NzE5RVx1NzFBNFx1NzFBMVx1NzFBQVx1NzE5Q1x1NzFBN1x1NzFCM1x1NzI5OFx1NzI5QVx1NzM1OFx1NzM1Mlx1NzM1RVx1NzM1Rlx1NzM2MFx1NzM1RFx1NzM1Qlx1NzM2MVx1NzM1QVx1NzM1OVwiXSxcbltcImU2YTFcIixcIlx1NzM2Mlx1NzQ4N1x1NzQ4OVx1NzQ4QVx1NzQ4Nlx1NzQ4MVx1NzQ3RFx1NzQ4NVx1NzQ4OFx1NzQ3Q1x1NzQ3OVx1NzUwOFx1NzUwN1x1NzU3RVx1NzYyNVx1NzYxRVx1NzYxOVx1NzYxRFx1NzYxQ1x1NzYyM1x1NzYxQVx1NzYyOFx1NzYxQlx1NzY5Q1x1NzY5RFx1NzY5RVx1NzY5Qlx1Nzc4RFx1Nzc4Rlx1Nzc4OVx1Nzc4OFx1NzhDRFx1NzhCQlx1NzhDRlx1NzhDQ1x1NzhEMVx1NzhDRVx1NzhENFx1NzhDOFx1NzhDM1x1NzhDNFx1NzhDOVx1Nzk5QVx1NzlBMVx1NzlBMFx1Nzk5Q1x1NzlBMlx1Nzk5Qlx1NkI3Nlx1N0EzOVx1N0FCMlx1N0FCNFx1N0FCM1x1N0JCN1x1N0JDQlx1N0JCRVx1N0JBQ1x1N0JDRVx1N0JBRlx1N0JCOVx1N0JDQVx1N0JCNVx1N0NDNVx1N0NDOFx1N0NDQ1x1N0NDQlx1N0RGN1x1N0REQlx1N0RFQVx1N0RFN1x1N0REN1x1N0RFMVx1N0UwM1x1N0RGQVx1N0RFNlx1N0RGNlx1N0RGMVx1N0RGMFx1N0RFRVx1N0RERlx1N0Y3Nlx1N0ZBQ1x1N0ZCMFx1N0ZBRFx1N0ZFRFx1N0ZFQlx1N0ZFQVx1N0ZFQ1x1N0ZFNlx1N0ZFOFx1ODA2NFx1ODA2N1x1ODFBM1x1ODE5RlwiXSxcbltcImU3NDBcIixcIlx1ODE5RVx1ODE5NVx1ODFBMlx1ODE5OVx1ODE5N1x1ODIxNlx1ODI0Rlx1ODI1M1x1ODI1Mlx1ODI1MFx1ODI0RVx1ODI1MVx1ODUyNFx1ODUzQlx1ODUwRlx1ODUwMFx1ODUyOVx1ODUwRVx1ODUwOVx1ODUwRFx1ODUxRlx1ODUwQVx1ODUyN1x1ODUxQ1x1ODRGQlx1ODUyQlx1ODRGQVx1ODUwOFx1ODUwQ1x1ODRGNFx1ODUyQVx1ODRGMlx1ODUxNVx1ODRGN1x1ODRFQlx1ODRGM1x1ODRGQ1x1ODUxMlx1ODRFQVx1ODRFOVx1ODUxNlx1ODRGRVx1ODUyOFx1ODUxRFx1ODUyRVx1ODUwMlx1ODRGRFx1ODUxRVx1ODRGNlx1ODUzMVx1ODUyNlx1ODRFN1x1ODRFOFx1ODRGMFx1ODRFRlx1ODRGOVx1ODUxOFx1ODUyMFx1ODUzMFx1ODUwQlx1ODUxOVx1ODUyRlx1ODY2MlwiXSxcbltcImU3YTFcIixcIlx1ODc1Nlx1ODc2M1x1ODc2NFx1ODc3N1x1ODdFMVx1ODc3M1x1ODc1OFx1ODc1NFx1ODc1Qlx1ODc1Mlx1ODc2MVx1ODc1QVx1ODc1MVx1ODc1RVx1ODc2RFx1ODc2QVx1ODc1MFx1ODc0RVx1ODc1Rlx1ODc1RFx1ODc2Rlx1ODc2Q1x1ODc3QVx1ODc2RVx1ODc1Q1x1ODc2NVx1ODc0Rlx1ODc3Qlx1ODc3NVx1ODc2Mlx1ODc2N1x1ODc2OVx1ODg1QVx1ODkwNVx1ODkwQ1x1ODkxNFx1ODkwQlx1ODkxN1x1ODkxOFx1ODkxOVx1ODkwNlx1ODkxNlx1ODkxMVx1ODkwRVx1ODkwOVx1ODlBMlx1ODlBNFx1ODlBM1x1ODlFRFx1ODlGMFx1ODlFQ1x1OEFDRlx1OEFDNlx1OEFCOFx1OEFEM1x1OEFEMVx1OEFENFx1OEFENVx1OEFCQlx1OEFEN1x1OEFCRVx1OEFDMFx1OEFDNVx1OEFEOFx1OEFDM1x1OEFCQVx1OEFCRFx1OEFEOVx1OEMzRVx1OEM0RFx1OEM4Rlx1OENFNVx1OENERlx1OENEOVx1OENFOFx1OENEQVx1OENERFx1OENFN1x1OERBMFx1OEQ5Q1x1OERBMVx1OEQ5Qlx1OEUyMFx1OEUyM1x1OEUyNVx1OEUyNFx1OEUyRVx1OEUxNVx1OEUxQlx1OEUxNlx1OEUxMVx1OEUxOVx1OEUyNlx1OEUyN1wiXSxcbltcImU4NDBcIixcIlx1OEUxNFx1OEUxMlx1OEUxOFx1OEUxM1x1OEUxQ1x1OEUxN1x1OEUxQVx1OEYyQ1x1OEYyNFx1OEYxOFx1OEYxQVx1OEYyMFx1OEYyM1x1OEYxNlx1OEYxN1x1OTA3M1x1OTA3MFx1OTA2Rlx1OTA2N1x1OTA2Qlx1OTEyRlx1OTEyQlx1OTEyOVx1OTEyQVx1OTEzMlx1OTEyNlx1OTEyRVx1OTE4NVx1OTE4Nlx1OTE4QVx1OTE4MVx1OTE4Mlx1OTE4NFx1OTE4MFx1OTJEMFx1OTJDM1x1OTJDNFx1OTJDMFx1OTJEOVx1OTJCNlx1OTJDRlx1OTJGMVx1OTJERlx1OTJEOFx1OTJFOVx1OTJEN1x1OTJERFx1OTJDQ1x1OTJFRlx1OTJDMlx1OTJFOFx1OTJDQVx1OTJDOFx1OTJDRVx1OTJFNlx1OTJDRFx1OTJENVx1OTJDOVx1OTJFMFx1OTJERVx1OTJFN1x1OTJEMVx1OTJEM1wiXSxcbltcImU4YTFcIixcIlx1OTJCNVx1OTJFMVx1OTJDNlx1OTJCNFx1OTU3Q1x1OTVBQ1x1OTVBQlx1OTVBRVx1OTVCMFx1OTZBNFx1OTZBMlx1OTZEM1x1OTcwNVx1OTcwOFx1OTcwMlx1OTc1QVx1OTc4QVx1OTc4RVx1OTc4OFx1OTdEMFx1OTdDRlx1OTgxRVx1OTgxRFx1OTgyNlx1OTgyOVx1OTgyOFx1OTgyMFx1OTgxQlx1OTgyN1x1OThCMlx1OTkwOFx1OThGQVx1OTkxMVx1OTkxNFx1OTkxNlx1OTkxN1x1OTkxNVx1OTlEQ1x1OTlDRFx1OTlDRlx1OTlEM1x1OTlENFx1OTlDRVx1OTlDOVx1OTlENlx1OTlEOFx1OTlDQlx1OTlEN1x1OTlDQ1x1OUFCM1x1OUFFQ1x1OUFFQlx1OUFGM1x1OUFGMlx1OUFGMVx1OUI0Nlx1OUI0M1x1OUI2N1x1OUI3NFx1OUI3MVx1OUI2Nlx1OUI3Nlx1OUI3NVx1OUI3MFx1OUI2OFx1OUI2NFx1OUI2Q1x1OUNGQ1x1OUNGQVx1OUNGRFx1OUNGRlx1OUNGN1x1OUQwN1x1OUQwMFx1OUNGOVx1OUNGQlx1OUQwOFx1OUQwNVx1OUQwNFx1OUU4M1x1OUVEM1x1OUYwRlx1OUYxMFx1NTExQ1x1NTExM1x1NTExN1x1NTExQVx1NTExMVx1NTFERVx1NTMzNFx1NTNFMVx1NTY3MFx1NTY2MFx1NTY2RVwiXSxcbltcImU5NDBcIixcIlx1NTY3M1x1NTY2Nlx1NTY2M1x1NTY2RFx1NTY3Mlx1NTY1RVx1NTY3N1x1NTcxQ1x1NTcxQlx1NThDOFx1NThCRFx1NThDOVx1NThCRlx1NThCQVx1NThDMlx1NThCQ1x1NThDNlx1NUIxN1x1NUIxOVx1NUIxQlx1NUIyMVx1NUIxNFx1NUIxM1x1NUIxMFx1NUIxNlx1NUIyOFx1NUIxQVx1NUIyMFx1NUIxRVx1NUJFRlx1NURBQ1x1NURCMVx1NURBOVx1NURBN1x1NURCNVx1NURCMFx1NURBRVx1NURBQVx1NURBOFx1NURCMlx1NURBRFx1NURBRlx1NURCNFx1NUU2N1x1NUU2OFx1NUU2Nlx1NUU2Rlx1NUVFOVx1NUVFN1x1NUVFNlx1NUVFOFx1NUVFNVx1NUY0Qlx1NUZCQ1x1NjE5RFx1NjFBOFx1NjE5Nlx1NjFDNVx1NjFCNFx1NjFDNlx1NjFDMVx1NjFDQ1x1NjFCQVwiXSxcbltcImU5YTFcIixcIlx1NjFCRlx1NjFCOFx1NjE4Q1x1NjREN1x1NjRENlx1NjREMFx1NjRDRlx1NjRDOVx1NjRCRFx1NjQ4OVx1NjRDM1x1NjREQlx1NjRGM1x1NjREOVx1NjUzM1x1NjU3Rlx1NjU3Q1x1NjVBMlx1NjZDOFx1NjZCRVx1NjZDMFx1NjZDQVx1NjZDQlx1NjZDRlx1NjZCRFx1NjZCQlx1NjZCQVx1NjZDQ1x1NjcyM1x1NkEzNFx1NkE2Nlx1NkE0OVx1NkE2N1x1NkEzMlx1NkE2OFx1NkEzRVx1NkE1RFx1NkE2RFx1NkE3Nlx1NkE1Qlx1NkE1MVx1NkEyOFx1NkE1QVx1NkEzQlx1NkEzRlx1NkE0MVx1NkE2QVx1NkE2NFx1NkE1MFx1NkE0Rlx1NkE1NFx1NkE2Rlx1NkE2OVx1NkE2MFx1NkEzQ1x1NkE1RVx1NkE1Nlx1NkE1NVx1NkE0RFx1NkE0RVx1NkE0Nlx1NkI1NVx1NkI1NFx1NkI1Nlx1NkJBN1x1NkJBQVx1NkJBQlx1NkJDOFx1NkJDN1x1NkMwNFx1NkMwM1x1NkMwNlx1NkZBRFx1NkZDQlx1NkZBM1x1NkZDN1x1NkZCQ1x1NkZDRVx1NkZDOFx1NkY1RVx1NkZDNFx1NkZCRFx1NkY5RVx1NkZDQVx1NkZBOFx1NzAwNFx1NkZBNVx1NkZBRVx1NkZCQVx1NkZBQ1x1NkZBQVx1NkZDRlx1NkZCRlx1NkZCOFwiXSxcbltcImVhNDBcIixcIlx1NkZBMlx1NkZDOVx1NkZBQlx1NkZDRFx1NkZBRlx1NkZCMlx1NkZCMFx1NzFDNVx1NzFDMlx1NzFCRlx1NzFCOFx1NzFENlx1NzFDMFx1NzFDMVx1NzFDQlx1NzFENFx1NzFDQVx1NzFDN1x1NzFDRlx1NzFCRFx1NzFEOFx1NzFCQ1x1NzFDNlx1NzFEQVx1NzFEQlx1NzI5RFx1NzI5RVx1NzM2OVx1NzM2Nlx1NzM2N1x1NzM2Q1x1NzM2NVx1NzM2Qlx1NzM2QVx1NzQ3Rlx1NzQ5QVx1NzRBMFx1NzQ5NFx1NzQ5Mlx1NzQ5NVx1NzRBMVx1NzUwQlx1NzU4MFx1NzYyRlx1NzYyRFx1NzYzMVx1NzYzRFx1NzYzM1x1NzYzQ1x1NzYzNVx1NzYzMlx1NzYzMFx1NzZCQlx1NzZFNlx1Nzc5QVx1Nzc5RFx1NzdBMVx1Nzc5Q1x1Nzc5Qlx1NzdBMlx1NzdBM1x1Nzc5NVx1Nzc5OVwiXSxcbltcImVhYTFcIixcIlx1Nzc5N1x1NzhERFx1NzhFOVx1NzhFNVx1NzhFQVx1NzhERVx1NzhFM1x1NzhEQlx1NzhFMVx1NzhFMlx1NzhFRFx1NzhERlx1NzhFMFx1NzlBNFx1N0E0NFx1N0E0OFx1N0E0N1x1N0FCNlx1N0FCOFx1N0FCNVx1N0FCMVx1N0FCN1x1N0JERVx1N0JFM1x1N0JFN1x1N0JERFx1N0JENVx1N0JFNVx1N0JEQVx1N0JFOFx1N0JGOVx1N0JENFx1N0JFQVx1N0JFMlx1N0JEQ1x1N0JFQlx1N0JEOFx1N0JERlx1N0NEMlx1N0NENFx1N0NEN1x1N0NEMFx1N0NEMVx1N0UxMlx1N0UyMVx1N0UxN1x1N0UwQ1x1N0UxRlx1N0UyMFx1N0UxM1x1N0UwRVx1N0UxQ1x1N0UxNVx1N0UxQVx1N0UyMlx1N0UwQlx1N0UwRlx1N0UxNlx1N0UwRFx1N0UxNFx1N0UyNVx1N0UyNFx1N0Y0M1x1N0Y3Qlx1N0Y3Q1x1N0Y3QVx1N0ZCMVx1N0ZFRlx1ODAyQVx1ODAyOVx1ODA2Q1x1ODFCMVx1ODFBNlx1ODFBRVx1ODFCOVx1ODFCNVx1ODFBQlx1ODFCMFx1ODFBQ1x1ODFCNFx1ODFCMlx1ODFCN1x1ODFBN1x1ODFGMlx1ODI1NVx1ODI1Nlx1ODI1N1x1ODU1Nlx1ODU0NVx1ODU2Qlx1ODU0RFx1ODU1M1x1ODU2MVx1ODU1OFwiXSxcbltcImViNDBcIixcIlx1ODU0MFx1ODU0Nlx1ODU2NFx1ODU0MVx1ODU2Mlx1ODU0NFx1ODU1MVx1ODU0N1x1ODU2M1x1ODUzRVx1ODU1Qlx1ODU3MVx1ODU0RVx1ODU2RVx1ODU3NVx1ODU1NVx1ODU2N1x1ODU2MFx1ODU4Q1x1ODU2Nlx1ODU1RFx1ODU1NFx1ODU2NVx1ODU2Q1x1ODY2M1x1ODY2NVx1ODY2NFx1ODc5Qlx1ODc4Rlx1ODc5N1x1ODc5M1x1ODc5Mlx1ODc4OFx1ODc4MVx1ODc5Nlx1ODc5OFx1ODc3OVx1ODc4N1x1ODdBM1x1ODc4NVx1ODc5MFx1ODc5MVx1ODc5RFx1ODc4NFx1ODc5NFx1ODc5Q1x1ODc5QVx1ODc4OVx1ODkxRVx1ODkyNlx1ODkzMFx1ODkyRFx1ODkyRVx1ODkyN1x1ODkzMVx1ODkyMlx1ODkyOVx1ODkyM1x1ODkyRlx1ODkyQ1x1ODkxRlx1ODlGMVx1OEFFMFwiXSxcbltcImViYTFcIixcIlx1OEFFMlx1OEFGMlx1OEFGNFx1OEFGNVx1OEFERFx1OEIxNFx1OEFFNFx1OEFERlx1OEFGMFx1OEFDOFx1OEFERVx1OEFFMVx1OEFFOFx1OEFGRlx1OEFFRlx1OEFGQlx1OEM5MVx1OEM5Mlx1OEM5MFx1OENGNVx1OENFRVx1OENGMVx1OENGMFx1OENGM1x1OEQ2Q1x1OEQ2RVx1OERBNVx1OERBN1x1OEUzM1x1OEUzRVx1OEUzOFx1OEU0MFx1OEU0NVx1OEUzNlx1OEUzQ1x1OEUzRFx1OEU0MVx1OEUzMFx1OEUzRlx1OEVCRFx1OEYzNlx1OEYyRVx1OEYzNVx1OEYzMlx1OEYzOVx1OEYzN1x1OEYzNFx1OTA3Nlx1OTA3OVx1OTA3Qlx1OTA4Nlx1OTBGQVx1OTEzM1x1OTEzNVx1OTEzNlx1OTE5M1x1OTE5MFx1OTE5MVx1OTE4RFx1OTE4Rlx1OTMyN1x1OTMxRVx1OTMwOFx1OTMxRlx1OTMwNlx1OTMwRlx1OTM3QVx1OTMzOFx1OTMzQ1x1OTMxQlx1OTMyM1x1OTMxMlx1OTMwMVx1OTM0Nlx1OTMyRFx1OTMwRVx1OTMwRFx1OTJDQlx1OTMxRFx1OTJGQVx1OTMyNVx1OTMxM1x1OTJGOVx1OTJGN1x1OTMzNFx1OTMwMlx1OTMyNFx1OTJGRlx1OTMyOVx1OTMzOVx1OTMzNVx1OTMyQVx1OTMxNFx1OTMwQ1wiXSxcbltcImVjNDBcIixcIlx1OTMwQlx1OTJGRVx1OTMwOVx1OTMwMFx1OTJGQlx1OTMxNlx1OTVCQ1x1OTVDRFx1OTVCRVx1OTVCOVx1OTVCQVx1OTVCNlx1OTVCRlx1OTVCNVx1OTVCRFx1OTZBOVx1OTZENFx1OTcwQlx1OTcxMlx1OTcxMFx1OTc5OVx1OTc5N1x1OTc5NFx1OTdGMFx1OTdGOFx1OTgzNVx1OTgyRlx1OTgzMlx1OTkyNFx1OTkxRlx1OTkyN1x1OTkyOVx1OTk5RVx1OTlFRVx1OTlFQ1x1OTlFNVx1OTlFNFx1OTlGMFx1OTlFM1x1OTlFQVx1OTlFOVx1OTlFN1x1OUFCOVx1OUFCRlx1OUFCNFx1OUFCQlx1OUFGNlx1OUFGQVx1OUFGOVx1OUFGN1x1OUIzM1x1OUI4MFx1OUI4NVx1OUI4N1x1OUI3Q1x1OUI3RVx1OUI3Qlx1OUI4Mlx1OUI5M1x1OUI5Mlx1OUI5MFx1OUI3QVx1OUI5NVwiXSxcbltcImVjYTFcIixcIlx1OUI3RFx1OUI4OFx1OUQyNVx1OUQxN1x1OUQyMFx1OUQxRVx1OUQxNFx1OUQyOVx1OUQxRFx1OUQxOFx1OUQyMlx1OUQxMFx1OUQxOVx1OUQxRlx1OUU4OFx1OUU4Nlx1OUU4N1x1OUVBRVx1OUVBRFx1OUVENVx1OUVENlx1OUVGQVx1OUYxMlx1OUYzRFx1NTEyNlx1NTEyNVx1NTEyMlx1NTEyNFx1NTEyMFx1NTEyOVx1NTJGNFx1NTY5M1x1NTY4Q1x1NTY4RFx1NTY4Nlx1NTY4NFx1NTY4M1x1NTY3RVx1NTY4Mlx1NTY3Rlx1NTY4MVx1NThENlx1NThENFx1NThDRlx1NThEMlx1NUIyRFx1NUIyNVx1NUIzMlx1NUIyM1x1NUIyQ1x1NUIyN1x1NUIyNlx1NUIyRlx1NUIyRVx1NUI3Qlx1NUJGMVx1NUJGMlx1NURCN1x1NUU2Q1x1NUU2QVx1NUZCRVx1NUZCQlx1NjFDM1x1NjFCNVx1NjFCQ1x1NjFFN1x1NjFFMFx1NjFFNVx1NjFFNFx1NjFFOFx1NjFERVx1NjRFRlx1NjRFOVx1NjRFM1x1NjRFQlx1NjRFNFx1NjRFOFx1NjU4MVx1NjU4MFx1NjVCNlx1NjVEQVx1NjZEMlx1NkE4RFx1NkE5Nlx1NkE4MVx1NkFBNVx1NkE4OVx1NkE5Rlx1NkE5Qlx1NkFBMVx1NkE5RVx1NkE4N1x1NkE5M1x1NkE4RVwiXSxcbltcImVkNDBcIixcIlx1NkE5NVx1NkE4M1x1NkFBOFx1NkFBNFx1NkE5MVx1NkE3Rlx1NkFBNlx1NkE5QVx1NkE4NVx1NkE4Q1x1NkE5Mlx1NkI1Qlx1NkJBRFx1NkMwOVx1NkZDQ1x1NkZBOVx1NkZGNFx1NkZENFx1NkZFM1x1NkZEQ1x1NkZFRFx1NkZFN1x1NkZFNlx1NkZERVx1NkZGMlx1NkZERFx1NkZFMlx1NkZFOFx1NzFFMVx1NzFGMVx1NzFFOFx1NzFGMlx1NzFFNFx1NzFGMFx1NzFFMlx1NzM3M1x1NzM2RVx1NzM2Rlx1NzQ5N1x1NzRCMlx1NzRBQlx1NzQ5MFx1NzRBQVx1NzRBRFx1NzRCMVx1NzRBNVx1NzRBRlx1NzUxMFx1NzUxMVx1NzUxMlx1NzUwRlx1NzU4NFx1NzY0M1x1NzY0OFx1NzY0OVx1NzY0N1x1NzZBNFx1NzZFOVx1NzdCNVx1NzdBQlx1NzdCMlx1NzdCN1x1NzdCNlwiXSxcbltcImVkYTFcIixcIlx1NzdCNFx1NzdCMVx1NzdBOFx1NzdGMFx1NzhGM1x1NzhGRFx1NzkwMlx1NzhGQlx1NzhGQ1x1NzhGMlx1NzkwNVx1NzhGOVx1NzhGRVx1NzkwNFx1NzlBQlx1NzlBOFx1N0E1Q1x1N0E1Qlx1N0E1Nlx1N0E1OFx1N0E1NFx1N0E1QVx1N0FCRVx1N0FDMFx1N0FDMVx1N0MwNVx1N0MwRlx1N0JGMlx1N0MwMFx1N0JGRlx1N0JGQlx1N0MwRVx1N0JGNFx1N0MwQlx1N0JGM1x1N0MwMlx1N0MwOVx1N0MwM1x1N0MwMVx1N0JGOFx1N0JGRFx1N0MwNlx1N0JGMFx1N0JGMVx1N0MxMFx1N0MwQVx1N0NFOFx1N0UyRFx1N0UzQ1x1N0U0Mlx1N0UzM1x1OTg0OFx1N0UzOFx1N0UyQVx1N0U0OVx1N0U0MFx1N0U0N1x1N0UyOVx1N0U0Q1x1N0UzMFx1N0UzQlx1N0UzNlx1N0U0NFx1N0UzQVx1N0Y0NVx1N0Y3Rlx1N0Y3RVx1N0Y3RFx1N0ZGNFx1N0ZGMlx1ODAyQ1x1ODFCQlx1ODFDNFx1ODFDQ1x1ODFDQVx1ODFDNVx1ODFDN1x1ODFCQ1x1ODFFOVx1ODI1Qlx1ODI1QVx1ODI1Q1x1ODU4M1x1ODU4MFx1ODU4Rlx1ODVBN1x1ODU5NVx1ODVBMFx1ODU4Qlx1ODVBM1x1ODU3Qlx1ODVBNFx1ODU5QVx1ODU5RVwiXSxcbltcImVlNDBcIixcIlx1ODU3N1x1ODU3Q1x1ODU4OVx1ODVBMVx1ODU3QVx1ODU3OFx1ODU1N1x1ODU4RVx1ODU5Nlx1ODU4Nlx1ODU4RFx1ODU5OVx1ODU5RFx1ODU4MVx1ODVBMlx1ODU4Mlx1ODU4OFx1ODU4NVx1ODU3OVx1ODU3Nlx1ODU5OFx1ODU5MFx1ODU5Rlx1ODY2OFx1ODdCRVx1ODdBQVx1ODdBRFx1ODdDNVx1ODdCMFx1ODdBQ1x1ODdCOVx1ODdCNVx1ODdCQ1x1ODdBRVx1ODdDOVx1ODdDM1x1ODdDMlx1ODdDQ1x1ODdCN1x1ODdBRlx1ODdDNFx1ODdDQVx1ODdCNFx1ODdCNlx1ODdCRlx1ODdCOFx1ODdCRFx1ODdERVx1ODdCMlx1ODkzNVx1ODkzM1x1ODkzQ1x1ODkzRVx1ODk0MVx1ODk1Mlx1ODkzN1x1ODk0Mlx1ODlBRFx1ODlBRlx1ODlBRVx1ODlGMlx1ODlGM1x1OEIxRVwiXSxcbltcImVlYTFcIixcIlx1OEIxOFx1OEIxNlx1OEIxMVx1OEIwNVx1OEIwQlx1OEIyMlx1OEIwRlx1OEIxMlx1OEIxNVx1OEIwN1x1OEIwRFx1OEIwOFx1OEIwNlx1OEIxQ1x1OEIxM1x1OEIxQVx1OEM0Rlx1OEM3MFx1OEM3Mlx1OEM3MVx1OEM2Rlx1OEM5NVx1OEM5NFx1OENGOVx1OEQ2Rlx1OEU0RVx1OEU0RFx1OEU1M1x1OEU1MFx1OEU0Q1x1OEU0N1x1OEY0M1x1OEY0MFx1OTA4NVx1OTA3RVx1OTEzOFx1OTE5QVx1OTFBMlx1OTE5Qlx1OTE5OVx1OTE5Rlx1OTFBMVx1OTE5RFx1OTFBMFx1OTNBMVx1OTM4M1x1OTNBRlx1OTM2NFx1OTM1Nlx1OTM0N1x1OTM3Q1x1OTM1OFx1OTM1Q1x1OTM3Nlx1OTM0OVx1OTM1MFx1OTM1MVx1OTM2MFx1OTM2RFx1OTM4Rlx1OTM0Q1x1OTM2QVx1OTM3OVx1OTM1N1x1OTM1NVx1OTM1Mlx1OTM0Rlx1OTM3MVx1OTM3N1x1OTM3Qlx1OTM2MVx1OTM1RVx1OTM2M1x1OTM2N1x1OTM4MFx1OTM0RVx1OTM1OVx1OTVDN1x1OTVDMFx1OTVDOVx1OTVDM1x1OTVDNVx1OTVCN1x1OTZBRVx1OTZCMFx1OTZBQ1x1OTcyMFx1OTcxRlx1OTcxOFx1OTcxRFx1OTcxOVx1OTc5QVx1OTdBMVx1OTc5Q1wiXSxcbltcImVmNDBcIixcIlx1OTc5RVx1OTc5RFx1OTdENVx1OTdENFx1OTdGMVx1OTg0MVx1OTg0NFx1OTg0QVx1OTg0OVx1OTg0NVx1OTg0M1x1OTkyNVx1OTkyQlx1OTkyQ1x1OTkyQVx1OTkzM1x1OTkzMlx1OTkyRlx1OTkyRFx1OTkzMVx1OTkzMFx1OTk5OFx1OTlBM1x1OTlBMVx1OUEwMlx1OTlGQVx1OTlGNFx1OTlGN1x1OTlGOVx1OTlGOFx1OTlGNlx1OTlGQlx1OTlGRFx1OTlGRVx1OTlGQ1x1OUEwM1x1OUFCRVx1OUFGRVx1OUFGRFx1OUIwMVx1OUFGQ1x1OUI0OFx1OUI5QVx1OUJBOFx1OUI5RVx1OUI5Qlx1OUJBNlx1OUJBMVx1OUJBNVx1OUJBNFx1OUI4Nlx1OUJBMlx1OUJBMFx1OUJBRlx1OUQzM1x1OUQ0MVx1OUQ2N1x1OUQzNlx1OUQyRVx1OUQyRlx1OUQzMVx1OUQzOFx1OUQzMFwiXSxcbltcImVmYTFcIixcIlx1OUQ0NVx1OUQ0Mlx1OUQ0M1x1OUQzRVx1OUQzN1x1OUQ0MFx1OUQzRFx1N0ZGNVx1OUQyRFx1OUU4QVx1OUU4OVx1OUU4RFx1OUVCMFx1OUVDOFx1OUVEQVx1OUVGQlx1OUVGRlx1OUYyNFx1OUYyM1x1OUYyMlx1OUY1NFx1OUZBMFx1NTEzMVx1NTEyRFx1NTEyRVx1NTY5OFx1NTY5Q1x1NTY5N1x1NTY5QVx1NTY5RFx1NTY5OVx1NTk3MFx1NUIzQ1x1NUM2OVx1NUM2QVx1NURDMFx1NUU2RFx1NUU2RVx1NjFEOFx1NjFERlx1NjFFRFx1NjFFRVx1NjFGMVx1NjFFQVx1NjFGMFx1NjFFQlx1NjFENlx1NjFFOVx1NjRGRlx1NjUwNFx1NjRGRFx1NjRGOFx1NjUwMVx1NjUwM1x1NjRGQ1x1NjU5NFx1NjVEQlx1NjZEQVx1NjZEQlx1NjZEOFx1NkFDNVx1NkFCOVx1NkFCRFx1NkFFMVx1NkFDNlx1NkFCQVx1NkFCNlx1NkFCN1x1NkFDN1x1NkFCNFx1NkFBRFx1NkI1RVx1NkJDOVx1NkMwQlx1NzAwN1x1NzAwQ1x1NzAwRFx1NzAwMVx1NzAwNVx1NzAxNFx1NzAwRVx1NkZGRlx1NzAwMFx1NkZGQlx1NzAyNlx1NkZGQ1x1NkZGN1x1NzAwQVx1NzIwMVx1NzFGRlx1NzFGOVx1NzIwM1x1NzFGRFx1NzM3NlwiXSxcbltcImYwNDBcIixcIlx1NzRCOFx1NzRDMFx1NzRCNVx1NzRDMVx1NzRCRVx1NzRCNlx1NzRCQlx1NzRDMlx1NzUxNFx1NzUxM1x1NzY1Q1x1NzY2NFx1NzY1OVx1NzY1MFx1NzY1M1x1NzY1N1x1NzY1QVx1NzZBNlx1NzZCRFx1NzZFQ1x1NzdDMlx1NzdCQVx1NzhGRlx1NzkwQ1x1NzkxM1x1NzkxNFx1NzkwOVx1NzkxMFx1NzkxMlx1NzkxMVx1NzlBRFx1NzlBQ1x1N0E1Rlx1N0MxQ1x1N0MyOVx1N0MxOVx1N0MyMFx1N0MxRlx1N0MyRFx1N0MxRFx1N0MyNlx1N0MyOFx1N0MyMlx1N0MyNVx1N0MzMFx1N0U1Q1x1N0U1MFx1N0U1Nlx1N0U2M1x1N0U1OFx1N0U2Mlx1N0U1Rlx1N0U1MVx1N0U2MFx1N0U1N1x1N0U1M1x1N0ZCNVx1N0ZCM1x1N0ZGN1x1N0ZGOFx1ODA3NVx1ODFEMVx1ODFEMlwiXSxcbltcImYwYTFcIixcIlx1ODFEMFx1ODI1Rlx1ODI1RVx1ODVCNFx1ODVDNlx1ODVDMFx1ODVDM1x1ODVDMlx1ODVCM1x1ODVCNVx1ODVCRFx1ODVDN1x1ODVDNFx1ODVCRlx1ODVDQlx1ODVDRVx1ODVDOFx1ODVDNVx1ODVCMVx1ODVCNlx1ODVEMlx1ODYyNFx1ODVCOFx1ODVCN1x1ODVCRVx1ODY2OVx1ODdFN1x1ODdFNlx1ODdFMlx1ODdEQlx1ODdFQlx1ODdFQVx1ODdFNVx1ODdERlx1ODdGM1x1ODdFNFx1ODdENFx1ODdEQ1x1ODdEM1x1ODdFRFx1ODdEOFx1ODdFM1x1ODdBNFx1ODdEN1x1ODdEOVx1ODgwMVx1ODdGNFx1ODdFOFx1ODdERFx1ODk1M1x1ODk0Qlx1ODk0Rlx1ODk0Q1x1ODk0Nlx1ODk1MFx1ODk1MVx1ODk0OVx1OEIyQVx1OEIyN1x1OEIyM1x1OEIzM1x1OEIzMFx1OEIzNVx1OEI0N1x1OEIyRlx1OEIzQ1x1OEIzRVx1OEIzMVx1OEIyNVx1OEIzN1x1OEIyNlx1OEIzNlx1OEIyRVx1OEIyNFx1OEIzQlx1OEIzRFx1OEIzQVx1OEM0Mlx1OEM3NVx1OEM5OVx1OEM5OFx1OEM5N1x1OENGRVx1OEQwNFx1OEQwMlx1OEQwMFx1OEU1Q1x1OEU2Mlx1OEU2MFx1OEU1N1x1OEU1Nlx1OEU1RVx1OEU2NVx1OEU2N1wiXSxcbltcImYxNDBcIixcIlx1OEU1Qlx1OEU1QVx1OEU2MVx1OEU1RFx1OEU2OVx1OEU1NFx1OEY0Nlx1OEY0N1x1OEY0OFx1OEY0Qlx1OTEyOFx1OTEzQVx1OTEzQlx1OTEzRVx1OTFBOFx1OTFBNVx1OTFBN1x1OTFBRlx1OTFBQVx1OTNCNVx1OTM4Q1x1OTM5Mlx1OTNCN1x1OTM5Qlx1OTM5RFx1OTM4OVx1OTNBN1x1OTM4RVx1OTNBQVx1OTM5RVx1OTNBNlx1OTM5NVx1OTM4OFx1OTM5OVx1OTM5Rlx1OTM4RFx1OTNCMVx1OTM5MVx1OTNCMlx1OTNBNFx1OTNBOFx1OTNCNFx1OTNBM1x1OTNBNVx1OTVEMlx1OTVEM1x1OTVEMVx1OTZCM1x1OTZEN1x1OTZEQVx1NURDMlx1OTZERlx1OTZEOFx1OTZERFx1OTcyM1x1OTcyMlx1OTcyNVx1OTdBQ1x1OTdBRVx1OTdBOFx1OTdBQlx1OTdBNFx1OTdBQVwiXSxcbltcImYxYTFcIixcIlx1OTdBMlx1OTdBNVx1OTdEN1x1OTdEOVx1OTdENlx1OTdEOFx1OTdGQVx1OTg1MFx1OTg1MVx1OTg1Mlx1OThCOFx1OTk0MVx1OTkzQ1x1OTkzQVx1OUEwRlx1OUEwQlx1OUEwOVx1OUEwRFx1OUEwNFx1OUExMVx1OUEwQVx1OUEwNVx1OUEwN1x1OUEwNlx1OUFDMFx1OUFEQ1x1OUIwOFx1OUIwNFx1OUIwNVx1OUIyOVx1OUIzNVx1OUI0QVx1OUI0Q1x1OUI0Qlx1OUJDN1x1OUJDNlx1OUJDM1x1OUJCRlx1OUJDMVx1OUJCNVx1OUJCOFx1OUJEM1x1OUJCNlx1OUJDNFx1OUJCOVx1OUJCRFx1OUQ1Q1x1OUQ1M1x1OUQ0Rlx1OUQ0QVx1OUQ1Qlx1OUQ0Qlx1OUQ1OVx1OUQ1Nlx1OUQ0Q1x1OUQ1N1x1OUQ1Mlx1OUQ1NFx1OUQ1Rlx1OUQ1OFx1OUQ1QVx1OUU4RVx1OUU4Q1x1OUVERlx1OUYwMVx1OUYwMFx1OUYxNlx1OUYyNVx1OUYyQlx1OUYyQVx1OUYyOVx1OUYyOFx1OUY0Q1x1OUY1NVx1NTEzNFx1NTEzNVx1NTI5Nlx1NTJGN1x1NTNCNFx1NTZBQlx1NTZBRFx1NTZBNlx1NTZBN1x1NTZBQVx1NTZBQ1x1NThEQVx1NThERFx1NThEQlx1NTkxMlx1NUIzRFx1NUIzRVx1NUIzRlx1NURDM1x1NUU3MFwiXSxcbltcImYyNDBcIixcIlx1NUZCRlx1NjFGQlx1NjUwN1x1NjUxMFx1NjUwRFx1NjUwOVx1NjUwQ1x1NjUwRVx1NjU4NFx1NjVERVx1NjVERFx1NjZERVx1NkFFN1x1NkFFMFx1NkFDQ1x1NkFEMVx1NkFEOVx1NkFDQlx1NkFERlx1NkFEQ1x1NkFEMFx1NkFFQlx1NkFDRlx1NkFDRFx1NkFERVx1NkI2MFx1NkJCMFx1NkMwQ1x1NzAxOVx1NzAyN1x1NzAyMFx1NzAxNlx1NzAyQlx1NzAyMVx1NzAyMlx1NzAyM1x1NzAyOVx1NzAxN1x1NzAyNFx1NzAxQ1x1NzAyQVx1NzIwQ1x1NzIwQVx1NzIwN1x1NzIwMlx1NzIwNVx1NzJBNVx1NzJBNlx1NzJBNFx1NzJBM1x1NzJBMVx1NzRDQlx1NzRDNVx1NzRCN1x1NzRDM1x1NzUxNlx1NzY2MFx1NzdDOVx1NzdDQVx1NzdDNFx1NzdGMVx1NzkxRFx1NzkxQlwiXSxcbltcImYyYTFcIixcIlx1NzkyMVx1NzkxQ1x1NzkxN1x1NzkxRVx1NzlCMFx1N0E2N1x1N0E2OFx1N0MzM1x1N0MzQ1x1N0MzOVx1N0MyQ1x1N0MzQlx1N0NFQ1x1N0NFQVx1N0U3Nlx1N0U3NVx1N0U3OFx1N0U3MFx1N0U3N1x1N0U2Rlx1N0U3QVx1N0U3Mlx1N0U3NFx1N0U2OFx1N0Y0Qlx1N0Y0QVx1N0Y4M1x1N0Y4Nlx1N0ZCN1x1N0ZGRFx1N0ZGRVx1ODA3OFx1ODFEN1x1ODFENVx1ODI2NFx1ODI2MVx1ODI2M1x1ODVFQlx1ODVGMVx1ODVFRFx1ODVEOVx1ODVFMVx1ODVFOFx1ODVEQVx1ODVEN1x1ODVFQ1x1ODVGMlx1ODVGOFx1ODVEOFx1ODVERlx1ODVFM1x1ODVEQ1x1ODVEMVx1ODVGMFx1ODVFNlx1ODVFRlx1ODVERVx1ODVFMlx1ODgwMFx1ODdGQVx1ODgwM1x1ODdGNlx1ODdGN1x1ODgwOVx1ODgwQ1x1ODgwQlx1ODgwNlx1ODdGQ1x1ODgwOFx1ODdGRlx1ODgwQVx1ODgwMlx1ODk2Mlx1ODk1QVx1ODk1Qlx1ODk1N1x1ODk2MVx1ODk1Q1x1ODk1OFx1ODk1RFx1ODk1OVx1ODk4OFx1ODlCN1x1ODlCNlx1ODlGNlx1OEI1MFx1OEI0OFx1OEI0QVx1OEI0MFx1OEI1M1x1OEI1Nlx1OEI1NFx1OEI0Qlx1OEI1NVwiXSxcbltcImYzNDBcIixcIlx1OEI1MVx1OEI0Mlx1OEI1Mlx1OEI1N1x1OEM0M1x1OEM3N1x1OEM3Nlx1OEM5QVx1OEQwNlx1OEQwN1x1OEQwOVx1OERBQ1x1OERBQVx1OERBRFx1OERBQlx1OEU2RFx1OEU3OFx1OEU3M1x1OEU2QVx1OEU2Rlx1OEU3Qlx1OEVDMlx1OEY1Mlx1OEY1MVx1OEY0Rlx1OEY1MFx1OEY1M1x1OEZCNFx1OTE0MFx1OTEzRlx1OTFCMFx1OTFBRFx1OTNERVx1OTNDN1x1OTNDRlx1OTNDMlx1OTNEQVx1OTNEMFx1OTNGOVx1OTNFQ1x1OTNDQ1x1OTNEOVx1OTNBOVx1OTNFNlx1OTNDQVx1OTNENFx1OTNFRVx1OTNFM1x1OTNENVx1OTNDNFx1OTNDRVx1OTNDMFx1OTNEMlx1OTNFN1x1OTU3RFx1OTVEQVx1OTVEQlx1OTZFMVx1OTcyOVx1OTcyQlx1OTcyQ1x1OTcyOFx1OTcyNlwiXSxcbltcImYzYTFcIixcIlx1OTdCM1x1OTdCN1x1OTdCNlx1OTdERFx1OTdERVx1OTdERlx1OTg1Q1x1OTg1OVx1OTg1RFx1OTg1N1x1OThCRlx1OThCRFx1OThCQlx1OThCRVx1OTk0OFx1OTk0N1x1OTk0M1x1OTlBNlx1OTlBN1x1OUExQVx1OUExNVx1OUEyNVx1OUExRFx1OUEyNFx1OUExQlx1OUEyMlx1OUEyMFx1OUEyN1x1OUEyM1x1OUExRVx1OUExQ1x1OUExNFx1OUFDMlx1OUIwQlx1OUIwQVx1OUIwRVx1OUIwQ1x1OUIzN1x1OUJFQVx1OUJFQlx1OUJFMFx1OUJERVx1OUJFNFx1OUJFNlx1OUJFMlx1OUJGMFx1OUJENFx1OUJEN1x1OUJFQ1x1OUJEQ1x1OUJEOVx1OUJFNVx1OUJENVx1OUJFMVx1OUJEQVx1OUQ3N1x1OUQ4MVx1OUQ4QVx1OUQ4NFx1OUQ4OFx1OUQ3MVx1OUQ4MFx1OUQ3OFx1OUQ4Nlx1OUQ4Qlx1OUQ4Q1x1OUQ3RFx1OUQ2Qlx1OUQ3NFx1OUQ3NVx1OUQ3MFx1OUQ2OVx1OUQ4NVx1OUQ3M1x1OUQ3Qlx1OUQ4Mlx1OUQ2Rlx1OUQ3OVx1OUQ3Rlx1OUQ4N1x1OUQ2OFx1OUU5NFx1OUU5MVx1OUVDMFx1OUVGQ1x1OUYyRFx1OUY0MFx1OUY0MVx1OUY0RFx1OUY1Nlx1OUY1N1x1OUY1OFx1NTMzN1x1NTZCMlwiXSxcbltcImY0NDBcIixcIlx1NTZCNVx1NTZCM1x1NThFM1x1NUI0NVx1NURDNlx1NURDN1x1NUVFRVx1NUVFRlx1NUZDMFx1NUZDMVx1NjFGOVx1NjUxN1x1NjUxNlx1NjUxNVx1NjUxM1x1NjVERlx1NjZFOFx1NjZFM1x1NjZFNFx1NkFGM1x1NkFGMFx1NkFFQVx1NkFFOFx1NkFGOVx1NkFGMVx1NkFFRVx1NkFFRlx1NzAzQ1x1NzAzNVx1NzAyRlx1NzAzN1x1NzAzNFx1NzAzMVx1NzA0Mlx1NzAzOFx1NzAzRlx1NzAzQVx1NzAzOVx1NzA0MFx1NzAzQlx1NzAzM1x1NzA0MVx1NzIxM1x1NzIxNFx1NzJBOFx1NzM3RFx1NzM3Q1x1NzRCQVx1NzZBQlx1NzZBQVx1NzZCRVx1NzZFRFx1NzdDQ1x1NzdDRVx1NzdDRlx1NzdDRFx1NzdGMlx1NzkyNVx1NzkyM1x1NzkyN1x1NzkyOFx1NzkyNFx1NzkyOVwiXSxcbltcImY0YTFcIixcIlx1NzlCMlx1N0E2RVx1N0E2Q1x1N0E2RFx1N0FGN1x1N0M0OVx1N0M0OFx1N0M0QVx1N0M0N1x1N0M0NVx1N0NFRVx1N0U3Qlx1N0U3RVx1N0U4MVx1N0U4MFx1N0ZCQVx1N0ZGRlx1ODA3OVx1ODFEQlx1ODFEOVx1ODIwQlx1ODI2OFx1ODI2OVx1ODYyMlx1ODVGRlx1ODYwMVx1ODVGRVx1ODYxQlx1ODYwMFx1ODVGNlx1ODYwNFx1ODYwOVx1ODYwNVx1ODYwQ1x1ODVGRFx1ODgxOVx1ODgxMFx1ODgxMVx1ODgxN1x1ODgxM1x1ODgxNlx1ODk2M1x1ODk2Nlx1ODlCOVx1ODlGN1x1OEI2MFx1OEI2QVx1OEI1RFx1OEI2OFx1OEI2M1x1OEI2NVx1OEI2N1x1OEI2RFx1OERBRVx1OEU4Nlx1OEU4OFx1OEU4NFx1OEY1OVx1OEY1Nlx1OEY1N1x1OEY1NVx1OEY1OFx1OEY1QVx1OTA4RFx1OTE0M1x1OTE0MVx1OTFCN1x1OTFCNVx1OTFCMlx1OTFCM1x1OTQwQlx1OTQxM1x1OTNGQlx1OTQyMFx1OTQwRlx1OTQxNFx1OTNGRVx1OTQxNVx1OTQxMFx1OTQyOFx1OTQxOVx1OTQwRFx1OTNGNVx1OTQwMFx1OTNGN1x1OTQwN1x1OTQwRVx1OTQxNlx1OTQxMlx1OTNGQVx1OTQwOVx1OTNGOFx1OTQwQVx1OTNGRlwiXSxcbltcImY1NDBcIixcIlx1OTNGQ1x1OTQwQ1x1OTNGNlx1OTQxMVx1OTQwNlx1OTVERVx1OTVFMFx1OTVERlx1OTcyRVx1OTcyRlx1OTdCOVx1OTdCQlx1OTdGRFx1OTdGRVx1OTg2MFx1OTg2Mlx1OTg2M1x1OTg1Rlx1OThDMVx1OThDMlx1OTk1MFx1OTk0RVx1OTk1OVx1OTk0Q1x1OTk0Qlx1OTk1M1x1OUEzMlx1OUEzNFx1OUEzMVx1OUEyQ1x1OUEyQVx1OUEzNlx1OUEyOVx1OUEyRVx1OUEzOFx1OUEyRFx1OUFDN1x1OUFDQVx1OUFDNlx1OUIxMFx1OUIxMlx1OUIxMVx1OUMwQlx1OUMwOFx1OUJGN1x1OUMwNVx1OUMxMlx1OUJGOFx1OUM0MFx1OUMwN1x1OUMwRVx1OUMwNlx1OUMxN1x1OUMxNFx1OUMwOVx1OUQ5Rlx1OUQ5OVx1OURBNFx1OUQ5RFx1OUQ5Mlx1OUQ5OFx1OUQ5MFx1OUQ5QlwiXSxcbltcImY1YTFcIixcIlx1OURBMFx1OUQ5NFx1OUQ5Q1x1OURBQVx1OUQ5N1x1OURBMVx1OUQ5QVx1OURBMlx1OURBOFx1OUQ5RVx1OURBM1x1OURCRlx1OURBOVx1OUQ5Nlx1OURBNlx1OURBN1x1OUU5OVx1OUU5Qlx1OUU5QVx1OUVFNVx1OUVFNFx1OUVFN1x1OUVFNlx1OUYzMFx1OUYyRVx1OUY1Qlx1OUY2MFx1OUY1RVx1OUY1RFx1OUY1OVx1OUY5MVx1NTEzQVx1NTEzOVx1NTI5OFx1NTI5N1x1NTZDM1x1NTZCRFx1NTZCRVx1NUI0OFx1NUI0N1x1NURDQlx1NURDRlx1NUVGMVx1NjFGRFx1NjUxQlx1NkIwMlx1NkFGQ1x1NkIwM1x1NkFGOFx1NkIwMFx1NzA0M1x1NzA0NFx1NzA0QVx1NzA0OFx1NzA0OVx1NzA0NVx1NzA0Nlx1NzIxRFx1NzIxQVx1NzIxOVx1NzM3RVx1NzUxN1x1NzY2QVx1NzdEMFx1NzkyRFx1NzkzMVx1NzkyRlx1N0M1NFx1N0M1M1x1N0NGMlx1N0U4QVx1N0U4N1x1N0U4OFx1N0U4Qlx1N0U4Nlx1N0U4RFx1N0Y0RFx1N0ZCQlx1ODAzMFx1ODFERFx1ODYxOFx1ODYyQVx1ODYyNlx1ODYxRlx1ODYyM1x1ODYxQ1x1ODYxOVx1ODYyN1x1ODYyRVx1ODYyMVx1ODYyMFx1ODYyOVx1ODYxRVx1ODYyNVwiXSxcbltcImY2NDBcIixcIlx1ODgyOVx1ODgxRFx1ODgxQlx1ODgyMFx1ODgyNFx1ODgxQ1x1ODgyQlx1ODg0QVx1ODk2RFx1ODk2OVx1ODk2RVx1ODk2Qlx1ODlGQVx1OEI3OVx1OEI3OFx1OEI0NVx1OEI3QVx1OEI3Qlx1OEQxMFx1OEQxNFx1OERBRlx1OEU4RVx1OEU4Q1x1OEY1RVx1OEY1Qlx1OEY1RFx1OTE0Nlx1OTE0NFx1OTE0NVx1OTFCOVx1OTQzRlx1OTQzQlx1OTQzNlx1OTQyOVx1OTQzRFx1OTQzQ1x1OTQzMFx1OTQzOVx1OTQyQVx1OTQzN1x1OTQyQ1x1OTQ0MFx1OTQzMVx1OTVFNVx1OTVFNFx1OTVFM1x1OTczNVx1OTczQVx1OTdCRlx1OTdFMVx1OTg2NFx1OThDOVx1OThDNlx1OThDMFx1OTk1OFx1OTk1Nlx1OUEzOVx1OUEzRFx1OUE0Nlx1OUE0NFx1OUE0Mlx1OUE0MVx1OUEzQVwiXSxcbltcImY2YTFcIixcIlx1OUEzRlx1OUFDRFx1OUIxNVx1OUIxN1x1OUIxOFx1OUIxNlx1OUIzQVx1OUI1Mlx1OUMyQlx1OUMxRFx1OUMxQ1x1OUMyQ1x1OUMyM1x1OUMyOFx1OUMyOVx1OUMyNFx1OUMyMVx1OURCN1x1OURCNlx1OURCQ1x1OURDMVx1OURDN1x1OURDQVx1OURDRlx1OURCRVx1OURDNVx1OURDM1x1OURCQlx1OURCNVx1OURDRVx1OURCOVx1OURCQVx1OURBQ1x1OURDOFx1OURCMVx1OURBRFx1OURDQ1x1OURCM1x1OURDRFx1OURCMlx1OUU3QVx1OUU5Q1x1OUVFQlx1OUVFRVx1OUVFRFx1OUYxQlx1OUYxOFx1OUYxQVx1OUYzMVx1OUY0RVx1OUY2NVx1OUY2NFx1OUY5Mlx1NEVCOVx1NTZDNlx1NTZDNVx1NTZDQlx1NTk3MVx1NUI0Qlx1NUI0Q1x1NURENVx1NUREMVx1NUVGMlx1NjUyMVx1NjUyMFx1NjUyNlx1NjUyMlx1NkIwQlx1NkIwOFx1NkIwOVx1NkMwRFx1NzA1NVx1NzA1Nlx1NzA1N1x1NzA1Mlx1NzIxRVx1NzIxRlx1NzJBOVx1NzM3Rlx1NzREOFx1NzRENVx1NzREOVx1NzREN1x1NzY2RFx1NzZBRFx1NzkzNVx1NzlCNFx1N0E3MFx1N0E3MVx1N0M1N1x1N0M1Q1x1N0M1OVx1N0M1Qlx1N0M1QVwiXSxcbltcImY3NDBcIixcIlx1N0NGNFx1N0NGMVx1N0U5MVx1N0Y0Rlx1N0Y4N1x1ODFERVx1ODI2Qlx1ODYzNFx1ODYzNVx1ODYzM1x1ODYyQ1x1ODYzMlx1ODYzNlx1ODgyQ1x1ODgyOFx1ODgyNlx1ODgyQVx1ODgyNVx1ODk3MVx1ODlCRlx1ODlCRVx1ODlGQlx1OEI3RVx1OEI4NFx1OEI4Mlx1OEI4Nlx1OEI4NVx1OEI3Rlx1OEQxNVx1OEU5NVx1OEU5NFx1OEU5QVx1OEU5Mlx1OEU5MFx1OEU5Nlx1OEU5N1x1OEY2MFx1OEY2Mlx1OTE0N1x1OTQ0Q1x1OTQ1MFx1OTQ0QVx1OTQ0Qlx1OTQ0Rlx1OTQ0N1x1OTQ0NVx1OTQ0OFx1OTQ0OVx1OTQ0Nlx1OTczRlx1OTdFM1x1OTg2QVx1OTg2OVx1OThDQlx1OTk1NFx1OTk1Qlx1OUE0RVx1OUE1M1x1OUE1NFx1OUE0Q1x1OUE0Rlx1OUE0OFx1OUE0QVwiXSxcbltcImY3YTFcIixcIlx1OUE0OVx1OUE1Mlx1OUE1MFx1OUFEMFx1OUIxOVx1OUIyQlx1OUIzQlx1OUI1Nlx1OUI1NVx1OUM0Nlx1OUM0OFx1OUMzRlx1OUM0NFx1OUMzOVx1OUMzM1x1OUM0MVx1OUMzQ1x1OUMzN1x1OUMzNFx1OUMzMlx1OUMzRFx1OUMzNlx1OUREQlx1OUREMlx1OURERVx1OUREQVx1OURDQlx1OUREMFx1OUREQ1x1OUREMVx1OURERlx1OURFOVx1OUREOVx1OUREOFx1OURENlx1OURGNVx1OURENVx1OURERFx1OUVCNlx1OUVGMFx1OUYzNVx1OUYzM1x1OUYzMlx1OUY0Mlx1OUY2Qlx1OUY5NVx1OUZBMlx1NTEzRFx1NTI5OVx1NThFOFx1NThFN1x1NTk3Mlx1NUI0RFx1NUREOFx1ODgyRlx1NUY0Rlx1NjIwMVx1NjIwM1x1NjIwNFx1NjUyOVx1NjUyNVx1NjU5Nlx1NjZFQlx1NkIxMVx1NkIxMlx1NkIwRlx1NkJDQVx1NzA1Qlx1NzA1QVx1NzIyMlx1NzM4Mlx1NzM4MVx1NzM4M1x1NzY3MFx1NzdENFx1N0M2N1x1N0M2Nlx1N0U5NVx1ODI2Q1x1ODYzQVx1ODY0MFx1ODYzOVx1ODYzQ1x1ODYzMVx1ODYzQlx1ODYzRVx1ODgzMFx1ODgzMlx1ODgyRVx1ODgzM1x1ODk3Nlx1ODk3NFx1ODk3M1x1ODlGRVwiXSxcbltcImY4NDBcIixcIlx1OEI4Q1x1OEI4RVx1OEI4Qlx1OEI4OFx1OEM0NVx1OEQxOVx1OEU5OFx1OEY2NFx1OEY2M1x1OTFCQ1x1OTQ2Mlx1OTQ1NVx1OTQ1RFx1OTQ1N1x1OTQ1RVx1OTdDNFx1OTdDNVx1OTgwMFx1OUE1Nlx1OUE1OVx1OUIxRVx1OUIxRlx1OUIyMFx1OUM1Mlx1OUM1OFx1OUM1MFx1OUM0QVx1OUM0RFx1OUM0Qlx1OUM1NVx1OUM1OVx1OUM0Q1x1OUM0RVx1OURGQlx1OURGN1x1OURFRlx1OURFM1x1OURFQlx1OURGOFx1OURFNFx1OURGNlx1OURFMVx1OURFRVx1OURFNlx1OURGMlx1OURGMFx1OURFMlx1OURFQ1x1OURGNFx1OURGM1x1OURFOFx1OURFRFx1OUVDMlx1OUVEMFx1OUVGMlx1OUVGM1x1OUYwNlx1OUYxQ1x1OUYzOFx1OUYzN1x1OUYzNlx1OUY0M1x1OUY0RlwiXSxcbltcImY4YTFcIixcIlx1OUY3MVx1OUY3MFx1OUY2RVx1OUY2Rlx1NTZEM1x1NTZDRFx1NUI0RVx1NUM2RFx1NjUyRFx1NjZFRFx1NjZFRVx1NkIxM1x1NzA1Rlx1NzA2MVx1NzA1RFx1NzA2MFx1NzIyM1x1NzREQlx1NzRFNVx1NzdENVx1NzkzOFx1NzlCN1x1NzlCNlx1N0M2QVx1N0U5N1x1N0Y4OVx1ODI2RFx1ODY0M1x1ODgzOFx1ODgzN1x1ODgzNVx1ODg0Qlx1OEI5NFx1OEI5NVx1OEU5RVx1OEU5Rlx1OEVBMFx1OEU5RFx1OTFCRVx1OTFCRFx1OTFDMlx1OTQ2Qlx1OTQ2OFx1OTQ2OVx1OTZFNVx1OTc0Nlx1OTc0M1x1OTc0N1x1OTdDN1x1OTdFNVx1OUE1RVx1OUFENVx1OUI1OVx1OUM2M1x1OUM2N1x1OUM2Nlx1OUM2Mlx1OUM1RVx1OUM2MFx1OUUwMlx1OURGRVx1OUUwN1x1OUUwM1x1OUUwNlx1OUUwNVx1OUUwMFx1OUUwMVx1OUUwOVx1OURGRlx1OURGRFx1OUUwNFx1OUVBMFx1OUYxRVx1OUY0Nlx1OUY3NFx1OUY3NVx1OUY3Nlx1NTZENFx1NjUyRVx1NjVCOFx1NkIxOFx1NkIxOVx1NkIxN1x1NkIxQVx1NzA2Mlx1NzIyNlx1NzJBQVx1NzdEOFx1NzdEOVx1NzkzOVx1N0M2OVx1N0M2Qlx1N0NGNlx1N0U5QVwiXSxcbltcImY5NDBcIixcIlx1N0U5OFx1N0U5Qlx1N0U5OVx1ODFFMFx1ODFFMVx1ODY0Nlx1ODY0N1x1ODY0OFx1ODk3OVx1ODk3QVx1ODk3Q1x1ODk3Qlx1ODlGRlx1OEI5OFx1OEI5OVx1OEVBNVx1OEVBNFx1OEVBM1x1OTQ2RVx1OTQ2RFx1OTQ2Rlx1OTQ3MVx1OTQ3M1x1OTc0OVx1OTg3Mlx1OTk1Rlx1OUM2OFx1OUM2RVx1OUM2RFx1OUUwQlx1OUUwRFx1OUUxMFx1OUUwRlx1OUUxMlx1OUUxMVx1OUVBMVx1OUVGNVx1OUYwOVx1OUY0N1x1OUY3OFx1OUY3Qlx1OUY3QVx1OUY3OVx1NTcxRVx1NzA2Nlx1N0M2Rlx1ODgzQ1x1OERCMlx1OEVBNlx1OTFDM1x1OTQ3NFx1OTQ3OFx1OTQ3Nlx1OTQ3NVx1OUE2MFx1OUM3NFx1OUM3M1x1OUM3MVx1OUM3NVx1OUUxNFx1OUUxM1x1OUVGNlx1OUYwQVwiXSxcbltcImY5YTFcIixcIlx1OUZBNFx1NzA2OFx1NzA2NVx1N0NGN1x1ODY2QVx1ODgzRVx1ODgzRFx1ODgzRlx1OEI5RVx1OEM5Q1x1OEVBOVx1OEVDOVx1OTc0Qlx1OTg3M1x1OTg3NFx1OThDQ1x1OTk2MVx1OTlBQlx1OUE2NFx1OUE2Nlx1OUE2N1x1OUIyNFx1OUUxNVx1OUUxN1x1OUY0OFx1NjIwN1x1NkIxRVx1NzIyN1x1ODY0Q1x1OEVBOFx1OTQ4Mlx1OTQ4MFx1OTQ4MVx1OUE2OVx1OUE2OFx1OUIyRVx1OUUxOVx1NzIyOVx1ODY0Qlx1OEI5Rlx1OTQ4M1x1OUM3OVx1OUVCN1x1NzY3NVx1OUE2Qlx1OUM3QVx1OUUxRFx1NzA2OVx1NzA2QVx1OUVBNFx1OUY3RVx1OUY0OVx1OUY5OFx1Nzg4MVx1OTJCOVx1ODhDRlx1NThCQlx1NjA1Mlx1N0NBN1x1NUFGQVx1MjU1NFx1MjU2Nlx1MjU1N1x1MjU2MFx1MjU2Q1x1MjU2M1x1MjU1QVx1MjU2OVx1MjU1RFx1MjU1Mlx1MjU2NFx1MjU1NVx1MjU1RVx1MjU2QVx1MjU2MVx1MjU1OFx1MjU2N1x1MjU1Qlx1MjU1M1x1MjU2NVx1MjU1Nlx1MjU1Rlx1MjU2Qlx1MjU2Mlx1MjU1OVx1MjU2OFx1MjU1Q1x1MjU1MVx1MjU1MFx1MjU2RFx1MjU2RVx1MjU3MFx1MjU2Rlx1MjU5M1wiXVxuXVxuIiwgIltcbltcIjg3NDBcIixcIlx1NDNGMFx1NEMzMlx1NDYwM1x1NDVBNlx1NDU3OFx1RDg1Q1x1REU2N1x1NEQ3N1x1NDVCM1x1RDg1Rlx1RENCMVx1NENFMlx1RDg1Rlx1RENDNVx1M0I5NVx1NDczNlx1NDc0NFx1NEM0N1x1NEM0MFx1RDg1MFx1REVCRlx1RDg0RFx1REUxN1x1RDg1Q1x1REY1Mlx1RDg1Qlx1REU4Qlx1RDg1Q1x1RENEMlx1NEM1N1x1RDg2OFx1REY1MVx1NDc0Rlx1NDVEQVx1NEM4NVx1RDg1Rlx1REM2Q1x1NEQwN1x1NEFBNFx1NDZBMVx1RDg1QVx1REYyM1x1NzIyNVx1RDg1Nlx1REU1NFx1RDg0Nlx1REU2M1x1RDg0Rlx1REUwNlx1RDg0Rlx1REY2MVx1NjY0RFx1NTZGQlwiXSxcbltcIjg3NjdcIixcIlx1N0Q5NVx1NTkxRFx1RDg2Mlx1REZCOVx1M0RGNFx1OTczNFx1RDg1RVx1REZFRlx1NUJEQlx1RDg0N1x1REQ1RVx1NUFBNFx1MzYyNVx1RDg2N1x1REVCMFx1NUFEMVx1NUJCN1x1NUNGQ1x1Njc2RVx1ODU5M1x1RDg2Nlx1REQ0NVx1NzQ2MVx1NzQ5RFx1Mzg3NVx1RDg0N1x1REQ1M1x1RDg0RFx1REU5RVx1RDg1OFx1REMyMVx1M0VFQ1wiXSxcbltcIjg3YTFcIixcIlx1RDg1Nlx1RENERVx1M0FGNVx1N0FGQ1x1OUY5N1x1RDg1MFx1REQ2MVx1RDg2Mlx1REQwRFx1RDg0Q1x1RERFQVx1RDg0Mlx1REU4QVx1RDg0Q1x1REU1RVx1NDMwQVx1ODQ4NFx1OUY5Nlx1OTQyRlx1NDkzMFx1ODYxM1x1NTg5Nlx1OTc0QVx1OTIxOFx1NzlEMFx1N0EzMlx1NjY2MFx1NkEyOVx1ODg5RFx1NzQ0Q1x1N0JDNVx1Njc4Mlx1N0EyQ1x1NTI0Rlx1OTA0Nlx1MzRFNlx1NzNDNFx1RDg1N1x1RERCOVx1NzRDNlx1OUZDN1x1NTdCM1x1NDkyRlx1NTQ0Q1x1NDEzMVx1RDg0RFx1REU4RVx1NTgxOFx1N0E3Mlx1RDg1RVx1REY2NVx1OEI4Rlx1NDZBRVx1RDg1Qlx1REU4OFx1NDE4MVx1RDg1N1x1REQ5OVx1N0JBRVx1RDg0OVx1RENCQ1x1OUZDOFx1RDg0OVx1RENDMVx1RDg0OVx1RENDOVx1RDg0OVx1RENDQ1x1OUZDOVx1ODUwNFx1RDg0RFx1RERCQlx1NDBCNFx1OUZDQVx1NDRFMVx1RDg2Qlx1RERGRlx1NjJDMVx1NzA2RVx1OUZDQlwiXSxcbltcIjg4NDBcIixcIlx1MzFDMFwiLDQsXCJcdUQ4NDBcdUREMENcdTMxQzVcdUQ4NDBcdURDRDFcdUQ4NDBcdURDQ0RcdTMxQzZcdTMxQzdcdUQ4NDBcdURDQ0JcdUQ4NDdcdURGRThcdTMxQzhcdUQ4NDBcdURDQ0FcdTMxQzlcdTMxQ0FcdTMxQ0JcdTMxQ0NcdUQ4NDBcdUREMEVcdTMxQ0RcdTMxQ0VcdTAxMDBcdTAwQzFcdTAxQ0RcdTAwQzBcdTAxMTJcdTAwQzlcdTAxMUFcdTAwQzhcdTAxNENcdTAwRDNcdTAxRDFcdTAwRDJcdTBGRkZcdTAwQ0FcdTAzMDRcdTFFQkVcdTBGRkZcdTAwQ0FcdTAzMENcdTFFQzBcdTAwQ0FcdTAxMDFcdTAwRTFcdTAxQ0VcdTAwRTBcdTAyNTFcdTAxMTNcdTAwRTlcdTAxMUJcdTAwRThcdTAxMkJcdTAwRURcdTAxRDBcdTAwRUNcdTAxNERcdTAwRjNcdTAxRDJcdTAwRjJcdTAxNkJcdTAwRkFcdTAxRDRcdTAwRjlcdTAxRDZcdTAxRDhcdTAxREFcIl0sXG5bXCI4OGExXCIsXCJcdTAxRENcdTAwRkNcdTBGRkZcdTAwRUFcdTAzMDRcdTFFQkZcdTBGRkZcdTAwRUFcdTAzMENcdTFFQzFcdTAwRUFcdTAyNjFcdTIzREFcdTIzREJcIl0sXG5bXCI4OTQwXCIsXCJcdUQ4NjhcdURGQTlcdUQ4NDRcdURENDVcIl0sXG5bXCI4OTQzXCIsXCJcdTY1MEFcIl0sXG5bXCI4OTQ2XCIsXCJcdTRFM0RcdTZFRERcdTlENEVcdTkxREZcIl0sXG5bXCI4OTRjXCIsXCJcdUQ4NURcdURGMzVcdTY0OTFcdTRGMUFcdTRGMjhcdTRGQThcdTUxNTZcdTUxNzRcdTUxOUNcdTUxRTRcdTUyQTFcdTUyQThcdTUzM0JcdTUzNEVcdTUzRDFcdTUzRDhcdTU2RTJcdTU4RjBcdTU5MDRcdTU5MDdcdTU5MzJcdTU5MzRcdTVCNjZcdTVCOUVcdTVCOUZcdTVDOUFcdTVFODZcdTYwM0JcdTY1ODlcdTY3RkVcdTY4MDRcdTY4NjVcdTZENEVcdTcwQkNcdTc1MzVcdTdFQTRcdTdFQUNcdTdFQkFcdTdFQzdcdTdFQ0ZcdTdFREZcdTdGMDZcdTdGMzdcdTgyN0FcdTgyQ0ZcdTgzNkZcdTg5QzZcdThCQkVcdThCRTJcdThGNjZcdThGNjdcdThGNkVcIl0sXG5bXCI4OWExXCIsXCJcdTc0MTFcdTdDRkNcdTdEQ0RcdTY5NDZcdTdBQzlcdTUyMjdcIl0sXG5bXCI4OWFiXCIsXCJcdTkxOENcdTc4QjhcdTkxNUVcdTgwQkNcIl0sXG5bXCI4OWIwXCIsXCJcdThEMEJcdTgwRjZcdUQ4NDJcdURERTdcIl0sXG5bXCI4OWI1XCIsXCJcdTgwOUZcdTlFQzdcdTRDQ0RcdTlEQzlcdTlFMENcdTRDM0VcdUQ4NjdcdURERjZcdUQ4NUNcdURDMEVcdTlFMEFcdUQ4NjhcdUREMzNcdTM1QzFcIl0sXG5bXCI4OWMxXCIsXCJcdTZFOUFcdTgyM0VcdTc1MTlcIl0sXG5bXCI4OWM1XCIsXCJcdTQ5MTFcdTlBNkNcdTlBOEZcdTlGOTlcdTc5ODdcdUQ4NjFcdURDNkNcdUQ4NDdcdUREQ0FcdUQ4NDFcdURERDBcdUQ4NEFcdURFRTZcdTRFMjRcdTRFODFcdTRFODBcdTRFODdcdTRFQkZcdTRFRUJcdTRGMzdcdTM0NENcdTRGQkRcdTNFNDhcdTUwMDNcdTUwODhcdTM0N0RcdTM0OTNcdTM0QTVcdTUxODZcdTU5MDVcdTUxREJcdTUxRkNcdTUyMDVcdTRFODlcdTUyNzlcdTUyOTBcdTUzMjdcdTM1QzdcdTUzQTlcdTM1NTFcdTUzQjBcdTM1NTNcdTUzQzJcdTU0MjNcdTM1NkRcdTM1NzJcdTM2ODFcdTU0OTNcdTU0QTNcdTU0QjRcdTU0QjlcdTU0RDBcdTU0RUZcdTU1MThcdTU1MjNcdTU1MjhcdTM1OThcdTU1M0ZcdTM1QTVcdTM1QkZcdTU1RDdcdTM1QzVcIl0sXG5bXCI4YTQwXCIsXCJcdUQ4NUZcdUREODRcdTU1MjVcIl0sXG5bXCI4YTQzXCIsXCJcdUQ4NDNcdURDNDJcdUQ4NDNcdUREMTVcdUQ4NTRcdUREMkJcdTU1OTBcdUQ4NEJcdURDQzZcdTM5RUNcdUQ4NDBcdURGNDFcdThFNDZcdUQ4NTNcdUREQjhcdUQ4NjVcdURDRTVcdTQwNTNcdUQ4NjBcdURDQkVcdTc3N0FcdUQ4NEJcdURDMzhcdTNBMzRcdTQ3RDVcdUQ4NjBcdURENURcdUQ4NUFcdURERjJcdUQ4NTNcdURERUFcdTY0RERcdUQ4NDNcdUREN0NcdUQ4NDNcdURGQjRcdUQ4NDNcdURDRDVcdUQ4NDRcdURDRjRcdTY0OERcdThFN0VcdUQ4NDNcdURFOTZcdUQ4NDNcdURDMEJcdUQ4NDNcdURGNjRcdUQ4NEJcdURDQTlcdUQ4NjBcdURFNTZcdUQ4NTFcdURDRDNcIl0sXG5bXCI4YTY0XCIsXCJcdUQ4NDNcdURENDZcdUQ4NjZcdURFNERcdUQ4NjBcdURDRTlcdTQ3RjRcdUQ4NTNcdURFQTdcdUQ4NEJcdURDQzJcdTlBQjJcdTNBNjdcdUQ4NjVcdURERjRcdTNGRURcdTM1MDZcdUQ4NTRcdURFQzdcdUQ4NjVcdURGRDRcdUQ4NUVcdURDQzhcdUQ4NEJcdURENDRcdTlENkVcdTk4MTVcIl0sXG5bXCI4YTc2XCIsXCJcdTQzRDlcdUQ4NThcdURDQTVcdTY0QjRcdTU0RTNcdUQ4NEJcdURENENcdUQ4NEFcdURGQ0FcdUQ4NDRcdURDNzdcdTM5RkJcdUQ4NDRcdURDNkZcIl0sXG5bXCI4YWExXCIsXCJcdUQ4NTlcdURFREFcdUQ4NTlcdURGMTZcdUQ4NUVcdUREQTBcdTY0RUFcdUQ4NTRcdURDNTJcdUQ4NDNcdURDNDNcdThFNjhcdUQ4NDhcdUREQTFcdUQ4NjJcdURGNENcdUQ4NDFcdURGMzFcIl0sXG5bXCI4YWFjXCIsXCJcdTQ4MEJcdUQ4NDBcdUREQTlcdTNGRkFcdTU4NzNcdUQ4NEJcdUREOERcIl0sXG5bXCI4YWIyXCIsXCJcdUQ4NTFcdUREQzhcdUQ4NDFcdURDRkNcdUQ4NThcdURDOTdcdUQ4NDNcdURGNENcdUQ4NDNcdUREOTZcdTU1NzlcdTQwQkJcdTQzQkFcIl0sXG5bXCI4YWJiXCIsXCJcdTRBQjRcdUQ4NEFcdURFNjZcdUQ4NDRcdURDOURcdTgxQUFcdTk4RjVcdUQ4NDNcdUREOUNcdTYzNzlcdTM5RkVcdUQ4NDlcdURGNzVcdThEQzBcdTU2QTFcdTY0N0NcdTNFNDNcIl0sXG5bXCI4YWM5XCIsXCJcdUQ4NjlcdURFMDFcdUQ4NDNcdURFMDlcdUQ4NEFcdURFQ0ZcdUQ4NEJcdURDQzlcIl0sXG5bXCI4YWNlXCIsXCJcdUQ4NDRcdURDQzhcdUQ4NEVcdUREQzJcdTM5OTJcdTNBMDZcdUQ4NjBcdURFOUJcdTM1NzhcdUQ4NTdcdURFNDlcdUQ4NDhcdURDQzdcdTU2NTJcdUQ4NDNcdURGMzFcdUQ4NEJcdURDQjJcdUQ4NjVcdURGMjBcdTM0QkNcdTZDM0RcdUQ4NTNcdURFM0JcIl0sXG5bXCI4YWRmXCIsXCJcdUQ4NURcdURENzRcdUQ4NEJcdURFOEJcdUQ4NDhcdURFMDhcdUQ4NjlcdURFNUJcdUQ4NjNcdURDQ0RcdUQ4NDNcdURFN0FcdUQ4NDNcdURDMzRcdUQ4NUFcdURDMUNcdTdGOTNcdUQ4NDRcdURDQ0ZcdUQ4NEFcdURDMDNcdUQ4NEFcdUREMzlcdTM1RkJcdUQ4NTRcdURERTNcdUQ4NDNcdURFOENcdUQ4NDNcdURGOERcdUQ4NDNcdURFQUFcdTNGOTNcdUQ4NDNcdURGMzBcdUQ4NDNcdURENDdcdUQ4NDRcdURENEZcdUQ4NDNcdURFNENcIl0sXG5bXCI4YWY2XCIsXCJcdUQ4NDNcdURFQUJcdUQ4NDJcdURGQTlcdUQ4NDNcdURENDhcdUQ4NDRcdURDQzBcdUQ4NDRcdUREM0RcdTNGRjlcdUQ4NDlcdURFOTZcdTY0MzJcdUQ4NDNcdURGQURcIl0sXG5bXCI4YjQwXCIsXCJcdUQ4NENcdURGRjRcdUQ4NURcdURFMzlcdUQ4NEFcdURGQ0VcdUQ4NDNcdUREN0VcdUQ4NDNcdUREN0ZcdUQ4NEJcdURDNTFcdUQ4NEJcdURDNTVcdTNBMThcdUQ4NDNcdURFOThcdUQ4NDRcdURDQzdcdUQ4NDNcdURGMkVcdUQ4NjlcdURFMzJcdUQ4NUFcdURGNTBcdUQ4NjNcdURDRDJcdUQ4NjNcdUREOTlcdUQ4NjNcdURDQ0FcdTk1QUFcdTU0Q0NcdTgyQzRcdTU1QjlcIl0sXG5bXCI4YjU1XCIsXCJcdUQ4NjdcdURFQzNcdTlDMjZcdTlBQjZcdUQ4NURcdURGNUVcdUQ4NEJcdURERUVcdTcxNDBcdTgxNkRcdTgwRUNcdTVDMUNcdUQ4NTlcdURENzJcdTgxMzRcdTM3OTdcdTUzNUZcdUQ4NjBcdURDQkRcdTkxQjZcdUQ4NDNcdURFRkFcdUQ4NDNcdURFMEZcdUQ4NDNcdURFNzdcdUQ4NDNcdURFRkJcdTM1RERcdUQ4NTNcdURERUJcdTM2MDlcdUQ4NDNcdURDRDZcdTU2QUZcdUQ4NDlcdURGQjVcdUQ4NDRcdURDQzlcdUQ4NDNcdURFMTBcdUQ4NDNcdURFNzhcdUQ4NDRcdURDNzhcdUQ4NDRcdURENDhcdUQ4NjBcdURFMDdcdUQ4NDVcdURDNTVcdUQ4NDNcdURFNzlcdUQ4NTNcdURFNTBcdUQ4NEJcdUREQTRcdTVBNTRcdUQ4NDRcdURDMURcdUQ4NDRcdURDMUVcdUQ4NDRcdURDRjVcdUQ4NDRcdURDRjZcdTU3OUNcdUQ4NDNcdURFMTFcIl0sXG5bXCI4YmExXCIsXCJcdUQ4NURcdURFOTRcdUQ4NjBcdURFQ0RcdUQ4NDNcdURGQjVcdUQ4NDNcdURFN0JcdUQ4NTRcdUREN0VcdTM3MDNcdUQ4NDNcdURGQjZcdUQ4NDRcdUREODBcdUQ4NTRcdURFRDhcdUQ4NjhcdURFQkRcdUQ4NTJcdUREREFcdUQ4NDZcdURDM0FcdUQ4NTBcdURENzdcdUQ4NjBcdURFN0NcdTU4OTlcdTUyNjhcdTM2MUFcdUQ4NTVcdURGM0RcdTdCQjJcdTVCNjhcdTQ4MDBcdTRCMkNcdTlGMjdcdTQ5RTdcdTlDMUZcdTlCOERcdUQ4NTZcdURGNzRcdUQ4NENcdUREM0RcdTU1RkJcdTM1RjJcdTU2ODlcdTRFMjhcdTU5MDJcdUQ4NDZcdURGQzFcdUQ4N0VcdURDNzhcdTk3NTFcdUQ4NDBcdURDODZcdTRFNUJcdTRFQkJcdTM1M0VcdTVDMjNcdTVGNTFcdTVGQzRcdTM4RkFcdTYyNENcdTY1MzVcdTZCN0FcdTZDMzVcdTZDM0FcdTcwNkNcdTcyMkJcdTRFMkNcdTcyQURcdUQ4NTJcdURDRTlcdTdGNTJcdTc5M0JcdTdDRjlcdTdGNTNcdUQ4NThcdURFNkFcdTM0QzFcIl0sXG5bXCI4YmRlXCIsXCJcdUQ4NThcdURGNEJcdTgwMDJcdTgwODBcdUQ4NTlcdURFMTJcdUQ4NUFcdURENTFcdTUzNURcdTg4NjRcdTg5QzFcdUQ4NUVcdURDQjJcdThCQTBcdThEMURcdTk0ODVcdTk1NzhcdTk1N0ZcdTk1RThcdUQ4NjNcdURFMEZcdTk3RTZcdTk4NzVcdTk4Q0VcdTk4REVcdTk5NjNcdUQ4NjZcdURDMTBcdTlDN0NcdTlFMUZcdTlFQzRcdTZCNkZcdUY5MDdcdTRFMzdcdUQ4NDBcdURDODdcdTk2MURcdTYyMzdcdTk0QTJcIl0sXG5bXCI4YzQwXCIsXCJcdTUwM0JcdTZERkVcdUQ4NjdcdURDNzNcdTlGQTZcdTNEQzlcdTg4OEZcdUQ4NTBcdURENEVcdTcwNzdcdTVDRjVcdTRCMjBcdUQ4NTRcdUREQ0RcdTM1NTlcdUQ4NTdcdUREMzBcdTYxMjJcdUQ4NjJcdURFMzJcdThGQTdcdTkxRjZcdTcxOTFcdTY3MTlcdTczQkFcdUQ4NENcdURFODFcdUQ4NjhcdUREMDdcdTNDOEJcdUQ4NDZcdUREODBcdTRCMTBcdTc4RTRcdTc0MDJcdTUxQUVcdUQ4NjFcdURGMEZcdTQwMDlcdTZBNjNcdUQ4NjhcdURFQkFcdTQyMjNcdTg2MEZcdUQ4NDJcdURFNkZcdTdBMkFcdUQ4NjZcdURENDdcdUQ4NjJcdURFRUFcdTk3NTVcdTcwNERcdTUzMjRcdUQ4NDhcdURDN0VcdTkzRjRcdTc2RDlcdUQ4NjJcdURERTNcdTlGQTdcdTc3RERcdTRFQTNcdTRGRjBcdTUwQkNcdTRFMkZcdTRGMTdcdTlGQThcdTU0MzRcdTdEOEJcdTU4OTJcdTU4RDBcdUQ4NDdcdUREQjZcdTVFOTJcdTVFOTlcdTVGQzJcdUQ4NDlcdURGMTJcdTY1OEJcIl0sXG5bXCI4Y2ExXCIsXCJcdUQ4NENcdURGRjlcdTY5MTlcdTZBNDNcdUQ4NEZcdURDNjNcdTZDRkZcIl0sXG5bXCI4Y2E3XCIsXCJcdTcyMDBcdUQ4NTFcdUREMDVcdTczOENcdTNFREJcdUQ4NTJcdURFMTNcdTVCMTVcdTc0QjlcdThCODNcdUQ4NTdcdURDQTRcdUQ4NTVcdURFOTVcdTdBOTNcdTdCRUNcdTdDQzNcdTdFNkNcdTgyRjhcdTg1OTdcdTlGQTlcdTg4OTBcdTlGQUFcdThFQjlcdTlGQUJcdThGQ0ZcdTg1NUZcdTk5RTBcdTkyMjFcdTlGQUNcdUQ4NjNcdUREQjlcdUQ4NDVcdURDM0ZcdTQwNzFcdTQyQTJcdTVBMUFcIl0sXG5bXCI4Y2M5XCIsXCJcdTk4NjhcdTY3NkJcdTQyNzZcdTU3M0RcIl0sXG5bXCI4Y2NlXCIsXCJcdTg1RDZcdUQ4NTJcdUREN0JcdTgyQkZcdUQ4NUNcdUREMERcdTRDODFcdUQ4NUJcdURENzRcdTVEN0JcdUQ4NUFcdURGMTVcdUQ4NUJcdURGQkVcdTlGQURcdTlGQUVcdTVCOTZcdTlGQUZcdTY2RTdcdTdFNUJcdTZFNTdcdTc5Q0FcdTNEODhcdTQ0QzNcdUQ4NENcdURFNTZcdUQ4NDlcdURGOTZcdTQzOUFcdTQ1MzZcIl0sXG5bXCI4Y2U2XCIsXCJcdTVDRDVcdUQ4NEVcdURGMUFcdThBRjlcdTVDNzhcdTNEMTJcdUQ4NERcdURENTFcdTVENzhcdTlGQjJcdTcxNTdcdTQ1NThcdUQ4NTBcdURDRUNcdUQ4NDdcdURFMjNcdTRDNzdcdTM5NzhcdTM0NEFcdUQ4NDBcdUREQTRcdUQ4NUJcdURDNDFcdThBQ0NcdTRGQjRcdUQ4NDBcdURFMzlcdTU5QkZcdTgxNkNcdTk4NTZcdUQ4NjZcdURDRkFcdTVGM0JcIl0sXG5bXCI4ZDQwXCIsXCJcdUQ4NDJcdURGOUZcIl0sXG5bXCI4ZDQyXCIsXCJcdUQ4NDhcdUREQzFcdUQ4NjJcdURENkRcdTQxMDJcdTQ2QkJcdUQ4NjRcdURDNzlcdTNGMDdcdTlGQjNcdUQ4NjhcdUREQjVcdTQwRjhcdTM3RDZcdTQ2RjdcdUQ4NUJcdURDNDZcdTQxN0NcdUQ4NjFcdURFQjJcdUQ4NUNcdURGRkZcdTQ1NkRcdTM4RDRcdUQ4NTVcdURDOUFcdTQ1NjFcdTQ1MUJcdTREODlcdTRDN0JcdTRENzZcdTQ1RUFcdTNGQzhcdUQ4NTJcdURGMEZcdTM2NjFcdTQ0REVcdTQ0QkRcdTQxRURcdTVEM0VcdTVENDhcdTVENTZcdTNERkNcdTM4MEZcdTVEQTRcdTVEQjlcdTM4MjBcdTM4MzhcdTVFNDJcdTVFQkRcdTVGMjVcdTVGODNcdTM5MDhcdTM5MTRcdTM5M0ZcdTM5NERcdTYwRDdcdTYxM0RcdTVDRTVcdTM5ODlcdTYxQjdcdTYxQjlcdTYxQ0ZcdTM5QjhcdTYyMkNcdTYyOTBcdTYyRTVcdTYzMThcdTM5RjhcdTU2QjFcIl0sXG5bXCI4ZGExXCIsXCJcdTNBMDNcdTYzRTJcdTYzRkJcdTY0MDdcdTY0NUFcdTNBNEJcdTY0QzBcdTVEMTVcdTU2MjFcdTlGOUZcdTNBOTdcdTY1ODZcdTNBQkRcdTY1RkZcdTY2NTNcdTNBRjJcdTY2OTJcdTNCMjJcdTY3MTZcdTNCNDJcdTY3QTRcdTY4MDBcdTNCNThcdTY4NEFcdTY4ODRcdTNCNzJcdTNCNzFcdTNCN0JcdTY5MDlcdTY5NDNcdTcyNUNcdTY5NjRcdTY5OUZcdTY5ODVcdTNCQkNcdTY5RDZcdTNCRERcdTZBNjVcdTZBNzRcdTZBNzFcdTZBODJcdTNCRUNcdTZBOTlcdTNCRjJcdTZBQUJcdTZBQjVcdTZBRDRcdTZBRjZcdTZCODFcdTZCQzFcdTZCRUFcdTZDNzVcdTZDQUFcdTNDQ0JcdTZEMDJcdTZEMDZcdTZEMjZcdTZEODFcdTNDRUZcdTZEQTRcdTZEQjFcdTZFMTVcdTZFMThcdTZFMjlcdTZFODZcdUQ4NjJcdUREQzBcdTZFQkJcdTZFRTJcdTZFREFcdTlGN0ZcdTZFRThcdTZFRTlcdTZGMjRcdTZGMzRcdTNENDZcdUQ4NEZcdURGNDFcdTZGODFcdTZGQkVcdTNENkFcdTNENzVcdTcxQjdcdTVDOTlcdTNEOEFcdTcwMkNcdTNEOTFcdTcwNTBcdTcwNTRcdTcwNkZcdTcwN0ZcdTcwODlcdUQ4NDBcdURGMjVcdTQzQzFcdTM1RjFcdUQ4NDNcdURFRDhcIl0sXG5bXCI4ZTQwXCIsXCJcdUQ4NEZcdURFRDdcdTU3QkVcdUQ4NUJcdURFRDNcdTcxM0VcdUQ4NTVcdURGRTBcdTM2NEVcdTY5QTJcdUQ4NjJcdURGRTlcdTVCNzRcdTdBNDlcdUQ4NTZcdURDRTFcdUQ4NjVcdURDRDlcdTdBNjVcdTdBN0RcdUQ4NTZcdUREQUNcdTdBQkJcdTdBQjBcdTdBQzJcdTdBQzNcdTcxRDFcdUQ4NTlcdURDOERcdTQxQ0FcdTdBREFcdTdBRERcdTdBRUFcdTQxRUZcdTU0QjJcdUQ4NTdcdURDMDFcdTdCMEJcdTdCNTVcdTdCMjlcdUQ4NTRcdURGMEVcdUQ4NTdcdURDRkVcdTdCQTJcdTdCNkZcdTgzOUNcdUQ4NTZcdURGQjRcdUQ4NUJcdURDN0ZcdTdCRDBcdTg0MjFcdTdCOTJcdTdCQjhcdUQ4NTdcdUREMjBcdTNEQURcdUQ4NTdcdURDNjVcdTg0OTJcdTdCRkFcdTdDMDZcdTdDMzVcdUQ4NTdcdURDQzFcdTdDNDRcdTdDODNcdUQ4NTJcdURDODJcdTdDQTZcdTY2N0RcdUQ4NTFcdURENzhcdTdDQzlcdTdDQzdcdTdDRTZcdTdDNzRcdTdDRjNcdTdDRjVcdTdDQ0VcIl0sXG5bXCI4ZWExXCIsXCJcdTdFNjdcdTQ1MURcdUQ4NUJcdURFNDRcdTdENURcdUQ4NUJcdURFRDZcdTc0OERcdTdEODlcdTdEQUJcdTcxMzVcdTdEQjNcdTdERDJcdUQ4NTBcdURDNTdcdUQ4NThcdURDMjlcdTdERTRcdTNEMTNcdTdERjVcdUQ4NDVcdURGRjlcdTdERTVcdUQ4NjBcdURGNkRcdTdFMURcdUQ4NThcdUREMjFcdUQ4NThcdURENUFcdTdFNkVcdTdFOTJcdTQzMkJcdTk0NkNcdTdFMjdcdTdGNDBcdTdGNDFcdTdGNDdcdTc5MzZcdUQ4NThcdURFRDBcdTk5RTFcdTdGOTdcdUQ4NThcdURGNTFcdTdGQTNcdUQ4NDVcdURFNjFcdUQ4NDBcdURDNjhcdTQ1NUNcdUQ4NERcdURGNjZcdTQ1MDNcdUQ4NjBcdURGM0FcdTdGRkFcdUQ4NTlcdURDODlcdTgwMDVcdTgwMDhcdTgwMURcdTgwMjhcdTgwMkZcdUQ4NjhcdURDODdcdUQ4NUJcdURDQzNcdTgwM0JcdTgwM0NcdTgwNjFcdUQ4NDlcdURGMTRcdTQ5ODlcdUQ4NTlcdURFMjZcdUQ4NEZcdURERTNcdUQ4NTlcdURFRThcdTY3MjVcdTgwQTdcdUQ4NjJcdURFNDhcdTgxMDdcdTgxMUFcdTU4QjBcdUQ4NDlcdURFRjZcdTZDN0ZcdUQ4NTlcdURDOThcdUQ4NTNcdURGQjhcdTY0RTdcdUQ4NDVcdURDOEFcdTgyMThcdUQ4NDZcdURDNUVcdTZBNTNcdUQ4NTJcdURFNjVcdUQ4NTJcdURFOTVcdTQ0N0FcdTgyMjlcdUQ4NDJcdURGMERcdUQ4NUFcdURFNTJcdUQ4NEZcdUREN0VcdTRGRjlcdUQ4NDVcdURDRkRcdTg0RTJcdTgzNjJcdUQ4NUFcdURGMEFcdUQ4NTJcdUREQTdcdUQ4NERcdUREMzBcdUQ4NDVcdURGNzNcdUQ4NEZcdURERjhcdTgyQUFcdTY5MUJcdUQ4N0VcdUREOTRcdTQxREJcIl0sXG5bXCI4ZjQwXCIsXCJcdTg1NEJcdTgyRDBcdTgzMUFcdUQ4NDNcdURFMTZcdUQ4NDVcdURGQjRcdTM2QzFcdUQ4NENcdUREN0RcdUQ4NERcdURENUFcdTgyN0JcdTgyRTJcdTgzMThcdUQ4NEZcdURFOEJcdUQ4NUJcdUREQTNcdUQ4NUFcdURGMDVcdUQ4NUFcdURGOTdcdUQ4NERcdUREQ0VcdTNEQkZcdTgzMURcdTU1RUNcdTgzODVcdTQ1MEJcdUQ4NUJcdUREQTVcdTgzQUNcdTgzQzFcdTgzRDNcdTM0N0VcdUQ4NUJcdURFRDRcdTZBNTdcdTg1NUFcdTM0OTZcdUQ4NUJcdURFNDJcdUQ4NEJcdURFRUZcdTg0NThcdUQ4NTZcdURGRTRcdTg0NzFcdTNERDNcdTQ0RTRcdTZBQTdcdTg0NEFcdUQ4NEZcdURDQjVcdTc5NThcdTg0QThcdUQ4NUFcdURGOTZcdUQ4NUJcdURFNzdcdUQ4NUJcdURFNDNcdTg0REVcdTg0MEZcdTgzOTFcdTQ0QTBcdTg0OTNcdTg0RTRcdUQ4NTdcdURDOTFcdTQyNDBcdUQ4NTdcdURDQzBcdTQ1NDNcdTg1MzRcdTVBRjJcdUQ4NUJcdURFOTlcdTQ1MjdcdTg1NzNcdTQ1MTZcdTY3QkZcdTg2MTZcIl0sXG5bXCI4ZmExXCIsXCJcdUQ4NjFcdURFMjVcdUQ4NjFcdURFM0JcdTg1QzFcdUQ4NUNcdURDODhcdTg2MDJcdUQ4NDVcdUREODJcdUQ4NUNcdURDQ0RcdUQ4N0VcdUREQjJcdTQ1NkFcdTg2MjhcdTM2NDhcdUQ4NDZcdURDQTJcdTUzRjdcdUQ4NUNcdURGOUFcdTg2N0VcdTg3NzFcdUQ4NjhcdURDRjhcdTg3RUVcdUQ4NEJcdURDMjdcdTg3QjFcdTg3REFcdTg4MEZcdTU2NjFcdTg2NkNcdTY4NTZcdTQ2MEZcdTg4NDVcdTg4NDZcdUQ4NURcdURERTBcdUQ4NEZcdUREQjlcdUQ4NURcdURERTRcdTg4NUVcdTg4OUNcdTQ2NUJcdTg4QjRcdTg4QjVcdTYzQzFcdTg4QzVcdTc3NzdcdUQ4NURcdURGMEZcdTg5ODdcdTg5OEFcdTg5QTZcdTg5QTlcdTg5QTdcdTg5QkNcdUQ4NjJcdURFMjVcdTg5RTdcdUQ4NUVcdUREMjRcdUQ4NUVcdURFQkRcdThBOUNcdTc3OTNcdTkxRkVcdThBOTBcdUQ4NUVcdURFNTlcdTdBRTlcdUQ4NUVcdURGM0FcdUQ4NEZcdURGOEZcdTQ3MTNcdUQ4NUVcdURGMzhcdTcxN0NcdThCMENcdThCMUZcdUQ4NTVcdURDMzBcdUQ4NTVcdURENjVcdThCM0ZcdThCNENcdThCNERcdThBQTlcdUQ4NTJcdURFN0FcdThCOTBcdThCOUJcdThBQUZcdUQ4NDVcdURFREZcdTQ2MTVcdTg4NEZcdThDOUJcdUQ4NUZcdURENTRcdUQ4NUZcdUREOEZcdUQ4N0VcdURERDRcdTM3MjVcdUQ4NUZcdURENTNcdThDRDZcdUQ4NUZcdUREOThcdUQ4NUZcdUREQkRcdThEMTJcdThEMDNcdUQ4NDZcdUREMTBcdThDREJcdTcwNUNcdThEMTFcdUQ4NTNcdURDQzlcdTNFRDBcdThENzdcIl0sXG5bXCI5MDQwXCIsXCJcdThEQTlcdUQ4NjBcdURDMDJcdUQ4NDRcdURDMTRcdUQ4NTJcdUREOEFcdTNCN0NcdUQ4NjBcdUREQkNcdUQ4NUNcdUREMENcdTdBRTdcdThFQURcdThFQjZcdThFQzNcdTkyRDRcdThGMTlcdThGMkRcdUQ4NjBcdURGNjVcdUQ4NjFcdURDMTJcdThGQTVcdTkzMDNcdUQ4NjhcdURFOUZcdUQ4NDJcdURFNTBcdThGQjNcdTQ5MkFcdUQ4NjJcdUREREVcdUQ4NjFcdUREM0RcdUQ4NEZcdUREQkJcdTVFRjhcdUQ4NENcdURFNjJcdThGRjlcdUQ4NjhcdURDMTRcdUQ4NjFcdURFQkNcdUQ4NjFcdUREMDFcdUQ4NDhcdURGMjVcdTM5ODBcdUQ4NUJcdURFRDdcdTkwMzdcdUQ4NjFcdUREM0NcdUQ4NUVcdURFQkVcdTkwNjFcdUQ4NjFcdURENkNcdUQ4NjFcdURFMEJcdTkwQThcdUQ4NjFcdURGMTNcdTkwQzRcdUQ4NjFcdURFRTZcdTkwQUVcdTkwRkRcdTkxNjdcdTNBRjBcdTkxQTlcdTkxQzRcdTdDQUNcdUQ4NjJcdUREMzNcdUQ4NDdcdURFODlcdTkyMEVcdTZDOUZcdTkyNDFcdTkyNjJcdUQ4NTVcdUREQjlcdTkyQjlcdUQ4NjJcdURFQzZcdUQ4NEZcdURDOUJcdUQ4NjJcdURGMENcdUQ4NTVcdUREREJcIl0sXG5bXCI5MGExXCIsXCJcdUQ4NDNcdUREMzFcdTkzMkNcdTkzNkJcdUQ4NjJcdURFRTFcdUQ4NjJcdURGRUJcdTcwOEZcdTVBQzNcdUQ4NjJcdURFRTJcdUQ4NjJcdURFRTVcdTQ5NjVcdTkyNDRcdUQ4NjJcdURGRUNcdUQ4NjNcdURDMzlcdUQ4NjJcdURGRkZcdTkzNzNcdTk0NUJcdThFQkNcdTk1ODVcdTk1QTZcdTk0MjZcdTk1QTBcdTZGRjZcdTQyQjlcdUQ4NDlcdURFN0FcdUQ4NjFcdURFRDhcdUQ4NDRcdURFN0NcdUQ4NEZcdURFMkVcdTQ5REZcdTZDMUNcdTk2N0JcdTk2OTZcdTQxNkNcdTk2QTNcdUQ4NUJcdURFRDVcdTYxREFcdTk2QjZcdTc4RjVcdUQ4NjJcdURFRTBcdTk2QkRcdTUzQ0NcdTQ5QTFcdUQ4NUJcdURDQjhcdUQ4NDBcdURFNzRcdUQ4NTlcdURDMTBcdUQ4NjRcdURDQUZcdUQ4NjRcdURDRTVcdUQ4NTJcdURFRDFcdUQ4NDZcdUREMTVcdUQ4NENcdURGMEFcdTk3MzFcdTg2NDJcdTk3MzZcdTRBMEZcdTQ1M0RcdTQ1ODVcdUQ4NTJcdURFRTlcdTcwNzVcdTVCNDFcdTk3MUJcdTk3NUNcdUQ4NjRcdURERDVcdTk3NTdcdTVCNEFcdUQ4NjRcdURERUJcdTk3NUZcdTk0MjVcdTUwRDBcdUQ4NENcdURDQjdcdUQ4NENcdURDQkNcdTk3ODlcdTk3OUZcdTk3QjFcdTk3QkVcdTk3QzBcdTk3RDJcdTk3RTBcdUQ4NTVcdURDNkNcdTk3RUVcdTc0MUNcdUQ4NjVcdURDMzNcdTk3RkZcdTk3RjVcdUQ4NjVcdURDMURcdUQ4NUVcdUREN0FcdTRBRDFcdTk4MzRcdTk4MzNcdTk4NEJcdTk4NjZcdTNCMEVcdUQ4NUNcdURENzVcdTNENTFcdUQ4NDFcdURFMzBcdUQ4NTBcdURENUNcIl0sXG5bXCI5MTQwXCIsXCJcdUQ4NTVcdURGMDZcdTk4Q0FcdTk4QjdcdTk4QzhcdTk4QzdcdTRBRkZcdUQ4NUJcdUREMjdcdUQ4NDVcdURFRDNcdTU1QjBcdTk4RTFcdTk4RTZcdTk4RUNcdTkzNzhcdTk5MzlcdUQ4NTJcdURFMjlcdTRCNzJcdUQ4NjZcdURDNTdcdUQ4NjZcdUREMDVcdTk5RjVcdTlBMENcdTlBM0JcdTlBMTBcdTlBNThcdUQ4NTVcdURGMjVcdTM2QzRcdUQ4NjRcdURDQjFcdUQ4NjZcdURGRDVcdTlBRTBcdTlBRTJcdUQ4NjZcdURGMDVcdTlBRjRcdTRDMEVcdTlCMTRcdTlCMkRcdUQ4NjFcdURFMDBcdTUwMzRcdTlCMzRcdUQ4NUFcdUREQThcdTM4QzNcdUQ4NENcdURDN0RcdTlCNTBcdTlCNDBcdUQ4NjdcdUREM0VcdTVBNDVcdUQ4NDZcdURDNjNcdTlCOEVcdUQ4NTBcdURFNEJcdTlDMDJcdTlCRkZcdTlDMENcdUQ4NjdcdURFNjhcdTlERDRcdUQ4NjdcdURGQjdcdUQ4NjhcdUREOTJcdUQ4NjhcdUREQUJcdUQ4NjhcdURDRTFcdUQ4NjhcdUREMjNcdUQ4NjhcdUREREZcdTlEN0VcdTlEODNcdUQ4NjhcdUREMzRcdTlFMEVcdTY4ODhcIl0sXG5bXCI5MWExXCIsXCJcdTlEQzRcdUQ4NDhcdURENUJcdUQ4NjhcdUREOTNcdUQ4NjhcdURFMjBcdUQ4NDZcdUREM0JcdUQ4NjhcdURFMzNcdTlEMzlcdUQ4NjhcdURDQjlcdUQ4NjhcdURFQjRcdTlFOTBcdTlFOTVcdTlFOUVcdTlFQTJcdTREMzRcdTlFQUFcdTlFQUZcdUQ4NTBcdURGNjRcdTlFQzFcdTNCNjBcdTM5RTVcdTNEMURcdTRGMzJcdTM3QkVcdUQ4NjNcdURDMkJcdTlGMDJcdTlGMDhcdTRCOTZcdTk0MjRcdUQ4NUJcdUREQTJcdTlGMTdcdTlGMTZcdTlGMzlcdTU2OUZcdTU2OEFcdTlGNDVcdTk5QjhcdUQ4NjRcdURDOEJcdTk3RjJcdTg0N0ZcdTlGNjJcdTlGNjlcdTdBRENcdTlGOEVcdTcyMTZcdTRCQkVcdUQ4NTJcdURENzVcdUQ4NTJcdUREQkJcdTcxNzdcdUQ4NTJcdURERjhcdUQ4NTBcdURGNDhcdUQ4NTJcdURFNTFcdTczOUVcdUQ4NjJcdURGREFcdUQ4NDZcdURDRkFcdTc5OUZcdUQ4NjJcdUREN0VcdUQ4NjNcdURFMzZcdTkzNjlcdTkzRjNcdUQ4NjJcdURFNDRcdTkyRUNcdTkzODFcdTkzQ0JcdUQ4NjJcdURENkNcdUQ4NTFcdURDQjlcdTcyMTdcdTNFRUJcdTc3NzJcdTdBNDNcdTcwRDBcdUQ4NTFcdURDNzNcdUQ4NTBcdURGRjhcdTcxN0VcdUQ4NDVcdURGRUZcdTcwQTNcdUQ4NDZcdURDQkVcdUQ4NERcdUREOTlcdTNFQzdcdUQ4NDZcdURDODVcdUQ4NTVcdURDMkZcdUQ4NDVcdURGRjhcdTM3MjJcdUQ4NDVcdURFRkJcdUQ4NDZcdURDMzlcdTM2RTFcdUQ4NDVcdURGNzRcdUQ4NDZcdURDRDFcdUQ4NTdcdURGNEJcdTM3MjNcdUQ4NDVcdURFQzBcdTU3NUJcdUQ4NTJcdURFMjVcdUQ4NDRcdURGRkVcdUQ4NDRcdURFQThcIl0sXG5bXCI5MjQwXCIsXCJcdUQ4NDRcdURGQzZcdUQ4NDVcdURDQjZcdTg1MDNcdUQ4NERcdURFQTZcdTg1MDNcdTg0NTVcdUQ4NTJcdUREOTRcdUQ4NUNcdURENjVcdUQ4NEZcdURFMzFcdUQ4NTVcdURENUNcdUQ4NEZcdURFRkJcdUQ4NUNcdURDNTJcdTQ0RjRcdUQ4NERcdURFRUVcdUQ4NjZcdUREOURcdUQ4NUJcdURGMjZcdTY3RjlcdTM3MzNcdTNDMTVcdTNERTdcdTU4NkNcdUQ4NDZcdUREMjJcdTY4MTBcdTQwNTdcdUQ4NERcdURGM0ZcdUQ4NTBcdURDRTFcdUQ4NTBcdURDOEJcdUQ4NTBcdUREMEZcdUQ4NUJcdURDMjFcdTU0Q0JcdTU2OUVcdUQ4NTlcdURFQjFcdTU2OTJcdUQ4NDNcdURGREZcdUQ4NDJcdURGQThcdUQ4NDNcdURFMERcdTkzQzZcdUQ4NjJcdURGMTNcdTkzOUNcdTRFRjhcdTUxMkJcdTM4MTlcdUQ4NTFcdURDMzZcdTRFQkNcdUQ4NDFcdURDNjVcdUQ4NDBcdURGN0ZcdTRGNEJcdTRGOEFcdUQ4NTVcdURFNTFcdTVBNjhcdUQ4NDBcdUREQUJcdUQ4NDBcdURGQ0JcdTM5OTlcdUQ4NDBcdURGMEFcdUQ4NDFcdURDMTRcdTM0MzVcdTRGMjlcdUQ4NDBcdURFQzBcdUQ4NjNcdURFQjNcdUQ4NDBcdURFNzVcdThBREFcdUQ4NDBcdURFMENcdTRFOThcIl0sXG5bXCI5MmExXCIsXCJcdTUwQ0RcdTUxMERcdTRGQTJcdTRGMDNcdUQ4NTJcdURFMEVcdUQ4NEZcdURFOEFcdTRGNDJcdTUwMkVcdTUwNkNcdTUwODFcdTRGQ0NcdTRGRTVcdTUwNThcdTUwRkNcdTUxNTlcdTUxNUJcdTUxNURcdTUxNUVcdTZFNzZcdUQ4NERcdUREOTVcdUQ4NEZcdURFMzlcdUQ4NEZcdURFQkZcdTZENzJcdUQ4NDZcdURDODRcdUQ4NEZcdURFODlcdTUxQThcdTUxQzNcdUQ4NDFcdURERTBcdTQ0RERcdUQ4NDFcdURDQTNcdUQ4NDFcdURDOTJcdUQ4NDFcdURDOTFcdThEN0FcdUQ4NjJcdURFOUNcdUQ4NDFcdURGMEVcdTUyNTlcdTUyQTRcdUQ4NDJcdURDNzNcdTUyRTFcdTkzNkVcdTQ2N0FcdTcxOENcdUQ4NTBcdURGOENcdUQ4NDNcdURDMjBcdUQ4NTJcdUREQUNcdUQ4NDRcdURDRTRcdTY5RDFcdUQ4NDNcdURFMURcdTc0NzlcdTNFREVcdTc0OTlcdTc0MTRcdTc0NTZcdTczOThcdTRCOEVcdUQ4NTJcdURFQkNcdUQ4NTBcdURDOERcdTUzRDBcdTM1ODRcdTcyMEZcdUQ4NTBcdURDQzlcdTU1QjRcdUQ4NDBcdURGNDVcdTU0Q0RcdUQ4NDJcdURGQzZcdTU3MURcdTkyNURcdTk2RjRcdTkzNjZcdTU3RERcdTU3OERcdTU3N0ZcdTM2M0VcdTU4Q0JcdTVBOTlcdUQ4NjJcdURFNDZcdUQ4NDVcdURFRkFcdUQ4NDVcdURGNkZcdUQ4NDVcdURGMTBcdTVBMkNcdTU5QjhcdTkyOEZcdTVBN0VcdTVBQ0ZcdTVBMTJcdUQ4NTZcdURENDZcdUQ4NDZcdURERjNcdUQ4NDZcdURDNjFcdUQ4NTBcdURFOTVcdTM2RjVcdTZEMDVcdTc0NDNcdTVBMjFcdUQ4NTdcdURFODNcIl0sXG5bXCI5MzQwXCIsXCJcdTVBODFcdUQ4NjJcdURGRDdcdUQ4NDFcdURDMTNcdTkzRTBcdTc0OENcdUQ4NDRcdURGMDNcdTcxMDVcdTQ5NzJcdTk0MDhcdUQ4NjJcdURERkJcdTkzQkRcdTM3QTBcdTVDMUVcdTVDOUVcdTVFNUVcdTVFNDhcdUQ4NDZcdUREOTZcdUQ4NDZcdUREN0NcdUQ4NEVcdURFRUVcdTVFQ0RcdTVCNEZcdUQ4NDZcdUREMDNcdUQ4NDZcdUREMDRcdTM3MDFcdUQ4NDZcdURDQTBcdTM2RERcdUQ4NDVcdURFRkVcdTM2RDNcdTgxMkFcdUQ4NjJcdURFNDdcdUQ4NDdcdUREQkFcdUQ4NERcdURDNzJcdUQ4NjJcdUREQThcdTVGMENcdTVGMEVcdUQ4NDZcdUREMjdcdUQ4NDVcdURGQUJcdTVBNkJcdUQ4NDVcdURGM0JcdTVCNDRcdTg2MTRcdUQ4NURcdURERkRcdTg4NjBcdTYwN0VcdUQ4NEFcdURDNjBcdUQ4NDlcdURFMkJcdTVGREJcdTNFQjhcdUQ4NDlcdUREQUZcdUQ4NDlcdUREQkVcdUQ4NjRcdURDODhcdUQ4NUJcdURGNzNcdTYxQzBcdUQ4NDBcdURDM0VcdUQ4NDBcdURDNDZcdUQ4NDlcdURFMUJcdTYxOTlcdTYxOThcdTYwNzVcdUQ4NEJcdURDOUJcdUQ4NEJcdUREMDdcdUQ4NTFcdURFRDRcdUQ4NjRcdURENERcIl0sXG5bXCI5M2ExXCIsXCJcdTY0NzFcdUQ4NTFcdURFNjVcdUQ4NEFcdURGNkFcdTNBMjlcdUQ4NEFcdURGMjJcdUQ4NERcdURDNTBcdUQ4NjZcdURDRUFcdUQ4NEJcdURFNzhcdTYzMzdcdUQ4NjlcdURDNUJcdTY0QjZcdTYzMzFcdTYzRDFcdUQ4NTJcdURERTNcdUQ4NEJcdURENjdcdTYyQTRcdUQ4NEJcdURDQTFcdTY0M0JcdTY1NkJcdTY5NzJcdTNCRjRcdUQ4NENcdURDOEVcdUQ4NENcdURFQURcdUQ4NTJcdUREODlcdUQ4NENcdURFQUJcdTU1MERcdUQ4NENcdURFRTBcdUQ4NDZcdURDRDlcdUQ4NjVcdURDM0ZcdTY2Q0VcdUQ4NENcdURFODlcdUQ4NENcdUREQjNcdTNBRTBcdTQxOTBcdUQ4NTVcdUREODRcdUQ4NjJcdURGMjJcdUQ4NTVcdUREOEZcdUQ4NDVcdURFRkNcdUQ4NTVcdURENUJcdUQ4NTVcdURDMjVcdTc4RUVcdUQ4NENcdUREMDNcdUQ4NDZcdURDMkFcdUQ4NENcdURFMzRcdTM0NjRcdUQ4NENcdURFMEZcdUQ4NENcdUREODJcdUQ4NTBcdURFQzlcdTY2OEVcdUQ4NUJcdUREMjRcdTY2NkJcdTRCOTNcdTY2MzBcdUQ4NUVcdURDNzBcdUQ4NDdcdURERUJcdTY2NjNcdUQ4NENcdURFRDJcdUQ4NENcdURFRTFcdTY2MUVcdUQ4NTZcdURDNzJcdTM4RDFcdUQ4NEVcdURDM0FcdUQ4NERcdURGQkNcdTNCOTlcdUQ4NERcdURGQTJcdUQ4NENcdURGRkVcdTc0RDBcdTNCOTZcdTY3OEZcdUQ4NTFcdURFMkFcdTY4QjZcdTY4MUVcdTNCQzRcdTZBQkVcdTM4NjNcdUQ4NERcdURGRDVcdUQ4NTFcdURDODdcdTZBMzNcdTZBNTJcdTZBQzlcdTZCMDVcdUQ4NDZcdUREMTJcdTY1MTFcdTY4OThcdTZBNENcdTNCRDdcdTZBN0FcdTZCNTdcdUQ4NEZcdURGQzBcdUQ4NEZcdURDOUFcdTkzQTBcdTkyRjJcdUQ4NjJcdURGRUFcdUQ4NjJcdURFQ0JcIl0sXG5bXCI5NDQwXCIsXCJcdTkyODlcdUQ4NjBcdURDMUVcdUQ4NjJcdURERENcdTk0NjdcdTZEQTVcdTZGMEJcdUQ4NTJcdURERUNcdTZENjdcdUQ4NEZcdURGN0ZcdTNEOEZcdTZFMDRcdUQ4NTBcdURDM0NcdTVBM0RcdTZFMEFcdTU4NDdcdTZEMjRcdTc4NDJcdTcxM0JcdUQ4NTBcdURGMUFcdUQ4NTBcdURFNzZcdTcwRjFcdTcyNTBcdTcyODdcdTcyOTRcdUQ4NTFcdURGOEZcdUQ4NTFcdURGMjVcdTUxNzlcdUQ4NTJcdURFQTRcdUQ4NDFcdURERUJcdTc0N0FcdUQ4NEZcdURFRjhcdUQ4NERcdURFNUZcdUQ4NTJcdURFNEFcdUQ4NTJcdUREMTdcdUQ4NTdcdURGRTFcdTNGMDZcdTNFQjFcdUQ4NTJcdURFREZcdUQ4NjNcdURDMjNcdUQ4NEZcdURGMzVcdTYwQTdcdTNFRjNcdTc0Q0NcdTc0M0NcdTkzODdcdTc0MzdcdTQ0OUZcdUQ4NUJcdURERUFcdTQ1NTFcdTc1ODNcdTNGNjNcdUQ4NTNcdURDRDlcdUQ4NTNcdUREMDZcdTNGNThcdTc1NTVcdTc2NzNcdUQ4NjlcdUREQzZcdTNCMTlcdTc0NjhcdUQ4NjJcdURFQ0NcdUQ4NTJcdUREQUJcdUQ4NTJcdUREOEVcdTNBRkJcIl0sXG5bXCI5NGExXCIsXCJcdTNEQ0RcdUQ4NTJcdURFNEVcdTNFRkZcdUQ4NTJcdUREQzVcdUQ4NTJcdURDRjNcdTkxRkFcdTU3MzJcdTkzNDJcdUQ4NjJcdURFRTNcdUQ4NDZcdURDNjRcdTUwREZcdUQ4NTRcdURFMjFcdUQ4NTRcdURERTdcdTc3NzhcdUQ4NENcdURFMzJcdTc3MEVcdTc3MEZcdTc3N0JcdUQ4NTFcdURFOTdcdUQ4NERcdURGODFcdTNBNUVcdUQ4NTJcdURDRjBcdTc0MzhcdTc0OUJcdTNFQkZcdUQ4NTJcdURFQkFcdUQ4NTJcdURFQzdcdTQwQzhcdUQ4NTJcdURFOTZcdUQ4NThcdUREQUVcdTkzMDdcdUQ4NTVcdUREODFcdTc4MUVcdTc4OERcdTc4ODhcdTc4RDJcdTczRDBcdTc5NTlcdUQ4NURcdURGNDFcdUQ4NTVcdURFRTNcdTQxMEVcdTc5OUJcdTg0OTZcdTc5QTVcdTZBMkRcdUQ4NEZcdURFRkFcdTdBM0FcdTc5RjRcdTQxNkVcdUQ4NDVcdURFRTZcdTQxMzJcdTkyMzVcdTc5RjFcdUQ4NDNcdURENENcdUQ4NTJcdUREOENcdUQ4NDBcdURFOTlcdUQ4NEZcdUREQkFcdUQ4NDVcdURGNkVcdTM1OTdcdTU1NkJcdTM1NzBcdTM2QUFcdUQ4NDBcdURERDRcdUQ4NDNcdURDMERcdTdBRTJcdTVBNTlcdUQ4NDlcdURFRjVcdUQ4NTZcdURFQUZcdUQ4NTZcdURFOUNcdTVBMERcdUQ4NDBcdURFNUJcdTc4RjBcdTVBMkFcdUQ4NTZcdURGQzZcdTdBRkVcdTQxRjlcdTdDNURcdTdDNkRcdTQyMTFcdUQ4NTZcdURGQjNcdUQ4NTdcdURFQkNcdUQ4NTdcdURFQTZcdTdDQ0RcdUQ4NTJcdURERjlcdUQ4NDVcdURGQjBcdTdDOEVcdTdDN0NcdTdDQUVcdTZBQjJcdTdERENcdTdFMDdcdTdERDNcdTdGNEVcdUQ4NThcdURFNjFcIl0sXG5bXCI5NTQwXCIsXCJcdUQ4NThcdURENUNcdUQ4NUVcdURGNDhcdTdEOTdcdUQ4NTdcdURFODJcdTQyNkFcdUQ4NUFcdURGNzVcdUQ4NDJcdUREMTZcdTY3RDZcdUQ4NDBcdURDNEVcdUQ4NERcdUREQ0ZcdTU3QzRcdUQ4NTlcdURDMTJcdUQ4NThcdURGRjhcdUQ4NTJcdURENjJcdTdGRERcdTdCMjdcdUQ4NDJcdURDMkNcdUQ4NTZcdURFRTlcdUQ4NTdcdURENDNcdTdCMENcdUQ4NTdcdURFMEVcdTk5RTZcdTg2NDVcdTlBNjNcdTZBMUNcdUQ4NERcdURDM0ZcdTM5RTJcdUQ4NTJcdURERjdcdUQ4NTlcdUREQURcdTlBMUZcdUQ4NTlcdUREQTBcdTg0ODBcdUQ4NUNcdUREMjdcdUQ4NUJcdURDRDFcdTQ0RUFcdTgxMzdcdTQ0MDJcdTgwQzZcdTgxMDlcdTgxNDJcdUQ4NTlcdURGQjRcdTk4QzNcdUQ4NUFcdURFNDJcdTgyNjJcdTgyNjVcdUQ4NUFcdURFNTFcdTg0NTNcdUQ4NUJcdUREQTdcdTg2MTBcdUQ4NUNcdURFMUJcdTVBODZcdTQxN0ZcdUQ4NDZcdURDNDBcdTVCMkJcdUQ4NDZcdURDQTFcdTVBRTRcdUQ4NDZcdURDRDhcdTg2QTBcdUQ4N0VcdUREQkNcdUQ4NEZcdUREOEZcdTg4MkRcdUQ4NURcdURDMjJcdTVBMDJcIl0sXG5bXCI5NWExXCIsXCJcdTg4NkVcdTRGNDVcdTg4ODdcdTg4QkZcdTg4RTZcdTg5NjVcdTg5NERcdUQ4NTVcdURFODNcdTg5NTRcdUQ4NURcdURGODVcdUQ4NURcdURGODRcdUQ4NjJcdURGRjVcdUQ4NjJcdURGRDlcdUQ4NjJcdURGOUNcdUQ4NjJcdURERjlcdTNFQURcdTg0QTNcdTQ2RjVcdTQ2Q0ZcdTM3RjJcdThBM0RcdThBMUNcdUQ4NjVcdURDNDhcdTVGNERcdTkyMkJcdUQ4NTBcdURFODRcdTY1RDRcdTcxMjlcdTcwQzRcdUQ4NDZcdURDNDVcdTlENkRcdThDOUZcdThDRTlcdUQ4NUZcdURERENcdTU5OUFcdTc3QzNcdTU5RjBcdTQzNkVcdTM2RDRcdThFMkFcdThFQTdcdUQ4NTNcdURDMDlcdThGMzBcdThGNEFcdTQyRjRcdTZDNThcdTZGQkJcdUQ4NDhcdURGMjFcdTQ4OUJcdTZGNzlcdTZFOEJcdUQ4NDVcdURGREFcdTlCRTlcdTM2QjVcdUQ4NTJcdUREMkZcdTkwQkJcdTkwOTdcdTU1NzFcdTQ5MDZcdTkxQkJcdTk0MDRcdUQ4NjJcdURFNEJcdTQwNjJcdUQ4NjJcdURFRkNcdTk0MjdcdUQ4NjNcdURDMURcdUQ4NjNcdURDM0JcdTg0RTVcdThBMkJcdTk1OTlcdTk1QTdcdTk1OTdcdTk1OTZcdUQ4NjNcdUREMzRcdTc0NDVcdTNFQzJcdUQ4NTJcdURDRkZcdUQ4NTJcdURFNDJcdUQ4NTBcdURGRUFcdTNFRTdcdUQ4NENcdURFMjVcdTk2OEZcdUQ4NjNcdURFRTdcdUQ4NjNcdURFNjZcdUQ4NjNcdURFNjVcdTNFQ0NcdUQ4NTJcdURERURcdUQ4NTJcdURFNzhcdUQ4NEZcdURGRUVcdTc0MTJcdTc0NkJcdTNFRkNcdTk3NDFcdUQ4NjRcdURDQjBcIl0sXG5bXCI5NjQwXCIsXCJcdTY4NDdcdTRBMURcdUQ4NjRcdURDOTNcdUQ4NTVcdURGREZcdTk3NURcdTkzNjhcdUQ4NjJcdUREODlcdUQ4NjNcdURDMjZcdUQ4NjJcdURGMkZcdUQ4NThcdURGQkVcdTkyQkFcdTVCMTFcdThCNjlcdTQ5M0NcdTczRjlcdUQ4NTBcdURFMUJcdTk3OUJcdTk3NzFcdTk5MzhcdUQ4NDNcdURGMjZcdTVEQzFcdUQ4NjJcdURGQzVcdUQ4NTJcdURFQjJcdTk4MUZcdUQ4NjVcdURDREFcdTkyRjZcdUQ4NjVcdURERDdcdTkxRTVcdTQ0QzBcdUQ4NjJcdURGNTBcdUQ4NTJcdURFNjdcdUQ4NjJcdURGNjRcdTk4RENcdUQ4NjJcdURFNDVcdTNGMDBcdTkyMkFcdTQ5MjVcdTg0MTRcdTk5M0JcdTk5NERcdUQ4NUVcdURGMDZcdTNERkRcdTk5OUJcdTRCNkZcdTk5QUFcdTlBNUNcdUQ4NjJcdURGNjVcdUQ4NTZcdURDQzhcdTZBOEZcdTlBMjFcdTVBRkVcdTlBMkZcdUQ4NjZcdURDRjFcdTRCOTBcdUQ4NjZcdURENDhcdTk5QkNcdTRCQkRcdTRCOTdcdTkzN0RcdTU4NzJcdUQ4NDRcdURGMDJcdTU4MjJcdUQ4NTJcdUREQjhcIl0sXG5bXCI5NmExXCIsXCJcdUQ4NDVcdURDRThcdTc4NDRcdUQ4NDlcdURGMUZcdUQ4NEZcdUREQjhcdTY4QzVcdTNEN0RcdTk0NThcdTM5MjdcdTYxNTBcdUQ4NDlcdURGODFcdUQ4NEFcdURENkJcdTYxMDdcdTlDNEZcdTlDNTNcdTlDN0JcdTlDMzVcdTlDMTBcdTlCN0ZcdTlCQ0ZcdUQ4NjdcdURFMkRcdTlCOUZcdUQ4NjhcdURERjVcdUQ4NjhcdURDRkVcdTlEMjFcdTRDQUVcdUQ4NTBcdUREMDRcdTlFMThcdTRDQjBcdTlEMENcdUQ4NjhcdUREQjRcdUQ4NjhcdURDRURcdUQ4NjhcdURDRjNcdUQ4NjZcdUREMkZcdTlEQTVcdTg0QkRcdUQ4NUJcdURFMTJcdUQ4NUJcdURGREZcdUQ4NUFcdURGODJcdTg1RkNcdTQ1MzNcdUQ4NUJcdUREQTRcdUQ4NUJcdURFODRcdUQ4NUJcdURERjBcdTg0MjBcdTg1RUVcdUQ4NUJcdURFMDBcdUQ4NERcdURGRDdcdUQ4NThcdURDNjRcdTc5RTJcdUQ4NERcdUREOUNcdUQ4NERcdURFNDBcdTQ5MkRcdUQ4NTJcdUREREVcdTNENjJcdTkzREJcdTkyQkVcdTkzNDhcdUQ4NDBcdURFQkZcdTc4QjlcdTkyNzdcdTk0NERcdTRGRTRcdTM0NDBcdTkwNjRcdUQ4NTVcdURENURcdTc4M0RcdTc4NTRcdTc4QjZcdTc4NEJcdUQ4NDVcdURGNTdcdUQ4NENcdUREQzlcdUQ4NTJcdURENDFcdTM2OUFcdTRGNzJcdTZGREFcdTZGRDlcdTcwMUVcdTcwMUVcdTU0MTRcdUQ4NTBcdUREQjVcdTU3QkJcdTU4RjNcdTU3OEFcdTlEMTZcdTU3RDdcdTcxMzRcdTM0QUZcdUQ4NTBcdUREQUNcdTcxRUJcdUQ4NUJcdURDNDBcdUQ4NTNcdURGOTdcdTVCMjhcdUQ4NDVcdURGQjVcdUQ4NjJcdURFNDlcIl0sXG5bXCI5NzQwXCIsXCJcdTYxMENcdTVBQ0VcdTVBMEJcdTQyQkNcdUQ4NTFcdURDODhcdTM3MkNcdTRCN0JcdUQ4NjJcdURERkNcdTkzQkJcdTkzQjhcdUQ4NDZcdURDRDZcdUQ4NDNcdURGMURcdTg0NzJcdUQ4NUJcdURDQzBcdUQ4NDVcdURDMTNcdUQ4NTBcdURFRkFcdUQ4NEJcdURDMjZcdUQ4NTBcdURGQzFcdTU5OTRcdUQ4NEZcdUREQjdcdUQ4NTlcdURGNDFcdTdEQThcdUQ4NThcdURENUJcdUQ4NThcdURDQTRcdUQ4NTJcdUREQjlcdUQ4NTJcdUREOEJcdUQ4NjJcdURERkFcdTkyRTVcdTczRTJcdTNFRTlcdTc0QjRcdUQ4NjJcdURGNjNcdUQ4NDZcdURDOUZcdTNFRTFcdUQ4NTJcdURFQjNcdTZBRDhcdTczRjNcdTczRkJcdTNFRDZcdUQ4NTJcdURFM0VcdUQ4NTJcdURFOTRcdUQ4NDVcdURGRDlcdUQ4NTJcdURFNjZcdUQ4NDBcdURGQTdcdUQ4NDVcdURDMjRcdUQ4NTJcdURERTVcdTc0NDhcdUQ4NTJcdUREMTZcdTcwQTVcdUQ4NTJcdURENzZcdTkyODRcdTczRTZcdTkzNUZcdUQ4NDFcdURDRkVcdTkzMzFcdUQ4NjJcdURFQ0VcdUQ4NjJcdURFMTZcdTkzODZcdUQ4NjJcdURGRTdcdUQ4NTVcdURERDVcdTQ5MzVcdUQ4NjJcdURFODJcdTcxNkJcIl0sXG5bXCI5N2ExXCIsXCJcdUQ4NTJcdURENDNcdUQ4NDNcdURDRkZcdTU2QTRcdUQ4NDFcdURFMUFcdUQ4NDJcdURGRUJcdUQ4NDNcdURDQjhcdTU1MDJcdTc5QzRcdUQ4NDVcdURGRkFcdTdERkVcdUQ4NDVcdURFQzJcdUQ4NTJcdURFNTBcdUQ4NDZcdURDNTJcdTQ1MkVcdTk0MDFcdTM3MEFcdUQ4NjJcdURFQzBcdUQ4NTJcdUREQURcdTU5QjBcdUQ4NDZcdURDQkZcdUQ4NDZcdURDODNcdUQ4NURcdURDODRcdTVBQTFcdTM2RTJcdUQ4NEZcdURENUJcdTM2QjBcdTkyNUZcdTVBNzlcdUQ4NjJcdURFODFcdUQ4NDZcdURDNjJcdTkzNzRcdTNDQ0RcdUQ4NDJcdURFQjRcdTRBOTZcdTM5OEFcdTUwRjRcdTNENjlcdTNENENcdUQ4NDRcdURGOUNcdTcxNzVcdTQyRkJcdUQ4NjBcdURFMThcdTZFMEZcdUQ4NjRcdURDRTRcdTQ0RUJcdTZENTdcdUQ4NUZcdURFNEZcdTcwNjdcdTZDQUZcdTNDRDZcdUQ4NEZcdURGRURcdUQ4NEZcdURFMkRcdTZFMDJcdTZGMENcdTNENkZcdUQ4NDBcdURGRjVcdTc1NTFcdTM2QkNcdTM0QzhcdTQ2ODBcdTNFREFcdTQ4NzFcdTU5QzRcdTkyNkVcdTQ5M0VcdThGNDFcdUQ4NjNcdURDMUNcdUQ4NUFcdURGQzBcdTU4MTJcdTU3QzhcdTM2RDZcdUQ4NDVcdURDNTJcdTcwRkVcdUQ4NTBcdURGNjJcdUQ4NTJcdURFNzFcdUQ4NEJcdURGRTNcdUQ4NDRcdURFQjBcdUQ4NDhcdURGQkRcdTY4QjlcdTY5NjdcdUQ4NDRcdURGOThcdUQ4NERcdURDRTVcdUQ4NUVcdURGRjRcdUQ4NERcdURFREZcdUQ4NjJcdURFODNcdUQ4NERcdURGRDZcdUQ4NENcdURGRkFcdUQ4NTNcdURDOUZcdTZBMUFcdUQ4NERcdURFQURcdUQ4NUJcdURDQjdcdTg0M0VcdTQ0REZcdTQ0Q0VcIl0sXG5bXCI5ODQwXCIsXCJcdUQ4NUJcdUREMjZcdUQ4NUJcdURENTFcdUQ4NUJcdURDODJcdUQ4NUJcdURGREVcdTZGMTdcdUQ4NUNcdUREMDlcdTgzM0RcdUQ4NDVcdURGM0FcdTgzRURcdUQ4NUJcdURDODBcdUQ4NUNcdURDNTNcdUQ4NDVcdURGREJcdTU5ODlcdTVBODJcdUQ4NDVcdURGQjNcdTVBNjFcdTVBNzFcdUQ4NDZcdUREMDVcdUQ4NTBcdURERkNcdTM3MkRcdTU5RUZcdUQ4NDVcdURGM0NcdTM2QzdcdTcxOEVcdTkzOTBcdTY2OUFcdUQ4NTBcdURFQTVcdTVBNkVcdTVBMkJcdUQ4NTBcdURFOTNcdTZBMkJcdUQ4NEZcdURFRjlcdUQ4NURcdURGMzZcdUQ4NTFcdURDNUJcdUQ4NTBcdURFQ0FcdTcxMURcdUQ4NTBcdURFNTlcdUQ4NjJcdURERTFcdTRGQjBcdUQ4NUJcdUREMjhcdTVDQzJcdUQ4NTFcdURDQ0VcdUQ4NUZcdURFNERcdUQ4NTBcdURGQkRcdTZBMENcdUQ4NTBcdURFNTZcdUQ4NDRcdURGMDRcdTcwQTZcdTcxMzNcdUQ4NTBcdURGRTlcdTNEQTVcdTZDREZcdUQ4N0VcdURDMjVcdUQ4NTJcdURFNEZcdTdFNjVcdTU5RUJcdTVEMkZcdTNERjNcdTVGNUNcdUQ4NTJcdURFNURcdUQ4NDVcdURGREZcdTdEQTRcdTg0MjZcIl0sXG5bXCI5OGExXCIsXCJcdTU0ODVcdUQ4NEVcdURFRkFcdUQ4NENcdURGMDBcdUQ4NDBcdURFMTRcdTU3N0VcdUQ4NDJcdURDRDVcdUQ4NDFcdURFMTlcdTNGRTVcdUQ4NDdcdURGOUVcdUQ4NjhcdURFQjZcdTcwMDNcdUQ4NjRcdURENUJcdTVENzBcdTczOEZcdTdDRDNcdUQ4NjJcdURFNTlcdUQ4NjVcdURDMjBcdTRGQzhcdTdGRTdcdTcyQ0RcdTczMTBcdUQ4NUVcdURFRjRcdTczMzhcdTczMzlcdUQ4NTVcdURFRjZcdTczNDFcdTczNDhcdTNFQTlcdUQ4NUVcdURGMThcdTkwNkNcdTcxRjVcdUQ4NTJcdURDRjJcdTczRTFcdTgxRjZcdTNFQ0FcdTc3MENcdTNFRDFcdTZDQTJcdTU2RkRcdTc0MTlcdTc0MUVcdTc0MUZcdTNFRTJcdTNFRjBcdTNFRjRcdTNFRkFcdTc0RDNcdTNGMEVcdTNGNTNcdTc1NDJcdTc1NkRcdTc1NzJcdTc1OERcdTNGN0NcdTc1QzhcdTc1RENcdTNGQzBcdTc2NERcdTNGRDdcdTc2NzRcdTNGRENcdTc2N0FcdUQ4NTNcdURGNUNcdTcxODhcdTU2MjNcdTg5ODBcdTU4NjlcdTQwMURcdTc3NDNcdTQwMzlcdTY3NjFcdTQwNDVcdTM1REJcdTc3OThcdTQwNkFcdTQwNkZcdTVDNUVcdTc3QkVcdTc3Q0JcdTU4RjJcdTc4MThcdTcwQjlcdTc4MUNcdTQwQThcdTc4MzlcdTc4NDdcdTc4NTFcdTc4NjZcdTg0NDhcdUQ4NTVcdUREMzVcdTc5MzNcdTY4MDNcdTc5MzJcdTQxMDNcIl0sXG5bXCI5OTQwXCIsXCJcdTQxMDlcdTc5OTFcdTc5OTlcdThGQkJcdTdBMDZcdThGQkNcdTQxNjdcdTdBOTFcdTQxQjJcdTdBQkNcdTgyNzlcdTQxQzRcdTdBQ0ZcdTdBREJcdTQxQ0ZcdTRFMjFcdTdCNjJcdTdCNkNcdTdCN0JcdTdDMTJcdTdDMUJcdTQyNjBcdTQyN0FcdTdDN0JcdTdDOUNcdTQyOENcdTdDQjhcdTQyOTRcdTdDRURcdThGOTNcdTcwQzBcdUQ4NDNcdURDQ0ZcdTdEQ0ZcdTdERDRcdTdERDBcdTdERkRcdTdGQUVcdTdGQjRcdTcyOUZcdTQzOTdcdTgwMjBcdTgwMjVcdTdCMzlcdTgwMkVcdTgwMzFcdTgwNTRcdTNEQ0NcdTU3QjRcdTcwQTBcdTgwQjdcdTgwRTlcdTQzRURcdTgxMENcdTczMkFcdTgxMEVcdTgxMTJcdTc1NjBcdTgxMTRcdTQ0MDFcdTNCMzlcdTgxNTZcdTgxNTlcdTgxNUFcIl0sXG5bXCI5OWExXCIsXCJcdTQ0MTNcdTU4M0FcdTgxN0NcdTgxODRcdTQ0MjVcdTgxOTNcdTQ0MkRcdTgxQTVcdTU3RUZcdTgxQzFcdTgxRTRcdTgyNTRcdTQ0OEZcdTgyQTZcdTgyNzZcdTgyQ0FcdTgyRDhcdTgyRkZcdTQ0QjBcdTgzNTdcdTk2NjlcdTY5OEFcdTg0MDVcdTcwRjVcdTg0NjRcdTYwRTNcdTg0ODhcdTQ1MDRcdTg0QkVcdTg0RTFcdTg0RjhcdTg1MTBcdTg1MzhcdTg1NTJcdTQ1M0JcdTg1NkZcdTg1NzBcdTg1RTBcdTQ1NzdcdTg2NzJcdTg2OTJcdTg2QjJcdTg2RUZcdTk2NDVcdTg3OEJcdTQ2MDZcdTQ2MTdcdTg4QUVcdTg4RkZcdTg5MjRcdTg5NDdcdTg5OTFcdUQ4NUVcdURENjdcdThBMjlcdThBMzhcdThBOTRcdThBQjRcdThDNTFcdThDRDRcdThDRjJcdThEMUNcdTQ3OThcdTU4NUZcdThEQzNcdTQ3RURcdTRFRUVcdThFM0FcdTU1RDhcdTU3NTRcdThFNzFcdTU1RjVcdThFQjBcdTQ4MzdcdThFQ0VcdThFRTJcdThFRTRcdThFRURcdThFRjJcdThGQjdcdThGQzFcdThGQ0FcdThGQ0NcdTkwMzNcdTk5QzRcdTQ4QURcdTk4RTBcdTkyMTNcdTQ5MUVcdTkyMjhcdTkyNThcdTkyNkJcdTkyQjFcdTkyQUVcdTkyQkZcIl0sXG5bXCI5YTQwXCIsXCJcdTkyRTNcdTkyRUJcdTkyRjNcdTkyRjRcdTkyRkRcdTkzNDNcdTkzODRcdTkzQURcdTQ5NDVcdTQ5NTFcdTlFQkZcdTk0MTdcdTUzMDFcdTk0MURcdTk0MkRcdTk0M0VcdTQ5NkFcdTk0NTRcdTk0NzlcdTk1MkRcdTk1QTJcdTQ5QTdcdTk1RjRcdTk2MzNcdTQ5RTVcdTY3QTBcdTRBMjRcdTk3NDBcdTRBMzVcdTk3QjJcdTk3QzJcdTU2NTRcdTRBRTRcdTYwRThcdTk4QjlcdTRCMTlcdTk4RjFcdTU4NDRcdTk5MEVcdTk5MTlcdTUxQjRcdTk5MUNcdTk5MzdcdTk5NDJcdTk5NURcdTk5NjJcdTRCNzBcdTk5QzVcdTRCOURcdTlBM0NcdTlCMEZcdTdBODNcdTlCNjlcdTlCODFcdTlCRERcdTlCRjFcdTlCRjRcdTRDNkRcdTlDMjBcdTM3NkZcdUQ4NDZcdURGQzJcdTlENDlcdTlDM0FcIl0sXG5bXCI5YWExXCIsXCJcdTlFRkVcdTU2NTBcdTlEOTNcdTlEQkRcdTlEQzBcdTlERkNcdTk0RjZcdThGQjZcdTlFN0JcdTlFQUNcdTlFQjFcdTlFQkRcdTlFQzZcdTk0RENcdTlFRTJcdTlFRjFcdTlFRjhcdTdBQzhcdTlGNDRcdUQ4NDBcdURDOTRcdUQ4NDBcdURFQjdcdUQ4NDBcdURGQTBcdTY5MUFcdTk0QzNcdTU5QUNcdUQ4NDFcdURDRDdcdTU4NDBcdTk0QzFcdTM3QjlcdUQ4NDFcdURERDVcdUQ4NDFcdURFMTVcdUQ4NDFcdURFNzZcdUQ4NDVcdURFQkFcdTU3NTdcdTcxNzNcdUQ4NDJcdURFQzJcdUQ4NDJcdURFQ0RcdUQ4NDJcdURGQkZcdTU0NkFcdUQ4N0VcdURDM0JcdUQ4NDJcdURGQ0JcdTU0OUVcdUQ4NDJcdURGRkJcdUQ4NDNcdURDM0JcdUQ4NDNcdURDNTNcdUQ4NDNcdURDNjVcdUQ4NDNcdURDN0NcdTYwRTdcdUQ4NDNcdURDOERcdTU2N0FcdUQ4NDNcdURDQjVcdUQ4NDNcdURDRERcdUQ4NDNcdURDRURcdUQ4NDNcdURENkZcdUQ4NDNcdUREQjJcdUQ4NDNcdUREQzhcdTY5NTVcdTlDMkZcdTg3QTVcdUQ4NDNcdURFMDRcdUQ4NDNcdURFMEVcdUQ4NDNcdURFRDdcdUQ4NDNcdURGOTBcdUQ4NDNcdURGMkRcdUQ4NDNcdURFNzNcdTVDMjBcdUQ4NDNcdURGQkNcdTVFMEJcdUQ4NDRcdURDNUNcdUQ4NDRcdURDNEZcdUQ4NDRcdURDNzZcdTY3MUVcdUQ4NDRcdURDN0JcdUQ4NDRcdURDODhcdUQ4NDRcdURDOTZcdTM2NDdcdUQ4NDRcdURDQkZcdUQ4NDRcdURDRDNcdUQ4NDRcdUREMkZcdUQ4NDRcdUREM0JcdTUzNjRcdTg0QURcdUQ4NDRcdURFRTNcdUQ4NDRcdURGNzVcdUQ4NDRcdURGMzZcdThCODFcdUQ4NDVcdURENzdcdUQ4NDVcdURFMTlcdUQ4NDVcdURGQzNcdUQ4NDVcdURGQzdcdTRFNzhcdTcwQkJcdUQ4NDZcdURDMkRcdUQ4NDZcdURENkFcIl0sXG5bXCI5YjQwXCIsXCJcdUQ4NDZcdURFMkRcdUQ4NDZcdURFNDVcdUQ4NDdcdURDMkFcdUQ4NDdcdURDNzBcdUQ4NDdcdURDQUNcdUQ4NDdcdURFQzhcdTYyQzNcdUQ4NDdcdURFRDVcdUQ4NDdcdURGMTVcdTcxOThcdTY4NTVcdUQ4NDhcdURDNDVcdTY5RTlcdTM2QzhcdUQ4NDhcdURFN0NcdUQ4NDhcdURGRDdcdUQ4NDhcdURGRkFcdUQ4NDlcdURGMkFcdUQ4NEFcdURDNzFcdUQ4NEFcdURENEZcdTgyRkRcdUQ4NEFcdURENjdcdUQ4NEFcdUREOTNcdUQ4NEFcdURFRDVcdTg5QTVcdUQ4NEFcdURFRThcdThGQTBcdUQ4NEFcdURGMEVcdTk3QjhcdUQ4NEFcdURGM0ZcdTk4NDdcdTlBQkRcdUQ4NEJcdURDNENcIl0sXG5bXCI5YjYyXCIsXCJcdUQ4NEJcdURDODhcdUQ4NEJcdURDQjdcdUQ4NTZcdURGRThcdUQ4NEJcdUREMDhcdUQ4NEJcdUREMTJcdUQ4NEJcdUREQjdcdUQ4NEJcdUREOTVcdUQ4NEJcdURFNDJcdUQ4NEJcdURGNzRcdUQ4NEJcdURGQ0NcdUQ4NENcdURDMzNcdUQ4NENcdURDNjZcdUQ4NENcdURGMUZcdUQ4NENcdURGREVcdTVGQjFcdTY2NDhcdTY2QkZcdUQ4NUVcdURFNzlcdUQ4NERcdURENjdcdUQ4NERcdURERjNcdTcyMDFcdUQ4NTJcdUREQkFcdTc3RDdcdUQ4NERcdURFMUFcdUQ4NERcdURGMTZcdTdFODdcdUQ4NDBcdURGNDZcdTU4QjVcdTY3MEVcIl0sXG5bXCI5YmExXCIsXCJcdTY5MThcdUQ4NEVcdURFQTdcdUQ4NURcdURFNTdcdUQ4NTdcdURGRTJcdUQ4NEZcdURFMTFcdUQ4NEZcdURFQjlcdUQ4NURcdURERkVcdUQ4NDhcdURDOUFcdTQ4RDBcdTRBQjhcdUQ4NTBcdUREMTlcdUQ4NjJcdURFOUFcdUQ4NTBcdURFRUVcdUQ4NTBcdURGMERcdUQ4NTBcdURDM0JcdUQ4NTBcdURGMzRcdUQ4NTBcdURGOTZcdUQ4NTJcdURFNDVcdUQ4NDFcdUREQ0FcdTUxRDJcdUQ4NDFcdURFMTFcdTU5OUZcdUQ4NDdcdURFQThcdTNCQkVcdUQ4NEZcdURDRkZcdUQ4NTFcdURDMDRcdUQ4NTFcdURDRDZcdTU3ODhcdUQ4NTFcdURFNzRcdTM5OUJcdUQ4NTFcdURGMkZcdUQ4NjFcdURERThcdUQ4NjZcdUREQzlcdTM3NjJcdUQ4NDhcdUREQzNcdThCNUVcdUQ4NjJcdURGNEVcdTk5RDZcdUQ4NTJcdURDMTJcdUQ4NTJcdURDRkJcdUQ4NTJcdURFMTVcdTcyMDlcdUQ4NTJcdURFQzBcdUQ4NDNcdURDNzhcdTU5NjVcdUQ4NTNcdURFQTVcdUQ4NTNcdURGODZcdUQ4NDFcdURGNzlcdThFREFcdUQ4NTRcdURDMkNcdTUyOEZcdTU3M0ZcdTcxNzFcdUQ4NTRcdURFOTlcdUQ4NTVcdURDMTlcdUQ4NEZcdURGNEFcdUQ4NTJcdURFQTdcdTU1QkNcdUQ4NTVcdURDNDZcdUQ4NTVcdURDNkVcdUQ4NUFcdURGNTJcdTkxRDRcdTM0NzNcdUQ4NTVcdUREM0ZcdUQ4NURcdURFMzJcdUQ4NTVcdURENUVcdTQ3MThcdUQ4NTVcdURENjJcdUQ4NTVcdURENjZcdUQ4NTVcdURGQzdcdUQ4NTJcdUREM0ZcdUQ4NTZcdURDNURcdTUwNjZcdTM0RkJcdUQ4NENcdURGQ0NcdTYwREVcdUQ4NTZcdUREMDNcdTQ3N0NcdUQ4NjJcdURENDhcdUQ4NTZcdURFQUVcdUQ4NTZcdURGODlcdUQ4NTdcdURDMDZcdUQ4NDdcdUREOTBcdTU3QTFcdTcxNTFcdTZGQjZcdUQ4NThcdUREMDJcdUQ4NUZcdURDMTJcdTkwNTZcdUQ4NThcdUREQjJcdUQ4NTNcdURGOUFcdThCNjJcdUQ4NTlcdURDMDJcdUQ4NTlcdURDNEFcIl0sXG5bXCI5YzQwXCIsXCJcdTVENUJcdUQ4NUFcdURGRjdcdThGMzZcdUQ4NTlcdURDODRcdUQ4NDZcdUREMUNcdThBRUFcdUQ4NTJcdURERjZcdUQ4NTlcdURDODhcdUQ4NEZcdURGRUZcdUQ4NTlcdUREMTJcdTRCQzBcdUQ4NTlcdUREQkZcdUQ4NTlcdURFQjVcdUQ4NDlcdURGMUJcdTk0NjVcdUQ4NTVcdURGRTFcdTYxOTVcdTVBMjdcdUQ4N0VcdURDQ0RcdTRGQkJcdTU2QjlcdUQ4NTFcdUREMjFcdUQ4NTlcdURFRkNcdTRFNkFcdUQ4NTJcdUREMzRcdTk2NTZcdTZEOEZcdUQ4NUJcdURDQkRcdTM2MThcdTg5NzdcdUQ4NTlcdURGOTlcdUQ4NUFcdURDNkVcdUQ4NTlcdURDMTFcdUQ4NUFcdURDNUVcdTcxREZcdUQ4NUFcdURDQzdcdTdCNDJcdUQ4NjRcdURDQzBcdUQ4NDJcdURFMTFcdUQ4NUFcdUREMjZcdTkxMDRcdUQ4NUFcdUREMzlcdTdBNDVcdTlERjBcdUQ4NUFcdURERkFcdTlBMjZcdUQ4NUFcdURFMkRcdTM2NUZcdUQ4NTlcdURDNjlcdUQ4NDBcdURDMjFcdTc5ODNcdUQ4NUFcdURFMzRcdUQ4NUFcdURGNUJcdTVEMkNcdUQ4NERcdUREMTlcdTgzQ0ZcdUQ4NUFcdURGOURcdTQ2RDBcdUQ4NUJcdURDQTRcdTc1M0JcdTg4NjVcdUQ4NUJcdUREQUVcdTU4QjZcIl0sXG5bXCI5Y2ExXCIsXCJcdTM3MUNcdUQ4NDlcdUREOERcdUQ4NUNcdURDNEJcdUQ4NUNcdUREQ0RcdTNDNTRcdUQ4NUNcdURFODBcdUQ4NUNcdURFODVcdTkyODFcdUQ4NDhcdUREN0FcdUQ4NUNcdURFOEJcdTkzMzBcdUQ4NUNcdURFRTZcdUQ4NTJcdURERDBcdTZDMzlcdTk0OUZcdUQ4NURcdURDNTBcdUQ4NDNcdURFRjhcdTg4MjdcdTg4RjVcdUQ4NEFcdUREMjZcdUQ4NjFcdURDNzNcdUQ4NDVcdURGQjFcdTZFQjhcdUQ4NTJcdURFMkFcdUQ4NDZcdURDMjBcdTM5QTRcdTM2QjlcdTVDMTBcdTc5RTNcdTQ1M0ZcdTY2QjZcdUQ4NjdcdURDQURcdUQ4NjZcdURDQTRcdTg5NDNcdUQ4NURcdURGQ0NcdUQ4NUVcdURDNThcdTU2RDZcdTQwREZcdUQ4NDVcdURFMEFcdTM5QTFcdUQ4NERcdURGMkZcdUQ4NjBcdURDRThcdUQ4NDRcdURGQzVcdTcxQURcdTgzNjZcdUQ4NUVcdURERERcdUQ4NjRcdUREQThcdTVBNjdcdTRDQjdcdUQ4NUNcdURDQUZcdUQ4NjJcdUREQUJcdUQ4NUVcdURERkRcdUQ4NUVcdURFMEFcdUQ4NUVcdURGMEJcdUQ4NUZcdURENjZcdUQ4NTBcdUREN0FcdTdCNDNcdTc5N0VcdUQ4NjBcdURDMDlcdTZGQjVcdUQ4NjhcdURFREZcdTZBMDNcdUQ4NjBcdURGMThcdTUzQTJcdUQ4NUJcdURFMDdcdTkzQkZcdTY4MzZcdTk3NURcdUQ4NjBcdURENkZcdUQ4NjBcdURDMjNcdUQ4NUFcdUREQjVcdUQ4NDRcdURGRURcdUQ4NENcdURFMkZcdUQ4NjBcdURDNDhcdTVEODVcdUQ4NjNcdURDMzBcdUQ4NjBcdURDODNcdTU3MTVcdTk4MjNcdUQ4NjJcdURENDlcdTVEQUJcdUQ4NTJcdUREODhcdTY1QkVcdTY5RDVcdTUzRDJcdUQ4NTJcdURFQTVcdUQ4NEZcdURGODFcdTNDMTFcdTY3MzZcdUQ4NjBcdURDOTBcdUQ4NjBcdURDRjRcdUQ4NjBcdUREMkVcdUQ4NDdcdURGQTFcdUQ4NjBcdURENEZcIl0sXG5bXCI5ZDQwXCIsXCJcdUQ4NjBcdUREODlcdUQ4NjBcdUREQUZcdUQ4NjBcdURFMUFcdUQ4NjBcdURGMDZcdUQ4NjBcdURGMkZcdUQ4NjBcdURGOEFcdTM1Q0FcdUQ4NjFcdURDNjhcdUQ4NjFcdURFQUFcdTQ4RkFcdTYzRTZcdUQ4NjJcdURENTZcdTc4MDhcdTkyNTVcdUQ4NjJcdUREQjhcdTQzRjJcdUQ4NjJcdURERTdcdTQzREZcdUQ4NjJcdURERThcdUQ4NjJcdURGNDZcdUQ4NjJcdURGRDRcdTU5RjhcdUQ4NjNcdURDMDlcdThGMEJcdUQ4NjNcdURGQzVcdUQ4NjRcdURDRUNcdTdCNTFcdUQ4NjRcdUREMTBcdUQ4NjRcdUREM0NcdTNERjdcdUQ4NjRcdURENUVcdUQ4NTJcdURFQ0FcdThGRDBcdTcyOEZcdTU2OEJcdUQ4NjVcdURDRTdcdUQ4NjVcdURERTlcdUQ4NjVcdUREQjBcdUQ4NjVcdUREQjhcdUQ4NjVcdURGMzJcdUQ4NjZcdURDRDFcdUQ4NjZcdURENDlcdUQ4NjZcdURENkFcdUQ4NjZcdUREQzNcdUQ4NjZcdURFMjhcdUQ4NjZcdURGMEVcdUQ4NjdcdURENUFcdUQ4NjdcdUREOUJcdTdFOUZcdUQ4NjdcdURFRjhcdUQ4NjdcdURGMjNcdTRDQTRcdTk1NDdcdUQ4NjhcdURFOTNcdTcxQTJcdUQ4NjhcdURFRkZcdTREOTFcdTkwMTJcdUQ4NjlcdUREQ0JcdTREOUNcdUQ4NDNcdURDOUNcdThGQkVcdTU1QzFcIl0sXG5bXCI5ZGExXCIsXCJcdThGQkFcdUQ4NDlcdURDQjBcdThGQjlcdUQ4NTJcdURFOTNcdTQ1MDlcdTdFN0ZcdTZGNTZcdTZBQjFcdTRFRUFcdTM0RTRcdUQ4NjJcdURGMkNcdUQ4NUVcdURDOURcdTM3M0FcdThFODBcdUQ4NDVcdURGRjVcdUQ4NjBcdURDMjRcdUQ4NjJcdURGNkNcdUQ4NjJcdURGOTlcdUQ4NUVcdURFM0VcdUQ4NTlcdURFQUZcdTNERUJcdUQ4NURcdURFNTVcdUQ4NEZcdURDQjdcdUQ4NTVcdURFMzVcdUQ4NTZcdURENTZcdTRFOUFcdUQ4NTdcdURFODFcdUQ4NThcdURFNThcdTU2QkZcdUQ4NDNcdURFNkRcdThFMEVcdTVCNkRcdUQ4NEZcdURFODhcdUQ4NTNcdURDOUVcdTYzREVcdTYyRDBcdUQ4NDVcdURGRjZcdUQ4NDZcdURDN0JcdTY1MzBcdTU2MkRcdUQ4NTdcdURDNEFcdTU0MUFcdUQ4NTRcdURGMTFcdTNEQzZcdUQ4NjdcdUREOThcdTRDN0RcdTU2MjJcdTU2MUVcdTdGNDlcdUQ4NTdcdURFRDhcdTU5NzVcdUQ4NEZcdURENDBcdTg3NzBcdTRFMUNcdUQ4NDNcdURGRUFcdUQ4NDNcdURENDlcdUQ4NERcdURFQkFcdTgxMTdcdTlENUVcdThEMThcdTc2M0JcdTlDNDVcdTc2NEVcdTc3QjlcdTkzNDVcdTU0MzJcdTgxNDhcdTgyRjdcdTU2MjVcdTgxMzJcdTg0MThcdTgwQkRcdTU1RUFcdTc5NjJcdTU2NDNcdTU0MTZcdUQ4NDNcdURFOURcdTM1Q0VcdTU2MDVcdTU1RjFcdTY2RjFcdUQ4NjBcdURFRTJcdTM2MkRcdTc1MzRcdTU1RjBcdTU1QkFcdTU0OTdcdTU1NzJcdUQ4NDNcdURDNDFcdUQ4NDNcdURDOTZcdTVFRDBcdUQ4NTRcdURENDhcdUQ4NDNcdURFNzZcdUQ4NEJcdURDNjJcIl0sXG5bXCI5ZTQwXCIsXCJcdUQ4NDNcdURFQTJcdTlFQUJcdTdENUFcdTU1REVcdUQ4NDRcdURDNzVcdTYyOURcdTk3NkRcdTU0OTRcdThDQ0RcdTcxRjZcdTkxNzZcdTYzRkNcdTYzQjlcdTYzRkVcdTU1NjlcdUQ4NEFcdURGNDNcdTlDNzJcdUQ4NEJcdURFQjNcdTUxOUFcdTM0REZcdUQ4NDNcdUREQTdcdTUxQTdcdTU0NERcdTU1MUVcdTU1MTNcdTc2NjZcdThFMkRcdUQ4NUFcdURDOEFcdTc1QjFcdTgwQjZcdTg4MDRcdTg3ODZcdTg4QzdcdTgxQjZcdTg0MUNcdUQ4NDRcdURDQzFcdTQ0RUNcdTczMDRcdUQ4NTFcdURGMDZcdTVCOTBcdTgzMEJcdUQ4NUFcdURDOTNcdTU2N0JcdUQ4NDlcdURFRjRcdUQ4NUZcdUREMkZcdUQ4NTBcdUREQTNcdUQ4NUZcdURENzNcdUQ4NUJcdURFRDBcdUQ4NUNcdURFQjZcdTkxNzBcdUQ4NDRcdURERDlcdTkyMDhcdUQ4NEZcdURDRkNcdUQ4NjlcdURFQTlcdUQ4NDNcdURFQUNcdUQ4NDNcdURFRjlcdTcyNjZcdUQ4NDdcdURDQTJcdTQ3NEVcdUQ4NTNcdURGQzJcdUQ4NUZcdURGRjlcdUQ4NDNcdURGRUJcdTQwRkFcIl0sXG5bXCI5ZWExXCIsXCJcdTlDNURcdTY1MUZcdUQ4NEJcdUREQTBcdTQ4RjNcdUQ4NTFcdURGRTBcdUQ4NjdcdUREN0NcdUQ4NDNcdURGRUNcdUQ4NDNcdURFMEFcdTYwNjJcdUQ4NURcdUREQTNcdUQ4NDNcdURGRURcIl0sXG5bXCI5ZWFkXCIsXCJcdUQ4NThcdURDNDhcdUQ4NDRcdUREODdcdTcxQTNcdTdFOEVcdTlENTBcdTRFMUFcdTRFMDRcdTM1NzdcdTVCMERcdTZDQjJcdTUzNjdcdTM2QUNcdTM5RENcdTUzN0RcdTM2QTVcdUQ4NTFcdURFMThcdTU4OUFcdUQ4NTJcdURGNkVcdTgyMkRcdTU0NEJcdTU3QUFcdUQ4NTZcdURFOTVcdUQ4NDJcdURENzlcIl0sXG5bXCI5ZWM1XCIsXCJcdTNBNTJcdUQ4NDlcdURDNjVcdTczNzRcdUQ4NjdcdURFQUNcdTREMDlcdTlCRURcdUQ4NEZcdURDRkVcdUQ4NjdcdURGMzBcdTRDNUJcdUQ4NTNcdURGQTlcdUQ4NjVcdUREOUVcdUQ4NjdcdURGREVcdTg0NUNcdUQ4NEZcdUREQjZcdUQ4NUNcdURFQjJcdUQ4NTlcdURGQjNcdUQ4NERcdURGMjBcdTYzMkVcdTdEMjVcdUQ4NEZcdURFRjdcdUQ4NEZcdURFMkNcdTNBMkFcdTkwMDhcdTUyQ0NcdTNFNzRcdTM2N0FcdTQ1RTlcdUQ4NDFcdURDOEVcdTc2NDBcdTVBRjBcdUQ4NDNcdURFQjZcdTc4N0FcdUQ4NUZcdURGMkVcdTU4QTdcdTQwQkZcdTU2N0NcdTlCOEJcdTVENzRcdTc2NTRcdUQ4NjlcdURDMzRcdTlFODVcdTRDRTFcdTc1RjlcdTM3RkJcdTYxMTlcdUQ4NENcdURDREFcdUQ4NTBcdURGRjJcIl0sXG5bXCI5ZWY1XCIsXCJcdTU2NURcdUQ4NDRcdURFQTlcdTU3QTdcdUQ4NTJcdURENjNcdUQ4NjdcdURFMDZcdTUyMzRcdUQ4NUNcdURDQUVcdTM1QURcdTZDNEFcdTlEN0NcIl0sXG5bXCI5ZjQwXCIsXCJcdTdDNTZcdTlCMzlcdTU3REVcdUQ4NDVcdURGNkNcdTVDNTNcdTY0RDNcdUQ4NjVcdURDRDBcdUQ4NThcdURGMzVcdUQ4NUNcdURENjRcdTg2QURcdUQ4NDNcdUREMjhcdUQ4NUJcdUREMjJcdUQ4NTJcdURFRTJcdUQ4NDNcdURENzFcIl0sXG5bXCI5ZjRmXCIsXCJcdTUxRkVcdUQ4NDdcdURGMEZcdTVEOEVcdTk3MDNcdUQ4NDdcdURERDFcdTlFODFcdTkwNENcdTdCMUZcdTlCMDJcdTVDRDFcdTdCQTNcdTYyNjhcdTYzMzVcdTlBRkZcdTdCQ0ZcdTlCMkFcdTdDN0VcdTlCMkVcdTdDNDJcdTdDODZcdTlDMTVcdTdCRkNcdTlCMDlcdTlGMTdcdTlDMUJcdUQ4NTJcdUREM0VcdTlGNUFcdTU1NzNcdTVCQzNcdTRGRkRcdTlFOThcdTRGRjJcdTUyNjBcdTNFMDZcdTUyRDFcdTU3NjdcdTUwNTZcdTU5QjdcdTVFMTJcdTk3QzhcdTlEQUJcdThGNUNcdTU0NjlcdTk3QjRcdTk5NDBcdTk3QkFcdTUzMkNcdTYxMzBcIl0sXG5bXCI5ZmExXCIsXCJcdTY5MkNcdTUzREFcdTlDMEFcdTlEMDJcdTRDM0JcdTk2NDFcdTY5ODBcdTUwQTZcdTc1NDZcdUQ4NDVcdURGNkRcdTk5REFcdTUyNzNcIl0sXG5bXCI5ZmFlXCIsXCJcdTkxNTlcdTk2ODFcdTkxNUNcIl0sXG5bXCI5ZmIyXCIsXCJcdTkxNTFcdUQ4NjNcdURFOTdcdTYzN0ZcdUQ4NUJcdUREMjNcdTZBQ0FcdTU2MTFcdTkxOEVcdTc1N0FcdTYyODVcdUQ4NDBcdURGRkNcdTczNEZcdTdDNzBcdUQ4NTdcdURDMjFcdUQ4NEZcdURDRkRcIl0sXG5bXCI5ZmMxXCIsXCJcdUQ4NTJcdUREMTlcdTc2RDZcdTlCOURcdTRFMkFcdUQ4NDNcdURDRDRcdTgzQkVcdTg4NDJcIl0sXG5bXCI5ZmM5XCIsXCJcdTVDNEFcdTY5QzBcdTUwRURcdTU3N0FcdTUyMUZcdTVERjVcdTRFQ0VcdTZDMzFcdUQ4NDBcdURERjJcdTRGMzlcdTU0OUNcdTU0REFcdTUyOUFcdThEODJcdTM1RkVcdTVGMENcdTM1RjNcIl0sXG5bXCI5ZmRiXCIsXCJcdTZCNTJcdTkxN0NcdTlGQTVcdTlCOTdcdTk4MkVcdTk4QjRcdTlBQkFcdTlFQThcdTlFODRcdTcxN0FcdTdCMTRcIl0sXG5bXCI5ZmU3XCIsXCJcdTZCRkFcdTg4MThcdTdGNzhcIl0sXG5bXCI5ZmViXCIsXCJcdTU2MjBcdUQ4NjlcdURFNEFcdThFNzdcdTlGNTNcIl0sXG5bXCI5ZmYwXCIsXCJcdThERDRcdThFNEZcdTlFMUNcdThFMDFcdTYyODJcdUQ4NjBcdURGN0RcdThFMjhcdThFNzVcdTdBRDNcdUQ4NTJcdURFNzdcdTdBM0VcdTc4RDhcdTZDRUFcdThBNjdcdTc2MDdcIl0sXG5bXCJhMDQwXCIsXCJcdUQ4NjJcdURFNUFcdTlGMjZcdTZDQ0VcdTg3RDZcdTc1QzNcdUQ4NjhcdURFQjJcdTc4NTNcdUQ4N0VcdURDNDBcdThEMENcdTcyRTJcdTczNzFcdThCMkRcdTczMDJcdTc0RjFcdThDRUJcdUQ4NTJcdURFQkJcdTg2MkZcdTVGQkFcdTg4QTBcdTQ0QjdcIl0sXG5bXCJhMDU1XCIsXCJcdUQ4NDZcdURDM0JcdUQ4NUJcdURFMDVcIl0sXG5bXCJhMDU4XCIsXCJcdThBN0VcdUQ4NDlcdUREMUJcIl0sXG5bXCJhMDViXCIsXCJcdTYwRkRcdTc2NjdcdTlBRDdcdTlENDRcdTkzNkVcdTlCOEZcdTg3RjVcIl0sXG5bXCJhMDYzXCIsXCJcdTg4MEZcdThDRjdcdTczMkNcdTk3MjFcdTlCQjBcdTM1RDZcdTcyQjJcdTRDMDdcdTdDNTFcdTk5NEFcdUQ4NThcdURENTlcdTYxNTlcdTRDMDRcdTlFOTZcdTYxN0RcIl0sXG5bXCJhMDczXCIsXCJcdTU3NUZcdTYxNkZcdTYyQTZcdTYyMzlcdTYyQ0VcdTNBNUNcdTYxRTJcdTUzQUFcdUQ4NENcdURGRjVcdTYzNjRcdTY4MDJcdTM1RDJcIl0sXG5bXCJhMGExXCIsXCJcdTVENTdcdUQ4NjJcdURGQzJcdThGREFcdUQ4NjNcdURFMzlcIl0sXG5bXCJhMGE2XCIsXCJcdTUwRDlcdUQ4NDdcdURENDZcdTc5MDZcdTUzMzJcdTk2MzhcdUQ4NDNcdURGM0JcdTQwNjVcIl0sXG5bXCJhMGFlXCIsXCJcdTc3RkVcIl0sXG5bXCJhMGIwXCIsXCJcdTdDQzJcdUQ4NTdcdURGMUFcdTdDREFcdTdBMkRcdTgwNjZcdTgwNjNcdTdENERcdTc1MDVcdTc0RjJcdTg5OTRcdTgyMUFcdTY3MENcdTgwNjJcdUQ4NURcdURDODZcdTgwNUJcdTc0RjBcdTgxMDNcdTc3MjRcdTg5ODlcdUQ4NTlcdURGQ0NcdTc1NTNcdUQ4NUJcdURFRDFcdTg3QTlcdTg3Q0VcdTgxQzhcdTg3OENcdThBNDlcdThDQURcdThCNDNcdTc3MkJcdTc0RjhcdTg0REFcdTM2MzVcdTY5QjJcdThEQTZcIl0sXG5bXCJhMGQ0XCIsXCJcdTg5QTlcdTc0NjhcdTZEQjlcdTg3QzFcdUQ4NTBcdURDMTFcdTc0RTdcdTNEREJcdTcxNzZcdTYwQTRcdTYxOUNcdTNDRDFcdTcxNjJcdTYwNzdcIl0sXG5bXCJhMGUyXCIsXCJcdTdGNzFcdUQ4NjJcdURGMkRcdTcyNTBcdTYwRTlcdTRCN0VcdTUyMjBcdTNDMThcdUQ4NEZcdURDQzdcdUQ4NTdcdURFRDdcdUQ4NURcdURFNTZcdUQ4NTVcdUREMzFcdUQ4NDZcdURENDRcdUQ4NDRcdURFRkVcdUQ4NjZcdUREMDNcdUQ4NUJcdURERENcdUQ4NUNcdURDQURcdTVDQzFcdUQ4NThcdUREQURcdUQ4NjJcdURFMEZcdUQ4NERcdURFNzdcdUQ4NDBcdURDRUVcdUQ4NUFcdURDNDZcdUQ4NTNcdURGMEVcdTQ1NjJcdTVCMUZcdUQ4NThcdURGNENcdTlGNTBcdTlFQTZcdUQ4NThcdURFNkJcIl0sXG5bXCJhM2MwXCIsXCJcdTI0MDBcIiwzMSxcIlx1MjQyMVwiXSxcbltcImM2YTFcIixcIlx1MjQ2MFwiLDksXCJcdTI0NzRcIiw5LFwiXHUyMTcwXCIsOSxcIlx1NEUzNlx1NEUzRlx1NEU4NVx1NEVBMFx1NTE4Mlx1NTE5Nlx1NTFBQlx1NTJGOVx1NTMzOFx1NTM2OVx1NTNCNlx1NTkwQVx1NUI4MFx1NUREQlx1MkYzM1x1NUU3Rlx1NUVGNFx1NUY1MFx1NUY2MVx1NjUzNFx1NjVFMFx1NzU5Mlx1NzY3Nlx1OEZCNVx1OTZCNlx1MDBBOFx1MDJDNlx1MzBGRFx1MzBGRVx1MzA5RFx1MzA5RVx1MzAwM1x1NEVERFx1MzAwNVx1MzAwNlx1MzAwN1x1MzBGQ1x1RkYzQlx1RkYzRFx1MjczRFx1MzA0MVwiLDIzXSxcbltcImM3NDBcIixcIlx1MzA1OVwiLDU4LFwiXHUzMEExXHUzMEEyXHUzMEEzXHUzMEE0XCJdLFxuW1wiYzdhMVwiLFwiXHUzMEE1XCIsODEsXCJcdTA0MTBcIiw1LFwiXHUwNDAxXHUwNDE2XCIsNF0sXG5bXCJjODQwXCIsXCJcdTA0MUJcIiwyNixcIlx1MDQ1MVx1MDQzNlwiLDI1LFwiXHUyMUU3XHUyMUI4XHUyMUI5XHUzMUNGXHVEODQwXHVEQ0NDXHU0RTVBXHVEODQwXHVEQzhBXHU1MjAyXHU0NDkxXCJdLFxuW1wiYzhhMVwiLFwiXHU5RkIwXHU1MTg4XHU5RkIxXHVEODVEXHVERTA3XCJdLFxuW1wiYzhjZFwiLFwiXHVGRkUyXHVGRkU0XHVGRjA3XHVGRjAyXHUzMjMxXHUyMTE2XHUyMTIxXHUzMDlCXHUzMDlDXHUyRTgwXHUyRTg0XHUyRTg2XHUyRTg3XHUyRTg4XHUyRThBXHUyRThDXHUyRThEXHUyRTk1XHUyRTlDXHUyRTlEXHUyRUE1XHUyRUE3XHUyRUFBXHUyRUFDXHUyRUFFXHUyRUI2XHUyRUJDXHUyRUJFXHUyRUM2XHUyRUNBXHUyRUNDXHUyRUNEXHUyRUNGXHUyRUQ2XHUyRUQ3XHUyRURFXHUyRUUzXCJdLFxuW1wiYzhmNVwiLFwiXHUwMjgzXHUwMjUwXHUwMjVCXHUwMjU0XHUwMjc1XHUwMTUzXHUwMEY4XHUwMTRCXHUwMjhBXHUwMjZBXCJdLFxuW1wiZjlmZVwiLFwiXHVGRkVEXCJdLFxuW1wiZmE0MFwiLFwiXHVEODQxXHVERDQ3XHU5MkRCXHVEODQxXHVERERGXHVEODRGXHVERkM1XHU4NTRDXHU0MkI1XHU3M0VGXHU1MUI1XHUzNjQ5XHVEODUyXHVERDQyXHVEODYyXHVEREU0XHU5MzQ0XHVEODQ2XHVERERCXHU4MkVFXHVEODRGXHVEQ0M4XHU3ODNDXHU2NzQ0XHU2MkRGXHVEODUyXHVERDMzXHVEODYyXHVEREFBXHVEODQwXHVERUEwXHVEODVBXHVERkIzXHVEODQ0XHVERjA1XHU0RkFCXHVEODQ5XHVEQ0VEXHU1MDA4XHVEODVCXHVERDI5XHVEODVFXHVERTg0XHVEODREXHVERTAwXHVEODUyXHVERUIxXHVEODQ5XHVERDEzXHU1MDI5XHVEODQwXHVERjdFXHU1RkE0XHVEODQwXHVERjgwXHVEODQwXHVERjQ3XHU2RURCXHVEODQxXHVEQzFGXHU1MDdEXHU1MTAxXHUzNDdBXHU1MTBFXHU5ODZDXHUzNzQzXHU4NDE2XHVEODUyXHVEREE0XHVEODQxXHVEQzg3XHU1MTYwXHVEODRDXHVERkI0XHU1MTZBXHVEODQyXHVERkZGXHVEODQ4XHVEQ0ZDXHVEODQwXHVERUU1XHVEODQ5XHVERDMwXHVEODQxXHVERDhFXHVEODRDXHVERTMzXHVEODQ2XHVERDgzXHU1QjgyXHU4NzdEXHVEODQxXHVEREIzXHVEODRGXHVEQzk5XHU1MUIyXHU1MUI4XCJdLFxuW1wiZmFhMVwiLFwiXHU5RDM0XHU1MUM5XHU1MUNGXHU1MUQxXHUzQ0RDXHU1MUQzXHVEODUyXHVERUE2XHU1MUIzXHU1MUUyXHU1MzQyXHU1MUVEXHU4M0NEXHU2OTNFXHVEODREXHVERjJEXHU1RjdCXHU1MjBCXHU1MjI2XHU1MjNDXHU1MkI1XHU1MjU3XHU1Mjk0XHU1MkI5XHU1MkM1XHU3QzE1XHU4NTQyXHU1MkUwXHU4NjBEXHVEODVBXHVERjEzXHU1MzA1XHVEODYyXHVERURFXHU1NTQ5XHU2RUQ5XHVEODRGXHVERjgwXHVEODQyXHVERDU0XHVEODRGXHVERkVDXHU1MzMzXHU1MzQ0XHVEODQyXHVERkUyXHU2Q0NCXHVEODQ1XHVERjI2XHU2ODFCXHU3M0Q1XHU2MDRBXHUzRUFBXHUzOENDXHVEODQ1XHVERUU4XHU3MUREXHU0NEEyXHU1MzZEXHU1Mzc0XHVEODYxXHVERUFCXHU1MzdFXHU1MzdGXHVEODQ1XHVERDk2XHVEODQ1XHVERTEzXHU3N0U2XHU1MzkzXHVEODYyXHVERTlCXHU1M0EwXHU1M0FCXHU1M0FFXHU3M0E3XHVEODU1XHVERjcyXHUzRjU5XHU3MzlDXHU1M0MxXHU1M0M1XHU2QzQ5XHU0RTQ5XHU1N0ZFXHU1M0Q5XHUzQUFCXHVEODQyXHVERjhGXHU1M0UwXHVEODRGXHVERkVCXHVEODRCXHVEREEzXHU1M0Y2XHVEODQzXHVEQzc3XHU1NDEzXHU3MDc5XHU1NTJCXHU2NjU3XHU2RDVCXHU1NDZEXHVEODVBXHVERjUzXHVEODQzXHVERDc0XHU1NTVEXHU1NDhGXHU1NEE0XHU0N0E2XHVEODQ1XHVERjBEXHVEODQzXHVERUREXHUzREI0XHVEODQzXHVERDREXCJdLFxuW1wiZmI0MFwiLFwiXHVEODYyXHVEREJDXHVEODQ5XHVERTk4XHU1NTQ3XHU0Q0VEXHU1NDJGXHU3NDE3XHU1NTg2XHU1NUE5XHU1NjA1XHVEODQ2XHVEQ0Q3XHVEODUwXHVEQzNBXHU0NTUyXHVEODUxXHVEQzM1XHU2NkIzXHVEODQ0XHVEQ0I0XHU1NjM3XHU2NkNEXHVEODRDXHVERThBXHU2NkE0XHU2NkFEXHU1NjREXHU1NjRGXHU3OEYxXHU1NkYxXHU5Nzg3XHU1M0ZFXHU1NzAwXHU1NkVGXHU1NkVEXHVEODYyXHVERjY2XHUzNjIzXHVEODQ0XHVERTRGXHU1NzQ2XHVEODUwXHVEREE1XHU2QzZFXHU3MDhCXHU1NzQyXHUzNkIxXHVEODVCXHVEQzdFXHU1N0U2XHVEODQ1XHVEQzE2XHU1ODAzXHVEODQ1XHVEQzU0XHVEODUwXHVERjYzXHU1ODI2XHVEODUyXHVERkY1XHU1ODVDXHU1OEFBXHUzNTYxXHU1OEUwXHU1OERDXHVEODQ0XHVERTNDXHU1OEZCXHU1QkZGXHU1NzQzXHVEODY4XHVERDUwXHVEODUwXHVERTc4XHU5M0QzXHUzNUExXHU1OTFGXHU2OEE2XHUzNkMzXHU2RTU5XCJdLFxuW1wiZmJhMVwiLFwiXHVEODQ1XHVERTNFXHU1QTI0XHU1NTUzXHVEODQ1XHVERTkyXHU4NTA1XHU1OUM5XHVEODQzXHVERDRFXHVEODVCXHVEQzgxXHVEODVCXHVERDJBXHVEODQ1XHVERkRDXHU1OUQ5XHVEODQ1XHVERkZCXHVEODQ1XHVERkIyXHVEODVCXHVEREE2XHU2RDcxXHVEODQ2XHVEQzI4XHVEODQ1XHVERUQ1XHU1OUY5XHVEODVCXHVERTQ1XHU1QUFCXHU1QTYzXHUzNkU2XHVEODUyXHVEREE5XHU1QTc3XHUzNzA4XHU1QTk2XHU3NDY1XHU1QUQzXHVEODVCXHVERkExXHVEODQ5XHVERDU0XHUzRDg1XHVEODQ2XHVERDExXHUzNzMyXHVEODQ1XHVERUI4XHU1RTgzXHU1MkQwXHU1Qjc2XHU2NTg4XHU1QjdDXHVEODVFXHVERTBFXHU0MDA0XHU0ODVEXHVEODQwXHVERTA0XHU1QkQ1XHU2MTYwXHVEODQ2XHVERTM0XHVEODU2XHVERENDXHVEODQxXHVEREE1XHU1QkYzXHU1QjlEXHU0RDEwXHU1QzA1XHVEODQ2XHVERjQ0XHU1QzEzXHU3M0NFXHU1QzE0XHVEODQ3XHVEQ0E1XHVEODVBXHVERjI4XHU1QzQ5XHU0OEREXHU1Qzg1XHU1Q0U5XHU1Q0VGXHU1RDhCXHVEODQ3XHVEREY5XHVEODQ3XHVERTM3XHU1RDEwXHU1RDE4XHU1RDQ2XHVEODQ3XHVERUE0XHU1Q0JBXHU1REQ3XHU4MkZDXHUzODJEXHVEODUyXHVERDAxXHVEODQ4XHVEQzQ5XHVEODQ4XHVERDczXHU4Mjg3XHUzODM2XHUzQkMyXHU1RTJFXHU2QThBXHU1RTc1XHU1RTdBXHVEODUxXHVEQ0JDXHVEODQzXHVEQ0QzXHU1M0E2XHU0RUI3XHU1RUQwXHU1M0E4XHVEODQ1XHVERjcxXHU1RTA5XHU1RUY0XHVEODYxXHVEQzgyXCJdLFxuW1wiZmM0MFwiLFwiXHU1RUY5XHU1RUZCXHUzOEEwXHU1RUZDXHU2ODNFXHU5NDFCXHU1RjBEXHVEODQwXHVEREMxXHVEODdFXHVEQzk0XHUzQURFXHU0OEFFXHVEODQ0XHVERjNBXHU1RjNBXHVEODVBXHVEQzg4XHVEODQ4XHVERkQwXHU1RjU4XHVEODQ5XHVEQzcxXHU1RjYzXHU5N0JEXHVEODVCXHVERTZFXHU1RjcyXHU5MzQwXHVEODYyXHVERTM2XHU1RkE3XHU1REI2XHUzRDVGXHVEODU0XHVERTUwXHVEODQ3XHVERjZBXHVEODVDXHVEQ0Y4XHVEODQ5XHVERTY4XHU5MUQ2XHVEODQwXHVERTlFXHVEODYyXHVERTI5XHU2MDMxXHU2Njg1XHVEODQ2XHVEQzc3XHUzOTYzXHUzREM3XHUzNjM5XHU1NzkwXHVEODQ5XHVERkI0XHU3OTcxXHUzRTQwXHU2MDlFXHU2MEE0XHU2MEIzXHVEODUyXHVERDgyXHVEODUyXHVERDhGXHVEODVFXHVERTUzXHU3NEE0XHU1MEUxXHU1QUEwXHU2MTY0XHU4NDI0XHU2MTQyXHVEODdFXHVEQ0E2XHVEODVCXHVERUQyXHU2MTgxXHU1MUY0XHVEODQxXHVERTU2XHU2MTg3XHU1QkFBXHVEODRGXHVERkI3XCJdLFxuW1wiZmNhMVwiLFwiXHVEODRBXHVEQzVGXHU2MUQzXHVEODYyXHVERjlEXHVEODY2XHVERDVEXHU2MUQwXHUzOTMyXHVEODRBXHVERDgwXHVEODRBXHVEQ0MxXHU2MDIzXHU2MTVDXHU2NTFFXHU2MzhCXHVEODQwXHVERDE4XHU2MkM1XHVEODQ1XHVERjcwXHU2MkQ1XHVEODRCXHVERTBEXHU2MzZDXHVEODUyXHVERERGXHUzQTE3XHU2NDM4XHU2M0Y4XHVEODQ0XHVERjhFXHVEODQ1XHVERkZDXHU2NDkwXHU2RjhBXHVEODRCXHVERTM2XHU5ODE0XHVEODUwXHVEQzhDXHVEODU1XHVERjFEXHU2NEUxXHU2NEU1XHU5NDdCXHUzQTY2XHU2NDNBXHUzQTU3XHU2NTREXHU2RjE2XHVEODUyXHVERTI4XHVEODUyXHVERTIzXHU2NTg1XHU2NTZEXHU2NTVGXHVEODRDXHVEQzdFXHU2NUI1XHVEODUyXHVERDQwXHU0QjM3XHU2NUQxXHU0MEQ4XHVEODQ2XHVEQzI5XHU2NUUwXHU2NUUzXHU1RkRGXHVEODREXHVEQzAwXHU2NjE4XHVEODRDXHVEREY3XHVEODRDXHVEREY4XHU2NjQ0XHVEODRDXHVEREE0XHVEODRDXHVEREE1XHU2NjRCXHVEODQzXHVERTc1XHU2NjY3XHVEODU0XHVEREU2XHU2NjczXHU2Njc0XHVEODQ3XHVERTNEXHVEODRDXHVERTMxXHVEODYxXHVEREY0XHVEODRDXHVEREM4XHVEODU0XHVERjEzXHU3N0M1XHVEODRBXHVEQ0Y3XHU5OUE0XHU2NzAyXHVEODUwXHVERjlDXHVEODUyXHVERTIxXHUzQjJCXHU2OUZBXHVEODREXHVERkMyXHU2NzVFXHU2NzY3XHU2NzYyXHVEODUwXHVERENEXHVEODY0XHVEQ0VEXHU2N0Q3XHU0NEU5XHU2ODIyXHU2RTUwXHU5MjNDXHU2ODAxXHVEODRDXHVERkU2XHVEODVCXHVEREEwXHU2ODVEXCJdLFxuW1wiZmQ0MFwiLFwiXHVEODREXHVEQzZGXHU2OUUxXHU2QTBCXHVEODYyXHVERURGXHU2OTczXHU2OEMzXHVEODREXHVERENEXHU2OTAxXHU2OTAwXHUzRDMyXHUzQTAxXHVEODREXHVERTNDXHUzQjgwXHU2N0FDXHU2OTYxXHVEODYyXHVERTRBXHU0MkZDXHU2OTM2XHU2OTk4XHUzQkExXHVEODQwXHVERkM5XHU4MzYzXHU1MDkwXHU2OUY5XHVEODREXHVERTU5XHVEODQ4XHVERDJBXHU2QTQ1XHVEODREXHVERjAzXHU2QTlEXHUzQkYzXHU2N0IxXHU2QUM4XHVEODY0XHVERDlDXHUzQzBEXHU2QjFEXHVEODQyXHVERDIzXHU2MERFXHU2QjM1XHU2Qjc0XHVEODQ5XHVERkNEXHU2RUI1XHVEODRFXHVERURCXHVEODQwXHVERkI1XHVEODQ2XHVERDU4XHUzNzQwXHU1NDIxXHVEODRFXHVERjVBXHU2QkUxXHVEODRGXHVERUZDXHU2QkRDXHU2QzM3XHVEODQ5XHVEQzhCXHVEODUyXHVEQ0YxXHVEODVBXHVERjUxXHU2QzVBXHU4MjI2XHU2Qzc5XHVEODRGXHVEREJDXHU0NEM1XHVEODRGXHVEREJEXHVEODUwXHVEREE0XHVEODUyXHVERDBDXHVEODUyXHVERDAwXCJdLFxuW1wiZmRhMVwiLFwiXHVEODRGXHVEQ0M5XHUzNkU1XHUzQ0VCXHVEODQzXHVERDMyXHU5QjgzXHVEODRDXHVEREY5XHVEODQ5XHVEQzkxXHU3RjhGXHU2ODM3XHVEODVCXHVERDI1XHVEODVCXHVEREExXHVEODVCXHVEREVCXHU2RDk2XHU2RDVDXHU2RTdDXHU2RjA0XHVEODUyXHVERDdGXHVEODUwXHVEQzg1XHVEODVCXHVERTcyXHU4NTMzXHVEODVCXHVERjc0XHU1MUM3XHU2QzlDXHU2RTFEXHU4NDJFXHVEODYyXHVERjIxXHU2RTJGXHVEODRGXHVERTJGXHU3NDUzXHVEODRGXHVERjgyXHU3OUNDXHU2RTRGXHU1QTkxXHVEODRDXHVEQzRCXHU2RkY4XHUzNzBEXHU2RjlEXHVEODRGXHVERTMwXHU2RUZBXHVEODQ1XHVEQzk3XHVEODUwXHVEQzNEXHU0NTU1XHU5M0YwXHU2RjQ0XHU2RjVDXHUzRDRFXHU2Rjc0XHVEODY0XHVERDcwXHUzRDNCXHU2RjlGXHVEODUwXHVERDQ0XHU2RkQzXHVEODUwXHVEQzkxXHVEODUwXHVERDU1XHVEODUwXHVEQzM5XHVEODRGXHVERkYwXHVEODRGXHVERkI0XHVEODUwXHVERDNGXHU1MURGXHVEODUwXHVERDU2XHVEODUwXHVERDU3XHVEODUwXHVERDQwXHVEODU4XHVEREREXHU3MDRCXHU3MDdFXHU3MEE3XHU3MDgxXHU3MENDXHU3MEQ1XHU3MEQ2XHU3MERGXHU0MTA0XHUzREU4XHU3MUI0XHU3MTk2XHVEODUwXHVERTc3XHU3MTJCXHU3MTQ1XHU1QTg4XHU3MTRBXHU3MTZFXHU1QzlDXHVEODUwXHVERjY1XHU3MTRGXHU5MzYyXHVEODUwXHVERUMxXHU3MTJDXHVEODUxXHVEQzVBXHVEODUyXHVERTI3XHVEODUyXHVERTIyXHU3MUJBXHVEODYyXHVERkU4XHU3MEJEXHU3MjBFXCJdLFxuW1wiZmU0MFwiLFwiXHU5NDQyXHU3MjE1XHU1OTExXHU5NDQzXHU3MjI0XHU5MzQxXHVEODU1XHVERTA1XHU3MjJFXHU3MjQwXHVEODUyXHVERDc0XHU2OEJEXHU3MjU1XHU3MjU3XHUzRTU1XHVEODRDXHVEQzQ0XHU2ODBEXHU2RjNEXHU3MjgyXHU3MzJBXHU3MzJCXHVEODUyXHVEQzIzXHVEODYyXHVEQzJCXHU0OEVEXHVEODYyXHVEQzA0XHU3MzI4XHU3MzJFXHU3M0NGXHU3M0FBXHVEODQzXHVEQzNBXHVEODVBXHVERTJFXHU3M0M5XHU3NDQ5XHVEODUwXHVEREUyXHVEODQ1XHVERUU3XHVEODUyXHVERTI0XHU2NjIzXHUzNkM1XHVEODUyXHVEREI3XHVEODUyXHVERDhEXHVEODUyXHVEREZCXHU3M0Y3XHU3NDE1XHU2OTAzXHVEODUyXHVERTI2XHU3NDM5XHVEODQxXHVEREMzXHUzRUQ3XHU3NDVDXHVEODRBXHVEQ0FEXHU3NDYwXHVEODYzXHVERUIyXHU3NDQ3XHU3M0U0XHU3NDc2XHU4M0I5XHU3NDZDXHUzNzMwXHU3NDc0XHU5M0YxXHU2QTJDXHU3NDgyXHU0OTUzXHVEODUyXHVERThDXCJdLFxuW1wiZmVhMVwiLFwiXHVEODUwXHVERDVGXHVEODUyXHVERTc5XHVEODYyXHVERjhGXHU1QjQ2XHVEODYzXHVEQzAzXHVEODQ2XHVEQzlFXHU3NEM4XHVEODQ2XHVERDg4XHU3NTBFXHU3NEU5XHU3NTFFXHVEODYzXHVERUQ5XHVEODQ2XHVERTRCXHU1QkQ3XHVEODYzXHVERUFDXHU5Mzg1XHU3NTREXHU3NTRBXHU3NTY3XHU3NTZFXHVEODUzXHVERjgyXHUzRjA0XHVEODUzXHVERDEzXHU3NThFXHU3NDVEXHU3NTlFXHU3NUI0XHU3NjAyXHU3NjJDXHU3NjUxXHU3NjRGXHU3NjZGXHU3Njc2XHVEODU4XHVERkY1XHU3NjkwXHU4MUVGXHUzN0Y4XHVEODVBXHVERDExXHVEODVBXHVERDBFXHU3NkExXHU3NkE1XHU3NkI3XHU3NkNDXHVEODVCXHVERjlGXHU4NDYyXHVEODU0XHVEQzlEXHVEODU0XHVERDdEXHVEODQ3XHVERTFDXHU3NzFFXHU3NzI2XHU3NzQwXHU2NEFGXHVEODU0XHVERTIwXHU3NzU4XHVEODRDXHVERUFDXHU3N0FGXHVEODYyXHVERDY0XHVEODYyXHVERDY4XHVEODQ1XHVERUMxXHU3N0Y0XHU3ODA5XHVEODQ0XHVERjc2XHVEODUyXHVERTEyXHU2OENBXHU3OEFGXHU3OEM3XHU3OEQzXHU5NkE1XHU3OTJFXHVEODU1XHVEREUwXHU3OEQ3XHU3OTM0XHU3OEIxXHVEODVEXHVERTBDXHU4RkI4XHU4ODg0XHVEODYyXHVERjJCXHVEODU4XHVEQzgzXHVEODQ5XHVERTFDXHU3OTg2XHU4OTAwXHU2OTAyXHU3OTgwXHVEODU2XHVEQzU3XHU3OTlEXHVEODVFXHVERjM5XHU3OTNDXHU3OUE5XHU2RTJBXHVEODVDXHVERDI2XHUzRUE4XHU3OUM2XHVEODY0XHVERDBEXHU3OUQ0XCJdXG5dXG4iLCAiXCJ1c2Ugc3RyaWN0XCI7XG5cbi8vIERlc2NyaXB0aW9uIG9mIHN1cHBvcnRlZCBkb3VibGUgYnl0ZSBlbmNvZGluZ3MgYW5kIGFsaWFzZXMuXG4vLyBUYWJsZXMgYXJlIG5vdCByZXF1aXJlKCktZCB1bnRpbCB0aGV5IGFyZSBuZWVkZWQgdG8gc3BlZWQgdXAgbGlicmFyeSBsb2FkLlxuLy8gcmVxdWlyZSgpLXMgYXJlIGRpcmVjdCB0byBzdXBwb3J0IEJyb3dzZXJpZnkuXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICAgIFxuICAgIC8vID09IEphcGFuZXNlL1NoaWZ0SklTID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAvLyBBbGwgamFwYW5lc2UgZW5jb2RpbmdzIGFyZSBiYXNlZCBvbiBKSVMgWCBzZXQgb2Ygc3RhbmRhcmRzOlxuICAgIC8vIEpJUyBYIDAyMDEgLSBTaW5nbGUtYnl0ZSBlbmNvZGluZyBvZiBBU0NJSSArIFx1MDBBNSArIEthbmEgY2hhcnMgYXQgMHhBMS0weERGLlxuICAgIC8vIEpJUyBYIDAyMDggLSBNYWluIHNldCBvZiA2ODc5IGNoYXJhY3RlcnMsIHBsYWNlZCBpbiA5NHg5NCBwbGFuZSwgdG8gYmUgZW5jb2RlZCBieSAyIGJ5dGVzLiBcbiAgICAvLyAgICAgICAgICAgICAgSGFzIHNldmVyYWwgdmFyaWF0aW9ucyBpbiAxOTc4LCAxOTgzLCAxOTkwIGFuZCAxOTk3LlxuICAgIC8vIEpJUyBYIDAyMTIgLSBTdXBwbGVtZW50YXJ5IHBsYW5lIG9mIDYwNjcgY2hhcnMgaW4gOTR4OTQgcGxhbmUuIDE5OTAuIEVmZmVjdGl2ZWx5IGRlYWQuXG4gICAgLy8gSklTIFggMDIxMyAtIEV4dGVuc2lvbiBhbmQgbW9kZXJuIHJlcGxhY2VtZW50IG9mIDAyMDggYW5kIDAyMTIuIFRvdGFsIGNoYXJzOiAxMTIzMy5cbiAgICAvLyAgICAgICAgICAgICAgMiBwbGFuZXMsIGZpcnN0IGlzIHN1cGVyc2V0IG9mIDAyMDgsIHNlY29uZCAtIHJldmlzZWQgMDIxMi5cbiAgICAvLyAgICAgICAgICAgICAgSW50cm9kdWNlZCBpbiAyMDAwLCByZXZpc2VkIDIwMDQuIFNvbWUgY2hhcmFjdGVycyBhcmUgaW4gVW5pY29kZSBQbGFuZSAyICgweDJ4eHh4KVxuXG4gICAgLy8gQnl0ZSBlbmNvZGluZ3MgYXJlOlxuICAgIC8vICAqIFNoaWZ0X0pJUzogQ29tcGF0aWJsZSB3aXRoIDAyMDEsIHVzZXMgbm90IGRlZmluZWQgY2hhcnMgaW4gdG9wIGhhbGYgYXMgbGVhZCBieXRlcyBmb3IgZG91YmxlLWJ5dGVcbiAgICAvLyAgICAgICAgICAgICAgIGVuY29kaW5nIG9mIDAyMDguIExlYWQgYnl0ZSByYW5nZXM6IDB4ODEtMHg5RiwgMHhFMC0weEVGOyBUcmFpbCBieXRlIHJhbmdlczogMHg0MC0weDdFLCAweDgwLTB4OUUsIDB4OUYtMHhGQy5cbiAgICAvLyAgICAgICAgICAgICAgIFdpbmRvd3MgQ1A5MzIgaXMgYSBzdXBlcnNldCBvZiBTaGlmdF9KSVMuIFNvbWUgY29tcGFuaWVzIGFkZGVkIG1vcmUgY2hhcnMsIG5vdGFibHkgS0RESS5cbiAgICAvLyAgKiBFVUMtSlA6ICAgIFVwIHRvIDMgYnl0ZXMgcGVyIGNoYXJhY3Rlci4gVXNlZCBtb3N0bHkgb24gKm5peGVzLlxuICAgIC8vICAgICAgICAgICAgICAgMHgwMC0weDdGICAgICAgIC0gbG93ZXIgcGFydCBvZiAwMjAxXG4gICAgLy8gICAgICAgICAgICAgICAweDhFLCAweEExLTB4REYgLSB1cHBlciBwYXJ0IG9mIDAyMDFcbiAgICAvLyAgICAgICAgICAgICAgICgweEExLTB4RkUpeDIgICAtIDAyMDggcGxhbmUgKDk0eDk0KS5cbiAgICAvLyAgICAgICAgICAgICAgIDB4OEYsICgweEExLTB4RkUpeDIgLSAwMjEyIHBsYW5lICg5NHg5NCkuXG4gICAgLy8gICogSklTIFggMjA4OiA3LWJpdCwgZGlyZWN0IGVuY29kaW5nIG9mIDAyMDguIEJ5dGUgcmFuZ2VzOiAweDIxLTB4N0UgKDk0IHZhbHVlcykuIFVuY29tbW9uLlxuICAgIC8vICAgICAgICAgICAgICAgVXNlZCBhcy1pcyBpbiBJU08yMDIyIGZhbWlseS5cbiAgICAvLyAgKiBJU08yMDIyLUpQOiBTdGF0ZWZ1bCBlbmNvZGluZywgd2l0aCBlc2NhcGUgc2VxdWVuY2VzIHRvIHN3aXRjaCBiZXR3ZWVuIEFTQ0lJLCBcbiAgICAvLyAgICAgICAgICAgICAgICAwMjAxLTE5NzYgUm9tYW4sIDAyMDgtMTk3OCwgMDIwOC0xOTgzLlxuICAgIC8vICAqIElTTzIwMjItSlAtMTogQWRkcyBlc2Mgc2VxIGZvciAwMjEyLTE5OTAuXG4gICAgLy8gICogSVNPMjAyMi1KUC0yOiBBZGRzIGVzYyBzZXEgZm9yIEdCMjMxMy0xOTgwLCBLU1gxMDAxLTE5OTIsIElTTzg4NTktMSwgSVNPODg1OS03LlxuICAgIC8vICAqIElTTzIwMjItSlAtMzogQWRkcyBlc2Mgc2VxIGZvciAwMjAxLTE5NzYgS2FuYSBzZXQsIDAyMTMtMjAwMCBQbGFuZXMgMSwgMi5cbiAgICAvLyAgKiBJU08yMDIyLUpQLTIwMDQ6IEFkZHMgMDIxMy0yMDA0IFBsYW5lIDEuXG4gICAgLy9cbiAgICAvLyBBZnRlciBKSVMgWCAwMjEzIGFwcGVhcmVkLCBTaGlmdF9KSVMtMjAwNCwgRVVDLUpJU1gwMjEzIGFuZCBJU08yMDIyLUpQLTIwMDQgZm9sbG93ZWQsIHdpdGgganVzdCBjaGFuZ2luZyB0aGUgcGxhbmVzLlxuICAgIC8vXG4gICAgLy8gT3ZlcmFsbCwgaXQgc2VlbXMgdGhhdCBpdCdzIGEgbWVzcyA6KCBodHRwOi8vd3d3OC5wbGFsYS5vci5qcC90a3Vib3RhMS91bmljb2RlLXN5bWJvbHMtbWFwMi5odG1sXG5cbiAgICAnc2hpZnRqaXMnOiB7XG4gICAgICAgIHR5cGU6ICdfZGJjcycsXG4gICAgICAgIHRhYmxlOiBmdW5jdGlvbigpIHsgcmV0dXJuIHJlcXVpcmUoJy4vdGFibGVzL3NoaWZ0amlzLmpzb24nKSB9LFxuICAgICAgICBlbmNvZGVBZGQ6IHsnXFx1MDBhNSc6IDB4NUMsICdcXHUyMDNFJzogMHg3RX0sXG4gICAgICAgIGVuY29kZVNraXBWYWxzOiBbe2Zyb206IDB4RUQ0MCwgdG86IDB4Rjk0MH1dLFxuICAgIH0sXG4gICAgJ2Nzc2hpZnRqaXMnOiAnc2hpZnRqaXMnLFxuICAgICdtc2thbmppJzogJ3NoaWZ0amlzJyxcbiAgICAnc2ppcyc6ICdzaGlmdGppcycsXG4gICAgJ3dpbmRvd3MzMWonOiAnc2hpZnRqaXMnLFxuICAgICdtczMxaic6ICdzaGlmdGppcycsXG4gICAgJ3hzamlzJzogJ3NoaWZ0amlzJyxcbiAgICAnd2luZG93czkzMic6ICdzaGlmdGppcycsXG4gICAgJ21zOTMyJzogJ3NoaWZ0amlzJyxcbiAgICAnOTMyJzogJ3NoaWZ0amlzJyxcbiAgICAnY3A5MzInOiAnc2hpZnRqaXMnLFxuXG4gICAgJ2V1Y2pwJzoge1xuICAgICAgICB0eXBlOiAnX2RiY3MnLFxuICAgICAgICB0YWJsZTogZnVuY3Rpb24oKSB7IHJldHVybiByZXF1aXJlKCcuL3RhYmxlcy9ldWNqcC5qc29uJykgfSxcbiAgICAgICAgZW5jb2RlQWRkOiB7J1xcdTAwYTUnOiAweDVDLCAnXFx1MjAzRSc6IDB4N0V9LFxuICAgIH0sXG5cbiAgICAvLyBUT0RPOiBLRERJIGV4dGVuc2lvbiB0byBTaGlmdF9KSVNcbiAgICAvLyBUT0RPOiBJQk0gQ0NTSUQgOTQyID0gQ1A5MzIsIGJ1dCBGMC1GOSBjdXN0b20gY2hhcnMgYW5kIG90aGVyIGNoYXIgY2hhbmdlcy5cbiAgICAvLyBUT0RPOiBJQk0gQ0NTSUQgOTQzID0gU2hpZnRfSklTID0gQ1A5MzIgd2l0aCBvcmlnaW5hbCBTaGlmdF9KSVMgbG93ZXIgMTI4IGNoYXJzLlxuXG5cbiAgICAvLyA9PSBDaGluZXNlL0dCSyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgLy8gaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9HQktcbiAgICAvLyBXZSBtb3N0bHkgaW1wbGVtZW50IFczQyByZWNvbW1lbmRhdGlvbjogaHR0cHM6Ly93d3cudzMub3JnL1RSL2VuY29kaW5nLyNnYmstZW5jb2RlclxuXG4gICAgLy8gT2xkZXN0IEdCMjMxMiAoMTk4MSwgfjc2MDAgY2hhcnMpIGlzIGEgc3Vic2V0IG9mIENQOTM2XG4gICAgJ2diMjMxMic6ICdjcDkzNicsXG4gICAgJ2diMjMxMjgwJzogJ2NwOTM2JyxcbiAgICAnZ2IyMzEyMTk4MCc6ICdjcDkzNicsXG4gICAgJ2NzZ2IyMzEyJzogJ2NwOTM2JyxcbiAgICAnY3Npc281OGdiMjMxMjgwJzogJ2NwOTM2JyxcbiAgICAnZXVjY24nOiAnY3A5MzYnLFxuXG4gICAgLy8gTWljcm9zb2Z0J3MgQ1A5MzYgaXMgYSBzdWJzZXQgYW5kIGFwcHJveGltYXRpb24gb2YgR0JLLlxuICAgICd3aW5kb3dzOTM2JzogJ2NwOTM2JyxcbiAgICAnbXM5MzYnOiAnY3A5MzYnLFxuICAgICc5MzYnOiAnY3A5MzYnLFxuICAgICdjcDkzNic6IHtcbiAgICAgICAgdHlwZTogJ19kYmNzJyxcbiAgICAgICAgdGFibGU6IGZ1bmN0aW9uKCkgeyByZXR1cm4gcmVxdWlyZSgnLi90YWJsZXMvY3A5MzYuanNvbicpIH0sXG4gICAgfSxcblxuICAgIC8vIEdCSyAofjIyMDAwIGNoYXJzKSBpcyBhbiBleHRlbnNpb24gb2YgQ1A5MzYgdGhhdCBhZGRlZCB1c2VyLW1hcHBlZCBjaGFycyBhbmQgc29tZSBvdGhlci5cbiAgICAnZ2JrJzoge1xuICAgICAgICB0eXBlOiAnX2RiY3MnLFxuICAgICAgICB0YWJsZTogZnVuY3Rpb24oKSB7IHJldHVybiByZXF1aXJlKCcuL3RhYmxlcy9jcDkzNi5qc29uJykuY29uY2F0KHJlcXVpcmUoJy4vdGFibGVzL2diay1hZGRlZC5qc29uJykpIH0sXG4gICAgfSxcbiAgICAneGdiayc6ICdnYmsnLFxuICAgICdpc29pcjU4JzogJ2diaycsXG5cbiAgICAvLyBHQjE4MDMwIGlzIGFuIGFsZ29yaXRobWljIGV4dGVuc2lvbiBvZiBHQksuXG4gICAgLy8gTWFpbiBzb3VyY2U6IGh0dHBzOi8vd3d3LnczLm9yZy9UUi9lbmNvZGluZy8jZ2JrLWVuY29kZXJcbiAgICAvLyBodHRwOi8vaWN1LXByb2plY3Qub3JnL2RvY3MvcGFwZXJzL2diMTgwMzAuaHRtbFxuICAgIC8vIGh0dHA6Ly9zb3VyY2UuaWN1LXByb2plY3Qub3JnL3JlcG9zL2ljdS9kYXRhL3RydW5rL2NoYXJzZXQvZGF0YS94bWwvZ2ItMTgwMzAtMjAwMC54bWxcbiAgICAvLyBodHRwOi8vd3d3LmtobmdhaS5jb20vY2hpbmVzZS9jaGFybWFwL3RibGdiay5waHA/cGFnZT0wXG4gICAgJ2diMTgwMzAnOiB7XG4gICAgICAgIHR5cGU6ICdfZGJjcycsXG4gICAgICAgIHRhYmxlOiBmdW5jdGlvbigpIHsgcmV0dXJuIHJlcXVpcmUoJy4vdGFibGVzL2NwOTM2Lmpzb24nKS5jb25jYXQocmVxdWlyZSgnLi90YWJsZXMvZ2JrLWFkZGVkLmpzb24nKSkgfSxcbiAgICAgICAgZ2IxODAzMDogZnVuY3Rpb24oKSB7IHJldHVybiByZXF1aXJlKCcuL3RhYmxlcy9nYjE4MDMwLXJhbmdlcy5qc29uJykgfSxcbiAgICAgICAgZW5jb2RlU2tpcFZhbHM6IFsweDgwXSxcbiAgICAgICAgZW5jb2RlQWRkOiB7J1x1MjBBQyc6IDB4QTJFM30sXG4gICAgfSxcblxuICAgICdjaGluZXNlJzogJ2diMTgwMzAnLFxuXG5cbiAgICAvLyA9PSBLb3JlYW4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgLy8gRVVDLUtSLCBLU19DXzU2MDEgYW5kIEtTIFggMTAwMSBhcmUgZXhhY3RseSB0aGUgc2FtZS5cbiAgICAnd2luZG93czk0OSc6ICdjcDk0OScsXG4gICAgJ21zOTQ5JzogJ2NwOTQ5JyxcbiAgICAnOTQ5JzogJ2NwOTQ5JyxcbiAgICAnY3A5NDknOiB7XG4gICAgICAgIHR5cGU6ICdfZGJjcycsXG4gICAgICAgIHRhYmxlOiBmdW5jdGlvbigpIHsgcmV0dXJuIHJlcXVpcmUoJy4vdGFibGVzL2NwOTQ5Lmpzb24nKSB9LFxuICAgIH0sXG5cbiAgICAnY3NldWNrcic6ICdjcDk0OScsXG4gICAgJ2Nza3NjNTYwMTE5ODcnOiAnY3A5NDknLFxuICAgICdldWNrcic6ICdjcDk0OScsXG4gICAgJ2lzb2lyMTQ5JzogJ2NwOTQ5JyxcbiAgICAna29yZWFuJzogJ2NwOTQ5JyxcbiAgICAna3NjNTYwMTE5ODcnOiAnY3A5NDknLFxuICAgICdrc2M1NjAxMTk4OSc6ICdjcDk0OScsXG4gICAgJ2tzYzU2MDEnOiAnY3A5NDknLFxuXG5cbiAgICAvLyA9PSBCaWc1L1RhaXdhbi9Ib25nIEtvbmcgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgLy8gVGhlcmUgYXJlIGxvdHMgb2YgdGFibGVzIGZvciBCaWc1IGFuZCBjcDk1MC4gUGxlYXNlIHNlZSB0aGUgZm9sbG93aW5nIGxpbmtzIGZvciBoaXN0b3J5OlxuICAgIC8vIGh0dHA6Ly9tb3p0dy5vcmcvZG9jcy9iaWc1LyAgaHR0cDovL3d3dy5oYWlibGUuZGUvYnJ1bm8vY2hhcnNldHMvY29udmVyc2lvbi10YWJsZXMvQmlnNS5odG1sXG4gICAgLy8gVmFyaWF0aW9ucywgaW4gcm91Z2hseSBudW1iZXIgb2YgZGVmaW5lZCBjaGFyczpcbiAgICAvLyAgKiBXaW5kb3dzIENQIDk1MDogTWljcm9zb2Z0IHZhcmlhbnQgb2YgQmlnNS4gQ2Fub25pY2FsOiBodHRwOi8vd3d3LnVuaWNvZGUub3JnL1B1YmxpYy9NQVBQSU5HUy9WRU5ET1JTL01JQ1NGVC9XSU5ET1dTL0NQOTUwLlRYVFxuICAgIC8vICAqIFdpbmRvd3MgQ1AgOTUxOiBNaWNyb3NvZnQgdmFyaWFudCBvZiBCaWc1LUhLU0NTLTIwMDEuIFNlZW1zIHRvIGJlIG5ldmVyIHB1YmxpYy4gaHR0cDovL21lLmFiZWxjaGV1bmcub3JnL2FydGljbGVzL3Jlc2VhcmNoL3doYXQtaXMtY3A5NTEvXG4gICAgLy8gICogQmlnNS0yMDAzIChUYWl3YW4gc3RhbmRhcmQpIGFsbW9zdCBzdXBlcnNldCBvZiBjcDk1MC5cbiAgICAvLyAgKiBVbmljb2RlLWF0LW9uIChVQU8pIC8gTW96aWxsYSAxLjguIEZhbGxpbmcgb3V0IG9mIHVzZSBvbiB0aGUgV2ViLiBOb3Qgc3VwcG9ydGVkIGJ5IG90aGVyIGJyb3dzZXJzLlxuICAgIC8vICAqIEJpZzUtSEtTQ1MgKC0yMDAxLCAtMjAwNCwgLTIwMDgpLiBIb25nIEtvbmcgc3RhbmRhcmQuIFxuICAgIC8vICAgIG1hbnkgdW5pY29kZSBjb2RlIHBvaW50cyBtb3ZlZCBmcm9tIFBVQSB0byBTdXBwbGVtZW50YXJ5IHBsYW5lIChVKzJYWFhYKSBvdmVyIHRoZSB5ZWFycy5cbiAgICAvLyAgICBQbHVzLCBpdCBoYXMgNCBjb21iaW5pbmcgc2VxdWVuY2VzLlxuICAgIC8vICAgIFNlZW1zIHRoYXQgTW96aWxsYSByZWZ1c2VkIHRvIHN1cHBvcnQgaXQgZm9yIDEwIHlycy4gaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYyNDMxIGh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTMxMDI5OVxuICAgIC8vICAgIGJlY2F1c2UgYmlnNS1oa3NjcyBpcyB0aGUgb25seSBlbmNvZGluZyB0byBpbmNsdWRlIGFzdHJhbCBjaGFyYWN0ZXJzIGluIG5vbi1hbGdvcml0aG1pYyB3YXkuXG4gICAgLy8gICAgSW1wbGVtZW50YXRpb25zIGFyZSBub3QgY29uc2lzdGVudCB3aXRoaW4gYnJvd3NlcnM7IHNvbWV0aW1lcyBsYWJlbGVkIGFzIGp1c3QgYmlnNS5cbiAgICAvLyAgICBNUyBJbnRlcm5ldCBFeHBsb3JlciBzd2l0Y2hlcyBmcm9tIGJpZzUgdG8gYmlnNS1oa3NjcyB3aGVuIGEgcGF0Y2ggYXBwbGllZC5cbiAgICAvLyAgICBHcmVhdCBkaXNjdXNzaW9uICYgcmVjYXAgb2Ygd2hhdCdzIGdvaW5nIG9uIGh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTkxMjQ3MCNjMzFcbiAgICAvLyAgICBJbiB0aGUgZW5jb2RlciwgaXQgbWlnaHQgbWFrZSBzZW5zZSB0byBzdXBwb3J0IGVuY29kaW5nIG9sZCBQVUEgbWFwcGluZ3MgdG8gQmlnNSBieXRlcyBzZXEtcy5cbiAgICAvLyAgICBPZmZpY2lhbCBzcGVjOiBodHRwOi8vd3d3Lm9nY2lvLmdvdi5oay9lbi9idXNpbmVzcy90ZWNoX3Byb21vdGlvbi9jY2xpL3Rlcm1zL2RvYy8yMDAzY21wXzIwMDgudHh0XG4gICAgLy8gICAgICAgICAgICAgICAgICAgaHR0cDovL3d3dy5vZ2Npby5nb3YuaGsvdGMvYnVzaW5lc3MvdGVjaF9wcm9tb3Rpb24vY2NsaS90ZXJtcy9kb2MvaGtzY3MtMjAwOC1iaWc1LWlzby50eHRcbiAgICAvLyBcbiAgICAvLyBDdXJyZW50IHVuZGVyc3RhbmRpbmcgb2YgaG93IHRvIGRlYWwgd2l0aCBCaWc1KC1IS1NDUykgaXMgaW4gdGhlIEVuY29kaW5nIFN0YW5kYXJkLCBodHRwOi8vZW5jb2Rpbmcuc3BlYy53aGF0d2cub3JnLyNiaWc1LWVuY29kZXJcbiAgICAvLyBVbmljb2RlIG1hcHBpbmcgKGh0dHA6Ly93d3cudW5pY29kZS5vcmcvUHVibGljL01BUFBJTkdTL09CU09MRVRFL0VBU1RBU0lBL09USEVSL0JJRzUuVFhUKSBpcyBzYWlkIHRvIGJlIHdyb25nLlxuXG4gICAgJ3dpbmRvd3M5NTAnOiAnY3A5NTAnLFxuICAgICdtczk1MCc6ICdjcDk1MCcsXG4gICAgJzk1MCc6ICdjcDk1MCcsXG4gICAgJ2NwOTUwJzoge1xuICAgICAgICB0eXBlOiAnX2RiY3MnLFxuICAgICAgICB0YWJsZTogZnVuY3Rpb24oKSB7IHJldHVybiByZXF1aXJlKCcuL3RhYmxlcy9jcDk1MC5qc29uJykgfSxcbiAgICB9LFxuXG4gICAgLy8gQmlnNSBoYXMgbWFueSB2YXJpYXRpb25zIGFuZCBpcyBhbiBleHRlbnNpb24gb2YgY3A5NTAuIFdlIHVzZSBFbmNvZGluZyBTdGFuZGFyZCdzIGFzIGEgY29uc2Vuc3VzLlxuICAgICdiaWc1JzogJ2JpZzVoa3NjcycsXG4gICAgJ2JpZzVoa3Njcyc6IHtcbiAgICAgICAgdHlwZTogJ19kYmNzJyxcbiAgICAgICAgdGFibGU6IGZ1bmN0aW9uKCkgeyByZXR1cm4gcmVxdWlyZSgnLi90YWJsZXMvY3A5NTAuanNvbicpLmNvbmNhdChyZXF1aXJlKCcuL3RhYmxlcy9iaWc1LWFkZGVkLmpzb24nKSkgfSxcbiAgICAgICAgZW5jb2RlU2tpcFZhbHM6IFtcbiAgICAgICAgICAgIC8vIEFsdGhvdWdoIEVuY29kaW5nIFN0YW5kYXJkIHNheXMgd2Ugc2hvdWxkIGF2b2lkIGVuY29kaW5nIHRvIEhLU0NTIGFyZWEgKFNlZSBTdGVwIDEgb2ZcbiAgICAgICAgICAgIC8vIGh0dHBzOi8vZW5jb2Rpbmcuc3BlYy53aGF0d2cub3JnLyNpbmRleC1iaWc1LXBvaW50ZXIpLCB3ZSBzdGlsbCBkbyBpdCB0byBpbmNyZWFzZSBjb21wYXRpYmlsaXR5IHdpdGggSUNVLlxuICAgICAgICAgICAgLy8gQnV0IGlmIGEgc2luZ2xlIHVuaWNvZGUgcG9pbnQgY2FuIGJlIGVuY29kZWQgYm90aCBhcyBIS1NDUyBhbmQgcmVndWxhciBCaWc1LCB3ZSBwcmVmZXIgdGhlIGxhdHRlci5cbiAgICAgICAgICAgIDB4OGU2OSwgMHg4ZTZmLCAweDhlN2UsIDB4OGVhYiwgMHg4ZWI0LCAweDhlY2QsIDB4OGVkMCwgMHg4ZjU3LCAweDhmNjksIDB4OGY2ZSwgMHg4ZmNiLCAweDhmZmUsXG4gICAgICAgICAgICAweDkwNmQsIDB4OTA3YSwgMHg5MGM0LCAweDkwZGMsIDB4OTBmMSwgMHg5MWJmLCAweDkyYWYsIDB4OTJiMCwgMHg5MmIxLCAweDkyYjIsIDB4OTJkMSwgMHg5NDQ3LCAweDk0Y2EsXG4gICAgICAgICAgICAweDk1ZDksIDB4OTZmYywgMHg5OTc1LCAweDliNzYsIDB4OWI3OCwgMHg5YjdiLCAweDliYzYsIDB4OWJkZSwgMHg5YmVjLCAweDliZjYsIDB4OWM0MiwgMHg5YzUzLCAweDljNjIsXG4gICAgICAgICAgICAweDljNjgsIDB4OWM2YiwgMHg5Yzc3LCAweDljYmMsIDB4OWNiZCwgMHg5Y2QwLCAweDlkNTcsIDB4OWQ1YSwgMHg5ZGM0LCAweDlkZWYsIDB4OWRmYiwgMHg5ZWE5LCAweDllZWYsXG4gICAgICAgICAgICAweDllZmQsIDB4OWY2MCwgMHg5ZmNiLCAweGEwNzcsIDB4YTBkYywgMHhhMGRmLCAweDhmY2MsIDB4OTJjOCwgMHg5NjQ0LCAweDk2ZWQsXG5cbiAgICAgICAgICAgIC8vIFN0ZXAgMiBvZiBodHRwczovL2VuY29kaW5nLnNwZWMud2hhdHdnLm9yZy8jaW5kZXgtYmlnNS1wb2ludGVyOiBVc2UgbGFzdCBwb2ludGVyIGZvciBVKzI1NTAsIFUrMjU1RSwgVSsyNTYxLCBVKzI1NkEsIFUrNTM0MSwgb3IgVSs1MzQ1XG4gICAgICAgICAgICAweGEyYTQsIDB4YTJhNSwgMHhhMmE3LCAweGEyYTYsIDB4YTJjYywgMHhhMmNlLFxuICAgICAgICBdLFxuICAgIH0sXG5cbiAgICAnY25iaWc1JzogJ2JpZzVoa3NjcycsXG4gICAgJ2NzYmlnNSc6ICdiaWc1aGtzY3MnLFxuICAgICd4eGJpZzUnOiAnYmlnNWhrc2NzJyxcbn07XG4iLCAiXCJ1c2Ugc3RyaWN0XCI7XG5cbi8vIFVwZGF0ZSB0aGlzIGFycmF5IGlmIHlvdSBhZGQvcmVuYW1lL3JlbW92ZSBmaWxlcyBpbiB0aGlzIGRpcmVjdG9yeS5cbi8vIFdlIHN1cHBvcnQgQnJvd3NlcmlmeSBieSBza2lwcGluZyBhdXRvbWF0aWMgbW9kdWxlIGRpc2NvdmVyeSBhbmQgcmVxdWlyaW5nIG1vZHVsZXMgZGlyZWN0bHkuXG52YXIgbW9kdWxlcyA9IFtcbiAgICByZXF1aXJlKFwiLi9pbnRlcm5hbFwiKSxcbiAgICByZXF1aXJlKFwiLi91dGYzMlwiKSxcbiAgICByZXF1aXJlKFwiLi91dGYxNlwiKSxcbiAgICByZXF1aXJlKFwiLi91dGY3XCIpLFxuICAgIHJlcXVpcmUoXCIuL3NiY3MtY29kZWNcIiksXG4gICAgcmVxdWlyZShcIi4vc2Jjcy1kYXRhXCIpLFxuICAgIHJlcXVpcmUoXCIuL3NiY3MtZGF0YS1nZW5lcmF0ZWRcIiksXG4gICAgcmVxdWlyZShcIi4vZGJjcy1jb2RlY1wiKSxcbiAgICByZXF1aXJlKFwiLi9kYmNzLWRhdGFcIiksXG5dO1xuXG4vLyBQdXQgYWxsIGVuY29kaW5nL2FsaWFzL2NvZGVjIGRlZmluaXRpb25zIHRvIHNpbmdsZSBvYmplY3QgYW5kIGV4cG9ydCBpdC5cbmZvciAodmFyIGkgPSAwOyBpIDwgbW9kdWxlcy5sZW5ndGg7IGkrKykge1xuICAgIHZhciBtb2R1bGUgPSBtb2R1bGVzW2ldO1xuICAgIGZvciAodmFyIGVuYyBpbiBtb2R1bGUpXG4gICAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobW9kdWxlLCBlbmMpKVxuICAgICAgICAgICAgZXhwb3J0c1tlbmNdID0gbW9kdWxlW2VuY107XG59XG4iLCAiXCJ1c2Ugc3RyaWN0XCI7XG5cbnZhciBCdWZmZXIgPSByZXF1aXJlKFwic2FmZXItYnVmZmVyXCIpLkJ1ZmZlcjtcblxuLy8gTk9URTogRHVlIHRvICdzdHJlYW0nIG1vZHVsZSBiZWluZyBwcmV0dHkgbGFyZ2UgKH4xMDBLYiwgc2lnbmlmaWNhbnQgaW4gYnJvd3NlciBlbnZpcm9ubWVudHMpLCBcbi8vIHdlIG9wdCB0byBkZXBlbmRlbmN5LWluamVjdCBpdCBpbnN0ZWFkIG9mIGNyZWF0aW5nIGEgaGFyZCBkZXBlbmRlbmN5LlxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbihzdHJlYW1fbW9kdWxlKSB7XG4gICAgdmFyIFRyYW5zZm9ybSA9IHN0cmVhbV9tb2R1bGUuVHJhbnNmb3JtO1xuXG4gICAgLy8gPT0gRW5jb2RlciBzdHJlYW0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gICAgZnVuY3Rpb24gSWNvbnZMaXRlRW5jb2RlclN0cmVhbShjb252LCBvcHRpb25zKSB7XG4gICAgICAgIHRoaXMuY29udiA9IGNvbnY7XG4gICAgICAgIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9O1xuICAgICAgICBvcHRpb25zLmRlY29kZVN0cmluZ3MgPSBmYWxzZTsgLy8gV2UgYWNjZXB0IG9ubHkgc3RyaW5ncywgc28gd2UgZG9uJ3QgbmVlZCB0byBkZWNvZGUgdGhlbS5cbiAgICAgICAgVHJhbnNmb3JtLmNhbGwodGhpcywgb3B0aW9ucyk7XG4gICAgfVxuXG4gICAgSWNvbnZMaXRlRW5jb2RlclN0cmVhbS5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKFRyYW5zZm9ybS5wcm90b3R5cGUsIHtcbiAgICAgICAgY29uc3RydWN0b3I6IHsgdmFsdWU6IEljb252TGl0ZUVuY29kZXJTdHJlYW0gfVxuICAgIH0pO1xuXG4gICAgSWNvbnZMaXRlRW5jb2RlclN0cmVhbS5wcm90b3R5cGUuX3RyYW5zZm9ybSA9IGZ1bmN0aW9uKGNodW5rLCBlbmNvZGluZywgZG9uZSkge1xuICAgICAgICBpZiAodHlwZW9mIGNodW5rICE9ICdzdHJpbmcnKVxuICAgICAgICAgICAgcmV0dXJuIGRvbmUobmV3IEVycm9yKFwiSWNvbnYgZW5jb2Rpbmcgc3RyZWFtIG5lZWRzIHN0cmluZ3MgYXMgaXRzIGlucHV0LlwiKSk7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB2YXIgcmVzID0gdGhpcy5jb252LndyaXRlKGNodW5rKTtcbiAgICAgICAgICAgIGlmIChyZXMgJiYgcmVzLmxlbmd0aCkgdGhpcy5wdXNoKHJlcyk7XG4gICAgICAgICAgICBkb25lKCk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIGRvbmUoZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBJY29udkxpdGVFbmNvZGVyU3RyZWFtLnByb3RvdHlwZS5fZmx1c2ggPSBmdW5jdGlvbihkb25lKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB2YXIgcmVzID0gdGhpcy5jb252LmVuZCgpO1xuICAgICAgICAgICAgaWYgKHJlcyAmJiByZXMubGVuZ3RoKSB0aGlzLnB1c2gocmVzKTtcbiAgICAgICAgICAgIGRvbmUoKTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoZSkge1xuICAgICAgICAgICAgZG9uZShlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEljb252TGl0ZUVuY29kZXJTdHJlYW0ucHJvdG90eXBlLmNvbGxlY3QgPSBmdW5jdGlvbihjYikge1xuICAgICAgICB2YXIgY2h1bmtzID0gW107XG4gICAgICAgIHRoaXMub24oJ2Vycm9yJywgY2IpO1xuICAgICAgICB0aGlzLm9uKCdkYXRhJywgZnVuY3Rpb24oY2h1bmspIHsgY2h1bmtzLnB1c2goY2h1bmspOyB9KTtcbiAgICAgICAgdGhpcy5vbignZW5kJywgZnVuY3Rpb24oKSB7XG4gICAgICAgICAgICBjYihudWxsLCBCdWZmZXIuY29uY2F0KGNodW5rcykpO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG5cbiAgICAvLyA9PSBEZWNvZGVyIHN0cmVhbSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgICBmdW5jdGlvbiBJY29udkxpdGVEZWNvZGVyU3RyZWFtKGNvbnYsIG9wdGlvbnMpIHtcbiAgICAgICAgdGhpcy5jb252ID0gY29udjtcbiAgICAgICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307XG4gICAgICAgIG9wdGlvbnMuZW5jb2RpbmcgPSB0aGlzLmVuY29kaW5nID0gJ3V0ZjgnOyAvLyBXZSBvdXRwdXQgc3RyaW5ncy5cbiAgICAgICAgVHJhbnNmb3JtLmNhbGwodGhpcywgb3B0aW9ucyk7XG4gICAgfVxuXG4gICAgSWNvbnZMaXRlRGVjb2RlclN0cmVhbS5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKFRyYW5zZm9ybS5wcm90b3R5cGUsIHtcbiAgICAgICAgY29uc3RydWN0b3I6IHsgdmFsdWU6IEljb252TGl0ZURlY29kZXJTdHJlYW0gfVxuICAgIH0pO1xuXG4gICAgSWNvbnZMaXRlRGVjb2RlclN0cmVhbS5wcm90b3R5cGUuX3RyYW5zZm9ybSA9IGZ1bmN0aW9uKGNodW5rLCBlbmNvZGluZywgZG9uZSkge1xuICAgICAgICBpZiAoIUJ1ZmZlci5pc0J1ZmZlcihjaHVuaykgJiYgIShjaHVuayBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpKVxuICAgICAgICAgICAgcmV0dXJuIGRvbmUobmV3IEVycm9yKFwiSWNvbnYgZGVjb2Rpbmcgc3RyZWFtIG5lZWRzIGJ1ZmZlcnMgYXMgaXRzIGlucHV0LlwiKSk7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB2YXIgcmVzID0gdGhpcy5jb252LndyaXRlKGNodW5rKTtcbiAgICAgICAgICAgIGlmIChyZXMgJiYgcmVzLmxlbmd0aCkgdGhpcy5wdXNoKHJlcywgdGhpcy5lbmNvZGluZyk7XG4gICAgICAgICAgICBkb25lKCk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIGRvbmUoZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBJY29udkxpdGVEZWNvZGVyU3RyZWFtLnByb3RvdHlwZS5fZmx1c2ggPSBmdW5jdGlvbihkb25lKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB2YXIgcmVzID0gdGhpcy5jb252LmVuZCgpO1xuICAgICAgICAgICAgaWYgKHJlcyAmJiByZXMubGVuZ3RoKSB0aGlzLnB1c2gocmVzLCB0aGlzLmVuY29kaW5nKTsgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICBkb25lKCk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIGRvbmUoZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBJY29udkxpdGVEZWNvZGVyU3RyZWFtLnByb3RvdHlwZS5jb2xsZWN0ID0gZnVuY3Rpb24oY2IpIHtcbiAgICAgICAgdmFyIHJlcyA9ICcnO1xuICAgICAgICB0aGlzLm9uKCdlcnJvcicsIGNiKTtcbiAgICAgICAgdGhpcy5vbignZGF0YScsIGZ1bmN0aW9uKGNodW5rKSB7IHJlcyArPSBjaHVuazsgfSk7XG4gICAgICAgIHRoaXMub24oJ2VuZCcsIGZ1bmN0aW9uKCkge1xuICAgICAgICAgICAgY2IobnVsbCwgcmVzKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAgIEljb252TGl0ZUVuY29kZXJTdHJlYW06IEljb252TGl0ZUVuY29kZXJTdHJlYW0sXG4gICAgICAgIEljb252TGl0ZURlY29kZXJTdHJlYW06IEljb252TGl0ZURlY29kZXJTdHJlYW0sXG4gICAgfTtcbn07XG4iLCAiXCJ1c2Ugc3RyaWN0XCI7XG5cbnZhciBCdWZmZXIgPSByZXF1aXJlKFwic2FmZXItYnVmZmVyXCIpLkJ1ZmZlcjtcblxudmFyIGJvbUhhbmRsaW5nID0gcmVxdWlyZShcIi4vYm9tLWhhbmRsaW5nXCIpLFxuICAgIGljb252ID0gbW9kdWxlLmV4cG9ydHM7XG5cbi8vIEFsbCBjb2RlY3MgYW5kIGFsaWFzZXMgYXJlIGtlcHQgaGVyZSwga2V5ZWQgYnkgZW5jb2RpbmcgbmFtZS9hbGlhcy5cbi8vIFRoZXkgYXJlIGxhenkgbG9hZGVkIGluIGBpY29udi5nZXRDb2RlY2AgZnJvbSBgZW5jb2RpbmdzL2luZGV4LmpzYC5cbmljb252LmVuY29kaW5ncyA9IG51bGw7XG5cbi8vIENoYXJhY3RlcnMgZW1pdHRlZCBpbiBjYXNlIG9mIGVycm9yLlxuaWNvbnYuZGVmYXVsdENoYXJVbmljb2RlID0gJ1x1RkZGRCc7XG5pY29udi5kZWZhdWx0Q2hhclNpbmdsZUJ5dGUgPSAnPyc7XG5cbi8vIFB1YmxpYyBBUEkuXG5pY29udi5lbmNvZGUgPSBmdW5jdGlvbiBlbmNvZGUoc3RyLCBlbmNvZGluZywgb3B0aW9ucykge1xuICAgIHN0ciA9IFwiXCIgKyAoc3RyIHx8IFwiXCIpOyAvLyBFbnN1cmUgc3RyaW5nLlxuXG4gICAgdmFyIGVuY29kZXIgPSBpY29udi5nZXRFbmNvZGVyKGVuY29kaW5nLCBvcHRpb25zKTtcblxuICAgIHZhciByZXMgPSBlbmNvZGVyLndyaXRlKHN0cik7XG4gICAgdmFyIHRyYWlsID0gZW5jb2Rlci5lbmQoKTtcbiAgICBcbiAgICByZXR1cm4gKHRyYWlsICYmIHRyYWlsLmxlbmd0aCA+IDApID8gQnVmZmVyLmNvbmNhdChbcmVzLCB0cmFpbF0pIDogcmVzO1xufVxuXG5pY29udi5kZWNvZGUgPSBmdW5jdGlvbiBkZWNvZGUoYnVmLCBlbmNvZGluZywgb3B0aW9ucykge1xuICAgIGlmICh0eXBlb2YgYnVmID09PSAnc3RyaW5nJykge1xuICAgICAgICBpZiAoIWljb252LnNraXBEZWNvZGVXYXJuaW5nKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKCdJY29udi1saXRlIHdhcm5pbmc6IGRlY29kZSgpLWluZyBzdHJpbmdzIGlzIGRlcHJlY2F0ZWQuIFJlZmVyIHRvIGh0dHBzOi8vZ2l0aHViLmNvbS9hc2h0dWNoa2luL2ljb252LWxpdGUvd2lraS9Vc2UtQnVmZmVycy13aGVuLWRlY29kaW5nJyk7XG4gICAgICAgICAgICBpY29udi5za2lwRGVjb2RlV2FybmluZyA9IHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICBidWYgPSBCdWZmZXIuZnJvbShcIlwiICsgKGJ1ZiB8fCBcIlwiKSwgXCJiaW5hcnlcIik7IC8vIEVuc3VyZSBidWZmZXIuXG4gICAgfVxuXG4gICAgdmFyIGRlY29kZXIgPSBpY29udi5nZXREZWNvZGVyKGVuY29kaW5nLCBvcHRpb25zKTtcblxuICAgIHZhciByZXMgPSBkZWNvZGVyLndyaXRlKGJ1Zik7XG4gICAgdmFyIHRyYWlsID0gZGVjb2Rlci5lbmQoKTtcblxuICAgIHJldHVybiB0cmFpbCA/IChyZXMgKyB0cmFpbCkgOiByZXM7XG59XG5cbmljb252LmVuY29kaW5nRXhpc3RzID0gZnVuY3Rpb24gZW5jb2RpbmdFeGlzdHMoZW5jKSB7XG4gICAgdHJ5IHtcbiAgICAgICAgaWNvbnYuZ2V0Q29kZWMoZW5jKTtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxufVxuXG4vLyBMZWdhY3kgYWxpYXNlcyB0byBjb252ZXJ0IGZ1bmN0aW9uc1xuaWNvbnYudG9FbmNvZGluZyA9IGljb252LmVuY29kZTtcbmljb252LmZyb21FbmNvZGluZyA9IGljb252LmRlY29kZTtcblxuLy8gU2VhcmNoIGZvciBhIGNvZGVjIGluIGljb252LmVuY29kaW5ncy4gQ2FjaGUgY29kZWMgZGF0YSBpbiBpY29udi5fY29kZWNEYXRhQ2FjaGUuXG5pY29udi5fY29kZWNEYXRhQ2FjaGUgPSB7fTtcbmljb252LmdldENvZGVjID0gZnVuY3Rpb24gZ2V0Q29kZWMoZW5jb2RpbmcpIHtcbiAgICBpZiAoIWljb252LmVuY29kaW5ncylcbiAgICAgICAgaWNvbnYuZW5jb2RpbmdzID0gcmVxdWlyZShcIi4uL2VuY29kaW5nc1wiKTsgLy8gTGF6eSBsb2FkIGFsbCBlbmNvZGluZyBkZWZpbml0aW9ucy5cbiAgICBcbiAgICAvLyBDYW5vbmljYWxpemUgZW5jb2RpbmcgbmFtZTogc3RyaXAgYWxsIG5vbi1hbHBoYW51bWVyaWMgY2hhcnMgYW5kIGFwcGVuZGVkIHllYXIuXG4gICAgdmFyIGVuYyA9IGljb252Ll9jYW5vbmljYWxpemVFbmNvZGluZyhlbmNvZGluZyk7XG5cbiAgICAvLyBUcmF2ZXJzZSBpY29udi5lbmNvZGluZ3MgdG8gZmluZCBhY3R1YWwgY29kZWMuXG4gICAgdmFyIGNvZGVjT3B0aW9ucyA9IHt9O1xuICAgIHdoaWxlICh0cnVlKSB7XG4gICAgICAgIHZhciBjb2RlYyA9IGljb252Ll9jb2RlY0RhdGFDYWNoZVtlbmNdO1xuICAgICAgICBpZiAoY29kZWMpXG4gICAgICAgICAgICByZXR1cm4gY29kZWM7XG5cbiAgICAgICAgdmFyIGNvZGVjRGVmID0gaWNvbnYuZW5jb2RpbmdzW2VuY107XG5cbiAgICAgICAgc3dpdGNoICh0eXBlb2YgY29kZWNEZWYpIHtcbiAgICAgICAgICAgIGNhc2UgXCJzdHJpbmdcIjogLy8gRGlyZWN0IGFsaWFzIHRvIG90aGVyIGVuY29kaW5nLlxuICAgICAgICAgICAgICAgIGVuYyA9IGNvZGVjRGVmO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlIFwib2JqZWN0XCI6IC8vIEFsaWFzIHdpdGggb3B0aW9ucy4gQ2FuIGJlIGxheWVyZWQuXG4gICAgICAgICAgICAgICAgZm9yICh2YXIga2V5IGluIGNvZGVjRGVmKVxuICAgICAgICAgICAgICAgICAgICBjb2RlY09wdGlvbnNba2V5XSA9IGNvZGVjRGVmW2tleV07XG5cbiAgICAgICAgICAgICAgICBpZiAoIWNvZGVjT3B0aW9ucy5lbmNvZGluZ05hbWUpXG4gICAgICAgICAgICAgICAgICAgIGNvZGVjT3B0aW9ucy5lbmNvZGluZ05hbWUgPSBlbmM7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgZW5jID0gY29kZWNEZWYudHlwZTtcbiAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSBcImZ1bmN0aW9uXCI6IC8vIENvZGVjIGl0c2VsZi5cbiAgICAgICAgICAgICAgICBpZiAoIWNvZGVjT3B0aW9ucy5lbmNvZGluZ05hbWUpXG4gICAgICAgICAgICAgICAgICAgIGNvZGVjT3B0aW9ucy5lbmNvZGluZ05hbWUgPSBlbmM7XG5cbiAgICAgICAgICAgICAgICAvLyBUaGUgY29kZWMgZnVuY3Rpb24gbXVzdCBsb2FkIGFsbCB0YWJsZXMgYW5kIHJldHVybiBvYmplY3Qgd2l0aCAuZW5jb2RlciBhbmQgLmRlY29kZXIgbWV0aG9kcy5cbiAgICAgICAgICAgICAgICAvLyBJdCdsbCBiZSBjYWxsZWQgb25seSBvbmNlIChmb3IgZWFjaCBkaWZmZXJlbnQgb3B0aW9ucyBvYmplY3QpLlxuICAgICAgICAgICAgICAgIGNvZGVjID0gbmV3IGNvZGVjRGVmKGNvZGVjT3B0aW9ucywgaWNvbnYpO1xuXG4gICAgICAgICAgICAgICAgaWNvbnYuX2NvZGVjRGF0YUNhY2hlW2NvZGVjT3B0aW9ucy5lbmNvZGluZ05hbWVdID0gY29kZWM7IC8vIFNhdmUgaXQgdG8gYmUgcmV1c2VkIGxhdGVyLlxuICAgICAgICAgICAgICAgIHJldHVybiBjb2RlYztcblxuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJFbmNvZGluZyBub3QgcmVjb2duaXplZDogJ1wiICsgZW5jb2RpbmcgKyBcIicgKHNlYXJjaGVkIGFzOiAnXCIrZW5jK1wiJylcIik7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmljb252Ll9jYW5vbmljYWxpemVFbmNvZGluZyA9IGZ1bmN0aW9uKGVuY29kaW5nKSB7XG4gICAgLy8gQ2Fub25pY2FsaXplIGVuY29kaW5nIG5hbWU6IHN0cmlwIGFsbCBub24tYWxwaGFudW1lcmljIGNoYXJzIGFuZCBhcHBlbmRlZCB5ZWFyLlxuICAgIHJldHVybiAoJycrZW5jb2RpbmcpLnRvTG93ZXJDYXNlKCkucmVwbGFjZSgvOlxcZHs0fSR8W14wLTlhLXpdL2csIFwiXCIpO1xufVxuXG5pY29udi5nZXRFbmNvZGVyID0gZnVuY3Rpb24gZ2V0RW5jb2RlcihlbmNvZGluZywgb3B0aW9ucykge1xuICAgIHZhciBjb2RlYyA9IGljb252LmdldENvZGVjKGVuY29kaW5nKSxcbiAgICAgICAgZW5jb2RlciA9IG5ldyBjb2RlYy5lbmNvZGVyKG9wdGlvbnMsIGNvZGVjKTtcblxuICAgIGlmIChjb2RlYy5ib21Bd2FyZSAmJiBvcHRpb25zICYmIG9wdGlvbnMuYWRkQk9NKVxuICAgICAgICBlbmNvZGVyID0gbmV3IGJvbUhhbmRsaW5nLlByZXBlbmRCT00oZW5jb2Rlciwgb3B0aW9ucyk7XG5cbiAgICByZXR1cm4gZW5jb2Rlcjtcbn1cblxuaWNvbnYuZ2V0RGVjb2RlciA9IGZ1bmN0aW9uIGdldERlY29kZXIoZW5jb2RpbmcsIG9wdGlvbnMpIHtcbiAgICB2YXIgY29kZWMgPSBpY29udi5nZXRDb2RlYyhlbmNvZGluZyksXG4gICAgICAgIGRlY29kZXIgPSBuZXcgY29kZWMuZGVjb2RlcihvcHRpb25zLCBjb2RlYyk7XG5cbiAgICBpZiAoY29kZWMuYm9tQXdhcmUgJiYgIShvcHRpb25zICYmIG9wdGlvbnMuc3RyaXBCT00gPT09IGZhbHNlKSlcbiAgICAgICAgZGVjb2RlciA9IG5ldyBib21IYW5kbGluZy5TdHJpcEJPTShkZWNvZGVyLCBvcHRpb25zKTtcblxuICAgIHJldHVybiBkZWNvZGVyO1xufVxuXG4vLyBTdHJlYW1pbmcgQVBJXG4vLyBOT1RFOiBTdHJlYW1pbmcgQVBJIG5hdHVyYWxseSBkZXBlbmRzIG9uICdzdHJlYW0nIG1vZHVsZSBmcm9tIE5vZGUuanMuIFVuZm9ydHVuYXRlbHkgaW4gYnJvd3NlciBlbnZpcm9ubWVudHMgdGhpcyBtb2R1bGUgY2FuIGFkZFxuLy8gdXAgdG8gMTAwS2IgdG8gdGhlIG91dHB1dCBidW5kbGUuIFRvIGF2b2lkIHVubmVjZXNzYXJ5IGNvZGUgYmxvYXQsIHdlIGRvbid0IGVuYWJsZSBTdHJlYW1pbmcgQVBJIGluIGJyb3dzZXIgYnkgZGVmYXVsdC5cbi8vIElmIHlvdSB3b3VsZCBsaWtlIHRvIGVuYWJsZSBpdCBleHBsaWNpdGx5LCBwbGVhc2UgYWRkIHRoZSBmb2xsb3dpbmcgY29kZSB0byB5b3VyIGFwcDpcbi8vID4gaWNvbnYuZW5hYmxlU3RyZWFtaW5nQVBJKHJlcXVpcmUoJ3N0cmVhbScpKTtcbmljb252LmVuYWJsZVN0cmVhbWluZ0FQSSA9IGZ1bmN0aW9uIGVuYWJsZVN0cmVhbWluZ0FQSShzdHJlYW1fbW9kdWxlKSB7XG4gICAgaWYgKGljb252LnN1cHBvcnRzU3RyZWFtcylcbiAgICAgICAgcmV0dXJuO1xuXG4gICAgLy8gRGVwZW5kZW5jeS1pbmplY3Qgc3RyZWFtIG1vZHVsZSB0byBjcmVhdGUgSWNvbnZMaXRlIHN0cmVhbSBjbGFzc2VzLlxuICAgIHZhciBzdHJlYW1zID0gcmVxdWlyZShcIi4vc3RyZWFtc1wiKShzdHJlYW1fbW9kdWxlKTtcblxuICAgIC8vIE5vdCBwdWJsaWMgQVBJIHlldCwgYnV0IGV4cG9zZSB0aGUgc3RyZWFtIGNsYXNzZXMuXG4gICAgaWNvbnYuSWNvbnZMaXRlRW5jb2RlclN0cmVhbSA9IHN0cmVhbXMuSWNvbnZMaXRlRW5jb2RlclN0cmVhbTtcbiAgICBpY29udi5JY29udkxpdGVEZWNvZGVyU3RyZWFtID0gc3RyZWFtcy5JY29udkxpdGVEZWNvZGVyU3RyZWFtO1xuXG4gICAgLy8gU3RyZWFtaW5nIEFQSS5cbiAgICBpY29udi5lbmNvZGVTdHJlYW0gPSBmdW5jdGlvbiBlbmNvZGVTdHJlYW0oZW5jb2RpbmcsIG9wdGlvbnMpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBpY29udi5JY29udkxpdGVFbmNvZGVyU3RyZWFtKGljb252LmdldEVuY29kZXIoZW5jb2RpbmcsIG9wdGlvbnMpLCBvcHRpb25zKTtcbiAgICB9XG5cbiAgICBpY29udi5kZWNvZGVTdHJlYW0gPSBmdW5jdGlvbiBkZWNvZGVTdHJlYW0oZW5jb2RpbmcsIG9wdGlvbnMpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBpY29udi5JY29udkxpdGVEZWNvZGVyU3RyZWFtKGljb252LmdldERlY29kZXIoZW5jb2RpbmcsIG9wdGlvbnMpLCBvcHRpb25zKTtcbiAgICB9XG5cbiAgICBpY29udi5zdXBwb3J0c1N0cmVhbXMgPSB0cnVlO1xufVxuXG4vLyBFbmFibGUgU3RyZWFtaW5nIEFQSSBhdXRvbWF0aWNhbGx5IGlmICdzdHJlYW0nIG1vZHVsZSBpcyBhdmFpbGFibGUgYW5kIG5vbi1lbXB0eSAodGhlIG1ham9yaXR5IG9mIGVudmlyb25tZW50cykuXG52YXIgc3RyZWFtX21vZHVsZTtcbnRyeSB7XG4gICAgc3RyZWFtX21vZHVsZSA9IHJlcXVpcmUoXCJzdHJlYW1cIik7XG59IGNhdGNoIChlKSB7fVxuXG5pZiAoc3RyZWFtX21vZHVsZSAmJiBzdHJlYW1fbW9kdWxlLlRyYW5zZm9ybSkge1xuICAgIGljb252LmVuYWJsZVN0cmVhbWluZ0FQSShzdHJlYW1fbW9kdWxlKTtcblxufSBlbHNlIHtcbiAgICAvLyBJbiByYXJlIGNhc2VzIHdoZXJlICdzdHJlYW0nIG1vZHVsZSBpcyBub3QgYXZhaWxhYmxlIGJ5IGRlZmF1bHQsIHRocm93IGEgaGVscGZ1bCBleGNlcHRpb24uXG4gICAgaWNvbnYuZW5jb2RlU3RyZWFtID0gaWNvbnYuZGVjb2RlU3RyZWFtID0gZnVuY3Rpb24oKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcImljb252LWxpdGUgU3RyZWFtaW5nIEFQSSBpcyBub3QgZW5hYmxlZC4gVXNlIGljb252LmVuYWJsZVN0cmVhbWluZ0FQSShyZXF1aXJlKCdzdHJlYW0nKSk7IHRvIGVuYWJsZSBpdC5cIik7XG4gICAgfTtcbn1cblxuaWYgKFwiXHUwMTAwXCIgIT0gXCJcXHUwMTAwXCIpIHtcbiAgICBjb25zb2xlLmVycm9yKFwiaWNvbnYtbGl0ZSB3YXJuaW5nOiBqcyBmaWxlcyB1c2Ugbm9uLXV0ZjggZW5jb2RpbmcuIFNlZSBodHRwczovL2dpdGh1Yi5jb20vYXNodHVjaGtpbi9pY29udi1saXRlL3dpa2kvSmF2YXNjcmlwdC1zb3VyY2UtZmlsZS1lbmNvZGluZ3MgZm9yIG1vcmUgaW5mby5cIik7XG59XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgaWNvbnZMaXRlID0gcmVxdWlyZSgnaWNvbnYtbGl0ZScpO1xuXG4vLyBFeHBvc2UgdG8gdGhlIHdvcmxkXG5tb2R1bGUuZXhwb3J0cy5jb252ZXJ0ID0gY29udmVydDtcblxuLyoqXG4gKiBDb252ZXJ0IGVuY29kaW5nIG9mIGFuIFVURi04IHN0cmluZyBvciBhIGJ1ZmZlclxuICpcbiAqIEBwYXJhbSB7U3RyaW5nfEJ1ZmZlcn0gc3RyIFN0cmluZyB0byBiZSBjb252ZXJ0ZWRcbiAqIEBwYXJhbSB7U3RyaW5nfSB0byBFbmNvZGluZyB0byBiZSBjb252ZXJ0ZWQgdG9cbiAqIEBwYXJhbSB7U3RyaW5nfSBbZnJvbT0nVVRGLTgnXSBFbmNvZGluZyB0byBiZSBjb252ZXJ0ZWQgZnJvbVxuICogQHJldHVybiB7QnVmZmVyfSBFbmNvZGVkIHN0cmluZ1xuICovXG5mdW5jdGlvbiBjb252ZXJ0KHN0ciwgdG8sIGZyb20pIHtcbiAgICBmcm9tID0gY2hlY2tFbmNvZGluZyhmcm9tIHx8ICdVVEYtOCcpO1xuICAgIHRvID0gY2hlY2tFbmNvZGluZyh0byB8fCAnVVRGLTgnKTtcbiAgICBzdHIgPSBzdHIgfHwgJyc7XG5cbiAgICB2YXIgcmVzdWx0O1xuXG4gICAgaWYgKGZyb20gIT09ICdVVEYtOCcgJiYgdHlwZW9mIHN0ciA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgc3RyID0gQnVmZmVyLmZyb20oc3RyLCAnYmluYXJ5Jyk7XG4gICAgfVxuXG4gICAgaWYgKGZyb20gPT09IHRvKSB7XG4gICAgICAgIGlmICh0eXBlb2Ygc3RyID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgcmVzdWx0ID0gQnVmZmVyLmZyb20oc3RyKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJlc3VsdCA9IHN0cjtcbiAgICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICByZXN1bHQgPSBjb252ZXJ0SWNvbnZMaXRlKHN0ciwgdG8sIGZyb20pO1xuICAgICAgICB9IGNhdGNoIChFKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKEUpO1xuICAgICAgICAgICAgcmVzdWx0ID0gc3RyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiByZXN1bHQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHJlc3VsdCA9IEJ1ZmZlci5mcm9tKHJlc3VsdCwgJ3V0Zi04Jyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbn1cblxuLyoqXG4gKiBDb252ZXJ0IGVuY29kaW5nIG9mIGFzdHJpbmcgd2l0aCBpY29udi1saXRlXG4gKlxuICogQHBhcmFtIHtTdHJpbmd8QnVmZmVyfSBzdHIgU3RyaW5nIHRvIGJlIGNvbnZlcnRlZFxuICogQHBhcmFtIHtTdHJpbmd9IHRvIEVuY29kaW5nIHRvIGJlIGNvbnZlcnRlZCB0b1xuICogQHBhcmFtIHtTdHJpbmd9IFtmcm9tPSdVVEYtOCddIEVuY29kaW5nIHRvIGJlIGNvbnZlcnRlZCBmcm9tXG4gKiBAcmV0dXJuIHtCdWZmZXJ9IEVuY29kZWQgc3RyaW5nXG4gKi9cbmZ1bmN0aW9uIGNvbnZlcnRJY29udkxpdGUoc3RyLCB0bywgZnJvbSkge1xuICAgIGlmICh0byA9PT0gJ1VURi04Jykge1xuICAgICAgICByZXR1cm4gaWNvbnZMaXRlLmRlY29kZShzdHIsIGZyb20pO1xuICAgIH0gZWxzZSBpZiAoZnJvbSA9PT0gJ1VURi04Jykge1xuICAgICAgICByZXR1cm4gaWNvbnZMaXRlLmVuY29kZShzdHIsIHRvKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gaWNvbnZMaXRlLmVuY29kZShpY29udkxpdGUuZGVjb2RlKHN0ciwgZnJvbSksIHRvKTtcbiAgICB9XG59XG5cbi8qKlxuICogQ29udmVydHMgY2hhcnNldCBuYW1lIGlmIG5lZWRlZFxuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSBuYW1lIENoYXJhY3RlciBzZXRcbiAqIEByZXR1cm4ge1N0cmluZ30gQ2hhcmFjdGVyIHNldCBuYW1lXG4gKi9cbmZ1bmN0aW9uIGNoZWNrRW5jb2RpbmcobmFtZSkge1xuICAgIHJldHVybiAobmFtZSB8fCAnJylcbiAgICAgICAgLnRvU3RyaW5nKClcbiAgICAgICAgLnRyaW0oKVxuICAgICAgICAucmVwbGFjZSgvXmxhdGluW1xcLV9dPyhcXGQrKSQvaSwgJ0lTTy04ODU5LSQxJylcbiAgICAgICAgLnJlcGxhY2UoL153aW4oPzpkb3dzKT9bXFwtX10/KFxcZCspJC9pLCAnV0lORE9XUy0kMScpXG4gICAgICAgIC5yZXBsYWNlKC9edXRmW1xcLV9dPyhcXGQrKSQvaSwgJ1VURi0kMScpXG4gICAgICAgIC5yZXBsYWNlKC9ea3NfY181NjAxXFwtMTk4NyQvaSwgJ0NQOTQ5JylcbiAgICAgICAgLnJlcGxhY2UoL151c1tcXC1fXT9hc2NpaSQvaSwgJ0FTQ0lJJylcbiAgICAgICAgLnRvVXBwZXJDYXNlKCk7XG59XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgJ19fZXNNb2R1bGUnLCB7IHZhbHVlOiB0cnVlIH0pO1xuXG5mdW5jdGlvbiBfaW50ZXJvcERlZmF1bHQgKGV4KSB7IHJldHVybiAoZXggJiYgKHR5cGVvZiBleCA9PT0gJ29iamVjdCcpICYmICdkZWZhdWx0JyBpbiBleCkgPyBleFsnZGVmYXVsdCddIDogZXg7IH1cblxudmFyIFN0cmVhbSA9IF9pbnRlcm9wRGVmYXVsdChyZXF1aXJlKCdzdHJlYW0nKSk7XG52YXIgaHR0cCA9IF9pbnRlcm9wRGVmYXVsdChyZXF1aXJlKCdodHRwJykpO1xudmFyIFVybCA9IF9pbnRlcm9wRGVmYXVsdChyZXF1aXJlKCd1cmwnKSk7XG52YXIgd2hhdHdnVXJsID0gX2ludGVyb3BEZWZhdWx0KHJlcXVpcmUoJ3doYXR3Zy11cmwnKSk7XG52YXIgaHR0cHMgPSBfaW50ZXJvcERlZmF1bHQocmVxdWlyZSgnaHR0cHMnKSk7XG52YXIgemxpYiA9IF9pbnRlcm9wRGVmYXVsdChyZXF1aXJlKCd6bGliJykpO1xuXG4vLyBCYXNlZCBvbiBodHRwczovL2dpdGh1Yi5jb20vdG1wdmFyL2pzZG9tL2Jsb2IvYWE4NWIyYWJmMDc3NjZmZjdiZjVjMWY2ZGFhZmIzNzI2ZjJmMmRiNS9saWIvanNkb20vbGl2aW5nL2Jsb2IuanNcblxuLy8gZml4IGZvciBcIlJlYWRhYmxlXCIgaXNuJ3QgYSBuYW1lZCBleHBvcnQgaXNzdWVcbmNvbnN0IFJlYWRhYmxlID0gU3RyZWFtLlJlYWRhYmxlO1xuXG5jb25zdCBCVUZGRVIgPSBTeW1ib2woJ2J1ZmZlcicpO1xuY29uc3QgVFlQRSA9IFN5bWJvbCgndHlwZScpO1xuXG5jbGFzcyBCbG9iIHtcblx0Y29uc3RydWN0b3IoKSB7XG5cdFx0dGhpc1tUWVBFXSA9ICcnO1xuXG5cdFx0Y29uc3QgYmxvYlBhcnRzID0gYXJndW1lbnRzWzBdO1xuXHRcdGNvbnN0IG9wdGlvbnMgPSBhcmd1bWVudHNbMV07XG5cblx0XHRjb25zdCBidWZmZXJzID0gW107XG5cdFx0bGV0IHNpemUgPSAwO1xuXG5cdFx0aWYgKGJsb2JQYXJ0cykge1xuXHRcdFx0Y29uc3QgYSA9IGJsb2JQYXJ0cztcblx0XHRcdGNvbnN0IGxlbmd0aCA9IE51bWJlcihhLmxlbmd0aCk7XG5cdFx0XHRmb3IgKGxldCBpID0gMDsgaSA8IGxlbmd0aDsgaSsrKSB7XG5cdFx0XHRcdGNvbnN0IGVsZW1lbnQgPSBhW2ldO1xuXHRcdFx0XHRsZXQgYnVmZmVyO1xuXHRcdFx0XHRpZiAoZWxlbWVudCBpbnN0YW5jZW9mIEJ1ZmZlcikge1xuXHRcdFx0XHRcdGJ1ZmZlciA9IGVsZW1lbnQ7XG5cdFx0XHRcdH0gZWxzZSBpZiAoQXJyYXlCdWZmZXIuaXNWaWV3KGVsZW1lbnQpKSB7XG5cdFx0XHRcdFx0YnVmZmVyID0gQnVmZmVyLmZyb20oZWxlbWVudC5idWZmZXIsIGVsZW1lbnQuYnl0ZU9mZnNldCwgZWxlbWVudC5ieXRlTGVuZ3RoKTtcblx0XHRcdFx0fSBlbHNlIGlmIChlbGVtZW50IGluc3RhbmNlb2YgQXJyYXlCdWZmZXIpIHtcblx0XHRcdFx0XHRidWZmZXIgPSBCdWZmZXIuZnJvbShlbGVtZW50KTtcblx0XHRcdFx0fSBlbHNlIGlmIChlbGVtZW50IGluc3RhbmNlb2YgQmxvYikge1xuXHRcdFx0XHRcdGJ1ZmZlciA9IGVsZW1lbnRbQlVGRkVSXTtcblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRidWZmZXIgPSBCdWZmZXIuZnJvbSh0eXBlb2YgZWxlbWVudCA9PT0gJ3N0cmluZycgPyBlbGVtZW50IDogU3RyaW5nKGVsZW1lbnQpKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRzaXplICs9IGJ1ZmZlci5sZW5ndGg7XG5cdFx0XHRcdGJ1ZmZlcnMucHVzaChidWZmZXIpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHRoaXNbQlVGRkVSXSA9IEJ1ZmZlci5jb25jYXQoYnVmZmVycyk7XG5cblx0XHRsZXQgdHlwZSA9IG9wdGlvbnMgJiYgb3B0aW9ucy50eXBlICE9PSB1bmRlZmluZWQgJiYgU3RyaW5nKG9wdGlvbnMudHlwZSkudG9Mb3dlckNhc2UoKTtcblx0XHRpZiAodHlwZSAmJiAhL1teXFx1MDAyMC1cXHUwMDdFXS8udGVzdCh0eXBlKSkge1xuXHRcdFx0dGhpc1tUWVBFXSA9IHR5cGU7XG5cdFx0fVxuXHR9XG5cdGdldCBzaXplKCkge1xuXHRcdHJldHVybiB0aGlzW0JVRkZFUl0ubGVuZ3RoO1xuXHR9XG5cdGdldCB0eXBlKCkge1xuXHRcdHJldHVybiB0aGlzW1RZUEVdO1xuXHR9XG5cdHRleHQoKSB7XG5cdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZSh0aGlzW0JVRkZFUl0udG9TdHJpbmcoKSk7XG5cdH1cblx0YXJyYXlCdWZmZXIoKSB7XG5cdFx0Y29uc3QgYnVmID0gdGhpc1tCVUZGRVJdO1xuXHRcdGNvbnN0IGFiID0gYnVmLmJ1ZmZlci5zbGljZShidWYuYnl0ZU9mZnNldCwgYnVmLmJ5dGVPZmZzZXQgKyBidWYuYnl0ZUxlbmd0aCk7XG5cdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZShhYik7XG5cdH1cblx0c3RyZWFtKCkge1xuXHRcdGNvbnN0IHJlYWRhYmxlID0gbmV3IFJlYWRhYmxlKCk7XG5cdFx0cmVhZGFibGUuX3JlYWQgPSBmdW5jdGlvbiAoKSB7fTtcblx0XHRyZWFkYWJsZS5wdXNoKHRoaXNbQlVGRkVSXSk7XG5cdFx0cmVhZGFibGUucHVzaChudWxsKTtcblx0XHRyZXR1cm4gcmVhZGFibGU7XG5cdH1cblx0dG9TdHJpbmcoKSB7XG5cdFx0cmV0dXJuICdbb2JqZWN0IEJsb2JdJztcblx0fVxuXHRzbGljZSgpIHtcblx0XHRjb25zdCBzaXplID0gdGhpcy5zaXplO1xuXG5cdFx0Y29uc3Qgc3RhcnQgPSBhcmd1bWVudHNbMF07XG5cdFx0Y29uc3QgZW5kID0gYXJndW1lbnRzWzFdO1xuXHRcdGxldCByZWxhdGl2ZVN0YXJ0LCByZWxhdGl2ZUVuZDtcblx0XHRpZiAoc3RhcnQgPT09IHVuZGVmaW5lZCkge1xuXHRcdFx0cmVsYXRpdmVTdGFydCA9IDA7XG5cdFx0fSBlbHNlIGlmIChzdGFydCA8IDApIHtcblx0XHRcdHJlbGF0aXZlU3RhcnQgPSBNYXRoLm1heChzaXplICsgc3RhcnQsIDApO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRyZWxhdGl2ZVN0YXJ0ID0gTWF0aC5taW4oc3RhcnQsIHNpemUpO1xuXHRcdH1cblx0XHRpZiAoZW5kID09PSB1bmRlZmluZWQpIHtcblx0XHRcdHJlbGF0aXZlRW5kID0gc2l6ZTtcblx0XHR9IGVsc2UgaWYgKGVuZCA8IDApIHtcblx0XHRcdHJlbGF0aXZlRW5kID0gTWF0aC5tYXgoc2l6ZSArIGVuZCwgMCk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHJlbGF0aXZlRW5kID0gTWF0aC5taW4oZW5kLCBzaXplKTtcblx0XHR9XG5cdFx0Y29uc3Qgc3BhbiA9IE1hdGgubWF4KHJlbGF0aXZlRW5kIC0gcmVsYXRpdmVTdGFydCwgMCk7XG5cblx0XHRjb25zdCBidWZmZXIgPSB0aGlzW0JVRkZFUl07XG5cdFx0Y29uc3Qgc2xpY2VkQnVmZmVyID0gYnVmZmVyLnNsaWNlKHJlbGF0aXZlU3RhcnQsIHJlbGF0aXZlU3RhcnQgKyBzcGFuKTtcblx0XHRjb25zdCBibG9iID0gbmV3IEJsb2IoW10sIHsgdHlwZTogYXJndW1lbnRzWzJdIH0pO1xuXHRcdGJsb2JbQlVGRkVSXSA9IHNsaWNlZEJ1ZmZlcjtcblx0XHRyZXR1cm4gYmxvYjtcblx0fVxufVxuXG5PYmplY3QuZGVmaW5lUHJvcGVydGllcyhCbG9iLnByb3RvdHlwZSwge1xuXHRzaXplOiB7IGVudW1lcmFibGU6IHRydWUgfSxcblx0dHlwZTogeyBlbnVtZXJhYmxlOiB0cnVlIH0sXG5cdHNsaWNlOiB7IGVudW1lcmFibGU6IHRydWUgfVxufSk7XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShCbG9iLnByb3RvdHlwZSwgU3ltYm9sLnRvU3RyaW5nVGFnLCB7XG5cdHZhbHVlOiAnQmxvYicsXG5cdHdyaXRhYmxlOiBmYWxzZSxcblx0ZW51bWVyYWJsZTogZmFsc2UsXG5cdGNvbmZpZ3VyYWJsZTogdHJ1ZVxufSk7XG5cbi8qKlxuICogZmV0Y2gtZXJyb3IuanNcbiAqXG4gKiBGZXRjaEVycm9yIGludGVyZmFjZSBmb3Igb3BlcmF0aW9uYWwgZXJyb3JzXG4gKi9cblxuLyoqXG4gKiBDcmVhdGUgRmV0Y2hFcnJvciBpbnN0YW5jZVxuICpcbiAqIEBwYXJhbSAgIFN0cmluZyAgICAgIG1lc3NhZ2UgICAgICBFcnJvciBtZXNzYWdlIGZvciBodW1hblxuICogQHBhcmFtICAgU3RyaW5nICAgICAgdHlwZSAgICAgICAgIEVycm9yIHR5cGUgZm9yIG1hY2hpbmVcbiAqIEBwYXJhbSAgIFN0cmluZyAgICAgIHN5c3RlbUVycm9yICBGb3IgTm9kZS5qcyBzeXN0ZW0gZXJyb3JcbiAqIEByZXR1cm4gIEZldGNoRXJyb3JcbiAqL1xuZnVuY3Rpb24gRmV0Y2hFcnJvcihtZXNzYWdlLCB0eXBlLCBzeXN0ZW1FcnJvcikge1xuICBFcnJvci5jYWxsKHRoaXMsIG1lc3NhZ2UpO1xuXG4gIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2U7XG4gIHRoaXMudHlwZSA9IHR5cGU7XG5cbiAgLy8gd2hlbiBlcnIudHlwZSBpcyBgc3lzdGVtYCwgZXJyLmNvZGUgY29udGFpbnMgc3lzdGVtIGVycm9yIGNvZGVcbiAgaWYgKHN5c3RlbUVycm9yKSB7XG4gICAgdGhpcy5jb2RlID0gdGhpcy5lcnJubyA9IHN5c3RlbUVycm9yLmNvZGU7XG4gIH1cblxuICAvLyBoaWRlIGN1c3RvbSBlcnJvciBpbXBsZW1lbnRhdGlvbiBkZXRhaWxzIGZyb20gZW5kLXVzZXJzXG4gIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsIHRoaXMuY29uc3RydWN0b3IpO1xufVxuXG5GZXRjaEVycm9yLnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUoRXJyb3IucHJvdG90eXBlKTtcbkZldGNoRXJyb3IucHJvdG90eXBlLmNvbnN0cnVjdG9yID0gRmV0Y2hFcnJvcjtcbkZldGNoRXJyb3IucHJvdG90eXBlLm5hbWUgPSAnRmV0Y2hFcnJvcic7XG5cbmxldCBjb252ZXJ0O1xudHJ5IHtcblx0Y29udmVydCA9IHJlcXVpcmUoJ2VuY29kaW5nJykuY29udmVydDtcbn0gY2F0Y2ggKGUpIHt9XG5cbmNvbnN0IElOVEVSTkFMUyA9IFN5bWJvbCgnQm9keSBpbnRlcm5hbHMnKTtcblxuLy8gZml4IGFuIGlzc3VlIHdoZXJlIFwiUGFzc1Rocm91Z2hcIiBpc24ndCBhIG5hbWVkIGV4cG9ydCBmb3Igbm9kZSA8MTBcbmNvbnN0IFBhc3NUaHJvdWdoID0gU3RyZWFtLlBhc3NUaHJvdWdoO1xuXG4vKipcbiAqIEJvZHkgbWl4aW5cbiAqXG4gKiBSZWY6IGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNib2R5XG4gKlxuICogQHBhcmFtICAgU3RyZWFtICBib2R5ICBSZWFkYWJsZSBzdHJlYW1cbiAqIEBwYXJhbSAgIE9iamVjdCAgb3B0cyAgUmVzcG9uc2Ugb3B0aW9uc1xuICogQHJldHVybiAgVm9pZFxuICovXG5mdW5jdGlvbiBCb2R5KGJvZHkpIHtcblx0dmFyIF90aGlzID0gdGhpcztcblxuXHR2YXIgX3JlZiA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDoge30sXG5cdCAgICBfcmVmJHNpemUgPSBfcmVmLnNpemU7XG5cblx0bGV0IHNpemUgPSBfcmVmJHNpemUgPT09IHVuZGVmaW5lZCA/IDAgOiBfcmVmJHNpemU7XG5cdHZhciBfcmVmJHRpbWVvdXQgPSBfcmVmLnRpbWVvdXQ7XG5cdGxldCB0aW1lb3V0ID0gX3JlZiR0aW1lb3V0ID09PSB1bmRlZmluZWQgPyAwIDogX3JlZiR0aW1lb3V0O1xuXG5cdGlmIChib2R5ID09IG51bGwpIHtcblx0XHQvLyBib2R5IGlzIHVuZGVmaW5lZCBvciBudWxsXG5cdFx0Ym9keSA9IG51bGw7XG5cdH0gZWxzZSBpZiAoaXNVUkxTZWFyY2hQYXJhbXMoYm9keSkpIHtcblx0XHQvLyBib2R5IGlzIGEgVVJMU2VhcmNoUGFyYW1zXG5cdFx0Ym9keSA9IEJ1ZmZlci5mcm9tKGJvZHkudG9TdHJpbmcoKSk7XG5cdH0gZWxzZSBpZiAoaXNCbG9iKGJvZHkpKSA7IGVsc2UgaWYgKEJ1ZmZlci5pc0J1ZmZlcihib2R5KSkgOyBlbHNlIGlmIChPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoYm9keSkgPT09ICdbb2JqZWN0IEFycmF5QnVmZmVyXScpIHtcblx0XHQvLyBib2R5IGlzIEFycmF5QnVmZmVyXG5cdFx0Ym9keSA9IEJ1ZmZlci5mcm9tKGJvZHkpO1xuXHR9IGVsc2UgaWYgKEFycmF5QnVmZmVyLmlzVmlldyhib2R5KSkge1xuXHRcdC8vIGJvZHkgaXMgQXJyYXlCdWZmZXJWaWV3XG5cdFx0Ym9keSA9IEJ1ZmZlci5mcm9tKGJvZHkuYnVmZmVyLCBib2R5LmJ5dGVPZmZzZXQsIGJvZHkuYnl0ZUxlbmd0aCk7XG5cdH0gZWxzZSBpZiAoYm9keSBpbnN0YW5jZW9mIFN0cmVhbSkgOyBlbHNlIHtcblx0XHQvLyBub25lIG9mIHRoZSBhYm92ZVxuXHRcdC8vIGNvZXJjZSB0byBzdHJpbmcgdGhlbiBidWZmZXJcblx0XHRib2R5ID0gQnVmZmVyLmZyb20oU3RyaW5nKGJvZHkpKTtcblx0fVxuXHR0aGlzW0lOVEVSTkFMU10gPSB7XG5cdFx0Ym9keSxcblx0XHRkaXN0dXJiZWQ6IGZhbHNlLFxuXHRcdGVycm9yOiBudWxsXG5cdH07XG5cdHRoaXMuc2l6ZSA9IHNpemU7XG5cdHRoaXMudGltZW91dCA9IHRpbWVvdXQ7XG5cblx0aWYgKGJvZHkgaW5zdGFuY2VvZiBTdHJlYW0pIHtcblx0XHRib2R5Lm9uKCdlcnJvcicsIGZ1bmN0aW9uIChlcnIpIHtcblx0XHRcdGNvbnN0IGVycm9yID0gZXJyLm5hbWUgPT09ICdBYm9ydEVycm9yJyA/IGVyciA6IG5ldyBGZXRjaEVycm9yKGBJbnZhbGlkIHJlc3BvbnNlIGJvZHkgd2hpbGUgdHJ5aW5nIHRvIGZldGNoICR7X3RoaXMudXJsfTogJHtlcnIubWVzc2FnZX1gLCAnc3lzdGVtJywgZXJyKTtcblx0XHRcdF90aGlzW0lOVEVSTkFMU10uZXJyb3IgPSBlcnJvcjtcblx0XHR9KTtcblx0fVxufVxuXG5Cb2R5LnByb3RvdHlwZSA9IHtcblx0Z2V0IGJvZHkoKSB7XG5cdFx0cmV0dXJuIHRoaXNbSU5URVJOQUxTXS5ib2R5O1xuXHR9LFxuXG5cdGdldCBib2R5VXNlZCgpIHtcblx0XHRyZXR1cm4gdGhpc1tJTlRFUk5BTFNdLmRpc3R1cmJlZDtcblx0fSxcblxuXHQvKipcbiAgKiBEZWNvZGUgcmVzcG9uc2UgYXMgQXJyYXlCdWZmZXJcbiAgKlxuICAqIEByZXR1cm4gIFByb21pc2VcbiAgKi9cblx0YXJyYXlCdWZmZXIoKSB7XG5cdFx0cmV0dXJuIGNvbnN1bWVCb2R5LmNhbGwodGhpcykudGhlbihmdW5jdGlvbiAoYnVmKSB7XG5cdFx0XHRyZXR1cm4gYnVmLmJ1ZmZlci5zbGljZShidWYuYnl0ZU9mZnNldCwgYnVmLmJ5dGVPZmZzZXQgKyBidWYuYnl0ZUxlbmd0aCk7XG5cdFx0fSk7XG5cdH0sXG5cblx0LyoqXG4gICogUmV0dXJuIHJhdyByZXNwb25zZSBhcyBCbG9iXG4gICpcbiAgKiBAcmV0dXJuIFByb21pc2VcbiAgKi9cblx0YmxvYigpIHtcblx0XHRsZXQgY3QgPSB0aGlzLmhlYWRlcnMgJiYgdGhpcy5oZWFkZXJzLmdldCgnY29udGVudC10eXBlJykgfHwgJyc7XG5cdFx0cmV0dXJuIGNvbnN1bWVCb2R5LmNhbGwodGhpcykudGhlbihmdW5jdGlvbiAoYnVmKSB7XG5cdFx0XHRyZXR1cm4gT2JqZWN0LmFzc2lnbihcblx0XHRcdC8vIFByZXZlbnQgY29weWluZ1xuXHRcdFx0bmV3IEJsb2IoW10sIHtcblx0XHRcdFx0dHlwZTogY3QudG9Mb3dlckNhc2UoKVxuXHRcdFx0fSksIHtcblx0XHRcdFx0W0JVRkZFUl06IGJ1ZlxuXHRcdFx0fSk7XG5cdFx0fSk7XG5cdH0sXG5cblx0LyoqXG4gICogRGVjb2RlIHJlc3BvbnNlIGFzIGpzb25cbiAgKlxuICAqIEByZXR1cm4gIFByb21pc2VcbiAgKi9cblx0anNvbigpIHtcblx0XHR2YXIgX3RoaXMyID0gdGhpcztcblxuXHRcdHJldHVybiBjb25zdW1lQm9keS5jYWxsKHRoaXMpLnRoZW4oZnVuY3Rpb24gKGJ1ZmZlcikge1xuXHRcdFx0dHJ5IHtcblx0XHRcdFx0cmV0dXJuIEpTT04ucGFyc2UoYnVmZmVyLnRvU3RyaW5nKCkpO1xuXHRcdFx0fSBjYXRjaCAoZXJyKSB7XG5cdFx0XHRcdHJldHVybiBCb2R5LlByb21pc2UucmVqZWN0KG5ldyBGZXRjaEVycm9yKGBpbnZhbGlkIGpzb24gcmVzcG9uc2UgYm9keSBhdCAke190aGlzMi51cmx9IHJlYXNvbjogJHtlcnIubWVzc2FnZX1gLCAnaW52YWxpZC1qc29uJykpO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHR9LFxuXG5cdC8qKlxuICAqIERlY29kZSByZXNwb25zZSBhcyB0ZXh0XG4gICpcbiAgKiBAcmV0dXJuICBQcm9taXNlXG4gICovXG5cdHRleHQoKSB7XG5cdFx0cmV0dXJuIGNvbnN1bWVCb2R5LmNhbGwodGhpcykudGhlbihmdW5jdGlvbiAoYnVmZmVyKSB7XG5cdFx0XHRyZXR1cm4gYnVmZmVyLnRvU3RyaW5nKCk7XG5cdFx0fSk7XG5cdH0sXG5cblx0LyoqXG4gICogRGVjb2RlIHJlc3BvbnNlIGFzIGJ1ZmZlciAobm9uLXNwZWMgYXBpKVxuICAqXG4gICogQHJldHVybiAgUHJvbWlzZVxuICAqL1xuXHRidWZmZXIoKSB7XG5cdFx0cmV0dXJuIGNvbnN1bWVCb2R5LmNhbGwodGhpcyk7XG5cdH0sXG5cblx0LyoqXG4gICogRGVjb2RlIHJlc3BvbnNlIGFzIHRleHQsIHdoaWxlIGF1dG9tYXRpY2FsbHkgZGV0ZWN0aW5nIHRoZSBlbmNvZGluZyBhbmRcbiAgKiB0cnlpbmcgdG8gZGVjb2RlIHRvIFVURi04IChub24tc3BlYyBhcGkpXG4gICpcbiAgKiBAcmV0dXJuICBQcm9taXNlXG4gICovXG5cdHRleHRDb252ZXJ0ZWQoKSB7XG5cdFx0dmFyIF90aGlzMyA9IHRoaXM7XG5cblx0XHRyZXR1cm4gY29uc3VtZUJvZHkuY2FsbCh0aGlzKS50aGVuKGZ1bmN0aW9uIChidWZmZXIpIHtcblx0XHRcdHJldHVybiBjb252ZXJ0Qm9keShidWZmZXIsIF90aGlzMy5oZWFkZXJzKTtcblx0XHR9KTtcblx0fVxufTtcblxuLy8gSW4gYnJvd3NlcnMsIGFsbCBwcm9wZXJ0aWVzIGFyZSBlbnVtZXJhYmxlLlxuT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoQm9keS5wcm90b3R5cGUsIHtcblx0Ym9keTogeyBlbnVtZXJhYmxlOiB0cnVlIH0sXG5cdGJvZHlVc2VkOiB7IGVudW1lcmFibGU6IHRydWUgfSxcblx0YXJyYXlCdWZmZXI6IHsgZW51bWVyYWJsZTogdHJ1ZSB9LFxuXHRibG9iOiB7IGVudW1lcmFibGU6IHRydWUgfSxcblx0anNvbjogeyBlbnVtZXJhYmxlOiB0cnVlIH0sXG5cdHRleHQ6IHsgZW51bWVyYWJsZTogdHJ1ZSB9XG59KTtcblxuQm9keS5taXhJbiA9IGZ1bmN0aW9uIChwcm90bykge1xuXHRmb3IgKGNvbnN0IG5hbWUgb2YgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoQm9keS5wcm90b3R5cGUpKSB7XG5cdFx0Ly8gaXN0YW5idWwgaWdub3JlIGVsc2U6IGZ1dHVyZSBwcm9vZlxuXHRcdGlmICghKG5hbWUgaW4gcHJvdG8pKSB7XG5cdFx0XHRjb25zdCBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihCb2R5LnByb3RvdHlwZSwgbmFtZSk7XG5cdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkocHJvdG8sIG5hbWUsIGRlc2MpO1xuXHRcdH1cblx0fVxufTtcblxuLyoqXG4gKiBDb25zdW1lIGFuZCBjb252ZXJ0IGFuIGVudGlyZSBCb2R5IHRvIGEgQnVmZmVyLlxuICpcbiAqIFJlZjogaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtYm9keS1jb25zdW1lLWJvZHlcbiAqXG4gKiBAcmV0dXJuICBQcm9taXNlXG4gKi9cbmZ1bmN0aW9uIGNvbnN1bWVCb2R5KCkge1xuXHR2YXIgX3RoaXM0ID0gdGhpcztcblxuXHRpZiAodGhpc1tJTlRFUk5BTFNdLmRpc3R1cmJlZCkge1xuXHRcdHJldHVybiBCb2R5LlByb21pc2UucmVqZWN0KG5ldyBUeXBlRXJyb3IoYGJvZHkgdXNlZCBhbHJlYWR5IGZvcjogJHt0aGlzLnVybH1gKSk7XG5cdH1cblxuXHR0aGlzW0lOVEVSTkFMU10uZGlzdHVyYmVkID0gdHJ1ZTtcblxuXHRpZiAodGhpc1tJTlRFUk5BTFNdLmVycm9yKSB7XG5cdFx0cmV0dXJuIEJvZHkuUHJvbWlzZS5yZWplY3QodGhpc1tJTlRFUk5BTFNdLmVycm9yKTtcblx0fVxuXG5cdGxldCBib2R5ID0gdGhpcy5ib2R5O1xuXG5cdC8vIGJvZHkgaXMgbnVsbFxuXHRpZiAoYm9keSA9PT0gbnVsbCkge1xuXHRcdHJldHVybiBCb2R5LlByb21pc2UucmVzb2x2ZShCdWZmZXIuYWxsb2MoMCkpO1xuXHR9XG5cblx0Ly8gYm9keSBpcyBibG9iXG5cdGlmIChpc0Jsb2IoYm9keSkpIHtcblx0XHRib2R5ID0gYm9keS5zdHJlYW0oKTtcblx0fVxuXG5cdC8vIGJvZHkgaXMgYnVmZmVyXG5cdGlmIChCdWZmZXIuaXNCdWZmZXIoYm9keSkpIHtcblx0XHRyZXR1cm4gQm9keS5Qcm9taXNlLnJlc29sdmUoYm9keSk7XG5cdH1cblxuXHQvLyBpc3RhbmJ1bCBpZ25vcmUgaWY6IHNob3VsZCBuZXZlciBoYXBwZW5cblx0aWYgKCEoYm9keSBpbnN0YW5jZW9mIFN0cmVhbSkpIHtcblx0XHRyZXR1cm4gQm9keS5Qcm9taXNlLnJlc29sdmUoQnVmZmVyLmFsbG9jKDApKTtcblx0fVxuXG5cdC8vIGJvZHkgaXMgc3RyZWFtXG5cdC8vIGdldCByZWFkeSB0byBhY3R1YWxseSBjb25zdW1lIHRoZSBib2R5XG5cdGxldCBhY2N1bSA9IFtdO1xuXHRsZXQgYWNjdW1CeXRlcyA9IDA7XG5cdGxldCBhYm9ydCA9IGZhbHNlO1xuXG5cdHJldHVybiBuZXcgQm9keS5Qcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHtcblx0XHRsZXQgcmVzVGltZW91dDtcblxuXHRcdC8vIGFsbG93IHRpbWVvdXQgb24gc2xvdyByZXNwb25zZSBib2R5XG5cdFx0aWYgKF90aGlzNC50aW1lb3V0KSB7XG5cdFx0XHRyZXNUaW1lb3V0ID0gc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG5cdFx0XHRcdGFib3J0ID0gdHJ1ZTtcblx0XHRcdFx0cmVqZWN0KG5ldyBGZXRjaEVycm9yKGBSZXNwb25zZSB0aW1lb3V0IHdoaWxlIHRyeWluZyB0byBmZXRjaCAke190aGlzNC51cmx9IChvdmVyICR7X3RoaXM0LnRpbWVvdXR9bXMpYCwgJ2JvZHktdGltZW91dCcpKTtcblx0XHRcdH0sIF90aGlzNC50aW1lb3V0KTtcblx0XHR9XG5cblx0XHQvLyBoYW5kbGUgc3RyZWFtIGVycm9yc1xuXHRcdGJvZHkub24oJ2Vycm9yJywgZnVuY3Rpb24gKGVycikge1xuXHRcdFx0aWYgKGVyci5uYW1lID09PSAnQWJvcnRFcnJvcicpIHtcblx0XHRcdFx0Ly8gaWYgdGhlIHJlcXVlc3Qgd2FzIGFib3J0ZWQsIHJlamVjdCB3aXRoIHRoaXMgRXJyb3Jcblx0XHRcdFx0YWJvcnQgPSB0cnVlO1xuXHRcdFx0XHRyZWplY3QoZXJyKTtcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdC8vIG90aGVyIGVycm9ycywgc3VjaCBhcyBpbmNvcnJlY3QgY29udGVudC1lbmNvZGluZ1xuXHRcdFx0XHRyZWplY3QobmV3IEZldGNoRXJyb3IoYEludmFsaWQgcmVzcG9uc2UgYm9keSB3aGlsZSB0cnlpbmcgdG8gZmV0Y2ggJHtfdGhpczQudXJsfTogJHtlcnIubWVzc2FnZX1gLCAnc3lzdGVtJywgZXJyKSk7XG5cdFx0XHR9XG5cdFx0fSk7XG5cblx0XHRib2R5Lm9uKCdkYXRhJywgZnVuY3Rpb24gKGNodW5rKSB7XG5cdFx0XHRpZiAoYWJvcnQgfHwgY2h1bmsgPT09IG51bGwpIHtcblx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0fVxuXG5cdFx0XHRpZiAoX3RoaXM0LnNpemUgJiYgYWNjdW1CeXRlcyArIGNodW5rLmxlbmd0aCA+IF90aGlzNC5zaXplKSB7XG5cdFx0XHRcdGFib3J0ID0gdHJ1ZTtcblx0XHRcdFx0cmVqZWN0KG5ldyBGZXRjaEVycm9yKGBjb250ZW50IHNpemUgYXQgJHtfdGhpczQudXJsfSBvdmVyIGxpbWl0OiAke190aGlzNC5zaXplfWAsICdtYXgtc2l6ZScpKTtcblx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0fVxuXG5cdFx0XHRhY2N1bUJ5dGVzICs9IGNodW5rLmxlbmd0aDtcblx0XHRcdGFjY3VtLnB1c2goY2h1bmspO1xuXHRcdH0pO1xuXG5cdFx0Ym9keS5vbignZW5kJywgZnVuY3Rpb24gKCkge1xuXHRcdFx0aWYgKGFib3J0KSB7XG5cdFx0XHRcdHJldHVybjtcblx0XHRcdH1cblxuXHRcdFx0Y2xlYXJUaW1lb3V0KHJlc1RpbWVvdXQpO1xuXG5cdFx0XHR0cnkge1xuXHRcdFx0XHRyZXNvbHZlKEJ1ZmZlci5jb25jYXQoYWNjdW0sIGFjY3VtQnl0ZXMpKTtcblx0XHRcdH0gY2F0Y2ggKGVycikge1xuXHRcdFx0XHQvLyBoYW5kbGUgc3RyZWFtcyB0aGF0IGhhdmUgYWNjdW11bGF0ZWQgdG9vIG11Y2ggZGF0YSAoaXNzdWUgIzQxNClcblx0XHRcdFx0cmVqZWN0KG5ldyBGZXRjaEVycm9yKGBDb3VsZCBub3QgY3JlYXRlIEJ1ZmZlciBmcm9tIHJlc3BvbnNlIGJvZHkgZm9yICR7X3RoaXM0LnVybH06ICR7ZXJyLm1lc3NhZ2V9YCwgJ3N5c3RlbScsIGVycikpO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHR9KTtcbn1cblxuLyoqXG4gKiBEZXRlY3QgYnVmZmVyIGVuY29kaW5nIGFuZCBjb252ZXJ0IHRvIHRhcmdldCBlbmNvZGluZ1xuICogcmVmOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDExL1dELWh0bWw1LTIwMTEwMTEzL3BhcnNpbmcuaHRtbCNkZXRlcm1pbmluZy10aGUtY2hhcmFjdGVyLWVuY29kaW5nXG4gKlxuICogQHBhcmFtICAgQnVmZmVyICBidWZmZXIgICAgSW5jb21pbmcgYnVmZmVyXG4gKiBAcGFyYW0gICBTdHJpbmcgIGVuY29kaW5nICBUYXJnZXQgZW5jb2RpbmdcbiAqIEByZXR1cm4gIFN0cmluZ1xuICovXG5mdW5jdGlvbiBjb252ZXJ0Qm9keShidWZmZXIsIGhlYWRlcnMpIHtcblx0aWYgKHR5cGVvZiBjb252ZXJ0ICE9PSAnZnVuY3Rpb24nKSB7XG5cdFx0dGhyb3cgbmV3IEVycm9yKCdUaGUgcGFja2FnZSBgZW5jb2RpbmdgIG11c3QgYmUgaW5zdGFsbGVkIHRvIHVzZSB0aGUgdGV4dENvbnZlcnRlZCgpIGZ1bmN0aW9uJyk7XG5cdH1cblxuXHRjb25zdCBjdCA9IGhlYWRlcnMuZ2V0KCdjb250ZW50LXR5cGUnKTtcblx0bGV0IGNoYXJzZXQgPSAndXRmLTgnO1xuXHRsZXQgcmVzLCBzdHI7XG5cblx0Ly8gaGVhZGVyXG5cdGlmIChjdCkge1xuXHRcdHJlcyA9IC9jaGFyc2V0PShbXjtdKikvaS5leGVjKGN0KTtcblx0fVxuXG5cdC8vIG5vIGNoYXJzZXQgaW4gY29udGVudCB0eXBlLCBwZWVrIGF0IHJlc3BvbnNlIGJvZHkgZm9yIGF0IG1vc3QgMTAyNCBieXRlc1xuXHRzdHIgPSBidWZmZXIuc2xpY2UoMCwgMTAyNCkudG9TdHJpbmcoKTtcblxuXHQvLyBodG1sNVxuXHRpZiAoIXJlcyAmJiBzdHIpIHtcblx0XHRyZXMgPSAvPG1ldGEuKz9jaGFyc2V0PShbJ1wiXSkoLis/KVxcMS9pLmV4ZWMoc3RyKTtcblx0fVxuXG5cdC8vIGh0bWw0XG5cdGlmICghcmVzICYmIHN0cikge1xuXHRcdHJlcyA9IC88bWV0YVtcXHNdKz9odHRwLWVxdWl2PShbJ1wiXSljb250ZW50LXR5cGVcXDFbXFxzXSs/Y29udGVudD0oWydcIl0pKC4rPylcXDIvaS5leGVjKHN0cik7XG5cdFx0aWYgKCFyZXMpIHtcblx0XHRcdHJlcyA9IC88bWV0YVtcXHNdKz9jb250ZW50PShbJ1wiXSkoLis/KVxcMVtcXHNdKz9odHRwLWVxdWl2PShbJ1wiXSljb250ZW50LXR5cGVcXDMvaS5leGVjKHN0cik7XG5cdFx0XHRpZiAocmVzKSB7XG5cdFx0XHRcdHJlcy5wb3AoKTsgLy8gZHJvcCBsYXN0IHF1b3RlXG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0aWYgKHJlcykge1xuXHRcdFx0cmVzID0gL2NoYXJzZXQ9KC4qKS9pLmV4ZWMocmVzLnBvcCgpKTtcblx0XHR9XG5cdH1cblxuXHQvLyB4bWxcblx0aWYgKCFyZXMgJiYgc3RyKSB7XG5cdFx0cmVzID0gLzxcXD94bWwuKz9lbmNvZGluZz0oWydcIl0pKC4rPylcXDEvaS5leGVjKHN0cik7XG5cdH1cblxuXHQvLyBmb3VuZCBjaGFyc2V0XG5cdGlmIChyZXMpIHtcblx0XHRjaGFyc2V0ID0gcmVzLnBvcCgpO1xuXG5cdFx0Ly8gcHJldmVudCBkZWNvZGUgaXNzdWVzIHdoZW4gc2l0ZXMgdXNlIGluY29ycmVjdCBlbmNvZGluZ1xuXHRcdC8vIHJlZjogaHR0cHM6Ly9oc2l2b25lbi5maS9lbmNvZGluZy1tZW51L1xuXHRcdGlmIChjaGFyc2V0ID09PSAnZ2IyMzEyJyB8fCBjaGFyc2V0ID09PSAnZ2JrJykge1xuXHRcdFx0Y2hhcnNldCA9ICdnYjE4MDMwJztcblx0XHR9XG5cdH1cblxuXHQvLyB0dXJuIHJhdyBidWZmZXJzIGludG8gYSBzaW5nbGUgdXRmLTggYnVmZmVyXG5cdHJldHVybiBjb252ZXJ0KGJ1ZmZlciwgJ1VURi04JywgY2hhcnNldCkudG9TdHJpbmcoKTtcbn1cblxuLyoqXG4gKiBEZXRlY3QgYSBVUkxTZWFyY2hQYXJhbXMgb2JqZWN0XG4gKiByZWY6IGh0dHBzOi8vZ2l0aHViLmNvbS9iaXRpbm4vbm9kZS1mZXRjaC9pc3N1ZXMvMjk2I2lzc3VlY29tbWVudC0zMDc1OTgxNDNcbiAqXG4gKiBAcGFyYW0gICBPYmplY3QgIG9iaiAgICAgT2JqZWN0IHRvIGRldGVjdCBieSB0eXBlIG9yIGJyYW5kXG4gKiBAcmV0dXJuICBTdHJpbmdcbiAqL1xuZnVuY3Rpb24gaXNVUkxTZWFyY2hQYXJhbXMob2JqKSB7XG5cdC8vIER1Y2stdHlwaW5nIGFzIGEgbmVjZXNzYXJ5IGNvbmRpdGlvbi5cblx0aWYgKHR5cGVvZiBvYmogIT09ICdvYmplY3QnIHx8IHR5cGVvZiBvYmouYXBwZW5kICE9PSAnZnVuY3Rpb24nIHx8IHR5cGVvZiBvYmouZGVsZXRlICE9PSAnZnVuY3Rpb24nIHx8IHR5cGVvZiBvYmouZ2V0ICE9PSAnZnVuY3Rpb24nIHx8IHR5cGVvZiBvYmouZ2V0QWxsICE9PSAnZnVuY3Rpb24nIHx8IHR5cGVvZiBvYmouaGFzICE9PSAnZnVuY3Rpb24nIHx8IHR5cGVvZiBvYmouc2V0ICE9PSAnZnVuY3Rpb24nKSB7XG5cdFx0cmV0dXJuIGZhbHNlO1xuXHR9XG5cblx0Ly8gQnJhbmQtY2hlY2tpbmcgYW5kIG1vcmUgZHVjay10eXBpbmcgYXMgb3B0aW9uYWwgY29uZGl0aW9uLlxuXHRyZXR1cm4gb2JqLmNvbnN0cnVjdG9yLm5hbWUgPT09ICdVUkxTZWFyY2hQYXJhbXMnIHx8IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChvYmopID09PSAnW29iamVjdCBVUkxTZWFyY2hQYXJhbXNdJyB8fCB0eXBlb2Ygb2JqLnNvcnQgPT09ICdmdW5jdGlvbic7XG59XG5cbi8qKlxuICogQ2hlY2sgaWYgYG9iamAgaXMgYSBXM0MgYEJsb2JgIG9iamVjdCAod2hpY2ggYEZpbGVgIGluaGVyaXRzIGZyb20pXG4gKiBAcGFyYW0gIHsqfSBvYmpcbiAqIEByZXR1cm4ge2Jvb2xlYW59XG4gKi9cbmZ1bmN0aW9uIGlzQmxvYihvYmopIHtcblx0cmV0dXJuIHR5cGVvZiBvYmogPT09ICdvYmplY3QnICYmIHR5cGVvZiBvYmouYXJyYXlCdWZmZXIgPT09ICdmdW5jdGlvbicgJiYgdHlwZW9mIG9iai50eXBlID09PSAnc3RyaW5nJyAmJiB0eXBlb2Ygb2JqLnN0cmVhbSA9PT0gJ2Z1bmN0aW9uJyAmJiB0eXBlb2Ygb2JqLmNvbnN0cnVjdG9yID09PSAnZnVuY3Rpb24nICYmIHR5cGVvZiBvYmouY29uc3RydWN0b3IubmFtZSA9PT0gJ3N0cmluZycgJiYgL14oQmxvYnxGaWxlKSQvLnRlc3Qob2JqLmNvbnN0cnVjdG9yLm5hbWUpICYmIC9eKEJsb2J8RmlsZSkkLy50ZXN0KG9ialtTeW1ib2wudG9TdHJpbmdUYWddKTtcbn1cblxuLyoqXG4gKiBDbG9uZSBib2R5IGdpdmVuIFJlcy9SZXEgaW5zdGFuY2VcbiAqXG4gKiBAcGFyYW0gICBNaXhlZCAgaW5zdGFuY2UgIFJlc3BvbnNlIG9yIFJlcXVlc3QgaW5zdGFuY2VcbiAqIEByZXR1cm4gIE1peGVkXG4gKi9cbmZ1bmN0aW9uIGNsb25lKGluc3RhbmNlKSB7XG5cdGxldCBwMSwgcDI7XG5cdGxldCBib2R5ID0gaW5zdGFuY2UuYm9keTtcblxuXHQvLyBkb24ndCBhbGxvdyBjbG9uaW5nIGEgdXNlZCBib2R5XG5cdGlmIChpbnN0YW5jZS5ib2R5VXNlZCkge1xuXHRcdHRocm93IG5ldyBFcnJvcignY2Fubm90IGNsb25lIGJvZHkgYWZ0ZXIgaXQgaXMgdXNlZCcpO1xuXHR9XG5cblx0Ly8gY2hlY2sgdGhhdCBib2R5IGlzIGEgc3RyZWFtIGFuZCBub3QgZm9ybS1kYXRhIG9iamVjdFxuXHQvLyBub3RlOiB3ZSBjYW4ndCBjbG9uZSB0aGUgZm9ybS1kYXRhIG9iamVjdCB3aXRob3V0IGhhdmluZyBpdCBhcyBhIGRlcGVuZGVuY3lcblx0aWYgKGJvZHkgaW5zdGFuY2VvZiBTdHJlYW0gJiYgdHlwZW9mIGJvZHkuZ2V0Qm91bmRhcnkgIT09ICdmdW5jdGlvbicpIHtcblx0XHQvLyB0ZWUgaW5zdGFuY2UgYm9keVxuXHRcdHAxID0gbmV3IFBhc3NUaHJvdWdoKCk7XG5cdFx0cDIgPSBuZXcgUGFzc1Rocm91Z2goKTtcblx0XHRib2R5LnBpcGUocDEpO1xuXHRcdGJvZHkucGlwZShwMik7XG5cdFx0Ly8gc2V0IGluc3RhbmNlIGJvZHkgdG8gdGVlZCBib2R5IGFuZCByZXR1cm4gdGhlIG90aGVyIHRlZWQgYm9keVxuXHRcdGluc3RhbmNlW0lOVEVSTkFMU10uYm9keSA9IHAxO1xuXHRcdGJvZHkgPSBwMjtcblx0fVxuXG5cdHJldHVybiBib2R5O1xufVxuXG4vKipcbiAqIFBlcmZvcm1zIHRoZSBvcGVyYXRpb24gXCJleHRyYWN0IGEgYENvbnRlbnQtVHlwZWAgdmFsdWUgZnJvbSB8b2JqZWN0fFwiIGFzXG4gKiBzcGVjaWZpZWQgaW4gdGhlIHNwZWNpZmljYXRpb246XG4gKiBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jY29uY2VwdC1ib2R5aW5pdC1leHRyYWN0XG4gKlxuICogVGhpcyBmdW5jdGlvbiBhc3N1bWVzIHRoYXQgaW5zdGFuY2UuYm9keSBpcyBwcmVzZW50LlxuICpcbiAqIEBwYXJhbSAgIE1peGVkICBpbnN0YW5jZSAgQW55IG9wdGlvbnMuYm9keSBpbnB1dFxuICovXG5mdW5jdGlvbiBleHRyYWN0Q29udGVudFR5cGUoYm9keSkge1xuXHRpZiAoYm9keSA9PT0gbnVsbCkge1xuXHRcdC8vIGJvZHkgaXMgbnVsbFxuXHRcdHJldHVybiBudWxsO1xuXHR9IGVsc2UgaWYgKHR5cGVvZiBib2R5ID09PSAnc3RyaW5nJykge1xuXHRcdC8vIGJvZHkgaXMgc3RyaW5nXG5cdFx0cmV0dXJuICd0ZXh0L3BsYWluO2NoYXJzZXQ9VVRGLTgnO1xuXHR9IGVsc2UgaWYgKGlzVVJMU2VhcmNoUGFyYW1zKGJvZHkpKSB7XG5cdFx0Ly8gYm9keSBpcyBhIFVSTFNlYXJjaFBhcmFtc1xuXHRcdHJldHVybiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkO2NoYXJzZXQ9VVRGLTgnO1xuXHR9IGVsc2UgaWYgKGlzQmxvYihib2R5KSkge1xuXHRcdC8vIGJvZHkgaXMgYmxvYlxuXHRcdHJldHVybiBib2R5LnR5cGUgfHwgbnVsbDtcblx0fSBlbHNlIGlmIChCdWZmZXIuaXNCdWZmZXIoYm9keSkpIHtcblx0XHQvLyBib2R5IGlzIGJ1ZmZlclxuXHRcdHJldHVybiBudWxsO1xuXHR9IGVsc2UgaWYgKE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChib2R5KSA9PT0gJ1tvYmplY3QgQXJyYXlCdWZmZXJdJykge1xuXHRcdC8vIGJvZHkgaXMgQXJyYXlCdWZmZXJcblx0XHRyZXR1cm4gbnVsbDtcblx0fSBlbHNlIGlmIChBcnJheUJ1ZmZlci5pc1ZpZXcoYm9keSkpIHtcblx0XHQvLyBib2R5IGlzIEFycmF5QnVmZmVyVmlld1xuXHRcdHJldHVybiBudWxsO1xuXHR9IGVsc2UgaWYgKHR5cGVvZiBib2R5LmdldEJvdW5kYXJ5ID09PSAnZnVuY3Rpb24nKSB7XG5cdFx0Ly8gZGV0ZWN0IGZvcm0gZGF0YSBpbnB1dCBmcm9tIGZvcm0tZGF0YSBtb2R1bGVcblx0XHRyZXR1cm4gYG11bHRpcGFydC9mb3JtLWRhdGE7Ym91bmRhcnk9JHtib2R5LmdldEJvdW5kYXJ5KCl9YDtcblx0fSBlbHNlIGlmIChib2R5IGluc3RhbmNlb2YgU3RyZWFtKSB7XG5cdFx0Ly8gYm9keSBpcyBzdHJlYW1cblx0XHQvLyBjYW4ndCByZWFsbHkgZG8gbXVjaCBhYm91dCB0aGlzXG5cdFx0cmV0dXJuIG51bGw7XG5cdH0gZWxzZSB7XG5cdFx0Ly8gQm9keSBjb25zdHJ1Y3RvciBkZWZhdWx0cyBvdGhlciB0aGluZ3MgdG8gc3RyaW5nXG5cdFx0cmV0dXJuICd0ZXh0L3BsYWluO2NoYXJzZXQ9VVRGLTgnO1xuXHR9XG59XG5cbi8qKlxuICogVGhlIEZldGNoIFN0YW5kYXJkIHRyZWF0cyB0aGlzIGFzIGlmIFwidG90YWwgYnl0ZXNcIiBpcyBhIHByb3BlcnR5IG9uIHRoZSBib2R5LlxuICogRm9yIHVzLCB3ZSBoYXZlIHRvIGV4cGxpY2l0bHkgZ2V0IGl0IHdpdGggYSBmdW5jdGlvbi5cbiAqXG4gKiByZWY6IGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNjb25jZXB0LWJvZHktdG90YWwtYnl0ZXNcbiAqXG4gKiBAcGFyYW0gICBCb2R5ICAgIGluc3RhbmNlICAgSW5zdGFuY2Ugb2YgQm9keVxuICogQHJldHVybiAgTnVtYmVyPyAgICAgICAgICAgIE51bWJlciBvZiBieXRlcywgb3IgbnVsbCBpZiBub3QgcG9zc2libGVcbiAqL1xuZnVuY3Rpb24gZ2V0VG90YWxCeXRlcyhpbnN0YW5jZSkge1xuXHRjb25zdCBib2R5ID0gaW5zdGFuY2UuYm9keTtcblxuXG5cdGlmIChib2R5ID09PSBudWxsKSB7XG5cdFx0Ly8gYm9keSBpcyBudWxsXG5cdFx0cmV0dXJuIDA7XG5cdH0gZWxzZSBpZiAoaXNCbG9iKGJvZHkpKSB7XG5cdFx0cmV0dXJuIGJvZHkuc2l6ZTtcblx0fSBlbHNlIGlmIChCdWZmZXIuaXNCdWZmZXIoYm9keSkpIHtcblx0XHQvLyBib2R5IGlzIGJ1ZmZlclxuXHRcdHJldHVybiBib2R5Lmxlbmd0aDtcblx0fSBlbHNlIGlmIChib2R5ICYmIHR5cGVvZiBib2R5LmdldExlbmd0aFN5bmMgPT09ICdmdW5jdGlvbicpIHtcblx0XHQvLyBkZXRlY3QgZm9ybSBkYXRhIGlucHV0IGZyb20gZm9ybS1kYXRhIG1vZHVsZVxuXHRcdGlmIChib2R5Ll9sZW5ndGhSZXRyaWV2ZXJzICYmIGJvZHkuX2xlbmd0aFJldHJpZXZlcnMubGVuZ3RoID09IDAgfHwgLy8gMS54XG5cdFx0Ym9keS5oYXNLbm93bkxlbmd0aCAmJiBib2R5Lmhhc0tub3duTGVuZ3RoKCkpIHtcblx0XHRcdC8vIDIueFxuXHRcdFx0cmV0dXJuIGJvZHkuZ2V0TGVuZ3RoU3luYygpO1xuXHRcdH1cblx0XHRyZXR1cm4gbnVsbDtcblx0fSBlbHNlIHtcblx0XHQvLyBib2R5IGlzIHN0cmVhbVxuXHRcdHJldHVybiBudWxsO1xuXHR9XG59XG5cbi8qKlxuICogV3JpdGUgYSBCb2R5IHRvIGEgTm9kZS5qcyBXcml0YWJsZVN0cmVhbSAoZS5nLiBodHRwLlJlcXVlc3QpIG9iamVjdC5cbiAqXG4gKiBAcGFyYW0gICBCb2R5ICAgIGluc3RhbmNlICAgSW5zdGFuY2Ugb2YgQm9keVxuICogQHJldHVybiAgVm9pZFxuICovXG5mdW5jdGlvbiB3cml0ZVRvU3RyZWFtKGRlc3QsIGluc3RhbmNlKSB7XG5cdGNvbnN0IGJvZHkgPSBpbnN0YW5jZS5ib2R5O1xuXG5cblx0aWYgKGJvZHkgPT09IG51bGwpIHtcblx0XHQvLyBib2R5IGlzIG51bGxcblx0XHRkZXN0LmVuZCgpO1xuXHR9IGVsc2UgaWYgKGlzQmxvYihib2R5KSkge1xuXHRcdGJvZHkuc3RyZWFtKCkucGlwZShkZXN0KTtcblx0fSBlbHNlIGlmIChCdWZmZXIuaXNCdWZmZXIoYm9keSkpIHtcblx0XHQvLyBib2R5IGlzIGJ1ZmZlclxuXHRcdGRlc3Qud3JpdGUoYm9keSk7XG5cdFx0ZGVzdC5lbmQoKTtcblx0fSBlbHNlIHtcblx0XHQvLyBib2R5IGlzIHN0cmVhbVxuXHRcdGJvZHkucGlwZShkZXN0KTtcblx0fVxufVxuXG4vLyBleHBvc2UgUHJvbWlzZVxuQm9keS5Qcm9taXNlID0gZ2xvYmFsLlByb21pc2U7XG5cbi8qKlxuICogaGVhZGVycy5qc1xuICpcbiAqIEhlYWRlcnMgY2xhc3Mgb2ZmZXJzIGNvbnZlbmllbnQgaGVscGVyc1xuICovXG5cbmNvbnN0IGludmFsaWRUb2tlblJlZ2V4ID0gL1teXFxeX2BhLXpBLVpcXC0wLTkhIyQlJicqKy58fl0vO1xuY29uc3QgaW52YWxpZEhlYWRlckNoYXJSZWdleCA9IC9bXlxcdFxceDIwLVxceDdlXFx4ODAtXFx4ZmZdLztcblxuZnVuY3Rpb24gdmFsaWRhdGVOYW1lKG5hbWUpIHtcblx0bmFtZSA9IGAke25hbWV9YDtcblx0aWYgKGludmFsaWRUb2tlblJlZ2V4LnRlc3QobmFtZSkgfHwgbmFtZSA9PT0gJycpIHtcblx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKGAke25hbWV9IGlzIG5vdCBhIGxlZ2FsIEhUVFAgaGVhZGVyIG5hbWVgKTtcblx0fVxufVxuXG5mdW5jdGlvbiB2YWxpZGF0ZVZhbHVlKHZhbHVlKSB7XG5cdHZhbHVlID0gYCR7dmFsdWV9YDtcblx0aWYgKGludmFsaWRIZWFkZXJDaGFyUmVnZXgudGVzdCh2YWx1ZSkpIHtcblx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKGAke3ZhbHVlfSBpcyBub3QgYSBsZWdhbCBIVFRQIGhlYWRlciB2YWx1ZWApO1xuXHR9XG59XG5cbi8qKlxuICogRmluZCB0aGUga2V5IGluIHRoZSBtYXAgb2JqZWN0IGdpdmVuIGEgaGVhZGVyIG5hbWUuXG4gKlxuICogUmV0dXJucyB1bmRlZmluZWQgaWYgbm90IGZvdW5kLlxuICpcbiAqIEBwYXJhbSAgIFN0cmluZyAgbmFtZSAgSGVhZGVyIG5hbWVcbiAqIEByZXR1cm4gIFN0cmluZ3xVbmRlZmluZWRcbiAqL1xuZnVuY3Rpb24gZmluZChtYXAsIG5hbWUpIHtcblx0bmFtZSA9IG5hbWUudG9Mb3dlckNhc2UoKTtcblx0Zm9yIChjb25zdCBrZXkgaW4gbWFwKSB7XG5cdFx0aWYgKGtleS50b0xvd2VyQ2FzZSgpID09PSBuYW1lKSB7XG5cdFx0XHRyZXR1cm4ga2V5O1xuXHRcdH1cblx0fVxuXHRyZXR1cm4gdW5kZWZpbmVkO1xufVxuXG5jb25zdCBNQVAgPSBTeW1ib2woJ21hcCcpO1xuY2xhc3MgSGVhZGVycyB7XG5cdC8qKlxuICAqIEhlYWRlcnMgY2xhc3NcbiAgKlxuICAqIEBwYXJhbSAgIE9iamVjdCAgaGVhZGVycyAgUmVzcG9uc2UgaGVhZGVyc1xuICAqIEByZXR1cm4gIFZvaWRcbiAgKi9cblx0Y29uc3RydWN0b3IoKSB7XG5cdFx0bGV0IGluaXQgPSBhcmd1bWVudHMubGVuZ3RoID4gMCAmJiBhcmd1bWVudHNbMF0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1swXSA6IHVuZGVmaW5lZDtcblxuXHRcdHRoaXNbTUFQXSA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG5cblx0XHRpZiAoaW5pdCBpbnN0YW5jZW9mIEhlYWRlcnMpIHtcblx0XHRcdGNvbnN0IHJhd0hlYWRlcnMgPSBpbml0LnJhdygpO1xuXHRcdFx0Y29uc3QgaGVhZGVyTmFtZXMgPSBPYmplY3Qua2V5cyhyYXdIZWFkZXJzKTtcblxuXHRcdFx0Zm9yIChjb25zdCBoZWFkZXJOYW1lIG9mIGhlYWRlck5hbWVzKSB7XG5cdFx0XHRcdGZvciAoY29uc3QgdmFsdWUgb2YgcmF3SGVhZGVyc1toZWFkZXJOYW1lXSkge1xuXHRcdFx0XHRcdHRoaXMuYXBwZW5kKGhlYWRlck5hbWUsIHZhbHVlKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXG5cdFx0Ly8gV2UgZG9uJ3Qgd29ycnkgYWJvdXQgY29udmVydGluZyBwcm9wIHRvIEJ5dGVTdHJpbmcgaGVyZSBhcyBhcHBlbmQoKVxuXHRcdC8vIHdpbGwgaGFuZGxlIGl0LlxuXHRcdGlmIChpbml0ID09IG51bGwpIDsgZWxzZSBpZiAodHlwZW9mIGluaXQgPT09ICdvYmplY3QnKSB7XG5cdFx0XHRjb25zdCBtZXRob2QgPSBpbml0W1N5bWJvbC5pdGVyYXRvcl07XG5cdFx0XHRpZiAobWV0aG9kICE9IG51bGwpIHtcblx0XHRcdFx0aWYgKHR5cGVvZiBtZXRob2QgIT09ICdmdW5jdGlvbicpIHtcblx0XHRcdFx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCdIZWFkZXIgcGFpcnMgbXVzdCBiZSBpdGVyYWJsZScpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ly8gc2VxdWVuY2U8c2VxdWVuY2U8Qnl0ZVN0cmluZz4+XG5cdFx0XHRcdC8vIE5vdGU6IHBlciBzcGVjIHdlIGhhdmUgdG8gZmlyc3QgZXhoYXVzdCB0aGUgbGlzdHMgdGhlbiBwcm9jZXNzIHRoZW1cblx0XHRcdFx0Y29uc3QgcGFpcnMgPSBbXTtcblx0XHRcdFx0Zm9yIChjb25zdCBwYWlyIG9mIGluaXQpIHtcblx0XHRcdFx0XHRpZiAodHlwZW9mIHBhaXIgIT09ICdvYmplY3QnIHx8IHR5cGVvZiBwYWlyW1N5bWJvbC5pdGVyYXRvcl0gIT09ICdmdW5jdGlvbicpIHtcblx0XHRcdFx0XHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJ0VhY2ggaGVhZGVyIHBhaXIgbXVzdCBiZSBpdGVyYWJsZScpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRwYWlycy5wdXNoKEFycmF5LmZyb20ocGFpcikpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Zm9yIChjb25zdCBwYWlyIG9mIHBhaXJzKSB7XG5cdFx0XHRcdFx0aWYgKHBhaXIubGVuZ3RoICE9PSAyKSB7XG5cdFx0XHRcdFx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCdFYWNoIGhlYWRlciBwYWlyIG11c3QgYmUgYSBuYW1lL3ZhbHVlIHR1cGxlJyk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdHRoaXMuYXBwZW5kKHBhaXJbMF0sIHBhaXJbMV0pO1xuXHRcdFx0XHR9XG5cdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHQvLyByZWNvcmQ8Qnl0ZVN0cmluZywgQnl0ZVN0cmluZz5cblx0XHRcdFx0Zm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMoaW5pdCkpIHtcblx0XHRcdFx0XHRjb25zdCB2YWx1ZSA9IGluaXRba2V5XTtcblx0XHRcdFx0XHR0aGlzLmFwcGVuZChrZXksIHZhbHVlKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH0gZWxzZSB7XG5cdFx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCdQcm92aWRlZCBpbml0aWFsaXplciBtdXN0IGJlIGFuIG9iamVjdCcpO1xuXHRcdH1cblx0fVxuXG5cdC8qKlxuICAqIFJldHVybiBjb21iaW5lZCBoZWFkZXIgdmFsdWUgZ2l2ZW4gbmFtZVxuICAqXG4gICogQHBhcmFtICAgU3RyaW5nICBuYW1lICBIZWFkZXIgbmFtZVxuICAqIEByZXR1cm4gIE1peGVkXG4gICovXG5cdGdldChuYW1lKSB7XG5cdFx0bmFtZSA9IGAke25hbWV9YDtcblx0XHR2YWxpZGF0ZU5hbWUobmFtZSk7XG5cdFx0Y29uc3Qga2V5ID0gZmluZCh0aGlzW01BUF0sIG5hbWUpO1xuXHRcdGlmIChrZXkgPT09IHVuZGVmaW5lZCkge1xuXHRcdFx0cmV0dXJuIG51bGw7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIHRoaXNbTUFQXVtrZXldLmpvaW4oJywgJyk7XG5cdH1cblxuXHQvKipcbiAgKiBJdGVyYXRlIG92ZXIgYWxsIGhlYWRlcnNcbiAgKlxuICAqIEBwYXJhbSAgIEZ1bmN0aW9uICBjYWxsYmFjayAgRXhlY3V0ZWQgZm9yIGVhY2ggaXRlbSB3aXRoIHBhcmFtZXRlcnMgKHZhbHVlLCBuYW1lLCB0aGlzQXJnKVxuICAqIEBwYXJhbSAgIEJvb2xlYW4gICB0aGlzQXJnICAgYHRoaXNgIGNvbnRleHQgZm9yIGNhbGxiYWNrIGZ1bmN0aW9uXG4gICogQHJldHVybiAgVm9pZFxuICAqL1xuXHRmb3JFYWNoKGNhbGxiYWNrKSB7XG5cdFx0bGV0IHRoaXNBcmcgPSBhcmd1bWVudHMubGVuZ3RoID4gMSAmJiBhcmd1bWVudHNbMV0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1sxXSA6IHVuZGVmaW5lZDtcblxuXHRcdGxldCBwYWlycyA9IGdldEhlYWRlcnModGhpcyk7XG5cdFx0bGV0IGkgPSAwO1xuXHRcdHdoaWxlIChpIDwgcGFpcnMubGVuZ3RoKSB7XG5cdFx0XHR2YXIgX3BhaXJzJGkgPSBwYWlyc1tpXTtcblx0XHRcdGNvbnN0IG5hbWUgPSBfcGFpcnMkaVswXSxcblx0XHRcdCAgICAgIHZhbHVlID0gX3BhaXJzJGlbMV07XG5cblx0XHRcdGNhbGxiYWNrLmNhbGwodGhpc0FyZywgdmFsdWUsIG5hbWUsIHRoaXMpO1xuXHRcdFx0cGFpcnMgPSBnZXRIZWFkZXJzKHRoaXMpO1xuXHRcdFx0aSsrO1xuXHRcdH1cblx0fVxuXG5cdC8qKlxuICAqIE92ZXJ3cml0ZSBoZWFkZXIgdmFsdWVzIGdpdmVuIG5hbWVcbiAgKlxuICAqIEBwYXJhbSAgIFN0cmluZyAgbmFtZSAgIEhlYWRlciBuYW1lXG4gICogQHBhcmFtICAgU3RyaW5nICB2YWx1ZSAgSGVhZGVyIHZhbHVlXG4gICogQHJldHVybiAgVm9pZFxuICAqL1xuXHRzZXQobmFtZSwgdmFsdWUpIHtcblx0XHRuYW1lID0gYCR7bmFtZX1gO1xuXHRcdHZhbHVlID0gYCR7dmFsdWV9YDtcblx0XHR2YWxpZGF0ZU5hbWUobmFtZSk7XG5cdFx0dmFsaWRhdGVWYWx1ZSh2YWx1ZSk7XG5cdFx0Y29uc3Qga2V5ID0gZmluZCh0aGlzW01BUF0sIG5hbWUpO1xuXHRcdHRoaXNbTUFQXVtrZXkgIT09IHVuZGVmaW5lZCA/IGtleSA6IG5hbWVdID0gW3ZhbHVlXTtcblx0fVxuXG5cdC8qKlxuICAqIEFwcGVuZCBhIHZhbHVlIG9udG8gZXhpc3RpbmcgaGVhZGVyXG4gICpcbiAgKiBAcGFyYW0gICBTdHJpbmcgIG5hbWUgICBIZWFkZXIgbmFtZVxuICAqIEBwYXJhbSAgIFN0cmluZyAgdmFsdWUgIEhlYWRlciB2YWx1ZVxuICAqIEByZXR1cm4gIFZvaWRcbiAgKi9cblx0YXBwZW5kKG5hbWUsIHZhbHVlKSB7XG5cdFx0bmFtZSA9IGAke25hbWV9YDtcblx0XHR2YWx1ZSA9IGAke3ZhbHVlfWA7XG5cdFx0dmFsaWRhdGVOYW1lKG5hbWUpO1xuXHRcdHZhbGlkYXRlVmFsdWUodmFsdWUpO1xuXHRcdGNvbnN0IGtleSA9IGZpbmQodGhpc1tNQVBdLCBuYW1lKTtcblx0XHRpZiAoa2V5ICE9PSB1bmRlZmluZWQpIHtcblx0XHRcdHRoaXNbTUFQXVtrZXldLnB1c2godmFsdWUpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR0aGlzW01BUF1bbmFtZV0gPSBbdmFsdWVdO1xuXHRcdH1cblx0fVxuXG5cdC8qKlxuICAqIENoZWNrIGZvciBoZWFkZXIgbmFtZSBleGlzdGVuY2VcbiAgKlxuICAqIEBwYXJhbSAgIFN0cmluZyAgIG5hbWUgIEhlYWRlciBuYW1lXG4gICogQHJldHVybiAgQm9vbGVhblxuICAqL1xuXHRoYXMobmFtZSkge1xuXHRcdG5hbWUgPSBgJHtuYW1lfWA7XG5cdFx0dmFsaWRhdGVOYW1lKG5hbWUpO1xuXHRcdHJldHVybiBmaW5kKHRoaXNbTUFQXSwgbmFtZSkgIT09IHVuZGVmaW5lZDtcblx0fVxuXG5cdC8qKlxuICAqIERlbGV0ZSBhbGwgaGVhZGVyIHZhbHVlcyBnaXZlbiBuYW1lXG4gICpcbiAgKiBAcGFyYW0gICBTdHJpbmcgIG5hbWUgIEhlYWRlciBuYW1lXG4gICogQHJldHVybiAgVm9pZFxuICAqL1xuXHRkZWxldGUobmFtZSkge1xuXHRcdG5hbWUgPSBgJHtuYW1lfWA7XG5cdFx0dmFsaWRhdGVOYW1lKG5hbWUpO1xuXHRcdGNvbnN0IGtleSA9IGZpbmQodGhpc1tNQVBdLCBuYW1lKTtcblx0XHRpZiAoa2V5ICE9PSB1bmRlZmluZWQpIHtcblx0XHRcdGRlbGV0ZSB0aGlzW01BUF1ba2V5XTtcblx0XHR9XG5cdH1cblxuXHQvKipcbiAgKiBSZXR1cm4gcmF3IGhlYWRlcnMgKG5vbi1zcGVjIGFwaSlcbiAgKlxuICAqIEByZXR1cm4gIE9iamVjdFxuICAqL1xuXHRyYXcoKSB7XG5cdFx0cmV0dXJuIHRoaXNbTUFQXTtcblx0fVxuXG5cdC8qKlxuICAqIEdldCBhbiBpdGVyYXRvciBvbiBrZXlzLlxuICAqXG4gICogQHJldHVybiAgSXRlcmF0b3JcbiAgKi9cblx0a2V5cygpIHtcblx0XHRyZXR1cm4gY3JlYXRlSGVhZGVyc0l0ZXJhdG9yKHRoaXMsICdrZXknKTtcblx0fVxuXG5cdC8qKlxuICAqIEdldCBhbiBpdGVyYXRvciBvbiB2YWx1ZXMuXG4gICpcbiAgKiBAcmV0dXJuICBJdGVyYXRvclxuICAqL1xuXHR2YWx1ZXMoKSB7XG5cdFx0cmV0dXJuIGNyZWF0ZUhlYWRlcnNJdGVyYXRvcih0aGlzLCAndmFsdWUnKTtcblx0fVxuXG5cdC8qKlxuICAqIEdldCBhbiBpdGVyYXRvciBvbiBlbnRyaWVzLlxuICAqXG4gICogVGhpcyBpcyB0aGUgZGVmYXVsdCBpdGVyYXRvciBvZiB0aGUgSGVhZGVycyBvYmplY3QuXG4gICpcbiAgKiBAcmV0dXJuICBJdGVyYXRvclxuICAqL1xuXHRbU3ltYm9sLml0ZXJhdG9yXSgpIHtcblx0XHRyZXR1cm4gY3JlYXRlSGVhZGVyc0l0ZXJhdG9yKHRoaXMsICdrZXkrdmFsdWUnKTtcblx0fVxufVxuSGVhZGVycy5wcm90b3R5cGUuZW50cmllcyA9IEhlYWRlcnMucHJvdG90eXBlW1N5bWJvbC5pdGVyYXRvcl07XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShIZWFkZXJzLnByb3RvdHlwZSwgU3ltYm9sLnRvU3RyaW5nVGFnLCB7XG5cdHZhbHVlOiAnSGVhZGVycycsXG5cdHdyaXRhYmxlOiBmYWxzZSxcblx0ZW51bWVyYWJsZTogZmFsc2UsXG5cdGNvbmZpZ3VyYWJsZTogdHJ1ZVxufSk7XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKEhlYWRlcnMucHJvdG90eXBlLCB7XG5cdGdldDogeyBlbnVtZXJhYmxlOiB0cnVlIH0sXG5cdGZvckVhY2g6IHsgZW51bWVyYWJsZTogdHJ1ZSB9LFxuXHRzZXQ6IHsgZW51bWVyYWJsZTogdHJ1ZSB9LFxuXHRhcHBlbmQ6IHsgZW51bWVyYWJsZTogdHJ1ZSB9LFxuXHRoYXM6IHsgZW51bWVyYWJsZTogdHJ1ZSB9LFxuXHRkZWxldGU6IHsgZW51bWVyYWJsZTogdHJ1ZSB9LFxuXHRrZXlzOiB7IGVudW1lcmFibGU6IHRydWUgfSxcblx0dmFsdWVzOiB7IGVudW1lcmFibGU6IHRydWUgfSxcblx0ZW50cmllczogeyBlbnVtZXJhYmxlOiB0cnVlIH1cbn0pO1xuXG5mdW5jdGlvbiBnZXRIZWFkZXJzKGhlYWRlcnMpIHtcblx0bGV0IGtpbmQgPSBhcmd1bWVudHMubGVuZ3RoID4gMSAmJiBhcmd1bWVudHNbMV0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1sxXSA6ICdrZXkrdmFsdWUnO1xuXG5cdGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhoZWFkZXJzW01BUF0pLnNvcnQoKTtcblx0cmV0dXJuIGtleXMubWFwKGtpbmQgPT09ICdrZXknID8gZnVuY3Rpb24gKGspIHtcblx0XHRyZXR1cm4gay50b0xvd2VyQ2FzZSgpO1xuXHR9IDoga2luZCA9PT0gJ3ZhbHVlJyA/IGZ1bmN0aW9uIChrKSB7XG5cdFx0cmV0dXJuIGhlYWRlcnNbTUFQXVtrXS5qb2luKCcsICcpO1xuXHR9IDogZnVuY3Rpb24gKGspIHtcblx0XHRyZXR1cm4gW2sudG9Mb3dlckNhc2UoKSwgaGVhZGVyc1tNQVBdW2tdLmpvaW4oJywgJyldO1xuXHR9KTtcbn1cblxuY29uc3QgSU5URVJOQUwgPSBTeW1ib2woJ2ludGVybmFsJyk7XG5cbmZ1bmN0aW9uIGNyZWF0ZUhlYWRlcnNJdGVyYXRvcih0YXJnZXQsIGtpbmQpIHtcblx0Y29uc3QgaXRlcmF0b3IgPSBPYmplY3QuY3JlYXRlKEhlYWRlcnNJdGVyYXRvclByb3RvdHlwZSk7XG5cdGl0ZXJhdG9yW0lOVEVSTkFMXSA9IHtcblx0XHR0YXJnZXQsXG5cdFx0a2luZCxcblx0XHRpbmRleDogMFxuXHR9O1xuXHRyZXR1cm4gaXRlcmF0b3I7XG59XG5cbmNvbnN0IEhlYWRlcnNJdGVyYXRvclByb3RvdHlwZSA9IE9iamVjdC5zZXRQcm90b3R5cGVPZih7XG5cdG5leHQoKSB7XG5cdFx0Ly8gaXN0YW5idWwgaWdub3JlIGlmXG5cdFx0aWYgKCF0aGlzIHx8IE9iamVjdC5nZXRQcm90b3R5cGVPZih0aGlzKSAhPT0gSGVhZGVyc0l0ZXJhdG9yUHJvdG90eXBlKSB7XG5cdFx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCdWYWx1ZSBvZiBgdGhpc2AgaXMgbm90IGEgSGVhZGVyc0l0ZXJhdG9yJyk7XG5cdFx0fVxuXG5cdFx0dmFyIF9JTlRFUk5BTCA9IHRoaXNbSU5URVJOQUxdO1xuXHRcdGNvbnN0IHRhcmdldCA9IF9JTlRFUk5BTC50YXJnZXQsXG5cdFx0ICAgICAga2luZCA9IF9JTlRFUk5BTC5raW5kLFxuXHRcdCAgICAgIGluZGV4ID0gX0lOVEVSTkFMLmluZGV4O1xuXG5cdFx0Y29uc3QgdmFsdWVzID0gZ2V0SGVhZGVycyh0YXJnZXQsIGtpbmQpO1xuXHRcdGNvbnN0IGxlbiA9IHZhbHVlcy5sZW5ndGg7XG5cdFx0aWYgKGluZGV4ID49IGxlbikge1xuXHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0dmFsdWU6IHVuZGVmaW5lZCxcblx0XHRcdFx0ZG9uZTogdHJ1ZVxuXHRcdFx0fTtcblx0XHR9XG5cblx0XHR0aGlzW0lOVEVSTkFMXS5pbmRleCA9IGluZGV4ICsgMTtcblxuXHRcdHJldHVybiB7XG5cdFx0XHR2YWx1ZTogdmFsdWVzW2luZGV4XSxcblx0XHRcdGRvbmU6IGZhbHNlXG5cdFx0fTtcblx0fVxufSwgT2JqZWN0LmdldFByb3RvdHlwZU9mKE9iamVjdC5nZXRQcm90b3R5cGVPZihbXVtTeW1ib2wuaXRlcmF0b3JdKCkpKSk7XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShIZWFkZXJzSXRlcmF0b3JQcm90b3R5cGUsIFN5bWJvbC50b1N0cmluZ1RhZywge1xuXHR2YWx1ZTogJ0hlYWRlcnNJdGVyYXRvcicsXG5cdHdyaXRhYmxlOiBmYWxzZSxcblx0ZW51bWVyYWJsZTogZmFsc2UsXG5cdGNvbmZpZ3VyYWJsZTogdHJ1ZVxufSk7XG5cbi8qKlxuICogRXhwb3J0IHRoZSBIZWFkZXJzIG9iamVjdCBpbiBhIGZvcm0gdGhhdCBOb2RlLmpzIGNhbiBjb25zdW1lLlxuICpcbiAqIEBwYXJhbSAgIEhlYWRlcnMgIGhlYWRlcnNcbiAqIEByZXR1cm4gIE9iamVjdFxuICovXG5mdW5jdGlvbiBleHBvcnROb2RlQ29tcGF0aWJsZUhlYWRlcnMoaGVhZGVycykge1xuXHRjb25zdCBvYmogPSBPYmplY3QuYXNzaWduKHsgX19wcm90b19fOiBudWxsIH0sIGhlYWRlcnNbTUFQXSk7XG5cblx0Ly8gaHR0cC5yZXF1ZXN0KCkgb25seSBzdXBwb3J0cyBzdHJpbmcgYXMgSG9zdCBoZWFkZXIuIFRoaXMgaGFjayBtYWtlc1xuXHQvLyBzcGVjaWZ5aW5nIGN1c3RvbSBIb3N0IGhlYWRlciBwb3NzaWJsZS5cblx0Y29uc3QgaG9zdEhlYWRlcktleSA9IGZpbmQoaGVhZGVyc1tNQVBdLCAnSG9zdCcpO1xuXHRpZiAoaG9zdEhlYWRlcktleSAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0b2JqW2hvc3RIZWFkZXJLZXldID0gb2JqW2hvc3RIZWFkZXJLZXldWzBdO1xuXHR9XG5cblx0cmV0dXJuIG9iajtcbn1cblxuLyoqXG4gKiBDcmVhdGUgYSBIZWFkZXJzIG9iamVjdCBmcm9tIGFuIG9iamVjdCBvZiBoZWFkZXJzLCBpZ25vcmluZyB0aG9zZSB0aGF0IGRvXG4gKiBub3QgY29uZm9ybSB0byBIVFRQIGdyYW1tYXIgcHJvZHVjdGlvbnMuXG4gKlxuICogQHBhcmFtICAgT2JqZWN0ICBvYmogIE9iamVjdCBvZiBoZWFkZXJzXG4gKiBAcmV0dXJuICBIZWFkZXJzXG4gKi9cbmZ1bmN0aW9uIGNyZWF0ZUhlYWRlcnNMZW5pZW50KG9iaikge1xuXHRjb25zdCBoZWFkZXJzID0gbmV3IEhlYWRlcnMoKTtcblx0Zm9yIChjb25zdCBuYW1lIG9mIE9iamVjdC5rZXlzKG9iaikpIHtcblx0XHRpZiAoaW52YWxpZFRva2VuUmVnZXgudGVzdChuYW1lKSkge1xuXHRcdFx0Y29udGludWU7XG5cdFx0fVxuXHRcdGlmIChBcnJheS5pc0FycmF5KG9ialtuYW1lXSkpIHtcblx0XHRcdGZvciAoY29uc3QgdmFsIG9mIG9ialtuYW1lXSkge1xuXHRcdFx0XHRpZiAoaW52YWxpZEhlYWRlckNoYXJSZWdleC50ZXN0KHZhbCkpIHtcblx0XHRcdFx0XHRjb250aW51ZTtcblx0XHRcdFx0fVxuXHRcdFx0XHRpZiAoaGVhZGVyc1tNQVBdW25hbWVdID09PSB1bmRlZmluZWQpIHtcblx0XHRcdFx0XHRoZWFkZXJzW01BUF1bbmFtZV0gPSBbdmFsXTtcblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRoZWFkZXJzW01BUF1bbmFtZV0ucHVzaCh2YWwpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fSBlbHNlIGlmICghaW52YWxpZEhlYWRlckNoYXJSZWdleC50ZXN0KG9ialtuYW1lXSkpIHtcblx0XHRcdGhlYWRlcnNbTUFQXVtuYW1lXSA9IFtvYmpbbmFtZV1dO1xuXHRcdH1cblx0fVxuXHRyZXR1cm4gaGVhZGVycztcbn1cblxuY29uc3QgSU5URVJOQUxTJDEgPSBTeW1ib2woJ1Jlc3BvbnNlIGludGVybmFscycpO1xuXG4vLyBmaXggYW4gaXNzdWUgd2hlcmUgXCJTVEFUVVNfQ09ERVNcIiBhcmVuJ3QgYSBuYW1lZCBleHBvcnQgZm9yIG5vZGUgPDEwXG5jb25zdCBTVEFUVVNfQ09ERVMgPSBodHRwLlNUQVRVU19DT0RFUztcblxuLyoqXG4gKiBSZXNwb25zZSBjbGFzc1xuICpcbiAqIEBwYXJhbSAgIFN0cmVhbSAgYm9keSAgUmVhZGFibGUgc3RyZWFtXG4gKiBAcGFyYW0gICBPYmplY3QgIG9wdHMgIFJlc3BvbnNlIG9wdGlvbnNcbiAqIEByZXR1cm4gIFZvaWRcbiAqL1xuY2xhc3MgUmVzcG9uc2Uge1xuXHRjb25zdHJ1Y3RvcigpIHtcblx0XHRsZXQgYm9keSA9IGFyZ3VtZW50cy5sZW5ndGggPiAwICYmIGFyZ3VtZW50c1swXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzBdIDogbnVsbDtcblx0XHRsZXQgb3B0cyA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDoge307XG5cblx0XHRCb2R5LmNhbGwodGhpcywgYm9keSwgb3B0cyk7XG5cblx0XHRjb25zdCBzdGF0dXMgPSBvcHRzLnN0YXR1cyB8fCAyMDA7XG5cdFx0Y29uc3QgaGVhZGVycyA9IG5ldyBIZWFkZXJzKG9wdHMuaGVhZGVycyk7XG5cblx0XHRpZiAoYm9keSAhPSBudWxsICYmICFoZWFkZXJzLmhhcygnQ29udGVudC1UeXBlJykpIHtcblx0XHRcdGNvbnN0IGNvbnRlbnRUeXBlID0gZXh0cmFjdENvbnRlbnRUeXBlKGJvZHkpO1xuXHRcdFx0aWYgKGNvbnRlbnRUeXBlKSB7XG5cdFx0XHRcdGhlYWRlcnMuYXBwZW5kKCdDb250ZW50LVR5cGUnLCBjb250ZW50VHlwZSk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0dGhpc1tJTlRFUk5BTFMkMV0gPSB7XG5cdFx0XHR1cmw6IG9wdHMudXJsLFxuXHRcdFx0c3RhdHVzLFxuXHRcdFx0c3RhdHVzVGV4dDogb3B0cy5zdGF0dXNUZXh0IHx8IFNUQVRVU19DT0RFU1tzdGF0dXNdLFxuXHRcdFx0aGVhZGVycyxcblx0XHRcdGNvdW50ZXI6IG9wdHMuY291bnRlclxuXHRcdH07XG5cdH1cblxuXHRnZXQgdXJsKCkge1xuXHRcdHJldHVybiB0aGlzW0lOVEVSTkFMUyQxXS51cmwgfHwgJyc7XG5cdH1cblxuXHRnZXQgc3RhdHVzKCkge1xuXHRcdHJldHVybiB0aGlzW0lOVEVSTkFMUyQxXS5zdGF0dXM7XG5cdH1cblxuXHQvKipcbiAgKiBDb252ZW5pZW5jZSBwcm9wZXJ0eSByZXByZXNlbnRpbmcgaWYgdGhlIHJlcXVlc3QgZW5kZWQgbm9ybWFsbHlcbiAgKi9cblx0Z2V0IG9rKCkge1xuXHRcdHJldHVybiB0aGlzW0lOVEVSTkFMUyQxXS5zdGF0dXMgPj0gMjAwICYmIHRoaXNbSU5URVJOQUxTJDFdLnN0YXR1cyA8IDMwMDtcblx0fVxuXG5cdGdldCByZWRpcmVjdGVkKCkge1xuXHRcdHJldHVybiB0aGlzW0lOVEVSTkFMUyQxXS5jb3VudGVyID4gMDtcblx0fVxuXG5cdGdldCBzdGF0dXNUZXh0KCkge1xuXHRcdHJldHVybiB0aGlzW0lOVEVSTkFMUyQxXS5zdGF0dXNUZXh0O1xuXHR9XG5cblx0Z2V0IGhlYWRlcnMoKSB7XG5cdFx0cmV0dXJuIHRoaXNbSU5URVJOQUxTJDFdLmhlYWRlcnM7XG5cdH1cblxuXHQvKipcbiAgKiBDbG9uZSB0aGlzIHJlc3BvbnNlXG4gICpcbiAgKiBAcmV0dXJuICBSZXNwb25zZVxuICAqL1xuXHRjbG9uZSgpIHtcblx0XHRyZXR1cm4gbmV3IFJlc3BvbnNlKGNsb25lKHRoaXMpLCB7XG5cdFx0XHR1cmw6IHRoaXMudXJsLFxuXHRcdFx0c3RhdHVzOiB0aGlzLnN0YXR1cyxcblx0XHRcdHN0YXR1c1RleHQ6IHRoaXMuc3RhdHVzVGV4dCxcblx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVycyxcblx0XHRcdG9rOiB0aGlzLm9rLFxuXHRcdFx0cmVkaXJlY3RlZDogdGhpcy5yZWRpcmVjdGVkXG5cdFx0fSk7XG5cdH1cbn1cblxuQm9keS5taXhJbihSZXNwb25zZS5wcm90b3R5cGUpO1xuXG5PYmplY3QuZGVmaW5lUHJvcGVydGllcyhSZXNwb25zZS5wcm90b3R5cGUsIHtcblx0dXJsOiB7IGVudW1lcmFibGU6IHRydWUgfSxcblx0c3RhdHVzOiB7IGVudW1lcmFibGU6IHRydWUgfSxcblx0b2s6IHsgZW51bWVyYWJsZTogdHJ1ZSB9LFxuXHRyZWRpcmVjdGVkOiB7IGVudW1lcmFibGU6IHRydWUgfSxcblx0c3RhdHVzVGV4dDogeyBlbnVtZXJhYmxlOiB0cnVlIH0sXG5cdGhlYWRlcnM6IHsgZW51bWVyYWJsZTogdHJ1ZSB9LFxuXHRjbG9uZTogeyBlbnVtZXJhYmxlOiB0cnVlIH1cbn0pO1xuXG5PYmplY3QuZGVmaW5lUHJvcGVydHkoUmVzcG9uc2UucHJvdG90eXBlLCBTeW1ib2wudG9TdHJpbmdUYWcsIHtcblx0dmFsdWU6ICdSZXNwb25zZScsXG5cdHdyaXRhYmxlOiBmYWxzZSxcblx0ZW51bWVyYWJsZTogZmFsc2UsXG5cdGNvbmZpZ3VyYWJsZTogdHJ1ZVxufSk7XG5cbmNvbnN0IElOVEVSTkFMUyQyID0gU3ltYm9sKCdSZXF1ZXN0IGludGVybmFscycpO1xuY29uc3QgVVJMID0gVXJsLlVSTCB8fCB3aGF0d2dVcmwuVVJMO1xuXG4vLyBmaXggYW4gaXNzdWUgd2hlcmUgXCJmb3JtYXRcIiwgXCJwYXJzZVwiIGFyZW4ndCBhIG5hbWVkIGV4cG9ydCBmb3Igbm9kZSA8MTBcbmNvbnN0IHBhcnNlX3VybCA9IFVybC5wYXJzZTtcbmNvbnN0IGZvcm1hdF91cmwgPSBVcmwuZm9ybWF0O1xuXG4vKipcbiAqIFdyYXBwZXIgYXJvdW5kIGBuZXcgVVJMYCB0byBoYW5kbGUgYXJiaXRyYXJ5IFVSTHNcbiAqXG4gKiBAcGFyYW0gIHtzdHJpbmd9IHVybFN0clxuICogQHJldHVybiB7dm9pZH1cbiAqL1xuZnVuY3Rpb24gcGFyc2VVUkwodXJsU3RyKSB7XG5cdC8qXG4gXHRDaGVjayB3aGV0aGVyIHRoZSBVUkwgaXMgYWJzb2x1dGUgb3Igbm90XG4gXHRcdFNjaGVtZTogaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzM5ODYjc2VjdGlvbi0zLjFcbiBcdEFic29sdXRlIFVSTDogaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzM5ODYjc2VjdGlvbi00LjNcbiAqL1xuXHRpZiAoL15bYS16QS1aXVthLXpBLVpcXGQrXFwtLl0qOi8uZXhlYyh1cmxTdHIpKSB7XG5cdFx0dXJsU3RyID0gbmV3IFVSTCh1cmxTdHIpLnRvU3RyaW5nKCk7XG5cdH1cblxuXHQvLyBGYWxsYmFjayB0byBvbGQgaW1wbGVtZW50YXRpb24gZm9yIGFyYml0cmFyeSBVUkxzXG5cdHJldHVybiBwYXJzZV91cmwodXJsU3RyKTtcbn1cblxuY29uc3Qgc3RyZWFtRGVzdHJ1Y3Rpb25TdXBwb3J0ZWQgPSAnZGVzdHJveScgaW4gU3RyZWFtLlJlYWRhYmxlLnByb3RvdHlwZTtcblxuLyoqXG4gKiBDaGVjayBpZiBhIHZhbHVlIGlzIGFuIGluc3RhbmNlIG9mIFJlcXVlc3QuXG4gKlxuICogQHBhcmFtICAgTWl4ZWQgICBpbnB1dFxuICogQHJldHVybiAgQm9vbGVhblxuICovXG5mdW5jdGlvbiBpc1JlcXVlc3QoaW5wdXQpIHtcblx0cmV0dXJuIHR5cGVvZiBpbnB1dCA9PT0gJ29iamVjdCcgJiYgdHlwZW9mIGlucHV0W0lOVEVSTkFMUyQyXSA9PT0gJ29iamVjdCc7XG59XG5cbmZ1bmN0aW9uIGlzQWJvcnRTaWduYWwoc2lnbmFsKSB7XG5cdGNvbnN0IHByb3RvID0gc2lnbmFsICYmIHR5cGVvZiBzaWduYWwgPT09ICdvYmplY3QnICYmIE9iamVjdC5nZXRQcm90b3R5cGVPZihzaWduYWwpO1xuXHRyZXR1cm4gISEocHJvdG8gJiYgcHJvdG8uY29uc3RydWN0b3IubmFtZSA9PT0gJ0Fib3J0U2lnbmFsJyk7XG59XG5cbi8qKlxuICogUmVxdWVzdCBjbGFzc1xuICpcbiAqIEBwYXJhbSAgIE1peGVkICAgaW5wdXQgIFVybCBvciBSZXF1ZXN0IGluc3RhbmNlXG4gKiBAcGFyYW0gICBPYmplY3QgIGluaXQgICBDdXN0b20gb3B0aW9uc1xuICogQHJldHVybiAgVm9pZFxuICovXG5jbGFzcyBSZXF1ZXN0IHtcblx0Y29uc3RydWN0b3IoaW5wdXQpIHtcblx0XHRsZXQgaW5pdCA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDoge307XG5cblx0XHRsZXQgcGFyc2VkVVJMO1xuXG5cdFx0Ly8gbm9ybWFsaXplIGlucHV0XG5cdFx0aWYgKCFpc1JlcXVlc3QoaW5wdXQpKSB7XG5cdFx0XHRpZiAoaW5wdXQgJiYgaW5wdXQuaHJlZikge1xuXHRcdFx0XHQvLyBpbiBvcmRlciB0byBzdXBwb3J0IE5vZGUuanMnIFVybCBvYmplY3RzOyB0aG91Z2ggV0hBVFdHJ3MgVVJMIG9iamVjdHNcblx0XHRcdFx0Ly8gd2lsbCBmYWxsIGludG8gdGhpcyBicmFuY2ggYWxzbyAoc2luY2UgdGhlaXIgYHRvU3RyaW5nKClgIHdpbGwgcmV0dXJuXG5cdFx0XHRcdC8vIGBocmVmYCBwcm9wZXJ0eSBhbnl3YXkpXG5cdFx0XHRcdHBhcnNlZFVSTCA9IHBhcnNlVVJMKGlucHV0LmhyZWYpO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0Ly8gY29lcmNlIGlucHV0IHRvIGEgc3RyaW5nIGJlZm9yZSBhdHRlbXB0aW5nIHRvIHBhcnNlXG5cdFx0XHRcdHBhcnNlZFVSTCA9IHBhcnNlVVJMKGAke2lucHV0fWApO1xuXHRcdFx0fVxuXHRcdFx0aW5wdXQgPSB7fTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0cGFyc2VkVVJMID0gcGFyc2VVUkwoaW5wdXQudXJsKTtcblx0XHR9XG5cblx0XHRsZXQgbWV0aG9kID0gaW5pdC5tZXRob2QgfHwgaW5wdXQubWV0aG9kIHx8ICdHRVQnO1xuXHRcdG1ldGhvZCA9IG1ldGhvZC50b1VwcGVyQ2FzZSgpO1xuXG5cdFx0aWYgKChpbml0LmJvZHkgIT0gbnVsbCB8fCBpc1JlcXVlc3QoaW5wdXQpICYmIGlucHV0LmJvZHkgIT09IG51bGwpICYmIChtZXRob2QgPT09ICdHRVQnIHx8IG1ldGhvZCA9PT0gJ0hFQUQnKSkge1xuXHRcdFx0dGhyb3cgbmV3IFR5cGVFcnJvcignUmVxdWVzdCB3aXRoIEdFVC9IRUFEIG1ldGhvZCBjYW5ub3QgaGF2ZSBib2R5Jyk7XG5cdFx0fVxuXG5cdFx0bGV0IGlucHV0Qm9keSA9IGluaXQuYm9keSAhPSBudWxsID8gaW5pdC5ib2R5IDogaXNSZXF1ZXN0KGlucHV0KSAmJiBpbnB1dC5ib2R5ICE9PSBudWxsID8gY2xvbmUoaW5wdXQpIDogbnVsbDtcblxuXHRcdEJvZHkuY2FsbCh0aGlzLCBpbnB1dEJvZHksIHtcblx0XHRcdHRpbWVvdXQ6IGluaXQudGltZW91dCB8fCBpbnB1dC50aW1lb3V0IHx8IDAsXG5cdFx0XHRzaXplOiBpbml0LnNpemUgfHwgaW5wdXQuc2l6ZSB8fCAwXG5cdFx0fSk7XG5cblx0XHRjb25zdCBoZWFkZXJzID0gbmV3IEhlYWRlcnMoaW5pdC5oZWFkZXJzIHx8IGlucHV0LmhlYWRlcnMgfHwge30pO1xuXG5cdFx0aWYgKGlucHV0Qm9keSAhPSBudWxsICYmICFoZWFkZXJzLmhhcygnQ29udGVudC1UeXBlJykpIHtcblx0XHRcdGNvbnN0IGNvbnRlbnRUeXBlID0gZXh0cmFjdENvbnRlbnRUeXBlKGlucHV0Qm9keSk7XG5cdFx0XHRpZiAoY29udGVudFR5cGUpIHtcblx0XHRcdFx0aGVhZGVycy5hcHBlbmQoJ0NvbnRlbnQtVHlwZScsIGNvbnRlbnRUeXBlKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRsZXQgc2lnbmFsID0gaXNSZXF1ZXN0KGlucHV0KSA/IGlucHV0LnNpZ25hbCA6IG51bGw7XG5cdFx0aWYgKCdzaWduYWwnIGluIGluaXQpIHNpZ25hbCA9IGluaXQuc2lnbmFsO1xuXG5cdFx0aWYgKHNpZ25hbCAhPSBudWxsICYmICFpc0Fib3J0U2lnbmFsKHNpZ25hbCkpIHtcblx0XHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJ0V4cGVjdGVkIHNpZ25hbCB0byBiZSBhbiBpbnN0YW5jZW9mIEFib3J0U2lnbmFsJyk7XG5cdFx0fVxuXG5cdFx0dGhpc1tJTlRFUk5BTFMkMl0gPSB7XG5cdFx0XHRtZXRob2QsXG5cdFx0XHRyZWRpcmVjdDogaW5pdC5yZWRpcmVjdCB8fCBpbnB1dC5yZWRpcmVjdCB8fCAnZm9sbG93Jyxcblx0XHRcdGhlYWRlcnMsXG5cdFx0XHRwYXJzZWRVUkwsXG5cdFx0XHRzaWduYWxcblx0XHR9O1xuXG5cdFx0Ly8gbm9kZS1mZXRjaC1vbmx5IG9wdGlvbnNcblx0XHR0aGlzLmZvbGxvdyA9IGluaXQuZm9sbG93ICE9PSB1bmRlZmluZWQgPyBpbml0LmZvbGxvdyA6IGlucHV0LmZvbGxvdyAhPT0gdW5kZWZpbmVkID8gaW5wdXQuZm9sbG93IDogMjA7XG5cdFx0dGhpcy5jb21wcmVzcyA9IGluaXQuY29tcHJlc3MgIT09IHVuZGVmaW5lZCA/IGluaXQuY29tcHJlc3MgOiBpbnB1dC5jb21wcmVzcyAhPT0gdW5kZWZpbmVkID8gaW5wdXQuY29tcHJlc3MgOiB0cnVlO1xuXHRcdHRoaXMuY291bnRlciA9IGluaXQuY291bnRlciB8fCBpbnB1dC5jb3VudGVyIHx8IDA7XG5cdFx0dGhpcy5hZ2VudCA9IGluaXQuYWdlbnQgfHwgaW5wdXQuYWdlbnQ7XG5cdH1cblxuXHRnZXQgbWV0aG9kKCkge1xuXHRcdHJldHVybiB0aGlzW0lOVEVSTkFMUyQyXS5tZXRob2Q7XG5cdH1cblxuXHRnZXQgdXJsKCkge1xuXHRcdHJldHVybiBmb3JtYXRfdXJsKHRoaXNbSU5URVJOQUxTJDJdLnBhcnNlZFVSTCk7XG5cdH1cblxuXHRnZXQgaGVhZGVycygpIHtcblx0XHRyZXR1cm4gdGhpc1tJTlRFUk5BTFMkMl0uaGVhZGVycztcblx0fVxuXG5cdGdldCByZWRpcmVjdCgpIHtcblx0XHRyZXR1cm4gdGhpc1tJTlRFUk5BTFMkMl0ucmVkaXJlY3Q7XG5cdH1cblxuXHRnZXQgc2lnbmFsKCkge1xuXHRcdHJldHVybiB0aGlzW0lOVEVSTkFMUyQyXS5zaWduYWw7XG5cdH1cblxuXHQvKipcbiAgKiBDbG9uZSB0aGlzIHJlcXVlc3RcbiAgKlxuICAqIEByZXR1cm4gIFJlcXVlc3RcbiAgKi9cblx0Y2xvbmUoKSB7XG5cdFx0cmV0dXJuIG5ldyBSZXF1ZXN0KHRoaXMpO1xuXHR9XG59XG5cbkJvZHkubWl4SW4oUmVxdWVzdC5wcm90b3R5cGUpO1xuXG5PYmplY3QuZGVmaW5lUHJvcGVydHkoUmVxdWVzdC5wcm90b3R5cGUsIFN5bWJvbC50b1N0cmluZ1RhZywge1xuXHR2YWx1ZTogJ1JlcXVlc3QnLFxuXHR3cml0YWJsZTogZmFsc2UsXG5cdGVudW1lcmFibGU6IGZhbHNlLFxuXHRjb25maWd1cmFibGU6IHRydWVcbn0pO1xuXG5PYmplY3QuZGVmaW5lUHJvcGVydGllcyhSZXF1ZXN0LnByb3RvdHlwZSwge1xuXHRtZXRob2Q6IHsgZW51bWVyYWJsZTogdHJ1ZSB9LFxuXHR1cmw6IHsgZW51bWVyYWJsZTogdHJ1ZSB9LFxuXHRoZWFkZXJzOiB7IGVudW1lcmFibGU6IHRydWUgfSxcblx0cmVkaXJlY3Q6IHsgZW51bWVyYWJsZTogdHJ1ZSB9LFxuXHRjbG9uZTogeyBlbnVtZXJhYmxlOiB0cnVlIH0sXG5cdHNpZ25hbDogeyBlbnVtZXJhYmxlOiB0cnVlIH1cbn0pO1xuXG4vKipcbiAqIENvbnZlcnQgYSBSZXF1ZXN0IHRvIE5vZGUuanMgaHR0cCByZXF1ZXN0IG9wdGlvbnMuXG4gKlxuICogQHBhcmFtICAgUmVxdWVzdCAgQSBSZXF1ZXN0IGluc3RhbmNlXG4gKiBAcmV0dXJuICBPYmplY3QgICBUaGUgb3B0aW9ucyBvYmplY3QgdG8gYmUgcGFzc2VkIHRvIGh0dHAucmVxdWVzdFxuICovXG5mdW5jdGlvbiBnZXROb2RlUmVxdWVzdE9wdGlvbnMocmVxdWVzdCkge1xuXHRjb25zdCBwYXJzZWRVUkwgPSByZXF1ZXN0W0lOVEVSTkFMUyQyXS5wYXJzZWRVUkw7XG5cdGNvbnN0IGhlYWRlcnMgPSBuZXcgSGVhZGVycyhyZXF1ZXN0W0lOVEVSTkFMUyQyXS5oZWFkZXJzKTtcblxuXHQvLyBmZXRjaCBzdGVwIDEuM1xuXHRpZiAoIWhlYWRlcnMuaGFzKCdBY2NlcHQnKSkge1xuXHRcdGhlYWRlcnMuc2V0KCdBY2NlcHQnLCAnKi8qJyk7XG5cdH1cblxuXHQvLyBCYXNpYyBmZXRjaFxuXHRpZiAoIXBhcnNlZFVSTC5wcm90b2NvbCB8fCAhcGFyc2VkVVJMLmhvc3RuYW1lKSB7XG5cdFx0dGhyb3cgbmV3IFR5cGVFcnJvcignT25seSBhYnNvbHV0ZSBVUkxzIGFyZSBzdXBwb3J0ZWQnKTtcblx0fVxuXG5cdGlmICghL15odHRwcz86JC8udGVzdChwYXJzZWRVUkwucHJvdG9jb2wpKSB7XG5cdFx0dGhyb3cgbmV3IFR5cGVFcnJvcignT25seSBIVFRQKFMpIHByb3RvY29scyBhcmUgc3VwcG9ydGVkJyk7XG5cdH1cblxuXHRpZiAocmVxdWVzdC5zaWduYWwgJiYgcmVxdWVzdC5ib2R5IGluc3RhbmNlb2YgU3RyZWFtLlJlYWRhYmxlICYmICFzdHJlYW1EZXN0cnVjdGlvblN1cHBvcnRlZCkge1xuXHRcdHRocm93IG5ldyBFcnJvcignQ2FuY2VsbGF0aW9uIG9mIHN0cmVhbWVkIHJlcXVlc3RzIHdpdGggQWJvcnRTaWduYWwgaXMgbm90IHN1cHBvcnRlZCBpbiBub2RlIDwgOCcpO1xuXHR9XG5cblx0Ly8gSFRUUC1uZXR3b3JrLW9yLWNhY2hlIGZldGNoIHN0ZXBzIDIuNC0yLjdcblx0bGV0IGNvbnRlbnRMZW5ndGhWYWx1ZSA9IG51bGw7XG5cdGlmIChyZXF1ZXN0LmJvZHkgPT0gbnVsbCAmJiAvXihQT1NUfFBVVCkkL2kudGVzdChyZXF1ZXN0Lm1ldGhvZCkpIHtcblx0XHRjb250ZW50TGVuZ3RoVmFsdWUgPSAnMCc7XG5cdH1cblx0aWYgKHJlcXVlc3QuYm9keSAhPSBudWxsKSB7XG5cdFx0Y29uc3QgdG90YWxCeXRlcyA9IGdldFRvdGFsQnl0ZXMocmVxdWVzdCk7XG5cdFx0aWYgKHR5cGVvZiB0b3RhbEJ5dGVzID09PSAnbnVtYmVyJykge1xuXHRcdFx0Y29udGVudExlbmd0aFZhbHVlID0gU3RyaW5nKHRvdGFsQnl0ZXMpO1xuXHRcdH1cblx0fVxuXHRpZiAoY29udGVudExlbmd0aFZhbHVlKSB7XG5cdFx0aGVhZGVycy5zZXQoJ0NvbnRlbnQtTGVuZ3RoJywgY29udGVudExlbmd0aFZhbHVlKTtcblx0fVxuXG5cdC8vIEhUVFAtbmV0d29yay1vci1jYWNoZSBmZXRjaCBzdGVwIDIuMTFcblx0aWYgKCFoZWFkZXJzLmhhcygnVXNlci1BZ2VudCcpKSB7XG5cdFx0aGVhZGVycy5zZXQoJ1VzZXItQWdlbnQnLCAnbm9kZS1mZXRjaC8xLjAgKCtodHRwczovL2dpdGh1Yi5jb20vYml0aW5uL25vZGUtZmV0Y2gpJyk7XG5cdH1cblxuXHQvLyBIVFRQLW5ldHdvcmstb3ItY2FjaGUgZmV0Y2ggc3RlcCAyLjE1XG5cdGlmIChyZXF1ZXN0LmNvbXByZXNzICYmICFoZWFkZXJzLmhhcygnQWNjZXB0LUVuY29kaW5nJykpIHtcblx0XHRoZWFkZXJzLnNldCgnQWNjZXB0LUVuY29kaW5nJywgJ2d6aXAsZGVmbGF0ZScpO1xuXHR9XG5cblx0bGV0IGFnZW50ID0gcmVxdWVzdC5hZ2VudDtcblx0aWYgKHR5cGVvZiBhZ2VudCA9PT0gJ2Z1bmN0aW9uJykge1xuXHRcdGFnZW50ID0gYWdlbnQocGFyc2VkVVJMKTtcblx0fVxuXG5cdC8vIEhUVFAtbmV0d29yayBmZXRjaCBzdGVwIDQuMlxuXHQvLyBjaHVua2VkIGVuY29kaW5nIGlzIGhhbmRsZWQgYnkgTm9kZS5qc1xuXG5cdHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBwYXJzZWRVUkwsIHtcblx0XHRtZXRob2Q6IHJlcXVlc3QubWV0aG9kLFxuXHRcdGhlYWRlcnM6IGV4cG9ydE5vZGVDb21wYXRpYmxlSGVhZGVycyhoZWFkZXJzKSxcblx0XHRhZ2VudFxuXHR9KTtcbn1cblxuLyoqXG4gKiBhYm9ydC1lcnJvci5qc1xuICpcbiAqIEFib3J0RXJyb3IgaW50ZXJmYWNlIGZvciBjYW5jZWxsZWQgcmVxdWVzdHNcbiAqL1xuXG4vKipcbiAqIENyZWF0ZSBBYm9ydEVycm9yIGluc3RhbmNlXG4gKlxuICogQHBhcmFtICAgU3RyaW5nICAgICAgbWVzc2FnZSAgICAgIEVycm9yIG1lc3NhZ2UgZm9yIGh1bWFuXG4gKiBAcmV0dXJuICBBYm9ydEVycm9yXG4gKi9cbmZ1bmN0aW9uIEFib3J0RXJyb3IobWVzc2FnZSkge1xuICBFcnJvci5jYWxsKHRoaXMsIG1lc3NhZ2UpO1xuXG4gIHRoaXMudHlwZSA9ICdhYm9ydGVkJztcbiAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZTtcblxuICAvLyBoaWRlIGN1c3RvbSBlcnJvciBpbXBsZW1lbnRhdGlvbiBkZXRhaWxzIGZyb20gZW5kLXVzZXJzXG4gIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsIHRoaXMuY29uc3RydWN0b3IpO1xufVxuXG5BYm9ydEVycm9yLnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUoRXJyb3IucHJvdG90eXBlKTtcbkFib3J0RXJyb3IucHJvdG90eXBlLmNvbnN0cnVjdG9yID0gQWJvcnRFcnJvcjtcbkFib3J0RXJyb3IucHJvdG90eXBlLm5hbWUgPSAnQWJvcnRFcnJvcic7XG5cbmNvbnN0IFVSTCQxID0gVXJsLlVSTCB8fCB3aGF0d2dVcmwuVVJMO1xuXG4vLyBmaXggYW4gaXNzdWUgd2hlcmUgXCJQYXNzVGhyb3VnaFwiLCBcInJlc29sdmVcIiBhcmVuJ3QgYSBuYW1lZCBleHBvcnQgZm9yIG5vZGUgPDEwXG5jb25zdCBQYXNzVGhyb3VnaCQxID0gU3RyZWFtLlBhc3NUaHJvdWdoO1xuXG5jb25zdCBpc0RvbWFpbk9yU3ViZG9tYWluID0gZnVuY3Rpb24gaXNEb21haW5PclN1YmRvbWFpbihkZXN0aW5hdGlvbiwgb3JpZ2luYWwpIHtcblx0Y29uc3Qgb3JpZyA9IG5ldyBVUkwkMShvcmlnaW5hbCkuaG9zdG5hbWU7XG5cdGNvbnN0IGRlc3QgPSBuZXcgVVJMJDEoZGVzdGluYXRpb24pLmhvc3RuYW1lO1xuXG5cdHJldHVybiBvcmlnID09PSBkZXN0IHx8IG9yaWdbb3JpZy5sZW5ndGggLSBkZXN0Lmxlbmd0aCAtIDFdID09PSAnLicgJiYgb3JpZy5lbmRzV2l0aChkZXN0KTtcbn07XG5cbi8qKlxuICogaXNTYW1lUHJvdG9jb2wgcmVwb3J0cyB3aGV0aGVyIHRoZSB0d28gcHJvdmlkZWQgVVJMcyB1c2UgdGhlIHNhbWUgcHJvdG9jb2wuXG4gKlxuICogQm90aCBkb21haW5zIG11c3QgYWxyZWFkeSBiZSBpbiBjYW5vbmljYWwgZm9ybS5cbiAqIEBwYXJhbSB7c3RyaW5nfFVSTH0gb3JpZ2luYWxcbiAqIEBwYXJhbSB7c3RyaW5nfFVSTH0gZGVzdGluYXRpb25cbiAqL1xuY29uc3QgaXNTYW1lUHJvdG9jb2wgPSBmdW5jdGlvbiBpc1NhbWVQcm90b2NvbChkZXN0aW5hdGlvbiwgb3JpZ2luYWwpIHtcblx0Y29uc3Qgb3JpZyA9IG5ldyBVUkwkMShvcmlnaW5hbCkucHJvdG9jb2w7XG5cdGNvbnN0IGRlc3QgPSBuZXcgVVJMJDEoZGVzdGluYXRpb24pLnByb3RvY29sO1xuXG5cdHJldHVybiBvcmlnID09PSBkZXN0O1xufTtcblxuLyoqXG4gKiBGZXRjaCBmdW5jdGlvblxuICpcbiAqIEBwYXJhbSAgIE1peGVkICAgIHVybCAgIEFic29sdXRlIHVybCBvciBSZXF1ZXN0IGluc3RhbmNlXG4gKiBAcGFyYW0gICBPYmplY3QgICBvcHRzICBGZXRjaCBvcHRpb25zXG4gKiBAcmV0dXJuICBQcm9taXNlXG4gKi9cbmZ1bmN0aW9uIGZldGNoKHVybCwgb3B0cykge1xuXG5cdC8vIGFsbG93IGN1c3RvbSBwcm9taXNlXG5cdGlmICghZmV0Y2guUHJvbWlzZSkge1xuXHRcdHRocm93IG5ldyBFcnJvcignbmF0aXZlIHByb21pc2UgbWlzc2luZywgc2V0IGZldGNoLlByb21pc2UgdG8geW91ciBmYXZvcml0ZSBhbHRlcm5hdGl2ZScpO1xuXHR9XG5cblx0Qm9keS5Qcm9taXNlID0gZmV0Y2guUHJvbWlzZTtcblxuXHQvLyB3cmFwIGh0dHAucmVxdWVzdCBpbnRvIGZldGNoXG5cdHJldHVybiBuZXcgZmV0Y2guUHJvbWlzZShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG5cdFx0Ly8gYnVpbGQgcmVxdWVzdCBvYmplY3Rcblx0XHRjb25zdCByZXF1ZXN0ID0gbmV3IFJlcXVlc3QodXJsLCBvcHRzKTtcblx0XHRjb25zdCBvcHRpb25zID0gZ2V0Tm9kZVJlcXVlc3RPcHRpb25zKHJlcXVlc3QpO1xuXG5cdFx0Y29uc3Qgc2VuZCA9IChvcHRpb25zLnByb3RvY29sID09PSAnaHR0cHM6JyA/IGh0dHBzIDogaHR0cCkucmVxdWVzdDtcblx0XHRjb25zdCBzaWduYWwgPSByZXF1ZXN0LnNpZ25hbDtcblxuXHRcdGxldCByZXNwb25zZSA9IG51bGw7XG5cblx0XHRjb25zdCBhYm9ydCA9IGZ1bmN0aW9uIGFib3J0KCkge1xuXHRcdFx0bGV0IGVycm9yID0gbmV3IEFib3J0RXJyb3IoJ1RoZSB1c2VyIGFib3J0ZWQgYSByZXF1ZXN0LicpO1xuXHRcdFx0cmVqZWN0KGVycm9yKTtcblx0XHRcdGlmIChyZXF1ZXN0LmJvZHkgJiYgcmVxdWVzdC5ib2R5IGluc3RhbmNlb2YgU3RyZWFtLlJlYWRhYmxlKSB7XG5cdFx0XHRcdGRlc3Ryb3lTdHJlYW0ocmVxdWVzdC5ib2R5LCBlcnJvcik7XG5cdFx0XHR9XG5cdFx0XHRpZiAoIXJlc3BvbnNlIHx8ICFyZXNwb25zZS5ib2R5KSByZXR1cm47XG5cdFx0XHRyZXNwb25zZS5ib2R5LmVtaXQoJ2Vycm9yJywgZXJyb3IpO1xuXHRcdH07XG5cblx0XHRpZiAoc2lnbmFsICYmIHNpZ25hbC5hYm9ydGVkKSB7XG5cdFx0XHRhYm9ydCgpO1xuXHRcdFx0cmV0dXJuO1xuXHRcdH1cblxuXHRcdGNvbnN0IGFib3J0QW5kRmluYWxpemUgPSBmdW5jdGlvbiBhYm9ydEFuZEZpbmFsaXplKCkge1xuXHRcdFx0YWJvcnQoKTtcblx0XHRcdGZpbmFsaXplKCk7XG5cdFx0fTtcblxuXHRcdC8vIHNlbmQgcmVxdWVzdFxuXHRcdGNvbnN0IHJlcSA9IHNlbmQob3B0aW9ucyk7XG5cdFx0bGV0IHJlcVRpbWVvdXQ7XG5cblx0XHRpZiAoc2lnbmFsKSB7XG5cdFx0XHRzaWduYWwuYWRkRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBhYm9ydEFuZEZpbmFsaXplKTtcblx0XHR9XG5cblx0XHRmdW5jdGlvbiBmaW5hbGl6ZSgpIHtcblx0XHRcdHJlcS5hYm9ydCgpO1xuXHRcdFx0aWYgKHNpZ25hbCkgc2lnbmFsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Fib3J0JywgYWJvcnRBbmRGaW5hbGl6ZSk7XG5cdFx0XHRjbGVhclRpbWVvdXQocmVxVGltZW91dCk7XG5cdFx0fVxuXG5cdFx0aWYgKHJlcXVlc3QudGltZW91dCkge1xuXHRcdFx0cmVxLm9uY2UoJ3NvY2tldCcsIGZ1bmN0aW9uIChzb2NrZXQpIHtcblx0XHRcdFx0cmVxVGltZW91dCA9IHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuXHRcdFx0XHRcdHJlamVjdChuZXcgRmV0Y2hFcnJvcihgbmV0d29yayB0aW1lb3V0IGF0OiAke3JlcXVlc3QudXJsfWAsICdyZXF1ZXN0LXRpbWVvdXQnKSk7XG5cdFx0XHRcdFx0ZmluYWxpemUoKTtcblx0XHRcdFx0fSwgcmVxdWVzdC50aW1lb3V0KTtcblx0XHRcdH0pO1xuXHRcdH1cblxuXHRcdHJlcS5vbignZXJyb3InLCBmdW5jdGlvbiAoZXJyKSB7XG5cdFx0XHRyZWplY3QobmV3IEZldGNoRXJyb3IoYHJlcXVlc3QgdG8gJHtyZXF1ZXN0LnVybH0gZmFpbGVkLCByZWFzb246ICR7ZXJyLm1lc3NhZ2V9YCwgJ3N5c3RlbScsIGVycikpO1xuXG5cdFx0XHRpZiAocmVzcG9uc2UgJiYgcmVzcG9uc2UuYm9keSkge1xuXHRcdFx0XHRkZXN0cm95U3RyZWFtKHJlc3BvbnNlLmJvZHksIGVycik7XG5cdFx0XHR9XG5cblx0XHRcdGZpbmFsaXplKCk7XG5cdFx0fSk7XG5cblx0XHRmaXhSZXNwb25zZUNodW5rZWRUcmFuc2ZlckJhZEVuZGluZyhyZXEsIGZ1bmN0aW9uIChlcnIpIHtcblx0XHRcdGlmIChzaWduYWwgJiYgc2lnbmFsLmFib3J0ZWQpIHtcblx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0fVxuXG5cdFx0XHRpZiAocmVzcG9uc2UgJiYgcmVzcG9uc2UuYm9keSkge1xuXHRcdFx0XHRkZXN0cm95U3RyZWFtKHJlc3BvbnNlLmJvZHksIGVycik7XG5cdFx0XHR9XG5cdFx0fSk7XG5cblx0XHQvKiBjOCBpZ25vcmUgbmV4dCAxOCAqL1xuXHRcdGlmIChwYXJzZUludChwcm9jZXNzLnZlcnNpb24uc3Vic3RyaW5nKDEpKSA8IDE0KSB7XG5cdFx0XHQvLyBCZWZvcmUgTm9kZS5qcyAxNCwgcGlwZWxpbmUoKSBkb2VzIG5vdCBmdWxseSBzdXBwb3J0IGFzeW5jIGl0ZXJhdG9ycyBhbmQgZG9lcyBub3QgYWx3YXlzXG5cdFx0XHQvLyBwcm9wZXJseSBoYW5kbGUgd2hlbiB0aGUgc29ja2V0IGNsb3NlL2VuZCBldmVudHMgYXJlIG91dCBvZiBvcmRlci5cblx0XHRcdHJlcS5vbignc29ja2V0JywgZnVuY3Rpb24gKHMpIHtcblx0XHRcdFx0cy5hZGRMaXN0ZW5lcignY2xvc2UnLCBmdW5jdGlvbiAoaGFkRXJyb3IpIHtcblx0XHRcdFx0XHQvLyBpZiBhIGRhdGEgbGlzdGVuZXIgaXMgc3RpbGwgcHJlc2VudCB3ZSBkaWRuJ3QgZW5kIGNsZWFubHlcblx0XHRcdFx0XHRjb25zdCBoYXNEYXRhTGlzdGVuZXIgPSBzLmxpc3RlbmVyQ291bnQoJ2RhdGEnKSA+IDA7XG5cblx0XHRcdFx0XHQvLyBpZiBlbmQgaGFwcGVuZWQgYmVmb3JlIGNsb3NlIGJ1dCB0aGUgc29ja2V0IGRpZG4ndCBlbWl0IGFuIGVycm9yLCBkbyBpdCBub3dcblx0XHRcdFx0XHRpZiAocmVzcG9uc2UgJiYgaGFzRGF0YUxpc3RlbmVyICYmICFoYWRFcnJvciAmJiAhKHNpZ25hbCAmJiBzaWduYWwuYWJvcnRlZCkpIHtcblx0XHRcdFx0XHRcdGNvbnN0IGVyciA9IG5ldyBFcnJvcignUHJlbWF0dXJlIGNsb3NlJyk7XG5cdFx0XHRcdFx0XHRlcnIuY29kZSA9ICdFUlJfU1RSRUFNX1BSRU1BVFVSRV9DTE9TRSc7XG5cdFx0XHRcdFx0XHRyZXNwb25zZS5ib2R5LmVtaXQoJ2Vycm9yJywgZXJyKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pO1xuXHRcdFx0fSk7XG5cdFx0fVxuXG5cdFx0cmVxLm9uKCdyZXNwb25zZScsIGZ1bmN0aW9uIChyZXMpIHtcblx0XHRcdGNsZWFyVGltZW91dChyZXFUaW1lb3V0KTtcblxuXHRcdFx0Y29uc3QgaGVhZGVycyA9IGNyZWF0ZUhlYWRlcnNMZW5pZW50KHJlcy5oZWFkZXJzKTtcblxuXHRcdFx0Ly8gSFRUUCBmZXRjaCBzdGVwIDVcblx0XHRcdGlmIChmZXRjaC5pc1JlZGlyZWN0KHJlcy5zdGF0dXNDb2RlKSkge1xuXHRcdFx0XHQvLyBIVFRQIGZldGNoIHN0ZXAgNS4yXG5cdFx0XHRcdGNvbnN0IGxvY2F0aW9uID0gaGVhZGVycy5nZXQoJ0xvY2F0aW9uJyk7XG5cblx0XHRcdFx0Ly8gSFRUUCBmZXRjaCBzdGVwIDUuM1xuXHRcdFx0XHRsZXQgbG9jYXRpb25VUkwgPSBudWxsO1xuXHRcdFx0XHR0cnkge1xuXHRcdFx0XHRcdGxvY2F0aW9uVVJMID0gbG9jYXRpb24gPT09IG51bGwgPyBudWxsIDogbmV3IFVSTCQxKGxvY2F0aW9uLCByZXF1ZXN0LnVybCkudG9TdHJpbmcoKTtcblx0XHRcdFx0fSBjYXRjaCAoZXJyKSB7XG5cdFx0XHRcdFx0Ly8gZXJyb3IgaGVyZSBjYW4gb25seSBiZSBpbnZhbGlkIFVSTCBpbiBMb2NhdGlvbjogaGVhZGVyXG5cdFx0XHRcdFx0Ly8gZG8gbm90IHRocm93IHdoZW4gb3B0aW9ucy5yZWRpcmVjdCA9PSBtYW51YWxcblx0XHRcdFx0XHQvLyBsZXQgdGhlIHVzZXIgZXh0cmFjdCB0aGUgZXJyb3JuZW91cyByZWRpcmVjdCBVUkxcblx0XHRcdFx0XHRpZiAocmVxdWVzdC5yZWRpcmVjdCAhPT0gJ21hbnVhbCcpIHtcblx0XHRcdFx0XHRcdHJlamVjdChuZXcgRmV0Y2hFcnJvcihgdXJpIHJlcXVlc3RlZCByZXNwb25kcyB3aXRoIGFuIGludmFsaWQgcmVkaXJlY3QgVVJMOiAke2xvY2F0aW9ufWAsICdpbnZhbGlkLXJlZGlyZWN0JykpO1xuXHRcdFx0XHRcdFx0ZmluYWxpemUoKTtcblx0XHRcdFx0XHRcdHJldHVybjtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvLyBIVFRQIGZldGNoIHN0ZXAgNS41XG5cdFx0XHRcdHN3aXRjaCAocmVxdWVzdC5yZWRpcmVjdCkge1xuXHRcdFx0XHRcdGNhc2UgJ2Vycm9yJzpcblx0XHRcdFx0XHRcdHJlamVjdChuZXcgRmV0Y2hFcnJvcihgdXJpIHJlcXVlc3RlZCByZXNwb25kcyB3aXRoIGEgcmVkaXJlY3QsIHJlZGlyZWN0IG1vZGUgaXMgc2V0IHRvIGVycm9yOiAke3JlcXVlc3QudXJsfWAsICduby1yZWRpcmVjdCcpKTtcblx0XHRcdFx0XHRcdGZpbmFsaXplKCk7XG5cdFx0XHRcdFx0XHRyZXR1cm47XG5cdFx0XHRcdFx0Y2FzZSAnbWFudWFsJzpcblx0XHRcdFx0XHRcdC8vIG5vZGUtZmV0Y2gtc3BlY2lmaWMgc3RlcDogbWFrZSBtYW51YWwgcmVkaXJlY3QgYSBiaXQgZWFzaWVyIHRvIHVzZSBieSBzZXR0aW5nIHRoZSBMb2NhdGlvbiBoZWFkZXIgdmFsdWUgdG8gdGhlIHJlc29sdmVkIFVSTC5cblx0XHRcdFx0XHRcdGlmIChsb2NhdGlvblVSTCAhPT0gbnVsbCkge1xuXHRcdFx0XHRcdFx0XHQvLyBoYW5kbGUgY29ycnVwdGVkIGhlYWRlclxuXHRcdFx0XHRcdFx0XHR0cnkge1xuXHRcdFx0XHRcdFx0XHRcdGhlYWRlcnMuc2V0KCdMb2NhdGlvbicsIGxvY2F0aW9uVVJMKTtcblx0XHRcdFx0XHRcdFx0fSBjYXRjaCAoZXJyKSB7XG5cdFx0XHRcdFx0XHRcdFx0Ly8gaXN0YW5idWwgaWdub3JlIG5leHQ6IG5vZGVqcyBzZXJ2ZXIgcHJldmVudCBpbnZhbGlkIHJlc3BvbnNlIGhlYWRlcnMsIHdlIGNhbid0IHRlc3QgdGhpcyB0aHJvdWdoIG5vcm1hbCByZXF1ZXN0XG5cdFx0XHRcdFx0XHRcdFx0cmVqZWN0KGVycik7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdGJyZWFrO1xuXHRcdFx0XHRcdGNhc2UgJ2ZvbGxvdyc6XG5cdFx0XHRcdFx0XHQvLyBIVFRQLXJlZGlyZWN0IGZldGNoIHN0ZXAgMlxuXHRcdFx0XHRcdFx0aWYgKGxvY2F0aW9uVVJMID09PSBudWxsKSB7XG5cdFx0XHRcdFx0XHRcdGJyZWFrO1xuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHQvLyBIVFRQLXJlZGlyZWN0IGZldGNoIHN0ZXAgNVxuXHRcdFx0XHRcdFx0aWYgKHJlcXVlc3QuY291bnRlciA+PSByZXF1ZXN0LmZvbGxvdykge1xuXHRcdFx0XHRcdFx0XHRyZWplY3QobmV3IEZldGNoRXJyb3IoYG1heGltdW0gcmVkaXJlY3QgcmVhY2hlZCBhdDogJHtyZXF1ZXN0LnVybH1gLCAnbWF4LXJlZGlyZWN0JykpO1xuXHRcdFx0XHRcdFx0XHRmaW5hbGl6ZSgpO1xuXHRcdFx0XHRcdFx0XHRyZXR1cm47XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdC8vIEhUVFAtcmVkaXJlY3QgZmV0Y2ggc3RlcCA2IChjb3VudGVyIGluY3JlbWVudClcblx0XHRcdFx0XHRcdC8vIENyZWF0ZSBhIG5ldyBSZXF1ZXN0IG9iamVjdC5cblx0XHRcdFx0XHRcdGNvbnN0IHJlcXVlc3RPcHRzID0ge1xuXHRcdFx0XHRcdFx0XHRoZWFkZXJzOiBuZXcgSGVhZGVycyhyZXF1ZXN0LmhlYWRlcnMpLFxuXHRcdFx0XHRcdFx0XHRmb2xsb3c6IHJlcXVlc3QuZm9sbG93LFxuXHRcdFx0XHRcdFx0XHRjb3VudGVyOiByZXF1ZXN0LmNvdW50ZXIgKyAxLFxuXHRcdFx0XHRcdFx0XHRhZ2VudDogcmVxdWVzdC5hZ2VudCxcblx0XHRcdFx0XHRcdFx0Y29tcHJlc3M6IHJlcXVlc3QuY29tcHJlc3MsXG5cdFx0XHRcdFx0XHRcdG1ldGhvZDogcmVxdWVzdC5tZXRob2QsXG5cdFx0XHRcdFx0XHRcdGJvZHk6IHJlcXVlc3QuYm9keSxcblx0XHRcdFx0XHRcdFx0c2lnbmFsOiByZXF1ZXN0LnNpZ25hbCxcblx0XHRcdFx0XHRcdFx0dGltZW91dDogcmVxdWVzdC50aW1lb3V0LFxuXHRcdFx0XHRcdFx0XHRzaXplOiByZXF1ZXN0LnNpemVcblx0XHRcdFx0XHRcdH07XG5cblx0XHRcdFx0XHRcdGlmICghaXNEb21haW5PclN1YmRvbWFpbihyZXF1ZXN0LnVybCwgbG9jYXRpb25VUkwpIHx8ICFpc1NhbWVQcm90b2NvbChyZXF1ZXN0LnVybCwgbG9jYXRpb25VUkwpKSB7XG5cdFx0XHRcdFx0XHRcdGZvciAoY29uc3QgbmFtZSBvZiBbJ2F1dGhvcml6YXRpb24nLCAnd3d3LWF1dGhlbnRpY2F0ZScsICdjb29raWUnLCAnY29va2llMiddKSB7XG5cdFx0XHRcdFx0XHRcdFx0cmVxdWVzdE9wdHMuaGVhZGVycy5kZWxldGUobmFtZSk7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0Ly8gSFRUUC1yZWRpcmVjdCBmZXRjaCBzdGVwIDlcblx0XHRcdFx0XHRcdGlmIChyZXMuc3RhdHVzQ29kZSAhPT0gMzAzICYmIHJlcXVlc3QuYm9keSAmJiBnZXRUb3RhbEJ5dGVzKHJlcXVlc3QpID09PSBudWxsKSB7XG5cdFx0XHRcdFx0XHRcdHJlamVjdChuZXcgRmV0Y2hFcnJvcignQ2Fubm90IGZvbGxvdyByZWRpcmVjdCB3aXRoIGJvZHkgYmVpbmcgYSByZWFkYWJsZSBzdHJlYW0nLCAndW5zdXBwb3J0ZWQtcmVkaXJlY3QnKSk7XG5cdFx0XHRcdFx0XHRcdGZpbmFsaXplKCk7XG5cdFx0XHRcdFx0XHRcdHJldHVybjtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0Ly8gSFRUUC1yZWRpcmVjdCBmZXRjaCBzdGVwIDExXG5cdFx0XHRcdFx0XHRpZiAocmVzLnN0YXR1c0NvZGUgPT09IDMwMyB8fCAocmVzLnN0YXR1c0NvZGUgPT09IDMwMSB8fCByZXMuc3RhdHVzQ29kZSA9PT0gMzAyKSAmJiByZXF1ZXN0Lm1ldGhvZCA9PT0gJ1BPU1QnKSB7XG5cdFx0XHRcdFx0XHRcdHJlcXVlc3RPcHRzLm1ldGhvZCA9ICdHRVQnO1xuXHRcdFx0XHRcdFx0XHRyZXF1ZXN0T3B0cy5ib2R5ID0gdW5kZWZpbmVkO1xuXHRcdFx0XHRcdFx0XHRyZXF1ZXN0T3B0cy5oZWFkZXJzLmRlbGV0ZSgnY29udGVudC1sZW5ndGgnKTtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0Ly8gSFRUUC1yZWRpcmVjdCBmZXRjaCBzdGVwIDE1XG5cdFx0XHRcdFx0XHRyZXNvbHZlKGZldGNoKG5ldyBSZXF1ZXN0KGxvY2F0aW9uVVJMLCByZXF1ZXN0T3B0cykpKTtcblx0XHRcdFx0XHRcdGZpbmFsaXplKCk7XG5cdFx0XHRcdFx0XHRyZXR1cm47XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Ly8gcHJlcGFyZSByZXNwb25zZVxuXHRcdFx0cmVzLm9uY2UoJ2VuZCcsIGZ1bmN0aW9uICgpIHtcblx0XHRcdFx0aWYgKHNpZ25hbCkgc2lnbmFsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Fib3J0JywgYWJvcnRBbmRGaW5hbGl6ZSk7XG5cdFx0XHR9KTtcblx0XHRcdGxldCBib2R5ID0gcmVzLnBpcGUobmV3IFBhc3NUaHJvdWdoJDEoKSk7XG5cblx0XHRcdGNvbnN0IHJlc3BvbnNlX29wdGlvbnMgPSB7XG5cdFx0XHRcdHVybDogcmVxdWVzdC51cmwsXG5cdFx0XHRcdHN0YXR1czogcmVzLnN0YXR1c0NvZGUsXG5cdFx0XHRcdHN0YXR1c1RleHQ6IHJlcy5zdGF0dXNNZXNzYWdlLFxuXHRcdFx0XHRoZWFkZXJzOiBoZWFkZXJzLFxuXHRcdFx0XHRzaXplOiByZXF1ZXN0LnNpemUsXG5cdFx0XHRcdHRpbWVvdXQ6IHJlcXVlc3QudGltZW91dCxcblx0XHRcdFx0Y291bnRlcjogcmVxdWVzdC5jb3VudGVyXG5cdFx0XHR9O1xuXG5cdFx0XHQvLyBIVFRQLW5ldHdvcmsgZmV0Y2ggc3RlcCAxMi4xLjEuM1xuXHRcdFx0Y29uc3QgY29kaW5ncyA9IGhlYWRlcnMuZ2V0KCdDb250ZW50LUVuY29kaW5nJyk7XG5cblx0XHRcdC8vIEhUVFAtbmV0d29yayBmZXRjaCBzdGVwIDEyLjEuMS40OiBoYW5kbGUgY29udGVudCBjb2RpbmdzXG5cblx0XHRcdC8vIGluIGZvbGxvd2luZyBzY2VuYXJpb3Mgd2UgaWdub3JlIGNvbXByZXNzaW9uIHN1cHBvcnRcblx0XHRcdC8vIDEuIGNvbXByZXNzaW9uIHN1cHBvcnQgaXMgZGlzYWJsZWRcblx0XHRcdC8vIDIuIEhFQUQgcmVxdWVzdFxuXHRcdFx0Ly8gMy4gbm8gQ29udGVudC1FbmNvZGluZyBoZWFkZXJcblx0XHRcdC8vIDQuIG5vIGNvbnRlbnQgcmVzcG9uc2UgKDIwNClcblx0XHRcdC8vIDUuIGNvbnRlbnQgbm90IG1vZGlmaWVkIHJlc3BvbnNlICgzMDQpXG5cdFx0XHRpZiAoIXJlcXVlc3QuY29tcHJlc3MgfHwgcmVxdWVzdC5tZXRob2QgPT09ICdIRUFEJyB8fCBjb2RpbmdzID09PSBudWxsIHx8IHJlcy5zdGF0dXNDb2RlID09PSAyMDQgfHwgcmVzLnN0YXR1c0NvZGUgPT09IDMwNCkge1xuXHRcdFx0XHRyZXNwb25zZSA9IG5ldyBSZXNwb25zZShib2R5LCByZXNwb25zZV9vcHRpb25zKTtcblx0XHRcdFx0cmVzb2x2ZShyZXNwb25zZSk7XG5cdFx0XHRcdHJldHVybjtcblx0XHRcdH1cblxuXHRcdFx0Ly8gRm9yIE5vZGUgdjYrXG5cdFx0XHQvLyBCZSBsZXNzIHN0cmljdCB3aGVuIGRlY29kaW5nIGNvbXByZXNzZWQgcmVzcG9uc2VzLCBzaW5jZSBzb21ldGltZXNcblx0XHRcdC8vIHNlcnZlcnMgc2VuZCBzbGlnaHRseSBpbnZhbGlkIHJlc3BvbnNlcyB0aGF0IGFyZSBzdGlsbCBhY2NlcHRlZFxuXHRcdFx0Ly8gYnkgY29tbW9uIGJyb3dzZXJzLlxuXHRcdFx0Ly8gQWx3YXlzIHVzaW5nIFpfU1lOQ19GTFVTSCBpcyB3aGF0IGNVUkwgZG9lcy5cblx0XHRcdGNvbnN0IHpsaWJPcHRpb25zID0ge1xuXHRcdFx0XHRmbHVzaDogemxpYi5aX1NZTkNfRkxVU0gsXG5cdFx0XHRcdGZpbmlzaEZsdXNoOiB6bGliLlpfU1lOQ19GTFVTSFxuXHRcdFx0fTtcblxuXHRcdFx0Ly8gZm9yIGd6aXBcblx0XHRcdGlmIChjb2RpbmdzID09ICdnemlwJyB8fCBjb2RpbmdzID09ICd4LWd6aXAnKSB7XG5cdFx0XHRcdGJvZHkgPSBib2R5LnBpcGUoemxpYi5jcmVhdGVHdW56aXAoemxpYk9wdGlvbnMpKTtcblx0XHRcdFx0cmVzcG9uc2UgPSBuZXcgUmVzcG9uc2UoYm9keSwgcmVzcG9uc2Vfb3B0aW9ucyk7XG5cdFx0XHRcdHJlc29sdmUocmVzcG9uc2UpO1xuXHRcdFx0XHRyZXR1cm47XG5cdFx0XHR9XG5cblx0XHRcdC8vIGZvciBkZWZsYXRlXG5cdFx0XHRpZiAoY29kaW5ncyA9PSAnZGVmbGF0ZScgfHwgY29kaW5ncyA9PSAneC1kZWZsYXRlJykge1xuXHRcdFx0XHQvLyBoYW5kbGUgdGhlIGluZmFtb3VzIHJhdyBkZWZsYXRlIHJlc3BvbnNlIGZyb20gb2xkIHNlcnZlcnNcblx0XHRcdFx0Ly8gYSBoYWNrIGZvciBvbGQgSUlTIGFuZCBBcGFjaGUgc2VydmVyc1xuXHRcdFx0XHRjb25zdCByYXcgPSByZXMucGlwZShuZXcgUGFzc1Rocm91Z2gkMSgpKTtcblx0XHRcdFx0cmF3Lm9uY2UoJ2RhdGEnLCBmdW5jdGlvbiAoY2h1bmspIHtcblx0XHRcdFx0XHQvLyBzZWUgaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8zNzUxOTgyOFxuXHRcdFx0XHRcdGlmICgoY2h1bmtbMF0gJiAweDBGKSA9PT0gMHgwOCkge1xuXHRcdFx0XHRcdFx0Ym9keSA9IGJvZHkucGlwZSh6bGliLmNyZWF0ZUluZmxhdGUoKSk7XG5cdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdGJvZHkgPSBib2R5LnBpcGUoemxpYi5jcmVhdGVJbmZsYXRlUmF3KCkpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRyZXNwb25zZSA9IG5ldyBSZXNwb25zZShib2R5LCByZXNwb25zZV9vcHRpb25zKTtcblx0XHRcdFx0XHRyZXNvbHZlKHJlc3BvbnNlKTtcblx0XHRcdFx0fSk7XG5cdFx0XHRcdHJhdy5vbignZW5kJywgZnVuY3Rpb24gKCkge1xuXHRcdFx0XHRcdC8vIHNvbWUgb2xkIElJUyBzZXJ2ZXJzIHJldHVybiB6ZXJvLWxlbmd0aCBPSyBkZWZsYXRlIHJlc3BvbnNlcywgc28gJ2RhdGEnIGlzIG5ldmVyIGVtaXR0ZWQuXG5cdFx0XHRcdFx0aWYgKCFyZXNwb25zZSkge1xuXHRcdFx0XHRcdFx0cmVzcG9uc2UgPSBuZXcgUmVzcG9uc2UoYm9keSwgcmVzcG9uc2Vfb3B0aW9ucyk7XG5cdFx0XHRcdFx0XHRyZXNvbHZlKHJlc3BvbnNlKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pO1xuXHRcdFx0XHRyZXR1cm47XG5cdFx0XHR9XG5cblx0XHRcdC8vIGZvciBiclxuXHRcdFx0aWYgKGNvZGluZ3MgPT0gJ2JyJyAmJiB0eXBlb2YgemxpYi5jcmVhdGVCcm90bGlEZWNvbXByZXNzID09PSAnZnVuY3Rpb24nKSB7XG5cdFx0XHRcdGJvZHkgPSBib2R5LnBpcGUoemxpYi5jcmVhdGVCcm90bGlEZWNvbXByZXNzKCkpO1xuXHRcdFx0XHRyZXNwb25zZSA9IG5ldyBSZXNwb25zZShib2R5LCByZXNwb25zZV9vcHRpb25zKTtcblx0XHRcdFx0cmVzb2x2ZShyZXNwb25zZSk7XG5cdFx0XHRcdHJldHVybjtcblx0XHRcdH1cblxuXHRcdFx0Ly8gb3RoZXJ3aXNlLCB1c2UgcmVzcG9uc2UgYXMtaXNcblx0XHRcdHJlc3BvbnNlID0gbmV3IFJlc3BvbnNlKGJvZHksIHJlc3BvbnNlX29wdGlvbnMpO1xuXHRcdFx0cmVzb2x2ZShyZXNwb25zZSk7XG5cdFx0fSk7XG5cblx0XHR3cml0ZVRvU3RyZWFtKHJlcSwgcmVxdWVzdCk7XG5cdH0pO1xufVxuZnVuY3Rpb24gZml4UmVzcG9uc2VDaHVua2VkVHJhbnNmZXJCYWRFbmRpbmcocmVxdWVzdCwgZXJyb3JDYWxsYmFjaykge1xuXHRsZXQgc29ja2V0O1xuXG5cdHJlcXVlc3Qub24oJ3NvY2tldCcsIGZ1bmN0aW9uIChzKSB7XG5cdFx0c29ja2V0ID0gcztcblx0fSk7XG5cblx0cmVxdWVzdC5vbigncmVzcG9uc2UnLCBmdW5jdGlvbiAocmVzcG9uc2UpIHtcblx0XHRjb25zdCBoZWFkZXJzID0gcmVzcG9uc2UuaGVhZGVycztcblxuXHRcdGlmIChoZWFkZXJzWyd0cmFuc2Zlci1lbmNvZGluZyddID09PSAnY2h1bmtlZCcgJiYgIWhlYWRlcnNbJ2NvbnRlbnQtbGVuZ3RoJ10pIHtcblx0XHRcdHJlc3BvbnNlLm9uY2UoJ2Nsb3NlJywgZnVuY3Rpb24gKGhhZEVycm9yKSB7XG5cdFx0XHRcdC8vIHRlc3RzIGZvciBzb2NrZXQgcHJlc2VuY2UsIGFzIGluIHNvbWUgc2l0dWF0aW9ucyB0aGVcblx0XHRcdFx0Ly8gdGhlICdzb2NrZXQnIGV2ZW50IGlzIG5vdCB0cmlnZ2VyZWQgZm9yIHRoZSByZXF1ZXN0XG5cdFx0XHRcdC8vIChoYXBwZW5zIGluIGRlbm8pLCBhdm9pZHMgYFR5cGVFcnJvcmBcblx0XHRcdFx0Ly8gaWYgYSBkYXRhIGxpc3RlbmVyIGlzIHN0aWxsIHByZXNlbnQgd2UgZGlkbid0IGVuZCBjbGVhbmx5XG5cdFx0XHRcdGNvbnN0IGhhc0RhdGFMaXN0ZW5lciA9IHNvY2tldCAmJiBzb2NrZXQubGlzdGVuZXJDb3VudCgnZGF0YScpID4gMDtcblxuXHRcdFx0XHRpZiAoaGFzRGF0YUxpc3RlbmVyICYmICFoYWRFcnJvcikge1xuXHRcdFx0XHRcdGNvbnN0IGVyciA9IG5ldyBFcnJvcignUHJlbWF0dXJlIGNsb3NlJyk7XG5cdFx0XHRcdFx0ZXJyLmNvZGUgPSAnRVJSX1NUUkVBTV9QUkVNQVRVUkVfQ0xPU0UnO1xuXHRcdFx0XHRcdGVycm9yQ2FsbGJhY2soZXJyKTtcblx0XHRcdFx0fVxuXHRcdFx0fSk7XG5cdFx0fVxuXHR9KTtcbn1cblxuZnVuY3Rpb24gZGVzdHJveVN0cmVhbShzdHJlYW0sIGVycikge1xuXHRpZiAoc3RyZWFtLmRlc3Ryb3kpIHtcblx0XHRzdHJlYW0uZGVzdHJveShlcnIpO1xuXHR9IGVsc2Uge1xuXHRcdC8vIG5vZGUgPCA4XG5cdFx0c3RyZWFtLmVtaXQoJ2Vycm9yJywgZXJyKTtcblx0XHRzdHJlYW0uZW5kKCk7XG5cdH1cbn1cblxuLyoqXG4gKiBSZWRpcmVjdCBjb2RlIG1hdGNoaW5nXG4gKlxuICogQHBhcmFtICAgTnVtYmVyICAgY29kZSAgU3RhdHVzIGNvZGVcbiAqIEByZXR1cm4gIEJvb2xlYW5cbiAqL1xuZmV0Y2guaXNSZWRpcmVjdCA9IGZ1bmN0aW9uIChjb2RlKSB7XG5cdHJldHVybiBjb2RlID09PSAzMDEgfHwgY29kZSA9PT0gMzAyIHx8IGNvZGUgPT09IDMwMyB8fCBjb2RlID09PSAzMDcgfHwgY29kZSA9PT0gMzA4O1xufTtcblxuLy8gZXhwb3NlIFByb21pc2VcbmZldGNoLlByb21pc2UgPSBnbG9iYWwuUHJvbWlzZTtcblxubW9kdWxlLmV4cG9ydHMgPSBleHBvcnRzID0gZmV0Y2g7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG5leHBvcnRzLmRlZmF1bHQgPSBleHBvcnRzO1xuZXhwb3J0cy5IZWFkZXJzID0gSGVhZGVycztcbmV4cG9ydHMuUmVxdWVzdCA9IFJlcXVlc3Q7XG5leHBvcnRzLlJlc3BvbnNlID0gUmVzcG9uc2U7XG5leHBvcnRzLkZldGNoRXJyb3IgPSBGZXRjaEVycm9yO1xuZXhwb3J0cy5BYm9ydEVycm9yID0gQWJvcnRFcnJvcjtcbiIsICJmdW5jdGlvbiBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KG9iaikge1xuICByZXR1cm4gb2JqICYmIG9iai5fX2VzTW9kdWxlID8gb2JqIDoge1xuICAgIFwiZGVmYXVsdFwiOiBvYmpcbiAgfTtcbn1cbm1vZHVsZS5leHBvcnRzID0gX2ludGVyb3BSZXF1aXJlRGVmYXVsdCwgbW9kdWxlLmV4cG9ydHMuX19lc01vZHVsZSA9IHRydWUsIG1vZHVsZS5leHBvcnRzW1wiZGVmYXVsdFwiXSA9IG1vZHVsZS5leHBvcnRzOyIsICJmdW5jdGlvbiBfdHlwZW9mKG8pIHtcbiAgXCJAYmFiZWwvaGVscGVycyAtIHR5cGVvZlwiO1xuXG4gIHJldHVybiAobW9kdWxlLmV4cG9ydHMgPSBfdHlwZW9mID0gXCJmdW5jdGlvblwiID09IHR5cGVvZiBTeW1ib2wgJiYgXCJzeW1ib2xcIiA9PSB0eXBlb2YgU3ltYm9sLml0ZXJhdG9yID8gZnVuY3Rpb24gKG8pIHtcbiAgICByZXR1cm4gdHlwZW9mIG87XG4gIH0gOiBmdW5jdGlvbiAobykge1xuICAgIHJldHVybiBvICYmIFwiZnVuY3Rpb25cIiA9PSB0eXBlb2YgU3ltYm9sICYmIG8uY29uc3RydWN0b3IgPT09IFN5bWJvbCAmJiBvICE9PSBTeW1ib2wucHJvdG90eXBlID8gXCJzeW1ib2xcIiA6IHR5cGVvZiBvO1xuICB9LCBtb2R1bGUuZXhwb3J0cy5fX2VzTW9kdWxlID0gdHJ1ZSwgbW9kdWxlLmV4cG9ydHNbXCJkZWZhdWx0XCJdID0gbW9kdWxlLmV4cG9ydHMpLCBfdHlwZW9mKG8pO1xufVxubW9kdWxlLmV4cG9ydHMgPSBfdHlwZW9mLCBtb2R1bGUuZXhwb3J0cy5fX2VzTW9kdWxlID0gdHJ1ZSwgbW9kdWxlLmV4cG9ydHNbXCJkZWZhdWx0XCJdID0gbW9kdWxlLmV4cG9ydHM7IiwgInZhciBfdHlwZW9mID0gcmVxdWlyZShcIi4vdHlwZW9mLmpzXCIpW1wiZGVmYXVsdFwiXTtcbmZ1bmN0aW9uIF9yZWdlbmVyYXRvclJ1bnRpbWUoKSB7XG4gIFwidXNlIHN0cmljdFwiOyAvKiEgcmVnZW5lcmF0b3ItcnVudGltZSAtLSBDb3B5cmlnaHQgKGMpIDIwMTQtcHJlc2VudCwgRmFjZWJvb2ssIEluYy4gLS0gbGljZW5zZSAoTUlUKTogaHR0cHM6Ly9naXRodWIuY29tL2ZhY2Vib29rL3JlZ2VuZXJhdG9yL2Jsb2IvbWFpbi9MSUNFTlNFICovXG4gIG1vZHVsZS5leHBvcnRzID0gX3JlZ2VuZXJhdG9yUnVudGltZSA9IGZ1bmN0aW9uIF9yZWdlbmVyYXRvclJ1bnRpbWUoKSB7XG4gICAgcmV0dXJuIGU7XG4gIH0sIG1vZHVsZS5leHBvcnRzLl9fZXNNb2R1bGUgPSB0cnVlLCBtb2R1bGUuZXhwb3J0c1tcImRlZmF1bHRcIl0gPSBtb2R1bGUuZXhwb3J0cztcbiAgdmFyIHQsXG4gICAgZSA9IHt9LFxuICAgIHIgPSBPYmplY3QucHJvdG90eXBlLFxuICAgIG4gPSByLmhhc093blByb3BlcnR5LFxuICAgIG8gPSBPYmplY3QuZGVmaW5lUHJvcGVydHkgfHwgZnVuY3Rpb24gKHQsIGUsIHIpIHtcbiAgICAgIHRbZV0gPSByLnZhbHVlO1xuICAgIH0sXG4gICAgaSA9IFwiZnVuY3Rpb25cIiA9PSB0eXBlb2YgU3ltYm9sID8gU3ltYm9sIDoge30sXG4gICAgYSA9IGkuaXRlcmF0b3IgfHwgXCJAQGl0ZXJhdG9yXCIsXG4gICAgYyA9IGkuYXN5bmNJdGVyYXRvciB8fCBcIkBAYXN5bmNJdGVyYXRvclwiLFxuICAgIHUgPSBpLnRvU3RyaW5nVGFnIHx8IFwiQEB0b1N0cmluZ1RhZ1wiO1xuICBmdW5jdGlvbiBkZWZpbmUodCwgZSwgcikge1xuICAgIHJldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydHkodCwgZSwge1xuICAgICAgdmFsdWU6IHIsXG4gICAgICBlbnVtZXJhYmxlOiAhMCxcbiAgICAgIGNvbmZpZ3VyYWJsZTogITAsXG4gICAgICB3cml0YWJsZTogITBcbiAgICB9KSwgdFtlXTtcbiAgfVxuICB0cnkge1xuICAgIGRlZmluZSh7fSwgXCJcIik7XG4gIH0gY2F0Y2ggKHQpIHtcbiAgICBkZWZpbmUgPSBmdW5jdGlvbiBkZWZpbmUodCwgZSwgcikge1xuICAgICAgcmV0dXJuIHRbZV0gPSByO1xuICAgIH07XG4gIH1cbiAgZnVuY3Rpb24gd3JhcCh0LCBlLCByLCBuKSB7XG4gICAgdmFyIGkgPSBlICYmIGUucHJvdG90eXBlIGluc3RhbmNlb2YgR2VuZXJhdG9yID8gZSA6IEdlbmVyYXRvcixcbiAgICAgIGEgPSBPYmplY3QuY3JlYXRlKGkucHJvdG90eXBlKSxcbiAgICAgIGMgPSBuZXcgQ29udGV4dChuIHx8IFtdKTtcbiAgICByZXR1cm4gbyhhLCBcIl9pbnZva2VcIiwge1xuICAgICAgdmFsdWU6IG1ha2VJbnZva2VNZXRob2QodCwgciwgYylcbiAgICB9KSwgYTtcbiAgfVxuICBmdW5jdGlvbiB0cnlDYXRjaCh0LCBlLCByKSB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHR5cGU6IFwibm9ybWFsXCIsXG4gICAgICAgIGFyZzogdC5jYWxsKGUsIHIpXG4gICAgICB9O1xuICAgIH0gY2F0Y2ggKHQpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHR5cGU6IFwidGhyb3dcIixcbiAgICAgICAgYXJnOiB0XG4gICAgICB9O1xuICAgIH1cbiAgfVxuICBlLndyYXAgPSB3cmFwO1xuICB2YXIgaCA9IFwic3VzcGVuZGVkU3RhcnRcIixcbiAgICBsID0gXCJzdXNwZW5kZWRZaWVsZFwiLFxuICAgIGYgPSBcImV4ZWN1dGluZ1wiLFxuICAgIHMgPSBcImNvbXBsZXRlZFwiLFxuICAgIHkgPSB7fTtcbiAgZnVuY3Rpb24gR2VuZXJhdG9yKCkge31cbiAgZnVuY3Rpb24gR2VuZXJhdG9yRnVuY3Rpb24oKSB7fVxuICBmdW5jdGlvbiBHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZSgpIHt9XG4gIHZhciBwID0ge307XG4gIGRlZmluZShwLCBhLCBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH0pO1xuICB2YXIgZCA9IE9iamVjdC5nZXRQcm90b3R5cGVPZixcbiAgICB2ID0gZCAmJiBkKGQodmFsdWVzKFtdKSkpO1xuICB2ICYmIHYgIT09IHIgJiYgbi5jYWxsKHYsIGEpICYmIChwID0gdik7XG4gIHZhciBnID0gR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUucHJvdG90eXBlID0gR2VuZXJhdG9yLnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUocCk7XG4gIGZ1bmN0aW9uIGRlZmluZUl0ZXJhdG9yTWV0aG9kcyh0KSB7XG4gICAgW1wibmV4dFwiLCBcInRocm93XCIsIFwicmV0dXJuXCJdLmZvckVhY2goZnVuY3Rpb24gKGUpIHtcbiAgICAgIGRlZmluZSh0LCBlLCBmdW5jdGlvbiAodCkge1xuICAgICAgICByZXR1cm4gdGhpcy5faW52b2tlKGUsIHQpO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cbiAgZnVuY3Rpb24gQXN5bmNJdGVyYXRvcih0LCBlKSB7XG4gICAgZnVuY3Rpb24gaW52b2tlKHIsIG8sIGksIGEpIHtcbiAgICAgIHZhciBjID0gdHJ5Q2F0Y2godFtyXSwgdCwgbyk7XG4gICAgICBpZiAoXCJ0aHJvd1wiICE9PSBjLnR5cGUpIHtcbiAgICAgICAgdmFyIHUgPSBjLmFyZyxcbiAgICAgICAgICBoID0gdS52YWx1ZTtcbiAgICAgICAgcmV0dXJuIGggJiYgXCJvYmplY3RcIiA9PSBfdHlwZW9mKGgpICYmIG4uY2FsbChoLCBcIl9fYXdhaXRcIikgPyBlLnJlc29sdmUoaC5fX2F3YWl0KS50aGVuKGZ1bmN0aW9uICh0KSB7XG4gICAgICAgICAgaW52b2tlKFwibmV4dFwiLCB0LCBpLCBhKTtcbiAgICAgICAgfSwgZnVuY3Rpb24gKHQpIHtcbiAgICAgICAgICBpbnZva2UoXCJ0aHJvd1wiLCB0LCBpLCBhKTtcbiAgICAgICAgfSkgOiBlLnJlc29sdmUoaCkudGhlbihmdW5jdGlvbiAodCkge1xuICAgICAgICAgIHUudmFsdWUgPSB0LCBpKHUpO1xuICAgICAgICB9LCBmdW5jdGlvbiAodCkge1xuICAgICAgICAgIHJldHVybiBpbnZva2UoXCJ0aHJvd1wiLCB0LCBpLCBhKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgICBhKGMuYXJnKTtcbiAgICB9XG4gICAgdmFyIHI7XG4gICAgbyh0aGlzLCBcIl9pbnZva2VcIiwge1xuICAgICAgdmFsdWU6IGZ1bmN0aW9uIHZhbHVlKHQsIG4pIHtcbiAgICAgICAgZnVuY3Rpb24gY2FsbEludm9rZVdpdGhNZXRob2RBbmRBcmcoKSB7XG4gICAgICAgICAgcmV0dXJuIG5ldyBlKGZ1bmN0aW9uIChlLCByKSB7XG4gICAgICAgICAgICBpbnZva2UodCwgbiwgZSwgcik7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHIgPSByID8gci50aGVuKGNhbGxJbnZva2VXaXRoTWV0aG9kQW5kQXJnLCBjYWxsSW52b2tlV2l0aE1ldGhvZEFuZEFyZykgOiBjYWxsSW52b2tlV2l0aE1ldGhvZEFuZEFyZygpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG4gIGZ1bmN0aW9uIG1ha2VJbnZva2VNZXRob2QoZSwgciwgbikge1xuICAgIHZhciBvID0gaDtcbiAgICByZXR1cm4gZnVuY3Rpb24gKGksIGEpIHtcbiAgICAgIGlmIChvID09PSBmKSB0aHJvdyBuZXcgRXJyb3IoXCJHZW5lcmF0b3IgaXMgYWxyZWFkeSBydW5uaW5nXCIpO1xuICAgICAgaWYgKG8gPT09IHMpIHtcbiAgICAgICAgaWYgKFwidGhyb3dcIiA9PT0gaSkgdGhyb3cgYTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICB2YWx1ZTogdCxcbiAgICAgICAgICBkb25lOiAhMFxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgZm9yIChuLm1ldGhvZCA9IGksIG4uYXJnID0gYTs7KSB7XG4gICAgICAgIHZhciBjID0gbi5kZWxlZ2F0ZTtcbiAgICAgICAgaWYgKGMpIHtcbiAgICAgICAgICB2YXIgdSA9IG1heWJlSW52b2tlRGVsZWdhdGUoYywgbik7XG4gICAgICAgICAgaWYgKHUpIHtcbiAgICAgICAgICAgIGlmICh1ID09PSB5KSBjb250aW51ZTtcbiAgICAgICAgICAgIHJldHVybiB1O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoXCJuZXh0XCIgPT09IG4ubWV0aG9kKSBuLnNlbnQgPSBuLl9zZW50ID0gbi5hcmc7ZWxzZSBpZiAoXCJ0aHJvd1wiID09PSBuLm1ldGhvZCkge1xuICAgICAgICAgIGlmIChvID09PSBoKSB0aHJvdyBvID0gcywgbi5hcmc7XG4gICAgICAgICAgbi5kaXNwYXRjaEV4Y2VwdGlvbihuLmFyZyk7XG4gICAgICAgIH0gZWxzZSBcInJldHVyblwiID09PSBuLm1ldGhvZCAmJiBuLmFicnVwdChcInJldHVyblwiLCBuLmFyZyk7XG4gICAgICAgIG8gPSBmO1xuICAgICAgICB2YXIgcCA9IHRyeUNhdGNoKGUsIHIsIG4pO1xuICAgICAgICBpZiAoXCJub3JtYWxcIiA9PT0gcC50eXBlKSB7XG4gICAgICAgICAgaWYgKG8gPSBuLmRvbmUgPyBzIDogbCwgcC5hcmcgPT09IHkpIGNvbnRpbnVlO1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB2YWx1ZTogcC5hcmcsXG4gICAgICAgICAgICBkb25lOiBuLmRvbmVcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIFwidGhyb3dcIiA9PT0gcC50eXBlICYmIChvID0gcywgbi5tZXRob2QgPSBcInRocm93XCIsIG4uYXJnID0gcC5hcmcpO1xuICAgICAgfVxuICAgIH07XG4gIH1cbiAgZnVuY3Rpb24gbWF5YmVJbnZva2VEZWxlZ2F0ZShlLCByKSB7XG4gICAgdmFyIG4gPSByLm1ldGhvZCxcbiAgICAgIG8gPSBlLml0ZXJhdG9yW25dO1xuICAgIGlmIChvID09PSB0KSByZXR1cm4gci5kZWxlZ2F0ZSA9IG51bGwsIFwidGhyb3dcIiA9PT0gbiAmJiBlLml0ZXJhdG9yW1wicmV0dXJuXCJdICYmIChyLm1ldGhvZCA9IFwicmV0dXJuXCIsIHIuYXJnID0gdCwgbWF5YmVJbnZva2VEZWxlZ2F0ZShlLCByKSwgXCJ0aHJvd1wiID09PSByLm1ldGhvZCkgfHwgXCJyZXR1cm5cIiAhPT0gbiAmJiAoci5tZXRob2QgPSBcInRocm93XCIsIHIuYXJnID0gbmV3IFR5cGVFcnJvcihcIlRoZSBpdGVyYXRvciBkb2VzIG5vdCBwcm92aWRlIGEgJ1wiICsgbiArIFwiJyBtZXRob2RcIikpLCB5O1xuICAgIHZhciBpID0gdHJ5Q2F0Y2gobywgZS5pdGVyYXRvciwgci5hcmcpO1xuICAgIGlmIChcInRocm93XCIgPT09IGkudHlwZSkgcmV0dXJuIHIubWV0aG9kID0gXCJ0aHJvd1wiLCByLmFyZyA9IGkuYXJnLCByLmRlbGVnYXRlID0gbnVsbCwgeTtcbiAgICB2YXIgYSA9IGkuYXJnO1xuICAgIHJldHVybiBhID8gYS5kb25lID8gKHJbZS5yZXN1bHROYW1lXSA9IGEudmFsdWUsIHIubmV4dCA9IGUubmV4dExvYywgXCJyZXR1cm5cIiAhPT0gci5tZXRob2QgJiYgKHIubWV0aG9kID0gXCJuZXh0XCIsIHIuYXJnID0gdCksIHIuZGVsZWdhdGUgPSBudWxsLCB5KSA6IGEgOiAoci5tZXRob2QgPSBcInRocm93XCIsIHIuYXJnID0gbmV3IFR5cGVFcnJvcihcIml0ZXJhdG9yIHJlc3VsdCBpcyBub3QgYW4gb2JqZWN0XCIpLCByLmRlbGVnYXRlID0gbnVsbCwgeSk7XG4gIH1cbiAgZnVuY3Rpb24gcHVzaFRyeUVudHJ5KHQpIHtcbiAgICB2YXIgZSA9IHtcbiAgICAgIHRyeUxvYzogdFswXVxuICAgIH07XG4gICAgMSBpbiB0ICYmIChlLmNhdGNoTG9jID0gdFsxXSksIDIgaW4gdCAmJiAoZS5maW5hbGx5TG9jID0gdFsyXSwgZS5hZnRlckxvYyA9IHRbM10pLCB0aGlzLnRyeUVudHJpZXMucHVzaChlKTtcbiAgfVxuICBmdW5jdGlvbiByZXNldFRyeUVudHJ5KHQpIHtcbiAgICB2YXIgZSA9IHQuY29tcGxldGlvbiB8fCB7fTtcbiAgICBlLnR5cGUgPSBcIm5vcm1hbFwiLCBkZWxldGUgZS5hcmcsIHQuY29tcGxldGlvbiA9IGU7XG4gIH1cbiAgZnVuY3Rpb24gQ29udGV4dCh0KSB7XG4gICAgdGhpcy50cnlFbnRyaWVzID0gW3tcbiAgICAgIHRyeUxvYzogXCJyb290XCJcbiAgICB9XSwgdC5mb3JFYWNoKHB1c2hUcnlFbnRyeSwgdGhpcyksIHRoaXMucmVzZXQoITApO1xuICB9XG4gIGZ1bmN0aW9uIHZhbHVlcyhlKSB7XG4gICAgaWYgKGUgfHwgXCJcIiA9PT0gZSkge1xuICAgICAgdmFyIHIgPSBlW2FdO1xuICAgICAgaWYgKHIpIHJldHVybiByLmNhbGwoZSk7XG4gICAgICBpZiAoXCJmdW5jdGlvblwiID09IHR5cGVvZiBlLm5leHQpIHJldHVybiBlO1xuICAgICAgaWYgKCFpc05hTihlLmxlbmd0aCkpIHtcbiAgICAgICAgdmFyIG8gPSAtMSxcbiAgICAgICAgICBpID0gZnVuY3Rpb24gbmV4dCgpIHtcbiAgICAgICAgICAgIGZvciAoOyArK28gPCBlLmxlbmd0aDspIGlmIChuLmNhbGwoZSwgbykpIHJldHVybiBuZXh0LnZhbHVlID0gZVtvXSwgbmV4dC5kb25lID0gITEsIG5leHQ7XG4gICAgICAgICAgICByZXR1cm4gbmV4dC52YWx1ZSA9IHQsIG5leHQuZG9uZSA9ICEwLCBuZXh0O1xuICAgICAgICAgIH07XG4gICAgICAgIHJldHVybiBpLm5leHQgPSBpO1xuICAgICAgfVxuICAgIH1cbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKF90eXBlb2YoZSkgKyBcIiBpcyBub3QgaXRlcmFibGVcIik7XG4gIH1cbiAgcmV0dXJuIEdlbmVyYXRvckZ1bmN0aW9uLnByb3RvdHlwZSA9IEdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlLCBvKGcsIFwiY29uc3RydWN0b3JcIiwge1xuICAgIHZhbHVlOiBHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZSxcbiAgICBjb25maWd1cmFibGU6ICEwXG4gIH0pLCBvKEdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlLCBcImNvbnN0cnVjdG9yXCIsIHtcbiAgICB2YWx1ZTogR2VuZXJhdG9yRnVuY3Rpb24sXG4gICAgY29uZmlndXJhYmxlOiAhMFxuICB9KSwgR2VuZXJhdG9yRnVuY3Rpb24uZGlzcGxheU5hbWUgPSBkZWZpbmUoR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUsIHUsIFwiR2VuZXJhdG9yRnVuY3Rpb25cIiksIGUuaXNHZW5lcmF0b3JGdW5jdGlvbiA9IGZ1bmN0aW9uICh0KSB7XG4gICAgdmFyIGUgPSBcImZ1bmN0aW9uXCIgPT0gdHlwZW9mIHQgJiYgdC5jb25zdHJ1Y3RvcjtcbiAgICByZXR1cm4gISFlICYmIChlID09PSBHZW5lcmF0b3JGdW5jdGlvbiB8fCBcIkdlbmVyYXRvckZ1bmN0aW9uXCIgPT09IChlLmRpc3BsYXlOYW1lIHx8IGUubmFtZSkpO1xuICB9LCBlLm1hcmsgPSBmdW5jdGlvbiAodCkge1xuICAgIHJldHVybiBPYmplY3Quc2V0UHJvdG90eXBlT2YgPyBPYmplY3Quc2V0UHJvdG90eXBlT2YodCwgR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUpIDogKHQuX19wcm90b19fID0gR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUsIGRlZmluZSh0LCB1LCBcIkdlbmVyYXRvckZ1bmN0aW9uXCIpKSwgdC5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKGcpLCB0O1xuICB9LCBlLmF3cmFwID0gZnVuY3Rpb24gKHQpIHtcbiAgICByZXR1cm4ge1xuICAgICAgX19hd2FpdDogdFxuICAgIH07XG4gIH0sIGRlZmluZUl0ZXJhdG9yTWV0aG9kcyhBc3luY0l0ZXJhdG9yLnByb3RvdHlwZSksIGRlZmluZShBc3luY0l0ZXJhdG9yLnByb3RvdHlwZSwgYywgZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0aGlzO1xuICB9KSwgZS5Bc3luY0l0ZXJhdG9yID0gQXN5bmNJdGVyYXRvciwgZS5hc3luYyA9IGZ1bmN0aW9uICh0LCByLCBuLCBvLCBpKSB7XG4gICAgdm9pZCAwID09PSBpICYmIChpID0gUHJvbWlzZSk7XG4gICAgdmFyIGEgPSBuZXcgQXN5bmNJdGVyYXRvcih3cmFwKHQsIHIsIG4sIG8pLCBpKTtcbiAgICByZXR1cm4gZS5pc0dlbmVyYXRvckZ1bmN0aW9uKHIpID8gYSA6IGEubmV4dCgpLnRoZW4oZnVuY3Rpb24gKHQpIHtcbiAgICAgIHJldHVybiB0LmRvbmUgPyB0LnZhbHVlIDogYS5uZXh0KCk7XG4gICAgfSk7XG4gIH0sIGRlZmluZUl0ZXJhdG9yTWV0aG9kcyhnKSwgZGVmaW5lKGcsIHUsIFwiR2VuZXJhdG9yXCIpLCBkZWZpbmUoZywgYSwgZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0aGlzO1xuICB9KSwgZGVmaW5lKGcsIFwidG9TdHJpbmdcIiwgZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiBcIltvYmplY3QgR2VuZXJhdG9yXVwiO1xuICB9KSwgZS5rZXlzID0gZnVuY3Rpb24gKHQpIHtcbiAgICB2YXIgZSA9IE9iamVjdCh0KSxcbiAgICAgIHIgPSBbXTtcbiAgICBmb3IgKHZhciBuIGluIGUpIHIucHVzaChuKTtcbiAgICByZXR1cm4gci5yZXZlcnNlKCksIGZ1bmN0aW9uIG5leHQoKSB7XG4gICAgICBmb3IgKDsgci5sZW5ndGg7KSB7XG4gICAgICAgIHZhciB0ID0gci5wb3AoKTtcbiAgICAgICAgaWYgKHQgaW4gZSkgcmV0dXJuIG5leHQudmFsdWUgPSB0LCBuZXh0LmRvbmUgPSAhMSwgbmV4dDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBuZXh0LmRvbmUgPSAhMCwgbmV4dDtcbiAgICB9O1xuICB9LCBlLnZhbHVlcyA9IHZhbHVlcywgQ29udGV4dC5wcm90b3R5cGUgPSB7XG4gICAgY29uc3RydWN0b3I6IENvbnRleHQsXG4gICAgcmVzZXQ6IGZ1bmN0aW9uIHJlc2V0KGUpIHtcbiAgICAgIGlmICh0aGlzLnByZXYgPSAwLCB0aGlzLm5leHQgPSAwLCB0aGlzLnNlbnQgPSB0aGlzLl9zZW50ID0gdCwgdGhpcy5kb25lID0gITEsIHRoaXMuZGVsZWdhdGUgPSBudWxsLCB0aGlzLm1ldGhvZCA9IFwibmV4dFwiLCB0aGlzLmFyZyA9IHQsIHRoaXMudHJ5RW50cmllcy5mb3JFYWNoKHJlc2V0VHJ5RW50cnkpLCAhZSkgZm9yICh2YXIgciBpbiB0aGlzKSBcInRcIiA9PT0gci5jaGFyQXQoMCkgJiYgbi5jYWxsKHRoaXMsIHIpICYmICFpc05hTigrci5zbGljZSgxKSkgJiYgKHRoaXNbcl0gPSB0KTtcbiAgICB9LFxuICAgIHN0b3A6IGZ1bmN0aW9uIHN0b3AoKSB7XG4gICAgICB0aGlzLmRvbmUgPSAhMDtcbiAgICAgIHZhciB0ID0gdGhpcy50cnlFbnRyaWVzWzBdLmNvbXBsZXRpb247XG4gICAgICBpZiAoXCJ0aHJvd1wiID09PSB0LnR5cGUpIHRocm93IHQuYXJnO1xuICAgICAgcmV0dXJuIHRoaXMucnZhbDtcbiAgICB9LFxuICAgIGRpc3BhdGNoRXhjZXB0aW9uOiBmdW5jdGlvbiBkaXNwYXRjaEV4Y2VwdGlvbihlKSB7XG4gICAgICBpZiAodGhpcy5kb25lKSB0aHJvdyBlO1xuICAgICAgdmFyIHIgPSB0aGlzO1xuICAgICAgZnVuY3Rpb24gaGFuZGxlKG4sIG8pIHtcbiAgICAgICAgcmV0dXJuIGEudHlwZSA9IFwidGhyb3dcIiwgYS5hcmcgPSBlLCByLm5leHQgPSBuLCBvICYmIChyLm1ldGhvZCA9IFwibmV4dFwiLCByLmFyZyA9IHQpLCAhIW87XG4gICAgICB9XG4gICAgICBmb3IgKHZhciBvID0gdGhpcy50cnlFbnRyaWVzLmxlbmd0aCAtIDE7IG8gPj0gMDsgLS1vKSB7XG4gICAgICAgIHZhciBpID0gdGhpcy50cnlFbnRyaWVzW29dLFxuICAgICAgICAgIGEgPSBpLmNvbXBsZXRpb247XG4gICAgICAgIGlmIChcInJvb3RcIiA9PT0gaS50cnlMb2MpIHJldHVybiBoYW5kbGUoXCJlbmRcIik7XG4gICAgICAgIGlmIChpLnRyeUxvYyA8PSB0aGlzLnByZXYpIHtcbiAgICAgICAgICB2YXIgYyA9IG4uY2FsbChpLCBcImNhdGNoTG9jXCIpLFxuICAgICAgICAgICAgdSA9IG4uY2FsbChpLCBcImZpbmFsbHlMb2NcIik7XG4gICAgICAgICAgaWYgKGMgJiYgdSkge1xuICAgICAgICAgICAgaWYgKHRoaXMucHJldiA8IGkuY2F0Y2hMb2MpIHJldHVybiBoYW5kbGUoaS5jYXRjaExvYywgITApO1xuICAgICAgICAgICAgaWYgKHRoaXMucHJldiA8IGkuZmluYWxseUxvYykgcmV0dXJuIGhhbmRsZShpLmZpbmFsbHlMb2MpO1xuICAgICAgICAgIH0gZWxzZSBpZiAoYykge1xuICAgICAgICAgICAgaWYgKHRoaXMucHJldiA8IGkuY2F0Y2hMb2MpIHJldHVybiBoYW5kbGUoaS5jYXRjaExvYywgITApO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAoIXUpIHRocm93IG5ldyBFcnJvcihcInRyeSBzdGF0ZW1lbnQgd2l0aG91dCBjYXRjaCBvciBmaW5hbGx5XCIpO1xuICAgICAgICAgICAgaWYgKHRoaXMucHJldiA8IGkuZmluYWxseUxvYykgcmV0dXJuIGhhbmRsZShpLmZpbmFsbHlMb2MpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgYWJydXB0OiBmdW5jdGlvbiBhYnJ1cHQodCwgZSkge1xuICAgICAgZm9yICh2YXIgciA9IHRoaXMudHJ5RW50cmllcy5sZW5ndGggLSAxOyByID49IDA7IC0tcikge1xuICAgICAgICB2YXIgbyA9IHRoaXMudHJ5RW50cmllc1tyXTtcbiAgICAgICAgaWYgKG8udHJ5TG9jIDw9IHRoaXMucHJldiAmJiBuLmNhbGwobywgXCJmaW5hbGx5TG9jXCIpICYmIHRoaXMucHJldiA8IG8uZmluYWxseUxvYykge1xuICAgICAgICAgIHZhciBpID0gbztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaSAmJiAoXCJicmVha1wiID09PSB0IHx8IFwiY29udGludWVcIiA9PT0gdCkgJiYgaS50cnlMb2MgPD0gZSAmJiBlIDw9IGkuZmluYWxseUxvYyAmJiAoaSA9IG51bGwpO1xuICAgICAgdmFyIGEgPSBpID8gaS5jb21wbGV0aW9uIDoge307XG4gICAgICByZXR1cm4gYS50eXBlID0gdCwgYS5hcmcgPSBlLCBpID8gKHRoaXMubWV0aG9kID0gXCJuZXh0XCIsIHRoaXMubmV4dCA9IGkuZmluYWxseUxvYywgeSkgOiB0aGlzLmNvbXBsZXRlKGEpO1xuICAgIH0sXG4gICAgY29tcGxldGU6IGZ1bmN0aW9uIGNvbXBsZXRlKHQsIGUpIHtcbiAgICAgIGlmIChcInRocm93XCIgPT09IHQudHlwZSkgdGhyb3cgdC5hcmc7XG4gICAgICByZXR1cm4gXCJicmVha1wiID09PSB0LnR5cGUgfHwgXCJjb250aW51ZVwiID09PSB0LnR5cGUgPyB0aGlzLm5leHQgPSB0LmFyZyA6IFwicmV0dXJuXCIgPT09IHQudHlwZSA/ICh0aGlzLnJ2YWwgPSB0aGlzLmFyZyA9IHQuYXJnLCB0aGlzLm1ldGhvZCA9IFwicmV0dXJuXCIsIHRoaXMubmV4dCA9IFwiZW5kXCIpIDogXCJub3JtYWxcIiA9PT0gdC50eXBlICYmIGUgJiYgKHRoaXMubmV4dCA9IGUpLCB5O1xuICAgIH0sXG4gICAgZmluaXNoOiBmdW5jdGlvbiBmaW5pc2godCkge1xuICAgICAgZm9yICh2YXIgZSA9IHRoaXMudHJ5RW50cmllcy5sZW5ndGggLSAxOyBlID49IDA7IC0tZSkge1xuICAgICAgICB2YXIgciA9IHRoaXMudHJ5RW50cmllc1tlXTtcbiAgICAgICAgaWYgKHIuZmluYWxseUxvYyA9PT0gdCkgcmV0dXJuIHRoaXMuY29tcGxldGUoci5jb21wbGV0aW9uLCByLmFmdGVyTG9jKSwgcmVzZXRUcnlFbnRyeShyKSwgeTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFwiY2F0Y2hcIjogZnVuY3Rpb24gX2NhdGNoKHQpIHtcbiAgICAgIGZvciAodmFyIGUgPSB0aGlzLnRyeUVudHJpZXMubGVuZ3RoIC0gMTsgZSA+PSAwOyAtLWUpIHtcbiAgICAgICAgdmFyIHIgPSB0aGlzLnRyeUVudHJpZXNbZV07XG4gICAgICAgIGlmIChyLnRyeUxvYyA9PT0gdCkge1xuICAgICAgICAgIHZhciBuID0gci5jb21wbGV0aW9uO1xuICAgICAgICAgIGlmIChcInRocm93XCIgPT09IG4udHlwZSkge1xuICAgICAgICAgICAgdmFyIG8gPSBuLmFyZztcbiAgICAgICAgICAgIHJlc2V0VHJ5RW50cnkocik7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJpbGxlZ2FsIGNhdGNoIGF0dGVtcHRcIik7XG4gICAgfSxcbiAgICBkZWxlZ2F0ZVlpZWxkOiBmdW5jdGlvbiBkZWxlZ2F0ZVlpZWxkKGUsIHIsIG4pIHtcbiAgICAgIHJldHVybiB0aGlzLmRlbGVnYXRlID0ge1xuICAgICAgICBpdGVyYXRvcjogdmFsdWVzKGUpLFxuICAgICAgICByZXN1bHROYW1lOiByLFxuICAgICAgICBuZXh0TG9jOiBuXG4gICAgICB9LCBcIm5leHRcIiA9PT0gdGhpcy5tZXRob2QgJiYgKHRoaXMuYXJnID0gdCksIHk7XG4gICAgfVxuICB9LCBlO1xufVxubW9kdWxlLmV4cG9ydHMgPSBfcmVnZW5lcmF0b3JSdW50aW1lLCBtb2R1bGUuZXhwb3J0cy5fX2VzTW9kdWxlID0gdHJ1ZSwgbW9kdWxlLmV4cG9ydHNbXCJkZWZhdWx0XCJdID0gbW9kdWxlLmV4cG9ydHM7IiwgIi8vIFRPRE8oQmFiZWwgOCk6IFJlbW92ZSB0aGlzIGZpbGUuXG5cbnZhciBydW50aW1lID0gcmVxdWlyZShcIi4uL2hlbHBlcnMvcmVnZW5lcmF0b3JSdW50aW1lXCIpKCk7XG5tb2R1bGUuZXhwb3J0cyA9IHJ1bnRpbWU7XG5cbi8vIENvcGllZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9mYWNlYm9vay9yZWdlbmVyYXRvci9ibG9iL21haW4vcGFja2FnZXMvcnVudGltZS9ydW50aW1lLmpzI0w3MzY9XG50cnkge1xuICByZWdlbmVyYXRvclJ1bnRpbWUgPSBydW50aW1lO1xufSBjYXRjaCAoYWNjaWRlbnRhbFN0cmljdE1vZGUpIHtcbiAgaWYgKHR5cGVvZiBnbG9iYWxUaGlzID09PSBcIm9iamVjdFwiKSB7XG4gICAgZ2xvYmFsVGhpcy5yZWdlbmVyYXRvclJ1bnRpbWUgPSBydW50aW1lO1xuICB9IGVsc2Uge1xuICAgIEZ1bmN0aW9uKFwiclwiLCBcInJlZ2VuZXJhdG9yUnVudGltZSA9IHJcIikocnVudGltZSk7XG4gIH1cbn1cbiIsICJmdW5jdGlvbiBhc3luY0dlbmVyYXRvclN0ZXAoZ2VuLCByZXNvbHZlLCByZWplY3QsIF9uZXh0LCBfdGhyb3csIGtleSwgYXJnKSB7XG4gIHRyeSB7XG4gICAgdmFyIGluZm8gPSBnZW5ba2V5XShhcmcpO1xuICAgIHZhciB2YWx1ZSA9IGluZm8udmFsdWU7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgcmVqZWN0KGVycm9yKTtcbiAgICByZXR1cm47XG4gIH1cbiAgaWYgKGluZm8uZG9uZSkge1xuICAgIHJlc29sdmUodmFsdWUpO1xuICB9IGVsc2Uge1xuICAgIFByb21pc2UucmVzb2x2ZSh2YWx1ZSkudGhlbihfbmV4dCwgX3Rocm93KTtcbiAgfVxufVxuZnVuY3Rpb24gX2FzeW5jVG9HZW5lcmF0b3IoZm4pIHtcbiAgcmV0dXJuIGZ1bmN0aW9uICgpIHtcbiAgICB2YXIgc2VsZiA9IHRoaXMsXG4gICAgICBhcmdzID0gYXJndW1lbnRzO1xuICAgIHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgICB2YXIgZ2VuID0gZm4uYXBwbHkoc2VsZiwgYXJncyk7XG4gICAgICBmdW5jdGlvbiBfbmV4dCh2YWx1ZSkge1xuICAgICAgICBhc3luY0dlbmVyYXRvclN0ZXAoZ2VuLCByZXNvbHZlLCByZWplY3QsIF9uZXh0LCBfdGhyb3csIFwibmV4dFwiLCB2YWx1ZSk7XG4gICAgICB9XG4gICAgICBmdW5jdGlvbiBfdGhyb3coZXJyKSB7XG4gICAgICAgIGFzeW5jR2VuZXJhdG9yU3RlcChnZW4sIHJlc29sdmUsIHJlamVjdCwgX25leHQsIF90aHJvdywgXCJ0aHJvd1wiLCBlcnIpO1xuICAgICAgfVxuICAgICAgX25leHQodW5kZWZpbmVkKTtcbiAgICB9KTtcbiAgfTtcbn1cbm1vZHVsZS5leHBvcnRzID0gX2FzeW5jVG9HZW5lcmF0b3IsIG1vZHVsZS5leHBvcnRzLl9fZXNNb2R1bGUgPSB0cnVlLCBtb2R1bGUuZXhwb3J0c1tcImRlZmF1bHRcIl0gPSBtb2R1bGUuZXhwb3J0czsiLCAiZnVuY3Rpb24gX2NsYXNzQ2FsbENoZWNrKGluc3RhbmNlLCBDb25zdHJ1Y3Rvcikge1xuICBpZiAoIShpbnN0YW5jZSBpbnN0YW5jZW9mIENvbnN0cnVjdG9yKSkge1xuICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXCJDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb25cIik7XG4gIH1cbn1cbm1vZHVsZS5leHBvcnRzID0gX2NsYXNzQ2FsbENoZWNrLCBtb2R1bGUuZXhwb3J0cy5fX2VzTW9kdWxlID0gdHJ1ZSwgbW9kdWxlLmV4cG9ydHNbXCJkZWZhdWx0XCJdID0gbW9kdWxlLmV4cG9ydHM7IiwgInZhciBfdHlwZW9mID0gcmVxdWlyZShcIi4vdHlwZW9mLmpzXCIpW1wiZGVmYXVsdFwiXTtcbmZ1bmN0aW9uIF90b1ByaW1pdGl2ZShpbnB1dCwgaGludCkge1xuICBpZiAoX3R5cGVvZihpbnB1dCkgIT09IFwib2JqZWN0XCIgfHwgaW5wdXQgPT09IG51bGwpIHJldHVybiBpbnB1dDtcbiAgdmFyIHByaW0gPSBpbnB1dFtTeW1ib2wudG9QcmltaXRpdmVdO1xuICBpZiAocHJpbSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgdmFyIHJlcyA9IHByaW0uY2FsbChpbnB1dCwgaGludCB8fCBcImRlZmF1bHRcIik7XG4gICAgaWYgKF90eXBlb2YocmVzKSAhPT0gXCJvYmplY3RcIikgcmV0dXJuIHJlcztcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS5cIik7XG4gIH1cbiAgcmV0dXJuIChoaW50ID09PSBcInN0cmluZ1wiID8gU3RyaW5nIDogTnVtYmVyKShpbnB1dCk7XG59XG5tb2R1bGUuZXhwb3J0cyA9IF90b1ByaW1pdGl2ZSwgbW9kdWxlLmV4cG9ydHMuX19lc01vZHVsZSA9IHRydWUsIG1vZHVsZS5leHBvcnRzW1wiZGVmYXVsdFwiXSA9IG1vZHVsZS5leHBvcnRzOyIsICJ2YXIgX3R5cGVvZiA9IHJlcXVpcmUoXCIuL3R5cGVvZi5qc1wiKVtcImRlZmF1bHRcIl07XG52YXIgdG9QcmltaXRpdmUgPSByZXF1aXJlKFwiLi90b1ByaW1pdGl2ZS5qc1wiKTtcbmZ1bmN0aW9uIF90b1Byb3BlcnR5S2V5KGFyZykge1xuICB2YXIga2V5ID0gdG9QcmltaXRpdmUoYXJnLCBcInN0cmluZ1wiKTtcbiAgcmV0dXJuIF90eXBlb2Yoa2V5KSA9PT0gXCJzeW1ib2xcIiA/IGtleSA6IFN0cmluZyhrZXkpO1xufVxubW9kdWxlLmV4cG9ydHMgPSBfdG9Qcm9wZXJ0eUtleSwgbW9kdWxlLmV4cG9ydHMuX19lc01vZHVsZSA9IHRydWUsIG1vZHVsZS5leHBvcnRzW1wiZGVmYXVsdFwiXSA9IG1vZHVsZS5leHBvcnRzOyIsICJ2YXIgdG9Qcm9wZXJ0eUtleSA9IHJlcXVpcmUoXCIuL3RvUHJvcGVydHlLZXkuanNcIik7XG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydGllcyh0YXJnZXQsIHByb3BzKSB7XG4gIGZvciAodmFyIGkgPSAwOyBpIDwgcHJvcHMubGVuZ3RoOyBpKyspIHtcbiAgICB2YXIgZGVzY3JpcHRvciA9IHByb3BzW2ldO1xuICAgIGRlc2NyaXB0b3IuZW51bWVyYWJsZSA9IGRlc2NyaXB0b3IuZW51bWVyYWJsZSB8fCBmYWxzZTtcbiAgICBkZXNjcmlwdG9yLmNvbmZpZ3VyYWJsZSA9IHRydWU7XG4gICAgaWYgKFwidmFsdWVcIiBpbiBkZXNjcmlwdG9yKSBkZXNjcmlwdG9yLndyaXRhYmxlID0gdHJ1ZTtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCB0b1Byb3BlcnR5S2V5KGRlc2NyaXB0b3Iua2V5KSwgZGVzY3JpcHRvcik7XG4gIH1cbn1cbmZ1bmN0aW9uIF9jcmVhdGVDbGFzcyhDb25zdHJ1Y3RvciwgcHJvdG9Qcm9wcywgc3RhdGljUHJvcHMpIHtcbiAgaWYgKHByb3RvUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLnByb3RvdHlwZSwgcHJvdG9Qcm9wcyk7XG4gIGlmIChzdGF0aWNQcm9wcykgX2RlZmluZVByb3BlcnRpZXMoQ29uc3RydWN0b3IsIHN0YXRpY1Byb3BzKTtcbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KENvbnN0cnVjdG9yLCBcInByb3RvdHlwZVwiLCB7XG4gICAgd3JpdGFibGU6IGZhbHNlXG4gIH0pO1xuICByZXR1cm4gQ29uc3RydWN0b3I7XG59XG5tb2R1bGUuZXhwb3J0cyA9IF9jcmVhdGVDbGFzcywgbW9kdWxlLmV4cG9ydHMuX19lc01vZHVsZSA9IHRydWUsIG1vZHVsZS5leHBvcnRzW1wiZGVmYXVsdFwiXSA9IG1vZHVsZS5leHBvcnRzOyIsICJmdW5jdGlvbiBfc2V0UHJvdG90eXBlT2YobywgcCkge1xuICBtb2R1bGUuZXhwb3J0cyA9IF9zZXRQcm90b3R5cGVPZiA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiA/IE9iamVjdC5zZXRQcm90b3R5cGVPZi5iaW5kKCkgOiBmdW5jdGlvbiBfc2V0UHJvdG90eXBlT2YobywgcCkge1xuICAgIG8uX19wcm90b19fID0gcDtcbiAgICByZXR1cm4gbztcbiAgfSwgbW9kdWxlLmV4cG9ydHMuX19lc01vZHVsZSA9IHRydWUsIG1vZHVsZS5leHBvcnRzW1wiZGVmYXVsdFwiXSA9IG1vZHVsZS5leHBvcnRzO1xuICByZXR1cm4gX3NldFByb3RvdHlwZU9mKG8sIHApO1xufVxubW9kdWxlLmV4cG9ydHMgPSBfc2V0UHJvdG90eXBlT2YsIG1vZHVsZS5leHBvcnRzLl9fZXNNb2R1bGUgPSB0cnVlLCBtb2R1bGUuZXhwb3J0c1tcImRlZmF1bHRcIl0gPSBtb2R1bGUuZXhwb3J0czsiLCAidmFyIHNldFByb3RvdHlwZU9mID0gcmVxdWlyZShcIi4vc2V0UHJvdG90eXBlT2YuanNcIik7XG5mdW5jdGlvbiBfaW5oZXJpdHMoc3ViQ2xhc3MsIHN1cGVyQ2xhc3MpIHtcbiAgaWYgKHR5cGVvZiBzdXBlckNsYXNzICE9PSBcImZ1bmN0aW9uXCIgJiYgc3VwZXJDbGFzcyAhPT0gbnVsbCkge1xuICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXCJTdXBlciBleHByZXNzaW9uIG11c3QgZWl0aGVyIGJlIG51bGwgb3IgYSBmdW5jdGlvblwiKTtcbiAgfVxuICBzdWJDbGFzcy5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKHN1cGVyQ2xhc3MgJiYgc3VwZXJDbGFzcy5wcm90b3R5cGUsIHtcbiAgICBjb25zdHJ1Y3Rvcjoge1xuICAgICAgdmFsdWU6IHN1YkNsYXNzLFxuICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICBjb25maWd1cmFibGU6IHRydWVcbiAgICB9XG4gIH0pO1xuICBPYmplY3QuZGVmaW5lUHJvcGVydHkoc3ViQ2xhc3MsIFwicHJvdG90eXBlXCIsIHtcbiAgICB3cml0YWJsZTogZmFsc2VcbiAgfSk7XG4gIGlmIChzdXBlckNsYXNzKSBzZXRQcm90b3R5cGVPZihzdWJDbGFzcywgc3VwZXJDbGFzcyk7XG59XG5tb2R1bGUuZXhwb3J0cyA9IF9pbmhlcml0cywgbW9kdWxlLmV4cG9ydHMuX19lc01vZHVsZSA9IHRydWUsIG1vZHVsZS5leHBvcnRzW1wiZGVmYXVsdFwiXSA9IG1vZHVsZS5leHBvcnRzOyIsICJmdW5jdGlvbiBfYXNzZXJ0VGhpc0luaXRpYWxpemVkKHNlbGYpIHtcbiAgaWYgKHNlbGYgPT09IHZvaWQgMCkge1xuICAgIHRocm93IG5ldyBSZWZlcmVuY2VFcnJvcihcInRoaXMgaGFzbid0IGJlZW4gaW5pdGlhbGlzZWQgLSBzdXBlcigpIGhhc24ndCBiZWVuIGNhbGxlZFwiKTtcbiAgfVxuICByZXR1cm4gc2VsZjtcbn1cbm1vZHVsZS5leHBvcnRzID0gX2Fzc2VydFRoaXNJbml0aWFsaXplZCwgbW9kdWxlLmV4cG9ydHMuX19lc01vZHVsZSA9IHRydWUsIG1vZHVsZS5leHBvcnRzW1wiZGVmYXVsdFwiXSA9IG1vZHVsZS5leHBvcnRzOyIsICJ2YXIgX3R5cGVvZiA9IHJlcXVpcmUoXCIuL3R5cGVvZi5qc1wiKVtcImRlZmF1bHRcIl07XG52YXIgYXNzZXJ0VGhpc0luaXRpYWxpemVkID0gcmVxdWlyZShcIi4vYXNzZXJ0VGhpc0luaXRpYWxpemVkLmpzXCIpO1xuZnVuY3Rpb24gX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4oc2VsZiwgY2FsbCkge1xuICBpZiAoY2FsbCAmJiAoX3R5cGVvZihjYWxsKSA9PT0gXCJvYmplY3RcIiB8fCB0eXBlb2YgY2FsbCA9PT0gXCJmdW5jdGlvblwiKSkge1xuICAgIHJldHVybiBjYWxsO1xuICB9IGVsc2UgaWYgKGNhbGwgIT09IHZvaWQgMCkge1xuICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXCJEZXJpdmVkIGNvbnN0cnVjdG9ycyBtYXkgb25seSByZXR1cm4gb2JqZWN0IG9yIHVuZGVmaW5lZFwiKTtcbiAgfVxuICByZXR1cm4gYXNzZXJ0VGhpc0luaXRpYWxpemVkKHNlbGYpO1xufVxubW9kdWxlLmV4cG9ydHMgPSBfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybiwgbW9kdWxlLmV4cG9ydHMuX19lc01vZHVsZSA9IHRydWUsIG1vZHVsZS5leHBvcnRzW1wiZGVmYXVsdFwiXSA9IG1vZHVsZS5leHBvcnRzOyIsICJmdW5jdGlvbiBfZ2V0UHJvdG90eXBlT2Yobykge1xuICBtb2R1bGUuZXhwb3J0cyA9IF9nZXRQcm90b3R5cGVPZiA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiA/IE9iamVjdC5nZXRQcm90b3R5cGVPZi5iaW5kKCkgOiBmdW5jdGlvbiBfZ2V0UHJvdG90eXBlT2Yobykge1xuICAgIHJldHVybiBvLl9fcHJvdG9fXyB8fCBPYmplY3QuZ2V0UHJvdG90eXBlT2Yobyk7XG4gIH0sIG1vZHVsZS5leHBvcnRzLl9fZXNNb2R1bGUgPSB0cnVlLCBtb2R1bGUuZXhwb3J0c1tcImRlZmF1bHRcIl0gPSBtb2R1bGUuZXhwb3J0cztcbiAgcmV0dXJuIF9nZXRQcm90b3R5cGVPZihvKTtcbn1cbm1vZHVsZS5leHBvcnRzID0gX2dldFByb3RvdHlwZU9mLCBtb2R1bGUuZXhwb3J0cy5fX2VzTW9kdWxlID0gdHJ1ZSwgbW9kdWxlLmV4cG9ydHNbXCJkZWZhdWx0XCJdID0gbW9kdWxlLmV4cG9ydHM7IiwgIid1c2Ugc3RyaWN0JztcblxudmFyIGhhcyA9IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHlcbiAgLCBwcmVmaXggPSAnfic7XG5cbi8qKlxuICogQ29uc3RydWN0b3IgdG8gY3JlYXRlIGEgc3RvcmFnZSBmb3Igb3VyIGBFRWAgb2JqZWN0cy5cbiAqIEFuIGBFdmVudHNgIGluc3RhbmNlIGlzIGEgcGxhaW4gb2JqZWN0IHdob3NlIHByb3BlcnRpZXMgYXJlIGV2ZW50IG5hbWVzLlxuICpcbiAqIEBjb25zdHJ1Y3RvclxuICogQHByaXZhdGVcbiAqL1xuZnVuY3Rpb24gRXZlbnRzKCkge31cblxuLy9cbi8vIFdlIHRyeSB0byBub3QgaW5oZXJpdCBmcm9tIGBPYmplY3QucHJvdG90eXBlYC4gSW4gc29tZSBlbmdpbmVzIGNyZWF0aW5nIGFuXG4vLyBpbnN0YW5jZSBpbiB0aGlzIHdheSBpcyBmYXN0ZXIgdGhhbiBjYWxsaW5nIGBPYmplY3QuY3JlYXRlKG51bGwpYCBkaXJlY3RseS5cbi8vIElmIGBPYmplY3QuY3JlYXRlKG51bGwpYCBpcyBub3Qgc3VwcG9ydGVkIHdlIHByZWZpeCB0aGUgZXZlbnQgbmFtZXMgd2l0aCBhXG4vLyBjaGFyYWN0ZXIgdG8gbWFrZSBzdXJlIHRoYXQgdGhlIGJ1aWx0LWluIG9iamVjdCBwcm9wZXJ0aWVzIGFyZSBub3Rcbi8vIG92ZXJyaWRkZW4gb3IgdXNlZCBhcyBhbiBhdHRhY2sgdmVjdG9yLlxuLy9cbmlmIChPYmplY3QuY3JlYXRlKSB7XG4gIEV2ZW50cy5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuXG4gIC8vXG4gIC8vIFRoaXMgaGFjayBpcyBuZWVkZWQgYmVjYXVzZSB0aGUgYF9fcHJvdG9fX2AgcHJvcGVydHkgaXMgc3RpbGwgaW5oZXJpdGVkIGluXG4gIC8vIHNvbWUgb2xkIGJyb3dzZXJzIGxpa2UgQW5kcm9pZCA0LCBpUGhvbmUgNS4xLCBPcGVyYSAxMSBhbmQgU2FmYXJpIDUuXG4gIC8vXG4gIGlmICghbmV3IEV2ZW50cygpLl9fcHJvdG9fXykgcHJlZml4ID0gZmFsc2U7XG59XG5cbi8qKlxuICogUmVwcmVzZW50YXRpb24gb2YgYSBzaW5nbGUgZXZlbnQgbGlzdGVuZXIuXG4gKlxuICogQHBhcmFtIHtGdW5jdGlvbn0gZm4gVGhlIGxpc3RlbmVyIGZ1bmN0aW9uLlxuICogQHBhcmFtIHsqfSBjb250ZXh0IFRoZSBjb250ZXh0IHRvIGludm9rZSB0aGUgbGlzdGVuZXIgd2l0aC5cbiAqIEBwYXJhbSB7Qm9vbGVhbn0gW29uY2U9ZmFsc2VdIFNwZWNpZnkgaWYgdGhlIGxpc3RlbmVyIGlzIGEgb25lLXRpbWUgbGlzdGVuZXIuXG4gKiBAY29uc3RydWN0b3JcbiAqIEBwcml2YXRlXG4gKi9cbmZ1bmN0aW9uIEVFKGZuLCBjb250ZXh0LCBvbmNlKSB7XG4gIHRoaXMuZm4gPSBmbjtcbiAgdGhpcy5jb250ZXh0ID0gY29udGV4dDtcbiAgdGhpcy5vbmNlID0gb25jZSB8fCBmYWxzZTtcbn1cblxuLyoqXG4gKiBBZGQgYSBsaXN0ZW5lciBmb3IgYSBnaXZlbiBldmVudC5cbiAqXG4gKiBAcGFyYW0ge0V2ZW50RW1pdHRlcn0gZW1pdHRlciBSZWZlcmVuY2UgdG8gdGhlIGBFdmVudEVtaXR0ZXJgIGluc3RhbmNlLlxuICogQHBhcmFtIHsoU3RyaW5nfFN5bWJvbCl9IGV2ZW50IFRoZSBldmVudCBuYW1lLlxuICogQHBhcmFtIHtGdW5jdGlvbn0gZm4gVGhlIGxpc3RlbmVyIGZ1bmN0aW9uLlxuICogQHBhcmFtIHsqfSBjb250ZXh0IFRoZSBjb250ZXh0IHRvIGludm9rZSB0aGUgbGlzdGVuZXIgd2l0aC5cbiAqIEBwYXJhbSB7Qm9vbGVhbn0gb25jZSBTcGVjaWZ5IGlmIHRoZSBsaXN0ZW5lciBpcyBhIG9uZS10aW1lIGxpc3RlbmVyLlxuICogQHJldHVybnMge0V2ZW50RW1pdHRlcn1cbiAqIEBwcml2YXRlXG4gKi9cbmZ1bmN0aW9uIGFkZExpc3RlbmVyKGVtaXR0ZXIsIGV2ZW50LCBmbiwgY29udGV4dCwgb25jZSkge1xuICBpZiAodHlwZW9mIGZuICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcignVGhlIGxpc3RlbmVyIG11c3QgYmUgYSBmdW5jdGlvbicpO1xuICB9XG5cbiAgdmFyIGxpc3RlbmVyID0gbmV3IEVFKGZuLCBjb250ZXh0IHx8IGVtaXR0ZXIsIG9uY2UpXG4gICAgLCBldnQgPSBwcmVmaXggPyBwcmVmaXggKyBldmVudCA6IGV2ZW50O1xuXG4gIGlmICghZW1pdHRlci5fZXZlbnRzW2V2dF0pIGVtaXR0ZXIuX2V2ZW50c1tldnRdID0gbGlzdGVuZXIsIGVtaXR0ZXIuX2V2ZW50c0NvdW50Kys7XG4gIGVsc2UgaWYgKCFlbWl0dGVyLl9ldmVudHNbZXZ0XS5mbikgZW1pdHRlci5fZXZlbnRzW2V2dF0ucHVzaChsaXN0ZW5lcik7XG4gIGVsc2UgZW1pdHRlci5fZXZlbnRzW2V2dF0gPSBbZW1pdHRlci5fZXZlbnRzW2V2dF0sIGxpc3RlbmVyXTtcblxuICByZXR1cm4gZW1pdHRlcjtcbn1cblxuLyoqXG4gKiBDbGVhciBldmVudCBieSBuYW1lLlxuICpcbiAqIEBwYXJhbSB7RXZlbnRFbWl0dGVyfSBlbWl0dGVyIFJlZmVyZW5jZSB0byB0aGUgYEV2ZW50RW1pdHRlcmAgaW5zdGFuY2UuXG4gKiBAcGFyYW0geyhTdHJpbmd8U3ltYm9sKX0gZXZ0IFRoZSBFdmVudCBuYW1lLlxuICogQHByaXZhdGVcbiAqL1xuZnVuY3Rpb24gY2xlYXJFdmVudChlbWl0dGVyLCBldnQpIHtcbiAgaWYgKC0tZW1pdHRlci5fZXZlbnRzQ291bnQgPT09IDApIGVtaXR0ZXIuX2V2ZW50cyA9IG5ldyBFdmVudHMoKTtcbiAgZWxzZSBkZWxldGUgZW1pdHRlci5fZXZlbnRzW2V2dF07XG59XG5cbi8qKlxuICogTWluaW1hbCBgRXZlbnRFbWl0dGVyYCBpbnRlcmZhY2UgdGhhdCBpcyBtb2xkZWQgYWdhaW5zdCB0aGUgTm9kZS5qc1xuICogYEV2ZW50RW1pdHRlcmAgaW50ZXJmYWNlLlxuICpcbiAqIEBjb25zdHJ1Y3RvclxuICogQHB1YmxpY1xuICovXG5mdW5jdGlvbiBFdmVudEVtaXR0ZXIoKSB7XG4gIHRoaXMuX2V2ZW50cyA9IG5ldyBFdmVudHMoKTtcbiAgdGhpcy5fZXZlbnRzQ291bnQgPSAwO1xufVxuXG4vKipcbiAqIFJldHVybiBhbiBhcnJheSBsaXN0aW5nIHRoZSBldmVudHMgZm9yIHdoaWNoIHRoZSBlbWl0dGVyIGhhcyByZWdpc3RlcmVkXG4gKiBsaXN0ZW5lcnMuXG4gKlxuICogQHJldHVybnMge0FycmF5fVxuICogQHB1YmxpY1xuICovXG5FdmVudEVtaXR0ZXIucHJvdG90eXBlLmV2ZW50TmFtZXMgPSBmdW5jdGlvbiBldmVudE5hbWVzKCkge1xuICB2YXIgbmFtZXMgPSBbXVxuICAgICwgZXZlbnRzXG4gICAgLCBuYW1lO1xuXG4gIGlmICh0aGlzLl9ldmVudHNDb3VudCA9PT0gMCkgcmV0dXJuIG5hbWVzO1xuXG4gIGZvciAobmFtZSBpbiAoZXZlbnRzID0gdGhpcy5fZXZlbnRzKSkge1xuICAgIGlmIChoYXMuY2FsbChldmVudHMsIG5hbWUpKSBuYW1lcy5wdXNoKHByZWZpeCA/IG5hbWUuc2xpY2UoMSkgOiBuYW1lKTtcbiAgfVxuXG4gIGlmIChPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKSB7XG4gICAgcmV0dXJuIG5hbWVzLmNvbmNhdChPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKGV2ZW50cykpO1xuICB9XG5cbiAgcmV0dXJuIG5hbWVzO1xufTtcblxuLyoqXG4gKiBSZXR1cm4gdGhlIGxpc3RlbmVycyByZWdpc3RlcmVkIGZvciBhIGdpdmVuIGV2ZW50LlxuICpcbiAqIEBwYXJhbSB7KFN0cmluZ3xTeW1ib2wpfSBldmVudCBUaGUgZXZlbnQgbmFtZS5cbiAqIEByZXR1cm5zIHtBcnJheX0gVGhlIHJlZ2lzdGVyZWQgbGlzdGVuZXJzLlxuICogQHB1YmxpY1xuICovXG5FdmVudEVtaXR0ZXIucHJvdG90eXBlLmxpc3RlbmVycyA9IGZ1bmN0aW9uIGxpc3RlbmVycyhldmVudCkge1xuICB2YXIgZXZ0ID0gcHJlZml4ID8gcHJlZml4ICsgZXZlbnQgOiBldmVudFxuICAgICwgaGFuZGxlcnMgPSB0aGlzLl9ldmVudHNbZXZ0XTtcblxuICBpZiAoIWhhbmRsZXJzKSByZXR1cm4gW107XG4gIGlmIChoYW5kbGVycy5mbikgcmV0dXJuIFtoYW5kbGVycy5mbl07XG5cbiAgZm9yICh2YXIgaSA9IDAsIGwgPSBoYW5kbGVycy5sZW5ndGgsIGVlID0gbmV3IEFycmF5KGwpOyBpIDwgbDsgaSsrKSB7XG4gICAgZWVbaV0gPSBoYW5kbGVyc1tpXS5mbjtcbiAgfVxuXG4gIHJldHVybiBlZTtcbn07XG5cbi8qKlxuICogUmV0dXJuIHRoZSBudW1iZXIgb2YgbGlzdGVuZXJzIGxpc3RlbmluZyB0byBhIGdpdmVuIGV2ZW50LlxuICpcbiAqIEBwYXJhbSB7KFN0cmluZ3xTeW1ib2wpfSBldmVudCBUaGUgZXZlbnQgbmFtZS5cbiAqIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBudW1iZXIgb2YgbGlzdGVuZXJzLlxuICogQHB1YmxpY1xuICovXG5FdmVudEVtaXR0ZXIucHJvdG90eXBlLmxpc3RlbmVyQ291bnQgPSBmdW5jdGlvbiBsaXN0ZW5lckNvdW50KGV2ZW50KSB7XG4gIHZhciBldnQgPSBwcmVmaXggPyBwcmVmaXggKyBldmVudCA6IGV2ZW50XG4gICAgLCBsaXN0ZW5lcnMgPSB0aGlzLl9ldmVudHNbZXZ0XTtcblxuICBpZiAoIWxpc3RlbmVycykgcmV0dXJuIDA7XG4gIGlmIChsaXN0ZW5lcnMuZm4pIHJldHVybiAxO1xuICByZXR1cm4gbGlzdGVuZXJzLmxlbmd0aDtcbn07XG5cbi8qKlxuICogQ2FsbHMgZWFjaCBvZiB0aGUgbGlzdGVuZXJzIHJlZ2lzdGVyZWQgZm9yIGEgZ2l2ZW4gZXZlbnQuXG4gKlxuICogQHBhcmFtIHsoU3RyaW5nfFN5bWJvbCl9IGV2ZW50IFRoZSBldmVudCBuYW1lLlxuICogQHJldHVybnMge0Jvb2xlYW59IGB0cnVlYCBpZiB0aGUgZXZlbnQgaGFkIGxpc3RlbmVycywgZWxzZSBgZmFsc2VgLlxuICogQHB1YmxpY1xuICovXG5FdmVudEVtaXR0ZXIucHJvdG90eXBlLmVtaXQgPSBmdW5jdGlvbiBlbWl0KGV2ZW50LCBhMSwgYTIsIGEzLCBhNCwgYTUpIHtcbiAgdmFyIGV2dCA9IHByZWZpeCA/IHByZWZpeCArIGV2ZW50IDogZXZlbnQ7XG5cbiAgaWYgKCF0aGlzLl9ldmVudHNbZXZ0XSkgcmV0dXJuIGZhbHNlO1xuXG4gIHZhciBsaXN0ZW5lcnMgPSB0aGlzLl9ldmVudHNbZXZ0XVxuICAgICwgbGVuID0gYXJndW1lbnRzLmxlbmd0aFxuICAgICwgYXJnc1xuICAgICwgaTtcblxuICBpZiAobGlzdGVuZXJzLmZuKSB7XG4gICAgaWYgKGxpc3RlbmVycy5vbmNlKSB0aGlzLnJlbW92ZUxpc3RlbmVyKGV2ZW50LCBsaXN0ZW5lcnMuZm4sIHVuZGVmaW5lZCwgdHJ1ZSk7XG5cbiAgICBzd2l0Y2ggKGxlbikge1xuICAgICAgY2FzZSAxOiByZXR1cm4gbGlzdGVuZXJzLmZuLmNhbGwobGlzdGVuZXJzLmNvbnRleHQpLCB0cnVlO1xuICAgICAgY2FzZSAyOiByZXR1cm4gbGlzdGVuZXJzLmZuLmNhbGwobGlzdGVuZXJzLmNvbnRleHQsIGExKSwgdHJ1ZTtcbiAgICAgIGNhc2UgMzogcmV0dXJuIGxpc3RlbmVycy5mbi5jYWxsKGxpc3RlbmVycy5jb250ZXh0LCBhMSwgYTIpLCB0cnVlO1xuICAgICAgY2FzZSA0OiByZXR1cm4gbGlzdGVuZXJzLmZuLmNhbGwobGlzdGVuZXJzLmNvbnRleHQsIGExLCBhMiwgYTMpLCB0cnVlO1xuICAgICAgY2FzZSA1OiByZXR1cm4gbGlzdGVuZXJzLmZuLmNhbGwobGlzdGVuZXJzLmNvbnRleHQsIGExLCBhMiwgYTMsIGE0KSwgdHJ1ZTtcbiAgICAgIGNhc2UgNjogcmV0dXJuIGxpc3RlbmVycy5mbi5jYWxsKGxpc3RlbmVycy5jb250ZXh0LCBhMSwgYTIsIGEzLCBhNCwgYTUpLCB0cnVlO1xuICAgIH1cblxuICAgIGZvciAoaSA9IDEsIGFyZ3MgPSBuZXcgQXJyYXkobGVuIC0xKTsgaSA8IGxlbjsgaSsrKSB7XG4gICAgICBhcmdzW2kgLSAxXSA9IGFyZ3VtZW50c1tpXTtcbiAgICB9XG5cbiAgICBsaXN0ZW5lcnMuZm4uYXBwbHkobGlzdGVuZXJzLmNvbnRleHQsIGFyZ3MpO1xuICB9IGVsc2Uge1xuICAgIHZhciBsZW5ndGggPSBsaXN0ZW5lcnMubGVuZ3RoXG4gICAgICAsIGo7XG5cbiAgICBmb3IgKGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHtcbiAgICAgIGlmIChsaXN0ZW5lcnNbaV0ub25jZSkgdGhpcy5yZW1vdmVMaXN0ZW5lcihldmVudCwgbGlzdGVuZXJzW2ldLmZuLCB1bmRlZmluZWQsIHRydWUpO1xuXG4gICAgICBzd2l0Y2ggKGxlbikge1xuICAgICAgICBjYXNlIDE6IGxpc3RlbmVyc1tpXS5mbi5jYWxsKGxpc3RlbmVyc1tpXS5jb250ZXh0KTsgYnJlYWs7XG4gICAgICAgIGNhc2UgMjogbGlzdGVuZXJzW2ldLmZuLmNhbGwobGlzdGVuZXJzW2ldLmNvbnRleHQsIGExKTsgYnJlYWs7XG4gICAgICAgIGNhc2UgMzogbGlzdGVuZXJzW2ldLmZuLmNhbGwobGlzdGVuZXJzW2ldLmNvbnRleHQsIGExLCBhMik7IGJyZWFrO1xuICAgICAgICBjYXNlIDQ6IGxpc3RlbmVyc1tpXS5mbi5jYWxsKGxpc3RlbmVyc1tpXS5jb250ZXh0LCBhMSwgYTIsIGEzKTsgYnJlYWs7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgaWYgKCFhcmdzKSBmb3IgKGogPSAxLCBhcmdzID0gbmV3IEFycmF5KGxlbiAtMSk7IGogPCBsZW47IGorKykge1xuICAgICAgICAgICAgYXJnc1tqIC0gMV0gPSBhcmd1bWVudHNbal07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgbGlzdGVuZXJzW2ldLmZuLmFwcGx5KGxpc3RlbmVyc1tpXS5jb250ZXh0LCBhcmdzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gdHJ1ZTtcbn07XG5cbi8qKlxuICogQWRkIGEgbGlzdGVuZXIgZm9yIGEgZ2l2ZW4gZXZlbnQuXG4gKlxuICogQHBhcmFtIHsoU3RyaW5nfFN5bWJvbCl9IGV2ZW50IFRoZSBldmVudCBuYW1lLlxuICogQHBhcmFtIHtGdW5jdGlvbn0gZm4gVGhlIGxpc3RlbmVyIGZ1bmN0aW9uLlxuICogQHBhcmFtIHsqfSBbY29udGV4dD10aGlzXSBUaGUgY29udGV4dCB0byBpbnZva2UgdGhlIGxpc3RlbmVyIHdpdGguXG4gKiBAcmV0dXJucyB7RXZlbnRFbWl0dGVyfSBgdGhpc2AuXG4gKiBAcHVibGljXG4gKi9cbkV2ZW50RW1pdHRlci5wcm90b3R5cGUub24gPSBmdW5jdGlvbiBvbihldmVudCwgZm4sIGNvbnRleHQpIHtcbiAgcmV0dXJuIGFkZExpc3RlbmVyKHRoaXMsIGV2ZW50LCBmbiwgY29udGV4dCwgZmFsc2UpO1xufTtcblxuLyoqXG4gKiBBZGQgYSBvbmUtdGltZSBsaXN0ZW5lciBmb3IgYSBnaXZlbiBldmVudC5cbiAqXG4gKiBAcGFyYW0geyhTdHJpbmd8U3ltYm9sKX0gZXZlbnQgVGhlIGV2ZW50IG5hbWUuXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBmbiBUaGUgbGlzdGVuZXIgZnVuY3Rpb24uXG4gKiBAcGFyYW0geyp9IFtjb250ZXh0PXRoaXNdIFRoZSBjb250ZXh0IHRvIGludm9rZSB0aGUgbGlzdGVuZXIgd2l0aC5cbiAqIEByZXR1cm5zIHtFdmVudEVtaXR0ZXJ9IGB0aGlzYC5cbiAqIEBwdWJsaWNcbiAqL1xuRXZlbnRFbWl0dGVyLnByb3RvdHlwZS5vbmNlID0gZnVuY3Rpb24gb25jZShldmVudCwgZm4sIGNvbnRleHQpIHtcbiAgcmV0dXJuIGFkZExpc3RlbmVyKHRoaXMsIGV2ZW50LCBmbiwgY29udGV4dCwgdHJ1ZSk7XG59O1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbGlzdGVuZXJzIG9mIGEgZ2l2ZW4gZXZlbnQuXG4gKlxuICogQHBhcmFtIHsoU3RyaW5nfFN5bWJvbCl9IGV2ZW50IFRoZSBldmVudCBuYW1lLlxuICogQHBhcmFtIHtGdW5jdGlvbn0gZm4gT25seSByZW1vdmUgdGhlIGxpc3RlbmVycyB0aGF0IG1hdGNoIHRoaXMgZnVuY3Rpb24uXG4gKiBAcGFyYW0geyp9IGNvbnRleHQgT25seSByZW1vdmUgdGhlIGxpc3RlbmVycyB0aGF0IGhhdmUgdGhpcyBjb250ZXh0LlxuICogQHBhcmFtIHtCb29sZWFufSBvbmNlIE9ubHkgcmVtb3ZlIG9uZS10aW1lIGxpc3RlbmVycy5cbiAqIEByZXR1cm5zIHtFdmVudEVtaXR0ZXJ9IGB0aGlzYC5cbiAqIEBwdWJsaWNcbiAqL1xuRXZlbnRFbWl0dGVyLnByb3RvdHlwZS5yZW1vdmVMaXN0ZW5lciA9IGZ1bmN0aW9uIHJlbW92ZUxpc3RlbmVyKGV2ZW50LCBmbiwgY29udGV4dCwgb25jZSkge1xuICB2YXIgZXZ0ID0gcHJlZml4ID8gcHJlZml4ICsgZXZlbnQgOiBldmVudDtcblxuICBpZiAoIXRoaXMuX2V2ZW50c1tldnRdKSByZXR1cm4gdGhpcztcbiAgaWYgKCFmbikge1xuICAgIGNsZWFyRXZlbnQodGhpcywgZXZ0KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHZhciBsaXN0ZW5lcnMgPSB0aGlzLl9ldmVudHNbZXZ0XTtcblxuICBpZiAobGlzdGVuZXJzLmZuKSB7XG4gICAgaWYgKFxuICAgICAgbGlzdGVuZXJzLmZuID09PSBmbiAmJlxuICAgICAgKCFvbmNlIHx8IGxpc3RlbmVycy5vbmNlKSAmJlxuICAgICAgKCFjb250ZXh0IHx8IGxpc3RlbmVycy5jb250ZXh0ID09PSBjb250ZXh0KVxuICAgICkge1xuICAgICAgY2xlYXJFdmVudCh0aGlzLCBldnQpO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICBmb3IgKHZhciBpID0gMCwgZXZlbnRzID0gW10sIGxlbmd0aCA9IGxpc3RlbmVycy5sZW5ndGg7IGkgPCBsZW5ndGg7IGkrKykge1xuICAgICAgaWYgKFxuICAgICAgICBsaXN0ZW5lcnNbaV0uZm4gIT09IGZuIHx8XG4gICAgICAgIChvbmNlICYmICFsaXN0ZW5lcnNbaV0ub25jZSkgfHxcbiAgICAgICAgKGNvbnRleHQgJiYgbGlzdGVuZXJzW2ldLmNvbnRleHQgIT09IGNvbnRleHQpXG4gICAgICApIHtcbiAgICAgICAgZXZlbnRzLnB1c2gobGlzdGVuZXJzW2ldKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvL1xuICAgIC8vIFJlc2V0IHRoZSBhcnJheSwgb3IgcmVtb3ZlIGl0IGNvbXBsZXRlbHkgaWYgd2UgaGF2ZSBubyBtb3JlIGxpc3RlbmVycy5cbiAgICAvL1xuICAgIGlmIChldmVudHMubGVuZ3RoKSB0aGlzLl9ldmVudHNbZXZ0XSA9IGV2ZW50cy5sZW5ndGggPT09IDEgPyBldmVudHNbMF0gOiBldmVudHM7XG4gICAgZWxzZSBjbGVhckV2ZW50KHRoaXMsIGV2dCk7XG4gIH1cblxuICByZXR1cm4gdGhpcztcbn07XG5cbi8qKlxuICogUmVtb3ZlIGFsbCBsaXN0ZW5lcnMsIG9yIHRob3NlIG9mIHRoZSBzcGVjaWZpZWQgZXZlbnQuXG4gKlxuICogQHBhcmFtIHsoU3RyaW5nfFN5bWJvbCl9IFtldmVudF0gVGhlIGV2ZW50IG5hbWUuXG4gKiBAcmV0dXJucyB7RXZlbnRFbWl0dGVyfSBgdGhpc2AuXG4gKiBAcHVibGljXG4gKi9cbkV2ZW50RW1pdHRlci5wcm90b3R5cGUucmVtb3ZlQWxsTGlzdGVuZXJzID0gZnVuY3Rpb24gcmVtb3ZlQWxsTGlzdGVuZXJzKGV2ZW50KSB7XG4gIHZhciBldnQ7XG5cbiAgaWYgKGV2ZW50KSB7XG4gICAgZXZ0ID0gcHJlZml4ID8gcHJlZml4ICsgZXZlbnQgOiBldmVudDtcbiAgICBpZiAodGhpcy5fZXZlbnRzW2V2dF0pIGNsZWFyRXZlbnQodGhpcywgZXZ0KTtcbiAgfSBlbHNlIHtcbiAgICB0aGlzLl9ldmVudHMgPSBuZXcgRXZlbnRzKCk7XG4gICAgdGhpcy5fZXZlbnRzQ291bnQgPSAwO1xuICB9XG5cbiAgcmV0dXJuIHRoaXM7XG59O1xuXG4vL1xuLy8gQWxpYXMgbWV0aG9kcyBuYW1lcyBiZWNhdXNlIHBlb3BsZSByb2xsIGxpa2UgdGhhdC5cbi8vXG5FdmVudEVtaXR0ZXIucHJvdG90eXBlLm9mZiA9IEV2ZW50RW1pdHRlci5wcm90b3R5cGUucmVtb3ZlTGlzdGVuZXI7XG5FdmVudEVtaXR0ZXIucHJvdG90eXBlLmFkZExpc3RlbmVyID0gRXZlbnRFbWl0dGVyLnByb3RvdHlwZS5vbjtcblxuLy9cbi8vIEV4cG9zZSB0aGUgcHJlZml4LlxuLy9cbkV2ZW50RW1pdHRlci5wcmVmaXhlZCA9IHByZWZpeDtcblxuLy9cbi8vIEFsbG93IGBFdmVudEVtaXR0ZXJgIHRvIGJlIGltcG9ydGVkIGFzIG1vZHVsZSBuYW1lc3BhY2UuXG4vL1xuRXZlbnRFbWl0dGVyLkV2ZW50RW1pdHRlciA9IEV2ZW50RW1pdHRlcjtcblxuLy9cbi8vIEV4cG9zZSB0aGUgbW9kdWxlLlxuLy9cbmlmICgndW5kZWZpbmVkJyAhPT0gdHlwZW9mIG1vZHVsZSkge1xuICBtb2R1bGUuZXhwb3J0cyA9IEV2ZW50RW1pdHRlcjtcbn1cbiIsICIvKipcbiAqIFwiQ2xpZW50XCIgd3JhcHMgXCJ3c1wiIG9yIGEgYnJvd3Nlci1pbXBsZW1lbnRlZCBcIldlYlNvY2tldFwiIGxpYnJhcnlcbiAqIGFjY29yZGluZyB0byB0aGUgZW52aXJvbm1lbnQgcHJvdmlkaW5nIEpTT04gUlBDIDIuMCBzdXBwb3J0IG9uIHRvcC5cbiAqIEBtb2R1bGUgQ2xpZW50XG4gKi9cblwidXNlIHN0cmljdFwiO1xuXG52YXIgX2ludGVyb3BSZXF1aXJlRGVmYXVsdCA9IHJlcXVpcmUoXCJAYmFiZWwvcnVudGltZS9oZWxwZXJzL2ludGVyb3BSZXF1aXJlRGVmYXVsdFwiKTtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwge1xuICB2YWx1ZTogdHJ1ZVxufSk7XG5leHBvcnRzW1wiZGVmYXVsdFwiXSA9IHZvaWQgMDtcbnZhciBfcmVnZW5lcmF0b3IgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KHJlcXVpcmUoXCJAYmFiZWwvcnVudGltZS9yZWdlbmVyYXRvclwiKSk7XG52YXIgX2FzeW5jVG9HZW5lcmF0b3IyID0gX2ludGVyb3BSZXF1aXJlRGVmYXVsdChyZXF1aXJlKFwiQGJhYmVsL3J1bnRpbWUvaGVscGVycy9hc3luY1RvR2VuZXJhdG9yXCIpKTtcbnZhciBfdHlwZW9mMiA9IF9pbnRlcm9wUmVxdWlyZURlZmF1bHQocmVxdWlyZShcIkBiYWJlbC9ydW50aW1lL2hlbHBlcnMvdHlwZW9mXCIpKTtcbnZhciBfY2xhc3NDYWxsQ2hlY2syID0gX2ludGVyb3BSZXF1aXJlRGVmYXVsdChyZXF1aXJlKFwiQGJhYmVsL3J1bnRpbWUvaGVscGVycy9jbGFzc0NhbGxDaGVja1wiKSk7XG52YXIgX2NyZWF0ZUNsYXNzMiA9IF9pbnRlcm9wUmVxdWlyZURlZmF1bHQocmVxdWlyZShcIkBiYWJlbC9ydW50aW1lL2hlbHBlcnMvY3JlYXRlQ2xhc3NcIikpO1xudmFyIF9pbmhlcml0czIgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KHJlcXVpcmUoXCJAYmFiZWwvcnVudGltZS9oZWxwZXJzL2luaGVyaXRzXCIpKTtcbnZhciBfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybjIgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KHJlcXVpcmUoXCJAYmFiZWwvcnVudGltZS9oZWxwZXJzL3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm5cIikpO1xudmFyIF9nZXRQcm90b3R5cGVPZjIgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KHJlcXVpcmUoXCJAYmFiZWwvcnVudGltZS9oZWxwZXJzL2dldFByb3RvdHlwZU9mXCIpKTtcbnZhciBfZXZlbnRlbWl0dGVyID0gcmVxdWlyZShcImV2ZW50ZW1pdHRlcjNcIik7XG5mdW5jdGlvbiBfY3JlYXRlU3VwZXIoRGVyaXZlZCkgeyB2YXIgaGFzTmF0aXZlUmVmbGVjdENvbnN0cnVjdCA9IF9pc05hdGl2ZVJlZmxlY3RDb25zdHJ1Y3QoKTsgcmV0dXJuIGZ1bmN0aW9uIF9jcmVhdGVTdXBlckludGVybmFsKCkgeyB2YXIgU3VwZXIgPSAoMCwgX2dldFByb3RvdHlwZU9mMltcImRlZmF1bHRcIl0pKERlcml2ZWQpLCByZXN1bHQ7IGlmIChoYXNOYXRpdmVSZWZsZWN0Q29uc3RydWN0KSB7IHZhciBOZXdUYXJnZXQgPSAoMCwgX2dldFByb3RvdHlwZU9mMltcImRlZmF1bHRcIl0pKHRoaXMpLmNvbnN0cnVjdG9yOyByZXN1bHQgPSBSZWZsZWN0LmNvbnN0cnVjdChTdXBlciwgYXJndW1lbnRzLCBOZXdUYXJnZXQpOyB9IGVsc2UgeyByZXN1bHQgPSBTdXBlci5hcHBseSh0aGlzLCBhcmd1bWVudHMpOyB9IHJldHVybiAoMCwgX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4yW1wiZGVmYXVsdFwiXSkodGhpcywgcmVzdWx0KTsgfTsgfVxuZnVuY3Rpb24gX2lzTmF0aXZlUmVmbGVjdENvbnN0cnVjdCgpIHsgaWYgKHR5cGVvZiBSZWZsZWN0ID09PSBcInVuZGVmaW5lZFwiIHx8ICFSZWZsZWN0LmNvbnN0cnVjdCkgcmV0dXJuIGZhbHNlOyBpZiAoUmVmbGVjdC5jb25zdHJ1Y3Quc2hhbSkgcmV0dXJuIGZhbHNlOyBpZiAodHlwZW9mIFByb3h5ID09PSBcImZ1bmN0aW9uXCIpIHJldHVybiB0cnVlOyB0cnkgeyBCb29sZWFuLnByb3RvdHlwZS52YWx1ZU9mLmNhbGwoUmVmbGVjdC5jb25zdHJ1Y3QoQm9vbGVhbiwgW10sIGZ1bmN0aW9uICgpIHt9KSk7IHJldHVybiB0cnVlOyB9IGNhdGNoIChlKSB7IHJldHVybiBmYWxzZTsgfSB9XG52YXIgX19yZXN0ID0gdm9pZCAwICYmICh2b2lkIDApLl9fcmVzdCB8fCBmdW5jdGlvbiAocywgZSkge1xuICB2YXIgdCA9IHt9O1xuICBmb3IgKHZhciBwIGluIHMpIHtcbiAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHMsIHApICYmIGUuaW5kZXhPZihwKSA8IDApIHRbcF0gPSBzW3BdO1xuICB9XG4gIGlmIChzICE9IG51bGwgJiYgdHlwZW9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMgPT09IFwiZnVuY3Rpb25cIikgZm9yICh2YXIgaSA9IDAsIHAgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHMpOyBpIDwgcC5sZW5ndGg7IGkrKykge1xuICAgIGlmIChlLmluZGV4T2YocFtpXSkgPCAwICYmIE9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChzLCBwW2ldKSkgdFtwW2ldXSA9IHNbcFtpXV07XG4gIH1cbiAgcmV0dXJuIHQ7XG59O1xuLy8gQHRzLWlnbm9yZVxudmFyIENvbW1vbkNsaWVudCA9IC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoX0V2ZW50RW1pdHRlcikge1xuICAoMCwgX2luaGVyaXRzMltcImRlZmF1bHRcIl0pKENvbW1vbkNsaWVudCwgX0V2ZW50RW1pdHRlcik7XG4gIHZhciBfc3VwZXIgPSBfY3JlYXRlU3VwZXIoQ29tbW9uQ2xpZW50KTtcbiAgLyoqXG4gICAqIEluc3RhbnRpYXRlIGEgQ2xpZW50IGNsYXNzLlxuICAgKiBAY29uc3RydWN0b3JcbiAgICogQHBhcmFtIHt3ZWJTb2NrZXRGYWN0b3J5fSB3ZWJTb2NrZXRGYWN0b3J5IC0gZmFjdG9yeSBtZXRob2QgZm9yIFdlYlNvY2tldFxuICAgKiBAcGFyYW0ge1N0cmluZ30gYWRkcmVzcyAtIHVybCB0byBhIHdlYnNvY2tldCBzZXJ2ZXJcbiAgICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnMgLSB3cyBvcHRpb25zIG9iamVjdCB3aXRoIHJlY29ubmVjdCBwYXJhbWV0ZXJzXG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IGdlbmVyYXRlX3JlcXVlc3RfaWQgLSBjdXN0b20gZ2VuZXJhdGlvbiByZXF1ZXN0IElkXG4gICAqIEByZXR1cm4ge0NvbW1vbkNsaWVudH1cbiAgICovXG4gIGZ1bmN0aW9uIENvbW1vbkNsaWVudCh3ZWJTb2NrZXRGYWN0b3J5KSB7XG4gICAgdmFyIF90aGlzO1xuICAgIHZhciBhZGRyZXNzID0gYXJndW1lbnRzLmxlbmd0aCA+IDEgJiYgYXJndW1lbnRzWzFdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMV0gOiBcIndzOi8vbG9jYWxob3N0OjgwODBcIjtcbiAgICB2YXIgX2EgPSBhcmd1bWVudHMubGVuZ3RoID4gMiAmJiBhcmd1bWVudHNbMl0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1syXSA6IHt9O1xuICAgIHZhciBnZW5lcmF0ZV9yZXF1ZXN0X2lkID0gYXJndW1lbnRzLmxlbmd0aCA+IDMgPyBhcmd1bWVudHNbM10gOiB1bmRlZmluZWQ7XG4gICAgKDAsIF9jbGFzc0NhbGxDaGVjazJbXCJkZWZhdWx0XCJdKSh0aGlzLCBDb21tb25DbGllbnQpO1xuICAgIHZhciBfYSRhdXRvY29ubmVjdCA9IF9hLmF1dG9jb25uZWN0LFxuICAgICAgYXV0b2Nvbm5lY3QgPSBfYSRhdXRvY29ubmVjdCA9PT0gdm9pZCAwID8gdHJ1ZSA6IF9hJGF1dG9jb25uZWN0LFxuICAgICAgX2EkcmVjb25uZWN0ID0gX2EucmVjb25uZWN0LFxuICAgICAgcmVjb25uZWN0ID0gX2EkcmVjb25uZWN0ID09PSB2b2lkIDAgPyB0cnVlIDogX2EkcmVjb25uZWN0LFxuICAgICAgX2EkcmVjb25uZWN0X2ludGVydmFsID0gX2EucmVjb25uZWN0X2ludGVydmFsLFxuICAgICAgcmVjb25uZWN0X2ludGVydmFsID0gX2EkcmVjb25uZWN0X2ludGVydmFsID09PSB2b2lkIDAgPyAxMDAwIDogX2EkcmVjb25uZWN0X2ludGVydmFsLFxuICAgICAgX2EkbWF4X3JlY29ubmVjdHMgPSBfYS5tYXhfcmVjb25uZWN0cyxcbiAgICAgIG1heF9yZWNvbm5lY3RzID0gX2EkbWF4X3JlY29ubmVjdHMgPT09IHZvaWQgMCA/IDUgOiBfYSRtYXhfcmVjb25uZWN0cyxcbiAgICAgIHJlc3Rfb3B0aW9ucyA9IF9fcmVzdChfYSwgW1wiYXV0b2Nvbm5lY3RcIiwgXCJyZWNvbm5lY3RcIiwgXCJyZWNvbm5lY3RfaW50ZXJ2YWxcIiwgXCJtYXhfcmVjb25uZWN0c1wiXSk7XG4gICAgX3RoaXMgPSBfc3VwZXIuY2FsbCh0aGlzKTtcbiAgICBfdGhpcy53ZWJTb2NrZXRGYWN0b3J5ID0gd2ViU29ja2V0RmFjdG9yeTtcbiAgICBfdGhpcy5xdWV1ZSA9IHt9O1xuICAgIF90aGlzLnJwY19pZCA9IDA7XG4gICAgX3RoaXMuYWRkcmVzcyA9IGFkZHJlc3M7XG4gICAgX3RoaXMuYXV0b2Nvbm5lY3QgPSBhdXRvY29ubmVjdDtcbiAgICBfdGhpcy5yZWFkeSA9IGZhbHNlO1xuICAgIF90aGlzLnJlY29ubmVjdCA9IHJlY29ubmVjdDtcbiAgICBfdGhpcy5yZWNvbm5lY3RfdGltZXJfaWQgPSB1bmRlZmluZWQ7XG4gICAgX3RoaXMucmVjb25uZWN0X2ludGVydmFsID0gcmVjb25uZWN0X2ludGVydmFsO1xuICAgIF90aGlzLm1heF9yZWNvbm5lY3RzID0gbWF4X3JlY29ubmVjdHM7XG4gICAgX3RoaXMucmVzdF9vcHRpb25zID0gcmVzdF9vcHRpb25zO1xuICAgIF90aGlzLmN1cnJlbnRfcmVjb25uZWN0cyA9IDA7XG4gICAgX3RoaXMuZ2VuZXJhdGVfcmVxdWVzdF9pZCA9IGdlbmVyYXRlX3JlcXVlc3RfaWQgfHwgZnVuY3Rpb24gKCkge1xuICAgICAgcmV0dXJuICsrX3RoaXMucnBjX2lkO1xuICAgIH07XG4gICAgaWYgKF90aGlzLmF1dG9jb25uZWN0KSBfdGhpcy5fY29ubmVjdChfdGhpcy5hZGRyZXNzLCBPYmplY3QuYXNzaWduKHtcbiAgICAgIGF1dG9jb25uZWN0OiBfdGhpcy5hdXRvY29ubmVjdCxcbiAgICAgIHJlY29ubmVjdDogX3RoaXMucmVjb25uZWN0LFxuICAgICAgcmVjb25uZWN0X2ludGVydmFsOiBfdGhpcy5yZWNvbm5lY3RfaW50ZXJ2YWwsXG4gICAgICBtYXhfcmVjb25uZWN0czogX3RoaXMubWF4X3JlY29ubmVjdHNcbiAgICB9LCBfdGhpcy5yZXN0X29wdGlvbnMpKTtcbiAgICByZXR1cm4gX3RoaXM7XG4gIH1cbiAgLyoqXG4gICAqIENvbm5lY3RzIHRvIGEgZGVmaW5lZCBzZXJ2ZXIgaWYgbm90IGNvbm5lY3RlZCBhbHJlYWR5LlxuICAgKiBAbWV0aG9kXG4gICAqIEByZXR1cm4ge1VuZGVmaW5lZH1cbiAgICovXG4gICgwLCBfY3JlYXRlQ2xhc3MyW1wiZGVmYXVsdFwiXSkoQ29tbW9uQ2xpZW50LCBbe1xuICAgIGtleTogXCJjb25uZWN0XCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGNvbm5lY3QoKSB7XG4gICAgICBpZiAodGhpcy5zb2NrZXQpIHJldHVybjtcbiAgICAgIHRoaXMuX2Nvbm5lY3QodGhpcy5hZGRyZXNzLCBPYmplY3QuYXNzaWduKHtcbiAgICAgICAgYXV0b2Nvbm5lY3Q6IHRoaXMuYXV0b2Nvbm5lY3QsXG4gICAgICAgIHJlY29ubmVjdDogdGhpcy5yZWNvbm5lY3QsXG4gICAgICAgIHJlY29ubmVjdF9pbnRlcnZhbDogdGhpcy5yZWNvbm5lY3RfaW50ZXJ2YWwsXG4gICAgICAgIG1heF9yZWNvbm5lY3RzOiB0aGlzLm1heF9yZWNvbm5lY3RzXG4gICAgICB9LCB0aGlzLnJlc3Rfb3B0aW9ucykpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBDYWxscyBhIHJlZ2lzdGVyZWQgUlBDIG1ldGhvZCBvbiBzZXJ2ZXIuXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBwYXJhbSB7U3RyaW5nfSBtZXRob2QgLSBSUEMgbWV0aG9kIG5hbWVcbiAgICAgKiBAcGFyYW0ge09iamVjdHxBcnJheX0gcGFyYW1zIC0gb3B0aW9uYWwgbWV0aG9kIHBhcmFtZXRlcnNcbiAgICAgKiBAcGFyYW0ge051bWJlcn0gdGltZW91dCAtIFJQQyByZXBseSB0aW1lb3V0IHZhbHVlXG4gICAgICogQHBhcmFtIHtPYmplY3R9IHdzX29wdHMgLSBvcHRpb25zIHBhc3NlZCB0byB3c1xuICAgICAqIEByZXR1cm4ge1Byb21pc2V9XG4gICAgICovXG4gIH0sIHtcbiAgICBrZXk6IFwiY2FsbFwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBjYWxsKG1ldGhvZCwgcGFyYW1zLCB0aW1lb3V0LCB3c19vcHRzKSB7XG4gICAgICB2YXIgX3RoaXMyID0gdGhpcztcbiAgICAgIGlmICghd3Nfb3B0cyAmJiBcIm9iamVjdFwiID09PSAoMCwgX3R5cGVvZjJbXCJkZWZhdWx0XCJdKSh0aW1lb3V0KSkge1xuICAgICAgICB3c19vcHRzID0gdGltZW91dDtcbiAgICAgICAgdGltZW91dCA9IG51bGw7XG4gICAgICB9XG4gICAgICByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24gKHJlc29sdmUsIHJlamVjdCkge1xuICAgICAgICBpZiAoIV90aGlzMi5yZWFkeSkgcmV0dXJuIHJlamVjdChuZXcgRXJyb3IoXCJzb2NrZXQgbm90IHJlYWR5XCIpKTtcbiAgICAgICAgdmFyIHJwY19pZCA9IF90aGlzMi5nZW5lcmF0ZV9yZXF1ZXN0X2lkKG1ldGhvZCwgcGFyYW1zKTtcbiAgICAgICAgdmFyIG1lc3NhZ2UgPSB7XG4gICAgICAgICAganNvbnJwYzogXCIyLjBcIixcbiAgICAgICAgICBtZXRob2Q6IG1ldGhvZCxcbiAgICAgICAgICBwYXJhbXM6IHBhcmFtcyB8fCBudWxsLFxuICAgICAgICAgIGlkOiBycGNfaWRcbiAgICAgICAgfTtcbiAgICAgICAgX3RoaXMyLnNvY2tldC5zZW5kKEpTT04uc3RyaW5naWZ5KG1lc3NhZ2UpLCB3c19vcHRzLCBmdW5jdGlvbiAoZXJyb3IpIHtcbiAgICAgICAgICBpZiAoZXJyb3IpIHJldHVybiByZWplY3QoZXJyb3IpO1xuICAgICAgICAgIF90aGlzMi5xdWV1ZVtycGNfaWRdID0ge1xuICAgICAgICAgICAgcHJvbWlzZTogW3Jlc29sdmUsIHJlamVjdF1cbiAgICAgICAgICB9O1xuICAgICAgICAgIGlmICh0aW1lb3V0KSB7XG4gICAgICAgICAgICBfdGhpczIucXVldWVbcnBjX2lkXS50aW1lb3V0ID0gc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgIGRlbGV0ZSBfdGhpczIucXVldWVbcnBjX2lkXTtcbiAgICAgICAgICAgICAgcmVqZWN0KG5ldyBFcnJvcihcInJlcGx5IHRpbWVvdXRcIikpO1xuICAgICAgICAgICAgfSwgdGltZW91dCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBMb2dpbnMgd2l0aCB0aGUgb3RoZXIgc2lkZSBvZiB0aGUgY29ubmVjdGlvbi5cbiAgICAgKiBAbWV0aG9kXG4gICAgICogQHBhcmFtIHtPYmplY3R9IHBhcmFtcyAtIExvZ2luIGNyZWRlbnRpYWxzIG9iamVjdFxuICAgICAqIEByZXR1cm4ge1Byb21pc2V9XG4gICAgICovXG4gIH0sIHtcbiAgICBrZXk6IFwibG9naW5cIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gKCkge1xuICAgICAgdmFyIF9sb2dpbiA9ICgwLCBfYXN5bmNUb0dlbmVyYXRvcjJbXCJkZWZhdWx0XCJdKSggLyojX19QVVJFX18qL19yZWdlbmVyYXRvcltcImRlZmF1bHRcIl0ubWFyayhmdW5jdGlvbiBfY2FsbGVlKHBhcmFtcykge1xuICAgICAgICB2YXIgcmVzcDtcbiAgICAgICAgcmV0dXJuIF9yZWdlbmVyYXRvcltcImRlZmF1bHRcIl0ud3JhcChmdW5jdGlvbiBfY2FsbGVlJChfY29udGV4dCkge1xuICAgICAgICAgIHdoaWxlICgxKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKF9jb250ZXh0LnByZXYgPSBfY29udGV4dC5uZXh0KSB7XG4gICAgICAgICAgICAgIGNhc2UgMDpcbiAgICAgICAgICAgICAgICBfY29udGV4dC5uZXh0ID0gMjtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5jYWxsKFwicnBjLmxvZ2luXCIsIHBhcmFtcyk7XG4gICAgICAgICAgICAgIGNhc2UgMjpcbiAgICAgICAgICAgICAgICByZXNwID0gX2NvbnRleHQuc2VudDtcbiAgICAgICAgICAgICAgICBpZiAocmVzcCkge1xuICAgICAgICAgICAgICAgICAgX2NvbnRleHQubmV4dCA9IDU7XG4gICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiYXV0aGVudGljYXRpb24gZmFpbGVkXCIpO1xuICAgICAgICAgICAgICBjYXNlIDU6XG4gICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0LmFicnVwdChcInJldHVyblwiLCByZXNwKTtcbiAgICAgICAgICAgICAgY2FzZSA2OlxuICAgICAgICAgICAgICBjYXNlIFwiZW5kXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0LnN0b3AoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0sIF9jYWxsZWUsIHRoaXMpO1xuICAgICAgfSkpO1xuICAgICAgZnVuY3Rpb24gbG9naW4oX3gpIHtcbiAgICAgICAgcmV0dXJuIF9sb2dpbi5hcHBseSh0aGlzLCBhcmd1bWVudHMpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGxvZ2luO1xuICAgIH0oKVxuICAgIC8qKlxuICAgICAqIEZldGNoZXMgYSBsaXN0IG9mIGNsaWVudCdzIG1ldGhvZHMgcmVnaXN0ZXJlZCBvbiBzZXJ2ZXIuXG4gICAgICogQG1ldGhvZFxuICAgICAqIEByZXR1cm4ge0FycmF5fVxuICAgICAqL1xuICB9LCB7XG4gICAga2V5OiBcImxpc3RNZXRob2RzXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uICgpIHtcbiAgICAgIHZhciBfbGlzdE1ldGhvZHMgPSAoMCwgX2FzeW5jVG9HZW5lcmF0b3IyW1wiZGVmYXVsdFwiXSkoIC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JbXCJkZWZhdWx0XCJdLm1hcmsoZnVuY3Rpb24gX2NhbGxlZTIoKSB7XG4gICAgICAgIHJldHVybiBfcmVnZW5lcmF0b3JbXCJkZWZhdWx0XCJdLndyYXAoZnVuY3Rpb24gX2NhbGxlZTIkKF9jb250ZXh0Mikge1xuICAgICAgICAgIHdoaWxlICgxKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKF9jb250ZXh0Mi5wcmV2ID0gX2NvbnRleHQyLm5leHQpIHtcbiAgICAgICAgICAgICAgY2FzZSAwOlxuICAgICAgICAgICAgICAgIF9jb250ZXh0Mi5uZXh0ID0gMjtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5jYWxsKFwiX19saXN0TWV0aG9kc1wiKTtcbiAgICAgICAgICAgICAgY2FzZSAyOlxuICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDIuYWJydXB0KFwicmV0dXJuXCIsIF9jb250ZXh0Mi5zZW50KTtcbiAgICAgICAgICAgICAgY2FzZSAzOlxuICAgICAgICAgICAgICBjYXNlIFwiZW5kXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0Mi5zdG9wKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9LCBfY2FsbGVlMiwgdGhpcyk7XG4gICAgICB9KSk7XG4gICAgICBmdW5jdGlvbiBsaXN0TWV0aG9kcygpIHtcbiAgICAgICAgcmV0dXJuIF9saXN0TWV0aG9kcy5hcHBseSh0aGlzLCBhcmd1bWVudHMpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGxpc3RNZXRob2RzO1xuICAgIH0oKVxuICAgIC8qKlxuICAgICAqIFNlbmRzIGEgSlNPTi1SUEMgMi4wIG5vdGlmaWNhdGlvbiB0byBzZXJ2ZXIuXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBwYXJhbSB7U3RyaW5nfSBtZXRob2QgLSBSUEMgbWV0aG9kIG5hbWVcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gcGFyYW1zIC0gb3B0aW9uYWwgbWV0aG9kIHBhcmFtZXRlcnNcbiAgICAgKiBAcmV0dXJuIHtQcm9taXNlfVxuICAgICAqL1xuICB9LCB7XG4gICAga2V5OiBcIm5vdGlmeVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBub3RpZnkobWV0aG9kLCBwYXJhbXMpIHtcbiAgICAgIHZhciBfdGhpczMgPSB0aGlzO1xuICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHtcbiAgICAgICAgaWYgKCFfdGhpczMucmVhZHkpIHJldHVybiByZWplY3QobmV3IEVycm9yKFwic29ja2V0IG5vdCByZWFkeVwiKSk7XG4gICAgICAgIHZhciBtZXNzYWdlID0ge1xuICAgICAgICAgIGpzb25ycGM6IFwiMi4wXCIsXG4gICAgICAgICAgbWV0aG9kOiBtZXRob2QsXG4gICAgICAgICAgcGFyYW1zOiBwYXJhbXMgfHwgbnVsbFxuICAgICAgICB9O1xuICAgICAgICBfdGhpczMuc29ja2V0LnNlbmQoSlNPTi5zdHJpbmdpZnkobWVzc2FnZSksIGZ1bmN0aW9uIChlcnJvcikge1xuICAgICAgICAgIGlmIChlcnJvcikgcmV0dXJuIHJlamVjdChlcnJvcik7XG4gICAgICAgICAgcmVzb2x2ZSgpO1xuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBTdWJzY3JpYmVzIGZvciBhIGRlZmluZWQgZXZlbnQuXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBwYXJhbSB7U3RyaW5nfEFycmF5fSBldmVudCAtIGV2ZW50IG5hbWVcbiAgICAgKiBAcmV0dXJuIHtVbmRlZmluZWR9XG4gICAgICogQHRocm93cyB7RXJyb3J9XG4gICAgICovXG4gIH0sIHtcbiAgICBrZXk6IFwic3Vic2NyaWJlXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uICgpIHtcbiAgICAgIHZhciBfc3Vic2NyaWJlID0gKDAsIF9hc3luY1RvR2VuZXJhdG9yMltcImRlZmF1bHRcIl0pKCAvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yW1wiZGVmYXVsdFwiXS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWUzKGV2ZW50KSB7XG4gICAgICAgIHZhciByZXN1bHQ7XG4gICAgICAgIHJldHVybiBfcmVnZW5lcmF0b3JbXCJkZWZhdWx0XCJdLndyYXAoZnVuY3Rpb24gX2NhbGxlZTMkKF9jb250ZXh0Mykge1xuICAgICAgICAgIHdoaWxlICgxKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKF9jb250ZXh0My5wcmV2ID0gX2NvbnRleHQzLm5leHQpIHtcbiAgICAgICAgICAgICAgY2FzZSAwOlxuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgZXZlbnQgPT09IFwic3RyaW5nXCIpIGV2ZW50ID0gW2V2ZW50XTtcbiAgICAgICAgICAgICAgICBfY29udGV4dDMubmV4dCA9IDM7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuY2FsbChcInJwYy5vblwiLCBldmVudCk7XG4gICAgICAgICAgICAgIGNhc2UgMzpcbiAgICAgICAgICAgICAgICByZXN1bHQgPSBfY29udGV4dDMuc2VudDtcbiAgICAgICAgICAgICAgICBpZiAoISh0eXBlb2YgZXZlbnQgPT09IFwic3RyaW5nXCIgJiYgcmVzdWx0W2V2ZW50XSAhPT0gXCJva1wiKSkge1xuICAgICAgICAgICAgICAgICAgX2NvbnRleHQzLm5leHQgPSA2O1xuICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkZhaWxlZCBzdWJzY3JpYmluZyB0byBhbiBldmVudCAnXCIgKyBldmVudCArIFwiJyB3aXRoOiBcIiArIHJlc3VsdFtldmVudF0pO1xuICAgICAgICAgICAgICBjYXNlIDY6XG4gICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0My5hYnJ1cHQoXCJyZXR1cm5cIiwgcmVzdWx0KTtcbiAgICAgICAgICAgICAgY2FzZSA3OlxuICAgICAgICAgICAgICBjYXNlIFwiZW5kXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0My5zdG9wKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9LCBfY2FsbGVlMywgdGhpcyk7XG4gICAgICB9KSk7XG4gICAgICBmdW5jdGlvbiBzdWJzY3JpYmUoX3gyKSB7XG4gICAgICAgIHJldHVybiBfc3Vic2NyaWJlLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7XG4gICAgICB9XG4gICAgICByZXR1cm4gc3Vic2NyaWJlO1xuICAgIH0oKVxuICAgIC8qKlxuICAgICAqIFVuc3Vic2NyaWJlcyBmcm9tIGEgZGVmaW5lZCBldmVudC5cbiAgICAgKiBAbWV0aG9kXG4gICAgICogQHBhcmFtIHtTdHJpbmd8QXJyYXl9IGV2ZW50IC0gZXZlbnQgbmFtZVxuICAgICAqIEByZXR1cm4ge1VuZGVmaW5lZH1cbiAgICAgKiBAdGhyb3dzIHtFcnJvcn1cbiAgICAgKi9cbiAgfSwge1xuICAgIGtleTogXCJ1bnN1YnNjcmliZVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiAoKSB7XG4gICAgICB2YXIgX3Vuc3Vic2NyaWJlID0gKDAsIF9hc3luY1RvR2VuZXJhdG9yMltcImRlZmF1bHRcIl0pKCAvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yW1wiZGVmYXVsdFwiXS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWU0KGV2ZW50KSB7XG4gICAgICAgIHZhciByZXN1bHQ7XG4gICAgICAgIHJldHVybiBfcmVnZW5lcmF0b3JbXCJkZWZhdWx0XCJdLndyYXAoZnVuY3Rpb24gX2NhbGxlZTQkKF9jb250ZXh0NCkge1xuICAgICAgICAgIHdoaWxlICgxKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKF9jb250ZXh0NC5wcmV2ID0gX2NvbnRleHQ0Lm5leHQpIHtcbiAgICAgICAgICAgICAgY2FzZSAwOlxuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgZXZlbnQgPT09IFwic3RyaW5nXCIpIGV2ZW50ID0gW2V2ZW50XTtcbiAgICAgICAgICAgICAgICBfY29udGV4dDQubmV4dCA9IDM7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuY2FsbChcInJwYy5vZmZcIiwgZXZlbnQpO1xuICAgICAgICAgICAgICBjYXNlIDM6XG4gICAgICAgICAgICAgICAgcmVzdWx0ID0gX2NvbnRleHQ0LnNlbnQ7XG4gICAgICAgICAgICAgICAgaWYgKCEodHlwZW9mIGV2ZW50ID09PSBcInN0cmluZ1wiICYmIHJlc3VsdFtldmVudF0gIT09IFwib2tcIikpIHtcbiAgICAgICAgICAgICAgICAgIF9jb250ZXh0NC5uZXh0ID0gNjtcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJGYWlsZWQgdW5zdWJzY3JpYmluZyBmcm9tIGFuIGV2ZW50IHdpdGg6IFwiICsgcmVzdWx0KTtcbiAgICAgICAgICAgICAgY2FzZSA2OlxuICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDQuYWJydXB0KFwicmV0dXJuXCIsIHJlc3VsdCk7XG4gICAgICAgICAgICAgIGNhc2UgNzpcbiAgICAgICAgICAgICAgY2FzZSBcImVuZFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDQuc3RvcCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSwgX2NhbGxlZTQsIHRoaXMpO1xuICAgICAgfSkpO1xuICAgICAgZnVuY3Rpb24gdW5zdWJzY3JpYmUoX3gzKSB7XG4gICAgICAgIHJldHVybiBfdW5zdWJzY3JpYmUuYXBwbHkodGhpcywgYXJndW1lbnRzKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB1bnN1YnNjcmliZTtcbiAgICB9KClcbiAgICAvKipcbiAgICAgKiBDbG9zZXMgYSBXZWJTb2NrZXQgY29ubmVjdGlvbiBncmFjZWZ1bGx5LlxuICAgICAqIEBtZXRob2RcbiAgICAgKiBAcGFyYW0ge051bWJlcn0gY29kZSAtIHNvY2tldCBjbG9zZSBjb2RlXG4gICAgICogQHBhcmFtIHtTdHJpbmd9IGRhdGEgLSBvcHRpb25hbCBkYXRhIHRvIGJlIHNlbnQgYmVmb3JlIGNsb3NpbmdcbiAgICAgKiBAcmV0dXJuIHtVbmRlZmluZWR9XG4gICAgICovXG4gIH0sIHtcbiAgICBrZXk6IFwiY2xvc2VcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gY2xvc2UoY29kZSwgZGF0YSkge1xuICAgICAgdGhpcy5zb2NrZXQuY2xvc2UoY29kZSB8fCAxMDAwLCBkYXRhKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQ29ubmVjdGlvbi9NZXNzYWdlIGhhbmRsZXIuXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBwcml2YXRlXG4gICAgICogQHBhcmFtIHtTdHJpbmd9IGFkZHJlc3MgLSBXZWJTb2NrZXQgQVBJIGFkZHJlc3NcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gb3B0aW9ucyAtIHdzIG9wdGlvbnMgb2JqZWN0XG4gICAgICogQHJldHVybiB7VW5kZWZpbmVkfVxuICAgICAqL1xuICB9LCB7XG4gICAga2V5OiBcIl9jb25uZWN0XCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIF9jb25uZWN0KGFkZHJlc3MsIG9wdGlvbnMpIHtcbiAgICAgIHZhciBfdGhpczQgPSB0aGlzO1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMucmVjb25uZWN0X3RpbWVyX2lkKTtcbiAgICAgIHRoaXMuc29ja2V0ID0gdGhpcy53ZWJTb2NrZXRGYWN0b3J5KGFkZHJlc3MsIG9wdGlvbnMpO1xuICAgICAgdGhpcy5zb2NrZXQuYWRkRXZlbnRMaXN0ZW5lcihcIm9wZW5cIiwgZnVuY3Rpb24gKCkge1xuICAgICAgICBfdGhpczQucmVhZHkgPSB0cnVlO1xuICAgICAgICBfdGhpczQuZW1pdChcIm9wZW5cIik7XG4gICAgICAgIF90aGlzNC5jdXJyZW50X3JlY29ubmVjdHMgPSAwO1xuICAgICAgfSk7XG4gICAgICB0aGlzLnNvY2tldC5hZGRFdmVudExpc3RlbmVyKFwibWVzc2FnZVwiLCBmdW5jdGlvbiAoX3JlZikge1xuICAgICAgICB2YXIgbWVzc2FnZSA9IF9yZWYuZGF0YTtcbiAgICAgICAgaWYgKG1lc3NhZ2UgaW5zdGFuY2VvZiBBcnJheUJ1ZmZlcikgbWVzc2FnZSA9IEJ1ZmZlci5mcm9tKG1lc3NhZ2UpLnRvU3RyaW5nKCk7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgbWVzc2FnZSA9IEpTT04ucGFyc2UobWVzc2FnZSk7XG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIC8vIGNoZWNrIGlmIGFueSBsaXN0ZW5lcnMgYXJlIGF0dGFjaGVkIGFuZCBmb3J3YXJkIGV2ZW50XG4gICAgICAgIGlmIChtZXNzYWdlLm5vdGlmaWNhdGlvbiAmJiBfdGhpczQubGlzdGVuZXJzKG1lc3NhZ2Uubm90aWZpY2F0aW9uKS5sZW5ndGgpIHtcbiAgICAgICAgICBpZiAoIU9iamVjdC5rZXlzKG1lc3NhZ2UucGFyYW1zKS5sZW5ndGgpIHJldHVybiBfdGhpczQuZW1pdChtZXNzYWdlLm5vdGlmaWNhdGlvbik7XG4gICAgICAgICAgdmFyIGFyZ3MgPSBbbWVzc2FnZS5ub3RpZmljYXRpb25dO1xuICAgICAgICAgIGlmIChtZXNzYWdlLnBhcmFtcy5jb25zdHJ1Y3RvciA9PT0gT2JqZWN0KSBhcmdzLnB1c2gobWVzc2FnZS5wYXJhbXMpO2Vsc2VcbiAgICAgICAgICAgIC8vIHVzaW5nIGZvci1sb29wIGluc3RlYWQgb2YgdW5zaGlmdC9zcHJlYWQgYmVjYXVzZSBwZXJmb3JtYW5jZSBpcyBiZXR0ZXJcbiAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbWVzc2FnZS5wYXJhbXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgYXJncy5wdXNoKG1lc3NhZ2UucGFyYW1zW2ldKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAvLyBydW4gYXMgbWljcm90YXNrIHNvIHRoYXQgcGVuZGluZyBxdWV1ZSBtZXNzYWdlcyBhcmUgcmVzb2x2ZWQgZmlyc3RcbiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLXNwcmVhZFxuICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKS50aGVuKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIF90aGlzNC5lbWl0LmFwcGx5KF90aGlzNCwgYXJncyk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFfdGhpczQucXVldWVbbWVzc2FnZS5pZF0pIHtcbiAgICAgICAgICAvLyBnZW5lcmFsIEpTT04gUlBDIDIuMCBldmVudHNcbiAgICAgICAgICBpZiAobWVzc2FnZS5tZXRob2QgJiYgbWVzc2FnZS5wYXJhbXMpIHtcbiAgICAgICAgICAgIC8vIHJ1biBhcyBtaWNyb3Rhc2sgc28gdGhhdCBwZW5kaW5nIHF1ZXVlIG1lc3NhZ2VzIGFyZSByZXNvbHZlZCBmaXJzdFxuICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpLnRoZW4oZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICBfdGhpczQuZW1pdChtZXNzYWdlLm1ldGhvZCwgbWVzc2FnZS5wYXJhbXMpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICAvLyByZWplY3QgZWFybHkgc2luY2Ugc2VydmVyJ3MgcmVzcG9uc2UgaXMgaW52YWxpZFxuICAgICAgICBpZiAoXCJlcnJvclwiIGluIG1lc3NhZ2UgPT09IFwicmVzdWx0XCIgaW4gbWVzc2FnZSkgX3RoaXM0LnF1ZXVlW21lc3NhZ2UuaWRdLnByb21pc2VbMV0obmV3IEVycm9yKFwiU2VydmVyIHJlc3BvbnNlIG1hbGZvcm1lZC4gUmVzcG9uc2UgbXVzdCBpbmNsdWRlIGVpdGhlciBcXFwicmVzdWx0XFxcIlwiICsgXCIgb3IgXFxcImVycm9yXFxcIiwgYnV0IG5vdCBib3RoLlwiKSk7XG4gICAgICAgIGlmIChfdGhpczQucXVldWVbbWVzc2FnZS5pZF0udGltZW91dCkgY2xlYXJUaW1lb3V0KF90aGlzNC5xdWV1ZVttZXNzYWdlLmlkXS50aW1lb3V0KTtcbiAgICAgICAgaWYgKG1lc3NhZ2UuZXJyb3IpIF90aGlzNC5xdWV1ZVttZXNzYWdlLmlkXS5wcm9taXNlWzFdKG1lc3NhZ2UuZXJyb3IpO2Vsc2UgX3RoaXM0LnF1ZXVlW21lc3NhZ2UuaWRdLnByb21pc2VbMF0obWVzc2FnZS5yZXN1bHQpO1xuICAgICAgICBkZWxldGUgX3RoaXM0LnF1ZXVlW21lc3NhZ2UuaWRdO1xuICAgICAgfSk7XG4gICAgICB0aGlzLnNvY2tldC5hZGRFdmVudExpc3RlbmVyKFwiZXJyb3JcIiwgZnVuY3Rpb24gKGVycm9yKSB7XG4gICAgICAgIHJldHVybiBfdGhpczQuZW1pdChcImVycm9yXCIsIGVycm9yKTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy5zb2NrZXQuYWRkRXZlbnRMaXN0ZW5lcihcImNsb3NlXCIsIGZ1bmN0aW9uIChfcmVmMikge1xuICAgICAgICB2YXIgY29kZSA9IF9yZWYyLmNvZGUsXG4gICAgICAgICAgcmVhc29uID0gX3JlZjIucmVhc29uO1xuICAgICAgICBpZiAoX3RoaXM0LnJlYWR5KVxuICAgICAgICAgIC8vIERlbGF5IGNsb3NlIGV2ZW50IHVudGlsIGludGVybmFsIHN0YXRlIGlzIHVwZGF0ZWRcbiAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiBfdGhpczQuZW1pdChcImNsb3NlXCIsIGNvZGUsIHJlYXNvbik7XG4gICAgICAgICAgfSwgMCk7XG4gICAgICAgIF90aGlzNC5yZWFkeSA9IGZhbHNlO1xuICAgICAgICBfdGhpczQuc29ja2V0ID0gdW5kZWZpbmVkO1xuICAgICAgICBpZiAoY29kZSA9PT0gMTAwMCkgcmV0dXJuO1xuICAgICAgICBfdGhpczQuY3VycmVudF9yZWNvbm5lY3RzKys7XG4gICAgICAgIGlmIChfdGhpczQucmVjb25uZWN0ICYmIChfdGhpczQubWF4X3JlY29ubmVjdHMgPiBfdGhpczQuY3VycmVudF9yZWNvbm5lY3RzIHx8IF90aGlzNC5tYXhfcmVjb25uZWN0cyA9PT0gMCkpIF90aGlzNC5yZWNvbm5lY3RfdGltZXJfaWQgPSBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4gX3RoaXM0Ll9jb25uZWN0KGFkZHJlc3MsIG9wdGlvbnMpO1xuICAgICAgICB9LCBfdGhpczQucmVjb25uZWN0X2ludGVydmFsKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfV0pO1xuICByZXR1cm4gQ29tbW9uQ2xpZW50O1xufShfZXZlbnRlbWl0dGVyLkV2ZW50RW1pdHRlcik7XG5leHBvcnRzW1wiZGVmYXVsdFwiXSA9IENvbW1vbkNsaWVudDsiLCAiJ3VzZSBzdHJpY3QnO1xuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgQklOQVJZX1RZUEVTOiBbJ25vZGVidWZmZXInLCAnYXJyYXlidWZmZXInLCAnZnJhZ21lbnRzJ10sXG4gIEVNUFRZX0JVRkZFUjogQnVmZmVyLmFsbG9jKDApLFxuICBHVUlEOiAnMjU4RUFGQTUtRTkxNC00N0RBLTk1Q0EtQzVBQjBEQzg1QjExJyxcbiAga0Zvck9uRXZlbnRBdHRyaWJ1dGU6IFN5bWJvbCgna0lzRm9yT25FdmVudEF0dHJpYnV0ZScpLFxuICBrTGlzdGVuZXI6IFN5bWJvbCgna0xpc3RlbmVyJyksXG4gIGtTdGF0dXNDb2RlOiBTeW1ib2woJ3N0YXR1cy1jb2RlJyksXG4gIGtXZWJTb2NrZXQ6IFN5bWJvbCgnd2Vic29ja2V0JyksXG4gIE5PT1A6ICgpID0+IHt9XG59O1xuIiwgInZhciBmcyA9IHJlcXVpcmUoJ2ZzJylcbnZhciBwYXRoID0gcmVxdWlyZSgncGF0aCcpXG52YXIgb3MgPSByZXF1aXJlKCdvcycpXG5cbi8vIFdvcmthcm91bmQgdG8gZml4IHdlYnBhY2sncyBidWlsZCB3YXJuaW5nczogJ3RoZSByZXF1ZXN0IG9mIGEgZGVwZW5kZW5jeSBpcyBhbiBleHByZXNzaW9uJ1xudmFyIHJ1bnRpbWVSZXF1aXJlID0gdHlwZW9mIF9fd2VicGFja19yZXF1aXJlX18gPT09ICdmdW5jdGlvbicgPyBfX25vbl93ZWJwYWNrX3JlcXVpcmVfXyA6IHJlcXVpcmUgLy8gZXNsaW50LWRpc2FibGUtbGluZVxuXG52YXIgdmFycyA9IChwcm9jZXNzLmNvbmZpZyAmJiBwcm9jZXNzLmNvbmZpZy52YXJpYWJsZXMpIHx8IHt9XG52YXIgcHJlYnVpbGRzT25seSA9ICEhcHJvY2Vzcy5lbnYuUFJFQlVJTERTX09OTFlcbnZhciBhYmkgPSBwcm9jZXNzLnZlcnNpb25zLm1vZHVsZXMgLy8gVE9ETzogc3VwcG9ydCBvbGQgbm9kZSB3aGVyZSB0aGlzIGlzIHVuZGVmXG52YXIgcnVudGltZSA9IGlzRWxlY3Ryb24oKSA/ICdlbGVjdHJvbicgOiAoaXNOd2pzKCkgPyAnbm9kZS13ZWJraXQnIDogJ25vZGUnKVxuXG52YXIgYXJjaCA9IHByb2Nlc3MuZW52Lm5wbV9jb25maWdfYXJjaCB8fCBvcy5hcmNoKClcbnZhciBwbGF0Zm9ybSA9IHByb2Nlc3MuZW52Lm5wbV9jb25maWdfcGxhdGZvcm0gfHwgb3MucGxhdGZvcm0oKVxudmFyIGxpYmMgPSBwcm9jZXNzLmVudi5MSUJDIHx8IChpc0FscGluZShwbGF0Zm9ybSkgPyAnbXVzbCcgOiAnZ2xpYmMnKVxudmFyIGFybXYgPSBwcm9jZXNzLmVudi5BUk1fVkVSU0lPTiB8fCAoYXJjaCA9PT0gJ2FybTY0JyA/ICc4JyA6IHZhcnMuYXJtX3ZlcnNpb24pIHx8ICcnXG52YXIgdXYgPSAocHJvY2Vzcy52ZXJzaW9ucy51diB8fCAnJykuc3BsaXQoJy4nKVswXVxuXG5tb2R1bGUuZXhwb3J0cyA9IGxvYWRcblxuZnVuY3Rpb24gbG9hZCAoZGlyKSB7XG4gIHJldHVybiBydW50aW1lUmVxdWlyZShsb2FkLnJlc29sdmUoZGlyKSlcbn1cblxubG9hZC5yZXNvbHZlID0gbG9hZC5wYXRoID0gZnVuY3Rpb24gKGRpcikge1xuICBkaXIgPSBwYXRoLnJlc29sdmUoZGlyIHx8ICcuJylcblxuICB0cnkge1xuICAgIHZhciBuYW1lID0gcnVudGltZVJlcXVpcmUocGF0aC5qb2luKGRpciwgJ3BhY2thZ2UuanNvbicpKS5uYW1lLnRvVXBwZXJDYXNlKCkucmVwbGFjZSgvLS9nLCAnXycpXG4gICAgaWYgKHByb2Nlc3MuZW52W25hbWUgKyAnX1BSRUJVSUxEJ10pIGRpciA9IHByb2Nlc3MuZW52W25hbWUgKyAnX1BSRUJVSUxEJ11cbiAgfSBjYXRjaCAoZXJyKSB7fVxuXG4gIGlmICghcHJlYnVpbGRzT25seSkge1xuICAgIHZhciByZWxlYXNlID0gZ2V0Rmlyc3QocGF0aC5qb2luKGRpciwgJ2J1aWxkL1JlbGVhc2UnKSwgbWF0Y2hCdWlsZClcbiAgICBpZiAocmVsZWFzZSkgcmV0dXJuIHJlbGVhc2VcblxuICAgIHZhciBkZWJ1ZyA9IGdldEZpcnN0KHBhdGguam9pbihkaXIsICdidWlsZC9EZWJ1ZycpLCBtYXRjaEJ1aWxkKVxuICAgIGlmIChkZWJ1ZykgcmV0dXJuIGRlYnVnXG4gIH1cblxuICB2YXIgcHJlYnVpbGQgPSByZXNvbHZlKGRpcilcbiAgaWYgKHByZWJ1aWxkKSByZXR1cm4gcHJlYnVpbGRcblxuICB2YXIgbmVhcmJ5ID0gcmVzb2x2ZShwYXRoLmRpcm5hbWUocHJvY2Vzcy5leGVjUGF0aCkpXG4gIGlmIChuZWFyYnkpIHJldHVybiBuZWFyYnlcblxuICB2YXIgdGFyZ2V0ID0gW1xuICAgICdwbGF0Zm9ybT0nICsgcGxhdGZvcm0sXG4gICAgJ2FyY2g9JyArIGFyY2gsXG4gICAgJ3J1bnRpbWU9JyArIHJ1bnRpbWUsXG4gICAgJ2FiaT0nICsgYWJpLFxuICAgICd1dj0nICsgdXYsXG4gICAgYXJtdiA/ICdhcm12PScgKyBhcm12IDogJycsXG4gICAgJ2xpYmM9JyArIGxpYmMsXG4gICAgJ25vZGU9JyArIHByb2Nlc3MudmVyc2lvbnMubm9kZSxcbiAgICBwcm9jZXNzLnZlcnNpb25zLmVsZWN0cm9uID8gJ2VsZWN0cm9uPScgKyBwcm9jZXNzLnZlcnNpb25zLmVsZWN0cm9uIDogJycsXG4gICAgdHlwZW9mIF9fd2VicGFja19yZXF1aXJlX18gPT09ICdmdW5jdGlvbicgPyAnd2VicGFjaz10cnVlJyA6ICcnIC8vIGVzbGludC1kaXNhYmxlLWxpbmVcbiAgXS5maWx0ZXIoQm9vbGVhbikuam9pbignICcpXG5cbiAgdGhyb3cgbmV3IEVycm9yKCdObyBuYXRpdmUgYnVpbGQgd2FzIGZvdW5kIGZvciAnICsgdGFyZ2V0ICsgJ1xcbiAgICBsb2FkZWQgZnJvbTogJyArIGRpciArICdcXG4nKVxuXG4gIGZ1bmN0aW9uIHJlc29sdmUgKGRpcikge1xuICAgIC8vIEZpbmQgbWF0Y2hpbmcgXCJwcmVidWlsZHMvPHBsYXRmb3JtPi08YXJjaD5cIiBkaXJlY3RvcnlcbiAgICB2YXIgdHVwbGVzID0gcmVhZGRpclN5bmMocGF0aC5qb2luKGRpciwgJ3ByZWJ1aWxkcycpKS5tYXAocGFyc2VUdXBsZSlcbiAgICB2YXIgdHVwbGUgPSB0dXBsZXMuZmlsdGVyKG1hdGNoVHVwbGUocGxhdGZvcm0sIGFyY2gpKS5zb3J0KGNvbXBhcmVUdXBsZXMpWzBdXG4gICAgaWYgKCF0dXBsZSkgcmV0dXJuXG5cbiAgICAvLyBGaW5kIG1vc3Qgc3BlY2lmaWMgZmxhdm9yIGZpcnN0XG4gICAgdmFyIHByZWJ1aWxkcyA9IHBhdGguam9pbihkaXIsICdwcmVidWlsZHMnLCB0dXBsZS5uYW1lKVxuICAgIHZhciBwYXJzZWQgPSByZWFkZGlyU3luYyhwcmVidWlsZHMpLm1hcChwYXJzZVRhZ3MpXG4gICAgdmFyIGNhbmRpZGF0ZXMgPSBwYXJzZWQuZmlsdGVyKG1hdGNoVGFncyhydW50aW1lLCBhYmkpKVxuICAgIHZhciB3aW5uZXIgPSBjYW5kaWRhdGVzLnNvcnQoY29tcGFyZVRhZ3MocnVudGltZSkpWzBdXG4gICAgaWYgKHdpbm5lcikgcmV0dXJuIHBhdGguam9pbihwcmVidWlsZHMsIHdpbm5lci5maWxlKVxuICB9XG59XG5cbmZ1bmN0aW9uIHJlYWRkaXJTeW5jIChkaXIpIHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gZnMucmVhZGRpclN5bmMoZGlyKVxuICB9IGNhdGNoIChlcnIpIHtcbiAgICByZXR1cm4gW11cbiAgfVxufVxuXG5mdW5jdGlvbiBnZXRGaXJzdCAoZGlyLCBmaWx0ZXIpIHtcbiAgdmFyIGZpbGVzID0gcmVhZGRpclN5bmMoZGlyKS5maWx0ZXIoZmlsdGVyKVxuICByZXR1cm4gZmlsZXNbMF0gJiYgcGF0aC5qb2luKGRpciwgZmlsZXNbMF0pXG59XG5cbmZ1bmN0aW9uIG1hdGNoQnVpbGQgKG5hbWUpIHtcbiAgcmV0dXJuIC9cXC5ub2RlJC8udGVzdChuYW1lKVxufVxuXG5mdW5jdGlvbiBwYXJzZVR1cGxlIChuYW1lKSB7XG4gIC8vIEV4YW1wbGU6IGRhcndpbi14NjQrYXJtNjRcbiAgdmFyIGFyciA9IG5hbWUuc3BsaXQoJy0nKVxuICBpZiAoYXJyLmxlbmd0aCAhPT0gMikgcmV0dXJuXG5cbiAgdmFyIHBsYXRmb3JtID0gYXJyWzBdXG4gIHZhciBhcmNoaXRlY3R1cmVzID0gYXJyWzFdLnNwbGl0KCcrJylcblxuICBpZiAoIXBsYXRmb3JtKSByZXR1cm5cbiAgaWYgKCFhcmNoaXRlY3R1cmVzLmxlbmd0aCkgcmV0dXJuXG4gIGlmICghYXJjaGl0ZWN0dXJlcy5ldmVyeShCb29sZWFuKSkgcmV0dXJuXG5cbiAgcmV0dXJuIHsgbmFtZSwgcGxhdGZvcm0sIGFyY2hpdGVjdHVyZXMgfVxufVxuXG5mdW5jdGlvbiBtYXRjaFR1cGxlIChwbGF0Zm9ybSwgYXJjaCkge1xuICByZXR1cm4gZnVuY3Rpb24gKHR1cGxlKSB7XG4gICAgaWYgKHR1cGxlID09IG51bGwpIHJldHVybiBmYWxzZVxuICAgIGlmICh0dXBsZS5wbGF0Zm9ybSAhPT0gcGxhdGZvcm0pIHJldHVybiBmYWxzZVxuICAgIHJldHVybiB0dXBsZS5hcmNoaXRlY3R1cmVzLmluY2x1ZGVzKGFyY2gpXG4gIH1cbn1cblxuZnVuY3Rpb24gY29tcGFyZVR1cGxlcyAoYSwgYikge1xuICAvLyBQcmVmZXIgc2luZ2xlLWFyY2ggcHJlYnVpbGRzIG92ZXIgbXVsdGktYXJjaFxuICByZXR1cm4gYS5hcmNoaXRlY3R1cmVzLmxlbmd0aCAtIGIuYXJjaGl0ZWN0dXJlcy5sZW5ndGhcbn1cblxuZnVuY3Rpb24gcGFyc2VUYWdzIChmaWxlKSB7XG4gIHZhciBhcnIgPSBmaWxlLnNwbGl0KCcuJylcbiAgdmFyIGV4dGVuc2lvbiA9IGFyci5wb3AoKVxuICB2YXIgdGFncyA9IHsgZmlsZTogZmlsZSwgc3BlY2lmaWNpdHk6IDAgfVxuXG4gIGlmIChleHRlbnNpb24gIT09ICdub2RlJykgcmV0dXJuXG5cbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBhcnIubGVuZ3RoOyBpKyspIHtcbiAgICB2YXIgdGFnID0gYXJyW2ldXG5cbiAgICBpZiAodGFnID09PSAnbm9kZScgfHwgdGFnID09PSAnZWxlY3Ryb24nIHx8IHRhZyA9PT0gJ25vZGUtd2Via2l0Jykge1xuICAgICAgdGFncy5ydW50aW1lID0gdGFnXG4gICAgfSBlbHNlIGlmICh0YWcgPT09ICduYXBpJykge1xuICAgICAgdGFncy5uYXBpID0gdHJ1ZVxuICAgIH0gZWxzZSBpZiAodGFnLnNsaWNlKDAsIDMpID09PSAnYWJpJykge1xuICAgICAgdGFncy5hYmkgPSB0YWcuc2xpY2UoMylcbiAgICB9IGVsc2UgaWYgKHRhZy5zbGljZSgwLCAyKSA9PT0gJ3V2Jykge1xuICAgICAgdGFncy51diA9IHRhZy5zbGljZSgyKVxuICAgIH0gZWxzZSBpZiAodGFnLnNsaWNlKDAsIDQpID09PSAnYXJtdicpIHtcbiAgICAgIHRhZ3MuYXJtdiA9IHRhZy5zbGljZSg0KVxuICAgIH0gZWxzZSBpZiAodGFnID09PSAnZ2xpYmMnIHx8IHRhZyA9PT0gJ211c2wnKSB7XG4gICAgICB0YWdzLmxpYmMgPSB0YWdcbiAgICB9IGVsc2Uge1xuICAgICAgY29udGludWVcbiAgICB9XG5cbiAgICB0YWdzLnNwZWNpZmljaXR5KytcbiAgfVxuXG4gIHJldHVybiB0YWdzXG59XG5cbmZ1bmN0aW9uIG1hdGNoVGFncyAocnVudGltZSwgYWJpKSB7XG4gIHJldHVybiBmdW5jdGlvbiAodGFncykge1xuICAgIGlmICh0YWdzID09IG51bGwpIHJldHVybiBmYWxzZVxuICAgIGlmICh0YWdzLnJ1bnRpbWUgIT09IHJ1bnRpbWUgJiYgIXJ1bnRpbWVBZ25vc3RpYyh0YWdzKSkgcmV0dXJuIGZhbHNlXG4gICAgaWYgKHRhZ3MuYWJpICE9PSBhYmkgJiYgIXRhZ3MubmFwaSkgcmV0dXJuIGZhbHNlXG4gICAgaWYgKHRhZ3MudXYgJiYgdGFncy51diAhPT0gdXYpIHJldHVybiBmYWxzZVxuICAgIGlmICh0YWdzLmFybXYgJiYgdGFncy5hcm12ICE9PSBhcm12KSByZXR1cm4gZmFsc2VcbiAgICBpZiAodGFncy5saWJjICYmIHRhZ3MubGliYyAhPT0gbGliYykgcmV0dXJuIGZhbHNlXG5cbiAgICByZXR1cm4gdHJ1ZVxuICB9XG59XG5cbmZ1bmN0aW9uIHJ1bnRpbWVBZ25vc3RpYyAodGFncykge1xuICByZXR1cm4gdGFncy5ydW50aW1lID09PSAnbm9kZScgJiYgdGFncy5uYXBpXG59XG5cbmZ1bmN0aW9uIGNvbXBhcmVUYWdzIChydW50aW1lKSB7XG4gIC8vIFByZWNlZGVuY2U6IG5vbi1hZ25vc3RpYyBydW50aW1lLCBhYmkgb3ZlciBuYXBpLCB0aGVuIGJ5IHNwZWNpZmljaXR5LlxuICByZXR1cm4gZnVuY3Rpb24gKGEsIGIpIHtcbiAgICBpZiAoYS5ydW50aW1lICE9PSBiLnJ1bnRpbWUpIHtcbiAgICAgIHJldHVybiBhLnJ1bnRpbWUgPT09IHJ1bnRpbWUgPyAtMSA6IDFcbiAgICB9IGVsc2UgaWYgKGEuYWJpICE9PSBiLmFiaSkge1xuICAgICAgcmV0dXJuIGEuYWJpID8gLTEgOiAxXG4gICAgfSBlbHNlIGlmIChhLnNwZWNpZmljaXR5ICE9PSBiLnNwZWNpZmljaXR5KSB7XG4gICAgICByZXR1cm4gYS5zcGVjaWZpY2l0eSA+IGIuc3BlY2lmaWNpdHkgPyAtMSA6IDFcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIDBcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gaXNOd2pzICgpIHtcbiAgcmV0dXJuICEhKHByb2Nlc3MudmVyc2lvbnMgJiYgcHJvY2Vzcy52ZXJzaW9ucy5udylcbn1cblxuZnVuY3Rpb24gaXNFbGVjdHJvbiAoKSB7XG4gIGlmIChwcm9jZXNzLnZlcnNpb25zICYmIHByb2Nlc3MudmVyc2lvbnMuZWxlY3Ryb24pIHJldHVybiB0cnVlXG4gIGlmIChwcm9jZXNzLmVudi5FTEVDVFJPTl9SVU5fQVNfTk9ERSkgcmV0dXJuIHRydWVcbiAgcmV0dXJuIHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5wcm9jZXNzICYmIHdpbmRvdy5wcm9jZXNzLnR5cGUgPT09ICdyZW5kZXJlcidcbn1cblxuZnVuY3Rpb24gaXNBbHBpbmUgKHBsYXRmb3JtKSB7XG4gIHJldHVybiBwbGF0Zm9ybSA9PT0gJ2xpbnV4JyAmJiBmcy5leGlzdHNTeW5jKCcvZXRjL2FscGluZS1yZWxlYXNlJylcbn1cblxuLy8gRXhwb3NlZCBmb3IgdW5pdCB0ZXN0c1xuLy8gVE9ETzogbW92ZSB0byBsaWJcbmxvYWQucGFyc2VUYWdzID0gcGFyc2VUYWdzXG5sb2FkLm1hdGNoVGFncyA9IG1hdGNoVGFnc1xubG9hZC5jb21wYXJlVGFncyA9IGNvbXBhcmVUYWdzXG5sb2FkLnBhcnNlVHVwbGUgPSBwYXJzZVR1cGxlXG5sb2FkLm1hdGNoVHVwbGUgPSBtYXRjaFR1cGxlXG5sb2FkLmNvbXBhcmVUdXBsZXMgPSBjb21wYXJlVHVwbGVzXG4iLCAiaWYgKHR5cGVvZiBwcm9jZXNzLmFkZG9uID09PSAnZnVuY3Rpb24nKSB7IC8vIGlmIHRoZSBwbGF0Zm9ybSBzdXBwb3J0cyBuYXRpdmUgcmVzb2x2aW5nIHByZWZlciB0aGF0XG4gIG1vZHVsZS5leHBvcnRzID0gcHJvY2Vzcy5hZGRvbi5iaW5kKHByb2Nlc3MpXG59IGVsc2UgeyAvLyBlbHNlIHVzZSB0aGUgcnVudGltZSB2ZXJzaW9uIGhlcmVcbiAgbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuL25vZGUtZ3lwLWJ1aWxkLmpzJylcbn1cbiIsICIndXNlIHN0cmljdCc7XG5cbi8qKlxuICogTWFza3MgYSBidWZmZXIgdXNpbmcgdGhlIGdpdmVuIG1hc2suXG4gKlxuICogQHBhcmFtIHtCdWZmZXJ9IHNvdXJjZSBUaGUgYnVmZmVyIHRvIG1hc2tcbiAqIEBwYXJhbSB7QnVmZmVyfSBtYXNrIFRoZSBtYXNrIHRvIHVzZVxuICogQHBhcmFtIHtCdWZmZXJ9IG91dHB1dCBUaGUgYnVmZmVyIHdoZXJlIHRvIHN0b3JlIHRoZSByZXN1bHRcbiAqIEBwYXJhbSB7TnVtYmVyfSBvZmZzZXQgVGhlIG9mZnNldCBhdCB3aGljaCB0byBzdGFydCB3cml0aW5nXG4gKiBAcGFyYW0ge051bWJlcn0gbGVuZ3RoIFRoZSBudW1iZXIgb2YgYnl0ZXMgdG8gbWFzay5cbiAqIEBwdWJsaWNcbiAqL1xuY29uc3QgbWFzayA9IChzb3VyY2UsIG1hc2ssIG91dHB1dCwgb2Zmc2V0LCBsZW5ndGgpID0+IHtcbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykge1xuICAgIG91dHB1dFtvZmZzZXQgKyBpXSA9IHNvdXJjZVtpXSBeIG1hc2tbaSAmIDNdO1xuICB9XG59O1xuXG4vKipcbiAqIFVubWFza3MgYSBidWZmZXIgdXNpbmcgdGhlIGdpdmVuIG1hc2suXG4gKlxuICogQHBhcmFtIHtCdWZmZXJ9IGJ1ZmZlciBUaGUgYnVmZmVyIHRvIHVubWFza1xuICogQHBhcmFtIHtCdWZmZXJ9IG1hc2sgVGhlIG1hc2sgdG8gdXNlXG4gKiBAcHVibGljXG4gKi9cbmNvbnN0IHVubWFzayA9IChidWZmZXIsIG1hc2spID0+IHtcbiAgLy8gUmVxdWlyZWQgdW50aWwgaHR0cHM6Ly9naXRodWIuY29tL25vZGVqcy9ub2RlL2lzc3Vlcy85MDA2IGlzIHJlc29sdmVkLlxuICBjb25zdCBsZW5ndGggPSBidWZmZXIubGVuZ3RoO1xuICBmb3IgKHZhciBpID0gMDsgaSA8IGxlbmd0aDsgaSsrKSB7XG4gICAgYnVmZmVyW2ldIF49IG1hc2tbaSAmIDNdO1xuICB9XG59O1xuXG5tb2R1bGUuZXhwb3J0cyA9IHsgbWFzaywgdW5tYXNrIH07XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG50cnkge1xuICBtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJ25vZGUtZ3lwLWJ1aWxkJykoX19kaXJuYW1lKTtcbn0gY2F0Y2ggKGUpIHtcbiAgbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuL2ZhbGxiYWNrJyk7XG59XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG5jb25zdCB7IEVNUFRZX0JVRkZFUiB9ID0gcmVxdWlyZSgnLi9jb25zdGFudHMnKTtcblxuY29uc3QgRmFzdEJ1ZmZlciA9IEJ1ZmZlcltTeW1ib2wuc3BlY2llc107XG5cbi8qKlxuICogTWVyZ2VzIGFuIGFycmF5IG9mIGJ1ZmZlcnMgaW50byBhIG5ldyBidWZmZXIuXG4gKlxuICogQHBhcmFtIHtCdWZmZXJbXX0gbGlzdCBUaGUgYXJyYXkgb2YgYnVmZmVycyB0byBjb25jYXRcbiAqIEBwYXJhbSB7TnVtYmVyfSB0b3RhbExlbmd0aCBUaGUgdG90YWwgbGVuZ3RoIG9mIGJ1ZmZlcnMgaW4gdGhlIGxpc3RcbiAqIEByZXR1cm4ge0J1ZmZlcn0gVGhlIHJlc3VsdGluZyBidWZmZXJcbiAqIEBwdWJsaWNcbiAqL1xuZnVuY3Rpb24gY29uY2F0KGxpc3QsIHRvdGFsTGVuZ3RoKSB7XG4gIGlmIChsaXN0Lmxlbmd0aCA9PT0gMCkgcmV0dXJuIEVNUFRZX0JVRkZFUjtcbiAgaWYgKGxpc3QubGVuZ3RoID09PSAxKSByZXR1cm4gbGlzdFswXTtcblxuICBjb25zdCB0YXJnZXQgPSBCdWZmZXIuYWxsb2NVbnNhZmUodG90YWxMZW5ndGgpO1xuICBsZXQgb2Zmc2V0ID0gMDtcblxuICBmb3IgKGxldCBpID0gMDsgaSA8IGxpc3QubGVuZ3RoOyBpKyspIHtcbiAgICBjb25zdCBidWYgPSBsaXN0W2ldO1xuICAgIHRhcmdldC5zZXQoYnVmLCBvZmZzZXQpO1xuICAgIG9mZnNldCArPSBidWYubGVuZ3RoO1xuICB9XG5cbiAgaWYgKG9mZnNldCA8IHRvdGFsTGVuZ3RoKSB7XG4gICAgcmV0dXJuIG5ldyBGYXN0QnVmZmVyKHRhcmdldC5idWZmZXIsIHRhcmdldC5ieXRlT2Zmc2V0LCBvZmZzZXQpO1xuICB9XG5cbiAgcmV0dXJuIHRhcmdldDtcbn1cblxuLyoqXG4gKiBNYXNrcyBhIGJ1ZmZlciB1c2luZyB0aGUgZ2l2ZW4gbWFzay5cbiAqXG4gKiBAcGFyYW0ge0J1ZmZlcn0gc291cmNlIFRoZSBidWZmZXIgdG8gbWFza1xuICogQHBhcmFtIHtCdWZmZXJ9IG1hc2sgVGhlIG1hc2sgdG8gdXNlXG4gKiBAcGFyYW0ge0J1ZmZlcn0gb3V0cHV0IFRoZSBidWZmZXIgd2hlcmUgdG8gc3RvcmUgdGhlIHJlc3VsdFxuICogQHBhcmFtIHtOdW1iZXJ9IG9mZnNldCBUaGUgb2Zmc2V0IGF0IHdoaWNoIHRvIHN0YXJ0IHdyaXRpbmdcbiAqIEBwYXJhbSB7TnVtYmVyfSBsZW5ndGggVGhlIG51bWJlciBvZiBieXRlcyB0byBtYXNrLlxuICogQHB1YmxpY1xuICovXG5mdW5jdGlvbiBfbWFzayhzb3VyY2UsIG1hc2ssIG91dHB1dCwgb2Zmc2V0LCBsZW5ndGgpIHtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykge1xuICAgIG91dHB1dFtvZmZzZXQgKyBpXSA9IHNvdXJjZVtpXSBeIG1hc2tbaSAmIDNdO1xuICB9XG59XG5cbi8qKlxuICogVW5tYXNrcyBhIGJ1ZmZlciB1c2luZyB0aGUgZ2l2ZW4gbWFzay5cbiAqXG4gKiBAcGFyYW0ge0J1ZmZlcn0gYnVmZmVyIFRoZSBidWZmZXIgdG8gdW5tYXNrXG4gKiBAcGFyYW0ge0J1ZmZlcn0gbWFzayBUaGUgbWFzayB0byB1c2VcbiAqIEBwdWJsaWNcbiAqL1xuZnVuY3Rpb24gX3VubWFzayhidWZmZXIsIG1hc2spIHtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBidWZmZXIubGVuZ3RoOyBpKyspIHtcbiAgICBidWZmZXJbaV0gXj0gbWFza1tpICYgM107XG4gIH1cbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhIGJ1ZmZlciB0byBhbiBgQXJyYXlCdWZmZXJgLlxuICpcbiAqIEBwYXJhbSB7QnVmZmVyfSBidWYgVGhlIGJ1ZmZlciB0byBjb252ZXJ0XG4gKiBAcmV0dXJuIHtBcnJheUJ1ZmZlcn0gQ29udmVydGVkIGJ1ZmZlclxuICogQHB1YmxpY1xuICovXG5mdW5jdGlvbiB0b0FycmF5QnVmZmVyKGJ1Zikge1xuICBpZiAoYnVmLmxlbmd0aCA9PT0gYnVmLmJ1ZmZlci5ieXRlTGVuZ3RoKSB7XG4gICAgcmV0dXJuIGJ1Zi5idWZmZXI7XG4gIH1cblxuICByZXR1cm4gYnVmLmJ1ZmZlci5zbGljZShidWYuYnl0ZU9mZnNldCwgYnVmLmJ5dGVPZmZzZXQgKyBidWYubGVuZ3RoKTtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBgZGF0YWAgdG8gYSBgQnVmZmVyYC5cbiAqXG4gKiBAcGFyYW0geyp9IGRhdGEgVGhlIGRhdGEgdG8gY29udmVydFxuICogQHJldHVybiB7QnVmZmVyfSBUaGUgYnVmZmVyXG4gKiBAdGhyb3dzIHtUeXBlRXJyb3J9XG4gKiBAcHVibGljXG4gKi9cbmZ1bmN0aW9uIHRvQnVmZmVyKGRhdGEpIHtcbiAgdG9CdWZmZXIucmVhZE9ubHkgPSB0cnVlO1xuXG4gIGlmIChCdWZmZXIuaXNCdWZmZXIoZGF0YSkpIHJldHVybiBkYXRhO1xuXG4gIGxldCBidWY7XG5cbiAgaWYgKGRhdGEgaW5zdGFuY2VvZiBBcnJheUJ1ZmZlcikge1xuICAgIGJ1ZiA9IG5ldyBGYXN0QnVmZmVyKGRhdGEpO1xuICB9IGVsc2UgaWYgKEFycmF5QnVmZmVyLmlzVmlldyhkYXRhKSkge1xuICAgIGJ1ZiA9IG5ldyBGYXN0QnVmZmVyKGRhdGEuYnVmZmVyLCBkYXRhLmJ5dGVPZmZzZXQsIGRhdGEuYnl0ZUxlbmd0aCk7XG4gIH0gZWxzZSB7XG4gICAgYnVmID0gQnVmZmVyLmZyb20oZGF0YSk7XG4gICAgdG9CdWZmZXIucmVhZE9ubHkgPSBmYWxzZTtcbiAgfVxuXG4gIHJldHVybiBidWY7XG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBjb25jYXQsXG4gIG1hc2s6IF9tYXNrLFxuICB0b0FycmF5QnVmZmVyLFxuICB0b0J1ZmZlcixcbiAgdW5tYXNrOiBfdW5tYXNrXG59O1xuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAgKi9cbmlmICghcHJvY2Vzcy5lbnYuV1NfTk9fQlVGRkVSX1VUSUwpIHtcbiAgdHJ5IHtcbiAgICBjb25zdCBidWZmZXJVdGlsID0gcmVxdWlyZSgnYnVmZmVydXRpbCcpO1xuXG4gICAgbW9kdWxlLmV4cG9ydHMubWFzayA9IGZ1bmN0aW9uIChzb3VyY2UsIG1hc2ssIG91dHB1dCwgb2Zmc2V0LCBsZW5ndGgpIHtcbiAgICAgIGlmIChsZW5ndGggPCA0OCkgX21hc2soc291cmNlLCBtYXNrLCBvdXRwdXQsIG9mZnNldCwgbGVuZ3RoKTtcbiAgICAgIGVsc2UgYnVmZmVyVXRpbC5tYXNrKHNvdXJjZSwgbWFzaywgb3V0cHV0LCBvZmZzZXQsIGxlbmd0aCk7XG4gICAgfTtcblxuICAgIG1vZHVsZS5leHBvcnRzLnVubWFzayA9IGZ1bmN0aW9uIChidWZmZXIsIG1hc2spIHtcbiAgICAgIGlmIChidWZmZXIubGVuZ3RoIDwgMzIpIF91bm1hc2soYnVmZmVyLCBtYXNrKTtcbiAgICAgIGVsc2UgYnVmZmVyVXRpbC51bm1hc2soYnVmZmVyLCBtYXNrKTtcbiAgICB9O1xuICB9IGNhdGNoIChlKSB7XG4gICAgLy8gQ29udGludWUgcmVnYXJkbGVzcyBvZiB0aGUgZXJyb3IuXG4gIH1cbn1cbiIsICIndXNlIHN0cmljdCc7XG5cbmNvbnN0IGtEb25lID0gU3ltYm9sKCdrRG9uZScpO1xuY29uc3Qga1J1biA9IFN5bWJvbCgna1J1bicpO1xuXG4vKipcbiAqIEEgdmVyeSBzaW1wbGUgam9iIHF1ZXVlIHdpdGggYWRqdXN0YWJsZSBjb25jdXJyZW5jeS4gQWRhcHRlZCBmcm9tXG4gKiBodHRwczovL2dpdGh1Yi5jb20vU1RSTUwvYXN5bmMtbGltaXRlclxuICovXG5jbGFzcyBMaW1pdGVyIHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgYExpbWl0ZXJgLlxuICAgKlxuICAgKiBAcGFyYW0ge051bWJlcn0gW2NvbmN1cnJlbmN5PUluZmluaXR5XSBUaGUgbWF4aW11bSBudW1iZXIgb2Ygam9icyBhbGxvd2VkXG4gICAqICAgICB0byBydW4gY29uY3VycmVudGx5XG4gICAqL1xuICBjb25zdHJ1Y3Rvcihjb25jdXJyZW5jeSkge1xuICAgIHRoaXNba0RvbmVdID0gKCkgPT4ge1xuICAgICAgdGhpcy5wZW5kaW5nLS07XG4gICAgICB0aGlzW2tSdW5dKCk7XG4gICAgfTtcbiAgICB0aGlzLmNvbmN1cnJlbmN5ID0gY29uY3VycmVuY3kgfHwgSW5maW5pdHk7XG4gICAgdGhpcy5qb2JzID0gW107XG4gICAgdGhpcy5wZW5kaW5nID0gMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgam9iIHRvIHRoZSBxdWV1ZS5cbiAgICpcbiAgICogQHBhcmFtIHtGdW5jdGlvbn0gam9iIFRoZSBqb2IgdG8gcnVuXG4gICAqIEBwdWJsaWNcbiAgICovXG4gIGFkZChqb2IpIHtcbiAgICB0aGlzLmpvYnMucHVzaChqb2IpO1xuICAgIHRoaXNba1J1bl0oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW1vdmVzIGEgam9iIGZyb20gdGhlIHF1ZXVlIGFuZCBydW5zIGl0IGlmIHBvc3NpYmxlLlxuICAgKlxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgW2tSdW5dKCkge1xuICAgIGlmICh0aGlzLnBlbmRpbmcgPT09IHRoaXMuY29uY3VycmVuY3kpIHJldHVybjtcblxuICAgIGlmICh0aGlzLmpvYnMubGVuZ3RoKSB7XG4gICAgICBjb25zdCBqb2IgPSB0aGlzLmpvYnMuc2hpZnQoKTtcblxuICAgICAgdGhpcy5wZW5kaW5nKys7XG4gICAgICBqb2IodGhpc1trRG9uZV0pO1xuICAgIH1cbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IExpbWl0ZXI7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG5jb25zdCB6bGliID0gcmVxdWlyZSgnemxpYicpO1xuXG5jb25zdCBidWZmZXJVdGlsID0gcmVxdWlyZSgnLi9idWZmZXItdXRpbCcpO1xuY29uc3QgTGltaXRlciA9IHJlcXVpcmUoJy4vbGltaXRlcicpO1xuY29uc3QgeyBrU3RhdHVzQ29kZSB9ID0gcmVxdWlyZSgnLi9jb25zdGFudHMnKTtcblxuY29uc3QgRmFzdEJ1ZmZlciA9IEJ1ZmZlcltTeW1ib2wuc3BlY2llc107XG5jb25zdCBUUkFJTEVSID0gQnVmZmVyLmZyb20oWzB4MDAsIDB4MDAsIDB4ZmYsIDB4ZmZdKTtcbmNvbnN0IGtQZXJNZXNzYWdlRGVmbGF0ZSA9IFN5bWJvbCgncGVybWVzc2FnZS1kZWZsYXRlJyk7XG5jb25zdCBrVG90YWxMZW5ndGggPSBTeW1ib2woJ3RvdGFsLWxlbmd0aCcpO1xuY29uc3Qga0NhbGxiYWNrID0gU3ltYm9sKCdjYWxsYmFjaycpO1xuY29uc3Qga0J1ZmZlcnMgPSBTeW1ib2woJ2J1ZmZlcnMnKTtcbmNvbnN0IGtFcnJvciA9IFN5bWJvbCgnZXJyb3InKTtcblxuLy9cbi8vIFdlIGxpbWl0IHpsaWIgY29uY3VycmVuY3ksIHdoaWNoIHByZXZlbnRzIHNldmVyZSBtZW1vcnkgZnJhZ21lbnRhdGlvblxuLy8gYXMgZG9jdW1lbnRlZCBpbiBodHRwczovL2dpdGh1Yi5jb20vbm9kZWpzL25vZGUvaXNzdWVzLzg4NzEjaXNzdWVjb21tZW50LTI1MDkxNTkxM1xuLy8gYW5kIGh0dHBzOi8vZ2l0aHViLmNvbS93ZWJzb2NrZXRzL3dzL2lzc3Vlcy8xMjAyXG4vL1xuLy8gSW50ZW50aW9uYWxseSBnbG9iYWw7IGl0J3MgdGhlIGdsb2JhbCB0aHJlYWQgcG9vbCB0aGF0J3MgYW4gaXNzdWUuXG4vL1xubGV0IHpsaWJMaW1pdGVyO1xuXG4vKipcbiAqIHBlcm1lc3NhZ2UtZGVmbGF0ZSBpbXBsZW1lbnRhdGlvbi5cbiAqL1xuY2xhc3MgUGVyTWVzc2FnZURlZmxhdGUge1xuICAvKipcbiAgICogQ3JlYXRlcyBhIFBlck1lc3NhZ2VEZWZsYXRlIGluc3RhbmNlLlxuICAgKlxuICAgKiBAcGFyYW0ge09iamVjdH0gW29wdGlvbnNdIENvbmZpZ3VyYXRpb24gb3B0aW9uc1xuICAgKiBAcGFyYW0geyhCb29sZWFufE51bWJlcil9IFtvcHRpb25zLmNsaWVudE1heFdpbmRvd0JpdHNdIEFkdmVydGlzZSBzdXBwb3J0XG4gICAqICAgICBmb3IsIG9yIHJlcXVlc3QsIGEgY3VzdG9tIGNsaWVudCB3aW5kb3cgc2l6ZVxuICAgKiBAcGFyYW0ge0Jvb2xlYW59IFtvcHRpb25zLmNsaWVudE5vQ29udGV4dFRha2VvdmVyPWZhbHNlXSBBZHZlcnRpc2UvXG4gICAqICAgICBhY2tub3dsZWRnZSBkaXNhYmxpbmcgb2YgY2xpZW50IGNvbnRleHQgdGFrZW92ZXJcbiAgICogQHBhcmFtIHtOdW1iZXJ9IFtvcHRpb25zLmNvbmN1cnJlbmN5TGltaXQ9MTBdIFRoZSBudW1iZXIgb2YgY29uY3VycmVudFxuICAgKiAgICAgY2FsbHMgdG8gemxpYlxuICAgKiBAcGFyYW0geyhCb29sZWFufE51bWJlcil9IFtvcHRpb25zLnNlcnZlck1heFdpbmRvd0JpdHNdIFJlcXVlc3QvY29uZmlybSB0aGVcbiAgICogICAgIHVzZSBvZiBhIGN1c3RvbSBzZXJ2ZXIgd2luZG93IHNpemVcbiAgICogQHBhcmFtIHtCb29sZWFufSBbb3B0aW9ucy5zZXJ2ZXJOb0NvbnRleHRUYWtlb3Zlcj1mYWxzZV0gUmVxdWVzdC9hY2NlcHRcbiAgICogICAgIGRpc2FibGluZyBvZiBzZXJ2ZXIgY29udGV4dCB0YWtlb3ZlclxuICAgKiBAcGFyYW0ge051bWJlcn0gW29wdGlvbnMudGhyZXNob2xkPTEwMjRdIFNpemUgKGluIGJ5dGVzKSBiZWxvdyB3aGljaFxuICAgKiAgICAgbWVzc2FnZXMgc2hvdWxkIG5vdCBiZSBjb21wcmVzc2VkIGlmIGNvbnRleHQgdGFrZW92ZXIgaXMgZGlzYWJsZWRcbiAgICogQHBhcmFtIHtPYmplY3R9IFtvcHRpb25zLnpsaWJEZWZsYXRlT3B0aW9uc10gT3B0aW9ucyB0byBwYXNzIHRvIHpsaWIgb25cbiAgICogICAgIGRlZmxhdGVcbiAgICogQHBhcmFtIHtPYmplY3R9IFtvcHRpb25zLnpsaWJJbmZsYXRlT3B0aW9uc10gT3B0aW9ucyB0byBwYXNzIHRvIHpsaWIgb25cbiAgICogICAgIGluZmxhdGVcbiAgICogQHBhcmFtIHtCb29sZWFufSBbaXNTZXJ2ZXI9ZmFsc2VdIENyZWF0ZSB0aGUgaW5zdGFuY2UgaW4gZWl0aGVyIHNlcnZlciBvclxuICAgKiAgICAgY2xpZW50IG1vZGVcbiAgICogQHBhcmFtIHtOdW1iZXJ9IFttYXhQYXlsb2FkPTBdIFRoZSBtYXhpbXVtIGFsbG93ZWQgbWVzc2FnZSBsZW5ndGhcbiAgICovXG4gIGNvbnN0cnVjdG9yKG9wdGlvbnMsIGlzU2VydmVyLCBtYXhQYXlsb2FkKSB7XG4gICAgdGhpcy5fbWF4UGF5bG9hZCA9IG1heFBheWxvYWQgfCAwO1xuICAgIHRoaXMuX29wdGlvbnMgPSBvcHRpb25zIHx8IHt9O1xuICAgIHRoaXMuX3RocmVzaG9sZCA9XG4gICAgICB0aGlzLl9vcHRpb25zLnRocmVzaG9sZCAhPT0gdW5kZWZpbmVkID8gdGhpcy5fb3B0aW9ucy50aHJlc2hvbGQgOiAxMDI0O1xuICAgIHRoaXMuX2lzU2VydmVyID0gISFpc1NlcnZlcjtcbiAgICB0aGlzLl9kZWZsYXRlID0gbnVsbDtcbiAgICB0aGlzLl9pbmZsYXRlID0gbnVsbDtcblxuICAgIHRoaXMucGFyYW1zID0gbnVsbDtcblxuICAgIGlmICghemxpYkxpbWl0ZXIpIHtcbiAgICAgIGNvbnN0IGNvbmN1cnJlbmN5ID1cbiAgICAgICAgdGhpcy5fb3B0aW9ucy5jb25jdXJyZW5jeUxpbWl0ICE9PSB1bmRlZmluZWRcbiAgICAgICAgICA/IHRoaXMuX29wdGlvbnMuY29uY3VycmVuY3lMaW1pdFxuICAgICAgICAgIDogMTA7XG4gICAgICB6bGliTGltaXRlciA9IG5ldyBMaW1pdGVyKGNvbmN1cnJlbmN5KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQHR5cGUge1N0cmluZ31cbiAgICovXG4gIHN0YXRpYyBnZXQgZXh0ZW5zaW9uTmFtZSgpIHtcbiAgICByZXR1cm4gJ3Blcm1lc3NhZ2UtZGVmbGF0ZSc7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGFuIGV4dGVuc2lvbiBuZWdvdGlhdGlvbiBvZmZlci5cbiAgICpcbiAgICogQHJldHVybiB7T2JqZWN0fSBFeHRlbnNpb24gcGFyYW1ldGVyc1xuICAgKiBAcHVibGljXG4gICAqL1xuICBvZmZlcigpIHtcbiAgICBjb25zdCBwYXJhbXMgPSB7fTtcblxuICAgIGlmICh0aGlzLl9vcHRpb25zLnNlcnZlck5vQ29udGV4dFRha2VvdmVyKSB7XG4gICAgICBwYXJhbXMuc2VydmVyX25vX2NvbnRleHRfdGFrZW92ZXIgPSB0cnVlO1xuICAgIH1cbiAgICBpZiAodGhpcy5fb3B0aW9ucy5jbGllbnROb0NvbnRleHRUYWtlb3Zlcikge1xuICAgICAgcGFyYW1zLmNsaWVudF9ub19jb250ZXh0X3Rha2VvdmVyID0gdHJ1ZTtcbiAgICB9XG4gICAgaWYgKHRoaXMuX29wdGlvbnMuc2VydmVyTWF4V2luZG93Qml0cykge1xuICAgICAgcGFyYW1zLnNlcnZlcl9tYXhfd2luZG93X2JpdHMgPSB0aGlzLl9vcHRpb25zLnNlcnZlck1heFdpbmRvd0JpdHM7XG4gICAgfVxuICAgIGlmICh0aGlzLl9vcHRpb25zLmNsaWVudE1heFdpbmRvd0JpdHMpIHtcbiAgICAgIHBhcmFtcy5jbGllbnRfbWF4X3dpbmRvd19iaXRzID0gdGhpcy5fb3B0aW9ucy5jbGllbnRNYXhXaW5kb3dCaXRzO1xuICAgIH0gZWxzZSBpZiAodGhpcy5fb3B0aW9ucy5jbGllbnRNYXhXaW5kb3dCaXRzID09IG51bGwpIHtcbiAgICAgIHBhcmFtcy5jbGllbnRfbWF4X3dpbmRvd19iaXRzID0gdHJ1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gcGFyYW1zO1xuICB9XG5cbiAgLyoqXG4gICAqIEFjY2VwdCBhbiBleHRlbnNpb24gbmVnb3RpYXRpb24gb2ZmZXIvcmVzcG9uc2UuXG4gICAqXG4gICAqIEBwYXJhbSB7QXJyYXl9IGNvbmZpZ3VyYXRpb25zIFRoZSBleHRlbnNpb24gbmVnb3RpYXRpb24gb2ZmZXJzL3JlcG9uc2VcbiAgICogQHJldHVybiB7T2JqZWN0fSBBY2NlcHRlZCBjb25maWd1cmF0aW9uXG4gICAqIEBwdWJsaWNcbiAgICovXG4gIGFjY2VwdChjb25maWd1cmF0aW9ucykge1xuICAgIGNvbmZpZ3VyYXRpb25zID0gdGhpcy5ub3JtYWxpemVQYXJhbXMoY29uZmlndXJhdGlvbnMpO1xuXG4gICAgdGhpcy5wYXJhbXMgPSB0aGlzLl9pc1NlcnZlclxuICAgICAgPyB0aGlzLmFjY2VwdEFzU2VydmVyKGNvbmZpZ3VyYXRpb25zKVxuICAgICAgOiB0aGlzLmFjY2VwdEFzQ2xpZW50KGNvbmZpZ3VyYXRpb25zKTtcblxuICAgIHJldHVybiB0aGlzLnBhcmFtcztcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWxlYXNlcyBhbGwgcmVzb3VyY2VzIHVzZWQgYnkgdGhlIGV4dGVuc2lvbi5cbiAgICpcbiAgICogQHB1YmxpY1xuICAgKi9cbiAgY2xlYW51cCgpIHtcbiAgICBpZiAodGhpcy5faW5mbGF0ZSkge1xuICAgICAgdGhpcy5faW5mbGF0ZS5jbG9zZSgpO1xuICAgICAgdGhpcy5faW5mbGF0ZSA9IG51bGw7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX2RlZmxhdGUpIHtcbiAgICAgIGNvbnN0IGNhbGxiYWNrID0gdGhpcy5fZGVmbGF0ZVtrQ2FsbGJhY2tdO1xuXG4gICAgICB0aGlzLl9kZWZsYXRlLmNsb3NlKCk7XG4gICAgICB0aGlzLl9kZWZsYXRlID0gbnVsbDtcblxuICAgICAgaWYgKGNhbGxiYWNrKSB7XG4gICAgICAgIGNhbGxiYWNrKFxuICAgICAgICAgIG5ldyBFcnJvcihcbiAgICAgICAgICAgICdUaGUgZGVmbGF0ZSBzdHJlYW0gd2FzIGNsb3NlZCB3aGlsZSBkYXRhIHdhcyBiZWluZyBwcm9jZXNzZWQnXG4gICAgICAgICAgKVxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiAgQWNjZXB0IGFuIGV4dGVuc2lvbiBuZWdvdGlhdGlvbiBvZmZlci5cbiAgICpcbiAgICogQHBhcmFtIHtBcnJheX0gb2ZmZXJzIFRoZSBleHRlbnNpb24gbmVnb3RpYXRpb24gb2ZmZXJzXG4gICAqIEByZXR1cm4ge09iamVjdH0gQWNjZXB0ZWQgY29uZmlndXJhdGlvblxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgYWNjZXB0QXNTZXJ2ZXIob2ZmZXJzKSB7XG4gICAgY29uc3Qgb3B0cyA9IHRoaXMuX29wdGlvbnM7XG4gICAgY29uc3QgYWNjZXB0ZWQgPSBvZmZlcnMuZmluZCgocGFyYW1zKSA9PiB7XG4gICAgICBpZiAoXG4gICAgICAgIChvcHRzLnNlcnZlck5vQ29udGV4dFRha2VvdmVyID09PSBmYWxzZSAmJlxuICAgICAgICAgIHBhcmFtcy5zZXJ2ZXJfbm9fY29udGV4dF90YWtlb3ZlcikgfHxcbiAgICAgICAgKHBhcmFtcy5zZXJ2ZXJfbWF4X3dpbmRvd19iaXRzICYmXG4gICAgICAgICAgKG9wdHMuc2VydmVyTWF4V2luZG93Qml0cyA9PT0gZmFsc2UgfHxcbiAgICAgICAgICAgICh0eXBlb2Ygb3B0cy5zZXJ2ZXJNYXhXaW5kb3dCaXRzID09PSAnbnVtYmVyJyAmJlxuICAgICAgICAgICAgICBvcHRzLnNlcnZlck1heFdpbmRvd0JpdHMgPiBwYXJhbXMuc2VydmVyX21heF93aW5kb3dfYml0cykpKSB8fFxuICAgICAgICAodHlwZW9mIG9wdHMuY2xpZW50TWF4V2luZG93Qml0cyA9PT0gJ251bWJlcicgJiZcbiAgICAgICAgICAhcGFyYW1zLmNsaWVudF9tYXhfd2luZG93X2JpdHMpXG4gICAgICApIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9KTtcblxuICAgIGlmICghYWNjZXB0ZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTm9uZSBvZiB0aGUgZXh0ZW5zaW9uIG9mZmVycyBjYW4gYmUgYWNjZXB0ZWQnKTtcbiAgICB9XG5cbiAgICBpZiAob3B0cy5zZXJ2ZXJOb0NvbnRleHRUYWtlb3Zlcikge1xuICAgICAgYWNjZXB0ZWQuc2VydmVyX25vX2NvbnRleHRfdGFrZW92ZXIgPSB0cnVlO1xuICAgIH1cbiAgICBpZiAob3B0cy5jbGllbnROb0NvbnRleHRUYWtlb3Zlcikge1xuICAgICAgYWNjZXB0ZWQuY2xpZW50X25vX2NvbnRleHRfdGFrZW92ZXIgPSB0cnVlO1xuICAgIH1cbiAgICBpZiAodHlwZW9mIG9wdHMuc2VydmVyTWF4V2luZG93Qml0cyA9PT0gJ251bWJlcicpIHtcbiAgICAgIGFjY2VwdGVkLnNlcnZlcl9tYXhfd2luZG93X2JpdHMgPSBvcHRzLnNlcnZlck1heFdpbmRvd0JpdHM7XG4gICAgfVxuICAgIGlmICh0eXBlb2Ygb3B0cy5jbGllbnRNYXhXaW5kb3dCaXRzID09PSAnbnVtYmVyJykge1xuICAgICAgYWNjZXB0ZWQuY2xpZW50X21heF93aW5kb3dfYml0cyA9IG9wdHMuY2xpZW50TWF4V2luZG93Qml0cztcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgYWNjZXB0ZWQuY2xpZW50X21heF93aW5kb3dfYml0cyA9PT0gdHJ1ZSB8fFxuICAgICAgb3B0cy5jbGllbnRNYXhXaW5kb3dCaXRzID09PSBmYWxzZVxuICAgICkge1xuICAgICAgZGVsZXRlIGFjY2VwdGVkLmNsaWVudF9tYXhfd2luZG93X2JpdHM7XG4gICAgfVxuXG4gICAgcmV0dXJuIGFjY2VwdGVkO1xuICB9XG5cbiAgLyoqXG4gICAqIEFjY2VwdCB0aGUgZXh0ZW5zaW9uIG5lZ290aWF0aW9uIHJlc3BvbnNlLlxuICAgKlxuICAgKiBAcGFyYW0ge0FycmF5fSByZXNwb25zZSBUaGUgZXh0ZW5zaW9uIG5lZ290aWF0aW9uIHJlc3BvbnNlXG4gICAqIEByZXR1cm4ge09iamVjdH0gQWNjZXB0ZWQgY29uZmlndXJhdGlvblxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgYWNjZXB0QXNDbGllbnQocmVzcG9uc2UpIHtcbiAgICBjb25zdCBwYXJhbXMgPSByZXNwb25zZVswXTtcblxuICAgIGlmIChcbiAgICAgIHRoaXMuX29wdGlvbnMuY2xpZW50Tm9Db250ZXh0VGFrZW92ZXIgPT09IGZhbHNlICYmXG4gICAgICBwYXJhbXMuY2xpZW50X25vX2NvbnRleHRfdGFrZW92ZXJcbiAgICApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVW5leHBlY3RlZCBwYXJhbWV0ZXIgXCJjbGllbnRfbm9fY29udGV4dF90YWtlb3ZlclwiJyk7XG4gICAgfVxuXG4gICAgaWYgKCFwYXJhbXMuY2xpZW50X21heF93aW5kb3dfYml0cykge1xuICAgICAgaWYgKHR5cGVvZiB0aGlzLl9vcHRpb25zLmNsaWVudE1heFdpbmRvd0JpdHMgPT09ICdudW1iZXInKSB7XG4gICAgICAgIHBhcmFtcy5jbGllbnRfbWF4X3dpbmRvd19iaXRzID0gdGhpcy5fb3B0aW9ucy5jbGllbnRNYXhXaW5kb3dCaXRzO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoXG4gICAgICB0aGlzLl9vcHRpb25zLmNsaWVudE1heFdpbmRvd0JpdHMgPT09IGZhbHNlIHx8XG4gICAgICAodHlwZW9mIHRoaXMuX29wdGlvbnMuY2xpZW50TWF4V2luZG93Qml0cyA9PT0gJ251bWJlcicgJiZcbiAgICAgICAgcGFyYW1zLmNsaWVudF9tYXhfd2luZG93X2JpdHMgPiB0aGlzLl9vcHRpb25zLmNsaWVudE1heFdpbmRvd0JpdHMpXG4gICAgKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdVbmV4cGVjdGVkIG9yIGludmFsaWQgcGFyYW1ldGVyIFwiY2xpZW50X21heF93aW5kb3dfYml0c1wiJ1xuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcGFyYW1zO1xuICB9XG5cbiAgLyoqXG4gICAqIE5vcm1hbGl6ZSBwYXJhbWV0ZXJzLlxuICAgKlxuICAgKiBAcGFyYW0ge0FycmF5fSBjb25maWd1cmF0aW9ucyBUaGUgZXh0ZW5zaW9uIG5lZ290aWF0aW9uIG9mZmVycy9yZXBvbnNlXG4gICAqIEByZXR1cm4ge0FycmF5fSBUaGUgb2ZmZXJzL3Jlc3BvbnNlIHdpdGggbm9ybWFsaXplZCBwYXJhbWV0ZXJzXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBub3JtYWxpemVQYXJhbXMoY29uZmlndXJhdGlvbnMpIHtcbiAgICBjb25maWd1cmF0aW9ucy5mb3JFYWNoKChwYXJhbXMpID0+IHtcbiAgICAgIE9iamVjdC5rZXlzKHBhcmFtcykuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICAgIGxldCB2YWx1ZSA9IHBhcmFtc1trZXldO1xuXG4gICAgICAgIGlmICh2YWx1ZS5sZW5ndGggPiAxKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBQYXJhbWV0ZXIgXCIke2tleX1cIiBtdXN0IGhhdmUgb25seSBhIHNpbmdsZSB2YWx1ZWApO1xuICAgICAgICB9XG5cbiAgICAgICAgdmFsdWUgPSB2YWx1ZVswXTtcblxuICAgICAgICBpZiAoa2V5ID09PSAnY2xpZW50X21heF93aW5kb3dfYml0cycpIHtcbiAgICAgICAgICBpZiAodmFsdWUgIT09IHRydWUpIHtcbiAgICAgICAgICAgIGNvbnN0IG51bSA9ICt2YWx1ZTtcbiAgICAgICAgICAgIGlmICghTnVtYmVyLmlzSW50ZWdlcihudW0pIHx8IG51bSA8IDggfHwgbnVtID4gMTUpIHtcbiAgICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcbiAgICAgICAgICAgICAgICBgSW52YWxpZCB2YWx1ZSBmb3IgcGFyYW1ldGVyIFwiJHtrZXl9XCI6ICR7dmFsdWV9YFxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdmFsdWUgPSBudW07XG4gICAgICAgICAgfSBlbHNlIGlmICghdGhpcy5faXNTZXJ2ZXIpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXG4gICAgICAgICAgICAgIGBJbnZhbGlkIHZhbHVlIGZvciBwYXJhbWV0ZXIgXCIke2tleX1cIjogJHt2YWx1ZX1gXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmIChrZXkgPT09ICdzZXJ2ZXJfbWF4X3dpbmRvd19iaXRzJykge1xuICAgICAgICAgIGNvbnN0IG51bSA9ICt2YWx1ZTtcbiAgICAgICAgICBpZiAoIU51bWJlci5pc0ludGVnZXIobnVtKSB8fCBudW0gPCA4IHx8IG51bSA+IDE1KSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFxuICAgICAgICAgICAgICBgSW52YWxpZCB2YWx1ZSBmb3IgcGFyYW1ldGVyIFwiJHtrZXl9XCI6ICR7dmFsdWV9YFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdmFsdWUgPSBudW07XG4gICAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICAga2V5ID09PSAnY2xpZW50X25vX2NvbnRleHRfdGFrZW92ZXInIHx8XG4gICAgICAgICAga2V5ID09PSAnc2VydmVyX25vX2NvbnRleHRfdGFrZW92ZXInXG4gICAgICAgICkge1xuICAgICAgICAgIGlmICh2YWx1ZSAhPT0gdHJ1ZSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcbiAgICAgICAgICAgICAgYEludmFsaWQgdmFsdWUgZm9yIHBhcmFtZXRlciBcIiR7a2V5fVwiOiAke3ZhbHVlfWBcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBwYXJhbWV0ZXIgXCIke2tleX1cImApO1xuICAgICAgICB9XG5cbiAgICAgICAgcGFyYW1zW2tleV0gPSB2YWx1ZTtcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIGNvbmZpZ3VyYXRpb25zO1xuICB9XG5cbiAgLyoqXG4gICAqIERlY29tcHJlc3MgZGF0YS4gQ29uY3VycmVuY3kgbGltaXRlZC5cbiAgICpcbiAgICogQHBhcmFtIHtCdWZmZXJ9IGRhdGEgQ29tcHJlc3NlZCBkYXRhXG4gICAqIEBwYXJhbSB7Qm9vbGVhbn0gZmluIFNwZWNpZmllcyB3aGV0aGVyIG9yIG5vdCB0aGlzIGlzIHRoZSBsYXN0IGZyYWdtZW50XG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IGNhbGxiYWNrIENhbGxiYWNrXG4gICAqIEBwdWJsaWNcbiAgICovXG4gIGRlY29tcHJlc3MoZGF0YSwgZmluLCBjYWxsYmFjaykge1xuICAgIHpsaWJMaW1pdGVyLmFkZCgoZG9uZSkgPT4ge1xuICAgICAgdGhpcy5fZGVjb21wcmVzcyhkYXRhLCBmaW4sIChlcnIsIHJlc3VsdCkgPT4ge1xuICAgICAgICBkb25lKCk7XG4gICAgICAgIGNhbGxiYWNrKGVyciwgcmVzdWx0KTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbXByZXNzIGRhdGEuIENvbmN1cnJlbmN5IGxpbWl0ZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7KEJ1ZmZlcnxTdHJpbmcpfSBkYXRhIERhdGEgdG8gY29tcHJlc3NcbiAgICogQHBhcmFtIHtCb29sZWFufSBmaW4gU3BlY2lmaWVzIHdoZXRoZXIgb3Igbm90IHRoaXMgaXMgdGhlIGxhc3QgZnJhZ21lbnRcbiAgICogQHBhcmFtIHtGdW5jdGlvbn0gY2FsbGJhY2sgQ2FsbGJhY2tcbiAgICogQHB1YmxpY1xuICAgKi9cbiAgY29tcHJlc3MoZGF0YSwgZmluLCBjYWxsYmFjaykge1xuICAgIHpsaWJMaW1pdGVyLmFkZCgoZG9uZSkgPT4ge1xuICAgICAgdGhpcy5fY29tcHJlc3MoZGF0YSwgZmluLCAoZXJyLCByZXN1bHQpID0+IHtcbiAgICAgICAgZG9uZSgpO1xuICAgICAgICBjYWxsYmFjayhlcnIsIHJlc3VsdCk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWNvbXByZXNzIGRhdGEuXG4gICAqXG4gICAqIEBwYXJhbSB7QnVmZmVyfSBkYXRhIENvbXByZXNzZWQgZGF0YVxuICAgKiBAcGFyYW0ge0Jvb2xlYW59IGZpbiBTcGVjaWZpZXMgd2hldGhlciBvciBub3QgdGhpcyBpcyB0aGUgbGFzdCBmcmFnbWVudFxuICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBjYWxsYmFjayBDYWxsYmFja1xuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgX2RlY29tcHJlc3MoZGF0YSwgZmluLCBjYWxsYmFjaykge1xuICAgIGNvbnN0IGVuZHBvaW50ID0gdGhpcy5faXNTZXJ2ZXIgPyAnY2xpZW50JyA6ICdzZXJ2ZXInO1xuXG4gICAgaWYgKCF0aGlzLl9pbmZsYXRlKSB7XG4gICAgICBjb25zdCBrZXkgPSBgJHtlbmRwb2ludH1fbWF4X3dpbmRvd19iaXRzYDtcbiAgICAgIGNvbnN0IHdpbmRvd0JpdHMgPVxuICAgICAgICB0eXBlb2YgdGhpcy5wYXJhbXNba2V5XSAhPT0gJ251bWJlcidcbiAgICAgICAgICA/IHpsaWIuWl9ERUZBVUxUX1dJTkRPV0JJVFNcbiAgICAgICAgICA6IHRoaXMucGFyYW1zW2tleV07XG5cbiAgICAgIHRoaXMuX2luZmxhdGUgPSB6bGliLmNyZWF0ZUluZmxhdGVSYXcoe1xuICAgICAgICAuLi50aGlzLl9vcHRpb25zLnpsaWJJbmZsYXRlT3B0aW9ucyxcbiAgICAgICAgd2luZG93Qml0c1xuICAgICAgfSk7XG4gICAgICB0aGlzLl9pbmZsYXRlW2tQZXJNZXNzYWdlRGVmbGF0ZV0gPSB0aGlzO1xuICAgICAgdGhpcy5faW5mbGF0ZVtrVG90YWxMZW5ndGhdID0gMDtcbiAgICAgIHRoaXMuX2luZmxhdGVba0J1ZmZlcnNdID0gW107XG4gICAgICB0aGlzLl9pbmZsYXRlLm9uKCdlcnJvcicsIGluZmxhdGVPbkVycm9yKTtcbiAgICAgIHRoaXMuX2luZmxhdGUub24oJ2RhdGEnLCBpbmZsYXRlT25EYXRhKTtcbiAgICB9XG5cbiAgICB0aGlzLl9pbmZsYXRlW2tDYWxsYmFja10gPSBjYWxsYmFjaztcblxuICAgIHRoaXMuX2luZmxhdGUud3JpdGUoZGF0YSk7XG4gICAgaWYgKGZpbikgdGhpcy5faW5mbGF0ZS53cml0ZShUUkFJTEVSKTtcblxuICAgIHRoaXMuX2luZmxhdGUuZmx1c2goKCkgPT4ge1xuICAgICAgY29uc3QgZXJyID0gdGhpcy5faW5mbGF0ZVtrRXJyb3JdO1xuXG4gICAgICBpZiAoZXJyKSB7XG4gICAgICAgIHRoaXMuX2luZmxhdGUuY2xvc2UoKTtcbiAgICAgICAgdGhpcy5faW5mbGF0ZSA9IG51bGw7XG4gICAgICAgIGNhbGxiYWNrKGVycik7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgY29uc3QgZGF0YSA9IGJ1ZmZlclV0aWwuY29uY2F0KFxuICAgICAgICB0aGlzLl9pbmZsYXRlW2tCdWZmZXJzXSxcbiAgICAgICAgdGhpcy5faW5mbGF0ZVtrVG90YWxMZW5ndGhdXG4gICAgICApO1xuXG4gICAgICBpZiAodGhpcy5faW5mbGF0ZS5fcmVhZGFibGVTdGF0ZS5lbmRFbWl0dGVkKSB7XG4gICAgICAgIHRoaXMuX2luZmxhdGUuY2xvc2UoKTtcbiAgICAgICAgdGhpcy5faW5mbGF0ZSA9IG51bGw7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLl9pbmZsYXRlW2tUb3RhbExlbmd0aF0gPSAwO1xuICAgICAgICB0aGlzLl9pbmZsYXRlW2tCdWZmZXJzXSA9IFtdO1xuXG4gICAgICAgIGlmIChmaW4gJiYgdGhpcy5wYXJhbXNbYCR7ZW5kcG9pbnR9X25vX2NvbnRleHRfdGFrZW92ZXJgXSkge1xuICAgICAgICAgIHRoaXMuX2luZmxhdGUucmVzZXQoKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBjYWxsYmFjayhudWxsLCBkYXRhKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb21wcmVzcyBkYXRhLlxuICAgKlxuICAgKiBAcGFyYW0geyhCdWZmZXJ8U3RyaW5nKX0gZGF0YSBEYXRhIHRvIGNvbXByZXNzXG4gICAqIEBwYXJhbSB7Qm9vbGVhbn0gZmluIFNwZWNpZmllcyB3aGV0aGVyIG9yIG5vdCB0aGlzIGlzIHRoZSBsYXN0IGZyYWdtZW50XG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IGNhbGxiYWNrIENhbGxiYWNrXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBfY29tcHJlc3MoZGF0YSwgZmluLCBjYWxsYmFjaykge1xuICAgIGNvbnN0IGVuZHBvaW50ID0gdGhpcy5faXNTZXJ2ZXIgPyAnc2VydmVyJyA6ICdjbGllbnQnO1xuXG4gICAgaWYgKCF0aGlzLl9kZWZsYXRlKSB7XG4gICAgICBjb25zdCBrZXkgPSBgJHtlbmRwb2ludH1fbWF4X3dpbmRvd19iaXRzYDtcbiAgICAgIGNvbnN0IHdpbmRvd0JpdHMgPVxuICAgICAgICB0eXBlb2YgdGhpcy5wYXJhbXNba2V5XSAhPT0gJ251bWJlcidcbiAgICAgICAgICA/IHpsaWIuWl9ERUZBVUxUX1dJTkRPV0JJVFNcbiAgICAgICAgICA6IHRoaXMucGFyYW1zW2tleV07XG5cbiAgICAgIHRoaXMuX2RlZmxhdGUgPSB6bGliLmNyZWF0ZURlZmxhdGVSYXcoe1xuICAgICAgICAuLi50aGlzLl9vcHRpb25zLnpsaWJEZWZsYXRlT3B0aW9ucyxcbiAgICAgICAgd2luZG93Qml0c1xuICAgICAgfSk7XG5cbiAgICAgIHRoaXMuX2RlZmxhdGVba1RvdGFsTGVuZ3RoXSA9IDA7XG4gICAgICB0aGlzLl9kZWZsYXRlW2tCdWZmZXJzXSA9IFtdO1xuXG4gICAgICB0aGlzLl9kZWZsYXRlLm9uKCdkYXRhJywgZGVmbGF0ZU9uRGF0YSk7XG4gICAgfVxuXG4gICAgdGhpcy5fZGVmbGF0ZVtrQ2FsbGJhY2tdID0gY2FsbGJhY2s7XG5cbiAgICB0aGlzLl9kZWZsYXRlLndyaXRlKGRhdGEpO1xuICAgIHRoaXMuX2RlZmxhdGUuZmx1c2goemxpYi5aX1NZTkNfRkxVU0gsICgpID0+IHtcbiAgICAgIGlmICghdGhpcy5fZGVmbGF0ZSkge1xuICAgICAgICAvL1xuICAgICAgICAvLyBUaGUgZGVmbGF0ZSBzdHJlYW0gd2FzIGNsb3NlZCB3aGlsZSBkYXRhIHdhcyBiZWluZyBwcm9jZXNzZWQuXG4gICAgICAgIC8vXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgbGV0IGRhdGEgPSBidWZmZXJVdGlsLmNvbmNhdChcbiAgICAgICAgdGhpcy5fZGVmbGF0ZVtrQnVmZmVyc10sXG4gICAgICAgIHRoaXMuX2RlZmxhdGVba1RvdGFsTGVuZ3RoXVxuICAgICAgKTtcblxuICAgICAgaWYgKGZpbikge1xuICAgICAgICBkYXRhID0gbmV3IEZhc3RCdWZmZXIoZGF0YS5idWZmZXIsIGRhdGEuYnl0ZU9mZnNldCwgZGF0YS5sZW5ndGggLSA0KTtcbiAgICAgIH1cblxuICAgICAgLy9cbiAgICAgIC8vIEVuc3VyZSB0aGF0IHRoZSBjYWxsYmFjayB3aWxsIG5vdCBiZSBjYWxsZWQgYWdhaW4gaW5cbiAgICAgIC8vIGBQZXJNZXNzYWdlRGVmbGF0ZSNjbGVhbnVwKClgLlxuICAgICAgLy9cbiAgICAgIHRoaXMuX2RlZmxhdGVba0NhbGxiYWNrXSA9IG51bGw7XG5cbiAgICAgIHRoaXMuX2RlZmxhdGVba1RvdGFsTGVuZ3RoXSA9IDA7XG4gICAgICB0aGlzLl9kZWZsYXRlW2tCdWZmZXJzXSA9IFtdO1xuXG4gICAgICBpZiAoZmluICYmIHRoaXMucGFyYW1zW2Ake2VuZHBvaW50fV9ub19jb250ZXh0X3Rha2VvdmVyYF0pIHtcbiAgICAgICAgdGhpcy5fZGVmbGF0ZS5yZXNldCgpO1xuICAgICAgfVxuXG4gICAgICBjYWxsYmFjayhudWxsLCBkYXRhKTtcbiAgICB9KTtcbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IFBlck1lc3NhZ2VEZWZsYXRlO1xuXG4vKipcbiAqIFRoZSBsaXN0ZW5lciBvZiB0aGUgYHpsaWIuRGVmbGF0ZVJhd2Agc3RyZWFtIGAnZGF0YSdgIGV2ZW50LlxuICpcbiAqIEBwYXJhbSB7QnVmZmVyfSBjaHVuayBBIGNodW5rIG9mIGRhdGFcbiAqIEBwcml2YXRlXG4gKi9cbmZ1bmN0aW9uIGRlZmxhdGVPbkRhdGEoY2h1bmspIHtcbiAgdGhpc1trQnVmZmVyc10ucHVzaChjaHVuayk7XG4gIHRoaXNba1RvdGFsTGVuZ3RoXSArPSBjaHVuay5sZW5ndGg7XG59XG5cbi8qKlxuICogVGhlIGxpc3RlbmVyIG9mIHRoZSBgemxpYi5JbmZsYXRlUmF3YCBzdHJlYW0gYCdkYXRhJ2AgZXZlbnQuXG4gKlxuICogQHBhcmFtIHtCdWZmZXJ9IGNodW5rIEEgY2h1bmsgb2YgZGF0YVxuICogQHByaXZhdGVcbiAqL1xuZnVuY3Rpb24gaW5mbGF0ZU9uRGF0YShjaHVuaykge1xuICB0aGlzW2tUb3RhbExlbmd0aF0gKz0gY2h1bmsubGVuZ3RoO1xuXG4gIGlmIChcbiAgICB0aGlzW2tQZXJNZXNzYWdlRGVmbGF0ZV0uX21heFBheWxvYWQgPCAxIHx8XG4gICAgdGhpc1trVG90YWxMZW5ndGhdIDw9IHRoaXNba1Blck1lc3NhZ2VEZWZsYXRlXS5fbWF4UGF5bG9hZFxuICApIHtcbiAgICB0aGlzW2tCdWZmZXJzXS5wdXNoKGNodW5rKTtcbiAgICByZXR1cm47XG4gIH1cblxuICB0aGlzW2tFcnJvcl0gPSBuZXcgUmFuZ2VFcnJvcignTWF4IHBheWxvYWQgc2l6ZSBleGNlZWRlZCcpO1xuICB0aGlzW2tFcnJvcl0uY29kZSA9ICdXU19FUlJfVU5TVVBQT1JURURfTUVTU0FHRV9MRU5HVEgnO1xuICB0aGlzW2tFcnJvcl1ba1N0YXR1c0NvZGVdID0gMTAwOTtcbiAgdGhpcy5yZW1vdmVMaXN0ZW5lcignZGF0YScsIGluZmxhdGVPbkRhdGEpO1xuICB0aGlzLnJlc2V0KCk7XG59XG5cbi8qKlxuICogVGhlIGxpc3RlbmVyIG9mIHRoZSBgemxpYi5JbmZsYXRlUmF3YCBzdHJlYW0gYCdlcnJvcidgIGV2ZW50LlxuICpcbiAqIEBwYXJhbSB7RXJyb3J9IGVyciBUaGUgZW1pdHRlZCBlcnJvclxuICogQHByaXZhdGVcbiAqL1xuZnVuY3Rpb24gaW5mbGF0ZU9uRXJyb3IoZXJyKSB7XG4gIC8vXG4gIC8vIFRoZXJlIGlzIG5vIG5lZWQgdG8gY2FsbCBgWmxpYiNjbG9zZSgpYCBhcyB0aGUgaGFuZGxlIGlzIGF1dG9tYXRpY2FsbHlcbiAgLy8gY2xvc2VkIHdoZW4gYW4gZXJyb3IgaXMgZW1pdHRlZC5cbiAgLy9cbiAgdGhpc1trUGVyTWVzc2FnZURlZmxhdGVdLl9pbmZsYXRlID0gbnVsbDtcbiAgZXJyW2tTdGF0dXNDb2RlXSA9IDEwMDc7XG4gIHRoaXNba0NhbGxiYWNrXShlcnIpO1xufVxuIiwgIid1c2Ugc3RyaWN0JztcblxuLyoqXG4gKiBDaGVja3MgaWYgYSBnaXZlbiBidWZmZXIgY29udGFpbnMgb25seSBjb3JyZWN0IFVURi04LlxuICogUG9ydGVkIGZyb20gaHR0cHM6Ly93d3cuY2wuY2FtLmFjLnVrLyU3RW1nazI1L3Vjcy91dGY4X2NoZWNrLmMgYnlcbiAqIE1hcmt1cyBLdWhuLlxuICpcbiAqIEBwYXJhbSB7QnVmZmVyfSBidWYgVGhlIGJ1ZmZlciB0byBjaGVja1xuICogQHJldHVybiB7Qm9vbGVhbn0gYHRydWVgIGlmIGBidWZgIGNvbnRhaW5zIG9ubHkgY29ycmVjdCBVVEYtOCwgZWxzZSBgZmFsc2VgXG4gKiBAcHVibGljXG4gKi9cbmZ1bmN0aW9uIGlzVmFsaWRVVEY4KGJ1Zikge1xuICBjb25zdCBsZW4gPSBidWYubGVuZ3RoO1xuICBsZXQgaSA9IDA7XG5cbiAgd2hpbGUgKGkgPCBsZW4pIHtcbiAgICBpZiAoKGJ1ZltpXSAmIDB4ODApID09PSAweDAwKSB7ICAvLyAweHh4eHh4eFxuICAgICAgaSsrO1xuICAgIH0gZWxzZSBpZiAoKGJ1ZltpXSAmIDB4ZTApID09PSAweGMwKSB7ICAvLyAxMTB4eHh4eCAxMHh4eHh4eFxuICAgICAgaWYgKFxuICAgICAgICBpICsgMSA9PT0gbGVuIHx8XG4gICAgICAgIChidWZbaSArIDFdICYgMHhjMCkgIT09IDB4ODAgfHxcbiAgICAgICAgKGJ1ZltpXSAmIDB4ZmUpID09PSAweGMwICAvLyBvdmVybG9uZ1xuICAgICAgKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cblxuICAgICAgaSArPSAyO1xuICAgIH0gZWxzZSBpZiAoKGJ1ZltpXSAmIDB4ZjApID09PSAweGUwKSB7ICAvLyAxMTEweHh4eCAxMHh4eHh4eCAxMHh4eHh4eFxuICAgICAgaWYgKFxuICAgICAgICBpICsgMiA+PSBsZW4gfHxcbiAgICAgICAgKGJ1ZltpICsgMV0gJiAweGMwKSAhPT0gMHg4MCB8fFxuICAgICAgICAoYnVmW2kgKyAyXSAmIDB4YzApICE9PSAweDgwIHx8XG4gICAgICAgIGJ1ZltpXSA9PT0gMHhlMCAmJiAoYnVmW2kgKyAxXSAmIDB4ZTApID09PSAweDgwIHx8ICAvLyBvdmVybG9uZ1xuICAgICAgICBidWZbaV0gPT09IDB4ZWQgJiYgKGJ1ZltpICsgMV0gJiAweGUwKSA9PT0gMHhhMCAgLy8gc3Vycm9nYXRlIChVK0Q4MDAgLSBVK0RGRkYpXG4gICAgICApIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuXG4gICAgICBpICs9IDM7XG4gICAgfSBlbHNlIGlmICgoYnVmW2ldICYgMHhmOCkgPT09IDB4ZjApIHsgIC8vIDExMTEweHh4IDEweHh4eHh4IDEweHh4eHh4IDEweHh4eHh4XG4gICAgICBpZiAoXG4gICAgICAgIGkgKyAzID49IGxlbiB8fFxuICAgICAgICAoYnVmW2kgKyAxXSAmIDB4YzApICE9PSAweDgwIHx8XG4gICAgICAgIChidWZbaSArIDJdICYgMHhjMCkgIT09IDB4ODAgfHxcbiAgICAgICAgKGJ1ZltpICsgM10gJiAweGMwKSAhPT0gMHg4MCB8fFxuICAgICAgICBidWZbaV0gPT09IDB4ZjAgJiYgKGJ1ZltpICsgMV0gJiAweGYwKSA9PT0gMHg4MCB8fCAgLy8gb3ZlcmxvbmdcbiAgICAgICAgYnVmW2ldID09PSAweGY0ICYmIGJ1ZltpICsgMV0gPiAweDhmIHx8IGJ1ZltpXSA+IDB4ZjQgIC8vID4gVSsxMEZGRkZcbiAgICAgICkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG5cbiAgICAgIGkgKz0gNDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB0cnVlO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGlzVmFsaWRVVEY4O1xuIiwgIid1c2Ugc3RyaWN0JztcblxudHJ5IHtcbiAgbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCdub2RlLWd5cC1idWlsZCcpKF9fZGlybmFtZSk7XG59IGNhdGNoIChlKSB7XG4gIG1vZHVsZS5leHBvcnRzID0gcmVxdWlyZSgnLi9mYWxsYmFjaycpO1xufVxuIiwgIid1c2Ugc3RyaWN0JztcblxuY29uc3QgeyBpc1V0ZjggfSA9IHJlcXVpcmUoJ2J1ZmZlcicpO1xuXG4vL1xuLy8gQWxsb3dlZCB0b2tlbiBjaGFyYWN0ZXJzOlxuLy9cbi8vICchJywgJyMnLCAnJCcsICclJywgJyYnLCAnJycsICcqJywgJysnLCAnLScsXG4vLyAnLicsIDAtOSwgQS1aLCAnXicsICdfJywgJ2AnLCBhLXosICd8JywgJ34nXG4vL1xuLy8gdG9rZW5DaGFyc1szMl0gPT09IDAgLy8gJyAnXG4vLyB0b2tlbkNoYXJzWzMzXSA9PT0gMSAvLyAnISdcbi8vIHRva2VuQ2hhcnNbMzRdID09PSAwIC8vICdcIidcbi8vIC4uLlxuLy9cbi8vIHByZXR0aWVyLWlnbm9yZVxuY29uc3QgdG9rZW5DaGFycyA9IFtcbiAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgLy8gMCAtIDE1XG4gIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIC8vIDE2IC0gMzFcbiAgMCwgMSwgMCwgMSwgMSwgMSwgMSwgMSwgMCwgMCwgMSwgMSwgMCwgMSwgMSwgMCwgLy8gMzIgLSA0N1xuICAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAwLCAwLCAwLCAwLCAwLCAwLCAvLyA0OCAtIDYzXG4gIDAsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIC8vIDY0IC0gNzlcbiAgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMCwgMCwgMCwgMSwgMSwgLy8gODAgLSA5NVxuICAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAvLyA5NiAtIDExMVxuICAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAwLCAxLCAwLCAxLCAwIC8vIDExMiAtIDEyN1xuXTtcblxuLyoqXG4gKiBDaGVja3MgaWYgYSBzdGF0dXMgY29kZSBpcyBhbGxvd2VkIGluIGEgY2xvc2UgZnJhbWUuXG4gKlxuICogQHBhcmFtIHtOdW1iZXJ9IGNvZGUgVGhlIHN0YXR1cyBjb2RlXG4gKiBAcmV0dXJuIHtCb29sZWFufSBgdHJ1ZWAgaWYgdGhlIHN0YXR1cyBjb2RlIGlzIHZhbGlkLCBlbHNlIGBmYWxzZWBcbiAqIEBwdWJsaWNcbiAqL1xuZnVuY3Rpb24gaXNWYWxpZFN0YXR1c0NvZGUoY29kZSkge1xuICByZXR1cm4gKFxuICAgIChjb2RlID49IDEwMDAgJiZcbiAgICAgIGNvZGUgPD0gMTAxNCAmJlxuICAgICAgY29kZSAhPT0gMTAwNCAmJlxuICAgICAgY29kZSAhPT0gMTAwNSAmJlxuICAgICAgY29kZSAhPT0gMTAwNikgfHxcbiAgICAoY29kZSA+PSAzMDAwICYmIGNvZGUgPD0gNDk5OSlcbiAgKTtcbn1cblxuLyoqXG4gKiBDaGVja3MgaWYgYSBnaXZlbiBidWZmZXIgY29udGFpbnMgb25seSBjb3JyZWN0IFVURi04LlxuICogUG9ydGVkIGZyb20gaHR0cHM6Ly93d3cuY2wuY2FtLmFjLnVrLyU3RW1nazI1L3Vjcy91dGY4X2NoZWNrLmMgYnlcbiAqIE1hcmt1cyBLdWhuLlxuICpcbiAqIEBwYXJhbSB7QnVmZmVyfSBidWYgVGhlIGJ1ZmZlciB0byBjaGVja1xuICogQHJldHVybiB7Qm9vbGVhbn0gYHRydWVgIGlmIGBidWZgIGNvbnRhaW5zIG9ubHkgY29ycmVjdCBVVEYtOCwgZWxzZSBgZmFsc2VgXG4gKiBAcHVibGljXG4gKi9cbmZ1bmN0aW9uIF9pc1ZhbGlkVVRGOChidWYpIHtcbiAgY29uc3QgbGVuID0gYnVmLmxlbmd0aDtcbiAgbGV0IGkgPSAwO1xuXG4gIHdoaWxlIChpIDwgbGVuKSB7XG4gICAgaWYgKChidWZbaV0gJiAweDgwKSA9PT0gMCkge1xuICAgICAgLy8gMHh4eHh4eHhcbiAgICAgIGkrKztcbiAgICB9IGVsc2UgaWYgKChidWZbaV0gJiAweGUwKSA9PT0gMHhjMCkge1xuICAgICAgLy8gMTEweHh4eHggMTB4eHh4eHhcbiAgICAgIGlmIChcbiAgICAgICAgaSArIDEgPT09IGxlbiB8fFxuICAgICAgICAoYnVmW2kgKyAxXSAmIDB4YzApICE9PSAweDgwIHx8XG4gICAgICAgIChidWZbaV0gJiAweGZlKSA9PT0gMHhjMCAvLyBPdmVybG9uZ1xuICAgICAgKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cblxuICAgICAgaSArPSAyO1xuICAgIH0gZWxzZSBpZiAoKGJ1ZltpXSAmIDB4ZjApID09PSAweGUwKSB7XG4gICAgICAvLyAxMTEweHh4eCAxMHh4eHh4eCAxMHh4eHh4eFxuICAgICAgaWYgKFxuICAgICAgICBpICsgMiA+PSBsZW4gfHxcbiAgICAgICAgKGJ1ZltpICsgMV0gJiAweGMwKSAhPT0gMHg4MCB8fFxuICAgICAgICAoYnVmW2kgKyAyXSAmIDB4YzApICE9PSAweDgwIHx8XG4gICAgICAgIChidWZbaV0gPT09IDB4ZTAgJiYgKGJ1ZltpICsgMV0gJiAweGUwKSA9PT0gMHg4MCkgfHwgLy8gT3ZlcmxvbmdcbiAgICAgICAgKGJ1ZltpXSA9PT0gMHhlZCAmJiAoYnVmW2kgKyAxXSAmIDB4ZTApID09PSAweGEwKSAvLyBTdXJyb2dhdGUgKFUrRDgwMCAtIFUrREZGRilcbiAgICAgICkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG5cbiAgICAgIGkgKz0gMztcbiAgICB9IGVsc2UgaWYgKChidWZbaV0gJiAweGY4KSA9PT0gMHhmMCkge1xuICAgICAgLy8gMTExMTB4eHggMTB4eHh4eHggMTB4eHh4eHggMTB4eHh4eHhcbiAgICAgIGlmIChcbiAgICAgICAgaSArIDMgPj0gbGVuIHx8XG4gICAgICAgIChidWZbaSArIDFdICYgMHhjMCkgIT09IDB4ODAgfHxcbiAgICAgICAgKGJ1ZltpICsgMl0gJiAweGMwKSAhPT0gMHg4MCB8fFxuICAgICAgICAoYnVmW2kgKyAzXSAmIDB4YzApICE9PSAweDgwIHx8XG4gICAgICAgIChidWZbaV0gPT09IDB4ZjAgJiYgKGJ1ZltpICsgMV0gJiAweGYwKSA9PT0gMHg4MCkgfHwgLy8gT3ZlcmxvbmdcbiAgICAgICAgKGJ1ZltpXSA9PT0gMHhmNCAmJiBidWZbaSArIDFdID4gMHg4ZikgfHxcbiAgICAgICAgYnVmW2ldID4gMHhmNCAvLyA+IFUrMTBGRkZGXG4gICAgICApIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuXG4gICAgICBpICs9IDQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gdHJ1ZTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGlzVmFsaWRTdGF0dXNDb2RlLFxuICBpc1ZhbGlkVVRGODogX2lzVmFsaWRVVEY4LFxuICB0b2tlbkNoYXJzXG59O1xuXG5pZiAoaXNVdGY4KSB7XG4gIG1vZHVsZS5leHBvcnRzLmlzVmFsaWRVVEY4ID0gZnVuY3Rpb24gKGJ1Zikge1xuICAgIHJldHVybiBidWYubGVuZ3RoIDwgMjQgPyBfaXNWYWxpZFVURjgoYnVmKSA6IGlzVXRmOChidWYpO1xuICB9O1xufSAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAgKi8gZWxzZSBpZiAoIXByb2Nlc3MuZW52LldTX05PX1VURl84X1ZBTElEQVRFKSB7XG4gIHRyeSB7XG4gICAgY29uc3QgaXNWYWxpZFVURjggPSByZXF1aXJlKCd1dGYtOC12YWxpZGF0ZScpO1xuXG4gICAgbW9kdWxlLmV4cG9ydHMuaXNWYWxpZFVURjggPSBmdW5jdGlvbiAoYnVmKSB7XG4gICAgICByZXR1cm4gYnVmLmxlbmd0aCA8IDMyID8gX2lzVmFsaWRVVEY4KGJ1ZikgOiBpc1ZhbGlkVVRGOChidWYpO1xuICAgIH07XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICAvLyBDb250aW51ZSByZWdhcmRsZXNzIG9mIHRoZSBlcnJvci5cbiAgfVxufVxuIiwgIid1c2Ugc3RyaWN0JztcblxuY29uc3QgeyBXcml0YWJsZSB9ID0gcmVxdWlyZSgnc3RyZWFtJyk7XG5cbmNvbnN0IFBlck1lc3NhZ2VEZWZsYXRlID0gcmVxdWlyZSgnLi9wZXJtZXNzYWdlLWRlZmxhdGUnKTtcbmNvbnN0IHtcbiAgQklOQVJZX1RZUEVTLFxuICBFTVBUWV9CVUZGRVIsXG4gIGtTdGF0dXNDb2RlLFxuICBrV2ViU29ja2V0XG59ID0gcmVxdWlyZSgnLi9jb25zdGFudHMnKTtcbmNvbnN0IHsgY29uY2F0LCB0b0FycmF5QnVmZmVyLCB1bm1hc2sgfSA9IHJlcXVpcmUoJy4vYnVmZmVyLXV0aWwnKTtcbmNvbnN0IHsgaXNWYWxpZFN0YXR1c0NvZGUsIGlzVmFsaWRVVEY4IH0gPSByZXF1aXJlKCcuL3ZhbGlkYXRpb24nKTtcblxuY29uc3QgRmFzdEJ1ZmZlciA9IEJ1ZmZlcltTeW1ib2wuc3BlY2llc107XG5jb25zdCBwcm9taXNlID0gUHJvbWlzZS5yZXNvbHZlKCk7XG5cbi8vXG4vLyBgcXVldWVNaWNyb3Rhc2soKWAgaXMgbm90IGF2YWlsYWJsZSBpbiBOb2RlLmpzIDwgMTEuXG4vL1xuY29uc3QgcXVldWVUYXNrID1cbiAgdHlwZW9mIHF1ZXVlTWljcm90YXNrID09PSAnZnVuY3Rpb24nID8gcXVldWVNaWNyb3Rhc2sgOiBxdWV1ZU1pY3JvdGFza1NoaW07XG5cbmNvbnN0IEdFVF9JTkZPID0gMDtcbmNvbnN0IEdFVF9QQVlMT0FEX0xFTkdUSF8xNiA9IDE7XG5jb25zdCBHRVRfUEFZTE9BRF9MRU5HVEhfNjQgPSAyO1xuY29uc3QgR0VUX01BU0sgPSAzO1xuY29uc3QgR0VUX0RBVEEgPSA0O1xuY29uc3QgSU5GTEFUSU5HID0gNTtcbmNvbnN0IFdBSVRfTUlDUk9UQVNLID0gNjtcblxuLyoqXG4gKiBIeUJpIFJlY2VpdmVyIGltcGxlbWVudGF0aW9uLlxuICpcbiAqIEBleHRlbmRzIFdyaXRhYmxlXG4gKi9cbmNsYXNzIFJlY2VpdmVyIGV4dGVuZHMgV3JpdGFibGUge1xuICAvKipcbiAgICogQ3JlYXRlcyBhIFJlY2VpdmVyIGluc3RhbmNlLlxuICAgKlxuICAgKiBAcGFyYW0ge09iamVjdH0gW29wdGlvbnNdIE9wdGlvbnMgb2JqZWN0XG4gICAqIEBwYXJhbSB7U3RyaW5nfSBbb3B0aW9ucy5iaW5hcnlUeXBlPW5vZGVidWZmZXJdIFRoZSB0eXBlIGZvciBiaW5hcnkgZGF0YVxuICAgKiBAcGFyYW0ge09iamVjdH0gW29wdGlvbnMuZXh0ZW5zaW9uc10gQW4gb2JqZWN0IGNvbnRhaW5pbmcgdGhlIG5lZ290aWF0ZWRcbiAgICogICAgIGV4dGVuc2lvbnNcbiAgICogQHBhcmFtIHtCb29sZWFufSBbb3B0aW9ucy5pc1NlcnZlcj1mYWxzZV0gU3BlY2lmaWVzIHdoZXRoZXIgdG8gb3BlcmF0ZSBpblxuICAgKiAgICAgY2xpZW50IG9yIHNlcnZlciBtb2RlXG4gICAqIEBwYXJhbSB7TnVtYmVyfSBbb3B0aW9ucy5tYXhQYXlsb2FkPTBdIFRoZSBtYXhpbXVtIGFsbG93ZWQgbWVzc2FnZSBsZW5ndGhcbiAgICogQHBhcmFtIHtCb29sZWFufSBbb3B0aW9ucy5za2lwVVRGOFZhbGlkYXRpb249ZmFsc2VdIFNwZWNpZmllcyB3aGV0aGVyIG9yXG4gICAqICAgICBub3QgdG8gc2tpcCBVVEYtOCB2YWxpZGF0aW9uIGZvciB0ZXh0IGFuZCBjbG9zZSBtZXNzYWdlc1xuICAgKi9cbiAgY29uc3RydWN0b3Iob3B0aW9ucyA9IHt9KSB7XG4gICAgc3VwZXIoKTtcblxuICAgIHRoaXMuX2JpbmFyeVR5cGUgPSBvcHRpb25zLmJpbmFyeVR5cGUgfHwgQklOQVJZX1RZUEVTWzBdO1xuICAgIHRoaXMuX2V4dGVuc2lvbnMgPSBvcHRpb25zLmV4dGVuc2lvbnMgfHwge307XG4gICAgdGhpcy5faXNTZXJ2ZXIgPSAhIW9wdGlvbnMuaXNTZXJ2ZXI7XG4gICAgdGhpcy5fbWF4UGF5bG9hZCA9IG9wdGlvbnMubWF4UGF5bG9hZCB8IDA7XG4gICAgdGhpcy5fc2tpcFVURjhWYWxpZGF0aW9uID0gISFvcHRpb25zLnNraXBVVEY4VmFsaWRhdGlvbjtcbiAgICB0aGlzW2tXZWJTb2NrZXRdID0gdW5kZWZpbmVkO1xuXG4gICAgdGhpcy5fYnVmZmVyZWRCeXRlcyA9IDA7XG4gICAgdGhpcy5fYnVmZmVycyA9IFtdO1xuXG4gICAgdGhpcy5fY29tcHJlc3NlZCA9IGZhbHNlO1xuICAgIHRoaXMuX3BheWxvYWRMZW5ndGggPSAwO1xuICAgIHRoaXMuX21hc2sgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5fZnJhZ21lbnRlZCA9IDA7XG4gICAgdGhpcy5fbWFza2VkID0gZmFsc2U7XG4gICAgdGhpcy5fZmluID0gZmFsc2U7XG4gICAgdGhpcy5fb3Bjb2RlID0gMDtcblxuICAgIHRoaXMuX3RvdGFsUGF5bG9hZExlbmd0aCA9IDA7XG4gICAgdGhpcy5fbWVzc2FnZUxlbmd0aCA9IDA7XG4gICAgdGhpcy5fZnJhZ21lbnRzID0gW107XG5cbiAgICB0aGlzLl9zdGF0ZSA9IEdFVF9JTkZPO1xuICAgIHRoaXMuX2xvb3AgPSBmYWxzZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBsZW1lbnRzIGBXcml0YWJsZS5wcm90b3R5cGUuX3dyaXRlKClgLlxuICAgKlxuICAgKiBAcGFyYW0ge0J1ZmZlcn0gY2h1bmsgVGhlIGNodW5rIG9mIGRhdGEgdG8gd3JpdGVcbiAgICogQHBhcmFtIHtTdHJpbmd9IGVuY29kaW5nIFRoZSBjaGFyYWN0ZXIgZW5jb2Rpbmcgb2YgYGNodW5rYFxuICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBjYiBDYWxsYmFja1xuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgX3dyaXRlKGNodW5rLCBlbmNvZGluZywgY2IpIHtcbiAgICBpZiAodGhpcy5fb3Bjb2RlID09PSAweDA4ICYmIHRoaXMuX3N0YXRlID09IEdFVF9JTkZPKSByZXR1cm4gY2IoKTtcblxuICAgIHRoaXMuX2J1ZmZlcmVkQnl0ZXMgKz0gY2h1bmsubGVuZ3RoO1xuICAgIHRoaXMuX2J1ZmZlcnMucHVzaChjaHVuayk7XG4gICAgdGhpcy5zdGFydExvb3AoY2IpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnN1bWVzIGBuYCBieXRlcyBmcm9tIHRoZSBidWZmZXJlZCBkYXRhLlxuICAgKlxuICAgKiBAcGFyYW0ge051bWJlcn0gbiBUaGUgbnVtYmVyIG9mIGJ5dGVzIHRvIGNvbnN1bWVcbiAgICogQHJldHVybiB7QnVmZmVyfSBUaGUgY29uc3VtZWQgYnl0ZXNcbiAgICogQHByaXZhdGVcbiAgICovXG4gIGNvbnN1bWUobikge1xuICAgIHRoaXMuX2J1ZmZlcmVkQnl0ZXMgLT0gbjtcblxuICAgIGlmIChuID09PSB0aGlzLl9idWZmZXJzWzBdLmxlbmd0aCkgcmV0dXJuIHRoaXMuX2J1ZmZlcnMuc2hpZnQoKTtcblxuICAgIGlmIChuIDwgdGhpcy5fYnVmZmVyc1swXS5sZW5ndGgpIHtcbiAgICAgIGNvbnN0IGJ1ZiA9IHRoaXMuX2J1ZmZlcnNbMF07XG4gICAgICB0aGlzLl9idWZmZXJzWzBdID0gbmV3IEZhc3RCdWZmZXIoXG4gICAgICAgIGJ1Zi5idWZmZXIsXG4gICAgICAgIGJ1Zi5ieXRlT2Zmc2V0ICsgbixcbiAgICAgICAgYnVmLmxlbmd0aCAtIG5cbiAgICAgICk7XG5cbiAgICAgIHJldHVybiBuZXcgRmFzdEJ1ZmZlcihidWYuYnVmZmVyLCBidWYuYnl0ZU9mZnNldCwgbik7XG4gICAgfVxuXG4gICAgY29uc3QgZHN0ID0gQnVmZmVyLmFsbG9jVW5zYWZlKG4pO1xuXG4gICAgZG8ge1xuICAgICAgY29uc3QgYnVmID0gdGhpcy5fYnVmZmVyc1swXTtcbiAgICAgIGNvbnN0IG9mZnNldCA9IGRzdC5sZW5ndGggLSBuO1xuXG4gICAgICBpZiAobiA+PSBidWYubGVuZ3RoKSB7XG4gICAgICAgIGRzdC5zZXQodGhpcy5fYnVmZmVycy5zaGlmdCgpLCBvZmZzZXQpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZHN0LnNldChuZXcgVWludDhBcnJheShidWYuYnVmZmVyLCBidWYuYnl0ZU9mZnNldCwgbiksIG9mZnNldCk7XG4gICAgICAgIHRoaXMuX2J1ZmZlcnNbMF0gPSBuZXcgRmFzdEJ1ZmZlcihcbiAgICAgICAgICBidWYuYnVmZmVyLFxuICAgICAgICAgIGJ1Zi5ieXRlT2Zmc2V0ICsgbixcbiAgICAgICAgICBidWYubGVuZ3RoIC0gblxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBuIC09IGJ1Zi5sZW5ndGg7XG4gICAgfSB3aGlsZSAobiA+IDApO1xuXG4gICAgcmV0dXJuIGRzdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdGFydHMgdGhlIHBhcnNpbmcgbG9vcC5cbiAgICpcbiAgICogQHBhcmFtIHtGdW5jdGlvbn0gY2IgQ2FsbGJhY2tcbiAgICogQHByaXZhdGVcbiAgICovXG4gIHN0YXJ0TG9vcChjYikge1xuICAgIGxldCBlcnI7XG4gICAgdGhpcy5fbG9vcCA9IHRydWU7XG5cbiAgICBkbyB7XG4gICAgICBzd2l0Y2ggKHRoaXMuX3N0YXRlKSB7XG4gICAgICAgIGNhc2UgR0VUX0lORk86XG4gICAgICAgICAgZXJyID0gdGhpcy5nZXRJbmZvKCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgR0VUX1BBWUxPQURfTEVOR1RIXzE2OlxuICAgICAgICAgIGVyciA9IHRoaXMuZ2V0UGF5bG9hZExlbmd0aDE2KCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgR0VUX1BBWUxPQURfTEVOR1RIXzY0OlxuICAgICAgICAgIGVyciA9IHRoaXMuZ2V0UGF5bG9hZExlbmd0aDY0KCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgR0VUX01BU0s6XG4gICAgICAgICAgdGhpcy5nZXRNYXNrKCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgR0VUX0RBVEE6XG4gICAgICAgICAgZXJyID0gdGhpcy5nZXREYXRhKGNiKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBJTkZMQVRJTkc6XG4gICAgICAgICAgdGhpcy5fbG9vcCA9IGZhbHNlO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAvL1xuICAgICAgICAgIC8vIGBXQUlUX01JQ1JPVEFTS2AuXG4gICAgICAgICAgLy9cbiAgICAgICAgICB0aGlzLl9sb29wID0gZmFsc2U7XG5cbiAgICAgICAgICBxdWV1ZVRhc2soKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5fc3RhdGUgPSBHRVRfSU5GTztcbiAgICAgICAgICAgIHRoaXMuc3RhcnRMb29wKGNiKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfSB3aGlsZSAodGhpcy5fbG9vcCk7XG5cbiAgICBjYihlcnIpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlYWRzIHRoZSBmaXJzdCB0d28gYnl0ZXMgb2YgYSBmcmFtZS5cbiAgICpcbiAgICogQHJldHVybiB7KFJhbmdlRXJyb3J8dW5kZWZpbmVkKX0gQSBwb3NzaWJsZSBlcnJvclxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgZ2V0SW5mbygpIHtcbiAgICBpZiAodGhpcy5fYnVmZmVyZWRCeXRlcyA8IDIpIHtcbiAgICAgIHRoaXMuX2xvb3AgPSBmYWxzZTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBidWYgPSB0aGlzLmNvbnN1bWUoMik7XG5cbiAgICBpZiAoKGJ1ZlswXSAmIDB4MzApICE9PSAweDAwKSB7XG4gICAgICB0aGlzLl9sb29wID0gZmFsc2U7XG4gICAgICByZXR1cm4gZXJyb3IoXG4gICAgICAgIFJhbmdlRXJyb3IsXG4gICAgICAgICdSU1YyIGFuZCBSU1YzIG11c3QgYmUgY2xlYXInLFxuICAgICAgICB0cnVlLFxuICAgICAgICAxMDAyLFxuICAgICAgICAnV1NfRVJSX1VORVhQRUNURURfUlNWXzJfMydcbiAgICAgICk7XG4gICAgfVxuXG4gICAgY29uc3QgY29tcHJlc3NlZCA9IChidWZbMF0gJiAweDQwKSA9PT0gMHg0MDtcblxuICAgIGlmIChjb21wcmVzc2VkICYmICF0aGlzLl9leHRlbnNpb25zW1Blck1lc3NhZ2VEZWZsYXRlLmV4dGVuc2lvbk5hbWVdKSB7XG4gICAgICB0aGlzLl9sb29wID0gZmFsc2U7XG4gICAgICByZXR1cm4gZXJyb3IoXG4gICAgICAgIFJhbmdlRXJyb3IsXG4gICAgICAgICdSU1YxIG11c3QgYmUgY2xlYXInLFxuICAgICAgICB0cnVlLFxuICAgICAgICAxMDAyLFxuICAgICAgICAnV1NfRVJSX1VORVhQRUNURURfUlNWXzEnXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMuX2ZpbiA9IChidWZbMF0gJiAweDgwKSA9PT0gMHg4MDtcbiAgICB0aGlzLl9vcGNvZGUgPSBidWZbMF0gJiAweDBmO1xuICAgIHRoaXMuX3BheWxvYWRMZW5ndGggPSBidWZbMV0gJiAweDdmO1xuXG4gICAgaWYgKHRoaXMuX29wY29kZSA9PT0gMHgwMCkge1xuICAgICAgaWYgKGNvbXByZXNzZWQpIHtcbiAgICAgICAgdGhpcy5fbG9vcCA9IGZhbHNlO1xuICAgICAgICByZXR1cm4gZXJyb3IoXG4gICAgICAgICAgUmFuZ2VFcnJvcixcbiAgICAgICAgICAnUlNWMSBtdXN0IGJlIGNsZWFyJyxcbiAgICAgICAgICB0cnVlLFxuICAgICAgICAgIDEwMDIsXG4gICAgICAgICAgJ1dTX0VSUl9VTkVYUEVDVEVEX1JTVl8xJ1xuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBpZiAoIXRoaXMuX2ZyYWdtZW50ZWQpIHtcbiAgICAgICAgdGhpcy5fbG9vcCA9IGZhbHNlO1xuICAgICAgICByZXR1cm4gZXJyb3IoXG4gICAgICAgICAgUmFuZ2VFcnJvcixcbiAgICAgICAgICAnaW52YWxpZCBvcGNvZGUgMCcsXG4gICAgICAgICAgdHJ1ZSxcbiAgICAgICAgICAxMDAyLFxuICAgICAgICAgICdXU19FUlJfSU5WQUxJRF9PUENPREUnXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuX29wY29kZSA9IHRoaXMuX2ZyYWdtZW50ZWQ7XG4gICAgfSBlbHNlIGlmICh0aGlzLl9vcGNvZGUgPT09IDB4MDEgfHwgdGhpcy5fb3Bjb2RlID09PSAweDAyKSB7XG4gICAgICBpZiAodGhpcy5fZnJhZ21lbnRlZCkge1xuICAgICAgICB0aGlzLl9sb29wID0gZmFsc2U7XG4gICAgICAgIHJldHVybiBlcnJvcihcbiAgICAgICAgICBSYW5nZUVycm9yLFxuICAgICAgICAgIGBpbnZhbGlkIG9wY29kZSAke3RoaXMuX29wY29kZX1gLFxuICAgICAgICAgIHRydWUsXG4gICAgICAgICAgMTAwMixcbiAgICAgICAgICAnV1NfRVJSX0lOVkFMSURfT1BDT0RFJ1xuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICB0aGlzLl9jb21wcmVzc2VkID0gY29tcHJlc3NlZDtcbiAgICB9IGVsc2UgaWYgKHRoaXMuX29wY29kZSA+IDB4MDcgJiYgdGhpcy5fb3Bjb2RlIDwgMHgwYikge1xuICAgICAgaWYgKCF0aGlzLl9maW4pIHtcbiAgICAgICAgdGhpcy5fbG9vcCA9IGZhbHNlO1xuICAgICAgICByZXR1cm4gZXJyb3IoXG4gICAgICAgICAgUmFuZ2VFcnJvcixcbiAgICAgICAgICAnRklOIG11c3QgYmUgc2V0JyxcbiAgICAgICAgICB0cnVlLFxuICAgICAgICAgIDEwMDIsXG4gICAgICAgICAgJ1dTX0VSUl9FWFBFQ1RFRF9GSU4nXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIGlmIChjb21wcmVzc2VkKSB7XG4gICAgICAgIHRoaXMuX2xvb3AgPSBmYWxzZTtcbiAgICAgICAgcmV0dXJuIGVycm9yKFxuICAgICAgICAgIFJhbmdlRXJyb3IsXG4gICAgICAgICAgJ1JTVjEgbXVzdCBiZSBjbGVhcicsXG4gICAgICAgICAgdHJ1ZSxcbiAgICAgICAgICAxMDAyLFxuICAgICAgICAgICdXU19FUlJfVU5FWFBFQ1RFRF9SU1ZfMSdcbiAgICAgICAgKTtcbiAgICAgIH1cblxuICAgICAgaWYgKFxuICAgICAgICB0aGlzLl9wYXlsb2FkTGVuZ3RoID4gMHg3ZCB8fFxuICAgICAgICAodGhpcy5fb3Bjb2RlID09PSAweDA4ICYmIHRoaXMuX3BheWxvYWRMZW5ndGggPT09IDEpXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5fbG9vcCA9IGZhbHNlO1xuICAgICAgICByZXR1cm4gZXJyb3IoXG4gICAgICAgICAgUmFuZ2VFcnJvcixcbiAgICAgICAgICBgaW52YWxpZCBwYXlsb2FkIGxlbmd0aCAke3RoaXMuX3BheWxvYWRMZW5ndGh9YCxcbiAgICAgICAgICB0cnVlLFxuICAgICAgICAgIDEwMDIsXG4gICAgICAgICAgJ1dTX0VSUl9JTlZBTElEX0NPTlRST0xfUEFZTE9BRF9MRU5HVEgnXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2xvb3AgPSBmYWxzZTtcbiAgICAgIHJldHVybiBlcnJvcihcbiAgICAgICAgUmFuZ2VFcnJvcixcbiAgICAgICAgYGludmFsaWQgb3Bjb2RlICR7dGhpcy5fb3Bjb2RlfWAsXG4gICAgICAgIHRydWUsXG4gICAgICAgIDEwMDIsXG4gICAgICAgICdXU19FUlJfSU5WQUxJRF9PUENPREUnXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5fZmluICYmICF0aGlzLl9mcmFnbWVudGVkKSB0aGlzLl9mcmFnbWVudGVkID0gdGhpcy5fb3Bjb2RlO1xuICAgIHRoaXMuX21hc2tlZCA9IChidWZbMV0gJiAweDgwKSA9PT0gMHg4MDtcblxuICAgIGlmICh0aGlzLl9pc1NlcnZlcikge1xuICAgICAgaWYgKCF0aGlzLl9tYXNrZWQpIHtcbiAgICAgICAgdGhpcy5fbG9vcCA9IGZhbHNlO1xuICAgICAgICByZXR1cm4gZXJyb3IoXG4gICAgICAgICAgUmFuZ2VFcnJvcixcbiAgICAgICAgICAnTUFTSyBtdXN0IGJlIHNldCcsXG4gICAgICAgICAgdHJ1ZSxcbiAgICAgICAgICAxMDAyLFxuICAgICAgICAgICdXU19FUlJfRVhQRUNURURfTUFTSydcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHRoaXMuX21hc2tlZCkge1xuICAgICAgdGhpcy5fbG9vcCA9IGZhbHNlO1xuICAgICAgcmV0dXJuIGVycm9yKFxuICAgICAgICBSYW5nZUVycm9yLFxuICAgICAgICAnTUFTSyBtdXN0IGJlIGNsZWFyJyxcbiAgICAgICAgdHJ1ZSxcbiAgICAgICAgMTAwMixcbiAgICAgICAgJ1dTX0VSUl9VTkVYUEVDVEVEX01BU0snXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9wYXlsb2FkTGVuZ3RoID09PSAxMjYpIHRoaXMuX3N0YXRlID0gR0VUX1BBWUxPQURfTEVOR1RIXzE2O1xuICAgIGVsc2UgaWYgKHRoaXMuX3BheWxvYWRMZW5ndGggPT09IDEyNykgdGhpcy5fc3RhdGUgPSBHRVRfUEFZTE9BRF9MRU5HVEhfNjQ7XG4gICAgZWxzZSByZXR1cm4gdGhpcy5oYXZlTGVuZ3RoKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyBleHRlbmRlZCBwYXlsb2FkIGxlbmd0aCAoNysxNikuXG4gICAqXG4gICAqIEByZXR1cm4geyhSYW5nZUVycm9yfHVuZGVmaW5lZCl9IEEgcG9zc2libGUgZXJyb3JcbiAgICogQHByaXZhdGVcbiAgICovXG4gIGdldFBheWxvYWRMZW5ndGgxNigpIHtcbiAgICBpZiAodGhpcy5fYnVmZmVyZWRCeXRlcyA8IDIpIHtcbiAgICAgIHRoaXMuX2xvb3AgPSBmYWxzZTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9wYXlsb2FkTGVuZ3RoID0gdGhpcy5jb25zdW1lKDIpLnJlYWRVSW50MTZCRSgwKTtcbiAgICByZXR1cm4gdGhpcy5oYXZlTGVuZ3RoKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyBleHRlbmRlZCBwYXlsb2FkIGxlbmd0aCAoNys2NCkuXG4gICAqXG4gICAqIEByZXR1cm4geyhSYW5nZUVycm9yfHVuZGVmaW5lZCl9IEEgcG9zc2libGUgZXJyb3JcbiAgICogQHByaXZhdGVcbiAgICovXG4gIGdldFBheWxvYWRMZW5ndGg2NCgpIHtcbiAgICBpZiAodGhpcy5fYnVmZmVyZWRCeXRlcyA8IDgpIHtcbiAgICAgIHRoaXMuX2xvb3AgPSBmYWxzZTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBidWYgPSB0aGlzLmNvbnN1bWUoOCk7XG4gICAgY29uc3QgbnVtID0gYnVmLnJlYWRVSW50MzJCRSgwKTtcblxuICAgIC8vXG4gICAgLy8gVGhlIG1heGltdW0gc2FmZSBpbnRlZ2VyIGluIEphdmFTY3JpcHQgaXMgMl41MyAtIDEuIEFuIGVycm9yIGlzIHJldHVybmVkXG4gICAgLy8gaWYgcGF5bG9hZCBsZW5ndGggaXMgZ3JlYXRlciB0aGFuIHRoaXMgbnVtYmVyLlxuICAgIC8vXG4gICAgaWYgKG51bSA+IE1hdGgucG93KDIsIDUzIC0gMzIpIC0gMSkge1xuICAgICAgdGhpcy5fbG9vcCA9IGZhbHNlO1xuICAgICAgcmV0dXJuIGVycm9yKFxuICAgICAgICBSYW5nZUVycm9yLFxuICAgICAgICAnVW5zdXBwb3J0ZWQgV2ViU29ja2V0IGZyYW1lOiBwYXlsb2FkIGxlbmd0aCA+IDJeNTMgLSAxJyxcbiAgICAgICAgZmFsc2UsXG4gICAgICAgIDEwMDksXG4gICAgICAgICdXU19FUlJfVU5TVVBQT1JURURfREFUQV9QQVlMT0FEX0xFTkdUSCdcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhpcy5fcGF5bG9hZExlbmd0aCA9IG51bSAqIE1hdGgucG93KDIsIDMyKSArIGJ1Zi5yZWFkVUludDMyQkUoNCk7XG4gICAgcmV0dXJuIHRoaXMuaGF2ZUxlbmd0aCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFBheWxvYWQgbGVuZ3RoIGhhcyBiZWVuIHJlYWQuXG4gICAqXG4gICAqIEByZXR1cm4geyhSYW5nZUVycm9yfHVuZGVmaW5lZCl9IEEgcG9zc2libGUgZXJyb3JcbiAgICogQHByaXZhdGVcbiAgICovXG4gIGhhdmVMZW5ndGgoKSB7XG4gICAgaWYgKHRoaXMuX3BheWxvYWRMZW5ndGggJiYgdGhpcy5fb3Bjb2RlIDwgMHgwOCkge1xuICAgICAgdGhpcy5fdG90YWxQYXlsb2FkTGVuZ3RoICs9IHRoaXMuX3BheWxvYWRMZW5ndGg7XG4gICAgICBpZiAodGhpcy5fdG90YWxQYXlsb2FkTGVuZ3RoID4gdGhpcy5fbWF4UGF5bG9hZCAmJiB0aGlzLl9tYXhQYXlsb2FkID4gMCkge1xuICAgICAgICB0aGlzLl9sb29wID0gZmFsc2U7XG4gICAgICAgIHJldHVybiBlcnJvcihcbiAgICAgICAgICBSYW5nZUVycm9yLFxuICAgICAgICAgICdNYXggcGF5bG9hZCBzaXplIGV4Y2VlZGVkJyxcbiAgICAgICAgICBmYWxzZSxcbiAgICAgICAgICAxMDA5LFxuICAgICAgICAgICdXU19FUlJfVU5TVVBQT1JURURfTUVTU0FHRV9MRU5HVEgnXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX21hc2tlZCkgdGhpcy5fc3RhdGUgPSBHRVRfTUFTSztcbiAgICBlbHNlIHRoaXMuX3N0YXRlID0gR0VUX0RBVEE7XG4gIH1cblxuICAvKipcbiAgICogUmVhZHMgbWFzayBieXRlcy5cbiAgICpcbiAgICogQHByaXZhdGVcbiAgICovXG4gIGdldE1hc2soKSB7XG4gICAgaWYgKHRoaXMuX2J1ZmZlcmVkQnl0ZXMgPCA0KSB7XG4gICAgICB0aGlzLl9sb29wID0gZmFsc2U7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fbWFzayA9IHRoaXMuY29uc3VtZSg0KTtcbiAgICB0aGlzLl9zdGF0ZSA9IEdFVF9EQVRBO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlYWRzIGRhdGEgYnl0ZXMuXG4gICAqXG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IGNiIENhbGxiYWNrXG4gICAqIEByZXR1cm4geyhFcnJvcnxSYW5nZUVycm9yfHVuZGVmaW5lZCl9IEEgcG9zc2libGUgZXJyb3JcbiAgICogQHByaXZhdGVcbiAgICovXG4gIGdldERhdGEoY2IpIHtcbiAgICBsZXQgZGF0YSA9IEVNUFRZX0JVRkZFUjtcblxuICAgIGlmICh0aGlzLl9wYXlsb2FkTGVuZ3RoKSB7XG4gICAgICBpZiAodGhpcy5fYnVmZmVyZWRCeXRlcyA8IHRoaXMuX3BheWxvYWRMZW5ndGgpIHtcbiAgICAgICAgdGhpcy5fbG9vcCA9IGZhbHNlO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGRhdGEgPSB0aGlzLmNvbnN1bWUodGhpcy5fcGF5bG9hZExlbmd0aCk7XG5cbiAgICAgIGlmIChcbiAgICAgICAgdGhpcy5fbWFza2VkICYmXG4gICAgICAgICh0aGlzLl9tYXNrWzBdIHwgdGhpcy5fbWFza1sxXSB8IHRoaXMuX21hc2tbMl0gfCB0aGlzLl9tYXNrWzNdKSAhPT0gMFxuICAgICAgKSB7XG4gICAgICAgIHVubWFzayhkYXRhLCB0aGlzLl9tYXNrKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodGhpcy5fb3Bjb2RlID4gMHgwNykgcmV0dXJuIHRoaXMuY29udHJvbE1lc3NhZ2UoZGF0YSk7XG5cbiAgICBpZiAodGhpcy5fY29tcHJlc3NlZCkge1xuICAgICAgdGhpcy5fc3RhdGUgPSBJTkZMQVRJTkc7XG4gICAgICB0aGlzLmRlY29tcHJlc3MoZGF0YSwgY2IpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChkYXRhLmxlbmd0aCkge1xuICAgICAgLy9cbiAgICAgIC8vIFRoaXMgbWVzc2FnZSBpcyBub3QgY29tcHJlc3NlZCBzbyBpdHMgbGVuZ3RoIGlzIHRoZSBzdW0gb2YgdGhlIHBheWxvYWRcbiAgICAgIC8vIGxlbmd0aCBvZiBhbGwgZnJhZ21lbnRzLlxuICAgICAgLy9cbiAgICAgIHRoaXMuX21lc3NhZ2VMZW5ndGggPSB0aGlzLl90b3RhbFBheWxvYWRMZW5ndGg7XG4gICAgICB0aGlzLl9mcmFnbWVudHMucHVzaChkYXRhKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5kYXRhTWVzc2FnZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIERlY29tcHJlc3NlcyBkYXRhLlxuICAgKlxuICAgKiBAcGFyYW0ge0J1ZmZlcn0gZGF0YSBDb21wcmVzc2VkIGRhdGFcbiAgICogQHBhcmFtIHtGdW5jdGlvbn0gY2IgQ2FsbGJhY2tcbiAgICogQHByaXZhdGVcbiAgICovXG4gIGRlY29tcHJlc3MoZGF0YSwgY2IpIHtcbiAgICBjb25zdCBwZXJNZXNzYWdlRGVmbGF0ZSA9IHRoaXMuX2V4dGVuc2lvbnNbUGVyTWVzc2FnZURlZmxhdGUuZXh0ZW5zaW9uTmFtZV07XG5cbiAgICBwZXJNZXNzYWdlRGVmbGF0ZS5kZWNvbXByZXNzKGRhdGEsIHRoaXMuX2ZpbiwgKGVyciwgYnVmKSA9PiB7XG4gICAgICBpZiAoZXJyKSByZXR1cm4gY2IoZXJyKTtcblxuICAgICAgaWYgKGJ1Zi5sZW5ndGgpIHtcbiAgICAgICAgdGhpcy5fbWVzc2FnZUxlbmd0aCArPSBidWYubGVuZ3RoO1xuICAgICAgICBpZiAodGhpcy5fbWVzc2FnZUxlbmd0aCA+IHRoaXMuX21heFBheWxvYWQgJiYgdGhpcy5fbWF4UGF5bG9hZCA+IDApIHtcbiAgICAgICAgICByZXR1cm4gY2IoXG4gICAgICAgICAgICBlcnJvcihcbiAgICAgICAgICAgICAgUmFuZ2VFcnJvcixcbiAgICAgICAgICAgICAgJ01heCBwYXlsb2FkIHNpemUgZXhjZWVkZWQnLFxuICAgICAgICAgICAgICBmYWxzZSxcbiAgICAgICAgICAgICAgMTAwOSxcbiAgICAgICAgICAgICAgJ1dTX0VSUl9VTlNVUFBPUlRFRF9NRVNTQUdFX0xFTkdUSCdcbiAgICAgICAgICAgIClcbiAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fZnJhZ21lbnRzLnB1c2goYnVmKTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgZXIgPSB0aGlzLmRhdGFNZXNzYWdlKCk7XG4gICAgICBpZiAoZXIpIHJldHVybiBjYihlcik7XG5cbiAgICAgIHRoaXMuc3RhcnRMb29wKGNiKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBIYW5kbGVzIGEgZGF0YSBtZXNzYWdlLlxuICAgKlxuICAgKiBAcmV0dXJuIHsoRXJyb3J8dW5kZWZpbmVkKX0gQSBwb3NzaWJsZSBlcnJvclxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgZGF0YU1lc3NhZ2UoKSB7XG4gICAgaWYgKHRoaXMuX2Zpbikge1xuICAgICAgY29uc3QgbWVzc2FnZUxlbmd0aCA9IHRoaXMuX21lc3NhZ2VMZW5ndGg7XG4gICAgICBjb25zdCBmcmFnbWVudHMgPSB0aGlzLl9mcmFnbWVudHM7XG5cbiAgICAgIHRoaXMuX3RvdGFsUGF5bG9hZExlbmd0aCA9IDA7XG4gICAgICB0aGlzLl9tZXNzYWdlTGVuZ3RoID0gMDtcbiAgICAgIHRoaXMuX2ZyYWdtZW50ZWQgPSAwO1xuICAgICAgdGhpcy5fZnJhZ21lbnRzID0gW107XG5cbiAgICAgIGlmICh0aGlzLl9vcGNvZGUgPT09IDIpIHtcbiAgICAgICAgbGV0IGRhdGE7XG5cbiAgICAgICAgaWYgKHRoaXMuX2JpbmFyeVR5cGUgPT09ICdub2RlYnVmZmVyJykge1xuICAgICAgICAgIGRhdGEgPSBjb25jYXQoZnJhZ21lbnRzLCBtZXNzYWdlTGVuZ3RoKTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLl9iaW5hcnlUeXBlID09PSAnYXJyYXlidWZmZXInKSB7XG4gICAgICAgICAgZGF0YSA9IHRvQXJyYXlCdWZmZXIoY29uY2F0KGZyYWdtZW50cywgbWVzc2FnZUxlbmd0aCkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGRhdGEgPSBmcmFnbWVudHM7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmVtaXQoJ21lc3NhZ2UnLCBkYXRhLCB0cnVlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IGJ1ZiA9IGNvbmNhdChmcmFnbWVudHMsIG1lc3NhZ2VMZW5ndGgpO1xuXG4gICAgICAgIGlmICghdGhpcy5fc2tpcFVURjhWYWxpZGF0aW9uICYmICFpc1ZhbGlkVVRGOChidWYpKSB7XG4gICAgICAgICAgdGhpcy5fbG9vcCA9IGZhbHNlO1xuICAgICAgICAgIHJldHVybiBlcnJvcihcbiAgICAgICAgICAgIEVycm9yLFxuICAgICAgICAgICAgJ2ludmFsaWQgVVRGLTggc2VxdWVuY2UnLFxuICAgICAgICAgICAgdHJ1ZSxcbiAgICAgICAgICAgIDEwMDcsXG4gICAgICAgICAgICAnV1NfRVJSX0lOVkFMSURfVVRGOCdcbiAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5lbWl0KCdtZXNzYWdlJywgYnVmLCBmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5fc3RhdGUgPSBXQUlUX01JQ1JPVEFTSztcbiAgfVxuXG4gIC8qKlxuICAgKiBIYW5kbGVzIGEgY29udHJvbCBtZXNzYWdlLlxuICAgKlxuICAgKiBAcGFyYW0ge0J1ZmZlcn0gZGF0YSBEYXRhIHRvIGhhbmRsZVxuICAgKiBAcmV0dXJuIHsoRXJyb3J8UmFuZ2VFcnJvcnx1bmRlZmluZWQpfSBBIHBvc3NpYmxlIGVycm9yXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBjb250cm9sTWVzc2FnZShkYXRhKSB7XG4gICAgaWYgKHRoaXMuX29wY29kZSA9PT0gMHgwOCkge1xuICAgICAgdGhpcy5fbG9vcCA9IGZhbHNlO1xuXG4gICAgICBpZiAoZGF0YS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgdGhpcy5lbWl0KCdjb25jbHVkZScsIDEwMDUsIEVNUFRZX0JVRkZFUik7XG4gICAgICAgIHRoaXMuZW5kKCk7XG5cbiAgICAgICAgdGhpcy5fc3RhdGUgPSBHRVRfSU5GTztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IGNvZGUgPSBkYXRhLnJlYWRVSW50MTZCRSgwKTtcblxuICAgICAgICBpZiAoIWlzVmFsaWRTdGF0dXNDb2RlKGNvZGUpKSB7XG4gICAgICAgICAgcmV0dXJuIGVycm9yKFxuICAgICAgICAgICAgUmFuZ2VFcnJvcixcbiAgICAgICAgICAgIGBpbnZhbGlkIHN0YXR1cyBjb2RlICR7Y29kZX1gLFxuICAgICAgICAgICAgdHJ1ZSxcbiAgICAgICAgICAgIDEwMDIsXG4gICAgICAgICAgICAnV1NfRVJSX0lOVkFMSURfQ0xPU0VfQ09ERSdcbiAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgYnVmID0gbmV3IEZhc3RCdWZmZXIoXG4gICAgICAgICAgZGF0YS5idWZmZXIsXG4gICAgICAgICAgZGF0YS5ieXRlT2Zmc2V0ICsgMixcbiAgICAgICAgICBkYXRhLmxlbmd0aCAtIDJcbiAgICAgICAgKTtcblxuICAgICAgICBpZiAoIXRoaXMuX3NraXBVVEY4VmFsaWRhdGlvbiAmJiAhaXNWYWxpZFVURjgoYnVmKSkge1xuICAgICAgICAgIHJldHVybiBlcnJvcihcbiAgICAgICAgICAgIEVycm9yLFxuICAgICAgICAgICAgJ2ludmFsaWQgVVRGLTggc2VxdWVuY2UnLFxuICAgICAgICAgICAgdHJ1ZSxcbiAgICAgICAgICAgIDEwMDcsXG4gICAgICAgICAgICAnV1NfRVJSX0lOVkFMSURfVVRGOCdcbiAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5lbWl0KCdjb25jbHVkZScsIGNvZGUsIGJ1Zik7XG4gICAgICAgIHRoaXMuZW5kKCk7XG5cbiAgICAgICAgdGhpcy5fc3RhdGUgPSBHRVRfSU5GTztcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHRoaXMuX29wY29kZSA9PT0gMHgwOSkge1xuICAgICAgdGhpcy5lbWl0KCdwaW5nJywgZGF0YSk7XG4gICAgICB0aGlzLl9zdGF0ZSA9IFdBSVRfTUlDUk9UQVNLO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmVtaXQoJ3BvbmcnLCBkYXRhKTtcbiAgICAgIHRoaXMuX3N0YXRlID0gV0FJVF9NSUNST1RBU0s7XG4gICAgfVxuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0gUmVjZWl2ZXI7XG5cbi8qKlxuICogQnVpbGRzIGFuIGVycm9yIG9iamVjdC5cbiAqXG4gKiBAcGFyYW0ge2Z1bmN0aW9uKG5ldzpFcnJvcnxSYW5nZUVycm9yKX0gRXJyb3JDdG9yIFRoZSBlcnJvciBjb25zdHJ1Y3RvclxuICogQHBhcmFtIHtTdHJpbmd9IG1lc3NhZ2UgVGhlIGVycm9yIG1lc3NhZ2VcbiAqIEBwYXJhbSB7Qm9vbGVhbn0gcHJlZml4IFNwZWNpZmllcyB3aGV0aGVyIG9yIG5vdCB0byBhZGQgYSBkZWZhdWx0IHByZWZpeCB0b1xuICogICAgIGBtZXNzYWdlYFxuICogQHBhcmFtIHtOdW1iZXJ9IHN0YXR1c0NvZGUgVGhlIHN0YXR1cyBjb2RlXG4gKiBAcGFyYW0ge1N0cmluZ30gZXJyb3JDb2RlIFRoZSBleHBvc2VkIGVycm9yIGNvZGVcbiAqIEByZXR1cm4geyhFcnJvcnxSYW5nZUVycm9yKX0gVGhlIGVycm9yXG4gKiBAcHJpdmF0ZVxuICovXG5mdW5jdGlvbiBlcnJvcihFcnJvckN0b3IsIG1lc3NhZ2UsIHByZWZpeCwgc3RhdHVzQ29kZSwgZXJyb3JDb2RlKSB7XG4gIGNvbnN0IGVyciA9IG5ldyBFcnJvckN0b3IoXG4gICAgcHJlZml4ID8gYEludmFsaWQgV2ViU29ja2V0IGZyYW1lOiAke21lc3NhZ2V9YCA6IG1lc3NhZ2VcbiAgKTtcblxuICBFcnJvci5jYXB0dXJlU3RhY2tUcmFjZShlcnIsIGVycm9yKTtcbiAgZXJyLmNvZGUgPSBlcnJvckNvZGU7XG4gIGVycltrU3RhdHVzQ29kZV0gPSBzdGF0dXNDb2RlO1xuICByZXR1cm4gZXJyO1xufVxuXG4vKipcbiAqIEEgc2hpbSBmb3IgYHF1ZXVlTWljcm90YXNrKClgLlxuICpcbiAqIEBwYXJhbSB7RnVuY3Rpb259IGNiIENhbGxiYWNrXG4gKi9cbmZ1bmN0aW9uIHF1ZXVlTWljcm90YXNrU2hpbShjYikge1xuICBwcm9taXNlLnRoZW4oY2IpLmNhdGNoKHRocm93RXJyb3JOZXh0VGljayk7XG59XG5cbi8qKlxuICogVGhyb3dzIGFuIGVycm9yLlxuICpcbiAqIEBwYXJhbSB7RXJyb3J9IGVyciBUaGUgZXJyb3IgdG8gdGhyb3dcbiAqIEBwcml2YXRlXG4gKi9cbmZ1bmN0aW9uIHRocm93RXJyb3IoZXJyKSB7XG4gIHRocm93IGVycjtcbn1cblxuLyoqXG4gKiBUaHJvd3MgYW4gZXJyb3IgaW4gdGhlIG5leHQgdGljay5cbiAqXG4gKiBAcGFyYW0ge0Vycm9yfSBlcnIgVGhlIGVycm9yIHRvIHRocm93XG4gKiBAcHJpdmF0ZVxuICovXG5mdW5jdGlvbiB0aHJvd0Vycm9yTmV4dFRpY2soZXJyKSB7XG4gIHByb2Nlc3MubmV4dFRpY2sodGhyb3dFcnJvciwgZXJyKTtcbn1cbiIsICIvKiBlc2xpbnQgbm8tdW51c2VkLXZhcnM6IFtcImVycm9yXCIsIHsgXCJ2YXJzSWdub3JlUGF0dGVyblwiOiBcIl5EdXBsZXhcIiB9XSAqL1xuXG4ndXNlIHN0cmljdCc7XG5cbmNvbnN0IHsgRHVwbGV4IH0gPSByZXF1aXJlKCdzdHJlYW0nKTtcbmNvbnN0IHsgcmFuZG9tRmlsbFN5bmMgfSA9IHJlcXVpcmUoJ2NyeXB0bycpO1xuXG5jb25zdCBQZXJNZXNzYWdlRGVmbGF0ZSA9IHJlcXVpcmUoJy4vcGVybWVzc2FnZS1kZWZsYXRlJyk7XG5jb25zdCB7IEVNUFRZX0JVRkZFUiB9ID0gcmVxdWlyZSgnLi9jb25zdGFudHMnKTtcbmNvbnN0IHsgaXNWYWxpZFN0YXR1c0NvZGUgfSA9IHJlcXVpcmUoJy4vdmFsaWRhdGlvbicpO1xuY29uc3QgeyBtYXNrOiBhcHBseU1hc2ssIHRvQnVmZmVyIH0gPSByZXF1aXJlKCcuL2J1ZmZlci11dGlsJyk7XG5cbmNvbnN0IGtCeXRlTGVuZ3RoID0gU3ltYm9sKCdrQnl0ZUxlbmd0aCcpO1xuY29uc3QgbWFza0J1ZmZlciA9IEJ1ZmZlci5hbGxvYyg0KTtcblxuLyoqXG4gKiBIeUJpIFNlbmRlciBpbXBsZW1lbnRhdGlvbi5cbiAqL1xuY2xhc3MgU2VuZGVyIHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBTZW5kZXIgaW5zdGFuY2UuXG4gICAqXG4gICAqIEBwYXJhbSB7RHVwbGV4fSBzb2NrZXQgVGhlIGNvbm5lY3Rpb24gc29ja2V0XG4gICAqIEBwYXJhbSB7T2JqZWN0fSBbZXh0ZW5zaW9uc10gQW4gb2JqZWN0IGNvbnRhaW5pbmcgdGhlIG5lZ290aWF0ZWQgZXh0ZW5zaW9uc1xuICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbZ2VuZXJhdGVNYXNrXSBUaGUgZnVuY3Rpb24gdXNlZCB0byBnZW5lcmF0ZSB0aGUgbWFza2luZ1xuICAgKiAgICAga2V5XG4gICAqL1xuICBjb25zdHJ1Y3Rvcihzb2NrZXQsIGV4dGVuc2lvbnMsIGdlbmVyYXRlTWFzaykge1xuICAgIHRoaXMuX2V4dGVuc2lvbnMgPSBleHRlbnNpb25zIHx8IHt9O1xuXG4gICAgaWYgKGdlbmVyYXRlTWFzaykge1xuICAgICAgdGhpcy5fZ2VuZXJhdGVNYXNrID0gZ2VuZXJhdGVNYXNrO1xuICAgICAgdGhpcy5fbWFza0J1ZmZlciA9IEJ1ZmZlci5hbGxvYyg0KTtcbiAgICB9XG5cbiAgICB0aGlzLl9zb2NrZXQgPSBzb2NrZXQ7XG5cbiAgICB0aGlzLl9maXJzdEZyYWdtZW50ID0gdHJ1ZTtcbiAgICB0aGlzLl9jb21wcmVzcyA9IGZhbHNlO1xuXG4gICAgdGhpcy5fYnVmZmVyZWRCeXRlcyA9IDA7XG4gICAgdGhpcy5fZGVmbGF0aW5nID0gZmFsc2U7XG4gICAgdGhpcy5fcXVldWUgPSBbXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGcmFtZXMgYSBwaWVjZSBvZiBkYXRhIGFjY29yZGluZyB0byB0aGUgSHlCaSBXZWJTb2NrZXQgcHJvdG9jb2wuXG4gICAqXG4gICAqIEBwYXJhbSB7KEJ1ZmZlcnxTdHJpbmcpfSBkYXRhIFRoZSBkYXRhIHRvIGZyYW1lXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zIE9wdGlvbnMgb2JqZWN0XG4gICAqIEBwYXJhbSB7Qm9vbGVhbn0gW29wdGlvbnMuZmluPWZhbHNlXSBTcGVjaWZpZXMgd2hldGhlciBvciBub3QgdG8gc2V0IHRoZVxuICAgKiAgICAgRklOIGJpdFxuICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbb3B0aW9ucy5nZW5lcmF0ZU1hc2tdIFRoZSBmdW5jdGlvbiB1c2VkIHRvIGdlbmVyYXRlIHRoZVxuICAgKiAgICAgbWFza2luZyBrZXlcbiAgICogQHBhcmFtIHtCb29sZWFufSBbb3B0aW9ucy5tYXNrPWZhbHNlXSBTcGVjaWZpZXMgd2hldGhlciBvciBub3QgdG8gbWFza1xuICAgKiAgICAgYGRhdGFgXG4gICAqIEBwYXJhbSB7QnVmZmVyfSBbb3B0aW9ucy5tYXNrQnVmZmVyXSBUaGUgYnVmZmVyIHVzZWQgdG8gc3RvcmUgdGhlIG1hc2tpbmdcbiAgICogICAgIGtleVxuICAgKiBAcGFyYW0ge051bWJlcn0gb3B0aW9ucy5vcGNvZGUgVGhlIG9wY29kZVxuICAgKiBAcGFyYW0ge0Jvb2xlYW59IFtvcHRpb25zLnJlYWRPbmx5PWZhbHNlXSBTcGVjaWZpZXMgd2hldGhlciBgZGF0YWAgY2FuIGJlXG4gICAqICAgICBtb2RpZmllZFxuICAgKiBAcGFyYW0ge0Jvb2xlYW59IFtvcHRpb25zLnJzdjE9ZmFsc2VdIFNwZWNpZmllcyB3aGV0aGVyIG9yIG5vdCB0byBzZXQgdGhlXG4gICAqICAgICBSU1YxIGJpdFxuICAgKiBAcmV0dXJuIHsoQnVmZmVyfFN0cmluZylbXX0gVGhlIGZyYW1lZCBkYXRhXG4gICAqIEBwdWJsaWNcbiAgICovXG4gIHN0YXRpYyBmcmFtZShkYXRhLCBvcHRpb25zKSB7XG4gICAgbGV0IG1hc2s7XG4gICAgbGV0IG1lcmdlID0gZmFsc2U7XG4gICAgbGV0IG9mZnNldCA9IDI7XG4gICAgbGV0IHNraXBNYXNraW5nID0gZmFsc2U7XG5cbiAgICBpZiAob3B0aW9ucy5tYXNrKSB7XG4gICAgICBtYXNrID0gb3B0aW9ucy5tYXNrQnVmZmVyIHx8IG1hc2tCdWZmZXI7XG5cbiAgICAgIGlmIChvcHRpb25zLmdlbmVyYXRlTWFzaykge1xuICAgICAgICBvcHRpb25zLmdlbmVyYXRlTWFzayhtYXNrKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJhbmRvbUZpbGxTeW5jKG1hc2ssIDAsIDQpO1xuICAgICAgfVxuXG4gICAgICBza2lwTWFza2luZyA9IChtYXNrWzBdIHwgbWFza1sxXSB8IG1hc2tbMl0gfCBtYXNrWzNdKSA9PT0gMDtcbiAgICAgIG9mZnNldCA9IDY7XG4gICAgfVxuXG4gICAgbGV0IGRhdGFMZW5ndGg7XG5cbiAgICBpZiAodHlwZW9mIGRhdGEgPT09ICdzdHJpbmcnKSB7XG4gICAgICBpZiAoXG4gICAgICAgICghb3B0aW9ucy5tYXNrIHx8IHNraXBNYXNraW5nKSAmJlxuICAgICAgICBvcHRpb25zW2tCeXRlTGVuZ3RoXSAhPT0gdW5kZWZpbmVkXG4gICAgICApIHtcbiAgICAgICAgZGF0YUxlbmd0aCA9IG9wdGlvbnNba0J5dGVMZW5ndGhdO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZGF0YSA9IEJ1ZmZlci5mcm9tKGRhdGEpO1xuICAgICAgICBkYXRhTGVuZ3RoID0gZGF0YS5sZW5ndGg7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGRhdGFMZW5ndGggPSBkYXRhLmxlbmd0aDtcbiAgICAgIG1lcmdlID0gb3B0aW9ucy5tYXNrICYmIG9wdGlvbnMucmVhZE9ubHkgJiYgIXNraXBNYXNraW5nO1xuICAgIH1cblxuICAgIGxldCBwYXlsb2FkTGVuZ3RoID0gZGF0YUxlbmd0aDtcblxuICAgIGlmIChkYXRhTGVuZ3RoID49IDY1NTM2KSB7XG4gICAgICBvZmZzZXQgKz0gODtcbiAgICAgIHBheWxvYWRMZW5ndGggPSAxMjc7XG4gICAgfSBlbHNlIGlmIChkYXRhTGVuZ3RoID4gMTI1KSB7XG4gICAgICBvZmZzZXQgKz0gMjtcbiAgICAgIHBheWxvYWRMZW5ndGggPSAxMjY7XG4gICAgfVxuXG4gICAgY29uc3QgdGFyZ2V0ID0gQnVmZmVyLmFsbG9jVW5zYWZlKG1lcmdlID8gZGF0YUxlbmd0aCArIG9mZnNldCA6IG9mZnNldCk7XG5cbiAgICB0YXJnZXRbMF0gPSBvcHRpb25zLmZpbiA/IG9wdGlvbnMub3Bjb2RlIHwgMHg4MCA6IG9wdGlvbnMub3Bjb2RlO1xuICAgIGlmIChvcHRpb25zLnJzdjEpIHRhcmdldFswXSB8PSAweDQwO1xuXG4gICAgdGFyZ2V0WzFdID0gcGF5bG9hZExlbmd0aDtcblxuICAgIGlmIChwYXlsb2FkTGVuZ3RoID09PSAxMjYpIHtcbiAgICAgIHRhcmdldC53cml0ZVVJbnQxNkJFKGRhdGFMZW5ndGgsIDIpO1xuICAgIH0gZWxzZSBpZiAocGF5bG9hZExlbmd0aCA9PT0gMTI3KSB7XG4gICAgICB0YXJnZXRbMl0gPSB0YXJnZXRbM10gPSAwO1xuICAgICAgdGFyZ2V0LndyaXRlVUludEJFKGRhdGFMZW5ndGgsIDQsIDYpO1xuICAgIH1cblxuICAgIGlmICghb3B0aW9ucy5tYXNrKSByZXR1cm4gW3RhcmdldCwgZGF0YV07XG5cbiAgICB0YXJnZXRbMV0gfD0gMHg4MDtcbiAgICB0YXJnZXRbb2Zmc2V0IC0gNF0gPSBtYXNrWzBdO1xuICAgIHRhcmdldFtvZmZzZXQgLSAzXSA9IG1hc2tbMV07XG4gICAgdGFyZ2V0W29mZnNldCAtIDJdID0gbWFza1syXTtcbiAgICB0YXJnZXRbb2Zmc2V0IC0gMV0gPSBtYXNrWzNdO1xuXG4gICAgaWYgKHNraXBNYXNraW5nKSByZXR1cm4gW3RhcmdldCwgZGF0YV07XG5cbiAgICBpZiAobWVyZ2UpIHtcbiAgICAgIGFwcGx5TWFzayhkYXRhLCBtYXNrLCB0YXJnZXQsIG9mZnNldCwgZGF0YUxlbmd0aCk7XG4gICAgICByZXR1cm4gW3RhcmdldF07XG4gICAgfVxuXG4gICAgYXBwbHlNYXNrKGRhdGEsIG1hc2ssIGRhdGEsIDAsIGRhdGFMZW5ndGgpO1xuICAgIHJldHVybiBbdGFyZ2V0LCBkYXRhXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZW5kcyBhIGNsb3NlIG1lc3NhZ2UgdG8gdGhlIG90aGVyIHBlZXIuXG4gICAqXG4gICAqIEBwYXJhbSB7TnVtYmVyfSBbY29kZV0gVGhlIHN0YXR1cyBjb2RlIGNvbXBvbmVudCBvZiB0aGUgYm9keVxuICAgKiBAcGFyYW0geyhTdHJpbmd8QnVmZmVyKX0gW2RhdGFdIFRoZSBtZXNzYWdlIGNvbXBvbmVudCBvZiB0aGUgYm9keVxuICAgKiBAcGFyYW0ge0Jvb2xlYW59IFttYXNrPWZhbHNlXSBTcGVjaWZpZXMgd2hldGhlciBvciBub3QgdG8gbWFzayB0aGUgbWVzc2FnZVxuICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2JdIENhbGxiYWNrXG4gICAqIEBwdWJsaWNcbiAgICovXG4gIGNsb3NlKGNvZGUsIGRhdGEsIG1hc2ssIGNiKSB7XG4gICAgbGV0IGJ1ZjtcblxuICAgIGlmIChjb2RlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGJ1ZiA9IEVNUFRZX0JVRkZFUjtcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiBjb2RlICE9PSAnbnVtYmVyJyB8fCAhaXNWYWxpZFN0YXR1c0NvZGUoY29kZSkpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0ZpcnN0IGFyZ3VtZW50IG11c3QgYmUgYSB2YWxpZCBlcnJvciBjb2RlIG51bWJlcicpO1xuICAgIH0gZWxzZSBpZiAoZGF0YSA9PT0gdW5kZWZpbmVkIHx8ICFkYXRhLmxlbmd0aCkge1xuICAgICAgYnVmID0gQnVmZmVyLmFsbG9jVW5zYWZlKDIpO1xuICAgICAgYnVmLndyaXRlVUludDE2QkUoY29kZSwgMCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGxlbmd0aCA9IEJ1ZmZlci5ieXRlTGVuZ3RoKGRhdGEpO1xuXG4gICAgICBpZiAobGVuZ3RoID4gMTIzKSB7XG4gICAgICAgIHRocm93IG5ldyBSYW5nZUVycm9yKCdUaGUgbWVzc2FnZSBtdXN0IG5vdCBiZSBncmVhdGVyIHRoYW4gMTIzIGJ5dGVzJyk7XG4gICAgICB9XG5cbiAgICAgIGJ1ZiA9IEJ1ZmZlci5hbGxvY1Vuc2FmZSgyICsgbGVuZ3RoKTtcbiAgICAgIGJ1Zi53cml0ZVVJbnQxNkJFKGNvZGUsIDApO1xuXG4gICAgICBpZiAodHlwZW9mIGRhdGEgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGJ1Zi53cml0ZShkYXRhLCAyKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGJ1Zi5zZXQoZGF0YSwgMik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICAgIFtrQnl0ZUxlbmd0aF06IGJ1Zi5sZW5ndGgsXG4gICAgICBmaW46IHRydWUsXG4gICAgICBnZW5lcmF0ZU1hc2s6IHRoaXMuX2dlbmVyYXRlTWFzayxcbiAgICAgIG1hc2ssXG4gICAgICBtYXNrQnVmZmVyOiB0aGlzLl9tYXNrQnVmZmVyLFxuICAgICAgb3Bjb2RlOiAweDA4LFxuICAgICAgcmVhZE9ubHk6IGZhbHNlLFxuICAgICAgcnN2MTogZmFsc2VcbiAgICB9O1xuXG4gICAgaWYgKHRoaXMuX2RlZmxhdGluZykge1xuICAgICAgdGhpcy5lbnF1ZXVlKFt0aGlzLmRpc3BhdGNoLCBidWYsIGZhbHNlLCBvcHRpb25zLCBjYl0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNlbmRGcmFtZShTZW5kZXIuZnJhbWUoYnVmLCBvcHRpb25zKSwgY2IpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTZW5kcyBhIHBpbmcgbWVzc2FnZSB0byB0aGUgb3RoZXIgcGVlci5cbiAgICpcbiAgICogQHBhcmFtIHsqfSBkYXRhIFRoZSBtZXNzYWdlIHRvIHNlbmRcbiAgICogQHBhcmFtIHtCb29sZWFufSBbbWFzaz1mYWxzZV0gU3BlY2lmaWVzIHdoZXRoZXIgb3Igbm90IHRvIG1hc2sgYGRhdGFgXG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYl0gQ2FsbGJhY2tcbiAgICogQHB1YmxpY1xuICAgKi9cbiAgcGluZyhkYXRhLCBtYXNrLCBjYikge1xuICAgIGxldCBieXRlTGVuZ3RoO1xuICAgIGxldCByZWFkT25seTtcblxuICAgIGlmICh0eXBlb2YgZGF0YSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGJ5dGVMZW5ndGggPSBCdWZmZXIuYnl0ZUxlbmd0aChkYXRhKTtcbiAgICAgIHJlYWRPbmx5ID0gZmFsc2U7XG4gICAgfSBlbHNlIHtcbiAgICAgIGRhdGEgPSB0b0J1ZmZlcihkYXRhKTtcbiAgICAgIGJ5dGVMZW5ndGggPSBkYXRhLmxlbmd0aDtcbiAgICAgIHJlYWRPbmx5ID0gdG9CdWZmZXIucmVhZE9ubHk7XG4gICAgfVxuXG4gICAgaWYgKGJ5dGVMZW5ndGggPiAxMjUpIHtcbiAgICAgIHRocm93IG5ldyBSYW5nZUVycm9yKCdUaGUgZGF0YSBzaXplIG11c3Qgbm90IGJlIGdyZWF0ZXIgdGhhbiAxMjUgYnl0ZXMnKTtcbiAgICB9XG5cbiAgICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgW2tCeXRlTGVuZ3RoXTogYnl0ZUxlbmd0aCxcbiAgICAgIGZpbjogdHJ1ZSxcbiAgICAgIGdlbmVyYXRlTWFzazogdGhpcy5fZ2VuZXJhdGVNYXNrLFxuICAgICAgbWFzayxcbiAgICAgIG1hc2tCdWZmZXI6IHRoaXMuX21hc2tCdWZmZXIsXG4gICAgICBvcGNvZGU6IDB4MDksXG4gICAgICByZWFkT25seSxcbiAgICAgIHJzdjE6IGZhbHNlXG4gICAgfTtcblxuICAgIGlmICh0aGlzLl9kZWZsYXRpbmcpIHtcbiAgICAgIHRoaXMuZW5xdWV1ZShbdGhpcy5kaXNwYXRjaCwgZGF0YSwgZmFsc2UsIG9wdGlvbnMsIGNiXSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2VuZEZyYW1lKFNlbmRlci5mcmFtZShkYXRhLCBvcHRpb25zKSwgY2IpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTZW5kcyBhIHBvbmcgbWVzc2FnZSB0byB0aGUgb3RoZXIgcGVlci5cbiAgICpcbiAgICogQHBhcmFtIHsqfSBkYXRhIFRoZSBtZXNzYWdlIHRvIHNlbmRcbiAgICogQHBhcmFtIHtCb29sZWFufSBbbWFzaz1mYWxzZV0gU3BlY2lmaWVzIHdoZXRoZXIgb3Igbm90IHRvIG1hc2sgYGRhdGFgXG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYl0gQ2FsbGJhY2tcbiAgICogQHB1YmxpY1xuICAgKi9cbiAgcG9uZyhkYXRhLCBtYXNrLCBjYikge1xuICAgIGxldCBieXRlTGVuZ3RoO1xuICAgIGxldCByZWFkT25seTtcblxuICAgIGlmICh0eXBlb2YgZGF0YSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGJ5dGVMZW5ndGggPSBCdWZmZXIuYnl0ZUxlbmd0aChkYXRhKTtcbiAgICAgIHJlYWRPbmx5ID0gZmFsc2U7XG4gICAgfSBlbHNlIHtcbiAgICAgIGRhdGEgPSB0b0J1ZmZlcihkYXRhKTtcbiAgICAgIGJ5dGVMZW5ndGggPSBkYXRhLmxlbmd0aDtcbiAgICAgIHJlYWRPbmx5ID0gdG9CdWZmZXIucmVhZE9ubHk7XG4gICAgfVxuXG4gICAgaWYgKGJ5dGVMZW5ndGggPiAxMjUpIHtcbiAgICAgIHRocm93IG5ldyBSYW5nZUVycm9yKCdUaGUgZGF0YSBzaXplIG11c3Qgbm90IGJlIGdyZWF0ZXIgdGhhbiAxMjUgYnl0ZXMnKTtcbiAgICB9XG5cbiAgICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgW2tCeXRlTGVuZ3RoXTogYnl0ZUxlbmd0aCxcbiAgICAgIGZpbjogdHJ1ZSxcbiAgICAgIGdlbmVyYXRlTWFzazogdGhpcy5fZ2VuZXJhdGVNYXNrLFxuICAgICAgbWFzayxcbiAgICAgIG1hc2tCdWZmZXI6IHRoaXMuX21hc2tCdWZmZXIsXG4gICAgICBvcGNvZGU6IDB4MGEsXG4gICAgICByZWFkT25seSxcbiAgICAgIHJzdjE6IGZhbHNlXG4gICAgfTtcblxuICAgIGlmICh0aGlzLl9kZWZsYXRpbmcpIHtcbiAgICAgIHRoaXMuZW5xdWV1ZShbdGhpcy5kaXNwYXRjaCwgZGF0YSwgZmFsc2UsIG9wdGlvbnMsIGNiXSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2VuZEZyYW1lKFNlbmRlci5mcmFtZShkYXRhLCBvcHRpb25zKSwgY2IpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTZW5kcyBhIGRhdGEgbWVzc2FnZSB0byB0aGUgb3RoZXIgcGVlci5cbiAgICpcbiAgICogQHBhcmFtIHsqfSBkYXRhIFRoZSBtZXNzYWdlIHRvIHNlbmRcbiAgICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnMgT3B0aW9ucyBvYmplY3RcbiAgICogQHBhcmFtIHtCb29sZWFufSBbb3B0aW9ucy5iaW5hcnk9ZmFsc2VdIFNwZWNpZmllcyB3aGV0aGVyIGBkYXRhYCBpcyBiaW5hcnlcbiAgICogICAgIG9yIHRleHRcbiAgICogQHBhcmFtIHtCb29sZWFufSBbb3B0aW9ucy5jb21wcmVzcz1mYWxzZV0gU3BlY2lmaWVzIHdoZXRoZXIgb3Igbm90IHRvXG4gICAqICAgICBjb21wcmVzcyBgZGF0YWBcbiAgICogQHBhcmFtIHtCb29sZWFufSBbb3B0aW9ucy5maW49ZmFsc2VdIFNwZWNpZmllcyB3aGV0aGVyIHRoZSBmcmFnbWVudCBpcyB0aGVcbiAgICogICAgIGxhc3Qgb25lXG4gICAqIEBwYXJhbSB7Qm9vbGVhbn0gW29wdGlvbnMubWFzaz1mYWxzZV0gU3BlY2lmaWVzIHdoZXRoZXIgb3Igbm90IHRvIG1hc2tcbiAgICogICAgIGBkYXRhYFxuICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2JdIENhbGxiYWNrXG4gICAqIEBwdWJsaWNcbiAgICovXG4gIHNlbmQoZGF0YSwgb3B0aW9ucywgY2IpIHtcbiAgICBjb25zdCBwZXJNZXNzYWdlRGVmbGF0ZSA9IHRoaXMuX2V4dGVuc2lvbnNbUGVyTWVzc2FnZURlZmxhdGUuZXh0ZW5zaW9uTmFtZV07XG4gICAgbGV0IG9wY29kZSA9IG9wdGlvbnMuYmluYXJ5ID8gMiA6IDE7XG4gICAgbGV0IHJzdjEgPSBvcHRpb25zLmNvbXByZXNzO1xuXG4gICAgbGV0IGJ5dGVMZW5ndGg7XG4gICAgbGV0IHJlYWRPbmx5O1xuXG4gICAgaWYgKHR5cGVvZiBkYXRhID09PSAnc3RyaW5nJykge1xuICAgICAgYnl0ZUxlbmd0aCA9IEJ1ZmZlci5ieXRlTGVuZ3RoKGRhdGEpO1xuICAgICAgcmVhZE9ubHkgPSBmYWxzZTtcbiAgICB9IGVsc2Uge1xuICAgICAgZGF0YSA9IHRvQnVmZmVyKGRhdGEpO1xuICAgICAgYnl0ZUxlbmd0aCA9IGRhdGEubGVuZ3RoO1xuICAgICAgcmVhZE9ubHkgPSB0b0J1ZmZlci5yZWFkT25seTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fZmlyc3RGcmFnbWVudCkge1xuICAgICAgdGhpcy5fZmlyc3RGcmFnbWVudCA9IGZhbHNlO1xuICAgICAgaWYgKFxuICAgICAgICByc3YxICYmXG4gICAgICAgIHBlck1lc3NhZ2VEZWZsYXRlICYmXG4gICAgICAgIHBlck1lc3NhZ2VEZWZsYXRlLnBhcmFtc1tcbiAgICAgICAgICBwZXJNZXNzYWdlRGVmbGF0ZS5faXNTZXJ2ZXJcbiAgICAgICAgICAgID8gJ3NlcnZlcl9ub19jb250ZXh0X3Rha2VvdmVyJ1xuICAgICAgICAgICAgOiAnY2xpZW50X25vX2NvbnRleHRfdGFrZW92ZXInXG4gICAgICAgIF1cbiAgICAgICkge1xuICAgICAgICByc3YxID0gYnl0ZUxlbmd0aCA+PSBwZXJNZXNzYWdlRGVmbGF0ZS5fdGhyZXNob2xkO1xuICAgICAgfVxuICAgICAgdGhpcy5fY29tcHJlc3MgPSByc3YxO1xuICAgIH0gZWxzZSB7XG4gICAgICByc3YxID0gZmFsc2U7XG4gICAgICBvcGNvZGUgPSAwO1xuICAgIH1cblxuICAgIGlmIChvcHRpb25zLmZpbikgdGhpcy5fZmlyc3RGcmFnbWVudCA9IHRydWU7XG5cbiAgICBpZiAocGVyTWVzc2FnZURlZmxhdGUpIHtcbiAgICAgIGNvbnN0IG9wdHMgPSB7XG4gICAgICAgIFtrQnl0ZUxlbmd0aF06IGJ5dGVMZW5ndGgsXG4gICAgICAgIGZpbjogb3B0aW9ucy5maW4sXG4gICAgICAgIGdlbmVyYXRlTWFzazogdGhpcy5fZ2VuZXJhdGVNYXNrLFxuICAgICAgICBtYXNrOiBvcHRpb25zLm1hc2ssXG4gICAgICAgIG1hc2tCdWZmZXI6IHRoaXMuX21hc2tCdWZmZXIsXG4gICAgICAgIG9wY29kZSxcbiAgICAgICAgcmVhZE9ubHksXG4gICAgICAgIHJzdjFcbiAgICAgIH07XG5cbiAgICAgIGlmICh0aGlzLl9kZWZsYXRpbmcpIHtcbiAgICAgICAgdGhpcy5lbnF1ZXVlKFt0aGlzLmRpc3BhdGNoLCBkYXRhLCB0aGlzLl9jb21wcmVzcywgb3B0cywgY2JdKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuZGlzcGF0Y2goZGF0YSwgdGhpcy5fY29tcHJlc3MsIG9wdHMsIGNiKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zZW5kRnJhbWUoXG4gICAgICAgIFNlbmRlci5mcmFtZShkYXRhLCB7XG4gICAgICAgICAgW2tCeXRlTGVuZ3RoXTogYnl0ZUxlbmd0aCxcbiAgICAgICAgICBmaW46IG9wdGlvbnMuZmluLFxuICAgICAgICAgIGdlbmVyYXRlTWFzazogdGhpcy5fZ2VuZXJhdGVNYXNrLFxuICAgICAgICAgIG1hc2s6IG9wdGlvbnMubWFzayxcbiAgICAgICAgICBtYXNrQnVmZmVyOiB0aGlzLl9tYXNrQnVmZmVyLFxuICAgICAgICAgIG9wY29kZSxcbiAgICAgICAgICByZWFkT25seSxcbiAgICAgICAgICByc3YxOiBmYWxzZVxuICAgICAgICB9KSxcbiAgICAgICAgY2JcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIERpc3BhdGNoZXMgYSBtZXNzYWdlLlxuICAgKlxuICAgKiBAcGFyYW0geyhCdWZmZXJ8U3RyaW5nKX0gZGF0YSBUaGUgbWVzc2FnZSB0byBzZW5kXG4gICAqIEBwYXJhbSB7Qm9vbGVhbn0gW2NvbXByZXNzPWZhbHNlXSBTcGVjaWZpZXMgd2hldGhlciBvciBub3QgdG8gY29tcHJlc3NcbiAgICogICAgIGBkYXRhYFxuICAgKiBAcGFyYW0ge09iamVjdH0gb3B0aW9ucyBPcHRpb25zIG9iamVjdFxuICAgKiBAcGFyYW0ge0Jvb2xlYW59IFtvcHRpb25zLmZpbj1mYWxzZV0gU3BlY2lmaWVzIHdoZXRoZXIgb3Igbm90IHRvIHNldCB0aGVcbiAgICogICAgIEZJTiBiaXRcbiAgICogQHBhcmFtIHtGdW5jdGlvbn0gW29wdGlvbnMuZ2VuZXJhdGVNYXNrXSBUaGUgZnVuY3Rpb24gdXNlZCB0byBnZW5lcmF0ZSB0aGVcbiAgICogICAgIG1hc2tpbmcga2V5XG4gICAqIEBwYXJhbSB7Qm9vbGVhbn0gW29wdGlvbnMubWFzaz1mYWxzZV0gU3BlY2lmaWVzIHdoZXRoZXIgb3Igbm90IHRvIG1hc2tcbiAgICogICAgIGBkYXRhYFxuICAgKiBAcGFyYW0ge0J1ZmZlcn0gW29wdGlvbnMubWFza0J1ZmZlcl0gVGhlIGJ1ZmZlciB1c2VkIHRvIHN0b3JlIHRoZSBtYXNraW5nXG4gICAqICAgICBrZXlcbiAgICogQHBhcmFtIHtOdW1iZXJ9IG9wdGlvbnMub3Bjb2RlIFRoZSBvcGNvZGVcbiAgICogQHBhcmFtIHtCb29sZWFufSBbb3B0aW9ucy5yZWFkT25seT1mYWxzZV0gU3BlY2lmaWVzIHdoZXRoZXIgYGRhdGFgIGNhbiBiZVxuICAgKiAgICAgbW9kaWZpZWRcbiAgICogQHBhcmFtIHtCb29sZWFufSBbb3B0aW9ucy5yc3YxPWZhbHNlXSBTcGVjaWZpZXMgd2hldGhlciBvciBub3QgdG8gc2V0IHRoZVxuICAgKiAgICAgUlNWMSBiaXRcbiAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NiXSBDYWxsYmFja1xuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgZGlzcGF0Y2goZGF0YSwgY29tcHJlc3MsIG9wdGlvbnMsIGNiKSB7XG4gICAgaWYgKCFjb21wcmVzcykge1xuICAgICAgdGhpcy5zZW5kRnJhbWUoU2VuZGVyLmZyYW1lKGRhdGEsIG9wdGlvbnMpLCBjYik7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgcGVyTWVzc2FnZURlZmxhdGUgPSB0aGlzLl9leHRlbnNpb25zW1Blck1lc3NhZ2VEZWZsYXRlLmV4dGVuc2lvbk5hbWVdO1xuXG4gICAgdGhpcy5fYnVmZmVyZWRCeXRlcyArPSBvcHRpb25zW2tCeXRlTGVuZ3RoXTtcbiAgICB0aGlzLl9kZWZsYXRpbmcgPSB0cnVlO1xuICAgIHBlck1lc3NhZ2VEZWZsYXRlLmNvbXByZXNzKGRhdGEsIG9wdGlvbnMuZmluLCAoXywgYnVmKSA9PiB7XG4gICAgICBpZiAodGhpcy5fc29ja2V0LmRlc3Ryb3llZCkge1xuICAgICAgICBjb25zdCBlcnIgPSBuZXcgRXJyb3IoXG4gICAgICAgICAgJ1RoZSBzb2NrZXQgd2FzIGNsb3NlZCB3aGlsZSBkYXRhIHdhcyBiZWluZyBjb21wcmVzc2VkJ1xuICAgICAgICApO1xuXG4gICAgICAgIGlmICh0eXBlb2YgY2IgPT09ICdmdW5jdGlvbicpIGNiKGVycik7XG5cbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9xdWV1ZS5sZW5ndGg7IGkrKykge1xuICAgICAgICAgIGNvbnN0IHBhcmFtcyA9IHRoaXMuX3F1ZXVlW2ldO1xuICAgICAgICAgIGNvbnN0IGNhbGxiYWNrID0gcGFyYW1zW3BhcmFtcy5sZW5ndGggLSAxXTtcblxuICAgICAgICAgIGlmICh0eXBlb2YgY2FsbGJhY2sgPT09ICdmdW5jdGlvbicpIGNhbGxiYWNrKGVycik7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHRoaXMuX2J1ZmZlcmVkQnl0ZXMgLT0gb3B0aW9uc1trQnl0ZUxlbmd0aF07XG4gICAgICB0aGlzLl9kZWZsYXRpbmcgPSBmYWxzZTtcbiAgICAgIG9wdGlvbnMucmVhZE9ubHkgPSBmYWxzZTtcbiAgICAgIHRoaXMuc2VuZEZyYW1lKFNlbmRlci5mcmFtZShidWYsIG9wdGlvbnMpLCBjYik7XG4gICAgICB0aGlzLmRlcXVldWUoKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeGVjdXRlcyBxdWV1ZWQgc2VuZCBvcGVyYXRpb25zLlxuICAgKlxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgZGVxdWV1ZSgpIHtcbiAgICB3aGlsZSAoIXRoaXMuX2RlZmxhdGluZyAmJiB0aGlzLl9xdWV1ZS5sZW5ndGgpIHtcbiAgICAgIGNvbnN0IHBhcmFtcyA9IHRoaXMuX3F1ZXVlLnNoaWZ0KCk7XG5cbiAgICAgIHRoaXMuX2J1ZmZlcmVkQnl0ZXMgLT0gcGFyYW1zWzNdW2tCeXRlTGVuZ3RoXTtcbiAgICAgIFJlZmxlY3QuYXBwbHkocGFyYW1zWzBdLCB0aGlzLCBwYXJhbXMuc2xpY2UoMSkpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBFbnF1ZXVlcyBhIHNlbmQgb3BlcmF0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0ge0FycmF5fSBwYXJhbXMgU2VuZCBvcGVyYXRpb24gcGFyYW1ldGVycy5cbiAgICogQHByaXZhdGVcbiAgICovXG4gIGVucXVldWUocGFyYW1zKSB7XG4gICAgdGhpcy5fYnVmZmVyZWRCeXRlcyArPSBwYXJhbXNbM11ba0J5dGVMZW5ndGhdO1xuICAgIHRoaXMuX3F1ZXVlLnB1c2gocGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZW5kcyBhIGZyYW1lLlxuICAgKlxuICAgKiBAcGFyYW0ge0J1ZmZlcltdfSBsaXN0IFRoZSBmcmFtZSB0byBzZW5kXG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYl0gQ2FsbGJhY2tcbiAgICogQHByaXZhdGVcbiAgICovXG4gIHNlbmRGcmFtZShsaXN0LCBjYikge1xuICAgIGlmIChsaXN0Lmxlbmd0aCA9PT0gMikge1xuICAgICAgdGhpcy5fc29ja2V0LmNvcmsoKTtcbiAgICAgIHRoaXMuX3NvY2tldC53cml0ZShsaXN0WzBdKTtcbiAgICAgIHRoaXMuX3NvY2tldC53cml0ZShsaXN0WzFdLCBjYik7XG4gICAgICB0aGlzLl9zb2NrZXQudW5jb3JrKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX3NvY2tldC53cml0ZShsaXN0WzBdLCBjYik7XG4gICAgfVxuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0gU2VuZGVyO1xuIiwgIid1c2Ugc3RyaWN0JztcblxuY29uc3QgeyBrRm9yT25FdmVudEF0dHJpYnV0ZSwga0xpc3RlbmVyIH0gPSByZXF1aXJlKCcuL2NvbnN0YW50cycpO1xuXG5jb25zdCBrQ29kZSA9IFN5bWJvbCgna0NvZGUnKTtcbmNvbnN0IGtEYXRhID0gU3ltYm9sKCdrRGF0YScpO1xuY29uc3Qga0Vycm9yID0gU3ltYm9sKCdrRXJyb3InKTtcbmNvbnN0IGtNZXNzYWdlID0gU3ltYm9sKCdrTWVzc2FnZScpO1xuY29uc3Qga1JlYXNvbiA9IFN5bWJvbCgna1JlYXNvbicpO1xuY29uc3Qga1RhcmdldCA9IFN5bWJvbCgna1RhcmdldCcpO1xuY29uc3Qga1R5cGUgPSBTeW1ib2woJ2tUeXBlJyk7XG5jb25zdCBrV2FzQ2xlYW4gPSBTeW1ib2woJ2tXYXNDbGVhbicpO1xuXG4vKipcbiAqIENsYXNzIHJlcHJlc2VudGluZyBhbiBldmVudC5cbiAqL1xuY2xhc3MgRXZlbnQge1xuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IGBFdmVudGAuXG4gICAqXG4gICAqIEBwYXJhbSB7U3RyaW5nfSB0eXBlIFRoZSBuYW1lIG9mIHRoZSBldmVudFxuICAgKiBAdGhyb3dzIHtUeXBlRXJyb3J9IElmIHRoZSBgdHlwZWAgYXJndW1lbnQgaXMgbm90IHNwZWNpZmllZFxuICAgKi9cbiAgY29uc3RydWN0b3IodHlwZSkge1xuICAgIHRoaXNba1RhcmdldF0gPSBudWxsO1xuICAgIHRoaXNba1R5cGVdID0gdHlwZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAdHlwZSB7Kn1cbiAgICovXG4gIGdldCB0YXJnZXQoKSB7XG4gICAgcmV0dXJuIHRoaXNba1RhcmdldF07XG4gIH1cblxuICAvKipcbiAgICogQHR5cGUge1N0cmluZ31cbiAgICovXG4gIGdldCB0eXBlKCkge1xuICAgIHJldHVybiB0aGlzW2tUeXBlXTtcbiAgfVxufVxuXG5PYmplY3QuZGVmaW5lUHJvcGVydHkoRXZlbnQucHJvdG90eXBlLCAndGFyZ2V0JywgeyBlbnVtZXJhYmxlOiB0cnVlIH0pO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KEV2ZW50LnByb3RvdHlwZSwgJ3R5cGUnLCB7IGVudW1lcmFibGU6IHRydWUgfSk7XG5cbi8qKlxuICogQ2xhc3MgcmVwcmVzZW50aW5nIGEgY2xvc2UgZXZlbnQuXG4gKlxuICogQGV4dGVuZHMgRXZlbnRcbiAqL1xuY2xhc3MgQ2xvc2VFdmVudCBleHRlbmRzIEV2ZW50IHtcbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBgQ2xvc2VFdmVudGAuXG4gICAqXG4gICAqIEBwYXJhbSB7U3RyaW5nfSB0eXBlIFRoZSBuYW1lIG9mIHRoZSBldmVudFxuICAgKiBAcGFyYW0ge09iamVjdH0gW29wdGlvbnNdIEEgZGljdGlvbmFyeSBvYmplY3QgdGhhdCBhbGxvd3MgZm9yIHNldHRpbmdcbiAgICogICAgIGF0dHJpYnV0ZXMgdmlhIG9iamVjdCBtZW1iZXJzIG9mIHRoZSBzYW1lIG5hbWVcbiAgICogQHBhcmFtIHtOdW1iZXJ9IFtvcHRpb25zLmNvZGU9MF0gVGhlIHN0YXR1cyBjb2RlIGV4cGxhaW5pbmcgd2h5IHRoZVxuICAgKiAgICAgY29ubmVjdGlvbiB3YXMgY2xvc2VkXG4gICAqIEBwYXJhbSB7U3RyaW5nfSBbb3B0aW9ucy5yZWFzb249JyddIEEgaHVtYW4tcmVhZGFibGUgc3RyaW5nIGV4cGxhaW5pbmcgd2h5XG4gICAqICAgICB0aGUgY29ubmVjdGlvbiB3YXMgY2xvc2VkXG4gICAqIEBwYXJhbSB7Qm9vbGVhbn0gW29wdGlvbnMud2FzQ2xlYW49ZmFsc2VdIEluZGljYXRlcyB3aGV0aGVyIG9yIG5vdCB0aGVcbiAgICogICAgIGNvbm5lY3Rpb24gd2FzIGNsZWFubHkgY2xvc2VkXG4gICAqL1xuICBjb25zdHJ1Y3Rvcih0eXBlLCBvcHRpb25zID0ge30pIHtcbiAgICBzdXBlcih0eXBlKTtcblxuICAgIHRoaXNba0NvZGVdID0gb3B0aW9ucy5jb2RlID09PSB1bmRlZmluZWQgPyAwIDogb3B0aW9ucy5jb2RlO1xuICAgIHRoaXNba1JlYXNvbl0gPSBvcHRpb25zLnJlYXNvbiA9PT0gdW5kZWZpbmVkID8gJycgOiBvcHRpb25zLnJlYXNvbjtcbiAgICB0aGlzW2tXYXNDbGVhbl0gPSBvcHRpb25zLndhc0NsZWFuID09PSB1bmRlZmluZWQgPyBmYWxzZSA6IG9wdGlvbnMud2FzQ2xlYW47XG4gIH1cblxuICAvKipcbiAgICogQHR5cGUge051bWJlcn1cbiAgICovXG4gIGdldCBjb2RlKCkge1xuICAgIHJldHVybiB0aGlzW2tDb2RlXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAdHlwZSB7U3RyaW5nfVxuICAgKi9cbiAgZ2V0IHJlYXNvbigpIHtcbiAgICByZXR1cm4gdGhpc1trUmVhc29uXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAdHlwZSB7Qm9vbGVhbn1cbiAgICovXG4gIGdldCB3YXNDbGVhbigpIHtcbiAgICByZXR1cm4gdGhpc1trV2FzQ2xlYW5dO1xuICB9XG59XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShDbG9zZUV2ZW50LnByb3RvdHlwZSwgJ2NvZGUnLCB7IGVudW1lcmFibGU6IHRydWUgfSk7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoQ2xvc2VFdmVudC5wcm90b3R5cGUsICdyZWFzb24nLCB7IGVudW1lcmFibGU6IHRydWUgfSk7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoQ2xvc2VFdmVudC5wcm90b3R5cGUsICd3YXNDbGVhbicsIHsgZW51bWVyYWJsZTogdHJ1ZSB9KTtcblxuLyoqXG4gKiBDbGFzcyByZXByZXNlbnRpbmcgYW4gZXJyb3IgZXZlbnQuXG4gKlxuICogQGV4dGVuZHMgRXZlbnRcbiAqL1xuY2xhc3MgRXJyb3JFdmVudCBleHRlbmRzIEV2ZW50IHtcbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBgRXJyb3JFdmVudGAuXG4gICAqXG4gICAqIEBwYXJhbSB7U3RyaW5nfSB0eXBlIFRoZSBuYW1lIG9mIHRoZSBldmVudFxuICAgKiBAcGFyYW0ge09iamVjdH0gW29wdGlvbnNdIEEgZGljdGlvbmFyeSBvYmplY3QgdGhhdCBhbGxvd3MgZm9yIHNldHRpbmdcbiAgICogICAgIGF0dHJpYnV0ZXMgdmlhIG9iamVjdCBtZW1iZXJzIG9mIHRoZSBzYW1lIG5hbWVcbiAgICogQHBhcmFtIHsqfSBbb3B0aW9ucy5lcnJvcj1udWxsXSBUaGUgZXJyb3IgdGhhdCBnZW5lcmF0ZWQgdGhpcyBldmVudFxuICAgKiBAcGFyYW0ge1N0cmluZ30gW29wdGlvbnMubWVzc2FnZT0nJ10gVGhlIGVycm9yIG1lc3NhZ2VcbiAgICovXG4gIGNvbnN0cnVjdG9yKHR5cGUsIG9wdGlvbnMgPSB7fSkge1xuICAgIHN1cGVyKHR5cGUpO1xuXG4gICAgdGhpc1trRXJyb3JdID0gb3B0aW9ucy5lcnJvciA9PT0gdW5kZWZpbmVkID8gbnVsbCA6IG9wdGlvbnMuZXJyb3I7XG4gICAgdGhpc1trTWVzc2FnZV0gPSBvcHRpb25zLm1lc3NhZ2UgPT09IHVuZGVmaW5lZCA/ICcnIDogb3B0aW9ucy5tZXNzYWdlO1xuICB9XG5cbiAgLyoqXG4gICAqIEB0eXBlIHsqfVxuICAgKi9cbiAgZ2V0IGVycm9yKCkge1xuICAgIHJldHVybiB0aGlzW2tFcnJvcl07XG4gIH1cblxuICAvKipcbiAgICogQHR5cGUge1N0cmluZ31cbiAgICovXG4gIGdldCBtZXNzYWdlKCkge1xuICAgIHJldHVybiB0aGlzW2tNZXNzYWdlXTtcbiAgfVxufVxuXG5PYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3JFdmVudC5wcm90b3R5cGUsICdlcnJvcicsIHsgZW51bWVyYWJsZTogdHJ1ZSB9KTtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvckV2ZW50LnByb3RvdHlwZSwgJ21lc3NhZ2UnLCB7IGVudW1lcmFibGU6IHRydWUgfSk7XG5cbi8qKlxuICogQ2xhc3MgcmVwcmVzZW50aW5nIGEgbWVzc2FnZSBldmVudC5cbiAqXG4gKiBAZXh0ZW5kcyBFdmVudFxuICovXG5jbGFzcyBNZXNzYWdlRXZlbnQgZXh0ZW5kcyBFdmVudCB7XG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgYE1lc3NhZ2VFdmVudGAuXG4gICAqXG4gICAqIEBwYXJhbSB7U3RyaW5nfSB0eXBlIFRoZSBuYW1lIG9mIHRoZSBldmVudFxuICAgKiBAcGFyYW0ge09iamVjdH0gW29wdGlvbnNdIEEgZGljdGlvbmFyeSBvYmplY3QgdGhhdCBhbGxvd3MgZm9yIHNldHRpbmdcbiAgICogICAgIGF0dHJpYnV0ZXMgdmlhIG9iamVjdCBtZW1iZXJzIG9mIHRoZSBzYW1lIG5hbWVcbiAgICogQHBhcmFtIHsqfSBbb3B0aW9ucy5kYXRhPW51bGxdIFRoZSBtZXNzYWdlIGNvbnRlbnRcbiAgICovXG4gIGNvbnN0cnVjdG9yKHR5cGUsIG9wdGlvbnMgPSB7fSkge1xuICAgIHN1cGVyKHR5cGUpO1xuXG4gICAgdGhpc1trRGF0YV0gPSBvcHRpb25zLmRhdGEgPT09IHVuZGVmaW5lZCA/IG51bGwgOiBvcHRpb25zLmRhdGE7XG4gIH1cblxuICAvKipcbiAgICogQHR5cGUgeyp9XG4gICAqL1xuICBnZXQgZGF0YSgpIHtcbiAgICByZXR1cm4gdGhpc1trRGF0YV07XG4gIH1cbn1cblxuT2JqZWN0LmRlZmluZVByb3BlcnR5KE1lc3NhZ2VFdmVudC5wcm90b3R5cGUsICdkYXRhJywgeyBlbnVtZXJhYmxlOiB0cnVlIH0pO1xuXG4vKipcbiAqIFRoaXMgcHJvdmlkZXMgbWV0aG9kcyBmb3IgZW11bGF0aW5nIHRoZSBgRXZlbnRUYXJnZXRgIGludGVyZmFjZS4gSXQncyBub3RcbiAqIG1lYW50IHRvIGJlIHVzZWQgZGlyZWN0bHkuXG4gKlxuICogQG1peGluXG4gKi9cbmNvbnN0IEV2ZW50VGFyZ2V0ID0ge1xuICAvKipcbiAgICogUmVnaXN0ZXIgYW4gZXZlbnQgbGlzdGVuZXIuXG4gICAqXG4gICAqIEBwYXJhbSB7U3RyaW5nfSB0eXBlIEEgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgZXZlbnQgdHlwZSB0byBsaXN0ZW4gZm9yXG4gICAqIEBwYXJhbSB7KEZ1bmN0aW9ufE9iamVjdCl9IGhhbmRsZXIgVGhlIGxpc3RlbmVyIHRvIGFkZFxuICAgKiBAcGFyYW0ge09iamVjdH0gW29wdGlvbnNdIEFuIG9wdGlvbnMgb2JqZWN0IHNwZWNpZmllcyBjaGFyYWN0ZXJpc3RpY3MgYWJvdXRcbiAgICogICAgIHRoZSBldmVudCBsaXN0ZW5lclxuICAgKiBAcGFyYW0ge0Jvb2xlYW59IFtvcHRpb25zLm9uY2U9ZmFsc2VdIEEgYEJvb2xlYW5gIGluZGljYXRpbmcgdGhhdCB0aGVcbiAgICogICAgIGxpc3RlbmVyIHNob3VsZCBiZSBpbnZva2VkIGF0IG1vc3Qgb25jZSBhZnRlciBiZWluZyBhZGRlZC4gSWYgYHRydWVgLFxuICAgKiAgICAgdGhlIGxpc3RlbmVyIHdvdWxkIGJlIGF1dG9tYXRpY2FsbHkgcmVtb3ZlZCB3aGVuIGludm9rZWQuXG4gICAqIEBwdWJsaWNcbiAgICovXG4gIGFkZEV2ZW50TGlzdGVuZXIodHlwZSwgaGFuZGxlciwgb3B0aW9ucyA9IHt9KSB7XG4gICAgZm9yIChjb25zdCBsaXN0ZW5lciBvZiB0aGlzLmxpc3RlbmVycyh0eXBlKSkge1xuICAgICAgaWYgKFxuICAgICAgICAhb3B0aW9uc1trRm9yT25FdmVudEF0dHJpYnV0ZV0gJiZcbiAgICAgICAgbGlzdGVuZXJba0xpc3RlbmVyXSA9PT0gaGFuZGxlciAmJlxuICAgICAgICAhbGlzdGVuZXJba0Zvck9uRXZlbnRBdHRyaWJ1dGVdXG4gICAgICApIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cblxuICAgIGxldCB3cmFwcGVyO1xuXG4gICAgaWYgKHR5cGUgPT09ICdtZXNzYWdlJykge1xuICAgICAgd3JhcHBlciA9IGZ1bmN0aW9uIG9uTWVzc2FnZShkYXRhLCBpc0JpbmFyeSkge1xuICAgICAgICBjb25zdCBldmVudCA9IG5ldyBNZXNzYWdlRXZlbnQoJ21lc3NhZ2UnLCB7XG4gICAgICAgICAgZGF0YTogaXNCaW5hcnkgPyBkYXRhIDogZGF0YS50b1N0cmluZygpXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGV2ZW50W2tUYXJnZXRdID0gdGhpcztcbiAgICAgICAgY2FsbExpc3RlbmVyKGhhbmRsZXIsIHRoaXMsIGV2ZW50KTtcbiAgICAgIH07XG4gICAgfSBlbHNlIGlmICh0eXBlID09PSAnY2xvc2UnKSB7XG4gICAgICB3cmFwcGVyID0gZnVuY3Rpb24gb25DbG9zZShjb2RlLCBtZXNzYWdlKSB7XG4gICAgICAgIGNvbnN0IGV2ZW50ID0gbmV3IENsb3NlRXZlbnQoJ2Nsb3NlJywge1xuICAgICAgICAgIGNvZGUsXG4gICAgICAgICAgcmVhc29uOiBtZXNzYWdlLnRvU3RyaW5nKCksXG4gICAgICAgICAgd2FzQ2xlYW46IHRoaXMuX2Nsb3NlRnJhbWVSZWNlaXZlZCAmJiB0aGlzLl9jbG9zZUZyYW1lU2VudFxuICAgICAgICB9KTtcblxuICAgICAgICBldmVudFtrVGFyZ2V0XSA9IHRoaXM7XG4gICAgICAgIGNhbGxMaXN0ZW5lcihoYW5kbGVyLCB0aGlzLCBldmVudCk7XG4gICAgICB9O1xuICAgIH0gZWxzZSBpZiAodHlwZSA9PT0gJ2Vycm9yJykge1xuICAgICAgd3JhcHBlciA9IGZ1bmN0aW9uIG9uRXJyb3IoZXJyb3IpIHtcbiAgICAgICAgY29uc3QgZXZlbnQgPSBuZXcgRXJyb3JFdmVudCgnZXJyb3InLCB7XG4gICAgICAgICAgZXJyb3IsXG4gICAgICAgICAgbWVzc2FnZTogZXJyb3IubWVzc2FnZVxuICAgICAgICB9KTtcblxuICAgICAgICBldmVudFtrVGFyZ2V0XSA9IHRoaXM7XG4gICAgICAgIGNhbGxMaXN0ZW5lcihoYW5kbGVyLCB0aGlzLCBldmVudCk7XG4gICAgICB9O1xuICAgIH0gZWxzZSBpZiAodHlwZSA9PT0gJ29wZW4nKSB7XG4gICAgICB3cmFwcGVyID0gZnVuY3Rpb24gb25PcGVuKCkge1xuICAgICAgICBjb25zdCBldmVudCA9IG5ldyBFdmVudCgnb3BlbicpO1xuXG4gICAgICAgIGV2ZW50W2tUYXJnZXRdID0gdGhpcztcbiAgICAgICAgY2FsbExpc3RlbmVyKGhhbmRsZXIsIHRoaXMsIGV2ZW50KTtcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB3cmFwcGVyW2tGb3JPbkV2ZW50QXR0cmlidXRlXSA9ICEhb3B0aW9uc1trRm9yT25FdmVudEF0dHJpYnV0ZV07XG4gICAgd3JhcHBlcltrTGlzdGVuZXJdID0gaGFuZGxlcjtcblxuICAgIGlmIChvcHRpb25zLm9uY2UpIHtcbiAgICAgIHRoaXMub25jZSh0eXBlLCB3cmFwcGVyKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5vbih0eXBlLCB3cmFwcGVyKTtcbiAgICB9XG4gIH0sXG5cbiAgLyoqXG4gICAqIFJlbW92ZSBhbiBldmVudCBsaXN0ZW5lci5cbiAgICpcbiAgICogQHBhcmFtIHtTdHJpbmd9IHR5cGUgQSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBldmVudCB0eXBlIHRvIHJlbW92ZVxuICAgKiBAcGFyYW0geyhGdW5jdGlvbnxPYmplY3QpfSBoYW5kbGVyIFRoZSBsaXN0ZW5lciB0byByZW1vdmVcbiAgICogQHB1YmxpY1xuICAgKi9cbiAgcmVtb3ZlRXZlbnRMaXN0ZW5lcih0eXBlLCBoYW5kbGVyKSB7XG4gICAgZm9yIChjb25zdCBsaXN0ZW5lciBvZiB0aGlzLmxpc3RlbmVycyh0eXBlKSkge1xuICAgICAgaWYgKGxpc3RlbmVyW2tMaXN0ZW5lcl0gPT09IGhhbmRsZXIgJiYgIWxpc3RlbmVyW2tGb3JPbkV2ZW50QXR0cmlidXRlXSkge1xuICAgICAgICB0aGlzLnJlbW92ZUxpc3RlbmVyKHR5cGUsIGxpc3RlbmVyKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG59O1xuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgQ2xvc2VFdmVudCxcbiAgRXJyb3JFdmVudCxcbiAgRXZlbnQsXG4gIEV2ZW50VGFyZ2V0LFxuICBNZXNzYWdlRXZlbnRcbn07XG5cbi8qKlxuICogQ2FsbCBhbiBldmVudCBsaXN0ZW5lclxuICpcbiAqIEBwYXJhbSB7KEZ1bmN0aW9ufE9iamVjdCl9IGxpc3RlbmVyIFRoZSBsaXN0ZW5lciB0byBjYWxsXG4gKiBAcGFyYW0geyp9IHRoaXNBcmcgVGhlIHZhbHVlIHRvIHVzZSBhcyBgdGhpc2BgIHdoZW4gY2FsbGluZyB0aGUgbGlzdGVuZXJcbiAqIEBwYXJhbSB7RXZlbnR9IGV2ZW50IFRoZSBldmVudCB0byBwYXNzIHRvIHRoZSBsaXN0ZW5lclxuICogQHByaXZhdGVcbiAqL1xuZnVuY3Rpb24gY2FsbExpc3RlbmVyKGxpc3RlbmVyLCB0aGlzQXJnLCBldmVudCkge1xuICBpZiAodHlwZW9mIGxpc3RlbmVyID09PSAnb2JqZWN0JyAmJiBsaXN0ZW5lci5oYW5kbGVFdmVudCkge1xuICAgIGxpc3RlbmVyLmhhbmRsZUV2ZW50LmNhbGwobGlzdGVuZXIsIGV2ZW50KTtcbiAgfSBlbHNlIHtcbiAgICBsaXN0ZW5lci5jYWxsKHRoaXNBcmcsIGV2ZW50KTtcbiAgfVxufVxuIiwgIid1c2Ugc3RyaWN0JztcblxuY29uc3QgeyB0b2tlbkNoYXJzIH0gPSByZXF1aXJlKCcuL3ZhbGlkYXRpb24nKTtcblxuLyoqXG4gKiBBZGRzIGFuIG9mZmVyIHRvIHRoZSBtYXAgb2YgZXh0ZW5zaW9uIG9mZmVycyBvciBhIHBhcmFtZXRlciB0byB0aGUgbWFwIG9mXG4gKiBwYXJhbWV0ZXJzLlxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSBkZXN0IFRoZSBtYXAgb2YgZXh0ZW5zaW9uIG9mZmVycyBvciBwYXJhbWV0ZXJzXG4gKiBAcGFyYW0ge1N0cmluZ30gbmFtZSBUaGUgZXh0ZW5zaW9uIG9yIHBhcmFtZXRlciBuYW1lXG4gKiBAcGFyYW0geyhPYmplY3R8Qm9vbGVhbnxTdHJpbmcpfSBlbGVtIFRoZSBleHRlbnNpb24gcGFyYW1ldGVycyBvciB0aGVcbiAqICAgICBwYXJhbWV0ZXIgdmFsdWVcbiAqIEBwcml2YXRlXG4gKi9cbmZ1bmN0aW9uIHB1c2goZGVzdCwgbmFtZSwgZWxlbSkge1xuICBpZiAoZGVzdFtuYW1lXSA9PT0gdW5kZWZpbmVkKSBkZXN0W25hbWVdID0gW2VsZW1dO1xuICBlbHNlIGRlc3RbbmFtZV0ucHVzaChlbGVtKTtcbn1cblxuLyoqXG4gKiBQYXJzZXMgdGhlIGBTZWMtV2ViU29ja2V0LUV4dGVuc2lvbnNgIGhlYWRlciBpbnRvIGFuIG9iamVjdC5cbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gaGVhZGVyIFRoZSBmaWVsZCB2YWx1ZSBvZiB0aGUgaGVhZGVyXG4gKiBAcmV0dXJuIHtPYmplY3R9IFRoZSBwYXJzZWQgb2JqZWN0XG4gKiBAcHVibGljXG4gKi9cbmZ1bmN0aW9uIHBhcnNlKGhlYWRlcikge1xuICBjb25zdCBvZmZlcnMgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuICBsZXQgcGFyYW1zID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgbGV0IG11c3RVbmVzY2FwZSA9IGZhbHNlO1xuICBsZXQgaXNFc2NhcGluZyA9IGZhbHNlO1xuICBsZXQgaW5RdW90ZXMgPSBmYWxzZTtcbiAgbGV0IGV4dGVuc2lvbk5hbWU7XG4gIGxldCBwYXJhbU5hbWU7XG4gIGxldCBzdGFydCA9IC0xO1xuICBsZXQgY29kZSA9IC0xO1xuICBsZXQgZW5kID0gLTE7XG4gIGxldCBpID0gMDtcblxuICBmb3IgKDsgaSA8IGhlYWRlci5sZW5ndGg7IGkrKykge1xuICAgIGNvZGUgPSBoZWFkZXIuY2hhckNvZGVBdChpKTtcblxuICAgIGlmIChleHRlbnNpb25OYW1lID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGlmIChlbmQgPT09IC0xICYmIHRva2VuQ2hhcnNbY29kZV0gPT09IDEpIHtcbiAgICAgICAgaWYgKHN0YXJ0ID09PSAtMSkgc3RhcnQgPSBpO1xuICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgaSAhPT0gMCAmJlxuICAgICAgICAoY29kZSA9PT0gMHgyMCAvKiAnICcgKi8gfHwgY29kZSA9PT0gMHgwOSkgLyogJ1xcdCcgKi9cbiAgICAgICkge1xuICAgICAgICBpZiAoZW5kID09PSAtMSAmJiBzdGFydCAhPT0gLTEpIGVuZCA9IGk7XG4gICAgICB9IGVsc2UgaWYgKGNvZGUgPT09IDB4M2IgLyogJzsnICovIHx8IGNvZGUgPT09IDB4MmMgLyogJywnICovKSB7XG4gICAgICAgIGlmIChzdGFydCA9PT0gLTEpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgU3ludGF4RXJyb3IoYFVuZXhwZWN0ZWQgY2hhcmFjdGVyIGF0IGluZGV4ICR7aX1gKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChlbmQgPT09IC0xKSBlbmQgPSBpO1xuICAgICAgICBjb25zdCBuYW1lID0gaGVhZGVyLnNsaWNlKHN0YXJ0LCBlbmQpO1xuICAgICAgICBpZiAoY29kZSA9PT0gMHgyYykge1xuICAgICAgICAgIHB1c2gob2ZmZXJzLCBuYW1lLCBwYXJhbXMpO1xuICAgICAgICAgIHBhcmFtcyA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZXh0ZW5zaW9uTmFtZSA9IG5hbWU7XG4gICAgICAgIH1cblxuICAgICAgICBzdGFydCA9IGVuZCA9IC0xO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhyb3cgbmV3IFN5bnRheEVycm9yKGBVbmV4cGVjdGVkIGNoYXJhY3RlciBhdCBpbmRleCAke2l9YCk7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChwYXJhbU5hbWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgaWYgKGVuZCA9PT0gLTEgJiYgdG9rZW5DaGFyc1tjb2RlXSA9PT0gMSkge1xuICAgICAgICBpZiAoc3RhcnQgPT09IC0xKSBzdGFydCA9IGk7XG4gICAgICB9IGVsc2UgaWYgKGNvZGUgPT09IDB4MjAgfHwgY29kZSA9PT0gMHgwOSkge1xuICAgICAgICBpZiAoZW5kID09PSAtMSAmJiBzdGFydCAhPT0gLTEpIGVuZCA9IGk7XG4gICAgICB9IGVsc2UgaWYgKGNvZGUgPT09IDB4M2IgfHwgY29kZSA9PT0gMHgyYykge1xuICAgICAgICBpZiAoc3RhcnQgPT09IC0xKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IFN5bnRheEVycm9yKGBVbmV4cGVjdGVkIGNoYXJhY3RlciBhdCBpbmRleCAke2l9YCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZW5kID09PSAtMSkgZW5kID0gaTtcbiAgICAgICAgcHVzaChwYXJhbXMsIGhlYWRlci5zbGljZShzdGFydCwgZW5kKSwgdHJ1ZSk7XG4gICAgICAgIGlmIChjb2RlID09PSAweDJjKSB7XG4gICAgICAgICAgcHVzaChvZmZlcnMsIGV4dGVuc2lvbk5hbWUsIHBhcmFtcyk7XG4gICAgICAgICAgcGFyYW1zID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICAgICAgICBleHRlbnNpb25OYW1lID0gdW5kZWZpbmVkO1xuICAgICAgICB9XG5cbiAgICAgICAgc3RhcnQgPSBlbmQgPSAtMTtcbiAgICAgIH0gZWxzZSBpZiAoY29kZSA9PT0gMHgzZCAvKiAnPScgKi8gJiYgc3RhcnQgIT09IC0xICYmIGVuZCA9PT0gLTEpIHtcbiAgICAgICAgcGFyYW1OYW1lID0gaGVhZGVyLnNsaWNlKHN0YXJ0LCBpKTtcbiAgICAgICAgc3RhcnQgPSBlbmQgPSAtMTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRocm93IG5ldyBTeW50YXhFcnJvcihgVW5leHBlY3RlZCBjaGFyYWN0ZXIgYXQgaW5kZXggJHtpfWApO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAvL1xuICAgICAgLy8gVGhlIHZhbHVlIG9mIGEgcXVvdGVkLXN0cmluZyBhZnRlciB1bmVzY2FwaW5nIG11c3QgY29uZm9ybSB0byB0aGVcbiAgICAgIC8vIHRva2VuIEFCTkYsIHNvIG9ubHkgdG9rZW4gY2hhcmFjdGVycyBhcmUgdmFsaWQuXG4gICAgICAvLyBSZWY6IGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM2NDU1I3NlY3Rpb24tOS4xXG4gICAgICAvL1xuICAgICAgaWYgKGlzRXNjYXBpbmcpIHtcbiAgICAgICAgaWYgKHRva2VuQ2hhcnNbY29kZV0gIT09IDEpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgU3ludGF4RXJyb3IoYFVuZXhwZWN0ZWQgY2hhcmFjdGVyIGF0IGluZGV4ICR7aX1gKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoc3RhcnQgPT09IC0xKSBzdGFydCA9IGk7XG4gICAgICAgIGVsc2UgaWYgKCFtdXN0VW5lc2NhcGUpIG11c3RVbmVzY2FwZSA9IHRydWU7XG4gICAgICAgIGlzRXNjYXBpbmcgPSBmYWxzZTtcbiAgICAgIH0gZWxzZSBpZiAoaW5RdW90ZXMpIHtcbiAgICAgICAgaWYgKHRva2VuQ2hhcnNbY29kZV0gPT09IDEpIHtcbiAgICAgICAgICBpZiAoc3RhcnQgPT09IC0xKSBzdGFydCA9IGk7XG4gICAgICAgIH0gZWxzZSBpZiAoY29kZSA9PT0gMHgyMiAvKiAnXCInICovICYmIHN0YXJ0ICE9PSAtMSkge1xuICAgICAgICAgIGluUXVvdGVzID0gZmFsc2U7XG4gICAgICAgICAgZW5kID0gaTtcbiAgICAgICAgfSBlbHNlIGlmIChjb2RlID09PSAweDVjIC8qICdcXCcgKi8pIHtcbiAgICAgICAgICBpc0VzY2FwaW5nID0gdHJ1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aHJvdyBuZXcgU3ludGF4RXJyb3IoYFVuZXhwZWN0ZWQgY2hhcmFjdGVyIGF0IGluZGV4ICR7aX1gKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmIChjb2RlID09PSAweDIyICYmIGhlYWRlci5jaGFyQ29kZUF0KGkgLSAxKSA9PT0gMHgzZCkge1xuICAgICAgICBpblF1b3RlcyA9IHRydWU7XG4gICAgICB9IGVsc2UgaWYgKGVuZCA9PT0gLTEgJiYgdG9rZW5DaGFyc1tjb2RlXSA9PT0gMSkge1xuICAgICAgICBpZiAoc3RhcnQgPT09IC0xKSBzdGFydCA9IGk7XG4gICAgICB9IGVsc2UgaWYgKHN0YXJ0ICE9PSAtMSAmJiAoY29kZSA9PT0gMHgyMCB8fCBjb2RlID09PSAweDA5KSkge1xuICAgICAgICBpZiAoZW5kID09PSAtMSkgZW5kID0gaTtcbiAgICAgIH0gZWxzZSBpZiAoY29kZSA9PT0gMHgzYiB8fCBjb2RlID09PSAweDJjKSB7XG4gICAgICAgIGlmIChzdGFydCA9PT0gLTEpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgU3ludGF4RXJyb3IoYFVuZXhwZWN0ZWQgY2hhcmFjdGVyIGF0IGluZGV4ICR7aX1gKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChlbmQgPT09IC0xKSBlbmQgPSBpO1xuICAgICAgICBsZXQgdmFsdWUgPSBoZWFkZXIuc2xpY2Uoc3RhcnQsIGVuZCk7XG4gICAgICAgIGlmIChtdXN0VW5lc2NhcGUpIHtcbiAgICAgICAgICB2YWx1ZSA9IHZhbHVlLnJlcGxhY2UoL1xcXFwvZywgJycpO1xuICAgICAgICAgIG11c3RVbmVzY2FwZSA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHB1c2gocGFyYW1zLCBwYXJhbU5hbWUsIHZhbHVlKTtcbiAgICAgICAgaWYgKGNvZGUgPT09IDB4MmMpIHtcbiAgICAgICAgICBwdXNoKG9mZmVycywgZXh0ZW5zaW9uTmFtZSwgcGFyYW1zKTtcbiAgICAgICAgICBwYXJhbXMgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuICAgICAgICAgIGV4dGVuc2lvbk5hbWUgPSB1bmRlZmluZWQ7XG4gICAgICAgIH1cblxuICAgICAgICBwYXJhbU5hbWUgPSB1bmRlZmluZWQ7XG4gICAgICAgIHN0YXJ0ID0gZW5kID0gLTE7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aHJvdyBuZXcgU3ludGF4RXJyb3IoYFVuZXhwZWN0ZWQgY2hhcmFjdGVyIGF0IGluZGV4ICR7aX1gKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBpZiAoc3RhcnQgPT09IC0xIHx8IGluUXVvdGVzIHx8IGNvZGUgPT09IDB4MjAgfHwgY29kZSA9PT0gMHgwOSkge1xuICAgIHRocm93IG5ldyBTeW50YXhFcnJvcignVW5leHBlY3RlZCBlbmQgb2YgaW5wdXQnKTtcbiAgfVxuXG4gIGlmIChlbmQgPT09IC0xKSBlbmQgPSBpO1xuICBjb25zdCB0b2tlbiA9IGhlYWRlci5zbGljZShzdGFydCwgZW5kKTtcbiAgaWYgKGV4dGVuc2lvbk5hbWUgPT09IHVuZGVmaW5lZCkge1xuICAgIHB1c2gob2ZmZXJzLCB0b2tlbiwgcGFyYW1zKTtcbiAgfSBlbHNlIHtcbiAgICBpZiAocGFyYW1OYW1lID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHB1c2gocGFyYW1zLCB0b2tlbiwgdHJ1ZSk7XG4gICAgfSBlbHNlIGlmIChtdXN0VW5lc2NhcGUpIHtcbiAgICAgIHB1c2gocGFyYW1zLCBwYXJhbU5hbWUsIHRva2VuLnJlcGxhY2UoL1xcXFwvZywgJycpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcHVzaChwYXJhbXMsIHBhcmFtTmFtZSwgdG9rZW4pO1xuICAgIH1cbiAgICBwdXNoKG9mZmVycywgZXh0ZW5zaW9uTmFtZSwgcGFyYW1zKTtcbiAgfVxuXG4gIHJldHVybiBvZmZlcnM7XG59XG5cbi8qKlxuICogQnVpbGRzIHRoZSBgU2VjLVdlYlNvY2tldC1FeHRlbnNpb25zYCBoZWFkZXIgZmllbGQgdmFsdWUuXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IGV4dGVuc2lvbnMgVGhlIG1hcCBvZiBleHRlbnNpb25zIGFuZCBwYXJhbWV0ZXJzIHRvIGZvcm1hdFxuICogQHJldHVybiB7U3RyaW5nfSBBIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIGdpdmVuIG9iamVjdFxuICogQHB1YmxpY1xuICovXG5mdW5jdGlvbiBmb3JtYXQoZXh0ZW5zaW9ucykge1xuICByZXR1cm4gT2JqZWN0LmtleXMoZXh0ZW5zaW9ucylcbiAgICAubWFwKChleHRlbnNpb24pID0+IHtcbiAgICAgIGxldCBjb25maWd1cmF0aW9ucyA9IGV4dGVuc2lvbnNbZXh0ZW5zaW9uXTtcbiAgICAgIGlmICghQXJyYXkuaXNBcnJheShjb25maWd1cmF0aW9ucykpIGNvbmZpZ3VyYXRpb25zID0gW2NvbmZpZ3VyYXRpb25zXTtcbiAgICAgIHJldHVybiBjb25maWd1cmF0aW9uc1xuICAgICAgICAubWFwKChwYXJhbXMpID0+IHtcbiAgICAgICAgICByZXR1cm4gW2V4dGVuc2lvbl1cbiAgICAgICAgICAgIC5jb25jYXQoXG4gICAgICAgICAgICAgIE9iamVjdC5rZXlzKHBhcmFtcykubWFwKChrKSA9PiB7XG4gICAgICAgICAgICAgICAgbGV0IHZhbHVlcyA9IHBhcmFtc1trXTtcbiAgICAgICAgICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkodmFsdWVzKSkgdmFsdWVzID0gW3ZhbHVlc107XG4gICAgICAgICAgICAgICAgcmV0dXJuIHZhbHVlc1xuICAgICAgICAgICAgICAgICAgLm1hcCgodikgPT4gKHYgPT09IHRydWUgPyBrIDogYCR7a309JHt2fWApKVxuICAgICAgICAgICAgICAgICAgLmpvaW4oJzsgJyk7XG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuam9pbignOyAnKTtcbiAgICAgICAgfSlcbiAgICAgICAgLmpvaW4oJywgJyk7XG4gICAgfSlcbiAgICAuam9pbignLCAnKTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7IGZvcm1hdCwgcGFyc2UgfTtcbiIsICIvKiBlc2xpbnQgbm8tdW51c2VkLXZhcnM6IFtcImVycm9yXCIsIHsgXCJ2YXJzSWdub3JlUGF0dGVyblwiOiBcIl5EdXBsZXh8UmVhZGFibGUkXCIgfV0gKi9cblxuJ3VzZSBzdHJpY3QnO1xuXG5jb25zdCBFdmVudEVtaXR0ZXIgPSByZXF1aXJlKCdldmVudHMnKTtcbmNvbnN0IGh0dHBzID0gcmVxdWlyZSgnaHR0cHMnKTtcbmNvbnN0IGh0dHAgPSByZXF1aXJlKCdodHRwJyk7XG5jb25zdCBuZXQgPSByZXF1aXJlKCduZXQnKTtcbmNvbnN0IHRscyA9IHJlcXVpcmUoJ3RscycpO1xuY29uc3QgeyByYW5kb21CeXRlcywgY3JlYXRlSGFzaCB9ID0gcmVxdWlyZSgnY3J5cHRvJyk7XG5jb25zdCB7IER1cGxleCwgUmVhZGFibGUgfSA9IHJlcXVpcmUoJ3N0cmVhbScpO1xuY29uc3QgeyBVUkwgfSA9IHJlcXVpcmUoJ3VybCcpO1xuXG5jb25zdCBQZXJNZXNzYWdlRGVmbGF0ZSA9IHJlcXVpcmUoJy4vcGVybWVzc2FnZS1kZWZsYXRlJyk7XG5jb25zdCBSZWNlaXZlciA9IHJlcXVpcmUoJy4vcmVjZWl2ZXInKTtcbmNvbnN0IFNlbmRlciA9IHJlcXVpcmUoJy4vc2VuZGVyJyk7XG5jb25zdCB7XG4gIEJJTkFSWV9UWVBFUyxcbiAgRU1QVFlfQlVGRkVSLFxuICBHVUlELFxuICBrRm9yT25FdmVudEF0dHJpYnV0ZSxcbiAga0xpc3RlbmVyLFxuICBrU3RhdHVzQ29kZSxcbiAga1dlYlNvY2tldCxcbiAgTk9PUFxufSA9IHJlcXVpcmUoJy4vY29uc3RhbnRzJyk7XG5jb25zdCB7XG4gIEV2ZW50VGFyZ2V0OiB7IGFkZEV2ZW50TGlzdGVuZXIsIHJlbW92ZUV2ZW50TGlzdGVuZXIgfVxufSA9IHJlcXVpcmUoJy4vZXZlbnQtdGFyZ2V0Jyk7XG5jb25zdCB7IGZvcm1hdCwgcGFyc2UgfSA9IHJlcXVpcmUoJy4vZXh0ZW5zaW9uJyk7XG5jb25zdCB7IHRvQnVmZmVyIH0gPSByZXF1aXJlKCcuL2J1ZmZlci11dGlsJyk7XG5cbmNvbnN0IGNsb3NlVGltZW91dCA9IDMwICogMTAwMDtcbmNvbnN0IGtBYm9ydGVkID0gU3ltYm9sKCdrQWJvcnRlZCcpO1xuY29uc3QgcHJvdG9jb2xWZXJzaW9ucyA9IFs4LCAxM107XG5jb25zdCByZWFkeVN0YXRlcyA9IFsnQ09OTkVDVElORycsICdPUEVOJywgJ0NMT1NJTkcnLCAnQ0xPU0VEJ107XG5jb25zdCBzdWJwcm90b2NvbFJlZ2V4ID0gL15bISMkJSYnKitcXC0uMC05QS1aXl9gfGEten5dKyQvO1xuXG4vKipcbiAqIENsYXNzIHJlcHJlc2VudGluZyBhIFdlYlNvY2tldC5cbiAqXG4gKiBAZXh0ZW5kcyBFdmVudEVtaXR0ZXJcbiAqL1xuY2xhc3MgV2ViU29ja2V0IGV4dGVuZHMgRXZlbnRFbWl0dGVyIHtcbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBgV2ViU29ja2V0YC5cbiAgICpcbiAgICogQHBhcmFtIHsoU3RyaW5nfFVSTCl9IGFkZHJlc3MgVGhlIFVSTCB0byB3aGljaCB0byBjb25uZWN0XG4gICAqIEBwYXJhbSB7KFN0cmluZ3xTdHJpbmdbXSl9IFtwcm90b2NvbHNdIFRoZSBzdWJwcm90b2NvbHNcbiAgICogQHBhcmFtIHtPYmplY3R9IFtvcHRpb25zXSBDb25uZWN0aW9uIG9wdGlvbnNcbiAgICovXG4gIGNvbnN0cnVjdG9yKGFkZHJlc3MsIHByb3RvY29scywgb3B0aW9ucykge1xuICAgIHN1cGVyKCk7XG5cbiAgICB0aGlzLl9iaW5hcnlUeXBlID0gQklOQVJZX1RZUEVTWzBdO1xuICAgIHRoaXMuX2Nsb3NlQ29kZSA9IDEwMDY7XG4gICAgdGhpcy5fY2xvc2VGcmFtZVJlY2VpdmVkID0gZmFsc2U7XG4gICAgdGhpcy5fY2xvc2VGcmFtZVNlbnQgPSBmYWxzZTtcbiAgICB0aGlzLl9jbG9zZU1lc3NhZ2UgPSBFTVBUWV9CVUZGRVI7XG4gICAgdGhpcy5fY2xvc2VUaW1lciA9IG51bGw7XG4gICAgdGhpcy5fZXh0ZW5zaW9ucyA9IHt9O1xuICAgIHRoaXMuX3BhdXNlZCA9IGZhbHNlO1xuICAgIHRoaXMuX3Byb3RvY29sID0gJyc7XG4gICAgdGhpcy5fcmVhZHlTdGF0ZSA9IFdlYlNvY2tldC5DT05ORUNUSU5HO1xuICAgIHRoaXMuX3JlY2VpdmVyID0gbnVsbDtcbiAgICB0aGlzLl9zZW5kZXIgPSBudWxsO1xuICAgIHRoaXMuX3NvY2tldCA9IG51bGw7XG5cbiAgICBpZiAoYWRkcmVzcyAhPT0gbnVsbCkge1xuICAgICAgdGhpcy5fYnVmZmVyZWRBbW91bnQgPSAwO1xuICAgICAgdGhpcy5faXNTZXJ2ZXIgPSBmYWxzZTtcbiAgICAgIHRoaXMuX3JlZGlyZWN0cyA9IDA7XG5cbiAgICAgIGlmIChwcm90b2NvbHMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBwcm90b2NvbHMgPSBbXTtcbiAgICAgIH0gZWxzZSBpZiAoIUFycmF5LmlzQXJyYXkocHJvdG9jb2xzKSkge1xuICAgICAgICBpZiAodHlwZW9mIHByb3RvY29scyA9PT0gJ29iamVjdCcgJiYgcHJvdG9jb2xzICE9PSBudWxsKSB7XG4gICAgICAgICAgb3B0aW9ucyA9IHByb3RvY29scztcbiAgICAgICAgICBwcm90b2NvbHMgPSBbXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBwcm90b2NvbHMgPSBbcHJvdG9jb2xzXTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpbml0QXNDbGllbnQodGhpcywgYWRkcmVzcywgcHJvdG9jb2xzLCBvcHRpb25zKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5faXNTZXJ2ZXIgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBUaGlzIGRldmlhdGVzIGZyb20gdGhlIFdIQVRXRyBpbnRlcmZhY2Ugc2luY2Ugd3MgZG9lc24ndCBzdXBwb3J0IHRoZVxuICAgKiByZXF1aXJlZCBkZWZhdWx0IFwiYmxvYlwiIHR5cGUgKGluc3RlYWQgd2UgZGVmaW5lIGEgY3VzdG9tIFwibm9kZWJ1ZmZlclwiXG4gICAqIHR5cGUpLlxuICAgKlxuICAgKiBAdHlwZSB7U3RyaW5nfVxuICAgKi9cbiAgZ2V0IGJpbmFyeVR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2JpbmFyeVR5cGU7XG4gIH1cblxuICBzZXQgYmluYXJ5VHlwZSh0eXBlKSB7XG4gICAgaWYgKCFCSU5BUllfVFlQRVMuaW5jbHVkZXModHlwZSkpIHJldHVybjtcblxuICAgIHRoaXMuX2JpbmFyeVR5cGUgPSB0eXBlO1xuXG4gICAgLy9cbiAgICAvLyBBbGxvdyB0byBjaGFuZ2UgYGJpbmFyeVR5cGVgIG9uIHRoZSBmbHkuXG4gICAgLy9cbiAgICBpZiAodGhpcy5fcmVjZWl2ZXIpIHRoaXMuX3JlY2VpdmVyLl9iaW5hcnlUeXBlID0gdHlwZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAdHlwZSB7TnVtYmVyfVxuICAgKi9cbiAgZ2V0IGJ1ZmZlcmVkQW1vdW50KCkge1xuICAgIGlmICghdGhpcy5fc29ja2V0KSByZXR1cm4gdGhpcy5fYnVmZmVyZWRBbW91bnQ7XG5cbiAgICByZXR1cm4gdGhpcy5fc29ja2V0Ll93cml0YWJsZVN0YXRlLmxlbmd0aCArIHRoaXMuX3NlbmRlci5fYnVmZmVyZWRCeXRlcztcbiAgfVxuXG4gIC8qKlxuICAgKiBAdHlwZSB7U3RyaW5nfVxuICAgKi9cbiAgZ2V0IGV4dGVuc2lvbnMoKSB7XG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuX2V4dGVuc2lvbnMpLmpvaW4oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAdHlwZSB7Qm9vbGVhbn1cbiAgICovXG4gIGdldCBpc1BhdXNlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fcGF1c2VkO1xuICB9XG5cbiAgLyoqXG4gICAqIEB0eXBlIHtGdW5jdGlvbn1cbiAgICovXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIGdldCBvbmNsb3NlKCkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIEB0eXBlIHtGdW5jdGlvbn1cbiAgICovXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIGdldCBvbmVycm9yKCkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIEB0eXBlIHtGdW5jdGlvbn1cbiAgICovXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIGdldCBvbm9wZW4oKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICAvKipcbiAgICogQHR5cGUge0Z1bmN0aW9ufVxuICAgKi9cbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgZ2V0IG9ubWVzc2FnZSgpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBAdHlwZSB7U3RyaW5nfVxuICAgKi9cbiAgZ2V0IHByb3RvY29sKCkge1xuICAgIHJldHVybiB0aGlzLl9wcm90b2NvbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBAdHlwZSB7TnVtYmVyfVxuICAgKi9cbiAgZ2V0IHJlYWR5U3RhdGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3JlYWR5U3RhdGU7XG4gIH1cblxuICAvKipcbiAgICogQHR5cGUge1N0cmluZ31cbiAgICovXG4gIGdldCB1cmwoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3VybDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdXAgdGhlIHNvY2tldCBhbmQgdGhlIGludGVybmFsIHJlc291cmNlcy5cbiAgICpcbiAgICogQHBhcmFtIHtEdXBsZXh9IHNvY2tldCBUaGUgbmV0d29yayBzb2NrZXQgYmV0d2VlbiB0aGUgc2VydmVyIGFuZCBjbGllbnRcbiAgICogQHBhcmFtIHtCdWZmZXJ9IGhlYWQgVGhlIGZpcnN0IHBhY2tldCBvZiB0aGUgdXBncmFkZWQgc3RyZWFtXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zIE9wdGlvbnMgb2JqZWN0XG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IFtvcHRpb25zLmdlbmVyYXRlTWFza10gVGhlIGZ1bmN0aW9uIHVzZWQgdG8gZ2VuZXJhdGUgdGhlXG4gICAqICAgICBtYXNraW5nIGtleVxuICAgKiBAcGFyYW0ge051bWJlcn0gW29wdGlvbnMubWF4UGF5bG9hZD0wXSBUaGUgbWF4aW11bSBhbGxvd2VkIG1lc3NhZ2Ugc2l6ZVxuICAgKiBAcGFyYW0ge0Jvb2xlYW59IFtvcHRpb25zLnNraXBVVEY4VmFsaWRhdGlvbj1mYWxzZV0gU3BlY2lmaWVzIHdoZXRoZXIgb3JcbiAgICogICAgIG5vdCB0byBza2lwIFVURi04IHZhbGlkYXRpb24gZm9yIHRleHQgYW5kIGNsb3NlIG1lc3NhZ2VzXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBzZXRTb2NrZXQoc29ja2V0LCBoZWFkLCBvcHRpb25zKSB7XG4gICAgY29uc3QgcmVjZWl2ZXIgPSBuZXcgUmVjZWl2ZXIoe1xuICAgICAgYmluYXJ5VHlwZTogdGhpcy5iaW5hcnlUeXBlLFxuICAgICAgZXh0ZW5zaW9uczogdGhpcy5fZXh0ZW5zaW9ucyxcbiAgICAgIGlzU2VydmVyOiB0aGlzLl9pc1NlcnZlcixcbiAgICAgIG1heFBheWxvYWQ6IG9wdGlvbnMubWF4UGF5bG9hZCxcbiAgICAgIHNraXBVVEY4VmFsaWRhdGlvbjogb3B0aW9ucy5za2lwVVRGOFZhbGlkYXRpb25cbiAgICB9KTtcblxuICAgIHRoaXMuX3NlbmRlciA9IG5ldyBTZW5kZXIoc29ja2V0LCB0aGlzLl9leHRlbnNpb25zLCBvcHRpb25zLmdlbmVyYXRlTWFzayk7XG4gICAgdGhpcy5fcmVjZWl2ZXIgPSByZWNlaXZlcjtcbiAgICB0aGlzLl9zb2NrZXQgPSBzb2NrZXQ7XG5cbiAgICByZWNlaXZlcltrV2ViU29ja2V0XSA9IHRoaXM7XG4gICAgc29ja2V0W2tXZWJTb2NrZXRdID0gdGhpcztcblxuICAgIHJlY2VpdmVyLm9uKCdjb25jbHVkZScsIHJlY2VpdmVyT25Db25jbHVkZSk7XG4gICAgcmVjZWl2ZXIub24oJ2RyYWluJywgcmVjZWl2ZXJPbkRyYWluKTtcbiAgICByZWNlaXZlci5vbignZXJyb3InLCByZWNlaXZlck9uRXJyb3IpO1xuICAgIHJlY2VpdmVyLm9uKCdtZXNzYWdlJywgcmVjZWl2ZXJPbk1lc3NhZ2UpO1xuICAgIHJlY2VpdmVyLm9uKCdwaW5nJywgcmVjZWl2ZXJPblBpbmcpO1xuICAgIHJlY2VpdmVyLm9uKCdwb25nJywgcmVjZWl2ZXJPblBvbmcpO1xuXG4gICAgLy9cbiAgICAvLyBUaGVzZSBtZXRob2RzIG1heSBub3QgYmUgYXZhaWxhYmxlIGlmIGBzb2NrZXRgIGlzIGp1c3QgYSBgRHVwbGV4YC5cbiAgICAvL1xuICAgIGlmIChzb2NrZXQuc2V0VGltZW91dCkgc29ja2V0LnNldFRpbWVvdXQoMCk7XG4gICAgaWYgKHNvY2tldC5zZXROb0RlbGF5KSBzb2NrZXQuc2V0Tm9EZWxheSgpO1xuXG4gICAgaWYgKGhlYWQubGVuZ3RoID4gMCkgc29ja2V0LnVuc2hpZnQoaGVhZCk7XG5cbiAgICBzb2NrZXQub24oJ2Nsb3NlJywgc29ja2V0T25DbG9zZSk7XG4gICAgc29ja2V0Lm9uKCdkYXRhJywgc29ja2V0T25EYXRhKTtcbiAgICBzb2NrZXQub24oJ2VuZCcsIHNvY2tldE9uRW5kKTtcbiAgICBzb2NrZXQub24oJ2Vycm9yJywgc29ja2V0T25FcnJvcik7XG5cbiAgICB0aGlzLl9yZWFkeVN0YXRlID0gV2ViU29ja2V0Lk9QRU47XG4gICAgdGhpcy5lbWl0KCdvcGVuJyk7XG4gIH1cblxuICAvKipcbiAgICogRW1pdCB0aGUgYCdjbG9zZSdgIGV2ZW50LlxuICAgKlxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgZW1pdENsb3NlKCkge1xuICAgIGlmICghdGhpcy5fc29ja2V0KSB7XG4gICAgICB0aGlzLl9yZWFkeVN0YXRlID0gV2ViU29ja2V0LkNMT1NFRDtcbiAgICAgIHRoaXMuZW1pdCgnY2xvc2UnLCB0aGlzLl9jbG9zZUNvZGUsIHRoaXMuX2Nsb3NlTWVzc2FnZSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX2V4dGVuc2lvbnNbUGVyTWVzc2FnZURlZmxhdGUuZXh0ZW5zaW9uTmFtZV0pIHtcbiAgICAgIHRoaXMuX2V4dGVuc2lvbnNbUGVyTWVzc2FnZURlZmxhdGUuZXh0ZW5zaW9uTmFtZV0uY2xlYW51cCgpO1xuICAgIH1cblxuICAgIHRoaXMuX3JlY2VpdmVyLnJlbW92ZUFsbExpc3RlbmVycygpO1xuICAgIHRoaXMuX3JlYWR5U3RhdGUgPSBXZWJTb2NrZXQuQ0xPU0VEO1xuICAgIHRoaXMuZW1pdCgnY2xvc2UnLCB0aGlzLl9jbG9zZUNvZGUsIHRoaXMuX2Nsb3NlTWVzc2FnZSk7XG4gIH1cblxuICAvKipcbiAgICogU3RhcnQgYSBjbG9zaW5nIGhhbmRzaGFrZS5cbiAgICpcbiAgICogICAgICAgICAgKy0tLS0tLS0tLS0rICAgKy0tLS0tLS0tLS0tKyAgICstLS0tLS0tLS0tK1xuICAgKiAgICAgLSAtIC18d3MuY2xvc2UoKXwtLT58Y2xvc2UgZnJhbWV8LS0+fHdzLmNsb3NlKCl8LSAtIC1cbiAgICogICAgfCAgICAgKy0tLS0tLS0tLS0rICAgKy0tLS0tLS0tLS0tKyAgICstLS0tLS0tLS0tKyAgICAgfFxuICAgKiAgICAgICAgICArLS0tLS0tLS0tLSsgICArLS0tLS0tLS0tLS0rICAgICAgICAgfFxuICAgKiBDTE9TSU5HICB8d3MuY2xvc2UoKXw8LS18Y2xvc2UgZnJhbWV8PC0tKy0tLS0tKyAgICAgICBDTE9TSU5HXG4gICAqICAgICAgICAgICstLS0tLS0tLS0tKyAgICstLS0tLS0tLS0tLSsgICB8XG4gICAqICAgIHwgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8ICAgKy0tLSsgICAgICAgIHxcbiAgICogICAgICAgICAgICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLT58ZmlufCAtIC0gLSAtXG4gICAqICAgIHwgICAgICAgICArLS0tKyAgICAgICAgICAgICAgICAgICAgICB8ICAgKy0tLStcbiAgICogICAgIC0gLSAtIC0gLXxmaW58PC0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbiAgICogICAgICAgICAgICAgICstLS0rXG4gICAqXG4gICAqIEBwYXJhbSB7TnVtYmVyfSBbY29kZV0gU3RhdHVzIGNvZGUgZXhwbGFpbmluZyB3aHkgdGhlIGNvbm5lY3Rpb24gaXMgY2xvc2luZ1xuICAgKiBAcGFyYW0geyhTdHJpbmd8QnVmZmVyKX0gW2RhdGFdIFRoZSByZWFzb24gd2h5IHRoZSBjb25uZWN0aW9uIGlzXG4gICAqICAgICBjbG9zaW5nXG4gICAqIEBwdWJsaWNcbiAgICovXG4gIGNsb3NlKGNvZGUsIGRhdGEpIHtcbiAgICBpZiAodGhpcy5yZWFkeVN0YXRlID09PSBXZWJTb2NrZXQuQ0xPU0VEKSByZXR1cm47XG4gICAgaWYgKHRoaXMucmVhZHlTdGF0ZSA9PT0gV2ViU29ja2V0LkNPTk5FQ1RJTkcpIHtcbiAgICAgIGNvbnN0IG1zZyA9ICdXZWJTb2NrZXQgd2FzIGNsb3NlZCBiZWZvcmUgdGhlIGNvbm5lY3Rpb24gd2FzIGVzdGFibGlzaGVkJztcbiAgICAgIGFib3J0SGFuZHNoYWtlKHRoaXMsIHRoaXMuX3JlcSwgbXNnKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5yZWFkeVN0YXRlID09PSBXZWJTb2NrZXQuQ0xPU0lORykge1xuICAgICAgaWYgKFxuICAgICAgICB0aGlzLl9jbG9zZUZyYW1lU2VudCAmJlxuICAgICAgICAodGhpcy5fY2xvc2VGcmFtZVJlY2VpdmVkIHx8IHRoaXMuX3JlY2VpdmVyLl93cml0YWJsZVN0YXRlLmVycm9yRW1pdHRlZClcbiAgICAgICkge1xuICAgICAgICB0aGlzLl9zb2NrZXQuZW5kKCk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9yZWFkeVN0YXRlID0gV2ViU29ja2V0LkNMT1NJTkc7XG4gICAgdGhpcy5fc2VuZGVyLmNsb3NlKGNvZGUsIGRhdGEsICF0aGlzLl9pc1NlcnZlciwgKGVycikgPT4ge1xuICAgICAgLy9cbiAgICAgIC8vIFRoaXMgZXJyb3IgaXMgaGFuZGxlZCBieSB0aGUgYCdlcnJvcidgIGxpc3RlbmVyIG9uIHRoZSBzb2NrZXQuIFdlIG9ubHlcbiAgICAgIC8vIHdhbnQgdG8ga25vdyBpZiB0aGUgY2xvc2UgZnJhbWUgaGFzIGJlZW4gc2VudCBoZXJlLlxuICAgICAgLy9cbiAgICAgIGlmIChlcnIpIHJldHVybjtcblxuICAgICAgdGhpcy5fY2xvc2VGcmFtZVNlbnQgPSB0cnVlO1xuXG4gICAgICBpZiAoXG4gICAgICAgIHRoaXMuX2Nsb3NlRnJhbWVSZWNlaXZlZCB8fFxuICAgICAgICB0aGlzLl9yZWNlaXZlci5fd3JpdGFibGVTdGF0ZS5lcnJvckVtaXR0ZWRcbiAgICAgICkge1xuICAgICAgICB0aGlzLl9zb2NrZXQuZW5kKCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICAvL1xuICAgIC8vIFNwZWNpZnkgYSB0aW1lb3V0IGZvciB0aGUgY2xvc2luZyBoYW5kc2hha2UgdG8gY29tcGxldGUuXG4gICAgLy9cbiAgICB0aGlzLl9jbG9zZVRpbWVyID0gc2V0VGltZW91dChcbiAgICAgIHRoaXMuX3NvY2tldC5kZXN0cm95LmJpbmQodGhpcy5fc29ja2V0KSxcbiAgICAgIGNsb3NlVGltZW91dFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogUGF1c2UgdGhlIHNvY2tldC5cbiAgICpcbiAgICogQHB1YmxpY1xuICAgKi9cbiAgcGF1c2UoKSB7XG4gICAgaWYgKFxuICAgICAgdGhpcy5yZWFkeVN0YXRlID09PSBXZWJTb2NrZXQuQ09OTkVDVElORyB8fFxuICAgICAgdGhpcy5yZWFkeVN0YXRlID09PSBXZWJTb2NrZXQuQ0xPU0VEXG4gICAgKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fcGF1c2VkID0gdHJ1ZTtcbiAgICB0aGlzLl9zb2NrZXQucGF1c2UoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZW5kIGEgcGluZy5cbiAgICpcbiAgICogQHBhcmFtIHsqfSBbZGF0YV0gVGhlIGRhdGEgdG8gc2VuZFxuICAgKiBAcGFyYW0ge0Jvb2xlYW59IFttYXNrXSBJbmRpY2F0ZXMgd2hldGhlciBvciBub3QgdG8gbWFzayBgZGF0YWBcbiAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NiXSBDYWxsYmFjayB3aGljaCBpcyBleGVjdXRlZCB3aGVuIHRoZSBwaW5nIGlzIHNlbnRcbiAgICogQHB1YmxpY1xuICAgKi9cbiAgcGluZyhkYXRhLCBtYXNrLCBjYikge1xuICAgIGlmICh0aGlzLnJlYWR5U3RhdGUgPT09IFdlYlNvY2tldC5DT05ORUNUSU5HKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1dlYlNvY2tldCBpcyBub3Qgb3BlbjogcmVhZHlTdGF0ZSAwIChDT05ORUNUSU5HKScpO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgZGF0YSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgY2IgPSBkYXRhO1xuICAgICAgZGF0YSA9IG1hc2sgPSB1bmRlZmluZWQ7XG4gICAgfSBlbHNlIGlmICh0eXBlb2YgbWFzayA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgY2IgPSBtYXNrO1xuICAgICAgbWFzayA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGRhdGEgPT09ICdudW1iZXInKSBkYXRhID0gZGF0YS50b1N0cmluZygpO1xuXG4gICAgaWYgKHRoaXMucmVhZHlTdGF0ZSAhPT0gV2ViU29ja2V0Lk9QRU4pIHtcbiAgICAgIHNlbmRBZnRlckNsb3NlKHRoaXMsIGRhdGEsIGNiKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAobWFzayA9PT0gdW5kZWZpbmVkKSBtYXNrID0gIXRoaXMuX2lzU2VydmVyO1xuICAgIHRoaXMuX3NlbmRlci5waW5nKGRhdGEgfHwgRU1QVFlfQlVGRkVSLCBtYXNrLCBjYik7XG4gIH1cblxuICAvKipcbiAgICogU2VuZCBhIHBvbmcuXG4gICAqXG4gICAqIEBwYXJhbSB7Kn0gW2RhdGFdIFRoZSBkYXRhIHRvIHNlbmRcbiAgICogQHBhcmFtIHtCb29sZWFufSBbbWFza10gSW5kaWNhdGVzIHdoZXRoZXIgb3Igbm90IHRvIG1hc2sgYGRhdGFgXG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYl0gQ2FsbGJhY2sgd2hpY2ggaXMgZXhlY3V0ZWQgd2hlbiB0aGUgcG9uZyBpcyBzZW50XG4gICAqIEBwdWJsaWNcbiAgICovXG4gIHBvbmcoZGF0YSwgbWFzaywgY2IpIHtcbiAgICBpZiAodGhpcy5yZWFkeVN0YXRlID09PSBXZWJTb2NrZXQuQ09OTkVDVElORykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdXZWJTb2NrZXQgaXMgbm90IG9wZW46IHJlYWR5U3RhdGUgMCAoQ09OTkVDVElORyknKTtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGRhdGEgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGNiID0gZGF0YTtcbiAgICAgIGRhdGEgPSBtYXNrID0gdW5kZWZpbmVkO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIG1hc2sgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGNiID0gbWFzaztcbiAgICAgIG1hc2sgPSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBkYXRhID09PSAnbnVtYmVyJykgZGF0YSA9IGRhdGEudG9TdHJpbmcoKTtcblxuICAgIGlmICh0aGlzLnJlYWR5U3RhdGUgIT09IFdlYlNvY2tldC5PUEVOKSB7XG4gICAgICBzZW5kQWZ0ZXJDbG9zZSh0aGlzLCBkYXRhLCBjYik7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKG1hc2sgPT09IHVuZGVmaW5lZCkgbWFzayA9ICF0aGlzLl9pc1NlcnZlcjtcbiAgICB0aGlzLl9zZW5kZXIucG9uZyhkYXRhIHx8IEVNUFRZX0JVRkZFUiwgbWFzaywgY2IpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc3VtZSB0aGUgc29ja2V0LlxuICAgKlxuICAgKiBAcHVibGljXG4gICAqL1xuICByZXN1bWUoKSB7XG4gICAgaWYgKFxuICAgICAgdGhpcy5yZWFkeVN0YXRlID09PSBXZWJTb2NrZXQuQ09OTkVDVElORyB8fFxuICAgICAgdGhpcy5yZWFkeVN0YXRlID09PSBXZWJTb2NrZXQuQ0xPU0VEXG4gICAgKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fcGF1c2VkID0gZmFsc2U7XG4gICAgaWYgKCF0aGlzLl9yZWNlaXZlci5fd3JpdGFibGVTdGF0ZS5uZWVkRHJhaW4pIHRoaXMuX3NvY2tldC5yZXN1bWUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZW5kIGEgZGF0YSBtZXNzYWdlLlxuICAgKlxuICAgKiBAcGFyYW0geyp9IGRhdGEgVGhlIG1lc3NhZ2UgdG8gc2VuZFxuICAgKiBAcGFyYW0ge09iamVjdH0gW29wdGlvbnNdIE9wdGlvbnMgb2JqZWN0XG4gICAqIEBwYXJhbSB7Qm9vbGVhbn0gW29wdGlvbnMuYmluYXJ5XSBTcGVjaWZpZXMgd2hldGhlciBgZGF0YWAgaXMgYmluYXJ5IG9yXG4gICAqICAgICB0ZXh0XG4gICAqIEBwYXJhbSB7Qm9vbGVhbn0gW29wdGlvbnMuY29tcHJlc3NdIFNwZWNpZmllcyB3aGV0aGVyIG9yIG5vdCB0byBjb21wcmVzc1xuICAgKiAgICAgYGRhdGFgXG4gICAqIEBwYXJhbSB7Qm9vbGVhbn0gW29wdGlvbnMuZmluPXRydWVdIFNwZWNpZmllcyB3aGV0aGVyIHRoZSBmcmFnbWVudCBpcyB0aGVcbiAgICogICAgIGxhc3Qgb25lXG4gICAqIEBwYXJhbSB7Qm9vbGVhbn0gW29wdGlvbnMubWFza10gU3BlY2lmaWVzIHdoZXRoZXIgb3Igbm90IHRvIG1hc2sgYGRhdGFgXG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYl0gQ2FsbGJhY2sgd2hpY2ggaXMgZXhlY3V0ZWQgd2hlbiBkYXRhIGlzIHdyaXR0ZW4gb3V0XG4gICAqIEBwdWJsaWNcbiAgICovXG4gIHNlbmQoZGF0YSwgb3B0aW9ucywgY2IpIHtcbiAgICBpZiAodGhpcy5yZWFkeVN0YXRlID09PSBXZWJTb2NrZXQuQ09OTkVDVElORykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdXZWJTb2NrZXQgaXMgbm90IG9wZW46IHJlYWR5U3RhdGUgMCAoQ09OTkVDVElORyknKTtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIG9wdGlvbnMgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGNiID0gb3B0aW9ucztcbiAgICAgIG9wdGlvbnMgPSB7fTtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGRhdGEgPT09ICdudW1iZXInKSBkYXRhID0gZGF0YS50b1N0cmluZygpO1xuXG4gICAgaWYgKHRoaXMucmVhZHlTdGF0ZSAhPT0gV2ViU29ja2V0Lk9QRU4pIHtcbiAgICAgIHNlbmRBZnRlckNsb3NlKHRoaXMsIGRhdGEsIGNiKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBvcHRzID0ge1xuICAgICAgYmluYXJ5OiB0eXBlb2YgZGF0YSAhPT0gJ3N0cmluZycsXG4gICAgICBtYXNrOiAhdGhpcy5faXNTZXJ2ZXIsXG4gICAgICBjb21wcmVzczogdHJ1ZSxcbiAgICAgIGZpbjogdHJ1ZSxcbiAgICAgIC4uLm9wdGlvbnNcbiAgICB9O1xuXG4gICAgaWYgKCF0aGlzLl9leHRlbnNpb25zW1Blck1lc3NhZ2VEZWZsYXRlLmV4dGVuc2lvbk5hbWVdKSB7XG4gICAgICBvcHRzLmNvbXByZXNzID0gZmFsc2U7XG4gICAgfVxuXG4gICAgdGhpcy5fc2VuZGVyLnNlbmQoZGF0YSB8fCBFTVBUWV9CVUZGRVIsIG9wdHMsIGNiKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGb3JjaWJseSBjbG9zZSB0aGUgY29ubmVjdGlvbi5cbiAgICpcbiAgICogQHB1YmxpY1xuICAgKi9cbiAgdGVybWluYXRlKCkge1xuICAgIGlmICh0aGlzLnJlYWR5U3RhdGUgPT09IFdlYlNvY2tldC5DTE9TRUQpIHJldHVybjtcbiAgICBpZiAodGhpcy5yZWFkeVN0YXRlID09PSBXZWJTb2NrZXQuQ09OTkVDVElORykge1xuICAgICAgY29uc3QgbXNnID0gJ1dlYlNvY2tldCB3YXMgY2xvc2VkIGJlZm9yZSB0aGUgY29ubmVjdGlvbiB3YXMgZXN0YWJsaXNoZWQnO1xuICAgICAgYWJvcnRIYW5kc2hha2UodGhpcywgdGhpcy5fcmVxLCBtc2cpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9zb2NrZXQpIHtcbiAgICAgIHRoaXMuX3JlYWR5U3RhdGUgPSBXZWJTb2NrZXQuQ0xPU0lORztcbiAgICAgIHRoaXMuX3NvY2tldC5kZXN0cm95KCk7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogQGNvbnN0YW50IHtOdW1iZXJ9IENPTk5FQ1RJTkdcbiAqIEBtZW1iZXJvZiBXZWJTb2NrZXRcbiAqL1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KFdlYlNvY2tldCwgJ0NPTk5FQ1RJTkcnLCB7XG4gIGVudW1lcmFibGU6IHRydWUsXG4gIHZhbHVlOiByZWFkeVN0YXRlcy5pbmRleE9mKCdDT05ORUNUSU5HJylcbn0pO1xuXG4vKipcbiAqIEBjb25zdGFudCB7TnVtYmVyfSBDT05ORUNUSU5HXG4gKiBAbWVtYmVyb2YgV2ViU29ja2V0LnByb3RvdHlwZVxuICovXG5PYmplY3QuZGVmaW5lUHJvcGVydHkoV2ViU29ja2V0LnByb3RvdHlwZSwgJ0NPTk5FQ1RJTkcnLCB7XG4gIGVudW1lcmFibGU6IHRydWUsXG4gIHZhbHVlOiByZWFkeVN0YXRlcy5pbmRleE9mKCdDT05ORUNUSU5HJylcbn0pO1xuXG4vKipcbiAqIEBjb25zdGFudCB7TnVtYmVyfSBPUEVOXG4gKiBAbWVtYmVyb2YgV2ViU29ja2V0XG4gKi9cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShXZWJTb2NrZXQsICdPUEVOJywge1xuICBlbnVtZXJhYmxlOiB0cnVlLFxuICB2YWx1ZTogcmVhZHlTdGF0ZXMuaW5kZXhPZignT1BFTicpXG59KTtcblxuLyoqXG4gKiBAY29uc3RhbnQge051bWJlcn0gT1BFTlxuICogQG1lbWJlcm9mIFdlYlNvY2tldC5wcm90b3R5cGVcbiAqL1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KFdlYlNvY2tldC5wcm90b3R5cGUsICdPUEVOJywge1xuICBlbnVtZXJhYmxlOiB0cnVlLFxuICB2YWx1ZTogcmVhZHlTdGF0ZXMuaW5kZXhPZignT1BFTicpXG59KTtcblxuLyoqXG4gKiBAY29uc3RhbnQge051bWJlcn0gQ0xPU0lOR1xuICogQG1lbWJlcm9mIFdlYlNvY2tldFxuICovXG5PYmplY3QuZGVmaW5lUHJvcGVydHkoV2ViU29ja2V0LCAnQ0xPU0lORycsIHtcbiAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgdmFsdWU6IHJlYWR5U3RhdGVzLmluZGV4T2YoJ0NMT1NJTkcnKVxufSk7XG5cbi8qKlxuICogQGNvbnN0YW50IHtOdW1iZXJ9IENMT1NJTkdcbiAqIEBtZW1iZXJvZiBXZWJTb2NrZXQucHJvdG90eXBlXG4gKi9cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShXZWJTb2NrZXQucHJvdG90eXBlLCAnQ0xPU0lORycsIHtcbiAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgdmFsdWU6IHJlYWR5U3RhdGVzLmluZGV4T2YoJ0NMT1NJTkcnKVxufSk7XG5cbi8qKlxuICogQGNvbnN0YW50IHtOdW1iZXJ9IENMT1NFRFxuICogQG1lbWJlcm9mIFdlYlNvY2tldFxuICovXG5PYmplY3QuZGVmaW5lUHJvcGVydHkoV2ViU29ja2V0LCAnQ0xPU0VEJywge1xuICBlbnVtZXJhYmxlOiB0cnVlLFxuICB2YWx1ZTogcmVhZHlTdGF0ZXMuaW5kZXhPZignQ0xPU0VEJylcbn0pO1xuXG4vKipcbiAqIEBjb25zdGFudCB7TnVtYmVyfSBDTE9TRURcbiAqIEBtZW1iZXJvZiBXZWJTb2NrZXQucHJvdG90eXBlXG4gKi9cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShXZWJTb2NrZXQucHJvdG90eXBlLCAnQ0xPU0VEJywge1xuICBlbnVtZXJhYmxlOiB0cnVlLFxuICB2YWx1ZTogcmVhZHlTdGF0ZXMuaW5kZXhPZignQ0xPU0VEJylcbn0pO1xuXG5bXG4gICdiaW5hcnlUeXBlJyxcbiAgJ2J1ZmZlcmVkQW1vdW50JyxcbiAgJ2V4dGVuc2lvbnMnLFxuICAnaXNQYXVzZWQnLFxuICAncHJvdG9jb2wnLFxuICAncmVhZHlTdGF0ZScsXG4gICd1cmwnXG5dLmZvckVhY2goKHByb3BlcnR5KSA9PiB7XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShXZWJTb2NrZXQucHJvdG90eXBlLCBwcm9wZXJ0eSwgeyBlbnVtZXJhYmxlOiB0cnVlIH0pO1xufSk7XG5cbi8vXG4vLyBBZGQgdGhlIGBvbm9wZW5gLCBgb25lcnJvcmAsIGBvbmNsb3NlYCwgYW5kIGBvbm1lc3NhZ2VgIGF0dHJpYnV0ZXMuXG4vLyBTZWUgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvY29tbXMuaHRtbCN0aGUtd2Vic29ja2V0LWludGVyZmFjZVxuLy9cblsnb3BlbicsICdlcnJvcicsICdjbG9zZScsICdtZXNzYWdlJ10uZm9yRWFjaCgobWV0aG9kKSA9PiB7XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShXZWJTb2NrZXQucHJvdG90eXBlLCBgb24ke21ldGhvZH1gLCB7XG4gICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICBnZXQoKSB7XG4gICAgICBmb3IgKGNvbnN0IGxpc3RlbmVyIG9mIHRoaXMubGlzdGVuZXJzKG1ldGhvZCkpIHtcbiAgICAgICAgaWYgKGxpc3RlbmVyW2tGb3JPbkV2ZW50QXR0cmlidXRlXSkgcmV0dXJuIGxpc3RlbmVyW2tMaXN0ZW5lcl07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH0sXG4gICAgc2V0KGhhbmRsZXIpIHtcbiAgICAgIGZvciAoY29uc3QgbGlzdGVuZXIgb2YgdGhpcy5saXN0ZW5lcnMobWV0aG9kKSkge1xuICAgICAgICBpZiAobGlzdGVuZXJba0Zvck9uRXZlbnRBdHRyaWJ1dGVdKSB7XG4gICAgICAgICAgdGhpcy5yZW1vdmVMaXN0ZW5lcihtZXRob2QsIGxpc3RlbmVyKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAodHlwZW9mIGhhbmRsZXIgIT09ICdmdW5jdGlvbicpIHJldHVybjtcblxuICAgICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKG1ldGhvZCwgaGFuZGxlciwge1xuICAgICAgICBba0Zvck9uRXZlbnRBdHRyaWJ1dGVdOiB0cnVlXG4gICAgICB9KTtcbiAgICB9XG4gIH0pO1xufSk7XG5cbldlYlNvY2tldC5wcm90b3R5cGUuYWRkRXZlbnRMaXN0ZW5lciA9IGFkZEV2ZW50TGlzdGVuZXI7XG5XZWJTb2NrZXQucHJvdG90eXBlLnJlbW92ZUV2ZW50TGlzdGVuZXIgPSByZW1vdmVFdmVudExpc3RlbmVyO1xuXG5tb2R1bGUuZXhwb3J0cyA9IFdlYlNvY2tldDtcblxuLyoqXG4gKiBJbml0aWFsaXplIGEgV2ViU29ja2V0IGNsaWVudC5cbiAqXG4gKiBAcGFyYW0ge1dlYlNvY2tldH0gd2Vic29ja2V0IFRoZSBjbGllbnQgdG8gaW5pdGlhbGl6ZVxuICogQHBhcmFtIHsoU3RyaW5nfFVSTCl9IGFkZHJlc3MgVGhlIFVSTCB0byB3aGljaCB0byBjb25uZWN0XG4gKiBAcGFyYW0ge0FycmF5fSBwcm90b2NvbHMgVGhlIHN1YnByb3RvY29sc1xuICogQHBhcmFtIHtPYmplY3R9IFtvcHRpb25zXSBDb25uZWN0aW9uIG9wdGlvbnNcbiAqIEBwYXJhbSB7Qm9vbGVhbn0gW29wdGlvbnMuZm9sbG93UmVkaXJlY3RzPWZhbHNlXSBXaGV0aGVyIG9yIG5vdCB0byBmb2xsb3dcbiAqICAgICByZWRpcmVjdHNcbiAqIEBwYXJhbSB7RnVuY3Rpb259IFtvcHRpb25zLmdlbmVyYXRlTWFza10gVGhlIGZ1bmN0aW9uIHVzZWQgdG8gZ2VuZXJhdGUgdGhlXG4gKiAgICAgbWFza2luZyBrZXlcbiAqIEBwYXJhbSB7TnVtYmVyfSBbb3B0aW9ucy5oYW5kc2hha2VUaW1lb3V0XSBUaW1lb3V0IGluIG1pbGxpc2Vjb25kcyBmb3IgdGhlXG4gKiAgICAgaGFuZHNoYWtlIHJlcXVlc3RcbiAqIEBwYXJhbSB7TnVtYmVyfSBbb3B0aW9ucy5tYXhQYXlsb2FkPTEwNDg1NzYwMF0gVGhlIG1heGltdW0gYWxsb3dlZCBtZXNzYWdlXG4gKiAgICAgc2l6ZVxuICogQHBhcmFtIHtOdW1iZXJ9IFtvcHRpb25zLm1heFJlZGlyZWN0cz0xMF0gVGhlIG1heGltdW0gbnVtYmVyIG9mIHJlZGlyZWN0c1xuICogICAgIGFsbG93ZWRcbiAqIEBwYXJhbSB7U3RyaW5nfSBbb3B0aW9ucy5vcmlnaW5dIFZhbHVlIG9mIHRoZSBgT3JpZ2luYCBvclxuICogICAgIGBTZWMtV2ViU29ja2V0LU9yaWdpbmAgaGVhZGVyXG4gKiBAcGFyYW0geyhCb29sZWFufE9iamVjdCl9IFtvcHRpb25zLnBlck1lc3NhZ2VEZWZsYXRlPXRydWVdIEVuYWJsZS9kaXNhYmxlXG4gKiAgICAgcGVybWVzc2FnZS1kZWZsYXRlXG4gKiBAcGFyYW0ge051bWJlcn0gW29wdGlvbnMucHJvdG9jb2xWZXJzaW9uPTEzXSBWYWx1ZSBvZiB0aGVcbiAqICAgICBgU2VjLVdlYlNvY2tldC1WZXJzaW9uYCBoZWFkZXJcbiAqIEBwYXJhbSB7Qm9vbGVhbn0gW29wdGlvbnMuc2tpcFVURjhWYWxpZGF0aW9uPWZhbHNlXSBTcGVjaWZpZXMgd2hldGhlciBvclxuICogICAgIG5vdCB0byBza2lwIFVURi04IHZhbGlkYXRpb24gZm9yIHRleHQgYW5kIGNsb3NlIG1lc3NhZ2VzXG4gKiBAcHJpdmF0ZVxuICovXG5mdW5jdGlvbiBpbml0QXNDbGllbnQod2Vic29ja2V0LCBhZGRyZXNzLCBwcm90b2NvbHMsIG9wdGlvbnMpIHtcbiAgY29uc3Qgb3B0cyA9IHtcbiAgICBwcm90b2NvbFZlcnNpb246IHByb3RvY29sVmVyc2lvbnNbMV0sXG4gICAgbWF4UGF5bG9hZDogMTAwICogMTAyNCAqIDEwMjQsXG4gICAgc2tpcFVURjhWYWxpZGF0aW9uOiBmYWxzZSxcbiAgICBwZXJNZXNzYWdlRGVmbGF0ZTogdHJ1ZSxcbiAgICBmb2xsb3dSZWRpcmVjdHM6IGZhbHNlLFxuICAgIG1heFJlZGlyZWN0czogMTAsXG4gICAgLi4ub3B0aW9ucyxcbiAgICBjcmVhdGVDb25uZWN0aW9uOiB1bmRlZmluZWQsXG4gICAgc29ja2V0UGF0aDogdW5kZWZpbmVkLFxuICAgIGhvc3RuYW1lOiB1bmRlZmluZWQsXG4gICAgcHJvdG9jb2w6IHVuZGVmaW5lZCxcbiAgICB0aW1lb3V0OiB1bmRlZmluZWQsXG4gICAgbWV0aG9kOiAnR0VUJyxcbiAgICBob3N0OiB1bmRlZmluZWQsXG4gICAgcGF0aDogdW5kZWZpbmVkLFxuICAgIHBvcnQ6IHVuZGVmaW5lZFxuICB9O1xuXG4gIGlmICghcHJvdG9jb2xWZXJzaW9ucy5pbmNsdWRlcyhvcHRzLnByb3RvY29sVmVyc2lvbikpIHtcbiAgICB0aHJvdyBuZXcgUmFuZ2VFcnJvcihcbiAgICAgIGBVbnN1cHBvcnRlZCBwcm90b2NvbCB2ZXJzaW9uOiAke29wdHMucHJvdG9jb2xWZXJzaW9ufSBgICtcbiAgICAgICAgYChzdXBwb3J0ZWQgdmVyc2lvbnM6ICR7cHJvdG9jb2xWZXJzaW9ucy5qb2luKCcsICcpfSlgXG4gICAgKTtcbiAgfVxuXG4gIGxldCBwYXJzZWRVcmw7XG5cbiAgaWYgKGFkZHJlc3MgaW5zdGFuY2VvZiBVUkwpIHtcbiAgICBwYXJzZWRVcmwgPSBhZGRyZXNzO1xuICB9IGVsc2Uge1xuICAgIHRyeSB7XG4gICAgICBwYXJzZWRVcmwgPSBuZXcgVVJMKGFkZHJlc3MpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBTeW50YXhFcnJvcihgSW52YWxpZCBVUkw6ICR7YWRkcmVzc31gKTtcbiAgICB9XG4gIH1cblxuICBpZiAocGFyc2VkVXJsLnByb3RvY29sID09PSAnaHR0cDonKSB7XG4gICAgcGFyc2VkVXJsLnByb3RvY29sID0gJ3dzOic7XG4gIH0gZWxzZSBpZiAocGFyc2VkVXJsLnByb3RvY29sID09PSAnaHR0cHM6Jykge1xuICAgIHBhcnNlZFVybC5wcm90b2NvbCA9ICd3c3M6JztcbiAgfVxuXG4gIHdlYnNvY2tldC5fdXJsID0gcGFyc2VkVXJsLmhyZWY7XG5cbiAgY29uc3QgaXNTZWN1cmUgPSBwYXJzZWRVcmwucHJvdG9jb2wgPT09ICd3c3M6JztcbiAgY29uc3QgaXNJcGNVcmwgPSBwYXJzZWRVcmwucHJvdG9jb2wgPT09ICd3cyt1bml4Oic7XG4gIGxldCBpbnZhbGlkVXJsTWVzc2FnZTtcblxuICBpZiAocGFyc2VkVXJsLnByb3RvY29sICE9PSAnd3M6JyAmJiAhaXNTZWN1cmUgJiYgIWlzSXBjVXJsKSB7XG4gICAgaW52YWxpZFVybE1lc3NhZ2UgPVxuICAgICAgJ1RoZSBVUkxcXCdzIHByb3RvY29sIG11c3QgYmUgb25lIG9mIFwid3M6XCIsIFwid3NzOlwiLCAnICtcbiAgICAgICdcImh0dHA6XCIsIFwiaHR0cHNcIiwgb3IgXCJ3cyt1bml4OlwiJztcbiAgfSBlbHNlIGlmIChpc0lwY1VybCAmJiAhcGFyc2VkVXJsLnBhdGhuYW1lKSB7XG4gICAgaW52YWxpZFVybE1lc3NhZ2UgPSBcIlRoZSBVUkwncyBwYXRobmFtZSBpcyBlbXB0eVwiO1xuICB9IGVsc2UgaWYgKHBhcnNlZFVybC5oYXNoKSB7XG4gICAgaW52YWxpZFVybE1lc3NhZ2UgPSAnVGhlIFVSTCBjb250YWlucyBhIGZyYWdtZW50IGlkZW50aWZpZXInO1xuICB9XG5cbiAgaWYgKGludmFsaWRVcmxNZXNzYWdlKSB7XG4gICAgY29uc3QgZXJyID0gbmV3IFN5bnRheEVycm9yKGludmFsaWRVcmxNZXNzYWdlKTtcblxuICAgIGlmICh3ZWJzb2NrZXQuX3JlZGlyZWN0cyA9PT0gMCkge1xuICAgICAgdGhyb3cgZXJyO1xuICAgIH0gZWxzZSB7XG4gICAgICBlbWl0RXJyb3JBbmRDbG9zZSh3ZWJzb2NrZXQsIGVycik7XG4gICAgICByZXR1cm47XG4gICAgfVxuICB9XG5cbiAgY29uc3QgZGVmYXVsdFBvcnQgPSBpc1NlY3VyZSA/IDQ0MyA6IDgwO1xuICBjb25zdCBrZXkgPSByYW5kb21CeXRlcygxNikudG9TdHJpbmcoJ2Jhc2U2NCcpO1xuICBjb25zdCByZXF1ZXN0ID0gaXNTZWN1cmUgPyBodHRwcy5yZXF1ZXN0IDogaHR0cC5yZXF1ZXN0O1xuICBjb25zdCBwcm90b2NvbFNldCA9IG5ldyBTZXQoKTtcbiAgbGV0IHBlck1lc3NhZ2VEZWZsYXRlO1xuXG4gIG9wdHMuY3JlYXRlQ29ubmVjdGlvbiA9IGlzU2VjdXJlID8gdGxzQ29ubmVjdCA6IG5ldENvbm5lY3Q7XG4gIG9wdHMuZGVmYXVsdFBvcnQgPSBvcHRzLmRlZmF1bHRQb3J0IHx8IGRlZmF1bHRQb3J0O1xuICBvcHRzLnBvcnQgPSBwYXJzZWRVcmwucG9ydCB8fCBkZWZhdWx0UG9ydDtcbiAgb3B0cy5ob3N0ID0gcGFyc2VkVXJsLmhvc3RuYW1lLnN0YXJ0c1dpdGgoJ1snKVxuICAgID8gcGFyc2VkVXJsLmhvc3RuYW1lLnNsaWNlKDEsIC0xKVxuICAgIDogcGFyc2VkVXJsLmhvc3RuYW1lO1xuICBvcHRzLmhlYWRlcnMgPSB7XG4gICAgLi4ub3B0cy5oZWFkZXJzLFxuICAgICdTZWMtV2ViU29ja2V0LVZlcnNpb24nOiBvcHRzLnByb3RvY29sVmVyc2lvbixcbiAgICAnU2VjLVdlYlNvY2tldC1LZXknOiBrZXksXG4gICAgQ29ubmVjdGlvbjogJ1VwZ3JhZGUnLFxuICAgIFVwZ3JhZGU6ICd3ZWJzb2NrZXQnXG4gIH07XG4gIG9wdHMucGF0aCA9IHBhcnNlZFVybC5wYXRobmFtZSArIHBhcnNlZFVybC5zZWFyY2g7XG4gIG9wdHMudGltZW91dCA9IG9wdHMuaGFuZHNoYWtlVGltZW91dDtcblxuICBpZiAob3B0cy5wZXJNZXNzYWdlRGVmbGF0ZSkge1xuICAgIHBlck1lc3NhZ2VEZWZsYXRlID0gbmV3IFBlck1lc3NhZ2VEZWZsYXRlKFxuICAgICAgb3B0cy5wZXJNZXNzYWdlRGVmbGF0ZSAhPT0gdHJ1ZSA/IG9wdHMucGVyTWVzc2FnZURlZmxhdGUgOiB7fSxcbiAgICAgIGZhbHNlLFxuICAgICAgb3B0cy5tYXhQYXlsb2FkXG4gICAgKTtcbiAgICBvcHRzLmhlYWRlcnNbJ1NlYy1XZWJTb2NrZXQtRXh0ZW5zaW9ucyddID0gZm9ybWF0KHtcbiAgICAgIFtQZXJNZXNzYWdlRGVmbGF0ZS5leHRlbnNpb25OYW1lXTogcGVyTWVzc2FnZURlZmxhdGUub2ZmZXIoKVxuICAgIH0pO1xuICB9XG4gIGlmIChwcm90b2NvbHMubGVuZ3RoKSB7XG4gICAgZm9yIChjb25zdCBwcm90b2NvbCBvZiBwcm90b2NvbHMpIHtcbiAgICAgIGlmIChcbiAgICAgICAgdHlwZW9mIHByb3RvY29sICE9PSAnc3RyaW5nJyB8fFxuICAgICAgICAhc3VicHJvdG9jb2xSZWdleC50ZXN0KHByb3RvY29sKSB8fFxuICAgICAgICBwcm90b2NvbFNldC5oYXMocHJvdG9jb2wpXG4gICAgICApIHtcbiAgICAgICAgdGhyb3cgbmV3IFN5bnRheEVycm9yKFxuICAgICAgICAgICdBbiBpbnZhbGlkIG9yIGR1cGxpY2F0ZWQgc3VicHJvdG9jb2wgd2FzIHNwZWNpZmllZCdcbiAgICAgICAgKTtcbiAgICAgIH1cblxuICAgICAgcHJvdG9jb2xTZXQuYWRkKHByb3RvY29sKTtcbiAgICB9XG5cbiAgICBvcHRzLmhlYWRlcnNbJ1NlYy1XZWJTb2NrZXQtUHJvdG9jb2wnXSA9IHByb3RvY29scy5qb2luKCcsJyk7XG4gIH1cbiAgaWYgKG9wdHMub3JpZ2luKSB7XG4gICAgaWYgKG9wdHMucHJvdG9jb2xWZXJzaW9uIDwgMTMpIHtcbiAgICAgIG9wdHMuaGVhZGVyc1snU2VjLVdlYlNvY2tldC1PcmlnaW4nXSA9IG9wdHMub3JpZ2luO1xuICAgIH0gZWxzZSB7XG4gICAgICBvcHRzLmhlYWRlcnMuT3JpZ2luID0gb3B0cy5vcmlnaW47XG4gICAgfVxuICB9XG4gIGlmIChwYXJzZWRVcmwudXNlcm5hbWUgfHwgcGFyc2VkVXJsLnBhc3N3b3JkKSB7XG4gICAgb3B0cy5hdXRoID0gYCR7cGFyc2VkVXJsLnVzZXJuYW1lfToke3BhcnNlZFVybC5wYXNzd29yZH1gO1xuICB9XG5cbiAgaWYgKGlzSXBjVXJsKSB7XG4gICAgY29uc3QgcGFydHMgPSBvcHRzLnBhdGguc3BsaXQoJzonKTtcblxuICAgIG9wdHMuc29ja2V0UGF0aCA9IHBhcnRzWzBdO1xuICAgIG9wdHMucGF0aCA9IHBhcnRzWzFdO1xuICB9XG5cbiAgbGV0IHJlcTtcblxuICBpZiAob3B0cy5mb2xsb3dSZWRpcmVjdHMpIHtcbiAgICBpZiAod2Vic29ja2V0Ll9yZWRpcmVjdHMgPT09IDApIHtcbiAgICAgIHdlYnNvY2tldC5fb3JpZ2luYWxJcGMgPSBpc0lwY1VybDtcbiAgICAgIHdlYnNvY2tldC5fb3JpZ2luYWxTZWN1cmUgPSBpc1NlY3VyZTtcbiAgICAgIHdlYnNvY2tldC5fb3JpZ2luYWxIb3N0T3JTb2NrZXRQYXRoID0gaXNJcGNVcmxcbiAgICAgICAgPyBvcHRzLnNvY2tldFBhdGhcbiAgICAgICAgOiBwYXJzZWRVcmwuaG9zdDtcblxuICAgICAgY29uc3QgaGVhZGVycyA9IG9wdGlvbnMgJiYgb3B0aW9ucy5oZWFkZXJzO1xuXG4gICAgICAvL1xuICAgICAgLy8gU2hhbGxvdyBjb3B5IHRoZSB1c2VyIHByb3ZpZGVkIG9wdGlvbnMgc28gdGhhdCBoZWFkZXJzIGNhbiBiZSBjaGFuZ2VkXG4gICAgICAvLyB3aXRob3V0IG11dGF0aW5nIHRoZSBvcmlnaW5hbCBvYmplY3QuXG4gICAgICAvL1xuICAgICAgb3B0aW9ucyA9IHsgLi4ub3B0aW9ucywgaGVhZGVyczoge30gfTtcblxuICAgICAgaWYgKGhlYWRlcnMpIHtcbiAgICAgICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMoaGVhZGVycykpIHtcbiAgICAgICAgICBvcHRpb25zLmhlYWRlcnNba2V5LnRvTG93ZXJDYXNlKCldID0gdmFsdWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHdlYnNvY2tldC5saXN0ZW5lckNvdW50KCdyZWRpcmVjdCcpID09PSAwKSB7XG4gICAgICBjb25zdCBpc1NhbWVIb3N0ID0gaXNJcGNVcmxcbiAgICAgICAgPyB3ZWJzb2NrZXQuX29yaWdpbmFsSXBjXG4gICAgICAgICAgPyBvcHRzLnNvY2tldFBhdGggPT09IHdlYnNvY2tldC5fb3JpZ2luYWxIb3N0T3JTb2NrZXRQYXRoXG4gICAgICAgICAgOiBmYWxzZVxuICAgICAgICA6IHdlYnNvY2tldC5fb3JpZ2luYWxJcGNcbiAgICAgICAgPyBmYWxzZVxuICAgICAgICA6IHBhcnNlZFVybC5ob3N0ID09PSB3ZWJzb2NrZXQuX29yaWdpbmFsSG9zdE9yU29ja2V0UGF0aDtcblxuICAgICAgaWYgKCFpc1NhbWVIb3N0IHx8ICh3ZWJzb2NrZXQuX29yaWdpbmFsU2VjdXJlICYmICFpc1NlY3VyZSkpIHtcbiAgICAgICAgLy9cbiAgICAgICAgLy8gTWF0Y2ggY3VybCA3Ljc3LjAgYmVoYXZpb3IgYW5kIGRyb3AgdGhlIGZvbGxvd2luZyBoZWFkZXJzLiBUaGVzZVxuICAgICAgICAvLyBoZWFkZXJzIGFyZSBhbHNvIGRyb3BwZWQgd2hlbiBmb2xsb3dpbmcgYSByZWRpcmVjdCB0byBhIHN1YmRvbWFpbi5cbiAgICAgICAgLy9cbiAgICAgICAgZGVsZXRlIG9wdHMuaGVhZGVycy5hdXRob3JpemF0aW9uO1xuICAgICAgICBkZWxldGUgb3B0cy5oZWFkZXJzLmNvb2tpZTtcblxuICAgICAgICBpZiAoIWlzU2FtZUhvc3QpIGRlbGV0ZSBvcHRzLmhlYWRlcnMuaG9zdDtcblxuICAgICAgICBvcHRzLmF1dGggPSB1bmRlZmluZWQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBNYXRjaCBjdXJsIDcuNzcuMCBiZWhhdmlvciBhbmQgbWFrZSB0aGUgZmlyc3QgYEF1dGhvcml6YXRpb25gIGhlYWRlciB3aW4uXG4gICAgLy8gSWYgdGhlIGBBdXRob3JpemF0aW9uYCBoZWFkZXIgaXMgc2V0LCB0aGVuIHRoZXJlIGlzIG5vdGhpbmcgdG8gZG8gYXMgaXRcbiAgICAvLyB3aWxsIHRha2UgcHJlY2VkZW5jZS5cbiAgICAvL1xuICAgIGlmIChvcHRzLmF1dGggJiYgIW9wdGlvbnMuaGVhZGVycy5hdXRob3JpemF0aW9uKSB7XG4gICAgICBvcHRpb25zLmhlYWRlcnMuYXV0aG9yaXphdGlvbiA9XG4gICAgICAgICdCYXNpYyAnICsgQnVmZmVyLmZyb20ob3B0cy5hdXRoKS50b1N0cmluZygnYmFzZTY0Jyk7XG4gICAgfVxuXG4gICAgcmVxID0gd2Vic29ja2V0Ll9yZXEgPSByZXF1ZXN0KG9wdHMpO1xuXG4gICAgaWYgKHdlYnNvY2tldC5fcmVkaXJlY3RzKSB7XG4gICAgICAvL1xuICAgICAgLy8gVW5saWtlIHdoYXQgaXMgZG9uZSBmb3IgdGhlIGAndXBncmFkZSdgIGV2ZW50LCBubyBlYXJseSBleGl0IGlzXG4gICAgICAvLyB0cmlnZ2VyZWQgaGVyZSBpZiB0aGUgdXNlciBjYWxscyBgd2Vic29ja2V0LmNsb3NlKClgIG9yXG4gICAgICAvLyBgd2Vic29ja2V0LnRlcm1pbmF0ZSgpYCBmcm9tIGEgbGlzdGVuZXIgb2YgdGhlIGAncmVkaXJlY3QnYCBldmVudC4gVGhpc1xuICAgICAgLy8gaXMgYmVjYXVzZSB0aGUgdXNlciBjYW4gYWxzbyBjYWxsIGByZXF1ZXN0LmRlc3Ryb3koKWAgd2l0aCBhbiBlcnJvclxuICAgICAgLy8gYmVmb3JlIGNhbGxpbmcgYHdlYnNvY2tldC5jbG9zZSgpYCBvciBgd2Vic29ja2V0LnRlcm1pbmF0ZSgpYCBhbmQgdGhpc1xuICAgICAgLy8gd291bGQgcmVzdWx0IGluIGFuIGVycm9yIGJlaW5nIGVtaXR0ZWQgb24gdGhlIGByZXF1ZXN0YCBvYmplY3Qgd2l0aCBub1xuICAgICAgLy8gYCdlcnJvcidgIGV2ZW50IGxpc3RlbmVycyBhdHRhY2hlZC5cbiAgICAgIC8vXG4gICAgICB3ZWJzb2NrZXQuZW1pdCgncmVkaXJlY3QnLCB3ZWJzb2NrZXQudXJsLCByZXEpO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICByZXEgPSB3ZWJzb2NrZXQuX3JlcSA9IHJlcXVlc3Qob3B0cyk7XG4gIH1cblxuICBpZiAob3B0cy50aW1lb3V0KSB7XG4gICAgcmVxLm9uKCd0aW1lb3V0JywgKCkgPT4ge1xuICAgICAgYWJvcnRIYW5kc2hha2Uod2Vic29ja2V0LCByZXEsICdPcGVuaW5nIGhhbmRzaGFrZSBoYXMgdGltZWQgb3V0Jyk7XG4gICAgfSk7XG4gIH1cblxuICByZXEub24oJ2Vycm9yJywgKGVycikgPT4ge1xuICAgIGlmIChyZXEgPT09IG51bGwgfHwgcmVxW2tBYm9ydGVkXSkgcmV0dXJuO1xuXG4gICAgcmVxID0gd2Vic29ja2V0Ll9yZXEgPSBudWxsO1xuICAgIGVtaXRFcnJvckFuZENsb3NlKHdlYnNvY2tldCwgZXJyKTtcbiAgfSk7XG5cbiAgcmVxLm9uKCdyZXNwb25zZScsIChyZXMpID0+IHtcbiAgICBjb25zdCBsb2NhdGlvbiA9IHJlcy5oZWFkZXJzLmxvY2F0aW9uO1xuICAgIGNvbnN0IHN0YXR1c0NvZGUgPSByZXMuc3RhdHVzQ29kZTtcblxuICAgIGlmIChcbiAgICAgIGxvY2F0aW9uICYmXG4gICAgICBvcHRzLmZvbGxvd1JlZGlyZWN0cyAmJlxuICAgICAgc3RhdHVzQ29kZSA+PSAzMDAgJiZcbiAgICAgIHN0YXR1c0NvZGUgPCA0MDBcbiAgICApIHtcbiAgICAgIGlmICgrK3dlYnNvY2tldC5fcmVkaXJlY3RzID4gb3B0cy5tYXhSZWRpcmVjdHMpIHtcbiAgICAgICAgYWJvcnRIYW5kc2hha2Uod2Vic29ja2V0LCByZXEsICdNYXhpbXVtIHJlZGlyZWN0cyBleGNlZWRlZCcpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHJlcS5hYm9ydCgpO1xuXG4gICAgICBsZXQgYWRkcjtcblxuICAgICAgdHJ5IHtcbiAgICAgICAgYWRkciA9IG5ldyBVUkwobG9jYXRpb24sIGFkZHJlc3MpO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBjb25zdCBlcnIgPSBuZXcgU3ludGF4RXJyb3IoYEludmFsaWQgVVJMOiAke2xvY2F0aW9ufWApO1xuICAgICAgICBlbWl0RXJyb3JBbmRDbG9zZSh3ZWJzb2NrZXQsIGVycik7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgaW5pdEFzQ2xpZW50KHdlYnNvY2tldCwgYWRkciwgcHJvdG9jb2xzLCBvcHRpb25zKTtcbiAgICB9IGVsc2UgaWYgKCF3ZWJzb2NrZXQuZW1pdCgndW5leHBlY3RlZC1yZXNwb25zZScsIHJlcSwgcmVzKSkge1xuICAgICAgYWJvcnRIYW5kc2hha2UoXG4gICAgICAgIHdlYnNvY2tldCxcbiAgICAgICAgcmVxLFxuICAgICAgICBgVW5leHBlY3RlZCBzZXJ2ZXIgcmVzcG9uc2U6ICR7cmVzLnN0YXR1c0NvZGV9YFxuICAgICAgKTtcbiAgICB9XG4gIH0pO1xuXG4gIHJlcS5vbigndXBncmFkZScsIChyZXMsIHNvY2tldCwgaGVhZCkgPT4ge1xuICAgIHdlYnNvY2tldC5lbWl0KCd1cGdyYWRlJywgcmVzKTtcblxuICAgIC8vXG4gICAgLy8gVGhlIHVzZXIgbWF5IGhhdmUgY2xvc2VkIHRoZSBjb25uZWN0aW9uIGZyb20gYSBsaXN0ZW5lciBvZiB0aGVcbiAgICAvLyBgJ3VwZ3JhZGUnYCBldmVudC5cbiAgICAvL1xuICAgIGlmICh3ZWJzb2NrZXQucmVhZHlTdGF0ZSAhPT0gV2ViU29ja2V0LkNPTk5FQ1RJTkcpIHJldHVybjtcblxuICAgIHJlcSA9IHdlYnNvY2tldC5fcmVxID0gbnVsbDtcblxuICAgIGlmIChyZXMuaGVhZGVycy51cGdyYWRlLnRvTG93ZXJDYXNlKCkgIT09ICd3ZWJzb2NrZXQnKSB7XG4gICAgICBhYm9ydEhhbmRzaGFrZSh3ZWJzb2NrZXQsIHNvY2tldCwgJ0ludmFsaWQgVXBncmFkZSBoZWFkZXInKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBkaWdlc3QgPSBjcmVhdGVIYXNoKCdzaGExJylcbiAgICAgIC51cGRhdGUoa2V5ICsgR1VJRClcbiAgICAgIC5kaWdlc3QoJ2Jhc2U2NCcpO1xuXG4gICAgaWYgKHJlcy5oZWFkZXJzWydzZWMtd2Vic29ja2V0LWFjY2VwdCddICE9PSBkaWdlc3QpIHtcbiAgICAgIGFib3J0SGFuZHNoYWtlKHdlYnNvY2tldCwgc29ja2V0LCAnSW52YWxpZCBTZWMtV2ViU29ja2V0LUFjY2VwdCBoZWFkZXInKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBzZXJ2ZXJQcm90ID0gcmVzLmhlYWRlcnNbJ3NlYy13ZWJzb2NrZXQtcHJvdG9jb2wnXTtcbiAgICBsZXQgcHJvdEVycm9yO1xuXG4gICAgaWYgKHNlcnZlclByb3QgIT09IHVuZGVmaW5lZCkge1xuICAgICAgaWYgKCFwcm90b2NvbFNldC5zaXplKSB7XG4gICAgICAgIHByb3RFcnJvciA9ICdTZXJ2ZXIgc2VudCBhIHN1YnByb3RvY29sIGJ1dCBub25lIHdhcyByZXF1ZXN0ZWQnO1xuICAgICAgfSBlbHNlIGlmICghcHJvdG9jb2xTZXQuaGFzKHNlcnZlclByb3QpKSB7XG4gICAgICAgIHByb3RFcnJvciA9ICdTZXJ2ZXIgc2VudCBhbiBpbnZhbGlkIHN1YnByb3RvY29sJztcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHByb3RvY29sU2V0LnNpemUpIHtcbiAgICAgIHByb3RFcnJvciA9ICdTZXJ2ZXIgc2VudCBubyBzdWJwcm90b2NvbCc7XG4gICAgfVxuXG4gICAgaWYgKHByb3RFcnJvcikge1xuICAgICAgYWJvcnRIYW5kc2hha2Uod2Vic29ja2V0LCBzb2NrZXQsIHByb3RFcnJvcik7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHNlcnZlclByb3QpIHdlYnNvY2tldC5fcHJvdG9jb2wgPSBzZXJ2ZXJQcm90O1xuXG4gICAgY29uc3Qgc2VjV2ViU29ja2V0RXh0ZW5zaW9ucyA9IHJlcy5oZWFkZXJzWydzZWMtd2Vic29ja2V0LWV4dGVuc2lvbnMnXTtcblxuICAgIGlmIChzZWNXZWJTb2NrZXRFeHRlbnNpb25zICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGlmICghcGVyTWVzc2FnZURlZmxhdGUpIHtcbiAgICAgICAgY29uc3QgbWVzc2FnZSA9XG4gICAgICAgICAgJ1NlcnZlciBzZW50IGEgU2VjLVdlYlNvY2tldC1FeHRlbnNpb25zIGhlYWRlciBidXQgbm8gZXh0ZW5zaW9uICcgK1xuICAgICAgICAgICd3YXMgcmVxdWVzdGVkJztcbiAgICAgICAgYWJvcnRIYW5kc2hha2Uod2Vic29ja2V0LCBzb2NrZXQsIG1lc3NhZ2UpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGxldCBleHRlbnNpb25zO1xuXG4gICAgICB0cnkge1xuICAgICAgICBleHRlbnNpb25zID0gcGFyc2Uoc2VjV2ViU29ja2V0RXh0ZW5zaW9ucyk7XG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgY29uc3QgbWVzc2FnZSA9ICdJbnZhbGlkIFNlYy1XZWJTb2NrZXQtRXh0ZW5zaW9ucyBoZWFkZXInO1xuICAgICAgICBhYm9ydEhhbmRzaGFrZSh3ZWJzb2NrZXQsIHNvY2tldCwgbWVzc2FnZSk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgY29uc3QgZXh0ZW5zaW9uTmFtZXMgPSBPYmplY3Qua2V5cyhleHRlbnNpb25zKTtcblxuICAgICAgaWYgKFxuICAgICAgICBleHRlbnNpb25OYW1lcy5sZW5ndGggIT09IDEgfHxcbiAgICAgICAgZXh0ZW5zaW9uTmFtZXNbMF0gIT09IFBlck1lc3NhZ2VEZWZsYXRlLmV4dGVuc2lvbk5hbWVcbiAgICAgICkge1xuICAgICAgICBjb25zdCBtZXNzYWdlID0gJ1NlcnZlciBpbmRpY2F0ZWQgYW4gZXh0ZW5zaW9uIHRoYXQgd2FzIG5vdCByZXF1ZXN0ZWQnO1xuICAgICAgICBhYm9ydEhhbmRzaGFrZSh3ZWJzb2NrZXQsIHNvY2tldCwgbWVzc2FnZSk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgdHJ5IHtcbiAgICAgICAgcGVyTWVzc2FnZURlZmxhdGUuYWNjZXB0KGV4dGVuc2lvbnNbUGVyTWVzc2FnZURlZmxhdGUuZXh0ZW5zaW9uTmFtZV0pO1xuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIGNvbnN0IG1lc3NhZ2UgPSAnSW52YWxpZCBTZWMtV2ViU29ja2V0LUV4dGVuc2lvbnMgaGVhZGVyJztcbiAgICAgICAgYWJvcnRIYW5kc2hha2Uod2Vic29ja2V0LCBzb2NrZXQsIG1lc3NhZ2UpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHdlYnNvY2tldC5fZXh0ZW5zaW9uc1tQZXJNZXNzYWdlRGVmbGF0ZS5leHRlbnNpb25OYW1lXSA9XG4gICAgICAgIHBlck1lc3NhZ2VEZWZsYXRlO1xuICAgIH1cblxuICAgIHdlYnNvY2tldC5zZXRTb2NrZXQoc29ja2V0LCBoZWFkLCB7XG4gICAgICBnZW5lcmF0ZU1hc2s6IG9wdHMuZ2VuZXJhdGVNYXNrLFxuICAgICAgbWF4UGF5bG9hZDogb3B0cy5tYXhQYXlsb2FkLFxuICAgICAgc2tpcFVURjhWYWxpZGF0aW9uOiBvcHRzLnNraXBVVEY4VmFsaWRhdGlvblxuICAgIH0pO1xuICB9KTtcblxuICBpZiAob3B0cy5maW5pc2hSZXF1ZXN0KSB7XG4gICAgb3B0cy5maW5pc2hSZXF1ZXN0KHJlcSwgd2Vic29ja2V0KTtcbiAgfSBlbHNlIHtcbiAgICByZXEuZW5kKCk7XG4gIH1cbn1cblxuLyoqXG4gKiBFbWl0IHRoZSBgJ2Vycm9yJ2AgYW5kIGAnY2xvc2UnYCBldmVudHMuXG4gKlxuICogQHBhcmFtIHtXZWJTb2NrZXR9IHdlYnNvY2tldCBUaGUgV2ViU29ja2V0IGluc3RhbmNlXG4gKiBAcGFyYW0ge0Vycm9yfSBUaGUgZXJyb3IgdG8gZW1pdFxuICogQHByaXZhdGVcbiAqL1xuZnVuY3Rpb24gZW1pdEVycm9yQW5kQ2xvc2Uod2Vic29ja2V0LCBlcnIpIHtcbiAgd2Vic29ja2V0Ll9yZWFkeVN0YXRlID0gV2ViU29ja2V0LkNMT1NJTkc7XG4gIHdlYnNvY2tldC5lbWl0KCdlcnJvcicsIGVycik7XG4gIHdlYnNvY2tldC5lbWl0Q2xvc2UoKTtcbn1cblxuLyoqXG4gKiBDcmVhdGUgYSBgbmV0LlNvY2tldGAgYW5kIGluaXRpYXRlIGEgY29ubmVjdGlvbi5cbiAqXG4gKiBAcGFyYW0ge09iamVjdH0gb3B0aW9ucyBDb25uZWN0aW9uIG9wdGlvbnNcbiAqIEByZXR1cm4ge25ldC5Tb2NrZXR9IFRoZSBuZXdseSBjcmVhdGVkIHNvY2tldCB1c2VkIHRvIHN0YXJ0IHRoZSBjb25uZWN0aW9uXG4gKiBAcHJpdmF0ZVxuICovXG5mdW5jdGlvbiBuZXRDb25uZWN0KG9wdGlvbnMpIHtcbiAgb3B0aW9ucy5wYXRoID0gb3B0aW9ucy5zb2NrZXRQYXRoO1xuICByZXR1cm4gbmV0LmNvbm5lY3Qob3B0aW9ucyk7XG59XG5cbi8qKlxuICogQ3JlYXRlIGEgYHRscy5UTFNTb2NrZXRgIGFuZCBpbml0aWF0ZSBhIGNvbm5lY3Rpb24uXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnMgQ29ubmVjdGlvbiBvcHRpb25zXG4gKiBAcmV0dXJuIHt0bHMuVExTU29ja2V0fSBUaGUgbmV3bHkgY3JlYXRlZCBzb2NrZXQgdXNlZCB0byBzdGFydCB0aGUgY29ubmVjdGlvblxuICogQHByaXZhdGVcbiAqL1xuZnVuY3Rpb24gdGxzQ29ubmVjdChvcHRpb25zKSB7XG4gIG9wdGlvbnMucGF0aCA9IHVuZGVmaW5lZDtcblxuICBpZiAoIW9wdGlvbnMuc2VydmVybmFtZSAmJiBvcHRpb25zLnNlcnZlcm5hbWUgIT09ICcnKSB7XG4gICAgb3B0aW9ucy5zZXJ2ZXJuYW1lID0gbmV0LmlzSVAob3B0aW9ucy5ob3N0KSA/ICcnIDogb3B0aW9ucy5ob3N0O1xuICB9XG5cbiAgcmV0dXJuIHRscy5jb25uZWN0KG9wdGlvbnMpO1xufVxuXG4vKipcbiAqIEFib3J0IHRoZSBoYW5kc2hha2UgYW5kIGVtaXQgYW4gZXJyb3IuXG4gKlxuICogQHBhcmFtIHtXZWJTb2NrZXR9IHdlYnNvY2tldCBUaGUgV2ViU29ja2V0IGluc3RhbmNlXG4gKiBAcGFyYW0geyhodHRwLkNsaWVudFJlcXVlc3R8bmV0LlNvY2tldHx0bHMuU29ja2V0KX0gc3RyZWFtIFRoZSByZXF1ZXN0IHRvXG4gKiAgICAgYWJvcnQgb3IgdGhlIHNvY2tldCB0byBkZXN0cm95XG4gKiBAcGFyYW0ge1N0cmluZ30gbWVzc2FnZSBUaGUgZXJyb3IgbWVzc2FnZVxuICogQHByaXZhdGVcbiAqL1xuZnVuY3Rpb24gYWJvcnRIYW5kc2hha2Uod2Vic29ja2V0LCBzdHJlYW0sIG1lc3NhZ2UpIHtcbiAgd2Vic29ja2V0Ll9yZWFkeVN0YXRlID0gV2ViU29ja2V0LkNMT1NJTkc7XG5cbiAgY29uc3QgZXJyID0gbmV3IEVycm9yKG1lc3NhZ2UpO1xuICBFcnJvci5jYXB0dXJlU3RhY2tUcmFjZShlcnIsIGFib3J0SGFuZHNoYWtlKTtcblxuICBpZiAoc3RyZWFtLnNldEhlYWRlcikge1xuICAgIHN0cmVhbVtrQWJvcnRlZF0gPSB0cnVlO1xuICAgIHN0cmVhbS5hYm9ydCgpO1xuXG4gICAgaWYgKHN0cmVhbS5zb2NrZXQgJiYgIXN0cmVhbS5zb2NrZXQuZGVzdHJveWVkKSB7XG4gICAgICAvL1xuICAgICAgLy8gT24gTm9kZS5qcyA+PSAxNC4zLjAgYHJlcXVlc3QuYWJvcnQoKWAgZG9lcyBub3QgZGVzdHJveSB0aGUgc29ja2V0IGlmXG4gICAgICAvLyBjYWxsZWQgYWZ0ZXIgdGhlIHJlcXVlc3QgY29tcGxldGVkLiBTZWVcbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS93ZWJzb2NrZXRzL3dzL2lzc3Vlcy8xODY5LlxuICAgICAgLy9cbiAgICAgIHN0cmVhbS5zb2NrZXQuZGVzdHJveSgpO1xuICAgIH1cblxuICAgIHByb2Nlc3MubmV4dFRpY2soZW1pdEVycm9yQW5kQ2xvc2UsIHdlYnNvY2tldCwgZXJyKTtcbiAgfSBlbHNlIHtcbiAgICBzdHJlYW0uZGVzdHJveShlcnIpO1xuICAgIHN0cmVhbS5vbmNlKCdlcnJvcicsIHdlYnNvY2tldC5lbWl0LmJpbmQod2Vic29ja2V0LCAnZXJyb3InKSk7XG4gICAgc3RyZWFtLm9uY2UoJ2Nsb3NlJywgd2Vic29ja2V0LmVtaXRDbG9zZS5iaW5kKHdlYnNvY2tldCkpO1xuICB9XG59XG5cbi8qKlxuICogSGFuZGxlIGNhc2VzIHdoZXJlIHRoZSBgcGluZygpYCwgYHBvbmcoKWAsIG9yIGBzZW5kKClgIG1ldGhvZHMgYXJlIGNhbGxlZFxuICogd2hlbiB0aGUgYHJlYWR5U3RhdGVgIGF0dHJpYnV0ZSBpcyBgQ0xPU0lOR2Agb3IgYENMT1NFRGAuXG4gKlxuICogQHBhcmFtIHtXZWJTb2NrZXR9IHdlYnNvY2tldCBUaGUgV2ViU29ja2V0IGluc3RhbmNlXG4gKiBAcGFyYW0geyp9IFtkYXRhXSBUaGUgZGF0YSB0byBzZW5kXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2JdIENhbGxiYWNrXG4gKiBAcHJpdmF0ZVxuICovXG5mdW5jdGlvbiBzZW5kQWZ0ZXJDbG9zZSh3ZWJzb2NrZXQsIGRhdGEsIGNiKSB7XG4gIGlmIChkYXRhKSB7XG4gICAgY29uc3QgbGVuZ3RoID0gdG9CdWZmZXIoZGF0YSkubGVuZ3RoO1xuXG4gICAgLy9cbiAgICAvLyBUaGUgYF9idWZmZXJlZEFtb3VudGAgcHJvcGVydHkgaXMgdXNlZCBvbmx5IHdoZW4gdGhlIHBlZXIgaXMgYSBjbGllbnQgYW5kXG4gICAgLy8gdGhlIG9wZW5pbmcgaGFuZHNoYWtlIGZhaWxzLiBVbmRlciB0aGVzZSBjaXJjdW1zdGFuY2VzLCBpbiBmYWN0LCB0aGVcbiAgICAvLyBgc2V0U29ja2V0KClgIG1ldGhvZCBpcyBub3QgY2FsbGVkLCBzbyB0aGUgYF9zb2NrZXRgIGFuZCBgX3NlbmRlcmBcbiAgICAvLyBwcm9wZXJ0aWVzIGFyZSBzZXQgdG8gYG51bGxgLlxuICAgIC8vXG4gICAgaWYgKHdlYnNvY2tldC5fc29ja2V0KSB3ZWJzb2NrZXQuX3NlbmRlci5fYnVmZmVyZWRCeXRlcyArPSBsZW5ndGg7XG4gICAgZWxzZSB3ZWJzb2NrZXQuX2J1ZmZlcmVkQW1vdW50ICs9IGxlbmd0aDtcbiAgfVxuXG4gIGlmIChjYikge1xuICAgIGNvbnN0IGVyciA9IG5ldyBFcnJvcihcbiAgICAgIGBXZWJTb2NrZXQgaXMgbm90IG9wZW46IHJlYWR5U3RhdGUgJHt3ZWJzb2NrZXQucmVhZHlTdGF0ZX0gYCArXG4gICAgICAgIGAoJHtyZWFkeVN0YXRlc1t3ZWJzb2NrZXQucmVhZHlTdGF0ZV19KWBcbiAgICApO1xuICAgIHByb2Nlc3MubmV4dFRpY2soY2IsIGVycik7XG4gIH1cbn1cblxuLyoqXG4gKiBUaGUgbGlzdGVuZXIgb2YgdGhlIGBSZWNlaXZlcmAgYCdjb25jbHVkZSdgIGV2ZW50LlxuICpcbiAqIEBwYXJhbSB7TnVtYmVyfSBjb2RlIFRoZSBzdGF0dXMgY29kZVxuICogQHBhcmFtIHtCdWZmZXJ9IHJlYXNvbiBUaGUgcmVhc29uIGZvciBjbG9zaW5nXG4gKiBAcHJpdmF0ZVxuICovXG5mdW5jdGlvbiByZWNlaXZlck9uQ29uY2x1ZGUoY29kZSwgcmVhc29uKSB7XG4gIGNvbnN0IHdlYnNvY2tldCA9IHRoaXNba1dlYlNvY2tldF07XG5cbiAgd2Vic29ja2V0Ll9jbG9zZUZyYW1lUmVjZWl2ZWQgPSB0cnVlO1xuICB3ZWJzb2NrZXQuX2Nsb3NlTWVzc2FnZSA9IHJlYXNvbjtcbiAgd2Vic29ja2V0Ll9jbG9zZUNvZGUgPSBjb2RlO1xuXG4gIGlmICh3ZWJzb2NrZXQuX3NvY2tldFtrV2ViU29ja2V0XSA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG5cbiAgd2Vic29ja2V0Ll9zb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2RhdGEnLCBzb2NrZXRPbkRhdGEpO1xuICBwcm9jZXNzLm5leHRUaWNrKHJlc3VtZSwgd2Vic29ja2V0Ll9zb2NrZXQpO1xuXG4gIGlmIChjb2RlID09PSAxMDA1KSB3ZWJzb2NrZXQuY2xvc2UoKTtcbiAgZWxzZSB3ZWJzb2NrZXQuY2xvc2UoY29kZSwgcmVhc29uKTtcbn1cblxuLyoqXG4gKiBUaGUgbGlzdGVuZXIgb2YgdGhlIGBSZWNlaXZlcmAgYCdkcmFpbidgIGV2ZW50LlxuICpcbiAqIEBwcml2YXRlXG4gKi9cbmZ1bmN0aW9uIHJlY2VpdmVyT25EcmFpbigpIHtcbiAgY29uc3Qgd2Vic29ja2V0ID0gdGhpc1trV2ViU29ja2V0XTtcblxuICBpZiAoIXdlYnNvY2tldC5pc1BhdXNlZCkgd2Vic29ja2V0Ll9zb2NrZXQucmVzdW1lKCk7XG59XG5cbi8qKlxuICogVGhlIGxpc3RlbmVyIG9mIHRoZSBgUmVjZWl2ZXJgIGAnZXJyb3InYCBldmVudC5cbiAqXG4gKiBAcGFyYW0geyhSYW5nZUVycm9yfEVycm9yKX0gZXJyIFRoZSBlbWl0dGVkIGVycm9yXG4gKiBAcHJpdmF0ZVxuICovXG5mdW5jdGlvbiByZWNlaXZlck9uRXJyb3IoZXJyKSB7XG4gIGNvbnN0IHdlYnNvY2tldCA9IHRoaXNba1dlYlNvY2tldF07XG5cbiAgaWYgKHdlYnNvY2tldC5fc29ja2V0W2tXZWJTb2NrZXRdICE9PSB1bmRlZmluZWQpIHtcbiAgICB3ZWJzb2NrZXQuX3NvY2tldC5yZW1vdmVMaXN0ZW5lcignZGF0YScsIHNvY2tldE9uRGF0YSk7XG5cbiAgICAvL1xuICAgIC8vIE9uIE5vZGUuanMgPCAxNC4wLjAgdGhlIGAnZXJyb3InYCBldmVudCBpcyBlbWl0dGVkIHN5bmNocm9ub3VzbHkuIFNlZVxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS93ZWJzb2NrZXRzL3dzL2lzc3Vlcy8xOTQwLlxuICAgIC8vXG4gICAgcHJvY2Vzcy5uZXh0VGljayhyZXN1bWUsIHdlYnNvY2tldC5fc29ja2V0KTtcblxuICAgIHdlYnNvY2tldC5jbG9zZShlcnJba1N0YXR1c0NvZGVdKTtcbiAgfVxuXG4gIHdlYnNvY2tldC5lbWl0KCdlcnJvcicsIGVycik7XG59XG5cbi8qKlxuICogVGhlIGxpc3RlbmVyIG9mIHRoZSBgUmVjZWl2ZXJgIGAnZmluaXNoJ2AgZXZlbnQuXG4gKlxuICogQHByaXZhdGVcbiAqL1xuZnVuY3Rpb24gcmVjZWl2ZXJPbkZpbmlzaCgpIHtcbiAgdGhpc1trV2ViU29ja2V0XS5lbWl0Q2xvc2UoKTtcbn1cblxuLyoqXG4gKiBUaGUgbGlzdGVuZXIgb2YgdGhlIGBSZWNlaXZlcmAgYCdtZXNzYWdlJ2AgZXZlbnQuXG4gKlxuICogQHBhcmFtIHtCdWZmZXJ8QXJyYXlCdWZmZXJ8QnVmZmVyW10pfSBkYXRhIFRoZSBtZXNzYWdlXG4gKiBAcGFyYW0ge0Jvb2xlYW59IGlzQmluYXJ5IFNwZWNpZmllcyB3aGV0aGVyIHRoZSBtZXNzYWdlIGlzIGJpbmFyeSBvciBub3RcbiAqIEBwcml2YXRlXG4gKi9cbmZ1bmN0aW9uIHJlY2VpdmVyT25NZXNzYWdlKGRhdGEsIGlzQmluYXJ5KSB7XG4gIHRoaXNba1dlYlNvY2tldF0uZW1pdCgnbWVzc2FnZScsIGRhdGEsIGlzQmluYXJ5KTtcbn1cblxuLyoqXG4gKiBUaGUgbGlzdGVuZXIgb2YgdGhlIGBSZWNlaXZlcmAgYCdwaW5nJ2AgZXZlbnQuXG4gKlxuICogQHBhcmFtIHtCdWZmZXJ9IGRhdGEgVGhlIGRhdGEgaW5jbHVkZWQgaW4gdGhlIHBpbmcgZnJhbWVcbiAqIEBwcml2YXRlXG4gKi9cbmZ1bmN0aW9uIHJlY2VpdmVyT25QaW5nKGRhdGEpIHtcbiAgY29uc3Qgd2Vic29ja2V0ID0gdGhpc1trV2ViU29ja2V0XTtcblxuICB3ZWJzb2NrZXQucG9uZyhkYXRhLCAhd2Vic29ja2V0Ll9pc1NlcnZlciwgTk9PUCk7XG4gIHdlYnNvY2tldC5lbWl0KCdwaW5nJywgZGF0YSk7XG59XG5cbi8qKlxuICogVGhlIGxpc3RlbmVyIG9mIHRoZSBgUmVjZWl2ZXJgIGAncG9uZydgIGV2ZW50LlxuICpcbiAqIEBwYXJhbSB7QnVmZmVyfSBkYXRhIFRoZSBkYXRhIGluY2x1ZGVkIGluIHRoZSBwb25nIGZyYW1lXG4gKiBAcHJpdmF0ZVxuICovXG5mdW5jdGlvbiByZWNlaXZlck9uUG9uZyhkYXRhKSB7XG4gIHRoaXNba1dlYlNvY2tldF0uZW1pdCgncG9uZycsIGRhdGEpO1xufVxuXG4vKipcbiAqIFJlc3VtZSBhIHJlYWRhYmxlIHN0cmVhbVxuICpcbiAqIEBwYXJhbSB7UmVhZGFibGV9IHN0cmVhbSBUaGUgcmVhZGFibGUgc3RyZWFtXG4gKiBAcHJpdmF0ZVxuICovXG5mdW5jdGlvbiByZXN1bWUoc3RyZWFtKSB7XG4gIHN0cmVhbS5yZXN1bWUoKTtcbn1cblxuLyoqXG4gKiBUaGUgbGlzdGVuZXIgb2YgdGhlIHNvY2tldCBgJ2Nsb3NlJ2AgZXZlbnQuXG4gKlxuICogQHByaXZhdGVcbiAqL1xuZnVuY3Rpb24gc29ja2V0T25DbG9zZSgpIHtcbiAgY29uc3Qgd2Vic29ja2V0ID0gdGhpc1trV2ViU29ja2V0XTtcblxuICB0aGlzLnJlbW92ZUxpc3RlbmVyKCdjbG9zZScsIHNvY2tldE9uQ2xvc2UpO1xuICB0aGlzLnJlbW92ZUxpc3RlbmVyKCdkYXRhJywgc29ja2V0T25EYXRhKTtcbiAgdGhpcy5yZW1vdmVMaXN0ZW5lcignZW5kJywgc29ja2V0T25FbmQpO1xuXG4gIHdlYnNvY2tldC5fcmVhZHlTdGF0ZSA9IFdlYlNvY2tldC5DTE9TSU5HO1xuXG4gIGxldCBjaHVuaztcblxuICAvL1xuICAvLyBUaGUgY2xvc2UgZnJhbWUgbWlnaHQgbm90IGhhdmUgYmVlbiByZWNlaXZlZCBvciB0aGUgYCdlbmQnYCBldmVudCBlbWl0dGVkLFxuICAvLyBmb3IgZXhhbXBsZSwgaWYgdGhlIHNvY2tldCB3YXMgZGVzdHJveWVkIGR1ZSB0byBhbiBlcnJvci4gRW5zdXJlIHRoYXQgdGhlXG4gIC8vIGByZWNlaXZlcmAgc3RyZWFtIGlzIGNsb3NlZCBhZnRlciB3cml0aW5nIGFueSByZW1haW5pbmcgYnVmZmVyZWQgZGF0YSB0b1xuICAvLyBpdC4gSWYgdGhlIHJlYWRhYmxlIHNpZGUgb2YgdGhlIHNvY2tldCBpcyBpbiBmbG93aW5nIG1vZGUgdGhlbiB0aGVyZSBpcyBub1xuICAvLyBidWZmZXJlZCBkYXRhIGFzIGV2ZXJ5dGhpbmcgaGFzIGJlZW4gYWxyZWFkeSB3cml0dGVuIGFuZCBgcmVhZGFibGUucmVhZCgpYFxuICAvLyB3aWxsIHJldHVybiBgbnVsbGAuIElmIGluc3RlYWQsIHRoZSBzb2NrZXQgaXMgcGF1c2VkLCBhbnkgcG9zc2libGUgYnVmZmVyZWRcbiAgLy8gZGF0YSB3aWxsIGJlIHJlYWQgYXMgYSBzaW5nbGUgY2h1bmsuXG4gIC8vXG4gIGlmIChcbiAgICAhdGhpcy5fcmVhZGFibGVTdGF0ZS5lbmRFbWl0dGVkICYmXG4gICAgIXdlYnNvY2tldC5fY2xvc2VGcmFtZVJlY2VpdmVkICYmXG4gICAgIXdlYnNvY2tldC5fcmVjZWl2ZXIuX3dyaXRhYmxlU3RhdGUuZXJyb3JFbWl0dGVkICYmXG4gICAgKGNodW5rID0gd2Vic29ja2V0Ll9zb2NrZXQucmVhZCgpKSAhPT0gbnVsbFxuICApIHtcbiAgICB3ZWJzb2NrZXQuX3JlY2VpdmVyLndyaXRlKGNodW5rKTtcbiAgfVxuXG4gIHdlYnNvY2tldC5fcmVjZWl2ZXIuZW5kKCk7XG5cbiAgdGhpc1trV2ViU29ja2V0XSA9IHVuZGVmaW5lZDtcblxuICBjbGVhclRpbWVvdXQod2Vic29ja2V0Ll9jbG9zZVRpbWVyKTtcblxuICBpZiAoXG4gICAgd2Vic29ja2V0Ll9yZWNlaXZlci5fd3JpdGFibGVTdGF0ZS5maW5pc2hlZCB8fFxuICAgIHdlYnNvY2tldC5fcmVjZWl2ZXIuX3dyaXRhYmxlU3RhdGUuZXJyb3JFbWl0dGVkXG4gICkge1xuICAgIHdlYnNvY2tldC5lbWl0Q2xvc2UoKTtcbiAgfSBlbHNlIHtcbiAgICB3ZWJzb2NrZXQuX3JlY2VpdmVyLm9uKCdlcnJvcicsIHJlY2VpdmVyT25GaW5pc2gpO1xuICAgIHdlYnNvY2tldC5fcmVjZWl2ZXIub24oJ2ZpbmlzaCcsIHJlY2VpdmVyT25GaW5pc2gpO1xuICB9XG59XG5cbi8qKlxuICogVGhlIGxpc3RlbmVyIG9mIHRoZSBzb2NrZXQgYCdkYXRhJ2AgZXZlbnQuXG4gKlxuICogQHBhcmFtIHtCdWZmZXJ9IGNodW5rIEEgY2h1bmsgb2YgZGF0YVxuICogQHByaXZhdGVcbiAqL1xuZnVuY3Rpb24gc29ja2V0T25EYXRhKGNodW5rKSB7XG4gIGlmICghdGhpc1trV2ViU29ja2V0XS5fcmVjZWl2ZXIud3JpdGUoY2h1bmspKSB7XG4gICAgdGhpcy5wYXVzZSgpO1xuICB9XG59XG5cbi8qKlxuICogVGhlIGxpc3RlbmVyIG9mIHRoZSBzb2NrZXQgYCdlbmQnYCBldmVudC5cbiAqXG4gKiBAcHJpdmF0ZVxuICovXG5mdW5jdGlvbiBzb2NrZXRPbkVuZCgpIHtcbiAgY29uc3Qgd2Vic29ja2V0ID0gdGhpc1trV2ViU29ja2V0XTtcblxuICB3ZWJzb2NrZXQuX3JlYWR5U3RhdGUgPSBXZWJTb2NrZXQuQ0xPU0lORztcbiAgd2Vic29ja2V0Ll9yZWNlaXZlci5lbmQoKTtcbiAgdGhpcy5lbmQoKTtcbn1cblxuLyoqXG4gKiBUaGUgbGlzdGVuZXIgb2YgdGhlIHNvY2tldCBgJ2Vycm9yJ2AgZXZlbnQuXG4gKlxuICogQHByaXZhdGVcbiAqL1xuZnVuY3Rpb24gc29ja2V0T25FcnJvcigpIHtcbiAgY29uc3Qgd2Vic29ja2V0ID0gdGhpc1trV2ViU29ja2V0XTtcblxuICB0aGlzLnJlbW92ZUxpc3RlbmVyKCdlcnJvcicsIHNvY2tldE9uRXJyb3IpO1xuICB0aGlzLm9uKCdlcnJvcicsIE5PT1ApO1xuXG4gIGlmICh3ZWJzb2NrZXQpIHtcbiAgICB3ZWJzb2NrZXQuX3JlYWR5U3RhdGUgPSBXZWJTb2NrZXQuQ0xPU0lORztcbiAgICB0aGlzLmRlc3Ryb3koKTtcbiAgfVxufVxuIiwgIid1c2Ugc3RyaWN0JztcblxuY29uc3QgeyBEdXBsZXggfSA9IHJlcXVpcmUoJ3N0cmVhbScpO1xuXG4vKipcbiAqIEVtaXRzIHRoZSBgJ2Nsb3NlJ2AgZXZlbnQgb24gYSBzdHJlYW0uXG4gKlxuICogQHBhcmFtIHtEdXBsZXh9IHN0cmVhbSBUaGUgc3RyZWFtLlxuICogQHByaXZhdGVcbiAqL1xuZnVuY3Rpb24gZW1pdENsb3NlKHN0cmVhbSkge1xuICBzdHJlYW0uZW1pdCgnY2xvc2UnKTtcbn1cblxuLyoqXG4gKiBUaGUgbGlzdGVuZXIgb2YgdGhlIGAnZW5kJ2AgZXZlbnQuXG4gKlxuICogQHByaXZhdGVcbiAqL1xuZnVuY3Rpb24gZHVwbGV4T25FbmQoKSB7XG4gIGlmICghdGhpcy5kZXN0cm95ZWQgJiYgdGhpcy5fd3JpdGFibGVTdGF0ZS5maW5pc2hlZCkge1xuICAgIHRoaXMuZGVzdHJveSgpO1xuICB9XG59XG5cbi8qKlxuICogVGhlIGxpc3RlbmVyIG9mIHRoZSBgJ2Vycm9yJ2AgZXZlbnQuXG4gKlxuICogQHBhcmFtIHtFcnJvcn0gZXJyIFRoZSBlcnJvclxuICogQHByaXZhdGVcbiAqL1xuZnVuY3Rpb24gZHVwbGV4T25FcnJvcihlcnIpIHtcbiAgdGhpcy5yZW1vdmVMaXN0ZW5lcignZXJyb3InLCBkdXBsZXhPbkVycm9yKTtcbiAgdGhpcy5kZXN0cm95KCk7XG4gIGlmICh0aGlzLmxpc3RlbmVyQ291bnQoJ2Vycm9yJykgPT09IDApIHtcbiAgICAvLyBEbyBub3Qgc3VwcHJlc3MgdGhlIHRocm93aW5nIGJlaGF2aW9yLlxuICAgIHRoaXMuZW1pdCgnZXJyb3InLCBlcnIpO1xuICB9XG59XG5cbi8qKlxuICogV3JhcHMgYSBgV2ViU29ja2V0YCBpbiBhIGR1cGxleCBzdHJlYW0uXG4gKlxuICogQHBhcmFtIHtXZWJTb2NrZXR9IHdzIFRoZSBgV2ViU29ja2V0YCB0byB3cmFwXG4gKiBAcGFyYW0ge09iamVjdH0gW29wdGlvbnNdIFRoZSBvcHRpb25zIGZvciB0aGUgYER1cGxleGAgY29uc3RydWN0b3JcbiAqIEByZXR1cm4ge0R1cGxleH0gVGhlIGR1cGxleCBzdHJlYW1cbiAqIEBwdWJsaWNcbiAqL1xuZnVuY3Rpb24gY3JlYXRlV2ViU29ja2V0U3RyZWFtKHdzLCBvcHRpb25zKSB7XG4gIGxldCB0ZXJtaW5hdGVPbkRlc3Ryb3kgPSB0cnVlO1xuXG4gIGNvbnN0IGR1cGxleCA9IG5ldyBEdXBsZXgoe1xuICAgIC4uLm9wdGlvbnMsXG4gICAgYXV0b0Rlc3Ryb3k6IGZhbHNlLFxuICAgIGVtaXRDbG9zZTogZmFsc2UsXG4gICAgb2JqZWN0TW9kZTogZmFsc2UsXG4gICAgd3JpdGFibGVPYmplY3RNb2RlOiBmYWxzZVxuICB9KTtcblxuICB3cy5vbignbWVzc2FnZScsIGZ1bmN0aW9uIG1lc3NhZ2UobXNnLCBpc0JpbmFyeSkge1xuICAgIGNvbnN0IGRhdGEgPVxuICAgICAgIWlzQmluYXJ5ICYmIGR1cGxleC5fcmVhZGFibGVTdGF0ZS5vYmplY3RNb2RlID8gbXNnLnRvU3RyaW5nKCkgOiBtc2c7XG5cbiAgICBpZiAoIWR1cGxleC5wdXNoKGRhdGEpKSB3cy5wYXVzZSgpO1xuICB9KTtcblxuICB3cy5vbmNlKCdlcnJvcicsIGZ1bmN0aW9uIGVycm9yKGVycikge1xuICAgIGlmIChkdXBsZXguZGVzdHJveWVkKSByZXR1cm47XG5cbiAgICAvLyBQcmV2ZW50IGB3cy50ZXJtaW5hdGUoKWAgZnJvbSBiZWluZyBjYWxsZWQgYnkgYGR1cGxleC5fZGVzdHJveSgpYC5cbiAgICAvL1xuICAgIC8vIC0gSWYgdGhlIGAnZXJyb3InYCBldmVudCBpcyBlbWl0dGVkIGJlZm9yZSB0aGUgYCdvcGVuJ2AgZXZlbnQsIHRoZW5cbiAgICAvLyAgIGB3cy50ZXJtaW5hdGUoKWAgaXMgYSBub29wIGFzIG5vIHNvY2tldCBpcyBhc3NpZ25lZC5cbiAgICAvLyAtIE90aGVyd2lzZSwgdGhlIGVycm9yIGlzIHJlLWVtaXR0ZWQgYnkgdGhlIGxpc3RlbmVyIG9mIHRoZSBgJ2Vycm9yJ2BcbiAgICAvLyAgIGV2ZW50IG9mIHRoZSBgUmVjZWl2ZXJgIG9iamVjdC4gVGhlIGxpc3RlbmVyIGFscmVhZHkgY2xvc2VzIHRoZVxuICAgIC8vICAgY29ubmVjdGlvbiBieSBjYWxsaW5nIGB3cy5jbG9zZSgpYC4gVGhpcyBhbGxvd3MgYSBjbG9zZSBmcmFtZSB0byBiZVxuICAgIC8vICAgc2VudCB0byB0aGUgb3RoZXIgcGVlci4gSWYgYHdzLnRlcm1pbmF0ZSgpYCBpcyBjYWxsZWQgcmlnaHQgYWZ0ZXIgdGhpcyxcbiAgICAvLyAgIHRoZW4gdGhlIGNsb3NlIGZyYW1lIG1pZ2h0IG5vdCBiZSBzZW50LlxuICAgIHRlcm1pbmF0ZU9uRGVzdHJveSA9IGZhbHNlO1xuICAgIGR1cGxleC5kZXN0cm95KGVycik7XG4gIH0pO1xuXG4gIHdzLm9uY2UoJ2Nsb3NlJywgZnVuY3Rpb24gY2xvc2UoKSB7XG4gICAgaWYgKGR1cGxleC5kZXN0cm95ZWQpIHJldHVybjtcblxuICAgIGR1cGxleC5wdXNoKG51bGwpO1xuICB9KTtcblxuICBkdXBsZXguX2Rlc3Ryb3kgPSBmdW5jdGlvbiAoZXJyLCBjYWxsYmFjaykge1xuICAgIGlmICh3cy5yZWFkeVN0YXRlID09PSB3cy5DTE9TRUQpIHtcbiAgICAgIGNhbGxiYWNrKGVycik7XG4gICAgICBwcm9jZXNzLm5leHRUaWNrKGVtaXRDbG9zZSwgZHVwbGV4KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBsZXQgY2FsbGVkID0gZmFsc2U7XG5cbiAgICB3cy5vbmNlKCdlcnJvcicsIGZ1bmN0aW9uIGVycm9yKGVycikge1xuICAgICAgY2FsbGVkID0gdHJ1ZTtcbiAgICAgIGNhbGxiYWNrKGVycik7XG4gICAgfSk7XG5cbiAgICB3cy5vbmNlKCdjbG9zZScsIGZ1bmN0aW9uIGNsb3NlKCkge1xuICAgICAgaWYgKCFjYWxsZWQpIGNhbGxiYWNrKGVycik7XG4gICAgICBwcm9jZXNzLm5leHRUaWNrKGVtaXRDbG9zZSwgZHVwbGV4KTtcbiAgICB9KTtcblxuICAgIGlmICh0ZXJtaW5hdGVPbkRlc3Ryb3kpIHdzLnRlcm1pbmF0ZSgpO1xuICB9O1xuXG4gIGR1cGxleC5fZmluYWwgPSBmdW5jdGlvbiAoY2FsbGJhY2spIHtcbiAgICBpZiAod3MucmVhZHlTdGF0ZSA9PT0gd3MuQ09OTkVDVElORykge1xuICAgICAgd3Mub25jZSgnb3BlbicsIGZ1bmN0aW9uIG9wZW4oKSB7XG4gICAgICAgIGR1cGxleC5fZmluYWwoY2FsbGJhY2spO1xuICAgICAgfSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gSWYgdGhlIHZhbHVlIG9mIHRoZSBgX3NvY2tldGAgcHJvcGVydHkgaXMgYG51bGxgIGl0IG1lYW5zIHRoYXQgYHdzYCBpcyBhXG4gICAgLy8gY2xpZW50IHdlYnNvY2tldCBhbmQgdGhlIGhhbmRzaGFrZSBmYWlsZWQuIEluIGZhY3QsIHdoZW4gdGhpcyBoYXBwZW5zLCBhXG4gICAgLy8gc29ja2V0IGlzIG5ldmVyIGFzc2lnbmVkIHRvIHRoZSB3ZWJzb2NrZXQuIFdhaXQgZm9yIHRoZSBgJ2Vycm9yJ2AgZXZlbnRcbiAgICAvLyB0aGF0IHdpbGwgYmUgZW1pdHRlZCBieSB0aGUgd2Vic29ja2V0LlxuICAgIGlmICh3cy5fc29ja2V0ID09PSBudWxsKSByZXR1cm47XG5cbiAgICBpZiAod3MuX3NvY2tldC5fd3JpdGFibGVTdGF0ZS5maW5pc2hlZCkge1xuICAgICAgY2FsbGJhY2soKTtcbiAgICAgIGlmIChkdXBsZXguX3JlYWRhYmxlU3RhdGUuZW5kRW1pdHRlZCkgZHVwbGV4LmRlc3Ryb3koKTtcbiAgICB9IGVsc2Uge1xuICAgICAgd3MuX3NvY2tldC5vbmNlKCdmaW5pc2gnLCBmdW5jdGlvbiBmaW5pc2goKSB7XG4gICAgICAgIC8vIGBkdXBsZXhgIGlzIG5vdCBkZXN0cm95ZWQgaGVyZSBiZWNhdXNlIHRoZSBgJ2VuZCdgIGV2ZW50IHdpbGwgYmVcbiAgICAgICAgLy8gZW1pdHRlZCBvbiBgZHVwbGV4YCBhZnRlciB0aGlzIGAnZmluaXNoJ2AgZXZlbnQuIFRoZSBFT0Ygc2lnbmFsaW5nXG4gICAgICAgIC8vIGBudWxsYCBjaHVuayBpcywgaW4gZmFjdCwgcHVzaGVkIHdoZW4gdGhlIHdlYnNvY2tldCBlbWl0cyBgJ2Nsb3NlJ2AuXG4gICAgICAgIGNhbGxiYWNrKCk7XG4gICAgICB9KTtcbiAgICAgIHdzLmNsb3NlKCk7XG4gICAgfVxuICB9O1xuXG4gIGR1cGxleC5fcmVhZCA9IGZ1bmN0aW9uICgpIHtcbiAgICBpZiAod3MuaXNQYXVzZWQpIHdzLnJlc3VtZSgpO1xuICB9O1xuXG4gIGR1cGxleC5fd3JpdGUgPSBmdW5jdGlvbiAoY2h1bmssIGVuY29kaW5nLCBjYWxsYmFjaykge1xuICAgIGlmICh3cy5yZWFkeVN0YXRlID09PSB3cy5DT05ORUNUSU5HKSB7XG4gICAgICB3cy5vbmNlKCdvcGVuJywgZnVuY3Rpb24gb3BlbigpIHtcbiAgICAgICAgZHVwbGV4Ll93cml0ZShjaHVuaywgZW5jb2RpbmcsIGNhbGxiYWNrKTtcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHdzLnNlbmQoY2h1bmssIGNhbGxiYWNrKTtcbiAgfTtcblxuICBkdXBsZXgub24oJ2VuZCcsIGR1cGxleE9uRW5kKTtcbiAgZHVwbGV4Lm9uKCdlcnJvcicsIGR1cGxleE9uRXJyb3IpO1xuICByZXR1cm4gZHVwbGV4O1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGNyZWF0ZVdlYlNvY2tldFN0cmVhbTtcbiIsICIndXNlIHN0cmljdCc7XG5cbmNvbnN0IHsgdG9rZW5DaGFycyB9ID0gcmVxdWlyZSgnLi92YWxpZGF0aW9uJyk7XG5cbi8qKlxuICogUGFyc2VzIHRoZSBgU2VjLVdlYlNvY2tldC1Qcm90b2NvbGAgaGVhZGVyIGludG8gYSBzZXQgb2Ygc3VicHJvdG9jb2wgbmFtZXMuXG4gKlxuICogQHBhcmFtIHtTdHJpbmd9IGhlYWRlciBUaGUgZmllbGQgdmFsdWUgb2YgdGhlIGhlYWRlclxuICogQHJldHVybiB7U2V0fSBUaGUgc3VicHJvdG9jb2wgbmFtZXNcbiAqIEBwdWJsaWNcbiAqL1xuZnVuY3Rpb24gcGFyc2UoaGVhZGVyKSB7XG4gIGNvbnN0IHByb3RvY29scyA9IG5ldyBTZXQoKTtcbiAgbGV0IHN0YXJ0ID0gLTE7XG4gIGxldCBlbmQgPSAtMTtcbiAgbGV0IGkgPSAwO1xuXG4gIGZvciAoaTsgaSA8IGhlYWRlci5sZW5ndGg7IGkrKykge1xuICAgIGNvbnN0IGNvZGUgPSBoZWFkZXIuY2hhckNvZGVBdChpKTtcblxuICAgIGlmIChlbmQgPT09IC0xICYmIHRva2VuQ2hhcnNbY29kZV0gPT09IDEpIHtcbiAgICAgIGlmIChzdGFydCA9PT0gLTEpIHN0YXJ0ID0gaTtcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgaSAhPT0gMCAmJlxuICAgICAgKGNvZGUgPT09IDB4MjAgLyogJyAnICovIHx8IGNvZGUgPT09IDB4MDkpIC8qICdcXHQnICovXG4gICAgKSB7XG4gICAgICBpZiAoZW5kID09PSAtMSAmJiBzdGFydCAhPT0gLTEpIGVuZCA9IGk7XG4gICAgfSBlbHNlIGlmIChjb2RlID09PSAweDJjIC8qICcsJyAqLykge1xuICAgICAgaWYgKHN0YXJ0ID09PSAtMSkge1xuICAgICAgICB0aHJvdyBuZXcgU3ludGF4RXJyb3IoYFVuZXhwZWN0ZWQgY2hhcmFjdGVyIGF0IGluZGV4ICR7aX1gKTtcbiAgICAgIH1cblxuICAgICAgaWYgKGVuZCA9PT0gLTEpIGVuZCA9IGk7XG5cbiAgICAgIGNvbnN0IHByb3RvY29sID0gaGVhZGVyLnNsaWNlKHN0YXJ0LCBlbmQpO1xuXG4gICAgICBpZiAocHJvdG9jb2xzLmhhcyhwcm90b2NvbCkpIHtcbiAgICAgICAgdGhyb3cgbmV3IFN5bnRheEVycm9yKGBUaGUgXCIke3Byb3RvY29sfVwiIHN1YnByb3RvY29sIGlzIGR1cGxpY2F0ZWRgKTtcbiAgICAgIH1cblxuICAgICAgcHJvdG9jb2xzLmFkZChwcm90b2NvbCk7XG4gICAgICBzdGFydCA9IGVuZCA9IC0xO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgU3ludGF4RXJyb3IoYFVuZXhwZWN0ZWQgY2hhcmFjdGVyIGF0IGluZGV4ICR7aX1gKTtcbiAgICB9XG4gIH1cblxuICBpZiAoc3RhcnQgPT09IC0xIHx8IGVuZCAhPT0gLTEpIHtcbiAgICB0aHJvdyBuZXcgU3ludGF4RXJyb3IoJ1VuZXhwZWN0ZWQgZW5kIG9mIGlucHV0Jyk7XG4gIH1cblxuICBjb25zdCBwcm90b2NvbCA9IGhlYWRlci5zbGljZShzdGFydCwgaSk7XG5cbiAgaWYgKHByb3RvY29scy5oYXMocHJvdG9jb2wpKSB7XG4gICAgdGhyb3cgbmV3IFN5bnRheEVycm9yKGBUaGUgXCIke3Byb3RvY29sfVwiIHN1YnByb3RvY29sIGlzIGR1cGxpY2F0ZWRgKTtcbiAgfVxuXG4gIHByb3RvY29scy5hZGQocHJvdG9jb2wpO1xuICByZXR1cm4gcHJvdG9jb2xzO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHsgcGFyc2UgfTtcbiIsICIvKiBlc2xpbnQgbm8tdW51c2VkLXZhcnM6IFtcImVycm9yXCIsIHsgXCJ2YXJzSWdub3JlUGF0dGVyblwiOiBcIl5EdXBsZXgkXCIgfV0gKi9cblxuJ3VzZSBzdHJpY3QnO1xuXG5jb25zdCBFdmVudEVtaXR0ZXIgPSByZXF1aXJlKCdldmVudHMnKTtcbmNvbnN0IGh0dHAgPSByZXF1aXJlKCdodHRwJyk7XG5jb25zdCB7IER1cGxleCB9ID0gcmVxdWlyZSgnc3RyZWFtJyk7XG5jb25zdCB7IGNyZWF0ZUhhc2ggfSA9IHJlcXVpcmUoJ2NyeXB0bycpO1xuXG5jb25zdCBleHRlbnNpb24gPSByZXF1aXJlKCcuL2V4dGVuc2lvbicpO1xuY29uc3QgUGVyTWVzc2FnZURlZmxhdGUgPSByZXF1aXJlKCcuL3Blcm1lc3NhZ2UtZGVmbGF0ZScpO1xuY29uc3Qgc3VicHJvdG9jb2wgPSByZXF1aXJlKCcuL3N1YnByb3RvY29sJyk7XG5jb25zdCBXZWJTb2NrZXQgPSByZXF1aXJlKCcuL3dlYnNvY2tldCcpO1xuY29uc3QgeyBHVUlELCBrV2ViU29ja2V0IH0gPSByZXF1aXJlKCcuL2NvbnN0YW50cycpO1xuXG5jb25zdCBrZXlSZWdleCA9IC9eWysvMC05QS1aYS16XXsyMn09PSQvO1xuXG5jb25zdCBSVU5OSU5HID0gMDtcbmNvbnN0IENMT1NJTkcgPSAxO1xuY29uc3QgQ0xPU0VEID0gMjtcblxuLyoqXG4gKiBDbGFzcyByZXByZXNlbnRpbmcgYSBXZWJTb2NrZXQgc2VydmVyLlxuICpcbiAqIEBleHRlbmRzIEV2ZW50RW1pdHRlclxuICovXG5jbGFzcyBXZWJTb2NrZXRTZXJ2ZXIgZXh0ZW5kcyBFdmVudEVtaXR0ZXIge1xuICAvKipcbiAgICogQ3JlYXRlIGEgYFdlYlNvY2tldFNlcnZlcmAgaW5zdGFuY2UuXG4gICAqXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zIENvbmZpZ3VyYXRpb24gb3B0aW9uc1xuICAgKiBAcGFyYW0ge051bWJlcn0gW29wdGlvbnMuYmFja2xvZz01MTFdIFRoZSBtYXhpbXVtIGxlbmd0aCBvZiB0aGUgcXVldWUgb2ZcbiAgICogICAgIHBlbmRpbmcgY29ubmVjdGlvbnNcbiAgICogQHBhcmFtIHtCb29sZWFufSBbb3B0aW9ucy5jbGllbnRUcmFja2luZz10cnVlXSBTcGVjaWZpZXMgd2hldGhlciBvciBub3QgdG9cbiAgICogICAgIHRyYWNrIGNsaWVudHNcbiAgICogQHBhcmFtIHtGdW5jdGlvbn0gW29wdGlvbnMuaGFuZGxlUHJvdG9jb2xzXSBBIGhvb2sgdG8gaGFuZGxlIHByb3RvY29sc1xuICAgKiBAcGFyYW0ge1N0cmluZ30gW29wdGlvbnMuaG9zdF0gVGhlIGhvc3RuYW1lIHdoZXJlIHRvIGJpbmQgdGhlIHNlcnZlclxuICAgKiBAcGFyYW0ge051bWJlcn0gW29wdGlvbnMubWF4UGF5bG9hZD0xMDQ4NTc2MDBdIFRoZSBtYXhpbXVtIGFsbG93ZWQgbWVzc2FnZVxuICAgKiAgICAgc2l6ZVxuICAgKiBAcGFyYW0ge0Jvb2xlYW59IFtvcHRpb25zLm5vU2VydmVyPWZhbHNlXSBFbmFibGUgbm8gc2VydmVyIG1vZGVcbiAgICogQHBhcmFtIHtTdHJpbmd9IFtvcHRpb25zLnBhdGhdIEFjY2VwdCBvbmx5IGNvbm5lY3Rpb25zIG1hdGNoaW5nIHRoaXMgcGF0aFxuICAgKiBAcGFyYW0geyhCb29sZWFufE9iamVjdCl9IFtvcHRpb25zLnBlck1lc3NhZ2VEZWZsYXRlPWZhbHNlXSBFbmFibGUvZGlzYWJsZVxuICAgKiAgICAgcGVybWVzc2FnZS1kZWZsYXRlXG4gICAqIEBwYXJhbSB7TnVtYmVyfSBbb3B0aW9ucy5wb3J0XSBUaGUgcG9ydCB3aGVyZSB0byBiaW5kIHRoZSBzZXJ2ZXJcbiAgICogQHBhcmFtIHsoaHR0cC5TZXJ2ZXJ8aHR0cHMuU2VydmVyKX0gW29wdGlvbnMuc2VydmVyXSBBIHByZS1jcmVhdGVkIEhUVFAvU1xuICAgKiAgICAgc2VydmVyIHRvIHVzZVxuICAgKiBAcGFyYW0ge0Jvb2xlYW59IFtvcHRpb25zLnNraXBVVEY4VmFsaWRhdGlvbj1mYWxzZV0gU3BlY2lmaWVzIHdoZXRoZXIgb3JcbiAgICogICAgIG5vdCB0byBza2lwIFVURi04IHZhbGlkYXRpb24gZm9yIHRleHQgYW5kIGNsb3NlIG1lc3NhZ2VzXG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IFtvcHRpb25zLnZlcmlmeUNsaWVudF0gQSBob29rIHRvIHJlamVjdCBjb25uZWN0aW9uc1xuICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbb3B0aW9ucy5XZWJTb2NrZXQ9V2ViU29ja2V0XSBTcGVjaWZpZXMgdGhlIGBXZWJTb2NrZXRgXG4gICAqICAgICBjbGFzcyB0byB1c2UuIEl0IG11c3QgYmUgdGhlIGBXZWJTb2NrZXRgIGNsYXNzIG9yIGNsYXNzIHRoYXQgZXh0ZW5kcyBpdFxuICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIEEgbGlzdGVuZXIgZm9yIHRoZSBgbGlzdGVuaW5nYCBldmVudFxuICAgKi9cbiAgY29uc3RydWN0b3Iob3B0aW9ucywgY2FsbGJhY2spIHtcbiAgICBzdXBlcigpO1xuXG4gICAgb3B0aW9ucyA9IHtcbiAgICAgIG1heFBheWxvYWQ6IDEwMCAqIDEwMjQgKiAxMDI0LFxuICAgICAgc2tpcFVURjhWYWxpZGF0aW9uOiBmYWxzZSxcbiAgICAgIHBlck1lc3NhZ2VEZWZsYXRlOiBmYWxzZSxcbiAgICAgIGhhbmRsZVByb3RvY29sczogbnVsbCxcbiAgICAgIGNsaWVudFRyYWNraW5nOiB0cnVlLFxuICAgICAgdmVyaWZ5Q2xpZW50OiBudWxsLFxuICAgICAgbm9TZXJ2ZXI6IGZhbHNlLFxuICAgICAgYmFja2xvZzogbnVsbCwgLy8gdXNlIGRlZmF1bHQgKDUxMSBhcyBpbXBsZW1lbnRlZCBpbiBuZXQuanMpXG4gICAgICBzZXJ2ZXI6IG51bGwsXG4gICAgICBob3N0OiBudWxsLFxuICAgICAgcGF0aDogbnVsbCxcbiAgICAgIHBvcnQ6IG51bGwsXG4gICAgICBXZWJTb2NrZXQsXG4gICAgICAuLi5vcHRpb25zXG4gICAgfTtcblxuICAgIGlmIChcbiAgICAgIChvcHRpb25zLnBvcnQgPT0gbnVsbCAmJiAhb3B0aW9ucy5zZXJ2ZXIgJiYgIW9wdGlvbnMubm9TZXJ2ZXIpIHx8XG4gICAgICAob3B0aW9ucy5wb3J0ICE9IG51bGwgJiYgKG9wdGlvbnMuc2VydmVyIHx8IG9wdGlvbnMubm9TZXJ2ZXIpKSB8fFxuICAgICAgKG9wdGlvbnMuc2VydmVyICYmIG9wdGlvbnMubm9TZXJ2ZXIpXG4gICAgKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFxuICAgICAgICAnT25lIGFuZCBvbmx5IG9uZSBvZiB0aGUgXCJwb3J0XCIsIFwic2VydmVyXCIsIG9yIFwibm9TZXJ2ZXJcIiBvcHRpb25zICcgK1xuICAgICAgICAgICdtdXN0IGJlIHNwZWNpZmllZCdcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnMucG9ydCAhPSBudWxsKSB7XG4gICAgICB0aGlzLl9zZXJ2ZXIgPSBodHRwLmNyZWF0ZVNlcnZlcigocmVxLCByZXMpID0+IHtcbiAgICAgICAgY29uc3QgYm9keSA9IGh0dHAuU1RBVFVTX0NPREVTWzQyNl07XG5cbiAgICAgICAgcmVzLndyaXRlSGVhZCg0MjYsIHtcbiAgICAgICAgICAnQ29udGVudC1MZW5ndGgnOiBib2R5Lmxlbmd0aCxcbiAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ3RleHQvcGxhaW4nXG4gICAgICAgIH0pO1xuICAgICAgICByZXMuZW5kKGJvZHkpO1xuICAgICAgfSk7XG4gICAgICB0aGlzLl9zZXJ2ZXIubGlzdGVuKFxuICAgICAgICBvcHRpb25zLnBvcnQsXG4gICAgICAgIG9wdGlvbnMuaG9zdCxcbiAgICAgICAgb3B0aW9ucy5iYWNrbG9nLFxuICAgICAgICBjYWxsYmFja1xuICAgICAgKTtcbiAgICB9IGVsc2UgaWYgKG9wdGlvbnMuc2VydmVyKSB7XG4gICAgICB0aGlzLl9zZXJ2ZXIgPSBvcHRpb25zLnNlcnZlcjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fc2VydmVyKSB7XG4gICAgICBjb25zdCBlbWl0Q29ubmVjdGlvbiA9IHRoaXMuZW1pdC5iaW5kKHRoaXMsICdjb25uZWN0aW9uJyk7XG5cbiAgICAgIHRoaXMuX3JlbW92ZUxpc3RlbmVycyA9IGFkZExpc3RlbmVycyh0aGlzLl9zZXJ2ZXIsIHtcbiAgICAgICAgbGlzdGVuaW5nOiB0aGlzLmVtaXQuYmluZCh0aGlzLCAnbGlzdGVuaW5nJyksXG4gICAgICAgIGVycm9yOiB0aGlzLmVtaXQuYmluZCh0aGlzLCAnZXJyb3InKSxcbiAgICAgICAgdXBncmFkZTogKHJlcSwgc29ja2V0LCBoZWFkKSA9PiB7XG4gICAgICAgICAgdGhpcy5oYW5kbGVVcGdyYWRlKHJlcSwgc29ja2V0LCBoZWFkLCBlbWl0Q29ubmVjdGlvbik7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmIChvcHRpb25zLnBlck1lc3NhZ2VEZWZsYXRlID09PSB0cnVlKSBvcHRpb25zLnBlck1lc3NhZ2VEZWZsYXRlID0ge307XG4gICAgaWYgKG9wdGlvbnMuY2xpZW50VHJhY2tpbmcpIHtcbiAgICAgIHRoaXMuY2xpZW50cyA9IG5ldyBTZXQoKTtcbiAgICAgIHRoaXMuX3Nob3VsZEVtaXRDbG9zZSA9IGZhbHNlO1xuICAgIH1cblxuICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnM7XG4gICAgdGhpcy5fc3RhdGUgPSBSVU5OSU5HO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGJvdW5kIGFkZHJlc3MsIHRoZSBhZGRyZXNzIGZhbWlseSBuYW1lLCBhbmQgcG9ydCBvZiB0aGUgc2VydmVyXG4gICAqIGFzIHJlcG9ydGVkIGJ5IHRoZSBvcGVyYXRpbmcgc3lzdGVtIGlmIGxpc3RlbmluZyBvbiBhbiBJUCBzb2NrZXQuXG4gICAqIElmIHRoZSBzZXJ2ZXIgaXMgbGlzdGVuaW5nIG9uIGEgcGlwZSBvciBVTklYIGRvbWFpbiBzb2NrZXQsIHRoZSBuYW1lIGlzXG4gICAqIHJldHVybmVkIGFzIGEgc3RyaW5nLlxuICAgKlxuICAgKiBAcmV0dXJuIHsoT2JqZWN0fFN0cmluZ3xudWxsKX0gVGhlIGFkZHJlc3Mgb2YgdGhlIHNlcnZlclxuICAgKiBAcHVibGljXG4gICAqL1xuICBhZGRyZXNzKCkge1xuICAgIGlmICh0aGlzLm9wdGlvbnMubm9TZXJ2ZXIpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVGhlIHNlcnZlciBpcyBvcGVyYXRpbmcgaW4gXCJub1NlcnZlclwiIG1vZGUnKTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuX3NlcnZlcikgcmV0dXJuIG51bGw7XG4gICAgcmV0dXJuIHRoaXMuX3NlcnZlci5hZGRyZXNzKCk7XG4gIH1cblxuICAvKipcbiAgICogU3RvcCB0aGUgc2VydmVyIGZyb20gYWNjZXB0aW5nIG5ldyBjb25uZWN0aW9ucyBhbmQgZW1pdCB0aGUgYCdjbG9zZSdgIGV2ZW50XG4gICAqIHdoZW4gYWxsIGV4aXN0aW5nIGNvbm5lY3Rpb25zIGFyZSBjbG9zZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYl0gQSBvbmUtdGltZSBsaXN0ZW5lciBmb3IgdGhlIGAnY2xvc2UnYCBldmVudFxuICAgKiBAcHVibGljXG4gICAqL1xuICBjbG9zZShjYikge1xuICAgIGlmICh0aGlzLl9zdGF0ZSA9PT0gQ0xPU0VEKSB7XG4gICAgICBpZiAoY2IpIHtcbiAgICAgICAgdGhpcy5vbmNlKCdjbG9zZScsICgpID0+IHtcbiAgICAgICAgICBjYihuZXcgRXJyb3IoJ1RoZSBzZXJ2ZXIgaXMgbm90IHJ1bm5pbmcnKSk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBwcm9jZXNzLm5leHRUaWNrKGVtaXRDbG9zZSwgdGhpcyk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKGNiKSB0aGlzLm9uY2UoJ2Nsb3NlJywgY2IpO1xuXG4gICAgaWYgKHRoaXMuX3N0YXRlID09PSBDTE9TSU5HKSByZXR1cm47XG4gICAgdGhpcy5fc3RhdGUgPSBDTE9TSU5HO1xuXG4gICAgaWYgKHRoaXMub3B0aW9ucy5ub1NlcnZlciB8fCB0aGlzLm9wdGlvbnMuc2VydmVyKSB7XG4gICAgICBpZiAodGhpcy5fc2VydmVyKSB7XG4gICAgICAgIHRoaXMuX3JlbW92ZUxpc3RlbmVycygpO1xuICAgICAgICB0aGlzLl9yZW1vdmVMaXN0ZW5lcnMgPSB0aGlzLl9zZXJ2ZXIgPSBudWxsO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5jbGllbnRzKSB7XG4gICAgICAgIGlmICghdGhpcy5jbGllbnRzLnNpemUpIHtcbiAgICAgICAgICBwcm9jZXNzLm5leHRUaWNrKGVtaXRDbG9zZSwgdGhpcyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5fc2hvdWxkRW1pdENsb3NlID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcHJvY2Vzcy5uZXh0VGljayhlbWl0Q2xvc2UsIHRoaXMpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBzZXJ2ZXIgPSB0aGlzLl9zZXJ2ZXI7XG5cbiAgICAgIHRoaXMuX3JlbW92ZUxpc3RlbmVycygpO1xuICAgICAgdGhpcy5fcmVtb3ZlTGlzdGVuZXJzID0gdGhpcy5fc2VydmVyID0gbnVsbDtcblxuICAgICAgLy9cbiAgICAgIC8vIFRoZSBIVFRQL1Mgc2VydmVyIHdhcyBjcmVhdGVkIGludGVybmFsbHkuIENsb3NlIGl0LCBhbmQgcmVseSBvbiBpdHNcbiAgICAgIC8vIGAnY2xvc2UnYCBldmVudC5cbiAgICAgIC8vXG4gICAgICBzZXJ2ZXIuY2xvc2UoKCkgPT4ge1xuICAgICAgICBlbWl0Q2xvc2UodGhpcyk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2VlIGlmIGEgZ2l2ZW4gcmVxdWVzdCBzaG91bGQgYmUgaGFuZGxlZCBieSB0aGlzIHNlcnZlciBpbnN0YW5jZS5cbiAgICpcbiAgICogQHBhcmFtIHtodHRwLkluY29taW5nTWVzc2FnZX0gcmVxIFJlcXVlc3Qgb2JqZWN0IHRvIGluc3BlY3RcbiAgICogQHJldHVybiB7Qm9vbGVhbn0gYHRydWVgIGlmIHRoZSByZXF1ZXN0IGlzIHZhbGlkLCBlbHNlIGBmYWxzZWBcbiAgICogQHB1YmxpY1xuICAgKi9cbiAgc2hvdWxkSGFuZGxlKHJlcSkge1xuICAgIGlmICh0aGlzLm9wdGlvbnMucGF0aCkge1xuICAgICAgY29uc3QgaW5kZXggPSByZXEudXJsLmluZGV4T2YoJz8nKTtcbiAgICAgIGNvbnN0IHBhdGhuYW1lID0gaW5kZXggIT09IC0xID8gcmVxLnVybC5zbGljZSgwLCBpbmRleCkgOiByZXEudXJsO1xuXG4gICAgICBpZiAocGF0aG5hbWUgIT09IHRoaXMub3B0aW9ucy5wYXRoKSByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKipcbiAgICogSGFuZGxlIGEgSFRUUCBVcGdyYWRlIHJlcXVlc3QuXG4gICAqXG4gICAqIEBwYXJhbSB7aHR0cC5JbmNvbWluZ01lc3NhZ2V9IHJlcSBUaGUgcmVxdWVzdCBvYmplY3RcbiAgICogQHBhcmFtIHtEdXBsZXh9IHNvY2tldCBUaGUgbmV0d29yayBzb2NrZXQgYmV0d2VlbiB0aGUgc2VydmVyIGFuZCBjbGllbnRcbiAgICogQHBhcmFtIHtCdWZmZXJ9IGhlYWQgVGhlIGZpcnN0IHBhY2tldCBvZiB0aGUgdXBncmFkZWQgc3RyZWFtXG4gICAqIEBwYXJhbSB7RnVuY3Rpb259IGNiIENhbGxiYWNrXG4gICAqIEBwdWJsaWNcbiAgICovXG4gIGhhbmRsZVVwZ3JhZGUocmVxLCBzb2NrZXQsIGhlYWQsIGNiKSB7XG4gICAgc29ja2V0Lm9uKCdlcnJvcicsIHNvY2tldE9uRXJyb3IpO1xuXG4gICAgY29uc3Qga2V5ID0gcmVxLmhlYWRlcnNbJ3NlYy13ZWJzb2NrZXQta2V5J107XG4gICAgY29uc3QgdmVyc2lvbiA9ICtyZXEuaGVhZGVyc1snc2VjLXdlYnNvY2tldC12ZXJzaW9uJ107XG5cbiAgICBpZiAocmVxLm1ldGhvZCAhPT0gJ0dFVCcpIHtcbiAgICAgIGNvbnN0IG1lc3NhZ2UgPSAnSW52YWxpZCBIVFRQIG1ldGhvZCc7XG4gICAgICBhYm9ydEhhbmRzaGFrZU9yRW1pdHdzQ2xpZW50RXJyb3IodGhpcywgcmVxLCBzb2NrZXQsIDQwNSwgbWVzc2FnZSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHJlcS5oZWFkZXJzLnVwZ3JhZGUudG9Mb3dlckNhc2UoKSAhPT0gJ3dlYnNvY2tldCcpIHtcbiAgICAgIGNvbnN0IG1lc3NhZ2UgPSAnSW52YWxpZCBVcGdyYWRlIGhlYWRlcic7XG4gICAgICBhYm9ydEhhbmRzaGFrZU9yRW1pdHdzQ2xpZW50RXJyb3IodGhpcywgcmVxLCBzb2NrZXQsIDQwMCwgbWVzc2FnZSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCFrZXkgfHwgIWtleVJlZ2V4LnRlc3Qoa2V5KSkge1xuICAgICAgY29uc3QgbWVzc2FnZSA9ICdNaXNzaW5nIG9yIGludmFsaWQgU2VjLVdlYlNvY2tldC1LZXkgaGVhZGVyJztcbiAgICAgIGFib3J0SGFuZHNoYWtlT3JFbWl0d3NDbGllbnRFcnJvcih0aGlzLCByZXEsIHNvY2tldCwgNDAwLCBtZXNzYWdlKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodmVyc2lvbiAhPT0gOCAmJiB2ZXJzaW9uICE9PSAxMykge1xuICAgICAgY29uc3QgbWVzc2FnZSA9ICdNaXNzaW5nIG9yIGludmFsaWQgU2VjLVdlYlNvY2tldC1WZXJzaW9uIGhlYWRlcic7XG4gICAgICBhYm9ydEhhbmRzaGFrZU9yRW1pdHdzQ2xpZW50RXJyb3IodGhpcywgcmVxLCBzb2NrZXQsIDQwMCwgbWVzc2FnZSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLnNob3VsZEhhbmRsZShyZXEpKSB7XG4gICAgICBhYm9ydEhhbmRzaGFrZShzb2NrZXQsIDQwMCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3Qgc2VjV2ViU29ja2V0UHJvdG9jb2wgPSByZXEuaGVhZGVyc1snc2VjLXdlYnNvY2tldC1wcm90b2NvbCddO1xuICAgIGxldCBwcm90b2NvbHMgPSBuZXcgU2V0KCk7XG5cbiAgICBpZiAoc2VjV2ViU29ja2V0UHJvdG9jb2wgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgcHJvdG9jb2xzID0gc3VicHJvdG9jb2wucGFyc2Uoc2VjV2ViU29ja2V0UHJvdG9jb2wpO1xuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIGNvbnN0IG1lc3NhZ2UgPSAnSW52YWxpZCBTZWMtV2ViU29ja2V0LVByb3RvY29sIGhlYWRlcic7XG4gICAgICAgIGFib3J0SGFuZHNoYWtlT3JFbWl0d3NDbGllbnRFcnJvcih0aGlzLCByZXEsIHNvY2tldCwgNDAwLCBtZXNzYWdlKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IHNlY1dlYlNvY2tldEV4dGVuc2lvbnMgPSByZXEuaGVhZGVyc1snc2VjLXdlYnNvY2tldC1leHRlbnNpb25zJ107XG4gICAgY29uc3QgZXh0ZW5zaW9ucyA9IHt9O1xuXG4gICAgaWYgKFxuICAgICAgdGhpcy5vcHRpb25zLnBlck1lc3NhZ2VEZWZsYXRlICYmXG4gICAgICBzZWNXZWJTb2NrZXRFeHRlbnNpb25zICE9PSB1bmRlZmluZWRcbiAgICApIHtcbiAgICAgIGNvbnN0IHBlck1lc3NhZ2VEZWZsYXRlID0gbmV3IFBlck1lc3NhZ2VEZWZsYXRlKFxuICAgICAgICB0aGlzLm9wdGlvbnMucGVyTWVzc2FnZURlZmxhdGUsXG4gICAgICAgIHRydWUsXG4gICAgICAgIHRoaXMub3B0aW9ucy5tYXhQYXlsb2FkXG4gICAgICApO1xuXG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBvZmZlcnMgPSBleHRlbnNpb24ucGFyc2Uoc2VjV2ViU29ja2V0RXh0ZW5zaW9ucyk7XG5cbiAgICAgICAgaWYgKG9mZmVyc1tQZXJNZXNzYWdlRGVmbGF0ZS5leHRlbnNpb25OYW1lXSkge1xuICAgICAgICAgIHBlck1lc3NhZ2VEZWZsYXRlLmFjY2VwdChvZmZlcnNbUGVyTWVzc2FnZURlZmxhdGUuZXh0ZW5zaW9uTmFtZV0pO1xuICAgICAgICAgIGV4dGVuc2lvbnNbUGVyTWVzc2FnZURlZmxhdGUuZXh0ZW5zaW9uTmFtZV0gPSBwZXJNZXNzYWdlRGVmbGF0ZTtcbiAgICAgICAgfVxuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIGNvbnN0IG1lc3NhZ2UgPVxuICAgICAgICAgICdJbnZhbGlkIG9yIHVuYWNjZXB0YWJsZSBTZWMtV2ViU29ja2V0LUV4dGVuc2lvbnMgaGVhZGVyJztcbiAgICAgICAgYWJvcnRIYW5kc2hha2VPckVtaXR3c0NsaWVudEVycm9yKHRoaXMsIHJlcSwgc29ja2V0LCA0MDAsIG1lc3NhZ2UpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBPcHRpb25hbGx5IGNhbGwgZXh0ZXJuYWwgY2xpZW50IHZlcmlmaWNhdGlvbiBoYW5kbGVyLlxuICAgIC8vXG4gICAgaWYgKHRoaXMub3B0aW9ucy52ZXJpZnlDbGllbnQpIHtcbiAgICAgIGNvbnN0IGluZm8gPSB7XG4gICAgICAgIG9yaWdpbjpcbiAgICAgICAgICByZXEuaGVhZGVyc1tgJHt2ZXJzaW9uID09PSA4ID8gJ3NlYy13ZWJzb2NrZXQtb3JpZ2luJyA6ICdvcmlnaW4nfWBdLFxuICAgICAgICBzZWN1cmU6ICEhKHJlcS5zb2NrZXQuYXV0aG9yaXplZCB8fCByZXEuc29ja2V0LmVuY3J5cHRlZCksXG4gICAgICAgIHJlcVxuICAgICAgfTtcblxuICAgICAgaWYgKHRoaXMub3B0aW9ucy52ZXJpZnlDbGllbnQubGVuZ3RoID09PSAyKSB7XG4gICAgICAgIHRoaXMub3B0aW9ucy52ZXJpZnlDbGllbnQoaW5mbywgKHZlcmlmaWVkLCBjb2RlLCBtZXNzYWdlLCBoZWFkZXJzKSA9PiB7XG4gICAgICAgICAgaWYgKCF2ZXJpZmllZCkge1xuICAgICAgICAgICAgcmV0dXJuIGFib3J0SGFuZHNoYWtlKHNvY2tldCwgY29kZSB8fCA0MDEsIG1lc3NhZ2UsIGhlYWRlcnMpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoaXMuY29tcGxldGVVcGdyYWRlKFxuICAgICAgICAgICAgZXh0ZW5zaW9ucyxcbiAgICAgICAgICAgIGtleSxcbiAgICAgICAgICAgIHByb3RvY29scyxcbiAgICAgICAgICAgIHJlcSxcbiAgICAgICAgICAgIHNvY2tldCxcbiAgICAgICAgICAgIGhlYWQsXG4gICAgICAgICAgICBjYlxuICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmICghdGhpcy5vcHRpb25zLnZlcmlmeUNsaWVudChpbmZvKSkgcmV0dXJuIGFib3J0SGFuZHNoYWtlKHNvY2tldCwgNDAxKTtcbiAgICB9XG5cbiAgICB0aGlzLmNvbXBsZXRlVXBncmFkZShleHRlbnNpb25zLCBrZXksIHByb3RvY29scywgcmVxLCBzb2NrZXQsIGhlYWQsIGNiKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGdyYWRlIHRoZSBjb25uZWN0aW9uIHRvIFdlYlNvY2tldC5cbiAgICpcbiAgICogQHBhcmFtIHtPYmplY3R9IGV4dGVuc2lvbnMgVGhlIGFjY2VwdGVkIGV4dGVuc2lvbnNcbiAgICogQHBhcmFtIHtTdHJpbmd9IGtleSBUaGUgdmFsdWUgb2YgdGhlIGBTZWMtV2ViU29ja2V0LUtleWAgaGVhZGVyXG4gICAqIEBwYXJhbSB7U2V0fSBwcm90b2NvbHMgVGhlIHN1YnByb3RvY29sc1xuICAgKiBAcGFyYW0ge2h0dHAuSW5jb21pbmdNZXNzYWdlfSByZXEgVGhlIHJlcXVlc3Qgb2JqZWN0XG4gICAqIEBwYXJhbSB7RHVwbGV4fSBzb2NrZXQgVGhlIG5ldHdvcmsgc29ja2V0IGJldHdlZW4gdGhlIHNlcnZlciBhbmQgY2xpZW50XG4gICAqIEBwYXJhbSB7QnVmZmVyfSBoZWFkIFRoZSBmaXJzdCBwYWNrZXQgb2YgdGhlIHVwZ3JhZGVkIHN0cmVhbVxuICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBjYiBDYWxsYmFja1xuICAgKiBAdGhyb3dzIHtFcnJvcn0gSWYgY2FsbGVkIG1vcmUgdGhhbiBvbmNlIHdpdGggdGhlIHNhbWUgc29ja2V0XG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBjb21wbGV0ZVVwZ3JhZGUoZXh0ZW5zaW9ucywga2V5LCBwcm90b2NvbHMsIHJlcSwgc29ja2V0LCBoZWFkLCBjYikge1xuICAgIC8vXG4gICAgLy8gRGVzdHJveSB0aGUgc29ja2V0IGlmIHRoZSBjbGllbnQgaGFzIGFscmVhZHkgc2VudCBhIEZJTiBwYWNrZXQuXG4gICAgLy9cbiAgICBpZiAoIXNvY2tldC5yZWFkYWJsZSB8fCAhc29ja2V0LndyaXRhYmxlKSByZXR1cm4gc29ja2V0LmRlc3Ryb3koKTtcblxuICAgIGlmIChzb2NrZXRba1dlYlNvY2tldF0pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ3NlcnZlci5oYW5kbGVVcGdyYWRlKCkgd2FzIGNhbGxlZCBtb3JlIHRoYW4gb25jZSB3aXRoIHRoZSBzYW1lICcgK1xuICAgICAgICAgICdzb2NrZXQsIHBvc3NpYmx5IGR1ZSB0byBhIG1pc2NvbmZpZ3VyYXRpb24nXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9zdGF0ZSA+IFJVTk5JTkcpIHJldHVybiBhYm9ydEhhbmRzaGFrZShzb2NrZXQsIDUwMyk7XG5cbiAgICBjb25zdCBkaWdlc3QgPSBjcmVhdGVIYXNoKCdzaGExJylcbiAgICAgIC51cGRhdGUoa2V5ICsgR1VJRClcbiAgICAgIC5kaWdlc3QoJ2Jhc2U2NCcpO1xuXG4gICAgY29uc3QgaGVhZGVycyA9IFtcbiAgICAgICdIVFRQLzEuMSAxMDEgU3dpdGNoaW5nIFByb3RvY29scycsXG4gICAgICAnVXBncmFkZTogd2Vic29ja2V0JyxcbiAgICAgICdDb25uZWN0aW9uOiBVcGdyYWRlJyxcbiAgICAgIGBTZWMtV2ViU29ja2V0LUFjY2VwdDogJHtkaWdlc3R9YFxuICAgIF07XG5cbiAgICBjb25zdCB3cyA9IG5ldyB0aGlzLm9wdGlvbnMuV2ViU29ja2V0KG51bGwpO1xuXG4gICAgaWYgKHByb3RvY29scy5zaXplKSB7XG4gICAgICAvL1xuICAgICAgLy8gT3B0aW9uYWxseSBjYWxsIGV4dGVybmFsIHByb3RvY29sIHNlbGVjdGlvbiBoYW5kbGVyLlxuICAgICAgLy9cbiAgICAgIGNvbnN0IHByb3RvY29sID0gdGhpcy5vcHRpb25zLmhhbmRsZVByb3RvY29sc1xuICAgICAgICA/IHRoaXMub3B0aW9ucy5oYW5kbGVQcm90b2NvbHMocHJvdG9jb2xzLCByZXEpXG4gICAgICAgIDogcHJvdG9jb2xzLnZhbHVlcygpLm5leHQoKS52YWx1ZTtcblxuICAgICAgaWYgKHByb3RvY29sKSB7XG4gICAgICAgIGhlYWRlcnMucHVzaChgU2VjLVdlYlNvY2tldC1Qcm90b2NvbDogJHtwcm90b2NvbH1gKTtcbiAgICAgICAgd3MuX3Byb3RvY29sID0gcHJvdG9jb2w7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGV4dGVuc2lvbnNbUGVyTWVzc2FnZURlZmxhdGUuZXh0ZW5zaW9uTmFtZV0pIHtcbiAgICAgIGNvbnN0IHBhcmFtcyA9IGV4dGVuc2lvbnNbUGVyTWVzc2FnZURlZmxhdGUuZXh0ZW5zaW9uTmFtZV0ucGFyYW1zO1xuICAgICAgY29uc3QgdmFsdWUgPSBleHRlbnNpb24uZm9ybWF0KHtcbiAgICAgICAgW1Blck1lc3NhZ2VEZWZsYXRlLmV4dGVuc2lvbk5hbWVdOiBbcGFyYW1zXVxuICAgICAgfSk7XG4gICAgICBoZWFkZXJzLnB1c2goYFNlYy1XZWJTb2NrZXQtRXh0ZW5zaW9uczogJHt2YWx1ZX1gKTtcbiAgICAgIHdzLl9leHRlbnNpb25zID0gZXh0ZW5zaW9ucztcbiAgICB9XG5cbiAgICAvL1xuICAgIC8vIEFsbG93IGV4dGVybmFsIG1vZGlmaWNhdGlvbi9pbnNwZWN0aW9uIG9mIGhhbmRzaGFrZSBoZWFkZXJzLlxuICAgIC8vXG4gICAgdGhpcy5lbWl0KCdoZWFkZXJzJywgaGVhZGVycywgcmVxKTtcblxuICAgIHNvY2tldC53cml0ZShoZWFkZXJzLmNvbmNhdCgnXFxyXFxuJykuam9pbignXFxyXFxuJykpO1xuICAgIHNvY2tldC5yZW1vdmVMaXN0ZW5lcignZXJyb3InLCBzb2NrZXRPbkVycm9yKTtcblxuICAgIHdzLnNldFNvY2tldChzb2NrZXQsIGhlYWQsIHtcbiAgICAgIG1heFBheWxvYWQ6IHRoaXMub3B0aW9ucy5tYXhQYXlsb2FkLFxuICAgICAgc2tpcFVURjhWYWxpZGF0aW9uOiB0aGlzLm9wdGlvbnMuc2tpcFVURjhWYWxpZGF0aW9uXG4gICAgfSk7XG5cbiAgICBpZiAodGhpcy5jbGllbnRzKSB7XG4gICAgICB0aGlzLmNsaWVudHMuYWRkKHdzKTtcbiAgICAgIHdzLm9uKCdjbG9zZScsICgpID0+IHtcbiAgICAgICAgdGhpcy5jbGllbnRzLmRlbGV0ZSh3cyk7XG5cbiAgICAgICAgaWYgKHRoaXMuX3Nob3VsZEVtaXRDbG9zZSAmJiAhdGhpcy5jbGllbnRzLnNpemUpIHtcbiAgICAgICAgICBwcm9jZXNzLm5leHRUaWNrKGVtaXRDbG9zZSwgdGhpcyk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGNiKHdzLCByZXEpO1xuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0gV2ViU29ja2V0U2VydmVyO1xuXG4vKipcbiAqIEFkZCBldmVudCBsaXN0ZW5lcnMgb24gYW4gYEV2ZW50RW1pdHRlcmAgdXNpbmcgYSBtYXAgb2YgPGV2ZW50LCBsaXN0ZW5lcj5cbiAqIHBhaXJzLlxuICpcbiAqIEBwYXJhbSB7RXZlbnRFbWl0dGVyfSBzZXJ2ZXIgVGhlIGV2ZW50IGVtaXR0ZXJcbiAqIEBwYXJhbSB7T2JqZWN0LjxTdHJpbmcsIEZ1bmN0aW9uPn0gbWFwIFRoZSBsaXN0ZW5lcnMgdG8gYWRkXG4gKiBAcmV0dXJuIHtGdW5jdGlvbn0gQSBmdW5jdGlvbiB0aGF0IHdpbGwgcmVtb3ZlIHRoZSBhZGRlZCBsaXN0ZW5lcnMgd2hlblxuICogICAgIGNhbGxlZFxuICogQHByaXZhdGVcbiAqL1xuZnVuY3Rpb24gYWRkTGlzdGVuZXJzKHNlcnZlciwgbWFwKSB7XG4gIGZvciAoY29uc3QgZXZlbnQgb2YgT2JqZWN0LmtleXMobWFwKSkgc2VydmVyLm9uKGV2ZW50LCBtYXBbZXZlbnRdKTtcblxuICByZXR1cm4gZnVuY3Rpb24gcmVtb3ZlTGlzdGVuZXJzKCkge1xuICAgIGZvciAoY29uc3QgZXZlbnQgb2YgT2JqZWN0LmtleXMobWFwKSkge1xuICAgICAgc2VydmVyLnJlbW92ZUxpc3RlbmVyKGV2ZW50LCBtYXBbZXZlbnRdKTtcbiAgICB9XG4gIH07XG59XG5cbi8qKlxuICogRW1pdCBhIGAnY2xvc2UnYCBldmVudCBvbiBhbiBgRXZlbnRFbWl0dGVyYC5cbiAqXG4gKiBAcGFyYW0ge0V2ZW50RW1pdHRlcn0gc2VydmVyIFRoZSBldmVudCBlbWl0dGVyXG4gKiBAcHJpdmF0ZVxuICovXG5mdW5jdGlvbiBlbWl0Q2xvc2Uoc2VydmVyKSB7XG4gIHNlcnZlci5fc3RhdGUgPSBDTE9TRUQ7XG4gIHNlcnZlci5lbWl0KCdjbG9zZScpO1xufVxuXG4vKipcbiAqIEhhbmRsZSBzb2NrZXQgZXJyb3JzLlxuICpcbiAqIEBwcml2YXRlXG4gKi9cbmZ1bmN0aW9uIHNvY2tldE9uRXJyb3IoKSB7XG4gIHRoaXMuZGVzdHJveSgpO1xufVxuXG4vKipcbiAqIENsb3NlIHRoZSBjb25uZWN0aW9uIHdoZW4gcHJlY29uZGl0aW9ucyBhcmUgbm90IGZ1bGZpbGxlZC5cbiAqXG4gKiBAcGFyYW0ge0R1cGxleH0gc29ja2V0IFRoZSBzb2NrZXQgb2YgdGhlIHVwZ3JhZGUgcmVxdWVzdFxuICogQHBhcmFtIHtOdW1iZXJ9IGNvZGUgVGhlIEhUVFAgcmVzcG9uc2Ugc3RhdHVzIGNvZGVcbiAqIEBwYXJhbSB7U3RyaW5nfSBbbWVzc2FnZV0gVGhlIEhUVFAgcmVzcG9uc2UgYm9keVxuICogQHBhcmFtIHtPYmplY3R9IFtoZWFkZXJzXSBBZGRpdGlvbmFsIEhUVFAgcmVzcG9uc2UgaGVhZGVyc1xuICogQHByaXZhdGVcbiAqL1xuZnVuY3Rpb24gYWJvcnRIYW5kc2hha2Uoc29ja2V0LCBjb2RlLCBtZXNzYWdlLCBoZWFkZXJzKSB7XG4gIC8vXG4gIC8vIFRoZSBzb2NrZXQgaXMgd3JpdGFibGUgdW5sZXNzIHRoZSB1c2VyIGRlc3Ryb3llZCBvciBlbmRlZCBpdCBiZWZvcmUgY2FsbGluZ1xuICAvLyBgc2VydmVyLmhhbmRsZVVwZ3JhZGUoKWAgb3IgaW4gdGhlIGB2ZXJpZnlDbGllbnRgIGZ1bmN0aW9uLCB3aGljaCBpcyBhIHVzZXJcbiAgLy8gZXJyb3IuIEhhbmRsaW5nIHRoaXMgZG9lcyBub3QgbWFrZSBtdWNoIHNlbnNlIGFzIHRoZSB3b3JzdCB0aGF0IGNhbiBoYXBwZW5cbiAgLy8gaXMgdGhhdCBzb21lIG9mIHRoZSBkYXRhIHdyaXR0ZW4gYnkgdGhlIHVzZXIgbWlnaHQgYmUgZGlzY2FyZGVkIGR1ZSB0byB0aGVcbiAgLy8gY2FsbCB0byBgc29ja2V0LmVuZCgpYCBiZWxvdywgd2hpY2ggdHJpZ2dlcnMgYW4gYCdlcnJvcidgIGV2ZW50IHRoYXQgaW5cbiAgLy8gdHVybiBjYXVzZXMgdGhlIHNvY2tldCB0byBiZSBkZXN0cm95ZWQuXG4gIC8vXG4gIG1lc3NhZ2UgPSBtZXNzYWdlIHx8IGh0dHAuU1RBVFVTX0NPREVTW2NvZGVdO1xuICBoZWFkZXJzID0ge1xuICAgIENvbm5lY3Rpb246ICdjbG9zZScsXG4gICAgJ0NvbnRlbnQtVHlwZSc6ICd0ZXh0L2h0bWwnLFxuICAgICdDb250ZW50LUxlbmd0aCc6IEJ1ZmZlci5ieXRlTGVuZ3RoKG1lc3NhZ2UpLFxuICAgIC4uLmhlYWRlcnNcbiAgfTtcblxuICBzb2NrZXQub25jZSgnZmluaXNoJywgc29ja2V0LmRlc3Ryb3kpO1xuXG4gIHNvY2tldC5lbmQoXG4gICAgYEhUVFAvMS4xICR7Y29kZX0gJHtodHRwLlNUQVRVU19DT0RFU1tjb2RlXX1cXHJcXG5gICtcbiAgICAgIE9iamVjdC5rZXlzKGhlYWRlcnMpXG4gICAgICAgIC5tYXAoKGgpID0+IGAke2h9OiAke2hlYWRlcnNbaF19YClcbiAgICAgICAgLmpvaW4oJ1xcclxcbicpICtcbiAgICAgICdcXHJcXG5cXHJcXG4nICtcbiAgICAgIG1lc3NhZ2VcbiAgKTtcbn1cblxuLyoqXG4gKiBFbWl0IGEgYCd3c0NsaWVudEVycm9yJ2AgZXZlbnQgb24gYSBgV2ViU29ja2V0U2VydmVyYCBpZiB0aGVyZSBpcyBhdCBsZWFzdFxuICogb25lIGxpc3RlbmVyIGZvciBpdCwgb3RoZXJ3aXNlIGNhbGwgYGFib3J0SGFuZHNoYWtlKClgLlxuICpcbiAqIEBwYXJhbSB7V2ViU29ja2V0U2VydmVyfSBzZXJ2ZXIgVGhlIFdlYlNvY2tldCBzZXJ2ZXJcbiAqIEBwYXJhbSB7aHR0cC5JbmNvbWluZ01lc3NhZ2V9IHJlcSBUaGUgcmVxdWVzdCBvYmplY3RcbiAqIEBwYXJhbSB7RHVwbGV4fSBzb2NrZXQgVGhlIHNvY2tldCBvZiB0aGUgdXBncmFkZSByZXF1ZXN0XG4gKiBAcGFyYW0ge051bWJlcn0gY29kZSBUaGUgSFRUUCByZXNwb25zZSBzdGF0dXMgY29kZVxuICogQHBhcmFtIHtTdHJpbmd9IG1lc3NhZ2UgVGhlIEhUVFAgcmVzcG9uc2UgYm9keVxuICogQHByaXZhdGVcbiAqL1xuZnVuY3Rpb24gYWJvcnRIYW5kc2hha2VPckVtaXR3c0NsaWVudEVycm9yKHNlcnZlciwgcmVxLCBzb2NrZXQsIGNvZGUsIG1lc3NhZ2UpIHtcbiAgaWYgKHNlcnZlci5saXN0ZW5lckNvdW50KCd3c0NsaWVudEVycm9yJykpIHtcbiAgICBjb25zdCBlcnIgPSBuZXcgRXJyb3IobWVzc2FnZSk7XG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UoZXJyLCBhYm9ydEhhbmRzaGFrZU9yRW1pdHdzQ2xpZW50RXJyb3IpO1xuXG4gICAgc2VydmVyLmVtaXQoJ3dzQ2xpZW50RXJyb3InLCBlcnIsIHNvY2tldCwgcmVxKTtcbiAgfSBlbHNlIHtcbiAgICBhYm9ydEhhbmRzaGFrZShzb2NrZXQsIGNvZGUsIG1lc3NhZ2UpO1xuICB9XG59XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG5jb25zdCBXZWJTb2NrZXQgPSByZXF1aXJlKCcuL2xpYi93ZWJzb2NrZXQnKTtcblxuV2ViU29ja2V0LmNyZWF0ZVdlYlNvY2tldFN0cmVhbSA9IHJlcXVpcmUoJy4vbGliL3N0cmVhbScpO1xuV2ViU29ja2V0LlNlcnZlciA9IHJlcXVpcmUoJy4vbGliL3dlYnNvY2tldC1zZXJ2ZXInKTtcbldlYlNvY2tldC5SZWNlaXZlciA9IHJlcXVpcmUoJy4vbGliL3JlY2VpdmVyJyk7XG5XZWJTb2NrZXQuU2VuZGVyID0gcmVxdWlyZSgnLi9saWIvc2VuZGVyJyk7XG5cbldlYlNvY2tldC5XZWJTb2NrZXQgPSBXZWJTb2NrZXQ7XG5XZWJTb2NrZXQuV2ViU29ja2V0U2VydmVyID0gV2ViU29ja2V0LlNlcnZlcjtcblxubW9kdWxlLmV4cG9ydHMgPSBXZWJTb2NrZXQ7XG4iLCAiLyogQSB3cmFwcGVyIGZvciB0aGUgXCJxYWFwL3V3cy1iaW5kaW5nc1wiIGxpYnJhcnkuICovXG5cInVzZSBzdHJpY3RcIjtcblxudmFyIF9pbnRlcm9wUmVxdWlyZURlZmF1bHQgPSByZXF1aXJlKFwiQGJhYmVsL3J1bnRpbWUvaGVscGVycy9pbnRlcm9wUmVxdWlyZURlZmF1bHRcIik7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHtcbiAgdmFsdWU6IHRydWVcbn0pO1xuZXhwb3J0c1tcImRlZmF1bHRcIl0gPSBfZGVmYXVsdDtcbnZhciBfd3MgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KHJlcXVpcmUoXCJ3c1wiKSk7XG4vKipcbiAqIGZhY3RvcnkgbWV0aG9kIGZvciBjb21tb24gV2ViU29ja2V0IGluc3RhbmNlXG4gKiBAbWV0aG9kXG4gKiBAcGFyYW0ge1N0cmluZ30gYWRkcmVzcyAtIHVybCB0byBhIHdlYnNvY2tldCBzZXJ2ZXJcbiAqIEBwYXJhbSB7KE9iamVjdCl9IG9wdGlvbnMgLSB3ZWJzb2NrZXQgb3B0aW9uc1xuICogQHJldHVybiB7VW5kZWZpbmVkfVxuICovXG5mdW5jdGlvbiBfZGVmYXVsdChhZGRyZXNzLCBvcHRpb25zKSB7XG4gIHJldHVybiBuZXcgX3dzW1wiZGVmYXVsdFwiXShhZGRyZXNzLCBvcHRpb25zKTtcbn0iLCAiaW1wb3J0IHsgYnl0ZXMsIGV4aXN0cywgbnVtYmVyLCBvdXRwdXQgfSBmcm9tICcuL19hc3NlcnQuanMnO1xuaW1wb3J0IHsgcm90bEJILCByb3RsQkwsIHJvdGxTSCwgcm90bFNMLCBzcGxpdCB9IGZyb20gJy4vX3U2NC5qcyc7XG5pbXBvcnQge1xuICBIYXNoLFxuICB1MzIsXG4gIElucHV0LFxuICB0b0J5dGVzLFxuICB3cmFwQ29uc3RydWN0b3IsXG4gIHdyYXBYT0ZDb25zdHJ1Y3RvcldpdGhPcHRzLFxuICBIYXNoWE9GLFxufSBmcm9tICcuL3V0aWxzLmpzJztcblxuLy8gU0hBMyAoa2VjY2FrKSBpcyBiYXNlZCBvbiBhIG5ldyBkZXNpZ246IGJhc2ljYWxseSwgdGhlIGludGVybmFsIHN0YXRlIGlzIGJpZ2dlciB0aGFuIG91dHB1dCBzaXplLlxuLy8gSXQncyBjYWxsZWQgYSBzcG9uZ2UgZnVuY3Rpb24uXG5cbi8vIFZhcmlvdXMgcGVyIHJvdW5kIGNvbnN0YW50cyBjYWxjdWxhdGlvbnNcbmNvbnN0IFtTSEEzX1BJLCBTSEEzX1JPVEwsIF9TSEEzX0lPVEFdOiBbbnVtYmVyW10sIG51bWJlcltdLCBiaWdpbnRbXV0gPSBbW10sIFtdLCBbXV07XG5jb25zdCBfMG4gPSAvKiBAX19QVVJFX18gKi8gQmlnSW50KDApO1xuY29uc3QgXzFuID0gLyogQF9fUFVSRV9fICovIEJpZ0ludCgxKTtcbmNvbnN0IF8ybiA9IC8qIEBfX1BVUkVfXyAqLyBCaWdJbnQoMik7XG5jb25zdCBfN24gPSAvKiBAX19QVVJFX18gKi8gQmlnSW50KDcpO1xuY29uc3QgXzI1Nm4gPSAvKiBAX19QVVJFX18gKi8gQmlnSW50KDI1Nik7XG5jb25zdCBfMHg3MW4gPSAvKiBAX19QVVJFX18gKi8gQmlnSW50KDB4NzEpO1xuZm9yIChsZXQgcm91bmQgPSAwLCBSID0gXzFuLCB4ID0gMSwgeSA9IDA7IHJvdW5kIDwgMjQ7IHJvdW5kKyspIHtcbiAgLy8gUGlcbiAgW3gsIHldID0gW3ksICgyICogeCArIDMgKiB5KSAlIDVdO1xuICBTSEEzX1BJLnB1c2goMiAqICg1ICogeSArIHgpKTtcbiAgLy8gUm90YXRpb25hbFxuICBTSEEzX1JPVEwucHVzaCgoKChyb3VuZCArIDEpICogKHJvdW5kICsgMikpIC8gMikgJSA2NCk7XG4gIC8vIElvdGFcbiAgbGV0IHQgPSBfMG47XG4gIGZvciAobGV0IGogPSAwOyBqIDwgNzsgaisrKSB7XG4gICAgUiA9ICgoUiA8PCBfMW4pIF4gKChSID4+IF83bikgKiBfMHg3MW4pKSAlIF8yNTZuO1xuICAgIGlmIChSICYgXzJuKSB0IF49IF8xbiA8PCAoKF8xbiA8PCAvKiBAX19QVVJFX18gKi8gQmlnSW50KGopKSAtIF8xbik7XG4gIH1cbiAgX1NIQTNfSU9UQS5wdXNoKHQpO1xufVxuY29uc3QgW1NIQTNfSU9UQV9ILCBTSEEzX0lPVEFfTF0gPSAvKiBAX19QVVJFX18gKi8gc3BsaXQoX1NIQTNfSU9UQSwgdHJ1ZSk7XG5cbi8vIExlZnQgcm90YXRpb24gKHdpdGhvdXQgMCwgMzIsIDY0KVxuY29uc3Qgcm90bEggPSAoaDogbnVtYmVyLCBsOiBudW1iZXIsIHM6IG51bWJlcikgPT4gKHMgPiAzMiA/IHJvdGxCSChoLCBsLCBzKSA6IHJvdGxTSChoLCBsLCBzKSk7XG5jb25zdCByb3RsTCA9IChoOiBudW1iZXIsIGw6IG51bWJlciwgczogbnVtYmVyKSA9PiAocyA+IDMyID8gcm90bEJMKGgsIGwsIHMpIDogcm90bFNMKGgsIGwsIHMpKTtcblxuLy8gU2FtZSBhcyBrZWNjYWtmMTYwMCwgYnV0IGFsbG93cyB0byBza2lwIHNvbWUgcm91bmRzXG5leHBvcnQgZnVuY3Rpb24ga2VjY2FrUChzOiBVaW50MzJBcnJheSwgcm91bmRzOiBudW1iZXIgPSAyNCkge1xuICBjb25zdCBCID0gbmV3IFVpbnQzMkFycmF5KDUgKiAyKTtcbiAgLy8gTk9URTogYWxsIGluZGljZXMgYXJlIHgyIHNpbmNlIHdlIHN0b3JlIHN0YXRlIGFzIHUzMiBpbnN0ZWFkIG9mIHU2NCAoYmlnaW50cyB0byBzbG93IGluIGpzKVxuICBmb3IgKGxldCByb3VuZCA9IDI0IC0gcm91bmRzOyByb3VuZCA8IDI0OyByb3VuZCsrKSB7XG4gICAgLy8gVGhldGEgXHUwM0I4XG4gICAgZm9yIChsZXQgeCA9IDA7IHggPCAxMDsgeCsrKSBCW3hdID0gc1t4XSBeIHNbeCArIDEwXSBeIHNbeCArIDIwXSBeIHNbeCArIDMwXSBeIHNbeCArIDQwXTtcbiAgICBmb3IgKGxldCB4ID0gMDsgeCA8IDEwOyB4ICs9IDIpIHtcbiAgICAgIGNvbnN0IGlkeDEgPSAoeCArIDgpICUgMTA7XG4gICAgICBjb25zdCBpZHgwID0gKHggKyAyKSAlIDEwO1xuICAgICAgY29uc3QgQjAgPSBCW2lkeDBdO1xuICAgICAgY29uc3QgQjEgPSBCW2lkeDAgKyAxXTtcbiAgICAgIGNvbnN0IFRoID0gcm90bEgoQjAsIEIxLCAxKSBeIEJbaWR4MV07XG4gICAgICBjb25zdCBUbCA9IHJvdGxMKEIwLCBCMSwgMSkgXiBCW2lkeDEgKyAxXTtcbiAgICAgIGZvciAobGV0IHkgPSAwOyB5IDwgNTA7IHkgKz0gMTApIHtcbiAgICAgICAgc1t4ICsgeV0gXj0gVGg7XG4gICAgICAgIHNbeCArIHkgKyAxXSBePSBUbDtcbiAgICAgIH1cbiAgICB9XG4gICAgLy8gUmhvIChcdTAzQzEpIGFuZCBQaSAoXHUwM0MwKVxuICAgIGxldCBjdXJIID0gc1syXTtcbiAgICBsZXQgY3VyTCA9IHNbM107XG4gICAgZm9yIChsZXQgdCA9IDA7IHQgPCAyNDsgdCsrKSB7XG4gICAgICBjb25zdCBzaGlmdCA9IFNIQTNfUk9UTFt0XTtcbiAgICAgIGNvbnN0IFRoID0gcm90bEgoY3VySCwgY3VyTCwgc2hpZnQpO1xuICAgICAgY29uc3QgVGwgPSByb3RsTChjdXJILCBjdXJMLCBzaGlmdCk7XG4gICAgICBjb25zdCBQSSA9IFNIQTNfUElbdF07XG4gICAgICBjdXJIID0gc1tQSV07XG4gICAgICBjdXJMID0gc1tQSSArIDFdO1xuICAgICAgc1tQSV0gPSBUaDtcbiAgICAgIHNbUEkgKyAxXSA9IFRsO1xuICAgIH1cbiAgICAvLyBDaGkgKFx1MDNDNylcbiAgICBmb3IgKGxldCB5ID0gMDsgeSA8IDUwOyB5ICs9IDEwKSB7XG4gICAgICBmb3IgKGxldCB4ID0gMDsgeCA8IDEwOyB4KyspIEJbeF0gPSBzW3kgKyB4XTtcbiAgICAgIGZvciAobGV0IHggPSAwOyB4IDwgMTA7IHgrKykgc1t5ICsgeF0gXj0gfkJbKHggKyAyKSAlIDEwXSAmIEJbKHggKyA0KSAlIDEwXTtcbiAgICB9XG4gICAgLy8gSW90YSAoXHUwM0I5KVxuICAgIHNbMF0gXj0gU0hBM19JT1RBX0hbcm91bmRdO1xuICAgIHNbMV0gXj0gU0hBM19JT1RBX0xbcm91bmRdO1xuICB9XG4gIEIuZmlsbCgwKTtcbn1cblxuZXhwb3J0IGNsYXNzIEtlY2NhayBleHRlbmRzIEhhc2g8S2VjY2FrPiBpbXBsZW1lbnRzIEhhc2hYT0Y8S2VjY2FrPiB7XG4gIHByb3RlY3RlZCBzdGF0ZTogVWludDhBcnJheTtcbiAgcHJvdGVjdGVkIHBvcyA9IDA7XG4gIHByb3RlY3RlZCBwb3NPdXQgPSAwO1xuICBwcm90ZWN0ZWQgZmluaXNoZWQgPSBmYWxzZTtcbiAgcHJvdGVjdGVkIHN0YXRlMzI6IFVpbnQzMkFycmF5O1xuICBwcm90ZWN0ZWQgZGVzdHJveWVkID0gZmFsc2U7XG4gIC8vIE5PVEU6IHdlIGFjY2VwdCBhcmd1bWVudHMgaW4gYnl0ZXMgaW5zdGVhZCBvZiBiaXRzIGhlcmUuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBibG9ja0xlbjogbnVtYmVyLFxuICAgIHB1YmxpYyBzdWZmaXg6IG51bWJlcixcbiAgICBwdWJsaWMgb3V0cHV0TGVuOiBudW1iZXIsXG4gICAgcHJvdGVjdGVkIGVuYWJsZVhPRiA9IGZhbHNlLFxuICAgIHByb3RlY3RlZCByb3VuZHM6IG51bWJlciA9IDI0XG4gICkge1xuICAgIHN1cGVyKCk7XG4gICAgLy8gQ2FuIGJlIHBhc3NlZCBmcm9tIHVzZXIgYXMgZGtMZW5cbiAgICBudW1iZXIob3V0cHV0TGVuKTtcbiAgICAvLyAxNjAwID0gNXg1IG1hdHJpeCBvZiA2NGJpdC4gIDE2MDAgYml0cyA9PT0gMjAwIGJ5dGVzXG4gICAgaWYgKDAgPj0gdGhpcy5ibG9ja0xlbiB8fCB0aGlzLmJsb2NrTGVuID49IDIwMClcbiAgICAgIHRocm93IG5ldyBFcnJvcignU2hhMyBzdXBwb3J0cyBvbmx5IGtlY2Nhay1mMTYwMCBmdW5jdGlvbicpO1xuICAgIHRoaXMuc3RhdGUgPSBuZXcgVWludDhBcnJheSgyMDApO1xuICAgIHRoaXMuc3RhdGUzMiA9IHUzMih0aGlzLnN0YXRlKTtcbiAgfVxuICBwcm90ZWN0ZWQga2VjY2FrKCkge1xuICAgIGtlY2Nha1AodGhpcy5zdGF0ZTMyLCB0aGlzLnJvdW5kcyk7XG4gICAgdGhpcy5wb3NPdXQgPSAwO1xuICAgIHRoaXMucG9zID0gMDtcbiAgfVxuICB1cGRhdGUoZGF0YTogSW5wdXQpIHtcbiAgICBleGlzdHModGhpcyk7XG4gICAgY29uc3QgeyBibG9ja0xlbiwgc3RhdGUgfSA9IHRoaXM7XG4gICAgZGF0YSA9IHRvQnl0ZXMoZGF0YSk7XG4gICAgY29uc3QgbGVuID0gZGF0YS5sZW5ndGg7XG4gICAgZm9yIChsZXQgcG9zID0gMDsgcG9zIDwgbGVuOyApIHtcbiAgICAgIGNvbnN0IHRha2UgPSBNYXRoLm1pbihibG9ja0xlbiAtIHRoaXMucG9zLCBsZW4gLSBwb3MpO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0YWtlOyBpKyspIHN0YXRlW3RoaXMucG9zKytdIF49IGRhdGFbcG9zKytdO1xuICAgICAgaWYgKHRoaXMucG9zID09PSBibG9ja0xlbikgdGhpcy5rZWNjYWsoKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cbiAgcHJvdGVjdGVkIGZpbmlzaCgpIHtcbiAgICBpZiAodGhpcy5maW5pc2hlZCkgcmV0dXJuO1xuICAgIHRoaXMuZmluaXNoZWQgPSB0cnVlO1xuICAgIGNvbnN0IHsgc3RhdGUsIHN1ZmZpeCwgcG9zLCBibG9ja0xlbiB9ID0gdGhpcztcbiAgICAvLyBEbyB0aGUgcGFkZGluZ1xuICAgIHN0YXRlW3Bvc10gXj0gc3VmZml4O1xuICAgIGlmICgoc3VmZml4ICYgMHg4MCkgIT09IDAgJiYgcG9zID09PSBibG9ja0xlbiAtIDEpIHRoaXMua2VjY2FrKCk7XG4gICAgc3RhdGVbYmxvY2tMZW4gLSAxXSBePSAweDgwO1xuICAgIHRoaXMua2VjY2FrKCk7XG4gIH1cbiAgcHJvdGVjdGVkIHdyaXRlSW50byhvdXQ6IFVpbnQ4QXJyYXkpOiBVaW50OEFycmF5IHtcbiAgICBleGlzdHModGhpcywgZmFsc2UpO1xuICAgIGJ5dGVzKG91dCk7XG4gICAgdGhpcy5maW5pc2goKTtcbiAgICBjb25zdCBidWZmZXJPdXQgPSB0aGlzLnN0YXRlO1xuICAgIGNvbnN0IHsgYmxvY2tMZW4gfSA9IHRoaXM7XG4gICAgZm9yIChsZXQgcG9zID0gMCwgbGVuID0gb3V0Lmxlbmd0aDsgcG9zIDwgbGVuOyApIHtcbiAgICAgIGlmICh0aGlzLnBvc091dCA+PSBibG9ja0xlbikgdGhpcy5rZWNjYWsoKTtcbiAgICAgIGNvbnN0IHRha2UgPSBNYXRoLm1pbihibG9ja0xlbiAtIHRoaXMucG9zT3V0LCBsZW4gLSBwb3MpO1xuICAgICAgb3V0LnNldChidWZmZXJPdXQuc3ViYXJyYXkodGhpcy5wb3NPdXQsIHRoaXMucG9zT3V0ICsgdGFrZSksIHBvcyk7XG4gICAgICB0aGlzLnBvc091dCArPSB0YWtlO1xuICAgICAgcG9zICs9IHRha2U7XG4gICAgfVxuICAgIHJldHVybiBvdXQ7XG4gIH1cbiAgeG9mSW50byhvdXQ6IFVpbnQ4QXJyYXkpOiBVaW50OEFycmF5IHtcbiAgICAvLyBTaGEzL0tlY2NhayB1c2FnZSB3aXRoIFhPRiBpcyBwcm9iYWJseSBtaXN0YWtlLCBvbmx5IFNIQUtFIGluc3RhbmNlcyBjYW4gZG8gWE9GXG4gICAgaWYgKCF0aGlzLmVuYWJsZVhPRikgdGhyb3cgbmV3IEVycm9yKCdYT0YgaXMgbm90IHBvc3NpYmxlIGZvciB0aGlzIGluc3RhbmNlJyk7XG4gICAgcmV0dXJuIHRoaXMud3JpdGVJbnRvKG91dCk7XG4gIH1cbiAgeG9mKGJ5dGVzOiBudW1iZXIpOiBVaW50OEFycmF5IHtcbiAgICBudW1iZXIoYnl0ZXMpO1xuICAgIHJldHVybiB0aGlzLnhvZkludG8obmV3IFVpbnQ4QXJyYXkoYnl0ZXMpKTtcbiAgfVxuICBkaWdlc3RJbnRvKG91dDogVWludDhBcnJheSkge1xuICAgIG91dHB1dChvdXQsIHRoaXMpO1xuICAgIGlmICh0aGlzLmZpbmlzaGVkKSB0aHJvdyBuZXcgRXJyb3IoJ2RpZ2VzdCgpIHdhcyBhbHJlYWR5IGNhbGxlZCcpO1xuICAgIHRoaXMud3JpdGVJbnRvKG91dCk7XG4gICAgdGhpcy5kZXN0cm95KCk7XG4gICAgcmV0dXJuIG91dDtcbiAgfVxuICBkaWdlc3QoKSB7XG4gICAgcmV0dXJuIHRoaXMuZGlnZXN0SW50byhuZXcgVWludDhBcnJheSh0aGlzLm91dHB1dExlbikpO1xuICB9XG4gIGRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95ZWQgPSB0cnVlO1xuICAgIHRoaXMuc3RhdGUuZmlsbCgwKTtcbiAgfVxuICBfY2xvbmVJbnRvKHRvPzogS2VjY2FrKTogS2VjY2FrIHtcbiAgICBjb25zdCB7IGJsb2NrTGVuLCBzdWZmaXgsIG91dHB1dExlbiwgcm91bmRzLCBlbmFibGVYT0YgfSA9IHRoaXM7XG4gICAgdG8gfHw9IG5ldyBLZWNjYWsoYmxvY2tMZW4sIHN1ZmZpeCwgb3V0cHV0TGVuLCBlbmFibGVYT0YsIHJvdW5kcyk7XG4gICAgdG8uc3RhdGUzMi5zZXQodGhpcy5zdGF0ZTMyKTtcbiAgICB0by5wb3MgPSB0aGlzLnBvcztcbiAgICB0by5wb3NPdXQgPSB0aGlzLnBvc091dDtcbiAgICB0by5maW5pc2hlZCA9IHRoaXMuZmluaXNoZWQ7XG4gICAgdG8ucm91bmRzID0gcm91bmRzO1xuICAgIC8vIFN1ZmZpeCBjYW4gY2hhbmdlIGluIGNTSEFLRVxuICAgIHRvLnN1ZmZpeCA9IHN1ZmZpeDtcbiAgICB0by5vdXRwdXRMZW4gPSBvdXRwdXRMZW47XG4gICAgdG8uZW5hYmxlWE9GID0gZW5hYmxlWE9GO1xuICAgIHRvLmRlc3Ryb3llZCA9IHRoaXMuZGVzdHJveWVkO1xuICAgIHJldHVybiB0bztcbiAgfVxufVxuXG5jb25zdCBnZW4gPSAoc3VmZml4OiBudW1iZXIsIGJsb2NrTGVuOiBudW1iZXIsIG91dHB1dExlbjogbnVtYmVyKSA9PlxuICB3cmFwQ29uc3RydWN0b3IoKCkgPT4gbmV3IEtlY2NhayhibG9ja0xlbiwgc3VmZml4LCBvdXRwdXRMZW4pKTtcblxuZXhwb3J0IGNvbnN0IHNoYTNfMjI0ID0gLyogQF9fUFVSRV9fICovIGdlbigweDA2LCAxNDQsIDIyNCAvIDgpO1xuLyoqXG4gKiBTSEEzLTI1NiBoYXNoIGZ1bmN0aW9uXG4gKiBAcGFyYW0gbWVzc2FnZSAtIHRoYXQgd291bGQgYmUgaGFzaGVkXG4gKi9cbmV4cG9ydCBjb25zdCBzaGEzXzI1NiA9IC8qIEBfX1BVUkVfXyAqLyBnZW4oMHgwNiwgMTM2LCAyNTYgLyA4KTtcbmV4cG9ydCBjb25zdCBzaGEzXzM4NCA9IC8qIEBfX1BVUkVfXyAqLyBnZW4oMHgwNiwgMTA0LCAzODQgLyA4KTtcbmV4cG9ydCBjb25zdCBzaGEzXzUxMiA9IC8qIEBfX1BVUkVfXyAqLyBnZW4oMHgwNiwgNzIsIDUxMiAvIDgpO1xuZXhwb3J0IGNvbnN0IGtlY2Nha18yMjQgPSAvKiBAX19QVVJFX18gKi8gZ2VuKDB4MDEsIDE0NCwgMjI0IC8gOCk7XG4vKipcbiAqIGtlY2Nhay0yNTYgaGFzaCBmdW5jdGlvbi4gRGlmZmVyZW50IGZyb20gU0hBMy0yNTYuXG4gKiBAcGFyYW0gbWVzc2FnZSAtIHRoYXQgd291bGQgYmUgaGFzaGVkXG4gKi9cbmV4cG9ydCBjb25zdCBrZWNjYWtfMjU2ID0gLyogQF9fUFVSRV9fICovIGdlbigweDAxLCAxMzYsIDI1NiAvIDgpO1xuZXhwb3J0IGNvbnN0IGtlY2Nha18zODQgPSAvKiBAX19QVVJFX18gKi8gZ2VuKDB4MDEsIDEwNCwgMzg0IC8gOCk7XG5leHBvcnQgY29uc3Qga2VjY2FrXzUxMiA9IC8qIEBfX1BVUkVfXyAqLyBnZW4oMHgwMSwgNzIsIDUxMiAvIDgpO1xuXG5leHBvcnQgdHlwZSBTaGFrZU9wdHMgPSB7IGRrTGVuPzogbnVtYmVyIH07XG5cbmNvbnN0IGdlblNoYWtlID0gKHN1ZmZpeDogbnVtYmVyLCBibG9ja0xlbjogbnVtYmVyLCBvdXRwdXRMZW46IG51bWJlcikgPT5cbiAgd3JhcFhPRkNvbnN0cnVjdG9yV2l0aE9wdHM8SGFzaFhPRjxLZWNjYWs+LCBTaGFrZU9wdHM+KFxuICAgIChvcHRzOiBTaGFrZU9wdHMgPSB7fSkgPT5cbiAgICAgIG5ldyBLZWNjYWsoYmxvY2tMZW4sIHN1ZmZpeCwgb3B0cy5ka0xlbiA9PT0gdW5kZWZpbmVkID8gb3V0cHV0TGVuIDogb3B0cy5ka0xlbiwgdHJ1ZSlcbiAgKTtcblxuZXhwb3J0IGNvbnN0IHNoYWtlMTI4ID0gLyogQF9fUFVSRV9fICovIGdlblNoYWtlKDB4MWYsIDE2OCwgMTI4IC8gOCk7XG5leHBvcnQgY29uc3Qgc2hha2UyNTYgPSAvKiBAX19QVVJFX18gKi8gZ2VuU2hha2UoMHgxZiwgMTM2LCAyNTYgLyA4KTtcbiIsICIvKiEgbm9ibGUtY3VydmVzIC0gTUlUIExpY2Vuc2UgKGMpIDIwMjIgUGF1bCBNaWxsZXIgKHBhdWxtaWxsci5jb20pICovXG4vLyBTaG9ydCBXZWllcnN0cmFzcyBjdXJ2ZS4gVGhlIGZvcm11bGEgaXM6IHlcdTAwQjIgPSB4XHUwMEIzICsgYXggKyBiXG5pbXBvcnQgKiBhcyBtb2QgZnJvbSAnLi9tb2R1bGFyLmpzJztcbmltcG9ydCAqIGFzIHV0IGZyb20gJy4vdXRpbHMuanMnO1xuaW1wb3J0IHsgQ0hhc2gsIEhleCwgUHJpdktleSwgZW5zdXJlQnl0ZXMgfSBmcm9tICcuL3V0aWxzLmpzJztcbmltcG9ydCB7IEdyb3VwLCBHcm91cENvbnN0cnVjdG9yLCB3TkFGLCBCYXNpY0N1cnZlLCB2YWxpZGF0ZUJhc2ljLCBBZmZpbmVQb2ludCB9IGZyb20gJy4vY3VydmUuanMnO1xuXG5leHBvcnQgdHlwZSB7IEFmZmluZVBvaW50IH07XG50eXBlIEhtYWNGblN5bmMgPSAoa2V5OiBVaW50OEFycmF5LCAuLi5tZXNzYWdlczogVWludDhBcnJheVtdKSA9PiBVaW50OEFycmF5O1xudHlwZSBFbmRvbW9ycGhpc21PcHRzID0ge1xuICBiZXRhOiBiaWdpbnQ7XG4gIHNwbGl0U2NhbGFyOiAoazogYmlnaW50KSA9PiB7IGsxbmVnOiBib29sZWFuOyBrMTogYmlnaW50OyBrMm5lZzogYm9vbGVhbjsgazI6IGJpZ2ludCB9O1xufTtcbmV4cG9ydCB0eXBlIEJhc2ljV0N1cnZlPFQ+ID0gQmFzaWNDdXJ2ZTxUPiAmIHtcbiAgLy8gUGFyYW1zOiBhLCBiXG4gIGE6IFQ7XG4gIGI6IFQ7XG5cbiAgLy8gT3B0aW9uYWwgcGFyYW1zXG4gIGFsbG93ZWRQcml2YXRlS2V5TGVuZ3Rocz86IHJlYWRvbmx5IG51bWJlcltdOyAvLyBmb3IgUDUyMVxuICB3cmFwUHJpdmF0ZUtleT86IGJvb2xlYW47IC8vIGJsczEyLTM4MSByZXF1aXJlcyBtb2QobikgaW5zdGVhZCBvZiByZWplY3Rpbmcga2V5cyA+PSBuXG4gIGVuZG8/OiBFbmRvbW9ycGhpc21PcHRzOyAvLyBFbmRvbW9ycGhpc20gb3B0aW9ucyBmb3IgS29ibGl0eiBjdXJ2ZXNcbiAgLy8gV2hlbiBhIGNvZmFjdG9yICE9IDEsIHRoZXJlIGNhbiBiZSBhbiBlZmZlY3RpdmUgbWV0aG9kcyB0bzpcbiAgLy8gMS4gRGV0ZXJtaW5lIHdoZXRoZXIgYSBwb2ludCBpcyB0b3JzaW9uLWZyZWVcbiAgaXNUb3JzaW9uRnJlZT86IChjOiBQcm9qQ29uc3RydWN0b3I8VD4sIHBvaW50OiBQcm9qUG9pbnRUeXBlPFQ+KSA9PiBib29sZWFuO1xuICAvLyAyLiBDbGVhciB0b3JzaW9uIGNvbXBvbmVudFxuICBjbGVhckNvZmFjdG9yPzogKGM6IFByb2pDb25zdHJ1Y3RvcjxUPiwgcG9pbnQ6IFByb2pQb2ludFR5cGU8VD4pID0+IFByb2pQb2ludFR5cGU8VD47XG59O1xuXG50eXBlIEVudHJvcHkgPSBIZXggfCB0cnVlO1xuZXhwb3J0IHR5cGUgU2lnbk9wdHMgPSB7IGxvd1M/OiBib29sZWFuOyBleHRyYUVudHJvcHk/OiBFbnRyb3B5OyBwcmVoYXNoPzogYm9vbGVhbiB9O1xuZXhwb3J0IHR5cGUgVmVyT3B0cyA9IHsgbG93Uz86IGJvb2xlYW47IHByZWhhc2g/OiBib29sZWFuIH07XG5cbi8qKlxuICogIyMjIERlc2lnbiByYXRpb25hbGUgZm9yIHR5cGVzXG4gKlxuICogKiBJbnRlcmFjdGlvbiBiZXR3ZWVuIGNsYXNzZXMgZnJvbSBkaWZmZXJlbnQgY3VydmVzIHNob3VsZCBmYWlsOlxuICogICBgazI1Ni5Qb2ludC5CQVNFLmFkZChwMjU2LlBvaW50LkJBU0UpYFxuICogKiBGb3IgdGhpcyBwdXJwb3NlIHdlIHdhbnQgdG8gdXNlIGBpbnN0YW5jZW9mYCBvcGVyYXRvciwgd2hpY2ggaXMgZmFzdCBhbmQgd29ya3MgZHVyaW5nIHJ1bnRpbWVcbiAqICogRGlmZmVyZW50IGNhbGxzIG9mIGBjdXJ2ZSgpYCB3b3VsZCByZXR1cm4gZGlmZmVyZW50IGNsYXNzZXMgLVxuICogICBgY3VydmUocGFyYW1zKSAhPT0gY3VydmUocGFyYW1zKWA6IGlmIHNvbWVib2R5IGRlY2lkZWQgdG8gbW9ua2V5LXBhdGNoIHRoZWlyIGN1cnZlLFxuICogICBpdCB3b24ndCBhZmZlY3Qgb3RoZXJzXG4gKlxuICogVHlwZVNjcmlwdCBjYW4ndCBpbmZlciB0eXBlcyBmb3IgY2xhc3NlcyBjcmVhdGVkIGluc2lkZSBhIGZ1bmN0aW9uLiBDbGFzc2VzIGlzIG9uZSBpbnN0YW5jZSBvZiBub21pbmF0aXZlIHR5cGVzIGluIFR5cGVTY3JpcHQgYW5kIGludGVyZmFjZXMgb25seSBjaGVjayBmb3Igc2hhcGUsIHNvIGl0J3MgaGFyZCB0byBjcmVhdGUgdW5pcXVlIHR5cGUgZm9yIGV2ZXJ5IGZ1bmN0aW9uIGNhbGwuXG4gKlxuICogV2UgY2FuIHVzZSBnZW5lcmljIHR5cGVzIHZpYSBzb21lIHBhcmFtLCBsaWtlIGN1cnZlIG9wdHMsIGJ1dCB0aGF0IHdvdWxkOlxuICogICAgIDEuIEVuYWJsZSBpbnRlcmFjdGlvbiBiZXR3ZWVuIGBjdXJ2ZShwYXJhbXMpYCBhbmQgYGN1cnZlKHBhcmFtcylgIChjdXJ2ZXMgb2Ygc2FtZSBwYXJhbXMpXG4gKiAgICAgd2hpY2ggaXMgaGFyZCB0byBkZWJ1Zy5cbiAqICAgICAyLiBQYXJhbXMgY2FuIGJlIGdlbmVyaWMgYW5kIHdlIGNhbid0IGVuZm9yY2UgdGhlbSB0byBiZSBjb25zdGFudCB2YWx1ZTpcbiAqICAgICBpZiBzb21lYm9keSBjcmVhdGVzIGN1cnZlIGZyb20gbm9uLWNvbnN0YW50IHBhcmFtcyxcbiAqICAgICBpdCB3b3VsZCBiZSBhbGxvd2VkIHRvIGludGVyYWN0IHdpdGggb3RoZXIgY3VydmVzIHdpdGggbm9uLWNvbnN0YW50IHBhcmFtc1xuICpcbiAqIFRPRE86IGh0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy9kb2NzL2hhbmRib29rL3JlbGVhc2Utbm90ZXMvdHlwZXNjcmlwdC0yLTcuaHRtbCN1bmlxdWUtc3ltYm9sXG4gKi9cblxuLy8gSW5zdGFuY2UgZm9yIDNkIFhZWiBwb2ludHNcbmV4cG9ydCBpbnRlcmZhY2UgUHJvalBvaW50VHlwZTxUPiBleHRlbmRzIEdyb3VwPFByb2pQb2ludFR5cGU8VD4+IHtcbiAgcmVhZG9ubHkgcHg6IFQ7XG4gIHJlYWRvbmx5IHB5OiBUO1xuICByZWFkb25seSBwejogVDtcbiAgZ2V0IHgoKTogVDtcbiAgZ2V0IHkoKTogVDtcbiAgbXVsdGlwbHkoc2NhbGFyOiBiaWdpbnQpOiBQcm9qUG9pbnRUeXBlPFQ+O1xuICB0b0FmZmluZShpej86IFQpOiBBZmZpbmVQb2ludDxUPjtcbiAgaXNUb3JzaW9uRnJlZSgpOiBib29sZWFuO1xuICBjbGVhckNvZmFjdG9yKCk6IFByb2pQb2ludFR5cGU8VD47XG4gIGFzc2VydFZhbGlkaXR5KCk6IHZvaWQ7XG4gIGhhc0V2ZW5ZKCk6IGJvb2xlYW47XG4gIHRvUmF3Qnl0ZXMoaXNDb21wcmVzc2VkPzogYm9vbGVhbik6IFVpbnQ4QXJyYXk7XG4gIHRvSGV4KGlzQ29tcHJlc3NlZD86IGJvb2xlYW4pOiBzdHJpbmc7XG5cbiAgbXVsdGlwbHlVbnNhZmUoc2NhbGFyOiBiaWdpbnQpOiBQcm9qUG9pbnRUeXBlPFQ+O1xuICBtdWx0aXBseUFuZEFkZFVuc2FmZShROiBQcm9qUG9pbnRUeXBlPFQ+LCBhOiBiaWdpbnQsIGI6IGJpZ2ludCk6IFByb2pQb2ludFR5cGU8VD4gfCB1bmRlZmluZWQ7XG4gIF9zZXRXaW5kb3dTaXplKHdpbmRvd1NpemU6IG51bWJlcik6IHZvaWQ7XG59XG4vLyBTdGF0aWMgbWV0aG9kcyBmb3IgM2QgWFlaIHBvaW50c1xuZXhwb3J0IGludGVyZmFjZSBQcm9qQ29uc3RydWN0b3I8VD4gZXh0ZW5kcyBHcm91cENvbnN0cnVjdG9yPFByb2pQb2ludFR5cGU8VD4+IHtcbiAgbmV3ICh4OiBULCB5OiBULCB6OiBUKTogUHJvalBvaW50VHlwZTxUPjtcbiAgZnJvbUFmZmluZShwOiBBZmZpbmVQb2ludDxUPik6IFByb2pQb2ludFR5cGU8VD47XG4gIGZyb21IZXgoaGV4OiBIZXgpOiBQcm9qUG9pbnRUeXBlPFQ+O1xuICBmcm9tUHJpdmF0ZUtleShwcml2YXRlS2V5OiBQcml2S2V5KTogUHJvalBvaW50VHlwZTxUPjtcbiAgbm9ybWFsaXplWihwb2ludHM6IFByb2pQb2ludFR5cGU8VD5bXSk6IFByb2pQb2ludFR5cGU8VD5bXTtcbn1cblxuZXhwb3J0IHR5cGUgQ3VydmVQb2ludHNUeXBlPFQ+ID0gQmFzaWNXQ3VydmU8VD4gJiB7XG4gIC8vIEJ5dGVzXG4gIGZyb21CeXRlcz86IChieXRlczogVWludDhBcnJheSkgPT4gQWZmaW5lUG9pbnQ8VD47XG4gIHRvQnl0ZXM/OiAoYzogUHJvakNvbnN0cnVjdG9yPFQ+LCBwb2ludDogUHJvalBvaW50VHlwZTxUPiwgaXNDb21wcmVzc2VkOiBib29sZWFuKSA9PiBVaW50OEFycmF5O1xufTtcblxuZnVuY3Rpb24gdmFsaWRhdGVQb2ludE9wdHM8VD4oY3VydmU6IEN1cnZlUG9pbnRzVHlwZTxUPikge1xuICBjb25zdCBvcHRzID0gdmFsaWRhdGVCYXNpYyhjdXJ2ZSk7XG4gIHV0LnZhbGlkYXRlT2JqZWN0KFxuICAgIG9wdHMsXG4gICAge1xuICAgICAgYTogJ2ZpZWxkJyxcbiAgICAgIGI6ICdmaWVsZCcsXG4gICAgfSxcbiAgICB7XG4gICAgICBhbGxvd2VkUHJpdmF0ZUtleUxlbmd0aHM6ICdhcnJheScsXG4gICAgICB3cmFwUHJpdmF0ZUtleTogJ2Jvb2xlYW4nLFxuICAgICAgaXNUb3JzaW9uRnJlZTogJ2Z1bmN0aW9uJyxcbiAgICAgIGNsZWFyQ29mYWN0b3I6ICdmdW5jdGlvbicsXG4gICAgICBhbGxvd0luZmluaXR5UG9pbnQ6ICdib29sZWFuJyxcbiAgICAgIGZyb21CeXRlczogJ2Z1bmN0aW9uJyxcbiAgICAgIHRvQnl0ZXM6ICdmdW5jdGlvbicsXG4gICAgfVxuICApO1xuICBjb25zdCB7IGVuZG8sIEZwLCBhIH0gPSBvcHRzO1xuICBpZiAoZW5kbykge1xuICAgIGlmICghRnAuZXFsKGEsIEZwLlpFUk8pKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0VuZG9tb3JwaGlzbSBjYW4gb25seSBiZSBkZWZpbmVkIGZvciBLb2JsaXR6IGN1cnZlcyB0aGF0IGhhdmUgYT0wJyk7XG4gICAgfVxuICAgIGlmIChcbiAgICAgIHR5cGVvZiBlbmRvICE9PSAnb2JqZWN0JyB8fFxuICAgICAgdHlwZW9mIGVuZG8uYmV0YSAhPT0gJ2JpZ2ludCcgfHxcbiAgICAgIHR5cGVvZiBlbmRvLnNwbGl0U2NhbGFyICE9PSAnZnVuY3Rpb24nXG4gICAgKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0V4cGVjdGVkIGVuZG9tb3JwaGlzbSB3aXRoIGJldGE6IGJpZ2ludCBhbmQgc3BsaXRTY2FsYXI6IGZ1bmN0aW9uJyk7XG4gICAgfVxuICB9XG4gIHJldHVybiBPYmplY3QuZnJlZXplKHsgLi4ub3B0cyB9IGFzIGNvbnN0KTtcbn1cblxuZXhwb3J0IHR5cGUgQ3VydmVQb2ludHNSZXM8VD4gPSB7XG4gIFByb2plY3RpdmVQb2ludDogUHJvakNvbnN0cnVjdG9yPFQ+O1xuICBub3JtUHJpdmF0ZUtleVRvU2NhbGFyOiAoa2V5OiBQcml2S2V5KSA9PiBiaWdpbnQ7XG4gIHdlaWVyc3RyYXNzRXF1YXRpb246ICh4OiBUKSA9PiBUO1xuICBpc1dpdGhpbkN1cnZlT3JkZXI6IChudW06IGJpZ2ludCkgPT4gYm9vbGVhbjtcbn07XG5cbi8vIEFTTi4xIERFUiBlbmNvZGluZyB1dGlsaXRpZXNcbmNvbnN0IHsgYnl0ZXNUb051bWJlckJFOiBiMm4sIGhleFRvQnl0ZXM6IGgyYiB9ID0gdXQ7XG5leHBvcnQgY29uc3QgREVSID0ge1xuICAvLyBhc24uMSBERVIgZW5jb2RpbmcgdXRpbHNcbiAgRXJyOiBjbGFzcyBERVJFcnIgZXh0ZW5kcyBFcnJvciB7XG4gICAgY29uc3RydWN0b3IobSA9ICcnKSB7XG4gICAgICBzdXBlcihtKTtcbiAgICB9XG4gIH0sXG4gIF9wYXJzZUludChkYXRhOiBVaW50OEFycmF5KTogeyBkOiBiaWdpbnQ7IGw6IFVpbnQ4QXJyYXkgfSB7XG4gICAgY29uc3QgeyBFcnI6IEUgfSA9IERFUjtcbiAgICBpZiAoZGF0YS5sZW5ndGggPCAyIHx8IGRhdGFbMF0gIT09IDB4MDIpIHRocm93IG5ldyBFKCdJbnZhbGlkIHNpZ25hdHVyZSBpbnRlZ2VyIHRhZycpO1xuICAgIGNvbnN0IGxlbiA9IGRhdGFbMV07XG4gICAgY29uc3QgcmVzID0gZGF0YS5zdWJhcnJheSgyLCBsZW4gKyAyKTtcbiAgICBpZiAoIWxlbiB8fCByZXMubGVuZ3RoICE9PSBsZW4pIHRocm93IG5ldyBFKCdJbnZhbGlkIHNpZ25hdHVyZSBpbnRlZ2VyOiB3cm9uZyBsZW5ndGgnKTtcbiAgICAvLyBodHRwczovL2NyeXB0by5zdGFja2V4Y2hhbmdlLmNvbS9hLzU3NzM0IExlZnRtb3N0IGJpdCBvZiBmaXJzdCBieXRlIGlzICduZWdhdGl2ZScgZmxhZyxcbiAgICAvLyBzaW5jZSB3ZSBhbHdheXMgdXNlIHBvc2l0aXZlIGludGVnZXJzIGhlcmUuIEl0IG11c3QgYWx3YXlzIGJlIGVtcHR5OlxuICAgIC8vIC0gYWRkIHplcm8gYnl0ZSBpZiBleGlzdHNcbiAgICAvLyAtIGlmIG5leHQgYnl0ZSBkb2Vzbid0IGhhdmUgYSBmbGFnLCBsZWFkaW5nIHplcm8gaXMgbm90IGFsbG93ZWQgKG1pbmltYWwgZW5jb2RpbmcpXG4gICAgaWYgKHJlc1swXSAmIDBiMTAwMDAwMDApIHRocm93IG5ldyBFKCdJbnZhbGlkIHNpZ25hdHVyZSBpbnRlZ2VyOiBuZWdhdGl2ZScpO1xuICAgIGlmIChyZXNbMF0gPT09IDB4MDAgJiYgIShyZXNbMV0gJiAwYjEwMDAwMDAwKSlcbiAgICAgIHRocm93IG5ldyBFKCdJbnZhbGlkIHNpZ25hdHVyZSBpbnRlZ2VyOiB1bm5lY2Vzc2FyeSBsZWFkaW5nIHplcm8nKTtcbiAgICByZXR1cm4geyBkOiBiMm4ocmVzKSwgbDogZGF0YS5zdWJhcnJheShsZW4gKyAyKSB9OyAvLyBkIGlzIGRhdGEsIGwgaXMgbGVmdFxuICB9LFxuICB0b1NpZyhoZXg6IHN0cmluZyB8IFVpbnQ4QXJyYXkpOiB7IHI6IGJpZ2ludDsgczogYmlnaW50IH0ge1xuICAgIC8vIHBhcnNlIERFUiBzaWduYXR1cmVcbiAgICBjb25zdCB7IEVycjogRSB9ID0gREVSO1xuICAgIGNvbnN0IGRhdGEgPSB0eXBlb2YgaGV4ID09PSAnc3RyaW5nJyA/IGgyYihoZXgpIDogaGV4O1xuICAgIGlmICghKGRhdGEgaW5zdGFuY2VvZiBVaW50OEFycmF5KSkgdGhyb3cgbmV3IEVycm9yKCd1aThhIGV4cGVjdGVkJyk7XG4gICAgbGV0IGwgPSBkYXRhLmxlbmd0aDtcbiAgICBpZiAobCA8IDIgfHwgZGF0YVswXSAhPSAweDMwKSB0aHJvdyBuZXcgRSgnSW52YWxpZCBzaWduYXR1cmUgdGFnJyk7XG4gICAgaWYgKGRhdGFbMV0gIT09IGwgLSAyKSB0aHJvdyBuZXcgRSgnSW52YWxpZCBzaWduYXR1cmU6IGluY29ycmVjdCBsZW5ndGgnKTtcbiAgICBjb25zdCB7IGQ6IHIsIGw6IHNCeXRlcyB9ID0gREVSLl9wYXJzZUludChkYXRhLnN1YmFycmF5KDIpKTtcbiAgICBjb25zdCB7IGQ6IHMsIGw6IHJCeXRlc0xlZnQgfSA9IERFUi5fcGFyc2VJbnQoc0J5dGVzKTtcbiAgICBpZiAockJ5dGVzTGVmdC5sZW5ndGgpIHRocm93IG5ldyBFKCdJbnZhbGlkIHNpZ25hdHVyZTogbGVmdCBieXRlcyBhZnRlciBwYXJzaW5nJyk7XG4gICAgcmV0dXJuIHsgciwgcyB9O1xuICB9LFxuICBoZXhGcm9tU2lnKHNpZzogeyByOiBiaWdpbnQ7IHM6IGJpZ2ludCB9KTogc3RyaW5nIHtcbiAgICAvLyBBZGQgbGVhZGluZyB6ZXJvIGlmIGZpcnN0IGJ5dGUgaGFzIG5lZ2F0aXZlIGJpdCBlbmFibGVkLiBNb3JlIGRldGFpbHMgaW4gJ19wYXJzZUludCdcbiAgICBjb25zdCBzbGljZSA9IChzOiBzdHJpbmcpOiBzdHJpbmcgPT4gKE51bWJlci5wYXJzZUludChzWzBdLCAxNikgJiAwYjEwMDAgPyAnMDAnICsgcyA6IHMpO1xuICAgIGNvbnN0IGggPSAobnVtOiBudW1iZXIgfCBiaWdpbnQpID0+IHtcbiAgICAgIGNvbnN0IGhleCA9IG51bS50b1N0cmluZygxNik7XG4gICAgICByZXR1cm4gaGV4Lmxlbmd0aCAmIDEgPyBgMCR7aGV4fWAgOiBoZXg7XG4gICAgfTtcbiAgICBjb25zdCBzID0gc2xpY2UoaChzaWcucykpO1xuICAgIGNvbnN0IHIgPSBzbGljZShoKHNpZy5yKSk7XG4gICAgY29uc3Qgc2hsID0gcy5sZW5ndGggLyAyO1xuICAgIGNvbnN0IHJobCA9IHIubGVuZ3RoIC8gMjtcbiAgICBjb25zdCBzbCA9IGgoc2hsKTtcbiAgICBjb25zdCBybCA9IGgocmhsKTtcbiAgICByZXR1cm4gYDMwJHtoKHJobCArIHNobCArIDQpfTAyJHtybH0ke3J9MDIke3NsfSR7c31gO1xuICB9LFxufTtcblxuLy8gQmUgZnJpZW5kbHkgdG8gYmFkIEVDTUFTY3JpcHQgcGFyc2VycyBieSBub3QgdXNpbmcgYmlnaW50IGxpdGVyYWxzXG4vLyBwcmV0dGllci1pZ25vcmVcbmNvbnN0IF8wbiA9IEJpZ0ludCgwKSwgXzFuID0gQmlnSW50KDEpLCBfMm4gPSBCaWdJbnQoMiksIF8zbiA9IEJpZ0ludCgzKSwgXzRuID0gQmlnSW50KDQpO1xuXG5leHBvcnQgZnVuY3Rpb24gd2VpZXJzdHJhc3NQb2ludHM8VD4ob3B0czogQ3VydmVQb2ludHNUeXBlPFQ+KSB7XG4gIGNvbnN0IENVUlZFID0gdmFsaWRhdGVQb2ludE9wdHMob3B0cyk7XG4gIGNvbnN0IHsgRnAgfSA9IENVUlZFOyAvLyBBbGwgY3VydmVzIGhhcyBzYW1lIGZpZWxkIC8gZ3JvdXAgbGVuZ3RoIGFzIGZvciBub3csIGJ1dCB0aGV5IGNhbiBkaWZmZXJcblxuICBjb25zdCB0b0J5dGVzID1cbiAgICBDVVJWRS50b0J5dGVzIHx8XG4gICAgKChfYzogUHJvakNvbnN0cnVjdG9yPFQ+LCBwb2ludDogUHJvalBvaW50VHlwZTxUPiwgX2lzQ29tcHJlc3NlZDogYm9vbGVhbikgPT4ge1xuICAgICAgY29uc3QgYSA9IHBvaW50LnRvQWZmaW5lKCk7XG4gICAgICByZXR1cm4gdXQuY29uY2F0Qnl0ZXMoVWludDhBcnJheS5mcm9tKFsweDA0XSksIEZwLnRvQnl0ZXMoYS54KSwgRnAudG9CeXRlcyhhLnkpKTtcbiAgICB9KTtcbiAgY29uc3QgZnJvbUJ5dGVzID1cbiAgICBDVVJWRS5mcm9tQnl0ZXMgfHxcbiAgICAoKGJ5dGVzOiBVaW50OEFycmF5KSA9PiB7XG4gICAgICAvLyBjb25zdCBoZWFkID0gYnl0ZXNbMF07XG4gICAgICBjb25zdCB0YWlsID0gYnl0ZXMuc3ViYXJyYXkoMSk7XG4gICAgICAvLyBpZiAoaGVhZCAhPT0gMHgwNCkgdGhyb3cgbmV3IEVycm9yKCdPbmx5IG5vbi1jb21wcmVzc2VkIGVuY29kaW5nIGlzIHN1cHBvcnRlZCcpO1xuICAgICAgY29uc3QgeCA9IEZwLmZyb21CeXRlcyh0YWlsLnN1YmFycmF5KDAsIEZwLkJZVEVTKSk7XG4gICAgICBjb25zdCB5ID0gRnAuZnJvbUJ5dGVzKHRhaWwuc3ViYXJyYXkoRnAuQllURVMsIDIgKiBGcC5CWVRFUykpO1xuICAgICAgcmV0dXJuIHsgeCwgeSB9O1xuICAgIH0pO1xuXG4gIC8qKlxuICAgKiB5XHUwMEIyID0geFx1MDBCMyArIGF4ICsgYjogU2hvcnQgd2VpZXJzdHJhc3MgY3VydmUgZm9ybXVsYVxuICAgKiBAcmV0dXJucyB5XHUwMEIyXG4gICAqL1xuICBmdW5jdGlvbiB3ZWllcnN0cmFzc0VxdWF0aW9uKHg6IFQpOiBUIHtcbiAgICBjb25zdCB7IGEsIGIgfSA9IENVUlZFO1xuICAgIGNvbnN0IHgyID0gRnAuc3FyKHgpOyAvLyB4ICogeFxuICAgIGNvbnN0IHgzID0gRnAubXVsKHgyLCB4KTsgLy8geDIgKiB4XG4gICAgcmV0dXJuIEZwLmFkZChGcC5hZGQoeDMsIEZwLm11bCh4LCBhKSksIGIpOyAvLyB4MyArIGEgKiB4ICsgYlxuICB9XG4gIC8vIFZhbGlkYXRlIHdoZXRoZXIgdGhlIHBhc3NlZCBjdXJ2ZSBwYXJhbXMgYXJlIHZhbGlkLlxuICAvLyBXZSBjaGVjayBpZiBjdXJ2ZSBlcXVhdGlvbiB3b3JrcyBmb3IgZ2VuZXJhdG9yIHBvaW50LlxuICAvLyBgYXNzZXJ0VmFsaWRpdHkoKWAgd29uJ3Qgd29yazogYGlzVG9yc2lvbkZyZWUoKWAgaXMgbm90IGF2YWlsYWJsZSBhdCB0aGlzIHBvaW50IGluIGJsczEyLTM4MS5cbiAgLy8gUHJvamVjdGl2ZVBvaW50IGNsYXNzIGhhcyBub3QgYmVlbiBpbml0aWFsaXplZCB5ZXQuXG4gIGlmICghRnAuZXFsKEZwLnNxcihDVVJWRS5HeSksIHdlaWVyc3RyYXNzRXF1YXRpb24oQ1VSVkUuR3gpKSlcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ2JhZCBnZW5lcmF0b3IgcG9pbnQ6IGVxdWF0aW9uIGxlZnQgIT0gcmlnaHQnKTtcblxuICAvLyBWYWxpZCBncm91cCBlbGVtZW50cyByZXNpZGUgaW4gcmFuZ2UgMS4ubi0xXG4gIGZ1bmN0aW9uIGlzV2l0aGluQ3VydmVPcmRlcihudW06IGJpZ2ludCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0eXBlb2YgbnVtID09PSAnYmlnaW50JyAmJiBfMG4gPCBudW0gJiYgbnVtIDwgQ1VSVkUubjtcbiAgfVxuICBmdW5jdGlvbiBhc3NlcnRHRShudW06IGJpZ2ludCkge1xuICAgIGlmICghaXNXaXRoaW5DdXJ2ZU9yZGVyKG51bSkpIHRocm93IG5ldyBFcnJvcignRXhwZWN0ZWQgdmFsaWQgYmlnaW50OiAwIDwgYmlnaW50IDwgY3VydmUubicpO1xuICB9XG4gIC8vIFZhbGlkYXRlcyBpZiBwcml2IGtleSBpcyB2YWxpZCBhbmQgY29udmVydHMgaXQgdG8gYmlnaW50LlxuICAvLyBTdXBwb3J0cyBvcHRpb25zIGFsbG93ZWRQcml2YXRlS2V5TGVuZ3RocyBhbmQgd3JhcFByaXZhdGVLZXkuXG4gIGZ1bmN0aW9uIG5vcm1Qcml2YXRlS2V5VG9TY2FsYXIoa2V5OiBQcml2S2V5KTogYmlnaW50IHtcbiAgICBjb25zdCB7IGFsbG93ZWRQcml2YXRlS2V5TGVuZ3RoczogbGVuZ3RocywgbkJ5dGVMZW5ndGgsIHdyYXBQcml2YXRlS2V5LCBuIH0gPSBDVVJWRTtcbiAgICBpZiAobGVuZ3RocyAmJiB0eXBlb2Yga2V5ICE9PSAnYmlnaW50Jykge1xuICAgICAgaWYgKGtleSBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpIGtleSA9IHV0LmJ5dGVzVG9IZXgoa2V5KTtcbiAgICAgIC8vIE5vcm1hbGl6ZSB0byBoZXggc3RyaW5nLCBwYWQuIEUuZy4gUDUyMSB3b3VsZCBub3JtIDEzMC0xMzIgY2hhciBoZXggdG8gMTMyLWNoYXIgYnl0ZXNcbiAgICAgIGlmICh0eXBlb2Yga2V5ICE9PSAnc3RyaW5nJyB8fCAhbGVuZ3Rocy5pbmNsdWRlcyhrZXkubGVuZ3RoKSkgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGtleScpO1xuICAgICAga2V5ID0ga2V5LnBhZFN0YXJ0KG5CeXRlTGVuZ3RoICogMiwgJzAnKTtcbiAgICB9XG4gICAgbGV0IG51bTogYmlnaW50O1xuICAgIHRyeSB7XG4gICAgICBudW0gPVxuICAgICAgICB0eXBlb2Yga2V5ID09PSAnYmlnaW50J1xuICAgICAgICAgID8ga2V5XG4gICAgICAgICAgOiB1dC5ieXRlc1RvTnVtYmVyQkUoZW5zdXJlQnl0ZXMoJ3ByaXZhdGUga2V5Jywga2V5LCBuQnl0ZUxlbmd0aCkpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYHByaXZhdGUga2V5IG11c3QgYmUgJHtuQnl0ZUxlbmd0aH0gYnl0ZXMsIGhleCBvciBiaWdpbnQsIG5vdCAke3R5cGVvZiBrZXl9YCk7XG4gICAgfVxuICAgIGlmICh3cmFwUHJpdmF0ZUtleSkgbnVtID0gbW9kLm1vZChudW0sIG4pOyAvLyBkaXNhYmxlZCBieSBkZWZhdWx0LCBlbmFibGVkIGZvciBCTFNcbiAgICBhc3NlcnRHRShudW0pOyAvLyBudW0gaW4gcmFuZ2UgWzEuLk4tMV1cbiAgICByZXR1cm4gbnVtO1xuICB9XG5cbiAgY29uc3QgcG9pbnRQcmVjb21wdXRlcyA9IG5ldyBNYXA8UG9pbnQsIFBvaW50W10+KCk7XG4gIGZ1bmN0aW9uIGFzc2VydFByalBvaW50KG90aGVyOiB1bmtub3duKSB7XG4gICAgaWYgKCEob3RoZXIgaW5zdGFuY2VvZiBQb2ludCkpIHRocm93IG5ldyBFcnJvcignUHJvamVjdGl2ZVBvaW50IGV4cGVjdGVkJyk7XG4gIH1cbiAgLyoqXG4gICAqIFByb2plY3RpdmUgUG9pbnQgd29ya3MgaW4gM2QgLyBwcm9qZWN0aXZlIChob21vZ2VuZW91cykgY29vcmRpbmF0ZXM6ICh4LCB5LCB6KSBcdTIyMEIgKHg9eC96LCB5PXkveilcbiAgICogRGVmYXVsdCBQb2ludCB3b3JrcyBpbiAyZCAvIGFmZmluZSBjb29yZGluYXRlczogKHgsIHkpXG4gICAqIFdlJ3JlIGRvaW5nIGNhbGN1bGF0aW9ucyBpbiBwcm9qZWN0aXZlLCBiZWNhdXNlIGl0cyBvcGVyYXRpb25zIGRvbid0IHJlcXVpcmUgY29zdGx5IGludmVyc2lvbi5cbiAgICovXG4gIGNsYXNzIFBvaW50IGltcGxlbWVudHMgUHJvalBvaW50VHlwZTxUPiB7XG4gICAgc3RhdGljIHJlYWRvbmx5IEJBU0UgPSBuZXcgUG9pbnQoQ1VSVkUuR3gsIENVUlZFLkd5LCBGcC5PTkUpO1xuICAgIHN0YXRpYyByZWFkb25seSBaRVJPID0gbmV3IFBvaW50KEZwLlpFUk8sIEZwLk9ORSwgRnAuWkVSTyk7XG5cbiAgICBjb25zdHJ1Y3RvcihyZWFkb25seSBweDogVCwgcmVhZG9ubHkgcHk6IFQsIHJlYWRvbmx5IHB6OiBUKSB7XG4gICAgICBpZiAocHggPT0gbnVsbCB8fCAhRnAuaXNWYWxpZChweCkpIHRocm93IG5ldyBFcnJvcigneCByZXF1aXJlZCcpO1xuICAgICAgaWYgKHB5ID09IG51bGwgfHwgIUZwLmlzVmFsaWQocHkpKSB0aHJvdyBuZXcgRXJyb3IoJ3kgcmVxdWlyZWQnKTtcbiAgICAgIGlmIChweiA9PSBudWxsIHx8ICFGcC5pc1ZhbGlkKHB6KSkgdGhyb3cgbmV3IEVycm9yKCd6IHJlcXVpcmVkJyk7XG4gICAgfVxuXG4gICAgLy8gRG9lcyBub3QgdmFsaWRhdGUgaWYgdGhlIHBvaW50IGlzIG9uLWN1cnZlLlxuICAgIC8vIFVzZSBmcm9tSGV4IGluc3RlYWQsIG9yIGNhbGwgYXNzZXJ0VmFsaWRpdHkoKSBsYXRlci5cbiAgICBzdGF0aWMgZnJvbUFmZmluZShwOiBBZmZpbmVQb2ludDxUPik6IFBvaW50IHtcbiAgICAgIGNvbnN0IHsgeCwgeSB9ID0gcCB8fCB7fTtcbiAgICAgIGlmICghcCB8fCAhRnAuaXNWYWxpZCh4KSB8fCAhRnAuaXNWYWxpZCh5KSkgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIGFmZmluZSBwb2ludCcpO1xuICAgICAgaWYgKHAgaW5zdGFuY2VvZiBQb2ludCkgdGhyb3cgbmV3IEVycm9yKCdwcm9qZWN0aXZlIHBvaW50IG5vdCBhbGxvd2VkJyk7XG4gICAgICBjb25zdCBpczAgPSAoaTogVCkgPT4gRnAuZXFsKGksIEZwLlpFUk8pO1xuICAgICAgLy8gZnJvbUFmZmluZSh4OjAsIHk6MCkgd291bGQgcHJvZHVjZSAoeDowLCB5OjAsIHo6MSksIGJ1dCB3ZSBuZWVkICh4OjAsIHk6MSwgejowKVxuICAgICAgaWYgKGlzMCh4KSAmJiBpczAoeSkpIHJldHVybiBQb2ludC5aRVJPO1xuICAgICAgcmV0dXJuIG5ldyBQb2ludCh4LCB5LCBGcC5PTkUpO1xuICAgIH1cblxuICAgIGdldCB4KCk6IFQge1xuICAgICAgcmV0dXJuIHRoaXMudG9BZmZpbmUoKS54O1xuICAgIH1cbiAgICBnZXQgeSgpOiBUIHtcbiAgICAgIHJldHVybiB0aGlzLnRvQWZmaW5lKCkueTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUYWtlcyBhIGJ1bmNoIG9mIFByb2plY3RpdmUgUG9pbnRzIGJ1dCBleGVjdXRlcyBvbmx5IG9uZVxuICAgICAqIGludmVyc2lvbiBvbiBhbGwgb2YgdGhlbS4gSW52ZXJzaW9uIGlzIHZlcnkgc2xvdyBvcGVyYXRpb24sXG4gICAgICogc28gdGhpcyBpbXByb3ZlcyBwZXJmb3JtYW5jZSBtYXNzaXZlbHkuXG4gICAgICogT3B0aW1pemF0aW9uOiBjb252ZXJ0cyBhIGxpc3Qgb2YgcHJvamVjdGl2ZSBwb2ludHMgdG8gYSBsaXN0IG9mIGlkZW50aWNhbCBwb2ludHMgd2l0aCBaPTEuXG4gICAgICovXG4gICAgc3RhdGljIG5vcm1hbGl6ZVoocG9pbnRzOiBQb2ludFtdKTogUG9pbnRbXSB7XG4gICAgICBjb25zdCB0b0ludiA9IEZwLmludmVydEJhdGNoKHBvaW50cy5tYXAoKHApID0+IHAucHopKTtcbiAgICAgIHJldHVybiBwb2ludHMubWFwKChwLCBpKSA9PiBwLnRvQWZmaW5lKHRvSW52W2ldKSkubWFwKFBvaW50LmZyb21BZmZpbmUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvbnZlcnRzIGhhc2ggc3RyaW5nIG9yIFVpbnQ4QXJyYXkgdG8gUG9pbnQuXG4gICAgICogQHBhcmFtIGhleCBzaG9ydC9sb25nIEVDRFNBIGhleFxuICAgICAqL1xuICAgIHN0YXRpYyBmcm9tSGV4KGhleDogSGV4KTogUG9pbnQge1xuICAgICAgY29uc3QgUCA9IFBvaW50LmZyb21BZmZpbmUoZnJvbUJ5dGVzKGVuc3VyZUJ5dGVzKCdwb2ludEhleCcsIGhleCkpKTtcbiAgICAgIFAuYXNzZXJ0VmFsaWRpdHkoKTtcbiAgICAgIHJldHVybiBQO1xuICAgIH1cblxuICAgIC8vIE11bHRpcGxpZXMgZ2VuZXJhdG9yIHBvaW50IGJ5IHByaXZhdGVLZXkuXG4gICAgc3RhdGljIGZyb21Qcml2YXRlS2V5KHByaXZhdGVLZXk6IFByaXZLZXkpIHtcbiAgICAgIHJldHVybiBQb2ludC5CQVNFLm11bHRpcGx5KG5vcm1Qcml2YXRlS2V5VG9TY2FsYXIocHJpdmF0ZUtleSkpO1xuICAgIH1cblxuICAgIC8vIFdlIGNhbGN1bGF0ZSBwcmVjb21wdXRlcyBmb3IgZWxsaXB0aWMgY3VydmUgcG9pbnQgbXVsdGlwbGljYXRpb25cbiAgICAvLyB1c2luZyB3aW5kb3dlZCBtZXRob2QuIFRoaXMgc3BlY2lmaWVzIHdpbmRvdyBzaXplIGFuZFxuICAgIC8vIHN0b3JlcyBwcmVjb21wdXRlZCB2YWx1ZXMuIFVzdWFsbHkgb25seSBiYXNlIHBvaW50IHdvdWxkIGJlIHByZWNvbXB1dGVkLlxuICAgIF9XSU5ET1dfU0laRT86IG51bWJlcjtcblxuICAgIC8vIFwiUHJpdmF0ZSBtZXRob2RcIiwgZG9uJ3QgdXNlIGl0IGRpcmVjdGx5XG4gICAgX3NldFdpbmRvd1NpemUod2luZG93U2l6ZTogbnVtYmVyKSB7XG4gICAgICB0aGlzLl9XSU5ET1dfU0laRSA9IHdpbmRvd1NpemU7XG4gICAgICBwb2ludFByZWNvbXB1dGVzLmRlbGV0ZSh0aGlzKTtcbiAgICB9XG5cbiAgICAvLyBBIHBvaW50IG9uIGN1cnZlIGlzIHZhbGlkIGlmIGl0IGNvbmZvcm1zIHRvIGVxdWF0aW9uLlxuICAgIGFzc2VydFZhbGlkaXR5KCk6IHZvaWQge1xuICAgICAgaWYgKHRoaXMuaXMwKCkpIHtcbiAgICAgICAgLy8gKDAsIDEsIDApIGFrYSBaRVJPIGlzIGludmFsaWQgaW4gbW9zdCBjb250ZXh0cy5cbiAgICAgICAgLy8gSW4gQkxTLCBaRVJPIGNhbiBiZSBzZXJpYWxpemVkLCBzbyB3ZSBhbGxvdyBpdC5cbiAgICAgICAgLy8gKDAsIDAsIDApIGlzIHdyb25nIHJlcHJlc2VudGF0aW9uIG9mIFpFUk8gYW5kIGlzIGFsd2F5cyBpbnZhbGlkLlxuICAgICAgICBpZiAoQ1VSVkUuYWxsb3dJbmZpbml0eVBvaW50ICYmICFGcC5pczAodGhpcy5weSkpIHJldHVybjtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdiYWQgcG9pbnQ6IFpFUk8nKTtcbiAgICAgIH1cbiAgICAgIC8vIFNvbWUgM3JkLXBhcnR5IHRlc3QgdmVjdG9ycyByZXF1aXJlIGRpZmZlcmVudCB3b3JkaW5nIGJldHdlZW4gaGVyZSAmIGBmcm9tQ29tcHJlc3NlZEhleGBcbiAgICAgIGNvbnN0IHsgeCwgeSB9ID0gdGhpcy50b0FmZmluZSgpO1xuICAgICAgLy8gQ2hlY2sgaWYgeCwgeSBhcmUgdmFsaWQgZmllbGQgZWxlbWVudHNcbiAgICAgIGlmICghRnAuaXNWYWxpZCh4KSB8fCAhRnAuaXNWYWxpZCh5KSkgdGhyb3cgbmV3IEVycm9yKCdiYWQgcG9pbnQ6IHggb3IgeSBub3QgRkUnKTtcbiAgICAgIGNvbnN0IGxlZnQgPSBGcC5zcXIoeSk7IC8vIHlcdTAwQjJcbiAgICAgIGNvbnN0IHJpZ2h0ID0gd2VpZXJzdHJhc3NFcXVhdGlvbih4KTsgLy8geFx1MDBCMyArIGF4ICsgYlxuICAgICAgaWYgKCFGcC5lcWwobGVmdCwgcmlnaHQpKSB0aHJvdyBuZXcgRXJyb3IoJ2JhZCBwb2ludDogZXF1YXRpb24gbGVmdCAhPSByaWdodCcpO1xuICAgICAgaWYgKCF0aGlzLmlzVG9yc2lvbkZyZWUoKSkgdGhyb3cgbmV3IEVycm9yKCdiYWQgcG9pbnQ6IG5vdCBpbiBwcmltZS1vcmRlciBzdWJncm91cCcpO1xuICAgIH1cbiAgICBoYXNFdmVuWSgpOiBib29sZWFuIHtcbiAgICAgIGNvbnN0IHsgeSB9ID0gdGhpcy50b0FmZmluZSgpO1xuICAgICAgaWYgKEZwLmlzT2RkKSByZXR1cm4gIUZwLmlzT2RkKHkpO1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiRmllbGQgZG9lc24ndCBzdXBwb3J0IGlzT2RkXCIpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvbXBhcmUgb25lIHBvaW50IHRvIGFub3RoZXIuXG4gICAgICovXG4gICAgZXF1YWxzKG90aGVyOiBQb2ludCk6IGJvb2xlYW4ge1xuICAgICAgYXNzZXJ0UHJqUG9pbnQob3RoZXIpO1xuICAgICAgY29uc3QgeyBweDogWDEsIHB5OiBZMSwgcHo6IFoxIH0gPSB0aGlzO1xuICAgICAgY29uc3QgeyBweDogWDIsIHB5OiBZMiwgcHo6IFoyIH0gPSBvdGhlcjtcbiAgICAgIGNvbnN0IFUxID0gRnAuZXFsKEZwLm11bChYMSwgWjIpLCBGcC5tdWwoWDIsIFoxKSk7XG4gICAgICBjb25zdCBVMiA9IEZwLmVxbChGcC5tdWwoWTEsIFoyKSwgRnAubXVsKFkyLCBaMSkpO1xuICAgICAgcmV0dXJuIFUxICYmIFUyO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEZsaXBzIHBvaW50IHRvIG9uZSBjb3JyZXNwb25kaW5nIHRvICh4LCAteSkgaW4gQWZmaW5lIGNvb3JkaW5hdGVzLlxuICAgICAqL1xuICAgIG5lZ2F0ZSgpOiBQb2ludCB7XG4gICAgICByZXR1cm4gbmV3IFBvaW50KHRoaXMucHgsIEZwLm5lZyh0aGlzLnB5KSwgdGhpcy5weik7XG4gICAgfVxuXG4gICAgLy8gUmVuZXMtQ29zdGVsbG8tQmF0aW5hIGV4Y2VwdGlvbi1mcmVlIGRvdWJsaW5nIGZvcm11bGEuXG4gICAgLy8gVGhlcmUgaXMgMzAlIGZhc3RlciBKYWNvYmlhbiBmb3JtdWxhLCBidXQgaXQgaXMgbm90IGNvbXBsZXRlLlxuICAgIC8vIGh0dHBzOi8vZXByaW50LmlhY3Iub3JnLzIwMTUvMTA2MCwgYWxnb3JpdGhtIDNcbiAgICAvLyBDb3N0OiA4TSArIDNTICsgMyphICsgMipiMyArIDE1YWRkLlxuICAgIGRvdWJsZSgpIHtcbiAgICAgIGNvbnN0IHsgYSwgYiB9ID0gQ1VSVkU7XG4gICAgICBjb25zdCBiMyA9IEZwLm11bChiLCBfM24pO1xuICAgICAgY29uc3QgeyBweDogWDEsIHB5OiBZMSwgcHo6IFoxIH0gPSB0aGlzO1xuICAgICAgbGV0IFgzID0gRnAuWkVSTywgWTMgPSBGcC5aRVJPLCBaMyA9IEZwLlpFUk87IC8vIHByZXR0aWVyLWlnbm9yZVxuICAgICAgbGV0IHQwID0gRnAubXVsKFgxLCBYMSk7IC8vIHN0ZXAgMVxuICAgICAgbGV0IHQxID0gRnAubXVsKFkxLCBZMSk7XG4gICAgICBsZXQgdDIgPSBGcC5tdWwoWjEsIFoxKTtcbiAgICAgIGxldCB0MyA9IEZwLm11bChYMSwgWTEpO1xuICAgICAgdDMgPSBGcC5hZGQodDMsIHQzKTsgLy8gc3RlcCA1XG4gICAgICBaMyA9IEZwLm11bChYMSwgWjEpO1xuICAgICAgWjMgPSBGcC5hZGQoWjMsIFozKTtcbiAgICAgIFgzID0gRnAubXVsKGEsIFozKTtcbiAgICAgIFkzID0gRnAubXVsKGIzLCB0Mik7XG4gICAgICBZMyA9IEZwLmFkZChYMywgWTMpOyAvLyBzdGVwIDEwXG4gICAgICBYMyA9IEZwLnN1Yih0MSwgWTMpO1xuICAgICAgWTMgPSBGcC5hZGQodDEsIFkzKTtcbiAgICAgIFkzID0gRnAubXVsKFgzLCBZMyk7XG4gICAgICBYMyA9IEZwLm11bCh0MywgWDMpO1xuICAgICAgWjMgPSBGcC5tdWwoYjMsIFozKTsgLy8gc3RlcCAxNVxuICAgICAgdDIgPSBGcC5tdWwoYSwgdDIpO1xuICAgICAgdDMgPSBGcC5zdWIodDAsIHQyKTtcbiAgICAgIHQzID0gRnAubXVsKGEsIHQzKTtcbiAgICAgIHQzID0gRnAuYWRkKHQzLCBaMyk7XG4gICAgICBaMyA9IEZwLmFkZCh0MCwgdDApOyAvLyBzdGVwIDIwXG4gICAgICB0MCA9IEZwLmFkZChaMywgdDApO1xuICAgICAgdDAgPSBGcC5hZGQodDAsIHQyKTtcbiAgICAgIHQwID0gRnAubXVsKHQwLCB0Myk7XG4gICAgICBZMyA9IEZwLmFkZChZMywgdDApO1xuICAgICAgdDIgPSBGcC5tdWwoWTEsIFoxKTsgLy8gc3RlcCAyNVxuICAgICAgdDIgPSBGcC5hZGQodDIsIHQyKTtcbiAgICAgIHQwID0gRnAubXVsKHQyLCB0Myk7XG4gICAgICBYMyA9IEZwLnN1YihYMywgdDApO1xuICAgICAgWjMgPSBGcC5tdWwodDIsIHQxKTtcbiAgICAgIFozID0gRnAuYWRkKFozLCBaMyk7IC8vIHN0ZXAgMzBcbiAgICAgIFozID0gRnAuYWRkKFozLCBaMyk7XG4gICAgICByZXR1cm4gbmV3IFBvaW50KFgzLCBZMywgWjMpO1xuICAgIH1cblxuICAgIC8vIFJlbmVzLUNvc3RlbGxvLUJhdGluYSBleGNlcHRpb24tZnJlZSBhZGRpdGlvbiBmb3JtdWxhLlxuICAgIC8vIFRoZXJlIGlzIDMwJSBmYXN0ZXIgSmFjb2JpYW4gZm9ybXVsYSwgYnV0IGl0IGlzIG5vdCBjb21wbGV0ZS5cbiAgICAvLyBodHRwczovL2VwcmludC5pYWNyLm9yZy8yMDE1LzEwNjAsIGFsZ29yaXRobSAxXG4gICAgLy8gQ29zdDogMTJNICsgMFMgKyAzKmEgKyAzKmIzICsgMjNhZGQuXG4gICAgYWRkKG90aGVyOiBQb2ludCk6IFBvaW50IHtcbiAgICAgIGFzc2VydFByalBvaW50KG90aGVyKTtcbiAgICAgIGNvbnN0IHsgcHg6IFgxLCBweTogWTEsIHB6OiBaMSB9ID0gdGhpcztcbiAgICAgIGNvbnN0IHsgcHg6IFgyLCBweTogWTIsIHB6OiBaMiB9ID0gb3RoZXI7XG4gICAgICBsZXQgWDMgPSBGcC5aRVJPLCBZMyA9IEZwLlpFUk8sIFozID0gRnAuWkVSTzsgLy8gcHJldHRpZXItaWdub3JlXG4gICAgICBjb25zdCBhID0gQ1VSVkUuYTtcbiAgICAgIGNvbnN0IGIzID0gRnAubXVsKENVUlZFLmIsIF8zbik7XG4gICAgICBsZXQgdDAgPSBGcC5tdWwoWDEsIFgyKTsgLy8gc3RlcCAxXG4gICAgICBsZXQgdDEgPSBGcC5tdWwoWTEsIFkyKTtcbiAgICAgIGxldCB0MiA9IEZwLm11bChaMSwgWjIpO1xuICAgICAgbGV0IHQzID0gRnAuYWRkKFgxLCBZMSk7XG4gICAgICBsZXQgdDQgPSBGcC5hZGQoWDIsIFkyKTsgLy8gc3RlcCA1XG4gICAgICB0MyA9IEZwLm11bCh0MywgdDQpO1xuICAgICAgdDQgPSBGcC5hZGQodDAsIHQxKTtcbiAgICAgIHQzID0gRnAuc3ViKHQzLCB0NCk7XG4gICAgICB0NCA9IEZwLmFkZChYMSwgWjEpO1xuICAgICAgbGV0IHQ1ID0gRnAuYWRkKFgyLCBaMik7IC8vIHN0ZXAgMTBcbiAgICAgIHQ0ID0gRnAubXVsKHQ0LCB0NSk7XG4gICAgICB0NSA9IEZwLmFkZCh0MCwgdDIpO1xuICAgICAgdDQgPSBGcC5zdWIodDQsIHQ1KTtcbiAgICAgIHQ1ID0gRnAuYWRkKFkxLCBaMSk7XG4gICAgICBYMyA9IEZwLmFkZChZMiwgWjIpOyAvLyBzdGVwIDE1XG4gICAgICB0NSA9IEZwLm11bCh0NSwgWDMpO1xuICAgICAgWDMgPSBGcC5hZGQodDEsIHQyKTtcbiAgICAgIHQ1ID0gRnAuc3ViKHQ1LCBYMyk7XG4gICAgICBaMyA9IEZwLm11bChhLCB0NCk7XG4gICAgICBYMyA9IEZwLm11bChiMywgdDIpOyAvLyBzdGVwIDIwXG4gICAgICBaMyA9IEZwLmFkZChYMywgWjMpO1xuICAgICAgWDMgPSBGcC5zdWIodDEsIFozKTtcbiAgICAgIFozID0gRnAuYWRkKHQxLCBaMyk7XG4gICAgICBZMyA9IEZwLm11bChYMywgWjMpO1xuICAgICAgdDEgPSBGcC5hZGQodDAsIHQwKTsgLy8gc3RlcCAyNVxuICAgICAgdDEgPSBGcC5hZGQodDEsIHQwKTtcbiAgICAgIHQyID0gRnAubXVsKGEsIHQyKTtcbiAgICAgIHQ0ID0gRnAubXVsKGIzLCB0NCk7XG4gICAgICB0MSA9IEZwLmFkZCh0MSwgdDIpO1xuICAgICAgdDIgPSBGcC5zdWIodDAsIHQyKTsgLy8gc3RlcCAzMFxuICAgICAgdDIgPSBGcC5tdWwoYSwgdDIpO1xuICAgICAgdDQgPSBGcC5hZGQodDQsIHQyKTtcbiAgICAgIHQwID0gRnAubXVsKHQxLCB0NCk7XG4gICAgICBZMyA9IEZwLmFkZChZMywgdDApO1xuICAgICAgdDAgPSBGcC5tdWwodDUsIHQ0KTsgLy8gc3RlcCAzNVxuICAgICAgWDMgPSBGcC5tdWwodDMsIFgzKTtcbiAgICAgIFgzID0gRnAuc3ViKFgzLCB0MCk7XG4gICAgICB0MCA9IEZwLm11bCh0MywgdDEpO1xuICAgICAgWjMgPSBGcC5tdWwodDUsIFozKTtcbiAgICAgIFozID0gRnAuYWRkKFozLCB0MCk7IC8vIHN0ZXAgNDBcbiAgICAgIHJldHVybiBuZXcgUG9pbnQoWDMsIFkzLCBaMyk7XG4gICAgfVxuXG4gICAgc3VidHJhY3Qob3RoZXI6IFBvaW50KSB7XG4gICAgICByZXR1cm4gdGhpcy5hZGQob3RoZXIubmVnYXRlKCkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgaXMwKCkge1xuICAgICAgcmV0dXJuIHRoaXMuZXF1YWxzKFBvaW50LlpFUk8pO1xuICAgIH1cbiAgICBwcml2YXRlIHdOQUYobjogYmlnaW50KTogeyBwOiBQb2ludDsgZjogUG9pbnQgfSB7XG4gICAgICByZXR1cm4gd25hZi53TkFGQ2FjaGVkKHRoaXMsIHBvaW50UHJlY29tcHV0ZXMsIG4sIChjb21wOiBQb2ludFtdKSA9PiB7XG4gICAgICAgIGNvbnN0IHRvSW52ID0gRnAuaW52ZXJ0QmF0Y2goY29tcC5tYXAoKHApID0+IHAucHopKTtcbiAgICAgICAgcmV0dXJuIGNvbXAubWFwKChwLCBpKSA9PiBwLnRvQWZmaW5lKHRvSW52W2ldKSkubWFwKFBvaW50LmZyb21BZmZpbmUpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogTm9uLWNvbnN0YW50LXRpbWUgbXVsdGlwbGljYXRpb24uIFVzZXMgZG91YmxlLWFuZC1hZGQgYWxnb3JpdGhtLlxuICAgICAqIEl0J3MgZmFzdGVyLCBidXQgc2hvdWxkIG9ubHkgYmUgdXNlZCB3aGVuIHlvdSBkb24ndCBjYXJlIGFib3V0XG4gICAgICogYW4gZXhwb3NlZCBwcml2YXRlIGtleSBlLmcuIHNpZyB2ZXJpZmljYXRpb24sIHdoaWNoIHdvcmtzIG92ZXIgKnB1YmxpYyoga2V5cy5cbiAgICAgKi9cbiAgICBtdWx0aXBseVVuc2FmZShuOiBiaWdpbnQpOiBQb2ludCB7XG4gICAgICBjb25zdCBJID0gUG9pbnQuWkVSTztcbiAgICAgIGlmIChuID09PSBfMG4pIHJldHVybiBJO1xuICAgICAgYXNzZXJ0R0Uobik7IC8vIFdpbGwgdGhyb3cgb24gMFxuICAgICAgaWYgKG4gPT09IF8xbikgcmV0dXJuIHRoaXM7XG4gICAgICBjb25zdCB7IGVuZG8gfSA9IENVUlZFO1xuICAgICAgaWYgKCFlbmRvKSByZXR1cm4gd25hZi51bnNhZmVMYWRkZXIodGhpcywgbik7XG5cbiAgICAgIC8vIEFwcGx5IGVuZG9tb3JwaGlzbVxuICAgICAgbGV0IHsgazFuZWcsIGsxLCBrMm5lZywgazIgfSA9IGVuZG8uc3BsaXRTY2FsYXIobik7XG4gICAgICBsZXQgazFwID0gSTtcbiAgICAgIGxldCBrMnAgPSBJO1xuICAgICAgbGV0IGQ6IFBvaW50ID0gdGhpcztcbiAgICAgIHdoaWxlIChrMSA+IF8wbiB8fCBrMiA+IF8wbikge1xuICAgICAgICBpZiAoazEgJiBfMW4pIGsxcCA9IGsxcC5hZGQoZCk7XG4gICAgICAgIGlmIChrMiAmIF8xbikgazJwID0gazJwLmFkZChkKTtcbiAgICAgICAgZCA9IGQuZG91YmxlKCk7XG4gICAgICAgIGsxID4+PSBfMW47XG4gICAgICAgIGsyID4+PSBfMW47XG4gICAgICB9XG4gICAgICBpZiAoazFuZWcpIGsxcCA9IGsxcC5uZWdhdGUoKTtcbiAgICAgIGlmIChrMm5lZykgazJwID0gazJwLm5lZ2F0ZSgpO1xuICAgICAgazJwID0gbmV3IFBvaW50KEZwLm11bChrMnAucHgsIGVuZG8uYmV0YSksIGsycC5weSwgazJwLnB6KTtcbiAgICAgIHJldHVybiBrMXAuYWRkKGsycCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29uc3RhbnQgdGltZSBtdWx0aXBsaWNhdGlvbi5cbiAgICAgKiBVc2VzIHdOQUYgbWV0aG9kLiBXaW5kb3dlZCBtZXRob2QgbWF5IGJlIDEwJSBmYXN0ZXIsXG4gICAgICogYnV0IHRha2VzIDJ4IGxvbmdlciB0byBnZW5lcmF0ZSBhbmQgY29uc3VtZXMgMnggbWVtb3J5LlxuICAgICAqIFVzZXMgcHJlY29tcHV0ZXMgd2hlbiBhdmFpbGFibGUuXG4gICAgICogVXNlcyBlbmRvbW9ycGhpc20gZm9yIEtvYmxpdHogY3VydmVzLlxuICAgICAqIEBwYXJhbSBzY2FsYXIgYnkgd2hpY2ggdGhlIHBvaW50IHdvdWxkIGJlIG11bHRpcGxpZWRcbiAgICAgKiBAcmV0dXJucyBOZXcgcG9pbnRcbiAgICAgKi9cbiAgICBtdWx0aXBseShzY2FsYXI6IGJpZ2ludCk6IFBvaW50IHtcbiAgICAgIGFzc2VydEdFKHNjYWxhcik7XG4gICAgICBsZXQgbiA9IHNjYWxhcjtcbiAgICAgIGxldCBwb2ludDogUG9pbnQsIGZha2U6IFBvaW50OyAvLyBGYWtlIHBvaW50IGlzIHVzZWQgdG8gY29uc3QtdGltZSBtdWx0XG4gICAgICBjb25zdCB7IGVuZG8gfSA9IENVUlZFO1xuICAgICAgaWYgKGVuZG8pIHtcbiAgICAgICAgY29uc3QgeyBrMW5lZywgazEsIGsybmVnLCBrMiB9ID0gZW5kby5zcGxpdFNjYWxhcihuKTtcbiAgICAgICAgbGV0IHsgcDogazFwLCBmOiBmMXAgfSA9IHRoaXMud05BRihrMSk7XG4gICAgICAgIGxldCB7IHA6IGsycCwgZjogZjJwIH0gPSB0aGlzLndOQUYoazIpO1xuICAgICAgICBrMXAgPSB3bmFmLmNvbnN0VGltZU5lZ2F0ZShrMW5lZywgazFwKTtcbiAgICAgICAgazJwID0gd25hZi5jb25zdFRpbWVOZWdhdGUoazJuZWcsIGsycCk7XG4gICAgICAgIGsycCA9IG5ldyBQb2ludChGcC5tdWwoazJwLnB4LCBlbmRvLmJldGEpLCBrMnAucHksIGsycC5weik7XG4gICAgICAgIHBvaW50ID0gazFwLmFkZChrMnApO1xuICAgICAgICBmYWtlID0gZjFwLmFkZChmMnApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgeyBwLCBmIH0gPSB0aGlzLndOQUYobik7XG4gICAgICAgIHBvaW50ID0gcDtcbiAgICAgICAgZmFrZSA9IGY7XG4gICAgICB9XG4gICAgICAvLyBOb3JtYWxpemUgYHpgIGZvciBib3RoIHBvaW50cywgYnV0IHJldHVybiBvbmx5IHJlYWwgb25lXG4gICAgICByZXR1cm4gUG9pbnQubm9ybWFsaXplWihbcG9pbnQsIGZha2VdKVswXTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBFZmZpY2llbnRseSBjYWxjdWxhdGUgYGFQICsgYlFgLiBVbnNhZmUsIGNhbiBleHBvc2UgcHJpdmF0ZSBrZXksIGlmIHVzZWQgaW5jb3JyZWN0bHkuXG4gICAgICogTm90IHVzaW5nIFN0cmF1c3MtU2hhbWlyIHRyaWNrOiBwcmVjb21wdXRhdGlvbiB0YWJsZXMgYXJlIGZhc3Rlci5cbiAgICAgKiBUaGUgdHJpY2sgY291bGQgYmUgdXNlZnVsIGlmIGJvdGggUCBhbmQgUSBhcmUgbm90IEcgKG5vdCBpbiBvdXIgY2FzZSkuXG4gICAgICogQHJldHVybnMgbm9uLXplcm8gYWZmaW5lIHBvaW50XG4gICAgICovXG4gICAgbXVsdGlwbHlBbmRBZGRVbnNhZmUoUTogUG9pbnQsIGE6IGJpZ2ludCwgYjogYmlnaW50KTogUG9pbnQgfCB1bmRlZmluZWQge1xuICAgICAgY29uc3QgRyA9IFBvaW50LkJBU0U7IC8vIE5vIFN0cmF1c3MtU2hhbWlyIHRyaWNrOiB3ZSBoYXZlIDEwJSBmYXN0ZXIgRyBwcmVjb21wdXRlc1xuICAgICAgY29uc3QgbXVsID0gKFxuICAgICAgICBQOiBQb2ludCxcbiAgICAgICAgYTogYmlnaW50IC8vIFNlbGVjdCBmYXN0ZXIgbXVsdGlwbHkoKSBtZXRob2RcbiAgICAgICkgPT4gKGEgPT09IF8wbiB8fCBhID09PSBfMW4gfHwgIVAuZXF1YWxzKEcpID8gUC5tdWx0aXBseVVuc2FmZShhKSA6IFAubXVsdGlwbHkoYSkpO1xuICAgICAgY29uc3Qgc3VtID0gbXVsKHRoaXMsIGEpLmFkZChtdWwoUSwgYikpO1xuICAgICAgcmV0dXJuIHN1bS5pczAoKSA/IHVuZGVmaW5lZCA6IHN1bTtcbiAgICB9XG5cbiAgICAvLyBDb252ZXJ0cyBQcm9qZWN0aXZlIHBvaW50IHRvIGFmZmluZSAoeCwgeSkgY29vcmRpbmF0ZXMuXG4gICAgLy8gQ2FuIGFjY2VwdCBwcmVjb21wdXRlZCBaXi0xIC0gZm9yIGV4YW1wbGUsIGZyb20gaW52ZXJ0QmF0Y2guXG4gICAgLy8gKHgsIHksIHopIFx1MjIwQiAoeD14L3osIHk9eS96KVxuICAgIHRvQWZmaW5lKGl6PzogVCk6IEFmZmluZVBvaW50PFQ+IHtcbiAgICAgIGNvbnN0IHsgcHg6IHgsIHB5OiB5LCBwejogeiB9ID0gdGhpcztcbiAgICAgIGNvbnN0IGlzMCA9IHRoaXMuaXMwKCk7XG4gICAgICAvLyBJZiBpbnZaIHdhcyAwLCB3ZSByZXR1cm4gemVybyBwb2ludC4gSG93ZXZlciB3ZSBzdGlsbCB3YW50IHRvIGV4ZWN1dGVcbiAgICAgIC8vIGFsbCBvcGVyYXRpb25zLCBzbyB3ZSByZXBsYWNlIGludlogd2l0aCBhIHJhbmRvbSBudW1iZXIsIDEuXG4gICAgICBpZiAoaXogPT0gbnVsbCkgaXogPSBpczAgPyBGcC5PTkUgOiBGcC5pbnYoeik7XG4gICAgICBjb25zdCBheCA9IEZwLm11bCh4LCBpeik7XG4gICAgICBjb25zdCBheSA9IEZwLm11bCh5LCBpeik7XG4gICAgICBjb25zdCB6eiA9IEZwLm11bCh6LCBpeik7XG4gICAgICBpZiAoaXMwKSByZXR1cm4geyB4OiBGcC5aRVJPLCB5OiBGcC5aRVJPIH07XG4gICAgICBpZiAoIUZwLmVxbCh6eiwgRnAuT05FKSkgdGhyb3cgbmV3IEVycm9yKCdpbnZaIHdhcyBpbnZhbGlkJyk7XG4gICAgICByZXR1cm4geyB4OiBheCwgeTogYXkgfTtcbiAgICB9XG4gICAgaXNUb3JzaW9uRnJlZSgpOiBib29sZWFuIHtcbiAgICAgIGNvbnN0IHsgaDogY29mYWN0b3IsIGlzVG9yc2lvbkZyZWUgfSA9IENVUlZFO1xuICAgICAgaWYgKGNvZmFjdG9yID09PSBfMW4pIHJldHVybiB0cnVlOyAvLyBObyBzdWJncm91cHMsIGFsd2F5cyB0b3JzaW9uLWZyZWVcbiAgICAgIGlmIChpc1RvcnNpb25GcmVlKSByZXR1cm4gaXNUb3JzaW9uRnJlZShQb2ludCwgdGhpcyk7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2lzVG9yc2lvbkZyZWUoKSBoYXMgbm90IGJlZW4gZGVjbGFyZWQgZm9yIHRoZSBlbGxpcHRpYyBjdXJ2ZScpO1xuICAgIH1cbiAgICBjbGVhckNvZmFjdG9yKCk6IFBvaW50IHtcbiAgICAgIGNvbnN0IHsgaDogY29mYWN0b3IsIGNsZWFyQ29mYWN0b3IgfSA9IENVUlZFO1xuICAgICAgaWYgKGNvZmFjdG9yID09PSBfMW4pIHJldHVybiB0aGlzOyAvLyBGYXN0LXBhdGhcbiAgICAgIGlmIChjbGVhckNvZmFjdG9yKSByZXR1cm4gY2xlYXJDb2ZhY3RvcihQb2ludCwgdGhpcykgYXMgUG9pbnQ7XG4gICAgICByZXR1cm4gdGhpcy5tdWx0aXBseVVuc2FmZShDVVJWRS5oKTtcbiAgICB9XG5cbiAgICB0b1Jhd0J5dGVzKGlzQ29tcHJlc3NlZCA9IHRydWUpOiBVaW50OEFycmF5IHtcbiAgICAgIHRoaXMuYXNzZXJ0VmFsaWRpdHkoKTtcbiAgICAgIHJldHVybiB0b0J5dGVzKFBvaW50LCB0aGlzLCBpc0NvbXByZXNzZWQpO1xuICAgIH1cblxuICAgIHRvSGV4KGlzQ29tcHJlc3NlZCA9IHRydWUpOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIHV0LmJ5dGVzVG9IZXgodGhpcy50b1Jhd0J5dGVzKGlzQ29tcHJlc3NlZCkpO1xuICAgIH1cbiAgfVxuICBjb25zdCBfYml0cyA9IENVUlZFLm5CaXRMZW5ndGg7XG4gIGNvbnN0IHduYWYgPSB3TkFGKFBvaW50LCBDVVJWRS5lbmRvID8gTWF0aC5jZWlsKF9iaXRzIC8gMikgOiBfYml0cyk7XG4gIC8vIFZhbGlkYXRlIGlmIGdlbmVyYXRvciBwb2ludCBpcyBvbiBjdXJ2ZVxuICByZXR1cm4ge1xuICAgIENVUlZFLFxuICAgIFByb2plY3RpdmVQb2ludDogUG9pbnQgYXMgUHJvakNvbnN0cnVjdG9yPFQ+LFxuICAgIG5vcm1Qcml2YXRlS2V5VG9TY2FsYXIsXG4gICAgd2VpZXJzdHJhc3NFcXVhdGlvbixcbiAgICBpc1dpdGhpbkN1cnZlT3JkZXIsXG4gIH07XG59XG5cbi8vIEluc3RhbmNlXG5leHBvcnQgaW50ZXJmYWNlIFNpZ25hdHVyZVR5cGUge1xuICByZWFkb25seSByOiBiaWdpbnQ7XG4gIHJlYWRvbmx5IHM6IGJpZ2ludDtcbiAgcmVhZG9ubHkgcmVjb3Zlcnk/OiBudW1iZXI7XG4gIGFzc2VydFZhbGlkaXR5KCk6IHZvaWQ7XG4gIGFkZFJlY292ZXJ5Qml0KHJlY292ZXJ5OiBudW1iZXIpOiBSZWNvdmVyZWRTaWduYXR1cmVUeXBlO1xuICBoYXNIaWdoUygpOiBib29sZWFuO1xuICBub3JtYWxpemVTKCk6IFNpZ25hdHVyZVR5cGU7XG4gIHJlY292ZXJQdWJsaWNLZXkobXNnSGFzaDogSGV4KTogUHJvalBvaW50VHlwZTxiaWdpbnQ+O1xuICB0b0NvbXBhY3RSYXdCeXRlcygpOiBVaW50OEFycmF5O1xuICB0b0NvbXBhY3RIZXgoKTogc3RyaW5nO1xuICAvLyBERVItZW5jb2RlZFxuICB0b0RFUlJhd0J5dGVzKGlzQ29tcHJlc3NlZD86IGJvb2xlYW4pOiBVaW50OEFycmF5O1xuICB0b0RFUkhleChpc0NvbXByZXNzZWQ/OiBib29sZWFuKTogc3RyaW5nO1xufVxuZXhwb3J0IHR5cGUgUmVjb3ZlcmVkU2lnbmF0dXJlVHlwZSA9IFNpZ25hdHVyZVR5cGUgJiB7XG4gIHJlYWRvbmx5IHJlY292ZXJ5OiBudW1iZXI7XG59O1xuLy8gU3RhdGljIG1ldGhvZHNcbmV4cG9ydCB0eXBlIFNpZ25hdHVyZUNvbnN0cnVjdG9yID0ge1xuICBuZXcgKHI6IGJpZ2ludCwgczogYmlnaW50KTogU2lnbmF0dXJlVHlwZTtcbiAgZnJvbUNvbXBhY3QoaGV4OiBIZXgpOiBTaWduYXR1cmVUeXBlO1xuICBmcm9tREVSKGhleDogSGV4KTogU2lnbmF0dXJlVHlwZTtcbn07XG50eXBlIFNpZ25hdHVyZUxpa2UgPSB7IHI6IGJpZ2ludDsgczogYmlnaW50IH07XG5cbmV4cG9ydCB0eXBlIFB1YktleSA9IEhleCB8IFByb2pQb2ludFR5cGU8YmlnaW50PjtcblxuZXhwb3J0IHR5cGUgQ3VydmVUeXBlID0gQmFzaWNXQ3VydmU8YmlnaW50PiAmIHtcbiAgaGFzaDogQ0hhc2g7IC8vIENIYXNoIG5vdCBGSGFzaCBiZWNhdXNlIHdlIG5lZWQgb3V0cHV0TGVuIGZvciBEUkJHXG4gIGhtYWM6IEhtYWNGblN5bmM7XG4gIHJhbmRvbUJ5dGVzOiAoYnl0ZXNMZW5ndGg/OiBudW1iZXIpID0+IFVpbnQ4QXJyYXk7XG4gIGxvd1M/OiBib29sZWFuO1xuICBiaXRzMmludD86IChieXRlczogVWludDhBcnJheSkgPT4gYmlnaW50O1xuICBiaXRzMmludF9tb2ROPzogKGJ5dGVzOiBVaW50OEFycmF5KSA9PiBiaWdpbnQ7XG59O1xuXG5mdW5jdGlvbiB2YWxpZGF0ZU9wdHMoY3VydmU6IEN1cnZlVHlwZSkge1xuICBjb25zdCBvcHRzID0gdmFsaWRhdGVCYXNpYyhjdXJ2ZSk7XG4gIHV0LnZhbGlkYXRlT2JqZWN0KFxuICAgIG9wdHMsXG4gICAge1xuICAgICAgaGFzaDogJ2hhc2gnLFxuICAgICAgaG1hYzogJ2Z1bmN0aW9uJyxcbiAgICAgIHJhbmRvbUJ5dGVzOiAnZnVuY3Rpb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgYml0czJpbnQ6ICdmdW5jdGlvbicsXG4gICAgICBiaXRzMmludF9tb2ROOiAnZnVuY3Rpb24nLFxuICAgICAgbG93UzogJ2Jvb2xlYW4nLFxuICAgIH1cbiAgKTtcbiAgcmV0dXJuIE9iamVjdC5mcmVlemUoeyBsb3dTOiB0cnVlLCAuLi5vcHRzIH0gYXMgY29uc3QpO1xufVxuXG5leHBvcnQgdHlwZSBDdXJ2ZUZuID0ge1xuICBDVVJWRTogUmV0dXJuVHlwZTx0eXBlb2YgdmFsaWRhdGVPcHRzPjtcbiAgZ2V0UHVibGljS2V5OiAocHJpdmF0ZUtleTogUHJpdktleSwgaXNDb21wcmVzc2VkPzogYm9vbGVhbikgPT4gVWludDhBcnJheTtcbiAgZ2V0U2hhcmVkU2VjcmV0OiAocHJpdmF0ZUE6IFByaXZLZXksIHB1YmxpY0I6IEhleCwgaXNDb21wcmVzc2VkPzogYm9vbGVhbikgPT4gVWludDhBcnJheTtcbiAgc2lnbjogKG1zZ0hhc2g6IEhleCwgcHJpdktleTogUHJpdktleSwgb3B0cz86IFNpZ25PcHRzKSA9PiBSZWNvdmVyZWRTaWduYXR1cmVUeXBlO1xuICB2ZXJpZnk6IChzaWduYXR1cmU6IEhleCB8IFNpZ25hdHVyZUxpa2UsIG1zZ0hhc2g6IEhleCwgcHVibGljS2V5OiBIZXgsIG9wdHM/OiBWZXJPcHRzKSA9PiBib29sZWFuO1xuICBQcm9qZWN0aXZlUG9pbnQ6IFByb2pDb25zdHJ1Y3RvcjxiaWdpbnQ+O1xuICBTaWduYXR1cmU6IFNpZ25hdHVyZUNvbnN0cnVjdG9yO1xuICB1dGlsczoge1xuICAgIG5vcm1Qcml2YXRlS2V5VG9TY2FsYXI6IChrZXk6IFByaXZLZXkpID0+IGJpZ2ludDtcbiAgICBpc1ZhbGlkUHJpdmF0ZUtleShwcml2YXRlS2V5OiBQcml2S2V5KTogYm9vbGVhbjtcbiAgICByYW5kb21Qcml2YXRlS2V5OiAoKSA9PiBVaW50OEFycmF5O1xuICAgIHByZWNvbXB1dGU6ICh3aW5kb3dTaXplPzogbnVtYmVyLCBwb2ludD86IFByb2pQb2ludFR5cGU8YmlnaW50PikgPT4gUHJvalBvaW50VHlwZTxiaWdpbnQ+O1xuICB9O1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIHdlaWVyc3RyYXNzKGN1cnZlRGVmOiBDdXJ2ZVR5cGUpOiBDdXJ2ZUZuIHtcbiAgY29uc3QgQ1VSVkUgPSB2YWxpZGF0ZU9wdHMoY3VydmVEZWYpIGFzIFJldHVyblR5cGU8dHlwZW9mIHZhbGlkYXRlT3B0cz47XG4gIGNvbnN0IHsgRnAsIG46IENVUlZFX09SREVSIH0gPSBDVVJWRTtcbiAgY29uc3QgY29tcHJlc3NlZExlbiA9IEZwLkJZVEVTICsgMTsgLy8gZS5nLiAzMyBmb3IgMzJcbiAgY29uc3QgdW5jb21wcmVzc2VkTGVuID0gMiAqIEZwLkJZVEVTICsgMTsgLy8gZS5nLiA2NSBmb3IgMzJcblxuICBmdW5jdGlvbiBpc1ZhbGlkRmllbGRFbGVtZW50KG51bTogYmlnaW50KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIF8wbiA8IG51bSAmJiBudW0gPCBGcC5PUkRFUjsgLy8gMCBpcyBiYW5uZWQgc2luY2UgaXQncyBub3QgaW52ZXJ0aWJsZSBGRVxuICB9XG4gIGZ1bmN0aW9uIG1vZE4oYTogYmlnaW50KSB7XG4gICAgcmV0dXJuIG1vZC5tb2QoYSwgQ1VSVkVfT1JERVIpO1xuICB9XG4gIGZ1bmN0aW9uIGludk4oYTogYmlnaW50KSB7XG4gICAgcmV0dXJuIG1vZC5pbnZlcnQoYSwgQ1VSVkVfT1JERVIpO1xuICB9XG5cbiAgY29uc3Qge1xuICAgIFByb2plY3RpdmVQb2ludDogUG9pbnQsXG4gICAgbm9ybVByaXZhdGVLZXlUb1NjYWxhcixcbiAgICB3ZWllcnN0cmFzc0VxdWF0aW9uLFxuICAgIGlzV2l0aGluQ3VydmVPcmRlcixcbiAgfSA9IHdlaWVyc3RyYXNzUG9pbnRzKHtcbiAgICAuLi5DVVJWRSxcbiAgICB0b0J5dGVzKF9jLCBwb2ludCwgaXNDb21wcmVzc2VkOiBib29sZWFuKTogVWludDhBcnJheSB7XG4gICAgICBjb25zdCBhID0gcG9pbnQudG9BZmZpbmUoKTtcbiAgICAgIGNvbnN0IHggPSBGcC50b0J5dGVzKGEueCk7XG4gICAgICBjb25zdCBjYXQgPSB1dC5jb25jYXRCeXRlcztcbiAgICAgIGlmIChpc0NvbXByZXNzZWQpIHtcbiAgICAgICAgcmV0dXJuIGNhdChVaW50OEFycmF5LmZyb20oW3BvaW50Lmhhc0V2ZW5ZKCkgPyAweDAyIDogMHgwM10pLCB4KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBjYXQoVWludDhBcnJheS5mcm9tKFsweDA0XSksIHgsIEZwLnRvQnl0ZXMoYS55KSk7XG4gICAgICB9XG4gICAgfSxcbiAgICBmcm9tQnl0ZXMoYnl0ZXM6IFVpbnQ4QXJyYXkpIHtcbiAgICAgIGNvbnN0IGxlbiA9IGJ5dGVzLmxlbmd0aDtcbiAgICAgIGNvbnN0IGhlYWQgPSBieXRlc1swXTtcbiAgICAgIGNvbnN0IHRhaWwgPSBieXRlcy5zdWJhcnJheSgxKTtcbiAgICAgIC8vIHRoaXMuYXNzZXJ0VmFsaWRpdHkoKSBpcyBkb25lIGluc2lkZSBvZiBmcm9tSGV4XG4gICAgICBpZiAobGVuID09PSBjb21wcmVzc2VkTGVuICYmIChoZWFkID09PSAweDAyIHx8IGhlYWQgPT09IDB4MDMpKSB7XG4gICAgICAgIGNvbnN0IHggPSB1dC5ieXRlc1RvTnVtYmVyQkUodGFpbCk7XG4gICAgICAgIGlmICghaXNWYWxpZEZpZWxkRWxlbWVudCh4KSkgdGhyb3cgbmV3IEVycm9yKCdQb2ludCBpcyBub3Qgb24gY3VydmUnKTtcbiAgICAgICAgY29uc3QgeTIgPSB3ZWllcnN0cmFzc0VxdWF0aW9uKHgpOyAvLyB5XHUwMEIyID0geFx1MDBCMyArIGF4ICsgYlxuICAgICAgICBsZXQgeSA9IEZwLnNxcnQoeTIpOyAvLyB5ID0geVx1MDBCMiBeIChwKzEpLzRcbiAgICAgICAgY29uc3QgaXNZT2RkID0gKHkgJiBfMW4pID09PSBfMW47XG4gICAgICAgIC8vIEVDRFNBXG4gICAgICAgIGNvbnN0IGlzSGVhZE9kZCA9IChoZWFkICYgMSkgPT09IDE7XG4gICAgICAgIGlmIChpc0hlYWRPZGQgIT09IGlzWU9kZCkgeSA9IEZwLm5lZyh5KTtcbiAgICAgICAgcmV0dXJuIHsgeCwgeSB9O1xuICAgICAgfSBlbHNlIGlmIChsZW4gPT09IHVuY29tcHJlc3NlZExlbiAmJiBoZWFkID09PSAweDA0KSB7XG4gICAgICAgIGNvbnN0IHggPSBGcC5mcm9tQnl0ZXModGFpbC5zdWJhcnJheSgwLCBGcC5CWVRFUykpO1xuICAgICAgICBjb25zdCB5ID0gRnAuZnJvbUJ5dGVzKHRhaWwuc3ViYXJyYXkoRnAuQllURVMsIDIgKiBGcC5CWVRFUykpO1xuICAgICAgICByZXR1cm4geyB4LCB5IH07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgYFBvaW50IG9mIGxlbmd0aCAke2xlbn0gd2FzIGludmFsaWQuIEV4cGVjdGVkICR7Y29tcHJlc3NlZExlbn0gY29tcHJlc3NlZCBieXRlcyBvciAke3VuY29tcHJlc3NlZExlbn0gdW5jb21wcmVzc2VkIGJ5dGVzYFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH0sXG4gIH0pO1xuICBjb25zdCBudW1Ub05CeXRlU3RyID0gKG51bTogYmlnaW50KTogc3RyaW5nID0+XG4gICAgdXQuYnl0ZXNUb0hleCh1dC5udW1iZXJUb0J5dGVzQkUobnVtLCBDVVJWRS5uQnl0ZUxlbmd0aCkpO1xuXG4gIGZ1bmN0aW9uIGlzQmlnZ2VyVGhhbkhhbGZPcmRlcihudW1iZXI6IGJpZ2ludCkge1xuICAgIGNvbnN0IEhBTEYgPSBDVVJWRV9PUkRFUiA+PiBfMW47XG4gICAgcmV0dXJuIG51bWJlciA+IEhBTEY7XG4gIH1cblxuICBmdW5jdGlvbiBub3JtYWxpemVTKHM6IGJpZ2ludCkge1xuICAgIHJldHVybiBpc0JpZ2dlclRoYW5IYWxmT3JkZXIocykgPyBtb2ROKC1zKSA6IHM7XG4gIH1cbiAgLy8gc2xpY2UgYnl0ZXMgbnVtXG4gIGNvbnN0IHNsY051bSA9IChiOiBVaW50OEFycmF5LCBmcm9tOiBudW1iZXIsIHRvOiBudW1iZXIpID0+IHV0LmJ5dGVzVG9OdW1iZXJCRShiLnNsaWNlKGZyb20sIHRvKSk7XG5cbiAgLyoqXG4gICAqIEVDRFNBIHNpZ25hdHVyZSB3aXRoIGl0cyAociwgcykgcHJvcGVydGllcy4gU3VwcG9ydHMgREVSICYgY29tcGFjdCByZXByZXNlbnRhdGlvbnMuXG4gICAqL1xuICBjbGFzcyBTaWduYXR1cmUgaW1wbGVtZW50cyBTaWduYXR1cmVUeXBlIHtcbiAgICBjb25zdHJ1Y3RvcihyZWFkb25seSByOiBiaWdpbnQsIHJlYWRvbmx5IHM6IGJpZ2ludCwgcmVhZG9ubHkgcmVjb3Zlcnk/OiBudW1iZXIpIHtcbiAgICAgIHRoaXMuYXNzZXJ0VmFsaWRpdHkoKTtcbiAgICB9XG5cbiAgICAvLyBwYWlyIChieXRlcyBvZiByLCBieXRlcyBvZiBzKVxuICAgIHN0YXRpYyBmcm9tQ29tcGFjdChoZXg6IEhleCkge1xuICAgICAgY29uc3QgbCA9IENVUlZFLm5CeXRlTGVuZ3RoO1xuICAgICAgaGV4ID0gZW5zdXJlQnl0ZXMoJ2NvbXBhY3RTaWduYXR1cmUnLCBoZXgsIGwgKiAyKTtcbiAgICAgIHJldHVybiBuZXcgU2lnbmF0dXJlKHNsY051bShoZXgsIDAsIGwpLCBzbGNOdW0oaGV4LCBsLCAyICogbCkpO1xuICAgIH1cblxuICAgIC8vIERFUiBlbmNvZGVkIEVDRFNBIHNpZ25hdHVyZVxuICAgIC8vIGh0dHBzOi8vYml0Y29pbi5zdGFja2V4Y2hhbmdlLmNvbS9xdWVzdGlvbnMvNTc2NDQvd2hhdC1hcmUtdGhlLXBhcnRzLW9mLWEtYml0Y29pbi10cmFuc2FjdGlvbi1pbnB1dC1zY3JpcHRcbiAgICBzdGF0aWMgZnJvbURFUihoZXg6IEhleCkge1xuICAgICAgY29uc3QgeyByLCBzIH0gPSBERVIudG9TaWcoZW5zdXJlQnl0ZXMoJ0RFUicsIGhleCkpO1xuICAgICAgcmV0dXJuIG5ldyBTaWduYXR1cmUociwgcyk7XG4gICAgfVxuXG4gICAgYXNzZXJ0VmFsaWRpdHkoKTogdm9pZCB7XG4gICAgICAvLyBjYW4gdXNlIGFzc2VydEdFIGhlcmVcbiAgICAgIGlmICghaXNXaXRoaW5DdXJ2ZU9yZGVyKHRoaXMucikpIHRocm93IG5ldyBFcnJvcignciBtdXN0IGJlIDAgPCByIDwgQ1VSVkUubicpO1xuICAgICAgaWYgKCFpc1dpdGhpbkN1cnZlT3JkZXIodGhpcy5zKSkgdGhyb3cgbmV3IEVycm9yKCdzIG11c3QgYmUgMCA8IHMgPCBDVVJWRS5uJyk7XG4gICAgfVxuXG4gICAgYWRkUmVjb3ZlcnlCaXQocmVjb3Zlcnk6IG51bWJlcik6IFJlY292ZXJlZFNpZ25hdHVyZSB7XG4gICAgICByZXR1cm4gbmV3IFNpZ25hdHVyZSh0aGlzLnIsIHRoaXMucywgcmVjb3ZlcnkpIGFzIFJlY292ZXJlZFNpZ25hdHVyZTtcbiAgICB9XG5cbiAgICByZWNvdmVyUHVibGljS2V5KG1zZ0hhc2g6IEhleCk6IHR5cGVvZiBQb2ludC5CQVNFIHtcbiAgICAgIGNvbnN0IHsgciwgcywgcmVjb3Zlcnk6IHJlYyB9ID0gdGhpcztcbiAgICAgIGNvbnN0IGggPSBiaXRzMmludF9tb2ROKGVuc3VyZUJ5dGVzKCdtc2dIYXNoJywgbXNnSGFzaCkpOyAvLyBUcnVuY2F0ZSBoYXNoXG4gICAgICBpZiAocmVjID09IG51bGwgfHwgIVswLCAxLCAyLCAzXS5pbmNsdWRlcyhyZWMpKSB0aHJvdyBuZXcgRXJyb3IoJ3JlY292ZXJ5IGlkIGludmFsaWQnKTtcbiAgICAgIGNvbnN0IHJhZGogPSByZWMgPT09IDIgfHwgcmVjID09PSAzID8gciArIENVUlZFLm4gOiByO1xuICAgICAgaWYgKHJhZGogPj0gRnAuT1JERVIpIHRocm93IG5ldyBFcnJvcigncmVjb3ZlcnkgaWQgMiBvciAzIGludmFsaWQnKTtcbiAgICAgIGNvbnN0IHByZWZpeCA9IChyZWMgJiAxKSA9PT0gMCA/ICcwMicgOiAnMDMnO1xuICAgICAgY29uc3QgUiA9IFBvaW50LmZyb21IZXgocHJlZml4ICsgbnVtVG9OQnl0ZVN0cihyYWRqKSk7XG4gICAgICBjb25zdCBpciA9IGludk4ocmFkaik7IC8vIHJeLTFcbiAgICAgIGNvbnN0IHUxID0gbW9kTigtaCAqIGlyKTsgLy8gLWhyXi0xXG4gICAgICBjb25zdCB1MiA9IG1vZE4ocyAqIGlyKTsgLy8gc3JeLTFcbiAgICAgIGNvbnN0IFEgPSBQb2ludC5CQVNFLm11bHRpcGx5QW5kQWRkVW5zYWZlKFIsIHUxLCB1Mik7IC8vIChzcl4tMSlSLShocl4tMSlHID0gLShocl4tMSlHICsgKHNyXi0xKVxuICAgICAgaWYgKCFRKSB0aHJvdyBuZXcgRXJyb3IoJ3BvaW50IGF0IGluZmluaWZ5Jyk7IC8vIHVuc2FmZSBpcyBmaW5lOiBubyBwcml2IGRhdGEgbGVha2VkXG4gICAgICBRLmFzc2VydFZhbGlkaXR5KCk7XG4gICAgICByZXR1cm4gUTtcbiAgICB9XG5cbiAgICAvLyBTaWduYXR1cmVzIHNob3VsZCBiZSBsb3ctcywgdG8gcHJldmVudCBtYWxsZWFiaWxpdHkuXG4gICAgaGFzSGlnaFMoKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gaXNCaWdnZXJUaGFuSGFsZk9yZGVyKHRoaXMucyk7XG4gICAgfVxuXG4gICAgbm9ybWFsaXplUygpIHtcbiAgICAgIHJldHVybiB0aGlzLmhhc0hpZ2hTKCkgPyBuZXcgU2lnbmF0dXJlKHRoaXMuciwgbW9kTigtdGhpcy5zKSwgdGhpcy5yZWNvdmVyeSkgOiB0aGlzO1xuICAgIH1cblxuICAgIC8vIERFUi1lbmNvZGVkXG4gICAgdG9ERVJSYXdCeXRlcygpIHtcbiAgICAgIHJldHVybiB1dC5oZXhUb0J5dGVzKHRoaXMudG9ERVJIZXgoKSk7XG4gICAgfVxuICAgIHRvREVSSGV4KCkge1xuICAgICAgcmV0dXJuIERFUi5oZXhGcm9tU2lnKHsgcjogdGhpcy5yLCBzOiB0aGlzLnMgfSk7XG4gICAgfVxuXG4gICAgLy8gcGFkZGVkIGJ5dGVzIG9mIHIsIHRoZW4gcGFkZGVkIGJ5dGVzIG9mIHNcbiAgICB0b0NvbXBhY3RSYXdCeXRlcygpIHtcbiAgICAgIHJldHVybiB1dC5oZXhUb0J5dGVzKHRoaXMudG9Db21wYWN0SGV4KCkpO1xuICAgIH1cbiAgICB0b0NvbXBhY3RIZXgoKSB7XG4gICAgICByZXR1cm4gbnVtVG9OQnl0ZVN0cih0aGlzLnIpICsgbnVtVG9OQnl0ZVN0cih0aGlzLnMpO1xuICAgIH1cbiAgfVxuICB0eXBlIFJlY292ZXJlZFNpZ25hdHVyZSA9IFNpZ25hdHVyZSAmIHsgcmVjb3Zlcnk6IG51bWJlciB9O1xuXG4gIGNvbnN0IHV0aWxzID0ge1xuICAgIGlzVmFsaWRQcml2YXRlS2V5KHByaXZhdGVLZXk6IFByaXZLZXkpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIG5vcm1Qcml2YXRlS2V5VG9TY2FsYXIocHJpdmF0ZUtleSk7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH0sXG4gICAgbm9ybVByaXZhdGVLZXlUb1NjYWxhcjogbm9ybVByaXZhdGVLZXlUb1NjYWxhcixcblxuICAgIC8qKlxuICAgICAqIFByb2R1Y2VzIGNyeXB0b2dyYXBoaWNhbGx5IHNlY3VyZSBwcml2YXRlIGtleSBmcm9tIHJhbmRvbSBvZiBzaXplXG4gICAgICogKGdyb3VwTGVuICsgY2VpbChncm91cExlbiAvIDIpKSB3aXRoIG1vZHVsbyBiaWFzIGJlaW5nIG5lZ2xpZ2libGUuXG4gICAgICovXG4gICAgcmFuZG9tUHJpdmF0ZUtleTogKCk6IFVpbnQ4QXJyYXkgPT4ge1xuICAgICAgY29uc3QgbGVuZ3RoID0gbW9kLmdldE1pbkhhc2hMZW5ndGgoQ1VSVkUubik7XG4gICAgICByZXR1cm4gbW9kLm1hcEhhc2hUb0ZpZWxkKENVUlZFLnJhbmRvbUJ5dGVzKGxlbmd0aCksIENVUlZFLm4pO1xuICAgIH0sXG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIHByZWNvbXB1dGUgdGFibGUgZm9yIGFuIGFyYml0cmFyeSBFQyBwb2ludC4gTWFrZXMgcG9pbnQgXCJjYWNoZWRcIi5cbiAgICAgKiBBbGxvd3MgdG8gbWFzc2l2ZWx5IHNwZWVkLXVwIGBwb2ludC5tdWx0aXBseShzY2FsYXIpYC5cbiAgICAgKiBAcmV0dXJucyBjYWNoZWQgcG9pbnRcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqIGNvbnN0IGZhc3QgPSB1dGlscy5wcmVjb21wdXRlKDgsIFByb2plY3RpdmVQb2ludC5mcm9tSGV4KHNvbWVvbmVzUHViS2V5KSk7XG4gICAgICogZmFzdC5tdWx0aXBseShwcml2S2V5KTsgLy8gbXVjaCBmYXN0ZXIgRUNESCBub3dcbiAgICAgKi9cbiAgICBwcmVjb21wdXRlKHdpbmRvd1NpemUgPSA4LCBwb2ludCA9IFBvaW50LkJBU0UpOiB0eXBlb2YgUG9pbnQuQkFTRSB7XG4gICAgICBwb2ludC5fc2V0V2luZG93U2l6ZSh3aW5kb3dTaXplKTtcbiAgICAgIHBvaW50Lm11bHRpcGx5KEJpZ0ludCgzKSk7IC8vIDMgaXMgYXJiaXRyYXJ5LCBqdXN0IG5lZWQgYW55IG51bWJlciBoZXJlXG4gICAgICByZXR1cm4gcG9pbnQ7XG4gICAgfSxcbiAgfTtcblxuICAvKipcbiAgICogQ29tcHV0ZXMgcHVibGljIGtleSBmb3IgYSBwcml2YXRlIGtleS4gQ2hlY2tzIGZvciB2YWxpZGl0eSBvZiB0aGUgcHJpdmF0ZSBrZXkuXG4gICAqIEBwYXJhbSBwcml2YXRlS2V5IHByaXZhdGUga2V5XG4gICAqIEBwYXJhbSBpc0NvbXByZXNzZWQgd2hldGhlciB0byByZXR1cm4gY29tcGFjdCAoZGVmYXVsdCksIG9yIGZ1bGwga2V5XG4gICAqIEByZXR1cm5zIFB1YmxpYyBrZXksIGZ1bGwgd2hlbiBpc0NvbXByZXNzZWQ9ZmFsc2U7IHNob3J0IHdoZW4gaXNDb21wcmVzc2VkPXRydWVcbiAgICovXG4gIGZ1bmN0aW9uIGdldFB1YmxpY0tleShwcml2YXRlS2V5OiBQcml2S2V5LCBpc0NvbXByZXNzZWQgPSB0cnVlKTogVWludDhBcnJheSB7XG4gICAgcmV0dXJuIFBvaW50LmZyb21Qcml2YXRlS2V5KHByaXZhdGVLZXkpLnRvUmF3Qnl0ZXMoaXNDb21wcmVzc2VkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBRdWljayBhbmQgZGlydHkgY2hlY2sgZm9yIGl0ZW0gYmVpbmcgcHVibGljIGtleS4gRG9lcyBub3QgdmFsaWRhdGUgaGV4LCBvciBiZWluZyBvbi1jdXJ2ZS5cbiAgICovXG4gIGZ1bmN0aW9uIGlzUHJvYlB1YihpdGVtOiBQcml2S2V5IHwgUHViS2V5KTogYm9vbGVhbiB7XG4gICAgY29uc3QgYXJyID0gaXRlbSBpbnN0YW5jZW9mIFVpbnQ4QXJyYXk7XG4gICAgY29uc3Qgc3RyID0gdHlwZW9mIGl0ZW0gPT09ICdzdHJpbmcnO1xuICAgIGNvbnN0IGxlbiA9IChhcnIgfHwgc3RyKSAmJiAoaXRlbSBhcyBIZXgpLmxlbmd0aDtcbiAgICBpZiAoYXJyKSByZXR1cm4gbGVuID09PSBjb21wcmVzc2VkTGVuIHx8IGxlbiA9PT0gdW5jb21wcmVzc2VkTGVuO1xuICAgIGlmIChzdHIpIHJldHVybiBsZW4gPT09IDIgKiBjb21wcmVzc2VkTGVuIHx8IGxlbiA9PT0gMiAqIHVuY29tcHJlc3NlZExlbjtcbiAgICBpZiAoaXRlbSBpbnN0YW5jZW9mIFBvaW50KSByZXR1cm4gdHJ1ZTtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICAvKipcbiAgICogRUNESCAoRWxsaXB0aWMgQ3VydmUgRGlmZmllIEhlbGxtYW4pLlxuICAgKiBDb21wdXRlcyBzaGFyZWQgcHVibGljIGtleSBmcm9tIHByaXZhdGUga2V5IGFuZCBwdWJsaWMga2V5LlxuICAgKiBDaGVja3M6IDEpIHByaXZhdGUga2V5IHZhbGlkaXR5IDIpIHNoYXJlZCBrZXkgaXMgb24tY3VydmUuXG4gICAqIERvZXMgTk9UIGhhc2ggdGhlIHJlc3VsdC5cbiAgICogQHBhcmFtIHByaXZhdGVBIHByaXZhdGUga2V5XG4gICAqIEBwYXJhbSBwdWJsaWNCIGRpZmZlcmVudCBwdWJsaWMga2V5XG4gICAqIEBwYXJhbSBpc0NvbXByZXNzZWQgd2hldGhlciB0byByZXR1cm4gY29tcGFjdCAoZGVmYXVsdCksIG9yIGZ1bGwga2V5XG4gICAqIEByZXR1cm5zIHNoYXJlZCBwdWJsaWMga2V5XG4gICAqL1xuICBmdW5jdGlvbiBnZXRTaGFyZWRTZWNyZXQocHJpdmF0ZUE6IFByaXZLZXksIHB1YmxpY0I6IEhleCwgaXNDb21wcmVzc2VkID0gdHJ1ZSk6IFVpbnQ4QXJyYXkge1xuICAgIGlmIChpc1Byb2JQdWIocHJpdmF0ZUEpKSB0aHJvdyBuZXcgRXJyb3IoJ2ZpcnN0IGFyZyBtdXN0IGJlIHByaXZhdGUga2V5Jyk7XG4gICAgaWYgKCFpc1Byb2JQdWIocHVibGljQikpIHRocm93IG5ldyBFcnJvcignc2Vjb25kIGFyZyBtdXN0IGJlIHB1YmxpYyBrZXknKTtcbiAgICBjb25zdCBiID0gUG9pbnQuZnJvbUhleChwdWJsaWNCKTsgLy8gY2hlY2sgZm9yIGJlaW5nIG9uLWN1cnZlXG4gICAgcmV0dXJuIGIubXVsdGlwbHkobm9ybVByaXZhdGVLZXlUb1NjYWxhcihwcml2YXRlQSkpLnRvUmF3Qnl0ZXMoaXNDb21wcmVzc2VkKTtcbiAgfVxuXG4gIC8vIFJGQzY5Nzk6IGVuc3VyZSBFQ0RTQSBtc2cgaXMgWCBieXRlcyBhbmQgPCBOLiBSRkMgc3VnZ2VzdHMgb3B0aW9uYWwgdHJ1bmNhdGluZyB2aWEgYml0czJvY3RldHMuXG4gIC8vIEZJUFMgMTg2LTQgNC42IHN1Z2dlc3RzIHRoZSBsZWZ0bW9zdCBtaW4obkJpdExlbiwgb3V0TGVuKSBiaXRzLCB3aGljaCBtYXRjaGVzIGJpdHMyaW50LlxuICAvLyBiaXRzMmludCBjYW4gcHJvZHVjZSByZXM+Tiwgd2UgY2FuIGRvIG1vZChyZXMsIE4pIHNpbmNlIHRoZSBiaXRMZW4gaXMgdGhlIHNhbWUuXG4gIC8vIGludDJvY3RldHMgY2FuJ3QgYmUgdXNlZDsgcGFkcyBzbWFsbCBtc2dzIHdpdGggMDogdW5hY2NlcHRhdGJsZSBmb3IgdHJ1bmMgYXMgcGVyIFJGQyB2ZWN0b3JzXG4gIGNvbnN0IGJpdHMyaW50ID1cbiAgICBDVVJWRS5iaXRzMmludCB8fFxuICAgIGZ1bmN0aW9uIChieXRlczogVWludDhBcnJheSk6IGJpZ2ludCB7XG4gICAgICAvLyBGb3IgY3VydmVzIHdpdGggbkJpdExlbmd0aCAlIDggIT09IDA6IGJpdHMyb2N0ZXRzKGJpdHMyb2N0ZXRzKG0pKSAhPT0gYml0czJvY3RldHMobSlcbiAgICAgIC8vIGZvciBzb21lIGNhc2VzLCBzaW5jZSBieXRlcy5sZW5ndGggKiA4IGlzIG5vdCBhY3R1YWwgYml0TGVuZ3RoLlxuICAgICAgY29uc3QgbnVtID0gdXQuYnl0ZXNUb051bWJlckJFKGJ5dGVzKTsgLy8gY2hlY2sgZm9yID09IHU4IGRvbmUgaGVyZVxuICAgICAgY29uc3QgZGVsdGEgPSBieXRlcy5sZW5ndGggKiA4IC0gQ1VSVkUubkJpdExlbmd0aDsgLy8gdHJ1bmNhdGUgdG8gbkJpdExlbmd0aCBsZWZ0bW9zdCBiaXRzXG4gICAgICByZXR1cm4gZGVsdGEgPiAwID8gbnVtID4+IEJpZ0ludChkZWx0YSkgOiBudW07XG4gICAgfTtcbiAgY29uc3QgYml0czJpbnRfbW9kTiA9XG4gICAgQ1VSVkUuYml0czJpbnRfbW9kTiB8fFxuICAgIGZ1bmN0aW9uIChieXRlczogVWludDhBcnJheSk6IGJpZ2ludCB7XG4gICAgICByZXR1cm4gbW9kTihiaXRzMmludChieXRlcykpOyAvLyBjYW4ndCB1c2UgYnl0ZXNUb051bWJlckJFIGhlcmVcbiAgICB9O1xuICAvLyBOT1RFOiBwYWRzIG91dHB1dCB3aXRoIHplcm8gYXMgcGVyIHNwZWNcbiAgY29uc3QgT1JERVJfTUFTSyA9IHV0LmJpdE1hc2soQ1VSVkUubkJpdExlbmd0aCk7XG4gIC8qKlxuICAgKiBDb252ZXJ0cyB0byBieXRlcy4gQ2hlY2tzIGlmIG51bSBpbiBgWzAuLk9SREVSX01BU0stMV1gIGUuZy46IGBbMC4uMl4yNTYtMV1gLlxuICAgKi9cbiAgZnVuY3Rpb24gaW50Mm9jdGV0cyhudW06IGJpZ2ludCk6IFVpbnQ4QXJyYXkge1xuICAgIGlmICh0eXBlb2YgbnVtICE9PSAnYmlnaW50JykgdGhyb3cgbmV3IEVycm9yKCdiaWdpbnQgZXhwZWN0ZWQnKTtcbiAgICBpZiAoIShfMG4gPD0gbnVtICYmIG51bSA8IE9SREVSX01BU0spKVxuICAgICAgdGhyb3cgbmV3IEVycm9yKGBiaWdpbnQgZXhwZWN0ZWQgPCAyXiR7Q1VSVkUubkJpdExlbmd0aH1gKTtcbiAgICAvLyB3b3JrcyB3aXRoIG9yZGVyLCBjYW4gaGF2ZSBkaWZmZXJlbnQgc2l6ZSB0aGFuIG51bVRvRmllbGQhXG4gICAgcmV0dXJuIHV0Lm51bWJlclRvQnl0ZXNCRShudW0sIENVUlZFLm5CeXRlTGVuZ3RoKTtcbiAgfVxuXG4gIC8vIFN0ZXBzIEEsIEQgb2YgUkZDNjk3OSAzLjJcbiAgLy8gQ3JlYXRlcyBSRkM2OTc5IHNlZWQ7IGNvbnZlcnRzIG1zZy9wcml2S2V5IHRvIG51bWJlcnMuXG4gIC8vIFVzZWQgb25seSBpbiBzaWduLCBub3QgaW4gdmVyaWZ5LlxuICAvLyBOT1RFOiB3ZSBjYW5ub3QgYXNzdW1lIGhlcmUgdGhhdCBtc2dIYXNoIGhhcyBzYW1lIGFtb3VudCBvZiBieXRlcyBhcyBjdXJ2ZSBvcmRlciwgdGhpcyB3aWxsIGJlIHdyb25nIGF0IGxlYXN0IGZvciBQNTIxLlxuICAvLyBBbHNvIGl0IGNhbiBiZSBiaWdnZXIgZm9yIFAyMjQgKyBTSEEyNTZcbiAgZnVuY3Rpb24gcHJlcFNpZyhtc2dIYXNoOiBIZXgsIHByaXZhdGVLZXk6IFByaXZLZXksIG9wdHMgPSBkZWZhdWx0U2lnT3B0cykge1xuICAgIGlmIChbJ3JlY292ZXJlZCcsICdjYW5vbmljYWwnXS5zb21lKChrKSA9PiBrIGluIG9wdHMpKVxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdzaWduKCkgbGVnYWN5IG9wdGlvbnMgbm90IHN1cHBvcnRlZCcpO1xuICAgIGNvbnN0IHsgaGFzaCwgcmFuZG9tQnl0ZXMgfSA9IENVUlZFO1xuICAgIGxldCB7IGxvd1MsIHByZWhhc2gsIGV4dHJhRW50cm9weTogZW50IH0gPSBvcHRzOyAvLyBnZW5lcmF0ZXMgbG93LXMgc2lncyBieSBkZWZhdWx0XG4gICAgaWYgKGxvd1MgPT0gbnVsbCkgbG93UyA9IHRydWU7IC8vIFJGQzY5NzkgMy4yOiB3ZSBza2lwIHN0ZXAgQSwgYmVjYXVzZSB3ZSBhbHJlYWR5IHByb3ZpZGUgaGFzaFxuICAgIG1zZ0hhc2ggPSBlbnN1cmVCeXRlcygnbXNnSGFzaCcsIG1zZ0hhc2gpO1xuICAgIGlmIChwcmVoYXNoKSBtc2dIYXNoID0gZW5zdXJlQnl0ZXMoJ3ByZWhhc2hlZCBtc2dIYXNoJywgaGFzaChtc2dIYXNoKSk7XG5cbiAgICAvLyBXZSBjYW4ndCBsYXRlciBjYWxsIGJpdHMyb2N0ZXRzLCBzaW5jZSBuZXN0ZWQgYml0czJpbnQgaXMgYnJva2VuIGZvciBjdXJ2ZXNcbiAgICAvLyB3aXRoIG5CaXRMZW5ndGggJSA4ICE9PSAwLiBCZWNhdXNlIG9mIHRoYXQsIHdlIHVud3JhcCBpdCBoZXJlIGFzIGludDJvY3RldHMgY2FsbC5cbiAgICAvLyBjb25zdCBiaXRzMm9jdGV0cyA9IChiaXRzKSA9PiBpbnQyb2N0ZXRzKGJpdHMyaW50X21vZE4oYml0cykpXG4gICAgY29uc3QgaDFpbnQgPSBiaXRzMmludF9tb2ROKG1zZ0hhc2gpO1xuICAgIGNvbnN0IGQgPSBub3JtUHJpdmF0ZUtleVRvU2NhbGFyKHByaXZhdGVLZXkpOyAvLyB2YWxpZGF0ZSBwcml2YXRlIGtleSwgY29udmVydCB0byBiaWdpbnRcbiAgICBjb25zdCBzZWVkQXJncyA9IFtpbnQyb2N0ZXRzKGQpLCBpbnQyb2N0ZXRzKGgxaW50KV07XG4gICAgLy8gZXh0cmFFbnRyb3B5LiBSRkM2OTc5IDMuNjogYWRkaXRpb25hbCBrJyAob3B0aW9uYWwpLlxuICAgIGlmIChlbnQgIT0gbnVsbCkge1xuICAgICAgLy8gSyA9IEhNQUNfSyhWIHx8IDB4MDAgfHwgaW50Mm9jdGV0cyh4KSB8fCBiaXRzMm9jdGV0cyhoMSkgfHwgaycpXG4gICAgICBjb25zdCBlID0gZW50ID09PSB0cnVlID8gcmFuZG9tQnl0ZXMoRnAuQllURVMpIDogZW50OyAvLyBnZW5lcmF0ZSByYW5kb20gYnl0ZXMgT1IgcGFzcyBhcy1pc1xuICAgICAgc2VlZEFyZ3MucHVzaChlbnN1cmVCeXRlcygnZXh0cmFFbnRyb3B5JywgZSkpOyAvLyBjaGVjayBmb3IgYmVpbmcgYnl0ZXNcbiAgICB9XG4gICAgY29uc3Qgc2VlZCA9IHV0LmNvbmNhdEJ5dGVzKC4uLnNlZWRBcmdzKTsgLy8gU3RlcCBEIG9mIFJGQzY5NzkgMy4yXG4gICAgY29uc3QgbSA9IGgxaW50OyAvLyBOT1RFOiBubyBuZWVkIHRvIGNhbGwgYml0czJpbnQgc2Vjb25kIHRpbWUgaGVyZSwgaXQgaXMgaW5zaWRlIHRydW5jYXRlSGFzaCFcbiAgICAvLyBDb252ZXJ0cyBzaWduYXR1cmUgcGFyYW1zIGludG8gcG9pbnQgdyByL3MsIGNoZWNrcyByZXN1bHQgZm9yIHZhbGlkaXR5LlxuICAgIGZ1bmN0aW9uIGsyc2lnKGtCeXRlczogVWludDhBcnJheSk6IFJlY292ZXJlZFNpZ25hdHVyZSB8IHVuZGVmaW5lZCB7XG4gICAgICAvLyBSRkMgNjk3OSBTZWN0aW9uIDMuMiwgc3RlcCAzOiBrID0gYml0czJpbnQoVClcbiAgICAgIGNvbnN0IGsgPSBiaXRzMmludChrQnl0ZXMpOyAvLyBDYW5ub3QgdXNlIGZpZWxkcyBtZXRob2RzLCBzaW5jZSBpdCBpcyBncm91cCBlbGVtZW50XG4gICAgICBpZiAoIWlzV2l0aGluQ3VydmVPcmRlcihrKSkgcmV0dXJuOyAvLyBJbXBvcnRhbnQ6IGFsbCBtb2QoKSBjYWxscyBoZXJlIG11c3QgYmUgZG9uZSBvdmVyIE5cbiAgICAgIGNvbnN0IGlrID0gaW52TihrKTsgLy8ga14tMSBtb2QgblxuICAgICAgY29uc3QgcSA9IFBvaW50LkJBU0UubXVsdGlwbHkoaykudG9BZmZpbmUoKTsgLy8gcSA9IEdrXG4gICAgICBjb25zdCByID0gbW9kTihxLngpOyAvLyByID0gcS54IG1vZCBuXG4gICAgICBpZiAociA9PT0gXzBuKSByZXR1cm47XG4gICAgICAvLyBDYW4gdXNlIHNjYWxhciBibGluZGluZyBiXi0xKGJtICsgYmRyKSB3aGVyZSBiIFx1MjIwOCBbMSxxXHUyMjEyMV0gYWNjb3JkaW5nIHRvXG4gICAgICAvLyBodHRwczovL3RjaGVzLmlhY3Iub3JnL2luZGV4LnBocC9UQ0hFUy9hcnRpY2xlL3ZpZXcvNzMzNy82NTA5LiBXZSd2ZSBkZWNpZGVkIGFnYWluc3QgaXQ6XG4gICAgICAvLyBhKSBkZXBlbmRlbmN5IG9uIENTUFJORyBiKSAxNSUgc2xvd2Rvd24gYykgZG9lc24ndCByZWFsbHkgaGVscCBzaW5jZSBiaWdpbnRzIGFyZSBub3QgQ1RcbiAgICAgIGNvbnN0IHMgPSBtb2ROKGlrICogbW9kTihtICsgciAqIGQpKTsgLy8gTm90IHVzaW5nIGJsaW5kaW5nIGhlcmVcbiAgICAgIGlmIChzID09PSBfMG4pIHJldHVybjtcbiAgICAgIGxldCByZWNvdmVyeSA9IChxLnggPT09IHIgPyAwIDogMikgfCBOdW1iZXIocS55ICYgXzFuKTsgLy8gcmVjb3ZlcnkgYml0ICgyIG9yIDMsIHdoZW4gcS54ID4gbilcbiAgICAgIGxldCBub3JtUyA9IHM7XG4gICAgICBpZiAobG93UyAmJiBpc0JpZ2dlclRoYW5IYWxmT3JkZXIocykpIHtcbiAgICAgICAgbm9ybVMgPSBub3JtYWxpemVTKHMpOyAvLyBpZiBsb3dTIHdhcyBwYXNzZWQsIGVuc3VyZSBzIGlzIGFsd2F5c1xuICAgICAgICByZWNvdmVyeSBePSAxOyAvLyAvLyBpbiB0aGUgYm90dG9tIGhhbGYgb2YgTlxuICAgICAgfVxuICAgICAgcmV0dXJuIG5ldyBTaWduYXR1cmUociwgbm9ybVMsIHJlY292ZXJ5KSBhcyBSZWNvdmVyZWRTaWduYXR1cmU7IC8vIHVzZSBub3JtUywgbm90IHNcbiAgICB9XG4gICAgcmV0dXJuIHsgc2VlZCwgazJzaWcgfTtcbiAgfVxuICBjb25zdCBkZWZhdWx0U2lnT3B0czogU2lnbk9wdHMgPSB7IGxvd1M6IENVUlZFLmxvd1MsIHByZWhhc2g6IGZhbHNlIH07XG4gIGNvbnN0IGRlZmF1bHRWZXJPcHRzOiBWZXJPcHRzID0geyBsb3dTOiBDVVJWRS5sb3dTLCBwcmVoYXNoOiBmYWxzZSB9O1xuXG4gIC8qKlxuICAgKiBTaWducyBtZXNzYWdlIGhhc2ggd2l0aCBhIHByaXZhdGUga2V5LlxuICAgKiBgYGBcbiAgICogc2lnbihtLCBkLCBrKSB3aGVyZVxuICAgKiAgICh4LCB5KSA9IEcgXHUwMEQ3IGtcbiAgICogICByID0geCBtb2QgblxuICAgKiAgIHMgPSAobSArIGRyKS9rIG1vZCBuXG4gICAqIGBgYFxuICAgKiBAcGFyYW0gbXNnSGFzaCBOT1QgbWVzc2FnZS4gbXNnIG5lZWRzIHRvIGJlIGhhc2hlZCB0byBgbXNnSGFzaGAsIG9yIHVzZSBgcHJlaGFzaGAuXG4gICAqIEBwYXJhbSBwcml2S2V5IHByaXZhdGUga2V5XG4gICAqIEBwYXJhbSBvcHRzIGxvd1MgZm9yIG5vbi1tYWxsZWFibGUgc2lncy4gZXh0cmFFbnRyb3B5IGZvciBtaXhpbmcgcmFuZG9tbmVzcyBpbnRvIGsuIHByZWhhc2ggd2lsbCBoYXNoIGZpcnN0IGFyZy5cbiAgICogQHJldHVybnMgc2lnbmF0dXJlIHdpdGggcmVjb3ZlcnkgcGFyYW1cbiAgICovXG4gIGZ1bmN0aW9uIHNpZ24obXNnSGFzaDogSGV4LCBwcml2S2V5OiBQcml2S2V5LCBvcHRzID0gZGVmYXVsdFNpZ09wdHMpOiBSZWNvdmVyZWRTaWduYXR1cmUge1xuICAgIGNvbnN0IHsgc2VlZCwgazJzaWcgfSA9IHByZXBTaWcobXNnSGFzaCwgcHJpdktleSwgb3B0cyk7IC8vIFN0ZXBzIEEsIEQgb2YgUkZDNjk3OSAzLjIuXG4gICAgY29uc3QgQyA9IENVUlZFO1xuICAgIGNvbnN0IGRyYmcgPSB1dC5jcmVhdGVIbWFjRHJiZzxSZWNvdmVyZWRTaWduYXR1cmU+KEMuaGFzaC5vdXRwdXRMZW4sIEMubkJ5dGVMZW5ndGgsIEMuaG1hYyk7XG4gICAgcmV0dXJuIGRyYmcoc2VlZCwgazJzaWcpOyAvLyBTdGVwcyBCLCBDLCBELCBFLCBGLCBHXG4gIH1cblxuICAvLyBFbmFibGUgcHJlY29tcHV0ZXMuIFNsb3dzIGRvd24gZmlyc3QgcHVibGljS2V5IGNvbXB1dGF0aW9uIGJ5IDIwbXMuXG4gIFBvaW50LkJBU0UuX3NldFdpbmRvd1NpemUoOCk7XG4gIC8vIHV0aWxzLnByZWNvbXB1dGUoOCwgUHJvamVjdGl2ZVBvaW50LkJBU0UpXG5cbiAgLyoqXG4gICAqIFZlcmlmaWVzIGEgc2lnbmF0dXJlIGFnYWluc3QgbWVzc2FnZSBoYXNoIGFuZCBwdWJsaWMga2V5LlxuICAgKiBSZWplY3RzIGxvd1Mgc2lnbmF0dXJlcyBieSBkZWZhdWx0OiB0byBvdmVycmlkZSxcbiAgICogc3BlY2lmeSBvcHRpb24gYHtsb3dTOiBmYWxzZX1gLiBJbXBsZW1lbnRzIHNlY3Rpb24gNC4xLjQgZnJvbSBodHRwczovL3d3dy5zZWNnLm9yZy9zZWMxLXYyLnBkZjpcbiAgICpcbiAgICogYGBgXG4gICAqIHZlcmlmeShyLCBzLCBoLCBQKSB3aGVyZVxuICAgKiAgIFUxID0gaHNeLTEgbW9kIG5cbiAgICogICBVMiA9IHJzXi0xIG1vZCBuXG4gICAqICAgUiA9IFUxXHUyMkM1RyAtIFUyXHUyMkM1UFxuICAgKiAgIG1vZChSLngsIG4pID09IHJcbiAgICogYGBgXG4gICAqL1xuICBmdW5jdGlvbiB2ZXJpZnkoXG4gICAgc2lnbmF0dXJlOiBIZXggfCBTaWduYXR1cmVMaWtlLFxuICAgIG1zZ0hhc2g6IEhleCxcbiAgICBwdWJsaWNLZXk6IEhleCxcbiAgICBvcHRzID0gZGVmYXVsdFZlck9wdHNcbiAgKTogYm9vbGVhbiB7XG4gICAgY29uc3Qgc2cgPSBzaWduYXR1cmU7XG4gICAgbXNnSGFzaCA9IGVuc3VyZUJ5dGVzKCdtc2dIYXNoJywgbXNnSGFzaCk7XG4gICAgcHVibGljS2V5ID0gZW5zdXJlQnl0ZXMoJ3B1YmxpY0tleScsIHB1YmxpY0tleSk7XG4gICAgaWYgKCdzdHJpY3QnIGluIG9wdHMpIHRocm93IG5ldyBFcnJvcignb3B0aW9ucy5zdHJpY3Qgd2FzIHJlbmFtZWQgdG8gbG93UycpO1xuICAgIGNvbnN0IHsgbG93UywgcHJlaGFzaCB9ID0gb3B0cztcblxuICAgIGxldCBfc2lnOiBTaWduYXR1cmUgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgbGV0IFA6IFByb2pQb2ludFR5cGU8YmlnaW50PjtcbiAgICB0cnkge1xuICAgICAgaWYgKHR5cGVvZiBzZyA9PT0gJ3N0cmluZycgfHwgc2cgaW5zdGFuY2VvZiBVaW50OEFycmF5KSB7XG4gICAgICAgIC8vIFNpZ25hdHVyZSBjYW4gYmUgcmVwcmVzZW50ZWQgaW4gMiB3YXlzOiBjb21wYWN0ICgyKm5CeXRlTGVuZ3RoKSAmIERFUiAodmFyaWFibGUtbGVuZ3RoKS5cbiAgICAgICAgLy8gU2luY2UgREVSIGNhbiBhbHNvIGJlIDIqbkJ5dGVMZW5ndGggYnl0ZXMsIHdlIGNoZWNrIGZvciBpdCBmaXJzdC5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBfc2lnID0gU2lnbmF0dXJlLmZyb21ERVIoc2cpO1xuICAgICAgICB9IGNhdGNoIChkZXJFcnJvcikge1xuICAgICAgICAgIGlmICghKGRlckVycm9yIGluc3RhbmNlb2YgREVSLkVycikpIHRocm93IGRlckVycm9yO1xuICAgICAgICAgIF9zaWcgPSBTaWduYXR1cmUuZnJvbUNvbXBhY3Qoc2cpO1xuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiBzZyA9PT0gJ29iamVjdCcgJiYgdHlwZW9mIHNnLnIgPT09ICdiaWdpbnQnICYmIHR5cGVvZiBzZy5zID09PSAnYmlnaW50Jykge1xuICAgICAgICBjb25zdCB7IHIsIHMgfSA9IHNnO1xuICAgICAgICBfc2lnID0gbmV3IFNpZ25hdHVyZShyLCBzKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignUEFSU0UnKTtcbiAgICAgIH1cbiAgICAgIFAgPSBQb2ludC5mcm9tSGV4KHB1YmxpY0tleSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGlmICgoZXJyb3IgYXMgRXJyb3IpLm1lc3NhZ2UgPT09ICdQQVJTRScpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgc2lnbmF0dXJlIG11c3QgYmUgU2lnbmF0dXJlIGluc3RhbmNlLCBVaW50OEFycmF5IG9yIGhleCBzdHJpbmdgKTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgaWYgKGxvd1MgJiYgX3NpZy5oYXNIaWdoUygpKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHByZWhhc2gpIG1zZ0hhc2ggPSBDVVJWRS5oYXNoKG1zZ0hhc2gpO1xuICAgIGNvbnN0IHsgciwgcyB9ID0gX3NpZztcbiAgICBjb25zdCBoID0gYml0czJpbnRfbW9kTihtc2dIYXNoKTsgLy8gQ2Fubm90IHVzZSBmaWVsZHMgbWV0aG9kcywgc2luY2UgaXQgaXMgZ3JvdXAgZWxlbWVudFxuICAgIGNvbnN0IGlzID0gaW52TihzKTsgLy8gc14tMVxuICAgIGNvbnN0IHUxID0gbW9kTihoICogaXMpOyAvLyB1MSA9IGhzXi0xIG1vZCBuXG4gICAgY29uc3QgdTIgPSBtb2ROKHIgKiBpcyk7IC8vIHUyID0gcnNeLTEgbW9kIG5cbiAgICBjb25zdCBSID0gUG9pbnQuQkFTRS5tdWx0aXBseUFuZEFkZFVuc2FmZShQLCB1MSwgdTIpPy50b0FmZmluZSgpOyAvLyBSID0gdTFcdTIyQzVHICsgdTJcdTIyQzVQXG4gICAgaWYgKCFSKSByZXR1cm4gZmFsc2U7XG4gICAgY29uc3QgdiA9IG1vZE4oUi54KTtcbiAgICByZXR1cm4gdiA9PT0gcjtcbiAgfVxuICByZXR1cm4ge1xuICAgIENVUlZFLFxuICAgIGdldFB1YmxpY0tleSxcbiAgICBnZXRTaGFyZWRTZWNyZXQsXG4gICAgc2lnbixcbiAgICB2ZXJpZnksXG4gICAgUHJvamVjdGl2ZVBvaW50OiBQb2ludCxcbiAgICBTaWduYXR1cmUsXG4gICAgdXRpbHMsXG4gIH07XG59XG5cbi8qKlxuICogSW1wbGVtZW50YXRpb24gb2YgdGhlIFNoYWxsdWUgYW5kIHZhbiBkZSBXb2VzdGlqbmUgbWV0aG9kIGZvciBhbnkgd2VpZXJzdHJhc3MgY3VydmUuXG4gKiBUT0RPOiBjaGVjayBpZiB0aGVyZSBpcyBhIHdheSB0byBtZXJnZSB0aGlzIHdpdGggdXZSYXRpbyBpbiBFZHdhcmRzOyBtb3ZlIHRvIG1vZHVsYXIuXG4gKiBiID0gVHJ1ZSBhbmQgeSA9IHNxcnQodSAvIHYpIGlmICh1IC8gdikgaXMgc3F1YXJlIGluIEYsIGFuZFxuICogYiA9IEZhbHNlIGFuZCB5ID0gc3FydChaICogKHUgLyB2KSkgb3RoZXJ3aXNlLlxuICogQHBhcmFtIEZwXG4gKiBAcGFyYW0gWlxuICogQHJldHVybnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIFNXVUZwU3FydFJhdGlvPFQ+KEZwOiBtb2QuSUZpZWxkPFQ+LCBaOiBUKSB7XG4gIC8vIEdlbmVyaWMgaW1wbGVtZW50YXRpb25cbiAgY29uc3QgcSA9IEZwLk9SREVSO1xuICBsZXQgbCA9IF8wbjtcbiAgZm9yIChsZXQgbyA9IHEgLSBfMW47IG8gJSBfMm4gPT09IF8wbjsgbyAvPSBfMm4pIGwgKz0gXzFuO1xuICBjb25zdCBjMSA9IGw7IC8vIDEuIGMxLCB0aGUgbGFyZ2VzdCBpbnRlZ2VyIHN1Y2ggdGhhdCAyXmMxIGRpdmlkZXMgcSAtIDEuXG4gIC8vIFdlIG5lZWQgMm4gKiogYzEgYW5kIDJuICoqIChjMS0xKS4gV2UgY2FuJ3QgdXNlICoqOyBidXQgd2UgY2FuIHVzZSA8PC5cbiAgLy8gMm4gKiogYzEgPT0gMm4gPDwgKGMxLTEpXG4gIGNvbnN0IF8ybl9wb3dfYzFfMSA9IF8ybiA8PCAoYzEgLSBfMW4gLSBfMW4pO1xuICBjb25zdCBfMm5fcG93X2MxID0gXzJuX3Bvd19jMV8xICogXzJuO1xuICBjb25zdCBjMiA9IChxIC0gXzFuKSAvIF8ybl9wb3dfYzE7IC8vIDIuIGMyID0gKHEgLSAxKSAvICgyXmMxKSAgIyBJbnRlZ2VyIGFyaXRobWV0aWNcbiAgY29uc3QgYzMgPSAoYzIgLSBfMW4pIC8gXzJuOyAvLyAzLiBjMyA9IChjMiAtIDEpIC8gMiAgICAgICAgICAgICMgSW50ZWdlciBhcml0aG1ldGljXG4gIGNvbnN0IGM0ID0gXzJuX3Bvd19jMSAtIF8xbjsgLy8gNC4gYzQgPSAyXmMxIC0gMSAgICAgICAgICAgICAgICAjIEludGVnZXIgYXJpdGhtZXRpY1xuICBjb25zdCBjNSA9IF8ybl9wb3dfYzFfMTsgLy8gNS4gYzUgPSAyXihjMSAtIDEpICAgICAgICAgICAgICAgICAgIyBJbnRlZ2VyIGFyaXRobWV0aWNcbiAgY29uc3QgYzYgPSBGcC5wb3coWiwgYzIpOyAvLyA2LiBjNiA9IFpeYzJcbiAgY29uc3QgYzcgPSBGcC5wb3coWiwgKGMyICsgXzFuKSAvIF8ybik7IC8vIDcuIGM3ID0gWl4oKGMyICsgMSkgLyAyKVxuICBsZXQgc3FydFJhdGlvID0gKHU6IFQsIHY6IFQpOiB7IGlzVmFsaWQ6IGJvb2xlYW47IHZhbHVlOiBUIH0gPT4ge1xuICAgIGxldCB0djEgPSBjNjsgLy8gMS4gdHYxID0gYzZcbiAgICBsZXQgdHYyID0gRnAucG93KHYsIGM0KTsgLy8gMi4gdHYyID0gdl5jNFxuICAgIGxldCB0djMgPSBGcC5zcXIodHYyKTsgLy8gMy4gdHYzID0gdHYyXjJcbiAgICB0djMgPSBGcC5tdWwodHYzLCB2KTsgLy8gNC4gdHYzID0gdHYzICogdlxuICAgIGxldCB0djUgPSBGcC5tdWwodSwgdHYzKTsgLy8gNS4gdHY1ID0gdSAqIHR2M1xuICAgIHR2NSA9IEZwLnBvdyh0djUsIGMzKTsgLy8gNi4gdHY1ID0gdHY1XmMzXG4gICAgdHY1ID0gRnAubXVsKHR2NSwgdHYyKTsgLy8gNy4gdHY1ID0gdHY1ICogdHYyXG4gICAgdHYyID0gRnAubXVsKHR2NSwgdik7IC8vIDguIHR2MiA9IHR2NSAqIHZcbiAgICB0djMgPSBGcC5tdWwodHY1LCB1KTsgLy8gOS4gdHYzID0gdHY1ICogdVxuICAgIGxldCB0djQgPSBGcC5tdWwodHYzLCB0djIpOyAvLyAxMC4gdHY0ID0gdHYzICogdHYyXG4gICAgdHY1ID0gRnAucG93KHR2NCwgYzUpOyAvLyAxMS4gdHY1ID0gdHY0XmM1XG4gICAgbGV0IGlzUVIgPSBGcC5lcWwodHY1LCBGcC5PTkUpOyAvLyAxMi4gaXNRUiA9IHR2NSA9PSAxXG4gICAgdHYyID0gRnAubXVsKHR2MywgYzcpOyAvLyAxMy4gdHYyID0gdHYzICogYzdcbiAgICB0djUgPSBGcC5tdWwodHY0LCB0djEpOyAvLyAxNC4gdHY1ID0gdHY0ICogdHYxXG4gICAgdHYzID0gRnAuY21vdih0djIsIHR2MywgaXNRUik7IC8vIDE1LiB0djMgPSBDTU9WKHR2MiwgdHYzLCBpc1FSKVxuICAgIHR2NCA9IEZwLmNtb3YodHY1LCB0djQsIGlzUVIpOyAvLyAxNi4gdHY0ID0gQ01PVih0djUsIHR2NCwgaXNRUilcbiAgICAvLyAxNy4gZm9yIGkgaW4gKGMxLCBjMSAtIDEsIC4uLiwgMik6XG4gICAgZm9yIChsZXQgaSA9IGMxOyBpID4gXzFuOyBpLS0pIHtcbiAgICAgIGxldCB0djUgPSBpIC0gXzJuOyAvLyAxOC4gICAgdHY1ID0gaSAtIDJcbiAgICAgIHR2NSA9IF8ybiA8PCAodHY1IC0gXzFuKTsgLy8gMTkuICAgIHR2NSA9IDJedHY1XG4gICAgICBsZXQgdHZ2NSA9IEZwLnBvdyh0djQsIHR2NSk7IC8vIDIwLiAgICB0djUgPSB0djRedHY1XG4gICAgICBjb25zdCBlMSA9IEZwLmVxbCh0dnY1LCBGcC5PTkUpOyAvLyAyMS4gICAgZTEgPSB0djUgPT0gMVxuICAgICAgdHYyID0gRnAubXVsKHR2MywgdHYxKTsgLy8gMjIuICAgIHR2MiA9IHR2MyAqIHR2MVxuICAgICAgdHYxID0gRnAubXVsKHR2MSwgdHYxKTsgLy8gMjMuICAgIHR2MSA9IHR2MSAqIHR2MVxuICAgICAgdHZ2NSA9IEZwLm11bCh0djQsIHR2MSk7IC8vIDI0LiAgICB0djUgPSB0djQgKiB0djFcbiAgICAgIHR2MyA9IEZwLmNtb3YodHYyLCB0djMsIGUxKTsgLy8gMjUuICAgIHR2MyA9IENNT1YodHYyLCB0djMsIGUxKVxuICAgICAgdHY0ID0gRnAuY21vdih0dnY1LCB0djQsIGUxKTsgLy8gMjYuICAgIHR2NCA9IENNT1YodHY1LCB0djQsIGUxKVxuICAgIH1cbiAgICByZXR1cm4geyBpc1ZhbGlkOiBpc1FSLCB2YWx1ZTogdHYzIH07XG4gIH07XG4gIGlmIChGcC5PUkRFUiAlIF80biA9PT0gXzNuKSB7XG4gICAgLy8gc3FydF9yYXRpb18zbW9kNCh1LCB2KVxuICAgIGNvbnN0IGMxID0gKEZwLk9SREVSIC0gXzNuKSAvIF80bjsgLy8gMS4gYzEgPSAocSAtIDMpIC8gNCAgICAgIyBJbnRlZ2VyIGFyaXRobWV0aWNcbiAgICBjb25zdCBjMiA9IEZwLnNxcnQoRnAubmVnKFopKTsgLy8gMi4gYzIgPSBzcXJ0KC1aKVxuICAgIHNxcnRSYXRpbyA9ICh1OiBULCB2OiBUKSA9PiB7XG4gICAgICBsZXQgdHYxID0gRnAuc3FyKHYpOyAvLyAxLiB0djEgPSB2XjJcbiAgICAgIGNvbnN0IHR2MiA9IEZwLm11bCh1LCB2KTsgLy8gMi4gdHYyID0gdSAqIHZcbiAgICAgIHR2MSA9IEZwLm11bCh0djEsIHR2Mik7IC8vIDMuIHR2MSA9IHR2MSAqIHR2MlxuICAgICAgbGV0IHkxID0gRnAucG93KHR2MSwgYzEpOyAvLyA0LiB5MSA9IHR2MV5jMVxuICAgICAgeTEgPSBGcC5tdWwoeTEsIHR2Mik7IC8vIDUuIHkxID0geTEgKiB0djJcbiAgICAgIGNvbnN0IHkyID0gRnAubXVsKHkxLCBjMik7IC8vIDYuIHkyID0geTEgKiBjMlxuICAgICAgY29uc3QgdHYzID0gRnAubXVsKEZwLnNxcih5MSksIHYpOyAvLyA3LiB0djMgPSB5MV4yOyA4LiB0djMgPSB0djMgKiB2XG4gICAgICBjb25zdCBpc1FSID0gRnAuZXFsKHR2MywgdSk7IC8vIDkuIGlzUVIgPSB0djMgPT0gdVxuICAgICAgbGV0IHkgPSBGcC5jbW92KHkyLCB5MSwgaXNRUik7IC8vIDEwLiB5ID0gQ01PVih5MiwgeTEsIGlzUVIpXG4gICAgICByZXR1cm4geyBpc1ZhbGlkOiBpc1FSLCB2YWx1ZTogeSB9OyAvLyAxMS4gcmV0dXJuIChpc1FSLCB5KSBpc1FSID8geSA6IHkqYzJcbiAgICB9O1xuICB9XG4gIC8vIE5vIGN1cnZlcyB1c2VzIHRoYXRcbiAgLy8gaWYgKEZwLk9SREVSICUgXzhuID09PSBfNW4pIC8vIHNxcnRfcmF0aW9fNW1vZDhcbiAgcmV0dXJuIHNxcnRSYXRpbztcbn1cbi8qKlxuICogU2ltcGxpZmllZCBTaGFsbHVlLXZhbiBkZSBXb2VzdGlqbmUtVWxhcyBNZXRob2RcbiAqIGh0dHBzOi8vd3d3LnJmYy1lZGl0b3Iub3JnL3JmYy9yZmM5MzgwI3NlY3Rpb24tNi42LjJcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1hcFRvQ3VydmVTaW1wbGVTV1U8VD4oXG4gIEZwOiBtb2QuSUZpZWxkPFQ+LFxuICBvcHRzOiB7XG4gICAgQTogVDtcbiAgICBCOiBUO1xuICAgIFo6IFQ7XG4gIH1cbikge1xuICBtb2QudmFsaWRhdGVGaWVsZChGcCk7XG4gIGlmICghRnAuaXNWYWxpZChvcHRzLkEpIHx8ICFGcC5pc1ZhbGlkKG9wdHMuQikgfHwgIUZwLmlzVmFsaWQob3B0cy5aKSlcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ21hcFRvQ3VydmVTaW1wbGVTV1U6IGludmFsaWQgb3B0cycpO1xuICBjb25zdCBzcXJ0UmF0aW8gPSBTV1VGcFNxcnRSYXRpbyhGcCwgb3B0cy5aKTtcbiAgaWYgKCFGcC5pc09kZCkgdGhyb3cgbmV3IEVycm9yKCdGcC5pc09kZCBpcyBub3QgaW1wbGVtZW50ZWQhJyk7XG4gIC8vIElucHV0OiB1LCBhbiBlbGVtZW50IG9mIEYuXG4gIC8vIE91dHB1dDogKHgsIHkpLCBhIHBvaW50IG9uIEUuXG4gIHJldHVybiAodTogVCk6IHsgeDogVDsgeTogVCB9ID0+IHtcbiAgICAvLyBwcmV0dGllci1pZ25vcmVcbiAgICBsZXQgdHYxLCB0djIsIHR2MywgdHY0LCB0djUsIHR2NiwgeCwgeTtcbiAgICB0djEgPSBGcC5zcXIodSk7IC8vIDEuICB0djEgPSB1XjJcbiAgICB0djEgPSBGcC5tdWwodHYxLCBvcHRzLlopOyAvLyAyLiAgdHYxID0gWiAqIHR2MVxuICAgIHR2MiA9IEZwLnNxcih0djEpOyAvLyAzLiAgdHYyID0gdHYxXjJcbiAgICB0djIgPSBGcC5hZGQodHYyLCB0djEpOyAvLyA0LiAgdHYyID0gdHYyICsgdHYxXG4gICAgdHYzID0gRnAuYWRkKHR2MiwgRnAuT05FKTsgLy8gNS4gIHR2MyA9IHR2MiArIDFcbiAgICB0djMgPSBGcC5tdWwodHYzLCBvcHRzLkIpOyAvLyA2LiAgdHYzID0gQiAqIHR2M1xuICAgIHR2NCA9IEZwLmNtb3Yob3B0cy5aLCBGcC5uZWcodHYyKSwgIUZwLmVxbCh0djIsIEZwLlpFUk8pKTsgLy8gNy4gIHR2NCA9IENNT1YoWiwgLXR2MiwgdHYyICE9IDApXG4gICAgdHY0ID0gRnAubXVsKHR2NCwgb3B0cy5BKTsgLy8gOC4gIHR2NCA9IEEgKiB0djRcbiAgICB0djIgPSBGcC5zcXIodHYzKTsgLy8gOS4gIHR2MiA9IHR2M14yXG4gICAgdHY2ID0gRnAuc3FyKHR2NCk7IC8vIDEwLiB0djYgPSB0djReMlxuICAgIHR2NSA9IEZwLm11bCh0djYsIG9wdHMuQSk7IC8vIDExLiB0djUgPSBBICogdHY2XG4gICAgdHYyID0gRnAuYWRkKHR2MiwgdHY1KTsgLy8gMTIuIHR2MiA9IHR2MiArIHR2NVxuICAgIHR2MiA9IEZwLm11bCh0djIsIHR2Myk7IC8vIDEzLiB0djIgPSB0djIgKiB0djNcbiAgICB0djYgPSBGcC5tdWwodHY2LCB0djQpOyAvLyAxNC4gdHY2ID0gdHY2ICogdHY0XG4gICAgdHY1ID0gRnAubXVsKHR2Niwgb3B0cy5CKTsgLy8gMTUuIHR2NSA9IEIgKiB0djZcbiAgICB0djIgPSBGcC5hZGQodHYyLCB0djUpOyAvLyAxNi4gdHYyID0gdHYyICsgdHY1XG4gICAgeCA9IEZwLm11bCh0djEsIHR2Myk7IC8vIDE3LiAgIHggPSB0djEgKiB0djNcbiAgICBjb25zdCB7IGlzVmFsaWQsIHZhbHVlIH0gPSBzcXJ0UmF0aW8odHYyLCB0djYpOyAvLyAxOC4gKGlzX2d4MV9zcXVhcmUsIHkxKSA9IHNxcnRfcmF0aW8odHYyLCB0djYpXG4gICAgeSA9IEZwLm11bCh0djEsIHUpOyAvLyAxOS4gICB5ID0gdHYxICogdSAgLT4gWiAqIHVeMyAqIHkxXG4gICAgeSA9IEZwLm11bCh5LCB2YWx1ZSk7IC8vIDIwLiAgIHkgPSB5ICogeTFcbiAgICB4ID0gRnAuY21vdih4LCB0djMsIGlzVmFsaWQpOyAvLyAyMS4gICB4ID0gQ01PVih4LCB0djMsIGlzX2d4MV9zcXVhcmUpXG4gICAgeSA9IEZwLmNtb3YoeSwgdmFsdWUsIGlzVmFsaWQpOyAvLyAyMi4gICB5ID0gQ01PVih5LCB5MSwgaXNfZ3gxX3NxdWFyZSlcbiAgICBjb25zdCBlMSA9IEZwLmlzT2RkISh1KSA9PT0gRnAuaXNPZGQhKHkpOyAvLyAyMy4gIGUxID0gc2duMCh1KSA9PSBzZ24wKHkpXG4gICAgeSA9IEZwLmNtb3YoRnAubmVnKHkpLCB5LCBlMSk7IC8vIDI0LiAgIHkgPSBDTU9WKC15LCB5LCBlMSlcbiAgICB4ID0gRnAuZGl2KHgsIHR2NCk7IC8vIDI1LiAgIHggPSB4IC8gdHY0XG4gICAgcmV0dXJuIHsgeCwgeSB9O1xuICB9O1xufVxuIiwgImltcG9ydCB7IGhhc2ggYXMgYXNzZXJ0SGFzaCwgYnl0ZXMgYXMgYXNzZXJ0Qnl0ZXMsIGV4aXN0cyBhcyBhc3NlcnRFeGlzdHMgfSBmcm9tICcuL19hc3NlcnQuanMnO1xuaW1wb3J0IHsgSGFzaCwgQ0hhc2gsIElucHV0LCB0b0J5dGVzIH0gZnJvbSAnLi91dGlscy5qcyc7XG4vLyBITUFDIChSRkMgMjEwNClcbmV4cG9ydCBjbGFzcyBITUFDPFQgZXh0ZW5kcyBIYXNoPFQ+PiBleHRlbmRzIEhhc2g8SE1BQzxUPj4ge1xuICBvSGFzaDogVDtcbiAgaUhhc2g6IFQ7XG4gIGJsb2NrTGVuOiBudW1iZXI7XG4gIG91dHB1dExlbjogbnVtYmVyO1xuICBwcml2YXRlIGZpbmlzaGVkID0gZmFsc2U7XG4gIHByaXZhdGUgZGVzdHJveWVkID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoaGFzaDogQ0hhc2gsIF9rZXk6IElucHV0KSB7XG4gICAgc3VwZXIoKTtcbiAgICBhc3NlcnRIYXNoKGhhc2gpO1xuICAgIGNvbnN0IGtleSA9IHRvQnl0ZXMoX2tleSk7XG4gICAgdGhpcy5pSGFzaCA9IGhhc2guY3JlYXRlKCkgYXMgVDtcbiAgICBpZiAodHlwZW9mIHRoaXMuaUhhc2gudXBkYXRlICE9PSAnZnVuY3Rpb24nKVxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdFeHBlY3RlZCBpbnN0YW5jZSBvZiBjbGFzcyB3aGljaCBleHRlbmRzIHV0aWxzLkhhc2gnKTtcbiAgICB0aGlzLmJsb2NrTGVuID0gdGhpcy5pSGFzaC5ibG9ja0xlbjtcbiAgICB0aGlzLm91dHB1dExlbiA9IHRoaXMuaUhhc2gub3V0cHV0TGVuO1xuICAgIGNvbnN0IGJsb2NrTGVuID0gdGhpcy5ibG9ja0xlbjtcbiAgICBjb25zdCBwYWQgPSBuZXcgVWludDhBcnJheShibG9ja0xlbik7XG4gICAgLy8gYmxvY2tMZW4gY2FuIGJlIGJpZ2dlciB0aGFuIG91dHB1dExlblxuICAgIHBhZC5zZXQoa2V5Lmxlbmd0aCA+IGJsb2NrTGVuID8gaGFzaC5jcmVhdGUoKS51cGRhdGUoa2V5KS5kaWdlc3QoKSA6IGtleSk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwYWQubGVuZ3RoOyBpKyspIHBhZFtpXSBePSAweDM2O1xuICAgIHRoaXMuaUhhc2gudXBkYXRlKHBhZCk7XG4gICAgLy8gQnkgZG9pbmcgdXBkYXRlIChwcm9jZXNzaW5nIG9mIGZpcnN0IGJsb2NrKSBvZiBvdXRlciBoYXNoIGhlcmUgd2UgY2FuIHJlLXVzZSBpdCBiZXR3ZWVuIG11bHRpcGxlIGNhbGxzIHZpYSBjbG9uZVxuICAgIHRoaXMub0hhc2ggPSBoYXNoLmNyZWF0ZSgpIGFzIFQ7XG4gICAgLy8gVW5kbyBpbnRlcm5hbCBYT1IgJiYgYXBwbHkgb3V0ZXIgWE9SXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwYWQubGVuZ3RoOyBpKyspIHBhZFtpXSBePSAweDM2IF4gMHg1YztcbiAgICB0aGlzLm9IYXNoLnVwZGF0ZShwYWQpO1xuICAgIHBhZC5maWxsKDApO1xuICB9XG4gIHVwZGF0ZShidWY6IElucHV0KSB7XG4gICAgYXNzZXJ0RXhpc3RzKHRoaXMpO1xuICAgIHRoaXMuaUhhc2gudXBkYXRlKGJ1Zik7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cbiAgZGlnZXN0SW50byhvdXQ6IFVpbnQ4QXJyYXkpIHtcbiAgICBhc3NlcnRFeGlzdHModGhpcyk7XG4gICAgYXNzZXJ0Qnl0ZXMob3V0LCB0aGlzLm91dHB1dExlbik7XG4gICAgdGhpcy5maW5pc2hlZCA9IHRydWU7XG4gICAgdGhpcy5pSGFzaC5kaWdlc3RJbnRvKG91dCk7XG4gICAgdGhpcy5vSGFzaC51cGRhdGUob3V0KTtcbiAgICB0aGlzLm9IYXNoLmRpZ2VzdEludG8ob3V0KTtcbiAgICB0aGlzLmRlc3Ryb3koKTtcbiAgfVxuICBkaWdlc3QoKSB7XG4gICAgY29uc3Qgb3V0ID0gbmV3IFVpbnQ4QXJyYXkodGhpcy5vSGFzaC5vdXRwdXRMZW4pO1xuICAgIHRoaXMuZGlnZXN0SW50byhvdXQpO1xuICAgIHJldHVybiBvdXQ7XG4gIH1cbiAgX2Nsb25lSW50byh0bz86IEhNQUM8VD4pOiBITUFDPFQ+IHtcbiAgICAvLyBDcmVhdGUgbmV3IGluc3RhbmNlIHdpdGhvdXQgY2FsbGluZyBjb25zdHJ1Y3RvciBzaW5jZSBrZXkgYWxyZWFkeSBpbiBzdGF0ZSBhbmQgd2UgZG9uJ3Qga25vdyBpdC5cbiAgICB0byB8fD0gT2JqZWN0LmNyZWF0ZShPYmplY3QuZ2V0UHJvdG90eXBlT2YodGhpcyksIHt9KTtcbiAgICBjb25zdCB7IG9IYXNoLCBpSGFzaCwgZmluaXNoZWQsIGRlc3Ryb3llZCwgYmxvY2tMZW4sIG91dHB1dExlbiB9ID0gdGhpcztcbiAgICB0byA9IHRvIGFzIHRoaXM7XG4gICAgdG8uZmluaXNoZWQgPSBmaW5pc2hlZDtcbiAgICB0by5kZXN0cm95ZWQgPSBkZXN0cm95ZWQ7XG4gICAgdG8uYmxvY2tMZW4gPSBibG9ja0xlbjtcbiAgICB0by5vdXRwdXRMZW4gPSBvdXRwdXRMZW47XG4gICAgdG8ub0hhc2ggPSBvSGFzaC5fY2xvbmVJbnRvKHRvLm9IYXNoKTtcbiAgICB0by5pSGFzaCA9IGlIYXNoLl9jbG9uZUludG8odG8uaUhhc2gpO1xuICAgIHJldHVybiB0bztcbiAgfVxuICBkZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveWVkID0gdHJ1ZTtcbiAgICB0aGlzLm9IYXNoLmRlc3Ryb3koKTtcbiAgICB0aGlzLmlIYXNoLmRlc3Ryb3koKTtcbiAgfVxufVxuXG4vKipcbiAqIEhNQUM6IFJGQzIxMDQgbWVzc2FnZSBhdXRoZW50aWNhdGlvbiBjb2RlLlxuICogQHBhcmFtIGhhc2ggLSBmdW5jdGlvbiB0aGF0IHdvdWxkIGJlIHVzZWQgZS5nLiBzaGEyNTZcbiAqIEBwYXJhbSBrZXkgLSBtZXNzYWdlIGtleVxuICogQHBhcmFtIG1lc3NhZ2UgLSBtZXNzYWdlIGRhdGFcbiAqL1xuZXhwb3J0IGNvbnN0IGhtYWMgPSAoaGFzaDogQ0hhc2gsIGtleTogSW5wdXQsIG1lc3NhZ2U6IElucHV0KTogVWludDhBcnJheSA9PlxuICBuZXcgSE1BQzxhbnk+KGhhc2gsIGtleSkudXBkYXRlKG1lc3NhZ2UpLmRpZ2VzdCgpO1xuaG1hYy5jcmVhdGUgPSAoaGFzaDogQ0hhc2gsIGtleTogSW5wdXQpID0+IG5ldyBITUFDPGFueT4oaGFzaCwga2V5KTtcbiIsICIvKiEgbm9ibGUtY3VydmVzIC0gTUlUIExpY2Vuc2UgKGMpIDIwMjIgUGF1bCBNaWxsZXIgKHBhdWxtaWxsci5jb20pICovXG5pbXBvcnQgeyBobWFjIH0gZnJvbSAnQG5vYmxlL2hhc2hlcy9obWFjJztcbmltcG9ydCB7IGNvbmNhdEJ5dGVzLCByYW5kb21CeXRlcyB9IGZyb20gJ0Bub2JsZS9oYXNoZXMvdXRpbHMnO1xuaW1wb3J0IHsgd2VpZXJzdHJhc3MsIEN1cnZlVHlwZSB9IGZyb20gJy4vYWJzdHJhY3Qvd2VpZXJzdHJhc3MuanMnO1xuaW1wb3J0IHsgQ0hhc2ggfSBmcm9tICcuL2Fic3RyYWN0L3V0aWxzLmpzJztcblxuLy8gY29ubmVjdHMgbm9ibGUtY3VydmVzIHRvIG5vYmxlLWhhc2hlc1xuZXhwb3J0IGZ1bmN0aW9uIGdldEhhc2goaGFzaDogQ0hhc2gpIHtcbiAgcmV0dXJuIHtcbiAgICBoYXNoLFxuICAgIGhtYWM6IChrZXk6IFVpbnQ4QXJyYXksIC4uLm1zZ3M6IFVpbnQ4QXJyYXlbXSkgPT4gaG1hYyhoYXNoLCBrZXksIGNvbmNhdEJ5dGVzKC4uLm1zZ3MpKSxcbiAgICByYW5kb21CeXRlcyxcbiAgfTtcbn1cbi8vIFNhbWUgQVBJIGFzIEBub2JsZS9oYXNoZXMsIHdpdGggYWJpbGl0eSB0byBjcmVhdGUgY3VydmUgd2l0aCBjdXN0b20gaGFzaFxudHlwZSBDdXJ2ZURlZiA9IFJlYWRvbmx5PE9taXQ8Q3VydmVUeXBlLCAnaGFzaCcgfCAnaG1hYycgfCAncmFuZG9tQnl0ZXMnPj47XG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQ3VydmUoY3VydmVEZWY6IEN1cnZlRGVmLCBkZWZIYXNoOiBDSGFzaCkge1xuICBjb25zdCBjcmVhdGUgPSAoaGFzaDogQ0hhc2gpID0+IHdlaWVyc3RyYXNzKHsgLi4uY3VydmVEZWYsIC4uLmdldEhhc2goaGFzaCkgfSk7XG4gIHJldHVybiBPYmplY3QuZnJlZXplKHsgLi4uY3JlYXRlKGRlZkhhc2gpLCBjcmVhdGUgfSk7XG59XG4iLCAiLyohIG5vYmxlLWN1cnZlcyAtIE1JVCBMaWNlbnNlIChjKSAyMDIyIFBhdWwgTWlsbGVyIChwYXVsbWlsbHIuY29tKSAqL1xuaW1wb3J0IHsgc2hhMjU2IH0gZnJvbSAnQG5vYmxlL2hhc2hlcy9zaGEyNTYnO1xuaW1wb3J0IHsgcmFuZG9tQnl0ZXMgfSBmcm9tICdAbm9ibGUvaGFzaGVzL3V0aWxzJztcbmltcG9ydCB7IEZpZWxkLCBtb2QsIHBvdzIgfSBmcm9tICcuL2Fic3RyYWN0L21vZHVsYXIuanMnO1xuaW1wb3J0IHsgUHJvalBvaW50VHlwZSBhcyBQb2ludFR5cGUsIG1hcFRvQ3VydmVTaW1wbGVTV1UgfSBmcm9tICcuL2Fic3RyYWN0L3dlaWVyc3RyYXNzLmpzJztcbmltcG9ydCB0eXBlIHsgSGV4LCBQcml2S2V5IH0gZnJvbSAnLi9hYnN0cmFjdC91dGlscy5qcyc7XG5pbXBvcnQgeyBieXRlc1RvTnVtYmVyQkUsIGNvbmNhdEJ5dGVzLCBlbnN1cmVCeXRlcywgbnVtYmVyVG9CeXRlc0JFIH0gZnJvbSAnLi9hYnN0cmFjdC91dGlscy5qcyc7XG5pbXBvcnQgeyBjcmVhdGVIYXNoZXIsIGlzb2dlbnlNYXAgfSBmcm9tICcuL2Fic3RyYWN0L2hhc2gtdG8tY3VydmUuanMnO1xuaW1wb3J0IHsgY3JlYXRlQ3VydmUgfSBmcm9tICcuL19zaG9ydHdfdXRpbHMuanMnO1xuXG5jb25zdCBzZWNwMjU2azFQID0gQmlnSW50KCcweGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlZmZmZmZjMmYnKTtcbmNvbnN0IHNlY3AyNTZrMU4gPSBCaWdJbnQoJzB4ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmViYWFlZGNlNmFmNDhhMDNiYmZkMjVlOGNkMDM2NDE0MScpO1xuY29uc3QgXzFuID0gQmlnSW50KDEpO1xuY29uc3QgXzJuID0gQmlnSW50KDIpO1xuY29uc3QgZGl2TmVhcmVzdCA9IChhOiBiaWdpbnQsIGI6IGJpZ2ludCkgPT4gKGEgKyBiIC8gXzJuKSAvIGI7XG5cbi8qKlxuICogXHUyMjFBbiA9IG5eKChwKzEpLzQpIGZvciBmaWVsZHMgcCA9IDMgbW9kIDQuIFdlIHVud3JhcCB0aGUgbG9vcCBhbmQgbXVsdGlwbHkgYml0LWJ5LWJpdC5cbiAqIChQKzFuLzRuKS50b1N0cmluZygyKSB3b3VsZCBwcm9kdWNlIGJpdHMgWzIyM3ggMSwgMCwgMjJ4IDEsIDR4IDAsIDExLCAwMF1cbiAqL1xuZnVuY3Rpb24gc3FydE1vZCh5OiBiaWdpbnQpOiBiaWdpbnQge1xuICBjb25zdCBQID0gc2VjcDI1NmsxUDtcbiAgLy8gcHJldHRpZXItaWdub3JlXG4gIGNvbnN0IF8zbiA9IEJpZ0ludCgzKSwgXzZuID0gQmlnSW50KDYpLCBfMTFuID0gQmlnSW50KDExKSwgXzIybiA9IEJpZ0ludCgyMik7XG4gIC8vIHByZXR0aWVyLWlnbm9yZVxuICBjb25zdCBfMjNuID0gQmlnSW50KDIzKSwgXzQ0biA9IEJpZ0ludCg0NCksIF84OG4gPSBCaWdJbnQoODgpO1xuICBjb25zdCBiMiA9ICh5ICogeSAqIHkpICUgUDsgLy8geF4zLCAxMVxuICBjb25zdCBiMyA9IChiMiAqIGIyICogeSkgJSBQOyAvLyB4XjdcbiAgY29uc3QgYjYgPSAocG93MihiMywgXzNuLCBQKSAqIGIzKSAlIFA7XG4gIGNvbnN0IGI5ID0gKHBvdzIoYjYsIF8zbiwgUCkgKiBiMykgJSBQO1xuICBjb25zdCBiMTEgPSAocG93MihiOSwgXzJuLCBQKSAqIGIyKSAlIFA7XG4gIGNvbnN0IGIyMiA9IChwb3cyKGIxMSwgXzExbiwgUCkgKiBiMTEpICUgUDtcbiAgY29uc3QgYjQ0ID0gKHBvdzIoYjIyLCBfMjJuLCBQKSAqIGIyMikgJSBQO1xuICBjb25zdCBiODggPSAocG93MihiNDQsIF80NG4sIFApICogYjQ0KSAlIFA7XG4gIGNvbnN0IGIxNzYgPSAocG93MihiODgsIF84OG4sIFApICogYjg4KSAlIFA7XG4gIGNvbnN0IGIyMjAgPSAocG93MihiMTc2LCBfNDRuLCBQKSAqIGI0NCkgJSBQO1xuICBjb25zdCBiMjIzID0gKHBvdzIoYjIyMCwgXzNuLCBQKSAqIGIzKSAlIFA7XG4gIGNvbnN0IHQxID0gKHBvdzIoYjIyMywgXzIzbiwgUCkgKiBiMjIpICUgUDtcbiAgY29uc3QgdDIgPSAocG93Mih0MSwgXzZuLCBQKSAqIGIyKSAlIFA7XG4gIGNvbnN0IHJvb3QgPSBwb3cyKHQyLCBfMm4sIFApO1xuICBpZiAoIUZwLmVxbChGcC5zcXIocm9vdCksIHkpKSB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBmaW5kIHNxdWFyZSByb290Jyk7XG4gIHJldHVybiByb290O1xufVxuXG5jb25zdCBGcCA9IEZpZWxkKHNlY3AyNTZrMVAsIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCB7IHNxcnQ6IHNxcnRNb2QgfSk7XG5cbmV4cG9ydCBjb25zdCBzZWNwMjU2azEgPSBjcmVhdGVDdXJ2ZShcbiAge1xuICAgIGE6IEJpZ0ludCgwKSwgLy8gZXF1YXRpb24gcGFyYW1zOiBhLCBiXG4gICAgYjogQmlnSW50KDcpLCAvLyBTZWVtIHRvIGJlIHJpZ2lkOiBiaXRjb2ludGFsay5vcmcvaW5kZXgucGhwP3RvcGljPTI4OTc5NS5tc2czMTgzOTc1I21zZzMxODM5NzVcbiAgICBGcCwgLy8gRmllbGQncyBwcmltZTogMm4qKjI1Nm4gLSAybioqMzJuIC0gMm4qKjluIC0gMm4qKjhuIC0gMm4qKjduIC0gMm4qKjZuIC0gMm4qKjRuIC0gMW5cbiAgICBuOiBzZWNwMjU2azFOLCAvLyBDdXJ2ZSBvcmRlciwgdG90YWwgY291bnQgb2YgdmFsaWQgcG9pbnRzIGluIHRoZSBmaWVsZFxuICAgIC8vIEJhc2UgcG9pbnQgKHgsIHkpIGFrYSBnZW5lcmF0b3IgcG9pbnRcbiAgICBHeDogQmlnSW50KCc1NTA2NjI2MzAyMjI3NzM0MzY2OTU3ODcxODg5NTE2ODUzNDMyNjI1MDYwMzQ1Mzc3NzU5NDE3NTUwMDE4NzM2MDM4OTExNjcyOTI0MCcpLFxuICAgIEd5OiBCaWdJbnQoJzMyNjcwNTEwMDIwNzU4ODE2OTc4MDgzMDg1MTMwNTA3MDQzMTg0NDcxMjczMzgwNjU5MjQzMjc1OTM4OTA0MzM1NzU3MzM3NDgyNDI0JyksXG4gICAgaDogQmlnSW50KDEpLCAvLyBDb2ZhY3RvclxuICAgIGxvd1M6IHRydWUsIC8vIEFsbG93IG9ubHkgbG93LVMgc2lnbmF0dXJlcyBieSBkZWZhdWx0IGluIHNpZ24oKSBhbmQgdmVyaWZ5KClcbiAgICAvKipcbiAgICAgKiBzZWNwMjU2azEgYmVsb25ncyB0byBLb2JsaXR6IGN1cnZlczogaXQgaGFzIGVmZmljaWVudGx5IGNvbXB1dGFibGUgZW5kb21vcnBoaXNtLlxuICAgICAqIEVuZG9tb3JwaGlzbSB1c2VzIDJ4IGxlc3MgUkFNLCBzcGVlZHMgdXAgcHJlY29tcHV0YXRpb24gYnkgMnggYW5kIEVDREggLyBrZXkgcmVjb3ZlcnkgYnkgMjAlLlxuICAgICAqIEZvciBwcmVjb21wdXRlZCB3TkFGIGl0IHRyYWRlcyBvZmYgMS8yIGluaXQgdGltZSAmIDEvMyByYW0gZm9yIDIwJSBwZXJmIGhpdC5cbiAgICAgKiBFeHBsYW5hdGlvbjogaHR0cHM6Ly9naXN0LmdpdGh1Yi5jb20vcGF1bG1pbGxyL2ViNjcwODA2NzkzZTg0ZGY2MjhhN2M0MzRhODczMDY2XG4gICAgICovXG4gICAgZW5kbzoge1xuICAgICAgYmV0YTogQmlnSW50KCcweDdhZTk2YTJiNjU3YzA3MTA2ZTY0NDc5ZWFjMzQzNGU5OWNmMDQ5NzUxMmY1ODk5NWMxMzk2YzI4NzE5NTAxZWUnKSxcbiAgICAgIHNwbGl0U2NhbGFyOiAoazogYmlnaW50KSA9PiB7XG4gICAgICAgIGNvbnN0IG4gPSBzZWNwMjU2azFOO1xuICAgICAgICBjb25zdCBhMSA9IEJpZ0ludCgnMHgzMDg2ZDIyMWE3ZDQ2YmNkZTg2YzkwZTQ5Mjg0ZWIxNScpO1xuICAgICAgICBjb25zdCBiMSA9IC1fMW4gKiBCaWdJbnQoJzB4ZTQ0MzdlZDYwMTBlODgyODZmNTQ3ZmE5MGFiZmU0YzMnKTtcbiAgICAgICAgY29uc3QgYTIgPSBCaWdJbnQoJzB4MTE0Y2E1MGY3YThlMmYzZjY1N2MxMTA4ZDlkNDRjZmQ4Jyk7XG4gICAgICAgIGNvbnN0IGIyID0gYTE7XG4gICAgICAgIGNvbnN0IFBPV18yXzEyOCA9IEJpZ0ludCgnMHgxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAnKTsgLy8gKDJuKioxMjhuKS50b1N0cmluZygxNilcblxuICAgICAgICBjb25zdCBjMSA9IGRpdk5lYXJlc3QoYjIgKiBrLCBuKTtcbiAgICAgICAgY29uc3QgYzIgPSBkaXZOZWFyZXN0KC1iMSAqIGssIG4pO1xuICAgICAgICBsZXQgazEgPSBtb2QoayAtIGMxICogYTEgLSBjMiAqIGEyLCBuKTtcbiAgICAgICAgbGV0IGsyID0gbW9kKC1jMSAqIGIxIC0gYzIgKiBiMiwgbik7XG4gICAgICAgIGNvbnN0IGsxbmVnID0gazEgPiBQT1dfMl8xMjg7XG4gICAgICAgIGNvbnN0IGsybmVnID0gazIgPiBQT1dfMl8xMjg7XG4gICAgICAgIGlmIChrMW5lZykgazEgPSBuIC0gazE7XG4gICAgICAgIGlmIChrMm5lZykgazIgPSBuIC0gazI7XG4gICAgICAgIGlmIChrMSA+IFBPV18yXzEyOCB8fCBrMiA+IFBPV18yXzEyOCkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcignc3BsaXRTY2FsYXI6IEVuZG9tb3JwaGlzbSBmYWlsZWQsIGs9JyArIGspO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7IGsxbmVnLCBrMSwgazJuZWcsIGsyIH07XG4gICAgICB9LFxuICAgIH0sXG4gIH0sXG4gIHNoYTI1NlxuKTtcblxuLy8gU2Nobm9yciBzaWduYXR1cmVzIGFyZSBzdXBlcmlvciB0byBFQ0RTQSBmcm9tIGFib3ZlLiBCZWxvdyBpcyBTY2hub3JyLXNwZWNpZmljIEJJUDAzNDAgY29kZS5cbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9iaXRjb2luL2JpcHMvYmxvYi9tYXN0ZXIvYmlwLTAzNDAubWVkaWF3aWtpXG5jb25zdCBfMG4gPSBCaWdJbnQoMCk7XG5jb25zdCBmZSA9ICh4OiBiaWdpbnQpID0+IHR5cGVvZiB4ID09PSAnYmlnaW50JyAmJiBfMG4gPCB4ICYmIHggPCBzZWNwMjU2azFQO1xuY29uc3QgZ2UgPSAoeDogYmlnaW50KSA9PiB0eXBlb2YgeCA9PT0gJ2JpZ2ludCcgJiYgXzBuIDwgeCAmJiB4IDwgc2VjcDI1NmsxTjtcbi8qKiBBbiBvYmplY3QgbWFwcGluZyB0YWdzIHRvIHRoZWlyIHRhZ2dlZCBoYXNoIHByZWZpeCBvZiBbU0hBMjU2KHRhZykgfCBTSEEyNTYodGFnKV0gKi9cbmNvbnN0IFRBR0dFRF9IQVNIX1BSRUZJWEVTOiB7IFt0YWc6IHN0cmluZ106IFVpbnQ4QXJyYXkgfSA9IHt9O1xuZnVuY3Rpb24gdGFnZ2VkSGFzaCh0YWc6IHN0cmluZywgLi4ubWVzc2FnZXM6IFVpbnQ4QXJyYXlbXSk6IFVpbnQ4QXJyYXkge1xuICBsZXQgdGFnUCA9IFRBR0dFRF9IQVNIX1BSRUZJWEVTW3RhZ107XG4gIGlmICh0YWdQID09PSB1bmRlZmluZWQpIHtcbiAgICBjb25zdCB0YWdIID0gc2hhMjU2KFVpbnQ4QXJyYXkuZnJvbSh0YWcsIChjKSA9PiBjLmNoYXJDb2RlQXQoMCkpKTtcbiAgICB0YWdQID0gY29uY2F0Qnl0ZXModGFnSCwgdGFnSCk7XG4gICAgVEFHR0VEX0hBU0hfUFJFRklYRVNbdGFnXSA9IHRhZ1A7XG4gIH1cbiAgcmV0dXJuIHNoYTI1Nihjb25jYXRCeXRlcyh0YWdQLCAuLi5tZXNzYWdlcykpO1xufVxuXG4vLyBFQ0RTQSBjb21wYWN0IHBvaW50cyBhcmUgMzMtYnl0ZS4gU2Nobm9yciBpcyAzMjogd2Ugc3RyaXAgZmlyc3QgYnl0ZSAweDAyIG9yIDB4MDNcbmNvbnN0IHBvaW50VG9CeXRlcyA9IChwb2ludDogUG9pbnRUeXBlPGJpZ2ludD4pID0+IHBvaW50LnRvUmF3Qnl0ZXModHJ1ZSkuc2xpY2UoMSk7XG5jb25zdCBudW1UbzMyYiA9IChuOiBiaWdpbnQpID0+IG51bWJlclRvQnl0ZXNCRShuLCAzMik7XG5jb25zdCBtb2RQID0gKHg6IGJpZ2ludCkgPT4gbW9kKHgsIHNlY3AyNTZrMVApO1xuY29uc3QgbW9kTiA9ICh4OiBiaWdpbnQpID0+IG1vZCh4LCBzZWNwMjU2azFOKTtcbmNvbnN0IFBvaW50ID0gc2VjcDI1NmsxLlByb2plY3RpdmVQb2ludDtcbmNvbnN0IEdtdWxBZGQgPSAoUTogUG9pbnRUeXBlPGJpZ2ludD4sIGE6IGJpZ2ludCwgYjogYmlnaW50KSA9PlxuICBQb2ludC5CQVNFLm11bHRpcGx5QW5kQWRkVW5zYWZlKFEsIGEsIGIpO1xuXG4vLyBDYWxjdWxhdGUgcG9pbnQsIHNjYWxhciBhbmQgYnl0ZXNcbmZ1bmN0aW9uIHNjaG5vcnJHZXRFeHRQdWJLZXkocHJpdjogUHJpdktleSkge1xuICBsZXQgZF8gPSBzZWNwMjU2azEudXRpbHMubm9ybVByaXZhdGVLZXlUb1NjYWxhcihwcml2KTsgLy8gc2FtZSBtZXRob2QgZXhlY3V0ZWQgaW4gZnJvbVByaXZhdGVLZXlcbiAgbGV0IHAgPSBQb2ludC5mcm9tUHJpdmF0ZUtleShkXyk7IC8vIFAgPSBkJ1x1MjJDNUc7IDAgPCBkJyA8IG4gY2hlY2sgaXMgZG9uZSBpbnNpZGVcbiAgY29uc3Qgc2NhbGFyID0gcC5oYXNFdmVuWSgpID8gZF8gOiBtb2ROKC1kXyk7XG4gIHJldHVybiB7IHNjYWxhcjogc2NhbGFyLCBieXRlczogcG9pbnRUb0J5dGVzKHApIH07XG59XG4vKipcbiAqIGxpZnRfeCBmcm9tIEJJUDM0MC4gQ29udmVydCAzMi1ieXRlIHggY29vcmRpbmF0ZSB0byBlbGxpcHRpYyBjdXJ2ZSBwb2ludC5cbiAqIEByZXR1cm5zIHZhbGlkIHBvaW50IGNoZWNrZWQgZm9yIGJlaW5nIG9uLWN1cnZlXG4gKi9cbmZ1bmN0aW9uIGxpZnRfeCh4OiBiaWdpbnQpOiBQb2ludFR5cGU8YmlnaW50PiB7XG4gIGlmICghZmUoeCkpIHRocm93IG5ldyBFcnJvcignYmFkIHg6IG5lZWQgMCA8IHggPCBwJyk7IC8vIEZhaWwgaWYgeCBcdTIyNjUgcC5cbiAgY29uc3QgeHggPSBtb2RQKHggKiB4KTtcbiAgY29uc3QgYyA9IG1vZFAoeHggKiB4ICsgQmlnSW50KDcpKTsgLy8gTGV0IGMgPSB4XHUwMEIzICsgNyBtb2QgcC5cbiAgbGV0IHkgPSBzcXJ0TW9kKGMpOyAvLyBMZXQgeSA9IGNeKHArMSkvNCBtb2QgcC5cbiAgaWYgKHkgJSBfMm4gIT09IF8wbikgeSA9IG1vZFAoLXkpOyAvLyBSZXR1cm4gdGhlIHVuaXF1ZSBwb2ludCBQIHN1Y2ggdGhhdCB4KFApID0geCBhbmRcbiAgY29uc3QgcCA9IG5ldyBQb2ludCh4LCB5LCBfMW4pOyAvLyB5KFApID0geSBpZiB5IG1vZCAyID0gMCBvciB5KFApID0gcC15IG90aGVyd2lzZS5cbiAgcC5hc3NlcnRWYWxpZGl0eSgpO1xuICByZXR1cm4gcDtcbn1cbi8qKlxuICogQ3JlYXRlIHRhZ2dlZCBoYXNoLCBjb252ZXJ0IGl0IHRvIGJpZ2ludCwgcmVkdWNlIG1vZHVsby1uLlxuICovXG5mdW5jdGlvbiBjaGFsbGVuZ2UoLi4uYXJnczogVWludDhBcnJheVtdKTogYmlnaW50IHtcbiAgcmV0dXJuIG1vZE4oYnl0ZXNUb051bWJlckJFKHRhZ2dlZEhhc2goJ0JJUDAzNDAvY2hhbGxlbmdlJywgLi4uYXJncykpKTtcbn1cblxuLyoqXG4gKiBTY2hub3JyIHB1YmxpYyBrZXkgaXMganVzdCBgeGAgY29vcmRpbmF0ZSBvZiBQb2ludCBhcyBwZXIgQklQMzQwLlxuICovXG5mdW5jdGlvbiBzY2hub3JyR2V0UHVibGljS2V5KHByaXZhdGVLZXk6IEhleCk6IFVpbnQ4QXJyYXkge1xuICByZXR1cm4gc2Nobm9yckdldEV4dFB1YktleShwcml2YXRlS2V5KS5ieXRlczsgLy8gZCc9aW50KHNrKS4gRmFpbCBpZiBkJz0wIG9yIGQnXHUyMjY1bi4gUmV0IGJ5dGVzKGQnXHUyMkM1Rylcbn1cblxuLyoqXG4gKiBDcmVhdGVzIFNjaG5vcnIgc2lnbmF0dXJlIGFzIHBlciBCSVAzNDAuIFZlcmlmaWVzIGl0c2VsZiBiZWZvcmUgcmV0dXJuaW5nIGFueXRoaW5nLlxuICogYXV4UmFuZCBpcyBvcHRpb25hbCBhbmQgaXMgbm90IHRoZSBzb2xlIHNvdXJjZSBvZiBrIGdlbmVyYXRpb246IGJhZCBDU1BSTkcgd29uJ3QgYmUgZGFuZ2Vyb3VzLlxuICovXG5mdW5jdGlvbiBzY2hub3JyU2lnbihcbiAgbWVzc2FnZTogSGV4LFxuICBwcml2YXRlS2V5OiBQcml2S2V5LFxuICBhdXhSYW5kOiBIZXggPSByYW5kb21CeXRlcygzMilcbik6IFVpbnQ4QXJyYXkge1xuICBjb25zdCBtID0gZW5zdXJlQnl0ZXMoJ21lc3NhZ2UnLCBtZXNzYWdlKTtcbiAgY29uc3QgeyBieXRlczogcHgsIHNjYWxhcjogZCB9ID0gc2Nobm9yckdldEV4dFB1YktleShwcml2YXRlS2V5KTsgLy8gY2hlY2tzIGZvciBpc1dpdGhpbkN1cnZlT3JkZXJcbiAgY29uc3QgYSA9IGVuc3VyZUJ5dGVzKCdhdXhSYW5kJywgYXV4UmFuZCwgMzIpOyAvLyBBdXhpbGlhcnkgcmFuZG9tIGRhdGEgYTogYSAzMi1ieXRlIGFycmF5XG4gIGNvbnN0IHQgPSBudW1UbzMyYihkIF4gYnl0ZXNUb051bWJlckJFKHRhZ2dlZEhhc2goJ0JJUDAzNDAvYXV4JywgYSkpKTsgLy8gTGV0IHQgYmUgdGhlIGJ5dGUtd2lzZSB4b3Igb2YgYnl0ZXMoZCkgYW5kIGhhc2gvYXV4KGEpXG4gIGNvbnN0IHJhbmQgPSB0YWdnZWRIYXNoKCdCSVAwMzQwL25vbmNlJywgdCwgcHgsIG0pOyAvLyBMZXQgcmFuZCA9IGhhc2gvbm9uY2UodCB8fCBieXRlcyhQKSB8fCBtKVxuICBjb25zdCBrXyA9IG1vZE4oYnl0ZXNUb051bWJlckJFKHJhbmQpKTsgLy8gTGV0IGsnID0gaW50KHJhbmQpIG1vZCBuXG4gIGlmIChrXyA9PT0gXzBuKSB0aHJvdyBuZXcgRXJyb3IoJ3NpZ24gZmFpbGVkOiBrIGlzIHplcm8nKTsgLy8gRmFpbCBpZiBrJyA9IDAuXG4gIGNvbnN0IHsgYnl0ZXM6IHJ4LCBzY2FsYXI6IGsgfSA9IHNjaG5vcnJHZXRFeHRQdWJLZXkoa18pOyAvLyBMZXQgUiA9IGsnXHUyMkM1Ry5cbiAgY29uc3QgZSA9IGNoYWxsZW5nZShyeCwgcHgsIG0pOyAvLyBMZXQgZSA9IGludChoYXNoL2NoYWxsZW5nZShieXRlcyhSKSB8fCBieXRlcyhQKSB8fCBtKSkgbW9kIG4uXG4gIGNvbnN0IHNpZyA9IG5ldyBVaW50OEFycmF5KDY0KTsgLy8gTGV0IHNpZyA9IGJ5dGVzKFIpIHx8IGJ5dGVzKChrICsgZWQpIG1vZCBuKS5cbiAgc2lnLnNldChyeCwgMCk7XG4gIHNpZy5zZXQobnVtVG8zMmIobW9kTihrICsgZSAqIGQpKSwgMzIpO1xuICAvLyBJZiBWZXJpZnkoYnl0ZXMoUCksIG0sIHNpZykgKHNlZSBiZWxvdykgcmV0dXJucyBmYWlsdXJlLCBhYm9ydFxuICBpZiAoIXNjaG5vcnJWZXJpZnkoc2lnLCBtLCBweCkpIHRocm93IG5ldyBFcnJvcignc2lnbjogSW52YWxpZCBzaWduYXR1cmUgcHJvZHVjZWQnKTtcbiAgcmV0dXJuIHNpZztcbn1cblxuLyoqXG4gKiBWZXJpZmllcyBTY2hub3JyIHNpZ25hdHVyZS5cbiAqIFdpbGwgc3dhbGxvdyBlcnJvcnMgJiByZXR1cm4gZmFsc2UgZXhjZXB0IGZvciBpbml0aWFsIHR5cGUgdmFsaWRhdGlvbiBvZiBhcmd1bWVudHMuXG4gKi9cbmZ1bmN0aW9uIHNjaG5vcnJWZXJpZnkoc2lnbmF0dXJlOiBIZXgsIG1lc3NhZ2U6IEhleCwgcHVibGljS2V5OiBIZXgpOiBib29sZWFuIHtcbiAgY29uc3Qgc2lnID0gZW5zdXJlQnl0ZXMoJ3NpZ25hdHVyZScsIHNpZ25hdHVyZSwgNjQpO1xuICBjb25zdCBtID0gZW5zdXJlQnl0ZXMoJ21lc3NhZ2UnLCBtZXNzYWdlKTtcbiAgY29uc3QgcHViID0gZW5zdXJlQnl0ZXMoJ3B1YmxpY0tleScsIHB1YmxpY0tleSwgMzIpO1xuICB0cnkge1xuICAgIGNvbnN0IFAgPSBsaWZ0X3goYnl0ZXNUb051bWJlckJFKHB1YikpOyAvLyBQID0gbGlmdF94KGludChwaykpOyBmYWlsIGlmIHRoYXQgZmFpbHNcbiAgICBjb25zdCByID0gYnl0ZXNUb051bWJlckJFKHNpZy5zdWJhcnJheSgwLCAzMikpOyAvLyBMZXQgciA9IGludChzaWdbMDozMl0pOyBmYWlsIGlmIHIgXHUyMjY1IHAuXG4gICAgaWYgKCFmZShyKSkgcmV0dXJuIGZhbHNlO1xuICAgIGNvbnN0IHMgPSBieXRlc1RvTnVtYmVyQkUoc2lnLnN1YmFycmF5KDMyLCA2NCkpOyAvLyBMZXQgcyA9IGludChzaWdbMzI6NjRdKTsgZmFpbCBpZiBzIFx1MjI2NSBuLlxuICAgIGlmICghZ2UocykpIHJldHVybiBmYWxzZTtcbiAgICBjb25zdCBlID0gY2hhbGxlbmdlKG51bVRvMzJiKHIpLCBwb2ludFRvQnl0ZXMoUCksIG0pOyAvLyBpbnQoY2hhbGxlbmdlKGJ5dGVzKHIpfHxieXRlcyhQKXx8bSkpJW5cbiAgICBjb25zdCBSID0gR211bEFkZChQLCBzLCBtb2ROKC1lKSk7IC8vIFIgPSBzXHUyMkM1RyAtIGVcdTIyQzVQXG4gICAgaWYgKCFSIHx8ICFSLmhhc0V2ZW5ZKCkgfHwgUi50b0FmZmluZSgpLnggIT09IHIpIHJldHVybiBmYWxzZTsgLy8gLWVQID09IChuLWUpUFxuICAgIHJldHVybiB0cnVlOyAvLyBGYWlsIGlmIGlzX2luZmluaXRlKFIpIC8gbm90IGhhc19ldmVuX3koUikgLyB4KFIpIFx1MjI2MCByLlxuICB9IGNhdGNoIChlcnJvcikge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuXG5leHBvcnQgY29uc3Qgc2Nobm9yciA9IC8qIEBfX1BVUkVfXyAqLyAoKCkgPT4gKHtcbiAgZ2V0UHVibGljS2V5OiBzY2hub3JyR2V0UHVibGljS2V5LFxuICBzaWduOiBzY2hub3JyU2lnbixcbiAgdmVyaWZ5OiBzY2hub3JyVmVyaWZ5LFxuICB1dGlsczoge1xuICAgIHJhbmRvbVByaXZhdGVLZXk6IHNlY3AyNTZrMS51dGlscy5yYW5kb21Qcml2YXRlS2V5LFxuICAgIGxpZnRfeCxcbiAgICBwb2ludFRvQnl0ZXMsXG4gICAgbnVtYmVyVG9CeXRlc0JFLFxuICAgIGJ5dGVzVG9OdW1iZXJCRSxcbiAgICB0YWdnZWRIYXNoLFxuICAgIG1vZCxcbiAgfSxcbn0pKSgpO1xuXG5jb25zdCBpc29NYXAgPSAvKiBAX19QVVJFX18gKi8gKCgpID0+XG4gIGlzb2dlbnlNYXAoXG4gICAgRnAsXG4gICAgW1xuICAgICAgLy8geE51bVxuICAgICAgW1xuICAgICAgICAnMHg4ZTM4ZTM4ZTM4ZTM4ZTM4ZTM4ZTM4ZTM4ZTM4ZTM4ZTM4ZTM4ZTM4ZTM4ZTM4ZTM4ZTM4ZTM4ZGFhYWFhOGM3JyxcbiAgICAgICAgJzB4N2QzZDRjODBiYzMyMWQ1YjlmMzE1Y2VhN2ZkNDRjNWQ1OTVkMmZjMGJmNjNiOTJkZmZmMTA0NGYxN2M2NTgxJyxcbiAgICAgICAgJzB4NTM0YzMyOGQyM2YyMzRlNmUyYTQxM2RlY2EyNWNhZWNlNDUwNjE0NDAzN2M0MDMxNGVjYmQwYjUzZDlkZDI2MicsXG4gICAgICAgICcweDhlMzhlMzhlMzhlMzhlMzhlMzhlMzhlMzhlMzhlMzhlMzhlMzhlMzhlMzhlMzhlMzhlMzhlMzhkYWFhYWE4OGMnLFxuICAgICAgXSxcbiAgICAgIC8vIHhEZW5cbiAgICAgIFtcbiAgICAgICAgJzB4ZDM1NzcxMTkzZDk0OTE4YTljYTM0Y2NiYjdiNjQwZGQ4NmNkNDA5NTQyZjg0ODdkOWZlNmI3NDU3ODFlYjQ5YicsXG4gICAgICAgICcweGVkYWRjNmY2NDM4M2RjMWRmN2M0YjJkNTFiNTQyMjU0MDZkMzZiNjQxZjVlNDFiYmM1MmE1NjYxMmE4YzZkMTQnLFxuICAgICAgICAnMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxJywgLy8gTEFTVCAxXG4gICAgICBdLFxuICAgICAgLy8geU51bVxuICAgICAgW1xuICAgICAgICAnMHg0YmRhMTJmNjg0YmRhMTJmNjg0YmRhMTJmNjg0YmRhMTJmNjg0YmRhMTJmNjg0YmRhMTJmNjg0YjhlMzhlMjNjJyxcbiAgICAgICAgJzB4Yzc1ZTBjMzJkNWNiN2MwZmE5ZDBhNTRiMTJhMGE2ZDU2NDdhYjA0NmQ2ODZkYTZmZGZmYzkwZmMyMDFkNzFhMycsXG4gICAgICAgICcweDI5YTYxOTQ2OTFmOTFhNzM3MTUyMDllZjY1MTJlNTc2NzIyODMwYTIwMWJlMjAxOGE3NjVlODVhOWVjZWU5MzEnLFxuICAgICAgICAnMHgyZjY4NGJkYTEyZjY4NGJkYTEyZjY4NGJkYTEyZjY4NGJkYTEyZjY4NGJkYTEyZjY4NGJkYTEyZjM4ZTM4ZDg0JyxcbiAgICAgIF0sXG4gICAgICAvLyB5RGVuXG4gICAgICBbXG4gICAgICAgICcweGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlZmZmZmY5M2InLFxuICAgICAgICAnMHg3YTA2NTM0YmI4YmRiNDlmZDVlOWU2NjMyNzIyYzI5ODk0NjdjMWJmYzhlOGQ5NzhkZmI0MjVkMjY4NWMyNTczJyxcbiAgICAgICAgJzB4NjQ4NGFhNzE2NTQ1Y2EyY2YzYTcwYzNmYThmZTMzN2UwYTNkMjExNjJmMGQ2Mjk5YTdiZjgxOTJiZmQyYTc2ZicsXG4gICAgICAgICcweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDEnLCAvLyBMQVNUIDFcbiAgICAgIF0sXG4gICAgXS5tYXAoKGkpID0+IGkubWFwKChqKSA9PiBCaWdJbnQoaikpKSBhcyBbYmlnaW50W10sIGJpZ2ludFtdLCBiaWdpbnRbXSwgYmlnaW50W11dXG4gICkpKCk7XG5jb25zdCBtYXBTV1UgPSAvKiBAX19QVVJFX18gKi8gKCgpID0+XG4gIG1hcFRvQ3VydmVTaW1wbGVTV1UoRnAsIHtcbiAgICBBOiBCaWdJbnQoJzB4M2Y4NzMxYWJkZDY2MWFkY2EwOGE1NTU4ZjBmNWQyNzJlOTUzZDM2M2NiNmYwZTVkNDA1NDQ3YzAxYTQ0NDUzMycpLFxuICAgIEI6IEJpZ0ludCgnMTc3MScpLFxuICAgIFo6IEZwLmNyZWF0ZShCaWdJbnQoJy0xMScpKSxcbiAgfSkpKCk7XG5jb25zdCBodGYgPSAvKiBAX19QVVJFX18gKi8gKCgpID0+XG4gIGNyZWF0ZUhhc2hlcihcbiAgICBzZWNwMjU2azEuUHJvamVjdGl2ZVBvaW50LFxuICAgIChzY2FsYXJzOiBiaWdpbnRbXSkgPT4ge1xuICAgICAgY29uc3QgeyB4LCB5IH0gPSBtYXBTV1UoRnAuY3JlYXRlKHNjYWxhcnNbMF0pKTtcbiAgICAgIHJldHVybiBpc29NYXAoeCwgeSk7XG4gICAgfSxcbiAgICB7XG4gICAgICBEU1Q6ICdzZWNwMjU2azFfWE1EOlNIQS0yNTZfU1NXVV9ST18nLFxuICAgICAgZW5jb2RlRFNUOiAnc2VjcDI1NmsxX1hNRDpTSEEtMjU2X1NTV1VfTlVfJyxcbiAgICAgIHA6IEZwLk9SREVSLFxuICAgICAgbTogMSxcbiAgICAgIGs6IDEyOCxcbiAgICAgIGV4cGFuZDogJ3htZCcsXG4gICAgICBoYXNoOiBzaGEyNTYsXG4gICAgfVxuICApKSgpO1xuZXhwb3J0IGNvbnN0IGhhc2hUb0N1cnZlID0gLyogQF9fUFVSRV9fICovICgoKSA9PiBodGYuaGFzaFRvQ3VydmUpKCk7XG5leHBvcnQgY29uc3QgZW5jb2RlVG9DdXJ2ZSA9IC8qIEBfX1BVUkVfXyAqLyAoKCkgPT4gaHRmLmVuY29kZVRvQ3VydmUpKCk7XG4iLCAiaW1wb3J0IHtlZDI1NTE5fSBmcm9tICdAbm9ibGUvY3VydmVzL2VkMjU1MTknO1xuXG4vKipcbiAqIEEgNjQgYnl0ZSBzZWNyZXQga2V5LCB0aGUgZmlyc3QgMzIgYnl0ZXMgb2Ygd2hpY2ggaXMgdGhlXG4gKiBwcml2YXRlIHNjYWxhciBhbmQgdGhlIGxhc3QgMzIgYnl0ZXMgaXMgdGhlIHB1YmxpYyBrZXkuXG4gKiBSZWFkIG1vcmU6IGh0dHBzOi8vYmxvZy5tb3ppbGxhLm9yZy93YXJuZXIvMjAxMS8xMS8yOS9lZDI1NTE5LWtleXMvXG4gKi9cbnR5cGUgRWQyNTUxOVNlY3JldEtleSA9IFVpbnQ4QXJyYXk7XG5cbi8qKlxuICogRWQyNTUxOSBLZXlwYWlyXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRWQyNTUxOUtleXBhaXIge1xuICBwdWJsaWNLZXk6IFVpbnQ4QXJyYXk7XG4gIHNlY3JldEtleTogRWQyNTUxOVNlY3JldEtleTtcbn1cblxuZXhwb3J0IGNvbnN0IGdlbmVyYXRlUHJpdmF0ZUtleSA9IGVkMjU1MTkudXRpbHMucmFuZG9tUHJpdmF0ZUtleTtcbmV4cG9ydCBjb25zdCBnZW5lcmF0ZUtleXBhaXIgPSAoKTogRWQyNTUxOUtleXBhaXIgPT4ge1xuICBjb25zdCBwcml2YXRlU2NhbGFyID0gZWQyNTUxOS51dGlscy5yYW5kb21Qcml2YXRlS2V5KCk7XG4gIGNvbnN0IHB1YmxpY0tleSA9IGdldFB1YmxpY0tleShwcml2YXRlU2NhbGFyKTtcbiAgY29uc3Qgc2VjcmV0S2V5ID0gbmV3IFVpbnQ4QXJyYXkoNjQpO1xuICBzZWNyZXRLZXkuc2V0KHByaXZhdGVTY2FsYXIpO1xuICBzZWNyZXRLZXkuc2V0KHB1YmxpY0tleSwgMzIpO1xuICByZXR1cm4ge1xuICAgIHB1YmxpY0tleSxcbiAgICBzZWNyZXRLZXksXG4gIH07XG59O1xuZXhwb3J0IGNvbnN0IGdldFB1YmxpY0tleSA9IGVkMjU1MTkuZ2V0UHVibGljS2V5O1xuZXhwb3J0IGZ1bmN0aW9uIGlzT25DdXJ2ZShwdWJsaWNLZXk6IFVpbnQ4QXJyYXkpOiBib29sZWFuIHtcbiAgdHJ5IHtcbiAgICBlZDI1NTE5LkV4dGVuZGVkUG9pbnQuZnJvbUhleChwdWJsaWNLZXkpO1xuICAgIHJldHVybiB0cnVlO1xuICB9IGNhdGNoIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cbmV4cG9ydCBjb25zdCBzaWduID0gKFxuICBtZXNzYWdlOiBQYXJhbWV0ZXJzPHR5cGVvZiBlZDI1NTE5LnNpZ24+WzBdLFxuICBzZWNyZXRLZXk6IEVkMjU1MTlTZWNyZXRLZXksXG4pID0+IGVkMjU1MTkuc2lnbihtZXNzYWdlLCBzZWNyZXRLZXkuc2xpY2UoMCwgMzIpKTtcbmV4cG9ydCBjb25zdCB2ZXJpZnkgPSBlZDI1NTE5LnZlcmlmeTtcbiIsICJpbXBvcnQge0J1ZmZlcn0gZnJvbSAnYnVmZmVyJztcblxuZXhwb3J0IGNvbnN0IHRvQnVmZmVyID0gKGFycjogQnVmZmVyIHwgVWludDhBcnJheSB8IEFycmF5PG51bWJlcj4pOiBCdWZmZXIgPT4ge1xuICBpZiAoQnVmZmVyLmlzQnVmZmVyKGFycikpIHtcbiAgICByZXR1cm4gYXJyO1xuICB9IGVsc2UgaWYgKGFyciBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpIHtcbiAgICByZXR1cm4gQnVmZmVyLmZyb20oYXJyLmJ1ZmZlciwgYXJyLmJ5dGVPZmZzZXQsIGFyci5ieXRlTGVuZ3RoKTtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gQnVmZmVyLmZyb20oYXJyKTtcbiAgfVxufTtcbiIsICJpbXBvcnQge0J1ZmZlcn0gZnJvbSAnYnVmZmVyJztcbmltcG9ydCB7c2VyaWFsaXplLCBkZXNlcmlhbGl6ZSwgZGVzZXJpYWxpemVVbmNoZWNrZWR9IGZyb20gJ2JvcnNoJztcblxuLy8gQ2xhc3Mgd3JhcHBpbmcgYSBwbGFpbiBvYmplY3RcbmV4cG9ydCBjbGFzcyBTdHJ1Y3Qge1xuICBjb25zdHJ1Y3Rvcihwcm9wZXJ0aWVzOiBhbnkpIHtcbiAgICBPYmplY3QuYXNzaWduKHRoaXMsIHByb3BlcnRpZXMpO1xuICB9XG5cbiAgZW5jb2RlKCk6IEJ1ZmZlciB7XG4gICAgcmV0dXJuIEJ1ZmZlci5mcm9tKHNlcmlhbGl6ZShTT0xBTkFfU0NIRU1BLCB0aGlzKSk7XG4gIH1cblxuICBzdGF0aWMgZGVjb2RlKGRhdGE6IEJ1ZmZlcik6IGFueSB7XG4gICAgcmV0dXJuIGRlc2VyaWFsaXplKFNPTEFOQV9TQ0hFTUEsIHRoaXMsIGRhdGEpO1xuICB9XG5cbiAgc3RhdGljIGRlY29kZVVuY2hlY2tlZChkYXRhOiBCdWZmZXIpOiBhbnkge1xuICAgIHJldHVybiBkZXNlcmlhbGl6ZVVuY2hlY2tlZChTT0xBTkFfU0NIRU1BLCB0aGlzLCBkYXRhKTtcbiAgfVxufVxuXG4vLyBDbGFzcyByZXByZXNlbnRpbmcgYSBSdXN0LWNvbXBhdGlibGUgZW51bSwgc2luY2UgZW51bXMgYXJlIG9ubHkgc3RyaW5ncyBvclxuLy8gbnVtYmVycyBpbiBwdXJlIEpTXG5leHBvcnQgY2xhc3MgRW51bSBleHRlbmRzIFN0cnVjdCB7XG4gIGVudW06IHN0cmluZyA9ICcnO1xuICBjb25zdHJ1Y3Rvcihwcm9wZXJ0aWVzOiBhbnkpIHtcbiAgICBzdXBlcihwcm9wZXJ0aWVzKTtcbiAgICBpZiAoT2JqZWN0LmtleXMocHJvcGVydGllcykubGVuZ3RoICE9PSAxKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0VudW0gY2FuIG9ubHkgdGFrZSBzaW5nbGUgdmFsdWUnKTtcbiAgICB9XG4gICAgT2JqZWN0LmtleXMocHJvcGVydGllcykubWFwKGtleSA9PiB7XG4gICAgICB0aGlzLmVudW0gPSBrZXk7XG4gICAgfSk7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IFNPTEFOQV9TQ0hFTUE6IE1hcDxGdW5jdGlvbiwgYW55PiA9IG5ldyBNYXAoKTtcbiIsICJpbXBvcnQgQk4gZnJvbSAnYm4uanMnO1xuaW1wb3J0IGJzNTggZnJvbSAnYnM1OCc7XG5pbXBvcnQge0J1ZmZlcn0gZnJvbSAnYnVmZmVyJztcbmltcG9ydCB7c2hhMjU2fSBmcm9tICdAbm9ibGUvaGFzaGVzL3NoYTI1Nic7XG5cbmltcG9ydCB7aXNPbkN1cnZlfSBmcm9tICcuL3V0aWxzL2VkMjU1MTknO1xuaW1wb3J0IHtTdHJ1Y3QsIFNPTEFOQV9TQ0hFTUF9IGZyb20gJy4vdXRpbHMvYm9yc2gtc2NoZW1hJztcbmltcG9ydCB7dG9CdWZmZXJ9IGZyb20gJy4vdXRpbHMvdG8tYnVmZmVyJztcblxuLyoqXG4gKiBNYXhpbXVtIGxlbmd0aCBvZiBkZXJpdmVkIHB1YmtleSBzZWVkXG4gKi9cbmV4cG9ydCBjb25zdCBNQVhfU0VFRF9MRU5HVEggPSAzMjtcblxuLyoqXG4gKiBTaXplIG9mIHB1YmxpYyBrZXkgaW4gYnl0ZXNcbiAqL1xuZXhwb3J0IGNvbnN0IFBVQkxJQ19LRVlfTEVOR1RIID0gMzI7XG5cbi8qKlxuICogVmFsdWUgdG8gYmUgY29udmVydGVkIGludG8gcHVibGljIGtleVxuICovXG5leHBvcnQgdHlwZSBQdWJsaWNLZXlJbml0RGF0YSA9XG4gIHwgbnVtYmVyXG4gIHwgc3RyaW5nXG4gIHwgVWludDhBcnJheVxuICB8IEFycmF5PG51bWJlcj5cbiAgfCBQdWJsaWNLZXlEYXRhO1xuXG4vKipcbiAqIEpTT04gb2JqZWN0IHJlcHJlc2VudGF0aW9uIG9mIFB1YmxpY0tleSBjbGFzc1xuICovXG5leHBvcnQgdHlwZSBQdWJsaWNLZXlEYXRhID0ge1xuICAvKiogQGludGVybmFsICovXG4gIF9ibjogQk47XG59O1xuXG5mdW5jdGlvbiBpc1B1YmxpY0tleURhdGEodmFsdWU6IFB1YmxpY0tleUluaXREYXRhKTogdmFsdWUgaXMgUHVibGljS2V5RGF0YSB7XG4gIHJldHVybiAodmFsdWUgYXMgUHVibGljS2V5RGF0YSkuX2JuICE9PSB1bmRlZmluZWQ7XG59XG5cbi8vIGxvY2FsIGNvdW50ZXIgdXNlZCBieSBQdWJsaWNLZXkudW5pcXVlKClcbmxldCB1bmlxdWVQdWJsaWNLZXlDb3VudGVyID0gMTtcblxuLyoqXG4gKiBBIHB1YmxpYyBrZXlcbiAqL1xuZXhwb3J0IGNsYXNzIFB1YmxpY0tleSBleHRlbmRzIFN0cnVjdCB7XG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgX2JuOiBCTjtcblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IFB1YmxpY0tleSBvYmplY3RcbiAgICogQHBhcmFtIHZhbHVlIGVkMjU1MTkgcHVibGljIGtleSBhcyBidWZmZXIgb3IgYmFzZS01OCBlbmNvZGVkIHN0cmluZ1xuICAgKi9cbiAgY29uc3RydWN0b3IodmFsdWU6IFB1YmxpY0tleUluaXREYXRhKSB7XG4gICAgc3VwZXIoe30pO1xuICAgIGlmIChpc1B1YmxpY0tleURhdGEodmFsdWUpKSB7XG4gICAgICB0aGlzLl9ibiA9IHZhbHVlLl9ibjtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgLy8gYXNzdW1lIGJhc2UgNTggZW5jb2RpbmcgYnkgZGVmYXVsdFxuICAgICAgICBjb25zdCBkZWNvZGVkID0gYnM1OC5kZWNvZGUodmFsdWUpO1xuICAgICAgICBpZiAoZGVjb2RlZC5sZW5ndGggIT0gUFVCTElDX0tFWV9MRU5HVEgpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgcHVibGljIGtleSBpbnB1dGApO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2JuID0gbmV3IEJOKGRlY29kZWQpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5fYm4gPSBuZXcgQk4odmFsdWUpO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5fYm4uYnl0ZUxlbmd0aCgpID4gUFVCTElDX0tFWV9MRU5HVEgpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHB1YmxpYyBrZXkgaW5wdXRgKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhIHVuaXF1ZSBQdWJsaWNLZXkgZm9yIHRlc3RzIGFuZCBiZW5jaG1hcmtzIHVzaW5nIGEgY291bnRlclxuICAgKi9cbiAgc3RhdGljIHVuaXF1ZSgpOiBQdWJsaWNLZXkge1xuICAgIGNvbnN0IGtleSA9IG5ldyBQdWJsaWNLZXkodW5pcXVlUHVibGljS2V5Q291bnRlcik7XG4gICAgdW5pcXVlUHVibGljS2V5Q291bnRlciArPSAxO1xuICAgIHJldHVybiBuZXcgUHVibGljS2V5KGtleS50b0J1ZmZlcigpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWZhdWx0IHB1YmxpYyBrZXkgdmFsdWUuIFRoZSBiYXNlNTgtZW5jb2RlZCBzdHJpbmcgcmVwcmVzZW50YXRpb24gaXMgYWxsIG9uZXMgKGFzIHNlZW4gYmVsb3cpXG4gICAqIFRoZSB1bmRlcmx5aW5nIEJOIG51bWJlciBpcyAzMiBieXRlcyB0aGF0IGFyZSBhbGwgemVyb3NcbiAgICovXG4gIHN0YXRpYyBkZWZhdWx0OiBQdWJsaWNLZXkgPSBuZXcgUHVibGljS2V5KCcxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMScpO1xuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgdHdvIHB1YmxpY0tleXMgYXJlIGVxdWFsXG4gICAqL1xuICBlcXVhbHMocHVibGljS2V5OiBQdWJsaWNLZXkpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fYm4uZXEocHVibGljS2V5Ll9ibik7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJuIHRoZSBiYXNlLTU4IHJlcHJlc2VudGF0aW9uIG9mIHRoZSBwdWJsaWMga2V5XG4gICAqL1xuICB0b0Jhc2U1OCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBiczU4LmVuY29kZSh0aGlzLnRvQnl0ZXMoKSk7XG4gIH1cblxuICB0b0pTT04oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50b0Jhc2U1OCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybiB0aGUgYnl0ZSBhcnJheSByZXByZXNlbnRhdGlvbiBvZiB0aGUgcHVibGljIGtleSBpbiBiaWcgZW5kaWFuXG4gICAqL1xuICB0b0J5dGVzKCk6IFVpbnQ4QXJyYXkge1xuICAgIGNvbnN0IGJ1ZiA9IHRoaXMudG9CdWZmZXIoKTtcbiAgICByZXR1cm4gbmV3IFVpbnQ4QXJyYXkoYnVmLmJ1ZmZlciwgYnVmLmJ5dGVPZmZzZXQsIGJ1Zi5ieXRlTGVuZ3RoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm4gdGhlIEJ1ZmZlciByZXByZXNlbnRhdGlvbiBvZiB0aGUgcHVibGljIGtleSBpbiBiaWcgZW5kaWFuXG4gICAqL1xuICB0b0J1ZmZlcigpOiBCdWZmZXIge1xuICAgIGNvbnN0IGIgPSB0aGlzLl9ibi50b0FycmF5TGlrZShCdWZmZXIpO1xuICAgIGlmIChiLmxlbmd0aCA9PT0gUFVCTElDX0tFWV9MRU5HVEgpIHtcbiAgICAgIHJldHVybiBiO1xuICAgIH1cblxuICAgIGNvbnN0IHplcm9QYWQgPSBCdWZmZXIuYWxsb2MoMzIpO1xuICAgIGIuY29weSh6ZXJvUGFkLCAzMiAtIGIubGVuZ3RoKTtcbiAgICByZXR1cm4gemVyb1BhZDtcbiAgfVxuXG4gIGdldCBbU3ltYm9sLnRvU3RyaW5nVGFnXSgpOiBzdHJpbmcge1xuICAgIHJldHVybiBgUHVibGljS2V5KCR7dGhpcy50b1N0cmluZygpfSlgO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybiB0aGUgYmFzZS01OCByZXByZXNlbnRhdGlvbiBvZiB0aGUgcHVibGljIGtleVxuICAgKi9cbiAgdG9TdHJpbmcoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50b0Jhc2U1OCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIERlcml2ZSBhIHB1YmxpYyBrZXkgZnJvbSBhbm90aGVyIGtleSwgYSBzZWVkLCBhbmQgYSBwcm9ncmFtIElELlxuICAgKiBUaGUgcHJvZ3JhbSBJRCB3aWxsIGFsc28gc2VydmUgYXMgdGhlIG93bmVyIG9mIHRoZSBwdWJsaWMga2V5LCBnaXZpbmdcbiAgICogaXQgcGVybWlzc2lvbiB0byB3cml0ZSBkYXRhIHRvIHRoZSBhY2NvdW50LlxuICAgKi9cbiAgLyogZXNsaW50LWRpc2FibGUgcmVxdWlyZS1hd2FpdCAqL1xuICBzdGF0aWMgYXN5bmMgY3JlYXRlV2l0aFNlZWQoXG4gICAgZnJvbVB1YmxpY0tleTogUHVibGljS2V5LFxuICAgIHNlZWQ6IHN0cmluZyxcbiAgICBwcm9ncmFtSWQ6IFB1YmxpY0tleSxcbiAgKTogUHJvbWlzZTxQdWJsaWNLZXk+IHtcbiAgICBjb25zdCBidWZmZXIgPSBCdWZmZXIuY29uY2F0KFtcbiAgICAgIGZyb21QdWJsaWNLZXkudG9CdWZmZXIoKSxcbiAgICAgIEJ1ZmZlci5mcm9tKHNlZWQpLFxuICAgICAgcHJvZ3JhbUlkLnRvQnVmZmVyKCksXG4gICAgXSk7XG4gICAgY29uc3QgcHVibGljS2V5Qnl0ZXMgPSBzaGEyNTYoYnVmZmVyKTtcbiAgICByZXR1cm4gbmV3IFB1YmxpY0tleShwdWJsaWNLZXlCeXRlcyk7XG4gIH1cblxuICAvKipcbiAgICogRGVyaXZlIGEgcHJvZ3JhbSBhZGRyZXNzIGZyb20gc2VlZHMgYW5kIGEgcHJvZ3JhbSBJRC5cbiAgICovXG4gIC8qIGVzbGludC1kaXNhYmxlIHJlcXVpcmUtYXdhaXQgKi9cbiAgc3RhdGljIGNyZWF0ZVByb2dyYW1BZGRyZXNzU3luYyhcbiAgICBzZWVkczogQXJyYXk8QnVmZmVyIHwgVWludDhBcnJheT4sXG4gICAgcHJvZ3JhbUlkOiBQdWJsaWNLZXksXG4gICk6IFB1YmxpY0tleSB7XG4gICAgbGV0IGJ1ZmZlciA9IEJ1ZmZlci5hbGxvYygwKTtcbiAgICBzZWVkcy5mb3JFYWNoKGZ1bmN0aW9uIChzZWVkKSB7XG4gICAgICBpZiAoc2VlZC5sZW5ndGggPiBNQVhfU0VFRF9MRU5HVEgpIHtcbiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihgTWF4IHNlZWQgbGVuZ3RoIGV4Y2VlZGVkYCk7XG4gICAgICB9XG4gICAgICBidWZmZXIgPSBCdWZmZXIuY29uY2F0KFtidWZmZXIsIHRvQnVmZmVyKHNlZWQpXSk7XG4gICAgfSk7XG4gICAgYnVmZmVyID0gQnVmZmVyLmNvbmNhdChbXG4gICAgICBidWZmZXIsXG4gICAgICBwcm9ncmFtSWQudG9CdWZmZXIoKSxcbiAgICAgIEJ1ZmZlci5mcm9tKCdQcm9ncmFtRGVyaXZlZEFkZHJlc3MnKSxcbiAgICBdKTtcbiAgICBjb25zdCBwdWJsaWNLZXlCeXRlcyA9IHNoYTI1NihidWZmZXIpO1xuICAgIGlmIChpc09uQ3VydmUocHVibGljS2V5Qnl0ZXMpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgc2VlZHMsIGFkZHJlc3MgbXVzdCBmYWxsIG9mZiB0aGUgY3VydmVgKTtcbiAgICB9XG4gICAgcmV0dXJuIG5ldyBQdWJsaWNLZXkocHVibGljS2V5Qnl0ZXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFzeW5jIHZlcnNpb24gb2YgY3JlYXRlUHJvZ3JhbUFkZHJlc3NTeW5jXG4gICAqIEZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuICAgKlxuICAgKiBAZGVwcmVjYXRlZCBVc2Uge0BsaW5rIGNyZWF0ZVByb2dyYW1BZGRyZXNzU3luY30gaW5zdGVhZFxuICAgKi9cbiAgLyogZXNsaW50LWRpc2FibGUgcmVxdWlyZS1hd2FpdCAqL1xuICBzdGF0aWMgYXN5bmMgY3JlYXRlUHJvZ3JhbUFkZHJlc3MoXG4gICAgc2VlZHM6IEFycmF5PEJ1ZmZlciB8IFVpbnQ4QXJyYXk+LFxuICAgIHByb2dyYW1JZDogUHVibGljS2V5LFxuICApOiBQcm9taXNlPFB1YmxpY0tleT4ge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZVByb2dyYW1BZGRyZXNzU3luYyhzZWVkcywgcHJvZ3JhbUlkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGaW5kIGEgdmFsaWQgcHJvZ3JhbSBhZGRyZXNzXG4gICAqXG4gICAqIFZhbGlkIHByb2dyYW0gYWRkcmVzc2VzIG11c3QgZmFsbCBvZmYgdGhlIGVkMjU1MTkgY3VydmUuICBUaGlzIGZ1bmN0aW9uXG4gICAqIGl0ZXJhdGVzIGEgbm9uY2UgdW50aWwgaXQgZmluZHMgb25lIHRoYXQgd2hlbiBjb21iaW5lZCB3aXRoIHRoZSBzZWVkc1xuICAgKiByZXN1bHRzIGluIGEgdmFsaWQgcHJvZ3JhbSBhZGRyZXNzLlxuICAgKi9cbiAgc3RhdGljIGZpbmRQcm9ncmFtQWRkcmVzc1N5bmMoXG4gICAgc2VlZHM6IEFycmF5PEJ1ZmZlciB8IFVpbnQ4QXJyYXk+LFxuICAgIHByb2dyYW1JZDogUHVibGljS2V5LFxuICApOiBbUHVibGljS2V5LCBudW1iZXJdIHtcbiAgICBsZXQgbm9uY2UgPSAyNTU7XG4gICAgbGV0IGFkZHJlc3M7XG4gICAgd2hpbGUgKG5vbmNlICE9IDApIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHNlZWRzV2l0aE5vbmNlID0gc2VlZHMuY29uY2F0KEJ1ZmZlci5mcm9tKFtub25jZV0pKTtcbiAgICAgICAgYWRkcmVzcyA9IHRoaXMuY3JlYXRlUHJvZ3JhbUFkZHJlc3NTeW5jKHNlZWRzV2l0aE5vbmNlLCBwcm9ncmFtSWQpO1xuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIGlmIChlcnIgaW5zdGFuY2VvZiBUeXBlRXJyb3IpIHtcbiAgICAgICAgICB0aHJvdyBlcnI7XG4gICAgICAgIH1cbiAgICAgICAgbm9uY2UtLTtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG4gICAgICByZXR1cm4gW2FkZHJlc3MsIG5vbmNlXTtcbiAgICB9XG4gICAgdGhyb3cgbmV3IEVycm9yKGBVbmFibGUgdG8gZmluZCBhIHZpYWJsZSBwcm9ncmFtIGFkZHJlc3Mgbm9uY2VgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBc3luYyB2ZXJzaW9uIG9mIGZpbmRQcm9ncmFtQWRkcmVzc1N5bmNcbiAgICogRm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5XG4gICAqXG4gICAqIEBkZXByZWNhdGVkIFVzZSB7QGxpbmsgZmluZFByb2dyYW1BZGRyZXNzU3luY30gaW5zdGVhZFxuICAgKi9cbiAgc3RhdGljIGFzeW5jIGZpbmRQcm9ncmFtQWRkcmVzcyhcbiAgICBzZWVkczogQXJyYXk8QnVmZmVyIHwgVWludDhBcnJheT4sXG4gICAgcHJvZ3JhbUlkOiBQdWJsaWNLZXksXG4gICk6IFByb21pc2U8W1B1YmxpY0tleSwgbnVtYmVyXT4ge1xuICAgIHJldHVybiB0aGlzLmZpbmRQcm9ncmFtQWRkcmVzc1N5bmMoc2VlZHMsIHByb2dyYW1JZCk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgdGhhdCBhIHB1YmtleSBpcyBvbiB0aGUgZWQyNTUxOSBjdXJ2ZS5cbiAgICovXG4gIHN0YXRpYyBpc09uQ3VydmUocHVia2V5RGF0YTogUHVibGljS2V5SW5pdERhdGEpOiBib29sZWFuIHtcbiAgICBjb25zdCBwdWJrZXkgPSBuZXcgUHVibGljS2V5KHB1YmtleURhdGEpO1xuICAgIHJldHVybiBpc09uQ3VydmUocHVia2V5LnRvQnl0ZXMoKSk7XG4gIH1cbn1cblxuU09MQU5BX1NDSEVNQS5zZXQoUHVibGljS2V5LCB7XG4gIGtpbmQ6ICdzdHJ1Y3QnLFxuICBmaWVsZHM6IFtbJ19ibicsICd1MjU2J11dLFxufSk7XG4iLCAiaW1wb3J0IHtCdWZmZXJ9IGZyb20gJ2J1ZmZlcic7XG5cbmltcG9ydCB7Z2VuZXJhdGVQcml2YXRlS2V5LCBnZXRQdWJsaWNLZXl9IGZyb20gJy4vdXRpbHMvZWQyNTUxOSc7XG5pbXBvcnQge3RvQnVmZmVyfSBmcm9tICcuL3V0aWxzL3RvLWJ1ZmZlcic7XG5pbXBvcnQge1B1YmxpY0tleX0gZnJvbSAnLi9wdWJsaWNrZXknO1xuXG4vKipcbiAqIEFuIGFjY291bnQga2V5IHBhaXIgKHB1YmxpYyBhbmQgc2VjcmV0IGtleXMpLlxuICpcbiAqIEBkZXByZWNhdGVkIHNpbmNlIHYxLjEwLjAsIHBsZWFzZSB1c2Uge0BsaW5rIEtleXBhaXJ9IGluc3RlYWQuXG4gKi9cbmV4cG9ydCBjbGFzcyBBY2NvdW50IHtcbiAgLyoqIEBpbnRlcm5hbCAqL1xuICBwcml2YXRlIF9wdWJsaWNLZXk6IEJ1ZmZlcjtcbiAgLyoqIEBpbnRlcm5hbCAqL1xuICBwcml2YXRlIF9zZWNyZXRLZXk6IEJ1ZmZlcjtcblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IEFjY291bnQgb2JqZWN0XG4gICAqXG4gICAqIElmIHRoZSBzZWNyZXRLZXkgcGFyYW1ldGVyIGlzIG5vdCBwcm92aWRlZCBhIG5ldyBrZXkgcGFpciBpcyByYW5kb21seVxuICAgKiBjcmVhdGVkIGZvciB0aGUgYWNjb3VudFxuICAgKlxuICAgKiBAcGFyYW0gc2VjcmV0S2V5IFNlY3JldCBrZXkgZm9yIHRoZSBhY2NvdW50XG4gICAqL1xuICBjb25zdHJ1Y3RvcihzZWNyZXRLZXk/OiBVaW50OEFycmF5IHwgQXJyYXk8bnVtYmVyPikge1xuICAgIGlmIChzZWNyZXRLZXkpIHtcbiAgICAgIGNvbnN0IHNlY3JldEtleUJ1ZmZlciA9IHRvQnVmZmVyKHNlY3JldEtleSk7XG4gICAgICBpZiAoc2VjcmV0S2V5Lmxlbmd0aCAhPT0gNjQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdiYWQgc2VjcmV0IGtleSBzaXplJyk7XG4gICAgICB9XG4gICAgICB0aGlzLl9wdWJsaWNLZXkgPSBzZWNyZXRLZXlCdWZmZXIuc2xpY2UoMzIsIDY0KTtcbiAgICAgIHRoaXMuX3NlY3JldEtleSA9IHNlY3JldEtleUJ1ZmZlci5zbGljZSgwLCAzMik7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX3NlY3JldEtleSA9IHRvQnVmZmVyKGdlbmVyYXRlUHJpdmF0ZUtleSgpKTtcbiAgICAgIHRoaXMuX3B1YmxpY0tleSA9IHRvQnVmZmVyKGdldFB1YmxpY0tleSh0aGlzLl9zZWNyZXRLZXkpKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVGhlIHB1YmxpYyBrZXkgZm9yIHRoaXMgYWNjb3VudFxuICAgKi9cbiAgZ2V0IHB1YmxpY0tleSgpOiBQdWJsaWNLZXkge1xuICAgIHJldHVybiBuZXcgUHVibGljS2V5KHRoaXMuX3B1YmxpY0tleSk7XG4gIH1cblxuICAvKipcbiAgICogVGhlICoqdW5lbmNyeXB0ZWQqKiBzZWNyZXQga2V5IGZvciB0aGlzIGFjY291bnQuIFRoZSBmaXJzdCAzMiBieXRlc1xuICAgKiBpcyB0aGUgcHJpdmF0ZSBzY2FsYXIgYW5kIHRoZSBsYXN0IDMyIGJ5dGVzIGlzIHRoZSBwdWJsaWMga2V5LlxuICAgKiBSZWFkIG1vcmU6IGh0dHBzOi8vYmxvZy5tb3ppbGxhLm9yZy93YXJuZXIvMjAxMS8xMS8yOS9lZDI1NTE5LWtleXMvXG4gICAqL1xuICBnZXQgc2VjcmV0S2V5KCk6IEJ1ZmZlciB7XG4gICAgcmV0dXJuIEJ1ZmZlci5jb25jYXQoW3RoaXMuX3NlY3JldEtleSwgdGhpcy5fcHVibGljS2V5XSwgNjQpO1xuICB9XG59XG4iLCAiaW1wb3J0IHtQdWJsaWNLZXl9IGZyb20gJy4vcHVibGlja2V5JztcblxuZXhwb3J0IGNvbnN0IEJQRl9MT0FERVJfREVQUkVDQVRFRF9QUk9HUkFNX0lEID0gbmV3IFB1YmxpY0tleShcbiAgJ0JQRkxvYWRlcjExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEnLFxuKTtcbiIsICIvKipcbiAqIE1heGltdW0gb3Zlci10aGUtd2lyZSBzaXplIG9mIGEgVHJhbnNhY3Rpb25cbiAqXG4gKiAxMjgwIGlzIElQdjYgbWluaW11bSBNVFVcbiAqIDQwIGJ5dGVzIGlzIHRoZSBzaXplIG9mIHRoZSBJUHY2IGhlYWRlclxuICogOCBieXRlcyBpcyB0aGUgc2l6ZSBvZiB0aGUgZnJhZ21lbnQgaGVhZGVyXG4gKi9cbmV4cG9ydCBjb25zdCBQQUNLRVRfREFUQV9TSVpFID0gMTI4MCAtIDQwIC0gODtcblxuZXhwb3J0IGNvbnN0IFZFUlNJT05fUFJFRklYX01BU0sgPSAweDdmO1xuXG5leHBvcnQgY29uc3QgU0lHTkFUVVJFX0xFTkdUSF9JTl9CWVRFUyA9IDY0O1xuIiwgImV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkV4cGlyZWRCbG9ja2hlaWdodEV4Y2VlZGVkRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIHNpZ25hdHVyZTogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHNpZ25hdHVyZTogc3RyaW5nKSB7XG4gICAgc3VwZXIoYFNpZ25hdHVyZSAke3NpZ25hdHVyZX0gaGFzIGV4cGlyZWQ6IGJsb2NrIGhlaWdodCBleGNlZWRlZC5gKTtcbiAgICB0aGlzLnNpZ25hdHVyZSA9IHNpZ25hdHVyZTtcbiAgfVxufVxuXG5PYmplY3QuZGVmaW5lUHJvcGVydHkoXG4gIFRyYW5zYWN0aW9uRXhwaXJlZEJsb2NraGVpZ2h0RXhjZWVkZWRFcnJvci5wcm90b3R5cGUsXG4gICduYW1lJyxcbiAge1xuICAgIHZhbHVlOiAnVHJhbnNhY3Rpb25FeHBpcmVkQmxvY2toZWlnaHRFeGNlZWRlZEVycm9yJyxcbiAgfSxcbik7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkV4cGlyZWRUaW1lb3V0RXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIHNpZ25hdHVyZTogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHNpZ25hdHVyZTogc3RyaW5nLCB0aW1lb3V0U2Vjb25kczogbnVtYmVyKSB7XG4gICAgc3VwZXIoXG4gICAgICBgVHJhbnNhY3Rpb24gd2FzIG5vdCBjb25maXJtZWQgaW4gJHt0aW1lb3V0U2Vjb25kcy50b0ZpeGVkKFxuICAgICAgICAyLFxuICAgICAgKX0gc2Vjb25kcy4gSXQgaXMgYCArXG4gICAgICAgICd1bmtub3duIGlmIGl0IHN1Y2NlZWRlZCBvciBmYWlsZWQuIENoZWNrIHNpZ25hdHVyZSAnICtcbiAgICAgICAgYCR7c2lnbmF0dXJlfSB1c2luZyB0aGUgU29sYW5hIEV4cGxvcmVyIG9yIENMSSB0b29scy5gLFxuICAgICk7XG4gICAgdGhpcy5zaWduYXR1cmUgPSBzaWduYXR1cmU7XG4gIH1cbn1cblxuT2JqZWN0LmRlZmluZVByb3BlcnR5KFRyYW5zYWN0aW9uRXhwaXJlZFRpbWVvdXRFcnJvci5wcm90b3R5cGUsICduYW1lJywge1xuICB2YWx1ZTogJ1RyYW5zYWN0aW9uRXhwaXJlZFRpbWVvdXRFcnJvcicsXG59KTtcblxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uRXhwaXJlZE5vbmNlSW52YWxpZEVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBzaWduYXR1cmU6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihzaWduYXR1cmU6IHN0cmluZykge1xuICAgIHN1cGVyKGBTaWduYXR1cmUgJHtzaWduYXR1cmV9IGhhcyBleHBpcmVkOiB0aGUgbm9uY2UgaXMgbm8gbG9uZ2VyIHZhbGlkLmApO1xuICAgIHRoaXMuc2lnbmF0dXJlID0gc2lnbmF0dXJlO1xuICB9XG59XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShUcmFuc2FjdGlvbkV4cGlyZWROb25jZUludmFsaWRFcnJvci5wcm90b3R5cGUsICduYW1lJywge1xuICB2YWx1ZTogJ1RyYW5zYWN0aW9uRXhwaXJlZE5vbmNlSW52YWxpZEVycm9yJyxcbn0pO1xuIiwgImltcG9ydCB7TG9hZGVkQWRkcmVzc2VzfSBmcm9tICcuLi9jb25uZWN0aW9uJztcbmltcG9ydCB7UHVibGljS2V5fSBmcm9tICcuLi9wdWJsaWNrZXknO1xuaW1wb3J0IHtUcmFuc2FjdGlvbkluc3RydWN0aW9ufSBmcm9tICcuLi90cmFuc2FjdGlvbic7XG5pbXBvcnQge01lc3NhZ2VDb21waWxlZEluc3RydWN0aW9ufSBmcm9tICcuL2luZGV4JztcblxuZXhwb3J0IHR5cGUgQWNjb3VudEtleXNGcm9tTG9va3VwcyA9IExvYWRlZEFkZHJlc3NlcztcblxuZXhwb3J0IGNsYXNzIE1lc3NhZ2VBY2NvdW50S2V5cyB7XG4gIHN0YXRpY0FjY291bnRLZXlzOiBBcnJheTxQdWJsaWNLZXk+O1xuICBhY2NvdW50S2V5c0Zyb21Mb29rdXBzPzogQWNjb3VudEtleXNGcm9tTG9va3VwcztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBzdGF0aWNBY2NvdW50S2V5czogQXJyYXk8UHVibGljS2V5PixcbiAgICBhY2NvdW50S2V5c0Zyb21Mb29rdXBzPzogQWNjb3VudEtleXNGcm9tTG9va3VwcyxcbiAgKSB7XG4gICAgdGhpcy5zdGF0aWNBY2NvdW50S2V5cyA9IHN0YXRpY0FjY291bnRLZXlzO1xuICAgIHRoaXMuYWNjb3VudEtleXNGcm9tTG9va3VwcyA9IGFjY291bnRLZXlzRnJvbUxvb2t1cHM7XG4gIH1cblxuICBrZXlTZWdtZW50cygpOiBBcnJheTxBcnJheTxQdWJsaWNLZXk+PiB7XG4gICAgY29uc3Qga2V5U2VnbWVudHMgPSBbdGhpcy5zdGF0aWNBY2NvdW50S2V5c107XG4gICAgaWYgKHRoaXMuYWNjb3VudEtleXNGcm9tTG9va3Vwcykge1xuICAgICAga2V5U2VnbWVudHMucHVzaCh0aGlzLmFjY291bnRLZXlzRnJvbUxvb2t1cHMud3JpdGFibGUpO1xuICAgICAga2V5U2VnbWVudHMucHVzaCh0aGlzLmFjY291bnRLZXlzRnJvbUxvb2t1cHMucmVhZG9ubHkpO1xuICAgIH1cbiAgICByZXR1cm4ga2V5U2VnbWVudHM7XG4gIH1cblxuICBnZXQoaW5kZXg6IG51bWJlcik6IFB1YmxpY0tleSB8IHVuZGVmaW5lZCB7XG4gICAgZm9yIChjb25zdCBrZXlTZWdtZW50IG9mIHRoaXMua2V5U2VnbWVudHMoKSkge1xuICAgICAgaWYgKGluZGV4IDwga2V5U2VnbWVudC5sZW5ndGgpIHtcbiAgICAgICAgcmV0dXJuIGtleVNlZ21lbnRbaW5kZXhdO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaW5kZXggLT0ga2V5U2VnbWVudC5sZW5ndGg7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybjtcbiAgfVxuXG4gIGdldCBsZW5ndGgoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5rZXlTZWdtZW50cygpLmZsYXQoKS5sZW5ndGg7XG4gIH1cblxuICBjb21waWxlSW5zdHJ1Y3Rpb25zKFxuICAgIGluc3RydWN0aW9uczogQXJyYXk8VHJhbnNhY3Rpb25JbnN0cnVjdGlvbj4sXG4gICk6IEFycmF5PE1lc3NhZ2VDb21waWxlZEluc3RydWN0aW9uPiB7XG4gICAgLy8gQmFpbCBlYXJseSBpZiBhbnkgYWNjb3VudCBpbmRleGVzIHdvdWxkIG92ZXJmbG93IGEgdThcbiAgICBjb25zdCBVOF9NQVggPSAyNTU7XG4gICAgaWYgKHRoaXMubGVuZ3RoID4gVThfTUFYICsgMSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdBY2NvdW50IGluZGV4IG92ZXJmbG93IGVuY291bnRlcmVkIGR1cmluZyBjb21waWxhdGlvbicpO1xuICAgIH1cblxuICAgIGNvbnN0IGtleUluZGV4TWFwID0gbmV3IE1hcCgpO1xuICAgIHRoaXMua2V5U2VnbWVudHMoKVxuICAgICAgLmZsYXQoKVxuICAgICAgLmZvckVhY2goKGtleSwgaW5kZXgpID0+IHtcbiAgICAgICAga2V5SW5kZXhNYXAuc2V0KGtleS50b0Jhc2U1OCgpLCBpbmRleCk7XG4gICAgICB9KTtcblxuICAgIGNvbnN0IGZpbmRLZXlJbmRleCA9IChrZXk6IFB1YmxpY0tleSkgPT4ge1xuICAgICAgY29uc3Qga2V5SW5kZXggPSBrZXlJbmRleE1hcC5nZXQoa2V5LnRvQmFzZTU4KCkpO1xuICAgICAgaWYgKGtleUluZGV4ID09PSB1bmRlZmluZWQpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAnRW5jb3VudGVyZWQgYW4gdW5rbm93biBpbnN0cnVjdGlvbiBhY2NvdW50IGtleSBkdXJpbmcgY29tcGlsYXRpb24nLFxuICAgICAgICApO1xuICAgICAgcmV0dXJuIGtleUluZGV4O1xuICAgIH07XG5cbiAgICByZXR1cm4gaW5zdHJ1Y3Rpb25zLm1hcCgoaW5zdHJ1Y3Rpb24pOiBNZXNzYWdlQ29tcGlsZWRJbnN0cnVjdGlvbiA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBwcm9ncmFtSWRJbmRleDogZmluZEtleUluZGV4KGluc3RydWN0aW9uLnByb2dyYW1JZCksXG4gICAgICAgIGFjY291bnRLZXlJbmRleGVzOiBpbnN0cnVjdGlvbi5rZXlzLm1hcChtZXRhID0+XG4gICAgICAgICAgZmluZEtleUluZGV4KG1ldGEucHVia2V5KSxcbiAgICAgICAgKSxcbiAgICAgICAgZGF0YTogaW5zdHJ1Y3Rpb24uZGF0YSxcbiAgICAgIH07XG4gICAgfSk7XG4gIH1cbn1cbiIsICJpbXBvcnQge0J1ZmZlcn0gZnJvbSAnYnVmZmVyJztcbmltcG9ydCAqIGFzIEJ1ZmZlckxheW91dCBmcm9tICdAc29sYW5hL2J1ZmZlci1sYXlvdXQnO1xuXG5pbXBvcnQge1ZvdGVBdXRob3JpemVXaXRoU2VlZEFyZ3N9IGZyb20gJy4vcHJvZ3JhbXMvdm90ZSc7XG5cbi8qKlxuICogTGF5b3V0IGZvciBhIHB1YmxpYyBrZXlcbiAqL1xuZXhwb3J0IGNvbnN0IHB1YmxpY0tleSA9IChwcm9wZXJ0eTogc3RyaW5nID0gJ3B1YmxpY0tleScpID0+IHtcbiAgcmV0dXJuIEJ1ZmZlckxheW91dC5ibG9iKDMyLCBwcm9wZXJ0eSk7XG59O1xuXG4vKipcbiAqIExheW91dCBmb3IgYSBzaWduYXR1cmVcbiAqL1xuZXhwb3J0IGNvbnN0IHNpZ25hdHVyZSA9IChwcm9wZXJ0eTogc3RyaW5nID0gJ3NpZ25hdHVyZScpID0+IHtcbiAgcmV0dXJuIEJ1ZmZlckxheW91dC5ibG9iKDY0LCBwcm9wZXJ0eSk7XG59O1xuXG4vKipcbiAqIExheW91dCBmb3IgYSA2NGJpdCB1bnNpZ25lZCB2YWx1ZVxuICovXG5leHBvcnQgY29uc3QgdWludDY0ID0gKHByb3BlcnR5OiBzdHJpbmcgPSAndWludDY0JykgPT4ge1xuICByZXR1cm4gQnVmZmVyTGF5b3V0LmJsb2IoOCwgcHJvcGVydHkpO1xufTtcblxuaW50ZXJmYWNlIElSdXN0U3RyaW5nU2hpbVxuICBleHRlbmRzIE9taXQ8XG4gICAgQnVmZmVyTGF5b3V0LlN0cnVjdHVyZTxcbiAgICAgIFJlYWRvbmx5PHtcbiAgICAgICAgbGVuZ3RoOiBudW1iZXI7XG4gICAgICAgIGxlbmd0aFBhZGRpbmc6IG51bWJlcjtcbiAgICAgICAgY2hhcnM6IFVpbnQ4QXJyYXk7XG4gICAgICB9PlxuICAgID4sXG4gICAgJ2RlY29kZScgfCAnZW5jb2RlJyB8ICdyZXBsaWNhdGUnXG4gID4ge1xuICBhbGxvYzogKHN0cjogc3RyaW5nKSA9PiBudW1iZXI7XG4gIGRlY29kZTogKGI6IFVpbnQ4QXJyYXksIG9mZnNldD86IG51bWJlcikgPT4gc3RyaW5nO1xuICBlbmNvZGU6IChzdHI6IHN0cmluZywgYjogVWludDhBcnJheSwgb2Zmc2V0PzogbnVtYmVyKSA9PiBudW1iZXI7XG4gIHJlcGxpY2F0ZTogKHByb3BlcnR5OiBzdHJpbmcpID0+IHRoaXM7XG59XG5cbi8qKlxuICogTGF5b3V0IGZvciBhIFJ1c3QgU3RyaW5nIHR5cGVcbiAqL1xuZXhwb3J0IGNvbnN0IHJ1c3RTdHJpbmcgPSAoXG4gIHByb3BlcnR5OiBzdHJpbmcgPSAnc3RyaW5nJyxcbik6IEJ1ZmZlckxheW91dC5MYXlvdXQ8c3RyaW5nPiA9PiB7XG4gIGNvbnN0IHJzbCA9IEJ1ZmZlckxheW91dC5zdHJ1Y3Q8XG4gICAgUmVhZG9ubHk8e1xuICAgICAgbGVuZ3RoPzogbnVtYmVyO1xuICAgICAgbGVuZ3RoUGFkZGluZz86IG51bWJlcjtcbiAgICAgIGNoYXJzOiBVaW50OEFycmF5O1xuICAgIH0+XG4gID4oXG4gICAgW1xuICAgICAgQnVmZmVyTGF5b3V0LnUzMignbGVuZ3RoJyksXG4gICAgICBCdWZmZXJMYXlvdXQudTMyKCdsZW5ndGhQYWRkaW5nJyksXG4gICAgICBCdWZmZXJMYXlvdXQuYmxvYihCdWZmZXJMYXlvdXQub2Zmc2V0KEJ1ZmZlckxheW91dC51MzIoKSwgLTgpLCAnY2hhcnMnKSxcbiAgICBdLFxuICAgIHByb3BlcnR5LFxuICApO1xuICBjb25zdCBfZGVjb2RlID0gcnNsLmRlY29kZS5iaW5kKHJzbCk7XG4gIGNvbnN0IF9lbmNvZGUgPSByc2wuZW5jb2RlLmJpbmQocnNsKTtcblxuICBjb25zdCByc2xTaGltID0gcnNsIGFzIHVua25vd24gYXMgSVJ1c3RTdHJpbmdTaGltO1xuXG4gIHJzbFNoaW0uZGVjb2RlID0gKGI6IFVpbnQ4QXJyYXksIG9mZnNldD86IG51bWJlcikgPT4ge1xuICAgIGNvbnN0IGRhdGEgPSBfZGVjb2RlKGIsIG9mZnNldCk7XG4gICAgcmV0dXJuIGRhdGFbJ2NoYXJzJ10udG9TdHJpbmcoKTtcbiAgfTtcblxuICByc2xTaGltLmVuY29kZSA9IChzdHI6IHN0cmluZywgYjogVWludDhBcnJheSwgb2Zmc2V0PzogbnVtYmVyKSA9PiB7XG4gICAgY29uc3QgZGF0YSA9IHtcbiAgICAgIGNoYXJzOiBCdWZmZXIuZnJvbShzdHIsICd1dGY4JyksXG4gICAgfTtcbiAgICByZXR1cm4gX2VuY29kZShkYXRhLCBiLCBvZmZzZXQpO1xuICB9O1xuXG4gIHJzbFNoaW0uYWxsb2MgPSAoc3RyOiBzdHJpbmcpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgQnVmZmVyTGF5b3V0LnUzMigpLnNwYW4gK1xuICAgICAgQnVmZmVyTGF5b3V0LnUzMigpLnNwYW4gK1xuICAgICAgQnVmZmVyLmZyb20oc3RyLCAndXRmOCcpLmxlbmd0aFxuICAgICk7XG4gIH07XG5cbiAgcmV0dXJuIHJzbFNoaW07XG59O1xuXG4vKipcbiAqIExheW91dCBmb3IgYW4gQXV0aG9yaXplZCBvYmplY3RcbiAqL1xuZXhwb3J0IGNvbnN0IGF1dGhvcml6ZWQgPSAocHJvcGVydHk6IHN0cmluZyA9ICdhdXRob3JpemVkJykgPT4ge1xuICByZXR1cm4gQnVmZmVyTGF5b3V0LnN0cnVjdDxcbiAgICBSZWFkb25seTx7XG4gICAgICBzdGFrZXI6IFVpbnQ4QXJyYXk7XG4gICAgICB3aXRoZHJhd2VyOiBVaW50OEFycmF5O1xuICAgIH0+XG4gID4oW3B1YmxpY0tleSgnc3Rha2VyJyksIHB1YmxpY0tleSgnd2l0aGRyYXdlcicpXSwgcHJvcGVydHkpO1xufTtcblxuLyoqXG4gKiBMYXlvdXQgZm9yIGEgTG9ja3VwIG9iamVjdFxuICovXG5leHBvcnQgY29uc3QgbG9ja3VwID0gKHByb3BlcnR5OiBzdHJpbmcgPSAnbG9ja3VwJykgPT4ge1xuICByZXR1cm4gQnVmZmVyTGF5b3V0LnN0cnVjdDxcbiAgICBSZWFkb25seTx7XG4gICAgICBjdXN0b2RpYW46IFVpbnQ4QXJyYXk7XG4gICAgICBlcG9jaDogbnVtYmVyO1xuICAgICAgdW5peFRpbWVzdGFtcDogbnVtYmVyO1xuICAgIH0+XG4gID4oXG4gICAgW1xuICAgICAgQnVmZmVyTGF5b3V0Lm5zNjQoJ3VuaXhUaW1lc3RhbXAnKSxcbiAgICAgIEJ1ZmZlckxheW91dC5uczY0KCdlcG9jaCcpLFxuICAgICAgcHVibGljS2V5KCdjdXN0b2RpYW4nKSxcbiAgICBdLFxuICAgIHByb3BlcnR5LFxuICApO1xufTtcblxuLyoqXG4gKiAgTGF5b3V0IGZvciBhIFZvdGVJbml0IG9iamVjdFxuICovXG5leHBvcnQgY29uc3Qgdm90ZUluaXQgPSAocHJvcGVydHk6IHN0cmluZyA9ICd2b3RlSW5pdCcpID0+IHtcbiAgcmV0dXJuIEJ1ZmZlckxheW91dC5zdHJ1Y3Q8XG4gICAgUmVhZG9ubHk8e1xuICAgICAgYXV0aG9yaXplZFZvdGVyOiBVaW50OEFycmF5O1xuICAgICAgYXV0aG9yaXplZFdpdGhkcmF3ZXI6IFVpbnQ4QXJyYXk7XG4gICAgICBjb21taXNzaW9uOiBudW1iZXI7XG4gICAgICBub2RlUHVia2V5OiBVaW50OEFycmF5O1xuICAgIH0+XG4gID4oXG4gICAgW1xuICAgICAgcHVibGljS2V5KCdub2RlUHVia2V5JyksXG4gICAgICBwdWJsaWNLZXkoJ2F1dGhvcml6ZWRWb3RlcicpLFxuICAgICAgcHVibGljS2V5KCdhdXRob3JpemVkV2l0aGRyYXdlcicpLFxuICAgICAgQnVmZmVyTGF5b3V0LnU4KCdjb21taXNzaW9uJyksXG4gICAgXSxcbiAgICBwcm9wZXJ0eSxcbiAgKTtcbn07XG5cbi8qKlxuICogIExheW91dCBmb3IgYSBWb3RlQXV0aG9yaXplV2l0aFNlZWRBcmdzIG9iamVjdFxuICovXG5leHBvcnQgY29uc3Qgdm90ZUF1dGhvcml6ZVdpdGhTZWVkQXJncyA9IChcbiAgcHJvcGVydHk6IHN0cmluZyA9ICd2b3RlQXV0aG9yaXplV2l0aFNlZWRBcmdzJyxcbikgPT4ge1xuICByZXR1cm4gQnVmZmVyTGF5b3V0LnN0cnVjdDxWb3RlQXV0aG9yaXplV2l0aFNlZWRBcmdzPihcbiAgICBbXG4gICAgICBCdWZmZXJMYXlvdXQudTMyKCd2b3RlQXV0aG9yaXphdGlvblR5cGUnKSxcbiAgICAgIHB1YmxpY0tleSgnY3VycmVudEF1dGhvcml0eURlcml2ZWRLZXlPd25lclB1YmtleScpLFxuICAgICAgcnVzdFN0cmluZygnY3VycmVudEF1dGhvcml0eURlcml2ZWRLZXlTZWVkJyksXG4gICAgICBwdWJsaWNLZXkoJ25ld0F1dGhvcml6ZWQnKSxcbiAgICBdLFxuICAgIHByb3BlcnR5LFxuICApO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldEFsbG9jKHR5cGU6IGFueSwgZmllbGRzOiBhbnkpOiBudW1iZXIge1xuICBjb25zdCBnZXRJdGVtQWxsb2MgPSAoaXRlbTogYW55KTogbnVtYmVyID0+IHtcbiAgICBpZiAoaXRlbS5zcGFuID49IDApIHtcbiAgICAgIHJldHVybiBpdGVtLnNwYW47XG4gICAgfSBlbHNlIGlmICh0eXBlb2YgaXRlbS5hbGxvYyA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgcmV0dXJuIGl0ZW0uYWxsb2MoZmllbGRzW2l0ZW0ucHJvcGVydHldKTtcbiAgICB9IGVsc2UgaWYgKCdjb3VudCcgaW4gaXRlbSAmJiAnZWxlbWVudExheW91dCcgaW4gaXRlbSkge1xuICAgICAgY29uc3QgZmllbGQgPSBmaWVsZHNbaXRlbS5wcm9wZXJ0eV07XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShmaWVsZCkpIHtcbiAgICAgICAgcmV0dXJuIGZpZWxkLmxlbmd0aCAqIGdldEl0ZW1BbGxvYyhpdGVtLmVsZW1lbnRMYXlvdXQpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoJ2ZpZWxkcycgaW4gaXRlbSkge1xuICAgICAgLy8gVGhpcyBpcyBhIGBTdHJ1Y3R1cmVgIHdob3NlIHNpemUgbmVlZHMgdG8gYmUgcmVjdXJzaXZlbHkgbWVhc3VyZWQuXG4gICAgICByZXR1cm4gZ2V0QWxsb2Moe2xheW91dDogaXRlbX0sIGZpZWxkc1tpdGVtLnByb3BlcnR5XSk7XG4gICAgfVxuICAgIC8vIENvdWxkbid0IGRldGVybWluZSBhbGxvY2F0ZWQgc2l6ZSBvZiBsYXlvdXRcbiAgICByZXR1cm4gMDtcbiAgfTtcblxuICBsZXQgYWxsb2MgPSAwO1xuICB0eXBlLmxheW91dC5maWVsZHMuZm9yRWFjaCgoaXRlbTogYW55KSA9PiB7XG4gICAgYWxsb2MgKz0gZ2V0SXRlbUFsbG9jKGl0ZW0pO1xuICB9KTtcblxuICByZXR1cm4gYWxsb2M7XG59XG4iLCAiZXhwb3J0IGZ1bmN0aW9uIGRlY29kZUxlbmd0aChieXRlczogQXJyYXk8bnVtYmVyPik6IG51bWJlciB7XG4gIGxldCBsZW4gPSAwO1xuICBsZXQgc2l6ZSA9IDA7XG4gIGZvciAoOzspIHtcbiAgICBsZXQgZWxlbSA9IGJ5dGVzLnNoaWZ0KCkgYXMgbnVtYmVyO1xuICAgIGxlbiB8PSAoZWxlbSAmIDB4N2YpIDw8IChzaXplICogNyk7XG4gICAgc2l6ZSArPSAxO1xuICAgIGlmICgoZWxlbSAmIDB4ODApID09PSAwKSB7XG4gICAgICBicmVhaztcbiAgICB9XG4gIH1cbiAgcmV0dXJuIGxlbjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGVuY29kZUxlbmd0aChieXRlczogQXJyYXk8bnVtYmVyPiwgbGVuOiBudW1iZXIpIHtcbiAgbGV0IHJlbV9sZW4gPSBsZW47XG4gIGZvciAoOzspIHtcbiAgICBsZXQgZWxlbSA9IHJlbV9sZW4gJiAweDdmO1xuICAgIHJlbV9sZW4gPj49IDc7XG4gICAgaWYgKHJlbV9sZW4gPT0gMCkge1xuICAgICAgYnl0ZXMucHVzaChlbGVtKTtcbiAgICAgIGJyZWFrO1xuICAgIH0gZWxzZSB7XG4gICAgICBlbGVtIHw9IDB4ODA7XG4gICAgICBieXRlcy5wdXNoKGVsZW0pO1xuICAgIH1cbiAgfVxufVxuIiwgImV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIChcbiAgY29uZGl0aW9uOiB1bmtub3duLFxuICBtZXNzYWdlPzogc3RyaW5nLFxuKTogYXNzZXJ0cyBjb25kaXRpb24ge1xuICBpZiAoIWNvbmRpdGlvbikge1xuICAgIHRocm93IG5ldyBFcnJvcihtZXNzYWdlIHx8ICdBc3NlcnRpb24gZmFpbGVkJyk7XG4gIH1cbn1cbiIsICJpbXBvcnQge01lc3NhZ2VIZWFkZXIsIE1lc3NhZ2VBZGRyZXNzVGFibGVMb29rdXB9IGZyb20gJy4vaW5kZXgnO1xuaW1wb3J0IHtBY2NvdW50S2V5c0Zyb21Mb29rdXBzfSBmcm9tICcuL2FjY291bnQta2V5cyc7XG5pbXBvcnQge0FkZHJlc3NMb29rdXBUYWJsZUFjY291bnR9IGZyb20gJy4uL3Byb2dyYW1zJztcbmltcG9ydCB7VHJhbnNhY3Rpb25JbnN0cnVjdGlvbn0gZnJvbSAnLi4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IGFzc2VydCBmcm9tICcuLi91dGlscy9hc3NlcnQnO1xuaW1wb3J0IHtQdWJsaWNLZXl9IGZyb20gJy4uL3B1YmxpY2tleSc7XG5cbmV4cG9ydCB0eXBlIENvbXBpbGVkS2V5TWV0YSA9IHtcbiAgaXNTaWduZXI6IGJvb2xlYW47XG4gIGlzV3JpdGFibGU6IGJvb2xlYW47XG4gIGlzSW52b2tlZDogYm9vbGVhbjtcbn07XG5cbnR5cGUgS2V5TWV0YU1hcCA9IE1hcDxzdHJpbmcsIENvbXBpbGVkS2V5TWV0YT47XG5cbmV4cG9ydCBjbGFzcyBDb21waWxlZEtleXMge1xuICBwYXllcjogUHVibGljS2V5O1xuICBrZXlNZXRhTWFwOiBLZXlNZXRhTWFwO1xuXG4gIGNvbnN0cnVjdG9yKHBheWVyOiBQdWJsaWNLZXksIGtleU1ldGFNYXA6IEtleU1ldGFNYXApIHtcbiAgICB0aGlzLnBheWVyID0gcGF5ZXI7XG4gICAgdGhpcy5rZXlNZXRhTWFwID0ga2V5TWV0YU1hcDtcbiAgfVxuXG4gIHN0YXRpYyBjb21waWxlKFxuICAgIGluc3RydWN0aW9uczogQXJyYXk8VHJhbnNhY3Rpb25JbnN0cnVjdGlvbj4sXG4gICAgcGF5ZXI6IFB1YmxpY0tleSxcbiAgKTogQ29tcGlsZWRLZXlzIHtcbiAgICBjb25zdCBrZXlNZXRhTWFwOiBLZXlNZXRhTWFwID0gbmV3IE1hcCgpO1xuICAgIGNvbnN0IGdldE9ySW5zZXJ0RGVmYXVsdCA9IChwdWJrZXk6IFB1YmxpY0tleSk6IENvbXBpbGVkS2V5TWV0YSA9PiB7XG4gICAgICBjb25zdCBhZGRyZXNzID0gcHVia2V5LnRvQmFzZTU4KCk7XG4gICAgICBsZXQga2V5TWV0YSA9IGtleU1ldGFNYXAuZ2V0KGFkZHJlc3MpO1xuICAgICAgaWYgKGtleU1ldGEgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBrZXlNZXRhID0ge1xuICAgICAgICAgIGlzU2lnbmVyOiBmYWxzZSxcbiAgICAgICAgICBpc1dyaXRhYmxlOiBmYWxzZSxcbiAgICAgICAgICBpc0ludm9rZWQ6IGZhbHNlLFxuICAgICAgICB9O1xuICAgICAgICBrZXlNZXRhTWFwLnNldChhZGRyZXNzLCBrZXlNZXRhKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBrZXlNZXRhO1xuICAgIH07XG5cbiAgICBjb25zdCBwYXllcktleU1ldGEgPSBnZXRPckluc2VydERlZmF1bHQocGF5ZXIpO1xuICAgIHBheWVyS2V5TWV0YS5pc1NpZ25lciA9IHRydWU7XG4gICAgcGF5ZXJLZXlNZXRhLmlzV3JpdGFibGUgPSB0cnVlO1xuXG4gICAgZm9yIChjb25zdCBpeCBvZiBpbnN0cnVjdGlvbnMpIHtcbiAgICAgIGdldE9ySW5zZXJ0RGVmYXVsdChpeC5wcm9ncmFtSWQpLmlzSW52b2tlZCA9IHRydWU7XG4gICAgICBmb3IgKGNvbnN0IGFjY291bnRNZXRhIG9mIGl4LmtleXMpIHtcbiAgICAgICAgY29uc3Qga2V5TWV0YSA9IGdldE9ySW5zZXJ0RGVmYXVsdChhY2NvdW50TWV0YS5wdWJrZXkpO1xuICAgICAgICBrZXlNZXRhLmlzU2lnbmVyIHx8PSBhY2NvdW50TWV0YS5pc1NpZ25lcjtcbiAgICAgICAga2V5TWV0YS5pc1dyaXRhYmxlIHx8PSBhY2NvdW50TWV0YS5pc1dyaXRhYmxlO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBuZXcgQ29tcGlsZWRLZXlzKHBheWVyLCBrZXlNZXRhTWFwKTtcbiAgfVxuXG4gIGdldE1lc3NhZ2VDb21wb25lbnRzKCk6IFtNZXNzYWdlSGVhZGVyLCBBcnJheTxQdWJsaWNLZXk+XSB7XG4gICAgY29uc3QgbWFwRW50cmllcyA9IFsuLi50aGlzLmtleU1ldGFNYXAuZW50cmllcygpXTtcbiAgICBhc3NlcnQobWFwRW50cmllcy5sZW5ndGggPD0gMjU2LCAnTWF4IHN0YXRpYyBhY2NvdW50IGtleXMgbGVuZ3RoIGV4Y2VlZGVkJyk7XG5cbiAgICBjb25zdCB3cml0YWJsZVNpZ25lcnMgPSBtYXBFbnRyaWVzLmZpbHRlcihcbiAgICAgIChbLCBtZXRhXSkgPT4gbWV0YS5pc1NpZ25lciAmJiBtZXRhLmlzV3JpdGFibGUsXG4gICAgKTtcbiAgICBjb25zdCByZWFkb25seVNpZ25lcnMgPSBtYXBFbnRyaWVzLmZpbHRlcihcbiAgICAgIChbLCBtZXRhXSkgPT4gbWV0YS5pc1NpZ25lciAmJiAhbWV0YS5pc1dyaXRhYmxlLFxuICAgICk7XG4gICAgY29uc3Qgd3JpdGFibGVOb25TaWduZXJzID0gbWFwRW50cmllcy5maWx0ZXIoXG4gICAgICAoWywgbWV0YV0pID0+ICFtZXRhLmlzU2lnbmVyICYmIG1ldGEuaXNXcml0YWJsZSxcbiAgICApO1xuICAgIGNvbnN0IHJlYWRvbmx5Tm9uU2lnbmVycyA9IG1hcEVudHJpZXMuZmlsdGVyKFxuICAgICAgKFssIG1ldGFdKSA9PiAhbWV0YS5pc1NpZ25lciAmJiAhbWV0YS5pc1dyaXRhYmxlLFxuICAgICk7XG5cbiAgICBjb25zdCBoZWFkZXI6IE1lc3NhZ2VIZWFkZXIgPSB7XG4gICAgICBudW1SZXF1aXJlZFNpZ25hdHVyZXM6IHdyaXRhYmxlU2lnbmVycy5sZW5ndGggKyByZWFkb25seVNpZ25lcnMubGVuZ3RoLFxuICAgICAgbnVtUmVhZG9ubHlTaWduZWRBY2NvdW50czogcmVhZG9ubHlTaWduZXJzLmxlbmd0aCxcbiAgICAgIG51bVJlYWRvbmx5VW5zaWduZWRBY2NvdW50czogcmVhZG9ubHlOb25TaWduZXJzLmxlbmd0aCxcbiAgICB9O1xuXG4gICAgLy8gc2FuaXR5IGNoZWNrc1xuICAgIHtcbiAgICAgIGFzc2VydChcbiAgICAgICAgd3JpdGFibGVTaWduZXJzLmxlbmd0aCA+IDAsXG4gICAgICAgICdFeHBlY3RlZCBhdCBsZWFzdCBvbmUgd3JpdGFibGUgc2lnbmVyIGtleScsXG4gICAgICApO1xuICAgICAgY29uc3QgW3BheWVyQWRkcmVzc10gPSB3cml0YWJsZVNpZ25lcnNbMF07XG4gICAgICBhc3NlcnQoXG4gICAgICAgIHBheWVyQWRkcmVzcyA9PT0gdGhpcy5wYXllci50b0Jhc2U1OCgpLFxuICAgICAgICAnRXhwZWN0ZWQgZmlyc3Qgd3JpdGFibGUgc2lnbmVyIGtleSB0byBiZSB0aGUgZmVlIHBheWVyJyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgY29uc3Qgc3RhdGljQWNjb3VudEtleXMgPSBbXG4gICAgICAuLi53cml0YWJsZVNpZ25lcnMubWFwKChbYWRkcmVzc10pID0+IG5ldyBQdWJsaWNLZXkoYWRkcmVzcykpLFxuICAgICAgLi4ucmVhZG9ubHlTaWduZXJzLm1hcCgoW2FkZHJlc3NdKSA9PiBuZXcgUHVibGljS2V5KGFkZHJlc3MpKSxcbiAgICAgIC4uLndyaXRhYmxlTm9uU2lnbmVycy5tYXAoKFthZGRyZXNzXSkgPT4gbmV3IFB1YmxpY0tleShhZGRyZXNzKSksXG4gICAgICAuLi5yZWFkb25seU5vblNpZ25lcnMubWFwKChbYWRkcmVzc10pID0+IG5ldyBQdWJsaWNLZXkoYWRkcmVzcykpLFxuICAgIF07XG5cbiAgICByZXR1cm4gW2hlYWRlciwgc3RhdGljQWNjb3VudEtleXNdO1xuICB9XG5cbiAgZXh0cmFjdFRhYmxlTG9va3VwKFxuICAgIGxvb2t1cFRhYmxlOiBBZGRyZXNzTG9va3VwVGFibGVBY2NvdW50LFxuICApOiBbTWVzc2FnZUFkZHJlc3NUYWJsZUxvb2t1cCwgQWNjb3VudEtleXNGcm9tTG9va3Vwc10gfCB1bmRlZmluZWQge1xuICAgIGNvbnN0IFt3cml0YWJsZUluZGV4ZXMsIGRyYWluZWRXcml0YWJsZUtleXNdID1cbiAgICAgIHRoaXMuZHJhaW5LZXlzRm91bmRJbkxvb2t1cFRhYmxlKFxuICAgICAgICBsb29rdXBUYWJsZS5zdGF0ZS5hZGRyZXNzZXMsXG4gICAgICAgIGtleU1ldGEgPT5cbiAgICAgICAgICAha2V5TWV0YS5pc1NpZ25lciAmJiAha2V5TWV0YS5pc0ludm9rZWQgJiYga2V5TWV0YS5pc1dyaXRhYmxlLFxuICAgICAgKTtcbiAgICBjb25zdCBbcmVhZG9ubHlJbmRleGVzLCBkcmFpbmVkUmVhZG9ubHlLZXlzXSA9XG4gICAgICB0aGlzLmRyYWluS2V5c0ZvdW5kSW5Mb29rdXBUYWJsZShcbiAgICAgICAgbG9va3VwVGFibGUuc3RhdGUuYWRkcmVzc2VzLFxuICAgICAgICBrZXlNZXRhID0+XG4gICAgICAgICAgIWtleU1ldGEuaXNTaWduZXIgJiYgIWtleU1ldGEuaXNJbnZva2VkICYmICFrZXlNZXRhLmlzV3JpdGFibGUsXG4gICAgICApO1xuXG4gICAgLy8gRG9uJ3QgZXh0cmFjdCBsb29rdXAgaWYgbm8ga2V5cyB3ZXJlIGZvdW5kXG4gICAgaWYgKHdyaXRhYmxlSW5kZXhlcy5sZW5ndGggPT09IDAgJiYgcmVhZG9ubHlJbmRleGVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHJldHVybiBbXG4gICAgICB7XG4gICAgICAgIGFjY291bnRLZXk6IGxvb2t1cFRhYmxlLmtleSxcbiAgICAgICAgd3JpdGFibGVJbmRleGVzLFxuICAgICAgICByZWFkb25seUluZGV4ZXMsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICB3cml0YWJsZTogZHJhaW5lZFdyaXRhYmxlS2V5cyxcbiAgICAgICAgcmVhZG9ubHk6IGRyYWluZWRSZWFkb25seUtleXMsXG4gICAgICB9LFxuICAgIF07XG4gIH1cblxuICAvKiogQGludGVybmFsICovXG4gIHByaXZhdGUgZHJhaW5LZXlzRm91bmRJbkxvb2t1cFRhYmxlKFxuICAgIGxvb2t1cFRhYmxlRW50cmllczogQXJyYXk8UHVibGljS2V5PixcbiAgICBrZXlNZXRhRmlsdGVyOiAoa2V5TWV0YTogQ29tcGlsZWRLZXlNZXRhKSA9PiBib29sZWFuLFxuICApOiBbQXJyYXk8bnVtYmVyPiwgQXJyYXk8UHVibGljS2V5Pl0ge1xuICAgIGNvbnN0IGxvb2t1cFRhYmxlSW5kZXhlcyA9IG5ldyBBcnJheSgpO1xuICAgIGNvbnN0IGRyYWluZWRLZXlzID0gbmV3IEFycmF5KCk7XG5cbiAgICBmb3IgKGNvbnN0IFthZGRyZXNzLCBrZXlNZXRhXSBvZiB0aGlzLmtleU1ldGFNYXAuZW50cmllcygpKSB7XG4gICAgICBpZiAoa2V5TWV0YUZpbHRlcihrZXlNZXRhKSkge1xuICAgICAgICBjb25zdCBrZXkgPSBuZXcgUHVibGljS2V5KGFkZHJlc3MpO1xuICAgICAgICBjb25zdCBsb29rdXBUYWJsZUluZGV4ID0gbG9va3VwVGFibGVFbnRyaWVzLmZpbmRJbmRleChlbnRyeSA9PlxuICAgICAgICAgIGVudHJ5LmVxdWFscyhrZXkpLFxuICAgICAgICApO1xuICAgICAgICBpZiAobG9va3VwVGFibGVJbmRleCA+PSAwKSB7XG4gICAgICAgICAgYXNzZXJ0KGxvb2t1cFRhYmxlSW5kZXggPCAyNTYsICdNYXggbG9va3VwIHRhYmxlIGluZGV4IGV4Y2VlZGVkJyk7XG4gICAgICAgICAgbG9va3VwVGFibGVJbmRleGVzLnB1c2gobG9va3VwVGFibGVJbmRleCk7XG4gICAgICAgICAgZHJhaW5lZEtleXMucHVzaChrZXkpO1xuICAgICAgICAgIHRoaXMua2V5TWV0YU1hcC5kZWxldGUoYWRkcmVzcyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gW2xvb2t1cFRhYmxlSW5kZXhlcywgZHJhaW5lZEtleXNdO1xuICB9XG59XG4iLCAiaW1wb3J0IGJzNTggZnJvbSAnYnM1OCc7XG5pbXBvcnQge0J1ZmZlcn0gZnJvbSAnYnVmZmVyJztcbmltcG9ydCAqIGFzIEJ1ZmZlckxheW91dCBmcm9tICdAc29sYW5hL2J1ZmZlci1sYXlvdXQnO1xuXG5pbXBvcnQge1B1YmxpY0tleSwgUFVCTElDX0tFWV9MRU5HVEh9IGZyb20gJy4uL3B1YmxpY2tleSc7XG5pbXBvcnQgdHlwZSB7QmxvY2toYXNofSBmcm9tICcuLi9ibG9ja2hhc2gnO1xuaW1wb3J0ICogYXMgTGF5b3V0IGZyb20gJy4uL2xheW91dCc7XG5pbXBvcnQge1BBQ0tFVF9EQVRBX1NJWkUsIFZFUlNJT05fUFJFRklYX01BU0t9IGZyb20gJy4uL3RyYW5zYWN0aW9uL2NvbnN0YW50cyc7XG5pbXBvcnQgKiBhcyBzaG9ydHZlYyBmcm9tICcuLi91dGlscy9zaG9ydHZlYy1lbmNvZGluZyc7XG5pbXBvcnQge3RvQnVmZmVyfSBmcm9tICcuLi91dGlscy90by1idWZmZXInO1xuaW1wb3J0IHtcbiAgTWVzc2FnZUhlYWRlcixcbiAgTWVzc2FnZUFkZHJlc3NUYWJsZUxvb2t1cCxcbiAgTWVzc2FnZUNvbXBpbGVkSW5zdHJ1Y3Rpb24sXG59IGZyb20gJy4vaW5kZXgnO1xuaW1wb3J0IHtUcmFuc2FjdGlvbkluc3RydWN0aW9ufSBmcm9tICcuLi90cmFuc2FjdGlvbic7XG5pbXBvcnQge0NvbXBpbGVkS2V5c30gZnJvbSAnLi9jb21waWxlZC1rZXlzJztcbmltcG9ydCB7TWVzc2FnZUFjY291bnRLZXlzfSBmcm9tICcuL2FjY291bnQta2V5cyc7XG5cbi8qKlxuICogQW4gaW5zdHJ1Y3Rpb24gdG8gZXhlY3V0ZSBieSBhIHByb2dyYW1cbiAqXG4gKiBAcHJvcGVydHkge251bWJlcn0gcHJvZ3JhbUlkSW5kZXhcbiAqIEBwcm9wZXJ0eSB7bnVtYmVyW119IGFjY291bnRzXG4gKiBAcHJvcGVydHkge3N0cmluZ30gZGF0YVxuICovXG5leHBvcnQgdHlwZSBDb21waWxlZEluc3RydWN0aW9uID0ge1xuICAvKiogSW5kZXggaW50byB0aGUgdHJhbnNhY3Rpb24ga2V5cyBhcnJheSBpbmRpY2F0aW5nIHRoZSBwcm9ncmFtIGFjY291bnQgdGhhdCBleGVjdXRlcyB0aGlzIGluc3RydWN0aW9uICovXG4gIHByb2dyYW1JZEluZGV4OiBudW1iZXI7XG4gIC8qKiBPcmRlcmVkIGluZGljZXMgaW50byB0aGUgdHJhbnNhY3Rpb24ga2V5cyBhcnJheSBpbmRpY2F0aW5nIHdoaWNoIGFjY291bnRzIHRvIHBhc3MgdG8gdGhlIHByb2dyYW0gKi9cbiAgYWNjb3VudHM6IG51bWJlcltdO1xuICAvKiogVGhlIHByb2dyYW0gaW5wdXQgZGF0YSBlbmNvZGVkIGFzIGJhc2UgNTggKi9cbiAgZGF0YTogc3RyaW5nO1xufTtcblxuLyoqXG4gKiBNZXNzYWdlIGNvbnN0cnVjdG9yIGFyZ3VtZW50c1xuICovXG5leHBvcnQgdHlwZSBNZXNzYWdlQXJncyA9IHtcbiAgLyoqIFRoZSBtZXNzYWdlIGhlYWRlciwgaWRlbnRpZnlpbmcgc2lnbmVkIGFuZCByZWFkLW9ubHkgYGFjY291bnRLZXlzYCAqL1xuICBoZWFkZXI6IE1lc3NhZ2VIZWFkZXI7XG4gIC8qKiBBbGwgdGhlIGFjY291bnQga2V5cyB1c2VkIGJ5IHRoaXMgdHJhbnNhY3Rpb24gKi9cbiAgYWNjb3VudEtleXM6IHN0cmluZ1tdIHwgUHVibGljS2V5W107XG4gIC8qKiBUaGUgaGFzaCBvZiBhIHJlY2VudCBsZWRnZXIgYmxvY2sgKi9cbiAgcmVjZW50QmxvY2toYXNoOiBCbG9ja2hhc2g7XG4gIC8qKiBJbnN0cnVjdGlvbnMgdGhhdCB3aWxsIGJlIGV4ZWN1dGVkIGluIHNlcXVlbmNlIGFuZCBjb21taXR0ZWQgaW4gb25lIGF0b21pYyB0cmFuc2FjdGlvbiBpZiBhbGwgc3VjY2VlZC4gKi9cbiAgaW5zdHJ1Y3Rpb25zOiBDb21waWxlZEluc3RydWN0aW9uW107XG59O1xuXG5leHBvcnQgdHlwZSBDb21waWxlTGVnYWN5QXJncyA9IHtcbiAgcGF5ZXJLZXk6IFB1YmxpY0tleTtcbiAgaW5zdHJ1Y3Rpb25zOiBBcnJheTxUcmFuc2FjdGlvbkluc3RydWN0aW9uPjtcbiAgcmVjZW50QmxvY2toYXNoOiBCbG9ja2hhc2g7XG59O1xuXG4vKipcbiAqIExpc3Qgb2YgaW5zdHJ1Y3Rpb25zIHRvIGJlIHByb2Nlc3NlZCBhdG9taWNhbGx5XG4gKi9cbmV4cG9ydCBjbGFzcyBNZXNzYWdlIHtcbiAgaGVhZGVyOiBNZXNzYWdlSGVhZGVyO1xuICBhY2NvdW50S2V5czogUHVibGljS2V5W107XG4gIHJlY2VudEJsb2NraGFzaDogQmxvY2toYXNoO1xuICBpbnN0cnVjdGlvbnM6IENvbXBpbGVkSW5zdHJ1Y3Rpb25bXTtcblxuICBwcml2YXRlIGluZGV4VG9Qcm9ncmFtSWRzOiBNYXA8bnVtYmVyLCBQdWJsaWNLZXk+ID0gbmV3IE1hcDxcbiAgICBudW1iZXIsXG4gICAgUHVibGljS2V5XG4gID4oKTtcblxuICBjb25zdHJ1Y3RvcihhcmdzOiBNZXNzYWdlQXJncykge1xuICAgIHRoaXMuaGVhZGVyID0gYXJncy5oZWFkZXI7XG4gICAgdGhpcy5hY2NvdW50S2V5cyA9IGFyZ3MuYWNjb3VudEtleXMubWFwKGFjY291bnQgPT4gbmV3IFB1YmxpY0tleShhY2NvdW50KSk7XG4gICAgdGhpcy5yZWNlbnRCbG9ja2hhc2ggPSBhcmdzLnJlY2VudEJsb2NraGFzaDtcbiAgICB0aGlzLmluc3RydWN0aW9ucyA9IGFyZ3MuaW5zdHJ1Y3Rpb25zO1xuICAgIHRoaXMuaW5zdHJ1Y3Rpb25zLmZvckVhY2goaXggPT5cbiAgICAgIHRoaXMuaW5kZXhUb1Byb2dyYW1JZHMuc2V0KFxuICAgICAgICBpeC5wcm9ncmFtSWRJbmRleCxcbiAgICAgICAgdGhpcy5hY2NvdW50S2V5c1tpeC5wcm9ncmFtSWRJbmRleF0sXG4gICAgICApLFxuICAgICk7XG4gIH1cblxuICBnZXQgdmVyc2lvbigpOiAnbGVnYWN5JyB7XG4gICAgcmV0dXJuICdsZWdhY3knO1xuICB9XG5cbiAgZ2V0IHN0YXRpY0FjY291bnRLZXlzKCk6IEFycmF5PFB1YmxpY0tleT4ge1xuICAgIHJldHVybiB0aGlzLmFjY291bnRLZXlzO1xuICB9XG5cbiAgZ2V0IGNvbXBpbGVkSW5zdHJ1Y3Rpb25zKCk6IEFycmF5PE1lc3NhZ2VDb21waWxlZEluc3RydWN0aW9uPiB7XG4gICAgcmV0dXJuIHRoaXMuaW5zdHJ1Y3Rpb25zLm1hcChcbiAgICAgIChpeCk6IE1lc3NhZ2VDb21waWxlZEluc3RydWN0aW9uID0+ICh7XG4gICAgICAgIHByb2dyYW1JZEluZGV4OiBpeC5wcm9ncmFtSWRJbmRleCxcbiAgICAgICAgYWNjb3VudEtleUluZGV4ZXM6IGl4LmFjY291bnRzLFxuICAgICAgICBkYXRhOiBiczU4LmRlY29kZShpeC5kYXRhKSxcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBnZXQgYWRkcmVzc1RhYmxlTG9va3VwcygpOiBBcnJheTxNZXNzYWdlQWRkcmVzc1RhYmxlTG9va3VwPiB7XG4gICAgcmV0dXJuIFtdO1xuICB9XG5cbiAgZ2V0QWNjb3VudEtleXMoKTogTWVzc2FnZUFjY291bnRLZXlzIHtcbiAgICByZXR1cm4gbmV3IE1lc3NhZ2VBY2NvdW50S2V5cyh0aGlzLnN0YXRpY0FjY291bnRLZXlzKTtcbiAgfVxuXG4gIHN0YXRpYyBjb21waWxlKGFyZ3M6IENvbXBpbGVMZWdhY3lBcmdzKTogTWVzc2FnZSB7XG4gICAgY29uc3QgY29tcGlsZWRLZXlzID0gQ29tcGlsZWRLZXlzLmNvbXBpbGUoYXJncy5pbnN0cnVjdGlvbnMsIGFyZ3MucGF5ZXJLZXkpO1xuICAgIGNvbnN0IFtoZWFkZXIsIHN0YXRpY0FjY291bnRLZXlzXSA9IGNvbXBpbGVkS2V5cy5nZXRNZXNzYWdlQ29tcG9uZW50cygpO1xuICAgIGNvbnN0IGFjY291bnRLZXlzID0gbmV3IE1lc3NhZ2VBY2NvdW50S2V5cyhzdGF0aWNBY2NvdW50S2V5cyk7XG4gICAgY29uc3QgaW5zdHJ1Y3Rpb25zID0gYWNjb3VudEtleXMuY29tcGlsZUluc3RydWN0aW9ucyhhcmdzLmluc3RydWN0aW9ucykubWFwKFxuICAgICAgKGl4OiBNZXNzYWdlQ29tcGlsZWRJbnN0cnVjdGlvbik6IENvbXBpbGVkSW5zdHJ1Y3Rpb24gPT4gKHtcbiAgICAgICAgcHJvZ3JhbUlkSW5kZXg6IGl4LnByb2dyYW1JZEluZGV4LFxuICAgICAgICBhY2NvdW50czogaXguYWNjb3VudEtleUluZGV4ZXMsXG4gICAgICAgIGRhdGE6IGJzNTguZW5jb2RlKGl4LmRhdGEpLFxuICAgICAgfSksXG4gICAgKTtcbiAgICByZXR1cm4gbmV3IE1lc3NhZ2Uoe1xuICAgICAgaGVhZGVyLFxuICAgICAgYWNjb3VudEtleXM6IHN0YXRpY0FjY291bnRLZXlzLFxuICAgICAgcmVjZW50QmxvY2toYXNoOiBhcmdzLnJlY2VudEJsb2NraGFzaCxcbiAgICAgIGluc3RydWN0aW9ucyxcbiAgICB9KTtcbiAgfVxuXG4gIGlzQWNjb3VudFNpZ25lcihpbmRleDogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGluZGV4IDwgdGhpcy5oZWFkZXIubnVtUmVxdWlyZWRTaWduYXR1cmVzO1xuICB9XG5cbiAgaXNBY2NvdW50V3JpdGFibGUoaW5kZXg6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIGNvbnN0IG51bVNpZ25lZEFjY291bnRzID0gdGhpcy5oZWFkZXIubnVtUmVxdWlyZWRTaWduYXR1cmVzO1xuICAgIGlmIChpbmRleCA+PSB0aGlzLmhlYWRlci5udW1SZXF1aXJlZFNpZ25hdHVyZXMpIHtcbiAgICAgIGNvbnN0IHVuc2lnbmVkQWNjb3VudEluZGV4ID0gaW5kZXggLSBudW1TaWduZWRBY2NvdW50cztcbiAgICAgIGNvbnN0IG51bVVuc2lnbmVkQWNjb3VudHMgPSB0aGlzLmFjY291bnRLZXlzLmxlbmd0aCAtIG51bVNpZ25lZEFjY291bnRzO1xuICAgICAgY29uc3QgbnVtV3JpdGFibGVVbnNpZ25lZEFjY291bnRzID1cbiAgICAgICAgbnVtVW5zaWduZWRBY2NvdW50cyAtIHRoaXMuaGVhZGVyLm51bVJlYWRvbmx5VW5zaWduZWRBY2NvdW50cztcbiAgICAgIHJldHVybiB1bnNpZ25lZEFjY291bnRJbmRleCA8IG51bVdyaXRhYmxlVW5zaWduZWRBY2NvdW50cztcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgbnVtV3JpdGFibGVTaWduZWRBY2NvdW50cyA9XG4gICAgICAgIG51bVNpZ25lZEFjY291bnRzIC0gdGhpcy5oZWFkZXIubnVtUmVhZG9ubHlTaWduZWRBY2NvdW50cztcbiAgICAgIHJldHVybiBpbmRleCA8IG51bVdyaXRhYmxlU2lnbmVkQWNjb3VudHM7XG4gICAgfVxuICB9XG5cbiAgaXNQcm9ncmFtSWQoaW5kZXg6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmluZGV4VG9Qcm9ncmFtSWRzLmhhcyhpbmRleCk7XG4gIH1cblxuICBwcm9ncmFtSWRzKCk6IFB1YmxpY0tleVtdIHtcbiAgICByZXR1cm4gWy4uLnRoaXMuaW5kZXhUb1Byb2dyYW1JZHMudmFsdWVzKCldO1xuICB9XG5cbiAgbm9uUHJvZ3JhbUlkcygpOiBQdWJsaWNLZXlbXSB7XG4gICAgcmV0dXJuIHRoaXMuYWNjb3VudEtleXMuZmlsdGVyKChfLCBpbmRleCkgPT4gIXRoaXMuaXNQcm9ncmFtSWQoaW5kZXgpKTtcbiAgfVxuXG4gIHNlcmlhbGl6ZSgpOiBCdWZmZXIge1xuICAgIGNvbnN0IG51bUtleXMgPSB0aGlzLmFjY291bnRLZXlzLmxlbmd0aDtcblxuICAgIGxldCBrZXlDb3VudDogbnVtYmVyW10gPSBbXTtcbiAgICBzaG9ydHZlYy5lbmNvZGVMZW5ndGgoa2V5Q291bnQsIG51bUtleXMpO1xuXG4gICAgY29uc3QgaW5zdHJ1Y3Rpb25zID0gdGhpcy5pbnN0cnVjdGlvbnMubWFwKGluc3RydWN0aW9uID0+IHtcbiAgICAgIGNvbnN0IHthY2NvdW50cywgcHJvZ3JhbUlkSW5kZXh9ID0gaW5zdHJ1Y3Rpb247XG4gICAgICBjb25zdCBkYXRhID0gQXJyYXkuZnJvbShiczU4LmRlY29kZShpbnN0cnVjdGlvbi5kYXRhKSk7XG5cbiAgICAgIGxldCBrZXlJbmRpY2VzQ291bnQ6IG51bWJlcltdID0gW107XG4gICAgICBzaG9ydHZlYy5lbmNvZGVMZW5ndGgoa2V5SW5kaWNlc0NvdW50LCBhY2NvdW50cy5sZW5ndGgpO1xuXG4gICAgICBsZXQgZGF0YUNvdW50OiBudW1iZXJbXSA9IFtdO1xuICAgICAgc2hvcnR2ZWMuZW5jb2RlTGVuZ3RoKGRhdGFDb3VudCwgZGF0YS5sZW5ndGgpO1xuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBwcm9ncmFtSWRJbmRleCxcbiAgICAgICAga2V5SW5kaWNlc0NvdW50OiBCdWZmZXIuZnJvbShrZXlJbmRpY2VzQ291bnQpLFxuICAgICAgICBrZXlJbmRpY2VzOiBhY2NvdW50cyxcbiAgICAgICAgZGF0YUxlbmd0aDogQnVmZmVyLmZyb20oZGF0YUNvdW50KSxcbiAgICAgICAgZGF0YSxcbiAgICAgIH07XG4gICAgfSk7XG5cbiAgICBsZXQgaW5zdHJ1Y3Rpb25Db3VudDogbnVtYmVyW10gPSBbXTtcbiAgICBzaG9ydHZlYy5lbmNvZGVMZW5ndGgoaW5zdHJ1Y3Rpb25Db3VudCwgaW5zdHJ1Y3Rpb25zLmxlbmd0aCk7XG4gICAgbGV0IGluc3RydWN0aW9uQnVmZmVyID0gQnVmZmVyLmFsbG9jKFBBQ0tFVF9EQVRBX1NJWkUpO1xuICAgIEJ1ZmZlci5mcm9tKGluc3RydWN0aW9uQ291bnQpLmNvcHkoaW5zdHJ1Y3Rpb25CdWZmZXIpO1xuICAgIGxldCBpbnN0cnVjdGlvbkJ1ZmZlckxlbmd0aCA9IGluc3RydWN0aW9uQ291bnQubGVuZ3RoO1xuXG4gICAgaW5zdHJ1Y3Rpb25zLmZvckVhY2goaW5zdHJ1Y3Rpb24gPT4ge1xuICAgICAgY29uc3QgaW5zdHJ1Y3Rpb25MYXlvdXQgPSBCdWZmZXJMYXlvdXQuc3RydWN0PFxuICAgICAgICBSZWFkb25seTx7XG4gICAgICAgICAgZGF0YTogbnVtYmVyW107XG4gICAgICAgICAgZGF0YUxlbmd0aDogVWludDhBcnJheTtcbiAgICAgICAgICBrZXlJbmRpY2VzOiBudW1iZXJbXTtcbiAgICAgICAgICBrZXlJbmRpY2VzQ291bnQ6IFVpbnQ4QXJyYXk7XG4gICAgICAgICAgcHJvZ3JhbUlkSW5kZXg6IG51bWJlcjtcbiAgICAgICAgfT5cbiAgICAgID4oW1xuICAgICAgICBCdWZmZXJMYXlvdXQudTgoJ3Byb2dyYW1JZEluZGV4JyksXG5cbiAgICAgICAgQnVmZmVyTGF5b3V0LmJsb2IoXG4gICAgICAgICAgaW5zdHJ1Y3Rpb24ua2V5SW5kaWNlc0NvdW50Lmxlbmd0aCxcbiAgICAgICAgICAna2V5SW5kaWNlc0NvdW50JyxcbiAgICAgICAgKSxcbiAgICAgICAgQnVmZmVyTGF5b3V0LnNlcShcbiAgICAgICAgICBCdWZmZXJMYXlvdXQudTgoJ2tleUluZGV4JyksXG4gICAgICAgICAgaW5zdHJ1Y3Rpb24ua2V5SW5kaWNlcy5sZW5ndGgsXG4gICAgICAgICAgJ2tleUluZGljZXMnLFxuICAgICAgICApLFxuICAgICAgICBCdWZmZXJMYXlvdXQuYmxvYihpbnN0cnVjdGlvbi5kYXRhTGVuZ3RoLmxlbmd0aCwgJ2RhdGFMZW5ndGgnKSxcbiAgICAgICAgQnVmZmVyTGF5b3V0LnNlcShcbiAgICAgICAgICBCdWZmZXJMYXlvdXQudTgoJ3VzZXJkYXR1bScpLFxuICAgICAgICAgIGluc3RydWN0aW9uLmRhdGEubGVuZ3RoLFxuICAgICAgICAgICdkYXRhJyxcbiAgICAgICAgKSxcbiAgICAgIF0pO1xuICAgICAgY29uc3QgbGVuZ3RoID0gaW5zdHJ1Y3Rpb25MYXlvdXQuZW5jb2RlKFxuICAgICAgICBpbnN0cnVjdGlvbixcbiAgICAgICAgaW5zdHJ1Y3Rpb25CdWZmZXIsXG4gICAgICAgIGluc3RydWN0aW9uQnVmZmVyTGVuZ3RoLFxuICAgICAgKTtcbiAgICAgIGluc3RydWN0aW9uQnVmZmVyTGVuZ3RoICs9IGxlbmd0aDtcbiAgICB9KTtcbiAgICBpbnN0cnVjdGlvbkJ1ZmZlciA9IGluc3RydWN0aW9uQnVmZmVyLnNsaWNlKDAsIGluc3RydWN0aW9uQnVmZmVyTGVuZ3RoKTtcblxuICAgIGNvbnN0IHNpZ25EYXRhTGF5b3V0ID0gQnVmZmVyTGF5b3V0LnN0cnVjdDxcbiAgICAgIFJlYWRvbmx5PHtcbiAgICAgICAga2V5Q291bnQ6IFVpbnQ4QXJyYXk7XG4gICAgICAgIGtleXM6IFVpbnQ4QXJyYXlbXTtcbiAgICAgICAgbnVtUmVhZG9ubHlTaWduZWRBY2NvdW50czogVWludDhBcnJheTtcbiAgICAgICAgbnVtUmVhZG9ubHlVbnNpZ25lZEFjY291bnRzOiBVaW50OEFycmF5O1xuICAgICAgICBudW1SZXF1aXJlZFNpZ25hdHVyZXM6IFVpbnQ4QXJyYXk7XG4gICAgICAgIHJlY2VudEJsb2NraGFzaDogVWludDhBcnJheTtcbiAgICAgIH0+XG4gICAgPihbXG4gICAgICBCdWZmZXJMYXlvdXQuYmxvYigxLCAnbnVtUmVxdWlyZWRTaWduYXR1cmVzJyksXG4gICAgICBCdWZmZXJMYXlvdXQuYmxvYigxLCAnbnVtUmVhZG9ubHlTaWduZWRBY2NvdW50cycpLFxuICAgICAgQnVmZmVyTGF5b3V0LmJsb2IoMSwgJ251bVJlYWRvbmx5VW5zaWduZWRBY2NvdW50cycpLFxuICAgICAgQnVmZmVyTGF5b3V0LmJsb2Ioa2V5Q291bnQubGVuZ3RoLCAna2V5Q291bnQnKSxcbiAgICAgIEJ1ZmZlckxheW91dC5zZXEoTGF5b3V0LnB1YmxpY0tleSgna2V5JyksIG51bUtleXMsICdrZXlzJyksXG4gICAgICBMYXlvdXQucHVibGljS2V5KCdyZWNlbnRCbG9ja2hhc2gnKSxcbiAgICBdKTtcblxuICAgIGNvbnN0IHRyYW5zYWN0aW9uID0ge1xuICAgICAgbnVtUmVxdWlyZWRTaWduYXR1cmVzOiBCdWZmZXIuZnJvbShbdGhpcy5oZWFkZXIubnVtUmVxdWlyZWRTaWduYXR1cmVzXSksXG4gICAgICBudW1SZWFkb25seVNpZ25lZEFjY291bnRzOiBCdWZmZXIuZnJvbShbXG4gICAgICAgIHRoaXMuaGVhZGVyLm51bVJlYWRvbmx5U2lnbmVkQWNjb3VudHMsXG4gICAgICBdKSxcbiAgICAgIG51bVJlYWRvbmx5VW5zaWduZWRBY2NvdW50czogQnVmZmVyLmZyb20oW1xuICAgICAgICB0aGlzLmhlYWRlci5udW1SZWFkb25seVVuc2lnbmVkQWNjb3VudHMsXG4gICAgICBdKSxcbiAgICAgIGtleUNvdW50OiBCdWZmZXIuZnJvbShrZXlDb3VudCksXG4gICAgICBrZXlzOiB0aGlzLmFjY291bnRLZXlzLm1hcChrZXkgPT4gdG9CdWZmZXIoa2V5LnRvQnl0ZXMoKSkpLFxuICAgICAgcmVjZW50QmxvY2toYXNoOiBiczU4LmRlY29kZSh0aGlzLnJlY2VudEJsb2NraGFzaCksXG4gICAgfTtcblxuICAgIGxldCBzaWduRGF0YSA9IEJ1ZmZlci5hbGxvYygyMDQ4KTtcbiAgICBjb25zdCBsZW5ndGggPSBzaWduRGF0YUxheW91dC5lbmNvZGUodHJhbnNhY3Rpb24sIHNpZ25EYXRhKTtcbiAgICBpbnN0cnVjdGlvbkJ1ZmZlci5jb3B5KHNpZ25EYXRhLCBsZW5ndGgpO1xuICAgIHJldHVybiBzaWduRGF0YS5zbGljZSgwLCBsZW5ndGggKyBpbnN0cnVjdGlvbkJ1ZmZlci5sZW5ndGgpO1xuICB9XG5cbiAgLyoqXG4gICAqIERlY29kZSBhIGNvbXBpbGVkIG1lc3NhZ2UgaW50byBhIE1lc3NhZ2Ugb2JqZWN0LlxuICAgKi9cbiAgc3RhdGljIGZyb20oYnVmZmVyOiBCdWZmZXIgfCBVaW50OEFycmF5IHwgQXJyYXk8bnVtYmVyPik6IE1lc3NhZ2Uge1xuICAgIC8vIFNsaWNlIHVwIHdpcmUgZGF0YVxuICAgIGxldCBieXRlQXJyYXkgPSBbLi4uYnVmZmVyXTtcblxuICAgIGNvbnN0IG51bVJlcXVpcmVkU2lnbmF0dXJlcyA9IGJ5dGVBcnJheS5zaGlmdCgpITtcbiAgICBpZiAoXG4gICAgICBudW1SZXF1aXJlZFNpZ25hdHVyZXMgIT09XG4gICAgICAobnVtUmVxdWlyZWRTaWduYXR1cmVzICYgVkVSU0lPTl9QUkVGSVhfTUFTSylcbiAgICApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ1ZlcnNpb25lZCBtZXNzYWdlcyBtdXN0IGJlIGRlc2VyaWFsaXplZCB3aXRoIFZlcnNpb25lZE1lc3NhZ2UuZGVzZXJpYWxpemUoKScsXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IG51bVJlYWRvbmx5U2lnbmVkQWNjb3VudHMgPSBieXRlQXJyYXkuc2hpZnQoKSE7XG4gICAgY29uc3QgbnVtUmVhZG9ubHlVbnNpZ25lZEFjY291bnRzID0gYnl0ZUFycmF5LnNoaWZ0KCkhO1xuXG4gICAgY29uc3QgYWNjb3VudENvdW50ID0gc2hvcnR2ZWMuZGVjb2RlTGVuZ3RoKGJ5dGVBcnJheSk7XG4gICAgbGV0IGFjY291bnRLZXlzID0gW107XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhY2NvdW50Q291bnQ7IGkrKykge1xuICAgICAgY29uc3QgYWNjb3VudCA9IGJ5dGVBcnJheS5zbGljZSgwLCBQVUJMSUNfS0VZX0xFTkdUSCk7XG4gICAgICBieXRlQXJyYXkgPSBieXRlQXJyYXkuc2xpY2UoUFVCTElDX0tFWV9MRU5HVEgpO1xuICAgICAgYWNjb3VudEtleXMucHVzaChuZXcgUHVibGljS2V5KEJ1ZmZlci5mcm9tKGFjY291bnQpKSk7XG4gICAgfVxuXG4gICAgY29uc3QgcmVjZW50QmxvY2toYXNoID0gYnl0ZUFycmF5LnNsaWNlKDAsIFBVQkxJQ19LRVlfTEVOR1RIKTtcbiAgICBieXRlQXJyYXkgPSBieXRlQXJyYXkuc2xpY2UoUFVCTElDX0tFWV9MRU5HVEgpO1xuXG4gICAgY29uc3QgaW5zdHJ1Y3Rpb25Db3VudCA9IHNob3J0dmVjLmRlY29kZUxlbmd0aChieXRlQXJyYXkpO1xuICAgIGxldCBpbnN0cnVjdGlvbnM6IENvbXBpbGVkSW5zdHJ1Y3Rpb25bXSA9IFtdO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaW5zdHJ1Y3Rpb25Db3VudDsgaSsrKSB7XG4gICAgICBjb25zdCBwcm9ncmFtSWRJbmRleCA9IGJ5dGVBcnJheS5zaGlmdCgpITtcbiAgICAgIGNvbnN0IGFjY291bnRDb3VudCA9IHNob3J0dmVjLmRlY29kZUxlbmd0aChieXRlQXJyYXkpO1xuICAgICAgY29uc3QgYWNjb3VudHMgPSBieXRlQXJyYXkuc2xpY2UoMCwgYWNjb3VudENvdW50KTtcbiAgICAgIGJ5dGVBcnJheSA9IGJ5dGVBcnJheS5zbGljZShhY2NvdW50Q291bnQpO1xuICAgICAgY29uc3QgZGF0YUxlbmd0aCA9IHNob3J0dmVjLmRlY29kZUxlbmd0aChieXRlQXJyYXkpO1xuICAgICAgY29uc3QgZGF0YVNsaWNlID0gYnl0ZUFycmF5LnNsaWNlKDAsIGRhdGFMZW5ndGgpO1xuICAgICAgY29uc3QgZGF0YSA9IGJzNTguZW5jb2RlKEJ1ZmZlci5mcm9tKGRhdGFTbGljZSkpO1xuICAgICAgYnl0ZUFycmF5ID0gYnl0ZUFycmF5LnNsaWNlKGRhdGFMZW5ndGgpO1xuICAgICAgaW5zdHJ1Y3Rpb25zLnB1c2goe1xuICAgICAgICBwcm9ncmFtSWRJbmRleCxcbiAgICAgICAgYWNjb3VudHMsXG4gICAgICAgIGRhdGEsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBjb25zdCBtZXNzYWdlQXJncyA9IHtcbiAgICAgIGhlYWRlcjoge1xuICAgICAgICBudW1SZXF1aXJlZFNpZ25hdHVyZXMsXG4gICAgICAgIG51bVJlYWRvbmx5U2lnbmVkQWNjb3VudHMsXG4gICAgICAgIG51bVJlYWRvbmx5VW5zaWduZWRBY2NvdW50cyxcbiAgICAgIH0sXG4gICAgICByZWNlbnRCbG9ja2hhc2g6IGJzNTguZW5jb2RlKEJ1ZmZlci5mcm9tKHJlY2VudEJsb2NraGFzaCkpLFxuICAgICAgYWNjb3VudEtleXMsXG4gICAgICBpbnN0cnVjdGlvbnMsXG4gICAgfTtcblxuICAgIHJldHVybiBuZXcgTWVzc2FnZShtZXNzYWdlQXJncyk7XG4gIH1cbn1cbiIsICJpbXBvcnQgYnM1OCBmcm9tICdiczU4JztcbmltcG9ydCAqIGFzIEJ1ZmZlckxheW91dCBmcm9tICdAc29sYW5hL2J1ZmZlci1sYXlvdXQnO1xuXG5pbXBvcnQgKiBhcyBMYXlvdXQgZnJvbSAnLi4vbGF5b3V0JztcbmltcG9ydCB7QmxvY2toYXNofSBmcm9tICcuLi9ibG9ja2hhc2gnO1xuaW1wb3J0IHtcbiAgTWVzc2FnZUhlYWRlcixcbiAgTWVzc2FnZUFkZHJlc3NUYWJsZUxvb2t1cCxcbiAgTWVzc2FnZUNvbXBpbGVkSW5zdHJ1Y3Rpb24sXG59IGZyb20gJy4vaW5kZXgnO1xuaW1wb3J0IHtQdWJsaWNLZXksIFBVQkxJQ19LRVlfTEVOR1RIfSBmcm9tICcuLi9wdWJsaWNrZXknO1xuaW1wb3J0ICogYXMgc2hvcnR2ZWMgZnJvbSAnLi4vdXRpbHMvc2hvcnR2ZWMtZW5jb2RpbmcnO1xuaW1wb3J0IGFzc2VydCBmcm9tICcuLi91dGlscy9hc3NlcnQnO1xuaW1wb3J0IHtQQUNLRVRfREFUQV9TSVpFLCBWRVJTSU9OX1BSRUZJWF9NQVNLfSBmcm9tICcuLi90cmFuc2FjdGlvbi9jb25zdGFudHMnO1xuaW1wb3J0IHtUcmFuc2FjdGlvbkluc3RydWN0aW9ufSBmcm9tICcuLi90cmFuc2FjdGlvbic7XG5pbXBvcnQge0FkZHJlc3NMb29rdXBUYWJsZUFjY291bnR9IGZyb20gJy4uL3Byb2dyYW1zJztcbmltcG9ydCB7Q29tcGlsZWRLZXlzfSBmcm9tICcuL2NvbXBpbGVkLWtleXMnO1xuaW1wb3J0IHtBY2NvdW50S2V5c0Zyb21Mb29rdXBzLCBNZXNzYWdlQWNjb3VudEtleXN9IGZyb20gJy4vYWNjb3VudC1rZXlzJztcblxuLyoqXG4gKiBNZXNzYWdlIGNvbnN0cnVjdG9yIGFyZ3VtZW50c1xuICovXG5leHBvcnQgdHlwZSBNZXNzYWdlVjBBcmdzID0ge1xuICAvKiogVGhlIG1lc3NhZ2UgaGVhZGVyLCBpZGVudGlmeWluZyBzaWduZWQgYW5kIHJlYWQtb25seSBgYWNjb3VudEtleXNgICovXG4gIGhlYWRlcjogTWVzc2FnZUhlYWRlcjtcbiAgLyoqIFRoZSBzdGF0aWMgYWNjb3VudCBrZXlzIHVzZWQgYnkgdGhpcyB0cmFuc2FjdGlvbiAqL1xuICBzdGF0aWNBY2NvdW50S2V5czogUHVibGljS2V5W107XG4gIC8qKiBUaGUgaGFzaCBvZiBhIHJlY2VudCBsZWRnZXIgYmxvY2sgKi9cbiAgcmVjZW50QmxvY2toYXNoOiBCbG9ja2hhc2g7XG4gIC8qKiBJbnN0cnVjdGlvbnMgdGhhdCB3aWxsIGJlIGV4ZWN1dGVkIGluIHNlcXVlbmNlIGFuZCBjb21taXR0ZWQgaW4gb25lIGF0b21pYyB0cmFuc2FjdGlvbiBpZiBhbGwgc3VjY2VlZC4gKi9cbiAgY29tcGlsZWRJbnN0cnVjdGlvbnM6IE1lc3NhZ2VDb21waWxlZEluc3RydWN0aW9uW107XG4gIC8qKiBJbnN0cnVjdGlvbnMgdGhhdCB3aWxsIGJlIGV4ZWN1dGVkIGluIHNlcXVlbmNlIGFuZCBjb21taXR0ZWQgaW4gb25lIGF0b21pYyB0cmFuc2FjdGlvbiBpZiBhbGwgc3VjY2VlZC4gKi9cbiAgYWRkcmVzc1RhYmxlTG9va3VwczogTWVzc2FnZUFkZHJlc3NUYWJsZUxvb2t1cFtdO1xufTtcblxuZXhwb3J0IHR5cGUgQ29tcGlsZVYwQXJncyA9IHtcbiAgcGF5ZXJLZXk6IFB1YmxpY0tleTtcbiAgaW5zdHJ1Y3Rpb25zOiBBcnJheTxUcmFuc2FjdGlvbkluc3RydWN0aW9uPjtcbiAgcmVjZW50QmxvY2toYXNoOiBCbG9ja2hhc2g7XG4gIGFkZHJlc3NMb29rdXBUYWJsZUFjY291bnRzPzogQXJyYXk8QWRkcmVzc0xvb2t1cFRhYmxlQWNjb3VudD47XG59O1xuXG5leHBvcnQgdHlwZSBHZXRBY2NvdW50S2V5c0FyZ3MgPVxuICB8IHtcbiAgICAgIGFjY291bnRLZXlzRnJvbUxvb2t1cHM/OiBBY2NvdW50S2V5c0Zyb21Mb29rdXBzIHwgbnVsbDtcbiAgICB9XG4gIHwge1xuICAgICAgYWRkcmVzc0xvb2t1cFRhYmxlQWNjb3VudHM/OiBBZGRyZXNzTG9va3VwVGFibGVBY2NvdW50W10gfCBudWxsO1xuICAgIH07XG5cbmV4cG9ydCBjbGFzcyBNZXNzYWdlVjAge1xuICBoZWFkZXI6IE1lc3NhZ2VIZWFkZXI7XG4gIHN0YXRpY0FjY291bnRLZXlzOiBBcnJheTxQdWJsaWNLZXk+O1xuICByZWNlbnRCbG9ja2hhc2g6IEJsb2NraGFzaDtcbiAgY29tcGlsZWRJbnN0cnVjdGlvbnM6IEFycmF5PE1lc3NhZ2VDb21waWxlZEluc3RydWN0aW9uPjtcbiAgYWRkcmVzc1RhYmxlTG9va3VwczogQXJyYXk8TWVzc2FnZUFkZHJlc3NUYWJsZUxvb2t1cD47XG5cbiAgY29uc3RydWN0b3IoYXJnczogTWVzc2FnZVYwQXJncykge1xuICAgIHRoaXMuaGVhZGVyID0gYXJncy5oZWFkZXI7XG4gICAgdGhpcy5zdGF0aWNBY2NvdW50S2V5cyA9IGFyZ3Muc3RhdGljQWNjb3VudEtleXM7XG4gICAgdGhpcy5yZWNlbnRCbG9ja2hhc2ggPSBhcmdzLnJlY2VudEJsb2NraGFzaDtcbiAgICB0aGlzLmNvbXBpbGVkSW5zdHJ1Y3Rpb25zID0gYXJncy5jb21waWxlZEluc3RydWN0aW9ucztcbiAgICB0aGlzLmFkZHJlc3NUYWJsZUxvb2t1cHMgPSBhcmdzLmFkZHJlc3NUYWJsZUxvb2t1cHM7XG4gIH1cblxuICBnZXQgdmVyc2lvbigpOiAwIHtcbiAgICByZXR1cm4gMDtcbiAgfVxuXG4gIGdldCBudW1BY2NvdW50S2V5c0Zyb21Mb29rdXBzKCk6IG51bWJlciB7XG4gICAgbGV0IGNvdW50ID0gMDtcbiAgICBmb3IgKGNvbnN0IGxvb2t1cCBvZiB0aGlzLmFkZHJlc3NUYWJsZUxvb2t1cHMpIHtcbiAgICAgIGNvdW50ICs9IGxvb2t1cC5yZWFkb25seUluZGV4ZXMubGVuZ3RoICsgbG9va3VwLndyaXRhYmxlSW5kZXhlcy5sZW5ndGg7XG4gICAgfVxuICAgIHJldHVybiBjb3VudDtcbiAgfVxuXG4gIGdldEFjY291bnRLZXlzKGFyZ3M/OiBHZXRBY2NvdW50S2V5c0FyZ3MpOiBNZXNzYWdlQWNjb3VudEtleXMge1xuICAgIGxldCBhY2NvdW50S2V5c0Zyb21Mb29rdXBzOiBBY2NvdW50S2V5c0Zyb21Mb29rdXBzIHwgdW5kZWZpbmVkO1xuICAgIGlmIChcbiAgICAgIGFyZ3MgJiZcbiAgICAgICdhY2NvdW50S2V5c0Zyb21Mb29rdXBzJyBpbiBhcmdzICYmXG4gICAgICBhcmdzLmFjY291bnRLZXlzRnJvbUxvb2t1cHNcbiAgICApIHtcbiAgICAgIGlmIChcbiAgICAgICAgdGhpcy5udW1BY2NvdW50S2V5c0Zyb21Mb29rdXBzICE9XG4gICAgICAgIGFyZ3MuYWNjb3VudEtleXNGcm9tTG9va3Vwcy53cml0YWJsZS5sZW5ndGggK1xuICAgICAgICAgIGFyZ3MuYWNjb3VudEtleXNGcm9tTG9va3Vwcy5yZWFkb25seS5sZW5ndGhcbiAgICAgICkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgJ0ZhaWxlZCB0byBnZXQgYWNjb3VudCBrZXlzIGJlY2F1c2Ugb2YgYSBtaXNtYXRjaCBpbiB0aGUgbnVtYmVyIG9mIGFjY291bnQga2V5cyBmcm9tIGxvb2t1cHMnLFxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgYWNjb3VudEtleXNGcm9tTG9va3VwcyA9IGFyZ3MuYWNjb3VudEtleXNGcm9tTG9va3VwcztcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgYXJncyAmJlxuICAgICAgJ2FkZHJlc3NMb29rdXBUYWJsZUFjY291bnRzJyBpbiBhcmdzICYmXG4gICAgICBhcmdzLmFkZHJlc3NMb29rdXBUYWJsZUFjY291bnRzXG4gICAgKSB7XG4gICAgICBhY2NvdW50S2V5c0Zyb21Mb29rdXBzID0gdGhpcy5yZXNvbHZlQWRkcmVzc1RhYmxlTG9va3VwcyhcbiAgICAgICAgYXJncy5hZGRyZXNzTG9va3VwVGFibGVBY2NvdW50cyxcbiAgICAgICk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmFkZHJlc3NUYWJsZUxvb2t1cHMubGVuZ3RoID4gMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnRmFpbGVkIHRvIGdldCBhY2NvdW50IGtleXMgYmVjYXVzZSBhZGRyZXNzIHRhYmxlIGxvb2t1cHMgd2VyZSBub3QgcmVzb2x2ZWQnLFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIG5ldyBNZXNzYWdlQWNjb3VudEtleXMoXG4gICAgICB0aGlzLnN0YXRpY0FjY291bnRLZXlzLFxuICAgICAgYWNjb3VudEtleXNGcm9tTG9va3VwcyxcbiAgICApO1xuICB9XG5cbiAgaXNBY2NvdW50U2lnbmVyKGluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaW5kZXggPCB0aGlzLmhlYWRlci5udW1SZXF1aXJlZFNpZ25hdHVyZXM7XG4gIH1cblxuICBpc0FjY291bnRXcml0YWJsZShpbmRleDogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgY29uc3QgbnVtU2lnbmVkQWNjb3VudHMgPSB0aGlzLmhlYWRlci5udW1SZXF1aXJlZFNpZ25hdHVyZXM7XG4gICAgY29uc3QgbnVtU3RhdGljQWNjb3VudEtleXMgPSB0aGlzLnN0YXRpY0FjY291bnRLZXlzLmxlbmd0aDtcbiAgICBpZiAoaW5kZXggPj0gbnVtU3RhdGljQWNjb3VudEtleXMpIHtcbiAgICAgIGNvbnN0IGxvb2t1cEFjY291bnRLZXlzSW5kZXggPSBpbmRleCAtIG51bVN0YXRpY0FjY291bnRLZXlzO1xuICAgICAgY29uc3QgbnVtV3JpdGFibGVMb29rdXBBY2NvdW50S2V5cyA9IHRoaXMuYWRkcmVzc1RhYmxlTG9va3Vwcy5yZWR1Y2UoXG4gICAgICAgIChjb3VudCwgbG9va3VwKSA9PiBjb3VudCArIGxvb2t1cC53cml0YWJsZUluZGV4ZXMubGVuZ3RoLFxuICAgICAgICAwLFxuICAgICAgKTtcbiAgICAgIHJldHVybiBsb29rdXBBY2NvdW50S2V5c0luZGV4IDwgbnVtV3JpdGFibGVMb29rdXBBY2NvdW50S2V5cztcbiAgICB9IGVsc2UgaWYgKGluZGV4ID49IHRoaXMuaGVhZGVyLm51bVJlcXVpcmVkU2lnbmF0dXJlcykge1xuICAgICAgY29uc3QgdW5zaWduZWRBY2NvdW50SW5kZXggPSBpbmRleCAtIG51bVNpZ25lZEFjY291bnRzO1xuICAgICAgY29uc3QgbnVtVW5zaWduZWRBY2NvdW50cyA9IG51bVN0YXRpY0FjY291bnRLZXlzIC0gbnVtU2lnbmVkQWNjb3VudHM7XG4gICAgICBjb25zdCBudW1Xcml0YWJsZVVuc2lnbmVkQWNjb3VudHMgPVxuICAgICAgICBudW1VbnNpZ25lZEFjY291bnRzIC0gdGhpcy5oZWFkZXIubnVtUmVhZG9ubHlVbnNpZ25lZEFjY291bnRzO1xuICAgICAgcmV0dXJuIHVuc2lnbmVkQWNjb3VudEluZGV4IDwgbnVtV3JpdGFibGVVbnNpZ25lZEFjY291bnRzO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBudW1Xcml0YWJsZVNpZ25lZEFjY291bnRzID1cbiAgICAgICAgbnVtU2lnbmVkQWNjb3VudHMgLSB0aGlzLmhlYWRlci5udW1SZWFkb25seVNpZ25lZEFjY291bnRzO1xuICAgICAgcmV0dXJuIGluZGV4IDwgbnVtV3JpdGFibGVTaWduZWRBY2NvdW50cztcbiAgICB9XG4gIH1cblxuICByZXNvbHZlQWRkcmVzc1RhYmxlTG9va3VwcyhcbiAgICBhZGRyZXNzTG9va3VwVGFibGVBY2NvdW50czogQWRkcmVzc0xvb2t1cFRhYmxlQWNjb3VudFtdLFxuICApOiBBY2NvdW50S2V5c0Zyb21Mb29rdXBzIHtcbiAgICBjb25zdCBhY2NvdW50S2V5c0Zyb21Mb29rdXBzOiBBY2NvdW50S2V5c0Zyb21Mb29rdXBzID0ge1xuICAgICAgd3JpdGFibGU6IFtdLFxuICAgICAgcmVhZG9ubHk6IFtdLFxuICAgIH07XG5cbiAgICBmb3IgKGNvbnN0IHRhYmxlTG9va3VwIG9mIHRoaXMuYWRkcmVzc1RhYmxlTG9va3Vwcykge1xuICAgICAgY29uc3QgdGFibGVBY2NvdW50ID0gYWRkcmVzc0xvb2t1cFRhYmxlQWNjb3VudHMuZmluZChhY2NvdW50ID0+XG4gICAgICAgIGFjY291bnQua2V5LmVxdWFscyh0YWJsZUxvb2t1cC5hY2NvdW50S2V5KSxcbiAgICAgICk7XG4gICAgICBpZiAoIXRhYmxlQWNjb3VudCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgYEZhaWxlZCB0byBmaW5kIGFkZHJlc3MgbG9va3VwIHRhYmxlIGFjY291bnQgZm9yIHRhYmxlIGtleSAke3RhYmxlTG9va3VwLmFjY291bnRLZXkudG9CYXNlNTgoKX1gLFxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBmb3IgKGNvbnN0IGluZGV4IG9mIHRhYmxlTG9va3VwLndyaXRhYmxlSW5kZXhlcykge1xuICAgICAgICBpZiAoaW5kZXggPCB0YWJsZUFjY291bnQuc3RhdGUuYWRkcmVzc2VzLmxlbmd0aCkge1xuICAgICAgICAgIGFjY291bnRLZXlzRnJvbUxvb2t1cHMud3JpdGFibGUucHVzaChcbiAgICAgICAgICAgIHRhYmxlQWNjb3VudC5zdGF0ZS5hZGRyZXNzZXNbaW5kZXhdLFxuICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICAgYEZhaWxlZCB0byBmaW5kIGFkZHJlc3MgZm9yIGluZGV4ICR7aW5kZXh9IGluIGFkZHJlc3MgbG9va3VwIHRhYmxlICR7dGFibGVMb29rdXAuYWNjb3VudEtleS50b0Jhc2U1OCgpfWAsXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBmb3IgKGNvbnN0IGluZGV4IG9mIHRhYmxlTG9va3VwLnJlYWRvbmx5SW5kZXhlcykge1xuICAgICAgICBpZiAoaW5kZXggPCB0YWJsZUFjY291bnQuc3RhdGUuYWRkcmVzc2VzLmxlbmd0aCkge1xuICAgICAgICAgIGFjY291bnRLZXlzRnJvbUxvb2t1cHMucmVhZG9ubHkucHVzaChcbiAgICAgICAgICAgIHRhYmxlQWNjb3VudC5zdGF0ZS5hZGRyZXNzZXNbaW5kZXhdLFxuICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICAgYEZhaWxlZCB0byBmaW5kIGFkZHJlc3MgZm9yIGluZGV4ICR7aW5kZXh9IGluIGFkZHJlc3MgbG9va3VwIHRhYmxlICR7dGFibGVMb29rdXAuYWNjb3VudEtleS50b0Jhc2U1OCgpfWAsXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBhY2NvdW50S2V5c0Zyb21Mb29rdXBzO1xuICB9XG5cbiAgc3RhdGljIGNvbXBpbGUoYXJnczogQ29tcGlsZVYwQXJncyk6IE1lc3NhZ2VWMCB7XG4gICAgY29uc3QgY29tcGlsZWRLZXlzID0gQ29tcGlsZWRLZXlzLmNvbXBpbGUoYXJncy5pbnN0cnVjdGlvbnMsIGFyZ3MucGF5ZXJLZXkpO1xuXG4gICAgY29uc3QgYWRkcmVzc1RhYmxlTG9va3VwcyA9IG5ldyBBcnJheTxNZXNzYWdlQWRkcmVzc1RhYmxlTG9va3VwPigpO1xuICAgIGNvbnN0IGFjY291bnRLZXlzRnJvbUxvb2t1cHM6IEFjY291bnRLZXlzRnJvbUxvb2t1cHMgPSB7XG4gICAgICB3cml0YWJsZTogbmV3IEFycmF5KCksXG4gICAgICByZWFkb25seTogbmV3IEFycmF5KCksXG4gICAgfTtcbiAgICBjb25zdCBsb29rdXBUYWJsZUFjY291bnRzID0gYXJncy5hZGRyZXNzTG9va3VwVGFibGVBY2NvdW50cyB8fCBbXTtcbiAgICBmb3IgKGNvbnN0IGxvb2t1cFRhYmxlIG9mIGxvb2t1cFRhYmxlQWNjb3VudHMpIHtcbiAgICAgIGNvbnN0IGV4dHJhY3RSZXN1bHQgPSBjb21waWxlZEtleXMuZXh0cmFjdFRhYmxlTG9va3VwKGxvb2t1cFRhYmxlKTtcbiAgICAgIGlmIChleHRyYWN0UmVzdWx0ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgY29uc3QgW2FkZHJlc3NUYWJsZUxvb2t1cCwge3dyaXRhYmxlLCByZWFkb25seX1dID0gZXh0cmFjdFJlc3VsdDtcbiAgICAgICAgYWRkcmVzc1RhYmxlTG9va3Vwcy5wdXNoKGFkZHJlc3NUYWJsZUxvb2t1cCk7XG4gICAgICAgIGFjY291bnRLZXlzRnJvbUxvb2t1cHMud3JpdGFibGUucHVzaCguLi53cml0YWJsZSk7XG4gICAgICAgIGFjY291bnRLZXlzRnJvbUxvb2t1cHMucmVhZG9ubHkucHVzaCguLi5yZWFkb25seSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgW2hlYWRlciwgc3RhdGljQWNjb3VudEtleXNdID0gY29tcGlsZWRLZXlzLmdldE1lc3NhZ2VDb21wb25lbnRzKCk7XG4gICAgY29uc3QgYWNjb3VudEtleXMgPSBuZXcgTWVzc2FnZUFjY291bnRLZXlzKFxuICAgICAgc3RhdGljQWNjb3VudEtleXMsXG4gICAgICBhY2NvdW50S2V5c0Zyb21Mb29rdXBzLFxuICAgICk7XG4gICAgY29uc3QgY29tcGlsZWRJbnN0cnVjdGlvbnMgPSBhY2NvdW50S2V5cy5jb21waWxlSW5zdHJ1Y3Rpb25zKFxuICAgICAgYXJncy5pbnN0cnVjdGlvbnMsXG4gICAgKTtcbiAgICByZXR1cm4gbmV3IE1lc3NhZ2VWMCh7XG4gICAgICBoZWFkZXIsXG4gICAgICBzdGF0aWNBY2NvdW50S2V5cyxcbiAgICAgIHJlY2VudEJsb2NraGFzaDogYXJncy5yZWNlbnRCbG9ja2hhc2gsXG4gICAgICBjb21waWxlZEluc3RydWN0aW9ucyxcbiAgICAgIGFkZHJlc3NUYWJsZUxvb2t1cHMsXG4gICAgfSk7XG4gIH1cblxuICBzZXJpYWxpemUoKTogVWludDhBcnJheSB7XG4gICAgY29uc3QgZW5jb2RlZFN0YXRpY0FjY291bnRLZXlzTGVuZ3RoID0gQXJyYXk8bnVtYmVyPigpO1xuICAgIHNob3J0dmVjLmVuY29kZUxlbmd0aChcbiAgICAgIGVuY29kZWRTdGF0aWNBY2NvdW50S2V5c0xlbmd0aCxcbiAgICAgIHRoaXMuc3RhdGljQWNjb3VudEtleXMubGVuZ3RoLFxuICAgICk7XG5cbiAgICBjb25zdCBzZXJpYWxpemVkSW5zdHJ1Y3Rpb25zID0gdGhpcy5zZXJpYWxpemVJbnN0cnVjdGlvbnMoKTtcbiAgICBjb25zdCBlbmNvZGVkSW5zdHJ1Y3Rpb25zTGVuZ3RoID0gQXJyYXk8bnVtYmVyPigpO1xuICAgIHNob3J0dmVjLmVuY29kZUxlbmd0aChcbiAgICAgIGVuY29kZWRJbnN0cnVjdGlvbnNMZW5ndGgsXG4gICAgICB0aGlzLmNvbXBpbGVkSW5zdHJ1Y3Rpb25zLmxlbmd0aCxcbiAgICApO1xuXG4gICAgY29uc3Qgc2VyaWFsaXplZEFkZHJlc3NUYWJsZUxvb2t1cHMgPSB0aGlzLnNlcmlhbGl6ZUFkZHJlc3NUYWJsZUxvb2t1cHMoKTtcbiAgICBjb25zdCBlbmNvZGVkQWRkcmVzc1RhYmxlTG9va3Vwc0xlbmd0aCA9IEFycmF5PG51bWJlcj4oKTtcbiAgICBzaG9ydHZlYy5lbmNvZGVMZW5ndGgoXG4gICAgICBlbmNvZGVkQWRkcmVzc1RhYmxlTG9va3Vwc0xlbmd0aCxcbiAgICAgIHRoaXMuYWRkcmVzc1RhYmxlTG9va3Vwcy5sZW5ndGgsXG4gICAgKTtcblxuICAgIGNvbnN0IG1lc3NhZ2VMYXlvdXQgPSBCdWZmZXJMYXlvdXQuc3RydWN0PHtcbiAgICAgIHByZWZpeDogbnVtYmVyO1xuICAgICAgaGVhZGVyOiBNZXNzYWdlSGVhZGVyO1xuICAgICAgc3RhdGljQWNjb3VudEtleXNMZW5ndGg6IFVpbnQ4QXJyYXk7XG4gICAgICBzdGF0aWNBY2NvdW50S2V5czogQXJyYXk8VWludDhBcnJheT47XG4gICAgICByZWNlbnRCbG9ja2hhc2g6IFVpbnQ4QXJyYXk7XG4gICAgICBpbnN0cnVjdGlvbnNMZW5ndGg6IFVpbnQ4QXJyYXk7XG4gICAgICBzZXJpYWxpemVkSW5zdHJ1Y3Rpb25zOiBVaW50OEFycmF5O1xuICAgICAgYWRkcmVzc1RhYmxlTG9va3Vwc0xlbmd0aDogVWludDhBcnJheTtcbiAgICAgIHNlcmlhbGl6ZWRBZGRyZXNzVGFibGVMb29rdXBzOiBVaW50OEFycmF5O1xuICAgIH0+KFtcbiAgICAgIEJ1ZmZlckxheW91dC51OCgncHJlZml4JyksXG4gICAgICBCdWZmZXJMYXlvdXQuc3RydWN0PE1lc3NhZ2VIZWFkZXI+KFxuICAgICAgICBbXG4gICAgICAgICAgQnVmZmVyTGF5b3V0LnU4KCdudW1SZXF1aXJlZFNpZ25hdHVyZXMnKSxcbiAgICAgICAgICBCdWZmZXJMYXlvdXQudTgoJ251bVJlYWRvbmx5U2lnbmVkQWNjb3VudHMnKSxcbiAgICAgICAgICBCdWZmZXJMYXlvdXQudTgoJ251bVJlYWRvbmx5VW5zaWduZWRBY2NvdW50cycpLFxuICAgICAgICBdLFxuICAgICAgICAnaGVhZGVyJyxcbiAgICAgICksXG4gICAgICBCdWZmZXJMYXlvdXQuYmxvYihcbiAgICAgICAgZW5jb2RlZFN0YXRpY0FjY291bnRLZXlzTGVuZ3RoLmxlbmd0aCxcbiAgICAgICAgJ3N0YXRpY0FjY291bnRLZXlzTGVuZ3RoJyxcbiAgICAgICksXG4gICAgICBCdWZmZXJMYXlvdXQuc2VxKFxuICAgICAgICBMYXlvdXQucHVibGljS2V5KCksXG4gICAgICAgIHRoaXMuc3RhdGljQWNjb3VudEtleXMubGVuZ3RoLFxuICAgICAgICAnc3RhdGljQWNjb3VudEtleXMnLFxuICAgICAgKSxcbiAgICAgIExheW91dC5wdWJsaWNLZXkoJ3JlY2VudEJsb2NraGFzaCcpLFxuICAgICAgQnVmZmVyTGF5b3V0LmJsb2IoZW5jb2RlZEluc3RydWN0aW9uc0xlbmd0aC5sZW5ndGgsICdpbnN0cnVjdGlvbnNMZW5ndGgnKSxcbiAgICAgIEJ1ZmZlckxheW91dC5ibG9iKFxuICAgICAgICBzZXJpYWxpemVkSW5zdHJ1Y3Rpb25zLmxlbmd0aCxcbiAgICAgICAgJ3NlcmlhbGl6ZWRJbnN0cnVjdGlvbnMnLFxuICAgICAgKSxcbiAgICAgIEJ1ZmZlckxheW91dC5ibG9iKFxuICAgICAgICBlbmNvZGVkQWRkcmVzc1RhYmxlTG9va3Vwc0xlbmd0aC5sZW5ndGgsXG4gICAgICAgICdhZGRyZXNzVGFibGVMb29rdXBzTGVuZ3RoJyxcbiAgICAgICksXG4gICAgICBCdWZmZXJMYXlvdXQuYmxvYihcbiAgICAgICAgc2VyaWFsaXplZEFkZHJlc3NUYWJsZUxvb2t1cHMubGVuZ3RoLFxuICAgICAgICAnc2VyaWFsaXplZEFkZHJlc3NUYWJsZUxvb2t1cHMnLFxuICAgICAgKSxcbiAgICBdKTtcblxuICAgIGNvbnN0IHNlcmlhbGl6ZWRNZXNzYWdlID0gbmV3IFVpbnQ4QXJyYXkoUEFDS0VUX0RBVEFfU0laRSk7XG4gICAgY29uc3QgTUVTU0FHRV9WRVJTSU9OXzBfUFJFRklYID0gMSA8PCA3O1xuICAgIGNvbnN0IHNlcmlhbGl6ZWRNZXNzYWdlTGVuZ3RoID0gbWVzc2FnZUxheW91dC5lbmNvZGUoXG4gICAgICB7XG4gICAgICAgIHByZWZpeDogTUVTU0FHRV9WRVJTSU9OXzBfUFJFRklYLFxuICAgICAgICBoZWFkZXI6IHRoaXMuaGVhZGVyLFxuICAgICAgICBzdGF0aWNBY2NvdW50S2V5c0xlbmd0aDogbmV3IFVpbnQ4QXJyYXkoZW5jb2RlZFN0YXRpY0FjY291bnRLZXlzTGVuZ3RoKSxcbiAgICAgICAgc3RhdGljQWNjb3VudEtleXM6IHRoaXMuc3RhdGljQWNjb3VudEtleXMubWFwKGtleSA9PiBrZXkudG9CeXRlcygpKSxcbiAgICAgICAgcmVjZW50QmxvY2toYXNoOiBiczU4LmRlY29kZSh0aGlzLnJlY2VudEJsb2NraGFzaCksXG4gICAgICAgIGluc3RydWN0aW9uc0xlbmd0aDogbmV3IFVpbnQ4QXJyYXkoZW5jb2RlZEluc3RydWN0aW9uc0xlbmd0aCksXG4gICAgICAgIHNlcmlhbGl6ZWRJbnN0cnVjdGlvbnMsXG4gICAgICAgIGFkZHJlc3NUYWJsZUxvb2t1cHNMZW5ndGg6IG5ldyBVaW50OEFycmF5KFxuICAgICAgICAgIGVuY29kZWRBZGRyZXNzVGFibGVMb29rdXBzTGVuZ3RoLFxuICAgICAgICApLFxuICAgICAgICBzZXJpYWxpemVkQWRkcmVzc1RhYmxlTG9va3VwcyxcbiAgICAgIH0sXG4gICAgICBzZXJpYWxpemVkTWVzc2FnZSxcbiAgICApO1xuICAgIHJldHVybiBzZXJpYWxpemVkTWVzc2FnZS5zbGljZSgwLCBzZXJpYWxpemVkTWVzc2FnZUxlbmd0aCk7XG4gIH1cblxuICBwcml2YXRlIHNlcmlhbGl6ZUluc3RydWN0aW9ucygpOiBVaW50OEFycmF5IHtcbiAgICBsZXQgc2VyaWFsaXplZExlbmd0aCA9IDA7XG4gICAgY29uc3Qgc2VyaWFsaXplZEluc3RydWN0aW9ucyA9IG5ldyBVaW50OEFycmF5KFBBQ0tFVF9EQVRBX1NJWkUpO1xuICAgIGZvciAoY29uc3QgaW5zdHJ1Y3Rpb24gb2YgdGhpcy5jb21waWxlZEluc3RydWN0aW9ucykge1xuICAgICAgY29uc3QgZW5jb2RlZEFjY291bnRLZXlJbmRleGVzTGVuZ3RoID0gQXJyYXk8bnVtYmVyPigpO1xuICAgICAgc2hvcnR2ZWMuZW5jb2RlTGVuZ3RoKFxuICAgICAgICBlbmNvZGVkQWNjb3VudEtleUluZGV4ZXNMZW5ndGgsXG4gICAgICAgIGluc3RydWN0aW9uLmFjY291bnRLZXlJbmRleGVzLmxlbmd0aCxcbiAgICAgICk7XG5cbiAgICAgIGNvbnN0IGVuY29kZWREYXRhTGVuZ3RoID0gQXJyYXk8bnVtYmVyPigpO1xuICAgICAgc2hvcnR2ZWMuZW5jb2RlTGVuZ3RoKGVuY29kZWREYXRhTGVuZ3RoLCBpbnN0cnVjdGlvbi5kYXRhLmxlbmd0aCk7XG5cbiAgICAgIGNvbnN0IGluc3RydWN0aW9uTGF5b3V0ID0gQnVmZmVyTGF5b3V0LnN0cnVjdDx7XG4gICAgICAgIHByb2dyYW1JZEluZGV4OiBudW1iZXI7XG4gICAgICAgIGVuY29kZWRBY2NvdW50S2V5SW5kZXhlc0xlbmd0aDogVWludDhBcnJheTtcbiAgICAgICAgYWNjb3VudEtleUluZGV4ZXM6IG51bWJlcltdO1xuICAgICAgICBlbmNvZGVkRGF0YUxlbmd0aDogVWludDhBcnJheTtcbiAgICAgICAgZGF0YTogVWludDhBcnJheTtcbiAgICAgIH0+KFtcbiAgICAgICAgQnVmZmVyTGF5b3V0LnU4KCdwcm9ncmFtSWRJbmRleCcpLFxuICAgICAgICBCdWZmZXJMYXlvdXQuYmxvYihcbiAgICAgICAgICBlbmNvZGVkQWNjb3VudEtleUluZGV4ZXNMZW5ndGgubGVuZ3RoLFxuICAgICAgICAgICdlbmNvZGVkQWNjb3VudEtleUluZGV4ZXNMZW5ndGgnLFxuICAgICAgICApLFxuICAgICAgICBCdWZmZXJMYXlvdXQuc2VxKFxuICAgICAgICAgIEJ1ZmZlckxheW91dC51OCgpLFxuICAgICAgICAgIGluc3RydWN0aW9uLmFjY291bnRLZXlJbmRleGVzLmxlbmd0aCxcbiAgICAgICAgICAnYWNjb3VudEtleUluZGV4ZXMnLFxuICAgICAgICApLFxuICAgICAgICBCdWZmZXJMYXlvdXQuYmxvYihlbmNvZGVkRGF0YUxlbmd0aC5sZW5ndGgsICdlbmNvZGVkRGF0YUxlbmd0aCcpLFxuICAgICAgICBCdWZmZXJMYXlvdXQuYmxvYihpbnN0cnVjdGlvbi5kYXRhLmxlbmd0aCwgJ2RhdGEnKSxcbiAgICAgIF0pO1xuXG4gICAgICBzZXJpYWxpemVkTGVuZ3RoICs9IGluc3RydWN0aW9uTGF5b3V0LmVuY29kZShcbiAgICAgICAge1xuICAgICAgICAgIHByb2dyYW1JZEluZGV4OiBpbnN0cnVjdGlvbi5wcm9ncmFtSWRJbmRleCxcbiAgICAgICAgICBlbmNvZGVkQWNjb3VudEtleUluZGV4ZXNMZW5ndGg6IG5ldyBVaW50OEFycmF5KFxuICAgICAgICAgICAgZW5jb2RlZEFjY291bnRLZXlJbmRleGVzTGVuZ3RoLFxuICAgICAgICAgICksXG4gICAgICAgICAgYWNjb3VudEtleUluZGV4ZXM6IGluc3RydWN0aW9uLmFjY291bnRLZXlJbmRleGVzLFxuICAgICAgICAgIGVuY29kZWREYXRhTGVuZ3RoOiBuZXcgVWludDhBcnJheShlbmNvZGVkRGF0YUxlbmd0aCksXG4gICAgICAgICAgZGF0YTogaW5zdHJ1Y3Rpb24uZGF0YSxcbiAgICAgICAgfSxcbiAgICAgICAgc2VyaWFsaXplZEluc3RydWN0aW9ucyxcbiAgICAgICAgc2VyaWFsaXplZExlbmd0aCxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHNlcmlhbGl6ZWRJbnN0cnVjdGlvbnMuc2xpY2UoMCwgc2VyaWFsaXplZExlbmd0aCk7XG4gIH1cblxuICBwcml2YXRlIHNlcmlhbGl6ZUFkZHJlc3NUYWJsZUxvb2t1cHMoKTogVWludDhBcnJheSB7XG4gICAgbGV0IHNlcmlhbGl6ZWRMZW5ndGggPSAwO1xuICAgIGNvbnN0IHNlcmlhbGl6ZWRBZGRyZXNzVGFibGVMb29rdXBzID0gbmV3IFVpbnQ4QXJyYXkoUEFDS0VUX0RBVEFfU0laRSk7XG4gICAgZm9yIChjb25zdCBsb29rdXAgb2YgdGhpcy5hZGRyZXNzVGFibGVMb29rdXBzKSB7XG4gICAgICBjb25zdCBlbmNvZGVkV3JpdGFibGVJbmRleGVzTGVuZ3RoID0gQXJyYXk8bnVtYmVyPigpO1xuICAgICAgc2hvcnR2ZWMuZW5jb2RlTGVuZ3RoKFxuICAgICAgICBlbmNvZGVkV3JpdGFibGVJbmRleGVzTGVuZ3RoLFxuICAgICAgICBsb29rdXAud3JpdGFibGVJbmRleGVzLmxlbmd0aCxcbiAgICAgICk7XG5cbiAgICAgIGNvbnN0IGVuY29kZWRSZWFkb25seUluZGV4ZXNMZW5ndGggPSBBcnJheTxudW1iZXI+KCk7XG4gICAgICBzaG9ydHZlYy5lbmNvZGVMZW5ndGgoXG4gICAgICAgIGVuY29kZWRSZWFkb25seUluZGV4ZXNMZW5ndGgsXG4gICAgICAgIGxvb2t1cC5yZWFkb25seUluZGV4ZXMubGVuZ3RoLFxuICAgICAgKTtcblxuICAgICAgY29uc3QgYWRkcmVzc1RhYmxlTG9va3VwTGF5b3V0ID0gQnVmZmVyTGF5b3V0LnN0cnVjdDx7XG4gICAgICAgIGFjY291bnRLZXk6IFVpbnQ4QXJyYXk7XG4gICAgICAgIGVuY29kZWRXcml0YWJsZUluZGV4ZXNMZW5ndGg6IFVpbnQ4QXJyYXk7XG4gICAgICAgIHdyaXRhYmxlSW5kZXhlczogbnVtYmVyW107XG4gICAgICAgIGVuY29kZWRSZWFkb25seUluZGV4ZXNMZW5ndGg6IFVpbnQ4QXJyYXk7XG4gICAgICAgIHJlYWRvbmx5SW5kZXhlczogbnVtYmVyW107XG4gICAgICB9PihbXG4gICAgICAgIExheW91dC5wdWJsaWNLZXkoJ2FjY291bnRLZXknKSxcbiAgICAgICAgQnVmZmVyTGF5b3V0LmJsb2IoXG4gICAgICAgICAgZW5jb2RlZFdyaXRhYmxlSW5kZXhlc0xlbmd0aC5sZW5ndGgsXG4gICAgICAgICAgJ2VuY29kZWRXcml0YWJsZUluZGV4ZXNMZW5ndGgnLFxuICAgICAgICApLFxuICAgICAgICBCdWZmZXJMYXlvdXQuc2VxKFxuICAgICAgICAgIEJ1ZmZlckxheW91dC51OCgpLFxuICAgICAgICAgIGxvb2t1cC53cml0YWJsZUluZGV4ZXMubGVuZ3RoLFxuICAgICAgICAgICd3cml0YWJsZUluZGV4ZXMnLFxuICAgICAgICApLFxuICAgICAgICBCdWZmZXJMYXlvdXQuYmxvYihcbiAgICAgICAgICBlbmNvZGVkUmVhZG9ubHlJbmRleGVzTGVuZ3RoLmxlbmd0aCxcbiAgICAgICAgICAnZW5jb2RlZFJlYWRvbmx5SW5kZXhlc0xlbmd0aCcsXG4gICAgICAgICksXG4gICAgICAgIEJ1ZmZlckxheW91dC5zZXEoXG4gICAgICAgICAgQnVmZmVyTGF5b3V0LnU4KCksXG4gICAgICAgICAgbG9va3VwLnJlYWRvbmx5SW5kZXhlcy5sZW5ndGgsXG4gICAgICAgICAgJ3JlYWRvbmx5SW5kZXhlcycsXG4gICAgICAgICksXG4gICAgICBdKTtcblxuICAgICAgc2VyaWFsaXplZExlbmd0aCArPSBhZGRyZXNzVGFibGVMb29rdXBMYXlvdXQuZW5jb2RlKFxuICAgICAgICB7XG4gICAgICAgICAgYWNjb3VudEtleTogbG9va3VwLmFjY291bnRLZXkudG9CeXRlcygpLFxuICAgICAgICAgIGVuY29kZWRXcml0YWJsZUluZGV4ZXNMZW5ndGg6IG5ldyBVaW50OEFycmF5KFxuICAgICAgICAgICAgZW5jb2RlZFdyaXRhYmxlSW5kZXhlc0xlbmd0aCxcbiAgICAgICAgICApLFxuICAgICAgICAgIHdyaXRhYmxlSW5kZXhlczogbG9va3VwLndyaXRhYmxlSW5kZXhlcyxcbiAgICAgICAgICBlbmNvZGVkUmVhZG9ubHlJbmRleGVzTGVuZ3RoOiBuZXcgVWludDhBcnJheShcbiAgICAgICAgICAgIGVuY29kZWRSZWFkb25seUluZGV4ZXNMZW5ndGgsXG4gICAgICAgICAgKSxcbiAgICAgICAgICByZWFkb25seUluZGV4ZXM6IGxvb2t1cC5yZWFkb25seUluZGV4ZXMsXG4gICAgICAgIH0sXG4gICAgICAgIHNlcmlhbGl6ZWRBZGRyZXNzVGFibGVMb29rdXBzLFxuICAgICAgICBzZXJpYWxpemVkTGVuZ3RoLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gc2VyaWFsaXplZEFkZHJlc3NUYWJsZUxvb2t1cHMuc2xpY2UoMCwgc2VyaWFsaXplZExlbmd0aCk7XG4gIH1cblxuICBzdGF0aWMgZGVzZXJpYWxpemUoc2VyaWFsaXplZE1lc3NhZ2U6IFVpbnQ4QXJyYXkpOiBNZXNzYWdlVjAge1xuICAgIGxldCBieXRlQXJyYXkgPSBbLi4uc2VyaWFsaXplZE1lc3NhZ2VdO1xuXG4gICAgY29uc3QgcHJlZml4ID0gYnl0ZUFycmF5LnNoaWZ0KCkgYXMgbnVtYmVyO1xuICAgIGNvbnN0IG1hc2tlZFByZWZpeCA9IHByZWZpeCAmIFZFUlNJT05fUFJFRklYX01BU0s7XG4gICAgYXNzZXJ0KFxuICAgICAgcHJlZml4ICE9PSBtYXNrZWRQcmVmaXgsXG4gICAgICBgRXhwZWN0ZWQgdmVyc2lvbmVkIG1lc3NhZ2UgYnV0IHJlY2VpdmVkIGxlZ2FjeSBtZXNzYWdlYCxcbiAgICApO1xuXG4gICAgY29uc3QgdmVyc2lvbiA9IG1hc2tlZFByZWZpeDtcbiAgICBhc3NlcnQoXG4gICAgICB2ZXJzaW9uID09PSAwLFxuICAgICAgYEV4cGVjdGVkIHZlcnNpb25lZCBtZXNzYWdlIHdpdGggdmVyc2lvbiAwIGJ1dCBmb3VuZCB2ZXJzaW9uICR7dmVyc2lvbn1gLFxuICAgICk7XG5cbiAgICBjb25zdCBoZWFkZXI6IE1lc3NhZ2VIZWFkZXIgPSB7XG4gICAgICBudW1SZXF1aXJlZFNpZ25hdHVyZXM6IGJ5dGVBcnJheS5zaGlmdCgpIGFzIG51bWJlcixcbiAgICAgIG51bVJlYWRvbmx5U2lnbmVkQWNjb3VudHM6IGJ5dGVBcnJheS5zaGlmdCgpIGFzIG51bWJlcixcbiAgICAgIG51bVJlYWRvbmx5VW5zaWduZWRBY2NvdW50czogYnl0ZUFycmF5LnNoaWZ0KCkgYXMgbnVtYmVyLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0aWNBY2NvdW50S2V5cyA9IFtdO1xuICAgIGNvbnN0IHN0YXRpY0FjY291bnRLZXlzTGVuZ3RoID0gc2hvcnR2ZWMuZGVjb2RlTGVuZ3RoKGJ5dGVBcnJheSk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzdGF0aWNBY2NvdW50S2V5c0xlbmd0aDsgaSsrKSB7XG4gICAgICBzdGF0aWNBY2NvdW50S2V5cy5wdXNoKFxuICAgICAgICBuZXcgUHVibGljS2V5KGJ5dGVBcnJheS5zcGxpY2UoMCwgUFVCTElDX0tFWV9MRU5HVEgpKSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgY29uc3QgcmVjZW50QmxvY2toYXNoID0gYnM1OC5lbmNvZGUoYnl0ZUFycmF5LnNwbGljZSgwLCBQVUJMSUNfS0VZX0xFTkdUSCkpO1xuXG4gICAgY29uc3QgaW5zdHJ1Y3Rpb25Db3VudCA9IHNob3J0dmVjLmRlY29kZUxlbmd0aChieXRlQXJyYXkpO1xuICAgIGNvbnN0IGNvbXBpbGVkSW5zdHJ1Y3Rpb25zOiBNZXNzYWdlQ29tcGlsZWRJbnN0cnVjdGlvbltdID0gW107XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbnN0cnVjdGlvbkNvdW50OyBpKyspIHtcbiAgICAgIGNvbnN0IHByb2dyYW1JZEluZGV4ID0gYnl0ZUFycmF5LnNoaWZ0KCkgYXMgbnVtYmVyO1xuICAgICAgY29uc3QgYWNjb3VudEtleUluZGV4ZXNMZW5ndGggPSBzaG9ydHZlYy5kZWNvZGVMZW5ndGgoYnl0ZUFycmF5KTtcbiAgICAgIGNvbnN0IGFjY291bnRLZXlJbmRleGVzID0gYnl0ZUFycmF5LnNwbGljZSgwLCBhY2NvdW50S2V5SW5kZXhlc0xlbmd0aCk7XG4gICAgICBjb25zdCBkYXRhTGVuZ3RoID0gc2hvcnR2ZWMuZGVjb2RlTGVuZ3RoKGJ5dGVBcnJheSk7XG4gICAgICBjb25zdCBkYXRhID0gbmV3IFVpbnQ4QXJyYXkoYnl0ZUFycmF5LnNwbGljZSgwLCBkYXRhTGVuZ3RoKSk7XG4gICAgICBjb21waWxlZEluc3RydWN0aW9ucy5wdXNoKHtcbiAgICAgICAgcHJvZ3JhbUlkSW5kZXgsXG4gICAgICAgIGFjY291bnRLZXlJbmRleGVzLFxuICAgICAgICBkYXRhLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgY29uc3QgYWRkcmVzc1RhYmxlTG9va3Vwc0NvdW50ID0gc2hvcnR2ZWMuZGVjb2RlTGVuZ3RoKGJ5dGVBcnJheSk7XG4gICAgY29uc3QgYWRkcmVzc1RhYmxlTG9va3VwczogTWVzc2FnZUFkZHJlc3NUYWJsZUxvb2t1cFtdID0gW107XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhZGRyZXNzVGFibGVMb29rdXBzQ291bnQ7IGkrKykge1xuICAgICAgY29uc3QgYWNjb3VudEtleSA9IG5ldyBQdWJsaWNLZXkoYnl0ZUFycmF5LnNwbGljZSgwLCBQVUJMSUNfS0VZX0xFTkdUSCkpO1xuICAgICAgY29uc3Qgd3JpdGFibGVJbmRleGVzTGVuZ3RoID0gc2hvcnR2ZWMuZGVjb2RlTGVuZ3RoKGJ5dGVBcnJheSk7XG4gICAgICBjb25zdCB3cml0YWJsZUluZGV4ZXMgPSBieXRlQXJyYXkuc3BsaWNlKDAsIHdyaXRhYmxlSW5kZXhlc0xlbmd0aCk7XG4gICAgICBjb25zdCByZWFkb25seUluZGV4ZXNMZW5ndGggPSBzaG9ydHZlYy5kZWNvZGVMZW5ndGgoYnl0ZUFycmF5KTtcbiAgICAgIGNvbnN0IHJlYWRvbmx5SW5kZXhlcyA9IGJ5dGVBcnJheS5zcGxpY2UoMCwgcmVhZG9ubHlJbmRleGVzTGVuZ3RoKTtcbiAgICAgIGFkZHJlc3NUYWJsZUxvb2t1cHMucHVzaCh7XG4gICAgICAgIGFjY291bnRLZXksXG4gICAgICAgIHdyaXRhYmxlSW5kZXhlcyxcbiAgICAgICAgcmVhZG9ubHlJbmRleGVzLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5ldyBNZXNzYWdlVjAoe1xuICAgICAgaGVhZGVyLFxuICAgICAgc3RhdGljQWNjb3VudEtleXMsXG4gICAgICByZWNlbnRCbG9ja2hhc2gsXG4gICAgICBjb21waWxlZEluc3RydWN0aW9ucyxcbiAgICAgIGFkZHJlc3NUYWJsZUxvb2t1cHMsXG4gICAgfSk7XG4gIH1cbn1cbiIsICJpbXBvcnQge1ZFUlNJT05fUFJFRklYX01BU0t9IGZyb20gJy4uL3RyYW5zYWN0aW9uL2NvbnN0YW50cyc7XG5pbXBvcnQge01lc3NhZ2V9IGZyb20gJy4vbGVnYWN5JztcbmltcG9ydCB7TWVzc2FnZVYwfSBmcm9tICcuL3YwJztcblxuZXhwb3J0IHR5cGUgVmVyc2lvbmVkTWVzc2FnZSA9IE1lc3NhZ2UgfCBNZXNzYWdlVjA7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcmVkZWNsYXJlXG5leHBvcnQgY29uc3QgVmVyc2lvbmVkTWVzc2FnZSA9IHtcbiAgZGVzZXJpYWxpemVNZXNzYWdlVmVyc2lvbihzZXJpYWxpemVkTWVzc2FnZTogVWludDhBcnJheSk6ICdsZWdhY3knIHwgbnVtYmVyIHtcbiAgICBjb25zdCBwcmVmaXggPSBzZXJpYWxpemVkTWVzc2FnZVswXTtcbiAgICBjb25zdCBtYXNrZWRQcmVmaXggPSBwcmVmaXggJiBWRVJTSU9OX1BSRUZJWF9NQVNLO1xuXG4gICAgLy8gaWYgdGhlIGhpZ2hlc3QgYml0IG9mIHRoZSBwcmVmaXggaXMgbm90IHNldCwgdGhlIG1lc3NhZ2UgaXMgbm90IHZlcnNpb25lZFxuICAgIGlmIChtYXNrZWRQcmVmaXggPT09IHByZWZpeCkge1xuICAgICAgcmV0dXJuICdsZWdhY3knO1xuICAgIH1cblxuICAgIC8vIHRoZSBsb3dlciA3IGJpdHMgb2YgdGhlIHByZWZpeCBpbmRpY2F0ZSB0aGUgbWVzc2FnZSB2ZXJzaW9uXG4gICAgcmV0dXJuIG1hc2tlZFByZWZpeDtcbiAgfSxcblxuICBkZXNlcmlhbGl6ZTogKHNlcmlhbGl6ZWRNZXNzYWdlOiBVaW50OEFycmF5KTogVmVyc2lvbmVkTWVzc2FnZSA9PiB7XG4gICAgY29uc3QgdmVyc2lvbiA9XG4gICAgICBWZXJzaW9uZWRNZXNzYWdlLmRlc2VyaWFsaXplTWVzc2FnZVZlcnNpb24oc2VyaWFsaXplZE1lc3NhZ2UpO1xuICAgIGlmICh2ZXJzaW9uID09PSAnbGVnYWN5Jykge1xuICAgICAgcmV0dXJuIE1lc3NhZ2UuZnJvbShzZXJpYWxpemVkTWVzc2FnZSk7XG4gICAgfVxuXG4gICAgaWYgKHZlcnNpb24gPT09IDApIHtcbiAgICAgIHJldHVybiBNZXNzYWdlVjAuZGVzZXJpYWxpemUoc2VyaWFsaXplZE1lc3NhZ2UpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBUcmFuc2FjdGlvbiBtZXNzYWdlIHZlcnNpb24gJHt2ZXJzaW9ufSBkZXNlcmlhbGl6YXRpb24gaXMgbm90IHN1cHBvcnRlZGAsXG4gICAgICApO1xuICAgIH1cbiAgfSxcbn07XG4iLCAiaW1wb3J0IGJzNTggZnJvbSAnYnM1OCc7XG5pbXBvcnQge0J1ZmZlcn0gZnJvbSAnYnVmZmVyJztcblxuaW1wb3J0IHtQQUNLRVRfREFUQV9TSVpFLCBTSUdOQVRVUkVfTEVOR1RIX0lOX0JZVEVTfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQge0Nvbm5lY3Rpb259IGZyb20gJy4uL2Nvbm5lY3Rpb24nO1xuaW1wb3J0IHtNZXNzYWdlfSBmcm9tICcuLi9tZXNzYWdlJztcbmltcG9ydCB7UHVibGljS2V5fSBmcm9tICcuLi9wdWJsaWNrZXknO1xuaW1wb3J0ICogYXMgc2hvcnR2ZWMgZnJvbSAnLi4vdXRpbHMvc2hvcnR2ZWMtZW5jb2RpbmcnO1xuaW1wb3J0IHt0b0J1ZmZlcn0gZnJvbSAnLi4vdXRpbHMvdG8tYnVmZmVyJztcbmltcG9ydCBpbnZhcmlhbnQgZnJvbSAnLi4vdXRpbHMvYXNzZXJ0JztcbmltcG9ydCB0eXBlIHtTaWduZXJ9IGZyb20gJy4uL2tleXBhaXInO1xuaW1wb3J0IHR5cGUge0Jsb2NraGFzaH0gZnJvbSAnLi4vYmxvY2toYXNoJztcbmltcG9ydCB0eXBlIHtDb21waWxlZEluc3RydWN0aW9ufSBmcm9tICcuLi9tZXNzYWdlJztcbmltcG9ydCB7c2lnbiwgdmVyaWZ5fSBmcm9tICcuLi91dGlscy9lZDI1NTE5JztcblxuLyoqXG4gKiBUcmFuc2FjdGlvbiBzaWduYXR1cmUgYXMgYmFzZS01OCBlbmNvZGVkIHN0cmluZ1xuICovXG5leHBvcnQgdHlwZSBUcmFuc2FjdGlvblNpZ25hdHVyZSA9IHN0cmluZztcblxuZXhwb3J0IGNvbnN0IGVudW0gVHJhbnNhY3Rpb25TdGF0dXMge1xuICBCTE9DS0hFSUdIVF9FWENFRURFRCxcbiAgUFJPQ0VTU0VELFxuICBUSU1FRF9PVVQsXG4gIE5PTkNFX0lOVkFMSUQsXG59XG5cbi8qKlxuICogRGVmYXVsdCAoZW1wdHkpIHNpZ25hdHVyZVxuICovXG5jb25zdCBERUZBVUxUX1NJR05BVFVSRSA9IEJ1ZmZlci5hbGxvYyhTSUdOQVRVUkVfTEVOR1RIX0lOX0JZVEVTKS5maWxsKDApO1xuXG4vKipcbiAqIEFjY291bnQgbWV0YWRhdGEgdXNlZCB0byBkZWZpbmUgaW5zdHJ1Y3Rpb25zXG4gKi9cbmV4cG9ydCB0eXBlIEFjY291bnRNZXRhID0ge1xuICAvKiogQW4gYWNjb3VudCdzIHB1YmxpYyBrZXkgKi9cbiAgcHVia2V5OiBQdWJsaWNLZXk7XG4gIC8qKiBUcnVlIGlmIGFuIGluc3RydWN0aW9uIHJlcXVpcmVzIGEgdHJhbnNhY3Rpb24gc2lnbmF0dXJlIG1hdGNoaW5nIGBwdWJrZXlgICovXG4gIGlzU2lnbmVyOiBib29sZWFuO1xuICAvKiogVHJ1ZSBpZiB0aGUgYHB1YmtleWAgY2FuIGJlIGxvYWRlZCBhcyBhIHJlYWQtd3JpdGUgYWNjb3VudC4gKi9cbiAgaXNXcml0YWJsZTogYm9vbGVhbjtcbn07XG5cbi8qKlxuICogTGlzdCBvZiBUcmFuc2FjdGlvbkluc3RydWN0aW9uIG9iamVjdCBmaWVsZHMgdGhhdCBtYXkgYmUgaW5pdGlhbGl6ZWQgYXQgY29uc3RydWN0aW9uXG4gKi9cbmV4cG9ydCB0eXBlIFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb25DdG9yRmllbGRzID0ge1xuICBrZXlzOiBBcnJheTxBY2NvdW50TWV0YT47XG4gIHByb2dyYW1JZDogUHVibGljS2V5O1xuICBkYXRhPzogQnVmZmVyO1xufTtcblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIG9iamVjdCBmb3IgVHJhbnNhY3Rpb24uc2VyaWFsaXplKClcbiAqL1xuZXhwb3J0IHR5cGUgU2VyaWFsaXplQ29uZmlnID0ge1xuICAvKiogUmVxdWlyZSBhbGwgdHJhbnNhY3Rpb24gc2lnbmF0dXJlcyBiZSBwcmVzZW50IChkZWZhdWx0OiB0cnVlKSAqL1xuICByZXF1aXJlQWxsU2lnbmF0dXJlcz86IGJvb2xlYW47XG4gIC8qKiBWZXJpZnkgcHJvdmlkZWQgc2lnbmF0dXJlcyAoZGVmYXVsdDogdHJ1ZSkgKi9cbiAgdmVyaWZ5U2lnbmF0dXJlcz86IGJvb2xlYW47XG59O1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb25KU09OIHtcbiAga2V5czoge1xuICAgIHB1YmtleTogc3RyaW5nO1xuICAgIGlzU2lnbmVyOiBib29sZWFuO1xuICAgIGlzV3JpdGFibGU6IGJvb2xlYW47XG4gIH1bXTtcbiAgcHJvZ3JhbUlkOiBzdHJpbmc7XG4gIGRhdGE6IG51bWJlcltdO1xufVxuXG4vKipcbiAqIFRyYW5zYWN0aW9uIEluc3RydWN0aW9uIGNsYXNzXG4gKi9cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkluc3RydWN0aW9uIHtcbiAgLyoqXG4gICAqIFB1YmxpYyBrZXlzIHRvIGluY2x1ZGUgaW4gdGhpcyB0cmFuc2FjdGlvblxuICAgKiBCb29sZWFuIHJlcHJlc2VudHMgd2hldGhlciB0aGlzIHB1YmtleSBuZWVkcyB0byBzaWduIHRoZSB0cmFuc2FjdGlvblxuICAgKi9cbiAga2V5czogQXJyYXk8QWNjb3VudE1ldGE+O1xuXG4gIC8qKlxuICAgKiBQcm9ncmFtIElkIHRvIGV4ZWN1dGVcbiAgICovXG4gIHByb2dyYW1JZDogUHVibGljS2V5O1xuXG4gIC8qKlxuICAgKiBQcm9ncmFtIGlucHV0XG4gICAqL1xuICBkYXRhOiBCdWZmZXIgPSBCdWZmZXIuYWxsb2MoMCk7XG5cbiAgY29uc3RydWN0b3Iob3B0czogVHJhbnNhY3Rpb25JbnN0cnVjdGlvbkN0b3JGaWVsZHMpIHtcbiAgICB0aGlzLnByb2dyYW1JZCA9IG9wdHMucHJvZ3JhbUlkO1xuICAgIHRoaXMua2V5cyA9IG9wdHMua2V5cztcbiAgICBpZiAob3B0cy5kYXRhKSB7XG4gICAgICB0aGlzLmRhdGEgPSBvcHRzLmRhdGE7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgdG9KU09OKCk6IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb25KU09OIHtcbiAgICByZXR1cm4ge1xuICAgICAga2V5czogdGhpcy5rZXlzLm1hcCgoe3B1YmtleSwgaXNTaWduZXIsIGlzV3JpdGFibGV9KSA9PiAoe1xuICAgICAgICBwdWJrZXk6IHB1YmtleS50b0pTT04oKSxcbiAgICAgICAgaXNTaWduZXIsXG4gICAgICAgIGlzV3JpdGFibGUsXG4gICAgICB9KSksXG4gICAgICBwcm9ncmFtSWQ6IHRoaXMucHJvZ3JhbUlkLnRvSlNPTigpLFxuICAgICAgZGF0YTogWy4uLnRoaXMuZGF0YV0sXG4gICAgfTtcbiAgfVxufVxuXG4vKipcbiAqIFBhaXIgb2Ygc2lnbmF0dXJlIGFuZCBjb3JyZXNwb25kaW5nIHB1YmxpYyBrZXlcbiAqL1xuZXhwb3J0IHR5cGUgU2lnbmF0dXJlUHVia2V5UGFpciA9IHtcbiAgc2lnbmF0dXJlOiBCdWZmZXIgfCBudWxsO1xuICBwdWJsaWNLZXk6IFB1YmxpY0tleTtcbn07XG5cbi8qKlxuICogTGlzdCBvZiBUcmFuc2FjdGlvbiBvYmplY3QgZmllbGRzIHRoYXQgbWF5IGJlIGluaXRpYWxpemVkIGF0IGNvbnN0cnVjdGlvblxuICovXG5leHBvcnQgdHlwZSBUcmFuc2FjdGlvbkN0b3JGaWVsZHNfREVQUkVDQVRFRCA9IHtcbiAgLyoqIE9wdGlvbmFsIG5vbmNlIGluZm9ybWF0aW9uIHVzZWQgZm9yIG9mZmxpbmUgbm9uY2UnZCB0cmFuc2FjdGlvbnMgKi9cbiAgbm9uY2VJbmZvPzogTm9uY2VJbmZvcm1hdGlvbiB8IG51bGw7XG4gIC8qKiBUaGUgdHJhbnNhY3Rpb24gZmVlIHBheWVyICovXG4gIGZlZVBheWVyPzogUHVibGljS2V5IHwgbnVsbDtcbiAgLyoqIE9uZSBvciBtb3JlIHNpZ25hdHVyZXMgKi9cbiAgc2lnbmF0dXJlcz86IEFycmF5PFNpZ25hdHVyZVB1YmtleVBhaXI+O1xuICAvKiogQSByZWNlbnQgYmxvY2toYXNoICovXG4gIHJlY2VudEJsb2NraGFzaD86IEJsb2NraGFzaDtcbn07XG5cbi8vIEZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5OyBhbiB1bmZvcnR1bmF0ZSBjb25zZXF1ZW5jZSBvZiBiZWluZ1xuLy8gZm9yY2VkIHRvIG92ZXItZXhwb3J0IHR5cGVzIGJ5IHRoZSBkb2N1bWVudGF0aW9uIGdlbmVyYXRvci5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc29sYW5hLWxhYnMvc29sYW5hL3B1bGwvMjU4MjBcbmV4cG9ydCB0eXBlIFRyYW5zYWN0aW9uQ3RvckZpZWxkcyA9IFRyYW5zYWN0aW9uQ3RvckZpZWxkc19ERVBSRUNBVEVEO1xuXG4vKipcbiAqIEJsb2NraGFzaC1iYXNlZCB0cmFuc2FjdGlvbnMgaGF2ZSBhIGxpZmV0aW1lIHRoYXQgYXJlIGRlZmluZWQgYnlcbiAqIHRoZSBibG9ja2hhc2ggdGhleSBpbmNsdWRlLiBBbnkgdHJhbnNhY3Rpb24gd2hvc2UgYmxvY2toYXNoIGlzXG4gKiB0b28gb2xkIHdpbGwgYmUgcmVqZWN0ZWQuXG4gKi9cbmV4cG9ydCB0eXBlIFRyYW5zYWN0aW9uQmxvY2toYXNoQ3RvciA9IHtcbiAgLyoqIFRoZSB0cmFuc2FjdGlvbiBmZWUgcGF5ZXIgKi9cbiAgZmVlUGF5ZXI/OiBQdWJsaWNLZXkgfCBudWxsO1xuICAvKiogT25lIG9yIG1vcmUgc2lnbmF0dXJlcyAqL1xuICBzaWduYXR1cmVzPzogQXJyYXk8U2lnbmF0dXJlUHVia2V5UGFpcj47XG4gIC8qKiBBIHJlY2VudCBibG9ja2hhc2ggKi9cbiAgYmxvY2toYXNoOiBCbG9ja2hhc2g7XG4gIC8qKiB0aGUgbGFzdCBibG9jayBjaGFpbiBjYW4gYWR2YW5jZSB0byBiZWZvcmUgdHggaXMgZGVjbGFyZWQgZXhwaXJlZCAqL1xuICBsYXN0VmFsaWRCbG9ja0hlaWdodDogbnVtYmVyO1xufTtcblxuLyoqXG4gKiBVc2UgdGhlc2Ugb3B0aW9ucyB0byBjb25zdHJ1Y3QgYSBkdXJhYmxlIG5vbmNlIHRyYW5zYWN0aW9uLlxuICovXG5leHBvcnQgdHlwZSBUcmFuc2FjdGlvbk5vbmNlQ3RvciA9IHtcbiAgLyoqIFRoZSB0cmFuc2FjdGlvbiBmZWUgcGF5ZXIgKi9cbiAgZmVlUGF5ZXI/OiBQdWJsaWNLZXkgfCBudWxsO1xuICBtaW5Db250ZXh0U2xvdDogbnVtYmVyO1xuICBub25jZUluZm86IE5vbmNlSW5mb3JtYXRpb247XG4gIC8qKiBPbmUgb3IgbW9yZSBzaWduYXR1cmVzICovXG4gIHNpZ25hdHVyZXM/OiBBcnJheTxTaWduYXR1cmVQdWJrZXlQYWlyPjtcbn07XG5cbi8qKlxuICogTm9uY2UgaW5mb3JtYXRpb24gdG8gYmUgdXNlZCB0byBidWlsZCBhbiBvZmZsaW5lIFRyYW5zYWN0aW9uLlxuICovXG5leHBvcnQgdHlwZSBOb25jZUluZm9ybWF0aW9uID0ge1xuICAvKiogVGhlIGN1cnJlbnQgYmxvY2toYXNoIHN0b3JlZCBpbiB0aGUgbm9uY2UgKi9cbiAgbm9uY2U6IEJsb2NraGFzaDtcbiAgLyoqIEFkdmFuY2VOb25jZUFjY291bnQgSW5zdHJ1Y3Rpb24gKi9cbiAgbm9uY2VJbnN0cnVjdGlvbjogVHJhbnNhY3Rpb25JbnN0cnVjdGlvbjtcbn07XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb25KU09OIHtcbiAgcmVjZW50QmxvY2toYXNoOiBzdHJpbmcgfCBudWxsO1xuICBmZWVQYXllcjogc3RyaW5nIHwgbnVsbDtcbiAgbm9uY2VJbmZvOiB7XG4gICAgbm9uY2U6IHN0cmluZztcbiAgICBub25jZUluc3RydWN0aW9uOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uSlNPTjtcbiAgfSB8IG51bGw7XG4gIGluc3RydWN0aW9uczogVHJhbnNhY3Rpb25JbnN0cnVjdGlvbkpTT05bXTtcbiAgc2lnbmVyczogc3RyaW5nW107XG59XG5cbi8qKlxuICogVHJhbnNhY3Rpb24gY2xhc3NcbiAqL1xuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uIHtcbiAgLyoqXG4gICAqIFNpZ25hdHVyZXMgZm9yIHRoZSB0cmFuc2FjdGlvbi4gIFR5cGljYWxseSBjcmVhdGVkIGJ5IGludm9raW5nIHRoZVxuICAgKiBgc2lnbigpYCBtZXRob2RcbiAgICovXG4gIHNpZ25hdHVyZXM6IEFycmF5PFNpZ25hdHVyZVB1YmtleVBhaXI+ID0gW107XG5cbiAgLyoqXG4gICAqIFRoZSBmaXJzdCAocGF5ZXIpIFRyYW5zYWN0aW9uIHNpZ25hdHVyZVxuICAgKlxuICAgKiBAcmV0dXJucyB7QnVmZmVyIHwgbnVsbH0gQnVmZmVyIG9mIHBheWVyJ3Mgc2lnbmF0dXJlXG4gICAqL1xuICBnZXQgc2lnbmF0dXJlKCk6IEJ1ZmZlciB8IG51bGwge1xuICAgIGlmICh0aGlzLnNpZ25hdHVyZXMubGVuZ3RoID4gMCkge1xuICAgICAgcmV0dXJuIHRoaXMuc2lnbmF0dXJlc1swXS5zaWduYXR1cmU7XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSB0cmFuc2FjdGlvbiBmZWUgcGF5ZXJcbiAgICovXG4gIGZlZVBheWVyPzogUHVibGljS2V5O1xuXG4gIC8qKlxuICAgKiBUaGUgaW5zdHJ1Y3Rpb25zIHRvIGF0b21pY2FsbHkgZXhlY3V0ZVxuICAgKi9cbiAgaW5zdHJ1Y3Rpb25zOiBBcnJheTxUcmFuc2FjdGlvbkluc3RydWN0aW9uPiA9IFtdO1xuXG4gIC8qKlxuICAgKiBBIHJlY2VudCB0cmFuc2FjdGlvbiBpZC4gTXVzdCBiZSBwb3B1bGF0ZWQgYnkgdGhlIGNhbGxlclxuICAgKi9cbiAgcmVjZW50QmxvY2toYXNoPzogQmxvY2toYXNoO1xuXG4gIC8qKlxuICAgKiB0aGUgbGFzdCBibG9jayBjaGFpbiBjYW4gYWR2YW5jZSB0byBiZWZvcmUgdHggaXMgZGVjbGFyZWQgZXhwaXJlZFxuICAgKiAqL1xuICBsYXN0VmFsaWRCbG9ja0hlaWdodD86IG51bWJlcjtcblxuICAvKipcbiAgICogT3B0aW9uYWwgTm9uY2UgaW5mb3JtYXRpb24uIElmIHBvcHVsYXRlZCwgdHJhbnNhY3Rpb24gd2lsbCB1c2UgYSBkdXJhYmxlXG4gICAqIE5vbmNlIGhhc2ggaW5zdGVhZCBvZiBhIHJlY2VudEJsb2NraGFzaC4gTXVzdCBiZSBwb3B1bGF0ZWQgYnkgdGhlIGNhbGxlclxuICAgKi9cbiAgbm9uY2VJbmZvPzogTm9uY2VJbmZvcm1hdGlvbjtcblxuICAvKipcbiAgICogSWYgdGhpcyBpcyBhIG5vbmNlIHRyYW5zYWN0aW9uIHRoaXMgcmVwcmVzZW50cyB0aGUgbWluaW11bSBzbG90IGZyb20gd2hpY2hcbiAgICogdG8gZXZhbHVhdGUgaWYgdGhlIG5vbmNlIGhhcyBhZHZhbmNlZCB3aGVuIGF0dGVtcHRpbmcgdG8gY29uZmlybSB0aGVcbiAgICogdHJhbnNhY3Rpb24uIFRoaXMgcHJvdGVjdHMgYWdhaW5zdCBhIGNhc2Ugd2hlcmUgdGhlIHRyYW5zYWN0aW9uIGNvbmZpcm1hdGlvblxuICAgKiBsb2dpYyBsb2FkcyB0aGUgbm9uY2UgYWNjb3VudCBmcm9tIGFuIG9sZCBzbG90IGFuZCBhc3N1bWVzIHRoZSBtaXNtYXRjaCBpblxuICAgKiBub25jZSB2YWx1ZSBpbXBsaWVzIHRoYXQgdGhlIG5vbmNlIGhhcyBiZWVuIGFkdmFuY2VkLlxuICAgKi9cbiAgbWluTm9uY2VDb250ZXh0U2xvdD86IG51bWJlcjtcblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBfbWVzc2FnZT86IE1lc3NhZ2U7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgX2pzb24/OiBUcmFuc2FjdGlvbkpTT047XG5cbiAgLy8gQ29uc3RydWN0IGEgdHJhbnNhY3Rpb24gd2l0aCBhIGJsb2NraGFzaCBhbmQgbGFzdFZhbGlkQmxvY2tIZWlnaHRcbiAgY29uc3RydWN0b3Iob3B0cz86IFRyYW5zYWN0aW9uQmxvY2toYXNoQ3Rvcik7XG5cbiAgLy8gQ29uc3RydWN0IGEgdHJhbnNhY3Rpb24gdXNpbmcgYSBkdXJhYmxlIG5vbmNlXG4gIGNvbnN0cnVjdG9yKG9wdHM/OiBUcmFuc2FjdGlvbk5vbmNlQ3Rvcik7XG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIGBUcmFuc2FjdGlvbkN0b3JGaWVsZHNgIGhhcyBiZWVuIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiBhIGZ1dHVyZSB2ZXJzaW9uLlxuICAgKiBQbGVhc2Ugc3VwcGx5IGEgYFRyYW5zYWN0aW9uQmxvY2toYXNoQ3RvcmAgaW5zdGVhZC5cbiAgICovXG4gIGNvbnN0cnVjdG9yKG9wdHM/OiBUcmFuc2FjdGlvbkN0b3JGaWVsZHNfREVQUkVDQVRFRCk7XG5cbiAgLyoqXG4gICAqIENvbnN0cnVjdCBhbiBlbXB0eSBUcmFuc2FjdGlvblxuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgb3B0cz86XG4gICAgICB8IFRyYW5zYWN0aW9uQmxvY2toYXNoQ3RvclxuICAgICAgfCBUcmFuc2FjdGlvbk5vbmNlQ3RvclxuICAgICAgfCBUcmFuc2FjdGlvbkN0b3JGaWVsZHNfREVQUkVDQVRFRCxcbiAgKSB7XG4gICAgaWYgKCFvcHRzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmIChvcHRzLmZlZVBheWVyKSB7XG4gICAgICB0aGlzLmZlZVBheWVyID0gb3B0cy5mZWVQYXllcjtcbiAgICB9XG4gICAgaWYgKG9wdHMuc2lnbmF0dXJlcykge1xuICAgICAgdGhpcy5zaWduYXR1cmVzID0gb3B0cy5zaWduYXR1cmVzO1xuICAgIH1cbiAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9wdHMsICdub25jZUluZm8nKSkge1xuICAgICAgY29uc3Qge21pbkNvbnRleHRTbG90LCBub25jZUluZm99ID0gb3B0cyBhcyBUcmFuc2FjdGlvbk5vbmNlQ3RvcjtcbiAgICAgIHRoaXMubWluTm9uY2VDb250ZXh0U2xvdCA9IG1pbkNvbnRleHRTbG90O1xuICAgICAgdGhpcy5ub25jZUluZm8gPSBub25jZUluZm87XG4gICAgfSBlbHNlIGlmIChcbiAgICAgIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvcHRzLCAnbGFzdFZhbGlkQmxvY2tIZWlnaHQnKVxuICAgICkge1xuICAgICAgY29uc3Qge2Jsb2NraGFzaCwgbGFzdFZhbGlkQmxvY2tIZWlnaHR9ID1cbiAgICAgICAgb3B0cyBhcyBUcmFuc2FjdGlvbkJsb2NraGFzaEN0b3I7XG4gICAgICB0aGlzLnJlY2VudEJsb2NraGFzaCA9IGJsb2NraGFzaDtcbiAgICAgIHRoaXMubGFzdFZhbGlkQmxvY2tIZWlnaHQgPSBsYXN0VmFsaWRCbG9ja0hlaWdodDtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3Qge3JlY2VudEJsb2NraGFzaCwgbm9uY2VJbmZvfSA9XG4gICAgICAgIG9wdHMgYXMgVHJhbnNhY3Rpb25DdG9yRmllbGRzX0RFUFJFQ0FURUQ7XG4gICAgICBpZiAobm9uY2VJbmZvKSB7XG4gICAgICAgIHRoaXMubm9uY2VJbmZvID0gbm9uY2VJbmZvO1xuICAgICAgfVxuICAgICAgdGhpcy5yZWNlbnRCbG9ja2hhc2ggPSByZWNlbnRCbG9ja2hhc2g7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgdG9KU09OKCk6IFRyYW5zYWN0aW9uSlNPTiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHJlY2VudEJsb2NraGFzaDogdGhpcy5yZWNlbnRCbG9ja2hhc2ggfHwgbnVsbCxcbiAgICAgIGZlZVBheWVyOiB0aGlzLmZlZVBheWVyID8gdGhpcy5mZWVQYXllci50b0pTT04oKSA6IG51bGwsXG4gICAgICBub25jZUluZm86IHRoaXMubm9uY2VJbmZvXG4gICAgICAgID8ge1xuICAgICAgICAgICAgbm9uY2U6IHRoaXMubm9uY2VJbmZvLm5vbmNlLFxuICAgICAgICAgICAgbm9uY2VJbnN0cnVjdGlvbjogdGhpcy5ub25jZUluZm8ubm9uY2VJbnN0cnVjdGlvbi50b0pTT04oKSxcbiAgICAgICAgICB9XG4gICAgICAgIDogbnVsbCxcbiAgICAgIGluc3RydWN0aW9uczogdGhpcy5pbnN0cnVjdGlvbnMubWFwKGluc3RydWN0aW9uID0+IGluc3RydWN0aW9uLnRvSlNPTigpKSxcbiAgICAgIHNpZ25lcnM6IHRoaXMuc2lnbmF0dXJlcy5tYXAoKHtwdWJsaWNLZXl9KSA9PiB7XG4gICAgICAgIHJldHVybiBwdWJsaWNLZXkudG9KU09OKCk7XG4gICAgICB9KSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBvbmUgb3IgbW9yZSBpbnN0cnVjdGlvbnMgdG8gdGhpcyBUcmFuc2FjdGlvblxuICAgKlxuICAgKiBAcGFyYW0ge0FycmF5PCBUcmFuc2FjdGlvbiB8IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24gfCBUcmFuc2FjdGlvbkluc3RydWN0aW9uQ3RvckZpZWxkcyA+fSBpdGVtcyAtIEluc3RydWN0aW9ucyB0byBhZGQgdG8gdGhlIFRyYW5zYWN0aW9uXG4gICAqL1xuICBhZGQoXG4gICAgLi4uaXRlbXM6IEFycmF5PFxuICAgICAgVHJhbnNhY3Rpb24gfCBUcmFuc2FjdGlvbkluc3RydWN0aW9uIHwgVHJhbnNhY3Rpb25JbnN0cnVjdGlvbkN0b3JGaWVsZHNcbiAgICA+XG4gICk6IFRyYW5zYWN0aW9uIHtcbiAgICBpZiAoaXRlbXMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIGluc3RydWN0aW9ucycpO1xuICAgIH1cblxuICAgIGl0ZW1zLmZvckVhY2goKGl0ZW06IGFueSkgPT4ge1xuICAgICAgaWYgKCdpbnN0cnVjdGlvbnMnIGluIGl0ZW0pIHtcbiAgICAgICAgdGhpcy5pbnN0cnVjdGlvbnMgPSB0aGlzLmluc3RydWN0aW9ucy5jb25jYXQoaXRlbS5pbnN0cnVjdGlvbnMpO1xuICAgICAgfSBlbHNlIGlmICgnZGF0YScgaW4gaXRlbSAmJiAncHJvZ3JhbUlkJyBpbiBpdGVtICYmICdrZXlzJyBpbiBpdGVtKSB7XG4gICAgICAgIHRoaXMuaW5zdHJ1Y3Rpb25zLnB1c2goaXRlbSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmluc3RydWN0aW9ucy5wdXNoKG5ldyBUcmFuc2FjdGlvbkluc3RydWN0aW9uKGl0ZW0pKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBDb21waWxlIHRyYW5zYWN0aW9uIGRhdGFcbiAgICovXG4gIGNvbXBpbGVNZXNzYWdlKCk6IE1lc3NhZ2Uge1xuICAgIGlmIChcbiAgICAgIHRoaXMuX21lc3NhZ2UgJiZcbiAgICAgIEpTT04uc3RyaW5naWZ5KHRoaXMudG9KU09OKCkpID09PSBKU09OLnN0cmluZ2lmeSh0aGlzLl9qc29uKVxuICAgICkge1xuICAgICAgcmV0dXJuIHRoaXMuX21lc3NhZ2U7XG4gICAgfVxuXG4gICAgbGV0IHJlY2VudEJsb2NraGFzaDtcbiAgICBsZXQgaW5zdHJ1Y3Rpb25zOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uW107XG4gICAgaWYgKHRoaXMubm9uY2VJbmZvKSB7XG4gICAgICByZWNlbnRCbG9ja2hhc2ggPSB0aGlzLm5vbmNlSW5mby5ub25jZTtcbiAgICAgIGlmICh0aGlzLmluc3RydWN0aW9uc1swXSAhPSB0aGlzLm5vbmNlSW5mby5ub25jZUluc3RydWN0aW9uKSB7XG4gICAgICAgIGluc3RydWN0aW9ucyA9IFt0aGlzLm5vbmNlSW5mby5ub25jZUluc3RydWN0aW9uLCAuLi50aGlzLmluc3RydWN0aW9uc107XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpbnN0cnVjdGlvbnMgPSB0aGlzLmluc3RydWN0aW9ucztcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgcmVjZW50QmxvY2toYXNoID0gdGhpcy5yZWNlbnRCbG9ja2hhc2g7XG4gICAgICBpbnN0cnVjdGlvbnMgPSB0aGlzLmluc3RydWN0aW9ucztcbiAgICB9XG4gICAgaWYgKCFyZWNlbnRCbG9ja2hhc2gpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVHJhbnNhY3Rpb24gcmVjZW50QmxvY2toYXNoIHJlcXVpcmVkJyk7XG4gICAgfVxuXG4gICAgaWYgKGluc3RydWN0aW9ucy5sZW5ndGggPCAxKSB7XG4gICAgICBjb25zb2xlLndhcm4oJ05vIGluc3RydWN0aW9ucyBwcm92aWRlZCcpO1xuICAgIH1cblxuICAgIGxldCBmZWVQYXllcjogUHVibGljS2V5O1xuICAgIGlmICh0aGlzLmZlZVBheWVyKSB7XG4gICAgICBmZWVQYXllciA9IHRoaXMuZmVlUGF5ZXI7XG4gICAgfSBlbHNlIGlmICh0aGlzLnNpZ25hdHVyZXMubGVuZ3RoID4gMCAmJiB0aGlzLnNpZ25hdHVyZXNbMF0ucHVibGljS2V5KSB7XG4gICAgICAvLyBVc2UgaW1wbGljaXQgZmVlIHBheWVyXG4gICAgICBmZWVQYXllciA9IHRoaXMuc2lnbmF0dXJlc1swXS5wdWJsaWNLZXk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVHJhbnNhY3Rpb24gZmVlIHBheWVyIHJlcXVpcmVkJyk7XG4gICAgfVxuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbnN0cnVjdGlvbnMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGlmIChpbnN0cnVjdGlvbnNbaV0ucHJvZ3JhbUlkID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgIGBUcmFuc2FjdGlvbiBpbnN0cnVjdGlvbiBpbmRleCAke2l9IGhhcyB1bmRlZmluZWQgcHJvZ3JhbSBpZGAsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgcHJvZ3JhbUlkczogc3RyaW5nW10gPSBbXTtcbiAgICBjb25zdCBhY2NvdW50TWV0YXM6IEFjY291bnRNZXRhW10gPSBbXTtcbiAgICBpbnN0cnVjdGlvbnMuZm9yRWFjaChpbnN0cnVjdGlvbiA9PiB7XG4gICAgICBpbnN0cnVjdGlvbi5rZXlzLmZvckVhY2goYWNjb3VudE1ldGEgPT4ge1xuICAgICAgICBhY2NvdW50TWV0YXMucHVzaCh7Li4uYWNjb3VudE1ldGF9KTtcbiAgICAgIH0pO1xuXG4gICAgICBjb25zdCBwcm9ncmFtSWQgPSBpbnN0cnVjdGlvbi5wcm9ncmFtSWQudG9TdHJpbmcoKTtcbiAgICAgIGlmICghcHJvZ3JhbUlkcy5pbmNsdWRlcyhwcm9ncmFtSWQpKSB7XG4gICAgICAgIHByb2dyYW1JZHMucHVzaChwcm9ncmFtSWQpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgLy8gQXBwZW5kIHByb2dyYW1JRCBhY2NvdW50IG1ldGFzXG4gICAgcHJvZ3JhbUlkcy5mb3JFYWNoKHByb2dyYW1JZCA9PiB7XG4gICAgICBhY2NvdW50TWV0YXMucHVzaCh7XG4gICAgICAgIHB1YmtleTogbmV3IFB1YmxpY0tleShwcm9ncmFtSWQpLFxuICAgICAgICBpc1NpZ25lcjogZmFsc2UsXG4gICAgICAgIGlzV3JpdGFibGU6IGZhbHNlLFxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICAvLyBDdWxsIGR1cGxpY2F0ZSBhY2NvdW50IG1ldGFzXG4gICAgY29uc3QgdW5pcXVlTWV0YXM6IEFjY291bnRNZXRhW10gPSBbXTtcbiAgICBhY2NvdW50TWV0YXMuZm9yRWFjaChhY2NvdW50TWV0YSA9PiB7XG4gICAgICBjb25zdCBwdWJrZXlTdHJpbmcgPSBhY2NvdW50TWV0YS5wdWJrZXkudG9TdHJpbmcoKTtcbiAgICAgIGNvbnN0IHVuaXF1ZUluZGV4ID0gdW5pcXVlTWV0YXMuZmluZEluZGV4KHggPT4ge1xuICAgICAgICByZXR1cm4geC5wdWJrZXkudG9TdHJpbmcoKSA9PT0gcHVia2V5U3RyaW5nO1xuICAgICAgfSk7XG4gICAgICBpZiAodW5pcXVlSW5kZXggPiAtMSkge1xuICAgICAgICB1bmlxdWVNZXRhc1t1bmlxdWVJbmRleF0uaXNXcml0YWJsZSA9XG4gICAgICAgICAgdW5pcXVlTWV0YXNbdW5pcXVlSW5kZXhdLmlzV3JpdGFibGUgfHwgYWNjb3VudE1ldGEuaXNXcml0YWJsZTtcbiAgICAgICAgdW5pcXVlTWV0YXNbdW5pcXVlSW5kZXhdLmlzU2lnbmVyID1cbiAgICAgICAgICB1bmlxdWVNZXRhc1t1bmlxdWVJbmRleF0uaXNTaWduZXIgfHwgYWNjb3VudE1ldGEuaXNTaWduZXI7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB1bmlxdWVNZXRhcy5wdXNoKGFjY291bnRNZXRhKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIC8vIFNvcnQuIFByaW9yaXRpemluZyBmaXJzdCBieSBzaWduZXIsIHRoZW4gYnkgd3JpdGFibGVcbiAgICB1bmlxdWVNZXRhcy5zb3J0KGZ1bmN0aW9uICh4LCB5KSB7XG4gICAgICBpZiAoeC5pc1NpZ25lciAhPT0geS5pc1NpZ25lcikge1xuICAgICAgICAvLyBTaWduZXJzIGFsd2F5cyBjb21lIGJlZm9yZSBub24tc2lnbmVyc1xuICAgICAgICByZXR1cm4geC5pc1NpZ25lciA/IC0xIDogMTtcbiAgICAgIH1cbiAgICAgIGlmICh4LmlzV3JpdGFibGUgIT09IHkuaXNXcml0YWJsZSkge1xuICAgICAgICAvLyBXcml0YWJsZSBhY2NvdW50cyBhbHdheXMgY29tZSBiZWZvcmUgcmVhZC1vbmx5IGFjY291bnRzXG4gICAgICAgIHJldHVybiB4LmlzV3JpdGFibGUgPyAtMSA6IDE7XG4gICAgICB9XG4gICAgICAvLyBPdGhlcndpc2UsIHNvcnQgYnkgcHVia2V5LCBzdHJpbmd3aXNlLlxuICAgICAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICAgICAgbG9jYWxlTWF0Y2hlcjogJ2Jlc3QgZml0JyxcbiAgICAgICAgdXNhZ2U6ICdzb3J0JyxcbiAgICAgICAgc2Vuc2l0aXZpdHk6ICd2YXJpYW50JyxcbiAgICAgICAgaWdub3JlUHVuY3R1YXRpb246IGZhbHNlLFxuICAgICAgICBudW1lcmljOiBmYWxzZSxcbiAgICAgICAgY2FzZUZpcnN0OiAnbG93ZXInLFxuICAgICAgfSBhcyBJbnRsLkNvbGxhdG9yT3B0aW9ucztcbiAgICAgIHJldHVybiB4LnB1YmtleVxuICAgICAgICAudG9CYXNlNTgoKVxuICAgICAgICAubG9jYWxlQ29tcGFyZSh5LnB1YmtleS50b0Jhc2U1OCgpLCAnZW4nLCBvcHRpb25zKTtcbiAgICB9KTtcblxuICAgIC8vIE1vdmUgZmVlIHBheWVyIHRvIHRoZSBmcm9udFxuICAgIGNvbnN0IGZlZVBheWVySW5kZXggPSB1bmlxdWVNZXRhcy5maW5kSW5kZXgoeCA9PiB7XG4gICAgICByZXR1cm4geC5wdWJrZXkuZXF1YWxzKGZlZVBheWVyKTtcbiAgICB9KTtcbiAgICBpZiAoZmVlUGF5ZXJJbmRleCA+IC0xKSB7XG4gICAgICBjb25zdCBbcGF5ZXJNZXRhXSA9IHVuaXF1ZU1ldGFzLnNwbGljZShmZWVQYXllckluZGV4LCAxKTtcbiAgICAgIHBheWVyTWV0YS5pc1NpZ25lciA9IHRydWU7XG4gICAgICBwYXllck1ldGEuaXNXcml0YWJsZSA9IHRydWU7XG4gICAgICB1bmlxdWVNZXRhcy51bnNoaWZ0KHBheWVyTWV0YSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHVuaXF1ZU1ldGFzLnVuc2hpZnQoe1xuICAgICAgICBwdWJrZXk6IGZlZVBheWVyLFxuICAgICAgICBpc1NpZ25lcjogdHJ1ZSxcbiAgICAgICAgaXNXcml0YWJsZTogdHJ1ZSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIC8vIERpc2FsbG93IHVua25vd24gc2lnbmVyc1xuICAgIGZvciAoY29uc3Qgc2lnbmF0dXJlIG9mIHRoaXMuc2lnbmF0dXJlcykge1xuICAgICAgY29uc3QgdW5pcXVlSW5kZXggPSB1bmlxdWVNZXRhcy5maW5kSW5kZXgoeCA9PiB7XG4gICAgICAgIHJldHVybiB4LnB1YmtleS5lcXVhbHMoc2lnbmF0dXJlLnB1YmxpY0tleSk7XG4gICAgICB9KTtcbiAgICAgIGlmICh1bmlxdWVJbmRleCA+IC0xKSB7XG4gICAgICAgIGlmICghdW5pcXVlTWV0YXNbdW5pcXVlSW5kZXhdLmlzU2lnbmVyKSB7XG4gICAgICAgICAgdW5pcXVlTWV0YXNbdW5pcXVlSW5kZXhdLmlzU2lnbmVyID0gdHJ1ZTtcbiAgICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgICAnVHJhbnNhY3Rpb24gcmVmZXJlbmNlcyBhIHNpZ25hdHVyZSB0aGF0IGlzIHVubmVjZXNzYXJ5LCAnICtcbiAgICAgICAgICAgICAgJ29ubHkgdGhlIGZlZSBwYXllciBhbmQgaW5zdHJ1Y3Rpb24gc2lnbmVyIGFjY291bnRzIHNob3VsZCBzaWduIGEgdHJhbnNhY3Rpb24uICcgK1xuICAgICAgICAgICAgICAnVGhpcyBiZWhhdmlvciBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIHRocm93IGFuIGVycm9yIGluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24gcmVsZWFzZS4nLFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgdW5rbm93biBzaWduZXI6ICR7c2lnbmF0dXJlLnB1YmxpY0tleS50b1N0cmluZygpfWApO1xuICAgICAgfVxuICAgIH1cblxuICAgIGxldCBudW1SZXF1aXJlZFNpZ25hdHVyZXMgPSAwO1xuICAgIGxldCBudW1SZWFkb25seVNpZ25lZEFjY291bnRzID0gMDtcbiAgICBsZXQgbnVtUmVhZG9ubHlVbnNpZ25lZEFjY291bnRzID0gMDtcblxuICAgIC8vIFNwbGl0IG91dCBzaWduaW5nIGZyb20gbm9uLXNpZ25pbmcga2V5cyBhbmQgY291bnQgaGVhZGVyIHZhbHVlc1xuICAgIGNvbnN0IHNpZ25lZEtleXM6IHN0cmluZ1tdID0gW107XG4gICAgY29uc3QgdW5zaWduZWRLZXlzOiBzdHJpbmdbXSA9IFtdO1xuICAgIHVuaXF1ZU1ldGFzLmZvckVhY2goKHtwdWJrZXksIGlzU2lnbmVyLCBpc1dyaXRhYmxlfSkgPT4ge1xuICAgICAgaWYgKGlzU2lnbmVyKSB7XG4gICAgICAgIHNpZ25lZEtleXMucHVzaChwdWJrZXkudG9TdHJpbmcoKSk7XG4gICAgICAgIG51bVJlcXVpcmVkU2lnbmF0dXJlcyArPSAxO1xuICAgICAgICBpZiAoIWlzV3JpdGFibGUpIHtcbiAgICAgICAgICBudW1SZWFkb25seVNpZ25lZEFjY291bnRzICs9IDE7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHVuc2lnbmVkS2V5cy5wdXNoKHB1YmtleS50b1N0cmluZygpKTtcbiAgICAgICAgaWYgKCFpc1dyaXRhYmxlKSB7XG4gICAgICAgICAgbnVtUmVhZG9ubHlVbnNpZ25lZEFjY291bnRzICs9IDE7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGNvbnN0IGFjY291bnRLZXlzID0gc2lnbmVkS2V5cy5jb25jYXQodW5zaWduZWRLZXlzKTtcbiAgICBjb25zdCBjb21waWxlZEluc3RydWN0aW9uczogQ29tcGlsZWRJbnN0cnVjdGlvbltdID0gaW5zdHJ1Y3Rpb25zLm1hcChcbiAgICAgIGluc3RydWN0aW9uID0+IHtcbiAgICAgICAgY29uc3Qge2RhdGEsIHByb2dyYW1JZH0gPSBpbnN0cnVjdGlvbjtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBwcm9ncmFtSWRJbmRleDogYWNjb3VudEtleXMuaW5kZXhPZihwcm9ncmFtSWQudG9TdHJpbmcoKSksXG4gICAgICAgICAgYWNjb3VudHM6IGluc3RydWN0aW9uLmtleXMubWFwKG1ldGEgPT5cbiAgICAgICAgICAgIGFjY291bnRLZXlzLmluZGV4T2YobWV0YS5wdWJrZXkudG9TdHJpbmcoKSksXG4gICAgICAgICAgKSxcbiAgICAgICAgICBkYXRhOiBiczU4LmVuY29kZShkYXRhKSxcbiAgICAgICAgfTtcbiAgICAgIH0sXG4gICAgKTtcblxuICAgIGNvbXBpbGVkSW5zdHJ1Y3Rpb25zLmZvckVhY2goaW5zdHJ1Y3Rpb24gPT4ge1xuICAgICAgaW52YXJpYW50KGluc3RydWN0aW9uLnByb2dyYW1JZEluZGV4ID49IDApO1xuICAgICAgaW5zdHJ1Y3Rpb24uYWNjb3VudHMuZm9yRWFjaChrZXlJbmRleCA9PiBpbnZhcmlhbnQoa2V5SW5kZXggPj0gMCkpO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIG5ldyBNZXNzYWdlKHtcbiAgICAgIGhlYWRlcjoge1xuICAgICAgICBudW1SZXF1aXJlZFNpZ25hdHVyZXMsXG4gICAgICAgIG51bVJlYWRvbmx5U2lnbmVkQWNjb3VudHMsXG4gICAgICAgIG51bVJlYWRvbmx5VW5zaWduZWRBY2NvdW50cyxcbiAgICAgIH0sXG4gICAgICBhY2NvdW50S2V5cyxcbiAgICAgIHJlY2VudEJsb2NraGFzaCxcbiAgICAgIGluc3RydWN0aW9uczogY29tcGlsZWRJbnN0cnVjdGlvbnMsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBfY29tcGlsZSgpOiBNZXNzYWdlIHtcbiAgICBjb25zdCBtZXNzYWdlID0gdGhpcy5jb21waWxlTWVzc2FnZSgpO1xuICAgIGNvbnN0IHNpZ25lZEtleXMgPSBtZXNzYWdlLmFjY291bnRLZXlzLnNsaWNlKFxuICAgICAgMCxcbiAgICAgIG1lc3NhZ2UuaGVhZGVyLm51bVJlcXVpcmVkU2lnbmF0dXJlcyxcbiAgICApO1xuXG4gICAgaWYgKHRoaXMuc2lnbmF0dXJlcy5sZW5ndGggPT09IHNpZ25lZEtleXMubGVuZ3RoKSB7XG4gICAgICBjb25zdCB2YWxpZCA9IHRoaXMuc2lnbmF0dXJlcy5ldmVyeSgocGFpciwgaW5kZXgpID0+IHtcbiAgICAgICAgcmV0dXJuIHNpZ25lZEtleXNbaW5kZXhdLmVxdWFscyhwYWlyLnB1YmxpY0tleSk7XG4gICAgICB9KTtcblxuICAgICAgaWYgKHZhbGlkKSByZXR1cm4gbWVzc2FnZTtcbiAgICB9XG5cbiAgICB0aGlzLnNpZ25hdHVyZXMgPSBzaWduZWRLZXlzLm1hcChwdWJsaWNLZXkgPT4gKHtcbiAgICAgIHNpZ25hdHVyZTogbnVsbCxcbiAgICAgIHB1YmxpY0tleSxcbiAgICB9KSk7XG5cbiAgICByZXR1cm4gbWVzc2FnZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYSBidWZmZXIgb2YgdGhlIFRyYW5zYWN0aW9uIGRhdGEgdGhhdCBuZWVkIHRvIGJlIGNvdmVyZWQgYnkgc2lnbmF0dXJlc1xuICAgKi9cbiAgc2VyaWFsaXplTWVzc2FnZSgpOiBCdWZmZXIge1xuICAgIHJldHVybiB0aGlzLl9jb21waWxlKCkuc2VyaWFsaXplKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSBlc3RpbWF0ZWQgZmVlIGFzc29jaWF0ZWQgd2l0aCBhIHRyYW5zYWN0aW9uXG4gICAqXG4gICAqIEBwYXJhbSB7Q29ubmVjdGlvbn0gY29ubmVjdGlvbiBDb25uZWN0aW9uIHRvIFJQQyBFbmRwb2ludC5cbiAgICpcbiAgICogQHJldHVybnMge1Byb21pc2U8bnVtYmVyIHwgbnVsbD59IFRoZSBlc3RpbWF0ZWQgZmVlIGZvciB0aGUgdHJhbnNhY3Rpb25cbiAgICovXG4gIGFzeW5jIGdldEVzdGltYXRlZEZlZShjb25uZWN0aW9uOiBDb25uZWN0aW9uKTogUHJvbWlzZTxudW1iZXIgfCBudWxsPiB7XG4gICAgcmV0dXJuIChhd2FpdCBjb25uZWN0aW9uLmdldEZlZUZvck1lc3NhZ2UodGhpcy5jb21waWxlTWVzc2FnZSgpKSkudmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogU3BlY2lmeSB0aGUgcHVibGljIGtleXMgd2hpY2ggd2lsbCBiZSB1c2VkIHRvIHNpZ24gdGhlIFRyYW5zYWN0aW9uLlxuICAgKiBUaGUgZmlyc3Qgc2lnbmVyIHdpbGwgYmUgdXNlZCBhcyB0aGUgdHJhbnNhY3Rpb24gZmVlIHBheWVyIGFjY291bnQuXG4gICAqXG4gICAqIFNpZ25hdHVyZXMgY2FuIGJlIGFkZGVkIHdpdGggZWl0aGVyIGBwYXJ0aWFsU2lnbmAgb3IgYGFkZFNpZ25hdHVyZWBcbiAgICpcbiAgICogQGRlcHJlY2F0ZWQgRGVwcmVjYXRlZCBzaW5jZSB2MC44NC4wLiBPbmx5IHRoZSBmZWUgcGF5ZXIgbmVlZHMgdG8gYmVcbiAgICogc3BlY2lmaWVkIGFuZCBpdCBjYW4gYmUgc2V0IGluIHRoZSBUcmFuc2FjdGlvbiBjb25zdHJ1Y3RvciBvciB3aXRoIHRoZVxuICAgKiBgZmVlUGF5ZXJgIHByb3BlcnR5LlxuICAgKi9cbiAgc2V0U2lnbmVycyguLi5zaWduZXJzOiBBcnJheTxQdWJsaWNLZXk+KSB7XG4gICAgaWYgKHNpZ25lcnMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIHNpZ25lcnMnKTtcbiAgICB9XG5cbiAgICBjb25zdCBzZWVuID0gbmV3IFNldCgpO1xuICAgIHRoaXMuc2lnbmF0dXJlcyA9IHNpZ25lcnNcbiAgICAgIC5maWx0ZXIocHVibGljS2V5ID0+IHtcbiAgICAgICAgY29uc3Qga2V5ID0gcHVibGljS2V5LnRvU3RyaW5nKCk7XG4gICAgICAgIGlmIChzZWVuLmhhcyhrZXkpKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHNlZW4uYWRkKGtleSk7XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgICAubWFwKHB1YmxpY0tleSA9PiAoe3NpZ25hdHVyZTogbnVsbCwgcHVibGljS2V5fSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNpZ24gdGhlIFRyYW5zYWN0aW9uIHdpdGggdGhlIHNwZWNpZmllZCBzaWduZXJzLiBNdWx0aXBsZSBzaWduYXR1cmVzIG1heVxuICAgKiBiZSBhcHBsaWVkIHRvIGEgVHJhbnNhY3Rpb24uIFRoZSBmaXJzdCBzaWduYXR1cmUgaXMgY29uc2lkZXJlZCBcInByaW1hcnlcIlxuICAgKiBhbmQgaXMgdXNlZCBpZGVudGlmeSBhbmQgY29uZmlybSB0cmFuc2FjdGlvbnMuXG4gICAqXG4gICAqIElmIHRoZSBUcmFuc2FjdGlvbiBgZmVlUGF5ZXJgIGlzIG5vdCBzZXQsIHRoZSBmaXJzdCBzaWduZXIgd2lsbCBiZSB1c2VkXG4gICAqIGFzIHRoZSB0cmFuc2FjdGlvbiBmZWUgcGF5ZXIgYWNjb3VudC5cbiAgICpcbiAgICogVHJhbnNhY3Rpb24gZmllbGRzIHNob3VsZCBub3QgYmUgbW9kaWZpZWQgYWZ0ZXIgdGhlIGZpcnN0IGNhbGwgdG8gYHNpZ25gLFxuICAgKiBhcyBkb2luZyBzbyBtYXkgaW52YWxpZGF0ZSB0aGUgc2lnbmF0dXJlIGFuZCBjYXVzZSB0aGUgVHJhbnNhY3Rpb24gdG8gYmVcbiAgICogcmVqZWN0ZWQuXG4gICAqXG4gICAqIFRoZSBUcmFuc2FjdGlvbiBtdXN0IGJlIGFzc2lnbmVkIGEgdmFsaWQgYHJlY2VudEJsb2NraGFzaGAgYmVmb3JlIGludm9raW5nIHRoaXMgbWV0aG9kXG4gICAqXG4gICAqIEBwYXJhbSB7QXJyYXk8U2lnbmVyPn0gc2lnbmVycyBBcnJheSBvZiBzaWduZXJzIHRoYXQgd2lsbCBzaWduIHRoZSB0cmFuc2FjdGlvblxuICAgKi9cbiAgc2lnbiguLi5zaWduZXJzOiBBcnJheTxTaWduZXI+KSB7XG4gICAgaWYgKHNpZ25lcnMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIHNpZ25lcnMnKTtcbiAgICB9XG5cbiAgICAvLyBEZWR1cGUgc2lnbmVyc1xuICAgIGNvbnN0IHNlZW4gPSBuZXcgU2V0KCk7XG4gICAgY29uc3QgdW5pcXVlU2lnbmVycyA9IFtdO1xuICAgIGZvciAoY29uc3Qgc2lnbmVyIG9mIHNpZ25lcnMpIHtcbiAgICAgIGNvbnN0IGtleSA9IHNpZ25lci5wdWJsaWNLZXkudG9TdHJpbmcoKTtcbiAgICAgIGlmIChzZWVuLmhhcyhrZXkpKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc2Vlbi5hZGQoa2V5KTtcbiAgICAgICAgdW5pcXVlU2lnbmVycy5wdXNoKHNpZ25lcik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5zaWduYXR1cmVzID0gdW5pcXVlU2lnbmVycy5tYXAoc2lnbmVyID0+ICh7XG4gICAgICBzaWduYXR1cmU6IG51bGwsXG4gICAgICBwdWJsaWNLZXk6IHNpZ25lci5wdWJsaWNLZXksXG4gICAgfSkpO1xuXG4gICAgY29uc3QgbWVzc2FnZSA9IHRoaXMuX2NvbXBpbGUoKTtcbiAgICB0aGlzLl9wYXJ0aWFsU2lnbihtZXNzYWdlLCAuLi51bmlxdWVTaWduZXJzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQYXJ0aWFsbHkgc2lnbiBhIHRyYW5zYWN0aW9uIHdpdGggdGhlIHNwZWNpZmllZCBhY2NvdW50cy4gQWxsIGFjY291bnRzIG11c3RcbiAgICogY29ycmVzcG9uZCB0byBlaXRoZXIgdGhlIGZlZSBwYXllciBvciBhIHNpZ25lciBhY2NvdW50IGluIHRoZSB0cmFuc2FjdGlvblxuICAgKiBpbnN0cnVjdGlvbnMuXG4gICAqXG4gICAqIEFsbCB0aGUgY2F2ZWF0cyBmcm9tIHRoZSBgc2lnbmAgbWV0aG9kIGFwcGx5IHRvIGBwYXJ0aWFsU2lnbmBcbiAgICpcbiAgICogQHBhcmFtIHtBcnJheTxTaWduZXI+fSBzaWduZXJzIEFycmF5IG9mIHNpZ25lcnMgdGhhdCB3aWxsIHNpZ24gdGhlIHRyYW5zYWN0aW9uXG4gICAqL1xuICBwYXJ0aWFsU2lnbiguLi5zaWduZXJzOiBBcnJheTxTaWduZXI+KSB7XG4gICAgaWYgKHNpZ25lcnMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIHNpZ25lcnMnKTtcbiAgICB9XG5cbiAgICAvLyBEZWR1cGUgc2lnbmVyc1xuICAgIGNvbnN0IHNlZW4gPSBuZXcgU2V0KCk7XG4gICAgY29uc3QgdW5pcXVlU2lnbmVycyA9IFtdO1xuICAgIGZvciAoY29uc3Qgc2lnbmVyIG9mIHNpZ25lcnMpIHtcbiAgICAgIGNvbnN0IGtleSA9IHNpZ25lci5wdWJsaWNLZXkudG9TdHJpbmcoKTtcbiAgICAgIGlmIChzZWVuLmhhcyhrZXkpKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc2Vlbi5hZGQoa2V5KTtcbiAgICAgICAgdW5pcXVlU2lnbmVycy5wdXNoKHNpZ25lcik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgbWVzc2FnZSA9IHRoaXMuX2NvbXBpbGUoKTtcbiAgICB0aGlzLl9wYXJ0aWFsU2lnbihtZXNzYWdlLCAuLi51bmlxdWVTaWduZXJzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIF9wYXJ0aWFsU2lnbihtZXNzYWdlOiBNZXNzYWdlLCAuLi5zaWduZXJzOiBBcnJheTxTaWduZXI+KSB7XG4gICAgY29uc3Qgc2lnbkRhdGEgPSBtZXNzYWdlLnNlcmlhbGl6ZSgpO1xuICAgIHNpZ25lcnMuZm9yRWFjaChzaWduZXIgPT4ge1xuICAgICAgY29uc3Qgc2lnbmF0dXJlID0gc2lnbihzaWduRGF0YSwgc2lnbmVyLnNlY3JldEtleSk7XG4gICAgICB0aGlzLl9hZGRTaWduYXR1cmUoc2lnbmVyLnB1YmxpY0tleSwgdG9CdWZmZXIoc2lnbmF0dXJlKSk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIGFuIGV4dGVybmFsbHkgY3JlYXRlZCBzaWduYXR1cmUgdG8gYSB0cmFuc2FjdGlvbi4gVGhlIHB1YmxpYyBrZXlcbiAgICogbXVzdCBjb3JyZXNwb25kIHRvIGVpdGhlciB0aGUgZmVlIHBheWVyIG9yIGEgc2lnbmVyIGFjY291bnQgaW4gdGhlIHRyYW5zYWN0aW9uXG4gICAqIGluc3RydWN0aW9ucy5cbiAgICpcbiAgICogQHBhcmFtIHtQdWJsaWNLZXl9IHB1YmtleSBQdWJsaWMga2V5IHRoYXQgd2lsbCBiZSBhZGRlZCB0byB0aGUgdHJhbnNhY3Rpb24uXG4gICAqIEBwYXJhbSB7QnVmZmVyfSBzaWduYXR1cmUgQW4gZXh0ZXJuYWxseSBjcmVhdGVkIHNpZ25hdHVyZSB0byBhZGQgdG8gdGhlIHRyYW5zYWN0aW9uLlxuICAgKi9cbiAgYWRkU2lnbmF0dXJlKHB1YmtleTogUHVibGljS2V5LCBzaWduYXR1cmU6IEJ1ZmZlcikge1xuICAgIHRoaXMuX2NvbXBpbGUoKTsgLy8gRW5zdXJlIHNpZ25hdHVyZXMgYXJyYXkgaXMgcG9wdWxhdGVkXG4gICAgdGhpcy5fYWRkU2lnbmF0dXJlKHB1YmtleSwgc2lnbmF0dXJlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIF9hZGRTaWduYXR1cmUocHVia2V5OiBQdWJsaWNLZXksIHNpZ25hdHVyZTogQnVmZmVyKSB7XG4gICAgaW52YXJpYW50KHNpZ25hdHVyZS5sZW5ndGggPT09IDY0KTtcblxuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5zaWduYXR1cmVzLmZpbmRJbmRleChzaWdwYWlyID0+XG4gICAgICBwdWJrZXkuZXF1YWxzKHNpZ3BhaXIucHVibGljS2V5KSxcbiAgICApO1xuICAgIGlmIChpbmRleCA8IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgdW5rbm93biBzaWduZXI6ICR7cHVia2V5LnRvU3RyaW5nKCl9YCk7XG4gICAgfVxuXG4gICAgdGhpcy5zaWduYXR1cmVzW2luZGV4XS5zaWduYXR1cmUgPSBCdWZmZXIuZnJvbShzaWduYXR1cmUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFZlcmlmeSBzaWduYXR1cmVzIG9mIGEgVHJhbnNhY3Rpb25cbiAgICogT3B0aW9uYWwgcGFyYW1ldGVyIHNwZWNpZmllcyBpZiB3ZSdyZSBleHBlY3RpbmcgYSBmdWxseSBzaWduZWQgVHJhbnNhY3Rpb24gb3IgYSBwYXJ0aWFsbHkgc2lnbmVkIG9uZS5cbiAgICogSWYgbm8gYm9vbGVhbiBpcyBwcm92aWRlZCwgd2UgZXhwZWN0IGEgZnVsbHkgc2lnbmVkIFRyYW5zYWN0aW9uIGJ5IGRlZmF1bHQuXG4gICAqXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gW3JlcXVpcmVBbGxTaWduYXR1cmVzPXRydWVdIFJlcXVpcmUgYSBmdWxseSBzaWduZWQgVHJhbnNhY3Rpb25cbiAgICovXG4gIHZlcmlmeVNpZ25hdHVyZXMocmVxdWlyZUFsbFNpZ25hdHVyZXM/OiBib29sZWFuKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3ZlcmlmeVNpZ25hdHVyZXMoXG4gICAgICB0aGlzLnNlcmlhbGl6ZU1lc3NhZ2UoKSxcbiAgICAgIHJlcXVpcmVBbGxTaWduYXR1cmVzID09PSB1bmRlZmluZWQgPyB0cnVlIDogcmVxdWlyZUFsbFNpZ25hdHVyZXMsXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIF92ZXJpZnlTaWduYXR1cmVzKFxuICAgIHNpZ25EYXRhOiBVaW50OEFycmF5LFxuICAgIHJlcXVpcmVBbGxTaWduYXR1cmVzOiBib29sZWFuLFxuICApOiBib29sZWFuIHtcbiAgICBmb3IgKGNvbnN0IHtzaWduYXR1cmUsIHB1YmxpY0tleX0gb2YgdGhpcy5zaWduYXR1cmVzKSB7XG4gICAgICBpZiAoc2lnbmF0dXJlID09PSBudWxsKSB7XG4gICAgICAgIGlmIChyZXF1aXJlQWxsU2lnbmF0dXJlcykge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKCF2ZXJpZnkoc2lnbmF0dXJlLCBzaWduRGF0YSwgcHVibGljS2V5LnRvQnl0ZXMoKSkpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKipcbiAgICogU2VyaWFsaXplIHRoZSBUcmFuc2FjdGlvbiBpbiB0aGUgd2lyZSBmb3JtYXQuXG4gICAqXG4gICAqIEBwYXJhbSB7QnVmZmVyfSBbY29uZmlnXSBDb25maWcgb2YgdHJhbnNhY3Rpb24uXG4gICAqXG4gICAqIEByZXR1cm5zIHtCdWZmZXJ9IFNpZ25hdHVyZSBvZiB0cmFuc2FjdGlvbiBpbiB3aXJlIGZvcm1hdC5cbiAgICovXG4gIHNlcmlhbGl6ZShjb25maWc/OiBTZXJpYWxpemVDb25maWcpOiBCdWZmZXIge1xuICAgIGNvbnN0IHtyZXF1aXJlQWxsU2lnbmF0dXJlcywgdmVyaWZ5U2lnbmF0dXJlc30gPSBPYmplY3QuYXNzaWduKFxuICAgICAge3JlcXVpcmVBbGxTaWduYXR1cmVzOiB0cnVlLCB2ZXJpZnlTaWduYXR1cmVzOiB0cnVlfSxcbiAgICAgIGNvbmZpZyxcbiAgICApO1xuXG4gICAgY29uc3Qgc2lnbkRhdGEgPSB0aGlzLnNlcmlhbGl6ZU1lc3NhZ2UoKTtcbiAgICBpZiAoXG4gICAgICB2ZXJpZnlTaWduYXR1cmVzICYmXG4gICAgICAhdGhpcy5fdmVyaWZ5U2lnbmF0dXJlcyhzaWduRGF0YSwgcmVxdWlyZUFsbFNpZ25hdHVyZXMpXG4gICAgKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1NpZ25hdHVyZSB2ZXJpZmljYXRpb24gZmFpbGVkJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuX3NlcmlhbGl6ZShzaWduRGF0YSk7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBfc2VyaWFsaXplKHNpZ25EYXRhOiBCdWZmZXIpOiBCdWZmZXIge1xuICAgIGNvbnN0IHtzaWduYXR1cmVzfSA9IHRoaXM7XG4gICAgY29uc3Qgc2lnbmF0dXJlQ291bnQ6IG51bWJlcltdID0gW107XG4gICAgc2hvcnR2ZWMuZW5jb2RlTGVuZ3RoKHNpZ25hdHVyZUNvdW50LCBzaWduYXR1cmVzLmxlbmd0aCk7XG4gICAgY29uc3QgdHJhbnNhY3Rpb25MZW5ndGggPVxuICAgICAgc2lnbmF0dXJlQ291bnQubGVuZ3RoICsgc2lnbmF0dXJlcy5sZW5ndGggKiA2NCArIHNpZ25EYXRhLmxlbmd0aDtcbiAgICBjb25zdCB3aXJlVHJhbnNhY3Rpb24gPSBCdWZmZXIuYWxsb2ModHJhbnNhY3Rpb25MZW5ndGgpO1xuICAgIGludmFyaWFudChzaWduYXR1cmVzLmxlbmd0aCA8IDI1Nik7XG4gICAgQnVmZmVyLmZyb20oc2lnbmF0dXJlQ291bnQpLmNvcHkod2lyZVRyYW5zYWN0aW9uLCAwKTtcbiAgICBzaWduYXR1cmVzLmZvckVhY2goKHtzaWduYXR1cmV9LCBpbmRleCkgPT4ge1xuICAgICAgaWYgKHNpZ25hdHVyZSAhPT0gbnVsbCkge1xuICAgICAgICBpbnZhcmlhbnQoc2lnbmF0dXJlLmxlbmd0aCA9PT0gNjQsIGBzaWduYXR1cmUgaGFzIGludmFsaWQgbGVuZ3RoYCk7XG4gICAgICAgIEJ1ZmZlci5mcm9tKHNpZ25hdHVyZSkuY29weShcbiAgICAgICAgICB3aXJlVHJhbnNhY3Rpb24sXG4gICAgICAgICAgc2lnbmF0dXJlQ291bnQubGVuZ3RoICsgaW5kZXggKiA2NCxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICBzaWduRGF0YS5jb3B5KFxuICAgICAgd2lyZVRyYW5zYWN0aW9uLFxuICAgICAgc2lnbmF0dXJlQ291bnQubGVuZ3RoICsgc2lnbmF0dXJlcy5sZW5ndGggKiA2NCxcbiAgICApO1xuICAgIGludmFyaWFudChcbiAgICAgIHdpcmVUcmFuc2FjdGlvbi5sZW5ndGggPD0gUEFDS0VUX0RBVEFfU0laRSxcbiAgICAgIGBUcmFuc2FjdGlvbiB0b28gbGFyZ2U6ICR7d2lyZVRyYW5zYWN0aW9uLmxlbmd0aH0gPiAke1BBQ0tFVF9EQVRBX1NJWkV9YCxcbiAgICApO1xuICAgIHJldHVybiB3aXJlVHJhbnNhY3Rpb247XG4gIH1cblxuICAvKipcbiAgICogRGVwcmVjYXRlZCBtZXRob2RcbiAgICogQGludGVybmFsXG4gICAqL1xuICBnZXQga2V5cygpOiBBcnJheTxQdWJsaWNLZXk+IHtcbiAgICBpbnZhcmlhbnQodGhpcy5pbnN0cnVjdGlvbnMubGVuZ3RoID09PSAxKTtcbiAgICByZXR1cm4gdGhpcy5pbnN0cnVjdGlvbnNbMF0ua2V5cy5tYXAoa2V5T2JqID0+IGtleU9iai5wdWJrZXkpO1xuICB9XG5cbiAgLyoqXG4gICAqIERlcHJlY2F0ZWQgbWV0aG9kXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgZ2V0IHByb2dyYW1JZCgpOiBQdWJsaWNLZXkge1xuICAgIGludmFyaWFudCh0aGlzLmluc3RydWN0aW9ucy5sZW5ndGggPT09IDEpO1xuICAgIHJldHVybiB0aGlzLmluc3RydWN0aW9uc1swXS5wcm9ncmFtSWQ7XG4gIH1cblxuICAvKipcbiAgICogRGVwcmVjYXRlZCBtZXRob2RcbiAgICogQGludGVybmFsXG4gICAqL1xuICBnZXQgZGF0YSgpOiBCdWZmZXIge1xuICAgIGludmFyaWFudCh0aGlzLmluc3RydWN0aW9ucy5sZW5ndGggPT09IDEpO1xuICAgIHJldHVybiB0aGlzLmluc3RydWN0aW9uc1swXS5kYXRhO1xuICB9XG5cbiAgLyoqXG4gICAqIFBhcnNlIGEgd2lyZSB0cmFuc2FjdGlvbiBpbnRvIGEgVHJhbnNhY3Rpb24gb2JqZWN0LlxuICAgKlxuICAgKiBAcGFyYW0ge0J1ZmZlciB8IFVpbnQ4QXJyYXkgfCBBcnJheTxudW1iZXI+fSBidWZmZXIgU2lnbmF0dXJlIG9mIHdpcmUgVHJhbnNhY3Rpb25cbiAgICpcbiAgICogQHJldHVybnMge1RyYW5zYWN0aW9ufSBUcmFuc2FjdGlvbiBhc3NvY2lhdGVkIHdpdGggdGhlIHNpZ25hdHVyZVxuICAgKi9cbiAgc3RhdGljIGZyb20oYnVmZmVyOiBCdWZmZXIgfCBVaW50OEFycmF5IHwgQXJyYXk8bnVtYmVyPik6IFRyYW5zYWN0aW9uIHtcbiAgICAvLyBTbGljZSB1cCB3aXJlIGRhdGFcbiAgICBsZXQgYnl0ZUFycmF5ID0gWy4uLmJ1ZmZlcl07XG5cbiAgICBjb25zdCBzaWduYXR1cmVDb3VudCA9IHNob3J0dmVjLmRlY29kZUxlbmd0aChieXRlQXJyYXkpO1xuICAgIGxldCBzaWduYXR1cmVzID0gW107XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzaWduYXR1cmVDb3VudDsgaSsrKSB7XG4gICAgICBjb25zdCBzaWduYXR1cmUgPSBieXRlQXJyYXkuc2xpY2UoMCwgU0lHTkFUVVJFX0xFTkdUSF9JTl9CWVRFUyk7XG4gICAgICBieXRlQXJyYXkgPSBieXRlQXJyYXkuc2xpY2UoU0lHTkFUVVJFX0xFTkdUSF9JTl9CWVRFUyk7XG4gICAgICBzaWduYXR1cmVzLnB1c2goYnM1OC5lbmNvZGUoQnVmZmVyLmZyb20oc2lnbmF0dXJlKSkpO1xuICAgIH1cblxuICAgIHJldHVybiBUcmFuc2FjdGlvbi5wb3B1bGF0ZShNZXNzYWdlLmZyb20oYnl0ZUFycmF5KSwgc2lnbmF0dXJlcyk7XG4gIH1cblxuICAvKipcbiAgICogUG9wdWxhdGUgVHJhbnNhY3Rpb24gb2JqZWN0IGZyb20gbWVzc2FnZSBhbmQgc2lnbmF0dXJlc1xuICAgKlxuICAgKiBAcGFyYW0ge01lc3NhZ2V9IG1lc3NhZ2UgTWVzc2FnZSBvZiB0cmFuc2FjdGlvblxuICAgKiBAcGFyYW0ge0FycmF5PHN0cmluZz59IHNpZ25hdHVyZXMgTGlzdCBvZiBzaWduYXR1cmVzIHRvIGFzc2lnbiB0byB0aGUgdHJhbnNhY3Rpb25cbiAgICpcbiAgICogQHJldHVybnMge1RyYW5zYWN0aW9ufSBUaGUgcG9wdWxhdGVkIFRyYW5zYWN0aW9uXG4gICAqL1xuICBzdGF0aWMgcG9wdWxhdGUoXG4gICAgbWVzc2FnZTogTWVzc2FnZSxcbiAgICBzaWduYXR1cmVzOiBBcnJheTxzdHJpbmc+ID0gW10sXG4gICk6IFRyYW5zYWN0aW9uIHtcbiAgICBjb25zdCB0cmFuc2FjdGlvbiA9IG5ldyBUcmFuc2FjdGlvbigpO1xuICAgIHRyYW5zYWN0aW9uLnJlY2VudEJsb2NraGFzaCA9IG1lc3NhZ2UucmVjZW50QmxvY2toYXNoO1xuICAgIGlmIChtZXNzYWdlLmhlYWRlci5udW1SZXF1aXJlZFNpZ25hdHVyZXMgPiAwKSB7XG4gICAgICB0cmFuc2FjdGlvbi5mZWVQYXllciA9IG1lc3NhZ2UuYWNjb3VudEtleXNbMF07XG4gICAgfVxuICAgIHNpZ25hdHVyZXMuZm9yRWFjaCgoc2lnbmF0dXJlLCBpbmRleCkgPT4ge1xuICAgICAgY29uc3Qgc2lnUHVia2V5UGFpciA9IHtcbiAgICAgICAgc2lnbmF0dXJlOlxuICAgICAgICAgIHNpZ25hdHVyZSA9PSBiczU4LmVuY29kZShERUZBVUxUX1NJR05BVFVSRSlcbiAgICAgICAgICAgID8gbnVsbFxuICAgICAgICAgICAgOiBiczU4LmRlY29kZShzaWduYXR1cmUpLFxuICAgICAgICBwdWJsaWNLZXk6IG1lc3NhZ2UuYWNjb3VudEtleXNbaW5kZXhdLFxuICAgICAgfTtcbiAgICAgIHRyYW5zYWN0aW9uLnNpZ25hdHVyZXMucHVzaChzaWdQdWJrZXlQYWlyKTtcbiAgICB9KTtcblxuICAgIG1lc3NhZ2UuaW5zdHJ1Y3Rpb25zLmZvckVhY2goaW5zdHJ1Y3Rpb24gPT4ge1xuICAgICAgY29uc3Qga2V5cyA9IGluc3RydWN0aW9uLmFjY291bnRzLm1hcChhY2NvdW50ID0+IHtcbiAgICAgICAgY29uc3QgcHVia2V5ID0gbWVzc2FnZS5hY2NvdW50S2V5c1thY2NvdW50XTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBwdWJrZXksXG4gICAgICAgICAgaXNTaWduZXI6XG4gICAgICAgICAgICB0cmFuc2FjdGlvbi5zaWduYXR1cmVzLnNvbWUoXG4gICAgICAgICAgICAgIGtleU9iaiA9PiBrZXlPYmoucHVibGljS2V5LnRvU3RyaW5nKCkgPT09IHB1YmtleS50b1N0cmluZygpLFxuICAgICAgICAgICAgKSB8fCBtZXNzYWdlLmlzQWNjb3VudFNpZ25lcihhY2NvdW50KSxcbiAgICAgICAgICBpc1dyaXRhYmxlOiBtZXNzYWdlLmlzQWNjb3VudFdyaXRhYmxlKGFjY291bnQpLFxuICAgICAgICB9O1xuICAgICAgfSk7XG5cbiAgICAgIHRyYW5zYWN0aW9uLmluc3RydWN0aW9ucy5wdXNoKFxuICAgICAgICBuZXcgVHJhbnNhY3Rpb25JbnN0cnVjdGlvbih7XG4gICAgICAgICAga2V5cyxcbiAgICAgICAgICBwcm9ncmFtSWQ6IG1lc3NhZ2UuYWNjb3VudEtleXNbaW5zdHJ1Y3Rpb24ucHJvZ3JhbUlkSW5kZXhdLFxuICAgICAgICAgIGRhdGE6IGJzNTguZGVjb2RlKGluc3RydWN0aW9uLmRhdGEpLFxuICAgICAgICB9KSxcbiAgICAgICk7XG4gICAgfSk7XG5cbiAgICB0cmFuc2FjdGlvbi5fbWVzc2FnZSA9IG1lc3NhZ2U7XG4gICAgdHJhbnNhY3Rpb24uX2pzb24gPSB0cmFuc2FjdGlvbi50b0pTT04oKTtcblxuICAgIHJldHVybiB0cmFuc2FjdGlvbjtcbiAgfVxufVxuIiwgImltcG9ydCB7QWNjb3VudEtleXNGcm9tTG9va3Vwc30gZnJvbSAnLi4vbWVzc2FnZS9hY2NvdW50LWtleXMnO1xuaW1wb3J0IGFzc2VydCBmcm9tICcuLi91dGlscy9hc3NlcnQnO1xuaW1wb3J0IHt0b0J1ZmZlcn0gZnJvbSAnLi4vdXRpbHMvdG8tYnVmZmVyJztcbmltcG9ydCB7QmxvY2toYXNofSBmcm9tICcuLi9ibG9ja2hhc2gnO1xuaW1wb3J0IHtNZXNzYWdlLCBNZXNzYWdlVjAsIFZlcnNpb25lZE1lc3NhZ2V9IGZyb20gJy4uL21lc3NhZ2UnO1xuaW1wb3J0IHtQdWJsaWNLZXl9IGZyb20gJy4uL3B1YmxpY2tleSc7XG5pbXBvcnQge0FkZHJlc3NMb29rdXBUYWJsZUFjY291bnR9IGZyb20gJy4uL3Byb2dyYW1zJztcbmltcG9ydCB7QWNjb3VudE1ldGEsIFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb259IGZyb20gJy4vbGVnYWN5JztcblxuZXhwb3J0IHR5cGUgVHJhbnNhY3Rpb25NZXNzYWdlQXJncyA9IHtcbiAgcGF5ZXJLZXk6IFB1YmxpY0tleTtcbiAgaW5zdHJ1Y3Rpb25zOiBBcnJheTxUcmFuc2FjdGlvbkluc3RydWN0aW9uPjtcbiAgcmVjZW50QmxvY2toYXNoOiBCbG9ja2hhc2g7XG59O1xuXG5leHBvcnQgdHlwZSBEZWNvbXBpbGVBcmdzID1cbiAgfCB7XG4gICAgICBhY2NvdW50S2V5c0Zyb21Mb29rdXBzOiBBY2NvdW50S2V5c0Zyb21Mb29rdXBzO1xuICAgIH1cbiAgfCB7XG4gICAgICBhZGRyZXNzTG9va3VwVGFibGVBY2NvdW50czogQWRkcmVzc0xvb2t1cFRhYmxlQWNjb3VudFtdO1xuICAgIH07XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbk1lc3NhZ2Uge1xuICBwYXllcktleTogUHVibGljS2V5O1xuICBpbnN0cnVjdGlvbnM6IEFycmF5PFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24+O1xuICByZWNlbnRCbG9ja2hhc2g6IEJsb2NraGFzaDtcblxuICBjb25zdHJ1Y3RvcihhcmdzOiBUcmFuc2FjdGlvbk1lc3NhZ2VBcmdzKSB7XG4gICAgdGhpcy5wYXllcktleSA9IGFyZ3MucGF5ZXJLZXk7XG4gICAgdGhpcy5pbnN0cnVjdGlvbnMgPSBhcmdzLmluc3RydWN0aW9ucztcbiAgICB0aGlzLnJlY2VudEJsb2NraGFzaCA9IGFyZ3MucmVjZW50QmxvY2toYXNoO1xuICB9XG5cbiAgc3RhdGljIGRlY29tcGlsZShcbiAgICBtZXNzYWdlOiBWZXJzaW9uZWRNZXNzYWdlLFxuICAgIGFyZ3M/OiBEZWNvbXBpbGVBcmdzLFxuICApOiBUcmFuc2FjdGlvbk1lc3NhZ2Uge1xuICAgIGNvbnN0IHtoZWFkZXIsIGNvbXBpbGVkSW5zdHJ1Y3Rpb25zLCByZWNlbnRCbG9ja2hhc2h9ID0gbWVzc2FnZTtcblxuICAgIGNvbnN0IHtcbiAgICAgIG51bVJlcXVpcmVkU2lnbmF0dXJlcyxcbiAgICAgIG51bVJlYWRvbmx5U2lnbmVkQWNjb3VudHMsXG4gICAgICBudW1SZWFkb25seVVuc2lnbmVkQWNjb3VudHMsXG4gICAgfSA9IGhlYWRlcjtcblxuICAgIGNvbnN0IG51bVdyaXRhYmxlU2lnbmVkQWNjb3VudHMgPVxuICAgICAgbnVtUmVxdWlyZWRTaWduYXR1cmVzIC0gbnVtUmVhZG9ubHlTaWduZWRBY2NvdW50cztcbiAgICBhc3NlcnQobnVtV3JpdGFibGVTaWduZWRBY2NvdW50cyA+IDAsICdNZXNzYWdlIGhlYWRlciBpcyBpbnZhbGlkJyk7XG5cbiAgICBjb25zdCBudW1Xcml0YWJsZVVuc2lnbmVkQWNjb3VudHMgPVxuICAgICAgbWVzc2FnZS5zdGF0aWNBY2NvdW50S2V5cy5sZW5ndGggLVxuICAgICAgbnVtUmVxdWlyZWRTaWduYXR1cmVzIC1cbiAgICAgIG51bVJlYWRvbmx5VW5zaWduZWRBY2NvdW50cztcbiAgICBhc3NlcnQobnVtV3JpdGFibGVVbnNpZ25lZEFjY291bnRzID49IDAsICdNZXNzYWdlIGhlYWRlciBpcyBpbnZhbGlkJyk7XG5cbiAgICBjb25zdCBhY2NvdW50S2V5cyA9IG1lc3NhZ2UuZ2V0QWNjb3VudEtleXMoYXJncyk7XG4gICAgY29uc3QgcGF5ZXJLZXkgPSBhY2NvdW50S2V5cy5nZXQoMCk7XG4gICAgaWYgKHBheWVyS2V5ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ0ZhaWxlZCB0byBkZWNvbXBpbGUgbWVzc2FnZSBiZWNhdXNlIG5vIGFjY291bnQga2V5cyB3ZXJlIGZvdW5kJyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgY29uc3QgaW5zdHJ1Y3Rpb25zOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IGNvbXBpbGVkSXggb2YgY29tcGlsZWRJbnN0cnVjdGlvbnMpIHtcbiAgICAgIGNvbnN0IGtleXM6IEFjY291bnRNZXRhW10gPSBbXTtcblxuICAgICAgZm9yIChjb25zdCBrZXlJbmRleCBvZiBjb21waWxlZEl4LmFjY291bnRLZXlJbmRleGVzKSB7XG4gICAgICAgIGNvbnN0IHB1YmtleSA9IGFjY291bnRLZXlzLmdldChrZXlJbmRleCk7XG4gICAgICAgIGlmIChwdWJrZXkgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgIGBGYWlsZWQgdG8gZmluZCBrZXkgZm9yIGFjY291bnQga2V5IGluZGV4ICR7a2V5SW5kZXh9YCxcbiAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaXNTaWduZXIgPSBrZXlJbmRleCA8IG51bVJlcXVpcmVkU2lnbmF0dXJlcztcblxuICAgICAgICBsZXQgaXNXcml0YWJsZTtcbiAgICAgICAgaWYgKGlzU2lnbmVyKSB7XG4gICAgICAgICAgaXNXcml0YWJsZSA9IGtleUluZGV4IDwgbnVtV3JpdGFibGVTaWduZWRBY2NvdW50cztcbiAgICAgICAgfSBlbHNlIGlmIChrZXlJbmRleCA8IGFjY291bnRLZXlzLnN0YXRpY0FjY291bnRLZXlzLmxlbmd0aCkge1xuICAgICAgICAgIGlzV3JpdGFibGUgPVxuICAgICAgICAgICAga2V5SW5kZXggLSBudW1SZXF1aXJlZFNpZ25hdHVyZXMgPCBudW1Xcml0YWJsZVVuc2lnbmVkQWNjb3VudHM7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaXNXcml0YWJsZSA9XG4gICAgICAgICAgICBrZXlJbmRleCAtIGFjY291bnRLZXlzLnN0YXRpY0FjY291bnRLZXlzLmxlbmd0aCA8XG4gICAgICAgICAgICAvLyBhY2NvdW50S2V5c0Zyb21Mb29rdXBzIGNhbm5vdCBiZSB1bmRlZmluZWQgYmVjYXVzZSB3ZSBhbHJlYWR5IGZvdW5kIGEgcHVia2V5IGZvciB0aGlzIGluZGV4IGFib3ZlXG4gICAgICAgICAgICBhY2NvdW50S2V5cy5hY2NvdW50S2V5c0Zyb21Mb29rdXBzIS53cml0YWJsZS5sZW5ndGg7XG4gICAgICAgIH1cblxuICAgICAgICBrZXlzLnB1c2goe1xuICAgICAgICAgIHB1YmtleSxcbiAgICAgICAgICBpc1NpZ25lcjoga2V5SW5kZXggPCBoZWFkZXIubnVtUmVxdWlyZWRTaWduYXR1cmVzLFxuICAgICAgICAgIGlzV3JpdGFibGUsXG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBwcm9ncmFtSWQgPSBhY2NvdW50S2V5cy5nZXQoY29tcGlsZWRJeC5wcm9ncmFtSWRJbmRleCk7XG4gICAgICBpZiAocHJvZ3JhbUlkID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgIGBGYWlsZWQgdG8gZmluZCBwcm9ncmFtIGlkIGZvciBwcm9ncmFtIGlkIGluZGV4ICR7Y29tcGlsZWRJeC5wcm9ncmFtSWRJbmRleH1gLFxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBpbnN0cnVjdGlvbnMucHVzaChcbiAgICAgICAgbmV3IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24oe1xuICAgICAgICAgIHByb2dyYW1JZCxcbiAgICAgICAgICBkYXRhOiB0b0J1ZmZlcihjb21waWxlZEl4LmRhdGEpLFxuICAgICAgICAgIGtleXMsXG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uTWVzc2FnZSh7XG4gICAgICBwYXllcktleSxcbiAgICAgIGluc3RydWN0aW9ucyxcbiAgICAgIHJlY2VudEJsb2NraGFzaCxcbiAgICB9KTtcbiAgfVxuXG4gIGNvbXBpbGVUb0xlZ2FjeU1lc3NhZ2UoKTogTWVzc2FnZSB7XG4gICAgcmV0dXJuIE1lc3NhZ2UuY29tcGlsZSh7XG4gICAgICBwYXllcktleTogdGhpcy5wYXllcktleSxcbiAgICAgIHJlY2VudEJsb2NraGFzaDogdGhpcy5yZWNlbnRCbG9ja2hhc2gsXG4gICAgICBpbnN0cnVjdGlvbnM6IHRoaXMuaW5zdHJ1Y3Rpb25zLFxuICAgIH0pO1xuICB9XG5cbiAgY29tcGlsZVRvVjBNZXNzYWdlKFxuICAgIGFkZHJlc3NMb29rdXBUYWJsZUFjY291bnRzPzogQWRkcmVzc0xvb2t1cFRhYmxlQWNjb3VudFtdLFxuICApOiBNZXNzYWdlVjAge1xuICAgIHJldHVybiBNZXNzYWdlVjAuY29tcGlsZSh7XG4gICAgICBwYXllcktleTogdGhpcy5wYXllcktleSxcbiAgICAgIHJlY2VudEJsb2NraGFzaDogdGhpcy5yZWNlbnRCbG9ja2hhc2gsXG4gICAgICBpbnN0cnVjdGlvbnM6IHRoaXMuaW5zdHJ1Y3Rpb25zLFxuICAgICAgYWRkcmVzc0xvb2t1cFRhYmxlQWNjb3VudHMsXG4gICAgfSk7XG4gIH1cbn1cbiIsICJpbXBvcnQgKiBhcyBCdWZmZXJMYXlvdXQgZnJvbSAnQHNvbGFuYS9idWZmZXItbGF5b3V0JztcblxuaW1wb3J0IHtTaWduZXJ9IGZyb20gJy4uL2tleXBhaXInO1xuaW1wb3J0IGFzc2VydCBmcm9tICcuLi91dGlscy9hc3NlcnQnO1xuaW1wb3J0IHtWZXJzaW9uZWRNZXNzYWdlfSBmcm9tICcuLi9tZXNzYWdlL3ZlcnNpb25lZCc7XG5pbXBvcnQge1NJR05BVFVSRV9MRU5HVEhfSU5fQllURVN9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCAqIGFzIHNob3J0dmVjIGZyb20gJy4uL3V0aWxzL3Nob3J0dmVjLWVuY29kaW5nJztcbmltcG9ydCAqIGFzIExheW91dCBmcm9tICcuLi9sYXlvdXQnO1xuaW1wb3J0IHtzaWdufSBmcm9tICcuLi91dGlscy9lZDI1NTE5JztcbmltcG9ydCB7UHVibGljS2V5fSBmcm9tICcuLi9wdWJsaWNrZXknO1xuXG5leHBvcnQgdHlwZSBUcmFuc2FjdGlvblZlcnNpb24gPSAnbGVnYWN5JyB8IDA7XG5cbi8qKlxuICogVmVyc2lvbmVkIHRyYW5zYWN0aW9uIGNsYXNzXG4gKi9cbmV4cG9ydCBjbGFzcyBWZXJzaW9uZWRUcmFuc2FjdGlvbiB7XG4gIHNpZ25hdHVyZXM6IEFycmF5PFVpbnQ4QXJyYXk+O1xuICBtZXNzYWdlOiBWZXJzaW9uZWRNZXNzYWdlO1xuXG4gIGdldCB2ZXJzaW9uKCk6IFRyYW5zYWN0aW9uVmVyc2lvbiB7XG4gICAgcmV0dXJuIHRoaXMubWVzc2FnZS52ZXJzaW9uO1xuICB9XG5cbiAgY29uc3RydWN0b3IobWVzc2FnZTogVmVyc2lvbmVkTWVzc2FnZSwgc2lnbmF0dXJlcz86IEFycmF5PFVpbnQ4QXJyYXk+KSB7XG4gICAgaWYgKHNpZ25hdHVyZXMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgYXNzZXJ0KFxuICAgICAgICBzaWduYXR1cmVzLmxlbmd0aCA9PT0gbWVzc2FnZS5oZWFkZXIubnVtUmVxdWlyZWRTaWduYXR1cmVzLFxuICAgICAgICAnRXhwZWN0ZWQgc2lnbmF0dXJlcyBsZW5ndGggdG8gYmUgZXF1YWwgdG8gdGhlIG51bWJlciBvZiByZXF1aXJlZCBzaWduYXR1cmVzJyxcbiAgICAgICk7XG4gICAgICB0aGlzLnNpZ25hdHVyZXMgPSBzaWduYXR1cmVzO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBkZWZhdWx0U2lnbmF0dXJlcyA9IFtdO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBtZXNzYWdlLmhlYWRlci5udW1SZXF1aXJlZFNpZ25hdHVyZXM7IGkrKykge1xuICAgICAgICBkZWZhdWx0U2lnbmF0dXJlcy5wdXNoKG5ldyBVaW50OEFycmF5KFNJR05BVFVSRV9MRU5HVEhfSU5fQllURVMpKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuc2lnbmF0dXJlcyA9IGRlZmF1bHRTaWduYXR1cmVzO1xuICAgIH1cbiAgICB0aGlzLm1lc3NhZ2UgPSBtZXNzYWdlO1xuICB9XG5cbiAgc2VyaWFsaXplKCk6IFVpbnQ4QXJyYXkge1xuICAgIGNvbnN0IHNlcmlhbGl6ZWRNZXNzYWdlID0gdGhpcy5tZXNzYWdlLnNlcmlhbGl6ZSgpO1xuXG4gICAgY29uc3QgZW5jb2RlZFNpZ25hdHVyZXNMZW5ndGggPSBBcnJheTxudW1iZXI+KCk7XG4gICAgc2hvcnR2ZWMuZW5jb2RlTGVuZ3RoKGVuY29kZWRTaWduYXR1cmVzTGVuZ3RoLCB0aGlzLnNpZ25hdHVyZXMubGVuZ3RoKTtcblxuICAgIGNvbnN0IHRyYW5zYWN0aW9uTGF5b3V0ID0gQnVmZmVyTGF5b3V0LnN0cnVjdDx7XG4gICAgICBlbmNvZGVkU2lnbmF0dXJlc0xlbmd0aDogVWludDhBcnJheTtcbiAgICAgIHNpZ25hdHVyZXM6IEFycmF5PFVpbnQ4QXJyYXk+O1xuICAgICAgc2VyaWFsaXplZE1lc3NhZ2U6IFVpbnQ4QXJyYXk7XG4gICAgfT4oW1xuICAgICAgQnVmZmVyTGF5b3V0LmJsb2IoXG4gICAgICAgIGVuY29kZWRTaWduYXR1cmVzTGVuZ3RoLmxlbmd0aCxcbiAgICAgICAgJ2VuY29kZWRTaWduYXR1cmVzTGVuZ3RoJyxcbiAgICAgICksXG4gICAgICBCdWZmZXJMYXlvdXQuc2VxKFxuICAgICAgICBMYXlvdXQuc2lnbmF0dXJlKCksXG4gICAgICAgIHRoaXMuc2lnbmF0dXJlcy5sZW5ndGgsXG4gICAgICAgICdzaWduYXR1cmVzJyxcbiAgICAgICksXG4gICAgICBCdWZmZXJMYXlvdXQuYmxvYihzZXJpYWxpemVkTWVzc2FnZS5sZW5ndGgsICdzZXJpYWxpemVkTWVzc2FnZScpLFxuICAgIF0pO1xuXG4gICAgY29uc3Qgc2VyaWFsaXplZFRyYW5zYWN0aW9uID0gbmV3IFVpbnQ4QXJyYXkoMjA0OCk7XG4gICAgY29uc3Qgc2VyaWFsaXplZFRyYW5zYWN0aW9uTGVuZ3RoID0gdHJhbnNhY3Rpb25MYXlvdXQuZW5jb2RlKFxuICAgICAge1xuICAgICAgICBlbmNvZGVkU2lnbmF0dXJlc0xlbmd0aDogbmV3IFVpbnQ4QXJyYXkoZW5jb2RlZFNpZ25hdHVyZXNMZW5ndGgpLFxuICAgICAgICBzaWduYXR1cmVzOiB0aGlzLnNpZ25hdHVyZXMsXG4gICAgICAgIHNlcmlhbGl6ZWRNZXNzYWdlLFxuICAgICAgfSxcbiAgICAgIHNlcmlhbGl6ZWRUcmFuc2FjdGlvbixcbiAgICApO1xuXG4gICAgcmV0dXJuIHNlcmlhbGl6ZWRUcmFuc2FjdGlvbi5zbGljZSgwLCBzZXJpYWxpemVkVHJhbnNhY3Rpb25MZW5ndGgpO1xuICB9XG5cbiAgc3RhdGljIGRlc2VyaWFsaXplKHNlcmlhbGl6ZWRUcmFuc2FjdGlvbjogVWludDhBcnJheSk6IFZlcnNpb25lZFRyYW5zYWN0aW9uIHtcbiAgICBsZXQgYnl0ZUFycmF5ID0gWy4uLnNlcmlhbGl6ZWRUcmFuc2FjdGlvbl07XG5cbiAgICBjb25zdCBzaWduYXR1cmVzID0gW107XG4gICAgY29uc3Qgc2lnbmF0dXJlc0xlbmd0aCA9IHNob3J0dmVjLmRlY29kZUxlbmd0aChieXRlQXJyYXkpO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2lnbmF0dXJlc0xlbmd0aDsgaSsrKSB7XG4gICAgICBzaWduYXR1cmVzLnB1c2goXG4gICAgICAgIG5ldyBVaW50OEFycmF5KGJ5dGVBcnJheS5zcGxpY2UoMCwgU0lHTkFUVVJFX0xFTkdUSF9JTl9CWVRFUykpLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCBtZXNzYWdlID0gVmVyc2lvbmVkTWVzc2FnZS5kZXNlcmlhbGl6ZShuZXcgVWludDhBcnJheShieXRlQXJyYXkpKTtcbiAgICByZXR1cm4gbmV3IFZlcnNpb25lZFRyYW5zYWN0aW9uKG1lc3NhZ2UsIHNpZ25hdHVyZXMpO1xuICB9XG5cbiAgc2lnbihzaWduZXJzOiBBcnJheTxTaWduZXI+KSB7XG4gICAgY29uc3QgbWVzc2FnZURhdGEgPSB0aGlzLm1lc3NhZ2Uuc2VyaWFsaXplKCk7XG4gICAgY29uc3Qgc2lnbmVyUHVia2V5cyA9IHRoaXMubWVzc2FnZS5zdGF0aWNBY2NvdW50S2V5cy5zbGljZShcbiAgICAgIDAsXG4gICAgICB0aGlzLm1lc3NhZ2UuaGVhZGVyLm51bVJlcXVpcmVkU2lnbmF0dXJlcyxcbiAgICApO1xuICAgIGZvciAoY29uc3Qgc2lnbmVyIG9mIHNpZ25lcnMpIHtcbiAgICAgIGNvbnN0IHNpZ25lckluZGV4ID0gc2lnbmVyUHVia2V5cy5maW5kSW5kZXgocHVia2V5ID0+XG4gICAgICAgIHB1YmtleS5lcXVhbHMoc2lnbmVyLnB1YmxpY0tleSksXG4gICAgICApO1xuICAgICAgYXNzZXJ0KFxuICAgICAgICBzaWduZXJJbmRleCA+PSAwLFxuICAgICAgICBgQ2Fubm90IHNpZ24gd2l0aCBub24gc2lnbmVyIGtleSAke3NpZ25lci5wdWJsaWNLZXkudG9CYXNlNTgoKX1gLFxuICAgICAgKTtcbiAgICAgIHRoaXMuc2lnbmF0dXJlc1tzaWduZXJJbmRleF0gPSBzaWduKG1lc3NhZ2VEYXRhLCBzaWduZXIuc2VjcmV0S2V5KTtcbiAgICB9XG4gIH1cblxuICBhZGRTaWduYXR1cmUocHVibGljS2V5OiBQdWJsaWNLZXksIHNpZ25hdHVyZTogVWludDhBcnJheSkge1xuICAgIGFzc2VydChzaWduYXR1cmUuYnl0ZUxlbmd0aCA9PT0gNjQsICdTaWduYXR1cmUgbXVzdCBiZSA2NCBieXRlcyBsb25nJyk7XG4gICAgY29uc3Qgc2lnbmVyUHVia2V5cyA9IHRoaXMubWVzc2FnZS5zdGF0aWNBY2NvdW50S2V5cy5zbGljZShcbiAgICAgIDAsXG4gICAgICB0aGlzLm1lc3NhZ2UuaGVhZGVyLm51bVJlcXVpcmVkU2lnbmF0dXJlcyxcbiAgICApO1xuICAgIGNvbnN0IHNpZ25lckluZGV4ID0gc2lnbmVyUHVia2V5cy5maW5kSW5kZXgocHVia2V5ID0+XG4gICAgICBwdWJrZXkuZXF1YWxzKHB1YmxpY0tleSksXG4gICAgKTtcbiAgICBhc3NlcnQoXG4gICAgICBzaWduZXJJbmRleCA+PSAwLFxuICAgICAgYENhbiBub3QgYWRkIHNpZ25hdHVyZTsgXFxgJHtwdWJsaWNLZXkudG9CYXNlNTgoKX1cXGAgaXMgbm90IHJlcXVpcmVkIHRvIHNpZ24gdGhpcyB0cmFuc2FjdGlvbmAsXG4gICAgKTtcbiAgICB0aGlzLnNpZ25hdHVyZXNbc2lnbmVySW5kZXhdID0gc2lnbmF0dXJlO1xuICB9XG59XG4iLCAiLy8gVE9ETzogVGhlc2UgY29uc3RhbnRzIHNob3VsZCBiZSByZW1vdmVkIGluIGZhdm9yIG9mIHJlYWRpbmcgdGhlbSBvdXQgb2YgYVxuLy8gU3lzY2FsbCBhY2NvdW50XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBjb25zdCBOVU1fVElDS1NfUEVSX1NFQ09ORCA9IDE2MDtcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfVElDS1NfUEVSX1NMT1QgPSA2NDtcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGNvbnN0IE5VTV9TTE9UU19QRVJfU0VDT05EID1cbiAgTlVNX1RJQ0tTX1BFUl9TRUNPTkQgLyBERUZBVUxUX1RJQ0tTX1BFUl9TTE9UO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgY29uc3QgTVNfUEVSX1NMT1QgPSAxMDAwIC8gTlVNX1NMT1RTX1BFUl9TRUNPTkQ7XG4iLCAiaW1wb3J0IHtQdWJsaWNLZXl9IGZyb20gJy4vcHVibGlja2V5JztcblxuZXhwb3J0IGNvbnN0IFNZU1ZBUl9DTE9DS19QVUJLRVkgPSBuZXcgUHVibGljS2V5KFxuICAnU3lzdmFyQzFvY2sxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMScsXG4pO1xuXG5leHBvcnQgY29uc3QgU1lTVkFSX0VQT0NIX1NDSEVEVUxFX1BVQktFWSA9IG5ldyBQdWJsaWNLZXkoXG4gICdTeXN2YXJFcG9jaFNjaGVkdTFlMTExMTExMTExMTExMTExMTExMTExMTExJyxcbik7XG5cbmV4cG9ydCBjb25zdCBTWVNWQVJfSU5TVFJVQ1RJT05TX1BVQktFWSA9IG5ldyBQdWJsaWNLZXkoXG4gICdTeXN2YXIxbnN0cnVjdGlvbnMxMTExMTExMTExMTExMTExMTExMTExMTExJyxcbik7XG5cbmV4cG9ydCBjb25zdCBTWVNWQVJfUkVDRU5UX0JMT0NLSEFTSEVTX1BVQktFWSA9IG5ldyBQdWJsaWNLZXkoXG4gICdTeXN2YXJSZWNlbnRCMW9ja0hhc2hlczExMTExMTExMTExMTExMTExMTExJyxcbik7XG5cbmV4cG9ydCBjb25zdCBTWVNWQVJfUkVOVF9QVUJLRVkgPSBuZXcgUHVibGljS2V5KFxuICAnU3lzdmFyUmVudDExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMScsXG4pO1xuXG5leHBvcnQgY29uc3QgU1lTVkFSX1JFV0FSRFNfUFVCS0VZID0gbmV3IFB1YmxpY0tleShcbiAgJ1N5c3ZhclJld2FyZHMxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEnLFxuKTtcblxuZXhwb3J0IGNvbnN0IFNZU1ZBUl9TTE9UX0hBU0hFU19QVUJLRVkgPSBuZXcgUHVibGljS2V5KFxuICAnU3lzdmFyUzFvdEhhc2hlczExMTExMTExMTExMTExMTExMTExMTExMTExMScsXG4pO1xuXG5leHBvcnQgY29uc3QgU1lTVkFSX1NMT1RfSElTVE9SWV9QVUJLRVkgPSBuZXcgUHVibGljS2V5KFxuICAnU3lzdmFyUzFvdEhpc3RvcnkxMTExMTExMTExMTExMTExMTExMTExMTExMScsXG4pO1xuXG5leHBvcnQgY29uc3QgU1lTVkFSX1NUQUtFX0hJU1RPUllfUFVCS0VZID0gbmV3IFB1YmxpY0tleShcbiAgJ1N5c3ZhclN0YWtlSGlzdG9yeTExMTExMTExMTExMTExMTExMTExMTExMTEnLFxuKTtcbiIsICJpbXBvcnQge0Nvbm5lY3Rpb24sIFNpZ25hdHVyZVJlc3VsdH0gZnJvbSAnLi4vY29ubmVjdGlvbic7XG5pbXBvcnQge1RyYW5zYWN0aW9ufSBmcm9tICcuLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgdHlwZSB7Q29uZmlybU9wdGlvbnN9IGZyb20gJy4uL2Nvbm5lY3Rpb24nO1xuaW1wb3J0IHR5cGUge1NpZ25lcn0gZnJvbSAnLi4va2V5cGFpcic7XG5pbXBvcnQgdHlwZSB7VHJhbnNhY3Rpb25TaWduYXR1cmV9IGZyb20gJy4uL3RyYW5zYWN0aW9uJztcblxuLyoqXG4gKiBTaWduLCBzZW5kIGFuZCBjb25maXJtIGEgdHJhbnNhY3Rpb24uXG4gKlxuICogSWYgYGNvbW1pdG1lbnRgIG9wdGlvbiBpcyBub3Qgc3BlY2lmaWVkLCBkZWZhdWx0cyB0byAnbWF4JyBjb21taXRtZW50LlxuICpcbiAqIEBwYXJhbSB7Q29ubmVjdGlvbn0gY29ubmVjdGlvblxuICogQHBhcmFtIHtUcmFuc2FjdGlvbn0gdHJhbnNhY3Rpb25cbiAqIEBwYXJhbSB7QXJyYXk8U2lnbmVyPn0gc2lnbmVyc1xuICogQHBhcmFtIHtDb25maXJtT3B0aW9uc30gW29wdGlvbnNdXG4gKiBAcmV0dXJucyB7UHJvbWlzZTxUcmFuc2FjdGlvblNpZ25hdHVyZT59XG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzZW5kQW5kQ29uZmlybVRyYW5zYWN0aW9uKFxuICBjb25uZWN0aW9uOiBDb25uZWN0aW9uLFxuICB0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24sXG4gIHNpZ25lcnM6IEFycmF5PFNpZ25lcj4sXG4gIG9wdGlvbnM/OiBDb25maXJtT3B0aW9ucyAmXG4gICAgUmVhZG9ubHk8e1xuICAgICAgLy8gQSBzaWduYWwgdGhhdCwgd2hlbiBhYm9ydGVkLCBjYW5jZWxzIGFueSBvdXRzdGFuZGluZyB0cmFuc2FjdGlvbiBjb25maXJtYXRpb24gb3BlcmF0aW9uc1xuICAgICAgYWJvcnRTaWduYWw/OiBBYm9ydFNpZ25hbDtcbiAgICB9Pixcbik6IFByb21pc2U8VHJhbnNhY3Rpb25TaWduYXR1cmU+IHtcbiAgY29uc3Qgc2VuZE9wdGlvbnMgPSBvcHRpb25zICYmIHtcbiAgICBza2lwUHJlZmxpZ2h0OiBvcHRpb25zLnNraXBQcmVmbGlnaHQsXG4gICAgcHJlZmxpZ2h0Q29tbWl0bWVudDogb3B0aW9ucy5wcmVmbGlnaHRDb21taXRtZW50IHx8IG9wdGlvbnMuY29tbWl0bWVudCxcbiAgICBtYXhSZXRyaWVzOiBvcHRpb25zLm1heFJldHJpZXMsXG4gICAgbWluQ29udGV4dFNsb3Q6IG9wdGlvbnMubWluQ29udGV4dFNsb3QsXG4gIH07XG5cbiAgY29uc3Qgc2lnbmF0dXJlID0gYXdhaXQgY29ubmVjdGlvbi5zZW5kVHJhbnNhY3Rpb24oXG4gICAgdHJhbnNhY3Rpb24sXG4gICAgc2lnbmVycyxcbiAgICBzZW5kT3B0aW9ucyxcbiAgKTtcblxuICBsZXQgc3RhdHVzOiBTaWduYXR1cmVSZXN1bHQ7XG4gIGlmIChcbiAgICB0cmFuc2FjdGlvbi5yZWNlbnRCbG9ja2hhc2ggIT0gbnVsbCAmJlxuICAgIHRyYW5zYWN0aW9uLmxhc3RWYWxpZEJsb2NrSGVpZ2h0ICE9IG51bGxcbiAgKSB7XG4gICAgc3RhdHVzID0gKFxuICAgICAgYXdhaXQgY29ubmVjdGlvbi5jb25maXJtVHJhbnNhY3Rpb24oXG4gICAgICAgIHtcbiAgICAgICAgICBhYm9ydFNpZ25hbDogb3B0aW9ucz8uYWJvcnRTaWduYWwsXG4gICAgICAgICAgc2lnbmF0dXJlOiBzaWduYXR1cmUsXG4gICAgICAgICAgYmxvY2toYXNoOiB0cmFuc2FjdGlvbi5yZWNlbnRCbG9ja2hhc2gsXG4gICAgICAgICAgbGFzdFZhbGlkQmxvY2tIZWlnaHQ6IHRyYW5zYWN0aW9uLmxhc3RWYWxpZEJsb2NrSGVpZ2h0LFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zICYmIG9wdGlvbnMuY29tbWl0bWVudCxcbiAgICAgIClcbiAgICApLnZhbHVlO1xuICB9IGVsc2UgaWYgKFxuICAgIHRyYW5zYWN0aW9uLm1pbk5vbmNlQ29udGV4dFNsb3QgIT0gbnVsbCAmJlxuICAgIHRyYW5zYWN0aW9uLm5vbmNlSW5mbyAhPSBudWxsXG4gICkge1xuICAgIGNvbnN0IHtub25jZUluc3RydWN0aW9ufSA9IHRyYW5zYWN0aW9uLm5vbmNlSW5mbztcbiAgICBjb25zdCBub25jZUFjY291bnRQdWJrZXkgPSBub25jZUluc3RydWN0aW9uLmtleXNbMF0ucHVia2V5O1xuICAgIHN0YXR1cyA9IChcbiAgICAgIGF3YWl0IGNvbm5lY3Rpb24uY29uZmlybVRyYW5zYWN0aW9uKFxuICAgICAgICB7XG4gICAgICAgICAgYWJvcnRTaWduYWw6IG9wdGlvbnM/LmFib3J0U2lnbmFsLFxuICAgICAgICAgIG1pbkNvbnRleHRTbG90OiB0cmFuc2FjdGlvbi5taW5Ob25jZUNvbnRleHRTbG90LFxuICAgICAgICAgIG5vbmNlQWNjb3VudFB1YmtleSxcbiAgICAgICAgICBub25jZVZhbHVlOiB0cmFuc2FjdGlvbi5ub25jZUluZm8ubm9uY2UsXG4gICAgICAgICAgc2lnbmF0dXJlLFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zICYmIG9wdGlvbnMuY29tbWl0bWVudCxcbiAgICAgIClcbiAgICApLnZhbHVlO1xuICB9IGVsc2Uge1xuICAgIGlmIChvcHRpb25zPy5hYm9ydFNpZ25hbCAhPSBudWxsKSB7XG4gICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICdzZW5kQW5kQ29uZmlybVRyYW5zYWN0aW9uKCk6IEEgdHJhbnNhY3Rpb24gd2l0aCBhIGRlcHJlY2F0ZWQgY29uZmlybWF0aW9uIHN0cmF0ZWd5IHdhcyAnICtcbiAgICAgICAgICAnc3VwcGxpZWQgYWxvbmcgd2l0aCBhbiBgYWJvcnRTaWduYWxgLiBPbmx5IHRyYW5zYWN0aW9ucyBoYXZpbmcgYGxhc3RWYWxpZEJsb2NrSGVpZ2h0YCAnICtcbiAgICAgICAgICAnb3IgYSBjb21iaW5hdGlvbiBvZiBgbm9uY2VJbmZvYCBhbmQgYG1pbk5vbmNlQ29udGV4dFNsb3RgIGFyZSBhYm9ydGFibGUuJyxcbiAgICAgICk7XG4gICAgfVxuICAgIHN0YXR1cyA9IChcbiAgICAgIGF3YWl0IGNvbm5lY3Rpb24uY29uZmlybVRyYW5zYWN0aW9uKFxuICAgICAgICBzaWduYXR1cmUsXG4gICAgICAgIG9wdGlvbnMgJiYgb3B0aW9ucy5jb21taXRtZW50LFxuICAgICAgKVxuICAgICkudmFsdWU7XG4gIH1cblxuICBpZiAoc3RhdHVzLmVycikge1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgIGBUcmFuc2FjdGlvbiAke3NpZ25hdHVyZX0gZmFpbGVkICgke0pTT04uc3RyaW5naWZ5KHN0YXR1cyl9KWAsXG4gICAgKTtcbiAgfVxuXG4gIHJldHVybiBzaWduYXR1cmU7XG59XG4iLCAiLy8genp6XG5leHBvcnQgZnVuY3Rpb24gc2xlZXAobXM6IG51bWJlcik6IFByb21pc2U8dm9pZD4ge1xuICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiBzZXRUaW1lb3V0KHJlc29sdmUsIG1zKSk7XG59XG4iLCAiaW1wb3J0IHtCdWZmZXJ9IGZyb20gJ2J1ZmZlcic7XG5pbXBvcnQgKiBhcyBCdWZmZXJMYXlvdXQgZnJvbSAnQHNvbGFuYS9idWZmZXItbGF5b3V0JztcblxuaW1wb3J0ICogYXMgTGF5b3V0IGZyb20gJy4vbGF5b3V0JztcblxuZXhwb3J0IGludGVyZmFjZSBJSW5zdHJ1Y3Rpb25JbnB1dERhdGEge1xuICByZWFkb25seSBpbnN0cnVjdGlvbjogbnVtYmVyO1xufVxuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgdHlwZSBJbnN0cnVjdGlvblR5cGU8VElucHV0RGF0YSBleHRlbmRzIElJbnN0cnVjdGlvbklucHV0RGF0YT4gPSB7XG4gIC8qKiBUaGUgSW5zdHJ1Y3Rpb24gaW5kZXggKGZyb20gc29sYW5hIHVwc3RyZWFtIHByb2dyYW0pICovXG4gIGluZGV4OiBudW1iZXI7XG4gIC8qKiBUaGUgQnVmZmVyTGF5b3V0IHRvIHVzZSB0byBidWlsZCBkYXRhICovXG4gIGxheW91dDogQnVmZmVyTGF5b3V0LkxheW91dDxUSW5wdXREYXRhPjtcbn07XG5cbi8qKlxuICogUG9wdWxhdGUgYSBidWZmZXIgb2YgaW5zdHJ1Y3Rpb24gZGF0YSB1c2luZyBhbiBJbnN0cnVjdGlvblR5cGVcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgZnVuY3Rpb24gZW5jb2RlRGF0YTxUSW5wdXREYXRhIGV4dGVuZHMgSUluc3RydWN0aW9uSW5wdXREYXRhPihcbiAgdHlwZTogSW5zdHJ1Y3Rpb25UeXBlPFRJbnB1dERhdGE+LFxuICBmaWVsZHM/OiBhbnksXG4pOiBCdWZmZXIge1xuICBjb25zdCBhbGxvY0xlbmd0aCA9XG4gICAgdHlwZS5sYXlvdXQuc3BhbiA+PSAwID8gdHlwZS5sYXlvdXQuc3BhbiA6IExheW91dC5nZXRBbGxvYyh0eXBlLCBmaWVsZHMpO1xuICBjb25zdCBkYXRhID0gQnVmZmVyLmFsbG9jKGFsbG9jTGVuZ3RoKTtcbiAgY29uc3QgbGF5b3V0RmllbGRzID0gT2JqZWN0LmFzc2lnbih7aW5zdHJ1Y3Rpb246IHR5cGUuaW5kZXh9LCBmaWVsZHMpO1xuICB0eXBlLmxheW91dC5lbmNvZGUobGF5b3V0RmllbGRzLCBkYXRhKTtcbiAgcmV0dXJuIGRhdGE7XG59XG5cbi8qKlxuICogRGVjb2RlIGluc3RydWN0aW9uIGRhdGEgYnVmZmVyIHVzaW5nIGFuIEluc3RydWN0aW9uVHlwZVxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkZWNvZGVEYXRhPFRJbnB1dERhdGEgZXh0ZW5kcyBJSW5zdHJ1Y3Rpb25JbnB1dERhdGE+KFxuICB0eXBlOiBJbnN0cnVjdGlvblR5cGU8VElucHV0RGF0YT4sXG4gIGJ1ZmZlcjogQnVmZmVyLFxuKTogVElucHV0RGF0YSB7XG4gIGxldCBkYXRhOiBUSW5wdXREYXRhO1xuICB0cnkge1xuICAgIGRhdGEgPSB0eXBlLmxheW91dC5kZWNvZGUoYnVmZmVyKTtcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIGluc3RydWN0aW9uOyAnICsgZXJyKTtcbiAgfVxuXG4gIGlmIChkYXRhLmluc3RydWN0aW9uICE9PSB0eXBlLmluZGV4KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgYGludmFsaWQgaW5zdHJ1Y3Rpb247IGluc3RydWN0aW9uIGluZGV4IG1pc21hdGNoICR7ZGF0YS5pbnN0cnVjdGlvbn0gIT0gJHt0eXBlLmluZGV4fWAsXG4gICAgKTtcbiAgfVxuXG4gIHJldHVybiBkYXRhO1xufVxuIiwgImltcG9ydCAqIGFzIEJ1ZmZlckxheW91dCBmcm9tICdAc29sYW5hL2J1ZmZlci1sYXlvdXQnO1xuXG4vKipcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9zb2xhbmEtbGFicy9zb2xhbmEvYmxvYi85MGJlZGQ3ZTA2N2I1YjhmM2RkYmI0NWRhMDBhNGU5Y2FiYjIyYzYyL3Nkay9zcmMvZmVlX2NhbGN1bGF0b3IucnMjTDctTDExXG4gKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBjb25zdCBGZWVDYWxjdWxhdG9yTGF5b3V0ID0gQnVmZmVyTGF5b3V0Lm51NjQoJ2xhbXBvcnRzUGVyU2lnbmF0dXJlJyk7XG5cbi8qKlxuICogQ2FsY3VsYXRvciBmb3IgdHJhbnNhY3Rpb24gZmVlcy5cbiAqXG4gKiBAZGVwcmVjYXRlZCBEZXByZWNhdGVkIHNpbmNlIFNvbGFuYSB2MS44LjAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRmVlQ2FsY3VsYXRvciB7XG4gIC8qKiBDb3N0IGluIGxhbXBvcnRzIHRvIHZhbGlkYXRlIGEgc2lnbmF0dXJlLiAqL1xuICBsYW1wb3J0c1BlclNpZ25hdHVyZTogbnVtYmVyO1xufVxuIiwgImltcG9ydCAqIGFzIEJ1ZmZlckxheW91dCBmcm9tICdAc29sYW5hL2J1ZmZlci1sYXlvdXQnO1xuaW1wb3J0IHtCdWZmZXJ9IGZyb20gJ2J1ZmZlcic7XG5cbmltcG9ydCAqIGFzIExheW91dCBmcm9tICcuL2xheW91dCc7XG5pbXBvcnQge1B1YmxpY0tleX0gZnJvbSAnLi9wdWJsaWNrZXknO1xuaW1wb3J0IHR5cGUge0ZlZUNhbGN1bGF0b3J9IGZyb20gJy4vZmVlLWNhbGN1bGF0b3InO1xuaW1wb3J0IHtGZWVDYWxjdWxhdG9yTGF5b3V0fSBmcm9tICcuL2ZlZS1jYWxjdWxhdG9yJztcbmltcG9ydCB7dG9CdWZmZXJ9IGZyb20gJy4vdXRpbHMvdG8tYnVmZmVyJztcblxuLyoqXG4gKiBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3NvbGFuYS1sYWJzL3NvbGFuYS9ibG9iLzBlYTI4NDNlYzljZGM1MTc1NzJiOGU2MmM5NTlmNDFiNTVjZjQ0NTMvc2RrL3NyYy9ub25jZV9zdGF0ZS5ycyNMMjktTDMyXG4gKlxuICogQGludGVybmFsXG4gKi9cbmNvbnN0IE5vbmNlQWNjb3VudExheW91dCA9IEJ1ZmZlckxheW91dC5zdHJ1Y3Q8XG4gIFJlYWRvbmx5PHtcbiAgICBhdXRob3JpemVkUHVia2V5OiBVaW50OEFycmF5O1xuICAgIGZlZUNhbGN1bGF0b3I6IFJlYWRvbmx5PHtcbiAgICAgIGxhbXBvcnRzUGVyU2lnbmF0dXJlOiBudW1iZXI7XG4gICAgfT47XG4gICAgbm9uY2U6IFVpbnQ4QXJyYXk7XG4gICAgc3RhdGU6IG51bWJlcjtcbiAgICB2ZXJzaW9uOiBudW1iZXI7XG4gIH0+XG4+KFtcbiAgQnVmZmVyTGF5b3V0LnUzMigndmVyc2lvbicpLFxuICBCdWZmZXJMYXlvdXQudTMyKCdzdGF0ZScpLFxuICBMYXlvdXQucHVibGljS2V5KCdhdXRob3JpemVkUHVia2V5JyksXG4gIExheW91dC5wdWJsaWNLZXkoJ25vbmNlJyksXG4gIEJ1ZmZlckxheW91dC5zdHJ1Y3Q8UmVhZG9ubHk8e2xhbXBvcnRzUGVyU2lnbmF0dXJlOiBudW1iZXJ9Pj4oXG4gICAgW0ZlZUNhbGN1bGF0b3JMYXlvdXRdLFxuICAgICdmZWVDYWxjdWxhdG9yJyxcbiAgKSxcbl0pO1xuXG5leHBvcnQgY29uc3QgTk9OQ0VfQUNDT1VOVF9MRU5HVEggPSBOb25jZUFjY291bnRMYXlvdXQuc3BhbjtcblxuLyoqXG4gKiBBIGR1cmFibGUgbm9uY2UgaXMgYSAzMiBieXRlIHZhbHVlIGVuY29kZWQgYXMgYSBiYXNlNTggc3RyaW5nLlxuICovXG5leHBvcnQgdHlwZSBEdXJhYmxlTm9uY2UgPSBzdHJpbmc7XG5cbnR5cGUgTm9uY2VBY2NvdW50QXJncyA9IHtcbiAgYXV0aG9yaXplZFB1YmtleTogUHVibGljS2V5O1xuICBub25jZTogRHVyYWJsZU5vbmNlO1xuICBmZWVDYWxjdWxhdG9yOiBGZWVDYWxjdWxhdG9yO1xufTtcblxuLyoqXG4gKiBOb25jZUFjY291bnQgY2xhc3NcbiAqL1xuZXhwb3J0IGNsYXNzIE5vbmNlQWNjb3VudCB7XG4gIGF1dGhvcml6ZWRQdWJrZXk6IFB1YmxpY0tleTtcbiAgbm9uY2U6IER1cmFibGVOb25jZTtcbiAgZmVlQ2FsY3VsYXRvcjogRmVlQ2FsY3VsYXRvcjtcblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBjb25zdHJ1Y3RvcihhcmdzOiBOb25jZUFjY291bnRBcmdzKSB7XG4gICAgdGhpcy5hdXRob3JpemVkUHVia2V5ID0gYXJncy5hdXRob3JpemVkUHVia2V5O1xuICAgIHRoaXMubm9uY2UgPSBhcmdzLm5vbmNlO1xuICAgIHRoaXMuZmVlQ2FsY3VsYXRvciA9IGFyZ3MuZmVlQ2FsY3VsYXRvcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXNlcmlhbGl6ZSBOb25jZUFjY291bnQgZnJvbSB0aGUgYWNjb3VudCBkYXRhLlxuICAgKlxuICAgKiBAcGFyYW0gYnVmZmVyIGFjY291bnQgZGF0YVxuICAgKiBAcmV0dXJuIE5vbmNlQWNjb3VudFxuICAgKi9cbiAgc3RhdGljIGZyb21BY2NvdW50RGF0YShcbiAgICBidWZmZXI6IEJ1ZmZlciB8IFVpbnQ4QXJyYXkgfCBBcnJheTxudW1iZXI+LFxuICApOiBOb25jZUFjY291bnQge1xuICAgIGNvbnN0IG5vbmNlQWNjb3VudCA9IE5vbmNlQWNjb3VudExheW91dC5kZWNvZGUodG9CdWZmZXIoYnVmZmVyKSwgMCk7XG4gICAgcmV0dXJuIG5ldyBOb25jZUFjY291bnQoe1xuICAgICAgYXV0aG9yaXplZFB1YmtleTogbmV3IFB1YmxpY0tleShub25jZUFjY291bnQuYXV0aG9yaXplZFB1YmtleSksXG4gICAgICBub25jZTogbmV3IFB1YmxpY0tleShub25jZUFjY291bnQubm9uY2UpLnRvU3RyaW5nKCksXG4gICAgICBmZWVDYWxjdWxhdG9yOiBub25jZUFjY291bnQuZmVlQ2FsY3VsYXRvcixcbiAgICB9KTtcbiAgfVxufVxuIiwgImltcG9ydCB7QnVmZmVyfSBmcm9tICdidWZmZXInO1xuaW1wb3J0IHtibG9iLCBMYXlvdXR9IGZyb20gJ0Bzb2xhbmEvYnVmZmVyLWxheW91dCc7XG5pbXBvcnQge3RvQmlnSW50TEUsIHRvQnVmZmVyTEV9IGZyb20gJ2JpZ2ludC1idWZmZXInO1xuXG5pbnRlcmZhY2UgRW5jb2RlRGVjb2RlPFQ+IHtcbiAgZGVjb2RlKGJ1ZmZlcjogQnVmZmVyLCBvZmZzZXQ/OiBudW1iZXIpOiBUO1xuICBlbmNvZGUoc3JjOiBULCBidWZmZXI6IEJ1ZmZlciwgb2Zmc2V0PzogbnVtYmVyKTogbnVtYmVyO1xufVxuXG5jb25zdCBlbmNvZGVEZWNvZGUgPSA8VD4obGF5b3V0OiBMYXlvdXQ8VD4pOiBFbmNvZGVEZWNvZGU8VD4gPT4ge1xuICBjb25zdCBkZWNvZGUgPSBsYXlvdXQuZGVjb2RlLmJpbmQobGF5b3V0KTtcbiAgY29uc3QgZW5jb2RlID0gbGF5b3V0LmVuY29kZS5iaW5kKGxheW91dCk7XG4gIHJldHVybiB7ZGVjb2RlLCBlbmNvZGV9O1xufTtcblxuY29uc3QgYmlnSW50ID1cbiAgKGxlbmd0aDogbnVtYmVyKSA9PlxuICAocHJvcGVydHk/OiBzdHJpbmcpOiBMYXlvdXQ8YmlnaW50PiA9PiB7XG4gICAgY29uc3QgbGF5b3V0ID0gYmxvYihsZW5ndGgsIHByb3BlcnR5KTtcbiAgICBjb25zdCB7ZW5jb2RlLCBkZWNvZGV9ID0gZW5jb2RlRGVjb2RlKGxheW91dCk7XG5cbiAgICBjb25zdCBiaWdJbnRMYXlvdXQgPSBsYXlvdXQgYXMgTGF5b3V0PHVua25vd24+IGFzIExheW91dDxiaWdpbnQ+O1xuXG4gICAgYmlnSW50TGF5b3V0LmRlY29kZSA9IChidWZmZXI6IEJ1ZmZlciwgb2Zmc2V0OiBudW1iZXIpID0+IHtcbiAgICAgIGNvbnN0IHNyYyA9IGRlY29kZShidWZmZXIsIG9mZnNldCk7XG4gICAgICByZXR1cm4gdG9CaWdJbnRMRShCdWZmZXIuZnJvbShzcmMpKTtcbiAgICB9O1xuXG4gICAgYmlnSW50TGF5b3V0LmVuY29kZSA9IChiaWdJbnQ6IGJpZ2ludCwgYnVmZmVyOiBCdWZmZXIsIG9mZnNldDogbnVtYmVyKSA9PiB7XG4gICAgICBjb25zdCBzcmMgPSB0b0J1ZmZlckxFKGJpZ0ludCwgbGVuZ3RoKTtcbiAgICAgIHJldHVybiBlbmNvZGUoc3JjLCBidWZmZXIsIG9mZnNldCk7XG4gICAgfTtcblxuICAgIHJldHVybiBiaWdJbnRMYXlvdXQ7XG4gIH07XG5cbmV4cG9ydCBjb25zdCB1NjQgPSBiaWdJbnQoOCk7XG5cbmV4cG9ydCBjb25zdCB1MTI4ID0gYmlnSW50KDE2KTtcblxuZXhwb3J0IGNvbnN0IHUxOTIgPSBiaWdJbnQoMjQpO1xuXG5leHBvcnQgY29uc3QgdTI1NiA9IGJpZ0ludCgzMik7XG4iLCAiaW1wb3J0ICogYXMgQnVmZmVyTGF5b3V0IGZyb20gJ0Bzb2xhbmEvYnVmZmVyLWxheW91dCc7XG5cbmltcG9ydCB7XG4gIGVuY29kZURhdGEsXG4gIGRlY29kZURhdGEsXG4gIEluc3RydWN0aW9uVHlwZSxcbiAgSUluc3RydWN0aW9uSW5wdXREYXRhLFxufSBmcm9tICcuLi9pbnN0cnVjdGlvbic7XG5pbXBvcnQgKiBhcyBMYXlvdXQgZnJvbSAnLi4vbGF5b3V0JztcbmltcG9ydCB7Tk9OQ0VfQUNDT1VOVF9MRU5HVEh9IGZyb20gJy4uL25vbmNlLWFjY291bnQnO1xuaW1wb3J0IHtQdWJsaWNLZXl9IGZyb20gJy4uL3B1YmxpY2tleSc7XG5pbXBvcnQge1NZU1ZBUl9SRUNFTlRfQkxPQ0tIQVNIRVNfUFVCS0VZLCBTWVNWQVJfUkVOVF9QVUJLRVl9IGZyb20gJy4uL3N5c3Zhcic7XG5pbXBvcnQge1RyYW5zYWN0aW9uLCBUcmFuc2FjdGlvbkluc3RydWN0aW9ufSBmcm9tICcuLi90cmFuc2FjdGlvbic7XG5pbXBvcnQge3RvQnVmZmVyfSBmcm9tICcuLi91dGlscy90by1idWZmZXInO1xuaW1wb3J0IHt1NjR9IGZyb20gJy4uL3V0aWxzL2JpZ2ludCc7XG5cbi8qKlxuICogQ3JlYXRlIGFjY291bnQgc3lzdGVtIHRyYW5zYWN0aW9uIHBhcmFtc1xuICovXG5leHBvcnQgdHlwZSBDcmVhdGVBY2NvdW50UGFyYW1zID0ge1xuICAvKiogVGhlIGFjY291bnQgdGhhdCB3aWxsIHRyYW5zZmVyIGxhbXBvcnRzIHRvIHRoZSBjcmVhdGVkIGFjY291bnQgKi9cbiAgZnJvbVB1YmtleTogUHVibGljS2V5O1xuICAvKiogUHVibGljIGtleSBvZiB0aGUgY3JlYXRlZCBhY2NvdW50ICovXG4gIG5ld0FjY291bnRQdWJrZXk6IFB1YmxpY0tleTtcbiAgLyoqIEFtb3VudCBvZiBsYW1wb3J0cyB0byB0cmFuc2ZlciB0byB0aGUgY3JlYXRlZCBhY2NvdW50ICovXG4gIGxhbXBvcnRzOiBudW1iZXI7XG4gIC8qKiBBbW91bnQgb2Ygc3BhY2UgaW4gYnl0ZXMgdG8gYWxsb2NhdGUgdG8gdGhlIGNyZWF0ZWQgYWNjb3VudCAqL1xuICBzcGFjZTogbnVtYmVyO1xuICAvKiogUHVibGljIGtleSBvZiB0aGUgcHJvZ3JhbSB0byBhc3NpZ24gYXMgdGhlIG93bmVyIG9mIHRoZSBjcmVhdGVkIGFjY291bnQgKi9cbiAgcHJvZ3JhbUlkOiBQdWJsaWNLZXk7XG59O1xuXG4vKipcbiAqIFRyYW5zZmVyIHN5c3RlbSB0cmFuc2FjdGlvbiBwYXJhbXNcbiAqL1xuZXhwb3J0IHR5cGUgVHJhbnNmZXJQYXJhbXMgPSB7XG4gIC8qKiBBY2NvdW50IHRoYXQgd2lsbCB0cmFuc2ZlciBsYW1wb3J0cyAqL1xuICBmcm9tUHVia2V5OiBQdWJsaWNLZXk7XG4gIC8qKiBBY2NvdW50IHRoYXQgd2lsbCByZWNlaXZlIHRyYW5zZmVycmVkIGxhbXBvcnRzICovXG4gIHRvUHVia2V5OiBQdWJsaWNLZXk7XG4gIC8qKiBBbW91bnQgb2YgbGFtcG9ydHMgdG8gdHJhbnNmZXIgKi9cbiAgbGFtcG9ydHM6IG51bWJlciB8IGJpZ2ludDtcbn07XG5cbi8qKlxuICogQXNzaWduIHN5c3RlbSB0cmFuc2FjdGlvbiBwYXJhbXNcbiAqL1xuZXhwb3J0IHR5cGUgQXNzaWduUGFyYW1zID0ge1xuICAvKiogUHVibGljIGtleSBvZiB0aGUgYWNjb3VudCB3aGljaCB3aWxsIGJlIGFzc2lnbmVkIGEgbmV3IG93bmVyICovXG4gIGFjY291bnRQdWJrZXk6IFB1YmxpY0tleTtcbiAgLyoqIFB1YmxpYyBrZXkgb2YgdGhlIHByb2dyYW0gdG8gYXNzaWduIGFzIHRoZSBvd25lciAqL1xuICBwcm9ncmFtSWQ6IFB1YmxpY0tleTtcbn07XG5cbi8qKlxuICogQ3JlYXRlIGFjY291bnQgd2l0aCBzZWVkIHN5c3RlbSB0cmFuc2FjdGlvbiBwYXJhbXNcbiAqL1xuZXhwb3J0IHR5cGUgQ3JlYXRlQWNjb3VudFdpdGhTZWVkUGFyYW1zID0ge1xuICAvKiogVGhlIGFjY291bnQgdGhhdCB3aWxsIHRyYW5zZmVyIGxhbXBvcnRzIHRvIHRoZSBjcmVhdGVkIGFjY291bnQgKi9cbiAgZnJvbVB1YmtleTogUHVibGljS2V5O1xuICAvKiogUHVibGljIGtleSBvZiB0aGUgY3JlYXRlZCBhY2NvdW50LiBNdXN0IGJlIHByZS1jYWxjdWxhdGVkIHdpdGggUHVibGljS2V5LmNyZWF0ZVdpdGhTZWVkKCkgKi9cbiAgbmV3QWNjb3VudFB1YmtleTogUHVibGljS2V5O1xuICAvKiogQmFzZSBwdWJsaWMga2V5IHRvIHVzZSB0byBkZXJpdmUgdGhlIGFkZHJlc3Mgb2YgdGhlIGNyZWF0ZWQgYWNjb3VudC4gTXVzdCBiZSB0aGUgc2FtZSBhcyB0aGUgYmFzZSBrZXkgdXNlZCB0byBjcmVhdGUgYG5ld0FjY291bnRQdWJrZXlgICovXG4gIGJhc2VQdWJrZXk6IFB1YmxpY0tleTtcbiAgLyoqIFNlZWQgdG8gdXNlIHRvIGRlcml2ZSB0aGUgYWRkcmVzcyBvZiB0aGUgY3JlYXRlZCBhY2NvdW50LiBNdXN0IGJlIHRoZSBzYW1lIGFzIHRoZSBzZWVkIHVzZWQgdG8gY3JlYXRlIGBuZXdBY2NvdW50UHVia2V5YCAqL1xuICBzZWVkOiBzdHJpbmc7XG4gIC8qKiBBbW91bnQgb2YgbGFtcG9ydHMgdG8gdHJhbnNmZXIgdG8gdGhlIGNyZWF0ZWQgYWNjb3VudCAqL1xuICBsYW1wb3J0czogbnVtYmVyO1xuICAvKiogQW1vdW50IG9mIHNwYWNlIGluIGJ5dGVzIHRvIGFsbG9jYXRlIHRvIHRoZSBjcmVhdGVkIGFjY291bnQgKi9cbiAgc3BhY2U6IG51bWJlcjtcbiAgLyoqIFB1YmxpYyBrZXkgb2YgdGhlIHByb2dyYW0gdG8gYXNzaWduIGFzIHRoZSBvd25lciBvZiB0aGUgY3JlYXRlZCBhY2NvdW50ICovXG4gIHByb2dyYW1JZDogUHVibGljS2V5O1xufTtcblxuLyoqXG4gKiBDcmVhdGUgbm9uY2UgYWNjb3VudCBzeXN0ZW0gdHJhbnNhY3Rpb24gcGFyYW1zXG4gKi9cbmV4cG9ydCB0eXBlIENyZWF0ZU5vbmNlQWNjb3VudFBhcmFtcyA9IHtcbiAgLyoqIFRoZSBhY2NvdW50IHRoYXQgd2lsbCB0cmFuc2ZlciBsYW1wb3J0cyB0byB0aGUgY3JlYXRlZCBub25jZSBhY2NvdW50ICovXG4gIGZyb21QdWJrZXk6IFB1YmxpY0tleTtcbiAgLyoqIFB1YmxpYyBrZXkgb2YgdGhlIGNyZWF0ZWQgbm9uY2UgYWNjb3VudCAqL1xuICBub25jZVB1YmtleTogUHVibGljS2V5O1xuICAvKiogUHVibGljIGtleSB0byBzZXQgYXMgYXV0aG9yaXR5IG9mIHRoZSBjcmVhdGVkIG5vbmNlIGFjY291bnQgKi9cbiAgYXV0aG9yaXplZFB1YmtleTogUHVibGljS2V5O1xuICAvKiogQW1vdW50IG9mIGxhbXBvcnRzIHRvIHRyYW5zZmVyIHRvIHRoZSBjcmVhdGVkIG5vbmNlIGFjY291bnQgKi9cbiAgbGFtcG9ydHM6IG51bWJlcjtcbn07XG5cbi8qKlxuICogQ3JlYXRlIG5vbmNlIGFjY291bnQgd2l0aCBzZWVkIHN5c3RlbSB0cmFuc2FjdGlvbiBwYXJhbXNcbiAqL1xuZXhwb3J0IHR5cGUgQ3JlYXRlTm9uY2VBY2NvdW50V2l0aFNlZWRQYXJhbXMgPSB7XG4gIC8qKiBUaGUgYWNjb3VudCB0aGF0IHdpbGwgdHJhbnNmZXIgbGFtcG9ydHMgdG8gdGhlIGNyZWF0ZWQgbm9uY2UgYWNjb3VudCAqL1xuICBmcm9tUHVia2V5OiBQdWJsaWNLZXk7XG4gIC8qKiBQdWJsaWMga2V5IG9mIHRoZSBjcmVhdGVkIG5vbmNlIGFjY291bnQgKi9cbiAgbm9uY2VQdWJrZXk6IFB1YmxpY0tleTtcbiAgLyoqIFB1YmxpYyBrZXkgdG8gc2V0IGFzIGF1dGhvcml0eSBvZiB0aGUgY3JlYXRlZCBub25jZSBhY2NvdW50ICovXG4gIGF1dGhvcml6ZWRQdWJrZXk6IFB1YmxpY0tleTtcbiAgLyoqIEFtb3VudCBvZiBsYW1wb3J0cyB0byB0cmFuc2ZlciB0byB0aGUgY3JlYXRlZCBub25jZSBhY2NvdW50ICovXG4gIGxhbXBvcnRzOiBudW1iZXI7XG4gIC8qKiBCYXNlIHB1YmxpYyBrZXkgdG8gdXNlIHRvIGRlcml2ZSB0aGUgYWRkcmVzcyBvZiB0aGUgbm9uY2UgYWNjb3VudCAqL1xuICBiYXNlUHVia2V5OiBQdWJsaWNLZXk7XG4gIC8qKiBTZWVkIHRvIHVzZSB0byBkZXJpdmUgdGhlIGFkZHJlc3Mgb2YgdGhlIG5vbmNlIGFjY291bnQgKi9cbiAgc2VlZDogc3RyaW5nO1xufTtcblxuLyoqXG4gKiBJbml0aWFsaXplIG5vbmNlIGFjY291bnQgc3lzdGVtIGluc3RydWN0aW9uIHBhcmFtc1xuICovXG5leHBvcnQgdHlwZSBJbml0aWFsaXplTm9uY2VQYXJhbXMgPSB7XG4gIC8qKiBOb25jZSBhY2NvdW50IHdoaWNoIHdpbGwgYmUgaW5pdGlhbGl6ZWQgKi9cbiAgbm9uY2VQdWJrZXk6IFB1YmxpY0tleTtcbiAgLyoqIFB1YmxpYyBrZXkgdG8gc2V0IGFzIGF1dGhvcml0eSBvZiB0aGUgaW5pdGlhbGl6ZWQgbm9uY2UgYWNjb3VudCAqL1xuICBhdXRob3JpemVkUHVia2V5OiBQdWJsaWNLZXk7XG59O1xuXG4vKipcbiAqIEFkdmFuY2Ugbm9uY2UgYWNjb3VudCBzeXN0ZW0gaW5zdHJ1Y3Rpb24gcGFyYW1zXG4gKi9cbmV4cG9ydCB0eXBlIEFkdmFuY2VOb25jZVBhcmFtcyA9IHtcbiAgLyoqIE5vbmNlIGFjY291bnQgKi9cbiAgbm9uY2VQdWJrZXk6IFB1YmxpY0tleTtcbiAgLyoqIFB1YmxpYyBrZXkgb2YgdGhlIG5vbmNlIGF1dGhvcml0eSAqL1xuICBhdXRob3JpemVkUHVia2V5OiBQdWJsaWNLZXk7XG59O1xuXG4vKipcbiAqIFdpdGhkcmF3IG5vbmNlIGFjY291bnQgc3lzdGVtIHRyYW5zYWN0aW9uIHBhcmFtc1xuICovXG5leHBvcnQgdHlwZSBXaXRoZHJhd05vbmNlUGFyYW1zID0ge1xuICAvKiogTm9uY2UgYWNjb3VudCAqL1xuICBub25jZVB1YmtleTogUHVibGljS2V5O1xuICAvKiogUHVibGljIGtleSBvZiB0aGUgbm9uY2UgYXV0aG9yaXR5ICovXG4gIGF1dGhvcml6ZWRQdWJrZXk6IFB1YmxpY0tleTtcbiAgLyoqIFB1YmxpYyBrZXkgb2YgdGhlIGFjY291bnQgd2hpY2ggd2lsbCByZWNlaXZlIHRoZSB3aXRoZHJhd24gbm9uY2UgYWNjb3VudCBiYWxhbmNlICovXG4gIHRvUHVia2V5OiBQdWJsaWNLZXk7XG4gIC8qKiBBbW91bnQgb2YgbGFtcG9ydHMgdG8gd2l0aGRyYXcgZnJvbSB0aGUgbm9uY2UgYWNjb3VudCAqL1xuICBsYW1wb3J0czogbnVtYmVyO1xufTtcblxuLyoqXG4gKiBBdXRob3JpemUgbm9uY2UgYWNjb3VudCBzeXN0ZW0gdHJhbnNhY3Rpb24gcGFyYW1zXG4gKi9cbmV4cG9ydCB0eXBlIEF1dGhvcml6ZU5vbmNlUGFyYW1zID0ge1xuICAvKiogTm9uY2UgYWNjb3VudCAqL1xuICBub25jZVB1YmtleTogUHVibGljS2V5O1xuICAvKiogUHVibGljIGtleSBvZiB0aGUgY3VycmVudCBub25jZSBhdXRob3JpdHkgKi9cbiAgYXV0aG9yaXplZFB1YmtleTogUHVibGljS2V5O1xuICAvKiogUHVibGljIGtleSB0byBzZXQgYXMgdGhlIG5ldyBub25jZSBhdXRob3JpdHkgKi9cbiAgbmV3QXV0aG9yaXplZFB1YmtleTogUHVibGljS2V5O1xufTtcblxuLyoqXG4gKiBBbGxvY2F0ZSBhY2NvdW50IHN5c3RlbSB0cmFuc2FjdGlvbiBwYXJhbXNcbiAqL1xuZXhwb3J0IHR5cGUgQWxsb2NhdGVQYXJhbXMgPSB7XG4gIC8qKiBBY2NvdW50IHRvIGFsbG9jYXRlICovXG4gIGFjY291bnRQdWJrZXk6IFB1YmxpY0tleTtcbiAgLyoqIEFtb3VudCBvZiBzcGFjZSBpbiBieXRlcyB0byBhbGxvY2F0ZSAqL1xuICBzcGFjZTogbnVtYmVyO1xufTtcblxuLyoqXG4gKiBBbGxvY2F0ZSBhY2NvdW50IHdpdGggc2VlZCBzeXN0ZW0gdHJhbnNhY3Rpb24gcGFyYW1zXG4gKi9cbmV4cG9ydCB0eXBlIEFsbG9jYXRlV2l0aFNlZWRQYXJhbXMgPSB7XG4gIC8qKiBBY2NvdW50IHRvIGFsbG9jYXRlICovXG4gIGFjY291bnRQdWJrZXk6IFB1YmxpY0tleTtcbiAgLyoqIEJhc2UgcHVibGljIGtleSB0byB1c2UgdG8gZGVyaXZlIHRoZSBhZGRyZXNzIG9mIHRoZSBhbGxvY2F0ZWQgYWNjb3VudCAqL1xuICBiYXNlUHVia2V5OiBQdWJsaWNLZXk7XG4gIC8qKiBTZWVkIHRvIHVzZSB0byBkZXJpdmUgdGhlIGFkZHJlc3Mgb2YgdGhlIGFsbG9jYXRlZCBhY2NvdW50ICovXG4gIHNlZWQ6IHN0cmluZztcbiAgLyoqIEFtb3VudCBvZiBzcGFjZSBpbiBieXRlcyB0byBhbGxvY2F0ZSAqL1xuICBzcGFjZTogbnVtYmVyO1xuICAvKiogUHVibGljIGtleSBvZiB0aGUgcHJvZ3JhbSB0byBhc3NpZ24gYXMgdGhlIG93bmVyIG9mIHRoZSBhbGxvY2F0ZWQgYWNjb3VudCAqL1xuICBwcm9ncmFtSWQ6IFB1YmxpY0tleTtcbn07XG5cbi8qKlxuICogQXNzaWduIGFjY291bnQgd2l0aCBzZWVkIHN5c3RlbSB0cmFuc2FjdGlvbiBwYXJhbXNcbiAqL1xuZXhwb3J0IHR5cGUgQXNzaWduV2l0aFNlZWRQYXJhbXMgPSB7XG4gIC8qKiBQdWJsaWMga2V5IG9mIHRoZSBhY2NvdW50IHdoaWNoIHdpbGwgYmUgYXNzaWduZWQgYSBuZXcgb3duZXIgKi9cbiAgYWNjb3VudFB1YmtleTogUHVibGljS2V5O1xuICAvKiogQmFzZSBwdWJsaWMga2V5IHRvIHVzZSB0byBkZXJpdmUgdGhlIGFkZHJlc3Mgb2YgdGhlIGFzc2lnbmVkIGFjY291bnQgKi9cbiAgYmFzZVB1YmtleTogUHVibGljS2V5O1xuICAvKiogU2VlZCB0byB1c2UgdG8gZGVyaXZlIHRoZSBhZGRyZXNzIG9mIHRoZSBhc3NpZ25lZCBhY2NvdW50ICovXG4gIHNlZWQ6IHN0cmluZztcbiAgLyoqIFB1YmxpYyBrZXkgb2YgdGhlIHByb2dyYW0gdG8gYXNzaWduIGFzIHRoZSBvd25lciAqL1xuICBwcm9ncmFtSWQ6IFB1YmxpY0tleTtcbn07XG5cbi8qKlxuICogVHJhbnNmZXIgd2l0aCBzZWVkIHN5c3RlbSB0cmFuc2FjdGlvbiBwYXJhbXNcbiAqL1xuZXhwb3J0IHR5cGUgVHJhbnNmZXJXaXRoU2VlZFBhcmFtcyA9IHtcbiAgLyoqIEFjY291bnQgdGhhdCB3aWxsIHRyYW5zZmVyIGxhbXBvcnRzICovXG4gIGZyb21QdWJrZXk6IFB1YmxpY0tleTtcbiAgLyoqIEJhc2UgcHVibGljIGtleSB0byB1c2UgdG8gZGVyaXZlIHRoZSBmdW5kaW5nIGFjY291bnQgYWRkcmVzcyAqL1xuICBiYXNlUHVia2V5OiBQdWJsaWNLZXk7XG4gIC8qKiBBY2NvdW50IHRoYXQgd2lsbCByZWNlaXZlIHRyYW5zZmVycmVkIGxhbXBvcnRzICovXG4gIHRvUHVia2V5OiBQdWJsaWNLZXk7XG4gIC8qKiBBbW91bnQgb2YgbGFtcG9ydHMgdG8gdHJhbnNmZXIgKi9cbiAgbGFtcG9ydHM6IG51bWJlciB8IGJpZ2ludDtcbiAgLyoqIFNlZWQgdG8gdXNlIHRvIGRlcml2ZSB0aGUgZnVuZGluZyBhY2NvdW50IGFkZHJlc3MgKi9cbiAgc2VlZDogc3RyaW5nO1xuICAvKiogUHJvZ3JhbSBpZCB0byB1c2UgdG8gZGVyaXZlIHRoZSBmdW5kaW5nIGFjY291bnQgYWRkcmVzcyAqL1xuICBwcm9ncmFtSWQ6IFB1YmxpY0tleTtcbn07XG5cbi8qKiBEZWNvZGVkIHRyYW5zZmVyIHN5c3RlbSB0cmFuc2FjdGlvbiBpbnN0cnVjdGlvbiAqL1xuZXhwb3J0IHR5cGUgRGVjb2RlZFRyYW5zZmVySW5zdHJ1Y3Rpb24gPSB7XG4gIC8qKiBBY2NvdW50IHRoYXQgd2lsbCB0cmFuc2ZlciBsYW1wb3J0cyAqL1xuICBmcm9tUHVia2V5OiBQdWJsaWNLZXk7XG4gIC8qKiBBY2NvdW50IHRoYXQgd2lsbCByZWNlaXZlIHRyYW5zZmVycmVkIGxhbXBvcnRzICovXG4gIHRvUHVia2V5OiBQdWJsaWNLZXk7XG4gIC8qKiBBbW91bnQgb2YgbGFtcG9ydHMgdG8gdHJhbnNmZXIgKi9cbiAgbGFtcG9ydHM6IGJpZ2ludDtcbn07XG5cbi8qKiBEZWNvZGVkIHRyYW5zZmVyV2l0aFNlZWQgc3lzdGVtIHRyYW5zYWN0aW9uIGluc3RydWN0aW9uICovXG5leHBvcnQgdHlwZSBEZWNvZGVkVHJhbnNmZXJXaXRoU2VlZEluc3RydWN0aW9uID0ge1xuICAvKiogQWNjb3VudCB0aGF0IHdpbGwgdHJhbnNmZXIgbGFtcG9ydHMgKi9cbiAgZnJvbVB1YmtleTogUHVibGljS2V5O1xuICAvKiogQmFzZSBwdWJsaWMga2V5IHRvIHVzZSB0byBkZXJpdmUgdGhlIGZ1bmRpbmcgYWNjb3VudCBhZGRyZXNzICovXG4gIGJhc2VQdWJrZXk6IFB1YmxpY0tleTtcbiAgLyoqIEFjY291bnQgdGhhdCB3aWxsIHJlY2VpdmUgdHJhbnNmZXJyZWQgbGFtcG9ydHMgKi9cbiAgdG9QdWJrZXk6IFB1YmxpY0tleTtcbiAgLyoqIEFtb3VudCBvZiBsYW1wb3J0cyB0byB0cmFuc2ZlciAqL1xuICBsYW1wb3J0czogYmlnaW50O1xuICAvKiogU2VlZCB0byB1c2UgdG8gZGVyaXZlIHRoZSBmdW5kaW5nIGFjY291bnQgYWRkcmVzcyAqL1xuICBzZWVkOiBzdHJpbmc7XG4gIC8qKiBQcm9ncmFtIGlkIHRvIHVzZSB0byBkZXJpdmUgdGhlIGZ1bmRpbmcgYWNjb3VudCBhZGRyZXNzICovXG4gIHByb2dyYW1JZDogUHVibGljS2V5O1xufTtcblxuLyoqXG4gKiBTeXN0ZW0gSW5zdHJ1Y3Rpb24gY2xhc3NcbiAqL1xuZXhwb3J0IGNsYXNzIFN5c3RlbUluc3RydWN0aW9uIHtcbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIC8qKlxuICAgKiBEZWNvZGUgYSBzeXN0ZW0gaW5zdHJ1Y3Rpb24gYW5kIHJldHJpZXZlIHRoZSBpbnN0cnVjdGlvbiB0eXBlLlxuICAgKi9cbiAgc3RhdGljIGRlY29kZUluc3RydWN0aW9uVHlwZShcbiAgICBpbnN0cnVjdGlvbjogVHJhbnNhY3Rpb25JbnN0cnVjdGlvbixcbiAgKTogU3lzdGVtSW5zdHJ1Y3Rpb25UeXBlIHtcbiAgICB0aGlzLmNoZWNrUHJvZ3JhbUlkKGluc3RydWN0aW9uLnByb2dyYW1JZCk7XG5cbiAgICBjb25zdCBpbnN0cnVjdGlvblR5cGVMYXlvdXQgPSBCdWZmZXJMYXlvdXQudTMyKCdpbnN0cnVjdGlvbicpO1xuICAgIGNvbnN0IHR5cGVJbmRleCA9IGluc3RydWN0aW9uVHlwZUxheW91dC5kZWNvZGUoaW5zdHJ1Y3Rpb24uZGF0YSk7XG5cbiAgICBsZXQgdHlwZTogU3lzdGVtSW5zdHJ1Y3Rpb25UeXBlIHwgdW5kZWZpbmVkO1xuICAgIGZvciAoY29uc3QgW2l4VHlwZSwgbGF5b3V0XSBvZiBPYmplY3QuZW50cmllcyhTWVNURU1fSU5TVFJVQ1RJT05fTEFZT1VUUykpIHtcbiAgICAgIGlmIChsYXlvdXQuaW5kZXggPT0gdHlwZUluZGV4KSB7XG4gICAgICAgIHR5cGUgPSBpeFR5cGUgYXMgU3lzdGVtSW5zdHJ1Y3Rpb25UeXBlO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoIXR5cGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignSW5zdHJ1Y3Rpb24gdHlwZSBpbmNvcnJlY3Q7IG5vdCBhIFN5c3RlbUluc3RydWN0aW9uJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHR5cGU7XG4gIH1cblxuICAvKipcbiAgICogRGVjb2RlIGEgY3JlYXRlIGFjY291bnQgc3lzdGVtIGluc3RydWN0aW9uIGFuZCByZXRyaWV2ZSB0aGUgaW5zdHJ1Y3Rpb24gcGFyYW1zLlxuICAgKi9cbiAgc3RhdGljIGRlY29kZUNyZWF0ZUFjY291bnQoXG4gICAgaW5zdHJ1Y3Rpb246IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24sXG4gICk6IENyZWF0ZUFjY291bnRQYXJhbXMge1xuICAgIHRoaXMuY2hlY2tQcm9ncmFtSWQoaW5zdHJ1Y3Rpb24ucHJvZ3JhbUlkKTtcbiAgICB0aGlzLmNoZWNrS2V5TGVuZ3RoKGluc3RydWN0aW9uLmtleXMsIDIpO1xuXG4gICAgY29uc3Qge2xhbXBvcnRzLCBzcGFjZSwgcHJvZ3JhbUlkfSA9IGRlY29kZURhdGEoXG4gICAgICBTWVNURU1fSU5TVFJVQ1RJT05fTEFZT1VUUy5DcmVhdGUsXG4gICAgICBpbnN0cnVjdGlvbi5kYXRhLFxuICAgICk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgZnJvbVB1YmtleTogaW5zdHJ1Y3Rpb24ua2V5c1swXS5wdWJrZXksXG4gICAgICBuZXdBY2NvdW50UHVia2V5OiBpbnN0cnVjdGlvbi5rZXlzWzFdLnB1YmtleSxcbiAgICAgIGxhbXBvcnRzLFxuICAgICAgc3BhY2UsXG4gICAgICBwcm9ncmFtSWQ6IG5ldyBQdWJsaWNLZXkocHJvZ3JhbUlkKSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIERlY29kZSBhIHRyYW5zZmVyIHN5c3RlbSBpbnN0cnVjdGlvbiBhbmQgcmV0cmlldmUgdGhlIGluc3RydWN0aW9uIHBhcmFtcy5cbiAgICovXG4gIHN0YXRpYyBkZWNvZGVUcmFuc2ZlcihcbiAgICBpbnN0cnVjdGlvbjogVHJhbnNhY3Rpb25JbnN0cnVjdGlvbixcbiAgKTogRGVjb2RlZFRyYW5zZmVySW5zdHJ1Y3Rpb24ge1xuICAgIHRoaXMuY2hlY2tQcm9ncmFtSWQoaW5zdHJ1Y3Rpb24ucHJvZ3JhbUlkKTtcbiAgICB0aGlzLmNoZWNrS2V5TGVuZ3RoKGluc3RydWN0aW9uLmtleXMsIDIpO1xuXG4gICAgY29uc3Qge2xhbXBvcnRzfSA9IGRlY29kZURhdGEoXG4gICAgICBTWVNURU1fSU5TVFJVQ1RJT05fTEFZT1VUUy5UcmFuc2ZlcixcbiAgICAgIGluc3RydWN0aW9uLmRhdGEsXG4gICAgKTtcblxuICAgIHJldHVybiB7XG4gICAgICBmcm9tUHVia2V5OiBpbnN0cnVjdGlvbi5rZXlzWzBdLnB1YmtleSxcbiAgICAgIHRvUHVia2V5OiBpbnN0cnVjdGlvbi5rZXlzWzFdLnB1YmtleSxcbiAgICAgIGxhbXBvcnRzLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogRGVjb2RlIGEgdHJhbnNmZXIgd2l0aCBzZWVkIHN5c3RlbSBpbnN0cnVjdGlvbiBhbmQgcmV0cmlldmUgdGhlIGluc3RydWN0aW9uIHBhcmFtcy5cbiAgICovXG4gIHN0YXRpYyBkZWNvZGVUcmFuc2ZlcldpdGhTZWVkKFxuICAgIGluc3RydWN0aW9uOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uLFxuICApOiBEZWNvZGVkVHJhbnNmZXJXaXRoU2VlZEluc3RydWN0aW9uIHtcbiAgICB0aGlzLmNoZWNrUHJvZ3JhbUlkKGluc3RydWN0aW9uLnByb2dyYW1JZCk7XG4gICAgdGhpcy5jaGVja0tleUxlbmd0aChpbnN0cnVjdGlvbi5rZXlzLCAzKTtcblxuICAgIGNvbnN0IHtsYW1wb3J0cywgc2VlZCwgcHJvZ3JhbUlkfSA9IGRlY29kZURhdGEoXG4gICAgICBTWVNURU1fSU5TVFJVQ1RJT05fTEFZT1VUUy5UcmFuc2ZlcldpdGhTZWVkLFxuICAgICAgaW5zdHJ1Y3Rpb24uZGF0YSxcbiAgICApO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGZyb21QdWJrZXk6IGluc3RydWN0aW9uLmtleXNbMF0ucHVia2V5LFxuICAgICAgYmFzZVB1YmtleTogaW5zdHJ1Y3Rpb24ua2V5c1sxXS5wdWJrZXksXG4gICAgICB0b1B1YmtleTogaW5zdHJ1Y3Rpb24ua2V5c1syXS5wdWJrZXksXG4gICAgICBsYW1wb3J0cyxcbiAgICAgIHNlZWQsXG4gICAgICBwcm9ncmFtSWQ6IG5ldyBQdWJsaWNLZXkocHJvZ3JhbUlkKSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIERlY29kZSBhbiBhbGxvY2F0ZSBzeXN0ZW0gaW5zdHJ1Y3Rpb24gYW5kIHJldHJpZXZlIHRoZSBpbnN0cnVjdGlvbiBwYXJhbXMuXG4gICAqL1xuICBzdGF0aWMgZGVjb2RlQWxsb2NhdGUoaW5zdHJ1Y3Rpb246IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24pOiBBbGxvY2F0ZVBhcmFtcyB7XG4gICAgdGhpcy5jaGVja1Byb2dyYW1JZChpbnN0cnVjdGlvbi5wcm9ncmFtSWQpO1xuICAgIHRoaXMuY2hlY2tLZXlMZW5ndGgoaW5zdHJ1Y3Rpb24ua2V5cywgMSk7XG5cbiAgICBjb25zdCB7c3BhY2V9ID0gZGVjb2RlRGF0YShcbiAgICAgIFNZU1RFTV9JTlNUUlVDVElPTl9MQVlPVVRTLkFsbG9jYXRlLFxuICAgICAgaW5zdHJ1Y3Rpb24uZGF0YSxcbiAgICApO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGFjY291bnRQdWJrZXk6IGluc3RydWN0aW9uLmtleXNbMF0ucHVia2V5LFxuICAgICAgc3BhY2UsXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWNvZGUgYW4gYWxsb2NhdGUgd2l0aCBzZWVkIHN5c3RlbSBpbnN0cnVjdGlvbiBhbmQgcmV0cmlldmUgdGhlIGluc3RydWN0aW9uIHBhcmFtcy5cbiAgICovXG4gIHN0YXRpYyBkZWNvZGVBbGxvY2F0ZVdpdGhTZWVkKFxuICAgIGluc3RydWN0aW9uOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uLFxuICApOiBBbGxvY2F0ZVdpdGhTZWVkUGFyYW1zIHtcbiAgICB0aGlzLmNoZWNrUHJvZ3JhbUlkKGluc3RydWN0aW9uLnByb2dyYW1JZCk7XG4gICAgdGhpcy5jaGVja0tleUxlbmd0aChpbnN0cnVjdGlvbi5rZXlzLCAxKTtcblxuICAgIGNvbnN0IHtiYXNlLCBzZWVkLCBzcGFjZSwgcHJvZ3JhbUlkfSA9IGRlY29kZURhdGEoXG4gICAgICBTWVNURU1fSU5TVFJVQ1RJT05fTEFZT1VUUy5BbGxvY2F0ZVdpdGhTZWVkLFxuICAgICAgaW5zdHJ1Y3Rpb24uZGF0YSxcbiAgICApO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGFjY291bnRQdWJrZXk6IGluc3RydWN0aW9uLmtleXNbMF0ucHVia2V5LFxuICAgICAgYmFzZVB1YmtleTogbmV3IFB1YmxpY0tleShiYXNlKSxcbiAgICAgIHNlZWQsXG4gICAgICBzcGFjZSxcbiAgICAgIHByb2dyYW1JZDogbmV3IFB1YmxpY0tleShwcm9ncmFtSWQpLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogRGVjb2RlIGFuIGFzc2lnbiBzeXN0ZW0gaW5zdHJ1Y3Rpb24gYW5kIHJldHJpZXZlIHRoZSBpbnN0cnVjdGlvbiBwYXJhbXMuXG4gICAqL1xuICBzdGF0aWMgZGVjb2RlQXNzaWduKGluc3RydWN0aW9uOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uKTogQXNzaWduUGFyYW1zIHtcbiAgICB0aGlzLmNoZWNrUHJvZ3JhbUlkKGluc3RydWN0aW9uLnByb2dyYW1JZCk7XG4gICAgdGhpcy5jaGVja0tleUxlbmd0aChpbnN0cnVjdGlvbi5rZXlzLCAxKTtcblxuICAgIGNvbnN0IHtwcm9ncmFtSWR9ID0gZGVjb2RlRGF0YShcbiAgICAgIFNZU1RFTV9JTlNUUlVDVElPTl9MQVlPVVRTLkFzc2lnbixcbiAgICAgIGluc3RydWN0aW9uLmRhdGEsXG4gICAgKTtcblxuICAgIHJldHVybiB7XG4gICAgICBhY2NvdW50UHVia2V5OiBpbnN0cnVjdGlvbi5rZXlzWzBdLnB1YmtleSxcbiAgICAgIHByb2dyYW1JZDogbmV3IFB1YmxpY0tleShwcm9ncmFtSWQpLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogRGVjb2RlIGFuIGFzc2lnbiB3aXRoIHNlZWQgc3lzdGVtIGluc3RydWN0aW9uIGFuZCByZXRyaWV2ZSB0aGUgaW5zdHJ1Y3Rpb24gcGFyYW1zLlxuICAgKi9cbiAgc3RhdGljIGRlY29kZUFzc2lnbldpdGhTZWVkKFxuICAgIGluc3RydWN0aW9uOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uLFxuICApOiBBc3NpZ25XaXRoU2VlZFBhcmFtcyB7XG4gICAgdGhpcy5jaGVja1Byb2dyYW1JZChpbnN0cnVjdGlvbi5wcm9ncmFtSWQpO1xuICAgIHRoaXMuY2hlY2tLZXlMZW5ndGgoaW5zdHJ1Y3Rpb24ua2V5cywgMSk7XG5cbiAgICBjb25zdCB7YmFzZSwgc2VlZCwgcHJvZ3JhbUlkfSA9IGRlY29kZURhdGEoXG4gICAgICBTWVNURU1fSU5TVFJVQ1RJT05fTEFZT1VUUy5Bc3NpZ25XaXRoU2VlZCxcbiAgICAgIGluc3RydWN0aW9uLmRhdGEsXG4gICAgKTtcblxuICAgIHJldHVybiB7XG4gICAgICBhY2NvdW50UHVia2V5OiBpbnN0cnVjdGlvbi5rZXlzWzBdLnB1YmtleSxcbiAgICAgIGJhc2VQdWJrZXk6IG5ldyBQdWJsaWNLZXkoYmFzZSksXG4gICAgICBzZWVkLFxuICAgICAgcHJvZ3JhbUlkOiBuZXcgUHVibGljS2V5KHByb2dyYW1JZCksXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWNvZGUgYSBjcmVhdGUgYWNjb3VudCB3aXRoIHNlZWQgc3lzdGVtIGluc3RydWN0aW9uIGFuZCByZXRyaWV2ZSB0aGUgaW5zdHJ1Y3Rpb24gcGFyYW1zLlxuICAgKi9cbiAgc3RhdGljIGRlY29kZUNyZWF0ZVdpdGhTZWVkKFxuICAgIGluc3RydWN0aW9uOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uLFxuICApOiBDcmVhdGVBY2NvdW50V2l0aFNlZWRQYXJhbXMge1xuICAgIHRoaXMuY2hlY2tQcm9ncmFtSWQoaW5zdHJ1Y3Rpb24ucHJvZ3JhbUlkKTtcbiAgICB0aGlzLmNoZWNrS2V5TGVuZ3RoKGluc3RydWN0aW9uLmtleXMsIDIpO1xuXG4gICAgY29uc3Qge2Jhc2UsIHNlZWQsIGxhbXBvcnRzLCBzcGFjZSwgcHJvZ3JhbUlkfSA9IGRlY29kZURhdGEoXG4gICAgICBTWVNURU1fSU5TVFJVQ1RJT05fTEFZT1VUUy5DcmVhdGVXaXRoU2VlZCxcbiAgICAgIGluc3RydWN0aW9uLmRhdGEsXG4gICAgKTtcblxuICAgIHJldHVybiB7XG4gICAgICBmcm9tUHVia2V5OiBpbnN0cnVjdGlvbi5rZXlzWzBdLnB1YmtleSxcbiAgICAgIG5ld0FjY291bnRQdWJrZXk6IGluc3RydWN0aW9uLmtleXNbMV0ucHVia2V5LFxuICAgICAgYmFzZVB1YmtleTogbmV3IFB1YmxpY0tleShiYXNlKSxcbiAgICAgIHNlZWQsXG4gICAgICBsYW1wb3J0cyxcbiAgICAgIHNwYWNlLFxuICAgICAgcHJvZ3JhbUlkOiBuZXcgUHVibGljS2V5KHByb2dyYW1JZCksXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWNvZGUgYSBub25jZSBpbml0aWFsaXplIHN5c3RlbSBpbnN0cnVjdGlvbiBhbmQgcmV0cmlldmUgdGhlIGluc3RydWN0aW9uIHBhcmFtcy5cbiAgICovXG4gIHN0YXRpYyBkZWNvZGVOb25jZUluaXRpYWxpemUoXG4gICAgaW5zdHJ1Y3Rpb246IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24sXG4gICk6IEluaXRpYWxpemVOb25jZVBhcmFtcyB7XG4gICAgdGhpcy5jaGVja1Byb2dyYW1JZChpbnN0cnVjdGlvbi5wcm9ncmFtSWQpO1xuICAgIHRoaXMuY2hlY2tLZXlMZW5ndGgoaW5zdHJ1Y3Rpb24ua2V5cywgMyk7XG5cbiAgICBjb25zdCB7YXV0aG9yaXplZH0gPSBkZWNvZGVEYXRhKFxuICAgICAgU1lTVEVNX0lOU1RSVUNUSU9OX0xBWU9VVFMuSW5pdGlhbGl6ZU5vbmNlQWNjb3VudCxcbiAgICAgIGluc3RydWN0aW9uLmRhdGEsXG4gICAgKTtcblxuICAgIHJldHVybiB7XG4gICAgICBub25jZVB1YmtleTogaW5zdHJ1Y3Rpb24ua2V5c1swXS5wdWJrZXksXG4gICAgICBhdXRob3JpemVkUHVia2V5OiBuZXcgUHVibGljS2V5KGF1dGhvcml6ZWQpLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogRGVjb2RlIGEgbm9uY2UgYWR2YW5jZSBzeXN0ZW0gaW5zdHJ1Y3Rpb24gYW5kIHJldHJpZXZlIHRoZSBpbnN0cnVjdGlvbiBwYXJhbXMuXG4gICAqL1xuICBzdGF0aWMgZGVjb2RlTm9uY2VBZHZhbmNlKFxuICAgIGluc3RydWN0aW9uOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uLFxuICApOiBBZHZhbmNlTm9uY2VQYXJhbXMge1xuICAgIHRoaXMuY2hlY2tQcm9ncmFtSWQoaW5zdHJ1Y3Rpb24ucHJvZ3JhbUlkKTtcbiAgICB0aGlzLmNoZWNrS2V5TGVuZ3RoKGluc3RydWN0aW9uLmtleXMsIDMpO1xuXG4gICAgZGVjb2RlRGF0YShcbiAgICAgIFNZU1RFTV9JTlNUUlVDVElPTl9MQVlPVVRTLkFkdmFuY2VOb25jZUFjY291bnQsXG4gICAgICBpbnN0cnVjdGlvbi5kYXRhLFxuICAgICk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgbm9uY2VQdWJrZXk6IGluc3RydWN0aW9uLmtleXNbMF0ucHVia2V5LFxuICAgICAgYXV0aG9yaXplZFB1YmtleTogaW5zdHJ1Y3Rpb24ua2V5c1syXS5wdWJrZXksXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWNvZGUgYSBub25jZSB3aXRoZHJhdyBzeXN0ZW0gaW5zdHJ1Y3Rpb24gYW5kIHJldHJpZXZlIHRoZSBpbnN0cnVjdGlvbiBwYXJhbXMuXG4gICAqL1xuICBzdGF0aWMgZGVjb2RlTm9uY2VXaXRoZHJhdyhcbiAgICBpbnN0cnVjdGlvbjogVHJhbnNhY3Rpb25JbnN0cnVjdGlvbixcbiAgKTogV2l0aGRyYXdOb25jZVBhcmFtcyB7XG4gICAgdGhpcy5jaGVja1Byb2dyYW1JZChpbnN0cnVjdGlvbi5wcm9ncmFtSWQpO1xuICAgIHRoaXMuY2hlY2tLZXlMZW5ndGgoaW5zdHJ1Y3Rpb24ua2V5cywgNSk7XG5cbiAgICBjb25zdCB7bGFtcG9ydHN9ID0gZGVjb2RlRGF0YShcbiAgICAgIFNZU1RFTV9JTlNUUlVDVElPTl9MQVlPVVRTLldpdGhkcmF3Tm9uY2VBY2NvdW50LFxuICAgICAgaW5zdHJ1Y3Rpb24uZGF0YSxcbiAgICApO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIG5vbmNlUHVia2V5OiBpbnN0cnVjdGlvbi5rZXlzWzBdLnB1YmtleSxcbiAgICAgIHRvUHVia2V5OiBpbnN0cnVjdGlvbi5rZXlzWzFdLnB1YmtleSxcbiAgICAgIGF1dGhvcml6ZWRQdWJrZXk6IGluc3RydWN0aW9uLmtleXNbNF0ucHVia2V5LFxuICAgICAgbGFtcG9ydHMsXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWNvZGUgYSBub25jZSBhdXRob3JpemUgc3lzdGVtIGluc3RydWN0aW9uIGFuZCByZXRyaWV2ZSB0aGUgaW5zdHJ1Y3Rpb24gcGFyYW1zLlxuICAgKi9cbiAgc3RhdGljIGRlY29kZU5vbmNlQXV0aG9yaXplKFxuICAgIGluc3RydWN0aW9uOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uLFxuICApOiBBdXRob3JpemVOb25jZVBhcmFtcyB7XG4gICAgdGhpcy5jaGVja1Byb2dyYW1JZChpbnN0cnVjdGlvbi5wcm9ncmFtSWQpO1xuICAgIHRoaXMuY2hlY2tLZXlMZW5ndGgoaW5zdHJ1Y3Rpb24ua2V5cywgMik7XG5cbiAgICBjb25zdCB7YXV0aG9yaXplZH0gPSBkZWNvZGVEYXRhKFxuICAgICAgU1lTVEVNX0lOU1RSVUNUSU9OX0xBWU9VVFMuQXV0aG9yaXplTm9uY2VBY2NvdW50LFxuICAgICAgaW5zdHJ1Y3Rpb24uZGF0YSxcbiAgICApO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIG5vbmNlUHVia2V5OiBpbnN0cnVjdGlvbi5rZXlzWzBdLnB1YmtleSxcbiAgICAgIGF1dGhvcml6ZWRQdWJrZXk6IGluc3RydWN0aW9uLmtleXNbMV0ucHVia2V5LFxuICAgICAgbmV3QXV0aG9yaXplZFB1YmtleTogbmV3IFB1YmxpY0tleShhdXRob3JpemVkKSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgc3RhdGljIGNoZWNrUHJvZ3JhbUlkKHByb2dyYW1JZDogUHVibGljS2V5KSB7XG4gICAgaWYgKCFwcm9ncmFtSWQuZXF1YWxzKFN5c3RlbVByb2dyYW0ucHJvZ3JhbUlkKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIGluc3RydWN0aW9uOyBwcm9ncmFtSWQgaXMgbm90IFN5c3RlbVByb2dyYW0nKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBzdGF0aWMgY2hlY2tLZXlMZW5ndGgoa2V5czogQXJyYXk8YW55PiwgZXhwZWN0ZWRMZW5ndGg6IG51bWJlcikge1xuICAgIGlmIChrZXlzLmxlbmd0aCA8IGV4cGVjdGVkTGVuZ3RoKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBpbnZhbGlkIGluc3RydWN0aW9uOyBmb3VuZCAke2tleXMubGVuZ3RofSBrZXlzLCBleHBlY3RlZCBhdCBsZWFzdCAke2V4cGVjdGVkTGVuZ3RofWAsXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIEFuIGVudW1lcmF0aW9uIG9mIHZhbGlkIFN5c3RlbUluc3RydWN0aW9uVHlwZSdzXG4gKi9cbmV4cG9ydCB0eXBlIFN5c3RlbUluc3RydWN0aW9uVHlwZSA9XG4gIC8vIEZJWE1FXG4gIC8vIEl0IHdvdWxkIGJlIHByZWZlcmFibGUgZm9yIHRoaXMgdHlwZSB0byBiZSBga2V5b2YgU3lzdGVtSW5zdHJ1Y3Rpb25JbnB1dERhdGFgXG4gIC8vIGJ1dCBUeXBlZG9jIGRvZXMgbm90IHRyYW5zcGlsZSBga2V5b2ZgIGV4cHJlc3Npb25zLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL1R5cGVTdHJvbmcvdHlwZWRvYy9pc3N1ZXMvMTg5NFxuICB8ICdBZHZhbmNlTm9uY2VBY2NvdW50J1xuICB8ICdBbGxvY2F0ZSdcbiAgfCAnQWxsb2NhdGVXaXRoU2VlZCdcbiAgfCAnQXNzaWduJ1xuICB8ICdBc3NpZ25XaXRoU2VlZCdcbiAgfCAnQXV0aG9yaXplTm9uY2VBY2NvdW50J1xuICB8ICdDcmVhdGUnXG4gIHwgJ0NyZWF0ZVdpdGhTZWVkJ1xuICB8ICdJbml0aWFsaXplTm9uY2VBY2NvdW50J1xuICB8ICdUcmFuc2ZlcidcbiAgfCAnVHJhbnNmZXJXaXRoU2VlZCdcbiAgfCAnV2l0aGRyYXdOb25jZUFjY291bnQnXG4gIHwgJ1VwZ3JhZGVOb25jZUFjY291bnQnO1xuXG50eXBlIFN5c3RlbUluc3RydWN0aW9uSW5wdXREYXRhID0ge1xuICBBZHZhbmNlTm9uY2VBY2NvdW50OiBJSW5zdHJ1Y3Rpb25JbnB1dERhdGE7XG4gIEFsbG9jYXRlOiBJSW5zdHJ1Y3Rpb25JbnB1dERhdGEgJiB7XG4gICAgc3BhY2U6IG51bWJlcjtcbiAgfTtcbiAgQWxsb2NhdGVXaXRoU2VlZDogSUluc3RydWN0aW9uSW5wdXREYXRhICYge1xuICAgIGJhc2U6IFVpbnQ4QXJyYXk7XG4gICAgcHJvZ3JhbUlkOiBVaW50OEFycmF5O1xuICAgIHNlZWQ6IHN0cmluZztcbiAgICBzcGFjZTogbnVtYmVyO1xuICB9O1xuICBBc3NpZ246IElJbnN0cnVjdGlvbklucHV0RGF0YSAmIHtcbiAgICBwcm9ncmFtSWQ6IFVpbnQ4QXJyYXk7XG4gIH07XG4gIEFzc2lnbldpdGhTZWVkOiBJSW5zdHJ1Y3Rpb25JbnB1dERhdGEgJiB7XG4gICAgYmFzZTogVWludDhBcnJheTtcbiAgICBzZWVkOiBzdHJpbmc7XG4gICAgcHJvZ3JhbUlkOiBVaW50OEFycmF5O1xuICB9O1xuICBBdXRob3JpemVOb25jZUFjY291bnQ6IElJbnN0cnVjdGlvbklucHV0RGF0YSAmIHtcbiAgICBhdXRob3JpemVkOiBVaW50OEFycmF5O1xuICB9O1xuICBDcmVhdGU6IElJbnN0cnVjdGlvbklucHV0RGF0YSAmIHtcbiAgICBsYW1wb3J0czogbnVtYmVyO1xuICAgIHByb2dyYW1JZDogVWludDhBcnJheTtcbiAgICBzcGFjZTogbnVtYmVyO1xuICB9O1xuICBDcmVhdGVXaXRoU2VlZDogSUluc3RydWN0aW9uSW5wdXREYXRhICYge1xuICAgIGJhc2U6IFVpbnQ4QXJyYXk7XG4gICAgbGFtcG9ydHM6IG51bWJlcjtcbiAgICBwcm9ncmFtSWQ6IFVpbnQ4QXJyYXk7XG4gICAgc2VlZDogc3RyaW5nO1xuICAgIHNwYWNlOiBudW1iZXI7XG4gIH07XG4gIEluaXRpYWxpemVOb25jZUFjY291bnQ6IElJbnN0cnVjdGlvbklucHV0RGF0YSAmIHtcbiAgICBhdXRob3JpemVkOiBVaW50OEFycmF5O1xuICB9O1xuICBUcmFuc2ZlcjogSUluc3RydWN0aW9uSW5wdXREYXRhICYge1xuICAgIGxhbXBvcnRzOiBiaWdpbnQ7XG4gIH07XG4gIFRyYW5zZmVyV2l0aFNlZWQ6IElJbnN0cnVjdGlvbklucHV0RGF0YSAmIHtcbiAgICBsYW1wb3J0czogYmlnaW50O1xuICAgIHByb2dyYW1JZDogVWludDhBcnJheTtcbiAgICBzZWVkOiBzdHJpbmc7XG4gIH07XG4gIFdpdGhkcmF3Tm9uY2VBY2NvdW50OiBJSW5zdHJ1Y3Rpb25JbnB1dERhdGEgJiB7XG4gICAgbGFtcG9ydHM6IG51bWJlcjtcbiAgfTtcbiAgVXBncmFkZU5vbmNlQWNjb3VudDogSUluc3RydWN0aW9uSW5wdXREYXRhO1xufTtcblxuLyoqXG4gKiBBbiBlbnVtZXJhdGlvbiBvZiB2YWxpZCBzeXN0ZW0gSW5zdHJ1Y3Rpb25UeXBlJ3NcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgY29uc3QgU1lTVEVNX0lOU1RSVUNUSU9OX0xBWU9VVFMgPSBPYmplY3QuZnJlZXplPHtcbiAgW0luc3RydWN0aW9uIGluIFN5c3RlbUluc3RydWN0aW9uVHlwZV06IEluc3RydWN0aW9uVHlwZTxcbiAgICBTeXN0ZW1JbnN0cnVjdGlvbklucHV0RGF0YVtJbnN0cnVjdGlvbl1cbiAgPjtcbn0+KHtcbiAgQ3JlYXRlOiB7XG4gICAgaW5kZXg6IDAsXG4gICAgbGF5b3V0OiBCdWZmZXJMYXlvdXQuc3RydWN0PFN5c3RlbUluc3RydWN0aW9uSW5wdXREYXRhWydDcmVhdGUnXT4oW1xuICAgICAgQnVmZmVyTGF5b3V0LnUzMignaW5zdHJ1Y3Rpb24nKSxcbiAgICAgIEJ1ZmZlckxheW91dC5uczY0KCdsYW1wb3J0cycpLFxuICAgICAgQnVmZmVyTGF5b3V0Lm5zNjQoJ3NwYWNlJyksXG4gICAgICBMYXlvdXQucHVibGljS2V5KCdwcm9ncmFtSWQnKSxcbiAgICBdKSxcbiAgfSxcbiAgQXNzaWduOiB7XG4gICAgaW5kZXg6IDEsXG4gICAgbGF5b3V0OiBCdWZmZXJMYXlvdXQuc3RydWN0PFN5c3RlbUluc3RydWN0aW9uSW5wdXREYXRhWydBc3NpZ24nXT4oW1xuICAgICAgQnVmZmVyTGF5b3V0LnUzMignaW5zdHJ1Y3Rpb24nKSxcbiAgICAgIExheW91dC5wdWJsaWNLZXkoJ3Byb2dyYW1JZCcpLFxuICAgIF0pLFxuICB9LFxuICBUcmFuc2Zlcjoge1xuICAgIGluZGV4OiAyLFxuICAgIGxheW91dDogQnVmZmVyTGF5b3V0LnN0cnVjdDxTeXN0ZW1JbnN0cnVjdGlvbklucHV0RGF0YVsnVHJhbnNmZXInXT4oW1xuICAgICAgQnVmZmVyTGF5b3V0LnUzMignaW5zdHJ1Y3Rpb24nKSxcbiAgICAgIHU2NCgnbGFtcG9ydHMnKSxcbiAgICBdKSxcbiAgfSxcbiAgQ3JlYXRlV2l0aFNlZWQ6IHtcbiAgICBpbmRleDogMyxcbiAgICBsYXlvdXQ6IEJ1ZmZlckxheW91dC5zdHJ1Y3Q8U3lzdGVtSW5zdHJ1Y3Rpb25JbnB1dERhdGFbJ0NyZWF0ZVdpdGhTZWVkJ10+KFtcbiAgICAgIEJ1ZmZlckxheW91dC51MzIoJ2luc3RydWN0aW9uJyksXG4gICAgICBMYXlvdXQucHVibGljS2V5KCdiYXNlJyksXG4gICAgICBMYXlvdXQucnVzdFN0cmluZygnc2VlZCcpLFxuICAgICAgQnVmZmVyTGF5b3V0Lm5zNjQoJ2xhbXBvcnRzJyksXG4gICAgICBCdWZmZXJMYXlvdXQubnM2NCgnc3BhY2UnKSxcbiAgICAgIExheW91dC5wdWJsaWNLZXkoJ3Byb2dyYW1JZCcpLFxuICAgIF0pLFxuICB9LFxuICBBZHZhbmNlTm9uY2VBY2NvdW50OiB7XG4gICAgaW5kZXg6IDQsXG4gICAgbGF5b3V0OiBCdWZmZXJMYXlvdXQuc3RydWN0PFxuICAgICAgU3lzdGVtSW5zdHJ1Y3Rpb25JbnB1dERhdGFbJ0FkdmFuY2VOb25jZUFjY291bnQnXVxuICAgID4oW0J1ZmZlckxheW91dC51MzIoJ2luc3RydWN0aW9uJyldKSxcbiAgfSxcbiAgV2l0aGRyYXdOb25jZUFjY291bnQ6IHtcbiAgICBpbmRleDogNSxcbiAgICBsYXlvdXQ6IEJ1ZmZlckxheW91dC5zdHJ1Y3Q8XG4gICAgICBTeXN0ZW1JbnN0cnVjdGlvbklucHV0RGF0YVsnV2l0aGRyYXdOb25jZUFjY291bnQnXVxuICAgID4oW0J1ZmZlckxheW91dC51MzIoJ2luc3RydWN0aW9uJyksIEJ1ZmZlckxheW91dC5uczY0KCdsYW1wb3J0cycpXSksXG4gIH0sXG4gIEluaXRpYWxpemVOb25jZUFjY291bnQ6IHtcbiAgICBpbmRleDogNixcbiAgICBsYXlvdXQ6IEJ1ZmZlckxheW91dC5zdHJ1Y3Q8XG4gICAgICBTeXN0ZW1JbnN0cnVjdGlvbklucHV0RGF0YVsnSW5pdGlhbGl6ZU5vbmNlQWNjb3VudCddXG4gICAgPihbQnVmZmVyTGF5b3V0LnUzMignaW5zdHJ1Y3Rpb24nKSwgTGF5b3V0LnB1YmxpY0tleSgnYXV0aG9yaXplZCcpXSksXG4gIH0sXG4gIEF1dGhvcml6ZU5vbmNlQWNjb3VudDoge1xuICAgIGluZGV4OiA3LFxuICAgIGxheW91dDogQnVmZmVyTGF5b3V0LnN0cnVjdDxcbiAgICAgIFN5c3RlbUluc3RydWN0aW9uSW5wdXREYXRhWydBdXRob3JpemVOb25jZUFjY291bnQnXVxuICAgID4oW0J1ZmZlckxheW91dC51MzIoJ2luc3RydWN0aW9uJyksIExheW91dC5wdWJsaWNLZXkoJ2F1dGhvcml6ZWQnKV0pLFxuICB9LFxuICBBbGxvY2F0ZToge1xuICAgIGluZGV4OiA4LFxuICAgIGxheW91dDogQnVmZmVyTGF5b3V0LnN0cnVjdDxTeXN0ZW1JbnN0cnVjdGlvbklucHV0RGF0YVsnQWxsb2NhdGUnXT4oW1xuICAgICAgQnVmZmVyTGF5b3V0LnUzMignaW5zdHJ1Y3Rpb24nKSxcbiAgICAgIEJ1ZmZlckxheW91dC5uczY0KCdzcGFjZScpLFxuICAgIF0pLFxuICB9LFxuICBBbGxvY2F0ZVdpdGhTZWVkOiB7XG4gICAgaW5kZXg6IDksXG4gICAgbGF5b3V0OiBCdWZmZXJMYXlvdXQuc3RydWN0PFN5c3RlbUluc3RydWN0aW9uSW5wdXREYXRhWydBbGxvY2F0ZVdpdGhTZWVkJ10+KFxuICAgICAgW1xuICAgICAgICBCdWZmZXJMYXlvdXQudTMyKCdpbnN0cnVjdGlvbicpLFxuICAgICAgICBMYXlvdXQucHVibGljS2V5KCdiYXNlJyksXG4gICAgICAgIExheW91dC5ydXN0U3RyaW5nKCdzZWVkJyksXG4gICAgICAgIEJ1ZmZlckxheW91dC5uczY0KCdzcGFjZScpLFxuICAgICAgICBMYXlvdXQucHVibGljS2V5KCdwcm9ncmFtSWQnKSxcbiAgICAgIF0sXG4gICAgKSxcbiAgfSxcbiAgQXNzaWduV2l0aFNlZWQ6IHtcbiAgICBpbmRleDogMTAsXG4gICAgbGF5b3V0OiBCdWZmZXJMYXlvdXQuc3RydWN0PFN5c3RlbUluc3RydWN0aW9uSW5wdXREYXRhWydBc3NpZ25XaXRoU2VlZCddPihbXG4gICAgICBCdWZmZXJMYXlvdXQudTMyKCdpbnN0cnVjdGlvbicpLFxuICAgICAgTGF5b3V0LnB1YmxpY0tleSgnYmFzZScpLFxuICAgICAgTGF5b3V0LnJ1c3RTdHJpbmcoJ3NlZWQnKSxcbiAgICAgIExheW91dC5wdWJsaWNLZXkoJ3Byb2dyYW1JZCcpLFxuICAgIF0pLFxuICB9LFxuICBUcmFuc2ZlcldpdGhTZWVkOiB7XG4gICAgaW5kZXg6IDExLFxuICAgIGxheW91dDogQnVmZmVyTGF5b3V0LnN0cnVjdDxTeXN0ZW1JbnN0cnVjdGlvbklucHV0RGF0YVsnVHJhbnNmZXJXaXRoU2VlZCddPihcbiAgICAgIFtcbiAgICAgICAgQnVmZmVyTGF5b3V0LnUzMignaW5zdHJ1Y3Rpb24nKSxcbiAgICAgICAgdTY0KCdsYW1wb3J0cycpLFxuICAgICAgICBMYXlvdXQucnVzdFN0cmluZygnc2VlZCcpLFxuICAgICAgICBMYXlvdXQucHVibGljS2V5KCdwcm9ncmFtSWQnKSxcbiAgICAgIF0sXG4gICAgKSxcbiAgfSxcbiAgVXBncmFkZU5vbmNlQWNjb3VudDoge1xuICAgIGluZGV4OiAxMixcbiAgICBsYXlvdXQ6IEJ1ZmZlckxheW91dC5zdHJ1Y3Q8XG4gICAgICBTeXN0ZW1JbnN0cnVjdGlvbklucHV0RGF0YVsnVXBncmFkZU5vbmNlQWNjb3VudCddXG4gICAgPihbQnVmZmVyTGF5b3V0LnUzMignaW5zdHJ1Y3Rpb24nKV0pLFxuICB9LFxufSk7XG5cbi8qKlxuICogRmFjdG9yeSBjbGFzcyBmb3IgdHJhbnNhY3Rpb25zIHRvIGludGVyYWN0IHdpdGggdGhlIFN5c3RlbSBwcm9ncmFtXG4gKi9cbmV4cG9ydCBjbGFzcyBTeXN0ZW1Qcm9ncmFtIHtcbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIC8qKlxuICAgKiBQdWJsaWMga2V5IHRoYXQgaWRlbnRpZmllcyB0aGUgU3lzdGVtIHByb2dyYW1cbiAgICovXG4gIHN0YXRpYyBwcm9ncmFtSWQ6IFB1YmxpY0tleSA9IG5ldyBQdWJsaWNLZXkoXG4gICAgJzExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExJyxcbiAgKTtcblxuICAvKipcbiAgICogR2VuZXJhdGUgYSB0cmFuc2FjdGlvbiBpbnN0cnVjdGlvbiB0aGF0IGNyZWF0ZXMgYSBuZXcgYWNjb3VudFxuICAgKi9cbiAgc3RhdGljIGNyZWF0ZUFjY291bnQocGFyYW1zOiBDcmVhdGVBY2NvdW50UGFyYW1zKTogVHJhbnNhY3Rpb25JbnN0cnVjdGlvbiB7XG4gICAgY29uc3QgdHlwZSA9IFNZU1RFTV9JTlNUUlVDVElPTl9MQVlPVVRTLkNyZWF0ZTtcbiAgICBjb25zdCBkYXRhID0gZW5jb2RlRGF0YSh0eXBlLCB7XG4gICAgICBsYW1wb3J0czogcGFyYW1zLmxhbXBvcnRzLFxuICAgICAgc3BhY2U6IHBhcmFtcy5zcGFjZSxcbiAgICAgIHByb2dyYW1JZDogdG9CdWZmZXIocGFyYW1zLnByb2dyYW1JZC50b0J1ZmZlcigpKSxcbiAgICB9KTtcblxuICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb25JbnN0cnVjdGlvbih7XG4gICAgICBrZXlzOiBbXG4gICAgICAgIHtwdWJrZXk6IHBhcmFtcy5mcm9tUHVia2V5LCBpc1NpZ25lcjogdHJ1ZSwgaXNXcml0YWJsZTogdHJ1ZX0sXG4gICAgICAgIHtwdWJrZXk6IHBhcmFtcy5uZXdBY2NvdW50UHVia2V5LCBpc1NpZ25lcjogdHJ1ZSwgaXNXcml0YWJsZTogdHJ1ZX0sXG4gICAgICBdLFxuICAgICAgcHJvZ3JhbUlkOiB0aGlzLnByb2dyYW1JZCxcbiAgICAgIGRhdGEsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogR2VuZXJhdGUgYSB0cmFuc2FjdGlvbiBpbnN0cnVjdGlvbiB0aGF0IHRyYW5zZmVycyBsYW1wb3J0cyBmcm9tIG9uZSBhY2NvdW50IHRvIGFub3RoZXJcbiAgICovXG4gIHN0YXRpYyB0cmFuc2ZlcihcbiAgICBwYXJhbXM6IFRyYW5zZmVyUGFyYW1zIHwgVHJhbnNmZXJXaXRoU2VlZFBhcmFtcyxcbiAgKTogVHJhbnNhY3Rpb25JbnN0cnVjdGlvbiB7XG4gICAgbGV0IGRhdGE7XG4gICAgbGV0IGtleXM7XG4gICAgaWYgKCdiYXNlUHVia2V5JyBpbiBwYXJhbXMpIHtcbiAgICAgIGNvbnN0IHR5cGUgPSBTWVNURU1fSU5TVFJVQ1RJT05fTEFZT1VUUy5UcmFuc2ZlcldpdGhTZWVkO1xuICAgICAgZGF0YSA9IGVuY29kZURhdGEodHlwZSwge1xuICAgICAgICBsYW1wb3J0czogQmlnSW50KHBhcmFtcy5sYW1wb3J0cyksXG4gICAgICAgIHNlZWQ6IHBhcmFtcy5zZWVkLFxuICAgICAgICBwcm9ncmFtSWQ6IHRvQnVmZmVyKHBhcmFtcy5wcm9ncmFtSWQudG9CdWZmZXIoKSksXG4gICAgICB9KTtcbiAgICAgIGtleXMgPSBbXG4gICAgICAgIHtwdWJrZXk6IHBhcmFtcy5mcm9tUHVia2V5LCBpc1NpZ25lcjogZmFsc2UsIGlzV3JpdGFibGU6IHRydWV9LFxuICAgICAgICB7cHVia2V5OiBwYXJhbXMuYmFzZVB1YmtleSwgaXNTaWduZXI6IHRydWUsIGlzV3JpdGFibGU6IGZhbHNlfSxcbiAgICAgICAge3B1YmtleTogcGFyYW1zLnRvUHVia2V5LCBpc1NpZ25lcjogZmFsc2UsIGlzV3JpdGFibGU6IHRydWV9LFxuICAgICAgXTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgdHlwZSA9IFNZU1RFTV9JTlNUUlVDVElPTl9MQVlPVVRTLlRyYW5zZmVyO1xuICAgICAgZGF0YSA9IGVuY29kZURhdGEodHlwZSwge2xhbXBvcnRzOiBCaWdJbnQocGFyYW1zLmxhbXBvcnRzKX0pO1xuICAgICAga2V5cyA9IFtcbiAgICAgICAge3B1YmtleTogcGFyYW1zLmZyb21QdWJrZXksIGlzU2lnbmVyOiB0cnVlLCBpc1dyaXRhYmxlOiB0cnVlfSxcbiAgICAgICAge3B1YmtleTogcGFyYW1zLnRvUHVia2V5LCBpc1NpZ25lcjogZmFsc2UsIGlzV3JpdGFibGU6IHRydWV9LFxuICAgICAgXTtcbiAgICB9XG5cbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24oe1xuICAgICAga2V5cyxcbiAgICAgIHByb2dyYW1JZDogdGhpcy5wcm9ncmFtSWQsXG4gICAgICBkYXRhLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlIGEgdHJhbnNhY3Rpb24gaW5zdHJ1Y3Rpb24gdGhhdCBhc3NpZ25zIGFuIGFjY291bnQgdG8gYSBwcm9ncmFtXG4gICAqL1xuICBzdGF0aWMgYXNzaWduKFxuICAgIHBhcmFtczogQXNzaWduUGFyYW1zIHwgQXNzaWduV2l0aFNlZWRQYXJhbXMsXG4gICk6IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24ge1xuICAgIGxldCBkYXRhO1xuICAgIGxldCBrZXlzO1xuICAgIGlmICgnYmFzZVB1YmtleScgaW4gcGFyYW1zKSB7XG4gICAgICBjb25zdCB0eXBlID0gU1lTVEVNX0lOU1RSVUNUSU9OX0xBWU9VVFMuQXNzaWduV2l0aFNlZWQ7XG4gICAgICBkYXRhID0gZW5jb2RlRGF0YSh0eXBlLCB7XG4gICAgICAgIGJhc2U6IHRvQnVmZmVyKHBhcmFtcy5iYXNlUHVia2V5LnRvQnVmZmVyKCkpLFxuICAgICAgICBzZWVkOiBwYXJhbXMuc2VlZCxcbiAgICAgICAgcHJvZ3JhbUlkOiB0b0J1ZmZlcihwYXJhbXMucHJvZ3JhbUlkLnRvQnVmZmVyKCkpLFxuICAgICAgfSk7XG4gICAgICBrZXlzID0gW1xuICAgICAgICB7cHVia2V5OiBwYXJhbXMuYWNjb3VudFB1YmtleSwgaXNTaWduZXI6IGZhbHNlLCBpc1dyaXRhYmxlOiB0cnVlfSxcbiAgICAgICAge3B1YmtleTogcGFyYW1zLmJhc2VQdWJrZXksIGlzU2lnbmVyOiB0cnVlLCBpc1dyaXRhYmxlOiBmYWxzZX0sXG4gICAgICBdO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCB0eXBlID0gU1lTVEVNX0lOU1RSVUNUSU9OX0xBWU9VVFMuQXNzaWduO1xuICAgICAgZGF0YSA9IGVuY29kZURhdGEodHlwZSwge1xuICAgICAgICBwcm9ncmFtSWQ6IHRvQnVmZmVyKHBhcmFtcy5wcm9ncmFtSWQudG9CdWZmZXIoKSksXG4gICAgICB9KTtcbiAgICAgIGtleXMgPSBbe3B1YmtleTogcGFyYW1zLmFjY291bnRQdWJrZXksIGlzU2lnbmVyOiB0cnVlLCBpc1dyaXRhYmxlOiB0cnVlfV07XG4gICAgfVxuXG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbkluc3RydWN0aW9uKHtcbiAgICAgIGtleXMsXG4gICAgICBwcm9ncmFtSWQ6IHRoaXMucHJvZ3JhbUlkLFxuICAgICAgZGF0YSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZSBhIHRyYW5zYWN0aW9uIGluc3RydWN0aW9uIHRoYXQgY3JlYXRlcyBhIG5ldyBhY2NvdW50IGF0XG4gICAqICAgYW4gYWRkcmVzcyBnZW5lcmF0ZWQgd2l0aCBgZnJvbWAsIGEgc2VlZCwgYW5kIHByb2dyYW1JZFxuICAgKi9cbiAgc3RhdGljIGNyZWF0ZUFjY291bnRXaXRoU2VlZChcbiAgICBwYXJhbXM6IENyZWF0ZUFjY291bnRXaXRoU2VlZFBhcmFtcyxcbiAgKTogVHJhbnNhY3Rpb25JbnN0cnVjdGlvbiB7XG4gICAgY29uc3QgdHlwZSA9IFNZU1RFTV9JTlNUUlVDVElPTl9MQVlPVVRTLkNyZWF0ZVdpdGhTZWVkO1xuICAgIGNvbnN0IGRhdGEgPSBlbmNvZGVEYXRhKHR5cGUsIHtcbiAgICAgIGJhc2U6IHRvQnVmZmVyKHBhcmFtcy5iYXNlUHVia2V5LnRvQnVmZmVyKCkpLFxuICAgICAgc2VlZDogcGFyYW1zLnNlZWQsXG4gICAgICBsYW1wb3J0czogcGFyYW1zLmxhbXBvcnRzLFxuICAgICAgc3BhY2U6IHBhcmFtcy5zcGFjZSxcbiAgICAgIHByb2dyYW1JZDogdG9CdWZmZXIocGFyYW1zLnByb2dyYW1JZC50b0J1ZmZlcigpKSxcbiAgICB9KTtcbiAgICBsZXQga2V5cyA9IFtcbiAgICAgIHtwdWJrZXk6IHBhcmFtcy5mcm9tUHVia2V5LCBpc1NpZ25lcjogdHJ1ZSwgaXNXcml0YWJsZTogdHJ1ZX0sXG4gICAgICB7cHVia2V5OiBwYXJhbXMubmV3QWNjb3VudFB1YmtleSwgaXNTaWduZXI6IGZhbHNlLCBpc1dyaXRhYmxlOiB0cnVlfSxcbiAgICBdO1xuICAgIGlmIChwYXJhbXMuYmFzZVB1YmtleSAhPSBwYXJhbXMuZnJvbVB1YmtleSkge1xuICAgICAga2V5cy5wdXNoKHtcbiAgICAgICAgcHVia2V5OiBwYXJhbXMuYmFzZVB1YmtleSxcbiAgICAgICAgaXNTaWduZXI6IHRydWUsXG4gICAgICAgIGlzV3JpdGFibGU6IGZhbHNlLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbkluc3RydWN0aW9uKHtcbiAgICAgIGtleXMsXG4gICAgICBwcm9ncmFtSWQ6IHRoaXMucHJvZ3JhbUlkLFxuICAgICAgZGF0YSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZSBhIHRyYW5zYWN0aW9uIHRoYXQgY3JlYXRlcyBhIG5ldyBOb25jZSBhY2NvdW50XG4gICAqL1xuICBzdGF0aWMgY3JlYXRlTm9uY2VBY2NvdW50KFxuICAgIHBhcmFtczogQ3JlYXRlTm9uY2VBY2NvdW50UGFyYW1zIHwgQ3JlYXRlTm9uY2VBY2NvdW50V2l0aFNlZWRQYXJhbXMsXG4gICk6IFRyYW5zYWN0aW9uIHtcbiAgICBjb25zdCB0cmFuc2FjdGlvbiA9IG5ldyBUcmFuc2FjdGlvbigpO1xuICAgIGlmICgnYmFzZVB1YmtleScgaW4gcGFyYW1zICYmICdzZWVkJyBpbiBwYXJhbXMpIHtcbiAgICAgIHRyYW5zYWN0aW9uLmFkZChcbiAgICAgICAgU3lzdGVtUHJvZ3JhbS5jcmVhdGVBY2NvdW50V2l0aFNlZWQoe1xuICAgICAgICAgIGZyb21QdWJrZXk6IHBhcmFtcy5mcm9tUHVia2V5LFxuICAgICAgICAgIG5ld0FjY291bnRQdWJrZXk6IHBhcmFtcy5ub25jZVB1YmtleSxcbiAgICAgICAgICBiYXNlUHVia2V5OiBwYXJhbXMuYmFzZVB1YmtleSxcbiAgICAgICAgICBzZWVkOiBwYXJhbXMuc2VlZCxcbiAgICAgICAgICBsYW1wb3J0czogcGFyYW1zLmxhbXBvcnRzLFxuICAgICAgICAgIHNwYWNlOiBOT05DRV9BQ0NPVU5UX0xFTkdUSCxcbiAgICAgICAgICBwcm9ncmFtSWQ6IHRoaXMucHJvZ3JhbUlkLFxuICAgICAgICB9KSxcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRyYW5zYWN0aW9uLmFkZChcbiAgICAgICAgU3lzdGVtUHJvZ3JhbS5jcmVhdGVBY2NvdW50KHtcbiAgICAgICAgICBmcm9tUHVia2V5OiBwYXJhbXMuZnJvbVB1YmtleSxcbiAgICAgICAgICBuZXdBY2NvdW50UHVia2V5OiBwYXJhbXMubm9uY2VQdWJrZXksXG4gICAgICAgICAgbGFtcG9ydHM6IHBhcmFtcy5sYW1wb3J0cyxcbiAgICAgICAgICBzcGFjZTogTk9OQ0VfQUNDT1VOVF9MRU5HVEgsXG4gICAgICAgICAgcHJvZ3JhbUlkOiB0aGlzLnByb2dyYW1JZCxcbiAgICAgICAgfSksXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IGluaXRQYXJhbXMgPSB7XG4gICAgICBub25jZVB1YmtleTogcGFyYW1zLm5vbmNlUHVia2V5LFxuICAgICAgYXV0aG9yaXplZFB1YmtleTogcGFyYW1zLmF1dGhvcml6ZWRQdWJrZXksXG4gICAgfTtcblxuICAgIHRyYW5zYWN0aW9uLmFkZCh0aGlzLm5vbmNlSW5pdGlhbGl6ZShpbml0UGFyYW1zKSk7XG4gICAgcmV0dXJuIHRyYW5zYWN0aW9uO1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlIGFuIGluc3RydWN0aW9uIHRvIGluaXRpYWxpemUgYSBOb25jZSBhY2NvdW50XG4gICAqL1xuICBzdGF0aWMgbm9uY2VJbml0aWFsaXplKFxuICAgIHBhcmFtczogSW5pdGlhbGl6ZU5vbmNlUGFyYW1zLFxuICApOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uIHtcbiAgICBjb25zdCB0eXBlID0gU1lTVEVNX0lOU1RSVUNUSU9OX0xBWU9VVFMuSW5pdGlhbGl6ZU5vbmNlQWNjb3VudDtcbiAgICBjb25zdCBkYXRhID0gZW5jb2RlRGF0YSh0eXBlLCB7XG4gICAgICBhdXRob3JpemVkOiB0b0J1ZmZlcihwYXJhbXMuYXV0aG9yaXplZFB1YmtleS50b0J1ZmZlcigpKSxcbiAgICB9KTtcbiAgICBjb25zdCBpbnN0cnVjdGlvbkRhdGEgPSB7XG4gICAgICBrZXlzOiBbXG4gICAgICAgIHtwdWJrZXk6IHBhcmFtcy5ub25jZVB1YmtleSwgaXNTaWduZXI6IGZhbHNlLCBpc1dyaXRhYmxlOiB0cnVlfSxcbiAgICAgICAge1xuICAgICAgICAgIHB1YmtleTogU1lTVkFSX1JFQ0VOVF9CTE9DS0hBU0hFU19QVUJLRVksXG4gICAgICAgICAgaXNTaWduZXI6IGZhbHNlLFxuICAgICAgICAgIGlzV3JpdGFibGU6IGZhbHNlLFxuICAgICAgICB9LFxuICAgICAgICB7cHVia2V5OiBTWVNWQVJfUkVOVF9QVUJLRVksIGlzU2lnbmVyOiBmYWxzZSwgaXNXcml0YWJsZTogZmFsc2V9LFxuICAgICAgXSxcbiAgICAgIHByb2dyYW1JZDogdGhpcy5wcm9ncmFtSWQsXG4gICAgICBkYXRhLFxuICAgIH07XG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbkluc3RydWN0aW9uKGluc3RydWN0aW9uRGF0YSk7XG4gIH1cblxuICAvKipcbiAgICogR2VuZXJhdGUgYW4gaW5zdHJ1Y3Rpb24gdG8gYWR2YW5jZSB0aGUgbm9uY2UgaW4gYSBOb25jZSBhY2NvdW50XG4gICAqL1xuICBzdGF0aWMgbm9uY2VBZHZhbmNlKHBhcmFtczogQWR2YW5jZU5vbmNlUGFyYW1zKTogVHJhbnNhY3Rpb25JbnN0cnVjdGlvbiB7XG4gICAgY29uc3QgdHlwZSA9IFNZU1RFTV9JTlNUUlVDVElPTl9MQVlPVVRTLkFkdmFuY2VOb25jZUFjY291bnQ7XG4gICAgY29uc3QgZGF0YSA9IGVuY29kZURhdGEodHlwZSk7XG4gICAgY29uc3QgaW5zdHJ1Y3Rpb25EYXRhID0ge1xuICAgICAga2V5czogW1xuICAgICAgICB7cHVia2V5OiBwYXJhbXMubm9uY2VQdWJrZXksIGlzU2lnbmVyOiBmYWxzZSwgaXNXcml0YWJsZTogdHJ1ZX0sXG4gICAgICAgIHtcbiAgICAgICAgICBwdWJrZXk6IFNZU1ZBUl9SRUNFTlRfQkxPQ0tIQVNIRVNfUFVCS0VZLFxuICAgICAgICAgIGlzU2lnbmVyOiBmYWxzZSxcbiAgICAgICAgICBpc1dyaXRhYmxlOiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICAgICAge3B1YmtleTogcGFyYW1zLmF1dGhvcml6ZWRQdWJrZXksIGlzU2lnbmVyOiB0cnVlLCBpc1dyaXRhYmxlOiBmYWxzZX0sXG4gICAgICBdLFxuICAgICAgcHJvZ3JhbUlkOiB0aGlzLnByb2dyYW1JZCxcbiAgICAgIGRhdGEsXG4gICAgfTtcbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24oaW5zdHJ1Y3Rpb25EYXRhKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZSBhIHRyYW5zYWN0aW9uIGluc3RydWN0aW9uIHRoYXQgd2l0aGRyYXdzIGxhbXBvcnRzIGZyb20gYSBOb25jZSBhY2NvdW50XG4gICAqL1xuICBzdGF0aWMgbm9uY2VXaXRoZHJhdyhwYXJhbXM6IFdpdGhkcmF3Tm9uY2VQYXJhbXMpOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uIHtcbiAgICBjb25zdCB0eXBlID0gU1lTVEVNX0lOU1RSVUNUSU9OX0xBWU9VVFMuV2l0aGRyYXdOb25jZUFjY291bnQ7XG4gICAgY29uc3QgZGF0YSA9IGVuY29kZURhdGEodHlwZSwge2xhbXBvcnRzOiBwYXJhbXMubGFtcG9ydHN9KTtcblxuICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb25JbnN0cnVjdGlvbih7XG4gICAgICBrZXlzOiBbXG4gICAgICAgIHtwdWJrZXk6IHBhcmFtcy5ub25jZVB1YmtleSwgaXNTaWduZXI6IGZhbHNlLCBpc1dyaXRhYmxlOiB0cnVlfSxcbiAgICAgICAge3B1YmtleTogcGFyYW1zLnRvUHVia2V5LCBpc1NpZ25lcjogZmFsc2UsIGlzV3JpdGFibGU6IHRydWV9LFxuICAgICAgICB7XG4gICAgICAgICAgcHVia2V5OiBTWVNWQVJfUkVDRU5UX0JMT0NLSEFTSEVTX1BVQktFWSxcbiAgICAgICAgICBpc1NpZ25lcjogZmFsc2UsXG4gICAgICAgICAgaXNXcml0YWJsZTogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwdWJrZXk6IFNZU1ZBUl9SRU5UX1BVQktFWSxcbiAgICAgICAgICBpc1NpZ25lcjogZmFsc2UsXG4gICAgICAgICAgaXNXcml0YWJsZTogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICAgIHtwdWJrZXk6IHBhcmFtcy5hdXRob3JpemVkUHVia2V5LCBpc1NpZ25lcjogdHJ1ZSwgaXNXcml0YWJsZTogZmFsc2V9LFxuICAgICAgXSxcbiAgICAgIHByb2dyYW1JZDogdGhpcy5wcm9ncmFtSWQsXG4gICAgICBkYXRhLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlIGEgdHJhbnNhY3Rpb24gaW5zdHJ1Y3Rpb24gdGhhdCBhdXRob3JpemVzIGEgbmV3IFB1YmxpY0tleSBhcyB0aGUgYXV0aG9yaXR5XG4gICAqIG9uIGEgTm9uY2UgYWNjb3VudC5cbiAgICovXG4gIHN0YXRpYyBub25jZUF1dGhvcml6ZShwYXJhbXM6IEF1dGhvcml6ZU5vbmNlUGFyYW1zKTogVHJhbnNhY3Rpb25JbnN0cnVjdGlvbiB7XG4gICAgY29uc3QgdHlwZSA9IFNZU1RFTV9JTlNUUlVDVElPTl9MQVlPVVRTLkF1dGhvcml6ZU5vbmNlQWNjb3VudDtcbiAgICBjb25zdCBkYXRhID0gZW5jb2RlRGF0YSh0eXBlLCB7XG4gICAgICBhdXRob3JpemVkOiB0b0J1ZmZlcihwYXJhbXMubmV3QXV0aG9yaXplZFB1YmtleS50b0J1ZmZlcigpKSxcbiAgICB9KTtcblxuICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb25JbnN0cnVjdGlvbih7XG4gICAgICBrZXlzOiBbXG4gICAgICAgIHtwdWJrZXk6IHBhcmFtcy5ub25jZVB1YmtleSwgaXNTaWduZXI6IGZhbHNlLCBpc1dyaXRhYmxlOiB0cnVlfSxcbiAgICAgICAge3B1YmtleTogcGFyYW1zLmF1dGhvcml6ZWRQdWJrZXksIGlzU2lnbmVyOiB0cnVlLCBpc1dyaXRhYmxlOiBmYWxzZX0sXG4gICAgICBdLFxuICAgICAgcHJvZ3JhbUlkOiB0aGlzLnByb2dyYW1JZCxcbiAgICAgIGRhdGEsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogR2VuZXJhdGUgYSB0cmFuc2FjdGlvbiBpbnN0cnVjdGlvbiB0aGF0IGFsbG9jYXRlcyBzcGFjZSBpbiBhbiBhY2NvdW50IHdpdGhvdXQgZnVuZGluZ1xuICAgKi9cbiAgc3RhdGljIGFsbG9jYXRlKFxuICAgIHBhcmFtczogQWxsb2NhdGVQYXJhbXMgfCBBbGxvY2F0ZVdpdGhTZWVkUGFyYW1zLFxuICApOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uIHtcbiAgICBsZXQgZGF0YTtcbiAgICBsZXQga2V5cztcbiAgICBpZiAoJ2Jhc2VQdWJrZXknIGluIHBhcmFtcykge1xuICAgICAgY29uc3QgdHlwZSA9IFNZU1RFTV9JTlNUUlVDVElPTl9MQVlPVVRTLkFsbG9jYXRlV2l0aFNlZWQ7XG4gICAgICBkYXRhID0gZW5jb2RlRGF0YSh0eXBlLCB7XG4gICAgICAgIGJhc2U6IHRvQnVmZmVyKHBhcmFtcy5iYXNlUHVia2V5LnRvQnVmZmVyKCkpLFxuICAgICAgICBzZWVkOiBwYXJhbXMuc2VlZCxcbiAgICAgICAgc3BhY2U6IHBhcmFtcy5zcGFjZSxcbiAgICAgICAgcHJvZ3JhbUlkOiB0b0J1ZmZlcihwYXJhbXMucHJvZ3JhbUlkLnRvQnVmZmVyKCkpLFxuICAgICAgfSk7XG4gICAgICBrZXlzID0gW1xuICAgICAgICB7cHVia2V5OiBwYXJhbXMuYWNjb3VudFB1YmtleSwgaXNTaWduZXI6IGZhbHNlLCBpc1dyaXRhYmxlOiB0cnVlfSxcbiAgICAgICAge3B1YmtleTogcGFyYW1zLmJhc2VQdWJrZXksIGlzU2lnbmVyOiB0cnVlLCBpc1dyaXRhYmxlOiBmYWxzZX0sXG4gICAgICBdO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCB0eXBlID0gU1lTVEVNX0lOU1RSVUNUSU9OX0xBWU9VVFMuQWxsb2NhdGU7XG4gICAgICBkYXRhID0gZW5jb2RlRGF0YSh0eXBlLCB7XG4gICAgICAgIHNwYWNlOiBwYXJhbXMuc3BhY2UsXG4gICAgICB9KTtcbiAgICAgIGtleXMgPSBbe3B1YmtleTogcGFyYW1zLmFjY291bnRQdWJrZXksIGlzU2lnbmVyOiB0cnVlLCBpc1dyaXRhYmxlOiB0cnVlfV07XG4gICAgfVxuXG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbkluc3RydWN0aW9uKHtcbiAgICAgIGtleXMsXG4gICAgICBwcm9ncmFtSWQ6IHRoaXMucHJvZ3JhbUlkLFxuICAgICAgZGF0YSxcbiAgICB9KTtcbiAgfVxufVxuIiwgImltcG9ydCB7QnVmZmVyfSBmcm9tICdidWZmZXInO1xuaW1wb3J0ICogYXMgQnVmZmVyTGF5b3V0IGZyb20gJ0Bzb2xhbmEvYnVmZmVyLWxheW91dCc7XG5cbmltcG9ydCB7UHVibGljS2V5fSBmcm9tICcuL3B1YmxpY2tleSc7XG5pbXBvcnQge1RyYW5zYWN0aW9uLCBQQUNLRVRfREFUQV9TSVpFfSBmcm9tICcuL3RyYW5zYWN0aW9uJztcbmltcG9ydCB7TVNfUEVSX1NMT1R9IGZyb20gJy4vdGltaW5nJztcbmltcG9ydCB7U1lTVkFSX1JFTlRfUFVCS0VZfSBmcm9tICcuL3N5c3Zhcic7XG5pbXBvcnQge3NlbmRBbmRDb25maXJtVHJhbnNhY3Rpb259IGZyb20gJy4vdXRpbHMvc2VuZC1hbmQtY29uZmlybS10cmFuc2FjdGlvbic7XG5pbXBvcnQge3NsZWVwfSBmcm9tICcuL3V0aWxzL3NsZWVwJztcbmltcG9ydCB0eXBlIHtDb25uZWN0aW9ufSBmcm9tICcuL2Nvbm5lY3Rpb24nO1xuaW1wb3J0IHR5cGUge1NpZ25lcn0gZnJvbSAnLi9rZXlwYWlyJztcbmltcG9ydCB7U3lzdGVtUHJvZ3JhbX0gZnJvbSAnLi9wcm9ncmFtcy9zeXN0ZW0nO1xuaW1wb3J0IHtJSW5zdHJ1Y3Rpb25JbnB1dERhdGF9IGZyb20gJy4vaW5zdHJ1Y3Rpb24nO1xuXG4vLyBLZWVwIHByb2dyYW0gY2h1bmtzIHVuZGVyIFBBQ0tFVF9EQVRBX1NJWkUsIGxlYXZpbmcgZW5vdWdoIHJvb20gZm9yIHRoZVxuLy8gcmVzdCBvZiB0aGUgVHJhbnNhY3Rpb24gZmllbGRzXG4vL1xuLy8gVE9ETzogcmVwbGFjZSAzMDAgd2l0aCBhIHByb3BlciBjb25zdGFudCBmb3IgdGhlIHNpemUgb2YgdGhlIG90aGVyXG4vLyBUcmFuc2FjdGlvbiBmaWVsZHNcbmNvbnN0IENIVU5LX1NJWkUgPSBQQUNLRVRfREFUQV9TSVpFIC0gMzAwO1xuXG4vKipcbiAqIFByb2dyYW0gbG9hZGVyIGludGVyZmFjZVxuICovXG5leHBvcnQgY2xhc3MgTG9hZGVyIHtcbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIC8qKlxuICAgKiBBbW91bnQgb2YgcHJvZ3JhbSBkYXRhIHBsYWNlZCBpbiBlYWNoIGxvYWQgVHJhbnNhY3Rpb25cbiAgICovXG4gIHN0YXRpYyBjaHVua1NpemU6IG51bWJlciA9IENIVU5LX1NJWkU7XG5cbiAgLyoqXG4gICAqIE1pbmltdW0gbnVtYmVyIG9mIHNpZ25hdHVyZXMgcmVxdWlyZWQgdG8gbG9hZCBhIHByb2dyYW0gbm90IGluY2x1ZGluZ1xuICAgKiByZXRyaWVzXG4gICAqXG4gICAqIENhbiBiZSB1c2VkIHRvIGNhbGN1bGF0ZSB0cmFuc2FjdGlvbiBmZWVzXG4gICAqL1xuICBzdGF0aWMgZ2V0TWluTnVtU2lnbmF0dXJlcyhkYXRhTGVuZ3RoOiBudW1iZXIpOiBudW1iZXIge1xuICAgIHJldHVybiAoXG4gICAgICAyICogLy8gRXZlcnkgdHJhbnNhY3Rpb24gcmVxdWlyZXMgdHdvIHNpZ25hdHVyZXMgKHBheWVyICsgcHJvZ3JhbSlcbiAgICAgIChNYXRoLmNlaWwoZGF0YUxlbmd0aCAvIExvYWRlci5jaHVua1NpemUpICtcbiAgICAgICAgMSArIC8vIEFkZCBvbmUgZm9yIENyZWF0ZSB0cmFuc2FjdGlvblxuICAgICAgICAxKSAvLyBBZGQgb25lIGZvciBGaW5hbGl6ZSB0cmFuc2FjdGlvblxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogTG9hZHMgYSBnZW5lcmljIHByb2dyYW1cbiAgICpcbiAgICogQHBhcmFtIGNvbm5lY3Rpb24gVGhlIGNvbm5lY3Rpb24gdG8gdXNlXG4gICAqIEBwYXJhbSBwYXllciBTeXN0ZW0gYWNjb3VudCB0aGF0IHBheXMgdG8gbG9hZCB0aGUgcHJvZ3JhbVxuICAgKiBAcGFyYW0gcHJvZ3JhbSBBY2NvdW50IHRvIGxvYWQgdGhlIHByb2dyYW0gaW50b1xuICAgKiBAcGFyYW0gcHJvZ3JhbUlkIFB1YmxpYyBrZXkgdGhhdCBpZGVudGlmaWVzIHRoZSBsb2FkZXJcbiAgICogQHBhcmFtIGRhdGEgUHJvZ3JhbSBvY3RldHNcbiAgICogQHJldHVybiB0cnVlIGlmIHByb2dyYW0gd2FzIGxvYWRlZCBzdWNjZXNzZnVsbHksIGZhbHNlIGlmIHByb2dyYW0gd2FzIGFscmVhZHkgbG9hZGVkXG4gICAqL1xuICBzdGF0aWMgYXN5bmMgbG9hZChcbiAgICBjb25uZWN0aW9uOiBDb25uZWN0aW9uLFxuICAgIHBheWVyOiBTaWduZXIsXG4gICAgcHJvZ3JhbTogU2lnbmVyLFxuICAgIHByb2dyYW1JZDogUHVibGljS2V5LFxuICAgIGRhdGE6IEJ1ZmZlciB8IFVpbnQ4QXJyYXkgfCBBcnJheTxudW1iZXI+LFxuICApOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICB7XG4gICAgICBjb25zdCBiYWxhbmNlTmVlZGVkID0gYXdhaXQgY29ubmVjdGlvbi5nZXRNaW5pbXVtQmFsYW5jZUZvclJlbnRFeGVtcHRpb24oXG4gICAgICAgIGRhdGEubGVuZ3RoLFxuICAgICAgKTtcblxuICAgICAgLy8gRmV0Y2ggcHJvZ3JhbSBhY2NvdW50IGluZm8gdG8gY2hlY2sgaWYgaXQgaGFzIGFscmVhZHkgYmVlbiBjcmVhdGVkXG4gICAgICBjb25zdCBwcm9ncmFtSW5mbyA9IGF3YWl0IGNvbm5lY3Rpb24uZ2V0QWNjb3VudEluZm8oXG4gICAgICAgIHByb2dyYW0ucHVibGljS2V5LFxuICAgICAgICAnY29uZmlybWVkJyxcbiAgICAgICk7XG5cbiAgICAgIGxldCB0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24gfCBudWxsID0gbnVsbDtcbiAgICAgIGlmIChwcm9ncmFtSW5mbyAhPT0gbnVsbCkge1xuICAgICAgICBpZiAocHJvZ3JhbUluZm8uZXhlY3V0YWJsZSkge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ1Byb2dyYW0gbG9hZCBmYWlsZWQsIGFjY291bnQgaXMgYWxyZWFkeSBleGVjdXRhYmxlJyk7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHByb2dyYW1JbmZvLmRhdGEubGVuZ3RoICE9PSBkYXRhLmxlbmd0aCkge1xuICAgICAgICAgIHRyYW5zYWN0aW9uID0gdHJhbnNhY3Rpb24gfHwgbmV3IFRyYW5zYWN0aW9uKCk7XG4gICAgICAgICAgdHJhbnNhY3Rpb24uYWRkKFxuICAgICAgICAgICAgU3lzdGVtUHJvZ3JhbS5hbGxvY2F0ZSh7XG4gICAgICAgICAgICAgIGFjY291bnRQdWJrZXk6IHByb2dyYW0ucHVibGljS2V5LFxuICAgICAgICAgICAgICBzcGFjZTogZGF0YS5sZW5ndGgsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFwcm9ncmFtSW5mby5vd25lci5lcXVhbHMocHJvZ3JhbUlkKSkge1xuICAgICAgICAgIHRyYW5zYWN0aW9uID0gdHJhbnNhY3Rpb24gfHwgbmV3IFRyYW5zYWN0aW9uKCk7XG4gICAgICAgICAgdHJhbnNhY3Rpb24uYWRkKFxuICAgICAgICAgICAgU3lzdGVtUHJvZ3JhbS5hc3NpZ24oe1xuICAgICAgICAgICAgICBhY2NvdW50UHVia2V5OiBwcm9ncmFtLnB1YmxpY0tleSxcbiAgICAgICAgICAgICAgcHJvZ3JhbUlkLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChwcm9ncmFtSW5mby5sYW1wb3J0cyA8IGJhbGFuY2VOZWVkZWQpIHtcbiAgICAgICAgICB0cmFuc2FjdGlvbiA9IHRyYW5zYWN0aW9uIHx8IG5ldyBUcmFuc2FjdGlvbigpO1xuICAgICAgICAgIHRyYW5zYWN0aW9uLmFkZChcbiAgICAgICAgICAgIFN5c3RlbVByb2dyYW0udHJhbnNmZXIoe1xuICAgICAgICAgICAgICBmcm9tUHVia2V5OiBwYXllci5wdWJsaWNLZXksXG4gICAgICAgICAgICAgIHRvUHVia2V5OiBwcm9ncmFtLnB1YmxpY0tleSxcbiAgICAgICAgICAgICAgbGFtcG9ydHM6IGJhbGFuY2VOZWVkZWQgLSBwcm9ncmFtSW5mby5sYW1wb3J0cyxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRyYW5zYWN0aW9uID0gbmV3IFRyYW5zYWN0aW9uKCkuYWRkKFxuICAgICAgICAgIFN5c3RlbVByb2dyYW0uY3JlYXRlQWNjb3VudCh7XG4gICAgICAgICAgICBmcm9tUHVia2V5OiBwYXllci5wdWJsaWNLZXksXG4gICAgICAgICAgICBuZXdBY2NvdW50UHVia2V5OiBwcm9ncmFtLnB1YmxpY0tleSxcbiAgICAgICAgICAgIGxhbXBvcnRzOiBiYWxhbmNlTmVlZGVkID4gMCA/IGJhbGFuY2VOZWVkZWQgOiAxLFxuICAgICAgICAgICAgc3BhY2U6IGRhdGEubGVuZ3RoLFxuICAgICAgICAgICAgcHJvZ3JhbUlkLFxuICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICAvLyBJZiB0aGUgYWNjb3VudCBpcyBhbHJlYWR5IGNyZWF0ZWQgY29ycmVjdGx5LCBza2lwIHRoaXMgc3RlcFxuICAgICAgLy8gYW5kIHByb2NlZWQgZGlyZWN0bHkgdG8gbG9hZGluZyBpbnN0cnVjdGlvbnNcbiAgICAgIGlmICh0cmFuc2FjdGlvbiAhPT0gbnVsbCkge1xuICAgICAgICBhd2FpdCBzZW5kQW5kQ29uZmlybVRyYW5zYWN0aW9uKFxuICAgICAgICAgIGNvbm5lY3Rpb24sXG4gICAgICAgICAgdHJhbnNhY3Rpb24sXG4gICAgICAgICAgW3BheWVyLCBwcm9ncmFtXSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBjb21taXRtZW50OiAnY29uZmlybWVkJyxcbiAgICAgICAgICB9LFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IGRhdGFMYXlvdXQgPSBCdWZmZXJMYXlvdXQuc3RydWN0PFxuICAgICAgUmVhZG9ubHk8e1xuICAgICAgICBieXRlczogbnVtYmVyW107XG4gICAgICAgIGJ5dGVzTGVuZ3RoOiBudW1iZXI7XG4gICAgICAgIGJ5dGVzTGVuZ3RoUGFkZGluZzogbnVtYmVyO1xuICAgICAgICBpbnN0cnVjdGlvbjogbnVtYmVyO1xuICAgICAgICBvZmZzZXQ6IG51bWJlcjtcbiAgICAgIH0+XG4gICAgPihbXG4gICAgICBCdWZmZXJMYXlvdXQudTMyKCdpbnN0cnVjdGlvbicpLFxuICAgICAgQnVmZmVyTGF5b3V0LnUzMignb2Zmc2V0JyksXG4gICAgICBCdWZmZXJMYXlvdXQudTMyKCdieXRlc0xlbmd0aCcpLFxuICAgICAgQnVmZmVyTGF5b3V0LnUzMignYnl0ZXNMZW5ndGhQYWRkaW5nJyksXG4gICAgICBCdWZmZXJMYXlvdXQuc2VxKFxuICAgICAgICBCdWZmZXJMYXlvdXQudTgoJ2J5dGUnKSxcbiAgICAgICAgQnVmZmVyTGF5b3V0Lm9mZnNldChCdWZmZXJMYXlvdXQudTMyKCksIC04KSxcbiAgICAgICAgJ2J5dGVzJyxcbiAgICAgICksXG4gICAgXSk7XG5cbiAgICBjb25zdCBjaHVua1NpemUgPSBMb2FkZXIuY2h1bmtTaXplO1xuICAgIGxldCBvZmZzZXQgPSAwO1xuICAgIGxldCBhcnJheSA9IGRhdGE7XG4gICAgbGV0IHRyYW5zYWN0aW9ucyA9IFtdO1xuICAgIHdoaWxlIChhcnJheS5sZW5ndGggPiAwKSB7XG4gICAgICBjb25zdCBieXRlcyA9IGFycmF5LnNsaWNlKDAsIGNodW5rU2l6ZSk7XG4gICAgICBjb25zdCBkYXRhID0gQnVmZmVyLmFsbG9jKGNodW5rU2l6ZSArIDE2KTtcbiAgICAgIGRhdGFMYXlvdXQuZW5jb2RlKFxuICAgICAgICB7XG4gICAgICAgICAgaW5zdHJ1Y3Rpb246IDAsIC8vIExvYWQgaW5zdHJ1Y3Rpb25cbiAgICAgICAgICBvZmZzZXQsXG4gICAgICAgICAgYnl0ZXM6IGJ5dGVzIGFzIG51bWJlcltdLFxuICAgICAgICAgIGJ5dGVzTGVuZ3RoOiAwLFxuICAgICAgICAgIGJ5dGVzTGVuZ3RoUGFkZGluZzogMCxcbiAgICAgICAgfSxcbiAgICAgICAgZGF0YSxcbiAgICAgICk7XG5cbiAgICAgIGNvbnN0IHRyYW5zYWN0aW9uID0gbmV3IFRyYW5zYWN0aW9uKCkuYWRkKHtcbiAgICAgICAga2V5czogW3twdWJrZXk6IHByb2dyYW0ucHVibGljS2V5LCBpc1NpZ25lcjogdHJ1ZSwgaXNXcml0YWJsZTogdHJ1ZX1dLFxuICAgICAgICBwcm9ncmFtSWQsXG4gICAgICAgIGRhdGEsXG4gICAgICB9KTtcbiAgICAgIHRyYW5zYWN0aW9ucy5wdXNoKFxuICAgICAgICBzZW5kQW5kQ29uZmlybVRyYW5zYWN0aW9uKGNvbm5lY3Rpb24sIHRyYW5zYWN0aW9uLCBbcGF5ZXIsIHByb2dyYW1dLCB7XG4gICAgICAgICAgY29tbWl0bWVudDogJ2NvbmZpcm1lZCcsXG4gICAgICAgIH0pLFxuICAgICAgKTtcblxuICAgICAgLy8gRGVsYXkgYmV0d2VlbiBzZW5kcyBpbiBhbiBhdHRlbXB0IHRvIHJlZHVjZSByYXRlIGxpbWl0IGVycm9yc1xuICAgICAgaWYgKGNvbm5lY3Rpb24uX3JwY0VuZHBvaW50LmluY2x1ZGVzKCdzb2xhbmEuY29tJykpIHtcbiAgICAgICAgY29uc3QgUkVRVUVTVFNfUEVSX1NFQ09ORCA9IDQ7XG4gICAgICAgIGF3YWl0IHNsZWVwKDEwMDAgLyBSRVFVRVNUU19QRVJfU0VDT05EKTtcbiAgICAgIH1cblxuICAgICAgb2Zmc2V0ICs9IGNodW5rU2l6ZTtcbiAgICAgIGFycmF5ID0gYXJyYXkuc2xpY2UoY2h1bmtTaXplKTtcbiAgICB9XG4gICAgYXdhaXQgUHJvbWlzZS5hbGwodHJhbnNhY3Rpb25zKTtcblxuICAgIC8vIEZpbmFsaXplIHRoZSBhY2NvdW50IGxvYWRlZCB3aXRoIHByb2dyYW0gZGF0YSBmb3IgZXhlY3V0aW9uXG4gICAge1xuICAgICAgY29uc3QgZGF0YUxheW91dCA9IEJ1ZmZlckxheW91dC5zdHJ1Y3Q8SUluc3RydWN0aW9uSW5wdXREYXRhPihbXG4gICAgICAgIEJ1ZmZlckxheW91dC51MzIoJ2luc3RydWN0aW9uJyksXG4gICAgICBdKTtcblxuICAgICAgY29uc3QgZGF0YSA9IEJ1ZmZlci5hbGxvYyhkYXRhTGF5b3V0LnNwYW4pO1xuICAgICAgZGF0YUxheW91dC5lbmNvZGUoXG4gICAgICAgIHtcbiAgICAgICAgICBpbnN0cnVjdGlvbjogMSwgLy8gRmluYWxpemUgaW5zdHJ1Y3Rpb25cbiAgICAgICAgfSxcbiAgICAgICAgZGF0YSxcbiAgICAgICk7XG5cbiAgICAgIGNvbnN0IHRyYW5zYWN0aW9uID0gbmV3IFRyYW5zYWN0aW9uKCkuYWRkKHtcbiAgICAgICAga2V5czogW1xuICAgICAgICAgIHtwdWJrZXk6IHByb2dyYW0ucHVibGljS2V5LCBpc1NpZ25lcjogdHJ1ZSwgaXNXcml0YWJsZTogdHJ1ZX0sXG4gICAgICAgICAge3B1YmtleTogU1lTVkFSX1JFTlRfUFVCS0VZLCBpc1NpZ25lcjogZmFsc2UsIGlzV3JpdGFibGU6IGZhbHNlfSxcbiAgICAgICAgXSxcbiAgICAgICAgcHJvZ3JhbUlkLFxuICAgICAgICBkYXRhLFxuICAgICAgfSk7XG4gICAgICBjb25zdCBkZXBsb3lDb21taXRtZW50ID0gJ3Byb2Nlc3NlZCc7XG4gICAgICBjb25zdCBmaW5hbGl6ZVNpZ25hdHVyZSA9IGF3YWl0IGNvbm5lY3Rpb24uc2VuZFRyYW5zYWN0aW9uKFxuICAgICAgICB0cmFuc2FjdGlvbixcbiAgICAgICAgW3BheWVyLCBwcm9ncmFtXSxcbiAgICAgICAge3ByZWZsaWdodENvbW1pdG1lbnQ6IGRlcGxveUNvbW1pdG1lbnR9LFxuICAgICAgKTtcbiAgICAgIGNvbnN0IHtjb250ZXh0LCB2YWx1ZX0gPSBhd2FpdCBjb25uZWN0aW9uLmNvbmZpcm1UcmFuc2FjdGlvbihcbiAgICAgICAge1xuICAgICAgICAgIHNpZ25hdHVyZTogZmluYWxpemVTaWduYXR1cmUsXG4gICAgICAgICAgbGFzdFZhbGlkQmxvY2tIZWlnaHQ6IHRyYW5zYWN0aW9uLmxhc3RWYWxpZEJsb2NrSGVpZ2h0ISxcbiAgICAgICAgICBibG9ja2hhc2g6IHRyYW5zYWN0aW9uLnJlY2VudEJsb2NraGFzaCEsXG4gICAgICAgIH0sXG4gICAgICAgIGRlcGxveUNvbW1pdG1lbnQsXG4gICAgICApO1xuICAgICAgaWYgKHZhbHVlLmVycikge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgYFRyYW5zYWN0aW9uICR7ZmluYWxpemVTaWduYXR1cmV9IGZhaWxlZCAoJHtKU09OLnN0cmluZ2lmeSh2YWx1ZSl9KWAsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICAvLyBXZSBwcmV2ZW50IHByb2dyYW1zIGZyb20gYmVpbmcgdXNhYmxlIHVudGlsIHRoZSBzbG90IGFmdGVyIHRoZWlyIGRlcGxveW1lbnQuXG4gICAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3NvbGFuYS1sYWJzL3NvbGFuYS9wdWxsLzI5NjU0XG4gICAgICB3aGlsZSAoXG4gICAgICAgIHRydWUgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby1jb25zdGFudC1jb25kaXRpb25cbiAgICAgICkge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGNvbnN0IGN1cnJlbnRTbG90ID0gYXdhaXQgY29ubmVjdGlvbi5nZXRTbG90KHtcbiAgICAgICAgICAgIGNvbW1pdG1lbnQ6IGRlcGxveUNvbW1pdG1lbnQsXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgaWYgKGN1cnJlbnRTbG90ID4gY29udGV4dC5zbG90KSB7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG4gICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgIC8qIGVtcHR5ICovXG4gICAgICAgIH1cbiAgICAgICAgYXdhaXQgbmV3IFByb21pc2UocmVzb2x2ZSA9PlxuICAgICAgICAgIHNldFRpbWVvdXQocmVzb2x2ZSwgTWF0aC5yb3VuZChNU19QRVJfU0xPVCAvIDIpKSxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBzdWNjZXNzXG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbn1cbiIsICJpbXBvcnQgdHlwZSB7QnVmZmVyfSBmcm9tICdidWZmZXInO1xuXG5pbXBvcnQge1B1YmxpY0tleX0gZnJvbSAnLi9wdWJsaWNrZXknO1xuaW1wb3J0IHtMb2FkZXJ9IGZyb20gJy4vbG9hZGVyJztcbmltcG9ydCB0eXBlIHtDb25uZWN0aW9ufSBmcm9tICcuL2Nvbm5lY3Rpb24nO1xuaW1wb3J0IHR5cGUge1NpZ25lcn0gZnJvbSAnLi9rZXlwYWlyJztcblxuZXhwb3J0IGNvbnN0IEJQRl9MT0FERVJfUFJPR1JBTV9JRCA9IG5ldyBQdWJsaWNLZXkoXG4gICdCUEZMb2FkZXIyMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExJyxcbik7XG5cbi8qKlxuICogRmFjdG9yeSBjbGFzcyBmb3IgdHJhbnNhY3Rpb25zIHRvIGludGVyYWN0IHdpdGggYSBwcm9ncmFtIGxvYWRlclxuICovXG5leHBvcnQgY2xhc3MgQnBmTG9hZGVyIHtcbiAgLyoqXG4gICAqIE1pbmltdW0gbnVtYmVyIG9mIHNpZ25hdHVyZXMgcmVxdWlyZWQgdG8gbG9hZCBhIHByb2dyYW0gbm90IGluY2x1ZGluZ1xuICAgKiByZXRyaWVzXG4gICAqXG4gICAqIENhbiBiZSB1c2VkIHRvIGNhbGN1bGF0ZSB0cmFuc2FjdGlvbiBmZWVzXG4gICAqL1xuICBzdGF0aWMgZ2V0TWluTnVtU2lnbmF0dXJlcyhkYXRhTGVuZ3RoOiBudW1iZXIpOiBudW1iZXIge1xuICAgIHJldHVybiBMb2FkZXIuZ2V0TWluTnVtU2lnbmF0dXJlcyhkYXRhTGVuZ3RoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2FkIGEgU0JGIHByb2dyYW1cbiAgICpcbiAgICogQHBhcmFtIGNvbm5lY3Rpb24gVGhlIGNvbm5lY3Rpb24gdG8gdXNlXG4gICAqIEBwYXJhbSBwYXllciBBY2NvdW50IHRoYXQgd2lsbCBwYXkgcHJvZ3JhbSBsb2FkaW5nIGZlZXNcbiAgICogQHBhcmFtIHByb2dyYW0gQWNjb3VudCB0byBsb2FkIHRoZSBwcm9ncmFtIGludG9cbiAgICogQHBhcmFtIGVsZiBUaGUgZW50aXJlIEVMRiBjb250YWluaW5nIHRoZSBTQkYgcHJvZ3JhbVxuICAgKiBAcGFyYW0gbG9hZGVyUHJvZ3JhbUlkIFRoZSBwcm9ncmFtIGlkIG9mIHRoZSBCUEYgbG9hZGVyIHRvIHVzZVxuICAgKiBAcmV0dXJuIHRydWUgaWYgcHJvZ3JhbSB3YXMgbG9hZGVkIHN1Y2Nlc3NmdWxseSwgZmFsc2UgaWYgcHJvZ3JhbSB3YXMgYWxyZWFkeSBsb2FkZWRcbiAgICovXG4gIHN0YXRpYyBsb2FkKFxuICAgIGNvbm5lY3Rpb246IENvbm5lY3Rpb24sXG4gICAgcGF5ZXI6IFNpZ25lcixcbiAgICBwcm9ncmFtOiBTaWduZXIsXG4gICAgZWxmOiBCdWZmZXIgfCBVaW50OEFycmF5IHwgQXJyYXk8bnVtYmVyPixcbiAgICBsb2FkZXJQcm9ncmFtSWQ6IFB1YmxpY0tleSxcbiAgKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIExvYWRlci5sb2FkKGNvbm5lY3Rpb24sIHBheWVyLCBwcm9ncmFtLCBsb2FkZXJQcm9ncmFtSWQsIGVsZik7XG4gIH1cbn1cbiIsICIvKipcbiAqIEhlbHBlcnMuXG4gKi9cblxudmFyIHMgPSAxMDAwO1xudmFyIG0gPSBzICogNjA7XG52YXIgaCA9IG0gKiA2MDtcbnZhciBkID0gaCAqIDI0O1xudmFyIHcgPSBkICogNztcbnZhciB5ID0gZCAqIDM2NS4yNTtcblxuLyoqXG4gKiBQYXJzZSBvciBmb3JtYXQgdGhlIGdpdmVuIGB2YWxgLlxuICpcbiAqIE9wdGlvbnM6XG4gKlxuICogIC0gYGxvbmdgIHZlcmJvc2UgZm9ybWF0dGluZyBbZmFsc2VdXG4gKlxuICogQHBhcmFtIHtTdHJpbmd8TnVtYmVyfSB2YWxcbiAqIEBwYXJhbSB7T2JqZWN0fSBbb3B0aW9uc11cbiAqIEB0aHJvd3Mge0Vycm9yfSB0aHJvdyBhbiBlcnJvciBpZiB2YWwgaXMgbm90IGEgbm9uLWVtcHR5IHN0cmluZyBvciBhIG51bWJlclxuICogQHJldHVybiB7U3RyaW5nfE51bWJlcn1cbiAqIEBhcGkgcHVibGljXG4gKi9cblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAodmFsLCBvcHRpb25zKSB7XG4gIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9O1xuICB2YXIgdHlwZSA9IHR5cGVvZiB2YWw7XG4gIGlmICh0eXBlID09PSAnc3RyaW5nJyAmJiB2YWwubGVuZ3RoID4gMCkge1xuICAgIHJldHVybiBwYXJzZSh2YWwpO1xuICB9IGVsc2UgaWYgKHR5cGUgPT09ICdudW1iZXInICYmIGlzRmluaXRlKHZhbCkpIHtcbiAgICByZXR1cm4gb3B0aW9ucy5sb25nID8gZm10TG9uZyh2YWwpIDogZm10U2hvcnQodmFsKTtcbiAgfVxuICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgJ3ZhbCBpcyBub3QgYSBub24tZW1wdHkgc3RyaW5nIG9yIGEgdmFsaWQgbnVtYmVyLiB2YWw9JyArXG4gICAgICBKU09OLnN0cmluZ2lmeSh2YWwpXG4gICk7XG59O1xuXG4vKipcbiAqIFBhcnNlIHRoZSBnaXZlbiBgc3RyYCBhbmQgcmV0dXJuIG1pbGxpc2Vjb25kcy5cbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gc3RyXG4gKiBAcmV0dXJuIHtOdW1iZXJ9XG4gKiBAYXBpIHByaXZhdGVcbiAqL1xuXG5mdW5jdGlvbiBwYXJzZShzdHIpIHtcbiAgc3RyID0gU3RyaW5nKHN0cik7XG4gIGlmIChzdHIubGVuZ3RoID4gMTAwKSB7XG4gICAgcmV0dXJuO1xuICB9XG4gIHZhciBtYXRjaCA9IC9eKC0/KD86XFxkKyk/XFwuP1xcZCspICoobWlsbGlzZWNvbmRzP3xtc2Vjcz98bXN8c2Vjb25kcz98c2Vjcz98c3xtaW51dGVzP3xtaW5zP3xtfGhvdXJzP3xocnM/fGh8ZGF5cz98ZHx3ZWVrcz98d3x5ZWFycz98eXJzP3x5KT8kL2kuZXhlYyhcbiAgICBzdHJcbiAgKTtcbiAgaWYgKCFtYXRjaCkge1xuICAgIHJldHVybjtcbiAgfVxuICB2YXIgbiA9IHBhcnNlRmxvYXQobWF0Y2hbMV0pO1xuICB2YXIgdHlwZSA9IChtYXRjaFsyXSB8fCAnbXMnKS50b0xvd2VyQ2FzZSgpO1xuICBzd2l0Y2ggKHR5cGUpIHtcbiAgICBjYXNlICd5ZWFycyc6XG4gICAgY2FzZSAneWVhcic6XG4gICAgY2FzZSAneXJzJzpcbiAgICBjYXNlICd5cic6XG4gICAgY2FzZSAneSc6XG4gICAgICByZXR1cm4gbiAqIHk7XG4gICAgY2FzZSAnd2Vla3MnOlxuICAgIGNhc2UgJ3dlZWsnOlxuICAgIGNhc2UgJ3cnOlxuICAgICAgcmV0dXJuIG4gKiB3O1xuICAgIGNhc2UgJ2RheXMnOlxuICAgIGNhc2UgJ2RheSc6XG4gICAgY2FzZSAnZCc6XG4gICAgICByZXR1cm4gbiAqIGQ7XG4gICAgY2FzZSAnaG91cnMnOlxuICAgIGNhc2UgJ2hvdXInOlxuICAgIGNhc2UgJ2hycyc6XG4gICAgY2FzZSAnaHInOlxuICAgIGNhc2UgJ2gnOlxuICAgICAgcmV0dXJuIG4gKiBoO1xuICAgIGNhc2UgJ21pbnV0ZXMnOlxuICAgIGNhc2UgJ21pbnV0ZSc6XG4gICAgY2FzZSAnbWlucyc6XG4gICAgY2FzZSAnbWluJzpcbiAgICBjYXNlICdtJzpcbiAgICAgIHJldHVybiBuICogbTtcbiAgICBjYXNlICdzZWNvbmRzJzpcbiAgICBjYXNlICdzZWNvbmQnOlxuICAgIGNhc2UgJ3NlY3MnOlxuICAgIGNhc2UgJ3NlYyc6XG4gICAgY2FzZSAncyc6XG4gICAgICByZXR1cm4gbiAqIHM7XG4gICAgY2FzZSAnbWlsbGlzZWNvbmRzJzpcbiAgICBjYXNlICdtaWxsaXNlY29uZCc6XG4gICAgY2FzZSAnbXNlY3MnOlxuICAgIGNhc2UgJ21zZWMnOlxuICAgIGNhc2UgJ21zJzpcbiAgICAgIHJldHVybiBuO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG59XG5cbi8qKlxuICogU2hvcnQgZm9ybWF0IGZvciBgbXNgLlxuICpcbiAqIEBwYXJhbSB7TnVtYmVyfSBtc1xuICogQHJldHVybiB7U3RyaW5nfVxuICogQGFwaSBwcml2YXRlXG4gKi9cblxuZnVuY3Rpb24gZm10U2hvcnQobXMpIHtcbiAgdmFyIG1zQWJzID0gTWF0aC5hYnMobXMpO1xuICBpZiAobXNBYnMgPj0gZCkge1xuICAgIHJldHVybiBNYXRoLnJvdW5kKG1zIC8gZCkgKyAnZCc7XG4gIH1cbiAgaWYgKG1zQWJzID49IGgpIHtcbiAgICByZXR1cm4gTWF0aC5yb3VuZChtcyAvIGgpICsgJ2gnO1xuICB9XG4gIGlmIChtc0FicyA+PSBtKSB7XG4gICAgcmV0dXJuIE1hdGgucm91bmQobXMgLyBtKSArICdtJztcbiAgfVxuICBpZiAobXNBYnMgPj0gcykge1xuICAgIHJldHVybiBNYXRoLnJvdW5kKG1zIC8gcykgKyAncyc7XG4gIH1cbiAgcmV0dXJuIG1zICsgJ21zJztcbn1cblxuLyoqXG4gKiBMb25nIGZvcm1hdCBmb3IgYG1zYC5cbiAqXG4gKiBAcGFyYW0ge051bWJlcn0gbXNcbiAqIEByZXR1cm4ge1N0cmluZ31cbiAqIEBhcGkgcHJpdmF0ZVxuICovXG5cbmZ1bmN0aW9uIGZtdExvbmcobXMpIHtcbiAgdmFyIG1zQWJzID0gTWF0aC5hYnMobXMpO1xuICBpZiAobXNBYnMgPj0gZCkge1xuICAgIHJldHVybiBwbHVyYWwobXMsIG1zQWJzLCBkLCAnZGF5Jyk7XG4gIH1cbiAgaWYgKG1zQWJzID49IGgpIHtcbiAgICByZXR1cm4gcGx1cmFsKG1zLCBtc0FicywgaCwgJ2hvdXInKTtcbiAgfVxuICBpZiAobXNBYnMgPj0gbSkge1xuICAgIHJldHVybiBwbHVyYWwobXMsIG1zQWJzLCBtLCAnbWludXRlJyk7XG4gIH1cbiAgaWYgKG1zQWJzID49IHMpIHtcbiAgICByZXR1cm4gcGx1cmFsKG1zLCBtc0FicywgcywgJ3NlY29uZCcpO1xuICB9XG4gIHJldHVybiBtcyArICcgbXMnO1xufVxuXG4vKipcbiAqIFBsdXJhbGl6YXRpb24gaGVscGVyLlxuICovXG5cbmZ1bmN0aW9uIHBsdXJhbChtcywgbXNBYnMsIG4sIG5hbWUpIHtcbiAgdmFyIGlzUGx1cmFsID0gbXNBYnMgPj0gbiAqIDEuNTtcbiAgcmV0dXJuIE1hdGgucm91bmQobXMgLyBuKSArICcgJyArIG5hbWUgKyAoaXNQbHVyYWwgPyAncycgOiAnJyk7XG59XG4iLCAiLyohXG4gKiBodW1hbml6ZS1tcyAtIGluZGV4LmpzXG4gKiBDb3B5cmlnaHQoYykgMjAxNCBkZWFkX2hvcnNlIDxkZWFkX2hvcnNlQHFxLmNvbT5cbiAqIE1JVCBMaWNlbnNlZFxuICovXG5cbid1c2Ugc3RyaWN0JztcblxuLyoqXG4gKiBNb2R1bGUgZGVwZW5kZW5jaWVzLlxuICovXG5cbnZhciB1dGlsID0gcmVxdWlyZSgndXRpbCcpO1xudmFyIG1zID0gcmVxdWlyZSgnbXMnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAodCkge1xuICBpZiAodHlwZW9mIHQgPT09ICdudW1iZXInKSByZXR1cm4gdDtcbiAgdmFyIHIgPSBtcyh0KTtcbiAgaWYgKHIgPT09IHVuZGVmaW5lZCkge1xuICAgIHZhciBlcnIgPSBuZXcgRXJyb3IodXRpbC5mb3JtYXQoJ2h1bWFuaXplLW1zKCVqKSByZXN1bHQgdW5kZWZpbmVkJywgdCkpO1xuICAgIGNvbnNvbGUud2FybihlcnIuc3RhY2spO1xuICB9XG4gIHJldHVybiByO1xufTtcbiIsICIvKipcbiAqIEhlbHBlcnMuXG4gKi9cblxudmFyIHMgPSAxMDAwO1xudmFyIG0gPSBzICogNjA7XG52YXIgaCA9IG0gKiA2MDtcbnZhciBkID0gaCAqIDI0O1xudmFyIHcgPSBkICogNztcbnZhciB5ID0gZCAqIDM2NS4yNTtcblxuLyoqXG4gKiBQYXJzZSBvciBmb3JtYXQgdGhlIGdpdmVuIGB2YWxgLlxuICpcbiAqIE9wdGlvbnM6XG4gKlxuICogIC0gYGxvbmdgIHZlcmJvc2UgZm9ybWF0dGluZyBbZmFsc2VdXG4gKlxuICogQHBhcmFtIHtTdHJpbmd8TnVtYmVyfSB2YWxcbiAqIEBwYXJhbSB7T2JqZWN0fSBbb3B0aW9uc11cbiAqIEB0aHJvd3Mge0Vycm9yfSB0aHJvdyBhbiBlcnJvciBpZiB2YWwgaXMgbm90IGEgbm9uLWVtcHR5IHN0cmluZyBvciBhIG51bWJlclxuICogQHJldHVybiB7U3RyaW5nfE51bWJlcn1cbiAqIEBhcGkgcHVibGljXG4gKi9cblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbih2YWwsIG9wdGlvbnMpIHtcbiAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307XG4gIHZhciB0eXBlID0gdHlwZW9mIHZhbDtcbiAgaWYgKHR5cGUgPT09ICdzdHJpbmcnICYmIHZhbC5sZW5ndGggPiAwKSB7XG4gICAgcmV0dXJuIHBhcnNlKHZhbCk7XG4gIH0gZWxzZSBpZiAodHlwZSA9PT0gJ251bWJlcicgJiYgaXNGaW5pdGUodmFsKSkge1xuICAgIHJldHVybiBvcHRpb25zLmxvbmcgPyBmbXRMb25nKHZhbCkgOiBmbXRTaG9ydCh2YWwpO1xuICB9XG4gIHRocm93IG5ldyBFcnJvcihcbiAgICAndmFsIGlzIG5vdCBhIG5vbi1lbXB0eSBzdHJpbmcgb3IgYSB2YWxpZCBudW1iZXIuIHZhbD0nICtcbiAgICAgIEpTT04uc3RyaW5naWZ5KHZhbClcbiAgKTtcbn07XG5cbi8qKlxuICogUGFyc2UgdGhlIGdpdmVuIGBzdHJgIGFuZCByZXR1cm4gbWlsbGlzZWNvbmRzLlxuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSBzdHJcbiAqIEByZXR1cm4ge051bWJlcn1cbiAqIEBhcGkgcHJpdmF0ZVxuICovXG5cbmZ1bmN0aW9uIHBhcnNlKHN0cikge1xuICBzdHIgPSBTdHJpbmcoc3RyKTtcbiAgaWYgKHN0ci5sZW5ndGggPiAxMDApIHtcbiAgICByZXR1cm47XG4gIH1cbiAgdmFyIG1hdGNoID0gL14oLT8oPzpcXGQrKT9cXC4/XFxkKykgKihtaWxsaXNlY29uZHM/fG1zZWNzP3xtc3xzZWNvbmRzP3xzZWNzP3xzfG1pbnV0ZXM/fG1pbnM/fG18aG91cnM/fGhycz98aHxkYXlzP3xkfHdlZWtzP3x3fHllYXJzP3x5cnM/fHkpPyQvaS5leGVjKFxuICAgIHN0clxuICApO1xuICBpZiAoIW1hdGNoKSB7XG4gICAgcmV0dXJuO1xuICB9XG4gIHZhciBuID0gcGFyc2VGbG9hdChtYXRjaFsxXSk7XG4gIHZhciB0eXBlID0gKG1hdGNoWzJdIHx8ICdtcycpLnRvTG93ZXJDYXNlKCk7XG4gIHN3aXRjaCAodHlwZSkge1xuICAgIGNhc2UgJ3llYXJzJzpcbiAgICBjYXNlICd5ZWFyJzpcbiAgICBjYXNlICd5cnMnOlxuICAgIGNhc2UgJ3lyJzpcbiAgICBjYXNlICd5JzpcbiAgICAgIHJldHVybiBuICogeTtcbiAgICBjYXNlICd3ZWVrcyc6XG4gICAgY2FzZSAnd2Vlayc6XG4gICAgY2FzZSAndyc6XG4gICAgICByZXR1cm4gbiAqIHc7XG4gICAgY2FzZSAnZGF5cyc6XG4gICAgY2FzZSAnZGF5JzpcbiAgICBjYXNlICdkJzpcbiAgICAgIHJldHVybiBuICogZDtcbiAgICBjYXNlICdob3Vycyc6XG4gICAgY2FzZSAnaG91cic6XG4gICAgY2FzZSAnaHJzJzpcbiAgICBjYXNlICdocic6XG4gICAgY2FzZSAnaCc6XG4gICAgICByZXR1cm4gbiAqIGg7XG4gICAgY2FzZSAnbWludXRlcyc6XG4gICAgY2FzZSAnbWludXRlJzpcbiAgICBjYXNlICdtaW5zJzpcbiAgICBjYXNlICdtaW4nOlxuICAgIGNhc2UgJ20nOlxuICAgICAgcmV0dXJuIG4gKiBtO1xuICAgIGNhc2UgJ3NlY29uZHMnOlxuICAgIGNhc2UgJ3NlY29uZCc6XG4gICAgY2FzZSAnc2Vjcyc6XG4gICAgY2FzZSAnc2VjJzpcbiAgICBjYXNlICdzJzpcbiAgICAgIHJldHVybiBuICogcztcbiAgICBjYXNlICdtaWxsaXNlY29uZHMnOlxuICAgIGNhc2UgJ21pbGxpc2Vjb25kJzpcbiAgICBjYXNlICdtc2Vjcyc6XG4gICAgY2FzZSAnbXNlYyc6XG4gICAgY2FzZSAnbXMnOlxuICAgICAgcmV0dXJuIG47XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbn1cblxuLyoqXG4gKiBTaG9ydCBmb3JtYXQgZm9yIGBtc2AuXG4gKlxuICogQHBhcmFtIHtOdW1iZXJ9IG1zXG4gKiBAcmV0dXJuIHtTdHJpbmd9XG4gKiBAYXBpIHByaXZhdGVcbiAqL1xuXG5mdW5jdGlvbiBmbXRTaG9ydChtcykge1xuICB2YXIgbXNBYnMgPSBNYXRoLmFicyhtcyk7XG4gIGlmIChtc0FicyA+PSBkKSB7XG4gICAgcmV0dXJuIE1hdGgucm91bmQobXMgLyBkKSArICdkJztcbiAgfVxuICBpZiAobXNBYnMgPj0gaCkge1xuICAgIHJldHVybiBNYXRoLnJvdW5kKG1zIC8gaCkgKyAnaCc7XG4gIH1cbiAgaWYgKG1zQWJzID49IG0pIHtcbiAgICByZXR1cm4gTWF0aC5yb3VuZChtcyAvIG0pICsgJ20nO1xuICB9XG4gIGlmIChtc0FicyA+PSBzKSB7XG4gICAgcmV0dXJuIE1hdGgucm91bmQobXMgLyBzKSArICdzJztcbiAgfVxuICByZXR1cm4gbXMgKyAnbXMnO1xufVxuXG4vKipcbiAqIExvbmcgZm9ybWF0IGZvciBgbXNgLlxuICpcbiAqIEBwYXJhbSB7TnVtYmVyfSBtc1xuICogQHJldHVybiB7U3RyaW5nfVxuICogQGFwaSBwcml2YXRlXG4gKi9cblxuZnVuY3Rpb24gZm10TG9uZyhtcykge1xuICB2YXIgbXNBYnMgPSBNYXRoLmFicyhtcyk7XG4gIGlmIChtc0FicyA+PSBkKSB7XG4gICAgcmV0dXJuIHBsdXJhbChtcywgbXNBYnMsIGQsICdkYXknKTtcbiAgfVxuICBpZiAobXNBYnMgPj0gaCkge1xuICAgIHJldHVybiBwbHVyYWwobXMsIG1zQWJzLCBoLCAnaG91cicpO1xuICB9XG4gIGlmIChtc0FicyA+PSBtKSB7XG4gICAgcmV0dXJuIHBsdXJhbChtcywgbXNBYnMsIG0sICdtaW51dGUnKTtcbiAgfVxuICBpZiAobXNBYnMgPj0gcykge1xuICAgIHJldHVybiBwbHVyYWwobXMsIG1zQWJzLCBzLCAnc2Vjb25kJyk7XG4gIH1cbiAgcmV0dXJuIG1zICsgJyBtcyc7XG59XG5cbi8qKlxuICogUGx1cmFsaXphdGlvbiBoZWxwZXIuXG4gKi9cblxuZnVuY3Rpb24gcGx1cmFsKG1zLCBtc0FicywgbiwgbmFtZSkge1xuICB2YXIgaXNQbHVyYWwgPSBtc0FicyA+PSBuICogMS41O1xuICByZXR1cm4gTWF0aC5yb3VuZChtcyAvIG4pICsgJyAnICsgbmFtZSArIChpc1BsdXJhbCA/ICdzJyA6ICcnKTtcbn1cbiIsICJcbi8qKlxuICogVGhpcyBpcyB0aGUgY29tbW9uIGxvZ2ljIGZvciBib3RoIHRoZSBOb2RlLmpzIGFuZCB3ZWIgYnJvd3NlclxuICogaW1wbGVtZW50YXRpb25zIG9mIGBkZWJ1ZygpYC5cbiAqL1xuXG5mdW5jdGlvbiBzZXR1cChlbnYpIHtcblx0Y3JlYXRlRGVidWcuZGVidWcgPSBjcmVhdGVEZWJ1Zztcblx0Y3JlYXRlRGVidWcuZGVmYXVsdCA9IGNyZWF0ZURlYnVnO1xuXHRjcmVhdGVEZWJ1Zy5jb2VyY2UgPSBjb2VyY2U7XG5cdGNyZWF0ZURlYnVnLmRpc2FibGUgPSBkaXNhYmxlO1xuXHRjcmVhdGVEZWJ1Zy5lbmFibGUgPSBlbmFibGU7XG5cdGNyZWF0ZURlYnVnLmVuYWJsZWQgPSBlbmFibGVkO1xuXHRjcmVhdGVEZWJ1Zy5odW1hbml6ZSA9IHJlcXVpcmUoJ21zJyk7XG5cdGNyZWF0ZURlYnVnLmRlc3Ryb3kgPSBkZXN0cm95O1xuXG5cdE9iamVjdC5rZXlzKGVudikuZm9yRWFjaChrZXkgPT4ge1xuXHRcdGNyZWF0ZURlYnVnW2tleV0gPSBlbnZba2V5XTtcblx0fSk7XG5cblx0LyoqXG5cdCogVGhlIGN1cnJlbnRseSBhY3RpdmUgZGVidWcgbW9kZSBuYW1lcywgYW5kIG5hbWVzIHRvIHNraXAuXG5cdCovXG5cblx0Y3JlYXRlRGVidWcubmFtZXMgPSBbXTtcblx0Y3JlYXRlRGVidWcuc2tpcHMgPSBbXTtcblxuXHQvKipcblx0KiBNYXAgb2Ygc3BlY2lhbCBcIiVuXCIgaGFuZGxpbmcgZnVuY3Rpb25zLCBmb3IgdGhlIGRlYnVnIFwiZm9ybWF0XCIgYXJndW1lbnQuXG5cdCpcblx0KiBWYWxpZCBrZXkgbmFtZXMgYXJlIGEgc2luZ2xlLCBsb3dlciBvciB1cHBlci1jYXNlIGxldHRlciwgaS5lLiBcIm5cIiBhbmQgXCJOXCIuXG5cdCovXG5cdGNyZWF0ZURlYnVnLmZvcm1hdHRlcnMgPSB7fTtcblxuXHQvKipcblx0KiBTZWxlY3RzIGEgY29sb3IgZm9yIGEgZGVidWcgbmFtZXNwYWNlXG5cdCogQHBhcmFtIHtTdHJpbmd9IG5hbWVzcGFjZSBUaGUgbmFtZXNwYWNlIHN0cmluZyBmb3IgdGhlIGRlYnVnIGluc3RhbmNlIHRvIGJlIGNvbG9yZWRcblx0KiBAcmV0dXJuIHtOdW1iZXJ8U3RyaW5nfSBBbiBBTlNJIGNvbG9yIGNvZGUgZm9yIHRoZSBnaXZlbiBuYW1lc3BhY2Vcblx0KiBAYXBpIHByaXZhdGVcblx0Ki9cblx0ZnVuY3Rpb24gc2VsZWN0Q29sb3IobmFtZXNwYWNlKSB7XG5cdFx0bGV0IGhhc2ggPSAwO1xuXG5cdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCBuYW1lc3BhY2UubGVuZ3RoOyBpKyspIHtcblx0XHRcdGhhc2ggPSAoKGhhc2ggPDwgNSkgLSBoYXNoKSArIG5hbWVzcGFjZS5jaGFyQ29kZUF0KGkpO1xuXHRcdFx0aGFzaCB8PSAwOyAvLyBDb252ZXJ0IHRvIDMyYml0IGludGVnZXJcblx0XHR9XG5cblx0XHRyZXR1cm4gY3JlYXRlRGVidWcuY29sb3JzW01hdGguYWJzKGhhc2gpICUgY3JlYXRlRGVidWcuY29sb3JzLmxlbmd0aF07XG5cdH1cblx0Y3JlYXRlRGVidWcuc2VsZWN0Q29sb3IgPSBzZWxlY3RDb2xvcjtcblxuXHQvKipcblx0KiBDcmVhdGUgYSBkZWJ1Z2dlciB3aXRoIHRoZSBnaXZlbiBgbmFtZXNwYWNlYC5cblx0KlxuXHQqIEBwYXJhbSB7U3RyaW5nfSBuYW1lc3BhY2Vcblx0KiBAcmV0dXJuIHtGdW5jdGlvbn1cblx0KiBAYXBpIHB1YmxpY1xuXHQqL1xuXHRmdW5jdGlvbiBjcmVhdGVEZWJ1ZyhuYW1lc3BhY2UpIHtcblx0XHRsZXQgcHJldlRpbWU7XG5cdFx0bGV0IGVuYWJsZU92ZXJyaWRlID0gbnVsbDtcblx0XHRsZXQgbmFtZXNwYWNlc0NhY2hlO1xuXHRcdGxldCBlbmFibGVkQ2FjaGU7XG5cblx0XHRmdW5jdGlvbiBkZWJ1ZyguLi5hcmdzKSB7XG5cdFx0XHQvLyBEaXNhYmxlZD9cblx0XHRcdGlmICghZGVidWcuZW5hYmxlZCkge1xuXHRcdFx0XHRyZXR1cm47XG5cdFx0XHR9XG5cblx0XHRcdGNvbnN0IHNlbGYgPSBkZWJ1ZztcblxuXHRcdFx0Ly8gU2V0IGBkaWZmYCB0aW1lc3RhbXBcblx0XHRcdGNvbnN0IGN1cnIgPSBOdW1iZXIobmV3IERhdGUoKSk7XG5cdFx0XHRjb25zdCBtcyA9IGN1cnIgLSAocHJldlRpbWUgfHwgY3Vycik7XG5cdFx0XHRzZWxmLmRpZmYgPSBtcztcblx0XHRcdHNlbGYucHJldiA9IHByZXZUaW1lO1xuXHRcdFx0c2VsZi5jdXJyID0gY3Vycjtcblx0XHRcdHByZXZUaW1lID0gY3VycjtcblxuXHRcdFx0YXJnc1swXSA9IGNyZWF0ZURlYnVnLmNvZXJjZShhcmdzWzBdKTtcblxuXHRcdFx0aWYgKHR5cGVvZiBhcmdzWzBdICE9PSAnc3RyaW5nJykge1xuXHRcdFx0XHQvLyBBbnl0aGluZyBlbHNlIGxldCdzIGluc3BlY3Qgd2l0aCAlT1xuXHRcdFx0XHRhcmdzLnVuc2hpZnQoJyVPJyk7XG5cdFx0XHR9XG5cblx0XHRcdC8vIEFwcGx5IGFueSBgZm9ybWF0dGVyc2AgdHJhbnNmb3JtYXRpb25zXG5cdFx0XHRsZXQgaW5kZXggPSAwO1xuXHRcdFx0YXJnc1swXSA9IGFyZ3NbMF0ucmVwbGFjZSgvJShbYS16QS1aJV0pL2csIChtYXRjaCwgZm9ybWF0KSA9PiB7XG5cdFx0XHRcdC8vIElmIHdlIGVuY291bnRlciBhbiBlc2NhcGVkICUgdGhlbiBkb24ndCBpbmNyZWFzZSB0aGUgYXJyYXkgaW5kZXhcblx0XHRcdFx0aWYgKG1hdGNoID09PSAnJSUnKSB7XG5cdFx0XHRcdFx0cmV0dXJuICclJztcblx0XHRcdFx0fVxuXHRcdFx0XHRpbmRleCsrO1xuXHRcdFx0XHRjb25zdCBmb3JtYXR0ZXIgPSBjcmVhdGVEZWJ1Zy5mb3JtYXR0ZXJzW2Zvcm1hdF07XG5cdFx0XHRcdGlmICh0eXBlb2YgZm9ybWF0dGVyID09PSAnZnVuY3Rpb24nKSB7XG5cdFx0XHRcdFx0Y29uc3QgdmFsID0gYXJnc1tpbmRleF07XG5cdFx0XHRcdFx0bWF0Y2ggPSBmb3JtYXR0ZXIuY2FsbChzZWxmLCB2YWwpO1xuXG5cdFx0XHRcdFx0Ly8gTm93IHdlIG5lZWQgdG8gcmVtb3ZlIGBhcmdzW2luZGV4XWAgc2luY2UgaXQncyBpbmxpbmVkIGluIHRoZSBgZm9ybWF0YFxuXHRcdFx0XHRcdGFyZ3Muc3BsaWNlKGluZGV4LCAxKTtcblx0XHRcdFx0XHRpbmRleC0tO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHJldHVybiBtYXRjaDtcblx0XHRcdH0pO1xuXG5cdFx0XHQvLyBBcHBseSBlbnYtc3BlY2lmaWMgZm9ybWF0dGluZyAoY29sb3JzLCBldGMuKVxuXHRcdFx0Y3JlYXRlRGVidWcuZm9ybWF0QXJncy5jYWxsKHNlbGYsIGFyZ3MpO1xuXG5cdFx0XHRjb25zdCBsb2dGbiA9IHNlbGYubG9nIHx8IGNyZWF0ZURlYnVnLmxvZztcblx0XHRcdGxvZ0ZuLmFwcGx5KHNlbGYsIGFyZ3MpO1xuXHRcdH1cblxuXHRcdGRlYnVnLm5hbWVzcGFjZSA9IG5hbWVzcGFjZTtcblx0XHRkZWJ1Zy51c2VDb2xvcnMgPSBjcmVhdGVEZWJ1Zy51c2VDb2xvcnMoKTtcblx0XHRkZWJ1Zy5jb2xvciA9IGNyZWF0ZURlYnVnLnNlbGVjdENvbG9yKG5hbWVzcGFjZSk7XG5cdFx0ZGVidWcuZXh0ZW5kID0gZXh0ZW5kO1xuXHRcdGRlYnVnLmRlc3Ryb3kgPSBjcmVhdGVEZWJ1Zy5kZXN0cm95OyAvLyBYWFggVGVtcG9yYXJ5LiBXaWxsIGJlIHJlbW92ZWQgaW4gdGhlIG5leHQgbWFqb3IgcmVsZWFzZS5cblxuXHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShkZWJ1ZywgJ2VuYWJsZWQnLCB7XG5cdFx0XHRlbnVtZXJhYmxlOiB0cnVlLFxuXHRcdFx0Y29uZmlndXJhYmxlOiBmYWxzZSxcblx0XHRcdGdldDogKCkgPT4ge1xuXHRcdFx0XHRpZiAoZW5hYmxlT3ZlcnJpZGUgIT09IG51bGwpIHtcblx0XHRcdFx0XHRyZXR1cm4gZW5hYmxlT3ZlcnJpZGU7XG5cdFx0XHRcdH1cblx0XHRcdFx0aWYgKG5hbWVzcGFjZXNDYWNoZSAhPT0gY3JlYXRlRGVidWcubmFtZXNwYWNlcykge1xuXHRcdFx0XHRcdG5hbWVzcGFjZXNDYWNoZSA9IGNyZWF0ZURlYnVnLm5hbWVzcGFjZXM7XG5cdFx0XHRcdFx0ZW5hYmxlZENhY2hlID0gY3JlYXRlRGVidWcuZW5hYmxlZChuYW1lc3BhY2UpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0cmV0dXJuIGVuYWJsZWRDYWNoZTtcblx0XHRcdH0sXG5cdFx0XHRzZXQ6IHYgPT4ge1xuXHRcdFx0XHRlbmFibGVPdmVycmlkZSA9IHY7XG5cdFx0XHR9XG5cdFx0fSk7XG5cblx0XHQvLyBFbnYtc3BlY2lmaWMgaW5pdGlhbGl6YXRpb24gbG9naWMgZm9yIGRlYnVnIGluc3RhbmNlc1xuXHRcdGlmICh0eXBlb2YgY3JlYXRlRGVidWcuaW5pdCA9PT0gJ2Z1bmN0aW9uJykge1xuXHRcdFx0Y3JlYXRlRGVidWcuaW5pdChkZWJ1Zyk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIGRlYnVnO1xuXHR9XG5cblx0ZnVuY3Rpb24gZXh0ZW5kKG5hbWVzcGFjZSwgZGVsaW1pdGVyKSB7XG5cdFx0Y29uc3QgbmV3RGVidWcgPSBjcmVhdGVEZWJ1Zyh0aGlzLm5hbWVzcGFjZSArICh0eXBlb2YgZGVsaW1pdGVyID09PSAndW5kZWZpbmVkJyA/ICc6JyA6IGRlbGltaXRlcikgKyBuYW1lc3BhY2UpO1xuXHRcdG5ld0RlYnVnLmxvZyA9IHRoaXMubG9nO1xuXHRcdHJldHVybiBuZXdEZWJ1Zztcblx0fVxuXG5cdC8qKlxuXHQqIEVuYWJsZXMgYSBkZWJ1ZyBtb2RlIGJ5IG5hbWVzcGFjZXMuIFRoaXMgY2FuIGluY2x1ZGUgbW9kZXNcblx0KiBzZXBhcmF0ZWQgYnkgYSBjb2xvbiBhbmQgd2lsZGNhcmRzLlxuXHQqXG5cdCogQHBhcmFtIHtTdHJpbmd9IG5hbWVzcGFjZXNcblx0KiBAYXBpIHB1YmxpY1xuXHQqL1xuXHRmdW5jdGlvbiBlbmFibGUobmFtZXNwYWNlcykge1xuXHRcdGNyZWF0ZURlYnVnLnNhdmUobmFtZXNwYWNlcyk7XG5cdFx0Y3JlYXRlRGVidWcubmFtZXNwYWNlcyA9IG5hbWVzcGFjZXM7XG5cblx0XHRjcmVhdGVEZWJ1Zy5uYW1lcyA9IFtdO1xuXHRcdGNyZWF0ZURlYnVnLnNraXBzID0gW107XG5cblx0XHRsZXQgaTtcblx0XHRjb25zdCBzcGxpdCA9ICh0eXBlb2YgbmFtZXNwYWNlcyA9PT0gJ3N0cmluZycgPyBuYW1lc3BhY2VzIDogJycpLnNwbGl0KC9bXFxzLF0rLyk7XG5cdFx0Y29uc3QgbGVuID0gc3BsaXQubGVuZ3RoO1xuXG5cdFx0Zm9yIChpID0gMDsgaSA8IGxlbjsgaSsrKSB7XG5cdFx0XHRpZiAoIXNwbGl0W2ldKSB7XG5cdFx0XHRcdC8vIGlnbm9yZSBlbXB0eSBzdHJpbmdzXG5cdFx0XHRcdGNvbnRpbnVlO1xuXHRcdFx0fVxuXG5cdFx0XHRuYW1lc3BhY2VzID0gc3BsaXRbaV0ucmVwbGFjZSgvXFwqL2csICcuKj8nKTtcblxuXHRcdFx0aWYgKG5hbWVzcGFjZXNbMF0gPT09ICctJykge1xuXHRcdFx0XHRjcmVhdGVEZWJ1Zy5za2lwcy5wdXNoKG5ldyBSZWdFeHAoJ14nICsgbmFtZXNwYWNlcy5zbGljZSgxKSArICckJykpO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0Y3JlYXRlRGVidWcubmFtZXMucHVzaChuZXcgUmVnRXhwKCdeJyArIG5hbWVzcGFjZXMgKyAnJCcpKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvKipcblx0KiBEaXNhYmxlIGRlYnVnIG91dHB1dC5cblx0KlxuXHQqIEByZXR1cm4ge1N0cmluZ30gbmFtZXNwYWNlc1xuXHQqIEBhcGkgcHVibGljXG5cdCovXG5cdGZ1bmN0aW9uIGRpc2FibGUoKSB7XG5cdFx0Y29uc3QgbmFtZXNwYWNlcyA9IFtcblx0XHRcdC4uLmNyZWF0ZURlYnVnLm5hbWVzLm1hcCh0b05hbWVzcGFjZSksXG5cdFx0XHQuLi5jcmVhdGVEZWJ1Zy5za2lwcy5tYXAodG9OYW1lc3BhY2UpLm1hcChuYW1lc3BhY2UgPT4gJy0nICsgbmFtZXNwYWNlKVxuXHRcdF0uam9pbignLCcpO1xuXHRcdGNyZWF0ZURlYnVnLmVuYWJsZSgnJyk7XG5cdFx0cmV0dXJuIG5hbWVzcGFjZXM7XG5cdH1cblxuXHQvKipcblx0KiBSZXR1cm5zIHRydWUgaWYgdGhlIGdpdmVuIG1vZGUgbmFtZSBpcyBlbmFibGVkLCBmYWxzZSBvdGhlcndpc2UuXG5cdCpcblx0KiBAcGFyYW0ge1N0cmluZ30gbmFtZVxuXHQqIEByZXR1cm4ge0Jvb2xlYW59XG5cdCogQGFwaSBwdWJsaWNcblx0Ki9cblx0ZnVuY3Rpb24gZW5hYmxlZChuYW1lKSB7XG5cdFx0aWYgKG5hbWVbbmFtZS5sZW5ndGggLSAxXSA9PT0gJyonKSB7XG5cdFx0XHRyZXR1cm4gdHJ1ZTtcblx0XHR9XG5cblx0XHRsZXQgaTtcblx0XHRsZXQgbGVuO1xuXG5cdFx0Zm9yIChpID0gMCwgbGVuID0gY3JlYXRlRGVidWcuc2tpcHMubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcblx0XHRcdGlmIChjcmVhdGVEZWJ1Zy5za2lwc1tpXS50ZXN0KG5hbWUpKSB7XG5cdFx0XHRcdHJldHVybiBmYWxzZTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRmb3IgKGkgPSAwLCBsZW4gPSBjcmVhdGVEZWJ1Zy5uYW1lcy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xuXHRcdFx0aWYgKGNyZWF0ZURlYnVnLm5hbWVzW2ldLnRlc3QobmFtZSkpIHtcblx0XHRcdFx0cmV0dXJuIHRydWU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0cmV0dXJuIGZhbHNlO1xuXHR9XG5cblx0LyoqXG5cdCogQ29udmVydCByZWdleHAgdG8gbmFtZXNwYWNlXG5cdCpcblx0KiBAcGFyYW0ge1JlZ0V4cH0gcmVneGVwXG5cdCogQHJldHVybiB7U3RyaW5nfSBuYW1lc3BhY2Vcblx0KiBAYXBpIHByaXZhdGVcblx0Ki9cblx0ZnVuY3Rpb24gdG9OYW1lc3BhY2UocmVnZXhwKSB7XG5cdFx0cmV0dXJuIHJlZ2V4cC50b1N0cmluZygpXG5cdFx0XHQuc3Vic3RyaW5nKDIsIHJlZ2V4cC50b1N0cmluZygpLmxlbmd0aCAtIDIpXG5cdFx0XHQucmVwbGFjZSgvXFwuXFwqXFw/JC8sICcqJyk7XG5cdH1cblxuXHQvKipcblx0KiBDb2VyY2UgYHZhbGAuXG5cdCpcblx0KiBAcGFyYW0ge01peGVkfSB2YWxcblx0KiBAcmV0dXJuIHtNaXhlZH1cblx0KiBAYXBpIHByaXZhdGVcblx0Ki9cblx0ZnVuY3Rpb24gY29lcmNlKHZhbCkge1xuXHRcdGlmICh2YWwgaW5zdGFuY2VvZiBFcnJvcikge1xuXHRcdFx0cmV0dXJuIHZhbC5zdGFjayB8fCB2YWwubWVzc2FnZTtcblx0XHR9XG5cdFx0cmV0dXJuIHZhbDtcblx0fVxuXG5cdC8qKlxuXHQqIFhYWCBETyBOT1QgVVNFLiBUaGlzIGlzIGEgdGVtcG9yYXJ5IHN0dWIgZnVuY3Rpb24uXG5cdCogWFhYIEl0IFdJTEwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciByZWxlYXNlLlxuXHQqL1xuXHRmdW5jdGlvbiBkZXN0cm95KCkge1xuXHRcdGNvbnNvbGUud2FybignSW5zdGFuY2UgbWV0aG9kIGBkZWJ1Zy5kZXN0cm95KClgIGlzIGRlcHJlY2F0ZWQgYW5kIG5vIGxvbmdlciBkb2VzIGFueXRoaW5nLiBJdCB3aWxsIGJlIHJlbW92ZWQgaW4gdGhlIG5leHQgbWFqb3IgdmVyc2lvbiBvZiBgZGVidWdgLicpO1xuXHR9XG5cblx0Y3JlYXRlRGVidWcuZW5hYmxlKGNyZWF0ZURlYnVnLmxvYWQoKSk7XG5cblx0cmV0dXJuIGNyZWF0ZURlYnVnO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHNldHVwO1xuIiwgIi8qIGVzbGludC1lbnYgYnJvd3NlciAqL1xuXG4vKipcbiAqIFRoaXMgaXMgdGhlIHdlYiBicm93c2VyIGltcGxlbWVudGF0aW9uIG9mIGBkZWJ1ZygpYC5cbiAqL1xuXG5leHBvcnRzLmZvcm1hdEFyZ3MgPSBmb3JtYXRBcmdzO1xuZXhwb3J0cy5zYXZlID0gc2F2ZTtcbmV4cG9ydHMubG9hZCA9IGxvYWQ7XG5leHBvcnRzLnVzZUNvbG9ycyA9IHVzZUNvbG9ycztcbmV4cG9ydHMuc3RvcmFnZSA9IGxvY2Fsc3RvcmFnZSgpO1xuZXhwb3J0cy5kZXN0cm95ID0gKCgpID0+IHtcblx0bGV0IHdhcm5lZCA9IGZhbHNlO1xuXG5cdHJldHVybiAoKSA9PiB7XG5cdFx0aWYgKCF3YXJuZWQpIHtcblx0XHRcdHdhcm5lZCA9IHRydWU7XG5cdFx0XHRjb25zb2xlLndhcm4oJ0luc3RhbmNlIG1ldGhvZCBgZGVidWcuZGVzdHJveSgpYCBpcyBkZXByZWNhdGVkIGFuZCBubyBsb25nZXIgZG9lcyBhbnl0aGluZy4gSXQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24gb2YgYGRlYnVnYC4nKTtcblx0XHR9XG5cdH07XG59KSgpO1xuXG4vKipcbiAqIENvbG9ycy5cbiAqL1xuXG5leHBvcnRzLmNvbG9ycyA9IFtcblx0JyMwMDAwQ0MnLFxuXHQnIzAwMDBGRicsXG5cdCcjMDAzM0NDJyxcblx0JyMwMDMzRkYnLFxuXHQnIzAwNjZDQycsXG5cdCcjMDA2NkZGJyxcblx0JyMwMDk5Q0MnLFxuXHQnIzAwOTlGRicsXG5cdCcjMDBDQzAwJyxcblx0JyMwMENDMzMnLFxuXHQnIzAwQ0M2NicsXG5cdCcjMDBDQzk5Jyxcblx0JyMwMENDQ0MnLFxuXHQnIzAwQ0NGRicsXG5cdCcjMzMwMENDJyxcblx0JyMzMzAwRkYnLFxuXHQnIzMzMzNDQycsXG5cdCcjMzMzM0ZGJyxcblx0JyMzMzY2Q0MnLFxuXHQnIzMzNjZGRicsXG5cdCcjMzM5OUNDJyxcblx0JyMzMzk5RkYnLFxuXHQnIzMzQ0MwMCcsXG5cdCcjMzNDQzMzJyxcblx0JyMzM0NDNjYnLFxuXHQnIzMzQ0M5OScsXG5cdCcjMzNDQ0NDJyxcblx0JyMzM0NDRkYnLFxuXHQnIzY2MDBDQycsXG5cdCcjNjYwMEZGJyxcblx0JyM2NjMzQ0MnLFxuXHQnIzY2MzNGRicsXG5cdCcjNjZDQzAwJyxcblx0JyM2NkNDMzMnLFxuXHQnIzk5MDBDQycsXG5cdCcjOTkwMEZGJyxcblx0JyM5OTMzQ0MnLFxuXHQnIzk5MzNGRicsXG5cdCcjOTlDQzAwJyxcblx0JyM5OUNDMzMnLFxuXHQnI0NDMDAwMCcsXG5cdCcjQ0MwMDMzJyxcblx0JyNDQzAwNjYnLFxuXHQnI0NDMDA5OScsXG5cdCcjQ0MwMENDJyxcblx0JyNDQzAwRkYnLFxuXHQnI0NDMzMwMCcsXG5cdCcjQ0MzMzMzJyxcblx0JyNDQzMzNjYnLFxuXHQnI0NDMzM5OScsXG5cdCcjQ0MzM0NDJyxcblx0JyNDQzMzRkYnLFxuXHQnI0NDNjYwMCcsXG5cdCcjQ0M2NjMzJyxcblx0JyNDQzk5MDAnLFxuXHQnI0NDOTkzMycsXG5cdCcjQ0NDQzAwJyxcblx0JyNDQ0NDMzMnLFxuXHQnI0ZGMDAwMCcsXG5cdCcjRkYwMDMzJyxcblx0JyNGRjAwNjYnLFxuXHQnI0ZGMDA5OScsXG5cdCcjRkYwMENDJyxcblx0JyNGRjAwRkYnLFxuXHQnI0ZGMzMwMCcsXG5cdCcjRkYzMzMzJyxcblx0JyNGRjMzNjYnLFxuXHQnI0ZGMzM5OScsXG5cdCcjRkYzM0NDJyxcblx0JyNGRjMzRkYnLFxuXHQnI0ZGNjYwMCcsXG5cdCcjRkY2NjMzJyxcblx0JyNGRjk5MDAnLFxuXHQnI0ZGOTkzMycsXG5cdCcjRkZDQzAwJyxcblx0JyNGRkNDMzMnXG5dO1xuXG4vKipcbiAqIEN1cnJlbnRseSBvbmx5IFdlYktpdC1iYXNlZCBXZWIgSW5zcGVjdG9ycywgRmlyZWZveCA+PSB2MzEsXG4gKiBhbmQgdGhlIEZpcmVidWcgZXh0ZW5zaW9uIChhbnkgRmlyZWZveCB2ZXJzaW9uKSBhcmUga25vd25cbiAqIHRvIHN1cHBvcnQgXCIlY1wiIENTUyBjdXN0b21pemF0aW9ucy5cbiAqXG4gKiBUT0RPOiBhZGQgYSBgbG9jYWxTdG9yYWdlYCB2YXJpYWJsZSB0byBleHBsaWNpdGx5IGVuYWJsZS9kaXNhYmxlIGNvbG9yc1xuICovXG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBjb21wbGV4aXR5XG5mdW5jdGlvbiB1c2VDb2xvcnMoKSB7XG5cdC8vIE5COiBJbiBhbiBFbGVjdHJvbiBwcmVsb2FkIHNjcmlwdCwgZG9jdW1lbnQgd2lsbCBiZSBkZWZpbmVkIGJ1dCBub3QgZnVsbHlcblx0Ly8gaW5pdGlhbGl6ZWQuIFNpbmNlIHdlIGtub3cgd2UncmUgaW4gQ2hyb21lLCB3ZSdsbCBqdXN0IGRldGVjdCB0aGlzIGNhc2Vcblx0Ly8gZXhwbGljaXRseVxuXHRpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93LnByb2Nlc3MgJiYgKHdpbmRvdy5wcm9jZXNzLnR5cGUgPT09ICdyZW5kZXJlcicgfHwgd2luZG93LnByb2Nlc3MuX19ud2pzKSkge1xuXHRcdHJldHVybiB0cnVlO1xuXHR9XG5cblx0Ly8gSW50ZXJuZXQgRXhwbG9yZXIgYW5kIEVkZ2UgZG8gbm90IHN1cHBvcnQgY29sb3JzLlxuXHRpZiAodHlwZW9mIG5hdmlnYXRvciAhPT0gJ3VuZGVmaW5lZCcgJiYgbmF2aWdhdG9yLnVzZXJBZ2VudCAmJiBuYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkubWF0Y2goLyhlZGdlfHRyaWRlbnQpXFwvKFxcZCspLykpIHtcblx0XHRyZXR1cm4gZmFsc2U7XG5cdH1cblxuXHQvLyBJcyB3ZWJraXQ/IGh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9hLzE2NDU5NjA2LzM3Njc3M1xuXHQvLyBkb2N1bWVudCBpcyB1bmRlZmluZWQgaW4gcmVhY3QtbmF0aXZlOiBodHRwczovL2dpdGh1Yi5jb20vZmFjZWJvb2svcmVhY3QtbmF0aXZlL3B1bGwvMTYzMlxuXHRyZXR1cm4gKHR5cGVvZiBkb2N1bWVudCAhPT0gJ3VuZGVmaW5lZCcgJiYgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50ICYmIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZSAmJiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUuV2Via2l0QXBwZWFyYW5jZSkgfHxcblx0XHQvLyBJcyBmaXJlYnVnPyBodHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vYS8zOTgxMjAvMzc2NzczXG5cdFx0KHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5jb25zb2xlICYmICh3aW5kb3cuY29uc29sZS5maXJlYnVnIHx8ICh3aW5kb3cuY29uc29sZS5leGNlcHRpb24gJiYgd2luZG93LmNvbnNvbGUudGFibGUpKSkgfHxcblx0XHQvLyBJcyBmaXJlZm94ID49IHYzMT9cblx0XHQvLyBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1Rvb2xzL1dlYl9Db25zb2xlI1N0eWxpbmdfbWVzc2FnZXNcblx0XHQodHlwZW9mIG5hdmlnYXRvciAhPT0gJ3VuZGVmaW5lZCcgJiYgbmF2aWdhdG9yLnVzZXJBZ2VudCAmJiBuYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkubWF0Y2goL2ZpcmVmb3hcXC8oXFxkKykvKSAmJiBwYXJzZUludChSZWdFeHAuJDEsIDEwKSA+PSAzMSkgfHxcblx0XHQvLyBEb3VibGUgY2hlY2sgd2Via2l0IGluIHVzZXJBZ2VudCBqdXN0IGluIGNhc2Ugd2UgYXJlIGluIGEgd29ya2VyXG5cdFx0KHR5cGVvZiBuYXZpZ2F0b3IgIT09ICd1bmRlZmluZWQnICYmIG5hdmlnYXRvci51c2VyQWdlbnQgJiYgbmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpLm1hdGNoKC9hcHBsZXdlYmtpdFxcLyhcXGQrKS8pKTtcbn1cblxuLyoqXG4gKiBDb2xvcml6ZSBsb2cgYXJndW1lbnRzIGlmIGVuYWJsZWQuXG4gKlxuICogQGFwaSBwdWJsaWNcbiAqL1xuXG5mdW5jdGlvbiBmb3JtYXRBcmdzKGFyZ3MpIHtcblx0YXJnc1swXSA9ICh0aGlzLnVzZUNvbG9ycyA/ICclYycgOiAnJykgK1xuXHRcdHRoaXMubmFtZXNwYWNlICtcblx0XHQodGhpcy51c2VDb2xvcnMgPyAnICVjJyA6ICcgJykgK1xuXHRcdGFyZ3NbMF0gK1xuXHRcdCh0aGlzLnVzZUNvbG9ycyA/ICclYyAnIDogJyAnKSArXG5cdFx0JysnICsgbW9kdWxlLmV4cG9ydHMuaHVtYW5pemUodGhpcy5kaWZmKTtcblxuXHRpZiAoIXRoaXMudXNlQ29sb3JzKSB7XG5cdFx0cmV0dXJuO1xuXHR9XG5cblx0Y29uc3QgYyA9ICdjb2xvcjogJyArIHRoaXMuY29sb3I7XG5cdGFyZ3Muc3BsaWNlKDEsIDAsIGMsICdjb2xvcjogaW5oZXJpdCcpO1xuXG5cdC8vIFRoZSBmaW5hbCBcIiVjXCIgaXMgc29tZXdoYXQgdHJpY2t5LCBiZWNhdXNlIHRoZXJlIGNvdWxkIGJlIG90aGVyXG5cdC8vIGFyZ3VtZW50cyBwYXNzZWQgZWl0aGVyIGJlZm9yZSBvciBhZnRlciB0aGUgJWMsIHNvIHdlIG5lZWQgdG9cblx0Ly8gZmlndXJlIG91dCB0aGUgY29ycmVjdCBpbmRleCB0byBpbnNlcnQgdGhlIENTUyBpbnRvXG5cdGxldCBpbmRleCA9IDA7XG5cdGxldCBsYXN0QyA9IDA7XG5cdGFyZ3NbMF0ucmVwbGFjZSgvJVthLXpBLVolXS9nLCBtYXRjaCA9PiB7XG5cdFx0aWYgKG1hdGNoID09PSAnJSUnKSB7XG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXHRcdGluZGV4Kys7XG5cdFx0aWYgKG1hdGNoID09PSAnJWMnKSB7XG5cdFx0XHQvLyBXZSBvbmx5IGFyZSBpbnRlcmVzdGVkIGluIHRoZSAqbGFzdCogJWNcblx0XHRcdC8vICh0aGUgdXNlciBtYXkgaGF2ZSBwcm92aWRlZCB0aGVpciBvd24pXG5cdFx0XHRsYXN0QyA9IGluZGV4O1xuXHRcdH1cblx0fSk7XG5cblx0YXJncy5zcGxpY2UobGFzdEMsIDAsIGMpO1xufVxuXG4vKipcbiAqIEludm9rZXMgYGNvbnNvbGUuZGVidWcoKWAgd2hlbiBhdmFpbGFibGUuXG4gKiBOby1vcCB3aGVuIGBjb25zb2xlLmRlYnVnYCBpcyBub3QgYSBcImZ1bmN0aW9uXCIuXG4gKiBJZiBgY29uc29sZS5kZWJ1Z2AgaXMgbm90IGF2YWlsYWJsZSwgZmFsbHMgYmFja1xuICogdG8gYGNvbnNvbGUubG9nYC5cbiAqXG4gKiBAYXBpIHB1YmxpY1xuICovXG5leHBvcnRzLmxvZyA9IGNvbnNvbGUuZGVidWcgfHwgY29uc29sZS5sb2cgfHwgKCgpID0+IHt9KTtcblxuLyoqXG4gKiBTYXZlIGBuYW1lc3BhY2VzYC5cbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gbmFtZXNwYWNlc1xuICogQGFwaSBwcml2YXRlXG4gKi9cbmZ1bmN0aW9uIHNhdmUobmFtZXNwYWNlcykge1xuXHR0cnkge1xuXHRcdGlmIChuYW1lc3BhY2VzKSB7XG5cdFx0XHRleHBvcnRzLnN0b3JhZ2Uuc2V0SXRlbSgnZGVidWcnLCBuYW1lc3BhY2VzKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0ZXhwb3J0cy5zdG9yYWdlLnJlbW92ZUl0ZW0oJ2RlYnVnJyk7XG5cdFx0fVxuXHR9IGNhdGNoIChlcnJvcikge1xuXHRcdC8vIFN3YWxsb3dcblx0XHQvLyBYWFggKEBRaXgtKSBzaG91bGQgd2UgYmUgbG9nZ2luZyB0aGVzZT9cblx0fVxufVxuXG4vKipcbiAqIExvYWQgYG5hbWVzcGFjZXNgLlxuICpcbiAqIEByZXR1cm4ge1N0cmluZ30gcmV0dXJucyB0aGUgcHJldmlvdXNseSBwZXJzaXN0ZWQgZGVidWcgbW9kZXNcbiAqIEBhcGkgcHJpdmF0ZVxuICovXG5mdW5jdGlvbiBsb2FkKCkge1xuXHRsZXQgcjtcblx0dHJ5IHtcblx0XHRyID0gZXhwb3J0cy5zdG9yYWdlLmdldEl0ZW0oJ2RlYnVnJyk7XG5cdH0gY2F0Y2ggKGVycm9yKSB7XG5cdFx0Ly8gU3dhbGxvd1xuXHRcdC8vIFhYWCAoQFFpeC0pIHNob3VsZCB3ZSBiZSBsb2dnaW5nIHRoZXNlP1xuXHR9XG5cblx0Ly8gSWYgZGVidWcgaXNuJ3Qgc2V0IGluIExTLCBhbmQgd2UncmUgaW4gRWxlY3Ryb24sIHRyeSB0byBsb2FkICRERUJVR1xuXHRpZiAoIXIgJiYgdHlwZW9mIHByb2Nlc3MgIT09ICd1bmRlZmluZWQnICYmICdlbnYnIGluIHByb2Nlc3MpIHtcblx0XHRyID0gcHJvY2Vzcy5lbnYuREVCVUc7XG5cdH1cblxuXHRyZXR1cm4gcjtcbn1cblxuLyoqXG4gKiBMb2NhbHN0b3JhZ2UgYXR0ZW1wdHMgdG8gcmV0dXJuIHRoZSBsb2NhbHN0b3JhZ2UuXG4gKlxuICogVGhpcyBpcyBuZWNlc3NhcnkgYmVjYXVzZSBzYWZhcmkgdGhyb3dzXG4gKiB3aGVuIGEgdXNlciBkaXNhYmxlcyBjb29raWVzL2xvY2Fsc3RvcmFnZVxuICogYW5kIHlvdSBhdHRlbXB0IHRvIGFjY2VzcyBpdC5cbiAqXG4gKiBAcmV0dXJuIHtMb2NhbFN0b3JhZ2V9XG4gKiBAYXBpIHByaXZhdGVcbiAqL1xuXG5mdW5jdGlvbiBsb2NhbHN0b3JhZ2UoKSB7XG5cdHRyeSB7XG5cdFx0Ly8gVFZNTEtpdCAoQXBwbGUgVFYgSlMgUnVudGltZSkgZG9lcyBub3QgaGF2ZSBhIHdpbmRvdyBvYmplY3QsIGp1c3QgbG9jYWxTdG9yYWdlIGluIHRoZSBnbG9iYWwgY29udGV4dFxuXHRcdC8vIFRoZSBCcm93c2VyIGFsc28gaGFzIGxvY2FsU3RvcmFnZSBpbiB0aGUgZ2xvYmFsIGNvbnRleHQuXG5cdFx0cmV0dXJuIGxvY2FsU3RvcmFnZTtcblx0fSBjYXRjaCAoZXJyb3IpIHtcblx0XHQvLyBTd2FsbG93XG5cdFx0Ly8gWFhYIChAUWl4LSkgc2hvdWxkIHdlIGJlIGxvZ2dpbmcgdGhlc2U/XG5cdH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuL2NvbW1vbicpKGV4cG9ydHMpO1xuXG5jb25zdCB7Zm9ybWF0dGVyc30gPSBtb2R1bGUuZXhwb3J0cztcblxuLyoqXG4gKiBNYXAgJWogdG8gYEpTT04uc3RyaW5naWZ5KClgLCBzaW5jZSBubyBXZWIgSW5zcGVjdG9ycyBkbyB0aGF0IGJ5IGRlZmF1bHQuXG4gKi9cblxuZm9ybWF0dGVycy5qID0gZnVuY3Rpb24gKHYpIHtcblx0dHJ5IHtcblx0XHRyZXR1cm4gSlNPTi5zdHJpbmdpZnkodik7XG5cdH0gY2F0Y2ggKGVycm9yKSB7XG5cdFx0cmV0dXJuICdbVW5leHBlY3RlZEpTT05QYXJzZUVycm9yXTogJyArIGVycm9yLm1lc3NhZ2U7XG5cdH1cbn07XG4iLCAiLyogZXNsaW50LWVudiBicm93c2VyICovXG4ndXNlIHN0cmljdCc7XG5cbmZ1bmN0aW9uIGdldENocm9tZVZlcnNpb24oKSB7XG5cdGNvbnN0IG1hdGNoZXMgPSAvKENocm9tZXxDaHJvbWl1bSlcXC8oPzxjaHJvbWVWZXJzaW9uPlxcZCspXFwuLy5leGVjKG5hdmlnYXRvci51c2VyQWdlbnQpO1xuXG5cdGlmICghbWF0Y2hlcykge1xuXHRcdHJldHVybjtcblx0fVxuXG5cdHJldHVybiBOdW1iZXIucGFyc2VJbnQobWF0Y2hlcy5ncm91cHMuY2hyb21lVmVyc2lvbiwgMTApO1xufVxuXG5jb25zdCBjb2xvclN1cHBvcnQgPSBnZXRDaHJvbWVWZXJzaW9uKCkgPj0gNjkgPyB7XG5cdGxldmVsOiAxLFxuXHRoYXNCYXNpYzogdHJ1ZSxcblx0aGFzMjU2OiBmYWxzZSxcblx0aGFzMTZtOiBmYWxzZVxufSA6IGZhbHNlO1xuXG5tb2R1bGUuZXhwb3J0cyA9IHtcblx0c3Rkb3V0OiBjb2xvclN1cHBvcnQsXG5cdHN0ZGVycjogY29sb3JTdXBwb3J0XG59O1xuIiwgIi8qKlxuICogTW9kdWxlIGRlcGVuZGVuY2llcy5cbiAqL1xuXG5jb25zdCB0dHkgPSByZXF1aXJlKCd0dHknKTtcbmNvbnN0IHV0aWwgPSByZXF1aXJlKCd1dGlsJyk7XG5cbi8qKlxuICogVGhpcyBpcyB0aGUgTm9kZS5qcyBpbXBsZW1lbnRhdGlvbiBvZiBgZGVidWcoKWAuXG4gKi9cblxuZXhwb3J0cy5pbml0ID0gaW5pdDtcbmV4cG9ydHMubG9nID0gbG9nO1xuZXhwb3J0cy5mb3JtYXRBcmdzID0gZm9ybWF0QXJncztcbmV4cG9ydHMuc2F2ZSA9IHNhdmU7XG5leHBvcnRzLmxvYWQgPSBsb2FkO1xuZXhwb3J0cy51c2VDb2xvcnMgPSB1c2VDb2xvcnM7XG5leHBvcnRzLmRlc3Ryb3kgPSB1dGlsLmRlcHJlY2F0ZShcblx0KCkgPT4ge30sXG5cdCdJbnN0YW5jZSBtZXRob2QgYGRlYnVnLmRlc3Ryb3koKWAgaXMgZGVwcmVjYXRlZCBhbmQgbm8gbG9uZ2VyIGRvZXMgYW55dGhpbmcuIEl0IHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciB2ZXJzaW9uIG9mIGBkZWJ1Z2AuJ1xuKTtcblxuLyoqXG4gKiBDb2xvcnMuXG4gKi9cblxuZXhwb3J0cy5jb2xvcnMgPSBbNiwgMiwgMywgNCwgNSwgMV07XG5cbnRyeSB7XG5cdC8vIE9wdGlvbmFsIGRlcGVuZGVuY3kgKGFzIGluLCBkb2Vzbid0IG5lZWQgdG8gYmUgaW5zdGFsbGVkLCBOT1QgbGlrZSBvcHRpb25hbERlcGVuZGVuY2llcyBpbiBwYWNrYWdlLmpzb24pXG5cdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQvbm8tZXh0cmFuZW91cy1kZXBlbmRlbmNpZXNcblx0Y29uc3Qgc3VwcG9ydHNDb2xvciA9IHJlcXVpcmUoJ3N1cHBvcnRzLWNvbG9yJyk7XG5cblx0aWYgKHN1cHBvcnRzQ29sb3IgJiYgKHN1cHBvcnRzQ29sb3Iuc3RkZXJyIHx8IHN1cHBvcnRzQ29sb3IpLmxldmVsID49IDIpIHtcblx0XHRleHBvcnRzLmNvbG9ycyA9IFtcblx0XHRcdDIwLFxuXHRcdFx0MjEsXG5cdFx0XHQyNixcblx0XHRcdDI3LFxuXHRcdFx0MzIsXG5cdFx0XHQzMyxcblx0XHRcdDM4LFxuXHRcdFx0MzksXG5cdFx0XHQ0MCxcblx0XHRcdDQxLFxuXHRcdFx0NDIsXG5cdFx0XHQ0Myxcblx0XHRcdDQ0LFxuXHRcdFx0NDUsXG5cdFx0XHQ1Nixcblx0XHRcdDU3LFxuXHRcdFx0NjIsXG5cdFx0XHQ2Myxcblx0XHRcdDY4LFxuXHRcdFx0NjksXG5cdFx0XHQ3NCxcblx0XHRcdDc1LFxuXHRcdFx0NzYsXG5cdFx0XHQ3Nyxcblx0XHRcdDc4LFxuXHRcdFx0NzksXG5cdFx0XHQ4MCxcblx0XHRcdDgxLFxuXHRcdFx0OTIsXG5cdFx0XHQ5Myxcblx0XHRcdDk4LFxuXHRcdFx0OTksXG5cdFx0XHQxMTIsXG5cdFx0XHQxMTMsXG5cdFx0XHQxMjgsXG5cdFx0XHQxMjksXG5cdFx0XHQxMzQsXG5cdFx0XHQxMzUsXG5cdFx0XHQxNDgsXG5cdFx0XHQxNDksXG5cdFx0XHQxNjAsXG5cdFx0XHQxNjEsXG5cdFx0XHQxNjIsXG5cdFx0XHQxNjMsXG5cdFx0XHQxNjQsXG5cdFx0XHQxNjUsXG5cdFx0XHQxNjYsXG5cdFx0XHQxNjcsXG5cdFx0XHQxNjgsXG5cdFx0XHQxNjksXG5cdFx0XHQxNzAsXG5cdFx0XHQxNzEsXG5cdFx0XHQxNzIsXG5cdFx0XHQxNzMsXG5cdFx0XHQxNzgsXG5cdFx0XHQxNzksXG5cdFx0XHQxODQsXG5cdFx0XHQxODUsXG5cdFx0XHQxOTYsXG5cdFx0XHQxOTcsXG5cdFx0XHQxOTgsXG5cdFx0XHQxOTksXG5cdFx0XHQyMDAsXG5cdFx0XHQyMDEsXG5cdFx0XHQyMDIsXG5cdFx0XHQyMDMsXG5cdFx0XHQyMDQsXG5cdFx0XHQyMDUsXG5cdFx0XHQyMDYsXG5cdFx0XHQyMDcsXG5cdFx0XHQyMDgsXG5cdFx0XHQyMDksXG5cdFx0XHQyMTQsXG5cdFx0XHQyMTUsXG5cdFx0XHQyMjAsXG5cdFx0XHQyMjFcblx0XHRdO1xuXHR9XG59IGNhdGNoIChlcnJvcikge1xuXHQvLyBTd2FsbG93IC0gd2Ugb25seSBjYXJlIGlmIGBzdXBwb3J0cy1jb2xvcmAgaXMgYXZhaWxhYmxlOyBpdCBkb2Vzbid0IGhhdmUgdG8gYmUuXG59XG5cbi8qKlxuICogQnVpbGQgdXAgdGhlIGRlZmF1bHQgYGluc3BlY3RPcHRzYCBvYmplY3QgZnJvbSB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGVzLlxuICpcbiAqICAgJCBERUJVR19DT0xPUlM9bm8gREVCVUdfREVQVEg9MTAgREVCVUdfU0hPV19ISURERU49ZW5hYmxlZCBub2RlIHNjcmlwdC5qc1xuICovXG5cbmV4cG9ydHMuaW5zcGVjdE9wdHMgPSBPYmplY3Qua2V5cyhwcm9jZXNzLmVudikuZmlsdGVyKGtleSA9PiB7XG5cdHJldHVybiAvXmRlYnVnXy9pLnRlc3Qoa2V5KTtcbn0pLnJlZHVjZSgob2JqLCBrZXkpID0+IHtcblx0Ly8gQ2FtZWwtY2FzZVxuXHRjb25zdCBwcm9wID0ga2V5XG5cdFx0LnN1YnN0cmluZyg2KVxuXHRcdC50b0xvd2VyQ2FzZSgpXG5cdFx0LnJlcGxhY2UoL18oW2Etel0pL2csIChfLCBrKSA9PiB7XG5cdFx0XHRyZXR1cm4gay50b1VwcGVyQ2FzZSgpO1xuXHRcdH0pO1xuXG5cdC8vIENvZXJjZSBzdHJpbmcgdmFsdWUgaW50byBKUyB2YWx1ZVxuXHRsZXQgdmFsID0gcHJvY2Vzcy5lbnZba2V5XTtcblx0aWYgKC9eKHllc3xvbnx0cnVlfGVuYWJsZWQpJC9pLnRlc3QodmFsKSkge1xuXHRcdHZhbCA9IHRydWU7XG5cdH0gZWxzZSBpZiAoL14obm98b2ZmfGZhbHNlfGRpc2FibGVkKSQvaS50ZXN0KHZhbCkpIHtcblx0XHR2YWwgPSBmYWxzZTtcblx0fSBlbHNlIGlmICh2YWwgPT09ICdudWxsJykge1xuXHRcdHZhbCA9IG51bGw7XG5cdH0gZWxzZSB7XG5cdFx0dmFsID0gTnVtYmVyKHZhbCk7XG5cdH1cblxuXHRvYmpbcHJvcF0gPSB2YWw7XG5cdHJldHVybiBvYmo7XG59LCB7fSk7XG5cbi8qKlxuICogSXMgc3Rkb3V0IGEgVFRZPyBDb2xvcmVkIG91dHB1dCBpcyBlbmFibGVkIHdoZW4gYHRydWVgLlxuICovXG5cbmZ1bmN0aW9uIHVzZUNvbG9ycygpIHtcblx0cmV0dXJuICdjb2xvcnMnIGluIGV4cG9ydHMuaW5zcGVjdE9wdHMgP1xuXHRcdEJvb2xlYW4oZXhwb3J0cy5pbnNwZWN0T3B0cy5jb2xvcnMpIDpcblx0XHR0dHkuaXNhdHR5KHByb2Nlc3Muc3RkZXJyLmZkKTtcbn1cblxuLyoqXG4gKiBBZGRzIEFOU0kgY29sb3IgZXNjYXBlIGNvZGVzIGlmIGVuYWJsZWQuXG4gKlxuICogQGFwaSBwdWJsaWNcbiAqL1xuXG5mdW5jdGlvbiBmb3JtYXRBcmdzKGFyZ3MpIHtcblx0Y29uc3Qge25hbWVzcGFjZTogbmFtZSwgdXNlQ29sb3JzfSA9IHRoaXM7XG5cblx0aWYgKHVzZUNvbG9ycykge1xuXHRcdGNvbnN0IGMgPSB0aGlzLmNvbG9yO1xuXHRcdGNvbnN0IGNvbG9yQ29kZSA9ICdcXHUwMDFCWzMnICsgKGMgPCA4ID8gYyA6ICc4OzU7JyArIGMpO1xuXHRcdGNvbnN0IHByZWZpeCA9IGAgICR7Y29sb3JDb2RlfTsxbSR7bmFtZX0gXFx1MDAxQlswbWA7XG5cblx0XHRhcmdzWzBdID0gcHJlZml4ICsgYXJnc1swXS5zcGxpdCgnXFxuJykuam9pbignXFxuJyArIHByZWZpeCk7XG5cdFx0YXJncy5wdXNoKGNvbG9yQ29kZSArICdtKycgKyBtb2R1bGUuZXhwb3J0cy5odW1hbml6ZSh0aGlzLmRpZmYpICsgJ1xcdTAwMUJbMG0nKTtcblx0fSBlbHNlIHtcblx0XHRhcmdzWzBdID0gZ2V0RGF0ZSgpICsgbmFtZSArICcgJyArIGFyZ3NbMF07XG5cdH1cbn1cblxuZnVuY3Rpb24gZ2V0RGF0ZSgpIHtcblx0aWYgKGV4cG9ydHMuaW5zcGVjdE9wdHMuaGlkZURhdGUpIHtcblx0XHRyZXR1cm4gJyc7XG5cdH1cblx0cmV0dXJuIG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKSArICcgJztcbn1cblxuLyoqXG4gKiBJbnZva2VzIGB1dGlsLmZvcm1hdCgpYCB3aXRoIHRoZSBzcGVjaWZpZWQgYXJndW1lbnRzIGFuZCB3cml0ZXMgdG8gc3RkZXJyLlxuICovXG5cbmZ1bmN0aW9uIGxvZyguLi5hcmdzKSB7XG5cdHJldHVybiBwcm9jZXNzLnN0ZGVyci53cml0ZSh1dGlsLmZvcm1hdCguLi5hcmdzKSArICdcXG4nKTtcbn1cblxuLyoqXG4gKiBTYXZlIGBuYW1lc3BhY2VzYC5cbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gbmFtZXNwYWNlc1xuICogQGFwaSBwcml2YXRlXG4gKi9cbmZ1bmN0aW9uIHNhdmUobmFtZXNwYWNlcykge1xuXHRpZiAobmFtZXNwYWNlcykge1xuXHRcdHByb2Nlc3MuZW52LkRFQlVHID0gbmFtZXNwYWNlcztcblx0fSBlbHNlIHtcblx0XHQvLyBJZiB5b3Ugc2V0IGEgcHJvY2Vzcy5lbnYgZmllbGQgdG8gbnVsbCBvciB1bmRlZmluZWQsIGl0IGdldHMgY2FzdCB0byB0aGVcblx0XHQvLyBzdHJpbmcgJ251bGwnIG9yICd1bmRlZmluZWQnLiBKdXN0IGRlbGV0ZSBpbnN0ZWFkLlxuXHRcdGRlbGV0ZSBwcm9jZXNzLmVudi5ERUJVRztcblx0fVxufVxuXG4vKipcbiAqIExvYWQgYG5hbWVzcGFjZXNgLlxuICpcbiAqIEByZXR1cm4ge1N0cmluZ30gcmV0dXJucyB0aGUgcHJldmlvdXNseSBwZXJzaXN0ZWQgZGVidWcgbW9kZXNcbiAqIEBhcGkgcHJpdmF0ZVxuICovXG5cbmZ1bmN0aW9uIGxvYWQoKSB7XG5cdHJldHVybiBwcm9jZXNzLmVudi5ERUJVRztcbn1cblxuLyoqXG4gKiBJbml0IGxvZ2ljIGZvciBgZGVidWdgIGluc3RhbmNlcy5cbiAqXG4gKiBDcmVhdGUgYSBuZXcgYGluc3BlY3RPcHRzYCBvYmplY3QgaW4gY2FzZSBgdXNlQ29sb3JzYCBpcyBzZXRcbiAqIGRpZmZlcmVudGx5IGZvciBhIHBhcnRpY3VsYXIgYGRlYnVnYCBpbnN0YW5jZS5cbiAqL1xuXG5mdW5jdGlvbiBpbml0KGRlYnVnKSB7XG5cdGRlYnVnLmluc3BlY3RPcHRzID0ge307XG5cblx0Y29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKGV4cG9ydHMuaW5zcGVjdE9wdHMpO1xuXHRmb3IgKGxldCBpID0gMDsgaSA8IGtleXMubGVuZ3RoOyBpKyspIHtcblx0XHRkZWJ1Zy5pbnNwZWN0T3B0c1trZXlzW2ldXSA9IGV4cG9ydHMuaW5zcGVjdE9wdHNba2V5c1tpXV07XG5cdH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuL2NvbW1vbicpKGV4cG9ydHMpO1xuXG5jb25zdCB7Zm9ybWF0dGVyc30gPSBtb2R1bGUuZXhwb3J0cztcblxuLyoqXG4gKiBNYXAgJW8gdG8gYHV0aWwuaW5zcGVjdCgpYCwgYWxsIG9uIGEgc2luZ2xlIGxpbmUuXG4gKi9cblxuZm9ybWF0dGVycy5vID0gZnVuY3Rpb24gKHYpIHtcblx0dGhpcy5pbnNwZWN0T3B0cy5jb2xvcnMgPSB0aGlzLnVzZUNvbG9ycztcblx0cmV0dXJuIHV0aWwuaW5zcGVjdCh2LCB0aGlzLmluc3BlY3RPcHRzKVxuXHRcdC5zcGxpdCgnXFxuJylcblx0XHQubWFwKHN0ciA9PiBzdHIudHJpbSgpKVxuXHRcdC5qb2luKCcgJyk7XG59O1xuXG4vKipcbiAqIE1hcCAlTyB0byBgdXRpbC5pbnNwZWN0KClgLCBhbGxvd2luZyBtdWx0aXBsZSBsaW5lcyBpZiBuZWVkZWQuXG4gKi9cblxuZm9ybWF0dGVycy5PID0gZnVuY3Rpb24gKHYpIHtcblx0dGhpcy5pbnNwZWN0T3B0cy5jb2xvcnMgPSB0aGlzLnVzZUNvbG9ycztcblx0cmV0dXJuIHV0aWwuaW5zcGVjdCh2LCB0aGlzLmluc3BlY3RPcHRzKTtcbn07XG4iLCAiLyoqXG4gKiBEZXRlY3QgRWxlY3Ryb24gcmVuZGVyZXIgLyBud2pzIHByb2Nlc3MsIHdoaWNoIGlzIG5vZGUsIGJ1dCB3ZSBzaG91bGRcbiAqIHRyZWF0IGFzIGEgYnJvd3Nlci5cbiAqL1xuXG5pZiAodHlwZW9mIHByb2Nlc3MgPT09ICd1bmRlZmluZWQnIHx8IHByb2Nlc3MudHlwZSA9PT0gJ3JlbmRlcmVyJyB8fCBwcm9jZXNzLmJyb3dzZXIgPT09IHRydWUgfHwgcHJvY2Vzcy5fX253anMpIHtcblx0bW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuL2Jyb3dzZXIuanMnKTtcbn0gZWxzZSB7XG5cdG1vZHVsZS5leHBvcnRzID0gcmVxdWlyZSgnLi9ub2RlLmpzJyk7XG59XG4iLCAiLyohXG4gKiBkZXBkXG4gKiBDb3B5cmlnaHQoYykgMjAxNC0yMDE4IERvdWdsYXMgQ2hyaXN0b3BoZXIgV2lsc29uXG4gKiBNSVQgTGljZW5zZWRcbiAqL1xuXG4vKipcbiAqIE1vZHVsZSBkZXBlbmRlbmNpZXMuXG4gKi9cblxudmFyIHJlbGF0aXZlID0gcmVxdWlyZSgncGF0aCcpLnJlbGF0aXZlXG5cbi8qKlxuICogTW9kdWxlIGV4cG9ydHMuXG4gKi9cblxubW9kdWxlLmV4cG9ydHMgPSBkZXBkXG5cbi8qKlxuICogR2V0IHRoZSBwYXRoIHRvIGJhc2UgZmlsZXMgb24uXG4gKi9cblxudmFyIGJhc2VQYXRoID0gcHJvY2Vzcy5jd2QoKVxuXG4vKipcbiAqIERldGVybWluZSBpZiBuYW1lc3BhY2UgaXMgY29udGFpbmVkIGluIHRoZSBzdHJpbmcuXG4gKi9cblxuZnVuY3Rpb24gY29udGFpbnNOYW1lc3BhY2UgKHN0ciwgbmFtZXNwYWNlKSB7XG4gIHZhciB2YWxzID0gc3RyLnNwbGl0KC9bICxdKy8pXG4gIHZhciBucyA9IFN0cmluZyhuYW1lc3BhY2UpLnRvTG93ZXJDYXNlKClcblxuICBmb3IgKHZhciBpID0gMDsgaSA8IHZhbHMubGVuZ3RoOyBpKyspIHtcbiAgICB2YXIgdmFsID0gdmFsc1tpXVxuXG4gICAgLy8gbmFtZXNwYWNlIGNvbnRhaW5lZFxuICAgIGlmICh2YWwgJiYgKHZhbCA9PT0gJyonIHx8IHZhbC50b0xvd2VyQ2FzZSgpID09PSBucykpIHtcbiAgICAgIHJldHVybiB0cnVlXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGZhbHNlXG59XG5cbi8qKlxuICogQ29udmVydCBhIGRhdGEgZGVzY3JpcHRvciB0byBhY2Nlc3NvciBkZXNjcmlwdG9yLlxuICovXG5cbmZ1bmN0aW9uIGNvbnZlcnREYXRhRGVzY3JpcHRvclRvQWNjZXNzb3IgKG9iaiwgcHJvcCwgbWVzc2FnZSkge1xuICB2YXIgZGVzY3JpcHRvciA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Iob2JqLCBwcm9wKVxuICB2YXIgdmFsdWUgPSBkZXNjcmlwdG9yLnZhbHVlXG5cbiAgZGVzY3JpcHRvci5nZXQgPSBmdW5jdGlvbiBnZXR0ZXIgKCkgeyByZXR1cm4gdmFsdWUgfVxuXG4gIGlmIChkZXNjcmlwdG9yLndyaXRhYmxlKSB7XG4gICAgZGVzY3JpcHRvci5zZXQgPSBmdW5jdGlvbiBzZXR0ZXIgKHZhbCkgeyByZXR1cm4gKHZhbHVlID0gdmFsKSB9XG4gIH1cblxuICBkZWxldGUgZGVzY3JpcHRvci52YWx1ZVxuICBkZWxldGUgZGVzY3JpcHRvci53cml0YWJsZVxuXG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIHByb3AsIGRlc2NyaXB0b3IpXG5cbiAgcmV0dXJuIGRlc2NyaXB0b3Jcbn1cblxuLyoqXG4gKiBDcmVhdGUgYXJndW1lbnRzIHN0cmluZyB0byBrZWVwIGFyaXR5LlxuICovXG5cbmZ1bmN0aW9uIGNyZWF0ZUFyZ3VtZW50c1N0cmluZyAoYXJpdHkpIHtcbiAgdmFyIHN0ciA9ICcnXG5cbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBhcml0eTsgaSsrKSB7XG4gICAgc3RyICs9ICcsIGFyZycgKyBpXG4gIH1cblxuICByZXR1cm4gc3RyLnN1YnN0cigyKVxufVxuXG4vKipcbiAqIENyZWF0ZSBzdGFjayBzdHJpbmcgZnJvbSBzdGFjay5cbiAqL1xuXG5mdW5jdGlvbiBjcmVhdGVTdGFja1N0cmluZyAoc3RhY2spIHtcbiAgdmFyIHN0ciA9IHRoaXMubmFtZSArICc6ICcgKyB0aGlzLm5hbWVzcGFjZVxuXG4gIGlmICh0aGlzLm1lc3NhZ2UpIHtcbiAgICBzdHIgKz0gJyBkZXByZWNhdGVkICcgKyB0aGlzLm1lc3NhZ2VcbiAgfVxuXG4gIGZvciAodmFyIGkgPSAwOyBpIDwgc3RhY2subGVuZ3RoOyBpKyspIHtcbiAgICBzdHIgKz0gJ1xcbiAgICBhdCAnICsgc3RhY2tbaV0udG9TdHJpbmcoKVxuICB9XG5cbiAgcmV0dXJuIHN0clxufVxuXG4vKipcbiAqIENyZWF0ZSBkZXByZWNhdGUgZm9yIG5hbWVzcGFjZSBpbiBjYWxsZXIuXG4gKi9cblxuZnVuY3Rpb24gZGVwZCAobmFtZXNwYWNlKSB7XG4gIGlmICghbmFtZXNwYWNlKSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcignYXJndW1lbnQgbmFtZXNwYWNlIGlzIHJlcXVpcmVkJylcbiAgfVxuXG4gIHZhciBzdGFjayA9IGdldFN0YWNrKClcbiAgdmFyIHNpdGUgPSBjYWxsU2l0ZUxvY2F0aW9uKHN0YWNrWzFdKVxuICB2YXIgZmlsZSA9IHNpdGVbMF1cblxuICBmdW5jdGlvbiBkZXByZWNhdGUgKG1lc3NhZ2UpIHtcbiAgICAvLyBjYWxsIHRvIHNlbGYgYXMgbG9nXG4gICAgbG9nLmNhbGwoZGVwcmVjYXRlLCBtZXNzYWdlKVxuICB9XG5cbiAgZGVwcmVjYXRlLl9maWxlID0gZmlsZVxuICBkZXByZWNhdGUuX2lnbm9yZWQgPSBpc2lnbm9yZWQobmFtZXNwYWNlKVxuICBkZXByZWNhdGUuX25hbWVzcGFjZSA9IG5hbWVzcGFjZVxuICBkZXByZWNhdGUuX3RyYWNlZCA9IGlzdHJhY2VkKG5hbWVzcGFjZSlcbiAgZGVwcmVjYXRlLl93YXJuZWQgPSBPYmplY3QuY3JlYXRlKG51bGwpXG5cbiAgZGVwcmVjYXRlLmZ1bmN0aW9uID0gd3JhcGZ1bmN0aW9uXG4gIGRlcHJlY2F0ZS5wcm9wZXJ0eSA9IHdyYXBwcm9wZXJ0eVxuXG4gIHJldHVybiBkZXByZWNhdGVcbn1cblxuLyoqXG4gKiBEZXRlcm1pbmUgaWYgZXZlbnQgZW1pdHRlciBoYXMgbGlzdGVuZXJzIG9mIGEgZ2l2ZW4gdHlwZS5cbiAqXG4gKiBUaGUgd2F5IHRvIGRvIHRoaXMgY2hlY2sgaXMgZG9uZSB0aHJlZSBkaWZmZXJlbnQgd2F5cyBpbiBOb2RlLmpzID49IDAuOFxuICogc28gdGhpcyBjb25zb2xpZGF0ZXMgdGhlbSBpbnRvIGEgbWluaW1hbCBzZXQgdXNpbmcgaW5zdGFuY2UgbWV0aG9kcy5cbiAqXG4gKiBAcGFyYW0ge0V2ZW50RW1pdHRlcn0gZW1pdHRlclxuICogQHBhcmFtIHtzdHJpbmd9IHR5cGVcbiAqIEByZXR1cm5zIHtib29sZWFufVxuICogQHByaXZhdGVcbiAqL1xuXG5mdW5jdGlvbiBlZWhhc2xpc3RlbmVycyAoZW1pdHRlciwgdHlwZSkge1xuICB2YXIgY291bnQgPSB0eXBlb2YgZW1pdHRlci5saXN0ZW5lckNvdW50ICE9PSAnZnVuY3Rpb24nXG4gICAgPyBlbWl0dGVyLmxpc3RlbmVycyh0eXBlKS5sZW5ndGhcbiAgICA6IGVtaXR0ZXIubGlzdGVuZXJDb3VudCh0eXBlKVxuXG4gIHJldHVybiBjb3VudCA+IDBcbn1cblxuLyoqXG4gKiBEZXRlcm1pbmUgaWYgbmFtZXNwYWNlIGlzIGlnbm9yZWQuXG4gKi9cblxuZnVuY3Rpb24gaXNpZ25vcmVkIChuYW1lc3BhY2UpIHtcbiAgaWYgKHByb2Nlc3Mubm9EZXByZWNhdGlvbikge1xuICAgIC8vIC0tbm8tZGVwcmVjYXRpb24gc3VwcG9ydFxuICAgIHJldHVybiB0cnVlXG4gIH1cblxuICB2YXIgc3RyID0gcHJvY2Vzcy5lbnYuTk9fREVQUkVDQVRJT04gfHwgJydcblxuICAvLyBuYW1lc3BhY2UgaWdub3JlZFxuICByZXR1cm4gY29udGFpbnNOYW1lc3BhY2Uoc3RyLCBuYW1lc3BhY2UpXG59XG5cbi8qKlxuICogRGV0ZXJtaW5lIGlmIG5hbWVzcGFjZSBpcyB0cmFjZWQuXG4gKi9cblxuZnVuY3Rpb24gaXN0cmFjZWQgKG5hbWVzcGFjZSkge1xuICBpZiAocHJvY2Vzcy50cmFjZURlcHJlY2F0aW9uKSB7XG4gICAgLy8gLS10cmFjZS1kZXByZWNhdGlvbiBzdXBwb3J0XG4gICAgcmV0dXJuIHRydWVcbiAgfVxuXG4gIHZhciBzdHIgPSBwcm9jZXNzLmVudi5UUkFDRV9ERVBSRUNBVElPTiB8fCAnJ1xuXG4gIC8vIG5hbWVzcGFjZSB0cmFjZWRcbiAgcmV0dXJuIGNvbnRhaW5zTmFtZXNwYWNlKHN0ciwgbmFtZXNwYWNlKVxufVxuXG4vKipcbiAqIERpc3BsYXkgZGVwcmVjYXRpb24gbWVzc2FnZS5cbiAqL1xuXG5mdW5jdGlvbiBsb2cgKG1lc3NhZ2UsIHNpdGUpIHtcbiAgdmFyIGhhc2xpc3RlbmVycyA9IGVlaGFzbGlzdGVuZXJzKHByb2Nlc3MsICdkZXByZWNhdGlvbicpXG5cbiAgLy8gYWJvcnQgZWFybHkgaWYgbm8gZGVzdGluYXRpb25cbiAgaWYgKCFoYXNsaXN0ZW5lcnMgJiYgdGhpcy5faWdub3JlZCkge1xuICAgIHJldHVyblxuICB9XG5cbiAgdmFyIGNhbGxlclxuICB2YXIgY2FsbEZpbGVcbiAgdmFyIGNhbGxTaXRlXG4gIHZhciBkZXBTaXRlXG4gIHZhciBpID0gMFxuICB2YXIgc2VlbiA9IGZhbHNlXG4gIHZhciBzdGFjayA9IGdldFN0YWNrKClcbiAgdmFyIGZpbGUgPSB0aGlzLl9maWxlXG5cbiAgaWYgKHNpdGUpIHtcbiAgICAvLyBwcm92aWRlZCBzaXRlXG4gICAgZGVwU2l0ZSA9IHNpdGVcbiAgICBjYWxsU2l0ZSA9IGNhbGxTaXRlTG9jYXRpb24oc3RhY2tbMV0pXG4gICAgY2FsbFNpdGUubmFtZSA9IGRlcFNpdGUubmFtZVxuICAgIGZpbGUgPSBjYWxsU2l0ZVswXVxuICB9IGVsc2Uge1xuICAgIC8vIGdldCBjYWxsIHNpdGVcbiAgICBpID0gMlxuICAgIGRlcFNpdGUgPSBjYWxsU2l0ZUxvY2F0aW9uKHN0YWNrW2ldKVxuICAgIGNhbGxTaXRlID0gZGVwU2l0ZVxuICB9XG5cbiAgLy8gZ2V0IGNhbGxlciBvZiBkZXByZWNhdGVkIHRoaW5nIGluIHJlbGF0aW9uIHRvIGZpbGVcbiAgZm9yICg7IGkgPCBzdGFjay5sZW5ndGg7IGkrKykge1xuICAgIGNhbGxlciA9IGNhbGxTaXRlTG9jYXRpb24oc3RhY2tbaV0pXG4gICAgY2FsbEZpbGUgPSBjYWxsZXJbMF1cblxuICAgIGlmIChjYWxsRmlsZSA9PT0gZmlsZSkge1xuICAgICAgc2VlbiA9IHRydWVcbiAgICB9IGVsc2UgaWYgKGNhbGxGaWxlID09PSB0aGlzLl9maWxlKSB7XG4gICAgICBmaWxlID0gdGhpcy5fZmlsZVxuICAgIH0gZWxzZSBpZiAoc2Vlbikge1xuICAgICAgYnJlYWtcbiAgICB9XG4gIH1cblxuICB2YXIga2V5ID0gY2FsbGVyXG4gICAgPyBkZXBTaXRlLmpvaW4oJzonKSArICdfXycgKyBjYWxsZXIuam9pbignOicpXG4gICAgOiB1bmRlZmluZWRcblxuICBpZiAoa2V5ICE9PSB1bmRlZmluZWQgJiYga2V5IGluIHRoaXMuX3dhcm5lZCkge1xuICAgIC8vIGFscmVhZHkgd2FybmVkXG4gICAgcmV0dXJuXG4gIH1cblxuICB0aGlzLl93YXJuZWRba2V5XSA9IHRydWVcblxuICAvLyBnZW5lcmF0ZSBhdXRvbWF0aWMgbWVzc2FnZSBmcm9tIGNhbGwgc2l0ZVxuICB2YXIgbXNnID0gbWVzc2FnZVxuICBpZiAoIW1zZykge1xuICAgIG1zZyA9IGNhbGxTaXRlID09PSBkZXBTaXRlIHx8ICFjYWxsU2l0ZS5uYW1lXG4gICAgICA/IGRlZmF1bHRNZXNzYWdlKGRlcFNpdGUpXG4gICAgICA6IGRlZmF1bHRNZXNzYWdlKGNhbGxTaXRlKVxuICB9XG5cbiAgLy8gZW1pdCBkZXByZWNhdGlvbiBpZiBsaXN0ZW5lcnMgZXhpc3RcbiAgaWYgKGhhc2xpc3RlbmVycykge1xuICAgIHZhciBlcnIgPSBEZXByZWNhdGlvbkVycm9yKHRoaXMuX25hbWVzcGFjZSwgbXNnLCBzdGFjay5zbGljZShpKSlcbiAgICBwcm9jZXNzLmVtaXQoJ2RlcHJlY2F0aW9uJywgZXJyKVxuICAgIHJldHVyblxuICB9XG5cbiAgLy8gZm9ybWF0IGFuZCB3cml0ZSBtZXNzYWdlXG4gIHZhciBmb3JtYXQgPSBwcm9jZXNzLnN0ZGVyci5pc1RUWVxuICAgID8gZm9ybWF0Q29sb3JcbiAgICA6IGZvcm1hdFBsYWluXG4gIHZhciBvdXRwdXQgPSBmb3JtYXQuY2FsbCh0aGlzLCBtc2csIGNhbGxlciwgc3RhY2suc2xpY2UoaSkpXG4gIHByb2Nlc3Muc3RkZXJyLndyaXRlKG91dHB1dCArICdcXG4nLCAndXRmOCcpXG59XG5cbi8qKlxuICogR2V0IGNhbGwgc2l0ZSBsb2NhdGlvbiBhcyBhcnJheS5cbiAqL1xuXG5mdW5jdGlvbiBjYWxsU2l0ZUxvY2F0aW9uIChjYWxsU2l0ZSkge1xuICB2YXIgZmlsZSA9IGNhbGxTaXRlLmdldEZpbGVOYW1lKCkgfHwgJzxhbm9ueW1vdXM+J1xuICB2YXIgbGluZSA9IGNhbGxTaXRlLmdldExpbmVOdW1iZXIoKVxuICB2YXIgY29sbSA9IGNhbGxTaXRlLmdldENvbHVtbk51bWJlcigpXG5cbiAgaWYgKGNhbGxTaXRlLmlzRXZhbCgpKSB7XG4gICAgZmlsZSA9IGNhbGxTaXRlLmdldEV2YWxPcmlnaW4oKSArICcsICcgKyBmaWxlXG4gIH1cblxuICB2YXIgc2l0ZSA9IFtmaWxlLCBsaW5lLCBjb2xtXVxuXG4gIHNpdGUuY2FsbFNpdGUgPSBjYWxsU2l0ZVxuICBzaXRlLm5hbWUgPSBjYWxsU2l0ZS5nZXRGdW5jdGlvbk5hbWUoKVxuXG4gIHJldHVybiBzaXRlXG59XG5cbi8qKlxuICogR2VuZXJhdGUgYSBkZWZhdWx0IG1lc3NhZ2UgZnJvbSB0aGUgc2l0ZS5cbiAqL1xuXG5mdW5jdGlvbiBkZWZhdWx0TWVzc2FnZSAoc2l0ZSkge1xuICB2YXIgY2FsbFNpdGUgPSBzaXRlLmNhbGxTaXRlXG4gIHZhciBmdW5jTmFtZSA9IHNpdGUubmFtZVxuXG4gIC8vIG1ha2UgdXNlZnVsIGFub255bW91cyBuYW1lXG4gIGlmICghZnVuY05hbWUpIHtcbiAgICBmdW5jTmFtZSA9ICc8YW5vbnltb3VzQCcgKyBmb3JtYXRMb2NhdGlvbihzaXRlKSArICc+J1xuICB9XG5cbiAgdmFyIGNvbnRleHQgPSBjYWxsU2l0ZS5nZXRUaGlzKClcbiAgdmFyIHR5cGVOYW1lID0gY29udGV4dCAmJiBjYWxsU2l0ZS5nZXRUeXBlTmFtZSgpXG5cbiAgLy8gaWdub3JlIHVzZWxlc3MgdHlwZSBuYW1lXG4gIGlmICh0eXBlTmFtZSA9PT0gJ09iamVjdCcpIHtcbiAgICB0eXBlTmFtZSA9IHVuZGVmaW5lZFxuICB9XG5cbiAgLy8gbWFrZSB1c2VmdWwgdHlwZSBuYW1lXG4gIGlmICh0eXBlTmFtZSA9PT0gJ0Z1bmN0aW9uJykge1xuICAgIHR5cGVOYW1lID0gY29udGV4dC5uYW1lIHx8IHR5cGVOYW1lXG4gIH1cblxuICByZXR1cm4gdHlwZU5hbWUgJiYgY2FsbFNpdGUuZ2V0TWV0aG9kTmFtZSgpXG4gICAgPyB0eXBlTmFtZSArICcuJyArIGZ1bmNOYW1lXG4gICAgOiBmdW5jTmFtZVxufVxuXG4vKipcbiAqIEZvcm1hdCBkZXByZWNhdGlvbiBtZXNzYWdlIHdpdGhvdXQgY29sb3IuXG4gKi9cblxuZnVuY3Rpb24gZm9ybWF0UGxhaW4gKG1zZywgY2FsbGVyLCBzdGFjaykge1xuICB2YXIgdGltZXN0YW1wID0gbmV3IERhdGUoKS50b1VUQ1N0cmluZygpXG5cbiAgdmFyIGZvcm1hdHRlZCA9IHRpbWVzdGFtcCArXG4gICAgJyAnICsgdGhpcy5fbmFtZXNwYWNlICtcbiAgICAnIGRlcHJlY2F0ZWQgJyArIG1zZ1xuXG4gIC8vIGFkZCBzdGFjayB0cmFjZVxuICBpZiAodGhpcy5fdHJhY2VkKSB7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBzdGFjay5sZW5ndGg7IGkrKykge1xuICAgICAgZm9ybWF0dGVkICs9ICdcXG4gICAgYXQgJyArIHN0YWNrW2ldLnRvU3RyaW5nKClcbiAgICB9XG5cbiAgICByZXR1cm4gZm9ybWF0dGVkXG4gIH1cblxuICBpZiAoY2FsbGVyKSB7XG4gICAgZm9ybWF0dGVkICs9ICcgYXQgJyArIGZvcm1hdExvY2F0aW9uKGNhbGxlcilcbiAgfVxuXG4gIHJldHVybiBmb3JtYXR0ZWRcbn1cblxuLyoqXG4gKiBGb3JtYXQgZGVwcmVjYXRpb24gbWVzc2FnZSB3aXRoIGNvbG9yLlxuICovXG5cbmZ1bmN0aW9uIGZvcm1hdENvbG9yIChtc2csIGNhbGxlciwgc3RhY2spIHtcbiAgdmFyIGZvcm1hdHRlZCA9ICdcXHgxYlszNjsxbScgKyB0aGlzLl9uYW1lc3BhY2UgKyAnXFx4MWJbMjI7MzltJyArIC8vIGJvbGQgY3lhblxuICAgICcgXFx4MWJbMzM7MW1kZXByZWNhdGVkXFx4MWJbMjI7MzltJyArIC8vIGJvbGQgeWVsbG93XG4gICAgJyBcXHgxYlswbScgKyBtc2cgKyAnXFx4MWJbMzltJyAvLyByZXNldFxuXG4gIC8vIGFkZCBzdGFjayB0cmFjZVxuICBpZiAodGhpcy5fdHJhY2VkKSB7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBzdGFjay5sZW5ndGg7IGkrKykge1xuICAgICAgZm9ybWF0dGVkICs9ICdcXG4gICAgXFx4MWJbMzZtYXQgJyArIHN0YWNrW2ldLnRvU3RyaW5nKCkgKyAnXFx4MWJbMzltJyAvLyBjeWFuXG4gICAgfVxuXG4gICAgcmV0dXJuIGZvcm1hdHRlZFxuICB9XG5cbiAgaWYgKGNhbGxlcikge1xuICAgIGZvcm1hdHRlZCArPSAnIFxceDFiWzM2bScgKyBmb3JtYXRMb2NhdGlvbihjYWxsZXIpICsgJ1xceDFiWzM5bScgLy8gY3lhblxuICB9XG5cbiAgcmV0dXJuIGZvcm1hdHRlZFxufVxuXG4vKipcbiAqIEZvcm1hdCBjYWxsIHNpdGUgbG9jYXRpb24uXG4gKi9cblxuZnVuY3Rpb24gZm9ybWF0TG9jYXRpb24gKGNhbGxTaXRlKSB7XG4gIHJldHVybiByZWxhdGl2ZShiYXNlUGF0aCwgY2FsbFNpdGVbMF0pICtcbiAgICAnOicgKyBjYWxsU2l0ZVsxXSArXG4gICAgJzonICsgY2FsbFNpdGVbMl1cbn1cblxuLyoqXG4gKiBHZXQgdGhlIHN0YWNrIGFzIGFycmF5IG9mIGNhbGwgc2l0ZXMuXG4gKi9cblxuZnVuY3Rpb24gZ2V0U3RhY2sgKCkge1xuICB2YXIgbGltaXQgPSBFcnJvci5zdGFja1RyYWNlTGltaXRcbiAgdmFyIG9iaiA9IHt9XG4gIHZhciBwcmVwID0gRXJyb3IucHJlcGFyZVN0YWNrVHJhY2VcblxuICBFcnJvci5wcmVwYXJlU3RhY2tUcmFjZSA9IHByZXBhcmVPYmplY3RTdGFja1RyYWNlXG4gIEVycm9yLnN0YWNrVHJhY2VMaW1pdCA9IE1hdGgubWF4KDEwLCBsaW1pdClcblxuICAvLyBjYXB0dXJlIHRoZSBzdGFja1xuICBFcnJvci5jYXB0dXJlU3RhY2tUcmFjZShvYmopXG5cbiAgLy8gc2xpY2UgdGhpcyBmdW5jdGlvbiBvZmYgdGhlIHRvcFxuICB2YXIgc3RhY2sgPSBvYmouc3RhY2suc2xpY2UoMSlcblxuICBFcnJvci5wcmVwYXJlU3RhY2tUcmFjZSA9IHByZXBcbiAgRXJyb3Iuc3RhY2tUcmFjZUxpbWl0ID0gbGltaXRcblxuICByZXR1cm4gc3RhY2tcbn1cblxuLyoqXG4gKiBDYXB0dXJlIGNhbGwgc2l0ZSBzdGFjayBmcm9tIHY4LlxuICovXG5cbmZ1bmN0aW9uIHByZXBhcmVPYmplY3RTdGFja1RyYWNlIChvYmosIHN0YWNrKSB7XG4gIHJldHVybiBzdGFja1xufVxuXG4vKipcbiAqIFJldHVybiBhIHdyYXBwZWQgZnVuY3Rpb24gaW4gYSBkZXByZWNhdGlvbiBtZXNzYWdlLlxuICovXG5cbmZ1bmN0aW9uIHdyYXBmdW5jdGlvbiAoZm4sIG1lc3NhZ2UpIHtcbiAgaWYgKHR5cGVvZiBmbiAhPT0gJ2Z1bmN0aW9uJykge1xuICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ2FyZ3VtZW50IGZuIG11c3QgYmUgYSBmdW5jdGlvbicpXG4gIH1cblxuICB2YXIgYXJncyA9IGNyZWF0ZUFyZ3VtZW50c1N0cmluZyhmbi5sZW5ndGgpXG4gIHZhciBzdGFjayA9IGdldFN0YWNrKClcbiAgdmFyIHNpdGUgPSBjYWxsU2l0ZUxvY2F0aW9uKHN0YWNrWzFdKVxuXG4gIHNpdGUubmFtZSA9IGZuLm5hbWVcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tbmV3LWZ1bmNcbiAgdmFyIGRlcHJlY2F0ZWRmbiA9IG5ldyBGdW5jdGlvbignZm4nLCAnbG9nJywgJ2RlcHJlY2F0ZScsICdtZXNzYWdlJywgJ3NpdGUnLFxuICAgICdcInVzZSBzdHJpY3RcIlxcbicgK1xuICAgICdyZXR1cm4gZnVuY3Rpb24gKCcgKyBhcmdzICsgJykgeycgK1xuICAgICdsb2cuY2FsbChkZXByZWNhdGUsIG1lc3NhZ2UsIHNpdGUpXFxuJyArXG4gICAgJ3JldHVybiBmbi5hcHBseSh0aGlzLCBhcmd1bWVudHMpXFxuJyArXG4gICAgJ30nKShmbiwgbG9nLCB0aGlzLCBtZXNzYWdlLCBzaXRlKVxuXG4gIHJldHVybiBkZXByZWNhdGVkZm5cbn1cblxuLyoqXG4gKiBXcmFwIHByb3BlcnR5IGluIGEgZGVwcmVjYXRpb24gbWVzc2FnZS5cbiAqL1xuXG5mdW5jdGlvbiB3cmFwcHJvcGVydHkgKG9iaiwgcHJvcCwgbWVzc2FnZSkge1xuICBpZiAoIW9iaiB8fCAodHlwZW9mIG9iaiAhPT0gJ29iamVjdCcgJiYgdHlwZW9mIG9iaiAhPT0gJ2Z1bmN0aW9uJykpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdhcmd1bWVudCBvYmogbXVzdCBiZSBvYmplY3QnKVxuICB9XG5cbiAgdmFyIGRlc2NyaXB0b3IgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG9iaiwgcHJvcClcblxuICBpZiAoIWRlc2NyaXB0b3IpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdtdXN0IGNhbGwgcHJvcGVydHkgb24gb3duZXIgb2JqZWN0JylcbiAgfVxuXG4gIGlmICghZGVzY3JpcHRvci5jb25maWd1cmFibGUpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdwcm9wZXJ0eSBtdXN0IGJlIGNvbmZpZ3VyYWJsZScpXG4gIH1cblxuICB2YXIgZGVwcmVjYXRlID0gdGhpc1xuICB2YXIgc3RhY2sgPSBnZXRTdGFjaygpXG4gIHZhciBzaXRlID0gY2FsbFNpdGVMb2NhdGlvbihzdGFja1sxXSlcblxuICAvLyBzZXQgc2l0ZSBuYW1lXG4gIHNpdGUubmFtZSA9IHByb3BcblxuICAvLyBjb252ZXJ0IGRhdGEgZGVzY3JpcHRvclxuICBpZiAoJ3ZhbHVlJyBpbiBkZXNjcmlwdG9yKSB7XG4gICAgZGVzY3JpcHRvciA9IGNvbnZlcnREYXRhRGVzY3JpcHRvclRvQWNjZXNzb3Iob2JqLCBwcm9wLCBtZXNzYWdlKVxuICB9XG5cbiAgdmFyIGdldCA9IGRlc2NyaXB0b3IuZ2V0XG4gIHZhciBzZXQgPSBkZXNjcmlwdG9yLnNldFxuXG4gIC8vIHdyYXAgZ2V0dGVyXG4gIGlmICh0eXBlb2YgZ2V0ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgZGVzY3JpcHRvci5nZXQgPSBmdW5jdGlvbiBnZXR0ZXIgKCkge1xuICAgICAgbG9nLmNhbGwoZGVwcmVjYXRlLCBtZXNzYWdlLCBzaXRlKVxuICAgICAgcmV0dXJuIGdldC5hcHBseSh0aGlzLCBhcmd1bWVudHMpXG4gICAgfVxuICB9XG5cbiAgLy8gd3JhcCBzZXR0ZXJcbiAgaWYgKHR5cGVvZiBzZXQgPT09ICdmdW5jdGlvbicpIHtcbiAgICBkZXNjcmlwdG9yLnNldCA9IGZ1bmN0aW9uIHNldHRlciAoKSB7XG4gICAgICBsb2cuY2FsbChkZXByZWNhdGUsIG1lc3NhZ2UsIHNpdGUpXG4gICAgICByZXR1cm4gc2V0LmFwcGx5KHRoaXMsIGFyZ3VtZW50cylcbiAgICB9XG4gIH1cblxuICBPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqLCBwcm9wLCBkZXNjcmlwdG9yKVxufVxuXG4vKipcbiAqIENyZWF0ZSBEZXByZWNhdGlvbkVycm9yIGZvciBkZXByZWNhdGlvblxuICovXG5cbmZ1bmN0aW9uIERlcHJlY2F0aW9uRXJyb3IgKG5hbWVzcGFjZSwgbWVzc2FnZSwgc3RhY2spIHtcbiAgdmFyIGVycm9yID0gbmV3IEVycm9yKClcbiAgdmFyIHN0YWNrU3RyaW5nXG5cbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGVycm9yLCAnY29uc3RydWN0b3InLCB7XG4gICAgdmFsdWU6IERlcHJlY2F0aW9uRXJyb3JcbiAgfSlcblxuICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXJyb3IsICdtZXNzYWdlJywge1xuICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICBlbnVtZXJhYmxlOiBmYWxzZSxcbiAgICB2YWx1ZTogbWVzc2FnZSxcbiAgICB3cml0YWJsZTogdHJ1ZVxuICB9KVxuXG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlcnJvciwgJ25hbWUnLCB7XG4gICAgZW51bWVyYWJsZTogZmFsc2UsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgIHZhbHVlOiAnRGVwcmVjYXRpb25FcnJvcicsXG4gICAgd3JpdGFibGU6IHRydWVcbiAgfSlcblxuICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXJyb3IsICduYW1lc3BhY2UnLCB7XG4gICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgIGVudW1lcmFibGU6IGZhbHNlLFxuICAgIHZhbHVlOiBuYW1lc3BhY2UsXG4gICAgd3JpdGFibGU6IHRydWVcbiAgfSlcblxuICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXJyb3IsICdzdGFjaycsIHtcbiAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgZW51bWVyYWJsZTogZmFsc2UsXG4gICAgZ2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICBpZiAoc3RhY2tTdHJpbmcgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICByZXR1cm4gc3RhY2tTdHJpbmdcbiAgICAgIH1cblxuICAgICAgLy8gcHJlcGFyZSBzdGFjayB0cmFjZVxuICAgICAgcmV0dXJuIChzdGFja1N0cmluZyA9IGNyZWF0ZVN0YWNrU3RyaW5nLmNhbGwodGhpcywgc3RhY2spKVxuICAgIH0sXG4gICAgc2V0OiBmdW5jdGlvbiBzZXR0ZXIgKHZhbCkge1xuICAgICAgc3RhY2tTdHJpbmcgPSB2YWxcbiAgICB9XG4gIH0pXG5cbiAgcmV0dXJuIGVycm9yXG59XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgLy8gYWdlbnRcbiAgQ1VSUkVOVF9JRDogU3ltYm9sKCdhZ2VudGtlZXBhbGl2ZSNjdXJyZW50SWQnKSxcbiAgQ1JFQVRFX0lEOiBTeW1ib2woJ2FnZW50a2VlcGFsaXZlI2NyZWF0ZUlkJyksXG4gIElOSVRfU09DS0VUOiBTeW1ib2woJ2FnZW50a2VlcGFsaXZlI2luaXRTb2NrZXQnKSxcbiAgQ1JFQVRFX0hUVFBTX0NPTk5FQ1RJT046IFN5bWJvbCgnYWdlbnRrZWVwYWxpdmUjY3JlYXRlSHR0cHNDb25uZWN0aW9uJyksXG4gIC8vIHNvY2tldFxuICBTT0NLRVRfQ1JFQVRFRF9USU1FOiBTeW1ib2woJ2FnZW50a2VlcGFsaXZlI3NvY2tldENyZWF0ZWRUaW1lJyksXG4gIFNPQ0tFVF9OQU1FOiBTeW1ib2woJ2FnZW50a2VlcGFsaXZlI3NvY2tldE5hbWUnKSxcbiAgU09DS0VUX1JFUVVFU1RfQ09VTlQ6IFN5bWJvbCgnYWdlbnRrZWVwYWxpdmUjc29ja2V0UmVxdWVzdENvdW50JyksXG4gIFNPQ0tFVF9SRVFVRVNUX0ZJTklTSEVEX0NPVU5UOiBTeW1ib2woJ2FnZW50a2VlcGFsaXZlI3NvY2tldFJlcXVlc3RGaW5pc2hlZENvdW50JyksXG59O1xuIiwgIid1c2Ugc3RyaWN0JztcblxuY29uc3QgT3JpZ2luYWxBZ2VudCA9IHJlcXVpcmUoJ2h0dHAnKS5BZ2VudDtcbmNvbnN0IG1zID0gcmVxdWlyZSgnaHVtYW5pemUtbXMnKTtcbmNvbnN0IGRlYnVnID0gcmVxdWlyZSgnZGVidWcnKSgnYWdlbnRrZWVwYWxpdmUnKTtcbmNvbnN0IGRlcHJlY2F0ZSA9IHJlcXVpcmUoJ2RlcGQnKSgnYWdlbnRrZWVwYWxpdmUnKTtcbmNvbnN0IHtcbiAgSU5JVF9TT0NLRVQsXG4gIENVUlJFTlRfSUQsXG4gIENSRUFURV9JRCxcbiAgU09DS0VUX0NSRUFURURfVElNRSxcbiAgU09DS0VUX05BTUUsXG4gIFNPQ0tFVF9SRVFVRVNUX0NPVU5ULFxuICBTT0NLRVRfUkVRVUVTVF9GSU5JU0hFRF9DT1VOVCxcbn0gPSByZXF1aXJlKCcuL2NvbnN0YW50cycpO1xuXG4vLyBPcmlnaW5hbEFnZW50IGNvbWUgZnJvbVxuLy8gLSBodHRwczovL2dpdGh1Yi5jb20vbm9kZWpzL25vZGUvYmxvYi92OC4xMi4wL2xpYi9faHR0cF9hZ2VudC5qc1xuLy8gLSBodHRwczovL2dpdGh1Yi5jb20vbm9kZWpzL25vZGUvYmxvYi92MTAuMTIuMC9saWIvX2h0dHBfYWdlbnQuanNcblxuLy8gbm9kZSA8PSAxMFxubGV0IGRlZmF1bHRUaW1lb3V0TGlzdGVuZXJDb3VudCA9IDE7XG5jb25zdCBtYWpvclZlcnNpb24gPSBwYXJzZUludChwcm9jZXNzLnZlcnNpb24uc3BsaXQoJy4nLCAxKVswXS5zdWJzdHJpbmcoMSkpO1xuaWYgKG1ham9yVmVyc2lvbiA+PSAxMSAmJiBtYWpvclZlcnNpb24gPD0gMTIpIHtcbiAgZGVmYXVsdFRpbWVvdXRMaXN0ZW5lckNvdW50ID0gMjtcbn0gZWxzZSBpZiAobWFqb3JWZXJzaW9uID49IDEzKSB7XG4gIGRlZmF1bHRUaW1lb3V0TGlzdGVuZXJDb3VudCA9IDM7XG59XG5cbmNsYXNzIEFnZW50IGV4dGVuZHMgT3JpZ2luYWxBZ2VudCB7XG4gIGNvbnN0cnVjdG9yKG9wdGlvbnMpIHtcbiAgICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcbiAgICBvcHRpb25zLmtlZXBBbGl2ZSA9IG9wdGlvbnMua2VlcEFsaXZlICE9PSBmYWxzZTtcbiAgICAvLyBkZWZhdWx0IGlzIGtlZXAtYWxpdmUgYW5kIDRzIGZyZWUgc29ja2V0IHRpbWVvdXRcbiAgICAvLyBzZWUgaHR0cHM6Ly9tZWRpdW0uY29tL3NzZW5zZS10ZWNoL3JlZHVjZS1uZXR3b3JraW5nLWVycm9ycy1pbi1ub2RlanMtMjNiNGViOWYyZDgzXG4gICAgaWYgKG9wdGlvbnMuZnJlZVNvY2tldFRpbWVvdXQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgb3B0aW9ucy5mcmVlU29ja2V0VGltZW91dCA9IDQwMDA7XG4gICAgfVxuICAgIC8vIExlZ2FjeSBBUEk6IGtlZXBBbGl2ZVRpbWVvdXQgc2hvdWxkIGJlIHJlbmFtZSB0byBgZnJlZVNvY2tldFRpbWVvdXRgXG4gICAgaWYgKG9wdGlvbnMua2VlcEFsaXZlVGltZW91dCkge1xuICAgICAgZGVwcmVjYXRlKCdvcHRpb25zLmtlZXBBbGl2ZVRpbWVvdXQgaXMgZGVwcmVjYXRlZCwgcGxlYXNlIHVzZSBvcHRpb25zLmZyZWVTb2NrZXRUaW1lb3V0IGluc3RlYWQnKTtcbiAgICAgIG9wdGlvbnMuZnJlZVNvY2tldFRpbWVvdXQgPSBvcHRpb25zLmtlZXBBbGl2ZVRpbWVvdXQ7XG4gICAgICBkZWxldGUgb3B0aW9ucy5rZWVwQWxpdmVUaW1lb3V0O1xuICAgIH1cbiAgICAvLyBMZWdhY3kgQVBJOiBmcmVlU29ja2V0S2VlcEFsaXZlVGltZW91dCBzaG91bGQgYmUgcmVuYW1lIHRvIGBmcmVlU29ja2V0VGltZW91dGBcbiAgICBpZiAob3B0aW9ucy5mcmVlU29ja2V0S2VlcEFsaXZlVGltZW91dCkge1xuICAgICAgZGVwcmVjYXRlKCdvcHRpb25zLmZyZWVTb2NrZXRLZWVwQWxpdmVUaW1lb3V0IGlzIGRlcHJlY2F0ZWQsIHBsZWFzZSB1c2Ugb3B0aW9ucy5mcmVlU29ja2V0VGltZW91dCBpbnN0ZWFkJyk7XG4gICAgICBvcHRpb25zLmZyZWVTb2NrZXRUaW1lb3V0ID0gb3B0aW9ucy5mcmVlU29ja2V0S2VlcEFsaXZlVGltZW91dDtcbiAgICAgIGRlbGV0ZSBvcHRpb25zLmZyZWVTb2NrZXRLZWVwQWxpdmVUaW1lb3V0O1xuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIHNvY2tldCB0byB0aW1lb3V0IGFmdGVyIHRpbWVvdXQgbWlsbGlzZWNvbmRzIG9mIGluYWN0aXZpdHkgb24gdGhlIHNvY2tldC5cbiAgICAvLyBCeSBkZWZhdWx0IGlzIGRvdWJsZSBmcmVlIHNvY2tldCB0aW1lb3V0LlxuICAgIGlmIChvcHRpb25zLnRpbWVvdXQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgLy8gbWFrZSBzdXJlIHNvY2tldCBkZWZhdWx0IGluYWN0aXZpdHkgdGltZW91dCA+PSA4c1xuICAgICAgb3B0aW9ucy50aW1lb3V0ID0gTWF0aC5tYXgob3B0aW9ucy5mcmVlU29ja2V0VGltZW91dCAqIDIsIDgwMDApO1xuICAgIH1cblxuICAgIC8vIHN1cHBvcnQgaHVtYW5pemUgZm9ybWF0XG4gICAgb3B0aW9ucy50aW1lb3V0ID0gbXMob3B0aW9ucy50aW1lb3V0KTtcbiAgICBvcHRpb25zLmZyZWVTb2NrZXRUaW1lb3V0ID0gbXMob3B0aW9ucy5mcmVlU29ja2V0VGltZW91dCk7XG4gICAgb3B0aW9ucy5zb2NrZXRBY3RpdmVUVEwgPSBvcHRpb25zLnNvY2tldEFjdGl2ZVRUTCA/IG1zKG9wdGlvbnMuc29ja2V0QWN0aXZlVFRMKSA6IDA7XG5cbiAgICBzdXBlcihvcHRpb25zKTtcblxuICAgIHRoaXNbQ1VSUkVOVF9JRF0gPSAwO1xuXG4gICAgLy8gY3JlYXRlIHNvY2tldCBzdWNjZXNzIGNvdW50ZXJcbiAgICB0aGlzLmNyZWF0ZVNvY2tldENvdW50ID0gMDtcbiAgICB0aGlzLmNyZWF0ZVNvY2tldENvdW50TGFzdENoZWNrID0gMDtcblxuICAgIHRoaXMuY3JlYXRlU29ja2V0RXJyb3JDb3VudCA9IDA7XG4gICAgdGhpcy5jcmVhdGVTb2NrZXRFcnJvckNvdW50TGFzdENoZWNrID0gMDtcblxuICAgIHRoaXMuY2xvc2VTb2NrZXRDb3VudCA9IDA7XG4gICAgdGhpcy5jbG9zZVNvY2tldENvdW50TGFzdENoZWNrID0gMDtcblxuICAgIC8vIHNvY2tldCBlcnJvciBldmVudCBjb3VudFxuICAgIHRoaXMuZXJyb3JTb2NrZXRDb3VudCA9IDA7XG4gICAgdGhpcy5lcnJvclNvY2tldENvdW50TGFzdENoZWNrID0gMDtcblxuICAgIC8vIHJlcXVlc3QgZmluaXNoZWQgY291bnRlclxuICAgIHRoaXMucmVxdWVzdENvdW50ID0gMDtcbiAgICB0aGlzLnJlcXVlc3RDb3VudExhc3RDaGVjayA9IDA7XG5cbiAgICAvLyBpbmNsdWRpbmcgZnJlZSBzb2NrZXQgdGltZW91dCBjb3VudGVyXG4gICAgdGhpcy50aW1lb3V0U29ja2V0Q291bnQgPSAwO1xuICAgIHRoaXMudGltZW91dFNvY2tldENvdW50TGFzdENoZWNrID0gMDtcblxuICAgIHRoaXMub24oJ2ZyZWUnLCBzb2NrZXQgPT4ge1xuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL25vZGVqcy9ub2RlL3B1bGwvMzIwMDBcbiAgICAgIC8vIE5vZGUuanMgbmF0aXZlIGFnZW50IHdpbGwgY2hlY2sgc29ja2V0IHRpbWVvdXQgZXFzIGFnZW50Lm9wdGlvbnMudGltZW91dC5cbiAgICAgIC8vIFVzZSB0aGUgdHRsIG9yIGZyZWVTb2NrZXRUaW1lb3V0IHRvIG92ZXJ3cml0ZS5cbiAgICAgIGNvbnN0IHRpbWVvdXQgPSB0aGlzLmNhbGNTb2NrZXRUaW1lb3V0KHNvY2tldCk7XG4gICAgICBpZiAodGltZW91dCA+IDAgJiYgc29ja2V0LnRpbWVvdXQgIT09IHRpbWVvdXQpIHtcbiAgICAgICAgc29ja2V0LnNldFRpbWVvdXQodGltZW91dCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBnZXQgZnJlZVNvY2tldEtlZXBBbGl2ZVRpbWVvdXQoKSB7XG4gICAgZGVwcmVjYXRlKCdhZ2VudC5mcmVlU29ja2V0S2VlcEFsaXZlVGltZW91dCBpcyBkZXByZWNhdGVkLCBwbGVhc2UgdXNlIGFnZW50Lm9wdGlvbnMuZnJlZVNvY2tldFRpbWVvdXQgaW5zdGVhZCcpO1xuICAgIHJldHVybiB0aGlzLm9wdGlvbnMuZnJlZVNvY2tldFRpbWVvdXQ7XG4gIH1cblxuICBnZXQgdGltZW91dCgpIHtcbiAgICBkZXByZWNhdGUoJ2FnZW50LnRpbWVvdXQgaXMgZGVwcmVjYXRlZCwgcGxlYXNlIHVzZSBhZ2VudC5vcHRpb25zLnRpbWVvdXQgaW5zdGVhZCcpO1xuICAgIHJldHVybiB0aGlzLm9wdGlvbnMudGltZW91dDtcbiAgfVxuXG4gIGdldCBzb2NrZXRBY3RpdmVUVEwoKSB7XG4gICAgZGVwcmVjYXRlKCdhZ2VudC5zb2NrZXRBY3RpdmVUVEwgaXMgZGVwcmVjYXRlZCwgcGxlYXNlIHVzZSBhZ2VudC5vcHRpb25zLnNvY2tldEFjdGl2ZVRUTCBpbnN0ZWFkJyk7XG4gICAgcmV0dXJuIHRoaXMub3B0aW9ucy5zb2NrZXRBY3RpdmVUVEw7XG4gIH1cblxuICBjYWxjU29ja2V0VGltZW91dChzb2NrZXQpIHtcbiAgICAvKipcbiAgICAgKiByZXR1cm4gPD0gMDogc2hvdWxkIGZyZWUgc29ja2V0XG4gICAgICogcmV0dXJuID4gMDogc2hvdWxkIHVwZGF0ZSBzb2NrZXQgdGltZW91dFxuICAgICAqIHJldHVybiB1bmRlZmluZWQ6IG5vdCBmaW5kIGN1c3RvbSB0aW1lb3V0XG4gICAgICovXG4gICAgbGV0IGZyZWVTb2NrZXRUaW1lb3V0ID0gdGhpcy5vcHRpb25zLmZyZWVTb2NrZXRUaW1lb3V0O1xuICAgIGNvbnN0IHNvY2tldEFjdGl2ZVRUTCA9IHRoaXMub3B0aW9ucy5zb2NrZXRBY3RpdmVUVEw7XG4gICAgaWYgKHNvY2tldEFjdGl2ZVRUTCkge1xuICAgICAgLy8gY2hlY2sgc29ja2V0QWN0aXZlVFRMXG4gICAgICBjb25zdCBhbGl2ZVRpbWUgPSBEYXRlLm5vdygpIC0gc29ja2V0W1NPQ0tFVF9DUkVBVEVEX1RJTUVdO1xuICAgICAgY29uc3QgZGlmZiA9IHNvY2tldEFjdGl2ZVRUTCAtIGFsaXZlVGltZTtcbiAgICAgIGlmIChkaWZmIDw9IDApIHtcbiAgICAgICAgcmV0dXJuIGRpZmY7XG4gICAgICB9XG4gICAgICBpZiAoZnJlZVNvY2tldFRpbWVvdXQgJiYgZGlmZiA8IGZyZWVTb2NrZXRUaW1lb3V0KSB7XG4gICAgICAgIGZyZWVTb2NrZXRUaW1lb3V0ID0gZGlmZjtcbiAgICAgIH1cbiAgICB9XG4gICAgLy8gc2V0IGZyZWVTb2NrZXRUaW1lb3V0XG4gICAgaWYgKGZyZWVTb2NrZXRUaW1lb3V0KSB7XG4gICAgICAvLyBzZXQgZnJlZSBrZWVwYWxpdmUgdGltZXJcbiAgICAgIC8vIHRyeSB0byB1c2Ugc29ja2V0IGN1c3RvbSBmcmVlU29ja2V0VGltZW91dCBmaXJzdCwgc3VwcG9ydCBoZWFkZXJzWydrZWVwLWFsaXZlJ11cbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlLW1vZHVsZXMvdXJsbGliL2Jsb2IvYjc2MDUzMDIwOTIzZjRkOTlhMWM5M2NmMmUxNmUwYzViYTEwYmFjZi9saWIvdXJsbGliLmpzI0w0OThcbiAgICAgIGNvbnN0IGN1c3RvbUZyZWVTb2NrZXRUaW1lb3V0ID0gc29ja2V0LmZyZWVTb2NrZXRUaW1lb3V0IHx8IHNvY2tldC5mcmVlU29ja2V0S2VlcEFsaXZlVGltZW91dDtcbiAgICAgIHJldHVybiBjdXN0b21GcmVlU29ja2V0VGltZW91dCB8fCBmcmVlU29ja2V0VGltZW91dDtcbiAgICB9XG4gIH1cblxuICBrZWVwU29ja2V0QWxpdmUoc29ja2V0KSB7XG4gICAgY29uc3QgcmVzdWx0ID0gc3VwZXIua2VlcFNvY2tldEFsaXZlKHNvY2tldCk7XG4gICAgLy8gc2hvdWxkIG5vdCBrZWVwQWxpdmUsIGRvIG5vdGhpbmdcbiAgICBpZiAoIXJlc3VsdCkgcmV0dXJuIHJlc3VsdDtcblxuICAgIGNvbnN0IGN1c3RvbVRpbWVvdXQgPSB0aGlzLmNhbGNTb2NrZXRUaW1lb3V0KHNvY2tldCk7XG4gICAgaWYgKHR5cGVvZiBjdXN0b21UaW1lb3V0ID09PSAndW5kZWZpbmVkJykge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIGlmIChjdXN0b21UaW1lb3V0IDw9IDApIHtcbiAgICAgIGRlYnVnKCclcyhyZXF1ZXN0czogJXMsIGZpbmlzaGVkOiAlcykgZnJlZSBidXQgbmVlZCB0byBkZXN0cm95IGJ5IFRUTCwgcmVxdWVzdCBjb3VudCAlcywgZGlmZiBpcyAlcycsXG4gICAgICAgIHNvY2tldFtTT0NLRVRfTkFNRV0sIHNvY2tldFtTT0NLRVRfUkVRVUVTVF9DT1VOVF0sIHNvY2tldFtTT0NLRVRfUkVRVUVTVF9GSU5JU0hFRF9DT1VOVF0sIGN1c3RvbVRpbWVvdXQpO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBpZiAoc29ja2V0LnRpbWVvdXQgIT09IGN1c3RvbVRpbWVvdXQpIHtcbiAgICAgIHNvY2tldC5zZXRUaW1lb3V0KGN1c3RvbVRpbWVvdXQpO1xuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8vIG9ubHkgY2FsbCBvbiBhZGRSZXF1ZXN0XG4gIHJldXNlU29ja2V0KC4uLmFyZ3MpIHtcbiAgICAvLyByZXVzZVNvY2tldChzb2NrZXQsIHJlcSlcbiAgICBzdXBlci5yZXVzZVNvY2tldCguLi5hcmdzKTtcbiAgICBjb25zdCBzb2NrZXQgPSBhcmdzWzBdO1xuICAgIGNvbnN0IHJlcSA9IGFyZ3NbMV07XG4gICAgcmVxLnJldXNlZFNvY2tldCA9IHRydWU7XG4gICAgY29uc3QgYWdlbnRUaW1lb3V0ID0gdGhpcy5vcHRpb25zLnRpbWVvdXQ7XG4gICAgaWYgKGdldFNvY2tldFRpbWVvdXQoc29ja2V0KSAhPT0gYWdlbnRUaW1lb3V0KSB7XG4gICAgICAvLyByZXNldCB0aW1lb3V0IGJlZm9yZSB1c2VcbiAgICAgIHNvY2tldC5zZXRUaW1lb3V0KGFnZW50VGltZW91dCk7XG4gICAgICBkZWJ1ZygnJXMgcmVzZXQgdGltZW91dCB0byAlc21zJywgc29ja2V0W1NPQ0tFVF9OQU1FXSwgYWdlbnRUaW1lb3V0KTtcbiAgICB9XG4gICAgc29ja2V0W1NPQ0tFVF9SRVFVRVNUX0NPVU5UXSsrO1xuICAgIGRlYnVnKCclcyhyZXF1ZXN0czogJXMsIGZpbmlzaGVkOiAlcykgcmV1c2Ugb24gYWRkUmVxdWVzdCwgdGltZW91dCAlc21zJyxcbiAgICAgIHNvY2tldFtTT0NLRVRfTkFNRV0sIHNvY2tldFtTT0NLRVRfUkVRVUVTVF9DT1VOVF0sIHNvY2tldFtTT0NLRVRfUkVRVUVTVF9GSU5JU0hFRF9DT1VOVF0sXG4gICAgICBnZXRTb2NrZXRUaW1lb3V0KHNvY2tldCkpO1xuICB9XG5cbiAgW0NSRUFURV9JRF0oKSB7XG4gICAgY29uc3QgaWQgPSB0aGlzW0NVUlJFTlRfSURdKys7XG4gICAgaWYgKHRoaXNbQ1VSUkVOVF9JRF0gPT09IE51bWJlci5NQVhfU0FGRV9JTlRFR0VSKSB0aGlzW0NVUlJFTlRfSURdID0gMDtcbiAgICByZXR1cm4gaWQ7XG4gIH1cblxuICBbSU5JVF9TT0NLRVRdKHNvY2tldCwgb3B0aW9ucykge1xuICAgIC8vIGJ1Z2ZpeCBoZXJlLlxuICAgIC8vIGh0dHBzIG9uIG5vZGUgOCwgMTAgd29uJ3Qgc2V0IGFnZW50Lm9wdGlvbnMudGltZW91dCBieSBkZWZhdWx0XG4gICAgLy8gVE9ETzogbmVlZCB0byBmaXggb24gbm9kZSBpdHNlbGZcbiAgICBpZiAob3B0aW9ucy50aW1lb3V0KSB7XG4gICAgICBjb25zdCB0aW1lb3V0ID0gZ2V0U29ja2V0VGltZW91dChzb2NrZXQpO1xuICAgICAgaWYgKCF0aW1lb3V0KSB7XG4gICAgICAgIHNvY2tldC5zZXRUaW1lb3V0KG9wdGlvbnMudGltZW91dCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHRoaXMub3B0aW9ucy5rZWVwQWxpdmUpIHtcbiAgICAgIC8vIERpc2FibGUgTmFnbGUncyBhbGdvcml0aG06IGh0dHA6Ly9ibG9nLmNhdXN0aWsuY29tLzIwMTIvMDQvMDgvc2NhbGluZy1ub2RlLWpzLXRvLTEwMGstY29uY3VycmVudC1jb25uZWN0aW9ucy9cbiAgICAgIC8vIGh0dHBzOi8vZmVuZ21rMi5jb20vYmVuY2htYXJrL25hZ2xlLWFsZ29yaXRobS1kZWxheWVkLWFjay1tb2NrLmh0bWxcbiAgICAgIHNvY2tldC5zZXROb0RlbGF5KHRydWUpO1xuICAgIH1cbiAgICB0aGlzLmNyZWF0ZVNvY2tldENvdW50Kys7XG4gICAgaWYgKHRoaXMub3B0aW9ucy5zb2NrZXRBY3RpdmVUVEwpIHtcbiAgICAgIHNvY2tldFtTT0NLRVRfQ1JFQVRFRF9USU1FXSA9IERhdGUubm93KCk7XG4gICAgfVxuICAgIC8vIGRvbid0IHNob3cgdGhlIGhvbGUgJy0tLS0tQkVHSU4gQ0VSVElGSUNBVEUtLS0tJyBrZXkgc3RyaW5nXG4gICAgc29ja2V0W1NPQ0tFVF9OQU1FXSA9IGBzb2NrWyR7dGhpc1tDUkVBVEVfSURdKCl9IyR7b3B0aW9ucy5fYWdlbnRLZXl9XWAuc3BsaXQoJy0tLS0tQkVHSU4nLCAxKVswXTtcbiAgICBzb2NrZXRbU09DS0VUX1JFUVVFU1RfQ09VTlRdID0gMTtcbiAgICBzb2NrZXRbU09DS0VUX1JFUVVFU1RfRklOSVNIRURfQ09VTlRdID0gMDtcbiAgICBpbnN0YWxsTGlzdGVuZXJzKHRoaXMsIHNvY2tldCwgb3B0aW9ucyk7XG4gIH1cblxuICBjcmVhdGVDb25uZWN0aW9uKG9wdGlvbnMsIG9uY3JlYXRlKSB7XG4gICAgbGV0IGNhbGxlZCA9IGZhbHNlO1xuICAgIGNvbnN0IG9uTmV3Q3JlYXRlID0gKGVyciwgc29ja2V0KSA9PiB7XG4gICAgICBpZiAoY2FsbGVkKSByZXR1cm47XG4gICAgICBjYWxsZWQgPSB0cnVlO1xuXG4gICAgICBpZiAoZXJyKSB7XG4gICAgICAgIHRoaXMuY3JlYXRlU29ja2V0RXJyb3JDb3VudCsrO1xuICAgICAgICByZXR1cm4gb25jcmVhdGUoZXJyKTtcbiAgICAgIH1cbiAgICAgIHRoaXNbSU5JVF9TT0NLRVRdKHNvY2tldCwgb3B0aW9ucyk7XG4gICAgICBvbmNyZWF0ZShlcnIsIHNvY2tldCk7XG4gICAgfTtcblxuICAgIGNvbnN0IG5ld1NvY2tldCA9IHN1cGVyLmNyZWF0ZUNvbm5lY3Rpb24ob3B0aW9ucywgb25OZXdDcmVhdGUpO1xuICAgIGlmIChuZXdTb2NrZXQpIG9uTmV3Q3JlYXRlKG51bGwsIG5ld1NvY2tldCk7XG4gIH1cblxuICBnZXQgc3RhdHVzQ2hhbmdlZCgpIHtcbiAgICBjb25zdCBjaGFuZ2VkID0gdGhpcy5jcmVhdGVTb2NrZXRDb3VudCAhPT0gdGhpcy5jcmVhdGVTb2NrZXRDb3VudExhc3RDaGVjayB8fFxuICAgICAgdGhpcy5jcmVhdGVTb2NrZXRFcnJvckNvdW50ICE9PSB0aGlzLmNyZWF0ZVNvY2tldEVycm9yQ291bnRMYXN0Q2hlY2sgfHxcbiAgICAgIHRoaXMuY2xvc2VTb2NrZXRDb3VudCAhPT0gdGhpcy5jbG9zZVNvY2tldENvdW50TGFzdENoZWNrIHx8XG4gICAgICB0aGlzLmVycm9yU29ja2V0Q291bnQgIT09IHRoaXMuZXJyb3JTb2NrZXRDb3VudExhc3RDaGVjayB8fFxuICAgICAgdGhpcy50aW1lb3V0U29ja2V0Q291bnQgIT09IHRoaXMudGltZW91dFNvY2tldENvdW50TGFzdENoZWNrIHx8XG4gICAgICB0aGlzLnJlcXVlc3RDb3VudCAhPT0gdGhpcy5yZXF1ZXN0Q291bnRMYXN0Q2hlY2s7XG4gICAgaWYgKGNoYW5nZWQpIHtcbiAgICAgIHRoaXMuY3JlYXRlU29ja2V0Q291bnRMYXN0Q2hlY2sgPSB0aGlzLmNyZWF0ZVNvY2tldENvdW50O1xuICAgICAgdGhpcy5jcmVhdGVTb2NrZXRFcnJvckNvdW50TGFzdENoZWNrID0gdGhpcy5jcmVhdGVTb2NrZXRFcnJvckNvdW50O1xuICAgICAgdGhpcy5jbG9zZVNvY2tldENvdW50TGFzdENoZWNrID0gdGhpcy5jbG9zZVNvY2tldENvdW50O1xuICAgICAgdGhpcy5lcnJvclNvY2tldENvdW50TGFzdENoZWNrID0gdGhpcy5lcnJvclNvY2tldENvdW50O1xuICAgICAgdGhpcy50aW1lb3V0U29ja2V0Q291bnRMYXN0Q2hlY2sgPSB0aGlzLnRpbWVvdXRTb2NrZXRDb3VudDtcbiAgICAgIHRoaXMucmVxdWVzdENvdW50TGFzdENoZWNrID0gdGhpcy5yZXF1ZXN0Q291bnQ7XG4gICAgfVxuICAgIHJldHVybiBjaGFuZ2VkO1xuICB9XG5cbiAgZ2V0Q3VycmVudFN0YXR1cygpIHtcbiAgICByZXR1cm4ge1xuICAgICAgY3JlYXRlU29ja2V0Q291bnQ6IHRoaXMuY3JlYXRlU29ja2V0Q291bnQsXG4gICAgICBjcmVhdGVTb2NrZXRFcnJvckNvdW50OiB0aGlzLmNyZWF0ZVNvY2tldEVycm9yQ291bnQsXG4gICAgICBjbG9zZVNvY2tldENvdW50OiB0aGlzLmNsb3NlU29ja2V0Q291bnQsXG4gICAgICBlcnJvclNvY2tldENvdW50OiB0aGlzLmVycm9yU29ja2V0Q291bnQsXG4gICAgICB0aW1lb3V0U29ja2V0Q291bnQ6IHRoaXMudGltZW91dFNvY2tldENvdW50LFxuICAgICAgcmVxdWVzdENvdW50OiB0aGlzLnJlcXVlc3RDb3VudCxcbiAgICAgIGZyZWVTb2NrZXRzOiBpbnNwZWN0KHRoaXMuZnJlZVNvY2tldHMpLFxuICAgICAgc29ja2V0czogaW5zcGVjdCh0aGlzLnNvY2tldHMpLFxuICAgICAgcmVxdWVzdHM6IGluc3BlY3QodGhpcy5yZXF1ZXN0cyksXG4gICAgfTtcbiAgfVxufVxuXG4vLyBub2RlIDggZG9uJ3QgaGFzIHRpbWVvdXQgYXR0cmlidXRlIG9uIHNvY2tldFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL25vZGVqcy9ub2RlL3B1bGwvMjEyMDQvZmlsZXMjZGlmZi1lNmVmMDI0YzM3NzVkNzg3YzM4NDg3YTYzMDllNDkxZFI0MDhcbmZ1bmN0aW9uIGdldFNvY2tldFRpbWVvdXQoc29ja2V0KSB7XG4gIHJldHVybiBzb2NrZXQudGltZW91dCB8fCBzb2NrZXQuX2lkbGVUaW1lb3V0O1xufVxuXG5mdW5jdGlvbiBpbnN0YWxsTGlzdGVuZXJzKGFnZW50LCBzb2NrZXQsIG9wdGlvbnMpIHtcbiAgZGVidWcoJyVzIGNyZWF0ZSwgdGltZW91dCAlc21zJywgc29ja2V0W1NPQ0tFVF9OQU1FXSwgZ2V0U29ja2V0VGltZW91dChzb2NrZXQpKTtcblxuICAvLyBsaXN0ZW5lciBzb2NrZXQgZXZlbnRzOiBjbG9zZSwgdGltZW91dCwgZXJyb3IsIGZyZWVcbiAgZnVuY3Rpb24gb25GcmVlKCkge1xuICAgIC8vIGNyZWF0ZSBhbmQgc29ja2V0LmVtaXQoJ2ZyZWUnKSBsb2dpY1xuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvbm9kZS9ibG9iL21hc3Rlci9saWIvX2h0dHBfYWdlbnQuanMjTDMxMVxuICAgIC8vIG5vIHJlcSBvbiB0aGUgc29ja2V0LCBpdCBzaG91bGQgYmUgdGhlIG5ldyBzb2NrZXRcbiAgICBpZiAoIXNvY2tldC5faHR0cE1lc3NhZ2UgJiYgc29ja2V0W1NPQ0tFVF9SRVFVRVNUX0NPVU5UXSA9PT0gMSkgcmV0dXJuO1xuXG4gICAgc29ja2V0W1NPQ0tFVF9SRVFVRVNUX0ZJTklTSEVEX0NPVU5UXSsrO1xuICAgIGFnZW50LnJlcXVlc3RDb3VudCsrO1xuICAgIGRlYnVnKCclcyhyZXF1ZXN0czogJXMsIGZpbmlzaGVkOiAlcykgZnJlZScsXG4gICAgICBzb2NrZXRbU09DS0VUX05BTUVdLCBzb2NrZXRbU09DS0VUX1JFUVVFU1RfQ09VTlRdLCBzb2NrZXRbU09DS0VUX1JFUVVFU1RfRklOSVNIRURfQ09VTlRdKTtcblxuICAgIC8vIHNob3VsZCByZXVzZSBvbiBwZWRkaW5nIHJlcXVlc3RzP1xuICAgIGNvbnN0IG5hbWUgPSBhZ2VudC5nZXROYW1lKG9wdGlvbnMpO1xuICAgIGlmIChzb2NrZXQud3JpdGFibGUgJiYgYWdlbnQucmVxdWVzdHNbbmFtZV0gJiYgYWdlbnQucmVxdWVzdHNbbmFtZV0ubGVuZ3RoKSB7XG4gICAgICAvLyB3aWxsIGJlIHJldXNlIG9uIGFnZW50IGZyZWUgbGlzdGVuZXJcbiAgICAgIHNvY2tldFtTT0NLRVRfUkVRVUVTVF9DT1VOVF0rKztcbiAgICAgIGRlYnVnKCclcyhyZXF1ZXN0czogJXMsIGZpbmlzaGVkOiAlcykgd2lsbCBiZSByZXVzZSBvbiBhZ2VudCBmcmVlIGV2ZW50JyxcbiAgICAgICAgc29ja2V0W1NPQ0tFVF9OQU1FXSwgc29ja2V0W1NPQ0tFVF9SRVFVRVNUX0NPVU5UXSwgc29ja2V0W1NPQ0tFVF9SRVFVRVNUX0ZJTklTSEVEX0NPVU5UXSk7XG4gICAgfVxuICB9XG4gIHNvY2tldC5vbignZnJlZScsIG9uRnJlZSk7XG5cbiAgZnVuY3Rpb24gb25DbG9zZShpc0Vycm9yKSB7XG4gICAgZGVidWcoJyVzKHJlcXVlc3RzOiAlcywgZmluaXNoZWQ6ICVzKSBjbG9zZSwgaXNFcnJvcjogJXMnLFxuICAgICAgc29ja2V0W1NPQ0tFVF9OQU1FXSwgc29ja2V0W1NPQ0tFVF9SRVFVRVNUX0NPVU5UXSwgc29ja2V0W1NPQ0tFVF9SRVFVRVNUX0ZJTklTSEVEX0NPVU5UXSwgaXNFcnJvcik7XG4gICAgYWdlbnQuY2xvc2VTb2NrZXRDb3VudCsrO1xuICB9XG4gIHNvY2tldC5vbignY2xvc2UnLCBvbkNsb3NlKTtcblxuICAvLyBzdGFydCBzb2NrZXQgdGltZW91dCBoYW5kbGVyXG4gIGZ1bmN0aW9uIG9uVGltZW91dCgpIHtcbiAgICAvLyBvblRpbWVvdXQgYW5kIGVtaXRSZXF1ZXN0VGltZW91dChfaHR0cF9jbGllbnQuanMpXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL25vZGVqcy9ub2RlL2Jsb2IvdjEyLngvbGliL19odHRwX2NsaWVudC5qcyNMNzExXG4gICAgY29uc3QgbGlzdGVuZXJDb3VudCA9IHNvY2tldC5saXN0ZW5lcnMoJ3RpbWVvdXQnKS5sZW5ndGg7XG4gICAgLy8gbm9kZSA8PSAxMCwgZGVmYXVsdCBsaXN0ZW5lckNvdW50IGlzIDEsIG9uVGltZW91dFxuICAgIC8vIDExIDwgbm9kZSA8PSAxMiwgZGVmYXVsdCBsaXN0ZW5lckNvdW50IGlzIDIsIG9uVGltZW91dCBhbmQgZW1pdFJlcXVlc3RUaW1lb3V0XG4gICAgLy8gbm9kZSA+PSAxMywgZGVmYXVsdCBsaXN0ZW5lckNvdW50IGlzIDMsIG9uVGltZW91dCxcbiAgICAvLyAgIG9uVGltZW91dChodHRwczovL2dpdGh1Yi5jb20vbm9kZWpzL25vZGUvcHVsbC8zMjAwMC9maWxlcyNkaWZmLTVmN2ZiMDg1MDQxMmM2YmUxODlmYWVkZGVhNmM1MzU5UjMzMylcbiAgICAvLyAgIGFuZCBlbWl0UmVxdWVzdFRpbWVvdXRcbiAgICBjb25zdCB0aW1lb3V0ID0gZ2V0U29ja2V0VGltZW91dChzb2NrZXQpO1xuICAgIGNvbnN0IHJlcSA9IHNvY2tldC5faHR0cE1lc3NhZ2U7XG4gICAgY29uc3QgcmVxVGltZW91dExpc3RlbmVyQ291bnQgPSByZXEgJiYgcmVxLmxpc3RlbmVycygndGltZW91dCcpLmxlbmd0aCB8fCAwO1xuICAgIGRlYnVnKCclcyhyZXF1ZXN0czogJXMsIGZpbmlzaGVkOiAlcykgdGltZW91dCBhZnRlciAlc21zLCBsaXN0ZW5lcnMgJXMsIGRlZmF1bHRUaW1lb3V0TGlzdGVuZXJDb3VudCAlcywgaGFzSHR0cFJlcXVlc3QgJXMsIEh0dHBSZXF1ZXN0IHRpbWVvdXRMaXN0ZW5lckNvdW50ICVzJyxcbiAgICAgIHNvY2tldFtTT0NLRVRfTkFNRV0sIHNvY2tldFtTT0NLRVRfUkVRVUVTVF9DT1VOVF0sIHNvY2tldFtTT0NLRVRfUkVRVUVTVF9GSU5JU0hFRF9DT1VOVF0sXG4gICAgICB0aW1lb3V0LCBsaXN0ZW5lckNvdW50LCBkZWZhdWx0VGltZW91dExpc3RlbmVyQ291bnQsICEhcmVxLCByZXFUaW1lb3V0TGlzdGVuZXJDb3VudCk7XG4gICAgaWYgKGRlYnVnLmVuYWJsZWQpIHtcbiAgICAgIGRlYnVnKCd0aW1lb3V0IGxpc3RlbmVyczogJXMnLCBzb2NrZXQubGlzdGVuZXJzKCd0aW1lb3V0JykubWFwKGYgPT4gZi5uYW1lKS5qb2luKCcsICcpKTtcbiAgICB9XG4gICAgYWdlbnQudGltZW91dFNvY2tldENvdW50Kys7XG4gICAgY29uc3QgbmFtZSA9IGFnZW50LmdldE5hbWUob3B0aW9ucyk7XG4gICAgaWYgKGFnZW50LmZyZWVTb2NrZXRzW25hbWVdICYmIGFnZW50LmZyZWVTb2NrZXRzW25hbWVdLmluZGV4T2Yoc29ja2V0KSAhPT0gLTEpIHtcbiAgICAgIC8vIGZyZWUgc29ja2V0IHRpbWVvdXQsIGRlc3Ryb3kgcXVpZXRseVxuICAgICAgc29ja2V0LmRlc3Ryb3koKTtcbiAgICAgIC8vIFJlbW92ZSBpdCBmcm9tIGZyZWVTb2NrZXRzIGxpc3QgaW1tZWRpYXRlbHkgdG8gcHJldmVudCBuZXcgcmVxdWVzdHNcbiAgICAgIC8vIGZyb20gYmVpbmcgc2VudCB0aHJvdWdoIHRoaXMgc29ja2V0LlxuICAgICAgYWdlbnQucmVtb3ZlU29ja2V0KHNvY2tldCwgb3B0aW9ucyk7XG4gICAgICBkZWJ1ZygnJXMgaXMgZnJlZSwgZGVzdHJveSBxdWlldGx5Jywgc29ja2V0W1NPQ0tFVF9OQU1FXSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIGlmIHRoZXJlIGlzIG5vIGFueSByZXF1ZXN0IHNvY2tldCB0aW1lb3V0IGhhbmRsZXIsXG4gICAgICAvLyBhZ2VudCBuZWVkIHRvIGhhbmRsZSBzb2NrZXQgdGltZW91dCBpdHNlbGYuXG4gICAgICAvL1xuICAgICAgLy8gY3VzdG9tIHJlcXVlc3Qgc29ja2V0IHRpbWVvdXQgaGFuZGxlIGxvZ2ljIG11c3QgZm9sbG93IHRoZXNlIHJ1bGVzOlxuICAgICAgLy8gIDEuIERlc3Ryb3kgc29ja2V0IGZpcnN0XG4gICAgICAvLyAgMi4gTXVzdCBlbWl0IHNvY2tldCAnYWdlbnRSZW1vdmUnIGV2ZW50IHRlbGwgYWdlbnQgcmVtb3ZlIHNvY2tldFxuICAgICAgLy8gICAgIGZyb20gZnJlZVNvY2tldHMgbGlzdCBpbW1lZGlhdGVseS5cbiAgICAgIC8vICAgICBPdGhlcmlzZSB5b3UgbWF5IGJlIGdldCAnc29ja2V0IGhhbmcgdXAnIGVycm9yIHdoZW4gcmV1c2VcbiAgICAgIC8vICAgICBmcmVlIHNvY2tldCBhbmQgdGltZW91dCBoYXBwZW4gaW4gdGhlIHNhbWUgdGltZS5cbiAgICAgIGlmIChyZXFUaW1lb3V0TGlzdGVuZXJDb3VudCA9PT0gMCkge1xuICAgICAgICBjb25zdCBlcnJvciA9IG5ldyBFcnJvcignU29ja2V0IHRpbWVvdXQnKTtcbiAgICAgICAgZXJyb3IuY29kZSA9ICdFUlJfU09DS0VUX1RJTUVPVVQnO1xuICAgICAgICBlcnJvci50aW1lb3V0ID0gdGltZW91dDtcbiAgICAgICAgLy8gbXVzdCBtYW51YWxseSBjYWxsIHNvY2tldC5lbmQoKSBvciBzb2NrZXQuZGVzdHJveSgpIHRvIGVuZCB0aGUgY29ubmVjdGlvbi5cbiAgICAgICAgLy8gaHR0cHM6Ly9ub2RlanMub3JnL2Rpc3QvbGF0ZXN0LXYxMC54L2RvY3MvYXBpL25ldC5odG1sI25ldF9zb2NrZXRfc2V0dGltZW91dF90aW1lb3V0X2NhbGxiYWNrXG4gICAgICAgIHNvY2tldC5kZXN0cm95KGVycm9yKTtcbiAgICAgICAgYWdlbnQucmVtb3ZlU29ja2V0KHNvY2tldCwgb3B0aW9ucyk7XG4gICAgICAgIGRlYnVnKCclcyBkZXN0cm95IHdpdGggdGltZW91dCBlcnJvcicsIHNvY2tldFtTT0NLRVRfTkFNRV0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBzb2NrZXQub24oJ3RpbWVvdXQnLCBvblRpbWVvdXQpO1xuXG4gIGZ1bmN0aW9uIG9uRXJyb3IoZXJyKSB7XG4gICAgY29uc3QgbGlzdGVuZXJDb3VudCA9IHNvY2tldC5saXN0ZW5lcnMoJ2Vycm9yJykubGVuZ3RoO1xuICAgIGRlYnVnKCclcyhyZXF1ZXN0czogJXMsIGZpbmlzaGVkOiAlcykgZXJyb3I6ICVzLCBsaXN0ZW5lckNvdW50OiAlcycsXG4gICAgICBzb2NrZXRbU09DS0VUX05BTUVdLCBzb2NrZXRbU09DS0VUX1JFUVVFU1RfQ09VTlRdLCBzb2NrZXRbU09DS0VUX1JFUVVFU1RfRklOSVNIRURfQ09VTlRdLFxuICAgICAgZXJyLCBsaXN0ZW5lckNvdW50KTtcbiAgICBhZ2VudC5lcnJvclNvY2tldENvdW50Kys7XG4gICAgaWYgKGxpc3RlbmVyQ291bnQgPT09IDEpIHtcbiAgICAgIC8vIGlmIHNvY2tldCBkb24ndCBjb250YWluIGVycm9yIGV2ZW50IGhhbmRsZXIsIGRvbid0IGNhdGNoIGl0LCBlbWl0IGl0IGFnYWluXG4gICAgICBkZWJ1ZygnJXMgZW1pdCB1bmNhdWdodCBlcnJvciBldmVudCcsIHNvY2tldFtTT0NLRVRfTkFNRV0pO1xuICAgICAgc29ja2V0LnJlbW92ZUxpc3RlbmVyKCdlcnJvcicsIG9uRXJyb3IpO1xuICAgICAgc29ja2V0LmVtaXQoJ2Vycm9yJywgZXJyKTtcbiAgICB9XG4gIH1cbiAgc29ja2V0Lm9uKCdlcnJvcicsIG9uRXJyb3IpO1xuXG4gIGZ1bmN0aW9uIG9uUmVtb3ZlKCkge1xuICAgIGRlYnVnKCclcyhyZXF1ZXN0czogJXMsIGZpbmlzaGVkOiAlcykgYWdlbnRSZW1vdmUnLFxuICAgICAgc29ja2V0W1NPQ0tFVF9OQU1FXSxcbiAgICAgIHNvY2tldFtTT0NLRVRfUkVRVUVTVF9DT1VOVF0sIHNvY2tldFtTT0NLRVRfUkVRVUVTVF9GSU5JU0hFRF9DT1VOVF0pO1xuICAgIC8vIFdlIG5lZWQgdGhpcyBmdW5jdGlvbiBmb3IgY2FzZXMgbGlrZSBIVFRQICd1cGdyYWRlJ1xuICAgIC8vIChkZWZpbmVkIGJ5IFdlYlNvY2tldHMpIHdoZXJlIHdlIG5lZWQgdG8gcmVtb3ZlIGEgc29ja2V0IGZyb20gdGhlXG4gICAgLy8gcG9vbCBiZWNhdXNlIGl0J2xsIGJlIGxvY2tlZCB1cCBpbmRlZmluaXRlbHlcbiAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2Nsb3NlJywgb25DbG9zZSk7XG4gICAgc29ja2V0LnJlbW92ZUxpc3RlbmVyKCdlcnJvcicsIG9uRXJyb3IpO1xuICAgIHNvY2tldC5yZW1vdmVMaXN0ZW5lcignZnJlZScsIG9uRnJlZSk7XG4gICAgc29ja2V0LnJlbW92ZUxpc3RlbmVyKCd0aW1lb3V0Jywgb25UaW1lb3V0KTtcbiAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2FnZW50UmVtb3ZlJywgb25SZW1vdmUpO1xuICB9XG4gIHNvY2tldC5vbignYWdlbnRSZW1vdmUnLCBvblJlbW92ZSk7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gQWdlbnQ7XG5cbmZ1bmN0aW9uIGluc3BlY3Qob2JqKSB7XG4gIGNvbnN0IHJlcyA9IHt9O1xuICBmb3IgKGNvbnN0IGtleSBpbiBvYmopIHtcbiAgICByZXNba2V5XSA9IG9ialtrZXldLmxlbmd0aDtcbiAgfVxuICByZXR1cm4gcmVzO1xufVxuIiwgIid1c2Ugc3RyaWN0JztcblxuY29uc3QgT3JpZ2luYWxIdHRwc0FnZW50ID0gcmVxdWlyZSgnaHR0cHMnKS5BZ2VudDtcbmNvbnN0IEh0dHBBZ2VudCA9IHJlcXVpcmUoJy4vYWdlbnQnKTtcbmNvbnN0IHtcbiAgSU5JVF9TT0NLRVQsXG4gIENSRUFURV9IVFRQU19DT05ORUNUSU9OLFxufSA9IHJlcXVpcmUoJy4vY29uc3RhbnRzJyk7XG5cbmNsYXNzIEh0dHBzQWdlbnQgZXh0ZW5kcyBIdHRwQWdlbnQge1xuICBjb25zdHJ1Y3RvcihvcHRpb25zKSB7XG4gICAgc3VwZXIob3B0aW9ucyk7XG5cbiAgICB0aGlzLmRlZmF1bHRQb3J0ID0gNDQzO1xuICAgIHRoaXMucHJvdG9jb2wgPSAnaHR0cHM6JztcbiAgICB0aGlzLm1heENhY2hlZFNlc3Npb25zID0gdGhpcy5vcHRpb25zLm1heENhY2hlZFNlc3Npb25zO1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgaWYgKHRoaXMubWF4Q2FjaGVkU2Vzc2lvbnMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5tYXhDYWNoZWRTZXNzaW9ucyA9IDEwMDtcbiAgICB9XG5cbiAgICB0aGlzLl9zZXNzaW9uQ2FjaGUgPSB7XG4gICAgICBtYXA6IHt9LFxuICAgICAgbGlzdDogW10sXG4gICAgfTtcbiAgfVxuXG4gIGNyZWF0ZUNvbm5lY3Rpb24ob3B0aW9ucykge1xuICAgIGNvbnN0IHNvY2tldCA9IHRoaXNbQ1JFQVRFX0hUVFBTX0NPTk5FQ1RJT05dKG9wdGlvbnMpO1xuICAgIHRoaXNbSU5JVF9TT0NLRVRdKHNvY2tldCwgb3B0aW9ucyk7XG4gICAgcmV0dXJuIHNvY2tldDtcbiAgfVxufVxuXG4vLyBodHRwczovL2dpdGh1Yi5jb20vbm9kZWpzL25vZGUvYmxvYi9tYXN0ZXIvbGliL2h0dHBzLmpzI0w4OVxuSHR0cHNBZ2VudC5wcm90b3R5cGVbQ1JFQVRFX0hUVFBTX0NPTk5FQ1RJT05dID0gT3JpZ2luYWxIdHRwc0FnZW50LnByb3RvdHlwZS5jcmVhdGVDb25uZWN0aW9uO1xuXG5bXG4gICdnZXROYW1lJyxcbiAgJ19nZXRTZXNzaW9uJyxcbiAgJ19jYWNoZVNlc3Npb24nLFxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vbm9kZWpzL25vZGUvcHVsbC80OTgyXG4gICdfZXZpY3RTZXNzaW9uJyxcbl0uZm9yRWFjaChmdW5jdGlvbihtZXRob2QpIHtcbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgaWYgKHR5cGVvZiBPcmlnaW5hbEh0dHBzQWdlbnQucHJvdG90eXBlW21ldGhvZF0gPT09ICdmdW5jdGlvbicpIHtcbiAgICBIdHRwc0FnZW50LnByb3RvdHlwZVttZXRob2RdID0gT3JpZ2luYWxIdHRwc0FnZW50LnByb3RvdHlwZVttZXRob2RdO1xuICB9XG59KTtcblxubW9kdWxlLmV4cG9ydHMgPSBIdHRwc0FnZW50O1xuIiwgIid1c2Ugc3RyaWN0JztcblxubW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuL2xpYi9hZ2VudCcpO1xubW9kdWxlLmV4cG9ydHMuSHR0cHNBZ2VudCA9IHJlcXVpcmUoJy4vbGliL2h0dHBzX2FnZW50Jyk7XG5tb2R1bGUuZXhwb3J0cy5jb25zdGFudHMgPSByZXF1aXJlKCcuL2xpYi9jb25zdGFudHMnKTtcbiIsICJ2YXIgb2JqVG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nO1xudmFyIG9iaktleXMgPSBPYmplY3Qua2V5cyB8fCBmdW5jdGlvbihvYmopIHtcblx0XHR2YXIga2V5cyA9IFtdO1xuXHRcdGZvciAodmFyIG5hbWUgaW4gb2JqKSB7XG5cdFx0XHRrZXlzLnB1c2gobmFtZSk7XG5cdFx0fVxuXHRcdHJldHVybiBrZXlzO1xuXHR9O1xuXG5mdW5jdGlvbiBzdHJpbmdpZnkodmFsLCBpc0FycmF5UHJvcCkge1xuXHR2YXIgaSwgbWF4LCBzdHIsIGtleXMsIGtleSwgcHJvcFZhbCwgdG9TdHI7XG5cdGlmICh2YWwgPT09IHRydWUpIHtcblx0XHRyZXR1cm4gXCJ0cnVlXCI7XG5cdH1cblx0aWYgKHZhbCA9PT0gZmFsc2UpIHtcblx0XHRyZXR1cm4gXCJmYWxzZVwiO1xuXHR9XG5cdHN3aXRjaCAodHlwZW9mIHZhbCkge1xuXHRcdGNhc2UgXCJvYmplY3RcIjpcblx0XHRcdGlmICh2YWwgPT09IG51bGwpIHtcblx0XHRcdFx0cmV0dXJuIG51bGw7XG5cdFx0XHR9IGVsc2UgaWYgKHZhbC50b0pTT04gJiYgdHlwZW9mIHZhbC50b0pTT04gPT09IFwiZnVuY3Rpb25cIikge1xuXHRcdFx0XHRyZXR1cm4gc3RyaW5naWZ5KHZhbC50b0pTT04oKSwgaXNBcnJheVByb3ApO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0dG9TdHIgPSBvYmpUb1N0cmluZy5jYWxsKHZhbCk7XG5cdFx0XHRcdGlmICh0b1N0ciA9PT0gXCJbb2JqZWN0IEFycmF5XVwiKSB7XG5cdFx0XHRcdFx0c3RyID0gJ1snO1xuXHRcdFx0XHRcdG1heCA9IHZhbC5sZW5ndGggLSAxO1xuXHRcdFx0XHRcdGZvcihpID0gMDsgaSA8IG1heDsgaSsrKSB7XG5cdFx0XHRcdFx0XHRzdHIgKz0gc3RyaW5naWZ5KHZhbFtpXSwgdHJ1ZSkgKyAnLCc7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdGlmIChtYXggPiAtMSkge1xuXHRcdFx0XHRcdFx0c3RyICs9IHN0cmluZ2lmeSh2YWxbaV0sIHRydWUpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRyZXR1cm4gc3RyICsgJ10nO1xuXHRcdFx0XHR9IGVsc2UgaWYgKHRvU3RyID09PSBcIltvYmplY3QgT2JqZWN0XVwiKSB7XG5cdFx0XHRcdFx0Ly8gb25seSBvYmplY3QgaXMgbGVmdFxuXHRcdFx0XHRcdGtleXMgPSBvYmpLZXlzKHZhbCkuc29ydCgpO1xuXHRcdFx0XHRcdG1heCA9IGtleXMubGVuZ3RoO1xuXHRcdFx0XHRcdHN0ciA9IFwiXCI7XG5cdFx0XHRcdFx0aSA9IDA7XG5cdFx0XHRcdFx0d2hpbGUgKGkgPCBtYXgpIHtcblx0XHRcdFx0XHRcdGtleSA9IGtleXNbaV07XG5cdFx0XHRcdFx0XHRwcm9wVmFsID0gc3RyaW5naWZ5KHZhbFtrZXldLCBmYWxzZSk7XG5cdFx0XHRcdFx0XHRpZiAocHJvcFZhbCAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0XHRcdFx0XHRcdGlmIChzdHIpIHtcblx0XHRcdFx0XHRcdFx0XHRzdHIgKz0gJywnO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdHN0ciArPSBKU09OLnN0cmluZ2lmeShrZXkpICsgJzonICsgcHJvcFZhbDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdGkrKztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0cmV0dXJuICd7JyArIHN0ciArICd9Jztcblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRyZXR1cm4gSlNPTi5zdHJpbmdpZnkodmFsKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdGNhc2UgXCJmdW5jdGlvblwiOlxuXHRcdGNhc2UgXCJ1bmRlZmluZWRcIjpcblx0XHRcdHJldHVybiBpc0FycmF5UHJvcCA/IG51bGwgOiB1bmRlZmluZWQ7XG5cdFx0Y2FzZSBcInN0cmluZ1wiOlxuXHRcdFx0cmV0dXJuIEpTT04uc3RyaW5naWZ5KHZhbCk7XG5cdFx0ZGVmYXVsdDpcblx0XHRcdHJldHVybiBpc0Zpbml0ZSh2YWwpID8gdmFsIDogbnVsbDtcblx0fVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uKHZhbCkge1xuXHR2YXIgcmV0dXJuVmFsID0gc3RyaW5naWZ5KHZhbCwgZmFsc2UpO1xuXHRpZiAocmV0dXJuVmFsICE9PSB1bmRlZmluZWQpIHtcblx0XHRyZXR1cm4gJycrIHJldHVyblZhbDtcblx0fVxufTtcbiIsICJjb25zdCBNSU5JTVVNX1NMT1RfUEVSX0VQT0NIID0gMzI7XG5cbi8vIFJldHVybnMgdGhlIG51bWJlciBvZiB0cmFpbGluZyB6ZXJvcyBpbiB0aGUgYmluYXJ5IHJlcHJlc2VudGF0aW9uIG9mIHNlbGYuXG5mdW5jdGlvbiB0cmFpbGluZ1plcm9zKG46IG51bWJlcikge1xuICBsZXQgdHJhaWxpbmdaZXJvcyA9IDA7XG4gIHdoaWxlIChuID4gMSkge1xuICAgIG4gLz0gMjtcbiAgICB0cmFpbGluZ1plcm9zKys7XG4gIH1cbiAgcmV0dXJuIHRyYWlsaW5nWmVyb3M7XG59XG5cbi8vIFJldHVybnMgdGhlIHNtYWxsZXN0IHBvd2VyIG9mIHR3byBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gblxuZnVuY3Rpb24gbmV4dFBvd2VyT2ZUd28objogbnVtYmVyKSB7XG4gIGlmIChuID09PSAwKSByZXR1cm4gMTtcbiAgbi0tO1xuICBuIHw9IG4gPj4gMTtcbiAgbiB8PSBuID4+IDI7XG4gIG4gfD0gbiA+PiA0O1xuICBuIHw9IG4gPj4gODtcbiAgbiB8PSBuID4+IDE2O1xuICBuIHw9IG4gPj4gMzI7XG4gIHJldHVybiBuICsgMTtcbn1cblxuLyoqXG4gKiBFcG9jaCBzY2hlZHVsZVxuICogKHNlZSBodHRwczovL2RvY3Muc29sYW5hLmNvbS90ZXJtaW5vbG9neSNlcG9jaClcbiAqIENhbiBiZSByZXRyaWV2ZWQgd2l0aCB0aGUge0BsaW5rIENvbm5lY3Rpb24uZ2V0RXBvY2hTY2hlZHVsZX0gbWV0aG9kXG4gKi9cbmV4cG9ydCBjbGFzcyBFcG9jaFNjaGVkdWxlIHtcbiAgLyoqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBzbG90cyBpbiBlYWNoIGVwb2NoICovXG4gIHB1YmxpYyBzbG90c1BlckVwb2NoOiBudW1iZXI7XG4gIC8qKiBUaGUgbnVtYmVyIG9mIHNsb3RzIGJlZm9yZSBiZWdpbm5pbmcgb2YgYW4gZXBvY2ggdG8gY2FsY3VsYXRlIGEgbGVhZGVyIHNjaGVkdWxlIGZvciB0aGF0IGVwb2NoICovXG4gIHB1YmxpYyBsZWFkZXJTY2hlZHVsZVNsb3RPZmZzZXQ6IG51bWJlcjtcbiAgLyoqIEluZGljYXRlcyB3aGV0aGVyIGVwb2NocyBzdGFydCBzaG9ydCBhbmQgZ3JvdyAqL1xuICBwdWJsaWMgd2FybXVwOiBib29sZWFuO1xuICAvKiogVGhlIGZpcnN0IGVwb2NoIHdpdGggYHNsb3RzUGVyRXBvY2hgIHNsb3RzICovXG4gIHB1YmxpYyBmaXJzdE5vcm1hbEVwb2NoOiBudW1iZXI7XG4gIC8qKiBUaGUgZmlyc3Qgc2xvdCBvZiBgZmlyc3ROb3JtYWxFcG9jaGAgKi9cbiAgcHVibGljIGZpcnN0Tm9ybWFsU2xvdDogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNsb3RzUGVyRXBvY2g6IG51bWJlcixcbiAgICBsZWFkZXJTY2hlZHVsZVNsb3RPZmZzZXQ6IG51bWJlcixcbiAgICB3YXJtdXA6IGJvb2xlYW4sXG4gICAgZmlyc3ROb3JtYWxFcG9jaDogbnVtYmVyLFxuICAgIGZpcnN0Tm9ybWFsU2xvdDogbnVtYmVyLFxuICApIHtcbiAgICB0aGlzLnNsb3RzUGVyRXBvY2ggPSBzbG90c1BlckVwb2NoO1xuICAgIHRoaXMubGVhZGVyU2NoZWR1bGVTbG90T2Zmc2V0ID0gbGVhZGVyU2NoZWR1bGVTbG90T2Zmc2V0O1xuICAgIHRoaXMud2FybXVwID0gd2FybXVwO1xuICAgIHRoaXMuZmlyc3ROb3JtYWxFcG9jaCA9IGZpcnN0Tm9ybWFsRXBvY2g7XG4gICAgdGhpcy5maXJzdE5vcm1hbFNsb3QgPSBmaXJzdE5vcm1hbFNsb3Q7XG4gIH1cblxuICBnZXRFcG9jaChzbG90OiBudW1iZXIpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldEVwb2NoQW5kU2xvdEluZGV4KHNsb3QpWzBdO1xuICB9XG5cbiAgZ2V0RXBvY2hBbmRTbG90SW5kZXgoc2xvdDogbnVtYmVyKTogW251bWJlciwgbnVtYmVyXSB7XG4gICAgaWYgKHNsb3QgPCB0aGlzLmZpcnN0Tm9ybWFsU2xvdCkge1xuICAgICAgY29uc3QgZXBvY2ggPVxuICAgICAgICB0cmFpbGluZ1plcm9zKG5leHRQb3dlck9mVHdvKHNsb3QgKyBNSU5JTVVNX1NMT1RfUEVSX0VQT0NIICsgMSkpIC1cbiAgICAgICAgdHJhaWxpbmdaZXJvcyhNSU5JTVVNX1NMT1RfUEVSX0VQT0NIKSAtXG4gICAgICAgIDE7XG5cbiAgICAgIGNvbnN0IGVwb2NoTGVuID0gdGhpcy5nZXRTbG90c0luRXBvY2goZXBvY2gpO1xuICAgICAgY29uc3Qgc2xvdEluZGV4ID0gc2xvdCAtIChlcG9jaExlbiAtIE1JTklNVU1fU0xPVF9QRVJfRVBPQ0gpO1xuICAgICAgcmV0dXJuIFtlcG9jaCwgc2xvdEluZGV4XTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3Qgbm9ybWFsU2xvdEluZGV4ID0gc2xvdCAtIHRoaXMuZmlyc3ROb3JtYWxTbG90O1xuICAgICAgY29uc3Qgbm9ybWFsRXBvY2hJbmRleCA9IE1hdGguZmxvb3Iobm9ybWFsU2xvdEluZGV4IC8gdGhpcy5zbG90c1BlckVwb2NoKTtcbiAgICAgIGNvbnN0IGVwb2NoID0gdGhpcy5maXJzdE5vcm1hbEVwb2NoICsgbm9ybWFsRXBvY2hJbmRleDtcbiAgICAgIGNvbnN0IHNsb3RJbmRleCA9IG5vcm1hbFNsb3RJbmRleCAlIHRoaXMuc2xvdHNQZXJFcG9jaDtcbiAgICAgIHJldHVybiBbZXBvY2gsIHNsb3RJbmRleF07XG4gICAgfVxuICB9XG5cbiAgZ2V0Rmlyc3RTbG90SW5FcG9jaChlcG9jaDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICBpZiAoZXBvY2ggPD0gdGhpcy5maXJzdE5vcm1hbEVwb2NoKSB7XG4gICAgICByZXR1cm4gKE1hdGgucG93KDIsIGVwb2NoKSAtIDEpICogTUlOSU1VTV9TTE9UX1BFUl9FUE9DSDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgKGVwb2NoIC0gdGhpcy5maXJzdE5vcm1hbEVwb2NoKSAqIHRoaXMuc2xvdHNQZXJFcG9jaCArXG4gICAgICAgIHRoaXMuZmlyc3ROb3JtYWxTbG90XG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIGdldExhc3RTbG90SW5FcG9jaChlcG9jaDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRGaXJzdFNsb3RJbkVwb2NoKGVwb2NoKSArIHRoaXMuZ2V0U2xvdHNJbkVwb2NoKGVwb2NoKSAtIDE7XG4gIH1cblxuICBnZXRTbG90c0luRXBvY2goZXBvY2g6IG51bWJlcikge1xuICAgIGlmIChlcG9jaCA8IHRoaXMuZmlyc3ROb3JtYWxFcG9jaCkge1xuICAgICAgcmV0dXJuIE1hdGgucG93KDIsIGVwb2NoICsgdHJhaWxpbmdaZXJvcyhNSU5JTVVNX1NMT1RfUEVSX0VQT0NIKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLnNsb3RzUGVyRXBvY2g7XG4gICAgfVxuICB9XG59XG4iLCAiZXhwb3J0IGNsYXNzIFNlbmRUcmFuc2FjdGlvbkVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBsb2dzOiBzdHJpbmdbXSB8IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcsIGxvZ3M/OiBzdHJpbmdbXSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuXG4gICAgdGhpcy5sb2dzID0gbG9ncztcbiAgfVxufVxuXG4vLyBLZWVwIGluIHN5bmMgd2l0aCBjbGllbnQvc3JjL3JwY19jdXN0b21fZXJyb3JzLnJzXG4vLyBUeXBlc2NyaXB0IGBlbnVtc2AgdGh3YXJ0IHRyZWUtc2hha2luZy4gU2VlIGh0dHBzOi8vYmFyZ3N0ZW4ub3JnL2pzdHMvZW51bXMvXG5leHBvcnQgY29uc3QgU29sYW5hSlNPTlJQQ0Vycm9yQ29kZSA9IHtcbiAgSlNPTl9SUENfU0VSVkVSX0VSUk9SX0JMT0NLX0NMRUFORURfVVA6IC0zMjAwMSxcbiAgSlNPTl9SUENfU0VSVkVSX0VSUk9SX1NFTkRfVFJBTlNBQ1RJT05fUFJFRkxJR0hUX0ZBSUxVUkU6IC0zMjAwMixcbiAgSlNPTl9SUENfU0VSVkVSX0VSUk9SX1RSQU5TQUNUSU9OX1NJR05BVFVSRV9WRVJJRklDQVRJT05fRkFJTFVSRTogLTMyMDAzLFxuICBKU09OX1JQQ19TRVJWRVJfRVJST1JfQkxPQ0tfTk9UX0FWQUlMQUJMRTogLTMyMDA0LFxuICBKU09OX1JQQ19TRVJWRVJfRVJST1JfTk9ERV9VTkhFQUxUSFk6IC0zMjAwNSxcbiAgSlNPTl9SUENfU0VSVkVSX0VSUk9SX1RSQU5TQUNUSU9OX1BSRUNPTVBJTEVfVkVSSUZJQ0FUSU9OX0ZBSUxVUkU6IC0zMjAwNixcbiAgSlNPTl9SUENfU0VSVkVSX0VSUk9SX1NMT1RfU0tJUFBFRDogLTMyMDA3LFxuICBKU09OX1JQQ19TRVJWRVJfRVJST1JfTk9fU05BUFNIT1Q6IC0zMjAwOCxcbiAgSlNPTl9SUENfU0VSVkVSX0VSUk9SX0xPTkdfVEVSTV9TVE9SQUdFX1NMT1RfU0tJUFBFRDogLTMyMDA5LFxuICBKU09OX1JQQ19TRVJWRVJfRVJST1JfS0VZX0VYQ0xVREVEX0ZST01fU0VDT05EQVJZX0lOREVYOiAtMzIwMTAsXG4gIEpTT05fUlBDX1NFUlZFUl9FUlJPUl9UUkFOU0FDVElPTl9ISVNUT1JZX05PVF9BVkFJTEFCTEU6IC0zMjAxMSxcbiAgSlNPTl9SUENfU0NBTl9FUlJPUjogLTMyMDEyLFxuICBKU09OX1JQQ19TRVJWRVJfRVJST1JfVFJBTlNBQ1RJT05fU0lHTkFUVVJFX0xFTl9NSVNNQVRDSDogLTMyMDEzLFxuICBKU09OX1JQQ19TRVJWRVJfRVJST1JfQkxPQ0tfU1RBVFVTX05PVF9BVkFJTEFCTEVfWUVUOiAtMzIwMTQsXG4gIEpTT05fUlBDX1NFUlZFUl9FUlJPUl9VTlNVUFBPUlRFRF9UUkFOU0FDVElPTl9WRVJTSU9OOiAtMzIwMTUsXG4gIEpTT05fUlBDX1NFUlZFUl9FUlJPUl9NSU5fQ09OVEVYVF9TTE9UX05PVF9SRUFDSEVEOiAtMzIwMTYsXG59IGFzIGNvbnN0O1xuZXhwb3J0IHR5cGUgU29sYW5hSlNPTlJQQ0Vycm9yQ29kZUVudW0gPVxuICAodHlwZW9mIFNvbGFuYUpTT05SUENFcnJvckNvZGUpW2tleW9mIHR5cGVvZiBTb2xhbmFKU09OUlBDRXJyb3JDb2RlXTtcblxuZXhwb3J0IGNsYXNzIFNvbGFuYUpTT05SUENFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgY29kZTogU29sYW5hSlNPTlJQQ0Vycm9yQ29kZUVudW0gfCB1bmtub3duO1xuICBkYXRhPzogYW55O1xuICBjb25zdHJ1Y3RvcihcbiAgICB7XG4gICAgICBjb2RlLFxuICAgICAgbWVzc2FnZSxcbiAgICAgIGRhdGEsXG4gICAgfTogUmVhZG9ubHk8e2NvZGU6IHVua25vd247IG1lc3NhZ2U6IHN0cmluZzsgZGF0YT86IGFueX0+LFxuICAgIGN1c3RvbU1lc3NhZ2U/OiBzdHJpbmcsXG4gICkge1xuICAgIHN1cGVyKGN1c3RvbU1lc3NhZ2UgIT0gbnVsbCA/IGAke2N1c3RvbU1lc3NhZ2V9OiAke21lc3NhZ2V9YCA6IG1lc3NhZ2UpO1xuICAgIHRoaXMuY29kZSA9IGNvZGU7XG4gICAgdGhpcy5kYXRhID0gZGF0YTtcbiAgICB0aGlzLm5hbWUgPSAnU29sYW5hSlNPTlJQQ0Vycm9yJztcbiAgfVxufVxuIiwgImltcG9ydCAqIGFzIG5vZGVGZXRjaCBmcm9tICdub2RlLWZldGNoJztcblxuZXhwb3J0IGRlZmF1bHQgKHR5cGVvZiBnbG9iYWxUaGlzLmZldGNoID09PSAnZnVuY3Rpb24nXG4gID8gLy8gVGhlIEZldGNoIEFQSSBpcyBzdXBwb3J0ZWQgZXhwZXJpbWVudGFsbHkgaW4gTm9kZSAxNy41KyBhbmQgbmF0aXZlbHkgaW4gTm9kZSAxOCsuXG4gICAgZ2xvYmFsVGhpcy5mZXRjaFxuICA6IC8vIE90aGVyd2lzZSB1c2UgdGhlIHBvbHlmaWxsLlxuICAgIGFzeW5jIGZ1bmN0aW9uIChcbiAgICAgIGlucHV0OiBub2RlRmV0Y2guUmVxdWVzdEluZm8sXG4gICAgICBpbml0Pzogbm9kZUZldGNoLlJlcXVlc3RJbml0LFxuICAgICk6IFByb21pc2U8bm9kZUZldGNoLlJlc3BvbnNlPiB7XG4gICAgICBjb25zdCBwcm9jZXNzZWRJbnB1dCA9XG4gICAgICAgIHR5cGVvZiBpbnB1dCA9PT0gJ3N0cmluZycgJiYgaW5wdXQuc2xpY2UoMCwgMikgPT09ICcvLydcbiAgICAgICAgICA/ICdodHRwczonICsgaW5wdXRcbiAgICAgICAgICA6IGlucHV0O1xuICAgICAgcmV0dXJuIGF3YWl0IG5vZGVGZXRjaC5kZWZhdWx0KHByb2Nlc3NlZElucHV0LCBpbml0KTtcbiAgICB9KSBhcyB0eXBlb2YgZ2xvYmFsVGhpcy5mZXRjaDtcbiIsICJpbXBvcnQgUnBjV2ViU29ja2V0Q29tbW9uQ2xpZW50IGZyb20gJ3JwYy13ZWJzb2NrZXRzL2Rpc3QvbGliL2NsaWVudCc7XG5pbXBvcnQgUnBjV2ViU29ja2V0QnJvd3NlckZhY3RvcnkgZnJvbSAncnBjLXdlYnNvY2tldHMvZGlzdC9saWIvY2xpZW50L3dlYnNvY2tldC5icm93c2VyJztcbmltcG9ydCB7XG4gIElDb21tb25XZWJTb2NrZXQsXG4gIElXU0NsaWVudEFkZGl0aW9uYWxPcHRpb25zLFxuICBOb2RlV2ViU29ja2V0VHlwZSxcbiAgTm9kZVdlYlNvY2tldFR5cGVPcHRpb25zLFxufSBmcm9tICdycGMtd2Vic29ja2V0cy9kaXN0L2xpYi9jbGllbnQvY2xpZW50LnR5cGVzJztcblxuaW1wb3J0IGNyZWF0ZVJwYyBmcm9tICcuL3JwYy13ZWJzb2NrZXQtZmFjdG9yeSc7XG5cbmludGVyZmFjZSBJSGFzUmVhZHlTdGF0ZSB7XG4gIHJlYWR5U3RhdGU6IFdlYlNvY2tldFsncmVhZHlTdGF0ZSddO1xufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBScGNXZWJTb2NrZXRDbGllbnQgZXh0ZW5kcyBScGNXZWJTb2NrZXRDb21tb25DbGllbnQge1xuICBwcml2YXRlIHVuZGVybHlpbmdTb2NrZXQ6IElIYXNSZWFkeVN0YXRlIHwgdW5kZWZpbmVkO1xuICBjb25zdHJ1Y3RvcihcbiAgICBhZGRyZXNzPzogc3RyaW5nLFxuICAgIG9wdGlvbnM/OiBJV1NDbGllbnRBZGRpdGlvbmFsT3B0aW9ucyAmIE5vZGVXZWJTb2NrZXRUeXBlT3B0aW9ucyxcbiAgICBnZW5lcmF0ZV9yZXF1ZXN0X2lkPzogKFxuICAgICAgbWV0aG9kOiBzdHJpbmcsXG4gICAgICBwYXJhbXM6IG9iamVjdCB8IEFycmF5PGFueT4sXG4gICAgKSA9PiBudW1iZXIsXG4gICkge1xuICAgIGNvbnN0IHdlYlNvY2tldEZhY3RvcnkgPSAodXJsOiBzdHJpbmcpID0+IHtcbiAgICAgIGNvbnN0IHJwYyA9IGNyZWF0ZVJwYyh1cmwsIHtcbiAgICAgICAgYXV0b2Nvbm5lY3Q6IHRydWUsXG4gICAgICAgIG1heF9yZWNvbm5lY3RzOiA1LFxuICAgICAgICByZWNvbm5lY3Q6IHRydWUsXG4gICAgICAgIHJlY29ubmVjdF9pbnRlcnZhbDogMTAwMCxcbiAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgIH0pO1xuICAgICAgaWYgKCdzb2NrZXQnIGluIHJwYykge1xuICAgICAgICB0aGlzLnVuZGVybHlpbmdTb2NrZXQgPSAoXG4gICAgICAgICAgcnBjIGFzIFJldHVyblR5cGU8dHlwZW9mIFJwY1dlYlNvY2tldEJyb3dzZXJGYWN0b3J5PlxuICAgICAgICApLnNvY2tldDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMudW5kZXJseWluZ1NvY2tldCA9IHJwYyBhcyBOb2RlV2ViU29ja2V0VHlwZTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBycGMgYXMgSUNvbW1vbldlYlNvY2tldDtcbiAgICB9O1xuICAgIHN1cGVyKHdlYlNvY2tldEZhY3RvcnksIGFkZHJlc3MsIG9wdGlvbnMsIGdlbmVyYXRlX3JlcXVlc3RfaWQpO1xuICB9XG4gIGNhbGwoXG4gICAgLi4uYXJnczogUGFyYW1ldGVyczxScGNXZWJTb2NrZXRDb21tb25DbGllbnRbJ2NhbGwnXT5cbiAgKTogUmV0dXJuVHlwZTxScGNXZWJTb2NrZXRDb21tb25DbGllbnRbJ2NhbGwnXT4ge1xuICAgIGNvbnN0IHJlYWR5U3RhdGUgPSB0aGlzLnVuZGVybHlpbmdTb2NrZXQ/LnJlYWR5U3RhdGU7XG4gICAgaWYgKHJlYWR5U3RhdGUgPT09IDEgLyogV2ViU29ja2V0Lk9QRU4gKi8pIHtcbiAgICAgIHJldHVybiBzdXBlci5jYWxsKC4uLmFyZ3MpO1xuICAgIH1cbiAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoXG4gICAgICBuZXcgRXJyb3IoXG4gICAgICAgICdUcmllZCB0byBjYWxsIGEgSlNPTi1SUEMgbWV0aG9kIGAnICtcbiAgICAgICAgICBhcmdzWzBdICtcbiAgICAgICAgICAnYCBidXQgdGhlIHNvY2tldCB3YXMgbm90IGBDT05ORUNUSU5HYCBvciBgT1BFTmAgKGByZWFkeVN0YXRlYCB3YXMgJyArXG4gICAgICAgICAgcmVhZHlTdGF0ZSArXG4gICAgICAgICAgJyknLFxuICAgICAgKSxcbiAgICApO1xuICB9XG4gIG5vdGlmeShcbiAgICAuLi5hcmdzOiBQYXJhbWV0ZXJzPFJwY1dlYlNvY2tldENvbW1vbkNsaWVudFsnbm90aWZ5J10+XG4gICk6IFJldHVyblR5cGU8UnBjV2ViU29ja2V0Q29tbW9uQ2xpZW50Wydub3RpZnknXT4ge1xuICAgIGNvbnN0IHJlYWR5U3RhdGUgPSB0aGlzLnVuZGVybHlpbmdTb2NrZXQ/LnJlYWR5U3RhdGU7XG4gICAgaWYgKHJlYWR5U3RhdGUgPT09IDEgLyogV2ViU29ja2V0Lk9QRU4gKi8pIHtcbiAgICAgIHJldHVybiBzdXBlci5ub3RpZnkoLi4uYXJncyk7XG4gICAgfVxuICAgIHJldHVybiBQcm9taXNlLnJlamVjdChcbiAgICAgIG5ldyBFcnJvcihcbiAgICAgICAgJ1RyaWVkIHRvIHNlbmQgYSBKU09OLVJQQyBub3RpZmljYXRpb24gYCcgK1xuICAgICAgICAgIGFyZ3NbMF0gK1xuICAgICAgICAgICdgIGJ1dCB0aGUgc29ja2V0IHdhcyBub3QgYENPTk5FQ1RJTkdgIG9yIGBPUEVOYCAoYHJlYWR5U3RhdGVgIHdhcyAnICtcbiAgICAgICAgICByZWFkeVN0YXRlICtcbiAgICAgICAgICAnKScsXG4gICAgICApLFxuICAgICk7XG4gIH1cbn1cbiIsICJpbXBvcnQgKiBhcyBCdWZmZXJMYXlvdXQgZnJvbSAnQHNvbGFuYS9idWZmZXItbGF5b3V0JztcblxuZXhwb3J0IGludGVyZmFjZSBJQWNjb3VudFN0YXRlRGF0YSB7XG4gIHJlYWRvbmx5IHR5cGVJbmRleDogbnVtYmVyO1xufVxuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgdHlwZSBBY2NvdW50VHlwZTxUSW5wdXREYXRhIGV4dGVuZHMgSUFjY291bnRTdGF0ZURhdGE+ID0ge1xuICAvKiogVGhlIGFjY291bnQgdHlwZSBpbmRleCAoZnJvbSBzb2xhbmEgdXBzdHJlYW0gcHJvZ3JhbSkgKi9cbiAgaW5kZXg6IG51bWJlcjtcbiAgLyoqIFRoZSBCdWZmZXJMYXlvdXQgdG8gdXNlIHRvIGJ1aWxkIGRhdGEgKi9cbiAgbGF5b3V0OiBCdWZmZXJMYXlvdXQuTGF5b3V0PFRJbnB1dERhdGE+O1xufTtcblxuLyoqXG4gKiBEZWNvZGUgYWNjb3VudCBkYXRhIGJ1ZmZlciB1c2luZyBhbiBBY2NvdW50VHlwZVxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkZWNvZGVEYXRhPFRBY2NvdW50U3RhdGVEYXRhIGV4dGVuZHMgSUFjY291bnRTdGF0ZURhdGE+KFxuICB0eXBlOiBBY2NvdW50VHlwZTxUQWNjb3VudFN0YXRlRGF0YT4sXG4gIGRhdGE6IFVpbnQ4QXJyYXksXG4pOiBUQWNjb3VudFN0YXRlRGF0YSB7XG4gIGxldCBkZWNvZGVkOiBUQWNjb3VudFN0YXRlRGF0YTtcbiAgdHJ5IHtcbiAgICBkZWNvZGVkID0gdHlwZS5sYXlvdXQuZGVjb2RlKGRhdGEpO1xuICB9IGNhdGNoIChlcnIpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ2ludmFsaWQgaW5zdHJ1Y3Rpb247ICcgKyBlcnIpO1xuICB9XG5cbiAgaWYgKGRlY29kZWQudHlwZUluZGV4ICE9PSB0eXBlLmluZGV4KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgYGludmFsaWQgYWNjb3VudCBkYXRhOyBhY2NvdW50IHR5cGUgbWlzbWF0Y2ggJHtkZWNvZGVkLnR5cGVJbmRleH0gIT0gJHt0eXBlLmluZGV4fWAsXG4gICAgKTtcbiAgfVxuXG4gIHJldHVybiBkZWNvZGVkO1xufVxuIiwgImltcG9ydCAqIGFzIEJ1ZmZlckxheW91dCBmcm9tICdAc29sYW5hL2J1ZmZlci1sYXlvdXQnO1xuXG5pbXBvcnQgYXNzZXJ0IGZyb20gJy4uLy4uL3V0aWxzL2Fzc2VydCc7XG5pbXBvcnQgKiBhcyBMYXlvdXQgZnJvbSAnLi4vLi4vbGF5b3V0JztcbmltcG9ydCB7UHVibGljS2V5fSBmcm9tICcuLi8uLi9wdWJsaWNrZXknO1xuaW1wb3J0IHt1NjR9IGZyb20gJy4uLy4uL3V0aWxzL2JpZ2ludCc7XG5pbXBvcnQge2RlY29kZURhdGF9IGZyb20gJy4uLy4uL2FjY291bnQtZGF0YSc7XG5cbmV4cG9ydCB0eXBlIEFkZHJlc3NMb29rdXBUYWJsZVN0YXRlID0ge1xuICBkZWFjdGl2YXRpb25TbG90OiBiaWdpbnQ7XG4gIGxhc3RFeHRlbmRlZFNsb3Q6IG51bWJlcjtcbiAgbGFzdEV4dGVuZGVkU2xvdFN0YXJ0SW5kZXg6IG51bWJlcjtcbiAgYXV0aG9yaXR5PzogUHVibGljS2V5O1xuICBhZGRyZXNzZXM6IEFycmF5PFB1YmxpY0tleT47XG59O1xuXG5leHBvcnQgdHlwZSBBZGRyZXNzTG9va3VwVGFibGVBY2NvdW50QXJncyA9IHtcbiAga2V5OiBQdWJsaWNLZXk7XG4gIHN0YXRlOiBBZGRyZXNzTG9va3VwVGFibGVTdGF0ZTtcbn07XG5cbi8vLyBUaGUgc2VyaWFsaXplZCBzaXplIG9mIGxvb2t1cCB0YWJsZSBtZXRhZGF0YVxuY29uc3QgTE9PS1VQX1RBQkxFX01FVEFfU0laRSA9IDU2O1xuXG5leHBvcnQgY2xhc3MgQWRkcmVzc0xvb2t1cFRhYmxlQWNjb3VudCB7XG4gIGtleTogUHVibGljS2V5O1xuICBzdGF0ZTogQWRkcmVzc0xvb2t1cFRhYmxlU3RhdGU7XG5cbiAgY29uc3RydWN0b3IoYXJnczogQWRkcmVzc0xvb2t1cFRhYmxlQWNjb3VudEFyZ3MpIHtcbiAgICB0aGlzLmtleSA9IGFyZ3Mua2V5O1xuICAgIHRoaXMuc3RhdGUgPSBhcmdzLnN0YXRlO1xuICB9XG5cbiAgaXNBY3RpdmUoKTogYm9vbGVhbiB7XG4gICAgY29uc3QgVTY0X01BWCA9IEJpZ0ludCgnMHhmZmZmZmZmZmZmZmZmZmZmJyk7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGUuZGVhY3RpdmF0aW9uU2xvdCA9PT0gVTY0X01BWDtcbiAgfVxuXG4gIHN0YXRpYyBkZXNlcmlhbGl6ZShhY2NvdW50RGF0YTogVWludDhBcnJheSk6IEFkZHJlc3NMb29rdXBUYWJsZVN0YXRlIHtcbiAgICBjb25zdCBtZXRhID0gZGVjb2RlRGF0YShMb29rdXBUYWJsZU1ldGFMYXlvdXQsIGFjY291bnREYXRhKTtcblxuICAgIGNvbnN0IHNlcmlhbGl6ZWRBZGRyZXNzZXNMZW4gPSBhY2NvdW50RGF0YS5sZW5ndGggLSBMT09LVVBfVEFCTEVfTUVUQV9TSVpFO1xuICAgIGFzc2VydChzZXJpYWxpemVkQWRkcmVzc2VzTGVuID49IDAsICdsb29rdXAgdGFibGUgaXMgaW52YWxpZCcpO1xuICAgIGFzc2VydChzZXJpYWxpemVkQWRkcmVzc2VzTGVuICUgMzIgPT09IDAsICdsb29rdXAgdGFibGUgaXMgaW52YWxpZCcpO1xuXG4gICAgY29uc3QgbnVtU2VyaWFsaXplZEFkZHJlc3NlcyA9IHNlcmlhbGl6ZWRBZGRyZXNzZXNMZW4gLyAzMjtcbiAgICBjb25zdCB7YWRkcmVzc2VzfSA9IEJ1ZmZlckxheW91dC5zdHJ1Y3Q8e2FkZHJlc3NlczogQXJyYXk8VWludDhBcnJheT59PihbXG4gICAgICBCdWZmZXJMYXlvdXQuc2VxKExheW91dC5wdWJsaWNLZXkoKSwgbnVtU2VyaWFsaXplZEFkZHJlc3NlcywgJ2FkZHJlc3NlcycpLFxuICAgIF0pLmRlY29kZShhY2NvdW50RGF0YS5zbGljZShMT09LVVBfVEFCTEVfTUVUQV9TSVpFKSk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgZGVhY3RpdmF0aW9uU2xvdDogbWV0YS5kZWFjdGl2YXRpb25TbG90LFxuICAgICAgbGFzdEV4dGVuZGVkU2xvdDogbWV0YS5sYXN0RXh0ZW5kZWRTbG90LFxuICAgICAgbGFzdEV4dGVuZGVkU2xvdFN0YXJ0SW5kZXg6IG1ldGEubGFzdEV4dGVuZGVkU3RhcnRJbmRleCxcbiAgICAgIGF1dGhvcml0eTpcbiAgICAgICAgbWV0YS5hdXRob3JpdHkubGVuZ3RoICE9PSAwXG4gICAgICAgICAgPyBuZXcgUHVibGljS2V5KG1ldGEuYXV0aG9yaXR5WzBdKVxuICAgICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgYWRkcmVzc2VzOiBhZGRyZXNzZXMubWFwKGFkZHJlc3MgPT4gbmV3IFB1YmxpY0tleShhZGRyZXNzKSksXG4gICAgfTtcbiAgfVxufVxuXG5jb25zdCBMb29rdXBUYWJsZU1ldGFMYXlvdXQgPSB7XG4gIGluZGV4OiAxLFxuICBsYXlvdXQ6IEJ1ZmZlckxheW91dC5zdHJ1Y3Q8e1xuICAgIHR5cGVJbmRleDogbnVtYmVyO1xuICAgIGRlYWN0aXZhdGlvblNsb3Q6IGJpZ2ludDtcbiAgICBsYXN0RXh0ZW5kZWRTbG90OiBudW1iZXI7XG4gICAgbGFzdEV4dGVuZGVkU3RhcnRJbmRleDogbnVtYmVyO1xuICAgIGF1dGhvcml0eTogQXJyYXk8VWludDhBcnJheT47XG4gIH0+KFtcbiAgICBCdWZmZXJMYXlvdXQudTMyKCd0eXBlSW5kZXgnKSxcbiAgICB1NjQoJ2RlYWN0aXZhdGlvblNsb3QnKSxcbiAgICBCdWZmZXJMYXlvdXQubnU2NCgnbGFzdEV4dGVuZGVkU2xvdCcpLFxuICAgIEJ1ZmZlckxheW91dC51OCgnbGFzdEV4dGVuZGVkU3RhcnRJbmRleCcpLFxuICAgIEJ1ZmZlckxheW91dC51OCgpLCAvLyBvcHRpb25cbiAgICBCdWZmZXJMYXlvdXQuc2VxKFxuICAgICAgTGF5b3V0LnB1YmxpY0tleSgpLFxuICAgICAgQnVmZmVyTGF5b3V0Lm9mZnNldChCdWZmZXJMYXlvdXQudTgoKSwgLTEpLFxuICAgICAgJ2F1dGhvcml0eScsXG4gICAgKSxcbiAgXSksXG59O1xuIiwgImNvbnN0IFVSTF9SRSA9IC9eW146XSs6XFwvXFwvKFteOltdK3xcXFtbXlxcXV0rXFxdKSg6XFxkKyk/KC4qKS9pO1xuXG5leHBvcnQgZnVuY3Rpb24gbWFrZVdlYnNvY2tldFVybChlbmRwb2ludDogc3RyaW5nKSB7XG4gIGNvbnN0IG1hdGNoZXMgPSBlbmRwb2ludC5tYXRjaChVUkxfUkUpO1xuICBpZiAobWF0Y2hlcyA9PSBudWxsKSB7XG4gICAgdGhyb3cgVHlwZUVycm9yKGBGYWlsZWQgdG8gdmFsaWRhdGUgZW5kcG9pbnQgVVJMIFxcYCR7ZW5kcG9pbnR9XFxgYCk7XG4gIH1cbiAgY29uc3QgW1xuICAgIF8sIC8vIGVzbGludC1kaXNhYmxlLWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gICAgaG9zdGlzaCxcbiAgICBwb3J0V2l0aENvbG9uLFxuICAgIHJlc3QsXG4gIF0gPSBtYXRjaGVzO1xuICBjb25zdCBwcm90b2NvbCA9IGVuZHBvaW50LnN0YXJ0c1dpdGgoJ2h0dHBzOicpID8gJ3dzczonIDogJ3dzOic7XG4gIGNvbnN0IHN0YXJ0UG9ydCA9XG4gICAgcG9ydFdpdGhDb2xvbiA9PSBudWxsID8gbnVsbCA6IHBhcnNlSW50KHBvcnRXaXRoQ29sb24uc2xpY2UoMSksIDEwKTtcbiAgY29uc3Qgd2Vic29ja2V0UG9ydCA9XG4gICAgLy8gT25seSBzaGlmdCB0aGUgcG9ydCBieSArMSBhcyBhIGNvbnZlbnRpb24gZm9yIHdzKHMpIG9ubHkgaWYgZ2l2ZW4gZW5kcG9pbnRcbiAgICAvLyBpcyBleHBsaWN0bHkgc3BlY2lmeWluZyB0aGUgZW5kcG9pbnQgcG9ydCAoSFRUUC1iYXNlZCBSUEMpLCBhc3N1bWluZ1xuICAgIC8vIHdlJ3JlIGRpcmVjdGx5IHRyeWluZyB0byBjb25uZWN0IHRvIHNvbGFuYS12YWxpZGF0b3IncyB3cyBsaXN0ZW5pbmcgcG9ydC5cbiAgICAvLyBXaGVuIHRoZSBlbmRwb2ludCBvbWl0cyB0aGUgcG9ydCwgd2UncmUgY29ubmVjdGluZyB0byB0aGUgcHJvdG9jb2xcbiAgICAvLyBkZWZhdWx0IHBvcnRzOiBodHRwKDgwKSBvciBodHRwcyg0NDMpIGFuZCBpdCdzIGFzc3VtZWQgd2UncmUgYmVoaW5kIGEgcmV2ZXJzZVxuICAgIC8vIHByb3h5IHdoaWNoIG1hbmFnZXMgV2ViU29ja2V0IHVwZ3JhZGUgYW5kIGJhY2tlbmQgcG9ydCByZWRpcmVjdGlvbi5cbiAgICBzdGFydFBvcnQgPT0gbnVsbCA/ICcnIDogYDoke3N0YXJ0UG9ydCArIDF9YDtcbiAgcmV0dXJuIGAke3Byb3RvY29sfS8vJHtob3N0aXNofSR7d2Vic29ja2V0UG9ydH0ke3Jlc3R9YDtcbn1cbiIsICJpbXBvcnQgSHR0cEtlZXBBbGl2ZUFnZW50LCB7XG4gIEh0dHBzQWdlbnQgYXMgSHR0cHNLZWVwQWxpdmVBZ2VudCxcbn0gZnJvbSAnYWdlbnRrZWVwYWxpdmUnO1xuaW1wb3J0IGJzNTggZnJvbSAnYnM1OCc7XG5pbXBvcnQge0J1ZmZlcn0gZnJvbSAnYnVmZmVyJztcbi8vIEB0cy1pZ25vcmVcbmltcG9ydCBmYXN0U3RhYmxlU3RyaW5naWZ5IGZyb20gJ2Zhc3Qtc3RhYmxlLXN0cmluZ2lmeSc7XG5pbXBvcnQgdHlwZSB7QWdlbnQgYXMgTm9kZUh0dHBBZ2VudH0gZnJvbSAnaHR0cCc7XG5pbXBvcnQge0FnZW50IGFzIE5vZGVIdHRwc0FnZW50fSBmcm9tICdodHRwcyc7XG5pbXBvcnQge1xuICB0eXBlIGFzIHBpY2ssXG4gIG51bWJlcixcbiAgc3RyaW5nLFxuICBhcnJheSxcbiAgYm9vbGVhbixcbiAgbGl0ZXJhbCxcbiAgcmVjb3JkLFxuICB1bmlvbixcbiAgb3B0aW9uYWwsXG4gIG51bGxhYmxlLFxuICBjb2VyY2UsXG4gIGluc3RhbmNlLFxuICBjcmVhdGUsXG4gIHR1cGxlLFxuICB1bmtub3duLFxuICBhbnksXG59IGZyb20gJ3N1cGVyc3RydWN0JztcbmltcG9ydCB0eXBlIHtTdHJ1Y3R9IGZyb20gJ3N1cGVyc3RydWN0JztcbmltcG9ydCBScGNDbGllbnQgZnJvbSAnamF5c29uL2xpYi9jbGllbnQvYnJvd3Nlcic7XG5pbXBvcnQge0pTT05SUENFcnJvcn0gZnJvbSAnamF5c29uJztcblxuaW1wb3J0IHtFcG9jaFNjaGVkdWxlfSBmcm9tICcuL2Vwb2NoLXNjaGVkdWxlJztcbmltcG9ydCB7U2VuZFRyYW5zYWN0aW9uRXJyb3IsIFNvbGFuYUpTT05SUENFcnJvcn0gZnJvbSAnLi9lcnJvcnMnO1xuaW1wb3J0IGZldGNoSW1wbCBmcm9tICcuL2ZldGNoLWltcGwnO1xuaW1wb3J0IHtEdXJhYmxlTm9uY2UsIE5vbmNlQWNjb3VudH0gZnJvbSAnLi9ub25jZS1hY2NvdW50JztcbmltcG9ydCB7UHVibGljS2V5fSBmcm9tICcuL3B1YmxpY2tleSc7XG5pbXBvcnQge1NpZ25lcn0gZnJvbSAnLi9rZXlwYWlyJztcbmltcG9ydCBScGNXZWJTb2NrZXRDbGllbnQgZnJvbSAnLi9ycGMtd2Vic29ja2V0JztcbmltcG9ydCB7TVNfUEVSX1NMT1R9IGZyb20gJy4vdGltaW5nJztcbmltcG9ydCB7XG4gIFRyYW5zYWN0aW9uLFxuICBUcmFuc2FjdGlvblN0YXR1cyxcbiAgVHJhbnNhY3Rpb25WZXJzaW9uLFxuICBWZXJzaW9uZWRUcmFuc2FjdGlvbixcbn0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQge01lc3NhZ2UsIE1lc3NhZ2VIZWFkZXIsIE1lc3NhZ2VWMCwgVmVyc2lvbmVkTWVzc2FnZX0gZnJvbSAnLi9tZXNzYWdlJztcbmltcG9ydCB7QWRkcmVzc0xvb2t1cFRhYmxlQWNjb3VudH0gZnJvbSAnLi9wcm9ncmFtcy9hZGRyZXNzLWxvb2t1cC10YWJsZS9zdGF0ZSc7XG5pbXBvcnQgYXNzZXJ0IGZyb20gJy4vdXRpbHMvYXNzZXJ0JztcbmltcG9ydCB7c2xlZXB9IGZyb20gJy4vdXRpbHMvc2xlZXAnO1xuaW1wb3J0IHt0b0J1ZmZlcn0gZnJvbSAnLi91dGlscy90by1idWZmZXInO1xuaW1wb3J0IHtcbiAgVHJhbnNhY3Rpb25FeHBpcmVkQmxvY2toZWlnaHRFeGNlZWRlZEVycm9yLFxuICBUcmFuc2FjdGlvbkV4cGlyZWROb25jZUludmFsaWRFcnJvcixcbiAgVHJhbnNhY3Rpb25FeHBpcmVkVGltZW91dEVycm9yLFxufSBmcm9tICcuL3RyYW5zYWN0aW9uL2V4cGlyeS1jdXN0b20tZXJyb3JzJztcbmltcG9ydCB7bWFrZVdlYnNvY2tldFVybH0gZnJvbSAnLi91dGlscy9tYWtlV2Vic29ja2V0VXJsJztcbmltcG9ydCB0eXBlIHtCbG9ja2hhc2h9IGZyb20gJy4vYmxvY2toYXNoJztcbmltcG9ydCB0eXBlIHtGZWVDYWxjdWxhdG9yfSBmcm9tICcuL2ZlZS1jYWxjdWxhdG9yJztcbmltcG9ydCB0eXBlIHtUcmFuc2FjdGlvblNpZ25hdHVyZX0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgdHlwZSB7Q29tcGlsZWRJbnN0cnVjdGlvbn0gZnJvbSAnLi9tZXNzYWdlJztcblxuY29uc3QgUHVibGljS2V5RnJvbVN0cmluZyA9IGNvZXJjZShcbiAgaW5zdGFuY2UoUHVibGljS2V5KSxcbiAgc3RyaW5nKCksXG4gIHZhbHVlID0+IG5ldyBQdWJsaWNLZXkodmFsdWUpLFxuKTtcblxuY29uc3QgUmF3QWNjb3VudERhdGFSZXN1bHQgPSB0dXBsZShbc3RyaW5nKCksIGxpdGVyYWwoJ2Jhc2U2NCcpXSk7XG5cbmNvbnN0IEJ1ZmZlckZyb21SYXdBY2NvdW50RGF0YSA9IGNvZXJjZShcbiAgaW5zdGFuY2UoQnVmZmVyKSxcbiAgUmF3QWNjb3VudERhdGFSZXN1bHQsXG4gIHZhbHVlID0+IEJ1ZmZlci5mcm9tKHZhbHVlWzBdLCAnYmFzZTY0JyksXG4pO1xuXG4vKipcbiAqIEF0dGVtcHQgdG8gdXNlIGEgcmVjZW50IGJsb2NraGFzaCBmb3IgdXAgdG8gMzAgc2Vjb25kc1xuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBjb25zdCBCTE9DS0hBU0hfQ0FDSEVfVElNRU9VVF9NUyA9IDMwICogMTAwMDtcblxuLyoqXG4gKiBIQUNLLlxuICogQ29waWVkIGZyb20gcnBjLXdlYnNvY2tldHMvZGlzdC9saWIvY2xpZW50LlxuICogT3RoZXJ3aXNlLCBgeWFybiBidWlsZGAgZmFpbHMgd2l0aDpcbiAqIGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL3N0ZXZlbHVzY2hlci9jMDU3ZWNhODFkNDc5ZWY3MDVjZGI1MzE2MmY5OTcxZFxuICovXG5pbnRlcmZhY2UgSVdTUmVxdWVzdFBhcmFtcyB7XG4gIFt4OiBzdHJpbmddOiBhbnk7XG4gIFt4OiBudW1iZXJdOiBhbnk7XG59XG5cbnR5cGUgQ2xpZW50U3Vic2NyaXB0aW9uSWQgPSBudW1iZXI7XG4vKiogQGludGVybmFsICovIHR5cGUgU2VydmVyU3Vic2NyaXB0aW9uSWQgPSBudW1iZXI7XG4vKiogQGludGVybmFsICovIHR5cGUgU3Vic2NyaXB0aW9uQ29uZmlnSGFzaCA9IHN0cmluZztcbi8qKiBAaW50ZXJuYWwgKi8gdHlwZSBTdWJzY3JpcHRpb25EaXNwb3NlRm4gPSAoKSA9PiBQcm9taXNlPHZvaWQ+O1xuLyoqIEBpbnRlcm5hbCAqLyB0eXBlIFN1YnNjcmlwdGlvblN0YXRlQ2hhbmdlQ2FsbGJhY2sgPSAoXG4gIG5leHRTdGF0ZTogU3RhdGVmdWxTdWJzY3JpcHRpb25bJ3N0YXRlJ10sXG4pID0+IHZvaWQ7XG4vKiogQGludGVybmFsICovIHR5cGUgU3Vic2NyaXB0aW9uU3RhdGVDaGFuZ2VEaXNwb3NlRm4gPSAoKSA9PiB2b2lkO1xuLyoqXG4gKiBAaW50ZXJuYWxcbiAqIEV2ZXJ5IHN1YnNjcmlwdGlvbiBjb250YWlucyB0aGUgYXJncyB1c2VkIHRvIG9wZW4gdGhlIHN1YnNjcmlwdGlvbiB3aXRoXG4gKiB0aGUgc2VydmVyLCBhbmQgYSBsaXN0IG9mIGNhbGxlcnMgaW50ZXJlc3RlZCBpbiBub3RpZmljYXRpb25zLlxuICovXG50eXBlIEJhc2VTdWJzY3JpcHRpb248VE1ldGhvZCA9IFN1YnNjcmlwdGlvbkNvbmZpZ1snbWV0aG9kJ10+ID0gUmVhZG9ubHk8e1xuICBhcmdzOiBJV1NSZXF1ZXN0UGFyYW1zO1xuICBjYWxsYmFja3M6IFNldDxFeHRyYWN0PFN1YnNjcmlwdGlvbkNvbmZpZywge21ldGhvZDogVE1ldGhvZH0+WydjYWxsYmFjayddPjtcbn0+O1xuLyoqXG4gKiBAaW50ZXJuYWxcbiAqIEEgc3Vic2NyaXB0aW9uIG1heSBiZSBpbiB2YXJpb3VzIHN0YXRlcyBvZiBjb25uZWN0ZWRuZXNzLiBPbmx5IHdoZW4gaXQgaXNcbiAqIGZ1bGx5IGNvbm5lY3RlZCB3aWxsIGl0IGhhdmUgYSBzZXJ2ZXIgc3Vic2NyaXB0aW9uIGlkIGFzc29jaWF0ZWQgd2l0aCBpdC5cbiAqIFRoaXMgaWQgY2FuIGJlIHJldHVybmVkIHRvIHRoZSBzZXJ2ZXIgdG8gdW5zdWJzY3JpYmUgdGhlIGNsaWVudCBlbnRpcmVseS5cbiAqL1xudHlwZSBTdGF0ZWZ1bFN1YnNjcmlwdGlvbiA9IFJlYWRvbmx5PFxuICAvLyBOZXcgc3Vic2NyaXB0aW9ucyB0aGF0IGhhdmUgbm90IHlldCBiZWVuXG4gIC8vIHNlbnQgdG8gdGhlIHNlcnZlciBzdGFydCBpbiB0aGlzIHN0YXRlLlxuICB8IHtcbiAgICAgIHN0YXRlOiAncGVuZGluZyc7XG4gICAgfVxuICAvLyBUaGVzZSBzdWJzY3JpcHRpb25zIGhhdmUgYmVlbiBzZW50IHRvIHRoZSBzZXJ2ZXJcbiAgLy8gYW5kIGFyZSB3YWl0aW5nIGZvciB0aGUgc2VydmVyIHRvIGFja25vd2xlZGdlIHRoZW0uXG4gIHwge1xuICAgICAgc3RhdGU6ICdzdWJzY3JpYmluZyc7XG4gICAgfVxuICAvLyBUaGVzZSBzdWJzY3JpcHRpb25zIGhhdmUgYmVlbiBhY2tub3dsZWRnZWQgYnkgdGhlXG4gIC8vIHNlcnZlciBhbmQgaGF2ZSBiZWVuIGFzc2lnbmVkIHNlcnZlciBzdWJzY3JpcHRpb24gaWRzLlxuICB8IHtcbiAgICAgIHNlcnZlclN1YnNjcmlwdGlvbklkOiBTZXJ2ZXJTdWJzY3JpcHRpb25JZDtcbiAgICAgIHN0YXRlOiAnc3Vic2NyaWJlZCc7XG4gICAgfVxuICAvLyBUaGVzZSBzdWJzY3JpcHRpb25zIGFyZSBpbnRlbmRlZCB0byBiZSB0b3JuIGRvd24gYW5kXG4gIC8vIGFyZSB3YWl0aW5nIG9uIGFuIGFja25vd2xlZGdlbWVudCBmcm9tIHRoZSBzZXJ2ZXIuXG4gIHwge1xuICAgICAgc2VydmVyU3Vic2NyaXB0aW9uSWQ6IFNlcnZlclN1YnNjcmlwdGlvbklkO1xuICAgICAgc3RhdGU6ICd1bnN1YnNjcmliaW5nJztcbiAgICB9XG4gIC8vIFRoZSByZXF1ZXN0IHRvIHRlYXIgZG93biB0aGVzZSBzdWJzY3JpcHRpb25zIGhhcyBiZWVuXG4gIC8vIGFja25vd2xlZGdlZCBieSB0aGUgc2VydmVyLiBUaGUgYHNlcnZlclN1YnNjcmlwdGlvbklkYFxuICAvLyBpcyB0aGUgaWQgb2YgdGhlIG5vdy1kZWFkIHN1YnNjcmlwdGlvbi5cbiAgfCB7XG4gICAgICBzZXJ2ZXJTdWJzY3JpcHRpb25JZDogU2VydmVyU3Vic2NyaXB0aW9uSWQ7XG4gICAgICBzdGF0ZTogJ3Vuc3Vic2NyaWJlZCc7XG4gICAgfVxuPjtcbi8qKlxuICogQSB0eXBlIHRoYXQgZW5jYXBzdWxhdGVzIGEgc3Vic2NyaXB0aW9uJ3MgUlBDIG1ldGhvZFxuICogbmFtZXMgYW5kIG5vdGlmaWNhdGlvbiAoY2FsbGJhY2spIHNpZ25hdHVyZS5cbiAqL1xudHlwZSBTdWJzY3JpcHRpb25Db25maWcgPSBSZWFkb25seTxcbiAgfCB7XG4gICAgICBjYWxsYmFjazogQWNjb3VudENoYW5nZUNhbGxiYWNrO1xuICAgICAgbWV0aG9kOiAnYWNjb3VudFN1YnNjcmliZSc7XG4gICAgICB1bnN1YnNjcmliZU1ldGhvZDogJ2FjY291bnRVbnN1YnNjcmliZSc7XG4gICAgfVxuICB8IHtcbiAgICAgIGNhbGxiYWNrOiBMb2dzQ2FsbGJhY2s7XG4gICAgICBtZXRob2Q6ICdsb2dzU3Vic2NyaWJlJztcbiAgICAgIHVuc3Vic2NyaWJlTWV0aG9kOiAnbG9nc1Vuc3Vic2NyaWJlJztcbiAgICB9XG4gIHwge1xuICAgICAgY2FsbGJhY2s6IFByb2dyYW1BY2NvdW50Q2hhbmdlQ2FsbGJhY2s7XG4gICAgICBtZXRob2Q6ICdwcm9ncmFtU3Vic2NyaWJlJztcbiAgICAgIHVuc3Vic2NyaWJlTWV0aG9kOiAncHJvZ3JhbVVuc3Vic2NyaWJlJztcbiAgICB9XG4gIHwge1xuICAgICAgY2FsbGJhY2s6IFJvb3RDaGFuZ2VDYWxsYmFjaztcbiAgICAgIG1ldGhvZDogJ3Jvb3RTdWJzY3JpYmUnO1xuICAgICAgdW5zdWJzY3JpYmVNZXRob2Q6ICdyb290VW5zdWJzY3JpYmUnO1xuICAgIH1cbiAgfCB7XG4gICAgICBjYWxsYmFjazogU2lnbmF0dXJlU3Vic2NyaXB0aW9uQ2FsbGJhY2s7XG4gICAgICBtZXRob2Q6ICdzaWduYXR1cmVTdWJzY3JpYmUnO1xuICAgICAgdW5zdWJzY3JpYmVNZXRob2Q6ICdzaWduYXR1cmVVbnN1YnNjcmliZSc7XG4gICAgfVxuICB8IHtcbiAgICAgIGNhbGxiYWNrOiBTbG90Q2hhbmdlQ2FsbGJhY2s7XG4gICAgICBtZXRob2Q6ICdzbG90U3Vic2NyaWJlJztcbiAgICAgIHVuc3Vic2NyaWJlTWV0aG9kOiAnc2xvdFVuc3Vic2NyaWJlJztcbiAgICB9XG4gIHwge1xuICAgICAgY2FsbGJhY2s6IFNsb3RVcGRhdGVDYWxsYmFjaztcbiAgICAgIG1ldGhvZDogJ3Nsb3RzVXBkYXRlc1N1YnNjcmliZSc7XG4gICAgICB1bnN1YnNjcmliZU1ldGhvZDogJ3Nsb3RzVXBkYXRlc1Vuc3Vic2NyaWJlJztcbiAgICB9XG4+O1xuLyoqXG4gKiBAaW50ZXJuYWxcbiAqIFV0aWxpdHkgdHlwZSB0aGF0IGtlZXBzIHRhZ2dlZCB1bmlvbnMgaW50YWN0IHdoaWxlIG9taXR0aW5nIHByb3BlcnRpZXMuXG4gKi9cbnR5cGUgRGlzdHJpYnV0aXZlT21pdDxULCBLIGV4dGVuZHMgUHJvcGVydHlLZXk+ID0gVCBleHRlbmRzIHVua25vd25cbiAgPyBPbWl0PFQsIEs+XG4gIDogbmV2ZXI7XG4vKipcbiAqIEBpbnRlcm5hbFxuICogVGhpcyB0eXBlIHJlcHJlc2VudHMgYSBzaW5nbGUgc3Vic2NyaWJhYmxlICd0b3BpYy4nIEl0J3MgbWFkZSB1cCBvZjpcbiAqXG4gKiAtIFRoZSBhcmdzIHVzZWQgdG8gb3BlbiB0aGUgc3Vic2NyaXB0aW9uIHdpdGggdGhlIHNlcnZlcixcbiAqIC0gVGhlIHN0YXRlIG9mIHRoZSBzdWJzY3JpcHRpb24sIGluIHRlcm1zIG9mIGl0cyBjb25uZWN0ZWRuZXNzLCBhbmRcbiAqIC0gVGhlIHNldCBvZiBjYWxsYmFja3MgdG8gY2FsbCB3aGVuIHRoZSBzZXJ2ZXIgcHVibGlzaGVzIG5vdGlmaWNhdGlvbnNcbiAqXG4gKiBUaGlzIHJlY29yZCBnZXRzIGluZGV4ZWQgYnkgYFN1YnNjcmlwdGlvbkNvbmZpZ0hhc2hgIGFuZCBpcyB1c2VkIHRvXG4gKiBzZXQgdXAgc3Vic2NyaXB0aW9ucywgZmFuIG91dCBub3RpZmljYXRpb25zLCBhbmQgdHJhY2sgc3Vic2NyaXB0aW9uIHN0YXRlLlxuICovXG50eXBlIFN1YnNjcmlwdGlvbiA9IEJhc2VTdWJzY3JpcHRpb24gJlxuICBTdGF0ZWZ1bFN1YnNjcmlwdGlvbiAmXG4gIERpc3RyaWJ1dGl2ZU9taXQ8U3Vic2NyaXB0aW9uQ29uZmlnLCAnY2FsbGJhY2snPjtcblxudHlwZSBScGNSZXF1ZXN0ID0gKG1ldGhvZE5hbWU6IHN0cmluZywgYXJnczogQXJyYXk8YW55PikgPT4gUHJvbWlzZTxhbnk+O1xuXG50eXBlIFJwY0JhdGNoUmVxdWVzdCA9IChyZXF1ZXN0czogUnBjUGFyYW1zW10pID0+IFByb21pc2U8YW55W10+O1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgdHlwZSBScGNQYXJhbXMgPSB7XG4gIG1ldGhvZE5hbWU6IHN0cmluZztcbiAgYXJnczogQXJyYXk8YW55Pjtcbn07XG5cbmV4cG9ydCB0eXBlIFRva2VuQWNjb3VudHNGaWx0ZXIgPVxuICB8IHtcbiAgICAgIG1pbnQ6IFB1YmxpY0tleTtcbiAgICB9XG4gIHwge1xuICAgICAgcHJvZ3JhbUlkOiBQdWJsaWNLZXk7XG4gICAgfTtcblxuLyoqXG4gKiBFeHRyYSBjb250ZXh0dWFsIGluZm9ybWF0aW9uIGZvciBSUEMgcmVzcG9uc2VzXG4gKi9cbmV4cG9ydCB0eXBlIENvbnRleHQgPSB7XG4gIHNsb3Q6IG51bWJlcjtcbn07XG5cbi8qKlxuICogT3B0aW9ucyBmb3Igc2VuZGluZyB0cmFuc2FjdGlvbnNcbiAqL1xuZXhwb3J0IHR5cGUgU2VuZE9wdGlvbnMgPSB7XG4gIC8qKiBkaXNhYmxlIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBzdGVwICovXG4gIHNraXBQcmVmbGlnaHQ/OiBib29sZWFuO1xuICAvKiogcHJlZmxpZ2h0IGNvbW1pdG1lbnQgbGV2ZWwgKi9cbiAgcHJlZmxpZ2h0Q29tbWl0bWVudD86IENvbW1pdG1lbnQ7XG4gIC8qKiBNYXhpbXVtIG51bWJlciBvZiB0aW1lcyBmb3IgdGhlIFJQQyBub2RlIHRvIHJldHJ5IHNlbmRpbmcgdGhlIHRyYW5zYWN0aW9uIHRvIHRoZSBsZWFkZXIuICovXG4gIG1heFJldHJpZXM/OiBudW1iZXI7XG4gIC8qKiBUaGUgbWluaW11bSBzbG90IHRoYXQgdGhlIHJlcXVlc3QgY2FuIGJlIGV2YWx1YXRlZCBhdCAqL1xuICBtaW5Db250ZXh0U2xvdD86IG51bWJlcjtcbn07XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgY29uZmlybWluZyB0cmFuc2FjdGlvbnNcbiAqL1xuZXhwb3J0IHR5cGUgQ29uZmlybU9wdGlvbnMgPSB7XG4gIC8qKiBkaXNhYmxlIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBzdGVwICovXG4gIHNraXBQcmVmbGlnaHQ/OiBib29sZWFuO1xuICAvKiogZGVzaXJlZCBjb21taXRtZW50IGxldmVsICovXG4gIGNvbW1pdG1lbnQ/OiBDb21taXRtZW50O1xuICAvKiogcHJlZmxpZ2h0IGNvbW1pdG1lbnQgbGV2ZWwgKi9cbiAgcHJlZmxpZ2h0Q29tbWl0bWVudD86IENvbW1pdG1lbnQ7XG4gIC8qKiBNYXhpbXVtIG51bWJlciBvZiB0aW1lcyBmb3IgdGhlIFJQQyBub2RlIHRvIHJldHJ5IHNlbmRpbmcgdGhlIHRyYW5zYWN0aW9uIHRvIHRoZSBsZWFkZXIuICovXG4gIG1heFJldHJpZXM/OiBudW1iZXI7XG4gIC8qKiBUaGUgbWluaW11bSBzbG90IHRoYXQgdGhlIHJlcXVlc3QgY2FuIGJlIGV2YWx1YXRlZCBhdCAqL1xuICBtaW5Db250ZXh0U2xvdD86IG51bWJlcjtcbn07XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgZ2V0Q29uZmlybWVkU2lnbmF0dXJlc0ZvckFkZHJlc3MyXG4gKi9cbmV4cG9ydCB0eXBlIENvbmZpcm1lZFNpZ25hdHVyZXNGb3JBZGRyZXNzMk9wdGlvbnMgPSB7XG4gIC8qKlxuICAgKiBTdGFydCBzZWFyY2hpbmcgYmFja3dhcmRzIGZyb20gdGhpcyB0cmFuc2FjdGlvbiBzaWduYXR1cmUuXG4gICAqIEByZW1hcmsgSWYgbm90IHByb3ZpZGVkIHRoZSBzZWFyY2ggc3RhcnRzIGZyb20gdGhlIGhpZ2hlc3QgbWF4IGNvbmZpcm1lZCBibG9jay5cbiAgICovXG4gIGJlZm9yZT86IFRyYW5zYWN0aW9uU2lnbmF0dXJlO1xuICAvKiogU2VhcmNoIHVudGlsIHRoaXMgdHJhbnNhY3Rpb24gc2lnbmF0dXJlIGlzIHJlYWNoZWQsIGlmIGZvdW5kIGJlZm9yZSBgbGltaXRgLiAqL1xuICB1bnRpbD86IFRyYW5zYWN0aW9uU2lnbmF0dXJlO1xuICAvKiogTWF4aW11bSB0cmFuc2FjdGlvbiBzaWduYXR1cmVzIHRvIHJldHVybiAoYmV0d2VlbiAxIGFuZCAxLDAwMCwgZGVmYXVsdDogMSwwMDApLiAqL1xuICBsaW1pdD86IG51bWJlcjtcbn07XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgZ2V0U2lnbmF0dXJlc0ZvckFkZHJlc3NcbiAqL1xuZXhwb3J0IHR5cGUgU2lnbmF0dXJlc0ZvckFkZHJlc3NPcHRpb25zID0ge1xuICAvKipcbiAgICogU3RhcnQgc2VhcmNoaW5nIGJhY2t3YXJkcyBmcm9tIHRoaXMgdHJhbnNhY3Rpb24gc2lnbmF0dXJlLlxuICAgKiBAcmVtYXJrIElmIG5vdCBwcm92aWRlZCB0aGUgc2VhcmNoIHN0YXJ0cyBmcm9tIHRoZSBoaWdoZXN0IG1heCBjb25maXJtZWQgYmxvY2suXG4gICAqL1xuICBiZWZvcmU/OiBUcmFuc2FjdGlvblNpZ25hdHVyZTtcbiAgLyoqIFNlYXJjaCB1bnRpbCB0aGlzIHRyYW5zYWN0aW9uIHNpZ25hdHVyZSBpcyByZWFjaGVkLCBpZiBmb3VuZCBiZWZvcmUgYGxpbWl0YC4gKi9cbiAgdW50aWw/OiBUcmFuc2FjdGlvblNpZ25hdHVyZTtcbiAgLyoqIE1heGltdW0gdHJhbnNhY3Rpb24gc2lnbmF0dXJlcyB0byByZXR1cm4gKGJldHdlZW4gMSBhbmQgMSwwMDAsIGRlZmF1bHQ6IDEsMDAwKS4gKi9cbiAgbGltaXQ/OiBudW1iZXI7XG4gIC8qKiBUaGUgbWluaW11bSBzbG90IHRoYXQgdGhlIHJlcXVlc3QgY2FuIGJlIGV2YWx1YXRlZCBhdCAqL1xuICBtaW5Db250ZXh0U2xvdD86IG51bWJlcjtcbn07XG5cbi8qKlxuICogUlBDIFJlc3BvbnNlIHdpdGggZXh0cmEgY29udGV4dHVhbCBpbmZvcm1hdGlvblxuICovXG5leHBvcnQgdHlwZSBScGNSZXNwb25zZUFuZENvbnRleHQ8VD4gPSB7XG4gIC8qKiByZXNwb25zZSBjb250ZXh0ICovXG4gIGNvbnRleHQ6IENvbnRleHQ7XG4gIC8qKiByZXNwb25zZSB2YWx1ZSAqL1xuICB2YWx1ZTogVDtcbn07XG5cbmV4cG9ydCB0eXBlIEJsb2NraGFzaFdpdGhFeHBpcnlCbG9ja0hlaWdodCA9IFJlYWRvbmx5PHtcbiAgYmxvY2toYXNoOiBCbG9ja2hhc2g7XG4gIGxhc3RWYWxpZEJsb2NrSGVpZ2h0OiBudW1iZXI7XG59PjtcblxuLyoqXG4gKiBBIHN0cmF0ZWd5IGZvciBjb25maXJtaW5nIHRyYW5zYWN0aW9ucyB0aGF0IHVzZXMgdGhlIGxhc3QgdmFsaWRcbiAqIGJsb2NrIGhlaWdodCBmb3IgYSBnaXZlbiBibG9ja2hhc2ggdG8gY2hlY2sgZm9yIHRyYW5zYWN0aW9uIGV4cGlyYXRpb24uXG4gKi9cbmV4cG9ydCB0eXBlIEJsb2NraGVpZ2h0QmFzZWRUcmFuc2FjdGlvbkNvbmZpcm1hdGlvblN0cmF0ZWd5ID1cbiAgQmFzZVRyYW5zYWN0aW9uQ29uZmlybWF0aW9uU3RyYXRlZ3kgJiBCbG9ja2hhc2hXaXRoRXhwaXJ5QmxvY2tIZWlnaHQ7XG5cbi8qKlxuICogQSBzdHJhdGVneSBmb3IgY29uZmlybWluZyBkdXJhYmxlIG5vbmNlIHRyYW5zYWN0aW9ucy5cbiAqL1xuZXhwb3J0IHR5cGUgRHVyYWJsZU5vbmNlVHJhbnNhY3Rpb25Db25maXJtYXRpb25TdHJhdGVneSA9XG4gIEJhc2VUcmFuc2FjdGlvbkNvbmZpcm1hdGlvblN0cmF0ZWd5ICYge1xuICAgIC8qKlxuICAgICAqIFRoZSBsb3dlc3Qgc2xvdCBhdCB3aGljaCB0byBmZXRjaCB0aGUgbm9uY2UgdmFsdWUgZnJvbSB0aGVcbiAgICAgKiBub25jZSBhY2NvdW50LiBUaGlzIHNob3VsZCBiZSBubyBsb3dlciB0aGFuIHRoZSBzbG90IGF0XG4gICAgICogd2hpY2ggdGhlIGxhc3Qta25vd24gdmFsdWUgb2YgdGhlIG5vbmNlIHdhcyBmZXRjaGVkLlxuICAgICAqL1xuICAgIG1pbkNvbnRleHRTbG90OiBudW1iZXI7XG4gICAgLyoqXG4gICAgICogVGhlIGFjY291bnQgd2hlcmUgdGhlIGN1cnJlbnQgdmFsdWUgb2YgdGhlIG5vbmNlIGlzIHN0b3JlZC5cbiAgICAgKi9cbiAgICBub25jZUFjY291bnRQdWJrZXk6IFB1YmxpY0tleTtcbiAgICAvKipcbiAgICAgKiBUaGUgbm9uY2UgdmFsdWUgdGhhdCB3YXMgdXNlZCB0byBzaWduIHRoZSB0cmFuc2FjdGlvblxuICAgICAqIGZvciB3aGljaCBjb25maXJtYXRpb24gaXMgYmVpbmcgc291Z2h0LlxuICAgICAqL1xuICAgIG5vbmNlVmFsdWU6IER1cmFibGVOb25jZTtcbiAgfTtcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIHNoYXJlZCBieSBhbGwgdHJhbnNhY3Rpb24gY29uZmlybWF0aW9uIHN0cmF0ZWdpZXNcbiAqL1xuZXhwb3J0IHR5cGUgQmFzZVRyYW5zYWN0aW9uQ29uZmlybWF0aW9uU3RyYXRlZ3kgPSBSZWFkb25seTx7XG4gIC8qKiBBIHNpZ25hbCB0aGF0LCB3aGVuIGFib3J0ZWQsIGNhbmNlbHMgYW55IG91dHN0YW5kaW5nIHRyYW5zYWN0aW9uIGNvbmZpcm1hdGlvbiBvcGVyYXRpb25zICovXG4gIGFib3J0U2lnbmFsPzogQWJvcnRTaWduYWw7XG4gIHNpZ25hdHVyZTogVHJhbnNhY3Rpb25TaWduYXR1cmU7XG59PjtcblxuLyoqXG4gKiBUaGlzIHR5cGUgcmVwcmVzZW50cyBhbGwgdHJhbnNhY3Rpb24gY29uZmlybWF0aW9uIHN0cmF0ZWdpZXNcbiAqL1xuZXhwb3J0IHR5cGUgVHJhbnNhY3Rpb25Db25maXJtYXRpb25TdHJhdGVneSA9XG4gIHwgQmxvY2toZWlnaHRCYXNlZFRyYW5zYWN0aW9uQ29uZmlybWF0aW9uU3RyYXRlZ3lcbiAgfCBEdXJhYmxlTm9uY2VUcmFuc2FjdGlvbkNvbmZpcm1hdGlvblN0cmF0ZWd5O1xuXG4vKiBAaW50ZXJuYWwgKi9cbmZ1bmN0aW9uIGFzc2VydEVuZHBvaW50VXJsKHB1dGF0aXZlVXJsOiBzdHJpbmcpIHtcbiAgaWYgKC9eaHR0cHM/Oi8udGVzdChwdXRhdGl2ZVVybCkgPT09IGZhbHNlKSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcignRW5kcG9pbnQgVVJMIG11c3Qgc3RhcnQgd2l0aCBgaHR0cDpgIG9yIGBodHRwczpgLicpO1xuICB9XG4gIHJldHVybiBwdXRhdGl2ZVVybDtcbn1cblxuLyoqIEBpbnRlcm5hbCAqL1xuZnVuY3Rpb24gZXh0cmFjdENvbW1pdG1lbnRGcm9tQ29uZmlnPFRDb25maWc+KFxuICBjb21taXRtZW50T3JDb25maWc/OiBDb21taXRtZW50IHwgKHtjb21taXRtZW50PzogQ29tbWl0bWVudH0gJiBUQ29uZmlnKSxcbikge1xuICBsZXQgY29tbWl0bWVudDogQ29tbWl0bWVudCB8IHVuZGVmaW5lZDtcbiAgbGV0IGNvbmZpZzogT21pdDxUQ29uZmlnLCAnY29tbWl0bWVudCc+IHwgdW5kZWZpbmVkO1xuICBpZiAodHlwZW9mIGNvbW1pdG1lbnRPckNvbmZpZyA9PT0gJ3N0cmluZycpIHtcbiAgICBjb21taXRtZW50ID0gY29tbWl0bWVudE9yQ29uZmlnO1xuICB9IGVsc2UgaWYgKGNvbW1pdG1lbnRPckNvbmZpZykge1xuICAgIGNvbnN0IHtjb21taXRtZW50OiBzcGVjaWZpZWRDb21taXRtZW50LCAuLi5zcGVjaWZpZWRDb25maWd9ID1cbiAgICAgIGNvbW1pdG1lbnRPckNvbmZpZztcbiAgICBjb21taXRtZW50ID0gc3BlY2lmaWVkQ29tbWl0bWVudDtcbiAgICBjb25maWcgPSBzcGVjaWZpZWRDb25maWc7XG4gIH1cbiAgcmV0dXJuIHtjb21taXRtZW50LCBjb25maWd9O1xufVxuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5mdW5jdGlvbiBjcmVhdGVScGNSZXN1bHQ8VCwgVT4ocmVzdWx0OiBTdHJ1Y3Q8VCwgVT4pIHtcbiAgcmV0dXJuIHVuaW9uKFtcbiAgICBwaWNrKHtcbiAgICAgIGpzb25ycGM6IGxpdGVyYWwoJzIuMCcpLFxuICAgICAgaWQ6IHN0cmluZygpLFxuICAgICAgcmVzdWx0LFxuICAgIH0pLFxuICAgIHBpY2soe1xuICAgICAganNvbnJwYzogbGl0ZXJhbCgnMi4wJyksXG4gICAgICBpZDogc3RyaW5nKCksXG4gICAgICBlcnJvcjogcGljayh7XG4gICAgICAgIGNvZGU6IHVua25vd24oKSxcbiAgICAgICAgbWVzc2FnZTogc3RyaW5nKCksXG4gICAgICAgIGRhdGE6IG9wdGlvbmFsKGFueSgpKSxcbiAgICAgIH0pLFxuICAgIH0pLFxuICBdKTtcbn1cblxuY29uc3QgVW5rbm93blJwY1Jlc3VsdCA9IGNyZWF0ZVJwY1Jlc3VsdCh1bmtub3duKCkpO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5mdW5jdGlvbiBqc29uUnBjUmVzdWx0PFQsIFU+KHNjaGVtYTogU3RydWN0PFQsIFU+KSB7XG4gIHJldHVybiBjb2VyY2UoY3JlYXRlUnBjUmVzdWx0KHNjaGVtYSksIFVua25vd25ScGNSZXN1bHQsIHZhbHVlID0+IHtcbiAgICBpZiAoJ2Vycm9yJyBpbiB2YWx1ZSkge1xuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi52YWx1ZSxcbiAgICAgICAgcmVzdWx0OiBjcmVhdGUodmFsdWUucmVzdWx0LCBzY2hlbWEpLFxuICAgICAgfTtcbiAgICB9XG4gIH0pO1xufVxuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5mdW5jdGlvbiBqc29uUnBjUmVzdWx0QW5kQ29udGV4dDxULCBVPih2YWx1ZTogU3RydWN0PFQsIFU+KSB7XG4gIHJldHVybiBqc29uUnBjUmVzdWx0KFxuICAgIHBpY2soe1xuICAgICAgY29udGV4dDogcGljayh7XG4gICAgICAgIHNsb3Q6IG51bWJlcigpLFxuICAgICAgfSksXG4gICAgICB2YWx1ZSxcbiAgICB9KSxcbiAgKTtcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuZnVuY3Rpb24gbm90aWZpY2F0aW9uUmVzdWx0QW5kQ29udGV4dDxULCBVPih2YWx1ZTogU3RydWN0PFQsIFU+KSB7XG4gIHJldHVybiBwaWNrKHtcbiAgICBjb250ZXh0OiBwaWNrKHtcbiAgICAgIHNsb3Q6IG51bWJlcigpLFxuICAgIH0pLFxuICAgIHZhbHVlLFxuICB9KTtcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuZnVuY3Rpb24gdmVyc2lvbmVkTWVzc2FnZUZyb21SZXNwb25zZShcbiAgdmVyc2lvbjogVHJhbnNhY3Rpb25WZXJzaW9uIHwgdW5kZWZpbmVkLFxuICByZXNwb25zZTogTWVzc2FnZVJlc3BvbnNlLFxuKTogVmVyc2lvbmVkTWVzc2FnZSB7XG4gIGlmICh2ZXJzaW9uID09PSAwKSB7XG4gICAgcmV0dXJuIG5ldyBNZXNzYWdlVjAoe1xuICAgICAgaGVhZGVyOiByZXNwb25zZS5oZWFkZXIsXG4gICAgICBzdGF0aWNBY2NvdW50S2V5czogcmVzcG9uc2UuYWNjb3VudEtleXMubWFwKFxuICAgICAgICBhY2NvdW50S2V5ID0+IG5ldyBQdWJsaWNLZXkoYWNjb3VudEtleSksXG4gICAgICApLFxuICAgICAgcmVjZW50QmxvY2toYXNoOiByZXNwb25zZS5yZWNlbnRCbG9ja2hhc2gsXG4gICAgICBjb21waWxlZEluc3RydWN0aW9uczogcmVzcG9uc2UuaW5zdHJ1Y3Rpb25zLm1hcChpeCA9PiAoe1xuICAgICAgICBwcm9ncmFtSWRJbmRleDogaXgucHJvZ3JhbUlkSW5kZXgsXG4gICAgICAgIGFjY291bnRLZXlJbmRleGVzOiBpeC5hY2NvdW50cyxcbiAgICAgICAgZGF0YTogYnM1OC5kZWNvZGUoaXguZGF0YSksXG4gICAgICB9KSksXG4gICAgICBhZGRyZXNzVGFibGVMb29rdXBzOiByZXNwb25zZS5hZGRyZXNzVGFibGVMb29rdXBzISxcbiAgICB9KTtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gbmV3IE1lc3NhZ2UocmVzcG9uc2UpO1xuICB9XG59XG5cbi8qKlxuICogVGhlIGxldmVsIG9mIGNvbW1pdG1lbnQgZGVzaXJlZCB3aGVuIHF1ZXJ5aW5nIHN0YXRlXG4gKiA8cHJlPlxuICogICAncHJvY2Vzc2VkJzogUXVlcnkgdGhlIG1vc3QgcmVjZW50IGJsb2NrIHdoaWNoIGhhcyByZWFjaGVkIDEgY29uZmlybWF0aW9uIGJ5IHRoZSBjb25uZWN0ZWQgbm9kZVxuICogICAnY29uZmlybWVkJzogUXVlcnkgdGhlIG1vc3QgcmVjZW50IGJsb2NrIHdoaWNoIGhhcyByZWFjaGVkIDEgY29uZmlybWF0aW9uIGJ5IHRoZSBjbHVzdGVyXG4gKiAgICdmaW5hbGl6ZWQnOiBRdWVyeSB0aGUgbW9zdCByZWNlbnQgYmxvY2sgd2hpY2ggaGFzIGJlZW4gZmluYWxpemVkIGJ5IHRoZSBjbHVzdGVyXG4gKiA8L3ByZT5cbiAqL1xuZXhwb3J0IHR5cGUgQ29tbWl0bWVudCA9XG4gIHwgJ3Byb2Nlc3NlZCdcbiAgfCAnY29uZmlybWVkJ1xuICB8ICdmaW5hbGl6ZWQnXG4gIHwgJ3JlY2VudCcgLy8gRGVwcmVjYXRlZCBhcyBvZiB2MS41LjVcbiAgfCAnc2luZ2xlJyAvLyBEZXByZWNhdGVkIGFzIG9mIHYxLjUuNVxuICB8ICdzaW5nbGVHb3NzaXAnIC8vIERlcHJlY2F0ZWQgYXMgb2YgdjEuNS41XG4gIHwgJ3Jvb3QnIC8vIERlcHJlY2F0ZWQgYXMgb2YgdjEuNS41XG4gIHwgJ21heCc7IC8vIERlcHJlY2F0ZWQgYXMgb2YgdjEuNS41XG5cbi8qKlxuICogQSBzdWJzZXQgb2YgQ29tbWl0bWVudCBsZXZlbHMsIHdoaWNoIGFyZSBhdCBsZWFzdCBvcHRpbWlzdGljYWxseSBjb25maXJtZWRcbiAqIDxwcmU+XG4gKiAgICdjb25maXJtZWQnOiBRdWVyeSB0aGUgbW9zdCByZWNlbnQgYmxvY2sgd2hpY2ggaGFzIHJlYWNoZWQgMSBjb25maXJtYXRpb24gYnkgdGhlIGNsdXN0ZXJcbiAqICAgJ2ZpbmFsaXplZCc6IFF1ZXJ5IHRoZSBtb3N0IHJlY2VudCBibG9jayB3aGljaCBoYXMgYmVlbiBmaW5hbGl6ZWQgYnkgdGhlIGNsdXN0ZXJcbiAqIDwvcHJlPlxuICovXG5leHBvcnQgdHlwZSBGaW5hbGl0eSA9ICdjb25maXJtZWQnIHwgJ2ZpbmFsaXplZCc7XG5cbi8qKlxuICogRmlsdGVyIGZvciBsYXJnZXN0IGFjY291bnRzIHF1ZXJ5XG4gKiA8cHJlPlxuICogICAnY2lyY3VsYXRpbmcnOiAgICBSZXR1cm4gdGhlIGxhcmdlc3QgYWNjb3VudHMgdGhhdCBhcmUgcGFydCBvZiB0aGUgY2lyY3VsYXRpbmcgc3VwcGx5XG4gKiAgICdub25DaXJjdWxhdGluZyc6IFJldHVybiB0aGUgbGFyZ2VzdCBhY2NvdW50cyB0aGF0IGFyZSBub3QgcGFydCBvZiB0aGUgY2lyY3VsYXRpbmcgc3VwcGx5XG4gKiA8L3ByZT5cbiAqL1xuZXhwb3J0IHR5cGUgTGFyZ2VzdEFjY291bnRzRmlsdGVyID0gJ2NpcmN1bGF0aW5nJyB8ICdub25DaXJjdWxhdGluZyc7XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBvYmplY3QgZm9yIGNoYW5naW5nIGBnZXRBY2NvdW50SW5mb2AgcXVlcnkgYmVoYXZpb3JcbiAqL1xuZXhwb3J0IHR5cGUgR2V0QWNjb3VudEluZm9Db25maWcgPSB7XG4gIC8qKiBUaGUgbGV2ZWwgb2YgY29tbWl0bWVudCBkZXNpcmVkICovXG4gIGNvbW1pdG1lbnQ/OiBDb21taXRtZW50O1xuICAvKiogVGhlIG1pbmltdW0gc2xvdCB0aGF0IHRoZSByZXF1ZXN0IGNhbiBiZSBldmFsdWF0ZWQgYXQgKi9cbiAgbWluQ29udGV4dFNsb3Q/OiBudW1iZXI7XG4gIC8qKiBPcHRpb25hbCBkYXRhIHNsaWNlIHRvIGxpbWl0IHRoZSByZXR1cm5lZCBhY2NvdW50IGRhdGEgKi9cbiAgZGF0YVNsaWNlPzogRGF0YVNsaWNlO1xufTtcblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIG9iamVjdCBmb3IgY2hhbmdpbmcgYGdldEJhbGFuY2VgIHF1ZXJ5IGJlaGF2aW9yXG4gKi9cbmV4cG9ydCB0eXBlIEdldEJhbGFuY2VDb25maWcgPSB7XG4gIC8qKiBUaGUgbGV2ZWwgb2YgY29tbWl0bWVudCBkZXNpcmVkICovXG4gIGNvbW1pdG1lbnQ/OiBDb21taXRtZW50O1xuICAvKiogVGhlIG1pbmltdW0gc2xvdCB0aGF0IHRoZSByZXF1ZXN0IGNhbiBiZSBldmFsdWF0ZWQgYXQgKi9cbiAgbWluQ29udGV4dFNsb3Q/OiBudW1iZXI7XG59O1xuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gb2JqZWN0IGZvciBjaGFuZ2luZyBgZ2V0QmxvY2tgIHF1ZXJ5IGJlaGF2aW9yXG4gKi9cbmV4cG9ydCB0eXBlIEdldEJsb2NrQ29uZmlnID0ge1xuICAvKiogVGhlIGxldmVsIG9mIGZpbmFsaXR5IGRlc2lyZWQgKi9cbiAgY29tbWl0bWVudD86IEZpbmFsaXR5O1xuICAvKipcbiAgICogV2hldGhlciB0byBwb3B1bGF0ZSB0aGUgcmV3YXJkcyBhcnJheS4gSWYgcGFyYW1ldGVyIG5vdCBwcm92aWRlZCwgdGhlIGRlZmF1bHQgaW5jbHVkZXMgcmV3YXJkcy5cbiAgICovXG4gIHJld2FyZHM/OiBib29sZWFuO1xuICAvKipcbiAgICogTGV2ZWwgb2YgdHJhbnNhY3Rpb24gZGV0YWlsIHRvIHJldHVybiwgZWl0aGVyIFwiZnVsbFwiLCBcImFjY291bnRzXCIsIFwic2lnbmF0dXJlc1wiLCBvciBcIm5vbmVcIi4gSWZcbiAgICogcGFyYW1ldGVyIG5vdCBwcm92aWRlZCwgdGhlIGRlZmF1bHQgZGV0YWlsIGxldmVsIGlzIFwiZnVsbFwiLiBJZiBcImFjY291bnRzXCIgYXJlIHJlcXVlc3RlZCxcbiAgICogdHJhbnNhY3Rpb24gZGV0YWlscyBvbmx5IGluY2x1ZGUgc2lnbmF0dXJlcyBhbmQgYW4gYW5ub3RhdGVkIGxpc3Qgb2YgYWNjb3VudHMgaW4gZWFjaFxuICAgKiB0cmFuc2FjdGlvbi4gVHJhbnNhY3Rpb24gbWV0YWRhdGEgaXMgbGltaXRlZCB0byBvbmx5OiBmZWUsIGVyciwgcHJlX2JhbGFuY2VzLCBwb3N0X2JhbGFuY2VzLFxuICAgKiBwcmVfdG9rZW5fYmFsYW5jZXMsIGFuZCBwb3N0X3Rva2VuX2JhbGFuY2VzLlxuICAgKi9cbiAgdHJhbnNhY3Rpb25EZXRhaWxzPzogJ2FjY291bnRzJyB8ICdmdWxsJyB8ICdub25lJyB8ICdzaWduYXR1cmVzJztcbn07XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBvYmplY3QgZm9yIGNoYW5naW5nIGBnZXRCbG9ja2AgcXVlcnkgYmVoYXZpb3JcbiAqL1xuZXhwb3J0IHR5cGUgR2V0VmVyc2lvbmVkQmxvY2tDb25maWcgPSB7XG4gIC8qKiBUaGUgbGV2ZWwgb2YgZmluYWxpdHkgZGVzaXJlZCAqL1xuICBjb21taXRtZW50PzogRmluYWxpdHk7XG4gIC8qKiBUaGUgbWF4IHRyYW5zYWN0aW9uIHZlcnNpb24gdG8gcmV0dXJuIGluIHJlc3BvbnNlcy4gSWYgdGhlIHJlcXVlc3RlZCB0cmFuc2FjdGlvbiBpcyBhIGhpZ2hlciB2ZXJzaW9uLCBhbiBlcnJvciB3aWxsIGJlIHJldHVybmVkICovXG4gIG1heFN1cHBvcnRlZFRyYW5zYWN0aW9uVmVyc2lvbj86IG51bWJlcjtcbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gcG9wdWxhdGUgdGhlIHJld2FyZHMgYXJyYXkuIElmIHBhcmFtZXRlciBub3QgcHJvdmlkZWQsIHRoZSBkZWZhdWx0IGluY2x1ZGVzIHJld2FyZHMuXG4gICAqL1xuICByZXdhcmRzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIExldmVsIG9mIHRyYW5zYWN0aW9uIGRldGFpbCB0byByZXR1cm4sIGVpdGhlciBcImZ1bGxcIiwgXCJhY2NvdW50c1wiLCBcInNpZ25hdHVyZXNcIiwgb3IgXCJub25lXCIuIElmXG4gICAqIHBhcmFtZXRlciBub3QgcHJvdmlkZWQsIHRoZSBkZWZhdWx0IGRldGFpbCBsZXZlbCBpcyBcImZ1bGxcIi4gSWYgXCJhY2NvdW50c1wiIGFyZSByZXF1ZXN0ZWQsXG4gICAqIHRyYW5zYWN0aW9uIGRldGFpbHMgb25seSBpbmNsdWRlIHNpZ25hdHVyZXMgYW5kIGFuIGFubm90YXRlZCBsaXN0IG9mIGFjY291bnRzIGluIGVhY2hcbiAgICogdHJhbnNhY3Rpb24uIFRyYW5zYWN0aW9uIG1ldGFkYXRhIGlzIGxpbWl0ZWQgdG8gb25seTogZmVlLCBlcnIsIHByZV9iYWxhbmNlcywgcG9zdF9iYWxhbmNlcyxcbiAgICogcHJlX3Rva2VuX2JhbGFuY2VzLCBhbmQgcG9zdF90b2tlbl9iYWxhbmNlcy5cbiAgICovXG4gIHRyYW5zYWN0aW9uRGV0YWlscz86ICdhY2NvdW50cycgfCAnZnVsbCcgfCAnbm9uZScgfCAnc2lnbmF0dXJlcyc7XG59O1xuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gb2JqZWN0IGZvciBjaGFuZ2luZyBgZ2V0U3Rha2VNaW5pbXVtRGVsZWdhdGlvbmAgcXVlcnkgYmVoYXZpb3JcbiAqL1xuZXhwb3J0IHR5cGUgR2V0U3Rha2VNaW5pbXVtRGVsZWdhdGlvbkNvbmZpZyA9IHtcbiAgLyoqIFRoZSBsZXZlbCBvZiBjb21taXRtZW50IGRlc2lyZWQgKi9cbiAgY29tbWl0bWVudD86IENvbW1pdG1lbnQ7XG59O1xuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gb2JqZWN0IGZvciBjaGFuZ2luZyBgZ2V0QmxvY2tIZWlnaHRgIHF1ZXJ5IGJlaGF2aW9yXG4gKi9cbmV4cG9ydCB0eXBlIEdldEJsb2NrSGVpZ2h0Q29uZmlnID0ge1xuICAvKiogVGhlIGxldmVsIG9mIGNvbW1pdG1lbnQgZGVzaXJlZCAqL1xuICBjb21taXRtZW50PzogQ29tbWl0bWVudDtcbiAgLyoqIFRoZSBtaW5pbXVtIHNsb3QgdGhhdCB0aGUgcmVxdWVzdCBjYW4gYmUgZXZhbHVhdGVkIGF0ICovXG4gIG1pbkNvbnRleHRTbG90PzogbnVtYmVyO1xufTtcblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIG9iamVjdCBmb3IgY2hhbmdpbmcgYGdldEVwb2NoSW5mb2AgcXVlcnkgYmVoYXZpb3JcbiAqL1xuZXhwb3J0IHR5cGUgR2V0RXBvY2hJbmZvQ29uZmlnID0ge1xuICAvKiogVGhlIGxldmVsIG9mIGNvbW1pdG1lbnQgZGVzaXJlZCAqL1xuICBjb21taXRtZW50PzogQ29tbWl0bWVudDtcbiAgLyoqIFRoZSBtaW5pbXVtIHNsb3QgdGhhdCB0aGUgcmVxdWVzdCBjYW4gYmUgZXZhbHVhdGVkIGF0ICovXG4gIG1pbkNvbnRleHRTbG90PzogbnVtYmVyO1xufTtcblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIG9iamVjdCBmb3IgY2hhbmdpbmcgYGdldEluZmxhdGlvblJld2FyZGAgcXVlcnkgYmVoYXZpb3JcbiAqL1xuZXhwb3J0IHR5cGUgR2V0SW5mbGF0aW9uUmV3YXJkQ29uZmlnID0ge1xuICAvKiogVGhlIGxldmVsIG9mIGNvbW1pdG1lbnQgZGVzaXJlZCAqL1xuICBjb21taXRtZW50PzogQ29tbWl0bWVudDtcbiAgLyoqIEFuIGVwb2NoIGZvciB3aGljaCB0aGUgcmV3YXJkIG9jY3Vycy4gSWYgb21pdHRlZCwgdGhlIHByZXZpb3VzIGVwb2NoIHdpbGwgYmUgdXNlZCAqL1xuICBlcG9jaD86IG51bWJlcjtcbiAgLyoqIFRoZSBtaW5pbXVtIHNsb3QgdGhhdCB0aGUgcmVxdWVzdCBjYW4gYmUgZXZhbHVhdGVkIGF0ICovXG4gIG1pbkNvbnRleHRTbG90PzogbnVtYmVyO1xufTtcblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIG9iamVjdCBmb3IgY2hhbmdpbmcgYGdldExhdGVzdEJsb2NraGFzaGAgcXVlcnkgYmVoYXZpb3JcbiAqL1xuZXhwb3J0IHR5cGUgR2V0TGF0ZXN0QmxvY2toYXNoQ29uZmlnID0ge1xuICAvKiogVGhlIGxldmVsIG9mIGNvbW1pdG1lbnQgZGVzaXJlZCAqL1xuICBjb21taXRtZW50PzogQ29tbWl0bWVudDtcbiAgLyoqIFRoZSBtaW5pbXVtIHNsb3QgdGhhdCB0aGUgcmVxdWVzdCBjYW4gYmUgZXZhbHVhdGVkIGF0ICovXG4gIG1pbkNvbnRleHRTbG90PzogbnVtYmVyO1xufTtcblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIG9iamVjdCBmb3IgY2hhbmdpbmcgYGlzQmxvY2toYXNoVmFsaWRgIHF1ZXJ5IGJlaGF2aW9yXG4gKi9cbmV4cG9ydCB0eXBlIElzQmxvY2toYXNoVmFsaWRDb25maWcgPSB7XG4gIC8qKiBUaGUgbGV2ZWwgb2YgY29tbWl0bWVudCBkZXNpcmVkICovXG4gIGNvbW1pdG1lbnQ/OiBDb21taXRtZW50O1xuICAvKiogVGhlIG1pbmltdW0gc2xvdCB0aGF0IHRoZSByZXF1ZXN0IGNhbiBiZSBldmFsdWF0ZWQgYXQgKi9cbiAgbWluQ29udGV4dFNsb3Q/OiBudW1iZXI7XG59O1xuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gb2JqZWN0IGZvciBjaGFuZ2luZyBgZ2V0U2xvdGAgcXVlcnkgYmVoYXZpb3JcbiAqL1xuZXhwb3J0IHR5cGUgR2V0U2xvdENvbmZpZyA9IHtcbiAgLyoqIFRoZSBsZXZlbCBvZiBjb21taXRtZW50IGRlc2lyZWQgKi9cbiAgY29tbWl0bWVudD86IENvbW1pdG1lbnQ7XG4gIC8qKiBUaGUgbWluaW11bSBzbG90IHRoYXQgdGhlIHJlcXVlc3QgY2FuIGJlIGV2YWx1YXRlZCBhdCAqL1xuICBtaW5Db250ZXh0U2xvdD86IG51bWJlcjtcbn07XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBvYmplY3QgZm9yIGNoYW5naW5nIGBnZXRTbG90TGVhZGVyYCBxdWVyeSBiZWhhdmlvclxuICovXG5leHBvcnQgdHlwZSBHZXRTbG90TGVhZGVyQ29uZmlnID0ge1xuICAvKiogVGhlIGxldmVsIG9mIGNvbW1pdG1lbnQgZGVzaXJlZCAqL1xuICBjb21taXRtZW50PzogQ29tbWl0bWVudDtcbiAgLyoqIFRoZSBtaW5pbXVtIHNsb3QgdGhhdCB0aGUgcmVxdWVzdCBjYW4gYmUgZXZhbHVhdGVkIGF0ICovXG4gIG1pbkNvbnRleHRTbG90PzogbnVtYmVyO1xufTtcblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIG9iamVjdCBmb3IgY2hhbmdpbmcgYGdldFRyYW5zYWN0aW9uYCBxdWVyeSBiZWhhdmlvclxuICovXG5leHBvcnQgdHlwZSBHZXRUcmFuc2FjdGlvbkNvbmZpZyA9IHtcbiAgLyoqIFRoZSBsZXZlbCBvZiBmaW5hbGl0eSBkZXNpcmVkICovXG4gIGNvbW1pdG1lbnQ/OiBGaW5hbGl0eTtcbn07XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBvYmplY3QgZm9yIGNoYW5naW5nIGBnZXRUcmFuc2FjdGlvbmAgcXVlcnkgYmVoYXZpb3JcbiAqL1xuZXhwb3J0IHR5cGUgR2V0VmVyc2lvbmVkVHJhbnNhY3Rpb25Db25maWcgPSB7XG4gIC8qKiBUaGUgbGV2ZWwgb2YgZmluYWxpdHkgZGVzaXJlZCAqL1xuICBjb21taXRtZW50PzogRmluYWxpdHk7XG4gIC8qKiBUaGUgbWF4IHRyYW5zYWN0aW9uIHZlcnNpb24gdG8gcmV0dXJuIGluIHJlc3BvbnNlcy4gSWYgdGhlIHJlcXVlc3RlZCB0cmFuc2FjdGlvbiBpcyBhIGhpZ2hlciB2ZXJzaW9uLCBhbiBlcnJvciB3aWxsIGJlIHJldHVybmVkICovXG4gIG1heFN1cHBvcnRlZFRyYW5zYWN0aW9uVmVyc2lvbj86IG51bWJlcjtcbn07XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBvYmplY3QgZm9yIGNoYW5naW5nIGBnZXRMYXJnZXN0QWNjb3VudHNgIHF1ZXJ5IGJlaGF2aW9yXG4gKi9cbmV4cG9ydCB0eXBlIEdldExhcmdlc3RBY2NvdW50c0NvbmZpZyA9IHtcbiAgLyoqIFRoZSBsZXZlbCBvZiBjb21taXRtZW50IGRlc2lyZWQgKi9cbiAgY29tbWl0bWVudD86IENvbW1pdG1lbnQ7XG4gIC8qKiBGaWx0ZXIgbGFyZ2VzdCBhY2NvdW50cyBieSB3aGV0aGVyIHRoZXkgYXJlIHBhcnQgb2YgdGhlIGNpcmN1bGF0aW5nIHN1cHBseSAqL1xuICBmaWx0ZXI/OiBMYXJnZXN0QWNjb3VudHNGaWx0ZXI7XG59O1xuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gb2JqZWN0IGZvciBjaGFuZ2luZyBgZ2V0U3VwcGx5YCByZXF1ZXN0IGJlaGF2aW9yXG4gKi9cbmV4cG9ydCB0eXBlIEdldFN1cHBseUNvbmZpZyA9IHtcbiAgLyoqIFRoZSBsZXZlbCBvZiBjb21taXRtZW50IGRlc2lyZWQgKi9cbiAgY29tbWl0bWVudD86IENvbW1pdG1lbnQ7XG4gIC8qKiBFeGNsdWRlIG5vbiBjaXJjdWxhdGluZyBhY2NvdW50cyBsaXN0IGZyb20gcmVzcG9uc2UgKi9cbiAgZXhjbHVkZU5vbkNpcmN1bGF0aW5nQWNjb3VudHNMaXN0PzogYm9vbGVhbjtcbn07XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBvYmplY3QgZm9yIGNoYW5naW5nIHF1ZXJ5IGJlaGF2aW9yXG4gKi9cbmV4cG9ydCB0eXBlIFNpZ25hdHVyZVN0YXR1c0NvbmZpZyA9IHtcbiAgLyoqIGVuYWJsZSBzZWFyY2hpbmcgc3RhdHVzIGhpc3RvcnksIG5vdCBuZWVkZWQgZm9yIHJlY2VudCB0cmFuc2FjdGlvbnMgKi9cbiAgc2VhcmNoVHJhbnNhY3Rpb25IaXN0b3J5OiBib29sZWFuO1xufTtcblxuLyoqXG4gKiBJbmZvcm1hdGlvbiBkZXNjcmliaW5nIGEgY2x1c3RlciBub2RlXG4gKi9cbmV4cG9ydCB0eXBlIENvbnRhY3RJbmZvID0ge1xuICAvKiogSWRlbnRpdHkgcHVibGljIGtleSBvZiB0aGUgbm9kZSAqL1xuICBwdWJrZXk6IHN0cmluZztcbiAgLyoqIEdvc3NpcCBuZXR3b3JrIGFkZHJlc3MgZm9yIHRoZSBub2RlICovXG4gIGdvc3NpcDogc3RyaW5nIHwgbnVsbDtcbiAgLyoqIFRQVSBuZXR3b3JrIGFkZHJlc3MgZm9yIHRoZSBub2RlIChudWxsIGlmIG5vdCBhdmFpbGFibGUpICovXG4gIHRwdTogc3RyaW5nIHwgbnVsbDtcbiAgLyoqIEpTT04gUlBDIG5ldHdvcmsgYWRkcmVzcyBmb3IgdGhlIG5vZGUgKG51bGwgaWYgbm90IGF2YWlsYWJsZSkgKi9cbiAgcnBjOiBzdHJpbmcgfCBudWxsO1xuICAvKiogU29mdHdhcmUgdmVyc2lvbiBvZiB0aGUgbm9kZSAobnVsbCBpZiBub3QgYXZhaWxhYmxlKSAqL1xuICB2ZXJzaW9uOiBzdHJpbmcgfCBudWxsO1xufTtcblxuLyoqXG4gKiBJbmZvcm1hdGlvbiBkZXNjcmliaW5nIGEgdm90ZSBhY2NvdW50XG4gKi9cbmV4cG9ydCB0eXBlIFZvdGVBY2NvdW50SW5mbyA9IHtcbiAgLyoqIFB1YmxpYyBrZXkgb2YgdGhlIHZvdGUgYWNjb3VudCAqL1xuICB2b3RlUHVia2V5OiBzdHJpbmc7XG4gIC8qKiBJZGVudGl0eSBwdWJsaWMga2V5IG9mIHRoZSBub2RlIHZvdGluZyB3aXRoIHRoaXMgYWNjb3VudCAqL1xuICBub2RlUHVia2V5OiBzdHJpbmc7XG4gIC8qKiBUaGUgc3Rha2UsIGluIGxhbXBvcnRzLCBkZWxlZ2F0ZWQgdG8gdGhpcyB2b3RlIGFjY291bnQgYW5kIGFjdGl2YXRlZCAqL1xuICBhY3RpdmF0ZWRTdGFrZTogbnVtYmVyO1xuICAvKiogV2hldGhlciB0aGUgdm90ZSBhY2NvdW50IGlzIHN0YWtlZCBmb3IgdGhpcyBlcG9jaCAqL1xuICBlcG9jaFZvdGVBY2NvdW50OiBib29sZWFuO1xuICAvKiogUmVjZW50IGVwb2NoIHZvdGluZyBjcmVkaXQgaGlzdG9yeSBmb3IgdGhpcyB2b3RlciAqL1xuICBlcG9jaENyZWRpdHM6IEFycmF5PFtudW1iZXIsIG51bWJlciwgbnVtYmVyXT47XG4gIC8qKiBBIHBlcmNlbnRhZ2UgKDAtMTAwKSBvZiByZXdhcmRzIHBheW91dCBvd2VkIHRvIHRoZSB2b3RlciAqL1xuICBjb21taXNzaW9uOiBudW1iZXI7XG4gIC8qKiBNb3N0IHJlY2VudCBzbG90IHZvdGVkIG9uIGJ5IHRoaXMgdm90ZSBhY2NvdW50ICovXG4gIGxhc3RWb3RlOiBudW1iZXI7XG59O1xuXG4vKipcbiAqIEEgY29sbGVjdGlvbiBvZiBjbHVzdGVyIHZvdGUgYWNjb3VudHNcbiAqL1xuZXhwb3J0IHR5cGUgVm90ZUFjY291bnRTdGF0dXMgPSB7XG4gIC8qKiBBY3RpdmUgdm90ZSBhY2NvdW50cyAqL1xuICBjdXJyZW50OiBBcnJheTxWb3RlQWNjb3VudEluZm8+O1xuICAvKiogSW5hY3RpdmUgdm90ZSBhY2NvdW50cyAqL1xuICBkZWxpbnF1ZW50OiBBcnJheTxWb3RlQWNjb3VudEluZm8+O1xufTtcblxuLyoqXG4gKiBOZXR3b3JrIEluZmxhdGlvblxuICogKHNlZSBodHRwczovL2RvY3Muc29sYW5hLmNvbS9pbXBsZW1lbnRlZC1wcm9wb3NhbHMvZWRfb3ZlcnZpZXcpXG4gKi9cbmV4cG9ydCB0eXBlIEluZmxhdGlvbkdvdmVybm9yID0ge1xuICBmb3VuZGF0aW9uOiBudW1iZXI7XG4gIGZvdW5kYXRpb25UZXJtOiBudW1iZXI7XG4gIGluaXRpYWw6IG51bWJlcjtcbiAgdGFwZXI6IG51bWJlcjtcbiAgdGVybWluYWw6IG51bWJlcjtcbn07XG5cbmNvbnN0IEdldEluZmxhdGlvbkdvdmVybm9yUmVzdWx0ID0gcGljayh7XG4gIGZvdW5kYXRpb246IG51bWJlcigpLFxuICBmb3VuZGF0aW9uVGVybTogbnVtYmVyKCksXG4gIGluaXRpYWw6IG51bWJlcigpLFxuICB0YXBlcjogbnVtYmVyKCksXG4gIHRlcm1pbmFsOiBudW1iZXIoKSxcbn0pO1xuXG4vKipcbiAqIFRoZSBpbmZsYXRpb24gcmV3YXJkIGZvciBhbiBlcG9jaFxuICovXG5leHBvcnQgdHlwZSBJbmZsYXRpb25SZXdhcmQgPSB7XG4gIC8qKiBlcG9jaCBmb3Igd2hpY2ggdGhlIHJld2FyZCBvY2N1cnMgKi9cbiAgZXBvY2g6IG51bWJlcjtcbiAgLyoqIHRoZSBzbG90IGluIHdoaWNoIHRoZSByZXdhcmRzIGFyZSBlZmZlY3RpdmUgKi9cbiAgZWZmZWN0aXZlU2xvdDogbnVtYmVyO1xuICAvKiogcmV3YXJkIGFtb3VudCBpbiBsYW1wb3J0cyAqL1xuICBhbW91bnQ6IG51bWJlcjtcbiAgLyoqIHBvc3QgYmFsYW5jZSBvZiB0aGUgYWNjb3VudCBpbiBsYW1wb3J0cyAqL1xuICBwb3N0QmFsYW5jZTogbnVtYmVyO1xuICAvKiogdm90ZSBhY2NvdW50IGNvbW1pc3Npb24gd2hlbiB0aGUgcmV3YXJkIHdhcyBjcmVkaXRlZCAqL1xuICBjb21taXNzaW9uPzogbnVtYmVyIHwgbnVsbDtcbn07XG5cbi8qKlxuICogRXhwZWN0ZWQgSlNPTiBSUEMgcmVzcG9uc2UgZm9yIHRoZSBcImdldEluZmxhdGlvblJld2FyZFwiIG1lc3NhZ2VcbiAqL1xuY29uc3QgR2V0SW5mbGF0aW9uUmV3YXJkUmVzdWx0ID0ganNvblJwY1Jlc3VsdChcbiAgYXJyYXkoXG4gICAgbnVsbGFibGUoXG4gICAgICBwaWNrKHtcbiAgICAgICAgZXBvY2g6IG51bWJlcigpLFxuICAgICAgICBlZmZlY3RpdmVTbG90OiBudW1iZXIoKSxcbiAgICAgICAgYW1vdW50OiBudW1iZXIoKSxcbiAgICAgICAgcG9zdEJhbGFuY2U6IG51bWJlcigpLFxuICAgICAgICBjb21taXNzaW9uOiBvcHRpb25hbChudWxsYWJsZShudW1iZXIoKSkpLFxuICAgICAgfSksXG4gICAgKSxcbiAgKSxcbik7XG5cbmV4cG9ydCB0eXBlIFJlY2VudFByaW9yaXRpemF0aW9uRmVlcyA9IHtcbiAgLyoqIHNsb3QgaW4gd2hpY2ggdGhlIGZlZSB3YXMgb2JzZXJ2ZWQgKi9cbiAgc2xvdDogbnVtYmVyO1xuICAvKiogdGhlIHBlci1jb21wdXRlLXVuaXQgZmVlIHBhaWQgYnkgYXQgbGVhc3Qgb25lIHN1Y2Nlc3NmdWxseSBsYW5kZWQgdHJhbnNhY3Rpb24sIHNwZWNpZmllZCBpbiBpbmNyZW1lbnRzIG9mIDAuMDAwMDAxIGxhbXBvcnRzKi9cbiAgcHJpb3JpdGl6YXRpb25GZWU6IG51bWJlcjtcbn07XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBvYmplY3QgZm9yIGNoYW5naW5nIGBnZXRSZWNlbnRQcmlvcml0aXphdGlvbkZlZXNgIHF1ZXJ5IGJlaGF2aW9yXG4gKi9cbmV4cG9ydCB0eXBlIEdldFJlY2VudFByaW9yaXRpemF0aW9uRmVlc0NvbmZpZyA9IHtcbiAgLyoqXG4gICAqIElmIHRoaXMgcGFyYW1ldGVyIGlzIHByb3ZpZGVkLCB0aGUgcmVzcG9uc2Ugd2lsbCByZWZsZWN0IGEgZmVlIHRvIGxhbmQgYSB0cmFuc2FjdGlvbiBsb2NraW5nXG4gICAqIGFsbCBvZiB0aGUgcHJvdmlkZWQgYWNjb3VudHMgYXMgd3JpdGFibGUuXG4gICAqL1xuICBsb2NrZWRXcml0YWJsZUFjY291bnRzPzogUHVibGljS2V5W107XG59O1xuXG4vKipcbiAqIEV4cGVjdGVkIEpTT04gUlBDIHJlc3BvbnNlIGZvciB0aGUgXCJnZXRSZWNlbnRQcmlvcml0aXphdGlvbkZlZXNcIiBtZXNzYWdlXG4gKi9cbmNvbnN0IEdldFJlY2VudFByaW9yaXRpemF0aW9uRmVlc1Jlc3VsdCA9IGFycmF5KFxuICBwaWNrKHtcbiAgICBzbG90OiBudW1iZXIoKSxcbiAgICBwcmlvcml0aXphdGlvbkZlZTogbnVtYmVyKCksXG4gIH0pLFxuKTtcblxuZXhwb3J0IHR5cGUgSW5mbGF0aW9uUmF0ZSA9IHtcbiAgLyoqIHRvdGFsIGluZmxhdGlvbiAqL1xuICB0b3RhbDogbnVtYmVyO1xuICAvKiogaW5mbGF0aW9uIGFsbG9jYXRlZCB0byB2YWxpZGF0b3JzICovXG4gIHZhbGlkYXRvcjogbnVtYmVyO1xuICAvKiogaW5mbGF0aW9uIGFsbG9jYXRlZCB0byB0aGUgZm91bmRhdGlvbiAqL1xuICBmb3VuZGF0aW9uOiBudW1iZXI7XG4gIC8qKiBlcG9jaCBmb3Igd2hpY2ggdGhlc2UgdmFsdWVzIGFyZSB2YWxpZCAqL1xuICBlcG9jaDogbnVtYmVyO1xufTtcblxuLyoqXG4gKiBFeHBlY3RlZCBKU09OIFJQQyByZXNwb25zZSBmb3IgdGhlIFwiZ2V0SW5mbGF0aW9uUmF0ZVwiIG1lc3NhZ2VcbiAqL1xuY29uc3QgR2V0SW5mbGF0aW9uUmF0ZVJlc3VsdCA9IHBpY2soe1xuICB0b3RhbDogbnVtYmVyKCksXG4gIHZhbGlkYXRvcjogbnVtYmVyKCksXG4gIGZvdW5kYXRpb246IG51bWJlcigpLFxuICBlcG9jaDogbnVtYmVyKCksXG59KTtcblxuLyoqXG4gKiBJbmZvcm1hdGlvbiBhYm91dCB0aGUgY3VycmVudCBlcG9jaFxuICovXG5leHBvcnQgdHlwZSBFcG9jaEluZm8gPSB7XG4gIGVwb2NoOiBudW1iZXI7XG4gIHNsb3RJbmRleDogbnVtYmVyO1xuICBzbG90c0luRXBvY2g6IG51bWJlcjtcbiAgYWJzb2x1dGVTbG90OiBudW1iZXI7XG4gIGJsb2NrSGVpZ2h0PzogbnVtYmVyO1xuICB0cmFuc2FjdGlvbkNvdW50PzogbnVtYmVyO1xufTtcblxuY29uc3QgR2V0RXBvY2hJbmZvUmVzdWx0ID0gcGljayh7XG4gIGVwb2NoOiBudW1iZXIoKSxcbiAgc2xvdEluZGV4OiBudW1iZXIoKSxcbiAgc2xvdHNJbkVwb2NoOiBudW1iZXIoKSxcbiAgYWJzb2x1dGVTbG90OiBudW1iZXIoKSxcbiAgYmxvY2tIZWlnaHQ6IG9wdGlvbmFsKG51bWJlcigpKSxcbiAgdHJhbnNhY3Rpb25Db3VudDogb3B0aW9uYWwobnVtYmVyKCkpLFxufSk7XG5cbmNvbnN0IEdldEVwb2NoU2NoZWR1bGVSZXN1bHQgPSBwaWNrKHtcbiAgc2xvdHNQZXJFcG9jaDogbnVtYmVyKCksXG4gIGxlYWRlclNjaGVkdWxlU2xvdE9mZnNldDogbnVtYmVyKCksXG4gIHdhcm11cDogYm9vbGVhbigpLFxuICBmaXJzdE5vcm1hbEVwb2NoOiBudW1iZXIoKSxcbiAgZmlyc3ROb3JtYWxTbG90OiBudW1iZXIoKSxcbn0pO1xuXG4vKipcbiAqIExlYWRlciBzY2hlZHVsZVxuICogKHNlZSBodHRwczovL2RvY3Muc29sYW5hLmNvbS90ZXJtaW5vbG9neSNsZWFkZXItc2NoZWR1bGUpXG4gKi9cbmV4cG9ydCB0eXBlIExlYWRlclNjaGVkdWxlID0ge1xuICBbYWRkcmVzczogc3RyaW5nXTogbnVtYmVyW107XG59O1xuXG5jb25zdCBHZXRMZWFkZXJTY2hlZHVsZVJlc3VsdCA9IHJlY29yZChzdHJpbmcoKSwgYXJyYXkobnVtYmVyKCkpKTtcblxuLyoqXG4gKiBUcmFuc2FjdGlvbiBlcnJvciBvciBudWxsXG4gKi9cbmNvbnN0IFRyYW5zYWN0aW9uRXJyb3JSZXN1bHQgPSBudWxsYWJsZSh1bmlvbihbcGljayh7fSksIHN0cmluZygpXSkpO1xuXG4vKipcbiAqIFNpZ25hdHVyZSBzdGF0dXMgZm9yIGEgdHJhbnNhY3Rpb25cbiAqL1xuY29uc3QgU2lnbmF0dXJlU3RhdHVzUmVzdWx0ID0gcGljayh7XG4gIGVycjogVHJhbnNhY3Rpb25FcnJvclJlc3VsdCxcbn0pO1xuXG4vKipcbiAqIFRyYW5zYWN0aW9uIHNpZ25hdHVyZSByZWNlaXZlZCBub3RpZmljYXRpb25cbiAqL1xuY29uc3QgU2lnbmF0dXJlUmVjZWl2ZWRSZXN1bHQgPSBsaXRlcmFsKCdyZWNlaXZlZFNpZ25hdHVyZScpO1xuXG4vKipcbiAqIFZlcnNpb24gaW5mbyBmb3IgYSBub2RlXG4gKi9cbmV4cG9ydCB0eXBlIFZlcnNpb24gPSB7XG4gIC8qKiBWZXJzaW9uIG9mIHNvbGFuYS1jb3JlICovXG4gICdzb2xhbmEtY29yZSc6IHN0cmluZztcbiAgJ2ZlYXR1cmUtc2V0Jz86IG51bWJlcjtcbn07XG5cbmNvbnN0IFZlcnNpb25SZXN1bHQgPSBwaWNrKHtcbiAgJ3NvbGFuYS1jb3JlJzogc3RyaW5nKCksXG4gICdmZWF0dXJlLXNldCc6IG9wdGlvbmFsKG51bWJlcigpKSxcbn0pO1xuXG5leHBvcnQgdHlwZSBTaW11bGF0ZWRUcmFuc2FjdGlvbkFjY291bnRJbmZvID0ge1xuICAvKiogYHRydWVgIGlmIHRoaXMgYWNjb3VudCdzIGRhdGEgY29udGFpbnMgYSBsb2FkZWQgcHJvZ3JhbSAqL1xuICBleGVjdXRhYmxlOiBib29sZWFuO1xuICAvKiogSWRlbnRpZmllciBvZiB0aGUgcHJvZ3JhbSB0aGF0IG93bnMgdGhlIGFjY291bnQgKi9cbiAgb3duZXI6IHN0cmluZztcbiAgLyoqIE51bWJlciBvZiBsYW1wb3J0cyBhc3NpZ25lZCB0byB0aGUgYWNjb3VudCAqL1xuICBsYW1wb3J0czogbnVtYmVyO1xuICAvKiogT3B0aW9uYWwgZGF0YSBhc3NpZ25lZCB0byB0aGUgYWNjb3VudCAqL1xuICBkYXRhOiBzdHJpbmdbXTtcbiAgLyoqIE9wdGlvbmFsIHJlbnQgZXBvY2ggaW5mbyBmb3IgYWNjb3VudCAqL1xuICByZW50RXBvY2g/OiBudW1iZXI7XG59O1xuXG5leHBvcnQgdHlwZSBUcmFuc2FjdGlvblJldHVybkRhdGFFbmNvZGluZyA9ICdiYXNlNjQnO1xuXG5leHBvcnQgdHlwZSBUcmFuc2FjdGlvblJldHVybkRhdGEgPSB7XG4gIHByb2dyYW1JZDogc3RyaW5nO1xuICBkYXRhOiBbc3RyaW5nLCBUcmFuc2FjdGlvblJldHVybkRhdGFFbmNvZGluZ107XG59O1xuXG5leHBvcnQgdHlwZSBTaW11bGF0ZVRyYW5zYWN0aW9uQ29uZmlnID0ge1xuICAvKiogT3B0aW9uYWwgcGFyYW1ldGVyIHVzZWQgdG8gZW5hYmxlIHNpZ25hdHVyZSB2ZXJpZmljYXRpb24gYmVmb3JlIHNpbXVsYXRpb24gKi9cbiAgc2lnVmVyaWZ5PzogYm9vbGVhbjtcbiAgLyoqIE9wdGlvbmFsIHBhcmFtZXRlciB1c2VkIHRvIHJlcGxhY2UgdGhlIHNpbXVsYXRlZCB0cmFuc2FjdGlvbidzIHJlY2VudCBibG9ja2hhc2ggd2l0aCB0aGUgbGF0ZXN0IGJsb2NraGFzaCAqL1xuICByZXBsYWNlUmVjZW50QmxvY2toYXNoPzogYm9vbGVhbjtcbiAgLyoqIE9wdGlvbmFsIHBhcmFtZXRlciB1c2VkIHRvIHNldCB0aGUgY29tbWl0bWVudCBsZXZlbCB3aGVuIHNlbGVjdGluZyB0aGUgbGF0ZXN0IGJsb2NrICovXG4gIGNvbW1pdG1lbnQ/OiBDb21taXRtZW50O1xuICAvKiogT3B0aW9uYWwgcGFyYW1ldGVyIHVzZWQgdG8gc3BlY2lmeSBhIGxpc3Qgb2YgYWNjb3VudCBhZGRyZXNzZXMgdG8gcmV0dXJuIHBvc3Qgc2ltdWxhdGlvbiBzdGF0ZSBmb3IgKi9cbiAgYWNjb3VudHM/OiB7XG4gICAgZW5jb2Rpbmc6ICdiYXNlNjQnO1xuICAgIGFkZHJlc3Nlczogc3RyaW5nW107XG4gIH07XG4gIC8qKiBPcHRpb25hbCBwYXJhbWV0ZXIgdXNlZCB0byBzcGVjaWZ5IHRoZSBtaW5pbXVtIGJsb2NrIHNsb3QgdGhhdCBjYW4gYmUgdXNlZCBmb3Igc2ltdWxhdGlvbiAqL1xuICBtaW5Db250ZXh0U2xvdD86IG51bWJlcjtcbn07XG5cbmV4cG9ydCB0eXBlIFNpbXVsYXRlZFRyYW5zYWN0aW9uUmVzcG9uc2UgPSB7XG4gIGVycjogVHJhbnNhY3Rpb25FcnJvciB8IHN0cmluZyB8IG51bGw7XG4gIGxvZ3M6IEFycmF5PHN0cmluZz4gfCBudWxsO1xuICBhY2NvdW50cz86IChTaW11bGF0ZWRUcmFuc2FjdGlvbkFjY291bnRJbmZvIHwgbnVsbClbXSB8IG51bGw7XG4gIHVuaXRzQ29uc3VtZWQ/OiBudW1iZXI7XG4gIHJldHVybkRhdGE/OiBUcmFuc2FjdGlvblJldHVybkRhdGEgfCBudWxsO1xufTtcbmNvbnN0IFNpbXVsYXRlZFRyYW5zYWN0aW9uUmVzcG9uc2VTdHJ1Y3QgPSBqc29uUnBjUmVzdWx0QW5kQ29udGV4dChcbiAgcGljayh7XG4gICAgZXJyOiBudWxsYWJsZSh1bmlvbihbcGljayh7fSksIHN0cmluZygpXSkpLFxuICAgIGxvZ3M6IG51bGxhYmxlKGFycmF5KHN0cmluZygpKSksXG4gICAgYWNjb3VudHM6IG9wdGlvbmFsKFxuICAgICAgbnVsbGFibGUoXG4gICAgICAgIGFycmF5KFxuICAgICAgICAgIG51bGxhYmxlKFxuICAgICAgICAgICAgcGljayh7XG4gICAgICAgICAgICAgIGV4ZWN1dGFibGU6IGJvb2xlYW4oKSxcbiAgICAgICAgICAgICAgb3duZXI6IHN0cmluZygpLFxuICAgICAgICAgICAgICBsYW1wb3J0czogbnVtYmVyKCksXG4gICAgICAgICAgICAgIGRhdGE6IGFycmF5KHN0cmluZygpKSxcbiAgICAgICAgICAgICAgcmVudEVwb2NoOiBvcHRpb25hbChudW1iZXIoKSksXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICApLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICApLFxuICAgIHVuaXRzQ29uc3VtZWQ6IG9wdGlvbmFsKG51bWJlcigpKSxcbiAgICByZXR1cm5EYXRhOiBvcHRpb25hbChcbiAgICAgIG51bGxhYmxlKFxuICAgICAgICBwaWNrKHtcbiAgICAgICAgICBwcm9ncmFtSWQ6IHN0cmluZygpLFxuICAgICAgICAgIGRhdGE6IHR1cGxlKFtzdHJpbmcoKSwgbGl0ZXJhbCgnYmFzZTY0JyldKSxcbiAgICAgICAgfSksXG4gICAgICApLFxuICAgICksXG4gIH0pLFxuKTtcblxuZXhwb3J0IHR5cGUgUGFyc2VkSW5uZXJJbnN0cnVjdGlvbiA9IHtcbiAgaW5kZXg6IG51bWJlcjtcbiAgaW5zdHJ1Y3Rpb25zOiAoUGFyc2VkSW5zdHJ1Y3Rpb24gfCBQYXJ0aWFsbHlEZWNvZGVkSW5zdHJ1Y3Rpb24pW107XG59O1xuXG5leHBvcnQgdHlwZSBUb2tlbkJhbGFuY2UgPSB7XG4gIGFjY291bnRJbmRleDogbnVtYmVyO1xuICBtaW50OiBzdHJpbmc7XG4gIG93bmVyPzogc3RyaW5nO1xuICB1aVRva2VuQW1vdW50OiBUb2tlbkFtb3VudDtcbn07XG5cbi8qKlxuICogTWV0YWRhdGEgZm9yIGEgcGFyc2VkIGNvbmZpcm1lZCB0cmFuc2FjdGlvbiBvbiB0aGUgbGVkZ2VyXG4gKlxuICogQGRlcHJlY2F0ZWQgRGVwcmVjYXRlZCBzaW5jZSBTb2xhbmEgdjEuOC4wLiBQbGVhc2UgdXNlIHtAbGluayBQYXJzZWRUcmFuc2FjdGlvbk1ldGF9IGluc3RlYWQuXG4gKi9cbmV4cG9ydCB0eXBlIFBhcnNlZENvbmZpcm1lZFRyYW5zYWN0aW9uTWV0YSA9IFBhcnNlZFRyYW5zYWN0aW9uTWV0YTtcblxuLyoqXG4gKiBDb2xsZWN0aW9uIG9mIGFkZHJlc3NlcyBsb2FkZWQgYnkgYSB0cmFuc2FjdGlvbiB1c2luZyBhZGRyZXNzIHRhYmxlIGxvb2t1cHNcbiAqL1xuZXhwb3J0IHR5cGUgTG9hZGVkQWRkcmVzc2VzID0ge1xuICB3cml0YWJsZTogQXJyYXk8UHVibGljS2V5PjtcbiAgcmVhZG9ubHk6IEFycmF5PFB1YmxpY0tleT47XG59O1xuXG4vKipcbiAqIE1ldGFkYXRhIGZvciBhIHBhcnNlZCB0cmFuc2FjdGlvbiBvbiB0aGUgbGVkZ2VyXG4gKi9cbmV4cG9ydCB0eXBlIFBhcnNlZFRyYW5zYWN0aW9uTWV0YSA9IHtcbiAgLyoqIFRoZSBmZWUgY2hhcmdlZCBmb3IgcHJvY2Vzc2luZyB0aGUgdHJhbnNhY3Rpb24gKi9cbiAgZmVlOiBudW1iZXI7XG4gIC8qKiBBbiBhcnJheSBvZiBjcm9zcyBwcm9ncmFtIGludm9rZWQgcGFyc2VkIGluc3RydWN0aW9ucyAqL1xuICBpbm5lckluc3RydWN0aW9ucz86IFBhcnNlZElubmVySW5zdHJ1Y3Rpb25bXSB8IG51bGw7XG4gIC8qKiBUaGUgYmFsYW5jZXMgb2YgdGhlIHRyYW5zYWN0aW9uIGFjY291bnRzIGJlZm9yZSBwcm9jZXNzaW5nICovXG4gIHByZUJhbGFuY2VzOiBBcnJheTxudW1iZXI+O1xuICAvKiogVGhlIGJhbGFuY2VzIG9mIHRoZSB0cmFuc2FjdGlvbiBhY2NvdW50cyBhZnRlciBwcm9jZXNzaW5nICovXG4gIHBvc3RCYWxhbmNlczogQXJyYXk8bnVtYmVyPjtcbiAgLyoqIEFuIGFycmF5IG9mIHByb2dyYW0gbG9nIG1lc3NhZ2VzIGVtaXR0ZWQgZHVyaW5nIGEgdHJhbnNhY3Rpb24gKi9cbiAgbG9nTWVzc2FnZXM/OiBBcnJheTxzdHJpbmc+IHwgbnVsbDtcbiAgLyoqIFRoZSB0b2tlbiBiYWxhbmNlcyBvZiB0aGUgdHJhbnNhY3Rpb24gYWNjb3VudHMgYmVmb3JlIHByb2Nlc3NpbmcgKi9cbiAgcHJlVG9rZW5CYWxhbmNlcz86IEFycmF5PFRva2VuQmFsYW5jZT4gfCBudWxsO1xuICAvKiogVGhlIHRva2VuIGJhbGFuY2VzIG9mIHRoZSB0cmFuc2FjdGlvbiBhY2NvdW50cyBhZnRlciBwcm9jZXNzaW5nICovXG4gIHBvc3RUb2tlbkJhbGFuY2VzPzogQXJyYXk8VG9rZW5CYWxhbmNlPiB8IG51bGw7XG4gIC8qKiBUaGUgZXJyb3IgcmVzdWx0IG9mIHRyYW5zYWN0aW9uIHByb2Nlc3NpbmcgKi9cbiAgZXJyOiBUcmFuc2FjdGlvbkVycm9yIHwgbnVsbDtcbiAgLyoqIFRoZSBjb2xsZWN0aW9uIG9mIGFkZHJlc3NlcyBsb2FkZWQgdXNpbmcgYWRkcmVzcyBsb29rdXAgdGFibGVzICovXG4gIGxvYWRlZEFkZHJlc3Nlcz86IExvYWRlZEFkZHJlc3NlcztcbiAgLyoqIFRoZSBjb21wdXRlIHVuaXRzIGNvbnN1bWVkIGFmdGVyIHByb2Nlc3NpbmcgdGhlIHRyYW5zYWN0aW9uICovXG4gIGNvbXB1dGVVbml0c0NvbnN1bWVkPzogbnVtYmVyO1xufTtcblxuZXhwb3J0IHR5cGUgQ29tcGlsZWRJbm5lckluc3RydWN0aW9uID0ge1xuICBpbmRleDogbnVtYmVyO1xuICBpbnN0cnVjdGlvbnM6IENvbXBpbGVkSW5zdHJ1Y3Rpb25bXTtcbn07XG5cbi8qKlxuICogTWV0YWRhdGEgZm9yIGEgY29uZmlybWVkIHRyYW5zYWN0aW9uIG9uIHRoZSBsZWRnZXJcbiAqL1xuZXhwb3J0IHR5cGUgQ29uZmlybWVkVHJhbnNhY3Rpb25NZXRhID0ge1xuICAvKiogVGhlIGZlZSBjaGFyZ2VkIGZvciBwcm9jZXNzaW5nIHRoZSB0cmFuc2FjdGlvbiAqL1xuICBmZWU6IG51bWJlcjtcbiAgLyoqIEFuIGFycmF5IG9mIGNyb3NzIHByb2dyYW0gaW52b2tlZCBpbnN0cnVjdGlvbnMgKi9cbiAgaW5uZXJJbnN0cnVjdGlvbnM/OiBDb21waWxlZElubmVySW5zdHJ1Y3Rpb25bXSB8IG51bGw7XG4gIC8qKiBUaGUgYmFsYW5jZXMgb2YgdGhlIHRyYW5zYWN0aW9uIGFjY291bnRzIGJlZm9yZSBwcm9jZXNzaW5nICovXG4gIHByZUJhbGFuY2VzOiBBcnJheTxudW1iZXI+O1xuICAvKiogVGhlIGJhbGFuY2VzIG9mIHRoZSB0cmFuc2FjdGlvbiBhY2NvdW50cyBhZnRlciBwcm9jZXNzaW5nICovXG4gIHBvc3RCYWxhbmNlczogQXJyYXk8bnVtYmVyPjtcbiAgLyoqIEFuIGFycmF5IG9mIHByb2dyYW0gbG9nIG1lc3NhZ2VzIGVtaXR0ZWQgZHVyaW5nIGEgdHJhbnNhY3Rpb24gKi9cbiAgbG9nTWVzc2FnZXM/OiBBcnJheTxzdHJpbmc+IHwgbnVsbDtcbiAgLyoqIFRoZSB0b2tlbiBiYWxhbmNlcyBvZiB0aGUgdHJhbnNhY3Rpb24gYWNjb3VudHMgYmVmb3JlIHByb2Nlc3NpbmcgKi9cbiAgcHJlVG9rZW5CYWxhbmNlcz86IEFycmF5PFRva2VuQmFsYW5jZT4gfCBudWxsO1xuICAvKiogVGhlIHRva2VuIGJhbGFuY2VzIG9mIHRoZSB0cmFuc2FjdGlvbiBhY2NvdW50cyBhZnRlciBwcm9jZXNzaW5nICovXG4gIHBvc3RUb2tlbkJhbGFuY2VzPzogQXJyYXk8VG9rZW5CYWxhbmNlPiB8IG51bGw7XG4gIC8qKiBUaGUgZXJyb3IgcmVzdWx0IG9mIHRyYW5zYWN0aW9uIHByb2Nlc3NpbmcgKi9cbiAgZXJyOiBUcmFuc2FjdGlvbkVycm9yIHwgbnVsbDtcbiAgLyoqIFRoZSBjb2xsZWN0aW9uIG9mIGFkZHJlc3NlcyBsb2FkZWQgdXNpbmcgYWRkcmVzcyBsb29rdXAgdGFibGVzICovXG4gIGxvYWRlZEFkZHJlc3Nlcz86IExvYWRlZEFkZHJlc3NlcztcbiAgLyoqIFRoZSBjb21wdXRlIHVuaXRzIGNvbnN1bWVkIGFmdGVyIHByb2Nlc3NpbmcgdGhlIHRyYW5zYWN0aW9uICovXG4gIGNvbXB1dGVVbml0c0NvbnN1bWVkPzogbnVtYmVyO1xufTtcblxuLyoqXG4gKiBBIHByb2Nlc3NlZCB0cmFuc2FjdGlvbiBmcm9tIHRoZSBSUEMgQVBJXG4gKi9cbmV4cG9ydCB0eXBlIFRyYW5zYWN0aW9uUmVzcG9uc2UgPSB7XG4gIC8qKiBUaGUgc2xvdCBkdXJpbmcgd2hpY2ggdGhlIHRyYW5zYWN0aW9uIHdhcyBwcm9jZXNzZWQgKi9cbiAgc2xvdDogbnVtYmVyO1xuICAvKiogVGhlIHRyYW5zYWN0aW9uICovXG4gIHRyYW5zYWN0aW9uOiB7XG4gICAgLyoqIFRoZSB0cmFuc2FjdGlvbiBtZXNzYWdlICovXG4gICAgbWVzc2FnZTogTWVzc2FnZTtcbiAgICAvKiogVGhlIHRyYW5zYWN0aW9uIHNpZ25hdHVyZXMgKi9cbiAgICBzaWduYXR1cmVzOiBzdHJpbmdbXTtcbiAgfTtcbiAgLyoqIE1ldGFkYXRhIHByb2R1Y2VkIGZyb20gdGhlIHRyYW5zYWN0aW9uICovXG4gIG1ldGE6IENvbmZpcm1lZFRyYW5zYWN0aW9uTWV0YSB8IG51bGw7XG4gIC8qKiBUaGUgdW5peCB0aW1lc3RhbXAgb2Ygd2hlbiB0aGUgdHJhbnNhY3Rpb24gd2FzIHByb2Nlc3NlZCAqL1xuICBibG9ja1RpbWU/OiBudW1iZXIgfCBudWxsO1xufTtcblxuLyoqXG4gKiBBIHByb2Nlc3NlZCB0cmFuc2FjdGlvbiBmcm9tIHRoZSBSUEMgQVBJXG4gKi9cbmV4cG9ydCB0eXBlIFZlcnNpb25lZFRyYW5zYWN0aW9uUmVzcG9uc2UgPSB7XG4gIC8qKiBUaGUgc2xvdCBkdXJpbmcgd2hpY2ggdGhlIHRyYW5zYWN0aW9uIHdhcyBwcm9jZXNzZWQgKi9cbiAgc2xvdDogbnVtYmVyO1xuICAvKiogVGhlIHRyYW5zYWN0aW9uICovXG4gIHRyYW5zYWN0aW9uOiB7XG4gICAgLyoqIFRoZSB0cmFuc2FjdGlvbiBtZXNzYWdlICovXG4gICAgbWVzc2FnZTogVmVyc2lvbmVkTWVzc2FnZTtcbiAgICAvKiogVGhlIHRyYW5zYWN0aW9uIHNpZ25hdHVyZXMgKi9cbiAgICBzaWduYXR1cmVzOiBzdHJpbmdbXTtcbiAgfTtcbiAgLyoqIE1ldGFkYXRhIHByb2R1Y2VkIGZyb20gdGhlIHRyYW5zYWN0aW9uICovXG4gIG1ldGE6IENvbmZpcm1lZFRyYW5zYWN0aW9uTWV0YSB8IG51bGw7XG4gIC8qKiBUaGUgdW5peCB0aW1lc3RhbXAgb2Ygd2hlbiB0aGUgdHJhbnNhY3Rpb24gd2FzIHByb2Nlc3NlZCAqL1xuICBibG9ja1RpbWU/OiBudW1iZXIgfCBudWxsO1xuICAvKiogVGhlIHRyYW5zYWN0aW9uIHZlcnNpb24gKi9cbiAgdmVyc2lvbj86IFRyYW5zYWN0aW9uVmVyc2lvbjtcbn07XG5cbi8qKlxuICogQSBwcm9jZXNzZWQgdHJhbnNhY3Rpb24gbWVzc2FnZSBmcm9tIHRoZSBSUEMgQVBJXG4gKi9cbnR5cGUgTWVzc2FnZVJlc3BvbnNlID0ge1xuICBhY2NvdW50S2V5czogc3RyaW5nW107XG4gIGhlYWRlcjogTWVzc2FnZUhlYWRlcjtcbiAgaW5zdHJ1Y3Rpb25zOiBDb21waWxlZEluc3RydWN0aW9uW107XG4gIHJlY2VudEJsb2NraGFzaDogc3RyaW5nO1xuICBhZGRyZXNzVGFibGVMb29rdXBzPzogUGFyc2VkQWRkcmVzc1RhYmxlTG9va3VwW107XG59O1xuXG4vKipcbiAqIEEgY29uZmlybWVkIHRyYW5zYWN0aW9uIG9uIHRoZSBsZWRnZXJcbiAqXG4gKiBAZGVwcmVjYXRlZCBEZXByZWNhdGVkIHNpbmNlIFNvbGFuYSB2MS44LjAuXG4gKi9cbmV4cG9ydCB0eXBlIENvbmZpcm1lZFRyYW5zYWN0aW9uID0ge1xuICAvKiogVGhlIHNsb3QgZHVyaW5nIHdoaWNoIHRoZSB0cmFuc2FjdGlvbiB3YXMgcHJvY2Vzc2VkICovXG4gIHNsb3Q6IG51bWJlcjtcbiAgLyoqIFRoZSBkZXRhaWxzIG9mIHRoZSB0cmFuc2FjdGlvbiAqL1xuICB0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb247XG4gIC8qKiBNZXRhZGF0YSBwcm9kdWNlZCBmcm9tIHRoZSB0cmFuc2FjdGlvbiAqL1xuICBtZXRhOiBDb25maXJtZWRUcmFuc2FjdGlvbk1ldGEgfCBudWxsO1xuICAvKiogVGhlIHVuaXggdGltZXN0YW1wIG9mIHdoZW4gdGhlIHRyYW5zYWN0aW9uIHdhcyBwcm9jZXNzZWQgKi9cbiAgYmxvY2tUaW1lPzogbnVtYmVyIHwgbnVsbDtcbn07XG5cbi8qKlxuICogQSBwYXJ0aWFsbHkgZGVjb2RlZCB0cmFuc2FjdGlvbiBpbnN0cnVjdGlvblxuICovXG5leHBvcnQgdHlwZSBQYXJ0aWFsbHlEZWNvZGVkSW5zdHJ1Y3Rpb24gPSB7XG4gIC8qKiBQcm9ncmFtIGlkIGNhbGxlZCBieSB0aGlzIGluc3RydWN0aW9uICovXG4gIHByb2dyYW1JZDogUHVibGljS2V5O1xuICAvKiogUHVibGljIGtleXMgb2YgYWNjb3VudHMgcGFzc2VkIHRvIHRoaXMgaW5zdHJ1Y3Rpb24gKi9cbiAgYWNjb3VudHM6IEFycmF5PFB1YmxpY0tleT47XG4gIC8qKiBSYXcgYmFzZS01OCBpbnN0cnVjdGlvbiBkYXRhICovXG4gIGRhdGE6IHN0cmluZztcbn07XG5cbi8qKlxuICogQSBwYXJzZWQgdHJhbnNhY3Rpb24gbWVzc2FnZSBhY2NvdW50XG4gKi9cbmV4cG9ydCB0eXBlIFBhcnNlZE1lc3NhZ2VBY2NvdW50ID0ge1xuICAvKiogUHVibGljIGtleSBvZiB0aGUgYWNjb3VudCAqL1xuICBwdWJrZXk6IFB1YmxpY0tleTtcbiAgLyoqIEluZGljYXRlcyBpZiB0aGUgYWNjb3VudCBzaWduZWQgdGhlIHRyYW5zYWN0aW9uICovXG4gIHNpZ25lcjogYm9vbGVhbjtcbiAgLyoqIEluZGljYXRlcyBpZiB0aGUgYWNjb3VudCBpcyB3cml0YWJsZSBmb3IgdGhpcyB0cmFuc2FjdGlvbiAqL1xuICB3cml0YWJsZTogYm9vbGVhbjtcbiAgLyoqIEluZGljYXRlcyBpZiB0aGUgYWNjb3VudCBrZXkgY2FtZSBmcm9tIHRoZSB0cmFuc2FjdGlvbiBvciBhIGxvb2t1cCB0YWJsZSAqL1xuICBzb3VyY2U/OiAndHJhbnNhY3Rpb24nIHwgJ2xvb2t1cFRhYmxlJztcbn07XG5cbi8qKlxuICogQSBwYXJzZWQgdHJhbnNhY3Rpb24gaW5zdHJ1Y3Rpb25cbiAqL1xuZXhwb3J0IHR5cGUgUGFyc2VkSW5zdHJ1Y3Rpb24gPSB7XG4gIC8qKiBOYW1lIG9mIHRoZSBwcm9ncmFtIGZvciB0aGlzIGluc3RydWN0aW9uICovXG4gIHByb2dyYW06IHN0cmluZztcbiAgLyoqIElEIG9mIHRoZSBwcm9ncmFtIGZvciB0aGlzIGluc3RydWN0aW9uICovXG4gIHByb2dyYW1JZDogUHVibGljS2V5O1xuICAvKiogUGFyc2VkIGluc3RydWN0aW9uIGluZm8gKi9cbiAgcGFyc2VkOiBhbnk7XG59O1xuXG4vKipcbiAqIEEgcGFyc2VkIGFkZHJlc3MgdGFibGUgbG9va3VwXG4gKi9cbmV4cG9ydCB0eXBlIFBhcnNlZEFkZHJlc3NUYWJsZUxvb2t1cCA9IHtcbiAgLyoqIEFkZHJlc3MgbG9va3VwIHRhYmxlIGFjY291bnQga2V5ICovXG4gIGFjY291bnRLZXk6IFB1YmxpY0tleTtcbiAgLyoqIFBhcnNlZCBpbnN0cnVjdGlvbiBpbmZvICovXG4gIHdyaXRhYmxlSW5kZXhlczogbnVtYmVyW107XG4gIC8qKiBQYXJzZWQgaW5zdHJ1Y3Rpb24gaW5mbyAqL1xuICByZWFkb25seUluZGV4ZXM6IG51bWJlcltdO1xufTtcblxuLyoqXG4gKiBBIHBhcnNlZCB0cmFuc2FjdGlvbiBtZXNzYWdlXG4gKi9cbmV4cG9ydCB0eXBlIFBhcnNlZE1lc3NhZ2UgPSB7XG4gIC8qKiBBY2NvdW50cyB1c2VkIGluIHRoZSBpbnN0cnVjdGlvbnMgKi9cbiAgYWNjb3VudEtleXM6IFBhcnNlZE1lc3NhZ2VBY2NvdW50W107XG4gIC8qKiBUaGUgYXRvbWljYWxseSBleGVjdXRlZCBpbnN0cnVjdGlvbnMgZm9yIHRoZSB0cmFuc2FjdGlvbiAqL1xuICBpbnN0cnVjdGlvbnM6IChQYXJzZWRJbnN0cnVjdGlvbiB8IFBhcnRpYWxseURlY29kZWRJbnN0cnVjdGlvbilbXTtcbiAgLyoqIFJlY2VudCBibG9ja2hhc2ggKi9cbiAgcmVjZW50QmxvY2toYXNoOiBzdHJpbmc7XG4gIC8qKiBBZGRyZXNzIHRhYmxlIGxvb2t1cHMgdXNlZCB0byBsb2FkIGFkZGl0aW9uYWwgYWNjb3VudHMgKi9cbiAgYWRkcmVzc1RhYmxlTG9va3Vwcz86IFBhcnNlZEFkZHJlc3NUYWJsZUxvb2t1cFtdIHwgbnVsbDtcbn07XG5cbi8qKlxuICogQSBwYXJzZWQgdHJhbnNhY3Rpb25cbiAqL1xuZXhwb3J0IHR5cGUgUGFyc2VkVHJhbnNhY3Rpb24gPSB7XG4gIC8qKiBTaWduYXR1cmVzIGZvciB0aGUgdHJhbnNhY3Rpb24gKi9cbiAgc2lnbmF0dXJlczogQXJyYXk8c3RyaW5nPjtcbiAgLyoqIE1lc3NhZ2Ugb2YgdGhlIHRyYW5zYWN0aW9uICovXG4gIG1lc3NhZ2U6IFBhcnNlZE1lc3NhZ2U7XG59O1xuXG4vKipcbiAqIEEgcGFyc2VkIGFuZCBjb25maXJtZWQgdHJhbnNhY3Rpb24gb24gdGhlIGxlZGdlclxuICpcbiAqIEBkZXByZWNhdGVkIERlcHJlY2F0ZWQgc2luY2UgU29sYW5hIHYxLjguMC4gUGxlYXNlIHVzZSB7QGxpbmsgUGFyc2VkVHJhbnNhY3Rpb25XaXRoTWV0YX0gaW5zdGVhZC5cbiAqL1xuZXhwb3J0IHR5cGUgUGFyc2VkQ29uZmlybWVkVHJhbnNhY3Rpb24gPSBQYXJzZWRUcmFuc2FjdGlvbldpdGhNZXRhO1xuXG4vKipcbiAqIEEgcGFyc2VkIHRyYW5zYWN0aW9uIG9uIHRoZSBsZWRnZXIgd2l0aCBtZXRhXG4gKi9cbmV4cG9ydCB0eXBlIFBhcnNlZFRyYW5zYWN0aW9uV2l0aE1ldGEgPSB7XG4gIC8qKiBUaGUgc2xvdCBkdXJpbmcgd2hpY2ggdGhlIHRyYW5zYWN0aW9uIHdhcyBwcm9jZXNzZWQgKi9cbiAgc2xvdDogbnVtYmVyO1xuICAvKiogVGhlIGRldGFpbHMgb2YgdGhlIHRyYW5zYWN0aW9uICovXG4gIHRyYW5zYWN0aW9uOiBQYXJzZWRUcmFuc2FjdGlvbjtcbiAgLyoqIE1ldGFkYXRhIHByb2R1Y2VkIGZyb20gdGhlIHRyYW5zYWN0aW9uICovXG4gIG1ldGE6IFBhcnNlZFRyYW5zYWN0aW9uTWV0YSB8IG51bGw7XG4gIC8qKiBUaGUgdW5peCB0aW1lc3RhbXAgb2Ygd2hlbiB0aGUgdHJhbnNhY3Rpb24gd2FzIHByb2Nlc3NlZCAqL1xuICBibG9ja1RpbWU/OiBudW1iZXIgfCBudWxsO1xuICAvKiogVGhlIHZlcnNpb24gb2YgdGhlIHRyYW5zYWN0aW9uIG1lc3NhZ2UgKi9cbiAgdmVyc2lvbj86IFRyYW5zYWN0aW9uVmVyc2lvbjtcbn07XG5cbi8qKlxuICogQSBwcm9jZXNzZWQgYmxvY2sgZmV0Y2hlZCBmcm9tIHRoZSBSUEMgQVBJXG4gKi9cbmV4cG9ydCB0eXBlIEJsb2NrUmVzcG9uc2UgPSB7XG4gIC8qKiBCbG9ja2hhc2ggb2YgdGhpcyBibG9jayAqL1xuICBibG9ja2hhc2g6IEJsb2NraGFzaDtcbiAgLyoqIEJsb2NraGFzaCBvZiB0aGlzIGJsb2NrJ3MgcGFyZW50ICovXG4gIHByZXZpb3VzQmxvY2toYXNoOiBCbG9ja2hhc2g7XG4gIC8qKiBTbG90IGluZGV4IG9mIHRoaXMgYmxvY2sncyBwYXJlbnQgKi9cbiAgcGFyZW50U2xvdDogbnVtYmVyO1xuICAvKiogVmVjdG9yIG9mIHRyYW5zYWN0aW9ucyB3aXRoIHN0YXR1cyBtZXRhIGFuZCBvcmlnaW5hbCBtZXNzYWdlICovXG4gIHRyYW5zYWN0aW9uczogQXJyYXk8e1xuICAgIC8qKiBUaGUgdHJhbnNhY3Rpb24gKi9cbiAgICB0cmFuc2FjdGlvbjoge1xuICAgICAgLyoqIFRoZSB0cmFuc2FjdGlvbiBtZXNzYWdlICovXG4gICAgICBtZXNzYWdlOiBNZXNzYWdlO1xuICAgICAgLyoqIFRoZSB0cmFuc2FjdGlvbiBzaWduYXR1cmVzICovXG4gICAgICBzaWduYXR1cmVzOiBzdHJpbmdbXTtcbiAgICB9O1xuICAgIC8qKiBNZXRhZGF0YSBwcm9kdWNlZCBmcm9tIHRoZSB0cmFuc2FjdGlvbiAqL1xuICAgIG1ldGE6IENvbmZpcm1lZFRyYW5zYWN0aW9uTWV0YSB8IG51bGw7XG4gICAgLyoqIFRoZSB0cmFuc2FjdGlvbiB2ZXJzaW9uICovXG4gICAgdmVyc2lvbj86IFRyYW5zYWN0aW9uVmVyc2lvbjtcbiAgfT47XG4gIC8qKiBWZWN0b3Igb2YgYmxvY2sgcmV3YXJkcyAqL1xuICByZXdhcmRzPzogQXJyYXk8e1xuICAgIC8qKiBQdWJsaWMga2V5IG9mIHJld2FyZCByZWNpcGllbnQgKi9cbiAgICBwdWJrZXk6IHN0cmluZztcbiAgICAvKiogUmV3YXJkIHZhbHVlIGluIGxhbXBvcnRzICovXG4gICAgbGFtcG9ydHM6IG51bWJlcjtcbiAgICAvKiogQWNjb3VudCBiYWxhbmNlIGFmdGVyIHJld2FyZCBpcyBhcHBsaWVkICovXG4gICAgcG9zdEJhbGFuY2U6IG51bWJlciB8IG51bGw7XG4gICAgLyoqIFR5cGUgb2YgcmV3YXJkIHJlY2VpdmVkICovXG4gICAgcmV3YXJkVHlwZTogc3RyaW5nIHwgbnVsbDtcbiAgICAvKiogVm90ZSBhY2NvdW50IGNvbW1pc3Npb24gd2hlbiB0aGUgcmV3YXJkIHdhcyBjcmVkaXRlZCwgb25seSBwcmVzZW50IGZvciB2b3RpbmcgYW5kIHN0YWtpbmcgcmV3YXJkcyAqL1xuICAgIGNvbW1pc3Npb24/OiBudW1iZXIgfCBudWxsO1xuICB9PjtcbiAgLyoqIFRoZSB1bml4IHRpbWVzdGFtcCBvZiB3aGVuIHRoZSBibG9jayB3YXMgcHJvY2Vzc2VkICovXG4gIGJsb2NrVGltZTogbnVtYmVyIHwgbnVsbDtcbn07XG5cbi8qKlxuICogQSBwcm9jZXNzZWQgYmxvY2sgZmV0Y2hlZCBmcm9tIHRoZSBSUEMgQVBJIHdoZXJlIHRoZSBgdHJhbnNhY3Rpb25EZXRhaWxzYCBtb2RlIGlzIGBhY2NvdW50c2BcbiAqL1xuZXhwb3J0IHR5cGUgQWNjb3VudHNNb2RlQmxvY2tSZXNwb25zZSA9IFZlcnNpb25lZEFjY291bnRzTW9kZUJsb2NrUmVzcG9uc2U7XG5cbi8qKlxuICogQSBwcm9jZXNzZWQgYmxvY2sgZmV0Y2hlZCBmcm9tIHRoZSBSUEMgQVBJIHdoZXJlIHRoZSBgdHJhbnNhY3Rpb25EZXRhaWxzYCBtb2RlIGlzIGBub25lYFxuICovXG5leHBvcnQgdHlwZSBOb25lTW9kZUJsb2NrUmVzcG9uc2UgPSBWZXJzaW9uZWROb25lTW9kZUJsb2NrUmVzcG9uc2U7XG5cbi8qKlxuICogQSBibG9jayB3aXRoIHBhcnNlZCB0cmFuc2FjdGlvbnNcbiAqL1xuZXhwb3J0IHR5cGUgUGFyc2VkQmxvY2tSZXNwb25zZSA9IHtcbiAgLyoqIEJsb2NraGFzaCBvZiB0aGlzIGJsb2NrICovXG4gIGJsb2NraGFzaDogQmxvY2toYXNoO1xuICAvKiogQmxvY2toYXNoIG9mIHRoaXMgYmxvY2sncyBwYXJlbnQgKi9cbiAgcHJldmlvdXNCbG9ja2hhc2g6IEJsb2NraGFzaDtcbiAgLyoqIFNsb3QgaW5kZXggb2YgdGhpcyBibG9jaydzIHBhcmVudCAqL1xuICBwYXJlbnRTbG90OiBudW1iZXI7XG4gIC8qKiBWZWN0b3Igb2YgdHJhbnNhY3Rpb25zIHdpdGggc3RhdHVzIG1ldGEgYW5kIG9yaWdpbmFsIG1lc3NhZ2UgKi9cbiAgdHJhbnNhY3Rpb25zOiBBcnJheTx7XG4gICAgLyoqIFRoZSBkZXRhaWxzIG9mIHRoZSB0cmFuc2FjdGlvbiAqL1xuICAgIHRyYW5zYWN0aW9uOiBQYXJzZWRUcmFuc2FjdGlvbjtcbiAgICAvKiogTWV0YWRhdGEgcHJvZHVjZWQgZnJvbSB0aGUgdHJhbnNhY3Rpb24gKi9cbiAgICBtZXRhOiBQYXJzZWRUcmFuc2FjdGlvbk1ldGEgfCBudWxsO1xuICAgIC8qKiBUaGUgdHJhbnNhY3Rpb24gdmVyc2lvbiAqL1xuICAgIHZlcnNpb24/OiBUcmFuc2FjdGlvblZlcnNpb247XG4gIH0+O1xuICAvKiogVmVjdG9yIG9mIGJsb2NrIHJld2FyZHMgKi9cbiAgcmV3YXJkcz86IEFycmF5PHtcbiAgICAvKiogUHVibGljIGtleSBvZiByZXdhcmQgcmVjaXBpZW50ICovXG4gICAgcHVia2V5OiBzdHJpbmc7XG4gICAgLyoqIFJld2FyZCB2YWx1ZSBpbiBsYW1wb3J0cyAqL1xuICAgIGxhbXBvcnRzOiBudW1iZXI7XG4gICAgLyoqIEFjY291bnQgYmFsYW5jZSBhZnRlciByZXdhcmQgaXMgYXBwbGllZCAqL1xuICAgIHBvc3RCYWxhbmNlOiBudW1iZXIgfCBudWxsO1xuICAgIC8qKiBUeXBlIG9mIHJld2FyZCByZWNlaXZlZCAqL1xuICAgIHJld2FyZFR5cGU6IHN0cmluZyB8IG51bGw7XG4gICAgLyoqIFZvdGUgYWNjb3VudCBjb21taXNzaW9uIHdoZW4gdGhlIHJld2FyZCB3YXMgY3JlZGl0ZWQsIG9ubHkgcHJlc2VudCBmb3Igdm90aW5nIGFuZCBzdGFraW5nIHJld2FyZHMgKi9cbiAgICBjb21taXNzaW9uPzogbnVtYmVyIHwgbnVsbDtcbiAgfT47XG4gIC8qKiBUaGUgdW5peCB0aW1lc3RhbXAgb2Ygd2hlbiB0aGUgYmxvY2sgd2FzIHByb2Nlc3NlZCAqL1xuICBibG9ja1RpbWU6IG51bWJlciB8IG51bGw7XG4gIC8qKiBUaGUgbnVtYmVyIG9mIGJsb2NrcyBiZW5lYXRoIHRoaXMgYmxvY2sgKi9cbiAgYmxvY2tIZWlnaHQ6IG51bWJlciB8IG51bGw7XG59O1xuXG4vKipcbiAqIEEgYmxvY2sgd2l0aCBwYXJzZWQgdHJhbnNhY3Rpb25zIHdoZXJlIHRoZSBgdHJhbnNhY3Rpb25EZXRhaWxzYCBtb2RlIGlzIGBhY2NvdW50c2BcbiAqL1xuZXhwb3J0IHR5cGUgUGFyc2VkQWNjb3VudHNNb2RlQmxvY2tSZXNwb25zZSA9IE9taXQ8XG4gIFBhcnNlZEJsb2NrUmVzcG9uc2UsXG4gICd0cmFuc2FjdGlvbnMnXG4+ICYge1xuICB0cmFuc2FjdGlvbnM6IEFycmF5PFxuICAgIE9taXQ8UGFyc2VkQmxvY2tSZXNwb25zZVsndHJhbnNhY3Rpb25zJ11bbnVtYmVyXSwgJ3RyYW5zYWN0aW9uJz4gJiB7XG4gICAgICB0cmFuc2FjdGlvbjogUGljazxcbiAgICAgICAgUGFyc2VkQmxvY2tSZXNwb25zZVsndHJhbnNhY3Rpb25zJ11bbnVtYmVyXVsndHJhbnNhY3Rpb24nXSxcbiAgICAgICAgJ3NpZ25hdHVyZXMnXG4gICAgICA+ICYge1xuICAgICAgICBhY2NvdW50S2V5czogUGFyc2VkTWVzc2FnZUFjY291bnRbXTtcbiAgICAgIH07XG4gICAgfVxuICA+O1xufTtcblxuLyoqXG4gKiBBIGJsb2NrIHdpdGggcGFyc2VkIHRyYW5zYWN0aW9ucyB3aGVyZSB0aGUgYHRyYW5zYWN0aW9uRGV0YWlsc2AgbW9kZSBpcyBgbm9uZWBcbiAqL1xuZXhwb3J0IHR5cGUgUGFyc2VkTm9uZU1vZGVCbG9ja1Jlc3BvbnNlID0gT21pdDxcbiAgUGFyc2VkQmxvY2tSZXNwb25zZSxcbiAgJ3RyYW5zYWN0aW9ucydcbj47XG5cbi8qKlxuICogQSBwcm9jZXNzZWQgYmxvY2sgZmV0Y2hlZCBmcm9tIHRoZSBSUEMgQVBJXG4gKi9cbmV4cG9ydCB0eXBlIFZlcnNpb25lZEJsb2NrUmVzcG9uc2UgPSB7XG4gIC8qKiBCbG9ja2hhc2ggb2YgdGhpcyBibG9jayAqL1xuICBibG9ja2hhc2g6IEJsb2NraGFzaDtcbiAgLyoqIEJsb2NraGFzaCBvZiB0aGlzIGJsb2NrJ3MgcGFyZW50ICovXG4gIHByZXZpb3VzQmxvY2toYXNoOiBCbG9ja2hhc2g7XG4gIC8qKiBTbG90IGluZGV4IG9mIHRoaXMgYmxvY2sncyBwYXJlbnQgKi9cbiAgcGFyZW50U2xvdDogbnVtYmVyO1xuICAvKiogVmVjdG9yIG9mIHRyYW5zYWN0aW9ucyB3aXRoIHN0YXR1cyBtZXRhIGFuZCBvcmlnaW5hbCBtZXNzYWdlICovXG4gIHRyYW5zYWN0aW9uczogQXJyYXk8e1xuICAgIC8qKiBUaGUgdHJhbnNhY3Rpb24gKi9cbiAgICB0cmFuc2FjdGlvbjoge1xuICAgICAgLyoqIFRoZSB0cmFuc2FjdGlvbiBtZXNzYWdlICovXG4gICAgICBtZXNzYWdlOiBWZXJzaW9uZWRNZXNzYWdlO1xuICAgICAgLyoqIFRoZSB0cmFuc2FjdGlvbiBzaWduYXR1cmVzICovXG4gICAgICBzaWduYXR1cmVzOiBzdHJpbmdbXTtcbiAgICB9O1xuICAgIC8qKiBNZXRhZGF0YSBwcm9kdWNlZCBmcm9tIHRoZSB0cmFuc2FjdGlvbiAqL1xuICAgIG1ldGE6IENvbmZpcm1lZFRyYW5zYWN0aW9uTWV0YSB8IG51bGw7XG4gICAgLyoqIFRoZSB0cmFuc2FjdGlvbiB2ZXJzaW9uICovXG4gICAgdmVyc2lvbj86IFRyYW5zYWN0aW9uVmVyc2lvbjtcbiAgfT47XG4gIC8qKiBWZWN0b3Igb2YgYmxvY2sgcmV3YXJkcyAqL1xuICByZXdhcmRzPzogQXJyYXk8e1xuICAgIC8qKiBQdWJsaWMga2V5IG9mIHJld2FyZCByZWNpcGllbnQgKi9cbiAgICBwdWJrZXk6IHN0cmluZztcbiAgICAvKiogUmV3YXJkIHZhbHVlIGluIGxhbXBvcnRzICovXG4gICAgbGFtcG9ydHM6IG51bWJlcjtcbiAgICAvKiogQWNjb3VudCBiYWxhbmNlIGFmdGVyIHJld2FyZCBpcyBhcHBsaWVkICovXG4gICAgcG9zdEJhbGFuY2U6IG51bWJlciB8IG51bGw7XG4gICAgLyoqIFR5cGUgb2YgcmV3YXJkIHJlY2VpdmVkICovXG4gICAgcmV3YXJkVHlwZTogc3RyaW5nIHwgbnVsbDtcbiAgICAvKiogVm90ZSBhY2NvdW50IGNvbW1pc3Npb24gd2hlbiB0aGUgcmV3YXJkIHdhcyBjcmVkaXRlZCwgb25seSBwcmVzZW50IGZvciB2b3RpbmcgYW5kIHN0YWtpbmcgcmV3YXJkcyAqL1xuICAgIGNvbW1pc3Npb24/OiBudW1iZXIgfCBudWxsO1xuICB9PjtcbiAgLyoqIFRoZSB1bml4IHRpbWVzdGFtcCBvZiB3aGVuIHRoZSBibG9jayB3YXMgcHJvY2Vzc2VkICovXG4gIGJsb2NrVGltZTogbnVtYmVyIHwgbnVsbDtcbn07XG5cbi8qKlxuICogQSBwcm9jZXNzZWQgYmxvY2sgZmV0Y2hlZCBmcm9tIHRoZSBSUEMgQVBJIHdoZXJlIHRoZSBgdHJhbnNhY3Rpb25EZXRhaWxzYCBtb2RlIGlzIGBhY2NvdW50c2BcbiAqL1xuZXhwb3J0IHR5cGUgVmVyc2lvbmVkQWNjb3VudHNNb2RlQmxvY2tSZXNwb25zZSA9IE9taXQ8XG4gIFZlcnNpb25lZEJsb2NrUmVzcG9uc2UsXG4gICd0cmFuc2FjdGlvbnMnXG4+ICYge1xuICB0cmFuc2FjdGlvbnM6IEFycmF5PFxuICAgIE9taXQ8VmVyc2lvbmVkQmxvY2tSZXNwb25zZVsndHJhbnNhY3Rpb25zJ11bbnVtYmVyXSwgJ3RyYW5zYWN0aW9uJz4gJiB7XG4gICAgICB0cmFuc2FjdGlvbjogUGljazxcbiAgICAgICAgVmVyc2lvbmVkQmxvY2tSZXNwb25zZVsndHJhbnNhY3Rpb25zJ11bbnVtYmVyXVsndHJhbnNhY3Rpb24nXSxcbiAgICAgICAgJ3NpZ25hdHVyZXMnXG4gICAgICA+ICYge1xuICAgICAgICBhY2NvdW50S2V5czogUGFyc2VkTWVzc2FnZUFjY291bnRbXTtcbiAgICAgIH07XG4gICAgfVxuICA+O1xufTtcblxuLyoqXG4gKiBBIHByb2Nlc3NlZCBibG9jayBmZXRjaGVkIGZyb20gdGhlIFJQQyBBUEkgd2hlcmUgdGhlIGB0cmFuc2FjdGlvbkRldGFpbHNgIG1vZGUgaXMgYG5vbmVgXG4gKi9cbmV4cG9ydCB0eXBlIFZlcnNpb25lZE5vbmVNb2RlQmxvY2tSZXNwb25zZSA9IE9taXQ8XG4gIFZlcnNpb25lZEJsb2NrUmVzcG9uc2UsXG4gICd0cmFuc2FjdGlvbnMnXG4+O1xuXG4vKipcbiAqIEEgY29uZmlybWVkIGJsb2NrIG9uIHRoZSBsZWRnZXJcbiAqXG4gKiBAZGVwcmVjYXRlZCBEZXByZWNhdGVkIHNpbmNlIFNvbGFuYSB2MS44LjAuXG4gKi9cbmV4cG9ydCB0eXBlIENvbmZpcm1lZEJsb2NrID0ge1xuICAvKiogQmxvY2toYXNoIG9mIHRoaXMgYmxvY2sgKi9cbiAgYmxvY2toYXNoOiBCbG9ja2hhc2g7XG4gIC8qKiBCbG9ja2hhc2ggb2YgdGhpcyBibG9jaydzIHBhcmVudCAqL1xuICBwcmV2aW91c0Jsb2NraGFzaDogQmxvY2toYXNoO1xuICAvKiogU2xvdCBpbmRleCBvZiB0aGlzIGJsb2NrJ3MgcGFyZW50ICovXG4gIHBhcmVudFNsb3Q6IG51bWJlcjtcbiAgLyoqIFZlY3RvciBvZiB0cmFuc2FjdGlvbnMgYW5kIHN0YXR1cyBtZXRhcyAqL1xuICB0cmFuc2FjdGlvbnM6IEFycmF5PHtcbiAgICB0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb247XG4gICAgbWV0YTogQ29uZmlybWVkVHJhbnNhY3Rpb25NZXRhIHwgbnVsbDtcbiAgfT47XG4gIC8qKiBWZWN0b3Igb2YgYmxvY2sgcmV3YXJkcyAqL1xuICByZXdhcmRzPzogQXJyYXk8e1xuICAgIHB1YmtleTogc3RyaW5nO1xuICAgIGxhbXBvcnRzOiBudW1iZXI7XG4gICAgcG9zdEJhbGFuY2U6IG51bWJlciB8IG51bGw7XG4gICAgcmV3YXJkVHlwZTogc3RyaW5nIHwgbnVsbDtcbiAgICBjb21taXNzaW9uPzogbnVtYmVyIHwgbnVsbDtcbiAgfT47XG4gIC8qKiBUaGUgdW5peCB0aW1lc3RhbXAgb2Ygd2hlbiB0aGUgYmxvY2sgd2FzIHByb2Nlc3NlZCAqL1xuICBibG9ja1RpbWU6IG51bWJlciB8IG51bGw7XG59O1xuXG4vKipcbiAqIEEgQmxvY2sgb24gdGhlIGxlZGdlciB3aXRoIHNpZ25hdHVyZXMgb25seVxuICovXG5leHBvcnQgdHlwZSBCbG9ja1NpZ25hdHVyZXMgPSB7XG4gIC8qKiBCbG9ja2hhc2ggb2YgdGhpcyBibG9jayAqL1xuICBibG9ja2hhc2g6IEJsb2NraGFzaDtcbiAgLyoqIEJsb2NraGFzaCBvZiB0aGlzIGJsb2NrJ3MgcGFyZW50ICovXG4gIHByZXZpb3VzQmxvY2toYXNoOiBCbG9ja2hhc2g7XG4gIC8qKiBTbG90IGluZGV4IG9mIHRoaXMgYmxvY2sncyBwYXJlbnQgKi9cbiAgcGFyZW50U2xvdDogbnVtYmVyO1xuICAvKiogVmVjdG9yIG9mIHNpZ25hdHVyZXMgKi9cbiAgc2lnbmF0dXJlczogQXJyYXk8c3RyaW5nPjtcbiAgLyoqIFRoZSB1bml4IHRpbWVzdGFtcCBvZiB3aGVuIHRoZSBibG9jayB3YXMgcHJvY2Vzc2VkICovXG4gIGJsb2NrVGltZTogbnVtYmVyIHwgbnVsbDtcbn07XG5cbi8qKlxuICogcmVjZW50IGJsb2NrIHByb2R1Y3Rpb24gaW5mb3JtYXRpb25cbiAqL1xuZXhwb3J0IHR5cGUgQmxvY2tQcm9kdWN0aW9uID0gUmVhZG9ubHk8e1xuICAvKiogYSBkaWN0aW9uYXJ5IG9mIHZhbGlkYXRvciBpZGVudGl0aWVzLCBhcyBiYXNlLTU4IGVuY29kZWQgc3RyaW5ncy4gVmFsdWUgaXMgYSB0d28gZWxlbWVudCBhcnJheSBjb250YWluaW5nIHRoZSBudW1iZXIgb2YgbGVhZGVyIHNsb3RzIGFuZCB0aGUgbnVtYmVyIG9mIGJsb2NrcyBwcm9kdWNlZCAqL1xuICBieUlkZW50aXR5OiBSZWFkb25seTxSZWNvcmQ8c3RyaW5nLCBSZWFkb25seUFycmF5PG51bWJlcj4+PjtcbiAgLyoqIEJsb2NrIHByb2R1Y3Rpb24gc2xvdCByYW5nZSAqL1xuICByYW5nZTogUmVhZG9ubHk8e1xuICAgIC8qKiBmaXJzdCBzbG90IG9mIHRoZSBibG9jayBwcm9kdWN0aW9uIGluZm9ybWF0aW9uIChpbmNsdXNpdmUpICovXG4gICAgZmlyc3RTbG90OiBudW1iZXI7XG4gICAgLyoqIGxhc3Qgc2xvdCBvZiBibG9jayBwcm9kdWN0aW9uIGluZm9ybWF0aW9uIChpbmNsdXNpdmUpICovXG4gICAgbGFzdFNsb3Q6IG51bWJlcjtcbiAgfT47XG59PjtcblxuZXhwb3J0IHR5cGUgR2V0QmxvY2tQcm9kdWN0aW9uQ29uZmlnID0ge1xuICAvKiogT3B0aW9uYWwgY29tbWl0bWVudCBsZXZlbCAqL1xuICBjb21taXRtZW50PzogQ29tbWl0bWVudDtcbiAgLyoqIFNsb3QgcmFuZ2UgdG8gcmV0dXJuIGJsb2NrIHByb2R1Y3Rpb24gZm9yLiBJZiBwYXJhbWV0ZXIgbm90IHByb3ZpZGVkLCBkZWZhdWx0cyB0byBjdXJyZW50IGVwb2NoLiAqL1xuICByYW5nZT86IHtcbiAgICAvKiogZmlyc3Qgc2xvdCB0byByZXR1cm4gYmxvY2sgcHJvZHVjdGlvbiBpbmZvcm1hdGlvbiBmb3IgKGluY2x1c2l2ZSkgKi9cbiAgICBmaXJzdFNsb3Q6IG51bWJlcjtcbiAgICAvKiogbGFzdCBzbG90IHRvIHJldHVybiBibG9jayBwcm9kdWN0aW9uIGluZm9ybWF0aW9uIGZvciAoaW5jbHVzaXZlKS4gSWYgcGFyYW1ldGVyIG5vdCBwcm92aWRlZCwgZGVmYXVsdHMgdG8gdGhlIGhpZ2hlc3Qgc2xvdCAqL1xuICAgIGxhc3RTbG90PzogbnVtYmVyO1xuICB9O1xuICAvKiogT25seSByZXR1cm4gcmVzdWx0cyBmb3IgdGhpcyB2YWxpZGF0b3IgaWRlbnRpdHkgKGJhc2UtNTggZW5jb2RlZCkgKi9cbiAgaWRlbnRpdHk/OiBzdHJpbmc7XG59O1xuXG4vKipcbiAqIEV4cGVjdGVkIEpTT04gUlBDIHJlc3BvbnNlIGZvciB0aGUgXCJnZXRCbG9ja1Byb2R1Y3Rpb25cIiBtZXNzYWdlXG4gKi9cbmNvbnN0IEJsb2NrUHJvZHVjdGlvblJlc3BvbnNlU3RydWN0ID0ganNvblJwY1Jlc3VsdEFuZENvbnRleHQoXG4gIHBpY2soe1xuICAgIGJ5SWRlbnRpdHk6IHJlY29yZChzdHJpbmcoKSwgYXJyYXkobnVtYmVyKCkpKSxcbiAgICByYW5nZTogcGljayh7XG4gICAgICBmaXJzdFNsb3Q6IG51bWJlcigpLFxuICAgICAgbGFzdFNsb3Q6IG51bWJlcigpLFxuICAgIH0pLFxuICB9KSxcbik7XG5cbi8qKlxuICogQSBwZXJmb3JtYW5jZSBzYW1wbGVcbiAqL1xuZXhwb3J0IHR5cGUgUGVyZlNhbXBsZSA9IHtcbiAgLyoqIFNsb3QgbnVtYmVyIG9mIHNhbXBsZSAqL1xuICBzbG90OiBudW1iZXI7XG4gIC8qKiBOdW1iZXIgb2YgdHJhbnNhY3Rpb25zIGluIGEgc2FtcGxlIHdpbmRvdyAqL1xuICBudW1UcmFuc2FjdGlvbnM6IG51bWJlcjtcbiAgLyoqIE51bWJlciBvZiBzbG90cyBpbiBhIHNhbXBsZSB3aW5kb3cgKi9cbiAgbnVtU2xvdHM6IG51bWJlcjtcbiAgLyoqIFNhbXBsZSB3aW5kb3cgaW4gc2Vjb25kcyAqL1xuICBzYW1wbGVQZXJpb2RTZWNzOiBudW1iZXI7XG59O1xuXG5mdW5jdGlvbiBjcmVhdGVScGNDbGllbnQoXG4gIHVybDogc3RyaW5nLFxuICBodHRwSGVhZGVycz86IEh0dHBIZWFkZXJzLFxuICBjdXN0b21GZXRjaD86IEZldGNoRm4sXG4gIGZldGNoTWlkZGxld2FyZT86IEZldGNoTWlkZGxld2FyZSxcbiAgZGlzYWJsZVJldHJ5T25SYXRlTGltaXQ/OiBib29sZWFuLFxuICBodHRwQWdlbnQ/OiBOb2RlSHR0cEFnZW50IHwgTm9kZUh0dHBzQWdlbnQgfCBmYWxzZSxcbik6IFJwY0NsaWVudCB7XG4gIGNvbnN0IGZldGNoID0gY3VzdG9tRmV0Y2ggPyBjdXN0b21GZXRjaCA6IGZldGNoSW1wbDtcbiAgbGV0IGFnZW50OiBOb2RlSHR0cEFnZW50IHwgTm9kZUh0dHBzQWdlbnQgfCB1bmRlZmluZWQ7XG4gIGlmIChwcm9jZXNzLmVudi5CUk9XU0VSKSB7XG4gICAgaWYgKGh0dHBBZ2VudCAhPSBudWxsKSB7XG4gICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICdZb3UgaGF2ZSBzdXBwbGllZCBhbiBgaHR0cEFnZW50YCB3aGVuIGNyZWF0aW5nIGEgYENvbm5lY3Rpb25gIGluIGEgYnJvd3NlciBlbnZpcm9ubWVudC4nICtcbiAgICAgICAgICAnSXQgaGFzIGJlZW4gaWdub3JlZDsgYGh0dHBBZ2VudGAgaXMgb25seSB1c2VkIGluIE5vZGUgZW52aXJvbm1lbnRzLicsXG4gICAgICApO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICBpZiAoaHR0cEFnZW50ID09IG51bGwpIHtcbiAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Rlc3QnKSB7XG4gICAgICAgIGNvbnN0IGFnZW50T3B0aW9ucyA9IHtcbiAgICAgICAgICAvLyBPbmUgc2Vjb25kIGZld2VyIHRoYW4gdGhlIFNvbGFuYSBSUEMncyBrZWVwYWxpdmUgdGltZW91dC5cbiAgICAgICAgICAvLyBSZWFkIG1vcmU6IGh0dHBzOi8vZ2l0aHViLmNvbS9zb2xhbmEtbGFicy9zb2xhbmEvaXNzdWVzLzI3ODU5I2lzc3VlY29tbWVudC0xMzQwMDk3ODg5XG4gICAgICAgICAgZnJlZVNvY2tldFRpbWVvdXQ6IDE5MDAwLFxuICAgICAgICAgIGtlZXBBbGl2ZTogdHJ1ZSxcbiAgICAgICAgICBtYXhTb2NrZXRzOiAyNSxcbiAgICAgICAgfTtcbiAgICAgICAgaWYgKHVybC5zdGFydHNXaXRoKCdodHRwczonKSkge1xuICAgICAgICAgIGFnZW50ID0gbmV3IEh0dHBzS2VlcEFsaXZlQWdlbnQoYWdlbnRPcHRpb25zKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBhZ2VudCA9IG5ldyBIdHRwS2VlcEFsaXZlQWdlbnQoYWdlbnRPcHRpb25zKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoaHR0cEFnZW50ICE9PSBmYWxzZSkge1xuICAgICAgICBjb25zdCBpc0h0dHBzID0gdXJsLnN0YXJ0c1dpdGgoJ2h0dHBzOicpO1xuICAgICAgICBpZiAoaXNIdHRwcyAmJiAhKGh0dHBBZ2VudCBpbnN0YW5jZW9mIE5vZGVIdHRwc0FnZW50KSkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgICdUaGUgZW5kcG9pbnQgYCcgK1xuICAgICAgICAgICAgICB1cmwgK1xuICAgICAgICAgICAgICAnYCBjYW4gb25seSBiZSBwYWlyZWQgd2l0aCBhbiBgaHR0cHMuQWdlbnRgLiBZb3UgaGF2ZSwgaW5zdGVhZCwgc3VwcGxpZWQgYW4gJyArXG4gICAgICAgICAgICAgICdgaHR0cC5BZ2VudGAgdGhyb3VnaCBgaHR0cEFnZW50YC4nLFxuICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSBpZiAoIWlzSHR0cHMgJiYgaHR0cEFnZW50IGluc3RhbmNlb2YgTm9kZUh0dHBzQWdlbnQpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgICAnVGhlIGVuZHBvaW50IGAnICtcbiAgICAgICAgICAgICAgdXJsICtcbiAgICAgICAgICAgICAgJ2AgY2FuIG9ubHkgYmUgcGFpcmVkIHdpdGggYW4gYGh0dHAuQWdlbnRgLiBZb3UgaGF2ZSwgaW5zdGVhZCwgc3VwcGxpZWQgYW4gJyArXG4gICAgICAgICAgICAgICdgaHR0cHMuQWdlbnRgIHRocm91Z2ggYGh0dHBBZ2VudGAuJyxcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIGFnZW50ID0gaHR0cEFnZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGxldCBmZXRjaFdpdGhNaWRkbGV3YXJlOiBGZXRjaEZuIHwgdW5kZWZpbmVkO1xuXG4gIGlmIChmZXRjaE1pZGRsZXdhcmUpIHtcbiAgICBmZXRjaFdpdGhNaWRkbGV3YXJlID0gYXN5bmMgKGluZm8sIGluaXQpID0+IHtcbiAgICAgIGNvbnN0IG1vZGlmaWVkRmV0Y2hBcmdzID0gYXdhaXQgbmV3IFByb21pc2U8UGFyYW1ldGVyczxGZXRjaEZuPj4oXG4gICAgICAgIChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgZmV0Y2hNaWRkbGV3YXJlKGluZm8sIGluaXQsIChtb2RpZmllZEluZm8sIG1vZGlmaWVkSW5pdCkgPT5cbiAgICAgICAgICAgICAgcmVzb2x2ZShbbW9kaWZpZWRJbmZvLCBtb2RpZmllZEluaXRdKSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgIHJlamVjdChlcnJvcik7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgKTtcbiAgICAgIHJldHVybiBhd2FpdCBmZXRjaCguLi5tb2RpZmllZEZldGNoQXJncyk7XG4gICAgfTtcbiAgfVxuXG4gIGNvbnN0IGNsaWVudEJyb3dzZXIgPSBuZXcgUnBjQ2xpZW50KGFzeW5jIChyZXF1ZXN0LCBjYWxsYmFjaykgPT4ge1xuICAgIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgIGJvZHk6IHJlcXVlc3QsXG4gICAgICBhZ2VudCxcbiAgICAgIGhlYWRlcnM6IE9iamVjdC5hc3NpZ24oXG4gICAgICAgIHtcbiAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICB9LFxuICAgICAgICBodHRwSGVhZGVycyB8fCB7fSxcbiAgICAgICAgQ09NTU9OX0hUVFBfSEVBREVSUyxcbiAgICAgICksXG4gICAgfTtcblxuICAgIHRyeSB7XG4gICAgICBsZXQgdG9vX21hbnlfcmVxdWVzdHNfcmV0cmllcyA9IDU7XG4gICAgICBsZXQgcmVzOiBSZXNwb25zZTtcbiAgICAgIGxldCB3YWl0VGltZSA9IDUwMDtcbiAgICAgIGZvciAoOzspIHtcbiAgICAgICAgaWYgKGZldGNoV2l0aE1pZGRsZXdhcmUpIHtcbiAgICAgICAgICByZXMgPSBhd2FpdCBmZXRjaFdpdGhNaWRkbGV3YXJlKHVybCwgb3B0aW9ucyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmVzID0gYXdhaXQgZmV0Y2godXJsLCBvcHRpb25zKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChyZXMuc3RhdHVzICE9PSA0MjkgLyogVG9vIG1hbnkgcmVxdWVzdHMgKi8pIHtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBpZiAoZGlzYWJsZVJldHJ5T25SYXRlTGltaXQgPT09IHRydWUpIHtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICB0b29fbWFueV9yZXF1ZXN0c19yZXRyaWVzIC09IDE7XG4gICAgICAgIGlmICh0b29fbWFueV9yZXF1ZXN0c19yZXRyaWVzID09PSAwKSB7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgY29uc29sZS5sb2coXG4gICAgICAgICAgYFNlcnZlciByZXNwb25kZWQgd2l0aCAke3Jlcy5zdGF0dXN9ICR7cmVzLnN0YXR1c1RleHR9LiAgUmV0cnlpbmcgYWZ0ZXIgJHt3YWl0VGltZX1tcyBkZWxheS4uLmAsXG4gICAgICAgICk7XG4gICAgICAgIGF3YWl0IHNsZWVwKHdhaXRUaW1lKTtcbiAgICAgICAgd2FpdFRpbWUgKj0gMjtcbiAgICAgIH1cblxuICAgICAgY29uc3QgdGV4dCA9IGF3YWl0IHJlcy50ZXh0KCk7XG4gICAgICBpZiAocmVzLm9rKSB7XG4gICAgICAgIGNhbGxiYWNrKG51bGwsIHRleHQpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY2FsbGJhY2sobmV3IEVycm9yKGAke3Jlcy5zdGF0dXN9ICR7cmVzLnN0YXR1c1RleHR9OiAke3RleHR9YCkpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgaWYgKGVyciBpbnN0YW5jZW9mIEVycm9yKSBjYWxsYmFjayhlcnIpO1xuICAgIH1cbiAgfSwge30pO1xuXG4gIHJldHVybiBjbGllbnRCcm93c2VyO1xufVxuXG5mdW5jdGlvbiBjcmVhdGVScGNSZXF1ZXN0KGNsaWVudDogUnBjQ2xpZW50KTogUnBjUmVxdWVzdCB7XG4gIHJldHVybiAobWV0aG9kLCBhcmdzKSA9PiB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIGNsaWVudC5yZXF1ZXN0KG1ldGhvZCwgYXJncywgKGVycjogYW55LCByZXNwb25zZTogYW55KSA9PiB7XG4gICAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgICByZWplY3QoZXJyKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgcmVzb2x2ZShyZXNwb25zZSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfTtcbn1cblxuZnVuY3Rpb24gY3JlYXRlUnBjQmF0Y2hSZXF1ZXN0KGNsaWVudDogUnBjQ2xpZW50KTogUnBjQmF0Y2hSZXF1ZXN0IHtcbiAgcmV0dXJuIChyZXF1ZXN0czogUnBjUGFyYW1zW10pID0+IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgLy8gRG8gbm90aGluZyBpZiByZXF1ZXN0cyBpcyBlbXB0eVxuICAgICAgaWYgKHJlcXVlc3RzLmxlbmd0aCA9PT0gMCkgcmVzb2x2ZShbXSk7XG5cbiAgICAgIGNvbnN0IGJhdGNoID0gcmVxdWVzdHMubWFwKChwYXJhbXM6IFJwY1BhcmFtcykgPT4ge1xuICAgICAgICByZXR1cm4gY2xpZW50LnJlcXVlc3QocGFyYW1zLm1ldGhvZE5hbWUsIHBhcmFtcy5hcmdzKTtcbiAgICAgIH0pO1xuXG4gICAgICBjbGllbnQucmVxdWVzdChiYXRjaCwgKGVycjogYW55LCByZXNwb25zZTogYW55KSA9PiB7XG4gICAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgICByZWplY3QoZXJyKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgcmVzb2x2ZShyZXNwb25zZSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfTtcbn1cblxuLyoqXG4gKiBFeHBlY3RlZCBKU09OIFJQQyByZXNwb25zZSBmb3IgdGhlIFwiZ2V0SW5mbGF0aW9uR292ZXJub3JcIiBtZXNzYWdlXG4gKi9cbmNvbnN0IEdldEluZmxhdGlvbkdvdmVybm9yUnBjUmVzdWx0ID0ganNvblJwY1Jlc3VsdChHZXRJbmZsYXRpb25Hb3Zlcm5vclJlc3VsdCk7XG5cbi8qKlxuICogRXhwZWN0ZWQgSlNPTiBSUEMgcmVzcG9uc2UgZm9yIHRoZSBcImdldEluZmxhdGlvblJhdGVcIiBtZXNzYWdlXG4gKi9cbmNvbnN0IEdldEluZmxhdGlvblJhdGVScGNSZXN1bHQgPSBqc29uUnBjUmVzdWx0KEdldEluZmxhdGlvblJhdGVSZXN1bHQpO1xuXG4vKipcbiAqIEV4cGVjdGVkIEpTT04gUlBDIHJlc3BvbnNlIGZvciB0aGUgXCJnZXRSZWNlbnRQcmlvcml0aXphdGlvbkZlZXNcIiBtZXNzYWdlXG4gKi9cbmNvbnN0IEdldFJlY2VudFByaW9yaXRpemF0aW9uRmVlc1JwY1Jlc3VsdCA9IGpzb25ScGNSZXN1bHQoXG4gIEdldFJlY2VudFByaW9yaXRpemF0aW9uRmVlc1Jlc3VsdCxcbik7XG5cbi8qKlxuICogRXhwZWN0ZWQgSlNPTiBSUEMgcmVzcG9uc2UgZm9yIHRoZSBcImdldEVwb2NoSW5mb1wiIG1lc3NhZ2VcbiAqL1xuY29uc3QgR2V0RXBvY2hJbmZvUnBjUmVzdWx0ID0ganNvblJwY1Jlc3VsdChHZXRFcG9jaEluZm9SZXN1bHQpO1xuXG4vKipcbiAqIEV4cGVjdGVkIEpTT04gUlBDIHJlc3BvbnNlIGZvciB0aGUgXCJnZXRFcG9jaFNjaGVkdWxlXCIgbWVzc2FnZVxuICovXG5jb25zdCBHZXRFcG9jaFNjaGVkdWxlUnBjUmVzdWx0ID0ganNvblJwY1Jlc3VsdChHZXRFcG9jaFNjaGVkdWxlUmVzdWx0KTtcblxuLyoqXG4gKiBFeHBlY3RlZCBKU09OIFJQQyByZXNwb25zZSBmb3IgdGhlIFwiZ2V0TGVhZGVyU2NoZWR1bGVcIiBtZXNzYWdlXG4gKi9cbmNvbnN0IEdldExlYWRlclNjaGVkdWxlUnBjUmVzdWx0ID0ganNvblJwY1Jlc3VsdChHZXRMZWFkZXJTY2hlZHVsZVJlc3VsdCk7XG5cbi8qKlxuICogRXhwZWN0ZWQgSlNPTiBSUEMgcmVzcG9uc2UgZm9yIHRoZSBcIm1pbmltdW1MZWRnZXJTbG90XCIgYW5kIFwiZ2V0Rmlyc3RBdmFpbGFibGVCbG9ja1wiIG1lc3NhZ2VzXG4gKi9cbmNvbnN0IFNsb3RScGNSZXN1bHQgPSBqc29uUnBjUmVzdWx0KG51bWJlcigpKTtcblxuLyoqXG4gKiBTdXBwbHlcbiAqL1xuZXhwb3J0IHR5cGUgU3VwcGx5ID0ge1xuICAvKiogVG90YWwgc3VwcGx5IGluIGxhbXBvcnRzICovXG4gIHRvdGFsOiBudW1iZXI7XG4gIC8qKiBDaXJjdWxhdGluZyBzdXBwbHkgaW4gbGFtcG9ydHMgKi9cbiAgY2lyY3VsYXRpbmc6IG51bWJlcjtcbiAgLyoqIE5vbi1jaXJjdWxhdGluZyBzdXBwbHkgaW4gbGFtcG9ydHMgKi9cbiAgbm9uQ2lyY3VsYXRpbmc6IG51bWJlcjtcbiAgLyoqIExpc3Qgb2Ygbm9uLWNpcmN1bGF0aW5nIGFjY291bnQgYWRkcmVzc2VzICovXG4gIG5vbkNpcmN1bGF0aW5nQWNjb3VudHM6IEFycmF5PFB1YmxpY0tleT47XG59O1xuXG4vKipcbiAqIEV4cGVjdGVkIEpTT04gUlBDIHJlc3BvbnNlIGZvciB0aGUgXCJnZXRTdXBwbHlcIiBtZXNzYWdlXG4gKi9cbmNvbnN0IEdldFN1cHBseVJwY1Jlc3VsdCA9IGpzb25ScGNSZXN1bHRBbmRDb250ZXh0KFxuICBwaWNrKHtcbiAgICB0b3RhbDogbnVtYmVyKCksXG4gICAgY2lyY3VsYXRpbmc6IG51bWJlcigpLFxuICAgIG5vbkNpcmN1bGF0aW5nOiBudW1iZXIoKSxcbiAgICBub25DaXJjdWxhdGluZ0FjY291bnRzOiBhcnJheShQdWJsaWNLZXlGcm9tU3RyaW5nKSxcbiAgfSksXG4pO1xuXG4vKipcbiAqIFRva2VuIGFtb3VudCBvYmplY3Qgd2hpY2ggcmV0dXJucyBhIHRva2VuIGFtb3VudCBpbiBkaWZmZXJlbnQgZm9ybWF0c1xuICogZm9yIHZhcmlvdXMgY2xpZW50IHVzZSBjYXNlcy5cbiAqL1xuZXhwb3J0IHR5cGUgVG9rZW5BbW91bnQgPSB7XG4gIC8qKiBSYXcgYW1vdW50IG9mIHRva2VucyBhcyBzdHJpbmcgaWdub3JpbmcgZGVjaW1hbHMgKi9cbiAgYW1vdW50OiBzdHJpbmc7XG4gIC8qKiBOdW1iZXIgb2YgZGVjaW1hbHMgY29uZmlndXJlZCBmb3IgdG9rZW4ncyBtaW50ICovXG4gIGRlY2ltYWxzOiBudW1iZXI7XG4gIC8qKiBUb2tlbiBhbW91bnQgYXMgZmxvYXQsIGFjY291bnRzIGZvciBkZWNpbWFscyAqL1xuICB1aUFtb3VudDogbnVtYmVyIHwgbnVsbDtcbiAgLyoqIFRva2VuIGFtb3VudCBhcyBzdHJpbmcsIGFjY291bnRzIGZvciBkZWNpbWFscyAqL1xuICB1aUFtb3VudFN0cmluZz86IHN0cmluZztcbn07XG5cbi8qKlxuICogRXhwZWN0ZWQgSlNPTiBSUEMgc3RydWN0dXJlIGZvciB0b2tlbiBhbW91bnRzXG4gKi9cbmNvbnN0IFRva2VuQW1vdW50UmVzdWx0ID0gcGljayh7XG4gIGFtb3VudDogc3RyaW5nKCksXG4gIHVpQW1vdW50OiBudWxsYWJsZShudW1iZXIoKSksXG4gIGRlY2ltYWxzOiBudW1iZXIoKSxcbiAgdWlBbW91bnRTdHJpbmc6IG9wdGlvbmFsKHN0cmluZygpKSxcbn0pO1xuXG4vKipcbiAqIFRva2VuIGFkZHJlc3MgYW5kIGJhbGFuY2UuXG4gKi9cbmV4cG9ydCB0eXBlIFRva2VuQWNjb3VudEJhbGFuY2VQYWlyID0ge1xuICAvKiogQWRkcmVzcyBvZiB0aGUgdG9rZW4gYWNjb3VudCAqL1xuICBhZGRyZXNzOiBQdWJsaWNLZXk7XG4gIC8qKiBSYXcgYW1vdW50IG9mIHRva2VucyBhcyBzdHJpbmcgaWdub3JpbmcgZGVjaW1hbHMgKi9cbiAgYW1vdW50OiBzdHJpbmc7XG4gIC8qKiBOdW1iZXIgb2YgZGVjaW1hbHMgY29uZmlndXJlZCBmb3IgdG9rZW4ncyBtaW50ICovXG4gIGRlY2ltYWxzOiBudW1iZXI7XG4gIC8qKiBUb2tlbiBhbW91bnQgYXMgZmxvYXQsIGFjY291bnRzIGZvciBkZWNpbWFscyAqL1xuICB1aUFtb3VudDogbnVtYmVyIHwgbnVsbDtcbiAgLyoqIFRva2VuIGFtb3VudCBhcyBzdHJpbmcsIGFjY291bnRzIGZvciBkZWNpbWFscyAqL1xuICB1aUFtb3VudFN0cmluZz86IHN0cmluZztcbn07XG5cbi8qKlxuICogRXhwZWN0ZWQgSlNPTiBSUEMgcmVzcG9uc2UgZm9yIHRoZSBcImdldFRva2VuTGFyZ2VzdEFjY291bnRzXCIgbWVzc2FnZVxuICovXG5jb25zdCBHZXRUb2tlbkxhcmdlc3RBY2NvdW50c1Jlc3VsdCA9IGpzb25ScGNSZXN1bHRBbmRDb250ZXh0KFxuICBhcnJheShcbiAgICBwaWNrKHtcbiAgICAgIGFkZHJlc3M6IFB1YmxpY0tleUZyb21TdHJpbmcsXG4gICAgICBhbW91bnQ6IHN0cmluZygpLFxuICAgICAgdWlBbW91bnQ6IG51bGxhYmxlKG51bWJlcigpKSxcbiAgICAgIGRlY2ltYWxzOiBudW1iZXIoKSxcbiAgICAgIHVpQW1vdW50U3RyaW5nOiBvcHRpb25hbChzdHJpbmcoKSksXG4gICAgfSksXG4gICksXG4pO1xuXG4vKipcbiAqIEV4cGVjdGVkIEpTT04gUlBDIHJlc3BvbnNlIGZvciB0aGUgXCJnZXRUb2tlbkFjY291bnRzQnlPd25lclwiIG1lc3NhZ2VcbiAqL1xuY29uc3QgR2V0VG9rZW5BY2NvdW50c0J5T3duZXIgPSBqc29uUnBjUmVzdWx0QW5kQ29udGV4dChcbiAgYXJyYXkoXG4gICAgcGljayh7XG4gICAgICBwdWJrZXk6IFB1YmxpY0tleUZyb21TdHJpbmcsXG4gICAgICBhY2NvdW50OiBwaWNrKHtcbiAgICAgICAgZXhlY3V0YWJsZTogYm9vbGVhbigpLFxuICAgICAgICBvd25lcjogUHVibGljS2V5RnJvbVN0cmluZyxcbiAgICAgICAgbGFtcG9ydHM6IG51bWJlcigpLFxuICAgICAgICBkYXRhOiBCdWZmZXJGcm9tUmF3QWNjb3VudERhdGEsXG4gICAgICAgIHJlbnRFcG9jaDogbnVtYmVyKCksXG4gICAgICB9KSxcbiAgICB9KSxcbiAgKSxcbik7XG5cbmNvbnN0IFBhcnNlZEFjY291bnREYXRhUmVzdWx0ID0gcGljayh7XG4gIHByb2dyYW06IHN0cmluZygpLFxuICBwYXJzZWQ6IHVua25vd24oKSxcbiAgc3BhY2U6IG51bWJlcigpLFxufSk7XG5cbi8qKlxuICogRXhwZWN0ZWQgSlNPTiBSUEMgcmVzcG9uc2UgZm9yIHRoZSBcImdldFRva2VuQWNjb3VudHNCeU93bmVyXCIgbWVzc2FnZSB3aXRoIHBhcnNlZCBkYXRhXG4gKi9cbmNvbnN0IEdldFBhcnNlZFRva2VuQWNjb3VudHNCeU93bmVyID0ganNvblJwY1Jlc3VsdEFuZENvbnRleHQoXG4gIGFycmF5KFxuICAgIHBpY2soe1xuICAgICAgcHVia2V5OiBQdWJsaWNLZXlGcm9tU3RyaW5nLFxuICAgICAgYWNjb3VudDogcGljayh7XG4gICAgICAgIGV4ZWN1dGFibGU6IGJvb2xlYW4oKSxcbiAgICAgICAgb3duZXI6IFB1YmxpY0tleUZyb21TdHJpbmcsXG4gICAgICAgIGxhbXBvcnRzOiBudW1iZXIoKSxcbiAgICAgICAgZGF0YTogUGFyc2VkQWNjb3VudERhdGFSZXN1bHQsXG4gICAgICAgIHJlbnRFcG9jaDogbnVtYmVyKCksXG4gICAgICB9KSxcbiAgICB9KSxcbiAgKSxcbik7XG5cbi8qKlxuICogUGFpciBvZiBhbiBhY2NvdW50IGFkZHJlc3MgYW5kIGl0cyBiYWxhbmNlXG4gKi9cbmV4cG9ydCB0eXBlIEFjY291bnRCYWxhbmNlUGFpciA9IHtcbiAgYWRkcmVzczogUHVibGljS2V5O1xuICBsYW1wb3J0czogbnVtYmVyO1xufTtcblxuLyoqXG4gKiBFeHBlY3RlZCBKU09OIFJQQyByZXNwb25zZSBmb3IgdGhlIFwiZ2V0TGFyZ2VzdEFjY291bnRzXCIgbWVzc2FnZVxuICovXG5jb25zdCBHZXRMYXJnZXN0QWNjb3VudHNScGNSZXN1bHQgPSBqc29uUnBjUmVzdWx0QW5kQ29udGV4dChcbiAgYXJyYXkoXG4gICAgcGljayh7XG4gICAgICBsYW1wb3J0czogbnVtYmVyKCksXG4gICAgICBhZGRyZXNzOiBQdWJsaWNLZXlGcm9tU3RyaW5nLFxuICAgIH0pLFxuICApLFxuKTtcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuY29uc3QgQWNjb3VudEluZm9SZXN1bHQgPSBwaWNrKHtcbiAgZXhlY3V0YWJsZTogYm9vbGVhbigpLFxuICBvd25lcjogUHVibGljS2V5RnJvbVN0cmluZyxcbiAgbGFtcG9ydHM6IG51bWJlcigpLFxuICBkYXRhOiBCdWZmZXJGcm9tUmF3QWNjb3VudERhdGEsXG4gIHJlbnRFcG9jaDogbnVtYmVyKCksXG59KTtcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuY29uc3QgS2V5ZWRBY2NvdW50SW5mb1Jlc3VsdCA9IHBpY2soe1xuICBwdWJrZXk6IFB1YmxpY0tleUZyb21TdHJpbmcsXG4gIGFjY291bnQ6IEFjY291bnRJbmZvUmVzdWx0LFxufSk7XG5cbmNvbnN0IFBhcnNlZE9yUmF3QWNjb3VudERhdGEgPSBjb2VyY2UoXG4gIHVuaW9uKFtpbnN0YW5jZShCdWZmZXIpLCBQYXJzZWRBY2NvdW50RGF0YVJlc3VsdF0pLFxuICB1bmlvbihbUmF3QWNjb3VudERhdGFSZXN1bHQsIFBhcnNlZEFjY291bnREYXRhUmVzdWx0XSksXG4gIHZhbHVlID0+IHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgIHJldHVybiBjcmVhdGUodmFsdWUsIEJ1ZmZlckZyb21SYXdBY2NvdW50RGF0YSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9XG4gIH0sXG4pO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5jb25zdCBQYXJzZWRBY2NvdW50SW5mb1Jlc3VsdCA9IHBpY2soe1xuICBleGVjdXRhYmxlOiBib29sZWFuKCksXG4gIG93bmVyOiBQdWJsaWNLZXlGcm9tU3RyaW5nLFxuICBsYW1wb3J0czogbnVtYmVyKCksXG4gIGRhdGE6IFBhcnNlZE9yUmF3QWNjb3VudERhdGEsXG4gIHJlbnRFcG9jaDogbnVtYmVyKCksXG59KTtcblxuY29uc3QgS2V5ZWRQYXJzZWRBY2NvdW50SW5mb1Jlc3VsdCA9IHBpY2soe1xuICBwdWJrZXk6IFB1YmxpY0tleUZyb21TdHJpbmcsXG4gIGFjY291bnQ6IFBhcnNlZEFjY291bnRJbmZvUmVzdWx0LFxufSk7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmNvbnN0IFN0YWtlQWN0aXZhdGlvblJlc3VsdCA9IHBpY2soe1xuICBzdGF0ZTogdW5pb24oW1xuICAgIGxpdGVyYWwoJ2FjdGl2ZScpLFxuICAgIGxpdGVyYWwoJ2luYWN0aXZlJyksXG4gICAgbGl0ZXJhbCgnYWN0aXZhdGluZycpLFxuICAgIGxpdGVyYWwoJ2RlYWN0aXZhdGluZycpLFxuICBdKSxcbiAgYWN0aXZlOiBudW1iZXIoKSxcbiAgaW5hY3RpdmU6IG51bWJlcigpLFxufSk7XG5cbi8qKlxuICogRXhwZWN0ZWQgSlNPTiBSUEMgcmVzcG9uc2UgZm9yIHRoZSBcImdldENvbmZpcm1lZFNpZ25hdHVyZXNGb3JBZGRyZXNzMlwiIG1lc3NhZ2VcbiAqL1xuXG5jb25zdCBHZXRDb25maXJtZWRTaWduYXR1cmVzRm9yQWRkcmVzczJScGNSZXN1bHQgPSBqc29uUnBjUmVzdWx0KFxuICBhcnJheShcbiAgICBwaWNrKHtcbiAgICAgIHNpZ25hdHVyZTogc3RyaW5nKCksXG4gICAgICBzbG90OiBudW1iZXIoKSxcbiAgICAgIGVycjogVHJhbnNhY3Rpb25FcnJvclJlc3VsdCxcbiAgICAgIG1lbW86IG51bGxhYmxlKHN0cmluZygpKSxcbiAgICAgIGJsb2NrVGltZTogb3B0aW9uYWwobnVsbGFibGUobnVtYmVyKCkpKSxcbiAgICB9KSxcbiAgKSxcbik7XG5cbi8qKlxuICogRXhwZWN0ZWQgSlNPTiBSUEMgcmVzcG9uc2UgZm9yIHRoZSBcImdldFNpZ25hdHVyZXNGb3JBZGRyZXNzXCIgbWVzc2FnZVxuICovXG5jb25zdCBHZXRTaWduYXR1cmVzRm9yQWRkcmVzc1JwY1Jlc3VsdCA9IGpzb25ScGNSZXN1bHQoXG4gIGFycmF5KFxuICAgIHBpY2soe1xuICAgICAgc2lnbmF0dXJlOiBzdHJpbmcoKSxcbiAgICAgIHNsb3Q6IG51bWJlcigpLFxuICAgICAgZXJyOiBUcmFuc2FjdGlvbkVycm9yUmVzdWx0LFxuICAgICAgbWVtbzogbnVsbGFibGUoc3RyaW5nKCkpLFxuICAgICAgYmxvY2tUaW1lOiBvcHRpb25hbChudWxsYWJsZShudW1iZXIoKSkpLFxuICAgIH0pLFxuICApLFxuKTtcblxuLyoqKlxuICogRXhwZWN0ZWQgSlNPTiBSUEMgcmVzcG9uc2UgZm9yIHRoZSBcImFjY291bnROb3RpZmljYXRpb25cIiBtZXNzYWdlXG4gKi9cbmNvbnN0IEFjY291bnROb3RpZmljYXRpb25SZXN1bHQgPSBwaWNrKHtcbiAgc3Vic2NyaXB0aW9uOiBudW1iZXIoKSxcbiAgcmVzdWx0OiBub3RpZmljYXRpb25SZXN1bHRBbmRDb250ZXh0KEFjY291bnRJbmZvUmVzdWx0KSxcbn0pO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5jb25zdCBQcm9ncmFtQWNjb3VudEluZm9SZXN1bHQgPSBwaWNrKHtcbiAgcHVia2V5OiBQdWJsaWNLZXlGcm9tU3RyaW5nLFxuICBhY2NvdW50OiBBY2NvdW50SW5mb1Jlc3VsdCxcbn0pO1xuXG4vKioqXG4gKiBFeHBlY3RlZCBKU09OIFJQQyByZXNwb25zZSBmb3IgdGhlIFwicHJvZ3JhbU5vdGlmaWNhdGlvblwiIG1lc3NhZ2VcbiAqL1xuY29uc3QgUHJvZ3JhbUFjY291bnROb3RpZmljYXRpb25SZXN1bHQgPSBwaWNrKHtcbiAgc3Vic2NyaXB0aW9uOiBudW1iZXIoKSxcbiAgcmVzdWx0OiBub3RpZmljYXRpb25SZXN1bHRBbmRDb250ZXh0KFByb2dyYW1BY2NvdW50SW5mb1Jlc3VsdCksXG59KTtcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuY29uc3QgU2xvdEluZm9SZXN1bHQgPSBwaWNrKHtcbiAgcGFyZW50OiBudW1iZXIoKSxcbiAgc2xvdDogbnVtYmVyKCksXG4gIHJvb3Q6IG51bWJlcigpLFxufSk7XG5cbi8qKlxuICogRXhwZWN0ZWQgSlNPTiBSUEMgcmVzcG9uc2UgZm9yIHRoZSBcInNsb3ROb3RpZmljYXRpb25cIiBtZXNzYWdlXG4gKi9cbmNvbnN0IFNsb3ROb3RpZmljYXRpb25SZXN1bHQgPSBwaWNrKHtcbiAgc3Vic2NyaXB0aW9uOiBudW1iZXIoKSxcbiAgcmVzdWx0OiBTbG90SW5mb1Jlc3VsdCxcbn0pO1xuXG4vKipcbiAqIFNsb3QgdXBkYXRlcyB3aGljaCBjYW4gYmUgdXNlZCBmb3IgdHJhY2tpbmcgdGhlIGxpdmUgcHJvZ3Jlc3Mgb2YgYSBjbHVzdGVyLlxuICogLSBgXCJmaXJzdFNocmVkUmVjZWl2ZWRcImA6IGNvbm5lY3RlZCBub2RlIHJlY2VpdmVkIHRoZSBmaXJzdCBzaHJlZCBvZiBhIGJsb2NrLlxuICogSW5kaWNhdGVzIHRoYXQgYSBuZXcgYmxvY2sgdGhhdCBpcyBiZWluZyBwcm9kdWNlZC5cbiAqIC0gYFwiY29tcGxldGVkXCJgOiBjb25uZWN0ZWQgbm9kZSBoYXMgcmVjZWl2ZWQgYWxsIHNocmVkcyBvZiBhIGJsb2NrLiBJbmRpY2F0ZXNcbiAqIGEgYmxvY2sgd2FzIHJlY2VudGx5IHByb2R1Y2VkLlxuICogLSBgXCJvcHRpbWlzdGljQ29uZmlybWF0aW9uXCJgOiBibG9jayB3YXMgb3B0aW1pc3RpY2FsbHkgY29uZmlybWVkIGJ5IHRoZVxuICogY2x1c3Rlci4gSXQgaXMgbm90IGd1YXJhbnRlZWQgdGhhdCBhbiBvcHRpbWlzdGljIGNvbmZpcm1hdGlvbiBub3RpZmljYXRpb25cbiAqIHdpbGwgYmUgc2VudCBmb3IgZXZlcnkgZmluYWxpemVkIGJsb2Nrcy5cbiAqIC0gYFwicm9vdFwiYDogdGhlIGNvbm5lY3RlZCBub2RlIHJvb3RlZCB0aGlzIGJsb2NrLlxuICogLSBgXCJjcmVhdGVkQmFua1wiYDogdGhlIGNvbm5lY3RlZCBub2RlIGhhcyBzdGFydGVkIHZhbGlkYXRpbmcgdGhpcyBibG9jay5cbiAqIC0gYFwiZnJvemVuXCJgOiB0aGUgY29ubmVjdGVkIG5vZGUgaGFzIHZhbGlkYXRlZCB0aGlzIGJsb2NrLlxuICogLSBgXCJkZWFkXCJgOiB0aGUgY29ubmVjdGVkIG5vZGUgZmFpbGVkIHRvIHZhbGlkYXRlIHRoaXMgYmxvY2suXG4gKi9cbmV4cG9ydCB0eXBlIFNsb3RVcGRhdGUgPVxuICB8IHtcbiAgICAgIHR5cGU6ICdmaXJzdFNocmVkUmVjZWl2ZWQnO1xuICAgICAgc2xvdDogbnVtYmVyO1xuICAgICAgdGltZXN0YW1wOiBudW1iZXI7XG4gICAgfVxuICB8IHtcbiAgICAgIHR5cGU6ICdjb21wbGV0ZWQnO1xuICAgICAgc2xvdDogbnVtYmVyO1xuICAgICAgdGltZXN0YW1wOiBudW1iZXI7XG4gICAgfVxuICB8IHtcbiAgICAgIHR5cGU6ICdjcmVhdGVkQmFuayc7XG4gICAgICBzbG90OiBudW1iZXI7XG4gICAgICB0aW1lc3RhbXA6IG51bWJlcjtcbiAgICAgIHBhcmVudDogbnVtYmVyO1xuICAgIH1cbiAgfCB7XG4gICAgICB0eXBlOiAnZnJvemVuJztcbiAgICAgIHNsb3Q6IG51bWJlcjtcbiAgICAgIHRpbWVzdGFtcDogbnVtYmVyO1xuICAgICAgc3RhdHM6IHtcbiAgICAgICAgbnVtVHJhbnNhY3Rpb25FbnRyaWVzOiBudW1iZXI7XG4gICAgICAgIG51bVN1Y2Nlc3NmdWxUcmFuc2FjdGlvbnM6IG51bWJlcjtcbiAgICAgICAgbnVtRmFpbGVkVHJhbnNhY3Rpb25zOiBudW1iZXI7XG4gICAgICAgIG1heFRyYW5zYWN0aW9uc1BlckVudHJ5OiBudW1iZXI7XG4gICAgICB9O1xuICAgIH1cbiAgfCB7XG4gICAgICB0eXBlOiAnZGVhZCc7XG4gICAgICBzbG90OiBudW1iZXI7XG4gICAgICB0aW1lc3RhbXA6IG51bWJlcjtcbiAgICAgIGVycjogc3RyaW5nO1xuICAgIH1cbiAgfCB7XG4gICAgICB0eXBlOiAnb3B0aW1pc3RpY0NvbmZpcm1hdGlvbic7XG4gICAgICBzbG90OiBudW1iZXI7XG4gICAgICB0aW1lc3RhbXA6IG51bWJlcjtcbiAgICB9XG4gIHwge1xuICAgICAgdHlwZTogJ3Jvb3QnO1xuICAgICAgc2xvdDogbnVtYmVyO1xuICAgICAgdGltZXN0YW1wOiBudW1iZXI7XG4gICAgfTtcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuY29uc3QgU2xvdFVwZGF0ZVJlc3VsdCA9IHVuaW9uKFtcbiAgcGljayh7XG4gICAgdHlwZTogdW5pb24oW1xuICAgICAgbGl0ZXJhbCgnZmlyc3RTaHJlZFJlY2VpdmVkJyksXG4gICAgICBsaXRlcmFsKCdjb21wbGV0ZWQnKSxcbiAgICAgIGxpdGVyYWwoJ29wdGltaXN0aWNDb25maXJtYXRpb24nKSxcbiAgICAgIGxpdGVyYWwoJ3Jvb3QnKSxcbiAgICBdKSxcbiAgICBzbG90OiBudW1iZXIoKSxcbiAgICB0aW1lc3RhbXA6IG51bWJlcigpLFxuICB9KSxcbiAgcGljayh7XG4gICAgdHlwZTogbGl0ZXJhbCgnY3JlYXRlZEJhbmsnKSxcbiAgICBwYXJlbnQ6IG51bWJlcigpLFxuICAgIHNsb3Q6IG51bWJlcigpLFxuICAgIHRpbWVzdGFtcDogbnVtYmVyKCksXG4gIH0pLFxuICBwaWNrKHtcbiAgICB0eXBlOiBsaXRlcmFsKCdmcm96ZW4nKSxcbiAgICBzbG90OiBudW1iZXIoKSxcbiAgICB0aW1lc3RhbXA6IG51bWJlcigpLFxuICAgIHN0YXRzOiBwaWNrKHtcbiAgICAgIG51bVRyYW5zYWN0aW9uRW50cmllczogbnVtYmVyKCksXG4gICAgICBudW1TdWNjZXNzZnVsVHJhbnNhY3Rpb25zOiBudW1iZXIoKSxcbiAgICAgIG51bUZhaWxlZFRyYW5zYWN0aW9uczogbnVtYmVyKCksXG4gICAgICBtYXhUcmFuc2FjdGlvbnNQZXJFbnRyeTogbnVtYmVyKCksXG4gICAgfSksXG4gIH0pLFxuICBwaWNrKHtcbiAgICB0eXBlOiBsaXRlcmFsKCdkZWFkJyksXG4gICAgc2xvdDogbnVtYmVyKCksXG4gICAgdGltZXN0YW1wOiBudW1iZXIoKSxcbiAgICBlcnI6IHN0cmluZygpLFxuICB9KSxcbl0pO1xuXG4vKipcbiAqIEV4cGVjdGVkIEpTT04gUlBDIHJlc3BvbnNlIGZvciB0aGUgXCJzbG90c1VwZGF0ZXNOb3RpZmljYXRpb25cIiBtZXNzYWdlXG4gKi9cbmNvbnN0IFNsb3RVcGRhdGVOb3RpZmljYXRpb25SZXN1bHQgPSBwaWNrKHtcbiAgc3Vic2NyaXB0aW9uOiBudW1iZXIoKSxcbiAgcmVzdWx0OiBTbG90VXBkYXRlUmVzdWx0LFxufSk7XG5cbi8qKlxuICogRXhwZWN0ZWQgSlNPTiBSUEMgcmVzcG9uc2UgZm9yIHRoZSBcInNpZ25hdHVyZU5vdGlmaWNhdGlvblwiIG1lc3NhZ2VcbiAqL1xuY29uc3QgU2lnbmF0dXJlTm90aWZpY2F0aW9uUmVzdWx0ID0gcGljayh7XG4gIHN1YnNjcmlwdGlvbjogbnVtYmVyKCksXG4gIHJlc3VsdDogbm90aWZpY2F0aW9uUmVzdWx0QW5kQ29udGV4dChcbiAgICB1bmlvbihbU2lnbmF0dXJlU3RhdHVzUmVzdWx0LCBTaWduYXR1cmVSZWNlaXZlZFJlc3VsdF0pLFxuICApLFxufSk7XG5cbi8qKlxuICogRXhwZWN0ZWQgSlNPTiBSUEMgcmVzcG9uc2UgZm9yIHRoZSBcInJvb3ROb3RpZmljYXRpb25cIiBtZXNzYWdlXG4gKi9cbmNvbnN0IFJvb3ROb3RpZmljYXRpb25SZXN1bHQgPSBwaWNrKHtcbiAgc3Vic2NyaXB0aW9uOiBudW1iZXIoKSxcbiAgcmVzdWx0OiBudW1iZXIoKSxcbn0pO1xuXG5jb25zdCBDb250YWN0SW5mb1Jlc3VsdCA9IHBpY2soe1xuICBwdWJrZXk6IHN0cmluZygpLFxuICBnb3NzaXA6IG51bGxhYmxlKHN0cmluZygpKSxcbiAgdHB1OiBudWxsYWJsZShzdHJpbmcoKSksXG4gIHJwYzogbnVsbGFibGUoc3RyaW5nKCkpLFxuICB2ZXJzaW9uOiBudWxsYWJsZShzdHJpbmcoKSksXG59KTtcblxuY29uc3QgVm90ZUFjY291bnRJbmZvUmVzdWx0ID0gcGljayh7XG4gIHZvdGVQdWJrZXk6IHN0cmluZygpLFxuICBub2RlUHVia2V5OiBzdHJpbmcoKSxcbiAgYWN0aXZhdGVkU3Rha2U6IG51bWJlcigpLFxuICBlcG9jaFZvdGVBY2NvdW50OiBib29sZWFuKCksXG4gIGVwb2NoQ3JlZGl0czogYXJyYXkodHVwbGUoW251bWJlcigpLCBudW1iZXIoKSwgbnVtYmVyKCldKSksXG4gIGNvbW1pc3Npb246IG51bWJlcigpLFxuICBsYXN0Vm90ZTogbnVtYmVyKCksXG4gIHJvb3RTbG90OiBudWxsYWJsZShudW1iZXIoKSksXG59KTtcblxuLyoqXG4gKiBFeHBlY3RlZCBKU09OIFJQQyByZXNwb25zZSBmb3IgdGhlIFwiZ2V0Vm90ZUFjY291bnRzXCIgbWVzc2FnZVxuICovXG5jb25zdCBHZXRWb3RlQWNjb3VudHMgPSBqc29uUnBjUmVzdWx0KFxuICBwaWNrKHtcbiAgICBjdXJyZW50OiBhcnJheShWb3RlQWNjb3VudEluZm9SZXN1bHQpLFxuICAgIGRlbGlucXVlbnQ6IGFycmF5KFZvdGVBY2NvdW50SW5mb1Jlc3VsdCksXG4gIH0pLFxuKTtcblxuY29uc3QgQ29uZmlybWF0aW9uU3RhdHVzID0gdW5pb24oW1xuICBsaXRlcmFsKCdwcm9jZXNzZWQnKSxcbiAgbGl0ZXJhbCgnY29uZmlybWVkJyksXG4gIGxpdGVyYWwoJ2ZpbmFsaXplZCcpLFxuXSk7XG5cbmNvbnN0IFNpZ25hdHVyZVN0YXR1c1Jlc3BvbnNlID0gcGljayh7XG4gIHNsb3Q6IG51bWJlcigpLFxuICBjb25maXJtYXRpb25zOiBudWxsYWJsZShudW1iZXIoKSksXG4gIGVycjogVHJhbnNhY3Rpb25FcnJvclJlc3VsdCxcbiAgY29uZmlybWF0aW9uU3RhdHVzOiBvcHRpb25hbChDb25maXJtYXRpb25TdGF0dXMpLFxufSk7XG5cbi8qKlxuICogRXhwZWN0ZWQgSlNPTiBSUEMgcmVzcG9uc2UgZm9yIHRoZSBcImdldFNpZ25hdHVyZVN0YXR1c2VzXCIgbWVzc2FnZVxuICovXG5jb25zdCBHZXRTaWduYXR1cmVTdGF0dXNlc1JwY1Jlc3VsdCA9IGpzb25ScGNSZXN1bHRBbmRDb250ZXh0KFxuICBhcnJheShudWxsYWJsZShTaWduYXR1cmVTdGF0dXNSZXNwb25zZSkpLFxuKTtcblxuLyoqXG4gKiBFeHBlY3RlZCBKU09OIFJQQyByZXNwb25zZSBmb3IgdGhlIFwiZ2V0TWluaW11bUJhbGFuY2VGb3JSZW50RXhlbXB0aW9uXCIgbWVzc2FnZVxuICovXG5jb25zdCBHZXRNaW5pbXVtQmFsYW5jZUZvclJlbnRFeGVtcHRpb25ScGNSZXN1bHQgPSBqc29uUnBjUmVzdWx0KG51bWJlcigpKTtcblxuY29uc3QgQWRkcmVzc1RhYmxlTG9va3VwU3RydWN0ID0gcGljayh7XG4gIGFjY291bnRLZXk6IFB1YmxpY0tleUZyb21TdHJpbmcsXG4gIHdyaXRhYmxlSW5kZXhlczogYXJyYXkobnVtYmVyKCkpLFxuICByZWFkb25seUluZGV4ZXM6IGFycmF5KG51bWJlcigpKSxcbn0pO1xuXG5jb25zdCBDb25maXJtZWRUcmFuc2FjdGlvblJlc3VsdCA9IHBpY2soe1xuICBzaWduYXR1cmVzOiBhcnJheShzdHJpbmcoKSksXG4gIG1lc3NhZ2U6IHBpY2soe1xuICAgIGFjY291bnRLZXlzOiBhcnJheShzdHJpbmcoKSksXG4gICAgaGVhZGVyOiBwaWNrKHtcbiAgICAgIG51bVJlcXVpcmVkU2lnbmF0dXJlczogbnVtYmVyKCksXG4gICAgICBudW1SZWFkb25seVNpZ25lZEFjY291bnRzOiBudW1iZXIoKSxcbiAgICAgIG51bVJlYWRvbmx5VW5zaWduZWRBY2NvdW50czogbnVtYmVyKCksXG4gICAgfSksXG4gICAgaW5zdHJ1Y3Rpb25zOiBhcnJheShcbiAgICAgIHBpY2soe1xuICAgICAgICBhY2NvdW50czogYXJyYXkobnVtYmVyKCkpLFxuICAgICAgICBkYXRhOiBzdHJpbmcoKSxcbiAgICAgICAgcHJvZ3JhbUlkSW5kZXg6IG51bWJlcigpLFxuICAgICAgfSksXG4gICAgKSxcbiAgICByZWNlbnRCbG9ja2hhc2g6IHN0cmluZygpLFxuICAgIGFkZHJlc3NUYWJsZUxvb2t1cHM6IG9wdGlvbmFsKGFycmF5KEFkZHJlc3NUYWJsZUxvb2t1cFN0cnVjdCkpLFxuICB9KSxcbn0pO1xuXG5jb25zdCBBbm5vdGF0ZWRBY2NvdW50S2V5ID0gcGljayh7XG4gIHB1YmtleTogUHVibGljS2V5RnJvbVN0cmluZyxcbiAgc2lnbmVyOiBib29sZWFuKCksXG4gIHdyaXRhYmxlOiBib29sZWFuKCksXG4gIHNvdXJjZTogb3B0aW9uYWwodW5pb24oW2xpdGVyYWwoJ3RyYW5zYWN0aW9uJyksIGxpdGVyYWwoJ2xvb2t1cFRhYmxlJyldKSksXG59KTtcblxuY29uc3QgQ29uZmlybWVkVHJhbnNhY3Rpb25BY2NvdW50c01vZGVSZXN1bHQgPSBwaWNrKHtcbiAgYWNjb3VudEtleXM6IGFycmF5KEFubm90YXRlZEFjY291bnRLZXkpLFxuICBzaWduYXR1cmVzOiBhcnJheShzdHJpbmcoKSksXG59KTtcblxuY29uc3QgUGFyc2VkSW5zdHJ1Y3Rpb25SZXN1bHQgPSBwaWNrKHtcbiAgcGFyc2VkOiB1bmtub3duKCksXG4gIHByb2dyYW06IHN0cmluZygpLFxuICBwcm9ncmFtSWQ6IFB1YmxpY0tleUZyb21TdHJpbmcsXG59KTtcblxuY29uc3QgUmF3SW5zdHJ1Y3Rpb25SZXN1bHQgPSBwaWNrKHtcbiAgYWNjb3VudHM6IGFycmF5KFB1YmxpY0tleUZyb21TdHJpbmcpLFxuICBkYXRhOiBzdHJpbmcoKSxcbiAgcHJvZ3JhbUlkOiBQdWJsaWNLZXlGcm9tU3RyaW5nLFxufSk7XG5cbmNvbnN0IEluc3RydWN0aW9uUmVzdWx0ID0gdW5pb24oW1xuICBSYXdJbnN0cnVjdGlvblJlc3VsdCxcbiAgUGFyc2VkSW5zdHJ1Y3Rpb25SZXN1bHQsXG5dKTtcblxuY29uc3QgVW5rbm93bkluc3RydWN0aW9uUmVzdWx0ID0gdW5pb24oW1xuICBwaWNrKHtcbiAgICBwYXJzZWQ6IHVua25vd24oKSxcbiAgICBwcm9ncmFtOiBzdHJpbmcoKSxcbiAgICBwcm9ncmFtSWQ6IHN0cmluZygpLFxuICB9KSxcbiAgcGljayh7XG4gICAgYWNjb3VudHM6IGFycmF5KHN0cmluZygpKSxcbiAgICBkYXRhOiBzdHJpbmcoKSxcbiAgICBwcm9ncmFtSWQ6IHN0cmluZygpLFxuICB9KSxcbl0pO1xuXG5jb25zdCBQYXJzZWRPclJhd0luc3RydWN0aW9uID0gY29lcmNlKFxuICBJbnN0cnVjdGlvblJlc3VsdCxcbiAgVW5rbm93bkluc3RydWN0aW9uUmVzdWx0LFxuICB2YWx1ZSA9PiB7XG4gICAgaWYgKCdhY2NvdW50cycgaW4gdmFsdWUpIHtcbiAgICAgIHJldHVybiBjcmVhdGUodmFsdWUsIFJhd0luc3RydWN0aW9uUmVzdWx0KTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGNyZWF0ZSh2YWx1ZSwgUGFyc2VkSW5zdHJ1Y3Rpb25SZXN1bHQpO1xuICAgIH1cbiAgfSxcbik7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmNvbnN0IFBhcnNlZENvbmZpcm1lZFRyYW5zYWN0aW9uUmVzdWx0ID0gcGljayh7XG4gIHNpZ25hdHVyZXM6IGFycmF5KHN0cmluZygpKSxcbiAgbWVzc2FnZTogcGljayh7XG4gICAgYWNjb3VudEtleXM6IGFycmF5KEFubm90YXRlZEFjY291bnRLZXkpLFxuICAgIGluc3RydWN0aW9uczogYXJyYXkoUGFyc2VkT3JSYXdJbnN0cnVjdGlvbiksXG4gICAgcmVjZW50QmxvY2toYXNoOiBzdHJpbmcoKSxcbiAgICBhZGRyZXNzVGFibGVMb29rdXBzOiBvcHRpb25hbChudWxsYWJsZShhcnJheShBZGRyZXNzVGFibGVMb29rdXBTdHJ1Y3QpKSksXG4gIH0pLFxufSk7XG5cbmNvbnN0IFRva2VuQmFsYW5jZVJlc3VsdCA9IHBpY2soe1xuICBhY2NvdW50SW5kZXg6IG51bWJlcigpLFxuICBtaW50OiBzdHJpbmcoKSxcbiAgb3duZXI6IG9wdGlvbmFsKHN0cmluZygpKSxcbiAgdWlUb2tlbkFtb3VudDogVG9rZW5BbW91bnRSZXN1bHQsXG59KTtcblxuY29uc3QgTG9hZGVkQWRkcmVzc2VzUmVzdWx0ID0gcGljayh7XG4gIHdyaXRhYmxlOiBhcnJheShQdWJsaWNLZXlGcm9tU3RyaW5nKSxcbiAgcmVhZG9ubHk6IGFycmF5KFB1YmxpY0tleUZyb21TdHJpbmcpLFxufSk7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmNvbnN0IENvbmZpcm1lZFRyYW5zYWN0aW9uTWV0YVJlc3VsdCA9IHBpY2soe1xuICBlcnI6IFRyYW5zYWN0aW9uRXJyb3JSZXN1bHQsXG4gIGZlZTogbnVtYmVyKCksXG4gIGlubmVySW5zdHJ1Y3Rpb25zOiBvcHRpb25hbChcbiAgICBudWxsYWJsZShcbiAgICAgIGFycmF5KFxuICAgICAgICBwaWNrKHtcbiAgICAgICAgICBpbmRleDogbnVtYmVyKCksXG4gICAgICAgICAgaW5zdHJ1Y3Rpb25zOiBhcnJheShcbiAgICAgICAgICAgIHBpY2soe1xuICAgICAgICAgICAgICBhY2NvdW50czogYXJyYXkobnVtYmVyKCkpLFxuICAgICAgICAgICAgICBkYXRhOiBzdHJpbmcoKSxcbiAgICAgICAgICAgICAgcHJvZ3JhbUlkSW5kZXg6IG51bWJlcigpLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgKSxcbiAgICAgICAgfSksXG4gICAgICApLFxuICAgICksXG4gICksXG4gIHByZUJhbGFuY2VzOiBhcnJheShudW1iZXIoKSksXG4gIHBvc3RCYWxhbmNlczogYXJyYXkobnVtYmVyKCkpLFxuICBsb2dNZXNzYWdlczogb3B0aW9uYWwobnVsbGFibGUoYXJyYXkoc3RyaW5nKCkpKSksXG4gIHByZVRva2VuQmFsYW5jZXM6IG9wdGlvbmFsKG51bGxhYmxlKGFycmF5KFRva2VuQmFsYW5jZVJlc3VsdCkpKSxcbiAgcG9zdFRva2VuQmFsYW5jZXM6IG9wdGlvbmFsKG51bGxhYmxlKGFycmF5KFRva2VuQmFsYW5jZVJlc3VsdCkpKSxcbiAgbG9hZGVkQWRkcmVzc2VzOiBvcHRpb25hbChMb2FkZWRBZGRyZXNzZXNSZXN1bHQpLFxuICBjb21wdXRlVW5pdHNDb25zdW1lZDogb3B0aW9uYWwobnVtYmVyKCkpLFxufSk7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmNvbnN0IFBhcnNlZENvbmZpcm1lZFRyYW5zYWN0aW9uTWV0YVJlc3VsdCA9IHBpY2soe1xuICBlcnI6IFRyYW5zYWN0aW9uRXJyb3JSZXN1bHQsXG4gIGZlZTogbnVtYmVyKCksXG4gIGlubmVySW5zdHJ1Y3Rpb25zOiBvcHRpb25hbChcbiAgICBudWxsYWJsZShcbiAgICAgIGFycmF5KFxuICAgICAgICBwaWNrKHtcbiAgICAgICAgICBpbmRleDogbnVtYmVyKCksXG4gICAgICAgICAgaW5zdHJ1Y3Rpb25zOiBhcnJheShQYXJzZWRPclJhd0luc3RydWN0aW9uKSxcbiAgICAgICAgfSksXG4gICAgICApLFxuICAgICksXG4gICksXG4gIHByZUJhbGFuY2VzOiBhcnJheShudW1iZXIoKSksXG4gIHBvc3RCYWxhbmNlczogYXJyYXkobnVtYmVyKCkpLFxuICBsb2dNZXNzYWdlczogb3B0aW9uYWwobnVsbGFibGUoYXJyYXkoc3RyaW5nKCkpKSksXG4gIHByZVRva2VuQmFsYW5jZXM6IG9wdGlvbmFsKG51bGxhYmxlKGFycmF5KFRva2VuQmFsYW5jZVJlc3VsdCkpKSxcbiAgcG9zdFRva2VuQmFsYW5jZXM6IG9wdGlvbmFsKG51bGxhYmxlKGFycmF5KFRva2VuQmFsYW5jZVJlc3VsdCkpKSxcbiAgbG9hZGVkQWRkcmVzc2VzOiBvcHRpb25hbChMb2FkZWRBZGRyZXNzZXNSZXN1bHQpLFxuICBjb21wdXRlVW5pdHNDb25zdW1lZDogb3B0aW9uYWwobnVtYmVyKCkpLFxufSk7XG5cbmNvbnN0IFRyYW5zYWN0aW9uVmVyc2lvblN0cnVjdCA9IHVuaW9uKFtsaXRlcmFsKDApLCBsaXRlcmFsKCdsZWdhY3knKV0pO1xuXG4vKiogQGludGVybmFsICovXG5jb25zdCBSZXdhcmRzUmVzdWx0ID0gcGljayh7XG4gIHB1YmtleTogc3RyaW5nKCksXG4gIGxhbXBvcnRzOiBudW1iZXIoKSxcbiAgcG9zdEJhbGFuY2U6IG51bGxhYmxlKG51bWJlcigpKSxcbiAgcmV3YXJkVHlwZTogbnVsbGFibGUoc3RyaW5nKCkpLFxuICBjb21taXNzaW9uOiBvcHRpb25hbChudWxsYWJsZShudW1iZXIoKSkpLFxufSk7XG5cbi8qKlxuICogRXhwZWN0ZWQgSlNPTiBSUEMgcmVzcG9uc2UgZm9yIHRoZSBcImdldEJsb2NrXCIgbWVzc2FnZVxuICovXG5jb25zdCBHZXRCbG9ja1JwY1Jlc3VsdCA9IGpzb25ScGNSZXN1bHQoXG4gIG51bGxhYmxlKFxuICAgIHBpY2soe1xuICAgICAgYmxvY2toYXNoOiBzdHJpbmcoKSxcbiAgICAgIHByZXZpb3VzQmxvY2toYXNoOiBzdHJpbmcoKSxcbiAgICAgIHBhcmVudFNsb3Q6IG51bWJlcigpLFxuICAgICAgdHJhbnNhY3Rpb25zOiBhcnJheShcbiAgICAgICAgcGljayh7XG4gICAgICAgICAgdHJhbnNhY3Rpb246IENvbmZpcm1lZFRyYW5zYWN0aW9uUmVzdWx0LFxuICAgICAgICAgIG1ldGE6IG51bGxhYmxlKENvbmZpcm1lZFRyYW5zYWN0aW9uTWV0YVJlc3VsdCksXG4gICAgICAgICAgdmVyc2lvbjogb3B0aW9uYWwoVHJhbnNhY3Rpb25WZXJzaW9uU3RydWN0KSxcbiAgICAgICAgfSksXG4gICAgICApLFxuICAgICAgcmV3YXJkczogb3B0aW9uYWwoYXJyYXkoUmV3YXJkc1Jlc3VsdCkpLFxuICAgICAgYmxvY2tUaW1lOiBudWxsYWJsZShudW1iZXIoKSksXG4gICAgICBibG9ja0hlaWdodDogbnVsbGFibGUobnVtYmVyKCkpLFxuICAgIH0pLFxuICApLFxuKTtcblxuLyoqXG4gKiBFeHBlY3RlZCBKU09OIFJQQyByZXNwb25zZSBmb3IgdGhlIFwiZ2V0QmxvY2tcIiBtZXNzYWdlIHdoZW4gYHRyYW5zYWN0aW9uRGV0YWlsc2AgaXMgYG5vbmVgXG4gKi9cbmNvbnN0IEdldE5vbmVNb2RlQmxvY2tScGNSZXN1bHQgPSBqc29uUnBjUmVzdWx0KFxuICBudWxsYWJsZShcbiAgICBwaWNrKHtcbiAgICAgIGJsb2NraGFzaDogc3RyaW5nKCksXG4gICAgICBwcmV2aW91c0Jsb2NraGFzaDogc3RyaW5nKCksXG4gICAgICBwYXJlbnRTbG90OiBudW1iZXIoKSxcbiAgICAgIHJld2FyZHM6IG9wdGlvbmFsKGFycmF5KFJld2FyZHNSZXN1bHQpKSxcbiAgICAgIGJsb2NrVGltZTogbnVsbGFibGUobnVtYmVyKCkpLFxuICAgICAgYmxvY2tIZWlnaHQ6IG51bGxhYmxlKG51bWJlcigpKSxcbiAgICB9KSxcbiAgKSxcbik7XG5cbi8qKlxuICogRXhwZWN0ZWQgSlNPTiBSUEMgcmVzcG9uc2UgZm9yIHRoZSBcImdldEJsb2NrXCIgbWVzc2FnZSB3aGVuIGB0cmFuc2FjdGlvbkRldGFpbHNgIGlzIGBhY2NvdW50c2BcbiAqL1xuY29uc3QgR2V0QWNjb3VudHNNb2RlQmxvY2tScGNSZXN1bHQgPSBqc29uUnBjUmVzdWx0KFxuICBudWxsYWJsZShcbiAgICBwaWNrKHtcbiAgICAgIGJsb2NraGFzaDogc3RyaW5nKCksXG4gICAgICBwcmV2aW91c0Jsb2NraGFzaDogc3RyaW5nKCksXG4gICAgICBwYXJlbnRTbG90OiBudW1iZXIoKSxcbiAgICAgIHRyYW5zYWN0aW9uczogYXJyYXkoXG4gICAgICAgIHBpY2soe1xuICAgICAgICAgIHRyYW5zYWN0aW9uOiBDb25maXJtZWRUcmFuc2FjdGlvbkFjY291bnRzTW9kZVJlc3VsdCxcbiAgICAgICAgICBtZXRhOiBudWxsYWJsZShDb25maXJtZWRUcmFuc2FjdGlvbk1ldGFSZXN1bHQpLFxuICAgICAgICAgIHZlcnNpb246IG9wdGlvbmFsKFRyYW5zYWN0aW9uVmVyc2lvblN0cnVjdCksXG4gICAgICAgIH0pLFxuICAgICAgKSxcbiAgICAgIHJld2FyZHM6IG9wdGlvbmFsKGFycmF5KFJld2FyZHNSZXN1bHQpKSxcbiAgICAgIGJsb2NrVGltZTogbnVsbGFibGUobnVtYmVyKCkpLFxuICAgICAgYmxvY2tIZWlnaHQ6IG51bGxhYmxlKG51bWJlcigpKSxcbiAgICB9KSxcbiAgKSxcbik7XG5cbi8qKlxuICogRXhwZWN0ZWQgcGFyc2VkIEpTT04gUlBDIHJlc3BvbnNlIGZvciB0aGUgXCJnZXRCbG9ja1wiIG1lc3NhZ2VcbiAqL1xuY29uc3QgR2V0UGFyc2VkQmxvY2tScGNSZXN1bHQgPSBqc29uUnBjUmVzdWx0KFxuICBudWxsYWJsZShcbiAgICBwaWNrKHtcbiAgICAgIGJsb2NraGFzaDogc3RyaW5nKCksXG4gICAgICBwcmV2aW91c0Jsb2NraGFzaDogc3RyaW5nKCksXG4gICAgICBwYXJlbnRTbG90OiBudW1iZXIoKSxcbiAgICAgIHRyYW5zYWN0aW9uczogYXJyYXkoXG4gICAgICAgIHBpY2soe1xuICAgICAgICAgIHRyYW5zYWN0aW9uOiBQYXJzZWRDb25maXJtZWRUcmFuc2FjdGlvblJlc3VsdCxcbiAgICAgICAgICBtZXRhOiBudWxsYWJsZShQYXJzZWRDb25maXJtZWRUcmFuc2FjdGlvbk1ldGFSZXN1bHQpLFxuICAgICAgICAgIHZlcnNpb246IG9wdGlvbmFsKFRyYW5zYWN0aW9uVmVyc2lvblN0cnVjdCksXG4gICAgICAgIH0pLFxuICAgICAgKSxcbiAgICAgIHJld2FyZHM6IG9wdGlvbmFsKGFycmF5KFJld2FyZHNSZXN1bHQpKSxcbiAgICAgIGJsb2NrVGltZTogbnVsbGFibGUobnVtYmVyKCkpLFxuICAgICAgYmxvY2tIZWlnaHQ6IG51bGxhYmxlKG51bWJlcigpKSxcbiAgICB9KSxcbiAgKSxcbik7XG5cbi8qKlxuICogRXhwZWN0ZWQgcGFyc2VkIEpTT04gUlBDIHJlc3BvbnNlIGZvciB0aGUgXCJnZXRCbG9ja1wiIG1lc3NhZ2UgIHdoZW4gYHRyYW5zYWN0aW9uRGV0YWlsc2AgaXMgYGFjY291bnRzYFxuICovXG5jb25zdCBHZXRQYXJzZWRBY2NvdW50c01vZGVCbG9ja1JwY1Jlc3VsdCA9IGpzb25ScGNSZXN1bHQoXG4gIG51bGxhYmxlKFxuICAgIHBpY2soe1xuICAgICAgYmxvY2toYXNoOiBzdHJpbmcoKSxcbiAgICAgIHByZXZpb3VzQmxvY2toYXNoOiBzdHJpbmcoKSxcbiAgICAgIHBhcmVudFNsb3Q6IG51bWJlcigpLFxuICAgICAgdHJhbnNhY3Rpb25zOiBhcnJheShcbiAgICAgICAgcGljayh7XG4gICAgICAgICAgdHJhbnNhY3Rpb246IENvbmZpcm1lZFRyYW5zYWN0aW9uQWNjb3VudHNNb2RlUmVzdWx0LFxuICAgICAgICAgIG1ldGE6IG51bGxhYmxlKFBhcnNlZENvbmZpcm1lZFRyYW5zYWN0aW9uTWV0YVJlc3VsdCksXG4gICAgICAgICAgdmVyc2lvbjogb3B0aW9uYWwoVHJhbnNhY3Rpb25WZXJzaW9uU3RydWN0KSxcbiAgICAgICAgfSksXG4gICAgICApLFxuICAgICAgcmV3YXJkczogb3B0aW9uYWwoYXJyYXkoUmV3YXJkc1Jlc3VsdCkpLFxuICAgICAgYmxvY2tUaW1lOiBudWxsYWJsZShudW1iZXIoKSksXG4gICAgICBibG9ja0hlaWdodDogbnVsbGFibGUobnVtYmVyKCkpLFxuICAgIH0pLFxuICApLFxuKTtcblxuLyoqXG4gKiBFeHBlY3RlZCBwYXJzZWQgSlNPTiBSUEMgcmVzcG9uc2UgZm9yIHRoZSBcImdldEJsb2NrXCIgbWVzc2FnZSAgd2hlbiBgdHJhbnNhY3Rpb25EZXRhaWxzYCBpcyBgbm9uZWBcbiAqL1xuY29uc3QgR2V0UGFyc2VkTm9uZU1vZGVCbG9ja1JwY1Jlc3VsdCA9IGpzb25ScGNSZXN1bHQoXG4gIG51bGxhYmxlKFxuICAgIHBpY2soe1xuICAgICAgYmxvY2toYXNoOiBzdHJpbmcoKSxcbiAgICAgIHByZXZpb3VzQmxvY2toYXNoOiBzdHJpbmcoKSxcbiAgICAgIHBhcmVudFNsb3Q6IG51bWJlcigpLFxuICAgICAgcmV3YXJkczogb3B0aW9uYWwoYXJyYXkoUmV3YXJkc1Jlc3VsdCkpLFxuICAgICAgYmxvY2tUaW1lOiBudWxsYWJsZShudW1iZXIoKSksXG4gICAgICBibG9ja0hlaWdodDogbnVsbGFibGUobnVtYmVyKCkpLFxuICAgIH0pLFxuICApLFxuKTtcblxuLyoqXG4gKiBFeHBlY3RlZCBKU09OIFJQQyByZXNwb25zZSBmb3IgdGhlIFwiZ2V0Q29uZmlybWVkQmxvY2tcIiBtZXNzYWdlXG4gKlxuICogQGRlcHJlY2F0ZWQgRGVwcmVjYXRlZCBzaW5jZSBTb2xhbmEgdjEuOC4wLiBQbGVhc2UgdXNlIHtAbGluayBHZXRCbG9ja1JwY1Jlc3VsdH0gaW5zdGVhZC5cbiAqL1xuY29uc3QgR2V0Q29uZmlybWVkQmxvY2tScGNSZXN1bHQgPSBqc29uUnBjUmVzdWx0KFxuICBudWxsYWJsZShcbiAgICBwaWNrKHtcbiAgICAgIGJsb2NraGFzaDogc3RyaW5nKCksXG4gICAgICBwcmV2aW91c0Jsb2NraGFzaDogc3RyaW5nKCksXG4gICAgICBwYXJlbnRTbG90OiBudW1iZXIoKSxcbiAgICAgIHRyYW5zYWN0aW9uczogYXJyYXkoXG4gICAgICAgIHBpY2soe1xuICAgICAgICAgIHRyYW5zYWN0aW9uOiBDb25maXJtZWRUcmFuc2FjdGlvblJlc3VsdCxcbiAgICAgICAgICBtZXRhOiBudWxsYWJsZShDb25maXJtZWRUcmFuc2FjdGlvbk1ldGFSZXN1bHQpLFxuICAgICAgICB9KSxcbiAgICAgICksXG4gICAgICByZXdhcmRzOiBvcHRpb25hbChhcnJheShSZXdhcmRzUmVzdWx0KSksXG4gICAgICBibG9ja1RpbWU6IG51bGxhYmxlKG51bWJlcigpKSxcbiAgICB9KSxcbiAgKSxcbik7XG5cbi8qKlxuICogRXhwZWN0ZWQgSlNPTiBSUEMgcmVzcG9uc2UgZm9yIHRoZSBcImdldEJsb2NrXCIgbWVzc2FnZVxuICovXG5jb25zdCBHZXRCbG9ja1NpZ25hdHVyZXNScGNSZXN1bHQgPSBqc29uUnBjUmVzdWx0KFxuICBudWxsYWJsZShcbiAgICBwaWNrKHtcbiAgICAgIGJsb2NraGFzaDogc3RyaW5nKCksXG4gICAgICBwcmV2aW91c0Jsb2NraGFzaDogc3RyaW5nKCksXG4gICAgICBwYXJlbnRTbG90OiBudW1iZXIoKSxcbiAgICAgIHNpZ25hdHVyZXM6IGFycmF5KHN0cmluZygpKSxcbiAgICAgIGJsb2NrVGltZTogbnVsbGFibGUobnVtYmVyKCkpLFxuICAgIH0pLFxuICApLFxuKTtcblxuLyoqXG4gKiBFeHBlY3RlZCBKU09OIFJQQyByZXNwb25zZSBmb3IgdGhlIFwiZ2V0VHJhbnNhY3Rpb25cIiBtZXNzYWdlXG4gKi9cbmNvbnN0IEdldFRyYW5zYWN0aW9uUnBjUmVzdWx0ID0ganNvblJwY1Jlc3VsdChcbiAgbnVsbGFibGUoXG4gICAgcGljayh7XG4gICAgICBzbG90OiBudW1iZXIoKSxcbiAgICAgIG1ldGE6IENvbmZpcm1lZFRyYW5zYWN0aW9uTWV0YVJlc3VsdCxcbiAgICAgIGJsb2NrVGltZTogb3B0aW9uYWwobnVsbGFibGUobnVtYmVyKCkpKSxcbiAgICAgIHRyYW5zYWN0aW9uOiBDb25maXJtZWRUcmFuc2FjdGlvblJlc3VsdCxcbiAgICAgIHZlcnNpb246IG9wdGlvbmFsKFRyYW5zYWN0aW9uVmVyc2lvblN0cnVjdCksXG4gICAgfSksXG4gICksXG4pO1xuXG4vKipcbiAqIEV4cGVjdGVkIHBhcnNlZCBKU09OIFJQQyByZXNwb25zZSBmb3IgdGhlIFwiZ2V0VHJhbnNhY3Rpb25cIiBtZXNzYWdlXG4gKi9cbmNvbnN0IEdldFBhcnNlZFRyYW5zYWN0aW9uUnBjUmVzdWx0ID0ganNvblJwY1Jlc3VsdChcbiAgbnVsbGFibGUoXG4gICAgcGljayh7XG4gICAgICBzbG90OiBudW1iZXIoKSxcbiAgICAgIHRyYW5zYWN0aW9uOiBQYXJzZWRDb25maXJtZWRUcmFuc2FjdGlvblJlc3VsdCxcbiAgICAgIG1ldGE6IG51bGxhYmxlKFBhcnNlZENvbmZpcm1lZFRyYW5zYWN0aW9uTWV0YVJlc3VsdCksXG4gICAgICBibG9ja1RpbWU6IG9wdGlvbmFsKG51bGxhYmxlKG51bWJlcigpKSksXG4gICAgICB2ZXJzaW9uOiBvcHRpb25hbChUcmFuc2FjdGlvblZlcnNpb25TdHJ1Y3QpLFxuICAgIH0pLFxuICApLFxuKTtcblxuLyoqXG4gKiBFeHBlY3RlZCBKU09OIFJQQyByZXNwb25zZSBmb3IgdGhlIFwiZ2V0UmVjZW50QmxvY2toYXNoXCIgbWVzc2FnZVxuICpcbiAqIEBkZXByZWNhdGVkIERlcHJlY2F0ZWQgc2luY2UgU29sYW5hIHYxLjguMC4gUGxlYXNlIHVzZSB7QGxpbmsgR2V0TGF0ZXN0QmxvY2toYXNoUnBjUmVzdWx0fSBpbnN0ZWFkLlxuICovXG5jb25zdCBHZXRSZWNlbnRCbG9ja2hhc2hBbmRDb250ZXh0UnBjUmVzdWx0ID0ganNvblJwY1Jlc3VsdEFuZENvbnRleHQoXG4gIHBpY2soe1xuICAgIGJsb2NraGFzaDogc3RyaW5nKCksXG4gICAgZmVlQ2FsY3VsYXRvcjogcGljayh7XG4gICAgICBsYW1wb3J0c1BlclNpZ25hdHVyZTogbnVtYmVyKCksXG4gICAgfSksXG4gIH0pLFxuKTtcblxuLyoqXG4gKiBFeHBlY3RlZCBKU09OIFJQQyByZXNwb25zZSBmb3IgdGhlIFwiZ2V0TGF0ZXN0QmxvY2toYXNoXCIgbWVzc2FnZVxuICovXG5jb25zdCBHZXRMYXRlc3RCbG9ja2hhc2hScGNSZXN1bHQgPSBqc29uUnBjUmVzdWx0QW5kQ29udGV4dChcbiAgcGljayh7XG4gICAgYmxvY2toYXNoOiBzdHJpbmcoKSxcbiAgICBsYXN0VmFsaWRCbG9ja0hlaWdodDogbnVtYmVyKCksXG4gIH0pLFxuKTtcblxuLyoqXG4gKiBFeHBlY3RlZCBKU09OIFJQQyByZXNwb25zZSBmb3IgdGhlIFwiaXNCbG9ja2hhc2hWYWxpZFwiIG1lc3NhZ2VcbiAqL1xuY29uc3QgSXNCbG9ja2hhc2hWYWxpZFJwY1Jlc3VsdCA9IGpzb25ScGNSZXN1bHRBbmRDb250ZXh0KGJvb2xlYW4oKSk7XG5cbmNvbnN0IFBlcmZTYW1wbGVSZXN1bHQgPSBwaWNrKHtcbiAgc2xvdDogbnVtYmVyKCksXG4gIG51bVRyYW5zYWN0aW9uczogbnVtYmVyKCksXG4gIG51bVNsb3RzOiBudW1iZXIoKSxcbiAgc2FtcGxlUGVyaW9kU2VjczogbnVtYmVyKCksXG59KTtcblxuLypcbiAqIEV4cGVjdGVkIEpTT04gUlBDIHJlc3BvbnNlIGZvciBcImdldFJlY2VudFBlcmZvcm1hbmNlU2FtcGxlc1wiIG1lc3NhZ2VcbiAqL1xuY29uc3QgR2V0UmVjZW50UGVyZm9ybWFuY2VTYW1wbGVzUnBjUmVzdWx0ID0ganNvblJwY1Jlc3VsdChcbiAgYXJyYXkoUGVyZlNhbXBsZVJlc3VsdCksXG4pO1xuXG4vKipcbiAqIEV4cGVjdGVkIEpTT04gUlBDIHJlc3BvbnNlIGZvciB0aGUgXCJnZXRGZWVDYWxjdWxhdG9yRm9yQmxvY2toYXNoXCIgbWVzc2FnZVxuICovXG5jb25zdCBHZXRGZWVDYWxjdWxhdG9yUnBjUmVzdWx0ID0ganNvblJwY1Jlc3VsdEFuZENvbnRleHQoXG4gIG51bGxhYmxlKFxuICAgIHBpY2soe1xuICAgICAgZmVlQ2FsY3VsYXRvcjogcGljayh7XG4gICAgICAgIGxhbXBvcnRzUGVyU2lnbmF0dXJlOiBudW1iZXIoKSxcbiAgICAgIH0pLFxuICAgIH0pLFxuICApLFxuKTtcblxuLyoqXG4gKiBFeHBlY3RlZCBKU09OIFJQQyByZXNwb25zZSBmb3IgdGhlIFwicmVxdWVzdEFpcmRyb3BcIiBtZXNzYWdlXG4gKi9cbmNvbnN0IFJlcXVlc3RBaXJkcm9wUnBjUmVzdWx0ID0ganNvblJwY1Jlc3VsdChzdHJpbmcoKSk7XG5cbi8qKlxuICogRXhwZWN0ZWQgSlNPTiBSUEMgcmVzcG9uc2UgZm9yIHRoZSBcInNlbmRUcmFuc2FjdGlvblwiIG1lc3NhZ2VcbiAqL1xuY29uc3QgU2VuZFRyYW5zYWN0aW9uUnBjUmVzdWx0ID0ganNvblJwY1Jlc3VsdChzdHJpbmcoKSk7XG5cbi8qKlxuICogSW5mb3JtYXRpb24gYWJvdXQgdGhlIGxhdGVzdCBzbG90IGJlaW5nIHByb2Nlc3NlZCBieSBhIG5vZGVcbiAqL1xuZXhwb3J0IHR5cGUgU2xvdEluZm8gPSB7XG4gIC8qKiBDdXJyZW50bHkgcHJvY2Vzc2luZyBzbG90ICovXG4gIHNsb3Q6IG51bWJlcjtcbiAgLyoqIFBhcmVudCBvZiB0aGUgY3VycmVudCBzbG90ICovXG4gIHBhcmVudDogbnVtYmVyO1xuICAvKiogVGhlIHJvb3QgYmxvY2sgb2YgdGhlIGN1cnJlbnQgc2xvdCdzIGZvcmsgKi9cbiAgcm9vdDogbnVtYmVyO1xufTtcblxuLyoqXG4gKiBQYXJzZWQgYWNjb3VudCBkYXRhXG4gKi9cbmV4cG9ydCB0eXBlIFBhcnNlZEFjY291bnREYXRhID0ge1xuICAvKiogTmFtZSBvZiB0aGUgcHJvZ3JhbSB0aGF0IG93bnMgdGhpcyBhY2NvdW50ICovXG4gIHByb2dyYW06IHN0cmluZztcbiAgLyoqIFBhcnNlZCBhY2NvdW50IGRhdGEgKi9cbiAgcGFyc2VkOiBhbnk7XG4gIC8qKiBTcGFjZSB1c2VkIGJ5IGFjY291bnQgZGF0YSAqL1xuICBzcGFjZTogbnVtYmVyO1xufTtcblxuLyoqXG4gKiBTdGFrZSBBY3RpdmF0aW9uIGRhdGFcbiAqL1xuZXhwb3J0IHR5cGUgU3Rha2VBY3RpdmF0aW9uRGF0YSA9IHtcbiAgLyoqIHRoZSBzdGFrZSBhY2NvdW50J3MgYWN0aXZhdGlvbiBzdGF0ZSAqL1xuICBzdGF0ZTogJ2FjdGl2ZScgfCAnaW5hY3RpdmUnIHwgJ2FjdGl2YXRpbmcnIHwgJ2RlYWN0aXZhdGluZyc7XG4gIC8qKiBzdGFrZSBhY3RpdmUgZHVyaW5nIHRoZSBlcG9jaCAqL1xuICBhY3RpdmU6IG51bWJlcjtcbiAgLyoqIHN0YWtlIGluYWN0aXZlIGR1cmluZyB0aGUgZXBvY2ggKi9cbiAgaW5hY3RpdmU6IG51bWJlcjtcbn07XG5cbi8qKlxuICogRGF0YSBzbGljZSBhcmd1bWVudCBmb3IgZ2V0UHJvZ3JhbUFjY291bnRzXG4gKi9cbmV4cG9ydCB0eXBlIERhdGFTbGljZSA9IHtcbiAgLyoqIG9mZnNldCBvZiBkYXRhIHNsaWNlICovXG4gIG9mZnNldDogbnVtYmVyO1xuICAvKiogbGVuZ3RoIG9mIGRhdGEgc2xpY2UgKi9cbiAgbGVuZ3RoOiBudW1iZXI7XG59O1xuXG4vKipcbiAqIE1lbW9yeSBjb21wYXJpc29uIGZpbHRlciBmb3IgZ2V0UHJvZ3JhbUFjY291bnRzXG4gKi9cbmV4cG9ydCB0eXBlIE1lbWNtcEZpbHRlciA9IHtcbiAgbWVtY21wOiB7XG4gICAgLyoqIG9mZnNldCBpbnRvIHByb2dyYW0gYWNjb3VudCBkYXRhIHRvIHN0YXJ0IGNvbXBhcmlzb24gKi9cbiAgICBvZmZzZXQ6IG51bWJlcjtcbiAgICAvKiogZGF0YSB0byBtYXRjaCwgYXMgYmFzZS01OCBlbmNvZGVkIHN0cmluZyBhbmQgbGltaXRlZCB0byBsZXNzIHRoYW4gMTI5IGJ5dGVzICovXG4gICAgYnl0ZXM6IHN0cmluZztcbiAgfTtcbn07XG5cbi8qKlxuICogRGF0YSBzaXplIGNvbXBhcmlzb24gZmlsdGVyIGZvciBnZXRQcm9ncmFtQWNjb3VudHNcbiAqL1xuZXhwb3J0IHR5cGUgRGF0YVNpemVGaWx0ZXIgPSB7XG4gIC8qKiBTaXplIG9mIGRhdGEgZm9yIHByb2dyYW0gYWNjb3VudCBkYXRhIGxlbmd0aCBjb21wYXJpc29uICovXG4gIGRhdGFTaXplOiBudW1iZXI7XG59O1xuXG4vKipcbiAqIEEgZmlsdGVyIG9iamVjdCBmb3IgZ2V0UHJvZ3JhbUFjY291bnRzXG4gKi9cbmV4cG9ydCB0eXBlIEdldFByb2dyYW1BY2NvdW50c0ZpbHRlciA9IE1lbWNtcEZpbHRlciB8IERhdGFTaXplRmlsdGVyO1xuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gb2JqZWN0IGZvciBnZXRQcm9ncmFtQWNjb3VudHMgcmVxdWVzdHNcbiAqL1xuZXhwb3J0IHR5cGUgR2V0UHJvZ3JhbUFjY291bnRzQ29uZmlnID0ge1xuICAvKiogT3B0aW9uYWwgY29tbWl0bWVudCBsZXZlbCAqL1xuICBjb21taXRtZW50PzogQ29tbWl0bWVudDtcbiAgLyoqIE9wdGlvbmFsIGVuY29kaW5nIGZvciBhY2NvdW50IGRhdGEgKGRlZmF1bHQgYmFzZTY0KVxuICAgKiBUbyB1c2UgXCJqc29uUGFyc2VkXCIgZW5jb2RpbmcsIHBsZWFzZSByZWZlciB0byBgZ2V0UGFyc2VkUHJvZ3JhbUFjY291bnRzYCBpbiBjb25uZWN0aW9uLnRzXG4gICAqICovXG4gIGVuY29kaW5nPzogJ2Jhc2U2NCc7XG4gIC8qKiBPcHRpb25hbCBkYXRhIHNsaWNlIHRvIGxpbWl0IHRoZSByZXR1cm5lZCBhY2NvdW50IGRhdGEgKi9cbiAgZGF0YVNsaWNlPzogRGF0YVNsaWNlO1xuICAvKiogT3B0aW9uYWwgYXJyYXkgb2YgZmlsdGVycyB0byBhcHBseSB0byBhY2NvdW50cyAqL1xuICBmaWx0ZXJzPzogR2V0UHJvZ3JhbUFjY291bnRzRmlsdGVyW107XG4gIC8qKiBUaGUgbWluaW11bSBzbG90IHRoYXQgdGhlIHJlcXVlc3QgY2FuIGJlIGV2YWx1YXRlZCBhdCAqL1xuICBtaW5Db250ZXh0U2xvdD86IG51bWJlcjtcbiAgLyoqIHdyYXAgdGhlIHJlc3VsdCBpbiBhbiBScGNSZXNwb25zZSBKU09OIG9iamVjdCAqL1xuICB3aXRoQ29udGV4dD86IGJvb2xlYW47XG59O1xuXG5leHBvcnQgdHlwZSBHZXRQcm9ncmFtQWNjb3VudHNSZXNwb25zZSA9IHJlYWRvbmx5IFJlYWRvbmx5PHtcbiAgYWNjb3VudDogQWNjb3VudEluZm88QnVmZmVyPjtcbiAgLyoqIHRoZSBhY2NvdW50IFB1YmtleSBhcyBiYXNlLTU4IGVuY29kZWQgc3RyaW5nICovXG4gIHB1YmtleTogUHVibGljS2V5O1xufT5bXTtcblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIG9iamVjdCBmb3IgZ2V0UGFyc2VkUHJvZ3JhbUFjY291bnRzXG4gKi9cbmV4cG9ydCB0eXBlIEdldFBhcnNlZFByb2dyYW1BY2NvdW50c0NvbmZpZyA9IHtcbiAgLyoqIE9wdGlvbmFsIGNvbW1pdG1lbnQgbGV2ZWwgKi9cbiAgY29tbWl0bWVudD86IENvbW1pdG1lbnQ7XG4gIC8qKiBPcHRpb25hbCBhcnJheSBvZiBmaWx0ZXJzIHRvIGFwcGx5IHRvIGFjY291bnRzICovXG4gIGZpbHRlcnM/OiBHZXRQcm9ncmFtQWNjb3VudHNGaWx0ZXJbXTtcbiAgLyoqIFRoZSBtaW5pbXVtIHNsb3QgdGhhdCB0aGUgcmVxdWVzdCBjYW4gYmUgZXZhbHVhdGVkIGF0ICovXG4gIG1pbkNvbnRleHRTbG90PzogbnVtYmVyO1xufTtcblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIG9iamVjdCBmb3IgZ2V0TXVsdGlwbGVBY2NvdW50c1xuICovXG5leHBvcnQgdHlwZSBHZXRNdWx0aXBsZUFjY291bnRzQ29uZmlnID0ge1xuICAvKiogT3B0aW9uYWwgY29tbWl0bWVudCBsZXZlbCAqL1xuICBjb21taXRtZW50PzogQ29tbWl0bWVudDtcbiAgLyoqIFRoZSBtaW5pbXVtIHNsb3QgdGhhdCB0aGUgcmVxdWVzdCBjYW4gYmUgZXZhbHVhdGVkIGF0ICovXG4gIG1pbkNvbnRleHRTbG90PzogbnVtYmVyO1xuICAvKiogT3B0aW9uYWwgZGF0YSBzbGljZSB0byBsaW1pdCB0aGUgcmV0dXJuZWQgYWNjb3VudCBkYXRhICovXG4gIGRhdGFTbGljZT86IERhdGFTbGljZTtcbn07XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBvYmplY3QgZm9yIGBnZXRTdGFrZUFjdGl2YXRpb25gXG4gKi9cbmV4cG9ydCB0eXBlIEdldFN0YWtlQWN0aXZhdGlvbkNvbmZpZyA9IHtcbiAgLyoqIE9wdGlvbmFsIGNvbW1pdG1lbnQgbGV2ZWwgKi9cbiAgY29tbWl0bWVudD86IENvbW1pdG1lbnQ7XG4gIC8qKiBFcG9jaCBmb3Igd2hpY2ggdG8gY2FsY3VsYXRlIGFjdGl2YXRpb24gZGV0YWlscy4gSWYgcGFyYW1ldGVyIG5vdCBwcm92aWRlZCwgZGVmYXVsdHMgdG8gY3VycmVudCBlcG9jaCAqL1xuICBlcG9jaD86IG51bWJlcjtcbiAgLyoqIFRoZSBtaW5pbXVtIHNsb3QgdGhhdCB0aGUgcmVxdWVzdCBjYW4gYmUgZXZhbHVhdGVkIGF0ICovXG4gIG1pbkNvbnRleHRTbG90PzogbnVtYmVyO1xufTtcblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIG9iamVjdCBmb3IgYGdldFN0YWtlQWN0aXZhdGlvbmBcbiAqL1xuZXhwb3J0IHR5cGUgR2V0VG9rZW5BY2NvdW50c0J5T3duZXJDb25maWcgPSB7XG4gIC8qKiBPcHRpb25hbCBjb21taXRtZW50IGxldmVsICovXG4gIGNvbW1pdG1lbnQ/OiBDb21taXRtZW50O1xuICAvKiogVGhlIG1pbmltdW0gc2xvdCB0aGF0IHRoZSByZXF1ZXN0IGNhbiBiZSBldmFsdWF0ZWQgYXQgKi9cbiAgbWluQ29udGV4dFNsb3Q/OiBudW1iZXI7XG59O1xuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gb2JqZWN0IGZvciBgZ2V0U3Rha2VBY3RpdmF0aW9uYFxuICovXG5leHBvcnQgdHlwZSBHZXRUcmFuc2FjdGlvbkNvdW50Q29uZmlnID0ge1xuICAvKiogT3B0aW9uYWwgY29tbWl0bWVudCBsZXZlbCAqL1xuICBjb21taXRtZW50PzogQ29tbWl0bWVudDtcbiAgLyoqIFRoZSBtaW5pbXVtIHNsb3QgdGhhdCB0aGUgcmVxdWVzdCBjYW4gYmUgZXZhbHVhdGVkIGF0ICovXG4gIG1pbkNvbnRleHRTbG90PzogbnVtYmVyO1xufTtcblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIG9iamVjdCBmb3IgYGdldE5vbmNlYFxuICovXG5leHBvcnQgdHlwZSBHZXROb25jZUNvbmZpZyA9IHtcbiAgLyoqIE9wdGlvbmFsIGNvbW1pdG1lbnQgbGV2ZWwgKi9cbiAgY29tbWl0bWVudD86IENvbW1pdG1lbnQ7XG4gIC8qKiBUaGUgbWluaW11bSBzbG90IHRoYXQgdGhlIHJlcXVlc3QgY2FuIGJlIGV2YWx1YXRlZCBhdCAqL1xuICBtaW5Db250ZXh0U2xvdD86IG51bWJlcjtcbn07XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBvYmplY3QgZm9yIGBnZXROb25jZUFuZENvbnRleHRgXG4gKi9cbmV4cG9ydCB0eXBlIEdldE5vbmNlQW5kQ29udGV4dENvbmZpZyA9IHtcbiAgLyoqIE9wdGlvbmFsIGNvbW1pdG1lbnQgbGV2ZWwgKi9cbiAgY29tbWl0bWVudD86IENvbW1pdG1lbnQ7XG4gIC8qKiBUaGUgbWluaW11bSBzbG90IHRoYXQgdGhlIHJlcXVlc3QgY2FuIGJlIGV2YWx1YXRlZCBhdCAqL1xuICBtaW5Db250ZXh0U2xvdD86IG51bWJlcjtcbn07XG5cbi8qKlxuICogSW5mb3JtYXRpb24gZGVzY3JpYmluZyBhbiBhY2NvdW50XG4gKi9cbmV4cG9ydCB0eXBlIEFjY291bnRJbmZvPFQ+ID0ge1xuICAvKiogYHRydWVgIGlmIHRoaXMgYWNjb3VudCdzIGRhdGEgY29udGFpbnMgYSBsb2FkZWQgcHJvZ3JhbSAqL1xuICBleGVjdXRhYmxlOiBib29sZWFuO1xuICAvKiogSWRlbnRpZmllciBvZiB0aGUgcHJvZ3JhbSB0aGF0IG93bnMgdGhlIGFjY291bnQgKi9cbiAgb3duZXI6IFB1YmxpY0tleTtcbiAgLyoqIE51bWJlciBvZiBsYW1wb3J0cyBhc3NpZ25lZCB0byB0aGUgYWNjb3VudCAqL1xuICBsYW1wb3J0czogbnVtYmVyO1xuICAvKiogT3B0aW9uYWwgZGF0YSBhc3NpZ25lZCB0byB0aGUgYWNjb3VudCAqL1xuICBkYXRhOiBUO1xuICAvKiogT3B0aW9uYWwgcmVudCBlcG9jaCBpbmZvIGZvciBhY2NvdW50ICovXG4gIHJlbnRFcG9jaD86IG51bWJlcjtcbn07XG5cbi8qKlxuICogQWNjb3VudCBpbmZvcm1hdGlvbiBpZGVudGlmaWVkIGJ5IHB1YmtleVxuICovXG5leHBvcnQgdHlwZSBLZXllZEFjY291bnRJbmZvID0ge1xuICBhY2NvdW50SWQ6IFB1YmxpY0tleTtcbiAgYWNjb3VudEluZm86IEFjY291bnRJbmZvPEJ1ZmZlcj47XG59O1xuXG4vKipcbiAqIENhbGxiYWNrIGZ1bmN0aW9uIGZvciBhY2NvdW50IGNoYW5nZSBub3RpZmljYXRpb25zXG4gKi9cbmV4cG9ydCB0eXBlIEFjY291bnRDaGFuZ2VDYWxsYmFjayA9IChcbiAgYWNjb3VudEluZm86IEFjY291bnRJbmZvPEJ1ZmZlcj4sXG4gIGNvbnRleHQ6IENvbnRleHQsXG4pID0+IHZvaWQ7XG5cbi8qKlxuICogQ2FsbGJhY2sgZnVuY3Rpb24gZm9yIHByb2dyYW0gYWNjb3VudCBjaGFuZ2Ugbm90aWZpY2F0aW9uc1xuICovXG5leHBvcnQgdHlwZSBQcm9ncmFtQWNjb3VudENoYW5nZUNhbGxiYWNrID0gKFxuICBrZXllZEFjY291bnRJbmZvOiBLZXllZEFjY291bnRJbmZvLFxuICBjb250ZXh0OiBDb250ZXh0LFxuKSA9PiB2b2lkO1xuXG4vKipcbiAqIENhbGxiYWNrIGZ1bmN0aW9uIGZvciBzbG90IGNoYW5nZSBub3RpZmljYXRpb25zXG4gKi9cbmV4cG9ydCB0eXBlIFNsb3RDaGFuZ2VDYWxsYmFjayA9IChzbG90SW5mbzogU2xvdEluZm8pID0+IHZvaWQ7XG5cbi8qKlxuICogQ2FsbGJhY2sgZnVuY3Rpb24gZm9yIHNsb3QgdXBkYXRlIG5vdGlmaWNhdGlvbnNcbiAqL1xuZXhwb3J0IHR5cGUgU2xvdFVwZGF0ZUNhbGxiYWNrID0gKHNsb3RVcGRhdGU6IFNsb3RVcGRhdGUpID0+IHZvaWQ7XG5cbi8qKlxuICogQ2FsbGJhY2sgZnVuY3Rpb24gZm9yIHNpZ25hdHVyZSBzdGF0dXMgbm90aWZpY2F0aW9uc1xuICovXG5leHBvcnQgdHlwZSBTaWduYXR1cmVSZXN1bHRDYWxsYmFjayA9IChcbiAgc2lnbmF0dXJlUmVzdWx0OiBTaWduYXR1cmVSZXN1bHQsXG4gIGNvbnRleHQ6IENvbnRleHQsXG4pID0+IHZvaWQ7XG5cbi8qKlxuICogU2lnbmF0dXJlIHN0YXR1cyBub3RpZmljYXRpb24gd2l0aCB0cmFuc2FjdGlvbiByZXN1bHRcbiAqL1xuZXhwb3J0IHR5cGUgU2lnbmF0dXJlU3RhdHVzTm90aWZpY2F0aW9uID0ge1xuICB0eXBlOiAnc3RhdHVzJztcbiAgcmVzdWx0OiBTaWduYXR1cmVSZXN1bHQ7XG59O1xuXG4vKipcbiAqIFNpZ25hdHVyZSByZWNlaXZlZCBub3RpZmljYXRpb25cbiAqL1xuZXhwb3J0IHR5cGUgU2lnbmF0dXJlUmVjZWl2ZWROb3RpZmljYXRpb24gPSB7XG4gIHR5cGU6ICdyZWNlaXZlZCc7XG59O1xuXG4vKipcbiAqIENhbGxiYWNrIGZ1bmN0aW9uIGZvciBzaWduYXR1cmUgbm90aWZpY2F0aW9uc1xuICovXG5leHBvcnQgdHlwZSBTaWduYXR1cmVTdWJzY3JpcHRpb25DYWxsYmFjayA9IChcbiAgbm90aWZpY2F0aW9uOiBTaWduYXR1cmVTdGF0dXNOb3RpZmljYXRpb24gfCBTaWduYXR1cmVSZWNlaXZlZE5vdGlmaWNhdGlvbixcbiAgY29udGV4dDogQ29udGV4dCxcbikgPT4gdm9pZDtcblxuLyoqXG4gKiBTaWduYXR1cmUgc3Vic2NyaXB0aW9uIG9wdGlvbnNcbiAqL1xuZXhwb3J0IHR5cGUgU2lnbmF0dXJlU3Vic2NyaXB0aW9uT3B0aW9ucyA9IHtcbiAgY29tbWl0bWVudD86IENvbW1pdG1lbnQ7XG4gIGVuYWJsZVJlY2VpdmVkTm90aWZpY2F0aW9uPzogYm9vbGVhbjtcbn07XG5cbi8qKlxuICogQ2FsbGJhY2sgZnVuY3Rpb24gZm9yIHJvb3QgY2hhbmdlIG5vdGlmaWNhdGlvbnNcbiAqL1xuZXhwb3J0IHR5cGUgUm9vdENoYW5nZUNhbGxiYWNrID0gKHJvb3Q6IG51bWJlcikgPT4gdm9pZDtcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuY29uc3QgTG9nc1Jlc3VsdCA9IHBpY2soe1xuICBlcnI6IFRyYW5zYWN0aW9uRXJyb3JSZXN1bHQsXG4gIGxvZ3M6IGFycmF5KHN0cmluZygpKSxcbiAgc2lnbmF0dXJlOiBzdHJpbmcoKSxcbn0pO1xuXG4vKipcbiAqIExvZ3MgcmVzdWx0LlxuICovXG5leHBvcnQgdHlwZSBMb2dzID0ge1xuICBlcnI6IFRyYW5zYWN0aW9uRXJyb3IgfCBudWxsO1xuICBsb2dzOiBzdHJpbmdbXTtcbiAgc2lnbmF0dXJlOiBzdHJpbmc7XG59O1xuXG4vKipcbiAqIEV4cGVjdGVkIEpTT04gUlBDIHJlc3BvbnNlIGZvciB0aGUgXCJsb2dzTm90aWZpY2F0aW9uXCIgbWVzc2FnZS5cbiAqL1xuY29uc3QgTG9nc05vdGlmaWNhdGlvblJlc3VsdCA9IHBpY2soe1xuICByZXN1bHQ6IG5vdGlmaWNhdGlvblJlc3VsdEFuZENvbnRleHQoTG9nc1Jlc3VsdCksXG4gIHN1YnNjcmlwdGlvbjogbnVtYmVyKCksXG59KTtcblxuLyoqXG4gKiBGaWx0ZXIgZm9yIGxvZyBzdWJzY3JpcHRpb25zLlxuICovXG5leHBvcnQgdHlwZSBMb2dzRmlsdGVyID0gUHVibGljS2V5IHwgJ2FsbCcgfCAnYWxsV2l0aFZvdGVzJztcblxuLyoqXG4gKiBDYWxsYmFjayBmdW5jdGlvbiBmb3IgbG9nIG5vdGlmaWNhdGlvbnMuXG4gKi9cbmV4cG9ydCB0eXBlIExvZ3NDYWxsYmFjayA9IChsb2dzOiBMb2dzLCBjdHg6IENvbnRleHQpID0+IHZvaWQ7XG5cbi8qKlxuICogU2lnbmF0dXJlIHJlc3VsdFxuICovXG5leHBvcnQgdHlwZSBTaWduYXR1cmVSZXN1bHQgPSB7XG4gIGVycjogVHJhbnNhY3Rpb25FcnJvciB8IG51bGw7XG59O1xuXG4vKipcbiAqIFRyYW5zYWN0aW9uIGVycm9yXG4gKi9cbmV4cG9ydCB0eXBlIFRyYW5zYWN0aW9uRXJyb3IgPSB7fSB8IHN0cmluZztcblxuLyoqXG4gKiBUcmFuc2FjdGlvbiBjb25maXJtYXRpb24gc3RhdHVzXG4gKiA8cHJlPlxuICogICAncHJvY2Vzc2VkJzogVHJhbnNhY3Rpb24gbGFuZGVkIGluIGEgYmxvY2sgd2hpY2ggaGFzIHJlYWNoZWQgMSBjb25maXJtYXRpb24gYnkgdGhlIGNvbm5lY3RlZCBub2RlXG4gKiAgICdjb25maXJtZWQnOiBUcmFuc2FjdGlvbiBsYW5kZWQgaW4gYSBibG9jayB3aGljaCBoYXMgcmVhY2hlZCAxIGNvbmZpcm1hdGlvbiBieSB0aGUgY2x1c3RlclxuICogICAnZmluYWxpemVkJzogVHJhbnNhY3Rpb24gbGFuZGVkIGluIGEgYmxvY2sgd2hpY2ggaGFzIGJlZW4gZmluYWxpemVkIGJ5IHRoZSBjbHVzdGVyXG4gKiA8L3ByZT5cbiAqL1xuZXhwb3J0IHR5cGUgVHJhbnNhY3Rpb25Db25maXJtYXRpb25TdGF0dXMgPVxuICB8ICdwcm9jZXNzZWQnXG4gIHwgJ2NvbmZpcm1lZCdcbiAgfCAnZmluYWxpemVkJztcblxuLyoqXG4gKiBTaWduYXR1cmUgc3RhdHVzXG4gKi9cbmV4cG9ydCB0eXBlIFNpZ25hdHVyZVN0YXR1cyA9IHtcbiAgLyoqIHdoZW4gdGhlIHRyYW5zYWN0aW9uIHdhcyBwcm9jZXNzZWQgKi9cbiAgc2xvdDogbnVtYmVyO1xuICAvKiogdGhlIG51bWJlciBvZiBibG9ja3MgdGhhdCBoYXZlIGJlZW4gY29uZmlybWVkIGFuZCB2b3RlZCBvbiBpbiB0aGUgZm9yayBjb250YWluaW5nIGBzbG90YCAqL1xuICBjb25maXJtYXRpb25zOiBudW1iZXIgfCBudWxsO1xuICAvKiogdHJhbnNhY3Rpb24gZXJyb3IsIGlmIGFueSAqL1xuICBlcnI6IFRyYW5zYWN0aW9uRXJyb3IgfCBudWxsO1xuICAvKiogY2x1c3RlciBjb25maXJtYXRpb24gc3RhdHVzLCBpZiBkYXRhIGF2YWlsYWJsZS4gUG9zc2libGUgcmVzcG9uc2VzOiBgcHJvY2Vzc2VkYCwgYGNvbmZpcm1lZGAsIGBmaW5hbGl6ZWRgICovXG4gIGNvbmZpcm1hdGlvblN0YXR1cz86IFRyYW5zYWN0aW9uQ29uZmlybWF0aW9uU3RhdHVzO1xufTtcblxuLyoqXG4gKiBBIGNvbmZpcm1lZCBzaWduYXR1cmUgd2l0aCBpdHMgc3RhdHVzXG4gKi9cbmV4cG9ydCB0eXBlIENvbmZpcm1lZFNpZ25hdHVyZUluZm8gPSB7XG4gIC8qKiB0aGUgdHJhbnNhY3Rpb24gc2lnbmF0dXJlICovXG4gIHNpZ25hdHVyZTogc3RyaW5nO1xuICAvKiogd2hlbiB0aGUgdHJhbnNhY3Rpb24gd2FzIHByb2Nlc3NlZCAqL1xuICBzbG90OiBudW1iZXI7XG4gIC8qKiBlcnJvciwgaWYgYW55ICovXG4gIGVycjogVHJhbnNhY3Rpb25FcnJvciB8IG51bGw7XG4gIC8qKiBtZW1vIGFzc29jaWF0ZWQgd2l0aCB0aGUgdHJhbnNhY3Rpb24sIGlmIGFueSAqL1xuICBtZW1vOiBzdHJpbmcgfCBudWxsO1xuICAvKiogVGhlIHVuaXggdGltZXN0YW1wIG9mIHdoZW4gdGhlIHRyYW5zYWN0aW9uIHdhcyBwcm9jZXNzZWQgKi9cbiAgYmxvY2tUaW1lPzogbnVtYmVyIHwgbnVsbDtcbiAgLyoqIENsdXN0ZXIgY29uZmlybWF0aW9uIHN0YXR1cywgaWYgYXZhaWxhYmxlLiBQb3NzaWJsZSB2YWx1ZXM6IGBwcm9jZXNzZWRgLCBgY29uZmlybWVkYCwgYGZpbmFsaXplZGAgKi9cbiAgY29uZmlybWF0aW9uU3RhdHVzPzogVHJhbnNhY3Rpb25Db25maXJtYXRpb25TdGF0dXM7XG59O1xuXG4vKipcbiAqIEFuIG9iamVjdCBkZWZpbmluZyBoZWFkZXJzIHRvIGJlIHBhc3NlZCB0byB0aGUgUlBDIHNlcnZlclxuICovXG5leHBvcnQgdHlwZSBIdHRwSGVhZGVycyA9IHtcbiAgW2hlYWRlcjogc3RyaW5nXTogc3RyaW5nO1xufSAmIHtcbiAgLy8gUHJvaGliaXRlZCBoZWFkZXJzOyBmb3IgaW50ZXJuYWwgdXNlIG9ubHkuXG4gICdzb2xhbmEtY2xpZW50Jz86IG5ldmVyO1xufTtcblxuLyoqXG4gKiBUaGUgdHlwZSBvZiB0aGUgSmF2YVNjcmlwdCBgZmV0Y2goKWAgQVBJXG4gKi9cbmV4cG9ydCB0eXBlIEZldGNoRm4gPSB0eXBlb2YgZmV0Y2hJbXBsO1xuXG4vKipcbiAqIEEgY2FsbGJhY2sgdXNlZCB0byBhdWdtZW50IHRoZSBvdXRnb2luZyBIVFRQIHJlcXVlc3RcbiAqL1xuZXhwb3J0IHR5cGUgRmV0Y2hNaWRkbGV3YXJlID0gKFxuICBpbmZvOiBQYXJhbWV0ZXJzPEZldGNoRm4+WzBdLFxuICBpbml0OiBQYXJhbWV0ZXJzPEZldGNoRm4+WzFdLFxuICBmZXRjaDogKC4uLmE6IFBhcmFtZXRlcnM8RmV0Y2hGbj4pID0+IHZvaWQsXG4pID0+IHZvaWQ7XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBmb3IgaW5zdGFudGlhdGluZyBhIENvbm5lY3Rpb25cbiAqL1xuZXhwb3J0IHR5cGUgQ29ubmVjdGlvbkNvbmZpZyA9IHtcbiAgLyoqXG4gICAqIEFuIGBodHRwLkFnZW50YCB0aGF0IHdpbGwgYmUgdXNlZCB0byBtYW5hZ2Ugc29ja2V0IGNvbm5lY3Rpb25zIChlZy4gdG8gaW1wbGVtZW50IGNvbm5lY3Rpb25cbiAgICogcGVyc2lzdGVuY2UpLiBTZXQgdGhpcyB0byBgZmFsc2VgIHRvIGNyZWF0ZSBhIGNvbm5lY3Rpb24gdGhhdCB1c2VzIG5vIGFnZW50LiBUaGlzIGFwcGxpZXMgdG9cbiAgICogTm9kZSBlbnZpcm9ubWVudHMgb25seS5cbiAgICovXG4gIGh0dHBBZ2VudD86IE5vZGVIdHRwQWdlbnQgfCBOb2RlSHR0cHNBZ2VudCB8IGZhbHNlO1xuICAvKiogT3B0aW9uYWwgY29tbWl0bWVudCBsZXZlbCAqL1xuICBjb21taXRtZW50PzogQ29tbWl0bWVudDtcbiAgLyoqIE9wdGlvbmFsIGVuZHBvaW50IFVSTCB0byB0aGUgZnVsbG5vZGUgSlNPTiBSUEMgUHViU3ViIFdlYlNvY2tldCBFbmRwb2ludCAqL1xuICB3c0VuZHBvaW50Pzogc3RyaW5nO1xuICAvKiogT3B0aW9uYWwgSFRUUCBoZWFkZXJzIG9iamVjdCAqL1xuICBodHRwSGVhZGVycz86IEh0dHBIZWFkZXJzO1xuICAvKiogT3B0aW9uYWwgY3VzdG9tIGZldGNoIGZ1bmN0aW9uICovXG4gIGZldGNoPzogRmV0Y2hGbjtcbiAgLyoqIE9wdGlvbmFsIGZldGNoIG1pZGRsZXdhcmUgY2FsbGJhY2sgKi9cbiAgZmV0Y2hNaWRkbGV3YXJlPzogRmV0Y2hNaWRkbGV3YXJlO1xuICAvKiogT3B0aW9uYWwgRGlzYWJsZSByZXRyeWluZyBjYWxscyB3aGVuIHNlcnZlciByZXNwb25kcyB3aXRoIEhUVFAgNDI5IChUb28gTWFueSBSZXF1ZXN0cykgKi9cbiAgZGlzYWJsZVJldHJ5T25SYXRlTGltaXQ/OiBib29sZWFuO1xuICAvKiogdGltZSB0byBhbGxvdyBmb3IgdGhlIHNlcnZlciB0byBpbml0aWFsbHkgcHJvY2VzcyBhIHRyYW5zYWN0aW9uIChpbiBtaWxsaXNlY29uZHMpICovXG4gIGNvbmZpcm1UcmFuc2FjdGlvbkluaXRpYWxUaW1lb3V0PzogbnVtYmVyO1xufTtcblxuLyoqIEBpbnRlcm5hbCAqL1xuY29uc3QgQ09NTU9OX0hUVFBfSEVBREVSUyA9IHtcbiAgJ3NvbGFuYS1jbGllbnQnOiBganMvJHtwcm9jZXNzLmVudi5ucG1fcGFja2FnZV92ZXJzaW9uID8/ICdVTktOT1dOJ31gLFxufTtcblxuLyoqXG4gKiBBIGNvbm5lY3Rpb24gdG8gYSBmdWxsbm9kZSBKU09OIFJQQyBlbmRwb2ludFxuICovXG5leHBvcnQgY2xhc3MgQ29ubmVjdGlvbiB7XG4gIC8qKiBAaW50ZXJuYWwgKi8gX2NvbW1pdG1lbnQ/OiBDb21taXRtZW50O1xuICAvKiogQGludGVybmFsICovIF9jb25maXJtVHJhbnNhY3Rpb25Jbml0aWFsVGltZW91dD86IG51bWJlcjtcbiAgLyoqIEBpbnRlcm5hbCAqLyBfcnBjRW5kcG9pbnQ6IHN0cmluZztcbiAgLyoqIEBpbnRlcm5hbCAqLyBfcnBjV3NFbmRwb2ludDogc3RyaW5nO1xuICAvKiogQGludGVybmFsICovIF9ycGNDbGllbnQ6IFJwY0NsaWVudDtcbiAgLyoqIEBpbnRlcm5hbCAqLyBfcnBjUmVxdWVzdDogUnBjUmVxdWVzdDtcbiAgLyoqIEBpbnRlcm5hbCAqLyBfcnBjQmF0Y2hSZXF1ZXN0OiBScGNCYXRjaFJlcXVlc3Q7XG4gIC8qKiBAaW50ZXJuYWwgKi8gX3JwY1dlYlNvY2tldDogUnBjV2ViU29ja2V0Q2xpZW50O1xuICAvKiogQGludGVybmFsICovIF9ycGNXZWJTb2NrZXRDb25uZWN0ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgLyoqIEBpbnRlcm5hbCAqLyBfcnBjV2ViU29ja2V0SGVhcnRiZWF0OiBSZXR1cm5UeXBlPFxuICAgIHR5cGVvZiBzZXRJbnRlcnZhbFxuICA+IHwgbnVsbCA9IG51bGw7XG4gIC8qKiBAaW50ZXJuYWwgKi8gX3JwY1dlYlNvY2tldElkbGVUaW1lb3V0OiBSZXR1cm5UeXBlPFxuICAgIHR5cGVvZiBzZXRUaW1lb3V0XG4gID4gfCBudWxsID0gbnVsbDtcbiAgLyoqIEBpbnRlcm5hbFxuICAgKiBBIG51bWJlciB0aGF0IHdlIGluY3JlbWVudCBldmVyeSB0aW1lIGFuIGFjdGl2ZSBjb25uZWN0aW9uIGNsb3Nlcy5cbiAgICogVXNlZCB0byBkZXRlcm1pbmUgd2hldGhlciB0aGUgc2FtZSBzb2NrZXQgY29ubmVjdGlvbiB0aGF0IHdhcyBvcGVuXG4gICAqIHdoZW4gYW4gYXN5bmMgb3BlcmF0aW9uIHN0YXJ0ZWQgaXMgdGhlIHNhbWUgb25lIHRoYXQncyBhY3RpdmUgd2hlblxuICAgKiBpdHMgY29udGludWF0aW9uIGZpcmVzLlxuICAgKlxuICAgKi8gcHJpdmF0ZSBfcnBjV2ViU29ja2V0R2VuZXJhdGlvbjogbnVtYmVyID0gMDtcblxuICAvKiogQGludGVybmFsICovIF9kaXNhYmxlQmxvY2toYXNoQ2FjaGluZzogYm9vbGVhbiA9IGZhbHNlO1xuICAvKiogQGludGVybmFsICovIF9wb2xsaW5nQmxvY2toYXNoOiBib29sZWFuID0gZmFsc2U7XG4gIC8qKiBAaW50ZXJuYWwgKi8gX2Jsb2NraGFzaEluZm86IHtcbiAgICBsYXRlc3RCbG9ja2hhc2g6IEJsb2NraGFzaFdpdGhFeHBpcnlCbG9ja0hlaWdodCB8IG51bGw7XG4gICAgbGFzdEZldGNoOiBudW1iZXI7XG4gICAgc2ltdWxhdGVkU2lnbmF0dXJlczogQXJyYXk8c3RyaW5nPjtcbiAgICB0cmFuc2FjdGlvblNpZ25hdHVyZXM6IEFycmF5PHN0cmluZz47XG4gIH0gPSB7XG4gICAgbGF0ZXN0QmxvY2toYXNoOiBudWxsLFxuICAgIGxhc3RGZXRjaDogMCxcbiAgICB0cmFuc2FjdGlvblNpZ25hdHVyZXM6IFtdLFxuICAgIHNpbXVsYXRlZFNpZ25hdHVyZXM6IFtdLFxuICB9O1xuXG4gIC8qKiBAaW50ZXJuYWwgKi8gcHJpdmF0ZSBfbmV4dENsaWVudFN1YnNjcmlwdGlvbklkOiBDbGllbnRTdWJzY3JpcHRpb25JZCA9IDA7XG4gIC8qKiBAaW50ZXJuYWwgKi8gcHJpdmF0ZSBfc3Vic2NyaXB0aW9uRGlzcG9zZUZ1bmN0aW9uc0J5Q2xpZW50U3Vic2NyaXB0aW9uSWQ6IHtcbiAgICBbY2xpZW50U3Vic2NyaXB0aW9uSWQ6IENsaWVudFN1YnNjcmlwdGlvbklkXTpcbiAgICAgIHwgU3Vic2NyaXB0aW9uRGlzcG9zZUZuXG4gICAgICB8IHVuZGVmaW5lZDtcbiAgfSA9IHt9O1xuICAvKiogQGludGVybmFsICovIHByaXZhdGUgX3N1YnNjcmlwdGlvbkhhc2hCeUNsaWVudFN1YnNjcmlwdGlvbklkOiB7XG4gICAgW2NsaWVudFN1YnNjcmlwdGlvbklkOiBDbGllbnRTdWJzY3JpcHRpb25JZF06XG4gICAgICB8IFN1YnNjcmlwdGlvbkNvbmZpZ0hhc2hcbiAgICAgIHwgdW5kZWZpbmVkO1xuICB9ID0ge307XG4gIC8qKiBAaW50ZXJuYWwgKi8gcHJpdmF0ZSBfc3Vic2NyaXB0aW9uU3RhdGVDaGFuZ2VDYWxsYmFja3NCeUhhc2g6IHtcbiAgICBbaGFzaDogU3Vic2NyaXB0aW9uQ29uZmlnSGFzaF06XG4gICAgICB8IFNldDxTdWJzY3JpcHRpb25TdGF0ZUNoYW5nZUNhbGxiYWNrPlxuICAgICAgfCB1bmRlZmluZWQ7XG4gIH0gPSB7fTtcbiAgLyoqIEBpbnRlcm5hbCAqLyBwcml2YXRlIF9zdWJzY3JpcHRpb25DYWxsYmFja3NCeVNlcnZlclN1YnNjcmlwdGlvbklkOiB7XG4gICAgW3NlcnZlclN1YnNjcmlwdGlvbklkOiBTZXJ2ZXJTdWJzY3JpcHRpb25JZF06XG4gICAgICB8IFNldDxTdWJzY3JpcHRpb25Db25maWdbJ2NhbGxiYWNrJ10+XG4gICAgICB8IHVuZGVmaW5lZDtcbiAgfSA9IHt9O1xuICAvKiogQGludGVybmFsICovIHByaXZhdGUgX3N1YnNjcmlwdGlvbnNCeUhhc2g6IHtcbiAgICBbaGFzaDogU3Vic2NyaXB0aW9uQ29uZmlnSGFzaF06IFN1YnNjcmlwdGlvbiB8IHVuZGVmaW5lZDtcbiAgfSA9IHt9O1xuICAvKipcbiAgICogU3BlY2lhbCBjYXNlLlxuICAgKiBBZnRlciBhIHNpZ25hdHVyZSBpcyBwcm9jZXNzZWQsIFJQQ3MgYXV0b21hdGljYWxseSBkaXNwb3NlIG9mIHRoZVxuICAgKiBzdWJzY3JpcHRpb24gb24gdGhlIHNlcnZlciBzaWRlLiBXZSBuZWVkIHRvIHRyYWNrIHdoaWNoIG9mIHRoZXNlXG4gICAqIHN1YnNjcmlwdGlvbnMgaGF2ZSBiZWVuIGRpc3Bvc2VkIGluIHN1Y2ggYSB3YXksIHNvIHRoYXQgd2Uga25vd1xuICAgKiB3aGV0aGVyIHRoZSBjbGllbnQgaXMgZGVhbGluZyB3aXRoIGEgbm90LXlldC1wcm9jZXNzZWQgc2lnbmF0dXJlXG4gICAqIChpbiB3aGljaCBjYXNlIHdlIG11c3QgdGVhciBkb3duIHRoZSBzZXJ2ZXIgc3Vic2NyaXB0aW9uKSBvciBhblxuICAgKiBhbHJlYWR5LXByb2Nlc3NlZCBzaWduYXR1cmUgKGluIHdoaWNoIGNhc2UgdGhlIGNsaWVudCBjYW4gc2ltcGx5XG4gICAqIGNsZWFyIG91dCB0aGUgc3Vic2NyaXB0aW9uIGxvY2FsbHkgd2l0aG91dCB0ZWxsaW5nIHRoZSBzZXJ2ZXIpLlxuICAgKlxuICAgKiBOT1RFOiBUaGVyZSBpcyBhIHByb3Bvc2FsIHRvIGVsaW1pbmF0ZSB0aGlzIHNwZWNpYWwgY2FzZSwgaGVyZTpcbiAgICogaHR0cHM6Ly9naXRodWIuY29tL3NvbGFuYS1sYWJzL3NvbGFuYS9pc3N1ZXMvMTg4OTJcbiAgICovXG4gIC8qKiBAaW50ZXJuYWwgKi8gcHJpdmF0ZSBfc3Vic2NyaXB0aW9uc0F1dG9EaXNwb3NlZEJ5UnBjOiBTZXQ8U2VydmVyU3Vic2NyaXB0aW9uSWQ+ID1cbiAgICBuZXcgU2V0KCk7XG5cbiAgLyoqXG4gICAqIEVzdGFibGlzaCBhIEpTT04gUlBDIGNvbm5lY3Rpb25cbiAgICpcbiAgICogQHBhcmFtIGVuZHBvaW50IFVSTCB0byB0aGUgZnVsbG5vZGUgSlNPTiBSUEMgZW5kcG9pbnRcbiAgICogQHBhcmFtIGNvbW1pdG1lbnRPckNvbmZpZyBvcHRpb25hbCBkZWZhdWx0IGNvbW1pdG1lbnQgbGV2ZWwgb3Igb3B0aW9uYWwgQ29ubmVjdGlvbkNvbmZpZyBjb25maWd1cmF0aW9uIG9iamVjdFxuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgZW5kcG9pbnQ6IHN0cmluZyxcbiAgICBjb21taXRtZW50T3JDb25maWc/OiBDb21taXRtZW50IHwgQ29ubmVjdGlvbkNvbmZpZyxcbiAgKSB7XG4gICAgbGV0IHdzRW5kcG9pbnQ7XG4gICAgbGV0IGh0dHBIZWFkZXJzO1xuICAgIGxldCBmZXRjaDtcbiAgICBsZXQgZmV0Y2hNaWRkbGV3YXJlO1xuICAgIGxldCBkaXNhYmxlUmV0cnlPblJhdGVMaW1pdDtcbiAgICBsZXQgaHR0cEFnZW50O1xuICAgIGlmIChjb21taXRtZW50T3JDb25maWcgJiYgdHlwZW9mIGNvbW1pdG1lbnRPckNvbmZpZyA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHRoaXMuX2NvbW1pdG1lbnQgPSBjb21taXRtZW50T3JDb25maWc7XG4gICAgfSBlbHNlIGlmIChjb21taXRtZW50T3JDb25maWcpIHtcbiAgICAgIHRoaXMuX2NvbW1pdG1lbnQgPSBjb21taXRtZW50T3JDb25maWcuY29tbWl0bWVudDtcbiAgICAgIHRoaXMuX2NvbmZpcm1UcmFuc2FjdGlvbkluaXRpYWxUaW1lb3V0ID1cbiAgICAgICAgY29tbWl0bWVudE9yQ29uZmlnLmNvbmZpcm1UcmFuc2FjdGlvbkluaXRpYWxUaW1lb3V0O1xuICAgICAgd3NFbmRwb2ludCA9IGNvbW1pdG1lbnRPckNvbmZpZy53c0VuZHBvaW50O1xuICAgICAgaHR0cEhlYWRlcnMgPSBjb21taXRtZW50T3JDb25maWcuaHR0cEhlYWRlcnM7XG4gICAgICBmZXRjaCA9IGNvbW1pdG1lbnRPckNvbmZpZy5mZXRjaDtcbiAgICAgIGZldGNoTWlkZGxld2FyZSA9IGNvbW1pdG1lbnRPckNvbmZpZy5mZXRjaE1pZGRsZXdhcmU7XG4gICAgICBkaXNhYmxlUmV0cnlPblJhdGVMaW1pdCA9IGNvbW1pdG1lbnRPckNvbmZpZy5kaXNhYmxlUmV0cnlPblJhdGVMaW1pdDtcbiAgICAgIGh0dHBBZ2VudCA9IGNvbW1pdG1lbnRPckNvbmZpZy5odHRwQWdlbnQ7XG4gICAgfVxuXG4gICAgdGhpcy5fcnBjRW5kcG9pbnQgPSBhc3NlcnRFbmRwb2ludFVybChlbmRwb2ludCk7XG4gICAgdGhpcy5fcnBjV3NFbmRwb2ludCA9IHdzRW5kcG9pbnQgfHwgbWFrZVdlYnNvY2tldFVybChlbmRwb2ludCk7XG5cbiAgICB0aGlzLl9ycGNDbGllbnQgPSBjcmVhdGVScGNDbGllbnQoXG4gICAgICBlbmRwb2ludCxcbiAgICAgIGh0dHBIZWFkZXJzLFxuICAgICAgZmV0Y2gsXG4gICAgICBmZXRjaE1pZGRsZXdhcmUsXG4gICAgICBkaXNhYmxlUmV0cnlPblJhdGVMaW1pdCxcbiAgICAgIGh0dHBBZ2VudCxcbiAgICApO1xuICAgIHRoaXMuX3JwY1JlcXVlc3QgPSBjcmVhdGVScGNSZXF1ZXN0KHRoaXMuX3JwY0NsaWVudCk7XG4gICAgdGhpcy5fcnBjQmF0Y2hSZXF1ZXN0ID0gY3JlYXRlUnBjQmF0Y2hSZXF1ZXN0KHRoaXMuX3JwY0NsaWVudCk7XG5cbiAgICB0aGlzLl9ycGNXZWJTb2NrZXQgPSBuZXcgUnBjV2ViU29ja2V0Q2xpZW50KHRoaXMuX3JwY1dzRW5kcG9pbnQsIHtcbiAgICAgIGF1dG9jb25uZWN0OiBmYWxzZSxcbiAgICAgIG1heF9yZWNvbm5lY3RzOiBJbmZpbml0eSxcbiAgICB9KTtcbiAgICB0aGlzLl9ycGNXZWJTb2NrZXQub24oJ29wZW4nLCB0aGlzLl93c09uT3Blbi5iaW5kKHRoaXMpKTtcbiAgICB0aGlzLl9ycGNXZWJTb2NrZXQub24oJ2Vycm9yJywgdGhpcy5fd3NPbkVycm9yLmJpbmQodGhpcykpO1xuICAgIHRoaXMuX3JwY1dlYlNvY2tldC5vbignY2xvc2UnLCB0aGlzLl93c09uQ2xvc2UuYmluZCh0aGlzKSk7XG4gICAgdGhpcy5fcnBjV2ViU29ja2V0Lm9uKFxuICAgICAgJ2FjY291bnROb3RpZmljYXRpb24nLFxuICAgICAgdGhpcy5fd3NPbkFjY291bnROb3RpZmljYXRpb24uYmluZCh0aGlzKSxcbiAgICApO1xuICAgIHRoaXMuX3JwY1dlYlNvY2tldC5vbihcbiAgICAgICdwcm9ncmFtTm90aWZpY2F0aW9uJyxcbiAgICAgIHRoaXMuX3dzT25Qcm9ncmFtQWNjb3VudE5vdGlmaWNhdGlvbi5iaW5kKHRoaXMpLFxuICAgICk7XG4gICAgdGhpcy5fcnBjV2ViU29ja2V0Lm9uKFxuICAgICAgJ3Nsb3ROb3RpZmljYXRpb24nLFxuICAgICAgdGhpcy5fd3NPblNsb3ROb3RpZmljYXRpb24uYmluZCh0aGlzKSxcbiAgICApO1xuICAgIHRoaXMuX3JwY1dlYlNvY2tldC5vbihcbiAgICAgICdzbG90c1VwZGF0ZXNOb3RpZmljYXRpb24nLFxuICAgICAgdGhpcy5fd3NPblNsb3RVcGRhdGVzTm90aWZpY2F0aW9uLmJpbmQodGhpcyksXG4gICAgKTtcbiAgICB0aGlzLl9ycGNXZWJTb2NrZXQub24oXG4gICAgICAnc2lnbmF0dXJlTm90aWZpY2F0aW9uJyxcbiAgICAgIHRoaXMuX3dzT25TaWduYXR1cmVOb3RpZmljYXRpb24uYmluZCh0aGlzKSxcbiAgICApO1xuICAgIHRoaXMuX3JwY1dlYlNvY2tldC5vbihcbiAgICAgICdyb290Tm90aWZpY2F0aW9uJyxcbiAgICAgIHRoaXMuX3dzT25Sb290Tm90aWZpY2F0aW9uLmJpbmQodGhpcyksXG4gICAgKTtcbiAgICB0aGlzLl9ycGNXZWJTb2NrZXQub24oXG4gICAgICAnbG9nc05vdGlmaWNhdGlvbicsXG4gICAgICB0aGlzLl93c09uTG9nc05vdGlmaWNhdGlvbi5iaW5kKHRoaXMpLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGRlZmF1bHQgY29tbWl0bWVudCB1c2VkIGZvciByZXF1ZXN0c1xuICAgKi9cbiAgZ2V0IGNvbW1pdG1lbnQoKTogQ29tbWl0bWVudCB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbW1pdG1lbnQ7XG4gIH1cblxuICAvKipcbiAgICogVGhlIFJQQyBlbmRwb2ludFxuICAgKi9cbiAgZ2V0IHJwY0VuZHBvaW50KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3JwY0VuZHBvaW50O1xuICB9XG5cbiAgLyoqXG4gICAqIEZldGNoIHRoZSBiYWxhbmNlIGZvciB0aGUgc3BlY2lmaWVkIHB1YmxpYyBrZXksIHJldHVybiB3aXRoIGNvbnRleHRcbiAgICovXG4gIGFzeW5jIGdldEJhbGFuY2VBbmRDb250ZXh0KFxuICAgIHB1YmxpY0tleTogUHVibGljS2V5LFxuICAgIGNvbW1pdG1lbnRPckNvbmZpZz86IENvbW1pdG1lbnQgfCBHZXRCYWxhbmNlQ29uZmlnLFxuICApOiBQcm9taXNlPFJwY1Jlc3BvbnNlQW5kQ29udGV4dDxudW1iZXI+PiB7XG4gICAgLyoqIEBpbnRlcm5hbCAqL1xuICAgIGNvbnN0IHtjb21taXRtZW50LCBjb25maWd9ID1cbiAgICAgIGV4dHJhY3RDb21taXRtZW50RnJvbUNvbmZpZyhjb21taXRtZW50T3JDb25maWcpO1xuICAgIGNvbnN0IGFyZ3MgPSB0aGlzLl9idWlsZEFyZ3MoXG4gICAgICBbcHVibGljS2V5LnRvQmFzZTU4KCldLFxuICAgICAgY29tbWl0bWVudCxcbiAgICAgIHVuZGVmaW5lZCAvKiBlbmNvZGluZyAqLyxcbiAgICAgIGNvbmZpZyxcbiAgICApO1xuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoJ2dldEJhbGFuY2UnLCBhcmdzKTtcbiAgICBjb25zdCByZXMgPSBjcmVhdGUodW5zYWZlUmVzLCBqc29uUnBjUmVzdWx0QW5kQ29udGV4dChudW1iZXIoKSkpO1xuICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgdGhyb3cgbmV3IFNvbGFuYUpTT05SUENFcnJvcihcbiAgICAgICAgcmVzLmVycm9yLFxuICAgICAgICBgZmFpbGVkIHRvIGdldCBiYWxhbmNlIGZvciAke3B1YmxpY0tleS50b0Jhc2U1OCgpfWAsXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gcmVzLnJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBGZXRjaCB0aGUgYmFsYW5jZSBmb3IgdGhlIHNwZWNpZmllZCBwdWJsaWMga2V5XG4gICAqL1xuICBhc3luYyBnZXRCYWxhbmNlKFxuICAgIHB1YmxpY0tleTogUHVibGljS2V5LFxuICAgIGNvbW1pdG1lbnRPckNvbmZpZz86IENvbW1pdG1lbnQgfCBHZXRCYWxhbmNlQ29uZmlnLFxuICApOiBQcm9taXNlPG51bWJlcj4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmdldEJhbGFuY2VBbmRDb250ZXh0KHB1YmxpY0tleSwgY29tbWl0bWVudE9yQ29uZmlnKVxuICAgICAgLnRoZW4oeCA9PiB4LnZhbHVlKVxuICAgICAgLmNhdGNoKGUgPT4ge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgJ2ZhaWxlZCB0byBnZXQgYmFsYW5jZSBvZiBhY2NvdW50ICcgKyBwdWJsaWNLZXkudG9CYXNlNTgoKSArICc6ICcgKyBlLFxuICAgICAgICApO1xuICAgICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2ggdGhlIGVzdGltYXRlZCBwcm9kdWN0aW9uIHRpbWUgb2YgYSBibG9ja1xuICAgKi9cbiAgYXN5bmMgZ2V0QmxvY2tUaW1lKHNsb3Q6IG51bWJlcik6IFByb21pc2U8bnVtYmVyIHwgbnVsbD4ge1xuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoJ2dldEJsb2NrVGltZScsIFtzbG90XSk7XG4gICAgY29uc3QgcmVzID0gY3JlYXRlKHVuc2FmZVJlcywganNvblJwY1Jlc3VsdChudWxsYWJsZShudW1iZXIoKSkpKTtcbiAgICBpZiAoJ2Vycm9yJyBpbiByZXMpIHtcbiAgICAgIHRocm93IG5ldyBTb2xhbmFKU09OUlBDRXJyb3IoXG4gICAgICAgIHJlcy5lcnJvcixcbiAgICAgICAgYGZhaWxlZCB0byBnZXQgYmxvY2sgdGltZSBmb3Igc2xvdCAke3Nsb3R9YCxcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiByZXMucmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIEZldGNoIHRoZSBsb3dlc3Qgc2xvdCB0aGF0IHRoZSBub2RlIGhhcyBpbmZvcm1hdGlvbiBhYm91dCBpbiBpdHMgbGVkZ2VyLlxuICAgKiBUaGlzIHZhbHVlIG1heSBpbmNyZWFzZSBvdmVyIHRpbWUgaWYgdGhlIG5vZGUgaXMgY29uZmlndXJlZCB0byBwdXJnZSBvbGRlciBsZWRnZXIgZGF0YVxuICAgKi9cbiAgYXN5bmMgZ2V0TWluaW11bUxlZGdlclNsb3QoKTogUHJvbWlzZTxudW1iZXI+IHtcbiAgICBjb25zdCB1bnNhZmVSZXMgPSBhd2FpdCB0aGlzLl9ycGNSZXF1ZXN0KCdtaW5pbXVtTGVkZ2VyU2xvdCcsIFtdKTtcbiAgICBjb25zdCByZXMgPSBjcmVhdGUodW5zYWZlUmVzLCBqc29uUnBjUmVzdWx0KG51bWJlcigpKSk7XG4gICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKFxuICAgICAgICByZXMuZXJyb3IsXG4gICAgICAgICdmYWlsZWQgdG8gZ2V0IG1pbmltdW0gbGVkZ2VyIHNsb3QnLFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcy5yZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2ggdGhlIHNsb3Qgb2YgdGhlIGxvd2VzdCBjb25maXJtZWQgYmxvY2sgdGhhdCBoYXMgbm90IGJlZW4gcHVyZ2VkIGZyb20gdGhlIGxlZGdlclxuICAgKi9cbiAgYXN5bmMgZ2V0Rmlyc3RBdmFpbGFibGVCbG9jaygpOiBQcm9taXNlPG51bWJlcj4ge1xuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoJ2dldEZpcnN0QXZhaWxhYmxlQmxvY2snLCBbXSk7XG4gICAgY29uc3QgcmVzID0gY3JlYXRlKHVuc2FmZVJlcywgU2xvdFJwY1Jlc3VsdCk7XG4gICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKFxuICAgICAgICByZXMuZXJyb3IsXG4gICAgICAgICdmYWlsZWQgdG8gZ2V0IGZpcnN0IGF2YWlsYWJsZSBibG9jaycsXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gcmVzLnJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBGZXRjaCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgY3VycmVudCBzdXBwbHlcbiAgICovXG4gIGFzeW5jIGdldFN1cHBseShcbiAgICBjb25maWc/OiBHZXRTdXBwbHlDb25maWcgfCBDb21taXRtZW50LFxuICApOiBQcm9taXNlPFJwY1Jlc3BvbnNlQW5kQ29udGV4dDxTdXBwbHk+PiB7XG4gICAgbGV0IGNvbmZpZ0FyZzogR2V0U3VwcGx5Q29uZmlnID0ge307XG4gICAgaWYgKHR5cGVvZiBjb25maWcgPT09ICdzdHJpbmcnKSB7XG4gICAgICBjb25maWdBcmcgPSB7Y29tbWl0bWVudDogY29uZmlnfTtcbiAgICB9IGVsc2UgaWYgKGNvbmZpZykge1xuICAgICAgY29uZmlnQXJnID0ge1xuICAgICAgICAuLi5jb25maWcsXG4gICAgICAgIGNvbW1pdG1lbnQ6IChjb25maWcgJiYgY29uZmlnLmNvbW1pdG1lbnQpIHx8IHRoaXMuY29tbWl0bWVudCxcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbmZpZ0FyZyA9IHtcbiAgICAgICAgY29tbWl0bWVudDogdGhpcy5jb21taXRtZW50LFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBjb25zdCB1bnNhZmVSZXMgPSBhd2FpdCB0aGlzLl9ycGNSZXF1ZXN0KCdnZXRTdXBwbHknLCBbY29uZmlnQXJnXSk7XG4gICAgY29uc3QgcmVzID0gY3JlYXRlKHVuc2FmZVJlcywgR2V0U3VwcGx5UnBjUmVzdWx0KTtcbiAgICBpZiAoJ2Vycm9yJyBpbiByZXMpIHtcbiAgICAgIHRocm93IG5ldyBTb2xhbmFKU09OUlBDRXJyb3IocmVzLmVycm9yLCAnZmFpbGVkIHRvIGdldCBzdXBwbHknKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcy5yZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2ggdGhlIGN1cnJlbnQgc3VwcGx5IG9mIGEgdG9rZW4gbWludFxuICAgKi9cbiAgYXN5bmMgZ2V0VG9rZW5TdXBwbHkoXG4gICAgdG9rZW5NaW50QWRkcmVzczogUHVibGljS2V5LFxuICAgIGNvbW1pdG1lbnQ/OiBDb21taXRtZW50LFxuICApOiBQcm9taXNlPFJwY1Jlc3BvbnNlQW5kQ29udGV4dDxUb2tlbkFtb3VudD4+IHtcbiAgICBjb25zdCBhcmdzID0gdGhpcy5fYnVpbGRBcmdzKFt0b2tlbk1pbnRBZGRyZXNzLnRvQmFzZTU4KCldLCBjb21taXRtZW50KTtcbiAgICBjb25zdCB1bnNhZmVSZXMgPSBhd2FpdCB0aGlzLl9ycGNSZXF1ZXN0KCdnZXRUb2tlblN1cHBseScsIGFyZ3MpO1xuICAgIGNvbnN0IHJlcyA9IGNyZWF0ZSh1bnNhZmVSZXMsIGpzb25ScGNSZXN1bHRBbmRDb250ZXh0KFRva2VuQW1vdW50UmVzdWx0KSk7XG4gICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKHJlcy5lcnJvciwgJ2ZhaWxlZCB0byBnZXQgdG9rZW4gc3VwcGx5Jyk7XG4gICAgfVxuICAgIHJldHVybiByZXMucmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIEZldGNoIHRoZSBjdXJyZW50IGJhbGFuY2Ugb2YgYSB0b2tlbiBhY2NvdW50XG4gICAqL1xuICBhc3luYyBnZXRUb2tlbkFjY291bnRCYWxhbmNlKFxuICAgIHRva2VuQWRkcmVzczogUHVibGljS2V5LFxuICAgIGNvbW1pdG1lbnQ/OiBDb21taXRtZW50LFxuICApOiBQcm9taXNlPFJwY1Jlc3BvbnNlQW5kQ29udGV4dDxUb2tlbkFtb3VudD4+IHtcbiAgICBjb25zdCBhcmdzID0gdGhpcy5fYnVpbGRBcmdzKFt0b2tlbkFkZHJlc3MudG9CYXNlNTgoKV0sIGNvbW1pdG1lbnQpO1xuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoJ2dldFRva2VuQWNjb3VudEJhbGFuY2UnLCBhcmdzKTtcbiAgICBjb25zdCByZXMgPSBjcmVhdGUodW5zYWZlUmVzLCBqc29uUnBjUmVzdWx0QW5kQ29udGV4dChUb2tlbkFtb3VudFJlc3VsdCkpO1xuICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgdGhyb3cgbmV3IFNvbGFuYUpTT05SUENFcnJvcihcbiAgICAgICAgcmVzLmVycm9yLFxuICAgICAgICAnZmFpbGVkIHRvIGdldCB0b2tlbiBhY2NvdW50IGJhbGFuY2UnLFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcy5yZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2ggYWxsIHRoZSB0b2tlbiBhY2NvdW50cyBvd25lZCBieSB0aGUgc3BlY2lmaWVkIGFjY291bnRcbiAgICpcbiAgICogQHJldHVybiB7UHJvbWlzZTxScGNSZXNwb25zZUFuZENvbnRleHQ8R2V0UHJvZ3JhbUFjY291bnRzUmVzcG9uc2U+fVxuICAgKi9cbiAgYXN5bmMgZ2V0VG9rZW5BY2NvdW50c0J5T3duZXIoXG4gICAgb3duZXJBZGRyZXNzOiBQdWJsaWNLZXksXG4gICAgZmlsdGVyOiBUb2tlbkFjY291bnRzRmlsdGVyLFxuICAgIGNvbW1pdG1lbnRPckNvbmZpZz86IENvbW1pdG1lbnQgfCBHZXRUb2tlbkFjY291bnRzQnlPd25lckNvbmZpZyxcbiAgKTogUHJvbWlzZTxScGNSZXNwb25zZUFuZENvbnRleHQ8R2V0UHJvZ3JhbUFjY291bnRzUmVzcG9uc2U+PiB7XG4gICAgY29uc3Qge2NvbW1pdG1lbnQsIGNvbmZpZ30gPVxuICAgICAgZXh0cmFjdENvbW1pdG1lbnRGcm9tQ29uZmlnKGNvbW1pdG1lbnRPckNvbmZpZyk7XG4gICAgbGV0IF9hcmdzOiBhbnlbXSA9IFtvd25lckFkZHJlc3MudG9CYXNlNTgoKV07XG4gICAgaWYgKCdtaW50JyBpbiBmaWx0ZXIpIHtcbiAgICAgIF9hcmdzLnB1c2goe21pbnQ6IGZpbHRlci5taW50LnRvQmFzZTU4KCl9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgX2FyZ3MucHVzaCh7cHJvZ3JhbUlkOiBmaWx0ZXIucHJvZ3JhbUlkLnRvQmFzZTU4KCl9KTtcbiAgICB9XG5cbiAgICBjb25zdCBhcmdzID0gdGhpcy5fYnVpbGRBcmdzKF9hcmdzLCBjb21taXRtZW50LCAnYmFzZTY0JywgY29uZmlnKTtcbiAgICBjb25zdCB1bnNhZmVSZXMgPSBhd2FpdCB0aGlzLl9ycGNSZXF1ZXN0KCdnZXRUb2tlbkFjY291bnRzQnlPd25lcicsIGFyZ3MpO1xuICAgIGNvbnN0IHJlcyA9IGNyZWF0ZSh1bnNhZmVSZXMsIEdldFRva2VuQWNjb3VudHNCeU93bmVyKTtcbiAgICBpZiAoJ2Vycm9yJyBpbiByZXMpIHtcbiAgICAgIHRocm93IG5ldyBTb2xhbmFKU09OUlBDRXJyb3IoXG4gICAgICAgIHJlcy5lcnJvcixcbiAgICAgICAgYGZhaWxlZCB0byBnZXQgdG9rZW4gYWNjb3VudHMgb3duZWQgYnkgYWNjb3VudCAke293bmVyQWRkcmVzcy50b0Jhc2U1OCgpfWAsXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gcmVzLnJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBGZXRjaCBwYXJzZWQgdG9rZW4gYWNjb3VudHMgb3duZWQgYnkgdGhlIHNwZWNpZmllZCBhY2NvdW50XG4gICAqXG4gICAqIEByZXR1cm4ge1Byb21pc2U8UnBjUmVzcG9uc2VBbmRDb250ZXh0PEFycmF5PHtwdWJrZXk6IFB1YmxpY0tleSwgYWNjb3VudDogQWNjb3VudEluZm88UGFyc2VkQWNjb3VudERhdGE+fT4+Pn1cbiAgICovXG4gIGFzeW5jIGdldFBhcnNlZFRva2VuQWNjb3VudHNCeU93bmVyKFxuICAgIG93bmVyQWRkcmVzczogUHVibGljS2V5LFxuICAgIGZpbHRlcjogVG9rZW5BY2NvdW50c0ZpbHRlcixcbiAgICBjb21taXRtZW50PzogQ29tbWl0bWVudCxcbiAgKTogUHJvbWlzZTxcbiAgICBScGNSZXNwb25zZUFuZENvbnRleHQ8XG4gICAgICBBcnJheTx7cHVia2V5OiBQdWJsaWNLZXk7IGFjY291bnQ6IEFjY291bnRJbmZvPFBhcnNlZEFjY291bnREYXRhPn0+XG4gICAgPlxuICA+IHtcbiAgICBsZXQgX2FyZ3M6IGFueVtdID0gW293bmVyQWRkcmVzcy50b0Jhc2U1OCgpXTtcbiAgICBpZiAoJ21pbnQnIGluIGZpbHRlcikge1xuICAgICAgX2FyZ3MucHVzaCh7bWludDogZmlsdGVyLm1pbnQudG9CYXNlNTgoKX0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBfYXJncy5wdXNoKHtwcm9ncmFtSWQ6IGZpbHRlci5wcm9ncmFtSWQudG9CYXNlNTgoKX0pO1xuICAgIH1cblxuICAgIGNvbnN0IGFyZ3MgPSB0aGlzLl9idWlsZEFyZ3MoX2FyZ3MsIGNvbW1pdG1lbnQsICdqc29uUGFyc2VkJyk7XG4gICAgY29uc3QgdW5zYWZlUmVzID0gYXdhaXQgdGhpcy5fcnBjUmVxdWVzdCgnZ2V0VG9rZW5BY2NvdW50c0J5T3duZXInLCBhcmdzKTtcbiAgICBjb25zdCByZXMgPSBjcmVhdGUodW5zYWZlUmVzLCBHZXRQYXJzZWRUb2tlbkFjY291bnRzQnlPd25lcik7XG4gICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKFxuICAgICAgICByZXMuZXJyb3IsXG4gICAgICAgIGBmYWlsZWQgdG8gZ2V0IHRva2VuIGFjY291bnRzIG93bmVkIGJ5IGFjY291bnQgJHtvd25lckFkZHJlc3MudG9CYXNlNTgoKX1gLFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcy5yZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2ggdGhlIDIwIGxhcmdlc3QgYWNjb3VudHMgd2l0aCB0aGVpciBjdXJyZW50IGJhbGFuY2VzXG4gICAqL1xuICBhc3luYyBnZXRMYXJnZXN0QWNjb3VudHMoXG4gICAgY29uZmlnPzogR2V0TGFyZ2VzdEFjY291bnRzQ29uZmlnLFxuICApOiBQcm9taXNlPFJwY1Jlc3BvbnNlQW5kQ29udGV4dDxBcnJheTxBY2NvdW50QmFsYW5jZVBhaXI+Pj4ge1xuICAgIGNvbnN0IGFyZyA9IHtcbiAgICAgIC4uLmNvbmZpZyxcbiAgICAgIGNvbW1pdG1lbnQ6IChjb25maWcgJiYgY29uZmlnLmNvbW1pdG1lbnQpIHx8IHRoaXMuY29tbWl0bWVudCxcbiAgICB9O1xuICAgIGNvbnN0IGFyZ3MgPSBhcmcuZmlsdGVyIHx8IGFyZy5jb21taXRtZW50ID8gW2FyZ10gOiBbXTtcbiAgICBjb25zdCB1bnNhZmVSZXMgPSBhd2FpdCB0aGlzLl9ycGNSZXF1ZXN0KCdnZXRMYXJnZXN0QWNjb3VudHMnLCBhcmdzKTtcbiAgICBjb25zdCByZXMgPSBjcmVhdGUodW5zYWZlUmVzLCBHZXRMYXJnZXN0QWNjb3VudHNScGNSZXN1bHQpO1xuICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgdGhyb3cgbmV3IFNvbGFuYUpTT05SUENFcnJvcihyZXMuZXJyb3IsICdmYWlsZWQgdG8gZ2V0IGxhcmdlc3QgYWNjb3VudHMnKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcy5yZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2ggdGhlIDIwIGxhcmdlc3QgdG9rZW4gYWNjb3VudHMgd2l0aCB0aGVpciBjdXJyZW50IGJhbGFuY2VzXG4gICAqIGZvciBhIGdpdmVuIG1pbnQuXG4gICAqL1xuICBhc3luYyBnZXRUb2tlbkxhcmdlc3RBY2NvdW50cyhcbiAgICBtaW50QWRkcmVzczogUHVibGljS2V5LFxuICAgIGNvbW1pdG1lbnQ/OiBDb21taXRtZW50LFxuICApOiBQcm9taXNlPFJwY1Jlc3BvbnNlQW5kQ29udGV4dDxBcnJheTxUb2tlbkFjY291bnRCYWxhbmNlUGFpcj4+PiB7XG4gICAgY29uc3QgYXJncyA9IHRoaXMuX2J1aWxkQXJncyhbbWludEFkZHJlc3MudG9CYXNlNTgoKV0sIGNvbW1pdG1lbnQpO1xuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoJ2dldFRva2VuTGFyZ2VzdEFjY291bnRzJywgYXJncyk7XG4gICAgY29uc3QgcmVzID0gY3JlYXRlKHVuc2FmZVJlcywgR2V0VG9rZW5MYXJnZXN0QWNjb3VudHNSZXN1bHQpO1xuICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgdGhyb3cgbmV3IFNvbGFuYUpTT05SUENFcnJvcihcbiAgICAgICAgcmVzLmVycm9yLFxuICAgICAgICAnZmFpbGVkIHRvIGdldCB0b2tlbiBsYXJnZXN0IGFjY291bnRzJyxcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiByZXMucmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIEZldGNoIGFsbCB0aGUgYWNjb3VudCBpbmZvIGZvciB0aGUgc3BlY2lmaWVkIHB1YmxpYyBrZXksIHJldHVybiB3aXRoIGNvbnRleHRcbiAgICovXG4gIGFzeW5jIGdldEFjY291bnRJbmZvQW5kQ29udGV4dChcbiAgICBwdWJsaWNLZXk6IFB1YmxpY0tleSxcbiAgICBjb21taXRtZW50T3JDb25maWc/OiBDb21taXRtZW50IHwgR2V0QWNjb3VudEluZm9Db25maWcsXG4gICk6IFByb21pc2U8UnBjUmVzcG9uc2VBbmRDb250ZXh0PEFjY291bnRJbmZvPEJ1ZmZlcj4gfCBudWxsPj4ge1xuICAgIGNvbnN0IHtjb21taXRtZW50LCBjb25maWd9ID1cbiAgICAgIGV4dHJhY3RDb21taXRtZW50RnJvbUNvbmZpZyhjb21taXRtZW50T3JDb25maWcpO1xuICAgIGNvbnN0IGFyZ3MgPSB0aGlzLl9idWlsZEFyZ3MoXG4gICAgICBbcHVibGljS2V5LnRvQmFzZTU4KCldLFxuICAgICAgY29tbWl0bWVudCxcbiAgICAgICdiYXNlNjQnLFxuICAgICAgY29uZmlnLFxuICAgICk7XG4gICAgY29uc3QgdW5zYWZlUmVzID0gYXdhaXQgdGhpcy5fcnBjUmVxdWVzdCgnZ2V0QWNjb3VudEluZm8nLCBhcmdzKTtcbiAgICBjb25zdCByZXMgPSBjcmVhdGUoXG4gICAgICB1bnNhZmVSZXMsXG4gICAgICBqc29uUnBjUmVzdWx0QW5kQ29udGV4dChudWxsYWJsZShBY2NvdW50SW5mb1Jlc3VsdCkpLFxuICAgICk7XG4gICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKFxuICAgICAgICByZXMuZXJyb3IsXG4gICAgICAgIGBmYWlsZWQgdG8gZ2V0IGluZm8gYWJvdXQgYWNjb3VudCAke3B1YmxpY0tleS50b0Jhc2U1OCgpfWAsXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gcmVzLnJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBGZXRjaCBwYXJzZWQgYWNjb3VudCBpbmZvIGZvciB0aGUgc3BlY2lmaWVkIHB1YmxpYyBrZXlcbiAgICovXG4gIGFzeW5jIGdldFBhcnNlZEFjY291bnRJbmZvKFxuICAgIHB1YmxpY0tleTogUHVibGljS2V5LFxuICAgIGNvbW1pdG1lbnRPckNvbmZpZz86IENvbW1pdG1lbnQgfCBHZXRBY2NvdW50SW5mb0NvbmZpZyxcbiAgKTogUHJvbWlzZTxcbiAgICBScGNSZXNwb25zZUFuZENvbnRleHQ8QWNjb3VudEluZm88QnVmZmVyIHwgUGFyc2VkQWNjb3VudERhdGE+IHwgbnVsbD5cbiAgPiB7XG4gICAgY29uc3Qge2NvbW1pdG1lbnQsIGNvbmZpZ30gPVxuICAgICAgZXh0cmFjdENvbW1pdG1lbnRGcm9tQ29uZmlnKGNvbW1pdG1lbnRPckNvbmZpZyk7XG4gICAgY29uc3QgYXJncyA9IHRoaXMuX2J1aWxkQXJncyhcbiAgICAgIFtwdWJsaWNLZXkudG9CYXNlNTgoKV0sXG4gICAgICBjb21taXRtZW50LFxuICAgICAgJ2pzb25QYXJzZWQnLFxuICAgICAgY29uZmlnLFxuICAgICk7XG4gICAgY29uc3QgdW5zYWZlUmVzID0gYXdhaXQgdGhpcy5fcnBjUmVxdWVzdCgnZ2V0QWNjb3VudEluZm8nLCBhcmdzKTtcbiAgICBjb25zdCByZXMgPSBjcmVhdGUoXG4gICAgICB1bnNhZmVSZXMsXG4gICAgICBqc29uUnBjUmVzdWx0QW5kQ29udGV4dChudWxsYWJsZShQYXJzZWRBY2NvdW50SW5mb1Jlc3VsdCkpLFxuICAgICk7XG4gICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKFxuICAgICAgICByZXMuZXJyb3IsXG4gICAgICAgIGBmYWlsZWQgdG8gZ2V0IGluZm8gYWJvdXQgYWNjb3VudCAke3B1YmxpY0tleS50b0Jhc2U1OCgpfWAsXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gcmVzLnJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBGZXRjaCBhbGwgdGhlIGFjY291bnQgaW5mbyBmb3IgdGhlIHNwZWNpZmllZCBwdWJsaWMga2V5XG4gICAqL1xuICBhc3luYyBnZXRBY2NvdW50SW5mbyhcbiAgICBwdWJsaWNLZXk6IFB1YmxpY0tleSxcbiAgICBjb21taXRtZW50T3JDb25maWc/OiBDb21taXRtZW50IHwgR2V0QWNjb3VudEluZm9Db25maWcsXG4gICk6IFByb21pc2U8QWNjb3VudEluZm88QnVmZmVyPiB8IG51bGw+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzID0gYXdhaXQgdGhpcy5nZXRBY2NvdW50SW5mb0FuZENvbnRleHQoXG4gICAgICAgIHB1YmxpY0tleSxcbiAgICAgICAgY29tbWl0bWVudE9yQ29uZmlnLFxuICAgICAgKTtcbiAgICAgIHJldHVybiByZXMudmFsdWU7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnZmFpbGVkIHRvIGdldCBpbmZvIGFib3V0IGFjY291bnQgJyArIHB1YmxpY0tleS50b0Jhc2U1OCgpICsgJzogJyArIGUsXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBGZXRjaCBhbGwgdGhlIGFjY291bnQgaW5mbyBmb3IgbXVsdGlwbGUgYWNjb3VudHMgc3BlY2lmaWVkIGJ5IGFuIGFycmF5IG9mIHB1YmxpYyBrZXlzLCByZXR1cm4gd2l0aCBjb250ZXh0XG4gICAqL1xuICBhc3luYyBnZXRNdWx0aXBsZVBhcnNlZEFjY291bnRzKFxuICAgIHB1YmxpY0tleXM6IFB1YmxpY0tleVtdLFxuICAgIHJhd0NvbmZpZz86IEdldE11bHRpcGxlQWNjb3VudHNDb25maWcsXG4gICk6IFByb21pc2U8XG4gICAgUnBjUmVzcG9uc2VBbmRDb250ZXh0PChBY2NvdW50SW5mbzxCdWZmZXIgfCBQYXJzZWRBY2NvdW50RGF0YT4gfCBudWxsKVtdPlxuICA+IHtcbiAgICBjb25zdCB7Y29tbWl0bWVudCwgY29uZmlnfSA9IGV4dHJhY3RDb21taXRtZW50RnJvbUNvbmZpZyhyYXdDb25maWcpO1xuICAgIGNvbnN0IGtleXMgPSBwdWJsaWNLZXlzLm1hcChrZXkgPT4ga2V5LnRvQmFzZTU4KCkpO1xuICAgIGNvbnN0IGFyZ3MgPSB0aGlzLl9idWlsZEFyZ3MoW2tleXNdLCBjb21taXRtZW50LCAnanNvblBhcnNlZCcsIGNvbmZpZyk7XG4gICAgY29uc3QgdW5zYWZlUmVzID0gYXdhaXQgdGhpcy5fcnBjUmVxdWVzdCgnZ2V0TXVsdGlwbGVBY2NvdW50cycsIGFyZ3MpO1xuICAgIGNvbnN0IHJlcyA9IGNyZWF0ZShcbiAgICAgIHVuc2FmZVJlcyxcbiAgICAgIGpzb25ScGNSZXN1bHRBbmRDb250ZXh0KGFycmF5KG51bGxhYmxlKFBhcnNlZEFjY291bnRJbmZvUmVzdWx0KSkpLFxuICAgICk7XG4gICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKFxuICAgICAgICByZXMuZXJyb3IsXG4gICAgICAgIGBmYWlsZWQgdG8gZ2V0IGluZm8gZm9yIGFjY291bnRzICR7a2V5c31gLFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcy5yZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2ggYWxsIHRoZSBhY2NvdW50IGluZm8gZm9yIG11bHRpcGxlIGFjY291bnRzIHNwZWNpZmllZCBieSBhbiBhcnJheSBvZiBwdWJsaWMga2V5cywgcmV0dXJuIHdpdGggY29udGV4dFxuICAgKi9cbiAgYXN5bmMgZ2V0TXVsdGlwbGVBY2NvdW50c0luZm9BbmRDb250ZXh0KFxuICAgIHB1YmxpY0tleXM6IFB1YmxpY0tleVtdLFxuICAgIGNvbW1pdG1lbnRPckNvbmZpZz86IENvbW1pdG1lbnQgfCBHZXRNdWx0aXBsZUFjY291bnRzQ29uZmlnLFxuICApOiBQcm9taXNlPFJwY1Jlc3BvbnNlQW5kQ29udGV4dDwoQWNjb3VudEluZm88QnVmZmVyPiB8IG51bGwpW10+PiB7XG4gICAgY29uc3Qge2NvbW1pdG1lbnQsIGNvbmZpZ30gPVxuICAgICAgZXh0cmFjdENvbW1pdG1lbnRGcm9tQ29uZmlnKGNvbW1pdG1lbnRPckNvbmZpZyk7XG4gICAgY29uc3Qga2V5cyA9IHB1YmxpY0tleXMubWFwKGtleSA9PiBrZXkudG9CYXNlNTgoKSk7XG4gICAgY29uc3QgYXJncyA9IHRoaXMuX2J1aWxkQXJncyhba2V5c10sIGNvbW1pdG1lbnQsICdiYXNlNjQnLCBjb25maWcpO1xuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoJ2dldE11bHRpcGxlQWNjb3VudHMnLCBhcmdzKTtcbiAgICBjb25zdCByZXMgPSBjcmVhdGUoXG4gICAgICB1bnNhZmVSZXMsXG4gICAgICBqc29uUnBjUmVzdWx0QW5kQ29udGV4dChhcnJheShudWxsYWJsZShBY2NvdW50SW5mb1Jlc3VsdCkpKSxcbiAgICApO1xuICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgdGhyb3cgbmV3IFNvbGFuYUpTT05SUENFcnJvcihcbiAgICAgICAgcmVzLmVycm9yLFxuICAgICAgICBgZmFpbGVkIHRvIGdldCBpbmZvIGZvciBhY2NvdW50cyAke2tleXN9YCxcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiByZXMucmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIEZldGNoIGFsbCB0aGUgYWNjb3VudCBpbmZvIGZvciBtdWx0aXBsZSBhY2NvdW50cyBzcGVjaWZpZWQgYnkgYW4gYXJyYXkgb2YgcHVibGljIGtleXNcbiAgICovXG4gIGFzeW5jIGdldE11bHRpcGxlQWNjb3VudHNJbmZvKFxuICAgIHB1YmxpY0tleXM6IFB1YmxpY0tleVtdLFxuICAgIGNvbW1pdG1lbnRPckNvbmZpZz86IENvbW1pdG1lbnQgfCBHZXRNdWx0aXBsZUFjY291bnRzQ29uZmlnLFxuICApOiBQcm9taXNlPChBY2NvdW50SW5mbzxCdWZmZXI+IHwgbnVsbClbXT4ge1xuICAgIGNvbnN0IHJlcyA9IGF3YWl0IHRoaXMuZ2V0TXVsdGlwbGVBY2NvdW50c0luZm9BbmRDb250ZXh0KFxuICAgICAgcHVibGljS2V5cyxcbiAgICAgIGNvbW1pdG1lbnRPckNvbmZpZyxcbiAgICApO1xuICAgIHJldHVybiByZXMudmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBlcG9jaCBhY3RpdmF0aW9uIGluZm9ybWF0aW9uIGZvciBhIHN0YWtlIGFjY291bnQgdGhhdCBoYXMgYmVlbiBkZWxlZ2F0ZWRcbiAgICovXG4gIGFzeW5jIGdldFN0YWtlQWN0aXZhdGlvbihcbiAgICBwdWJsaWNLZXk6IFB1YmxpY0tleSxcbiAgICBjb21taXRtZW50T3JDb25maWc/OiBDb21taXRtZW50IHwgR2V0U3Rha2VBY3RpdmF0aW9uQ29uZmlnLFxuICAgIGVwb2NoPzogbnVtYmVyLFxuICApOiBQcm9taXNlPFN0YWtlQWN0aXZhdGlvbkRhdGE+IHtcbiAgICBjb25zdCB7Y29tbWl0bWVudCwgY29uZmlnfSA9XG4gICAgICBleHRyYWN0Q29tbWl0bWVudEZyb21Db25maWcoY29tbWl0bWVudE9yQ29uZmlnKTtcbiAgICBjb25zdCBhcmdzID0gdGhpcy5fYnVpbGRBcmdzKFxuICAgICAgW3B1YmxpY0tleS50b0Jhc2U1OCgpXSxcbiAgICAgIGNvbW1pdG1lbnQsXG4gICAgICB1bmRlZmluZWQgLyogZW5jb2RpbmcgKi8sXG4gICAgICB7XG4gICAgICAgIC4uLmNvbmZpZyxcbiAgICAgICAgZXBvY2g6IGVwb2NoICE9IG51bGwgPyBlcG9jaCA6IGNvbmZpZz8uZXBvY2gsXG4gICAgICB9LFxuICAgICk7XG5cbiAgICBjb25zdCB1bnNhZmVSZXMgPSBhd2FpdCB0aGlzLl9ycGNSZXF1ZXN0KCdnZXRTdGFrZUFjdGl2YXRpb24nLCBhcmdzKTtcbiAgICBjb25zdCByZXMgPSBjcmVhdGUodW5zYWZlUmVzLCBqc29uUnBjUmVzdWx0KFN0YWtlQWN0aXZhdGlvblJlc3VsdCkpO1xuICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgdGhyb3cgbmV3IFNvbGFuYUpTT05SUENFcnJvcihcbiAgICAgICAgcmVzLmVycm9yLFxuICAgICAgICBgZmFpbGVkIHRvIGdldCBTdGFrZSBBY3RpdmF0aW9uICR7cHVibGljS2V5LnRvQmFzZTU4KCl9YCxcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiByZXMucmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIEZldGNoIGFsbCB0aGUgYWNjb3VudHMgb3duZWQgYnkgdGhlIHNwZWNpZmllZCBwcm9ncmFtIGlkXG4gICAqXG4gICAqIEByZXR1cm4ge1Byb21pc2U8QXJyYXk8e3B1YmtleTogUHVibGljS2V5LCBhY2NvdW50OiBBY2NvdW50SW5mbzxCdWZmZXI+fT4+fVxuICAgKi9cbiAgYXN5bmMgZ2V0UHJvZ3JhbUFjY291bnRzKFxuICAgIHByb2dyYW1JZDogUHVibGljS2V5LFxuICAgIGNvbmZpZ09yQ29tbWl0bWVudDogR2V0UHJvZ3JhbUFjY291bnRzQ29uZmlnICZcbiAgICAgIFJlYWRvbmx5PHt3aXRoQ29udGV4dDogdHJ1ZX0+LFxuICApOiBQcm9taXNlPFJwY1Jlc3BvbnNlQW5kQ29udGV4dDxHZXRQcm9ncmFtQWNjb3VudHNSZXNwb25zZT4+O1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwZS1jbGFzcy1tZW1iZXJzXG4gIGFzeW5jIGdldFByb2dyYW1BY2NvdW50cyhcbiAgICBwcm9ncmFtSWQ6IFB1YmxpY0tleSxcbiAgICBjb25maWdPckNvbW1pdG1lbnQ/OiBHZXRQcm9ncmFtQWNjb3VudHNDb25maWcgfCBDb21taXRtZW50LFxuICApOiBQcm9taXNlPEdldFByb2dyYW1BY2NvdW50c1Jlc3BvbnNlPjtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGUtY2xhc3MtbWVtYmVyc1xuICBhc3luYyBnZXRQcm9ncmFtQWNjb3VudHMoXG4gICAgcHJvZ3JhbUlkOiBQdWJsaWNLZXksXG4gICAgY29uZmlnT3JDb21taXRtZW50PzogR2V0UHJvZ3JhbUFjY291bnRzQ29uZmlnIHwgQ29tbWl0bWVudCxcbiAgKTogUHJvbWlzZTxcbiAgICB8IEdldFByb2dyYW1BY2NvdW50c1Jlc3BvbnNlXG4gICAgfCBScGNSZXNwb25zZUFuZENvbnRleHQ8R2V0UHJvZ3JhbUFjY291bnRzUmVzcG9uc2U+XG4gID4ge1xuICAgIGNvbnN0IHtjb21taXRtZW50LCBjb25maWd9ID1cbiAgICAgIGV4dHJhY3RDb21taXRtZW50RnJvbUNvbmZpZyhjb25maWdPckNvbW1pdG1lbnQpO1xuICAgIGNvbnN0IHtlbmNvZGluZywgLi4uY29uZmlnV2l0aG91dEVuY29kaW5nfSA9IGNvbmZpZyB8fCB7fTtcbiAgICBjb25zdCBhcmdzID0gdGhpcy5fYnVpbGRBcmdzKFxuICAgICAgW3Byb2dyYW1JZC50b0Jhc2U1OCgpXSxcbiAgICAgIGNvbW1pdG1lbnQsXG4gICAgICBlbmNvZGluZyB8fCAnYmFzZTY0JyxcbiAgICAgIGNvbmZpZ1dpdGhvdXRFbmNvZGluZyxcbiAgICApO1xuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoJ2dldFByb2dyYW1BY2NvdW50cycsIGFyZ3MpO1xuICAgIGNvbnN0IGJhc2VTY2hlbWEgPSBhcnJheShLZXllZEFjY291bnRJbmZvUmVzdWx0KTtcbiAgICBjb25zdCByZXMgPVxuICAgICAgY29uZmlnV2l0aG91dEVuY29kaW5nLndpdGhDb250ZXh0ID09PSB0cnVlXG4gICAgICAgID8gY3JlYXRlKHVuc2FmZVJlcywganNvblJwY1Jlc3VsdEFuZENvbnRleHQoYmFzZVNjaGVtYSkpXG4gICAgICAgIDogY3JlYXRlKHVuc2FmZVJlcywganNvblJwY1Jlc3VsdChiYXNlU2NoZW1hKSk7XG4gICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKFxuICAgICAgICByZXMuZXJyb3IsXG4gICAgICAgIGBmYWlsZWQgdG8gZ2V0IGFjY291bnRzIG93bmVkIGJ5IHByb2dyYW0gJHtwcm9ncmFtSWQudG9CYXNlNTgoKX1gLFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcy5yZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2ggYW5kIHBhcnNlIGFsbCB0aGUgYWNjb3VudHMgb3duZWQgYnkgdGhlIHNwZWNpZmllZCBwcm9ncmFtIGlkXG4gICAqXG4gICAqIEByZXR1cm4ge1Byb21pc2U8QXJyYXk8e3B1YmtleTogUHVibGljS2V5LCBhY2NvdW50OiBBY2NvdW50SW5mbzxCdWZmZXIgfCBQYXJzZWRBY2NvdW50RGF0YT59Pj59XG4gICAqL1xuICBhc3luYyBnZXRQYXJzZWRQcm9ncmFtQWNjb3VudHMoXG4gICAgcHJvZ3JhbUlkOiBQdWJsaWNLZXksXG4gICAgY29uZmlnT3JDb21taXRtZW50PzogR2V0UGFyc2VkUHJvZ3JhbUFjY291bnRzQ29uZmlnIHwgQ29tbWl0bWVudCxcbiAgKTogUHJvbWlzZTxcbiAgICBBcnJheTx7XG4gICAgICBwdWJrZXk6IFB1YmxpY0tleTtcbiAgICAgIGFjY291bnQ6IEFjY291bnRJbmZvPEJ1ZmZlciB8IFBhcnNlZEFjY291bnREYXRhPjtcbiAgICB9PlxuICA+IHtcbiAgICBjb25zdCB7Y29tbWl0bWVudCwgY29uZmlnfSA9XG4gICAgICBleHRyYWN0Q29tbWl0bWVudEZyb21Db25maWcoY29uZmlnT3JDb21taXRtZW50KTtcbiAgICBjb25zdCBhcmdzID0gdGhpcy5fYnVpbGRBcmdzKFxuICAgICAgW3Byb2dyYW1JZC50b0Jhc2U1OCgpXSxcbiAgICAgIGNvbW1pdG1lbnQsXG4gICAgICAnanNvblBhcnNlZCcsXG4gICAgICBjb25maWcsXG4gICAgKTtcbiAgICBjb25zdCB1bnNhZmVSZXMgPSBhd2FpdCB0aGlzLl9ycGNSZXF1ZXN0KCdnZXRQcm9ncmFtQWNjb3VudHMnLCBhcmdzKTtcbiAgICBjb25zdCByZXMgPSBjcmVhdGUoXG4gICAgICB1bnNhZmVSZXMsXG4gICAgICBqc29uUnBjUmVzdWx0KGFycmF5KEtleWVkUGFyc2VkQWNjb3VudEluZm9SZXN1bHQpKSxcbiAgICApO1xuICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgdGhyb3cgbmV3IFNvbGFuYUpTT05SUENFcnJvcihcbiAgICAgICAgcmVzLmVycm9yLFxuICAgICAgICBgZmFpbGVkIHRvIGdldCBhY2NvdW50cyBvd25lZCBieSBwcm9ncmFtICR7cHJvZ3JhbUlkLnRvQmFzZTU4KCl9YCxcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiByZXMucmVzdWx0O1xuICB9XG5cbiAgY29uZmlybVRyYW5zYWN0aW9uKFxuICAgIHN0cmF0ZWd5OiBUcmFuc2FjdGlvbkNvbmZpcm1hdGlvblN0cmF0ZWd5LFxuICAgIGNvbW1pdG1lbnQ/OiBDb21taXRtZW50LFxuICApOiBQcm9taXNlPFJwY1Jlc3BvbnNlQW5kQ29udGV4dDxTaWduYXR1cmVSZXN1bHQ+PjtcblxuICAvKiogQGRlcHJlY2F0ZWQgSW5zdGVhZCwgY2FsbCBgY29uZmlybVRyYW5zYWN0aW9uYCBhbmQgcGFzcyBpbiB7QGxpbmsgVHJhbnNhY3Rpb25Db25maXJtYXRpb25TdHJhdGVneX0gKi9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGUtY2xhc3MtbWVtYmVyc1xuICBjb25maXJtVHJhbnNhY3Rpb24oXG4gICAgc3RyYXRlZ3k6IFRyYW5zYWN0aW9uU2lnbmF0dXJlLFxuICAgIGNvbW1pdG1lbnQ/OiBDb21taXRtZW50LFxuICApOiBQcm9taXNlPFJwY1Jlc3BvbnNlQW5kQ29udGV4dDxTaWduYXR1cmVSZXN1bHQ+PjtcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwZS1jbGFzcy1tZW1iZXJzXG4gIGFzeW5jIGNvbmZpcm1UcmFuc2FjdGlvbihcbiAgICBzdHJhdGVneTogVHJhbnNhY3Rpb25Db25maXJtYXRpb25TdHJhdGVneSB8IFRyYW5zYWN0aW9uU2lnbmF0dXJlLFxuICAgIGNvbW1pdG1lbnQ/OiBDb21taXRtZW50LFxuICApOiBQcm9taXNlPFJwY1Jlc3BvbnNlQW5kQ29udGV4dDxTaWduYXR1cmVSZXN1bHQ+PiB7XG4gICAgbGV0IHJhd1NpZ25hdHVyZTogc3RyaW5nO1xuXG4gICAgaWYgKHR5cGVvZiBzdHJhdGVneSA9PSAnc3RyaW5nJykge1xuICAgICAgcmF3U2lnbmF0dXJlID0gc3RyYXRlZ3k7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGNvbmZpZyA9IHN0cmF0ZWd5IGFzIFRyYW5zYWN0aW9uQ29uZmlybWF0aW9uU3RyYXRlZ3k7XG5cbiAgICAgIGlmIChjb25maWcuYWJvcnRTaWduYWw/LmFib3J0ZWQpIHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVqZWN0KGNvbmZpZy5hYm9ydFNpZ25hbC5yZWFzb24pO1xuICAgICAgfVxuICAgICAgcmF3U2lnbmF0dXJlID0gY29uZmlnLnNpZ25hdHVyZTtcbiAgICB9XG5cbiAgICBsZXQgZGVjb2RlZFNpZ25hdHVyZTtcblxuICAgIHRyeSB7XG4gICAgICBkZWNvZGVkU2lnbmF0dXJlID0gYnM1OC5kZWNvZGUocmF3U2lnbmF0dXJlKTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignc2lnbmF0dXJlIG11c3QgYmUgYmFzZTU4IGVuY29kZWQ6ICcgKyByYXdTaWduYXR1cmUpO1xuICAgIH1cblxuICAgIGFzc2VydChkZWNvZGVkU2lnbmF0dXJlLmxlbmd0aCA9PT0gNjQsICdzaWduYXR1cmUgaGFzIGludmFsaWQgbGVuZ3RoJyk7XG5cbiAgICBpZiAodHlwZW9mIHN0cmF0ZWd5ID09PSAnc3RyaW5nJykge1xuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuY29uZmlybVRyYW5zYWN0aW9uVXNpbmdMZWdhY3lUaW1lb3V0U3RyYXRlZ3koe1xuICAgICAgICBjb21taXRtZW50OiBjb21taXRtZW50IHx8IHRoaXMuY29tbWl0bWVudCxcbiAgICAgICAgc2lnbmF0dXJlOiByYXdTaWduYXR1cmUsXG4gICAgICB9KTtcbiAgICB9IGVsc2UgaWYgKCdsYXN0VmFsaWRCbG9ja0hlaWdodCcgaW4gc3RyYXRlZ3kpIHtcbiAgICAgIHJldHVybiBhd2FpdCB0aGlzLmNvbmZpcm1UcmFuc2FjdGlvblVzaW5nQmxvY2tIZWlnaHRFeGNlZWRhbmNlU3RyYXRlZ3koe1xuICAgICAgICBjb21taXRtZW50OiBjb21taXRtZW50IHx8IHRoaXMuY29tbWl0bWVudCxcbiAgICAgICAgc3RyYXRlZ3ksXG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuY29uZmlybVRyYW5zYWN0aW9uVXNpbmdEdXJhYmxlTm9uY2VTdHJhdGVneSh7XG4gICAgICAgIGNvbW1pdG1lbnQ6IGNvbW1pdG1lbnQgfHwgdGhpcy5jb21taXRtZW50LFxuICAgICAgICBzdHJhdGVneSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q2FuY2VsbGF0aW9uUHJvbWlzZShzaWduYWw/OiBBYm9ydFNpZ25hbCk6IFByb21pc2U8bmV2ZXI+IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2U8bmV2ZXI+KChfLCByZWplY3QpID0+IHtcbiAgICAgIGlmIChzaWduYWwgPT0gbnVsbCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBpZiAoc2lnbmFsLmFib3J0ZWQpIHtcbiAgICAgICAgcmVqZWN0KHNpZ25hbC5yZWFzb24pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc2lnbmFsLmFkZEV2ZW50TGlzdGVuZXIoJ2Fib3J0JywgKCkgPT4ge1xuICAgICAgICAgIHJlamVjdChzaWduYWwucmVhc29uKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldFRyYW5zYWN0aW9uQ29uZmlybWF0aW9uUHJvbWlzZSh7XG4gICAgY29tbWl0bWVudCxcbiAgICBzaWduYXR1cmUsXG4gIH06IHtcbiAgICBjb21taXRtZW50PzogQ29tbWl0bWVudDtcbiAgICBzaWduYXR1cmU6IHN0cmluZztcbiAgfSk6IHtcbiAgICBhYm9ydENvbmZpcm1hdGlvbigpOiB2b2lkO1xuICAgIGNvbmZpcm1hdGlvblByb21pc2U6IFByb21pc2U8e1xuICAgICAgX190eXBlOiBUcmFuc2FjdGlvblN0YXR1cy5QUk9DRVNTRUQ7XG4gICAgICByZXNwb25zZTogUnBjUmVzcG9uc2VBbmRDb250ZXh0PFNpZ25hdHVyZVJlc3VsdD47XG4gICAgfT47XG4gIH0ge1xuICAgIGxldCBzaWduYXR1cmVTdWJzY3JpcHRpb25JZDogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICAgIGxldCBkaXNwb3NlU2lnbmF0dXJlU3Vic2NyaXB0aW9uU3RhdGVDaGFuZ2VPYnNlcnZlcjpcbiAgICAgIHwgU3Vic2NyaXB0aW9uU3RhdGVDaGFuZ2VEaXNwb3NlRm5cbiAgICAgIHwgdW5kZWZpbmVkO1xuICAgIGxldCBkb25lID0gZmFsc2U7XG4gICAgY29uc3QgY29uZmlybWF0aW9uUHJvbWlzZSA9IG5ldyBQcm9taXNlPHtcbiAgICAgIF9fdHlwZTogVHJhbnNhY3Rpb25TdGF0dXMuUFJPQ0VTU0VEO1xuICAgICAgcmVzcG9uc2U6IFJwY1Jlc3BvbnNlQW5kQ29udGV4dDxTaWduYXR1cmVSZXN1bHQ+O1xuICAgIH0+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIHNpZ25hdHVyZVN1YnNjcmlwdGlvbklkID0gdGhpcy5vblNpZ25hdHVyZShcbiAgICAgICAgICBzaWduYXR1cmUsXG4gICAgICAgICAgKHJlc3VsdDogU2lnbmF0dXJlUmVzdWx0LCBjb250ZXh0OiBDb250ZXh0KSA9PiB7XG4gICAgICAgICAgICBzaWduYXR1cmVTdWJzY3JpcHRpb25JZCA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0ge1xuICAgICAgICAgICAgICBjb250ZXh0LFxuICAgICAgICAgICAgICB2YWx1ZTogcmVzdWx0LFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIHJlc29sdmUoe19fdHlwZTogVHJhbnNhY3Rpb25TdGF0dXMuUFJPQ0VTU0VELCByZXNwb25zZX0pO1xuICAgICAgICAgIH0sXG4gICAgICAgICAgY29tbWl0bWVudCxcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3Qgc3Vic2NyaXB0aW9uU2V0dXBQcm9taXNlID0gbmV3IFByb21pc2U8dm9pZD4oXG4gICAgICAgICAgcmVzb2x2ZVN1YnNjcmlwdGlvblNldHVwID0+IHtcbiAgICAgICAgICAgIGlmIChzaWduYXR1cmVTdWJzY3JpcHRpb25JZCA9PSBudWxsKSB7XG4gICAgICAgICAgICAgIHJlc29sdmVTdWJzY3JpcHRpb25TZXR1cCgpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgZGlzcG9zZVNpZ25hdHVyZVN1YnNjcmlwdGlvblN0YXRlQ2hhbmdlT2JzZXJ2ZXIgPVxuICAgICAgICAgICAgICAgIHRoaXMuX29uU3Vic2NyaXB0aW9uU3RhdGVDaGFuZ2UoXG4gICAgICAgICAgICAgICAgICBzaWduYXR1cmVTdWJzY3JpcHRpb25JZCxcbiAgICAgICAgICAgICAgICAgIG5leHRTdGF0ZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChuZXh0U3RhdGUgPT09ICdzdWJzY3JpYmVkJykge1xuICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmVTdWJzY3JpcHRpb25TZXR1cCgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgKTtcbiAgICAgICAgKGFzeW5jICgpID0+IHtcbiAgICAgICAgICBhd2FpdCBzdWJzY3JpcHRpb25TZXR1cFByb21pc2U7XG4gICAgICAgICAgaWYgKGRvbmUpIHJldHVybjtcbiAgICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuZ2V0U2lnbmF0dXJlU3RhdHVzKHNpZ25hdHVyZSk7XG4gICAgICAgICAgaWYgKGRvbmUpIHJldHVybjtcbiAgICAgICAgICBpZiAocmVzcG9uc2UgPT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cbiAgICAgICAgICBjb25zdCB7Y29udGV4dCwgdmFsdWV9ID0gcmVzcG9uc2U7XG4gICAgICAgICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKHZhbHVlPy5lcnIpIHtcbiAgICAgICAgICAgIHJlamVjdCh2YWx1ZS5lcnIpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzd2l0Y2ggKGNvbW1pdG1lbnQpIHtcbiAgICAgICAgICAgICAgY2FzZSAnY29uZmlybWVkJzpcbiAgICAgICAgICAgICAgY2FzZSAnc2luZ2xlJzpcbiAgICAgICAgICAgICAgY2FzZSAnc2luZ2xlR29zc2lwJzoge1xuICAgICAgICAgICAgICAgIGlmICh2YWx1ZS5jb25maXJtYXRpb25TdGF0dXMgPT09ICdwcm9jZXNzZWQnKSB7XG4gICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGNhc2UgJ2ZpbmFsaXplZCc6XG4gICAgICAgICAgICAgIGNhc2UgJ21heCc6XG4gICAgICAgICAgICAgIGNhc2UgJ3Jvb3QnOiB7XG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgdmFsdWUuY29uZmlybWF0aW9uU3RhdHVzID09PSAncHJvY2Vzc2VkJyB8fFxuICAgICAgICAgICAgICAgICAgdmFsdWUuY29uZmlybWF0aW9uU3RhdHVzID09PSAnY29uZmlybWVkJ1xuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAvLyBleGhhdXN0IGVudW1zIHRvIGVuc3VyZSBmdWxsIGNvdmVyYWdlXG4gICAgICAgICAgICAgIGNhc2UgJ3Byb2Nlc3NlZCc6XG4gICAgICAgICAgICAgIGNhc2UgJ3JlY2VudCc6XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkb25lID0gdHJ1ZTtcbiAgICAgICAgICAgIHJlc29sdmUoe1xuICAgICAgICAgICAgICBfX3R5cGU6IFRyYW5zYWN0aW9uU3RhdHVzLlBST0NFU1NFRCxcbiAgICAgICAgICAgICAgcmVzcG9uc2U6IHtcbiAgICAgICAgICAgICAgICBjb250ZXh0LFxuICAgICAgICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KSgpO1xuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIHJlamVjdChlcnIpO1xuICAgICAgfVxuICAgIH0pO1xuICAgIGNvbnN0IGFib3J0Q29uZmlybWF0aW9uID0gKCkgPT4ge1xuICAgICAgaWYgKGRpc3Bvc2VTaWduYXR1cmVTdWJzY3JpcHRpb25TdGF0ZUNoYW5nZU9ic2VydmVyKSB7XG4gICAgICAgIGRpc3Bvc2VTaWduYXR1cmVTdWJzY3JpcHRpb25TdGF0ZUNoYW5nZU9ic2VydmVyKCk7XG4gICAgICAgIGRpc3Bvc2VTaWduYXR1cmVTdWJzY3JpcHRpb25TdGF0ZUNoYW5nZU9ic2VydmVyID0gdW5kZWZpbmVkO1xuICAgICAgfVxuICAgICAgaWYgKHNpZ25hdHVyZVN1YnNjcmlwdGlvbklkICE9IG51bGwpIHtcbiAgICAgICAgdGhpcy5yZW1vdmVTaWduYXR1cmVMaXN0ZW5lcihzaWduYXR1cmVTdWJzY3JpcHRpb25JZCk7XG4gICAgICAgIHNpZ25hdHVyZVN1YnNjcmlwdGlvbklkID0gdW5kZWZpbmVkO1xuICAgICAgfVxuICAgIH07XG4gICAgcmV0dXJuIHthYm9ydENvbmZpcm1hdGlvbiwgY29uZmlybWF0aW9uUHJvbWlzZX07XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGNvbmZpcm1UcmFuc2FjdGlvblVzaW5nQmxvY2tIZWlnaHRFeGNlZWRhbmNlU3RyYXRlZ3koe1xuICAgIGNvbW1pdG1lbnQsXG4gICAgc3RyYXRlZ3k6IHthYm9ydFNpZ25hbCwgbGFzdFZhbGlkQmxvY2tIZWlnaHQsIHNpZ25hdHVyZX0sXG4gIH06IHtcbiAgICBjb21taXRtZW50PzogQ29tbWl0bWVudDtcbiAgICBzdHJhdGVneTogQmxvY2toZWlnaHRCYXNlZFRyYW5zYWN0aW9uQ29uZmlybWF0aW9uU3RyYXRlZ3k7XG4gIH0pIHtcbiAgICBsZXQgZG9uZTogYm9vbGVhbiA9IGZhbHNlO1xuICAgIGNvbnN0IGV4cGlyeVByb21pc2UgPSBuZXcgUHJvbWlzZTx7XG4gICAgICBfX3R5cGU6IFRyYW5zYWN0aW9uU3RhdHVzLkJMT0NLSEVJR0hUX0VYQ0VFREVEO1xuICAgIH0+KHJlc29sdmUgPT4ge1xuICAgICAgY29uc3QgY2hlY2tCbG9ja0hlaWdodCA9IGFzeW5jICgpID0+IHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBjb25zdCBibG9ja0hlaWdodCA9IGF3YWl0IHRoaXMuZ2V0QmxvY2tIZWlnaHQoY29tbWl0bWVudCk7XG4gICAgICAgICAgcmV0dXJuIGJsb2NrSGVpZ2h0O1xuICAgICAgICB9IGNhdGNoIChfZSkge1xuICAgICAgICAgIHJldHVybiAtMTtcbiAgICAgICAgfVxuICAgICAgfTtcbiAgICAgIChhc3luYyAoKSA9PiB7XG4gICAgICAgIGxldCBjdXJyZW50QmxvY2tIZWlnaHQgPSBhd2FpdCBjaGVja0Jsb2NrSGVpZ2h0KCk7XG4gICAgICAgIGlmIChkb25lKSByZXR1cm47XG4gICAgICAgIHdoaWxlIChjdXJyZW50QmxvY2tIZWlnaHQgPD0gbGFzdFZhbGlkQmxvY2tIZWlnaHQpIHtcbiAgICAgICAgICBhd2FpdCBzbGVlcCgxMDAwKTtcbiAgICAgICAgICBpZiAoZG9uZSkgcmV0dXJuO1xuICAgICAgICAgIGN1cnJlbnRCbG9ja0hlaWdodCA9IGF3YWl0IGNoZWNrQmxvY2tIZWlnaHQoKTtcbiAgICAgICAgICBpZiAoZG9uZSkgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHJlc29sdmUoe19fdHlwZTogVHJhbnNhY3Rpb25TdGF0dXMuQkxPQ0tIRUlHSFRfRVhDRUVERUR9KTtcbiAgICAgIH0pKCk7XG4gICAgfSk7XG4gICAgY29uc3Qge2Fib3J0Q29uZmlybWF0aW9uLCBjb25maXJtYXRpb25Qcm9taXNlfSA9XG4gICAgICB0aGlzLmdldFRyYW5zYWN0aW9uQ29uZmlybWF0aW9uUHJvbWlzZSh7Y29tbWl0bWVudCwgc2lnbmF0dXJlfSk7XG4gICAgY29uc3QgY2FuY2VsbGF0aW9uUHJvbWlzZSA9IHRoaXMuZ2V0Q2FuY2VsbGF0aW9uUHJvbWlzZShhYm9ydFNpZ25hbCk7XG4gICAgbGV0IHJlc3VsdDogUnBjUmVzcG9uc2VBbmRDb250ZXh0PFNpZ25hdHVyZVJlc3VsdD47XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IG91dGNvbWUgPSBhd2FpdCBQcm9taXNlLnJhY2UoW1xuICAgICAgICBjYW5jZWxsYXRpb25Qcm9taXNlLFxuICAgICAgICBjb25maXJtYXRpb25Qcm9taXNlLFxuICAgICAgICBleHBpcnlQcm9taXNlLFxuICAgICAgXSk7XG4gICAgICBpZiAob3V0Y29tZS5fX3R5cGUgPT09IFRyYW5zYWN0aW9uU3RhdHVzLlBST0NFU1NFRCkge1xuICAgICAgICByZXN1bHQgPSBvdXRjb21lLnJlc3BvbnNlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhyb3cgbmV3IFRyYW5zYWN0aW9uRXhwaXJlZEJsb2NraGVpZ2h0RXhjZWVkZWRFcnJvcihzaWduYXR1cmUpO1xuICAgICAgfVxuICAgIH0gZmluYWxseSB7XG4gICAgICBkb25lID0gdHJ1ZTtcbiAgICAgIGFib3J0Q29uZmlybWF0aW9uKCk7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGNvbmZpcm1UcmFuc2FjdGlvblVzaW5nRHVyYWJsZU5vbmNlU3RyYXRlZ3koe1xuICAgIGNvbW1pdG1lbnQsXG4gICAgc3RyYXRlZ3k6IHtcbiAgICAgIGFib3J0U2lnbmFsLFxuICAgICAgbWluQ29udGV4dFNsb3QsXG4gICAgICBub25jZUFjY291bnRQdWJrZXksXG4gICAgICBub25jZVZhbHVlLFxuICAgICAgc2lnbmF0dXJlLFxuICAgIH0sXG4gIH06IHtcbiAgICBjb21taXRtZW50PzogQ29tbWl0bWVudDtcbiAgICBzdHJhdGVneTogRHVyYWJsZU5vbmNlVHJhbnNhY3Rpb25Db25maXJtYXRpb25TdHJhdGVneTtcbiAgfSkge1xuICAgIGxldCBkb25lOiBib29sZWFuID0gZmFsc2U7XG4gICAgY29uc3QgZXhwaXJ5UHJvbWlzZSA9IG5ldyBQcm9taXNlPHtcbiAgICAgIF9fdHlwZTogVHJhbnNhY3Rpb25TdGF0dXMuTk9OQ0VfSU5WQUxJRDtcbiAgICAgIHNsb3RJbldoaWNoTm9uY2VEaWRBZHZhbmNlOiBudW1iZXIgfCBudWxsO1xuICAgIH0+KHJlc29sdmUgPT4ge1xuICAgICAgbGV0IGN1cnJlbnROb25jZVZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQgPSBub25jZVZhbHVlO1xuICAgICAgbGV0IGxhc3RDaGVja2VkU2xvdDogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG4gICAgICBjb25zdCBnZXRDdXJyZW50Tm9uY2VWYWx1ZSA9IGFzeW5jICgpID0+IHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBjb25zdCB7Y29udGV4dCwgdmFsdWU6IG5vbmNlQWNjb3VudH0gPSBhd2FpdCB0aGlzLmdldE5vbmNlQW5kQ29udGV4dChcbiAgICAgICAgICAgIG5vbmNlQWNjb3VudFB1YmtleSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgY29tbWl0bWVudCxcbiAgICAgICAgICAgICAgbWluQ29udGV4dFNsb3QsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICk7XG4gICAgICAgICAgbGFzdENoZWNrZWRTbG90ID0gY29udGV4dC5zbG90O1xuICAgICAgICAgIHJldHVybiBub25jZUFjY291bnQ/Lm5vbmNlO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgLy8gSWYgZm9yIHdoYXRldmVyIHJlYXNvbiB3ZSBjYW4ndCByZWFjaC9yZWFkIHRoZSBub25jZVxuICAgICAgICAgIC8vIGFjY291bnQsIGp1c3Qga2VlcCB1c2luZyB0aGUgbGFzdC1rbm93biB2YWx1ZS5cbiAgICAgICAgICByZXR1cm4gY3VycmVudE5vbmNlVmFsdWU7XG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgICAoYXN5bmMgKCkgPT4ge1xuICAgICAgICBjdXJyZW50Tm9uY2VWYWx1ZSA9IGF3YWl0IGdldEN1cnJlbnROb25jZVZhbHVlKCk7XG4gICAgICAgIGlmIChkb25lKSByZXR1cm47XG4gICAgICAgIHdoaWxlIChcbiAgICAgICAgICB0cnVlIC8vIGVzbGludC1kaXNhYmxlLWxpbmUgbm8tY29uc3RhbnQtY29uZGl0aW9uXG4gICAgICAgICkge1xuICAgICAgICAgIGlmIChub25jZVZhbHVlICE9PSBjdXJyZW50Tm9uY2VWYWx1ZSkge1xuICAgICAgICAgICAgcmVzb2x2ZSh7XG4gICAgICAgICAgICAgIF9fdHlwZTogVHJhbnNhY3Rpb25TdGF0dXMuTk9OQ0VfSU5WQUxJRCxcbiAgICAgICAgICAgICAgc2xvdEluV2hpY2hOb25jZURpZEFkdmFuY2U6IGxhc3RDaGVja2VkU2xvdCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cbiAgICAgICAgICBhd2FpdCBzbGVlcCgyMDAwKTtcbiAgICAgICAgICBpZiAoZG9uZSkgcmV0dXJuO1xuICAgICAgICAgIGN1cnJlbnROb25jZVZhbHVlID0gYXdhaXQgZ2V0Q3VycmVudE5vbmNlVmFsdWUoKTtcbiAgICAgICAgICBpZiAoZG9uZSkgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICB9KSgpO1xuICAgIH0pO1xuICAgIGNvbnN0IHthYm9ydENvbmZpcm1hdGlvbiwgY29uZmlybWF0aW9uUHJvbWlzZX0gPVxuICAgICAgdGhpcy5nZXRUcmFuc2FjdGlvbkNvbmZpcm1hdGlvblByb21pc2Uoe2NvbW1pdG1lbnQsIHNpZ25hdHVyZX0pO1xuICAgIGNvbnN0IGNhbmNlbGxhdGlvblByb21pc2UgPSB0aGlzLmdldENhbmNlbGxhdGlvblByb21pc2UoYWJvcnRTaWduYWwpO1xuICAgIGxldCByZXN1bHQ6IFJwY1Jlc3BvbnNlQW5kQ29udGV4dDxTaWduYXR1cmVSZXN1bHQ+O1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBvdXRjb21lID0gYXdhaXQgUHJvbWlzZS5yYWNlKFtcbiAgICAgICAgY2FuY2VsbGF0aW9uUHJvbWlzZSxcbiAgICAgICAgY29uZmlybWF0aW9uUHJvbWlzZSxcbiAgICAgICAgZXhwaXJ5UHJvbWlzZSxcbiAgICAgIF0pO1xuICAgICAgaWYgKG91dGNvbWUuX190eXBlID09PSBUcmFuc2FjdGlvblN0YXR1cy5QUk9DRVNTRUQpIHtcbiAgICAgICAgcmVzdWx0ID0gb3V0Y29tZS5yZXNwb25zZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIERvdWJsZSBjaGVjayB0aGF0IHRoZSB0cmFuc2FjdGlvbiBpcyBpbmRlZWQgdW5jb25maXJtZWQuXG4gICAgICAgIGxldCBzaWduYXR1cmVTdGF0dXM6XG4gICAgICAgICAgfCBScGNSZXNwb25zZUFuZENvbnRleHQ8U2lnbmF0dXJlU3RhdHVzIHwgbnVsbD5cbiAgICAgICAgICB8IG51bGxcbiAgICAgICAgICB8IHVuZGVmaW5lZDtcbiAgICAgICAgd2hpbGUgKFxuICAgICAgICAgIHRydWUgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby1jb25zdGFudC1jb25kaXRpb25cbiAgICAgICAgKSB7XG4gICAgICAgICAgY29uc3Qgc3RhdHVzID0gYXdhaXQgdGhpcy5nZXRTaWduYXR1cmVTdGF0dXMoc2lnbmF0dXJlKTtcbiAgICAgICAgICBpZiAoc3RhdHVzID09IG51bGwpIHtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICBzdGF0dXMuY29udGV4dC5zbG90IDxcbiAgICAgICAgICAgIChvdXRjb21lLnNsb3RJbldoaWNoTm9uY2VEaWRBZHZhbmNlID8/IG1pbkNvbnRleHRTbG90KVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgYXdhaXQgc2xlZXAoNDAwKTtcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgICBzaWduYXR1cmVTdGF0dXMgPSBzdGF0dXM7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHNpZ25hdHVyZVN0YXR1cz8udmFsdWUpIHtcbiAgICAgICAgICBjb25zdCBjb21taXRtZW50Rm9yU3RhdHVzID0gY29tbWl0bWVudCB8fCAnZmluYWxpemVkJztcbiAgICAgICAgICBjb25zdCB7Y29uZmlybWF0aW9uU3RhdHVzfSA9IHNpZ25hdHVyZVN0YXR1cy52YWx1ZTtcbiAgICAgICAgICBzd2l0Y2ggKGNvbW1pdG1lbnRGb3JTdGF0dXMpIHtcbiAgICAgICAgICAgIGNhc2UgJ3Byb2Nlc3NlZCc6XG4gICAgICAgICAgICBjYXNlICdyZWNlbnQnOlxuICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgY29uZmlybWF0aW9uU3RhdHVzICE9PSAncHJvY2Vzc2VkJyAmJlxuICAgICAgICAgICAgICAgIGNvbmZpcm1hdGlvblN0YXR1cyAhPT0gJ2NvbmZpcm1lZCcgJiZcbiAgICAgICAgICAgICAgICBjb25maXJtYXRpb25TdGF0dXMgIT09ICdmaW5hbGl6ZWQnXG4gICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBUcmFuc2FjdGlvbkV4cGlyZWROb25jZUludmFsaWRFcnJvcihzaWduYXR1cmUpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnY29uZmlybWVkJzpcbiAgICAgICAgICAgIGNhc2UgJ3NpbmdsZSc6XG4gICAgICAgICAgICBjYXNlICdzaW5nbGVHb3NzaXAnOlxuICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgY29uZmlybWF0aW9uU3RhdHVzICE9PSAnY29uZmlybWVkJyAmJlxuICAgICAgICAgICAgICAgIGNvbmZpcm1hdGlvblN0YXR1cyAhPT0gJ2ZpbmFsaXplZCdcbiAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IFRyYW5zYWN0aW9uRXhwaXJlZE5vbmNlSW52YWxpZEVycm9yKHNpZ25hdHVyZSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdmaW5hbGl6ZWQnOlxuICAgICAgICAgICAgY2FzZSAnbWF4JzpcbiAgICAgICAgICAgIGNhc2UgJ3Jvb3QnOlxuICAgICAgICAgICAgICBpZiAoY29uZmlybWF0aW9uU3RhdHVzICE9PSAnZmluYWxpemVkJykge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBUcmFuc2FjdGlvbkV4cGlyZWROb25jZUludmFsaWRFcnJvcihzaWduYXR1cmUpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgLy8gRXhoYXVzdGl2ZSBzd2l0Y2guXG4gICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICAgICAgICAgICAgKChfOiBuZXZlcikgPT4ge30pKGNvbW1pdG1lbnRGb3JTdGF0dXMpO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXN1bHQgPSB7XG4gICAgICAgICAgICBjb250ZXh0OiBzaWduYXR1cmVTdGF0dXMuY29udGV4dCxcbiAgICAgICAgICAgIHZhbHVlOiB7ZXJyOiBzaWduYXR1cmVTdGF0dXMudmFsdWUuZXJyfSxcbiAgICAgICAgICB9O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRocm93IG5ldyBUcmFuc2FjdGlvbkV4cGlyZWROb25jZUludmFsaWRFcnJvcihzaWduYXR1cmUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIGRvbmUgPSB0cnVlO1xuICAgICAgYWJvcnRDb25maXJtYXRpb24oKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgY29uZmlybVRyYW5zYWN0aW9uVXNpbmdMZWdhY3lUaW1lb3V0U3RyYXRlZ3koe1xuICAgIGNvbW1pdG1lbnQsXG4gICAgc2lnbmF0dXJlLFxuICB9OiB7XG4gICAgY29tbWl0bWVudD86IENvbW1pdG1lbnQ7XG4gICAgc2lnbmF0dXJlOiBzdHJpbmc7XG4gIH0pIHtcbiAgICBsZXQgdGltZW91dElkO1xuICAgIGNvbnN0IGV4cGlyeVByb21pc2UgPSBuZXcgUHJvbWlzZTx7XG4gICAgICBfX3R5cGU6IFRyYW5zYWN0aW9uU3RhdHVzLlRJTUVEX09VVDtcbiAgICAgIHRpbWVvdXRNczogbnVtYmVyO1xuICAgIH0+KHJlc29sdmUgPT4ge1xuICAgICAgbGV0IHRpbWVvdXRNcyA9IHRoaXMuX2NvbmZpcm1UcmFuc2FjdGlvbkluaXRpYWxUaW1lb3V0IHx8IDYwICogMTAwMDtcbiAgICAgIHN3aXRjaCAoY29tbWl0bWVudCkge1xuICAgICAgICBjYXNlICdwcm9jZXNzZWQnOlxuICAgICAgICBjYXNlICdyZWNlbnQnOlxuICAgICAgICBjYXNlICdzaW5nbGUnOlxuICAgICAgICBjYXNlICdjb25maXJtZWQnOlxuICAgICAgICBjYXNlICdzaW5nbGVHb3NzaXAnOiB7XG4gICAgICAgICAgdGltZW91dE1zID0gdGhpcy5fY29uZmlybVRyYW5zYWN0aW9uSW5pdGlhbFRpbWVvdXQgfHwgMzAgKiAxMDAwO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIC8vIGV4aGF1c3QgZW51bXMgdG8gZW5zdXJlIGZ1bGwgY292ZXJhZ2VcbiAgICAgICAgY2FzZSAnZmluYWxpemVkJzpcbiAgICAgICAgY2FzZSAnbWF4JzpcbiAgICAgICAgY2FzZSAncm9vdCc6XG4gICAgICB9XG4gICAgICB0aW1lb3V0SWQgPSBzZXRUaW1lb3V0KFxuICAgICAgICAoKSA9PiByZXNvbHZlKHtfX3R5cGU6IFRyYW5zYWN0aW9uU3RhdHVzLlRJTUVEX09VVCwgdGltZW91dE1zfSksXG4gICAgICAgIHRpbWVvdXRNcyxcbiAgICAgICk7XG4gICAgfSk7XG4gICAgY29uc3Qge2Fib3J0Q29uZmlybWF0aW9uLCBjb25maXJtYXRpb25Qcm9taXNlfSA9XG4gICAgICB0aGlzLmdldFRyYW5zYWN0aW9uQ29uZmlybWF0aW9uUHJvbWlzZSh7XG4gICAgICAgIGNvbW1pdG1lbnQsXG4gICAgICAgIHNpZ25hdHVyZSxcbiAgICAgIH0pO1xuICAgIGxldCByZXN1bHQ6IFJwY1Jlc3BvbnNlQW5kQ29udGV4dDxTaWduYXR1cmVSZXN1bHQ+O1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBvdXRjb21lID0gYXdhaXQgUHJvbWlzZS5yYWNlKFtjb25maXJtYXRpb25Qcm9taXNlLCBleHBpcnlQcm9taXNlXSk7XG4gICAgICBpZiAob3V0Y29tZS5fX3R5cGUgPT09IFRyYW5zYWN0aW9uU3RhdHVzLlBST0NFU1NFRCkge1xuICAgICAgICByZXN1bHQgPSBvdXRjb21lLnJlc3BvbnNlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhyb3cgbmV3IFRyYW5zYWN0aW9uRXhwaXJlZFRpbWVvdXRFcnJvcihcbiAgICAgICAgICBzaWduYXR1cmUsXG4gICAgICAgICAgb3V0Y29tZS50aW1lb3V0TXMgLyAxMDAwLFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH0gZmluYWxseSB7XG4gICAgICBjbGVhclRpbWVvdXQodGltZW91dElkKTtcbiAgICAgIGFib3J0Q29uZmlybWF0aW9uKCk7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJuIHRoZSBsaXN0IG9mIG5vZGVzIHRoYXQgYXJlIGN1cnJlbnRseSBwYXJ0aWNpcGF0aW5nIGluIHRoZSBjbHVzdGVyXG4gICAqL1xuICBhc3luYyBnZXRDbHVzdGVyTm9kZXMoKTogUHJvbWlzZTxBcnJheTxDb250YWN0SW5mbz4+IHtcbiAgICBjb25zdCB1bnNhZmVSZXMgPSBhd2FpdCB0aGlzLl9ycGNSZXF1ZXN0KCdnZXRDbHVzdGVyTm9kZXMnLCBbXSk7XG4gICAgY29uc3QgcmVzID0gY3JlYXRlKHVuc2FmZVJlcywganNvblJwY1Jlc3VsdChhcnJheShDb250YWN0SW5mb1Jlc3VsdCkpKTtcbiAgICBpZiAoJ2Vycm9yJyBpbiByZXMpIHtcbiAgICAgIHRocm93IG5ldyBTb2xhbmFKU09OUlBDRXJyb3IocmVzLmVycm9yLCAnZmFpbGVkIHRvIGdldCBjbHVzdGVyIG5vZGVzJyk7XG4gICAgfVxuICAgIHJldHVybiByZXMucmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybiB0aGUgbGlzdCBvZiBub2RlcyB0aGF0IGFyZSBjdXJyZW50bHkgcGFydGljaXBhdGluZyBpbiB0aGUgY2x1c3RlclxuICAgKi9cbiAgYXN5bmMgZ2V0Vm90ZUFjY291bnRzKGNvbW1pdG1lbnQ/OiBDb21taXRtZW50KTogUHJvbWlzZTxWb3RlQWNjb3VudFN0YXR1cz4ge1xuICAgIGNvbnN0IGFyZ3MgPSB0aGlzLl9idWlsZEFyZ3MoW10sIGNvbW1pdG1lbnQpO1xuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoJ2dldFZvdGVBY2NvdW50cycsIGFyZ3MpO1xuICAgIGNvbnN0IHJlcyA9IGNyZWF0ZSh1bnNhZmVSZXMsIEdldFZvdGVBY2NvdW50cyk7XG4gICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKHJlcy5lcnJvciwgJ2ZhaWxlZCB0byBnZXQgdm90ZSBhY2NvdW50cycpO1xuICAgIH1cbiAgICByZXR1cm4gcmVzLnJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBGZXRjaCB0aGUgY3VycmVudCBzbG90IHRoYXQgdGhlIG5vZGUgaXMgcHJvY2Vzc2luZ1xuICAgKi9cbiAgYXN5bmMgZ2V0U2xvdChcbiAgICBjb21taXRtZW50T3JDb25maWc/OiBDb21taXRtZW50IHwgR2V0U2xvdENvbmZpZyxcbiAgKTogUHJvbWlzZTxudW1iZXI+IHtcbiAgICBjb25zdCB7Y29tbWl0bWVudCwgY29uZmlnfSA9XG4gICAgICBleHRyYWN0Q29tbWl0bWVudEZyb21Db25maWcoY29tbWl0bWVudE9yQ29uZmlnKTtcbiAgICBjb25zdCBhcmdzID0gdGhpcy5fYnVpbGRBcmdzKFxuICAgICAgW10sXG4gICAgICBjb21taXRtZW50LFxuICAgICAgdW5kZWZpbmVkIC8qIGVuY29kaW5nICovLFxuICAgICAgY29uZmlnLFxuICAgICk7XG4gICAgY29uc3QgdW5zYWZlUmVzID0gYXdhaXQgdGhpcy5fcnBjUmVxdWVzdCgnZ2V0U2xvdCcsIGFyZ3MpO1xuICAgIGNvbnN0IHJlcyA9IGNyZWF0ZSh1bnNhZmVSZXMsIGpzb25ScGNSZXN1bHQobnVtYmVyKCkpKTtcbiAgICBpZiAoJ2Vycm9yJyBpbiByZXMpIHtcbiAgICAgIHRocm93IG5ldyBTb2xhbmFKU09OUlBDRXJyb3IocmVzLmVycm9yLCAnZmFpbGVkIHRvIGdldCBzbG90Jyk7XG4gICAgfVxuICAgIHJldHVybiByZXMucmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIEZldGNoIHRoZSBjdXJyZW50IHNsb3QgbGVhZGVyIG9mIHRoZSBjbHVzdGVyXG4gICAqL1xuICBhc3luYyBnZXRTbG90TGVhZGVyKFxuICAgIGNvbW1pdG1lbnRPckNvbmZpZz86IENvbW1pdG1lbnQgfCBHZXRTbG90TGVhZGVyQ29uZmlnLFxuICApOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIGNvbnN0IHtjb21taXRtZW50LCBjb25maWd9ID1cbiAgICAgIGV4dHJhY3RDb21taXRtZW50RnJvbUNvbmZpZyhjb21taXRtZW50T3JDb25maWcpO1xuICAgIGNvbnN0IGFyZ3MgPSB0aGlzLl9idWlsZEFyZ3MoXG4gICAgICBbXSxcbiAgICAgIGNvbW1pdG1lbnQsXG4gICAgICB1bmRlZmluZWQgLyogZW5jb2RpbmcgKi8sXG4gICAgICBjb25maWcsXG4gICAgKTtcbiAgICBjb25zdCB1bnNhZmVSZXMgPSBhd2FpdCB0aGlzLl9ycGNSZXF1ZXN0KCdnZXRTbG90TGVhZGVyJywgYXJncyk7XG4gICAgY29uc3QgcmVzID0gY3JlYXRlKHVuc2FmZVJlcywganNvblJwY1Jlc3VsdChzdHJpbmcoKSkpO1xuICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgdGhyb3cgbmV3IFNvbGFuYUpTT05SUENFcnJvcihyZXMuZXJyb3IsICdmYWlsZWQgdG8gZ2V0IHNsb3QgbGVhZGVyJyk7XG4gICAgfVxuICAgIHJldHVybiByZXMucmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIEZldGNoIGBsaW1pdGAgbnVtYmVyIG9mIHNsb3QgbGVhZGVycyBzdGFydGluZyBmcm9tIGBzdGFydFNsb3RgXG4gICAqXG4gICAqIEBwYXJhbSBzdGFydFNsb3QgZmV0Y2ggc2xvdCBsZWFkZXJzIHN0YXJ0aW5nIGZyb20gdGhpcyBzbG90XG4gICAqIEBwYXJhbSBsaW1pdCBudW1iZXIgb2Ygc2xvdCBsZWFkZXJzIHRvIHJldHVyblxuICAgKi9cbiAgYXN5bmMgZ2V0U2xvdExlYWRlcnMoXG4gICAgc3RhcnRTbG90OiBudW1iZXIsXG4gICAgbGltaXQ6IG51bWJlcixcbiAgKTogUHJvbWlzZTxBcnJheTxQdWJsaWNLZXk+PiB7XG4gICAgY29uc3QgYXJncyA9IFtzdGFydFNsb3QsIGxpbWl0XTtcbiAgICBjb25zdCB1bnNhZmVSZXMgPSBhd2FpdCB0aGlzLl9ycGNSZXF1ZXN0KCdnZXRTbG90TGVhZGVycycsIGFyZ3MpO1xuICAgIGNvbnN0IHJlcyA9IGNyZWF0ZSh1bnNhZmVSZXMsIGpzb25ScGNSZXN1bHQoYXJyYXkoUHVibGljS2V5RnJvbVN0cmluZykpKTtcbiAgICBpZiAoJ2Vycm9yJyBpbiByZXMpIHtcbiAgICAgIHRocm93IG5ldyBTb2xhbmFKU09OUlBDRXJyb3IocmVzLmVycm9yLCAnZmFpbGVkIHRvIGdldCBzbG90IGxlYWRlcnMnKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcy5yZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2ggdGhlIGN1cnJlbnQgc3RhdHVzIG9mIGEgc2lnbmF0dXJlXG4gICAqL1xuICBhc3luYyBnZXRTaWduYXR1cmVTdGF0dXMoXG4gICAgc2lnbmF0dXJlOiBUcmFuc2FjdGlvblNpZ25hdHVyZSxcbiAgICBjb25maWc/OiBTaWduYXR1cmVTdGF0dXNDb25maWcsXG4gICk6IFByb21pc2U8UnBjUmVzcG9uc2VBbmRDb250ZXh0PFNpZ25hdHVyZVN0YXR1cyB8IG51bGw+PiB7XG4gICAgY29uc3Qge2NvbnRleHQsIHZhbHVlOiB2YWx1ZXN9ID0gYXdhaXQgdGhpcy5nZXRTaWduYXR1cmVTdGF0dXNlcyhcbiAgICAgIFtzaWduYXR1cmVdLFxuICAgICAgY29uZmlnLFxuICAgICk7XG4gICAgYXNzZXJ0KHZhbHVlcy5sZW5ndGggPT09IDEpO1xuICAgIGNvbnN0IHZhbHVlID0gdmFsdWVzWzBdO1xuICAgIHJldHVybiB7Y29udGV4dCwgdmFsdWV9O1xuICB9XG5cbiAgLyoqXG4gICAqIEZldGNoIHRoZSBjdXJyZW50IHN0YXR1c2VzIG9mIGEgYmF0Y2ggb2Ygc2lnbmF0dXJlc1xuICAgKi9cbiAgYXN5bmMgZ2V0U2lnbmF0dXJlU3RhdHVzZXMoXG4gICAgc2lnbmF0dXJlczogQXJyYXk8VHJhbnNhY3Rpb25TaWduYXR1cmU+LFxuICAgIGNvbmZpZz86IFNpZ25hdHVyZVN0YXR1c0NvbmZpZyxcbiAgKTogUHJvbWlzZTxScGNSZXNwb25zZUFuZENvbnRleHQ8QXJyYXk8U2lnbmF0dXJlU3RhdHVzIHwgbnVsbD4+PiB7XG4gICAgY29uc3QgcGFyYW1zOiBhbnlbXSA9IFtzaWduYXR1cmVzXTtcbiAgICBpZiAoY29uZmlnKSB7XG4gICAgICBwYXJhbXMucHVzaChjb25maWcpO1xuICAgIH1cbiAgICBjb25zdCB1bnNhZmVSZXMgPSBhd2FpdCB0aGlzLl9ycGNSZXF1ZXN0KCdnZXRTaWduYXR1cmVTdGF0dXNlcycsIHBhcmFtcyk7XG4gICAgY29uc3QgcmVzID0gY3JlYXRlKHVuc2FmZVJlcywgR2V0U2lnbmF0dXJlU3RhdHVzZXNScGNSZXN1bHQpO1xuICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgdGhyb3cgbmV3IFNvbGFuYUpTT05SUENFcnJvcihyZXMuZXJyb3IsICdmYWlsZWQgdG8gZ2V0IHNpZ25hdHVyZSBzdGF0dXMnKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcy5yZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2ggdGhlIGN1cnJlbnQgdHJhbnNhY3Rpb24gY291bnQgb2YgdGhlIGNsdXN0ZXJcbiAgICovXG4gIGFzeW5jIGdldFRyYW5zYWN0aW9uQ291bnQoXG4gICAgY29tbWl0bWVudE9yQ29uZmlnPzogQ29tbWl0bWVudCB8IEdldFRyYW5zYWN0aW9uQ291bnRDb25maWcsXG4gICk6IFByb21pc2U8bnVtYmVyPiB7XG4gICAgY29uc3Qge2NvbW1pdG1lbnQsIGNvbmZpZ30gPVxuICAgICAgZXh0cmFjdENvbW1pdG1lbnRGcm9tQ29uZmlnKGNvbW1pdG1lbnRPckNvbmZpZyk7XG4gICAgY29uc3QgYXJncyA9IHRoaXMuX2J1aWxkQXJncyhcbiAgICAgIFtdLFxuICAgICAgY29tbWl0bWVudCxcbiAgICAgIHVuZGVmaW5lZCAvKiBlbmNvZGluZyAqLyxcbiAgICAgIGNvbmZpZyxcbiAgICApO1xuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoJ2dldFRyYW5zYWN0aW9uQ291bnQnLCBhcmdzKTtcbiAgICBjb25zdCByZXMgPSBjcmVhdGUodW5zYWZlUmVzLCBqc29uUnBjUmVzdWx0KG51bWJlcigpKSk7XG4gICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKFxuICAgICAgICByZXMuZXJyb3IsXG4gICAgICAgICdmYWlsZWQgdG8gZ2V0IHRyYW5zYWN0aW9uIGNvdW50JyxcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiByZXMucmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIEZldGNoIHRoZSBjdXJyZW50IHRvdGFsIGN1cnJlbmN5IHN1cHBseSBvZiB0aGUgY2x1c3RlciBpbiBsYW1wb3J0c1xuICAgKlxuICAgKiBAZGVwcmVjYXRlZCBEZXByZWNhdGVkIHNpbmNlIHYxLjIuOC4gUGxlYXNlIHVzZSB7QGxpbmsgZ2V0U3VwcGx5fSBpbnN0ZWFkLlxuICAgKi9cbiAgYXN5bmMgZ2V0VG90YWxTdXBwbHkoY29tbWl0bWVudD86IENvbW1pdG1lbnQpOiBQcm9taXNlPG51bWJlcj4ge1xuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuZ2V0U3VwcGx5KHtcbiAgICAgIGNvbW1pdG1lbnQsXG4gICAgICBleGNsdWRlTm9uQ2lyY3VsYXRpbmdBY2NvdW50c0xpc3Q6IHRydWUsXG4gICAgfSk7XG4gICAgcmV0dXJuIHJlc3VsdC52YWx1ZS50b3RhbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBGZXRjaCB0aGUgY2x1c3RlciBJbmZsYXRpb25Hb3Zlcm5vciBwYXJhbWV0ZXJzXG4gICAqL1xuICBhc3luYyBnZXRJbmZsYXRpb25Hb3Zlcm5vcihcbiAgICBjb21taXRtZW50PzogQ29tbWl0bWVudCxcbiAgKTogUHJvbWlzZTxJbmZsYXRpb25Hb3Zlcm5vcj4ge1xuICAgIGNvbnN0IGFyZ3MgPSB0aGlzLl9idWlsZEFyZ3MoW10sIGNvbW1pdG1lbnQpO1xuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoJ2dldEluZmxhdGlvbkdvdmVybm9yJywgYXJncyk7XG4gICAgY29uc3QgcmVzID0gY3JlYXRlKHVuc2FmZVJlcywgR2V0SW5mbGF0aW9uR292ZXJub3JScGNSZXN1bHQpO1xuICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgdGhyb3cgbmV3IFNvbGFuYUpTT05SUENFcnJvcihyZXMuZXJyb3IsICdmYWlsZWQgdG8gZ2V0IGluZmxhdGlvbicpO1xuICAgIH1cbiAgICByZXR1cm4gcmVzLnJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBGZXRjaCB0aGUgaW5mbGF0aW9uIHJld2FyZCBmb3IgYSBsaXN0IG9mIGFkZHJlc3NlcyBmb3IgYW4gZXBvY2hcbiAgICovXG4gIGFzeW5jIGdldEluZmxhdGlvblJld2FyZChcbiAgICBhZGRyZXNzZXM6IFB1YmxpY0tleVtdLFxuICAgIGVwb2NoPzogbnVtYmVyLFxuICAgIGNvbW1pdG1lbnRPckNvbmZpZz86IENvbW1pdG1lbnQgfCBHZXRJbmZsYXRpb25SZXdhcmRDb25maWcsXG4gICk6IFByb21pc2U8KEluZmxhdGlvblJld2FyZCB8IG51bGwpW10+IHtcbiAgICBjb25zdCB7Y29tbWl0bWVudCwgY29uZmlnfSA9XG4gICAgICBleHRyYWN0Q29tbWl0bWVudEZyb21Db25maWcoY29tbWl0bWVudE9yQ29uZmlnKTtcbiAgICBjb25zdCBhcmdzID0gdGhpcy5fYnVpbGRBcmdzKFxuICAgICAgW2FkZHJlc3Nlcy5tYXAocHVia2V5ID0+IHB1YmtleS50b0Jhc2U1OCgpKV0sXG4gICAgICBjb21taXRtZW50LFxuICAgICAgdW5kZWZpbmVkIC8qIGVuY29kaW5nICovLFxuICAgICAge1xuICAgICAgICAuLi5jb25maWcsXG4gICAgICAgIGVwb2NoOiBlcG9jaCAhPSBudWxsID8gZXBvY2ggOiBjb25maWc/LmVwb2NoLFxuICAgICAgfSxcbiAgICApO1xuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoJ2dldEluZmxhdGlvblJld2FyZCcsIGFyZ3MpO1xuICAgIGNvbnN0IHJlcyA9IGNyZWF0ZSh1bnNhZmVSZXMsIEdldEluZmxhdGlvblJld2FyZFJlc3VsdCk7XG4gICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKHJlcy5lcnJvciwgJ2ZhaWxlZCB0byBnZXQgaW5mbGF0aW9uIHJld2FyZCcpO1xuICAgIH1cbiAgICByZXR1cm4gcmVzLnJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBGZXRjaCB0aGUgc3BlY2lmaWMgaW5mbGF0aW9uIHZhbHVlcyBmb3IgdGhlIGN1cnJlbnQgZXBvY2hcbiAgICovXG4gIGFzeW5jIGdldEluZmxhdGlvblJhdGUoKTogUHJvbWlzZTxJbmZsYXRpb25SYXRlPiB7XG4gICAgY29uc3QgdW5zYWZlUmVzID0gYXdhaXQgdGhpcy5fcnBjUmVxdWVzdCgnZ2V0SW5mbGF0aW9uUmF0ZScsIFtdKTtcbiAgICBjb25zdCByZXMgPSBjcmVhdGUodW5zYWZlUmVzLCBHZXRJbmZsYXRpb25SYXRlUnBjUmVzdWx0KTtcbiAgICBpZiAoJ2Vycm9yJyBpbiByZXMpIHtcbiAgICAgIHRocm93IG5ldyBTb2xhbmFKU09OUlBDRXJyb3IocmVzLmVycm9yLCAnZmFpbGVkIHRvIGdldCBpbmZsYXRpb24gcmF0ZScpO1xuICAgIH1cbiAgICByZXR1cm4gcmVzLnJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBGZXRjaCB0aGUgRXBvY2ggSW5mbyBwYXJhbWV0ZXJzXG4gICAqL1xuICBhc3luYyBnZXRFcG9jaEluZm8oXG4gICAgY29tbWl0bWVudE9yQ29uZmlnPzogQ29tbWl0bWVudCB8IEdldEVwb2NoSW5mb0NvbmZpZyxcbiAgKTogUHJvbWlzZTxFcG9jaEluZm8+IHtcbiAgICBjb25zdCB7Y29tbWl0bWVudCwgY29uZmlnfSA9XG4gICAgICBleHRyYWN0Q29tbWl0bWVudEZyb21Db25maWcoY29tbWl0bWVudE9yQ29uZmlnKTtcbiAgICBjb25zdCBhcmdzID0gdGhpcy5fYnVpbGRBcmdzKFxuICAgICAgW10sXG4gICAgICBjb21taXRtZW50LFxuICAgICAgdW5kZWZpbmVkIC8qIGVuY29kaW5nICovLFxuICAgICAgY29uZmlnLFxuICAgICk7XG4gICAgY29uc3QgdW5zYWZlUmVzID0gYXdhaXQgdGhpcy5fcnBjUmVxdWVzdCgnZ2V0RXBvY2hJbmZvJywgYXJncyk7XG4gICAgY29uc3QgcmVzID0gY3JlYXRlKHVuc2FmZVJlcywgR2V0RXBvY2hJbmZvUnBjUmVzdWx0KTtcbiAgICBpZiAoJ2Vycm9yJyBpbiByZXMpIHtcbiAgICAgIHRocm93IG5ldyBTb2xhbmFKU09OUlBDRXJyb3IocmVzLmVycm9yLCAnZmFpbGVkIHRvIGdldCBlcG9jaCBpbmZvJyk7XG4gICAgfVxuICAgIHJldHVybiByZXMucmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIEZldGNoIHRoZSBFcG9jaCBTY2hlZHVsZSBwYXJhbWV0ZXJzXG4gICAqL1xuICBhc3luYyBnZXRFcG9jaFNjaGVkdWxlKCk6IFByb21pc2U8RXBvY2hTY2hlZHVsZT4ge1xuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoJ2dldEVwb2NoU2NoZWR1bGUnLCBbXSk7XG4gICAgY29uc3QgcmVzID0gY3JlYXRlKHVuc2FmZVJlcywgR2V0RXBvY2hTY2hlZHVsZVJwY1Jlc3VsdCk7XG4gICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKHJlcy5lcnJvciwgJ2ZhaWxlZCB0byBnZXQgZXBvY2ggc2NoZWR1bGUnKTtcbiAgICB9XG4gICAgY29uc3QgZXBvY2hTY2hlZHVsZSA9IHJlcy5yZXN1bHQ7XG4gICAgcmV0dXJuIG5ldyBFcG9jaFNjaGVkdWxlKFxuICAgICAgZXBvY2hTY2hlZHVsZS5zbG90c1BlckVwb2NoLFxuICAgICAgZXBvY2hTY2hlZHVsZS5sZWFkZXJTY2hlZHVsZVNsb3RPZmZzZXQsXG4gICAgICBlcG9jaFNjaGVkdWxlLndhcm11cCxcbiAgICAgIGVwb2NoU2NoZWR1bGUuZmlyc3ROb3JtYWxFcG9jaCxcbiAgICAgIGVwb2NoU2NoZWR1bGUuZmlyc3ROb3JtYWxTbG90LFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2ggdGhlIGxlYWRlciBzY2hlZHVsZSBmb3IgdGhlIGN1cnJlbnQgZXBvY2hcbiAgICogQHJldHVybiB7UHJvbWlzZTxScGNSZXNwb25zZUFuZENvbnRleHQ8TGVhZGVyU2NoZWR1bGU+Pn1cbiAgICovXG4gIGFzeW5jIGdldExlYWRlclNjaGVkdWxlKCk6IFByb21pc2U8TGVhZGVyU2NoZWR1bGU+IHtcbiAgICBjb25zdCB1bnNhZmVSZXMgPSBhd2FpdCB0aGlzLl9ycGNSZXF1ZXN0KCdnZXRMZWFkZXJTY2hlZHVsZScsIFtdKTtcbiAgICBjb25zdCByZXMgPSBjcmVhdGUodW5zYWZlUmVzLCBHZXRMZWFkZXJTY2hlZHVsZVJwY1Jlc3VsdCk7XG4gICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKHJlcy5lcnJvciwgJ2ZhaWxlZCB0byBnZXQgbGVhZGVyIHNjaGVkdWxlJyk7XG4gICAgfVxuICAgIHJldHVybiByZXMucmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIEZldGNoIHRoZSBtaW5pbXVtIGJhbGFuY2UgbmVlZGVkIHRvIGV4ZW1wdCBhbiBhY2NvdW50IG9mIGBkYXRhTGVuZ3RoYFxuICAgKiBzaXplIGZyb20gcmVudFxuICAgKi9cbiAgYXN5bmMgZ2V0TWluaW11bUJhbGFuY2VGb3JSZW50RXhlbXB0aW9uKFxuICAgIGRhdGFMZW5ndGg6IG51bWJlcixcbiAgICBjb21taXRtZW50PzogQ29tbWl0bWVudCxcbiAgKTogUHJvbWlzZTxudW1iZXI+IHtcbiAgICBjb25zdCBhcmdzID0gdGhpcy5fYnVpbGRBcmdzKFtkYXRhTGVuZ3RoXSwgY29tbWl0bWVudCk7XG4gICAgY29uc3QgdW5zYWZlUmVzID0gYXdhaXQgdGhpcy5fcnBjUmVxdWVzdChcbiAgICAgICdnZXRNaW5pbXVtQmFsYW5jZUZvclJlbnRFeGVtcHRpb24nLFxuICAgICAgYXJncyxcbiAgICApO1xuICAgIGNvbnN0IHJlcyA9IGNyZWF0ZSh1bnNhZmVSZXMsIEdldE1pbmltdW1CYWxhbmNlRm9yUmVudEV4ZW1wdGlvblJwY1Jlc3VsdCk7XG4gICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICBjb25zb2xlLndhcm4oJ1VuYWJsZSB0byBmZXRjaCBtaW5pbXVtIGJhbGFuY2UgZm9yIHJlbnQgZXhlbXB0aW9uJyk7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIHJlcy5yZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2ggYSByZWNlbnQgYmxvY2toYXNoIGZyb20gdGhlIGNsdXN0ZXIsIHJldHVybiB3aXRoIGNvbnRleHRcbiAgICogQHJldHVybiB7UHJvbWlzZTxScGNSZXNwb25zZUFuZENvbnRleHQ8e2Jsb2NraGFzaDogQmxvY2toYXNoLCBmZWVDYWxjdWxhdG9yOiBGZWVDYWxjdWxhdG9yfT4+fVxuICAgKlxuICAgKiBAZGVwcmVjYXRlZCBEZXByZWNhdGVkIHNpbmNlIFNvbGFuYSB2MS44LjAuIFBsZWFzZSB1c2Uge0BsaW5rIGdldExhdGVzdEJsb2NraGFzaH0gaW5zdGVhZC5cbiAgICovXG4gIGFzeW5jIGdldFJlY2VudEJsb2NraGFzaEFuZENvbnRleHQoY29tbWl0bWVudD86IENvbW1pdG1lbnQpOiBQcm9taXNlPFxuICAgIFJwY1Jlc3BvbnNlQW5kQ29udGV4dDx7XG4gICAgICBibG9ja2hhc2g6IEJsb2NraGFzaDtcbiAgICAgIGZlZUNhbGN1bGF0b3I6IEZlZUNhbGN1bGF0b3I7XG4gICAgfT5cbiAgPiB7XG4gICAgY29uc3QgYXJncyA9IHRoaXMuX2J1aWxkQXJncyhbXSwgY29tbWl0bWVudCk7XG4gICAgY29uc3QgdW5zYWZlUmVzID0gYXdhaXQgdGhpcy5fcnBjUmVxdWVzdCgnZ2V0UmVjZW50QmxvY2toYXNoJywgYXJncyk7XG4gICAgY29uc3QgcmVzID0gY3JlYXRlKHVuc2FmZVJlcywgR2V0UmVjZW50QmxvY2toYXNoQW5kQ29udGV4dFJwY1Jlc3VsdCk7XG4gICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKHJlcy5lcnJvciwgJ2ZhaWxlZCB0byBnZXQgcmVjZW50IGJsb2NraGFzaCcpO1xuICAgIH1cbiAgICByZXR1cm4gcmVzLnJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBGZXRjaCByZWNlbnQgcGVyZm9ybWFuY2Ugc2FtcGxlc1xuICAgKiBAcmV0dXJuIHtQcm9taXNlPEFycmF5PFBlcmZTYW1wbGU+Pn1cbiAgICovXG4gIGFzeW5jIGdldFJlY2VudFBlcmZvcm1hbmNlU2FtcGxlcyhcbiAgICBsaW1pdD86IG51bWJlcixcbiAgKTogUHJvbWlzZTxBcnJheTxQZXJmU2FtcGxlPj4ge1xuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoXG4gICAgICAnZ2V0UmVjZW50UGVyZm9ybWFuY2VTYW1wbGVzJyxcbiAgICAgIGxpbWl0ID8gW2xpbWl0XSA6IFtdLFxuICAgICk7XG4gICAgY29uc3QgcmVzID0gY3JlYXRlKHVuc2FmZVJlcywgR2V0UmVjZW50UGVyZm9ybWFuY2VTYW1wbGVzUnBjUmVzdWx0KTtcbiAgICBpZiAoJ2Vycm9yJyBpbiByZXMpIHtcbiAgICAgIHRocm93IG5ldyBTb2xhbmFKU09OUlBDRXJyb3IoXG4gICAgICAgIHJlcy5lcnJvcixcbiAgICAgICAgJ2ZhaWxlZCB0byBnZXQgcmVjZW50IHBlcmZvcm1hbmNlIHNhbXBsZXMnLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzLnJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBGZXRjaCB0aGUgZmVlIGNhbGN1bGF0b3IgZm9yIGEgcmVjZW50IGJsb2NraGFzaCBmcm9tIHRoZSBjbHVzdGVyLCByZXR1cm4gd2l0aCBjb250ZXh0XG4gICAqXG4gICAqIEBkZXByZWNhdGVkIERlcHJlY2F0ZWQgc2luY2UgU29sYW5hIHYxLjguMC4gUGxlYXNlIHVzZSB7QGxpbmsgZ2V0RmVlRm9yTWVzc2FnZX0gaW5zdGVhZC5cbiAgICovXG4gIGFzeW5jIGdldEZlZUNhbGN1bGF0b3JGb3JCbG9ja2hhc2goXG4gICAgYmxvY2toYXNoOiBCbG9ja2hhc2gsXG4gICAgY29tbWl0bWVudD86IENvbW1pdG1lbnQsXG4gICk6IFByb21pc2U8UnBjUmVzcG9uc2VBbmRDb250ZXh0PEZlZUNhbGN1bGF0b3IgfCBudWxsPj4ge1xuICAgIGNvbnN0IGFyZ3MgPSB0aGlzLl9idWlsZEFyZ3MoW2Jsb2NraGFzaF0sIGNvbW1pdG1lbnQpO1xuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoXG4gICAgICAnZ2V0RmVlQ2FsY3VsYXRvckZvckJsb2NraGFzaCcsXG4gICAgICBhcmdzLFxuICAgICk7XG5cbiAgICBjb25zdCByZXMgPSBjcmVhdGUodW5zYWZlUmVzLCBHZXRGZWVDYWxjdWxhdG9yUnBjUmVzdWx0KTtcbiAgICBpZiAoJ2Vycm9yJyBpbiByZXMpIHtcbiAgICAgIHRocm93IG5ldyBTb2xhbmFKU09OUlBDRXJyb3IocmVzLmVycm9yLCAnZmFpbGVkIHRvIGdldCBmZWUgY2FsY3VsYXRvcicpO1xuICAgIH1cbiAgICBjb25zdCB7Y29udGV4dCwgdmFsdWV9ID0gcmVzLnJlc3VsdDtcbiAgICByZXR1cm4ge1xuICAgICAgY29udGV4dCxcbiAgICAgIHZhbHVlOiB2YWx1ZSAhPT0gbnVsbCA/IHZhbHVlLmZlZUNhbGN1bGF0b3IgOiBudWxsLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2ggdGhlIGZlZSBmb3IgYSBtZXNzYWdlIGZyb20gdGhlIGNsdXN0ZXIsIHJldHVybiB3aXRoIGNvbnRleHRcbiAgICovXG4gIGFzeW5jIGdldEZlZUZvck1lc3NhZ2UoXG4gICAgbWVzc2FnZTogVmVyc2lvbmVkTWVzc2FnZSxcbiAgICBjb21taXRtZW50PzogQ29tbWl0bWVudCxcbiAgKTogUHJvbWlzZTxScGNSZXNwb25zZUFuZENvbnRleHQ8bnVtYmVyIHwgbnVsbD4+IHtcbiAgICBjb25zdCB3aXJlTWVzc2FnZSA9IHRvQnVmZmVyKG1lc3NhZ2Uuc2VyaWFsaXplKCkpLnRvU3RyaW5nKCdiYXNlNjQnKTtcbiAgICBjb25zdCBhcmdzID0gdGhpcy5fYnVpbGRBcmdzKFt3aXJlTWVzc2FnZV0sIGNvbW1pdG1lbnQpO1xuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoJ2dldEZlZUZvck1lc3NhZ2UnLCBhcmdzKTtcblxuICAgIGNvbnN0IHJlcyA9IGNyZWF0ZSh1bnNhZmVSZXMsIGpzb25ScGNSZXN1bHRBbmRDb250ZXh0KG51bGxhYmxlKG51bWJlcigpKSkpO1xuICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgdGhyb3cgbmV3IFNvbGFuYUpTT05SUENFcnJvcihyZXMuZXJyb3IsICdmYWlsZWQgdG8gZ2V0IGZlZSBmb3IgbWVzc2FnZScpO1xuICAgIH1cbiAgICBpZiAocmVzLnJlc3VsdCA9PT0gbnVsbCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIGJsb2NraGFzaCcpO1xuICAgIH1cbiAgICByZXR1cm4gcmVzLnJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBGZXRjaCBhIGxpc3Qgb2YgcHJpb3JpdGl6YXRpb24gZmVlcyBmcm9tIHJlY2VudCBibG9ja3MuXG4gICAqL1xuICBhc3luYyBnZXRSZWNlbnRQcmlvcml0aXphdGlvbkZlZXMoXG4gICAgY29uZmlnPzogR2V0UmVjZW50UHJpb3JpdGl6YXRpb25GZWVzQ29uZmlnLFxuICApOiBQcm9taXNlPFJlY2VudFByaW9yaXRpemF0aW9uRmVlc1tdPiB7XG4gICAgY29uc3QgYWNjb3VudHMgPSBjb25maWc/LmxvY2tlZFdyaXRhYmxlQWNjb3VudHM/Lm1hcChrZXkgPT4ga2V5LnRvQmFzZTU4KCkpO1xuICAgIGNvbnN0IGFyZ3MgPSBhY2NvdW50cz8ubGVuZ3RoID8gW2FjY291bnRzXSA6IFtdO1xuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoXG4gICAgICAnZ2V0UmVjZW50UHJpb3JpdGl6YXRpb25GZWVzJyxcbiAgICAgIGFyZ3MsXG4gICAgKTtcbiAgICBjb25zdCByZXMgPSBjcmVhdGUodW5zYWZlUmVzLCBHZXRSZWNlbnRQcmlvcml0aXphdGlvbkZlZXNScGNSZXN1bHQpO1xuICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgdGhyb3cgbmV3IFNvbGFuYUpTT05SUENFcnJvcihcbiAgICAgICAgcmVzLmVycm9yLFxuICAgICAgICAnZmFpbGVkIHRvIGdldCByZWNlbnQgcHJpb3JpdGl6YXRpb24gZmVlcycsXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gcmVzLnJlc3VsdDtcbiAgfVxuICAvKipcbiAgICogRmV0Y2ggYSByZWNlbnQgYmxvY2toYXNoIGZyb20gdGhlIGNsdXN0ZXJcbiAgICogQHJldHVybiB7UHJvbWlzZTx7YmxvY2toYXNoOiBCbG9ja2hhc2gsIGZlZUNhbGN1bGF0b3I6IEZlZUNhbGN1bGF0b3J9Pn1cbiAgICpcbiAgICogQGRlcHJlY2F0ZWQgRGVwcmVjYXRlZCBzaW5jZSBTb2xhbmEgdjEuOC4wLiBQbGVhc2UgdXNlIHtAbGluayBnZXRMYXRlc3RCbG9ja2hhc2h9IGluc3RlYWQuXG4gICAqL1xuICBhc3luYyBnZXRSZWNlbnRCbG9ja2hhc2goXG4gICAgY29tbWl0bWVudD86IENvbW1pdG1lbnQsXG4gICk6IFByb21pc2U8e2Jsb2NraGFzaDogQmxvY2toYXNoOyBmZWVDYWxjdWxhdG9yOiBGZWVDYWxjdWxhdG9yfT4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXMgPSBhd2FpdCB0aGlzLmdldFJlY2VudEJsb2NraGFzaEFuZENvbnRleHQoY29tbWl0bWVudCk7XG4gICAgICByZXR1cm4gcmVzLnZhbHVlO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignZmFpbGVkIHRvIGdldCByZWNlbnQgYmxvY2toYXNoOiAnICsgZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEZldGNoIHRoZSBsYXRlc3QgYmxvY2toYXNoIGZyb20gdGhlIGNsdXN0ZXJcbiAgICogQHJldHVybiB7UHJvbWlzZTxCbG9ja2hhc2hXaXRoRXhwaXJ5QmxvY2tIZWlnaHQ+fVxuICAgKi9cbiAgYXN5bmMgZ2V0TGF0ZXN0QmxvY2toYXNoKFxuICAgIGNvbW1pdG1lbnRPckNvbmZpZz86IENvbW1pdG1lbnQgfCBHZXRMYXRlc3RCbG9ja2hhc2hDb25maWcsXG4gICk6IFByb21pc2U8QmxvY2toYXNoV2l0aEV4cGlyeUJsb2NrSGVpZ2h0PiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IHRoaXMuZ2V0TGF0ZXN0QmxvY2toYXNoQW5kQ29udGV4dChjb21taXRtZW50T3JDb25maWcpO1xuICAgICAgcmV0dXJuIHJlcy52YWx1ZTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2ZhaWxlZCB0byBnZXQgcmVjZW50IGJsb2NraGFzaDogJyArIGUpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBGZXRjaCB0aGUgbGF0ZXN0IGJsb2NraGFzaCBmcm9tIHRoZSBjbHVzdGVyXG4gICAqIEByZXR1cm4ge1Byb21pc2U8QmxvY2toYXNoV2l0aEV4cGlyeUJsb2NrSGVpZ2h0Pn1cbiAgICovXG4gIGFzeW5jIGdldExhdGVzdEJsb2NraGFzaEFuZENvbnRleHQoXG4gICAgY29tbWl0bWVudE9yQ29uZmlnPzogQ29tbWl0bWVudCB8IEdldExhdGVzdEJsb2NraGFzaENvbmZpZyxcbiAgKTogUHJvbWlzZTxScGNSZXNwb25zZUFuZENvbnRleHQ8QmxvY2toYXNoV2l0aEV4cGlyeUJsb2NrSGVpZ2h0Pj4ge1xuICAgIGNvbnN0IHtjb21taXRtZW50LCBjb25maWd9ID1cbiAgICAgIGV4dHJhY3RDb21taXRtZW50RnJvbUNvbmZpZyhjb21taXRtZW50T3JDb25maWcpO1xuICAgIGNvbnN0IGFyZ3MgPSB0aGlzLl9idWlsZEFyZ3MoXG4gICAgICBbXSxcbiAgICAgIGNvbW1pdG1lbnQsXG4gICAgICB1bmRlZmluZWQgLyogZW5jb2RpbmcgKi8sXG4gICAgICBjb25maWcsXG4gICAgKTtcbiAgICBjb25zdCB1bnNhZmVSZXMgPSBhd2FpdCB0aGlzLl9ycGNSZXF1ZXN0KCdnZXRMYXRlc3RCbG9ja2hhc2gnLCBhcmdzKTtcbiAgICBjb25zdCByZXMgPSBjcmVhdGUodW5zYWZlUmVzLCBHZXRMYXRlc3RCbG9ja2hhc2hScGNSZXN1bHQpO1xuICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgdGhyb3cgbmV3IFNvbGFuYUpTT05SUENFcnJvcihyZXMuZXJyb3IsICdmYWlsZWQgdG8gZ2V0IGxhdGVzdCBibG9ja2hhc2gnKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcy5yZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB3aGV0aGVyIGEgYmxvY2toYXNoIGlzIHN0aWxsIHZhbGlkIG9yIG5vdFxuICAgKi9cbiAgYXN5bmMgaXNCbG9ja2hhc2hWYWxpZChcbiAgICBibG9ja2hhc2g6IEJsb2NraGFzaCxcbiAgICByYXdDb25maWc/OiBJc0Jsb2NraGFzaFZhbGlkQ29uZmlnLFxuICApOiBQcm9taXNlPFJwY1Jlc3BvbnNlQW5kQ29udGV4dDxib29sZWFuPj4ge1xuICAgIGNvbnN0IHtjb21taXRtZW50LCBjb25maWd9ID0gZXh0cmFjdENvbW1pdG1lbnRGcm9tQ29uZmlnKHJhd0NvbmZpZyk7XG4gICAgY29uc3QgYXJncyA9IHRoaXMuX2J1aWxkQXJncyhcbiAgICAgIFtibG9ja2hhc2hdLFxuICAgICAgY29tbWl0bWVudCxcbiAgICAgIHVuZGVmaW5lZCAvKiBlbmNvZGluZyAqLyxcbiAgICAgIGNvbmZpZyxcbiAgICApO1xuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoJ2lzQmxvY2toYXNoVmFsaWQnLCBhcmdzKTtcbiAgICBjb25zdCByZXMgPSBjcmVhdGUodW5zYWZlUmVzLCBJc0Jsb2NraGFzaFZhbGlkUnBjUmVzdWx0KTtcbiAgICBpZiAoJ2Vycm9yJyBpbiByZXMpIHtcbiAgICAgIHRocm93IG5ldyBTb2xhbmFKU09OUlBDRXJyb3IoXG4gICAgICAgIHJlcy5lcnJvcixcbiAgICAgICAgJ2ZhaWxlZCB0byBkZXRlcm1pbmUgaWYgdGhlIGJsb2NraGFzaCBgJyArIGJsb2NraGFzaCArICdgaXMgdmFsaWQnLFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcy5yZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2ggdGhlIG5vZGUgdmVyc2lvblxuICAgKi9cbiAgYXN5bmMgZ2V0VmVyc2lvbigpOiBQcm9taXNlPFZlcnNpb24+IHtcbiAgICBjb25zdCB1bnNhZmVSZXMgPSBhd2FpdCB0aGlzLl9ycGNSZXF1ZXN0KCdnZXRWZXJzaW9uJywgW10pO1xuICAgIGNvbnN0IHJlcyA9IGNyZWF0ZSh1bnNhZmVSZXMsIGpzb25ScGNSZXN1bHQoVmVyc2lvblJlc3VsdCkpO1xuICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgdGhyb3cgbmV3IFNvbGFuYUpTT05SUENFcnJvcihyZXMuZXJyb3IsICdmYWlsZWQgdG8gZ2V0IHZlcnNpb24nKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcy5yZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2ggdGhlIGdlbmVzaXMgaGFzaFxuICAgKi9cbiAgYXN5bmMgZ2V0R2VuZXNpc0hhc2goKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBjb25zdCB1bnNhZmVSZXMgPSBhd2FpdCB0aGlzLl9ycGNSZXF1ZXN0KCdnZXRHZW5lc2lzSGFzaCcsIFtdKTtcbiAgICBjb25zdCByZXMgPSBjcmVhdGUodW5zYWZlUmVzLCBqc29uUnBjUmVzdWx0KHN0cmluZygpKSk7XG4gICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKHJlcy5lcnJvciwgJ2ZhaWxlZCB0byBnZXQgZ2VuZXNpcyBoYXNoJyk7XG4gICAgfVxuICAgIHJldHVybiByZXMucmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIEZldGNoIGEgcHJvY2Vzc2VkIGJsb2NrIGZyb20gdGhlIGNsdXN0ZXIuXG4gICAqXG4gICAqIEBkZXByZWNhdGVkIEluc3RlYWQsIGNhbGwgYGdldEJsb2NrYCB1c2luZyBhIGBHZXRWZXJzaW9uZWRCbG9ja0NvbmZpZ2AgYnlcbiAgICogc2V0dGluZyB0aGUgYG1heFN1cHBvcnRlZFRyYW5zYWN0aW9uVmVyc2lvbmAgcHJvcGVydHkuXG4gICAqL1xuICBhc3luYyBnZXRCbG9jayhcbiAgICBzbG90OiBudW1iZXIsXG4gICAgcmF3Q29uZmlnPzogR2V0QmxvY2tDb25maWcsXG4gICk6IFByb21pc2U8QmxvY2tSZXNwb25zZSB8IG51bGw+O1xuXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCBJbnN0ZWFkLCBjYWxsIGBnZXRCbG9ja2AgdXNpbmcgYSBgR2V0VmVyc2lvbmVkQmxvY2tDb25maWdgIGJ5XG4gICAqIHNldHRpbmcgdGhlIGBtYXhTdXBwb3J0ZWRUcmFuc2FjdGlvblZlcnNpb25gIHByb3BlcnR5LlxuICAgKi9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGUtY2xhc3MtbWVtYmVyc1xuICBhc3luYyBnZXRCbG9jayhcbiAgICBzbG90OiBudW1iZXIsXG4gICAgcmF3Q29uZmlnOiBHZXRCbG9ja0NvbmZpZyAmIHt0cmFuc2FjdGlvbkRldGFpbHM6ICdhY2NvdW50cyd9LFxuICApOiBQcm9taXNlPEFjY291bnRzTW9kZUJsb2NrUmVzcG9uc2UgfCBudWxsPjtcblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgSW5zdGVhZCwgY2FsbCBgZ2V0QmxvY2tgIHVzaW5nIGEgYEdldFZlcnNpb25lZEJsb2NrQ29uZmlnYCBieVxuICAgKiBzZXR0aW5nIHRoZSBgbWF4U3VwcG9ydGVkVHJhbnNhY3Rpb25WZXJzaW9uYCBwcm9wZXJ0eS5cbiAgICovXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBlLWNsYXNzLW1lbWJlcnNcbiAgYXN5bmMgZ2V0QmxvY2soXG4gICAgc2xvdDogbnVtYmVyLFxuICAgIHJhd0NvbmZpZzogR2V0QmxvY2tDb25maWcgJiB7dHJhbnNhY3Rpb25EZXRhaWxzOiAnbm9uZSd9LFxuICApOiBQcm9taXNlPE5vbmVNb2RlQmxvY2tSZXNwb25zZSB8IG51bGw+O1xuXG4gIC8qKlxuICAgKiBGZXRjaCBhIHByb2Nlc3NlZCBibG9jayBmcm9tIHRoZSBjbHVzdGVyLlxuICAgKi9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGUtY2xhc3MtbWVtYmVyc1xuICBhc3luYyBnZXRCbG9jayhcbiAgICBzbG90OiBudW1iZXIsXG4gICAgcmF3Q29uZmlnPzogR2V0VmVyc2lvbmVkQmxvY2tDb25maWcsXG4gICk6IFByb21pc2U8VmVyc2lvbmVkQmxvY2tSZXNwb25zZSB8IG51bGw+O1xuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBlLWNsYXNzLW1lbWJlcnNcbiAgYXN5bmMgZ2V0QmxvY2soXG4gICAgc2xvdDogbnVtYmVyLFxuICAgIHJhd0NvbmZpZzogR2V0VmVyc2lvbmVkQmxvY2tDb25maWcgJiB7dHJhbnNhY3Rpb25EZXRhaWxzOiAnYWNjb3VudHMnfSxcbiAgKTogUHJvbWlzZTxWZXJzaW9uZWRBY2NvdW50c01vZGVCbG9ja1Jlc3BvbnNlIHwgbnVsbD47XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGUtY2xhc3MtbWVtYmVyc1xuICBhc3luYyBnZXRCbG9jayhcbiAgICBzbG90OiBudW1iZXIsXG4gICAgcmF3Q29uZmlnOiBHZXRWZXJzaW9uZWRCbG9ja0NvbmZpZyAmIHt0cmFuc2FjdGlvbkRldGFpbHM6ICdub25lJ30sXG4gICk6IFByb21pc2U8VmVyc2lvbmVkTm9uZU1vZGVCbG9ja1Jlc3BvbnNlIHwgbnVsbD47XG5cbiAgLyoqXG4gICAqIEZldGNoIGEgcHJvY2Vzc2VkIGJsb2NrIGZyb20gdGhlIGNsdXN0ZXIuXG4gICAqL1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwZS1jbGFzcy1tZW1iZXJzXG4gIGFzeW5jIGdldEJsb2NrKFxuICAgIHNsb3Q6IG51bWJlcixcbiAgICByYXdDb25maWc/OiBHZXRWZXJzaW9uZWRCbG9ja0NvbmZpZyxcbiAgKTogUHJvbWlzZTxcbiAgICB8IFZlcnNpb25lZEJsb2NrUmVzcG9uc2VcbiAgICB8IFZlcnNpb25lZEFjY291bnRzTW9kZUJsb2NrUmVzcG9uc2VcbiAgICB8IFZlcnNpb25lZE5vbmVNb2RlQmxvY2tSZXNwb25zZVxuICAgIHwgbnVsbFxuICA+IHtcbiAgICBjb25zdCB7Y29tbWl0bWVudCwgY29uZmlnfSA9IGV4dHJhY3RDb21taXRtZW50RnJvbUNvbmZpZyhyYXdDb25maWcpO1xuICAgIGNvbnN0IGFyZ3MgPSB0aGlzLl9idWlsZEFyZ3NBdExlYXN0Q29uZmlybWVkKFxuICAgICAgW3Nsb3RdLFxuICAgICAgY29tbWl0bWVudCBhcyBGaW5hbGl0eSxcbiAgICAgIHVuZGVmaW5lZCAvKiBlbmNvZGluZyAqLyxcbiAgICAgIGNvbmZpZyxcbiAgICApO1xuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoJ2dldEJsb2NrJywgYXJncyk7XG4gICAgdHJ5IHtcbiAgICAgIHN3aXRjaCAoY29uZmlnPy50cmFuc2FjdGlvbkRldGFpbHMpIHtcbiAgICAgICAgY2FzZSAnYWNjb3VudHMnOiB7XG4gICAgICAgICAgY29uc3QgcmVzID0gY3JlYXRlKHVuc2FmZVJlcywgR2V0QWNjb3VudHNNb2RlQmxvY2tScGNSZXN1bHQpO1xuICAgICAgICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgICAgICAgdGhyb3cgcmVzLmVycm9yO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gcmVzLnJlc3VsdDtcbiAgICAgICAgfVxuICAgICAgICBjYXNlICdub25lJzoge1xuICAgICAgICAgIGNvbnN0IHJlcyA9IGNyZWF0ZSh1bnNhZmVSZXMsIEdldE5vbmVNb2RlQmxvY2tScGNSZXN1bHQpO1xuICAgICAgICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgICAgICAgdGhyb3cgcmVzLmVycm9yO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gcmVzLnJlc3VsdDtcbiAgICAgICAgfVxuICAgICAgICBkZWZhdWx0OiB7XG4gICAgICAgICAgY29uc3QgcmVzID0gY3JlYXRlKHVuc2FmZVJlcywgR2V0QmxvY2tScGNSZXN1bHQpO1xuICAgICAgICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgICAgICAgdGhyb3cgcmVzLmVycm9yO1xuICAgICAgICAgIH1cbiAgICAgICAgICBjb25zdCB7cmVzdWx0fSA9IHJlcztcbiAgICAgICAgICByZXR1cm4gcmVzdWx0XG4gICAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgICAuLi5yZXN1bHQsXG4gICAgICAgICAgICAgICAgdHJhbnNhY3Rpb25zOiByZXN1bHQudHJhbnNhY3Rpb25zLm1hcChcbiAgICAgICAgICAgICAgICAgICh7dHJhbnNhY3Rpb24sIG1ldGEsIHZlcnNpb259KSA9PiAoe1xuICAgICAgICAgICAgICAgICAgICBtZXRhLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2FjdGlvbjoge1xuICAgICAgICAgICAgICAgICAgICAgIC4uLnRyYW5zYWN0aW9uLFxuICAgICAgICAgICAgICAgICAgICAgIG1lc3NhZ2U6IHZlcnNpb25lZE1lc3NhZ2VGcm9tUmVzcG9uc2UoXG4gICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uLFxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNhY3Rpb24ubWVzc2FnZSxcbiAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uLFxuICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgOiBudWxsO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IFNvbGFuYUpTT05SUENFcnJvcihcbiAgICAgICAgZSBhcyBKU09OUlBDRXJyb3IsXG4gICAgICAgICdmYWlsZWQgdG8gZ2V0IGNvbmZpcm1lZCBibG9jaycsXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBGZXRjaCBwYXJzZWQgdHJhbnNhY3Rpb24gZGV0YWlscyBmb3IgYSBjb25maXJtZWQgb3IgZmluYWxpemVkIGJsb2NrXG4gICAqL1xuICBhc3luYyBnZXRQYXJzZWRCbG9jayhcbiAgICBzbG90OiBudW1iZXIsXG4gICAgcmF3Q29uZmlnPzogR2V0VmVyc2lvbmVkQmxvY2tDb25maWcsXG4gICk6IFByb21pc2U8UGFyc2VkQWNjb3VudHNNb2RlQmxvY2tSZXNwb25zZT47XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGUtY2xhc3MtbWVtYmVyc1xuICBhc3luYyBnZXRQYXJzZWRCbG9jayhcbiAgICBzbG90OiBudW1iZXIsXG4gICAgcmF3Q29uZmlnOiBHZXRWZXJzaW9uZWRCbG9ja0NvbmZpZyAmIHt0cmFuc2FjdGlvbkRldGFpbHM6ICdhY2NvdW50cyd9LFxuICApOiBQcm9taXNlPFBhcnNlZEFjY291bnRzTW9kZUJsb2NrUmVzcG9uc2U+O1xuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBlLWNsYXNzLW1lbWJlcnNcbiAgYXN5bmMgZ2V0UGFyc2VkQmxvY2soXG4gICAgc2xvdDogbnVtYmVyLFxuICAgIHJhd0NvbmZpZzogR2V0VmVyc2lvbmVkQmxvY2tDb25maWcgJiB7dHJhbnNhY3Rpb25EZXRhaWxzOiAnbm9uZSd9LFxuICApOiBQcm9taXNlPFBhcnNlZE5vbmVNb2RlQmxvY2tSZXNwb25zZT47XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBlLWNsYXNzLW1lbWJlcnNcbiAgYXN5bmMgZ2V0UGFyc2VkQmxvY2soXG4gICAgc2xvdDogbnVtYmVyLFxuICAgIHJhd0NvbmZpZz86IEdldFZlcnNpb25lZEJsb2NrQ29uZmlnLFxuICApOiBQcm9taXNlPFxuICAgIHwgUGFyc2VkQmxvY2tSZXNwb25zZVxuICAgIHwgUGFyc2VkQWNjb3VudHNNb2RlQmxvY2tSZXNwb25zZVxuICAgIHwgUGFyc2VkTm9uZU1vZGVCbG9ja1Jlc3BvbnNlXG4gICAgfCBudWxsXG4gID4ge1xuICAgIGNvbnN0IHtjb21taXRtZW50LCBjb25maWd9ID0gZXh0cmFjdENvbW1pdG1lbnRGcm9tQ29uZmlnKHJhd0NvbmZpZyk7XG4gICAgY29uc3QgYXJncyA9IHRoaXMuX2J1aWxkQXJnc0F0TGVhc3RDb25maXJtZWQoXG4gICAgICBbc2xvdF0sXG4gICAgICBjb21taXRtZW50IGFzIEZpbmFsaXR5LFxuICAgICAgJ2pzb25QYXJzZWQnLFxuICAgICAgY29uZmlnLFxuICAgICk7XG4gICAgY29uc3QgdW5zYWZlUmVzID0gYXdhaXQgdGhpcy5fcnBjUmVxdWVzdCgnZ2V0QmxvY2snLCBhcmdzKTtcbiAgICB0cnkge1xuICAgICAgc3dpdGNoIChjb25maWc/LnRyYW5zYWN0aW9uRGV0YWlscykge1xuICAgICAgICBjYXNlICdhY2NvdW50cyc6IHtcbiAgICAgICAgICBjb25zdCByZXMgPSBjcmVhdGUodW5zYWZlUmVzLCBHZXRQYXJzZWRBY2NvdW50c01vZGVCbG9ja1JwY1Jlc3VsdCk7XG4gICAgICAgICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICAgICAgICB0aHJvdyByZXMuZXJyb3I7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiByZXMucmVzdWx0O1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJ25vbmUnOiB7XG4gICAgICAgICAgY29uc3QgcmVzID0gY3JlYXRlKHVuc2FmZVJlcywgR2V0UGFyc2VkTm9uZU1vZGVCbG9ja1JwY1Jlc3VsdCk7XG4gICAgICAgICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICAgICAgICB0aHJvdyByZXMuZXJyb3I7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiByZXMucmVzdWx0O1xuICAgICAgICB9XG4gICAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgICBjb25zdCByZXMgPSBjcmVhdGUodW5zYWZlUmVzLCBHZXRQYXJzZWRCbG9ja1JwY1Jlc3VsdCk7XG4gICAgICAgICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICAgICAgICB0aHJvdyByZXMuZXJyb3I7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiByZXMucmVzdWx0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IFNvbGFuYUpTT05SUENFcnJvcihlIGFzIEpTT05SUENFcnJvciwgJ2ZhaWxlZCB0byBnZXQgYmxvY2snKTtcbiAgICB9XG4gIH1cblxuICAvKlxuICAgKiBSZXR1cm5zIHRoZSBjdXJyZW50IGJsb2NrIGhlaWdodCBvZiB0aGUgbm9kZVxuICAgKi9cbiAgZ2V0QmxvY2tIZWlnaHQgPSAoKCkgPT4ge1xuICAgIGNvbnN0IHJlcXVlc3RQcm9taXNlczoge1toYXNoOiBzdHJpbmddOiBQcm9taXNlPG51bWJlcj59ID0ge307XG4gICAgcmV0dXJuIGFzeW5jIChcbiAgICAgIGNvbW1pdG1lbnRPckNvbmZpZz86IENvbW1pdG1lbnQgfCBHZXRCbG9ja0hlaWdodENvbmZpZyxcbiAgICApOiBQcm9taXNlPG51bWJlcj4gPT4ge1xuICAgICAgY29uc3Qge2NvbW1pdG1lbnQsIGNvbmZpZ30gPVxuICAgICAgICBleHRyYWN0Q29tbWl0bWVudEZyb21Db25maWcoY29tbWl0bWVudE9yQ29uZmlnKTtcbiAgICAgIGNvbnN0IGFyZ3MgPSB0aGlzLl9idWlsZEFyZ3MoXG4gICAgICAgIFtdLFxuICAgICAgICBjb21taXRtZW50LFxuICAgICAgICB1bmRlZmluZWQgLyogZW5jb2RpbmcgKi8sXG4gICAgICAgIGNvbmZpZyxcbiAgICAgICk7XG4gICAgICBjb25zdCByZXF1ZXN0SGFzaCA9IGZhc3RTdGFibGVTdHJpbmdpZnkoYXJncyk7XG4gICAgICByZXF1ZXN0UHJvbWlzZXNbcmVxdWVzdEhhc2hdID1cbiAgICAgICAgcmVxdWVzdFByb21pc2VzW3JlcXVlc3RIYXNoXSA/P1xuICAgICAgICAoYXN5bmMgKCkgPT4ge1xuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCB1bnNhZmVSZXMgPSBhd2FpdCB0aGlzLl9ycGNSZXF1ZXN0KCdnZXRCbG9ja0hlaWdodCcsIGFyZ3MpO1xuICAgICAgICAgICAgY29uc3QgcmVzID0gY3JlYXRlKHVuc2FmZVJlcywganNvblJwY1Jlc3VsdChudW1iZXIoKSkpO1xuICAgICAgICAgICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICAgICAgICAgIHRocm93IG5ldyBTb2xhbmFKU09OUlBDRXJyb3IoXG4gICAgICAgICAgICAgICAgcmVzLmVycm9yLFxuICAgICAgICAgICAgICAgICdmYWlsZWQgdG8gZ2V0IGJsb2NrIGhlaWdodCBpbmZvcm1hdGlvbicsXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gcmVzLnJlc3VsdDtcbiAgICAgICAgICB9IGZpbmFsbHkge1xuICAgICAgICAgICAgZGVsZXRlIHJlcXVlc3RQcm9taXNlc1tyZXF1ZXN0SGFzaF07XG4gICAgICAgICAgfVxuICAgICAgICB9KSgpO1xuICAgICAgcmV0dXJuIGF3YWl0IHJlcXVlc3RQcm9taXNlc1tyZXF1ZXN0SGFzaF07XG4gICAgfTtcbiAgfSkoKTtcblxuICAvKlxuICAgKiBSZXR1cm5zIHJlY2VudCBibG9jayBwcm9kdWN0aW9uIGluZm9ybWF0aW9uIGZyb20gdGhlIGN1cnJlbnQgb3IgcHJldmlvdXMgZXBvY2hcbiAgICovXG4gIGFzeW5jIGdldEJsb2NrUHJvZHVjdGlvbihcbiAgICBjb25maWdPckNvbW1pdG1lbnQ/OiBHZXRCbG9ja1Byb2R1Y3Rpb25Db25maWcgfCBDb21taXRtZW50LFxuICApOiBQcm9taXNlPFJwY1Jlc3BvbnNlQW5kQ29udGV4dDxCbG9ja1Byb2R1Y3Rpb24+PiB7XG4gICAgbGV0IGV4dHJhOiBPbWl0PEdldEJsb2NrUHJvZHVjdGlvbkNvbmZpZywgJ2NvbW1pdG1lbnQnPiB8IHVuZGVmaW5lZDtcbiAgICBsZXQgY29tbWl0bWVudDogQ29tbWl0bWVudCB8IHVuZGVmaW5lZDtcblxuICAgIGlmICh0eXBlb2YgY29uZmlnT3JDb21taXRtZW50ID09PSAnc3RyaW5nJykge1xuICAgICAgY29tbWl0bWVudCA9IGNvbmZpZ09yQ29tbWl0bWVudDtcbiAgICB9IGVsc2UgaWYgKGNvbmZpZ09yQ29tbWl0bWVudCkge1xuICAgICAgY29uc3Qge2NvbW1pdG1lbnQ6IGMsIC4uLnJlc3R9ID0gY29uZmlnT3JDb21taXRtZW50O1xuICAgICAgY29tbWl0bWVudCA9IGM7XG4gICAgICBleHRyYSA9IHJlc3Q7XG4gICAgfVxuXG4gICAgY29uc3QgYXJncyA9IHRoaXMuX2J1aWxkQXJncyhbXSwgY29tbWl0bWVudCwgJ2Jhc2U2NCcsIGV4dHJhKTtcbiAgICBjb25zdCB1bnNhZmVSZXMgPSBhd2FpdCB0aGlzLl9ycGNSZXF1ZXN0KCdnZXRCbG9ja1Byb2R1Y3Rpb24nLCBhcmdzKTtcbiAgICBjb25zdCByZXMgPSBjcmVhdGUodW5zYWZlUmVzLCBCbG9ja1Byb2R1Y3Rpb25SZXNwb25zZVN0cnVjdCk7XG4gICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKFxuICAgICAgICByZXMuZXJyb3IsXG4gICAgICAgICdmYWlsZWQgdG8gZ2V0IGJsb2NrIHByb2R1Y3Rpb24gaW5mb3JtYXRpb24nLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzLnJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBGZXRjaCBhIGNvbmZpcm1lZCBvciBmaW5hbGl6ZWQgdHJhbnNhY3Rpb24gZnJvbSB0aGUgY2x1c3Rlci5cbiAgICpcbiAgICogQGRlcHJlY2F0ZWQgSW5zdGVhZCwgY2FsbCBgZ2V0VHJhbnNhY3Rpb25gIHVzaW5nIGFcbiAgICogYEdldFZlcnNpb25lZFRyYW5zYWN0aW9uQ29uZmlnYCBieSBzZXR0aW5nIHRoZVxuICAgKiBgbWF4U3VwcG9ydGVkVHJhbnNhY3Rpb25WZXJzaW9uYCBwcm9wZXJ0eS5cbiAgICovXG4gIGFzeW5jIGdldFRyYW5zYWN0aW9uKFxuICAgIHNpZ25hdHVyZTogc3RyaW5nLFxuICAgIHJhd0NvbmZpZz86IEdldFRyYW5zYWN0aW9uQ29uZmlnLFxuICApOiBQcm9taXNlPFRyYW5zYWN0aW9uUmVzcG9uc2UgfCBudWxsPjtcblxuICAvKipcbiAgICogRmV0Y2ggYSBjb25maXJtZWQgb3IgZmluYWxpemVkIHRyYW5zYWN0aW9uIGZyb20gdGhlIGNsdXN0ZXIuXG4gICAqL1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwZS1jbGFzcy1tZW1iZXJzXG4gIGFzeW5jIGdldFRyYW5zYWN0aW9uKFxuICAgIHNpZ25hdHVyZTogc3RyaW5nLFxuICAgIHJhd0NvbmZpZzogR2V0VmVyc2lvbmVkVHJhbnNhY3Rpb25Db25maWcsXG4gICk6IFByb21pc2U8VmVyc2lvbmVkVHJhbnNhY3Rpb25SZXNwb25zZSB8IG51bGw+O1xuXG4gIC8qKlxuICAgKiBGZXRjaCBhIGNvbmZpcm1lZCBvciBmaW5hbGl6ZWQgdHJhbnNhY3Rpb24gZnJvbSB0aGUgY2x1c3Rlci5cbiAgICovXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBlLWNsYXNzLW1lbWJlcnNcbiAgYXN5bmMgZ2V0VHJhbnNhY3Rpb24oXG4gICAgc2lnbmF0dXJlOiBzdHJpbmcsXG4gICAgcmF3Q29uZmlnPzogR2V0VmVyc2lvbmVkVHJhbnNhY3Rpb25Db25maWcsXG4gICk6IFByb21pc2U8VmVyc2lvbmVkVHJhbnNhY3Rpb25SZXNwb25zZSB8IG51bGw+IHtcbiAgICBjb25zdCB7Y29tbWl0bWVudCwgY29uZmlnfSA9IGV4dHJhY3RDb21taXRtZW50RnJvbUNvbmZpZyhyYXdDb25maWcpO1xuICAgIGNvbnN0IGFyZ3MgPSB0aGlzLl9idWlsZEFyZ3NBdExlYXN0Q29uZmlybWVkKFxuICAgICAgW3NpZ25hdHVyZV0sXG4gICAgICBjb21taXRtZW50IGFzIEZpbmFsaXR5LFxuICAgICAgdW5kZWZpbmVkIC8qIGVuY29kaW5nICovLFxuICAgICAgY29uZmlnLFxuICAgICk7XG4gICAgY29uc3QgdW5zYWZlUmVzID0gYXdhaXQgdGhpcy5fcnBjUmVxdWVzdCgnZ2V0VHJhbnNhY3Rpb24nLCBhcmdzKTtcbiAgICBjb25zdCByZXMgPSBjcmVhdGUodW5zYWZlUmVzLCBHZXRUcmFuc2FjdGlvblJwY1Jlc3VsdCk7XG4gICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKHJlcy5lcnJvciwgJ2ZhaWxlZCB0byBnZXQgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG5cbiAgICBjb25zdCByZXN1bHQgPSByZXMucmVzdWx0O1xuICAgIGlmICghcmVzdWx0KSByZXR1cm4gcmVzdWx0O1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnJlc3VsdCxcbiAgICAgIHRyYW5zYWN0aW9uOiB7XG4gICAgICAgIC4uLnJlc3VsdC50cmFuc2FjdGlvbixcbiAgICAgICAgbWVzc2FnZTogdmVyc2lvbmVkTWVzc2FnZUZyb21SZXNwb25zZShcbiAgICAgICAgICByZXN1bHQudmVyc2lvbixcbiAgICAgICAgICByZXN1bHQudHJhbnNhY3Rpb24ubWVzc2FnZSxcbiAgICAgICAgKSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGZXRjaCBwYXJzZWQgdHJhbnNhY3Rpb24gZGV0YWlscyBmb3IgYSBjb25maXJtZWQgb3IgZmluYWxpemVkIHRyYW5zYWN0aW9uXG4gICAqL1xuICBhc3luYyBnZXRQYXJzZWRUcmFuc2FjdGlvbihcbiAgICBzaWduYXR1cmU6IFRyYW5zYWN0aW9uU2lnbmF0dXJlLFxuICAgIGNvbW1pdG1lbnRPckNvbmZpZz86IEdldFZlcnNpb25lZFRyYW5zYWN0aW9uQ29uZmlnIHwgRmluYWxpdHksXG4gICk6IFByb21pc2U8UGFyc2VkVHJhbnNhY3Rpb25XaXRoTWV0YSB8IG51bGw+IHtcbiAgICBjb25zdCB7Y29tbWl0bWVudCwgY29uZmlnfSA9XG4gICAgICBleHRyYWN0Q29tbWl0bWVudEZyb21Db25maWcoY29tbWl0bWVudE9yQ29uZmlnKTtcbiAgICBjb25zdCBhcmdzID0gdGhpcy5fYnVpbGRBcmdzQXRMZWFzdENvbmZpcm1lZChcbiAgICAgIFtzaWduYXR1cmVdLFxuICAgICAgY29tbWl0bWVudCBhcyBGaW5hbGl0eSxcbiAgICAgICdqc29uUGFyc2VkJyxcbiAgICAgIGNvbmZpZyxcbiAgICApO1xuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoJ2dldFRyYW5zYWN0aW9uJywgYXJncyk7XG4gICAgY29uc3QgcmVzID0gY3JlYXRlKHVuc2FmZVJlcywgR2V0UGFyc2VkVHJhbnNhY3Rpb25ScGNSZXN1bHQpO1xuICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgdGhyb3cgbmV3IFNvbGFuYUpTT05SUENFcnJvcihyZXMuZXJyb3IsICdmYWlsZWQgdG8gZ2V0IHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuICAgIHJldHVybiByZXMucmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIEZldGNoIHBhcnNlZCB0cmFuc2FjdGlvbiBkZXRhaWxzIGZvciBhIGJhdGNoIG9mIGNvbmZpcm1lZCB0cmFuc2FjdGlvbnNcbiAgICovXG4gIGFzeW5jIGdldFBhcnNlZFRyYW5zYWN0aW9ucyhcbiAgICBzaWduYXR1cmVzOiBUcmFuc2FjdGlvblNpZ25hdHVyZVtdLFxuICAgIGNvbW1pdG1lbnRPckNvbmZpZz86IEdldFZlcnNpb25lZFRyYW5zYWN0aW9uQ29uZmlnIHwgRmluYWxpdHksXG4gICk6IFByb21pc2U8KFBhcnNlZFRyYW5zYWN0aW9uV2l0aE1ldGEgfCBudWxsKVtdPiB7XG4gICAgY29uc3Qge2NvbW1pdG1lbnQsIGNvbmZpZ30gPVxuICAgICAgZXh0cmFjdENvbW1pdG1lbnRGcm9tQ29uZmlnKGNvbW1pdG1lbnRPckNvbmZpZyk7XG4gICAgY29uc3QgYmF0Y2ggPSBzaWduYXR1cmVzLm1hcChzaWduYXR1cmUgPT4ge1xuICAgICAgY29uc3QgYXJncyA9IHRoaXMuX2J1aWxkQXJnc0F0TGVhc3RDb25maXJtZWQoXG4gICAgICAgIFtzaWduYXR1cmVdLFxuICAgICAgICBjb21taXRtZW50IGFzIEZpbmFsaXR5LFxuICAgICAgICAnanNvblBhcnNlZCcsXG4gICAgICAgIGNvbmZpZyxcbiAgICAgICk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBtZXRob2ROYW1lOiAnZ2V0VHJhbnNhY3Rpb24nLFxuICAgICAgICBhcmdzLFxuICAgICAgfTtcbiAgICB9KTtcblxuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY0JhdGNoUmVxdWVzdChiYXRjaCk7XG4gICAgY29uc3QgcmVzID0gdW5zYWZlUmVzLm1hcCgodW5zYWZlUmVzOiBhbnkpID0+IHtcbiAgICAgIGNvbnN0IHJlcyA9IGNyZWF0ZSh1bnNhZmVSZXMsIEdldFBhcnNlZFRyYW5zYWN0aW9uUnBjUmVzdWx0KTtcbiAgICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKHJlcy5lcnJvciwgJ2ZhaWxlZCB0byBnZXQgdHJhbnNhY3Rpb25zJyk7XG4gICAgICB9XG4gICAgICByZXR1cm4gcmVzLnJlc3VsdDtcbiAgICB9KTtcblxuICAgIHJldHVybiByZXM7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2ggdHJhbnNhY3Rpb24gZGV0YWlscyBmb3IgYSBiYXRjaCBvZiBjb25maXJtZWQgdHJhbnNhY3Rpb25zLlxuICAgKiBTaW1pbGFyIHRvIHtAbGluayBnZXRQYXJzZWRUcmFuc2FjdGlvbnN9IGJ1dCByZXR1cm5zIGEge0BsaW5rIFRyYW5zYWN0aW9uUmVzcG9uc2V9LlxuICAgKlxuICAgKiBAZGVwcmVjYXRlZCBJbnN0ZWFkLCBjYWxsIGBnZXRUcmFuc2FjdGlvbnNgIHVzaW5nIGFcbiAgICogYEdldFZlcnNpb25lZFRyYW5zYWN0aW9uQ29uZmlnYCBieSBzZXR0aW5nIHRoZVxuICAgKiBgbWF4U3VwcG9ydGVkVHJhbnNhY3Rpb25WZXJzaW9uYCBwcm9wZXJ0eS5cbiAgICovXG4gIGFzeW5jIGdldFRyYW5zYWN0aW9ucyhcbiAgICBzaWduYXR1cmVzOiBUcmFuc2FjdGlvblNpZ25hdHVyZVtdLFxuICAgIGNvbW1pdG1lbnRPckNvbmZpZz86IEdldFRyYW5zYWN0aW9uQ29uZmlnIHwgRmluYWxpdHksXG4gICk6IFByb21pc2U8KFRyYW5zYWN0aW9uUmVzcG9uc2UgfCBudWxsKVtdPjtcblxuICAvKipcbiAgICogRmV0Y2ggdHJhbnNhY3Rpb24gZGV0YWlscyBmb3IgYSBiYXRjaCBvZiBjb25maXJtZWQgdHJhbnNhY3Rpb25zLlxuICAgKiBTaW1pbGFyIHRvIHtAbGluayBnZXRQYXJzZWRUcmFuc2FjdGlvbnN9IGJ1dCByZXR1cm5zIGEge0BsaW5rXG4gICAqIFZlcnNpb25lZFRyYW5zYWN0aW9uUmVzcG9uc2V9LlxuICAgKi9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGUtY2xhc3MtbWVtYmVyc1xuICBhc3luYyBnZXRUcmFuc2FjdGlvbnMoXG4gICAgc2lnbmF0dXJlczogVHJhbnNhY3Rpb25TaWduYXR1cmVbXSxcbiAgICBjb21taXRtZW50T3JDb25maWc6IEdldFZlcnNpb25lZFRyYW5zYWN0aW9uQ29uZmlnIHwgRmluYWxpdHksXG4gICk6IFByb21pc2U8KFZlcnNpb25lZFRyYW5zYWN0aW9uUmVzcG9uc2UgfCBudWxsKVtdPjtcblxuICAvKipcbiAgICogRmV0Y2ggdHJhbnNhY3Rpb24gZGV0YWlscyBmb3IgYSBiYXRjaCBvZiBjb25maXJtZWQgdHJhbnNhY3Rpb25zLlxuICAgKiBTaW1pbGFyIHRvIHtAbGluayBnZXRQYXJzZWRUcmFuc2FjdGlvbnN9IGJ1dCByZXR1cm5zIGEge0BsaW5rXG4gICAqIFZlcnNpb25lZFRyYW5zYWN0aW9uUmVzcG9uc2V9LlxuICAgKi9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGUtY2xhc3MtbWVtYmVyc1xuICBhc3luYyBnZXRUcmFuc2FjdGlvbnMoXG4gICAgc2lnbmF0dXJlczogVHJhbnNhY3Rpb25TaWduYXR1cmVbXSxcbiAgICBjb21taXRtZW50T3JDb25maWc6IEdldFZlcnNpb25lZFRyYW5zYWN0aW9uQ29uZmlnIHwgRmluYWxpdHksXG4gICk6IFByb21pc2U8KFZlcnNpb25lZFRyYW5zYWN0aW9uUmVzcG9uc2UgfCBudWxsKVtdPiB7XG4gICAgY29uc3Qge2NvbW1pdG1lbnQsIGNvbmZpZ30gPVxuICAgICAgZXh0cmFjdENvbW1pdG1lbnRGcm9tQ29uZmlnKGNvbW1pdG1lbnRPckNvbmZpZyk7XG4gICAgY29uc3QgYmF0Y2ggPSBzaWduYXR1cmVzLm1hcChzaWduYXR1cmUgPT4ge1xuICAgICAgY29uc3QgYXJncyA9IHRoaXMuX2J1aWxkQXJnc0F0TGVhc3RDb25maXJtZWQoXG4gICAgICAgIFtzaWduYXR1cmVdLFxuICAgICAgICBjb21taXRtZW50IGFzIEZpbmFsaXR5LFxuICAgICAgICB1bmRlZmluZWQgLyogZW5jb2RpbmcgKi8sXG4gICAgICAgIGNvbmZpZyxcbiAgICAgICk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBtZXRob2ROYW1lOiAnZ2V0VHJhbnNhY3Rpb24nLFxuICAgICAgICBhcmdzLFxuICAgICAgfTtcbiAgICB9KTtcblxuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY0JhdGNoUmVxdWVzdChiYXRjaCk7XG4gICAgY29uc3QgcmVzID0gdW5zYWZlUmVzLm1hcCgodW5zYWZlUmVzOiBhbnkpID0+IHtcbiAgICAgIGNvbnN0IHJlcyA9IGNyZWF0ZSh1bnNhZmVSZXMsIEdldFRyYW5zYWN0aW9uUnBjUmVzdWx0KTtcbiAgICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKHJlcy5lcnJvciwgJ2ZhaWxlZCB0byBnZXQgdHJhbnNhY3Rpb25zJyk7XG4gICAgICB9XG4gICAgICBjb25zdCByZXN1bHQgPSByZXMucmVzdWx0O1xuICAgICAgaWYgKCFyZXN1bHQpIHJldHVybiByZXN1bHQ7XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLnJlc3VsdCxcbiAgICAgICAgdHJhbnNhY3Rpb246IHtcbiAgICAgICAgICAuLi5yZXN1bHQudHJhbnNhY3Rpb24sXG4gICAgICAgICAgbWVzc2FnZTogdmVyc2lvbmVkTWVzc2FnZUZyb21SZXNwb25zZShcbiAgICAgICAgICAgIHJlc3VsdC52ZXJzaW9uLFxuICAgICAgICAgICAgcmVzdWx0LnRyYW5zYWN0aW9uLm1lc3NhZ2UsXG4gICAgICAgICAgKSxcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgfSk7XG5cbiAgICByZXR1cm4gcmVzO1xuICB9XG5cbiAgLyoqXG4gICAqIEZldGNoIGEgbGlzdCBvZiBUcmFuc2FjdGlvbnMgYW5kIHRyYW5zYWN0aW9uIHN0YXR1c2VzIGZyb20gdGhlIGNsdXN0ZXJcbiAgICogZm9yIGEgY29uZmlybWVkIGJsb2NrLlxuICAgKlxuICAgKiBAZGVwcmVjYXRlZCBEZXByZWNhdGVkIHNpbmNlIHYxLjEzLjAuIFBsZWFzZSB1c2Uge0BsaW5rIGdldEJsb2NrfSBpbnN0ZWFkLlxuICAgKi9cbiAgYXN5bmMgZ2V0Q29uZmlybWVkQmxvY2soXG4gICAgc2xvdDogbnVtYmVyLFxuICAgIGNvbW1pdG1lbnQ/OiBGaW5hbGl0eSxcbiAgKTogUHJvbWlzZTxDb25maXJtZWRCbG9jaz4ge1xuICAgIGNvbnN0IGFyZ3MgPSB0aGlzLl9idWlsZEFyZ3NBdExlYXN0Q29uZmlybWVkKFtzbG90XSwgY29tbWl0bWVudCk7XG4gICAgY29uc3QgdW5zYWZlUmVzID0gYXdhaXQgdGhpcy5fcnBjUmVxdWVzdCgnZ2V0Q29uZmlybWVkQmxvY2snLCBhcmdzKTtcbiAgICBjb25zdCByZXMgPSBjcmVhdGUodW5zYWZlUmVzLCBHZXRDb25maXJtZWRCbG9ja1JwY1Jlc3VsdCk7XG5cbiAgICBpZiAoJ2Vycm9yJyBpbiByZXMpIHtcbiAgICAgIHRocm93IG5ldyBTb2xhbmFKU09OUlBDRXJyb3IocmVzLmVycm9yLCAnZmFpbGVkIHRvIGdldCBjb25maXJtZWQgYmxvY2snKTtcbiAgICB9XG5cbiAgICBjb25zdCByZXN1bHQgPSByZXMucmVzdWx0O1xuICAgIGlmICghcmVzdWx0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NvbmZpcm1lZCBibG9jayAnICsgc2xvdCArICcgbm90IGZvdW5kJyk7XG4gICAgfVxuXG4gICAgY29uc3QgYmxvY2sgPSB7XG4gICAgICAuLi5yZXN1bHQsXG4gICAgICB0cmFuc2FjdGlvbnM6IHJlc3VsdC50cmFuc2FjdGlvbnMubWFwKCh7dHJhbnNhY3Rpb24sIG1ldGF9KSA9PiB7XG4gICAgICAgIGNvbnN0IG1lc3NhZ2UgPSBuZXcgTWVzc2FnZSh0cmFuc2FjdGlvbi5tZXNzYWdlKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBtZXRhLFxuICAgICAgICAgIHRyYW5zYWN0aW9uOiB7XG4gICAgICAgICAgICAuLi50cmFuc2FjdGlvbixcbiAgICAgICAgICAgIG1lc3NhZ2UsXG4gICAgICAgICAgfSxcbiAgICAgICAgfTtcbiAgICAgIH0pLFxuICAgIH07XG5cbiAgICByZXR1cm4ge1xuICAgICAgLi4uYmxvY2ssXG4gICAgICB0cmFuc2FjdGlvbnM6IGJsb2NrLnRyYW5zYWN0aW9ucy5tYXAoKHt0cmFuc2FjdGlvbiwgbWV0YX0pID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBtZXRhLFxuICAgICAgICAgIHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbi5wb3B1bGF0ZShcbiAgICAgICAgICAgIHRyYW5zYWN0aW9uLm1lc3NhZ2UsXG4gICAgICAgICAgICB0cmFuc2FjdGlvbi5zaWduYXR1cmVzLFxuICAgICAgICAgICksXG4gICAgICAgIH07XG4gICAgICB9KSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEZldGNoIGNvbmZpcm1lZCBibG9ja3MgYmV0d2VlbiB0d28gc2xvdHNcbiAgICovXG4gIGFzeW5jIGdldEJsb2NrcyhcbiAgICBzdGFydFNsb3Q6IG51bWJlcixcbiAgICBlbmRTbG90PzogbnVtYmVyLFxuICAgIGNvbW1pdG1lbnQ/OiBGaW5hbGl0eSxcbiAgKTogUHJvbWlzZTxBcnJheTxudW1iZXI+PiB7XG4gICAgY29uc3QgYXJncyA9IHRoaXMuX2J1aWxkQXJnc0F0TGVhc3RDb25maXJtZWQoXG4gICAgICBlbmRTbG90ICE9PSB1bmRlZmluZWQgPyBbc3RhcnRTbG90LCBlbmRTbG90XSA6IFtzdGFydFNsb3RdLFxuICAgICAgY29tbWl0bWVudCxcbiAgICApO1xuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoJ2dldEJsb2NrcycsIGFyZ3MpO1xuICAgIGNvbnN0IHJlcyA9IGNyZWF0ZSh1bnNhZmVSZXMsIGpzb25ScGNSZXN1bHQoYXJyYXkobnVtYmVyKCkpKSk7XG4gICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKHJlcy5lcnJvciwgJ2ZhaWxlZCB0byBnZXQgYmxvY2tzJyk7XG4gICAgfVxuICAgIHJldHVybiByZXMucmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIEZldGNoIGEgbGlzdCBvZiBTaWduYXR1cmVzIGZyb20gdGhlIGNsdXN0ZXIgZm9yIGEgYmxvY2ssIGV4Y2x1ZGluZyByZXdhcmRzXG4gICAqL1xuICBhc3luYyBnZXRCbG9ja1NpZ25hdHVyZXMoXG4gICAgc2xvdDogbnVtYmVyLFxuICAgIGNvbW1pdG1lbnQ/OiBGaW5hbGl0eSxcbiAgKTogUHJvbWlzZTxCbG9ja1NpZ25hdHVyZXM+IHtcbiAgICBjb25zdCBhcmdzID0gdGhpcy5fYnVpbGRBcmdzQXRMZWFzdENvbmZpcm1lZChcbiAgICAgIFtzbG90XSxcbiAgICAgIGNvbW1pdG1lbnQsXG4gICAgICB1bmRlZmluZWQsXG4gICAgICB7XG4gICAgICAgIHRyYW5zYWN0aW9uRGV0YWlsczogJ3NpZ25hdHVyZXMnLFxuICAgICAgICByZXdhcmRzOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgKTtcbiAgICBjb25zdCB1bnNhZmVSZXMgPSBhd2FpdCB0aGlzLl9ycGNSZXF1ZXN0KCdnZXRCbG9jaycsIGFyZ3MpO1xuICAgIGNvbnN0IHJlcyA9IGNyZWF0ZSh1bnNhZmVSZXMsIEdldEJsb2NrU2lnbmF0dXJlc1JwY1Jlc3VsdCk7XG4gICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKHJlcy5lcnJvciwgJ2ZhaWxlZCB0byBnZXQgYmxvY2snKTtcbiAgICB9XG4gICAgY29uc3QgcmVzdWx0ID0gcmVzLnJlc3VsdDtcbiAgICBpZiAoIXJlc3VsdCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdCbG9jayAnICsgc2xvdCArICcgbm90IGZvdW5kJyk7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2ggYSBsaXN0IG9mIFNpZ25hdHVyZXMgZnJvbSB0aGUgY2x1c3RlciBmb3IgYSBjb25maXJtZWQgYmxvY2ssIGV4Y2x1ZGluZyByZXdhcmRzXG4gICAqXG4gICAqIEBkZXByZWNhdGVkIERlcHJlY2F0ZWQgc2luY2UgU29sYW5hIHYxLjguMC4gUGxlYXNlIHVzZSB7QGxpbmsgZ2V0QmxvY2tTaWduYXR1cmVzfSBpbnN0ZWFkLlxuICAgKi9cbiAgYXN5bmMgZ2V0Q29uZmlybWVkQmxvY2tTaWduYXR1cmVzKFxuICAgIHNsb3Q6IG51bWJlcixcbiAgICBjb21taXRtZW50PzogRmluYWxpdHksXG4gICk6IFByb21pc2U8QmxvY2tTaWduYXR1cmVzPiB7XG4gICAgY29uc3QgYXJncyA9IHRoaXMuX2J1aWxkQXJnc0F0TGVhc3RDb25maXJtZWQoXG4gICAgICBbc2xvdF0sXG4gICAgICBjb21taXRtZW50LFxuICAgICAgdW5kZWZpbmVkLFxuICAgICAge1xuICAgICAgICB0cmFuc2FjdGlvbkRldGFpbHM6ICdzaWduYXR1cmVzJyxcbiAgICAgICAgcmV3YXJkczogZmFsc2UsXG4gICAgICB9LFxuICAgICk7XG4gICAgY29uc3QgdW5zYWZlUmVzID0gYXdhaXQgdGhpcy5fcnBjUmVxdWVzdCgnZ2V0Q29uZmlybWVkQmxvY2snLCBhcmdzKTtcbiAgICBjb25zdCByZXMgPSBjcmVhdGUodW5zYWZlUmVzLCBHZXRCbG9ja1NpZ25hdHVyZXNScGNSZXN1bHQpO1xuICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgdGhyb3cgbmV3IFNvbGFuYUpTT05SUENFcnJvcihyZXMuZXJyb3IsICdmYWlsZWQgdG8gZ2V0IGNvbmZpcm1lZCBibG9jaycpO1xuICAgIH1cbiAgICBjb25zdCByZXN1bHQgPSByZXMucmVzdWx0O1xuICAgIGlmICghcmVzdWx0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NvbmZpcm1lZCBibG9jayAnICsgc2xvdCArICcgbm90IGZvdW5kJyk7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2ggYSB0cmFuc2FjdGlvbiBkZXRhaWxzIGZvciBhIGNvbmZpcm1lZCB0cmFuc2FjdGlvblxuICAgKlxuICAgKiBAZGVwcmVjYXRlZCBEZXByZWNhdGVkIHNpbmNlIFNvbGFuYSB2MS44LjAuIFBsZWFzZSB1c2Uge0BsaW5rIGdldFRyYW5zYWN0aW9ufSBpbnN0ZWFkLlxuICAgKi9cbiAgYXN5bmMgZ2V0Q29uZmlybWVkVHJhbnNhY3Rpb24oXG4gICAgc2lnbmF0dXJlOiBUcmFuc2FjdGlvblNpZ25hdHVyZSxcbiAgICBjb21taXRtZW50PzogRmluYWxpdHksXG4gICk6IFByb21pc2U8Q29uZmlybWVkVHJhbnNhY3Rpb24gfCBudWxsPiB7XG4gICAgY29uc3QgYXJncyA9IHRoaXMuX2J1aWxkQXJnc0F0TGVhc3RDb25maXJtZWQoW3NpZ25hdHVyZV0sIGNvbW1pdG1lbnQpO1xuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoJ2dldENvbmZpcm1lZFRyYW5zYWN0aW9uJywgYXJncyk7XG4gICAgY29uc3QgcmVzID0gY3JlYXRlKHVuc2FmZVJlcywgR2V0VHJhbnNhY3Rpb25ScGNSZXN1bHQpO1xuICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgdGhyb3cgbmV3IFNvbGFuYUpTT05SUENFcnJvcihyZXMuZXJyb3IsICdmYWlsZWQgdG8gZ2V0IHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuXG4gICAgY29uc3QgcmVzdWx0ID0gcmVzLnJlc3VsdDtcbiAgICBpZiAoIXJlc3VsdCkgcmV0dXJuIHJlc3VsdDtcblxuICAgIGNvbnN0IG1lc3NhZ2UgPSBuZXcgTWVzc2FnZShyZXN1bHQudHJhbnNhY3Rpb24ubWVzc2FnZSk7XG4gICAgY29uc3Qgc2lnbmF0dXJlcyA9IHJlc3VsdC50cmFuc2FjdGlvbi5zaWduYXR1cmVzO1xuICAgIHJldHVybiB7XG4gICAgICAuLi5yZXN1bHQsXG4gICAgICB0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24ucG9wdWxhdGUobWVzc2FnZSwgc2lnbmF0dXJlcyksXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGZXRjaCBwYXJzZWQgdHJhbnNhY3Rpb24gZGV0YWlscyBmb3IgYSBjb25maXJtZWQgdHJhbnNhY3Rpb25cbiAgICpcbiAgICogQGRlcHJlY2F0ZWQgRGVwcmVjYXRlZCBzaW5jZSBTb2xhbmEgdjEuOC4wLiBQbGVhc2UgdXNlIHtAbGluayBnZXRQYXJzZWRUcmFuc2FjdGlvbn0gaW5zdGVhZC5cbiAgICovXG4gIGFzeW5jIGdldFBhcnNlZENvbmZpcm1lZFRyYW5zYWN0aW9uKFxuICAgIHNpZ25hdHVyZTogVHJhbnNhY3Rpb25TaWduYXR1cmUsXG4gICAgY29tbWl0bWVudD86IEZpbmFsaXR5LFxuICApOiBQcm9taXNlPFBhcnNlZENvbmZpcm1lZFRyYW5zYWN0aW9uIHwgbnVsbD4ge1xuICAgIGNvbnN0IGFyZ3MgPSB0aGlzLl9idWlsZEFyZ3NBdExlYXN0Q29uZmlybWVkKFxuICAgICAgW3NpZ25hdHVyZV0sXG4gICAgICBjb21taXRtZW50LFxuICAgICAgJ2pzb25QYXJzZWQnLFxuICAgICk7XG4gICAgY29uc3QgdW5zYWZlUmVzID0gYXdhaXQgdGhpcy5fcnBjUmVxdWVzdCgnZ2V0Q29uZmlybWVkVHJhbnNhY3Rpb24nLCBhcmdzKTtcbiAgICBjb25zdCByZXMgPSBjcmVhdGUodW5zYWZlUmVzLCBHZXRQYXJzZWRUcmFuc2FjdGlvblJwY1Jlc3VsdCk7XG4gICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKFxuICAgICAgICByZXMuZXJyb3IsXG4gICAgICAgICdmYWlsZWQgdG8gZ2V0IGNvbmZpcm1lZCB0cmFuc2FjdGlvbicsXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gcmVzLnJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBGZXRjaCBwYXJzZWQgdHJhbnNhY3Rpb24gZGV0YWlscyBmb3IgYSBiYXRjaCBvZiBjb25maXJtZWQgdHJhbnNhY3Rpb25zXG4gICAqXG4gICAqIEBkZXByZWNhdGVkIERlcHJlY2F0ZWQgc2luY2UgU29sYW5hIHYxLjguMC4gUGxlYXNlIHVzZSB7QGxpbmsgZ2V0UGFyc2VkVHJhbnNhY3Rpb25zfSBpbnN0ZWFkLlxuICAgKi9cbiAgYXN5bmMgZ2V0UGFyc2VkQ29uZmlybWVkVHJhbnNhY3Rpb25zKFxuICAgIHNpZ25hdHVyZXM6IFRyYW5zYWN0aW9uU2lnbmF0dXJlW10sXG4gICAgY29tbWl0bWVudD86IEZpbmFsaXR5LFxuICApOiBQcm9taXNlPChQYXJzZWRDb25maXJtZWRUcmFuc2FjdGlvbiB8IG51bGwpW10+IHtcbiAgICBjb25zdCBiYXRjaCA9IHNpZ25hdHVyZXMubWFwKHNpZ25hdHVyZSA9PiB7XG4gICAgICBjb25zdCBhcmdzID0gdGhpcy5fYnVpbGRBcmdzQXRMZWFzdENvbmZpcm1lZChcbiAgICAgICAgW3NpZ25hdHVyZV0sXG4gICAgICAgIGNvbW1pdG1lbnQsXG4gICAgICAgICdqc29uUGFyc2VkJyxcbiAgICAgICk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBtZXRob2ROYW1lOiAnZ2V0Q29uZmlybWVkVHJhbnNhY3Rpb24nLFxuICAgICAgICBhcmdzLFxuICAgICAgfTtcbiAgICB9KTtcblxuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY0JhdGNoUmVxdWVzdChiYXRjaCk7XG4gICAgY29uc3QgcmVzID0gdW5zYWZlUmVzLm1hcCgodW5zYWZlUmVzOiBhbnkpID0+IHtcbiAgICAgIGNvbnN0IHJlcyA9IGNyZWF0ZSh1bnNhZmVSZXMsIEdldFBhcnNlZFRyYW5zYWN0aW9uUnBjUmVzdWx0KTtcbiAgICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKFxuICAgICAgICAgIHJlcy5lcnJvcixcbiAgICAgICAgICAnZmFpbGVkIHRvIGdldCBjb25maXJtZWQgdHJhbnNhY3Rpb25zJyxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiByZXMucmVzdWx0O1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIHJlcztcbiAgfVxuXG4gIC8qKlxuICAgKiBGZXRjaCBhIGxpc3Qgb2YgYWxsIHRoZSBjb25maXJtZWQgc2lnbmF0dXJlcyBmb3IgdHJhbnNhY3Rpb25zIGludm9sdmluZyBhbiBhZGRyZXNzXG4gICAqIHdpdGhpbiBhIHNwZWNpZmllZCBzbG90IHJhbmdlLiBNYXggcmFuZ2UgYWxsb3dlZCBpcyAxMCwwMDAgc2xvdHMuXG4gICAqXG4gICAqIEBkZXByZWNhdGVkIERlcHJlY2F0ZWQgc2luY2UgdjEuMy4gUGxlYXNlIHVzZSB7QGxpbmsgZ2V0Q29uZmlybWVkU2lnbmF0dXJlc0ZvckFkZHJlc3MyfSBpbnN0ZWFkLlxuICAgKlxuICAgKiBAcGFyYW0gYWRkcmVzcyBxdWVyaWVkIGFkZHJlc3NcbiAgICogQHBhcmFtIHN0YXJ0U2xvdCBzdGFydCBzbG90LCBpbmNsdXNpdmVcbiAgICogQHBhcmFtIGVuZFNsb3QgZW5kIHNsb3QsIGluY2x1c2l2ZVxuICAgKi9cbiAgYXN5bmMgZ2V0Q29uZmlybWVkU2lnbmF0dXJlc0ZvckFkZHJlc3MoXG4gICAgYWRkcmVzczogUHVibGljS2V5LFxuICAgIHN0YXJ0U2xvdDogbnVtYmVyLFxuICAgIGVuZFNsb3Q6IG51bWJlcixcbiAgKTogUHJvbWlzZTxBcnJheTxUcmFuc2FjdGlvblNpZ25hdHVyZT4+IHtcbiAgICBsZXQgb3B0aW9uczogYW55ID0ge307XG5cbiAgICBsZXQgZmlyc3RBdmFpbGFibGVCbG9jayA9IGF3YWl0IHRoaXMuZ2V0Rmlyc3RBdmFpbGFibGVCbG9jaygpO1xuICAgIHdoaWxlICghKCd1bnRpbCcgaW4gb3B0aW9ucykpIHtcbiAgICAgIHN0YXJ0U2xvdC0tO1xuICAgICAgaWYgKHN0YXJ0U2xvdCA8PSAwIHx8IHN0YXJ0U2xvdCA8IGZpcnN0QXZhaWxhYmxlQmxvY2spIHtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGJsb2NrID0gYXdhaXQgdGhpcy5nZXRDb25maXJtZWRCbG9ja1NpZ25hdHVyZXMoXG4gICAgICAgICAgc3RhcnRTbG90LFxuICAgICAgICAgICdmaW5hbGl6ZWQnLFxuICAgICAgICApO1xuICAgICAgICBpZiAoYmxvY2suc2lnbmF0dXJlcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgb3B0aW9ucy51bnRpbCA9XG4gICAgICAgICAgICBibG9jay5zaWduYXR1cmVzW2Jsb2NrLnNpZ25hdHVyZXMubGVuZ3RoIC0gMV0udG9TdHJpbmcoKTtcbiAgICAgICAgfVxuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIGlmIChlcnIgaW5zdGFuY2VvZiBFcnJvciAmJiBlcnIubWVzc2FnZS5pbmNsdWRlcygnc2tpcHBlZCcpKSB7XG4gICAgICAgICAgY29udGludWU7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhyb3cgZXJyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgbGV0IGhpZ2hlc3RDb25maXJtZWRSb290ID0gYXdhaXQgdGhpcy5nZXRTbG90KCdmaW5hbGl6ZWQnKTtcbiAgICB3aGlsZSAoISgnYmVmb3JlJyBpbiBvcHRpb25zKSkge1xuICAgICAgZW5kU2xvdCsrO1xuICAgICAgaWYgKGVuZFNsb3QgPiBoaWdoZXN0Q29uZmlybWVkUm9vdCkge1xuICAgICAgICBicmVhaztcbiAgICAgIH1cblxuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgYmxvY2sgPSBhd2FpdCB0aGlzLmdldENvbmZpcm1lZEJsb2NrU2lnbmF0dXJlcyhlbmRTbG90KTtcbiAgICAgICAgaWYgKGJsb2NrLnNpZ25hdHVyZXMubGVuZ3RoID4gMCkge1xuICAgICAgICAgIG9wdGlvbnMuYmVmb3JlID1cbiAgICAgICAgICAgIGJsb2NrLnNpZ25hdHVyZXNbYmxvY2suc2lnbmF0dXJlcy5sZW5ndGggLSAxXS50b1N0cmluZygpO1xuICAgICAgICB9XG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgaWYgKGVyciBpbnN0YW5jZW9mIEVycm9yICYmIGVyci5tZXNzYWdlLmluY2x1ZGVzKCdza2lwcGVkJykpIHtcbiAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aHJvdyBlcnI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBjb25maXJtZWRTaWduYXR1cmVJbmZvID0gYXdhaXQgdGhpcy5nZXRDb25maXJtZWRTaWduYXR1cmVzRm9yQWRkcmVzczIoXG4gICAgICBhZGRyZXNzLFxuICAgICAgb3B0aW9ucyxcbiAgICApO1xuICAgIHJldHVybiBjb25maXJtZWRTaWduYXR1cmVJbmZvLm1hcChpbmZvID0+IGluZm8uc2lnbmF0dXJlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGNvbmZpcm1lZCBzaWduYXR1cmVzIGZvciB0cmFuc2FjdGlvbnMgaW52b2x2aW5nIGFuXG4gICAqIGFkZHJlc3MgYmFja3dhcmRzIGluIHRpbWUgZnJvbSB0aGUgcHJvdmlkZWQgc2lnbmF0dXJlIG9yIG1vc3QgcmVjZW50IGNvbmZpcm1lZCBibG9ja1xuICAgKlxuICAgKlxuICAgKiBAcGFyYW0gYWRkcmVzcyBxdWVyaWVkIGFkZHJlc3NcbiAgICogQHBhcmFtIG9wdGlvbnNcbiAgICovXG4gIGFzeW5jIGdldENvbmZpcm1lZFNpZ25hdHVyZXNGb3JBZGRyZXNzMihcbiAgICBhZGRyZXNzOiBQdWJsaWNLZXksXG4gICAgb3B0aW9ucz86IENvbmZpcm1lZFNpZ25hdHVyZXNGb3JBZGRyZXNzMk9wdGlvbnMsXG4gICAgY29tbWl0bWVudD86IEZpbmFsaXR5LFxuICApOiBQcm9taXNlPEFycmF5PENvbmZpcm1lZFNpZ25hdHVyZUluZm8+PiB7XG4gICAgY29uc3QgYXJncyA9IHRoaXMuX2J1aWxkQXJnc0F0TGVhc3RDb25maXJtZWQoXG4gICAgICBbYWRkcmVzcy50b0Jhc2U1OCgpXSxcbiAgICAgIGNvbW1pdG1lbnQsXG4gICAgICB1bmRlZmluZWQsXG4gICAgICBvcHRpb25zLFxuICAgICk7XG4gICAgY29uc3QgdW5zYWZlUmVzID0gYXdhaXQgdGhpcy5fcnBjUmVxdWVzdChcbiAgICAgICdnZXRDb25maXJtZWRTaWduYXR1cmVzRm9yQWRkcmVzczInLFxuICAgICAgYXJncyxcbiAgICApO1xuICAgIGNvbnN0IHJlcyA9IGNyZWF0ZSh1bnNhZmVSZXMsIEdldENvbmZpcm1lZFNpZ25hdHVyZXNGb3JBZGRyZXNzMlJwY1Jlc3VsdCk7XG4gICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKFxuICAgICAgICByZXMuZXJyb3IsXG4gICAgICAgICdmYWlsZWQgdG8gZ2V0IGNvbmZpcm1lZCBzaWduYXR1cmVzIGZvciBhZGRyZXNzJyxcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiByZXMucmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgY29uZmlybWVkIHNpZ25hdHVyZXMgZm9yIHRyYW5zYWN0aW9ucyBpbnZvbHZpbmcgYW5cbiAgICogYWRkcmVzcyBiYWNrd2FyZHMgaW4gdGltZSBmcm9tIHRoZSBwcm92aWRlZCBzaWduYXR1cmUgb3IgbW9zdCByZWNlbnQgY29uZmlybWVkIGJsb2NrXG4gICAqXG4gICAqXG4gICAqIEBwYXJhbSBhZGRyZXNzIHF1ZXJpZWQgYWRkcmVzc1xuICAgKiBAcGFyYW0gb3B0aW9uc1xuICAgKi9cbiAgYXN5bmMgZ2V0U2lnbmF0dXJlc0ZvckFkZHJlc3MoXG4gICAgYWRkcmVzczogUHVibGljS2V5LFxuICAgIG9wdGlvbnM/OiBTaWduYXR1cmVzRm9yQWRkcmVzc09wdGlvbnMsXG4gICAgY29tbWl0bWVudD86IEZpbmFsaXR5LFxuICApOiBQcm9taXNlPEFycmF5PENvbmZpcm1lZFNpZ25hdHVyZUluZm8+PiB7XG4gICAgY29uc3QgYXJncyA9IHRoaXMuX2J1aWxkQXJnc0F0TGVhc3RDb25maXJtZWQoXG4gICAgICBbYWRkcmVzcy50b0Jhc2U1OCgpXSxcbiAgICAgIGNvbW1pdG1lbnQsXG4gICAgICB1bmRlZmluZWQsXG4gICAgICBvcHRpb25zLFxuICAgICk7XG4gICAgY29uc3QgdW5zYWZlUmVzID0gYXdhaXQgdGhpcy5fcnBjUmVxdWVzdCgnZ2V0U2lnbmF0dXJlc0ZvckFkZHJlc3MnLCBhcmdzKTtcbiAgICBjb25zdCByZXMgPSBjcmVhdGUodW5zYWZlUmVzLCBHZXRTaWduYXR1cmVzRm9yQWRkcmVzc1JwY1Jlc3VsdCk7XG4gICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICB0aHJvdyBuZXcgU29sYW5hSlNPTlJQQ0Vycm9yKFxuICAgICAgICByZXMuZXJyb3IsXG4gICAgICAgICdmYWlsZWQgdG8gZ2V0IHNpZ25hdHVyZXMgZm9yIGFkZHJlc3MnLFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcy5yZXN1bHQ7XG4gIH1cblxuICBhc3luYyBnZXRBZGRyZXNzTG9va3VwVGFibGUoXG4gICAgYWNjb3VudEtleTogUHVibGljS2V5LFxuICAgIGNvbmZpZz86IEdldEFjY291bnRJbmZvQ29uZmlnLFxuICApOiBQcm9taXNlPFJwY1Jlc3BvbnNlQW5kQ29udGV4dDxBZGRyZXNzTG9va3VwVGFibGVBY2NvdW50IHwgbnVsbD4+IHtcbiAgICBjb25zdCB7Y29udGV4dCwgdmFsdWU6IGFjY291bnRJbmZvfSA9IGF3YWl0IHRoaXMuZ2V0QWNjb3VudEluZm9BbmRDb250ZXh0KFxuICAgICAgYWNjb3VudEtleSxcbiAgICAgIGNvbmZpZyxcbiAgICApO1xuXG4gICAgbGV0IHZhbHVlID0gbnVsbDtcbiAgICBpZiAoYWNjb3VudEluZm8gIT09IG51bGwpIHtcbiAgICAgIHZhbHVlID0gbmV3IEFkZHJlc3NMb29rdXBUYWJsZUFjY291bnQoe1xuICAgICAgICBrZXk6IGFjY291bnRLZXksXG4gICAgICAgIHN0YXRlOiBBZGRyZXNzTG9va3VwVGFibGVBY2NvdW50LmRlc2VyaWFsaXplKGFjY291bnRJbmZvLmRhdGEpLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIGNvbnRleHQsXG4gICAgICB2YWx1ZSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEZldGNoIHRoZSBjb250ZW50cyBvZiBhIE5vbmNlIGFjY291bnQgZnJvbSB0aGUgY2x1c3RlciwgcmV0dXJuIHdpdGggY29udGV4dFxuICAgKi9cbiAgYXN5bmMgZ2V0Tm9uY2VBbmRDb250ZXh0KFxuICAgIG5vbmNlQWNjb3VudDogUHVibGljS2V5LFxuICAgIGNvbW1pdG1lbnRPckNvbmZpZz86IENvbW1pdG1lbnQgfCBHZXROb25jZUFuZENvbnRleHRDb25maWcsXG4gICk6IFByb21pc2U8UnBjUmVzcG9uc2VBbmRDb250ZXh0PE5vbmNlQWNjb3VudCB8IG51bGw+PiB7XG4gICAgY29uc3Qge2NvbnRleHQsIHZhbHVlOiBhY2NvdW50SW5mb30gPSBhd2FpdCB0aGlzLmdldEFjY291bnRJbmZvQW5kQ29udGV4dChcbiAgICAgIG5vbmNlQWNjb3VudCxcbiAgICAgIGNvbW1pdG1lbnRPckNvbmZpZyxcbiAgICApO1xuXG4gICAgbGV0IHZhbHVlID0gbnVsbDtcbiAgICBpZiAoYWNjb3VudEluZm8gIT09IG51bGwpIHtcbiAgICAgIHZhbHVlID0gTm9uY2VBY2NvdW50LmZyb21BY2NvdW50RGF0YShhY2NvdW50SW5mby5kYXRhKTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgY29udGV4dCxcbiAgICAgIHZhbHVlLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2ggdGhlIGNvbnRlbnRzIG9mIGEgTm9uY2UgYWNjb3VudCBmcm9tIHRoZSBjbHVzdGVyXG4gICAqL1xuICBhc3luYyBnZXROb25jZShcbiAgICBub25jZUFjY291bnQ6IFB1YmxpY0tleSxcbiAgICBjb21taXRtZW50T3JDb25maWc/OiBDb21taXRtZW50IHwgR2V0Tm9uY2VDb25maWcsXG4gICk6IFByb21pc2U8Tm9uY2VBY2NvdW50IHwgbnVsbD4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmdldE5vbmNlQW5kQ29udGV4dChub25jZUFjY291bnQsIGNvbW1pdG1lbnRPckNvbmZpZylcbiAgICAgIC50aGVuKHggPT4geC52YWx1ZSlcbiAgICAgIC5jYXRjaChlID0+IHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICdmYWlsZWQgdG8gZ2V0IG5vbmNlIGZvciBhY2NvdW50ICcgK1xuICAgICAgICAgICAgbm9uY2VBY2NvdW50LnRvQmFzZTU4KCkgK1xuICAgICAgICAgICAgJzogJyArXG4gICAgICAgICAgICBlLFxuICAgICAgICApO1xuICAgICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogUmVxdWVzdCBhbiBhbGxvY2F0aW9uIG9mIGxhbXBvcnRzIHRvIHRoZSBzcGVjaWZpZWQgYWRkcmVzc1xuICAgKlxuICAgKiBgYGB0eXBlc2NyaXB0XG4gICAqIGltcG9ydCB7IENvbm5lY3Rpb24sIFB1YmxpY0tleSwgTEFNUE9SVFNfUEVSX1NPTCB9IGZyb20gXCJAc29sYW5hL3dlYjMuanNcIjtcbiAgICpcbiAgICogKGFzeW5jICgpID0+IHtcbiAgICogICBjb25zdCBjb25uZWN0aW9uID0gbmV3IENvbm5lY3Rpb24oXCJodHRwczovL2FwaS50ZXN0bmV0LnNvbGFuYS5jb21cIiwgXCJjb25maXJtZWRcIik7XG4gICAqICAgY29uc3QgbXlBZGRyZXNzID0gbmV3IFB1YmxpY0tleShcIjJucjFiSEZUODZXOXRHbnl2bVlXNHZjSEtzUUIzc1ZRZm5kZGFzejRrRXhNXCIpO1xuICAgKiAgIGNvbnN0IHNpZ25hdHVyZSA9IGF3YWl0IGNvbm5lY3Rpb24ucmVxdWVzdEFpcmRyb3AobXlBZGRyZXNzLCBMQU1QT1JUU19QRVJfU09MKTtcbiAgICogICBhd2FpdCBjb25uZWN0aW9uLmNvbmZpcm1UcmFuc2FjdGlvbihzaWduYXR1cmUpO1xuICAgKiB9KSgpO1xuICAgKiBgYGBcbiAgICovXG4gIGFzeW5jIHJlcXVlc3RBaXJkcm9wKFxuICAgIHRvOiBQdWJsaWNLZXksXG4gICAgbGFtcG9ydHM6IG51bWJlcixcbiAgKTogUHJvbWlzZTxUcmFuc2FjdGlvblNpZ25hdHVyZT4ge1xuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoJ3JlcXVlc3RBaXJkcm9wJywgW1xuICAgICAgdG8udG9CYXNlNTgoKSxcbiAgICAgIGxhbXBvcnRzLFxuICAgIF0pO1xuICAgIGNvbnN0IHJlcyA9IGNyZWF0ZSh1bnNhZmVSZXMsIFJlcXVlc3RBaXJkcm9wUnBjUmVzdWx0KTtcbiAgICBpZiAoJ2Vycm9yJyBpbiByZXMpIHtcbiAgICAgIHRocm93IG5ldyBTb2xhbmFKU09OUlBDRXJyb3IoXG4gICAgICAgIHJlcy5lcnJvcixcbiAgICAgICAgYGFpcmRyb3AgdG8gJHt0by50b0Jhc2U1OCgpfSBmYWlsZWRgLFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcy5yZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBhc3luYyBfYmxvY2toYXNoV2l0aEV4cGlyeUJsb2NrSGVpZ2h0KFxuICAgIGRpc2FibGVDYWNoZTogYm9vbGVhbixcbiAgKTogUHJvbWlzZTxCbG9ja2hhc2hXaXRoRXhwaXJ5QmxvY2tIZWlnaHQ+IHtcbiAgICBpZiAoIWRpc2FibGVDYWNoZSkge1xuICAgICAgLy8gV2FpdCBmb3IgcG9sbGluZyB0byBmaW5pc2hcbiAgICAgIHdoaWxlICh0aGlzLl9wb2xsaW5nQmxvY2toYXNoKSB7XG4gICAgICAgIGF3YWl0IHNsZWVwKDEwMCk7XG4gICAgICB9XG4gICAgICBjb25zdCB0aW1lU2luY2VGZXRjaCA9IERhdGUubm93KCkgLSB0aGlzLl9ibG9ja2hhc2hJbmZvLmxhc3RGZXRjaDtcbiAgICAgIGNvbnN0IGV4cGlyZWQgPSB0aW1lU2luY2VGZXRjaCA+PSBCTE9DS0hBU0hfQ0FDSEVfVElNRU9VVF9NUztcbiAgICAgIGlmICh0aGlzLl9ibG9ja2hhc2hJbmZvLmxhdGVzdEJsb2NraGFzaCAhPT0gbnVsbCAmJiAhZXhwaXJlZCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fYmxvY2toYXNoSW5mby5sYXRlc3RCbG9ja2hhc2g7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuX3BvbGxOZXdCbG9ja2hhc2goKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIGFzeW5jIF9wb2xsTmV3QmxvY2toYXNoKCk6IFByb21pc2U8QmxvY2toYXNoV2l0aEV4cGlyeUJsb2NrSGVpZ2h0PiB7XG4gICAgdGhpcy5fcG9sbGluZ0Jsb2NraGFzaCA9IHRydWU7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHN0YXJ0VGltZSA9IERhdGUubm93KCk7XG4gICAgICBjb25zdCBjYWNoZWRMYXRlc3RCbG9ja2hhc2ggPSB0aGlzLl9ibG9ja2hhc2hJbmZvLmxhdGVzdEJsb2NraGFzaDtcbiAgICAgIGNvbnN0IGNhY2hlZEJsb2NraGFzaCA9IGNhY2hlZExhdGVzdEJsb2NraGFzaFxuICAgICAgICA/IGNhY2hlZExhdGVzdEJsb2NraGFzaC5ibG9ja2hhc2hcbiAgICAgICAgOiBudWxsO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCA1MDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IGxhdGVzdEJsb2NraGFzaCA9IGF3YWl0IHRoaXMuZ2V0TGF0ZXN0QmxvY2toYXNoKCdmaW5hbGl6ZWQnKTtcblxuICAgICAgICBpZiAoY2FjaGVkQmxvY2toYXNoICE9PSBsYXRlc3RCbG9ja2hhc2guYmxvY2toYXNoKSB7XG4gICAgICAgICAgdGhpcy5fYmxvY2toYXNoSW5mbyA9IHtcbiAgICAgICAgICAgIGxhdGVzdEJsb2NraGFzaCxcbiAgICAgICAgICAgIGxhc3RGZXRjaDogRGF0ZS5ub3coKSxcbiAgICAgICAgICAgIHRyYW5zYWN0aW9uU2lnbmF0dXJlczogW10sXG4gICAgICAgICAgICBzaW11bGF0ZWRTaWduYXR1cmVzOiBbXSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIHJldHVybiBsYXRlc3RCbG9ja2hhc2g7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTbGVlcCBmb3IgYXBwcm94aW1hdGVseSBoYWxmIGEgc2xvdFxuICAgICAgICBhd2FpdCBzbGVlcChNU19QRVJfU0xPVCAvIDIpO1xuICAgICAgfVxuXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBVbmFibGUgdG8gb2J0YWluIGEgbmV3IGJsb2NraGFzaCBhZnRlciAke0RhdGUubm93KCkgLSBzdGFydFRpbWV9bXNgLFxuICAgICAgKTtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5fcG9sbGluZ0Jsb2NraGFzaCA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgdGhlIHN0YWtlIG1pbmltdW0gZGVsZWdhdGlvblxuICAgKi9cbiAgYXN5bmMgZ2V0U3Rha2VNaW5pbXVtRGVsZWdhdGlvbihcbiAgICBjb25maWc/OiBHZXRTdGFrZU1pbmltdW1EZWxlZ2F0aW9uQ29uZmlnLFxuICApOiBQcm9taXNlPFJwY1Jlc3BvbnNlQW5kQ29udGV4dDxudW1iZXI+PiB7XG4gICAgY29uc3Qge2NvbW1pdG1lbnQsIGNvbmZpZzogY29uZmlnQXJnfSA9IGV4dHJhY3RDb21taXRtZW50RnJvbUNvbmZpZyhjb25maWcpO1xuICAgIGNvbnN0IGFyZ3MgPSB0aGlzLl9idWlsZEFyZ3MoW10sIGNvbW1pdG1lbnQsICdiYXNlNjQnLCBjb25maWdBcmcpO1xuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoJ2dldFN0YWtlTWluaW11bURlbGVnYXRpb24nLCBhcmdzKTtcbiAgICBjb25zdCByZXMgPSBjcmVhdGUodW5zYWZlUmVzLCBqc29uUnBjUmVzdWx0QW5kQ29udGV4dChudW1iZXIoKSkpO1xuICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgdGhyb3cgbmV3IFNvbGFuYUpTT05SUENFcnJvcihcbiAgICAgICAgcmVzLmVycm9yLFxuICAgICAgICBgZmFpbGVkIHRvIGdldCBzdGFrZSBtaW5pbXVtIGRlbGVnYXRpb25gLFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcy5yZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogU2ltdWxhdGUgYSB0cmFuc2FjdGlvblxuICAgKlxuICAgKiBAZGVwcmVjYXRlZCBJbnN0ZWFkLCBjYWxsIHtAbGluayBzaW11bGF0ZVRyYW5zYWN0aW9ufSB3aXRoIHtAbGlua1xuICAgKiBWZXJzaW9uZWRUcmFuc2FjdGlvbn0gYW5kIHtAbGluayBTaW11bGF0ZVRyYW5zYWN0aW9uQ29uZmlnfSBwYXJhbWV0ZXJzXG4gICAqL1xuICBzaW11bGF0ZVRyYW5zYWN0aW9uKFxuICAgIHRyYW5zYWN0aW9uT3JNZXNzYWdlOiBUcmFuc2FjdGlvbiB8IE1lc3NhZ2UsXG4gICAgc2lnbmVycz86IEFycmF5PFNpZ25lcj4sXG4gICAgaW5jbHVkZUFjY291bnRzPzogYm9vbGVhbiB8IEFycmF5PFB1YmxpY0tleT4sXG4gICk6IFByb21pc2U8UnBjUmVzcG9uc2VBbmRDb250ZXh0PFNpbXVsYXRlZFRyYW5zYWN0aW9uUmVzcG9uc2U+PjtcblxuICAvKipcbiAgICogU2ltdWxhdGUgYSB0cmFuc2FjdGlvblxuICAgKi9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGUtY2xhc3MtbWVtYmVyc1xuICBzaW11bGF0ZVRyYW5zYWN0aW9uKFxuICAgIHRyYW5zYWN0aW9uOiBWZXJzaW9uZWRUcmFuc2FjdGlvbixcbiAgICBjb25maWc/OiBTaW11bGF0ZVRyYW5zYWN0aW9uQ29uZmlnLFxuICApOiBQcm9taXNlPFJwY1Jlc3BvbnNlQW5kQ29udGV4dDxTaW11bGF0ZWRUcmFuc2FjdGlvblJlc3BvbnNlPj47XG5cbiAgLyoqXG4gICAqIFNpbXVsYXRlIGEgdHJhbnNhY3Rpb25cbiAgICovXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBlLWNsYXNzLW1lbWJlcnNcbiAgYXN5bmMgc2ltdWxhdGVUcmFuc2FjdGlvbihcbiAgICB0cmFuc2FjdGlvbk9yTWVzc2FnZTogVmVyc2lvbmVkVHJhbnNhY3Rpb24gfCBUcmFuc2FjdGlvbiB8IE1lc3NhZ2UsXG4gICAgY29uZmlnT3JTaWduZXJzPzogU2ltdWxhdGVUcmFuc2FjdGlvbkNvbmZpZyB8IEFycmF5PFNpZ25lcj4sXG4gICAgaW5jbHVkZUFjY291bnRzPzogYm9vbGVhbiB8IEFycmF5PFB1YmxpY0tleT4sXG4gICk6IFByb21pc2U8UnBjUmVzcG9uc2VBbmRDb250ZXh0PFNpbXVsYXRlZFRyYW5zYWN0aW9uUmVzcG9uc2U+PiB7XG4gICAgaWYgKCdtZXNzYWdlJyBpbiB0cmFuc2FjdGlvbk9yTWVzc2FnZSkge1xuICAgICAgY29uc3QgdmVyc2lvbmVkVHggPSB0cmFuc2FjdGlvbk9yTWVzc2FnZTtcbiAgICAgIGNvbnN0IHdpcmVUcmFuc2FjdGlvbiA9IHZlcnNpb25lZFR4LnNlcmlhbGl6ZSgpO1xuICAgICAgY29uc3QgZW5jb2RlZFRyYW5zYWN0aW9uID1cbiAgICAgICAgQnVmZmVyLmZyb20od2lyZVRyYW5zYWN0aW9uKS50b1N0cmluZygnYmFzZTY0Jyk7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShjb25maWdPclNpZ25lcnMpIHx8IGluY2x1ZGVBY2NvdW50cyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBhcmd1bWVudHMnKTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgY29uZmlnOiBhbnkgPSBjb25maWdPclNpZ25lcnMgfHwge307XG4gICAgICBjb25maWcuZW5jb2RpbmcgPSAnYmFzZTY0JztcbiAgICAgIGlmICghKCdjb21taXRtZW50JyBpbiBjb25maWcpKSB7XG4gICAgICAgIGNvbmZpZy5jb21taXRtZW50ID0gdGhpcy5jb21taXRtZW50O1xuICAgICAgfVxuXG4gICAgICBjb25zdCBhcmdzID0gW2VuY29kZWRUcmFuc2FjdGlvbiwgY29uZmlnXTtcbiAgICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoJ3NpbXVsYXRlVHJhbnNhY3Rpb24nLCBhcmdzKTtcbiAgICAgIGNvbnN0IHJlcyA9IGNyZWF0ZSh1bnNhZmVSZXMsIFNpbXVsYXRlZFRyYW5zYWN0aW9uUmVzcG9uc2VTdHJ1Y3QpO1xuICAgICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignZmFpbGVkIHRvIHNpbXVsYXRlIHRyYW5zYWN0aW9uOiAnICsgcmVzLmVycm9yLm1lc3NhZ2UpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHJlcy5yZXN1bHQ7XG4gICAgfVxuXG4gICAgbGV0IHRyYW5zYWN0aW9uO1xuICAgIGlmICh0cmFuc2FjdGlvbk9yTWVzc2FnZSBpbnN0YW5jZW9mIFRyYW5zYWN0aW9uKSB7XG4gICAgICBsZXQgb3JpZ2luYWxUeDogVHJhbnNhY3Rpb24gPSB0cmFuc2FjdGlvbk9yTWVzc2FnZTtcbiAgICAgIHRyYW5zYWN0aW9uID0gbmV3IFRyYW5zYWN0aW9uKCk7XG4gICAgICB0cmFuc2FjdGlvbi5mZWVQYXllciA9IG9yaWdpbmFsVHguZmVlUGF5ZXI7XG4gICAgICB0cmFuc2FjdGlvbi5pbnN0cnVjdGlvbnMgPSB0cmFuc2FjdGlvbk9yTWVzc2FnZS5pbnN0cnVjdGlvbnM7XG4gICAgICB0cmFuc2FjdGlvbi5ub25jZUluZm8gPSBvcmlnaW5hbFR4Lm5vbmNlSW5mbztcbiAgICAgIHRyYW5zYWN0aW9uLnNpZ25hdHVyZXMgPSBvcmlnaW5hbFR4LnNpZ25hdHVyZXM7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRyYW5zYWN0aW9uID0gVHJhbnNhY3Rpb24ucG9wdWxhdGUodHJhbnNhY3Rpb25Pck1lc3NhZ2UpO1xuICAgICAgLy8gSEFDSzogdGhpcyBmdW5jdGlvbiByZWxpZXMgb24gbXV0YXRpbmcgdGhlIHBvcHVsYXRlZCB0cmFuc2FjdGlvblxuICAgICAgdHJhbnNhY3Rpb24uX21lc3NhZ2UgPSB0cmFuc2FjdGlvbi5fanNvbiA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBpZiAoY29uZmlnT3JTaWduZXJzICE9PSB1bmRlZmluZWQgJiYgIUFycmF5LmlzQXJyYXkoY29uZmlnT3JTaWduZXJzKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGFyZ3VtZW50cycpO1xuICAgIH1cblxuICAgIGNvbnN0IHNpZ25lcnMgPSBjb25maWdPclNpZ25lcnM7XG4gICAgaWYgKHRyYW5zYWN0aW9uLm5vbmNlSW5mbyAmJiBzaWduZXJzKSB7XG4gICAgICB0cmFuc2FjdGlvbi5zaWduKC4uLnNpZ25lcnMpO1xuICAgIH0gZWxzZSB7XG4gICAgICBsZXQgZGlzYWJsZUNhY2hlID0gdGhpcy5fZGlzYWJsZUJsb2NraGFzaENhY2hpbmc7XG4gICAgICBmb3IgKDs7KSB7XG4gICAgICAgIGNvbnN0IGxhdGVzdEJsb2NraGFzaCA9IGF3YWl0IHRoaXMuX2Jsb2NraGFzaFdpdGhFeHBpcnlCbG9ja0hlaWdodChcbiAgICAgICAgICBkaXNhYmxlQ2FjaGUsXG4gICAgICAgICk7XG4gICAgICAgIHRyYW5zYWN0aW9uLmxhc3RWYWxpZEJsb2NrSGVpZ2h0ID0gbGF0ZXN0QmxvY2toYXNoLmxhc3RWYWxpZEJsb2NrSGVpZ2h0O1xuICAgICAgICB0cmFuc2FjdGlvbi5yZWNlbnRCbG9ja2hhc2ggPSBsYXRlc3RCbG9ja2hhc2guYmxvY2toYXNoO1xuXG4gICAgICAgIGlmICghc2lnbmVycykgYnJlYWs7XG5cbiAgICAgICAgdHJhbnNhY3Rpb24uc2lnbiguLi5zaWduZXJzKTtcbiAgICAgICAgaWYgKCF0cmFuc2FjdGlvbi5zaWduYXR1cmUpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJyFzaWduYXR1cmUnKTsgLy8gc2hvdWxkIG5ldmVyIGhhcHBlblxuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgc2lnbmF0dXJlID0gdHJhbnNhY3Rpb24uc2lnbmF0dXJlLnRvU3RyaW5nKCdiYXNlNjQnKTtcbiAgICAgICAgaWYgKFxuICAgICAgICAgICF0aGlzLl9ibG9ja2hhc2hJbmZvLnNpbXVsYXRlZFNpZ25hdHVyZXMuaW5jbHVkZXMoc2lnbmF0dXJlKSAmJlxuICAgICAgICAgICF0aGlzLl9ibG9ja2hhc2hJbmZvLnRyYW5zYWN0aW9uU2lnbmF0dXJlcy5pbmNsdWRlcyhzaWduYXR1cmUpXG4gICAgICAgICkge1xuICAgICAgICAgIC8vIFRoZSBzaWduYXR1cmUgb2YgdGhpcyB0cmFuc2FjdGlvbiBoYXMgbm90IGJlZW4gc2VlbiBiZWZvcmUgd2l0aCB0aGVcbiAgICAgICAgICAvLyBjdXJyZW50IHJlY2VudEJsb2NraGFzaCwgYWxsIGRvbmUuIExldCdzIGJyZWFrXG4gICAgICAgICAgdGhpcy5fYmxvY2toYXNoSW5mby5zaW11bGF0ZWRTaWduYXR1cmVzLnB1c2goc2lnbmF0dXJlKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAvLyBUaGlzIHRyYW5zYWN0aW9uIHdvdWxkIGJlIHRyZWF0ZWQgYXMgZHVwbGljYXRlIChpdHMgZGVyaXZlZCBzaWduYXR1cmVcbiAgICAgICAgICAvLyBtYXRjaGVkIHRvIG9uZSBvZiBhbHJlYWR5IHJlY29yZGVkIHNpZ25hdHVyZXMpLlxuICAgICAgICAgIC8vIFNvLCB3ZSBtdXN0IGZldGNoIGEgbmV3IGJsb2NraGFzaCBmb3IgYSBkaWZmZXJlbnQgc2lnbmF0dXJlIGJ5IGRpc2FibGluZ1xuICAgICAgICAgIC8vIG91ciBjYWNoZSBub3QgdG8gd2FpdCBmb3IgdGhlIGNhY2hlIGV4cGlyYXRpb24gKEJMT0NLSEFTSF9DQUNIRV9USU1FT1VUX01TKS5cbiAgICAgICAgICBkaXNhYmxlQ2FjaGUgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgbWVzc2FnZSA9IHRyYW5zYWN0aW9uLl9jb21waWxlKCk7XG4gICAgY29uc3Qgc2lnbkRhdGEgPSBtZXNzYWdlLnNlcmlhbGl6ZSgpO1xuICAgIGNvbnN0IHdpcmVUcmFuc2FjdGlvbiA9IHRyYW5zYWN0aW9uLl9zZXJpYWxpemUoc2lnbkRhdGEpO1xuICAgIGNvbnN0IGVuY29kZWRUcmFuc2FjdGlvbiA9IHdpcmVUcmFuc2FjdGlvbi50b1N0cmluZygnYmFzZTY0Jyk7XG4gICAgY29uc3QgY29uZmlnOiBhbnkgPSB7XG4gICAgICBlbmNvZGluZzogJ2Jhc2U2NCcsXG4gICAgICBjb21taXRtZW50OiB0aGlzLmNvbW1pdG1lbnQsXG4gICAgfTtcblxuICAgIGlmIChpbmNsdWRlQWNjb3VudHMpIHtcbiAgICAgIGNvbnN0IGFkZHJlc3NlcyA9IChcbiAgICAgICAgQXJyYXkuaXNBcnJheShpbmNsdWRlQWNjb3VudHMpXG4gICAgICAgICAgPyBpbmNsdWRlQWNjb3VudHNcbiAgICAgICAgICA6IG1lc3NhZ2Uubm9uUHJvZ3JhbUlkcygpXG4gICAgICApLm1hcChrZXkgPT4ga2V5LnRvQmFzZTU4KCkpO1xuXG4gICAgICBjb25maWdbJ2FjY291bnRzJ10gPSB7XG4gICAgICAgIGVuY29kaW5nOiAnYmFzZTY0JyxcbiAgICAgICAgYWRkcmVzc2VzLFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBpZiAoc2lnbmVycykge1xuICAgICAgY29uZmlnLnNpZ1ZlcmlmeSA9IHRydWU7XG4gICAgfVxuXG4gICAgY29uc3QgYXJncyA9IFtlbmNvZGVkVHJhbnNhY3Rpb24sIGNvbmZpZ107XG4gICAgY29uc3QgdW5zYWZlUmVzID0gYXdhaXQgdGhpcy5fcnBjUmVxdWVzdCgnc2ltdWxhdGVUcmFuc2FjdGlvbicsIGFyZ3MpO1xuICAgIGNvbnN0IHJlcyA9IGNyZWF0ZSh1bnNhZmVSZXMsIFNpbXVsYXRlZFRyYW5zYWN0aW9uUmVzcG9uc2VTdHJ1Y3QpO1xuICAgIGlmICgnZXJyb3InIGluIHJlcykge1xuICAgICAgbGV0IGxvZ3M7XG4gICAgICBpZiAoJ2RhdGEnIGluIHJlcy5lcnJvcikge1xuICAgICAgICBsb2dzID0gcmVzLmVycm9yLmRhdGEubG9ncztcbiAgICAgICAgaWYgKGxvZ3MgJiYgQXJyYXkuaXNBcnJheShsb2dzKSkge1xuICAgICAgICAgIGNvbnN0IHRyYWNlSW5kZW50ID0gJ1xcbiAgICAnO1xuICAgICAgICAgIGNvbnN0IGxvZ1RyYWNlID0gdHJhY2VJbmRlbnQgKyBsb2dzLmpvaW4odHJhY2VJbmRlbnQpO1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IocmVzLmVycm9yLm1lc3NhZ2UsIGxvZ1RyYWNlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGhyb3cgbmV3IFNlbmRUcmFuc2FjdGlvbkVycm9yKFxuICAgICAgICAnZmFpbGVkIHRvIHNpbXVsYXRlIHRyYW5zYWN0aW9uOiAnICsgcmVzLmVycm9yLm1lc3NhZ2UsXG4gICAgICAgIGxvZ3MsXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gcmVzLnJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTaWduIGFuZCBzZW5kIGEgdHJhbnNhY3Rpb25cbiAgICpcbiAgICogQGRlcHJlY2F0ZWQgSW5zdGVhZCwgY2FsbCB7QGxpbmsgc2VuZFRyYW5zYWN0aW9ufSB3aXRoIGEge0BsaW5rXG4gICAqIFZlcnNpb25lZFRyYW5zYWN0aW9ufVxuICAgKi9cbiAgc2VuZFRyYW5zYWN0aW9uKFxuICAgIHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbixcbiAgICBzaWduZXJzOiBBcnJheTxTaWduZXI+LFxuICAgIG9wdGlvbnM/OiBTZW5kT3B0aW9ucyxcbiAgKTogUHJvbWlzZTxUcmFuc2FjdGlvblNpZ25hdHVyZT47XG5cbiAgLyoqXG4gICAqIFNlbmQgYSBzaWduZWQgdHJhbnNhY3Rpb25cbiAgICovXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBlLWNsYXNzLW1lbWJlcnNcbiAgc2VuZFRyYW5zYWN0aW9uKFxuICAgIHRyYW5zYWN0aW9uOiBWZXJzaW9uZWRUcmFuc2FjdGlvbixcbiAgICBvcHRpb25zPzogU2VuZE9wdGlvbnMsXG4gICk6IFByb21pc2U8VHJhbnNhY3Rpb25TaWduYXR1cmU+O1xuXG4gIC8qKlxuICAgKiBTaWduIGFuZCBzZW5kIGEgdHJhbnNhY3Rpb25cbiAgICovXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBlLWNsYXNzLW1lbWJlcnNcbiAgYXN5bmMgc2VuZFRyYW5zYWN0aW9uKFxuICAgIHRyYW5zYWN0aW9uOiBWZXJzaW9uZWRUcmFuc2FjdGlvbiB8IFRyYW5zYWN0aW9uLFxuICAgIHNpZ25lcnNPck9wdGlvbnM/OiBBcnJheTxTaWduZXI+IHwgU2VuZE9wdGlvbnMsXG4gICAgb3B0aW9ucz86IFNlbmRPcHRpb25zLFxuICApOiBQcm9taXNlPFRyYW5zYWN0aW9uU2lnbmF0dXJlPiB7XG4gICAgaWYgKCd2ZXJzaW9uJyBpbiB0cmFuc2FjdGlvbikge1xuICAgICAgaWYgKHNpZ25lcnNPck9wdGlvbnMgJiYgQXJyYXkuaXNBcnJheShzaWduZXJzT3JPcHRpb25zKSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgYXJndW1lbnRzJyk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHdpcmVUcmFuc2FjdGlvbiA9IHRyYW5zYWN0aW9uLnNlcmlhbGl6ZSgpO1xuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuc2VuZFJhd1RyYW5zYWN0aW9uKHdpcmVUcmFuc2FjdGlvbiwgc2lnbmVyc09yT3B0aW9ucyk7XG4gICAgfVxuXG4gICAgaWYgKHNpZ25lcnNPck9wdGlvbnMgPT09IHVuZGVmaW5lZCB8fCAhQXJyYXkuaXNBcnJheShzaWduZXJzT3JPcHRpb25zKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGFyZ3VtZW50cycpO1xuICAgIH1cblxuICAgIGNvbnN0IHNpZ25lcnMgPSBzaWduZXJzT3JPcHRpb25zO1xuICAgIGlmICh0cmFuc2FjdGlvbi5ub25jZUluZm8pIHtcbiAgICAgIHRyYW5zYWN0aW9uLnNpZ24oLi4uc2lnbmVycyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxldCBkaXNhYmxlQ2FjaGUgPSB0aGlzLl9kaXNhYmxlQmxvY2toYXNoQ2FjaGluZztcbiAgICAgIGZvciAoOzspIHtcbiAgICAgICAgY29uc3QgbGF0ZXN0QmxvY2toYXNoID0gYXdhaXQgdGhpcy5fYmxvY2toYXNoV2l0aEV4cGlyeUJsb2NrSGVpZ2h0KFxuICAgICAgICAgIGRpc2FibGVDYWNoZSxcbiAgICAgICAgKTtcbiAgICAgICAgdHJhbnNhY3Rpb24ubGFzdFZhbGlkQmxvY2tIZWlnaHQgPSBsYXRlc3RCbG9ja2hhc2gubGFzdFZhbGlkQmxvY2tIZWlnaHQ7XG4gICAgICAgIHRyYW5zYWN0aW9uLnJlY2VudEJsb2NraGFzaCA9IGxhdGVzdEJsb2NraGFzaC5ibG9ja2hhc2g7XG4gICAgICAgIHRyYW5zYWN0aW9uLnNpZ24oLi4uc2lnbmVycyk7XG4gICAgICAgIGlmICghdHJhbnNhY3Rpb24uc2lnbmF0dXJlKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCchc2lnbmF0dXJlJyk7IC8vIHNob3VsZCBuZXZlciBoYXBwZW5cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHNpZ25hdHVyZSA9IHRyYW5zYWN0aW9uLnNpZ25hdHVyZS50b1N0cmluZygnYmFzZTY0Jyk7XG4gICAgICAgIGlmICghdGhpcy5fYmxvY2toYXNoSW5mby50cmFuc2FjdGlvblNpZ25hdHVyZXMuaW5jbHVkZXMoc2lnbmF0dXJlKSkge1xuICAgICAgICAgIC8vIFRoZSBzaWduYXR1cmUgb2YgdGhpcyB0cmFuc2FjdGlvbiBoYXMgbm90IGJlZW4gc2VlbiBiZWZvcmUgd2l0aCB0aGVcbiAgICAgICAgICAvLyBjdXJyZW50IHJlY2VudEJsb2NraGFzaCwgYWxsIGRvbmUuIExldCdzIGJyZWFrXG4gICAgICAgICAgdGhpcy5fYmxvY2toYXNoSW5mby50cmFuc2FjdGlvblNpZ25hdHVyZXMucHVzaChzaWduYXR1cmUpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIFRoaXMgdHJhbnNhY3Rpb24gd291bGQgYmUgdHJlYXRlZCBhcyBkdXBsaWNhdGUgKGl0cyBkZXJpdmVkIHNpZ25hdHVyZVxuICAgICAgICAgIC8vIG1hdGNoZWQgdG8gb25lIG9mIGFscmVhZHkgcmVjb3JkZWQgc2lnbmF0dXJlcykuXG4gICAgICAgICAgLy8gU28sIHdlIG11c3QgZmV0Y2ggYSBuZXcgYmxvY2toYXNoIGZvciBhIGRpZmZlcmVudCBzaWduYXR1cmUgYnkgZGlzYWJsaW5nXG4gICAgICAgICAgLy8gb3VyIGNhY2hlIG5vdCB0byB3YWl0IGZvciB0aGUgY2FjaGUgZXhwaXJhdGlvbiAoQkxPQ0tIQVNIX0NBQ0hFX1RJTUVPVVRfTVMpLlxuICAgICAgICAgIGRpc2FibGVDYWNoZSA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCB3aXJlVHJhbnNhY3Rpb24gPSB0cmFuc2FjdGlvbi5zZXJpYWxpemUoKTtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5zZW5kUmF3VHJhbnNhY3Rpb24od2lyZVRyYW5zYWN0aW9uLCBvcHRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZW5kIGEgdHJhbnNhY3Rpb24gdGhhdCBoYXMgYWxyZWFkeSBiZWVuIHNpZ25lZCBhbmQgc2VyaWFsaXplZCBpbnRvIHRoZVxuICAgKiB3aXJlIGZvcm1hdFxuICAgKi9cbiAgYXN5bmMgc2VuZFJhd1RyYW5zYWN0aW9uKFxuICAgIHJhd1RyYW5zYWN0aW9uOiBCdWZmZXIgfCBVaW50OEFycmF5IHwgQXJyYXk8bnVtYmVyPixcbiAgICBvcHRpb25zPzogU2VuZE9wdGlvbnMsXG4gICk6IFByb21pc2U8VHJhbnNhY3Rpb25TaWduYXR1cmU+IHtcbiAgICBjb25zdCBlbmNvZGVkVHJhbnNhY3Rpb24gPSB0b0J1ZmZlcihyYXdUcmFuc2FjdGlvbikudG9TdHJpbmcoJ2Jhc2U2NCcpO1xuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuc2VuZEVuY29kZWRUcmFuc2FjdGlvbihcbiAgICAgIGVuY29kZWRUcmFuc2FjdGlvbixcbiAgICAgIG9wdGlvbnMsXG4gICAgKTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIFNlbmQgYSB0cmFuc2FjdGlvbiB0aGF0IGhhcyBhbHJlYWR5IGJlZW4gc2lnbmVkLCBzZXJpYWxpemVkIGludG8gdGhlXG4gICAqIHdpcmUgZm9ybWF0LCBhbmQgZW5jb2RlZCBhcyBhIGJhc2U2NCBzdHJpbmdcbiAgICovXG4gIGFzeW5jIHNlbmRFbmNvZGVkVHJhbnNhY3Rpb24oXG4gICAgZW5jb2RlZFRyYW5zYWN0aW9uOiBzdHJpbmcsXG4gICAgb3B0aW9ucz86IFNlbmRPcHRpb25zLFxuICApOiBQcm9taXNlPFRyYW5zYWN0aW9uU2lnbmF0dXJlPiB7XG4gICAgY29uc3QgY29uZmlnOiBhbnkgPSB7ZW5jb2Rpbmc6ICdiYXNlNjQnfTtcbiAgICBjb25zdCBza2lwUHJlZmxpZ2h0ID0gb3B0aW9ucyAmJiBvcHRpb25zLnNraXBQcmVmbGlnaHQ7XG4gICAgY29uc3QgcHJlZmxpZ2h0Q29tbWl0bWVudCA9XG4gICAgICAob3B0aW9ucyAmJiBvcHRpb25zLnByZWZsaWdodENvbW1pdG1lbnQpIHx8IHRoaXMuY29tbWl0bWVudDtcblxuICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMubWF4UmV0cmllcyAhPSBudWxsKSB7XG4gICAgICBjb25maWcubWF4UmV0cmllcyA9IG9wdGlvbnMubWF4UmV0cmllcztcbiAgICB9XG4gICAgaWYgKG9wdGlvbnMgJiYgb3B0aW9ucy5taW5Db250ZXh0U2xvdCAhPSBudWxsKSB7XG4gICAgICBjb25maWcubWluQ29udGV4dFNsb3QgPSBvcHRpb25zLm1pbkNvbnRleHRTbG90O1xuICAgIH1cbiAgICBpZiAoc2tpcFByZWZsaWdodCkge1xuICAgICAgY29uZmlnLnNraXBQcmVmbGlnaHQgPSBza2lwUHJlZmxpZ2h0O1xuICAgIH1cbiAgICBpZiAocHJlZmxpZ2h0Q29tbWl0bWVudCkge1xuICAgICAgY29uZmlnLnByZWZsaWdodENvbW1pdG1lbnQgPSBwcmVmbGlnaHRDb21taXRtZW50O1xuICAgIH1cblxuICAgIGNvbnN0IGFyZ3MgPSBbZW5jb2RlZFRyYW5zYWN0aW9uLCBjb25maWddO1xuICAgIGNvbnN0IHVuc2FmZVJlcyA9IGF3YWl0IHRoaXMuX3JwY1JlcXVlc3QoJ3NlbmRUcmFuc2FjdGlvbicsIGFyZ3MpO1xuICAgIGNvbnN0IHJlcyA9IGNyZWF0ZSh1bnNhZmVSZXMsIFNlbmRUcmFuc2FjdGlvblJwY1Jlc3VsdCk7XG4gICAgaWYgKCdlcnJvcicgaW4gcmVzKSB7XG4gICAgICBsZXQgbG9ncztcbiAgICAgIGlmICgnZGF0YScgaW4gcmVzLmVycm9yKSB7XG4gICAgICAgIGxvZ3MgPSByZXMuZXJyb3IuZGF0YS5sb2dzO1xuICAgICAgfVxuICAgICAgdGhyb3cgbmV3IFNlbmRUcmFuc2FjdGlvbkVycm9yKFxuICAgICAgICAnZmFpbGVkIHRvIHNlbmQgdHJhbnNhY3Rpb246ICcgKyByZXMuZXJyb3IubWVzc2FnZSxcbiAgICAgICAgbG9ncyxcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiByZXMucmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgX3dzT25PcGVuKCkge1xuICAgIHRoaXMuX3JwY1dlYlNvY2tldENvbm5lY3RlZCA9IHRydWU7XG4gICAgdGhpcy5fcnBjV2ViU29ja2V0SGVhcnRiZWF0ID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgLy8gUGluZyBzZXJ2ZXIgZXZlcnkgNXMgdG8gcHJldmVudCBpZGxlIHRpbWVvdXRzXG4gICAgICAoYXN5bmMgKCkgPT4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGF3YWl0IHRoaXMuX3JwY1dlYlNvY2tldC5ub3RpZnkoJ3BpbmcnKTtcbiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZW1wdHlcbiAgICAgICAgfSBjYXRjaCB7fVxuICAgICAgfSkoKTtcbiAgICB9LCA1MDAwKTtcbiAgICB0aGlzLl91cGRhdGVTdWJzY3JpcHRpb25zKCk7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBfd3NPbkVycm9yKGVycjogRXJyb3IpIHtcbiAgICB0aGlzLl9ycGNXZWJTb2NrZXRDb25uZWN0ZWQgPSBmYWxzZTtcbiAgICBjb25zb2xlLmVycm9yKCd3cyBlcnJvcjonLCBlcnIubWVzc2FnZSk7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBfd3NPbkNsb3NlKGNvZGU6IG51bWJlcikge1xuICAgIHRoaXMuX3JwY1dlYlNvY2tldENvbm5lY3RlZCA9IGZhbHNlO1xuICAgIHRoaXMuX3JwY1dlYlNvY2tldEdlbmVyYXRpb24gPVxuICAgICAgKHRoaXMuX3JwY1dlYlNvY2tldEdlbmVyYXRpb24gKyAxKSAlIE51bWJlci5NQVhfU0FGRV9JTlRFR0VSO1xuICAgIGlmICh0aGlzLl9ycGNXZWJTb2NrZXRJZGxlVGltZW91dCkge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX3JwY1dlYlNvY2tldElkbGVUaW1lb3V0KTtcbiAgICAgIHRoaXMuX3JwY1dlYlNvY2tldElkbGVUaW1lb3V0ID0gbnVsbDtcbiAgICB9XG4gICAgaWYgKHRoaXMuX3JwY1dlYlNvY2tldEhlYXJ0YmVhdCkge1xuICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLl9ycGNXZWJTb2NrZXRIZWFydGJlYXQpO1xuICAgICAgdGhpcy5fcnBjV2ViU29ja2V0SGVhcnRiZWF0ID0gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAoY29kZSA9PT0gMTAwMCkge1xuICAgICAgLy8gZXhwbGljaXQgY2xvc2UsIGNoZWNrIGlmIGFueSBzdWJzY3JpcHRpb25zIGhhdmUgYmVlbiBtYWRlIHNpbmNlIGNsb3NlXG4gICAgICB0aGlzLl91cGRhdGVTdWJzY3JpcHRpb25zKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gaW1wbGljaXQgY2xvc2UsIHByZXBhcmUgc3Vic2NyaXB0aW9ucyBmb3IgYXV0by1yZWNvbm5lY3RcbiAgICB0aGlzLl9zdWJzY3JpcHRpb25DYWxsYmFja3NCeVNlcnZlclN1YnNjcmlwdGlvbklkID0ge307XG4gICAgT2JqZWN0LmVudHJpZXMoXG4gICAgICB0aGlzLl9zdWJzY3JpcHRpb25zQnlIYXNoIGFzIFJlY29yZDxTdWJzY3JpcHRpb25Db25maWdIYXNoLCBTdWJzY3JpcHRpb24+LFxuICAgICkuZm9yRWFjaCgoW2hhc2gsIHN1YnNjcmlwdGlvbl0pID0+IHtcbiAgICAgIHRoaXMuX3NldFN1YnNjcmlwdGlvbihoYXNoLCB7XG4gICAgICAgIC4uLnN1YnNjcmlwdGlvbixcbiAgICAgICAgc3RhdGU6ICdwZW5kaW5nJyxcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHJpdmF0ZSBfc2V0U3Vic2NyaXB0aW9uKFxuICAgIGhhc2g6IFN1YnNjcmlwdGlvbkNvbmZpZ0hhc2gsXG4gICAgbmV4dFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uLFxuICApIHtcbiAgICBjb25zdCBwcmV2U3RhdGUgPSB0aGlzLl9zdWJzY3JpcHRpb25zQnlIYXNoW2hhc2hdPy5zdGF0ZTtcbiAgICB0aGlzLl9zdWJzY3JpcHRpb25zQnlIYXNoW2hhc2hdID0gbmV4dFN1YnNjcmlwdGlvbjtcbiAgICBpZiAocHJldlN0YXRlICE9PSBuZXh0U3Vic2NyaXB0aW9uLnN0YXRlKSB7XG4gICAgICBjb25zdCBzdGF0ZUNoYW5nZUNhbGxiYWNrcyA9XG4gICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvblN0YXRlQ2hhbmdlQ2FsbGJhY2tzQnlIYXNoW2hhc2hdO1xuICAgICAgaWYgKHN0YXRlQ2hhbmdlQ2FsbGJhY2tzKSB7XG4gICAgICAgIHN0YXRlQ2hhbmdlQ2FsbGJhY2tzLmZvckVhY2goY2IgPT4ge1xuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjYihuZXh0U3Vic2NyaXB0aW9uLnN0YXRlKTtcbiAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1lbXB0eVxuICAgICAgICAgIH0gY2F0Y2gge31cbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHJpdmF0ZSBfb25TdWJzY3JpcHRpb25TdGF0ZUNoYW5nZShcbiAgICBjbGllbnRTdWJzY3JpcHRpb25JZDogQ2xpZW50U3Vic2NyaXB0aW9uSWQsXG4gICAgY2FsbGJhY2s6IFN1YnNjcmlwdGlvblN0YXRlQ2hhbmdlQ2FsbGJhY2ssXG4gICk6IFN1YnNjcmlwdGlvblN0YXRlQ2hhbmdlRGlzcG9zZUZuIHtcbiAgICBjb25zdCBoYXNoID1cbiAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbkhhc2hCeUNsaWVudFN1YnNjcmlwdGlvbklkW2NsaWVudFN1YnNjcmlwdGlvbklkXTtcbiAgICBpZiAoaGFzaCA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gKCkgPT4ge307XG4gICAgfVxuICAgIGNvbnN0IHN0YXRlQ2hhbmdlQ2FsbGJhY2tzID0gKHRoaXMuX3N1YnNjcmlwdGlvblN0YXRlQ2hhbmdlQ2FsbGJhY2tzQnlIYXNoW1xuICAgICAgaGFzaFxuICAgIF0gfHw9IG5ldyBTZXQoKSk7XG4gICAgc3RhdGVDaGFuZ2VDYWxsYmFja3MuYWRkKGNhbGxiYWNrKTtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgc3RhdGVDaGFuZ2VDYWxsYmFja3MuZGVsZXRlKGNhbGxiYWNrKTtcbiAgICAgIGlmIChzdGF0ZUNoYW5nZUNhbGxiYWNrcy5zaXplID09PSAwKSB7XG4gICAgICAgIGRlbGV0ZSB0aGlzLl9zdWJzY3JpcHRpb25TdGF0ZUNoYW5nZUNhbGxiYWNrc0J5SGFzaFtoYXNoXTtcbiAgICAgIH1cbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgYXN5bmMgX3VwZGF0ZVN1YnNjcmlwdGlvbnMoKSB7XG4gICAgaWYgKE9iamVjdC5rZXlzKHRoaXMuX3N1YnNjcmlwdGlvbnNCeUhhc2gpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgaWYgKHRoaXMuX3JwY1dlYlNvY2tldENvbm5lY3RlZCkge1xuICAgICAgICB0aGlzLl9ycGNXZWJTb2NrZXRDb25uZWN0ZWQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5fcnBjV2ViU29ja2V0SWRsZVRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICB0aGlzLl9ycGNXZWJTb2NrZXRJZGxlVGltZW91dCA9IG51bGw7XG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHRoaXMuX3JwY1dlYlNvY2tldC5jbG9zZSgpO1xuICAgICAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgLy8gc3dhbGxvdyBlcnJvciBpZiBzb2NrZXQgaGFzIGFscmVhZHkgYmVlbiBjbG9zZWQuXG4gICAgICAgICAgICBpZiAoZXJyIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgICAgICAgICAgY29uc29sZS5sb2coXG4gICAgICAgICAgICAgICAgYEVycm9yIHdoZW4gY2xvc2luZyBzb2NrZXQgY29ubmVjdGlvbjogJHtlcnIubWVzc2FnZX1gLFxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSwgNTAwKTtcbiAgICAgIH1cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fcnBjV2ViU29ja2V0SWRsZVRpbWVvdXQgIT09IG51bGwpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLl9ycGNXZWJTb2NrZXRJZGxlVGltZW91dCk7XG4gICAgICB0aGlzLl9ycGNXZWJTb2NrZXRJZGxlVGltZW91dCA9IG51bGw7XG4gICAgICB0aGlzLl9ycGNXZWJTb2NrZXRDb25uZWN0ZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5fcnBjV2ViU29ja2V0Q29ubmVjdGVkKSB7XG4gICAgICB0aGlzLl9ycGNXZWJTb2NrZXQuY29ubmVjdCgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGFjdGl2ZVdlYlNvY2tldEdlbmVyYXRpb24gPSB0aGlzLl9ycGNXZWJTb2NrZXRHZW5lcmF0aW9uO1xuICAgIGNvbnN0IGlzQ3VycmVudENvbm5lY3Rpb25TdGlsbEFjdGl2ZSA9ICgpID0+IHtcbiAgICAgIHJldHVybiBhY3RpdmVXZWJTb2NrZXRHZW5lcmF0aW9uID09PSB0aGlzLl9ycGNXZWJTb2NrZXRHZW5lcmF0aW9uO1xuICAgIH07XG5cbiAgICBhd2FpdCBQcm9taXNlLmFsbChcbiAgICAgIC8vIERvbid0IGJlIHRlbXB0ZWQgdG8gY2hhbmdlIHRoaXMgdG8gYE9iamVjdC5lbnRyaWVzYC4gV2UgY2FsbFxuICAgICAgLy8gYF91cGRhdGVTdWJzY3JpcHRpb25zYCByZWN1cnNpdmVseSB3aGVuIHByb2Nlc3NpbmcgdGhlIHN0YXRlLFxuICAgICAgLy8gc28gaXQncyBpbXBvcnRhbnQgdGhhdCB3ZSBsb29rIHVwIHRoZSAqY3VycmVudCogdmVyc2lvbiBvZlxuICAgICAgLy8gZWFjaCBzdWJzY3JpcHRpb24sIGV2ZXJ5IHRpbWUgd2UgcHJvY2VzcyBhIGhhc2guXG4gICAgICBPYmplY3Qua2V5cyh0aGlzLl9zdWJzY3JpcHRpb25zQnlIYXNoKS5tYXAoYXN5bmMgaGFzaCA9PiB7XG4gICAgICAgIGNvbnN0IHN1YnNjcmlwdGlvbiA9IHRoaXMuX3N1YnNjcmlwdGlvbnNCeUhhc2hbaGFzaF07XG4gICAgICAgIGlmIChzdWJzY3JpcHRpb24gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIC8vIFRoaXMgZW50cnkgaGFzIHNpbmNlIGJlZW4gZGVsZXRlZC4gU2tpcC5cbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgc3dpdGNoIChzdWJzY3JpcHRpb24uc3RhdGUpIHtcbiAgICAgICAgICBjYXNlICdwZW5kaW5nJzpcbiAgICAgICAgICBjYXNlICd1bnN1YnNjcmliZWQnOlxuICAgICAgICAgICAgaWYgKHN1YnNjcmlwdGlvbi5jYWxsYmFja3Muc2l6ZSA9PT0gMCkge1xuICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICogWW91IGNhbiBlbmQgdXAgaGVyZSB3aGVuOlxuICAgICAgICAgICAgICAgKlxuICAgICAgICAgICAgICAgKiAtIGEgc3Vic2NyaXB0aW9uIGhhcyByZWNlbnRseSB1bnN1YnNjcmliZWRcbiAgICAgICAgICAgICAgICogICB3aXRob3V0IGhhdmluZyBuZXcgY2FsbGJhY2tzIGFkZGVkIHRvIGl0XG4gICAgICAgICAgICAgICAqICAgd2hpbGUgdGhlIHVuc3Vic2NyaWJlIHdhcyBpbiBmbGlnaHQsIG9yXG4gICAgICAgICAgICAgICAqIC0gd2hlbiBhIHBlbmRpbmcgc3Vic2NyaXB0aW9uIGhhcyBpdHNcbiAgICAgICAgICAgICAgICogICBsaXN0ZW5lcnMgcmVtb3ZlZCBiZWZvcmUgYSByZXF1ZXN0IHdhc1xuICAgICAgICAgICAgICAgKiAgIHNlbnQgdG8gdGhlIHNlcnZlci5cbiAgICAgICAgICAgICAgICpcbiAgICAgICAgICAgICAgICogQmVpbmcgdGhhdCBub2JvZHkgaXMgaW50ZXJlc3RlZCBpbiB0aGlzXG4gICAgICAgICAgICAgICAqIHN1YnNjcmlwdGlvbiBhbnkgbG9uZ2VyLCBkZWxldGUgaXQuXG4gICAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgICBkZWxldGUgdGhpcy5fc3Vic2NyaXB0aW9uc0J5SGFzaFtoYXNoXTtcbiAgICAgICAgICAgICAgaWYgKHN1YnNjcmlwdGlvbi5zdGF0ZSA9PT0gJ3Vuc3Vic2NyaWJlZCcpIHtcbiAgICAgICAgICAgICAgICBkZWxldGUgdGhpcy5fc3Vic2NyaXB0aW9uQ2FsbGJhY2tzQnlTZXJ2ZXJTdWJzY3JpcHRpb25JZFtcbiAgICAgICAgICAgICAgICAgIHN1YnNjcmlwdGlvbi5zZXJ2ZXJTdWJzY3JpcHRpb25JZFxuICAgICAgICAgICAgICAgIF07XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgYXdhaXQgdGhpcy5fdXBkYXRlU3Vic2NyaXB0aW9ucygpO1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhd2FpdCAoYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCB7YXJncywgbWV0aG9kfSA9IHN1YnNjcmlwdGlvbjtcbiAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICB0aGlzLl9zZXRTdWJzY3JpcHRpb24oaGFzaCwge1xuICAgICAgICAgICAgICAgICAgLi4uc3Vic2NyaXB0aW9uLFxuICAgICAgICAgICAgICAgICAgc3RhdGU6ICdzdWJzY3JpYmluZycsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgY29uc3Qgc2VydmVyU3Vic2NyaXB0aW9uSWQ6IFNlcnZlclN1YnNjcmlwdGlvbklkID1cbiAgICAgICAgICAgICAgICAgIChhd2FpdCB0aGlzLl9ycGNXZWJTb2NrZXQuY2FsbChtZXRob2QsIGFyZ3MpKSBhcyBudW1iZXI7XG4gICAgICAgICAgICAgICAgdGhpcy5fc2V0U3Vic2NyaXB0aW9uKGhhc2gsIHtcbiAgICAgICAgICAgICAgICAgIC4uLnN1YnNjcmlwdGlvbixcbiAgICAgICAgICAgICAgICAgIHNlcnZlclN1YnNjcmlwdGlvbklkLFxuICAgICAgICAgICAgICAgICAgc3RhdGU6ICdzdWJzY3JpYmVkJyxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb25DYWxsYmFja3NCeVNlcnZlclN1YnNjcmlwdGlvbklkW1xuICAgICAgICAgICAgICAgICAgc2VydmVyU3Vic2NyaXB0aW9uSWRcbiAgICAgICAgICAgICAgICBdID0gc3Vic2NyaXB0aW9uLmNhbGxiYWNrcztcbiAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLl91cGRhdGVTdWJzY3JpcHRpb25zKCk7XG4gICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICBpZiAoZSBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICAgICAgICAgICAgICBgJHttZXRob2R9IGVycm9yIGZvciBhcmd1bWVudGAsXG4gICAgICAgICAgICAgICAgICAgIGFyZ3MsXG4gICAgICAgICAgICAgICAgICAgIGUubWVzc2FnZSxcbiAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICghaXNDdXJyZW50Q29ubmVjdGlvblN0aWxsQWN0aXZlKCkpIHtcbiAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gVE9ETzogTWF5YmUgYWRkIGFuICdlcnJvcmVkJyBzdGF0ZSBvciBhIHJldHJ5IGxpbWl0P1xuICAgICAgICAgICAgICAgIHRoaXMuX3NldFN1YnNjcmlwdGlvbihoYXNoLCB7XG4gICAgICAgICAgICAgICAgICAuLi5zdWJzY3JpcHRpb24sXG4gICAgICAgICAgICAgICAgICBzdGF0ZTogJ3BlbmRpbmcnLFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMuX3VwZGF0ZVN1YnNjcmlwdGlvbnMoKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSkoKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ3N1YnNjcmliZWQnOlxuICAgICAgICAgICAgaWYgKHN1YnNjcmlwdGlvbi5jYWxsYmFja3Muc2l6ZSA9PT0gMCkge1xuICAgICAgICAgICAgICAvLyBCeSB0aGUgdGltZSB3ZSBzdWNjZXNzZnVsbHkgc2V0IHVwIGEgc3Vic2NyaXB0aW9uXG4gICAgICAgICAgICAgIC8vIHdpdGggdGhlIHNlcnZlciwgdGhlIGNsaWVudCBzdG9wcGVkIGNhcmluZyBhYm91dCBpdC5cbiAgICAgICAgICAgICAgLy8gVGVhciBpdCBkb3duIG5vdy5cbiAgICAgICAgICAgICAgYXdhaXQgKGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCB7c2VydmVyU3Vic2NyaXB0aW9uSWQsIHVuc3Vic2NyaWJlTWV0aG9kfSA9IHN1YnNjcmlwdGlvbjtcbiAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb25zQXV0b0Rpc3Bvc2VkQnlScGMuaGFzKHNlcnZlclN1YnNjcmlwdGlvbklkKVxuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgKiBTcGVjaWFsIGNhc2UuXG4gICAgICAgICAgICAgICAgICAgKiBJZiB3ZSdyZSBkZWFsaW5nIHdpdGggYSBzdWJzY3JpcHRpb24gdGhhdCBoYXMgYmVlbiBhdXRvLVxuICAgICAgICAgICAgICAgICAgICogZGlzcG9zZWQgYnkgdGhlIFJQQywgdGhlbiB3ZSBjYW4gc2tpcCB0aGUgUlBDIGNhbGwgdG9cbiAgICAgICAgICAgICAgICAgICAqIHRlYXIgZG93biB0aGUgc3Vic2NyaXB0aW9uIGhlcmUuXG4gICAgICAgICAgICAgICAgICAgKlxuICAgICAgICAgICAgICAgICAgICogTk9URTogVGhlcmUgaXMgYSBwcm9wb3NhbCB0byBlbGltaW5hdGUgdGhpcyBzcGVjaWFsIGNhc2UsIGhlcmU6XG4gICAgICAgICAgICAgICAgICAgKiBodHRwczovL2dpdGh1Yi5jb20vc29sYW5hLWxhYnMvc29sYW5hL2lzc3Vlcy8xODg5MlxuICAgICAgICAgICAgICAgICAgICovXG4gICAgICAgICAgICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb25zQXV0b0Rpc3Bvc2VkQnlScGMuZGVsZXRlKFxuICAgICAgICAgICAgICAgICAgICBzZXJ2ZXJTdWJzY3JpcHRpb25JZCxcbiAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgIHRoaXMuX3NldFN1YnNjcmlwdGlvbihoYXNoLCB7XG4gICAgICAgICAgICAgICAgICAgIC4uLnN1YnNjcmlwdGlvbixcbiAgICAgICAgICAgICAgICAgICAgc3RhdGU6ICd1bnN1YnNjcmliaW5nJyxcbiAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgdGhpcy5fc2V0U3Vic2NyaXB0aW9uKGhhc2gsIHtcbiAgICAgICAgICAgICAgICAgICAgLi4uc3Vic2NyaXB0aW9uLFxuICAgICAgICAgICAgICAgICAgICBzdGF0ZTogJ3Vuc3Vic2NyaWJpbmcnLFxuICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLl9ycGNXZWJTb2NrZXQuY2FsbCh1bnN1YnNjcmliZU1ldGhvZCwgW1xuICAgICAgICAgICAgICAgICAgICAgIHNlcnZlclN1YnNjcmlwdGlvbklkLFxuICAgICAgICAgICAgICAgICAgICBdKTtcbiAgICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoYCR7dW5zdWJzY3JpYmVNZXRob2R9IGVycm9yOmAsIGUubWVzc2FnZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKCFpc0N1cnJlbnRDb25uZWN0aW9uU3RpbGxBY3RpdmUoKSkge1xuICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAvLyBUT0RPOiBNYXliZSBhZGQgYW4gJ2Vycm9yZWQnIHN0YXRlIG9yIGEgcmV0cnkgbGltaXQ/XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3NldFN1YnNjcmlwdGlvbihoYXNoLCB7XG4gICAgICAgICAgICAgICAgICAgICAgLi4uc3Vic2NyaXB0aW9uLFxuICAgICAgICAgICAgICAgICAgICAgIHN0YXRlOiAnc3Vic2NyaWJlZCcsXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLl91cGRhdGVTdWJzY3JpcHRpb25zKCk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhpcy5fc2V0U3Vic2NyaXB0aW9uKGhhc2gsIHtcbiAgICAgICAgICAgICAgICAgIC4uLnN1YnNjcmlwdGlvbixcbiAgICAgICAgICAgICAgICAgIHN0YXRlOiAndW5zdWJzY3JpYmVkJyxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLl91cGRhdGVTdWJzY3JpcHRpb25zKCk7XG4gICAgICAgICAgICAgIH0pKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdzdWJzY3JpYmluZyc6XG4gICAgICAgICAgY2FzZSAndW5zdWJzY3JpYmluZyc6XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHByaXZhdGUgX2hhbmRsZVNlcnZlck5vdGlmaWNhdGlvbjxcbiAgICBUQ2FsbGJhY2sgZXh0ZW5kcyBTdWJzY3JpcHRpb25Db25maWdbJ2NhbGxiYWNrJ10sXG4gID4oXG4gICAgc2VydmVyU3Vic2NyaXB0aW9uSWQ6IFNlcnZlclN1YnNjcmlwdGlvbklkLFxuICAgIGNhbGxiYWNrQXJnczogUGFyYW1ldGVyczxUQ2FsbGJhY2s+LFxuICApOiB2b2lkIHtcbiAgICBjb25zdCBjYWxsYmFja3MgPVxuICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uQ2FsbGJhY2tzQnlTZXJ2ZXJTdWJzY3JpcHRpb25JZFtzZXJ2ZXJTdWJzY3JpcHRpb25JZF07XG4gICAgaWYgKGNhbGxiYWNrcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNhbGxiYWNrcy5mb3JFYWNoKGNiID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNiKFxuICAgICAgICAgIC8vIEkgZmFpbGVkIHRvIGZpbmQgYSB3YXkgdG8gY29udmluY2UgVHlwZVNjcmlwdCB0aGF0IGBjYmAgaXMgb2YgdHlwZVxuICAgICAgICAgIC8vIGBUQ2FsbGJhY2tgIHdoaWNoIGlzIGNlcnRhaW5seSBjb21wYXRpYmxlIHdpdGggYFBhcmFtZXRlcnM8VENhbGxiYWNrPmAuXG4gICAgICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9taWNyb3NvZnQvVHlwZVNjcmlwdC9pc3N1ZXMvNDc2MTVcbiAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgLi4uY2FsbGJhY2tBcmdzLFxuICAgICAgICApO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgX3dzT25BY2NvdW50Tm90aWZpY2F0aW9uKG5vdGlmaWNhdGlvbjogb2JqZWN0KSB7XG4gICAgY29uc3Qge3Jlc3VsdCwgc3Vic2NyaXB0aW9ufSA9IGNyZWF0ZShcbiAgICAgIG5vdGlmaWNhdGlvbixcbiAgICAgIEFjY291bnROb3RpZmljYXRpb25SZXN1bHQsXG4gICAgKTtcbiAgICB0aGlzLl9oYW5kbGVTZXJ2ZXJOb3RpZmljYXRpb248QWNjb3VudENoYW5nZUNhbGxiYWNrPihzdWJzY3JpcHRpb24sIFtcbiAgICAgIHJlc3VsdC52YWx1ZSxcbiAgICAgIHJlc3VsdC5jb250ZXh0LFxuICAgIF0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHJpdmF0ZSBfbWFrZVN1YnNjcmlwdGlvbihcbiAgICBzdWJzY3JpcHRpb25Db25maWc6IFN1YnNjcmlwdGlvbkNvbmZpZyxcbiAgICAvKipcbiAgICAgKiBXaGVuIHByZXBhcmluZyBgYXJnc2AgZm9yIGEgY2FsbCB0byBgX21ha2VTdWJzY3JpcHRpb25gLCBiZSBzdXJlXG4gICAgICogdG8gY2FyZWZ1bGx5IGFwcGx5IGEgZGVmYXVsdCBgY29tbWl0bWVudGAgcHJvcGVydHksIGlmIG5lY2Vzc2FyeS5cbiAgICAgKlxuICAgICAqIC0gSWYgdGhlIHVzZXIgc3VwcGxpZWQgYSBgY29tbWl0bWVudGAgdXNlIHRoYXQuXG4gICAgICogLSBPdGhlcndpc2UsIGlmIHRoZSBgQ29ubmVjdGlvbjo6Y29tbWl0bWVudGAgaXMgc2V0LCB1c2UgdGhhdC5cbiAgICAgKiAtIE90aGVyd2lzZSwgc2V0IGl0IHRvIHRoZSBSUEMgc2VydmVyIGRlZmF1bHQ6IGBmaW5hbGl6ZWRgLlxuICAgICAqXG4gICAgICogVGhpcyBpcyBleHRyZW1lbHkgaW1wb3J0YW50IHRvIGVuc3VyZSB0aGF0IHRoZXNlIHR3byBmdW5kYW1lbnRhbGx5XG4gICAgICogaWRlbnRpY2FsIHN1YnNjcmlwdGlvbnMgcHJvZHVjZSB0aGUgc2FtZSBpZGVudGlmeWluZyBoYXNoOlxuICAgICAqXG4gICAgICogLSBBIHN1YnNjcmlwdGlvbiBtYWRlIHdpdGhvdXQgc3BlY2lmeWluZyBhIGNvbW1pdG1lbnQuXG4gICAgICogLSBBIHN1YnNjcmlwdGlvbiBtYWRlIHdoZXJlIHRoZSBjb21taXRtZW50IHNwZWNpZmllZCBpcyB0aGUgc2FtZVxuICAgICAqICAgYXMgdGhlIGRlZmF1bHQgYXBwbGllZCB0byB0aGUgc3Vic2NyaXB0aW9uIGFib3ZlLlxuICAgICAqXG4gICAgICogRXhhbXBsZTsgdGhlc2UgdHdvIHN1YnNjcmlwdGlvbnMgbXVzdCBwcm9kdWNlIHRoZSBzYW1lIGhhc2g6XG4gICAgICpcbiAgICAgKiAtIEFuIGBhY2NvdW50U3Vic2NyaWJlYCBzdWJzY3JpcHRpb24gZm9yIGAnUFVCS0VZJ2BcbiAgICAgKiAtIEFuIGBhY2NvdW50U3Vic2NyaWJlYCBzdWJzY3JpcHRpb24gZm9yIGAnUFVCS0VZJ2Agd2l0aCBjb21taXRtZW50XG4gICAgICogICBgJ2ZpbmFsaXplZCdgLlxuICAgICAqXG4gICAgICogU2VlIHRoZSAnbWFraW5nIGEgc3Vic2NyaXB0aW9uIHdpdGggZGVmYXVsdGVkIHBhcmFtcyBvbWl0dGVkJyB0ZXN0XG4gICAgICogaW4gYGNvbm5lY3Rpb24tc3Vic2NyaXB0aW9ucy50c2AgZm9yIG1vcmUuXG4gICAgICovXG4gICAgYXJnczogSVdTUmVxdWVzdFBhcmFtcyxcbiAgKTogQ2xpZW50U3Vic2NyaXB0aW9uSWQge1xuICAgIGNvbnN0IGNsaWVudFN1YnNjcmlwdGlvbklkID0gdGhpcy5fbmV4dENsaWVudFN1YnNjcmlwdGlvbklkKys7XG4gICAgY29uc3QgaGFzaCA9IGZhc3RTdGFibGVTdHJpbmdpZnkoXG4gICAgICBbc3Vic2NyaXB0aW9uQ29uZmlnLm1ldGhvZCwgYXJnc10sXG4gICAgICB0cnVlIC8qIGlzQXJyYXlQcm9wICovLFxuICAgICk7XG4gICAgY29uc3QgZXhpc3RpbmdTdWJzY3JpcHRpb24gPSB0aGlzLl9zdWJzY3JpcHRpb25zQnlIYXNoW2hhc2hdO1xuICAgIGlmIChleGlzdGluZ1N1YnNjcmlwdGlvbiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLl9zdWJzY3JpcHRpb25zQnlIYXNoW2hhc2hdID0ge1xuICAgICAgICAuLi5zdWJzY3JpcHRpb25Db25maWcsXG4gICAgICAgIGFyZ3MsXG4gICAgICAgIGNhbGxiYWNrczogbmV3IFNldChbc3Vic2NyaXB0aW9uQ29uZmlnLmNhbGxiYWNrXSksXG4gICAgICAgIHN0YXRlOiAncGVuZGluZycsXG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICBleGlzdGluZ1N1YnNjcmlwdGlvbi5jYWxsYmFja3MuYWRkKHN1YnNjcmlwdGlvbkNvbmZpZy5jYWxsYmFjayk7XG4gICAgfVxuICAgIHRoaXMuX3N1YnNjcmlwdGlvbkhhc2hCeUNsaWVudFN1YnNjcmlwdGlvbklkW2NsaWVudFN1YnNjcmlwdGlvbklkXSA9IGhhc2g7XG4gICAgdGhpcy5fc3Vic2NyaXB0aW9uRGlzcG9zZUZ1bmN0aW9uc0J5Q2xpZW50U3Vic2NyaXB0aW9uSWRbXG4gICAgICBjbGllbnRTdWJzY3JpcHRpb25JZFxuICAgIF0gPSBhc3luYyAoKSA9PiB7XG4gICAgICBkZWxldGUgdGhpcy5fc3Vic2NyaXB0aW9uRGlzcG9zZUZ1bmN0aW9uc0J5Q2xpZW50U3Vic2NyaXB0aW9uSWRbXG4gICAgICAgIGNsaWVudFN1YnNjcmlwdGlvbklkXG4gICAgICBdO1xuICAgICAgZGVsZXRlIHRoaXMuX3N1YnNjcmlwdGlvbkhhc2hCeUNsaWVudFN1YnNjcmlwdGlvbklkW2NsaWVudFN1YnNjcmlwdGlvbklkXTtcbiAgICAgIGNvbnN0IHN1YnNjcmlwdGlvbiA9IHRoaXMuX3N1YnNjcmlwdGlvbnNCeUhhc2hbaGFzaF07XG4gICAgICBhc3NlcnQoXG4gICAgICAgIHN1YnNjcmlwdGlvbiAhPT0gdW5kZWZpbmVkLFxuICAgICAgICBgQ291bGQgbm90IGZpbmQgYSBcXGBTdWJzY3JpcHRpb25cXGAgd2hlbiB0ZWFyaW5nIGRvd24gY2xpZW50IHN1YnNjcmlwdGlvbiAjJHtjbGllbnRTdWJzY3JpcHRpb25JZH1gLFxuICAgICAgKTtcbiAgICAgIHN1YnNjcmlwdGlvbi5jYWxsYmFja3MuZGVsZXRlKHN1YnNjcmlwdGlvbkNvbmZpZy5jYWxsYmFjayk7XG4gICAgICBhd2FpdCB0aGlzLl91cGRhdGVTdWJzY3JpcHRpb25zKCk7XG4gICAgfTtcbiAgICB0aGlzLl91cGRhdGVTdWJzY3JpcHRpb25zKCk7XG4gICAgcmV0dXJuIGNsaWVudFN1YnNjcmlwdGlvbklkO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVyIGEgY2FsbGJhY2sgdG8gYmUgaW52b2tlZCB3aGVuZXZlciB0aGUgc3BlY2lmaWVkIGFjY291bnQgY2hhbmdlc1xuICAgKlxuICAgKiBAcGFyYW0gcHVibGljS2V5IFB1YmxpYyBrZXkgb2YgdGhlIGFjY291bnQgdG8gbW9uaXRvclxuICAgKiBAcGFyYW0gY2FsbGJhY2sgRnVuY3Rpb24gdG8gaW52b2tlIHdoZW5ldmVyIHRoZSBhY2NvdW50IGlzIGNoYW5nZWRcbiAgICogQHBhcmFtIGNvbW1pdG1lbnQgU3BlY2lmeSB0aGUgY29tbWl0bWVudCBsZXZlbCBhY2NvdW50IGNoYW5nZXMgbXVzdCByZWFjaCBiZWZvcmUgbm90aWZpY2F0aW9uXG4gICAqIEByZXR1cm4gc3Vic2NyaXB0aW9uIGlkXG4gICAqL1xuICBvbkFjY291bnRDaGFuZ2UoXG4gICAgcHVibGljS2V5OiBQdWJsaWNLZXksXG4gICAgY2FsbGJhY2s6IEFjY291bnRDaGFuZ2VDYWxsYmFjayxcbiAgICBjb21taXRtZW50PzogQ29tbWl0bWVudCxcbiAgKTogQ2xpZW50U3Vic2NyaXB0aW9uSWQge1xuICAgIGNvbnN0IGFyZ3MgPSB0aGlzLl9idWlsZEFyZ3MoXG4gICAgICBbcHVibGljS2V5LnRvQmFzZTU4KCldLFxuICAgICAgY29tbWl0bWVudCB8fCB0aGlzLl9jb21taXRtZW50IHx8ICdmaW5hbGl6ZWQnLCAvLyBBcHBseSBjb25uZWN0aW9uL3NlcnZlciBkZWZhdWx0LlxuICAgICAgJ2Jhc2U2NCcsXG4gICAgKTtcbiAgICByZXR1cm4gdGhpcy5fbWFrZVN1YnNjcmlwdGlvbihcbiAgICAgIHtcbiAgICAgICAgY2FsbGJhY2ssXG4gICAgICAgIG1ldGhvZDogJ2FjY291bnRTdWJzY3JpYmUnLFxuICAgICAgICB1bnN1YnNjcmliZU1ldGhvZDogJ2FjY291bnRVbnN1YnNjcmliZScsXG4gICAgICB9LFxuICAgICAgYXJncyxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIERlcmVnaXN0ZXIgYW4gYWNjb3VudCBub3RpZmljYXRpb24gY2FsbGJhY2tcbiAgICpcbiAgICogQHBhcmFtIGlkIGNsaWVudCBzdWJzY3JpcHRpb24gaWQgdG8gZGVyZWdpc3RlclxuICAgKi9cbiAgYXN5bmMgcmVtb3ZlQWNjb3VudENoYW5nZUxpc3RlbmVyKFxuICAgIGNsaWVudFN1YnNjcmlwdGlvbklkOiBDbGllbnRTdWJzY3JpcHRpb25JZCxcbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5fdW5zdWJzY3JpYmVDbGllbnRTdWJzY3JpcHRpb24oXG4gICAgICBjbGllbnRTdWJzY3JpcHRpb25JZCxcbiAgICAgICdhY2NvdW50IGNoYW5nZScsXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIF93c09uUHJvZ3JhbUFjY291bnROb3RpZmljYXRpb24obm90aWZpY2F0aW9uOiBPYmplY3QpIHtcbiAgICBjb25zdCB7cmVzdWx0LCBzdWJzY3JpcHRpb259ID0gY3JlYXRlKFxuICAgICAgbm90aWZpY2F0aW9uLFxuICAgICAgUHJvZ3JhbUFjY291bnROb3RpZmljYXRpb25SZXN1bHQsXG4gICAgKTtcbiAgICB0aGlzLl9oYW5kbGVTZXJ2ZXJOb3RpZmljYXRpb248UHJvZ3JhbUFjY291bnRDaGFuZ2VDYWxsYmFjaz4oc3Vic2NyaXB0aW9uLCBbXG4gICAgICB7XG4gICAgICAgIGFjY291bnRJZDogcmVzdWx0LnZhbHVlLnB1YmtleSxcbiAgICAgICAgYWNjb3VudEluZm86IHJlc3VsdC52YWx1ZS5hY2NvdW50LFxuICAgICAgfSxcbiAgICAgIHJlc3VsdC5jb250ZXh0LFxuICAgIF0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVyIGEgY2FsbGJhY2sgdG8gYmUgaW52b2tlZCB3aGVuZXZlciBhY2NvdW50cyBvd25lZCBieSB0aGVcbiAgICogc3BlY2lmaWVkIHByb2dyYW0gY2hhbmdlXG4gICAqXG4gICAqIEBwYXJhbSBwcm9ncmFtSWQgUHVibGljIGtleSBvZiB0aGUgcHJvZ3JhbSB0byBtb25pdG9yXG4gICAqIEBwYXJhbSBjYWxsYmFjayBGdW5jdGlvbiB0byBpbnZva2Ugd2hlbmV2ZXIgdGhlIGFjY291bnQgaXMgY2hhbmdlZFxuICAgKiBAcGFyYW0gY29tbWl0bWVudCBTcGVjaWZ5IHRoZSBjb21taXRtZW50IGxldmVsIGFjY291bnQgY2hhbmdlcyBtdXN0IHJlYWNoIGJlZm9yZSBub3RpZmljYXRpb25cbiAgICogQHBhcmFtIGZpbHRlcnMgVGhlIHByb2dyYW0gYWNjb3VudCBmaWx0ZXJzIHRvIHBhc3MgaW50byB0aGUgUlBDIG1ldGhvZFxuICAgKiBAcmV0dXJuIHN1YnNjcmlwdGlvbiBpZFxuICAgKi9cbiAgb25Qcm9ncmFtQWNjb3VudENoYW5nZShcbiAgICBwcm9ncmFtSWQ6IFB1YmxpY0tleSxcbiAgICBjYWxsYmFjazogUHJvZ3JhbUFjY291bnRDaGFuZ2VDYWxsYmFjayxcbiAgICBjb21taXRtZW50PzogQ29tbWl0bWVudCxcbiAgICBmaWx0ZXJzPzogR2V0UHJvZ3JhbUFjY291bnRzRmlsdGVyW10sXG4gICk6IENsaWVudFN1YnNjcmlwdGlvbklkIHtcbiAgICBjb25zdCBhcmdzID0gdGhpcy5fYnVpbGRBcmdzKFxuICAgICAgW3Byb2dyYW1JZC50b0Jhc2U1OCgpXSxcbiAgICAgIGNvbW1pdG1lbnQgfHwgdGhpcy5fY29tbWl0bWVudCB8fCAnZmluYWxpemVkJywgLy8gQXBwbHkgY29ubmVjdGlvbi9zZXJ2ZXIgZGVmYXVsdC5cbiAgICAgICdiYXNlNjQnIC8qIGVuY29kaW5nICovLFxuICAgICAgZmlsdGVycyA/IHtmaWx0ZXJzOiBmaWx0ZXJzfSA6IHVuZGVmaW5lZCAvKiBleHRyYSAqLyxcbiAgICApO1xuICAgIHJldHVybiB0aGlzLl9tYWtlU3Vic2NyaXB0aW9uKFxuICAgICAge1xuICAgICAgICBjYWxsYmFjayxcbiAgICAgICAgbWV0aG9kOiAncHJvZ3JhbVN1YnNjcmliZScsXG4gICAgICAgIHVuc3Vic2NyaWJlTWV0aG9kOiAncHJvZ3JhbVVuc3Vic2NyaWJlJyxcbiAgICAgIH0sXG4gICAgICBhcmdzLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRGVyZWdpc3RlciBhbiBhY2NvdW50IG5vdGlmaWNhdGlvbiBjYWxsYmFja1xuICAgKlxuICAgKiBAcGFyYW0gaWQgY2xpZW50IHN1YnNjcmlwdGlvbiBpZCB0byBkZXJlZ2lzdGVyXG4gICAqL1xuICBhc3luYyByZW1vdmVQcm9ncmFtQWNjb3VudENoYW5nZUxpc3RlbmVyKFxuICAgIGNsaWVudFN1YnNjcmlwdGlvbklkOiBDbGllbnRTdWJzY3JpcHRpb25JZCxcbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5fdW5zdWJzY3JpYmVDbGllbnRTdWJzY3JpcHRpb24oXG4gICAgICBjbGllbnRTdWJzY3JpcHRpb25JZCxcbiAgICAgICdwcm9ncmFtIGFjY291bnQgY2hhbmdlJyxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVycyBhIGNhbGxiYWNrIHRvIGJlIGludm9rZWQgd2hlbmV2ZXIgbG9ncyBhcmUgZW1pdHRlZC5cbiAgICovXG4gIG9uTG9ncyhcbiAgICBmaWx0ZXI6IExvZ3NGaWx0ZXIsXG4gICAgY2FsbGJhY2s6IExvZ3NDYWxsYmFjayxcbiAgICBjb21taXRtZW50PzogQ29tbWl0bWVudCxcbiAgKTogQ2xpZW50U3Vic2NyaXB0aW9uSWQge1xuICAgIGNvbnN0IGFyZ3MgPSB0aGlzLl9idWlsZEFyZ3MoXG4gICAgICBbdHlwZW9mIGZpbHRlciA9PT0gJ29iamVjdCcgPyB7bWVudGlvbnM6IFtmaWx0ZXIudG9TdHJpbmcoKV19IDogZmlsdGVyXSxcbiAgICAgIGNvbW1pdG1lbnQgfHwgdGhpcy5fY29tbWl0bWVudCB8fCAnZmluYWxpemVkJywgLy8gQXBwbHkgY29ubmVjdGlvbi9zZXJ2ZXIgZGVmYXVsdC5cbiAgICApO1xuICAgIHJldHVybiB0aGlzLl9tYWtlU3Vic2NyaXB0aW9uKFxuICAgICAge1xuICAgICAgICBjYWxsYmFjayxcbiAgICAgICAgbWV0aG9kOiAnbG9nc1N1YnNjcmliZScsXG4gICAgICAgIHVuc3Vic2NyaWJlTWV0aG9kOiAnbG9nc1Vuc3Vic2NyaWJlJyxcbiAgICAgIH0sXG4gICAgICBhcmdzLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRGVyZWdpc3RlciBhIGxvZ3MgY2FsbGJhY2suXG4gICAqXG4gICAqIEBwYXJhbSBpZCBjbGllbnQgc3Vic2NyaXB0aW9uIGlkIHRvIGRlcmVnaXN0ZXIuXG4gICAqL1xuICBhc3luYyByZW1vdmVPbkxvZ3NMaXN0ZW5lcihcbiAgICBjbGllbnRTdWJzY3JpcHRpb25JZDogQ2xpZW50U3Vic2NyaXB0aW9uSWQsXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuX3Vuc3Vic2NyaWJlQ2xpZW50U3Vic2NyaXB0aW9uKGNsaWVudFN1YnNjcmlwdGlvbklkLCAnbG9ncycpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgX3dzT25Mb2dzTm90aWZpY2F0aW9uKG5vdGlmaWNhdGlvbjogT2JqZWN0KSB7XG4gICAgY29uc3Qge3Jlc3VsdCwgc3Vic2NyaXB0aW9ufSA9IGNyZWF0ZShub3RpZmljYXRpb24sIExvZ3NOb3RpZmljYXRpb25SZXN1bHQpO1xuICAgIHRoaXMuX2hhbmRsZVNlcnZlck5vdGlmaWNhdGlvbjxMb2dzQ2FsbGJhY2s+KHN1YnNjcmlwdGlvbiwgW1xuICAgICAgcmVzdWx0LnZhbHVlLFxuICAgICAgcmVzdWx0LmNvbnRleHQsXG4gICAgXSk7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBfd3NPblNsb3ROb3RpZmljYXRpb24obm90aWZpY2F0aW9uOiBPYmplY3QpIHtcbiAgICBjb25zdCB7cmVzdWx0LCBzdWJzY3JpcHRpb259ID0gY3JlYXRlKG5vdGlmaWNhdGlvbiwgU2xvdE5vdGlmaWNhdGlvblJlc3VsdCk7XG4gICAgdGhpcy5faGFuZGxlU2VydmVyTm90aWZpY2F0aW9uPFNsb3RDaGFuZ2VDYWxsYmFjaz4oc3Vic2NyaXB0aW9uLCBbcmVzdWx0XSk7XG4gIH1cblxuICAvKipcbiAgICogUmVnaXN0ZXIgYSBjYWxsYmFjayB0byBiZSBpbnZva2VkIHVwb24gc2xvdCBjaGFuZ2VzXG4gICAqXG4gICAqIEBwYXJhbSBjYWxsYmFjayBGdW5jdGlvbiB0byBpbnZva2Ugd2hlbmV2ZXIgdGhlIHNsb3QgY2hhbmdlc1xuICAgKiBAcmV0dXJuIHN1YnNjcmlwdGlvbiBpZFxuICAgKi9cbiAgb25TbG90Q2hhbmdlKGNhbGxiYWNrOiBTbG90Q2hhbmdlQ2FsbGJhY2spOiBDbGllbnRTdWJzY3JpcHRpb25JZCB7XG4gICAgcmV0dXJuIHRoaXMuX21ha2VTdWJzY3JpcHRpb24oXG4gICAgICB7XG4gICAgICAgIGNhbGxiYWNrLFxuICAgICAgICBtZXRob2Q6ICdzbG90U3Vic2NyaWJlJyxcbiAgICAgICAgdW5zdWJzY3JpYmVNZXRob2Q6ICdzbG90VW5zdWJzY3JpYmUnLFxuICAgICAgfSxcbiAgICAgIFtdIC8qIGFyZ3MgKi8sXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXJlZ2lzdGVyIGEgc2xvdCBub3RpZmljYXRpb24gY2FsbGJhY2tcbiAgICpcbiAgICogQHBhcmFtIGlkIGNsaWVudCBzdWJzY3JpcHRpb24gaWQgdG8gZGVyZWdpc3RlclxuICAgKi9cbiAgYXN5bmMgcmVtb3ZlU2xvdENoYW5nZUxpc3RlbmVyKFxuICAgIGNsaWVudFN1YnNjcmlwdGlvbklkOiBDbGllbnRTdWJzY3JpcHRpb25JZCxcbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5fdW5zdWJzY3JpYmVDbGllbnRTdWJzY3JpcHRpb24oXG4gICAgICBjbGllbnRTdWJzY3JpcHRpb25JZCxcbiAgICAgICdzbG90IGNoYW5nZScsXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIF93c09uU2xvdFVwZGF0ZXNOb3RpZmljYXRpb24obm90aWZpY2F0aW9uOiBPYmplY3QpIHtcbiAgICBjb25zdCB7cmVzdWx0LCBzdWJzY3JpcHRpb259ID0gY3JlYXRlKFxuICAgICAgbm90aWZpY2F0aW9uLFxuICAgICAgU2xvdFVwZGF0ZU5vdGlmaWNhdGlvblJlc3VsdCxcbiAgICApO1xuICAgIHRoaXMuX2hhbmRsZVNlcnZlck5vdGlmaWNhdGlvbjxTbG90VXBkYXRlQ2FsbGJhY2s+KHN1YnNjcmlwdGlvbiwgW3Jlc3VsdF0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVyIGEgY2FsbGJhY2sgdG8gYmUgaW52b2tlZCB1cG9uIHNsb3QgdXBkYXRlcy4ge0BsaW5rIFNsb3RVcGRhdGV9J3NcbiAgICogbWF5IGJlIHVzZWZ1bCB0byB0cmFjayBsaXZlIHByb2dyZXNzIG9mIGEgY2x1c3Rlci5cbiAgICpcbiAgICogQHBhcmFtIGNhbGxiYWNrIEZ1bmN0aW9uIHRvIGludm9rZSB3aGVuZXZlciB0aGUgc2xvdCB1cGRhdGVzXG4gICAqIEByZXR1cm4gc3Vic2NyaXB0aW9uIGlkXG4gICAqL1xuICBvblNsb3RVcGRhdGUoY2FsbGJhY2s6IFNsb3RVcGRhdGVDYWxsYmFjayk6IENsaWVudFN1YnNjcmlwdGlvbklkIHtcbiAgICByZXR1cm4gdGhpcy5fbWFrZVN1YnNjcmlwdGlvbihcbiAgICAgIHtcbiAgICAgICAgY2FsbGJhY2ssXG4gICAgICAgIG1ldGhvZDogJ3Nsb3RzVXBkYXRlc1N1YnNjcmliZScsXG4gICAgICAgIHVuc3Vic2NyaWJlTWV0aG9kOiAnc2xvdHNVcGRhdGVzVW5zdWJzY3JpYmUnLFxuICAgICAgfSxcbiAgICAgIFtdIC8qIGFyZ3MgKi8sXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXJlZ2lzdGVyIGEgc2xvdCB1cGRhdGUgbm90aWZpY2F0aW9uIGNhbGxiYWNrXG4gICAqXG4gICAqIEBwYXJhbSBpZCBjbGllbnQgc3Vic2NyaXB0aW9uIGlkIHRvIGRlcmVnaXN0ZXJcbiAgICovXG4gIGFzeW5jIHJlbW92ZVNsb3RVcGRhdGVMaXN0ZW5lcihcbiAgICBjbGllbnRTdWJzY3JpcHRpb25JZDogQ2xpZW50U3Vic2NyaXB0aW9uSWQsXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuX3Vuc3Vic2NyaWJlQ2xpZW50U3Vic2NyaXB0aW9uKFxuICAgICAgY2xpZW50U3Vic2NyaXB0aW9uSWQsXG4gICAgICAnc2xvdCB1cGRhdGUnLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuXG4gIHByaXZhdGUgYXN5bmMgX3Vuc3Vic2NyaWJlQ2xpZW50U3Vic2NyaXB0aW9uKFxuICAgIGNsaWVudFN1YnNjcmlwdGlvbklkOiBDbGllbnRTdWJzY3JpcHRpb25JZCxcbiAgICBzdWJzY3JpcHRpb25OYW1lOiBzdHJpbmcsXG4gICkge1xuICAgIGNvbnN0IGRpc3Bvc2UgPVxuICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uRGlzcG9zZUZ1bmN0aW9uc0J5Q2xpZW50U3Vic2NyaXB0aW9uSWRbXG4gICAgICAgIGNsaWVudFN1YnNjcmlwdGlvbklkXG4gICAgICBdO1xuICAgIGlmIChkaXNwb3NlKSB7XG4gICAgICBhd2FpdCBkaXNwb3NlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgJ0lnbm9yZWQgdW5zdWJzY3JpYmUgcmVxdWVzdCBiZWNhdXNlIGFuIGFjdGl2ZSBzdWJzY3JpcHRpb24gd2l0aCBpZCAnICtcbiAgICAgICAgICBgXFxgJHtjbGllbnRTdWJzY3JpcHRpb25JZH1cXGAgZm9yICcke3N1YnNjcmlwdGlvbk5hbWV9JyBldmVudHMgYCArXG4gICAgICAgICAgJ2NvdWxkIG5vdCBiZSBmb3VuZC4nLFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBfYnVpbGRBcmdzKFxuICAgIGFyZ3M6IEFycmF5PGFueT4sXG4gICAgb3ZlcnJpZGU/OiBDb21taXRtZW50LFxuICAgIGVuY29kaW5nPzogJ2pzb25QYXJzZWQnIHwgJ2Jhc2U2NCcsXG4gICAgZXh0cmE/OiBhbnksXG4gICk6IEFycmF5PGFueT4ge1xuICAgIGNvbnN0IGNvbW1pdG1lbnQgPSBvdmVycmlkZSB8fCB0aGlzLl9jb21taXRtZW50O1xuICAgIGlmIChjb21taXRtZW50IHx8IGVuY29kaW5nIHx8IGV4dHJhKSB7XG4gICAgICBsZXQgb3B0aW9uczogYW55ID0ge307XG4gICAgICBpZiAoZW5jb2RpbmcpIHtcbiAgICAgICAgb3B0aW9ucy5lbmNvZGluZyA9IGVuY29kaW5nO1xuICAgICAgfVxuICAgICAgaWYgKGNvbW1pdG1lbnQpIHtcbiAgICAgICAgb3B0aW9ucy5jb21taXRtZW50ID0gY29tbWl0bWVudDtcbiAgICAgIH1cbiAgICAgIGlmIChleHRyYSkge1xuICAgICAgICBvcHRpb25zID0gT2JqZWN0LmFzc2lnbihvcHRpb25zLCBleHRyYSk7XG4gICAgICB9XG4gICAgICBhcmdzLnB1c2gob3B0aW9ucyk7XG4gICAgfVxuICAgIHJldHVybiBhcmdzO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgX2J1aWxkQXJnc0F0TGVhc3RDb25maXJtZWQoXG4gICAgYXJnczogQXJyYXk8YW55PixcbiAgICBvdmVycmlkZT86IEZpbmFsaXR5LFxuICAgIGVuY29kaW5nPzogJ2pzb25QYXJzZWQnIHwgJ2Jhc2U2NCcsXG4gICAgZXh0cmE/OiBhbnksXG4gICk6IEFycmF5PGFueT4ge1xuICAgIGNvbnN0IGNvbW1pdG1lbnQgPSBvdmVycmlkZSB8fCB0aGlzLl9jb21taXRtZW50O1xuICAgIGlmIChjb21taXRtZW50ICYmICFbJ2NvbmZpcm1lZCcsICdmaW5hbGl6ZWQnXS5pbmNsdWRlcyhjb21taXRtZW50KSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnVXNpbmcgQ29ubmVjdGlvbiB3aXRoIGRlZmF1bHQgY29tbWl0bWVudDogYCcgK1xuICAgICAgICAgIHRoaXMuX2NvbW1pdG1lbnQgK1xuICAgICAgICAgICdgLCBidXQgbWV0aG9kIHJlcXVpcmVzIGF0IGxlYXN0IGBjb25maXJtZWRgJyxcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLl9idWlsZEFyZ3MoYXJncywgb3ZlcnJpZGUsIGVuY29kaW5nLCBleHRyYSk7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBfd3NPblNpZ25hdHVyZU5vdGlmaWNhdGlvbihub3RpZmljYXRpb246IE9iamVjdCkge1xuICAgIGNvbnN0IHtyZXN1bHQsIHN1YnNjcmlwdGlvbn0gPSBjcmVhdGUoXG4gICAgICBub3RpZmljYXRpb24sXG4gICAgICBTaWduYXR1cmVOb3RpZmljYXRpb25SZXN1bHQsXG4gICAgKTtcbiAgICBpZiAocmVzdWx0LnZhbHVlICE9PSAncmVjZWl2ZWRTaWduYXR1cmUnKSB7XG4gICAgICAvKipcbiAgICAgICAqIFNwZWNpYWwgY2FzZS5cbiAgICAgICAqIEFmdGVyIGEgc2lnbmF0dXJlIGlzIHByb2Nlc3NlZCwgUlBDcyBhdXRvbWF0aWNhbGx5IGRpc3Bvc2Ugb2YgdGhlXG4gICAgICAgKiBzdWJzY3JpcHRpb24gb24gdGhlIHNlcnZlciBzaWRlLiBXZSBuZWVkIHRvIHRyYWNrIHdoaWNoIG9mIHRoZXNlXG4gICAgICAgKiBzdWJzY3JpcHRpb25zIGhhdmUgYmVlbiBkaXNwb3NlZCBpbiBzdWNoIGEgd2F5LCBzbyB0aGF0IHdlIGtub3dcbiAgICAgICAqIHdoZXRoZXIgdGhlIGNsaWVudCBpcyBkZWFsaW5nIHdpdGggYSBub3QteWV0LXByb2Nlc3NlZCBzaWduYXR1cmVcbiAgICAgICAqIChpbiB3aGljaCBjYXNlIHdlIG11c3QgdGVhciBkb3duIHRoZSBzZXJ2ZXIgc3Vic2NyaXB0aW9uKSBvciBhblxuICAgICAgICogYWxyZWFkeS1wcm9jZXNzZWQgc2lnbmF0dXJlIChpbiB3aGljaCBjYXNlIHRoZSBjbGllbnQgY2FuIHNpbXBseVxuICAgICAgICogY2xlYXIgb3V0IHRoZSBzdWJzY3JpcHRpb24gbG9jYWxseSB3aXRob3V0IHRlbGxpbmcgdGhlIHNlcnZlcikuXG4gICAgICAgKlxuICAgICAgICogTk9URTogVGhlcmUgaXMgYSBwcm9wb3NhbCB0byBlbGltaW5hdGUgdGhpcyBzcGVjaWFsIGNhc2UsIGhlcmU6XG4gICAgICAgKiBodHRwczovL2dpdGh1Yi5jb20vc29sYW5hLWxhYnMvc29sYW5hL2lzc3Vlcy8xODg5MlxuICAgICAgICovXG4gICAgICB0aGlzLl9zdWJzY3JpcHRpb25zQXV0b0Rpc3Bvc2VkQnlScGMuYWRkKHN1YnNjcmlwdGlvbik7XG4gICAgfVxuICAgIHRoaXMuX2hhbmRsZVNlcnZlck5vdGlmaWNhdGlvbjxTaWduYXR1cmVTdWJzY3JpcHRpb25DYWxsYmFjaz4oXG4gICAgICBzdWJzY3JpcHRpb24sXG4gICAgICByZXN1bHQudmFsdWUgPT09ICdyZWNlaXZlZFNpZ25hdHVyZSdcbiAgICAgICAgPyBbe3R5cGU6ICdyZWNlaXZlZCd9LCByZXN1bHQuY29udGV4dF1cbiAgICAgICAgOiBbe3R5cGU6ICdzdGF0dXMnLCByZXN1bHQ6IHJlc3VsdC52YWx1ZX0sIHJlc3VsdC5jb250ZXh0XSxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVyIGEgY2FsbGJhY2sgdG8gYmUgaW52b2tlZCB1cG9uIHNpZ25hdHVyZSB1cGRhdGVzXG4gICAqXG4gICAqIEBwYXJhbSBzaWduYXR1cmUgVHJhbnNhY3Rpb24gc2lnbmF0dXJlIHN0cmluZyBpbiBiYXNlIDU4XG4gICAqIEBwYXJhbSBjYWxsYmFjayBGdW5jdGlvbiB0byBpbnZva2Ugb24gc2lnbmF0dXJlIG5vdGlmaWNhdGlvbnNcbiAgICogQHBhcmFtIGNvbW1pdG1lbnQgU3BlY2lmeSB0aGUgY29tbWl0bWVudCBsZXZlbCBzaWduYXR1cmUgbXVzdCByZWFjaCBiZWZvcmUgbm90aWZpY2F0aW9uXG4gICAqIEByZXR1cm4gc3Vic2NyaXB0aW9uIGlkXG4gICAqL1xuICBvblNpZ25hdHVyZShcbiAgICBzaWduYXR1cmU6IFRyYW5zYWN0aW9uU2lnbmF0dXJlLFxuICAgIGNhbGxiYWNrOiBTaWduYXR1cmVSZXN1bHRDYWxsYmFjayxcbiAgICBjb21taXRtZW50PzogQ29tbWl0bWVudCxcbiAgKTogQ2xpZW50U3Vic2NyaXB0aW9uSWQge1xuICAgIGNvbnN0IGFyZ3MgPSB0aGlzLl9idWlsZEFyZ3MoXG4gICAgICBbc2lnbmF0dXJlXSxcbiAgICAgIGNvbW1pdG1lbnQgfHwgdGhpcy5fY29tbWl0bWVudCB8fCAnZmluYWxpemVkJywgLy8gQXBwbHkgY29ubmVjdGlvbi9zZXJ2ZXIgZGVmYXVsdC5cbiAgICApO1xuICAgIGNvbnN0IGNsaWVudFN1YnNjcmlwdGlvbklkID0gdGhpcy5fbWFrZVN1YnNjcmlwdGlvbihcbiAgICAgIHtcbiAgICAgICAgY2FsbGJhY2s6IChub3RpZmljYXRpb24sIGNvbnRleHQpID0+IHtcbiAgICAgICAgICBpZiAobm90aWZpY2F0aW9uLnR5cGUgPT09ICdzdGF0dXMnKSB7XG4gICAgICAgICAgICBjYWxsYmFjayhub3RpZmljYXRpb24ucmVzdWx0LCBjb250ZXh0KTtcbiAgICAgICAgICAgIC8vIFNpZ25hdHVyZXMgc3Vic2NyaXB0aW9ucyBhcmUgYXV0by1yZW1vdmVkIGJ5IHRoZSBSUEMgc2VydmljZVxuICAgICAgICAgICAgLy8gc28gbm8gbmVlZCB0byBleHBsaWNpdGx5IHNlbmQgYW4gdW5zdWJzY3JpYmUgbWVzc2FnZS5cbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgIHRoaXMucmVtb3ZlU2lnbmF0dXJlTGlzdGVuZXIoY2xpZW50U3Vic2NyaXB0aW9uSWQpO1xuICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZW1wdHlcbiAgICAgICAgICAgIH0gY2F0Y2ggKF9lcnIpIHtcbiAgICAgICAgICAgICAgLy8gQWxyZWFkeSByZW1vdmVkLlxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgbWV0aG9kOiAnc2lnbmF0dXJlU3Vic2NyaWJlJyxcbiAgICAgICAgdW5zdWJzY3JpYmVNZXRob2Q6ICdzaWduYXR1cmVVbnN1YnNjcmliZScsXG4gICAgICB9LFxuICAgICAgYXJncyxcbiAgICApO1xuICAgIHJldHVybiBjbGllbnRTdWJzY3JpcHRpb25JZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWdpc3RlciBhIGNhbGxiYWNrIHRvIGJlIGludm9rZWQgd2hlbiBhIHRyYW5zYWN0aW9uIGlzXG4gICAqIHJlY2VpdmVkIGFuZC9vciBwcm9jZXNzZWQuXG4gICAqXG4gICAqIEBwYXJhbSBzaWduYXR1cmUgVHJhbnNhY3Rpb24gc2lnbmF0dXJlIHN0cmluZyBpbiBiYXNlIDU4XG4gICAqIEBwYXJhbSBjYWxsYmFjayBGdW5jdGlvbiB0byBpbnZva2Ugb24gc2lnbmF0dXJlIG5vdGlmaWNhdGlvbnNcbiAgICogQHBhcmFtIG9wdGlvbnMgRW5hYmxlIHJlY2VpdmVkIG5vdGlmaWNhdGlvbnMgYW5kIHNldCB0aGUgY29tbWl0bWVudFxuICAgKiAgIGxldmVsIHRoYXQgc2lnbmF0dXJlIG11c3QgcmVhY2ggYmVmb3JlIG5vdGlmaWNhdGlvblxuICAgKiBAcmV0dXJuIHN1YnNjcmlwdGlvbiBpZFxuICAgKi9cbiAgb25TaWduYXR1cmVXaXRoT3B0aW9ucyhcbiAgICBzaWduYXR1cmU6IFRyYW5zYWN0aW9uU2lnbmF0dXJlLFxuICAgIGNhbGxiYWNrOiBTaWduYXR1cmVTdWJzY3JpcHRpb25DYWxsYmFjayxcbiAgICBvcHRpb25zPzogU2lnbmF0dXJlU3Vic2NyaXB0aW9uT3B0aW9ucyxcbiAgKTogQ2xpZW50U3Vic2NyaXB0aW9uSWQge1xuICAgIGNvbnN0IHtjb21taXRtZW50LCAuLi5leHRyYX0gPSB7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgY29tbWl0bWVudDpcbiAgICAgICAgKG9wdGlvbnMgJiYgb3B0aW9ucy5jb21taXRtZW50KSB8fCB0aGlzLl9jb21taXRtZW50IHx8ICdmaW5hbGl6ZWQnLCAvLyBBcHBseSBjb25uZWN0aW9uL3NlcnZlciBkZWZhdWx0LlxuICAgIH07XG4gICAgY29uc3QgYXJncyA9IHRoaXMuX2J1aWxkQXJncyhcbiAgICAgIFtzaWduYXR1cmVdLFxuICAgICAgY29tbWl0bWVudCxcbiAgICAgIHVuZGVmaW5lZCAvKiBlbmNvZGluZyAqLyxcbiAgICAgIGV4dHJhLFxuICAgICk7XG4gICAgY29uc3QgY2xpZW50U3Vic2NyaXB0aW9uSWQgPSB0aGlzLl9tYWtlU3Vic2NyaXB0aW9uKFxuICAgICAge1xuICAgICAgICBjYWxsYmFjazogKG5vdGlmaWNhdGlvbiwgY29udGV4dCkgPT4ge1xuICAgICAgICAgIGNhbGxiYWNrKG5vdGlmaWNhdGlvbiwgY29udGV4dCk7XG4gICAgICAgICAgLy8gU2lnbmF0dXJlcyBzdWJzY3JpcHRpb25zIGFyZSBhdXRvLXJlbW92ZWQgYnkgdGhlIFJQQyBzZXJ2aWNlXG4gICAgICAgICAgLy8gc28gbm8gbmVlZCB0byBleHBsaWNpdGx5IHNlbmQgYW4gdW5zdWJzY3JpYmUgbWVzc2FnZS5cbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgdGhpcy5yZW1vdmVTaWduYXR1cmVMaXN0ZW5lcihjbGllbnRTdWJzY3JpcHRpb25JZCk7XG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZW1wdHlcbiAgICAgICAgICB9IGNhdGNoIChfZXJyKSB7XG4gICAgICAgICAgICAvLyBBbHJlYWR5IHJlbW92ZWQuXG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBtZXRob2Q6ICdzaWduYXR1cmVTdWJzY3JpYmUnLFxuICAgICAgICB1bnN1YnNjcmliZU1ldGhvZDogJ3NpZ25hdHVyZVVuc3Vic2NyaWJlJyxcbiAgICAgIH0sXG4gICAgICBhcmdzLFxuICAgICk7XG4gICAgcmV0dXJuIGNsaWVudFN1YnNjcmlwdGlvbklkO1xuICB9XG5cbiAgLyoqXG4gICAqIERlcmVnaXN0ZXIgYSBzaWduYXR1cmUgbm90aWZpY2F0aW9uIGNhbGxiYWNrXG4gICAqXG4gICAqIEBwYXJhbSBpZCBjbGllbnQgc3Vic2NyaXB0aW9uIGlkIHRvIGRlcmVnaXN0ZXJcbiAgICovXG4gIGFzeW5jIHJlbW92ZVNpZ25hdHVyZUxpc3RlbmVyKFxuICAgIGNsaWVudFN1YnNjcmlwdGlvbklkOiBDbGllbnRTdWJzY3JpcHRpb25JZCxcbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5fdW5zdWJzY3JpYmVDbGllbnRTdWJzY3JpcHRpb24oXG4gICAgICBjbGllbnRTdWJzY3JpcHRpb25JZCxcbiAgICAgICdzaWduYXR1cmUgcmVzdWx0JyxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgX3dzT25Sb290Tm90aWZpY2F0aW9uKG5vdGlmaWNhdGlvbjogT2JqZWN0KSB7XG4gICAgY29uc3Qge3Jlc3VsdCwgc3Vic2NyaXB0aW9ufSA9IGNyZWF0ZShub3RpZmljYXRpb24sIFJvb3ROb3RpZmljYXRpb25SZXN1bHQpO1xuICAgIHRoaXMuX2hhbmRsZVNlcnZlck5vdGlmaWNhdGlvbjxSb290Q2hhbmdlQ2FsbGJhY2s+KHN1YnNjcmlwdGlvbiwgW3Jlc3VsdF0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVyIGEgY2FsbGJhY2sgdG8gYmUgaW52b2tlZCB1cG9uIHJvb3QgY2hhbmdlc1xuICAgKlxuICAgKiBAcGFyYW0gY2FsbGJhY2sgRnVuY3Rpb24gdG8gaW52b2tlIHdoZW5ldmVyIHRoZSByb290IGNoYW5nZXNcbiAgICogQHJldHVybiBzdWJzY3JpcHRpb24gaWRcbiAgICovXG4gIG9uUm9vdENoYW5nZShjYWxsYmFjazogUm9vdENoYW5nZUNhbGxiYWNrKTogQ2xpZW50U3Vic2NyaXB0aW9uSWQge1xuICAgIHJldHVybiB0aGlzLl9tYWtlU3Vic2NyaXB0aW9uKFxuICAgICAge1xuICAgICAgICBjYWxsYmFjayxcbiAgICAgICAgbWV0aG9kOiAncm9vdFN1YnNjcmliZScsXG4gICAgICAgIHVuc3Vic2NyaWJlTWV0aG9kOiAncm9vdFVuc3Vic2NyaWJlJyxcbiAgICAgIH0sXG4gICAgICBbXSAvKiBhcmdzICovLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRGVyZWdpc3RlciBhIHJvb3Qgbm90aWZpY2F0aW9uIGNhbGxiYWNrXG4gICAqXG4gICAqIEBwYXJhbSBpZCBjbGllbnQgc3Vic2NyaXB0aW9uIGlkIHRvIGRlcmVnaXN0ZXJcbiAgICovXG4gIGFzeW5jIHJlbW92ZVJvb3RDaGFuZ2VMaXN0ZW5lcihcbiAgICBjbGllbnRTdWJzY3JpcHRpb25JZDogQ2xpZW50U3Vic2NyaXB0aW9uSWQsXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuX3Vuc3Vic2NyaWJlQ2xpZW50U3Vic2NyaXB0aW9uKFxuICAgICAgY2xpZW50U3Vic2NyaXB0aW9uSWQsXG4gICAgICAncm9vdCBjaGFuZ2UnLFxuICAgICk7XG4gIH1cbn1cbiIsICJpbXBvcnQge2dlbmVyYXRlS2V5cGFpciwgZ2V0UHVibGljS2V5LCBFZDI1NTE5S2V5cGFpcn0gZnJvbSAnLi91dGlscy9lZDI1NTE5JztcbmltcG9ydCB7UHVibGljS2V5fSBmcm9tICcuL3B1YmxpY2tleSc7XG5cbi8qKlxuICogS2V5cGFpciBzaWduZXIgaW50ZXJmYWNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2lnbmVyIHtcbiAgcHVibGljS2V5OiBQdWJsaWNLZXk7XG4gIHNlY3JldEtleTogVWludDhBcnJheTtcbn1cblxuLyoqXG4gKiBBbiBhY2NvdW50IGtleXBhaXIgdXNlZCBmb3Igc2lnbmluZyB0cmFuc2FjdGlvbnMuXG4gKi9cbmV4cG9ydCBjbGFzcyBLZXlwYWlyIHtcbiAgcHJpdmF0ZSBfa2V5cGFpcjogRWQyNTUxOUtleXBhaXI7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBrZXlwYWlyIGluc3RhbmNlLlxuICAgKiBHZW5lcmF0ZSByYW5kb20ga2V5cGFpciBpZiBubyB7QGxpbmsgRWQyNTUxOUtleXBhaXJ9IGlzIHByb3ZpZGVkLlxuICAgKlxuICAgKiBAcGFyYW0ge0VkMjU1MTlLZXlwYWlyfSBrZXlwYWlyIGVkMjU1MTkga2V5cGFpclxuICAgKi9cbiAgY29uc3RydWN0b3Ioa2V5cGFpcj86IEVkMjU1MTlLZXlwYWlyKSB7XG4gICAgdGhpcy5fa2V5cGFpciA9IGtleXBhaXIgPz8gZ2VuZXJhdGVLZXlwYWlyKCk7XG4gIH1cblxuICAvKipcbiAgICogR2VuZXJhdGUgYSBuZXcgcmFuZG9tIGtleXBhaXJcbiAgICpcbiAgICogQHJldHVybnMge0tleXBhaXJ9IEtleXBhaXJcbiAgICovXG4gIHN0YXRpYyBnZW5lcmF0ZSgpOiBLZXlwYWlyIHtcbiAgICByZXR1cm4gbmV3IEtleXBhaXIoZ2VuZXJhdGVLZXlwYWlyKCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIGtleXBhaXIgZnJvbSBhIHJhdyBzZWNyZXQga2V5IGJ5dGUgYXJyYXkuXG4gICAqXG4gICAqIFRoaXMgbWV0aG9kIHNob3VsZCBvbmx5IGJlIHVzZWQgdG8gcmVjcmVhdGUgYSBrZXlwYWlyIGZyb20gYSBwcmV2aW91c2x5XG4gICAqIGdlbmVyYXRlZCBzZWNyZXQga2V5LiBHZW5lcmF0aW5nIGtleXBhaXJzIGZyb20gYSByYW5kb20gc2VlZCBzaG91bGQgYmUgZG9uZVxuICAgKiB3aXRoIHRoZSB7QGxpbmsgS2V5cGFpci5mcm9tU2VlZH0gbWV0aG9kLlxuICAgKlxuICAgKiBAdGhyb3dzIGVycm9yIGlmIHRoZSBwcm92aWRlZCBzZWNyZXQga2V5IGlzIGludmFsaWQgYW5kIHZhbGlkYXRpb24gaXMgbm90IHNraXBwZWQuXG4gICAqXG4gICAqIEBwYXJhbSBzZWNyZXRLZXkgc2VjcmV0IGtleSBieXRlIGFycmF5XG4gICAqIEBwYXJhbSBvcHRpb25zIHNraXAgc2VjcmV0IGtleSB2YWxpZGF0aW9uXG4gICAqXG4gICAqIEByZXR1cm5zIHtLZXlwYWlyfSBLZXlwYWlyXG4gICAqL1xuICBzdGF0aWMgZnJvbVNlY3JldEtleShcbiAgICBzZWNyZXRLZXk6IFVpbnQ4QXJyYXksXG4gICAgb3B0aW9ucz86IHtza2lwVmFsaWRhdGlvbj86IGJvb2xlYW59LFxuICApOiBLZXlwYWlyIHtcbiAgICBpZiAoc2VjcmV0S2V5LmJ5dGVMZW5ndGggIT09IDY0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2JhZCBzZWNyZXQga2V5IHNpemUnKTtcbiAgICB9XG4gICAgY29uc3QgcHVibGljS2V5ID0gc2VjcmV0S2V5LnNsaWNlKDMyLCA2NCk7XG4gICAgaWYgKCFvcHRpb25zIHx8ICFvcHRpb25zLnNraXBWYWxpZGF0aW9uKSB7XG4gICAgICBjb25zdCBwcml2YXRlU2NhbGFyID0gc2VjcmV0S2V5LnNsaWNlKDAsIDMyKTtcbiAgICAgIGNvbnN0IGNvbXB1dGVkUHVibGljS2V5ID0gZ2V0UHVibGljS2V5KHByaXZhdGVTY2FsYXIpO1xuICAgICAgZm9yIChsZXQgaWkgPSAwOyBpaSA8IDMyOyBpaSsrKSB7XG4gICAgICAgIGlmIChwdWJsaWNLZXlbaWldICE9PSBjb21wdXRlZFB1YmxpY0tleVtpaV0pIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3Byb3ZpZGVkIHNlY3JldEtleSBpcyBpbnZhbGlkJyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG5ldyBLZXlwYWlyKHtwdWJsaWNLZXksIHNlY3JldEtleX0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlIGEga2V5cGFpciBmcm9tIGEgMzIgYnl0ZSBzZWVkLlxuICAgKlxuICAgKiBAcGFyYW0gc2VlZCBzZWVkIGJ5dGUgYXJyYXlcbiAgICpcbiAgICogQHJldHVybnMge0tleXBhaXJ9IEtleXBhaXJcbiAgICovXG4gIHN0YXRpYyBmcm9tU2VlZChzZWVkOiBVaW50OEFycmF5KTogS2V5cGFpciB7XG4gICAgY29uc3QgcHVibGljS2V5ID0gZ2V0UHVibGljS2V5KHNlZWQpO1xuICAgIGNvbnN0IHNlY3JldEtleSA9IG5ldyBVaW50OEFycmF5KDY0KTtcbiAgICBzZWNyZXRLZXkuc2V0KHNlZWQpO1xuICAgIHNlY3JldEtleS5zZXQocHVibGljS2V5LCAzMik7XG4gICAgcmV0dXJuIG5ldyBLZXlwYWlyKHtwdWJsaWNLZXksIHNlY3JldEtleX0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBwdWJsaWMga2V5IGZvciB0aGlzIGtleXBhaXJcbiAgICpcbiAgICogQHJldHVybnMge1B1YmxpY0tleX0gUHVibGljS2V5XG4gICAqL1xuICBnZXQgcHVibGljS2V5KCk6IFB1YmxpY0tleSB7XG4gICAgcmV0dXJuIG5ldyBQdWJsaWNLZXkodGhpcy5fa2V5cGFpci5wdWJsaWNLZXkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSByYXcgc2VjcmV0IGtleSBmb3IgdGhpcyBrZXlwYWlyXG4gICAqIEByZXR1cm5zIHtVaW50OEFycmF5fSBTZWNyZXQga2V5IGluIGFuIGFycmF5IG9mIFVpbnQ4IGJ5dGVzXG4gICAqL1xuICBnZXQgc2VjcmV0S2V5KCk6IFVpbnQ4QXJyYXkge1xuICAgIHJldHVybiBuZXcgVWludDhBcnJheSh0aGlzLl9rZXlwYWlyLnNlY3JldEtleSk7XG4gIH1cbn1cbiIsICJpbXBvcnQge3RvQnVmZmVyTEV9IGZyb20gJ2JpZ2ludC1idWZmZXInO1xuaW1wb3J0ICogYXMgQnVmZmVyTGF5b3V0IGZyb20gJ0Bzb2xhbmEvYnVmZmVyLWxheW91dCc7XG5cbmltcG9ydCAqIGFzIExheW91dCBmcm9tICcuLi8uLi9sYXlvdXQnO1xuaW1wb3J0IHtQdWJsaWNLZXl9IGZyb20gJy4uLy4uL3B1YmxpY2tleSc7XG5pbXBvcnQgKiBhcyBiaWdpbnRMYXlvdXQgZnJvbSAnLi4vLi4vdXRpbHMvYmlnaW50JztcbmltcG9ydCB7U3lzdGVtUHJvZ3JhbX0gZnJvbSAnLi4vc3lzdGVtJztcbmltcG9ydCB7VHJhbnNhY3Rpb25JbnN0cnVjdGlvbn0gZnJvbSAnLi4vLi4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHtkZWNvZGVEYXRhLCBlbmNvZGVEYXRhLCBJSW5zdHJ1Y3Rpb25JbnB1dERhdGF9IGZyb20gJy4uLy4uL2luc3RydWN0aW9uJztcblxuZXhwb3J0ICogZnJvbSAnLi9zdGF0ZSc7XG5cbmV4cG9ydCB0eXBlIENyZWF0ZUxvb2t1cFRhYmxlUGFyYW1zID0ge1xuICAvKiogQWNjb3VudCB1c2VkIHRvIGRlcml2ZSBhbmQgY29udHJvbCB0aGUgbmV3IGFkZHJlc3MgbG9va3VwIHRhYmxlLiAqL1xuICBhdXRob3JpdHk6IFB1YmxpY0tleTtcbiAgLyoqIEFjY291bnQgdGhhdCB3aWxsIGZ1bmQgdGhlIG5ldyBhZGRyZXNzIGxvb2t1cCB0YWJsZS4gKi9cbiAgcGF5ZXI6IFB1YmxpY0tleTtcbiAgLyoqIEEgcmVjZW50IHNsb3QgbXVzdCBiZSB1c2VkIGluIHRoZSBkZXJpdmF0aW9uIHBhdGggZm9yIGVhY2ggaW5pdGlhbGl6ZWQgdGFibGUuICovXG4gIHJlY2VudFNsb3Q6IGJpZ2ludCB8IG51bWJlcjtcbn07XG5cbmV4cG9ydCB0eXBlIEZyZWV6ZUxvb2t1cFRhYmxlUGFyYW1zID0ge1xuICAvKiogQWRkcmVzcyBsb29rdXAgdGFibGUgYWNjb3VudCB0byBmcmVlemUuICovXG4gIGxvb2t1cFRhYmxlOiBQdWJsaWNLZXk7XG4gIC8qKiBBY2NvdW50IHdoaWNoIGlzIHRoZSBjdXJyZW50IGF1dGhvcml0eS4gKi9cbiAgYXV0aG9yaXR5OiBQdWJsaWNLZXk7XG59O1xuXG5leHBvcnQgdHlwZSBFeHRlbmRMb29rdXBUYWJsZVBhcmFtcyA9IHtcbiAgLyoqIEFkZHJlc3MgbG9va3VwIHRhYmxlIGFjY291bnQgdG8gZXh0ZW5kLiAqL1xuICBsb29rdXBUYWJsZTogUHVibGljS2V5O1xuICAvKiogQWNjb3VudCB3aGljaCBpcyB0aGUgY3VycmVudCBhdXRob3JpdHkuICovXG4gIGF1dGhvcml0eTogUHVibGljS2V5O1xuICAvKiogQWNjb3VudCB0aGF0IHdpbGwgZnVuZCB0aGUgdGFibGUgcmVhbGxvY2F0aW9uLlxuICAgKiBOb3QgcmVxdWlyZWQgaWYgdGhlIHJlYWxsb2NhdGlvbiBoYXMgYWxyZWFkeSBiZWVuIGZ1bmRlZC4gKi9cbiAgcGF5ZXI/OiBQdWJsaWNLZXk7XG4gIC8qKiBMaXN0IG9mIFB1YmxpYyBLZXlzIHRvIGJlIGFkZGVkIHRvIHRoZSBsb29rdXAgdGFibGUuICovXG4gIGFkZHJlc3NlczogQXJyYXk8UHVibGljS2V5Pjtcbn07XG5cbmV4cG9ydCB0eXBlIERlYWN0aXZhdGVMb29rdXBUYWJsZVBhcmFtcyA9IHtcbiAgLyoqIEFkZHJlc3MgbG9va3VwIHRhYmxlIGFjY291bnQgdG8gZGVhY3RpdmF0ZS4gKi9cbiAgbG9va3VwVGFibGU6IFB1YmxpY0tleTtcbiAgLyoqIEFjY291bnQgd2hpY2ggaXMgdGhlIGN1cnJlbnQgYXV0aG9yaXR5LiAqL1xuICBhdXRob3JpdHk6IFB1YmxpY0tleTtcbn07XG5cbmV4cG9ydCB0eXBlIENsb3NlTG9va3VwVGFibGVQYXJhbXMgPSB7XG4gIC8qKiBBZGRyZXNzIGxvb2t1cCB0YWJsZSBhY2NvdW50IHRvIGNsb3NlLiAqL1xuICBsb29rdXBUYWJsZTogUHVibGljS2V5O1xuICAvKiogQWNjb3VudCB3aGljaCBpcyB0aGUgY3VycmVudCBhdXRob3JpdHkuICovXG4gIGF1dGhvcml0eTogUHVibGljS2V5O1xuICAvKiogUmVjaXBpZW50IG9mIGNsb3NlZCBhY2NvdW50IGxhbXBvcnRzLiAqL1xuICByZWNpcGllbnQ6IFB1YmxpY0tleTtcbn07XG5cbi8qKlxuICogQW4gZW51bWVyYXRpb24gb2YgdmFsaWQgTG9va3VwVGFibGVJbnN0cnVjdGlvblR5cGUnc1xuICovXG5leHBvcnQgdHlwZSBMb29rdXBUYWJsZUluc3RydWN0aW9uVHlwZSA9XG4gIHwgJ0NyZWF0ZUxvb2t1cFRhYmxlJ1xuICB8ICdFeHRlbmRMb29rdXBUYWJsZSdcbiAgfCAnQ2xvc2VMb29rdXBUYWJsZSdcbiAgfCAnRnJlZXplTG9va3VwVGFibGUnXG4gIHwgJ0RlYWN0aXZhdGVMb29rdXBUYWJsZSc7XG5cbnR5cGUgTG9va3VwVGFibGVJbnN0cnVjdGlvbklucHV0RGF0YSA9IHtcbiAgQ3JlYXRlTG9va3VwVGFibGU6IElJbnN0cnVjdGlvbklucHV0RGF0YSAmXG4gICAgUmVhZG9ubHk8e1xuICAgICAgcmVjZW50U2xvdDogYmlnaW50O1xuICAgICAgYnVtcFNlZWQ6IG51bWJlcjtcbiAgICB9PjtcbiAgRnJlZXplTG9va3VwVGFibGU6IElJbnN0cnVjdGlvbklucHV0RGF0YTtcbiAgRXh0ZW5kTG9va3VwVGFibGU6IElJbnN0cnVjdGlvbklucHV0RGF0YSAmXG4gICAgUmVhZG9ubHk8e1xuICAgICAgbnVtYmVyT2ZBZGRyZXNzZXM6IGJpZ2ludDtcbiAgICAgIGFkZHJlc3NlczogQXJyYXk8VWludDhBcnJheT47XG4gICAgfT47XG4gIERlYWN0aXZhdGVMb29rdXBUYWJsZTogSUluc3RydWN0aW9uSW5wdXREYXRhO1xuICBDbG9zZUxvb2t1cFRhYmxlOiBJSW5zdHJ1Y3Rpb25JbnB1dERhdGE7XG59O1xuXG4vKipcbiAqIEFuIGVudW1lcmF0aW9uIG9mIHZhbGlkIGFkZHJlc3MgbG9va3VwIHRhYmxlIEluc3RydWN0aW9uVHlwZSdzXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGNvbnN0IExPT0tVUF9UQUJMRV9JTlNUUlVDVElPTl9MQVlPVVRTID0gT2JqZWN0LmZyZWV6ZSh7XG4gIENyZWF0ZUxvb2t1cFRhYmxlOiB7XG4gICAgaW5kZXg6IDAsXG4gICAgbGF5b3V0OiBCdWZmZXJMYXlvdXQuc3RydWN0PFxuICAgICAgTG9va3VwVGFibGVJbnN0cnVjdGlvbklucHV0RGF0YVsnQ3JlYXRlTG9va3VwVGFibGUnXVxuICAgID4oW1xuICAgICAgQnVmZmVyTGF5b3V0LnUzMignaW5zdHJ1Y3Rpb24nKSxcbiAgICAgIGJpZ2ludExheW91dC51NjQoJ3JlY2VudFNsb3QnKSxcbiAgICAgIEJ1ZmZlckxheW91dC51OCgnYnVtcFNlZWQnKSxcbiAgICBdKSxcbiAgfSxcbiAgRnJlZXplTG9va3VwVGFibGU6IHtcbiAgICBpbmRleDogMSxcbiAgICBsYXlvdXQ6IEJ1ZmZlckxheW91dC5zdHJ1Y3Q8XG4gICAgICBMb29rdXBUYWJsZUluc3RydWN0aW9uSW5wdXREYXRhWydGcmVlemVMb29rdXBUYWJsZSddXG4gICAgPihbQnVmZmVyTGF5b3V0LnUzMignaW5zdHJ1Y3Rpb24nKV0pLFxuICB9LFxuICBFeHRlbmRMb29rdXBUYWJsZToge1xuICAgIGluZGV4OiAyLFxuICAgIGxheW91dDogQnVmZmVyTGF5b3V0LnN0cnVjdDxcbiAgICAgIExvb2t1cFRhYmxlSW5zdHJ1Y3Rpb25JbnB1dERhdGFbJ0V4dGVuZExvb2t1cFRhYmxlJ11cbiAgICA+KFtcbiAgICAgIEJ1ZmZlckxheW91dC51MzIoJ2luc3RydWN0aW9uJyksXG4gICAgICBiaWdpbnRMYXlvdXQudTY0KCksXG4gICAgICBCdWZmZXJMYXlvdXQuc2VxKFxuICAgICAgICBMYXlvdXQucHVibGljS2V5KCksXG4gICAgICAgIEJ1ZmZlckxheW91dC5vZmZzZXQoQnVmZmVyTGF5b3V0LnUzMigpLCAtOCksXG4gICAgICAgICdhZGRyZXNzZXMnLFxuICAgICAgKSxcbiAgICBdKSxcbiAgfSxcbiAgRGVhY3RpdmF0ZUxvb2t1cFRhYmxlOiB7XG4gICAgaW5kZXg6IDMsXG4gICAgbGF5b3V0OiBCdWZmZXJMYXlvdXQuc3RydWN0PFxuICAgICAgTG9va3VwVGFibGVJbnN0cnVjdGlvbklucHV0RGF0YVsnRGVhY3RpdmF0ZUxvb2t1cFRhYmxlJ11cbiAgICA+KFtCdWZmZXJMYXlvdXQudTMyKCdpbnN0cnVjdGlvbicpXSksXG4gIH0sXG4gIENsb3NlTG9va3VwVGFibGU6IHtcbiAgICBpbmRleDogNCxcbiAgICBsYXlvdXQ6IEJ1ZmZlckxheW91dC5zdHJ1Y3Q8XG4gICAgICBMb29rdXBUYWJsZUluc3RydWN0aW9uSW5wdXREYXRhWydDbG9zZUxvb2t1cFRhYmxlJ11cbiAgICA+KFtCdWZmZXJMYXlvdXQudTMyKCdpbnN0cnVjdGlvbicpXSksXG4gIH0sXG59KTtcblxuZXhwb3J0IGNsYXNzIEFkZHJlc3NMb29rdXBUYWJsZUluc3RydWN0aW9uIHtcbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIHN0YXRpYyBkZWNvZGVJbnN0cnVjdGlvblR5cGUoXG4gICAgaW5zdHJ1Y3Rpb246IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24sXG4gICk6IExvb2t1cFRhYmxlSW5zdHJ1Y3Rpb25UeXBlIHtcbiAgICB0aGlzLmNoZWNrUHJvZ3JhbUlkKGluc3RydWN0aW9uLnByb2dyYW1JZCk7XG5cbiAgICBjb25zdCBpbnN0cnVjdGlvblR5cGVMYXlvdXQgPSBCdWZmZXJMYXlvdXQudTMyKCdpbnN0cnVjdGlvbicpO1xuICAgIGNvbnN0IGluZGV4ID0gaW5zdHJ1Y3Rpb25UeXBlTGF5b3V0LmRlY29kZShpbnN0cnVjdGlvbi5kYXRhKTtcblxuICAgIGxldCB0eXBlOiBMb29rdXBUYWJsZUluc3RydWN0aW9uVHlwZSB8IHVuZGVmaW5lZDtcbiAgICBmb3IgKGNvbnN0IFtsYXlvdXRUeXBlLCBsYXlvdXRdIG9mIE9iamVjdC5lbnRyaWVzKFxuICAgICAgTE9PS1VQX1RBQkxFX0lOU1RSVUNUSU9OX0xBWU9VVFMsXG4gICAgKSkge1xuICAgICAgaWYgKChsYXlvdXQgYXMgYW55KS5pbmRleCA9PSBpbmRleCkge1xuICAgICAgICB0eXBlID0gbGF5b3V0VHlwZSBhcyBMb29rdXBUYWJsZUluc3RydWN0aW9uVHlwZTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICAgIGlmICghdHlwZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnSW52YWxpZCBJbnN0cnVjdGlvbi4gU2hvdWxkIGJlIGEgTG9va3VwVGFibGUgSW5zdHJ1Y3Rpb24nLFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHR5cGU7XG4gIH1cblxuICBzdGF0aWMgZGVjb2RlQ3JlYXRlTG9va3VwVGFibGUoXG4gICAgaW5zdHJ1Y3Rpb246IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24sXG4gICk6IENyZWF0ZUxvb2t1cFRhYmxlUGFyYW1zIHtcbiAgICB0aGlzLmNoZWNrUHJvZ3JhbUlkKGluc3RydWN0aW9uLnByb2dyYW1JZCk7XG4gICAgdGhpcy5jaGVja0tleXNMZW5ndGgoaW5zdHJ1Y3Rpb24ua2V5cywgNCk7XG5cbiAgICBjb25zdCB7cmVjZW50U2xvdH0gPSBkZWNvZGVEYXRhKFxuICAgICAgTE9PS1VQX1RBQkxFX0lOU1RSVUNUSU9OX0xBWU9VVFMuQ3JlYXRlTG9va3VwVGFibGUsXG4gICAgICBpbnN0cnVjdGlvbi5kYXRhLFxuICAgICk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgYXV0aG9yaXR5OiBpbnN0cnVjdGlvbi5rZXlzWzFdLnB1YmtleSxcbiAgICAgIHBheWVyOiBpbnN0cnVjdGlvbi5rZXlzWzJdLnB1YmtleSxcbiAgICAgIHJlY2VudFNsb3Q6IE51bWJlcihyZWNlbnRTbG90KSxcbiAgICB9O1xuICB9XG5cbiAgc3RhdGljIGRlY29kZUV4dGVuZExvb2t1cFRhYmxlKFxuICAgIGluc3RydWN0aW9uOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uLFxuICApOiBFeHRlbmRMb29rdXBUYWJsZVBhcmFtcyB7XG4gICAgdGhpcy5jaGVja1Byb2dyYW1JZChpbnN0cnVjdGlvbi5wcm9ncmFtSWQpO1xuICAgIGlmIChpbnN0cnVjdGlvbi5rZXlzLmxlbmd0aCA8IDIpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYGludmFsaWQgaW5zdHJ1Y3Rpb247IGZvdW5kICR7aW5zdHJ1Y3Rpb24ua2V5cy5sZW5ndGh9IGtleXMsIGV4cGVjdGVkIGF0IGxlYXN0IDJgLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCB7YWRkcmVzc2VzfSA9IGRlY29kZURhdGEoXG4gICAgICBMT09LVVBfVEFCTEVfSU5TVFJVQ1RJT05fTEFZT1VUUy5FeHRlbmRMb29rdXBUYWJsZSxcbiAgICAgIGluc3RydWN0aW9uLmRhdGEsXG4gICAgKTtcbiAgICByZXR1cm4ge1xuICAgICAgbG9va3VwVGFibGU6IGluc3RydWN0aW9uLmtleXNbMF0ucHVia2V5LFxuICAgICAgYXV0aG9yaXR5OiBpbnN0cnVjdGlvbi5rZXlzWzFdLnB1YmtleSxcbiAgICAgIHBheWVyOlxuICAgICAgICBpbnN0cnVjdGlvbi5rZXlzLmxlbmd0aCA+IDIgPyBpbnN0cnVjdGlvbi5rZXlzWzJdLnB1YmtleSA6IHVuZGVmaW5lZCxcbiAgICAgIGFkZHJlc3NlczogYWRkcmVzc2VzLm1hcChidWZmZXIgPT4gbmV3IFB1YmxpY0tleShidWZmZXIpKSxcbiAgICB9O1xuICB9XG5cbiAgc3RhdGljIGRlY29kZUNsb3NlTG9va3VwVGFibGUoXG4gICAgaW5zdHJ1Y3Rpb246IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24sXG4gICk6IENsb3NlTG9va3VwVGFibGVQYXJhbXMge1xuICAgIHRoaXMuY2hlY2tQcm9ncmFtSWQoaW5zdHJ1Y3Rpb24ucHJvZ3JhbUlkKTtcbiAgICB0aGlzLmNoZWNrS2V5c0xlbmd0aChpbnN0cnVjdGlvbi5rZXlzLCAzKTtcblxuICAgIHJldHVybiB7XG4gICAgICBsb29rdXBUYWJsZTogaW5zdHJ1Y3Rpb24ua2V5c1swXS5wdWJrZXksXG4gICAgICBhdXRob3JpdHk6IGluc3RydWN0aW9uLmtleXNbMV0ucHVia2V5LFxuICAgICAgcmVjaXBpZW50OiBpbnN0cnVjdGlvbi5rZXlzWzJdLnB1YmtleSxcbiAgICB9O1xuICB9XG5cbiAgc3RhdGljIGRlY29kZUZyZWV6ZUxvb2t1cFRhYmxlKFxuICAgIGluc3RydWN0aW9uOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uLFxuICApOiBGcmVlemVMb29rdXBUYWJsZVBhcmFtcyB7XG4gICAgdGhpcy5jaGVja1Byb2dyYW1JZChpbnN0cnVjdGlvbi5wcm9ncmFtSWQpO1xuICAgIHRoaXMuY2hlY2tLZXlzTGVuZ3RoKGluc3RydWN0aW9uLmtleXMsIDIpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGxvb2t1cFRhYmxlOiBpbnN0cnVjdGlvbi5rZXlzWzBdLnB1YmtleSxcbiAgICAgIGF1dGhvcml0eTogaW5zdHJ1Y3Rpb24ua2V5c1sxXS5wdWJrZXksXG4gICAgfTtcbiAgfVxuXG4gIHN0YXRpYyBkZWNvZGVEZWFjdGl2YXRlTG9va3VwVGFibGUoXG4gICAgaW5zdHJ1Y3Rpb246IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24sXG4gICk6IERlYWN0aXZhdGVMb29rdXBUYWJsZVBhcmFtcyB7XG4gICAgdGhpcy5jaGVja1Byb2dyYW1JZChpbnN0cnVjdGlvbi5wcm9ncmFtSWQpO1xuICAgIHRoaXMuY2hlY2tLZXlzTGVuZ3RoKGluc3RydWN0aW9uLmtleXMsIDIpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGxvb2t1cFRhYmxlOiBpbnN0cnVjdGlvbi5rZXlzWzBdLnB1YmtleSxcbiAgICAgIGF1dGhvcml0eTogaW5zdHJ1Y3Rpb24ua2V5c1sxXS5wdWJrZXksXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHN0YXRpYyBjaGVja1Byb2dyYW1JZChwcm9ncmFtSWQ6IFB1YmxpY0tleSkge1xuICAgIGlmICghcHJvZ3JhbUlkLmVxdWFscyhBZGRyZXNzTG9va3VwVGFibGVQcm9ncmFtLnByb2dyYW1JZCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ2ludmFsaWQgaW5zdHJ1Y3Rpb247IHByb2dyYW1JZCBpcyBub3QgQWRkcmVzc0xvb2t1cFRhYmxlIFByb2dyYW0nLFxuICAgICAgKTtcbiAgICB9XG4gIH1cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgc3RhdGljIGNoZWNrS2V5c0xlbmd0aChrZXlzOiBBcnJheTxhbnk+LCBleHBlY3RlZExlbmd0aDogbnVtYmVyKSB7XG4gICAgaWYgKGtleXMubGVuZ3RoIDwgZXhwZWN0ZWRMZW5ndGgpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYGludmFsaWQgaW5zdHJ1Y3Rpb247IGZvdW5kICR7a2V5cy5sZW5ndGh9IGtleXMsIGV4cGVjdGVkIGF0IGxlYXN0ICR7ZXhwZWN0ZWRMZW5ndGh9YCxcbiAgICAgICk7XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBBZGRyZXNzTG9va3VwVGFibGVQcm9ncmFtIHtcbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIHN0YXRpYyBwcm9ncmFtSWQ6IFB1YmxpY0tleSA9IG5ldyBQdWJsaWNLZXkoXG4gICAgJ0FkZHJlc3NMb29rdXBUYWIxZTExMTExMTExMTExMTExMTExMTExMTExMTEnLFxuICApO1xuXG4gIHN0YXRpYyBjcmVhdGVMb29rdXBUYWJsZShwYXJhbXM6IENyZWF0ZUxvb2t1cFRhYmxlUGFyYW1zKSB7XG4gICAgY29uc3QgW2xvb2t1cFRhYmxlQWRkcmVzcywgYnVtcFNlZWRdID0gUHVibGljS2V5LmZpbmRQcm9ncmFtQWRkcmVzc1N5bmMoXG4gICAgICBbcGFyYW1zLmF1dGhvcml0eS50b0J1ZmZlcigpLCB0b0J1ZmZlckxFKEJpZ0ludChwYXJhbXMucmVjZW50U2xvdCksIDgpXSxcbiAgICAgIHRoaXMucHJvZ3JhbUlkLFxuICAgICk7XG5cbiAgICBjb25zdCB0eXBlID0gTE9PS1VQX1RBQkxFX0lOU1RSVUNUSU9OX0xBWU9VVFMuQ3JlYXRlTG9va3VwVGFibGU7XG4gICAgY29uc3QgZGF0YSA9IGVuY29kZURhdGEodHlwZSwge1xuICAgICAgcmVjZW50U2xvdDogQmlnSW50KHBhcmFtcy5yZWNlbnRTbG90KSxcbiAgICAgIGJ1bXBTZWVkOiBidW1wU2VlZCxcbiAgICB9KTtcblxuICAgIGNvbnN0IGtleXMgPSBbXG4gICAgICB7XG4gICAgICAgIHB1YmtleTogbG9va3VwVGFibGVBZGRyZXNzLFxuICAgICAgICBpc1NpZ25lcjogZmFsc2UsXG4gICAgICAgIGlzV3JpdGFibGU6IHRydWUsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBwdWJrZXk6IHBhcmFtcy5hdXRob3JpdHksXG4gICAgICAgIGlzU2lnbmVyOiB0cnVlLFxuICAgICAgICBpc1dyaXRhYmxlOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHB1YmtleTogcGFyYW1zLnBheWVyLFxuICAgICAgICBpc1NpZ25lcjogdHJ1ZSxcbiAgICAgICAgaXNXcml0YWJsZTogdHJ1ZSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHB1YmtleTogU3lzdGVtUHJvZ3JhbS5wcm9ncmFtSWQsXG4gICAgICAgIGlzU2lnbmVyOiBmYWxzZSxcbiAgICAgICAgaXNXcml0YWJsZTogZmFsc2UsXG4gICAgICB9LFxuICAgIF07XG5cbiAgICByZXR1cm4gW1xuICAgICAgbmV3IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24oe1xuICAgICAgICBwcm9ncmFtSWQ6IHRoaXMucHJvZ3JhbUlkLFxuICAgICAgICBrZXlzOiBrZXlzLFxuICAgICAgICBkYXRhOiBkYXRhLFxuICAgICAgfSksXG4gICAgICBsb29rdXBUYWJsZUFkZHJlc3MsXG4gICAgXSBhcyBbVHJhbnNhY3Rpb25JbnN0cnVjdGlvbiwgUHVibGljS2V5XTtcbiAgfVxuXG4gIHN0YXRpYyBmcmVlemVMb29rdXBUYWJsZShwYXJhbXM6IEZyZWV6ZUxvb2t1cFRhYmxlUGFyYW1zKSB7XG4gICAgY29uc3QgdHlwZSA9IExPT0tVUF9UQUJMRV9JTlNUUlVDVElPTl9MQVlPVVRTLkZyZWV6ZUxvb2t1cFRhYmxlO1xuICAgIGNvbnN0IGRhdGEgPSBlbmNvZGVEYXRhKHR5cGUpO1xuXG4gICAgY29uc3Qga2V5cyA9IFtcbiAgICAgIHtcbiAgICAgICAgcHVia2V5OiBwYXJhbXMubG9va3VwVGFibGUsXG4gICAgICAgIGlzU2lnbmVyOiBmYWxzZSxcbiAgICAgICAgaXNXcml0YWJsZTogdHJ1ZSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHB1YmtleTogcGFyYW1zLmF1dGhvcml0eSxcbiAgICAgICAgaXNTaWduZXI6IHRydWUsXG4gICAgICAgIGlzV3JpdGFibGU6IGZhbHNlLFxuICAgICAgfSxcbiAgICBdO1xuXG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbkluc3RydWN0aW9uKHtcbiAgICAgIHByb2dyYW1JZDogdGhpcy5wcm9ncmFtSWQsXG4gICAgICBrZXlzOiBrZXlzLFxuICAgICAgZGF0YTogZGF0YSxcbiAgICB9KTtcbiAgfVxuXG4gIHN0YXRpYyBleHRlbmRMb29rdXBUYWJsZShwYXJhbXM6IEV4dGVuZExvb2t1cFRhYmxlUGFyYW1zKSB7XG4gICAgY29uc3QgdHlwZSA9IExPT0tVUF9UQUJMRV9JTlNUUlVDVElPTl9MQVlPVVRTLkV4dGVuZExvb2t1cFRhYmxlO1xuICAgIGNvbnN0IGRhdGEgPSBlbmNvZGVEYXRhKHR5cGUsIHtcbiAgICAgIGFkZHJlc3NlczogcGFyYW1zLmFkZHJlc3Nlcy5tYXAoYWRkciA9PiBhZGRyLnRvQnl0ZXMoKSksXG4gICAgfSk7XG5cbiAgICBjb25zdCBrZXlzID0gW1xuICAgICAge1xuICAgICAgICBwdWJrZXk6IHBhcmFtcy5sb29rdXBUYWJsZSxcbiAgICAgICAgaXNTaWduZXI6IGZhbHNlLFxuICAgICAgICBpc1dyaXRhYmxlOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgcHVia2V5OiBwYXJhbXMuYXV0aG9yaXR5LFxuICAgICAgICBpc1NpZ25lcjogdHJ1ZSxcbiAgICAgICAgaXNXcml0YWJsZTogZmFsc2UsXG4gICAgICB9LFxuICAgIF07XG5cbiAgICBpZiAocGFyYW1zLnBheWVyKSB7XG4gICAgICBrZXlzLnB1c2goXG4gICAgICAgIHtcbiAgICAgICAgICBwdWJrZXk6IHBhcmFtcy5wYXllcixcbiAgICAgICAgICBpc1NpZ25lcjogdHJ1ZSxcbiAgICAgICAgICBpc1dyaXRhYmxlOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcHVia2V5OiBTeXN0ZW1Qcm9ncmFtLnByb2dyYW1JZCxcbiAgICAgICAgICBpc1NpZ25lcjogZmFsc2UsXG4gICAgICAgICAgaXNXcml0YWJsZTogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb25JbnN0cnVjdGlvbih7XG4gICAgICBwcm9ncmFtSWQ6IHRoaXMucHJvZ3JhbUlkLFxuICAgICAga2V5czoga2V5cyxcbiAgICAgIGRhdGE6IGRhdGEsXG4gICAgfSk7XG4gIH1cblxuICBzdGF0aWMgZGVhY3RpdmF0ZUxvb2t1cFRhYmxlKHBhcmFtczogRGVhY3RpdmF0ZUxvb2t1cFRhYmxlUGFyYW1zKSB7XG4gICAgY29uc3QgdHlwZSA9IExPT0tVUF9UQUJMRV9JTlNUUlVDVElPTl9MQVlPVVRTLkRlYWN0aXZhdGVMb29rdXBUYWJsZTtcbiAgICBjb25zdCBkYXRhID0gZW5jb2RlRGF0YSh0eXBlKTtcblxuICAgIGNvbnN0IGtleXMgPSBbXG4gICAgICB7XG4gICAgICAgIHB1YmtleTogcGFyYW1zLmxvb2t1cFRhYmxlLFxuICAgICAgICBpc1NpZ25lcjogZmFsc2UsXG4gICAgICAgIGlzV3JpdGFibGU6IHRydWUsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBwdWJrZXk6IHBhcmFtcy5hdXRob3JpdHksXG4gICAgICAgIGlzU2lnbmVyOiB0cnVlLFxuICAgICAgICBpc1dyaXRhYmxlOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgXTtcblxuICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb25JbnN0cnVjdGlvbih7XG4gICAgICBwcm9ncmFtSWQ6IHRoaXMucHJvZ3JhbUlkLFxuICAgICAga2V5czoga2V5cyxcbiAgICAgIGRhdGE6IGRhdGEsXG4gICAgfSk7XG4gIH1cblxuICBzdGF0aWMgY2xvc2VMb29rdXBUYWJsZShwYXJhbXM6IENsb3NlTG9va3VwVGFibGVQYXJhbXMpIHtcbiAgICBjb25zdCB0eXBlID0gTE9PS1VQX1RBQkxFX0lOU1RSVUNUSU9OX0xBWU9VVFMuQ2xvc2VMb29rdXBUYWJsZTtcbiAgICBjb25zdCBkYXRhID0gZW5jb2RlRGF0YSh0eXBlKTtcblxuICAgIGNvbnN0IGtleXMgPSBbXG4gICAgICB7XG4gICAgICAgIHB1YmtleTogcGFyYW1zLmxvb2t1cFRhYmxlLFxuICAgICAgICBpc1NpZ25lcjogZmFsc2UsXG4gICAgICAgIGlzV3JpdGFibGU6IHRydWUsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBwdWJrZXk6IHBhcmFtcy5hdXRob3JpdHksXG4gICAgICAgIGlzU2lnbmVyOiB0cnVlLFxuICAgICAgICBpc1dyaXRhYmxlOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHB1YmtleTogcGFyYW1zLnJlY2lwaWVudCxcbiAgICAgICAgaXNTaWduZXI6IGZhbHNlLFxuICAgICAgICBpc1dyaXRhYmxlOiB0cnVlLFxuICAgICAgfSxcbiAgICBdO1xuXG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbkluc3RydWN0aW9uKHtcbiAgICAgIHByb2dyYW1JZDogdGhpcy5wcm9ncmFtSWQsXG4gICAgICBrZXlzOiBrZXlzLFxuICAgICAgZGF0YTogZGF0YSxcbiAgICB9KTtcbiAgfVxufVxuIiwgImltcG9ydCAqIGFzIEJ1ZmZlckxheW91dCBmcm9tICdAc29sYW5hL2J1ZmZlci1sYXlvdXQnO1xuXG5pbXBvcnQge1xuICBlbmNvZGVEYXRhLFxuICBkZWNvZGVEYXRhLFxuICBJbnN0cnVjdGlvblR5cGUsXG4gIElJbnN0cnVjdGlvbklucHV0RGF0YSxcbn0gZnJvbSAnLi4vaW5zdHJ1Y3Rpb24nO1xuaW1wb3J0IHtQdWJsaWNLZXl9IGZyb20gJy4uL3B1YmxpY2tleSc7XG5pbXBvcnQge1RyYW5zYWN0aW9uSW5zdHJ1Y3Rpb259IGZyb20gJy4uL3RyYW5zYWN0aW9uJztcbmltcG9ydCB7dTY0fSBmcm9tICcuLi91dGlscy9iaWdpbnQnO1xuXG4vKipcbiAqIENvbXB1dGUgQnVkZ2V0IEluc3RydWN0aW9uIGNsYXNzXG4gKi9cbmV4cG9ydCBjbGFzcyBDb21wdXRlQnVkZ2V0SW5zdHJ1Y3Rpb24ge1xuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgLyoqXG4gICAqIERlY29kZSBhIGNvbXB1dGUgYnVkZ2V0IGluc3RydWN0aW9uIGFuZCByZXRyaWV2ZSB0aGUgaW5zdHJ1Y3Rpb24gdHlwZS5cbiAgICovXG4gIHN0YXRpYyBkZWNvZGVJbnN0cnVjdGlvblR5cGUoXG4gICAgaW5zdHJ1Y3Rpb246IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24sXG4gICk6IENvbXB1dGVCdWRnZXRJbnN0cnVjdGlvblR5cGUge1xuICAgIHRoaXMuY2hlY2tQcm9ncmFtSWQoaW5zdHJ1Y3Rpb24ucHJvZ3JhbUlkKTtcblxuICAgIGNvbnN0IGluc3RydWN0aW9uVHlwZUxheW91dCA9IEJ1ZmZlckxheW91dC51OCgnaW5zdHJ1Y3Rpb24nKTtcbiAgICBjb25zdCB0eXBlSW5kZXggPSBpbnN0cnVjdGlvblR5cGVMYXlvdXQuZGVjb2RlKGluc3RydWN0aW9uLmRhdGEpO1xuXG4gICAgbGV0IHR5cGU6IENvbXB1dGVCdWRnZXRJbnN0cnVjdGlvblR5cGUgfCB1bmRlZmluZWQ7XG4gICAgZm9yIChjb25zdCBbaXhUeXBlLCBsYXlvdXRdIG9mIE9iamVjdC5lbnRyaWVzKFxuICAgICAgQ09NUFVURV9CVURHRVRfSU5TVFJVQ1RJT05fTEFZT1VUUyxcbiAgICApKSB7XG4gICAgICBpZiAobGF5b3V0LmluZGV4ID09IHR5cGVJbmRleCkge1xuICAgICAgICB0eXBlID0gaXhUeXBlIGFzIENvbXB1dGVCdWRnZXRJbnN0cnVjdGlvblR5cGU7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICghdHlwZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnSW5zdHJ1Y3Rpb24gdHlwZSBpbmNvcnJlY3Q7IG5vdCBhIENvbXB1dGVCdWRnZXRJbnN0cnVjdGlvbicsXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiB0eXBlO1xuICB9XG5cbiAgLyoqXG4gICAqIERlY29kZSByZXF1ZXN0IHVuaXRzIGNvbXB1dGUgYnVkZ2V0IGluc3RydWN0aW9uIGFuZCByZXRyaWV2ZSB0aGUgaW5zdHJ1Y3Rpb24gcGFyYW1zLlxuICAgKi9cbiAgc3RhdGljIGRlY29kZVJlcXVlc3RVbml0cyhcbiAgICBpbnN0cnVjdGlvbjogVHJhbnNhY3Rpb25JbnN0cnVjdGlvbixcbiAgKTogUmVxdWVzdFVuaXRzUGFyYW1zIHtcbiAgICB0aGlzLmNoZWNrUHJvZ3JhbUlkKGluc3RydWN0aW9uLnByb2dyYW1JZCk7XG4gICAgY29uc3Qge3VuaXRzLCBhZGRpdGlvbmFsRmVlfSA9IGRlY29kZURhdGEoXG4gICAgICBDT01QVVRFX0JVREdFVF9JTlNUUlVDVElPTl9MQVlPVVRTLlJlcXVlc3RVbml0cyxcbiAgICAgIGluc3RydWN0aW9uLmRhdGEsXG4gICAgKTtcbiAgICByZXR1cm4ge3VuaXRzLCBhZGRpdGlvbmFsRmVlfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWNvZGUgcmVxdWVzdCBoZWFwIGZyYW1lIGNvbXB1dGUgYnVkZ2V0IGluc3RydWN0aW9uIGFuZCByZXRyaWV2ZSB0aGUgaW5zdHJ1Y3Rpb24gcGFyYW1zLlxuICAgKi9cbiAgc3RhdGljIGRlY29kZVJlcXVlc3RIZWFwRnJhbWUoXG4gICAgaW5zdHJ1Y3Rpb246IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24sXG4gICk6IFJlcXVlc3RIZWFwRnJhbWVQYXJhbXMge1xuICAgIHRoaXMuY2hlY2tQcm9ncmFtSWQoaW5zdHJ1Y3Rpb24ucHJvZ3JhbUlkKTtcbiAgICBjb25zdCB7Ynl0ZXN9ID0gZGVjb2RlRGF0YShcbiAgICAgIENPTVBVVEVfQlVER0VUX0lOU1RSVUNUSU9OX0xBWU9VVFMuUmVxdWVzdEhlYXBGcmFtZSxcbiAgICAgIGluc3RydWN0aW9uLmRhdGEsXG4gICAgKTtcbiAgICByZXR1cm4ge2J5dGVzfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWNvZGUgc2V0IGNvbXB1dGUgdW5pdCBsaW1pdCBjb21wdXRlIGJ1ZGdldCBpbnN0cnVjdGlvbiBhbmQgcmV0cmlldmUgdGhlIGluc3RydWN0aW9uIHBhcmFtcy5cbiAgICovXG4gIHN0YXRpYyBkZWNvZGVTZXRDb21wdXRlVW5pdExpbWl0KFxuICAgIGluc3RydWN0aW9uOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uLFxuICApOiBTZXRDb21wdXRlVW5pdExpbWl0UGFyYW1zIHtcbiAgICB0aGlzLmNoZWNrUHJvZ3JhbUlkKGluc3RydWN0aW9uLnByb2dyYW1JZCk7XG4gICAgY29uc3Qge3VuaXRzfSA9IGRlY29kZURhdGEoXG4gICAgICBDT01QVVRFX0JVREdFVF9JTlNUUlVDVElPTl9MQVlPVVRTLlNldENvbXB1dGVVbml0TGltaXQsXG4gICAgICBpbnN0cnVjdGlvbi5kYXRhLFxuICAgICk7XG4gICAgcmV0dXJuIHt1bml0c307XG4gIH1cblxuICAvKipcbiAgICogRGVjb2RlIHNldCBjb21wdXRlIHVuaXQgcHJpY2UgY29tcHV0ZSBidWRnZXQgaW5zdHJ1Y3Rpb24gYW5kIHJldHJpZXZlIHRoZSBpbnN0cnVjdGlvbiBwYXJhbXMuXG4gICAqL1xuICBzdGF0aWMgZGVjb2RlU2V0Q29tcHV0ZVVuaXRQcmljZShcbiAgICBpbnN0cnVjdGlvbjogVHJhbnNhY3Rpb25JbnN0cnVjdGlvbixcbiAgKTogU2V0Q29tcHV0ZVVuaXRQcmljZVBhcmFtcyB7XG4gICAgdGhpcy5jaGVja1Byb2dyYW1JZChpbnN0cnVjdGlvbi5wcm9ncmFtSWQpO1xuICAgIGNvbnN0IHttaWNyb0xhbXBvcnRzfSA9IGRlY29kZURhdGEoXG4gICAgICBDT01QVVRFX0JVREdFVF9JTlNUUlVDVElPTl9MQVlPVVRTLlNldENvbXB1dGVVbml0UHJpY2UsXG4gICAgICBpbnN0cnVjdGlvbi5kYXRhLFxuICAgICk7XG4gICAgcmV0dXJuIHttaWNyb0xhbXBvcnRzfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHN0YXRpYyBjaGVja1Byb2dyYW1JZChwcm9ncmFtSWQ6IFB1YmxpY0tleSkge1xuICAgIGlmICghcHJvZ3JhbUlkLmVxdWFscyhDb21wdXRlQnVkZ2V0UHJvZ3JhbS5wcm9ncmFtSWQpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdpbnZhbGlkIGluc3RydWN0aW9uOyBwcm9ncmFtSWQgaXMgbm90IENvbXB1dGVCdWRnZXRQcm9ncmFtJyxcbiAgICAgICk7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogQW4gZW51bWVyYXRpb24gb2YgdmFsaWQgQ29tcHV0ZUJ1ZGdldEluc3RydWN0aW9uVHlwZSdzXG4gKi9cbmV4cG9ydCB0eXBlIENvbXB1dGVCdWRnZXRJbnN0cnVjdGlvblR5cGUgPVxuICAvLyBGSVhNRVxuICAvLyBJdCB3b3VsZCBiZSBwcmVmZXJhYmxlIGZvciB0aGlzIHR5cGUgdG8gYmUgYGtleW9mIENvbXB1dGVCdWRnZXRJbnN0cnVjdGlvbklucHV0RGF0YWBcbiAgLy8gYnV0IFR5cGVkb2MgZG9lcyBub3QgdHJhbnNwaWxlIGBrZXlvZmAgZXhwcmVzc2lvbnMuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vVHlwZVN0cm9uZy90eXBlZG9jL2lzc3Vlcy8xODk0XG4gIHwgJ1JlcXVlc3RVbml0cydcbiAgfCAnUmVxdWVzdEhlYXBGcmFtZSdcbiAgfCAnU2V0Q29tcHV0ZVVuaXRMaW1pdCdcbiAgfCAnU2V0Q29tcHV0ZVVuaXRQcmljZSc7XG5cbnR5cGUgQ29tcHV0ZUJ1ZGdldEluc3RydWN0aW9uSW5wdXREYXRhID0ge1xuICBSZXF1ZXN0VW5pdHM6IElJbnN0cnVjdGlvbklucHV0RGF0YSAmIFJlYWRvbmx5PFJlcXVlc3RVbml0c1BhcmFtcz47XG4gIFJlcXVlc3RIZWFwRnJhbWU6IElJbnN0cnVjdGlvbklucHV0RGF0YSAmIFJlYWRvbmx5PFJlcXVlc3RIZWFwRnJhbWVQYXJhbXM+O1xuICBTZXRDb21wdXRlVW5pdExpbWl0OiBJSW5zdHJ1Y3Rpb25JbnB1dERhdGEgJlxuICAgIFJlYWRvbmx5PFNldENvbXB1dGVVbml0TGltaXRQYXJhbXM+O1xuICBTZXRDb21wdXRlVW5pdFByaWNlOiBJSW5zdHJ1Y3Rpb25JbnB1dERhdGEgJlxuICAgIFJlYWRvbmx5PFNldENvbXB1dGVVbml0UHJpY2VQYXJhbXM+O1xufTtcblxuLyoqXG4gKiBSZXF1ZXN0IHVuaXRzIGluc3RydWN0aW9uIHBhcmFtc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlcXVlc3RVbml0c1BhcmFtcyB7XG4gIC8qKiBVbml0cyB0byByZXF1ZXN0IGZvciB0cmFuc2FjdGlvbi13aWRlIGNvbXB1dGUgKi9cbiAgdW5pdHM6IG51bWJlcjtcbiAgLyoqIFByaW9yaXRpemF0aW9uIGZlZSBsYW1wb3J0cyAqL1xuICBhZGRpdGlvbmFsRmVlOiBudW1iZXI7XG59XG5cbi8qKlxuICogUmVxdWVzdCBoZWFwIGZyYW1lIGluc3RydWN0aW9uIHBhcmFtc1xuICovXG5leHBvcnQgdHlwZSBSZXF1ZXN0SGVhcEZyYW1lUGFyYW1zID0ge1xuICAvKiogUmVxdWVzdGVkIHRyYW5zYWN0aW9uLXdpZGUgcHJvZ3JhbSBoZWFwIHNpemUgaW4gYnl0ZXMuIE11c3QgYmUgbXVsdGlwbGUgb2YgMTAyNC4gQXBwbGllcyB0byBlYWNoIHByb2dyYW0sIGluY2x1ZGluZyBDUElzLiAqL1xuICBieXRlczogbnVtYmVyO1xufTtcblxuLyoqXG4gKiBTZXQgY29tcHV0ZSB1bml0IGxpbWl0IGluc3RydWN0aW9uIHBhcmFtc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFNldENvbXB1dGVVbml0TGltaXRQYXJhbXMge1xuICAvKiogVHJhbnNhY3Rpb24td2lkZSBjb21wdXRlIHVuaXQgbGltaXQgKi9cbiAgdW5pdHM6IG51bWJlcjtcbn1cblxuLyoqXG4gKiBTZXQgY29tcHV0ZSB1bml0IHByaWNlIGluc3RydWN0aW9uIHBhcmFtc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFNldENvbXB1dGVVbml0UHJpY2VQYXJhbXMge1xuICAvKiogVHJhbnNhY3Rpb24gY29tcHV0ZSB1bml0IHByaWNlIHVzZWQgZm9yIHByaW9yaXRpemF0aW9uIGZlZXMgKi9cbiAgbWljcm9MYW1wb3J0czogbnVtYmVyIHwgYmlnaW50O1xufVxuXG4vKipcbiAqIEFuIGVudW1lcmF0aW9uIG9mIHZhbGlkIENvbXB1dGVCdWRnZXQgSW5zdHJ1Y3Rpb25UeXBlJ3NcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgY29uc3QgQ09NUFVURV9CVURHRVRfSU5TVFJVQ1RJT05fTEFZT1VUUyA9IE9iamVjdC5mcmVlemU8e1xuICBbSW5zdHJ1Y3Rpb24gaW4gQ29tcHV0ZUJ1ZGdldEluc3RydWN0aW9uVHlwZV06IEluc3RydWN0aW9uVHlwZTxcbiAgICBDb21wdXRlQnVkZ2V0SW5zdHJ1Y3Rpb25JbnB1dERhdGFbSW5zdHJ1Y3Rpb25dXG4gID47XG59Pih7XG4gIFJlcXVlc3RVbml0czoge1xuICAgIGluZGV4OiAwLFxuICAgIGxheW91dDogQnVmZmVyTGF5b3V0LnN0cnVjdDxcbiAgICAgIENvbXB1dGVCdWRnZXRJbnN0cnVjdGlvbklucHV0RGF0YVsnUmVxdWVzdFVuaXRzJ11cbiAgICA+KFtcbiAgICAgIEJ1ZmZlckxheW91dC51OCgnaW5zdHJ1Y3Rpb24nKSxcbiAgICAgIEJ1ZmZlckxheW91dC51MzIoJ3VuaXRzJyksXG4gICAgICBCdWZmZXJMYXlvdXQudTMyKCdhZGRpdGlvbmFsRmVlJyksXG4gICAgXSksXG4gIH0sXG4gIFJlcXVlc3RIZWFwRnJhbWU6IHtcbiAgICBpbmRleDogMSxcbiAgICBsYXlvdXQ6IEJ1ZmZlckxheW91dC5zdHJ1Y3Q8XG4gICAgICBDb21wdXRlQnVkZ2V0SW5zdHJ1Y3Rpb25JbnB1dERhdGFbJ1JlcXVlc3RIZWFwRnJhbWUnXVxuICAgID4oW0J1ZmZlckxheW91dC51OCgnaW5zdHJ1Y3Rpb24nKSwgQnVmZmVyTGF5b3V0LnUzMignYnl0ZXMnKV0pLFxuICB9LFxuICBTZXRDb21wdXRlVW5pdExpbWl0OiB7XG4gICAgaW5kZXg6IDIsXG4gICAgbGF5b3V0OiBCdWZmZXJMYXlvdXQuc3RydWN0PFxuICAgICAgQ29tcHV0ZUJ1ZGdldEluc3RydWN0aW9uSW5wdXREYXRhWydTZXRDb21wdXRlVW5pdExpbWl0J11cbiAgICA+KFtCdWZmZXJMYXlvdXQudTgoJ2luc3RydWN0aW9uJyksIEJ1ZmZlckxheW91dC51MzIoJ3VuaXRzJyldKSxcbiAgfSxcbiAgU2V0Q29tcHV0ZVVuaXRQcmljZToge1xuICAgIGluZGV4OiAzLFxuICAgIGxheW91dDogQnVmZmVyTGF5b3V0LnN0cnVjdDxcbiAgICAgIENvbXB1dGVCdWRnZXRJbnN0cnVjdGlvbklucHV0RGF0YVsnU2V0Q29tcHV0ZVVuaXRQcmljZSddXG4gICAgPihbQnVmZmVyTGF5b3V0LnU4KCdpbnN0cnVjdGlvbicpLCB1NjQoJ21pY3JvTGFtcG9ydHMnKV0pLFxuICB9LFxufSk7XG5cbi8qKlxuICogRmFjdG9yeSBjbGFzcyBmb3IgdHJhbnNhY3Rpb24gaW5zdHJ1Y3Rpb25zIHRvIGludGVyYWN0IHdpdGggdGhlIENvbXB1dGUgQnVkZ2V0IHByb2dyYW1cbiAqL1xuZXhwb3J0IGNsYXNzIENvbXB1dGVCdWRnZXRQcm9ncmFtIHtcbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIC8qKlxuICAgKiBQdWJsaWMga2V5IHRoYXQgaWRlbnRpZmllcyB0aGUgQ29tcHV0ZSBCdWRnZXQgcHJvZ3JhbVxuICAgKi9cbiAgc3RhdGljIHByb2dyYW1JZDogUHVibGljS2V5ID0gbmV3IFB1YmxpY0tleShcbiAgICAnQ29tcHV0ZUJ1ZGdldDExMTExMTExMTExMTExMTExMTExMTExMTExMTExMScsXG4gICk7XG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIEluc3RlYWQsIGNhbGwge0BsaW5rIHNldENvbXB1dGVVbml0TGltaXR9IGFuZC9vciB7QGxpbmsgc2V0Q29tcHV0ZVVuaXRQcmljZX1cbiAgICovXG4gIHN0YXRpYyByZXF1ZXN0VW5pdHMocGFyYW1zOiBSZXF1ZXN0VW5pdHNQYXJhbXMpOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uIHtcbiAgICBjb25zdCB0eXBlID0gQ09NUFVURV9CVURHRVRfSU5TVFJVQ1RJT05fTEFZT1VUUy5SZXF1ZXN0VW5pdHM7XG4gICAgY29uc3QgZGF0YSA9IGVuY29kZURhdGEodHlwZSwgcGFyYW1zKTtcbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24oe1xuICAgICAga2V5czogW10sXG4gICAgICBwcm9ncmFtSWQ6IHRoaXMucHJvZ3JhbUlkLFxuICAgICAgZGF0YSxcbiAgICB9KTtcbiAgfVxuXG4gIHN0YXRpYyByZXF1ZXN0SGVhcEZyYW1lKFxuICAgIHBhcmFtczogUmVxdWVzdEhlYXBGcmFtZVBhcmFtcyxcbiAgKTogVHJhbnNhY3Rpb25JbnN0cnVjdGlvbiB7XG4gICAgY29uc3QgdHlwZSA9IENPTVBVVEVfQlVER0VUX0lOU1RSVUNUSU9OX0xBWU9VVFMuUmVxdWVzdEhlYXBGcmFtZTtcbiAgICBjb25zdCBkYXRhID0gZW5jb2RlRGF0YSh0eXBlLCBwYXJhbXMpO1xuICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb25JbnN0cnVjdGlvbih7XG4gICAgICBrZXlzOiBbXSxcbiAgICAgIHByb2dyYW1JZDogdGhpcy5wcm9ncmFtSWQsXG4gICAgICBkYXRhLFxuICAgIH0pO1xuICB9XG5cbiAgc3RhdGljIHNldENvbXB1dGVVbml0TGltaXQoXG4gICAgcGFyYW1zOiBTZXRDb21wdXRlVW5pdExpbWl0UGFyYW1zLFxuICApOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uIHtcbiAgICBjb25zdCB0eXBlID0gQ09NUFVURV9CVURHRVRfSU5TVFJVQ1RJT05fTEFZT1VUUy5TZXRDb21wdXRlVW5pdExpbWl0O1xuICAgIGNvbnN0IGRhdGEgPSBlbmNvZGVEYXRhKHR5cGUsIHBhcmFtcyk7XG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbkluc3RydWN0aW9uKHtcbiAgICAgIGtleXM6IFtdLFxuICAgICAgcHJvZ3JhbUlkOiB0aGlzLnByb2dyYW1JZCxcbiAgICAgIGRhdGEsXG4gICAgfSk7XG4gIH1cblxuICBzdGF0aWMgc2V0Q29tcHV0ZVVuaXRQcmljZShcbiAgICBwYXJhbXM6IFNldENvbXB1dGVVbml0UHJpY2VQYXJhbXMsXG4gICk6IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24ge1xuICAgIGNvbnN0IHR5cGUgPSBDT01QVVRFX0JVREdFVF9JTlNUUlVDVElPTl9MQVlPVVRTLlNldENvbXB1dGVVbml0UHJpY2U7XG4gICAgY29uc3QgZGF0YSA9IGVuY29kZURhdGEodHlwZSwge1xuICAgICAgbWljcm9MYW1wb3J0czogQmlnSW50KHBhcmFtcy5taWNyb0xhbXBvcnRzKSxcbiAgICB9KTtcbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24oe1xuICAgICAga2V5czogW10sXG4gICAgICBwcm9ncmFtSWQ6IHRoaXMucHJvZ3JhbUlkLFxuICAgICAgZGF0YSxcbiAgICB9KTtcbiAgfVxufVxuIiwgImltcG9ydCB7QnVmZmVyfSBmcm9tICdidWZmZXInO1xuaW1wb3J0ICogYXMgQnVmZmVyTGF5b3V0IGZyb20gJ0Bzb2xhbmEvYnVmZmVyLWxheW91dCc7XG5cbmltcG9ydCB7S2V5cGFpcn0gZnJvbSAnLi4va2V5cGFpcic7XG5pbXBvcnQge1B1YmxpY0tleX0gZnJvbSAnLi4vcHVibGlja2V5JztcbmltcG9ydCB7VHJhbnNhY3Rpb25JbnN0cnVjdGlvbn0gZnJvbSAnLi4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IGFzc2VydCBmcm9tICcuLi91dGlscy9hc3NlcnQnO1xuaW1wb3J0IHtzaWdufSBmcm9tICcuLi91dGlscy9lZDI1NTE5JztcblxuY29uc3QgUFJJVkFURV9LRVlfQllURVMgPSA2NDtcbmNvbnN0IFBVQkxJQ19LRVlfQllURVMgPSAzMjtcbmNvbnN0IFNJR05BVFVSRV9CWVRFUyA9IDY0O1xuXG4vKipcbiAqIFBhcmFtcyBmb3IgY3JlYXRpbmcgYW4gZWQyNTUxOSBpbnN0cnVjdGlvbiB1c2luZyBhIHB1YmxpYyBrZXlcbiAqL1xuZXhwb3J0IHR5cGUgQ3JlYXRlRWQyNTUxOUluc3RydWN0aW9uV2l0aFB1YmxpY0tleVBhcmFtcyA9IHtcbiAgcHVibGljS2V5OiBVaW50OEFycmF5O1xuICBtZXNzYWdlOiBVaW50OEFycmF5O1xuICBzaWduYXR1cmU6IFVpbnQ4QXJyYXk7XG4gIGluc3RydWN0aW9uSW5kZXg/OiBudW1iZXI7XG59O1xuXG4vKipcbiAqIFBhcmFtcyBmb3IgY3JlYXRpbmcgYW4gZWQyNTUxOSBpbnN0cnVjdGlvbiB1c2luZyBhIHByaXZhdGUga2V5XG4gKi9cbmV4cG9ydCB0eXBlIENyZWF0ZUVkMjU1MTlJbnN0cnVjdGlvbldpdGhQcml2YXRlS2V5UGFyYW1zID0ge1xuICBwcml2YXRlS2V5OiBVaW50OEFycmF5O1xuICBtZXNzYWdlOiBVaW50OEFycmF5O1xuICBpbnN0cnVjdGlvbkluZGV4PzogbnVtYmVyO1xufTtcblxuY29uc3QgRUQyNTUxOV9JTlNUUlVDVElPTl9MQVlPVVQgPSBCdWZmZXJMYXlvdXQuc3RydWN0PFxuICBSZWFkb25seTx7XG4gICAgbWVzc2FnZURhdGFPZmZzZXQ6IG51bWJlcjtcbiAgICBtZXNzYWdlRGF0YVNpemU6IG51bWJlcjtcbiAgICBtZXNzYWdlSW5zdHJ1Y3Rpb25JbmRleDogbnVtYmVyO1xuICAgIG51bVNpZ25hdHVyZXM6IG51bWJlcjtcbiAgICBwYWRkaW5nOiBudW1iZXI7XG4gICAgcHVibGljS2V5SW5zdHJ1Y3Rpb25JbmRleDogbnVtYmVyO1xuICAgIHB1YmxpY0tleU9mZnNldDogbnVtYmVyO1xuICAgIHNpZ25hdHVyZUluc3RydWN0aW9uSW5kZXg6IG51bWJlcjtcbiAgICBzaWduYXR1cmVPZmZzZXQ6IG51bWJlcjtcbiAgfT5cbj4oW1xuICBCdWZmZXJMYXlvdXQudTgoJ251bVNpZ25hdHVyZXMnKSxcbiAgQnVmZmVyTGF5b3V0LnU4KCdwYWRkaW5nJyksXG4gIEJ1ZmZlckxheW91dC51MTYoJ3NpZ25hdHVyZU9mZnNldCcpLFxuICBCdWZmZXJMYXlvdXQudTE2KCdzaWduYXR1cmVJbnN0cnVjdGlvbkluZGV4JyksXG4gIEJ1ZmZlckxheW91dC51MTYoJ3B1YmxpY0tleU9mZnNldCcpLFxuICBCdWZmZXJMYXlvdXQudTE2KCdwdWJsaWNLZXlJbnN0cnVjdGlvbkluZGV4JyksXG4gIEJ1ZmZlckxheW91dC51MTYoJ21lc3NhZ2VEYXRhT2Zmc2V0JyksXG4gIEJ1ZmZlckxheW91dC51MTYoJ21lc3NhZ2VEYXRhU2l6ZScpLFxuICBCdWZmZXJMYXlvdXQudTE2KCdtZXNzYWdlSW5zdHJ1Y3Rpb25JbmRleCcpLFxuXSk7XG5cbmV4cG9ydCBjbGFzcyBFZDI1NTE5UHJvZ3JhbSB7XG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICAvKipcbiAgICogUHVibGljIGtleSB0aGF0IGlkZW50aWZpZXMgdGhlIGVkMjU1MTkgcHJvZ3JhbVxuICAgKi9cbiAgc3RhdGljIHByb2dyYW1JZDogUHVibGljS2V5ID0gbmV3IFB1YmxpY0tleShcbiAgICAnRWQyNTUxOVNpZ1ZlcmlmeTExMTExMTExMTExMTExMTExMTExMTExMTExMScsXG4gICk7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhbiBlZDI1NTE5IGluc3RydWN0aW9uIHdpdGggYSBwdWJsaWMga2V5IGFuZCBzaWduYXR1cmUuIFRoZVxuICAgKiBwdWJsaWMga2V5IG11c3QgYmUgYSBidWZmZXIgdGhhdCBpcyAzMiBieXRlcyBsb25nLCBhbmQgdGhlIHNpZ25hdHVyZVxuICAgKiBtdXN0IGJlIGEgYnVmZmVyIG9mIDY0IGJ5dGVzLlxuICAgKi9cbiAgc3RhdGljIGNyZWF0ZUluc3RydWN0aW9uV2l0aFB1YmxpY0tleShcbiAgICBwYXJhbXM6IENyZWF0ZUVkMjU1MTlJbnN0cnVjdGlvbldpdGhQdWJsaWNLZXlQYXJhbXMsXG4gICk6IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24ge1xuICAgIGNvbnN0IHtwdWJsaWNLZXksIG1lc3NhZ2UsIHNpZ25hdHVyZSwgaW5zdHJ1Y3Rpb25JbmRleH0gPSBwYXJhbXM7XG5cbiAgICBhc3NlcnQoXG4gICAgICBwdWJsaWNLZXkubGVuZ3RoID09PSBQVUJMSUNfS0VZX0JZVEVTLFxuICAgICAgYFB1YmxpYyBLZXkgbXVzdCBiZSAke1BVQkxJQ19LRVlfQllURVN9IGJ5dGVzIGJ1dCByZWNlaXZlZCAke3B1YmxpY0tleS5sZW5ndGh9IGJ5dGVzYCxcbiAgICApO1xuXG4gICAgYXNzZXJ0KFxuICAgICAgc2lnbmF0dXJlLmxlbmd0aCA9PT0gU0lHTkFUVVJFX0JZVEVTLFxuICAgICAgYFNpZ25hdHVyZSBtdXN0IGJlICR7U0lHTkFUVVJFX0JZVEVTfSBieXRlcyBidXQgcmVjZWl2ZWQgJHtzaWduYXR1cmUubGVuZ3RofSBieXRlc2AsXG4gICAgKTtcblxuICAgIGNvbnN0IHB1YmxpY0tleU9mZnNldCA9IEVEMjU1MTlfSU5TVFJVQ1RJT05fTEFZT1VULnNwYW47XG4gICAgY29uc3Qgc2lnbmF0dXJlT2Zmc2V0ID0gcHVibGljS2V5T2Zmc2V0ICsgcHVibGljS2V5Lmxlbmd0aDtcbiAgICBjb25zdCBtZXNzYWdlRGF0YU9mZnNldCA9IHNpZ25hdHVyZU9mZnNldCArIHNpZ25hdHVyZS5sZW5ndGg7XG4gICAgY29uc3QgbnVtU2lnbmF0dXJlcyA9IDE7XG5cbiAgICBjb25zdCBpbnN0cnVjdGlvbkRhdGEgPSBCdWZmZXIuYWxsb2MobWVzc2FnZURhdGFPZmZzZXQgKyBtZXNzYWdlLmxlbmd0aCk7XG5cbiAgICBjb25zdCBpbmRleCA9XG4gICAgICBpbnN0cnVjdGlvbkluZGV4ID09IG51bGxcbiAgICAgICAgPyAweGZmZmYgLy8gQW4gaW5kZXggb2YgYHUxNjo6TUFYYCBtYWtlcyBpdCBkZWZhdWx0IHRvIHRoZSBjdXJyZW50IGluc3RydWN0aW9uLlxuICAgICAgICA6IGluc3RydWN0aW9uSW5kZXg7XG5cbiAgICBFRDI1NTE5X0lOU1RSVUNUSU9OX0xBWU9VVC5lbmNvZGUoXG4gICAgICB7XG4gICAgICAgIG51bVNpZ25hdHVyZXMsXG4gICAgICAgIHBhZGRpbmc6IDAsXG4gICAgICAgIHNpZ25hdHVyZU9mZnNldCxcbiAgICAgICAgc2lnbmF0dXJlSW5zdHJ1Y3Rpb25JbmRleDogaW5kZXgsXG4gICAgICAgIHB1YmxpY0tleU9mZnNldCxcbiAgICAgICAgcHVibGljS2V5SW5zdHJ1Y3Rpb25JbmRleDogaW5kZXgsXG4gICAgICAgIG1lc3NhZ2VEYXRhT2Zmc2V0LFxuICAgICAgICBtZXNzYWdlRGF0YVNpemU6IG1lc3NhZ2UubGVuZ3RoLFxuICAgICAgICBtZXNzYWdlSW5zdHJ1Y3Rpb25JbmRleDogaW5kZXgsXG4gICAgICB9LFxuICAgICAgaW5zdHJ1Y3Rpb25EYXRhLFxuICAgICk7XG5cbiAgICBpbnN0cnVjdGlvbkRhdGEuZmlsbChwdWJsaWNLZXksIHB1YmxpY0tleU9mZnNldCk7XG4gICAgaW5zdHJ1Y3Rpb25EYXRhLmZpbGwoc2lnbmF0dXJlLCBzaWduYXR1cmVPZmZzZXQpO1xuICAgIGluc3RydWN0aW9uRGF0YS5maWxsKG1lc3NhZ2UsIG1lc3NhZ2VEYXRhT2Zmc2V0KTtcblxuICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb25JbnN0cnVjdGlvbih7XG4gICAgICBrZXlzOiBbXSxcbiAgICAgIHByb2dyYW1JZDogRWQyNTUxOVByb2dyYW0ucHJvZ3JhbUlkLFxuICAgICAgZGF0YTogaW5zdHJ1Y3Rpb25EYXRhLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhbiBlZDI1NTE5IGluc3RydWN0aW9uIHdpdGggYSBwcml2YXRlIGtleS4gVGhlIHByaXZhdGUga2V5XG4gICAqIG11c3QgYmUgYSBidWZmZXIgdGhhdCBpcyA2NCBieXRlcyBsb25nLlxuICAgKi9cbiAgc3RhdGljIGNyZWF0ZUluc3RydWN0aW9uV2l0aFByaXZhdGVLZXkoXG4gICAgcGFyYW1zOiBDcmVhdGVFZDI1NTE5SW5zdHJ1Y3Rpb25XaXRoUHJpdmF0ZUtleVBhcmFtcyxcbiAgKTogVHJhbnNhY3Rpb25JbnN0cnVjdGlvbiB7XG4gICAgY29uc3Qge3ByaXZhdGVLZXksIG1lc3NhZ2UsIGluc3RydWN0aW9uSW5kZXh9ID0gcGFyYW1zO1xuXG4gICAgYXNzZXJ0KFxuICAgICAgcHJpdmF0ZUtleS5sZW5ndGggPT09IFBSSVZBVEVfS0VZX0JZVEVTLFxuICAgICAgYFByaXZhdGUga2V5IG11c3QgYmUgJHtQUklWQVRFX0tFWV9CWVRFU30gYnl0ZXMgYnV0IHJlY2VpdmVkICR7cHJpdmF0ZUtleS5sZW5ndGh9IGJ5dGVzYCxcbiAgICApO1xuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGtleXBhaXIgPSBLZXlwYWlyLmZyb21TZWNyZXRLZXkocHJpdmF0ZUtleSk7XG4gICAgICBjb25zdCBwdWJsaWNLZXkgPSBrZXlwYWlyLnB1YmxpY0tleS50b0J5dGVzKCk7XG4gICAgICBjb25zdCBzaWduYXR1cmUgPSBzaWduKG1lc3NhZ2UsIGtleXBhaXIuc2VjcmV0S2V5KTtcblxuICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlSW5zdHJ1Y3Rpb25XaXRoUHVibGljS2V5KHtcbiAgICAgICAgcHVibGljS2V5LFxuICAgICAgICBtZXNzYWdlLFxuICAgICAgICBzaWduYXR1cmUsXG4gICAgICAgIGluc3RydWN0aW9uSW5kZXgsXG4gICAgICB9KTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBFcnJvciBjcmVhdGluZyBpbnN0cnVjdGlvbjsgJHtlcnJvcn1gKTtcbiAgICB9XG4gIH1cbn1cbiIsICJpbXBvcnQge3NlY3AyNTZrMX0gZnJvbSAnQG5vYmxlL2N1cnZlcy9zZWNwMjU2azEnO1xuXG5leHBvcnQgY29uc3QgZWNkc2FTaWduID0gKFxuICBtc2dIYXNoOiBQYXJhbWV0ZXJzPHR5cGVvZiBzZWNwMjU2azEuc2lnbj5bMF0sXG4gIHByaXZLZXk6IFBhcmFtZXRlcnM8dHlwZW9mIHNlY3AyNTZrMS5zaWduPlsxXSxcbikgPT4ge1xuICBjb25zdCBzaWduYXR1cmUgPSBzZWNwMjU2azEuc2lnbihtc2dIYXNoLCBwcml2S2V5KTtcbiAgcmV0dXJuIFtzaWduYXR1cmUudG9Db21wYWN0UmF3Qnl0ZXMoKSwgc2lnbmF0dXJlLnJlY292ZXJ5IV0gYXMgY29uc3Q7XG59O1xuZXhwb3J0IGNvbnN0IGlzVmFsaWRQcml2YXRlS2V5ID0gc2VjcDI1NmsxLnV0aWxzLmlzVmFsaWRQcml2YXRlS2V5O1xuZXhwb3J0IGNvbnN0IHB1YmxpY0tleUNyZWF0ZSA9IHNlY3AyNTZrMS5nZXRQdWJsaWNLZXk7XG4iLCAiaW1wb3J0IHtCdWZmZXJ9IGZyb20gJ2J1ZmZlcic7XG5pbXBvcnQgKiBhcyBCdWZmZXJMYXlvdXQgZnJvbSAnQHNvbGFuYS9idWZmZXItbGF5b3V0JztcbmltcG9ydCB7a2VjY2FrXzI1Nn0gZnJvbSAnQG5vYmxlL2hhc2hlcy9zaGEzJztcblxuaW1wb3J0IHtQdWJsaWNLZXl9IGZyb20gJy4uL3B1YmxpY2tleSc7XG5pbXBvcnQge1RyYW5zYWN0aW9uSW5zdHJ1Y3Rpb259IGZyb20gJy4uL3RyYW5zYWN0aW9uJztcbmltcG9ydCBhc3NlcnQgZnJvbSAnLi4vdXRpbHMvYXNzZXJ0JztcbmltcG9ydCB7cHVibGljS2V5Q3JlYXRlLCBlY2RzYVNpZ259IGZyb20gJy4uL3V0aWxzL3NlY3AyNTZrMSc7XG5pbXBvcnQge3RvQnVmZmVyfSBmcm9tICcuLi91dGlscy90by1idWZmZXInO1xuXG5jb25zdCBQUklWQVRFX0tFWV9CWVRFUyA9IDMyO1xuY29uc3QgRVRIRVJFVU1fQUREUkVTU19CWVRFUyA9IDIwO1xuY29uc3QgUFVCTElDX0tFWV9CWVRFUyA9IDY0O1xuY29uc3QgU0lHTkFUVVJFX09GRlNFVFNfU0VSSUFMSVpFRF9TSVpFID0gMTE7XG5cbi8qKlxuICogUGFyYW1zIGZvciBjcmVhdGluZyBhbiBzZWNwMjU2azEgaW5zdHJ1Y3Rpb24gdXNpbmcgYSBwdWJsaWMga2V5XG4gKi9cbmV4cG9ydCB0eXBlIENyZWF0ZVNlY3AyNTZrMUluc3RydWN0aW9uV2l0aFB1YmxpY0tleVBhcmFtcyA9IHtcbiAgcHVibGljS2V5OiBCdWZmZXIgfCBVaW50OEFycmF5IHwgQXJyYXk8bnVtYmVyPjtcbiAgbWVzc2FnZTogQnVmZmVyIHwgVWludDhBcnJheSB8IEFycmF5PG51bWJlcj47XG4gIHNpZ25hdHVyZTogQnVmZmVyIHwgVWludDhBcnJheSB8IEFycmF5PG51bWJlcj47XG4gIHJlY292ZXJ5SWQ6IG51bWJlcjtcbiAgaW5zdHJ1Y3Rpb25JbmRleD86IG51bWJlcjtcbn07XG5cbi8qKlxuICogUGFyYW1zIGZvciBjcmVhdGluZyBhbiBzZWNwMjU2azEgaW5zdHJ1Y3Rpb24gdXNpbmcgYW4gRXRoZXJldW0gYWRkcmVzc1xuICovXG5leHBvcnQgdHlwZSBDcmVhdGVTZWNwMjU2azFJbnN0cnVjdGlvbldpdGhFdGhBZGRyZXNzUGFyYW1zID0ge1xuICBldGhBZGRyZXNzOiBCdWZmZXIgfCBVaW50OEFycmF5IHwgQXJyYXk8bnVtYmVyPiB8IHN0cmluZztcbiAgbWVzc2FnZTogQnVmZmVyIHwgVWludDhBcnJheSB8IEFycmF5PG51bWJlcj47XG4gIHNpZ25hdHVyZTogQnVmZmVyIHwgVWludDhBcnJheSB8IEFycmF5PG51bWJlcj47XG4gIHJlY292ZXJ5SWQ6IG51bWJlcjtcbiAgaW5zdHJ1Y3Rpb25JbmRleD86IG51bWJlcjtcbn07XG5cbi8qKlxuICogUGFyYW1zIGZvciBjcmVhdGluZyBhbiBzZWNwMjU2azEgaW5zdHJ1Y3Rpb24gdXNpbmcgYSBwcml2YXRlIGtleVxuICovXG5leHBvcnQgdHlwZSBDcmVhdGVTZWNwMjU2azFJbnN0cnVjdGlvbldpdGhQcml2YXRlS2V5UGFyYW1zID0ge1xuICBwcml2YXRlS2V5OiBCdWZmZXIgfCBVaW50OEFycmF5IHwgQXJyYXk8bnVtYmVyPjtcbiAgbWVzc2FnZTogQnVmZmVyIHwgVWludDhBcnJheSB8IEFycmF5PG51bWJlcj47XG4gIGluc3RydWN0aW9uSW5kZXg/OiBudW1iZXI7XG59O1xuXG5jb25zdCBTRUNQMjU2SzFfSU5TVFJVQ1RJT05fTEFZT1VUID0gQnVmZmVyTGF5b3V0LnN0cnVjdDxcbiAgUmVhZG9ubHk8e1xuICAgIGV0aEFkZHJlc3M6IFVpbnQ4QXJyYXk7XG4gICAgZXRoQWRkcmVzc0luc3RydWN0aW9uSW5kZXg6IG51bWJlcjtcbiAgICBldGhBZGRyZXNzT2Zmc2V0OiBudW1iZXI7XG4gICAgbWVzc2FnZURhdGFPZmZzZXQ6IG51bWJlcjtcbiAgICBtZXNzYWdlRGF0YVNpemU6IG51bWJlcjtcbiAgICBtZXNzYWdlSW5zdHJ1Y3Rpb25JbmRleDogbnVtYmVyO1xuICAgIG51bVNpZ25hdHVyZXM6IG51bWJlcjtcbiAgICByZWNvdmVyeUlkOiBudW1iZXI7XG4gICAgc2lnbmF0dXJlOiBVaW50OEFycmF5O1xuICAgIHNpZ25hdHVyZUluc3RydWN0aW9uSW5kZXg6IG51bWJlcjtcbiAgICBzaWduYXR1cmVPZmZzZXQ6IG51bWJlcjtcbiAgfT5cbj4oW1xuICBCdWZmZXJMYXlvdXQudTgoJ251bVNpZ25hdHVyZXMnKSxcbiAgQnVmZmVyTGF5b3V0LnUxNignc2lnbmF0dXJlT2Zmc2V0JyksXG4gIEJ1ZmZlckxheW91dC51OCgnc2lnbmF0dXJlSW5zdHJ1Y3Rpb25JbmRleCcpLFxuICBCdWZmZXJMYXlvdXQudTE2KCdldGhBZGRyZXNzT2Zmc2V0JyksXG4gIEJ1ZmZlckxheW91dC51OCgnZXRoQWRkcmVzc0luc3RydWN0aW9uSW5kZXgnKSxcbiAgQnVmZmVyTGF5b3V0LnUxNignbWVzc2FnZURhdGFPZmZzZXQnKSxcbiAgQnVmZmVyTGF5b3V0LnUxNignbWVzc2FnZURhdGFTaXplJyksXG4gIEJ1ZmZlckxheW91dC51OCgnbWVzc2FnZUluc3RydWN0aW9uSW5kZXgnKSxcbiAgQnVmZmVyTGF5b3V0LmJsb2IoMjAsICdldGhBZGRyZXNzJyksXG4gIEJ1ZmZlckxheW91dC5ibG9iKDY0LCAnc2lnbmF0dXJlJyksXG4gIEJ1ZmZlckxheW91dC51OCgncmVjb3ZlcnlJZCcpLFxuXSk7XG5cbmV4cG9ydCBjbGFzcyBTZWNwMjU2azFQcm9ncmFtIHtcbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIC8qKlxuICAgKiBQdWJsaWMga2V5IHRoYXQgaWRlbnRpZmllcyB0aGUgc2VjcDI1NmsxIHByb2dyYW1cbiAgICovXG4gIHN0YXRpYyBwcm9ncmFtSWQ6IFB1YmxpY0tleSA9IG5ldyBQdWJsaWNLZXkoXG4gICAgJ0tlY2Nha1NlY3AyNTZrMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEnLFxuICApO1xuXG4gIC8qKlxuICAgKiBDb25zdHJ1Y3QgYW4gRXRoZXJldW0gYWRkcmVzcyBmcm9tIGEgc2VjcDI1NmsxIHB1YmxpYyBrZXkgYnVmZmVyLlxuICAgKiBAcGFyYW0ge0J1ZmZlcn0gcHVibGljS2V5IGEgNjQgYnl0ZSBzZWNwMjU2azEgcHVibGljIGtleSBidWZmZXJcbiAgICovXG4gIHN0YXRpYyBwdWJsaWNLZXlUb0V0aEFkZHJlc3MoXG4gICAgcHVibGljS2V5OiBCdWZmZXIgfCBVaW50OEFycmF5IHwgQXJyYXk8bnVtYmVyPixcbiAgKTogQnVmZmVyIHtcbiAgICBhc3NlcnQoXG4gICAgICBwdWJsaWNLZXkubGVuZ3RoID09PSBQVUJMSUNfS0VZX0JZVEVTLFxuICAgICAgYFB1YmxpYyBrZXkgbXVzdCBiZSAke1BVQkxJQ19LRVlfQllURVN9IGJ5dGVzIGJ1dCByZWNlaXZlZCAke3B1YmxpY0tleS5sZW5ndGh9IGJ5dGVzYCxcbiAgICApO1xuXG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBCdWZmZXIuZnJvbShrZWNjYWtfMjU2KHRvQnVmZmVyKHB1YmxpY0tleSkpKS5zbGljZShcbiAgICAgICAgLUVUSEVSRVVNX0FERFJFU1NfQllURVMsXG4gICAgICApO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEVycm9yIGNvbnN0cnVjdGluZyBFdGhlcmV1bSBhZGRyZXNzOiAke2Vycm9yfWApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYW4gc2VjcDI1NmsxIGluc3RydWN0aW9uIHdpdGggYSBwdWJsaWMga2V5LiBUaGUgcHVibGljIGtleVxuICAgKiBtdXN0IGJlIGEgYnVmZmVyIHRoYXQgaXMgNjQgYnl0ZXMgbG9uZy5cbiAgICovXG4gIHN0YXRpYyBjcmVhdGVJbnN0cnVjdGlvbldpdGhQdWJsaWNLZXkoXG4gICAgcGFyYW1zOiBDcmVhdGVTZWNwMjU2azFJbnN0cnVjdGlvbldpdGhQdWJsaWNLZXlQYXJhbXMsXG4gICk6IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24ge1xuICAgIGNvbnN0IHtwdWJsaWNLZXksIG1lc3NhZ2UsIHNpZ25hdHVyZSwgcmVjb3ZlcnlJZCwgaW5zdHJ1Y3Rpb25JbmRleH0gPVxuICAgICAgcGFyYW1zO1xuICAgIHJldHVybiBTZWNwMjU2azFQcm9ncmFtLmNyZWF0ZUluc3RydWN0aW9uV2l0aEV0aEFkZHJlc3Moe1xuICAgICAgZXRoQWRkcmVzczogU2VjcDI1NmsxUHJvZ3JhbS5wdWJsaWNLZXlUb0V0aEFkZHJlc3MocHVibGljS2V5KSxcbiAgICAgIG1lc3NhZ2UsXG4gICAgICBzaWduYXR1cmUsXG4gICAgICByZWNvdmVyeUlkLFxuICAgICAgaW5zdHJ1Y3Rpb25JbmRleCxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYW4gc2VjcDI1NmsxIGluc3RydWN0aW9uIHdpdGggYW4gRXRoZXJldW0gYWRkcmVzcy4gVGhlIGFkZHJlc3NcbiAgICogbXVzdCBiZSBhIGhleCBzdHJpbmcgb3IgYSBidWZmZXIgdGhhdCBpcyAyMCBieXRlcyBsb25nLlxuICAgKi9cbiAgc3RhdGljIGNyZWF0ZUluc3RydWN0aW9uV2l0aEV0aEFkZHJlc3MoXG4gICAgcGFyYW1zOiBDcmVhdGVTZWNwMjU2azFJbnN0cnVjdGlvbldpdGhFdGhBZGRyZXNzUGFyYW1zLFxuICApOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uIHtcbiAgICBjb25zdCB7XG4gICAgICBldGhBZGRyZXNzOiByYXdBZGRyZXNzLFxuICAgICAgbWVzc2FnZSxcbiAgICAgIHNpZ25hdHVyZSxcbiAgICAgIHJlY292ZXJ5SWQsXG4gICAgICBpbnN0cnVjdGlvbkluZGV4ID0gMCxcbiAgICB9ID0gcGFyYW1zO1xuXG4gICAgbGV0IGV0aEFkZHJlc3M7XG4gICAgaWYgKHR5cGVvZiByYXdBZGRyZXNzID09PSAnc3RyaW5nJykge1xuICAgICAgaWYgKHJhd0FkZHJlc3Muc3RhcnRzV2l0aCgnMHgnKSkge1xuICAgICAgICBldGhBZGRyZXNzID0gQnVmZmVyLmZyb20ocmF3QWRkcmVzcy5zdWJzdHIoMiksICdoZXgnKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGV0aEFkZHJlc3MgPSBCdWZmZXIuZnJvbShyYXdBZGRyZXNzLCAnaGV4Jyk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGV0aEFkZHJlc3MgPSByYXdBZGRyZXNzO1xuICAgIH1cblxuICAgIGFzc2VydChcbiAgICAgIGV0aEFkZHJlc3MubGVuZ3RoID09PSBFVEhFUkVVTV9BRERSRVNTX0JZVEVTLFxuICAgICAgYEFkZHJlc3MgbXVzdCBiZSAke0VUSEVSRVVNX0FERFJFU1NfQllURVN9IGJ5dGVzIGJ1dCByZWNlaXZlZCAke2V0aEFkZHJlc3MubGVuZ3RofSBieXRlc2AsXG4gICAgKTtcblxuICAgIGNvbnN0IGRhdGFTdGFydCA9IDEgKyBTSUdOQVRVUkVfT0ZGU0VUU19TRVJJQUxJWkVEX1NJWkU7XG4gICAgY29uc3QgZXRoQWRkcmVzc09mZnNldCA9IGRhdGFTdGFydDtcbiAgICBjb25zdCBzaWduYXR1cmVPZmZzZXQgPSBkYXRhU3RhcnQgKyBldGhBZGRyZXNzLmxlbmd0aDtcbiAgICBjb25zdCBtZXNzYWdlRGF0YU9mZnNldCA9IHNpZ25hdHVyZU9mZnNldCArIHNpZ25hdHVyZS5sZW5ndGggKyAxO1xuICAgIGNvbnN0IG51bVNpZ25hdHVyZXMgPSAxO1xuXG4gICAgY29uc3QgaW5zdHJ1Y3Rpb25EYXRhID0gQnVmZmVyLmFsbG9jKFxuICAgICAgU0VDUDI1NksxX0lOU1RSVUNUSU9OX0xBWU9VVC5zcGFuICsgbWVzc2FnZS5sZW5ndGgsXG4gICAgKTtcblxuICAgIFNFQ1AyNTZLMV9JTlNUUlVDVElPTl9MQVlPVVQuZW5jb2RlKFxuICAgICAge1xuICAgICAgICBudW1TaWduYXR1cmVzLFxuICAgICAgICBzaWduYXR1cmVPZmZzZXQsXG4gICAgICAgIHNpZ25hdHVyZUluc3RydWN0aW9uSW5kZXg6IGluc3RydWN0aW9uSW5kZXgsXG4gICAgICAgIGV0aEFkZHJlc3NPZmZzZXQsXG4gICAgICAgIGV0aEFkZHJlc3NJbnN0cnVjdGlvbkluZGV4OiBpbnN0cnVjdGlvbkluZGV4LFxuICAgICAgICBtZXNzYWdlRGF0YU9mZnNldCxcbiAgICAgICAgbWVzc2FnZURhdGFTaXplOiBtZXNzYWdlLmxlbmd0aCxcbiAgICAgICAgbWVzc2FnZUluc3RydWN0aW9uSW5kZXg6IGluc3RydWN0aW9uSW5kZXgsXG4gICAgICAgIHNpZ25hdHVyZTogdG9CdWZmZXIoc2lnbmF0dXJlKSxcbiAgICAgICAgZXRoQWRkcmVzczogdG9CdWZmZXIoZXRoQWRkcmVzcyksXG4gICAgICAgIHJlY292ZXJ5SWQsXG4gICAgICB9LFxuICAgICAgaW5zdHJ1Y3Rpb25EYXRhLFxuICAgICk7XG5cbiAgICBpbnN0cnVjdGlvbkRhdGEuZmlsbCh0b0J1ZmZlcihtZXNzYWdlKSwgU0VDUDI1NksxX0lOU1RSVUNUSU9OX0xBWU9VVC5zcGFuKTtcblxuICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb25JbnN0cnVjdGlvbih7XG4gICAgICBrZXlzOiBbXSxcbiAgICAgIHByb2dyYW1JZDogU2VjcDI1NmsxUHJvZ3JhbS5wcm9ncmFtSWQsXG4gICAgICBkYXRhOiBpbnN0cnVjdGlvbkRhdGEsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGFuIHNlY3AyNTZrMSBpbnN0cnVjdGlvbiB3aXRoIGEgcHJpdmF0ZSBrZXkuIFRoZSBwcml2YXRlIGtleVxuICAgKiBtdXN0IGJlIGEgYnVmZmVyIHRoYXQgaXMgMzIgYnl0ZXMgbG9uZy5cbiAgICovXG4gIHN0YXRpYyBjcmVhdGVJbnN0cnVjdGlvbldpdGhQcml2YXRlS2V5KFxuICAgIHBhcmFtczogQ3JlYXRlU2VjcDI1NmsxSW5zdHJ1Y3Rpb25XaXRoUHJpdmF0ZUtleVBhcmFtcyxcbiAgKTogVHJhbnNhY3Rpb25JbnN0cnVjdGlvbiB7XG4gICAgY29uc3Qge3ByaXZhdGVLZXk6IHBrZXksIG1lc3NhZ2UsIGluc3RydWN0aW9uSW5kZXh9ID0gcGFyYW1zO1xuXG4gICAgYXNzZXJ0KFxuICAgICAgcGtleS5sZW5ndGggPT09IFBSSVZBVEVfS0VZX0JZVEVTLFxuICAgICAgYFByaXZhdGUga2V5IG11c3QgYmUgJHtQUklWQVRFX0tFWV9CWVRFU30gYnl0ZXMgYnV0IHJlY2VpdmVkICR7cGtleS5sZW5ndGh9IGJ5dGVzYCxcbiAgICApO1xuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHByaXZhdGVLZXkgPSB0b0J1ZmZlcihwa2V5KTtcbiAgICAgIGNvbnN0IHB1YmxpY0tleSA9IHB1YmxpY0tleUNyZWF0ZShcbiAgICAgICAgcHJpdmF0ZUtleSxcbiAgICAgICAgZmFsc2UgLyogaXNDb21wcmVzc2VkICovLFxuICAgICAgKS5zbGljZSgxKTsgLy8gdGhyb3cgYXdheSBsZWFkaW5nIGJ5dGVcbiAgICAgIGNvbnN0IG1lc3NhZ2VIYXNoID0gQnVmZmVyLmZyb20oa2VjY2FrXzI1Nih0b0J1ZmZlcihtZXNzYWdlKSkpO1xuICAgICAgY29uc3QgW3NpZ25hdHVyZSwgcmVjb3ZlcnlJZF0gPSBlY2RzYVNpZ24obWVzc2FnZUhhc2gsIHByaXZhdGVLZXkpO1xuXG4gICAgICByZXR1cm4gdGhpcy5jcmVhdGVJbnN0cnVjdGlvbldpdGhQdWJsaWNLZXkoe1xuICAgICAgICBwdWJsaWNLZXksXG4gICAgICAgIG1lc3NhZ2UsXG4gICAgICAgIHNpZ25hdHVyZSxcbiAgICAgICAgcmVjb3ZlcnlJZCxcbiAgICAgICAgaW5zdHJ1Y3Rpb25JbmRleCxcbiAgICAgIH0pO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEVycm9yIGNyZWF0aW5nIGluc3RydWN0aW9uOyAke2Vycm9yfWApO1xuICAgIH1cbiAgfVxufVxuIiwgImltcG9ydCAqIGFzIEJ1ZmZlckxheW91dCBmcm9tICdAc29sYW5hL2J1ZmZlci1sYXlvdXQnO1xuXG5pbXBvcnQge1xuICBlbmNvZGVEYXRhLFxuICBkZWNvZGVEYXRhLFxuICBJbnN0cnVjdGlvblR5cGUsXG4gIElJbnN0cnVjdGlvbklucHV0RGF0YSxcbn0gZnJvbSAnLi4vaW5zdHJ1Y3Rpb24nO1xuaW1wb3J0ICogYXMgTGF5b3V0IGZyb20gJy4uL2xheW91dCc7XG5pbXBvcnQge1B1YmxpY0tleX0gZnJvbSAnLi4vcHVibGlja2V5JztcbmltcG9ydCB7U3lzdGVtUHJvZ3JhbX0gZnJvbSAnLi9zeXN0ZW0nO1xuaW1wb3J0IHtcbiAgU1lTVkFSX0NMT0NLX1BVQktFWSxcbiAgU1lTVkFSX1JFTlRfUFVCS0VZLFxuICBTWVNWQVJfU1RBS0VfSElTVE9SWV9QVUJLRVksXG59IGZyb20gJy4uL3N5c3Zhcic7XG5pbXBvcnQge1RyYW5zYWN0aW9uLCBUcmFuc2FjdGlvbkluc3RydWN0aW9ufSBmcm9tICcuLi90cmFuc2FjdGlvbic7XG5pbXBvcnQge3RvQnVmZmVyfSBmcm9tICcuLi91dGlscy90by1idWZmZXInO1xuXG4vKipcbiAqIEFkZHJlc3Mgb2YgdGhlIHN0YWtlIGNvbmZpZyBhY2NvdW50IHdoaWNoIGNvbmZpZ3VyZXMgdGhlIHJhdGVcbiAqIG9mIHN0YWtlIHdhcm11cCBhbmQgY29vbGRvd24gYXMgd2VsbCBhcyB0aGUgc2xhc2hpbmcgcGVuYWx0eS5cbiAqL1xuZXhwb3J0IGNvbnN0IFNUQUtFX0NPTkZJR19JRCA9IG5ldyBQdWJsaWNLZXkoXG4gICdTdGFrZUNvbmZpZzExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExJyxcbik7XG5cbi8qKlxuICogU3Rha2UgYWNjb3VudCBhdXRob3JpdHkgaW5mb1xuICovXG5leHBvcnQgY2xhc3MgQXV0aG9yaXplZCB7XG4gIC8qKiBzdGFrZSBhdXRob3JpdHkgKi9cbiAgc3Rha2VyOiBQdWJsaWNLZXk7XG4gIC8qKiB3aXRoZHJhdyBhdXRob3JpdHkgKi9cbiAgd2l0aGRyYXdlcjogUHVibGljS2V5O1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgQXV0aG9yaXplZCBvYmplY3RcbiAgICogQHBhcmFtIHN0YWtlciB0aGUgc3Rha2UgYXV0aG9yaXR5XG4gICAqIEBwYXJhbSB3aXRoZHJhd2VyIHRoZSB3aXRoZHJhdyBhdXRob3JpdHlcbiAgICovXG4gIGNvbnN0cnVjdG9yKHN0YWtlcjogUHVibGljS2V5LCB3aXRoZHJhd2VyOiBQdWJsaWNLZXkpIHtcbiAgICB0aGlzLnN0YWtlciA9IHN0YWtlcjtcbiAgICB0aGlzLndpdGhkcmF3ZXIgPSB3aXRoZHJhd2VyO1xuICB9XG59XG5cbnR5cGUgQXV0aG9yaXplZFJhdyA9IFJlYWRvbmx5PHtcbiAgc3Rha2VyOiBVaW50OEFycmF5O1xuICB3aXRoZHJhd2VyOiBVaW50OEFycmF5O1xufT47XG5cbi8qKlxuICogU3Rha2UgYWNjb3VudCBsb2NrdXAgaW5mb1xuICovXG5leHBvcnQgY2xhc3MgTG9ja3VwIHtcbiAgLyoqIFVuaXggdGltZXN0YW1wIG9mIGxvY2t1cCBleHBpcmF0aW9uICovXG4gIHVuaXhUaW1lc3RhbXA6IG51bWJlcjtcbiAgLyoqIEVwb2NoIG9mIGxvY2t1cCBleHBpcmF0aW9uICovXG4gIGVwb2NoOiBudW1iZXI7XG4gIC8qKiBMb2NrdXAgY3VzdG9kaWFuIGF1dGhvcml0eSAqL1xuICBjdXN0b2RpYW46IFB1YmxpY0tleTtcblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IExvY2t1cCBvYmplY3RcbiAgICovXG4gIGNvbnN0cnVjdG9yKHVuaXhUaW1lc3RhbXA6IG51bWJlciwgZXBvY2g6IG51bWJlciwgY3VzdG9kaWFuOiBQdWJsaWNLZXkpIHtcbiAgICB0aGlzLnVuaXhUaW1lc3RhbXAgPSB1bml4VGltZXN0YW1wO1xuICAgIHRoaXMuZXBvY2ggPSBlcG9jaDtcbiAgICB0aGlzLmN1c3RvZGlhbiA9IGN1c3RvZGlhbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWZhdWx0LCBpbmFjdGl2ZSBMb2NrdXAgdmFsdWVcbiAgICovXG4gIHN0YXRpYyBkZWZhdWx0OiBMb2NrdXAgPSBuZXcgTG9ja3VwKDAsIDAsIFB1YmxpY0tleS5kZWZhdWx0KTtcbn1cblxudHlwZSBMb2NrdXBSYXcgPSBSZWFkb25seTx7XG4gIGN1c3RvZGlhbjogVWludDhBcnJheTtcbiAgZXBvY2g6IG51bWJlcjtcbiAgdW5peFRpbWVzdGFtcDogbnVtYmVyO1xufT47XG5cbi8qKlxuICogQ3JlYXRlIHN0YWtlIGFjY291bnQgdHJhbnNhY3Rpb24gcGFyYW1zXG4gKi9cbmV4cG9ydCB0eXBlIENyZWF0ZVN0YWtlQWNjb3VudFBhcmFtcyA9IHtcbiAgLyoqIEFkZHJlc3Mgb2YgdGhlIGFjY291bnQgd2hpY2ggd2lsbCBmdW5kIGNyZWF0aW9uICovXG4gIGZyb21QdWJrZXk6IFB1YmxpY0tleTtcbiAgLyoqIEFkZHJlc3Mgb2YgdGhlIG5ldyBzdGFrZSBhY2NvdW50ICovXG4gIHN0YWtlUHVia2V5OiBQdWJsaWNLZXk7XG4gIC8qKiBBdXRob3JpdGllcyBvZiB0aGUgbmV3IHN0YWtlIGFjY291bnQgKi9cbiAgYXV0aG9yaXplZDogQXV0aG9yaXplZDtcbiAgLyoqIExvY2t1cCBvZiB0aGUgbmV3IHN0YWtlIGFjY291bnQgKi9cbiAgbG9ja3VwPzogTG9ja3VwO1xuICAvKiogRnVuZGluZyBhbW91bnQgKi9cbiAgbGFtcG9ydHM6IG51bWJlcjtcbn07XG5cbi8qKlxuICogQ3JlYXRlIHN0YWtlIGFjY291bnQgd2l0aCBzZWVkIHRyYW5zYWN0aW9uIHBhcmFtc1xuICovXG5leHBvcnQgdHlwZSBDcmVhdGVTdGFrZUFjY291bnRXaXRoU2VlZFBhcmFtcyA9IHtcbiAgZnJvbVB1YmtleTogUHVibGljS2V5O1xuICBzdGFrZVB1YmtleTogUHVibGljS2V5O1xuICBiYXNlUHVia2V5OiBQdWJsaWNLZXk7XG4gIHNlZWQ6IHN0cmluZztcbiAgYXV0aG9yaXplZDogQXV0aG9yaXplZDtcbiAgbG9ja3VwPzogTG9ja3VwO1xuICBsYW1wb3J0czogbnVtYmVyO1xufTtcblxuLyoqXG4gKiBJbml0aWFsaXplIHN0YWtlIGluc3RydWN0aW9uIHBhcmFtc1xuICovXG5leHBvcnQgdHlwZSBJbml0aWFsaXplU3Rha2VQYXJhbXMgPSB7XG4gIHN0YWtlUHVia2V5OiBQdWJsaWNLZXk7XG4gIGF1dGhvcml6ZWQ6IEF1dGhvcml6ZWQ7XG4gIGxvY2t1cD86IExvY2t1cDtcbn07XG5cbi8qKlxuICogRGVsZWdhdGUgc3Rha2UgaW5zdHJ1Y3Rpb24gcGFyYW1zXG4gKi9cbmV4cG9ydCB0eXBlIERlbGVnYXRlU3Rha2VQYXJhbXMgPSB7XG4gIHN0YWtlUHVia2V5OiBQdWJsaWNLZXk7XG4gIGF1dGhvcml6ZWRQdWJrZXk6IFB1YmxpY0tleTtcbiAgdm90ZVB1YmtleTogUHVibGljS2V5O1xufTtcblxuLyoqXG4gKiBBdXRob3JpemUgc3Rha2UgaW5zdHJ1Y3Rpb24gcGFyYW1zXG4gKi9cbmV4cG9ydCB0eXBlIEF1dGhvcml6ZVN0YWtlUGFyYW1zID0ge1xuICBzdGFrZVB1YmtleTogUHVibGljS2V5O1xuICBhdXRob3JpemVkUHVia2V5OiBQdWJsaWNLZXk7XG4gIG5ld0F1dGhvcml6ZWRQdWJrZXk6IFB1YmxpY0tleTtcbiAgc3Rha2VBdXRob3JpemF0aW9uVHlwZTogU3Rha2VBdXRob3JpemF0aW9uVHlwZTtcbiAgY3VzdG9kaWFuUHVia2V5PzogUHVibGljS2V5O1xufTtcblxuLyoqXG4gKiBBdXRob3JpemUgc3Rha2UgaW5zdHJ1Y3Rpb24gcGFyYW1zIHVzaW5nIGEgZGVyaXZlZCBrZXlcbiAqL1xuZXhwb3J0IHR5cGUgQXV0aG9yaXplV2l0aFNlZWRTdGFrZVBhcmFtcyA9IHtcbiAgc3Rha2VQdWJrZXk6IFB1YmxpY0tleTtcbiAgYXV0aG9yaXR5QmFzZTogUHVibGljS2V5O1xuICBhdXRob3JpdHlTZWVkOiBzdHJpbmc7XG4gIGF1dGhvcml0eU93bmVyOiBQdWJsaWNLZXk7XG4gIG5ld0F1dGhvcml6ZWRQdWJrZXk6IFB1YmxpY0tleTtcbiAgc3Rha2VBdXRob3JpemF0aW9uVHlwZTogU3Rha2VBdXRob3JpemF0aW9uVHlwZTtcbiAgY3VzdG9kaWFuUHVia2V5PzogUHVibGljS2V5O1xufTtcblxuLyoqXG4gKiBTcGxpdCBzdGFrZSBpbnN0cnVjdGlvbiBwYXJhbXNcbiAqL1xuZXhwb3J0IHR5cGUgU3BsaXRTdGFrZVBhcmFtcyA9IHtcbiAgc3Rha2VQdWJrZXk6IFB1YmxpY0tleTtcbiAgYXV0aG9yaXplZFB1YmtleTogUHVibGljS2V5O1xuICBzcGxpdFN0YWtlUHVia2V5OiBQdWJsaWNLZXk7XG4gIGxhbXBvcnRzOiBudW1iZXI7XG59O1xuXG4vKipcbiAqIFNwbGl0IHdpdGggc2VlZCB0cmFuc2FjdGlvbiBwYXJhbXNcbiAqL1xuZXhwb3J0IHR5cGUgU3BsaXRTdGFrZVdpdGhTZWVkUGFyYW1zID0ge1xuICBzdGFrZVB1YmtleTogUHVibGljS2V5O1xuICBhdXRob3JpemVkUHVia2V5OiBQdWJsaWNLZXk7XG4gIHNwbGl0U3Rha2VQdWJrZXk6IFB1YmxpY0tleTtcbiAgYmFzZVB1YmtleTogUHVibGljS2V5O1xuICBzZWVkOiBzdHJpbmc7XG4gIGxhbXBvcnRzOiBudW1iZXI7XG59O1xuXG4vKipcbiAqIFdpdGhkcmF3IHN0YWtlIGluc3RydWN0aW9uIHBhcmFtc1xuICovXG5leHBvcnQgdHlwZSBXaXRoZHJhd1N0YWtlUGFyYW1zID0ge1xuICBzdGFrZVB1YmtleTogUHVibGljS2V5O1xuICBhdXRob3JpemVkUHVia2V5OiBQdWJsaWNLZXk7XG4gIHRvUHVia2V5OiBQdWJsaWNLZXk7XG4gIGxhbXBvcnRzOiBudW1iZXI7XG4gIGN1c3RvZGlhblB1YmtleT86IFB1YmxpY0tleTtcbn07XG5cbi8qKlxuICogRGVhY3RpdmF0ZSBzdGFrZSBpbnN0cnVjdGlvbiBwYXJhbXNcbiAqL1xuZXhwb3J0IHR5cGUgRGVhY3RpdmF0ZVN0YWtlUGFyYW1zID0ge1xuICBzdGFrZVB1YmtleTogUHVibGljS2V5O1xuICBhdXRob3JpemVkUHVia2V5OiBQdWJsaWNLZXk7XG59O1xuXG4vKipcbiAqIE1lcmdlIHN0YWtlIGluc3RydWN0aW9uIHBhcmFtc1xuICovXG5leHBvcnQgdHlwZSBNZXJnZVN0YWtlUGFyYW1zID0ge1xuICBzdGFrZVB1YmtleTogUHVibGljS2V5O1xuICBzb3VyY2VTdGFrZVB1YktleTogUHVibGljS2V5O1xuICBhdXRob3JpemVkUHVia2V5OiBQdWJsaWNLZXk7XG59O1xuXG4vKipcbiAqIFN0YWtlIEluc3RydWN0aW9uIGNsYXNzXG4gKi9cbmV4cG9ydCBjbGFzcyBTdGFrZUluc3RydWN0aW9uIHtcbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIC8qKlxuICAgKiBEZWNvZGUgYSBzdGFrZSBpbnN0cnVjdGlvbiBhbmQgcmV0cmlldmUgdGhlIGluc3RydWN0aW9uIHR5cGUuXG4gICAqL1xuICBzdGF0aWMgZGVjb2RlSW5zdHJ1Y3Rpb25UeXBlKFxuICAgIGluc3RydWN0aW9uOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uLFxuICApOiBTdGFrZUluc3RydWN0aW9uVHlwZSB7XG4gICAgdGhpcy5jaGVja1Byb2dyYW1JZChpbnN0cnVjdGlvbi5wcm9ncmFtSWQpO1xuXG4gICAgY29uc3QgaW5zdHJ1Y3Rpb25UeXBlTGF5b3V0ID0gQnVmZmVyTGF5b3V0LnUzMignaW5zdHJ1Y3Rpb24nKTtcbiAgICBjb25zdCB0eXBlSW5kZXggPSBpbnN0cnVjdGlvblR5cGVMYXlvdXQuZGVjb2RlKGluc3RydWN0aW9uLmRhdGEpO1xuXG4gICAgbGV0IHR5cGU6IFN0YWtlSW5zdHJ1Y3Rpb25UeXBlIHwgdW5kZWZpbmVkO1xuICAgIGZvciAoY29uc3QgW2l4VHlwZSwgbGF5b3V0XSBvZiBPYmplY3QuZW50cmllcyhTVEFLRV9JTlNUUlVDVElPTl9MQVlPVVRTKSkge1xuICAgICAgaWYgKGxheW91dC5pbmRleCA9PSB0eXBlSW5kZXgpIHtcbiAgICAgICAgdHlwZSA9IGl4VHlwZSBhcyBTdGFrZUluc3RydWN0aW9uVHlwZTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKCF0eXBlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0luc3RydWN0aW9uIHR5cGUgaW5jb3JyZWN0OyBub3QgYSBTdGFrZUluc3RydWN0aW9uJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHR5cGU7XG4gIH1cblxuICAvKipcbiAgICogRGVjb2RlIGEgaW5pdGlhbGl6ZSBzdGFrZSBpbnN0cnVjdGlvbiBhbmQgcmV0cmlldmUgdGhlIGluc3RydWN0aW9uIHBhcmFtcy5cbiAgICovXG4gIHN0YXRpYyBkZWNvZGVJbml0aWFsaXplKFxuICAgIGluc3RydWN0aW9uOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uLFxuICApOiBJbml0aWFsaXplU3Rha2VQYXJhbXMge1xuICAgIHRoaXMuY2hlY2tQcm9ncmFtSWQoaW5zdHJ1Y3Rpb24ucHJvZ3JhbUlkKTtcbiAgICB0aGlzLmNoZWNrS2V5TGVuZ3RoKGluc3RydWN0aW9uLmtleXMsIDIpO1xuXG4gICAgY29uc3Qge2F1dGhvcml6ZWQsIGxvY2t1cH0gPSBkZWNvZGVEYXRhKFxuICAgICAgU1RBS0VfSU5TVFJVQ1RJT05fTEFZT1VUUy5Jbml0aWFsaXplLFxuICAgICAgaW5zdHJ1Y3Rpb24uZGF0YSxcbiAgICApO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHN0YWtlUHVia2V5OiBpbnN0cnVjdGlvbi5rZXlzWzBdLnB1YmtleSxcbiAgICAgIGF1dGhvcml6ZWQ6IG5ldyBBdXRob3JpemVkKFxuICAgICAgICBuZXcgUHVibGljS2V5KGF1dGhvcml6ZWQuc3Rha2VyKSxcbiAgICAgICAgbmV3IFB1YmxpY0tleShhdXRob3JpemVkLndpdGhkcmF3ZXIpLFxuICAgICAgKSxcbiAgICAgIGxvY2t1cDogbmV3IExvY2t1cChcbiAgICAgICAgbG9ja3VwLnVuaXhUaW1lc3RhbXAsXG4gICAgICAgIGxvY2t1cC5lcG9jaCxcbiAgICAgICAgbmV3IFB1YmxpY0tleShsb2NrdXAuY3VzdG9kaWFuKSxcbiAgICAgICksXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWNvZGUgYSBkZWxlZ2F0ZSBzdGFrZSBpbnN0cnVjdGlvbiBhbmQgcmV0cmlldmUgdGhlIGluc3RydWN0aW9uIHBhcmFtcy5cbiAgICovXG4gIHN0YXRpYyBkZWNvZGVEZWxlZ2F0ZShcbiAgICBpbnN0cnVjdGlvbjogVHJhbnNhY3Rpb25JbnN0cnVjdGlvbixcbiAgKTogRGVsZWdhdGVTdGFrZVBhcmFtcyB7XG4gICAgdGhpcy5jaGVja1Byb2dyYW1JZChpbnN0cnVjdGlvbi5wcm9ncmFtSWQpO1xuICAgIHRoaXMuY2hlY2tLZXlMZW5ndGgoaW5zdHJ1Y3Rpb24ua2V5cywgNik7XG4gICAgZGVjb2RlRGF0YShTVEFLRV9JTlNUUlVDVElPTl9MQVlPVVRTLkRlbGVnYXRlLCBpbnN0cnVjdGlvbi5kYXRhKTtcblxuICAgIHJldHVybiB7XG4gICAgICBzdGFrZVB1YmtleTogaW5zdHJ1Y3Rpb24ua2V5c1swXS5wdWJrZXksXG4gICAgICB2b3RlUHVia2V5OiBpbnN0cnVjdGlvbi5rZXlzWzFdLnB1YmtleSxcbiAgICAgIGF1dGhvcml6ZWRQdWJrZXk6IGluc3RydWN0aW9uLmtleXNbNV0ucHVia2V5LFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogRGVjb2RlIGFuIGF1dGhvcml6ZSBzdGFrZSBpbnN0cnVjdGlvbiBhbmQgcmV0cmlldmUgdGhlIGluc3RydWN0aW9uIHBhcmFtcy5cbiAgICovXG4gIHN0YXRpYyBkZWNvZGVBdXRob3JpemUoXG4gICAgaW5zdHJ1Y3Rpb246IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24sXG4gICk6IEF1dGhvcml6ZVN0YWtlUGFyYW1zIHtcbiAgICB0aGlzLmNoZWNrUHJvZ3JhbUlkKGluc3RydWN0aW9uLnByb2dyYW1JZCk7XG4gICAgdGhpcy5jaGVja0tleUxlbmd0aChpbnN0cnVjdGlvbi5rZXlzLCAzKTtcbiAgICBjb25zdCB7bmV3QXV0aG9yaXplZCwgc3Rha2VBdXRob3JpemF0aW9uVHlwZX0gPSBkZWNvZGVEYXRhKFxuICAgICAgU1RBS0VfSU5TVFJVQ1RJT05fTEFZT1VUUy5BdXRob3JpemUsXG4gICAgICBpbnN0cnVjdGlvbi5kYXRhLFxuICAgICk7XG5cbiAgICBjb25zdCBvOiBBdXRob3JpemVTdGFrZVBhcmFtcyA9IHtcbiAgICAgIHN0YWtlUHVia2V5OiBpbnN0cnVjdGlvbi5rZXlzWzBdLnB1YmtleSxcbiAgICAgIGF1dGhvcml6ZWRQdWJrZXk6IGluc3RydWN0aW9uLmtleXNbMl0ucHVia2V5LFxuICAgICAgbmV3QXV0aG9yaXplZFB1YmtleTogbmV3IFB1YmxpY0tleShuZXdBdXRob3JpemVkKSxcbiAgICAgIHN0YWtlQXV0aG9yaXphdGlvblR5cGU6IHtcbiAgICAgICAgaW5kZXg6IHN0YWtlQXV0aG9yaXphdGlvblR5cGUsXG4gICAgICB9LFxuICAgIH07XG4gICAgaWYgKGluc3RydWN0aW9uLmtleXMubGVuZ3RoID4gMykge1xuICAgICAgby5jdXN0b2RpYW5QdWJrZXkgPSBpbnN0cnVjdGlvbi5rZXlzWzNdLnB1YmtleTtcbiAgICB9XG4gICAgcmV0dXJuIG87XG4gIH1cblxuICAvKipcbiAgICogRGVjb2RlIGFuIGF1dGhvcml6ZS13aXRoLXNlZWQgc3Rha2UgaW5zdHJ1Y3Rpb24gYW5kIHJldHJpZXZlIHRoZSBpbnN0cnVjdGlvbiBwYXJhbXMuXG4gICAqL1xuICBzdGF0aWMgZGVjb2RlQXV0aG9yaXplV2l0aFNlZWQoXG4gICAgaW5zdHJ1Y3Rpb246IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24sXG4gICk6IEF1dGhvcml6ZVdpdGhTZWVkU3Rha2VQYXJhbXMge1xuICAgIHRoaXMuY2hlY2tQcm9ncmFtSWQoaW5zdHJ1Y3Rpb24ucHJvZ3JhbUlkKTtcbiAgICB0aGlzLmNoZWNrS2V5TGVuZ3RoKGluc3RydWN0aW9uLmtleXMsIDIpO1xuXG4gICAgY29uc3Qge1xuICAgICAgbmV3QXV0aG9yaXplZCxcbiAgICAgIHN0YWtlQXV0aG9yaXphdGlvblR5cGUsXG4gICAgICBhdXRob3JpdHlTZWVkLFxuICAgICAgYXV0aG9yaXR5T3duZXIsXG4gICAgfSA9IGRlY29kZURhdGEoXG4gICAgICBTVEFLRV9JTlNUUlVDVElPTl9MQVlPVVRTLkF1dGhvcml6ZVdpdGhTZWVkLFxuICAgICAgaW5zdHJ1Y3Rpb24uZGF0YSxcbiAgICApO1xuXG4gICAgY29uc3QgbzogQXV0aG9yaXplV2l0aFNlZWRTdGFrZVBhcmFtcyA9IHtcbiAgICAgIHN0YWtlUHVia2V5OiBpbnN0cnVjdGlvbi5rZXlzWzBdLnB1YmtleSxcbiAgICAgIGF1dGhvcml0eUJhc2U6IGluc3RydWN0aW9uLmtleXNbMV0ucHVia2V5LFxuICAgICAgYXV0aG9yaXR5U2VlZDogYXV0aG9yaXR5U2VlZCxcbiAgICAgIGF1dGhvcml0eU93bmVyOiBuZXcgUHVibGljS2V5KGF1dGhvcml0eU93bmVyKSxcbiAgICAgIG5ld0F1dGhvcml6ZWRQdWJrZXk6IG5ldyBQdWJsaWNLZXkobmV3QXV0aG9yaXplZCksXG4gICAgICBzdGFrZUF1dGhvcml6YXRpb25UeXBlOiB7XG4gICAgICAgIGluZGV4OiBzdGFrZUF1dGhvcml6YXRpb25UeXBlLFxuICAgICAgfSxcbiAgICB9O1xuICAgIGlmIChpbnN0cnVjdGlvbi5rZXlzLmxlbmd0aCA+IDMpIHtcbiAgICAgIG8uY3VzdG9kaWFuUHVia2V5ID0gaW5zdHJ1Y3Rpb24ua2V5c1szXS5wdWJrZXk7XG4gICAgfVxuICAgIHJldHVybiBvO1xuICB9XG5cbiAgLyoqXG4gICAqIERlY29kZSBhIHNwbGl0IHN0YWtlIGluc3RydWN0aW9uIGFuZCByZXRyaWV2ZSB0aGUgaW5zdHJ1Y3Rpb24gcGFyYW1zLlxuICAgKi9cbiAgc3RhdGljIGRlY29kZVNwbGl0KGluc3RydWN0aW9uOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uKTogU3BsaXRTdGFrZVBhcmFtcyB7XG4gICAgdGhpcy5jaGVja1Byb2dyYW1JZChpbnN0cnVjdGlvbi5wcm9ncmFtSWQpO1xuICAgIHRoaXMuY2hlY2tLZXlMZW5ndGgoaW5zdHJ1Y3Rpb24ua2V5cywgMyk7XG4gICAgY29uc3Qge2xhbXBvcnRzfSA9IGRlY29kZURhdGEoXG4gICAgICBTVEFLRV9JTlNUUlVDVElPTl9MQVlPVVRTLlNwbGl0LFxuICAgICAgaW5zdHJ1Y3Rpb24uZGF0YSxcbiAgICApO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHN0YWtlUHVia2V5OiBpbnN0cnVjdGlvbi5rZXlzWzBdLnB1YmtleSxcbiAgICAgIHNwbGl0U3Rha2VQdWJrZXk6IGluc3RydWN0aW9uLmtleXNbMV0ucHVia2V5LFxuICAgICAgYXV0aG9yaXplZFB1YmtleTogaW5zdHJ1Y3Rpb24ua2V5c1syXS5wdWJrZXksXG4gICAgICBsYW1wb3J0cyxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIERlY29kZSBhIG1lcmdlIHN0YWtlIGluc3RydWN0aW9uIGFuZCByZXRyaWV2ZSB0aGUgaW5zdHJ1Y3Rpb24gcGFyYW1zLlxuICAgKi9cbiAgc3RhdGljIGRlY29kZU1lcmdlKGluc3RydWN0aW9uOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uKTogTWVyZ2VTdGFrZVBhcmFtcyB7XG4gICAgdGhpcy5jaGVja1Byb2dyYW1JZChpbnN0cnVjdGlvbi5wcm9ncmFtSWQpO1xuICAgIHRoaXMuY2hlY2tLZXlMZW5ndGgoaW5zdHJ1Y3Rpb24ua2V5cywgMyk7XG4gICAgZGVjb2RlRGF0YShTVEFLRV9JTlNUUlVDVElPTl9MQVlPVVRTLk1lcmdlLCBpbnN0cnVjdGlvbi5kYXRhKTtcblxuICAgIHJldHVybiB7XG4gICAgICBzdGFrZVB1YmtleTogaW5zdHJ1Y3Rpb24ua2V5c1swXS5wdWJrZXksXG4gICAgICBzb3VyY2VTdGFrZVB1YktleTogaW5zdHJ1Y3Rpb24ua2V5c1sxXS5wdWJrZXksXG4gICAgICBhdXRob3JpemVkUHVia2V5OiBpbnN0cnVjdGlvbi5rZXlzWzRdLnB1YmtleSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIERlY29kZSBhIHdpdGhkcmF3IHN0YWtlIGluc3RydWN0aW9uIGFuZCByZXRyaWV2ZSB0aGUgaW5zdHJ1Y3Rpb24gcGFyYW1zLlxuICAgKi9cbiAgc3RhdGljIGRlY29kZVdpdGhkcmF3KFxuICAgIGluc3RydWN0aW9uOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uLFxuICApOiBXaXRoZHJhd1N0YWtlUGFyYW1zIHtcbiAgICB0aGlzLmNoZWNrUHJvZ3JhbUlkKGluc3RydWN0aW9uLnByb2dyYW1JZCk7XG4gICAgdGhpcy5jaGVja0tleUxlbmd0aChpbnN0cnVjdGlvbi5rZXlzLCA1KTtcbiAgICBjb25zdCB7bGFtcG9ydHN9ID0gZGVjb2RlRGF0YShcbiAgICAgIFNUQUtFX0lOU1RSVUNUSU9OX0xBWU9VVFMuV2l0aGRyYXcsXG4gICAgICBpbnN0cnVjdGlvbi5kYXRhLFxuICAgICk7XG5cbiAgICBjb25zdCBvOiBXaXRoZHJhd1N0YWtlUGFyYW1zID0ge1xuICAgICAgc3Rha2VQdWJrZXk6IGluc3RydWN0aW9uLmtleXNbMF0ucHVia2V5LFxuICAgICAgdG9QdWJrZXk6IGluc3RydWN0aW9uLmtleXNbMV0ucHVia2V5LFxuICAgICAgYXV0aG9yaXplZFB1YmtleTogaW5zdHJ1Y3Rpb24ua2V5c1s0XS5wdWJrZXksXG4gICAgICBsYW1wb3J0cyxcbiAgICB9O1xuICAgIGlmIChpbnN0cnVjdGlvbi5rZXlzLmxlbmd0aCA+IDUpIHtcbiAgICAgIG8uY3VzdG9kaWFuUHVia2V5ID0gaW5zdHJ1Y3Rpb24ua2V5c1s1XS5wdWJrZXk7XG4gICAgfVxuICAgIHJldHVybiBvO1xuICB9XG5cbiAgLyoqXG4gICAqIERlY29kZSBhIGRlYWN0aXZhdGUgc3Rha2UgaW5zdHJ1Y3Rpb24gYW5kIHJldHJpZXZlIHRoZSBpbnN0cnVjdGlvbiBwYXJhbXMuXG4gICAqL1xuICBzdGF0aWMgZGVjb2RlRGVhY3RpdmF0ZShcbiAgICBpbnN0cnVjdGlvbjogVHJhbnNhY3Rpb25JbnN0cnVjdGlvbixcbiAgKTogRGVhY3RpdmF0ZVN0YWtlUGFyYW1zIHtcbiAgICB0aGlzLmNoZWNrUHJvZ3JhbUlkKGluc3RydWN0aW9uLnByb2dyYW1JZCk7XG4gICAgdGhpcy5jaGVja0tleUxlbmd0aChpbnN0cnVjdGlvbi5rZXlzLCAzKTtcbiAgICBkZWNvZGVEYXRhKFNUQUtFX0lOU1RSVUNUSU9OX0xBWU9VVFMuRGVhY3RpdmF0ZSwgaW5zdHJ1Y3Rpb24uZGF0YSk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgc3Rha2VQdWJrZXk6IGluc3RydWN0aW9uLmtleXNbMF0ucHVia2V5LFxuICAgICAgYXV0aG9yaXplZFB1YmtleTogaW5zdHJ1Y3Rpb24ua2V5c1syXS5wdWJrZXksXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHN0YXRpYyBjaGVja1Byb2dyYW1JZChwcm9ncmFtSWQ6IFB1YmxpY0tleSkge1xuICAgIGlmICghcHJvZ3JhbUlkLmVxdWFscyhTdGFrZVByb2dyYW0ucHJvZ3JhbUlkKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIGluc3RydWN0aW9uOyBwcm9ncmFtSWQgaXMgbm90IFN0YWtlUHJvZ3JhbScpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHN0YXRpYyBjaGVja0tleUxlbmd0aChrZXlzOiBBcnJheTxhbnk+LCBleHBlY3RlZExlbmd0aDogbnVtYmVyKSB7XG4gICAgaWYgKGtleXMubGVuZ3RoIDwgZXhwZWN0ZWRMZW5ndGgpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYGludmFsaWQgaW5zdHJ1Y3Rpb247IGZvdW5kICR7a2V5cy5sZW5ndGh9IGtleXMsIGV4cGVjdGVkIGF0IGxlYXN0ICR7ZXhwZWN0ZWRMZW5ndGh9YCxcbiAgICAgICk7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogQW4gZW51bWVyYXRpb24gb2YgdmFsaWQgU3Rha2VJbnN0cnVjdGlvblR5cGUnc1xuICovXG5leHBvcnQgdHlwZSBTdGFrZUluc3RydWN0aW9uVHlwZSA9XG4gIC8vIEZJWE1FXG4gIC8vIEl0IHdvdWxkIGJlIHByZWZlcmFibGUgZm9yIHRoaXMgdHlwZSB0byBiZSBga2V5b2YgU3Rha2VJbnN0cnVjdGlvbklucHV0RGF0YWBcbiAgLy8gYnV0IFR5cGVkb2MgZG9lcyBub3QgdHJhbnNwaWxlIGBrZXlvZmAgZXhwcmVzc2lvbnMuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vVHlwZVN0cm9uZy90eXBlZG9jL2lzc3Vlcy8xODk0XG4gIHwgJ0F1dGhvcml6ZSdcbiAgfCAnQXV0aG9yaXplV2l0aFNlZWQnXG4gIHwgJ0RlYWN0aXZhdGUnXG4gIHwgJ0RlbGVnYXRlJ1xuICB8ICdJbml0aWFsaXplJ1xuICB8ICdNZXJnZSdcbiAgfCAnU3BsaXQnXG4gIHwgJ1dpdGhkcmF3JztcblxudHlwZSBTdGFrZUluc3RydWN0aW9uSW5wdXREYXRhID0ge1xuICBBdXRob3JpemU6IElJbnN0cnVjdGlvbklucHV0RGF0YSAmXG4gICAgUmVhZG9ubHk8e1xuICAgICAgbmV3QXV0aG9yaXplZDogVWludDhBcnJheTtcbiAgICAgIHN0YWtlQXV0aG9yaXphdGlvblR5cGU6IG51bWJlcjtcbiAgICB9PjtcbiAgQXV0aG9yaXplV2l0aFNlZWQ6IElJbnN0cnVjdGlvbklucHV0RGF0YSAmXG4gICAgUmVhZG9ubHk8e1xuICAgICAgYXV0aG9yaXR5T3duZXI6IFVpbnQ4QXJyYXk7XG4gICAgICBhdXRob3JpdHlTZWVkOiBzdHJpbmc7XG4gICAgICBpbnN0cnVjdGlvbjogbnVtYmVyO1xuICAgICAgbmV3QXV0aG9yaXplZDogVWludDhBcnJheTtcbiAgICAgIHN0YWtlQXV0aG9yaXphdGlvblR5cGU6IG51bWJlcjtcbiAgICB9PjtcbiAgRGVhY3RpdmF0ZTogSUluc3RydWN0aW9uSW5wdXREYXRhO1xuICBEZWxlZ2F0ZTogSUluc3RydWN0aW9uSW5wdXREYXRhO1xuICBJbml0aWFsaXplOiBJSW5zdHJ1Y3Rpb25JbnB1dERhdGEgJlxuICAgIFJlYWRvbmx5PHtcbiAgICAgIGF1dGhvcml6ZWQ6IEF1dGhvcml6ZWRSYXc7XG4gICAgICBsb2NrdXA6IExvY2t1cFJhdztcbiAgICB9PjtcbiAgTWVyZ2U6IElJbnN0cnVjdGlvbklucHV0RGF0YTtcbiAgU3BsaXQ6IElJbnN0cnVjdGlvbklucHV0RGF0YSAmXG4gICAgUmVhZG9ubHk8e1xuICAgICAgbGFtcG9ydHM6IG51bWJlcjtcbiAgICB9PjtcbiAgV2l0aGRyYXc6IElJbnN0cnVjdGlvbklucHV0RGF0YSAmXG4gICAgUmVhZG9ubHk8e1xuICAgICAgbGFtcG9ydHM6IG51bWJlcjtcbiAgICB9Pjtcbn07XG5cbi8qKlxuICogQW4gZW51bWVyYXRpb24gb2YgdmFsaWQgc3Rha2UgSW5zdHJ1Y3Rpb25UeXBlJ3NcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgY29uc3QgU1RBS0VfSU5TVFJVQ1RJT05fTEFZT1VUUyA9IE9iamVjdC5mcmVlemU8e1xuICBbSW5zdHJ1Y3Rpb24gaW4gU3Rha2VJbnN0cnVjdGlvblR5cGVdOiBJbnN0cnVjdGlvblR5cGU8XG4gICAgU3Rha2VJbnN0cnVjdGlvbklucHV0RGF0YVtJbnN0cnVjdGlvbl1cbiAgPjtcbn0+KHtcbiAgSW5pdGlhbGl6ZToge1xuICAgIGluZGV4OiAwLFxuICAgIGxheW91dDogQnVmZmVyTGF5b3V0LnN0cnVjdDxTdGFrZUluc3RydWN0aW9uSW5wdXREYXRhWydJbml0aWFsaXplJ10+KFtcbiAgICAgIEJ1ZmZlckxheW91dC51MzIoJ2luc3RydWN0aW9uJyksXG4gICAgICBMYXlvdXQuYXV0aG9yaXplZCgpLFxuICAgICAgTGF5b3V0LmxvY2t1cCgpLFxuICAgIF0pLFxuICB9LFxuICBBdXRob3JpemU6IHtcbiAgICBpbmRleDogMSxcbiAgICBsYXlvdXQ6IEJ1ZmZlckxheW91dC5zdHJ1Y3Q8U3Rha2VJbnN0cnVjdGlvbklucHV0RGF0YVsnQXV0aG9yaXplJ10+KFtcbiAgICAgIEJ1ZmZlckxheW91dC51MzIoJ2luc3RydWN0aW9uJyksXG4gICAgICBMYXlvdXQucHVibGljS2V5KCduZXdBdXRob3JpemVkJyksXG4gICAgICBCdWZmZXJMYXlvdXQudTMyKCdzdGFrZUF1dGhvcml6YXRpb25UeXBlJyksXG4gICAgXSksXG4gIH0sXG4gIERlbGVnYXRlOiB7XG4gICAgaW5kZXg6IDIsXG4gICAgbGF5b3V0OiBCdWZmZXJMYXlvdXQuc3RydWN0PFN0YWtlSW5zdHJ1Y3Rpb25JbnB1dERhdGFbJ0RlbGVnYXRlJ10+KFtcbiAgICAgIEJ1ZmZlckxheW91dC51MzIoJ2luc3RydWN0aW9uJyksXG4gICAgXSksXG4gIH0sXG4gIFNwbGl0OiB7XG4gICAgaW5kZXg6IDMsXG4gICAgbGF5b3V0OiBCdWZmZXJMYXlvdXQuc3RydWN0PFN0YWtlSW5zdHJ1Y3Rpb25JbnB1dERhdGFbJ1NwbGl0J10+KFtcbiAgICAgIEJ1ZmZlckxheW91dC51MzIoJ2luc3RydWN0aW9uJyksXG4gICAgICBCdWZmZXJMYXlvdXQubnM2NCgnbGFtcG9ydHMnKSxcbiAgICBdKSxcbiAgfSxcbiAgV2l0aGRyYXc6IHtcbiAgICBpbmRleDogNCxcbiAgICBsYXlvdXQ6IEJ1ZmZlckxheW91dC5zdHJ1Y3Q8U3Rha2VJbnN0cnVjdGlvbklucHV0RGF0YVsnV2l0aGRyYXcnXT4oW1xuICAgICAgQnVmZmVyTGF5b3V0LnUzMignaW5zdHJ1Y3Rpb24nKSxcbiAgICAgIEJ1ZmZlckxheW91dC5uczY0KCdsYW1wb3J0cycpLFxuICAgIF0pLFxuICB9LFxuICBEZWFjdGl2YXRlOiB7XG4gICAgaW5kZXg6IDUsXG4gICAgbGF5b3V0OiBCdWZmZXJMYXlvdXQuc3RydWN0PFN0YWtlSW5zdHJ1Y3Rpb25JbnB1dERhdGFbJ0RlYWN0aXZhdGUnXT4oW1xuICAgICAgQnVmZmVyTGF5b3V0LnUzMignaW5zdHJ1Y3Rpb24nKSxcbiAgICBdKSxcbiAgfSxcbiAgTWVyZ2U6IHtcbiAgICBpbmRleDogNyxcbiAgICBsYXlvdXQ6IEJ1ZmZlckxheW91dC5zdHJ1Y3Q8U3Rha2VJbnN0cnVjdGlvbklucHV0RGF0YVsnTWVyZ2UnXT4oW1xuICAgICAgQnVmZmVyTGF5b3V0LnUzMignaW5zdHJ1Y3Rpb24nKSxcbiAgICBdKSxcbiAgfSxcbiAgQXV0aG9yaXplV2l0aFNlZWQ6IHtcbiAgICBpbmRleDogOCxcbiAgICBsYXlvdXQ6IEJ1ZmZlckxheW91dC5zdHJ1Y3Q8U3Rha2VJbnN0cnVjdGlvbklucHV0RGF0YVsnQXV0aG9yaXplV2l0aFNlZWQnXT4oXG4gICAgICBbXG4gICAgICAgIEJ1ZmZlckxheW91dC51MzIoJ2luc3RydWN0aW9uJyksXG4gICAgICAgIExheW91dC5wdWJsaWNLZXkoJ25ld0F1dGhvcml6ZWQnKSxcbiAgICAgICAgQnVmZmVyTGF5b3V0LnUzMignc3Rha2VBdXRob3JpemF0aW9uVHlwZScpLFxuICAgICAgICBMYXlvdXQucnVzdFN0cmluZygnYXV0aG9yaXR5U2VlZCcpLFxuICAgICAgICBMYXlvdXQucHVibGljS2V5KCdhdXRob3JpdHlPd25lcicpLFxuICAgICAgXSxcbiAgICApLFxuICB9LFxufSk7XG5cbi8qKlxuICogU3Rha2UgYXV0aG9yaXphdGlvbiB0eXBlXG4gKi9cbmV4cG9ydCB0eXBlIFN0YWtlQXV0aG9yaXphdGlvblR5cGUgPSB7XG4gIC8qKiBUaGUgU3Rha2UgQXV0aG9yaXphdGlvbiBpbmRleCAoZnJvbSBzb2xhbmEtc3Rha2UtcHJvZ3JhbSkgKi9cbiAgaW5kZXg6IG51bWJlcjtcbn07XG5cbi8qKlxuICogQW4gZW51bWVyYXRpb24gb2YgdmFsaWQgU3Rha2VBdXRob3JpemF0aW9uTGF5b3V0J3NcbiAqL1xuZXhwb3J0IGNvbnN0IFN0YWtlQXV0aG9yaXphdGlvbkxheW91dCA9IE9iamVjdC5mcmVlemUoe1xuICBTdGFrZXI6IHtcbiAgICBpbmRleDogMCxcbiAgfSxcbiAgV2l0aGRyYXdlcjoge1xuICAgIGluZGV4OiAxLFxuICB9LFxufSk7XG5cbi8qKlxuICogRmFjdG9yeSBjbGFzcyBmb3IgdHJhbnNhY3Rpb25zIHRvIGludGVyYWN0IHdpdGggdGhlIFN0YWtlIHByb2dyYW1cbiAqL1xuZXhwb3J0IGNsYXNzIFN0YWtlUHJvZ3JhbSB7XG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICAvKipcbiAgICogUHVibGljIGtleSB0aGF0IGlkZW50aWZpZXMgdGhlIFN0YWtlIHByb2dyYW1cbiAgICovXG4gIHN0YXRpYyBwcm9ncmFtSWQ6IFB1YmxpY0tleSA9IG5ldyBQdWJsaWNLZXkoXG4gICAgJ1N0YWtlMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEnLFxuICApO1xuXG4gIC8qKlxuICAgKiBNYXggc3BhY2Ugb2YgYSBTdGFrZSBhY2NvdW50XG4gICAqXG4gICAqIFRoaXMgaXMgZ2VuZXJhdGVkIGZyb20gdGhlIHNvbGFuYS1zdGFrZS1wcm9ncmFtIFN0YWtlU3RhdGUgc3RydWN0IGFzXG4gICAqIGBTdGFrZVN0YXRlOjpzaXplX29mKClgOlxuICAgKiBodHRwczovL2RvY3MucnMvc29sYW5hLXN0YWtlLXByb2dyYW0vbGF0ZXN0L3NvbGFuYV9zdGFrZV9wcm9ncmFtL3N0YWtlX3N0YXRlL2VudW0uU3Rha2VTdGF0ZS5odG1sXG4gICAqL1xuICBzdGF0aWMgc3BhY2U6IG51bWJlciA9IDIwMDtcblxuICAvKipcbiAgICogR2VuZXJhdGUgYW4gSW5pdGlhbGl6ZSBpbnN0cnVjdGlvbiB0byBhZGQgdG8gYSBTdGFrZSBDcmVhdGUgdHJhbnNhY3Rpb25cbiAgICovXG4gIHN0YXRpYyBpbml0aWFsaXplKHBhcmFtczogSW5pdGlhbGl6ZVN0YWtlUGFyYW1zKTogVHJhbnNhY3Rpb25JbnN0cnVjdGlvbiB7XG4gICAgY29uc3Qge3N0YWtlUHVia2V5LCBhdXRob3JpemVkLCBsb2NrdXA6IG1heWJlTG9ja3VwfSA9IHBhcmFtcztcbiAgICBjb25zdCBsb2NrdXA6IExvY2t1cCA9IG1heWJlTG9ja3VwIHx8IExvY2t1cC5kZWZhdWx0O1xuICAgIGNvbnN0IHR5cGUgPSBTVEFLRV9JTlNUUlVDVElPTl9MQVlPVVRTLkluaXRpYWxpemU7XG4gICAgY29uc3QgZGF0YSA9IGVuY29kZURhdGEodHlwZSwge1xuICAgICAgYXV0aG9yaXplZDoge1xuICAgICAgICBzdGFrZXI6IHRvQnVmZmVyKGF1dGhvcml6ZWQuc3Rha2VyLnRvQnVmZmVyKCkpLFxuICAgICAgICB3aXRoZHJhd2VyOiB0b0J1ZmZlcihhdXRob3JpemVkLndpdGhkcmF3ZXIudG9CdWZmZXIoKSksXG4gICAgICB9LFxuICAgICAgbG9ja3VwOiB7XG4gICAgICAgIHVuaXhUaW1lc3RhbXA6IGxvY2t1cC51bml4VGltZXN0YW1wLFxuICAgICAgICBlcG9jaDogbG9ja3VwLmVwb2NoLFxuICAgICAgICBjdXN0b2RpYW46IHRvQnVmZmVyKGxvY2t1cC5jdXN0b2RpYW4udG9CdWZmZXIoKSksXG4gICAgICB9LFxuICAgIH0pO1xuICAgIGNvbnN0IGluc3RydWN0aW9uRGF0YSA9IHtcbiAgICAgIGtleXM6IFtcbiAgICAgICAge3B1YmtleTogc3Rha2VQdWJrZXksIGlzU2lnbmVyOiBmYWxzZSwgaXNXcml0YWJsZTogdHJ1ZX0sXG4gICAgICAgIHtwdWJrZXk6IFNZU1ZBUl9SRU5UX1BVQktFWSwgaXNTaWduZXI6IGZhbHNlLCBpc1dyaXRhYmxlOiBmYWxzZX0sXG4gICAgICBdLFxuICAgICAgcHJvZ3JhbUlkOiB0aGlzLnByb2dyYW1JZCxcbiAgICAgIGRhdGEsXG4gICAgfTtcbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24oaW5zdHJ1Y3Rpb25EYXRhKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZSBhIFRyYW5zYWN0aW9uIHRoYXQgY3JlYXRlcyBhIG5ldyBTdGFrZSBhY2NvdW50IGF0XG4gICAqICAgYW4gYWRkcmVzcyBnZW5lcmF0ZWQgd2l0aCBgZnJvbWAsIGEgc2VlZCwgYW5kIHRoZSBTdGFrZSBwcm9ncmFtSWRcbiAgICovXG4gIHN0YXRpYyBjcmVhdGVBY2NvdW50V2l0aFNlZWQoXG4gICAgcGFyYW1zOiBDcmVhdGVTdGFrZUFjY291bnRXaXRoU2VlZFBhcmFtcyxcbiAgKTogVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IHRyYW5zYWN0aW9uID0gbmV3IFRyYW5zYWN0aW9uKCk7XG4gICAgdHJhbnNhY3Rpb24uYWRkKFxuICAgICAgU3lzdGVtUHJvZ3JhbS5jcmVhdGVBY2NvdW50V2l0aFNlZWQoe1xuICAgICAgICBmcm9tUHVia2V5OiBwYXJhbXMuZnJvbVB1YmtleSxcbiAgICAgICAgbmV3QWNjb3VudFB1YmtleTogcGFyYW1zLnN0YWtlUHVia2V5LFxuICAgICAgICBiYXNlUHVia2V5OiBwYXJhbXMuYmFzZVB1YmtleSxcbiAgICAgICAgc2VlZDogcGFyYW1zLnNlZWQsXG4gICAgICAgIGxhbXBvcnRzOiBwYXJhbXMubGFtcG9ydHMsXG4gICAgICAgIHNwYWNlOiB0aGlzLnNwYWNlLFxuICAgICAgICBwcm9ncmFtSWQ6IHRoaXMucHJvZ3JhbUlkLFxuICAgICAgfSksXG4gICAgKTtcblxuICAgIGNvbnN0IHtzdGFrZVB1YmtleSwgYXV0aG9yaXplZCwgbG9ja3VwfSA9IHBhcmFtcztcbiAgICByZXR1cm4gdHJhbnNhY3Rpb24uYWRkKHRoaXMuaW5pdGlhbGl6ZSh7c3Rha2VQdWJrZXksIGF1dGhvcml6ZWQsIGxvY2t1cH0pKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZSBhIFRyYW5zYWN0aW9uIHRoYXQgY3JlYXRlcyBhIG5ldyBTdGFrZSBhY2NvdW50XG4gICAqL1xuICBzdGF0aWMgY3JlYXRlQWNjb3VudChwYXJhbXM6IENyZWF0ZVN0YWtlQWNjb3VudFBhcmFtcyk6IFRyYW5zYWN0aW9uIHtcbiAgICBjb25zdCB0cmFuc2FjdGlvbiA9IG5ldyBUcmFuc2FjdGlvbigpO1xuICAgIHRyYW5zYWN0aW9uLmFkZChcbiAgICAgIFN5c3RlbVByb2dyYW0uY3JlYXRlQWNjb3VudCh7XG4gICAgICAgIGZyb21QdWJrZXk6IHBhcmFtcy5mcm9tUHVia2V5LFxuICAgICAgICBuZXdBY2NvdW50UHVia2V5OiBwYXJhbXMuc3Rha2VQdWJrZXksXG4gICAgICAgIGxhbXBvcnRzOiBwYXJhbXMubGFtcG9ydHMsXG4gICAgICAgIHNwYWNlOiB0aGlzLnNwYWNlLFxuICAgICAgICBwcm9ncmFtSWQ6IHRoaXMucHJvZ3JhbUlkLFxuICAgICAgfSksXG4gICAgKTtcblxuICAgIGNvbnN0IHtzdGFrZVB1YmtleSwgYXV0aG9yaXplZCwgbG9ja3VwfSA9IHBhcmFtcztcbiAgICByZXR1cm4gdHJhbnNhY3Rpb24uYWRkKHRoaXMuaW5pdGlhbGl6ZSh7c3Rha2VQdWJrZXksIGF1dGhvcml6ZWQsIGxvY2t1cH0pKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZSBhIFRyYW5zYWN0aW9uIHRoYXQgZGVsZWdhdGVzIFN0YWtlIHRva2VucyB0byBhIHZhbGlkYXRvclxuICAgKiBWb3RlIFB1YmxpY0tleS4gVGhpcyB0cmFuc2FjdGlvbiBjYW4gYWxzbyBiZSB1c2VkIHRvIHJlZGVsZWdhdGUgU3Rha2VcbiAgICogdG8gYSBuZXcgdmFsaWRhdG9yIFZvdGUgUHVibGljS2V5LlxuICAgKi9cbiAgc3RhdGljIGRlbGVnYXRlKHBhcmFtczogRGVsZWdhdGVTdGFrZVBhcmFtcyk6IFRyYW5zYWN0aW9uIHtcbiAgICBjb25zdCB7c3Rha2VQdWJrZXksIGF1dGhvcml6ZWRQdWJrZXksIHZvdGVQdWJrZXl9ID0gcGFyYW1zO1xuXG4gICAgY29uc3QgdHlwZSA9IFNUQUtFX0lOU1RSVUNUSU9OX0xBWU9VVFMuRGVsZWdhdGU7XG4gICAgY29uc3QgZGF0YSA9IGVuY29kZURhdGEodHlwZSk7XG5cbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uKCkuYWRkKHtcbiAgICAgIGtleXM6IFtcbiAgICAgICAge3B1YmtleTogc3Rha2VQdWJrZXksIGlzU2lnbmVyOiBmYWxzZSwgaXNXcml0YWJsZTogdHJ1ZX0sXG4gICAgICAgIHtwdWJrZXk6IHZvdGVQdWJrZXksIGlzU2lnbmVyOiBmYWxzZSwgaXNXcml0YWJsZTogZmFsc2V9LFxuICAgICAgICB7cHVia2V5OiBTWVNWQVJfQ0xPQ0tfUFVCS0VZLCBpc1NpZ25lcjogZmFsc2UsIGlzV3JpdGFibGU6IGZhbHNlfSxcbiAgICAgICAge1xuICAgICAgICAgIHB1YmtleTogU1lTVkFSX1NUQUtFX0hJU1RPUllfUFVCS0VZLFxuICAgICAgICAgIGlzU2lnbmVyOiBmYWxzZSxcbiAgICAgICAgICBpc1dyaXRhYmxlOiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICAgICAge3B1YmtleTogU1RBS0VfQ09ORklHX0lELCBpc1NpZ25lcjogZmFsc2UsIGlzV3JpdGFibGU6IGZhbHNlfSxcbiAgICAgICAge3B1YmtleTogYXV0aG9yaXplZFB1YmtleSwgaXNTaWduZXI6IHRydWUsIGlzV3JpdGFibGU6IGZhbHNlfSxcbiAgICAgIF0sXG4gICAgICBwcm9ncmFtSWQ6IHRoaXMucHJvZ3JhbUlkLFxuICAgICAgZGF0YSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZSBhIFRyYW5zYWN0aW9uIHRoYXQgYXV0aG9yaXplcyBhIG5ldyBQdWJsaWNLZXkgYXMgU3Rha2VyXG4gICAqIG9yIFdpdGhkcmF3ZXIgb24gdGhlIFN0YWtlIGFjY291bnQuXG4gICAqL1xuICBzdGF0aWMgYXV0aG9yaXplKHBhcmFtczogQXV0aG9yaXplU3Rha2VQYXJhbXMpOiBUcmFuc2FjdGlvbiB7XG4gICAgY29uc3Qge1xuICAgICAgc3Rha2VQdWJrZXksXG4gICAgICBhdXRob3JpemVkUHVia2V5LFxuICAgICAgbmV3QXV0aG9yaXplZFB1YmtleSxcbiAgICAgIHN0YWtlQXV0aG9yaXphdGlvblR5cGUsXG4gICAgICBjdXN0b2RpYW5QdWJrZXksXG4gICAgfSA9IHBhcmFtcztcblxuICAgIGNvbnN0IHR5cGUgPSBTVEFLRV9JTlNUUlVDVElPTl9MQVlPVVRTLkF1dGhvcml6ZTtcbiAgICBjb25zdCBkYXRhID0gZW5jb2RlRGF0YSh0eXBlLCB7XG4gICAgICBuZXdBdXRob3JpemVkOiB0b0J1ZmZlcihuZXdBdXRob3JpemVkUHVia2V5LnRvQnVmZmVyKCkpLFxuICAgICAgc3Rha2VBdXRob3JpemF0aW9uVHlwZTogc3Rha2VBdXRob3JpemF0aW9uVHlwZS5pbmRleCxcbiAgICB9KTtcblxuICAgIGNvbnN0IGtleXMgPSBbXG4gICAgICB7cHVia2V5OiBzdGFrZVB1YmtleSwgaXNTaWduZXI6IGZhbHNlLCBpc1dyaXRhYmxlOiB0cnVlfSxcbiAgICAgIHtwdWJrZXk6IFNZU1ZBUl9DTE9DS19QVUJLRVksIGlzU2lnbmVyOiBmYWxzZSwgaXNXcml0YWJsZTogdHJ1ZX0sXG4gICAgICB7cHVia2V5OiBhdXRob3JpemVkUHVia2V5LCBpc1NpZ25lcjogdHJ1ZSwgaXNXcml0YWJsZTogZmFsc2V9LFxuICAgIF07XG4gICAgaWYgKGN1c3RvZGlhblB1YmtleSkge1xuICAgICAga2V5cy5wdXNoKHtcbiAgICAgICAgcHVia2V5OiBjdXN0b2RpYW5QdWJrZXksXG4gICAgICAgIGlzU2lnbmVyOiBmYWxzZSxcbiAgICAgICAgaXNXcml0YWJsZTogZmFsc2UsXG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbigpLmFkZCh7XG4gICAgICBrZXlzLFxuICAgICAgcHJvZ3JhbUlkOiB0aGlzLnByb2dyYW1JZCxcbiAgICAgIGRhdGEsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogR2VuZXJhdGUgYSBUcmFuc2FjdGlvbiB0aGF0IGF1dGhvcml6ZXMgYSBuZXcgUHVibGljS2V5IGFzIFN0YWtlclxuICAgKiBvciBXaXRoZHJhd2VyIG9uIHRoZSBTdGFrZSBhY2NvdW50LlxuICAgKi9cbiAgc3RhdGljIGF1dGhvcml6ZVdpdGhTZWVkKHBhcmFtczogQXV0aG9yaXplV2l0aFNlZWRTdGFrZVBhcmFtcyk6IFRyYW5zYWN0aW9uIHtcbiAgICBjb25zdCB7XG4gICAgICBzdGFrZVB1YmtleSxcbiAgICAgIGF1dGhvcml0eUJhc2UsXG4gICAgICBhdXRob3JpdHlTZWVkLFxuICAgICAgYXV0aG9yaXR5T3duZXIsXG4gICAgICBuZXdBdXRob3JpemVkUHVia2V5LFxuICAgICAgc3Rha2VBdXRob3JpemF0aW9uVHlwZSxcbiAgICAgIGN1c3RvZGlhblB1YmtleSxcbiAgICB9ID0gcGFyYW1zO1xuXG4gICAgY29uc3QgdHlwZSA9IFNUQUtFX0lOU1RSVUNUSU9OX0xBWU9VVFMuQXV0aG9yaXplV2l0aFNlZWQ7XG4gICAgY29uc3QgZGF0YSA9IGVuY29kZURhdGEodHlwZSwge1xuICAgICAgbmV3QXV0aG9yaXplZDogdG9CdWZmZXIobmV3QXV0aG9yaXplZFB1YmtleS50b0J1ZmZlcigpKSxcbiAgICAgIHN0YWtlQXV0aG9yaXphdGlvblR5cGU6IHN0YWtlQXV0aG9yaXphdGlvblR5cGUuaW5kZXgsXG4gICAgICBhdXRob3JpdHlTZWVkOiBhdXRob3JpdHlTZWVkLFxuICAgICAgYXV0aG9yaXR5T3duZXI6IHRvQnVmZmVyKGF1dGhvcml0eU93bmVyLnRvQnVmZmVyKCkpLFxuICAgIH0pO1xuXG4gICAgY29uc3Qga2V5cyA9IFtcbiAgICAgIHtwdWJrZXk6IHN0YWtlUHVia2V5LCBpc1NpZ25lcjogZmFsc2UsIGlzV3JpdGFibGU6IHRydWV9LFxuICAgICAge3B1YmtleTogYXV0aG9yaXR5QmFzZSwgaXNTaWduZXI6IHRydWUsIGlzV3JpdGFibGU6IGZhbHNlfSxcbiAgICAgIHtwdWJrZXk6IFNZU1ZBUl9DTE9DS19QVUJLRVksIGlzU2lnbmVyOiBmYWxzZSwgaXNXcml0YWJsZTogZmFsc2V9LFxuICAgIF07XG4gICAgaWYgKGN1c3RvZGlhblB1YmtleSkge1xuICAgICAga2V5cy5wdXNoKHtcbiAgICAgICAgcHVia2V5OiBjdXN0b2RpYW5QdWJrZXksXG4gICAgICAgIGlzU2lnbmVyOiBmYWxzZSxcbiAgICAgICAgaXNXcml0YWJsZTogZmFsc2UsXG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbigpLmFkZCh7XG4gICAgICBrZXlzLFxuICAgICAgcHJvZ3JhbUlkOiB0aGlzLnByb2dyYW1JZCxcbiAgICAgIGRhdGEsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBzdGF0aWMgc3BsaXRJbnN0cnVjdGlvbihwYXJhbXM6IFNwbGl0U3Rha2VQYXJhbXMpOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uIHtcbiAgICBjb25zdCB7c3Rha2VQdWJrZXksIGF1dGhvcml6ZWRQdWJrZXksIHNwbGl0U3Rha2VQdWJrZXksIGxhbXBvcnRzfSA9IHBhcmFtcztcbiAgICBjb25zdCB0eXBlID0gU1RBS0VfSU5TVFJVQ1RJT05fTEFZT1VUUy5TcGxpdDtcbiAgICBjb25zdCBkYXRhID0gZW5jb2RlRGF0YSh0eXBlLCB7bGFtcG9ydHN9KTtcbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24oe1xuICAgICAga2V5czogW1xuICAgICAgICB7cHVia2V5OiBzdGFrZVB1YmtleSwgaXNTaWduZXI6IGZhbHNlLCBpc1dyaXRhYmxlOiB0cnVlfSxcbiAgICAgICAge3B1YmtleTogc3BsaXRTdGFrZVB1YmtleSwgaXNTaWduZXI6IGZhbHNlLCBpc1dyaXRhYmxlOiB0cnVlfSxcbiAgICAgICAge3B1YmtleTogYXV0aG9yaXplZFB1YmtleSwgaXNTaWduZXI6IHRydWUsIGlzV3JpdGFibGU6IGZhbHNlfSxcbiAgICAgIF0sXG4gICAgICBwcm9ncmFtSWQ6IHRoaXMucHJvZ3JhbUlkLFxuICAgICAgZGF0YSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZSBhIFRyYW5zYWN0aW9uIHRoYXQgc3BsaXRzIFN0YWtlIHRva2VucyBpbnRvIGFub3RoZXIgc3Rha2UgYWNjb3VudFxuICAgKi9cbiAgc3RhdGljIHNwbGl0KHBhcmFtczogU3BsaXRTdGFrZVBhcmFtcyk6IFRyYW5zYWN0aW9uIHtcbiAgICBjb25zdCB0cmFuc2FjdGlvbiA9IG5ldyBUcmFuc2FjdGlvbigpO1xuICAgIHRyYW5zYWN0aW9uLmFkZChcbiAgICAgIFN5c3RlbVByb2dyYW0uY3JlYXRlQWNjb3VudCh7XG4gICAgICAgIGZyb21QdWJrZXk6IHBhcmFtcy5hdXRob3JpemVkUHVia2V5LFxuICAgICAgICBuZXdBY2NvdW50UHVia2V5OiBwYXJhbXMuc3BsaXRTdGFrZVB1YmtleSxcbiAgICAgICAgbGFtcG9ydHM6IDAsXG4gICAgICAgIHNwYWNlOiB0aGlzLnNwYWNlLFxuICAgICAgICBwcm9ncmFtSWQ6IHRoaXMucHJvZ3JhbUlkLFxuICAgICAgfSksXG4gICAgKTtcbiAgICByZXR1cm4gdHJhbnNhY3Rpb24uYWRkKHRoaXMuc3BsaXRJbnN0cnVjdGlvbihwYXJhbXMpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZSBhIFRyYW5zYWN0aW9uIHRoYXQgc3BsaXRzIFN0YWtlIHRva2VucyBpbnRvIGFub3RoZXIgYWNjb3VudFxuICAgKiBkZXJpdmVkIGZyb20gYSBiYXNlIHB1YmxpYyBrZXkgYW5kIHNlZWRcbiAgICovXG4gIHN0YXRpYyBzcGxpdFdpdGhTZWVkKHBhcmFtczogU3BsaXRTdGFrZVdpdGhTZWVkUGFyYW1zKTogVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IHtcbiAgICAgIHN0YWtlUHVia2V5LFxuICAgICAgYXV0aG9yaXplZFB1YmtleSxcbiAgICAgIHNwbGl0U3Rha2VQdWJrZXksXG4gICAgICBiYXNlUHVia2V5LFxuICAgICAgc2VlZCxcbiAgICAgIGxhbXBvcnRzLFxuICAgIH0gPSBwYXJhbXM7XG4gICAgY29uc3QgdHJhbnNhY3Rpb24gPSBuZXcgVHJhbnNhY3Rpb24oKTtcbiAgICB0cmFuc2FjdGlvbi5hZGQoXG4gICAgICBTeXN0ZW1Qcm9ncmFtLmFsbG9jYXRlKHtcbiAgICAgICAgYWNjb3VudFB1YmtleTogc3BsaXRTdGFrZVB1YmtleSxcbiAgICAgICAgYmFzZVB1YmtleSxcbiAgICAgICAgc2VlZCxcbiAgICAgICAgc3BhY2U6IHRoaXMuc3BhY2UsXG4gICAgICAgIHByb2dyYW1JZDogdGhpcy5wcm9ncmFtSWQsXG4gICAgICB9KSxcbiAgICApO1xuICAgIHJldHVybiB0cmFuc2FjdGlvbi5hZGQoXG4gICAgICB0aGlzLnNwbGl0SW5zdHJ1Y3Rpb24oe1xuICAgICAgICBzdGFrZVB1YmtleSxcbiAgICAgICAgYXV0aG9yaXplZFB1YmtleSxcbiAgICAgICAgc3BsaXRTdGFrZVB1YmtleSxcbiAgICAgICAgbGFtcG9ydHMsXG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlIGEgVHJhbnNhY3Rpb24gdGhhdCBtZXJnZXMgU3Rha2UgYWNjb3VudHMuXG4gICAqL1xuICBzdGF0aWMgbWVyZ2UocGFyYW1zOiBNZXJnZVN0YWtlUGFyYW1zKTogVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IHtzdGFrZVB1YmtleSwgc291cmNlU3Rha2VQdWJLZXksIGF1dGhvcml6ZWRQdWJrZXl9ID0gcGFyYW1zO1xuICAgIGNvbnN0IHR5cGUgPSBTVEFLRV9JTlNUUlVDVElPTl9MQVlPVVRTLk1lcmdlO1xuICAgIGNvbnN0IGRhdGEgPSBlbmNvZGVEYXRhKHR5cGUpO1xuXG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbigpLmFkZCh7XG4gICAgICBrZXlzOiBbXG4gICAgICAgIHtwdWJrZXk6IHN0YWtlUHVia2V5LCBpc1NpZ25lcjogZmFsc2UsIGlzV3JpdGFibGU6IHRydWV9LFxuICAgICAgICB7cHVia2V5OiBzb3VyY2VTdGFrZVB1YktleSwgaXNTaWduZXI6IGZhbHNlLCBpc1dyaXRhYmxlOiB0cnVlfSxcbiAgICAgICAge3B1YmtleTogU1lTVkFSX0NMT0NLX1BVQktFWSwgaXNTaWduZXI6IGZhbHNlLCBpc1dyaXRhYmxlOiBmYWxzZX0sXG4gICAgICAgIHtcbiAgICAgICAgICBwdWJrZXk6IFNZU1ZBUl9TVEFLRV9ISVNUT1JZX1BVQktFWSxcbiAgICAgICAgICBpc1NpZ25lcjogZmFsc2UsXG4gICAgICAgICAgaXNXcml0YWJsZTogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICAgIHtwdWJrZXk6IGF1dGhvcml6ZWRQdWJrZXksIGlzU2lnbmVyOiB0cnVlLCBpc1dyaXRhYmxlOiBmYWxzZX0sXG4gICAgICBdLFxuICAgICAgcHJvZ3JhbUlkOiB0aGlzLnByb2dyYW1JZCxcbiAgICAgIGRhdGEsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogR2VuZXJhdGUgYSBUcmFuc2FjdGlvbiB0aGF0IHdpdGhkcmF3cyBkZWFjdGl2YXRlZCBTdGFrZSB0b2tlbnMuXG4gICAqL1xuICBzdGF0aWMgd2l0aGRyYXcocGFyYW1zOiBXaXRoZHJhd1N0YWtlUGFyYW1zKTogVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IHtzdGFrZVB1YmtleSwgYXV0aG9yaXplZFB1YmtleSwgdG9QdWJrZXksIGxhbXBvcnRzLCBjdXN0b2RpYW5QdWJrZXl9ID1cbiAgICAgIHBhcmFtcztcbiAgICBjb25zdCB0eXBlID0gU1RBS0VfSU5TVFJVQ1RJT05fTEFZT1VUUy5XaXRoZHJhdztcbiAgICBjb25zdCBkYXRhID0gZW5jb2RlRGF0YSh0eXBlLCB7bGFtcG9ydHN9KTtcblxuICAgIGNvbnN0IGtleXMgPSBbXG4gICAgICB7cHVia2V5OiBzdGFrZVB1YmtleSwgaXNTaWduZXI6IGZhbHNlLCBpc1dyaXRhYmxlOiB0cnVlfSxcbiAgICAgIHtwdWJrZXk6IHRvUHVia2V5LCBpc1NpZ25lcjogZmFsc2UsIGlzV3JpdGFibGU6IHRydWV9LFxuICAgICAge3B1YmtleTogU1lTVkFSX0NMT0NLX1BVQktFWSwgaXNTaWduZXI6IGZhbHNlLCBpc1dyaXRhYmxlOiBmYWxzZX0sXG4gICAgICB7XG4gICAgICAgIHB1YmtleTogU1lTVkFSX1NUQUtFX0hJU1RPUllfUFVCS0VZLFxuICAgICAgICBpc1NpZ25lcjogZmFsc2UsXG4gICAgICAgIGlzV3JpdGFibGU6IGZhbHNlLFxuICAgICAgfSxcbiAgICAgIHtwdWJrZXk6IGF1dGhvcml6ZWRQdWJrZXksIGlzU2lnbmVyOiB0cnVlLCBpc1dyaXRhYmxlOiBmYWxzZX0sXG4gICAgXTtcbiAgICBpZiAoY3VzdG9kaWFuUHVia2V5KSB7XG4gICAgICBrZXlzLnB1c2goe1xuICAgICAgICBwdWJrZXk6IGN1c3RvZGlhblB1YmtleSxcbiAgICAgICAgaXNTaWduZXI6IGZhbHNlLFxuICAgICAgICBpc1dyaXRhYmxlOiBmYWxzZSxcbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uKCkuYWRkKHtcbiAgICAgIGtleXMsXG4gICAgICBwcm9ncmFtSWQ6IHRoaXMucHJvZ3JhbUlkLFxuICAgICAgZGF0YSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZSBhIFRyYW5zYWN0aW9uIHRoYXQgZGVhY3RpdmF0ZXMgU3Rha2UgdG9rZW5zLlxuICAgKi9cbiAgc3RhdGljIGRlYWN0aXZhdGUocGFyYW1zOiBEZWFjdGl2YXRlU3Rha2VQYXJhbXMpOiBUcmFuc2FjdGlvbiB7XG4gICAgY29uc3Qge3N0YWtlUHVia2V5LCBhdXRob3JpemVkUHVia2V5fSA9IHBhcmFtcztcbiAgICBjb25zdCB0eXBlID0gU1RBS0VfSU5TVFJVQ1RJT05fTEFZT1VUUy5EZWFjdGl2YXRlO1xuICAgIGNvbnN0IGRhdGEgPSBlbmNvZGVEYXRhKHR5cGUpO1xuXG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbigpLmFkZCh7XG4gICAgICBrZXlzOiBbXG4gICAgICAgIHtwdWJrZXk6IHN0YWtlUHVia2V5LCBpc1NpZ25lcjogZmFsc2UsIGlzV3JpdGFibGU6IHRydWV9LFxuICAgICAgICB7cHVia2V5OiBTWVNWQVJfQ0xPQ0tfUFVCS0VZLCBpc1NpZ25lcjogZmFsc2UsIGlzV3JpdGFibGU6IGZhbHNlfSxcbiAgICAgICAge3B1YmtleTogYXV0aG9yaXplZFB1YmtleSwgaXNTaWduZXI6IHRydWUsIGlzV3JpdGFibGU6IGZhbHNlfSxcbiAgICAgIF0sXG4gICAgICBwcm9ncmFtSWQ6IHRoaXMucHJvZ3JhbUlkLFxuICAgICAgZGF0YSxcbiAgICB9KTtcbiAgfVxufVxuIiwgImltcG9ydCAqIGFzIEJ1ZmZlckxheW91dCBmcm9tICdAc29sYW5hL2J1ZmZlci1sYXlvdXQnO1xuXG5pbXBvcnQge1xuICBlbmNvZGVEYXRhLFxuICBkZWNvZGVEYXRhLFxuICBJbnN0cnVjdGlvblR5cGUsXG4gIElJbnN0cnVjdGlvbklucHV0RGF0YSxcbn0gZnJvbSAnLi4vaW5zdHJ1Y3Rpb24nO1xuaW1wb3J0ICogYXMgTGF5b3V0IGZyb20gJy4uL2xheW91dCc7XG5pbXBvcnQge1B1YmxpY0tleX0gZnJvbSAnLi4vcHVibGlja2V5JztcbmltcG9ydCB7U3lzdGVtUHJvZ3JhbX0gZnJvbSAnLi9zeXN0ZW0nO1xuaW1wb3J0IHtTWVNWQVJfQ0xPQ0tfUFVCS0VZLCBTWVNWQVJfUkVOVF9QVUJLRVl9IGZyb20gJy4uL3N5c3Zhcic7XG5pbXBvcnQge1RyYW5zYWN0aW9uLCBUcmFuc2FjdGlvbkluc3RydWN0aW9ufSBmcm9tICcuLi90cmFuc2FjdGlvbic7XG5pbXBvcnQge3RvQnVmZmVyfSBmcm9tICcuLi91dGlscy90by1idWZmZXInO1xuXG4vKipcbiAqIFZvdGUgYWNjb3VudCBpbmZvXG4gKi9cbmV4cG9ydCBjbGFzcyBWb3RlSW5pdCB7XG4gIG5vZGVQdWJrZXk6IFB1YmxpY0tleTtcbiAgYXV0aG9yaXplZFZvdGVyOiBQdWJsaWNLZXk7XG4gIGF1dGhvcml6ZWRXaXRoZHJhd2VyOiBQdWJsaWNLZXk7XG4gIGNvbW1pc3Npb246IG51bWJlcjsgLyoqIFswLCAxMDBdICovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgbm9kZVB1YmtleTogUHVibGljS2V5LFxuICAgIGF1dGhvcml6ZWRWb3RlcjogUHVibGljS2V5LFxuICAgIGF1dGhvcml6ZWRXaXRoZHJhd2VyOiBQdWJsaWNLZXksXG4gICAgY29tbWlzc2lvbjogbnVtYmVyLFxuICApIHtcbiAgICB0aGlzLm5vZGVQdWJrZXkgPSBub2RlUHVia2V5O1xuICAgIHRoaXMuYXV0aG9yaXplZFZvdGVyID0gYXV0aG9yaXplZFZvdGVyO1xuICAgIHRoaXMuYXV0aG9yaXplZFdpdGhkcmF3ZXIgPSBhdXRob3JpemVkV2l0aGRyYXdlcjtcbiAgICB0aGlzLmNvbW1pc3Npb24gPSBjb21taXNzaW9uO1xuICB9XG59XG5cbi8qKlxuICogQ3JlYXRlIHZvdGUgYWNjb3VudCB0cmFuc2FjdGlvbiBwYXJhbXNcbiAqL1xuZXhwb3J0IHR5cGUgQ3JlYXRlVm90ZUFjY291bnRQYXJhbXMgPSB7XG4gIGZyb21QdWJrZXk6IFB1YmxpY0tleTtcbiAgdm90ZVB1YmtleTogUHVibGljS2V5O1xuICB2b3RlSW5pdDogVm90ZUluaXQ7XG4gIGxhbXBvcnRzOiBudW1iZXI7XG59O1xuXG4vKipcbiAqIEluaXRpYWxpemVBY2NvdW50IGluc3RydWN0aW9uIHBhcmFtc1xuICovXG5leHBvcnQgdHlwZSBJbml0aWFsaXplQWNjb3VudFBhcmFtcyA9IHtcbiAgdm90ZVB1YmtleTogUHVibGljS2V5O1xuICBub2RlUHVia2V5OiBQdWJsaWNLZXk7XG4gIHZvdGVJbml0OiBWb3RlSW5pdDtcbn07XG5cbi8qKlxuICogQXV0aG9yaXplIGluc3RydWN0aW9uIHBhcmFtc1xuICovXG5leHBvcnQgdHlwZSBBdXRob3JpemVWb3RlUGFyYW1zID0ge1xuICB2b3RlUHVia2V5OiBQdWJsaWNLZXk7XG4gIC8qKiBDdXJyZW50IHZvdGUgb3Igd2l0aGRyYXcgYXV0aG9yaXR5LCBkZXBlbmRpbmcgb24gYHZvdGVBdXRob3JpemF0aW9uVHlwZWAgKi9cbiAgYXV0aG9yaXplZFB1YmtleTogUHVibGljS2V5O1xuICBuZXdBdXRob3JpemVkUHVia2V5OiBQdWJsaWNLZXk7XG4gIHZvdGVBdXRob3JpemF0aW9uVHlwZTogVm90ZUF1dGhvcml6YXRpb25UeXBlO1xufTtcblxuLyoqXG4gKiBBdXRob3JpemVXaXRoU2VlZCBpbnN0cnVjdGlvbiBwYXJhbXNcbiAqL1xuZXhwb3J0IHR5cGUgQXV0aG9yaXplVm90ZVdpdGhTZWVkUGFyYW1zID0ge1xuICBjdXJyZW50QXV0aG9yaXR5RGVyaXZlZEtleUJhc2VQdWJrZXk6IFB1YmxpY0tleTtcbiAgY3VycmVudEF1dGhvcml0eURlcml2ZWRLZXlPd25lclB1YmtleTogUHVibGljS2V5O1xuICBjdXJyZW50QXV0aG9yaXR5RGVyaXZlZEtleVNlZWQ6IHN0cmluZztcbiAgbmV3QXV0aG9yaXplZFB1YmtleTogUHVibGljS2V5O1xuICB2b3RlQXV0aG9yaXphdGlvblR5cGU6IFZvdGVBdXRob3JpemF0aW9uVHlwZTtcbiAgdm90ZVB1YmtleTogUHVibGljS2V5O1xufTtcblxuLyoqXG4gKiBXaXRoZHJhdyBmcm9tIHZvdGUgYWNjb3VudCB0cmFuc2FjdGlvbiBwYXJhbXNcbiAqL1xuZXhwb3J0IHR5cGUgV2l0aGRyYXdGcm9tVm90ZUFjY291bnRQYXJhbXMgPSB7XG4gIHZvdGVQdWJrZXk6IFB1YmxpY0tleTtcbiAgYXV0aG9yaXplZFdpdGhkcmF3ZXJQdWJrZXk6IFB1YmxpY0tleTtcbiAgbGFtcG9ydHM6IG51bWJlcjtcbiAgdG9QdWJrZXk6IFB1YmxpY0tleTtcbn07XG5cbi8qKlxuICogVm90ZSBJbnN0cnVjdGlvbiBjbGFzc1xuICovXG5leHBvcnQgY2xhc3MgVm90ZUluc3RydWN0aW9uIHtcbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIC8qKlxuICAgKiBEZWNvZGUgYSB2b3RlIGluc3RydWN0aW9uIGFuZCByZXRyaWV2ZSB0aGUgaW5zdHJ1Y3Rpb24gdHlwZS5cbiAgICovXG4gIHN0YXRpYyBkZWNvZGVJbnN0cnVjdGlvblR5cGUoXG4gICAgaW5zdHJ1Y3Rpb246IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24sXG4gICk6IFZvdGVJbnN0cnVjdGlvblR5cGUge1xuICAgIHRoaXMuY2hlY2tQcm9ncmFtSWQoaW5zdHJ1Y3Rpb24ucHJvZ3JhbUlkKTtcblxuICAgIGNvbnN0IGluc3RydWN0aW9uVHlwZUxheW91dCA9IEJ1ZmZlckxheW91dC51MzIoJ2luc3RydWN0aW9uJyk7XG4gICAgY29uc3QgdHlwZUluZGV4ID0gaW5zdHJ1Y3Rpb25UeXBlTGF5b3V0LmRlY29kZShpbnN0cnVjdGlvbi5kYXRhKTtcblxuICAgIGxldCB0eXBlOiBWb3RlSW5zdHJ1Y3Rpb25UeXBlIHwgdW5kZWZpbmVkO1xuICAgIGZvciAoY29uc3QgW2l4VHlwZSwgbGF5b3V0XSBvZiBPYmplY3QuZW50cmllcyhWT1RFX0lOU1RSVUNUSU9OX0xBWU9VVFMpKSB7XG4gICAgICBpZiAobGF5b3V0LmluZGV4ID09IHR5cGVJbmRleCkge1xuICAgICAgICB0eXBlID0gaXhUeXBlIGFzIFZvdGVJbnN0cnVjdGlvblR5cGU7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICghdHlwZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnN0cnVjdGlvbiB0eXBlIGluY29ycmVjdDsgbm90IGEgVm90ZUluc3RydWN0aW9uJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHR5cGU7XG4gIH1cblxuICAvKipcbiAgICogRGVjb2RlIGFuIGluaXRpYWxpemUgdm90ZSBpbnN0cnVjdGlvbiBhbmQgcmV0cmlldmUgdGhlIGluc3RydWN0aW9uIHBhcmFtcy5cbiAgICovXG4gIHN0YXRpYyBkZWNvZGVJbml0aWFsaXplQWNjb3VudChcbiAgICBpbnN0cnVjdGlvbjogVHJhbnNhY3Rpb25JbnN0cnVjdGlvbixcbiAgKTogSW5pdGlhbGl6ZUFjY291bnRQYXJhbXMge1xuICAgIHRoaXMuY2hlY2tQcm9ncmFtSWQoaW5zdHJ1Y3Rpb24ucHJvZ3JhbUlkKTtcbiAgICB0aGlzLmNoZWNrS2V5TGVuZ3RoKGluc3RydWN0aW9uLmtleXMsIDQpO1xuXG4gICAgY29uc3Qge3ZvdGVJbml0fSA9IGRlY29kZURhdGEoXG4gICAgICBWT1RFX0lOU1RSVUNUSU9OX0xBWU9VVFMuSW5pdGlhbGl6ZUFjY291bnQsXG4gICAgICBpbnN0cnVjdGlvbi5kYXRhLFxuICAgICk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgdm90ZVB1YmtleTogaW5zdHJ1Y3Rpb24ua2V5c1swXS5wdWJrZXksXG4gICAgICBub2RlUHVia2V5OiBpbnN0cnVjdGlvbi5rZXlzWzNdLnB1YmtleSxcbiAgICAgIHZvdGVJbml0OiBuZXcgVm90ZUluaXQoXG4gICAgICAgIG5ldyBQdWJsaWNLZXkodm90ZUluaXQubm9kZVB1YmtleSksXG4gICAgICAgIG5ldyBQdWJsaWNLZXkodm90ZUluaXQuYXV0aG9yaXplZFZvdGVyKSxcbiAgICAgICAgbmV3IFB1YmxpY0tleSh2b3RlSW5pdC5hdXRob3JpemVkV2l0aGRyYXdlciksXG4gICAgICAgIHZvdGVJbml0LmNvbW1pc3Npb24sXG4gICAgICApLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogRGVjb2RlIGFuIGF1dGhvcml6ZSBpbnN0cnVjdGlvbiBhbmQgcmV0cmlldmUgdGhlIGluc3RydWN0aW9uIHBhcmFtcy5cbiAgICovXG4gIHN0YXRpYyBkZWNvZGVBdXRob3JpemUoXG4gICAgaW5zdHJ1Y3Rpb246IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24sXG4gICk6IEF1dGhvcml6ZVZvdGVQYXJhbXMge1xuICAgIHRoaXMuY2hlY2tQcm9ncmFtSWQoaW5zdHJ1Y3Rpb24ucHJvZ3JhbUlkKTtcbiAgICB0aGlzLmNoZWNrS2V5TGVuZ3RoKGluc3RydWN0aW9uLmtleXMsIDMpO1xuXG4gICAgY29uc3Qge25ld0F1dGhvcml6ZWQsIHZvdGVBdXRob3JpemF0aW9uVHlwZX0gPSBkZWNvZGVEYXRhKFxuICAgICAgVk9URV9JTlNUUlVDVElPTl9MQVlPVVRTLkF1dGhvcml6ZSxcbiAgICAgIGluc3RydWN0aW9uLmRhdGEsXG4gICAgKTtcblxuICAgIHJldHVybiB7XG4gICAgICB2b3RlUHVia2V5OiBpbnN0cnVjdGlvbi5rZXlzWzBdLnB1YmtleSxcbiAgICAgIGF1dGhvcml6ZWRQdWJrZXk6IGluc3RydWN0aW9uLmtleXNbMl0ucHVia2V5LFxuICAgICAgbmV3QXV0aG9yaXplZFB1YmtleTogbmV3IFB1YmxpY0tleShuZXdBdXRob3JpemVkKSxcbiAgICAgIHZvdGVBdXRob3JpemF0aW9uVHlwZToge1xuICAgICAgICBpbmRleDogdm90ZUF1dGhvcml6YXRpb25UeXBlLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIERlY29kZSBhbiBhdXRob3JpemUgaW5zdHJ1Y3Rpb24gYW5kIHJldHJpZXZlIHRoZSBpbnN0cnVjdGlvbiBwYXJhbXMuXG4gICAqL1xuICBzdGF0aWMgZGVjb2RlQXV0aG9yaXplV2l0aFNlZWQoXG4gICAgaW5zdHJ1Y3Rpb246IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24sXG4gICk6IEF1dGhvcml6ZVZvdGVXaXRoU2VlZFBhcmFtcyB7XG4gICAgdGhpcy5jaGVja1Byb2dyYW1JZChpbnN0cnVjdGlvbi5wcm9ncmFtSWQpO1xuICAgIHRoaXMuY2hlY2tLZXlMZW5ndGgoaW5zdHJ1Y3Rpb24ua2V5cywgMyk7XG5cbiAgICBjb25zdCB7XG4gICAgICB2b3RlQXV0aG9yaXplV2l0aFNlZWRBcmdzOiB7XG4gICAgICAgIGN1cnJlbnRBdXRob3JpdHlEZXJpdmVkS2V5T3duZXJQdWJrZXksXG4gICAgICAgIGN1cnJlbnRBdXRob3JpdHlEZXJpdmVkS2V5U2VlZCxcbiAgICAgICAgbmV3QXV0aG9yaXplZCxcbiAgICAgICAgdm90ZUF1dGhvcml6YXRpb25UeXBlLFxuICAgICAgfSxcbiAgICB9ID0gZGVjb2RlRGF0YShcbiAgICAgIFZPVEVfSU5TVFJVQ1RJT05fTEFZT1VUUy5BdXRob3JpemVXaXRoU2VlZCxcbiAgICAgIGluc3RydWN0aW9uLmRhdGEsXG4gICAgKTtcblxuICAgIHJldHVybiB7XG4gICAgICBjdXJyZW50QXV0aG9yaXR5RGVyaXZlZEtleUJhc2VQdWJrZXk6IGluc3RydWN0aW9uLmtleXNbMl0ucHVia2V5LFxuICAgICAgY3VycmVudEF1dGhvcml0eURlcml2ZWRLZXlPd25lclB1YmtleTogbmV3IFB1YmxpY0tleShcbiAgICAgICAgY3VycmVudEF1dGhvcml0eURlcml2ZWRLZXlPd25lclB1YmtleSxcbiAgICAgICksXG4gICAgICBjdXJyZW50QXV0aG9yaXR5RGVyaXZlZEtleVNlZWQ6IGN1cnJlbnRBdXRob3JpdHlEZXJpdmVkS2V5U2VlZCxcbiAgICAgIG5ld0F1dGhvcml6ZWRQdWJrZXk6IG5ldyBQdWJsaWNLZXkobmV3QXV0aG9yaXplZCksXG4gICAgICB2b3RlQXV0aG9yaXphdGlvblR5cGU6IHtcbiAgICAgICAgaW5kZXg6IHZvdGVBdXRob3JpemF0aW9uVHlwZSxcbiAgICAgIH0sXG4gICAgICB2b3RlUHVia2V5OiBpbnN0cnVjdGlvbi5rZXlzWzBdLnB1YmtleSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIERlY29kZSBhIHdpdGhkcmF3IGluc3RydWN0aW9uIGFuZCByZXRyaWV2ZSB0aGUgaW5zdHJ1Y3Rpb24gcGFyYW1zLlxuICAgKi9cbiAgc3RhdGljIGRlY29kZVdpdGhkcmF3KFxuICAgIGluc3RydWN0aW9uOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uLFxuICApOiBXaXRoZHJhd0Zyb21Wb3RlQWNjb3VudFBhcmFtcyB7XG4gICAgdGhpcy5jaGVja1Byb2dyYW1JZChpbnN0cnVjdGlvbi5wcm9ncmFtSWQpO1xuICAgIHRoaXMuY2hlY2tLZXlMZW5ndGgoaW5zdHJ1Y3Rpb24ua2V5cywgMyk7XG5cbiAgICBjb25zdCB7bGFtcG9ydHN9ID0gZGVjb2RlRGF0YShcbiAgICAgIFZPVEVfSU5TVFJVQ1RJT05fTEFZT1VUUy5XaXRoZHJhdyxcbiAgICAgIGluc3RydWN0aW9uLmRhdGEsXG4gICAgKTtcblxuICAgIHJldHVybiB7XG4gICAgICB2b3RlUHVia2V5OiBpbnN0cnVjdGlvbi5rZXlzWzBdLnB1YmtleSxcbiAgICAgIGF1dGhvcml6ZWRXaXRoZHJhd2VyUHVia2V5OiBpbnN0cnVjdGlvbi5rZXlzWzJdLnB1YmtleSxcbiAgICAgIGxhbXBvcnRzLFxuICAgICAgdG9QdWJrZXk6IGluc3RydWN0aW9uLmtleXNbMV0ucHVia2V5LFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBzdGF0aWMgY2hlY2tQcm9ncmFtSWQocHJvZ3JhbUlkOiBQdWJsaWNLZXkpIHtcbiAgICBpZiAoIXByb2dyYW1JZC5lcXVhbHMoVm90ZVByb2dyYW0ucHJvZ3JhbUlkKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIGluc3RydWN0aW9uOyBwcm9ncmFtSWQgaXMgbm90IFZvdGVQcm9ncmFtJyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgc3RhdGljIGNoZWNrS2V5TGVuZ3RoKGtleXM6IEFycmF5PGFueT4sIGV4cGVjdGVkTGVuZ3RoOiBudW1iZXIpIHtcbiAgICBpZiAoa2V5cy5sZW5ndGggPCBleHBlY3RlZExlbmd0aCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBgaW52YWxpZCBpbnN0cnVjdGlvbjsgZm91bmQgJHtrZXlzLmxlbmd0aH0ga2V5cywgZXhwZWN0ZWQgYXQgbGVhc3QgJHtleHBlY3RlZExlbmd0aH1gLFxuICAgICAgKTtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBBbiBlbnVtZXJhdGlvbiBvZiB2YWxpZCBWb3RlSW5zdHJ1Y3Rpb25UeXBlJ3NcbiAqL1xuZXhwb3J0IHR5cGUgVm90ZUluc3RydWN0aW9uVHlwZSA9XG4gIC8vIEZJWE1FXG4gIC8vIEl0IHdvdWxkIGJlIHByZWZlcmFibGUgZm9yIHRoaXMgdHlwZSB0byBiZSBga2V5b2YgVm90ZUluc3RydWN0aW9uSW5wdXREYXRhYFxuICAvLyBidXQgVHlwZWRvYyBkb2VzIG5vdCB0cmFuc3BpbGUgYGtleW9mYCBleHByZXNzaW9ucy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9UeXBlU3Ryb25nL3R5cGVkb2MvaXNzdWVzLzE4OTRcbiAgJ0F1dGhvcml6ZScgfCAnQXV0aG9yaXplV2l0aFNlZWQnIHwgJ0luaXRpYWxpemVBY2NvdW50JyB8ICdXaXRoZHJhdyc7XG5cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCB0eXBlIFZvdGVBdXRob3JpemVXaXRoU2VlZEFyZ3MgPSBSZWFkb25seTx7XG4gIGN1cnJlbnRBdXRob3JpdHlEZXJpdmVkS2V5T3duZXJQdWJrZXk6IFVpbnQ4QXJyYXk7XG4gIGN1cnJlbnRBdXRob3JpdHlEZXJpdmVkS2V5U2VlZDogc3RyaW5nO1xuICBuZXdBdXRob3JpemVkOiBVaW50OEFycmF5O1xuICB2b3RlQXV0aG9yaXphdGlvblR5cGU6IG51bWJlcjtcbn0+O1xudHlwZSBWb3RlSW5zdHJ1Y3Rpb25JbnB1dERhdGEgPSB7XG4gIEF1dGhvcml6ZTogSUluc3RydWN0aW9uSW5wdXREYXRhICYge1xuICAgIG5ld0F1dGhvcml6ZWQ6IFVpbnQ4QXJyYXk7XG4gICAgdm90ZUF1dGhvcml6YXRpb25UeXBlOiBudW1iZXI7XG4gIH07XG4gIEF1dGhvcml6ZVdpdGhTZWVkOiBJSW5zdHJ1Y3Rpb25JbnB1dERhdGEgJiB7XG4gICAgdm90ZUF1dGhvcml6ZVdpdGhTZWVkQXJnczogVm90ZUF1dGhvcml6ZVdpdGhTZWVkQXJncztcbiAgfTtcbiAgSW5pdGlhbGl6ZUFjY291bnQ6IElJbnN0cnVjdGlvbklucHV0RGF0YSAmIHtcbiAgICB2b3RlSW5pdDogUmVhZG9ubHk8e1xuICAgICAgYXV0aG9yaXplZFZvdGVyOiBVaW50OEFycmF5O1xuICAgICAgYXV0aG9yaXplZFdpdGhkcmF3ZXI6IFVpbnQ4QXJyYXk7XG4gICAgICBjb21taXNzaW9uOiBudW1iZXI7XG4gICAgICBub2RlUHVia2V5OiBVaW50OEFycmF5O1xuICAgIH0+O1xuICB9O1xuICBXaXRoZHJhdzogSUluc3RydWN0aW9uSW5wdXREYXRhICYge1xuICAgIGxhbXBvcnRzOiBudW1iZXI7XG4gIH07XG59O1xuXG5jb25zdCBWT1RFX0lOU1RSVUNUSU9OX0xBWU9VVFMgPSBPYmplY3QuZnJlZXplPHtcbiAgW0luc3RydWN0aW9uIGluIFZvdGVJbnN0cnVjdGlvblR5cGVdOiBJbnN0cnVjdGlvblR5cGU8XG4gICAgVm90ZUluc3RydWN0aW9uSW5wdXREYXRhW0luc3RydWN0aW9uXVxuICA+O1xufT4oe1xuICBJbml0aWFsaXplQWNjb3VudDoge1xuICAgIGluZGV4OiAwLFxuICAgIGxheW91dDogQnVmZmVyTGF5b3V0LnN0cnVjdDxWb3RlSW5zdHJ1Y3Rpb25JbnB1dERhdGFbJ0luaXRpYWxpemVBY2NvdW50J10+KFtcbiAgICAgIEJ1ZmZlckxheW91dC51MzIoJ2luc3RydWN0aW9uJyksXG4gICAgICBMYXlvdXQudm90ZUluaXQoKSxcbiAgICBdKSxcbiAgfSxcbiAgQXV0aG9yaXplOiB7XG4gICAgaW5kZXg6IDEsXG4gICAgbGF5b3V0OiBCdWZmZXJMYXlvdXQuc3RydWN0PFZvdGVJbnN0cnVjdGlvbklucHV0RGF0YVsnQXV0aG9yaXplJ10+KFtcbiAgICAgIEJ1ZmZlckxheW91dC51MzIoJ2luc3RydWN0aW9uJyksXG4gICAgICBMYXlvdXQucHVibGljS2V5KCduZXdBdXRob3JpemVkJyksXG4gICAgICBCdWZmZXJMYXlvdXQudTMyKCd2b3RlQXV0aG9yaXphdGlvblR5cGUnKSxcbiAgICBdKSxcbiAgfSxcbiAgV2l0aGRyYXc6IHtcbiAgICBpbmRleDogMyxcbiAgICBsYXlvdXQ6IEJ1ZmZlckxheW91dC5zdHJ1Y3Q8Vm90ZUluc3RydWN0aW9uSW5wdXREYXRhWydXaXRoZHJhdyddPihbXG4gICAgICBCdWZmZXJMYXlvdXQudTMyKCdpbnN0cnVjdGlvbicpLFxuICAgICAgQnVmZmVyTGF5b3V0Lm5zNjQoJ2xhbXBvcnRzJyksXG4gICAgXSksXG4gIH0sXG4gIEF1dGhvcml6ZVdpdGhTZWVkOiB7XG4gICAgaW5kZXg6IDEwLFxuICAgIGxheW91dDogQnVmZmVyTGF5b3V0LnN0cnVjdDxWb3RlSW5zdHJ1Y3Rpb25JbnB1dERhdGFbJ0F1dGhvcml6ZVdpdGhTZWVkJ10+KFtcbiAgICAgIEJ1ZmZlckxheW91dC51MzIoJ2luc3RydWN0aW9uJyksXG4gICAgICBMYXlvdXQudm90ZUF1dGhvcml6ZVdpdGhTZWVkQXJncygpLFxuICAgIF0pLFxuICB9LFxufSk7XG5cbi8qKlxuICogVm90ZUF1dGhvcml6ZSB0eXBlXG4gKi9cbmV4cG9ydCB0eXBlIFZvdGVBdXRob3JpemF0aW9uVHlwZSA9IHtcbiAgLyoqIFRoZSBWb3RlQXV0aG9yaXplIGluZGV4IChmcm9tIHNvbGFuYS12b3RlLXByb2dyYW0pICovXG4gIGluZGV4OiBudW1iZXI7XG59O1xuXG4vKipcbiAqIEFuIGVudW1lcmF0aW9uIG9mIHZhbGlkIFZvdGVBdXRob3JpemF0aW9uIGxheW91dHMuXG4gKi9cbmV4cG9ydCBjb25zdCBWb3RlQXV0aG9yaXphdGlvbkxheW91dCA9IE9iamVjdC5mcmVlemUoe1xuICBWb3Rlcjoge1xuICAgIGluZGV4OiAwLFxuICB9LFxuICBXaXRoZHJhd2VyOiB7XG4gICAgaW5kZXg6IDEsXG4gIH0sXG59KTtcblxuLyoqXG4gKiBGYWN0b3J5IGNsYXNzIGZvciB0cmFuc2FjdGlvbnMgdG8gaW50ZXJhY3Qgd2l0aCB0aGUgVm90ZSBwcm9ncmFtXG4gKi9cbmV4cG9ydCBjbGFzcyBWb3RlUHJvZ3JhbSB7XG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICAvKipcbiAgICogUHVibGljIGtleSB0aGF0IGlkZW50aWZpZXMgdGhlIFZvdGUgcHJvZ3JhbVxuICAgKi9cbiAgc3RhdGljIHByb2dyYW1JZDogUHVibGljS2V5ID0gbmV3IFB1YmxpY0tleShcbiAgICAnVm90ZTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMScsXG4gICk7XG5cbiAgLyoqXG4gICAqIE1heCBzcGFjZSBvZiBhIFZvdGUgYWNjb3VudFxuICAgKlxuICAgKiBUaGlzIGlzIGdlbmVyYXRlZCBmcm9tIHRoZSBzb2xhbmEtdm90ZS1wcm9ncmFtIFZvdGVTdGF0ZSBzdHJ1Y3QgYXNcbiAgICogYFZvdGVTdGF0ZTo6c2l6ZV9vZigpYDpcbiAgICogaHR0cHM6Ly9kb2NzLnJzL3NvbGFuYS12b3RlLXByb2dyYW0vMS45LjUvc29sYW5hX3ZvdGVfcHJvZ3JhbS92b3RlX3N0YXRlL3N0cnVjdC5Wb3RlU3RhdGUuaHRtbCNtZXRob2Quc2l6ZV9vZlxuICAgKlxuICAgKiBLRUVQIElOIFNZTkMgV0lUSCBgVm90ZVN0YXRlOjpzaXplX29mKClgIGluIGh0dHBzOi8vZ2l0aHViLmNvbS9zb2xhbmEtbGFicy9zb2xhbmEvYmxvYi9hNDc0Y2IyNGI5MjM4ZjVlZGNjOTgyZjY1YzBiMzdkNGExMDQ2ZjdlL3Nkay9wcm9ncmFtL3NyYy92b3RlL3N0YXRlL21vZC5ycyNMMzQwLUwzNDJcbiAgICovXG4gIHN0YXRpYyBzcGFjZTogbnVtYmVyID0gcHJvY2Vzcy5lbnYuVEVTVF9MSVZFID8gMzc2MiA6IDM3MzE7XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlIGFuIEluaXRpYWxpemUgaW5zdHJ1Y3Rpb24uXG4gICAqL1xuICBzdGF0aWMgaW5pdGlhbGl6ZUFjY291bnQoXG4gICAgcGFyYW1zOiBJbml0aWFsaXplQWNjb3VudFBhcmFtcyxcbiAgKTogVHJhbnNhY3Rpb25JbnN0cnVjdGlvbiB7XG4gICAgY29uc3Qge3ZvdGVQdWJrZXksIG5vZGVQdWJrZXksIHZvdGVJbml0fSA9IHBhcmFtcztcbiAgICBjb25zdCB0eXBlID0gVk9URV9JTlNUUlVDVElPTl9MQVlPVVRTLkluaXRpYWxpemVBY2NvdW50O1xuICAgIGNvbnN0IGRhdGEgPSBlbmNvZGVEYXRhKHR5cGUsIHtcbiAgICAgIHZvdGVJbml0OiB7XG4gICAgICAgIG5vZGVQdWJrZXk6IHRvQnVmZmVyKHZvdGVJbml0Lm5vZGVQdWJrZXkudG9CdWZmZXIoKSksXG4gICAgICAgIGF1dGhvcml6ZWRWb3RlcjogdG9CdWZmZXIodm90ZUluaXQuYXV0aG9yaXplZFZvdGVyLnRvQnVmZmVyKCkpLFxuICAgICAgICBhdXRob3JpemVkV2l0aGRyYXdlcjogdG9CdWZmZXIoXG4gICAgICAgICAgdm90ZUluaXQuYXV0aG9yaXplZFdpdGhkcmF3ZXIudG9CdWZmZXIoKSxcbiAgICAgICAgKSxcbiAgICAgICAgY29tbWlzc2lvbjogdm90ZUluaXQuY29tbWlzc2lvbixcbiAgICAgIH0sXG4gICAgfSk7XG4gICAgY29uc3QgaW5zdHJ1Y3Rpb25EYXRhID0ge1xuICAgICAga2V5czogW1xuICAgICAgICB7cHVia2V5OiB2b3RlUHVia2V5LCBpc1NpZ25lcjogZmFsc2UsIGlzV3JpdGFibGU6IHRydWV9LFxuICAgICAgICB7cHVia2V5OiBTWVNWQVJfUkVOVF9QVUJLRVksIGlzU2lnbmVyOiBmYWxzZSwgaXNXcml0YWJsZTogZmFsc2V9LFxuICAgICAgICB7cHVia2V5OiBTWVNWQVJfQ0xPQ0tfUFVCS0VZLCBpc1NpZ25lcjogZmFsc2UsIGlzV3JpdGFibGU6IGZhbHNlfSxcbiAgICAgICAge3B1YmtleTogbm9kZVB1YmtleSwgaXNTaWduZXI6IHRydWUsIGlzV3JpdGFibGU6IGZhbHNlfSxcbiAgICAgIF0sXG4gICAgICBwcm9ncmFtSWQ6IHRoaXMucHJvZ3JhbUlkLFxuICAgICAgZGF0YSxcbiAgICB9O1xuICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb25JbnN0cnVjdGlvbihpbnN0cnVjdGlvbkRhdGEpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlIGEgdHJhbnNhY3Rpb24gdGhhdCBjcmVhdGVzIGEgbmV3IFZvdGUgYWNjb3VudC5cbiAgICovXG4gIHN0YXRpYyBjcmVhdGVBY2NvdW50KHBhcmFtczogQ3JlYXRlVm90ZUFjY291bnRQYXJhbXMpOiBUcmFuc2FjdGlvbiB7XG4gICAgY29uc3QgdHJhbnNhY3Rpb24gPSBuZXcgVHJhbnNhY3Rpb24oKTtcbiAgICB0cmFuc2FjdGlvbi5hZGQoXG4gICAgICBTeXN0ZW1Qcm9ncmFtLmNyZWF0ZUFjY291bnQoe1xuICAgICAgICBmcm9tUHVia2V5OiBwYXJhbXMuZnJvbVB1YmtleSxcbiAgICAgICAgbmV3QWNjb3VudFB1YmtleTogcGFyYW1zLnZvdGVQdWJrZXksXG4gICAgICAgIGxhbXBvcnRzOiBwYXJhbXMubGFtcG9ydHMsXG4gICAgICAgIHNwYWNlOiB0aGlzLnNwYWNlLFxuICAgICAgICBwcm9ncmFtSWQ6IHRoaXMucHJvZ3JhbUlkLFxuICAgICAgfSksXG4gICAgKTtcblxuICAgIHJldHVybiB0cmFuc2FjdGlvbi5hZGQoXG4gICAgICB0aGlzLmluaXRpYWxpemVBY2NvdW50KHtcbiAgICAgICAgdm90ZVB1YmtleTogcGFyYW1zLnZvdGVQdWJrZXksXG4gICAgICAgIG5vZGVQdWJrZXk6IHBhcmFtcy52b3RlSW5pdC5ub2RlUHVia2V5LFxuICAgICAgICB2b3RlSW5pdDogcGFyYW1zLnZvdGVJbml0LFxuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZSBhIHRyYW5zYWN0aW9uIHRoYXQgYXV0aG9yaXplcyBhIG5ldyBWb3RlciBvciBXaXRoZHJhd2VyIG9uIHRoZSBWb3RlIGFjY291bnQuXG4gICAqL1xuICBzdGF0aWMgYXV0aG9yaXplKHBhcmFtczogQXV0aG9yaXplVm90ZVBhcmFtcyk6IFRyYW5zYWN0aW9uIHtcbiAgICBjb25zdCB7XG4gICAgICB2b3RlUHVia2V5LFxuICAgICAgYXV0aG9yaXplZFB1YmtleSxcbiAgICAgIG5ld0F1dGhvcml6ZWRQdWJrZXksXG4gICAgICB2b3RlQXV0aG9yaXphdGlvblR5cGUsXG4gICAgfSA9IHBhcmFtcztcblxuICAgIGNvbnN0IHR5cGUgPSBWT1RFX0lOU1RSVUNUSU9OX0xBWU9VVFMuQXV0aG9yaXplO1xuICAgIGNvbnN0IGRhdGEgPSBlbmNvZGVEYXRhKHR5cGUsIHtcbiAgICAgIG5ld0F1dGhvcml6ZWQ6IHRvQnVmZmVyKG5ld0F1dGhvcml6ZWRQdWJrZXkudG9CdWZmZXIoKSksXG4gICAgICB2b3RlQXV0aG9yaXphdGlvblR5cGU6IHZvdGVBdXRob3JpemF0aW9uVHlwZS5pbmRleCxcbiAgICB9KTtcblxuICAgIGNvbnN0IGtleXMgPSBbXG4gICAgICB7cHVia2V5OiB2b3RlUHVia2V5LCBpc1NpZ25lcjogZmFsc2UsIGlzV3JpdGFibGU6IHRydWV9LFxuICAgICAge3B1YmtleTogU1lTVkFSX0NMT0NLX1BVQktFWSwgaXNTaWduZXI6IGZhbHNlLCBpc1dyaXRhYmxlOiBmYWxzZX0sXG4gICAgICB7cHVia2V5OiBhdXRob3JpemVkUHVia2V5LCBpc1NpZ25lcjogdHJ1ZSwgaXNXcml0YWJsZTogZmFsc2V9LFxuICAgIF07XG5cbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uKCkuYWRkKHtcbiAgICAgIGtleXMsXG4gICAgICBwcm9ncmFtSWQ6IHRoaXMucHJvZ3JhbUlkLFxuICAgICAgZGF0YSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZSBhIHRyYW5zYWN0aW9uIHRoYXQgYXV0aG9yaXplcyBhIG5ldyBWb3RlciBvciBXaXRoZHJhd2VyIG9uIHRoZSBWb3RlIGFjY291bnRcbiAgICogd2hlcmUgdGhlIGN1cnJlbnQgVm90ZXIgb3IgV2l0aGRyYXdlciBhdXRob3JpdHkgaXMgYSBkZXJpdmVkIGtleS5cbiAgICovXG4gIHN0YXRpYyBhdXRob3JpemVXaXRoU2VlZChwYXJhbXM6IEF1dGhvcml6ZVZvdGVXaXRoU2VlZFBhcmFtcyk6IFRyYW5zYWN0aW9uIHtcbiAgICBjb25zdCB7XG4gICAgICBjdXJyZW50QXV0aG9yaXR5RGVyaXZlZEtleUJhc2VQdWJrZXksXG4gICAgICBjdXJyZW50QXV0aG9yaXR5RGVyaXZlZEtleU93bmVyUHVia2V5LFxuICAgICAgY3VycmVudEF1dGhvcml0eURlcml2ZWRLZXlTZWVkLFxuICAgICAgbmV3QXV0aG9yaXplZFB1YmtleSxcbiAgICAgIHZvdGVBdXRob3JpemF0aW9uVHlwZSxcbiAgICAgIHZvdGVQdWJrZXksXG4gICAgfSA9IHBhcmFtcztcblxuICAgIGNvbnN0IHR5cGUgPSBWT1RFX0lOU1RSVUNUSU9OX0xBWU9VVFMuQXV0aG9yaXplV2l0aFNlZWQ7XG4gICAgY29uc3QgZGF0YSA9IGVuY29kZURhdGEodHlwZSwge1xuICAgICAgdm90ZUF1dGhvcml6ZVdpdGhTZWVkQXJnczoge1xuICAgICAgICBjdXJyZW50QXV0aG9yaXR5RGVyaXZlZEtleU93bmVyUHVia2V5OiB0b0J1ZmZlcihcbiAgICAgICAgICBjdXJyZW50QXV0aG9yaXR5RGVyaXZlZEtleU93bmVyUHVia2V5LnRvQnVmZmVyKCksXG4gICAgICAgICksXG4gICAgICAgIGN1cnJlbnRBdXRob3JpdHlEZXJpdmVkS2V5U2VlZDogY3VycmVudEF1dGhvcml0eURlcml2ZWRLZXlTZWVkLFxuICAgICAgICBuZXdBdXRob3JpemVkOiB0b0J1ZmZlcihuZXdBdXRob3JpemVkUHVia2V5LnRvQnVmZmVyKCkpLFxuICAgICAgICB2b3RlQXV0aG9yaXphdGlvblR5cGU6IHZvdGVBdXRob3JpemF0aW9uVHlwZS5pbmRleCxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICBjb25zdCBrZXlzID0gW1xuICAgICAge3B1YmtleTogdm90ZVB1YmtleSwgaXNTaWduZXI6IGZhbHNlLCBpc1dyaXRhYmxlOiB0cnVlfSxcbiAgICAgIHtwdWJrZXk6IFNZU1ZBUl9DTE9DS19QVUJLRVksIGlzU2lnbmVyOiBmYWxzZSwgaXNXcml0YWJsZTogZmFsc2V9LFxuICAgICAge1xuICAgICAgICBwdWJrZXk6IGN1cnJlbnRBdXRob3JpdHlEZXJpdmVkS2V5QmFzZVB1YmtleSxcbiAgICAgICAgaXNTaWduZXI6IHRydWUsXG4gICAgICAgIGlzV3JpdGFibGU6IGZhbHNlLFxuICAgICAgfSxcbiAgICBdO1xuXG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbigpLmFkZCh7XG4gICAgICBrZXlzLFxuICAgICAgcHJvZ3JhbUlkOiB0aGlzLnByb2dyYW1JZCxcbiAgICAgIGRhdGEsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogR2VuZXJhdGUgYSB0cmFuc2FjdGlvbiB0byB3aXRoZHJhdyBmcm9tIGEgVm90ZSBhY2NvdW50LlxuICAgKi9cbiAgc3RhdGljIHdpdGhkcmF3KHBhcmFtczogV2l0aGRyYXdGcm9tVm90ZUFjY291bnRQYXJhbXMpOiBUcmFuc2FjdGlvbiB7XG4gICAgY29uc3Qge3ZvdGVQdWJrZXksIGF1dGhvcml6ZWRXaXRoZHJhd2VyUHVia2V5LCBsYW1wb3J0cywgdG9QdWJrZXl9ID0gcGFyYW1zO1xuICAgIGNvbnN0IHR5cGUgPSBWT1RFX0lOU1RSVUNUSU9OX0xBWU9VVFMuV2l0aGRyYXc7XG4gICAgY29uc3QgZGF0YSA9IGVuY29kZURhdGEodHlwZSwge2xhbXBvcnRzfSk7XG5cbiAgICBjb25zdCBrZXlzID0gW1xuICAgICAge3B1YmtleTogdm90ZVB1YmtleSwgaXNTaWduZXI6IGZhbHNlLCBpc1dyaXRhYmxlOiB0cnVlfSxcbiAgICAgIHtwdWJrZXk6IHRvUHVia2V5LCBpc1NpZ25lcjogZmFsc2UsIGlzV3JpdGFibGU6IHRydWV9LFxuICAgICAge3B1YmtleTogYXV0aG9yaXplZFdpdGhkcmF3ZXJQdWJrZXksIGlzU2lnbmVyOiB0cnVlLCBpc1dyaXRhYmxlOiBmYWxzZX0sXG4gICAgXTtcblxuICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb24oKS5hZGQoe1xuICAgICAga2V5cyxcbiAgICAgIHByb2dyYW1JZDogdGhpcy5wcm9ncmFtSWQsXG4gICAgICBkYXRhLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlIGEgdHJhbnNhY3Rpb24gdG8gd2l0aGRyYXcgc2FmZWx5IGZyb20gYSBWb3RlIGFjY291bnQuXG4gICAqXG4gICAqIFRoaXMgZnVuY3Rpb24gd2FzIGNyZWF0ZWQgYXMgYSBzYWZlZ3VhcmQgZm9yIHZvdGUgYWNjb3VudHMgcnVubmluZyB2YWxpZGF0b3JzLCBgc2FmZVdpdGhkcmF3YFxuICAgKiBjaGVja3MgdGhhdCB0aGUgd2l0aGRyYXcgYW1vdW50IHdpbGwgbm90IGV4Y2VlZCB0aGUgc3BlY2lmaWVkIGJhbGFuY2Ugd2hpbGUgbGVhdmluZyBlbm91Z2ggbGVmdFxuICAgKiB0byBjb3ZlciByZW50LiBJZiB5b3Ugd2lzaCB0byBjbG9zZSB0aGUgdm90ZSBhY2NvdW50IGJ5IHdpdGhkcmF3aW5nIHRoZSBmdWxsIGFtb3VudCwgY2FsbCB0aGVcbiAgICogYHdpdGhkcmF3YCBtZXRob2QgZGlyZWN0bHkuXG4gICAqL1xuICBzdGF0aWMgc2FmZVdpdGhkcmF3KFxuICAgIHBhcmFtczogV2l0aGRyYXdGcm9tVm90ZUFjY291bnRQYXJhbXMsXG4gICAgY3VycmVudFZvdGVBY2NvdW50QmFsYW5jZTogbnVtYmVyLFxuICAgIHJlbnRFeGVtcHRNaW5pbXVtOiBudW1iZXIsXG4gICk6IFRyYW5zYWN0aW9uIHtcbiAgICBpZiAocGFyYW1zLmxhbXBvcnRzID4gY3VycmVudFZvdGVBY2NvdW50QmFsYW5jZSAtIHJlbnRFeGVtcHRNaW5pbXVtKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdXaXRoZHJhdyB3aWxsIGxlYXZlIHZvdGUgYWNjb3VudCB3aXRoIGluc3VmZmNpZW50IGZ1bmRzLicsXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gVm90ZVByb2dyYW0ud2l0aGRyYXcocGFyYW1zKTtcbiAgfVxufVxuIiwgImltcG9ydCB7QnVmZmVyfSBmcm9tICdidWZmZXInO1xuaW1wb3J0IHtcbiAgYXNzZXJ0IGFzIGFzc2VydFR5cGUsXG4gIG9wdGlvbmFsLFxuICBzdHJpbmcsXG4gIHR5cGUgYXMgcGljayxcbn0gZnJvbSAnc3VwZXJzdHJ1Y3QnO1xuXG5pbXBvcnQgKiBhcyBMYXlvdXQgZnJvbSAnLi9sYXlvdXQnO1xuaW1wb3J0ICogYXMgc2hvcnR2ZWMgZnJvbSAnLi91dGlscy9zaG9ydHZlYy1lbmNvZGluZyc7XG5pbXBvcnQge1B1YmxpY0tleSwgUFVCTElDX0tFWV9MRU5HVEh9IGZyb20gJy4vcHVibGlja2V5JztcblxuZXhwb3J0IGNvbnN0IFZBTElEQVRPUl9JTkZPX0tFWSA9IG5ldyBQdWJsaWNLZXkoXG4gICdWYTFpZGF0b3IxbmZvMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExJyxcbik7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbnR5cGUgQ29uZmlnS2V5ID0ge1xuICBwdWJsaWNLZXk6IFB1YmxpY0tleTtcbiAgaXNTaWduZXI6IGJvb2xlYW47XG59O1xuXG4vKipcbiAqIEluZm8gdXNlZCB0byBpZGVudGl0eSB2YWxpZGF0b3JzLlxuICovXG5leHBvcnQgdHlwZSBJbmZvID0ge1xuICAvKiogdmFsaWRhdG9yIG5hbWUgKi9cbiAgbmFtZTogc3RyaW5nO1xuICAvKiogb3B0aW9uYWwsIHZhbGlkYXRvciB3ZWJzaXRlICovXG4gIHdlYnNpdGU/OiBzdHJpbmc7XG4gIC8qKiBvcHRpb25hbCwgZXh0cmEgaW5mb3JtYXRpb24gdGhlIHZhbGlkYXRvciBjaG9zZSB0byBzaGFyZSAqL1xuICBkZXRhaWxzPzogc3RyaW5nO1xuICAvKiogb3B0aW9uYWwsIHVzZWQgdG8gaWRlbnRpZnkgdmFsaWRhdG9ycyBvbiBrZXliYXNlLmlvICovXG4gIGtleWJhc2VVc2VybmFtZT86IHN0cmluZztcbn07XG5cbmNvbnN0IEluZm9TdHJpbmcgPSBwaWNrKHtcbiAgbmFtZTogc3RyaW5nKCksXG4gIHdlYnNpdGU6IG9wdGlvbmFsKHN0cmluZygpKSxcbiAgZGV0YWlsczogb3B0aW9uYWwoc3RyaW5nKCkpLFxuICBrZXliYXNlVXNlcm5hbWU6IG9wdGlvbmFsKHN0cmluZygpKSxcbn0pO1xuXG4vKipcbiAqIFZhbGlkYXRvckluZm8gY2xhc3NcbiAqL1xuZXhwb3J0IGNsYXNzIFZhbGlkYXRvckluZm8ge1xuICAvKipcbiAgICogdmFsaWRhdG9yIHB1YmxpYyBrZXlcbiAgICovXG4gIGtleTogUHVibGljS2V5O1xuICAvKipcbiAgICogdmFsaWRhdG9yIGluZm9ybWF0aW9uXG4gICAqL1xuICBpbmZvOiBJbmZvO1xuXG4gIC8qKlxuICAgKiBDb25zdHJ1Y3QgYSB2YWxpZCBWYWxpZGF0b3JJbmZvXG4gICAqXG4gICAqIEBwYXJhbSBrZXkgdmFsaWRhdG9yIHB1YmxpYyBrZXlcbiAgICogQHBhcmFtIGluZm8gdmFsaWRhdG9yIGluZm9ybWF0aW9uXG4gICAqL1xuICBjb25zdHJ1Y3RvcihrZXk6IFB1YmxpY0tleSwgaW5mbzogSW5mbykge1xuICAgIHRoaXMua2V5ID0ga2V5O1xuICAgIHRoaXMuaW5mbyA9IGluZm87XG4gIH1cblxuICAvKipcbiAgICogRGVzZXJpYWxpemUgVmFsaWRhdG9ySW5mbyBmcm9tIHRoZSBjb25maWcgYWNjb3VudCBkYXRhLiBFeGFjdGx5IHR3byBjb25maWdcbiAgICoga2V5cyBhcmUgcmVxdWlyZWQgaW4gdGhlIGRhdGEuXG4gICAqXG4gICAqIEBwYXJhbSBidWZmZXIgY29uZmlnIGFjY291bnQgZGF0YVxuICAgKiBAcmV0dXJuIG51bGwgaWYgaW5mbyB3YXMgbm90IGZvdW5kXG4gICAqL1xuICBzdGF0aWMgZnJvbUNvbmZpZ0RhdGEoXG4gICAgYnVmZmVyOiBCdWZmZXIgfCBVaW50OEFycmF5IHwgQXJyYXk8bnVtYmVyPixcbiAgKTogVmFsaWRhdG9ySW5mbyB8IG51bGwge1xuICAgIGxldCBieXRlQXJyYXkgPSBbLi4uYnVmZmVyXTtcbiAgICBjb25zdCBjb25maWdLZXlDb3VudCA9IHNob3J0dmVjLmRlY29kZUxlbmd0aChieXRlQXJyYXkpO1xuICAgIGlmIChjb25maWdLZXlDb3VudCAhPT0gMikgcmV0dXJuIG51bGw7XG5cbiAgICBjb25zdCBjb25maWdLZXlzOiBBcnJheTxDb25maWdLZXk+ID0gW107XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCAyOyBpKyspIHtcbiAgICAgIGNvbnN0IHB1YmxpY0tleSA9IG5ldyBQdWJsaWNLZXkoYnl0ZUFycmF5LnNsaWNlKDAsIFBVQkxJQ19LRVlfTEVOR1RIKSk7XG4gICAgICBieXRlQXJyYXkgPSBieXRlQXJyYXkuc2xpY2UoUFVCTElDX0tFWV9MRU5HVEgpO1xuICAgICAgY29uc3QgaXNTaWduZXIgPSBieXRlQXJyYXkuc2xpY2UoMCwgMSlbMF0gPT09IDE7XG4gICAgICBieXRlQXJyYXkgPSBieXRlQXJyYXkuc2xpY2UoMSk7XG4gICAgICBjb25maWdLZXlzLnB1c2goe3B1YmxpY0tleSwgaXNTaWduZXJ9KTtcbiAgICB9XG5cbiAgICBpZiAoY29uZmlnS2V5c1swXS5wdWJsaWNLZXkuZXF1YWxzKFZBTElEQVRPUl9JTkZPX0tFWSkpIHtcbiAgICAgIGlmIChjb25maWdLZXlzWzFdLmlzU2lnbmVyKSB7XG4gICAgICAgIGNvbnN0IHJhd0luZm86IGFueSA9IExheW91dC5ydXN0U3RyaW5nKCkuZGVjb2RlKEJ1ZmZlci5mcm9tKGJ5dGVBcnJheSkpO1xuICAgICAgICBjb25zdCBpbmZvID0gSlNPTi5wYXJzZShyYXdJbmZvIGFzIHN0cmluZyk7XG4gICAgICAgIGFzc2VydFR5cGUoaW5mbywgSW5mb1N0cmluZyk7XG4gICAgICAgIHJldHVybiBuZXcgVmFsaWRhdG9ySW5mbyhjb25maWdLZXlzWzFdLnB1YmxpY0tleSwgaW5mbyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbn1cbiIsICJpbXBvcnQgKiBhcyBCdWZmZXJMYXlvdXQgZnJvbSAnQHNvbGFuYS9idWZmZXItbGF5b3V0JztcbmltcG9ydCB0eXBlIHtCdWZmZXJ9IGZyb20gJ2J1ZmZlcic7XG5cbmltcG9ydCAqIGFzIExheW91dCBmcm9tICcuL2xheW91dCc7XG5pbXBvcnQge1B1YmxpY0tleX0gZnJvbSAnLi9wdWJsaWNrZXknO1xuaW1wb3J0IHt0b0J1ZmZlcn0gZnJvbSAnLi91dGlscy90by1idWZmZXInO1xuXG5leHBvcnQgY29uc3QgVk9URV9QUk9HUkFNX0lEID0gbmV3IFB1YmxpY0tleShcbiAgJ1ZvdGUxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEnLFxuKTtcblxuZXhwb3J0IHR5cGUgTG9ja291dCA9IHtcbiAgc2xvdDogbnVtYmVyO1xuICBjb25maXJtYXRpb25Db3VudDogbnVtYmVyO1xufTtcblxuLyoqXG4gKiBIaXN0b3J5IG9mIGhvdyBtYW55IGNyZWRpdHMgZWFybmVkIGJ5IHRoZSBlbmQgb2YgZWFjaCBlcG9jaFxuICovXG5leHBvcnQgdHlwZSBFcG9jaENyZWRpdHMgPSBSZWFkb25seTx7XG4gIGVwb2NoOiBudW1iZXI7XG4gIGNyZWRpdHM6IG51bWJlcjtcbiAgcHJldkNyZWRpdHM6IG51bWJlcjtcbn0+O1xuXG5leHBvcnQgdHlwZSBBdXRob3JpemVkVm90ZXIgPSBSZWFkb25seTx7XG4gIGVwb2NoOiBudW1iZXI7XG4gIGF1dGhvcml6ZWRWb3RlcjogUHVibGljS2V5O1xufT47XG5cbnR5cGUgQXV0aG9yaXplZFZvdGVyUmF3ID0gUmVhZG9ubHk8e1xuICBhdXRob3JpemVkVm90ZXI6IFVpbnQ4QXJyYXk7XG4gIGVwb2NoOiBudW1iZXI7XG59PjtcblxudHlwZSBQcmlvclZvdGVycyA9IFJlYWRvbmx5PHtcbiAgYnVmOiBQcmlvclZvdGVyUmF3W107XG4gIGlkeDogbnVtYmVyO1xuICBpc0VtcHR5OiBudW1iZXI7XG59PjtcblxuZXhwb3J0IHR5cGUgUHJpb3JWb3RlciA9IFJlYWRvbmx5PHtcbiAgYXV0aG9yaXplZFB1YmtleTogUHVibGljS2V5O1xuICBlcG9jaE9mTGFzdEF1dGhvcml6ZWRTd2l0Y2g6IG51bWJlcjtcbiAgdGFyZ2V0RXBvY2g6IG51bWJlcjtcbn0+O1xuXG50eXBlIFByaW9yVm90ZXJSYXcgPSBSZWFkb25seTx7XG4gIGF1dGhvcml6ZWRQdWJrZXk6IFVpbnQ4QXJyYXk7XG4gIGVwb2NoT2ZMYXN0QXV0aG9yaXplZFN3aXRjaDogbnVtYmVyO1xuICB0YXJnZXRFcG9jaDogbnVtYmVyO1xufT47XG5cbmV4cG9ydCB0eXBlIEJsb2NrVGltZXN0YW1wID0gUmVhZG9ubHk8e1xuICBzbG90OiBudW1iZXI7XG4gIHRpbWVzdGFtcDogbnVtYmVyO1xufT47XG5cbnR5cGUgVm90ZUFjY291bnREYXRhID0gUmVhZG9ubHk8e1xuICBhdXRob3JpemVkVm90ZXJzOiBBdXRob3JpemVkVm90ZXJSYXdbXTtcbiAgYXV0aG9yaXplZFdpdGhkcmF3ZXI6IFVpbnQ4QXJyYXk7XG4gIGNvbW1pc3Npb246IG51bWJlcjtcbiAgZXBvY2hDcmVkaXRzOiBFcG9jaENyZWRpdHNbXTtcbiAgbGFzdFRpbWVzdGFtcDogQmxvY2tUaW1lc3RhbXA7XG4gIG5vZGVQdWJrZXk6IFVpbnQ4QXJyYXk7XG4gIHByaW9yVm90ZXJzOiBQcmlvclZvdGVycztcbiAgcm9vdFNsb3Q6IG51bWJlcjtcbiAgcm9vdFNsb3RWYWxpZDogbnVtYmVyO1xuICB2b3RlczogTG9ja291dFtdO1xufT47XG5cbi8qKlxuICogU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zb2xhbmEtbGFicy9zb2xhbmEvYmxvYi84YTEyZWQwMjljZmEzOGQ0YTQ1NDAwOTE2YzI0NjNmYjgyYmJlYzhjL3Byb2dyYW1zL3ZvdGVfYXBpL3NyYy92b3RlX3N0YXRlLnJzI0w2OC1MODhcbiAqXG4gKiBAaW50ZXJuYWxcbiAqL1xuY29uc3QgVm90ZUFjY291bnRMYXlvdXQgPSBCdWZmZXJMYXlvdXQuc3RydWN0PFZvdGVBY2NvdW50RGF0YT4oW1xuICBMYXlvdXQucHVibGljS2V5KCdub2RlUHVia2V5JyksXG4gIExheW91dC5wdWJsaWNLZXkoJ2F1dGhvcml6ZWRXaXRoZHJhd2VyJyksXG4gIEJ1ZmZlckxheW91dC51OCgnY29tbWlzc2lvbicpLFxuICBCdWZmZXJMYXlvdXQubnU2NCgpLCAvLyB2b3Rlcy5sZW5ndGhcbiAgQnVmZmVyTGF5b3V0LnNlcTxMb2Nrb3V0PihcbiAgICBCdWZmZXJMYXlvdXQuc3RydWN0KFtcbiAgICAgIEJ1ZmZlckxheW91dC5udTY0KCdzbG90JyksXG4gICAgICBCdWZmZXJMYXlvdXQudTMyKCdjb25maXJtYXRpb25Db3VudCcpLFxuICAgIF0pLFxuICAgIEJ1ZmZlckxheW91dC5vZmZzZXQoQnVmZmVyTGF5b3V0LnUzMigpLCAtOCksXG4gICAgJ3ZvdGVzJyxcbiAgKSxcbiAgQnVmZmVyTGF5b3V0LnU4KCdyb290U2xvdFZhbGlkJyksXG4gIEJ1ZmZlckxheW91dC5udTY0KCdyb290U2xvdCcpLFxuICBCdWZmZXJMYXlvdXQubnU2NCgpLCAvLyBhdXRob3JpemVkVm90ZXJzLmxlbmd0aFxuICBCdWZmZXJMYXlvdXQuc2VxPEF1dGhvcml6ZWRWb3RlclJhdz4oXG4gICAgQnVmZmVyTGF5b3V0LnN0cnVjdChbXG4gICAgICBCdWZmZXJMYXlvdXQubnU2NCgnZXBvY2gnKSxcbiAgICAgIExheW91dC5wdWJsaWNLZXkoJ2F1dGhvcml6ZWRWb3RlcicpLFxuICAgIF0pLFxuICAgIEJ1ZmZlckxheW91dC5vZmZzZXQoQnVmZmVyTGF5b3V0LnUzMigpLCAtOCksXG4gICAgJ2F1dGhvcml6ZWRWb3RlcnMnLFxuICApLFxuICBCdWZmZXJMYXlvdXQuc3RydWN0PFByaW9yVm90ZXJzPihcbiAgICBbXG4gICAgICBCdWZmZXJMYXlvdXQuc2VxKFxuICAgICAgICBCdWZmZXJMYXlvdXQuc3RydWN0KFtcbiAgICAgICAgICBMYXlvdXQucHVibGljS2V5KCdhdXRob3JpemVkUHVia2V5JyksXG4gICAgICAgICAgQnVmZmVyTGF5b3V0Lm51NjQoJ2Vwb2NoT2ZMYXN0QXV0aG9yaXplZFN3aXRjaCcpLFxuICAgICAgICAgIEJ1ZmZlckxheW91dC5udTY0KCd0YXJnZXRFcG9jaCcpLFxuICAgICAgICBdKSxcbiAgICAgICAgMzIsXG4gICAgICAgICdidWYnLFxuICAgICAgKSxcbiAgICAgIEJ1ZmZlckxheW91dC5udTY0KCdpZHgnKSxcbiAgICAgIEJ1ZmZlckxheW91dC51OCgnaXNFbXB0eScpLFxuICAgIF0sXG4gICAgJ3ByaW9yVm90ZXJzJyxcbiAgKSxcbiAgQnVmZmVyTGF5b3V0Lm51NjQoKSwgLy8gZXBvY2hDcmVkaXRzLmxlbmd0aFxuICBCdWZmZXJMYXlvdXQuc2VxPEVwb2NoQ3JlZGl0cz4oXG4gICAgQnVmZmVyTGF5b3V0LnN0cnVjdChbXG4gICAgICBCdWZmZXJMYXlvdXQubnU2NCgnZXBvY2gnKSxcbiAgICAgIEJ1ZmZlckxheW91dC5udTY0KCdjcmVkaXRzJyksXG4gICAgICBCdWZmZXJMYXlvdXQubnU2NCgncHJldkNyZWRpdHMnKSxcbiAgICBdKSxcbiAgICBCdWZmZXJMYXlvdXQub2Zmc2V0KEJ1ZmZlckxheW91dC51MzIoKSwgLTgpLFxuICAgICdlcG9jaENyZWRpdHMnLFxuICApLFxuICBCdWZmZXJMYXlvdXQuc3RydWN0PEJsb2NrVGltZXN0YW1wPihcbiAgICBbQnVmZmVyTGF5b3V0Lm51NjQoJ3Nsb3QnKSwgQnVmZmVyTGF5b3V0Lm51NjQoJ3RpbWVzdGFtcCcpXSxcbiAgICAnbGFzdFRpbWVzdGFtcCcsXG4gICksXG5dKTtcblxudHlwZSBWb3RlQWNjb3VudEFyZ3MgPSB7XG4gIG5vZGVQdWJrZXk6IFB1YmxpY0tleTtcbiAgYXV0aG9yaXplZFdpdGhkcmF3ZXI6IFB1YmxpY0tleTtcbiAgY29tbWlzc2lvbjogbnVtYmVyO1xuICByb290U2xvdDogbnVtYmVyIHwgbnVsbDtcbiAgdm90ZXM6IExvY2tvdXRbXTtcbiAgYXV0aG9yaXplZFZvdGVyczogQXV0aG9yaXplZFZvdGVyW107XG4gIHByaW9yVm90ZXJzOiBQcmlvclZvdGVyW107XG4gIGVwb2NoQ3JlZGl0czogRXBvY2hDcmVkaXRzW107XG4gIGxhc3RUaW1lc3RhbXA6IEJsb2NrVGltZXN0YW1wO1xufTtcblxuLyoqXG4gKiBWb3RlQWNjb3VudCBjbGFzc1xuICovXG5leHBvcnQgY2xhc3MgVm90ZUFjY291bnQge1xuICBub2RlUHVia2V5OiBQdWJsaWNLZXk7XG4gIGF1dGhvcml6ZWRXaXRoZHJhd2VyOiBQdWJsaWNLZXk7XG4gIGNvbW1pc3Npb246IG51bWJlcjtcbiAgcm9vdFNsb3Q6IG51bWJlciB8IG51bGw7XG4gIHZvdGVzOiBMb2Nrb3V0W107XG4gIGF1dGhvcml6ZWRWb3RlcnM6IEF1dGhvcml6ZWRWb3RlcltdO1xuICBwcmlvclZvdGVyczogUHJpb3JWb3RlcltdO1xuICBlcG9jaENyZWRpdHM6IEVwb2NoQ3JlZGl0c1tdO1xuICBsYXN0VGltZXN0YW1wOiBCbG9ja1RpbWVzdGFtcDtcblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBjb25zdHJ1Y3RvcihhcmdzOiBWb3RlQWNjb3VudEFyZ3MpIHtcbiAgICB0aGlzLm5vZGVQdWJrZXkgPSBhcmdzLm5vZGVQdWJrZXk7XG4gICAgdGhpcy5hdXRob3JpemVkV2l0aGRyYXdlciA9IGFyZ3MuYXV0aG9yaXplZFdpdGhkcmF3ZXI7XG4gICAgdGhpcy5jb21taXNzaW9uID0gYXJncy5jb21taXNzaW9uO1xuICAgIHRoaXMucm9vdFNsb3QgPSBhcmdzLnJvb3RTbG90O1xuICAgIHRoaXMudm90ZXMgPSBhcmdzLnZvdGVzO1xuICAgIHRoaXMuYXV0aG9yaXplZFZvdGVycyA9IGFyZ3MuYXV0aG9yaXplZFZvdGVycztcbiAgICB0aGlzLnByaW9yVm90ZXJzID0gYXJncy5wcmlvclZvdGVycztcbiAgICB0aGlzLmVwb2NoQ3JlZGl0cyA9IGFyZ3MuZXBvY2hDcmVkaXRzO1xuICAgIHRoaXMubGFzdFRpbWVzdGFtcCA9IGFyZ3MubGFzdFRpbWVzdGFtcDtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXNlcmlhbGl6ZSBWb3RlQWNjb3VudCBmcm9tIHRoZSBhY2NvdW50IGRhdGEuXG4gICAqXG4gICAqIEBwYXJhbSBidWZmZXIgYWNjb3VudCBkYXRhXG4gICAqIEByZXR1cm4gVm90ZUFjY291bnRcbiAgICovXG4gIHN0YXRpYyBmcm9tQWNjb3VudERhdGEoXG4gICAgYnVmZmVyOiBCdWZmZXIgfCBVaW50OEFycmF5IHwgQXJyYXk8bnVtYmVyPixcbiAgKTogVm90ZUFjY291bnQge1xuICAgIGNvbnN0IHZlcnNpb25PZmZzZXQgPSA0O1xuICAgIGNvbnN0IHZhID0gVm90ZUFjY291bnRMYXlvdXQuZGVjb2RlKHRvQnVmZmVyKGJ1ZmZlciksIHZlcnNpb25PZmZzZXQpO1xuXG4gICAgbGV0IHJvb3RTbG90OiBudW1iZXIgfCBudWxsID0gdmEucm9vdFNsb3Q7XG4gICAgaWYgKCF2YS5yb290U2xvdFZhbGlkKSB7XG4gICAgICByb290U2xvdCA9IG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5ldyBWb3RlQWNjb3VudCh7XG4gICAgICBub2RlUHVia2V5OiBuZXcgUHVibGljS2V5KHZhLm5vZGVQdWJrZXkpLFxuICAgICAgYXV0aG9yaXplZFdpdGhkcmF3ZXI6IG5ldyBQdWJsaWNLZXkodmEuYXV0aG9yaXplZFdpdGhkcmF3ZXIpLFxuICAgICAgY29tbWlzc2lvbjogdmEuY29tbWlzc2lvbixcbiAgICAgIHZvdGVzOiB2YS52b3RlcyxcbiAgICAgIHJvb3RTbG90LFxuICAgICAgYXV0aG9yaXplZFZvdGVyczogdmEuYXV0aG9yaXplZFZvdGVycy5tYXAocGFyc2VBdXRob3JpemVkVm90ZXIpLFxuICAgICAgcHJpb3JWb3RlcnM6IGdldFByaW9yVm90ZXJzKHZhLnByaW9yVm90ZXJzKSxcbiAgICAgIGVwb2NoQ3JlZGl0czogdmEuZXBvY2hDcmVkaXRzLFxuICAgICAgbGFzdFRpbWVzdGFtcDogdmEubGFzdFRpbWVzdGFtcCxcbiAgICB9KTtcbiAgfVxufVxuXG5mdW5jdGlvbiBwYXJzZUF1dGhvcml6ZWRWb3Rlcih7XG4gIGF1dGhvcml6ZWRWb3RlcixcbiAgZXBvY2gsXG59OiBBdXRob3JpemVkVm90ZXJSYXcpOiBBdXRob3JpemVkVm90ZXIge1xuICByZXR1cm4ge1xuICAgIGVwb2NoLFxuICAgIGF1dGhvcml6ZWRWb3RlcjogbmV3IFB1YmxpY0tleShhdXRob3JpemVkVm90ZXIpLFxuICB9O1xufVxuXG5mdW5jdGlvbiBwYXJzZVByaW9yVm90ZXJzKHtcbiAgYXV0aG9yaXplZFB1YmtleSxcbiAgZXBvY2hPZkxhc3RBdXRob3JpemVkU3dpdGNoLFxuICB0YXJnZXRFcG9jaCxcbn06IFByaW9yVm90ZXJSYXcpOiBQcmlvclZvdGVyIHtcbiAgcmV0dXJuIHtcbiAgICBhdXRob3JpemVkUHVia2V5OiBuZXcgUHVibGljS2V5KGF1dGhvcml6ZWRQdWJrZXkpLFxuICAgIGVwb2NoT2ZMYXN0QXV0aG9yaXplZFN3aXRjaCxcbiAgICB0YXJnZXRFcG9jaCxcbiAgfTtcbn1cblxuZnVuY3Rpb24gZ2V0UHJpb3JWb3RlcnMoe2J1ZiwgaWR4LCBpc0VtcHR5fTogUHJpb3JWb3RlcnMpOiBQcmlvclZvdGVyW10ge1xuICBpZiAoaXNFbXB0eSkge1xuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIHJldHVybiBbXG4gICAgLi4uYnVmLnNsaWNlKGlkeCArIDEpLm1hcChwYXJzZVByaW9yVm90ZXJzKSxcbiAgICAuLi5idWYuc2xpY2UoMCwgaWR4KS5tYXAocGFyc2VQcmlvclZvdGVycyksXG4gIF07XG59XG4iLCAiY29uc3QgZW5kcG9pbnQgPSB7XG4gIGh0dHA6IHtcbiAgICBkZXZuZXQ6ICdodHRwOi8vYXBpLmRldm5ldC5zb2xhbmEuY29tJyxcbiAgICB0ZXN0bmV0OiAnaHR0cDovL2FwaS50ZXN0bmV0LnNvbGFuYS5jb20nLFxuICAgICdtYWlubmV0LWJldGEnOiAnaHR0cDovL2FwaS5tYWlubmV0LWJldGEuc29sYW5hLmNvbS8nLFxuICB9LFxuICBodHRwczoge1xuICAgIGRldm5ldDogJ2h0dHBzOi8vYXBpLmRldm5ldC5zb2xhbmEuY29tJyxcbiAgICB0ZXN0bmV0OiAnaHR0cHM6Ly9hcGkudGVzdG5ldC5zb2xhbmEuY29tJyxcbiAgICAnbWFpbm5ldC1iZXRhJzogJ2h0dHBzOi8vYXBpLm1haW5uZXQtYmV0YS5zb2xhbmEuY29tLycsXG4gIH0sXG59O1xuXG5leHBvcnQgdHlwZSBDbHVzdGVyID0gJ2Rldm5ldCcgfCAndGVzdG5ldCcgfCAnbWFpbm5ldC1iZXRhJztcblxuLyoqXG4gKiBSZXRyaWV2ZXMgdGhlIFJQQyBBUEkgVVJMIGZvciB0aGUgc3BlY2lmaWVkIGNsdXN0ZXJcbiAqIEBwYXJhbSB7Q2x1c3Rlcn0gW2NsdXN0ZXI9XCJkZXZuZXRcIl0gLSBUaGUgY2x1c3RlciBuYW1lIG9mIHRoZSBSUEMgQVBJIFVSTCB0byB1c2UuIFBvc3NpYmxlIG9wdGlvbnM6ICdkZXZuZXQnIHwgJ3Rlc3RuZXQnIHwgJ21haW5uZXQtYmV0YSdcbiAqIEBwYXJhbSB7Ym9vbGVhbn0gW3Rscz1cImh0dHBcIl0gLSBVc2UgVExTIHdoZW4gY29ubmVjdGluZyB0byBjbHVzdGVyLlxuICpcbiAqIEByZXR1cm5zIHtzdHJpbmd9IFVSTCBzdHJpbmcgb2YgdGhlIFJQQyBlbmRwb2ludFxuICovXG5leHBvcnQgZnVuY3Rpb24gY2x1c3RlckFwaVVybChjbHVzdGVyPzogQ2x1c3RlciwgdGxzPzogYm9vbGVhbik6IHN0cmluZyB7XG4gIGNvbnN0IGtleSA9IHRscyA9PT0gZmFsc2UgPyAnaHR0cCcgOiAnaHR0cHMnO1xuXG4gIGlmICghY2x1c3Rlcikge1xuICAgIHJldHVybiBlbmRwb2ludFtrZXldWydkZXZuZXQnXTtcbiAgfVxuXG4gIGNvbnN0IHVybCA9IGVuZHBvaW50W2tleV1bY2x1c3Rlcl07XG4gIGlmICghdXJsKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duICR7a2V5fSBjbHVzdGVyOiAke2NsdXN0ZXJ9YCk7XG4gIH1cbiAgcmV0dXJuIHVybDtcbn1cbiIsICJpbXBvcnQgdHlwZSB7QnVmZmVyfSBmcm9tICdidWZmZXInO1xuXG5pbXBvcnQge1xuICBCbG9ja2hlaWdodEJhc2VkVHJhbnNhY3Rpb25Db25maXJtYXRpb25TdHJhdGVneSxcbiAgQ29ubmVjdGlvbixcbiAgRHVyYWJsZU5vbmNlVHJhbnNhY3Rpb25Db25maXJtYXRpb25TdHJhdGVneSxcbiAgVHJhbnNhY3Rpb25Db25maXJtYXRpb25TdHJhdGVneSxcbn0gZnJvbSAnLi4vY29ubmVjdGlvbic7XG5pbXBvcnQgdHlwZSB7VHJhbnNhY3Rpb25TaWduYXR1cmV9IGZyb20gJy4uL3RyYW5zYWN0aW9uJztcbmltcG9ydCB0eXBlIHtDb25maXJtT3B0aW9uc30gZnJvbSAnLi4vY29ubmVjdGlvbic7XG5cbi8qKlxuICogU2VuZCBhbmQgY29uZmlybSBhIHJhdyB0cmFuc2FjdGlvblxuICpcbiAqIElmIGBjb21taXRtZW50YCBvcHRpb24gaXMgbm90IHNwZWNpZmllZCwgZGVmYXVsdHMgdG8gJ21heCcgY29tbWl0bWVudC5cbiAqXG4gKiBAcGFyYW0ge0Nvbm5lY3Rpb259IGNvbm5lY3Rpb25cbiAqIEBwYXJhbSB7QnVmZmVyfSByYXdUcmFuc2FjdGlvblxuICogQHBhcmFtIHtUcmFuc2FjdGlvbkNvbmZpcm1hdGlvblN0cmF0ZWd5fSBjb25maXJtYXRpb25TdHJhdGVneVxuICogQHBhcmFtIHtDb25maXJtT3B0aW9uc30gW29wdGlvbnNdXG4gKiBAcmV0dXJucyB7UHJvbWlzZTxUcmFuc2FjdGlvblNpZ25hdHVyZT59XG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzZW5kQW5kQ29uZmlybVJhd1RyYW5zYWN0aW9uKFxuICBjb25uZWN0aW9uOiBDb25uZWN0aW9uLFxuICByYXdUcmFuc2FjdGlvbjogQnVmZmVyLFxuICBjb25maXJtYXRpb25TdHJhdGVneTogVHJhbnNhY3Rpb25Db25maXJtYXRpb25TdHJhdGVneSxcbiAgb3B0aW9ucz86IENvbmZpcm1PcHRpb25zLFxuKTogUHJvbWlzZTxUcmFuc2FjdGlvblNpZ25hdHVyZT47XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgQ2FsbGluZyBgc2VuZEFuZENvbmZpcm1SYXdUcmFuc2FjdGlvbigpYCB3aXRob3V0IGEgYGNvbmZpcm1hdGlvblN0cmF0ZWd5YFxuICogaXMgbm8gbG9uZ2VyIHN1cHBvcnRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIGEgZnV0dXJlIHZlcnNpb24uXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1yZWRlY2xhcmVcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzZW5kQW5kQ29uZmlybVJhd1RyYW5zYWN0aW9uKFxuICBjb25uZWN0aW9uOiBDb25uZWN0aW9uLFxuICByYXdUcmFuc2FjdGlvbjogQnVmZmVyLFxuICBvcHRpb25zPzogQ29uZmlybU9wdGlvbnMsXG4pOiBQcm9taXNlPFRyYW5zYWN0aW9uU2lnbmF0dXJlPjtcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXJlZGVjbGFyZVxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHNlbmRBbmRDb25maXJtUmF3VHJhbnNhY3Rpb24oXG4gIGNvbm5lY3Rpb246IENvbm5lY3Rpb24sXG4gIHJhd1RyYW5zYWN0aW9uOiBCdWZmZXIsXG4gIGNvbmZpcm1hdGlvblN0cmF0ZWd5T3JDb25maXJtT3B0aW9uczpcbiAgICB8IFRyYW5zYWN0aW9uQ29uZmlybWF0aW9uU3RyYXRlZ3lcbiAgICB8IENvbmZpcm1PcHRpb25zXG4gICAgfCB1bmRlZmluZWQsXG4gIG1heWJlQ29uZmlybU9wdGlvbnM/OiBDb25maXJtT3B0aW9ucyxcbik6IFByb21pc2U8VHJhbnNhY3Rpb25TaWduYXR1cmU+IHtcbiAgbGV0IGNvbmZpcm1hdGlvblN0cmF0ZWd5OiBUcmFuc2FjdGlvbkNvbmZpcm1hdGlvblN0cmF0ZWd5IHwgdW5kZWZpbmVkO1xuICBsZXQgb3B0aW9uczogQ29uZmlybU9wdGlvbnMgfCB1bmRlZmluZWQ7XG4gIGlmIChcbiAgICBjb25maXJtYXRpb25TdHJhdGVneU9yQ29uZmlybU9wdGlvbnMgJiZcbiAgICBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoXG4gICAgICBjb25maXJtYXRpb25TdHJhdGVneU9yQ29uZmlybU9wdGlvbnMsXG4gICAgICAnbGFzdFZhbGlkQmxvY2tIZWlnaHQnLFxuICAgIClcbiAgKSB7XG4gICAgY29uZmlybWF0aW9uU3RyYXRlZ3kgPVxuICAgICAgY29uZmlybWF0aW9uU3RyYXRlZ3lPckNvbmZpcm1PcHRpb25zIGFzIEJsb2NraGVpZ2h0QmFzZWRUcmFuc2FjdGlvbkNvbmZpcm1hdGlvblN0cmF0ZWd5O1xuICAgIG9wdGlvbnMgPSBtYXliZUNvbmZpcm1PcHRpb25zO1xuICB9IGVsc2UgaWYgKFxuICAgIGNvbmZpcm1hdGlvblN0cmF0ZWd5T3JDb25maXJtT3B0aW9ucyAmJlxuICAgIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChcbiAgICAgIGNvbmZpcm1hdGlvblN0cmF0ZWd5T3JDb25maXJtT3B0aW9ucyxcbiAgICAgICdub25jZVZhbHVlJyxcbiAgICApXG4gICkge1xuICAgIGNvbmZpcm1hdGlvblN0cmF0ZWd5ID1cbiAgICAgIGNvbmZpcm1hdGlvblN0cmF0ZWd5T3JDb25maXJtT3B0aW9ucyBhcyBEdXJhYmxlTm9uY2VUcmFuc2FjdGlvbkNvbmZpcm1hdGlvblN0cmF0ZWd5O1xuICAgIG9wdGlvbnMgPSBtYXliZUNvbmZpcm1PcHRpb25zO1xuICB9IGVsc2Uge1xuICAgIG9wdGlvbnMgPSBjb25maXJtYXRpb25TdHJhdGVneU9yQ29uZmlybU9wdGlvbnMgYXNcbiAgICAgIHwgQ29uZmlybU9wdGlvbnNcbiAgICAgIHwgdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHNlbmRPcHRpb25zID0gb3B0aW9ucyAmJiB7XG4gICAgc2tpcFByZWZsaWdodDogb3B0aW9ucy5za2lwUHJlZmxpZ2h0LFxuICAgIHByZWZsaWdodENvbW1pdG1lbnQ6IG9wdGlvbnMucHJlZmxpZ2h0Q29tbWl0bWVudCB8fCBvcHRpb25zLmNvbW1pdG1lbnQsXG4gICAgbWluQ29udGV4dFNsb3Q6IG9wdGlvbnMubWluQ29udGV4dFNsb3QsXG4gIH07XG5cbiAgY29uc3Qgc2lnbmF0dXJlID0gYXdhaXQgY29ubmVjdGlvbi5zZW5kUmF3VHJhbnNhY3Rpb24oXG4gICAgcmF3VHJhbnNhY3Rpb24sXG4gICAgc2VuZE9wdGlvbnMsXG4gICk7XG5cbiAgY29uc3QgY29tbWl0bWVudCA9IG9wdGlvbnMgJiYgb3B0aW9ucy5jb21taXRtZW50O1xuICBjb25zdCBjb25maXJtYXRpb25Qcm9taXNlID0gY29uZmlybWF0aW9uU3RyYXRlZ3lcbiAgICA/IGNvbm5lY3Rpb24uY29uZmlybVRyYW5zYWN0aW9uKGNvbmZpcm1hdGlvblN0cmF0ZWd5LCBjb21taXRtZW50KVxuICAgIDogY29ubmVjdGlvbi5jb25maXJtVHJhbnNhY3Rpb24oc2lnbmF0dXJlLCBjb21taXRtZW50KTtcbiAgY29uc3Qgc3RhdHVzID0gKGF3YWl0IGNvbmZpcm1hdGlvblByb21pc2UpLnZhbHVlO1xuXG4gIGlmIChzdGF0dXMuZXJyKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgYFJhdyB0cmFuc2FjdGlvbiAke3NpZ25hdHVyZX0gZmFpbGVkICgke0pTT04uc3RyaW5naWZ5KHN0YXR1cyl9KWAsXG4gICAgKTtcbiAgfVxuXG4gIHJldHVybiBzaWduYXR1cmU7XG59XG4iLCAiZXhwb3J0ICogZnJvbSAnLi9hY2NvdW50JztcbmV4cG9ydCAqIGZyb20gJy4vYmxvY2toYXNoJztcbmV4cG9ydCAqIGZyb20gJy4vYnBmLWxvYWRlci1kZXByZWNhdGVkJztcbmV4cG9ydCAqIGZyb20gJy4vYnBmLWxvYWRlcic7XG5leHBvcnQgKiBmcm9tICcuL2Nvbm5lY3Rpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9lcG9jaC1zY2hlZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2Vycm9ycyc7XG5leHBvcnQgKiBmcm9tICcuL2ZlZS1jYWxjdWxhdG9yJztcbmV4cG9ydCAqIGZyb20gJy4va2V5cGFpcic7XG5leHBvcnQgKiBmcm9tICcuL2xvYWRlcic7XG5leHBvcnQgKiBmcm9tICcuL21lc3NhZ2UnO1xuZXhwb3J0ICogZnJvbSAnLi9ub25jZS1hY2NvdW50JztcbmV4cG9ydCAqIGZyb20gJy4vcHJvZ3JhbXMnO1xuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWNrZXknO1xuZXhwb3J0ICogZnJvbSAnLi90cmFuc2FjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3ZhbGlkYXRvci1pbmZvJztcbmV4cG9ydCAqIGZyb20gJy4vdm90ZS1hY2NvdW50JztcbmV4cG9ydCAqIGZyb20gJy4vc3lzdmFyJztcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMnO1xuXG4vKipcbiAqIFRoZXJlIGFyZSAxLWJpbGxpb24gbGFtcG9ydHMgaW4gb25lIFNPTFxuICovXG5leHBvcnQgY29uc3QgTEFNUE9SVFNfUEVSX1NPTCA9IDEwMDAwMDAwMDA7XG4iLCAiLyoqXG4gKiBEZWZpbmVzIGEgdHlwZSBgVGAgdGhhdCBjYW4gYWxzbyBiZSBgbnVsbGAuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIE9wdGlvbnNcbiAqL1xuZXhwb3J0IHR5cGUgTnVsbGFibGU8VD4gPSBUIHwgbnVsbDtcblxuLyoqXG4gKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgUnVzdCBPcHRpb24gdHlwZSBpbiBKYXZhU2NyaXB0LlxuICogSXQgY2FuIGJlIG9uZSBvZiB0aGUgZm9sbG93aW5nOlxuICogLSA8Y29kZT57QGxpbmsgU29tZX08VD48L2NvZGU+OiBNZWFuaW5nIHRoZXJlIGlzIGEgdmFsdWUgb2YgdHlwZSBULlxuICogLSA8Y29kZT57QGxpbmsgTm9uZX08L2NvZGU+OiBNZWFuaW5nIHRoZXJlIGlzIG5vIHZhbHVlLlxuICpcbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgT3B0aW9uc1xuICovXG5leHBvcnQgdHlwZSBPcHRpb248VD4gPSBTb21lPFQ+IHwgTm9uZTtcblxuLyoqXG4gKiBEZWZpbmVzIGEgbG9vc2VyIHR5cGUgdGhhdCBjYW4gYmUgdXNlZCB3aGVuIHNlcmlhbGl6aW5nIGFuIHtAbGluayBPcHRpb259LlxuICogVGhpcyBhbGxvd3MgdXMgdG8gcGFzcyBudWxsIG9yIHRoZSBPcHRpb24gdmFsdWUgZGlyZWN0bHkgd2hpbHN0IHN0aWxsXG4gKiBzdXBwb3J0aW5nIHRoZSBPcHRpb24gdHlwZSBmb3IgdXNlLWNhc2VzIHRoYXQgbmVlZCBtb3JlIHR5cGUgc2FmZXR5LlxuICpcbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgT3B0aW9uc1xuICovXG5leHBvcnQgdHlwZSBPcHRpb25Pck51bGxhYmxlPFQ+ID0gT3B0aW9uPFQ+IHwgTnVsbGFibGU8VD47XG5cbi8qKlxuICogUmVwcmVzZW50cyBhbiBvcHRpb24gb2YgdHlwZSBgVGAgdGhhdCBoYXMgYSB2YWx1ZS5cbiAqXG4gKiBAc2VlIHtAbGluayBPcHRpb259XG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIE9wdGlvbnNcbiAqL1xuZXhwb3J0IHR5cGUgU29tZTxUPiA9IHsgX19vcHRpb246ICdTb21lJzsgdmFsdWU6IFQgfTtcblxuLyoqXG4gKiBSZXByZXNlbnRzIGFuIG9wdGlvbiBvZiB0eXBlIGBUYCB0aGF0IGhhcyBubyB2YWx1ZS5cbiAqXG4gKiBAc2VlIHtAbGluayBPcHRpb259XG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIE9wdGlvbnNcbiAqL1xuZXhwb3J0IHR5cGUgTm9uZSA9IHsgX19vcHRpb246ICdOb25lJyB9O1xuXG4vKipcbiAqIENyZWF0ZXMgYSBuZXcge0BsaW5rIE9wdGlvbn0gb2YgdHlwZSBgVGAgdGhhdCBoYXMgYSB2YWx1ZS5cbiAqXG4gKiBAc2VlIHtAbGluayBPcHRpb259XG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIE9wdGlvbnNcbiAqL1xuZXhwb3J0IGNvbnN0IHNvbWUgPSA8VD4odmFsdWU6IFQpOiBPcHRpb248VD4gPT4gKHsgX19vcHRpb246ICdTb21lJywgdmFsdWUgfSk7XG5cbi8qKlxuICogQ3JlYXRlcyBhIG5ldyB7QGxpbmsgT3B0aW9ufSBvZiB0eXBlIGBUYCB0aGF0IGhhcyBubyB2YWx1ZS5cbiAqXG4gKiBAc2VlIHtAbGluayBPcHRpb259XG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIE9wdGlvbnNcbiAqL1xuZXhwb3J0IGNvbnN0IG5vbmUgPSA8VD4oKTogT3B0aW9uPFQ+ID0+ICh7IF9fb3B0aW9uOiAnTm9uZScgfSk7XG5cbi8qKlxuICogV2hldGhlciB0aGUgZ2l2ZW4gZGF0YSBpcyBhbiB7QGxpbmsgT3B0aW9ufS5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgT3B0aW9uc1xuICovXG5leHBvcnQgY29uc3QgaXNPcHRpb24gPSA8VCA9IHVua25vd24+KGlucHV0OiBhbnkpOiBpbnB1dCBpcyBPcHRpb248VD4gPT5cbiAgaW5wdXQgJiZcbiAgdHlwZW9mIGlucHV0ID09PSAnb2JqZWN0JyAmJlxuICAnX19vcHRpb24nIGluIGlucHV0ICYmXG4gICgoaW5wdXQuX19vcHRpb24gPT09ICdTb21lJyAmJiAndmFsdWUnIGluIGlucHV0KSB8fFxuICAgIGlucHV0Ll9fb3B0aW9uID09PSAnTm9uZScpO1xuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGdpdmVuIHtAbGluayBPcHRpb259IGlzIGEge0BsaW5rIFNvbWV9LlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBPcHRpb25zXG4gKi9cbmV4cG9ydCBjb25zdCBpc1NvbWUgPSA8VD4ob3B0aW9uOiBPcHRpb248VD4pOiBvcHRpb24gaXMgU29tZTxUPiA9PlxuICBvcHRpb24uX19vcHRpb24gPT09ICdTb21lJztcblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBnaXZlbiB7QGxpbmsgT3B0aW9ufSBpcyBhIHtAbGluayBOb25lfS5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgT3B0aW9uc1xuICovXG5leHBvcnQgY29uc3QgaXNOb25lID0gPFQ+KG9wdGlvbjogT3B0aW9uPFQ+KTogb3B0aW9uIGlzIE5vbmUgPT5cbiAgb3B0aW9uLl9fb3B0aW9uID09PSAnTm9uZSc7XG4iLCAiaW1wb3J0IHsgTnVsbGFibGUsIE9wdGlvbiwgaXNTb21lLCBub25lLCBzb21lIH0gZnJvbSAnLi9jb21tb24nO1xuXG4vKipcbiAqIFVud3JhcHMgdGhlIHZhbHVlIG9mIGFuIHtAbGluayBPcHRpb259IG9mIHR5cGUgYFRgXG4gKiBvciByZXR1cm5zIGEgZmFsbGJhY2sgdmFsdWUgdGhhdCBkZWZhdWx0cyB0byBgbnVsbGAuXG4gKlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBPcHRpb25zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1bndyYXBPcHRpb248VD4ob3B0aW9uOiBPcHRpb248VD4pOiBOdWxsYWJsZTxUPjtcbmV4cG9ydCBmdW5jdGlvbiB1bndyYXBPcHRpb248VCwgVT4ob3B0aW9uOiBPcHRpb248VD4sIGZhbGxiYWNrOiAoKSA9PiBVKTogVCB8IFU7XG5leHBvcnQgZnVuY3Rpb24gdW53cmFwT3B0aW9uPFQsIFUgPSBudWxsPihcbiAgb3B0aW9uOiBPcHRpb248VD4sXG4gIGZhbGxiYWNrPzogKCkgPT4gVVxuKTogVCB8IFUge1xuICBpZiAoaXNTb21lKG9wdGlvbikpIHJldHVybiBvcHRpb24udmFsdWU7XG4gIHJldHVybiBmYWxsYmFjayA/IGZhbGxiYWNrKCkgOiAobnVsbCBhcyBVKTtcbn1cblxuLyoqXG4gKiBXcmFwcyBhIG51bGxhYmxlIHZhbHVlIGludG8gYW4ge0BsaW5rIE9wdGlvbn0uXG4gKlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBPcHRpb25zXG4gKi9cbmV4cG9ydCBjb25zdCB3cmFwTnVsbGFibGUgPSA8VD4obnVsbGFibGU6IE51bGxhYmxlPFQ+KTogT3B0aW9uPFQ+ID0+XG4gIG51bGxhYmxlICE9PSBudWxsID8gc29tZShudWxsYWJsZSkgOiBub25lPFQ+KCk7XG5cbi8qKlxuICogVW53cmFwcyB0aGUgdmFsdWUgb2YgYW4ge0BsaW5rIE9wdGlvbn0gb2YgdHlwZSBgVGAuXG4gKiBJZiB0aGUgb3B0aW9uIGlzIGEge0BsaW5rIFNvbWV9LCBpdCByZXR1cm5zIGl0cyB2YWx1ZSxcbiAqIE90aGVyd2lzZSwgaXQgcmV0dXJucyBgbnVsbGAuXG4gKlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBPcHRpb25zXG4gKiBAZGVwcmVjYXRlZCBVc2Uge0BsaW5rIHVud3JhcE9wdGlvbn0gaW5zdGVhZC5cbiAqL1xuZXhwb3J0IGNvbnN0IHVud3JhcFNvbWUgPSA8VD4ob3B0aW9uOiBPcHRpb248VD4pOiBOdWxsYWJsZTxUPiA9PlxuICBpc1NvbWUob3B0aW9uKSA/IG9wdGlvbi52YWx1ZSA6IG51bGw7XG5cbi8qKlxuICogVW53cmFwcyB0aGUgdmFsdWUgb2YgYW4ge0BsaW5rIE9wdGlvbn0gb2YgdHlwZSBgVGBcbiAqIG9yIHJldHVybnMgYSBjdXN0b20gZmFsbGJhY2sgdmFsdWUuXG4gKiBJZiB0aGUgb3B0aW9uIGlzIGEge0BsaW5rIFNvbWV9LCBpdCByZXR1cm5zIGl0cyB2YWx1ZSxcbiAqIE90aGVyd2lzZSwgaXQgcmV0dXJucyB0aGUgcmV0dXJuIHZhbHVlIG9mIHRoZSBwcm92aWRlZCBmYWxsYmFjayBjYWxsYmFjay5cbiAqXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIE9wdGlvbnNcbiAqIEBkZXByZWNhdGVkIFVzZSB7QGxpbmsgdW53cmFwT3B0aW9ufSBpbnN0ZWFkLlxuICovXG5leHBvcnQgY29uc3QgdW53cmFwU29tZU9yRWxzZSA9IDxULCBVPihcbiAgb3B0aW9uOiBPcHRpb248VD4sXG4gIGZhbGxiYWNrOiAoKSA9PiBVXG4pOiBUIHwgVSA9PiAoaXNTb21lKG9wdGlvbikgPyBvcHRpb24udmFsdWUgOiBmYWxsYmFjaygpKTtcbiIsICJpbXBvcnQgeyBOb25lLCBTb21lLCBpc09wdGlvbiwgaXNTb21lIH0gZnJvbSAnLi9jb21tb24nO1xuXG4vKipcbiAqIEEgdHlwZSB0aGF0IGRlZmluZXMgdGhlIHJlY3Vyc2l2ZSB1bndyYXBwaW5nIG9mIGEgdHlwZSBgVGBcbiAqIHN1Y2ggdGhhdCBhbGwgbmVzdGVkIHtAbGluayBPcHRpb259IHR5cGVzIGFyZSB1bndyYXBwZWQuXG4gKlxuICogRm9yIGVhY2ggbmVzdGVkIHtAbGluayBPcHRpb259IHR5cGUsIGlmIHRoZSBvcHRpb24gaXMgYSB7QGxpbmsgU29tZX0sXG4gKiBpdCByZXR1cm5zIHRoZSB0eXBlIG9mIGl0cyB2YWx1ZSwgb3RoZXJ3aXNlLCBpdCByZXR1cm5zIHRoZSBwcm92aWRlZFxuICogZmFsbGJhY2sgdHlwZSBgVWAgd2hpY2ggZGVmYXVsdHMgdG8gYG51bGxgLlxuICpcbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgT3B0aW9uc1xuICovXG5leHBvcnQgdHlwZSBVbndyYXBwZWRPcHRpb248VCwgVSA9IG51bGw+ID0gVCBleHRlbmRzIFNvbWU8aW5mZXIgVFZhbHVlPlxuICA/IFVud3JhcHBlZE9wdGlvbjxUVmFsdWUsIFU+XG4gIDogVCBleHRlbmRzIE5vbmVcbiAgPyBVXG4gIDogVCBleHRlbmRzXG4gICAgICB8IHN0cmluZ1xuICAgICAgfCBudW1iZXJcbiAgICAgIHwgYm9vbGVhblxuICAgICAgfCBzeW1ib2xcbiAgICAgIHwgYmlnaW50XG4gICAgICB8IHVuZGVmaW5lZFxuICAgICAgfCBudWxsXG4gICAgICB8IFVpbnQ4QXJyYXlcbiAgICAgIHwgRGF0ZVxuICA/IFRcbiAgOiBUIGV4dGVuZHMgb2JqZWN0XG4gID8geyBba2V5IGluIGtleW9mIFRdOiBVbndyYXBwZWRPcHRpb248VFtrZXldLCBVPiB9XG4gIDogVCBleHRlbmRzIEFycmF5PGluZmVyIFRJdGVtPlxuICA/IEFycmF5PFVud3JhcHBlZE9wdGlvbjxUSXRlbSwgVT4+XG4gIDogVDtcblxuLyoqXG4gKiBSZWN1cnNpdmVseSBnbyB0aHJvdWdoIGEgdHlwZSBgVGBzdWNoIHRoYXQgYWxsXG4gKiBuZXN0ZWQge0BsaW5rIE9wdGlvbn0gdHlwZXMgYXJlIHVud3JhcHBlZC5cbiAqXG4gKiBGb3IgZWFjaCBuZXN0ZWQge0BsaW5rIE9wdGlvbn0gdHlwZSwgaWYgdGhlIG9wdGlvbiBpcyBhIHtAbGluayBTb21lfSxcbiAqIGl0IHJldHVybnMgaXRzIHZhbHVlLCBvdGhlcndpc2UsIGl0IHJldHVybnMgdGhlIHByb3ZpZGVkIGZhbGxiYWNrIHZhbHVlXG4gKiB3aGljaCBkZWZhdWx0cyB0byBgbnVsbGAuXG4gKlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBPcHRpb25zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1bndyYXBPcHRpb25SZWN1cnNpdmVseTxUPihpbnB1dDogVCk6IFVud3JhcHBlZE9wdGlvbjxUPjtcbmV4cG9ydCBmdW5jdGlvbiB1bndyYXBPcHRpb25SZWN1cnNpdmVseTxULCBVPihcbiAgaW5wdXQ6IFQsXG4gIGZhbGxiYWNrOiAoKSA9PiBVXG4pOiBVbndyYXBwZWRPcHRpb248VCwgVT47XG5leHBvcnQgZnVuY3Rpb24gdW53cmFwT3B0aW9uUmVjdXJzaXZlbHk8VCwgVSA9IG51bGw+KFxuICBpbnB1dDogVCxcbiAgZmFsbGJhY2s/OiAoKSA9PiBVXG4pOiBVbndyYXBwZWRPcHRpb248VCwgVT4ge1xuICAvLyBUeXBlcyB0byBieXBhc3MuXG4gIGlmICghaW5wdXQgfHwgQXJyYXlCdWZmZXIuaXNWaWV3KGlucHV0KSkge1xuICAgIHJldHVybiBpbnB1dCBhcyBVbndyYXBwZWRPcHRpb248VCwgVT47XG4gIH1cblxuICBjb25zdCBuZXh0ID0gPFg+KHg6IFgpID0+XG4gICAgKGZhbGxiYWNrXG4gICAgICA/IHVud3JhcE9wdGlvblJlY3Vyc2l2ZWx5KHgsIGZhbGxiYWNrKVxuICAgICAgOiB1bndyYXBPcHRpb25SZWN1cnNpdmVseSh4KSkgYXMgVW53cmFwcGVkT3B0aW9uPFgsIFU+O1xuXG4gIC8vIEhhbmRsZSBPcHRpb24uXG4gIGlmIChpc09wdGlvbihpbnB1dCkpIHtcbiAgICBpZiAoaXNTb21lKGlucHV0KSkgcmV0dXJuIG5leHQoaW5wdXQudmFsdWUpIGFzIFVud3JhcHBlZE9wdGlvbjxULCBVPjtcbiAgICByZXR1cm4gKGZhbGxiYWNrID8gZmFsbGJhY2soKSA6IG51bGwpIGFzIFVud3JhcHBlZE9wdGlvbjxULCBVPjtcbiAgfVxuXG4gIC8vIFdhbGsuXG4gIGlmIChBcnJheS5pc0FycmF5KGlucHV0KSkge1xuICAgIHJldHVybiBpbnB1dC5tYXAobmV4dCkgYXMgVW53cmFwcGVkT3B0aW9uPFQsIFU+O1xuICB9XG4gIGlmICh0eXBlb2YgaW5wdXQgPT09ICdvYmplY3QnKSB7XG4gICAgcmV0dXJuIE9iamVjdC5mcm9tRW50cmllcyhcbiAgICAgIE9iamVjdC5lbnRyaWVzKGlucHV0KS5tYXAoKFtrLCB2XSkgPT4gW2ssIG5leHQodildKVxuICAgICkgYXMgVW53cmFwcGVkT3B0aW9uPFQsIFU+O1xuICB9XG4gIHJldHVybiBpbnB1dCBhcyBVbndyYXBwZWRPcHRpb248VCwgVT47XG59XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgJ19fZXNNb2R1bGUnLCB7IHZhbHVlOiB0cnVlIH0pO1xuXG52YXIgY29tbW9uID0gcmVxdWlyZSgnLi9jb21tb24uY2pzJyk7XG52YXIgdW53cmFwT3B0aW9uID0gcmVxdWlyZSgnLi91bndyYXBPcHRpb24uY2pzJyk7XG52YXIgdW53cmFwT3B0aW9uUmVjdXJzaXZlbHkgPSByZXF1aXJlKCcuL3Vud3JhcE9wdGlvblJlY3Vyc2l2ZWx5LmNqcycpO1xuXG5cblxuZXhwb3J0cy5pc05vbmUgPSBjb21tb24uaXNOb25lO1xuZXhwb3J0cy5pc09wdGlvbiA9IGNvbW1vbi5pc09wdGlvbjtcbmV4cG9ydHMuaXNTb21lID0gY29tbW9uLmlzU29tZTtcbmV4cG9ydHMubm9uZSA9IGNvbW1vbi5ub25lO1xuZXhwb3J0cy5zb21lID0gY29tbW9uLnNvbWU7XG5leHBvcnRzLnVud3JhcE9wdGlvbiA9IHVud3JhcE9wdGlvbi51bndyYXBPcHRpb247XG5leHBvcnRzLnVud3JhcFNvbWUgPSB1bndyYXBPcHRpb24udW53cmFwU29tZTtcbmV4cG9ydHMudW53cmFwU29tZU9yRWxzZSA9IHVud3JhcE9wdGlvbi51bndyYXBTb21lT3JFbHNlO1xuZXhwb3J0cy53cmFwTnVsbGFibGUgPSB1bndyYXBPcHRpb24ud3JhcE51bGxhYmxlO1xuZXhwb3J0cy51bndyYXBPcHRpb25SZWN1cnNpdmVseSA9IHVud3JhcE9wdGlvblJlY3Vyc2l2ZWx5LnVud3JhcE9wdGlvblJlY3Vyc2l2ZWx5O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXguY2pzLm1hcFxuIiwgIi8qKiBAY2F0ZWdvcnkgRXJyb3JzICovXG5leHBvcnQgY2xhc3MgSW52YWxpZEJhc2VTdHJpbmdFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nID0gJ0ludmFsaWRCYXNlU3RyaW5nRXJyb3InO1xuXG4gIHJlYWRvbmx5IGNhdXNlPzogRXJyb3I7XG5cbiAgY29uc3RydWN0b3IodmFsdWU6IHN0cmluZywgYmFzZTogbnVtYmVyLCBjYXVzZT86IEVycm9yKSB7XG4gICAgY29uc3QgbWVzc2FnZSA9IGBFeHBlY3RlZCBhIHN0cmluZyBvZiBiYXNlICR7YmFzZX0sIGdvdCBbJHt2YWx1ZX1dLmA7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gICAgdGhpcy5jYXVzZSA9IGNhdXNlO1xuICB9XG59XG4iLCAiaW1wb3J0IHR5cGUgeyBTZXJpYWxpemVyIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWNvcmUnO1xuaW1wb3J0IHsgSW52YWxpZEJhc2VTdHJpbmdFcnJvciB9IGZyb20gJy4vZXJyb3JzJztcblxuLyoqXG4gKiBBIHN0cmluZyBzZXJpYWxpemVyIHRoYXQgcmVxdWlyZXMgYSBjdXN0b20gYWxwaGFiZXQgYW5kIHVzZXNcbiAqIHRoZSBsZW5ndGggb2YgdGhhdCBhbHBoYWJldCBhcyB0aGUgYmFzZS4gSXQgdGhlbiBkaXZpZGVzXG4gKiB0aGUgaW5wdXQgYnkgdGhlIGJhc2UgYXMgbWFueSB0aW1lcyBhcyBuZWNlc3NhcnkgdG8gZ2V0XG4gKiB0aGUgb3V0cHV0LiBJdCBhbHNvIHN1cHBvcnRzIGxlYWRpbmcgemVyb2VzIGJ5IHVzaW5nIHRoZVxuICogZmlyc3QgY2hhcmFjdGVyIG9mIHRoZSBhbHBoYWJldCBhcyB0aGUgemVybyBjaGFyYWN0ZXIuXG4gKlxuICogVGhpcyBjYW4gYmUgdXNlZCB0byBjcmVhdGUgc2VyaWFsaXplcnMgc3VjaCBhcyBiYXNlMTAgb3IgYmFzZTU4LlxuICpcbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgY29uc3QgYmFzZVggPSAoYWxwaGFiZXQ6IHN0cmluZyk6IFNlcmlhbGl6ZXI8c3RyaW5nPiA9PiB7XG4gIGNvbnN0IGJhc2UgPSBhbHBoYWJldC5sZW5ndGg7XG4gIGNvbnN0IGJhc2VCaWdJbnQgPSBCaWdJbnQoYmFzZSk7XG4gIHJldHVybiB7XG4gICAgZGVzY3JpcHRpb246IGBiYXNlJHtiYXNlfWAsXG4gICAgZml4ZWRTaXplOiBudWxsLFxuICAgIG1heFNpemU6IG51bGwsXG4gICAgc2VyaWFsaXplKHZhbHVlOiBzdHJpbmcpOiBVaW50OEFycmF5IHtcbiAgICAgIC8vIENoZWNrIGlmIHRoZSB2YWx1ZSBpcyB2YWxpZC5cbiAgICAgIGlmICghdmFsdWUubWF0Y2gobmV3IFJlZ0V4cChgXlske2FscGhhYmV0fV0qJGApKSkge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEJhc2VTdHJpbmdFcnJvcih2YWx1ZSwgYmFzZSk7XG4gICAgICB9XG4gICAgICBpZiAodmFsdWUgPT09ICcnKSByZXR1cm4gbmV3IFVpbnQ4QXJyYXkoKTtcblxuICAgICAgLy8gSGFuZGxlIGxlYWRpbmcgemVyb2VzLlxuICAgICAgY29uc3QgY2hhcnMgPSBbLi4udmFsdWVdO1xuICAgICAgbGV0IHRyYWlsSW5kZXggPSBjaGFycy5maW5kSW5kZXgoKGMpID0+IGMgIT09IGFscGhhYmV0WzBdKTtcbiAgICAgIHRyYWlsSW5kZXggPSB0cmFpbEluZGV4ID09PSAtMSA/IGNoYXJzLmxlbmd0aCA6IHRyYWlsSW5kZXg7XG4gICAgICBjb25zdCBsZWFkaW5nWmVyb2VzID0gQXJyYXkodHJhaWxJbmRleCkuZmlsbCgwKTtcbiAgICAgIGlmICh0cmFpbEluZGV4ID09PSBjaGFycy5sZW5ndGgpIHJldHVybiBVaW50OEFycmF5LmZyb20obGVhZGluZ1plcm9lcyk7XG5cbiAgICAgIC8vIEZyb20gYmFzZVggdG8gYmFzZTEwLlxuICAgICAgY29uc3QgdGFpbENoYXJzID0gY2hhcnMuc2xpY2UodHJhaWxJbmRleCk7XG4gICAgICBsZXQgYmFzZTEwTnVtYmVyID0gMG47XG4gICAgICBsZXQgYmFzZVhQb3dlciA9IDFuO1xuICAgICAgZm9yIChsZXQgaSA9IHRhaWxDaGFycy5sZW5ndGggLSAxOyBpID49IDA7IGkgLT0gMSkge1xuICAgICAgICBiYXNlMTBOdW1iZXIgKz0gYmFzZVhQb3dlciAqIEJpZ0ludChhbHBoYWJldC5pbmRleE9mKHRhaWxDaGFyc1tpXSkpO1xuICAgICAgICBiYXNlWFBvd2VyICo9IGJhc2VCaWdJbnQ7XG4gICAgICB9XG5cbiAgICAgIC8vIEZyb20gYmFzZTEwIHRvIGJ5dGVzLlxuICAgICAgY29uc3QgdGFpbEJ5dGVzID0gW107XG4gICAgICB3aGlsZSAoYmFzZTEwTnVtYmVyID4gMG4pIHtcbiAgICAgICAgdGFpbEJ5dGVzLnVuc2hpZnQoTnVtYmVyKGJhc2UxME51bWJlciAlIDI1Nm4pKTtcbiAgICAgICAgYmFzZTEwTnVtYmVyIC89IDI1Nm47XG4gICAgICB9XG4gICAgICByZXR1cm4gVWludDhBcnJheS5mcm9tKGxlYWRpbmdaZXJvZXMuY29uY2F0KHRhaWxCeXRlcykpO1xuICAgIH0sXG4gICAgZGVzZXJpYWxpemUoYnVmZmVyLCBvZmZzZXQgPSAwKTogW3N0cmluZywgbnVtYmVyXSB7XG4gICAgICBpZiAoYnVmZmVyLmxlbmd0aCA9PT0gMCkgcmV0dXJuIFsnJywgMF07XG5cbiAgICAgIC8vIEhhbmRsZSBsZWFkaW5nIHplcm9lcy5cbiAgICAgIGNvbnN0IGJ5dGVzID0gYnVmZmVyLnNsaWNlKG9mZnNldCk7XG4gICAgICBsZXQgdHJhaWxJbmRleCA9IGJ5dGVzLmZpbmRJbmRleCgobikgPT4gbiAhPT0gMCk7XG4gICAgICB0cmFpbEluZGV4ID0gdHJhaWxJbmRleCA9PT0gLTEgPyBieXRlcy5sZW5ndGggOiB0cmFpbEluZGV4O1xuICAgICAgY29uc3QgbGVhZGluZ1plcm9lcyA9IGFscGhhYmV0WzBdLnJlcGVhdCh0cmFpbEluZGV4KTtcbiAgICAgIGlmICh0cmFpbEluZGV4ID09PSBieXRlcy5sZW5ndGgpIHJldHVybiBbbGVhZGluZ1plcm9lcywgYnVmZmVyLmxlbmd0aF07XG5cbiAgICAgIC8vIEZyb20gYnl0ZXMgdG8gYmFzZTEwLlxuICAgICAgbGV0IGJhc2UxME51bWJlciA9IGJ5dGVzXG4gICAgICAgIC5zbGljZSh0cmFpbEluZGV4KVxuICAgICAgICAucmVkdWNlKChzdW0sIGJ5dGUpID0+IHN1bSAqIDI1Nm4gKyBCaWdJbnQoYnl0ZSksIDBuKTtcblxuICAgICAgLy8gRnJvbSBiYXNlMTAgdG8gYmFzZVguXG4gICAgICBjb25zdCB0YWlsQ2hhcnMgPSBbXTtcbiAgICAgIHdoaWxlIChiYXNlMTBOdW1iZXIgPiAwbikge1xuICAgICAgICB0YWlsQ2hhcnMudW5zaGlmdChhbHBoYWJldFtOdW1iZXIoYmFzZTEwTnVtYmVyICUgYmFzZUJpZ0ludCldKTtcbiAgICAgICAgYmFzZTEwTnVtYmVyIC89IGJhc2VCaWdJbnQ7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBbbGVhZGluZ1plcm9lcyArIHRhaWxDaGFycy5qb2luKCcnKSwgYnVmZmVyLmxlbmd0aF07XG4gICAgfSxcbiAgfTtcbn07XG4iLCAiaW1wb3J0IHR5cGUgeyBTZXJpYWxpemVyIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWNvcmUnO1xuaW1wb3J0IHsgYmFzZVggfSBmcm9tICcuL2Jhc2VYJztcblxuLyoqXG4gKiBBIHN0cmluZyBzZXJpYWxpemVyIHRoYXQgdXNlcyBiYXNlMTAgZW5jb2RpbmcuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IGNvbnN0IGJhc2UxMDogU2VyaWFsaXplcjxzdHJpbmc+ID0gYmFzZVgoJzAxMjM0NTY3ODknKTtcbiIsICJpbXBvcnQgdHlwZSB7IFNlcmlhbGl6ZXIgfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQgeyBJbnZhbGlkQmFzZVN0cmluZ0Vycm9yIH0gZnJvbSAnLi9lcnJvcnMnO1xuXG4vKipcbiAqIEEgc3RyaW5nIHNlcmlhbGl6ZXIgdGhhdCB1c2VzIGJhc2UxNiBlbmNvZGluZy5cbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgY29uc3QgYmFzZTE2OiBTZXJpYWxpemVyPHN0cmluZz4gPSB7XG4gIGRlc2NyaXB0aW9uOiAnYmFzZTE2JyxcbiAgZml4ZWRTaXplOiBudWxsLFxuICBtYXhTaXplOiBudWxsLFxuICBzZXJpYWxpemUodmFsdWU6IHN0cmluZykge1xuICAgIGNvbnN0IGxvd2VyY2FzZVZhbHVlID0gdmFsdWUudG9Mb3dlckNhc2UoKTtcbiAgICBpZiAoIWxvd2VyY2FzZVZhbHVlLm1hdGNoKC9eWzAxMjM0NTY3ODlhYmNkZWZdKiQvKSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRCYXNlU3RyaW5nRXJyb3IodmFsdWUsIDE2KTtcbiAgICB9XG4gICAgY29uc3QgbWF0Y2hlcyA9IGxvd2VyY2FzZVZhbHVlLm1hdGNoKC8uezEsMn0vZyk7XG4gICAgcmV0dXJuIFVpbnQ4QXJyYXkuZnJvbShcbiAgICAgIG1hdGNoZXMgPyBtYXRjaGVzLm1hcCgoYnl0ZTogc3RyaW5nKSA9PiBwYXJzZUludChieXRlLCAxNikpIDogW11cbiAgICApO1xuICB9LFxuICBkZXNlcmlhbGl6ZShidWZmZXIsIG9mZnNldCA9IDApIHtcbiAgICBjb25zdCB2YWx1ZSA9IGJ1ZmZlclxuICAgICAgLnNsaWNlKG9mZnNldClcbiAgICAgIC5yZWR1Y2UoKHN0ciwgYnl0ZSkgPT4gc3RyICsgYnl0ZS50b1N0cmluZygxNikucGFkU3RhcnQoMiwgJzAnKSwgJycpO1xuICAgIHJldHVybiBbdmFsdWUsIGJ1ZmZlci5sZW5ndGhdO1xuICB9LFxufTtcbiIsICJpbXBvcnQgdHlwZSB7IFNlcmlhbGl6ZXIgfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQgeyBiYXNlWCB9IGZyb20gJy4vYmFzZVgnO1xuXG4vKipcbiAqIEEgc3RyaW5nIHNlcmlhbGl6ZXIgdGhhdCB1c2VzIGJhc2U1OCBlbmNvZGluZy5cbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgY29uc3QgYmFzZTU4OiBTZXJpYWxpemVyPHN0cmluZz4gPSBiYXNlWChcbiAgJzEyMzQ1Njc4OUFCQ0RFRkdISktMTU5QUVJTVFVWV1hZWmFiY2RlZmdoaWprbW5vcHFyc3R1dnd4eXonXG4pO1xuIiwgIi8qKlxuICogQ29uY2F0ZW5hdGVzIGFuIGFycmF5IG9mIGBVaW50OEFycmF5YHMgaW50byBhIHNpbmdsZSBgVWludDhBcnJheWAuXG4gKiBAY2F0ZWdvcnkgVXRpbHNcbiAqL1xuZXhwb3J0IGNvbnN0IG1lcmdlQnl0ZXMgPSAoYnl0ZXNBcnI6IFVpbnQ4QXJyYXlbXSk6IFVpbnQ4QXJyYXkgPT4ge1xuICBjb25zdCB0b3RhbExlbmd0aCA9IGJ5dGVzQXJyLnJlZHVjZSgodG90YWwsIGFycikgPT4gdG90YWwgKyBhcnIubGVuZ3RoLCAwKTtcbiAgY29uc3QgcmVzdWx0ID0gbmV3IFVpbnQ4QXJyYXkodG90YWxMZW5ndGgpO1xuICBsZXQgb2Zmc2V0ID0gMDtcbiAgYnl0ZXNBcnIuZm9yRWFjaCgoYXJyKSA9PiB7XG4gICAgcmVzdWx0LnNldChhcnIsIG9mZnNldCk7XG4gICAgb2Zmc2V0ICs9IGFyci5sZW5ndGg7XG4gIH0pO1xuICByZXR1cm4gcmVzdWx0O1xufTtcblxuLyoqXG4gKiBQYWRzIGEgYFVpbnQ4QXJyYXlgIHdpdGggemVyb2VzIHRvIHRoZSBzcGVjaWZpZWQgbGVuZ3RoLlxuICogSWYgdGhlIGFycmF5IGlzIGxvbmdlciB0aGFuIHRoZSBzcGVjaWZpZWQgbGVuZ3RoLCBpdCBpcyByZXR1cm5lZCBhcy1pcy5cbiAqIEBjYXRlZ29yeSBVdGlsc1xuICovXG5leHBvcnQgY29uc3QgcGFkQnl0ZXMgPSAoYnl0ZXM6IFVpbnQ4QXJyYXksIGxlbmd0aDogbnVtYmVyKTogVWludDhBcnJheSA9PiB7XG4gIGlmIChieXRlcy5sZW5ndGggPj0gbGVuZ3RoKSByZXR1cm4gYnl0ZXM7XG4gIGNvbnN0IHBhZGRlZEJ5dGVzID0gbmV3IFVpbnQ4QXJyYXkobGVuZ3RoKS5maWxsKDApO1xuICBwYWRkZWRCeXRlcy5zZXQoYnl0ZXMpO1xuICByZXR1cm4gcGFkZGVkQnl0ZXM7XG59O1xuXG4vKipcbiAqIEZpeGVzIGEgYFVpbnQ4QXJyYXlgIHRvIHRoZSBzcGVjaWZpZWQgbGVuZ3RoLlxuICogSWYgdGhlIGFycmF5IGlzIGxvbmdlciB0aGFuIHRoZSBzcGVjaWZpZWQgbGVuZ3RoLCBpdCBpcyB0cnVuY2F0ZWQuXG4gKiBJZiB0aGUgYXJyYXkgaXMgc2hvcnRlciB0aGFuIHRoZSBzcGVjaWZpZWQgbGVuZ3RoLCBpdCBpcyBwYWRkZWQgd2l0aCB6ZXJvZXMuXG4gKiBAY2F0ZWdvcnkgVXRpbHNcbiAqL1xuZXhwb3J0IGNvbnN0IGZpeEJ5dGVzID0gKGJ5dGVzOiBVaW50OEFycmF5LCBsZW5ndGg6IG51bWJlcik6IFVpbnQ4QXJyYXkgPT5cbiAgcGFkQnl0ZXMoYnl0ZXMuc2xpY2UoMCwgbGVuZ3RoKSwgbGVuZ3RoKTtcbiIsICIvKiogQGNhdGVnb3J5IEVycm9ycyAqL1xuZXhwb3J0IGNsYXNzIERlc2VyaWFsaXppbmdFbXB0eUJ1ZmZlckVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICByZWFkb25seSBuYW1lOiBzdHJpbmcgPSAnRGVzZXJpYWxpemluZ0VtcHR5QnVmZmVyRXJyb3InO1xuXG4gIGNvbnN0cnVjdG9yKHNlcmlhbGl6ZXI6IHN0cmluZykge1xuICAgIHN1cGVyKGBTZXJpYWxpemVyIFske3NlcmlhbGl6ZXJ9XSBjYW5ub3QgZGVzZXJpYWxpemUgZW1wdHkgYnVmZmVycy5gKTtcbiAgfVxufVxuXG4vKiogQGNhdGVnb3J5IEVycm9ycyAqL1xuZXhwb3J0IGNsYXNzIE5vdEVub3VnaEJ5dGVzRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZyA9ICdOb3RFbm91Z2hCeXRlc0Vycm9yJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBzZXJpYWxpemVyOiBzdHJpbmcsXG4gICAgZXhwZWN0ZWQ6IGJpZ2ludCB8IG51bWJlcixcbiAgICBhY3R1YWw6IGJpZ2ludCB8IG51bWJlclxuICApIHtcbiAgICBzdXBlcihcbiAgICAgIGBTZXJpYWxpemVyIFske3NlcmlhbGl6ZXJ9XSBleHBlY3RlZCAke2V4cGVjdGVkfSBieXRlcywgZ290ICR7YWN0dWFsfS5gXG4gICAgKTtcbiAgfVxufVxuXG4vKiogQGNhdGVnb3J5IEVycm9ycyAqL1xuZXhwb3J0IGNsYXNzIEV4cGVjdGVkRml4ZWRTaXplU2VyaWFsaXplckVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICByZWFkb25seSBuYW1lOiBzdHJpbmcgPSAnRXhwZWN0ZWRGaXhlZFNpemVTZXJpYWxpemVyRXJyb3InO1xuXG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcbiAgICBtZXNzYWdlID8/PSAnRXhwZWN0ZWQgYSBmaXhlZC1zaXplIHNlcmlhbGl6ZXIsIGdvdCBhIHZhcmlhYmxlLXNpemUgb25lLic7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gIH1cbn1cbiIsICJpbXBvcnQgeyBmaXhCeXRlcyB9IGZyb20gJy4vYnl0ZXMnO1xuaW1wb3J0IHsgU2VyaWFsaXplciB9IGZyb20gJy4vY29tbW9uJztcbmltcG9ydCB7IE5vdEVub3VnaEJ5dGVzRXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5cbi8qKlxuICogQ3JlYXRlcyBhIGZpeGVkLXNpemUgc2VyaWFsaXplciBmcm9tIGEgZ2l2ZW4gc2VyaWFsaXplci5cbiAqXG4gKiBAcGFyYW0gc2VyaWFsaXplciAtIFRoZSBzZXJpYWxpemVyIHRvIHdyYXAgaW50byBhIGZpeGVkLXNpemUgc2VyaWFsaXplci5cbiAqIEBwYXJhbSBmaXhlZEJ5dGVzIC0gVGhlIGZpeGVkIG51bWJlciBvZiBieXRlcyB0byByZWFkLlxuICogQHBhcmFtIGRlc2NyaXB0aW9uIC0gQSBjdXN0b20gZGVzY3JpcHRpb24gZm9yIHRoZSBzZXJpYWxpemVyLlxuICpcbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgZnVuY3Rpb24gZml4U2VyaWFsaXplcjxULCBVIGV4dGVuZHMgVCA9IFQ+KFxuICBzZXJpYWxpemVyOiBTZXJpYWxpemVyPFQsIFU+LFxuICBmaXhlZEJ5dGVzOiBudW1iZXIsXG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nXG4pOiBTZXJpYWxpemVyPFQsIFU+IHtcbiAgcmV0dXJuIHtcbiAgICBkZXNjcmlwdGlvbjpcbiAgICAgIGRlc2NyaXB0aW9uID8/IGBmaXhlZCgke2ZpeGVkQnl0ZXN9LCAke3NlcmlhbGl6ZXIuZGVzY3JpcHRpb259KWAsXG4gICAgZml4ZWRTaXplOiBmaXhlZEJ5dGVzLFxuICAgIG1heFNpemU6IGZpeGVkQnl0ZXMsXG4gICAgc2VyaWFsaXplOiAodmFsdWU6IFQpID0+IGZpeEJ5dGVzKHNlcmlhbGl6ZXIuc2VyaWFsaXplKHZhbHVlKSwgZml4ZWRCeXRlcyksXG4gICAgZGVzZXJpYWxpemU6IChidWZmZXI6IFVpbnQ4QXJyYXksIG9mZnNldCA9IDApID0+IHtcbiAgICAgIC8vIFNsaWNlIHRoZSBidWZmZXIgdG8gdGhlIGZpeGVkIHNpemUuXG4gICAgICBidWZmZXIgPSBidWZmZXIuc2xpY2Uob2Zmc2V0LCBvZmZzZXQgKyBmaXhlZEJ5dGVzKTtcbiAgICAgIC8vIEVuc3VyZSB3ZSBoYXZlIGVub3VnaCBieXRlcy5cbiAgICAgIGlmIChidWZmZXIubGVuZ3RoIDwgZml4ZWRCeXRlcykge1xuICAgICAgICB0aHJvdyBuZXcgTm90RW5vdWdoQnl0ZXNFcnJvcihcbiAgICAgICAgICAnZml4U2VyaWFsaXplcicsXG4gICAgICAgICAgZml4ZWRCeXRlcyxcbiAgICAgICAgICBidWZmZXIubGVuZ3RoXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICAvLyBJZiB0aGUgbmVzdGVkIHNlcmlhbGl6ZXIgaXMgZml4ZWQtc2l6ZSwgcGFkIGFuZCB0cnVuY2F0ZSB0aGUgYnVmZmVyIGFjY29yZGluZ2x5LlxuICAgICAgaWYgKHNlcmlhbGl6ZXIuZml4ZWRTaXplICE9PSBudWxsKSB7XG4gICAgICAgIGJ1ZmZlciA9IGZpeEJ5dGVzKGJ1ZmZlciwgc2VyaWFsaXplci5maXhlZFNpemUpO1xuICAgICAgfVxuICAgICAgLy8gRGVzZXJpYWxpemUgdGhlIHZhbHVlIHVzaW5nIHRoZSBuZXN0ZWQgc2VyaWFsaXplci5cbiAgICAgIGNvbnN0IFt2YWx1ZV0gPSBzZXJpYWxpemVyLmRlc2VyaWFsaXplKGJ1ZmZlciwgMCk7XG4gICAgICByZXR1cm4gW3ZhbHVlLCBvZmZzZXQgKyBmaXhlZEJ5dGVzXTtcbiAgICB9LFxuICB9O1xufVxuIiwgImltcG9ydCB7IFNlcmlhbGl6ZXIgfSBmcm9tICcuL2NvbW1vbic7XG5cbi8qKlxuICogQ29udmVydHMgYSBzZXJpYWxpemVyIEEgdG8gYSBzZXJpYWxpemVyIEIgYnkgbWFwcGluZyB0aGVpciB2YWx1ZXMuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1hcFNlcmlhbGl6ZXI8TmV3RnJvbSwgT2xkRnJvbSwgVG8gZXh0ZW5kcyBOZXdGcm9tICYgT2xkRnJvbT4oXG4gIHNlcmlhbGl6ZXI6IFNlcmlhbGl6ZXI8T2xkRnJvbSwgVG8+LFxuICB1bm1hcDogKHZhbHVlOiBOZXdGcm9tKSA9PiBPbGRGcm9tXG4pOiBTZXJpYWxpemVyPE5ld0Zyb20sIFRvPjtcbmV4cG9ydCBmdW5jdGlvbiBtYXBTZXJpYWxpemVyPFxuICBOZXdGcm9tLFxuICBPbGRGcm9tLFxuICBOZXdUbyBleHRlbmRzIE5ld0Zyb20gPSBOZXdGcm9tLFxuICBPbGRUbyBleHRlbmRzIE9sZEZyb20gPSBPbGRGcm9tXG4+KFxuICBzZXJpYWxpemVyOiBTZXJpYWxpemVyPE9sZEZyb20sIE9sZFRvPixcbiAgdW5tYXA6ICh2YWx1ZTogTmV3RnJvbSkgPT4gT2xkRnJvbSxcbiAgbWFwOiAodmFsdWU6IE9sZFRvLCBidWZmZXI6IFVpbnQ4QXJyYXksIG9mZnNldDogbnVtYmVyKSA9PiBOZXdUb1xuKTogU2VyaWFsaXplcjxOZXdGcm9tLCBOZXdUbz47XG5leHBvcnQgZnVuY3Rpb24gbWFwU2VyaWFsaXplcjxcbiAgTmV3RnJvbSxcbiAgT2xkRnJvbSxcbiAgTmV3VG8gZXh0ZW5kcyBOZXdGcm9tID0gTmV3RnJvbSxcbiAgT2xkVG8gZXh0ZW5kcyBPbGRGcm9tID0gT2xkRnJvbVxuPihcbiAgc2VyaWFsaXplcjogU2VyaWFsaXplcjxPbGRGcm9tLCBPbGRUbz4sXG4gIHVubWFwOiAodmFsdWU6IE5ld0Zyb20pID0+IE9sZEZyb20sXG4gIG1hcD86ICh2YWx1ZTogT2xkVG8sIGJ1ZmZlcjogVWludDhBcnJheSwgb2Zmc2V0OiBudW1iZXIpID0+IE5ld1RvXG4pOiBTZXJpYWxpemVyPE5ld0Zyb20sIE5ld1RvPiB7XG4gIHJldHVybiB7XG4gICAgZGVzY3JpcHRpb246IHNlcmlhbGl6ZXIuZGVzY3JpcHRpb24sXG4gICAgZml4ZWRTaXplOiBzZXJpYWxpemVyLmZpeGVkU2l6ZSxcbiAgICBtYXhTaXplOiBzZXJpYWxpemVyLm1heFNpemUsXG4gICAgc2VyaWFsaXplOiAodmFsdWU6IE5ld0Zyb20pID0+IHNlcmlhbGl6ZXIuc2VyaWFsaXplKHVubWFwKHZhbHVlKSksXG4gICAgZGVzZXJpYWxpemU6IChidWZmZXI6IFVpbnQ4QXJyYXksIG9mZnNldCA9IDApID0+IHtcbiAgICAgIGNvbnN0IFt2YWx1ZSwgbGVuZ3RoXSA9IHNlcmlhbGl6ZXIuZGVzZXJpYWxpemUoYnVmZmVyLCBvZmZzZXQpO1xuICAgICAgcmV0dXJuIG1hcFxuICAgICAgICA/IFttYXAodmFsdWUsIGJ1ZmZlciwgb2Zmc2V0KSwgbGVuZ3RoXVxuICAgICAgICA6IFt2YWx1ZSBhcyBhbnksIGxlbmd0aF07XG4gICAgfSxcbiAgfTtcbn1cbiIsICJpbXBvcnQgeyBtZXJnZUJ5dGVzIH0gZnJvbSAnLi9ieXRlcyc7XG5pbXBvcnQgeyBTZXJpYWxpemVyIH0gZnJvbSAnLi9jb21tb24nO1xuaW1wb3J0IHsgRXhwZWN0ZWRGaXhlZFNpemVTZXJpYWxpemVyRXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5cbi8qKlxuICogUmV2ZXJzZXMgdGhlIGJ5dGVzIG9mIGEgZml4ZWQtc2l6ZSBzZXJpYWxpemVyLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZXZlcnNlU2VyaWFsaXplcjxULCBVIGV4dGVuZHMgVCA9IFQ+KFxuICBzZXJpYWxpemVyOiBTZXJpYWxpemVyPFQsIFU+XG4pOiBTZXJpYWxpemVyPFQsIFU+IHtcbiAgaWYgKHNlcmlhbGl6ZXIuZml4ZWRTaXplID09PSBudWxsKSB7XG4gICAgdGhyb3cgbmV3IEV4cGVjdGVkRml4ZWRTaXplU2VyaWFsaXplckVycm9yKFxuICAgICAgJ0Nhbm5vdCByZXZlcnNlIGEgc2VyaWFsaXplciBvZiB2YXJpYWJsZSBzaXplLidcbiAgICApO1xuICB9XG4gIHJldHVybiB7XG4gICAgLi4uc2VyaWFsaXplcixcbiAgICBzZXJpYWxpemU6ICh2YWx1ZTogVCkgPT4gc2VyaWFsaXplci5zZXJpYWxpemUodmFsdWUpLnJldmVyc2UoKSxcbiAgICBkZXNlcmlhbGl6ZTogKGJ5dGVzOiBVaW50OEFycmF5LCBvZmZzZXQgPSAwKSA9PiB7XG4gICAgICBjb25zdCBmaXhlZFNpemUgPSBzZXJpYWxpemVyLmZpeGVkU2l6ZSBhcyBudW1iZXI7XG4gICAgICBjb25zdCBuZXdCeXRlcyA9IG1lcmdlQnl0ZXMoW1xuICAgICAgICBieXRlcy5zbGljZSgwLCBvZmZzZXQpLFxuICAgICAgICBieXRlcy5zbGljZShvZmZzZXQsIG9mZnNldCArIGZpeGVkU2l6ZSkucmV2ZXJzZSgpLFxuICAgICAgICBieXRlcy5zbGljZShvZmZzZXQgKyBmaXhlZFNpemUpLFxuICAgICAgXSk7XG4gICAgICByZXR1cm4gc2VyaWFsaXplci5kZXNlcmlhbGl6ZShuZXdCeXRlcywgb2Zmc2V0KTtcbiAgICB9LFxuICB9O1xufVxuIiwgIid1c2Ugc3RyaWN0JztcblxuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcblxudmFyIGJ5dGVzID0gcmVxdWlyZSgnLi9ieXRlcy5janMnKTtcbnZhciBlcnJvcnMgPSByZXF1aXJlKCcuL2Vycm9ycy5janMnKTtcbnZhciBmaXhTZXJpYWxpemVyID0gcmVxdWlyZSgnLi9maXhTZXJpYWxpemVyLmNqcycpO1xudmFyIG1hcFNlcmlhbGl6ZXIgPSByZXF1aXJlKCcuL21hcFNlcmlhbGl6ZXIuY2pzJyk7XG52YXIgcmV2ZXJzZVNlcmlhbGl6ZXIgPSByZXF1aXJlKCcuL3JldmVyc2VTZXJpYWxpemVyLmNqcycpO1xuXG5cblxuZXhwb3J0cy5maXhCeXRlcyA9IGJ5dGVzLmZpeEJ5dGVzO1xuZXhwb3J0cy5tZXJnZUJ5dGVzID0gYnl0ZXMubWVyZ2VCeXRlcztcbmV4cG9ydHMucGFkQnl0ZXMgPSBieXRlcy5wYWRCeXRlcztcbmV4cG9ydHMuRGVzZXJpYWxpemluZ0VtcHR5QnVmZmVyRXJyb3IgPSBlcnJvcnMuRGVzZXJpYWxpemluZ0VtcHR5QnVmZmVyRXJyb3I7XG5leHBvcnRzLkV4cGVjdGVkRml4ZWRTaXplU2VyaWFsaXplckVycm9yID0gZXJyb3JzLkV4cGVjdGVkRml4ZWRTaXplU2VyaWFsaXplckVycm9yO1xuZXhwb3J0cy5Ob3RFbm91Z2hCeXRlc0Vycm9yID0gZXJyb3JzLk5vdEVub3VnaEJ5dGVzRXJyb3I7XG5leHBvcnRzLmZpeFNlcmlhbGl6ZXIgPSBmaXhTZXJpYWxpemVyLmZpeFNlcmlhbGl6ZXI7XG5leHBvcnRzLm1hcFNlcmlhbGl6ZXIgPSBtYXBTZXJpYWxpemVyLm1hcFNlcmlhbGl6ZXI7XG5leHBvcnRzLnJldmVyc2VTZXJpYWxpemVyID0gcmV2ZXJzZVNlcmlhbGl6ZXIucmV2ZXJzZVNlcmlhbGl6ZXI7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5janMubWFwXG4iLCAiLyogZXNsaW50LWRpc2FibGUgbm8tcmVzdHJpY3RlZC1zeW50YXggKi9cbi8qIGVzbGludC1kaXNhYmxlIG5vLWJpdHdpc2UgKi9cbmltcG9ydCB0eXBlIHsgU2VyaWFsaXplciB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcbmltcG9ydCB7IEludmFsaWRCYXNlU3RyaW5nRXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5cbi8qKlxuICogQSBzdHJpbmcgc2VyaWFsaXplciB0aGF0IHJlc2xpY2VzIGJ5dGVzIGludG8gY3VzdG9tIGNodW5rc1xuICogb2YgYml0cyB0aGF0IGFyZSB0aGVuIG1hcHBlZCB0byBhIGN1c3RvbSBhbHBoYWJldC5cbiAqXG4gKiBUaGlzIGNhbiBiZSB1c2VkIHRvIGNyZWF0ZSBzZXJpYWxpemVycyB3aG9zZSBhbHBoYWJldFxuICogaXMgYSBwb3dlciBvZiAyIHN1Y2ggYXMgYmFzZTE2IG9yIGJhc2U2NC5cbiAqXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IGNvbnN0IGJhc2VYUmVzbGljZSA9IChcbiAgYWxwaGFiZXQ6IHN0cmluZyxcbiAgYml0czogbnVtYmVyXG4pOiBTZXJpYWxpemVyPHN0cmluZz4gPT4ge1xuICBjb25zdCBiYXNlID0gYWxwaGFiZXQubGVuZ3RoO1xuICBjb25zdCByZXNsaWNlID0gKFxuICAgIGlucHV0OiBudW1iZXJbXSxcbiAgICBpbnB1dEJpdHM6IG51bWJlcixcbiAgICBvdXRwdXRCaXRzOiBudW1iZXIsXG4gICAgdXNlUmVtYWluZGVyOiBib29sZWFuXG4gICk6IG51bWJlcltdID0+IHtcbiAgICBjb25zdCBvdXRwdXQgPSBbXTtcbiAgICBsZXQgYWNjdW11bGF0b3IgPSAwO1xuICAgIGxldCBiaXRzSW5BY2N1bXVsYXRvciA9IDA7XG4gICAgY29uc3QgbWFzayA9ICgxIDw8IG91dHB1dEJpdHMpIC0gMTtcbiAgICBmb3IgKGNvbnN0IHZhbHVlIG9mIGlucHV0KSB7XG4gICAgICBhY2N1bXVsYXRvciA9IChhY2N1bXVsYXRvciA8PCBpbnB1dEJpdHMpIHwgdmFsdWU7XG4gICAgICBiaXRzSW5BY2N1bXVsYXRvciArPSBpbnB1dEJpdHM7XG4gICAgICB3aGlsZSAoYml0c0luQWNjdW11bGF0b3IgPj0gb3V0cHV0Qml0cykge1xuICAgICAgICBiaXRzSW5BY2N1bXVsYXRvciAtPSBvdXRwdXRCaXRzO1xuICAgICAgICBvdXRwdXQucHVzaCgoYWNjdW11bGF0b3IgPj4gYml0c0luQWNjdW11bGF0b3IpICYgbWFzayk7XG4gICAgICB9XG4gICAgfVxuICAgIGlmICh1c2VSZW1haW5kZXIgJiYgYml0c0luQWNjdW11bGF0b3IgPiAwKSB7XG4gICAgICBvdXRwdXQucHVzaCgoYWNjdW11bGF0b3IgPDwgKG91dHB1dEJpdHMgLSBiaXRzSW5BY2N1bXVsYXRvcikpICYgbWFzayk7XG4gICAgfVxuICAgIHJldHVybiBvdXRwdXQ7XG4gIH07XG5cbiAgcmV0dXJuIHtcbiAgICBkZXNjcmlwdGlvbjogYGJhc2Uke2Jhc2V9YCxcbiAgICBmaXhlZFNpemU6IG51bGwsXG4gICAgbWF4U2l6ZTogbnVsbCxcbiAgICBzZXJpYWxpemUodmFsdWU6IHN0cmluZyk6IFVpbnQ4QXJyYXkge1xuICAgICAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIHZhbGlkLlxuICAgICAgaWYgKCF2YWx1ZS5tYXRjaChuZXcgUmVnRXhwKGBeWyR7YWxwaGFiZXR9XSokYCkpKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkQmFzZVN0cmluZ0Vycm9yKHZhbHVlLCBiYXNlKTtcbiAgICAgIH1cbiAgICAgIGlmICh2YWx1ZSA9PT0gJycpIHJldHVybiBuZXcgVWludDhBcnJheSgpO1xuICAgICAgY29uc3QgY2hhckluZGljZXMgPSBbLi4udmFsdWVdLm1hcCgoYykgPT4gYWxwaGFiZXQuaW5kZXhPZihjKSk7XG4gICAgICBjb25zdCBieXRlcyA9IHJlc2xpY2UoY2hhckluZGljZXMsIGJpdHMsIDgsIGZhbHNlKTtcbiAgICAgIHJldHVybiBVaW50OEFycmF5LmZyb20oYnl0ZXMpO1xuICAgIH0sXG4gICAgZGVzZXJpYWxpemUoYnVmZmVyLCBvZmZzZXQgPSAwKTogW3N0cmluZywgbnVtYmVyXSB7XG4gICAgICBpZiAoYnVmZmVyLmxlbmd0aCA9PT0gMCkgcmV0dXJuIFsnJywgMF07XG4gICAgICBjb25zdCBieXRlcyA9IFsuLi5idWZmZXIuc2xpY2Uob2Zmc2V0KV07XG4gICAgICBjb25zdCBjaGFySW5kaWNlcyA9IHJlc2xpY2UoYnl0ZXMsIDgsIGJpdHMsIHRydWUpO1xuICAgICAgcmV0dXJuIFtjaGFySW5kaWNlcy5tYXAoKGkpID0+IGFscGhhYmV0W2ldKS5qb2luKCcnKSwgYnVmZmVyLmxlbmd0aF07XG4gICAgfSxcbiAgfTtcbn07XG4iLCAiaW1wb3J0IHtcbiAgbWFwU2VyaWFsaXplcixcbiAgdHlwZSBTZXJpYWxpemVyLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQgeyBiYXNlWFJlc2xpY2UgfSBmcm9tICcuL2Jhc2VYUmVzbGljZSc7XG5cbi8qKlxuICogQSBzdHJpbmcgc2VyaWFsaXplciB0aGF0IHVzZXMgYmFzZTY0IGVuY29kaW5nLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBiYXNlNjQ6IFNlcmlhbGl6ZXI8c3RyaW5nPiA9IG1hcFNlcmlhbGl6ZXIoXG4gIGJhc2VYUmVzbGljZShcbiAgICAnQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLycsXG4gICAgNlxuICApLFxuICAodmFsdWUpID0+IHZhbHVlLnJlcGxhY2UoLz0vZywgJycpLFxuICAodmFsdWUpID0+IHZhbHVlLnBhZEVuZChNYXRoLmNlaWwodmFsdWUubGVuZ3RoIC8gNCkgKiA0LCAnPScpXG4pO1xuIiwgIi8qKlxuICogUmVtb3ZlcyBudWxsIGNoYXJhY3RlcnMgZnJvbSBhIHN0cmluZy5cbiAqIEBjYXRlZ29yeSBVdGlsc1xuICovXG5leHBvcnQgY29uc3QgcmVtb3ZlTnVsbENoYXJhY3RlcnMgPSAodmFsdWU6IHN0cmluZykgPT5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnRyb2wtcmVnZXhcbiAgdmFsdWUucmVwbGFjZSgvXFx1MDAwMC9nLCAnJyk7XG5cbi8qKlxuICogUGFkcyBhIHN0cmluZyB3aXRoIG51bGwgY2hhcmFjdGVycyBhdCB0aGUgZW5kLlxuICogQGNhdGVnb3J5IFV0aWxzXG4gKi9cbmV4cG9ydCBjb25zdCBwYWROdWxsQ2hhcmFjdGVycyA9ICh2YWx1ZTogc3RyaW5nLCBjaGFyczogbnVtYmVyKSA9PlxuICB2YWx1ZS5wYWRFbmQoY2hhcnMsICdcXHUwMDAwJyk7XG4iLCAiaW1wb3J0IHR5cGUgeyBTZXJpYWxpemVyIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWNvcmUnO1xuaW1wb3J0IHsgcmVtb3ZlTnVsbENoYXJhY3RlcnMgfSBmcm9tICcuL251bGxDaGFyYWN0ZXJzJztcblxuLyoqXG4gKiBBIHN0cmluZyBzZXJpYWxpemVyIHRoYXQgdXNlcyBVVEYtOCBlbmNvZGluZ1xuICogdXNpbmcgdGhlIG5hdGl2ZSBgVGV4dEVuY29kZXJgIEFQSS5cbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgY29uc3QgdXRmODogU2VyaWFsaXplcjxzdHJpbmc+ID0ge1xuICBkZXNjcmlwdGlvbjogJ3V0ZjgnLFxuICBmaXhlZFNpemU6IG51bGwsXG4gIG1heFNpemU6IG51bGwsXG4gIHNlcmlhbGl6ZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIG5ldyBUZXh0RW5jb2RlcigpLmVuY29kZSh2YWx1ZSk7XG4gIH0sXG4gIGRlc2VyaWFsaXplKGJ1ZmZlciwgb2Zmc2V0ID0gMCkge1xuICAgIGNvbnN0IHZhbHVlID0gbmV3IFRleHREZWNvZGVyKCkuZGVjb2RlKGJ1ZmZlci5zbGljZShvZmZzZXQpKTtcbiAgICByZXR1cm4gW3JlbW92ZU51bGxDaGFyYWN0ZXJzKHZhbHVlKSwgYnVmZmVyLmxlbmd0aF07XG4gIH0sXG59O1xuIiwgIid1c2Ugc3RyaWN0JztcblxuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcblxudmFyIGJhc2UxMCA9IHJlcXVpcmUoJy4vYmFzZTEwLmNqcycpO1xudmFyIGJhc2UxNiA9IHJlcXVpcmUoJy4vYmFzZTE2LmNqcycpO1xudmFyIGJhc2U1OCA9IHJlcXVpcmUoJy4vYmFzZTU4LmNqcycpO1xudmFyIGJhc2U2NCA9IHJlcXVpcmUoJy4vYmFzZTY0LmNqcycpO1xudmFyIGJhc2VYID0gcmVxdWlyZSgnLi9iYXNlWC5janMnKTtcbnZhciBiYXNlWFJlc2xpY2UgPSByZXF1aXJlKCcuL2Jhc2VYUmVzbGljZS5janMnKTtcbnZhciBlcnJvcnMgPSByZXF1aXJlKCcuL2Vycm9ycy5janMnKTtcbnZhciBudWxsQ2hhcmFjdGVycyA9IHJlcXVpcmUoJy4vbnVsbENoYXJhY3RlcnMuY2pzJyk7XG52YXIgdXRmOCA9IHJlcXVpcmUoJy4vdXRmOC5janMnKTtcblxuXG5cbmV4cG9ydHMuYmFzZTEwID0gYmFzZTEwLmJhc2UxMDtcbmV4cG9ydHMuYmFzZTE2ID0gYmFzZTE2LmJhc2UxNjtcbmV4cG9ydHMuYmFzZTU4ID0gYmFzZTU4LmJhc2U1ODtcbmV4cG9ydHMuYmFzZTY0ID0gYmFzZTY0LmJhc2U2NDtcbmV4cG9ydHMuYmFzZVggPSBiYXNlWC5iYXNlWDtcbmV4cG9ydHMuYmFzZVhSZXNsaWNlID0gYmFzZVhSZXNsaWNlLmJhc2VYUmVzbGljZTtcbmV4cG9ydHMuSW52YWxpZEJhc2VTdHJpbmdFcnJvciA9IGVycm9ycy5JbnZhbGlkQmFzZVN0cmluZ0Vycm9yO1xuZXhwb3J0cy5wYWROdWxsQ2hhcmFjdGVycyA9IG51bGxDaGFyYWN0ZXJzLnBhZE51bGxDaGFyYWN0ZXJzO1xuZXhwb3J0cy5yZW1vdmVOdWxsQ2hhcmFjdGVycyA9IG51bGxDaGFyYWN0ZXJzLnJlbW92ZU51bGxDaGFyYWN0ZXJzO1xuZXhwb3J0cy51dGY4ID0gdXRmOC51dGY4O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXguY2pzLm1hcFxuIiwgIi8qKiBAY2F0ZWdvcnkgRXJyb3JzICovXG5leHBvcnQgY2xhc3MgSW52YWxpZFB1YmxpY0tleUVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICByZWFkb25seSBuYW1lOiBzdHJpbmcgPSAnSW52YWxpZFB1YmxpY0tleUVycm9yJztcblxuICByZWFkb25seSBpbnZhbGlkUHVibGljS2V5OiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoaW52YWxpZFB1YmxpY0tleTogc3RyaW5nLCByZWFzb24/OiBzdHJpbmcpIHtcbiAgICByZWFzb24gPSByZWFzb24gPyBgLiAke3JlYXNvbn1gIDogJyc7XG4gICAgc3VwZXIoYFRoZSBwcm92aWRlZCBwdWJsaWMga2V5IGlzIGludmFsaWQ6ICR7aW52YWxpZFB1YmxpY0tleX0ke3JlYXNvbn1gKTtcbiAgICB0aGlzLmludmFsaWRQdWJsaWNLZXkgPSBpbnZhbGlkUHVibGljS2V5O1xuICB9XG59XG4iLCAiaW1wb3J0IHsgYmFzZTU4IH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWVuY29kaW5ncyc7XG5pbXBvcnQgeyBJbnZhbGlkUHVibGljS2V5RXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5cbi8qKlxuICogVGhlIGFtb3VudCBvZiBieXRlcyBpbiBhIHB1YmxpYyBrZXkuXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICovXG5leHBvcnQgY29uc3QgUFVCTElDX0tFWV9MRU5HVEggPSAzMjtcblxuLyoqXG4gKiBEZWZpbmVzIGEgcHVibGljIGtleSBhcyBhIGJhc2U1OCBzdHJpbmcuXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICovXG5leHBvcnQgdHlwZSBQdWJsaWNLZXk8VEFkZHJlc3MgZXh0ZW5kcyBzdHJpbmcgPSBzdHJpbmc+ID0gVEFkZHJlc3MgJiB7XG4gIHJlYWRvbmx5IF9fcHVibGljS2V5OiB1bmlxdWUgc3ltYm9sO1xufTtcblxuLyoqXG4gKiBEZWZpbmVzIGEgUHJvZ3JhbS1EZXJpdmVkIEFkZHJlc3MuXG4gKlxuICogSXQgaXMgYSBwdWJsaWMga2V5IHdpdGggdGhlIGJ1bXAgbnVtYmVyIHRoYXQgd2FzIHVzZWRcbiAqIHRvIGVuc3VyZSB0aGUgYWRkcmVzcyBpcyBub3Qgb24gdGhlIGVkMjU1MTkgY3VydmUuXG4gKlxuICogQGNhdGVnb3J5IFNpZ25lcnMgYW5kIFB1YmxpY0tleXNcbiAqL1xuZXhwb3J0IHR5cGUgUGRhPFxuICBUQWRkcmVzcyBleHRlbmRzIHN0cmluZyA9IHN0cmluZyxcbiAgVEJ1bXAgZXh0ZW5kcyBudW1iZXIgPSBudW1iZXJcbj4gPSBbUHVibGljS2V5PFRBZGRyZXNzPiwgVEJ1bXBdICYgeyByZWFkb25seSBfX3BkYTogdW5pcXVlIHN5bWJvbCB9O1xuXG4vKipcbiAqIEEgVWludDhBcnJheSB0aGF0IHJlcHJlc2VudHMgYSBwdWJsaWMga2V5LlxuICogQGNhdGVnb3J5IFNpZ25lcnMgYW5kIFB1YmxpY0tleXNcbiAqL1xuZXhwb3J0IHR5cGUgUHVibGljS2V5Qnl0ZXMgPSBVaW50OEFycmF5ICYge1xuICByZWFkb25seSBfX3B1YmxpY0tleUJ5dGVzOiB1bmlxdWUgc3ltYm9sO1xufTtcblxuLyoqXG4gKiBEZWZpbmVzIGFuIG9iamVjdCB0aGF0IGhhcyBhIHB1YmxpYyBrZXkuXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICovXG5leHBvcnQgdHlwZSBIYXNQdWJsaWNLZXk8VEFkZHJlc3MgZXh0ZW5kcyBzdHJpbmcgPSBzdHJpbmc+ID0ge1xuICByZWFkb25seSBwdWJsaWNLZXk6IFB1YmxpY0tleTxUQWRkcmVzcz47XG59O1xuXG4vKipcbiAqIERlZmluZXMgYW4gb2JqZWN0IHRoYXQgY2FuIGJlIGNvbnZlcnRlZCB0byBhIGJhc2U1OCBwdWJsaWMga2V5LlxuICogQGNhdGVnb3J5IFNpZ25lcnMgYW5kIFB1YmxpY0tleXNcbiAqL1xuZXhwb3J0IHR5cGUgTGVnYWN5V2ViM0pzUHVibGljS2V5PFRBZGRyZXNzIGV4dGVuZHMgc3RyaW5nID0gc3RyaW5nPiA9IHtcbiAgdG9CYXNlNTg6ICgpID0+IFRBZGRyZXNzO1xufTtcblxuLyoqXG4gKiBEZWZpbmVzIGFsbCB0aGUgcG9zc2libGUgaW5wdXRzIGZvciBjcmVhdGluZyBhIHB1YmxpYyBrZXkuXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICovXG5leHBvcnQgdHlwZSBQdWJsaWNLZXlJbnB1dDxUQWRkcmVzcyBleHRlbmRzIHN0cmluZyA9IHN0cmluZz4gPVxuICB8IFRBZGRyZXNzXG4gIHwgVWludDhBcnJheVxuICB8IFtUQWRkcmVzcywgbnVtYmVyXVxuICB8IHsgcHVibGljS2V5OiBUQWRkcmVzcyB9XG4gIHwgTGVnYWN5V2ViM0pzUHVibGljS2V5PFRBZGRyZXNzPjtcblxuLyoqXG4gKiBEZWZpbmVzIGFsbCB0aGUgcG9zc2libGUgc2FmZSBpbnB1dHMgZm9yIGNyZWF0aW5nIGEgcHVibGljIGtleS5cbiAqIFRoYXQgaXMsIHRoZXkgaGF2ZSBhbHJlYWR5IGJlZW4gdmFsaWRhdGVkIHRvIGJlIG9yXG4gKiB0byBjb250YWluIGEgdmFsaWQgcHVibGljIGtleS5cbiAqIEBjYXRlZ29yeSBTaWduZXJzIGFuZCBQdWJsaWNLZXlzXG4gKi9cbmV4cG9ydCB0eXBlIFNhZmVQdWJsaWNLZXlJbnB1dDxUQWRkcmVzcyBleHRlbmRzIHN0cmluZyA9IHN0cmluZz4gPVxuICB8IFB1YmxpY0tleTxUQWRkcmVzcz5cbiAgfCBQdWJsaWNLZXlCeXRlc1xuICB8IFBkYTxUQWRkcmVzcz5cbiAgfCBIYXNQdWJsaWNLZXk8VEFkZHJlc3M+XG4gIHwgTGVnYWN5V2ViM0pzUHVibGljS2V5PFRBZGRyZXNzPjtcblxuLyoqXG4gKiBDcmVhdGVzIGEgbmV3IHB1YmxpYyBrZXkgZnJvbSB0aGUgZ2l2ZW4gaW5wdXQuXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICovXG5leHBvcnQgZnVuY3Rpb24gcHVibGljS2V5PFRBZGRyZXNzIGV4dGVuZHMgc3RyaW5nPihcbiAgaW5wdXQ6IFB1YmxpY0tleUlucHV0PFRBZGRyZXNzPixcbiAgYXNzZXJ0VmFsaWRQdWJsaWNLZXk/OiB0cnVlXG4pOiBQdWJsaWNLZXk8VEFkZHJlc3M+O1xuZXhwb3J0IGZ1bmN0aW9uIHB1YmxpY0tleTxUQWRkcmVzcyBleHRlbmRzIHN0cmluZz4oXG4gIGlucHV0OiBTYWZlUHVibGljS2V5SW5wdXQ8VEFkZHJlc3M+LFxuICBhc3NlcnRWYWxpZFB1YmxpY0tleTogZmFsc2Vcbik6IFB1YmxpY0tleTxUQWRkcmVzcz47XG5leHBvcnQgZnVuY3Rpb24gcHVibGljS2V5PFRBZGRyZXNzIGV4dGVuZHMgc3RyaW5nPihcbiAgaW5wdXQ6IFB1YmxpY0tleUlucHV0PFRBZGRyZXNzPiB8IFNhZmVQdWJsaWNLZXlJbnB1dDxUQWRkcmVzcz4sXG4gIGFzc2VydFZhbGlkUHVibGljS2V5OiBib29sZWFuID0gdHJ1ZVxuKTogUHVibGljS2V5PFRBZGRyZXNzPiB7XG4gIGNvbnN0IGtleSA9ICgoKTogc3RyaW5nID0+IHtcbiAgICBpZiAodHlwZW9mIGlucHV0ID09PSAnc3RyaW5nJykge1xuICAgICAgcmV0dXJuIGlucHV0O1xuICAgIH1cbiAgICAvLyBIYXNQdWJsaWNLZXkuXG4gICAgaWYgKHR5cGVvZiBpbnB1dCA9PT0gJ29iamVjdCcgJiYgJ3B1YmxpY0tleScgaW4gaW5wdXQpIHtcbiAgICAgIHJldHVybiBpbnB1dC5wdWJsaWNLZXk7XG4gICAgfVxuICAgIC8vIExlZ2FjeVdlYjNKc1B1YmxpY0tleS5cbiAgICBpZiAodHlwZW9mIGlucHV0ID09PSAnb2JqZWN0JyAmJiAndG9CYXNlNTgnIGluIGlucHV0KSB7XG4gICAgICByZXR1cm4gaW5wdXQudG9CYXNlNTgoKTtcbiAgICB9XG4gICAgLy8gUGRhLlxuICAgIGlmIChBcnJheS5pc0FycmF5KGlucHV0KSkge1xuICAgICAgcmV0dXJuIGlucHV0WzBdO1xuICAgIH1cbiAgICAvLyBQdWJsaWNLZXlCeXRlcy5cbiAgICByZXR1cm4gYmFzZTU4LmRlc2VyaWFsaXplKGlucHV0KVswXTtcbiAgfSkoKTtcblxuICBpZiAoYXNzZXJ0VmFsaWRQdWJsaWNLZXkpIHtcbiAgICBhc3NlcnRQdWJsaWNLZXkoa2V5KTtcbiAgfVxuXG4gIHJldHVybiBrZXkgYXMgUHVibGljS2V5PFRBZGRyZXNzPjtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIHRoZSBkZWZhdWx0IHB1YmxpYyBrZXkgd2hpY2ggaXMgY29tcG9zZWQgb2YgYWxsIHplcm8gYnl0ZXMuXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICovXG5leHBvcnQgY29uc3QgZGVmYXVsdFB1YmxpY0tleSA9ICgpID0+XG4gICcxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMScgYXMgUHVibGljS2V5PCcxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMSc+O1xuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGdpdmVuIHZhbHVlIGlzIGEgdmFsaWQgcHVibGljIGtleS5cbiAqIEBjYXRlZ29yeSBTaWduZXJzIGFuZCBQdWJsaWNLZXlzXG4gKi9cbmV4cG9ydCBjb25zdCBpc1B1YmxpY0tleSA9IDxUQWRkcmVzcyBleHRlbmRzIHN0cmluZz4oXG4gIHZhbHVlOiBUQWRkcmVzc1xuKTogdmFsdWUgaXMgUHVibGljS2V5PFRBZGRyZXNzPiA9PiB7XG4gIHRyeSB7XG4gICAgYXNzZXJ0UHVibGljS2V5KHZhbHVlKTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn07XG5cbi8qKlxuICogV2hldGhlciB0aGUgZ2l2ZW4gdmFsdWUgaXMgYSB2YWxpZCBwcm9ncmFtLWRlcml2ZWQgYWRkcmVzcy5cbiAqIEBjYXRlZ29yeSBTaWduZXJzIGFuZCBQdWJsaWNLZXlzXG4gKi9cbmV4cG9ydCBjb25zdCBpc1BkYSA9IDxUQWRkcmVzcyBleHRlbmRzIHN0cmluZywgVEJ1bXAgZXh0ZW5kcyBudW1iZXI+KFxuICB2YWx1ZTogW1RBZGRyZXNzLCBUQnVtcF1cbik6IHZhbHVlIGlzIFBkYTxUQWRkcmVzcywgVEJ1bXA+ID0+XG4gIEFycmF5LmlzQXJyYXkodmFsdWUpICYmXG4gIHZhbHVlLmxlbmd0aCA9PT0gMiAmJlxuICB0eXBlb2YgdmFsdWVbMV0gPT09ICdudW1iZXInICYmXG4gIGlzUHVibGljS2V5KHZhbHVlWzBdKTtcblxuLyoqXG4gKiBFbnN1cmVzIHRoZSBnaXZlbiB2YWx1ZSBpcyBhIHZhbGlkIHB1YmxpYyBrZXkuXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICovXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0UHVibGljS2V5PFRBZGRyZXNzIGV4dGVuZHMgc3RyaW5nPihcbiAgdmFsdWU6IFRBZGRyZXNzXG4pOiBhc3NlcnRzIHZhbHVlIGlzIFB1YmxpY0tleTxUQWRkcmVzcz4ge1xuICAvLyBDaGVjayB2YWx1ZSB0eXBlLlxuICBpZiAodHlwZW9mIHZhbHVlICE9PSAnc3RyaW5nJykge1xuICAgIHRocm93IG5ldyBJbnZhbGlkUHVibGljS2V5RXJyb3IodmFsdWUsICdQdWJsaWMga2V5cyBtdXN0IGJlIHN0cmluZ3MuJyk7XG4gIH1cblxuICAvLyBDaGVjayBiYXNlNTggZW5jb2RpbmcgYW5kIGJ5dGUgbGVuZ3RoLlxuICBwdWJsaWNLZXlCeXRlcyh2YWx1ZSk7XG59XG5cbi8qKlxuICogRGVkdXBsaWNhdGVzIHRoZSBnaXZlbiBhcnJheSBvZiBwdWJsaWMga2V5cy5cbiAqIEBjYXRlZ29yeSBTaWduZXJzIGFuZCBQdWJsaWNLZXlzXG4gKi9cbmV4cG9ydCBjb25zdCB1bmlxdWVQdWJsaWNLZXlzID0gKHB1YmxpY0tleXM6IFB1YmxpY0tleVtdKTogUHVibGljS2V5W10gPT4gW1xuICAuLi5uZXcgU2V0KHB1YmxpY0tleXMpLFxuXTtcblxuLyoqXG4gKiBDb252ZXJ0cyB0aGUgZ2l2ZW4gcHVibGljIGtleSB0byBhIFVpbnQ4QXJyYXkuXG4gKiBUaHJvd3MgYW4gZXJyb3IgaWYgdGhlIHB1YmxpYyBrZXkgaXMgYW4gaW52YWxpZCBiYXNlNTggc3RyaW5nLlxuICogQGNhdGVnb3J5IFNpZ25lcnMgYW5kIFB1YmxpY0tleXNcbiAqL1xuZXhwb3J0IGNvbnN0IHB1YmxpY0tleUJ5dGVzID0gKHZhbHVlOiBzdHJpbmcpOiBQdWJsaWNLZXlCeXRlcyA9PiB7XG4gIC8vIENoZWNrIHN0cmluZyBsZW5ndGggdG8gYXZvaWQgdW5uZWNlc3NhcnkgYmFzZTU4IGVuY29kaW5nLlxuICBpZiAodmFsdWUubGVuZ3RoIDwgMzIgfHwgdmFsdWUubGVuZ3RoID4gNDQpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZFB1YmxpY0tleUVycm9yKFxuICAgICAgdmFsdWUsXG4gICAgICAnUHVibGljIGtleXMgbXVzdCBiZSBiZXR3ZWVuIDMyIGFuZCA0NCBjaGFyYWN0ZXJzLidcbiAgICApO1xuICB9XG5cbiAgLy8gQ2hlY2sgYmFzZTU4IGVuY29kaW5nLlxuICBsZXQgYnl0ZXM6IFVpbnQ4QXJyYXk7XG4gIHRyeSB7XG4gICAgYnl0ZXMgPSBiYXNlNTguc2VyaWFsaXplKHZhbHVlKTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZFB1YmxpY0tleUVycm9yKFxuICAgICAgdmFsdWUsXG4gICAgICAnUHVibGljIGtleXMgbXVzdCBiZSBiYXNlNTggZW5jb2RlZC4nXG4gICAgKTtcbiAgfVxuXG4gIC8vIENoZWNrIGJ5dGUgbGVuZ3RoLlxuICBpZiAoYnl0ZXMubGVuZ3RoICE9PSBQVUJMSUNfS0VZX0xFTkdUSCkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkUHVibGljS2V5RXJyb3IoXG4gICAgICB2YWx1ZSxcbiAgICAgIGBQdWJsaWMga2V5cyBtdXN0IGJlICR7UFVCTElDX0tFWV9MRU5HVEh9IGJ5dGVzLmBcbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIGJ5dGVzIGFzIFB1YmxpY0tleUJ5dGVzO1xufTtcblxuLyoqXG4gKiBDb252ZXJ0cyB0aGUgZ2l2ZW4gcHVibGljIGtleSB0byBhIGJhc2U1OCBzdHJpbmcuXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICogQGRlcHJlY2F0ZWQgUHVibGljIGtleXMgYXJlIG5vdyByZXByZXNlbnRlZCBkaXJlY3RseSBhcyBiYXNlNTggc3RyaW5ncy5cbiAqL1xuZXhwb3J0IGNvbnN0IGJhc2U1OFB1YmxpY0tleSA9IChrZXk6IFB1YmxpY0tleUlucHV0KTogc3RyaW5nID0+IHB1YmxpY0tleShrZXkpO1xuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGdpdmVuIHB1YmxpYyBrZXlzIGFyZSB0aGUgc2FtZS5cbiAqIEBjYXRlZ29yeSBTaWduZXJzIGFuZCBQdWJsaWNLZXlzXG4gKiBAZGVwcmVjYXRlZCBVc2UgYGxlZnQgPT09IHJpZ2h0YCBpbnN0ZWFkIG5vdyB0aGF0IHB1YmxpYyBrZXlzIGFyZSBiYXNlNTggc3RyaW5ncy5cbiAqL1xuZXhwb3J0IGNvbnN0IHNhbWVQdWJsaWNLZXkgPSAoXG4gIGxlZnQ6IFB1YmxpY0tleUlucHV0LFxuICByaWdodDogUHVibGljS2V5SW5wdXRcbik6IGJvb2xlYW4gPT4gcHVibGljS2V5KGxlZnQpID09PSBwdWJsaWNLZXkocmlnaHQpO1xuIiwgIid1c2Ugc3RyaWN0JztcblxuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcblxudmFyIGNvbW1vbiA9IHJlcXVpcmUoJy4vY29tbW9uLmNqcycpO1xudmFyIGVycm9ycyA9IHJlcXVpcmUoJy4vZXJyb3JzLmNqcycpO1xuXG5cblxuZXhwb3J0cy5QVUJMSUNfS0VZX0xFTkdUSCA9IGNvbW1vbi5QVUJMSUNfS0VZX0xFTkdUSDtcbmV4cG9ydHMuYXNzZXJ0UHVibGljS2V5ID0gY29tbW9uLmFzc2VydFB1YmxpY0tleTtcbmV4cG9ydHMuYmFzZTU4UHVibGljS2V5ID0gY29tbW9uLmJhc2U1OFB1YmxpY0tleTtcbmV4cG9ydHMuZGVmYXVsdFB1YmxpY0tleSA9IGNvbW1vbi5kZWZhdWx0UHVibGljS2V5O1xuZXhwb3J0cy5pc1BkYSA9IGNvbW1vbi5pc1BkYTtcbmV4cG9ydHMuaXNQdWJsaWNLZXkgPSBjb21tb24uaXNQdWJsaWNLZXk7XG5leHBvcnRzLnB1YmxpY0tleSA9IGNvbW1vbi5wdWJsaWNLZXk7XG5leHBvcnRzLnB1YmxpY0tleUJ5dGVzID0gY29tbW9uLnB1YmxpY0tleUJ5dGVzO1xuZXhwb3J0cy5zYW1lUHVibGljS2V5ID0gY29tbW9uLnNhbWVQdWJsaWNLZXk7XG5leHBvcnRzLnVuaXF1ZVB1YmxpY0tleXMgPSBjb21tb24udW5pcXVlUHVibGljS2V5cztcbmV4cG9ydHMuSW52YWxpZFB1YmxpY0tleUVycm9yID0gZXJyb3JzLkludmFsaWRQdWJsaWNLZXlFcnJvcjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmNqcy5tYXBcbiIsICJpbXBvcnQge1xuICBCYXNlU2VyaWFsaXplck9wdGlvbnMsXG4gIFNlcmlhbGl6ZXIsXG59IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcblxuLyoqXG4gKiBEZWZpbmVzIGEgc2VyaWFsaXplciBmb3IgbnVtYmVycyBhbmQgYmlnaW50cy5cbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgdHlwZSBOdW1iZXJTZXJpYWxpemVyID1cbiAgfCBTZXJpYWxpemVyPG51bWJlcj5cbiAgfCBTZXJpYWxpemVyPG51bWJlciB8IGJpZ2ludCwgYmlnaW50PjtcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBvcHRpb25zIGZvciB1OCBhbmQgaTggc2VyaWFsaXplcnMuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IHR5cGUgU2luZ2xlQnl0ZU51bWJlclNlcmlhbGl6ZXJPcHRpb25zID0gQmFzZVNlcmlhbGl6ZXJPcHRpb25zO1xuXG4vKipcbiAqIERlZmluZXMgdGhlIG9wdGlvbnMgZm9yIG51bWJlciBzZXJpYWxpemVycyB0aGF0IHVzZSBtb3JlIHRoYW4gb25lIGJ5dGUuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IHR5cGUgTnVtYmVyU2VyaWFsaXplck9wdGlvbnMgPSBCYXNlU2VyaWFsaXplck9wdGlvbnMgJiB7XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBzZXJpYWxpemVyIHNob3VsZCB1c2UgbGl0dGxlLWVuZGlhbiBvciBiaWctZW5kaWFuIGVuY29kaW5nLlxuICAgKiBAZGVmYXVsdFZhbHVlIGBFbmRpYW4uTGl0dGxlYFxuICAgKi9cbiAgZW5kaWFuPzogRW5kaWFuO1xufTtcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBlbmRpYW5uZXNzIG9mIGEgbnVtYmVyIHNlcmlhbGl6ZXIuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IGVudW0gRW5kaWFuIHtcbiAgTGl0dGxlID0gJ2xlJyxcbiAgQmlnID0gJ2JlJyxcbn1cbiIsICIvKiogQGNhdGVnb3J5IEVycm9ycyAqL1xuZXhwb3J0IGNsYXNzIE51bWJlck91dE9mUmFuZ2VFcnJvciBleHRlbmRzIFJhbmdlRXJyb3Ige1xuICByZWFkb25seSBuYW1lOiBzdHJpbmcgPSAnTnVtYmVyT3V0T2ZSYW5nZUVycm9yJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBzZXJpYWxpemVyOiBzdHJpbmcsXG4gICAgbWluOiBudW1iZXIgfCBiaWdpbnQsXG4gICAgbWF4OiBudW1iZXIgfCBiaWdpbnQsXG4gICAgYWN0dWFsOiBudW1iZXIgfCBiaWdpbnRcbiAgKSB7XG4gICAgc3VwZXIoXG4gICAgICBgU2VyaWFsaXplciBbJHtzZXJpYWxpemVyfV0gZXhwZWN0ZWQgbnVtYmVyIHRvIGJlIGJldHdlZW4gJHttaW59IGFuZCAke21heH0sIGdvdCAke2FjdHVhbH0uYFxuICAgICk7XG4gIH1cbn1cbiIsICJpbXBvcnQge1xuICBEZXNlcmlhbGl6aW5nRW1wdHlCdWZmZXJFcnJvcixcbiAgTm90RW5vdWdoQnl0ZXNFcnJvcixcbiAgU2VyaWFsaXplcixcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWNvcmUnO1xuaW1wb3J0IHtcbiAgRW5kaWFuLFxuICBOdW1iZXJTZXJpYWxpemVyLFxuICBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyxcbiAgU2luZ2xlQnl0ZU51bWJlclNlcmlhbGl6ZXJPcHRpb25zLFxufSBmcm9tICcuL2NvbW1vbic7XG5pbXBvcnQgeyBOdW1iZXJPdXRPZlJhbmdlRXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBudW1iZXJGYWN0b3J5KGlucHV0OiB7XG4gIG5hbWU6IHN0cmluZztcbiAgc2l6ZTogbnVtYmVyO1xuICByYW5nZT86IFtudW1iZXIgfCBiaWdpbnQsIG51bWJlciB8IGJpZ2ludF07XG4gIHNldDogKHZpZXc6IERhdGFWaWV3LCB2YWx1ZTogbnVtYmVyIHwgYmlnaW50LCBsaXR0bGVFbmRpYW4/OiBib29sZWFuKSA9PiB2b2lkO1xuICBnZXQ6ICh2aWV3OiBEYXRhVmlldywgbGl0dGxlRW5kaWFuPzogYm9vbGVhbikgPT4gbnVtYmVyO1xuICBvcHRpb25zOiBTaW5nbGVCeXRlTnVtYmVyU2VyaWFsaXplck9wdGlvbnMgfCBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucztcbn0pOiBTZXJpYWxpemVyPG51bWJlcj47XG5leHBvcnQgZnVuY3Rpb24gbnVtYmVyRmFjdG9yeShpbnB1dDoge1xuICBuYW1lOiBzdHJpbmc7XG4gIHNpemU6IG51bWJlcjtcbiAgcmFuZ2U/OiBbbnVtYmVyIHwgYmlnaW50LCBudW1iZXIgfCBiaWdpbnRdO1xuICBzZXQ6ICh2aWV3OiBEYXRhVmlldywgdmFsdWU6IG51bWJlciB8IGJpZ2ludCwgbGl0dGxlRW5kaWFuPzogYm9vbGVhbikgPT4gdm9pZDtcbiAgZ2V0OiAodmlldzogRGF0YVZpZXcsIGxpdHRsZUVuZGlhbj86IGJvb2xlYW4pID0+IGJpZ2ludDtcbiAgb3B0aW9uczogU2luZ2xlQnl0ZU51bWJlclNlcmlhbGl6ZXJPcHRpb25zIHwgTnVtYmVyU2VyaWFsaXplck9wdGlvbnM7XG59KTogU2VyaWFsaXplcjxudW1iZXIgfCBiaWdpbnQsIGJpZ2ludD47XG5leHBvcnQgZnVuY3Rpb24gbnVtYmVyRmFjdG9yeShpbnB1dDoge1xuICBuYW1lOiBzdHJpbmc7XG4gIHNpemU6IG51bWJlcjtcbiAgcmFuZ2U/OiBbbnVtYmVyIHwgYmlnaW50LCBudW1iZXIgfCBiaWdpbnRdO1xuICBzZXQ6ICh2aWV3OiBEYXRhVmlldywgdmFsdWU6IG51bWJlciB8IGJpZ2ludCwgbGl0dGxlRW5kaWFuPzogYm9vbGVhbikgPT4gdm9pZDtcbiAgZ2V0OiAodmlldzogRGF0YVZpZXcsIGxpdHRsZUVuZGlhbj86IGJvb2xlYW4pID0+IG51bWJlciB8IGJpZ2ludDtcbiAgb3B0aW9uczogU2luZ2xlQnl0ZU51bWJlclNlcmlhbGl6ZXJPcHRpb25zIHwgTnVtYmVyU2VyaWFsaXplck9wdGlvbnM7XG59KTogTnVtYmVyU2VyaWFsaXplciB7XG4gIGxldCBsaXR0bGVFbmRpYW46IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG4gIGxldCBkZWZhdWx0RGVzY3JpcHRpb246IHN0cmluZyA9IGlucHV0Lm5hbWU7XG5cbiAgaWYgKGlucHV0LnNpemUgPiAxKSB7XG4gICAgbGl0dGxlRW5kaWFuID1cbiAgICAgICEoJ2VuZGlhbicgaW4gaW5wdXQub3B0aW9ucykgfHwgaW5wdXQub3B0aW9ucy5lbmRpYW4gPT09IEVuZGlhbi5MaXR0bGU7XG4gICAgZGVmYXVsdERlc2NyaXB0aW9uICs9IGxpdHRsZUVuZGlhbiA/ICcobGUpJyA6ICcoYmUpJztcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgZGVzY3JpcHRpb246IGlucHV0Lm9wdGlvbnMuZGVzY3JpcHRpb24gPz8gZGVmYXVsdERlc2NyaXB0aW9uLFxuICAgIGZpeGVkU2l6ZTogaW5wdXQuc2l6ZSxcbiAgICBtYXhTaXplOiBpbnB1dC5zaXplLFxuICAgIHNlcmlhbGl6ZSh2YWx1ZTogbnVtYmVyIHwgYmlnaW50KTogVWludDhBcnJheSB7XG4gICAgICBpZiAoaW5wdXQucmFuZ2UpIHtcbiAgICAgICAgYXNzZXJ0UmFuZ2UoaW5wdXQubmFtZSwgaW5wdXQucmFuZ2VbMF0sIGlucHV0LnJhbmdlWzFdLCB2YWx1ZSk7XG4gICAgICB9XG4gICAgICBjb25zdCBidWZmZXIgPSBuZXcgQXJyYXlCdWZmZXIoaW5wdXQuc2l6ZSk7XG4gICAgICBpbnB1dC5zZXQobmV3IERhdGFWaWV3KGJ1ZmZlciksIHZhbHVlLCBsaXR0bGVFbmRpYW4pO1xuICAgICAgcmV0dXJuIG5ldyBVaW50OEFycmF5KGJ1ZmZlcik7XG4gICAgfSxcbiAgICBkZXNlcmlhbGl6ZShieXRlcywgb2Zmc2V0ID0gMCk6IFtudW1iZXIgfCBiaWdpbnQsIG51bWJlcl0ge1xuICAgICAgY29uc3Qgc2xpY2UgPSBieXRlcy5zbGljZShvZmZzZXQsIG9mZnNldCArIGlucHV0LnNpemUpO1xuICAgICAgYXNzZXJ0RW5vdWdoQnl0ZXMoJ2k4Jywgc2xpY2UsIGlucHV0LnNpemUpO1xuICAgICAgY29uc3QgdmlldyA9IHRvRGF0YVZpZXcoc2xpY2UpO1xuICAgICAgcmV0dXJuIFtpbnB1dC5nZXQodmlldywgbGl0dGxlRW5kaWFuKSwgb2Zmc2V0ICsgaW5wdXQuc2l6ZV07XG4gICAgfSxcbiAgfSBhcyBOdW1iZXJTZXJpYWxpemVyO1xufVxuXG4vKipcbiAqIEhlbHBlciBmdW5jdGlvbiB0byBlbnN1cmUgdGhhdCB0aGUgYXJyYXkgYnVmZmVyIGlzIGNvbnZlcnRlZCBwcm9wZXJseSBmcm9tIGEgdWludDhhcnJheVxuICogU291cmNlOiBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8zNzIyODI4NS91aW50OGFycmF5LXRvLWFycmF5YnVmZmVyXG4gKiBAcGFyYW0ge1VpbnQ4QXJyYXl9IGFycmF5IFVpbnQ4YXJyYXkgdGhhdCdzIGJlaW5nIGNvbnZlcnRlZCBpbnRvIGFuIGFycmF5IGJ1ZmZlclxuICogQHJldHVybnMge0FycmF5QnVmZmVyfSBBbiBhcnJheSBidWZmZXIgdGhhdCdzIG5lY2Vzc2FyeSB0byBjb25zdHJ1Y3QgYSBkYXRhIHZpZXdcbiAqL1xuZXhwb3J0IGNvbnN0IHRvQXJyYXlCdWZmZXIgPSAoYXJyYXk6IFVpbnQ4QXJyYXkpOiBBcnJheUJ1ZmZlciA9PlxuICBhcnJheS5idWZmZXIuc2xpY2UoYXJyYXkuYnl0ZU9mZnNldCwgYXJyYXkuYnl0ZUxlbmd0aCArIGFycmF5LmJ5dGVPZmZzZXQpO1xuXG5leHBvcnQgY29uc3QgdG9EYXRhVmlldyA9IChhcnJheTogVWludDhBcnJheSk6IERhdGFWaWV3ID0+XG4gIG5ldyBEYXRhVmlldyh0b0FycmF5QnVmZmVyKGFycmF5KSk7XG5cbmV4cG9ydCBjb25zdCBhc3NlcnRSYW5nZSA9IChcbiAgc2VyaWFsaXplcjogc3RyaW5nLFxuICBtaW46IG51bWJlciB8IGJpZ2ludCxcbiAgbWF4OiBudW1iZXIgfCBiaWdpbnQsXG4gIHZhbHVlOiBudW1iZXIgfCBiaWdpbnRcbikgPT4ge1xuICBpZiAodmFsdWUgPCBtaW4gfHwgdmFsdWUgPiBtYXgpIHtcbiAgICB0aHJvdyBuZXcgTnVtYmVyT3V0T2ZSYW5nZUVycm9yKHNlcmlhbGl6ZXIsIG1pbiwgbWF4LCB2YWx1ZSk7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBhc3NlcnRFbm91Z2hCeXRlcyA9IChcbiAgc2VyaWFsaXplcjogc3RyaW5nLFxuICBieXRlczogVWludDhBcnJheSxcbiAgZXhwZWN0ZWQ6IG51bWJlclxuKSA9PiB7XG4gIGlmIChieXRlcy5sZW5ndGggPT09IDApIHtcbiAgICB0aHJvdyBuZXcgRGVzZXJpYWxpemluZ0VtcHR5QnVmZmVyRXJyb3Ioc2VyaWFsaXplcik7XG4gIH1cbiAgaWYgKGJ5dGVzLmxlbmd0aCA8IGV4cGVjdGVkKSB7XG4gICAgdGhyb3cgbmV3IE5vdEVub3VnaEJ5dGVzRXJyb3Ioc2VyaWFsaXplciwgZXhwZWN0ZWQsIGJ5dGVzLmxlbmd0aCk7XG4gIH1cbn07XG4iLCAiaW1wb3J0IHsgU2VyaWFsaXplciB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcbmltcG9ydCB7IE51bWJlclNlcmlhbGl6ZXJPcHRpb25zIH0gZnJvbSAnLi9jb21tb24nO1xuaW1wb3J0IHsgbnVtYmVyRmFjdG9yeSB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY29uc3QgZjMyID0gKFxuICBvcHRpb25zOiBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyA9IHt9XG4pOiBTZXJpYWxpemVyPG51bWJlcj4gPT5cbiAgbnVtYmVyRmFjdG9yeSh7XG4gICAgbmFtZTogJ2YzMicsXG4gICAgc2l6ZTogNCxcbiAgICBzZXQ6ICh2aWV3LCB2YWx1ZSwgbGUpID0+IHZpZXcuc2V0RmxvYXQzMigwLCBOdW1iZXIodmFsdWUpLCBsZSksXG4gICAgZ2V0OiAodmlldywgbGUpID0+IHZpZXcuZ2V0RmxvYXQzMigwLCBsZSksXG4gICAgb3B0aW9ucyxcbiAgfSk7XG4iLCAiaW1wb3J0IHsgU2VyaWFsaXplciB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcbmltcG9ydCB7IE51bWJlclNlcmlhbGl6ZXJPcHRpb25zIH0gZnJvbSAnLi9jb21tb24nO1xuaW1wb3J0IHsgbnVtYmVyRmFjdG9yeSB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY29uc3QgZjY0ID0gKFxuICBvcHRpb25zOiBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyA9IHt9XG4pOiBTZXJpYWxpemVyPG51bWJlcj4gPT5cbiAgbnVtYmVyRmFjdG9yeSh7XG4gICAgbmFtZTogJ2Y2NCcsXG4gICAgc2l6ZTogOCxcbiAgICBzZXQ6ICh2aWV3LCB2YWx1ZSwgbGUpID0+IHZpZXcuc2V0RmxvYXQ2NCgwLCBOdW1iZXIodmFsdWUpLCBsZSksXG4gICAgZ2V0OiAodmlldywgbGUpID0+IHZpZXcuZ2V0RmxvYXQ2NCgwLCBsZSksXG4gICAgb3B0aW9ucyxcbiAgfSk7XG4iLCAiaW1wb3J0IHsgU2VyaWFsaXplciB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcbmltcG9ydCB7IFNpbmdsZUJ5dGVOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyB9IGZyb20gJy4vY29tbW9uJztcbmltcG9ydCB7IG51bWJlckZhY3RvcnkgfSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IGk4ID0gKFxuICBvcHRpb25zOiBTaW5nbGVCeXRlTnVtYmVyU2VyaWFsaXplck9wdGlvbnMgPSB7fVxuKTogU2VyaWFsaXplcjxudW1iZXI+ID0+XG4gIG51bWJlckZhY3Rvcnkoe1xuICAgIG5hbWU6ICdpOCcsXG4gICAgc2l6ZTogMSxcbiAgICByYW5nZTogWy1OdW1iZXIoJzB4N2YnKSAtIDEsIE51bWJlcignMHg3ZicpXSxcbiAgICBzZXQ6ICh2aWV3LCB2YWx1ZSkgPT4gdmlldy5zZXRJbnQ4KDAsIE51bWJlcih2YWx1ZSkpLFxuICAgIGdldDogKHZpZXcpID0+IHZpZXcuZ2V0SW50OCgwKSxcbiAgICBvcHRpb25zLFxuICB9KTtcbiIsICJpbXBvcnQgeyBTZXJpYWxpemVyIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWNvcmUnO1xuaW1wb3J0IHsgTnVtYmVyU2VyaWFsaXplck9wdGlvbnMgfSBmcm9tICcuL2NvbW1vbic7XG5pbXBvcnQgeyBudW1iZXJGYWN0b3J5IH0gZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjb25zdCBpMTYgPSAoXG4gIG9wdGlvbnM6IE51bWJlclNlcmlhbGl6ZXJPcHRpb25zID0ge31cbik6IFNlcmlhbGl6ZXI8bnVtYmVyPiA9PlxuICBudW1iZXJGYWN0b3J5KHtcbiAgICBuYW1lOiAnaTE2JyxcbiAgICBzaXplOiAyLFxuICAgIHJhbmdlOiBbLU51bWJlcignMHg3ZmZmJykgLSAxLCBOdW1iZXIoJzB4N2ZmZicpXSxcbiAgICBzZXQ6ICh2aWV3LCB2YWx1ZSwgbGUpID0+IHZpZXcuc2V0SW50MTYoMCwgTnVtYmVyKHZhbHVlKSwgbGUpLFxuICAgIGdldDogKHZpZXcsIGxlKSA9PiB2aWV3LmdldEludDE2KDAsIGxlKSxcbiAgICBvcHRpb25zLFxuICB9KTtcbiIsICJpbXBvcnQgeyBTZXJpYWxpemVyIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWNvcmUnO1xuaW1wb3J0IHsgTnVtYmVyU2VyaWFsaXplck9wdGlvbnMgfSBmcm9tICcuL2NvbW1vbic7XG5pbXBvcnQgeyBudW1iZXJGYWN0b3J5IH0gZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjb25zdCBpMzIgPSAoXG4gIG9wdGlvbnM6IE51bWJlclNlcmlhbGl6ZXJPcHRpb25zID0ge31cbik6IFNlcmlhbGl6ZXI8bnVtYmVyPiA9PlxuICBudW1iZXJGYWN0b3J5KHtcbiAgICBuYW1lOiAnaTMyJyxcbiAgICBzaXplOiA0LFxuICAgIHJhbmdlOiBbLU51bWJlcignMHg3ZmZmZmZmZicpIC0gMSwgTnVtYmVyKCcweDdmZmZmZmZmJyldLFxuICAgIHNldDogKHZpZXcsIHZhbHVlLCBsZSkgPT4gdmlldy5zZXRJbnQzMigwLCBOdW1iZXIodmFsdWUpLCBsZSksXG4gICAgZ2V0OiAodmlldywgbGUpID0+IHZpZXcuZ2V0SW50MzIoMCwgbGUpLFxuICAgIG9wdGlvbnMsXG4gIH0pO1xuIiwgImltcG9ydCB7IFNlcmlhbGl6ZXIgfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQgeyBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyB9IGZyb20gJy4vY29tbW9uJztcbmltcG9ydCB7IG51bWJlckZhY3RvcnkgfSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IGk2NCA9IChcbiAgb3B0aW9uczogTnVtYmVyU2VyaWFsaXplck9wdGlvbnMgPSB7fVxuKTogU2VyaWFsaXplcjxudW1iZXIgfCBiaWdpbnQsIGJpZ2ludD4gPT5cbiAgbnVtYmVyRmFjdG9yeSh7XG4gICAgbmFtZTogJ2k2NCcsXG4gICAgc2l6ZTogOCxcbiAgICByYW5nZTogWy1CaWdJbnQoJzB4N2ZmZmZmZmZmZmZmZmZmZicpIC0gMW4sIEJpZ0ludCgnMHg3ZmZmZmZmZmZmZmZmZmZmJyldLFxuICAgIHNldDogKHZpZXcsIHZhbHVlLCBsZSkgPT4gdmlldy5zZXRCaWdJbnQ2NCgwLCBCaWdJbnQodmFsdWUpLCBsZSksXG4gICAgZ2V0OiAodmlldywgbGUpID0+IHZpZXcuZ2V0QmlnSW50NjQoMCwgbGUpLFxuICAgIG9wdGlvbnMsXG4gIH0pO1xuIiwgIi8qIGVzbGludC1kaXNhYmxlIG5vLWJpdHdpc2UgKi9cbmltcG9ydCB7IFNlcmlhbGl6ZXIgfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQgeyBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyB9IGZyb20gJy4vY29tbW9uJztcbmltcG9ydCB7IG51bWJlckZhY3RvcnkgfSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IGkxMjggPSAoXG4gIG9wdGlvbnM6IE51bWJlclNlcmlhbGl6ZXJPcHRpb25zID0ge31cbik6IFNlcmlhbGl6ZXI8bnVtYmVyIHwgYmlnaW50LCBiaWdpbnQ+ID0+XG4gIG51bWJlckZhY3Rvcnkoe1xuICAgIG5hbWU6ICdpMTI4JyxcbiAgICBzaXplOiAxNixcbiAgICByYW5nZTogW1xuICAgICAgLUJpZ0ludCgnMHg3ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZicpIC0gMW4sXG4gICAgICBCaWdJbnQoJzB4N2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYnKSxcbiAgICBdLFxuICAgIHNldDogKHZpZXcsIHZhbHVlLCBsZSkgPT4ge1xuICAgICAgY29uc3QgbGVmdE9mZnNldCA9IGxlID8gOCA6IDA7XG4gICAgICBjb25zdCByaWdodE9mZnNldCA9IGxlID8gMCA6IDg7XG4gICAgICBjb25zdCByaWdodE1hc2sgPSAweGZmZmZmZmZmZmZmZmZmZmZuO1xuICAgICAgdmlldy5zZXRCaWdJbnQ2NChsZWZ0T2Zmc2V0LCBCaWdJbnQodmFsdWUpID4+IDY0biwgbGUpO1xuICAgICAgdmlldy5zZXRCaWdVaW50NjQocmlnaHRPZmZzZXQsIEJpZ0ludCh2YWx1ZSkgJiByaWdodE1hc2ssIGxlKTtcbiAgICB9LFxuICAgIGdldDogKHZpZXcsIGxlKSA9PiB7XG4gICAgICBjb25zdCBsZWZ0T2Zmc2V0ID0gbGUgPyA4IDogMDtcbiAgICAgIGNvbnN0IHJpZ2h0T2Zmc2V0ID0gbGUgPyAwIDogODtcbiAgICAgIGNvbnN0IGxlZnQgPSB2aWV3LmdldEJpZ0ludDY0KGxlZnRPZmZzZXQsIGxlKTtcbiAgICAgIGNvbnN0IHJpZ2h0ID0gdmlldy5nZXRCaWdVaW50NjQocmlnaHRPZmZzZXQsIGxlKTtcbiAgICAgIHJldHVybiAobGVmdCA8PCA2NG4pICsgcmlnaHQ7XG4gICAgfSxcbiAgICBvcHRpb25zLFxuICB9KTtcbiIsICJpbXBvcnQgeyBTZXJpYWxpemVyIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWNvcmUnO1xuaW1wb3J0IHsgU2luZ2xlQnl0ZU51bWJlclNlcmlhbGl6ZXJPcHRpb25zIH0gZnJvbSAnLi9jb21tb24nO1xuaW1wb3J0IHsgbnVtYmVyRmFjdG9yeSB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY29uc3QgdTggPSAoXG4gIG9wdGlvbnM6IFNpbmdsZUJ5dGVOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyA9IHt9XG4pOiBTZXJpYWxpemVyPG51bWJlcj4gPT5cbiAgbnVtYmVyRmFjdG9yeSh7XG4gICAgbmFtZTogJ3U4JyxcbiAgICBzaXplOiAxLFxuICAgIHJhbmdlOiBbMCwgTnVtYmVyKCcweGZmJyldLFxuICAgIHNldDogKHZpZXcsIHZhbHVlKSA9PiB2aWV3LnNldFVpbnQ4KDAsIE51bWJlcih2YWx1ZSkpLFxuICAgIGdldDogKHZpZXcpID0+IHZpZXcuZ2V0VWludDgoMCksXG4gICAgb3B0aW9ucyxcbiAgfSk7XG4iLCAiaW1wb3J0IHsgU2VyaWFsaXplciB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcbmltcG9ydCB7IE51bWJlclNlcmlhbGl6ZXJPcHRpb25zIH0gZnJvbSAnLi9jb21tb24nO1xuaW1wb3J0IHsgbnVtYmVyRmFjdG9yeSB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY29uc3QgdTE2ID0gKFxuICBvcHRpb25zOiBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyA9IHt9XG4pOiBTZXJpYWxpemVyPG51bWJlcj4gPT5cbiAgbnVtYmVyRmFjdG9yeSh7XG4gICAgbmFtZTogJ3UxNicsXG4gICAgc2l6ZTogMixcbiAgICByYW5nZTogWzAsIE51bWJlcignMHhmZmZmJyldLFxuICAgIHNldDogKHZpZXcsIHZhbHVlLCBsZSkgPT4gdmlldy5zZXRVaW50MTYoMCwgTnVtYmVyKHZhbHVlKSwgbGUpLFxuICAgIGdldDogKHZpZXcsIGxlKSA9PiB2aWV3LmdldFVpbnQxNigwLCBsZSksXG4gICAgb3B0aW9ucyxcbiAgfSk7XG4iLCAiaW1wb3J0IHsgU2VyaWFsaXplciB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcbmltcG9ydCB7IE51bWJlclNlcmlhbGl6ZXJPcHRpb25zIH0gZnJvbSAnLi9jb21tb24nO1xuaW1wb3J0IHsgbnVtYmVyRmFjdG9yeSB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY29uc3QgdTMyID0gKFxuICBvcHRpb25zOiBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyA9IHt9XG4pOiBTZXJpYWxpemVyPG51bWJlcj4gPT5cbiAgbnVtYmVyRmFjdG9yeSh7XG4gICAgbmFtZTogJ3UzMicsXG4gICAgc2l6ZTogNCxcbiAgICByYW5nZTogWzAsIE51bWJlcignMHhmZmZmZmZmZicpXSxcbiAgICBzZXQ6ICh2aWV3LCB2YWx1ZSwgbGUpID0+IHZpZXcuc2V0VWludDMyKDAsIE51bWJlcih2YWx1ZSksIGxlKSxcbiAgICBnZXQ6ICh2aWV3LCBsZSkgPT4gdmlldy5nZXRVaW50MzIoMCwgbGUpLFxuICAgIG9wdGlvbnMsXG4gIH0pO1xuIiwgImltcG9ydCB7IFNlcmlhbGl6ZXIgfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQgeyBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyB9IGZyb20gJy4vY29tbW9uJztcbmltcG9ydCB7IG51bWJlckZhY3RvcnkgfSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IHU2NCA9IChcbiAgb3B0aW9uczogTnVtYmVyU2VyaWFsaXplck9wdGlvbnMgPSB7fVxuKTogU2VyaWFsaXplcjxudW1iZXIgfCBiaWdpbnQsIGJpZ2ludD4gPT5cbiAgbnVtYmVyRmFjdG9yeSh7XG4gICAgbmFtZTogJ3U2NCcsXG4gICAgc2l6ZTogOCxcbiAgICByYW5nZTogWzAsIEJpZ0ludCgnMHhmZmZmZmZmZmZmZmZmZmZmJyldLFxuICAgIHNldDogKHZpZXcsIHZhbHVlLCBsZSkgPT4gdmlldy5zZXRCaWdVaW50NjQoMCwgQmlnSW50KHZhbHVlKSwgbGUpLFxuICAgIGdldDogKHZpZXcsIGxlKSA9PiB2aWV3LmdldEJpZ1VpbnQ2NCgwLCBsZSksXG4gICAgb3B0aW9ucyxcbiAgfSk7XG4iLCAiLyogZXNsaW50LWRpc2FibGUgbm8tYml0d2lzZSAqL1xuaW1wb3J0IHsgU2VyaWFsaXplciB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcbmltcG9ydCB7IE51bWJlclNlcmlhbGl6ZXJPcHRpb25zIH0gZnJvbSAnLi9jb21tb24nO1xuaW1wb3J0IHsgbnVtYmVyRmFjdG9yeSB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY29uc3QgdTEyOCA9IChcbiAgb3B0aW9uczogTnVtYmVyU2VyaWFsaXplck9wdGlvbnMgPSB7fVxuKTogU2VyaWFsaXplcjxudW1iZXIgfCBiaWdpbnQsIGJpZ2ludD4gPT5cbiAgbnVtYmVyRmFjdG9yeSh7XG4gICAgbmFtZTogJ3UxMjgnLFxuICAgIHNpemU6IDE2LFxuICAgIHJhbmdlOiBbMCwgQmlnSW50KCcweGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmJyldLFxuICAgIHNldDogKHZpZXcsIHZhbHVlLCBsZSkgPT4ge1xuICAgICAgY29uc3QgbGVmdE9mZnNldCA9IGxlID8gOCA6IDA7XG4gICAgICBjb25zdCByaWdodE9mZnNldCA9IGxlID8gMCA6IDg7XG4gICAgICBjb25zdCByaWdodE1hc2sgPSAweGZmZmZmZmZmZmZmZmZmZmZuO1xuICAgICAgdmlldy5zZXRCaWdVaW50NjQobGVmdE9mZnNldCwgQmlnSW50KHZhbHVlKSA+PiA2NG4sIGxlKTtcbiAgICAgIHZpZXcuc2V0QmlnVWludDY0KHJpZ2h0T2Zmc2V0LCBCaWdJbnQodmFsdWUpICYgcmlnaHRNYXNrLCBsZSk7XG4gICAgfSxcbiAgICBnZXQ6ICh2aWV3LCBsZSkgPT4ge1xuICAgICAgY29uc3QgbGVmdE9mZnNldCA9IGxlID8gOCA6IDA7XG4gICAgICBjb25zdCByaWdodE9mZnNldCA9IGxlID8gMCA6IDg7XG4gICAgICBjb25zdCBsZWZ0ID0gdmlldy5nZXRCaWdVaW50NjQobGVmdE9mZnNldCwgbGUpO1xuICAgICAgY29uc3QgcmlnaHQgPSB2aWV3LmdldEJpZ1VpbnQ2NChyaWdodE9mZnNldCwgbGUpO1xuICAgICAgcmV0dXJuIChsZWZ0IDw8IDY0bikgKyByaWdodDtcbiAgICB9LFxuICAgIG9wdGlvbnMsXG4gIH0pO1xuIiwgIi8qIGVzbGludC1kaXNhYmxlIG5vLWJpdHdpc2UgKi9cbmltcG9ydCB7XG4gIEJhc2VTZXJpYWxpemVyT3B0aW9ucyxcbiAgU2VyaWFsaXplcixcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWNvcmUnO1xuaW1wb3J0IHsgYXNzZXJ0UmFuZ2UgfSBmcm9tICcuL3V0aWxzJztcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBvcHRpb25zIGZvciB0aGUgc2hvcnRVMTYgc2VyaWFsaXplci5cbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgdHlwZSBTaG9ydFUxNlNlcmlhbGl6ZXJPcHRpb25zID0gQmFzZVNlcmlhbGl6ZXJPcHRpb25zO1xuXG4vKipcbiAqIFNhbWUgYXMgdTE2LCBidXQgc2VyaWFsaXplZCB3aXRoIDEgdG8gMyBieXRlcy5cbiAqXG4gKiBJZiB0aGUgdmFsdWUgaXMgYWJvdmUgMHg3ZiwgdGhlIHRvcCBiaXQgaXMgc2V0IGFuZCB0aGUgcmVtYWluaW5nXG4gKiB2YWx1ZSBpcyBzdG9yZWQgaW4gdGhlIG5leHQgYnl0ZXMuIEVhY2ggYnl0ZSBmb2xsb3dzIHRoZSBzYW1lXG4gKiBwYXR0ZXJuIHVudGlsIHRoZSAzcmQgYnl0ZS4gVGhlIDNyZCBieXRlLCBpZiBuZWVkZWQsIHVzZXNcbiAqIGFsbCA4IGJpdHMgdG8gc3RvcmUgdGhlIGxhc3QgYnl0ZSBvZiB0aGUgb3JpZ2luYWwgdmFsdWUuXG4gKlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBzaG9ydFUxNiA9IChcbiAgb3B0aW9uczogU2hvcnRVMTZTZXJpYWxpemVyT3B0aW9ucyA9IHt9XG4pOiBTZXJpYWxpemVyPG51bWJlcj4gPT4gKHtcbiAgZGVzY3JpcHRpb246IG9wdGlvbnMuZGVzY3JpcHRpb24gPz8gJ3Nob3J0VTE2JyxcbiAgZml4ZWRTaXplOiBudWxsLFxuICBtYXhTaXplOiAzLFxuICBzZXJpYWxpemU6ICh2YWx1ZTogbnVtYmVyKTogVWludDhBcnJheSA9PiB7XG4gICAgYXNzZXJ0UmFuZ2UoJ3Nob3J0VTE2JywgMCwgNjU1MzUsIHZhbHVlKTtcbiAgICBjb25zdCBieXRlcyA9IFswXTtcbiAgICBmb3IgKGxldCBpaSA9IDA7IDsgaWkgKz0gMSkge1xuICAgICAgLy8gU2hpZnQgdGhlIGJpdHMgb2YgdGhlIHZhbHVlIG92ZXIgc3VjaCB0aGF0IHRoZSBuZXh0IDcgYml0cyBhcmUgYXQgdGhlIHJpZ2h0IGVkZ2UuXG4gICAgICBjb25zdCBhbGlnbmVkVmFsdWUgPSB2YWx1ZSA+PiAoaWkgKiA3KTtcbiAgICAgIGlmIChhbGlnbmVkVmFsdWUgPT09IDApIHtcbiAgICAgICAgLy8gTm8gbW9yZSBiaXRzIHRvIGNvbnN1bWUuXG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgLy8gRXh0cmFjdCB0aG9zZSA3IGJpdHMgdXNpbmcgYSBtYXNrLlxuICAgICAgY29uc3QgbmV4dFNldmVuQml0cyA9IDBiMTExMTExMSAmIGFsaWduZWRWYWx1ZTtcbiAgICAgIGJ5dGVzW2lpXSA9IG5leHRTZXZlbkJpdHM7XG4gICAgICBpZiAoaWkgPiAwKSB7XG4gICAgICAgIC8vIFNldCB0aGUgY29udGludWF0aW9uIGJpdCBvZiB0aGUgcHJldmlvdXMgc2xpY2UuXG4gICAgICAgIGJ5dGVzW2lpIC0gMV0gfD0gMGIxMDAwMDAwMDtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG5ldyBVaW50OEFycmF5KGJ5dGVzKTtcbiAgfSxcbiAgZGVzZXJpYWxpemU6IChieXRlczogVWludDhBcnJheSwgb2Zmc2V0ID0gMCk6IFtudW1iZXIsIG51bWJlcl0gPT4ge1xuICAgIGxldCB2YWx1ZSA9IDA7XG4gICAgbGV0IGJ5dGVDb3VudCA9IDA7XG4gICAgd2hpbGUgKFxuICAgICAgKytieXRlQ291bnQgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby1wbHVzcGx1c1xuICAgICkge1xuICAgICAgY29uc3QgYnl0ZUluZGV4ID0gYnl0ZUNvdW50IC0gMTtcbiAgICAgIGNvbnN0IGN1cnJlbnRCeXRlID0gYnl0ZXNbb2Zmc2V0ICsgYnl0ZUluZGV4XTtcbiAgICAgIGNvbnN0IG5leHRTZXZlbkJpdHMgPSAwYjExMTExMTEgJiBjdXJyZW50Qnl0ZTtcbiAgICAgIC8vIEluc2VydCB0aGUgbmV4dCBncm91cCBvZiBzZXZlbiBiaXRzIGludG8gdGhlIGNvcnJlY3Qgc2xvdCBvZiB0aGUgb3V0cHV0IHZhbHVlLlxuICAgICAgdmFsdWUgfD0gbmV4dFNldmVuQml0cyA8PCAoYnl0ZUluZGV4ICogNyk7XG4gICAgICBpZiAoKGN1cnJlbnRCeXRlICYgMGIxMDAwMDAwMCkgPT09IDApIHtcbiAgICAgICAgLy8gVGhpcyBieXRlIGRvZXMgbm90IGhhdmUgaXRzIGNvbnRpbnVhdGlvbiBiaXQgc2V0LiBXZSdyZSBkb25lLlxuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIFt2YWx1ZSwgb2Zmc2V0ICsgYnl0ZUNvdW50XTtcbiAgfSxcbn0pO1xuIiwgIid1c2Ugc3RyaWN0JztcblxuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcblxudmFyIGNvbW1vbiA9IHJlcXVpcmUoJy4vY29tbW9uLmNqcycpO1xudmFyIGVycm9ycyA9IHJlcXVpcmUoJy4vZXJyb3JzLmNqcycpO1xudmFyIGYzMiA9IHJlcXVpcmUoJy4vZjMyLmNqcycpO1xudmFyIGY2NCA9IHJlcXVpcmUoJy4vZjY0LmNqcycpO1xudmFyIGk4ID0gcmVxdWlyZSgnLi9pOC5janMnKTtcbnZhciBpMTYgPSByZXF1aXJlKCcuL2kxNi5janMnKTtcbnZhciBpMzIgPSByZXF1aXJlKCcuL2kzMi5janMnKTtcbnZhciBpNjQgPSByZXF1aXJlKCcuL2k2NC5janMnKTtcbnZhciBpMTI4ID0gcmVxdWlyZSgnLi9pMTI4LmNqcycpO1xudmFyIHU4ID0gcmVxdWlyZSgnLi91OC5janMnKTtcbnZhciB1MTYgPSByZXF1aXJlKCcuL3UxNi5janMnKTtcbnZhciB1MzIgPSByZXF1aXJlKCcuL3UzMi5janMnKTtcbnZhciB1NjQgPSByZXF1aXJlKCcuL3U2NC5janMnKTtcbnZhciB1MTI4ID0gcmVxdWlyZSgnLi91MTI4LmNqcycpO1xudmFyIHNob3J0VTE2ID0gcmVxdWlyZSgnLi9zaG9ydFUxNi5janMnKTtcblxuXG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCAnRW5kaWFuJywge1xuXHRlbnVtZXJhYmxlOiB0cnVlLFxuXHRnZXQ6IGZ1bmN0aW9uICgpIHsgcmV0dXJuIGNvbW1vbi5FbmRpYW47IH1cbn0pO1xuZXhwb3J0cy5OdW1iZXJPdXRPZlJhbmdlRXJyb3IgPSBlcnJvcnMuTnVtYmVyT3V0T2ZSYW5nZUVycm9yO1xuZXhwb3J0cy5mMzIgPSBmMzIuZjMyO1xuZXhwb3J0cy5mNjQgPSBmNjQuZjY0O1xuZXhwb3J0cy5pOCA9IGk4Lmk4O1xuZXhwb3J0cy5pMTYgPSBpMTYuaTE2O1xuZXhwb3J0cy5pMzIgPSBpMzIuaTMyO1xuZXhwb3J0cy5pNjQgPSBpNjQuaTY0O1xuZXhwb3J0cy5pMTI4ID0gaTEyOC5pMTI4O1xuZXhwb3J0cy51OCA9IHU4LnU4O1xuZXhwb3J0cy51MTYgPSB1MTYudTE2O1xuZXhwb3J0cy51MzIgPSB1MzIudTMyO1xuZXhwb3J0cy51NjQgPSB1NjQudTY0O1xuZXhwb3J0cy51MTI4ID0gdTEyOC51MTI4O1xuZXhwb3J0cy5zaG9ydFUxNiA9IHNob3J0VTE2LnNob3J0VTE2O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXguY2pzLm1hcFxuIiwgIi8qKiBAY2F0ZWdvcnkgRXJyb3JzICovXG5leHBvcnQgY2xhc3MgSW52YWxpZE51bWJlck9mSXRlbXNFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgcmVhZG9ubHkgbmFtZSA9ICdJbnZhbGlkTnVtYmVyT2ZJdGVtc0Vycm9yJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBzZXJpYWxpemVyOiBzdHJpbmcsXG4gICAgZXhwZWN0ZWQ6IG51bWJlciB8IGJpZ2ludCxcbiAgICBhY3R1YWw6IG51bWJlciB8IGJpZ2ludFxuICApIHtcbiAgICBzdXBlcihgRXhwZWN0ZWQgWyR7c2VyaWFsaXplcn1dIHRvIGhhdmUgJHtleHBlY3RlZH0gaXRlbXMsIGdvdCAke2FjdHVhbH0uYCk7XG4gIH1cbn1cblxuLyoqIEBjYXRlZ29yeSBFcnJvcnMgKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkQXJyYXlMaWtlUmVtYWluZGVyU2l6ZUVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICByZWFkb25seSBuYW1lID0gJ0ludmFsaWRBcnJheUxpa2VSZW1haW5kZXJTaXplRXJyb3InO1xuXG4gIGNvbnN0cnVjdG9yKHJlbWFpbmRlclNpemU6IG51bWJlciB8IGJpZ2ludCwgaXRlbVNpemU6IG51bWJlciB8IGJpZ2ludCkge1xuICAgIHN1cGVyKFxuICAgICAgYFRoZSByZW1haW5kZXIgb2YgdGhlIGJ1ZmZlciAoJHtyZW1haW5kZXJTaXplfSBieXRlcykgY2Fubm90IGJlIHNwbGl0IGludG8gY2h1bmtzIG9mICR7aXRlbVNpemV9IGJ5dGVzLiBgICtcbiAgICAgICAgYFNlcmlhbGl6ZXJzIG9mIFwicmVtYWluZGVyXCIgc2l6ZSBtdXN0IGhhdmUgYSByZW1haW5kZXIgdGhhdCBpcyBhIG11bHRpcGxlIG9mIGl0cyBpdGVtIHNpemUuIGAgK1xuICAgICAgICBgSW4gb3RoZXIgd29yZHMsICR7cmVtYWluZGVyU2l6ZX0gbW9kdWxvICR7aXRlbVNpemV9IHNob3VsZCBiZSBlcXVhbCB0byB6ZXJvLmBcbiAgICApO1xuICB9XG59XG5cbi8qKiBAY2F0ZWdvcnkgRXJyb3JzICovXG5leHBvcnQgY2xhc3MgVW5yZWNvZ25pemVkQXJyYXlMaWtlU2VyaWFsaXplclNpemVFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgcmVhZG9ubHkgbmFtZSA9ICdVbnJlY29nbml6ZWRBcnJheUxpa2VTZXJpYWxpemVyU2l6ZUVycm9yJztcblxuICBjb25zdHJ1Y3RvcihzaXplOiBuZXZlcikge1xuICAgIHN1cGVyKGBVbnJlY29nbml6ZWQgYXJyYXktbGlrZSBzZXJpYWxpemVyIHNpemU6ICR7SlNPTi5zdHJpbmdpZnkoc2l6ZSl9YCk7XG4gIH1cbn1cblxuLyoqIEBjYXRlZ29yeSBFcnJvcnMgKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkRGF0YUVudW1WYXJpYW50RXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIHJlYWRvbmx5IG5hbWUgPSAnSW52YWxpZERhdGFFbnVtVmFyaWFudEVycm9yJztcblxuICBjb25zdHJ1Y3RvcihpbnZhbGlkVmFyaWFudDogc3RyaW5nLCB2YWxpZFZhcmlhbnRzOiBzdHJpbmdbXSkge1xuICAgIHN1cGVyKFxuICAgICAgYEludmFsaWQgZGF0YSBlbnVtIHZhcmlhbnQuIGAgK1xuICAgICAgICBgRXhwZWN0ZWQgb25lIG9mIFske3ZhbGlkVmFyaWFudHMuam9pbignLCAnKX1dLCBgICtcbiAgICAgICAgYGdvdCBcIiR7aW52YWxpZFZhcmlhbnR9XCIuYFxuICAgICk7XG4gIH1cbn1cblxuLyoqIEBjYXRlZ29yeSBFcnJvcnMgKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkU2NhbGFyRW51bVZhcmlhbnRFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgcmVhZG9ubHkgbmFtZSA9ICdJbnZhbGlkU2NhbGFyRW51bVZhcmlhbnRFcnJvcic7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgaW52YWxpZFZhcmlhbnQ6IHN0cmluZyB8IG51bWJlciB8IGJpZ2ludCxcbiAgICB2YWxpZFZhcmlhbnRzOiBzdHJpbmdbXSxcbiAgICBtaW46IG51bWJlciB8IGJpZ2ludCxcbiAgICBtYXg6IG51bWJlciB8IGJpZ2ludFxuICApIHtcbiAgICBzdXBlcihcbiAgICAgIGBJbnZhbGlkIHNjYWxhciBlbnVtIHZhcmlhbnQuIGAgK1xuICAgICAgICBgRXhwZWN0ZWQgb25lIG9mIFske3ZhbGlkVmFyaWFudHMuam9pbignLCAnKX1dIGAgK1xuICAgICAgICBgb3IgYSBudW1iZXIgYmV0d2VlbiAke21pbn0gYW5kICR7bWF4fSwgYCArXG4gICAgICAgIGBnb3QgXCIke2ludmFsaWRWYXJpYW50fVwiLmBcbiAgICApO1xuICB9XG59XG5cbi8qKiBAY2F0ZWdvcnkgRXJyb3JzICovXG5leHBvcnQgY2xhc3MgRW51bURpc2NyaW1pbmF0b3JPdXRPZlJhbmdlRXJyb3IgZXh0ZW5kcyBSYW5nZUVycm9yIHtcbiAgcmVhZG9ubHkgbmFtZSA9ICdFbnVtRGlzY3JpbWluYXRvck91dE9mUmFuZ2VFcnJvcic7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgZGlzY3JpbWluYXRvcjogbnVtYmVyIHwgYmlnaW50LFxuICAgIG1pbjogbnVtYmVyIHwgYmlnaW50LFxuICAgIG1heDogbnVtYmVyIHwgYmlnaW50XG4gICkge1xuICAgIHN1cGVyKFxuICAgICAgYEVudW0gZGlzY3JpbWluYXRvciBvdXQgb2YgcmFuZ2UuIGAgK1xuICAgICAgICBgRXhwZWN0ZWQgYSBudW1iZXIgYmV0d2VlbiAke21pbn0gYW5kICR7bWF4fSwgZ290ICR7ZGlzY3JpbWluYXRvcn0uYFxuICAgICk7XG4gIH1cbn1cbiIsICJleHBvcnQgZnVuY3Rpb24gc3VtU2VyaWFsaXplclNpemVzKHNpemVzOiAobnVtYmVyIHwgbnVsbClbXSk6IG51bWJlciB8IG51bGwge1xuICByZXR1cm4gc2l6ZXMucmVkdWNlKFxuICAgIChhbGwsIHNpemUpID0+IChhbGwgPT09IG51bGwgfHwgc2l6ZSA9PT0gbnVsbCA/IG51bGwgOiBhbGwgKyBzaXplKSxcbiAgICAwIGFzIG51bWJlciB8IG51bGxcbiAgKTtcbn1cbiIsICJpbXBvcnQgeyBFeHBlY3RlZEZpeGVkU2l6ZVNlcmlhbGl6ZXJFcnJvciB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcbmltcG9ydCB7IEFycmF5TGlrZVNlcmlhbGl6ZXJTaXplIH0gZnJvbSAnLi9hcnJheUxpa2VTZXJpYWxpemVyU2l6ZSc7XG5pbXBvcnQge1xuICBJbnZhbGlkQXJyYXlMaWtlUmVtYWluZGVyU2l6ZUVycm9yLFxuICBVbnJlY29nbml6ZWRBcnJheUxpa2VTZXJpYWxpemVyU2l6ZUVycm9yLFxufSBmcm9tICcuL2Vycm9ycyc7XG5pbXBvcnQgeyBzdW1TZXJpYWxpemVyU2l6ZXMgfSBmcm9tICcuL3N1bVNlcmlhbGl6ZXJTaXplcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRSZXNvbHZlZFNpemUoXG4gIHNpemU6IEFycmF5TGlrZVNlcmlhbGl6ZXJTaXplLFxuICBjaGlsZHJlblNpemVzOiAobnVtYmVyIHwgbnVsbClbXSxcbiAgYnl0ZXM6IFVpbnQ4QXJyYXksXG4gIG9mZnNldDogbnVtYmVyXG4pOiBbbnVtYmVyIHwgYmlnaW50LCBudW1iZXJdIHtcbiAgaWYgKHR5cGVvZiBzaXplID09PSAnbnVtYmVyJykge1xuICAgIHJldHVybiBbc2l6ZSwgb2Zmc2V0XTtcbiAgfVxuXG4gIGlmICh0eXBlb2Ygc2l6ZSA9PT0gJ29iamVjdCcpIHtcbiAgICByZXR1cm4gc2l6ZS5kZXNlcmlhbGl6ZShieXRlcywgb2Zmc2V0KTtcbiAgfVxuXG4gIGlmIChzaXplID09PSAncmVtYWluZGVyJykge1xuICAgIGNvbnN0IGNoaWxkcmVuU2l6ZSA9IHN1bVNlcmlhbGl6ZXJTaXplcyhjaGlsZHJlblNpemVzKTtcbiAgICBpZiAoY2hpbGRyZW5TaXplID09PSBudWxsKSB7XG4gICAgICB0aHJvdyBuZXcgRXhwZWN0ZWRGaXhlZFNpemVTZXJpYWxpemVyRXJyb3IoXG4gICAgICAgICdTZXJpYWxpemVycyBvZiBcInJlbWFpbmRlclwiIHNpemUgbXVzdCBoYXZlIGZpeGVkLXNpemUgaXRlbXMuJ1xuICAgICAgKTtcbiAgICB9XG4gICAgY29uc3QgcmVtYWluZGVyID0gYnl0ZXMuc2xpY2Uob2Zmc2V0KS5sZW5ndGg7XG4gICAgaWYgKHJlbWFpbmRlciAlIGNoaWxkcmVuU2l6ZSAhPT0gMCkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcnJheUxpa2VSZW1haW5kZXJTaXplRXJyb3IocmVtYWluZGVyLCBjaGlsZHJlblNpemUpO1xuICAgIH1cbiAgICByZXR1cm4gW3JlbWFpbmRlciAvIGNoaWxkcmVuU2l6ZSwgb2Zmc2V0XTtcbiAgfVxuXG4gIHRocm93IG5ldyBVbnJlY29nbml6ZWRBcnJheUxpa2VTZXJpYWxpemVyU2l6ZUVycm9yKHNpemUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2l6ZURlc2NyaXB0aW9uKFxuICBzaXplOiBBcnJheUxpa2VTZXJpYWxpemVyU2l6ZSB8IHN0cmluZ1xuKTogc3RyaW5nIHtcbiAgcmV0dXJuIHR5cGVvZiBzaXplID09PSAnb2JqZWN0JyA/IHNpemUuZGVzY3JpcHRpb24gOiBgJHtzaXplfWA7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRTaXplRnJvbUNoaWxkcmVuKFxuICBzaXplOiBBcnJheUxpa2VTZXJpYWxpemVyU2l6ZSxcbiAgY2hpbGRyZW5TaXplczogKG51bWJlciB8IG51bGwpW11cbik6IG51bWJlciB8IG51bGwge1xuICBpZiAodHlwZW9mIHNpemUgIT09ICdudW1iZXInKSByZXR1cm4gbnVsbDtcbiAgaWYgKHNpemUgPT09IDApIHJldHVybiAwO1xuICBjb25zdCBjaGlsZHJlblNpemUgPSBzdW1TZXJpYWxpemVyU2l6ZXMoY2hpbGRyZW5TaXplcyk7XG4gIHJldHVybiBjaGlsZHJlblNpemUgPT09IG51bGwgPyBudWxsIDogY2hpbGRyZW5TaXplICogc2l6ZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFNpemVQcmVmaXgoXG4gIHNpemU6IEFycmF5TGlrZVNlcmlhbGl6ZXJTaXplLFxuICByZWFsU2l6ZTogbnVtYmVyXG4pOiBVaW50OEFycmF5IHtcbiAgcmV0dXJuIHR5cGVvZiBzaXplID09PSAnb2JqZWN0JyA/IHNpemUuc2VyaWFsaXplKHJlYWxTaXplKSA6IG5ldyBVaW50OEFycmF5KCk7XG59XG4iLCAiaW1wb3J0IHtcbiAgQmFzZVNlcmlhbGl6ZXJPcHRpb25zLFxuICBFeHBlY3RlZEZpeGVkU2l6ZVNlcmlhbGl6ZXJFcnJvcixcbiAgU2VyaWFsaXplcixcbiAgbWVyZ2VCeXRlcyxcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWNvcmUnO1xuaW1wb3J0IHsgdTMyIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLW51bWJlcnMnO1xuaW1wb3J0IHsgQXJyYXlMaWtlU2VyaWFsaXplclNpemUgfSBmcm9tICcuL2FycmF5TGlrZVNlcmlhbGl6ZXJTaXplJztcbmltcG9ydCB7IEludmFsaWROdW1iZXJPZkl0ZW1zRXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5pbXBvcnQge1xuICBnZXRSZXNvbHZlZFNpemUsXG4gIGdldFNpemVEZXNjcmlwdGlvbixcbiAgZ2V0U2l6ZUZyb21DaGlsZHJlbixcbiAgZ2V0U2l6ZVByZWZpeCxcbn0gZnJvbSAnLi91dGlscyc7XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgb3B0aW9ucyBmb3IgYXJyYXkgc2VyaWFsaXplcnMuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IHR5cGUgQXJyYXlTZXJpYWxpemVyT3B0aW9ucyA9IEJhc2VTZXJpYWxpemVyT3B0aW9ucyAmIHtcbiAgLyoqXG4gICAqIFRoZSBzaXplIG9mIHRoZSBhcnJheS5cbiAgICogQGRlZmF1bHRWYWx1ZSBgdTMyKClgXG4gICAqL1xuICBzaXplPzogQXJyYXlMaWtlU2VyaWFsaXplclNpemU7XG59O1xuXG4vKipcbiAqIENyZWF0ZXMgYSBzZXJpYWxpemVyIGZvciBhbiBhcnJheSBvZiBpdGVtcy5cbiAqXG4gKiBAcGFyYW0gaXRlbSAtIFRoZSBzZXJpYWxpemVyIHRvIHVzZSBmb3IgdGhlIGFycmF5J3MgaXRlbXMuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhcnJheTxULCBVIGV4dGVuZHMgVCA9IFQ+KFxuICBpdGVtOiBTZXJpYWxpemVyPFQsIFU+LFxuICBvcHRpb25zOiBBcnJheVNlcmlhbGl6ZXJPcHRpb25zID0ge31cbik6IFNlcmlhbGl6ZXI8VFtdLCBVW10+IHtcbiAgY29uc3Qgc2l6ZSA9IG9wdGlvbnMuc2l6ZSA/PyB1MzIoKTtcbiAgaWYgKHNpemUgPT09ICdyZW1haW5kZXInICYmIGl0ZW0uZml4ZWRTaXplID09PSBudWxsKSB7XG4gICAgdGhyb3cgbmV3IEV4cGVjdGVkRml4ZWRTaXplU2VyaWFsaXplckVycm9yKFxuICAgICAgJ1NlcmlhbGl6ZXJzIG9mIFwicmVtYWluZGVyXCIgc2l6ZSBtdXN0IGhhdmUgZml4ZWQtc2l6ZSBpdGVtcy4nXG4gICAgKTtcbiAgfVxuICByZXR1cm4ge1xuICAgIGRlc2NyaXB0aW9uOlxuICAgICAgb3B0aW9ucy5kZXNjcmlwdGlvbiA/P1xuICAgICAgYGFycmF5KCR7aXRlbS5kZXNjcmlwdGlvbn07ICR7Z2V0U2l6ZURlc2NyaXB0aW9uKHNpemUpfSlgLFxuICAgIGZpeGVkU2l6ZTogZ2V0U2l6ZUZyb21DaGlsZHJlbihzaXplLCBbaXRlbS5maXhlZFNpemVdKSxcbiAgICBtYXhTaXplOiBnZXRTaXplRnJvbUNoaWxkcmVuKHNpemUsIFtpdGVtLm1heFNpemVdKSxcbiAgICBzZXJpYWxpemU6ICh2YWx1ZTogVFtdKSA9PiB7XG4gICAgICBpZiAodHlwZW9mIHNpemUgPT09ICdudW1iZXInICYmIHZhbHVlLmxlbmd0aCAhPT0gc2l6ZSkge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE51bWJlck9mSXRlbXNFcnJvcignYXJyYXknLCBzaXplLCB2YWx1ZS5sZW5ndGgpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIG1lcmdlQnl0ZXMoW1xuICAgICAgICBnZXRTaXplUHJlZml4KHNpemUsIHZhbHVlLmxlbmd0aCksXG4gICAgICAgIC4uLnZhbHVlLm1hcCgodikgPT4gaXRlbS5zZXJpYWxpemUodikpLFxuICAgICAgXSk7XG4gICAgfSxcbiAgICBkZXNlcmlhbGl6ZTogKGJ5dGVzOiBVaW50OEFycmF5LCBvZmZzZXQgPSAwKSA9PiB7XG4gICAgICBpZiAodHlwZW9mIHNpemUgPT09ICdvYmplY3QnICYmIGJ5dGVzLnNsaWNlKG9mZnNldCkubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHJldHVybiBbW10sIG9mZnNldF07XG4gICAgICB9XG4gICAgICBjb25zdCBbcmVzb2x2ZWRTaXplLCBuZXdPZmZzZXRdID0gZ2V0UmVzb2x2ZWRTaXplKFxuICAgICAgICBzaXplLFxuICAgICAgICBbaXRlbS5maXhlZFNpemVdLFxuICAgICAgICBieXRlcyxcbiAgICAgICAgb2Zmc2V0XG4gICAgICApO1xuICAgICAgb2Zmc2V0ID0gbmV3T2Zmc2V0O1xuICAgICAgY29uc3QgdmFsdWVzOiBVW10gPSBbXTtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcmVzb2x2ZWRTaXplOyBpICs9IDEpIHtcbiAgICAgICAgY29uc3QgW3ZhbHVlLCBuZXdPZmZzZXRdID0gaXRlbS5kZXNlcmlhbGl6ZShieXRlcywgb2Zmc2V0KTtcbiAgICAgICAgdmFsdWVzLnB1c2godmFsdWUpO1xuICAgICAgICBvZmZzZXQgPSBuZXdPZmZzZXQ7XG4gICAgICB9XG4gICAgICByZXR1cm4gW3ZhbHVlcywgb2Zmc2V0XTtcbiAgICB9LFxuICB9O1xufVxuIiwgIi8qIGVzbGludC1kaXNhYmxlIG5vLWJpdHdpc2UgKi9cbmltcG9ydCB7XG4gIEJhc2VTZXJpYWxpemVyT3B0aW9ucyxcbiAgTm90RW5vdWdoQnl0ZXNFcnJvcixcbiAgU2VyaWFsaXplcixcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWNvcmUnO1xuXG4vKipcbiAqIERlZmluZXMgdGhlIG9wdGlvbnMgZm9yIGJpdEFycmF5IHNlcmlhbGl6ZXJzLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCB0eXBlIEJpdEFycmF5U2VyaWFsaXplck9wdGlvbnMgPSBCYXNlU2VyaWFsaXplck9wdGlvbnMgJiB7XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIHJlYWQgdGhlIGJpdHMgaW4gcmV2ZXJzZSBvcmRlci5cbiAgICogQGRlZmF1bHRWYWx1ZSBgZmFsc2VgXG4gICAqL1xuICBiYWNrd2FyZD86IGJvb2xlYW47XG59O1xuXG4vKipcbiAqIEFuIGFycmF5IG9mIGJvb2xlYW4gc2VyaWFsaXplciB0aGF0XG4gKiBjb252ZXJ0cyBib29sZWFucyB0byBiaXRzIGFuZCB2aWNlIHZlcnNhLlxuICpcbiAqIEBwYXJhbSBzaXplIC0gVGhlIGFtb3VudCBvZiBieXRlcyB0byB1c2UgZm9yIHRoZSBiaXQgYXJyYXkuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBiaXRBcnJheSA9IChcbiAgc2l6ZTogbnVtYmVyLFxuICBvcHRpb25zOiBCaXRBcnJheVNlcmlhbGl6ZXJPcHRpb25zIHwgYm9vbGVhbiA9IHt9XG4pOiBTZXJpYWxpemVyPGJvb2xlYW5bXT4gPT4ge1xuICBjb25zdCBwYXJzZWRPcHRpb25zOiBCaXRBcnJheVNlcmlhbGl6ZXJPcHRpb25zID1cbiAgICB0eXBlb2Ygb3B0aW9ucyA9PT0gJ2Jvb2xlYW4nID8geyBiYWNrd2FyZDogb3B0aW9ucyB9IDogb3B0aW9ucztcbiAgY29uc3QgYmFja3dhcmQgPSBwYXJzZWRPcHRpb25zLmJhY2t3YXJkID8/IGZhbHNlO1xuICBjb25zdCBiYWNrd2FyZFN1ZmZpeCA9IGJhY2t3YXJkID8gJzsgYmFja3dhcmQnIDogJyc7XG4gIHJldHVybiB7XG4gICAgZGVzY3JpcHRpb246XG4gICAgICBwYXJzZWRPcHRpb25zLmRlc2NyaXB0aW9uID8/IGBiaXRBcnJheSgke3NpemV9JHtiYWNrd2FyZFN1ZmZpeH0pYCxcbiAgICBmaXhlZFNpemU6IHNpemUsXG4gICAgbWF4U2l6ZTogc2l6ZSxcbiAgICBzZXJpYWxpemUodmFsdWU6IGJvb2xlYW5bXSkge1xuICAgICAgY29uc3QgYnl0ZXM6IG51bWJlcltdID0gW107XG5cbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2l6ZTsgaSArPSAxKSB7XG4gICAgICAgIGxldCBieXRlID0gMDtcbiAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCA4OyBqICs9IDEpIHtcbiAgICAgICAgICBjb25zdCBmZWF0dXJlID0gTnVtYmVyKHZhbHVlW2kgKiA4ICsgal0gPz8gMCk7XG4gICAgICAgICAgYnl0ZSB8PSBmZWF0dXJlIDw8IChiYWNrd2FyZCA/IGogOiA3IC0gaik7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGJhY2t3YXJkKSB7XG4gICAgICAgICAgYnl0ZXMudW5zaGlmdChieXRlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBieXRlcy5wdXNoKGJ5dGUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBuZXcgVWludDhBcnJheShieXRlcyk7XG4gICAgfSxcbiAgICBkZXNlcmlhbGl6ZShieXRlcywgb2Zmc2V0ID0gMCkge1xuICAgICAgY29uc3QgYm9vbGVhbnM6IGJvb2xlYW5bXSA9IFtdO1xuICAgICAgbGV0IHNsaWNlID0gYnl0ZXMuc2xpY2Uob2Zmc2V0LCBvZmZzZXQgKyBzaXplKTtcbiAgICAgIHNsaWNlID0gYmFja3dhcmQgPyBzbGljZS5yZXZlcnNlKCkgOiBzbGljZTtcbiAgICAgIGlmIChzbGljZS5sZW5ndGggIT09IHNpemUpIHtcbiAgICAgICAgdGhyb3cgbmV3IE5vdEVub3VnaEJ5dGVzRXJyb3IoJ2JpdEFycmF5Jywgc2l6ZSwgc2xpY2UubGVuZ3RoKTtcbiAgICAgIH1cblxuICAgICAgc2xpY2UuZm9yRWFjaCgoYnl0ZSkgPT4ge1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDg7IGkgKz0gMSkge1xuICAgICAgICAgIGlmIChiYWNrd2FyZCkge1xuICAgICAgICAgICAgYm9vbGVhbnMucHVzaChCb29sZWFuKGJ5dGUgJiAxKSk7XG4gICAgICAgICAgICBieXRlID4+PSAxO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBib29sZWFucy5wdXNoKEJvb2xlYW4oYnl0ZSAmIDBiMTAwMF8wMDAwKSk7XG4gICAgICAgICAgICBieXRlIDw8PSAxO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIHJldHVybiBbYm9vbGVhbnMsIG9mZnNldCArIHNpemVdO1xuICAgIH0sXG4gIH07XG59O1xuIiwgImltcG9ydCB7XG4gIEJhc2VTZXJpYWxpemVyT3B0aW9ucyxcbiAgRGVzZXJpYWxpemluZ0VtcHR5QnVmZmVyRXJyb3IsXG4gIEV4cGVjdGVkRml4ZWRTaXplU2VyaWFsaXplckVycm9yLFxuICBTZXJpYWxpemVyLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQge1xuICBOdW1iZXJTZXJpYWxpemVyLFxuICB1OCxcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLW51bWJlcnMnO1xuXG4vKipcbiAqIERlZmluZXMgdGhlIG9wdGlvbnMgZm9yIGJvb2xlYW4gc2VyaWFsaXplcnMuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IHR5cGUgQm9vbFNlcmlhbGl6ZXJPcHRpb25zID0gQmFzZVNlcmlhbGl6ZXJPcHRpb25zICYge1xuICAvKipcbiAgICogVGhlIG51bWJlciBzZXJpYWxpemVyIHRvIGRlbGVnYXRlIHRvLlxuICAgKiBAZGVmYXVsdFZhbHVlIGB1OCgpYFxuICAgKi9cbiAgc2l6ZT86IE51bWJlclNlcmlhbGl6ZXI7XG59O1xuXG4vKipcbiAqIENyZWF0ZXMgYSBib29sZWFuIHNlcmlhbGl6ZXIuXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBBIHNldCBvZiBvcHRpb25zIGZvciB0aGUgc2VyaWFsaXplci5cbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgZnVuY3Rpb24gYm9vbChvcHRpb25zOiBCb29sU2VyaWFsaXplck9wdGlvbnMgPSB7fSk6IFNlcmlhbGl6ZXI8Ym9vbGVhbj4ge1xuICBjb25zdCBzaXplID0gb3B0aW9ucy5zaXplID8/IHU4KCk7XG4gIGlmIChzaXplLmZpeGVkU2l6ZSA9PT0gbnVsbCkge1xuICAgIHRocm93IG5ldyBFeHBlY3RlZEZpeGVkU2l6ZVNlcmlhbGl6ZXJFcnJvcihcbiAgICAgICdTZXJpYWxpemVyIFtib29sXSByZXF1aXJlcyBhIGZpeGVkIHNpemUuJ1xuICAgICk7XG4gIH1cbiAgcmV0dXJuIHtcbiAgICBkZXNjcmlwdGlvbjogb3B0aW9ucy5kZXNjcmlwdGlvbiA/PyBgYm9vbCgke3NpemUuZGVzY3JpcHRpb259KWAsXG4gICAgZml4ZWRTaXplOiBzaXplLmZpeGVkU2l6ZSxcbiAgICBtYXhTaXplOiBzaXplLmZpeGVkU2l6ZSxcbiAgICBzZXJpYWxpemU6ICh2YWx1ZTogYm9vbGVhbikgPT4gc2l6ZS5zZXJpYWxpemUodmFsdWUgPyAxIDogMCksXG4gICAgZGVzZXJpYWxpemU6IChieXRlczogVWludDhBcnJheSwgb2Zmc2V0ID0gMCkgPT4ge1xuICAgICAgaWYgKGJ5dGVzLnNsaWNlKG9mZnNldCkubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHRocm93IG5ldyBEZXNlcmlhbGl6aW5nRW1wdHlCdWZmZXJFcnJvcignYm9vbCcpO1xuICAgICAgfVxuICAgICAgY29uc3QgW3ZhbHVlLCB2T2Zmc2V0XSA9IHNpemUuZGVzZXJpYWxpemUoYnl0ZXMsIG9mZnNldCk7XG4gICAgICByZXR1cm4gW3ZhbHVlID09PSAxLCB2T2Zmc2V0XTtcbiAgICB9LFxuICB9O1xufVxuIiwgImltcG9ydCB7XG4gIEJhc2VTZXJpYWxpemVyT3B0aW9ucyxcbiAgRGVzZXJpYWxpemluZ0VtcHR5QnVmZmVyRXJyb3IsXG4gIE5vdEVub3VnaEJ5dGVzRXJyb3IsXG4gIFNlcmlhbGl6ZXIsXG4gIGZpeFNlcmlhbGl6ZXIsXG4gIG1lcmdlQnl0ZXMsXG59IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcbmltcG9ydCB7IE51bWJlclNlcmlhbGl6ZXIgfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtbnVtYmVycyc7XG5pbXBvcnQgeyBnZXRTaXplRGVzY3JpcHRpb24gfSBmcm9tICcuL3V0aWxzJztcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBvcHRpb25zIGZvciBieXRlcyBzZXJpYWxpemVycy5cbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgdHlwZSBCeXRlc1NlcmlhbGl6ZXJPcHRpb25zID0gQmFzZVNlcmlhbGl6ZXJPcHRpb25zICYge1xuICAvKipcbiAgICogVGhlIHNpemUgb2YgdGhlIGJ1ZmZlci4gSXQgY2FuIGJlIG9uZSBvZiB0aGUgZm9sbG93aW5nOlxuICAgKiAtIGEge0BsaW5rIE51bWJlclNlcmlhbGl6ZXJ9IHRoYXQgcHJlZml4ZXMgdGhlIGJ1ZmZlciB3aXRoIGl0cyBzaXplLlxuICAgKiAtIGEgZml4ZWQgbnVtYmVyIG9mIGJ5dGVzLlxuICAgKiAtIG9yIGAndmFyaWFibGUnYCB0byB1c2UgdGhlIHJlc3Qgb2YgdGhlIGJ1ZmZlci5cbiAgICogQGRlZmF1bHRWYWx1ZSBgJ3ZhcmlhYmxlJ2BcbiAgICovXG4gIHNpemU/OiBOdW1iZXJTZXJpYWxpemVyIHwgbnVtYmVyIHwgJ3ZhcmlhYmxlJztcbn07XG5cbi8qKlxuICogQ3JlYXRlcyBhIHNlcmlhbGl6ZXIgdGhhdCBwYXNzZXMgdGhlIGJ1ZmZlciBhcy1pcy5cbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBieXRlcyhcbiAgb3B0aW9uczogQnl0ZXNTZXJpYWxpemVyT3B0aW9ucyA9IHt9XG4pOiBTZXJpYWxpemVyPFVpbnQ4QXJyYXk+IHtcbiAgY29uc3Qgc2l6ZSA9IG9wdGlvbnMuc2l6ZSA/PyAndmFyaWFibGUnO1xuICBjb25zdCBkZXNjcmlwdGlvbiA9XG4gICAgb3B0aW9ucy5kZXNjcmlwdGlvbiA/PyBgYnl0ZXMoJHtnZXRTaXplRGVzY3JpcHRpb24oc2l6ZSl9KWA7XG5cbiAgY29uc3QgYnl0ZVNlcmlhbGl6ZXI6IFNlcmlhbGl6ZXI8VWludDhBcnJheT4gPSB7XG4gICAgZGVzY3JpcHRpb24sXG4gICAgZml4ZWRTaXplOiBudWxsLFxuICAgIG1heFNpemU6IG51bGwsXG4gICAgc2VyaWFsaXplOiAodmFsdWU6IFVpbnQ4QXJyYXkpID0+IG5ldyBVaW50OEFycmF5KHZhbHVlKSxcbiAgICBkZXNlcmlhbGl6ZTogKGJ5dGVzOiBVaW50OEFycmF5LCBvZmZzZXQgPSAwKSA9PiB7XG4gICAgICBjb25zdCBzbGljZSA9IGJ5dGVzLnNsaWNlKG9mZnNldCk7XG4gICAgICByZXR1cm4gW3NsaWNlLCBvZmZzZXQgKyBzbGljZS5sZW5ndGhdO1xuICAgIH0sXG4gIH07XG5cbiAgaWYgKHNpemUgPT09ICd2YXJpYWJsZScpIHtcbiAgICByZXR1cm4gYnl0ZVNlcmlhbGl6ZXI7XG4gIH1cblxuICBpZiAodHlwZW9mIHNpemUgPT09ICdudW1iZXInKSB7XG4gICAgcmV0dXJuIGZpeFNlcmlhbGl6ZXIoYnl0ZVNlcmlhbGl6ZXIsIHNpemUsIGRlc2NyaXB0aW9uKTtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgZGVzY3JpcHRpb24sXG4gICAgZml4ZWRTaXplOiBudWxsLFxuICAgIG1heFNpemU6IG51bGwsXG4gICAgc2VyaWFsaXplOiAodmFsdWU6IFVpbnQ4QXJyYXkpID0+IHtcbiAgICAgIGNvbnN0IGNvbnRlbnRCeXRlcyA9IGJ5dGVTZXJpYWxpemVyLnNlcmlhbGl6ZSh2YWx1ZSk7XG4gICAgICBjb25zdCBsZW5ndGhCeXRlcyA9IHNpemUuc2VyaWFsaXplKGNvbnRlbnRCeXRlcy5sZW5ndGgpO1xuICAgICAgcmV0dXJuIG1lcmdlQnl0ZXMoW2xlbmd0aEJ5dGVzLCBjb250ZW50Qnl0ZXNdKTtcbiAgICB9LFxuICAgIGRlc2VyaWFsaXplOiAoYnVmZmVyOiBVaW50OEFycmF5LCBvZmZzZXQgPSAwKSA9PiB7XG4gICAgICBpZiAoYnVmZmVyLnNsaWNlKG9mZnNldCkubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHRocm93IG5ldyBEZXNlcmlhbGl6aW5nRW1wdHlCdWZmZXJFcnJvcignYnl0ZXMnKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IFtsZW5ndGhCaWdJbnQsIGxlbmd0aE9mZnNldF0gPSBzaXplLmRlc2VyaWFsaXplKGJ1ZmZlciwgb2Zmc2V0KTtcbiAgICAgIGNvbnN0IGxlbmd0aCA9IE51bWJlcihsZW5ndGhCaWdJbnQpO1xuICAgICAgb2Zmc2V0ID0gbGVuZ3RoT2Zmc2V0O1xuICAgICAgY29uc3QgY29udGVudEJ1ZmZlciA9IGJ1ZmZlci5zbGljZShvZmZzZXQsIG9mZnNldCArIGxlbmd0aCk7XG4gICAgICBpZiAoY29udGVudEJ1ZmZlci5sZW5ndGggPCBsZW5ndGgpIHtcbiAgICAgICAgdGhyb3cgbmV3IE5vdEVub3VnaEJ5dGVzRXJyb3IoJ2J5dGVzJywgbGVuZ3RoLCBjb250ZW50QnVmZmVyLmxlbmd0aCk7XG4gICAgICB9XG4gICAgICBjb25zdCBbdmFsdWUsIGNvbnRlbnRPZmZzZXRdID0gYnl0ZVNlcmlhbGl6ZXIuZGVzZXJpYWxpemUoY29udGVudEJ1ZmZlcik7XG4gICAgICBvZmZzZXQgKz0gY29udGVudE9mZnNldDtcbiAgICAgIHJldHVybiBbdmFsdWUsIG9mZnNldF07XG4gICAgfSxcbiAgfTtcbn1cbiIsICJleHBvcnQgZnVuY3Rpb24gbWF4U2VyaWFsaXplclNpemVzKHNpemVzOiAobnVtYmVyIHwgbnVsbClbXSk6IG51bWJlciB8IG51bGwge1xuICByZXR1cm4gc2l6ZXMucmVkdWNlKFxuICAgIChhbGwsIHNpemUpID0+IChhbGwgPT09IG51bGwgfHwgc2l6ZSA9PT0gbnVsbCA/IG51bGwgOiBNYXRoLm1heChhbGwsIHNpemUpKSxcbiAgICAwIGFzIG51bWJlciB8IG51bGxcbiAgKTtcbn1cbiIsICJpbXBvcnQge1xuICBCYXNlU2VyaWFsaXplck9wdGlvbnMsXG4gIERlc2VyaWFsaXppbmdFbXB0eUJ1ZmZlckVycm9yLFxuICBTZXJpYWxpemVyLFxuICBtZXJnZUJ5dGVzLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQge1xuICBOdW1iZXJTZXJpYWxpemVyLFxuICB1OCxcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLW51bWJlcnMnO1xuaW1wb3J0IHtcbiAgRW51bURpc2NyaW1pbmF0b3JPdXRPZlJhbmdlRXJyb3IsXG4gIEludmFsaWREYXRhRW51bVZhcmlhbnRFcnJvcixcbn0gZnJvbSAnLi9lcnJvcnMnO1xuaW1wb3J0IHsgbWF4U2VyaWFsaXplclNpemVzIH0gZnJvbSAnLi9tYXhTZXJpYWxpemVyU2l6ZXMnO1xuaW1wb3J0IHsgc3VtU2VyaWFsaXplclNpemVzIH0gZnJvbSAnLi9zdW1TZXJpYWxpemVyU2l6ZXMnO1xuXG4vKipcbiAqIERlZmluZXMgYSBkYXRhIGVudW0gdXNpbmcgZGlzY3JpbWluYXRlZCB1bmlvbiB0eXBlcy5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHNcbiAqIHR5cGUgV2ViUGFnZUV2ZW50ID1cbiAqICAgfCB7IF9fa2luZDogJ3BhZ2V2aWV3JywgdXJsOiBzdHJpbmcgfVxuICogICB8IHsgX19raW5kOiAnY2xpY2snLCB4OiBudW1iZXIsIHk6IG51bWJlciB9O1xuICogYGBgXG4gKlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCB0eXBlIERhdGFFbnVtID0geyBfX2tpbmQ6IHN0cmluZyB9O1xuXG4vKipcbiAqIEV4dHJhY3RzIGEgdmFyaWFudCBmcm9tIGEgZGF0YSBlbnVtLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c1xuICogdHlwZSBXZWJQYWdlRXZlbnQgPVxuICogICB8IHsgX19raW5kOiAncGFnZXZpZXcnLCB1cmw6IHN0cmluZyB9XG4gKiAgIHwgeyBfX2tpbmQ6ICdjbGljaycsIHg6IG51bWJlciwgeTogbnVtYmVyIH07XG4gKiB0eXBlIENsaWNrRXZlbnQgPSBHZXREYXRhRW51bUtpbmQ8V2ViUGFnZUV2ZW50LCAnY2xpY2snPjtcbiAqIC8vIC0+IHsgX19raW5kOiAnY2xpY2snLCB4OiBudW1iZXIsIHk6IG51bWJlciB9XG4gKiBgYGBcbiAqXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IHR5cGUgR2V0RGF0YUVudW1LaW5kPFxuICBUIGV4dGVuZHMgRGF0YUVudW0sXG4gIEsgZXh0ZW5kcyBUWydfX2tpbmQnXVxuPiA9IEV4dHJhY3Q8VCwgeyBfX2tpbmQ6IEsgfT47XG5cbi8qKlxuICogRXh0cmFjdHMgYSB2YXJpYW50IGZyb20gYSBkYXRhIGVudW0gd2l0aG91dCBpdHMgZGlzY3JpbWluYXRvci5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHNcbiAqIHR5cGUgV2ViUGFnZUV2ZW50ID1cbiAqICAgfCB7IF9fa2luZDogJ3BhZ2V2aWV3JywgdXJsOiBzdHJpbmcgfVxuICogICB8IHsgX19raW5kOiAnY2xpY2snLCB4OiBudW1iZXIsIHk6IG51bWJlciB9O1xuICogdHlwZSBDbGlja0V2ZW50ID0gR2V0RGF0YUVudW1LaW5kQ29udGVudDxXZWJQYWdlRXZlbnQsICdjbGljayc+O1xuICogLy8gLT4geyB4OiBudW1iZXIsIHk6IG51bWJlciB9XG4gKiBgYGBcbiAqXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IHR5cGUgR2V0RGF0YUVudW1LaW5kQ29udGVudDxcbiAgVCBleHRlbmRzIERhdGFFbnVtLFxuICBLIGV4dGVuZHMgVFsnX19raW5kJ11cbj4gPSBPbWl0PEV4dHJhY3Q8VCwgeyBfX2tpbmQ6IEsgfT4sICdfX2tpbmQnPjtcblxuLyoqXG4gKiBHZXQgdGhlIG5hbWUgYW5kIHNlcmlhbGl6ZXIgb2YgZWFjaCB2YXJpYW50IGluIGEgZGF0YSBlbnVtLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCB0eXBlIERhdGFFbnVtVG9TZXJpYWxpemVyVHVwbGU8VCBleHRlbmRzIERhdGFFbnVtLCBVIGV4dGVuZHMgVD4gPSBBcnJheTxcbiAgVCBleHRlbmRzIGFueVxuICAgID8gW1xuICAgICAgICBUWydfX2tpbmQnXSxcbiAgICAgICAga2V5b2YgT21pdDxULCAnX19raW5kJz4gZXh0ZW5kcyBuZXZlclxuICAgICAgICAgID8gU2VyaWFsaXplcjxPbWl0PFQsICdfX2tpbmQnPiwgT21pdDxVLCAnX19raW5kJz4+IHwgU2VyaWFsaXplcjx2b2lkPlxuICAgICAgICAgIDogU2VyaWFsaXplcjxPbWl0PFQsICdfX2tpbmQnPiwgT21pdDxVLCAnX19raW5kJz4+XG4gICAgICBdXG4gICAgOiBuZXZlclxuPjtcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBvcHRpb25zIGZvciBkYXRhIGVudW0gc2VyaWFsaXplcnMuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IHR5cGUgRGF0YUVudW1TZXJpYWxpemVyT3B0aW9ucyA9IEJhc2VTZXJpYWxpemVyT3B0aW9ucyAmIHtcbiAgLyoqXG4gICAqIFRoZSBzZXJpYWxpemVyIHRvIHVzZSBmb3IgdGhlIGVudW0gZGlzY3JpbWluYXRvciBwcmVmaXhpbmcgdGhlIHZhcmlhbnQuXG4gICAqIEBkZWZhdWx0VmFsdWUgYHU4KClgXG4gICAqL1xuICBzaXplPzogTnVtYmVyU2VyaWFsaXplcjtcbn07XG5cbi8qKlxuICogQ3JlYXRlcyBhIGRhdGEgZW51bSBzZXJpYWxpemVyLlxuICpcbiAqIEBwYXJhbSB2YXJpYW50cyAtIFRoZSB2YXJpYW50IHNlcmlhbGl6ZXJzIG9mIHRoZSBkYXRhIGVudW0uXG4gKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkYXRhRW51bTxUIGV4dGVuZHMgRGF0YUVudW0sIFUgZXh0ZW5kcyBUID0gVD4oXG4gIHZhcmlhbnRzOiBEYXRhRW51bVRvU2VyaWFsaXplclR1cGxlPFQsIFU+LFxuICBvcHRpb25zOiBEYXRhRW51bVNlcmlhbGl6ZXJPcHRpb25zID0ge31cbik6IFNlcmlhbGl6ZXI8VCwgVT4ge1xuICBjb25zdCBwcmVmaXggPSBvcHRpb25zLnNpemUgPz8gdTgoKTtcbiAgY29uc3QgZmllbGREZXNjcmlwdGlvbnMgPSB2YXJpYW50c1xuICAgIC5tYXAoXG4gICAgICAoW25hbWUsIHNlcmlhbGl6ZXJdKSA9PlxuICAgICAgICBgJHtTdHJpbmcobmFtZSl9JHtzZXJpYWxpemVyID8gYDogJHtzZXJpYWxpemVyLmRlc2NyaXB0aW9ufWAgOiAnJ31gXG4gICAgKVxuICAgIC5qb2luKCcsICcpO1xuICBjb25zdCBhbGxWYXJpYW50SGF2ZVRoZVNhbWVGaXhlZFNpemUgPSB2YXJpYW50cy5ldmVyeShcbiAgICAob25lLCBpLCBhbGwpID0+IG9uZVsxXS5maXhlZFNpemUgPT09IGFsbFswXVsxXS5maXhlZFNpemVcbiAgKTtcbiAgY29uc3QgZml4ZWRWYXJpYW50U2l6ZSA9IGFsbFZhcmlhbnRIYXZlVGhlU2FtZUZpeGVkU2l6ZVxuICAgID8gdmFyaWFudHNbMF1bMV0uZml4ZWRTaXplXG4gICAgOiBudWxsO1xuICBjb25zdCBtYXhWYXJpYW50U2l6ZSA9IG1heFNlcmlhbGl6ZXJTaXplcyhcbiAgICB2YXJpYW50cy5tYXAoKFssIGZpZWxkXSkgPT4gZmllbGQubWF4U2l6ZSlcbiAgKTtcbiAgcmV0dXJuIHtcbiAgICBkZXNjcmlwdGlvbjpcbiAgICAgIG9wdGlvbnMuZGVzY3JpcHRpb24gPz9cbiAgICAgIGBkYXRhRW51bSgke2ZpZWxkRGVzY3JpcHRpb25zfTsgJHtwcmVmaXguZGVzY3JpcHRpb259KWAsXG4gICAgZml4ZWRTaXplOlxuICAgICAgdmFyaWFudHMubGVuZ3RoID09PSAwXG4gICAgICAgID8gcHJlZml4LmZpeGVkU2l6ZVxuICAgICAgICA6IHN1bVNlcmlhbGl6ZXJTaXplcyhbcHJlZml4LmZpeGVkU2l6ZSwgZml4ZWRWYXJpYW50U2l6ZV0pLFxuICAgIG1heFNpemU6XG4gICAgICB2YXJpYW50cy5sZW5ndGggPT09IDBcbiAgICAgICAgPyBwcmVmaXgubWF4U2l6ZVxuICAgICAgICA6IHN1bVNlcmlhbGl6ZXJTaXplcyhbcHJlZml4Lm1heFNpemUsIG1heFZhcmlhbnRTaXplXSksXG4gICAgc2VyaWFsaXplOiAodmFyaWFudDogVCkgPT4ge1xuICAgICAgY29uc3QgZGlzY3JpbWluYXRvciA9IHZhcmlhbnRzLmZpbmRJbmRleChcbiAgICAgICAgKFtrZXldKSA9PiB2YXJpYW50Ll9fa2luZCA9PT0ga2V5XG4gICAgICApO1xuICAgICAgaWYgKGRpc2NyaW1pbmF0b3IgPCAwKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkRGF0YUVudW1WYXJpYW50RXJyb3IoXG4gICAgICAgICAgdmFyaWFudC5fX2tpbmQsXG4gICAgICAgICAgdmFyaWFudHMubWFwKChba2V5XSkgPT4ga2V5KVxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgY29uc3QgdmFyaWFudFByZWZpeCA9IHByZWZpeC5zZXJpYWxpemUoZGlzY3JpbWluYXRvcik7XG4gICAgICBjb25zdCB2YXJpYW50U2VyaWFsaXplciA9IHZhcmlhbnRzW2Rpc2NyaW1pbmF0b3JdWzFdO1xuICAgICAgY29uc3QgdmFyaWFudEJ5dGVzID0gdmFyaWFudFNlcmlhbGl6ZXIuc2VyaWFsaXplKHZhcmlhbnQgYXMgYW55KTtcbiAgICAgIHJldHVybiBtZXJnZUJ5dGVzKFt2YXJpYW50UHJlZml4LCB2YXJpYW50Qnl0ZXNdKTtcbiAgICB9LFxuICAgIGRlc2VyaWFsaXplOiAoYnl0ZXM6IFVpbnQ4QXJyYXksIG9mZnNldCA9IDApID0+IHtcbiAgICAgIGlmIChieXRlcy5zbGljZShvZmZzZXQpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICB0aHJvdyBuZXcgRGVzZXJpYWxpemluZ0VtcHR5QnVmZmVyRXJyb3IoJ2RhdGFFbnVtJyk7XG4gICAgICB9XG4gICAgICBjb25zdCBbZGlzY3JpbWluYXRvciwgZE9mZnNldF0gPSBwcmVmaXguZGVzZXJpYWxpemUoYnl0ZXMsIG9mZnNldCk7XG4gICAgICBvZmZzZXQgPSBkT2Zmc2V0O1xuICAgICAgY29uc3QgdmFyaWFudEZpZWxkID0gdmFyaWFudHNbTnVtYmVyKGRpc2NyaW1pbmF0b3IpXSA/PyBudWxsO1xuICAgICAgaWYgKCF2YXJpYW50RmllbGQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVudW1EaXNjcmltaW5hdG9yT3V0T2ZSYW5nZUVycm9yKFxuICAgICAgICAgIGRpc2NyaW1pbmF0b3IsXG4gICAgICAgICAgMCxcbiAgICAgICAgICB2YXJpYW50cy5sZW5ndGggLSAxXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICBjb25zdCBbdmFyaWFudCwgdk9mZnNldF0gPSB2YXJpYW50RmllbGRbMV0uZGVzZXJpYWxpemUoYnl0ZXMsIG9mZnNldCk7XG4gICAgICBvZmZzZXQgPSB2T2Zmc2V0O1xuICAgICAgcmV0dXJuIFt7IF9fa2luZDogdmFyaWFudEZpZWxkWzBdLCAuLi4odmFyaWFudCA/PyB7fSkgfSBhcyBVLCBvZmZzZXRdO1xuICAgIH0sXG4gIH07XG59XG4iLCAiaW1wb3J0IHtcbiAgQmFzZVNlcmlhbGl6ZXJPcHRpb25zLFxuICBFeHBlY3RlZEZpeGVkU2l6ZVNlcmlhbGl6ZXJFcnJvcixcbiAgbWVyZ2VCeXRlcyxcbiAgU2VyaWFsaXplcixcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWNvcmUnO1xuaW1wb3J0IHsgdTMyIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLW51bWJlcnMnO1xuaW1wb3J0IHsgQXJyYXlMaWtlU2VyaWFsaXplclNpemUgfSBmcm9tICcuL2FycmF5TGlrZVNlcmlhbGl6ZXJTaXplJztcbmltcG9ydCB7XG4gIGdldFJlc29sdmVkU2l6ZSxcbiAgZ2V0U2l6ZURlc2NyaXB0aW9uLFxuICBnZXRTaXplRnJvbUNoaWxkcmVuLFxuICBnZXRTaXplUHJlZml4LFxufSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IEludmFsaWROdW1iZXJPZkl0ZW1zRXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgb3B0aW9ucyBmb3IgYE1hcGAgc2VyaWFsaXplcnMuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IHR5cGUgTWFwU2VyaWFsaXplck9wdGlvbnMgPSBCYXNlU2VyaWFsaXplck9wdGlvbnMgJiB7XG4gIC8qKlxuICAgKiBUaGUgc2l6ZSBvZiB0aGUgbWFwLlxuICAgKiBAZGVmYXVsdFZhbHVlIGB1MzIoKWBcbiAgICovXG4gIHNpemU/OiBBcnJheUxpa2VTZXJpYWxpemVyU2l6ZTtcbn07XG5cbi8qKlxuICogQ3JlYXRlcyBhIHNlcmlhbGl6ZXIgZm9yIGEgbWFwLlxuICpcbiAqIEBwYXJhbSBrZXkgLSBUaGUgc2VyaWFsaXplciB0byB1c2UgZm9yIHRoZSBtYXAncyBrZXlzLlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIHNlcmlhbGl6ZXIgdG8gdXNlIGZvciB0aGUgbWFwJ3MgdmFsdWVzLlxuICogQHBhcmFtIG9wdGlvbnMgLSBBIHNldCBvZiBvcHRpb25zIGZvciB0aGUgc2VyaWFsaXplci5cbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgZnVuY3Rpb24gbWFwPFRLLCBUViwgVUsgZXh0ZW5kcyBUSyA9IFRLLCBVViBleHRlbmRzIFRWID0gVFY+KFxuICBrZXk6IFNlcmlhbGl6ZXI8VEssIFVLPixcbiAgdmFsdWU6IFNlcmlhbGl6ZXI8VFYsIFVWPixcbiAgb3B0aW9uczogTWFwU2VyaWFsaXplck9wdGlvbnMgPSB7fVxuKTogU2VyaWFsaXplcjxNYXA8VEssIFRWPiwgTWFwPFVLLCBVVj4+IHtcbiAgY29uc3Qgc2l6ZSA9IG9wdGlvbnMuc2l6ZSA/PyB1MzIoKTtcbiAgaWYgKFxuICAgIHNpemUgPT09ICdyZW1haW5kZXInICYmXG4gICAgKGtleS5maXhlZFNpemUgPT09IG51bGwgfHwgdmFsdWUuZml4ZWRTaXplID09PSBudWxsKVxuICApIHtcbiAgICB0aHJvdyBuZXcgRXhwZWN0ZWRGaXhlZFNpemVTZXJpYWxpemVyRXJyb3IoXG4gICAgICAnU2VyaWFsaXplcnMgb2YgXCJyZW1haW5kZXJcIiBzaXplIG11c3QgaGF2ZSBmaXhlZC1zaXplIGl0ZW1zLidcbiAgICApO1xuICB9XG4gIHJldHVybiB7XG4gICAgZGVzY3JpcHRpb246XG4gICAgICBvcHRpb25zLmRlc2NyaXB0aW9uID8/XG4gICAgICBgbWFwKCR7a2V5LmRlc2NyaXB0aW9ufSwgJHt2YWx1ZS5kZXNjcmlwdGlvbn07ICR7Z2V0U2l6ZURlc2NyaXB0aW9uKFxuICAgICAgICBzaXplXG4gICAgICApfSlgLFxuICAgIGZpeGVkU2l6ZTogZ2V0U2l6ZUZyb21DaGlsZHJlbihzaXplLCBba2V5LmZpeGVkU2l6ZSwgdmFsdWUuZml4ZWRTaXplXSksXG4gICAgbWF4U2l6ZTogZ2V0U2l6ZUZyb21DaGlsZHJlbihzaXplLCBba2V5Lm1heFNpemUsIHZhbHVlLm1heFNpemVdKSxcbiAgICBzZXJpYWxpemU6IChtYXA6IE1hcDxUSywgVFY+KSA9PiB7XG4gICAgICBpZiAodHlwZW9mIHNpemUgPT09ICdudW1iZXInICYmIG1hcC5zaXplICE9PSBzaXplKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkTnVtYmVyT2ZJdGVtc0Vycm9yKCdtYXAnLCBzaXplLCBtYXAuc2l6ZSk7XG4gICAgICB9XG4gICAgICBjb25zdCBpdGVtQnl0ZXMgPSBBcnJheS5mcm9tKG1hcCwgKFtrLCB2XSkgPT5cbiAgICAgICAgbWVyZ2VCeXRlcyhba2V5LnNlcmlhbGl6ZShrKSwgdmFsdWUuc2VyaWFsaXplKHYpXSlcbiAgICAgICk7XG4gICAgICByZXR1cm4gbWVyZ2VCeXRlcyhbZ2V0U2l6ZVByZWZpeChzaXplLCBtYXAuc2l6ZSksIC4uLml0ZW1CeXRlc10pO1xuICAgIH0sXG4gICAgZGVzZXJpYWxpemU6IChieXRlczogVWludDhBcnJheSwgb2Zmc2V0ID0gMCkgPT4ge1xuICAgICAgY29uc3QgbWFwOiBNYXA8VUssIFVWPiA9IG5ldyBNYXAoKTtcbiAgICAgIGlmICh0eXBlb2Ygc2l6ZSA9PT0gJ29iamVjdCcgJiYgYnl0ZXMuc2xpY2Uob2Zmc2V0KS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgcmV0dXJuIFttYXAsIG9mZnNldF07XG4gICAgICB9XG4gICAgICBjb25zdCBbcmVzb2x2ZWRTaXplLCBuZXdPZmZzZXRdID0gZ2V0UmVzb2x2ZWRTaXplKFxuICAgICAgICBzaXplLFxuICAgICAgICBba2V5LmZpeGVkU2l6ZSwgdmFsdWUuZml4ZWRTaXplXSxcbiAgICAgICAgYnl0ZXMsXG4gICAgICAgIG9mZnNldFxuICAgICAgKTtcbiAgICAgIG9mZnNldCA9IG5ld09mZnNldDtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcmVzb2x2ZWRTaXplOyBpICs9IDEpIHtcbiAgICAgICAgY29uc3QgW2Rlc2VyaWFsaXplZEtleSwga09mZnNldF0gPSBrZXkuZGVzZXJpYWxpemUoYnl0ZXMsIG9mZnNldCk7XG4gICAgICAgIG9mZnNldCA9IGtPZmZzZXQ7XG4gICAgICAgIGNvbnN0IFtkZXNlcmlhbGl6ZWRWYWx1ZSwgdk9mZnNldF0gPSB2YWx1ZS5kZXNlcmlhbGl6ZShieXRlcywgb2Zmc2V0KTtcbiAgICAgICAgb2Zmc2V0ID0gdk9mZnNldDtcbiAgICAgICAgbWFwLnNldChkZXNlcmlhbGl6ZWRLZXksIGRlc2VyaWFsaXplZFZhbHVlKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBbbWFwLCBvZmZzZXRdO1xuICAgIH0sXG4gIH07XG59XG4iLCAiaW1wb3J0IHsgTnVsbGFibGUgfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktb3B0aW9ucyc7XG5pbXBvcnQge1xuICBCYXNlU2VyaWFsaXplck9wdGlvbnMsXG4gIEV4cGVjdGVkRml4ZWRTaXplU2VyaWFsaXplckVycm9yLFxuICBTZXJpYWxpemVyLFxuICBtZXJnZUJ5dGVzLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQge1xuICBOdW1iZXJTZXJpYWxpemVyLFxuICB1OCxcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLW51bWJlcnMnO1xuaW1wb3J0IHsgc3VtU2VyaWFsaXplclNpemVzIH0gZnJvbSAnLi9zdW1TZXJpYWxpemVyU2l6ZXMnO1xuaW1wb3J0IHsgZ2V0U2l6ZURlc2NyaXB0aW9uIH0gZnJvbSAnLi91dGlscyc7XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgb3B0aW9ucyBmb3IgYE51bGxhYmxlYCBzZXJpYWxpemVycy5cbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgdHlwZSBOdWxsYWJsZVNlcmlhbGl6ZXJPcHRpb25zID0gQmFzZVNlcmlhbGl6ZXJPcHRpb25zICYge1xuICAvKipcbiAgICogVGhlIHNlcmlhbGl6ZXIgdG8gdXNlIGZvciB0aGUgYm9vbGVhbiBwcmVmaXguXG4gICAqIEBkZWZhdWx0VmFsdWUgYHU4KClgXG4gICAqL1xuICBwcmVmaXg/OiBOdW1iZXJTZXJpYWxpemVyO1xuICAvKipcbiAgICogV2hldGhlciB0aGUgaXRlbSBzZXJpYWxpemVyIHNob3VsZCBiZSBvZiBmaXhlZCBzaXplLlxuICAgKlxuICAgKiBXaGVuIHRoaXMgaXMgdHJ1ZSwgYSBgbnVsbGAgdmFsdWUgd2lsbCBza2lwIHRoZSBieXRlcyB0aGF0IHdvdWxkXG4gICAqIGhhdmUgYmVlbiB1c2VkIGZvciB0aGUgaXRlbS4gTm90ZSB0aGF0IHRoaXMgd2lsbCBvbmx5IHdvcmsgaWYgdGhlXG4gICAqIGl0ZW0gc2VyaWFsaXplciBpcyBvZiBmaXhlZCBzaXplLlxuICAgKiBAZGVmYXVsdFZhbHVlIGBmYWxzZWBcbiAgICovXG4gIGZpeGVkPzogYm9vbGVhbjtcbn07XG5cbi8qKlxuICogQ3JlYXRlcyBhIHNlcmlhbGl6ZXIgZm9yIGFuIG9wdGlvbmFsIHZhbHVlIHVzaW5nIGBudWxsYCBhcyB0aGUgYE5vbmVgIHZhbHVlLlxuICpcbiAqIEBwYXJhbSBpdGVtIC0gVGhlIHNlcmlhbGl6ZXIgdG8gdXNlIGZvciB0aGUgdmFsdWUgdGhhdCBtYXkgYmUgcHJlc2VudC5cbiAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG51bGxhYmxlPFQsIFUgZXh0ZW5kcyBUID0gVD4oXG4gIGl0ZW06IFNlcmlhbGl6ZXI8VCwgVT4sXG4gIG9wdGlvbnM6IE51bGxhYmxlU2VyaWFsaXplck9wdGlvbnMgPSB7fVxuKTogU2VyaWFsaXplcjxOdWxsYWJsZTxUPiwgTnVsbGFibGU8VT4+IHtcbiAgY29uc3QgcHJlZml4ID0gb3B0aW9ucy5wcmVmaXggPz8gdTgoKTtcbiAgY29uc3QgZml4ZWQgPSBvcHRpb25zLmZpeGVkID8/IGZhbHNlO1xuICBsZXQgZGVzY3JpcHRpb25TdWZmaXggPSBgOyAke2dldFNpemVEZXNjcmlwdGlvbihwcmVmaXgpfWA7XG4gIGxldCBmaXhlZFNpemUgPSBpdGVtLmZpeGVkU2l6ZSA9PT0gMCA/IHByZWZpeC5maXhlZFNpemUgOiBudWxsO1xuICBpZiAoZml4ZWQpIHtcbiAgICBpZiAoaXRlbS5maXhlZFNpemUgPT09IG51bGwgfHwgcHJlZml4LmZpeGVkU2l6ZSA9PT0gbnVsbCkge1xuICAgICAgdGhyb3cgbmV3IEV4cGVjdGVkRml4ZWRTaXplU2VyaWFsaXplckVycm9yKFxuICAgICAgICAnRml4ZWQgbnVsbGFibGVzIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCBmaXhlZC1zaXplIHNlcmlhbGl6ZXJzJ1xuICAgICAgKTtcbiAgICB9XG4gICAgZGVzY3JpcHRpb25TdWZmaXggKz0gJzsgZml4ZWQnO1xuICAgIGZpeGVkU2l6ZSA9IHByZWZpeC5maXhlZFNpemUgKyBpdGVtLmZpeGVkU2l6ZTtcbiAgfVxuICByZXR1cm4ge1xuICAgIGRlc2NyaXB0aW9uOlxuICAgICAgb3B0aW9ucy5kZXNjcmlwdGlvbiA/P1xuICAgICAgYG51bGxhYmxlKCR7aXRlbS5kZXNjcmlwdGlvbiArIGRlc2NyaXB0aW9uU3VmZml4fSlgLFxuICAgIGZpeGVkU2l6ZSxcbiAgICBtYXhTaXplOiBzdW1TZXJpYWxpemVyU2l6ZXMoW3ByZWZpeC5tYXhTaXplLCBpdGVtLm1heFNpemVdKSxcbiAgICBzZXJpYWxpemU6IChvcHRpb246IE51bGxhYmxlPFQ+KSA9PiB7XG4gICAgICBjb25zdCBwcmVmaXhCeXRlID0gcHJlZml4LnNlcmlhbGl6ZShOdW1iZXIob3B0aW9uICE9PSBudWxsKSk7XG4gICAgICBpZiAoZml4ZWQpIHtcbiAgICAgICAgY29uc3QgaXRlbUZpeGVkU2l6ZSA9IGl0ZW0uZml4ZWRTaXplIGFzIG51bWJlcjtcbiAgICAgICAgY29uc3QgaXRlbUJ5dGVzID1cbiAgICAgICAgICBvcHRpb24gIT09IG51bGxcbiAgICAgICAgICAgID8gaXRlbS5zZXJpYWxpemUob3B0aW9uKS5zbGljZSgwLCBpdGVtRml4ZWRTaXplKVxuICAgICAgICAgICAgOiBuZXcgVWludDhBcnJheShpdGVtRml4ZWRTaXplKS5maWxsKDApO1xuICAgICAgICByZXR1cm4gbWVyZ2VCeXRlcyhbcHJlZml4Qnl0ZSwgaXRlbUJ5dGVzXSk7XG4gICAgICB9XG4gICAgICBjb25zdCBpdGVtQnl0ZXMgPVxuICAgICAgICBvcHRpb24gIT09IG51bGwgPyBpdGVtLnNlcmlhbGl6ZShvcHRpb24pIDogbmV3IFVpbnQ4QXJyYXkoKTtcbiAgICAgIHJldHVybiBtZXJnZUJ5dGVzKFtwcmVmaXhCeXRlLCBpdGVtQnl0ZXNdKTtcbiAgICB9LFxuICAgIGRlc2VyaWFsaXplOiAoYnl0ZXM6IFVpbnQ4QXJyYXksIG9mZnNldCA9IDApID0+IHtcbiAgICAgIGlmIChieXRlcy5zbGljZShvZmZzZXQpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICByZXR1cm4gW251bGwsIG9mZnNldF07XG4gICAgICB9XG4gICAgICBjb25zdCBmaXhlZE9mZnNldCA9XG4gICAgICAgIG9mZnNldCArIChwcmVmaXguZml4ZWRTaXplID8/IDApICsgKGl0ZW0uZml4ZWRTaXplID8/IDApO1xuICAgICAgY29uc3QgW2lzU29tZSwgcHJlZml4T2Zmc2V0XSA9IHByZWZpeC5kZXNlcmlhbGl6ZShieXRlcywgb2Zmc2V0KTtcbiAgICAgIG9mZnNldCA9IHByZWZpeE9mZnNldDtcbiAgICAgIGlmIChpc1NvbWUgPT09IDApIHtcbiAgICAgICAgcmV0dXJuIFtudWxsLCBmaXhlZCA/IGZpeGVkT2Zmc2V0IDogb2Zmc2V0XTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IFt2YWx1ZSwgbmV3T2Zmc2V0XSA9IGl0ZW0uZGVzZXJpYWxpemUoYnl0ZXMsIG9mZnNldCk7XG4gICAgICBvZmZzZXQgPSBuZXdPZmZzZXQ7XG4gICAgICByZXR1cm4gW3ZhbHVlLCBmaXhlZCA/IGZpeGVkT2Zmc2V0IDogb2Zmc2V0XTtcbiAgICB9LFxuICB9O1xufVxuIiwgImltcG9ydCB7XG4gIE9wdGlvbixcbiAgT3B0aW9uT3JOdWxsYWJsZSxcbiAgaXNPcHRpb24sXG4gIGlzU29tZSxcbiAgbm9uZSxcbiAgc29tZSxcbiAgd3JhcE51bGxhYmxlLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktb3B0aW9ucyc7XG5pbXBvcnQge1xuICBCYXNlU2VyaWFsaXplck9wdGlvbnMsXG4gIEV4cGVjdGVkRml4ZWRTaXplU2VyaWFsaXplckVycm9yLFxuICBTZXJpYWxpemVyLFxuICBtZXJnZUJ5dGVzLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQge1xuICBOdW1iZXJTZXJpYWxpemVyLFxuICB1OCxcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLW51bWJlcnMnO1xuaW1wb3J0IHsgc3VtU2VyaWFsaXplclNpemVzIH0gZnJvbSAnLi9zdW1TZXJpYWxpemVyU2l6ZXMnO1xuaW1wb3J0IHsgZ2V0U2l6ZURlc2NyaXB0aW9uIH0gZnJvbSAnLi91dGlscyc7XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgb3B0aW9ucyBmb3IgYE9wdGlvbmAgc2VyaWFsaXplcnMuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IHR5cGUgT3B0aW9uU2VyaWFsaXplck9wdGlvbnMgPSBCYXNlU2VyaWFsaXplck9wdGlvbnMgJiB7XG4gIC8qKlxuICAgKiBUaGUgc2VyaWFsaXplciB0byB1c2UgZm9yIHRoZSBib29sZWFuIHByZWZpeC5cbiAgICogQGRlZmF1bHRWYWx1ZSBgdTgoKWBcbiAgICovXG4gIHByZWZpeD86IE51bWJlclNlcmlhbGl6ZXI7XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBpdGVtIHNlcmlhbGl6ZXIgc2hvdWxkIGJlIG9mIGZpeGVkIHNpemUuXG4gICAqXG4gICAqIFdoZW4gdGhpcyBpcyB0cnVlLCBhIGBOb25lYCB2YWx1ZSB3aWxsIHNraXAgdGhlIGJ5dGVzIHRoYXQgd291bGRcbiAgICogaGF2ZSBiZWVuIHVzZWQgZm9yIHRoZSBpdGVtLiBOb3RlIHRoYXQgdGhpcyB3aWxsIG9ubHkgd29yayBpZiB0aGVcbiAgICogaXRlbSBzZXJpYWxpemVyIGlzIG9mIGZpeGVkIHNpemUuXG4gICAqIEBkZWZhdWx0VmFsdWUgYGZhbHNlYFxuICAgKi9cbiAgZml4ZWQ/OiBib29sZWFuO1xufTtcblxuLyoqXG4gKiBDcmVhdGVzIGEgc2VyaWFsaXplciBmb3IgYW4gb3B0aW9uYWwgdmFsdWUgdXNpbmcgdGhlIHtAbGluayBPcHRpb259IHR5cGUuXG4gKlxuICogQHBhcmFtIGl0ZW0gLSBUaGUgc2VyaWFsaXplciB0byB1c2UgZm9yIHRoZSB2YWx1ZSB0aGF0IG1heSBiZSBwcmVzZW50LlxuICogQHBhcmFtIG9wdGlvbnMgLSBBIHNldCBvZiBvcHRpb25zIGZvciB0aGUgc2VyaWFsaXplci5cbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgZnVuY3Rpb24gb3B0aW9uPFQsIFUgZXh0ZW5kcyBUID0gVD4oXG4gIGl0ZW06IFNlcmlhbGl6ZXI8VCwgVT4sXG4gIG9wdGlvbnM6IE9wdGlvblNlcmlhbGl6ZXJPcHRpb25zID0ge31cbik6IFNlcmlhbGl6ZXI8T3B0aW9uT3JOdWxsYWJsZTxUPiwgT3B0aW9uPFU+PiB7XG4gIGNvbnN0IHByZWZpeCA9IG9wdGlvbnMucHJlZml4ID8/IHU4KCk7XG4gIGNvbnN0IGZpeGVkID0gb3B0aW9ucy5maXhlZCA/PyBmYWxzZTtcbiAgbGV0IGRlc2NyaXB0aW9uU3VmZml4ID0gYDsgJHtnZXRTaXplRGVzY3JpcHRpb24ocHJlZml4KX1gO1xuICBsZXQgZml4ZWRTaXplID0gaXRlbS5maXhlZFNpemUgPT09IDAgPyBwcmVmaXguZml4ZWRTaXplIDogbnVsbDtcbiAgaWYgKGZpeGVkKSB7XG4gICAgaWYgKGl0ZW0uZml4ZWRTaXplID09PSBudWxsIHx8IHByZWZpeC5maXhlZFNpemUgPT09IG51bGwpIHtcbiAgICAgIHRocm93IG5ldyBFeHBlY3RlZEZpeGVkU2l6ZVNlcmlhbGl6ZXJFcnJvcihcbiAgICAgICAgJ0ZpeGVkIG9wdGlvbnMgY2FuIG9ubHkgYmUgdXNlZCB3aXRoIGZpeGVkLXNpemUgc2VyaWFsaXplcnMnXG4gICAgICApO1xuICAgIH1cbiAgICBkZXNjcmlwdGlvblN1ZmZpeCArPSAnOyBmaXhlZCc7XG4gICAgZml4ZWRTaXplID0gcHJlZml4LmZpeGVkU2l6ZSArIGl0ZW0uZml4ZWRTaXplO1xuICB9XG4gIHJldHVybiB7XG4gICAgZGVzY3JpcHRpb246XG4gICAgICBvcHRpb25zLmRlc2NyaXB0aW9uID8/IGBvcHRpb24oJHtpdGVtLmRlc2NyaXB0aW9uICsgZGVzY3JpcHRpb25TdWZmaXh9KWAsXG4gICAgZml4ZWRTaXplLFxuICAgIG1heFNpemU6IHN1bVNlcmlhbGl6ZXJTaXplcyhbcHJlZml4Lm1heFNpemUsIGl0ZW0ubWF4U2l6ZV0pLFxuICAgIHNlcmlhbGl6ZTogKG9wdGlvbk9yTnVsbGFibGU6IE9wdGlvbk9yTnVsbGFibGU8VD4pID0+IHtcbiAgICAgIGNvbnN0IG9wdGlvbiA9IGlzT3B0aW9uPFQ+KG9wdGlvbk9yTnVsbGFibGUpXG4gICAgICAgID8gb3B0aW9uT3JOdWxsYWJsZVxuICAgICAgICA6IHdyYXBOdWxsYWJsZShvcHRpb25Pck51bGxhYmxlKTtcblxuICAgICAgY29uc3QgcHJlZml4Qnl0ZSA9IHByZWZpeC5zZXJpYWxpemUoTnVtYmVyKGlzU29tZShvcHRpb24pKSk7XG4gICAgICBpZiAoZml4ZWQpIHtcbiAgICAgICAgY29uc3QgaXRlbUZpeGVkU2l6ZSA9IGl0ZW0uZml4ZWRTaXplIGFzIG51bWJlcjtcbiAgICAgICAgY29uc3QgaXRlbUJ5dGVzID0gaXNTb21lKG9wdGlvbilcbiAgICAgICAgICA/IGl0ZW0uc2VyaWFsaXplKG9wdGlvbi52YWx1ZSkuc2xpY2UoMCwgaXRlbUZpeGVkU2l6ZSlcbiAgICAgICAgICA6IG5ldyBVaW50OEFycmF5KGl0ZW1GaXhlZFNpemUpLmZpbGwoMCk7XG4gICAgICAgIHJldHVybiBtZXJnZUJ5dGVzKFtwcmVmaXhCeXRlLCBpdGVtQnl0ZXNdKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGl0ZW1CeXRlcyA9IGlzU29tZShvcHRpb24pXG4gICAgICAgID8gaXRlbS5zZXJpYWxpemUob3B0aW9uLnZhbHVlKVxuICAgICAgICA6IG5ldyBVaW50OEFycmF5KCk7XG4gICAgICByZXR1cm4gbWVyZ2VCeXRlcyhbcHJlZml4Qnl0ZSwgaXRlbUJ5dGVzXSk7XG4gICAgfSxcbiAgICBkZXNlcmlhbGl6ZTogKGJ5dGVzOiBVaW50OEFycmF5LCBvZmZzZXQgPSAwKSA9PiB7XG4gICAgICBpZiAoYnl0ZXMuc2xpY2Uob2Zmc2V0KS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgcmV0dXJuIFtub25lKCksIG9mZnNldF07XG4gICAgICB9XG4gICAgICBjb25zdCBmaXhlZE9mZnNldCA9XG4gICAgICAgIG9mZnNldCArIChwcmVmaXguZml4ZWRTaXplID8/IDApICsgKGl0ZW0uZml4ZWRTaXplID8/IDApO1xuICAgICAgY29uc3QgW2lzU29tZSwgcHJlZml4T2Zmc2V0XSA9IHByZWZpeC5kZXNlcmlhbGl6ZShieXRlcywgb2Zmc2V0KTtcbiAgICAgIG9mZnNldCA9IHByZWZpeE9mZnNldDtcbiAgICAgIGlmIChpc1NvbWUgPT09IDApIHtcbiAgICAgICAgcmV0dXJuIFtub25lKCksIGZpeGVkID8gZml4ZWRPZmZzZXQgOiBvZmZzZXRdO1xuICAgICAgfVxuICAgICAgY29uc3QgW3ZhbHVlLCBuZXdPZmZzZXRdID0gaXRlbS5kZXNlcmlhbGl6ZShieXRlcywgb2Zmc2V0KTtcbiAgICAgIG9mZnNldCA9IG5ld09mZnNldDtcbiAgICAgIHJldHVybiBbc29tZSh2YWx1ZSksIGZpeGVkID8gZml4ZWRPZmZzZXQgOiBvZmZzZXRdO1xuICAgIH0sXG4gIH07XG59XG4iLCAiaW1wb3J0IHtcbiAgUFVCTElDX0tFWV9MRU5HVEgsXG4gIFB1YmxpY0tleSxcbiAgUHVibGljS2V5SW5wdXQsXG4gIHB1YmxpY0tleUJ5dGVzLFxuICBwdWJsaWNLZXkgYXMgdG9QdWJsaWNLZXksXG59IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1wdWJsaWMta2V5cyc7XG5pbXBvcnQge1xuICBCYXNlU2VyaWFsaXplck9wdGlvbnMsXG4gIERlc2VyaWFsaXppbmdFbXB0eUJ1ZmZlckVycm9yLFxuICBOb3RFbm91Z2hCeXRlc0Vycm9yLFxuICBTZXJpYWxpemVyLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgb3B0aW9ucyBmb3IgYFB1YmxpY0tleWAgc2VyaWFsaXplcnMuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IHR5cGUgUHVibGljS2V5U2VyaWFsaXplck9wdGlvbnMgPSBCYXNlU2VyaWFsaXplck9wdGlvbnM7XG5cbi8qKlxuICogQ3JlYXRlcyBhIHNlcmlhbGl6ZXIgZm9yIGJhc2U1OCBlbmNvZGVkIHB1YmxpYyBrZXlzLlxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHB1YmxpY0tleShcbiAgb3B0aW9uczogUHVibGljS2V5U2VyaWFsaXplck9wdGlvbnMgPSB7fVxuKTogU2VyaWFsaXplcjxQdWJsaWNLZXlJbnB1dCwgUHVibGljS2V5PiB7XG4gIHJldHVybiB7XG4gICAgZGVzY3JpcHRpb246IG9wdGlvbnMuZGVzY3JpcHRpb24gPz8gJ3B1YmxpY0tleScsXG4gICAgZml4ZWRTaXplOiAzMixcbiAgICBtYXhTaXplOiAzMixcbiAgICBzZXJpYWxpemU6ICh2YWx1ZTogUHVibGljS2V5SW5wdXQpID0+IHB1YmxpY0tleUJ5dGVzKHRvUHVibGljS2V5KHZhbHVlKSksXG4gICAgZGVzZXJpYWxpemU6IChieXRlczogVWludDhBcnJheSwgb2Zmc2V0ID0gMCkgPT4ge1xuICAgICAgY29uc3QgcHVia2V5Qnl0ZXMgPSBieXRlcy5zbGljZShvZmZzZXQsIG9mZnNldCArIDMyKTtcbiAgICAgIGlmIChwdWJrZXlCeXRlcy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgdGhyb3cgbmV3IERlc2VyaWFsaXppbmdFbXB0eUJ1ZmZlckVycm9yKCdwdWJsaWNLZXknKTtcbiAgICAgIH1cbiAgICAgIGlmIChwdWJrZXlCeXRlcy5sZW5ndGggPCBQVUJMSUNfS0VZX0xFTkdUSCkge1xuICAgICAgICB0aHJvdyBuZXcgTm90RW5vdWdoQnl0ZXNFcnJvcihcbiAgICAgICAgICAncHVibGljS2V5JyxcbiAgICAgICAgICBQVUJMSUNfS0VZX0xFTkdUSCxcbiAgICAgICAgICBwdWJrZXlCeXRlcy5sZW5ndGhcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBbdG9QdWJsaWNLZXkocHVia2V5Qnl0ZXMpLCBvZmZzZXQgKyAzMl07XG4gICAgfSxcbiAgfTtcbn1cbiIsICJpbXBvcnQge1xuICBCYXNlU2VyaWFsaXplck9wdGlvbnMsXG4gIERlc2VyaWFsaXppbmdFbXB0eUJ1ZmZlckVycm9yLFxuICBTZXJpYWxpemVyLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQge1xuICBOdW1iZXJTZXJpYWxpemVyLFxuICB1OCxcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLW51bWJlcnMnO1xuaW1wb3J0IHtcbiAgRW51bURpc2NyaW1pbmF0b3JPdXRPZlJhbmdlRXJyb3IsXG4gIEludmFsaWRTY2FsYXJFbnVtVmFyaWFudEVycm9yLFxufSBmcm9tICcuL2Vycm9ycyc7XG5cbi8qKlxuICogRGVmaW5lcyBhIHNjYWxhciBlbnVtIGFzIGEgdHlwZSBmcm9tIGl0cyBjb25zdHJ1Y3Rvci5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHNcbiAqIGVudW0gRGlyZWN0aW9uIHsgTGVmdCwgUmlnaHQgfTtcbiAqIHR5cGUgRGlyZWN0aW9uVHlwZSA9IFNjYWxhckVudW08RGlyZWN0aW9uPjtcbiAqIGBgYFxuICpcbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgdHlwZSBTY2FsYXJFbnVtPFQ+ID1cbiAgfCB7IFtrZXk6IG51bWJlciB8IHN0cmluZ106IHN0cmluZyB8IG51bWJlciB8IFQgfVxuICB8IG51bWJlclxuICB8IFQ7XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgb3B0aW9ucyBmb3Igc2NhbGFyIGVudW0gc2VyaWFsaXplcnMuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IHR5cGUgU2NhbGFyRW51bVNlcmlhbGl6ZXJPcHRpb25zID0gQmFzZVNlcmlhbGl6ZXJPcHRpb25zICYge1xuICAvKipcbiAgICogVGhlIHNlcmlhbGl6ZXIgdG8gdXNlIGZvciB0aGUgZW51bSBkaXNjcmltaW5hdG9yLlxuICAgKiBAZGVmYXVsdFZhbHVlIGB1OCgpYFxuICAgKi9cbiAgc2l6ZT86IE51bWJlclNlcmlhbGl6ZXI7XG59O1xuXG4vKipcbiAqIENyZWF0ZXMgYSBzY2FsYXIgZW51bSBzZXJpYWxpemVyLlxuICpcbiAqIEBwYXJhbSBjb25zdHJ1Y3RvciAtIFRoZSBjb25zdHJ1Y3RvciBvZiB0aGUgc2NhbGFyIGVudW0uXG4gKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzY2FsYXJFbnVtPFQ+KFxuICBjb25zdHJ1Y3RvcjogU2NhbGFyRW51bTxUPiAmIHt9LFxuICBvcHRpb25zOiBTY2FsYXJFbnVtU2VyaWFsaXplck9wdGlvbnMgPSB7fVxuKTogU2VyaWFsaXplcjxUPiB7XG4gIGNvbnN0IHByZWZpeCA9IG9wdGlvbnMuc2l6ZSA/PyB1OCgpO1xuICBjb25zdCBlbnVtS2V5cyA9IE9iamVjdC5rZXlzKGNvbnN0cnVjdG9yKTtcbiAgY29uc3QgZW51bVZhbHVlcyA9IE9iamVjdC52YWx1ZXMoY29uc3RydWN0b3IpO1xuICBjb25zdCBpc051bWVyaWNFbnVtID0gZW51bVZhbHVlcy5zb21lKCh2KSA9PiB0eXBlb2YgdiA9PT0gJ251bWJlcicpO1xuICBjb25zdCB2YWx1ZURlc2NyaXB0aW9ucyA9IGVudW1WYWx1ZXNcbiAgICAuZmlsdGVyKCh2KSA9PiB0eXBlb2YgdiA9PT0gJ3N0cmluZycpXG4gICAgLmpvaW4oJywgJyk7XG4gIGNvbnN0IG1pblJhbmdlID0gMDtcbiAgY29uc3QgbWF4UmFuZ2UgPSBpc051bWVyaWNFbnVtXG4gICAgPyBlbnVtVmFsdWVzLmxlbmd0aCAvIDIgLSAxXG4gICAgOiBlbnVtVmFsdWVzLmxlbmd0aCAtIDE7XG4gIGNvbnN0IHN0cmluZ1ZhbHVlczogc3RyaW5nW10gPSBpc051bWVyaWNFbnVtXG4gICAgPyBbLi4uZW51bUtleXNdXG4gICAgOiBbLi4ubmV3IFNldChbLi4uZW51bUtleXMsIC4uLmVudW1WYWx1ZXNdKV07XG4gIGZ1bmN0aW9uIGFzc2VydFZhbGlkVmFyaWFudCh2YXJpYW50OiBudW1iZXIgfCBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBpc0ludmFsaWROdW1iZXIgPVxuICAgICAgdHlwZW9mIHZhcmlhbnQgPT09ICdudW1iZXInICYmICh2YXJpYW50IDwgbWluUmFuZ2UgfHwgdmFyaWFudCA+IG1heFJhbmdlKTtcbiAgICBjb25zdCBpc0ludmFsaWRTdHJpbmcgPVxuICAgICAgdHlwZW9mIHZhcmlhbnQgPT09ICdzdHJpbmcnICYmICFzdHJpbmdWYWx1ZXMuaW5jbHVkZXModmFyaWFudCk7XG4gICAgaWYgKGlzSW52YWxpZE51bWJlciB8fCBpc0ludmFsaWRTdHJpbmcpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkU2NhbGFyRW51bVZhcmlhbnRFcnJvcihcbiAgICAgICAgdmFyaWFudCxcbiAgICAgICAgc3RyaW5nVmFsdWVzLFxuICAgICAgICBtaW5SYW5nZSxcbiAgICAgICAgbWF4UmFuZ2VcbiAgICAgICk7XG4gICAgfVxuICB9XG4gIHJldHVybiB7XG4gICAgZGVzY3JpcHRpb246XG4gICAgICBvcHRpb25zLmRlc2NyaXB0aW9uID8/XG4gICAgICBgZW51bSgke3ZhbHVlRGVzY3JpcHRpb25zfTsgJHtwcmVmaXguZGVzY3JpcHRpb259KWAsXG4gICAgZml4ZWRTaXplOiBwcmVmaXguZml4ZWRTaXplLFxuICAgIG1heFNpemU6IHByZWZpeC5tYXhTaXplLFxuICAgIHNlcmlhbGl6ZTogKHZhbHVlOiBUKSA9PiB7XG4gICAgICBhc3NlcnRWYWxpZFZhcmlhbnQodmFsdWUgYXMgc3RyaW5nIHwgbnVtYmVyKTtcbiAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSByZXR1cm4gcHJlZml4LnNlcmlhbGl6ZSh2YWx1ZSk7XG4gICAgICBjb25zdCB2YWx1ZUluZGV4ID0gZW51bVZhbHVlcy5pbmRleE9mKHZhbHVlKTtcbiAgICAgIGlmICh2YWx1ZUluZGV4ID49IDApIHJldHVybiBwcmVmaXguc2VyaWFsaXplKHZhbHVlSW5kZXgpO1xuICAgICAgcmV0dXJuIHByZWZpeC5zZXJpYWxpemUoZW51bUtleXMuaW5kZXhPZih2YWx1ZSBhcyBzdHJpbmcpKTtcbiAgICB9LFxuICAgIGRlc2VyaWFsaXplOiAoYnl0ZXM6IFVpbnQ4QXJyYXksIG9mZnNldCA9IDApID0+IHtcbiAgICAgIGlmIChieXRlcy5zbGljZShvZmZzZXQpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICB0aHJvdyBuZXcgRGVzZXJpYWxpemluZ0VtcHR5QnVmZmVyRXJyb3IoJ2VudW0nKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IFt2YWx1ZSwgbmV3T2Zmc2V0XSA9IHByZWZpeC5kZXNlcmlhbGl6ZShieXRlcywgb2Zmc2V0KTtcbiAgICAgIGNvbnN0IHZhbHVlQXNOdW1iZXIgPSBOdW1iZXIodmFsdWUpO1xuICAgICAgb2Zmc2V0ID0gbmV3T2Zmc2V0O1xuICAgICAgaWYgKHZhbHVlQXNOdW1iZXIgPCBtaW5SYW5nZSB8fCB2YWx1ZUFzTnVtYmVyID4gbWF4UmFuZ2UpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVudW1EaXNjcmltaW5hdG9yT3V0T2ZSYW5nZUVycm9yKFxuICAgICAgICAgIHZhbHVlQXNOdW1iZXIsXG4gICAgICAgICAgbWluUmFuZ2UsXG4gICAgICAgICAgbWF4UmFuZ2VcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBbXG4gICAgICAgIChpc051bWVyaWNFbnVtID8gdmFsdWVBc051bWJlciA6IGVudW1WYWx1ZXNbdmFsdWVBc051bWJlcl0pIGFzIFQsXG4gICAgICAgIG9mZnNldCxcbiAgICAgIF07XG4gICAgfSxcbiAgfTtcbn1cbiIsICJpbXBvcnQge1xuICBCYXNlU2VyaWFsaXplck9wdGlvbnMsXG4gIEV4cGVjdGVkRml4ZWRTaXplU2VyaWFsaXplckVycm9yLFxuICBtZXJnZUJ5dGVzLFxuICBTZXJpYWxpemVyLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQgeyB1MzIgfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtbnVtYmVycyc7XG5pbXBvcnQgeyBBcnJheUxpa2VTZXJpYWxpemVyU2l6ZSB9IGZyb20gJy4vYXJyYXlMaWtlU2VyaWFsaXplclNpemUnO1xuaW1wb3J0IHtcbiAgZ2V0UmVzb2x2ZWRTaXplLFxuICBnZXRTaXplRGVzY3JpcHRpb24sXG4gIGdldFNpemVGcm9tQ2hpbGRyZW4sXG4gIGdldFNpemVQcmVmaXgsXG59IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgSW52YWxpZE51bWJlck9mSXRlbXNFcnJvciB9IGZyb20gJy4vZXJyb3JzJztcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBvcHRpb25zIGZvciBgU2V0YCBzZXJpYWxpemVycy5cbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgdHlwZSBTZXRTZXJpYWxpemVyT3B0aW9ucyA9IEJhc2VTZXJpYWxpemVyT3B0aW9ucyAmIHtcbiAgLyoqXG4gICAqIFRoZSBzaXplIG9mIHRoZSBzZXQuXG4gICAqIEBkZWZhdWx0VmFsdWUgYHUzMigpYFxuICAgKi9cbiAgc2l6ZT86IEFycmF5TGlrZVNlcmlhbGl6ZXJTaXplO1xufTtcblxuLyoqXG4gKiBDcmVhdGVzIGEgc2VyaWFsaXplciBmb3IgYSBzZXQuXG4gKlxuICogQHBhcmFtIGl0ZW0gLSBUaGUgc2VyaWFsaXplciB0byB1c2UgZm9yIHRoZSBzZXQncyBpdGVtcy5cbiAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNldDxULCBVIGV4dGVuZHMgVCA9IFQ+KFxuICBpdGVtOiBTZXJpYWxpemVyPFQsIFU+LFxuICBvcHRpb25zOiBTZXRTZXJpYWxpemVyT3B0aW9ucyA9IHt9XG4pOiBTZXJpYWxpemVyPFNldDxUPiwgU2V0PFU+PiB7XG4gIGNvbnN0IHNpemUgPSBvcHRpb25zLnNpemUgPz8gdTMyKCk7XG4gIGlmIChzaXplID09PSAncmVtYWluZGVyJyAmJiBpdGVtLmZpeGVkU2l6ZSA9PT0gbnVsbCkge1xuICAgIHRocm93IG5ldyBFeHBlY3RlZEZpeGVkU2l6ZVNlcmlhbGl6ZXJFcnJvcihcbiAgICAgICdTZXJpYWxpemVycyBvZiBcInJlbWFpbmRlclwiIHNpemUgbXVzdCBoYXZlIGZpeGVkLXNpemUgaXRlbXMuJ1xuICAgICk7XG4gIH1cbiAgcmV0dXJuIHtcbiAgICBkZXNjcmlwdGlvbjpcbiAgICAgIG9wdGlvbnMuZGVzY3JpcHRpb24gPz9cbiAgICAgIGBzZXQoJHtpdGVtLmRlc2NyaXB0aW9ufTsgJHtnZXRTaXplRGVzY3JpcHRpb24oc2l6ZSl9KWAsXG4gICAgZml4ZWRTaXplOiBnZXRTaXplRnJvbUNoaWxkcmVuKHNpemUsIFtpdGVtLmZpeGVkU2l6ZV0pLFxuICAgIG1heFNpemU6IGdldFNpemVGcm9tQ2hpbGRyZW4oc2l6ZSwgW2l0ZW0ubWF4U2l6ZV0pLFxuICAgIHNlcmlhbGl6ZTogKHNldDogU2V0PFQ+KSA9PiB7XG4gICAgICBpZiAodHlwZW9mIHNpemUgPT09ICdudW1iZXInICYmIHNldC5zaXplICE9PSBzaXplKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkTnVtYmVyT2ZJdGVtc0Vycm9yKCdzZXQnLCBzaXplLCBzZXQuc2l6ZSk7XG4gICAgICB9XG4gICAgICBjb25zdCBpdGVtQnl0ZXMgPSBBcnJheS5mcm9tKHNldCwgKHZhbHVlKSA9PiBpdGVtLnNlcmlhbGl6ZSh2YWx1ZSkpO1xuICAgICAgcmV0dXJuIG1lcmdlQnl0ZXMoW2dldFNpemVQcmVmaXgoc2l6ZSwgc2V0LnNpemUpLCAuLi5pdGVtQnl0ZXNdKTtcbiAgICB9LFxuICAgIGRlc2VyaWFsaXplOiAoYnl0ZXM6IFVpbnQ4QXJyYXksIG9mZnNldCA9IDApID0+IHtcbiAgICAgIGNvbnN0IHNldDogU2V0PFU+ID0gbmV3IFNldCgpO1xuICAgICAgaWYgKHR5cGVvZiBzaXplID09PSAnb2JqZWN0JyAmJiBieXRlcy5zbGljZShvZmZzZXQpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICByZXR1cm4gW3NldCwgb2Zmc2V0XTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IFtyZXNvbHZlZFNpemUsIG5ld09mZnNldF0gPSBnZXRSZXNvbHZlZFNpemUoXG4gICAgICAgIHNpemUsXG4gICAgICAgIFtpdGVtLmZpeGVkU2l6ZV0sXG4gICAgICAgIGJ5dGVzLFxuICAgICAgICBvZmZzZXRcbiAgICAgICk7XG4gICAgICBvZmZzZXQgPSBuZXdPZmZzZXQ7XG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHJlc29sdmVkU2l6ZTsgaSArPSAxKSB7XG4gICAgICAgIGNvbnN0IFt2YWx1ZSwgbmV3T2Zmc2V0XSA9IGl0ZW0uZGVzZXJpYWxpemUoYnl0ZXMsIG9mZnNldCk7XG4gICAgICAgIG9mZnNldCA9IG5ld09mZnNldDtcbiAgICAgICAgc2V0LmFkZCh2YWx1ZSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gW3NldCwgb2Zmc2V0XTtcbiAgICB9LFxuICB9O1xufVxuIiwgImltcG9ydCB7XG4gIEJhc2VTZXJpYWxpemVyT3B0aW9ucyxcbiAgRGVzZXJpYWxpemluZ0VtcHR5QnVmZmVyRXJyb3IsXG4gIE5vdEVub3VnaEJ5dGVzRXJyb3IsXG4gIFNlcmlhbGl6ZXIsXG4gIGZpeFNlcmlhbGl6ZXIsXG4gIG1lcmdlQnl0ZXMsXG59IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcbmltcG9ydCB7IHV0ZjggfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtZW5jb2RpbmdzJztcbmltcG9ydCB7XG4gIE51bWJlclNlcmlhbGl6ZXIsXG4gIHUzMixcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLW51bWJlcnMnO1xuaW1wb3J0IHsgZ2V0U2l6ZURlc2NyaXB0aW9uIH0gZnJvbSAnLi91dGlscyc7XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgb3B0aW9ucyBmb3Igc3RyaW5nIHNlcmlhbGl6ZXJzLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCB0eXBlIFN0cmluZ1NlcmlhbGl6ZXJPcHRpb25zID0gQmFzZVNlcmlhbGl6ZXJPcHRpb25zICYge1xuICAvKipcbiAgICogVGhlIHNpemUgb2YgdGhlIHN0cmluZy4gSXQgY2FuIGJlIG9uZSBvZiB0aGUgZm9sbG93aW5nOlxuICAgKiAtIGEge0BsaW5rIE51bWJlclNlcmlhbGl6ZXJ9IHRoYXQgcHJlZml4ZXMgdGhlIHN0cmluZyB3aXRoIGl0cyBzaXplLlxuICAgKiAtIGEgZml4ZWQgbnVtYmVyIG9mIGJ5dGVzLlxuICAgKiAtIG9yIGAndmFyaWFibGUnYCB0byB1c2UgdGhlIHJlc3Qgb2YgdGhlIGJ1ZmZlci5cbiAgICogQGRlZmF1bHRWYWx1ZSBgdTMyKClgXG4gICAqL1xuICBzaXplPzogTnVtYmVyU2VyaWFsaXplciB8IG51bWJlciB8ICd2YXJpYWJsZSc7XG4gIC8qKlxuICAgKiBUaGUgc3RyaW5nIHNlcmlhbGl6ZXIgdG8gdXNlIGZvciBlbmNvZGluZyBhbmQgZGVjb2RpbmcgdGhlIGNvbnRlbnQuXG4gICAqIEBkZWZhdWx0VmFsdWUgYHV0ZjhgXG4gICAqL1xuICBlbmNvZGluZz86IFNlcmlhbGl6ZXI8c3RyaW5nPjtcbn07XG5cbi8qKlxuICogQ3JlYXRlcyBhIHN0cmluZyBzZXJpYWxpemVyLlxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHN0cmluZyhcbiAgb3B0aW9uczogU3RyaW5nU2VyaWFsaXplck9wdGlvbnMgPSB7fVxuKTogU2VyaWFsaXplcjxzdHJpbmc+IHtcbiAgY29uc3Qgc2l6ZSA9IG9wdGlvbnMuc2l6ZSA/PyB1MzIoKTtcbiAgY29uc3QgZW5jb2RpbmcgPSBvcHRpb25zLmVuY29kaW5nID8/IHV0Zjg7XG4gIGNvbnN0IGRlc2NyaXB0aW9uID1cbiAgICBvcHRpb25zLmRlc2NyaXB0aW9uID8/XG4gICAgYHN0cmluZygke2VuY29kaW5nLmRlc2NyaXB0aW9ufTsgJHtnZXRTaXplRGVzY3JpcHRpb24oc2l6ZSl9KWA7XG5cbiAgaWYgKHNpemUgPT09ICd2YXJpYWJsZScpIHtcbiAgICByZXR1cm4geyAuLi5lbmNvZGluZywgZGVzY3JpcHRpb24gfTtcbiAgfVxuXG4gIGlmICh0eXBlb2Ygc2l6ZSA9PT0gJ251bWJlcicpIHtcbiAgICByZXR1cm4gZml4U2VyaWFsaXplcihlbmNvZGluZywgc2l6ZSwgZGVzY3JpcHRpb24pO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBkZXNjcmlwdGlvbixcbiAgICBmaXhlZFNpemU6IG51bGwsXG4gICAgbWF4U2l6ZTogbnVsbCxcbiAgICBzZXJpYWxpemU6ICh2YWx1ZTogc3RyaW5nKSA9PiB7XG4gICAgICBjb25zdCBjb250ZW50Qnl0ZXMgPSBlbmNvZGluZy5zZXJpYWxpemUodmFsdWUpO1xuICAgICAgY29uc3QgbGVuZ3RoQnl0ZXMgPSBzaXplLnNlcmlhbGl6ZShjb250ZW50Qnl0ZXMubGVuZ3RoKTtcbiAgICAgIHJldHVybiBtZXJnZUJ5dGVzKFtsZW5ndGhCeXRlcywgY29udGVudEJ5dGVzXSk7XG4gICAgfSxcbiAgICBkZXNlcmlhbGl6ZTogKGJ1ZmZlcjogVWludDhBcnJheSwgb2Zmc2V0ID0gMCkgPT4ge1xuICAgICAgaWYgKGJ1ZmZlci5zbGljZShvZmZzZXQpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICB0aHJvdyBuZXcgRGVzZXJpYWxpemluZ0VtcHR5QnVmZmVyRXJyb3IoJ3N0cmluZycpO1xuICAgICAgfVxuICAgICAgY29uc3QgW2xlbmd0aEJpZ0ludCwgbGVuZ3RoT2Zmc2V0XSA9IHNpemUuZGVzZXJpYWxpemUoYnVmZmVyLCBvZmZzZXQpO1xuICAgICAgY29uc3QgbGVuZ3RoID0gTnVtYmVyKGxlbmd0aEJpZ0ludCk7XG4gICAgICBvZmZzZXQgPSBsZW5ndGhPZmZzZXQ7XG4gICAgICBjb25zdCBjb250ZW50QnVmZmVyID0gYnVmZmVyLnNsaWNlKG9mZnNldCwgb2Zmc2V0ICsgbGVuZ3RoKTtcbiAgICAgIGlmIChjb250ZW50QnVmZmVyLmxlbmd0aCA8IGxlbmd0aCkge1xuICAgICAgICB0aHJvdyBuZXcgTm90RW5vdWdoQnl0ZXNFcnJvcignc3RyaW5nJywgbGVuZ3RoLCBjb250ZW50QnVmZmVyLmxlbmd0aCk7XG4gICAgICB9XG4gICAgICBjb25zdCBbdmFsdWUsIGNvbnRlbnRPZmZzZXRdID0gZW5jb2RpbmcuZGVzZXJpYWxpemUoY29udGVudEJ1ZmZlcik7XG4gICAgICBvZmZzZXQgKz0gY29udGVudE9mZnNldDtcbiAgICAgIHJldHVybiBbdmFsdWUsIG9mZnNldF07XG4gICAgfSxcbiAgfTtcbn1cbiIsICJpbXBvcnQge1xuICBCYXNlU2VyaWFsaXplck9wdGlvbnMsXG4gIFNlcmlhbGl6ZXIsXG4gIG1lcmdlQnl0ZXMsXG59IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcbmltcG9ydCB7IHN1bVNlcmlhbGl6ZXJTaXplcyB9IGZyb20gJy4vc3VtU2VyaWFsaXplclNpemVzJztcblxuLyoqXG4gKiBHZXQgdGhlIG5hbWUgYW5kIHNlcmlhbGl6ZXIgb2YgZWFjaCBmaWVsZCBpbiBhIHN0cnVjdC5cbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgdHlwZSBTdHJ1Y3RUb1NlcmlhbGl6ZXJUdXBsZTxUIGV4dGVuZHMgb2JqZWN0LCBVIGV4dGVuZHMgVD4gPSBBcnJheTxcbiAge1xuICAgIFtLIGluIGtleW9mIFRdOiBbSywgU2VyaWFsaXplcjxUW0tdLCBVW0tdPl07XG4gIH1ba2V5b2YgVF1cbj47XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgb3B0aW9ucyBmb3Igc3RydWN0IHNlcmlhbGl6ZXJzLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCB0eXBlIFN0cnVjdFNlcmlhbGl6ZXJPcHRpb25zID0gQmFzZVNlcmlhbGl6ZXJPcHRpb25zO1xuXG4vKipcbiAqIENyZWF0ZXMgYSBzZXJpYWxpemVyIGZvciBhIGN1c3RvbSBvYmplY3QuXG4gKlxuICogQHBhcmFtIGZpZWxkcyAtIFRoZSBuYW1lIGFuZCBzZXJpYWxpemVyIG9mIGVhY2ggZmllbGQuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzdHJ1Y3Q8VCBleHRlbmRzIG9iamVjdCwgVSBleHRlbmRzIFQgPSBUPihcbiAgZmllbGRzOiBTdHJ1Y3RUb1NlcmlhbGl6ZXJUdXBsZTxULCBVPixcbiAgb3B0aW9uczogU3RydWN0U2VyaWFsaXplck9wdGlvbnMgPSB7fVxuKTogU2VyaWFsaXplcjxULCBVPiB7XG4gIGNvbnN0IGZpZWxkRGVzY3JpcHRpb25zID0gZmllbGRzXG4gICAgLm1hcCgoW25hbWUsIHNlcmlhbGl6ZXJdKSA9PiBgJHtTdHJpbmcobmFtZSl9OiAke3NlcmlhbGl6ZXIuZGVzY3JpcHRpb259YClcbiAgICAuam9pbignLCAnKTtcbiAgcmV0dXJuIHtcbiAgICBkZXNjcmlwdGlvbjogb3B0aW9ucy5kZXNjcmlwdGlvbiA/PyBgc3RydWN0KCR7ZmllbGREZXNjcmlwdGlvbnN9KWAsXG4gICAgZml4ZWRTaXplOiBzdW1TZXJpYWxpemVyU2l6ZXMoZmllbGRzLm1hcCgoWywgZmllbGRdKSA9PiBmaWVsZC5maXhlZFNpemUpKSxcbiAgICBtYXhTaXplOiBzdW1TZXJpYWxpemVyU2l6ZXMoZmllbGRzLm1hcCgoWywgZmllbGRdKSA9PiBmaWVsZC5tYXhTaXplKSksXG4gICAgc2VyaWFsaXplOiAoc3RydWN0OiBUKSA9PiB7XG4gICAgICBjb25zdCBmaWVsZEJ5dGVzID0gZmllbGRzLm1hcCgoW2tleSwgc2VyaWFsaXplcl0pID0+XG4gICAgICAgIHNlcmlhbGl6ZXIuc2VyaWFsaXplKHN0cnVjdFtrZXldKVxuICAgICAgKTtcbiAgICAgIHJldHVybiBtZXJnZUJ5dGVzKGZpZWxkQnl0ZXMpO1xuICAgIH0sXG4gICAgZGVzZXJpYWxpemU6IChieXRlczogVWludDhBcnJheSwgb2Zmc2V0ID0gMCkgPT4ge1xuICAgICAgY29uc3Qgc3RydWN0OiBQYXJ0aWFsPFU+ID0ge307XG4gICAgICBmaWVsZHMuZm9yRWFjaCgoW2tleSwgc2VyaWFsaXplcl0pID0+IHtcbiAgICAgICAgY29uc3QgW3ZhbHVlLCBuZXdPZmZzZXRdID0gc2VyaWFsaXplci5kZXNlcmlhbGl6ZShieXRlcywgb2Zmc2V0KTtcbiAgICAgICAgb2Zmc2V0ID0gbmV3T2Zmc2V0O1xuICAgICAgICBzdHJ1Y3Rba2V5XSA9IHZhbHVlO1xuICAgICAgfSk7XG4gICAgICByZXR1cm4gW3N0cnVjdCBhcyBVLCBvZmZzZXRdO1xuICAgIH0sXG4gIH07XG59XG4iLCAiaW1wb3J0IHtcbiAgV3JhcEluU2VyaWFsaXplcixcbiAgU2VyaWFsaXplcixcbiAgbWVyZ2VCeXRlcyxcbiAgQmFzZVNlcmlhbGl6ZXJPcHRpb25zLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQgeyBzdW1TZXJpYWxpemVyU2l6ZXMgfSBmcm9tICcuL3N1bVNlcmlhbGl6ZXJTaXplcyc7XG5pbXBvcnQgeyBJbnZhbGlkTnVtYmVyT2ZJdGVtc0Vycm9yIH0gZnJvbSAnLi9lcnJvcnMnO1xuXG4vKipcbiAqIERlZmluZXMgdGhlIG9wdGlvbnMgZm9yIHR1cGxlIHNlcmlhbGl6ZXJzLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCB0eXBlIFR1cGxlU2VyaWFsaXplck9wdGlvbnMgPSBCYXNlU2VyaWFsaXplck9wdGlvbnM7XG5cbi8qKlxuICogQ3JlYXRlcyBhIHNlcmlhbGl6ZXIgZm9yIGEgdHVwbGUtbGlrZSBhcnJheS5cbiAqXG4gKiBAcGFyYW0gaXRlbXMgLSBUaGUgc2VyaWFsaXplcnMgdG8gdXNlIGZvciBlYWNoIGl0ZW0gaW4gdGhlIHR1cGxlLlxuICogQHBhcmFtIG9wdGlvbnMgLSBBIHNldCBvZiBvcHRpb25zIGZvciB0aGUgc2VyaWFsaXplci5cbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgZnVuY3Rpb24gdHVwbGU8VCBleHRlbmRzIGFueVtdLCBVIGV4dGVuZHMgVCA9IFQ+KFxuICBpdGVtczogV3JhcEluU2VyaWFsaXplcjxbLi4uVF0sIFsuLi5VXT4sXG4gIG9wdGlvbnM6IFR1cGxlU2VyaWFsaXplck9wdGlvbnMgPSB7fVxuKTogU2VyaWFsaXplcjxULCBVPiB7XG4gIGNvbnN0IGl0ZW1EZXNjcmlwdGlvbnMgPSBpdGVtcy5tYXAoKGl0ZW0pID0+IGl0ZW0uZGVzY3JpcHRpb24pLmpvaW4oJywgJyk7XG4gIHJldHVybiB7XG4gICAgZGVzY3JpcHRpb246IG9wdGlvbnMuZGVzY3JpcHRpb24gPz8gYHR1cGxlKCR7aXRlbURlc2NyaXB0aW9uc30pYCxcbiAgICBmaXhlZFNpemU6IHN1bVNlcmlhbGl6ZXJTaXplcyhpdGVtcy5tYXAoKGl0ZW0pID0+IGl0ZW0uZml4ZWRTaXplKSksXG4gICAgbWF4U2l6ZTogc3VtU2VyaWFsaXplclNpemVzKGl0ZW1zLm1hcCgoaXRlbSkgPT4gaXRlbS5tYXhTaXplKSksXG4gICAgc2VyaWFsaXplOiAodmFsdWU6IFQpID0+IHtcbiAgICAgIGlmICh2YWx1ZS5sZW5ndGggIT09IGl0ZW1zLmxlbmd0aCkge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE51bWJlck9mSXRlbXNFcnJvcihcbiAgICAgICAgICAndHVwbGUnLFxuICAgICAgICAgIGl0ZW1zLmxlbmd0aCxcbiAgICAgICAgICB2YWx1ZS5sZW5ndGhcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBtZXJnZUJ5dGVzKFxuICAgICAgICBpdGVtcy5tYXAoKGl0ZW0sIGluZGV4KSA9PiBpdGVtLnNlcmlhbGl6ZSh2YWx1ZVtpbmRleF0pKVxuICAgICAgKTtcbiAgICB9LFxuICAgIGRlc2VyaWFsaXplOiAoYnl0ZXM6IFVpbnQ4QXJyYXksIG9mZnNldCA9IDApID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlcyA9IFtdIGFzIGFueSBhcyBVO1xuICAgICAgaXRlbXMuZm9yRWFjaCgoc2VyaWFsaXplcikgPT4ge1xuICAgICAgICBjb25zdCBbbmV3VmFsdWUsIG5ld09mZnNldF0gPSBzZXJpYWxpemVyLmRlc2VyaWFsaXplKGJ5dGVzLCBvZmZzZXQpO1xuICAgICAgICB2YWx1ZXMucHVzaChuZXdWYWx1ZSk7XG4gICAgICAgIG9mZnNldCA9IG5ld09mZnNldDtcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIFt2YWx1ZXMsIG9mZnNldF07XG4gICAgfSxcbiAgfTtcbn1cbiIsICJpbXBvcnQge1xuICBCYXNlU2VyaWFsaXplck9wdGlvbnMsXG4gIFNlcmlhbGl6ZXIsXG59IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBvcHRpb25zIGZvciB1bml0IHNlcmlhbGl6ZXJzLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCB0eXBlIFVuaXRTZXJpYWxpemVyT3B0aW9ucyA9IEJhc2VTZXJpYWxpemVyT3B0aW9ucztcblxuLyoqXG4gKiBDcmVhdGVzIGEgdm9pZCBzZXJpYWxpemVyLlxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1bml0KG9wdGlvbnM6IFVuaXRTZXJpYWxpemVyT3B0aW9ucyA9IHt9KTogU2VyaWFsaXplcjx2b2lkPiB7XG4gIHJldHVybiB7XG4gICAgZGVzY3JpcHRpb246IG9wdGlvbnMuZGVzY3JpcHRpb24gPz8gJ3VuaXQnLFxuICAgIGZpeGVkU2l6ZTogMCxcbiAgICBtYXhTaXplOiAwLFxuICAgIHNlcmlhbGl6ZTogKCkgPT4gbmV3IFVpbnQ4QXJyYXkoKSxcbiAgICBkZXNlcmlhbGl6ZTogKF9ieXRlczogVWludDhBcnJheSwgb2Zmc2V0ID0gMCkgPT4gW3VuZGVmaW5lZCwgb2Zmc2V0XSxcbiAgfTtcbn1cbiIsICIndXNlIHN0cmljdCc7XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCAnX19lc01vZHVsZScsIHsgdmFsdWU6IHRydWUgfSk7XG5cbnZhciB1bWlTZXJpYWxpemVyc0NvcmUgPSByZXF1aXJlKCdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZScpO1xudmFyIHVtaVNlcmlhbGl6ZXJzRW5jb2RpbmdzID0gcmVxdWlyZSgnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWVuY29kaW5ncycpO1xudmFyIHVtaVNlcmlhbGl6ZXJzTnVtYmVycyA9IHJlcXVpcmUoJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1udW1iZXJzJyk7XG52YXIgYXJyYXkgPSByZXF1aXJlKCcuL2FycmF5LmNqcycpO1xudmFyIGJpdEFycmF5ID0gcmVxdWlyZSgnLi9iaXRBcnJheS5janMnKTtcbnZhciBib29sID0gcmVxdWlyZSgnLi9ib29sLmNqcycpO1xudmFyIGJ5dGVzID0gcmVxdWlyZSgnLi9ieXRlcy5janMnKTtcbnZhciBkYXRhRW51bSA9IHJlcXVpcmUoJy4vZGF0YUVudW0uY2pzJyk7XG52YXIgZXJyb3JzID0gcmVxdWlyZSgnLi9lcnJvcnMuY2pzJyk7XG52YXIgbWFwID0gcmVxdWlyZSgnLi9tYXAuY2pzJyk7XG52YXIgbnVsbGFibGUgPSByZXF1aXJlKCcuL251bGxhYmxlLmNqcycpO1xudmFyIG9wdGlvbiA9IHJlcXVpcmUoJy4vb3B0aW9uLmNqcycpO1xudmFyIHB1YmxpY0tleSA9IHJlcXVpcmUoJy4vcHVibGljS2V5LmNqcycpO1xudmFyIHNjYWxhckVudW0gPSByZXF1aXJlKCcuL3NjYWxhckVudW0uY2pzJyk7XG52YXIgc2V0ID0gcmVxdWlyZSgnLi9zZXQuY2pzJyk7XG52YXIgc3RyaW5nID0gcmVxdWlyZSgnLi9zdHJpbmcuY2pzJyk7XG52YXIgc3RydWN0ID0gcmVxdWlyZSgnLi9zdHJ1Y3QuY2pzJyk7XG52YXIgdHVwbGUgPSByZXF1aXJlKCcuL3R1cGxlLmNqcycpO1xudmFyIHVuaXQgPSByZXF1aXJlKCcuL3VuaXQuY2pzJyk7XG52YXIgbWF4U2VyaWFsaXplclNpemVzID0gcmVxdWlyZSgnLi9tYXhTZXJpYWxpemVyU2l6ZXMuY2pzJyk7XG52YXIgc3VtU2VyaWFsaXplclNpemVzID0gcmVxdWlyZSgnLi9zdW1TZXJpYWxpemVyU2l6ZXMuY2pzJyk7XG5cblxuXG5leHBvcnRzLmFycmF5ID0gYXJyYXkuYXJyYXk7XG5leHBvcnRzLmJpdEFycmF5ID0gYml0QXJyYXkuYml0QXJyYXk7XG5leHBvcnRzLmJvb2wgPSBib29sLmJvb2w7XG5leHBvcnRzLmJ5dGVzID0gYnl0ZXMuYnl0ZXM7XG5leHBvcnRzLmRhdGFFbnVtID0gZGF0YUVudW0uZGF0YUVudW07XG5leHBvcnRzLkVudW1EaXNjcmltaW5hdG9yT3V0T2ZSYW5nZUVycm9yID0gZXJyb3JzLkVudW1EaXNjcmltaW5hdG9yT3V0T2ZSYW5nZUVycm9yO1xuZXhwb3J0cy5JbnZhbGlkQXJyYXlMaWtlUmVtYWluZGVyU2l6ZUVycm9yID0gZXJyb3JzLkludmFsaWRBcnJheUxpa2VSZW1haW5kZXJTaXplRXJyb3I7XG5leHBvcnRzLkludmFsaWREYXRhRW51bVZhcmlhbnRFcnJvciA9IGVycm9ycy5JbnZhbGlkRGF0YUVudW1WYXJpYW50RXJyb3I7XG5leHBvcnRzLkludmFsaWROdW1iZXJPZkl0ZW1zRXJyb3IgPSBlcnJvcnMuSW52YWxpZE51bWJlck9mSXRlbXNFcnJvcjtcbmV4cG9ydHMuSW52YWxpZFNjYWxhckVudW1WYXJpYW50RXJyb3IgPSBlcnJvcnMuSW52YWxpZFNjYWxhckVudW1WYXJpYW50RXJyb3I7XG5leHBvcnRzLlVucmVjb2duaXplZEFycmF5TGlrZVNlcmlhbGl6ZXJTaXplRXJyb3IgPSBlcnJvcnMuVW5yZWNvZ25pemVkQXJyYXlMaWtlU2VyaWFsaXplclNpemVFcnJvcjtcbmV4cG9ydHMubWFwID0gbWFwLm1hcDtcbmV4cG9ydHMubnVsbGFibGUgPSBudWxsYWJsZS5udWxsYWJsZTtcbmV4cG9ydHMub3B0aW9uID0gb3B0aW9uLm9wdGlvbjtcbmV4cG9ydHMucHVibGljS2V5ID0gcHVibGljS2V5LnB1YmxpY0tleTtcbmV4cG9ydHMuc2NhbGFyRW51bSA9IHNjYWxhckVudW0uc2NhbGFyRW51bTtcbmV4cG9ydHMuc2V0ID0gc2V0LnNldDtcbmV4cG9ydHMuc3RyaW5nID0gc3RyaW5nLnN0cmluZztcbmV4cG9ydHMuc3RydWN0ID0gc3RydWN0LnN0cnVjdDtcbmV4cG9ydHMudHVwbGUgPSB0dXBsZS50dXBsZTtcbmV4cG9ydHMudW5pdCA9IHVuaXQudW5pdDtcbmV4cG9ydHMubWF4U2VyaWFsaXplclNpemVzID0gbWF4U2VyaWFsaXplclNpemVzLm1heFNlcmlhbGl6ZXJTaXplcztcbmV4cG9ydHMuc3VtU2VyaWFsaXplclNpemVzID0gc3VtU2VyaWFsaXplclNpemVzLnN1bVNlcmlhbGl6ZXJTaXplcztcbk9iamVjdC5rZXlzKHVtaVNlcmlhbGl6ZXJzQ29yZSkuZm9yRWFjaChmdW5jdGlvbiAoaykge1xuXHRpZiAoayAhPT0gJ2RlZmF1bHQnICYmICFleHBvcnRzLmhhc093blByb3BlcnR5KGspKSBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgaywge1xuXHRcdGVudW1lcmFibGU6IHRydWUsXG5cdFx0Z2V0OiBmdW5jdGlvbiAoKSB7IHJldHVybiB1bWlTZXJpYWxpemVyc0NvcmVba107IH1cblx0fSk7XG59KTtcbk9iamVjdC5rZXlzKHVtaVNlcmlhbGl6ZXJzRW5jb2RpbmdzKS5mb3JFYWNoKGZ1bmN0aW9uIChrKSB7XG5cdGlmIChrICE9PSAnZGVmYXVsdCcgJiYgIWV4cG9ydHMuaGFzT3duUHJvcGVydHkoaykpIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBrLCB7XG5cdFx0ZW51bWVyYWJsZTogdHJ1ZSxcblx0XHRnZXQ6IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHVtaVNlcmlhbGl6ZXJzRW5jb2RpbmdzW2tdOyB9XG5cdH0pO1xufSk7XG5PYmplY3Qua2V5cyh1bWlTZXJpYWxpemVyc051bWJlcnMpLmZvckVhY2goZnVuY3Rpb24gKGspIHtcblx0aWYgKGsgIT09ICdkZWZhdWx0JyAmJiAhZXhwb3J0cy5oYXNPd25Qcm9wZXJ0eShrKSkgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIGssIHtcblx0XHRlbnVtZXJhYmxlOiB0cnVlLFxuXHRcdGdldDogZnVuY3Rpb24gKCkgeyByZXR1cm4gdW1pU2VyaWFsaXplcnNOdW1iZXJzW2tdOyB9XG5cdH0pO1xufSk7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5janMubWFwXG4iLCAiaW1wb3J0IHtcbiAgU2VyaWFsaXplciBhcyBfU2VyaWFsaXplcixcbiAgTnVtYmVyU2VyaWFsaXplciBhcyBfTnVtYmVyU2VyaWFsaXplcixcbiAgV3JhcEluU2VyaWFsaXplciBhcyBfV3JhcEluU2VyaWFsaXplcixcbiAgbWFwU2VyaWFsaXplciBhcyBfbWFwU2VyaWFsaXplcixcbiAgZml4U2VyaWFsaXplciBhcyBfZml4U2VyaWFsaXplcixcbiAgcmV2ZXJzZVNlcmlhbGl6ZXIgYXMgX3JldmVyc2VTZXJpYWxpemVyLFxuICBtZXJnZUJ5dGVzIGFzIF9tZXJnZUJ5dGVzLFxuICBwYWRCeXRlcyBhcyBfcGFkQnl0ZXMsXG4gIGZpeEJ5dGVzIGFzIF9maXhCeXRlcyxcbiAgdXRmOCBhcyBfdXRmOCxcbiAgYmFzZVggYXMgX2Jhc2VYLFxuICBiYXNlMTAgYXMgX2Jhc2UxMCxcbiAgYmFzZTU4IGFzIF9iYXNlNTgsXG4gIGJhc2U2NCBhcyBfYmFzZTY0LFxuICBiYXNlMTYgYXMgX2Jhc2UxNixcbiAgYml0QXJyYXkgYXMgX2JpdEFycmF5LFxuICByZW1vdmVOdWxsQ2hhcmFjdGVycyBhcyBfcmVtb3ZlTnVsbENoYXJhY3RlcnMsXG4gIHBhZE51bGxDaGFyYWN0ZXJzIGFzIF9wYWROdWxsQ2hhcmFjdGVycyxcbiAgU3RydWN0VG9TZXJpYWxpemVyVHVwbGUgYXMgX1N0cnVjdFRvU2VyaWFsaXplclR1cGxlLFxuICBEYXRhRW51bVRvU2VyaWFsaXplclR1cGxlIGFzIF9EYXRhRW51bVRvU2VyaWFsaXplclR1cGxlLFxuICBFbmRpYW4gYXMgX0VuZGlhbixcbiAgQXJyYXlMaWtlU2VyaWFsaXplclNpemUgYXMgX0FycmF5TGlrZVNlcmlhbGl6ZXJTaXplLFxuICBCYXNlU2VyaWFsaXplck9wdGlvbnMgYXMgX0Jhc2VTZXJpYWxpemVyT3B0aW9ucyxcbiAgVHVwbGVTZXJpYWxpemVyT3B0aW9ucyBhcyBfVHVwbGVTZXJpYWxpemVyT3B0aW9ucyxcbiAgQXJyYXlTZXJpYWxpemVyT3B0aW9ucyBhcyBfQXJyYXlTZXJpYWxpemVyT3B0aW9ucyxcbiAgTWFwU2VyaWFsaXplck9wdGlvbnMgYXMgX01hcFNlcmlhbGl6ZXJPcHRpb25zLFxuICBTZXRTZXJpYWxpemVyT3B0aW9ucyBhcyBfU2V0U2VyaWFsaXplck9wdGlvbnMsXG4gIE9wdGlvblNlcmlhbGl6ZXJPcHRpb25zIGFzIF9PcHRpb25TZXJpYWxpemVyT3B0aW9ucyxcbiAgTnVsbGFibGVTZXJpYWxpemVyT3B0aW9ucyBhcyBfTnVsbGFibGVTZXJpYWxpemVyT3B0aW9ucyxcbiAgU3RydWN0U2VyaWFsaXplck9wdGlvbnMgYXMgX1N0cnVjdFNlcmlhbGl6ZXJPcHRpb25zLFxuICBTY2FsYXJFbnVtU2VyaWFsaXplck9wdGlvbnMgYXMgX1NjYWxhckVudW1TZXJpYWxpemVyT3B0aW9ucyxcbiAgRGF0YUVudW1TZXJpYWxpemVyT3B0aW9ucyBhcyBfRGF0YUVudW1TZXJpYWxpemVyT3B0aW9ucyxcbiAgU3RyaW5nU2VyaWFsaXplck9wdGlvbnMgYXMgX1N0cmluZ1NlcmlhbGl6ZXJPcHRpb25zLFxuICBCb29sU2VyaWFsaXplck9wdGlvbnMgYXMgX0Jvb2xTZXJpYWxpemVyT3B0aW9ucyxcbiAgVW5pdFNlcmlhbGl6ZXJPcHRpb25zIGFzIF9Vbml0U2VyaWFsaXplck9wdGlvbnMsXG4gIFNpbmdsZUJ5dGVOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyBhcyBfU2luZ2xlQnl0ZU51bWJlclNlcmlhbGl6ZXJPcHRpb25zLFxuICBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyBhcyBfTnVtYmVyU2VyaWFsaXplck9wdGlvbnMsXG4gIEJ5dGVzU2VyaWFsaXplck9wdGlvbnMgYXMgX0J5dGVzU2VyaWFsaXplck9wdGlvbnMsXG4gIFB1YmxpY0tleVNlcmlhbGl6ZXJPcHRpb25zIGFzIF9QdWJsaWNLZXlTZXJpYWxpemVyT3B0aW9ucyxcbiAgU2NhbGFyRW51bSBhcyBfU2NhbGFyRW51bSxcbiAgRGF0YUVudW0gYXMgX0RhdGFFbnVtLFxuICBHZXREYXRhRW51bUtpbmQgYXMgX0dldERhdGFFbnVtS2luZCxcbiAgR2V0RGF0YUVudW1LaW5kQ29udGVudCBhcyBfR2V0RGF0YUVudW1LaW5kQ29udGVudCxcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzJztcblxuLyoqIEBkZXByZWNhdGVkIGltcG9ydCBmcm9tIFwiQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NlcmlhbGl6ZXJzXCIgaW5zdGVhZC4gKi9cbmV4cG9ydCB0eXBlIFNlcmlhbGl6ZXI8RnJvbSwgVG8gZXh0ZW5kcyBGcm9tID0gRnJvbT4gPSBfU2VyaWFsaXplcjxGcm9tLCBUbz47XG5cbi8qKiBAZGVwcmVjYXRlZCBpbXBvcnQgZnJvbSBcIkBtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zZXJpYWxpemVyc1wiIGluc3RlYWQuICovXG5leHBvcnQgdHlwZSBOdW1iZXJTZXJpYWxpemVyID0gX051bWJlclNlcmlhbGl6ZXI7XG5cbi8qKiBAZGVwcmVjYXRlZCBpbXBvcnQgZnJvbSBcIkBtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zZXJpYWxpemVyc1wiIGluc3RlYWQuICovXG5leHBvcnQgdHlwZSBXcmFwSW5TZXJpYWxpemVyPEZyb20sIFRvIGV4dGVuZHMgRnJvbSA9IEZyb20+ID0gX1dyYXBJblNlcmlhbGl6ZXI8XG4gIEZyb20sXG4gIFRvXG4+O1xuXG4vKiogQGRlcHJlY2F0ZWQgaW1wb3J0IGZyb20gXCJAbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc2VyaWFsaXplcnNcIiBpbnN0ZWFkLiAqL1xuZXhwb3J0IGNvbnN0IG1hcFNlcmlhbGl6ZXIgPSBfbWFwU2VyaWFsaXplcjtcblxuLyoqIEBkZXByZWNhdGVkIGltcG9ydCBmcm9tIFwiQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NlcmlhbGl6ZXJzXCIgaW5zdGVhZC4gKi9cbmV4cG9ydCBjb25zdCBmaXhTZXJpYWxpemVyID0gX2ZpeFNlcmlhbGl6ZXI7XG5cbi8qKiBAZGVwcmVjYXRlZCBpbXBvcnQgZnJvbSBcIkBtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zZXJpYWxpemVyc1wiIGluc3RlYWQuICovXG5leHBvcnQgY29uc3QgcmV2ZXJzZVNlcmlhbGl6ZXIgPSBfcmV2ZXJzZVNlcmlhbGl6ZXI7XG5cbi8qKiBAZGVwcmVjYXRlZCBpbXBvcnQgZnJvbSBcIkBtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zZXJpYWxpemVyc1wiIGluc3RlYWQuICovXG5leHBvcnQgY29uc3QgbWVyZ2VCeXRlcyA9IF9tZXJnZUJ5dGVzO1xuXG4vKiogQGRlcHJlY2F0ZWQgaW1wb3J0IGZyb20gXCJAbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc2VyaWFsaXplcnNcIiBpbnN0ZWFkLiAqL1xuZXhwb3J0IGNvbnN0IHBhZEJ5dGVzID0gX3BhZEJ5dGVzO1xuXG4vKiogQGRlcHJlY2F0ZWQgaW1wb3J0IGZyb20gXCJAbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc2VyaWFsaXplcnNcIiBpbnN0ZWFkLiAqL1xuZXhwb3J0IGNvbnN0IGZpeEJ5dGVzID0gX2ZpeEJ5dGVzO1xuXG4vKiogQGRlcHJlY2F0ZWQgaW1wb3J0IGZyb20gXCJAbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc2VyaWFsaXplcnNcIiBpbnN0ZWFkLiAqL1xuZXhwb3J0IGNvbnN0IHV0ZjggPSBfdXRmODtcblxuLyoqIEBkZXByZWNhdGVkIGltcG9ydCBmcm9tIFwiQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NlcmlhbGl6ZXJzXCIgaW5zdGVhZC4gKi9cbmV4cG9ydCBjb25zdCBiYXNlWCA9IF9iYXNlWDtcblxuLyoqIEBkZXByZWNhdGVkIGltcG9ydCBmcm9tIFwiQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NlcmlhbGl6ZXJzXCIgaW5zdGVhZC4gKi9cbmV4cG9ydCBjb25zdCBiYXNlMTAgPSBfYmFzZTEwO1xuXG4vKiogQGRlcHJlY2F0ZWQgaW1wb3J0IGZyb20gXCJAbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc2VyaWFsaXplcnNcIiBpbnN0ZWFkLiAqL1xuZXhwb3J0IGNvbnN0IGJhc2U1OCA9IF9iYXNlNTg7XG5cbi8qKiBAZGVwcmVjYXRlZCBpbXBvcnQgZnJvbSBcIkBtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zZXJpYWxpemVyc1wiIGluc3RlYWQuICovXG5leHBvcnQgY29uc3QgYmFzZTY0ID0gX2Jhc2U2NDtcblxuLyoqIEBkZXByZWNhdGVkIGltcG9ydCBmcm9tIFwiQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NlcmlhbGl6ZXJzXCIgaW5zdGVhZC4gKi9cbmV4cG9ydCBjb25zdCBiYXNlMTYgPSBfYmFzZTE2O1xuXG4vKiogQGRlcHJlY2F0ZWQgaW1wb3J0IGZyb20gXCJAbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc2VyaWFsaXplcnNcIiBpbnN0ZWFkLiAqL1xuZXhwb3J0IGNvbnN0IGJpdEFycmF5ID0gX2JpdEFycmF5O1xuXG4vKiogQGRlcHJlY2F0ZWQgaW1wb3J0IGZyb20gXCJAbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc2VyaWFsaXplcnNcIiBpbnN0ZWFkLiAqL1xuZXhwb3J0IGNvbnN0IHJlbW92ZU51bGxDaGFyYWN0ZXJzID0gX3JlbW92ZU51bGxDaGFyYWN0ZXJzO1xuXG4vKiogQGRlcHJlY2F0ZWQgaW1wb3J0IGZyb20gXCJAbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc2VyaWFsaXplcnNcIiBpbnN0ZWFkLiAqL1xuZXhwb3J0IGNvbnN0IHBhZE51bGxDaGFyYWN0ZXJzID0gX3BhZE51bGxDaGFyYWN0ZXJzO1xuXG4vKiogQGRlcHJlY2F0ZWQgaW1wb3J0IGZyb20gXCJAbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc2VyaWFsaXplcnNcIiBpbnN0ZWFkLiAqL1xuZXhwb3J0IHR5cGUgU3RydWN0VG9TZXJpYWxpemVyVHVwbGU8XG4gIFQgZXh0ZW5kcyBvYmplY3QsXG4gIFUgZXh0ZW5kcyBUXG4+ID0gX1N0cnVjdFRvU2VyaWFsaXplclR1cGxlPFQsIFU+O1xuXG4vKiogQGRlcHJlY2F0ZWQgaW1wb3J0IGZyb20gXCJAbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc2VyaWFsaXplcnNcIiBpbnN0ZWFkLiAqL1xuZXhwb3J0IHR5cGUgRGF0YUVudW1Ub1NlcmlhbGl6ZXJUdXBsZTxcbiAgVCBleHRlbmRzIF9EYXRhRW51bSxcbiAgVSBleHRlbmRzIFRcbj4gPSBfRGF0YUVudW1Ub1NlcmlhbGl6ZXJUdXBsZTxULCBVPjtcblxuLyoqIEBkZXByZWNhdGVkIGltcG9ydCBmcm9tIFwiQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NlcmlhbGl6ZXJzXCIgaW5zdGVhZC4gKi9cbmV4cG9ydCBjb25zdCBFbmRpYW4gPSBfRW5kaWFuO1xuXG4vKiogQGRlcHJlY2F0ZWQgaW1wb3J0IGZyb20gXCJAbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc2VyaWFsaXplcnNcIiBpbnN0ZWFkLiAqL1xuZXhwb3J0IHR5cGUgQXJyYXlMaWtlU2VyaWFsaXplclNpemUgPSBfQXJyYXlMaWtlU2VyaWFsaXplclNpemU7XG5cbi8qKiBAZGVwcmVjYXRlZCBpbXBvcnQgZnJvbSBcIkBtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zZXJpYWxpemVyc1wiIGluc3RlYWQuICovXG5leHBvcnQgdHlwZSBCYXNlU2VyaWFsaXplck9wdGlvbnMgPSBfQmFzZVNlcmlhbGl6ZXJPcHRpb25zO1xuXG4vKiogQGRlcHJlY2F0ZWQgaW1wb3J0IGZyb20gXCJAbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc2VyaWFsaXplcnNcIiBpbnN0ZWFkLiAqL1xuZXhwb3J0IHR5cGUgVHVwbGVTZXJpYWxpemVyT3B0aW9ucyA9IF9UdXBsZVNlcmlhbGl6ZXJPcHRpb25zO1xuXG4vKiogQGRlcHJlY2F0ZWQgaW1wb3J0IGZyb20gXCJAbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc2VyaWFsaXplcnNcIiBpbnN0ZWFkLiAqL1xuZXhwb3J0IHR5cGUgQXJyYXlTZXJpYWxpemVyT3B0aW9ucyA9IF9BcnJheVNlcmlhbGl6ZXJPcHRpb25zO1xuXG4vKiogQGRlcHJlY2F0ZWQgaW1wb3J0IGZyb20gXCJAbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc2VyaWFsaXplcnNcIiBpbnN0ZWFkLiAqL1xuZXhwb3J0IHR5cGUgTWFwU2VyaWFsaXplck9wdGlvbnMgPSBfTWFwU2VyaWFsaXplck9wdGlvbnM7XG5cbi8qKiBAZGVwcmVjYXRlZCBpbXBvcnQgZnJvbSBcIkBtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zZXJpYWxpemVyc1wiIGluc3RlYWQuICovXG5leHBvcnQgdHlwZSBTZXRTZXJpYWxpemVyT3B0aW9ucyA9IF9TZXRTZXJpYWxpemVyT3B0aW9ucztcblxuLyoqIEBkZXByZWNhdGVkIGltcG9ydCBmcm9tIFwiQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NlcmlhbGl6ZXJzXCIgaW5zdGVhZC4gKi9cbmV4cG9ydCB0eXBlIE9wdGlvblNlcmlhbGl6ZXJPcHRpb25zID0gX09wdGlvblNlcmlhbGl6ZXJPcHRpb25zO1xuXG4vKiogQGRlcHJlY2F0ZWQgaW1wb3J0IGZyb20gXCJAbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc2VyaWFsaXplcnNcIiBpbnN0ZWFkLiAqL1xuZXhwb3J0IHR5cGUgTnVsbGFibGVTZXJpYWxpemVyT3B0aW9ucyA9IF9OdWxsYWJsZVNlcmlhbGl6ZXJPcHRpb25zO1xuXG4vKiogQGRlcHJlY2F0ZWQgaW1wb3J0IGZyb20gXCJAbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc2VyaWFsaXplcnNcIiBpbnN0ZWFkLiAqL1xuZXhwb3J0IHR5cGUgU3RydWN0U2VyaWFsaXplck9wdGlvbnMgPSBfU3RydWN0U2VyaWFsaXplck9wdGlvbnM7XG5cbi8qKiBAZGVwcmVjYXRlZCBpbXBvcnQgZnJvbSBcIkBtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zZXJpYWxpemVyc1wiIGluc3RlYWQuICovXG5leHBvcnQgdHlwZSBFbnVtU2VyaWFsaXplck9wdGlvbnMgPSBfU2NhbGFyRW51bVNlcmlhbGl6ZXJPcHRpb25zO1xuXG4vKiogQGRlcHJlY2F0ZWQgaW1wb3J0IGZyb20gXCJAbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc2VyaWFsaXplcnNcIiBpbnN0ZWFkLiAqL1xuZXhwb3J0IHR5cGUgRGF0YUVudW1TZXJpYWxpemVyT3B0aW9ucyA9IF9EYXRhRW51bVNlcmlhbGl6ZXJPcHRpb25zO1xuXG4vKiogQGRlcHJlY2F0ZWQgaW1wb3J0IGZyb20gXCJAbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc2VyaWFsaXplcnNcIiBpbnN0ZWFkLiAqL1xuZXhwb3J0IHR5cGUgU3RyaW5nU2VyaWFsaXplck9wdGlvbnMgPSBfU3RyaW5nU2VyaWFsaXplck9wdGlvbnM7XG5cbi8qKiBAZGVwcmVjYXRlZCBpbXBvcnQgZnJvbSBcIkBtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zZXJpYWxpemVyc1wiIGluc3RlYWQuICovXG5leHBvcnQgdHlwZSBCb29sU2VyaWFsaXplck9wdGlvbnMgPSBfQm9vbFNlcmlhbGl6ZXJPcHRpb25zO1xuXG4vKiogQGRlcHJlY2F0ZWQgaW1wb3J0IGZyb20gXCJAbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc2VyaWFsaXplcnNcIiBpbnN0ZWFkLiAqL1xuZXhwb3J0IHR5cGUgVW5pdFNlcmlhbGl6ZXJPcHRpb25zID0gX1VuaXRTZXJpYWxpemVyT3B0aW9ucztcblxuLyoqIEBkZXByZWNhdGVkIGltcG9ydCBmcm9tIFwiQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NlcmlhbGl6ZXJzXCIgaW5zdGVhZC4gKi9cbmV4cG9ydCB0eXBlIFNpbmdsZUJ5dGVOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyA9XG4gIF9TaW5nbGVCeXRlTnVtYmVyU2VyaWFsaXplck9wdGlvbnM7XG5cbi8qKiBAZGVwcmVjYXRlZCBpbXBvcnQgZnJvbSBcIkBtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zZXJpYWxpemVyc1wiIGluc3RlYWQuICovXG5leHBvcnQgdHlwZSBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyA9IF9OdW1iZXJTZXJpYWxpemVyT3B0aW9ucztcblxuLyoqIEBkZXByZWNhdGVkIGltcG9ydCBmcm9tIFwiQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NlcmlhbGl6ZXJzXCIgaW5zdGVhZC4gKi9cbmV4cG9ydCB0eXBlIEJ5dGVzU2VyaWFsaXplck9wdGlvbnMgPSBfQnl0ZXNTZXJpYWxpemVyT3B0aW9ucztcblxuLyoqIEBkZXByZWNhdGVkIGltcG9ydCBmcm9tIFwiQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NlcmlhbGl6ZXJzXCIgaW5zdGVhZC4gKi9cbmV4cG9ydCB0eXBlIFB1YmxpY0tleVNlcmlhbGl6ZXJPcHRpb25zID0gX1B1YmxpY0tleVNlcmlhbGl6ZXJPcHRpb25zO1xuXG4vKiogQGRlcHJlY2F0ZWQgaW1wb3J0IGZyb20gXCJAbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc2VyaWFsaXplcnNcIiBpbnN0ZWFkLiAqL1xuZXhwb3J0IHR5cGUgU2NhbGFyRW51bTxUPiA9IF9TY2FsYXJFbnVtPFQ+O1xuXG4vKiogQGRlcHJlY2F0ZWQgaW1wb3J0IGZyb20gXCJAbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc2VyaWFsaXplcnNcIiBpbnN0ZWFkLiAqL1xuZXhwb3J0IHR5cGUgRGF0YUVudW0gPSBfRGF0YUVudW07XG5cbi8qKiBAZGVwcmVjYXRlZCBpbXBvcnQgZnJvbSBcIkBtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zZXJpYWxpemVyc1wiIGluc3RlYWQuICovXG5leHBvcnQgdHlwZSBHZXREYXRhRW51bUtpbmQ8XG4gIFQgZXh0ZW5kcyBfRGF0YUVudW0sXG4gIEsgZXh0ZW5kcyBUWydfX2tpbmQnXVxuPiA9IF9HZXREYXRhRW51bUtpbmQ8VCwgSz47XG5cbi8qKiBAZGVwcmVjYXRlZCBpbXBvcnQgZnJvbSBcIkBtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zZXJpYWxpemVyc1wiIGluc3RlYWQuICovXG5leHBvcnQgdHlwZSBHZXREYXRhRW51bUtpbmRDb250ZW50PFxuICBUIGV4dGVuZHMgX0RhdGFFbnVtLFxuICBLIGV4dGVuZHMgVFsnX19raW5kJ11cbj4gPSBfR2V0RGF0YUVudW1LaW5kQ29udGVudDxULCBLPjtcbiIsICIvKiogQGNhdGVnb3J5IEVycm9ycyAqL1xuZXhwb3J0IGNsYXNzIFVtaUVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICByZWFkb25seSBuYW1lOiBzdHJpbmcgPSAnVW1pRXJyb3InO1xuXG4gIHJlYWRvbmx5IHNvdXJjZTogVW1pRXJyb3JTb3VyY2U7XG5cbiAgcmVhZG9ubHkgc291cmNlRGV0YWlscz86IHN0cmluZztcblxuICByZWFkb25seSBjYXVzZT86IEVycm9yO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIG1lc3NhZ2U6IHN0cmluZyxcbiAgICBzb3VyY2U6IFVtaUVycm9yU291cmNlLFxuICAgIHNvdXJjZURldGFpbHM/OiBzdHJpbmcsXG4gICAgY2F1c2U/OiBFcnJvclxuICApIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgICB0aGlzLnNvdXJjZSA9IHNvdXJjZTtcbiAgICB0aGlzLnNvdXJjZURldGFpbHMgPSBzb3VyY2VEZXRhaWxzO1xuICAgIHRoaXMuY2F1c2UgPSBjYXVzZTtcbiAgICB0aGlzLm1lc3NhZ2UgPSBgJHt0aGlzLm1lc3NhZ2V9XFxuXFxuU291cmNlOiAke3RoaXMuZ2V0RnVsbFNvdXJjZSgpfSR7XG4gICAgICB0aGlzLmNhdXNlID8gYFxcblxcbkNhdXNlZCBCeTogJHt0aGlzLmNhdXNlfWAgOiAnJ1xuICAgIH1cXG5gO1xuICB9XG5cbiAgZ2V0Q2FwaXRhbGl6ZWRTb3VyY2UoKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5zb3VyY2UgPT09ICdzZGsnIHx8IHRoaXMuc291cmNlID09PSAncnBjJykge1xuICAgICAgcmV0dXJuIHRoaXMuc291cmNlLnRvVXBwZXJDYXNlKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuc291cmNlWzBdLnRvVXBwZXJDYXNlKCkgKyB0aGlzLnNvdXJjZS5zbGljZSgxKTtcbiAgfVxuXG4gIGdldEZ1bGxTb3VyY2UoKTogc3RyaW5nIHtcbiAgICBjb25zdCBjYXBpdGFsaXplZFNvdXJjZSA9IHRoaXMuZ2V0Q2FwaXRhbGl6ZWRTb3VyY2UoKTtcbiAgICBjb25zdCBzb3VyY2VEZXRhaWxzID0gdGhpcy5zb3VyY2VEZXRhaWxzID8gYCA+ICR7dGhpcy5zb3VyY2VEZXRhaWxzfWAgOiAnJztcblxuICAgIHJldHVybiBjYXBpdGFsaXplZFNvdXJjZSArIHNvdXJjZURldGFpbHM7XG4gIH1cblxuICB0b1N0cmluZygpIHtcbiAgICByZXR1cm4gYFske3RoaXMubmFtZX1dICR7dGhpcy5tZXNzYWdlfWA7XG4gIH1cbn1cblxuLyoqIEBjYXRlZ29yeSBFcnJvcnMgKi9cbmV4cG9ydCB0eXBlIFVtaUVycm9yU291cmNlID0gJ3NkaycgfCAnbmV0d29yaycgfCAncnBjJyB8ICdwbHVnaW4nIHwgJ3Byb2dyYW0nO1xuIiwgImltcG9ydCB7IFVtaUVycm9yIH0gZnJvbSAnLi9VbWlFcnJvcic7XG5cbi8qKiBAY2F0ZWdvcnkgRXJyb3JzICovXG5leHBvcnQgY2xhc3MgU2RrRXJyb3IgZXh0ZW5kcyBVbWlFcnJvciB7XG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZyA9ICdTZGtFcnJvcic7XG5cbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nLCBjYXVzZT86IEVycm9yKSB7XG4gICAgc3VwZXIobWVzc2FnZSwgJ3NkaycsIHVuZGVmaW5lZCwgY2F1c2UpO1xuICB9XG59XG4iLCAiaW1wb3J0IHsgUHVibGljS2V5IH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXB1YmxpYy1rZXlzJztcbmltcG9ydCB7IFNka0Vycm9yIH0gZnJvbSAnLi9TZGtFcnJvcic7XG5cbi8qKiBAY2F0ZWdvcnkgRXJyb3JzICovXG5leHBvcnQgY2xhc3MgVW5leHBlY3RlZEFjY291bnRFcnJvciBleHRlbmRzIFNka0Vycm9yIHtcbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nID0gJ1VuZXhwZWN0ZWRBY2NvdW50RXJyb3InO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpY0tleTogUHVibGljS2V5LCBleHBlY3RlZFR5cGU6IHN0cmluZywgY2F1c2U/OiBFcnJvcikge1xuICAgIGNvbnN0IG1lc3NhZ2UgPVxuICAgICAgYFRoZSBhY2NvdW50IGF0IHRoZSBwcm92aWRlZCBhZGRyZXNzIFske3B1YmxpY0tleX1dIGAgK1xuICAgICAgYGlzIG5vdCBvZiB0aGUgZXhwZWN0ZWQgdHlwZSBbJHtleHBlY3RlZFR5cGV9XS5gO1xuICAgIHN1cGVyKG1lc3NhZ2UsIGNhdXNlKTtcbiAgfVxufVxuIiwgImltcG9ydCB7IFB1YmxpY0tleSB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1wdWJsaWMta2V5cyc7XG5pbXBvcnQgeyBTZGtFcnJvciB9IGZyb20gJy4vU2RrRXJyb3InO1xuXG4vKiogQGNhdGVnb3J5IEVycm9ycyAqL1xuZXhwb3J0IGNsYXNzIEFjY291bnROb3RGb3VuZEVycm9yIGV4dGVuZHMgU2RrRXJyb3Ige1xuICByZWFkb25seSBuYW1lOiBzdHJpbmcgPSAnQWNjb3VudE5vdEZvdW5kRXJyb3InO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpY0tleTogUHVibGljS2V5LCBhY2NvdW50VHlwZT86IHN0cmluZywgc29sdXRpb24/OiBzdHJpbmcpIHtcbiAgICBjb25zdCBtZXNzYWdlID0gYCR7XG4gICAgICBhY2NvdW50VHlwZVxuICAgICAgICA/IGBUaGUgYWNjb3VudCBvZiB0eXBlIFske2FjY291bnRUeXBlfV0gd2FzIG5vdCBmb3VuZGBcbiAgICAgICAgOiAnTm8gYWNjb3VudCB3YXMgZm91bmQnXG4gICAgfSBhdCB0aGUgcHJvdmlkZWQgYWRkcmVzcyBbJHtwdWJsaWNLZXl9XS4ke3NvbHV0aW9uID8gYCAke3NvbHV0aW9ufWAgOiAnJ31gO1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICB9XG59XG4iLCAiaW1wb3J0IHR5cGUgeyBQdWJsaWNLZXkgfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktcHVibGljLWtleXMnO1xuaW1wb3J0IHR5cGUgeyBTZXJpYWxpemVyIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzJztcbmltcG9ydCB0eXBlIHsgU29sQW1vdW50IH0gZnJvbSAnLi9BbW91bnQnO1xuaW1wb3J0IHsgQWNjb3VudE5vdEZvdW5kRXJyb3IsIFVuZXhwZWN0ZWRBY2NvdW50RXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5cbi8qKlxuICogVGhlIHNpemUgb2YgYW4gYWNjb3VudCBoZWFkZXIgaW4gYnl0ZXMuXG4gKiBAY2F0ZWdvcnkgQWNjb3VudHNcbiAqL1xuZXhwb3J0IGNvbnN0IEFDQ09VTlRfSEVBREVSX1NJWkUgPSAxMjg7XG5cbi8qKlxuICogRGVzY3JpYmVzIHRoZSBoZWFkZXIgb2YgYW4gYWNjb3VudC5cbiAqIEBjYXRlZ29yeSBBY2NvdW50c1xuICovXG5leHBvcnQgdHlwZSBBY2NvdW50SGVhZGVyID0ge1xuICBleGVjdXRhYmxlOiBib29sZWFuO1xuICBvd25lcjogUHVibGljS2V5O1xuICBsYW1wb3J0czogU29sQW1vdW50O1xuICByZW50RXBvY2g/OiBudW1iZXI7XG59O1xuXG4vKipcbiAqIERlc2NyaWJlcyBhIHJhdyBhY2NvdW50IHRoYXQgaGFzIG5vdCBiZWVuIGRlc2VyaWFsaXplZC5cbiAqIEBjYXRlZ29yeSBBY2NvdW50c1xuICovXG5leHBvcnQgdHlwZSBScGNBY2NvdW50ID0gQWNjb3VudEhlYWRlciAmIHtcbiAgcHVibGljS2V5OiBQdWJsaWNLZXk7XG4gIGRhdGE6IFVpbnQ4QXJyYXk7XG59O1xuXG4vKipcbiAqIERlc2NyaWJlcyBhIHJhdyBhY2NvdW50IHRoYXQgbWF5IG9yIG1heSBub3QgZXhpc3QuXG4gKiBAY2F0ZWdvcnkgQWNjb3VudHNcbiAqL1xuZXhwb3J0IHR5cGUgTWF5YmVScGNBY2NvdW50ID1cbiAgfCAoeyBleGlzdHM6IHRydWUgfSAmIFJwY0FjY291bnQpXG4gIHwgeyBleGlzdHM6IGZhbHNlOyBwdWJsaWNLZXk6IFB1YmxpY0tleSB9O1xuXG4vKipcbiAqIERlc2NyaWJlcyBhIGRlc2VyaWFsaXplZCBhY2NvdW50LlxuICogQGNhdGVnb3J5IEFjY291bnRzXG4gKi9cbmV4cG9ydCB0eXBlIEFjY291bnQ8VCBleHRlbmRzIG9iamVjdD4gPSBUICYge1xuICBwdWJsaWNLZXk6IFB1YmxpY0tleTtcbiAgaGVhZGVyOiBBY2NvdW50SGVhZGVyO1xufTtcblxuLyoqXG4gKiBHaXZlbiBhbiBhY2NvdW50IGRhdGEgc2VyaWFsaXplcixcbiAqIHJldHVybnMgYSBkZXNlcmlhbGl6ZWQgYWNjb3VudCBmcm9tIGEgcmF3IGFjY291bnQuXG4gKiBAY2F0ZWdvcnkgQWNjb3VudHNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRlc2VyaWFsaXplQWNjb3VudDxGcm9tIGV4dGVuZHMgb2JqZWN0LCBUbyBleHRlbmRzIEZyb20gPSBGcm9tPihcbiAgcmF3QWNjb3VudDogUnBjQWNjb3VudCxcbiAgZGF0YVNlcmlhbGl6ZXI6IFNlcmlhbGl6ZXI8RnJvbSwgVG8+XG4pOiBBY2NvdW50PFRvPiB7XG4gIGNvbnN0IHsgZGF0YSwgcHVibGljS2V5LCAuLi5yZXN0IH0gPSByYXdBY2NvdW50O1xuICB0cnkge1xuICAgIGNvbnN0IFtwYXJzZWREYXRhXSA9IGRhdGFTZXJpYWxpemVyLmRlc2VyaWFsaXplKGRhdGEpO1xuICAgIHJldHVybiB7IHB1YmxpY0tleSwgaGVhZGVyOiByZXN0LCAuLi5wYXJzZWREYXRhIH07XG4gIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcbiAgICB0aHJvdyBuZXcgVW5leHBlY3RlZEFjY291bnRFcnJvcihcbiAgICAgIHB1YmxpY0tleSxcbiAgICAgIGRhdGFTZXJpYWxpemVyLmRlc2NyaXB0aW9uLFxuICAgICAgZXJyb3JcbiAgICApO1xuICB9XG59XG5cbi8qKlxuICogRW5zdXJlcyBhbiBhY2NvdW50IHRoYXQgbWF5IG9yIG1heSBub3QgZXhpc3QgYWN0dWFsbHkgZXhpc3RzLlxuICogQGNhdGVnb3J5IEFjY291bnRzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnRBY2NvdW50RXhpc3RzKFxuICBhY2NvdW50OiBNYXliZVJwY0FjY291bnQsXG4gIG5hbWU/OiBzdHJpbmcsXG4gIHNvbHV0aW9uPzogc3RyaW5nXG4pOiBhc3NlcnRzIGFjY291bnQgaXMgTWF5YmVScGNBY2NvdW50ICYgeyBleGlzdHM6IHRydWUgfSB7XG4gIGlmICghYWNjb3VudC5leGlzdHMpIHtcbiAgICB0aHJvdyBuZXcgQWNjb3VudE5vdEZvdW5kRXJyb3IoYWNjb3VudC5wdWJsaWNLZXksIG5hbWUsIHNvbHV0aW9uKTtcbiAgfVxufVxuIiwgIi8qKlxuICogRGVmaW5lcyBhbGwgdGhlIHR5cGVzIHRoYXQgY2FuIGJlIHVzZWQgdG8gY3JlYXRlXG4gKiBhIEJpZ0ludCB2aWEgdGhlIDxjb2RlPntAbGluayBjcmVhdGVCaWdJbnR9PC9jb2RlPiBmdW5jdGlvbi5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgdHlwZSBCaWdJbnRJbnB1dCA9IG51bWJlciB8IHN0cmluZyB8IGJvb2xlYW4gfCBiaWdpbnQgfCBVaW50OEFycmF5O1xuXG4vKipcbiAqIENyZWF0ZXMgYSBCaWdJbnQgZnJvbSBhIG51bWJlciwgc3RyaW5nLCBib29sZWFuLCBvciBVaW50OEFycmF5LlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCBjb25zdCBjcmVhdGVCaWdJbnQgPSAoaW5wdXQ6IEJpZ0ludElucHV0KTogYmlnaW50ID0+IHtcbiAgaW5wdXQgPSB0eXBlb2YgaW5wdXQgPT09ICdvYmplY3QnID8gaW5wdXQudG9TdHJpbmcoKSA6IGlucHV0O1xuICByZXR1cm4gQmlnSW50KGlucHV0KTtcbn07XG4iLCAiaW1wb3J0IHR5cGUgeyBBbW91bnQsIEFtb3VudERlY2ltYWxzLCBBbW91bnRJZGVudGlmaWVyIH0gZnJvbSAnLi4vQW1vdW50JztcbmltcG9ydCB7IFNka0Vycm9yIH0gZnJvbSAnLi9TZGtFcnJvcic7XG5cbi8qKiBAY2F0ZWdvcnkgRXJyb3JzICovXG5leHBvcnQgY2xhc3MgVW5leHBlY3RlZEFtb3VudEVycm9yIGV4dGVuZHMgU2RrRXJyb3Ige1xuICByZWFkb25seSBuYW1lOiBzdHJpbmcgPSAnVW5leHBlY3RlZEFtb3VudEVycm9yJztcblxuICByZWFkb25seSBhbW91bnQ6IEFtb3VudDtcblxuICByZWFkb25seSBleHBlY3RlZElkZW50aWZpZXI6IEFtb3VudElkZW50aWZpZXI7XG5cbiAgcmVhZG9ubHkgZXhwZWN0ZWREZWNpbWFsczogQW1vdW50RGVjaW1hbHM7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgYW1vdW50OiBBbW91bnQsXG4gICAgZXhwZWN0ZWRJZGVudGlmaWVyOiBBbW91bnRJZGVudGlmaWVyLFxuICAgIGV4cGVjdGVkRGVjaW1hbHM6IEFtb3VudERlY2ltYWxzXG4gICkge1xuICAgIGNvbnN0IG1lc3NhZ2UgPVxuICAgICAgYEV4cGVjdGVkIGFtb3VudCBvZiB0eXBlIFske2V4cGVjdGVkSWRlbnRpZmllcn0gd2l0aCAke2V4cGVjdGVkRGVjaW1hbHN9IGRlY2ltYWxzXSBgICtcbiAgICAgIGBidXQgZ290IFske2Ftb3VudC5pZGVudGlmaWVyfSB3aXRoICR7YW1vdW50LmRlY2ltYWxzfSBkZWNpbWFsc10uIGAgK1xuICAgICAgYEVuc3VyZSB0aGUgcHJvdmlkZWQgQW1vdW50IGlzIG9mIHRoZSBleHBlY3RlZCB0eXBlLmA7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gICAgdGhpcy5hbW91bnQgPSBhbW91bnQ7XG4gICAgdGhpcy5leHBlY3RlZElkZW50aWZpZXIgPSBleHBlY3RlZElkZW50aWZpZXI7XG4gICAgdGhpcy5leHBlY3RlZERlY2ltYWxzID0gZXhwZWN0ZWREZWNpbWFscztcbiAgfVxufVxuIiwgImltcG9ydCB0eXBlIHsgQW1vdW50IH0gZnJvbSAnLi4vQW1vdW50JztcbmltcG9ydCB7IFNka0Vycm9yIH0gZnJvbSAnLi9TZGtFcnJvcic7XG5cbi8qKiBAY2F0ZWdvcnkgRXJyb3JzICovXG5leHBvcnQgY2xhc3MgQW1vdW50TWlzbWF0Y2hFcnJvciBleHRlbmRzIFNka0Vycm9yIHtcbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nID0gJ0Ftb3VudE1pc21hdGNoRXJyb3InO1xuXG4gIHJlYWRvbmx5IGxlZnQ6IEFtb3VudDtcblxuICByZWFkb25seSByaWdodDogQW1vdW50O1xuXG4gIHJlYWRvbmx5IG9wZXJhdGlvbj86IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihsZWZ0OiBBbW91bnQsIHJpZ2h0OiBBbW91bnQsIG9wZXJhdGlvbj86IHN0cmluZykge1xuICAgIGNvbnN0IHdyYXBwZWRPcGVyYXRpb24gPSBvcGVyYXRpb24gPyBgIFske29wZXJhdGlvbn1dYCA6ICcnO1xuICAgIGNvbnN0IG1lc3NhZ2UgPVxuICAgICAgYFRoZSBTREsgdHJpZWQgdG8gZXhlY3V0ZSBhbiBvcGVyYXRpb24ke3dyYXBwZWRPcGVyYXRpb259IG9uIHR3byBhbW91bnRzIG9mIGRpZmZlcmVudCB0eXBlczogYCArXG4gICAgICBgWyR7bGVmdC5pZGVudGlmaWVyfSB3aXRoICR7bGVmdC5kZWNpbWFsc30gZGVjaW1hbHNdIGFuZCBgICtcbiAgICAgIGBbJHtyaWdodC5pZGVudGlmaWVyfSB3aXRoICR7cmlnaHQuZGVjaW1hbHN9IGRlY2ltYWxzXS4gYCArXG4gICAgICBgUHJvdmlkZSBib3RoIGFtb3VudHMgaW4gdGhlIHNhbWUgdHlwZSB0byBwZXJmb3JtIHRoaXMgb3BlcmF0aW9uLmA7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gICAgdGhpcy5sZWZ0ID0gbGVmdDtcbiAgICB0aGlzLnJpZ2h0ID0gcmlnaHQ7XG4gICAgdGhpcy5vcGVyYXRpb24gPSBvcGVyYXRpb247XG4gIH1cbn1cbiIsICJpbXBvcnQge1xuICBOdW1iZXJTZXJpYWxpemVyLFxuICBTZXJpYWxpemVyLFxuICBtYXBTZXJpYWxpemVyLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMnO1xuaW1wb3J0IHsgQmlnSW50SW5wdXQsIGNyZWF0ZUJpZ0ludCB9IGZyb20gJy4vQmlnSW50JztcbmltcG9ydCB7IEFtb3VudE1pc21hdGNoRXJyb3IsIFVuZXhwZWN0ZWRBbW91bnRFcnJvciB9IGZyb20gJy4vZXJyb3JzJztcblxuLyoqXG4gKiBUaGUgaWRlbnRpZmllciBvZiBhbiBhbW91bnQuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IHR5cGUgQW1vdW50SWRlbnRpZmllciA9ICdTT0wnIHwgJ1VTRCcgfCAnJScgfCAnc3BsVG9rZW4nIHwgc3RyaW5nO1xuXG4vKipcbiAqIFRoZSBudW1iZXIgb2YgZGVjaW1hbHMgaW4gYW4gYW1vdW50IHJlcHJlc2VudGVkIHVzaW5nIHRoZSBsb3dlc3QgcG9zc2libGUgdW5pdC5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgdHlwZSBBbW91bnREZWNpbWFscyA9IG51bWJlcjtcblxuLyoqXG4gKiBEZXNjcmliZXMgYW4gYW1vdW50IG9mIGFueSB0eXBlIG9yIGN1cnJlbmN5IHVzaW5nIHRoZSBsb3dlc3QgcG9zc2libGUgdW5pdC5cbiAqIEl0IHVzZXMgYSBCaWdJbnQgdG8gcmVwcmVzZW50IHRoZSBiYXNpcyBwb2ludHMgb2YgdGhlIGFtb3VudCwgYSBkZWNpbWFsIG51bWJlclxuICogdG8ga25vdyBob3cgdG8gaW50ZXJwcmV0IHRoZSBiYXNpcyBwb2ludHMsIGFuZCBhbiBpZGVudGlmaWVyIHRvIGtub3cgd2hhdFxuICogdHlwZSBvZiBhbW91bnQgd2UgYXJlIGRlYWxpbmcgd2l0aC5cbiAqXG4gKiBDdXN0b20gdHlwZSBwYXJhbWV0ZXJzIGNhbiBiZSB1c2VkIHRvIHJlcHJlc2VudCBzcGVjaWZpYyB0eXBlcyBvZiBhbW91bnRzLlxuICogRm9yIGV4YW1wbGU6XG4gKiAtIEFtb3VudDwnU09MJywgOT4gcmVwcmVzZW50cyBhbiBhbW91bnQgb2YgU09MIGluIGxhbXBvcnRzLlxuICogLSBBbW91bnQ8J1VTRCcsIDI+IHJlcHJlc2VudHMgYW4gYW1vdW50IG9mIFVTRCBpbiBjZW50cy5cbiAqIC0gQW1vdW50PCclJywgMj4gcmVwcmVzZW50cyBhIHBlcmNlbnRhZ2Ugd2l0aCAyIGRlY2ltYWxzLlxuICpcbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgdHlwZSBBbW91bnQ8XG4gIEkgZXh0ZW5kcyBBbW91bnRJZGVudGlmaWVyID0gQW1vdW50SWRlbnRpZmllcixcbiAgRCBleHRlbmRzIEFtb3VudERlY2ltYWxzID0gQW1vdW50RGVjaW1hbHNcbj4gPSB7XG4gIC8qKiBUaGUgYW1vdW50IGluIGl0cyBsb3dlciBwb3NzaWJsZSB1bml0IHN1Y2ggdGhhdCBpdCBkb2VzIG5vdCBjb250YWluIGRlY2ltYWxzLiAqL1xuICBiYXNpc1BvaW50czogYmlnaW50O1xuICAvKiogVGhlIGlkZW50aWZpZXIgb2YgdGhlIGFtb3VudC4gKi9cbiAgaWRlbnRpZmllcjogSTtcbiAgLyoqIFRoZSBudW1iZXIgb2YgZGVjaW1hbHMgaW4gdGhlIGFtb3VudC4gKi9cbiAgZGVjaW1hbHM6IEQ7XG59O1xuXG4vKipcbiAqIEFuIGFtb3VudCBvZiBTT0wgcmVwcmVzZW50ZWQgdXNpbmcgdGhlIGxvd2VzdCBwb3NzaWJsZSB1bml0IOKAlCBpLmUuIGxhbXBvcnRzLlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCB0eXBlIFNvbEFtb3VudCA9IEFtb3VudDwnU09MJywgOT47XG5cbi8qKlxuICogQW4gYW1vdW50IG9mIFVTIGRvbGxhcnMgcmVwcmVzZW50ZWQgdXNpbmcgdGhlIGxvd2VzdCBwb3NzaWJsZSB1bml0IOKAlCBpLmUuIGNlbnRzLlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCB0eXBlIFVzZEFtb3VudCA9IEFtb3VudDwnVVNEJywgMj47XG5cbi8qKlxuICogQW4gcGVyY2VudGFnZSByZXByZXNlbnRlZCBpbiBiYXNpcyBwb2ludHMgdXNpbmcgYSBnaXZlbiBudW1iZXIgb2YgZGVjaW1hbHMuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IHR5cGUgUGVyY2VudEFtb3VudDxEIGV4dGVuZHMgQW1vdW50RGVjaW1hbHM+ID0gQW1vdW50PCclJywgRD47XG5cbi8qKlxuICogQ3JlYXRlcyBhbiBhbW91bnQgZnJvbSB0aGUgcHJvdmlkZWQgYmFzaXMgcG9pbnRzLCBpZGVudGlmaWVyLCBhbmQgZGVjaW1hbHMuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IGNvbnN0IGNyZWF0ZUFtb3VudCA9IDxcbiAgSSBleHRlbmRzIEFtb3VudElkZW50aWZpZXIsXG4gIEQgZXh0ZW5kcyBBbW91bnREZWNpbWFsc1xuPihcbiAgYmFzaXNQb2ludHM6IEJpZ0ludElucHV0LFxuICBpZGVudGlmaWVyOiBJLFxuICBkZWNpbWFsczogRFxuKTogQW1vdW50PEksIEQ+ID0+ICh7XG4gIGJhc2lzUG9pbnRzOiBjcmVhdGVCaWdJbnQoYmFzaXNQb2ludHMpLFxuICBpZGVudGlmaWVyLFxuICBkZWNpbWFscyxcbn0pO1xuXG4vKipcbiAqIENyZWF0ZXMgYW4gYW1vdW50IGZyb20gYSBkZWNpbWFsIHZhbHVlIHdoaWNoIHdpbGwgYmUgY29udmVydGVkIHRvIHRoZSBsb3dlc3RcbiAqIHBvc3NpYmxlIHVuaXQgdXNpbmcgdGhlIHByb3ZpZGVkIGRlY2ltYWxzLlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCBjb25zdCBjcmVhdGVBbW91bnRGcm9tRGVjaW1hbHMgPSA8XG4gIEkgZXh0ZW5kcyBBbW91bnRJZGVudGlmaWVyLFxuICBEIGV4dGVuZHMgQW1vdW50RGVjaW1hbHNcbj4oXG4gIGRlY2ltYWxBbW91bnQ6IG51bWJlcixcbiAgaWRlbnRpZmllcjogSSxcbiAgZGVjaW1hbHM6IERcbik6IEFtb3VudDxJLCBEPiA9PiB7XG4gIGNvbnN0IGV4cG9uZW50QW1vdW50ID0gY3JlYXRlQW1vdW50KFxuICAgIEJpZ0ludCgxMCkgKiogQmlnSW50KGRlY2ltYWxzID8/IDApLFxuICAgIGlkZW50aWZpZXIsXG4gICAgZGVjaW1hbHNcbiAgKTtcblxuICByZXR1cm4gbXVsdGlwbHlBbW91bnQoZXhwb25lbnRBbW91bnQsIGRlY2ltYWxBbW91bnQpO1xufTtcblxuLyoqXG4gKiBDcmVhdGVzIGEgcGVyY2VudGFnZSBhbW91bnQgZnJvbSB0aGUgcHJvdmlkZWQgZGVjaW1hbCB2YWx1ZS5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgY29uc3QgcGVyY2VudEFtb3VudCA9IDxEIGV4dGVuZHMgQW1vdW50RGVjaW1hbHM+KFxuICBwZXJjZW50OiBudW1iZXIsXG4gIGRlY2ltYWxzOiBEID0gMiBhcyBEXG4pOiBBbW91bnQ8JyUnLCBEPiA9PiBjcmVhdGVBbW91bnRGcm9tRGVjaW1hbHMocGVyY2VudCwgJyUnLCBkZWNpbWFscyk7XG5cbi8qKlxuICogQ3JlYXRlcyBhbiBhbW91bnQgb2YgU1BMIHRva2VucyBmcm9tIHRoZSBwcm92aWRlZCBkZWNpbWFsIHZhbHVlLlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCBjb25zdCB0b2tlbkFtb3VudCA9IDxcbiAgSSBleHRlbmRzIEFtb3VudElkZW50aWZpZXIsXG4gIEQgZXh0ZW5kcyBBbW91bnREZWNpbWFsc1xuPihcbiAgdG9rZW5zOiBudW1iZXIsXG4gIGlkZW50aWZpZXI/OiBJLFxuICBkZWNpbWFscz86IERcbik6IEFtb3VudDxJLCBEPiA9PlxuICBjcmVhdGVBbW91bnRGcm9tRGVjaW1hbHMoXG4gICAgdG9rZW5zLFxuICAgIChpZGVudGlmaWVyID8/ICdzcGxUb2tlbicpIGFzIEksXG4gICAgKGRlY2ltYWxzID8/IDApIGFzIERcbiAgKTtcblxuLyoqXG4gKiBDcmVhdGVzIGEge0BsaW5rIFNvbEFtb3VudH0gZnJvbSB0aGUgcHJvdmlkZWQgbGFtcG9ydHMuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IGNvbnN0IGxhbXBvcnRzID0gKGxhbXBvcnRzOiBCaWdJbnRJbnB1dCk6IFNvbEFtb3VudCA9PlxuICBjcmVhdGVBbW91bnQobGFtcG9ydHMsICdTT0wnLCA5KTtcblxuLyoqXG4gKiBDcmVhdGVzIGEge0BsaW5rIFNvbEFtb3VudH0gZnJvbSB0aGUgcHJvdmlkZWQgZGVjaW1hbCB2YWx1ZSBpbiBTT0wuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IGNvbnN0IHNvbCA9IChzb2w6IG51bWJlcik6IFNvbEFtb3VudCA9PlxuICBjcmVhdGVBbW91bnRGcm9tRGVjaW1hbHMoc29sLCAnU09MJywgOSk7XG5cbi8qKlxuICogQ3JlYXRlcyBhIHtAbGluayBVc2RBbW91bnR9IGZyb20gdGhlIHByb3ZpZGVkIGRlY2ltYWwgdmFsdWUgaW4gVVNELlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCBjb25zdCB1c2QgPSAodXNkOiBudW1iZXIpOiBVc2RBbW91bnQgPT5cbiAgY3JlYXRlQW1vdW50RnJvbURlY2ltYWxzKHVzZCwgJ1VTRCcsIDIpO1xuXG4vKipcbiAqIERldGVybWluZXMgd2hldGhlciBhIGdpdmVuIGFtb3VudCBoYXMgdGhlIHByb3ZpZGVkIGlkZW50aWZpZXIgYW5kIGRlY2ltYWxzLlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCBjb25zdCBpc0Ftb3VudCA9IDxJIGV4dGVuZHMgQW1vdW50SWRlbnRpZmllciwgRCBleHRlbmRzIEFtb3VudERlY2ltYWxzPihcbiAgYW1vdW50OiBBbW91bnQsXG4gIGlkZW50aWZpZXI6IEksXG4gIGRlY2ltYWxzOiBEXG4pOiBhbW91bnQgaXMgQW1vdW50PEksIEQ+ID0+XG4gIGFtb3VudC5pZGVudGlmaWVyID09PSBpZGVudGlmaWVyICYmIGFtb3VudC5kZWNpbWFscyA9PT0gZGVjaW1hbHM7XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIGEgZ2l2ZW4gYW1vdW50IGlzIGEge0BsaW5rIFNvbEFtb3VudH0uXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IGNvbnN0IGlzU29sQW1vdW50ID0gKGFtb3VudDogQW1vdW50KTogYW1vdW50IGlzIFNvbEFtb3VudCA9PlxuICBpc0Ftb3VudChhbW91bnQsICdTT0wnLCA5KTtcblxuLyoqXG4gKiBEZXRlcm1pbmVzIHdoZXRoZXIgdHdvIGFtb3VudHMgYXJlIG9mIHRoZSBzYW1lIHR5cGUuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IGNvbnN0IHNhbWVBbW91bnRzID0gKGxlZnQ6IEFtb3VudCwgcmlnaHQ6IEFtb3VudCk6IGJvb2xlYW4gPT5cbiAgaXNBbW91bnQobGVmdCwgcmlnaHQuaWRlbnRpZmllciwgcmlnaHQuZGVjaW1hbHMpO1xuXG4vKipcbiAqIEVuc3VyZXMgdGhhdCBhIGdpdmVuIGFtb3VudCBoYXMgdGhlIHByb3ZpZGVkIGlkZW50aWZpZXIgYW5kIGRlY2ltYWxzLlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnRBbW91bnQ8XG4gIEkgZXh0ZW5kcyBBbW91bnRJZGVudGlmaWVyLFxuICBEIGV4dGVuZHMgQW1vdW50RGVjaW1hbHNcbj4oYW1vdW50OiBBbW91bnQsIGlkZW50aWZpZXI6IEksIGRlY2ltYWxzOiBEKTogYXNzZXJ0cyBhbW91bnQgaXMgQW1vdW50PEksIEQ+IHtcbiAgaWYgKCFpc0Ftb3VudChhbW91bnQsIGlkZW50aWZpZXIsIGRlY2ltYWxzKSkge1xuICAgIHRocm93IG5ldyBVbmV4cGVjdGVkQW1vdW50RXJyb3IoYW1vdW50LCBpZGVudGlmaWVyLCBkZWNpbWFscyk7XG4gIH1cbn1cblxuLyoqXG4gKiBFbnN1cmVzIHRoYXQgYSBnaXZlbiBhbW91bnQgaXMgYSB7QGxpbmsgU29sQW1vdW50fS5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0U29sQW1vdW50KGFjdHVhbDogQW1vdW50KTogYXNzZXJ0cyBhY3R1YWwgaXMgU29sQW1vdW50IHtcbiAgYXNzZXJ0QW1vdW50KGFjdHVhbCwgJ1NPTCcsIDkpO1xufVxuXG4vKipcbiAqIEVuc3VyZXMgdGhhdCB0d28gYW1vdW50cyBhcmUgb2YgdGhlIHNhbWUgdHlwZS5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0U2FtZUFtb3VudHMoXG4gIGxlZnQ6IEFtb3VudCxcbiAgcmlnaHQ6IEFtb3VudCxcbiAgb3BlcmF0aW9uPzogc3RyaW5nXG4pIHtcbiAgaWYgKCFzYW1lQW1vdW50cyhsZWZ0LCByaWdodCkpIHtcbiAgICB0aHJvdyBuZXcgQW1vdW50TWlzbWF0Y2hFcnJvcihsZWZ0LCByaWdodCwgb3BlcmF0aW9uKTtcbiAgfVxufVxuXG4vKipcbiAqIEFkZHMgdHdvIGFtb3VudHMgb2YgdGhlIHNhbWUgdHlwZS5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgY29uc3QgYWRkQW1vdW50cyA9IDxcbiAgSSBleHRlbmRzIEFtb3VudElkZW50aWZpZXIsXG4gIEQgZXh0ZW5kcyBBbW91bnREZWNpbWFsc1xuPihcbiAgbGVmdDogQW1vdW50PEksIEQ+LFxuICByaWdodDogQW1vdW50PEksIEQ+XG4pOiBBbW91bnQ8SSwgRD4gPT4ge1xuICBhc3NlcnRTYW1lQW1vdW50cyhsZWZ0LCByaWdodCwgJ2FkZCcpO1xuXG4gIHJldHVybiB7XG4gICAgLi4ubGVmdCxcbiAgICBiYXNpc1BvaW50czogbGVmdC5iYXNpc1BvaW50cyArIHJpZ2h0LmJhc2lzUG9pbnRzLFxuICB9O1xufTtcblxuLyoqXG4gKiBTdWJ0cmFjdHMgdHdvIGFtb3VudHMgb2YgdGhlIHNhbWUgdHlwZS5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgY29uc3Qgc3VidHJhY3RBbW91bnRzID0gPFxuICBJIGV4dGVuZHMgQW1vdW50SWRlbnRpZmllcixcbiAgRCBleHRlbmRzIEFtb3VudERlY2ltYWxzXG4+KFxuICBsZWZ0OiBBbW91bnQ8SSwgRD4sXG4gIHJpZ2h0OiBBbW91bnQ8SSwgRD5cbik6IEFtb3VudDxJLCBEPiA9PiB7XG4gIGFzc2VydFNhbWVBbW91bnRzKGxlZnQsIHJpZ2h0LCAnc3VidHJhY3QnKTtcblxuICByZXR1cm4ge1xuICAgIC4uLmxlZnQsXG4gICAgYmFzaXNQb2ludHM6IGxlZnQuYmFzaXNQb2ludHMgLSByaWdodC5iYXNpc1BvaW50cyxcbiAgfTtcbn07XG5cbi8qKlxuICogTXVsdGlwbGllcyBhbiBhbW91bnQgYnkgYSBnaXZlbiBtdWx0aXBsaWVyLlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCBjb25zdCBtdWx0aXBseUFtb3VudCA9IDxcbiAgSSBleHRlbmRzIEFtb3VudElkZW50aWZpZXIsXG4gIEQgZXh0ZW5kcyBBbW91bnREZWNpbWFsc1xuPihcbiAgbGVmdDogQW1vdW50PEksIEQ+LFxuICBtdWx0aXBsaWVyOiBudW1iZXIgfCBiaWdpbnRcbik6IEFtb3VudDxJLCBEPiA9PiB7XG4gIGlmICh0eXBlb2YgbXVsdGlwbGllciA9PT0gJ2JpZ2ludCcpIHtcbiAgICByZXR1cm4geyAuLi5sZWZ0LCBiYXNpc1BvaW50czogbGVmdC5iYXNpc1BvaW50cyAqIG11bHRpcGxpZXIgfTtcbiAgfVxuXG4gIGNvbnN0IFt1bml0cywgZGVjaW1hbHNdID0gbXVsdGlwbGllci50b1N0cmluZygpLnNwbGl0KCcuJyk7XG4gIGNvbnN0IG11bHRpcGxpZXJCYXNpc1BvaW50cyA9IEJpZ0ludCh1bml0cyArIChkZWNpbWFscyA/PyAnJykpO1xuICBjb25zdCBtdWx0aXBsaWVyRXhwb25lbnRzID0gQmlnSW50KDEwKSAqKiBCaWdJbnQoZGVjaW1hbHM/Lmxlbmd0aCA/PyAwKTtcblxuICByZXR1cm4ge1xuICAgIC4uLmxlZnQsXG4gICAgYmFzaXNQb2ludHM6XG4gICAgICAobGVmdC5iYXNpc1BvaW50cyAqIG11bHRpcGxpZXJCYXNpc1BvaW50cykgLyBtdWx0aXBsaWVyRXhwb25lbnRzLFxuICB9O1xufTtcblxuLyoqXG4gKiBEaXZpZGVzIGFuIGFtb3VudCBieSBhIGdpdmVuIGRpdmlzb3IuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IGNvbnN0IGRpdmlkZUFtb3VudCA9IDxcbiAgSSBleHRlbmRzIEFtb3VudElkZW50aWZpZXIsXG4gIEQgZXh0ZW5kcyBBbW91bnREZWNpbWFsc1xuPihcbiAgbGVmdDogQW1vdW50PEksIEQ+LFxuICBkaXZpc29yOiBudW1iZXIgfCBiaWdpbnRcbik6IEFtb3VudDxJLCBEPiA9PiB7XG4gIGlmICh0eXBlb2YgZGl2aXNvciA9PT0gJ2JpZ2ludCcpIHtcbiAgICByZXR1cm4geyAuLi5sZWZ0LCBiYXNpc1BvaW50czogbGVmdC5iYXNpc1BvaW50cyAvIGRpdmlzb3IgfTtcbiAgfVxuXG4gIGNvbnN0IFt1bml0cywgZGVjaW1hbHNdID0gZGl2aXNvci50b1N0cmluZygpLnNwbGl0KCcuJyk7XG4gIGNvbnN0IGRpdmlzb3JCYXNpc1BvaW50cyA9IEJpZ0ludCh1bml0cyArIChkZWNpbWFscyA/PyAnJykpO1xuICBjb25zdCBkaXZpc29yRXhwb25lbnRzID0gQmlnSW50KDEwKSAqKiBCaWdJbnQoZGVjaW1hbHM/Lmxlbmd0aCA/PyAwKTtcblxuICByZXR1cm4ge1xuICAgIC4uLmxlZnQsXG4gICAgYmFzaXNQb2ludHM6IChsZWZ0LmJhc2lzUG9pbnRzICogZGl2aXNvckV4cG9uZW50cykgLyBkaXZpc29yQmFzaXNQb2ludHMsXG4gIH07XG59O1xuXG4vKipcbiAqIFJldHVybnMgdGhlIGFic29sdXRlIHZhbHVlIG9mIGFuIGFtb3VudC5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgY29uc3QgYWJzb2x1dGVBbW91bnQgPSA8XG4gIEkgZXh0ZW5kcyBBbW91bnRJZGVudGlmaWVyLFxuICBEIGV4dGVuZHMgQW1vdW50RGVjaW1hbHNcbj4oXG4gIHZhbHVlOiBBbW91bnQ8SSwgRD5cbik6IEFtb3VudDxJLCBEPiA9PiB7XG4gIGNvbnN0IHggPSB2YWx1ZS5iYXNpc1BvaW50cztcbiAgcmV0dXJuIHsgLi4udmFsdWUsIGJhc2lzUG9pbnRzOiB4IDwgMCA/IC14IDogeCB9O1xufTtcblxuLyoqXG4gKiBDb21wYXJlcyB0d28gYW1vdW50cyBvZiB0aGUgc2FtZSB0eXBlLlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCBjb25zdCBjb21wYXJlQW1vdW50cyA9IDxcbiAgSSBleHRlbmRzIEFtb3VudElkZW50aWZpZXIsXG4gIEQgZXh0ZW5kcyBBbW91bnREZWNpbWFsc1xuPihcbiAgbGVmdDogQW1vdW50PEksIEQ+LFxuICByaWdodDogQW1vdW50PEksIEQ+XG4pOiAtMSB8IDAgfCAxID0+IHtcbiAgYXNzZXJ0U2FtZUFtb3VudHMobGVmdCwgcmlnaHQsICdjb21wYXJlJyk7XG4gIGlmIChsZWZ0LmJhc2lzUG9pbnRzID4gcmlnaHQuYmFzaXNQb2ludHMpIHJldHVybiAxO1xuICBpZiAobGVmdC5iYXNpc1BvaW50cyA8IHJpZ2h0LmJhc2lzUG9pbnRzKSByZXR1cm4gLTE7XG4gIHJldHVybiAwO1xufTtcblxuLyoqXG4gKiBEZXRlcm1pbmVzIHdoZXRoZXIgdHdvIGFtb3VudHMgYXJlIGVxdWFsLlxuICogQW4gb3B0aW9uYWwgdG9sZXJhbmNlIGNhbiBiZSBwcm92aWRlZCB0byBhbGxvdyBmb3Igc21hbGwgZGlmZmVyZW5jZXMuXG4gKiBXaGVuIHVzaW5nIHtAbGluayBTb2xBbW91bnR9LCB0aGlzIGlzIHVzdWFsbHkgZHVlIHRvIHRyYW5zYWN0aW9uIG9yIHNtYWxsIHN0b3JhZ2UgZmVlcy5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgY29uc3QgaXNFcXVhbFRvQW1vdW50ID0gPFxuICBJIGV4dGVuZHMgQW1vdW50SWRlbnRpZmllcixcbiAgRCBleHRlbmRzIEFtb3VudERlY2ltYWxzXG4+KFxuICBsZWZ0OiBBbW91bnQ8SSwgRD4sXG4gIHJpZ2h0OiBBbW91bnQ8SSwgRD4sXG4gIHRvbGVyYW5jZT86IEFtb3VudDxJLCBEPlxuKTogYm9vbGVhbiA9PiB7XG4gIHRvbGVyYW5jZSA9IHRvbGVyYW5jZSA/PyBjcmVhdGVBbW91bnQoMCwgbGVmdC5pZGVudGlmaWVyLCBsZWZ0LmRlY2ltYWxzKTtcbiAgYXNzZXJ0U2FtZUFtb3VudHMobGVmdCwgcmlnaHQsICdpc0VxdWFsVG9BbW91bnQnKTtcbiAgYXNzZXJ0U2FtZUFtb3VudHMobGVmdCwgdG9sZXJhbmNlLCAnaXNFcXVhbFRvQW1vdW50Jyk7XG5cbiAgY29uc3QgZGVsdGEgPSBhYnNvbHV0ZUFtb3VudChzdWJ0cmFjdEFtb3VudHMobGVmdCwgcmlnaHQpKTtcblxuICByZXR1cm4gaXNMZXNzVGhhbk9yRXF1YWxUb0Ftb3VudChkZWx0YSwgdG9sZXJhbmNlKTtcbn07XG5cbi8qKlxuICogV2hldGhlciB0aGUgbGVmdCBhbW91bnQgaXMgbGVzcyB0aGFuIHRoZSByaWdodCBhbW91bnQuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IGNvbnN0IGlzTGVzc1RoYW5BbW91bnQgPSA8XG4gIEkgZXh0ZW5kcyBBbW91bnRJZGVudGlmaWVyLFxuICBEIGV4dGVuZHMgQW1vdW50RGVjaW1hbHNcbj4oXG4gIGxlZnQ6IEFtb3VudDxJLCBEPixcbiAgcmlnaHQ6IEFtb3VudDxJLCBEPlxuKTogYm9vbGVhbiA9PiBjb21wYXJlQW1vdW50cyhsZWZ0LCByaWdodCkgPCAwO1xuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGxlZnQgYW1vdW50IGlzIGxlc3MgdGhhbiBvciBlcXVhbCB0byB0aGUgcmlnaHQgYW1vdW50LlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCBjb25zdCBpc0xlc3NUaGFuT3JFcXVhbFRvQW1vdW50ID0gPFxuICBJIGV4dGVuZHMgQW1vdW50SWRlbnRpZmllcixcbiAgRCBleHRlbmRzIEFtb3VudERlY2ltYWxzXG4+KFxuICBsZWZ0OiBBbW91bnQ8SSwgRD4sXG4gIHJpZ2h0OiBBbW91bnQ8SSwgRD5cbik6IGJvb2xlYW4gPT4gY29tcGFyZUFtb3VudHMobGVmdCwgcmlnaHQpIDw9IDA7XG5cbi8qKlxuICogV2hldGhlciB0aGUgbGVmdCBhbW91bnQgaXMgZ3JlYXRlciB0aGFuIHRoZSByaWdodCBhbW91bnQuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IGNvbnN0IGlzR3JlYXRlclRoYW5BbW91bnQgPSA8XG4gIEkgZXh0ZW5kcyBBbW91bnRJZGVudGlmaWVyLFxuICBEIGV4dGVuZHMgQW1vdW50RGVjaW1hbHNcbj4oXG4gIGxlZnQ6IEFtb3VudDxJLCBEPixcbiAgcmlnaHQ6IEFtb3VudDxJLCBEPlxuKTogYm9vbGVhbiA9PiBjb21wYXJlQW1vdW50cyhsZWZ0LCByaWdodCkgPiAwO1xuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGxlZnQgYW1vdW50IGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byB0aGUgcmlnaHQgYW1vdW50LlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCBjb25zdCBpc0dyZWF0ZXJUaGFuT3JFcXVhbFRvQW1vdW50ID0gPFxuICBJIGV4dGVuZHMgQW1vdW50SWRlbnRpZmllcixcbiAgRCBleHRlbmRzIEFtb3VudERlY2ltYWxzXG4+KFxuICBsZWZ0OiBBbW91bnQ8SSwgRD4sXG4gIHJpZ2h0OiBBbW91bnQ8SSwgRD5cbik6IGJvb2xlYW4gPT4gY29tcGFyZUFtb3VudHMobGVmdCwgcmlnaHQpID49IDA7XG5cbi8qKlxuICogV2hldGhlciB0aGUgYW1vdW50IGlzIHplcm8uXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IGNvbnN0IGlzWmVyb0Ftb3VudCA9ICh2YWx1ZTogQW1vdW50KTogYm9vbGVhbiA9PlxuICB2YWx1ZS5iYXNpc1BvaW50cyA9PT0gQmlnSW50KDApO1xuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGFtb3VudCBpcyBwb3NpdGl2ZS5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgY29uc3QgaXNQb3NpdGl2ZUFtb3VudCA9ICh2YWx1ZTogQW1vdW50KTogYm9vbGVhbiA9PlxuICB2YWx1ZS5iYXNpc1BvaW50cyA+PSBCaWdJbnQoMCk7XG5cbi8qKlxuICogV2hldGhlciB0aGUgYW1vdW50IGlzIG5lZ2F0aXZlLlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCBjb25zdCBpc05lZ2F0aXZlQW1vdW50ID0gKHZhbHVlOiBBbW91bnQpOiBib29sZWFuID0+XG4gIHZhbHVlLmJhc2lzUG9pbnRzIDwgQmlnSW50KDApO1xuXG4vKipcbiAqIENvbnZlcnRzIGFuIGFtb3VudCB0byBhIHN0cmluZyBieSB1c2luZyB0aGUgYW1vdW50J3MgZGVjaW1hbHMuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IGNvbnN0IGFtb3VudFRvU3RyaW5nID0gKHZhbHVlOiBBbW91bnQsIG1heERlY2ltYWxzPzogbnVtYmVyKTogc3RyaW5nID0+IHtcbiAgbGV0IHRleHQgPSB2YWx1ZS5iYXNpc1BvaW50cy50b1N0cmluZygpO1xuICBpZiAodmFsdWUuZGVjaW1hbHMgPT09IDApIHtcbiAgICByZXR1cm4gdGV4dDtcbiAgfVxuXG4gIGNvbnN0IHNpZ24gPSB0ZXh0LnN0YXJ0c1dpdGgoJy0nKSA/ICctJyA6ICcnO1xuICB0ZXh0ID0gdGV4dC5yZXBsYWNlKCctJywgJycpO1xuICB0ZXh0ID0gdGV4dC5wYWRTdGFydCh2YWx1ZS5kZWNpbWFscyArIDEsICcwJyk7XG4gIGNvbnN0IHVuaXRzID0gdGV4dC5zbGljZSgwLCAtdmFsdWUuZGVjaW1hbHMpO1xuICBsZXQgZGVjaW1hbHMgPSB0ZXh0LnNsaWNlKC12YWx1ZS5kZWNpbWFscyk7XG5cbiAgaWYgKG1heERlY2ltYWxzICE9PSB1bmRlZmluZWQpIHtcbiAgICBkZWNpbWFscyA9IGRlY2ltYWxzLnNsaWNlKDAsIG1heERlY2ltYWxzKTtcbiAgfVxuXG4gIHJldHVybiBgJHtzaWduICsgdW5pdHN9LiR7ZGVjaW1hbHN9YDtcbn07XG5cbi8qKlxuICogQ29udmVydHMgYW4gYW1vdW50IHRvIGEgbnVtYmVyIGJ5IHVzaW5nIHRoZSBhbW91bnQncyBkZWNpbWFscy5cbiAqIE5vdGUgdGhhdCB0aGlzIG1heSB0aHJvdyBhbiBlcnJvciBpZiB0aGUgYW1vdW50IGlzIHRvbyBsYXJnZSB0byBmaXQgaW4gYSBKYXZhU2NyaXB0IG51bWJlci5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgY29uc3QgYW1vdW50VG9OdW1iZXIgPSAodmFsdWU6IEFtb3VudCk6IG51bWJlciA9PlxuICBwYXJzZUZsb2F0KGFtb3VudFRvU3RyaW5nKHZhbHVlKSk7XG5cbi8qKlxuICogRGlzcGxheXMgYW4gYW1vdW50IGFzIGEgc3RyaW5nIGJ5IHVzaW5nIHRoZSBhbW91bnQncyBkZWNpbWFscyBhbmQgaWRlbnRpZmllci5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgY29uc3QgZGlzcGxheUFtb3VudCA9ICh2YWx1ZTogQW1vdW50LCBtYXhEZWNpbWFscz86IG51bWJlcik6IHN0cmluZyA9PiB7XG4gIGNvbnN0IGFtb3VudEFzU3RyaW5nID0gYW1vdW50VG9TdHJpbmcodmFsdWUsIG1heERlY2ltYWxzKTtcblxuICBzd2l0Y2ggKHZhbHVlLmlkZW50aWZpZXIpIHtcbiAgICBjYXNlICclJzpcbiAgICAgIHJldHVybiBgJHthbW91bnRBc1N0cmluZ30lYDtcbiAgICBjYXNlICdzcGxUb2tlbic6XG4gICAgICByZXR1cm4gL14xKFxcLjArKT8kLy50ZXN0KGFtb3VudEFzU3RyaW5nKVxuICAgICAgICA/IGAke2Ftb3VudEFzU3RyaW5nfSBUb2tlbmBcbiAgICAgICAgOiBgJHthbW91bnRBc1N0cmluZ30gVG9rZW5zYDtcbiAgICBkZWZhdWx0OlxuICAgICAgaWYgKHZhbHVlLmlkZW50aWZpZXIuc3RhcnRzV2l0aCgnc3BsVG9rZW4uJykpIHtcbiAgICAgICAgY29uc3QgWywgaWRlbnRpZmllcl0gPSB2YWx1ZS5pZGVudGlmaWVyLnNwbGl0KCcuJyk7XG4gICAgICAgIHJldHVybiBgJHtpZGVudGlmaWVyfSAke2Ftb3VudEFzU3RyaW5nfWA7XG4gICAgICB9XG4gICAgICByZXR1cm4gYCR7dmFsdWUuaWRlbnRpZmllcn0gJHthbW91bnRBc1N0cmluZ31gO1xuICB9XG59O1xuXG4vKipcbiAqIENvbnZlcnRzIGEgbnVtYmVyIHNlcmlhbGl6ZXIgaW50byBhbiBhbW91bnQgc2VyaWFsaXplclxuICogYnkgcHJvdmlkaW5nIGFuIGFtb3VudCBpZGVudGlmaWVyIGFuZCBkZWNpbWFscy5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgY29uc3QgbWFwQW1vdW50U2VyaWFsaXplciA9IDxcbiAgSSBleHRlbmRzIEFtb3VudElkZW50aWZpZXIgPSBBbW91bnRJZGVudGlmaWVyLFxuICBEIGV4dGVuZHMgQW1vdW50RGVjaW1hbHMgPSBBbW91bnREZWNpbWFsc1xuPihcbiAgc2VyaWFsaXplcjogTnVtYmVyU2VyaWFsaXplcixcbiAgaWRlbnRpZmllcjogSSxcbiAgZGVjaW1hbHM6IERcbik6IFNlcmlhbGl6ZXI8QW1vdW50PEksIEQ+PiA9PlxuICBtYXBTZXJpYWxpemVyKFxuICAgIHNlcmlhbGl6ZXIgYXMgU2VyaWFsaXplcjxudW1iZXIgfCBiaWdpbnQ+LFxuICAgICh2YWx1ZTogQW1vdW50PEksIEQ+KTogbnVtYmVyIHwgYmlnaW50ID0+XG4gICAgICB2YWx1ZS5iYXNpc1BvaW50cyA+IE51bWJlci5NQVhfU0FGRV9JTlRFR0VSXG4gICAgICAgID8gdmFsdWUuYmFzaXNQb2ludHNcbiAgICAgICAgOiBOdW1iZXIodmFsdWUuYmFzaXNQb2ludHMpLFxuICAgICh2YWx1ZTogbnVtYmVyIHwgYmlnaW50KTogQW1vdW50PEksIEQ+ID0+XG4gICAgICBjcmVhdGVBbW91bnQodmFsdWUsIGlkZW50aWZpZXIsIGRlY2ltYWxzKVxuICApO1xuIiwgIi8qKlxuICogRGVmaW5lcyB0aGUgYXZhaWxhYmxlIFNvbGFuYSBjbHVzdGVycy5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQ2x1c3RlclxuICovXG5leHBvcnQgdHlwZSBDbHVzdGVyID1cbiAgfCAnbWFpbm5ldC1iZXRhJ1xuICB8ICdkZXZuZXQnXG4gIHwgJ3Rlc3RuZXQnXG4gIHwgJ2xvY2FsbmV0J1xuICB8ICdjdXN0b20nO1xuXG4vKipcbiAqIEhlbHBlciB0eXBlIHRvIGhlbHBzIHRoZSBlbmQtdXNlciBzZWxlY3RpbmcgYSBjbHVzdGVyLlxuICogVGhleSBjYW4gZWl0aGVyIHByb3ZpZGUgYSBzcGVjaWZpYyBjbHVzdGVyIG9yIHVzZSB0aGVcbiAqIHNwZWNpYWwgdmFsdWVzICdjdXJyZW50JyBvciAnKicgdG8gc2VsZWN0IHRoZSBjdXJyZW50XG4gKiBjbHVzdGVyIG9yIGFsbCBjbHVzdGVycyByZXNwZWN0aXZlbHkuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIENsdXN0ZXJcbiAqL1xuZXhwb3J0IHR5cGUgQ2x1c3RlckZpbHRlciA9IENsdXN0ZXIgfCAnY3VycmVudCcgfCAnKic7XG5cbmNvbnN0IE1BSU5ORVRfQkVUQV9ET01BSU5TID0gW1xuICAnYXBpLm1haW5uZXQtYmV0YS5zb2xhbmEuY29tJyxcbiAgJ3NzYy1kYW8uZ2VuZXN5c2dvLm5ldCcsXG5dO1xuY29uc3QgREVWTkVUX0RPTUFJTlMgPSBbXG4gICdhcGkuZGV2bmV0LnNvbGFuYS5jb20nLFxuICAncHN5dHJiaHltcWxrZnJodWRkLmRldi5nZW5lc3lzZ28ubmV0Jyxcbl07XG5jb25zdCBURVNUTkVUX0RPTUFJTlMgPSBbJ2FwaS50ZXN0bmV0LnNvbGFuYS5jb20nXTtcbmNvbnN0IExPQ0FMTkVUX0RPTUFJTlMgPSBbJ2xvY2FsaG9zdCcsICcxMjcuMC4wLjEnXTtcblxuLyoqXG4gKiBIZWxwZXIgbWV0aG9kIHRoYXQgdHJpZXMgaXRzIGJlc3QgdG8gcmVzb2x2ZSBhIGNsdXN0ZXIgZnJvbSBhIGdpdmVuIGVuZHBvaW50LlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBDbHVzdGVyXG4gKi9cbmV4cG9ydCBjb25zdCByZXNvbHZlQ2x1c3RlckZyb21FbmRwb2ludCA9IChlbmRwb2ludDogc3RyaW5nKTogQ2x1c3RlciA9PiB7XG4gIGNvbnN0IGRvbWFpbiA9IG5ldyBVUkwoZW5kcG9pbnQpLmhvc3RuYW1lO1xuICBpZiAoTUFJTk5FVF9CRVRBX0RPTUFJTlMuaW5jbHVkZXMoZG9tYWluKSkgcmV0dXJuICdtYWlubmV0LWJldGEnO1xuICBpZiAoREVWTkVUX0RPTUFJTlMuaW5jbHVkZXMoZG9tYWluKSkgcmV0dXJuICdkZXZuZXQnO1xuICBpZiAoVEVTVE5FVF9ET01BSU5TLmluY2x1ZGVzKGRvbWFpbikpIHJldHVybiAndGVzdG5ldCc7XG4gIGlmIChMT0NBTE5FVF9ET01BSU5TLmluY2x1ZGVzKGRvbWFpbikpIHJldHVybiAnbG9jYWxuZXQnO1xuICBpZiAoZW5kcG9pbnQuaW5jbHVkZXMoJ21haW5uZXQnKSkgcmV0dXJuICdtYWlubmV0LWJldGEnO1xuICBpZiAoZW5kcG9pbnQuaW5jbHVkZXMoJ2Rldm5ldCcpKSByZXR1cm4gJ2Rldm5ldCc7XG4gIGlmIChlbmRwb2ludC5pbmNsdWRlcygndGVzdG5ldCcpKSByZXR1cm4gJ3Rlc3RuZXQnO1xuICBpZiAoZW5kcG9pbnQuaW5jbHVkZXMoJ2xvY2FsJykpIHJldHVybiAnbG9jYWxuZXQnO1xuICByZXR1cm4gJ2N1c3RvbSc7XG59O1xuIiwgImltcG9ydCB7IFNka0Vycm9yIH0gZnJvbSAnLi9TZGtFcnJvcic7XG5cbi8qKiBAY2F0ZWdvcnkgRXJyb3JzICovXG5leHBvcnQgY2xhc3MgSW50ZXJmYWNlSW1wbGVtZW50YXRpb25NaXNzaW5nRXJyb3IgZXh0ZW5kcyBTZGtFcnJvciB7XG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZyA9ICdJbnRlcmZhY2VJbXBsZW1lbnRhdGlvbk1pc3NpbmdFcnJvcic7XG5cbiAgY29uc3RydWN0b3IoaW50ZXJmYWNlTmFtZTogc3RyaW5nLCBjb250ZXh0VmFyaWFibGU6IHN0cmluZykge1xuICAgIGNvbnN0IGludGVyZmFjZUJhc2VuYW1lID0gaW50ZXJmYWNlTmFtZS5yZXBsYWNlKC9JbnRlcmZhY2UkLywgJycpO1xuICAgIGNvbnN0IG1lc3NhZ2UgPVxuICAgICAgYFRyaWVkIHVzaW5nICR7aW50ZXJmYWNlTmFtZX0gYnV0IG5vIGltcGxlbWVudGF0aW9uIG9mIHRoYXQgaW50ZXJmYWNlIHdhcyBmb3VuZC4gYCArXG4gICAgICBgTWFrZSBzdXJlIGFuIGltcGxlbWVudGF0aW9uIGlzIHJlZ2lzdGVyZWQsIGAgK1xuICAgICAgYGUuZy4gdmlhIFwiY29udGV4dC4ke2NvbnRleHRWYXJpYWJsZX0gPSBuZXcgTXkke2ludGVyZmFjZUJhc2VuYW1lfSgpO1wiLmA7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gIH1cbn1cbiIsICJpbXBvcnQgeyBJbnRlcmZhY2VJbXBsZW1lbnRhdGlvbk1pc3NpbmdFcnJvciB9IGZyb20gJy4vZXJyb3JzJztcbmltcG9ydCB0eXBlIHsgR2VuZXJpY0Fib3J0U2lnbmFsIH0gZnJvbSAnLi9HZW5lcmljQWJvcnRTaWduYWwnO1xuaW1wb3J0IHR5cGUgeyBHZW5lcmljRmlsZSB9IGZyb20gJy4vR2VuZXJpY0ZpbGUnO1xuXG4vKipcbiAqIERlZmluZXMgdGhlIGludGVyZmFjZSBmb3IgYSBkb3dubG9hZGVyLlxuICogSXQgYWxsb3dzIHVzIHRvIGZldGNoIGZpbGVzIGZyb20gZ2l2ZW4gVVJJcy5cbiAqXG4gKiBAY2F0ZWdvcnkgQ29udGV4dCBhbmQgSW50ZXJmYWNlc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIERvd25sb2FkZXJJbnRlcmZhY2Uge1xuICAvKiogRG93bmxvYWRzIG11bHRpcGxlIGZpbGVzIGZyb20gYSBsaXN0IG9mIFVSSXMuICovXG4gIGRvd25sb2FkOiAoXG4gICAgdXJpczogc3RyaW5nW10sXG4gICAgb3B0aW9ucz86IERvd25sb2FkZXJPcHRpb25zXG4gICkgPT4gUHJvbWlzZTxHZW5lcmljRmlsZVtdPjtcblxuICAvKiogRG93bmxvYWRzIGFuZCBwYXJzZXMgYSBKU09OIGZpbGUgZnJvbSBhIGdpdmVuIFVSSS4gKi9cbiAgZG93bmxvYWRKc29uOiA8VD4odXJpOiBzdHJpbmcsIG9wdGlvbnM/OiBEb3dubG9hZGVyT3B0aW9ucykgPT4gUHJvbWlzZTxUPjtcbn1cblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBvcHRpb25zIHRoYXQgY2FuIGJlIHBhc3NlZCB3aGVuIGRvd25sb2FkaW5nIGZpbGVzLiAqXG4gKiBAY2F0ZWdvcnkgU3RvcmFnZVxuICovXG5leHBvcnQgdHlwZSBEb3dubG9hZGVyT3B0aW9ucyA9IHtcbiAgLyoqIEFuIGFib3J0IHNpZ25hbCB0byBjYW5jZWwgdGhlIGRvd25sb2FkLiAqL1xuICBzaWduYWw/OiBHZW5lcmljQWJvcnRTaWduYWw7XG59O1xuXG4vKipcbiAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSB7QGxpbmsgRG93bmxvYWRlckludGVyZmFjZX0gdGhhdCB0aHJvd3MgYW4gZXJyb3Igd2hlbiBjYWxsZWQuXG4gKiBAY2F0ZWdvcnkgU3RvcmFnZVxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlTnVsbERvd25sb2FkZXIoKTogRG93bmxvYWRlckludGVyZmFjZSB7XG4gIGNvbnN0IGVycm9ySGFuZGxlciA9ICgpID0+IHtcbiAgICB0aHJvdyBuZXcgSW50ZXJmYWNlSW1wbGVtZW50YXRpb25NaXNzaW5nRXJyb3IoXG4gICAgICAnRG93bmxvYWRlckludGVyZmFjZScsXG4gICAgICAnZG93bmxvYWRlcidcbiAgICApO1xuICB9O1xuICByZXR1cm4geyBkb3dubG9hZDogZXJyb3JIYW5kbGVyLCBkb3dubG9hZEpzb246IGVycm9ySGFuZGxlciB9O1xufVxuIiwgImltcG9ydCB0eXBlIHsgUGRhLCBQdWJsaWNLZXkgfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktcHVibGljLWtleXMnO1xuaW1wb3J0IHsgSW50ZXJmYWNlSW1wbGVtZW50YXRpb25NaXNzaW5nRXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5pbXBvcnQgdHlwZSB7IEtleXBhaXIgfSBmcm9tICcuL0tleXBhaXInO1xuXG4vKipcbiAqIERlZmluZXMgdGhlIGludGVyZmFjZSBmb3IgdGhlIEVkRFNBIGNyeXB0b2dyYXBoeSBhbGdvcml0aG0uXG4gKiBJdCBhbGxvd3MgdXMgdG8gY3JlYXRlLCBmaW5kIGFuZCB1c2UgcHVibGljIGtleXMgYW5kIGtleXBhaXJzLlxuICpcbiAqIEBjYXRlZ29yeSBDb250ZXh0IGFuZCBJbnRlcmZhY2VzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRWRkc2FJbnRlcmZhY2Uge1xuICAvKiogR2VuZXJhdGVzIGEgbmV3IGtleXBhaXIuICovXG4gIGdlbmVyYXRlS2V5cGFpcjogKCkgPT4gS2V5cGFpcjtcbiAgLyoqIFJlc3RvcmVzIGEga2V5cGFpciBmcm9tIGEgc2VjcmV0IGtleS4gKi9cbiAgY3JlYXRlS2V5cGFpckZyb21TZWNyZXRLZXk6IChzZWNyZXRLZXk6IFVpbnQ4QXJyYXkpID0+IEtleXBhaXI7XG4gIC8qKiBSZXN0b3JlcyBhIGtleXBhaXIgZnJvbSBhIHNlZWQuICovXG4gIGNyZWF0ZUtleXBhaXJGcm9tU2VlZDogKHNlZWQ6IFVpbnQ4QXJyYXkpID0+IEtleXBhaXI7XG4gIC8qKiBXaGV0aGVyIHRoZSBnaXZlbiBwdWJsaWMga2V5IGlzIG9uIHRoZSBFZERTQSBlbGxpcHRpYyBjdXJ2ZS4gKi9cbiAgaXNPbkN1cnZlOiAocHVibGljS2V5OiBQdWJsaWNLZXkpID0+IGJvb2xlYW47XG4gIC8qKiBGaW5kcyBhIFByb2dyYW0tRGVyaXZlZCBBZGRyZXNzIGZyb20gdGhlIGdpdmVuIHByb2dyYW1JZCBhbmQgc2VlZHMuICovXG4gIGZpbmRQZGE6IChwcm9ncmFtSWQ6IFB1YmxpY0tleSwgc2VlZHM6IFVpbnQ4QXJyYXlbXSkgPT4gUGRhO1xuICAvKiogU2lnbnMgYSBtZXNzYWdlIHdpdGggdGhlIGdpdmVuIGtleXBhaXIuICovXG4gIHNpZ246IChtZXNzYWdlOiBVaW50OEFycmF5LCBrZXlwYWlyOiBLZXlwYWlyKSA9PiBVaW50OEFycmF5O1xuICAvKiogVmVyaWZpZXMgYSBzaWduYXR1cmUgZm9yIGEgbWVzc2FnZSB3aXRoIHRoZSBnaXZlbiBwdWJsaWMga2V5LiAqL1xuICB2ZXJpZnk6IChcbiAgICBtZXNzYWdlOiBVaW50OEFycmF5LFxuICAgIHNpZ25hdHVyZTogVWludDhBcnJheSxcbiAgICBwdWJsaWNLZXk6IFB1YmxpY0tleVxuICApID0+IGJvb2xlYW47XG59XG5cbi8qKlxuICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIHtAbGluayBFZGRzYUludGVyZmFjZX0gdGhhdCB0aHJvd3MgYW4gZXJyb3Igd2hlbiBjYWxsZWQuXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlTnVsbEVkZHNhKCk6IEVkZHNhSW50ZXJmYWNlIHtcbiAgY29uc3QgZXJyb3JIYW5kbGVyID0gKCkgPT4ge1xuICAgIHRocm93IG5ldyBJbnRlcmZhY2VJbXBsZW1lbnRhdGlvbk1pc3NpbmdFcnJvcignRWRkc2FJbnRlcmZhY2UnLCAnZWRkc2EnKTtcbiAgfTtcbiAgcmV0dXJuIHtcbiAgICBnZW5lcmF0ZUtleXBhaXI6IGVycm9ySGFuZGxlcixcbiAgICBjcmVhdGVLZXlwYWlyRnJvbVNlY3JldEtleTogZXJyb3JIYW5kbGVyLFxuICAgIGNyZWF0ZUtleXBhaXJGcm9tU2VlZDogZXJyb3JIYW5kbGVyLFxuICAgIGlzT25DdXJ2ZTogZXJyb3JIYW5kbGVyLFxuICAgIGZpbmRQZGE6IGVycm9ySGFuZGxlcixcbiAgICBzaWduOiBlcnJvckhhbmRsZXIsXG4gICAgdmVyaWZ5OiBlcnJvckhhbmRsZXIsXG4gIH07XG59XG4iLCAiaW1wb3J0IHsgSW50ZXJmYWNlSW1wbGVtZW50YXRpb25NaXNzaW5nRXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5pbXBvcnQgeyBIdHRwUmVxdWVzdCB9IGZyb20gJy4vSHR0cFJlcXVlc3QnO1xuaW1wb3J0IHsgSHR0cFJlc3BvbnNlIH0gZnJvbSAnLi9IdHRwUmVzcG9uc2UnO1xuXG4vKipcbiAqIERlZmluZXMgdGhlIGludGVyZmFjZSBmb3IgYW4gSFRUUCBjbGllbnQuXG4gKlxuICogQGNhdGVnb3J5IENvbnRleHQgYW5kIEludGVyZmFjZXNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBIdHRwSW50ZXJmYWNlIHtcbiAgLyoqIFNlbmRzIGEgSFRUUCByZXF1ZXN0IGFuZCByZXR1cm5zIGl0cyByZXNwb25zZS4gKi9cbiAgc2VuZDogPFJlc3BvbnNlRGF0YSwgUmVxdWVzdERhdGEgPSBhbnk+KFxuICAgIHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PFJlcXVlc3REYXRhPlxuICApID0+IFByb21pc2U8SHR0cFJlc3BvbnNlPFJlc3BvbnNlRGF0YT4+O1xufVxuXG4vKipcbiAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSB7QGxpbmsgSHR0cEludGVyZmFjZX0gdGhhdCB0aHJvd3MgYW4gZXJyb3Igd2hlbiBjYWxsZWQuXG4gKiBAY2F0ZWdvcnkgSHR0cFxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlTnVsbEh0dHAoKTogSHR0cEludGVyZmFjZSB7XG4gIGNvbnN0IGVycm9ySGFuZGxlciA9ICgpID0+IHtcbiAgICB0aHJvdyBuZXcgSW50ZXJmYWNlSW1wbGVtZW50YXRpb25NaXNzaW5nRXJyb3IoJ0h0dHBJbnRlcmZhY2UnLCAnaHR0cCcpO1xuICB9O1xuICByZXR1cm4geyBzZW5kOiBlcnJvckhhbmRsZXIgfTtcbn1cbiIsICJpbXBvcnQgdHlwZSB7XG4gIFB1YmxpY0tleSxcbiAgUHVibGljS2V5SW5wdXQsXG59IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1wdWJsaWMta2V5cyc7XG5pbXBvcnQgdHlwZSB7IENsdXN0ZXJGaWx0ZXIgfSBmcm9tICcuL0NsdXN0ZXInO1xuaW1wb3J0IHR5cGUgeyBFcnJvcldpdGhMb2dzLCBQcm9ncmFtIH0gZnJvbSAnLi9Qcm9ncmFtJztcbmltcG9ydCB0eXBlIHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuL1RyYW5zYWN0aW9uJztcbmltcG9ydCB7IEludGVyZmFjZUltcGxlbWVudGF0aW9uTWlzc2luZ0Vycm9yLCBQcm9ncmFtRXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgaW50ZXJmYWNlIGZvciBhIHByb2dyYW0gcmVwb3NpdG9yeS5cbiAqIEl0IGFsbG93cyB1cyB0byByZWdpc3RlciBhbmQgcmV0cmlldmUgcHJvZ3JhbXMgd2hlbiBuZWVkZWQuXG4gKlxuICogQGNhdGVnb3J5IENvbnRleHQgYW5kIEludGVyZmFjZXNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQcm9ncmFtUmVwb3NpdG9yeUludGVyZmFjZSB7XG4gIC8qKlxuICAgKiBXaGV0aGVyIGEgZ2l2ZW4gcHJvZ3JhbSBpcyByZWdpc3RlcmVkIGluIHRoZSByZXBvc2l0b3J5LlxuICAgKlxuICAgKiBAcGFyYW0gaWRlbnRpZmllciBUaGUgbmFtZSBvciBwdWJsaWMga2V5IG9mIHRoZSBwcm9ncmFtIHRvIGNoZWNrLlxuICAgKiBAcGFyYW0gY2x1c3RlckZpbHRlciBUaGUgY2x1c3RlciBmaWx0ZXIgdG8gYXBwbHkuIERlZmF1bHRzIHRvIGBcImN1cnJlbnRcImAuXG4gICAqL1xuICBoYXMoaWRlbnRpZmllcjogc3RyaW5nIHwgUHVibGljS2V5LCBjbHVzdGVyRmlsdGVyPzogQ2x1c3RlckZpbHRlcik6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEdldHMgYSBwcm9ncmFtIGZyb20gdGhlIHJlcG9zaXRvcnkuXG4gICAqIFRocm93cyBhbiBlcnJvciBpZiB0aGUgcHJvZ3JhbSBpcyBub3QgZm91bmQuXG4gICAqXG4gICAqIEBwYXJhbSBpZGVudGlmaWVyIFRoZSBuYW1lIG9yIHB1YmxpYyBrZXkgb2YgdGhlIHByb2dyYW0gdG8gcmV0cmlldmUuXG4gICAqIEBwYXJhbSBjbHVzdGVyRmlsdGVyIFRoZSBjbHVzdGVyIGZpbHRlciB0byBhcHBseS4gRGVmYXVsdHMgdG8gYFwiY3VycmVudFwiYC5cbiAgICogQHR5cGVQYXJhbSBUIC0gVGhlIHR5cGUgb2YgdGhlIHByb2dyYW0gdG8gcmV0cmlldmUuIERlZmF1bHRzIHRvIGBQcm9ncmFtYC5cbiAgICovXG4gIGdldDxUIGV4dGVuZHMgUHJvZ3JhbSA9IFByb2dyYW0+KFxuICAgIGlkZW50aWZpZXI6IHN0cmluZyB8IFB1YmxpY0tleSxcbiAgICBjbHVzdGVyRmlsdGVyPzogQ2x1c3RlckZpbHRlclxuICApOiBUO1xuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBwdWJsaWMga2V5IG9mIGEgcHJvZ3JhbSBmcm9tIHRoZSByZXBvc2l0b3J5LFxuICAgKiB3aXRoIGFuIG9wdGlvbmFsIGZhbGxiYWNrIHB1YmxpYyBrZXkuXG4gICAqXG4gICAqIFRocm93cyBhbiBlcnJvciBpZiB0aGUgcHJvZ3JhbSBpcyBub3QgZm91bmQgYW5kIG5vIGZhbGxiYWNrIGlzIHByb3ZpZGVkLlxuICAgKlxuICAgKiBAcGFyYW0gaWRlbnRpZmllciBUaGUgbmFtZSBvciBwdWJsaWMga2V5IG9mIHRoZSBwcm9ncmFtIHRvIHJldHJpZXZlLlxuICAgKiBAcGFyYW0gZmFsbGJhY2sgVGhlIGZhbGxiYWNrIHB1YmxpYyBrZXkgdG8gdXNlIGlmIHRoZSBwcm9ncmFtIGlzIG5vdCBmb3VuZC5cbiAgICogRGVmYXVsdHMgdG8gbm90IHVzaW5nIGEgZmFsbGJhY2sgcHVibGljIGtleS5cbiAgICogQHBhcmFtIGNsdXN0ZXJGaWx0ZXIgVGhlIGNsdXN0ZXIgZmlsdGVyIHRvIGFwcGx5LiBEZWZhdWx0cyB0byBgXCJjdXJyZW50XCJgLlxuICAgKi9cbiAgZ2V0UHVibGljS2V5KFxuICAgIGlkZW50aWZpZXI6IHN0cmluZyB8IFB1YmxpY0tleSxcbiAgICBmYWxsYmFjaz86IFB1YmxpY0tleUlucHV0LFxuICAgIGNsdXN0ZXJGaWx0ZXI/OiBDbHVzdGVyRmlsdGVyXG4gICk6IFB1YmxpY0tleTtcblxuICAvKipcbiAgICogR2V0cyBhbGwgcHJvZ3JhbXMgZnJvbSB0aGUgcmVwb3NpdG9yeSBtYXRjaGluZyB0aGUgZ2l2ZW4gY2x1c3RlciBmaWx0ZXIuXG4gICAqIERlZmF1bHRzIHRvIGdldHRpbmcgYWxsIHByb2dyYW1zIGZyb20gdGhlIGN1cnJlbnQgY2x1c3Rlci5cbiAgICpcbiAgICogQHBhcmFtIGNsdXN0ZXJGaWx0ZXIgVGhlIGNsdXN0ZXIgZmlsdGVyIHRvIGFwcGx5LiBEZWZhdWx0cyB0byBgXCJjdXJyZW50XCJgLlxuICAgKi9cbiAgYWxsKGNsdXN0ZXJGaWx0ZXI/OiBDbHVzdGVyRmlsdGVyKTogUHJvZ3JhbVtdO1xuXG4gIC8qKlxuICAgKiBSZWdpc3RlcnMgYSBuZXcgcHJvZ3JhbSBpbiB0aGUgcmVwb3NpdG9yeS5cbiAgICpcbiAgICogQHBhcmFtIHByb2dyYW0gVGhlIHByb2dyYW0gdG8gcmVnaXN0ZXIuXG4gICAqIEBwYXJhbSBvdmVycmlkZXMgV2hldGhlciB0byByZWdpc3RlciBhbmQgcHJpb3JpdGl6ZVxuICAgKiB0aGUgZ2l2ZW4gcHJvZ3JhbSBldmVuIGlmIGEgcHJvZ3JhbSB3aXRoIHRoZSBzYW1lXG4gICAqIHB1YmxpYyBrZXkgYWxyZWFkeSBleGlzdHMuIERlZmF1bHRzIHRvIGB0cnVlYC5cbiAgICovXG4gIGFkZChwcm9ncmFtOiBQcm9ncmFtLCBvdmVycmlkZXM/OiBib29sZWFuKTogdm9pZDtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIGJpbmRpbmcgYmV0d2VlbiBhIG5hbWUgYW5kIGEgcHJvZ3JhbSBpZGVudGlmaWVyLlxuICAgKiBUaGlzIGNhbiBiZSB1c2VkIHRvIGNyZWF0ZSByZWRpcmVjdGlvbnMgb3IgYWxpYXNlcyB3aGVuIHJlc29sdmluZyBwcm9ncmFtcy5cbiAgICpcbiAgICogQHBhcmFtIGFic3RyYWN0IFRoZSBuYW1lIG9mIHRoZSBiaW5kaW5nLlxuICAgKiBAcGFyYW0gY29uY3JldGUgVGhlIGlkZW50aWZpZXIgdGhpcyBiaW5kaW5nIHNob3VsZCByZXNvbHZlIHRvLlxuICAgKi9cbiAgYmluZChhYnN0cmFjdDogc3RyaW5nLCBjb25jcmV0ZTogc3RyaW5nIHwgUHVibGljS2V5KTogdm9pZDtcblxuICAvKipcbiAgICogUmVtb3ZlcyBhIGJpbmRpbmcgdXNpbmcgaXRzIG5hbWUuXG4gICAqXG4gICAqIEBwYXJhbSBhYnN0cmFjdCBUaGUgbmFtZSBvZiB0aGUgYmluZGluZyB0byByZW1vdmUuXG4gICAqL1xuICB1bmJpbmQoYWJzdHJhY3Q6IHN0cmluZyk6IHZvaWQ7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBjbG9uZWQgaW5zdGFuY2Ugb2YgdGhlIHJlcG9zaXRvcnkuXG4gICAqXG4gICAqIEByZXR1cm5zIEEgbmV3IHJlcG9zaXRvcnkgaW5zdGFuY2Ugd2l0aCB0aGUgc2FtZSBwcm9ncmFtcyBhbmQgYmluZGluZ3MuXG4gICAqL1xuICBjbG9uZSgpOiBQcm9ncmFtUmVwb3NpdG9yeUludGVyZmFjZTtcblxuICAvKipcbiAgICogUmVzb2x2ZXMgYSBjdXN0b20gcHJvZ3JhbSBlcnJvciBmcm9tIGEgdHJhbnNhY3Rpb24gZXJyb3IuXG4gICAqXG4gICAqIEBwYXJhbSBlcnJvciBUaGUgcmF3IGVycm9yIHRvIHJlc29sdmUgY29udGFpbmluZyB0aGUgcHJvZ3JhbSBsb2dzLlxuICAgKiBAcGFyYW0gdHJhbnNhY3Rpb24gVGhlIHRyYW5zYWN0aW9uIHRoYXQgY2F1c2VkIHRoZSBlcnJvci5cbiAgICogQHJldHVybnMgVGhlIHJlc29sdmVkIHByb2dyYW0gZXJyb3IsIG9yIGBudWxsYCBpZiB0aGUgZXJyb3IgY2Fubm90IGJlIHJlc29sdmVkLlxuICAgKi9cbiAgcmVzb2x2ZUVycm9yKFxuICAgIGVycm9yOiBFcnJvcldpdGhMb2dzLFxuICAgIHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvblxuICApOiBQcm9ncmFtRXJyb3IgfCBudWxsO1xufVxuXG4vKipcbiAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSB7QGxpbmsgUHJvZ3JhbVJlcG9zaXRvcnlJbnRlcmZhY2V9IHRoYXQgdGhyb3dzIGFuIGVycm9yIHdoZW4gY2FsbGVkLlxuICogQGNhdGVnb3J5IFByb2dyYW1zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVOdWxsUHJvZ3JhbVJlcG9zaXRvcnkoKTogUHJvZ3JhbVJlcG9zaXRvcnlJbnRlcmZhY2Uge1xuICBjb25zdCBlcnJvckhhbmRsZXIgPSAoKSA9PiB7XG4gICAgdGhyb3cgbmV3IEludGVyZmFjZUltcGxlbWVudGF0aW9uTWlzc2luZ0Vycm9yKFxuICAgICAgJ1Byb2dyYW1SZXBvc2l0b3J5SW50ZXJmYWNlJyxcbiAgICAgICdwcm9ncmFtcydcbiAgICApO1xuICB9O1xuICByZXR1cm4ge1xuICAgIGhhczogZXJyb3JIYW5kbGVyLFxuICAgIGdldDogZXJyb3JIYW5kbGVyLFxuICAgIGdldFB1YmxpY0tleTogZXJyb3JIYW5kbGVyLFxuICAgIGFsbDogZXJyb3JIYW5kbGVyLFxuICAgIGFkZDogZXJyb3JIYW5kbGVyLFxuICAgIGJpbmQ6IGVycm9ySGFuZGxlcixcbiAgICB1bmJpbmQ6IGVycm9ySGFuZGxlcixcbiAgICBjbG9uZTogZXJyb3JIYW5kbGVyLFxuICAgIHJlc29sdmVFcnJvcjogZXJyb3JIYW5kbGVyLFxuICB9O1xufVxuIiwgImltcG9ydCB0eXBlIHsgUHVibGljS2V5IH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXB1YmxpYy1rZXlzJztcbmltcG9ydCB0eXBlIHsgTWF5YmVScGNBY2NvdW50LCBScGNBY2NvdW50IH0gZnJvbSAnLi9BY2NvdW50JztcbmltcG9ydCB7IFNvbEFtb3VudCB9IGZyb20gJy4vQW1vdW50JztcbmltcG9ydCB0eXBlIHsgQ2x1c3RlciB9IGZyb20gJy4vQ2x1c3Rlcic7XG5pbXBvcnQgeyBEYXRlVGltZSB9IGZyb20gJy4vRGF0ZVRpbWUnO1xuaW1wb3J0IHR5cGUgeyBHZW5lcmljQWJvcnRTaWduYWwgfSBmcm9tICcuL0dlbmVyaWNBYm9ydFNpZ25hbCc7XG5pbXBvcnQgdHlwZSB7XG4gIEJsb2NraGFzaCxcbiAgQmxvY2toYXNoV2l0aEV4cGlyeUJsb2NrSGVpZ2h0LFxuICBUcmFuc2FjdGlvbixcbiAgVHJhbnNhY3Rpb25FcnJvcixcbiAgVHJhbnNhY3Rpb25TaWduYXR1cmUsXG4gIFRyYW5zYWN0aW9uU3RhdHVzLFxuICBUcmFuc2FjdGlvbldpdGhNZXRhLFxufSBmcm9tICcuL1RyYW5zYWN0aW9uJztcbmltcG9ydCB7IEludGVyZmFjZUltcGxlbWVudGF0aW9uTWlzc2luZ0Vycm9yIH0gZnJvbSAnLi9lcnJvcnMnO1xuXG4vKipcbiAqIERlZmluZXMgdGhlIGludGVyZmFjZSBmb3IgYW4gUlBDIGNsaWVudC5cbiAqIEl0IGFsbG93cyB1cyB0byBpbnRlcmFjdCB3aXRoIHRoZSBTb2xhbmEgYmxvY2tjaGFpbi5cbiAqXG4gKiBAY2F0ZWdvcnkgQ29udGV4dCBhbmQgSW50ZXJmYWNlc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFJwY0ludGVyZmFjZSB7XG4gIC8qKiBUaGUgUlBDIGVuZHBvaW50IHVzZWQgYnkgdGhlIGNsaWVudC4gKi9cbiAgZ2V0RW5kcG9pbnQoKTogc3RyaW5nO1xuXG4gIC8qKiBUaGUgU29sYW5hIGNsdXN0ZXIgb2YgdGhlIFJQQyBiZWluZyB1c2VkLiAqL1xuICBnZXRDbHVzdGVyKCk6IENsdXN0ZXI7XG5cbiAgLyoqXG4gICAqIEZldGNoIGEgcmF3IGFjY291bnQgYXQgdGhlIGdpdmVuIGFkZHJlc3MuXG4gICAqXG4gICAqIEBwYXJhbSBwdWJsaWNLZXkgVGhlIHB1YmxpYyBrZXkgb2YgdGhlIGFjY291bnQgdG8gZmV0Y2guXG4gICAqIEBwYXJhbSBvcHRpb25zIFRoZSBvcHRpb25zIHRvIHVzZSB3aGVuIGZldGNoaW5nIHRoZSBhY2NvdW50LlxuICAgKiBAcmV0dXJucyBBIHJhdyBhY2NvdW50IHRoYXQgbWF5IG9yIG1heSBub3QgZXhpc3QuXG4gICAqL1xuICBnZXRBY2NvdW50KFxuICAgIHB1YmxpY0tleTogUHVibGljS2V5LFxuICAgIG9wdGlvbnM/OiBScGNHZXRBY2NvdW50T3B0aW9uc1xuICApOiBQcm9taXNlPE1heWJlUnBjQWNjb3VudD47XG5cbiAgLyoqXG4gICAqIEZldGNoIG11bHRpcGxlIHJhdyBhY2NvdW50cyBhdCB0aGUgZ2l2ZW4gYWRkcmVzc2VzLlxuICAgKlxuICAgKiBAcGFyYW0gcHVibGljS2V5IFRoZSBwdWJsaWMga2V5cyBvZiB0aGUgYWNjb3VudHMgdG8gZmV0Y2guXG4gICAqIEBwYXJhbSBvcHRpb25zIFRoZSBvcHRpb25zIHRvIHVzZSB3aGVuIGZldGNoaW5nIG11bHRpcGxlIGFjY291bnRzLlxuICAgKiBAcmV0dXJucyBBbiBhcnJheSBvZiByYXcgYWNjb3VudHMgdGhhdCBtYXkgb3IgbWF5IG5vdCBleGlzdC5cbiAgICovXG4gIGdldEFjY291bnRzKFxuICAgIHB1YmxpY0tleXM6IFB1YmxpY0tleVtdLFxuICAgIG9wdGlvbnM/OiBScGNHZXRBY2NvdW50c09wdGlvbnNcbiAgKTogUHJvbWlzZTxNYXliZVJwY0FjY291bnRbXT47XG5cbiAgLyoqXG4gICAqIEZldGNoIG11bHRpcGxlIHJhdyBhY2NvdW50cyBmcm9tIGEgcHJvZ3JhbS5cbiAgICpcbiAgICogQHBhcmFtIHByb2dyYW1JZCBUaGUgcHVibGljIGtleSBvZiB0aGUgcHJvZ3JhbSB0byBmZXRjaCBhY2NvdW50cyBmcm9tLlxuICAgKiBAcGFyYW0gb3B0aW9ucyBUaGUgb3B0aW9ucyB0byB1c2Ugd2hlbiBmZXRjaGluZyBwcm9ncmFtIGFjY291bnRzLlxuICAgKiBAcmV0dXJucyBBbiBhcnJheSBvZiByYXcgYWNjb3VudHMuXG4gICAqL1xuICBnZXRQcm9ncmFtQWNjb3VudHMoXG4gICAgcHJvZ3JhbUlkOiBQdWJsaWNLZXksXG4gICAgb3B0aW9ucz86IFJwY0dldFByb2dyYW1BY2NvdW50c09wdGlvbnNcbiAgKTogUHJvbWlzZTxScGNBY2NvdW50W10+O1xuXG4gIC8qKlxuICAgKiBGZXRjaCB0aGUgZXN0aW1hdGVkIHByb2R1Y3Rpb24gdGltZSBvZiBhIGJsb2NrLlxuICAgKlxuICAgKiBAcGFyYW0gc2xvdCBUaGUgc2xvdCB0byBnZXQgdGhlIGVzdGltYXRlZCBwcm9kdWN0aW9uIHRpbWUgZm9yLlxuICAgKiBAcGFyYW0gb3B0aW9ucyBUaGUgb3B0aW9ucyB0byB1c2Ugd2hlbiBnZXR0aW5nIHRoZSBibG9jayB0aW1lIG9mIGEgc2xvdC5cbiAgICogQHJldHVybnMgVGhlIGVzdGltYXRlZCBwcm9kdWN0aW9uIHRpbWUgb2YgdGhlIGJsb2NrIGluIFVuaXggdGltZS5cbiAgICovXG4gIGdldEJsb2NrVGltZShcbiAgICBzbG90OiBudW1iZXIsXG4gICAgb3B0aW9ucz86IFJwY0dldEJsb2NrVGltZU9wdGlvbnNcbiAgKTogUHJvbWlzZTxEYXRlVGltZSB8IG51bGw+O1xuXG4gIC8qKlxuICAgKiBGZXRjaCB0aGUgYmFsYW5jZSBvZiBhbiBhY2NvdW50LlxuICAgKlxuICAgKiBAcGFyYW0gcHVibGljS2V5IFRoZSBwdWJsaWMga2V5IG9mIHRoZSBhY2NvdW50LlxuICAgKiBAcGFyYW0gb3B0aW9ucyBUaGUgb3B0aW9ucyB0byB1c2Ugd2hlbiBmZXRjaGluZyBhbiBhY2NvdW50J3MgYmFsYW5jZS5cbiAgICogQHJldHVybnMgQW4gYW1vdW50IG9mIFNPTC5cbiAgICovXG4gIGdldEJhbGFuY2UoXG4gICAgcHVibGljS2V5OiBQdWJsaWNLZXksXG4gICAgb3B0aW9ucz86IFJwY0dldEJhbGFuY2VPcHRpb25zXG4gICk6IFByb21pc2U8U29sQW1vdW50PjtcblxuICAvKipcbiAgICogR2V0IHRoZSBhbW91bnQgb2YgcmVudC1leGVtcHQgU09MIHJlcXVpcmVkIHRvIGNyZWF0ZSBhbiBhY2NvdW50IG9mIHRoZSBnaXZlbiBzaXplLlxuICAgKlxuICAgKiBAcGFyYW0gYnl0ZXMgVGhlIHNpemUgb2YgdGhlIGFjY291bnQgaW4gYnl0ZXMuXG4gICAqIEBwYXJhbSBvcHRpb25zIFRoZSBvcHRpb25zIHRvIHVzZSB3aGVuIGZldGNoaW5nIHRoZSByZW50IGV4ZW1wdCBhbW91bnQuXG4gICAqIEByZXR1cm5zIEFuIGFtb3VudCBvZiBTT0wuXG4gICAqL1xuICBnZXRSZW50KGJ5dGVzOiBudW1iZXIsIG9wdGlvbnM/OiBScGNHZXRSZW50T3B0aW9ucyk6IFByb21pc2U8U29sQW1vdW50PjtcblxuICAvKipcbiAgICogRmV0Y2ggdGhlIHJlY2VudCBzbG90LlxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9ucyBUaGUgb3B0aW9ucyB0byB1c2Ugd2hlbiBmZXRjaGluZyB0aGUgcmVjZW50IHNsb3QuXG4gICAqIEByZXR1cm5zIFRoZSByZWNlbnQgc2xvdC5cbiAgICovXG4gIGdldFNsb3Qob3B0aW9ucz86IFJwY0dldFNsb3RPcHRpb25zKTogUHJvbWlzZTxudW1iZXI+O1xuXG4gIC8qKlxuICAgKiBGZXRjaCB0aGUgbGF0ZXN0IGJsb2NraGFzaC5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgVGhlIG9wdGlvbnMgdG8gdXNlIHdoZW4gZmV0Y2hpbmcgdGhlIGxhdGVzdCBibG9ja2hhc2guXG4gICAqIEByZXR1cm5zIFRoZSBsYXRlc3QgYmxvY2toYXNoIGFuZCBpdHMgYmxvY2sgaGVpZ2h0LlxuICAgKi9cbiAgZ2V0TGF0ZXN0QmxvY2toYXNoKFxuICAgIG9wdGlvbnM/OiBScGNHZXRMYXRlc3RCbG9ja2hhc2hPcHRpb25zXG4gICk6IFByb21pc2U8QmxvY2toYXNoV2l0aEV4cGlyeUJsb2NrSGVpZ2h0PjtcblxuICAvKipcbiAgICogRmV0Y2ggYSB0cmFuc2FjdGlvbiBieSBpdHMgc2lnbmF0dXJlLlxuICAgKlxuICAgKiBAcGFyYW0gc2lnbmF0dXJlIFRoZSBzaWduYXR1cmUgb2YgdGhlIHRyYW5zYWN0aW9uIHRvIGZldGNoLlxuICAgKiBAcGFyYW0gb3B0aW9ucyBUaGUgb3B0aW9ucyB0byB1c2Ugd2hlbiBmZXRjaGluZyB0cmFuc2FjdGlvbnMuXG4gICAqIEByZXR1cm5zIEEgdHJhbnNhY3Rpb24gd2l0aCBpdHMgbWV0YWRhdGEgb3IgYG51bGxgIGlmIHRoZSB0cmFuc2FjdGlvbiB3YXMgbm90IGZvdW5kLlxuICAgKi9cbiAgZ2V0VHJhbnNhY3Rpb24oXG4gICAgc2lnbmF0dXJlOiBUcmFuc2FjdGlvblNpZ25hdHVyZSxcbiAgICBvcHRpb25zPzogUnBjR2V0VHJhbnNhY3Rpb25PcHRpb25zXG4gICk6IFByb21pc2U8VHJhbnNhY3Rpb25XaXRoTWV0YSB8IG51bGw+O1xuXG4gIC8qKlxuICAgKiBGZXRjaCB0cmFuc2FjdGlvbiBjb21taXRtZW50cyBmcm9tIGFuIGFycmF5IG9mIHNpZ25hdHVyZXMuXG4gICAqXG4gICAqIEBwYXJhbSBzaWduYXR1cmVzIFRoZSBzaWduYXR1cmVzIG9mIGFsbCB0cmFuc2FjdGlvbnMgd2Ugd2FudCB0byBmZXRjaCBjb21taXRtZW50cyBmb3IuXG4gICAqIEBwYXJhbSBvcHRpb25zIFRoZSBvcHRpb25zIHRvIHVzZSB3aGVuIGZldGNoaW5nIHRyYW5zYWN0aW9uIGNvbW1pdG1lbnRzLlxuICAgKiBAcmV0dXJucyBBbiBhcnJheSBvZiB0cmFuc2FjdGlvbiBzdGF0dXNlcyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgc2lnbmF0dXJlcy5cbiAgICogSWYgYSB0cmFuc2FjdGlvbiB3YXMgbm90IGZvdW5kLCBgbnVsbGAgd2lsbCBiZSByZXR1cm5lZCBpbnN0ZWFkLlxuICAgKi9cbiAgZ2V0U2lnbmF0dXJlU3RhdHVzZXMoXG4gICAgc2lnbmF0dXJlczogVHJhbnNhY3Rpb25TaWduYXR1cmVbXSxcbiAgICBvcHRpb25zPzogUnBjR2V0U2lnbmF0dXJlU3RhdHVzZXNPcHRpb25zXG4gICk6IFByb21pc2U8QXJyYXk8VHJhbnNhY3Rpb25TdGF0dXMgfCBudWxsPj47XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IGFuIGFjY291bnQgYXQgYSBnaXZlbiBhZGRyZXNzIGV4aXN0cy5cbiAgICpcbiAgICogQHBhcmFtIHB1YmxpY0tleSBUaGUgcHVibGljIGtleSBvZiB0aGUgYWNjb3VudC5cbiAgICogQHBhcmFtIG9wdGlvbnMgVGhlIG9wdGlvbnMgdG8gdXNlIHdoZW4gY2hlY2tpbmcgaWYgYW4gYWNjb3VudCBleGlzdHMuXG4gICAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUgYWNjb3VudCBleGlzdHMsIGBmYWxzZWAgb3RoZXJ3aXNlLlxuICAgKi9cbiAgYWNjb3VudEV4aXN0cyhcbiAgICBwdWJsaWNLZXk6IFB1YmxpY0tleSxcbiAgICBvcHRpb25zPzogUnBjQWNjb3VudEV4aXN0c09wdGlvbnNcbiAgKTogUHJvbWlzZTxib29sZWFuPjtcblxuICAvKipcbiAgICogU2VuZCBhbmQgY29uZmlybSBhbiBhaXJkcm9wIHRyYW5zYWN0aW9uIHRvIHRoZSBnaXZlbiBhZGRyZXNzLlxuICAgKlxuICAgKiBAcGFyYW0gcHVibGljS2V5IFRoZSBwdWJsaWMga2V5IG9mIHRoZSBhY2NvdW50IHRvIGFpcmRyb3AgdG8uXG4gICAqIEBwYXJhbSBhbW91bnQgVGhlIGFtb3VudCBvZiBTT0wgdG8gYWlyZHJvcC5cbiAgICogQHBhcmFtIG9wdGlvbnMgVGhlIG9wdGlvbnMgdG8gdXNlIHdoZW4gYWlyZHJvcHBpbmcgU09MLlxuICAgKi9cbiAgYWlyZHJvcChcbiAgICBwdWJsaWNLZXk6IFB1YmxpY0tleSxcbiAgICBhbW91bnQ6IFNvbEFtb3VudCxcbiAgICBvcHRpb25zPzogUnBjQWlyZHJvcE9wdGlvbnNcbiAgKTogUHJvbWlzZTx2b2lkPjtcblxuICAvKipcbiAgICogU2VuZCBhIGN1c3RvbSBSUEMgcmVxdWVzdCB0byB0aGUgbm9kZS5cbiAgICpcbiAgICogQHBhcmFtIG1ldGhvZCBUaGUgbWV0aG9kIHRvIGNhbGwuXG4gICAqIEBwYXJhbSBwYXJhbXMgVGhlIHBhcmFtZXRlcnMgdG8gcGFzcyB0byB0aGUgbWV0aG9kLlxuICAgKiBAcGFyYW0gb3B0aW9ucyBUaGUgb3B0aW9ucyB0byB1c2Ugd2hlbiBzZW5kaW5nIGEgY3VzdG9tIFJQQyByZXF1ZXN0LlxuICAgKiBAcmV0dXJucyBUaGUgZ2VuZXJpYyByZXN1bHQgb2YgdGhlIFJQQyBjYWxsLlxuICAgKi9cbiAgY2FsbDxSLCBQIGV4dGVuZHMgYW55W10gPSBhbnlbXT4oXG4gICAgbWV0aG9kOiBzdHJpbmcsXG4gICAgcGFyYW1zPzogWy4uLlBdLFxuICAgIG9wdGlvbnM/OiBScGNDYWxsT3B0aW9uc1xuICApOiBQcm9taXNlPFI+O1xuXG4gIC8qKlxuICAgKiBTZW5kIGEgdHJhbnNhY3Rpb24gdG8gdGhlIGJsb2NrY2hhaW4uXG4gICAqXG4gICAqIEBwYXJhbSB0cmFuc2FjdGlvbiBUaGUgdHJhbnNhY3Rpb24gdG8gc2VuZC5cbiAgICogQHBhcmFtIG9wdGlvbnMgVGhlIG9wdGlvbnMgdG8gdXNlIHdoZW4gc2VuZGluZyBhIHRyYW5zYWN0aW9uLlxuICAgKiBAcmV0dXJucyBUaGUgc2lnbmF0dXJlIG9mIHRoZSBzZW50IHRyYW5zYWN0aW9uLlxuICAgKi9cbiAgc2VuZFRyYW5zYWN0aW9uKFxuICAgIHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbixcbiAgICBvcHRpb25zPzogUnBjU2VuZFRyYW5zYWN0aW9uT3B0aW9uc1xuICApOiBQcm9taXNlPFRyYW5zYWN0aW9uU2lnbmF0dXJlPjtcblxuICAvKipcbiAgICogQ29uZmlybSBhIHNlbnQgdHJhbnNhY3Rpb24uXG4gICAqXG4gICAqIEBwYXJhbSBzaWduYXR1cmUgVGhlIHNpZ25hdHVyZSBvZiB0aGUgdHJhbnNhY3Rpb24gdG8gY29uZmlybS5cbiAgICogQHBhcmFtIG9wdGlvbnMgVGhlIG9wdGlvbnMgdG8gdXNlIHdoZW4gY29uZmlybWluZyBhIHRyYW5zYWN0aW9uLlxuICAgKiBAcmV0dXJucyBUaGUgUlBDIHJlc3BvbnNlIG9mIHRoZSB0cmFuc2FjdGlvbiBjb25maXJtYXRpb24uXG4gICAqL1xuICBjb25maXJtVHJhbnNhY3Rpb24oXG4gICAgc2lnbmF0dXJlOiBUcmFuc2FjdGlvblNpZ25hdHVyZSxcbiAgICBvcHRpb25zOiBScGNDb25maXJtVHJhbnNhY3Rpb25PcHRpb25zXG4gICk6IFByb21pc2U8UnBjQ29uZmlybVRyYW5zYWN0aW9uUmVzdWx0Pjtcbn1cblxuLyoqXG4gKiBUaGUgdmFyaW91cyBjb21taXRtZW50IGxldmVscyB3aGVuIGZldGNoaW5nIGRhdGEgZnJvbSB0aGUgYmxvY2tjaGFpbi5cbiAqIEBjYXRlZ29yeSBScGNcbiAqL1xuZXhwb3J0IHR5cGUgQ29tbWl0bWVudCA9ICdwcm9jZXNzZWQnIHwgJ2NvbmZpcm1lZCcgfCAnZmluYWxpemVkJztcblxuLyoqXG4gKiBBbiBvYmplY3QgdG8gcmVxdWVzdCBhIHNsaWNlIG9mIGRhdGEgc3RhcnRpbmdcbiAqIGF0IGBvZmZzZXRgIGFuZCBlbmRpbmcgYXQgYG9mZnNldCArIGxlbmd0aGAuXG4gKiBAY2F0ZWdvcnkgUnBjXG4gKi9cbmV4cG9ydCB0eXBlIFJwY0RhdGFTbGljZSA9IHsgb2Zmc2V0OiBudW1iZXI7IGxlbmd0aDogbnVtYmVyIH07XG5cbi8qKlxuICogRGVmaW5lcyBhIGZpbHRlciB0byB1c2Ugd2hlbiBmZXRjaGluZyBwcm9ncmFtIGFjY291bnRzLlxuICogQGNhdGVnb3J5IFJwY1xuICovXG5leHBvcnQgdHlwZSBScGNEYXRhRmlsdGVyID0gUnBjRGF0YUZpbHRlclNpemUgfCBScGNEYXRhRmlsdGVyTWVtY21wO1xuXG4vKipcbiAqIERlZmluZXMgYSBmaWx0ZXIgdGhhdCBzZWxlY3RzIGFjY291bnRzIGJ5IHNpemUuXG4gKiBAY2F0ZWdvcnkgUnBjXG4gKi9cbmV4cG9ydCB0eXBlIFJwY0RhdGFGaWx0ZXJTaXplID0geyBkYXRhU2l6ZTogbnVtYmVyIH07XG5cbi8qKlxuICogRGVmaW5lcyBhIGZpbHRlciB0aGF0IHNlbGVjdHMgYWNjb3VudHMgYnkgY29tcGFyaW5nXG4gKiB0aGUgZ2l2ZW4gYnl0ZXMgYXQgdGhlIGdpdmVuIG9mZnNldC5cbiAqIEBjYXRlZ29yeSBScGNcbiAqL1xuZXhwb3J0IHR5cGUgUnBjRGF0YUZpbHRlck1lbWNtcCA9IHtcbiAgbWVtY21wOiB7IG9mZnNldDogbnVtYmVyOyBieXRlczogVWludDhBcnJheSB9O1xufTtcblxuLyoqXG4gKiBEZWZpbmVzIGFuIFJQQyByZXN1bHQgdGhhdCB3cmFwcyB0aGUgcmV0dXJuZWQgdmFsdWVcbiAqIGFuZCBwcm92aWRlcyB0aGUgc2xvdCBudW1iZXIgYXMgY29udGV4dC5cbiAqIEBjYXRlZ29yeSBScGNcbiAqL1xuZXhwb3J0IHR5cGUgUnBjUmVzdWx0V2l0aENvbnRleHQ8VmFsdWU+ID0ge1xuICBjb250ZXh0OiB7IHNsb3Q6IG51bWJlciB9O1xuICB2YWx1ZTogVmFsdWU7XG59O1xuXG4vKipcbiAqIERlZmluZXMgdGhlIGNvbW1vbiBvcHRpb25zIHJlLXVzZWQgYnkgYWxsXG4gKiB0aGUgbWV0aG9kcyBkZWZpbmVzIGluIHRoZSBSUEMgaW50ZXJmYWNlLlxuICogQGNhdGVnb3J5IFJwY1xuICovXG5leHBvcnQgdHlwZSBScGNCYXNlT3B0aW9ucyA9IHtcbiAgLyoqIEFuIGV4cGxpY2l0IFJQQyByZXF1ZXN0IGlkZW50aWZpZXIuICovXG4gIGlkPzogc3RyaW5nO1xuICAvKiogQW4gYWJvcnQgc2lnbmFsIHRvIHByZW1hdHVyZWx5IGNhbmNlbCB0aGUgcmVxdWVzdC4gKi9cbiAgc2lnbmFsPzogR2VuZXJpY0Fib3J0U2lnbmFsO1xuICAvKiogVGhlIGNvbW1pdG1lbnQgbGV2ZWwgdG8gdXNlIHdoZW4gZmV0Y2hpbmcgZGF0YS4gKi9cbiAgY29tbWl0bWVudD86IENvbW1pdG1lbnQ7XG4gIC8qKiBUaGUgbWluaW11bSBzbG90IHRvIHVzZSB3aGVuIGZldGNoaW5nIGRhdGEuICovXG4gIG1pbkNvbnRleHRTbG90PzogbnVtYmVyO1xufTtcblxuLyoqXG4gKiBUaGUgb3B0aW9ucyB0byB1c2Ugd2hlbiBmZXRjaGluZyBhbiBhY2NvdW50LlxuICogQGNhdGVnb3J5IFJwY1xuICovXG5leHBvcnQgdHlwZSBScGNHZXRBY2NvdW50T3B0aW9ucyA9IFJwY0Jhc2VPcHRpb25zICYge1xuICAvKiogU2VsZWN0IG9ubHkgYSBwb3J0aW9uIG9mIHRoZSBhY2NvdW50J3MgZGF0YS4gKi9cbiAgZGF0YVNsaWNlPzogUnBjRGF0YVNsaWNlO1xufTtcblxuLyoqXG4gKiBUaGUgb3B0aW9ucyB0byB1c2Ugd2hlbiBmZXRjaGluZyBtdWx0aXBsZSBhY2NvdW50cy5cbiAqIEBjYXRlZ29yeSBScGNcbiAqL1xuZXhwb3J0IHR5cGUgUnBjR2V0QWNjb3VudHNPcHRpb25zID0gUnBjQmFzZU9wdGlvbnMgJiB7XG4gIC8qKiBGb3IgZWFjaCBhY2NvdW50LCBzZWxlY3Qgb25seSBhIHBvcnRpb24gb2YgdGhlaXIgZGF0YS4gKi9cbiAgZGF0YVNsaWNlPzogUnBjRGF0YVNsaWNlO1xufTtcblxuLyoqXG4gKiBUaGUgb3B0aW9ucyB0byB1c2Ugd2hlbiBmZXRjaGluZyBwcm9ncmFtIGFjY291bnRzLlxuICogQGNhdGVnb3J5IFJwY1xuICovXG5leHBvcnQgdHlwZSBScGNHZXRQcm9ncmFtQWNjb3VudHNPcHRpb25zID0gUnBjQmFzZU9wdGlvbnMgJiB7XG4gIC8qKiBGb3IgZWFjaCBwcm9ncmFtIGFjY291bnQsIHNlbGVjdCBvbmx5IGEgcG9ydGlvbiBvZiB0aGVpciBkYXRhLiAqL1xuICBkYXRhU2xpY2U/OiBScGNEYXRhU2xpY2U7XG4gIC8qKiBBIHNldCBvZiBmaWx0ZXJzIHRvIG5hcnJvdyBkb3duIHRoZSByZXR1cm5lZCBwcm9ncmFtIGFjY291bnRzLiBNYXggNSBmaWx0ZXJzLiAqL1xuICBmaWx0ZXJzPzogUnBjRGF0YUZpbHRlcltdO1xufTtcblxuLyoqXG4gKiBUaGUgb3B0aW9ucyB0byB1c2Ugd2hlbiBnZXR0aW5nIHRoZSBibG9jayB0aW1lIG9mIGEgc2xvdC5cbiAqIEBjYXRlZ29yeSBScGNcbiAqL1xuZXhwb3J0IHR5cGUgUnBjR2V0QmxvY2tUaW1lT3B0aW9ucyA9IFJwY0Jhc2VPcHRpb25zO1xuXG4vKipcbiAqIFRoZSBvcHRpb25zIHRvIHVzZSB3aGVuIGZldGNoaW5nIHRoZSBiYWxhbmNlIG9mIGFuIGFjY291bnQuXG4gKiBAY2F0ZWdvcnkgUnBjXG4gKi9cbmV4cG9ydCB0eXBlIFJwY0dldEJhbGFuY2VPcHRpb25zID0gUnBjQmFzZU9wdGlvbnM7XG5cbi8qKlxuICogVGhlIG9wdGlvbnMgdG8gdXNlIHdoZW4gZmV0Y2hpbmcgdGhlIHJlbnQgZXhlbXB0IGFtb3VudC5cbiAqIEBjYXRlZ29yeSBScGNcbiAqL1xuZXhwb3J0IHR5cGUgUnBjR2V0UmVudE9wdGlvbnMgPSBScGNCYXNlT3B0aW9ucyAmIHtcbiAgLyoqIEBkZWZhdWx0VmFsdWUgYGZhbHNlYCAqL1xuICBpbmNsdWRlc0hlYWRlckJ5dGVzPzogYm9vbGVhbjtcbn07XG5cbi8qKlxuICogVGhlIG9wdGlvbnMgdG8gdXNlIHdoZW4gZmV0Y2hpbmcgdGhlIHJlY2VudCBzbG90LlxuICogQGNhdGVnb3J5IFJwY1xuICovXG5leHBvcnQgdHlwZSBScGNHZXRTbG90T3B0aW9ucyA9IFJwY0Jhc2VPcHRpb25zO1xuXG4vKipcbiAqIFRoZSBvcHRpb25zIHRvIHVzZSB3aGVuIGZldGNoaW5nIHRoZSBsYXRlc3QgYmxvY2toYXNoLlxuICogQGNhdGVnb3J5IFJwY1xuICovXG5leHBvcnQgdHlwZSBScGNHZXRMYXRlc3RCbG9ja2hhc2hPcHRpb25zID0gUnBjQmFzZU9wdGlvbnM7XG5cbi8qKlxuICogVGhlIG9wdGlvbnMgdG8gdXNlIHdoZW4gZmV0Y2hpbmcgYSB0cmFuc2FjdGlvbi5cbiAqIEBjYXRlZ29yeSBScGNcbiAqL1xuZXhwb3J0IHR5cGUgUnBjR2V0VHJhbnNhY3Rpb25PcHRpb25zID0gUnBjQmFzZU9wdGlvbnM7XG5cbi8qKlxuICogVGhlIG9wdGlvbnMgdG8gdXNlIHdoZW4gZmV0Y2hpbmcgdHJhbnNhY3Rpb24gc3RhdHVzZXMuXG4gKiBAY2F0ZWdvcnkgUnBjXG4gKi9cbmV4cG9ydCB0eXBlIFJwY0dldFNpZ25hdHVyZVN0YXR1c2VzT3B0aW9ucyA9IFJwY0Jhc2VPcHRpb25zICYge1xuICAvKipcbiAgICogRW5hYmxlIHNlYXJjaGluZyBzdGF0dXMgaGlzdG9yeSwgbm90IG5lZWRlZCBmb3IgcmVjZW50IHRyYW5zYWN0aW9ucy5cbiAgICogQGRlZmF1bHRWYWx1ZSBgZmFsc2VgXG4gICAqL1xuICBzZWFyY2hUcmFuc2FjdGlvbkhpc3Rvcnk/OiBib29sZWFuO1xufTtcblxuLyoqXG4gKiBUaGUgb3B0aW9ucyB0byB1c2Ugd2hlbiBjaGVja2luZyBpZiBhbiBhY2NvdW50IGV4aXN0cy5cbiAqIEBjYXRlZ29yeSBScGNcbiAqL1xuZXhwb3J0IHR5cGUgUnBjQWNjb3VudEV4aXN0c09wdGlvbnMgPSBScGNCYXNlT3B0aW9ucztcblxuLyoqXG4gKiBUaGUgb3B0aW9ucyB0byB1c2Ugd2hlbiBhaXJkcm9wcGluZyBTT0wuXG4gKiBAY2F0ZWdvcnkgUnBjXG4gKi9cbmV4cG9ydCB0eXBlIFJwY0FpcmRyb3BPcHRpb25zID0gUGFydGlhbDxScGNDb25maXJtVHJhbnNhY3Rpb25PcHRpb25zPjtcblxuLyoqXG4gKiBUaGUgb3B0aW9ucyB0byB1c2Ugd2hlbiBzZW5kaW5nIGEgY3VzdG9tIFJQQyByZXF1ZXN0LlxuICogQGNhdGVnb3J5IFJwY1xuICovXG5leHBvcnQgdHlwZSBScGNDYWxsT3B0aW9ucyA9IFJwY0Jhc2VPcHRpb25zICYge1xuICAvKipcbiAgICogQnkgZGVmYXVsdCwgdGhlIFJQQyBjbGllbnQgcHVzaGVzIGFuIGFkZGl0aW9uYWwgYG9wdGlvbnNgXG4gICAqIHBhcmFtZXRlciB0byB0aGUgUlBDIHJlcXVlc3Qgd2hlbiBhIGNvbW1pdG1lbnQgaXMgc3BlY2lmaWVkLlxuICAgKiBUaGlzIGBleHRyYWAgcGFyYW1ldGVyIGNhbiBiZSB1c2VkIHRvIGFkZCBtb3JlIGRhdGEgdG8gdGhlXG4gICAqIGBvcHRpb25zYCBwYXJhbWV0ZXIuXG4gICAqL1xuICBleHRyYT86IG9iamVjdDtcbn07XG5cbi8qKlxuICogVGhlIG9wdGlvbnMgdG8gdXNlIHdoZW4gc2VuZGluZyBhIHRyYW5zYWN0aW9uLlxuICogQGNhdGVnb3J5IFJwY1xuICovXG5leHBvcnQgdHlwZSBScGNTZW5kVHJhbnNhY3Rpb25PcHRpb25zID0gUnBjQmFzZU9wdGlvbnMgJiB7XG4gIC8qKiBXaGV0aGVyIHRvIHNraXAgdGhlIHByZWZsaWdodCBjaGVjay4gKi9cbiAgc2tpcFByZWZsaWdodD86IGJvb2xlYW47XG4gIC8qKiBUaGUgY29tbWl0bWVudCBsZXZlbCB0byB1c2UgZm9yIHRoZSBwcmVmbGlnaHQgY2hlY2suICovXG4gIHByZWZsaWdodENvbW1pdG1lbnQ/OiBDb21taXRtZW50O1xuICAvKiogVGhlIG1heGltdW0gbnVtYmVyIG9mIHJldHJpZXMgdG8gdXNlLiAqL1xuICBtYXhSZXRyaWVzPzogbnVtYmVyO1xufTtcblxuLyoqXG4gKiBUaGUgb3B0aW9ucyB0byB1c2Ugd2hlbiBjb25maXJtaW5nIGEgdHJhbnNhY3Rpb24uXG4gKiBAY2F0ZWdvcnkgUnBjXG4gKi9cbmV4cG9ydCB0eXBlIFJwY0NvbmZpcm1UcmFuc2FjdGlvbk9wdGlvbnMgPSBScGNCYXNlT3B0aW9ucyAmIHtcbiAgLyoqIFRoZSBjb25maXJtIHN0cmF0ZWd5IHRvIHVzZS4gKi9cbiAgc3RyYXRlZ3k6IFJwY0NvbmZpcm1UcmFuc2FjdGlvblN0cmF0ZWd5O1xufTtcblxuLyoqXG4gKiBSZXByZXNlbnRzIGFsbCB0aGUgcG9zc2libGUgc3RyYXRlZ2llcyB0byB1c2Ugd2hlbiBjb25maXJtaW5nIGEgdHJhbnNhY3Rpb24uXG4gKiBAY2F0ZWdvcnkgUnBjXG4gKi9cbmV4cG9ydCB0eXBlIFJwY0NvbmZpcm1UcmFuc2FjdGlvblN0cmF0ZWd5ID1cbiAgfCB7XG4gICAgICB0eXBlOiAnYmxvY2toYXNoJztcbiAgICAgIGJsb2NraGFzaDogQmxvY2toYXNoO1xuICAgICAgbGFzdFZhbGlkQmxvY2tIZWlnaHQ6IG51bWJlcjtcbiAgICB9XG4gIHwge1xuICAgICAgdHlwZTogJ2R1cmFibGVOb25jZSc7XG4gICAgICBtaW5Db250ZXh0U2xvdDogbnVtYmVyO1xuICAgICAgbm9uY2VBY2NvdW50UHVia2V5OiBQdWJsaWNLZXk7XG4gICAgICBub25jZVZhbHVlOiBzdHJpbmc7XG4gICAgfTtcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSByZXN1bHQgb2YgYSB0cmFuc2FjdGlvbiBjb25maXJtYXRpb24uXG4gKiBAY2F0ZWdvcnkgUnBjXG4gKi9cbmV4cG9ydCB0eXBlIFJwY0NvbmZpcm1UcmFuc2FjdGlvblJlc3VsdCA9IFJwY1Jlc3VsdFdpdGhDb250ZXh0PHtcbiAgZXJyOiBUcmFuc2FjdGlvbkVycm9yIHwgbnVsbDtcbn0+O1xuXG4vKipcbiAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSB7QGxpbmsgUnBjSW50ZXJmYWNlfSB0aGF0IHRocm93cyBhbiBlcnJvciB3aGVuIGNhbGxlZC5cbiAqIEBjYXRlZ29yeSBScGNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZU51bGxScGMoKTogUnBjSW50ZXJmYWNlIHtcbiAgY29uc3QgZXJyb3JIYW5kbGVyID0gKCkgPT4ge1xuICAgIHRocm93IG5ldyBJbnRlcmZhY2VJbXBsZW1lbnRhdGlvbk1pc3NpbmdFcnJvcignUnBjSW50ZXJmYWNlJywgJ3JwYycpO1xuICB9O1xuICByZXR1cm4ge1xuICAgIGdldEVuZHBvaW50OiBlcnJvckhhbmRsZXIsXG4gICAgZ2V0Q2x1c3RlcjogZXJyb3JIYW5kbGVyLFxuICAgIGdldEFjY291bnQ6IGVycm9ySGFuZGxlcixcbiAgICBnZXRBY2NvdW50czogZXJyb3JIYW5kbGVyLFxuICAgIGdldFByb2dyYW1BY2NvdW50czogZXJyb3JIYW5kbGVyLFxuICAgIGdldEJsb2NrVGltZTogZXJyb3JIYW5kbGVyLFxuICAgIGdldEJhbGFuY2U6IGVycm9ySGFuZGxlcixcbiAgICBnZXRSZW50OiBlcnJvckhhbmRsZXIsXG4gICAgZ2V0U2xvdDogZXJyb3JIYW5kbGVyLFxuICAgIGdldExhdGVzdEJsb2NraGFzaDogZXJyb3JIYW5kbGVyLFxuICAgIGdldFRyYW5zYWN0aW9uOiBlcnJvckhhbmRsZXIsXG4gICAgZ2V0U2lnbmF0dXJlU3RhdHVzZXM6IGVycm9ySGFuZGxlcixcbiAgICBhY2NvdW50RXhpc3RzOiBlcnJvckhhbmRsZXIsXG4gICAgYWlyZHJvcDogZXJyb3JIYW5kbGVyLFxuICAgIGNhbGw6IGVycm9ySGFuZGxlcixcbiAgICBzZW5kVHJhbnNhY3Rpb246IGVycm9ySGFuZGxlcixcbiAgICBjb25maXJtVHJhbnNhY3Rpb246IGVycm9ySGFuZGxlcixcbiAgfTtcbn1cbiIsICJpbXBvcnQgdHlwZSB7IE51bGxhYmxlLCBPcHRpb24gfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktb3B0aW9ucyc7XG5pbXBvcnQgdHlwZSB7XG4gIFB1YmxpY0tleSxcbiAgUHVibGljS2V5SW5wdXQsXG59IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1wdWJsaWMta2V5cyc7XG5pbXBvcnQgdHlwZSB7XG4gIEFycmF5U2VyaWFsaXplck9wdGlvbnMsXG4gIEJvb2xTZXJpYWxpemVyT3B0aW9ucyxcbiAgQnl0ZXNTZXJpYWxpemVyT3B0aW9ucyxcbiAgRGF0YUVudW1TZXJpYWxpemVyT3B0aW9ucyxcbiAgRGF0YUVudW1Ub1NlcmlhbGl6ZXJUdXBsZSxcbiAgTWFwU2VyaWFsaXplck9wdGlvbnMsXG4gIE51bGxhYmxlU2VyaWFsaXplck9wdGlvbnMsXG4gIE51bWJlclNlcmlhbGl6ZXJPcHRpb25zLFxuICBPcHRpb25TZXJpYWxpemVyT3B0aW9ucyxcbiAgUHVibGljS2V5U2VyaWFsaXplck9wdGlvbnMsXG4gIFNjYWxhckVudW1TZXJpYWxpemVyT3B0aW9ucyxcbiAgU2VyaWFsaXplcixcbiAgU2V0U2VyaWFsaXplck9wdGlvbnMsXG4gIFNpbmdsZUJ5dGVOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyxcbiAgU3RyaW5nU2VyaWFsaXplck9wdGlvbnMsXG4gIFN0cnVjdFNlcmlhbGl6ZXJPcHRpb25zLFxuICBTdHJ1Y3RUb1NlcmlhbGl6ZXJUdXBsZSxcbiAgVHVwbGVTZXJpYWxpemVyT3B0aW9ucyxcbiAgVW5pdFNlcmlhbGl6ZXJPcHRpb25zLFxuICBXcmFwSW5TZXJpYWxpemVyLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMnO1xuaW1wb3J0IHsgRGF0YUVudW0sIFNjYWxhckVudW0gfSBmcm9tICcuL0VudW1zJztcbmltcG9ydCB7IEludGVyZmFjZUltcGxlbWVudGF0aW9uTWlzc2luZ0Vycm9yIH0gZnJvbSAnLi9lcnJvcnMnO1xuXG4vKipcbiAqIERlZmluZXMgdGhlIGludGVyZmFjZSBmb3IgYSBzZXQgb2Ygc2VyaWFsaXplcnNcbiAqIHRoYXQgY2FuIGJlIHVzZWQgdG8gc2VyaWFsaXplL2Rlc2VyaWFsaXplIGFueSBTZXJkZSB0eXBlcy5cbiAqXG4gKiBAY2F0ZWdvcnkgQ29udGV4dCBhbmQgSW50ZXJmYWNlc1xuICogQGRlcHJlY2F0ZWQgVGhpcyBpbnRlcmZhY2UgaXMgZGVwcmVjYXRlZC5cbiAqIFlvdSBjYW4gbm93IGRpcmVjdGx5IHVzZSBgQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NlcmlhbGl6ZXJzYCBpbnN0ZWFkLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlcmlhbGl6ZXJJbnRlcmZhY2Uge1xuICAvKipcbiAgICogQ3JlYXRlcyBhIHNlcmlhbGl6ZXIgZm9yIGEgdHVwbGUtbGlrZSBhcnJheS5cbiAgICpcbiAgICogQHBhcmFtIGl0ZW1zIC0gVGhlIHNlcmlhbGl6ZXJzIHRvIHVzZSBmb3IgZWFjaCBpdGVtIGluIHRoZSB0dXBsZS5cbiAgICogQHBhcmFtIG9wdGlvbnMgLSBBIHNldCBvZiBvcHRpb25zIGZvciB0aGUgc2VyaWFsaXplci5cbiAgICovXG4gIHR1cGxlOiA8VCBleHRlbmRzIGFueVtdLCBVIGV4dGVuZHMgVCA9IFQ+KFxuICAgIGl0ZW1zOiBXcmFwSW5TZXJpYWxpemVyPFsuLi5UXSwgWy4uLlVdPixcbiAgICBvcHRpb25zPzogVHVwbGVTZXJpYWxpemVyT3B0aW9uc1xuICApID0+IFNlcmlhbGl6ZXI8VCwgVT47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBzZXJpYWxpemVyIGZvciBhbiBhcnJheSBvZiBpdGVtcy5cbiAgICpcbiAgICogQHBhcmFtIGl0ZW0gLSBUaGUgc2VyaWFsaXplciB0byB1c2UgZm9yIHRoZSBhcnJheSdzIGl0ZW1zLlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICAgKi9cbiAgYXJyYXk6IDxULCBVIGV4dGVuZHMgVCA9IFQ+KFxuICAgIGl0ZW06IFNlcmlhbGl6ZXI8VCwgVT4sXG4gICAgb3B0aW9ucz86IEFycmF5U2VyaWFsaXplck9wdGlvbnNcbiAgKSA9PiBTZXJpYWxpemVyPFRbXSwgVVtdPjtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIHNlcmlhbGl6ZXIgZm9yIGEgbWFwLlxuICAgKlxuICAgKiBAcGFyYW0ga2V5IC0gVGhlIHNlcmlhbGl6ZXIgdG8gdXNlIGZvciB0aGUgbWFwJ3Mga2V5cy5cbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHNlcmlhbGl6ZXIgdG8gdXNlIGZvciB0aGUgbWFwJ3MgdmFsdWVzLlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICAgKi9cbiAgbWFwOiA8VEssIFRWLCBVSyBleHRlbmRzIFRLID0gVEssIFVWIGV4dGVuZHMgVFYgPSBUVj4oXG4gICAga2V5OiBTZXJpYWxpemVyPFRLLCBVSz4sXG4gICAgdmFsdWU6IFNlcmlhbGl6ZXI8VFYsIFVWPixcbiAgICBvcHRpb25zPzogTWFwU2VyaWFsaXplck9wdGlvbnNcbiAgKSA9PiBTZXJpYWxpemVyPE1hcDxUSywgVFY+LCBNYXA8VUssIFVWPj47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBzZXJpYWxpemVyIGZvciBhIHNldC5cbiAgICpcbiAgICogQHBhcmFtIGl0ZW0gLSBUaGUgc2VyaWFsaXplciB0byB1c2UgZm9yIHRoZSBzZXQncyBpdGVtcy5cbiAgICogQHBhcmFtIG9wdGlvbnMgLSBBIHNldCBvZiBvcHRpb25zIGZvciB0aGUgc2VyaWFsaXplci5cbiAgICovXG4gIHNldDogPFQsIFUgZXh0ZW5kcyBUID0gVD4oXG4gICAgaXRlbTogU2VyaWFsaXplcjxULCBVPixcbiAgICBvcHRpb25zPzogU2V0U2VyaWFsaXplck9wdGlvbnNcbiAgKSA9PiBTZXJpYWxpemVyPFNldDxUPiwgU2V0PFU+PjtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIHNlcmlhbGl6ZXIgZm9yIGFuIG9wdGlvbmFsIHZhbHVlIHVzaW5nIHRoZSB7QGxpbmsgT3B0aW9ufSB0eXBlLlxuICAgKlxuICAgKiBAcGFyYW0gaXRlbSAtIFRoZSBzZXJpYWxpemVyIHRvIHVzZSBmb3IgdGhlIHZhbHVlIHRoYXQgbWF5IGJlIHByZXNlbnQuXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gICAqL1xuICBvcHRpb246IDxULCBVIGV4dGVuZHMgVCA9IFQ+KFxuICAgIGl0ZW06IFNlcmlhbGl6ZXI8VCwgVT4sXG4gICAgb3B0aW9ucz86IE9wdGlvblNlcmlhbGl6ZXJPcHRpb25zXG4gICkgPT4gU2VyaWFsaXplcjxPcHRpb248VD4gfCBOdWxsYWJsZTxUPiwgT3B0aW9uPFU+PjtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIHNlcmlhbGl6ZXIgZm9yIGFuIG9wdGlvbmFsIHZhbHVlIHVzaW5nIGBudWxsYCBhcyB0aGUgYE5vbmVgIHZhbHVlLlxuICAgKlxuICAgKiBAcGFyYW0gaXRlbSAtIFRoZSBzZXJpYWxpemVyIHRvIHVzZSBmb3IgdGhlIHZhbHVlIHRoYXQgbWF5IGJlIHByZXNlbnQuXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gICAqL1xuICBudWxsYWJsZTogPFQsIFUgZXh0ZW5kcyBUID0gVD4oXG4gICAgaXRlbTogU2VyaWFsaXplcjxULCBVPixcbiAgICBvcHRpb25zPzogTnVsbGFibGVTZXJpYWxpemVyT3B0aW9uc1xuICApID0+IFNlcmlhbGl6ZXI8TnVsbGFibGU8VD4sIE51bGxhYmxlPFU+PjtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIHNlcmlhbGl6ZXIgZm9yIGEgY3VzdG9tIG9iamVjdC5cbiAgICpcbiAgICogQHBhcmFtIGZpZWxkcyAtIFRoZSBuYW1lIGFuZCBzZXJpYWxpemVyIG9mIGVhY2ggZmllbGQuXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gICAqL1xuICBzdHJ1Y3Q6IDxUIGV4dGVuZHMgb2JqZWN0LCBVIGV4dGVuZHMgVCA9IFQ+KFxuICAgIGZpZWxkczogU3RydWN0VG9TZXJpYWxpemVyVHVwbGU8VCwgVT4sXG4gICAgb3B0aW9ucz86IFN0cnVjdFNlcmlhbGl6ZXJPcHRpb25zXG4gICkgPT4gU2VyaWFsaXplcjxULCBVPjtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIHNjYWxhciBlbnVtIHNlcmlhbGl6ZXIuXG4gICAqXG4gICAqIEBwYXJhbSBjb25zdHJ1Y3RvciAtIFRoZSBjb25zdHJ1Y3RvciBvZiB0aGUgc2NhbGFyIGVudW0uXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gICAqL1xuICBlbnVtPFQ+KFxuICAgIGNvbnN0cnVjdG9yOiBTY2FsYXJFbnVtPFQ+ICYge30sXG4gICAgb3B0aW9ucz86IFNjYWxhckVudW1TZXJpYWxpemVyT3B0aW9uc1xuICApOiBTZXJpYWxpemVyPFQ+O1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgZGF0YSBlbnVtIHNlcmlhbGl6ZXIuXG4gICAqXG4gICAqIEBwYXJhbSB2YXJpYW50cyAtIFRoZSB2YXJpYW50IHNlcmlhbGl6ZXJzIG9mIHRoZSBkYXRhIGVudW0uXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gICAqL1xuICBkYXRhRW51bTxUIGV4dGVuZHMgRGF0YUVudW0sIFUgZXh0ZW5kcyBUID0gVD4oXG4gICAgdmFyaWFudHM6IERhdGFFbnVtVG9TZXJpYWxpemVyVHVwbGU8VCwgVT4sXG4gICAgb3B0aW9ucz86IERhdGFFbnVtU2VyaWFsaXplck9wdGlvbnNcbiAgKTogU2VyaWFsaXplcjxULCBVPjtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIHN0cmluZyBzZXJpYWxpemVyLlxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICAgKi9cbiAgc3RyaW5nOiAob3B0aW9ucz86IFN0cmluZ1NlcmlhbGl6ZXJPcHRpb25zKSA9PiBTZXJpYWxpemVyPHN0cmluZz47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBib29sZWFuIHNlcmlhbGl6ZXIuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gICAqL1xuICBib29sOiAob3B0aW9ucz86IEJvb2xTZXJpYWxpemVyT3B0aW9ucykgPT4gU2VyaWFsaXplcjxib29sZWFuPjtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIHZvaWQgc2VyaWFsaXplci5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBBIHNldCBvZiBvcHRpb25zIGZvciB0aGUgc2VyaWFsaXplci5cbiAgICovXG4gIHVuaXQ6IChvcHRpb25zPzogVW5pdFNlcmlhbGl6ZXJPcHRpb25zKSA9PiBTZXJpYWxpemVyPHZvaWQ+O1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgc2VyaWFsaXplciBmb3IgMS1ieXRlIHVuc2lnbmVkIGludGVnZXJzLlxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICAgKi9cbiAgdTg6IChvcHRpb25zPzogU2luZ2xlQnl0ZU51bWJlclNlcmlhbGl6ZXJPcHRpb25zKSA9PiBTZXJpYWxpemVyPG51bWJlcj47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBzZXJpYWxpemVyIGZvciAyLWJ5dGVzIHVuc2lnbmVkIGludGVnZXJzLlxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICAgKi9cbiAgdTE2OiAob3B0aW9ucz86IE51bWJlclNlcmlhbGl6ZXJPcHRpb25zKSA9PiBTZXJpYWxpemVyPG51bWJlcj47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBzZXJpYWxpemVyIGZvciA0LWJ5dGVzIHVuc2lnbmVkIGludGVnZXJzLlxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICAgKi9cbiAgdTMyOiAob3B0aW9ucz86IE51bWJlclNlcmlhbGl6ZXJPcHRpb25zKSA9PiBTZXJpYWxpemVyPG51bWJlcj47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBzZXJpYWxpemVyIGZvciA4LWJ5dGVzIHVuc2lnbmVkIGludGVnZXJzLlxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICAgKi9cbiAgdTY0OiAoXG4gICAgb3B0aW9ucz86IE51bWJlclNlcmlhbGl6ZXJPcHRpb25zXG4gICkgPT4gU2VyaWFsaXplcjxudW1iZXIgfCBiaWdpbnQsIGJpZ2ludD47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBzZXJpYWxpemVyIGZvciAxNi1ieXRlcyB1bnNpZ25lZCBpbnRlZ2Vycy5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBBIHNldCBvZiBvcHRpb25zIGZvciB0aGUgc2VyaWFsaXplci5cbiAgICovXG4gIHUxMjg6IChcbiAgICBvcHRpb25zPzogTnVtYmVyU2VyaWFsaXplck9wdGlvbnNcbiAgKSA9PiBTZXJpYWxpemVyPG51bWJlciB8IGJpZ2ludCwgYmlnaW50PjtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIHNlcmlhbGl6ZXIgZm9yIDEtYnl0ZSBzaWduZWQgaW50ZWdlcnMuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gICAqL1xuICBpODogKG9wdGlvbnM/OiBTaW5nbGVCeXRlTnVtYmVyU2VyaWFsaXplck9wdGlvbnMpID0+IFNlcmlhbGl6ZXI8bnVtYmVyPjtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIHNlcmlhbGl6ZXIgZm9yIDItYnl0ZXMgc2lnbmVkIGludGVnZXJzLlxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICAgKi9cbiAgaTE2OiAob3B0aW9ucz86IE51bWJlclNlcmlhbGl6ZXJPcHRpb25zKSA9PiBTZXJpYWxpemVyPG51bWJlcj47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBzZXJpYWxpemVyIGZvciA0LWJ5dGVzIHNpZ25lZCBpbnRlZ2Vycy5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBBIHNldCBvZiBvcHRpb25zIGZvciB0aGUgc2VyaWFsaXplci5cbiAgICovXG4gIGkzMjogKG9wdGlvbnM/OiBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucykgPT4gU2VyaWFsaXplcjxudW1iZXI+O1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgc2VyaWFsaXplciBmb3IgOC1ieXRlcyBzaWduZWQgaW50ZWdlcnMuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gICAqL1xuICBpNjQ6IChcbiAgICBvcHRpb25zPzogTnVtYmVyU2VyaWFsaXplck9wdGlvbnNcbiAgKSA9PiBTZXJpYWxpemVyPG51bWJlciB8IGJpZ2ludCwgYmlnaW50PjtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIHNlcmlhbGl6ZXIgZm9yIDE2LWJ5dGVzIHNpZ25lZCBpbnRlZ2Vycy5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBBIHNldCBvZiBvcHRpb25zIGZvciB0aGUgc2VyaWFsaXplci5cbiAgICovXG4gIGkxMjg6IChcbiAgICBvcHRpb25zPzogTnVtYmVyU2VyaWFsaXplck9wdGlvbnNcbiAgKSA9PiBTZXJpYWxpemVyPG51bWJlciB8IGJpZ2ludCwgYmlnaW50PjtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIHNlcmlhbGl6ZXIgZm9yIDQtYnl0ZXMgZmxvYXRpbmcgcG9pbnQgbnVtYmVycy5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBBIHNldCBvZiBvcHRpb25zIGZvciB0aGUgc2VyaWFsaXplci5cbiAgICovXG4gIGYzMjogKG9wdGlvbnM/OiBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucykgPT4gU2VyaWFsaXplcjxudW1iZXI+O1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgc2VyaWFsaXplciBmb3IgOC1ieXRlcyBmbG9hdGluZyBwb2ludCBudW1iZXJzLlxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICAgKi9cbiAgZjY0OiAob3B0aW9ucz86IE51bWJlclNlcmlhbGl6ZXJPcHRpb25zKSA9PiBTZXJpYWxpemVyPG51bWJlcj47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBzZXJpYWxpemVyIHRoYXQgcGFzc2VzIHRoZSBidWZmZXIgYXMtaXMuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gICAqL1xuICBieXRlczogKG9wdGlvbnM/OiBCeXRlc1NlcmlhbGl6ZXJPcHRpb25zKSA9PiBTZXJpYWxpemVyPFVpbnQ4QXJyYXk+O1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgc2VyaWFsaXplciBmb3IgMzItYnl0ZXMgcHVibGljIGtleXMuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gICAqL1xuICBwdWJsaWNLZXk6IChcbiAgICBvcHRpb25zPzogUHVibGljS2V5U2VyaWFsaXplck9wdGlvbnNcbiAgKSA9PiBTZXJpYWxpemVyPFB1YmxpY0tleSB8IFB1YmxpY0tleUlucHV0LCBQdWJsaWNLZXk+O1xufVxuXG4vKipcbiAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSB7QGxpbmsgU2VyaWFsaXplckludGVyZmFjZX0gdGhhdCB0aHJvd3MgYW4gZXJyb3Igd2hlbiBjYWxsZWQuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZU51bGxTZXJpYWxpemVyKCk6IFNlcmlhbGl6ZXJJbnRlcmZhY2Uge1xuICBjb25zdCBlcnJvckhhbmRsZXIgPSAoKSA9PiB7XG4gICAgdGhyb3cgbmV3IEludGVyZmFjZUltcGxlbWVudGF0aW9uTWlzc2luZ0Vycm9yKFxuICAgICAgJ1NlcmlhbGl6ZXJJbnRlcmZhY2UnLFxuICAgICAgJ3NlcmlhbGl6ZXInXG4gICAgKTtcbiAgfTtcbiAgcmV0dXJuIHtcbiAgICB0dXBsZTogZXJyb3JIYW5kbGVyLFxuICAgIGFycmF5OiBlcnJvckhhbmRsZXIsXG4gICAgbWFwOiBlcnJvckhhbmRsZXIsXG4gICAgc2V0OiBlcnJvckhhbmRsZXIsXG4gICAgb3B0aW9uOiBlcnJvckhhbmRsZXIsXG4gICAgbnVsbGFibGU6IGVycm9ySGFuZGxlcixcbiAgICBzdHJ1Y3Q6IGVycm9ySGFuZGxlcixcbiAgICBlbnVtOiBlcnJvckhhbmRsZXIsXG4gICAgZGF0YUVudW06IGVycm9ySGFuZGxlcixcbiAgICBzdHJpbmc6IGVycm9ySGFuZGxlcixcbiAgICBib29sOiBlcnJvckhhbmRsZXIsXG4gICAgdW5pdDogZXJyb3JIYW5kbGVyLFxuICAgIHU4OiBlcnJvckhhbmRsZXIsXG4gICAgdTE2OiBlcnJvckhhbmRsZXIsXG4gICAgdTMyOiBlcnJvckhhbmRsZXIsXG4gICAgdTY0OiBlcnJvckhhbmRsZXIsXG4gICAgdTEyODogZXJyb3JIYW5kbGVyLFxuICAgIGk4OiBlcnJvckhhbmRsZXIsXG4gICAgaTE2OiBlcnJvckhhbmRsZXIsXG4gICAgaTMyOiBlcnJvckhhbmRsZXIsXG4gICAgaTY0OiBlcnJvckhhbmRsZXIsXG4gICAgaTEyODogZXJyb3JIYW5kbGVyLFxuICAgIGYzMjogZXJyb3JIYW5kbGVyLFxuICAgIGY2NDogZXJyb3JIYW5kbGVyLFxuICAgIGJ5dGVzOiBlcnJvckhhbmRsZXIsXG4gICAgcHVibGljS2V5OiBlcnJvckhhbmRsZXIsXG4gIH07XG59XG4iLCAiLyoqXG4gKiBDaHVua3MgYW4gYXJyYXkgaW50byBzbWFsbGVyIGFycmF5cyBvZiAoYXQgbW9zdCkgdGhlIHNwZWNpZmllZCBzaXplLlxuICogQGNhdGVnb3J5IFV0aWxzXG4gKi9cbmV4cG9ydCBjb25zdCBjaHVuayA9IDxUPihhcnJheTogVFtdLCBjaHVua1NpemU6IG51bWJlcik6IFRbXVtdID0+XG4gIGFycmF5LnJlZHVjZSgoY2h1bmtzLCBpdGVtLCBpbmRleCkgPT4ge1xuICAgIGNvbnN0IGNodW5rSW5kZXggPSBNYXRoLmZsb29yKGluZGV4IC8gY2h1bmtTaXplKTtcblxuICAgIGlmICghY2h1bmtzW2NodW5rSW5kZXhdKSB7XG4gICAgICBjaHVua3NbY2h1bmtJbmRleF0gPSBbXTtcbiAgICB9XG5cbiAgICBjaHVua3NbY2h1bmtJbmRleF0ucHVzaChpdGVtKTtcblxuICAgIHJldHVybiBjaHVua3M7XG4gIH0sIFtdIGFzIFRbXVtdKTtcblxuLyoqXG4gKiBaaXBzIHR3byBhcnJheXMgdG9nZXRoZXIsIHVzaW5nIHRoZSBwcm92aWRlZCBmdW5jdGlvbiB0byBtYXAgdGhlIHZhbHVlcy5cbiAqIEBjYXRlZ29yeSBVdGlsc1xuICovXG5leHBvcnQgY29uc3QgemlwTWFwID0gPFQsIFUsIFY+KFxuICBsZWZ0OiBUW10sXG4gIHJpZ2h0OiBVW10sXG4gIGZuOiAodDogVCwgdTogVSB8IG51bGwsIGk6IG51bWJlcikgPT4gVlxuKTogVltdID0+IGxlZnQubWFwKCh0OiBULCBpbmRleCkgPT4gZm4odCwgcmlnaHQ/LltpbmRleF0gPz8gbnVsbCwgaW5kZXgpKTtcblxuLyoqXG4gKiBEZWR1cGxpY2F0ZXMgYW4gYXJyYXkgYnkgdGhlIHByb3ZpZGVkIGZ1bmN0aW9uLlxuICogQGNhdGVnb3J5IFV0aWxzXG4gKi9cbmV4cG9ydCBjb25zdCB1bmlxdWVCeSA9IDxUPihhcnJheTogVFtdLCBmbjogKGE6IFQsIGI6IFQpID0+IGJvb2xlYW4pOiBUW10gPT5cbiAgYXJyYXkucmVkdWNlKChhY2MsIHYpID0+IHtcbiAgICBpZiAoIWFjYy5zb21lKCh4KSA9PiBmbih2LCB4KSkpIGFjYy5wdXNoKHYpO1xuICAgIHJldHVybiBhY2M7XG4gIH0sIFtdIGFzIFRbXSk7XG4iLCAiaW1wb3J0IHtcbiAgUHVibGljS2V5LFxuICBQdWJsaWNLZXlJbnB1dCxcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXB1YmxpYy1rZXlzJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi9UcmFuc2FjdGlvbic7XG5pbXBvcnQgeyB1bmlxdWVCeSB9IGZyb20gJy4vdXRpbHMnO1xuXG4vKipcbiAqIERlZmluZXMgYSBwdWJsaWMga2V5IHRoYXQgY2FuIHNpZ24gdHJhbnNhY3Rpb25zIGFuZCBtZXNzYWdlcy5cbiAqIEBjYXRlZ29yeSBDb250ZXh0IGFuZCBJbnRlcmZhY2VzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2lnbmVyIHtcbiAgLyoqIFRoZSBwdWJsaWMga2V5IG9mIHRoZSBTaWduZXIuICovXG4gIHJlYWRvbmx5IHB1YmxpY0tleTogUHVibGljS2V5O1xuICAvKiogU2lnbnMgdGhlIGdpdmVuIG1lc3NhZ2UuICovXG4gIHJlYWRvbmx5IHNpZ25NZXNzYWdlOiAobWVzc2FnZTogVWludDhBcnJheSkgPT4gUHJvbWlzZTxVaW50OEFycmF5PjtcbiAgLyoqIFNpZ25zIHRoZSBnaXZlbiB0cmFuc2FjdGlvbi4gKi9cbiAgcmVhZG9ubHkgc2lnblRyYW5zYWN0aW9uOiAodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKSA9PiBQcm9taXNlPFRyYW5zYWN0aW9uPjtcbiAgLyoqIFNpZ25zIGFsbCB0aGUgZ2l2ZW4gdHJhbnNhY3Rpb25zIGF0IG9uY2UuICovXG4gIHJlYWRvbmx5IHNpZ25BbGxUcmFuc2FjdGlvbnM6IChcbiAgICB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uW11cbiAgKSA9PiBQcm9taXNlPFRyYW5zYWN0aW9uW10+O1xufVxuXG4vKipcbiAqIFNpZ25zIGEgdHJhbnNhY3Rpb24gdXNpbmcgdGhlIHByb3ZpZGVkIHNpZ25lcnMuXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICovXG5leHBvcnQgY29uc3Qgc2lnblRyYW5zYWN0aW9uID0gYXN5bmMgKFxuICB0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24sXG4gIHNpZ25lcnM6IFNpZ25lcltdXG4pOiBQcm9taXNlPFRyYW5zYWN0aW9uPiA9PlxuICBzaWduZXJzLnJlZHVjZShhc3luYyAocHJvbWlzZSwgc2lnbmVyKSA9PiB7XG4gICAgY29uc3QgdW5zaWduZWQgPSBhd2FpdCBwcm9taXNlO1xuICAgIHJldHVybiBzaWduZXIuc2lnblRyYW5zYWN0aW9uKHVuc2lnbmVkKTtcbiAgfSwgUHJvbWlzZS5yZXNvbHZlKHRyYW5zYWN0aW9uKSk7XG5cbi8qKlxuICogU2lnbnMgbXVsdGlwbGUgdHJhbnNhY3Rpb25zIHVzaW5nIHRoZSBwcm92aWRlZCBzaWduZXJzXG4gKiBzdWNoIHRoYXQgc2lnbmVycyB0aGF0IG5lZWQgdG8gc2lnbiBtdWx0aXBsZSB0cmFuc2FjdGlvbnNcbiAqIHNpZ24gdGhlbSBhbGwgYXQgb25jZSB1c2luZyB0aGUgYHNpZ25BbGxUcmFuc2FjdGlvbnNgIG1ldGhvZC5cbiAqXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICovXG5leHBvcnQgY29uc3Qgc2lnbkFsbFRyYW5zYWN0aW9ucyA9IGFzeW5jIChcbiAgdHJhbnNhY3Rpb25zV2l0aFNpZ25lcnM6IHtcbiAgICB0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb247XG4gICAgc2lnbmVyczogU2lnbmVyW107XG4gIH1bXVxuKTogUHJvbWlzZTxUcmFuc2FjdGlvbltdPiA9PiB7XG4gIGNvbnN0IHRyYW5zYWN0aW9ucyA9IHRyYW5zYWN0aW9uc1dpdGhTaWduZXJzLm1hcCgoaXRlbSkgPT4gaXRlbS50cmFuc2FjdGlvbik7XG4gIGNvbnN0IHNpZ25lcnNXaXRoVHJhbnNhY3Rpb25zID0gdHJhbnNhY3Rpb25zV2l0aFNpZ25lcnMucmVkdWNlKFxuICAgIChhbGwsIHsgc2lnbmVycyB9LCBpbmRleCkgPT4ge1xuICAgICAgc2lnbmVycy5mb3JFYWNoKChzaWduZXIpID0+IHtcbiAgICAgICAgY29uc3QgaXRlbSA9IGFsbC5maW5kKFxuICAgICAgICAgIChpdGVtKSA9PiBpdGVtLnNpZ25lci5wdWJsaWNLZXkgPT09IHNpZ25lci5wdWJsaWNLZXlcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKGl0ZW0pIHtcbiAgICAgICAgICBpdGVtLmluZGljZXMucHVzaChpbmRleCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgYWxsLnB1c2goeyBzaWduZXIsIGluZGljZXM6IFtpbmRleF0gfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIGFsbDtcbiAgICB9LFxuICAgIFtdIGFzIHsgc2lnbmVyOiBTaWduZXI7IGluZGljZXM6IG51bWJlcltdIH1bXVxuICApO1xuXG4gIHJldHVybiBzaWduZXJzV2l0aFRyYW5zYWN0aW9ucy5yZWR1Y2UoXG4gICAgYXN5bmMgKHByb21pc2UsIHsgc2lnbmVyLCBpbmRpY2VzIH0pID0+IHtcbiAgICAgIGNvbnN0IHRyYW5zYWN0aW9ucyA9IGF3YWl0IHByb21pc2U7XG4gICAgICBpZiAoaW5kaWNlcy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgY29uc3QgdW5zaWduZWQgPSB0cmFuc2FjdGlvbnNbaW5kaWNlc1swXV07XG4gICAgICAgIHRyYW5zYWN0aW9uc1tpbmRpY2VzWzBdXSA9IGF3YWl0IHNpZ25lci5zaWduVHJhbnNhY3Rpb24odW5zaWduZWQpO1xuICAgICAgICByZXR1cm4gdHJhbnNhY3Rpb25zO1xuICAgICAgfVxuICAgICAgY29uc3QgdW5zaWduZWQgPSBpbmRpY2VzLm1hcCgoaW5kZXgpID0+IHRyYW5zYWN0aW9uc1tpbmRleF0pO1xuICAgICAgY29uc3Qgc2lnbmVkID0gYXdhaXQgc2lnbmVyLnNpZ25BbGxUcmFuc2FjdGlvbnModW5zaWduZWQpO1xuICAgICAgaW5kaWNlcy5mb3JFYWNoKChpbmRleCwgcG9zaXRpb24pID0+IHtcbiAgICAgICAgdHJhbnNhY3Rpb25zW2luZGV4XSA9IHNpZ25lZFtwb3NpdGlvbl07XG4gICAgICB9KTtcbiAgICAgIHJldHVybiB0cmFuc2FjdGlvbnM7XG4gICAgfSxcbiAgICBQcm9taXNlLnJlc29sdmUodHJhbnNhY3Rpb25zKVxuICApO1xufTtcblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBwcm92aWRlZCB2YWx1ZSBpcyBhIGBTaWduZXJgLlxuICogQGNhdGVnb3J5IFNpZ25lcnMgYW5kIFB1YmxpY0tleXNcbiAqL1xuZXhwb3J0IGNvbnN0IGlzU2lnbmVyID0gKHZhbHVlOiBQdWJsaWNLZXlJbnB1dCB8IFNpZ25lcik6IHZhbHVlIGlzIFNpZ25lciA9PlxuICB0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnICYmICdwdWJsaWNLZXknIGluIHZhbHVlICYmICdzaWduTWVzc2FnZScgaW4gdmFsdWU7XG5cbi8qKlxuICogRGVkdXBsaWNhdGVzIHRoZSBwcm92aWRlZCBzaWduZXJzIGJ5IHB1YmxpYyBrZXkuXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICovXG5leHBvcnQgY29uc3QgdW5pcXVlU2lnbmVycyA9IChzaWduZXJzOiBTaWduZXJbXSk6IFNpZ25lcltdID0+XG4gIHVuaXF1ZUJ5KHNpZ25lcnMsIChhLCBiKSA9PiBhLnB1YmxpY0tleSA9PT0gYi5wdWJsaWNLZXkpO1xuXG4vKipcbiAqIENyZWF0ZXMgYSBgU2lnbmVyYCB0aGF0LCB3aGVuIHJlcXVpcmVkIHRvIHNpZ24sIGRvZXMgbm90aGluZy5cbiAqIFRoaXMgY2FuIGJlIHVzZWZ1bCB3aGVuIGxpYnJhcmllcyByZXF1aXJlIGEgYFNpZ25lcmAgYnV0XG4gKiB3ZSBkb24ndCBoYXZlIG9uZSBpbiB0aGUgY3VycmVudCBlbnZpcm9ubWVudC4gRm9yIGV4YW1wbGUsXG4gKiBpZiB0aGUgdHJhbnNhY3Rpb24gd2lsbCB0aGVuIGJlIHNpZ25lZCBpbiBhIGJhY2tlbmQgc2VydmVyLlxuICpcbiAqIEBjYXRlZ29yeSBTaWduZXJzIGFuZCBQdWJsaWNLZXlzXG4gKi9cbmV4cG9ydCBjb25zdCBjcmVhdGVOb29wU2lnbmVyID0gKHB1YmxpY0tleTogUHVibGljS2V5KTogU2lnbmVyID0+ICh7XG4gIHB1YmxpY0tleSxcbiAgYXN5bmMgc2lnbk1lc3NhZ2UobWVzc2FnZTogVWludDhBcnJheSk6IFByb21pc2U8VWludDhBcnJheT4ge1xuICAgIHJldHVybiBtZXNzYWdlO1xuICB9LFxuICBhc3luYyBzaWduVHJhbnNhY3Rpb24odHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKTogUHJvbWlzZTxUcmFuc2FjdGlvbj4ge1xuICAgIHJldHVybiB0cmFuc2FjdGlvbjtcbiAgfSxcbiAgYXN5bmMgc2lnbkFsbFRyYW5zYWN0aW9ucyhcbiAgICB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uW11cbiAgKTogUHJvbWlzZTxUcmFuc2FjdGlvbltdPiB7XG4gICAgcmV0dXJuIHRyYW5zYWN0aW9ucztcbiAgfSxcbn0pO1xuXG4vKipcbiAqIENyZWF0ZXMgYSBgU2lnbmVyYCB0aGF0LCB3aGVuIHJlcXVpcmVkIHRvIHNpZ24sIHRocm93cyBhbiBlcnJvci5cbiAqIEBjYXRlZ29yeSBTaWduZXJzIGFuZCBQdWJsaWNLZXlzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVOdWxsU2lnbmVyKCk6IFNpZ25lciB7XG4gIGNvbnN0IGVycm9yID0gbmV3IEVycm9yKFxuICAgICdUcnlpbmcgdG8gdXNlIGEgTnVsbFNpZ25lci4gJyArXG4gICAgICAnRGlkIHlvdSBmb3JnZXQgdG8gc2V0IGEgU2lnbmVyIG9uIHlvdXIgVW1pIGluc3RhbmNlPyAnICtcbiAgICAgICdTZWUgdGhlIGBzaWduZXJJZGVudGl0eWAgbWV0aG9kIGZvciBtb3JlIGluZm9ybWF0aW9uLidcbiAgKTtcbiAgY29uc3QgZXJyb3JIYW5kbGVyID0gKCkgPT4ge1xuICAgIHRocm93IGVycm9yO1xuICB9O1xuICByZXR1cm4ge1xuICAgIGdldCBwdWJsaWNLZXkoKTogUHVibGljS2V5IHtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH0sXG4gICAgc2lnbk1lc3NhZ2U6IGVycm9ySGFuZGxlcixcbiAgICBzaWduVHJhbnNhY3Rpb246IGVycm9ySGFuZGxlcixcbiAgICBzaWduQWxsVHJhbnNhY3Rpb25zOiBlcnJvckhhbmRsZXIsXG4gIH07XG59XG4iLCAiaW1wb3J0IHsgSW50ZXJmYWNlSW1wbGVtZW50YXRpb25NaXNzaW5nRXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5pbXBvcnQgdHlwZSB7XG4gIFNlcmlhbGl6ZWRUcmFuc2FjdGlvbixcbiAgU2VyaWFsaXplZFRyYW5zYWN0aW9uTWVzc2FnZSxcbiAgVHJhbnNhY3Rpb24sXG4gIFRyYW5zYWN0aW9uSW5wdXQsXG4gIFRyYW5zYWN0aW9uTWVzc2FnZSxcbn0gZnJvbSAnLi9UcmFuc2FjdGlvbic7XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgaW50ZXJmYWNlIGZvciBhIHRyYW5zYWN0aW9uIGZhY3RvcnkuXG4gKiBJdCBhbGxvd3MgdXMgdG8gY3JlYXRlLCBzZXJpYWxpemUgYW5kIGRlc2VyaWFsaXplIHRyYW5zYWN0aW9ucyBhbmQgdGhlaXIgbWVzc2FnZXMuXG4gKlxuICogQGNhdGVnb3J5IENvbnRleHQgYW5kIEludGVyZmFjZXNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUcmFuc2FjdGlvbkZhY3RvcnlJbnRlcmZhY2Uge1xuICAvKiogQ3JlYXRlcyBhIG5ldyB0cmFuc2FjdGlvbiBmcm9tIGEgZ2l2ZW4gaW5wdXQuICovXG4gIGNyZWF0ZShpbnB1dDogVHJhbnNhY3Rpb25JbnB1dCk6IFRyYW5zYWN0aW9uO1xuICAvKiogU2VyaWFsaXplcyBhIHRyYW5zYWN0aW9uLiAqL1xuICBzZXJpYWxpemUodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKTogU2VyaWFsaXplZFRyYW5zYWN0aW9uO1xuICAvKiogRGVzZXJpYWxpemVzIGEgdHJhbnNhY3Rpb24uICovXG4gIGRlc2VyaWFsaXplKHNlcmlhbGl6ZWRUcmFuc2FjdGlvbjogU2VyaWFsaXplZFRyYW5zYWN0aW9uKTogVHJhbnNhY3Rpb247XG4gIC8qKiBTZXJpYWxpemVzIGEgdHJhbnNhY3Rpb24gbWVzc2FnZS4gKi9cbiAgc2VyaWFsaXplTWVzc2FnZShtZXNzYWdlOiBUcmFuc2FjdGlvbk1lc3NhZ2UpOiBTZXJpYWxpemVkVHJhbnNhY3Rpb25NZXNzYWdlO1xuICAvKiogRGVzZXJpYWxpemVzIGEgdHJhbnNhY3Rpb24gbWVzc2FnZS4gKi9cbiAgZGVzZXJpYWxpemVNZXNzYWdlKFxuICAgIHNlcmlhbGl6ZWRNZXNzYWdlOiBTZXJpYWxpemVkVHJhbnNhY3Rpb25NZXNzYWdlXG4gICk6IFRyYW5zYWN0aW9uTWVzc2FnZTtcbn1cblxuLyoqXG4gKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUge0BsaW5rIFRyYW5zYWN0aW9uRmFjdG9yeUludGVyZmFjZX0gdGhhdCB0aHJvd3MgYW4gZXJyb3Igd2hlbiBjYWxsZWQuXG4gKiBAY2F0ZWdvcnkgVHJhbnNhY3Rpb25zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVOdWxsVHJhbnNhY3Rpb25GYWN0b3J5KCk6IFRyYW5zYWN0aW9uRmFjdG9yeUludGVyZmFjZSB7XG4gIGNvbnN0IGVycm9ySGFuZGxlciA9ICgpID0+IHtcbiAgICB0aHJvdyBuZXcgSW50ZXJmYWNlSW1wbGVtZW50YXRpb25NaXNzaW5nRXJyb3IoXG4gICAgICAnVHJhbnNhY3Rpb25GYWN0b3J5SW50ZXJmYWNlJyxcbiAgICAgICd0cmFuc2FjdGlvbnMnXG4gICAgKTtcbiAgfTtcbiAgcmV0dXJuIHtcbiAgICBjcmVhdGU6IGVycm9ySGFuZGxlcixcbiAgICBzZXJpYWxpemU6IGVycm9ySGFuZGxlcixcbiAgICBkZXNlcmlhbGl6ZTogZXJyb3JIYW5kbGVyLFxuICAgIHNlcmlhbGl6ZU1lc3NhZ2U6IGVycm9ySGFuZGxlcixcbiAgICBkZXNlcmlhbGl6ZU1lc3NhZ2U6IGVycm9ySGFuZGxlcixcbiAgfTtcbn1cbiIsICJpbXBvcnQgdHlwZSB7IEFtb3VudCB9IGZyb20gJy4vQW1vdW50JztcbmltcG9ydCB7IEludGVyZmFjZUltcGxlbWVudGF0aW9uTWlzc2luZ0Vycm9yIH0gZnJvbSAnLi9lcnJvcnMnO1xuaW1wb3J0IHR5cGUgeyBHZW5lcmljQWJvcnRTaWduYWwgfSBmcm9tICcuL0dlbmVyaWNBYm9ydFNpZ25hbCc7XG5pbXBvcnQgdHlwZSB7IEdlbmVyaWNGaWxlIH0gZnJvbSAnLi9HZW5lcmljRmlsZSc7XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgaW50ZXJmYWNlIGZvciBhbiB1cGxvYWRlci5cbiAqIEl0IGFsbG93cyB1cyB0byB1cGxvYWQgZmlsZXMgYW5kIGdldCB0aGVpciBVUklzLlxuICpcbiAqIEBjYXRlZ29yeSBDb250ZXh0IGFuZCBJbnRlcmZhY2VzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVXBsb2FkZXJJbnRlcmZhY2Uge1xuICAvKiogVXBsb2FkcyBtdWx0aXBsZSBmaWxlcyBhbmQgcmV0dXJucyB0aGVpciBVUklzLiAqL1xuICB1cGxvYWQ6IChcbiAgICBmaWxlczogR2VuZXJpY0ZpbGVbXSxcbiAgICBvcHRpb25zPzogVXBsb2FkZXJVcGxvYWRPcHRpb25zXG4gICkgPT4gUHJvbWlzZTxzdHJpbmdbXT47XG5cbiAgLyoqIFVwbG9hZHMgYSBKU09OIG9iamVjdCBhbmQgcmV0dXJucyBpdHMgVVJJLiAqL1xuICB1cGxvYWRKc29uOiA8VD4oanNvbjogVCwgb3B0aW9ucz86IFVwbG9hZGVyVXBsb2FkT3B0aW9ucykgPT4gUHJvbWlzZTxzdHJpbmc+O1xuXG4gIC8qKiBHZXRzIHRoZSBwcmljZSB0byB1cGxvYWQgYSBsaXN0IG9mIGZpbGVzLiAqL1xuICBnZXRVcGxvYWRQcmljZTogKFxuICAgIGZpbGVzOiBHZW5lcmljRmlsZVtdLFxuICAgIG9wdGlvbnM/OiBVcGxvYWRlckdldFVwbG9hZFByaWNlT3B0aW9uc1xuICApID0+IFByb21pc2U8QW1vdW50Pjtcbn1cblxuLyoqXG4gKiBUaGUgb3B0aW9ucyB0aGF0IGNhbiBiZSBwYXNzZWQgd2hlbiBmZXRjaGluZyB0aGUgdXBsb2FkIHByaWNlLlxuICogQGNhdGVnb3J5IFN0b3JhZ2VcbiAqL1xuZXhwb3J0IHR5cGUgVXBsb2FkZXJHZXRVcGxvYWRQcmljZU9wdGlvbnMgPSB7XG4gIHNpZ25hbD86IEdlbmVyaWNBYm9ydFNpZ25hbDtcbn07XG5cbi8qKlxuICogVGhlIG9wdGlvbnMgdGhhdCBjYW4gYmUgcGFzc2VkIHdoZW4gdXBsb2FkaW5nIGZpbGVzLlxuICogQGNhdGVnb3J5IFN0b3JhZ2VcbiAqL1xuZXhwb3J0IHR5cGUgVXBsb2FkZXJVcGxvYWRPcHRpb25zID0ge1xuICBvblByb2dyZXNzPzogKHBlcmNlbnQ6IG51bWJlciwgLi4uYXJnczogYW55KSA9PiB2b2lkO1xuICBzaWduYWw/OiBHZW5lcmljQWJvcnRTaWduYWw7XG59O1xuXG4vKipcbiAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSB7QGxpbmsgVXBsb2FkZXJJbnRlcmZhY2V9IHRoYXQgdGhyb3dzIGFuIGVycm9yIHdoZW4gY2FsbGVkLlxuICogQGNhdGVnb3J5IFN0b3JhZ2VcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZU51bGxVcGxvYWRlcigpOiBVcGxvYWRlckludGVyZmFjZSB7XG4gIGNvbnN0IGVycm9ySGFuZGxlciA9ICgpID0+IHtcbiAgICB0aHJvdyBuZXcgSW50ZXJmYWNlSW1wbGVtZW50YXRpb25NaXNzaW5nRXJyb3IoXG4gICAgICAnVXBsb2FkZXJJbnRlcmZhY2UnLFxuICAgICAgJ3VwbG9hZGVyJ1xuICAgICk7XG4gIH07XG4gIHJldHVybiB7XG4gICAgdXBsb2FkOiBlcnJvckhhbmRsZXIsXG4gICAgdXBsb2FkSnNvbjogZXJyb3JIYW5kbGVyLFxuICAgIGdldFVwbG9hZFByaWNlOiBlcnJvckhhbmRsZXIsXG4gIH07XG59XG4iLCAiaW1wb3J0IHtcbiAgRG93bmxvYWRlckludGVyZmFjZSxcbiAgY3JlYXRlTnVsbERvd25sb2FkZXIsXG59IGZyb20gJy4vRG93bmxvYWRlckludGVyZmFjZSc7XG5pbXBvcnQgeyBFZGRzYUludGVyZmFjZSwgY3JlYXRlTnVsbEVkZHNhIH0gZnJvbSAnLi9FZGRzYUludGVyZmFjZSc7XG5pbXBvcnQgeyBIdHRwSW50ZXJmYWNlLCBjcmVhdGVOdWxsSHR0cCB9IGZyb20gJy4vSHR0cEludGVyZmFjZSc7XG5pbXBvcnQge1xuICBjcmVhdGVOdWxsUHJvZ3JhbVJlcG9zaXRvcnksXG4gIFByb2dyYW1SZXBvc2l0b3J5SW50ZXJmYWNlLFxufSBmcm9tICcuL1Byb2dyYW1SZXBvc2l0b3J5SW50ZXJmYWNlJztcbmltcG9ydCB7IGNyZWF0ZU51bGxScGMsIFJwY0ludGVyZmFjZSB9IGZyb20gJy4vUnBjSW50ZXJmYWNlJztcbmltcG9ydCB7XG4gIGNyZWF0ZU51bGxTZXJpYWxpemVyLFxuICBTZXJpYWxpemVySW50ZXJmYWNlLFxufSBmcm9tICcuL1NlcmlhbGl6ZXJJbnRlcmZhY2UnO1xuaW1wb3J0IHsgY3JlYXRlTnVsbFNpZ25lciwgU2lnbmVyIH0gZnJvbSAnLi9TaWduZXInO1xuaW1wb3J0IHtcbiAgY3JlYXRlTnVsbFRyYW5zYWN0aW9uRmFjdG9yeSxcbiAgVHJhbnNhY3Rpb25GYWN0b3J5SW50ZXJmYWNlLFxufSBmcm9tICcuL1RyYW5zYWN0aW9uRmFjdG9yeUludGVyZmFjZSc7XG5pbXBvcnQgeyBjcmVhdGVOdWxsVXBsb2FkZXIsIFVwbG9hZGVySW50ZXJmYWNlIH0gZnJvbSAnLi9VcGxvYWRlckludGVyZmFjZSc7XG5cbi8qKlxuICogQSBVbWkgY29udGV4dCBvYmplY3QgdGhhdCB1c2VzIGFsbCBvZiB0aGUgaW50ZXJmYWNlcyBwcm92aWRlZCBieSBVbWkuXG4gKiBPbmNlIGNyZWF0ZWQsIHRoZSBlbmQtdXNlciBjYW4gcGFzcyB0aGlzIG9iamVjdCB0byBhbnkgZnVuY3Rpb24gdGhhdFxuICogcmVxdWlyZXMgc29tZSBvciBhbGwgb2YgdGhlc2UgaW50ZXJmYWNlcy5cbiAqXG4gKiBAY2F0ZWdvcnkgQ29udGV4dCBhbmQgSW50ZXJmYWNlc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbnRleHQge1xuICAvKiogQW4gaW50ZXJmYWNlIGZvciBkb3dubG9hZGluZyBmaWxlcyBmcm9tIFVSSXMuICovXG4gIGRvd25sb2FkZXI6IERvd25sb2FkZXJJbnRlcmZhY2U7XG4gIC8qKiBBbiBpbnRlcmZhY2UgZm9yIG1hbmFnaW5nIHB1YmxpYyBhbmQgcHJpdmF0ZSBrZXlzLiAqL1xuICBlZGRzYTogRWRkc2FJbnRlcmZhY2U7XG4gIC8qKiBBbiBpbnRlcmZhY2UgZm9yIHNlbmRpbmcgSFRUUCByZXF1ZXN0cy4gKi9cbiAgaHR0cDogSHR0cEludGVyZmFjZTtcbiAgLyoqIFRoZSBzaWduZXIgdXNpbmcgeW91ciBhcHAuICovXG4gIGlkZW50aXR5OiBTaWduZXI7XG4gIC8qKiBUaGUgc2lnbmVyIHBheWluZyBmb3IgdGhpbmdzLCB1c3VhbGx5IHRoZSBzYW1lIGFzIHRoZSBgaWRlbnRpdHlgLiAqL1xuICBwYXllcjogU2lnbmVyO1xuICAvKiogQW4gaW50ZXJmYWNlIGZvciByZWdpc3RlcmluZyBhbmQgcmV0cmlldmluZyBwcm9ncmFtcy4gKi9cbiAgcHJvZ3JhbXM6IFByb2dyYW1SZXBvc2l0b3J5SW50ZXJmYWNlO1xuICAvKiogQW4gaW50ZXJmYWNlIGZvciBzZW5kaW5nIFJQQyByZXF1ZXN0cy4gKi9cbiAgcnBjOiBScGNJbnRlcmZhY2U7XG4gIC8qKlxuICAgKiBBbiBpbnRlcmZhY2UgZm9yIHNlcmlhbGl6aW5nIHZhcmlvdXMgdHlwZXMuXG4gICAqIEBkZXByZWNhdGVkIFRoaXMgaW50ZXJmYWNlIGlzIGRlcHJlY2F0ZWQuXG4gICAqIFlvdSBjYW4gbm93IGRpcmVjdGx5IHVzZSBgQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NlcmlhbGl6ZXJzYCBpbnN0ZWFkLlxuICAgKi9cbiAgc2VyaWFsaXplcjogU2VyaWFsaXplckludGVyZmFjZTtcbiAgLyoqIEFuIGludGVyZmFjZSBmb3IgbWFuYWdpbmcgdHJhbnNhY3Rpb25zLiAqL1xuICB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uRmFjdG9yeUludGVyZmFjZTtcbiAgLyoqIEFuIGludGVyZmFjZSBmb3IgdXBsb2FkaW5nIGZpbGVzIGFuZCBnZXR0aW5nIHRoZWlyIFVSSXMuICovXG4gIHVwbG9hZGVyOiBVcGxvYWRlckludGVyZmFjZTtcbn1cblxuLyoqXG4gKiBBIGhlbHBlciBtZXRob2QgdGhhdCBjcmVhdGVzIGEgVW1pIGNvbnRleHQgb2JqZWN0IHVzaW5nIG9ubHlcbiAqIE51bGwgaW1wbGVtZW50YXRpb25zIG9mIHRoZSBpbnRlcmZhY2VzLiBUaGlzIGNhbiBiZSB1c2VmdWwgdG9cbiAqIGNyZWF0ZSBhIGZ1bGwgVW1pIGNvbnRleHQgb2JqZWN0IHdoZW4gb25seSBhIGZldyBvZiB0aGUgaW50ZXJmYWNlc1xuICogYXJlIG5lZWRlZC5cbiAqXG4gKiBAY2F0ZWdvcnkgQ29udGV4dCBhbmQgSW50ZXJmYWNlc1xuICovXG5leHBvcnQgY29uc3QgY3JlYXRlTnVsbENvbnRleHQgPSAoKTogQ29udGV4dCA9PiAoe1xuICBkb3dubG9hZGVyOiBjcmVhdGVOdWxsRG93bmxvYWRlcigpLFxuICBlZGRzYTogY3JlYXRlTnVsbEVkZHNhKCksXG4gIGh0dHA6IGNyZWF0ZU51bGxIdHRwKCksXG4gIGlkZW50aXR5OiBjcmVhdGVOdWxsU2lnbmVyKCksXG4gIHBheWVyOiBjcmVhdGVOdWxsU2lnbmVyKCksXG4gIHByb2dyYW1zOiBjcmVhdGVOdWxsUHJvZ3JhbVJlcG9zaXRvcnkoKSxcbiAgcnBjOiBjcmVhdGVOdWxsUnBjKCksXG4gIHNlcmlhbGl6ZXI6IGNyZWF0ZU51bGxTZXJpYWxpemVyKCksXG4gIHRyYW5zYWN0aW9uczogY3JlYXRlTnVsbFRyYW5zYWN0aW9uRmFjdG9yeSgpLFxuICB1cGxvYWRlcjogY3JlYXRlTnVsbFVwbG9hZGVyKCksXG59KTtcbiIsICJpbXBvcnQge1xuICBOdW1iZXJTZXJpYWxpemVyLFxuICBTZXJpYWxpemVyLFxuICBtYXBTZXJpYWxpemVyLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMnO1xuaW1wb3J0IHsgQmlnSW50SW5wdXQsIGNyZWF0ZUJpZ0ludCB9IGZyb20gJy4vQmlnSW50JztcblxuLyoqXG4gKiBEZWZpbmVzIGEgc3RyaW5nIHRoYXQgY2FuIGJlIHBhcnNlZCBpbnRvIGEgRGF0ZSBvYmplY3QuXG4gKiBGb3IgaW5zdGFuY2UsIGBcIjIwMjAtMDEtMDFUMDA6MDA6MDAuMDAwWlwiYC5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgRGF0ZVRpbWVcbiAqL1xuZXhwb3J0IHR5cGUgRGF0ZVRpbWVTdHJpbmcgPSBzdHJpbmc7XG5cbi8qKlxuICogRGVmaW5lcyBhbGwgdGhlIHR5cGVzIHRoYXQgY2FuIGJlIHVzZWQgdG8gY3JlYXRlIGEgRGF0ZVRpbWUuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIERhdGVUaW1lXG4gKi9cbmV4cG9ydCB0eXBlIERhdGVUaW1lSW5wdXQgPSBEYXRlVGltZVN0cmluZyB8IEJpZ0ludElucHV0IHwgRGF0ZTtcblxuLyoqXG4gKiBEZWZpbmVzIGEgcG9pbnQgaW4gdGltZSB2aWEgYSBVbml4IHRpbWVzdGFtcCByZXByZXNlbnRlZCBhcyBhIEJpZ0ludC5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgRGF0ZVRpbWVcbiAqL1xuZXhwb3J0IHR5cGUgRGF0ZVRpbWUgPSBiaWdpbnQ7XG5cbi8qKlxuICogQ3JlYXRlcyBhIHtAbGluayBEYXRlVGltZX0gZnJvbSBhIHtAbGluayBEYXRlVGltZUlucHV0fS5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgRGF0ZVRpbWVcbiAqL1xuZXhwb3J0IGNvbnN0IGRhdGVUaW1lID0gKHZhbHVlOiBEYXRlVGltZUlucHV0KTogRGF0ZVRpbWUgPT4ge1xuICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyB8fCBpc0RhdGVPYmplY3QodmFsdWUpKSB7XG4gICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKHZhbHVlKTtcbiAgICBjb25zdCB0aW1lc3RhbXAgPSBNYXRoLmZsb29yKGRhdGUuZ2V0VGltZSgpIC8gMTAwMCk7XG4gICAgcmV0dXJuIGNyZWF0ZUJpZ0ludCh0aW1lc3RhbXApO1xuICB9XG5cbiAgcmV0dXJuIGNyZWF0ZUJpZ0ludCh2YWx1ZSk7XG59O1xuXG4vKipcbiAqIEhlbHBlciBmdW5jdGlvbiB0byBnZXQgdGhlIGN1cnJlbnQgdGltZSBhcyBhIHtAbGluayBEYXRlVGltZX0uXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIERhdGVUaW1lXG4gKi9cbmV4cG9ydCBjb25zdCBub3cgPSAoKTogRGF0ZVRpbWUgPT4gZGF0ZVRpbWUobmV3IERhdGUoRGF0ZS5ub3coKSkpO1xuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGdpdmVuIHZhbHVlIGlzIGEgRGF0ZSBvYmplY3QuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIERhdGVUaW1lXG4gKi9cbmNvbnN0IGlzRGF0ZU9iamVjdCA9ICh2YWx1ZTogYW55KTogdmFsdWUgaXMgRGF0ZSA9PlxuICBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwodmFsdWUpID09PSAnW29iamVjdCBEYXRlXSc7XG5cbi8qKlxuICogRm9ybWF0cyBhIHtAbGluayBEYXRlVGltZX0gYXMgYSBzdHJpbmcuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIERhdGVUaW1lXG4gKi9cbmV4cG9ydCBjb25zdCBmb3JtYXREYXRlVGltZSA9IChcbiAgdmFsdWU6IERhdGVUaW1lLFxuICBsb2NhbGVzOiBJbnRsLkxvY2FsZXNBcmd1bWVudCA9ICdlbi1VUycsXG4gIG9wdGlvbnM6IEludGwuRGF0ZVRpbWVGb3JtYXRPcHRpb25zID0ge1xuICAgIG1vbnRoOiAnc2hvcnQnLFxuICAgIGRheTogJ251bWVyaWMnLFxuICAgIHllYXI6ICdudW1lcmljJyxcbiAgICBob3VyOiAnbnVtZXJpYycsXG4gICAgbWludXRlOiAnbnVtZXJpYycsXG4gIH1cbik6IHN0cmluZyA9PiB7XG4gIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZShOdW1iZXIodmFsdWUgKiAxMDAwbikpO1xuXG4gIHJldHVybiBkYXRlLnRvTG9jYWxlRGF0ZVN0cmluZyhsb2NhbGVzLCBvcHRpb25zKTtcbn07XG5cbi8qKlxuICogQ29udmVydHMgYSBudW1iZXIgc2VyaWFsaXplciBpbnRvIGEgRGF0ZVRpbWUgc2VyaWFsaXplci5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgRGF0ZVRpbWVcbiAqL1xuZXhwb3J0IGNvbnN0IG1hcERhdGVUaW1lU2VyaWFsaXplciA9IChcbiAgc2VyaWFsaXplcjogTnVtYmVyU2VyaWFsaXplclxuKTogU2VyaWFsaXplcjxEYXRlVGltZUlucHV0LCBEYXRlVGltZT4gPT5cbiAgbWFwU2VyaWFsaXplcihcbiAgICBzZXJpYWxpemVyIGFzIFNlcmlhbGl6ZXI8bnVtYmVyIHwgYmlnaW50PixcbiAgICAodmFsdWU6IERhdGVUaW1lSW5wdXQpOiBudW1iZXIgfCBiaWdpbnQgPT4ge1xuICAgICAgY29uc3QgZGF0ZSA9IGRhdGVUaW1lKHZhbHVlKTtcbiAgICAgIHJldHVybiBkYXRlID4gTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIgPyBkYXRlIDogTnVtYmVyKGRhdGUpO1xuICAgIH0sXG4gICAgKHZhbHVlOiBudW1iZXIgfCBiaWdpbnQpOiBEYXRlVGltZSA9PiBkYXRlVGltZSh2YWx1ZSlcbiAgKTtcbiIsICIvKipcbiAqIEdlbmVyYXRlIGEgcmFuZG9tIHN0cmluZyBvZiB0aGUgZ2l2ZW4gbGVuZ3RoLlxuICogV2FybmluZzogVGhpcyBpcyBub3QgYSBjcnlwdG9ncmFwaGljYWxseSBzZWN1cmUgcmFuZG9tIHN0cmluZyBnZW5lcmF0b3IuXG4gKiBAY2F0ZWdvcnkgVXRpbHNcbiAqL1xuZXhwb3J0IGNvbnN0IGdlbmVyYXRlUmFuZG9tU3RyaW5nID0gKFxuICBsZW5ndGggPSAyMCxcbiAgYWxwaGFiZXQgPSAnQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODknXG4pID0+IHtcbiAgbGV0IHJlc3VsdCA9ICcnO1xuICBjb25zdCBhbHBoYWJldExlbmd0aCA9IGFscGhhYmV0Lmxlbmd0aDtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW5ndGg7IGkgKz0gMSkge1xuICAgIHJlc3VsdCArPSBhbHBoYWJldC5jaGFyQXQoTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogYWxwaGFiZXRMZW5ndGgpKTtcbiAgfVxuXG4gIHJldHVybiByZXN1bHQ7XG59O1xuIiwgImltcG9ydCB7IHV0ZjggfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMnO1xuaW1wb3J0IHsgZ2VuZXJhdGVSYW5kb21TdHJpbmcgfSBmcm9tICcuL3V0aWxzJztcblxuLyoqXG4gKiBBIGdlbmVyaWMgZGVmaW5pdGlvbiBvZiBhIEZpbGUgcmVwcmVzZW50ZWQgYXMgYSBidWZmZXIgd2l0aFxuICogZXh0cmEgbWV0YWRhdGEgc3VjaCBhcyBhIGZpbGUgbmFtZSwgY29udGVudCB0eXBlLCBhbmQgdGFncy5cbiAqXG4gKiBAY2F0ZWdvcnkgU3RvcmFnZVxuICovXG5leHBvcnQgdHlwZSBHZW5lcmljRmlsZSA9IHtcbiAgcmVhZG9ubHkgYnVmZmVyOiBVaW50OEFycmF5O1xuICByZWFkb25seSBmaWxlTmFtZTogc3RyaW5nO1xuICByZWFkb25seSBkaXNwbGF5TmFtZTogc3RyaW5nO1xuICByZWFkb25seSB1bmlxdWVOYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGNvbnRlbnRUeXBlOiBzdHJpbmcgfCBudWxsO1xuICByZWFkb25seSBleHRlbnNpb246IHN0cmluZyB8IG51bGw7XG4gIHJlYWRvbmx5IHRhZ3M6IEdlbmVyaWNGaWxlVGFnW107XG59O1xuXG4vKipcbiAqIFJlcHJlc2VudCBhIGN1c3RvbSB0YWcgdGhhdCBjYW4gYmUgYXR0YWNoZWQgdG8gYSBmaWxlLlxuICogQGNhdGVnb3J5IFN0b3JhZ2VcbiAqL1xuZXhwb3J0IHR5cGUgR2VuZXJpY0ZpbGVUYWcgPSB7IG5hbWU6IHN0cmluZzsgdmFsdWU6IHN0cmluZyB9O1xuXG4vKipcbiAqIEFsaWFzIGZvciB0aGUgbmF0aXZlIEZpbGUgaW50ZXJmYWNlIGZyb20gdGhlIGJyb3dzZXIuXG4gKiBAY2F0ZWdvcnkgU3RvcmFnZVxuICovXG5leHBvcnQgdHlwZSBCcm93c2VyRmlsZSA9IEZpbGU7XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgb3B0aW9ucyB0aGF0IGNhbiBiZSBwcm92aWRlZCB3aGVuIGNyZWF0aW5nIGEge0BsaW5rIEdlbmVyaWNGaWxlfS5cbiAqIEBjYXRlZ29yeSBTdG9yYWdlXG4gKi9cbmV4cG9ydCB0eXBlIEdlbmVyaWNGaWxlT3B0aW9ucyA9IHtcbiAgZGlzcGxheU5hbWU/OiBzdHJpbmc7XG4gIHVuaXF1ZU5hbWU/OiBzdHJpbmc7XG4gIGNvbnRlbnRUeXBlPzogc3RyaW5nO1xuICBleHRlbnNpb24/OiBzdHJpbmc7XG4gIHRhZ3M/OiB7IG5hbWU6IHN0cmluZzsgdmFsdWU6IHN0cmluZyB9W107XG59O1xuXG4vKipcbiAqIENyZWF0ZXMgYSBuZXcge0BsaW5rIEdlbmVyaWNGaWxlfSBmcm9tIGEgYnVmZmVyIGFuZCBhIGZpbGUgbmFtZS5cbiAqIEBjYXRlZ29yeSBTdG9yYWdlXG4gKi9cbmV4cG9ydCBjb25zdCBjcmVhdGVHZW5lcmljRmlsZSA9IChcbiAgY29udGVudDogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgZmlsZU5hbWU6IHN0cmluZyxcbiAgb3B0aW9uczogR2VuZXJpY0ZpbGVPcHRpb25zID0ge31cbik6IEdlbmVyaWNGaWxlID0+ICh7XG4gIGJ1ZmZlcjogdHlwZW9mIGNvbnRlbnQgPT09ICdzdHJpbmcnID8gdXRmOC5zZXJpYWxpemUoY29udGVudCkgOiBjb250ZW50LFxuICBmaWxlTmFtZSxcbiAgZGlzcGxheU5hbWU6IG9wdGlvbnMuZGlzcGxheU5hbWUgPz8gZmlsZU5hbWUsXG4gIHVuaXF1ZU5hbWU6IG9wdGlvbnMudW5pcXVlTmFtZSA/PyBnZW5lcmF0ZVJhbmRvbVN0cmluZygpLFxuICBjb250ZW50VHlwZTogb3B0aW9ucy5jb250ZW50VHlwZSA/PyBudWxsLFxuICBleHRlbnNpb246IG9wdGlvbnMuZXh0ZW5zaW9uID8/IGdldEV4dGVuc2lvbihmaWxlTmFtZSksXG4gIHRhZ3M6IG9wdGlvbnMudGFncyA/PyBbXSxcbn0pO1xuXG4vKipcbiAqIENyZWF0ZXMgYSBuZXcge0BsaW5rIEdlbmVyaWNGaWxlfSBmcm9tIGEge0BsaW5rIEJyb3dzZXJGaWxlfS5cbiAqIEBjYXRlZ29yeSBTdG9yYWdlXG4gKi9cbmV4cG9ydCBjb25zdCBjcmVhdGVHZW5lcmljRmlsZUZyb21Ccm93c2VyRmlsZSA9IGFzeW5jIChcbiAgYnJvd3NlckZpbGU6IEJyb3dzZXJGaWxlLFxuICBvcHRpb25zOiBHZW5lcmljRmlsZU9wdGlvbnMgPSB7fVxuKTogUHJvbWlzZTxHZW5lcmljRmlsZT4gPT5cbiAgY3JlYXRlR2VuZXJpY0ZpbGUoXG4gICAgbmV3IFVpbnQ4QXJyYXkoYXdhaXQgYnJvd3NlckZpbGUuYXJyYXlCdWZmZXIoKSksXG4gICAgYnJvd3NlckZpbGUubmFtZSxcbiAgICBvcHRpb25zXG4gICk7XG5cbi8qKlxuICogQ3JlYXRlcyBhIG5ldyB7QGxpbmsgR2VuZXJpY0ZpbGV9IGZyb20gYSBKU09OIG9iamVjdC5cbiAqIEBjYXRlZ29yeSBTdG9yYWdlXG4gKi9cbmV4cG9ydCBjb25zdCBjcmVhdGVHZW5lcmljRmlsZUZyb21Kc29uID0gPFQ+KFxuICBqc29uOiBULFxuICBmaWxlTmFtZSA9ICdpbmxpbmUuanNvbicsXG4gIG9wdGlvbnM6IEdlbmVyaWNGaWxlT3B0aW9ucyA9IHt9XG4pOiBHZW5lcmljRmlsZSA9PlxuICBjcmVhdGVHZW5lcmljRmlsZShKU09OLnN0cmluZ2lmeShqc29uKSwgZmlsZU5hbWUsIHtcbiAgICBjb250ZW50VHlwZTogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgIC4uLm9wdGlvbnMsXG4gIH0pO1xuXG4vKipcbiAqIENyZWF0ZXMgYSBuZXcge0BsaW5rIEJyb3dzZXJGaWxlfSBmcm9tIGEge0BsaW5rIEdlbmVyaWNGaWxlfS5cbiAqIEBjYXRlZ29yeSBTdG9yYWdlXG4gKi9cbmV4cG9ydCBjb25zdCBjcmVhdGVCcm93c2VyRmlsZUZyb21HZW5lcmljRmlsZSA9IChcbiAgZmlsZTogR2VuZXJpY0ZpbGVcbik6IEJyb3dzZXJGaWxlID0+IG5ldyBGaWxlKFtmaWxlLmJ1ZmZlciBhcyBCbG9iUGFydF0sIGZpbGUuZmlsZU5hbWUpO1xuXG4vKipcbiAqIFJldHVybnMgdGhlIGNvbnRlbnQgb2YgYSB7QGxpbmsgR2VuZXJpY0ZpbGV9IGFzIGEgcGFyc2VkIEpTT04gb2JqZWN0LlxuICogQGNhdGVnb3J5IFN0b3JhZ2VcbiAqL1xuZXhwb3J0IGNvbnN0IHBhcnNlSnNvbkZyb21HZW5lcmljRmlsZSA9IDxUPihmaWxlOiBHZW5lcmljRmlsZSk6IFQgPT5cbiAgSlNPTi5wYXJzZShuZXcgVGV4dERlY29kZXIoKS5kZWNvZGUoZmlsZS5idWZmZXIpKTtcblxuLyoqXG4gKiBSZXR1cm5zIHRoZSB0b3RhbCBzaXplIG9mIGEgbGlzdCBvZiB7QGxpbmsgR2VuZXJpY0ZpbGV9IGluIGJ5dGVzLlxuICogQGNhdGVnb3J5IFN0b3JhZ2VcbiAqL1xuZXhwb3J0IGNvbnN0IGdldEJ5dGVzRnJvbUdlbmVyaWNGaWxlcyA9ICguLi5maWxlczogR2VuZXJpY0ZpbGVbXSk6IG51bWJlciA9PlxuICBmaWxlcy5yZWR1Y2UoKGFjYywgZmlsZSkgPT4gYWNjICsgZmlsZS5idWZmZXIuYnl0ZUxlbmd0aCwgMCk7XG5cbi8qKlxuICogV2hldGhlciB0aGUgZ2l2ZW4gdmFsdWUgaXMgYSB7QGxpbmsgR2VuZXJpY0ZpbGV9LlxuICogQGNhdGVnb3J5IFN0b3JhZ2VcbiAqL1xuZXhwb3J0IGNvbnN0IGlzR2VuZXJpY0ZpbGUgPSAoZmlsZTogYW55KTogZmlsZSBpcyBHZW5lcmljRmlsZSA9PlxuICBmaWxlICE9IG51bGwgJiZcbiAgdHlwZW9mIGZpbGUgPT09ICdvYmplY3QnICYmXG4gICdidWZmZXInIGluIGZpbGUgJiZcbiAgJ2ZpbGVOYW1lJyBpbiBmaWxlICYmXG4gICdkaXNwbGF5TmFtZScgaW4gZmlsZSAmJlxuICAndW5pcXVlTmFtZScgaW4gZmlsZSAmJlxuICAnY29udGVudFR5cGUnIGluIGZpbGUgJiZcbiAgJ2V4dGVuc2lvbicgaW4gZmlsZSAmJlxuICAndGFncycgaW4gZmlsZTtcblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBleHRlbnNpb24gb2YgYSBmaWxlIG5hbWUuXG4gKiBAY2F0ZWdvcnkgU3RvcmFnZVxuICovXG5jb25zdCBnZXRFeHRlbnNpb24gPSAoZmlsZU5hbWU6IHN0cmluZyk6IHN0cmluZyB8IG51bGwgPT4ge1xuICBjb25zdCBsYXN0RG90SW5kZXggPSBmaWxlTmFtZS5sYXN0SW5kZXhPZignLicpO1xuXG4gIHJldHVybiBsYXN0RG90SW5kZXggPCAwID8gbnVsbCA6IGZpbGVOYW1lLnNsaWNlKGxhc3REb3RJbmRleCArIDEpO1xufTtcbiIsICJpbXBvcnQgeyBwdWJsaWNLZXksIFB1YmxpY0tleSB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1wdWJsaWMta2V5cyc7XG5pbXBvcnQgdHlwZSB7XG4gIFNlcmlhbGl6ZXIsXG4gIFN0cnVjdFRvU2VyaWFsaXplclR1cGxlLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMnO1xuaW1wb3J0IHsgYmFzZTEwLCBiYXNlNTgsIGJhc2U2NCB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycyc7XG5pbXBvcnQgdHlwZSB7IFJwY0FjY291bnQgfSBmcm9tICcuL0FjY291bnQnO1xuaW1wb3J0IHR5cGUgeyBDb250ZXh0IH0gZnJvbSAnLi9Db250ZXh0JztcbmltcG9ydCB7IFNka0Vycm9yIH0gZnJvbSAnLi9lcnJvcnMnO1xuaW1wb3J0IHR5cGUge1xuICBScGNEYXRhRmlsdGVyLFxuICBScGNEYXRhU2xpY2UsXG4gIFJwY0dldFByb2dyYW1BY2NvdW50c09wdGlvbnMsXG59IGZyb20gJy4vUnBjSW50ZXJmYWNlJztcblxuLyoqXG4gKiBDYWxsYmFjayBmb3Igc29ydGluZyByYXcgYWNjb3VudHMgZnJvbSBgZ2V0UHJvZ3JhbUFjY291bnRzYCBSUEMgcmVxdWVzdHMuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEdwYUJ1aWxkZXJcbiAqL1xuZXhwb3J0IHR5cGUgR3BhQnVpbGRlclNvcnRDYWxsYmFjayA9IChhOiBScGNBY2NvdW50LCBiOiBScGNBY2NvdW50KSA9PiBudW1iZXI7XG5cbi8qKlxuICogQ2FsbGJhY2sgZm9yIG1hcHBpbmcgcmF3IGFjY291bnRzIGludG8gYW55IHR5cGUuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEdwYUJ1aWxkZXJcbiAqL1xuZXhwb3J0IHR5cGUgR3BhQnVpbGRlck1hcENhbGxiYWNrPFQ+ID0gKGFjY291bnQ6IFJwY0FjY291bnQpID0+IFQ7XG5cbi8qKlxuICogR2V0IHRoZSBHUEEgZmllbGQgb2Zmc2V0cyBhbmQgc2VyaWFsaXplcnMgZnJvbSB0aGVpciBvYmplY3QgZGVmaW5pdGlvbi5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgR3BhQnVpbGRlclxuICovXG5leHBvcnQgdHlwZSBHcGFCdWlsZGVyRmllbGRTZXJpYWxpemVyczxUIGV4dGVuZHMgb2JqZWN0LCBVIGV4dGVuZHMgVD4gPSB7XG4gIFtLIGluIGtleW9mIFRdOiBbbnVtYmVyIHwgbnVsbCwgU2VyaWFsaXplcjxUW0tdLCBVW0tdPl07XG59O1xuXG4vKipcbiAqIEJ1aWxkZXIgZm9yIGBnZXRQcm9ncmFtQWNjb3VudHNgIFJQQyByZXF1ZXN0cy5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgR3BhQnVpbGRlclxuICovXG5leHBvcnQgY2xhc3MgR3BhQnVpbGRlcjxcbiAgQWNjb3VudCBleHRlbmRzIG9iamVjdCA9IFJwY0FjY291bnQsXG4gIEZpZWxkcyBleHRlbmRzIG9iamVjdCA9IHt9XG4+IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNvbnRleHQ6IFBpY2s8Q29udGV4dCwgJ3JwYyc+LFxuICAgIHJlYWRvbmx5IHByb2dyYW1JZDogUHVibGljS2V5LFxuICAgIHJlYWRvbmx5IG9wdGlvbnM6IHtcbiAgICAgIHJlYWRvbmx5IGZpZWxkcz86IEdwYUJ1aWxkZXJGaWVsZFNlcmlhbGl6ZXJzPEZpZWxkcywgRmllbGRzPjtcbiAgICAgIHJlYWRvbmx5IGRlc2VyaWFsaXplQ2FsbGJhY2s/OiBHcGFCdWlsZGVyTWFwQ2FsbGJhY2s8QWNjb3VudD47XG4gICAgICByZWFkb25seSBkYXRhU2xpY2U/OiBScGNEYXRhU2xpY2U7XG4gICAgICByZWFkb25seSBmaWx0ZXJzPzogUnBjRGF0YUZpbHRlcltdO1xuICAgICAgcmVhZG9ubHkgc29ydENhbGxiYWNrPzogR3BhQnVpbGRlclNvcnRDYWxsYmFjaztcbiAgICB9ID0ge31cbiAgKSB7fVxuXG4gIHJlc2V0KCk6IEdwYUJ1aWxkZXI8QWNjb3VudCwgRmllbGRzPiB7XG4gICAgcmV0dXJuIG5ldyBHcGFCdWlsZGVyPEFjY291bnQsIEZpZWxkcz4odGhpcy5jb250ZXh0LCB0aGlzLnByb2dyYW1JZCwge1xuICAgICAgZmllbGRzOiB0aGlzLm9wdGlvbnMuZmllbGRzLFxuICAgICAgZGVzZXJpYWxpemVDYWxsYmFjazogdGhpcy5vcHRpb25zLmRlc2VyaWFsaXplQ2FsbGJhY2ssXG4gICAgfSk7XG4gIH1cblxuICByZWdpc3RlckZpZWxkczxUIGV4dGVuZHMgb2JqZWN0PihcbiAgICBmaWVsZHM6IEdwYUJ1aWxkZXJGaWVsZFNlcmlhbGl6ZXJzPFQsIFQ+XG4gICk6IEdwYUJ1aWxkZXI8QWNjb3VudCwgVD4ge1xuICAgIHJldHVybiBuZXcgR3BhQnVpbGRlcjxBY2NvdW50LCBUPih0aGlzLmNvbnRleHQsIHRoaXMucHJvZ3JhbUlkLCB7XG4gICAgICAuLi50aGlzLm9wdGlvbnMsXG4gICAgICBmaWVsZHMsXG4gICAgfSk7XG4gIH1cblxuICByZWdpc3RlckZpZWxkc0Zyb21TdHJ1Y3Q8VCBleHRlbmRzIG9iamVjdD4oXG4gICAgc3RydWN0RmllbGRzOiBTdHJ1Y3RUb1NlcmlhbGl6ZXJUdXBsZTxULCBUPlxuICApOiBHcGFCdWlsZGVyPEFjY291bnQsIFQ+IHtcbiAgICBsZXQgb2Zmc2V0OiBudW1iZXIgfCBudWxsID0gMDtcbiAgICBjb25zdCBmaWVsZHMgPSBzdHJ1Y3RGaWVsZHMucmVkdWNlKChhY2MsIFtmaWVsZCwgc2VyaWFsaXplcl0pID0+IHtcbiAgICAgIGFjY1tmaWVsZF0gPSBbb2Zmc2V0LCBzZXJpYWxpemVyXTtcbiAgICAgIG9mZnNldCA9XG4gICAgICAgIG9mZnNldCA9PT0gbnVsbCB8fCBzZXJpYWxpemVyLmZpeGVkU2l6ZSA9PT0gbnVsbFxuICAgICAgICAgID8gbnVsbFxuICAgICAgICAgIDogb2Zmc2V0ICsgc2VyaWFsaXplci5maXhlZFNpemU7XG4gICAgICByZXR1cm4gYWNjO1xuICAgIH0sIHt9IGFzIEdwYUJ1aWxkZXJGaWVsZFNlcmlhbGl6ZXJzPFQsIFQ+KTtcbiAgICByZXR1cm4gdGhpcy5yZWdpc3RlckZpZWxkcyhmaWVsZHMpO1xuICB9XG5cbiAgZGVzZXJpYWxpemVVc2luZzxUIGV4dGVuZHMgb2JqZWN0PihcbiAgICBjYWxsYmFjazogR3BhQnVpbGRlck1hcENhbGxiYWNrPFQ+XG4gICk6IEdwYUJ1aWxkZXI8VCwgRmllbGRzPiB7XG4gICAgcmV0dXJuIG5ldyBHcGFCdWlsZGVyPFQsIEZpZWxkcz4odGhpcy5jb250ZXh0LCB0aGlzLnByb2dyYW1JZCwge1xuICAgICAgLi4udGhpcy5vcHRpb25zLFxuICAgICAgZGVzZXJpYWxpemVDYWxsYmFjazogY2FsbGJhY2ssXG4gICAgfSk7XG4gIH1cblxuICBzbGljZShvZmZzZXQ6IG51bWJlciwgbGVuZ3RoOiBudW1iZXIpOiBHcGFCdWlsZGVyPEFjY291bnQsIEZpZWxkcz4ge1xuICAgIHJldHVybiBuZXcgR3BhQnVpbGRlcjxBY2NvdW50LCBGaWVsZHM+KHRoaXMuY29udGV4dCwgdGhpcy5wcm9ncmFtSWQsIHtcbiAgICAgIC4uLnRoaXMub3B0aW9ucyxcbiAgICAgIGRhdGFTbGljZTogeyBvZmZzZXQsIGxlbmd0aCB9LFxuICAgIH0pO1xuICB9XG5cbiAgc2xpY2VGaWVsZChcbiAgICBmaWVsZDoga2V5b2YgRmllbGRzLFxuICAgIG9mZnNldD86IG51bWJlclxuICApOiBHcGFCdWlsZGVyPEFjY291bnQsIEZpZWxkcz4ge1xuICAgIGNvbnN0IFtlZmZlY3RpdmVPZmZzZXQsIHNlcmlhbGl6ZXJdID0gdGhpcy5nZXRGaWVsZChmaWVsZCwgb2Zmc2V0KTtcbiAgICBpZiAoIXNlcmlhbGl6ZXIuZml4ZWRTaXplKSB7XG4gICAgICB0aHJvdyBuZXcgU2RrRXJyb3IoXG4gICAgICAgIGBDYW5ub3Qgc2xpY2UgZmllbGQgWyR7ZmllbGQgYXMgc3RyaW5nfV0gYmVjYXVzZSBpdHMgc2l6ZSBpcyB2YXJpYWJsZS5gXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5zbGljZShlZmZlY3RpdmVPZmZzZXQsIHNlcmlhbGl6ZXIuZml4ZWRTaXplKTtcbiAgfVxuXG4gIHdpdGhvdXREYXRhKCk6IEdwYUJ1aWxkZXI8QWNjb3VudCwgRmllbGRzPiB7XG4gICAgcmV0dXJuIHRoaXMuc2xpY2UoMCwgMCk7XG4gIH1cblxuICBhZGRGaWx0ZXIoLi4uZmlsdGVyczogUnBjRGF0YUZpbHRlcltdKTogR3BhQnVpbGRlcjxBY2NvdW50LCBGaWVsZHM+IHtcbiAgICByZXR1cm4gbmV3IEdwYUJ1aWxkZXI8QWNjb3VudCwgRmllbGRzPih0aGlzLmNvbnRleHQsIHRoaXMucHJvZ3JhbUlkLCB7XG4gICAgICAuLi50aGlzLm9wdGlvbnMsXG4gICAgICBmaWx0ZXJzOiBbLi4uKHRoaXMub3B0aW9ucy5maWx0ZXJzID8/IFtdKSwgLi4uZmlsdGVyc10sXG4gICAgfSk7XG4gIH1cblxuICB3aGVyZShcbiAgICBvZmZzZXQ6IG51bWJlcixcbiAgICBkYXRhOiBzdHJpbmcgfCBiaWdpbnQgfCBudW1iZXIgfCBib29sZWFuIHwgVWludDhBcnJheSB8IFB1YmxpY0tleVxuICApOiBHcGFCdWlsZGVyPEFjY291bnQsIEZpZWxkcz4ge1xuICAgIGxldCBieXRlczogVWludDhBcnJheTtcbiAgICBpZiAodHlwZW9mIGRhdGEgPT09ICdzdHJpbmcnKSB7XG4gICAgICBieXRlcyA9IGJhc2U1OC5zZXJpYWxpemUoZGF0YSk7XG4gICAgfSBlbHNlIGlmIChcbiAgICAgIHR5cGVvZiBkYXRhID09PSAnbnVtYmVyJyB8fFxuICAgICAgdHlwZW9mIGRhdGEgPT09ICdiaWdpbnQnIHx8XG4gICAgICB0eXBlb2YgZGF0YSA9PT0gJ2Jvb2xlYW4nXG4gICAgKSB7XG4gICAgICBieXRlcyA9IGJhc2UxMC5zZXJpYWxpemUoQmlnSW50KGRhdGEpLnRvU3RyaW5nKCkpO1xuICAgIH0gZWxzZSB7XG4gICAgICBieXRlcyA9IG5ldyBVaW50OEFycmF5KGRhdGEpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmFkZEZpbHRlcih7IG1lbWNtcDogeyBvZmZzZXQsIGJ5dGVzIH0gfSk7XG4gIH1cblxuICB3aGVyZUZpZWxkPEsgZXh0ZW5kcyBrZXlvZiBGaWVsZHM+KFxuICAgIGZpZWxkOiBLLFxuICAgIGRhdGE6IEZpZWxkc1tLXSxcbiAgICBvZmZzZXQ/OiBudW1iZXJcbiAgKTogR3BhQnVpbGRlcjxBY2NvdW50LCBGaWVsZHM+IHtcbiAgICBjb25zdCBbZWZmZWN0aXZlT2Zmc2V0LCBzZXJpYWxpemVyXSA9IHRoaXMuZ2V0RmllbGQoZmllbGQsIG9mZnNldCk7XG4gICAgcmV0dXJuIHRoaXMud2hlcmUoZWZmZWN0aXZlT2Zmc2V0LCBzZXJpYWxpemVyLnNlcmlhbGl6ZShkYXRhKSk7XG4gIH1cblxuICB3aGVyZVNpemUoZGF0YVNpemU6IG51bWJlcik6IEdwYUJ1aWxkZXI8QWNjb3VudCwgRmllbGRzPiB7XG4gICAgcmV0dXJuIHRoaXMuYWRkRmlsdGVyKHsgZGF0YVNpemUgfSk7XG4gIH1cblxuICBzb3J0VXNpbmcoY2FsbGJhY2s6IEdwYUJ1aWxkZXJTb3J0Q2FsbGJhY2spOiBHcGFCdWlsZGVyPEFjY291bnQsIEZpZWxkcz4ge1xuICAgIHJldHVybiBuZXcgR3BhQnVpbGRlcih0aGlzLmNvbnRleHQsIHRoaXMucHJvZ3JhbUlkLCB7XG4gICAgICAuLi50aGlzLm9wdGlvbnMsXG4gICAgICBzb3J0Q2FsbGJhY2s6IGNhbGxiYWNrLFxuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMgZ2V0KG9wdGlvbnM6IFJwY0dldFByb2dyYW1BY2NvdW50c09wdGlvbnMgPSB7fSk6IFByb21pc2U8UnBjQWNjb3VudFtdPiB7XG4gICAgY29uc3QgYWNjb3VudHMgPSBhd2FpdCB0aGlzLmNvbnRleHQucnBjLmdldFByb2dyYW1BY2NvdW50cyh0aGlzLnByb2dyYW1JZCwge1xuICAgICAgLi4ub3B0aW9ucyxcbiAgICAgIGRhdGFTbGljZTogb3B0aW9ucy5kYXRhU2xpY2UgPz8gdGhpcy5vcHRpb25zLmRhdGFTbGljZSxcbiAgICAgIGZpbHRlcnM6IFsuLi4ob3B0aW9ucy5maWx0ZXJzID8/IFtdKSwgLi4uKHRoaXMub3B0aW9ucy5maWx0ZXJzID8/IFtdKV0sXG4gICAgfSk7XG5cbiAgICBpZiAodGhpcy5vcHRpb25zLnNvcnRDYWxsYmFjaykge1xuICAgICAgYWNjb3VudHMuc29ydCh0aGlzLm9wdGlvbnMuc29ydENhbGxiYWNrKTtcbiAgICB9XG5cbiAgICByZXR1cm4gYWNjb3VudHM7XG4gIH1cblxuICBhc3luYyBnZXRBbmRNYXA8VD4oXG4gICAgY2FsbGJhY2s6IEdwYUJ1aWxkZXJNYXBDYWxsYmFjazxUPixcbiAgICBvcHRpb25zOiBScGNHZXRQcm9ncmFtQWNjb3VudHNPcHRpb25zID0ge31cbiAgKTogUHJvbWlzZTxUW10+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuZ2V0KG9wdGlvbnMpKS5tYXAoY2FsbGJhY2spO1xuICB9XG5cbiAgYXN5bmMgZ2V0RGVzZXJpYWxpemVkKFxuICAgIG9wdGlvbnM6IFJwY0dldFByb2dyYW1BY2NvdW50c09wdGlvbnMgPSB7fVxuICApOiBQcm9taXNlPEFjY291bnRbXT4ge1xuICAgIGNvbnN0IHJwY0FjY291bnRzID0gYXdhaXQgdGhpcy5nZXQob3B0aW9ucyk7XG4gICAgaWYgKCF0aGlzLm9wdGlvbnMuZGVzZXJpYWxpemVDYWxsYmFjaykgcmV0dXJuIHJwY0FjY291bnRzIGFzIEFjY291bnRbXTtcbiAgICByZXR1cm4gcnBjQWNjb3VudHMubWFwKHRoaXMub3B0aW9ucy5kZXNlcmlhbGl6ZUNhbGxiYWNrKTtcbiAgfVxuXG4gIGFzeW5jIGdldFB1YmxpY0tleXMoXG4gICAgb3B0aW9uczogUnBjR2V0UHJvZ3JhbUFjY291bnRzT3B0aW9ucyA9IHt9XG4gICk6IFByb21pc2U8UHVibGljS2V5W10+IHtcbiAgICByZXR1cm4gdGhpcy5nZXRBbmRNYXAoKGFjY291bnQpID0+IGFjY291bnQucHVibGljS2V5LCBvcHRpb25zKTtcbiAgfVxuXG4gIGFzeW5jIGdldERhdGFBc1B1YmxpY0tleXMoXG4gICAgb3B0aW9uczogUnBjR2V0UHJvZ3JhbUFjY291bnRzT3B0aW9ucyA9IHt9XG4gICk6IFByb21pc2U8UHVibGljS2V5W10+IHtcbiAgICByZXR1cm4gdGhpcy5nZXRBbmRNYXAoKGFjY291bnQpID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIHJldHVybiBwdWJsaWNLZXkoYWNjb3VudC5kYXRhKTtcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIGNvbnN0IG1lc3NhZ2UgPVxuICAgICAgICAgIGBGb2xsb3dpbmcgYSBnZXRQcm9ncmFtQWNjb3VudCBjYWxsLCB5b3UgYXJlIHRyeWluZyB0byB1c2UgYW4gYCArXG4gICAgICAgICAgYGFjY291bnQncyBkYXRhIChvciBhIHNsaWNlIG9mIGl0KSBhcyBhIHB1YmxpYyBrZXkuIGAgK1xuICAgICAgICAgIGBIb3dldmVyLCB3ZSBlbmNvdW50ZXJlZCBhbiBhY2NvdW50IGAgK1xuICAgICAgICAgIGBbJHthY2NvdW50LnB1YmxpY0tleX1dIHdob3NlIGRhdGEgYCArXG4gICAgICAgICAgYFtiYXNlNjQ9JHtiYXNlNjQuZGVzZXJpYWxpemUoYWNjb3VudC5kYXRhKX1dIGAgK1xuICAgICAgICAgIGBpcyBub3QgYSB2YWxpZCBwdWJsaWMga2V5LmA7XG4gICAgICAgIHRocm93IG5ldyBTZGtFcnJvcihtZXNzYWdlKTtcbiAgICAgIH1cbiAgICB9LCBvcHRpb25zKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRGaWVsZDxLIGV4dGVuZHMga2V5b2YgRmllbGRzPihcbiAgICBmaWVsZE5hbWU6IEssXG4gICAgZm9yY2VkT2Zmc2V0PzogbnVtYmVyXG4gICk6IFtudW1iZXIsIFNlcmlhbGl6ZXI8RmllbGRzW0tdPl0ge1xuICAgIGlmICghdGhpcy5vcHRpb25zLmZpZWxkcykge1xuICAgICAgdGhyb3cgbmV3IFNka0Vycm9yKCdGaWVsZHMgYXJlIG5vdCBkZWZpbmVkIGluIHRoaXMgR3BhQnVpbGRlci4nKTtcbiAgICB9XG5cbiAgICBjb25zdCBmaWVsZCA9IHRoaXMub3B0aW9ucy5maWVsZHNbZmllbGROYW1lXTtcbiAgICBpZiAoIWZpZWxkKSB7XG4gICAgICB0aHJvdyBuZXcgU2RrRXJyb3IoXG4gICAgICAgIGBGaWVsZCBbJHtmaWVsZE5hbWUgYXMgc3RyaW5nfV0gaXMgbm90IGRlZmluZWQgaW4gdGhpcyBHcGFCdWlsZGVyLmBcbiAgICAgICk7XG4gICAgfVxuXG4gICAgY29uc3QgW29mZnNldCwgc2VyaWFsaXplcl0gPSBmaWVsZDtcbiAgICBpZiAoZm9yY2VkT2Zmc2V0ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiBbZm9yY2VkT2Zmc2V0LCBzZXJpYWxpemVyXTtcbiAgICB9XG5cbiAgICBpZiAob2Zmc2V0ID09PSBudWxsKSB7XG4gICAgICB0aHJvdyBuZXcgU2RrRXJyb3IoXG4gICAgICAgIGBGaWVsZCBbJHtmaWVsZE5hbWUgYXMgc3RyaW5nfV0gZG9lcyBub3QgaGF2ZSBhIGZpeGVkIG9mZnNldC4gYCArXG4gICAgICAgICAgYFRoaXMgaXMgbGlrZWx5IGJlY2F1c2UgaXQgaXMgbm90IGluIHRoZSBmaXhlZCBwYXJ0IG9mIGAgK1xuICAgICAgICAgIGB0aGUgYWNjb3VudCdzIGRhdGEuIEluIG90aGVyIHdvcmRzLCBpdCBpcyBsb2NhdGVkIGFmdGVyIGAgK1xuICAgICAgICAgIGBhIGZpZWxkIG9mIHZhcmlhYmxlIGxlbmd0aCB3aGljaCBtZWFucyB3ZSBjYW5ub3QgZmluZCBhIGAgK1xuICAgICAgICAgIGBmaXhlZCBvZmZzZXQgZm9yIHRoZSBmaWx0ZXIuIFlvdSBtYXkgZ28gYXJvdW5kIHRoaXMgYnkgYCArXG4gICAgICAgICAgYHByb3ZpZGluZyBhbiBvZmZzZXQgZXhwbGljaXRseS5gXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBbb2Zmc2V0LCBzZXJpYWxpemVyXTtcbiAgfVxufVxuXG4vKipcbiAqIENyZWF0ZXMgYSBuZXcge0BsaW5rIEdwYUJ1aWxkZXJ9IGluc3RhbmNlLlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBHcGFCdWlsZGVyXG4gKi9cbmV4cG9ydCBjb25zdCBncGFCdWlsZGVyID0gKFxuICBjb250ZXh0OiBQaWNrPENvbnRleHQsICdycGMnPixcbiAgcHJvZ3JhbUlkOiBQdWJsaWNLZXlcbik6IEdwYUJ1aWxkZXIgPT4gbmV3IEdwYUJ1aWxkZXIoY29udGV4dCwgcHJvZ3JhbUlkKTtcbiIsICJpbXBvcnQgdHlwZSB7IEdlbmVyaWNBYm9ydFNpZ25hbCB9IGZyb20gJy4vR2VuZXJpY0Fib3J0U2lnbmFsJztcbmltcG9ydCB0eXBlIHsgSHR0cEhlYWRlclZhbHVlLCBIdHRwUmVxdWVzdEhlYWRlcnMgfSBmcm9tICcuL0h0dHBIZWFkZXJzJztcblxuLyoqIERlZmluZXMgYSBudW1iZXIgaW4gbWlsbGlzZWNvbmRzLiAqL1xudHlwZSBNaWxsaXNlY29uZHMgPSBudW1iZXI7XG5cbi8qKlxuICogRGVmaW5lcyBhIEhUVFAgUmVxdWVzdCB3aXRoIGN1c3RvbSBkYXRhLlxuICogQGNhdGVnb3J5IEh0dHBcbiAqL1xuZXhwb3J0IHR5cGUgSHR0cFJlcXVlc3Q8RCA9IGFueT4gPSB7XG4gIG1ldGhvZDogSHR0cE1ldGhvZDtcbiAgdXJsOiBzdHJpbmc7XG4gIGRhdGE6IEQ7XG4gIGhlYWRlcnM6IEh0dHBSZXF1ZXN0SGVhZGVycztcbiAgbWF4UmVkaXJlY3RzPzogbnVtYmVyO1xuICB0aW1lb3V0PzogTWlsbGlzZWNvbmRzO1xuICBzaWduYWw/OiBHZW5lcmljQWJvcnRTaWduYWw7XG59O1xuXG4vKipcbiAqIENyZWF0ZXMgYSBuZXcge0BsaW5rIEh0dHBSZXF1ZXN0QnVpbGRlcn0gaW5zdGFuY2UuXG4gKiBAY2F0ZWdvcnkgSHR0cFxuICovXG5leHBvcnQgY29uc3QgcmVxdWVzdCA9ICgpID0+XG4gIG5ldyBIdHRwUmVxdWVzdEJ1aWxkZXI8dW5kZWZpbmVkPih7XG4gICAgbWV0aG9kOiAnZ2V0JyxcbiAgICBkYXRhOiB1bmRlZmluZWQsXG4gICAgaGVhZGVyczoge30sXG4gICAgdXJsOiAnJyxcbiAgfSk7XG5cbi8qKlxuICogQSBidWlsZGVyIGZvciBjb25zdHJ1Y3Rpbmcge0BsaW5rIEh0dHBSZXF1ZXN0fSBpbnN0YW5jZXMuXG4gKiBAY2F0ZWdvcnkgSHR0cFxuICovXG5leHBvcnQgY2xhc3MgSHR0cFJlcXVlc3RCdWlsZGVyPEQ+IGltcGxlbWVudHMgSHR0cFJlcXVlc3Q8RD4ge1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcmVxdWVzdDogSHR0cFJlcXVlc3Q8RD47XG5cbiAgY29uc3RydWN0b3IocmVxdWVzdDogSHR0cFJlcXVlc3Q8RD4pIHtcbiAgICB0aGlzLnJlcXVlc3QgPSByZXF1ZXN0O1xuICB9XG5cbiAgYXNKc29uKCkge1xuICAgIHJldHVybiB0aGlzLmNvbnRlbnRUeXBlKCdhcHBsaWNhdGlvbi9qc29uJyk7XG4gIH1cblxuICBhc011bHRpcGFydCgpIHtcbiAgICByZXR1cm4gdGhpcy5jb250ZW50VHlwZSgnbXVsdGlwYXJ0L2Zvcm0tZGF0YScpO1xuICB9XG5cbiAgYXNGb3JtKCkge1xuICAgIHJldHVybiB0aGlzLmNvbnRlbnRUeXBlKCdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQnKTtcbiAgfVxuXG4gIGFjY2VwdChjb250ZW50VHlwZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMud2l0aEhlYWRlcignYWNjZXB0JywgY29udGVudFR5cGUpO1xuICB9XG5cbiAgY29udGVudFR5cGUoY29udGVudFR5cGU6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLndpdGhIZWFkZXIoJ2NvbnRlbnQtdHlwZScsIGNvbnRlbnRUeXBlKTtcbiAgfVxuXG4gIHVzZXJBZ2VudCh1c2VyQWdlbnQ6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLndpdGhIZWFkZXIoJ3VzZXItYWdlbnQnLCB1c2VyQWdlbnQpO1xuICB9XG5cbiAgd2l0aFRva2VuKHRva2VuOiBzdHJpbmcsIHR5cGU6IHN0cmluZyA9ICdCZWFyZXInKSB7XG4gICAgcmV0dXJuIHRoaXMud2l0aEhlYWRlcignYXV0aG9yaXphdGlvbicsIGAke3R5cGV9ICR7dG9rZW59YCk7XG4gIH1cblxuICB3aXRoSGVhZGVyKGtleTogc3RyaW5nLCB2YWx1ZTogSHR0cEhlYWRlclZhbHVlKSB7XG4gICAgcmV0dXJuIHRoaXMud2l0aEhlYWRlcnMoeyBba2V5XTogdmFsdWUgfSk7XG4gIH1cblxuICB3aXRoSGVhZGVycyhoZWFkZXJzOiBIdHRwUmVxdWVzdEhlYWRlcnMpIHtcbiAgICByZXR1cm4gbmV3IEh0dHBSZXF1ZXN0QnVpbGRlcjxEPih7XG4gICAgICAuLi50aGlzLnJlcXVlc3QsXG4gICAgICBoZWFkZXJzOiB7IC4uLnRoaXMucmVxdWVzdC5oZWFkZXJzLCAuLi5oZWFkZXJzIH0sXG4gICAgfSk7XG4gIH1cblxuICBkb250Rm9sbG93UmVkaXJlY3RzKCkge1xuICAgIHJldHVybiB0aGlzLmZvbGxvd1JlZGlyZWN0cygwKTtcbiAgfVxuXG4gIGZvbGxvd1JlZGlyZWN0cyhtYXhSZWRpcmVjdHM/OiBudW1iZXIpIHtcbiAgICByZXR1cm4gbmV3IEh0dHBSZXF1ZXN0QnVpbGRlcjxEPih7IC4uLnRoaXMucmVxdWVzdCwgbWF4UmVkaXJlY3RzIH0pO1xuICB9XG5cbiAgd2l0aG91dFRpbWVvdXQoKSB7XG4gICAgcmV0dXJuIHRoaXMud2l0aFRpbWVvdXQoMCk7XG4gIH1cblxuICB3aXRoVGltZW91dCh0aW1lb3V0PzogTWlsbGlzZWNvbmRzKSB7XG4gICAgcmV0dXJuIG5ldyBIdHRwUmVxdWVzdEJ1aWxkZXI8RD4oeyAuLi50aGlzLnJlcXVlc3QsIHRpbWVvdXQgfSk7XG4gIH1cblxuICB3aXRoQWJvcnRTaWduYWwoc2lnbmFsPzogR2VuZXJpY0Fib3J0U2lnbmFsKSB7XG4gICAgcmV0dXJuIG5ldyBIdHRwUmVxdWVzdEJ1aWxkZXI8RD4oeyAuLi50aGlzLnJlcXVlc3QsIHNpZ25hbCB9KTtcbiAgfVxuXG4gIHdpdGhFbmRwb2ludChtZXRob2Q6IEh0dHBNZXRob2QsIHVybDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIG5ldyBIdHRwUmVxdWVzdEJ1aWxkZXI8RD4oeyAuLi50aGlzLnJlcXVlc3QsIG1ldGhvZCwgdXJsIH0pO1xuICB9XG5cbiAgd2l0aFBhcmFtcyhcbiAgICBwYXJhbXM6IHN0cmluZyB8IFVSTFNlYXJjaFBhcmFtcyB8IHN0cmluZ1tdW10gfCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+XG4gICkge1xuICAgIGNvbnN0IHVybCA9IG5ldyBVUkwodGhpcy5yZXF1ZXN0LnVybCk7XG4gICAgY29uc3QgbmV3U2VhcmNoID0gbmV3IFVSTFNlYXJjaFBhcmFtcyhwYXJhbXMpO1xuICAgIGNvbnN0IHNlYXJjaCA9IG5ldyBVUkxTZWFyY2hQYXJhbXModXJsLnNlYXJjaFBhcmFtcyk7XG4gICAgWy4uLm5ld1NlYXJjaC5lbnRyaWVzKCldLmZvckVhY2goKFtrZXksIHZhbF0pID0+IHtcbiAgICAgIHNlYXJjaC5hcHBlbmQoa2V5LCB2YWwpO1xuICAgIH0pO1xuICAgIHVybC5zZWFyY2ggPSBzZWFyY2gudG9TdHJpbmcoKTtcbiAgICByZXR1cm4gbmV3IEh0dHBSZXF1ZXN0QnVpbGRlcjxEPih7IC4uLnRoaXMucmVxdWVzdCwgdXJsOiB1cmwudG9TdHJpbmcoKSB9KTtcbiAgfVxuXG4gIHdpdGhEYXRhPFQ+KGRhdGE6IFQpIHtcbiAgICByZXR1cm4gbmV3IEh0dHBSZXF1ZXN0QnVpbGRlcjxUPih7IC4uLnRoaXMucmVxdWVzdCwgZGF0YSB9KTtcbiAgfVxuXG4gIGdldCh1cmw6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLndpdGhFbmRwb2ludCgnZ2V0JywgdXJsKTtcbiAgfVxuXG4gIHBvc3QodXJsOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy53aXRoRW5kcG9pbnQoJ3Bvc3QnLCB1cmwpO1xuICB9XG5cbiAgcHV0KHVybDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMud2l0aEVuZHBvaW50KCdwdXQnLCB1cmwpO1xuICB9XG5cbiAgcGF0Y2godXJsOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy53aXRoRW5kcG9pbnQoJ3BhdGNoJywgdXJsKTtcbiAgfVxuXG4gIGRlbGV0ZSh1cmw6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLndpdGhFbmRwb2ludCgnZGVsZXRlJywgdXJsKTtcbiAgfVxuXG4gIGdldCBtZXRob2QoKTogSHR0cE1ldGhvZCB7XG4gICAgcmV0dXJuIHRoaXMucmVxdWVzdC5tZXRob2Q7XG4gIH1cblxuICBnZXQgdXJsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucmVxdWVzdC51cmw7XG4gIH1cblxuICBnZXQgZGF0YSgpOiBEIHtcbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0LmRhdGE7XG4gIH1cblxuICBnZXQgaGVhZGVycygpOiBIdHRwUmVxdWVzdEhlYWRlcnMge1xuICAgIHJldHVybiB0aGlzLnJlcXVlc3QuaGVhZGVycztcbiAgfVxuXG4gIGdldCBtYXhSZWRpcmVjdHMoKTogbnVtYmVyIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0Lm1heFJlZGlyZWN0cztcbiAgfVxuXG4gIGdldCB0aW1lb3V0KCk6IE1pbGxpc2Vjb25kcyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMucmVxdWVzdC50aW1lb3V0O1xuICB9XG5cbiAgZ2V0IHNpZ25hbCgpOiBHZW5lcmljQWJvcnRTaWduYWwgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLnJlcXVlc3Quc2lnbmFsO1xuICB9XG59XG5cbi8qKlxuICogRGVmaW5lcyBhIEhUVFAgbWV0aG9kIGFzIGEgc3RyaW5nLlxuICogQGNhdGVnb3J5IEh0dHBcbiAqL1xuZXhwb3J0IHR5cGUgSHR0cE1ldGhvZCA9XG4gIHwgJ2dldCdcbiAgfCAnR0VUJ1xuICB8ICdkZWxldGUnXG4gIHwgJ0RFTEVURSdcbiAgfCAnaGVhZCdcbiAgfCAnSEVBRCdcbiAgfCAnb3B0aW9ucydcbiAgfCAnT1BUSU9OUydcbiAgfCAncG9zdCdcbiAgfCAnUE9TVCdcbiAgfCAncHV0J1xuICB8ICdQVVQnXG4gIHwgJ3BhdGNoJ1xuICB8ICdQQVRDSCdcbiAgfCAncHVyZ2UnXG4gIHwgJ1BVUkdFJ1xuICB8ICdsaW5rJ1xuICB8ICdMSU5LJ1xuICB8ICd1bmxpbmsnXG4gIHwgJ1VOTElOSyc7XG4iLCAiaW1wb3J0IHsgUHVibGljS2V5IH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXB1YmxpYy1rZXlzJztcbmltcG9ydCB7IEFtb3VudCwgU29sQW1vdW50IH0gZnJvbSAnLi9BbW91bnQnO1xuaW1wb3J0IHR5cGUgeyBJbnN0cnVjdGlvbiB9IGZyb20gJy4vSW5zdHJ1Y3Rpb24nO1xuaW1wb3J0IHR5cGUgeyBDb21taXRtZW50IH0gZnJvbSAnLi9ScGNJbnRlcmZhY2UnO1xuXG4vKipcbiAqIFRoZSBtYXhpbXVtIGFtb3VudCBvZiBieXRlcyB0aGF0IGNhbiBiZSB1c2VkIGZvciBhIHRyYW5zYWN0aW9uLlxuICogQGNhdGVnb3J5IFRyYW5zYWN0aW9uc1xuICovXG5leHBvcnQgY29uc3QgVFJBTlNBQ1RJT05fU0laRV9MSU1JVCA9IDEyMzI7XG5cbi8qKlxuICogVGhlIHZlcnNpb24gb2YgYSB0cmFuc2FjdGlvbi5cbiAqIC0gTGVnYWN5IGlzIHRoZSB2ZXJ5IGZpcnN0IGl0ZXJhdGlvbiBvZiBTb2xhbmEgdHJhbnNhY3Rpb25zLlxuICogLSBWMCBpbnRyb2R1Y2VzIHRoZSBjb25jZXB0IG9mIHZlcnNpb25uZWQgdHJhbnNhY3Rpb24gZm9yXG4gKiB0aGUgZmlyc3QgdGltZSBhbmQgYWRkcyBzdXBwb3J0cyBmb3IgYWRkcmVzcyBsb29rdXAgdGFibGVzLlxuICpcbiAqIEBjYXRlZ29yeSBUcmFuc2FjdGlvbnNcbiAqL1xuZXhwb3J0IHR5cGUgVHJhbnNhY3Rpb25WZXJzaW9uID0gJ2xlZ2FjeScgfCAwO1xuXG4vKipcbiAqIEEgVWludDhBcnJheSB0aGF0IHJlcHJlc2VudHMgYSBzZXJpYWxpemVkIHRyYW5zYWN0aW9uLlxuICogQGNhdGVnb3J5IFRyYW5zYWN0aW9uc1xuICovXG5leHBvcnQgdHlwZSBTZXJpYWxpemVkVHJhbnNhY3Rpb24gPSBVaW50OEFycmF5O1xuXG4vKipcbiAqIEEgVWludDhBcnJheSB0aGF0IHJlcHJlc2VudHMgdGhlIHNlcmlhbGl6ZWQgbWVzc2FnZSBvZiBhIHRyYW5zYWN0aW9uLlxuICogQGNhdGVnb3J5IFRyYW5zYWN0aW9uc1xuICovXG5leHBvcnQgdHlwZSBTZXJpYWxpemVkVHJhbnNhY3Rpb25NZXNzYWdlID0gVWludDhBcnJheTtcblxuLyoqXG4gKiBBIFVpbnQ4QXJyYXkgdGhhdCByZXByZXNlbnRzIGEgdHJhbnNhY3Rpb24gc2lnbmF0dXJlLlxuICogQGNhdGVnb3J5IFRyYW5zYWN0aW9uc1xuICovXG5leHBvcnQgdHlwZSBUcmFuc2FjdGlvblNpZ25hdHVyZSA9IFVpbnQ4QXJyYXk7XG5cbi8qKlxuICogRGVmaW5lcyBhIHRyYW5zYWN0aW9uIGVycm9yLlxuICogQGNhdGVnb3J5IFRyYW5zYWN0aW9uc1xuICovXG5leHBvcnQgdHlwZSBUcmFuc2FjdGlvbkVycm9yID0ge30gfCBzdHJpbmc7XG5cbi8qKlxuICogRGVmaW5lcyBhIGJsb2NraGFzaC5cbiAqIEBjYXRlZ29yeSBUcmFuc2FjdGlvbnNcbiAqL1xuZXhwb3J0IHR5cGUgQmxvY2toYXNoID0gc3RyaW5nO1xuXG4vKipcbiAqIERlZmluZXMgYSBibG9ja2hhc2ggd2l0aCBpdHMgZXhwaXJ5IGJsb2NrIGhlaWdodC5cbiAqIEBjYXRlZ29yeSBUcmFuc2FjdGlvbnNcbiAqL1xuZXhwb3J0IHR5cGUgQmxvY2toYXNoV2l0aEV4cGlyeUJsb2NrSGVpZ2h0ID0ge1xuICBibG9ja2hhc2g6IEJsb2NraGFzaDtcbiAgbGFzdFZhbGlkQmxvY2tIZWlnaHQ6IG51bWJlcjtcbn07XG5cbi8qKlxuICogRGVmaW5lcyBhIHRyYW5zYWN0aW9uLlxuICogQGNhdGVnb3J5IFRyYW5zYWN0aW9uc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zYWN0aW9uIHtcbiAgcmVhZG9ubHkgbWVzc2FnZTogVHJhbnNhY3Rpb25NZXNzYWdlO1xuICByZWFkb25seSBzZXJpYWxpemVkTWVzc2FnZTogU2VyaWFsaXplZFRyYW5zYWN0aW9uTWVzc2FnZTtcbiAgcmVhZG9ubHkgc2lnbmF0dXJlczogVHJhbnNhY3Rpb25TaWduYXR1cmVbXTtcbn1cblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBtZXNzYWdlIG9mIGEgdHJhbnNhY3Rpb24uXG4gKiBAY2F0ZWdvcnkgVHJhbnNhY3Rpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb25NZXNzYWdlIHtcbiAgcmVhZG9ubHkgdmVyc2lvbjogVHJhbnNhY3Rpb25WZXJzaW9uO1xuICByZWFkb25seSBoZWFkZXI6IFRyYW5zYWN0aW9uTWVzc2FnZUhlYWRlcjtcbiAgcmVhZG9ubHkgYWNjb3VudHM6IFB1YmxpY0tleVtdO1xuICByZWFkb25seSBibG9ja2hhc2g6IEJsb2NraGFzaDtcbiAgcmVhZG9ubHkgaW5zdHJ1Y3Rpb25zOiBDb21waWxlZEluc3RydWN0aW9uW107XG4gIHJlYWRvbmx5IGFkZHJlc3NMb29rdXBUYWJsZXM6IENvbXBpbGVkQWRkcmVzc0xvb2t1cFRhYmxlW107XG59XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgaGVhZGVyIG9mIGEgdHJhbnNhY3Rpb24gbWVzc2FnZS5cbiAqIEBjYXRlZ29yeSBUcmFuc2FjdGlvbnNcbiAqL1xuZXhwb3J0IHR5cGUgVHJhbnNhY3Rpb25NZXNzYWdlSGVhZGVyID0ge1xuICByZWFkb25seSBudW1SZXF1aXJlZFNpZ25hdHVyZXM6IG51bWJlcjtcbiAgcmVhZG9ubHkgbnVtUmVhZG9ubHlTaWduZWRBY2NvdW50czogbnVtYmVyO1xuICByZWFkb25seSBudW1SZWFkb25seVVuc2lnbmVkQWNjb3VudHM6IG51bWJlcjtcbn07XG5cbi8qKlxuICogRGVmaW5lcyBhbiBpbnN0cnVjdGlvbiB0aGF0IHVzZXMgaW5kZXhlcyB0byByZWZlcmVuY2UgYWNjb3VudHMuXG4gKiBAY2F0ZWdvcnkgVHJhbnNhY3Rpb25zXG4gKi9cbmV4cG9ydCB0eXBlIENvbXBpbGVkSW5zdHJ1Y3Rpb24gPSB7XG4gIHJlYWRvbmx5IHByb2dyYW1JbmRleDogbnVtYmVyO1xuICByZWFkb25seSBhY2NvdW50SW5kZXhlczogbnVtYmVyW107XG4gIHJlYWRvbmx5IGRhdGE6IFVpbnQ4QXJyYXk7XG59O1xuXG4vKipcbiAqIERlZmluZXMgYW4gYWRkcmVzcyBsb29rdXAgdGFibGUgdGhhdCB1c2VzIGluZGV4ZXMgdG8gcmVmZXJlbmNlIGFjY291bnRzLlxuICogQGNhdGVnb3J5IFRyYW5zYWN0aW9uc1xuICovXG5leHBvcnQgdHlwZSBDb21waWxlZEFkZHJlc3NMb29rdXBUYWJsZSA9IHtcbiAgcmVhZG9ubHkgcHVibGljS2V5OiBQdWJsaWNLZXk7XG4gIHJlYWRvbmx5IHdyaXRhYmxlSW5kZXhlczogbnVtYmVyW107XG4gIHJlYWRvbmx5IHJlYWRvbmx5SW5kZXhlczogbnVtYmVyW107XG59O1xuXG4vKipcbiAqIERlZmluZXMgYSB0cmFuc2FjdGlvbiB3aXRoIGl0cyBwb3N0LWV4ZWN1dGlvbiBtZXRhZGF0YS5cbiAqIEBjYXRlZ29yeSBUcmFuc2FjdGlvbnNcbiAqL1xuZXhwb3J0IHR5cGUgVHJhbnNhY3Rpb25XaXRoTWV0YSA9IFRyYW5zYWN0aW9uICYge1xuICByZWFkb25seSBtZXRhOiBUcmFuc2FjdGlvbk1ldGE7XG59O1xuXG4vKipcbiAqIERlZmluZXMgdGhlIHBvc3QtZXhlY3V0aW9uIG1ldGFkYXRhIG9mIGEgdHJhbnNhY3Rpb24uXG4gKiBAY2F0ZWdvcnkgVHJhbnNhY3Rpb25zXG4gKi9cbmV4cG9ydCB0eXBlIFRyYW5zYWN0aW9uTWV0YSA9IHtcbiAgcmVhZG9ubHkgZmVlOiBTb2xBbW91bnQ7XG4gIHJlYWRvbmx5IGxvZ3M6IHN0cmluZ1tdO1xuICByZWFkb25seSBwcmVCYWxhbmNlczogU29sQW1vdW50W107XG4gIHJlYWRvbmx5IHBvc3RCYWxhbmNlczogU29sQW1vdW50W107XG4gIHJlYWRvbmx5IHByZVRva2VuQmFsYW5jZXM6IFRyYW5zYWN0aW9uTWV0YVRva2VuQmFsYW5jZVtdO1xuICByZWFkb25seSBwb3N0VG9rZW5CYWxhbmNlczogVHJhbnNhY3Rpb25NZXRhVG9rZW5CYWxhbmNlW107XG4gIHJlYWRvbmx5IGlubmVySW5zdHJ1Y3Rpb25zOiBUcmFuc2FjdGlvbk1ldGFJbm5lckluc3RydWN0aW9uW10gfCBudWxsO1xuICByZWFkb25seSBsb2FkZWRBZGRyZXNzZXM6IFRyYW5zYWN0aW9uTWV0YUxvYWRlZEFkZHJlc3NlcztcbiAgcmVhZG9ubHkgY29tcHV0ZVVuaXRzQ29uc3VtZWQ6IGJpZ2ludCB8IG51bGw7XG4gIHJlYWRvbmx5IGVycjogVHJhbnNhY3Rpb25FcnJvciB8IG51bGw7XG59O1xuXG4vKipcbiAqIFRoZSBiYWxhbmNlIG9mIGEgdG9rZW4gYWNjb3VudCBiZWZvcmUgb3IgYWZ0ZXIgYSB0cmFuc2FjdGlvbi5cbiAqIEBjYXRlZ29yeSBUcmFuc2FjdGlvbnNcbiAqL1xuZXhwb3J0IHR5cGUgVHJhbnNhY3Rpb25NZXRhVG9rZW5CYWxhbmNlID0ge1xuICBhY2NvdW50SW5kZXg6IG51bWJlcjtcbiAgYW1vdW50OiBBbW91bnQ7XG4gIG1pbnQ6IFB1YmxpY0tleTtcbiAgb3duZXI6IFB1YmxpY0tleSB8IG51bGw7XG59O1xuXG4vKipcbiAqIFRoZSBjcm9zcyBwcm9ncmFtIGludm9rZWQgaW5zdHJ1Y3Rpb25zIG9mIGFuIGluc3RydWN0aW9uLlxuICogQGNhdGVnb3J5IFRyYW5zYWN0aW9uc1xuICovXG5leHBvcnQgdHlwZSBUcmFuc2FjdGlvbk1ldGFJbm5lckluc3RydWN0aW9uID0ge1xuICBpbmRleDogbnVtYmVyO1xuICBpbnN0cnVjdGlvbnM6IENvbXBpbGVkSW5zdHJ1Y3Rpb25bXTtcbn07XG5cbi8qKlxuICogVGhlIGNvbGxlY3Rpb24gb2YgYWRkcmVzc2VzIGxvYWRlZCB1c2luZyBhZGRyZXNzIGxvb2t1cCB0YWJsZXMuXG4gKiBAY2F0ZWdvcnkgVHJhbnNhY3Rpb25zXG4gKi9cbmV4cG9ydCB0eXBlIFRyYW5zYWN0aW9uTWV0YUxvYWRlZEFkZHJlc3NlcyA9IHtcbiAgd3JpdGFibGU6IFB1YmxpY0tleVtdO1xuICByZWFkb25seTogUHVibGljS2V5W107XG59O1xuXG4vKipcbiAqIERlZmluZXMgdGhlIHZhcmlvdXMgd2F5cyB0byBjcmVhdGUgYSB0cmFuc2FjdGlvbi5cbiAqIEBjYXRlZ29yeSBUcmFuc2FjdGlvbnNcbiAqL1xuZXhwb3J0IHR5cGUgVHJhbnNhY3Rpb25JbnB1dCA9IFRyYW5zYWN0aW9uSW5wdXRMZWdhY3kgfCBUcmFuc2FjdGlvbklucHV0VjA7XG5cbi8qKlxuICogRGVmaW5lcyB0cmFuc2FjdGlvbiBpbnB1dCBmb3IgbGVnYWN5IHRyYW5zYWN0aW9ucy5cbiAqIEBjYXRlZ29yeSBUcmFuc2FjdGlvbnNcbiAqL1xuZXhwb3J0IHR5cGUgVHJhbnNhY3Rpb25JbnB1dExlZ2FjeSA9IFRyYW5zYWN0aW9uSW5wdXRCYXNlICYge1xuICB2ZXJzaW9uOiAnbGVnYWN5Jztcbn07XG5cbi8qKlxuICogRGVmaW5lcyB0cmFuc2FjdGlvbiBpbnB1dCBmb3IgVjAgdHJhbnNhY3Rpb25zLlxuICogQGNhdGVnb3J5IFRyYW5zYWN0aW9uc1xuICovXG5leHBvcnQgdHlwZSBUcmFuc2FjdGlvbklucHV0VjAgPSBUcmFuc2FjdGlvbklucHV0QmFzZSAmIHtcbiAgdmVyc2lvbj86IDA7XG4gIGFkZHJlc3NMb29rdXBUYWJsZXM/OiBBZGRyZXNzTG9va3VwVGFibGVJbnB1dFtdO1xufTtcblxuLyoqXG4gKiBEZWZpbmVzIGNvbW1vbiB0cmFuc2FjdGlvbiBpbnB1dC5cbiAqIEBjYXRlZ29yeSBUcmFuc2FjdGlvbnNcbiAqL1xuZXhwb3J0IHR5cGUgVHJhbnNhY3Rpb25JbnB1dEJhc2UgPSB7XG4gIHBheWVyOiBQdWJsaWNLZXk7XG4gIGluc3RydWN0aW9uczogSW5zdHJ1Y3Rpb25bXTtcbiAgYmxvY2toYXNoOiBCbG9ja2hhc2g7XG4gIHNpZ25hdHVyZXM/OiBUcmFuc2FjdGlvblNpZ25hdHVyZVtdO1xufTtcblxuLyoqXG4gKiBUaGUgcmVxdWlyZWQgZGF0YSB0byBhZGQgYW4gYWRkcmVzcyBsb29rdXAgdGFibGUgdG8gYSB0cmFuc2FjdGlvbi5cbiAqIEBjYXRlZ29yeSBUcmFuc2FjdGlvbnNcbiAqL1xuZXhwb3J0IHR5cGUgQWRkcmVzc0xvb2t1cFRhYmxlSW5wdXQgPSB7XG4gIHB1YmxpY0tleTogUHVibGljS2V5O1xuICBhZGRyZXNzZXM6IFB1YmxpY0tleVtdO1xufTtcblxuLyoqXG4gKiBUaGUgc3RhdHVzIG9mIGEgc2VudCB0cmFuc2FjdGlvbi5cbiAqIEBjYXRlZ29yeSBUcmFuc2FjdGlvbnNcbiAqL1xuZXhwb3J0IHR5cGUgVHJhbnNhY3Rpb25TdGF0dXMgPSB7XG4gIC8qKiBXaGVuIHRoZSB0cmFuc2FjdGlvbiB3YXMgcHJvY2Vzc2VkLiAqL1xuICBzbG90OiBudW1iZXI7XG4gIC8qKiBUaGUgbnVtYmVyIG9mIGJsb2NrcyB0aGF0IGhhdmUgYmVlbiBjb25maXJtZWQgYW5kIHZvdGVkIG9uIGluIHRoZSBmb3JrIGNvbnRhaW5pbmcgYHNsb3RgLiAqL1xuICBjb25maXJtYXRpb25zOiBudW1iZXIgfCBudWxsO1xuICAvKiogVGhlIHRyYW5zYWN0aW9uIGVycm9yLCBpZiBhbnkuICovXG4gIGVycm9yOiBUcmFuc2FjdGlvbkVycm9yIHwgbnVsbDtcbiAgLyoqIFRoZSBjbHVzdGVyIGNvbmZpcm1hdGlvbiBzdGF0dXMsIGlmIGFueS4gKi9cbiAgY29tbWl0bWVudDogQ29tbWl0bWVudCB8IG51bGw7XG59O1xuXG4vKipcbiAqIEFkZHMgYSBnaXZlbiBzaWduYXR1cmUgdG8gdGhlIHRyYW5zYWN0aW9uJ3Mgc2lnbmF0dXJlIGFycmF5XG4gKiBhbmQgcmV0dXJucyB0aGUgdXBkYXRlZCB0cmFuc2FjdGlvbiBhcyBhIG5ldyBvYmplY3QuXG4gKlxuICogQGNhdGVnb3J5IFRyYW5zYWN0aW9uc1xuICovXG5leHBvcnQgY29uc3QgYWRkVHJhbnNhY3Rpb25TaWduYXR1cmUgPSAoXG4gIHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbixcbiAgc2lnbmF0dXJlOiBUcmFuc2FjdGlvblNpZ25hdHVyZSxcbiAgc2lnbmVyUHVibGljS2V5OiBQdWJsaWNLZXlcbik6IFRyYW5zYWN0aW9uID0+IHtcbiAgY29uc3QgbWF4U2lnbmVycyA9IHRyYW5zYWN0aW9uLm1lc3NhZ2UuaGVhZGVyLm51bVJlcXVpcmVkU2lnbmF0dXJlcztcbiAgY29uc3Qgc2lnbmVyUHVibGljS2V5cyA9IHRyYW5zYWN0aW9uLm1lc3NhZ2UuYWNjb3VudHMuc2xpY2UoMCwgbWF4U2lnbmVycyk7XG4gIGNvbnN0IHNpZ25lckluZGV4ID0gc2lnbmVyUHVibGljS2V5cy5maW5kSW5kZXgoXG4gICAgKGtleSkgPT4ga2V5ID09PSBzaWduZXJQdWJsaWNLZXlcbiAgKTtcblxuICBpZiAoc2lnbmVySW5kZXggPCAwKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgJ1RoZSBwcm92aWRlZCBzaWduZXIgaXMgbm90IHJlcXVpcmVkIHRvIHNpZ24gdGhpcyB0cmFuc2FjdGlvbi4nXG4gICAgKTtcbiAgfVxuXG4gIGNvbnN0IG5ld1NpZ25hdHVyZXMgPSBbLi4udHJhbnNhY3Rpb24uc2lnbmF0dXJlc107XG4gIG5ld1NpZ25hdHVyZXNbc2lnbmVySW5kZXhdID0gc2lnbmF0dXJlO1xuICByZXR1cm4geyAuLi50cmFuc2FjdGlvbiwgc2lnbmF0dXJlczogbmV3U2lnbmF0dXJlcyB9O1xufTtcbiIsICJpbXBvcnQgdHlwZSB7IFB1YmxpY0tleSB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1wdWJsaWMta2V5cyc7XG5pbXBvcnQgdHlwZSB7IENvbnRleHQgfSBmcm9tICcuL0NvbnRleHQnO1xuaW1wb3J0IHR5cGUgeyBTaWduZXIgfSBmcm9tICcuL1NpZ25lcic7XG5pbXBvcnQgeyBhZGRUcmFuc2FjdGlvblNpZ25hdHVyZSwgVHJhbnNhY3Rpb24gfSBmcm9tICcuL1RyYW5zYWN0aW9uJztcblxuLyoqXG4gKiBSZXByZXNlbnRzIGEga2V5cGFpciB3aXRoIGEgcHVibGljIGtleSBhbmQgYSBzZWNyZXQga2V5LlxuICogQGNhdGVnb3J5IFNpZ25lcnMgYW5kIFB1YmxpY0tleXNcbiAqL1xuZXhwb3J0IHR5cGUgS2V5cGFpciA9IHtcbiAgcHVibGljS2V5OiBQdWJsaWNLZXk7XG4gIHNlY3JldEtleTogVWludDhBcnJheTtcbn07XG5cbi8qKlxuICogUmVwcmVzZW50IGEge0BsaW5rIFNpZ25lcn0gdGhhdCBjYW4gaXMgYXdhcmUgb2YgaXRzIHNlY3JldCBrZXkuXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICovXG5leHBvcnQgdHlwZSBLZXlwYWlyU2lnbmVyID0gU2lnbmVyICYgS2V5cGFpcjtcblxuLyoqXG4gKiBHZW5lcmF0ZSBhIG5ldyByYW5kb20ge0BsaW5rIEtleXBhaXJTaWduZXJ9IHVzaW5nIHRoZSBFZGRzYSBpbnRlcmZhY2UuXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICovXG5leHBvcnQgY29uc3QgZ2VuZXJhdGVTaWduZXIgPSAoXG4gIGNvbnRleHQ6IFBpY2s8Q29udGV4dCwgJ2VkZHNhJz5cbik6IEtleXBhaXJTaWduZXIgPT5cbiAgY3JlYXRlU2lnbmVyRnJvbUtleXBhaXIoY29udGV4dCwgY29udGV4dC5lZGRzYS5nZW5lcmF0ZUtleXBhaXIoKSk7XG5cbi8qKlxuICogQ3JlYXRlcyBhIHtAbGluayBLZXlwYWlyU2lnbmVyfSBmcm9tIGEge0BsaW5rIEtleXBhaXJ9IG9iamVjdC5cbiAqIEBjYXRlZ29yeSBTaWduZXJzIGFuZCBQdWJsaWNLZXlzXG4gKi9cbmV4cG9ydCBjb25zdCBjcmVhdGVTaWduZXJGcm9tS2V5cGFpciA9IChcbiAgY29udGV4dDogUGljazxDb250ZXh0LCAnZWRkc2EnPixcbiAga2V5cGFpcjogS2V5cGFpclxuKTogS2V5cGFpclNpZ25lciA9PiAoe1xuICBwdWJsaWNLZXk6IGtleXBhaXIucHVibGljS2V5LFxuICBzZWNyZXRLZXk6IGtleXBhaXIuc2VjcmV0S2V5LFxuICBhc3luYyBzaWduTWVzc2FnZShtZXNzYWdlOiBVaW50OEFycmF5KTogUHJvbWlzZTxVaW50OEFycmF5PiB7XG4gICAgcmV0dXJuIGNvbnRleHQuZWRkc2Euc2lnbihtZXNzYWdlLCBrZXlwYWlyKTtcbiAgfSxcbiAgYXN5bmMgc2lnblRyYW5zYWN0aW9uKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IFByb21pc2U8VHJhbnNhY3Rpb24+IHtcbiAgICBjb25zdCBtZXNzYWdlID0gdHJhbnNhY3Rpb24uc2VyaWFsaXplZE1lc3NhZ2U7XG4gICAgY29uc3Qgc2lnbmF0dXJlID0gY29udGV4dC5lZGRzYS5zaWduKG1lc3NhZ2UsIGtleXBhaXIpO1xuICAgIHJldHVybiBhZGRUcmFuc2FjdGlvblNpZ25hdHVyZSh0cmFuc2FjdGlvbiwgc2lnbmF0dXJlLCBrZXlwYWlyLnB1YmxpY0tleSk7XG4gIH0sXG4gIGFzeW5jIHNpZ25BbGxUcmFuc2FjdGlvbnMoXG4gICAgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbltdXG4gICk6IFByb21pc2U8VHJhbnNhY3Rpb25bXT4ge1xuICAgIHJldHVybiBQcm9taXNlLmFsbChcbiAgICAgIHRyYW5zYWN0aW9ucy5tYXAoKHRyYW5zYWN0aW9uKSA9PiB0aGlzLnNpZ25UcmFuc2FjdGlvbih0cmFuc2FjdGlvbikpXG4gICAgKTtcbiAgfSxcbn0pO1xuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGdpdmVuIHNpZ25lciBpcyBhIHtAbGluayBLZXlwYWlyU2lnbmVyfS5cbiAqIEBjYXRlZ29yeSBTaWduZXJzIGFuZCBQdWJsaWNLZXlzXG4gKi9cbmV4cG9ydCBjb25zdCBpc0tleXBhaXJTaWduZXIgPSAoXG4gIHNpZ25lcjogU2lnbmVyICYgeyBzZWNyZXRLZXk/OiBVaW50OEFycmF5IH1cbik6IHNpZ25lciBpcyBLZXlwYWlyU2lnbmVyID0+IHNpZ25lci5zZWNyZXRLZXkgIT09IHVuZGVmaW5lZDtcbiIsICJpbXBvcnQgdHlwZSB7IFB1YmxpY0tleSB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1wdWJsaWMta2V5cyc7XG5pbXBvcnQgdHlwZSB7IENsdXN0ZXIgfSBmcm9tICcuL0NsdXN0ZXInO1xuaW1wb3J0IHR5cGUgeyBQcm9ncmFtRXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5cbi8qKlxuICogQW4gZXJyb3IgdGhhdCBjb250YWlucyBQcm9ncmFtIGxvZ3MuXG4gKiBAY2F0ZWdvcnkgUHJvZ3JhbXNcbiAqL1xuZXhwb3J0IHR5cGUgRXJyb3JXaXRoTG9ncyA9IEVycm9yICYgeyBsb2dzOiBzdHJpbmdbXSB9O1xuXG4vKipcbiAqIEFuIGVycm9yIHRoYXQgY29udGFpbnMgYSBQcm9ncmFtIGVycm9yIGNvZGUuXG4gKiBAY2F0ZWdvcnkgUHJvZ3JhbXNcbiAqL1xuZXhwb3J0IHR5cGUgRXJyb3JXaXRoQ29kZSA9IEVycm9yICYgeyBjb2RlOiBudW1iZXIgfTtcblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBnaXZlbiB2YWx1ZSBpcyBhbiBpbnN0YW5jZSBvZiB7QGxpbmsgRXJyb3JXaXRoTG9nc30uXG4gKiBAY2F0ZWdvcnkgUHJvZ3JhbXNcbiAqL1xuZXhwb3J0IGNvbnN0IGlzRXJyb3JXaXRoTG9ncyA9IChlcnJvcjogdW5rbm93bik6IGVycm9yIGlzIEVycm9yV2l0aExvZ3MgPT5cbiAgZXJyb3IgaW5zdGFuY2VvZiBFcnJvciAmJiAnbG9ncycgaW4gZXJyb3I7XG5cbi8qKlxuICogRGVmaW5lcyBhIFNvbGFuYSBQcm9ncmFtIHRoYXQgY2FuIGJlXG4gKiByZWdpc3RlcmVkIGluIFVtaSdzIHByb2dyYW0gcmVwb3NpdG9yeS5cbiAqXG4gKiBAY2F0ZWdvcnkgUHJvZ3JhbXNcbiAqL1xuZXhwb3J0IHR5cGUgUHJvZ3JhbSA9IHtcbiAgLyoqXG4gICAqIEEgdW5pcXVlIG5hbWUgZm9yIHRoZSBQcm9ncmFtIGluIGNhbWVsQ2FzZS5cbiAgICpcbiAgICogVG8gYXZvaWQgY29uZmxpY3Qgd2l0aCBvdGhlciBvcmdhbml6YXRpb25zLCBpdCBpcyByZWNvbW1lbmRlZFxuICAgKiB0byBwcmVmaXggdGhlIHByb2dyYW0gbmFtZSB3aXRoIGEgbmFtZXNwYWNlIHRoYXQgaXMgdW5pcXVlIHRvXG4gICAqIHlvdXIgb3JnYW5pemF0aW9uLiBGb3IgaW5zdGFuY2UsIE1ldGFwbGV4IHByb2dyYW1zIGFyZSBwcmVmaXhlZFxuICAgKiB3aXRoIGBtcGxgIGxpa2Ugc286IGBtcGxUb2tlbk1ldGFkYXRhYCBvciBgbXBsQ2FuZHlNYWNoaW5lYC5cbiAgICovXG4gIG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHB1YmxpYyBrZXkgb2YgdGhlIHByb2dyYW0uXG4gICAqL1xuICBwdWJsaWNLZXk6IFB1YmxpY0tleTtcblxuICAvKipcbiAgICogUmV0cmlldmVzIGEge0BsaW5rIFByb2dyYW1FcnJvcn0gZnJvbSBhIGdpdmVuIGVycm9yIGNvZGVcbiAgICogb3IgYG51bGxgIGlmIHRoZSBlcnJvciBjb2RlIGlzIG5vdCByZWNvZ25pemVkLlxuICAgKi9cbiAgZ2V0RXJyb3JGcm9tQ29kZTogKGNvZGU6IG51bWJlciwgY2F1c2U/OiBFcnJvcikgPT4gUHJvZ3JhbUVycm9yIHwgbnVsbDtcblxuICAvKipcbiAgICogUmV0cmlldmVzIGEge0BsaW5rIFByb2dyYW1FcnJvcn0gZnJvbSBhIGdpdmVuIGVycm9yIG5hbWVcbiAgICogb3IgYG51bGxgIGlmIHRoZSBlcnJvciBuYW1lIGlzIG5vdCByZWNvZ25pemVkLlxuICAgKi9cbiAgZ2V0RXJyb3JGcm9tTmFtZTogKG5hbWU6IHN0cmluZywgY2F1c2U/OiBFcnJvcikgPT4gUHJvZ3JhbUVycm9yIHwgbnVsbDtcblxuICAvKipcbiAgICogQSBtZXRob2QgdGhhdCByZXR1cm5zIGB0cnVlYCBpZiB0aGUgcHJvZ3JhbSBpcyBhdmFpbGFibGUgb24gdGhlIGdpdmVuIGNsdXN0ZXIuXG4gICAqXG4gICAqIElmIHRoZSBzYW1lIHByb2dyYW0gaXMgYXZhaWxhYmxlIG9uIG11bHRpcGxlIGNsdXN0ZXJzIGJ1dCB1c2luZyBkaWZmZXJlbnQgcHVibGljIGtleXMsXG4gICAqIG11bHRpcGxlIFByb2dyYW0gaW5zdGFuY2VzIG11c3QgYmUgcmVnaXN0ZXJlZCBzdWNoIHRoYXQgdGhlIGBpc09uQ2x1c3RlcmAgbWV0aG9kXG4gICAqIHJldHVybnMgYHRydWVgIGZvciB0aGUgYXBwcm9wcmlhdGUgY2x1c3Rlci5cbiAgICovXG4gIGlzT25DbHVzdGVyOiAoY2x1c3RlcjogQ2x1c3RlcikgPT4gYm9vbGVhbjtcbn07XG4iLCAiaW1wb3J0IHsgY3JlYXRlU2lnbmVyRnJvbUtleXBhaXIsIGdlbmVyYXRlU2lnbmVyLCBLZXlwYWlyIH0gZnJvbSAnLi9LZXlwYWlyJztcbmltcG9ydCB0eXBlIHsgVW1pUGx1Z2luIH0gZnJvbSAnLi9VbWlQbHVnaW4nO1xuaW1wb3J0IHR5cGUgeyBTaWduZXIgfSBmcm9tICcuL1NpZ25lcic7XG5cbi8qKlxuICogVW1pIHBsdWdpbiB0aGF0IHNldHMgdGhlIGlkZW50aXR5IGFuZCB0aGUgcGF5ZXIgdG8gdGhlIGdpdmVuIHNpZ25lci5cbiAqIEBjYXRlZ29yeSBTaWduZXJzIGFuZCBQdWJsaWNLZXlzXG4gKi9cbmV4cG9ydCBjb25zdCBzaWduZXJJZGVudGl0eSA9IChzaWduZXI6IFNpZ25lciwgc2V0UGF5ZXIgPSB0cnVlKTogVW1pUGx1Z2luID0+ICh7XG4gIGluc3RhbGwodW1pKSB7XG4gICAgdW1pLmlkZW50aXR5ID0gc2lnbmVyO1xuICAgIGlmIChzZXRQYXllcikge1xuICAgICAgdW1pLnBheWVyID0gc2lnbmVyO1xuICAgIH1cbiAgfSxcbn0pO1xuXG4vKipcbiAqIFVtaSBwbHVnaW4gdGhhdCBvbmx5IHNldHMgdGhlIHBheWVyIHRvIHRoZSBnaXZlbiBzaWduZXIuXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICovXG5leHBvcnQgY29uc3Qgc2lnbmVyUGF5ZXIgPSAoc2lnbmVyOiBTaWduZXIpOiBVbWlQbHVnaW4gPT4gKHtcbiAgaW5zdGFsbCh1bWkpIHtcbiAgICB1bWkucGF5ZXIgPSBzaWduZXI7XG4gIH0sXG59KTtcblxuLyoqXG4gKiBVbWkgcGx1Z2luIHRoYXQgc2V0cyB0aGUgaWRlbnRpdHkgYW5kIHRoZSBwYXllciB0byBhIHJhbmRvbWx5IGdlbmVyYXRlZCBzaWduZXIuXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICovXG5leHBvcnQgY29uc3QgZ2VuZXJhdGVkU2lnbmVySWRlbnRpdHkgPSAoc2V0UGF5ZXIgPSB0cnVlKTogVW1pUGx1Z2luID0+ICh7XG4gIGluc3RhbGwodW1pKSB7XG4gICAgY29uc3Qgc2lnbmVyID0gZ2VuZXJhdGVTaWduZXIodW1pKTtcbiAgICB1bWkudXNlKHNpZ25lcklkZW50aXR5KHNpZ25lciwgc2V0UGF5ZXIpKTtcbiAgfSxcbn0pO1xuXG4vKipcbiAqIFVtaSBwbHVnaW4gdGhhdCBvbmx5IHNldHMgdGhlIHBheWVyIHRvIGEgcmFuZG9tbHkgZ2VuZXJhdGVkIHNpZ25lci5cbiAqIEBjYXRlZ29yeSBTaWduZXJzIGFuZCBQdWJsaWNLZXlzXG4gKi9cbmV4cG9ydCBjb25zdCBnZW5lcmF0ZWRTaWduZXJQYXllciA9ICgpOiBVbWlQbHVnaW4gPT4gKHtcbiAgaW5zdGFsbCh1bWkpIHtcbiAgICBjb25zdCBzaWduZXIgPSBnZW5lcmF0ZVNpZ25lcih1bWkpO1xuICAgIHVtaS51c2Uoc2lnbmVyUGF5ZXIoc2lnbmVyKSk7XG4gIH0sXG59KTtcblxuLyoqXG4gKiBVbWkgcGx1Z2luIHRoYXQgc2V0cyB0aGUgaWRlbnRpdHkgYW5kIHRoZSBwYXllciB0byBhIHByb3ZpZGVkIGtleXBhaXIuXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICovXG5leHBvcnQgY29uc3Qga2V5cGFpcklkZW50aXR5ID0gKFxuICBrZXlwYWlyOiBLZXlwYWlyLFxuICBzZXRQYXllciA9IHRydWVcbik6IFVtaVBsdWdpbiA9PiAoe1xuICBpbnN0YWxsKHVtaSkge1xuICAgIGNvbnN0IHNpZ25lciA9IGNyZWF0ZVNpZ25lckZyb21LZXlwYWlyKHVtaSwga2V5cGFpcik7XG4gICAgdW1pLnVzZShzaWduZXJJZGVudGl0eShzaWduZXIsIHNldFBheWVyKSk7XG4gIH0sXG59KTtcblxuLyoqXG4gKiBVbWkgcGx1Z2luIHRoYXQgb25seSBzZXRzIHRoZSBwYXllciB0byBhIHByb3ZpZGVkIGtleXBhaXIuXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICovXG5leHBvcnQgY29uc3Qga2V5cGFpclBheWVyID0gKGtleXBhaXI6IEtleXBhaXIpOiBVbWlQbHVnaW4gPT4gKHtcbiAgaW5zdGFsbCh1bWkpIHtcbiAgICBjb25zdCBzaWduZXIgPSBjcmVhdGVTaWduZXJGcm9tS2V5cGFpcih1bWksIGtleXBhaXIpO1xuICAgIHVtaS51c2Uoc2lnbmVyUGF5ZXIoc2lnbmVyKSk7XG4gIH0sXG59KTtcbiIsICJpbXBvcnQgeyBTb2xBbW91bnQgfSBmcm9tICcuL0Ftb3VudCc7XG5pbXBvcnQgdHlwZSB7IENvbnRleHQgfSBmcm9tICcuL0NvbnRleHQnO1xuaW1wb3J0IHsgU2RrRXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5pbXBvcnQgdHlwZSB7XG4gIEFjY291bnRNZXRhLFxuICBJbnN0cnVjdGlvbixcbiAgV3JhcHBlZEluc3RydWN0aW9uLFxufSBmcm9tICcuL0luc3RydWN0aW9uJztcbmltcG9ydCB0eXBlIHtcbiAgUnBjQ29uZmlybVRyYW5zYWN0aW9uT3B0aW9ucyxcbiAgUnBjQ29uZmlybVRyYW5zYWN0aW9uUmVzdWx0LFxuICBScGNDb25maXJtVHJhbnNhY3Rpb25TdHJhdGVneSxcbiAgUnBjR2V0TGF0ZXN0QmxvY2toYXNoT3B0aW9ucyxcbiAgUnBjU2VuZFRyYW5zYWN0aW9uT3B0aW9ucyxcbn0gZnJvbSAnLi9ScGNJbnRlcmZhY2UnO1xuaW1wb3J0IHsgU2lnbmVyLCBzaWduVHJhbnNhY3Rpb24sIHVuaXF1ZVNpZ25lcnMgfSBmcm9tICcuL1NpZ25lcic7XG5pbXBvcnQge1xuICBBZGRyZXNzTG9va3VwVGFibGVJbnB1dCxcbiAgQmxvY2toYXNoLFxuICBCbG9ja2hhc2hXaXRoRXhwaXJ5QmxvY2tIZWlnaHQsXG4gIFRyYW5zYWN0aW9uLFxuICBUcmFuc2FjdGlvbklucHV0LFxuICBUcmFuc2FjdGlvblNpZ25hdHVyZSxcbiAgVHJhbnNhY3Rpb25WZXJzaW9uLFxuICBUUkFOU0FDVElPTl9TSVpFX0xJTUlULFxufSBmcm9tICcuL1RyYW5zYWN0aW9uJztcblxuLyoqXG4gKiBEZWZpbmVzIGFuIGdlbmVyaWMgb2JqZWN0IHdpdGggd3JhcHBlZCBpbnN0cnVjdGlvbnMsXG4gKiBzdWNoIGFzIGEge0BsaW5rIFRyYW5zYWN0aW9uQnVpbGRlcn0uXG4gKiBAY2F0ZWdvcnkgVHJhbnNhY3Rpb25zXG4gKi9cbmV4cG9ydCB0eXBlIEhhc1dyYXBwZWRJbnN0cnVjdGlvbnMgPSB7IGl0ZW1zOiBXcmFwcGVkSW5zdHJ1Y3Rpb25bXSB9O1xuXG4vKipcbiAqIERlZmluZXMgYWxsIHRoZSBwb3NzaWJsZSBpbnB1dHMgZm9yIGFkZGluZyBpdGVtcyB0byBhIHRyYW5zYWN0aW9uIGJ1aWxkZXIuXG4gKiBAY2F0ZWdvcnkgVHJhbnNhY3Rpb25zXG4gKi9cbmV4cG9ydCB0eXBlIFRyYW5zYWN0aW9uQnVpbGRlckl0ZW1zSW5wdXQgPVxuICB8IFdyYXBwZWRJbnN0cnVjdGlvblxuICB8IFdyYXBwZWRJbnN0cnVjdGlvbltdXG4gIHwgSGFzV3JhcHBlZEluc3RydWN0aW9uc1xuICB8IEhhc1dyYXBwZWRJbnN0cnVjdGlvbnNbXTtcblxuLyoqXG4gKiBUaGUgYXZhaWxhYmxlIG9wdGlvbnMgb2YgYSB0cmFuc2FjdGlvbiBidWlsZGVyLlxuICogQGNhdGVnb3J5IFRyYW5zYWN0aW9uc1xuICovXG5leHBvcnQgdHlwZSBUcmFuc2FjdGlvbkJ1aWxkZXJPcHRpb25zID0ge1xuICAvKiogVGhlIHNpZ25lciBwYXlpbmcgZm9yIHRoZSB0cmFuc2FjdGlvbiBmZWUuICovXG4gIGZlZVBheWVyPzogU2lnbmVyO1xuICAvKiogVGhlIHZlcnNpb24gb2YgdGhlIHRyYW5zYWN0aW9uIHRvIGJ1aWxkLiAqL1xuICB2ZXJzaW9uPzogVHJhbnNhY3Rpb25WZXJzaW9uO1xuICAvKiogVGhlIGFkZHJlc3MgbG9va3VwIHRhYmxlcyB0byBhdHRhY2ggdG8gdGhlIGJ1aWx0IHRyYW5zYWN0aW9uLiAqL1xuICBhZGRyZXNzTG9va3VwVGFibGVzPzogQWRkcmVzc0xvb2t1cFRhYmxlSW5wdXRbXTtcbiAgLyoqIFRoZSBibG9ja2hhc2ggdGhhdCBzaG91bGQgYmUgYXNzb2NpYXRlZCB3aXRoIHRoZSBidWlsdCB0cmFuc2FjdGlvbi4gKi9cbiAgYmxvY2toYXNoPzogQmxvY2toYXNoIHwgQmxvY2toYXNoV2l0aEV4cGlyeUJsb2NrSGVpZ2h0O1xufTtcblxuLyoqXG4gKiBBIHNldCBvZiBvcHRpb25zIHRvIHVzZSB3aGVuIHNlbmRpbmcgYW5kIGNvbmZpcm1pbmdcbiAqIGEgdHJhbnNhY3Rpb24gZGlyZWN0bHkgZnJvbSBhIHRyYW5zYWN0aW9uIGJ1aWxkZXIuXG4gKiBAY2F0ZWdvcnkgVHJhbnNhY3Rpb25zXG4gKi9cbmV4cG9ydCB0eXBlIFRyYW5zYWN0aW9uQnVpbGRlclNlbmRBbmRDb25maXJtT3B0aW9ucyA9IHtcbiAgc2VuZD86IFJwY1NlbmRUcmFuc2FjdGlvbk9wdGlvbnM7XG4gIGNvbmZpcm0/OiBQYXJ0aWFsPFJwY0NvbmZpcm1UcmFuc2FjdGlvbk9wdGlvbnM+O1xufTtcblxuLyoqXG4gKiBBIGJ1aWxkZXIgdGhhdCBoZWxwcyBjb25zdHJ1Y3QgdHJhbnNhY3Rpb25zLlxuICogQGNhdGVnb3J5IFRyYW5zYWN0aW9uc1xuICovXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25CdWlsZGVyIGltcGxlbWVudHMgSGFzV3JhcHBlZEluc3RydWN0aW9ucyB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHJlYWRvbmx5IGl0ZW1zOiBXcmFwcGVkSW5zdHJ1Y3Rpb25bXSA9IFtdLFxuICAgIHJlYWRvbmx5IG9wdGlvbnM6IFRyYW5zYWN0aW9uQnVpbGRlck9wdGlvbnMgPSB7fVxuICApIHt9XG5cbiAgZW1wdHkoKTogVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uQnVpbGRlcihbXSwgdGhpcy5vcHRpb25zKTtcbiAgfVxuXG4gIHNldEl0ZW1zKGlucHV0OiBUcmFuc2FjdGlvbkJ1aWxkZXJJdGVtc0lucHV0KTogVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uQnVpbGRlcih0aGlzLnBhcnNlSXRlbXMoaW5wdXQpLCB0aGlzLm9wdGlvbnMpO1xuICB9XG5cbiAgcHJlcGVuZChpbnB1dDogVHJhbnNhY3Rpb25CdWlsZGVySXRlbXNJbnB1dCk6IFRyYW5zYWN0aW9uQnVpbGRlciB7XG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbkJ1aWxkZXIoXG4gICAgICBbLi4udGhpcy5wYXJzZUl0ZW1zKGlucHV0KSwgLi4udGhpcy5pdGVtc10sXG4gICAgICB0aGlzLm9wdGlvbnNcbiAgICApO1xuICB9XG5cbiAgYXBwZW5kKGlucHV0OiBUcmFuc2FjdGlvbkJ1aWxkZXJJdGVtc0lucHV0KTogVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uQnVpbGRlcihcbiAgICAgIFsuLi50aGlzLml0ZW1zLCAuLi50aGlzLnBhcnNlSXRlbXMoaW5wdXQpXSxcbiAgICAgIHRoaXMub3B0aW9uc1xuICAgICk7XG4gIH1cblxuICBhZGQoaW5wdXQ6IFRyYW5zYWN0aW9uQnVpbGRlckl0ZW1zSW5wdXQpOiBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmFwcGVuZChpbnB1dCk7XG4gIH1cblxuICBtYXBJbnN0cnVjdGlvbnMoXG4gICAgZm46IChcbiAgICAgIHdyYXBwZWRJbnN0cnVjdGlvbjogV3JhcHBlZEluc3RydWN0aW9uLFxuICAgICAgaW5kZXg6IG51bWJlcixcbiAgICAgIGFycmF5OiBXcmFwcGVkSW5zdHJ1Y3Rpb25bXVxuICAgICkgPT4gV3JhcHBlZEluc3RydWN0aW9uXG4gICk6IFRyYW5zYWN0aW9uQnVpbGRlciB7XG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbkJ1aWxkZXIodGhpcy5pdGVtcy5tYXAoZm4pLCB0aGlzLm9wdGlvbnMpO1xuICB9XG5cbiAgYWRkUmVtYWluaW5nQWNjb3VudHMoXG4gICAgYWNjb3VudE1ldGE6IEFjY291bnRNZXRhIHwgQWNjb3VudE1ldGFbXSxcbiAgICBpbnN0cnVjdGlvbkluZGV4PzogbnVtYmVyXG4gICk6IFRyYW5zYWN0aW9uQnVpbGRlciB7XG4gICAgaW5zdHJ1Y3Rpb25JbmRleCA9IGluc3RydWN0aW9uSW5kZXggPz8gdGhpcy5pdGVtcy5sZW5ndGggLSAxO1xuICAgIHJldHVybiB0aGlzLm1hcEluc3RydWN0aW9ucygod3JhcHBlZEluc3RydWN0aW9uLCBpbmRleCkgPT4ge1xuICAgICAgaWYgKGluZGV4ICE9PSBpbnN0cnVjdGlvbkluZGV4KSByZXR1cm4gd3JhcHBlZEluc3RydWN0aW9uO1xuICAgICAgY29uc3Qga2V5cyA9IFtcbiAgICAgICAgLi4ud3JhcHBlZEluc3RydWN0aW9uLmluc3RydWN0aW9uLmtleXMsXG4gICAgICAgIC4uLihBcnJheS5pc0FycmF5KGFjY291bnRNZXRhKSA/IGFjY291bnRNZXRhIDogW2FjY291bnRNZXRhXSksXG4gICAgICBdO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4ud3JhcHBlZEluc3RydWN0aW9uLFxuICAgICAgICBpbnN0cnVjdGlvbjogeyAuLi53cmFwcGVkSW5zdHJ1Y3Rpb24uaW5zdHJ1Y3Rpb24sIGtleXMgfSxcbiAgICAgIH07XG4gICAgfSk7XG4gIH1cblxuICBzcGxpdEJ5SW5kZXgoaW5kZXg6IG51bWJlcik6IFtUcmFuc2FjdGlvbkJ1aWxkZXIsIFRyYW5zYWN0aW9uQnVpbGRlcl0ge1xuICAgIHJldHVybiBbXG4gICAgICBuZXcgVHJhbnNhY3Rpb25CdWlsZGVyKHRoaXMuaXRlbXMuc2xpY2UoMCwgaW5kZXgpLCB0aGlzLm9wdGlvbnMpLFxuICAgICAgbmV3IFRyYW5zYWN0aW9uQnVpbGRlcih0aGlzLml0ZW1zLnNsaWNlKGluZGV4KSwgdGhpcy5vcHRpb25zKSxcbiAgICBdO1xuICB9XG5cbiAgLyoqXG4gICAqIFNwbGl0IHRoZSBidWlsZGVyIGludG8gbXVsdGlwbGUgYnVpbGRlcnMsIHN1Y2ggdGhhdFxuICAgKiBlYWNoIG9mIHRoZW0gc2hvdWxkIGZpdCBpbiBhIHNpbmdsZSB0cmFuc2FjdGlvbi5cbiAgICpcbiAgICogVGhpcyBtZXRob2QgaXMgdW5zYWZlIGZvciBzZXZlcmFsIHJlYXNvbnM6XG4gICAqIC0gQmVjYXVzZSB0cmFuc2FjdGlvbnMgYXJlIGF0b21pYywgc3BsaXR0aW5nIHRoZSBidWlsZGVyXG4gICAqICAgaW50byBtdWx0aXBsZSB0cmFuc2FjdGlvbnMgbWF5IGNhdXNlIHVuZGVzaXJlZCBzaWRlIGVmZmVjdHMuXG4gICAqICAgRm9yIGV4YW1wbGUsIGlmIHRoZSBmaXJzdCB0cmFuc2FjdGlvbiBzdWNjZWVkcyBidXQgdGhlIHNlY29uZFxuICAgKiAgIG9uZSBmYWlscywgeW91IG1heSBlbmQgdXAgd2l0aCBhbiBpbmNvbnNpc3RlbnQgYWNjb3VudCBzdGF0ZS5cbiAgICogICBUaGlzIGlzIHdoeSBpdCBpcyByZWNvbW1lbmRlZCB0byBtYW51YWxseSBzcGxpdCB5b3VyIHRyYW5zYWN0aW9uc1xuICAgKiAgIHN1Y2ggdGhhdCBlYWNoIG9mIHRoZW0gaXMgdmFsaWQgb24gaXRzIG93bi5cbiAgICogLSBJdCBjYW4gb25seSBzcGxpdCB0aGUgaW5zdHJ1Y3Rpb25zIG9mIHRoZSBidWlsZGVyLiBNZWFuaW5nIHRoYXQsXG4gICAqICAgaWYgdGhlIGJ1aWxkZXIgaGFzIGEgc2luZ2xlIGluc3RydWN0aW9uIHRoYXQgaXMgdG9vIGJpZyB0byBmaXQgaW5cbiAgICogICBhIHNpbmdsZSB0cmFuc2FjdGlvbiwgaXQgd2lsbCBub3QgYmUgYWJsZSB0byBzcGxpdCBpdC5cbiAgICovXG4gIHVuc2FmZVNwbGl0QnlUcmFuc2FjdGlvblNpemUoXG4gICAgY29udGV4dDogUGljazxDb250ZXh0LCAndHJhbnNhY3Rpb25zJyB8ICdwYXllcic+XG4gICk6IFRyYW5zYWN0aW9uQnVpbGRlcltdIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5yZWR1Y2UoXG4gICAgICAoYnVpbGRlcnMsIGl0ZW0pID0+IHtcbiAgICAgICAgY29uc3QgbGFzdEJ1aWxkZXIgPSBidWlsZGVycy5wb3AoKSBhcyBUcmFuc2FjdGlvbkJ1aWxkZXI7XG4gICAgICAgIGNvbnN0IGxhc3RCdWlsZGVyV2l0aEl0ZW0gPSBsYXN0QnVpbGRlci5hZGQoaXRlbSk7XG4gICAgICAgIGlmIChsYXN0QnVpbGRlcldpdGhJdGVtLmZpdHNJbk9uZVRyYW5zYWN0aW9uKGNvbnRleHQpKSB7XG4gICAgICAgICAgYnVpbGRlcnMucHVzaChsYXN0QnVpbGRlcldpdGhJdGVtKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBidWlsZGVycy5wdXNoKGxhc3RCdWlsZGVyKTtcbiAgICAgICAgICBidWlsZGVycy5wdXNoKGxhc3RCdWlsZGVyLmVtcHR5KCkuYWRkKGl0ZW0pKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gYnVpbGRlcnM7XG4gICAgICB9LFxuICAgICAgW3RoaXMuZW1wdHkoKV1cbiAgICApO1xuICB9XG5cbiAgc2V0RmVlUGF5ZXIoZmVlUGF5ZXI6IFNpZ25lcik6IFRyYW5zYWN0aW9uQnVpbGRlciB7XG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbkJ1aWxkZXIodGhpcy5pdGVtcywgeyAuLi50aGlzLm9wdGlvbnMsIGZlZVBheWVyIH0pO1xuICB9XG5cbiAgZ2V0RmVlUGF5ZXIoY29udGV4dDogUGljazxDb250ZXh0LCAncGF5ZXInPik6IFNpZ25lciB7XG4gICAgcmV0dXJuIHRoaXMub3B0aW9ucy5mZWVQYXllciA/PyBjb250ZXh0LnBheWVyO1xuICB9XG5cbiAgc2V0VmVyc2lvbih2ZXJzaW9uOiBUcmFuc2FjdGlvblZlcnNpb24pOiBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb25CdWlsZGVyKHRoaXMuaXRlbXMsIHsgLi4udGhpcy5vcHRpb25zLCB2ZXJzaW9uIH0pO1xuICB9XG5cbiAgdXNlTGVnYWN5VmVyc2lvbigpOiBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLnNldFZlcnNpb24oJ2xlZ2FjeScpO1xuICB9XG5cbiAgdXNlVjAoKTogVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgICByZXR1cm4gdGhpcy5zZXRWZXJzaW9uKDApO1xuICB9XG5cbiAgc2V0QWRkcmVzc0xvb2t1cFRhYmxlcyhcbiAgICBhZGRyZXNzTG9va3VwVGFibGVzOiBBZGRyZXNzTG9va3VwVGFibGVJbnB1dFtdXG4gICk6IFRyYW5zYWN0aW9uQnVpbGRlciB7XG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbkJ1aWxkZXIodGhpcy5pdGVtcywge1xuICAgICAgLi4udGhpcy5vcHRpb25zLFxuICAgICAgYWRkcmVzc0xvb2t1cFRhYmxlcyxcbiAgICB9KTtcbiAgfVxuXG4gIGdldEJsb2NraGFzaCgpOiBCbG9ja2hhc2ggfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0eXBlb2YgdGhpcy5vcHRpb25zLmJsb2NraGFzaCA9PT0gJ29iamVjdCdcbiAgICAgID8gdGhpcy5vcHRpb25zLmJsb2NraGFzaC5ibG9ja2hhc2hcbiAgICAgIDogdGhpcy5vcHRpb25zLmJsb2NraGFzaDtcbiAgfVxuXG4gIHNldEJsb2NraGFzaChcbiAgICBibG9ja2hhc2g6IEJsb2NraGFzaCB8IEJsb2NraGFzaFdpdGhFeHBpcnlCbG9ja0hlaWdodFxuICApOiBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb25CdWlsZGVyKHRoaXMuaXRlbXMsIHsgLi4udGhpcy5vcHRpb25zLCBibG9ja2hhc2ggfSk7XG4gIH1cblxuICBhc3luYyBzZXRMYXRlc3RCbG9ja2hhc2goXG4gICAgY29udGV4dDogUGljazxDb250ZXh0LCAncnBjJz4sXG4gICAgb3B0aW9uczogUnBjR2V0TGF0ZXN0QmxvY2toYXNoT3B0aW9ucyA9IHt9XG4gICk6IFByb21pc2U8VHJhbnNhY3Rpb25CdWlsZGVyPiB7XG4gICAgcmV0dXJuIHRoaXMuc2V0QmxvY2toYXNoKGF3YWl0IGNvbnRleHQucnBjLmdldExhdGVzdEJsb2NraGFzaChvcHRpb25zKSk7XG4gIH1cblxuICBnZXRJbnN0cnVjdGlvbnMoKTogSW5zdHJ1Y3Rpb25bXSB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXMubWFwKChpdGVtKSA9PiBpdGVtLmluc3RydWN0aW9uKTtcbiAgfVxuXG4gIGdldFNpZ25lcnMoY29udGV4dDogUGljazxDb250ZXh0LCAncGF5ZXInPik6IFNpZ25lcltdIHtcbiAgICByZXR1cm4gdW5pcXVlU2lnbmVycyhbXG4gICAgICB0aGlzLmdldEZlZVBheWVyKGNvbnRleHQpLFxuICAgICAgLi4udGhpcy5pdGVtcy5mbGF0TWFwKChpdGVtKSA9PiBpdGVtLnNpZ25lcnMpLFxuICAgIF0pO1xuICB9XG5cbiAgZ2V0Qnl0ZXNDcmVhdGVkT25DaGFpbigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLnJlZHVjZSgoc3VtLCBpdGVtKSA9PiBzdW0gKyBpdGVtLmJ5dGVzQ3JlYXRlZE9uQ2hhaW4sIDApO1xuICB9XG5cbiAgYXN5bmMgZ2V0UmVudENyZWF0ZWRPbkNoYWluKFxuICAgIGNvbnRleHQ6IFBpY2s8Q29udGV4dCwgJ3JwYyc+XG4gICk6IFByb21pc2U8U29sQW1vdW50PiB7XG4gICAgcmV0dXJuIGNvbnRleHQucnBjLmdldFJlbnQodGhpcy5nZXRCeXRlc0NyZWF0ZWRPbkNoYWluKCksIHtcbiAgICAgIGluY2x1ZGVzSGVhZGVyQnl0ZXM6IHRydWUsXG4gICAgfSk7XG4gIH1cblxuICBnZXRUcmFuc2FjdGlvblNpemUoY29udGV4dDogUGljazxDb250ZXh0LCAndHJhbnNhY3Rpb25zJyB8ICdwYXllcic+KTogbnVtYmVyIHtcbiAgICByZXR1cm4gY29udGV4dC50cmFuc2FjdGlvbnMuc2VyaWFsaXplKFxuICAgICAgdGhpcy5zZXRCbG9ja2hhc2goJzExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExJykuYnVpbGQoY29udGV4dClcbiAgICApLmxlbmd0aDtcbiAgfVxuXG4gIG1pbmltdW1UcmFuc2FjdGlvbnNSZXF1aXJlZChcbiAgICBjb250ZXh0OiBQaWNrPENvbnRleHQsICd0cmFuc2FjdGlvbnMnIHwgJ3BheWVyJz5cbiAgKTogbnVtYmVyIHtcbiAgICByZXR1cm4gTWF0aC5jZWlsKHRoaXMuZ2V0VHJhbnNhY3Rpb25TaXplKGNvbnRleHQpIC8gVFJBTlNBQ1RJT05fU0laRV9MSU1JVCk7XG4gIH1cblxuICBmaXRzSW5PbmVUcmFuc2FjdGlvbihcbiAgICBjb250ZXh0OiBQaWNrPENvbnRleHQsICd0cmFuc2FjdGlvbnMnIHwgJ3BheWVyJz5cbiAgKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMubWluaW11bVRyYW5zYWN0aW9uc1JlcXVpcmVkKGNvbnRleHQpID09PSAxO1xuICB9XG5cbiAgYnVpbGQoY29udGV4dDogUGljazxDb250ZXh0LCAndHJhbnNhY3Rpb25zJyB8ICdwYXllcic+KTogVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IGJsb2NraGFzaCA9IHRoaXMuZ2V0QmxvY2toYXNoKCk7XG4gICAgaWYgKCFibG9ja2hhc2gpIHtcbiAgICAgIHRocm93IG5ldyBTZGtFcnJvcihcbiAgICAgICAgJ1NldHRpbmcgYSBibG9ja2hhc2ggaXMgcmVxdWlyZWQgdG8gYnVpbGQgYSB0cmFuc2FjdGlvbi4gJyArXG4gICAgICAgICAgJ1BsZWFzZSB1c2UgdGhlIGBzZXRCbG9ja2hhc2hgIG9yIGBzZXRMYXRlc3RCbG9ja2hhc2hgIG1ldGhvZHMuJ1xuICAgICAgKTtcbiAgICB9XG4gICAgY29uc3QgaW5wdXQ6IFRyYW5zYWN0aW9uSW5wdXQgPSB7XG4gICAgICB2ZXJzaW9uOiB0aGlzLm9wdGlvbnMudmVyc2lvbiA/PyAwLFxuICAgICAgcGF5ZXI6IHRoaXMuZ2V0RmVlUGF5ZXIoY29udGV4dCkucHVibGljS2V5LFxuICAgICAgaW5zdHJ1Y3Rpb25zOiB0aGlzLmdldEluc3RydWN0aW9ucygpLFxuICAgICAgYmxvY2toYXNoLFxuICAgIH07XG4gICAgaWYgKGlucHV0LnZlcnNpb24gPT09IDAgJiYgdGhpcy5vcHRpb25zLmFkZHJlc3NMb29rdXBUYWJsZXMpIHtcbiAgICAgIGlucHV0LmFkZHJlc3NMb29rdXBUYWJsZXMgPSB0aGlzLm9wdGlvbnMuYWRkcmVzc0xvb2t1cFRhYmxlcztcbiAgICB9XG4gICAgcmV0dXJuIGNvbnRleHQudHJhbnNhY3Rpb25zLmNyZWF0ZShpbnB1dCk7XG4gIH1cblxuICBhc3luYyBidWlsZFdpdGhMYXRlc3RCbG9ja2hhc2goXG4gICAgY29udGV4dDogUGljazxDb250ZXh0LCAndHJhbnNhY3Rpb25zJyB8ICdycGMnIHwgJ3BheWVyJz4sXG4gICAgb3B0aW9uczogUnBjR2V0TGF0ZXN0QmxvY2toYXNoT3B0aW9ucyA9IHt9XG4gICk6IFByb21pc2U8VHJhbnNhY3Rpb24+IHtcbiAgICBsZXQgYnVpbGRlcjogVHJhbnNhY3Rpb25CdWlsZGVyID0gdGhpcztcbiAgICBpZiAoIXRoaXMub3B0aW9ucy5ibG9ja2hhc2gpIHtcbiAgICAgIGJ1aWxkZXIgPSBhd2FpdCB0aGlzLnNldExhdGVzdEJsb2NraGFzaChjb250ZXh0LCBvcHRpb25zKTtcbiAgICB9XG4gICAgcmV0dXJuIGJ1aWxkZXIuYnVpbGQoY29udGV4dCk7XG4gIH1cblxuICBhc3luYyBidWlsZEFuZFNpZ24oXG4gICAgY29udGV4dDogUGljazxDb250ZXh0LCAndHJhbnNhY3Rpb25zJyB8ICdycGMnIHwgJ3BheWVyJz5cbiAgKTogUHJvbWlzZTxUcmFuc2FjdGlvbj4ge1xuICAgIHJldHVybiBzaWduVHJhbnNhY3Rpb24oXG4gICAgICBhd2FpdCB0aGlzLmJ1aWxkV2l0aExhdGVzdEJsb2NraGFzaChjb250ZXh0KSxcbiAgICAgIHRoaXMuZ2V0U2lnbmVycyhjb250ZXh0KVxuICAgICk7XG4gIH1cblxuICBhc3luYyBzZW5kKFxuICAgIGNvbnRleHQ6IFBpY2s8Q29udGV4dCwgJ3RyYW5zYWN0aW9ucycgfCAncnBjJyB8ICdwYXllcic+LFxuICAgIG9wdGlvbnM6IFJwY1NlbmRUcmFuc2FjdGlvbk9wdGlvbnMgPSB7fVxuICApOiBQcm9taXNlPFRyYW5zYWN0aW9uU2lnbmF0dXJlPiB7XG4gICAgY29uc3QgdHJhbnNhY3Rpb24gPSBhd2FpdCB0aGlzLmJ1aWxkQW5kU2lnbihjb250ZXh0KTtcbiAgICByZXR1cm4gY29udGV4dC5ycGMuc2VuZFRyYW5zYWN0aW9uKHRyYW5zYWN0aW9uLCBvcHRpb25zKTtcbiAgfVxuXG4gIGFzeW5jIGNvbmZpcm0oXG4gICAgY29udGV4dDogUGljazxDb250ZXh0LCAndHJhbnNhY3Rpb25zJyB8ICdycGMnIHwgJ3BheWVyJz4sXG4gICAgc2lnbmF0dXJlOiBUcmFuc2FjdGlvblNpZ25hdHVyZSxcbiAgICBvcHRpb25zOiBQYXJ0aWFsPFJwY0NvbmZpcm1UcmFuc2FjdGlvbk9wdGlvbnM+ID0ge31cbiAgKTogUHJvbWlzZTxScGNDb25maXJtVHJhbnNhY3Rpb25SZXN1bHQ+IHtcbiAgICBsZXQgYnVpbGRlcjogVHJhbnNhY3Rpb25CdWlsZGVyID0gdGhpcztcbiAgICBpZiAoIXRoaXMub3B0aW9ucy5ibG9ja2hhc2gpIHtcbiAgICAgIGJ1aWxkZXIgPSBhd2FpdCB0aGlzLnNldExhdGVzdEJsb2NraGFzaChjb250ZXh0KTtcbiAgICB9XG5cbiAgICBsZXQgc3RyYXRlZ3k6IFJwY0NvbmZpcm1UcmFuc2FjdGlvblN0cmF0ZWd5O1xuICAgIGlmIChvcHRpb25zLnN0cmF0ZWd5KSB7XG4gICAgICBzdHJhdGVneSA9IG9wdGlvbnMuc3RyYXRlZ3k7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGJsb2NraGFzaCA9XG4gICAgICAgIHR5cGVvZiBidWlsZGVyLm9wdGlvbnMuYmxvY2toYXNoID09PSAnb2JqZWN0J1xuICAgICAgICAgID8gYnVpbGRlci5vcHRpb25zLmJsb2NraGFzaFxuICAgICAgICAgIDogYXdhaXQgY29udGV4dC5ycGMuZ2V0TGF0ZXN0QmxvY2toYXNoKCk7XG4gICAgICBzdHJhdGVneSA9IG9wdGlvbnMuc3RyYXRlZ3kgPz8geyB0eXBlOiAnYmxvY2toYXNoJywgLi4uYmxvY2toYXNoIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIGNvbnRleHQucnBjLmNvbmZpcm1UcmFuc2FjdGlvbihzaWduYXR1cmUsIHsgLi4ub3B0aW9ucywgc3RyYXRlZ3kgfSk7XG4gIH1cblxuICBhc3luYyBzZW5kQW5kQ29uZmlybShcbiAgICBjb250ZXh0OiBQaWNrPENvbnRleHQsICd0cmFuc2FjdGlvbnMnIHwgJ3JwYycgfCAncGF5ZXInPixcbiAgICBvcHRpb25zOiBUcmFuc2FjdGlvbkJ1aWxkZXJTZW5kQW5kQ29uZmlybU9wdGlvbnMgPSB7fVxuICApOiBQcm9taXNlPHtcbiAgICBzaWduYXR1cmU6IFRyYW5zYWN0aW9uU2lnbmF0dXJlO1xuICAgIHJlc3VsdDogUnBjQ29uZmlybVRyYW5zYWN0aW9uUmVzdWx0O1xuICB9PiB7XG4gICAgbGV0IGJ1aWxkZXI6IFRyYW5zYWN0aW9uQnVpbGRlciA9IHRoaXM7XG4gICAgaWYgKCF0aGlzLm9wdGlvbnMuYmxvY2toYXNoKSB7XG4gICAgICBidWlsZGVyID0gYXdhaXQgdGhpcy5zZXRMYXRlc3RCbG9ja2hhc2goY29udGV4dCk7XG4gICAgfVxuICAgIGNvbnN0IHNpZ25hdHVyZSA9IGF3YWl0IGJ1aWxkZXIuc2VuZChjb250ZXh0LCBvcHRpb25zLnNlbmQpO1xuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGJ1aWxkZXIuY29uZmlybShjb250ZXh0LCBzaWduYXR1cmUsIG9wdGlvbnMuY29uZmlybSk7XG4gICAgcmV0dXJuIHsgc2lnbmF0dXJlLCByZXN1bHQgfTtcbiAgfVxuXG4gIHByb3RlY3RlZCBwYXJzZUl0ZW1zKFxuICAgIGlucHV0OiBUcmFuc2FjdGlvbkJ1aWxkZXJJdGVtc0lucHV0XG4gICk6IFdyYXBwZWRJbnN0cnVjdGlvbltdIHtcbiAgICByZXR1cm4gKEFycmF5LmlzQXJyYXkoaW5wdXQpID8gaW5wdXQgOiBbaW5wdXRdKS5mbGF0TWFwKChpdGVtKSA9PlxuICAgICAgJ2l0ZW1zJyBpbiBpdGVtID8gaXRlbS5pdGVtcyA6IFtpdGVtXVxuICAgICk7XG4gIH1cbn1cblxuLyoqXG4gKiBDcmVhdGVzIGEgbmV3IHRyYW5zYWN0aW9uIGJ1aWxkZXIuXG4gKiBAY2F0ZWdvcnkgVHJhbnNhY3Rpb25zXG4gKi9cbmV4cG9ydCBjb25zdCB0cmFuc2FjdGlvbkJ1aWxkZXIgPSAoaXRlbXM6IFdyYXBwZWRJbnN0cnVjdGlvbltdID0gW10pID0+XG4gIG5ldyBUcmFuc2FjdGlvbkJ1aWxkZXIoaXRlbXMpO1xuIiwgImltcG9ydCB0eXBlIHsgQ29udGV4dCB9IGZyb20gJy4vQ29udGV4dCc7XG5pbXBvcnQgdHlwZSB7XG4gIFJwY0NvbmZpcm1UcmFuc2FjdGlvblJlc3VsdCxcbiAgUnBjU2VuZFRyYW5zYWN0aW9uT3B0aW9ucyxcbn0gZnJvbSAnLi9ScGNJbnRlcmZhY2UnO1xuaW1wb3J0IHsgUnBjQ29uZmlybVRyYW5zYWN0aW9uU3RyYXRlZ3kgfSBmcm9tICcuL1JwY0ludGVyZmFjZSc7XG5pbXBvcnQgeyBzaWduQWxsVHJhbnNhY3Rpb25zIH0gZnJvbSAnLi9TaWduZXInO1xuaW1wb3J0IHR5cGUge1xuICBCbG9ja2hhc2hXaXRoRXhwaXJ5QmxvY2tIZWlnaHQsXG4gIFRyYW5zYWN0aW9uLFxuICBUcmFuc2FjdGlvblNpZ25hdHVyZSxcbn0gZnJvbSAnLi9UcmFuc2FjdGlvbic7XG5pbXBvcnQge1xuICBUcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIFRyYW5zYWN0aW9uQnVpbGRlclNlbmRBbmRDb25maXJtT3B0aW9ucyxcbn0gZnJvbSAnLi9UcmFuc2FjdGlvbkJ1aWxkZXInO1xuaW1wb3J0IHsgemlwTWFwIH0gZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCB0eXBlIFRyYW5zYWN0aW9uQnVpbGRlckdyb3VwT3B0aW9ucyA9IHtcbiAgLyoqIFdoZXRoZXIgdG8gcnVuIHRoZSBidWlsZGVycyBpbiBwYXJhbGxlbCBvciwgaWYgZmFsc2UsIHNlcXVlbnRpYWxseS4gKi9cbiAgcGFyYWxsZWw/OiBib29sZWFuO1xufTtcblxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uQnVpbGRlckdyb3VwIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcmVhZG9ubHkgYnVpbGRlcnM6IFRyYW5zYWN0aW9uQnVpbGRlcltdID0gW10sXG4gICAgcmVhZG9ubHkgb3B0aW9uczogVHJhbnNhY3Rpb25CdWlsZGVyR3JvdXBPcHRpb25zID0ge31cbiAgKSB7fVxuXG4gIHByZXBlbmQoXG4gICAgYnVpbGRlcjogVHJhbnNhY3Rpb25CdWlsZGVyIHwgVHJhbnNhY3Rpb25CdWlsZGVyW11cbiAgKTogVHJhbnNhY3Rpb25CdWlsZGVyR3JvdXAge1xuICAgIGNvbnN0IG5ld0J1aWxkZXJzID0gQXJyYXkuaXNBcnJheShidWlsZGVyKSA/IGJ1aWxkZXIgOiBbYnVpbGRlcl07XG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbkJ1aWxkZXJHcm91cChcbiAgICAgIFsuLi5uZXdCdWlsZGVycywgLi4udGhpcy5idWlsZGVyc10sXG4gICAgICB0aGlzLm9wdGlvbnNcbiAgICApO1xuICB9XG5cbiAgYXBwZW5kKFxuICAgIGJ1aWxkZXI6IFRyYW5zYWN0aW9uQnVpbGRlciB8IFRyYW5zYWN0aW9uQnVpbGRlcltdXG4gICk6IFRyYW5zYWN0aW9uQnVpbGRlckdyb3VwIHtcbiAgICBjb25zdCBuZXdCdWlsZGVycyA9IEFycmF5LmlzQXJyYXkoYnVpbGRlcikgPyBidWlsZGVyIDogW2J1aWxkZXJdO1xuICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb25CdWlsZGVyR3JvdXAoXG4gICAgICBbLi4ubmV3QnVpbGRlcnMsIC4uLnRoaXMuYnVpbGRlcnNdLFxuICAgICAgdGhpcy5vcHRpb25zXG4gICAgKTtcbiAgfVxuXG4gIGFkZChcbiAgICBidWlsZGVyOiBUcmFuc2FjdGlvbkJ1aWxkZXIgfCBUcmFuc2FjdGlvbkJ1aWxkZXJbXVxuICApOiBUcmFuc2FjdGlvbkJ1aWxkZXJHcm91cCB7XG4gICAgcmV0dXJuIHRoaXMuYXBwZW5kKGJ1aWxkZXIpO1xuICB9XG5cbiAgc2VxdWVudGlhbCgpOiBUcmFuc2FjdGlvbkJ1aWxkZXJHcm91cCB7XG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbkJ1aWxkZXJHcm91cCh0aGlzLmJ1aWxkZXJzLCB7XG4gICAgICAuLi50aGlzLm9wdGlvbnMsXG4gICAgICBwYXJhbGxlbDogZmFsc2UsXG4gICAgfSk7XG4gIH1cblxuICBwYXJhbGxlbCgpOiBUcmFuc2FjdGlvbkJ1aWxkZXJHcm91cCB7XG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbkJ1aWxkZXJHcm91cCh0aGlzLmJ1aWxkZXJzLCB7XG4gICAgICAuLi50aGlzLm9wdGlvbnMsXG4gICAgICBwYXJhbGxlbDogdHJ1ZSxcbiAgICB9KTtcbiAgfVxuXG4gIGlzUGFyYWxsZWwoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMub3B0aW9ucy5wYXJhbGxlbCA/PyBmYWxzZTtcbiAgfVxuXG4gIG1lcmdlKCk6IFRyYW5zYWN0aW9uQnVpbGRlciB7XG4gICAgaWYgKHRoaXMuYnVpbGRlcnMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uQnVpbGRlcigpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5idWlsZGVycy5yZWR1Y2UoXG4gICAgICAoYnVpbGRlciwgbmV4dCkgPT4gYnVpbGRlci5hZGQobmV4dCksXG4gICAgICB0aGlzLmJ1aWxkZXJzWzBdLmVtcHR5KClcbiAgICApO1xuICB9XG5cbiAgYnVpbGQoY29udGV4dDogUGljazxDb250ZXh0LCAndHJhbnNhY3Rpb25zJyB8ICdwYXllcic+KTogVHJhbnNhY3Rpb25bXSB7XG4gICAgcmV0dXJuIHRoaXMuYnVpbGRlcnMubWFwKChidWlsZGVyKSA9PiBidWlsZGVyLmJ1aWxkKGNvbnRleHQpKTtcbiAgfVxuXG4gIGFzeW5jIHNldExhdGVzdEJsb2NraGFzaChcbiAgICBjb250ZXh0OiBQaWNrPENvbnRleHQsICdycGMnPlxuICApOiBQcm9taXNlPFRyYW5zYWN0aW9uQnVpbGRlckdyb3VwPiB7XG4gICAgY29uc3QgaGFzQmxvY2toYXNobGVzc0J1aWxkZXIgPSB0aGlzLmJ1aWxkZXJzLnNvbWUoXG4gICAgICAoYnVpbGRlcikgPT4gIWJ1aWxkZXIub3B0aW9ucy5ibG9ja2hhc2hcbiAgICApO1xuICAgIGlmICghaGFzQmxvY2toYXNobGVzc0J1aWxkZXIpIHJldHVybiB0aGlzO1xuICAgIGNvbnN0IGJsb2NraGFzaCA9IGF3YWl0IGNvbnRleHQucnBjLmdldExhdGVzdEJsb2NraGFzaCgpO1xuICAgIHJldHVybiB0aGlzLm1hcCgoYnVpbGRlcikgPT5cbiAgICAgIGJ1aWxkZXIub3B0aW9ucy5ibG9ja2hhc2ggPyBidWlsZGVyIDogYnVpbGRlci5zZXRCbG9ja2hhc2goYmxvY2toYXNoKVxuICAgICk7XG4gIH1cblxuICBhc3luYyBidWlsZFdpdGhMYXRlc3RCbG9ja2hhc2goXG4gICAgY29udGV4dDogUGljazxDb250ZXh0LCAndHJhbnNhY3Rpb25zJyB8ICdycGMnIHwgJ3BheWVyJz5cbiAgKTogUHJvbWlzZTxUcmFuc2FjdGlvbltdPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLnNldExhdGVzdEJsb2NraGFzaChjb250ZXh0KSkuYnVpbGQoY29udGV4dCk7XG4gIH1cblxuICBhc3luYyBidWlsZEFuZFNpZ24oXG4gICAgY29udGV4dDogUGljazxDb250ZXh0LCAndHJhbnNhY3Rpb25zJyB8ICdycGMnIHwgJ3BheWVyJz5cbiAgKTogUHJvbWlzZTxUcmFuc2FjdGlvbltdPiB7XG4gICAgY29uc3QgdHJhbnNhY3Rpb25zID0gYXdhaXQgdGhpcy5idWlsZFdpdGhMYXRlc3RCbG9ja2hhc2goY29udGV4dCk7XG4gICAgY29uc3Qgc2lnbmVycyA9IHRoaXMuYnVpbGRlcnMubWFwKChidWlsZGVyKSA9PiBidWlsZGVyLmdldFNpZ25lcnMoY29udGV4dCkpO1xuICAgIHJldHVybiBzaWduQWxsVHJhbnNhY3Rpb25zKFxuICAgICAgemlwTWFwKHRyYW5zYWN0aW9ucywgc2lnbmVycywgKHRyYW5zYWN0aW9uLCB0eFNpZ25lcnMpID0+ICh7XG4gICAgICAgIHRyYW5zYWN0aW9uLFxuICAgICAgICBzaWduZXJzOiB0eFNpZ25lcnMgPz8gW10sXG4gICAgICB9KSlcbiAgICApO1xuICB9XG5cbiAgYXN5bmMgc2VuZChcbiAgICBjb250ZXh0OiBQaWNrPENvbnRleHQsICd0cmFuc2FjdGlvbnMnIHwgJ3JwYycgfCAncGF5ZXInPixcbiAgICBvcHRpb25zOiBScGNTZW5kVHJhbnNhY3Rpb25PcHRpb25zID0ge31cbiAgKTogUHJvbWlzZTxUcmFuc2FjdGlvblNpZ25hdHVyZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMucnVuQWxsKGF3YWl0IHRoaXMuYnVpbGRBbmRTaWduKGNvbnRleHQpLCBhc3luYyAodHgpID0+XG4gICAgICBjb250ZXh0LnJwYy5zZW5kVHJhbnNhY3Rpb24odHgsIG9wdGlvbnMpXG4gICAgKTtcbiAgfVxuXG4gIGFzeW5jIHNlbmRBbmRDb25maXJtKFxuICAgIGNvbnRleHQ6IFBpY2s8Q29udGV4dCwgJ3RyYW5zYWN0aW9ucycgfCAncnBjJyB8ICdwYXllcic+LFxuICAgIG9wdGlvbnM6IFRyYW5zYWN0aW9uQnVpbGRlclNlbmRBbmRDb25maXJtT3B0aW9ucyA9IHt9XG4gICk6IFByb21pc2U8XG4gICAgQXJyYXk8e1xuICAgICAgc2lnbmF0dXJlOiBUcmFuc2FjdGlvblNpZ25hdHVyZTtcbiAgICAgIHJlc3VsdDogUnBjQ29uZmlybVRyYW5zYWN0aW9uUmVzdWx0O1xuICAgIH0+XG4gID4ge1xuICAgIGNvbnN0IGJsb2NraGFzaFdpdGhFeHBpcnlCbG9ja0hlaWdodCA9IHRoaXMuYnVpbGRlcnMuZmluZChcbiAgICAgIChidWlsZGVyKSA9PiB0eXBlb2YgYnVpbGRlci5vcHRpb25zLmJsb2NraGFzaCA9PT0gJ29iamVjdCdcbiAgICApPy5vcHRpb25zLmJsb2NraGFzaCBhcyBCbG9ja2hhc2hXaXRoRXhwaXJ5QmxvY2tIZWlnaHQgfCB1bmRlZmluZWQ7XG5cbiAgICBsZXQgc3RyYXRlZ3k6IFJwY0NvbmZpcm1UcmFuc2FjdGlvblN0cmF0ZWd5O1xuICAgIGlmIChvcHRpb25zLmNvbmZpcm0/LnN0cmF0ZWd5KSB7XG4gICAgICBzdHJhdGVneSA9IG9wdGlvbnMuY29uZmlybS5zdHJhdGVneTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgYmxvY2toYXNoID1cbiAgICAgICAgYmxvY2toYXNoV2l0aEV4cGlyeUJsb2NrSGVpZ2h0ID8/XG4gICAgICAgIChhd2FpdCBjb250ZXh0LnJwYy5nZXRMYXRlc3RCbG9ja2hhc2goKSk7XG4gICAgICBzdHJhdGVneSA9IG9wdGlvbnMuY29uZmlybT8uc3RyYXRlZ3kgPz8ge1xuICAgICAgICB0eXBlOiAnYmxvY2toYXNoJyxcbiAgICAgICAgLi4uYmxvY2toYXNoLFxuICAgICAgfTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5ydW5BbGwoYXdhaXQgdGhpcy5idWlsZEFuZFNpZ24oY29udGV4dCksIGFzeW5jICh0eCkgPT4ge1xuICAgICAgY29uc3Qgc2lnbmF0dXJlID0gYXdhaXQgY29udGV4dC5ycGMuc2VuZFRyYW5zYWN0aW9uKHR4LCBvcHRpb25zLnNlbmQpO1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgY29udGV4dC5ycGMuY29uZmlybVRyYW5zYWN0aW9uKHNpZ25hdHVyZSwge1xuICAgICAgICAuLi5vcHRpb25zLmNvbmZpcm0sXG4gICAgICAgIHN0cmF0ZWd5LFxuICAgICAgfSk7XG4gICAgICByZXR1cm4geyBzaWduYXR1cmUsIHJlc3VsdCB9O1xuICAgIH0pO1xuICB9XG5cbiAgbWFwKFxuICAgIGZuOiAoXG4gICAgICBidWlsZGVyOiBUcmFuc2FjdGlvbkJ1aWxkZXIsXG4gICAgICBpbmRleDogbnVtYmVyLFxuICAgICAgYXJyYXk6IFRyYW5zYWN0aW9uQnVpbGRlcltdXG4gICAgKSA9PiBUcmFuc2FjdGlvbkJ1aWxkZXJcbiAgKTogVHJhbnNhY3Rpb25CdWlsZGVyR3JvdXAge1xuICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb25CdWlsZGVyR3JvdXAodGhpcy5idWlsZGVycy5tYXAoZm4pKTtcbiAgfVxuXG4gIGZpbHRlcihcbiAgICBmbjogUGFyYW1ldGVyczxBcnJheTxUcmFuc2FjdGlvbkJ1aWxkZXI+WydmaWx0ZXInXT5bMF1cbiAgKTogVHJhbnNhY3Rpb25CdWlsZGVyR3JvdXAge1xuICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb25CdWlsZGVyR3JvdXAodGhpcy5idWlsZGVycy5maWx0ZXIoZm4pKTtcbiAgfVxuXG4gIGFzeW5jIHJ1bkFsbDxULCBVPihcbiAgICBhcnJheTogVFtdLFxuICAgIGZuOiAoaXRlbTogVCwgaW5kZXg6IG51bWJlciwgYXJyYXk6IFRbXSkgPT4gUHJvbWlzZTxVPlxuICApOiBQcm9taXNlPFVbXT4ge1xuICAgIGlmICh0aGlzLmlzUGFyYWxsZWwoKSkge1xuICAgICAgcmV0dXJuIFByb21pc2UuYWxsKGFycmF5Lm1hcChmbikpO1xuICAgIH1cbiAgICByZXR1cm4gYXJyYXkucmVkdWNlKFxuICAgICAgYXN5bmMgKHByb21pc2UsIC4uLmFyZ3MpID0+IFsuLi4oYXdhaXQgcHJvbWlzZSksIGF3YWl0IGZuKC4uLmFyZ3MpXSxcbiAgICAgIFByb21pc2UucmVzb2x2ZShbXSBhcyBVW10pXG4gICAgKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNhY3Rpb25CdWlsZGVyR3JvdXAoXG4gIGJ1aWxkZXJzOiBUcmFuc2FjdGlvbkJ1aWxkZXJbXSA9IFtdXG4pOiBUcmFuc2FjdGlvbkJ1aWxkZXJHcm91cCB7XG4gIHJldHVybiBuZXcgVHJhbnNhY3Rpb25CdWlsZGVyR3JvdXAoYnVpbGRlcnMpO1xufVxuIiwgImltcG9ydCB7IENvbnRleHQsIGNyZWF0ZU51bGxDb250ZXh0IH0gZnJvbSAnLi9Db250ZXh0JztcbmltcG9ydCB0eXBlIHsgVW1pUGx1Z2luIH0gZnJvbSAnLi9VbWlQbHVnaW4nO1xuXG4vKipcbiAqIEEgVW1pIGNvbnRleHQgb2JqZWN0IHRoYXQgdXNlcyBhbGwgb2YgdGhlIGludGVyZmFjZXMgcHJvdmlkZWQgYnkgVW1pLlxuICogT25jZSBjcmVhdGVkLCB0aGUgZW5kLXVzZXIgY2FuIHBhc3MgdGhpcyBvYmplY3QgdG8gYW55IGZ1bmN0aW9uIHRoYXRcbiAqIHJlcXVpcmVzIHNvbWUgb3IgYWxsIG9mIHRoZXNlIGludGVyZmFjZXMuXG4gKlxuICogSXQgaW1wbGVtZW50cyB0aGUge0BsaW5rIENvbnRleHR9IGludGVyZmFjZSBhbmQgYWRkcyBhIGB1c2VgIG1ldGhvZFxuICogdGhhdCBhbGxvd3MgcGx1Z2lucyB0byBiZSBpbnN0YWxsZWQuXG4gKlxuICogQGNhdGVnb3J5IENvbnRleHQgYW5kIEludGVyZmFjZXNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBVbWkgZXh0ZW5kcyBDb250ZXh0IHtcbiAgLyoqIEluc3RhbGxzIGEgVW1pIHBsdWdpbi4gKi9cbiAgdXNlKHBsdWdpbjogVW1pUGx1Z2luKTogVW1pO1xufVxuXG4vKipcbiAqIENyZWF0ZXMgYSBVbWkgaW5zdGFuY2UgdXNpbmcgb25seSBOdWxsIGltcGxlbWVudGF0aW9ucyBvZiB0aGUgaW50ZXJmYWNlcy5cbiAqIFRoZSBgdXNlYCBtZXRob2QgY2FuIHRoZW4gYmUgdXNlZCB0byBpbnN0YWxsIHBsdWdpbnMgYW5kIHJlcGxhY2UgdGhlXG4gKiBOdWxsIGltcGxlbWVudGF0aW9ucyB3aXRoIHJlYWwgaW1wbGVtZW50YXRpb25zLlxuICpcbiAqIEBjYXRlZ29yeSBDb250ZXh0IGFuZCBJbnRlcmZhY2VzXG4gKi9cbmV4cG9ydCBjb25zdCBjcmVhdGVVbWkgPSAoKTogVW1pID0+ICh7XG4gIC4uLmNyZWF0ZU51bGxDb250ZXh0KCksXG4gIHVzZShwbHVnaW46IFVtaVBsdWdpbikge1xuICAgIHBsdWdpbi5pbnN0YWxsKHRoaXMpO1xuICAgIHJldHVybiB0aGlzO1xuICB9LFxufSk7XG4iLCAiaW1wb3J0IHsgU2RrRXJyb3IgfSBmcm9tICcuL1Nka0Vycm9yJztcblxuLyoqIEBjYXRlZ29yeSBFcnJvcnMgKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkQmFzZVN0cmluZ0Vycm9yIGV4dGVuZHMgU2RrRXJyb3Ige1xuICByZWFkb25seSBuYW1lOiBzdHJpbmcgPSAnSW52YWxpZEJhc2VTdHJpbmdFcnJvcic7XG5cbiAgY29uc3RydWN0b3IodmFsdWU6IHN0cmluZywgYmFzZTogbnVtYmVyLCBjYXVzZT86IEVycm9yKSB7XG4gICAgY29uc3QgbWVzc2FnZSA9IGBFeHBlY3RlZCBhIHN0cmluZyBvZiBiYXNlICR7YmFzZX0sIGdvdCBbJHt2YWx1ZX1dLmA7XG4gICAgc3VwZXIobWVzc2FnZSwgY2F1c2UpO1xuICB9XG59XG4iLCAiaW1wb3J0IHR5cGUgeyBQcm9ncmFtIH0gZnJvbSAnLi4vUHJvZ3JhbSc7XG5pbXBvcnQgeyBVbWlFcnJvciB9IGZyb20gJy4vVW1pRXJyb3InO1xuXG4vKiogQGNhdGVnb3J5IEVycm9ycyAqL1xuZXhwb3J0IHR5cGUgVW5kZXJseWluZ1Byb2dyYW1FcnJvciA9IEVycm9yICYgeyBjb2RlPzogbnVtYmVyOyBsb2dzPzogc3RyaW5nW10gfTtcblxuLyoqIEBjYXRlZ29yeSBFcnJvcnMgKi9cbmV4cG9ydCBjbGFzcyBQcm9ncmFtRXJyb3IgZXh0ZW5kcyBVbWlFcnJvciB7XG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZyA9ICdQcm9ncmFtRXJyb3InO1xuXG4gIHJlYWRvbmx5IHByb2dyYW06IFByb2dyYW07XG5cbiAgcmVhZG9ubHkgbG9ncz86IHN0cmluZ1tdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIG1lc3NhZ2U6IHN0cmluZyxcbiAgICBwcm9ncmFtOiBQcm9ncmFtLFxuICAgIGNhdXNlPzogVW5kZXJseWluZ1Byb2dyYW1FcnJvclxuICApIHtcbiAgICBzdXBlcihtZXNzYWdlLCAncHJvZ3JhbScsIGAke3Byb2dyYW0ubmFtZX0gWyR7cHJvZ3JhbS5wdWJsaWNLZXl9XWAsIGNhdXNlKTtcbiAgICB0aGlzLnByb2dyYW0gPSBwcm9ncmFtO1xuICAgIHRoaXMubG9ncyA9IGNhdXNlPy5sb2dzO1xuICAgIGlmICh0aGlzLmxvZ3MpIHtcbiAgICAgIHRoaXMubWVzc2FnZSArPSBgXFxuUHJvZ3JhbSBMb2dzOlxcbiR7dGhpcy5sb2dzXG4gICAgICAgIC5tYXAoKGxvZykgPT4gYHwgJHtsb2d9YClcbiAgICAgICAgLmpvaW4oJ1xcbicpfVxcbmA7XG4gICAgfVxuICB9XG59XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgJ19fZXNNb2R1bGUnLCB7IHZhbHVlOiB0cnVlIH0pO1xuXG52YXIgdW1pT3B0aW9ucyA9IHJlcXVpcmUoJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1vcHRpb25zJyk7XG52YXIgdW1pUHVibGljS2V5cyA9IHJlcXVpcmUoJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1wdWJsaWMta2V5cycpO1xudmFyIHNlcmlhbGl6ZXJzSW50ZXJuYWwgPSByZXF1aXJlKCcuL3NlcmlhbGl6ZXJzSW50ZXJuYWwuY2pzJyk7XG52YXIgQWNjb3VudCA9IHJlcXVpcmUoJy4vQWNjb3VudC5janMnKTtcbnZhciBBbW91bnQgPSByZXF1aXJlKCcuL0Ftb3VudC5janMnKTtcbnZhciBCaWdJbnQgPSByZXF1aXJlKCcuL0JpZ0ludC5janMnKTtcbnZhciBDbHVzdGVyID0gcmVxdWlyZSgnLi9DbHVzdGVyLmNqcycpO1xudmFyIENvbnRleHQgPSByZXF1aXJlKCcuL0NvbnRleHQuY2pzJyk7XG52YXIgRGF0ZVRpbWUgPSByZXF1aXJlKCcuL0RhdGVUaW1lLmNqcycpO1xudmFyIERvd25sb2FkZXJJbnRlcmZhY2UgPSByZXF1aXJlKCcuL0Rvd25sb2FkZXJJbnRlcmZhY2UuY2pzJyk7XG52YXIgRWRkc2FJbnRlcmZhY2UgPSByZXF1aXJlKCcuL0VkZHNhSW50ZXJmYWNlLmNqcycpO1xudmFyIEdlbmVyaWNGaWxlID0gcmVxdWlyZSgnLi9HZW5lcmljRmlsZS5janMnKTtcbnZhciBHcGFCdWlsZGVyID0gcmVxdWlyZSgnLi9HcGFCdWlsZGVyLmNqcycpO1xudmFyIEh0dHBJbnRlcmZhY2UgPSByZXF1aXJlKCcuL0h0dHBJbnRlcmZhY2UuY2pzJyk7XG52YXIgSHR0cFJlcXVlc3QgPSByZXF1aXJlKCcuL0h0dHBSZXF1ZXN0LmNqcycpO1xudmFyIEtleXBhaXIgPSByZXF1aXJlKCcuL0tleXBhaXIuY2pzJyk7XG52YXIgUHJvZ3JhbSA9IHJlcXVpcmUoJy4vUHJvZ3JhbS5janMnKTtcbnZhciBQcm9ncmFtUmVwb3NpdG9yeUludGVyZmFjZSA9IHJlcXVpcmUoJy4vUHJvZ3JhbVJlcG9zaXRvcnlJbnRlcmZhY2UuY2pzJyk7XG52YXIgUnBjSW50ZXJmYWNlID0gcmVxdWlyZSgnLi9ScGNJbnRlcmZhY2UuY2pzJyk7XG52YXIgU2VyaWFsaXplckludGVyZmFjZSA9IHJlcXVpcmUoJy4vU2VyaWFsaXplckludGVyZmFjZS5janMnKTtcbnZhciBTaWduZXIgPSByZXF1aXJlKCcuL1NpZ25lci5janMnKTtcbnZhciBTaWduZXJQbHVnaW5zID0gcmVxdWlyZSgnLi9TaWduZXJQbHVnaW5zLmNqcycpO1xudmFyIFRyYW5zYWN0aW9uID0gcmVxdWlyZSgnLi9UcmFuc2FjdGlvbi5janMnKTtcbnZhciBUcmFuc2FjdGlvbkJ1aWxkZXIgPSByZXF1aXJlKCcuL1RyYW5zYWN0aW9uQnVpbGRlci5janMnKTtcbnZhciBUcmFuc2FjdGlvbkJ1aWxkZXJHcm91cCA9IHJlcXVpcmUoJy4vVHJhbnNhY3Rpb25CdWlsZGVyR3JvdXAuY2pzJyk7XG52YXIgVHJhbnNhY3Rpb25GYWN0b3J5SW50ZXJmYWNlID0gcmVxdWlyZSgnLi9UcmFuc2FjdGlvbkZhY3RvcnlJbnRlcmZhY2UuY2pzJyk7XG52YXIgVW1pID0gcmVxdWlyZSgnLi9VbWkuY2pzJyk7XG52YXIgVXBsb2FkZXJJbnRlcmZhY2UgPSByZXF1aXJlKCcuL1VwbG9hZGVySW50ZXJmYWNlLmNqcycpO1xudmFyIEFjY291bnROb3RGb3VuZEVycm9yID0gcmVxdWlyZSgnLi9lcnJvcnMvQWNjb3VudE5vdEZvdW5kRXJyb3IuY2pzJyk7XG52YXIgQW1vdW50TWlzbWF0Y2hFcnJvciA9IHJlcXVpcmUoJy4vZXJyb3JzL0Ftb3VudE1pc21hdGNoRXJyb3IuY2pzJyk7XG52YXIgSW50ZXJmYWNlSW1wbGVtZW50YXRpb25NaXNzaW5nRXJyb3IgPSByZXF1aXJlKCcuL2Vycm9ycy9JbnRlcmZhY2VJbXBsZW1lbnRhdGlvbk1pc3NpbmdFcnJvci5janMnKTtcbnZhciBJbnZhbGlkQmFzZVN0cmluZ0Vycm9yID0gcmVxdWlyZSgnLi9lcnJvcnMvSW52YWxpZEJhc2VTdHJpbmdFcnJvci5janMnKTtcbnZhciBQcm9ncmFtRXJyb3IgPSByZXF1aXJlKCcuL2Vycm9ycy9Qcm9ncmFtRXJyb3IuY2pzJyk7XG52YXIgU2RrRXJyb3IgPSByZXF1aXJlKCcuL2Vycm9ycy9TZGtFcnJvci5janMnKTtcbnZhciBVbWlFcnJvciA9IHJlcXVpcmUoJy4vZXJyb3JzL1VtaUVycm9yLmNqcycpO1xudmFyIFVuZXhwZWN0ZWRBY2NvdW50RXJyb3IgPSByZXF1aXJlKCcuL2Vycm9ycy9VbmV4cGVjdGVkQWNjb3VudEVycm9yLmNqcycpO1xudmFyIFVuZXhwZWN0ZWRBbW91bnRFcnJvciA9IHJlcXVpcmUoJy4vZXJyb3JzL1VuZXhwZWN0ZWRBbW91bnRFcnJvci5janMnKTtcbnZhciBhcnJheXMgPSByZXF1aXJlKCcuL3V0aWxzL2FycmF5cy5janMnKTtcbnZhciByYW5kb21TdHJpbmdzID0gcmVxdWlyZSgnLi91dGlscy9yYW5kb21TdHJpbmdzLmNqcycpO1xuXG5cblxuZXhwb3J0cy5FbmRpYW4gPSBzZXJpYWxpemVyc0ludGVybmFsLkVuZGlhbjtcbmV4cG9ydHMuYmFzZTEwID0gc2VyaWFsaXplcnNJbnRlcm5hbC5iYXNlMTA7XG5leHBvcnRzLmJhc2UxNiA9IHNlcmlhbGl6ZXJzSW50ZXJuYWwuYmFzZTE2O1xuZXhwb3J0cy5iYXNlNTggPSBzZXJpYWxpemVyc0ludGVybmFsLmJhc2U1ODtcbmV4cG9ydHMuYmFzZTY0ID0gc2VyaWFsaXplcnNJbnRlcm5hbC5iYXNlNjQ7XG5leHBvcnRzLmJhc2VYID0gc2VyaWFsaXplcnNJbnRlcm5hbC5iYXNlWDtcbmV4cG9ydHMuYml0QXJyYXkgPSBzZXJpYWxpemVyc0ludGVybmFsLmJpdEFycmF5O1xuZXhwb3J0cy5maXhCeXRlcyA9IHNlcmlhbGl6ZXJzSW50ZXJuYWwuZml4Qnl0ZXM7XG5leHBvcnRzLmZpeFNlcmlhbGl6ZXIgPSBzZXJpYWxpemVyc0ludGVybmFsLmZpeFNlcmlhbGl6ZXI7XG5leHBvcnRzLm1hcFNlcmlhbGl6ZXIgPSBzZXJpYWxpemVyc0ludGVybmFsLm1hcFNlcmlhbGl6ZXI7XG5leHBvcnRzLm1lcmdlQnl0ZXMgPSBzZXJpYWxpemVyc0ludGVybmFsLm1lcmdlQnl0ZXM7XG5leHBvcnRzLnBhZEJ5dGVzID0gc2VyaWFsaXplcnNJbnRlcm5hbC5wYWRCeXRlcztcbmV4cG9ydHMucGFkTnVsbENoYXJhY3RlcnMgPSBzZXJpYWxpemVyc0ludGVybmFsLnBhZE51bGxDaGFyYWN0ZXJzO1xuZXhwb3J0cy5yZW1vdmVOdWxsQ2hhcmFjdGVycyA9IHNlcmlhbGl6ZXJzSW50ZXJuYWwucmVtb3ZlTnVsbENoYXJhY3RlcnM7XG5leHBvcnRzLnJldmVyc2VTZXJpYWxpemVyID0gc2VyaWFsaXplcnNJbnRlcm5hbC5yZXZlcnNlU2VyaWFsaXplcjtcbmV4cG9ydHMudXRmOCA9IHNlcmlhbGl6ZXJzSW50ZXJuYWwudXRmODtcbmV4cG9ydHMuQUNDT1VOVF9IRUFERVJfU0laRSA9IEFjY291bnQuQUNDT1VOVF9IRUFERVJfU0laRTtcbmV4cG9ydHMuYXNzZXJ0QWNjb3VudEV4aXN0cyA9IEFjY291bnQuYXNzZXJ0QWNjb3VudEV4aXN0cztcbmV4cG9ydHMuZGVzZXJpYWxpemVBY2NvdW50ID0gQWNjb3VudC5kZXNlcmlhbGl6ZUFjY291bnQ7XG5leHBvcnRzLmFic29sdXRlQW1vdW50ID0gQW1vdW50LmFic29sdXRlQW1vdW50O1xuZXhwb3J0cy5hZGRBbW91bnRzID0gQW1vdW50LmFkZEFtb3VudHM7XG5leHBvcnRzLmFtb3VudFRvTnVtYmVyID0gQW1vdW50LmFtb3VudFRvTnVtYmVyO1xuZXhwb3J0cy5hbW91bnRUb1N0cmluZyA9IEFtb3VudC5hbW91bnRUb1N0cmluZztcbmV4cG9ydHMuYXNzZXJ0QW1vdW50ID0gQW1vdW50LmFzc2VydEFtb3VudDtcbmV4cG9ydHMuYXNzZXJ0U2FtZUFtb3VudHMgPSBBbW91bnQuYXNzZXJ0U2FtZUFtb3VudHM7XG5leHBvcnRzLmFzc2VydFNvbEFtb3VudCA9IEFtb3VudC5hc3NlcnRTb2xBbW91bnQ7XG5leHBvcnRzLmNvbXBhcmVBbW91bnRzID0gQW1vdW50LmNvbXBhcmVBbW91bnRzO1xuZXhwb3J0cy5jcmVhdGVBbW91bnQgPSBBbW91bnQuY3JlYXRlQW1vdW50O1xuZXhwb3J0cy5jcmVhdGVBbW91bnRGcm9tRGVjaW1hbHMgPSBBbW91bnQuY3JlYXRlQW1vdW50RnJvbURlY2ltYWxzO1xuZXhwb3J0cy5kaXNwbGF5QW1vdW50ID0gQW1vdW50LmRpc3BsYXlBbW91bnQ7XG5leHBvcnRzLmRpdmlkZUFtb3VudCA9IEFtb3VudC5kaXZpZGVBbW91bnQ7XG5leHBvcnRzLmlzQW1vdW50ID0gQW1vdW50LmlzQW1vdW50O1xuZXhwb3J0cy5pc0VxdWFsVG9BbW91bnQgPSBBbW91bnQuaXNFcXVhbFRvQW1vdW50O1xuZXhwb3J0cy5pc0dyZWF0ZXJUaGFuQW1vdW50ID0gQW1vdW50LmlzR3JlYXRlclRoYW5BbW91bnQ7XG5leHBvcnRzLmlzR3JlYXRlclRoYW5PckVxdWFsVG9BbW91bnQgPSBBbW91bnQuaXNHcmVhdGVyVGhhbk9yRXF1YWxUb0Ftb3VudDtcbmV4cG9ydHMuaXNMZXNzVGhhbkFtb3VudCA9IEFtb3VudC5pc0xlc3NUaGFuQW1vdW50O1xuZXhwb3J0cy5pc0xlc3NUaGFuT3JFcXVhbFRvQW1vdW50ID0gQW1vdW50LmlzTGVzc1RoYW5PckVxdWFsVG9BbW91bnQ7XG5leHBvcnRzLmlzTmVnYXRpdmVBbW91bnQgPSBBbW91bnQuaXNOZWdhdGl2ZUFtb3VudDtcbmV4cG9ydHMuaXNQb3NpdGl2ZUFtb3VudCA9IEFtb3VudC5pc1Bvc2l0aXZlQW1vdW50O1xuZXhwb3J0cy5pc1NvbEFtb3VudCA9IEFtb3VudC5pc1NvbEFtb3VudDtcbmV4cG9ydHMuaXNaZXJvQW1vdW50ID0gQW1vdW50LmlzWmVyb0Ftb3VudDtcbmV4cG9ydHMubGFtcG9ydHMgPSBBbW91bnQubGFtcG9ydHM7XG5leHBvcnRzLm1hcEFtb3VudFNlcmlhbGl6ZXIgPSBBbW91bnQubWFwQW1vdW50U2VyaWFsaXplcjtcbmV4cG9ydHMubXVsdGlwbHlBbW91bnQgPSBBbW91bnQubXVsdGlwbHlBbW91bnQ7XG5leHBvcnRzLnBlcmNlbnRBbW91bnQgPSBBbW91bnQucGVyY2VudEFtb3VudDtcbmV4cG9ydHMuc2FtZUFtb3VudHMgPSBBbW91bnQuc2FtZUFtb3VudHM7XG5leHBvcnRzLnNvbCA9IEFtb3VudC5zb2w7XG5leHBvcnRzLnN1YnRyYWN0QW1vdW50cyA9IEFtb3VudC5zdWJ0cmFjdEFtb3VudHM7XG5leHBvcnRzLnRva2VuQW1vdW50ID0gQW1vdW50LnRva2VuQW1vdW50O1xuZXhwb3J0cy51c2QgPSBBbW91bnQudXNkO1xuZXhwb3J0cy5jcmVhdGVCaWdJbnQgPSBCaWdJbnQuY3JlYXRlQmlnSW50O1xuZXhwb3J0cy5yZXNvbHZlQ2x1c3RlckZyb21FbmRwb2ludCA9IENsdXN0ZXIucmVzb2x2ZUNsdXN0ZXJGcm9tRW5kcG9pbnQ7XG5leHBvcnRzLmNyZWF0ZU51bGxDb250ZXh0ID0gQ29udGV4dC5jcmVhdGVOdWxsQ29udGV4dDtcbmV4cG9ydHMuZGF0ZVRpbWUgPSBEYXRlVGltZS5kYXRlVGltZTtcbmV4cG9ydHMuZm9ybWF0RGF0ZVRpbWUgPSBEYXRlVGltZS5mb3JtYXREYXRlVGltZTtcbmV4cG9ydHMubWFwRGF0ZVRpbWVTZXJpYWxpemVyID0gRGF0ZVRpbWUubWFwRGF0ZVRpbWVTZXJpYWxpemVyO1xuZXhwb3J0cy5ub3cgPSBEYXRlVGltZS5ub3c7XG5leHBvcnRzLmNyZWF0ZU51bGxEb3dubG9hZGVyID0gRG93bmxvYWRlckludGVyZmFjZS5jcmVhdGVOdWxsRG93bmxvYWRlcjtcbmV4cG9ydHMuY3JlYXRlTnVsbEVkZHNhID0gRWRkc2FJbnRlcmZhY2UuY3JlYXRlTnVsbEVkZHNhO1xuZXhwb3J0cy5jcmVhdGVCcm93c2VyRmlsZUZyb21HZW5lcmljRmlsZSA9IEdlbmVyaWNGaWxlLmNyZWF0ZUJyb3dzZXJGaWxlRnJvbUdlbmVyaWNGaWxlO1xuZXhwb3J0cy5jcmVhdGVHZW5lcmljRmlsZSA9IEdlbmVyaWNGaWxlLmNyZWF0ZUdlbmVyaWNGaWxlO1xuZXhwb3J0cy5jcmVhdGVHZW5lcmljRmlsZUZyb21Ccm93c2VyRmlsZSA9IEdlbmVyaWNGaWxlLmNyZWF0ZUdlbmVyaWNGaWxlRnJvbUJyb3dzZXJGaWxlO1xuZXhwb3J0cy5jcmVhdGVHZW5lcmljRmlsZUZyb21Kc29uID0gR2VuZXJpY0ZpbGUuY3JlYXRlR2VuZXJpY0ZpbGVGcm9tSnNvbjtcbmV4cG9ydHMuZ2V0Qnl0ZXNGcm9tR2VuZXJpY0ZpbGVzID0gR2VuZXJpY0ZpbGUuZ2V0Qnl0ZXNGcm9tR2VuZXJpY0ZpbGVzO1xuZXhwb3J0cy5pc0dlbmVyaWNGaWxlID0gR2VuZXJpY0ZpbGUuaXNHZW5lcmljRmlsZTtcbmV4cG9ydHMucGFyc2VKc29uRnJvbUdlbmVyaWNGaWxlID0gR2VuZXJpY0ZpbGUucGFyc2VKc29uRnJvbUdlbmVyaWNGaWxlO1xuZXhwb3J0cy5HcGFCdWlsZGVyID0gR3BhQnVpbGRlci5HcGFCdWlsZGVyO1xuZXhwb3J0cy5ncGFCdWlsZGVyID0gR3BhQnVpbGRlci5ncGFCdWlsZGVyO1xuZXhwb3J0cy5jcmVhdGVOdWxsSHR0cCA9IEh0dHBJbnRlcmZhY2UuY3JlYXRlTnVsbEh0dHA7XG5leHBvcnRzLkh0dHBSZXF1ZXN0QnVpbGRlciA9IEh0dHBSZXF1ZXN0Lkh0dHBSZXF1ZXN0QnVpbGRlcjtcbmV4cG9ydHMucmVxdWVzdCA9IEh0dHBSZXF1ZXN0LnJlcXVlc3Q7XG5leHBvcnRzLmNyZWF0ZVNpZ25lckZyb21LZXlwYWlyID0gS2V5cGFpci5jcmVhdGVTaWduZXJGcm9tS2V5cGFpcjtcbmV4cG9ydHMuZ2VuZXJhdGVTaWduZXIgPSBLZXlwYWlyLmdlbmVyYXRlU2lnbmVyO1xuZXhwb3J0cy5pc0tleXBhaXJTaWduZXIgPSBLZXlwYWlyLmlzS2V5cGFpclNpZ25lcjtcbmV4cG9ydHMuaXNFcnJvcldpdGhMb2dzID0gUHJvZ3JhbS5pc0Vycm9yV2l0aExvZ3M7XG5leHBvcnRzLmNyZWF0ZU51bGxQcm9ncmFtUmVwb3NpdG9yeSA9IFByb2dyYW1SZXBvc2l0b3J5SW50ZXJmYWNlLmNyZWF0ZU51bGxQcm9ncmFtUmVwb3NpdG9yeTtcbmV4cG9ydHMuY3JlYXRlTnVsbFJwYyA9IFJwY0ludGVyZmFjZS5jcmVhdGVOdWxsUnBjO1xuZXhwb3J0cy5jcmVhdGVOdWxsU2VyaWFsaXplciA9IFNlcmlhbGl6ZXJJbnRlcmZhY2UuY3JlYXRlTnVsbFNlcmlhbGl6ZXI7XG5leHBvcnRzLmNyZWF0ZU5vb3BTaWduZXIgPSBTaWduZXIuY3JlYXRlTm9vcFNpZ25lcjtcbmV4cG9ydHMuY3JlYXRlTnVsbFNpZ25lciA9IFNpZ25lci5jcmVhdGVOdWxsU2lnbmVyO1xuZXhwb3J0cy5pc1NpZ25lciA9IFNpZ25lci5pc1NpZ25lcjtcbmV4cG9ydHMuc2lnbkFsbFRyYW5zYWN0aW9ucyA9IFNpZ25lci5zaWduQWxsVHJhbnNhY3Rpb25zO1xuZXhwb3J0cy5zaWduVHJhbnNhY3Rpb24gPSBTaWduZXIuc2lnblRyYW5zYWN0aW9uO1xuZXhwb3J0cy51bmlxdWVTaWduZXJzID0gU2lnbmVyLnVuaXF1ZVNpZ25lcnM7XG5leHBvcnRzLmdlbmVyYXRlZFNpZ25lcklkZW50aXR5ID0gU2lnbmVyUGx1Z2lucy5nZW5lcmF0ZWRTaWduZXJJZGVudGl0eTtcbmV4cG9ydHMuZ2VuZXJhdGVkU2lnbmVyUGF5ZXIgPSBTaWduZXJQbHVnaW5zLmdlbmVyYXRlZFNpZ25lclBheWVyO1xuZXhwb3J0cy5rZXlwYWlySWRlbnRpdHkgPSBTaWduZXJQbHVnaW5zLmtleXBhaXJJZGVudGl0eTtcbmV4cG9ydHMua2V5cGFpclBheWVyID0gU2lnbmVyUGx1Z2lucy5rZXlwYWlyUGF5ZXI7XG5leHBvcnRzLnNpZ25lcklkZW50aXR5ID0gU2lnbmVyUGx1Z2lucy5zaWduZXJJZGVudGl0eTtcbmV4cG9ydHMuc2lnbmVyUGF5ZXIgPSBTaWduZXJQbHVnaW5zLnNpZ25lclBheWVyO1xuZXhwb3J0cy5UUkFOU0FDVElPTl9TSVpFX0xJTUlUID0gVHJhbnNhY3Rpb24uVFJBTlNBQ1RJT05fU0laRV9MSU1JVDtcbmV4cG9ydHMuYWRkVHJhbnNhY3Rpb25TaWduYXR1cmUgPSBUcmFuc2FjdGlvbi5hZGRUcmFuc2FjdGlvblNpZ25hdHVyZTtcbmV4cG9ydHMuVHJhbnNhY3Rpb25CdWlsZGVyID0gVHJhbnNhY3Rpb25CdWlsZGVyLlRyYW5zYWN0aW9uQnVpbGRlcjtcbmV4cG9ydHMudHJhbnNhY3Rpb25CdWlsZGVyID0gVHJhbnNhY3Rpb25CdWlsZGVyLnRyYW5zYWN0aW9uQnVpbGRlcjtcbmV4cG9ydHMuVHJhbnNhY3Rpb25CdWlsZGVyR3JvdXAgPSBUcmFuc2FjdGlvbkJ1aWxkZXJHcm91cC5UcmFuc2FjdGlvbkJ1aWxkZXJHcm91cDtcbmV4cG9ydHMudHJhbnNhY3Rpb25CdWlsZGVyR3JvdXAgPSBUcmFuc2FjdGlvbkJ1aWxkZXJHcm91cC50cmFuc2FjdGlvbkJ1aWxkZXJHcm91cDtcbmV4cG9ydHMuY3JlYXRlTnVsbFRyYW5zYWN0aW9uRmFjdG9yeSA9IFRyYW5zYWN0aW9uRmFjdG9yeUludGVyZmFjZS5jcmVhdGVOdWxsVHJhbnNhY3Rpb25GYWN0b3J5O1xuZXhwb3J0cy5jcmVhdGVVbWkgPSBVbWkuY3JlYXRlVW1pO1xuZXhwb3J0cy5jcmVhdGVOdWxsVXBsb2FkZXIgPSBVcGxvYWRlckludGVyZmFjZS5jcmVhdGVOdWxsVXBsb2FkZXI7XG5leHBvcnRzLkFjY291bnROb3RGb3VuZEVycm9yID0gQWNjb3VudE5vdEZvdW5kRXJyb3IuQWNjb3VudE5vdEZvdW5kRXJyb3I7XG5leHBvcnRzLkFtb3VudE1pc21hdGNoRXJyb3IgPSBBbW91bnRNaXNtYXRjaEVycm9yLkFtb3VudE1pc21hdGNoRXJyb3I7XG5leHBvcnRzLkludGVyZmFjZUltcGxlbWVudGF0aW9uTWlzc2luZ0Vycm9yID0gSW50ZXJmYWNlSW1wbGVtZW50YXRpb25NaXNzaW5nRXJyb3IuSW50ZXJmYWNlSW1wbGVtZW50YXRpb25NaXNzaW5nRXJyb3I7XG5leHBvcnRzLkludmFsaWRCYXNlU3RyaW5nRXJyb3IgPSBJbnZhbGlkQmFzZVN0cmluZ0Vycm9yLkludmFsaWRCYXNlU3RyaW5nRXJyb3I7XG5leHBvcnRzLlByb2dyYW1FcnJvciA9IFByb2dyYW1FcnJvci5Qcm9ncmFtRXJyb3I7XG5leHBvcnRzLlNka0Vycm9yID0gU2RrRXJyb3IuU2RrRXJyb3I7XG5leHBvcnRzLlVtaUVycm9yID0gVW1pRXJyb3IuVW1pRXJyb3I7XG5leHBvcnRzLlVuZXhwZWN0ZWRBY2NvdW50RXJyb3IgPSBVbmV4cGVjdGVkQWNjb3VudEVycm9yLlVuZXhwZWN0ZWRBY2NvdW50RXJyb3I7XG5leHBvcnRzLlVuZXhwZWN0ZWRBbW91bnRFcnJvciA9IFVuZXhwZWN0ZWRBbW91bnRFcnJvci5VbmV4cGVjdGVkQW1vdW50RXJyb3I7XG5leHBvcnRzLmNodW5rID0gYXJyYXlzLmNodW5rO1xuZXhwb3J0cy51bmlxdWVCeSA9IGFycmF5cy51bmlxdWVCeTtcbmV4cG9ydHMuemlwTWFwID0gYXJyYXlzLnppcE1hcDtcbmV4cG9ydHMuZ2VuZXJhdGVSYW5kb21TdHJpbmcgPSByYW5kb21TdHJpbmdzLmdlbmVyYXRlUmFuZG9tU3RyaW5nO1xuT2JqZWN0LmtleXModW1pT3B0aW9ucykuZm9yRWFjaChmdW5jdGlvbiAoaykge1xuXHRpZiAoayAhPT0gJ2RlZmF1bHQnICYmICFleHBvcnRzLmhhc093blByb3BlcnR5KGspKSBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgaywge1xuXHRcdGVudW1lcmFibGU6IHRydWUsXG5cdFx0Z2V0OiBmdW5jdGlvbiAoKSB7IHJldHVybiB1bWlPcHRpb25zW2tdOyB9XG5cdH0pO1xufSk7XG5PYmplY3Qua2V5cyh1bWlQdWJsaWNLZXlzKS5mb3JFYWNoKGZ1bmN0aW9uIChrKSB7XG5cdGlmIChrICE9PSAnZGVmYXVsdCcgJiYgIWV4cG9ydHMuaGFzT3duUHJvcGVydHkoaykpIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBrLCB7XG5cdFx0ZW51bWVyYWJsZTogdHJ1ZSxcblx0XHRnZXQ6IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHVtaVB1YmxpY0tleXNba107IH1cblx0fSk7XG59KTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmNqcy5tYXBcbiIsICIndXNlIHN0cmljdCc7XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCAnX19lc01vZHVsZScsIHsgdmFsdWU6IHRydWUgfSk7XG5cbnZhciB1bWlTZXJpYWxpemVycyA9IHJlcXVpcmUoJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycycpO1xuXG5cblxuT2JqZWN0LmtleXModW1pU2VyaWFsaXplcnMpLmZvckVhY2goZnVuY3Rpb24gKGspIHtcblx0aWYgKGsgIT09ICdkZWZhdWx0JyAmJiAhZXhwb3J0cy5oYXNPd25Qcm9wZXJ0eShrKSkgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIGssIHtcblx0XHRlbnVtZXJhYmxlOiB0cnVlLFxuXHRcdGdldDogZnVuY3Rpb24gKCkgeyByZXR1cm4gdW1pU2VyaWFsaXplcnNba107IH1cblx0fSk7XG59KTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXNlcmlhbGl6ZXJzLmNqcy5tYXBcbiIsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsICIvLyBpbmRleC50c1xuZXhwb3J0IHsgU29sYW5hVXRpbHMgfSBmcm9tICdAL2xpYi9zb2xhbmFVdGlscydcbmV4cG9ydCB0eXBlIHtcbiAgU29sYW5hVXRpbHNPcHRpb25zLFxuICBTdGFrZVJld2FyZFBhcmFtcyxcbn0gZnJvbSAnQC9saWIvc29sYW5hVXRpbHMvc29sYW5hVXRpbHNUeXBlcydcbmV4cG9ydCB7IHN0YWtlQWNjb3VudEJhbGFuY2UgfSBmcm9tICdAL2xpYi9zb2xhbmFVdGlscy9zdGFrZUFjY291bnRCYWxhbmNlJ1xuZXhwb3J0IHsgbGFzdFN0YWtpbmdSZXdhcmQgfSBmcm9tICdAL2xpYi9zb2xhbmFVdGlscy9sYXN0U3Rha2luZ1Jld2FyZCdcbmV4cG9ydCB7XG4gIGNoZWNrT3duZXJORlRzLFxuICBuZnRPd25lckFkZHJlc3MsXG59IGZyb20gJ0AvbGliL3NvbGFuYVV0aWxzL25mdE93bmVyQWRkcmVzcydcbiIsICJpbXBvcnQgeyBDb25uZWN0aW9uLCBMQU1QT1JUU19QRVJfU09MIH0gZnJvbSAnQHNvbGFuYS93ZWIzLmpzJ1xuaW1wb3J0IHsgU29sYW5hVXRpbHNPcHRpb25zIH0gZnJvbSAnLi9zb2xhbmFVdGlsc1R5cGVzJ1xuaW1wb3J0IHtcbiAgY2hlY2tPd25lck5GVHMsXG4gIG5mdENvbGxlY3Rpb25Pd25lckFkZHJlc3MsXG4gIG5mdE93bmVyQWRkcmVzcyxcbn0gZnJvbSAnLi9uZnRPd25lckFkZHJlc3MnXG5cbi8qKlxuICogQSB1dGlsaXR5IGNsYXNzIGZvciBpbnRlcmFjdGluZyB3aXRoIFNvbGFuYSBibG9ja2NoYWluLlxuICpcbiAqICMjIyBJbml0aWFsaXphdGlvbiBFeGFtcGxlOlxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3Qgc29sYW5hVXRpbHMgPSBuZXcgU29sYW5hVXRpbHMoe1xuICogICBlbmRwb2ludDogJ2h0dHBzOi8vYXBpLmRldm5ldC5zb2xhbmEuY29tJyxcbiAqIH0pXG4gKiBjb25zdCBuZnRzID0gYXdhaXQgc29sYW5hVXRpbHMuZ2V0T3duZXJORlRBZGRyZXNzZXMoXG4gKiAgICd1c2VyLXdhbGxldC1hZGRyZXNzJyxcbiAqICAgJ2NvbGxlY3Rpb24tYWRkcmVzcycsXG4gKiApXG4gKiBgYGBcbiAqL1xuXG5leHBvcnQgY2xhc3MgU29sYW5hVXRpbHMge1xuICBwdWJsaWMgY29ubmVjdGlvbjogQ29ubmVjdGlvblxuICBwdWJsaWMgb3B0aW9uczogU29sYW5hVXRpbHNPcHRpb25zXG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgU29sYW5hVXRpbHMuXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgU29sYW5hVXRpbHMuXG4gICAqL1xuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBTb2xhbmFVdGlsc09wdGlvbnMpIHtcbiAgICB0aGlzLmNvbm5lY3Rpb24gPSBuZXcgQ29ubmVjdGlvbihvcHRpb25zLmVuZHBvaW50KVxuICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnNcbiAgfVxuXG4gIC8vIC4uLiByZXN0IG9mIHlvdXIgZXhpc3RpbmcgbWV0aG9kc1xuXG4gIC8qKlxuICAgKiBGZXRjaGVzIGFsbCBORlRzIG93bmVkIGJ5IGEgdXNlci5cbiAgICpcbiAgICogQHBhcmFtIHVzZXJXYWxsZXRBZGRyZXNzIC0gVGhlIGFkZHJlc3Mgb2YgdGhlIHVzZXIncyB3YWxsZXQuXG4gICAqIEByZXR1cm5zIFRoZSBORlRzIG93bmVkIGJ5IHRoZSB1c2VyLlxuICAgKi9cbiAgYXN5bmMgZ2V0T3duZXJORlRzKHRoaXM6IFNvbGFuYVV0aWxzLCB1c2VyV2FsbGV0QWRkcmVzczogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGF3YWl0IG5mdE93bmVyQWRkcmVzcyh0aGlzLCB1c2VyV2FsbGV0QWRkcmVzcylcbiAgfVxuXG4gIC8qKlxuICAgKiBGZXRjaGVzIE5GVCBhZGRyZXNzZXMgb3duZWQgYnkgYSB1c2VyIGluIGEgc3BlY2lmaWMgY29sbGVjdGlvbi5cbiAgICpcbiAgICogQHBhcmFtIHVzZXJXYWxsZXRBZGRyZXNzIC0gVGhlIGFkZHJlc3Mgb2YgdGhlIHVzZXIncyB3YWxsZXQuXG4gICAqIEBwYXJhbSBjb2xsZWN0aW9uQWRkcmVzcyAtIFRoZSBhZGRyZXNzIG9mIHRoZSBORlQgY29sbGVjdGlvbi5cbiAgICogQHJldHVybnMgVGhlIE5GVCBhZGRyZXNzZXMgb3duZWQgYnkgdGhlIHVzZXIgaW4gdGhlIHNwZWNpZmllZCBjb2xsZWN0aW9uLlxuICAgKi9cbiAgYXN5bmMgZ2V0T3duZXJORlRBZGRyZXNzZXMoXG4gICAgdGhpczogU29sYW5hVXRpbHMsXG4gICAgdXNlcldhbGxldEFkZHJlc3M6IHN0cmluZyxcbiAgICBjb2xsZWN0aW9uQWRkcmVzczogc3RyaW5nLFxuICApIHtcbiAgICByZXR1cm4gYXdhaXQgbmZ0Q29sbGVjdGlvbk93bmVyQWRkcmVzcyhcbiAgICAgIHRoaXMsXG4gICAgICB1c2VyV2FsbGV0QWRkcmVzcyxcbiAgICAgIGNvbGxlY3Rpb25BZGRyZXNzLFxuICAgIClcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgYSB1c2VyIGlzIHRoZSBvd25lciBvZiBzcGVjaWZpZWQgTkZUcyBpbiBhIGNvbGxlY3Rpb24uXG4gICAqXG4gICAqIEBwYXJhbSB1c2VyV2FsbGV0QWRkcmVzcyAtIFRoZSBhZGRyZXNzIG9mIHRoZSB1c2VyJ3Mgd2FsbGV0LlxuICAgKiBAcGFyYW0gY29sbGVjdGlvbkFkZHJlc3MgLSBUaGUgYWRkcmVzcyBvZiB0aGUgTkZUIGNvbGxlY3Rpb24uXG4gICAqIEBwYXJhbSBuZnRBZGRyZXNzZXMgLSBUaGUgYWRkcmVzc2VzIG9mIHRoZSBORlRzIHRvIGNoZWNrLlxuICAgKiBAcmV0dXJucyBBbiBvYmplY3QgY29udGFpbmluZyB0aGUgY2hlY2sgc3RhdHVzIGFuZCBtZXNzYWdlLlxuICAgKi9cbiAgYXN5bmMgY2hlY2tORlRzT3duZXIoXG4gICAgdGhpczogU29sYW5hVXRpbHMsXG4gICAgdXNlcldhbGxldEFkZHJlc3M6IHN0cmluZyxcbiAgICBjb2xsZWN0aW9uQWRkcmVzczogc3RyaW5nLFxuICAgIG5mdEFkZHJlc3Nlczogc3RyaW5nW10sXG4gICkge1xuICAgIHJldHVybiBhd2FpdCBjaGVja093bmVyTkZUcyhcbiAgICAgIHRoaXMsXG4gICAgICB1c2VyV2FsbGV0QWRkcmVzcyxcbiAgICAgIGNvbGxlY3Rpb25BZGRyZXNzLFxuICAgICAgbmZ0QWRkcmVzc2VzLFxuICAgIClcbiAgfVxuXG4gIGFzeW5jIGdldEN1cnJlbnRFcG9jaCgpOiBQcm9taXNlPG51bWJlcj4ge1xuICAgIGNvbnN0IGVwb2NoSW5mbyA9IGF3YWl0IHRoaXMuY29ubmVjdGlvbi5nZXRFcG9jaEluZm8oKVxuICAgIHJldHVybiBlcG9jaEluZm8uZXBvY2hcbiAgfVxuXG4gIGxhbXBvcnRzVG9Tb2wobGFtcG9ydHM6IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIGxhbXBvcnRzIC8gTEFNUE9SVFNfUEVSX1NPTFxuICB9XG59XG4iLCAiaW1wb3J0IHsgUHVibGljS2V5IH0gZnJvbSAnQHNvbGFuYS93ZWIzLmpzJ1xuaW1wb3J0IHsgU29sYW5hVXRpbHMgfSBmcm9tICcuJ1xuaW1wb3J0IHsgY3JlYXRlVW1pIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLWJ1bmRsZS1kZWZhdWx0cydcbmltcG9ydCB7IGZldGNoQWxsRGlnaXRhbEFzc2V0QnlPd25lciB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL21wbC10b2tlbi1tZXRhZGF0YSdcbmltcG9ydCB7IGZyb21XZWIzSnNQdWJsaWNLZXkgfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktd2ViM2pzLWFkYXB0ZXJzJ1xuXG5leHBvcnQgY29uc3QgbmZ0T3duZXJBZGRyZXNzID0gYXN5bmMgKFxuICBzb2xhbmFVdGlsczogU29sYW5hVXRpbHMsXG4gIHVzZXJXYWxsZXRBZGRyZXNzOiBzdHJpbmcsXG4pID0+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCBwdWJsaWNLZXkgPSBuZXcgUHVibGljS2V5KHVzZXJXYWxsZXRBZGRyZXNzKVxuICAgIGNvbnN0IHVtaSA9IGNyZWF0ZVVtaShzb2xhbmFVdGlscy5vcHRpb25zLmVuZHBvaW50KVxuICAgIGNvbnN0IG5mdHMgPSBhd2FpdCBmZXRjaEFsbERpZ2l0YWxBc3NldEJ5T3duZXIoXG4gICAgICB1bWksXG4gICAgICBmcm9tV2ViM0pzUHVibGljS2V5KHB1YmxpY0tleSksXG4gICAgKVxuICAgIHJldHVybiBuZnRzXG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBGYWlsZWQgdG8gZmV0Y2ggTkZUcyBmb3IgYWRkcmVzczogJHt1c2VyV2FsbGV0QWRkcmVzc31gKVxuICB9XG59XG5cbmV4cG9ydCBjb25zdCBuZnRDb2xsZWN0aW9uT3duZXJBZGRyZXNzID0gYXN5bmMgKFxuICBzb2xhbmFVdGlsczogU29sYW5hVXRpbHMsXG4gIHVzZXJXYWxsZXRBZGRyZXNzOiBzdHJpbmcsXG4gIGNvbGxlY3Rpb25BZGRyZXNzOiBzdHJpbmcsXG4pID0+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCBvd25lck5GVHMgPSBhd2FpdCBuZnRPd25lckFkZHJlc3Moc29sYW5hVXRpbHMsIHVzZXJXYWxsZXRBZGRyZXNzKVxuICAgIGNvbnN0IGNvbGxlY3Rpb25ORlRzID0gb3duZXJORlRzLmZpbHRlcigobmZ0KSA9PiB7XG4gICAgICBjb25zdCBjb2xsZWN0aW9uOiBhbnkgPSBuZnQubWV0YWRhdGEuY29sbGVjdGlvblxuICAgICAgaWYgKGNvbGxlY3Rpb24uX19vcHRpb24gPT09ICdTb21lJykge1xuICAgICAgICBpZiAoY29sbGVjdGlvbi52YWx1ZS5rZXkgPT09IGNvbGxlY3Rpb25BZGRyZXNzKSB7XG4gICAgICAgICAgcmV0dXJuIGNvbGxlY3Rpb24udmFsdWUua2V5XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KVxuICAgIGNvbnN0IG5mdEFkZHJlc3NlcyA9IGNvbGxlY3Rpb25ORlRzLm1hcCgobmZ0KSA9PiB7XG4gICAgICByZXR1cm4gbmZ0Lm1ldGFkYXRhLm1pbnRcbiAgICB9KVxuICAgIHJldHVybiBuZnRBZGRyZXNzZXMgYXMgc3RyaW5nW11cbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYEZhaWxlZCB0byBmZXRjaCBORlRzIGZvciBhZGRyZXNzOiAke3VzZXJXYWxsZXRBZGRyZXNzfWApXG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IGNoZWNrT3duZXJORlRzID0gYXN5bmMgKFxuICBzb2xhbmFVdGlsczogU29sYW5hVXRpbHMsXG4gIHVzZXJXYWxsZXRBZGRyZXNzOiBzdHJpbmcsXG4gIGNvbGxlY3Rpb25BZGRyZXNzOiBzdHJpbmcsXG4gIG5mdEFkZHJlc3Nlczogc3RyaW5nW10sXG4pID0+IHtcbiAgY29uc3Qgb3duZXJORlRzID0gYXdhaXQgbmZ0Q29sbGVjdGlvbk93bmVyQWRkcmVzcyhcbiAgICBzb2xhbmFVdGlscyxcbiAgICB1c2VyV2FsbGV0QWRkcmVzcyxcbiAgICBjb2xsZWN0aW9uQWRkcmVzcyxcbiAgKVxuICBjb25zdCBub1Blcm1pc3Npb25zID0gbmZ0QWRkcmVzc2VzLmZpbHRlcigobmZ0QWRkcmVzczogc3RyaW5nKSA9PiB7XG4gICAgaWYgKCFvd25lck5GVHMuaW5jbHVkZXMobmZ0QWRkcmVzcykpIHtcbiAgICAgIHJldHVybiBuZnRBZGRyZXNzXG4gICAgfVxuICB9KVxuICBsZXQgcmVzdWx0ID0ge1xuICAgIHN0YXR1czogZmFsc2UsXG4gICAgbWVzc2FnZTogJycsXG4gIH1cbiAgc3dpdGNoIChub1Blcm1pc3Npb25zLmxlbmd0aCkge1xuICAgIGNhc2UgMDpcbiAgICAgIHJlc3VsdCA9IHtcbiAgICAgICAgc3RhdHVzOiB0cnVlLFxuICAgICAgICBtZXNzYWdlOiAnQWxsIE5GVHMgYXJlIG93bmVkIGJ5IHRoZSB1c2VyLicsXG4gICAgICB9XG4gICAgICByZXR1cm4gcmVzdWx0XG4gICAgZGVmYXVsdDpcbiAgICAgIHJlc3VsdCA9IHtcbiAgICAgICAgc3RhdHVzOiBmYWxzZSxcbiAgICAgICAgbWVzc2FnZTogYFRoZSB1c2VyIGRvZXMgbm90IG93biB0aGUgZm9sbG93aW5nIE5GVHM6ICR7bm9QZXJtaXNzaW9ucy5qb2luKFxuICAgICAgICAgICcsICcsXG4gICAgICAgICl9YCxcbiAgICAgIH1cbiAgICAgIHJldHVybiByZXN1bHRcbiAgfVxufVxuIiwgIi8qKlxuICogRGVmaW5lcyBhIHR5cGUgYFRgIHRoYXQgY2FuIGFsc28gYmUgYG51bGxgLlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBPcHRpb25zXG4gKi9cbmV4cG9ydCB0eXBlIE51bGxhYmxlPFQ+ID0gVCB8IG51bGw7XG5cbi8qKlxuICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIFJ1c3QgT3B0aW9uIHR5cGUgaW4gSmF2YVNjcmlwdC5cbiAqIEl0IGNhbiBiZSBvbmUgb2YgdGhlIGZvbGxvd2luZzpcbiAqIC0gPGNvZGU+e0BsaW5rIFNvbWV9PFQ+PC9jb2RlPjogTWVhbmluZyB0aGVyZSBpcyBhIHZhbHVlIG9mIHR5cGUgVC5cbiAqIC0gPGNvZGU+e0BsaW5rIE5vbmV9PC9jb2RlPjogTWVhbmluZyB0aGVyZSBpcyBubyB2YWx1ZS5cbiAqXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIE9wdGlvbnNcbiAqL1xuZXhwb3J0IHR5cGUgT3B0aW9uPFQ+ID0gU29tZTxUPiB8IE5vbmU7XG5cbi8qKlxuICogRGVmaW5lcyBhIGxvb3NlciB0eXBlIHRoYXQgY2FuIGJlIHVzZWQgd2hlbiBzZXJpYWxpemluZyBhbiB7QGxpbmsgT3B0aW9ufS5cbiAqIFRoaXMgYWxsb3dzIHVzIHRvIHBhc3MgbnVsbCBvciB0aGUgT3B0aW9uIHZhbHVlIGRpcmVjdGx5IHdoaWxzdCBzdGlsbFxuICogc3VwcG9ydGluZyB0aGUgT3B0aW9uIHR5cGUgZm9yIHVzZS1jYXNlcyB0aGF0IG5lZWQgbW9yZSB0eXBlIHNhZmV0eS5cbiAqXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIE9wdGlvbnNcbiAqL1xuZXhwb3J0IHR5cGUgT3B0aW9uT3JOdWxsYWJsZTxUPiA9IE9wdGlvbjxUPiB8IE51bGxhYmxlPFQ+O1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYW4gb3B0aW9uIG9mIHR5cGUgYFRgIHRoYXQgaGFzIGEgdmFsdWUuXG4gKlxuICogQHNlZSB7QGxpbmsgT3B0aW9ufVxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBPcHRpb25zXG4gKi9cbmV4cG9ydCB0eXBlIFNvbWU8VD4gPSB7IF9fb3B0aW9uOiAnU29tZSc7IHZhbHVlOiBUIH07XG5cbi8qKlxuICogUmVwcmVzZW50cyBhbiBvcHRpb24gb2YgdHlwZSBgVGAgdGhhdCBoYXMgbm8gdmFsdWUuXG4gKlxuICogQHNlZSB7QGxpbmsgT3B0aW9ufVxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBPcHRpb25zXG4gKi9cbmV4cG9ydCB0eXBlIE5vbmUgPSB7IF9fb3B0aW9uOiAnTm9uZScgfTtcblxuLyoqXG4gKiBDcmVhdGVzIGEgbmV3IHtAbGluayBPcHRpb259IG9mIHR5cGUgYFRgIHRoYXQgaGFzIGEgdmFsdWUuXG4gKlxuICogQHNlZSB7QGxpbmsgT3B0aW9ufVxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBPcHRpb25zXG4gKi9cbmV4cG9ydCBjb25zdCBzb21lID0gPFQ+KHZhbHVlOiBUKTogT3B0aW9uPFQ+ID0+ICh7IF9fb3B0aW9uOiAnU29tZScsIHZhbHVlIH0pO1xuXG4vKipcbiAqIENyZWF0ZXMgYSBuZXcge0BsaW5rIE9wdGlvbn0gb2YgdHlwZSBgVGAgdGhhdCBoYXMgbm8gdmFsdWUuXG4gKlxuICogQHNlZSB7QGxpbmsgT3B0aW9ufVxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBPcHRpb25zXG4gKi9cbmV4cG9ydCBjb25zdCBub25lID0gPFQ+KCk6IE9wdGlvbjxUPiA9PiAoeyBfX29wdGlvbjogJ05vbmUnIH0pO1xuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGdpdmVuIGRhdGEgaXMgYW4ge0BsaW5rIE9wdGlvbn0uXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIE9wdGlvbnNcbiAqL1xuZXhwb3J0IGNvbnN0IGlzT3B0aW9uID0gPFQgPSB1bmtub3duPihpbnB1dDogYW55KTogaW5wdXQgaXMgT3B0aW9uPFQ+ID0+XG4gIGlucHV0ICYmXG4gIHR5cGVvZiBpbnB1dCA9PT0gJ29iamVjdCcgJiZcbiAgJ19fb3B0aW9uJyBpbiBpbnB1dCAmJlxuICAoKGlucHV0Ll9fb3B0aW9uID09PSAnU29tZScgJiYgJ3ZhbHVlJyBpbiBpbnB1dCkgfHxcbiAgICBpbnB1dC5fX29wdGlvbiA9PT0gJ05vbmUnKTtcblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBnaXZlbiB7QGxpbmsgT3B0aW9ufSBpcyBhIHtAbGluayBTb21lfS5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgT3B0aW9uc1xuICovXG5leHBvcnQgY29uc3QgaXNTb21lID0gPFQ+KG9wdGlvbjogT3B0aW9uPFQ+KTogb3B0aW9uIGlzIFNvbWU8VD4gPT5cbiAgb3B0aW9uLl9fb3B0aW9uID09PSAnU29tZSc7XG5cbi8qKlxuICogV2hldGhlciB0aGUgZ2l2ZW4ge0BsaW5rIE9wdGlvbn0gaXMgYSB7QGxpbmsgTm9uZX0uXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIE9wdGlvbnNcbiAqL1xuZXhwb3J0IGNvbnN0IGlzTm9uZSA9IDxUPihvcHRpb246IE9wdGlvbjxUPik6IG9wdGlvbiBpcyBOb25lID0+XG4gIG9wdGlvbi5fX29wdGlvbiA9PT0gJ05vbmUnO1xuIiwgImltcG9ydCB7IE51bGxhYmxlLCBPcHRpb24sIGlzU29tZSwgbm9uZSwgc29tZSB9IGZyb20gJy4vY29tbW9uJztcblxuLyoqXG4gKiBVbndyYXBzIHRoZSB2YWx1ZSBvZiBhbiB7QGxpbmsgT3B0aW9ufSBvZiB0eXBlIGBUYFxuICogb3IgcmV0dXJucyBhIGZhbGxiYWNrIHZhbHVlIHRoYXQgZGVmYXVsdHMgdG8gYG51bGxgLlxuICpcbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgT3B0aW9uc1xuICovXG5leHBvcnQgZnVuY3Rpb24gdW53cmFwT3B0aW9uPFQ+KG9wdGlvbjogT3B0aW9uPFQ+KTogTnVsbGFibGU8VD47XG5leHBvcnQgZnVuY3Rpb24gdW53cmFwT3B0aW9uPFQsIFU+KG9wdGlvbjogT3B0aW9uPFQ+LCBmYWxsYmFjazogKCkgPT4gVSk6IFQgfCBVO1xuZXhwb3J0IGZ1bmN0aW9uIHVud3JhcE9wdGlvbjxULCBVID0gbnVsbD4oXG4gIG9wdGlvbjogT3B0aW9uPFQ+LFxuICBmYWxsYmFjaz86ICgpID0+IFVcbik6IFQgfCBVIHtcbiAgaWYgKGlzU29tZShvcHRpb24pKSByZXR1cm4gb3B0aW9uLnZhbHVlO1xuICByZXR1cm4gZmFsbGJhY2sgPyBmYWxsYmFjaygpIDogKG51bGwgYXMgVSk7XG59XG5cbi8qKlxuICogV3JhcHMgYSBudWxsYWJsZSB2YWx1ZSBpbnRvIGFuIHtAbGluayBPcHRpb259LlxuICpcbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgT3B0aW9uc1xuICovXG5leHBvcnQgY29uc3Qgd3JhcE51bGxhYmxlID0gPFQ+KG51bGxhYmxlOiBOdWxsYWJsZTxUPik6IE9wdGlvbjxUPiA9PlxuICBudWxsYWJsZSAhPT0gbnVsbCA/IHNvbWUobnVsbGFibGUpIDogbm9uZTxUPigpO1xuXG4vKipcbiAqIFVud3JhcHMgdGhlIHZhbHVlIG9mIGFuIHtAbGluayBPcHRpb259IG9mIHR5cGUgYFRgLlxuICogSWYgdGhlIG9wdGlvbiBpcyBhIHtAbGluayBTb21lfSwgaXQgcmV0dXJucyBpdHMgdmFsdWUsXG4gKiBPdGhlcndpc2UsIGl0IHJldHVybnMgYG51bGxgLlxuICpcbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgT3B0aW9uc1xuICogQGRlcHJlY2F0ZWQgVXNlIHtAbGluayB1bndyYXBPcHRpb259IGluc3RlYWQuXG4gKi9cbmV4cG9ydCBjb25zdCB1bndyYXBTb21lID0gPFQ+KG9wdGlvbjogT3B0aW9uPFQ+KTogTnVsbGFibGU8VD4gPT5cbiAgaXNTb21lKG9wdGlvbikgPyBvcHRpb24udmFsdWUgOiBudWxsO1xuXG4vKipcbiAqIFVud3JhcHMgdGhlIHZhbHVlIG9mIGFuIHtAbGluayBPcHRpb259IG9mIHR5cGUgYFRgXG4gKiBvciByZXR1cm5zIGEgY3VzdG9tIGZhbGxiYWNrIHZhbHVlLlxuICogSWYgdGhlIG9wdGlvbiBpcyBhIHtAbGluayBTb21lfSwgaXQgcmV0dXJucyBpdHMgdmFsdWUsXG4gKiBPdGhlcndpc2UsIGl0IHJldHVybnMgdGhlIHJldHVybiB2YWx1ZSBvZiB0aGUgcHJvdmlkZWQgZmFsbGJhY2sgY2FsbGJhY2suXG4gKlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBPcHRpb25zXG4gKiBAZGVwcmVjYXRlZCBVc2Uge0BsaW5rIHVud3JhcE9wdGlvbn0gaW5zdGVhZC5cbiAqL1xuZXhwb3J0IGNvbnN0IHVud3JhcFNvbWVPckVsc2UgPSA8VCwgVT4oXG4gIG9wdGlvbjogT3B0aW9uPFQ+LFxuICBmYWxsYmFjazogKCkgPT4gVVxuKTogVCB8IFUgPT4gKGlzU29tZShvcHRpb24pID8gb3B0aW9uLnZhbHVlIDogZmFsbGJhY2soKSk7XG4iLCAiLyoqIEBjYXRlZ29yeSBFcnJvcnMgKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkQmFzZVN0cmluZ0Vycm9yIGV4dGVuZHMgRXJyb3Ige1xuICByZWFkb25seSBuYW1lOiBzdHJpbmcgPSAnSW52YWxpZEJhc2VTdHJpbmdFcnJvcic7XG5cbiAgcmVhZG9ubHkgY2F1c2U/OiBFcnJvcjtcblxuICBjb25zdHJ1Y3Rvcih2YWx1ZTogc3RyaW5nLCBiYXNlOiBudW1iZXIsIGNhdXNlPzogRXJyb3IpIHtcbiAgICBjb25zdCBtZXNzYWdlID0gYEV4cGVjdGVkIGEgc3RyaW5nIG9mIGJhc2UgJHtiYXNlfSwgZ290IFske3ZhbHVlfV0uYDtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgICB0aGlzLmNhdXNlID0gY2F1c2U7XG4gIH1cbn1cbiIsICJpbXBvcnQgdHlwZSB7IFNlcmlhbGl6ZXIgfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQgeyBJbnZhbGlkQmFzZVN0cmluZ0Vycm9yIH0gZnJvbSAnLi9lcnJvcnMnO1xuXG4vKipcbiAqIEEgc3RyaW5nIHNlcmlhbGl6ZXIgdGhhdCByZXF1aXJlcyBhIGN1c3RvbSBhbHBoYWJldCBhbmQgdXNlc1xuICogdGhlIGxlbmd0aCBvZiB0aGF0IGFscGhhYmV0IGFzIHRoZSBiYXNlLiBJdCB0aGVuIGRpdmlkZXNcbiAqIHRoZSBpbnB1dCBieSB0aGUgYmFzZSBhcyBtYW55IHRpbWVzIGFzIG5lY2Vzc2FyeSB0byBnZXRcbiAqIHRoZSBvdXRwdXQuIEl0IGFsc28gc3VwcG9ydHMgbGVhZGluZyB6ZXJvZXMgYnkgdXNpbmcgdGhlXG4gKiBmaXJzdCBjaGFyYWN0ZXIgb2YgdGhlIGFscGhhYmV0IGFzIHRoZSB6ZXJvIGNoYXJhY3Rlci5cbiAqXG4gKiBUaGlzIGNhbiBiZSB1c2VkIHRvIGNyZWF0ZSBzZXJpYWxpemVycyBzdWNoIGFzIGJhc2UxMCBvciBiYXNlNTguXG4gKlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBiYXNlWCA9IChhbHBoYWJldDogc3RyaW5nKTogU2VyaWFsaXplcjxzdHJpbmc+ID0+IHtcbiAgY29uc3QgYmFzZSA9IGFscGhhYmV0Lmxlbmd0aDtcbiAgY29uc3QgYmFzZUJpZ0ludCA9IEJpZ0ludChiYXNlKTtcbiAgcmV0dXJuIHtcbiAgICBkZXNjcmlwdGlvbjogYGJhc2Uke2Jhc2V9YCxcbiAgICBmaXhlZFNpemU6IG51bGwsXG4gICAgbWF4U2l6ZTogbnVsbCxcbiAgICBzZXJpYWxpemUodmFsdWU6IHN0cmluZyk6IFVpbnQ4QXJyYXkge1xuICAgICAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIHZhbGlkLlxuICAgICAgaWYgKCF2YWx1ZS5tYXRjaChuZXcgUmVnRXhwKGBeWyR7YWxwaGFiZXR9XSokYCkpKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkQmFzZVN0cmluZ0Vycm9yKHZhbHVlLCBiYXNlKTtcbiAgICAgIH1cbiAgICAgIGlmICh2YWx1ZSA9PT0gJycpIHJldHVybiBuZXcgVWludDhBcnJheSgpO1xuXG4gICAgICAvLyBIYW5kbGUgbGVhZGluZyB6ZXJvZXMuXG4gICAgICBjb25zdCBjaGFycyA9IFsuLi52YWx1ZV07XG4gICAgICBsZXQgdHJhaWxJbmRleCA9IGNoYXJzLmZpbmRJbmRleCgoYykgPT4gYyAhPT0gYWxwaGFiZXRbMF0pO1xuICAgICAgdHJhaWxJbmRleCA9IHRyYWlsSW5kZXggPT09IC0xID8gY2hhcnMubGVuZ3RoIDogdHJhaWxJbmRleDtcbiAgICAgIGNvbnN0IGxlYWRpbmdaZXJvZXMgPSBBcnJheSh0cmFpbEluZGV4KS5maWxsKDApO1xuICAgICAgaWYgKHRyYWlsSW5kZXggPT09IGNoYXJzLmxlbmd0aCkgcmV0dXJuIFVpbnQ4QXJyYXkuZnJvbShsZWFkaW5nWmVyb2VzKTtcblxuICAgICAgLy8gRnJvbSBiYXNlWCB0byBiYXNlMTAuXG4gICAgICBjb25zdCB0YWlsQ2hhcnMgPSBjaGFycy5zbGljZSh0cmFpbEluZGV4KTtcbiAgICAgIGxldCBiYXNlMTBOdW1iZXIgPSAwbjtcbiAgICAgIGxldCBiYXNlWFBvd2VyID0gMW47XG4gICAgICBmb3IgKGxldCBpID0gdGFpbENoYXJzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaSAtPSAxKSB7XG4gICAgICAgIGJhc2UxME51bWJlciArPSBiYXNlWFBvd2VyICogQmlnSW50KGFscGhhYmV0LmluZGV4T2YodGFpbENoYXJzW2ldKSk7XG4gICAgICAgIGJhc2VYUG93ZXIgKj0gYmFzZUJpZ0ludDtcbiAgICAgIH1cblxuICAgICAgLy8gRnJvbSBiYXNlMTAgdG8gYnl0ZXMuXG4gICAgICBjb25zdCB0YWlsQnl0ZXMgPSBbXTtcbiAgICAgIHdoaWxlIChiYXNlMTBOdW1iZXIgPiAwbikge1xuICAgICAgICB0YWlsQnl0ZXMudW5zaGlmdChOdW1iZXIoYmFzZTEwTnVtYmVyICUgMjU2bikpO1xuICAgICAgICBiYXNlMTBOdW1iZXIgLz0gMjU2bjtcbiAgICAgIH1cbiAgICAgIHJldHVybiBVaW50OEFycmF5LmZyb20obGVhZGluZ1plcm9lcy5jb25jYXQodGFpbEJ5dGVzKSk7XG4gICAgfSxcbiAgICBkZXNlcmlhbGl6ZShidWZmZXIsIG9mZnNldCA9IDApOiBbc3RyaW5nLCBudW1iZXJdIHtcbiAgICAgIGlmIChidWZmZXIubGVuZ3RoID09PSAwKSByZXR1cm4gWycnLCAwXTtcblxuICAgICAgLy8gSGFuZGxlIGxlYWRpbmcgemVyb2VzLlxuICAgICAgY29uc3QgYnl0ZXMgPSBidWZmZXIuc2xpY2Uob2Zmc2V0KTtcbiAgICAgIGxldCB0cmFpbEluZGV4ID0gYnl0ZXMuZmluZEluZGV4KChuKSA9PiBuICE9PSAwKTtcbiAgICAgIHRyYWlsSW5kZXggPSB0cmFpbEluZGV4ID09PSAtMSA/IGJ5dGVzLmxlbmd0aCA6IHRyYWlsSW5kZXg7XG4gICAgICBjb25zdCBsZWFkaW5nWmVyb2VzID0gYWxwaGFiZXRbMF0ucmVwZWF0KHRyYWlsSW5kZXgpO1xuICAgICAgaWYgKHRyYWlsSW5kZXggPT09IGJ5dGVzLmxlbmd0aCkgcmV0dXJuIFtsZWFkaW5nWmVyb2VzLCBidWZmZXIubGVuZ3RoXTtcblxuICAgICAgLy8gRnJvbSBieXRlcyB0byBiYXNlMTAuXG4gICAgICBsZXQgYmFzZTEwTnVtYmVyID0gYnl0ZXNcbiAgICAgICAgLnNsaWNlKHRyYWlsSW5kZXgpXG4gICAgICAgIC5yZWR1Y2UoKHN1bSwgYnl0ZSkgPT4gc3VtICogMjU2biArIEJpZ0ludChieXRlKSwgMG4pO1xuXG4gICAgICAvLyBGcm9tIGJhc2UxMCB0byBiYXNlWC5cbiAgICAgIGNvbnN0IHRhaWxDaGFycyA9IFtdO1xuICAgICAgd2hpbGUgKGJhc2UxME51bWJlciA+IDBuKSB7XG4gICAgICAgIHRhaWxDaGFycy51bnNoaWZ0KGFscGhhYmV0W051bWJlcihiYXNlMTBOdW1iZXIgJSBiYXNlQmlnSW50KV0pO1xuICAgICAgICBiYXNlMTBOdW1iZXIgLz0gYmFzZUJpZ0ludDtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIFtsZWFkaW5nWmVyb2VzICsgdGFpbENoYXJzLmpvaW4oJycpLCBidWZmZXIubGVuZ3RoXTtcbiAgICB9LFxuICB9O1xufTtcbiIsICJpbXBvcnQgdHlwZSB7IFNlcmlhbGl6ZXIgfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQgeyBiYXNlWCB9IGZyb20gJy4vYmFzZVgnO1xuXG4vKipcbiAqIEEgc3RyaW5nIHNlcmlhbGl6ZXIgdGhhdCB1c2VzIGJhc2U1OCBlbmNvZGluZy5cbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgY29uc3QgYmFzZTU4OiBTZXJpYWxpemVyPHN0cmluZz4gPSBiYXNlWChcbiAgJzEyMzQ1Njc4OUFCQ0RFRkdISktMTU5QUVJTVFVWV1hZWmFiY2RlZmdoaWprbW5vcHFyc3R1dnd4eXonXG4pO1xuIiwgIi8qKlxuICogQ29uY2F0ZW5hdGVzIGFuIGFycmF5IG9mIGBVaW50OEFycmF5YHMgaW50byBhIHNpbmdsZSBgVWludDhBcnJheWAuXG4gKiBAY2F0ZWdvcnkgVXRpbHNcbiAqL1xuZXhwb3J0IGNvbnN0IG1lcmdlQnl0ZXMgPSAoYnl0ZXNBcnI6IFVpbnQ4QXJyYXlbXSk6IFVpbnQ4QXJyYXkgPT4ge1xuICBjb25zdCB0b3RhbExlbmd0aCA9IGJ5dGVzQXJyLnJlZHVjZSgodG90YWwsIGFycikgPT4gdG90YWwgKyBhcnIubGVuZ3RoLCAwKTtcbiAgY29uc3QgcmVzdWx0ID0gbmV3IFVpbnQ4QXJyYXkodG90YWxMZW5ndGgpO1xuICBsZXQgb2Zmc2V0ID0gMDtcbiAgYnl0ZXNBcnIuZm9yRWFjaCgoYXJyKSA9PiB7XG4gICAgcmVzdWx0LnNldChhcnIsIG9mZnNldCk7XG4gICAgb2Zmc2V0ICs9IGFyci5sZW5ndGg7XG4gIH0pO1xuICByZXR1cm4gcmVzdWx0O1xufTtcblxuLyoqXG4gKiBQYWRzIGEgYFVpbnQ4QXJyYXlgIHdpdGggemVyb2VzIHRvIHRoZSBzcGVjaWZpZWQgbGVuZ3RoLlxuICogSWYgdGhlIGFycmF5IGlzIGxvbmdlciB0aGFuIHRoZSBzcGVjaWZpZWQgbGVuZ3RoLCBpdCBpcyByZXR1cm5lZCBhcy1pcy5cbiAqIEBjYXRlZ29yeSBVdGlsc1xuICovXG5leHBvcnQgY29uc3QgcGFkQnl0ZXMgPSAoYnl0ZXM6IFVpbnQ4QXJyYXksIGxlbmd0aDogbnVtYmVyKTogVWludDhBcnJheSA9PiB7XG4gIGlmIChieXRlcy5sZW5ndGggPj0gbGVuZ3RoKSByZXR1cm4gYnl0ZXM7XG4gIGNvbnN0IHBhZGRlZEJ5dGVzID0gbmV3IFVpbnQ4QXJyYXkobGVuZ3RoKS5maWxsKDApO1xuICBwYWRkZWRCeXRlcy5zZXQoYnl0ZXMpO1xuICByZXR1cm4gcGFkZGVkQnl0ZXM7XG59O1xuXG4vKipcbiAqIEZpeGVzIGEgYFVpbnQ4QXJyYXlgIHRvIHRoZSBzcGVjaWZpZWQgbGVuZ3RoLlxuICogSWYgdGhlIGFycmF5IGlzIGxvbmdlciB0aGFuIHRoZSBzcGVjaWZpZWQgbGVuZ3RoLCBpdCBpcyB0cnVuY2F0ZWQuXG4gKiBJZiB0aGUgYXJyYXkgaXMgc2hvcnRlciB0aGFuIHRoZSBzcGVjaWZpZWQgbGVuZ3RoLCBpdCBpcyBwYWRkZWQgd2l0aCB6ZXJvZXMuXG4gKiBAY2F0ZWdvcnkgVXRpbHNcbiAqL1xuZXhwb3J0IGNvbnN0IGZpeEJ5dGVzID0gKGJ5dGVzOiBVaW50OEFycmF5LCBsZW5ndGg6IG51bWJlcik6IFVpbnQ4QXJyYXkgPT5cbiAgcGFkQnl0ZXMoYnl0ZXMuc2xpY2UoMCwgbGVuZ3RoKSwgbGVuZ3RoKTtcbiIsICIvKiogQGNhdGVnb3J5IEVycm9ycyAqL1xuZXhwb3J0IGNsYXNzIERlc2VyaWFsaXppbmdFbXB0eUJ1ZmZlckVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICByZWFkb25seSBuYW1lOiBzdHJpbmcgPSAnRGVzZXJpYWxpemluZ0VtcHR5QnVmZmVyRXJyb3InO1xuXG4gIGNvbnN0cnVjdG9yKHNlcmlhbGl6ZXI6IHN0cmluZykge1xuICAgIHN1cGVyKGBTZXJpYWxpemVyIFske3NlcmlhbGl6ZXJ9XSBjYW5ub3QgZGVzZXJpYWxpemUgZW1wdHkgYnVmZmVycy5gKTtcbiAgfVxufVxuXG4vKiogQGNhdGVnb3J5IEVycm9ycyAqL1xuZXhwb3J0IGNsYXNzIE5vdEVub3VnaEJ5dGVzRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZyA9ICdOb3RFbm91Z2hCeXRlc0Vycm9yJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBzZXJpYWxpemVyOiBzdHJpbmcsXG4gICAgZXhwZWN0ZWQ6IGJpZ2ludCB8IG51bWJlcixcbiAgICBhY3R1YWw6IGJpZ2ludCB8IG51bWJlclxuICApIHtcbiAgICBzdXBlcihcbiAgICAgIGBTZXJpYWxpemVyIFske3NlcmlhbGl6ZXJ9XSBleHBlY3RlZCAke2V4cGVjdGVkfSBieXRlcywgZ290ICR7YWN0dWFsfS5gXG4gICAgKTtcbiAgfVxufVxuXG4vKiogQGNhdGVnb3J5IEVycm9ycyAqL1xuZXhwb3J0IGNsYXNzIEV4cGVjdGVkRml4ZWRTaXplU2VyaWFsaXplckVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICByZWFkb25seSBuYW1lOiBzdHJpbmcgPSAnRXhwZWN0ZWRGaXhlZFNpemVTZXJpYWxpemVyRXJyb3InO1xuXG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcbiAgICBtZXNzYWdlID8/PSAnRXhwZWN0ZWQgYSBmaXhlZC1zaXplIHNlcmlhbGl6ZXIsIGdvdCBhIHZhcmlhYmxlLXNpemUgb25lLic7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gIH1cbn1cbiIsICJpbXBvcnQgeyBmaXhCeXRlcyB9IGZyb20gJy4vYnl0ZXMnO1xuaW1wb3J0IHsgU2VyaWFsaXplciB9IGZyb20gJy4vY29tbW9uJztcbmltcG9ydCB7IE5vdEVub3VnaEJ5dGVzRXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5cbi8qKlxuICogQ3JlYXRlcyBhIGZpeGVkLXNpemUgc2VyaWFsaXplciBmcm9tIGEgZ2l2ZW4gc2VyaWFsaXplci5cbiAqXG4gKiBAcGFyYW0gc2VyaWFsaXplciAtIFRoZSBzZXJpYWxpemVyIHRvIHdyYXAgaW50byBhIGZpeGVkLXNpemUgc2VyaWFsaXplci5cbiAqIEBwYXJhbSBmaXhlZEJ5dGVzIC0gVGhlIGZpeGVkIG51bWJlciBvZiBieXRlcyB0byByZWFkLlxuICogQHBhcmFtIGRlc2NyaXB0aW9uIC0gQSBjdXN0b20gZGVzY3JpcHRpb24gZm9yIHRoZSBzZXJpYWxpemVyLlxuICpcbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgZnVuY3Rpb24gZml4U2VyaWFsaXplcjxULCBVIGV4dGVuZHMgVCA9IFQ+KFxuICBzZXJpYWxpemVyOiBTZXJpYWxpemVyPFQsIFU+LFxuICBmaXhlZEJ5dGVzOiBudW1iZXIsXG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nXG4pOiBTZXJpYWxpemVyPFQsIFU+IHtcbiAgcmV0dXJuIHtcbiAgICBkZXNjcmlwdGlvbjpcbiAgICAgIGRlc2NyaXB0aW9uID8/IGBmaXhlZCgke2ZpeGVkQnl0ZXN9LCAke3NlcmlhbGl6ZXIuZGVzY3JpcHRpb259KWAsXG4gICAgZml4ZWRTaXplOiBmaXhlZEJ5dGVzLFxuICAgIG1heFNpemU6IGZpeGVkQnl0ZXMsXG4gICAgc2VyaWFsaXplOiAodmFsdWU6IFQpID0+IGZpeEJ5dGVzKHNlcmlhbGl6ZXIuc2VyaWFsaXplKHZhbHVlKSwgZml4ZWRCeXRlcyksXG4gICAgZGVzZXJpYWxpemU6IChidWZmZXI6IFVpbnQ4QXJyYXksIG9mZnNldCA9IDApID0+IHtcbiAgICAgIC8vIFNsaWNlIHRoZSBidWZmZXIgdG8gdGhlIGZpeGVkIHNpemUuXG4gICAgICBidWZmZXIgPSBidWZmZXIuc2xpY2Uob2Zmc2V0LCBvZmZzZXQgKyBmaXhlZEJ5dGVzKTtcbiAgICAgIC8vIEVuc3VyZSB3ZSBoYXZlIGVub3VnaCBieXRlcy5cbiAgICAgIGlmIChidWZmZXIubGVuZ3RoIDwgZml4ZWRCeXRlcykge1xuICAgICAgICB0aHJvdyBuZXcgTm90RW5vdWdoQnl0ZXNFcnJvcihcbiAgICAgICAgICAnZml4U2VyaWFsaXplcicsXG4gICAgICAgICAgZml4ZWRCeXRlcyxcbiAgICAgICAgICBidWZmZXIubGVuZ3RoXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICAvLyBJZiB0aGUgbmVzdGVkIHNlcmlhbGl6ZXIgaXMgZml4ZWQtc2l6ZSwgcGFkIGFuZCB0cnVuY2F0ZSB0aGUgYnVmZmVyIGFjY29yZGluZ2x5LlxuICAgICAgaWYgKHNlcmlhbGl6ZXIuZml4ZWRTaXplICE9PSBudWxsKSB7XG4gICAgICAgIGJ1ZmZlciA9IGZpeEJ5dGVzKGJ1ZmZlciwgc2VyaWFsaXplci5maXhlZFNpemUpO1xuICAgICAgfVxuICAgICAgLy8gRGVzZXJpYWxpemUgdGhlIHZhbHVlIHVzaW5nIHRoZSBuZXN0ZWQgc2VyaWFsaXplci5cbiAgICAgIGNvbnN0IFt2YWx1ZV0gPSBzZXJpYWxpemVyLmRlc2VyaWFsaXplKGJ1ZmZlciwgMCk7XG4gICAgICByZXR1cm4gW3ZhbHVlLCBvZmZzZXQgKyBmaXhlZEJ5dGVzXTtcbiAgICB9LFxuICB9O1xufVxuIiwgImltcG9ydCB7IFNlcmlhbGl6ZXIgfSBmcm9tICcuL2NvbW1vbic7XG5cbi8qKlxuICogQ29udmVydHMgYSBzZXJpYWxpemVyIEEgdG8gYSBzZXJpYWxpemVyIEIgYnkgbWFwcGluZyB0aGVpciB2YWx1ZXMuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1hcFNlcmlhbGl6ZXI8TmV3RnJvbSwgT2xkRnJvbSwgVG8gZXh0ZW5kcyBOZXdGcm9tICYgT2xkRnJvbT4oXG4gIHNlcmlhbGl6ZXI6IFNlcmlhbGl6ZXI8T2xkRnJvbSwgVG8+LFxuICB1bm1hcDogKHZhbHVlOiBOZXdGcm9tKSA9PiBPbGRGcm9tXG4pOiBTZXJpYWxpemVyPE5ld0Zyb20sIFRvPjtcbmV4cG9ydCBmdW5jdGlvbiBtYXBTZXJpYWxpemVyPFxuICBOZXdGcm9tLFxuICBPbGRGcm9tLFxuICBOZXdUbyBleHRlbmRzIE5ld0Zyb20gPSBOZXdGcm9tLFxuICBPbGRUbyBleHRlbmRzIE9sZEZyb20gPSBPbGRGcm9tXG4+KFxuICBzZXJpYWxpemVyOiBTZXJpYWxpemVyPE9sZEZyb20sIE9sZFRvPixcbiAgdW5tYXA6ICh2YWx1ZTogTmV3RnJvbSkgPT4gT2xkRnJvbSxcbiAgbWFwOiAodmFsdWU6IE9sZFRvLCBidWZmZXI6IFVpbnQ4QXJyYXksIG9mZnNldDogbnVtYmVyKSA9PiBOZXdUb1xuKTogU2VyaWFsaXplcjxOZXdGcm9tLCBOZXdUbz47XG5leHBvcnQgZnVuY3Rpb24gbWFwU2VyaWFsaXplcjxcbiAgTmV3RnJvbSxcbiAgT2xkRnJvbSxcbiAgTmV3VG8gZXh0ZW5kcyBOZXdGcm9tID0gTmV3RnJvbSxcbiAgT2xkVG8gZXh0ZW5kcyBPbGRGcm9tID0gT2xkRnJvbVxuPihcbiAgc2VyaWFsaXplcjogU2VyaWFsaXplcjxPbGRGcm9tLCBPbGRUbz4sXG4gIHVubWFwOiAodmFsdWU6IE5ld0Zyb20pID0+IE9sZEZyb20sXG4gIG1hcD86ICh2YWx1ZTogT2xkVG8sIGJ1ZmZlcjogVWludDhBcnJheSwgb2Zmc2V0OiBudW1iZXIpID0+IE5ld1RvXG4pOiBTZXJpYWxpemVyPE5ld0Zyb20sIE5ld1RvPiB7XG4gIHJldHVybiB7XG4gICAgZGVzY3JpcHRpb246IHNlcmlhbGl6ZXIuZGVzY3JpcHRpb24sXG4gICAgZml4ZWRTaXplOiBzZXJpYWxpemVyLmZpeGVkU2l6ZSxcbiAgICBtYXhTaXplOiBzZXJpYWxpemVyLm1heFNpemUsXG4gICAgc2VyaWFsaXplOiAodmFsdWU6IE5ld0Zyb20pID0+IHNlcmlhbGl6ZXIuc2VyaWFsaXplKHVubWFwKHZhbHVlKSksXG4gICAgZGVzZXJpYWxpemU6IChidWZmZXI6IFVpbnQ4QXJyYXksIG9mZnNldCA9IDApID0+IHtcbiAgICAgIGNvbnN0IFt2YWx1ZSwgbGVuZ3RoXSA9IHNlcmlhbGl6ZXIuZGVzZXJpYWxpemUoYnVmZmVyLCBvZmZzZXQpO1xuICAgICAgcmV0dXJuIG1hcFxuICAgICAgICA/IFttYXAodmFsdWUsIGJ1ZmZlciwgb2Zmc2V0KSwgbGVuZ3RoXVxuICAgICAgICA6IFt2YWx1ZSBhcyBhbnksIGxlbmd0aF07XG4gICAgfSxcbiAgfTtcbn1cbiIsICIvKipcbiAqIFJlbW92ZXMgbnVsbCBjaGFyYWN0ZXJzIGZyb20gYSBzdHJpbmcuXG4gKiBAY2F0ZWdvcnkgVXRpbHNcbiAqL1xuZXhwb3J0IGNvbnN0IHJlbW92ZU51bGxDaGFyYWN0ZXJzID0gKHZhbHVlOiBzdHJpbmcpID0+XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb250cm9sLXJlZ2V4XG4gIHZhbHVlLnJlcGxhY2UoL1xcdTAwMDAvZywgJycpO1xuXG4vKipcbiAqIFBhZHMgYSBzdHJpbmcgd2l0aCBudWxsIGNoYXJhY3RlcnMgYXQgdGhlIGVuZC5cbiAqIEBjYXRlZ29yeSBVdGlsc1xuICovXG5leHBvcnQgY29uc3QgcGFkTnVsbENoYXJhY3RlcnMgPSAodmFsdWU6IHN0cmluZywgY2hhcnM6IG51bWJlcikgPT5cbiAgdmFsdWUucGFkRW5kKGNoYXJzLCAnXFx1MDAwMCcpO1xuIiwgImltcG9ydCB0eXBlIHsgU2VyaWFsaXplciB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcbmltcG9ydCB7IHJlbW92ZU51bGxDaGFyYWN0ZXJzIH0gZnJvbSAnLi9udWxsQ2hhcmFjdGVycyc7XG5cbi8qKlxuICogQSBzdHJpbmcgc2VyaWFsaXplciB0aGF0IHVzZXMgVVRGLTggZW5jb2RpbmdcbiAqIHVzaW5nIHRoZSBuYXRpdmUgYFRleHRFbmNvZGVyYCBBUEkuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IGNvbnN0IHV0Zjg6IFNlcmlhbGl6ZXI8c3RyaW5nPiA9IHtcbiAgZGVzY3JpcHRpb246ICd1dGY4JyxcbiAgZml4ZWRTaXplOiBudWxsLFxuICBtYXhTaXplOiBudWxsLFxuICBzZXJpYWxpemUodmFsdWU6IHN0cmluZykge1xuICAgIHJldHVybiBuZXcgVGV4dEVuY29kZXIoKS5lbmNvZGUodmFsdWUpO1xuICB9LFxuICBkZXNlcmlhbGl6ZShidWZmZXIsIG9mZnNldCA9IDApIHtcbiAgICBjb25zdCB2YWx1ZSA9IG5ldyBUZXh0RGVjb2RlcigpLmRlY29kZShidWZmZXIuc2xpY2Uob2Zmc2V0KSk7XG4gICAgcmV0dXJuIFtyZW1vdmVOdWxsQ2hhcmFjdGVycyh2YWx1ZSksIGJ1ZmZlci5sZW5ndGhdO1xuICB9LFxufTtcbiIsICIvKiogQGNhdGVnb3J5IEVycm9ycyAqL1xuZXhwb3J0IGNsYXNzIEludmFsaWRQdWJsaWNLZXlFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nID0gJ0ludmFsaWRQdWJsaWNLZXlFcnJvcic7XG5cbiAgcmVhZG9ubHkgaW52YWxpZFB1YmxpY0tleTogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKGludmFsaWRQdWJsaWNLZXk6IHN0cmluZywgcmVhc29uPzogc3RyaW5nKSB7XG4gICAgcmVhc29uID0gcmVhc29uID8gYC4gJHtyZWFzb259YCA6ICcnO1xuICAgIHN1cGVyKGBUaGUgcHJvdmlkZWQgcHVibGljIGtleSBpcyBpbnZhbGlkOiAke2ludmFsaWRQdWJsaWNLZXl9JHtyZWFzb259YCk7XG4gICAgdGhpcy5pbnZhbGlkUHVibGljS2V5ID0gaW52YWxpZFB1YmxpY0tleTtcbiAgfVxufVxuIiwgImltcG9ydCB7IGJhc2U1OCB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1lbmNvZGluZ3MnO1xuaW1wb3J0IHsgSW52YWxpZFB1YmxpY0tleUVycm9yIH0gZnJvbSAnLi9lcnJvcnMnO1xuXG4vKipcbiAqIFRoZSBhbW91bnQgb2YgYnl0ZXMgaW4gYSBwdWJsaWMga2V5LlxuICogQGNhdGVnb3J5IFNpZ25lcnMgYW5kIFB1YmxpY0tleXNcbiAqL1xuZXhwb3J0IGNvbnN0IFBVQkxJQ19LRVlfTEVOR1RIID0gMzI7XG5cbi8qKlxuICogRGVmaW5lcyBhIHB1YmxpYyBrZXkgYXMgYSBiYXNlNTggc3RyaW5nLlxuICogQGNhdGVnb3J5IFNpZ25lcnMgYW5kIFB1YmxpY0tleXNcbiAqL1xuZXhwb3J0IHR5cGUgUHVibGljS2V5PFRBZGRyZXNzIGV4dGVuZHMgc3RyaW5nID0gc3RyaW5nPiA9IFRBZGRyZXNzICYge1xuICByZWFkb25seSBfX3B1YmxpY0tleTogdW5pcXVlIHN5bWJvbDtcbn07XG5cbi8qKlxuICogRGVmaW5lcyBhIFByb2dyYW0tRGVyaXZlZCBBZGRyZXNzLlxuICpcbiAqIEl0IGlzIGEgcHVibGljIGtleSB3aXRoIHRoZSBidW1wIG51bWJlciB0aGF0IHdhcyB1c2VkXG4gKiB0byBlbnN1cmUgdGhlIGFkZHJlc3MgaXMgbm90IG9uIHRoZSBlZDI1NTE5IGN1cnZlLlxuICpcbiAqIEBjYXRlZ29yeSBTaWduZXJzIGFuZCBQdWJsaWNLZXlzXG4gKi9cbmV4cG9ydCB0eXBlIFBkYTxcbiAgVEFkZHJlc3MgZXh0ZW5kcyBzdHJpbmcgPSBzdHJpbmcsXG4gIFRCdW1wIGV4dGVuZHMgbnVtYmVyID0gbnVtYmVyXG4+ID0gW1B1YmxpY0tleTxUQWRkcmVzcz4sIFRCdW1wXSAmIHsgcmVhZG9ubHkgX19wZGE6IHVuaXF1ZSBzeW1ib2wgfTtcblxuLyoqXG4gKiBBIFVpbnQ4QXJyYXkgdGhhdCByZXByZXNlbnRzIGEgcHVibGljIGtleS5cbiAqIEBjYXRlZ29yeSBTaWduZXJzIGFuZCBQdWJsaWNLZXlzXG4gKi9cbmV4cG9ydCB0eXBlIFB1YmxpY0tleUJ5dGVzID0gVWludDhBcnJheSAmIHtcbiAgcmVhZG9ubHkgX19wdWJsaWNLZXlCeXRlczogdW5pcXVlIHN5bWJvbDtcbn07XG5cbi8qKlxuICogRGVmaW5lcyBhbiBvYmplY3QgdGhhdCBoYXMgYSBwdWJsaWMga2V5LlxuICogQGNhdGVnb3J5IFNpZ25lcnMgYW5kIFB1YmxpY0tleXNcbiAqL1xuZXhwb3J0IHR5cGUgSGFzUHVibGljS2V5PFRBZGRyZXNzIGV4dGVuZHMgc3RyaW5nID0gc3RyaW5nPiA9IHtcbiAgcmVhZG9ubHkgcHVibGljS2V5OiBQdWJsaWNLZXk8VEFkZHJlc3M+O1xufTtcblxuLyoqXG4gKiBEZWZpbmVzIGFuIG9iamVjdCB0aGF0IGNhbiBiZSBjb252ZXJ0ZWQgdG8gYSBiYXNlNTggcHVibGljIGtleS5cbiAqIEBjYXRlZ29yeSBTaWduZXJzIGFuZCBQdWJsaWNLZXlzXG4gKi9cbmV4cG9ydCB0eXBlIExlZ2FjeVdlYjNKc1B1YmxpY0tleTxUQWRkcmVzcyBleHRlbmRzIHN0cmluZyA9IHN0cmluZz4gPSB7XG4gIHRvQmFzZTU4OiAoKSA9PiBUQWRkcmVzcztcbn07XG5cbi8qKlxuICogRGVmaW5lcyBhbGwgdGhlIHBvc3NpYmxlIGlucHV0cyBmb3IgY3JlYXRpbmcgYSBwdWJsaWMga2V5LlxuICogQGNhdGVnb3J5IFNpZ25lcnMgYW5kIFB1YmxpY0tleXNcbiAqL1xuZXhwb3J0IHR5cGUgUHVibGljS2V5SW5wdXQ8VEFkZHJlc3MgZXh0ZW5kcyBzdHJpbmcgPSBzdHJpbmc+ID1cbiAgfCBUQWRkcmVzc1xuICB8IFVpbnQ4QXJyYXlcbiAgfCBbVEFkZHJlc3MsIG51bWJlcl1cbiAgfCB7IHB1YmxpY0tleTogVEFkZHJlc3MgfVxuICB8IExlZ2FjeVdlYjNKc1B1YmxpY0tleTxUQWRkcmVzcz47XG5cbi8qKlxuICogRGVmaW5lcyBhbGwgdGhlIHBvc3NpYmxlIHNhZmUgaW5wdXRzIGZvciBjcmVhdGluZyBhIHB1YmxpYyBrZXkuXG4gKiBUaGF0IGlzLCB0aGV5IGhhdmUgYWxyZWFkeSBiZWVuIHZhbGlkYXRlZCB0byBiZSBvclxuICogdG8gY29udGFpbiBhIHZhbGlkIHB1YmxpYyBrZXkuXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICovXG5leHBvcnQgdHlwZSBTYWZlUHVibGljS2V5SW5wdXQ8VEFkZHJlc3MgZXh0ZW5kcyBzdHJpbmcgPSBzdHJpbmc+ID1cbiAgfCBQdWJsaWNLZXk8VEFkZHJlc3M+XG4gIHwgUHVibGljS2V5Qnl0ZXNcbiAgfCBQZGE8VEFkZHJlc3M+XG4gIHwgSGFzUHVibGljS2V5PFRBZGRyZXNzPlxuICB8IExlZ2FjeVdlYjNKc1B1YmxpY0tleTxUQWRkcmVzcz47XG5cbi8qKlxuICogQ3JlYXRlcyBhIG5ldyBwdWJsaWMga2V5IGZyb20gdGhlIGdpdmVuIGlucHV0LlxuICogQGNhdGVnb3J5IFNpZ25lcnMgYW5kIFB1YmxpY0tleXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHB1YmxpY0tleTxUQWRkcmVzcyBleHRlbmRzIHN0cmluZz4oXG4gIGlucHV0OiBQdWJsaWNLZXlJbnB1dDxUQWRkcmVzcz4sXG4gIGFzc2VydFZhbGlkUHVibGljS2V5PzogdHJ1ZVxuKTogUHVibGljS2V5PFRBZGRyZXNzPjtcbmV4cG9ydCBmdW5jdGlvbiBwdWJsaWNLZXk8VEFkZHJlc3MgZXh0ZW5kcyBzdHJpbmc+KFxuICBpbnB1dDogU2FmZVB1YmxpY0tleUlucHV0PFRBZGRyZXNzPixcbiAgYXNzZXJ0VmFsaWRQdWJsaWNLZXk6IGZhbHNlXG4pOiBQdWJsaWNLZXk8VEFkZHJlc3M+O1xuZXhwb3J0IGZ1bmN0aW9uIHB1YmxpY0tleTxUQWRkcmVzcyBleHRlbmRzIHN0cmluZz4oXG4gIGlucHV0OiBQdWJsaWNLZXlJbnB1dDxUQWRkcmVzcz4gfCBTYWZlUHVibGljS2V5SW5wdXQ8VEFkZHJlc3M+LFxuICBhc3NlcnRWYWxpZFB1YmxpY0tleTogYm9vbGVhbiA9IHRydWVcbik6IFB1YmxpY0tleTxUQWRkcmVzcz4ge1xuICBjb25zdCBrZXkgPSAoKCk6IHN0cmluZyA9PiB7XG4gICAgaWYgKHR5cGVvZiBpbnB1dCA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybiBpbnB1dDtcbiAgICB9XG4gICAgLy8gSGFzUHVibGljS2V5LlxuICAgIGlmICh0eXBlb2YgaW5wdXQgPT09ICdvYmplY3QnICYmICdwdWJsaWNLZXknIGluIGlucHV0KSB7XG4gICAgICByZXR1cm4gaW5wdXQucHVibGljS2V5O1xuICAgIH1cbiAgICAvLyBMZWdhY3lXZWIzSnNQdWJsaWNLZXkuXG4gICAgaWYgKHR5cGVvZiBpbnB1dCA9PT0gJ29iamVjdCcgJiYgJ3RvQmFzZTU4JyBpbiBpbnB1dCkge1xuICAgICAgcmV0dXJuIGlucHV0LnRvQmFzZTU4KCk7XG4gICAgfVxuICAgIC8vIFBkYS5cbiAgICBpZiAoQXJyYXkuaXNBcnJheShpbnB1dCkpIHtcbiAgICAgIHJldHVybiBpbnB1dFswXTtcbiAgICB9XG4gICAgLy8gUHVibGljS2V5Qnl0ZXMuXG4gICAgcmV0dXJuIGJhc2U1OC5kZXNlcmlhbGl6ZShpbnB1dClbMF07XG4gIH0pKCk7XG5cbiAgaWYgKGFzc2VydFZhbGlkUHVibGljS2V5KSB7XG4gICAgYXNzZXJ0UHVibGljS2V5KGtleSk7XG4gIH1cblxuICByZXR1cm4ga2V5IGFzIFB1YmxpY0tleTxUQWRkcmVzcz47XG59XG5cbi8qKlxuICogQ3JlYXRlcyB0aGUgZGVmYXVsdCBwdWJsaWMga2V5IHdoaWNoIGlzIGNvbXBvc2VkIG9mIGFsbCB6ZXJvIGJ5dGVzLlxuICogQGNhdGVnb3J5IFNpZ25lcnMgYW5kIFB1YmxpY0tleXNcbiAqL1xuZXhwb3J0IGNvbnN0IGRlZmF1bHRQdWJsaWNLZXkgPSAoKSA9PlxuICAnMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEnIGFzIFB1YmxpY0tleTwnMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEnPjtcblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBnaXZlbiB2YWx1ZSBpcyBhIHZhbGlkIHB1YmxpYyBrZXkuXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICovXG5leHBvcnQgY29uc3QgaXNQdWJsaWNLZXkgPSA8VEFkZHJlc3MgZXh0ZW5kcyBzdHJpbmc+KFxuICB2YWx1ZTogVEFkZHJlc3Ncbik6IHZhbHVlIGlzIFB1YmxpY0tleTxUQWRkcmVzcz4gPT4ge1xuICB0cnkge1xuICAgIGFzc2VydFB1YmxpY0tleSh2YWx1ZSk7XG4gICAgcmV0dXJuIHRydWU7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59O1xuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGdpdmVuIHZhbHVlIGlzIGEgdmFsaWQgcHJvZ3JhbS1kZXJpdmVkIGFkZHJlc3MuXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICovXG5leHBvcnQgY29uc3QgaXNQZGEgPSA8VEFkZHJlc3MgZXh0ZW5kcyBzdHJpbmcsIFRCdW1wIGV4dGVuZHMgbnVtYmVyPihcbiAgdmFsdWU6IFtUQWRkcmVzcywgVEJ1bXBdXG4pOiB2YWx1ZSBpcyBQZGE8VEFkZHJlc3MsIFRCdW1wPiA9PlxuICBBcnJheS5pc0FycmF5KHZhbHVlKSAmJlxuICB2YWx1ZS5sZW5ndGggPT09IDIgJiZcbiAgdHlwZW9mIHZhbHVlWzFdID09PSAnbnVtYmVyJyAmJlxuICBpc1B1YmxpY0tleSh2YWx1ZVswXSk7XG5cbi8qKlxuICogRW5zdXJlcyB0aGUgZ2l2ZW4gdmFsdWUgaXMgYSB2YWxpZCBwdWJsaWMga2V5LlxuICogQGNhdGVnb3J5IFNpZ25lcnMgYW5kIFB1YmxpY0tleXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydFB1YmxpY0tleTxUQWRkcmVzcyBleHRlbmRzIHN0cmluZz4oXG4gIHZhbHVlOiBUQWRkcmVzc1xuKTogYXNzZXJ0cyB2YWx1ZSBpcyBQdWJsaWNLZXk8VEFkZHJlc3M+IHtcbiAgLy8gQ2hlY2sgdmFsdWUgdHlwZS5cbiAgaWYgKHR5cGVvZiB2YWx1ZSAhPT0gJ3N0cmluZycpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZFB1YmxpY0tleUVycm9yKHZhbHVlLCAnUHVibGljIGtleXMgbXVzdCBiZSBzdHJpbmdzLicpO1xuICB9XG5cbiAgLy8gQ2hlY2sgYmFzZTU4IGVuY29kaW5nIGFuZCBieXRlIGxlbmd0aC5cbiAgcHVibGljS2V5Qnl0ZXModmFsdWUpO1xufVxuXG4vKipcbiAqIERlZHVwbGljYXRlcyB0aGUgZ2l2ZW4gYXJyYXkgb2YgcHVibGljIGtleXMuXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICovXG5leHBvcnQgY29uc3QgdW5pcXVlUHVibGljS2V5cyA9IChwdWJsaWNLZXlzOiBQdWJsaWNLZXlbXSk6IFB1YmxpY0tleVtdID0+IFtcbiAgLi4ubmV3IFNldChwdWJsaWNLZXlzKSxcbl07XG5cbi8qKlxuICogQ29udmVydHMgdGhlIGdpdmVuIHB1YmxpYyBrZXkgdG8gYSBVaW50OEFycmF5LlxuICogVGhyb3dzIGFuIGVycm9yIGlmIHRoZSBwdWJsaWMga2V5IGlzIGFuIGludmFsaWQgYmFzZTU4IHN0cmluZy5cbiAqIEBjYXRlZ29yeSBTaWduZXJzIGFuZCBQdWJsaWNLZXlzXG4gKi9cbmV4cG9ydCBjb25zdCBwdWJsaWNLZXlCeXRlcyA9ICh2YWx1ZTogc3RyaW5nKTogUHVibGljS2V5Qnl0ZXMgPT4ge1xuICAvLyBDaGVjayBzdHJpbmcgbGVuZ3RoIHRvIGF2b2lkIHVubmVjZXNzYXJ5IGJhc2U1OCBlbmNvZGluZy5cbiAgaWYgKHZhbHVlLmxlbmd0aCA8IDMyIHx8IHZhbHVlLmxlbmd0aCA+IDQ0KSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRQdWJsaWNLZXlFcnJvcihcbiAgICAgIHZhbHVlLFxuICAgICAgJ1B1YmxpYyBrZXlzIG11c3QgYmUgYmV0d2VlbiAzMiBhbmQgNDQgY2hhcmFjdGVycy4nXG4gICAgKTtcbiAgfVxuXG4gIC8vIENoZWNrIGJhc2U1OCBlbmNvZGluZy5cbiAgbGV0IGJ5dGVzOiBVaW50OEFycmF5O1xuICB0cnkge1xuICAgIGJ5dGVzID0gYmFzZTU4LnNlcmlhbGl6ZSh2YWx1ZSk7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRQdWJsaWNLZXlFcnJvcihcbiAgICAgIHZhbHVlLFxuICAgICAgJ1B1YmxpYyBrZXlzIG11c3QgYmUgYmFzZTU4IGVuY29kZWQuJ1xuICAgICk7XG4gIH1cblxuICAvLyBDaGVjayBieXRlIGxlbmd0aC5cbiAgaWYgKGJ5dGVzLmxlbmd0aCAhPT0gUFVCTElDX0tFWV9MRU5HVEgpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZFB1YmxpY0tleUVycm9yKFxuICAgICAgdmFsdWUsXG4gICAgICBgUHVibGljIGtleXMgbXVzdCBiZSAke1BVQkxJQ19LRVlfTEVOR1RIfSBieXRlcy5gXG4gICAgKTtcbiAgfVxuXG4gIHJldHVybiBieXRlcyBhcyBQdWJsaWNLZXlCeXRlcztcbn07XG5cbi8qKlxuICogQ29udmVydHMgdGhlIGdpdmVuIHB1YmxpYyBrZXkgdG8gYSBiYXNlNTggc3RyaW5nLlxuICogQGNhdGVnb3J5IFNpZ25lcnMgYW5kIFB1YmxpY0tleXNcbiAqIEBkZXByZWNhdGVkIFB1YmxpYyBrZXlzIGFyZSBub3cgcmVwcmVzZW50ZWQgZGlyZWN0bHkgYXMgYmFzZTU4IHN0cmluZ3MuXG4gKi9cbmV4cG9ydCBjb25zdCBiYXNlNThQdWJsaWNLZXkgPSAoa2V5OiBQdWJsaWNLZXlJbnB1dCk6IHN0cmluZyA9PiBwdWJsaWNLZXkoa2V5KTtcblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBnaXZlbiBwdWJsaWMga2V5cyBhcmUgdGhlIHNhbWUuXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICogQGRlcHJlY2F0ZWQgVXNlIGBsZWZ0ID09PSByaWdodGAgaW5zdGVhZCBub3cgdGhhdCBwdWJsaWMga2V5cyBhcmUgYmFzZTU4IHN0cmluZ3MuXG4gKi9cbmV4cG9ydCBjb25zdCBzYW1lUHVibGljS2V5ID0gKFxuICBsZWZ0OiBQdWJsaWNLZXlJbnB1dCxcbiAgcmlnaHQ6IFB1YmxpY0tleUlucHV0XG4pOiBib29sZWFuID0+IHB1YmxpY0tleShsZWZ0KSA9PT0gcHVibGljS2V5KHJpZ2h0KTtcbiIsICJpbXBvcnQge1xuICBCYXNlU2VyaWFsaXplck9wdGlvbnMsXG4gIFNlcmlhbGl6ZXIsXG59IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcblxuLyoqXG4gKiBEZWZpbmVzIGEgc2VyaWFsaXplciBmb3IgbnVtYmVycyBhbmQgYmlnaW50cy5cbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgdHlwZSBOdW1iZXJTZXJpYWxpemVyID1cbiAgfCBTZXJpYWxpemVyPG51bWJlcj5cbiAgfCBTZXJpYWxpemVyPG51bWJlciB8IGJpZ2ludCwgYmlnaW50PjtcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBvcHRpb25zIGZvciB1OCBhbmQgaTggc2VyaWFsaXplcnMuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IHR5cGUgU2luZ2xlQnl0ZU51bWJlclNlcmlhbGl6ZXJPcHRpb25zID0gQmFzZVNlcmlhbGl6ZXJPcHRpb25zO1xuXG4vKipcbiAqIERlZmluZXMgdGhlIG9wdGlvbnMgZm9yIG51bWJlciBzZXJpYWxpemVycyB0aGF0IHVzZSBtb3JlIHRoYW4gb25lIGJ5dGUuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IHR5cGUgTnVtYmVyU2VyaWFsaXplck9wdGlvbnMgPSBCYXNlU2VyaWFsaXplck9wdGlvbnMgJiB7XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBzZXJpYWxpemVyIHNob3VsZCB1c2UgbGl0dGxlLWVuZGlhbiBvciBiaWctZW5kaWFuIGVuY29kaW5nLlxuICAgKiBAZGVmYXVsdFZhbHVlIGBFbmRpYW4uTGl0dGxlYFxuICAgKi9cbiAgZW5kaWFuPzogRW5kaWFuO1xufTtcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBlbmRpYW5uZXNzIG9mIGEgbnVtYmVyIHNlcmlhbGl6ZXIuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IGVudW0gRW5kaWFuIHtcbiAgTGl0dGxlID0gJ2xlJyxcbiAgQmlnID0gJ2JlJyxcbn1cbiIsICIvKiogQGNhdGVnb3J5IEVycm9ycyAqL1xuZXhwb3J0IGNsYXNzIE51bWJlck91dE9mUmFuZ2VFcnJvciBleHRlbmRzIFJhbmdlRXJyb3Ige1xuICByZWFkb25seSBuYW1lOiBzdHJpbmcgPSAnTnVtYmVyT3V0T2ZSYW5nZUVycm9yJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBzZXJpYWxpemVyOiBzdHJpbmcsXG4gICAgbWluOiBudW1iZXIgfCBiaWdpbnQsXG4gICAgbWF4OiBudW1iZXIgfCBiaWdpbnQsXG4gICAgYWN0dWFsOiBudW1iZXIgfCBiaWdpbnRcbiAgKSB7XG4gICAgc3VwZXIoXG4gICAgICBgU2VyaWFsaXplciBbJHtzZXJpYWxpemVyfV0gZXhwZWN0ZWQgbnVtYmVyIHRvIGJlIGJldHdlZW4gJHttaW59IGFuZCAke21heH0sIGdvdCAke2FjdHVhbH0uYFxuICAgICk7XG4gIH1cbn1cbiIsICJpbXBvcnQge1xuICBEZXNlcmlhbGl6aW5nRW1wdHlCdWZmZXJFcnJvcixcbiAgTm90RW5vdWdoQnl0ZXNFcnJvcixcbiAgU2VyaWFsaXplcixcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWNvcmUnO1xuaW1wb3J0IHtcbiAgRW5kaWFuLFxuICBOdW1iZXJTZXJpYWxpemVyLFxuICBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyxcbiAgU2luZ2xlQnl0ZU51bWJlclNlcmlhbGl6ZXJPcHRpb25zLFxufSBmcm9tICcuL2NvbW1vbic7XG5pbXBvcnQgeyBOdW1iZXJPdXRPZlJhbmdlRXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBudW1iZXJGYWN0b3J5KGlucHV0OiB7XG4gIG5hbWU6IHN0cmluZztcbiAgc2l6ZTogbnVtYmVyO1xuICByYW5nZT86IFtudW1iZXIgfCBiaWdpbnQsIG51bWJlciB8IGJpZ2ludF07XG4gIHNldDogKHZpZXc6IERhdGFWaWV3LCB2YWx1ZTogbnVtYmVyIHwgYmlnaW50LCBsaXR0bGVFbmRpYW4/OiBib29sZWFuKSA9PiB2b2lkO1xuICBnZXQ6ICh2aWV3OiBEYXRhVmlldywgbGl0dGxlRW5kaWFuPzogYm9vbGVhbikgPT4gbnVtYmVyO1xuICBvcHRpb25zOiBTaW5nbGVCeXRlTnVtYmVyU2VyaWFsaXplck9wdGlvbnMgfCBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucztcbn0pOiBTZXJpYWxpemVyPG51bWJlcj47XG5leHBvcnQgZnVuY3Rpb24gbnVtYmVyRmFjdG9yeShpbnB1dDoge1xuICBuYW1lOiBzdHJpbmc7XG4gIHNpemU6IG51bWJlcjtcbiAgcmFuZ2U/OiBbbnVtYmVyIHwgYmlnaW50LCBudW1iZXIgfCBiaWdpbnRdO1xuICBzZXQ6ICh2aWV3OiBEYXRhVmlldywgdmFsdWU6IG51bWJlciB8IGJpZ2ludCwgbGl0dGxlRW5kaWFuPzogYm9vbGVhbikgPT4gdm9pZDtcbiAgZ2V0OiAodmlldzogRGF0YVZpZXcsIGxpdHRsZUVuZGlhbj86IGJvb2xlYW4pID0+IGJpZ2ludDtcbiAgb3B0aW9uczogU2luZ2xlQnl0ZU51bWJlclNlcmlhbGl6ZXJPcHRpb25zIHwgTnVtYmVyU2VyaWFsaXplck9wdGlvbnM7XG59KTogU2VyaWFsaXplcjxudW1iZXIgfCBiaWdpbnQsIGJpZ2ludD47XG5leHBvcnQgZnVuY3Rpb24gbnVtYmVyRmFjdG9yeShpbnB1dDoge1xuICBuYW1lOiBzdHJpbmc7XG4gIHNpemU6IG51bWJlcjtcbiAgcmFuZ2U/OiBbbnVtYmVyIHwgYmlnaW50LCBudW1iZXIgfCBiaWdpbnRdO1xuICBzZXQ6ICh2aWV3OiBEYXRhVmlldywgdmFsdWU6IG51bWJlciB8IGJpZ2ludCwgbGl0dGxlRW5kaWFuPzogYm9vbGVhbikgPT4gdm9pZDtcbiAgZ2V0OiAodmlldzogRGF0YVZpZXcsIGxpdHRsZUVuZGlhbj86IGJvb2xlYW4pID0+IG51bWJlciB8IGJpZ2ludDtcbiAgb3B0aW9uczogU2luZ2xlQnl0ZU51bWJlclNlcmlhbGl6ZXJPcHRpb25zIHwgTnVtYmVyU2VyaWFsaXplck9wdGlvbnM7XG59KTogTnVtYmVyU2VyaWFsaXplciB7XG4gIGxldCBsaXR0bGVFbmRpYW46IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG4gIGxldCBkZWZhdWx0RGVzY3JpcHRpb246IHN0cmluZyA9IGlucHV0Lm5hbWU7XG5cbiAgaWYgKGlucHV0LnNpemUgPiAxKSB7XG4gICAgbGl0dGxlRW5kaWFuID1cbiAgICAgICEoJ2VuZGlhbicgaW4gaW5wdXQub3B0aW9ucykgfHwgaW5wdXQub3B0aW9ucy5lbmRpYW4gPT09IEVuZGlhbi5MaXR0bGU7XG4gICAgZGVmYXVsdERlc2NyaXB0aW9uICs9IGxpdHRsZUVuZGlhbiA/ICcobGUpJyA6ICcoYmUpJztcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgZGVzY3JpcHRpb246IGlucHV0Lm9wdGlvbnMuZGVzY3JpcHRpb24gPz8gZGVmYXVsdERlc2NyaXB0aW9uLFxuICAgIGZpeGVkU2l6ZTogaW5wdXQuc2l6ZSxcbiAgICBtYXhTaXplOiBpbnB1dC5zaXplLFxuICAgIHNlcmlhbGl6ZSh2YWx1ZTogbnVtYmVyIHwgYmlnaW50KTogVWludDhBcnJheSB7XG4gICAgICBpZiAoaW5wdXQucmFuZ2UpIHtcbiAgICAgICAgYXNzZXJ0UmFuZ2UoaW5wdXQubmFtZSwgaW5wdXQucmFuZ2VbMF0sIGlucHV0LnJhbmdlWzFdLCB2YWx1ZSk7XG4gICAgICB9XG4gICAgICBjb25zdCBidWZmZXIgPSBuZXcgQXJyYXlCdWZmZXIoaW5wdXQuc2l6ZSk7XG4gICAgICBpbnB1dC5zZXQobmV3IERhdGFWaWV3KGJ1ZmZlciksIHZhbHVlLCBsaXR0bGVFbmRpYW4pO1xuICAgICAgcmV0dXJuIG5ldyBVaW50OEFycmF5KGJ1ZmZlcik7XG4gICAgfSxcbiAgICBkZXNlcmlhbGl6ZShieXRlcywgb2Zmc2V0ID0gMCk6IFtudW1iZXIgfCBiaWdpbnQsIG51bWJlcl0ge1xuICAgICAgY29uc3Qgc2xpY2UgPSBieXRlcy5zbGljZShvZmZzZXQsIG9mZnNldCArIGlucHV0LnNpemUpO1xuICAgICAgYXNzZXJ0RW5vdWdoQnl0ZXMoJ2k4Jywgc2xpY2UsIGlucHV0LnNpemUpO1xuICAgICAgY29uc3QgdmlldyA9IHRvRGF0YVZpZXcoc2xpY2UpO1xuICAgICAgcmV0dXJuIFtpbnB1dC5nZXQodmlldywgbGl0dGxlRW5kaWFuKSwgb2Zmc2V0ICsgaW5wdXQuc2l6ZV07XG4gICAgfSxcbiAgfSBhcyBOdW1iZXJTZXJpYWxpemVyO1xufVxuXG4vKipcbiAqIEhlbHBlciBmdW5jdGlvbiB0byBlbnN1cmUgdGhhdCB0aGUgYXJyYXkgYnVmZmVyIGlzIGNvbnZlcnRlZCBwcm9wZXJseSBmcm9tIGEgdWludDhhcnJheVxuICogU291cmNlOiBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8zNzIyODI4NS91aW50OGFycmF5LXRvLWFycmF5YnVmZmVyXG4gKiBAcGFyYW0ge1VpbnQ4QXJyYXl9IGFycmF5IFVpbnQ4YXJyYXkgdGhhdCdzIGJlaW5nIGNvbnZlcnRlZCBpbnRvIGFuIGFycmF5IGJ1ZmZlclxuICogQHJldHVybnMge0FycmF5QnVmZmVyfSBBbiBhcnJheSBidWZmZXIgdGhhdCdzIG5lY2Vzc2FyeSB0byBjb25zdHJ1Y3QgYSBkYXRhIHZpZXdcbiAqL1xuZXhwb3J0IGNvbnN0IHRvQXJyYXlCdWZmZXIgPSAoYXJyYXk6IFVpbnQ4QXJyYXkpOiBBcnJheUJ1ZmZlciA9PlxuICBhcnJheS5idWZmZXIuc2xpY2UoYXJyYXkuYnl0ZU9mZnNldCwgYXJyYXkuYnl0ZUxlbmd0aCArIGFycmF5LmJ5dGVPZmZzZXQpO1xuXG5leHBvcnQgY29uc3QgdG9EYXRhVmlldyA9IChhcnJheTogVWludDhBcnJheSk6IERhdGFWaWV3ID0+XG4gIG5ldyBEYXRhVmlldyh0b0FycmF5QnVmZmVyKGFycmF5KSk7XG5cbmV4cG9ydCBjb25zdCBhc3NlcnRSYW5nZSA9IChcbiAgc2VyaWFsaXplcjogc3RyaW5nLFxuICBtaW46IG51bWJlciB8IGJpZ2ludCxcbiAgbWF4OiBudW1iZXIgfCBiaWdpbnQsXG4gIHZhbHVlOiBudW1iZXIgfCBiaWdpbnRcbikgPT4ge1xuICBpZiAodmFsdWUgPCBtaW4gfHwgdmFsdWUgPiBtYXgpIHtcbiAgICB0aHJvdyBuZXcgTnVtYmVyT3V0T2ZSYW5nZUVycm9yKHNlcmlhbGl6ZXIsIG1pbiwgbWF4LCB2YWx1ZSk7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBhc3NlcnRFbm91Z2hCeXRlcyA9IChcbiAgc2VyaWFsaXplcjogc3RyaW5nLFxuICBieXRlczogVWludDhBcnJheSxcbiAgZXhwZWN0ZWQ6IG51bWJlclxuKSA9PiB7XG4gIGlmIChieXRlcy5sZW5ndGggPT09IDApIHtcbiAgICB0aHJvdyBuZXcgRGVzZXJpYWxpemluZ0VtcHR5QnVmZmVyRXJyb3Ioc2VyaWFsaXplcik7XG4gIH1cbiAgaWYgKGJ5dGVzLmxlbmd0aCA8IGV4cGVjdGVkKSB7XG4gICAgdGhyb3cgbmV3IE5vdEVub3VnaEJ5dGVzRXJyb3Ioc2VyaWFsaXplciwgZXhwZWN0ZWQsIGJ5dGVzLmxlbmd0aCk7XG4gIH1cbn07XG4iLCAiaW1wb3J0IHsgU2VyaWFsaXplciB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcbmltcG9ydCB7IE51bWJlclNlcmlhbGl6ZXJPcHRpb25zIH0gZnJvbSAnLi9jb21tb24nO1xuaW1wb3J0IHsgbnVtYmVyRmFjdG9yeSB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY29uc3QgZjMyID0gKFxuICBvcHRpb25zOiBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyA9IHt9XG4pOiBTZXJpYWxpemVyPG51bWJlcj4gPT5cbiAgbnVtYmVyRmFjdG9yeSh7XG4gICAgbmFtZTogJ2YzMicsXG4gICAgc2l6ZTogNCxcbiAgICBzZXQ6ICh2aWV3LCB2YWx1ZSwgbGUpID0+IHZpZXcuc2V0RmxvYXQzMigwLCBOdW1iZXIodmFsdWUpLCBsZSksXG4gICAgZ2V0OiAodmlldywgbGUpID0+IHZpZXcuZ2V0RmxvYXQzMigwLCBsZSksXG4gICAgb3B0aW9ucyxcbiAgfSk7XG4iLCAiaW1wb3J0IHsgU2VyaWFsaXplciB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcbmltcG9ydCB7IE51bWJlclNlcmlhbGl6ZXJPcHRpb25zIH0gZnJvbSAnLi9jb21tb24nO1xuaW1wb3J0IHsgbnVtYmVyRmFjdG9yeSB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY29uc3QgZjY0ID0gKFxuICBvcHRpb25zOiBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyA9IHt9XG4pOiBTZXJpYWxpemVyPG51bWJlcj4gPT5cbiAgbnVtYmVyRmFjdG9yeSh7XG4gICAgbmFtZTogJ2Y2NCcsXG4gICAgc2l6ZTogOCxcbiAgICBzZXQ6ICh2aWV3LCB2YWx1ZSwgbGUpID0+IHZpZXcuc2V0RmxvYXQ2NCgwLCBOdW1iZXIodmFsdWUpLCBsZSksXG4gICAgZ2V0OiAodmlldywgbGUpID0+IHZpZXcuZ2V0RmxvYXQ2NCgwLCBsZSksXG4gICAgb3B0aW9ucyxcbiAgfSk7XG4iLCAiaW1wb3J0IHsgU2VyaWFsaXplciB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcbmltcG9ydCB7IFNpbmdsZUJ5dGVOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyB9IGZyb20gJy4vY29tbW9uJztcbmltcG9ydCB7IG51bWJlckZhY3RvcnkgfSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IGk4ID0gKFxuICBvcHRpb25zOiBTaW5nbGVCeXRlTnVtYmVyU2VyaWFsaXplck9wdGlvbnMgPSB7fVxuKTogU2VyaWFsaXplcjxudW1iZXI+ID0+XG4gIG51bWJlckZhY3Rvcnkoe1xuICAgIG5hbWU6ICdpOCcsXG4gICAgc2l6ZTogMSxcbiAgICByYW5nZTogWy1OdW1iZXIoJzB4N2YnKSAtIDEsIE51bWJlcignMHg3ZicpXSxcbiAgICBzZXQ6ICh2aWV3LCB2YWx1ZSkgPT4gdmlldy5zZXRJbnQ4KDAsIE51bWJlcih2YWx1ZSkpLFxuICAgIGdldDogKHZpZXcpID0+IHZpZXcuZ2V0SW50OCgwKSxcbiAgICBvcHRpb25zLFxuICB9KTtcbiIsICJpbXBvcnQgeyBTZXJpYWxpemVyIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWNvcmUnO1xuaW1wb3J0IHsgTnVtYmVyU2VyaWFsaXplck9wdGlvbnMgfSBmcm9tICcuL2NvbW1vbic7XG5pbXBvcnQgeyBudW1iZXJGYWN0b3J5IH0gZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjb25zdCBpMTYgPSAoXG4gIG9wdGlvbnM6IE51bWJlclNlcmlhbGl6ZXJPcHRpb25zID0ge31cbik6IFNlcmlhbGl6ZXI8bnVtYmVyPiA9PlxuICBudW1iZXJGYWN0b3J5KHtcbiAgICBuYW1lOiAnaTE2JyxcbiAgICBzaXplOiAyLFxuICAgIHJhbmdlOiBbLU51bWJlcignMHg3ZmZmJykgLSAxLCBOdW1iZXIoJzB4N2ZmZicpXSxcbiAgICBzZXQ6ICh2aWV3LCB2YWx1ZSwgbGUpID0+IHZpZXcuc2V0SW50MTYoMCwgTnVtYmVyKHZhbHVlKSwgbGUpLFxuICAgIGdldDogKHZpZXcsIGxlKSA9PiB2aWV3LmdldEludDE2KDAsIGxlKSxcbiAgICBvcHRpb25zLFxuICB9KTtcbiIsICJpbXBvcnQgeyBTZXJpYWxpemVyIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWNvcmUnO1xuaW1wb3J0IHsgTnVtYmVyU2VyaWFsaXplck9wdGlvbnMgfSBmcm9tICcuL2NvbW1vbic7XG5pbXBvcnQgeyBudW1iZXJGYWN0b3J5IH0gZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjb25zdCBpMzIgPSAoXG4gIG9wdGlvbnM6IE51bWJlclNlcmlhbGl6ZXJPcHRpb25zID0ge31cbik6IFNlcmlhbGl6ZXI8bnVtYmVyPiA9PlxuICBudW1iZXJGYWN0b3J5KHtcbiAgICBuYW1lOiAnaTMyJyxcbiAgICBzaXplOiA0LFxuICAgIHJhbmdlOiBbLU51bWJlcignMHg3ZmZmZmZmZicpIC0gMSwgTnVtYmVyKCcweDdmZmZmZmZmJyldLFxuICAgIHNldDogKHZpZXcsIHZhbHVlLCBsZSkgPT4gdmlldy5zZXRJbnQzMigwLCBOdW1iZXIodmFsdWUpLCBsZSksXG4gICAgZ2V0OiAodmlldywgbGUpID0+IHZpZXcuZ2V0SW50MzIoMCwgbGUpLFxuICAgIG9wdGlvbnMsXG4gIH0pO1xuIiwgImltcG9ydCB7IFNlcmlhbGl6ZXIgfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQgeyBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyB9IGZyb20gJy4vY29tbW9uJztcbmltcG9ydCB7IG51bWJlckZhY3RvcnkgfSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IGk2NCA9IChcbiAgb3B0aW9uczogTnVtYmVyU2VyaWFsaXplck9wdGlvbnMgPSB7fVxuKTogU2VyaWFsaXplcjxudW1iZXIgfCBiaWdpbnQsIGJpZ2ludD4gPT5cbiAgbnVtYmVyRmFjdG9yeSh7XG4gICAgbmFtZTogJ2k2NCcsXG4gICAgc2l6ZTogOCxcbiAgICByYW5nZTogWy1CaWdJbnQoJzB4N2ZmZmZmZmZmZmZmZmZmZicpIC0gMW4sIEJpZ0ludCgnMHg3ZmZmZmZmZmZmZmZmZmZmJyldLFxuICAgIHNldDogKHZpZXcsIHZhbHVlLCBsZSkgPT4gdmlldy5zZXRCaWdJbnQ2NCgwLCBCaWdJbnQodmFsdWUpLCBsZSksXG4gICAgZ2V0OiAodmlldywgbGUpID0+IHZpZXcuZ2V0QmlnSW50NjQoMCwgbGUpLFxuICAgIG9wdGlvbnMsXG4gIH0pO1xuIiwgIi8qIGVzbGludC1kaXNhYmxlIG5vLWJpdHdpc2UgKi9cbmltcG9ydCB7IFNlcmlhbGl6ZXIgfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQgeyBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyB9IGZyb20gJy4vY29tbW9uJztcbmltcG9ydCB7IG51bWJlckZhY3RvcnkgfSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IGkxMjggPSAoXG4gIG9wdGlvbnM6IE51bWJlclNlcmlhbGl6ZXJPcHRpb25zID0ge31cbik6IFNlcmlhbGl6ZXI8bnVtYmVyIHwgYmlnaW50LCBiaWdpbnQ+ID0+XG4gIG51bWJlckZhY3Rvcnkoe1xuICAgIG5hbWU6ICdpMTI4JyxcbiAgICBzaXplOiAxNixcbiAgICByYW5nZTogW1xuICAgICAgLUJpZ0ludCgnMHg3ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZicpIC0gMW4sXG4gICAgICBCaWdJbnQoJzB4N2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYnKSxcbiAgICBdLFxuICAgIHNldDogKHZpZXcsIHZhbHVlLCBsZSkgPT4ge1xuICAgICAgY29uc3QgbGVmdE9mZnNldCA9IGxlID8gOCA6IDA7XG4gICAgICBjb25zdCByaWdodE9mZnNldCA9IGxlID8gMCA6IDg7XG4gICAgICBjb25zdCByaWdodE1hc2sgPSAweGZmZmZmZmZmZmZmZmZmZmZuO1xuICAgICAgdmlldy5zZXRCaWdJbnQ2NChsZWZ0T2Zmc2V0LCBCaWdJbnQodmFsdWUpID4+IDY0biwgbGUpO1xuICAgICAgdmlldy5zZXRCaWdVaW50NjQocmlnaHRPZmZzZXQsIEJpZ0ludCh2YWx1ZSkgJiByaWdodE1hc2ssIGxlKTtcbiAgICB9LFxuICAgIGdldDogKHZpZXcsIGxlKSA9PiB7XG4gICAgICBjb25zdCBsZWZ0T2Zmc2V0ID0gbGUgPyA4IDogMDtcbiAgICAgIGNvbnN0IHJpZ2h0T2Zmc2V0ID0gbGUgPyAwIDogODtcbiAgICAgIGNvbnN0IGxlZnQgPSB2aWV3LmdldEJpZ0ludDY0KGxlZnRPZmZzZXQsIGxlKTtcbiAgICAgIGNvbnN0IHJpZ2h0ID0gdmlldy5nZXRCaWdVaW50NjQocmlnaHRPZmZzZXQsIGxlKTtcbiAgICAgIHJldHVybiAobGVmdCA8PCA2NG4pICsgcmlnaHQ7XG4gICAgfSxcbiAgICBvcHRpb25zLFxuICB9KTtcbiIsICJpbXBvcnQgeyBTZXJpYWxpemVyIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWNvcmUnO1xuaW1wb3J0IHsgU2luZ2xlQnl0ZU51bWJlclNlcmlhbGl6ZXJPcHRpb25zIH0gZnJvbSAnLi9jb21tb24nO1xuaW1wb3J0IHsgbnVtYmVyRmFjdG9yeSB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY29uc3QgdTggPSAoXG4gIG9wdGlvbnM6IFNpbmdsZUJ5dGVOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyA9IHt9XG4pOiBTZXJpYWxpemVyPG51bWJlcj4gPT5cbiAgbnVtYmVyRmFjdG9yeSh7XG4gICAgbmFtZTogJ3U4JyxcbiAgICBzaXplOiAxLFxuICAgIHJhbmdlOiBbMCwgTnVtYmVyKCcweGZmJyldLFxuICAgIHNldDogKHZpZXcsIHZhbHVlKSA9PiB2aWV3LnNldFVpbnQ4KDAsIE51bWJlcih2YWx1ZSkpLFxuICAgIGdldDogKHZpZXcpID0+IHZpZXcuZ2V0VWludDgoMCksXG4gICAgb3B0aW9ucyxcbiAgfSk7XG4iLCAiaW1wb3J0IHsgU2VyaWFsaXplciB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcbmltcG9ydCB7IE51bWJlclNlcmlhbGl6ZXJPcHRpb25zIH0gZnJvbSAnLi9jb21tb24nO1xuaW1wb3J0IHsgbnVtYmVyRmFjdG9yeSB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY29uc3QgdTE2ID0gKFxuICBvcHRpb25zOiBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyA9IHt9XG4pOiBTZXJpYWxpemVyPG51bWJlcj4gPT5cbiAgbnVtYmVyRmFjdG9yeSh7XG4gICAgbmFtZTogJ3UxNicsXG4gICAgc2l6ZTogMixcbiAgICByYW5nZTogWzAsIE51bWJlcignMHhmZmZmJyldLFxuICAgIHNldDogKHZpZXcsIHZhbHVlLCBsZSkgPT4gdmlldy5zZXRVaW50MTYoMCwgTnVtYmVyKHZhbHVlKSwgbGUpLFxuICAgIGdldDogKHZpZXcsIGxlKSA9PiB2aWV3LmdldFVpbnQxNigwLCBsZSksXG4gICAgb3B0aW9ucyxcbiAgfSk7XG4iLCAiaW1wb3J0IHsgU2VyaWFsaXplciB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcbmltcG9ydCB7IE51bWJlclNlcmlhbGl6ZXJPcHRpb25zIH0gZnJvbSAnLi9jb21tb24nO1xuaW1wb3J0IHsgbnVtYmVyRmFjdG9yeSB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY29uc3QgdTMyID0gKFxuICBvcHRpb25zOiBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyA9IHt9XG4pOiBTZXJpYWxpemVyPG51bWJlcj4gPT5cbiAgbnVtYmVyRmFjdG9yeSh7XG4gICAgbmFtZTogJ3UzMicsXG4gICAgc2l6ZTogNCxcbiAgICByYW5nZTogWzAsIE51bWJlcignMHhmZmZmZmZmZicpXSxcbiAgICBzZXQ6ICh2aWV3LCB2YWx1ZSwgbGUpID0+IHZpZXcuc2V0VWludDMyKDAsIE51bWJlcih2YWx1ZSksIGxlKSxcbiAgICBnZXQ6ICh2aWV3LCBsZSkgPT4gdmlldy5nZXRVaW50MzIoMCwgbGUpLFxuICAgIG9wdGlvbnMsXG4gIH0pO1xuIiwgImltcG9ydCB7IFNlcmlhbGl6ZXIgfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQgeyBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyB9IGZyb20gJy4vY29tbW9uJztcbmltcG9ydCB7IG51bWJlckZhY3RvcnkgfSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IHU2NCA9IChcbiAgb3B0aW9uczogTnVtYmVyU2VyaWFsaXplck9wdGlvbnMgPSB7fVxuKTogU2VyaWFsaXplcjxudW1iZXIgfCBiaWdpbnQsIGJpZ2ludD4gPT5cbiAgbnVtYmVyRmFjdG9yeSh7XG4gICAgbmFtZTogJ3U2NCcsXG4gICAgc2l6ZTogOCxcbiAgICByYW5nZTogWzAsIEJpZ0ludCgnMHhmZmZmZmZmZmZmZmZmZmZmJyldLFxuICAgIHNldDogKHZpZXcsIHZhbHVlLCBsZSkgPT4gdmlldy5zZXRCaWdVaW50NjQoMCwgQmlnSW50KHZhbHVlKSwgbGUpLFxuICAgIGdldDogKHZpZXcsIGxlKSA9PiB2aWV3LmdldEJpZ1VpbnQ2NCgwLCBsZSksXG4gICAgb3B0aW9ucyxcbiAgfSk7XG4iLCAiLyogZXNsaW50LWRpc2FibGUgbm8tYml0d2lzZSAqL1xuaW1wb3J0IHsgU2VyaWFsaXplciB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcbmltcG9ydCB7IE51bWJlclNlcmlhbGl6ZXJPcHRpb25zIH0gZnJvbSAnLi9jb21tb24nO1xuaW1wb3J0IHsgbnVtYmVyRmFjdG9yeSB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY29uc3QgdTEyOCA9IChcbiAgb3B0aW9uczogTnVtYmVyU2VyaWFsaXplck9wdGlvbnMgPSB7fVxuKTogU2VyaWFsaXplcjxudW1iZXIgfCBiaWdpbnQsIGJpZ2ludD4gPT5cbiAgbnVtYmVyRmFjdG9yeSh7XG4gICAgbmFtZTogJ3UxMjgnLFxuICAgIHNpemU6IDE2LFxuICAgIHJhbmdlOiBbMCwgQmlnSW50KCcweGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmJyldLFxuICAgIHNldDogKHZpZXcsIHZhbHVlLCBsZSkgPT4ge1xuICAgICAgY29uc3QgbGVmdE9mZnNldCA9IGxlID8gOCA6IDA7XG4gICAgICBjb25zdCByaWdodE9mZnNldCA9IGxlID8gMCA6IDg7XG4gICAgICBjb25zdCByaWdodE1hc2sgPSAweGZmZmZmZmZmZmZmZmZmZmZuO1xuICAgICAgdmlldy5zZXRCaWdVaW50NjQobGVmdE9mZnNldCwgQmlnSW50KHZhbHVlKSA+PiA2NG4sIGxlKTtcbiAgICAgIHZpZXcuc2V0QmlnVWludDY0KHJpZ2h0T2Zmc2V0LCBCaWdJbnQodmFsdWUpICYgcmlnaHRNYXNrLCBsZSk7XG4gICAgfSxcbiAgICBnZXQ6ICh2aWV3LCBsZSkgPT4ge1xuICAgICAgY29uc3QgbGVmdE9mZnNldCA9IGxlID8gOCA6IDA7XG4gICAgICBjb25zdCByaWdodE9mZnNldCA9IGxlID8gMCA6IDg7XG4gICAgICBjb25zdCBsZWZ0ID0gdmlldy5nZXRCaWdVaW50NjQobGVmdE9mZnNldCwgbGUpO1xuICAgICAgY29uc3QgcmlnaHQgPSB2aWV3LmdldEJpZ1VpbnQ2NChyaWdodE9mZnNldCwgbGUpO1xuICAgICAgcmV0dXJuIChsZWZ0IDw8IDY0bikgKyByaWdodDtcbiAgICB9LFxuICAgIG9wdGlvbnMsXG4gIH0pO1xuIiwgIi8qIGVzbGludC1kaXNhYmxlIG5vLWJpdHdpc2UgKi9cbmltcG9ydCB7XG4gIEJhc2VTZXJpYWxpemVyT3B0aW9ucyxcbiAgU2VyaWFsaXplcixcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWNvcmUnO1xuaW1wb3J0IHsgYXNzZXJ0UmFuZ2UgfSBmcm9tICcuL3V0aWxzJztcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBvcHRpb25zIGZvciB0aGUgc2hvcnRVMTYgc2VyaWFsaXplci5cbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgdHlwZSBTaG9ydFUxNlNlcmlhbGl6ZXJPcHRpb25zID0gQmFzZVNlcmlhbGl6ZXJPcHRpb25zO1xuXG4vKipcbiAqIFNhbWUgYXMgdTE2LCBidXQgc2VyaWFsaXplZCB3aXRoIDEgdG8gMyBieXRlcy5cbiAqXG4gKiBJZiB0aGUgdmFsdWUgaXMgYWJvdmUgMHg3ZiwgdGhlIHRvcCBiaXQgaXMgc2V0IGFuZCB0aGUgcmVtYWluaW5nXG4gKiB2YWx1ZSBpcyBzdG9yZWQgaW4gdGhlIG5leHQgYnl0ZXMuIEVhY2ggYnl0ZSBmb2xsb3dzIHRoZSBzYW1lXG4gKiBwYXR0ZXJuIHVudGlsIHRoZSAzcmQgYnl0ZS4gVGhlIDNyZCBieXRlLCBpZiBuZWVkZWQsIHVzZXNcbiAqIGFsbCA4IGJpdHMgdG8gc3RvcmUgdGhlIGxhc3QgYnl0ZSBvZiB0aGUgb3JpZ2luYWwgdmFsdWUuXG4gKlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBzaG9ydFUxNiA9IChcbiAgb3B0aW9uczogU2hvcnRVMTZTZXJpYWxpemVyT3B0aW9ucyA9IHt9XG4pOiBTZXJpYWxpemVyPG51bWJlcj4gPT4gKHtcbiAgZGVzY3JpcHRpb246IG9wdGlvbnMuZGVzY3JpcHRpb24gPz8gJ3Nob3J0VTE2JyxcbiAgZml4ZWRTaXplOiBudWxsLFxuICBtYXhTaXplOiAzLFxuICBzZXJpYWxpemU6ICh2YWx1ZTogbnVtYmVyKTogVWludDhBcnJheSA9PiB7XG4gICAgYXNzZXJ0UmFuZ2UoJ3Nob3J0VTE2JywgMCwgNjU1MzUsIHZhbHVlKTtcbiAgICBjb25zdCBieXRlcyA9IFswXTtcbiAgICBmb3IgKGxldCBpaSA9IDA7IDsgaWkgKz0gMSkge1xuICAgICAgLy8gU2hpZnQgdGhlIGJpdHMgb2YgdGhlIHZhbHVlIG92ZXIgc3VjaCB0aGF0IHRoZSBuZXh0IDcgYml0cyBhcmUgYXQgdGhlIHJpZ2h0IGVkZ2UuXG4gICAgICBjb25zdCBhbGlnbmVkVmFsdWUgPSB2YWx1ZSA+PiAoaWkgKiA3KTtcbiAgICAgIGlmIChhbGlnbmVkVmFsdWUgPT09IDApIHtcbiAgICAgICAgLy8gTm8gbW9yZSBiaXRzIHRvIGNvbnN1bWUuXG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgLy8gRXh0cmFjdCB0aG9zZSA3IGJpdHMgdXNpbmcgYSBtYXNrLlxuICAgICAgY29uc3QgbmV4dFNldmVuQml0cyA9IDBiMTExMTExMSAmIGFsaWduZWRWYWx1ZTtcbiAgICAgIGJ5dGVzW2lpXSA9IG5leHRTZXZlbkJpdHM7XG4gICAgICBpZiAoaWkgPiAwKSB7XG4gICAgICAgIC8vIFNldCB0aGUgY29udGludWF0aW9uIGJpdCBvZiB0aGUgcHJldmlvdXMgc2xpY2UuXG4gICAgICAgIGJ5dGVzW2lpIC0gMV0gfD0gMGIxMDAwMDAwMDtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG5ldyBVaW50OEFycmF5KGJ5dGVzKTtcbiAgfSxcbiAgZGVzZXJpYWxpemU6IChieXRlczogVWludDhBcnJheSwgb2Zmc2V0ID0gMCk6IFtudW1iZXIsIG51bWJlcl0gPT4ge1xuICAgIGxldCB2YWx1ZSA9IDA7XG4gICAgbGV0IGJ5dGVDb3VudCA9IDA7XG4gICAgd2hpbGUgKFxuICAgICAgKytieXRlQ291bnQgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby1wbHVzcGx1c1xuICAgICkge1xuICAgICAgY29uc3QgYnl0ZUluZGV4ID0gYnl0ZUNvdW50IC0gMTtcbiAgICAgIGNvbnN0IGN1cnJlbnRCeXRlID0gYnl0ZXNbb2Zmc2V0ICsgYnl0ZUluZGV4XTtcbiAgICAgIGNvbnN0IG5leHRTZXZlbkJpdHMgPSAwYjExMTExMTEgJiBjdXJyZW50Qnl0ZTtcbiAgICAgIC8vIEluc2VydCB0aGUgbmV4dCBncm91cCBvZiBzZXZlbiBiaXRzIGludG8gdGhlIGNvcnJlY3Qgc2xvdCBvZiB0aGUgb3V0cHV0IHZhbHVlLlxuICAgICAgdmFsdWUgfD0gbmV4dFNldmVuQml0cyA8PCAoYnl0ZUluZGV4ICogNyk7XG4gICAgICBpZiAoKGN1cnJlbnRCeXRlICYgMGIxMDAwMDAwMCkgPT09IDApIHtcbiAgICAgICAgLy8gVGhpcyBieXRlIGRvZXMgbm90IGhhdmUgaXRzIGNvbnRpbnVhdGlvbiBiaXQgc2V0LiBXZSdyZSBkb25lLlxuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIFt2YWx1ZSwgb2Zmc2V0ICsgYnl0ZUNvdW50XTtcbiAgfSxcbn0pO1xuIiwgIi8qKiBAY2F0ZWdvcnkgRXJyb3JzICovXG5leHBvcnQgY2xhc3MgSW52YWxpZE51bWJlck9mSXRlbXNFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgcmVhZG9ubHkgbmFtZSA9ICdJbnZhbGlkTnVtYmVyT2ZJdGVtc0Vycm9yJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBzZXJpYWxpemVyOiBzdHJpbmcsXG4gICAgZXhwZWN0ZWQ6IG51bWJlciB8IGJpZ2ludCxcbiAgICBhY3R1YWw6IG51bWJlciB8IGJpZ2ludFxuICApIHtcbiAgICBzdXBlcihgRXhwZWN0ZWQgWyR7c2VyaWFsaXplcn1dIHRvIGhhdmUgJHtleHBlY3RlZH0gaXRlbXMsIGdvdCAke2FjdHVhbH0uYCk7XG4gIH1cbn1cblxuLyoqIEBjYXRlZ29yeSBFcnJvcnMgKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkQXJyYXlMaWtlUmVtYWluZGVyU2l6ZUVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICByZWFkb25seSBuYW1lID0gJ0ludmFsaWRBcnJheUxpa2VSZW1haW5kZXJTaXplRXJyb3InO1xuXG4gIGNvbnN0cnVjdG9yKHJlbWFpbmRlclNpemU6IG51bWJlciB8IGJpZ2ludCwgaXRlbVNpemU6IG51bWJlciB8IGJpZ2ludCkge1xuICAgIHN1cGVyKFxuICAgICAgYFRoZSByZW1haW5kZXIgb2YgdGhlIGJ1ZmZlciAoJHtyZW1haW5kZXJTaXplfSBieXRlcykgY2Fubm90IGJlIHNwbGl0IGludG8gY2h1bmtzIG9mICR7aXRlbVNpemV9IGJ5dGVzLiBgICtcbiAgICAgICAgYFNlcmlhbGl6ZXJzIG9mIFwicmVtYWluZGVyXCIgc2l6ZSBtdXN0IGhhdmUgYSByZW1haW5kZXIgdGhhdCBpcyBhIG11bHRpcGxlIG9mIGl0cyBpdGVtIHNpemUuIGAgK1xuICAgICAgICBgSW4gb3RoZXIgd29yZHMsICR7cmVtYWluZGVyU2l6ZX0gbW9kdWxvICR7aXRlbVNpemV9IHNob3VsZCBiZSBlcXVhbCB0byB6ZXJvLmBcbiAgICApO1xuICB9XG59XG5cbi8qKiBAY2F0ZWdvcnkgRXJyb3JzICovXG5leHBvcnQgY2xhc3MgVW5yZWNvZ25pemVkQXJyYXlMaWtlU2VyaWFsaXplclNpemVFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgcmVhZG9ubHkgbmFtZSA9ICdVbnJlY29nbml6ZWRBcnJheUxpa2VTZXJpYWxpemVyU2l6ZUVycm9yJztcblxuICBjb25zdHJ1Y3RvcihzaXplOiBuZXZlcikge1xuICAgIHN1cGVyKGBVbnJlY29nbml6ZWQgYXJyYXktbGlrZSBzZXJpYWxpemVyIHNpemU6ICR7SlNPTi5zdHJpbmdpZnkoc2l6ZSl9YCk7XG4gIH1cbn1cblxuLyoqIEBjYXRlZ29yeSBFcnJvcnMgKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkRGF0YUVudW1WYXJpYW50RXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIHJlYWRvbmx5IG5hbWUgPSAnSW52YWxpZERhdGFFbnVtVmFyaWFudEVycm9yJztcblxuICBjb25zdHJ1Y3RvcihpbnZhbGlkVmFyaWFudDogc3RyaW5nLCB2YWxpZFZhcmlhbnRzOiBzdHJpbmdbXSkge1xuICAgIHN1cGVyKFxuICAgICAgYEludmFsaWQgZGF0YSBlbnVtIHZhcmlhbnQuIGAgK1xuICAgICAgICBgRXhwZWN0ZWQgb25lIG9mIFske3ZhbGlkVmFyaWFudHMuam9pbignLCAnKX1dLCBgICtcbiAgICAgICAgYGdvdCBcIiR7aW52YWxpZFZhcmlhbnR9XCIuYFxuICAgICk7XG4gIH1cbn1cblxuLyoqIEBjYXRlZ29yeSBFcnJvcnMgKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkU2NhbGFyRW51bVZhcmlhbnRFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgcmVhZG9ubHkgbmFtZSA9ICdJbnZhbGlkU2NhbGFyRW51bVZhcmlhbnRFcnJvcic7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgaW52YWxpZFZhcmlhbnQ6IHN0cmluZyB8IG51bWJlciB8IGJpZ2ludCxcbiAgICB2YWxpZFZhcmlhbnRzOiBzdHJpbmdbXSxcbiAgICBtaW46IG51bWJlciB8IGJpZ2ludCxcbiAgICBtYXg6IG51bWJlciB8IGJpZ2ludFxuICApIHtcbiAgICBzdXBlcihcbiAgICAgIGBJbnZhbGlkIHNjYWxhciBlbnVtIHZhcmlhbnQuIGAgK1xuICAgICAgICBgRXhwZWN0ZWQgb25lIG9mIFske3ZhbGlkVmFyaWFudHMuam9pbignLCAnKX1dIGAgK1xuICAgICAgICBgb3IgYSBudW1iZXIgYmV0d2VlbiAke21pbn0gYW5kICR7bWF4fSwgYCArXG4gICAgICAgIGBnb3QgXCIke2ludmFsaWRWYXJpYW50fVwiLmBcbiAgICApO1xuICB9XG59XG5cbi8qKiBAY2F0ZWdvcnkgRXJyb3JzICovXG5leHBvcnQgY2xhc3MgRW51bURpc2NyaW1pbmF0b3JPdXRPZlJhbmdlRXJyb3IgZXh0ZW5kcyBSYW5nZUVycm9yIHtcbiAgcmVhZG9ubHkgbmFtZSA9ICdFbnVtRGlzY3JpbWluYXRvck91dE9mUmFuZ2VFcnJvcic7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgZGlzY3JpbWluYXRvcjogbnVtYmVyIHwgYmlnaW50LFxuICAgIG1pbjogbnVtYmVyIHwgYmlnaW50LFxuICAgIG1heDogbnVtYmVyIHwgYmlnaW50XG4gICkge1xuICAgIHN1cGVyKFxuICAgICAgYEVudW0gZGlzY3JpbWluYXRvciBvdXQgb2YgcmFuZ2UuIGAgK1xuICAgICAgICBgRXhwZWN0ZWQgYSBudW1iZXIgYmV0d2VlbiAke21pbn0gYW5kICR7bWF4fSwgZ290ICR7ZGlzY3JpbWluYXRvcn0uYFxuICAgICk7XG4gIH1cbn1cbiIsICJleHBvcnQgZnVuY3Rpb24gc3VtU2VyaWFsaXplclNpemVzKHNpemVzOiAobnVtYmVyIHwgbnVsbClbXSk6IG51bWJlciB8IG51bGwge1xuICByZXR1cm4gc2l6ZXMucmVkdWNlKFxuICAgIChhbGwsIHNpemUpID0+IChhbGwgPT09IG51bGwgfHwgc2l6ZSA9PT0gbnVsbCA/IG51bGwgOiBhbGwgKyBzaXplKSxcbiAgICAwIGFzIG51bWJlciB8IG51bGxcbiAgKTtcbn1cbiIsICJpbXBvcnQgeyBFeHBlY3RlZEZpeGVkU2l6ZVNlcmlhbGl6ZXJFcnJvciB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcbmltcG9ydCB7IEFycmF5TGlrZVNlcmlhbGl6ZXJTaXplIH0gZnJvbSAnLi9hcnJheUxpa2VTZXJpYWxpemVyU2l6ZSc7XG5pbXBvcnQge1xuICBJbnZhbGlkQXJyYXlMaWtlUmVtYWluZGVyU2l6ZUVycm9yLFxuICBVbnJlY29nbml6ZWRBcnJheUxpa2VTZXJpYWxpemVyU2l6ZUVycm9yLFxufSBmcm9tICcuL2Vycm9ycyc7XG5pbXBvcnQgeyBzdW1TZXJpYWxpemVyU2l6ZXMgfSBmcm9tICcuL3N1bVNlcmlhbGl6ZXJTaXplcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRSZXNvbHZlZFNpemUoXG4gIHNpemU6IEFycmF5TGlrZVNlcmlhbGl6ZXJTaXplLFxuICBjaGlsZHJlblNpemVzOiAobnVtYmVyIHwgbnVsbClbXSxcbiAgYnl0ZXM6IFVpbnQ4QXJyYXksXG4gIG9mZnNldDogbnVtYmVyXG4pOiBbbnVtYmVyIHwgYmlnaW50LCBudW1iZXJdIHtcbiAgaWYgKHR5cGVvZiBzaXplID09PSAnbnVtYmVyJykge1xuICAgIHJldHVybiBbc2l6ZSwgb2Zmc2V0XTtcbiAgfVxuXG4gIGlmICh0eXBlb2Ygc2l6ZSA9PT0gJ29iamVjdCcpIHtcbiAgICByZXR1cm4gc2l6ZS5kZXNlcmlhbGl6ZShieXRlcywgb2Zmc2V0KTtcbiAgfVxuXG4gIGlmIChzaXplID09PSAncmVtYWluZGVyJykge1xuICAgIGNvbnN0IGNoaWxkcmVuU2l6ZSA9IHN1bVNlcmlhbGl6ZXJTaXplcyhjaGlsZHJlblNpemVzKTtcbiAgICBpZiAoY2hpbGRyZW5TaXplID09PSBudWxsKSB7XG4gICAgICB0aHJvdyBuZXcgRXhwZWN0ZWRGaXhlZFNpemVTZXJpYWxpemVyRXJyb3IoXG4gICAgICAgICdTZXJpYWxpemVycyBvZiBcInJlbWFpbmRlclwiIHNpemUgbXVzdCBoYXZlIGZpeGVkLXNpemUgaXRlbXMuJ1xuICAgICAgKTtcbiAgICB9XG4gICAgY29uc3QgcmVtYWluZGVyID0gYnl0ZXMuc2xpY2Uob2Zmc2V0KS5sZW5ndGg7XG4gICAgaWYgKHJlbWFpbmRlciAlIGNoaWxkcmVuU2l6ZSAhPT0gMCkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcnJheUxpa2VSZW1haW5kZXJTaXplRXJyb3IocmVtYWluZGVyLCBjaGlsZHJlblNpemUpO1xuICAgIH1cbiAgICByZXR1cm4gW3JlbWFpbmRlciAvIGNoaWxkcmVuU2l6ZSwgb2Zmc2V0XTtcbiAgfVxuXG4gIHRocm93IG5ldyBVbnJlY29nbml6ZWRBcnJheUxpa2VTZXJpYWxpemVyU2l6ZUVycm9yKHNpemUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2l6ZURlc2NyaXB0aW9uKFxuICBzaXplOiBBcnJheUxpa2VTZXJpYWxpemVyU2l6ZSB8IHN0cmluZ1xuKTogc3RyaW5nIHtcbiAgcmV0dXJuIHR5cGVvZiBzaXplID09PSAnb2JqZWN0JyA/IHNpemUuZGVzY3JpcHRpb24gOiBgJHtzaXplfWA7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRTaXplRnJvbUNoaWxkcmVuKFxuICBzaXplOiBBcnJheUxpa2VTZXJpYWxpemVyU2l6ZSxcbiAgY2hpbGRyZW5TaXplczogKG51bWJlciB8IG51bGwpW11cbik6IG51bWJlciB8IG51bGwge1xuICBpZiAodHlwZW9mIHNpemUgIT09ICdudW1iZXInKSByZXR1cm4gbnVsbDtcbiAgaWYgKHNpemUgPT09IDApIHJldHVybiAwO1xuICBjb25zdCBjaGlsZHJlblNpemUgPSBzdW1TZXJpYWxpemVyU2l6ZXMoY2hpbGRyZW5TaXplcyk7XG4gIHJldHVybiBjaGlsZHJlblNpemUgPT09IG51bGwgPyBudWxsIDogY2hpbGRyZW5TaXplICogc2l6ZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFNpemVQcmVmaXgoXG4gIHNpemU6IEFycmF5TGlrZVNlcmlhbGl6ZXJTaXplLFxuICByZWFsU2l6ZTogbnVtYmVyXG4pOiBVaW50OEFycmF5IHtcbiAgcmV0dXJuIHR5cGVvZiBzaXplID09PSAnb2JqZWN0JyA/IHNpemUuc2VyaWFsaXplKHJlYWxTaXplKSA6IG5ldyBVaW50OEFycmF5KCk7XG59XG4iLCAiaW1wb3J0IHtcbiAgQmFzZVNlcmlhbGl6ZXJPcHRpb25zLFxuICBFeHBlY3RlZEZpeGVkU2l6ZVNlcmlhbGl6ZXJFcnJvcixcbiAgU2VyaWFsaXplcixcbiAgbWVyZ2VCeXRlcyxcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWNvcmUnO1xuaW1wb3J0IHsgdTMyIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLW51bWJlcnMnO1xuaW1wb3J0IHsgQXJyYXlMaWtlU2VyaWFsaXplclNpemUgfSBmcm9tICcuL2FycmF5TGlrZVNlcmlhbGl6ZXJTaXplJztcbmltcG9ydCB7IEludmFsaWROdW1iZXJPZkl0ZW1zRXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5pbXBvcnQge1xuICBnZXRSZXNvbHZlZFNpemUsXG4gIGdldFNpemVEZXNjcmlwdGlvbixcbiAgZ2V0U2l6ZUZyb21DaGlsZHJlbixcbiAgZ2V0U2l6ZVByZWZpeCxcbn0gZnJvbSAnLi91dGlscyc7XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgb3B0aW9ucyBmb3IgYXJyYXkgc2VyaWFsaXplcnMuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IHR5cGUgQXJyYXlTZXJpYWxpemVyT3B0aW9ucyA9IEJhc2VTZXJpYWxpemVyT3B0aW9ucyAmIHtcbiAgLyoqXG4gICAqIFRoZSBzaXplIG9mIHRoZSBhcnJheS5cbiAgICogQGRlZmF1bHRWYWx1ZSBgdTMyKClgXG4gICAqL1xuICBzaXplPzogQXJyYXlMaWtlU2VyaWFsaXplclNpemU7XG59O1xuXG4vKipcbiAqIENyZWF0ZXMgYSBzZXJpYWxpemVyIGZvciBhbiBhcnJheSBvZiBpdGVtcy5cbiAqXG4gKiBAcGFyYW0gaXRlbSAtIFRoZSBzZXJpYWxpemVyIHRvIHVzZSBmb3IgdGhlIGFycmF5J3MgaXRlbXMuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhcnJheTxULCBVIGV4dGVuZHMgVCA9IFQ+KFxuICBpdGVtOiBTZXJpYWxpemVyPFQsIFU+LFxuICBvcHRpb25zOiBBcnJheVNlcmlhbGl6ZXJPcHRpb25zID0ge31cbik6IFNlcmlhbGl6ZXI8VFtdLCBVW10+IHtcbiAgY29uc3Qgc2l6ZSA9IG9wdGlvbnMuc2l6ZSA/PyB1MzIoKTtcbiAgaWYgKHNpemUgPT09ICdyZW1haW5kZXInICYmIGl0ZW0uZml4ZWRTaXplID09PSBudWxsKSB7XG4gICAgdGhyb3cgbmV3IEV4cGVjdGVkRml4ZWRTaXplU2VyaWFsaXplckVycm9yKFxuICAgICAgJ1NlcmlhbGl6ZXJzIG9mIFwicmVtYWluZGVyXCIgc2l6ZSBtdXN0IGhhdmUgZml4ZWQtc2l6ZSBpdGVtcy4nXG4gICAgKTtcbiAgfVxuICByZXR1cm4ge1xuICAgIGRlc2NyaXB0aW9uOlxuICAgICAgb3B0aW9ucy5kZXNjcmlwdGlvbiA/P1xuICAgICAgYGFycmF5KCR7aXRlbS5kZXNjcmlwdGlvbn07ICR7Z2V0U2l6ZURlc2NyaXB0aW9uKHNpemUpfSlgLFxuICAgIGZpeGVkU2l6ZTogZ2V0U2l6ZUZyb21DaGlsZHJlbihzaXplLCBbaXRlbS5maXhlZFNpemVdKSxcbiAgICBtYXhTaXplOiBnZXRTaXplRnJvbUNoaWxkcmVuKHNpemUsIFtpdGVtLm1heFNpemVdKSxcbiAgICBzZXJpYWxpemU6ICh2YWx1ZTogVFtdKSA9PiB7XG4gICAgICBpZiAodHlwZW9mIHNpemUgPT09ICdudW1iZXInICYmIHZhbHVlLmxlbmd0aCAhPT0gc2l6ZSkge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE51bWJlck9mSXRlbXNFcnJvcignYXJyYXknLCBzaXplLCB2YWx1ZS5sZW5ndGgpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIG1lcmdlQnl0ZXMoW1xuICAgICAgICBnZXRTaXplUHJlZml4KHNpemUsIHZhbHVlLmxlbmd0aCksXG4gICAgICAgIC4uLnZhbHVlLm1hcCgodikgPT4gaXRlbS5zZXJpYWxpemUodikpLFxuICAgICAgXSk7XG4gICAgfSxcbiAgICBkZXNlcmlhbGl6ZTogKGJ5dGVzOiBVaW50OEFycmF5LCBvZmZzZXQgPSAwKSA9PiB7XG4gICAgICBpZiAodHlwZW9mIHNpemUgPT09ICdvYmplY3QnICYmIGJ5dGVzLnNsaWNlKG9mZnNldCkubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHJldHVybiBbW10sIG9mZnNldF07XG4gICAgICB9XG4gICAgICBjb25zdCBbcmVzb2x2ZWRTaXplLCBuZXdPZmZzZXRdID0gZ2V0UmVzb2x2ZWRTaXplKFxuICAgICAgICBzaXplLFxuICAgICAgICBbaXRlbS5maXhlZFNpemVdLFxuICAgICAgICBieXRlcyxcbiAgICAgICAgb2Zmc2V0XG4gICAgICApO1xuICAgICAgb2Zmc2V0ID0gbmV3T2Zmc2V0O1xuICAgICAgY29uc3QgdmFsdWVzOiBVW10gPSBbXTtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcmVzb2x2ZWRTaXplOyBpICs9IDEpIHtcbiAgICAgICAgY29uc3QgW3ZhbHVlLCBuZXdPZmZzZXRdID0gaXRlbS5kZXNlcmlhbGl6ZShieXRlcywgb2Zmc2V0KTtcbiAgICAgICAgdmFsdWVzLnB1c2godmFsdWUpO1xuICAgICAgICBvZmZzZXQgPSBuZXdPZmZzZXQ7XG4gICAgICB9XG4gICAgICByZXR1cm4gW3ZhbHVlcywgb2Zmc2V0XTtcbiAgICB9LFxuICB9O1xufVxuIiwgImltcG9ydCB7XG4gIEJhc2VTZXJpYWxpemVyT3B0aW9ucyxcbiAgRGVzZXJpYWxpemluZ0VtcHR5QnVmZmVyRXJyb3IsXG4gIEV4cGVjdGVkRml4ZWRTaXplU2VyaWFsaXplckVycm9yLFxuICBTZXJpYWxpemVyLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQge1xuICBOdW1iZXJTZXJpYWxpemVyLFxuICB1OCxcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLW51bWJlcnMnO1xuXG4vKipcbiAqIERlZmluZXMgdGhlIG9wdGlvbnMgZm9yIGJvb2xlYW4gc2VyaWFsaXplcnMuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IHR5cGUgQm9vbFNlcmlhbGl6ZXJPcHRpb25zID0gQmFzZVNlcmlhbGl6ZXJPcHRpb25zICYge1xuICAvKipcbiAgICogVGhlIG51bWJlciBzZXJpYWxpemVyIHRvIGRlbGVnYXRlIHRvLlxuICAgKiBAZGVmYXVsdFZhbHVlIGB1OCgpYFxuICAgKi9cbiAgc2l6ZT86IE51bWJlclNlcmlhbGl6ZXI7XG59O1xuXG4vKipcbiAqIENyZWF0ZXMgYSBib29sZWFuIHNlcmlhbGl6ZXIuXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBBIHNldCBvZiBvcHRpb25zIGZvciB0aGUgc2VyaWFsaXplci5cbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgZnVuY3Rpb24gYm9vbChvcHRpb25zOiBCb29sU2VyaWFsaXplck9wdGlvbnMgPSB7fSk6IFNlcmlhbGl6ZXI8Ym9vbGVhbj4ge1xuICBjb25zdCBzaXplID0gb3B0aW9ucy5zaXplID8/IHU4KCk7XG4gIGlmIChzaXplLmZpeGVkU2l6ZSA9PT0gbnVsbCkge1xuICAgIHRocm93IG5ldyBFeHBlY3RlZEZpeGVkU2l6ZVNlcmlhbGl6ZXJFcnJvcihcbiAgICAgICdTZXJpYWxpemVyIFtib29sXSByZXF1aXJlcyBhIGZpeGVkIHNpemUuJ1xuICAgICk7XG4gIH1cbiAgcmV0dXJuIHtcbiAgICBkZXNjcmlwdGlvbjogb3B0aW9ucy5kZXNjcmlwdGlvbiA/PyBgYm9vbCgke3NpemUuZGVzY3JpcHRpb259KWAsXG4gICAgZml4ZWRTaXplOiBzaXplLmZpeGVkU2l6ZSxcbiAgICBtYXhTaXplOiBzaXplLmZpeGVkU2l6ZSxcbiAgICBzZXJpYWxpemU6ICh2YWx1ZTogYm9vbGVhbikgPT4gc2l6ZS5zZXJpYWxpemUodmFsdWUgPyAxIDogMCksXG4gICAgZGVzZXJpYWxpemU6IChieXRlczogVWludDhBcnJheSwgb2Zmc2V0ID0gMCkgPT4ge1xuICAgICAgaWYgKGJ5dGVzLnNsaWNlKG9mZnNldCkubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHRocm93IG5ldyBEZXNlcmlhbGl6aW5nRW1wdHlCdWZmZXJFcnJvcignYm9vbCcpO1xuICAgICAgfVxuICAgICAgY29uc3QgW3ZhbHVlLCB2T2Zmc2V0XSA9IHNpemUuZGVzZXJpYWxpemUoYnl0ZXMsIG9mZnNldCk7XG4gICAgICByZXR1cm4gW3ZhbHVlID09PSAxLCB2T2Zmc2V0XTtcbiAgICB9LFxuICB9O1xufVxuIiwgImltcG9ydCB7XG4gIEJhc2VTZXJpYWxpemVyT3B0aW9ucyxcbiAgRGVzZXJpYWxpemluZ0VtcHR5QnVmZmVyRXJyb3IsXG4gIE5vdEVub3VnaEJ5dGVzRXJyb3IsXG4gIFNlcmlhbGl6ZXIsXG4gIGZpeFNlcmlhbGl6ZXIsXG4gIG1lcmdlQnl0ZXMsXG59IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcbmltcG9ydCB7IE51bWJlclNlcmlhbGl6ZXIgfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtbnVtYmVycyc7XG5pbXBvcnQgeyBnZXRTaXplRGVzY3JpcHRpb24gfSBmcm9tICcuL3V0aWxzJztcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBvcHRpb25zIGZvciBieXRlcyBzZXJpYWxpemVycy5cbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgdHlwZSBCeXRlc1NlcmlhbGl6ZXJPcHRpb25zID0gQmFzZVNlcmlhbGl6ZXJPcHRpb25zICYge1xuICAvKipcbiAgICogVGhlIHNpemUgb2YgdGhlIGJ1ZmZlci4gSXQgY2FuIGJlIG9uZSBvZiB0aGUgZm9sbG93aW5nOlxuICAgKiAtIGEge0BsaW5rIE51bWJlclNlcmlhbGl6ZXJ9IHRoYXQgcHJlZml4ZXMgdGhlIGJ1ZmZlciB3aXRoIGl0cyBzaXplLlxuICAgKiAtIGEgZml4ZWQgbnVtYmVyIG9mIGJ5dGVzLlxuICAgKiAtIG9yIGAndmFyaWFibGUnYCB0byB1c2UgdGhlIHJlc3Qgb2YgdGhlIGJ1ZmZlci5cbiAgICogQGRlZmF1bHRWYWx1ZSBgJ3ZhcmlhYmxlJ2BcbiAgICovXG4gIHNpemU/OiBOdW1iZXJTZXJpYWxpemVyIHwgbnVtYmVyIHwgJ3ZhcmlhYmxlJztcbn07XG5cbi8qKlxuICogQ3JlYXRlcyBhIHNlcmlhbGl6ZXIgdGhhdCBwYXNzZXMgdGhlIGJ1ZmZlciBhcy1pcy5cbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBieXRlcyhcbiAgb3B0aW9uczogQnl0ZXNTZXJpYWxpemVyT3B0aW9ucyA9IHt9XG4pOiBTZXJpYWxpemVyPFVpbnQ4QXJyYXk+IHtcbiAgY29uc3Qgc2l6ZSA9IG9wdGlvbnMuc2l6ZSA/PyAndmFyaWFibGUnO1xuICBjb25zdCBkZXNjcmlwdGlvbiA9XG4gICAgb3B0aW9ucy5kZXNjcmlwdGlvbiA/PyBgYnl0ZXMoJHtnZXRTaXplRGVzY3JpcHRpb24oc2l6ZSl9KWA7XG5cbiAgY29uc3QgYnl0ZVNlcmlhbGl6ZXI6IFNlcmlhbGl6ZXI8VWludDhBcnJheT4gPSB7XG4gICAgZGVzY3JpcHRpb24sXG4gICAgZml4ZWRTaXplOiBudWxsLFxuICAgIG1heFNpemU6IG51bGwsXG4gICAgc2VyaWFsaXplOiAodmFsdWU6IFVpbnQ4QXJyYXkpID0+IG5ldyBVaW50OEFycmF5KHZhbHVlKSxcbiAgICBkZXNlcmlhbGl6ZTogKGJ5dGVzOiBVaW50OEFycmF5LCBvZmZzZXQgPSAwKSA9PiB7XG4gICAgICBjb25zdCBzbGljZSA9IGJ5dGVzLnNsaWNlKG9mZnNldCk7XG4gICAgICByZXR1cm4gW3NsaWNlLCBvZmZzZXQgKyBzbGljZS5sZW5ndGhdO1xuICAgIH0sXG4gIH07XG5cbiAgaWYgKHNpemUgPT09ICd2YXJpYWJsZScpIHtcbiAgICByZXR1cm4gYnl0ZVNlcmlhbGl6ZXI7XG4gIH1cblxuICBpZiAodHlwZW9mIHNpemUgPT09ICdudW1iZXInKSB7XG4gICAgcmV0dXJuIGZpeFNlcmlhbGl6ZXIoYnl0ZVNlcmlhbGl6ZXIsIHNpemUsIGRlc2NyaXB0aW9uKTtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgZGVzY3JpcHRpb24sXG4gICAgZml4ZWRTaXplOiBudWxsLFxuICAgIG1heFNpemU6IG51bGwsXG4gICAgc2VyaWFsaXplOiAodmFsdWU6IFVpbnQ4QXJyYXkpID0+IHtcbiAgICAgIGNvbnN0IGNvbnRlbnRCeXRlcyA9IGJ5dGVTZXJpYWxpemVyLnNlcmlhbGl6ZSh2YWx1ZSk7XG4gICAgICBjb25zdCBsZW5ndGhCeXRlcyA9IHNpemUuc2VyaWFsaXplKGNvbnRlbnRCeXRlcy5sZW5ndGgpO1xuICAgICAgcmV0dXJuIG1lcmdlQnl0ZXMoW2xlbmd0aEJ5dGVzLCBjb250ZW50Qnl0ZXNdKTtcbiAgICB9LFxuICAgIGRlc2VyaWFsaXplOiAoYnVmZmVyOiBVaW50OEFycmF5LCBvZmZzZXQgPSAwKSA9PiB7XG4gICAgICBpZiAoYnVmZmVyLnNsaWNlKG9mZnNldCkubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHRocm93IG5ldyBEZXNlcmlhbGl6aW5nRW1wdHlCdWZmZXJFcnJvcignYnl0ZXMnKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IFtsZW5ndGhCaWdJbnQsIGxlbmd0aE9mZnNldF0gPSBzaXplLmRlc2VyaWFsaXplKGJ1ZmZlciwgb2Zmc2V0KTtcbiAgICAgIGNvbnN0IGxlbmd0aCA9IE51bWJlcihsZW5ndGhCaWdJbnQpO1xuICAgICAgb2Zmc2V0ID0gbGVuZ3RoT2Zmc2V0O1xuICAgICAgY29uc3QgY29udGVudEJ1ZmZlciA9IGJ1ZmZlci5zbGljZShvZmZzZXQsIG9mZnNldCArIGxlbmd0aCk7XG4gICAgICBpZiAoY29udGVudEJ1ZmZlci5sZW5ndGggPCBsZW5ndGgpIHtcbiAgICAgICAgdGhyb3cgbmV3IE5vdEVub3VnaEJ5dGVzRXJyb3IoJ2J5dGVzJywgbGVuZ3RoLCBjb250ZW50QnVmZmVyLmxlbmd0aCk7XG4gICAgICB9XG4gICAgICBjb25zdCBbdmFsdWUsIGNvbnRlbnRPZmZzZXRdID0gYnl0ZVNlcmlhbGl6ZXIuZGVzZXJpYWxpemUoY29udGVudEJ1ZmZlcik7XG4gICAgICBvZmZzZXQgKz0gY29udGVudE9mZnNldDtcbiAgICAgIHJldHVybiBbdmFsdWUsIG9mZnNldF07XG4gICAgfSxcbiAgfTtcbn1cbiIsICJleHBvcnQgZnVuY3Rpb24gbWF4U2VyaWFsaXplclNpemVzKHNpemVzOiAobnVtYmVyIHwgbnVsbClbXSk6IG51bWJlciB8IG51bGwge1xuICByZXR1cm4gc2l6ZXMucmVkdWNlKFxuICAgIChhbGwsIHNpemUpID0+IChhbGwgPT09IG51bGwgfHwgc2l6ZSA9PT0gbnVsbCA/IG51bGwgOiBNYXRoLm1heChhbGwsIHNpemUpKSxcbiAgICAwIGFzIG51bWJlciB8IG51bGxcbiAgKTtcbn1cbiIsICJpbXBvcnQge1xuICBCYXNlU2VyaWFsaXplck9wdGlvbnMsXG4gIERlc2VyaWFsaXppbmdFbXB0eUJ1ZmZlckVycm9yLFxuICBTZXJpYWxpemVyLFxuICBtZXJnZUJ5dGVzLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQge1xuICBOdW1iZXJTZXJpYWxpemVyLFxuICB1OCxcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLW51bWJlcnMnO1xuaW1wb3J0IHtcbiAgRW51bURpc2NyaW1pbmF0b3JPdXRPZlJhbmdlRXJyb3IsXG4gIEludmFsaWREYXRhRW51bVZhcmlhbnRFcnJvcixcbn0gZnJvbSAnLi9lcnJvcnMnO1xuaW1wb3J0IHsgbWF4U2VyaWFsaXplclNpemVzIH0gZnJvbSAnLi9tYXhTZXJpYWxpemVyU2l6ZXMnO1xuaW1wb3J0IHsgc3VtU2VyaWFsaXplclNpemVzIH0gZnJvbSAnLi9zdW1TZXJpYWxpemVyU2l6ZXMnO1xuXG4vKipcbiAqIERlZmluZXMgYSBkYXRhIGVudW0gdXNpbmcgZGlzY3JpbWluYXRlZCB1bmlvbiB0eXBlcy5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHNcbiAqIHR5cGUgV2ViUGFnZUV2ZW50ID1cbiAqICAgfCB7IF9fa2luZDogJ3BhZ2V2aWV3JywgdXJsOiBzdHJpbmcgfVxuICogICB8IHsgX19raW5kOiAnY2xpY2snLCB4OiBudW1iZXIsIHk6IG51bWJlciB9O1xuICogYGBgXG4gKlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCB0eXBlIERhdGFFbnVtID0geyBfX2tpbmQ6IHN0cmluZyB9O1xuXG4vKipcbiAqIEV4dHJhY3RzIGEgdmFyaWFudCBmcm9tIGEgZGF0YSBlbnVtLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c1xuICogdHlwZSBXZWJQYWdlRXZlbnQgPVxuICogICB8IHsgX19raW5kOiAncGFnZXZpZXcnLCB1cmw6IHN0cmluZyB9XG4gKiAgIHwgeyBfX2tpbmQ6ICdjbGljaycsIHg6IG51bWJlciwgeTogbnVtYmVyIH07XG4gKiB0eXBlIENsaWNrRXZlbnQgPSBHZXREYXRhRW51bUtpbmQ8V2ViUGFnZUV2ZW50LCAnY2xpY2snPjtcbiAqIC8vIC0+IHsgX19raW5kOiAnY2xpY2snLCB4OiBudW1iZXIsIHk6IG51bWJlciB9XG4gKiBgYGBcbiAqXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IHR5cGUgR2V0RGF0YUVudW1LaW5kPFxuICBUIGV4dGVuZHMgRGF0YUVudW0sXG4gIEsgZXh0ZW5kcyBUWydfX2tpbmQnXVxuPiA9IEV4dHJhY3Q8VCwgeyBfX2tpbmQ6IEsgfT47XG5cbi8qKlxuICogRXh0cmFjdHMgYSB2YXJpYW50IGZyb20gYSBkYXRhIGVudW0gd2l0aG91dCBpdHMgZGlzY3JpbWluYXRvci5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHNcbiAqIHR5cGUgV2ViUGFnZUV2ZW50ID1cbiAqICAgfCB7IF9fa2luZDogJ3BhZ2V2aWV3JywgdXJsOiBzdHJpbmcgfVxuICogICB8IHsgX19raW5kOiAnY2xpY2snLCB4OiBudW1iZXIsIHk6IG51bWJlciB9O1xuICogdHlwZSBDbGlja0V2ZW50ID0gR2V0RGF0YUVudW1LaW5kQ29udGVudDxXZWJQYWdlRXZlbnQsICdjbGljayc+O1xuICogLy8gLT4geyB4OiBudW1iZXIsIHk6IG51bWJlciB9XG4gKiBgYGBcbiAqXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IHR5cGUgR2V0RGF0YUVudW1LaW5kQ29udGVudDxcbiAgVCBleHRlbmRzIERhdGFFbnVtLFxuICBLIGV4dGVuZHMgVFsnX19raW5kJ11cbj4gPSBPbWl0PEV4dHJhY3Q8VCwgeyBfX2tpbmQ6IEsgfT4sICdfX2tpbmQnPjtcblxuLyoqXG4gKiBHZXQgdGhlIG5hbWUgYW5kIHNlcmlhbGl6ZXIgb2YgZWFjaCB2YXJpYW50IGluIGEgZGF0YSBlbnVtLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCB0eXBlIERhdGFFbnVtVG9TZXJpYWxpemVyVHVwbGU8VCBleHRlbmRzIERhdGFFbnVtLCBVIGV4dGVuZHMgVD4gPSBBcnJheTxcbiAgVCBleHRlbmRzIGFueVxuICAgID8gW1xuICAgICAgICBUWydfX2tpbmQnXSxcbiAgICAgICAga2V5b2YgT21pdDxULCAnX19raW5kJz4gZXh0ZW5kcyBuZXZlclxuICAgICAgICAgID8gU2VyaWFsaXplcjxPbWl0PFQsICdfX2tpbmQnPiwgT21pdDxVLCAnX19raW5kJz4+IHwgU2VyaWFsaXplcjx2b2lkPlxuICAgICAgICAgIDogU2VyaWFsaXplcjxPbWl0PFQsICdfX2tpbmQnPiwgT21pdDxVLCAnX19raW5kJz4+XG4gICAgICBdXG4gICAgOiBuZXZlclxuPjtcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBvcHRpb25zIGZvciBkYXRhIGVudW0gc2VyaWFsaXplcnMuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IHR5cGUgRGF0YUVudW1TZXJpYWxpemVyT3B0aW9ucyA9IEJhc2VTZXJpYWxpemVyT3B0aW9ucyAmIHtcbiAgLyoqXG4gICAqIFRoZSBzZXJpYWxpemVyIHRvIHVzZSBmb3IgdGhlIGVudW0gZGlzY3JpbWluYXRvciBwcmVmaXhpbmcgdGhlIHZhcmlhbnQuXG4gICAqIEBkZWZhdWx0VmFsdWUgYHU4KClgXG4gICAqL1xuICBzaXplPzogTnVtYmVyU2VyaWFsaXplcjtcbn07XG5cbi8qKlxuICogQ3JlYXRlcyBhIGRhdGEgZW51bSBzZXJpYWxpemVyLlxuICpcbiAqIEBwYXJhbSB2YXJpYW50cyAtIFRoZSB2YXJpYW50IHNlcmlhbGl6ZXJzIG9mIHRoZSBkYXRhIGVudW0uXG4gKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkYXRhRW51bTxUIGV4dGVuZHMgRGF0YUVudW0sIFUgZXh0ZW5kcyBUID0gVD4oXG4gIHZhcmlhbnRzOiBEYXRhRW51bVRvU2VyaWFsaXplclR1cGxlPFQsIFU+LFxuICBvcHRpb25zOiBEYXRhRW51bVNlcmlhbGl6ZXJPcHRpb25zID0ge31cbik6IFNlcmlhbGl6ZXI8VCwgVT4ge1xuICBjb25zdCBwcmVmaXggPSBvcHRpb25zLnNpemUgPz8gdTgoKTtcbiAgY29uc3QgZmllbGREZXNjcmlwdGlvbnMgPSB2YXJpYW50c1xuICAgIC5tYXAoXG4gICAgICAoW25hbWUsIHNlcmlhbGl6ZXJdKSA9PlxuICAgICAgICBgJHtTdHJpbmcobmFtZSl9JHtzZXJpYWxpemVyID8gYDogJHtzZXJpYWxpemVyLmRlc2NyaXB0aW9ufWAgOiAnJ31gXG4gICAgKVxuICAgIC5qb2luKCcsICcpO1xuICBjb25zdCBhbGxWYXJpYW50SGF2ZVRoZVNhbWVGaXhlZFNpemUgPSB2YXJpYW50cy5ldmVyeShcbiAgICAob25lLCBpLCBhbGwpID0+IG9uZVsxXS5maXhlZFNpemUgPT09IGFsbFswXVsxXS5maXhlZFNpemVcbiAgKTtcbiAgY29uc3QgZml4ZWRWYXJpYW50U2l6ZSA9IGFsbFZhcmlhbnRIYXZlVGhlU2FtZUZpeGVkU2l6ZVxuICAgID8gdmFyaWFudHNbMF1bMV0uZml4ZWRTaXplXG4gICAgOiBudWxsO1xuICBjb25zdCBtYXhWYXJpYW50U2l6ZSA9IG1heFNlcmlhbGl6ZXJTaXplcyhcbiAgICB2YXJpYW50cy5tYXAoKFssIGZpZWxkXSkgPT4gZmllbGQubWF4U2l6ZSlcbiAgKTtcbiAgcmV0dXJuIHtcbiAgICBkZXNjcmlwdGlvbjpcbiAgICAgIG9wdGlvbnMuZGVzY3JpcHRpb24gPz9cbiAgICAgIGBkYXRhRW51bSgke2ZpZWxkRGVzY3JpcHRpb25zfTsgJHtwcmVmaXguZGVzY3JpcHRpb259KWAsXG4gICAgZml4ZWRTaXplOlxuICAgICAgdmFyaWFudHMubGVuZ3RoID09PSAwXG4gICAgICAgID8gcHJlZml4LmZpeGVkU2l6ZVxuICAgICAgICA6IHN1bVNlcmlhbGl6ZXJTaXplcyhbcHJlZml4LmZpeGVkU2l6ZSwgZml4ZWRWYXJpYW50U2l6ZV0pLFxuICAgIG1heFNpemU6XG4gICAgICB2YXJpYW50cy5sZW5ndGggPT09IDBcbiAgICAgICAgPyBwcmVmaXgubWF4U2l6ZVxuICAgICAgICA6IHN1bVNlcmlhbGl6ZXJTaXplcyhbcHJlZml4Lm1heFNpemUsIG1heFZhcmlhbnRTaXplXSksXG4gICAgc2VyaWFsaXplOiAodmFyaWFudDogVCkgPT4ge1xuICAgICAgY29uc3QgZGlzY3JpbWluYXRvciA9IHZhcmlhbnRzLmZpbmRJbmRleChcbiAgICAgICAgKFtrZXldKSA9PiB2YXJpYW50Ll9fa2luZCA9PT0ga2V5XG4gICAgICApO1xuICAgICAgaWYgKGRpc2NyaW1pbmF0b3IgPCAwKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkRGF0YUVudW1WYXJpYW50RXJyb3IoXG4gICAgICAgICAgdmFyaWFudC5fX2tpbmQsXG4gICAgICAgICAgdmFyaWFudHMubWFwKChba2V5XSkgPT4ga2V5KVxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgY29uc3QgdmFyaWFudFByZWZpeCA9IHByZWZpeC5zZXJpYWxpemUoZGlzY3JpbWluYXRvcik7XG4gICAgICBjb25zdCB2YXJpYW50U2VyaWFsaXplciA9IHZhcmlhbnRzW2Rpc2NyaW1pbmF0b3JdWzFdO1xuICAgICAgY29uc3QgdmFyaWFudEJ5dGVzID0gdmFyaWFudFNlcmlhbGl6ZXIuc2VyaWFsaXplKHZhcmlhbnQgYXMgYW55KTtcbiAgICAgIHJldHVybiBtZXJnZUJ5dGVzKFt2YXJpYW50UHJlZml4LCB2YXJpYW50Qnl0ZXNdKTtcbiAgICB9LFxuICAgIGRlc2VyaWFsaXplOiAoYnl0ZXM6IFVpbnQ4QXJyYXksIG9mZnNldCA9IDApID0+IHtcbiAgICAgIGlmIChieXRlcy5zbGljZShvZmZzZXQpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICB0aHJvdyBuZXcgRGVzZXJpYWxpemluZ0VtcHR5QnVmZmVyRXJyb3IoJ2RhdGFFbnVtJyk7XG4gICAgICB9XG4gICAgICBjb25zdCBbZGlzY3JpbWluYXRvciwgZE9mZnNldF0gPSBwcmVmaXguZGVzZXJpYWxpemUoYnl0ZXMsIG9mZnNldCk7XG4gICAgICBvZmZzZXQgPSBkT2Zmc2V0O1xuICAgICAgY29uc3QgdmFyaWFudEZpZWxkID0gdmFyaWFudHNbTnVtYmVyKGRpc2NyaW1pbmF0b3IpXSA/PyBudWxsO1xuICAgICAgaWYgKCF2YXJpYW50RmllbGQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVudW1EaXNjcmltaW5hdG9yT3V0T2ZSYW5nZUVycm9yKFxuICAgICAgICAgIGRpc2NyaW1pbmF0b3IsXG4gICAgICAgICAgMCxcbiAgICAgICAgICB2YXJpYW50cy5sZW5ndGggLSAxXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICBjb25zdCBbdmFyaWFudCwgdk9mZnNldF0gPSB2YXJpYW50RmllbGRbMV0uZGVzZXJpYWxpemUoYnl0ZXMsIG9mZnNldCk7XG4gICAgICBvZmZzZXQgPSB2T2Zmc2V0O1xuICAgICAgcmV0dXJuIFt7IF9fa2luZDogdmFyaWFudEZpZWxkWzBdLCAuLi4odmFyaWFudCA/PyB7fSkgfSBhcyBVLCBvZmZzZXRdO1xuICAgIH0sXG4gIH07XG59XG4iLCAiaW1wb3J0IHtcbiAgQmFzZVNlcmlhbGl6ZXJPcHRpb25zLFxuICBFeHBlY3RlZEZpeGVkU2l6ZVNlcmlhbGl6ZXJFcnJvcixcbiAgbWVyZ2VCeXRlcyxcbiAgU2VyaWFsaXplcixcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLWNvcmUnO1xuaW1wb3J0IHsgdTMyIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLW51bWJlcnMnO1xuaW1wb3J0IHsgQXJyYXlMaWtlU2VyaWFsaXplclNpemUgfSBmcm9tICcuL2FycmF5TGlrZVNlcmlhbGl6ZXJTaXplJztcbmltcG9ydCB7XG4gIGdldFJlc29sdmVkU2l6ZSxcbiAgZ2V0U2l6ZURlc2NyaXB0aW9uLFxuICBnZXRTaXplRnJvbUNoaWxkcmVuLFxuICBnZXRTaXplUHJlZml4LFxufSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IEludmFsaWROdW1iZXJPZkl0ZW1zRXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgb3B0aW9ucyBmb3IgYE1hcGAgc2VyaWFsaXplcnMuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IHR5cGUgTWFwU2VyaWFsaXplck9wdGlvbnMgPSBCYXNlU2VyaWFsaXplck9wdGlvbnMgJiB7XG4gIC8qKlxuICAgKiBUaGUgc2l6ZSBvZiB0aGUgbWFwLlxuICAgKiBAZGVmYXVsdFZhbHVlIGB1MzIoKWBcbiAgICovXG4gIHNpemU/OiBBcnJheUxpa2VTZXJpYWxpemVyU2l6ZTtcbn07XG5cbi8qKlxuICogQ3JlYXRlcyBhIHNlcmlhbGl6ZXIgZm9yIGEgbWFwLlxuICpcbiAqIEBwYXJhbSBrZXkgLSBUaGUgc2VyaWFsaXplciB0byB1c2UgZm9yIHRoZSBtYXAncyBrZXlzLlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIHNlcmlhbGl6ZXIgdG8gdXNlIGZvciB0aGUgbWFwJ3MgdmFsdWVzLlxuICogQHBhcmFtIG9wdGlvbnMgLSBBIHNldCBvZiBvcHRpb25zIGZvciB0aGUgc2VyaWFsaXplci5cbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgZnVuY3Rpb24gbWFwPFRLLCBUViwgVUsgZXh0ZW5kcyBUSyA9IFRLLCBVViBleHRlbmRzIFRWID0gVFY+KFxuICBrZXk6IFNlcmlhbGl6ZXI8VEssIFVLPixcbiAgdmFsdWU6IFNlcmlhbGl6ZXI8VFYsIFVWPixcbiAgb3B0aW9uczogTWFwU2VyaWFsaXplck9wdGlvbnMgPSB7fVxuKTogU2VyaWFsaXplcjxNYXA8VEssIFRWPiwgTWFwPFVLLCBVVj4+IHtcbiAgY29uc3Qgc2l6ZSA9IG9wdGlvbnMuc2l6ZSA/PyB1MzIoKTtcbiAgaWYgKFxuICAgIHNpemUgPT09ICdyZW1haW5kZXInICYmXG4gICAgKGtleS5maXhlZFNpemUgPT09IG51bGwgfHwgdmFsdWUuZml4ZWRTaXplID09PSBudWxsKVxuICApIHtcbiAgICB0aHJvdyBuZXcgRXhwZWN0ZWRGaXhlZFNpemVTZXJpYWxpemVyRXJyb3IoXG4gICAgICAnU2VyaWFsaXplcnMgb2YgXCJyZW1haW5kZXJcIiBzaXplIG11c3QgaGF2ZSBmaXhlZC1zaXplIGl0ZW1zLidcbiAgICApO1xuICB9XG4gIHJldHVybiB7XG4gICAgZGVzY3JpcHRpb246XG4gICAgICBvcHRpb25zLmRlc2NyaXB0aW9uID8/XG4gICAgICBgbWFwKCR7a2V5LmRlc2NyaXB0aW9ufSwgJHt2YWx1ZS5kZXNjcmlwdGlvbn07ICR7Z2V0U2l6ZURlc2NyaXB0aW9uKFxuICAgICAgICBzaXplXG4gICAgICApfSlgLFxuICAgIGZpeGVkU2l6ZTogZ2V0U2l6ZUZyb21DaGlsZHJlbihzaXplLCBba2V5LmZpeGVkU2l6ZSwgdmFsdWUuZml4ZWRTaXplXSksXG4gICAgbWF4U2l6ZTogZ2V0U2l6ZUZyb21DaGlsZHJlbihzaXplLCBba2V5Lm1heFNpemUsIHZhbHVlLm1heFNpemVdKSxcbiAgICBzZXJpYWxpemU6IChtYXA6IE1hcDxUSywgVFY+KSA9PiB7XG4gICAgICBpZiAodHlwZW9mIHNpemUgPT09ICdudW1iZXInICYmIG1hcC5zaXplICE9PSBzaXplKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkTnVtYmVyT2ZJdGVtc0Vycm9yKCdtYXAnLCBzaXplLCBtYXAuc2l6ZSk7XG4gICAgICB9XG4gICAgICBjb25zdCBpdGVtQnl0ZXMgPSBBcnJheS5mcm9tKG1hcCwgKFtrLCB2XSkgPT5cbiAgICAgICAgbWVyZ2VCeXRlcyhba2V5LnNlcmlhbGl6ZShrKSwgdmFsdWUuc2VyaWFsaXplKHYpXSlcbiAgICAgICk7XG4gICAgICByZXR1cm4gbWVyZ2VCeXRlcyhbZ2V0U2l6ZVByZWZpeChzaXplLCBtYXAuc2l6ZSksIC4uLml0ZW1CeXRlc10pO1xuICAgIH0sXG4gICAgZGVzZXJpYWxpemU6IChieXRlczogVWludDhBcnJheSwgb2Zmc2V0ID0gMCkgPT4ge1xuICAgICAgY29uc3QgbWFwOiBNYXA8VUssIFVWPiA9IG5ldyBNYXAoKTtcbiAgICAgIGlmICh0eXBlb2Ygc2l6ZSA9PT0gJ29iamVjdCcgJiYgYnl0ZXMuc2xpY2Uob2Zmc2V0KS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgcmV0dXJuIFttYXAsIG9mZnNldF07XG4gICAgICB9XG4gICAgICBjb25zdCBbcmVzb2x2ZWRTaXplLCBuZXdPZmZzZXRdID0gZ2V0UmVzb2x2ZWRTaXplKFxuICAgICAgICBzaXplLFxuICAgICAgICBba2V5LmZpeGVkU2l6ZSwgdmFsdWUuZml4ZWRTaXplXSxcbiAgICAgICAgYnl0ZXMsXG4gICAgICAgIG9mZnNldFxuICAgICAgKTtcbiAgICAgIG9mZnNldCA9IG5ld09mZnNldDtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcmVzb2x2ZWRTaXplOyBpICs9IDEpIHtcbiAgICAgICAgY29uc3QgW2Rlc2VyaWFsaXplZEtleSwga09mZnNldF0gPSBrZXkuZGVzZXJpYWxpemUoYnl0ZXMsIG9mZnNldCk7XG4gICAgICAgIG9mZnNldCA9IGtPZmZzZXQ7XG4gICAgICAgIGNvbnN0IFtkZXNlcmlhbGl6ZWRWYWx1ZSwgdk9mZnNldF0gPSB2YWx1ZS5kZXNlcmlhbGl6ZShieXRlcywgb2Zmc2V0KTtcbiAgICAgICAgb2Zmc2V0ID0gdk9mZnNldDtcbiAgICAgICAgbWFwLnNldChkZXNlcmlhbGl6ZWRLZXksIGRlc2VyaWFsaXplZFZhbHVlKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBbbWFwLCBvZmZzZXRdO1xuICAgIH0sXG4gIH07XG59XG4iLCAiaW1wb3J0IHsgTnVsbGFibGUgfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktb3B0aW9ucyc7XG5pbXBvcnQge1xuICBCYXNlU2VyaWFsaXplck9wdGlvbnMsXG4gIEV4cGVjdGVkRml4ZWRTaXplU2VyaWFsaXplckVycm9yLFxuICBTZXJpYWxpemVyLFxuICBtZXJnZUJ5dGVzLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQge1xuICBOdW1iZXJTZXJpYWxpemVyLFxuICB1OCxcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLW51bWJlcnMnO1xuaW1wb3J0IHsgc3VtU2VyaWFsaXplclNpemVzIH0gZnJvbSAnLi9zdW1TZXJpYWxpemVyU2l6ZXMnO1xuaW1wb3J0IHsgZ2V0U2l6ZURlc2NyaXB0aW9uIH0gZnJvbSAnLi91dGlscyc7XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgb3B0aW9ucyBmb3IgYE51bGxhYmxlYCBzZXJpYWxpemVycy5cbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgdHlwZSBOdWxsYWJsZVNlcmlhbGl6ZXJPcHRpb25zID0gQmFzZVNlcmlhbGl6ZXJPcHRpb25zICYge1xuICAvKipcbiAgICogVGhlIHNlcmlhbGl6ZXIgdG8gdXNlIGZvciB0aGUgYm9vbGVhbiBwcmVmaXguXG4gICAqIEBkZWZhdWx0VmFsdWUgYHU4KClgXG4gICAqL1xuICBwcmVmaXg/OiBOdW1iZXJTZXJpYWxpemVyO1xuICAvKipcbiAgICogV2hldGhlciB0aGUgaXRlbSBzZXJpYWxpemVyIHNob3VsZCBiZSBvZiBmaXhlZCBzaXplLlxuICAgKlxuICAgKiBXaGVuIHRoaXMgaXMgdHJ1ZSwgYSBgbnVsbGAgdmFsdWUgd2lsbCBza2lwIHRoZSBieXRlcyB0aGF0IHdvdWxkXG4gICAqIGhhdmUgYmVlbiB1c2VkIGZvciB0aGUgaXRlbS4gTm90ZSB0aGF0IHRoaXMgd2lsbCBvbmx5IHdvcmsgaWYgdGhlXG4gICAqIGl0ZW0gc2VyaWFsaXplciBpcyBvZiBmaXhlZCBzaXplLlxuICAgKiBAZGVmYXVsdFZhbHVlIGBmYWxzZWBcbiAgICovXG4gIGZpeGVkPzogYm9vbGVhbjtcbn07XG5cbi8qKlxuICogQ3JlYXRlcyBhIHNlcmlhbGl6ZXIgZm9yIGFuIG9wdGlvbmFsIHZhbHVlIHVzaW5nIGBudWxsYCBhcyB0aGUgYE5vbmVgIHZhbHVlLlxuICpcbiAqIEBwYXJhbSBpdGVtIC0gVGhlIHNlcmlhbGl6ZXIgdG8gdXNlIGZvciB0aGUgdmFsdWUgdGhhdCBtYXkgYmUgcHJlc2VudC5cbiAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG51bGxhYmxlPFQsIFUgZXh0ZW5kcyBUID0gVD4oXG4gIGl0ZW06IFNlcmlhbGl6ZXI8VCwgVT4sXG4gIG9wdGlvbnM6IE51bGxhYmxlU2VyaWFsaXplck9wdGlvbnMgPSB7fVxuKTogU2VyaWFsaXplcjxOdWxsYWJsZTxUPiwgTnVsbGFibGU8VT4+IHtcbiAgY29uc3QgcHJlZml4ID0gb3B0aW9ucy5wcmVmaXggPz8gdTgoKTtcbiAgY29uc3QgZml4ZWQgPSBvcHRpb25zLmZpeGVkID8/IGZhbHNlO1xuICBsZXQgZGVzY3JpcHRpb25TdWZmaXggPSBgOyAke2dldFNpemVEZXNjcmlwdGlvbihwcmVmaXgpfWA7XG4gIGxldCBmaXhlZFNpemUgPSBpdGVtLmZpeGVkU2l6ZSA9PT0gMCA/IHByZWZpeC5maXhlZFNpemUgOiBudWxsO1xuICBpZiAoZml4ZWQpIHtcbiAgICBpZiAoaXRlbS5maXhlZFNpemUgPT09IG51bGwgfHwgcHJlZml4LmZpeGVkU2l6ZSA9PT0gbnVsbCkge1xuICAgICAgdGhyb3cgbmV3IEV4cGVjdGVkRml4ZWRTaXplU2VyaWFsaXplckVycm9yKFxuICAgICAgICAnRml4ZWQgbnVsbGFibGVzIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCBmaXhlZC1zaXplIHNlcmlhbGl6ZXJzJ1xuICAgICAgKTtcbiAgICB9XG4gICAgZGVzY3JpcHRpb25TdWZmaXggKz0gJzsgZml4ZWQnO1xuICAgIGZpeGVkU2l6ZSA9IHByZWZpeC5maXhlZFNpemUgKyBpdGVtLmZpeGVkU2l6ZTtcbiAgfVxuICByZXR1cm4ge1xuICAgIGRlc2NyaXB0aW9uOlxuICAgICAgb3B0aW9ucy5kZXNjcmlwdGlvbiA/P1xuICAgICAgYG51bGxhYmxlKCR7aXRlbS5kZXNjcmlwdGlvbiArIGRlc2NyaXB0aW9uU3VmZml4fSlgLFxuICAgIGZpeGVkU2l6ZSxcbiAgICBtYXhTaXplOiBzdW1TZXJpYWxpemVyU2l6ZXMoW3ByZWZpeC5tYXhTaXplLCBpdGVtLm1heFNpemVdKSxcbiAgICBzZXJpYWxpemU6IChvcHRpb246IE51bGxhYmxlPFQ+KSA9PiB7XG4gICAgICBjb25zdCBwcmVmaXhCeXRlID0gcHJlZml4LnNlcmlhbGl6ZShOdW1iZXIob3B0aW9uICE9PSBudWxsKSk7XG4gICAgICBpZiAoZml4ZWQpIHtcbiAgICAgICAgY29uc3QgaXRlbUZpeGVkU2l6ZSA9IGl0ZW0uZml4ZWRTaXplIGFzIG51bWJlcjtcbiAgICAgICAgY29uc3QgaXRlbUJ5dGVzID1cbiAgICAgICAgICBvcHRpb24gIT09IG51bGxcbiAgICAgICAgICAgID8gaXRlbS5zZXJpYWxpemUob3B0aW9uKS5zbGljZSgwLCBpdGVtRml4ZWRTaXplKVxuICAgICAgICAgICAgOiBuZXcgVWludDhBcnJheShpdGVtRml4ZWRTaXplKS5maWxsKDApO1xuICAgICAgICByZXR1cm4gbWVyZ2VCeXRlcyhbcHJlZml4Qnl0ZSwgaXRlbUJ5dGVzXSk7XG4gICAgICB9XG4gICAgICBjb25zdCBpdGVtQnl0ZXMgPVxuICAgICAgICBvcHRpb24gIT09IG51bGwgPyBpdGVtLnNlcmlhbGl6ZShvcHRpb24pIDogbmV3IFVpbnQ4QXJyYXkoKTtcbiAgICAgIHJldHVybiBtZXJnZUJ5dGVzKFtwcmVmaXhCeXRlLCBpdGVtQnl0ZXNdKTtcbiAgICB9LFxuICAgIGRlc2VyaWFsaXplOiAoYnl0ZXM6IFVpbnQ4QXJyYXksIG9mZnNldCA9IDApID0+IHtcbiAgICAgIGlmIChieXRlcy5zbGljZShvZmZzZXQpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICByZXR1cm4gW251bGwsIG9mZnNldF07XG4gICAgICB9XG4gICAgICBjb25zdCBmaXhlZE9mZnNldCA9XG4gICAgICAgIG9mZnNldCArIChwcmVmaXguZml4ZWRTaXplID8/IDApICsgKGl0ZW0uZml4ZWRTaXplID8/IDApO1xuICAgICAgY29uc3QgW2lzU29tZSwgcHJlZml4T2Zmc2V0XSA9IHByZWZpeC5kZXNlcmlhbGl6ZShieXRlcywgb2Zmc2V0KTtcbiAgICAgIG9mZnNldCA9IHByZWZpeE9mZnNldDtcbiAgICAgIGlmIChpc1NvbWUgPT09IDApIHtcbiAgICAgICAgcmV0dXJuIFtudWxsLCBmaXhlZCA/IGZpeGVkT2Zmc2V0IDogb2Zmc2V0XTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IFt2YWx1ZSwgbmV3T2Zmc2V0XSA9IGl0ZW0uZGVzZXJpYWxpemUoYnl0ZXMsIG9mZnNldCk7XG4gICAgICBvZmZzZXQgPSBuZXdPZmZzZXQ7XG4gICAgICByZXR1cm4gW3ZhbHVlLCBmaXhlZCA/IGZpeGVkT2Zmc2V0IDogb2Zmc2V0XTtcbiAgICB9LFxuICB9O1xufVxuIiwgImltcG9ydCB7XG4gIE9wdGlvbixcbiAgT3B0aW9uT3JOdWxsYWJsZSxcbiAgaXNPcHRpb24sXG4gIGlzU29tZSxcbiAgbm9uZSxcbiAgc29tZSxcbiAgd3JhcE51bGxhYmxlLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktb3B0aW9ucyc7XG5pbXBvcnQge1xuICBCYXNlU2VyaWFsaXplck9wdGlvbnMsXG4gIEV4cGVjdGVkRml4ZWRTaXplU2VyaWFsaXplckVycm9yLFxuICBTZXJpYWxpemVyLFxuICBtZXJnZUJ5dGVzLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQge1xuICBOdW1iZXJTZXJpYWxpemVyLFxuICB1OCxcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLW51bWJlcnMnO1xuaW1wb3J0IHsgc3VtU2VyaWFsaXplclNpemVzIH0gZnJvbSAnLi9zdW1TZXJpYWxpemVyU2l6ZXMnO1xuaW1wb3J0IHsgZ2V0U2l6ZURlc2NyaXB0aW9uIH0gZnJvbSAnLi91dGlscyc7XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgb3B0aW9ucyBmb3IgYE9wdGlvbmAgc2VyaWFsaXplcnMuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IHR5cGUgT3B0aW9uU2VyaWFsaXplck9wdGlvbnMgPSBCYXNlU2VyaWFsaXplck9wdGlvbnMgJiB7XG4gIC8qKlxuICAgKiBUaGUgc2VyaWFsaXplciB0byB1c2UgZm9yIHRoZSBib29sZWFuIHByZWZpeC5cbiAgICogQGRlZmF1bHRWYWx1ZSBgdTgoKWBcbiAgICovXG4gIHByZWZpeD86IE51bWJlclNlcmlhbGl6ZXI7XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBpdGVtIHNlcmlhbGl6ZXIgc2hvdWxkIGJlIG9mIGZpeGVkIHNpemUuXG4gICAqXG4gICAqIFdoZW4gdGhpcyBpcyB0cnVlLCBhIGBOb25lYCB2YWx1ZSB3aWxsIHNraXAgdGhlIGJ5dGVzIHRoYXQgd291bGRcbiAgICogaGF2ZSBiZWVuIHVzZWQgZm9yIHRoZSBpdGVtLiBOb3RlIHRoYXQgdGhpcyB3aWxsIG9ubHkgd29yayBpZiB0aGVcbiAgICogaXRlbSBzZXJpYWxpemVyIGlzIG9mIGZpeGVkIHNpemUuXG4gICAqIEBkZWZhdWx0VmFsdWUgYGZhbHNlYFxuICAgKi9cbiAgZml4ZWQ/OiBib29sZWFuO1xufTtcblxuLyoqXG4gKiBDcmVhdGVzIGEgc2VyaWFsaXplciBmb3IgYW4gb3B0aW9uYWwgdmFsdWUgdXNpbmcgdGhlIHtAbGluayBPcHRpb259IHR5cGUuXG4gKlxuICogQHBhcmFtIGl0ZW0gLSBUaGUgc2VyaWFsaXplciB0byB1c2UgZm9yIHRoZSB2YWx1ZSB0aGF0IG1heSBiZSBwcmVzZW50LlxuICogQHBhcmFtIG9wdGlvbnMgLSBBIHNldCBvZiBvcHRpb25zIGZvciB0aGUgc2VyaWFsaXplci5cbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgZnVuY3Rpb24gb3B0aW9uPFQsIFUgZXh0ZW5kcyBUID0gVD4oXG4gIGl0ZW06IFNlcmlhbGl6ZXI8VCwgVT4sXG4gIG9wdGlvbnM6IE9wdGlvblNlcmlhbGl6ZXJPcHRpb25zID0ge31cbik6IFNlcmlhbGl6ZXI8T3B0aW9uT3JOdWxsYWJsZTxUPiwgT3B0aW9uPFU+PiB7XG4gIGNvbnN0IHByZWZpeCA9IG9wdGlvbnMucHJlZml4ID8/IHU4KCk7XG4gIGNvbnN0IGZpeGVkID0gb3B0aW9ucy5maXhlZCA/PyBmYWxzZTtcbiAgbGV0IGRlc2NyaXB0aW9uU3VmZml4ID0gYDsgJHtnZXRTaXplRGVzY3JpcHRpb24ocHJlZml4KX1gO1xuICBsZXQgZml4ZWRTaXplID0gaXRlbS5maXhlZFNpemUgPT09IDAgPyBwcmVmaXguZml4ZWRTaXplIDogbnVsbDtcbiAgaWYgKGZpeGVkKSB7XG4gICAgaWYgKGl0ZW0uZml4ZWRTaXplID09PSBudWxsIHx8IHByZWZpeC5maXhlZFNpemUgPT09IG51bGwpIHtcbiAgICAgIHRocm93IG5ldyBFeHBlY3RlZEZpeGVkU2l6ZVNlcmlhbGl6ZXJFcnJvcihcbiAgICAgICAgJ0ZpeGVkIG9wdGlvbnMgY2FuIG9ubHkgYmUgdXNlZCB3aXRoIGZpeGVkLXNpemUgc2VyaWFsaXplcnMnXG4gICAgICApO1xuICAgIH1cbiAgICBkZXNjcmlwdGlvblN1ZmZpeCArPSAnOyBmaXhlZCc7XG4gICAgZml4ZWRTaXplID0gcHJlZml4LmZpeGVkU2l6ZSArIGl0ZW0uZml4ZWRTaXplO1xuICB9XG4gIHJldHVybiB7XG4gICAgZGVzY3JpcHRpb246XG4gICAgICBvcHRpb25zLmRlc2NyaXB0aW9uID8/IGBvcHRpb24oJHtpdGVtLmRlc2NyaXB0aW9uICsgZGVzY3JpcHRpb25TdWZmaXh9KWAsXG4gICAgZml4ZWRTaXplLFxuICAgIG1heFNpemU6IHN1bVNlcmlhbGl6ZXJTaXplcyhbcHJlZml4Lm1heFNpemUsIGl0ZW0ubWF4U2l6ZV0pLFxuICAgIHNlcmlhbGl6ZTogKG9wdGlvbk9yTnVsbGFibGU6IE9wdGlvbk9yTnVsbGFibGU8VD4pID0+IHtcbiAgICAgIGNvbnN0IG9wdGlvbiA9IGlzT3B0aW9uPFQ+KG9wdGlvbk9yTnVsbGFibGUpXG4gICAgICAgID8gb3B0aW9uT3JOdWxsYWJsZVxuICAgICAgICA6IHdyYXBOdWxsYWJsZShvcHRpb25Pck51bGxhYmxlKTtcblxuICAgICAgY29uc3QgcHJlZml4Qnl0ZSA9IHByZWZpeC5zZXJpYWxpemUoTnVtYmVyKGlzU29tZShvcHRpb24pKSk7XG4gICAgICBpZiAoZml4ZWQpIHtcbiAgICAgICAgY29uc3QgaXRlbUZpeGVkU2l6ZSA9IGl0ZW0uZml4ZWRTaXplIGFzIG51bWJlcjtcbiAgICAgICAgY29uc3QgaXRlbUJ5dGVzID0gaXNTb21lKG9wdGlvbilcbiAgICAgICAgICA/IGl0ZW0uc2VyaWFsaXplKG9wdGlvbi52YWx1ZSkuc2xpY2UoMCwgaXRlbUZpeGVkU2l6ZSlcbiAgICAgICAgICA6IG5ldyBVaW50OEFycmF5KGl0ZW1GaXhlZFNpemUpLmZpbGwoMCk7XG4gICAgICAgIHJldHVybiBtZXJnZUJ5dGVzKFtwcmVmaXhCeXRlLCBpdGVtQnl0ZXNdKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGl0ZW1CeXRlcyA9IGlzU29tZShvcHRpb24pXG4gICAgICAgID8gaXRlbS5zZXJpYWxpemUob3B0aW9uLnZhbHVlKVxuICAgICAgICA6IG5ldyBVaW50OEFycmF5KCk7XG4gICAgICByZXR1cm4gbWVyZ2VCeXRlcyhbcHJlZml4Qnl0ZSwgaXRlbUJ5dGVzXSk7XG4gICAgfSxcbiAgICBkZXNlcmlhbGl6ZTogKGJ5dGVzOiBVaW50OEFycmF5LCBvZmZzZXQgPSAwKSA9PiB7XG4gICAgICBpZiAoYnl0ZXMuc2xpY2Uob2Zmc2V0KS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgcmV0dXJuIFtub25lKCksIG9mZnNldF07XG4gICAgICB9XG4gICAgICBjb25zdCBmaXhlZE9mZnNldCA9XG4gICAgICAgIG9mZnNldCArIChwcmVmaXguZml4ZWRTaXplID8/IDApICsgKGl0ZW0uZml4ZWRTaXplID8/IDApO1xuICAgICAgY29uc3QgW2lzU29tZSwgcHJlZml4T2Zmc2V0XSA9IHByZWZpeC5kZXNlcmlhbGl6ZShieXRlcywgb2Zmc2V0KTtcbiAgICAgIG9mZnNldCA9IHByZWZpeE9mZnNldDtcbiAgICAgIGlmIChpc1NvbWUgPT09IDApIHtcbiAgICAgICAgcmV0dXJuIFtub25lKCksIGZpeGVkID8gZml4ZWRPZmZzZXQgOiBvZmZzZXRdO1xuICAgICAgfVxuICAgICAgY29uc3QgW3ZhbHVlLCBuZXdPZmZzZXRdID0gaXRlbS5kZXNlcmlhbGl6ZShieXRlcywgb2Zmc2V0KTtcbiAgICAgIG9mZnNldCA9IG5ld09mZnNldDtcbiAgICAgIHJldHVybiBbc29tZSh2YWx1ZSksIGZpeGVkID8gZml4ZWRPZmZzZXQgOiBvZmZzZXRdO1xuICAgIH0sXG4gIH07XG59XG4iLCAiaW1wb3J0IHtcbiAgUFVCTElDX0tFWV9MRU5HVEgsXG4gIFB1YmxpY0tleSxcbiAgUHVibGljS2V5SW5wdXQsXG4gIHB1YmxpY0tleUJ5dGVzLFxuICBwdWJsaWNLZXkgYXMgdG9QdWJsaWNLZXksXG59IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1wdWJsaWMta2V5cyc7XG5pbXBvcnQge1xuICBCYXNlU2VyaWFsaXplck9wdGlvbnMsXG4gIERlc2VyaWFsaXppbmdFbXB0eUJ1ZmZlckVycm9yLFxuICBOb3RFbm91Z2hCeXRlc0Vycm9yLFxuICBTZXJpYWxpemVyLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgb3B0aW9ucyBmb3IgYFB1YmxpY0tleWAgc2VyaWFsaXplcnMuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IHR5cGUgUHVibGljS2V5U2VyaWFsaXplck9wdGlvbnMgPSBCYXNlU2VyaWFsaXplck9wdGlvbnM7XG5cbi8qKlxuICogQ3JlYXRlcyBhIHNlcmlhbGl6ZXIgZm9yIGJhc2U1OCBlbmNvZGVkIHB1YmxpYyBrZXlzLlxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHB1YmxpY0tleShcbiAgb3B0aW9uczogUHVibGljS2V5U2VyaWFsaXplck9wdGlvbnMgPSB7fVxuKTogU2VyaWFsaXplcjxQdWJsaWNLZXlJbnB1dCwgUHVibGljS2V5PiB7XG4gIHJldHVybiB7XG4gICAgZGVzY3JpcHRpb246IG9wdGlvbnMuZGVzY3JpcHRpb24gPz8gJ3B1YmxpY0tleScsXG4gICAgZml4ZWRTaXplOiAzMixcbiAgICBtYXhTaXplOiAzMixcbiAgICBzZXJpYWxpemU6ICh2YWx1ZTogUHVibGljS2V5SW5wdXQpID0+IHB1YmxpY0tleUJ5dGVzKHRvUHVibGljS2V5KHZhbHVlKSksXG4gICAgZGVzZXJpYWxpemU6IChieXRlczogVWludDhBcnJheSwgb2Zmc2V0ID0gMCkgPT4ge1xuICAgICAgY29uc3QgcHVia2V5Qnl0ZXMgPSBieXRlcy5zbGljZShvZmZzZXQsIG9mZnNldCArIDMyKTtcbiAgICAgIGlmIChwdWJrZXlCeXRlcy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgdGhyb3cgbmV3IERlc2VyaWFsaXppbmdFbXB0eUJ1ZmZlckVycm9yKCdwdWJsaWNLZXknKTtcbiAgICAgIH1cbiAgICAgIGlmIChwdWJrZXlCeXRlcy5sZW5ndGggPCBQVUJMSUNfS0VZX0xFTkdUSCkge1xuICAgICAgICB0aHJvdyBuZXcgTm90RW5vdWdoQnl0ZXNFcnJvcihcbiAgICAgICAgICAncHVibGljS2V5JyxcbiAgICAgICAgICBQVUJMSUNfS0VZX0xFTkdUSCxcbiAgICAgICAgICBwdWJrZXlCeXRlcy5sZW5ndGhcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBbdG9QdWJsaWNLZXkocHVia2V5Qnl0ZXMpLCBvZmZzZXQgKyAzMl07XG4gICAgfSxcbiAgfTtcbn1cbiIsICJpbXBvcnQge1xuICBCYXNlU2VyaWFsaXplck9wdGlvbnMsXG4gIERlc2VyaWFsaXppbmdFbXB0eUJ1ZmZlckVycm9yLFxuICBTZXJpYWxpemVyLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQge1xuICBOdW1iZXJTZXJpYWxpemVyLFxuICB1OCxcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLW51bWJlcnMnO1xuaW1wb3J0IHtcbiAgRW51bURpc2NyaW1pbmF0b3JPdXRPZlJhbmdlRXJyb3IsXG4gIEludmFsaWRTY2FsYXJFbnVtVmFyaWFudEVycm9yLFxufSBmcm9tICcuL2Vycm9ycyc7XG5cbi8qKlxuICogRGVmaW5lcyBhIHNjYWxhciBlbnVtIGFzIGEgdHlwZSBmcm9tIGl0cyBjb25zdHJ1Y3Rvci5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHNcbiAqIGVudW0gRGlyZWN0aW9uIHsgTGVmdCwgUmlnaHQgfTtcbiAqIHR5cGUgRGlyZWN0aW9uVHlwZSA9IFNjYWxhckVudW08RGlyZWN0aW9uPjtcbiAqIGBgYFxuICpcbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgdHlwZSBTY2FsYXJFbnVtPFQ+ID1cbiAgfCB7IFtrZXk6IG51bWJlciB8IHN0cmluZ106IHN0cmluZyB8IG51bWJlciB8IFQgfVxuICB8IG51bWJlclxuICB8IFQ7XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgb3B0aW9ucyBmb3Igc2NhbGFyIGVudW0gc2VyaWFsaXplcnMuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IHR5cGUgU2NhbGFyRW51bVNlcmlhbGl6ZXJPcHRpb25zID0gQmFzZVNlcmlhbGl6ZXJPcHRpb25zICYge1xuICAvKipcbiAgICogVGhlIHNlcmlhbGl6ZXIgdG8gdXNlIGZvciB0aGUgZW51bSBkaXNjcmltaW5hdG9yLlxuICAgKiBAZGVmYXVsdFZhbHVlIGB1OCgpYFxuICAgKi9cbiAgc2l6ZT86IE51bWJlclNlcmlhbGl6ZXI7XG59O1xuXG4vKipcbiAqIENyZWF0ZXMgYSBzY2FsYXIgZW51bSBzZXJpYWxpemVyLlxuICpcbiAqIEBwYXJhbSBjb25zdHJ1Y3RvciAtIFRoZSBjb25zdHJ1Y3RvciBvZiB0aGUgc2NhbGFyIGVudW0uXG4gKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzY2FsYXJFbnVtPFQ+KFxuICBjb25zdHJ1Y3RvcjogU2NhbGFyRW51bTxUPiAmIHt9LFxuICBvcHRpb25zOiBTY2FsYXJFbnVtU2VyaWFsaXplck9wdGlvbnMgPSB7fVxuKTogU2VyaWFsaXplcjxUPiB7XG4gIGNvbnN0IHByZWZpeCA9IG9wdGlvbnMuc2l6ZSA/PyB1OCgpO1xuICBjb25zdCBlbnVtS2V5cyA9IE9iamVjdC5rZXlzKGNvbnN0cnVjdG9yKTtcbiAgY29uc3QgZW51bVZhbHVlcyA9IE9iamVjdC52YWx1ZXMoY29uc3RydWN0b3IpO1xuICBjb25zdCBpc051bWVyaWNFbnVtID0gZW51bVZhbHVlcy5zb21lKCh2KSA9PiB0eXBlb2YgdiA9PT0gJ251bWJlcicpO1xuICBjb25zdCB2YWx1ZURlc2NyaXB0aW9ucyA9IGVudW1WYWx1ZXNcbiAgICAuZmlsdGVyKCh2KSA9PiB0eXBlb2YgdiA9PT0gJ3N0cmluZycpXG4gICAgLmpvaW4oJywgJyk7XG4gIGNvbnN0IG1pblJhbmdlID0gMDtcbiAgY29uc3QgbWF4UmFuZ2UgPSBpc051bWVyaWNFbnVtXG4gICAgPyBlbnVtVmFsdWVzLmxlbmd0aCAvIDIgLSAxXG4gICAgOiBlbnVtVmFsdWVzLmxlbmd0aCAtIDE7XG4gIGNvbnN0IHN0cmluZ1ZhbHVlczogc3RyaW5nW10gPSBpc051bWVyaWNFbnVtXG4gICAgPyBbLi4uZW51bUtleXNdXG4gICAgOiBbLi4ubmV3IFNldChbLi4uZW51bUtleXMsIC4uLmVudW1WYWx1ZXNdKV07XG4gIGZ1bmN0aW9uIGFzc2VydFZhbGlkVmFyaWFudCh2YXJpYW50OiBudW1iZXIgfCBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBpc0ludmFsaWROdW1iZXIgPVxuICAgICAgdHlwZW9mIHZhcmlhbnQgPT09ICdudW1iZXInICYmICh2YXJpYW50IDwgbWluUmFuZ2UgfHwgdmFyaWFudCA+IG1heFJhbmdlKTtcbiAgICBjb25zdCBpc0ludmFsaWRTdHJpbmcgPVxuICAgICAgdHlwZW9mIHZhcmlhbnQgPT09ICdzdHJpbmcnICYmICFzdHJpbmdWYWx1ZXMuaW5jbHVkZXModmFyaWFudCk7XG4gICAgaWYgKGlzSW52YWxpZE51bWJlciB8fCBpc0ludmFsaWRTdHJpbmcpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkU2NhbGFyRW51bVZhcmlhbnRFcnJvcihcbiAgICAgICAgdmFyaWFudCxcbiAgICAgICAgc3RyaW5nVmFsdWVzLFxuICAgICAgICBtaW5SYW5nZSxcbiAgICAgICAgbWF4UmFuZ2VcbiAgICAgICk7XG4gICAgfVxuICB9XG4gIHJldHVybiB7XG4gICAgZGVzY3JpcHRpb246XG4gICAgICBvcHRpb25zLmRlc2NyaXB0aW9uID8/XG4gICAgICBgZW51bSgke3ZhbHVlRGVzY3JpcHRpb25zfTsgJHtwcmVmaXguZGVzY3JpcHRpb259KWAsXG4gICAgZml4ZWRTaXplOiBwcmVmaXguZml4ZWRTaXplLFxuICAgIG1heFNpemU6IHByZWZpeC5tYXhTaXplLFxuICAgIHNlcmlhbGl6ZTogKHZhbHVlOiBUKSA9PiB7XG4gICAgICBhc3NlcnRWYWxpZFZhcmlhbnQodmFsdWUgYXMgc3RyaW5nIHwgbnVtYmVyKTtcbiAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSByZXR1cm4gcHJlZml4LnNlcmlhbGl6ZSh2YWx1ZSk7XG4gICAgICBjb25zdCB2YWx1ZUluZGV4ID0gZW51bVZhbHVlcy5pbmRleE9mKHZhbHVlKTtcbiAgICAgIGlmICh2YWx1ZUluZGV4ID49IDApIHJldHVybiBwcmVmaXguc2VyaWFsaXplKHZhbHVlSW5kZXgpO1xuICAgICAgcmV0dXJuIHByZWZpeC5zZXJpYWxpemUoZW51bUtleXMuaW5kZXhPZih2YWx1ZSBhcyBzdHJpbmcpKTtcbiAgICB9LFxuICAgIGRlc2VyaWFsaXplOiAoYnl0ZXM6IFVpbnQ4QXJyYXksIG9mZnNldCA9IDApID0+IHtcbiAgICAgIGlmIChieXRlcy5zbGljZShvZmZzZXQpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICB0aHJvdyBuZXcgRGVzZXJpYWxpemluZ0VtcHR5QnVmZmVyRXJyb3IoJ2VudW0nKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IFt2YWx1ZSwgbmV3T2Zmc2V0XSA9IHByZWZpeC5kZXNlcmlhbGl6ZShieXRlcywgb2Zmc2V0KTtcbiAgICAgIGNvbnN0IHZhbHVlQXNOdW1iZXIgPSBOdW1iZXIodmFsdWUpO1xuICAgICAgb2Zmc2V0ID0gbmV3T2Zmc2V0O1xuICAgICAgaWYgKHZhbHVlQXNOdW1iZXIgPCBtaW5SYW5nZSB8fCB2YWx1ZUFzTnVtYmVyID4gbWF4UmFuZ2UpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVudW1EaXNjcmltaW5hdG9yT3V0T2ZSYW5nZUVycm9yKFxuICAgICAgICAgIHZhbHVlQXNOdW1iZXIsXG4gICAgICAgICAgbWluUmFuZ2UsXG4gICAgICAgICAgbWF4UmFuZ2VcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBbXG4gICAgICAgIChpc051bWVyaWNFbnVtID8gdmFsdWVBc051bWJlciA6IGVudW1WYWx1ZXNbdmFsdWVBc051bWJlcl0pIGFzIFQsXG4gICAgICAgIG9mZnNldCxcbiAgICAgIF07XG4gICAgfSxcbiAgfTtcbn1cbiIsICJpbXBvcnQge1xuICBCYXNlU2VyaWFsaXplck9wdGlvbnMsXG4gIEV4cGVjdGVkRml4ZWRTaXplU2VyaWFsaXplckVycm9yLFxuICBtZXJnZUJ5dGVzLFxuICBTZXJpYWxpemVyLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQgeyB1MzIgfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtbnVtYmVycyc7XG5pbXBvcnQgeyBBcnJheUxpa2VTZXJpYWxpemVyU2l6ZSB9IGZyb20gJy4vYXJyYXlMaWtlU2VyaWFsaXplclNpemUnO1xuaW1wb3J0IHtcbiAgZ2V0UmVzb2x2ZWRTaXplLFxuICBnZXRTaXplRGVzY3JpcHRpb24sXG4gIGdldFNpemVGcm9tQ2hpbGRyZW4sXG4gIGdldFNpemVQcmVmaXgsXG59IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgSW52YWxpZE51bWJlck9mSXRlbXNFcnJvciB9IGZyb20gJy4vZXJyb3JzJztcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBvcHRpb25zIGZvciBgU2V0YCBzZXJpYWxpemVycy5cbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgdHlwZSBTZXRTZXJpYWxpemVyT3B0aW9ucyA9IEJhc2VTZXJpYWxpemVyT3B0aW9ucyAmIHtcbiAgLyoqXG4gICAqIFRoZSBzaXplIG9mIHRoZSBzZXQuXG4gICAqIEBkZWZhdWx0VmFsdWUgYHUzMigpYFxuICAgKi9cbiAgc2l6ZT86IEFycmF5TGlrZVNlcmlhbGl6ZXJTaXplO1xufTtcblxuLyoqXG4gKiBDcmVhdGVzIGEgc2VyaWFsaXplciBmb3IgYSBzZXQuXG4gKlxuICogQHBhcmFtIGl0ZW0gLSBUaGUgc2VyaWFsaXplciB0byB1c2UgZm9yIHRoZSBzZXQncyBpdGVtcy5cbiAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNldDxULCBVIGV4dGVuZHMgVCA9IFQ+KFxuICBpdGVtOiBTZXJpYWxpemVyPFQsIFU+LFxuICBvcHRpb25zOiBTZXRTZXJpYWxpemVyT3B0aW9ucyA9IHt9XG4pOiBTZXJpYWxpemVyPFNldDxUPiwgU2V0PFU+PiB7XG4gIGNvbnN0IHNpemUgPSBvcHRpb25zLnNpemUgPz8gdTMyKCk7XG4gIGlmIChzaXplID09PSAncmVtYWluZGVyJyAmJiBpdGVtLmZpeGVkU2l6ZSA9PT0gbnVsbCkge1xuICAgIHRocm93IG5ldyBFeHBlY3RlZEZpeGVkU2l6ZVNlcmlhbGl6ZXJFcnJvcihcbiAgICAgICdTZXJpYWxpemVycyBvZiBcInJlbWFpbmRlclwiIHNpemUgbXVzdCBoYXZlIGZpeGVkLXNpemUgaXRlbXMuJ1xuICAgICk7XG4gIH1cbiAgcmV0dXJuIHtcbiAgICBkZXNjcmlwdGlvbjpcbiAgICAgIG9wdGlvbnMuZGVzY3JpcHRpb24gPz9cbiAgICAgIGBzZXQoJHtpdGVtLmRlc2NyaXB0aW9ufTsgJHtnZXRTaXplRGVzY3JpcHRpb24oc2l6ZSl9KWAsXG4gICAgZml4ZWRTaXplOiBnZXRTaXplRnJvbUNoaWxkcmVuKHNpemUsIFtpdGVtLmZpeGVkU2l6ZV0pLFxuICAgIG1heFNpemU6IGdldFNpemVGcm9tQ2hpbGRyZW4oc2l6ZSwgW2l0ZW0ubWF4U2l6ZV0pLFxuICAgIHNlcmlhbGl6ZTogKHNldDogU2V0PFQ+KSA9PiB7XG4gICAgICBpZiAodHlwZW9mIHNpemUgPT09ICdudW1iZXInICYmIHNldC5zaXplICE9PSBzaXplKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkTnVtYmVyT2ZJdGVtc0Vycm9yKCdzZXQnLCBzaXplLCBzZXQuc2l6ZSk7XG4gICAgICB9XG4gICAgICBjb25zdCBpdGVtQnl0ZXMgPSBBcnJheS5mcm9tKHNldCwgKHZhbHVlKSA9PiBpdGVtLnNlcmlhbGl6ZSh2YWx1ZSkpO1xuICAgICAgcmV0dXJuIG1lcmdlQnl0ZXMoW2dldFNpemVQcmVmaXgoc2l6ZSwgc2V0LnNpemUpLCAuLi5pdGVtQnl0ZXNdKTtcbiAgICB9LFxuICAgIGRlc2VyaWFsaXplOiAoYnl0ZXM6IFVpbnQ4QXJyYXksIG9mZnNldCA9IDApID0+IHtcbiAgICAgIGNvbnN0IHNldDogU2V0PFU+ID0gbmV3IFNldCgpO1xuICAgICAgaWYgKHR5cGVvZiBzaXplID09PSAnb2JqZWN0JyAmJiBieXRlcy5zbGljZShvZmZzZXQpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICByZXR1cm4gW3NldCwgb2Zmc2V0XTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IFtyZXNvbHZlZFNpemUsIG5ld09mZnNldF0gPSBnZXRSZXNvbHZlZFNpemUoXG4gICAgICAgIHNpemUsXG4gICAgICAgIFtpdGVtLmZpeGVkU2l6ZV0sXG4gICAgICAgIGJ5dGVzLFxuICAgICAgICBvZmZzZXRcbiAgICAgICk7XG4gICAgICBvZmZzZXQgPSBuZXdPZmZzZXQ7XG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHJlc29sdmVkU2l6ZTsgaSArPSAxKSB7XG4gICAgICAgIGNvbnN0IFt2YWx1ZSwgbmV3T2Zmc2V0XSA9IGl0ZW0uZGVzZXJpYWxpemUoYnl0ZXMsIG9mZnNldCk7XG4gICAgICAgIG9mZnNldCA9IG5ld09mZnNldDtcbiAgICAgICAgc2V0LmFkZCh2YWx1ZSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gW3NldCwgb2Zmc2V0XTtcbiAgICB9LFxuICB9O1xufVxuIiwgImltcG9ydCB7XG4gIEJhc2VTZXJpYWxpemVyT3B0aW9ucyxcbiAgRGVzZXJpYWxpemluZ0VtcHR5QnVmZmVyRXJyb3IsXG4gIE5vdEVub3VnaEJ5dGVzRXJyb3IsXG4gIFNlcmlhbGl6ZXIsXG4gIGZpeFNlcmlhbGl6ZXIsXG4gIG1lcmdlQnl0ZXMsXG59IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcbmltcG9ydCB7IHV0ZjggfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtZW5jb2RpbmdzJztcbmltcG9ydCB7XG4gIE51bWJlclNlcmlhbGl6ZXIsXG4gIHUzMixcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzLW51bWJlcnMnO1xuaW1wb3J0IHsgZ2V0U2l6ZURlc2NyaXB0aW9uIH0gZnJvbSAnLi91dGlscyc7XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgb3B0aW9ucyBmb3Igc3RyaW5nIHNlcmlhbGl6ZXJzLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCB0eXBlIFN0cmluZ1NlcmlhbGl6ZXJPcHRpb25zID0gQmFzZVNlcmlhbGl6ZXJPcHRpb25zICYge1xuICAvKipcbiAgICogVGhlIHNpemUgb2YgdGhlIHN0cmluZy4gSXQgY2FuIGJlIG9uZSBvZiB0aGUgZm9sbG93aW5nOlxuICAgKiAtIGEge0BsaW5rIE51bWJlclNlcmlhbGl6ZXJ9IHRoYXQgcHJlZml4ZXMgdGhlIHN0cmluZyB3aXRoIGl0cyBzaXplLlxuICAgKiAtIGEgZml4ZWQgbnVtYmVyIG9mIGJ5dGVzLlxuICAgKiAtIG9yIGAndmFyaWFibGUnYCB0byB1c2UgdGhlIHJlc3Qgb2YgdGhlIGJ1ZmZlci5cbiAgICogQGRlZmF1bHRWYWx1ZSBgdTMyKClgXG4gICAqL1xuICBzaXplPzogTnVtYmVyU2VyaWFsaXplciB8IG51bWJlciB8ICd2YXJpYWJsZSc7XG4gIC8qKlxuICAgKiBUaGUgc3RyaW5nIHNlcmlhbGl6ZXIgdG8gdXNlIGZvciBlbmNvZGluZyBhbmQgZGVjb2RpbmcgdGhlIGNvbnRlbnQuXG4gICAqIEBkZWZhdWx0VmFsdWUgYHV0ZjhgXG4gICAqL1xuICBlbmNvZGluZz86IFNlcmlhbGl6ZXI8c3RyaW5nPjtcbn07XG5cbi8qKlxuICogQ3JlYXRlcyBhIHN0cmluZyBzZXJpYWxpemVyLlxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gKiBAY2F0ZWdvcnkgU2VyaWFsaXplcnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHN0cmluZyhcbiAgb3B0aW9uczogU3RyaW5nU2VyaWFsaXplck9wdGlvbnMgPSB7fVxuKTogU2VyaWFsaXplcjxzdHJpbmc+IHtcbiAgY29uc3Qgc2l6ZSA9IG9wdGlvbnMuc2l6ZSA/PyB1MzIoKTtcbiAgY29uc3QgZW5jb2RpbmcgPSBvcHRpb25zLmVuY29kaW5nID8/IHV0Zjg7XG4gIGNvbnN0IGRlc2NyaXB0aW9uID1cbiAgICBvcHRpb25zLmRlc2NyaXB0aW9uID8/XG4gICAgYHN0cmluZygke2VuY29kaW5nLmRlc2NyaXB0aW9ufTsgJHtnZXRTaXplRGVzY3JpcHRpb24oc2l6ZSl9KWA7XG5cbiAgaWYgKHNpemUgPT09ICd2YXJpYWJsZScpIHtcbiAgICByZXR1cm4geyAuLi5lbmNvZGluZywgZGVzY3JpcHRpb24gfTtcbiAgfVxuXG4gIGlmICh0eXBlb2Ygc2l6ZSA9PT0gJ251bWJlcicpIHtcbiAgICByZXR1cm4gZml4U2VyaWFsaXplcihlbmNvZGluZywgc2l6ZSwgZGVzY3JpcHRpb24pO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBkZXNjcmlwdGlvbixcbiAgICBmaXhlZFNpemU6IG51bGwsXG4gICAgbWF4U2l6ZTogbnVsbCxcbiAgICBzZXJpYWxpemU6ICh2YWx1ZTogc3RyaW5nKSA9PiB7XG4gICAgICBjb25zdCBjb250ZW50Qnl0ZXMgPSBlbmNvZGluZy5zZXJpYWxpemUodmFsdWUpO1xuICAgICAgY29uc3QgbGVuZ3RoQnl0ZXMgPSBzaXplLnNlcmlhbGl6ZShjb250ZW50Qnl0ZXMubGVuZ3RoKTtcbiAgICAgIHJldHVybiBtZXJnZUJ5dGVzKFtsZW5ndGhCeXRlcywgY29udGVudEJ5dGVzXSk7XG4gICAgfSxcbiAgICBkZXNlcmlhbGl6ZTogKGJ1ZmZlcjogVWludDhBcnJheSwgb2Zmc2V0ID0gMCkgPT4ge1xuICAgICAgaWYgKGJ1ZmZlci5zbGljZShvZmZzZXQpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICB0aHJvdyBuZXcgRGVzZXJpYWxpemluZ0VtcHR5QnVmZmVyRXJyb3IoJ3N0cmluZycpO1xuICAgICAgfVxuICAgICAgY29uc3QgW2xlbmd0aEJpZ0ludCwgbGVuZ3RoT2Zmc2V0XSA9IHNpemUuZGVzZXJpYWxpemUoYnVmZmVyLCBvZmZzZXQpO1xuICAgICAgY29uc3QgbGVuZ3RoID0gTnVtYmVyKGxlbmd0aEJpZ0ludCk7XG4gICAgICBvZmZzZXQgPSBsZW5ndGhPZmZzZXQ7XG4gICAgICBjb25zdCBjb250ZW50QnVmZmVyID0gYnVmZmVyLnNsaWNlKG9mZnNldCwgb2Zmc2V0ICsgbGVuZ3RoKTtcbiAgICAgIGlmIChjb250ZW50QnVmZmVyLmxlbmd0aCA8IGxlbmd0aCkge1xuICAgICAgICB0aHJvdyBuZXcgTm90RW5vdWdoQnl0ZXNFcnJvcignc3RyaW5nJywgbGVuZ3RoLCBjb250ZW50QnVmZmVyLmxlbmd0aCk7XG4gICAgICB9XG4gICAgICBjb25zdCBbdmFsdWUsIGNvbnRlbnRPZmZzZXRdID0gZW5jb2RpbmcuZGVzZXJpYWxpemUoY29udGVudEJ1ZmZlcik7XG4gICAgICBvZmZzZXQgKz0gY29udGVudE9mZnNldDtcbiAgICAgIHJldHVybiBbdmFsdWUsIG9mZnNldF07XG4gICAgfSxcbiAgfTtcbn1cbiIsICJpbXBvcnQge1xuICBCYXNlU2VyaWFsaXplck9wdGlvbnMsXG4gIFNlcmlhbGl6ZXIsXG4gIG1lcmdlQnl0ZXMsXG59IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcbmltcG9ydCB7IHN1bVNlcmlhbGl6ZXJTaXplcyB9IGZyb20gJy4vc3VtU2VyaWFsaXplclNpemVzJztcblxuLyoqXG4gKiBHZXQgdGhlIG5hbWUgYW5kIHNlcmlhbGl6ZXIgb2YgZWFjaCBmaWVsZCBpbiBhIHN0cnVjdC5cbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgdHlwZSBTdHJ1Y3RUb1NlcmlhbGl6ZXJUdXBsZTxUIGV4dGVuZHMgb2JqZWN0LCBVIGV4dGVuZHMgVD4gPSBBcnJheTxcbiAge1xuICAgIFtLIGluIGtleW9mIFRdOiBbSywgU2VyaWFsaXplcjxUW0tdLCBVW0tdPl07XG4gIH1ba2V5b2YgVF1cbj47XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgb3B0aW9ucyBmb3Igc3RydWN0IHNlcmlhbGl6ZXJzLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCB0eXBlIFN0cnVjdFNlcmlhbGl6ZXJPcHRpb25zID0gQmFzZVNlcmlhbGl6ZXJPcHRpb25zO1xuXG4vKipcbiAqIENyZWF0ZXMgYSBzZXJpYWxpemVyIGZvciBhIGN1c3RvbSBvYmplY3QuXG4gKlxuICogQHBhcmFtIGZpZWxkcyAtIFRoZSBuYW1lIGFuZCBzZXJpYWxpemVyIG9mIGVhY2ggZmllbGQuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzdHJ1Y3Q8VCBleHRlbmRzIG9iamVjdCwgVSBleHRlbmRzIFQgPSBUPihcbiAgZmllbGRzOiBTdHJ1Y3RUb1NlcmlhbGl6ZXJUdXBsZTxULCBVPixcbiAgb3B0aW9uczogU3RydWN0U2VyaWFsaXplck9wdGlvbnMgPSB7fVxuKTogU2VyaWFsaXplcjxULCBVPiB7XG4gIGNvbnN0IGZpZWxkRGVzY3JpcHRpb25zID0gZmllbGRzXG4gICAgLm1hcCgoW25hbWUsIHNlcmlhbGl6ZXJdKSA9PiBgJHtTdHJpbmcobmFtZSl9OiAke3NlcmlhbGl6ZXIuZGVzY3JpcHRpb259YClcbiAgICAuam9pbignLCAnKTtcbiAgcmV0dXJuIHtcbiAgICBkZXNjcmlwdGlvbjogb3B0aW9ucy5kZXNjcmlwdGlvbiA/PyBgc3RydWN0KCR7ZmllbGREZXNjcmlwdGlvbnN9KWAsXG4gICAgZml4ZWRTaXplOiBzdW1TZXJpYWxpemVyU2l6ZXMoZmllbGRzLm1hcCgoWywgZmllbGRdKSA9PiBmaWVsZC5maXhlZFNpemUpKSxcbiAgICBtYXhTaXplOiBzdW1TZXJpYWxpemVyU2l6ZXMoZmllbGRzLm1hcCgoWywgZmllbGRdKSA9PiBmaWVsZC5tYXhTaXplKSksXG4gICAgc2VyaWFsaXplOiAoc3RydWN0OiBUKSA9PiB7XG4gICAgICBjb25zdCBmaWVsZEJ5dGVzID0gZmllbGRzLm1hcCgoW2tleSwgc2VyaWFsaXplcl0pID0+XG4gICAgICAgIHNlcmlhbGl6ZXIuc2VyaWFsaXplKHN0cnVjdFtrZXldKVxuICAgICAgKTtcbiAgICAgIHJldHVybiBtZXJnZUJ5dGVzKGZpZWxkQnl0ZXMpO1xuICAgIH0sXG4gICAgZGVzZXJpYWxpemU6IChieXRlczogVWludDhBcnJheSwgb2Zmc2V0ID0gMCkgPT4ge1xuICAgICAgY29uc3Qgc3RydWN0OiBQYXJ0aWFsPFU+ID0ge307XG4gICAgICBmaWVsZHMuZm9yRWFjaCgoW2tleSwgc2VyaWFsaXplcl0pID0+IHtcbiAgICAgICAgY29uc3QgW3ZhbHVlLCBuZXdPZmZzZXRdID0gc2VyaWFsaXplci5kZXNlcmlhbGl6ZShieXRlcywgb2Zmc2V0KTtcbiAgICAgICAgb2Zmc2V0ID0gbmV3T2Zmc2V0O1xuICAgICAgICBzdHJ1Y3Rba2V5XSA9IHZhbHVlO1xuICAgICAgfSk7XG4gICAgICByZXR1cm4gW3N0cnVjdCBhcyBVLCBvZmZzZXRdO1xuICAgIH0sXG4gIH07XG59XG4iLCAiaW1wb3J0IHtcbiAgV3JhcEluU2VyaWFsaXplcixcbiAgU2VyaWFsaXplcixcbiAgbWVyZ2VCeXRlcyxcbiAgQmFzZVNlcmlhbGl6ZXJPcHRpb25zLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktc2VyaWFsaXplcnMtY29yZSc7XG5pbXBvcnQgeyBzdW1TZXJpYWxpemVyU2l6ZXMgfSBmcm9tICcuL3N1bVNlcmlhbGl6ZXJTaXplcyc7XG5pbXBvcnQgeyBJbnZhbGlkTnVtYmVyT2ZJdGVtc0Vycm9yIH0gZnJvbSAnLi9lcnJvcnMnO1xuXG4vKipcbiAqIERlZmluZXMgdGhlIG9wdGlvbnMgZm9yIHR1cGxlIHNlcmlhbGl6ZXJzLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCB0eXBlIFR1cGxlU2VyaWFsaXplck9wdGlvbnMgPSBCYXNlU2VyaWFsaXplck9wdGlvbnM7XG5cbi8qKlxuICogQ3JlYXRlcyBhIHNlcmlhbGl6ZXIgZm9yIGEgdHVwbGUtbGlrZSBhcnJheS5cbiAqXG4gKiBAcGFyYW0gaXRlbXMgLSBUaGUgc2VyaWFsaXplcnMgdG8gdXNlIGZvciBlYWNoIGl0ZW0gaW4gdGhlIHR1cGxlLlxuICogQHBhcmFtIG9wdGlvbnMgLSBBIHNldCBvZiBvcHRpb25zIGZvciB0aGUgc2VyaWFsaXplci5cbiAqIEBjYXRlZ29yeSBTZXJpYWxpemVyc1xuICovXG5leHBvcnQgZnVuY3Rpb24gdHVwbGU8VCBleHRlbmRzIGFueVtdLCBVIGV4dGVuZHMgVCA9IFQ+KFxuICBpdGVtczogV3JhcEluU2VyaWFsaXplcjxbLi4uVF0sIFsuLi5VXT4sXG4gIG9wdGlvbnM6IFR1cGxlU2VyaWFsaXplck9wdGlvbnMgPSB7fVxuKTogU2VyaWFsaXplcjxULCBVPiB7XG4gIGNvbnN0IGl0ZW1EZXNjcmlwdGlvbnMgPSBpdGVtcy5tYXAoKGl0ZW0pID0+IGl0ZW0uZGVzY3JpcHRpb24pLmpvaW4oJywgJyk7XG4gIHJldHVybiB7XG4gICAgZGVzY3JpcHRpb246IG9wdGlvbnMuZGVzY3JpcHRpb24gPz8gYHR1cGxlKCR7aXRlbURlc2NyaXB0aW9uc30pYCxcbiAgICBmaXhlZFNpemU6IHN1bVNlcmlhbGl6ZXJTaXplcyhpdGVtcy5tYXAoKGl0ZW0pID0+IGl0ZW0uZml4ZWRTaXplKSksXG4gICAgbWF4U2l6ZTogc3VtU2VyaWFsaXplclNpemVzKGl0ZW1zLm1hcCgoaXRlbSkgPT4gaXRlbS5tYXhTaXplKSksXG4gICAgc2VyaWFsaXplOiAodmFsdWU6IFQpID0+IHtcbiAgICAgIGlmICh2YWx1ZS5sZW5ndGggIT09IGl0ZW1zLmxlbmd0aCkge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE51bWJlck9mSXRlbXNFcnJvcihcbiAgICAgICAgICAndHVwbGUnLFxuICAgICAgICAgIGl0ZW1zLmxlbmd0aCxcbiAgICAgICAgICB2YWx1ZS5sZW5ndGhcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBtZXJnZUJ5dGVzKFxuICAgICAgICBpdGVtcy5tYXAoKGl0ZW0sIGluZGV4KSA9PiBpdGVtLnNlcmlhbGl6ZSh2YWx1ZVtpbmRleF0pKVxuICAgICAgKTtcbiAgICB9LFxuICAgIGRlc2VyaWFsaXplOiAoYnl0ZXM6IFVpbnQ4QXJyYXksIG9mZnNldCA9IDApID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlcyA9IFtdIGFzIGFueSBhcyBVO1xuICAgICAgaXRlbXMuZm9yRWFjaCgoc2VyaWFsaXplcikgPT4ge1xuICAgICAgICBjb25zdCBbbmV3VmFsdWUsIG5ld09mZnNldF0gPSBzZXJpYWxpemVyLmRlc2VyaWFsaXplKGJ5dGVzLCBvZmZzZXQpO1xuICAgICAgICB2YWx1ZXMucHVzaChuZXdWYWx1ZSk7XG4gICAgICAgIG9mZnNldCA9IG5ld09mZnNldDtcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIFt2YWx1ZXMsIG9mZnNldF07XG4gICAgfSxcbiAgfTtcbn1cbiIsICJpbXBvcnQge1xuICBCYXNlU2VyaWFsaXplck9wdGlvbnMsXG4gIFNlcmlhbGl6ZXIsXG59IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1zZXJpYWxpemVycy1jb3JlJztcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBvcHRpb25zIGZvciB1bml0IHNlcmlhbGl6ZXJzLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCB0eXBlIFVuaXRTZXJpYWxpemVyT3B0aW9ucyA9IEJhc2VTZXJpYWxpemVyT3B0aW9ucztcblxuLyoqXG4gKiBDcmVhdGVzIGEgdm9pZCBzZXJpYWxpemVyLlxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1bml0KG9wdGlvbnM6IFVuaXRTZXJpYWxpemVyT3B0aW9ucyA9IHt9KTogU2VyaWFsaXplcjx2b2lkPiB7XG4gIHJldHVybiB7XG4gICAgZGVzY3JpcHRpb246IG9wdGlvbnMuZGVzY3JpcHRpb24gPz8gJ3VuaXQnLFxuICAgIGZpeGVkU2l6ZTogMCxcbiAgICBtYXhTaXplOiAwLFxuICAgIHNlcmlhbGl6ZTogKCkgPT4gbmV3IFVpbnQ4QXJyYXkoKSxcbiAgICBkZXNlcmlhbGl6ZTogKF9ieXRlczogVWludDhBcnJheSwgb2Zmc2V0ID0gMCkgPT4gW3VuZGVmaW5lZCwgb2Zmc2V0XSxcbiAgfTtcbn1cbiIsICIvKiogQGNhdGVnb3J5IEVycm9ycyAqL1xuZXhwb3J0IGNsYXNzIFVtaUVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICByZWFkb25seSBuYW1lOiBzdHJpbmcgPSAnVW1pRXJyb3InO1xuXG4gIHJlYWRvbmx5IHNvdXJjZTogVW1pRXJyb3JTb3VyY2U7XG5cbiAgcmVhZG9ubHkgc291cmNlRGV0YWlscz86IHN0cmluZztcblxuICByZWFkb25seSBjYXVzZT86IEVycm9yO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIG1lc3NhZ2U6IHN0cmluZyxcbiAgICBzb3VyY2U6IFVtaUVycm9yU291cmNlLFxuICAgIHNvdXJjZURldGFpbHM/OiBzdHJpbmcsXG4gICAgY2F1c2U/OiBFcnJvclxuICApIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgICB0aGlzLnNvdXJjZSA9IHNvdXJjZTtcbiAgICB0aGlzLnNvdXJjZURldGFpbHMgPSBzb3VyY2VEZXRhaWxzO1xuICAgIHRoaXMuY2F1c2UgPSBjYXVzZTtcbiAgICB0aGlzLm1lc3NhZ2UgPSBgJHt0aGlzLm1lc3NhZ2V9XFxuXFxuU291cmNlOiAke3RoaXMuZ2V0RnVsbFNvdXJjZSgpfSR7XG4gICAgICB0aGlzLmNhdXNlID8gYFxcblxcbkNhdXNlZCBCeTogJHt0aGlzLmNhdXNlfWAgOiAnJ1xuICAgIH1cXG5gO1xuICB9XG5cbiAgZ2V0Q2FwaXRhbGl6ZWRTb3VyY2UoKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5zb3VyY2UgPT09ICdzZGsnIHx8IHRoaXMuc291cmNlID09PSAncnBjJykge1xuICAgICAgcmV0dXJuIHRoaXMuc291cmNlLnRvVXBwZXJDYXNlKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuc291cmNlWzBdLnRvVXBwZXJDYXNlKCkgKyB0aGlzLnNvdXJjZS5zbGljZSgxKTtcbiAgfVxuXG4gIGdldEZ1bGxTb3VyY2UoKTogc3RyaW5nIHtcbiAgICBjb25zdCBjYXBpdGFsaXplZFNvdXJjZSA9IHRoaXMuZ2V0Q2FwaXRhbGl6ZWRTb3VyY2UoKTtcbiAgICBjb25zdCBzb3VyY2VEZXRhaWxzID0gdGhpcy5zb3VyY2VEZXRhaWxzID8gYCA+ICR7dGhpcy5zb3VyY2VEZXRhaWxzfWAgOiAnJztcblxuICAgIHJldHVybiBjYXBpdGFsaXplZFNvdXJjZSArIHNvdXJjZURldGFpbHM7XG4gIH1cblxuICB0b1N0cmluZygpIHtcbiAgICByZXR1cm4gYFske3RoaXMubmFtZX1dICR7dGhpcy5tZXNzYWdlfWA7XG4gIH1cbn1cblxuLyoqIEBjYXRlZ29yeSBFcnJvcnMgKi9cbmV4cG9ydCB0eXBlIFVtaUVycm9yU291cmNlID0gJ3NkaycgfCAnbmV0d29yaycgfCAncnBjJyB8ICdwbHVnaW4nIHwgJ3Byb2dyYW0nO1xuIiwgImltcG9ydCB7IFVtaUVycm9yIH0gZnJvbSAnLi9VbWlFcnJvcic7XG5cbi8qKiBAY2F0ZWdvcnkgRXJyb3JzICovXG5leHBvcnQgY2xhc3MgU2RrRXJyb3IgZXh0ZW5kcyBVbWlFcnJvciB7XG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZyA9ICdTZGtFcnJvcic7XG5cbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nLCBjYXVzZT86IEVycm9yKSB7XG4gICAgc3VwZXIobWVzc2FnZSwgJ3NkaycsIHVuZGVmaW5lZCwgY2F1c2UpO1xuICB9XG59XG4iLCAiaW1wb3J0IHR5cGUgeyBQdWJsaWNLZXkgfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktcHVibGljLWtleXMnO1xuaW1wb3J0IHR5cGUgeyBTZXJpYWxpemVyIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzJztcbmltcG9ydCB0eXBlIHsgU29sQW1vdW50IH0gZnJvbSAnLi9BbW91bnQnO1xuaW1wb3J0IHsgQWNjb3VudE5vdEZvdW5kRXJyb3IsIFVuZXhwZWN0ZWRBY2NvdW50RXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5cbi8qKlxuICogVGhlIHNpemUgb2YgYW4gYWNjb3VudCBoZWFkZXIgaW4gYnl0ZXMuXG4gKiBAY2F0ZWdvcnkgQWNjb3VudHNcbiAqL1xuZXhwb3J0IGNvbnN0IEFDQ09VTlRfSEVBREVSX1NJWkUgPSAxMjg7XG5cbi8qKlxuICogRGVzY3JpYmVzIHRoZSBoZWFkZXIgb2YgYW4gYWNjb3VudC5cbiAqIEBjYXRlZ29yeSBBY2NvdW50c1xuICovXG5leHBvcnQgdHlwZSBBY2NvdW50SGVhZGVyID0ge1xuICBleGVjdXRhYmxlOiBib29sZWFuO1xuICBvd25lcjogUHVibGljS2V5O1xuICBsYW1wb3J0czogU29sQW1vdW50O1xuICByZW50RXBvY2g/OiBudW1iZXI7XG59O1xuXG4vKipcbiAqIERlc2NyaWJlcyBhIHJhdyBhY2NvdW50IHRoYXQgaGFzIG5vdCBiZWVuIGRlc2VyaWFsaXplZC5cbiAqIEBjYXRlZ29yeSBBY2NvdW50c1xuICovXG5leHBvcnQgdHlwZSBScGNBY2NvdW50ID0gQWNjb3VudEhlYWRlciAmIHtcbiAgcHVibGljS2V5OiBQdWJsaWNLZXk7XG4gIGRhdGE6IFVpbnQ4QXJyYXk7XG59O1xuXG4vKipcbiAqIERlc2NyaWJlcyBhIHJhdyBhY2NvdW50IHRoYXQgbWF5IG9yIG1heSBub3QgZXhpc3QuXG4gKiBAY2F0ZWdvcnkgQWNjb3VudHNcbiAqL1xuZXhwb3J0IHR5cGUgTWF5YmVScGNBY2NvdW50ID1cbiAgfCAoeyBleGlzdHM6IHRydWUgfSAmIFJwY0FjY291bnQpXG4gIHwgeyBleGlzdHM6IGZhbHNlOyBwdWJsaWNLZXk6IFB1YmxpY0tleSB9O1xuXG4vKipcbiAqIERlc2NyaWJlcyBhIGRlc2VyaWFsaXplZCBhY2NvdW50LlxuICogQGNhdGVnb3J5IEFjY291bnRzXG4gKi9cbmV4cG9ydCB0eXBlIEFjY291bnQ8VCBleHRlbmRzIG9iamVjdD4gPSBUICYge1xuICBwdWJsaWNLZXk6IFB1YmxpY0tleTtcbiAgaGVhZGVyOiBBY2NvdW50SGVhZGVyO1xufTtcblxuLyoqXG4gKiBHaXZlbiBhbiBhY2NvdW50IGRhdGEgc2VyaWFsaXplcixcbiAqIHJldHVybnMgYSBkZXNlcmlhbGl6ZWQgYWNjb3VudCBmcm9tIGEgcmF3IGFjY291bnQuXG4gKiBAY2F0ZWdvcnkgQWNjb3VudHNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRlc2VyaWFsaXplQWNjb3VudDxGcm9tIGV4dGVuZHMgb2JqZWN0LCBUbyBleHRlbmRzIEZyb20gPSBGcm9tPihcbiAgcmF3QWNjb3VudDogUnBjQWNjb3VudCxcbiAgZGF0YVNlcmlhbGl6ZXI6IFNlcmlhbGl6ZXI8RnJvbSwgVG8+XG4pOiBBY2NvdW50PFRvPiB7XG4gIGNvbnN0IHsgZGF0YSwgcHVibGljS2V5LCAuLi5yZXN0IH0gPSByYXdBY2NvdW50O1xuICB0cnkge1xuICAgIGNvbnN0IFtwYXJzZWREYXRhXSA9IGRhdGFTZXJpYWxpemVyLmRlc2VyaWFsaXplKGRhdGEpO1xuICAgIHJldHVybiB7IHB1YmxpY0tleSwgaGVhZGVyOiByZXN0LCAuLi5wYXJzZWREYXRhIH07XG4gIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcbiAgICB0aHJvdyBuZXcgVW5leHBlY3RlZEFjY291bnRFcnJvcihcbiAgICAgIHB1YmxpY0tleSxcbiAgICAgIGRhdGFTZXJpYWxpemVyLmRlc2NyaXB0aW9uLFxuICAgICAgZXJyb3JcbiAgICApO1xuICB9XG59XG5cbi8qKlxuICogRW5zdXJlcyBhbiBhY2NvdW50IHRoYXQgbWF5IG9yIG1heSBub3QgZXhpc3QgYWN0dWFsbHkgZXhpc3RzLlxuICogQGNhdGVnb3J5IEFjY291bnRzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnRBY2NvdW50RXhpc3RzKFxuICBhY2NvdW50OiBNYXliZVJwY0FjY291bnQsXG4gIG5hbWU/OiBzdHJpbmcsXG4gIHNvbHV0aW9uPzogc3RyaW5nXG4pOiBhc3NlcnRzIGFjY291bnQgaXMgTWF5YmVScGNBY2NvdW50ICYgeyBleGlzdHM6IHRydWUgfSB7XG4gIGlmICghYWNjb3VudC5leGlzdHMpIHtcbiAgICB0aHJvdyBuZXcgQWNjb3VudE5vdEZvdW5kRXJyb3IoYWNjb3VudC5wdWJsaWNLZXksIG5hbWUsIHNvbHV0aW9uKTtcbiAgfVxufVxuIiwgIi8qKlxuICogRGVmaW5lcyBhbGwgdGhlIHR5cGVzIHRoYXQgY2FuIGJlIHVzZWQgdG8gY3JlYXRlXG4gKiBhIEJpZ0ludCB2aWEgdGhlIDxjb2RlPntAbGluayBjcmVhdGVCaWdJbnR9PC9jb2RlPiBmdW5jdGlvbi5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgdHlwZSBCaWdJbnRJbnB1dCA9IG51bWJlciB8IHN0cmluZyB8IGJvb2xlYW4gfCBiaWdpbnQgfCBVaW50OEFycmF5O1xuXG4vKipcbiAqIENyZWF0ZXMgYSBCaWdJbnQgZnJvbSBhIG51bWJlciwgc3RyaW5nLCBib29sZWFuLCBvciBVaW50OEFycmF5LlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCBjb25zdCBjcmVhdGVCaWdJbnQgPSAoaW5wdXQ6IEJpZ0ludElucHV0KTogYmlnaW50ID0+IHtcbiAgaW5wdXQgPSB0eXBlb2YgaW5wdXQgPT09ICdvYmplY3QnID8gaW5wdXQudG9TdHJpbmcoKSA6IGlucHV0O1xuICByZXR1cm4gQmlnSW50KGlucHV0KTtcbn07XG4iLCAiaW1wb3J0IHtcbiAgTnVtYmVyU2VyaWFsaXplcixcbiAgU2VyaWFsaXplcixcbiAgbWFwU2VyaWFsaXplcixcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzJztcbmltcG9ydCB7IEJpZ0ludElucHV0LCBjcmVhdGVCaWdJbnQgfSBmcm9tICcuL0JpZ0ludCc7XG5pbXBvcnQgeyBBbW91bnRNaXNtYXRjaEVycm9yLCBVbmV4cGVjdGVkQW1vdW50RXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5cbi8qKlxuICogVGhlIGlkZW50aWZpZXIgb2YgYW4gYW1vdW50LlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCB0eXBlIEFtb3VudElkZW50aWZpZXIgPSAnU09MJyB8ICdVU0QnIHwgJyUnIHwgJ3NwbFRva2VuJyB8IHN0cmluZztcblxuLyoqXG4gKiBUaGUgbnVtYmVyIG9mIGRlY2ltYWxzIGluIGFuIGFtb3VudCByZXByZXNlbnRlZCB1c2luZyB0aGUgbG93ZXN0IHBvc3NpYmxlIHVuaXQuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IHR5cGUgQW1vdW50RGVjaW1hbHMgPSBudW1iZXI7XG5cbi8qKlxuICogRGVzY3JpYmVzIGFuIGFtb3VudCBvZiBhbnkgdHlwZSBvciBjdXJyZW5jeSB1c2luZyB0aGUgbG93ZXN0IHBvc3NpYmxlIHVuaXQuXG4gKiBJdCB1c2VzIGEgQmlnSW50IHRvIHJlcHJlc2VudCB0aGUgYmFzaXMgcG9pbnRzIG9mIHRoZSBhbW91bnQsIGEgZGVjaW1hbCBudW1iZXJcbiAqIHRvIGtub3cgaG93IHRvIGludGVycHJldCB0aGUgYmFzaXMgcG9pbnRzLCBhbmQgYW4gaWRlbnRpZmllciB0byBrbm93IHdoYXRcbiAqIHR5cGUgb2YgYW1vdW50IHdlIGFyZSBkZWFsaW5nIHdpdGguXG4gKlxuICogQ3VzdG9tIHR5cGUgcGFyYW1ldGVycyBjYW4gYmUgdXNlZCB0byByZXByZXNlbnQgc3BlY2lmaWMgdHlwZXMgb2YgYW1vdW50cy5cbiAqIEZvciBleGFtcGxlOlxuICogLSBBbW91bnQ8J1NPTCcsIDk+IHJlcHJlc2VudHMgYW4gYW1vdW50IG9mIFNPTCBpbiBsYW1wb3J0cy5cbiAqIC0gQW1vdW50PCdVU0QnLCAyPiByZXByZXNlbnRzIGFuIGFtb3VudCBvZiBVU0QgaW4gY2VudHMuXG4gKiAtIEFtb3VudDwnJScsIDI+IHJlcHJlc2VudHMgYSBwZXJjZW50YWdlIHdpdGggMiBkZWNpbWFscy5cbiAqXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IHR5cGUgQW1vdW50PFxuICBJIGV4dGVuZHMgQW1vdW50SWRlbnRpZmllciA9IEFtb3VudElkZW50aWZpZXIsXG4gIEQgZXh0ZW5kcyBBbW91bnREZWNpbWFscyA9IEFtb3VudERlY2ltYWxzXG4+ID0ge1xuICAvKiogVGhlIGFtb3VudCBpbiBpdHMgbG93ZXIgcG9zc2libGUgdW5pdCBzdWNoIHRoYXQgaXQgZG9lcyBub3QgY29udGFpbiBkZWNpbWFscy4gKi9cbiAgYmFzaXNQb2ludHM6IGJpZ2ludDtcbiAgLyoqIFRoZSBpZGVudGlmaWVyIG9mIHRoZSBhbW91bnQuICovXG4gIGlkZW50aWZpZXI6IEk7XG4gIC8qKiBUaGUgbnVtYmVyIG9mIGRlY2ltYWxzIGluIHRoZSBhbW91bnQuICovXG4gIGRlY2ltYWxzOiBEO1xufTtcblxuLyoqXG4gKiBBbiBhbW91bnQgb2YgU09MIHJlcHJlc2VudGVkIHVzaW5nIHRoZSBsb3dlc3QgcG9zc2libGUgdW5pdCDigJQgaS5lLiBsYW1wb3J0cy5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgdHlwZSBTb2xBbW91bnQgPSBBbW91bnQ8J1NPTCcsIDk+O1xuXG4vKipcbiAqIEFuIGFtb3VudCBvZiBVUyBkb2xsYXJzIHJlcHJlc2VudGVkIHVzaW5nIHRoZSBsb3dlc3QgcG9zc2libGUgdW5pdCDigJQgaS5lLiBjZW50cy5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgdHlwZSBVc2RBbW91bnQgPSBBbW91bnQ8J1VTRCcsIDI+O1xuXG4vKipcbiAqIEFuIHBlcmNlbnRhZ2UgcmVwcmVzZW50ZWQgaW4gYmFzaXMgcG9pbnRzIHVzaW5nIGEgZ2l2ZW4gbnVtYmVyIG9mIGRlY2ltYWxzLlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCB0eXBlIFBlcmNlbnRBbW91bnQ8RCBleHRlbmRzIEFtb3VudERlY2ltYWxzPiA9IEFtb3VudDwnJScsIEQ+O1xuXG4vKipcbiAqIENyZWF0ZXMgYW4gYW1vdW50IGZyb20gdGhlIHByb3ZpZGVkIGJhc2lzIHBvaW50cywgaWRlbnRpZmllciwgYW5kIGRlY2ltYWxzLlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCBjb25zdCBjcmVhdGVBbW91bnQgPSA8XG4gIEkgZXh0ZW5kcyBBbW91bnRJZGVudGlmaWVyLFxuICBEIGV4dGVuZHMgQW1vdW50RGVjaW1hbHNcbj4oXG4gIGJhc2lzUG9pbnRzOiBCaWdJbnRJbnB1dCxcbiAgaWRlbnRpZmllcjogSSxcbiAgZGVjaW1hbHM6IERcbik6IEFtb3VudDxJLCBEPiA9PiAoe1xuICBiYXNpc1BvaW50czogY3JlYXRlQmlnSW50KGJhc2lzUG9pbnRzKSxcbiAgaWRlbnRpZmllcixcbiAgZGVjaW1hbHMsXG59KTtcblxuLyoqXG4gKiBDcmVhdGVzIGFuIGFtb3VudCBmcm9tIGEgZGVjaW1hbCB2YWx1ZSB3aGljaCB3aWxsIGJlIGNvbnZlcnRlZCB0byB0aGUgbG93ZXN0XG4gKiBwb3NzaWJsZSB1bml0IHVzaW5nIHRoZSBwcm92aWRlZCBkZWNpbWFscy5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgY29uc3QgY3JlYXRlQW1vdW50RnJvbURlY2ltYWxzID0gPFxuICBJIGV4dGVuZHMgQW1vdW50SWRlbnRpZmllcixcbiAgRCBleHRlbmRzIEFtb3VudERlY2ltYWxzXG4+KFxuICBkZWNpbWFsQW1vdW50OiBudW1iZXIsXG4gIGlkZW50aWZpZXI6IEksXG4gIGRlY2ltYWxzOiBEXG4pOiBBbW91bnQ8SSwgRD4gPT4ge1xuICBjb25zdCBleHBvbmVudEFtb3VudCA9IGNyZWF0ZUFtb3VudChcbiAgICBCaWdJbnQoMTApICoqIEJpZ0ludChkZWNpbWFscyA/PyAwKSxcbiAgICBpZGVudGlmaWVyLFxuICAgIGRlY2ltYWxzXG4gICk7XG5cbiAgcmV0dXJuIG11bHRpcGx5QW1vdW50KGV4cG9uZW50QW1vdW50LCBkZWNpbWFsQW1vdW50KTtcbn07XG5cbi8qKlxuICogQ3JlYXRlcyBhIHBlcmNlbnRhZ2UgYW1vdW50IGZyb20gdGhlIHByb3ZpZGVkIGRlY2ltYWwgdmFsdWUuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IGNvbnN0IHBlcmNlbnRBbW91bnQgPSA8RCBleHRlbmRzIEFtb3VudERlY2ltYWxzPihcbiAgcGVyY2VudDogbnVtYmVyLFxuICBkZWNpbWFsczogRCA9IDIgYXMgRFxuKTogQW1vdW50PCclJywgRD4gPT4gY3JlYXRlQW1vdW50RnJvbURlY2ltYWxzKHBlcmNlbnQsICclJywgZGVjaW1hbHMpO1xuXG4vKipcbiAqIENyZWF0ZXMgYW4gYW1vdW50IG9mIFNQTCB0b2tlbnMgZnJvbSB0aGUgcHJvdmlkZWQgZGVjaW1hbCB2YWx1ZS5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgY29uc3QgdG9rZW5BbW91bnQgPSA8XG4gIEkgZXh0ZW5kcyBBbW91bnRJZGVudGlmaWVyLFxuICBEIGV4dGVuZHMgQW1vdW50RGVjaW1hbHNcbj4oXG4gIHRva2VuczogbnVtYmVyLFxuICBpZGVudGlmaWVyPzogSSxcbiAgZGVjaW1hbHM/OiBEXG4pOiBBbW91bnQ8SSwgRD4gPT5cbiAgY3JlYXRlQW1vdW50RnJvbURlY2ltYWxzKFxuICAgIHRva2VucyxcbiAgICAoaWRlbnRpZmllciA/PyAnc3BsVG9rZW4nKSBhcyBJLFxuICAgIChkZWNpbWFscyA/PyAwKSBhcyBEXG4gICk7XG5cbi8qKlxuICogQ3JlYXRlcyBhIHtAbGluayBTb2xBbW91bnR9IGZyb20gdGhlIHByb3ZpZGVkIGxhbXBvcnRzLlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCBjb25zdCBsYW1wb3J0cyA9IChsYW1wb3J0czogQmlnSW50SW5wdXQpOiBTb2xBbW91bnQgPT5cbiAgY3JlYXRlQW1vdW50KGxhbXBvcnRzLCAnU09MJywgOSk7XG5cbi8qKlxuICogQ3JlYXRlcyBhIHtAbGluayBTb2xBbW91bnR9IGZyb20gdGhlIHByb3ZpZGVkIGRlY2ltYWwgdmFsdWUgaW4gU09MLlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCBjb25zdCBzb2wgPSAoc29sOiBudW1iZXIpOiBTb2xBbW91bnQgPT5cbiAgY3JlYXRlQW1vdW50RnJvbURlY2ltYWxzKHNvbCwgJ1NPTCcsIDkpO1xuXG4vKipcbiAqIENyZWF0ZXMgYSB7QGxpbmsgVXNkQW1vdW50fSBmcm9tIHRoZSBwcm92aWRlZCBkZWNpbWFsIHZhbHVlIGluIFVTRC5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgY29uc3QgdXNkID0gKHVzZDogbnVtYmVyKTogVXNkQW1vdW50ID0+XG4gIGNyZWF0ZUFtb3VudEZyb21EZWNpbWFscyh1c2QsICdVU0QnLCAyKTtcblxuLyoqXG4gKiBEZXRlcm1pbmVzIHdoZXRoZXIgYSBnaXZlbiBhbW91bnQgaGFzIHRoZSBwcm92aWRlZCBpZGVudGlmaWVyIGFuZCBkZWNpbWFscy5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgY29uc3QgaXNBbW91bnQgPSA8SSBleHRlbmRzIEFtb3VudElkZW50aWZpZXIsIEQgZXh0ZW5kcyBBbW91bnREZWNpbWFscz4oXG4gIGFtb3VudDogQW1vdW50LFxuICBpZGVudGlmaWVyOiBJLFxuICBkZWNpbWFsczogRFxuKTogYW1vdW50IGlzIEFtb3VudDxJLCBEPiA9PlxuICBhbW91bnQuaWRlbnRpZmllciA9PT0gaWRlbnRpZmllciAmJiBhbW91bnQuZGVjaW1hbHMgPT09IGRlY2ltYWxzO1xuXG4vKipcbiAqIERldGVybWluZXMgd2hldGhlciBhIGdpdmVuIGFtb3VudCBpcyBhIHtAbGluayBTb2xBbW91bnR9LlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCBjb25zdCBpc1NvbEFtb3VudCA9IChhbW91bnQ6IEFtb3VudCk6IGFtb3VudCBpcyBTb2xBbW91bnQgPT5cbiAgaXNBbW91bnQoYW1vdW50LCAnU09MJywgOSk7XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIHR3byBhbW91bnRzIGFyZSBvZiB0aGUgc2FtZSB0eXBlLlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCBjb25zdCBzYW1lQW1vdW50cyA9IChsZWZ0OiBBbW91bnQsIHJpZ2h0OiBBbW91bnQpOiBib29sZWFuID0+XG4gIGlzQW1vdW50KGxlZnQsIHJpZ2h0LmlkZW50aWZpZXIsIHJpZ2h0LmRlY2ltYWxzKTtcblxuLyoqXG4gKiBFbnN1cmVzIHRoYXQgYSBnaXZlbiBhbW91bnQgaGFzIHRoZSBwcm92aWRlZCBpZGVudGlmaWVyIGFuZCBkZWNpbWFscy5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0QW1vdW50PFxuICBJIGV4dGVuZHMgQW1vdW50SWRlbnRpZmllcixcbiAgRCBleHRlbmRzIEFtb3VudERlY2ltYWxzXG4+KGFtb3VudDogQW1vdW50LCBpZGVudGlmaWVyOiBJLCBkZWNpbWFsczogRCk6IGFzc2VydHMgYW1vdW50IGlzIEFtb3VudDxJLCBEPiB7XG4gIGlmICghaXNBbW91bnQoYW1vdW50LCBpZGVudGlmaWVyLCBkZWNpbWFscykpIHtcbiAgICB0aHJvdyBuZXcgVW5leHBlY3RlZEFtb3VudEVycm9yKGFtb3VudCwgaWRlbnRpZmllciwgZGVjaW1hbHMpO1xuICB9XG59XG5cbi8qKlxuICogRW5zdXJlcyB0aGF0IGEgZ2l2ZW4gYW1vdW50IGlzIGEge0BsaW5rIFNvbEFtb3VudH0uXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydFNvbEFtb3VudChhY3R1YWw6IEFtb3VudCk6IGFzc2VydHMgYWN0dWFsIGlzIFNvbEFtb3VudCB7XG4gIGFzc2VydEFtb3VudChhY3R1YWwsICdTT0wnLCA5KTtcbn1cblxuLyoqXG4gKiBFbnN1cmVzIHRoYXQgdHdvIGFtb3VudHMgYXJlIG9mIHRoZSBzYW1lIHR5cGUuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydFNhbWVBbW91bnRzKFxuICBsZWZ0OiBBbW91bnQsXG4gIHJpZ2h0OiBBbW91bnQsXG4gIG9wZXJhdGlvbj86IHN0cmluZ1xuKSB7XG4gIGlmICghc2FtZUFtb3VudHMobGVmdCwgcmlnaHQpKSB7XG4gICAgdGhyb3cgbmV3IEFtb3VudE1pc21hdGNoRXJyb3IobGVmdCwgcmlnaHQsIG9wZXJhdGlvbik7XG4gIH1cbn1cblxuLyoqXG4gKiBBZGRzIHR3byBhbW91bnRzIG9mIHRoZSBzYW1lIHR5cGUuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IGNvbnN0IGFkZEFtb3VudHMgPSA8XG4gIEkgZXh0ZW5kcyBBbW91bnRJZGVudGlmaWVyLFxuICBEIGV4dGVuZHMgQW1vdW50RGVjaW1hbHNcbj4oXG4gIGxlZnQ6IEFtb3VudDxJLCBEPixcbiAgcmlnaHQ6IEFtb3VudDxJLCBEPlxuKTogQW1vdW50PEksIEQ+ID0+IHtcbiAgYXNzZXJ0U2FtZUFtb3VudHMobGVmdCwgcmlnaHQsICdhZGQnKTtcblxuICByZXR1cm4ge1xuICAgIC4uLmxlZnQsXG4gICAgYmFzaXNQb2ludHM6IGxlZnQuYmFzaXNQb2ludHMgKyByaWdodC5iYXNpc1BvaW50cyxcbiAgfTtcbn07XG5cbi8qKlxuICogU3VidHJhY3RzIHR3byBhbW91bnRzIG9mIHRoZSBzYW1lIHR5cGUuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IGNvbnN0IHN1YnRyYWN0QW1vdW50cyA9IDxcbiAgSSBleHRlbmRzIEFtb3VudElkZW50aWZpZXIsXG4gIEQgZXh0ZW5kcyBBbW91bnREZWNpbWFsc1xuPihcbiAgbGVmdDogQW1vdW50PEksIEQ+LFxuICByaWdodDogQW1vdW50PEksIEQ+XG4pOiBBbW91bnQ8SSwgRD4gPT4ge1xuICBhc3NlcnRTYW1lQW1vdW50cyhsZWZ0LCByaWdodCwgJ3N1YnRyYWN0Jyk7XG5cbiAgcmV0dXJuIHtcbiAgICAuLi5sZWZ0LFxuICAgIGJhc2lzUG9pbnRzOiBsZWZ0LmJhc2lzUG9pbnRzIC0gcmlnaHQuYmFzaXNQb2ludHMsXG4gIH07XG59O1xuXG4vKipcbiAqIE11bHRpcGxpZXMgYW4gYW1vdW50IGJ5IGEgZ2l2ZW4gbXVsdGlwbGllci5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgY29uc3QgbXVsdGlwbHlBbW91bnQgPSA8XG4gIEkgZXh0ZW5kcyBBbW91bnRJZGVudGlmaWVyLFxuICBEIGV4dGVuZHMgQW1vdW50RGVjaW1hbHNcbj4oXG4gIGxlZnQ6IEFtb3VudDxJLCBEPixcbiAgbXVsdGlwbGllcjogbnVtYmVyIHwgYmlnaW50XG4pOiBBbW91bnQ8SSwgRD4gPT4ge1xuICBpZiAodHlwZW9mIG11bHRpcGxpZXIgPT09ICdiaWdpbnQnKSB7XG4gICAgcmV0dXJuIHsgLi4ubGVmdCwgYmFzaXNQb2ludHM6IGxlZnQuYmFzaXNQb2ludHMgKiBtdWx0aXBsaWVyIH07XG4gIH1cblxuICBjb25zdCBbdW5pdHMsIGRlY2ltYWxzXSA9IG11bHRpcGxpZXIudG9TdHJpbmcoKS5zcGxpdCgnLicpO1xuICBjb25zdCBtdWx0aXBsaWVyQmFzaXNQb2ludHMgPSBCaWdJbnQodW5pdHMgKyAoZGVjaW1hbHMgPz8gJycpKTtcbiAgY29uc3QgbXVsdGlwbGllckV4cG9uZW50cyA9IEJpZ0ludCgxMCkgKiogQmlnSW50KGRlY2ltYWxzPy5sZW5ndGggPz8gMCk7XG5cbiAgcmV0dXJuIHtcbiAgICAuLi5sZWZ0LFxuICAgIGJhc2lzUG9pbnRzOlxuICAgICAgKGxlZnQuYmFzaXNQb2ludHMgKiBtdWx0aXBsaWVyQmFzaXNQb2ludHMpIC8gbXVsdGlwbGllckV4cG9uZW50cyxcbiAgfTtcbn07XG5cbi8qKlxuICogRGl2aWRlcyBhbiBhbW91bnQgYnkgYSBnaXZlbiBkaXZpc29yLlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCBjb25zdCBkaXZpZGVBbW91bnQgPSA8XG4gIEkgZXh0ZW5kcyBBbW91bnRJZGVudGlmaWVyLFxuICBEIGV4dGVuZHMgQW1vdW50RGVjaW1hbHNcbj4oXG4gIGxlZnQ6IEFtb3VudDxJLCBEPixcbiAgZGl2aXNvcjogbnVtYmVyIHwgYmlnaW50XG4pOiBBbW91bnQ8SSwgRD4gPT4ge1xuICBpZiAodHlwZW9mIGRpdmlzb3IgPT09ICdiaWdpbnQnKSB7XG4gICAgcmV0dXJuIHsgLi4ubGVmdCwgYmFzaXNQb2ludHM6IGxlZnQuYmFzaXNQb2ludHMgLyBkaXZpc29yIH07XG4gIH1cblxuICBjb25zdCBbdW5pdHMsIGRlY2ltYWxzXSA9IGRpdmlzb3IudG9TdHJpbmcoKS5zcGxpdCgnLicpO1xuICBjb25zdCBkaXZpc29yQmFzaXNQb2ludHMgPSBCaWdJbnQodW5pdHMgKyAoZGVjaW1hbHMgPz8gJycpKTtcbiAgY29uc3QgZGl2aXNvckV4cG9uZW50cyA9IEJpZ0ludCgxMCkgKiogQmlnSW50KGRlY2ltYWxzPy5sZW5ndGggPz8gMCk7XG5cbiAgcmV0dXJuIHtcbiAgICAuLi5sZWZ0LFxuICAgIGJhc2lzUG9pbnRzOiAobGVmdC5iYXNpc1BvaW50cyAqIGRpdmlzb3JFeHBvbmVudHMpIC8gZGl2aXNvckJhc2lzUG9pbnRzLFxuICB9O1xufTtcblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBhYnNvbHV0ZSB2YWx1ZSBvZiBhbiBhbW91bnQuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IGNvbnN0IGFic29sdXRlQW1vdW50ID0gPFxuICBJIGV4dGVuZHMgQW1vdW50SWRlbnRpZmllcixcbiAgRCBleHRlbmRzIEFtb3VudERlY2ltYWxzXG4+KFxuICB2YWx1ZTogQW1vdW50PEksIEQ+XG4pOiBBbW91bnQ8SSwgRD4gPT4ge1xuICBjb25zdCB4ID0gdmFsdWUuYmFzaXNQb2ludHM7XG4gIHJldHVybiB7IC4uLnZhbHVlLCBiYXNpc1BvaW50czogeCA8IDAgPyAteCA6IHggfTtcbn07XG5cbi8qKlxuICogQ29tcGFyZXMgdHdvIGFtb3VudHMgb2YgdGhlIHNhbWUgdHlwZS5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgY29uc3QgY29tcGFyZUFtb3VudHMgPSA8XG4gIEkgZXh0ZW5kcyBBbW91bnRJZGVudGlmaWVyLFxuICBEIGV4dGVuZHMgQW1vdW50RGVjaW1hbHNcbj4oXG4gIGxlZnQ6IEFtb3VudDxJLCBEPixcbiAgcmlnaHQ6IEFtb3VudDxJLCBEPlxuKTogLTEgfCAwIHwgMSA9PiB7XG4gIGFzc2VydFNhbWVBbW91bnRzKGxlZnQsIHJpZ2h0LCAnY29tcGFyZScpO1xuICBpZiAobGVmdC5iYXNpc1BvaW50cyA+IHJpZ2h0LmJhc2lzUG9pbnRzKSByZXR1cm4gMTtcbiAgaWYgKGxlZnQuYmFzaXNQb2ludHMgPCByaWdodC5iYXNpc1BvaW50cykgcmV0dXJuIC0xO1xuICByZXR1cm4gMDtcbn07XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIHR3byBhbW91bnRzIGFyZSBlcXVhbC5cbiAqIEFuIG9wdGlvbmFsIHRvbGVyYW5jZSBjYW4gYmUgcHJvdmlkZWQgdG8gYWxsb3cgZm9yIHNtYWxsIGRpZmZlcmVuY2VzLlxuICogV2hlbiB1c2luZyB7QGxpbmsgU29sQW1vdW50fSwgdGhpcyBpcyB1c3VhbGx5IGR1ZSB0byB0cmFuc2FjdGlvbiBvciBzbWFsbCBzdG9yYWdlIGZlZXMuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IGNvbnN0IGlzRXF1YWxUb0Ftb3VudCA9IDxcbiAgSSBleHRlbmRzIEFtb3VudElkZW50aWZpZXIsXG4gIEQgZXh0ZW5kcyBBbW91bnREZWNpbWFsc1xuPihcbiAgbGVmdDogQW1vdW50PEksIEQ+LFxuICByaWdodDogQW1vdW50PEksIEQ+LFxuICB0b2xlcmFuY2U/OiBBbW91bnQ8SSwgRD5cbik6IGJvb2xlYW4gPT4ge1xuICB0b2xlcmFuY2UgPSB0b2xlcmFuY2UgPz8gY3JlYXRlQW1vdW50KDAsIGxlZnQuaWRlbnRpZmllciwgbGVmdC5kZWNpbWFscyk7XG4gIGFzc2VydFNhbWVBbW91bnRzKGxlZnQsIHJpZ2h0LCAnaXNFcXVhbFRvQW1vdW50Jyk7XG4gIGFzc2VydFNhbWVBbW91bnRzKGxlZnQsIHRvbGVyYW5jZSwgJ2lzRXF1YWxUb0Ftb3VudCcpO1xuXG4gIGNvbnN0IGRlbHRhID0gYWJzb2x1dGVBbW91bnQoc3VidHJhY3RBbW91bnRzKGxlZnQsIHJpZ2h0KSk7XG5cbiAgcmV0dXJuIGlzTGVzc1RoYW5PckVxdWFsVG9BbW91bnQoZGVsdGEsIHRvbGVyYW5jZSk7XG59O1xuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGxlZnQgYW1vdW50IGlzIGxlc3MgdGhhbiB0aGUgcmlnaHQgYW1vdW50LlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCBjb25zdCBpc0xlc3NUaGFuQW1vdW50ID0gPFxuICBJIGV4dGVuZHMgQW1vdW50SWRlbnRpZmllcixcbiAgRCBleHRlbmRzIEFtb3VudERlY2ltYWxzXG4+KFxuICBsZWZ0OiBBbW91bnQ8SSwgRD4sXG4gIHJpZ2h0OiBBbW91bnQ8SSwgRD5cbik6IGJvb2xlYW4gPT4gY29tcGFyZUFtb3VudHMobGVmdCwgcmlnaHQpIDwgMDtcblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBsZWZ0IGFtb3VudCBpcyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gdGhlIHJpZ2h0IGFtb3VudC5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgY29uc3QgaXNMZXNzVGhhbk9yRXF1YWxUb0Ftb3VudCA9IDxcbiAgSSBleHRlbmRzIEFtb3VudElkZW50aWZpZXIsXG4gIEQgZXh0ZW5kcyBBbW91bnREZWNpbWFsc1xuPihcbiAgbGVmdDogQW1vdW50PEksIEQ+LFxuICByaWdodDogQW1vdW50PEksIEQ+XG4pOiBib29sZWFuID0+IGNvbXBhcmVBbW91bnRzKGxlZnQsIHJpZ2h0KSA8PSAwO1xuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGxlZnQgYW1vdW50IGlzIGdyZWF0ZXIgdGhhbiB0aGUgcmlnaHQgYW1vdW50LlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCBjb25zdCBpc0dyZWF0ZXJUaGFuQW1vdW50ID0gPFxuICBJIGV4dGVuZHMgQW1vdW50SWRlbnRpZmllcixcbiAgRCBleHRlbmRzIEFtb3VudERlY2ltYWxzXG4+KFxuICBsZWZ0OiBBbW91bnQ8SSwgRD4sXG4gIHJpZ2h0OiBBbW91bnQ8SSwgRD5cbik6IGJvb2xlYW4gPT4gY29tcGFyZUFtb3VudHMobGVmdCwgcmlnaHQpID4gMDtcblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBsZWZ0IGFtb3VudCBpcyBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gdGhlIHJpZ2h0IGFtb3VudC5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgY29uc3QgaXNHcmVhdGVyVGhhbk9yRXF1YWxUb0Ftb3VudCA9IDxcbiAgSSBleHRlbmRzIEFtb3VudElkZW50aWZpZXIsXG4gIEQgZXh0ZW5kcyBBbW91bnREZWNpbWFsc1xuPihcbiAgbGVmdDogQW1vdW50PEksIEQ+LFxuICByaWdodDogQW1vdW50PEksIEQ+XG4pOiBib29sZWFuID0+IGNvbXBhcmVBbW91bnRzKGxlZnQsIHJpZ2h0KSA+PSAwO1xuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGFtb3VudCBpcyB6ZXJvLlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCBjb25zdCBpc1plcm9BbW91bnQgPSAodmFsdWU6IEFtb3VudCk6IGJvb2xlYW4gPT5cbiAgdmFsdWUuYmFzaXNQb2ludHMgPT09IEJpZ0ludCgwKTtcblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBhbW91bnQgaXMgcG9zaXRpdmUuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IGNvbnN0IGlzUG9zaXRpdmVBbW91bnQgPSAodmFsdWU6IEFtb3VudCk6IGJvb2xlYW4gPT5cbiAgdmFsdWUuYmFzaXNQb2ludHMgPj0gQmlnSW50KDApO1xuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGFtb3VudCBpcyBuZWdhdGl2ZS5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQW1vdW50c1xuICovXG5leHBvcnQgY29uc3QgaXNOZWdhdGl2ZUFtb3VudCA9ICh2YWx1ZTogQW1vdW50KTogYm9vbGVhbiA9PlxuICB2YWx1ZS5iYXNpc1BvaW50cyA8IEJpZ0ludCgwKTtcblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBhbW91bnQgdG8gYSBzdHJpbmcgYnkgdXNpbmcgdGhlIGFtb3VudCdzIGRlY2ltYWxzLlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBBbW91bnRzXG4gKi9cbmV4cG9ydCBjb25zdCBhbW91bnRUb1N0cmluZyA9ICh2YWx1ZTogQW1vdW50LCBtYXhEZWNpbWFscz86IG51bWJlcik6IHN0cmluZyA9PiB7XG4gIGxldCB0ZXh0ID0gdmFsdWUuYmFzaXNQb2ludHMudG9TdHJpbmcoKTtcbiAgaWYgKHZhbHVlLmRlY2ltYWxzID09PSAwKSB7XG4gICAgcmV0dXJuIHRleHQ7XG4gIH1cblxuICBjb25zdCBzaWduID0gdGV4dC5zdGFydHNXaXRoKCctJykgPyAnLScgOiAnJztcbiAgdGV4dCA9IHRleHQucmVwbGFjZSgnLScsICcnKTtcbiAgdGV4dCA9IHRleHQucGFkU3RhcnQodmFsdWUuZGVjaW1hbHMgKyAxLCAnMCcpO1xuICBjb25zdCB1bml0cyA9IHRleHQuc2xpY2UoMCwgLXZhbHVlLmRlY2ltYWxzKTtcbiAgbGV0IGRlY2ltYWxzID0gdGV4dC5zbGljZSgtdmFsdWUuZGVjaW1hbHMpO1xuXG4gIGlmIChtYXhEZWNpbWFscyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgZGVjaW1hbHMgPSBkZWNpbWFscy5zbGljZSgwLCBtYXhEZWNpbWFscyk7XG4gIH1cblxuICByZXR1cm4gYCR7c2lnbiArIHVuaXRzfS4ke2RlY2ltYWxzfWA7XG59O1xuXG4vKipcbiAqIENvbnZlcnRzIGFuIGFtb3VudCB0byBhIG51bWJlciBieSB1c2luZyB0aGUgYW1vdW50J3MgZGVjaW1hbHMuXG4gKiBOb3RlIHRoYXQgdGhpcyBtYXkgdGhyb3cgYW4gZXJyb3IgaWYgdGhlIGFtb3VudCBpcyB0b28gbGFyZ2UgdG8gZml0IGluIGEgSmF2YVNjcmlwdCBudW1iZXIuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IGNvbnN0IGFtb3VudFRvTnVtYmVyID0gKHZhbHVlOiBBbW91bnQpOiBudW1iZXIgPT5cbiAgcGFyc2VGbG9hdChhbW91bnRUb1N0cmluZyh2YWx1ZSkpO1xuXG4vKipcbiAqIERpc3BsYXlzIGFuIGFtb3VudCBhcyBhIHN0cmluZyBieSB1c2luZyB0aGUgYW1vdW50J3MgZGVjaW1hbHMgYW5kIGlkZW50aWZpZXIuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IGNvbnN0IGRpc3BsYXlBbW91bnQgPSAodmFsdWU6IEFtb3VudCwgbWF4RGVjaW1hbHM/OiBudW1iZXIpOiBzdHJpbmcgPT4ge1xuICBjb25zdCBhbW91bnRBc1N0cmluZyA9IGFtb3VudFRvU3RyaW5nKHZhbHVlLCBtYXhEZWNpbWFscyk7XG5cbiAgc3dpdGNoICh2YWx1ZS5pZGVudGlmaWVyKSB7XG4gICAgY2FzZSAnJSc6XG4gICAgICByZXR1cm4gYCR7YW1vdW50QXNTdHJpbmd9JWA7XG4gICAgY2FzZSAnc3BsVG9rZW4nOlxuICAgICAgcmV0dXJuIC9eMShcXC4wKyk/JC8udGVzdChhbW91bnRBc1N0cmluZylcbiAgICAgICAgPyBgJHthbW91bnRBc1N0cmluZ30gVG9rZW5gXG4gICAgICAgIDogYCR7YW1vdW50QXNTdHJpbmd9IFRva2Vuc2A7XG4gICAgZGVmYXVsdDpcbiAgICAgIGlmICh2YWx1ZS5pZGVudGlmaWVyLnN0YXJ0c1dpdGgoJ3NwbFRva2VuLicpKSB7XG4gICAgICAgIGNvbnN0IFssIGlkZW50aWZpZXJdID0gdmFsdWUuaWRlbnRpZmllci5zcGxpdCgnLicpO1xuICAgICAgICByZXR1cm4gYCR7aWRlbnRpZmllcn0gJHthbW91bnRBc1N0cmluZ31gO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGAke3ZhbHVlLmlkZW50aWZpZXJ9ICR7YW1vdW50QXNTdHJpbmd9YDtcbiAgfVxufTtcblxuLyoqXG4gKiBDb252ZXJ0cyBhIG51bWJlciBzZXJpYWxpemVyIGludG8gYW4gYW1vdW50IHNlcmlhbGl6ZXJcbiAqIGJ5IHByb3ZpZGluZyBhbiBhbW91bnQgaWRlbnRpZmllciBhbmQgZGVjaW1hbHMuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIEFtb3VudHNcbiAqL1xuZXhwb3J0IGNvbnN0IG1hcEFtb3VudFNlcmlhbGl6ZXIgPSA8XG4gIEkgZXh0ZW5kcyBBbW91bnRJZGVudGlmaWVyID0gQW1vdW50SWRlbnRpZmllcixcbiAgRCBleHRlbmRzIEFtb3VudERlY2ltYWxzID0gQW1vdW50RGVjaW1hbHNcbj4oXG4gIHNlcmlhbGl6ZXI6IE51bWJlclNlcmlhbGl6ZXIsXG4gIGlkZW50aWZpZXI6IEksXG4gIGRlY2ltYWxzOiBEXG4pOiBTZXJpYWxpemVyPEFtb3VudDxJLCBEPj4gPT5cbiAgbWFwU2VyaWFsaXplcihcbiAgICBzZXJpYWxpemVyIGFzIFNlcmlhbGl6ZXI8bnVtYmVyIHwgYmlnaW50PixcbiAgICAodmFsdWU6IEFtb3VudDxJLCBEPik6IG51bWJlciB8IGJpZ2ludCA9PlxuICAgICAgdmFsdWUuYmFzaXNQb2ludHMgPiBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUlxuICAgICAgICA/IHZhbHVlLmJhc2lzUG9pbnRzXG4gICAgICAgIDogTnVtYmVyKHZhbHVlLmJhc2lzUG9pbnRzKSxcbiAgICAodmFsdWU6IG51bWJlciB8IGJpZ2ludCk6IEFtb3VudDxJLCBEPiA9PlxuICAgICAgY3JlYXRlQW1vdW50KHZhbHVlLCBpZGVudGlmaWVyLCBkZWNpbWFscylcbiAgKTtcbiIsICIvKipcbiAqIERlZmluZXMgdGhlIGF2YWlsYWJsZSBTb2xhbmEgY2x1c3RlcnMuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIENsdXN0ZXJcbiAqL1xuZXhwb3J0IHR5cGUgQ2x1c3RlciA9XG4gIHwgJ21haW5uZXQtYmV0YSdcbiAgfCAnZGV2bmV0J1xuICB8ICd0ZXN0bmV0J1xuICB8ICdsb2NhbG5ldCdcbiAgfCAnY3VzdG9tJztcblxuLyoqXG4gKiBIZWxwZXIgdHlwZSB0byBoZWxwcyB0aGUgZW5kLXVzZXIgc2VsZWN0aW5nIGEgY2x1c3Rlci5cbiAqIFRoZXkgY2FuIGVpdGhlciBwcm92aWRlIGEgc3BlY2lmaWMgY2x1c3RlciBvciB1c2UgdGhlXG4gKiBzcGVjaWFsIHZhbHVlcyAnY3VycmVudCcgb3IgJyonIHRvIHNlbGVjdCB0aGUgY3VycmVudFxuICogY2x1c3RlciBvciBhbGwgY2x1c3RlcnMgcmVzcGVjdGl2ZWx5LlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBDbHVzdGVyXG4gKi9cbmV4cG9ydCB0eXBlIENsdXN0ZXJGaWx0ZXIgPSBDbHVzdGVyIHwgJ2N1cnJlbnQnIHwgJyonO1xuXG5jb25zdCBNQUlOTkVUX0JFVEFfRE9NQUlOUyA9IFtcbiAgJ2FwaS5tYWlubmV0LWJldGEuc29sYW5hLmNvbScsXG4gICdzc2MtZGFvLmdlbmVzeXNnby5uZXQnLFxuXTtcbmNvbnN0IERFVk5FVF9ET01BSU5TID0gW1xuICAnYXBpLmRldm5ldC5zb2xhbmEuY29tJyxcbiAgJ3BzeXRyYmh5bXFsa2ZyaHVkZC5kZXYuZ2VuZXN5c2dvLm5ldCcsXG5dO1xuY29uc3QgVEVTVE5FVF9ET01BSU5TID0gWydhcGkudGVzdG5ldC5zb2xhbmEuY29tJ107XG5jb25zdCBMT0NBTE5FVF9ET01BSU5TID0gWydsb2NhbGhvc3QnLCAnMTI3LjAuMC4xJ107XG5cbi8qKlxuICogSGVscGVyIG1ldGhvZCB0aGF0IHRyaWVzIGl0cyBiZXN0IHRvIHJlc29sdmUgYSBjbHVzdGVyIGZyb20gYSBnaXZlbiBlbmRwb2ludC5cbiAqIEBjYXRlZ29yeSBVdGlscyDigJQgQ2x1c3RlclxuICovXG5leHBvcnQgY29uc3QgcmVzb2x2ZUNsdXN0ZXJGcm9tRW5kcG9pbnQgPSAoZW5kcG9pbnQ6IHN0cmluZyk6IENsdXN0ZXIgPT4ge1xuICBjb25zdCBkb21haW4gPSBuZXcgVVJMKGVuZHBvaW50KS5ob3N0bmFtZTtcbiAgaWYgKE1BSU5ORVRfQkVUQV9ET01BSU5TLmluY2x1ZGVzKGRvbWFpbikpIHJldHVybiAnbWFpbm5ldC1iZXRhJztcbiAgaWYgKERFVk5FVF9ET01BSU5TLmluY2x1ZGVzKGRvbWFpbikpIHJldHVybiAnZGV2bmV0JztcbiAgaWYgKFRFU1RORVRfRE9NQUlOUy5pbmNsdWRlcyhkb21haW4pKSByZXR1cm4gJ3Rlc3RuZXQnO1xuICBpZiAoTE9DQUxORVRfRE9NQUlOUy5pbmNsdWRlcyhkb21haW4pKSByZXR1cm4gJ2xvY2FsbmV0JztcbiAgaWYgKGVuZHBvaW50LmluY2x1ZGVzKCdtYWlubmV0JykpIHJldHVybiAnbWFpbm5ldC1iZXRhJztcbiAgaWYgKGVuZHBvaW50LmluY2x1ZGVzKCdkZXZuZXQnKSkgcmV0dXJuICdkZXZuZXQnO1xuICBpZiAoZW5kcG9pbnQuaW5jbHVkZXMoJ3Rlc3RuZXQnKSkgcmV0dXJuICd0ZXN0bmV0JztcbiAgaWYgKGVuZHBvaW50LmluY2x1ZGVzKCdsb2NhbCcpKSByZXR1cm4gJ2xvY2FsbmV0JztcbiAgcmV0dXJuICdjdXN0b20nO1xufTtcbiIsICJpbXBvcnQgeyBTZGtFcnJvciB9IGZyb20gJy4vU2RrRXJyb3InO1xuXG4vKiogQGNhdGVnb3J5IEVycm9ycyAqL1xuZXhwb3J0IGNsYXNzIEludGVyZmFjZUltcGxlbWVudGF0aW9uTWlzc2luZ0Vycm9yIGV4dGVuZHMgU2RrRXJyb3Ige1xuICByZWFkb25seSBuYW1lOiBzdHJpbmcgPSAnSW50ZXJmYWNlSW1wbGVtZW50YXRpb25NaXNzaW5nRXJyb3InO1xuXG4gIGNvbnN0cnVjdG9yKGludGVyZmFjZU5hbWU6IHN0cmluZywgY29udGV4dFZhcmlhYmxlOiBzdHJpbmcpIHtcbiAgICBjb25zdCBpbnRlcmZhY2VCYXNlbmFtZSA9IGludGVyZmFjZU5hbWUucmVwbGFjZSgvSW50ZXJmYWNlJC8sICcnKTtcbiAgICBjb25zdCBtZXNzYWdlID1cbiAgICAgIGBUcmllZCB1c2luZyAke2ludGVyZmFjZU5hbWV9IGJ1dCBubyBpbXBsZW1lbnRhdGlvbiBvZiB0aGF0IGludGVyZmFjZSB3YXMgZm91bmQuIGAgK1xuICAgICAgYE1ha2Ugc3VyZSBhbiBpbXBsZW1lbnRhdGlvbiBpcyByZWdpc3RlcmVkLCBgICtcbiAgICAgIGBlLmcuIHZpYSBcImNvbnRleHQuJHtjb250ZXh0VmFyaWFibGV9ID0gbmV3IE15JHtpbnRlcmZhY2VCYXNlbmFtZX0oKTtcIi5gO1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICB9XG59XG4iLCAiaW1wb3J0IHsgSW50ZXJmYWNlSW1wbGVtZW50YXRpb25NaXNzaW5nRXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5pbXBvcnQgdHlwZSB7IEdlbmVyaWNBYm9ydFNpZ25hbCB9IGZyb20gJy4vR2VuZXJpY0Fib3J0U2lnbmFsJztcbmltcG9ydCB0eXBlIHsgR2VuZXJpY0ZpbGUgfSBmcm9tICcuL0dlbmVyaWNGaWxlJztcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBpbnRlcmZhY2UgZm9yIGEgZG93bmxvYWRlci5cbiAqIEl0IGFsbG93cyB1cyB0byBmZXRjaCBmaWxlcyBmcm9tIGdpdmVuIFVSSXMuXG4gKlxuICogQGNhdGVnb3J5IENvbnRleHQgYW5kIEludGVyZmFjZXNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEb3dubG9hZGVySW50ZXJmYWNlIHtcbiAgLyoqIERvd25sb2FkcyBtdWx0aXBsZSBmaWxlcyBmcm9tIGEgbGlzdCBvZiBVUklzLiAqL1xuICBkb3dubG9hZDogKFxuICAgIHVyaXM6IHN0cmluZ1tdLFxuICAgIG9wdGlvbnM/OiBEb3dubG9hZGVyT3B0aW9uc1xuICApID0+IFByb21pc2U8R2VuZXJpY0ZpbGVbXT47XG5cbiAgLyoqIERvd25sb2FkcyBhbmQgcGFyc2VzIGEgSlNPTiBmaWxlIGZyb20gYSBnaXZlbiBVUkkuICovXG4gIGRvd25sb2FkSnNvbjogPFQ+KHVyaTogc3RyaW5nLCBvcHRpb25zPzogRG93bmxvYWRlck9wdGlvbnMpID0+IFByb21pc2U8VD47XG59XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgb3B0aW9ucyB0aGF0IGNhbiBiZSBwYXNzZWQgd2hlbiBkb3dubG9hZGluZyBmaWxlcy4gKlxuICogQGNhdGVnb3J5IFN0b3JhZ2VcbiAqL1xuZXhwb3J0IHR5cGUgRG93bmxvYWRlck9wdGlvbnMgPSB7XG4gIC8qKiBBbiBhYm9ydCBzaWduYWwgdG8gY2FuY2VsIHRoZSBkb3dubG9hZC4gKi9cbiAgc2lnbmFsPzogR2VuZXJpY0Fib3J0U2lnbmFsO1xufTtcblxuLyoqXG4gKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUge0BsaW5rIERvd25sb2FkZXJJbnRlcmZhY2V9IHRoYXQgdGhyb3dzIGFuIGVycm9yIHdoZW4gY2FsbGVkLlxuICogQGNhdGVnb3J5IFN0b3JhZ2VcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZU51bGxEb3dubG9hZGVyKCk6IERvd25sb2FkZXJJbnRlcmZhY2Uge1xuICBjb25zdCBlcnJvckhhbmRsZXIgPSAoKSA9PiB7XG4gICAgdGhyb3cgbmV3IEludGVyZmFjZUltcGxlbWVudGF0aW9uTWlzc2luZ0Vycm9yKFxuICAgICAgJ0Rvd25sb2FkZXJJbnRlcmZhY2UnLFxuICAgICAgJ2Rvd25sb2FkZXInXG4gICAgKTtcbiAgfTtcbiAgcmV0dXJuIHsgZG93bmxvYWQ6IGVycm9ySGFuZGxlciwgZG93bmxvYWRKc29uOiBlcnJvckhhbmRsZXIgfTtcbn1cbiIsICJpbXBvcnQgdHlwZSB7IFBkYSwgUHVibGljS2V5IH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXB1YmxpYy1rZXlzJztcbmltcG9ydCB7IEludGVyZmFjZUltcGxlbWVudGF0aW9uTWlzc2luZ0Vycm9yIH0gZnJvbSAnLi9lcnJvcnMnO1xuaW1wb3J0IHR5cGUgeyBLZXlwYWlyIH0gZnJvbSAnLi9LZXlwYWlyJztcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBpbnRlcmZhY2UgZm9yIHRoZSBFZERTQSBjcnlwdG9ncmFwaHkgYWxnb3JpdGhtLlxuICogSXQgYWxsb3dzIHVzIHRvIGNyZWF0ZSwgZmluZCBhbmQgdXNlIHB1YmxpYyBrZXlzIGFuZCBrZXlwYWlycy5cbiAqXG4gKiBAY2F0ZWdvcnkgQ29udGV4dCBhbmQgSW50ZXJmYWNlc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEVkZHNhSW50ZXJmYWNlIHtcbiAgLyoqIEdlbmVyYXRlcyBhIG5ldyBrZXlwYWlyLiAqL1xuICBnZW5lcmF0ZUtleXBhaXI6ICgpID0+IEtleXBhaXI7XG4gIC8qKiBSZXN0b3JlcyBhIGtleXBhaXIgZnJvbSBhIHNlY3JldCBrZXkuICovXG4gIGNyZWF0ZUtleXBhaXJGcm9tU2VjcmV0S2V5OiAoc2VjcmV0S2V5OiBVaW50OEFycmF5KSA9PiBLZXlwYWlyO1xuICAvKiogUmVzdG9yZXMgYSBrZXlwYWlyIGZyb20gYSBzZWVkLiAqL1xuICBjcmVhdGVLZXlwYWlyRnJvbVNlZWQ6IChzZWVkOiBVaW50OEFycmF5KSA9PiBLZXlwYWlyO1xuICAvKiogV2hldGhlciB0aGUgZ2l2ZW4gcHVibGljIGtleSBpcyBvbiB0aGUgRWREU0EgZWxsaXB0aWMgY3VydmUuICovXG4gIGlzT25DdXJ2ZTogKHB1YmxpY0tleTogUHVibGljS2V5KSA9PiBib29sZWFuO1xuICAvKiogRmluZHMgYSBQcm9ncmFtLURlcml2ZWQgQWRkcmVzcyBmcm9tIHRoZSBnaXZlbiBwcm9ncmFtSWQgYW5kIHNlZWRzLiAqL1xuICBmaW5kUGRhOiAocHJvZ3JhbUlkOiBQdWJsaWNLZXksIHNlZWRzOiBVaW50OEFycmF5W10pID0+IFBkYTtcbiAgLyoqIFNpZ25zIGEgbWVzc2FnZSB3aXRoIHRoZSBnaXZlbiBrZXlwYWlyLiAqL1xuICBzaWduOiAobWVzc2FnZTogVWludDhBcnJheSwga2V5cGFpcjogS2V5cGFpcikgPT4gVWludDhBcnJheTtcbiAgLyoqIFZlcmlmaWVzIGEgc2lnbmF0dXJlIGZvciBhIG1lc3NhZ2Ugd2l0aCB0aGUgZ2l2ZW4gcHVibGljIGtleS4gKi9cbiAgdmVyaWZ5OiAoXG4gICAgbWVzc2FnZTogVWludDhBcnJheSxcbiAgICBzaWduYXR1cmU6IFVpbnQ4QXJyYXksXG4gICAgcHVibGljS2V5OiBQdWJsaWNLZXlcbiAgKSA9PiBib29sZWFuO1xufVxuXG4vKipcbiAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSB7QGxpbmsgRWRkc2FJbnRlcmZhY2V9IHRoYXQgdGhyb3dzIGFuIGVycm9yIHdoZW4gY2FsbGVkLlxuICogQGNhdGVnb3J5IFNpZ25lcnMgYW5kIFB1YmxpY0tleXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZU51bGxFZGRzYSgpOiBFZGRzYUludGVyZmFjZSB7XG4gIGNvbnN0IGVycm9ySGFuZGxlciA9ICgpID0+IHtcbiAgICB0aHJvdyBuZXcgSW50ZXJmYWNlSW1wbGVtZW50YXRpb25NaXNzaW5nRXJyb3IoJ0VkZHNhSW50ZXJmYWNlJywgJ2VkZHNhJyk7XG4gIH07XG4gIHJldHVybiB7XG4gICAgZ2VuZXJhdGVLZXlwYWlyOiBlcnJvckhhbmRsZXIsXG4gICAgY3JlYXRlS2V5cGFpckZyb21TZWNyZXRLZXk6IGVycm9ySGFuZGxlcixcbiAgICBjcmVhdGVLZXlwYWlyRnJvbVNlZWQ6IGVycm9ySGFuZGxlcixcbiAgICBpc09uQ3VydmU6IGVycm9ySGFuZGxlcixcbiAgICBmaW5kUGRhOiBlcnJvckhhbmRsZXIsXG4gICAgc2lnbjogZXJyb3JIYW5kbGVyLFxuICAgIHZlcmlmeTogZXJyb3JIYW5kbGVyLFxuICB9O1xufVxuIiwgImltcG9ydCB7IEludGVyZmFjZUltcGxlbWVudGF0aW9uTWlzc2luZ0Vycm9yIH0gZnJvbSAnLi9lcnJvcnMnO1xuaW1wb3J0IHsgSHR0cFJlcXVlc3QgfSBmcm9tICcuL0h0dHBSZXF1ZXN0JztcbmltcG9ydCB7IEh0dHBSZXNwb25zZSB9IGZyb20gJy4vSHR0cFJlc3BvbnNlJztcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBpbnRlcmZhY2UgZm9yIGFuIEhUVFAgY2xpZW50LlxuICpcbiAqIEBjYXRlZ29yeSBDb250ZXh0IGFuZCBJbnRlcmZhY2VzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSHR0cEludGVyZmFjZSB7XG4gIC8qKiBTZW5kcyBhIEhUVFAgcmVxdWVzdCBhbmQgcmV0dXJucyBpdHMgcmVzcG9uc2UuICovXG4gIHNlbmQ6IDxSZXNwb25zZURhdGEsIFJlcXVlc3REYXRhID0gYW55PihcbiAgICByZXF1ZXN0OiBIdHRwUmVxdWVzdDxSZXF1ZXN0RGF0YT5cbiAgKSA9PiBQcm9taXNlPEh0dHBSZXNwb25zZTxSZXNwb25zZURhdGE+Pjtcbn1cblxuLyoqXG4gKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUge0BsaW5rIEh0dHBJbnRlcmZhY2V9IHRoYXQgdGhyb3dzIGFuIGVycm9yIHdoZW4gY2FsbGVkLlxuICogQGNhdGVnb3J5IEh0dHBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZU51bGxIdHRwKCk6IEh0dHBJbnRlcmZhY2Uge1xuICBjb25zdCBlcnJvckhhbmRsZXIgPSAoKSA9PiB7XG4gICAgdGhyb3cgbmV3IEludGVyZmFjZUltcGxlbWVudGF0aW9uTWlzc2luZ0Vycm9yKCdIdHRwSW50ZXJmYWNlJywgJ2h0dHAnKTtcbiAgfTtcbiAgcmV0dXJuIHsgc2VuZDogZXJyb3JIYW5kbGVyIH07XG59XG4iLCAiaW1wb3J0IHR5cGUge1xuICBQdWJsaWNLZXksXG4gIFB1YmxpY0tleUlucHV0LFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktcHVibGljLWtleXMnO1xuaW1wb3J0IHR5cGUgeyBDbHVzdGVyRmlsdGVyIH0gZnJvbSAnLi9DbHVzdGVyJztcbmltcG9ydCB0eXBlIHsgRXJyb3JXaXRoTG9ncywgUHJvZ3JhbSB9IGZyb20gJy4vUHJvZ3JhbSc7XG5pbXBvcnQgdHlwZSB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi9UcmFuc2FjdGlvbic7XG5pbXBvcnQgeyBJbnRlcmZhY2VJbXBsZW1lbnRhdGlvbk1pc3NpbmdFcnJvciwgUHJvZ3JhbUVycm9yIH0gZnJvbSAnLi9lcnJvcnMnO1xuXG4vKipcbiAqIERlZmluZXMgdGhlIGludGVyZmFjZSBmb3IgYSBwcm9ncmFtIHJlcG9zaXRvcnkuXG4gKiBJdCBhbGxvd3MgdXMgdG8gcmVnaXN0ZXIgYW5kIHJldHJpZXZlIHByb2dyYW1zIHdoZW4gbmVlZGVkLlxuICpcbiAqIEBjYXRlZ29yeSBDb250ZXh0IGFuZCBJbnRlcmZhY2VzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUHJvZ3JhbVJlcG9zaXRvcnlJbnRlcmZhY2Uge1xuICAvKipcbiAgICogV2hldGhlciBhIGdpdmVuIHByb2dyYW0gaXMgcmVnaXN0ZXJlZCBpbiB0aGUgcmVwb3NpdG9yeS5cbiAgICpcbiAgICogQHBhcmFtIGlkZW50aWZpZXIgVGhlIG5hbWUgb3IgcHVibGljIGtleSBvZiB0aGUgcHJvZ3JhbSB0byBjaGVjay5cbiAgICogQHBhcmFtIGNsdXN0ZXJGaWx0ZXIgVGhlIGNsdXN0ZXIgZmlsdGVyIHRvIGFwcGx5LiBEZWZhdWx0cyB0byBgXCJjdXJyZW50XCJgLlxuICAgKi9cbiAgaGFzKGlkZW50aWZpZXI6IHN0cmluZyB8IFB1YmxpY0tleSwgY2x1c3RlckZpbHRlcj86IENsdXN0ZXJGaWx0ZXIpOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBHZXRzIGEgcHJvZ3JhbSBmcm9tIHRoZSByZXBvc2l0b3J5LlxuICAgKiBUaHJvd3MgYW4gZXJyb3IgaWYgdGhlIHByb2dyYW0gaXMgbm90IGZvdW5kLlxuICAgKlxuICAgKiBAcGFyYW0gaWRlbnRpZmllciBUaGUgbmFtZSBvciBwdWJsaWMga2V5IG9mIHRoZSBwcm9ncmFtIHRvIHJldHJpZXZlLlxuICAgKiBAcGFyYW0gY2x1c3RlckZpbHRlciBUaGUgY2x1c3RlciBmaWx0ZXIgdG8gYXBwbHkuIERlZmF1bHRzIHRvIGBcImN1cnJlbnRcImAuXG4gICAqIEB0eXBlUGFyYW0gVCAtIFRoZSB0eXBlIG9mIHRoZSBwcm9ncmFtIHRvIHJldHJpZXZlLiBEZWZhdWx0cyB0byBgUHJvZ3JhbWAuXG4gICAqL1xuICBnZXQ8VCBleHRlbmRzIFByb2dyYW0gPSBQcm9ncmFtPihcbiAgICBpZGVudGlmaWVyOiBzdHJpbmcgfCBQdWJsaWNLZXksXG4gICAgY2x1c3RlckZpbHRlcj86IENsdXN0ZXJGaWx0ZXJcbiAgKTogVDtcblxuICAvKipcbiAgICogR2V0cyB0aGUgcHVibGljIGtleSBvZiBhIHByb2dyYW0gZnJvbSB0aGUgcmVwb3NpdG9yeSxcbiAgICogd2l0aCBhbiBvcHRpb25hbCBmYWxsYmFjayBwdWJsaWMga2V5LlxuICAgKlxuICAgKiBUaHJvd3MgYW4gZXJyb3IgaWYgdGhlIHByb2dyYW0gaXMgbm90IGZvdW5kIGFuZCBubyBmYWxsYmFjayBpcyBwcm92aWRlZC5cbiAgICpcbiAgICogQHBhcmFtIGlkZW50aWZpZXIgVGhlIG5hbWUgb3IgcHVibGljIGtleSBvZiB0aGUgcHJvZ3JhbSB0byByZXRyaWV2ZS5cbiAgICogQHBhcmFtIGZhbGxiYWNrIFRoZSBmYWxsYmFjayBwdWJsaWMga2V5IHRvIHVzZSBpZiB0aGUgcHJvZ3JhbSBpcyBub3QgZm91bmQuXG4gICAqIERlZmF1bHRzIHRvIG5vdCB1c2luZyBhIGZhbGxiYWNrIHB1YmxpYyBrZXkuXG4gICAqIEBwYXJhbSBjbHVzdGVyRmlsdGVyIFRoZSBjbHVzdGVyIGZpbHRlciB0byBhcHBseS4gRGVmYXVsdHMgdG8gYFwiY3VycmVudFwiYC5cbiAgICovXG4gIGdldFB1YmxpY0tleShcbiAgICBpZGVudGlmaWVyOiBzdHJpbmcgfCBQdWJsaWNLZXksXG4gICAgZmFsbGJhY2s/OiBQdWJsaWNLZXlJbnB1dCxcbiAgICBjbHVzdGVyRmlsdGVyPzogQ2x1c3RlckZpbHRlclxuICApOiBQdWJsaWNLZXk7XG5cbiAgLyoqXG4gICAqIEdldHMgYWxsIHByb2dyYW1zIGZyb20gdGhlIHJlcG9zaXRvcnkgbWF0Y2hpbmcgdGhlIGdpdmVuIGNsdXN0ZXIgZmlsdGVyLlxuICAgKiBEZWZhdWx0cyB0byBnZXR0aW5nIGFsbCBwcm9ncmFtcyBmcm9tIHRoZSBjdXJyZW50IGNsdXN0ZXIuXG4gICAqXG4gICAqIEBwYXJhbSBjbHVzdGVyRmlsdGVyIFRoZSBjbHVzdGVyIGZpbHRlciB0byBhcHBseS4gRGVmYXVsdHMgdG8gYFwiY3VycmVudFwiYC5cbiAgICovXG4gIGFsbChjbHVzdGVyRmlsdGVyPzogQ2x1c3RlckZpbHRlcik6IFByb2dyYW1bXTtcblxuICAvKipcbiAgICogUmVnaXN0ZXJzIGEgbmV3IHByb2dyYW0gaW4gdGhlIHJlcG9zaXRvcnkuXG4gICAqXG4gICAqIEBwYXJhbSBwcm9ncmFtIFRoZSBwcm9ncmFtIHRvIHJlZ2lzdGVyLlxuICAgKiBAcGFyYW0gb3ZlcnJpZGVzIFdoZXRoZXIgdG8gcmVnaXN0ZXIgYW5kIHByaW9yaXRpemVcbiAgICogdGhlIGdpdmVuIHByb2dyYW0gZXZlbiBpZiBhIHByb2dyYW0gd2l0aCB0aGUgc2FtZVxuICAgKiBwdWJsaWMga2V5IGFscmVhZHkgZXhpc3RzLiBEZWZhdWx0cyB0byBgdHJ1ZWAuXG4gICAqL1xuICBhZGQocHJvZ3JhbTogUHJvZ3JhbSwgb3ZlcnJpZGVzPzogYm9vbGVhbik6IHZvaWQ7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBiaW5kaW5nIGJldHdlZW4gYSBuYW1lIGFuZCBhIHByb2dyYW0gaWRlbnRpZmllci5cbiAgICogVGhpcyBjYW4gYmUgdXNlZCB0byBjcmVhdGUgcmVkaXJlY3Rpb25zIG9yIGFsaWFzZXMgd2hlbiByZXNvbHZpbmcgcHJvZ3JhbXMuXG4gICAqXG4gICAqIEBwYXJhbSBhYnN0cmFjdCBUaGUgbmFtZSBvZiB0aGUgYmluZGluZy5cbiAgICogQHBhcmFtIGNvbmNyZXRlIFRoZSBpZGVudGlmaWVyIHRoaXMgYmluZGluZyBzaG91bGQgcmVzb2x2ZSB0by5cbiAgICovXG4gIGJpbmQoYWJzdHJhY3Q6IHN0cmluZywgY29uY3JldGU6IHN0cmluZyB8IFB1YmxpY0tleSk6IHZvaWQ7XG5cbiAgLyoqXG4gICAqIFJlbW92ZXMgYSBiaW5kaW5nIHVzaW5nIGl0cyBuYW1lLlxuICAgKlxuICAgKiBAcGFyYW0gYWJzdHJhY3QgVGhlIG5hbWUgb2YgdGhlIGJpbmRpbmcgdG8gcmVtb3ZlLlxuICAgKi9cbiAgdW5iaW5kKGFic3RyYWN0OiBzdHJpbmcpOiB2b2lkO1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgY2xvbmVkIGluc3RhbmNlIG9mIHRoZSByZXBvc2l0b3J5LlxuICAgKlxuICAgKiBAcmV0dXJucyBBIG5ldyByZXBvc2l0b3J5IGluc3RhbmNlIHdpdGggdGhlIHNhbWUgcHJvZ3JhbXMgYW5kIGJpbmRpbmdzLlxuICAgKi9cbiAgY2xvbmUoKTogUHJvZ3JhbVJlcG9zaXRvcnlJbnRlcmZhY2U7XG5cbiAgLyoqXG4gICAqIFJlc29sdmVzIGEgY3VzdG9tIHByb2dyYW0gZXJyb3IgZnJvbSBhIHRyYW5zYWN0aW9uIGVycm9yLlxuICAgKlxuICAgKiBAcGFyYW0gZXJyb3IgVGhlIHJhdyBlcnJvciB0byByZXNvbHZlIGNvbnRhaW5pbmcgdGhlIHByb2dyYW0gbG9ncy5cbiAgICogQHBhcmFtIHRyYW5zYWN0aW9uIFRoZSB0cmFuc2FjdGlvbiB0aGF0IGNhdXNlZCB0aGUgZXJyb3IuXG4gICAqIEByZXR1cm5zIFRoZSByZXNvbHZlZCBwcm9ncmFtIGVycm9yLCBvciBgbnVsbGAgaWYgdGhlIGVycm9yIGNhbm5vdCBiZSByZXNvbHZlZC5cbiAgICovXG4gIHJlc29sdmVFcnJvcihcbiAgICBlcnJvcjogRXJyb3JXaXRoTG9ncyxcbiAgICB0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb25cbiAgKTogUHJvZ3JhbUVycm9yIHwgbnVsbDtcbn1cblxuLyoqXG4gKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUge0BsaW5rIFByb2dyYW1SZXBvc2l0b3J5SW50ZXJmYWNlfSB0aGF0IHRocm93cyBhbiBlcnJvciB3aGVuIGNhbGxlZC5cbiAqIEBjYXRlZ29yeSBQcm9ncmFtc1xuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlTnVsbFByb2dyYW1SZXBvc2l0b3J5KCk6IFByb2dyYW1SZXBvc2l0b3J5SW50ZXJmYWNlIHtcbiAgY29uc3QgZXJyb3JIYW5kbGVyID0gKCkgPT4ge1xuICAgIHRocm93IG5ldyBJbnRlcmZhY2VJbXBsZW1lbnRhdGlvbk1pc3NpbmdFcnJvcihcbiAgICAgICdQcm9ncmFtUmVwb3NpdG9yeUludGVyZmFjZScsXG4gICAgICAncHJvZ3JhbXMnXG4gICAgKTtcbiAgfTtcbiAgcmV0dXJuIHtcbiAgICBoYXM6IGVycm9ySGFuZGxlcixcbiAgICBnZXQ6IGVycm9ySGFuZGxlcixcbiAgICBnZXRQdWJsaWNLZXk6IGVycm9ySGFuZGxlcixcbiAgICBhbGw6IGVycm9ySGFuZGxlcixcbiAgICBhZGQ6IGVycm9ySGFuZGxlcixcbiAgICBiaW5kOiBlcnJvckhhbmRsZXIsXG4gICAgdW5iaW5kOiBlcnJvckhhbmRsZXIsXG4gICAgY2xvbmU6IGVycm9ySGFuZGxlcixcbiAgICByZXNvbHZlRXJyb3I6IGVycm9ySGFuZGxlcixcbiAgfTtcbn1cbiIsICJpbXBvcnQgdHlwZSB7IFB1YmxpY0tleSB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1wdWJsaWMta2V5cyc7XG5pbXBvcnQgdHlwZSB7IE1heWJlUnBjQWNjb3VudCwgUnBjQWNjb3VudCB9IGZyb20gJy4vQWNjb3VudCc7XG5pbXBvcnQgeyBTb2xBbW91bnQgfSBmcm9tICcuL0Ftb3VudCc7XG5pbXBvcnQgdHlwZSB7IENsdXN0ZXIgfSBmcm9tICcuL0NsdXN0ZXInO1xuaW1wb3J0IHsgRGF0ZVRpbWUgfSBmcm9tICcuL0RhdGVUaW1lJztcbmltcG9ydCB0eXBlIHsgR2VuZXJpY0Fib3J0U2lnbmFsIH0gZnJvbSAnLi9HZW5lcmljQWJvcnRTaWduYWwnO1xuaW1wb3J0IHR5cGUge1xuICBCbG9ja2hhc2gsXG4gIEJsb2NraGFzaFdpdGhFeHBpcnlCbG9ja0hlaWdodCxcbiAgVHJhbnNhY3Rpb24sXG4gIFRyYW5zYWN0aW9uRXJyb3IsXG4gIFRyYW5zYWN0aW9uU2lnbmF0dXJlLFxuICBUcmFuc2FjdGlvblN0YXR1cyxcbiAgVHJhbnNhY3Rpb25XaXRoTWV0YSxcbn0gZnJvbSAnLi9UcmFuc2FjdGlvbic7XG5pbXBvcnQgeyBJbnRlcmZhY2VJbXBsZW1lbnRhdGlvbk1pc3NpbmdFcnJvciB9IGZyb20gJy4vZXJyb3JzJztcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBpbnRlcmZhY2UgZm9yIGFuIFJQQyBjbGllbnQuXG4gKiBJdCBhbGxvd3MgdXMgdG8gaW50ZXJhY3Qgd2l0aCB0aGUgU29sYW5hIGJsb2NrY2hhaW4uXG4gKlxuICogQGNhdGVnb3J5IENvbnRleHQgYW5kIEludGVyZmFjZXNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBScGNJbnRlcmZhY2Uge1xuICAvKiogVGhlIFJQQyBlbmRwb2ludCB1c2VkIGJ5IHRoZSBjbGllbnQuICovXG4gIGdldEVuZHBvaW50KCk6IHN0cmluZztcblxuICAvKiogVGhlIFNvbGFuYSBjbHVzdGVyIG9mIHRoZSBSUEMgYmVpbmcgdXNlZC4gKi9cbiAgZ2V0Q2x1c3RlcigpOiBDbHVzdGVyO1xuXG4gIC8qKlxuICAgKiBGZXRjaCBhIHJhdyBhY2NvdW50IGF0IHRoZSBnaXZlbiBhZGRyZXNzLlxuICAgKlxuICAgKiBAcGFyYW0gcHVibGljS2V5IFRoZSBwdWJsaWMga2V5IG9mIHRoZSBhY2NvdW50IHRvIGZldGNoLlxuICAgKiBAcGFyYW0gb3B0aW9ucyBUaGUgb3B0aW9ucyB0byB1c2Ugd2hlbiBmZXRjaGluZyB0aGUgYWNjb3VudC5cbiAgICogQHJldHVybnMgQSByYXcgYWNjb3VudCB0aGF0IG1heSBvciBtYXkgbm90IGV4aXN0LlxuICAgKi9cbiAgZ2V0QWNjb3VudChcbiAgICBwdWJsaWNLZXk6IFB1YmxpY0tleSxcbiAgICBvcHRpb25zPzogUnBjR2V0QWNjb3VudE9wdGlvbnNcbiAgKTogUHJvbWlzZTxNYXliZVJwY0FjY291bnQ+O1xuXG4gIC8qKlxuICAgKiBGZXRjaCBtdWx0aXBsZSByYXcgYWNjb3VudHMgYXQgdGhlIGdpdmVuIGFkZHJlc3Nlcy5cbiAgICpcbiAgICogQHBhcmFtIHB1YmxpY0tleSBUaGUgcHVibGljIGtleXMgb2YgdGhlIGFjY291bnRzIHRvIGZldGNoLlxuICAgKiBAcGFyYW0gb3B0aW9ucyBUaGUgb3B0aW9ucyB0byB1c2Ugd2hlbiBmZXRjaGluZyBtdWx0aXBsZSBhY2NvdW50cy5cbiAgICogQHJldHVybnMgQW4gYXJyYXkgb2YgcmF3IGFjY291bnRzIHRoYXQgbWF5IG9yIG1heSBub3QgZXhpc3QuXG4gICAqL1xuICBnZXRBY2NvdW50cyhcbiAgICBwdWJsaWNLZXlzOiBQdWJsaWNLZXlbXSxcbiAgICBvcHRpb25zPzogUnBjR2V0QWNjb3VudHNPcHRpb25zXG4gICk6IFByb21pc2U8TWF5YmVScGNBY2NvdW50W10+O1xuXG4gIC8qKlxuICAgKiBGZXRjaCBtdWx0aXBsZSByYXcgYWNjb3VudHMgZnJvbSBhIHByb2dyYW0uXG4gICAqXG4gICAqIEBwYXJhbSBwcm9ncmFtSWQgVGhlIHB1YmxpYyBrZXkgb2YgdGhlIHByb2dyYW0gdG8gZmV0Y2ggYWNjb3VudHMgZnJvbS5cbiAgICogQHBhcmFtIG9wdGlvbnMgVGhlIG9wdGlvbnMgdG8gdXNlIHdoZW4gZmV0Y2hpbmcgcHJvZ3JhbSBhY2NvdW50cy5cbiAgICogQHJldHVybnMgQW4gYXJyYXkgb2YgcmF3IGFjY291bnRzLlxuICAgKi9cbiAgZ2V0UHJvZ3JhbUFjY291bnRzKFxuICAgIHByb2dyYW1JZDogUHVibGljS2V5LFxuICAgIG9wdGlvbnM/OiBScGNHZXRQcm9ncmFtQWNjb3VudHNPcHRpb25zXG4gICk6IFByb21pc2U8UnBjQWNjb3VudFtdPjtcblxuICAvKipcbiAgICogRmV0Y2ggdGhlIGVzdGltYXRlZCBwcm9kdWN0aW9uIHRpbWUgb2YgYSBibG9jay5cbiAgICpcbiAgICogQHBhcmFtIHNsb3QgVGhlIHNsb3QgdG8gZ2V0IHRoZSBlc3RpbWF0ZWQgcHJvZHVjdGlvbiB0aW1lIGZvci5cbiAgICogQHBhcmFtIG9wdGlvbnMgVGhlIG9wdGlvbnMgdG8gdXNlIHdoZW4gZ2V0dGluZyB0aGUgYmxvY2sgdGltZSBvZiBhIHNsb3QuXG4gICAqIEByZXR1cm5zIFRoZSBlc3RpbWF0ZWQgcHJvZHVjdGlvbiB0aW1lIG9mIHRoZSBibG9jayBpbiBVbml4IHRpbWUuXG4gICAqL1xuICBnZXRCbG9ja1RpbWUoXG4gICAgc2xvdDogbnVtYmVyLFxuICAgIG9wdGlvbnM/OiBScGNHZXRCbG9ja1RpbWVPcHRpb25zXG4gICk6IFByb21pc2U8RGF0ZVRpbWUgfCBudWxsPjtcblxuICAvKipcbiAgICogRmV0Y2ggdGhlIGJhbGFuY2Ugb2YgYW4gYWNjb3VudC5cbiAgICpcbiAgICogQHBhcmFtIHB1YmxpY0tleSBUaGUgcHVibGljIGtleSBvZiB0aGUgYWNjb3VudC5cbiAgICogQHBhcmFtIG9wdGlvbnMgVGhlIG9wdGlvbnMgdG8gdXNlIHdoZW4gZmV0Y2hpbmcgYW4gYWNjb3VudCdzIGJhbGFuY2UuXG4gICAqIEByZXR1cm5zIEFuIGFtb3VudCBvZiBTT0wuXG4gICAqL1xuICBnZXRCYWxhbmNlKFxuICAgIHB1YmxpY0tleTogUHVibGljS2V5LFxuICAgIG9wdGlvbnM/OiBScGNHZXRCYWxhbmNlT3B0aW9uc1xuICApOiBQcm9taXNlPFNvbEFtb3VudD47XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgYW1vdW50IG9mIHJlbnQtZXhlbXB0IFNPTCByZXF1aXJlZCB0byBjcmVhdGUgYW4gYWNjb3VudCBvZiB0aGUgZ2l2ZW4gc2l6ZS5cbiAgICpcbiAgICogQHBhcmFtIGJ5dGVzIFRoZSBzaXplIG9mIHRoZSBhY2NvdW50IGluIGJ5dGVzLlxuICAgKiBAcGFyYW0gb3B0aW9ucyBUaGUgb3B0aW9ucyB0byB1c2Ugd2hlbiBmZXRjaGluZyB0aGUgcmVudCBleGVtcHQgYW1vdW50LlxuICAgKiBAcmV0dXJucyBBbiBhbW91bnQgb2YgU09MLlxuICAgKi9cbiAgZ2V0UmVudChieXRlczogbnVtYmVyLCBvcHRpb25zPzogUnBjR2V0UmVudE9wdGlvbnMpOiBQcm9taXNlPFNvbEFtb3VudD47XG5cbiAgLyoqXG4gICAqIEZldGNoIHRoZSByZWNlbnQgc2xvdC5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgVGhlIG9wdGlvbnMgdG8gdXNlIHdoZW4gZmV0Y2hpbmcgdGhlIHJlY2VudCBzbG90LlxuICAgKiBAcmV0dXJucyBUaGUgcmVjZW50IHNsb3QuXG4gICAqL1xuICBnZXRTbG90KG9wdGlvbnM/OiBScGNHZXRTbG90T3B0aW9ucyk6IFByb21pc2U8bnVtYmVyPjtcblxuICAvKipcbiAgICogRmV0Y2ggdGhlIGxhdGVzdCBibG9ja2hhc2guXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIFRoZSBvcHRpb25zIHRvIHVzZSB3aGVuIGZldGNoaW5nIHRoZSBsYXRlc3QgYmxvY2toYXNoLlxuICAgKiBAcmV0dXJucyBUaGUgbGF0ZXN0IGJsb2NraGFzaCBhbmQgaXRzIGJsb2NrIGhlaWdodC5cbiAgICovXG4gIGdldExhdGVzdEJsb2NraGFzaChcbiAgICBvcHRpb25zPzogUnBjR2V0TGF0ZXN0QmxvY2toYXNoT3B0aW9uc1xuICApOiBQcm9taXNlPEJsb2NraGFzaFdpdGhFeHBpcnlCbG9ja0hlaWdodD47XG5cbiAgLyoqXG4gICAqIEZldGNoIGEgdHJhbnNhY3Rpb24gYnkgaXRzIHNpZ25hdHVyZS5cbiAgICpcbiAgICogQHBhcmFtIHNpZ25hdHVyZSBUaGUgc2lnbmF0dXJlIG9mIHRoZSB0cmFuc2FjdGlvbiB0byBmZXRjaC5cbiAgICogQHBhcmFtIG9wdGlvbnMgVGhlIG9wdGlvbnMgdG8gdXNlIHdoZW4gZmV0Y2hpbmcgdHJhbnNhY3Rpb25zLlxuICAgKiBAcmV0dXJucyBBIHRyYW5zYWN0aW9uIHdpdGggaXRzIG1ldGFkYXRhIG9yIGBudWxsYCBpZiB0aGUgdHJhbnNhY3Rpb24gd2FzIG5vdCBmb3VuZC5cbiAgICovXG4gIGdldFRyYW5zYWN0aW9uKFxuICAgIHNpZ25hdHVyZTogVHJhbnNhY3Rpb25TaWduYXR1cmUsXG4gICAgb3B0aW9ucz86IFJwY0dldFRyYW5zYWN0aW9uT3B0aW9uc1xuICApOiBQcm9taXNlPFRyYW5zYWN0aW9uV2l0aE1ldGEgfCBudWxsPjtcblxuICAvKipcbiAgICogRmV0Y2ggdHJhbnNhY3Rpb24gY29tbWl0bWVudHMgZnJvbSBhbiBhcnJheSBvZiBzaWduYXR1cmVzLlxuICAgKlxuICAgKiBAcGFyYW0gc2lnbmF0dXJlcyBUaGUgc2lnbmF0dXJlcyBvZiBhbGwgdHJhbnNhY3Rpb25zIHdlIHdhbnQgdG8gZmV0Y2ggY29tbWl0bWVudHMgZm9yLlxuICAgKiBAcGFyYW0gb3B0aW9ucyBUaGUgb3B0aW9ucyB0byB1c2Ugd2hlbiBmZXRjaGluZyB0cmFuc2FjdGlvbiBjb21taXRtZW50cy5cbiAgICogQHJldHVybnMgQW4gYXJyYXkgb2YgdHJhbnNhY3Rpb24gc3RhdHVzZXMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIHNpZ25hdHVyZXMuXG4gICAqIElmIGEgdHJhbnNhY3Rpb24gd2FzIG5vdCBmb3VuZCwgYG51bGxgIHdpbGwgYmUgcmV0dXJuZWQgaW5zdGVhZC5cbiAgICovXG4gIGdldFNpZ25hdHVyZVN0YXR1c2VzKFxuICAgIHNpZ25hdHVyZXM6IFRyYW5zYWN0aW9uU2lnbmF0dXJlW10sXG4gICAgb3B0aW9ucz86IFJwY0dldFNpZ25hdHVyZVN0YXR1c2VzT3B0aW9uc1xuICApOiBQcm9taXNlPEFycmF5PFRyYW5zYWN0aW9uU3RhdHVzIHwgbnVsbD4+O1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCBhbiBhY2NvdW50IGF0IGEgZ2l2ZW4gYWRkcmVzcyBleGlzdHMuXG4gICAqXG4gICAqIEBwYXJhbSBwdWJsaWNLZXkgVGhlIHB1YmxpYyBrZXkgb2YgdGhlIGFjY291bnQuXG4gICAqIEBwYXJhbSBvcHRpb25zIFRoZSBvcHRpb25zIHRvIHVzZSB3aGVuIGNoZWNraW5nIGlmIGFuIGFjY291bnQgZXhpc3RzLlxuICAgKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIGFjY291bnQgZXhpc3RzLCBgZmFsc2VgIG90aGVyd2lzZS5cbiAgICovXG4gIGFjY291bnRFeGlzdHMoXG4gICAgcHVibGljS2V5OiBQdWJsaWNLZXksXG4gICAgb3B0aW9ucz86IFJwY0FjY291bnRFeGlzdHNPcHRpb25zXG4gICk6IFByb21pc2U8Ym9vbGVhbj47XG5cbiAgLyoqXG4gICAqIFNlbmQgYW5kIGNvbmZpcm0gYW4gYWlyZHJvcCB0cmFuc2FjdGlvbiB0byB0aGUgZ2l2ZW4gYWRkcmVzcy5cbiAgICpcbiAgICogQHBhcmFtIHB1YmxpY0tleSBUaGUgcHVibGljIGtleSBvZiB0aGUgYWNjb3VudCB0byBhaXJkcm9wIHRvLlxuICAgKiBAcGFyYW0gYW1vdW50IFRoZSBhbW91bnQgb2YgU09MIHRvIGFpcmRyb3AuXG4gICAqIEBwYXJhbSBvcHRpb25zIFRoZSBvcHRpb25zIHRvIHVzZSB3aGVuIGFpcmRyb3BwaW5nIFNPTC5cbiAgICovXG4gIGFpcmRyb3AoXG4gICAgcHVibGljS2V5OiBQdWJsaWNLZXksXG4gICAgYW1vdW50OiBTb2xBbW91bnQsXG4gICAgb3B0aW9ucz86IFJwY0FpcmRyb3BPcHRpb25zXG4gICk6IFByb21pc2U8dm9pZD47XG5cbiAgLyoqXG4gICAqIFNlbmQgYSBjdXN0b20gUlBDIHJlcXVlc3QgdG8gdGhlIG5vZGUuXG4gICAqXG4gICAqIEBwYXJhbSBtZXRob2QgVGhlIG1ldGhvZCB0byBjYWxsLlxuICAgKiBAcGFyYW0gcGFyYW1zIFRoZSBwYXJhbWV0ZXJzIHRvIHBhc3MgdG8gdGhlIG1ldGhvZC5cbiAgICogQHBhcmFtIG9wdGlvbnMgVGhlIG9wdGlvbnMgdG8gdXNlIHdoZW4gc2VuZGluZyBhIGN1c3RvbSBSUEMgcmVxdWVzdC5cbiAgICogQHJldHVybnMgVGhlIGdlbmVyaWMgcmVzdWx0IG9mIHRoZSBSUEMgY2FsbC5cbiAgICovXG4gIGNhbGw8UiwgUCBleHRlbmRzIGFueVtdID0gYW55W10+KFxuICAgIG1ldGhvZDogc3RyaW5nLFxuICAgIHBhcmFtcz86IFsuLi5QXSxcbiAgICBvcHRpb25zPzogUnBjQ2FsbE9wdGlvbnNcbiAgKTogUHJvbWlzZTxSPjtcblxuICAvKipcbiAgICogU2VuZCBhIHRyYW5zYWN0aW9uIHRvIHRoZSBibG9ja2NoYWluLlxuICAgKlxuICAgKiBAcGFyYW0gdHJhbnNhY3Rpb24gVGhlIHRyYW5zYWN0aW9uIHRvIHNlbmQuXG4gICAqIEBwYXJhbSBvcHRpb25zIFRoZSBvcHRpb25zIHRvIHVzZSB3aGVuIHNlbmRpbmcgYSB0cmFuc2FjdGlvbi5cbiAgICogQHJldHVybnMgVGhlIHNpZ25hdHVyZSBvZiB0aGUgc2VudCB0cmFuc2FjdGlvbi5cbiAgICovXG4gIHNlbmRUcmFuc2FjdGlvbihcbiAgICB0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24sXG4gICAgb3B0aW9ucz86IFJwY1NlbmRUcmFuc2FjdGlvbk9wdGlvbnNcbiAgKTogUHJvbWlzZTxUcmFuc2FjdGlvblNpZ25hdHVyZT47XG5cbiAgLyoqXG4gICAqIENvbmZpcm0gYSBzZW50IHRyYW5zYWN0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0gc2lnbmF0dXJlIFRoZSBzaWduYXR1cmUgb2YgdGhlIHRyYW5zYWN0aW9uIHRvIGNvbmZpcm0uXG4gICAqIEBwYXJhbSBvcHRpb25zIFRoZSBvcHRpb25zIHRvIHVzZSB3aGVuIGNvbmZpcm1pbmcgYSB0cmFuc2FjdGlvbi5cbiAgICogQHJldHVybnMgVGhlIFJQQyByZXNwb25zZSBvZiB0aGUgdHJhbnNhY3Rpb24gY29uZmlybWF0aW9uLlxuICAgKi9cbiAgY29uZmlybVRyYW5zYWN0aW9uKFxuICAgIHNpZ25hdHVyZTogVHJhbnNhY3Rpb25TaWduYXR1cmUsXG4gICAgb3B0aW9uczogUnBjQ29uZmlybVRyYW5zYWN0aW9uT3B0aW9uc1xuICApOiBQcm9taXNlPFJwY0NvbmZpcm1UcmFuc2FjdGlvblJlc3VsdD47XG59XG5cbi8qKlxuICogVGhlIHZhcmlvdXMgY29tbWl0bWVudCBsZXZlbHMgd2hlbiBmZXRjaGluZyBkYXRhIGZyb20gdGhlIGJsb2NrY2hhaW4uXG4gKiBAY2F0ZWdvcnkgUnBjXG4gKi9cbmV4cG9ydCB0eXBlIENvbW1pdG1lbnQgPSAncHJvY2Vzc2VkJyB8ICdjb25maXJtZWQnIHwgJ2ZpbmFsaXplZCc7XG5cbi8qKlxuICogQW4gb2JqZWN0IHRvIHJlcXVlc3QgYSBzbGljZSBvZiBkYXRhIHN0YXJ0aW5nXG4gKiBhdCBgb2Zmc2V0YCBhbmQgZW5kaW5nIGF0IGBvZmZzZXQgKyBsZW5ndGhgLlxuICogQGNhdGVnb3J5IFJwY1xuICovXG5leHBvcnQgdHlwZSBScGNEYXRhU2xpY2UgPSB7IG9mZnNldDogbnVtYmVyOyBsZW5ndGg6IG51bWJlciB9O1xuXG4vKipcbiAqIERlZmluZXMgYSBmaWx0ZXIgdG8gdXNlIHdoZW4gZmV0Y2hpbmcgcHJvZ3JhbSBhY2NvdW50cy5cbiAqIEBjYXRlZ29yeSBScGNcbiAqL1xuZXhwb3J0IHR5cGUgUnBjRGF0YUZpbHRlciA9IFJwY0RhdGFGaWx0ZXJTaXplIHwgUnBjRGF0YUZpbHRlck1lbWNtcDtcblxuLyoqXG4gKiBEZWZpbmVzIGEgZmlsdGVyIHRoYXQgc2VsZWN0cyBhY2NvdW50cyBieSBzaXplLlxuICogQGNhdGVnb3J5IFJwY1xuICovXG5leHBvcnQgdHlwZSBScGNEYXRhRmlsdGVyU2l6ZSA9IHsgZGF0YVNpemU6IG51bWJlciB9O1xuXG4vKipcbiAqIERlZmluZXMgYSBmaWx0ZXIgdGhhdCBzZWxlY3RzIGFjY291bnRzIGJ5IGNvbXBhcmluZ1xuICogdGhlIGdpdmVuIGJ5dGVzIGF0IHRoZSBnaXZlbiBvZmZzZXQuXG4gKiBAY2F0ZWdvcnkgUnBjXG4gKi9cbmV4cG9ydCB0eXBlIFJwY0RhdGFGaWx0ZXJNZW1jbXAgPSB7XG4gIG1lbWNtcDogeyBvZmZzZXQ6IG51bWJlcjsgYnl0ZXM6IFVpbnQ4QXJyYXkgfTtcbn07XG5cbi8qKlxuICogRGVmaW5lcyBhbiBSUEMgcmVzdWx0IHRoYXQgd3JhcHMgdGhlIHJldHVybmVkIHZhbHVlXG4gKiBhbmQgcHJvdmlkZXMgdGhlIHNsb3QgbnVtYmVyIGFzIGNvbnRleHQuXG4gKiBAY2F0ZWdvcnkgUnBjXG4gKi9cbmV4cG9ydCB0eXBlIFJwY1Jlc3VsdFdpdGhDb250ZXh0PFZhbHVlPiA9IHtcbiAgY29udGV4dDogeyBzbG90OiBudW1iZXIgfTtcbiAgdmFsdWU6IFZhbHVlO1xufTtcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBjb21tb24gb3B0aW9ucyByZS11c2VkIGJ5IGFsbFxuICogdGhlIG1ldGhvZHMgZGVmaW5lcyBpbiB0aGUgUlBDIGludGVyZmFjZS5cbiAqIEBjYXRlZ29yeSBScGNcbiAqL1xuZXhwb3J0IHR5cGUgUnBjQmFzZU9wdGlvbnMgPSB7XG4gIC8qKiBBbiBleHBsaWNpdCBSUEMgcmVxdWVzdCBpZGVudGlmaWVyLiAqL1xuICBpZD86IHN0cmluZztcbiAgLyoqIEFuIGFib3J0IHNpZ25hbCB0byBwcmVtYXR1cmVseSBjYW5jZWwgdGhlIHJlcXVlc3QuICovXG4gIHNpZ25hbD86IEdlbmVyaWNBYm9ydFNpZ25hbDtcbiAgLyoqIFRoZSBjb21taXRtZW50IGxldmVsIHRvIHVzZSB3aGVuIGZldGNoaW5nIGRhdGEuICovXG4gIGNvbW1pdG1lbnQ/OiBDb21taXRtZW50O1xuICAvKiogVGhlIG1pbmltdW0gc2xvdCB0byB1c2Ugd2hlbiBmZXRjaGluZyBkYXRhLiAqL1xuICBtaW5Db250ZXh0U2xvdD86IG51bWJlcjtcbn07XG5cbi8qKlxuICogVGhlIG9wdGlvbnMgdG8gdXNlIHdoZW4gZmV0Y2hpbmcgYW4gYWNjb3VudC5cbiAqIEBjYXRlZ29yeSBScGNcbiAqL1xuZXhwb3J0IHR5cGUgUnBjR2V0QWNjb3VudE9wdGlvbnMgPSBScGNCYXNlT3B0aW9ucyAmIHtcbiAgLyoqIFNlbGVjdCBvbmx5IGEgcG9ydGlvbiBvZiB0aGUgYWNjb3VudCdzIGRhdGEuICovXG4gIGRhdGFTbGljZT86IFJwY0RhdGFTbGljZTtcbn07XG5cbi8qKlxuICogVGhlIG9wdGlvbnMgdG8gdXNlIHdoZW4gZmV0Y2hpbmcgbXVsdGlwbGUgYWNjb3VudHMuXG4gKiBAY2F0ZWdvcnkgUnBjXG4gKi9cbmV4cG9ydCB0eXBlIFJwY0dldEFjY291bnRzT3B0aW9ucyA9IFJwY0Jhc2VPcHRpb25zICYge1xuICAvKiogRm9yIGVhY2ggYWNjb3VudCwgc2VsZWN0IG9ubHkgYSBwb3J0aW9uIG9mIHRoZWlyIGRhdGEuICovXG4gIGRhdGFTbGljZT86IFJwY0RhdGFTbGljZTtcbn07XG5cbi8qKlxuICogVGhlIG9wdGlvbnMgdG8gdXNlIHdoZW4gZmV0Y2hpbmcgcHJvZ3JhbSBhY2NvdW50cy5cbiAqIEBjYXRlZ29yeSBScGNcbiAqL1xuZXhwb3J0IHR5cGUgUnBjR2V0UHJvZ3JhbUFjY291bnRzT3B0aW9ucyA9IFJwY0Jhc2VPcHRpb25zICYge1xuICAvKiogRm9yIGVhY2ggcHJvZ3JhbSBhY2NvdW50LCBzZWxlY3Qgb25seSBhIHBvcnRpb24gb2YgdGhlaXIgZGF0YS4gKi9cbiAgZGF0YVNsaWNlPzogUnBjRGF0YVNsaWNlO1xuICAvKiogQSBzZXQgb2YgZmlsdGVycyB0byBuYXJyb3cgZG93biB0aGUgcmV0dXJuZWQgcHJvZ3JhbSBhY2NvdW50cy4gTWF4IDUgZmlsdGVycy4gKi9cbiAgZmlsdGVycz86IFJwY0RhdGFGaWx0ZXJbXTtcbn07XG5cbi8qKlxuICogVGhlIG9wdGlvbnMgdG8gdXNlIHdoZW4gZ2V0dGluZyB0aGUgYmxvY2sgdGltZSBvZiBhIHNsb3QuXG4gKiBAY2F0ZWdvcnkgUnBjXG4gKi9cbmV4cG9ydCB0eXBlIFJwY0dldEJsb2NrVGltZU9wdGlvbnMgPSBScGNCYXNlT3B0aW9ucztcblxuLyoqXG4gKiBUaGUgb3B0aW9ucyB0byB1c2Ugd2hlbiBmZXRjaGluZyB0aGUgYmFsYW5jZSBvZiBhbiBhY2NvdW50LlxuICogQGNhdGVnb3J5IFJwY1xuICovXG5leHBvcnQgdHlwZSBScGNHZXRCYWxhbmNlT3B0aW9ucyA9IFJwY0Jhc2VPcHRpb25zO1xuXG4vKipcbiAqIFRoZSBvcHRpb25zIHRvIHVzZSB3aGVuIGZldGNoaW5nIHRoZSByZW50IGV4ZW1wdCBhbW91bnQuXG4gKiBAY2F0ZWdvcnkgUnBjXG4gKi9cbmV4cG9ydCB0eXBlIFJwY0dldFJlbnRPcHRpb25zID0gUnBjQmFzZU9wdGlvbnMgJiB7XG4gIC8qKiBAZGVmYXVsdFZhbHVlIGBmYWxzZWAgKi9cbiAgaW5jbHVkZXNIZWFkZXJCeXRlcz86IGJvb2xlYW47XG59O1xuXG4vKipcbiAqIFRoZSBvcHRpb25zIHRvIHVzZSB3aGVuIGZldGNoaW5nIHRoZSByZWNlbnQgc2xvdC5cbiAqIEBjYXRlZ29yeSBScGNcbiAqL1xuZXhwb3J0IHR5cGUgUnBjR2V0U2xvdE9wdGlvbnMgPSBScGNCYXNlT3B0aW9ucztcblxuLyoqXG4gKiBUaGUgb3B0aW9ucyB0byB1c2Ugd2hlbiBmZXRjaGluZyB0aGUgbGF0ZXN0IGJsb2NraGFzaC5cbiAqIEBjYXRlZ29yeSBScGNcbiAqL1xuZXhwb3J0IHR5cGUgUnBjR2V0TGF0ZXN0QmxvY2toYXNoT3B0aW9ucyA9IFJwY0Jhc2VPcHRpb25zO1xuXG4vKipcbiAqIFRoZSBvcHRpb25zIHRvIHVzZSB3aGVuIGZldGNoaW5nIGEgdHJhbnNhY3Rpb24uXG4gKiBAY2F0ZWdvcnkgUnBjXG4gKi9cbmV4cG9ydCB0eXBlIFJwY0dldFRyYW5zYWN0aW9uT3B0aW9ucyA9IFJwY0Jhc2VPcHRpb25zO1xuXG4vKipcbiAqIFRoZSBvcHRpb25zIHRvIHVzZSB3aGVuIGZldGNoaW5nIHRyYW5zYWN0aW9uIHN0YXR1c2VzLlxuICogQGNhdGVnb3J5IFJwY1xuICovXG5leHBvcnQgdHlwZSBScGNHZXRTaWduYXR1cmVTdGF0dXNlc09wdGlvbnMgPSBScGNCYXNlT3B0aW9ucyAmIHtcbiAgLyoqXG4gICAqIEVuYWJsZSBzZWFyY2hpbmcgc3RhdHVzIGhpc3RvcnksIG5vdCBuZWVkZWQgZm9yIHJlY2VudCB0cmFuc2FjdGlvbnMuXG4gICAqIEBkZWZhdWx0VmFsdWUgYGZhbHNlYFxuICAgKi9cbiAgc2VhcmNoVHJhbnNhY3Rpb25IaXN0b3J5PzogYm9vbGVhbjtcbn07XG5cbi8qKlxuICogVGhlIG9wdGlvbnMgdG8gdXNlIHdoZW4gY2hlY2tpbmcgaWYgYW4gYWNjb3VudCBleGlzdHMuXG4gKiBAY2F0ZWdvcnkgUnBjXG4gKi9cbmV4cG9ydCB0eXBlIFJwY0FjY291bnRFeGlzdHNPcHRpb25zID0gUnBjQmFzZU9wdGlvbnM7XG5cbi8qKlxuICogVGhlIG9wdGlvbnMgdG8gdXNlIHdoZW4gYWlyZHJvcHBpbmcgU09MLlxuICogQGNhdGVnb3J5IFJwY1xuICovXG5leHBvcnQgdHlwZSBScGNBaXJkcm9wT3B0aW9ucyA9IFBhcnRpYWw8UnBjQ29uZmlybVRyYW5zYWN0aW9uT3B0aW9ucz47XG5cbi8qKlxuICogVGhlIG9wdGlvbnMgdG8gdXNlIHdoZW4gc2VuZGluZyBhIGN1c3RvbSBSUEMgcmVxdWVzdC5cbiAqIEBjYXRlZ29yeSBScGNcbiAqL1xuZXhwb3J0IHR5cGUgUnBjQ2FsbE9wdGlvbnMgPSBScGNCYXNlT3B0aW9ucyAmIHtcbiAgLyoqXG4gICAqIEJ5IGRlZmF1bHQsIHRoZSBSUEMgY2xpZW50IHB1c2hlcyBhbiBhZGRpdGlvbmFsIGBvcHRpb25zYFxuICAgKiBwYXJhbWV0ZXIgdG8gdGhlIFJQQyByZXF1ZXN0IHdoZW4gYSBjb21taXRtZW50IGlzIHNwZWNpZmllZC5cbiAgICogVGhpcyBgZXh0cmFgIHBhcmFtZXRlciBjYW4gYmUgdXNlZCB0byBhZGQgbW9yZSBkYXRhIHRvIHRoZVxuICAgKiBgb3B0aW9uc2AgcGFyYW1ldGVyLlxuICAgKi9cbiAgZXh0cmE/OiBvYmplY3Q7XG59O1xuXG4vKipcbiAqIFRoZSBvcHRpb25zIHRvIHVzZSB3aGVuIHNlbmRpbmcgYSB0cmFuc2FjdGlvbi5cbiAqIEBjYXRlZ29yeSBScGNcbiAqL1xuZXhwb3J0IHR5cGUgUnBjU2VuZFRyYW5zYWN0aW9uT3B0aW9ucyA9IFJwY0Jhc2VPcHRpb25zICYge1xuICAvKiogV2hldGhlciB0byBza2lwIHRoZSBwcmVmbGlnaHQgY2hlY2suICovXG4gIHNraXBQcmVmbGlnaHQ/OiBib29sZWFuO1xuICAvKiogVGhlIGNvbW1pdG1lbnQgbGV2ZWwgdG8gdXNlIGZvciB0aGUgcHJlZmxpZ2h0IGNoZWNrLiAqL1xuICBwcmVmbGlnaHRDb21taXRtZW50PzogQ29tbWl0bWVudDtcbiAgLyoqIFRoZSBtYXhpbXVtIG51bWJlciBvZiByZXRyaWVzIHRvIHVzZS4gKi9cbiAgbWF4UmV0cmllcz86IG51bWJlcjtcbn07XG5cbi8qKlxuICogVGhlIG9wdGlvbnMgdG8gdXNlIHdoZW4gY29uZmlybWluZyBhIHRyYW5zYWN0aW9uLlxuICogQGNhdGVnb3J5IFJwY1xuICovXG5leHBvcnQgdHlwZSBScGNDb25maXJtVHJhbnNhY3Rpb25PcHRpb25zID0gUnBjQmFzZU9wdGlvbnMgJiB7XG4gIC8qKiBUaGUgY29uZmlybSBzdHJhdGVneSB0byB1c2UuICovXG4gIHN0cmF0ZWd5OiBScGNDb25maXJtVHJhbnNhY3Rpb25TdHJhdGVneTtcbn07XG5cbi8qKlxuICogUmVwcmVzZW50cyBhbGwgdGhlIHBvc3NpYmxlIHN0cmF0ZWdpZXMgdG8gdXNlIHdoZW4gY29uZmlybWluZyBhIHRyYW5zYWN0aW9uLlxuICogQGNhdGVnb3J5IFJwY1xuICovXG5leHBvcnQgdHlwZSBScGNDb25maXJtVHJhbnNhY3Rpb25TdHJhdGVneSA9XG4gIHwge1xuICAgICAgdHlwZTogJ2Jsb2NraGFzaCc7XG4gICAgICBibG9ja2hhc2g6IEJsb2NraGFzaDtcbiAgICAgIGxhc3RWYWxpZEJsb2NrSGVpZ2h0OiBudW1iZXI7XG4gICAgfVxuICB8IHtcbiAgICAgIHR5cGU6ICdkdXJhYmxlTm9uY2UnO1xuICAgICAgbWluQ29udGV4dFNsb3Q6IG51bWJlcjtcbiAgICAgIG5vbmNlQWNjb3VudFB1YmtleTogUHVibGljS2V5O1xuICAgICAgbm9uY2VWYWx1ZTogc3RyaW5nO1xuICAgIH07XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgcmVzdWx0IG9mIGEgdHJhbnNhY3Rpb24gY29uZmlybWF0aW9uLlxuICogQGNhdGVnb3J5IFJwY1xuICovXG5leHBvcnQgdHlwZSBScGNDb25maXJtVHJhbnNhY3Rpb25SZXN1bHQgPSBScGNSZXN1bHRXaXRoQ29udGV4dDx7XG4gIGVycjogVHJhbnNhY3Rpb25FcnJvciB8IG51bGw7XG59PjtcblxuLyoqXG4gKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUge0BsaW5rIFJwY0ludGVyZmFjZX0gdGhhdCB0aHJvd3MgYW4gZXJyb3Igd2hlbiBjYWxsZWQuXG4gKiBAY2F0ZWdvcnkgUnBjXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVOdWxsUnBjKCk6IFJwY0ludGVyZmFjZSB7XG4gIGNvbnN0IGVycm9ySGFuZGxlciA9ICgpID0+IHtcbiAgICB0aHJvdyBuZXcgSW50ZXJmYWNlSW1wbGVtZW50YXRpb25NaXNzaW5nRXJyb3IoJ1JwY0ludGVyZmFjZScsICdycGMnKTtcbiAgfTtcbiAgcmV0dXJuIHtcbiAgICBnZXRFbmRwb2ludDogZXJyb3JIYW5kbGVyLFxuICAgIGdldENsdXN0ZXI6IGVycm9ySGFuZGxlcixcbiAgICBnZXRBY2NvdW50OiBlcnJvckhhbmRsZXIsXG4gICAgZ2V0QWNjb3VudHM6IGVycm9ySGFuZGxlcixcbiAgICBnZXRQcm9ncmFtQWNjb3VudHM6IGVycm9ySGFuZGxlcixcbiAgICBnZXRCbG9ja1RpbWU6IGVycm9ySGFuZGxlcixcbiAgICBnZXRCYWxhbmNlOiBlcnJvckhhbmRsZXIsXG4gICAgZ2V0UmVudDogZXJyb3JIYW5kbGVyLFxuICAgIGdldFNsb3Q6IGVycm9ySGFuZGxlcixcbiAgICBnZXRMYXRlc3RCbG9ja2hhc2g6IGVycm9ySGFuZGxlcixcbiAgICBnZXRUcmFuc2FjdGlvbjogZXJyb3JIYW5kbGVyLFxuICAgIGdldFNpZ25hdHVyZVN0YXR1c2VzOiBlcnJvckhhbmRsZXIsXG4gICAgYWNjb3VudEV4aXN0czogZXJyb3JIYW5kbGVyLFxuICAgIGFpcmRyb3A6IGVycm9ySGFuZGxlcixcbiAgICBjYWxsOiBlcnJvckhhbmRsZXIsXG4gICAgc2VuZFRyYW5zYWN0aW9uOiBlcnJvckhhbmRsZXIsXG4gICAgY29uZmlybVRyYW5zYWN0aW9uOiBlcnJvckhhbmRsZXIsXG4gIH07XG59XG4iLCAiaW1wb3J0IHR5cGUgeyBOdWxsYWJsZSwgT3B0aW9uIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLW9wdGlvbnMnO1xuaW1wb3J0IHR5cGUge1xuICBQdWJsaWNLZXksXG4gIFB1YmxpY0tleUlucHV0LFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktcHVibGljLWtleXMnO1xuaW1wb3J0IHR5cGUge1xuICBBcnJheVNlcmlhbGl6ZXJPcHRpb25zLFxuICBCb29sU2VyaWFsaXplck9wdGlvbnMsXG4gIEJ5dGVzU2VyaWFsaXplck9wdGlvbnMsXG4gIERhdGFFbnVtU2VyaWFsaXplck9wdGlvbnMsXG4gIERhdGFFbnVtVG9TZXJpYWxpemVyVHVwbGUsXG4gIE1hcFNlcmlhbGl6ZXJPcHRpb25zLFxuICBOdWxsYWJsZVNlcmlhbGl6ZXJPcHRpb25zLFxuICBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucyxcbiAgT3B0aW9uU2VyaWFsaXplck9wdGlvbnMsXG4gIFB1YmxpY0tleVNlcmlhbGl6ZXJPcHRpb25zLFxuICBTY2FsYXJFbnVtU2VyaWFsaXplck9wdGlvbnMsXG4gIFNlcmlhbGl6ZXIsXG4gIFNldFNlcmlhbGl6ZXJPcHRpb25zLFxuICBTaW5nbGVCeXRlTnVtYmVyU2VyaWFsaXplck9wdGlvbnMsXG4gIFN0cmluZ1NlcmlhbGl6ZXJPcHRpb25zLFxuICBTdHJ1Y3RTZXJpYWxpemVyT3B0aW9ucyxcbiAgU3RydWN0VG9TZXJpYWxpemVyVHVwbGUsXG4gIFR1cGxlU2VyaWFsaXplck9wdGlvbnMsXG4gIFVuaXRTZXJpYWxpemVyT3B0aW9ucyxcbiAgV3JhcEluU2VyaWFsaXplcixcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzJztcbmltcG9ydCB7IERhdGFFbnVtLCBTY2FsYXJFbnVtIH0gZnJvbSAnLi9FbnVtcyc7XG5pbXBvcnQgeyBJbnRlcmZhY2VJbXBsZW1lbnRhdGlvbk1pc3NpbmdFcnJvciB9IGZyb20gJy4vZXJyb3JzJztcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBpbnRlcmZhY2UgZm9yIGEgc2V0IG9mIHNlcmlhbGl6ZXJzXG4gKiB0aGF0IGNhbiBiZSB1c2VkIHRvIHNlcmlhbGl6ZS9kZXNlcmlhbGl6ZSBhbnkgU2VyZGUgdHlwZXMuXG4gKlxuICogQGNhdGVnb3J5IENvbnRleHQgYW5kIEludGVyZmFjZXNcbiAqIEBkZXByZWNhdGVkIFRoaXMgaW50ZXJmYWNlIGlzIGRlcHJlY2F0ZWQuXG4gKiBZb3UgY2FuIG5vdyBkaXJlY3RseSB1c2UgYEBtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zZXJpYWxpemVyc2AgaW5zdGVhZC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXJpYWxpemVySW50ZXJmYWNlIHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBzZXJpYWxpemVyIGZvciBhIHR1cGxlLWxpa2UgYXJyYXkuXG4gICAqXG4gICAqIEBwYXJhbSBpdGVtcyAtIFRoZSBzZXJpYWxpemVycyB0byB1c2UgZm9yIGVhY2ggaXRlbSBpbiB0aGUgdHVwbGUuXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gICAqL1xuICB0dXBsZTogPFQgZXh0ZW5kcyBhbnlbXSwgVSBleHRlbmRzIFQgPSBUPihcbiAgICBpdGVtczogV3JhcEluU2VyaWFsaXplcjxbLi4uVF0sIFsuLi5VXT4sXG4gICAgb3B0aW9ucz86IFR1cGxlU2VyaWFsaXplck9wdGlvbnNcbiAgKSA9PiBTZXJpYWxpemVyPFQsIFU+O1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgc2VyaWFsaXplciBmb3IgYW4gYXJyYXkgb2YgaXRlbXMuXG4gICAqXG4gICAqIEBwYXJhbSBpdGVtIC0gVGhlIHNlcmlhbGl6ZXIgdG8gdXNlIGZvciB0aGUgYXJyYXkncyBpdGVtcy5cbiAgICogQHBhcmFtIG9wdGlvbnMgLSBBIHNldCBvZiBvcHRpb25zIGZvciB0aGUgc2VyaWFsaXplci5cbiAgICovXG4gIGFycmF5OiA8VCwgVSBleHRlbmRzIFQgPSBUPihcbiAgICBpdGVtOiBTZXJpYWxpemVyPFQsIFU+LFxuICAgIG9wdGlvbnM/OiBBcnJheVNlcmlhbGl6ZXJPcHRpb25zXG4gICkgPT4gU2VyaWFsaXplcjxUW10sIFVbXT47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBzZXJpYWxpemVyIGZvciBhIG1hcC5cbiAgICpcbiAgICogQHBhcmFtIGtleSAtIFRoZSBzZXJpYWxpemVyIHRvIHVzZSBmb3IgdGhlIG1hcCdzIGtleXMuXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBzZXJpYWxpemVyIHRvIHVzZSBmb3IgdGhlIG1hcCdzIHZhbHVlcy5cbiAgICogQHBhcmFtIG9wdGlvbnMgLSBBIHNldCBvZiBvcHRpb25zIGZvciB0aGUgc2VyaWFsaXplci5cbiAgICovXG4gIG1hcDogPFRLLCBUViwgVUsgZXh0ZW5kcyBUSyA9IFRLLCBVViBleHRlbmRzIFRWID0gVFY+KFxuICAgIGtleTogU2VyaWFsaXplcjxUSywgVUs+LFxuICAgIHZhbHVlOiBTZXJpYWxpemVyPFRWLCBVVj4sXG4gICAgb3B0aW9ucz86IE1hcFNlcmlhbGl6ZXJPcHRpb25zXG4gICkgPT4gU2VyaWFsaXplcjxNYXA8VEssIFRWPiwgTWFwPFVLLCBVVj4+O1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgc2VyaWFsaXplciBmb3IgYSBzZXQuXG4gICAqXG4gICAqIEBwYXJhbSBpdGVtIC0gVGhlIHNlcmlhbGl6ZXIgdG8gdXNlIGZvciB0aGUgc2V0J3MgaXRlbXMuXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gICAqL1xuICBzZXQ6IDxULCBVIGV4dGVuZHMgVCA9IFQ+KFxuICAgIGl0ZW06IFNlcmlhbGl6ZXI8VCwgVT4sXG4gICAgb3B0aW9ucz86IFNldFNlcmlhbGl6ZXJPcHRpb25zXG4gICkgPT4gU2VyaWFsaXplcjxTZXQ8VD4sIFNldDxVPj47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBzZXJpYWxpemVyIGZvciBhbiBvcHRpb25hbCB2YWx1ZSB1c2luZyB0aGUge0BsaW5rIE9wdGlvbn0gdHlwZS5cbiAgICpcbiAgICogQHBhcmFtIGl0ZW0gLSBUaGUgc2VyaWFsaXplciB0byB1c2UgZm9yIHRoZSB2YWx1ZSB0aGF0IG1heSBiZSBwcmVzZW50LlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICAgKi9cbiAgb3B0aW9uOiA8VCwgVSBleHRlbmRzIFQgPSBUPihcbiAgICBpdGVtOiBTZXJpYWxpemVyPFQsIFU+LFxuICAgIG9wdGlvbnM/OiBPcHRpb25TZXJpYWxpemVyT3B0aW9uc1xuICApID0+IFNlcmlhbGl6ZXI8T3B0aW9uPFQ+IHwgTnVsbGFibGU8VD4sIE9wdGlvbjxVPj47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBzZXJpYWxpemVyIGZvciBhbiBvcHRpb25hbCB2YWx1ZSB1c2luZyBgbnVsbGAgYXMgdGhlIGBOb25lYCB2YWx1ZS5cbiAgICpcbiAgICogQHBhcmFtIGl0ZW0gLSBUaGUgc2VyaWFsaXplciB0byB1c2UgZm9yIHRoZSB2YWx1ZSB0aGF0IG1heSBiZSBwcmVzZW50LlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICAgKi9cbiAgbnVsbGFibGU6IDxULCBVIGV4dGVuZHMgVCA9IFQ+KFxuICAgIGl0ZW06IFNlcmlhbGl6ZXI8VCwgVT4sXG4gICAgb3B0aW9ucz86IE51bGxhYmxlU2VyaWFsaXplck9wdGlvbnNcbiAgKSA9PiBTZXJpYWxpemVyPE51bGxhYmxlPFQ+LCBOdWxsYWJsZTxVPj47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBzZXJpYWxpemVyIGZvciBhIGN1c3RvbSBvYmplY3QuXG4gICAqXG4gICAqIEBwYXJhbSBmaWVsZHMgLSBUaGUgbmFtZSBhbmQgc2VyaWFsaXplciBvZiBlYWNoIGZpZWxkLlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICAgKi9cbiAgc3RydWN0OiA8VCBleHRlbmRzIG9iamVjdCwgVSBleHRlbmRzIFQgPSBUPihcbiAgICBmaWVsZHM6IFN0cnVjdFRvU2VyaWFsaXplclR1cGxlPFQsIFU+LFxuICAgIG9wdGlvbnM/OiBTdHJ1Y3RTZXJpYWxpemVyT3B0aW9uc1xuICApID0+IFNlcmlhbGl6ZXI8VCwgVT47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBzY2FsYXIgZW51bSBzZXJpYWxpemVyLlxuICAgKlxuICAgKiBAcGFyYW0gY29uc3RydWN0b3IgLSBUaGUgY29uc3RydWN0b3Igb2YgdGhlIHNjYWxhciBlbnVtLlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICAgKi9cbiAgZW51bTxUPihcbiAgICBjb25zdHJ1Y3RvcjogU2NhbGFyRW51bTxUPiAmIHt9LFxuICAgIG9wdGlvbnM/OiBTY2FsYXJFbnVtU2VyaWFsaXplck9wdGlvbnNcbiAgKTogU2VyaWFsaXplcjxUPjtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIGRhdGEgZW51bSBzZXJpYWxpemVyLlxuICAgKlxuICAgKiBAcGFyYW0gdmFyaWFudHMgLSBUaGUgdmFyaWFudCBzZXJpYWxpemVycyBvZiB0aGUgZGF0YSBlbnVtLlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICAgKi9cbiAgZGF0YUVudW08VCBleHRlbmRzIERhdGFFbnVtLCBVIGV4dGVuZHMgVCA9IFQ+KFxuICAgIHZhcmlhbnRzOiBEYXRhRW51bVRvU2VyaWFsaXplclR1cGxlPFQsIFU+LFxuICAgIG9wdGlvbnM/OiBEYXRhRW51bVNlcmlhbGl6ZXJPcHRpb25zXG4gICk6IFNlcmlhbGl6ZXI8VCwgVT47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBzdHJpbmcgc2VyaWFsaXplci5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBBIHNldCBvZiBvcHRpb25zIGZvciB0aGUgc2VyaWFsaXplci5cbiAgICovXG4gIHN0cmluZzogKG9wdGlvbnM/OiBTdHJpbmdTZXJpYWxpemVyT3B0aW9ucykgPT4gU2VyaWFsaXplcjxzdHJpbmc+O1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgYm9vbGVhbiBzZXJpYWxpemVyLlxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICAgKi9cbiAgYm9vbDogKG9wdGlvbnM/OiBCb29sU2VyaWFsaXplck9wdGlvbnMpID0+IFNlcmlhbGl6ZXI8Ym9vbGVhbj47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSB2b2lkIHNlcmlhbGl6ZXIuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gICAqL1xuICB1bml0OiAob3B0aW9ucz86IFVuaXRTZXJpYWxpemVyT3B0aW9ucykgPT4gU2VyaWFsaXplcjx2b2lkPjtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIHNlcmlhbGl6ZXIgZm9yIDEtYnl0ZSB1bnNpZ25lZCBpbnRlZ2Vycy5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBBIHNldCBvZiBvcHRpb25zIGZvciB0aGUgc2VyaWFsaXplci5cbiAgICovXG4gIHU4OiAob3B0aW9ucz86IFNpbmdsZUJ5dGVOdW1iZXJTZXJpYWxpemVyT3B0aW9ucykgPT4gU2VyaWFsaXplcjxudW1iZXI+O1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgc2VyaWFsaXplciBmb3IgMi1ieXRlcyB1bnNpZ25lZCBpbnRlZ2Vycy5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBBIHNldCBvZiBvcHRpb25zIGZvciB0aGUgc2VyaWFsaXplci5cbiAgICovXG4gIHUxNjogKG9wdGlvbnM/OiBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucykgPT4gU2VyaWFsaXplcjxudW1iZXI+O1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgc2VyaWFsaXplciBmb3IgNC1ieXRlcyB1bnNpZ25lZCBpbnRlZ2Vycy5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBBIHNldCBvZiBvcHRpb25zIGZvciB0aGUgc2VyaWFsaXplci5cbiAgICovXG4gIHUzMjogKG9wdGlvbnM/OiBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucykgPT4gU2VyaWFsaXplcjxudW1iZXI+O1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgc2VyaWFsaXplciBmb3IgOC1ieXRlcyB1bnNpZ25lZCBpbnRlZ2Vycy5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBBIHNldCBvZiBvcHRpb25zIGZvciB0aGUgc2VyaWFsaXplci5cbiAgICovXG4gIHU2NDogKFxuICAgIG9wdGlvbnM/OiBOdW1iZXJTZXJpYWxpemVyT3B0aW9uc1xuICApID0+IFNlcmlhbGl6ZXI8bnVtYmVyIHwgYmlnaW50LCBiaWdpbnQ+O1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgc2VyaWFsaXplciBmb3IgMTYtYnl0ZXMgdW5zaWduZWQgaW50ZWdlcnMuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gICAqL1xuICB1MTI4OiAoXG4gICAgb3B0aW9ucz86IE51bWJlclNlcmlhbGl6ZXJPcHRpb25zXG4gICkgPT4gU2VyaWFsaXplcjxudW1iZXIgfCBiaWdpbnQsIGJpZ2ludD47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBzZXJpYWxpemVyIGZvciAxLWJ5dGUgc2lnbmVkIGludGVnZXJzLlxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICAgKi9cbiAgaTg6IChvcHRpb25zPzogU2luZ2xlQnl0ZU51bWJlclNlcmlhbGl6ZXJPcHRpb25zKSA9PiBTZXJpYWxpemVyPG51bWJlcj47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBzZXJpYWxpemVyIGZvciAyLWJ5dGVzIHNpZ25lZCBpbnRlZ2Vycy5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBBIHNldCBvZiBvcHRpb25zIGZvciB0aGUgc2VyaWFsaXplci5cbiAgICovXG4gIGkxNjogKG9wdGlvbnM/OiBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucykgPT4gU2VyaWFsaXplcjxudW1iZXI+O1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgc2VyaWFsaXplciBmb3IgNC1ieXRlcyBzaWduZWQgaW50ZWdlcnMuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gICAqL1xuICBpMzI6IChvcHRpb25zPzogTnVtYmVyU2VyaWFsaXplck9wdGlvbnMpID0+IFNlcmlhbGl6ZXI8bnVtYmVyPjtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIHNlcmlhbGl6ZXIgZm9yIDgtYnl0ZXMgc2lnbmVkIGludGVnZXJzLlxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICAgKi9cbiAgaTY0OiAoXG4gICAgb3B0aW9ucz86IE51bWJlclNlcmlhbGl6ZXJPcHRpb25zXG4gICkgPT4gU2VyaWFsaXplcjxudW1iZXIgfCBiaWdpbnQsIGJpZ2ludD47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBzZXJpYWxpemVyIGZvciAxNi1ieXRlcyBzaWduZWQgaW50ZWdlcnMuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gICAqL1xuICBpMTI4OiAoXG4gICAgb3B0aW9ucz86IE51bWJlclNlcmlhbGl6ZXJPcHRpb25zXG4gICkgPT4gU2VyaWFsaXplcjxudW1iZXIgfCBiaWdpbnQsIGJpZ2ludD47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBzZXJpYWxpemVyIGZvciA0LWJ5dGVzIGZsb2F0aW5nIHBvaW50IG51bWJlcnMuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gQSBzZXQgb2Ygb3B0aW9ucyBmb3IgdGhlIHNlcmlhbGl6ZXIuXG4gICAqL1xuICBmMzI6IChvcHRpb25zPzogTnVtYmVyU2VyaWFsaXplck9wdGlvbnMpID0+IFNlcmlhbGl6ZXI8bnVtYmVyPjtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIHNlcmlhbGl6ZXIgZm9yIDgtYnl0ZXMgZmxvYXRpbmcgcG9pbnQgbnVtYmVycy5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBBIHNldCBvZiBvcHRpb25zIGZvciB0aGUgc2VyaWFsaXplci5cbiAgICovXG4gIGY2NDogKG9wdGlvbnM/OiBOdW1iZXJTZXJpYWxpemVyT3B0aW9ucykgPT4gU2VyaWFsaXplcjxudW1iZXI+O1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgc2VyaWFsaXplciB0aGF0IHBhc3NlcyB0aGUgYnVmZmVyIGFzLWlzLlxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICAgKi9cbiAgYnl0ZXM6IChvcHRpb25zPzogQnl0ZXNTZXJpYWxpemVyT3B0aW9ucykgPT4gU2VyaWFsaXplcjxVaW50OEFycmF5PjtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIHNlcmlhbGl6ZXIgZm9yIDMyLWJ5dGVzIHB1YmxpYyBrZXlzLlxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIEEgc2V0IG9mIG9wdGlvbnMgZm9yIHRoZSBzZXJpYWxpemVyLlxuICAgKi9cbiAgcHVibGljS2V5OiAoXG4gICAgb3B0aW9ucz86IFB1YmxpY0tleVNlcmlhbGl6ZXJPcHRpb25zXG4gICkgPT4gU2VyaWFsaXplcjxQdWJsaWNLZXkgfCBQdWJsaWNLZXlJbnB1dCwgUHVibGljS2V5Pjtcbn1cblxuLyoqXG4gKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUge0BsaW5rIFNlcmlhbGl6ZXJJbnRlcmZhY2V9IHRoYXQgdGhyb3dzIGFuIGVycm9yIHdoZW4gY2FsbGVkLlxuICogQGNhdGVnb3J5IFNlcmlhbGl6ZXJzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVOdWxsU2VyaWFsaXplcigpOiBTZXJpYWxpemVySW50ZXJmYWNlIHtcbiAgY29uc3QgZXJyb3JIYW5kbGVyID0gKCkgPT4ge1xuICAgIHRocm93IG5ldyBJbnRlcmZhY2VJbXBsZW1lbnRhdGlvbk1pc3NpbmdFcnJvcihcbiAgICAgICdTZXJpYWxpemVySW50ZXJmYWNlJyxcbiAgICAgICdzZXJpYWxpemVyJ1xuICAgICk7XG4gIH07XG4gIHJldHVybiB7XG4gICAgdHVwbGU6IGVycm9ySGFuZGxlcixcbiAgICBhcnJheTogZXJyb3JIYW5kbGVyLFxuICAgIG1hcDogZXJyb3JIYW5kbGVyLFxuICAgIHNldDogZXJyb3JIYW5kbGVyLFxuICAgIG9wdGlvbjogZXJyb3JIYW5kbGVyLFxuICAgIG51bGxhYmxlOiBlcnJvckhhbmRsZXIsXG4gICAgc3RydWN0OiBlcnJvckhhbmRsZXIsXG4gICAgZW51bTogZXJyb3JIYW5kbGVyLFxuICAgIGRhdGFFbnVtOiBlcnJvckhhbmRsZXIsXG4gICAgc3RyaW5nOiBlcnJvckhhbmRsZXIsXG4gICAgYm9vbDogZXJyb3JIYW5kbGVyLFxuICAgIHVuaXQ6IGVycm9ySGFuZGxlcixcbiAgICB1ODogZXJyb3JIYW5kbGVyLFxuICAgIHUxNjogZXJyb3JIYW5kbGVyLFxuICAgIHUzMjogZXJyb3JIYW5kbGVyLFxuICAgIHU2NDogZXJyb3JIYW5kbGVyLFxuICAgIHUxMjg6IGVycm9ySGFuZGxlcixcbiAgICBpODogZXJyb3JIYW5kbGVyLFxuICAgIGkxNjogZXJyb3JIYW5kbGVyLFxuICAgIGkzMjogZXJyb3JIYW5kbGVyLFxuICAgIGk2NDogZXJyb3JIYW5kbGVyLFxuICAgIGkxMjg6IGVycm9ySGFuZGxlcixcbiAgICBmMzI6IGVycm9ySGFuZGxlcixcbiAgICBmNjQ6IGVycm9ySGFuZGxlcixcbiAgICBieXRlczogZXJyb3JIYW5kbGVyLFxuICAgIHB1YmxpY0tleTogZXJyb3JIYW5kbGVyLFxuICB9O1xufVxuIiwgIi8qKlxuICogQ2h1bmtzIGFuIGFycmF5IGludG8gc21hbGxlciBhcnJheXMgb2YgKGF0IG1vc3QpIHRoZSBzcGVjaWZpZWQgc2l6ZS5cbiAqIEBjYXRlZ29yeSBVdGlsc1xuICovXG5leHBvcnQgY29uc3QgY2h1bmsgPSA8VD4oYXJyYXk6IFRbXSwgY2h1bmtTaXplOiBudW1iZXIpOiBUW11bXSA9PlxuICBhcnJheS5yZWR1Y2UoKGNodW5rcywgaXRlbSwgaW5kZXgpID0+IHtcbiAgICBjb25zdCBjaHVua0luZGV4ID0gTWF0aC5mbG9vcihpbmRleCAvIGNodW5rU2l6ZSk7XG5cbiAgICBpZiAoIWNodW5rc1tjaHVua0luZGV4XSkge1xuICAgICAgY2h1bmtzW2NodW5rSW5kZXhdID0gW107XG4gICAgfVxuXG4gICAgY2h1bmtzW2NodW5rSW5kZXhdLnB1c2goaXRlbSk7XG5cbiAgICByZXR1cm4gY2h1bmtzO1xuICB9LCBbXSBhcyBUW11bXSk7XG5cbi8qKlxuICogWmlwcyB0d28gYXJyYXlzIHRvZ2V0aGVyLCB1c2luZyB0aGUgcHJvdmlkZWQgZnVuY3Rpb24gdG8gbWFwIHRoZSB2YWx1ZXMuXG4gKiBAY2F0ZWdvcnkgVXRpbHNcbiAqL1xuZXhwb3J0IGNvbnN0IHppcE1hcCA9IDxULCBVLCBWPihcbiAgbGVmdDogVFtdLFxuICByaWdodDogVVtdLFxuICBmbjogKHQ6IFQsIHU6IFUgfCBudWxsLCBpOiBudW1iZXIpID0+IFZcbik6IFZbXSA9PiBsZWZ0Lm1hcCgodDogVCwgaW5kZXgpID0+IGZuKHQsIHJpZ2h0Py5baW5kZXhdID8/IG51bGwsIGluZGV4KSk7XG5cbi8qKlxuICogRGVkdXBsaWNhdGVzIGFuIGFycmF5IGJ5IHRoZSBwcm92aWRlZCBmdW5jdGlvbi5cbiAqIEBjYXRlZ29yeSBVdGlsc1xuICovXG5leHBvcnQgY29uc3QgdW5pcXVlQnkgPSA8VD4oYXJyYXk6IFRbXSwgZm46IChhOiBULCBiOiBUKSA9PiBib29sZWFuKTogVFtdID0+XG4gIGFycmF5LnJlZHVjZSgoYWNjLCB2KSA9PiB7XG4gICAgaWYgKCFhY2Muc29tZSgoeCkgPT4gZm4odiwgeCkpKSBhY2MucHVzaCh2KTtcbiAgICByZXR1cm4gYWNjO1xuICB9LCBbXSBhcyBUW10pO1xuIiwgImltcG9ydCB7XG4gIFB1YmxpY0tleSxcbiAgUHVibGljS2V5SW5wdXQsXG59IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1wdWJsaWMta2V5cyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vVHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgdW5pcXVlQnkgfSBmcm9tICcuL3V0aWxzJztcblxuLyoqXG4gKiBEZWZpbmVzIGEgcHVibGljIGtleSB0aGF0IGNhbiBzaWduIHRyYW5zYWN0aW9ucyBhbmQgbWVzc2FnZXMuXG4gKiBAY2F0ZWdvcnkgQ29udGV4dCBhbmQgSW50ZXJmYWNlc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFNpZ25lciB7XG4gIC8qKiBUaGUgcHVibGljIGtleSBvZiB0aGUgU2lnbmVyLiAqL1xuICByZWFkb25seSBwdWJsaWNLZXk6IFB1YmxpY0tleTtcbiAgLyoqIFNpZ25zIHRoZSBnaXZlbiBtZXNzYWdlLiAqL1xuICByZWFkb25seSBzaWduTWVzc2FnZTogKG1lc3NhZ2U6IFVpbnQ4QXJyYXkpID0+IFByb21pc2U8VWludDhBcnJheT47XG4gIC8qKiBTaWducyB0aGUgZ2l2ZW4gdHJhbnNhY3Rpb24uICovXG4gIHJlYWRvbmx5IHNpZ25UcmFuc2FjdGlvbjogKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbikgPT4gUHJvbWlzZTxUcmFuc2FjdGlvbj47XG4gIC8qKiBTaWducyBhbGwgdGhlIGdpdmVuIHRyYW5zYWN0aW9ucyBhdCBvbmNlLiAqL1xuICByZWFkb25seSBzaWduQWxsVHJhbnNhY3Rpb25zOiAoXG4gICAgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbltdXG4gICkgPT4gUHJvbWlzZTxUcmFuc2FjdGlvbltdPjtcbn1cblxuLyoqXG4gKiBTaWducyBhIHRyYW5zYWN0aW9uIHVzaW5nIHRoZSBwcm92aWRlZCBzaWduZXJzLlxuICogQGNhdGVnb3J5IFNpZ25lcnMgYW5kIFB1YmxpY0tleXNcbiAqL1xuZXhwb3J0IGNvbnN0IHNpZ25UcmFuc2FjdGlvbiA9IGFzeW5jIChcbiAgdHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uLFxuICBzaWduZXJzOiBTaWduZXJbXVxuKTogUHJvbWlzZTxUcmFuc2FjdGlvbj4gPT5cbiAgc2lnbmVycy5yZWR1Y2UoYXN5bmMgKHByb21pc2UsIHNpZ25lcikgPT4ge1xuICAgIGNvbnN0IHVuc2lnbmVkID0gYXdhaXQgcHJvbWlzZTtcbiAgICByZXR1cm4gc2lnbmVyLnNpZ25UcmFuc2FjdGlvbih1bnNpZ25lZCk7XG4gIH0sIFByb21pc2UucmVzb2x2ZSh0cmFuc2FjdGlvbikpO1xuXG4vKipcbiAqIFNpZ25zIG11bHRpcGxlIHRyYW5zYWN0aW9ucyB1c2luZyB0aGUgcHJvdmlkZWQgc2lnbmVyc1xuICogc3VjaCB0aGF0IHNpZ25lcnMgdGhhdCBuZWVkIHRvIHNpZ24gbXVsdGlwbGUgdHJhbnNhY3Rpb25zXG4gKiBzaWduIHRoZW0gYWxsIGF0IG9uY2UgdXNpbmcgdGhlIGBzaWduQWxsVHJhbnNhY3Rpb25zYCBtZXRob2QuXG4gKlxuICogQGNhdGVnb3J5IFNpZ25lcnMgYW5kIFB1YmxpY0tleXNcbiAqL1xuZXhwb3J0IGNvbnN0IHNpZ25BbGxUcmFuc2FjdGlvbnMgPSBhc3luYyAoXG4gIHRyYW5zYWN0aW9uc1dpdGhTaWduZXJzOiB7XG4gICAgdHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uO1xuICAgIHNpZ25lcnM6IFNpZ25lcltdO1xuICB9W11cbik6IFByb21pc2U8VHJhbnNhY3Rpb25bXT4gPT4ge1xuICBjb25zdCB0cmFuc2FjdGlvbnMgPSB0cmFuc2FjdGlvbnNXaXRoU2lnbmVycy5tYXAoKGl0ZW0pID0+IGl0ZW0udHJhbnNhY3Rpb24pO1xuICBjb25zdCBzaWduZXJzV2l0aFRyYW5zYWN0aW9ucyA9IHRyYW5zYWN0aW9uc1dpdGhTaWduZXJzLnJlZHVjZShcbiAgICAoYWxsLCB7IHNpZ25lcnMgfSwgaW5kZXgpID0+IHtcbiAgICAgIHNpZ25lcnMuZm9yRWFjaCgoc2lnbmVyKSA9PiB7XG4gICAgICAgIGNvbnN0IGl0ZW0gPSBhbGwuZmluZChcbiAgICAgICAgICAoaXRlbSkgPT4gaXRlbS5zaWduZXIucHVibGljS2V5ID09PSBzaWduZXIucHVibGljS2V5XG4gICAgICAgICk7XG4gICAgICAgIGlmIChpdGVtKSB7XG4gICAgICAgICAgaXRlbS5pbmRpY2VzLnB1c2goaW5kZXgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGFsbC5wdXNoKHsgc2lnbmVyLCBpbmRpY2VzOiBbaW5kZXhdIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIHJldHVybiBhbGw7XG4gICAgfSxcbiAgICBbXSBhcyB7IHNpZ25lcjogU2lnbmVyOyBpbmRpY2VzOiBudW1iZXJbXSB9W11cbiAgKTtcblxuICByZXR1cm4gc2lnbmVyc1dpdGhUcmFuc2FjdGlvbnMucmVkdWNlKFxuICAgIGFzeW5jIChwcm9taXNlLCB7IHNpZ25lciwgaW5kaWNlcyB9KSA9PiB7XG4gICAgICBjb25zdCB0cmFuc2FjdGlvbnMgPSBhd2FpdCBwcm9taXNlO1xuICAgICAgaWYgKGluZGljZXMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgIGNvbnN0IHVuc2lnbmVkID0gdHJhbnNhY3Rpb25zW2luZGljZXNbMF1dO1xuICAgICAgICB0cmFuc2FjdGlvbnNbaW5kaWNlc1swXV0gPSBhd2FpdCBzaWduZXIuc2lnblRyYW5zYWN0aW9uKHVuc2lnbmVkKTtcbiAgICAgICAgcmV0dXJuIHRyYW5zYWN0aW9ucztcbiAgICAgIH1cbiAgICAgIGNvbnN0IHVuc2lnbmVkID0gaW5kaWNlcy5tYXAoKGluZGV4KSA9PiB0cmFuc2FjdGlvbnNbaW5kZXhdKTtcbiAgICAgIGNvbnN0IHNpZ25lZCA9IGF3YWl0IHNpZ25lci5zaWduQWxsVHJhbnNhY3Rpb25zKHVuc2lnbmVkKTtcbiAgICAgIGluZGljZXMuZm9yRWFjaCgoaW5kZXgsIHBvc2l0aW9uKSA9PiB7XG4gICAgICAgIHRyYW5zYWN0aW9uc1tpbmRleF0gPSBzaWduZWRbcG9zaXRpb25dO1xuICAgICAgfSk7XG4gICAgICByZXR1cm4gdHJhbnNhY3Rpb25zO1xuICAgIH0sXG4gICAgUHJvbWlzZS5yZXNvbHZlKHRyYW5zYWN0aW9ucylcbiAgKTtcbn07XG5cbi8qKlxuICogV2hldGhlciB0aGUgcHJvdmlkZWQgdmFsdWUgaXMgYSBgU2lnbmVyYC5cbiAqIEBjYXRlZ29yeSBTaWduZXJzIGFuZCBQdWJsaWNLZXlzXG4gKi9cbmV4cG9ydCBjb25zdCBpc1NpZ25lciA9ICh2YWx1ZTogUHVibGljS2V5SW5wdXQgfCBTaWduZXIpOiB2YWx1ZSBpcyBTaWduZXIgPT5cbiAgdHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyAmJiAncHVibGljS2V5JyBpbiB2YWx1ZSAmJiAnc2lnbk1lc3NhZ2UnIGluIHZhbHVlO1xuXG4vKipcbiAqIERlZHVwbGljYXRlcyB0aGUgcHJvdmlkZWQgc2lnbmVycyBieSBwdWJsaWMga2V5LlxuICogQGNhdGVnb3J5IFNpZ25lcnMgYW5kIFB1YmxpY0tleXNcbiAqL1xuZXhwb3J0IGNvbnN0IHVuaXF1ZVNpZ25lcnMgPSAoc2lnbmVyczogU2lnbmVyW10pOiBTaWduZXJbXSA9PlxuICB1bmlxdWVCeShzaWduZXJzLCAoYSwgYikgPT4gYS5wdWJsaWNLZXkgPT09IGIucHVibGljS2V5KTtcblxuLyoqXG4gKiBDcmVhdGVzIGEgYFNpZ25lcmAgdGhhdCwgd2hlbiByZXF1aXJlZCB0byBzaWduLCBkb2VzIG5vdGhpbmcuXG4gKiBUaGlzIGNhbiBiZSB1c2VmdWwgd2hlbiBsaWJyYXJpZXMgcmVxdWlyZSBhIGBTaWduZXJgIGJ1dFxuICogd2UgZG9uJ3QgaGF2ZSBvbmUgaW4gdGhlIGN1cnJlbnQgZW52aXJvbm1lbnQuIEZvciBleGFtcGxlLFxuICogaWYgdGhlIHRyYW5zYWN0aW9uIHdpbGwgdGhlbiBiZSBzaWduZWQgaW4gYSBiYWNrZW5kIHNlcnZlci5cbiAqXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICovXG5leHBvcnQgY29uc3QgY3JlYXRlTm9vcFNpZ25lciA9IChwdWJsaWNLZXk6IFB1YmxpY0tleSk6IFNpZ25lciA9PiAoe1xuICBwdWJsaWNLZXksXG4gIGFzeW5jIHNpZ25NZXNzYWdlKG1lc3NhZ2U6IFVpbnQ4QXJyYXkpOiBQcm9taXNlPFVpbnQ4QXJyYXk+IHtcbiAgICByZXR1cm4gbWVzc2FnZTtcbiAgfSxcbiAgYXN5bmMgc2lnblRyYW5zYWN0aW9uKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IFByb21pc2U8VHJhbnNhY3Rpb24+IHtcbiAgICByZXR1cm4gdHJhbnNhY3Rpb247XG4gIH0sXG4gIGFzeW5jIHNpZ25BbGxUcmFuc2FjdGlvbnMoXG4gICAgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbltdXG4gICk6IFByb21pc2U8VHJhbnNhY3Rpb25bXT4ge1xuICAgIHJldHVybiB0cmFuc2FjdGlvbnM7XG4gIH0sXG59KTtcblxuLyoqXG4gKiBDcmVhdGVzIGEgYFNpZ25lcmAgdGhhdCwgd2hlbiByZXF1aXJlZCB0byBzaWduLCB0aHJvd3MgYW4gZXJyb3IuXG4gKiBAY2F0ZWdvcnkgU2lnbmVycyBhbmQgUHVibGljS2V5c1xuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlTnVsbFNpZ25lcigpOiBTaWduZXIge1xuICBjb25zdCBlcnJvciA9IG5ldyBFcnJvcihcbiAgICAnVHJ5aW5nIHRvIHVzZSBhIE51bGxTaWduZXIuICcgK1xuICAgICAgJ0RpZCB5b3UgZm9yZ2V0IHRvIHNldCBhIFNpZ25lciBvbiB5b3VyIFVtaSBpbnN0YW5jZT8gJyArXG4gICAgICAnU2VlIHRoZSBgc2lnbmVySWRlbnRpdHlgIG1ldGhvZCBmb3IgbW9yZSBpbmZvcm1hdGlvbi4nXG4gICk7XG4gIGNvbnN0IGVycm9ySGFuZGxlciA9ICgpID0+IHtcbiAgICB0aHJvdyBlcnJvcjtcbiAgfTtcbiAgcmV0dXJuIHtcbiAgICBnZXQgcHVibGljS2V5KCk6IFB1YmxpY0tleSB7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9LFxuICAgIHNpZ25NZXNzYWdlOiBlcnJvckhhbmRsZXIsXG4gICAgc2lnblRyYW5zYWN0aW9uOiBlcnJvckhhbmRsZXIsXG4gICAgc2lnbkFsbFRyYW5zYWN0aW9uczogZXJyb3JIYW5kbGVyLFxuICB9O1xufVxuIiwgImltcG9ydCB7IEludGVyZmFjZUltcGxlbWVudGF0aW9uTWlzc2luZ0Vycm9yIH0gZnJvbSAnLi9lcnJvcnMnO1xuaW1wb3J0IHR5cGUge1xuICBTZXJpYWxpemVkVHJhbnNhY3Rpb24sXG4gIFNlcmlhbGl6ZWRUcmFuc2FjdGlvbk1lc3NhZ2UsXG4gIFRyYW5zYWN0aW9uLFxuICBUcmFuc2FjdGlvbklucHV0LFxuICBUcmFuc2FjdGlvbk1lc3NhZ2UsXG59IGZyb20gJy4vVHJhbnNhY3Rpb24nO1xuXG4vKipcbiAqIERlZmluZXMgdGhlIGludGVyZmFjZSBmb3IgYSB0cmFuc2FjdGlvbiBmYWN0b3J5LlxuICogSXQgYWxsb3dzIHVzIHRvIGNyZWF0ZSwgc2VyaWFsaXplIGFuZCBkZXNlcmlhbGl6ZSB0cmFuc2FjdGlvbnMgYW5kIHRoZWlyIG1lc3NhZ2VzLlxuICpcbiAqIEBjYXRlZ29yeSBDb250ZXh0IGFuZCBJbnRlcmZhY2VzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb25GYWN0b3J5SW50ZXJmYWNlIHtcbiAgLyoqIENyZWF0ZXMgYSBuZXcgdHJhbnNhY3Rpb24gZnJvbSBhIGdpdmVuIGlucHV0LiAqL1xuICBjcmVhdGUoaW5wdXQ6IFRyYW5zYWN0aW9uSW5wdXQpOiBUcmFuc2FjdGlvbjtcbiAgLyoqIFNlcmlhbGl6ZXMgYSB0cmFuc2FjdGlvbi4gKi9cbiAgc2VyaWFsaXplKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IFNlcmlhbGl6ZWRUcmFuc2FjdGlvbjtcbiAgLyoqIERlc2VyaWFsaXplcyBhIHRyYW5zYWN0aW9uLiAqL1xuICBkZXNlcmlhbGl6ZShzZXJpYWxpemVkVHJhbnNhY3Rpb246IFNlcmlhbGl6ZWRUcmFuc2FjdGlvbik6IFRyYW5zYWN0aW9uO1xuICAvKiogU2VyaWFsaXplcyBhIHRyYW5zYWN0aW9uIG1lc3NhZ2UuICovXG4gIHNlcmlhbGl6ZU1lc3NhZ2UobWVzc2FnZTogVHJhbnNhY3Rpb25NZXNzYWdlKTogU2VyaWFsaXplZFRyYW5zYWN0aW9uTWVzc2FnZTtcbiAgLyoqIERlc2VyaWFsaXplcyBhIHRyYW5zYWN0aW9uIG1lc3NhZ2UuICovXG4gIGRlc2VyaWFsaXplTWVzc2FnZShcbiAgICBzZXJpYWxpemVkTWVzc2FnZTogU2VyaWFsaXplZFRyYW5zYWN0aW9uTWVzc2FnZVxuICApOiBUcmFuc2FjdGlvbk1lc3NhZ2U7XG59XG5cbi8qKlxuICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIHtAbGluayBUcmFuc2FjdGlvbkZhY3RvcnlJbnRlcmZhY2V9IHRoYXQgdGhyb3dzIGFuIGVycm9yIHdoZW4gY2FsbGVkLlxuICogQGNhdGVnb3J5IFRyYW5zYWN0aW9uc1xuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlTnVsbFRyYW5zYWN0aW9uRmFjdG9yeSgpOiBUcmFuc2FjdGlvbkZhY3RvcnlJbnRlcmZhY2Uge1xuICBjb25zdCBlcnJvckhhbmRsZXIgPSAoKSA9PiB7XG4gICAgdGhyb3cgbmV3IEludGVyZmFjZUltcGxlbWVudGF0aW9uTWlzc2luZ0Vycm9yKFxuICAgICAgJ1RyYW5zYWN0aW9uRmFjdG9yeUludGVyZmFjZScsXG4gICAgICAndHJhbnNhY3Rpb25zJ1xuICAgICk7XG4gIH07XG4gIHJldHVybiB7XG4gICAgY3JlYXRlOiBlcnJvckhhbmRsZXIsXG4gICAgc2VyaWFsaXplOiBlcnJvckhhbmRsZXIsXG4gICAgZGVzZXJpYWxpemU6IGVycm9ySGFuZGxlcixcbiAgICBzZXJpYWxpemVNZXNzYWdlOiBlcnJvckhhbmRsZXIsXG4gICAgZGVzZXJpYWxpemVNZXNzYWdlOiBlcnJvckhhbmRsZXIsXG4gIH07XG59XG4iLCAiaW1wb3J0IHR5cGUgeyBBbW91bnQgfSBmcm9tICcuL0Ftb3VudCc7XG5pbXBvcnQgeyBJbnRlcmZhY2VJbXBsZW1lbnRhdGlvbk1pc3NpbmdFcnJvciB9IGZyb20gJy4vZXJyb3JzJztcbmltcG9ydCB0eXBlIHsgR2VuZXJpY0Fib3J0U2lnbmFsIH0gZnJvbSAnLi9HZW5lcmljQWJvcnRTaWduYWwnO1xuaW1wb3J0IHR5cGUgeyBHZW5lcmljRmlsZSB9IGZyb20gJy4vR2VuZXJpY0ZpbGUnO1xuXG4vKipcbiAqIERlZmluZXMgdGhlIGludGVyZmFjZSBmb3IgYW4gdXBsb2FkZXIuXG4gKiBJdCBhbGxvd3MgdXMgdG8gdXBsb2FkIGZpbGVzIGFuZCBnZXQgdGhlaXIgVVJJcy5cbiAqXG4gKiBAY2F0ZWdvcnkgQ29udGV4dCBhbmQgSW50ZXJmYWNlc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFVwbG9hZGVySW50ZXJmYWNlIHtcbiAgLyoqIFVwbG9hZHMgbXVsdGlwbGUgZmlsZXMgYW5kIHJldHVybnMgdGhlaXIgVVJJcy4gKi9cbiAgdXBsb2FkOiAoXG4gICAgZmlsZXM6IEdlbmVyaWNGaWxlW10sXG4gICAgb3B0aW9ucz86IFVwbG9hZGVyVXBsb2FkT3B0aW9uc1xuICApID0+IFByb21pc2U8c3RyaW5nW10+O1xuXG4gIC8qKiBVcGxvYWRzIGEgSlNPTiBvYmplY3QgYW5kIHJldHVybnMgaXRzIFVSSS4gKi9cbiAgdXBsb2FkSnNvbjogPFQ+KGpzb246IFQsIG9wdGlvbnM/OiBVcGxvYWRlclVwbG9hZE9wdGlvbnMpID0+IFByb21pc2U8c3RyaW5nPjtcblxuICAvKiogR2V0cyB0aGUgcHJpY2UgdG8gdXBsb2FkIGEgbGlzdCBvZiBmaWxlcy4gKi9cbiAgZ2V0VXBsb2FkUHJpY2U6IChcbiAgICBmaWxlczogR2VuZXJpY0ZpbGVbXSxcbiAgICBvcHRpb25zPzogVXBsb2FkZXJHZXRVcGxvYWRQcmljZU9wdGlvbnNcbiAgKSA9PiBQcm9taXNlPEFtb3VudD47XG59XG5cbi8qKlxuICogVGhlIG9wdGlvbnMgdGhhdCBjYW4gYmUgcGFzc2VkIHdoZW4gZmV0Y2hpbmcgdGhlIHVwbG9hZCBwcmljZS5cbiAqIEBjYXRlZ29yeSBTdG9yYWdlXG4gKi9cbmV4cG9ydCB0eXBlIFVwbG9hZGVyR2V0VXBsb2FkUHJpY2VPcHRpb25zID0ge1xuICBzaWduYWw/OiBHZW5lcmljQWJvcnRTaWduYWw7XG59O1xuXG4vKipcbiAqIFRoZSBvcHRpb25zIHRoYXQgY2FuIGJlIHBhc3NlZCB3aGVuIHVwbG9hZGluZyBmaWxlcy5cbiAqIEBjYXRlZ29yeSBTdG9yYWdlXG4gKi9cbmV4cG9ydCB0eXBlIFVwbG9hZGVyVXBsb2FkT3B0aW9ucyA9IHtcbiAgb25Qcm9ncmVzcz86IChwZXJjZW50OiBudW1iZXIsIC4uLmFyZ3M6IGFueSkgPT4gdm9pZDtcbiAgc2lnbmFsPzogR2VuZXJpY0Fib3J0U2lnbmFsO1xufTtcblxuLyoqXG4gKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUge0BsaW5rIFVwbG9hZGVySW50ZXJmYWNlfSB0aGF0IHRocm93cyBhbiBlcnJvciB3aGVuIGNhbGxlZC5cbiAqIEBjYXRlZ29yeSBTdG9yYWdlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVOdWxsVXBsb2FkZXIoKTogVXBsb2FkZXJJbnRlcmZhY2Uge1xuICBjb25zdCBlcnJvckhhbmRsZXIgPSAoKSA9PiB7XG4gICAgdGhyb3cgbmV3IEludGVyZmFjZUltcGxlbWVudGF0aW9uTWlzc2luZ0Vycm9yKFxuICAgICAgJ1VwbG9hZGVySW50ZXJmYWNlJyxcbiAgICAgICd1cGxvYWRlcidcbiAgICApO1xuICB9O1xuICByZXR1cm4ge1xuICAgIHVwbG9hZDogZXJyb3JIYW5kbGVyLFxuICAgIHVwbG9hZEpzb246IGVycm9ySGFuZGxlcixcbiAgICBnZXRVcGxvYWRQcmljZTogZXJyb3JIYW5kbGVyLFxuICB9O1xufVxuIiwgImltcG9ydCB7XG4gIERvd25sb2FkZXJJbnRlcmZhY2UsXG4gIGNyZWF0ZU51bGxEb3dubG9hZGVyLFxufSBmcm9tICcuL0Rvd25sb2FkZXJJbnRlcmZhY2UnO1xuaW1wb3J0IHsgRWRkc2FJbnRlcmZhY2UsIGNyZWF0ZU51bGxFZGRzYSB9IGZyb20gJy4vRWRkc2FJbnRlcmZhY2UnO1xuaW1wb3J0IHsgSHR0cEludGVyZmFjZSwgY3JlYXRlTnVsbEh0dHAgfSBmcm9tICcuL0h0dHBJbnRlcmZhY2UnO1xuaW1wb3J0IHtcbiAgY3JlYXRlTnVsbFByb2dyYW1SZXBvc2l0b3J5LFxuICBQcm9ncmFtUmVwb3NpdG9yeUludGVyZmFjZSxcbn0gZnJvbSAnLi9Qcm9ncmFtUmVwb3NpdG9yeUludGVyZmFjZSc7XG5pbXBvcnQgeyBjcmVhdGVOdWxsUnBjLCBScGNJbnRlcmZhY2UgfSBmcm9tICcuL1JwY0ludGVyZmFjZSc7XG5pbXBvcnQge1xuICBjcmVhdGVOdWxsU2VyaWFsaXplcixcbiAgU2VyaWFsaXplckludGVyZmFjZSxcbn0gZnJvbSAnLi9TZXJpYWxpemVySW50ZXJmYWNlJztcbmltcG9ydCB7IGNyZWF0ZU51bGxTaWduZXIsIFNpZ25lciB9IGZyb20gJy4vU2lnbmVyJztcbmltcG9ydCB7XG4gIGNyZWF0ZU51bGxUcmFuc2FjdGlvbkZhY3RvcnksXG4gIFRyYW5zYWN0aW9uRmFjdG9yeUludGVyZmFjZSxcbn0gZnJvbSAnLi9UcmFuc2FjdGlvbkZhY3RvcnlJbnRlcmZhY2UnO1xuaW1wb3J0IHsgY3JlYXRlTnVsbFVwbG9hZGVyLCBVcGxvYWRlckludGVyZmFjZSB9IGZyb20gJy4vVXBsb2FkZXJJbnRlcmZhY2UnO1xuXG4vKipcbiAqIEEgVW1pIGNvbnRleHQgb2JqZWN0IHRoYXQgdXNlcyBhbGwgb2YgdGhlIGludGVyZmFjZXMgcHJvdmlkZWQgYnkgVW1pLlxuICogT25jZSBjcmVhdGVkLCB0aGUgZW5kLXVzZXIgY2FuIHBhc3MgdGhpcyBvYmplY3QgdG8gYW55IGZ1bmN0aW9uIHRoYXRcbiAqIHJlcXVpcmVzIHNvbWUgb3IgYWxsIG9mIHRoZXNlIGludGVyZmFjZXMuXG4gKlxuICogQGNhdGVnb3J5IENvbnRleHQgYW5kIEludGVyZmFjZXNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb250ZXh0IHtcbiAgLyoqIEFuIGludGVyZmFjZSBmb3IgZG93bmxvYWRpbmcgZmlsZXMgZnJvbSBVUklzLiAqL1xuICBkb3dubG9hZGVyOiBEb3dubG9hZGVySW50ZXJmYWNlO1xuICAvKiogQW4gaW50ZXJmYWNlIGZvciBtYW5hZ2luZyBwdWJsaWMgYW5kIHByaXZhdGUga2V5cy4gKi9cbiAgZWRkc2E6IEVkZHNhSW50ZXJmYWNlO1xuICAvKiogQW4gaW50ZXJmYWNlIGZvciBzZW5kaW5nIEhUVFAgcmVxdWVzdHMuICovXG4gIGh0dHA6IEh0dHBJbnRlcmZhY2U7XG4gIC8qKiBUaGUgc2lnbmVyIHVzaW5nIHlvdXIgYXBwLiAqL1xuICBpZGVudGl0eTogU2lnbmVyO1xuICAvKiogVGhlIHNpZ25lciBwYXlpbmcgZm9yIHRoaW5ncywgdXN1YWxseSB0aGUgc2FtZSBhcyB0aGUgYGlkZW50aXR5YC4gKi9cbiAgcGF5ZXI6IFNpZ25lcjtcbiAgLyoqIEFuIGludGVyZmFjZSBmb3IgcmVnaXN0ZXJpbmcgYW5kIHJldHJpZXZpbmcgcHJvZ3JhbXMuICovXG4gIHByb2dyYW1zOiBQcm9ncmFtUmVwb3NpdG9yeUludGVyZmFjZTtcbiAgLyoqIEFuIGludGVyZmFjZSBmb3Igc2VuZGluZyBSUEMgcmVxdWVzdHMuICovXG4gIHJwYzogUnBjSW50ZXJmYWNlO1xuICAvKipcbiAgICogQW4gaW50ZXJmYWNlIGZvciBzZXJpYWxpemluZyB2YXJpb3VzIHR5cGVzLlxuICAgKiBAZGVwcmVjYXRlZCBUaGlzIGludGVyZmFjZSBpcyBkZXByZWNhdGVkLlxuICAgKiBZb3UgY2FuIG5vdyBkaXJlY3RseSB1c2UgYEBtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS9zZXJpYWxpemVyc2AgaW5zdGVhZC5cbiAgICovXG4gIHNlcmlhbGl6ZXI6IFNlcmlhbGl6ZXJJbnRlcmZhY2U7XG4gIC8qKiBBbiBpbnRlcmZhY2UgZm9yIG1hbmFnaW5nIHRyYW5zYWN0aW9ucy4gKi9cbiAgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbkZhY3RvcnlJbnRlcmZhY2U7XG4gIC8qKiBBbiBpbnRlcmZhY2UgZm9yIHVwbG9hZGluZyBmaWxlcyBhbmQgZ2V0dGluZyB0aGVpciBVUklzLiAqL1xuICB1cGxvYWRlcjogVXBsb2FkZXJJbnRlcmZhY2U7XG59XG5cbi8qKlxuICogQSBoZWxwZXIgbWV0aG9kIHRoYXQgY3JlYXRlcyBhIFVtaSBjb250ZXh0IG9iamVjdCB1c2luZyBvbmx5XG4gKiBOdWxsIGltcGxlbWVudGF0aW9ucyBvZiB0aGUgaW50ZXJmYWNlcy4gVGhpcyBjYW4gYmUgdXNlZnVsIHRvXG4gKiBjcmVhdGUgYSBmdWxsIFVtaSBjb250ZXh0IG9iamVjdCB3aGVuIG9ubHkgYSBmZXcgb2YgdGhlIGludGVyZmFjZXNcbiAqIGFyZSBuZWVkZWQuXG4gKlxuICogQGNhdGVnb3J5IENvbnRleHQgYW5kIEludGVyZmFjZXNcbiAqL1xuZXhwb3J0IGNvbnN0IGNyZWF0ZU51bGxDb250ZXh0ID0gKCk6IENvbnRleHQgPT4gKHtcbiAgZG93bmxvYWRlcjogY3JlYXRlTnVsbERvd25sb2FkZXIoKSxcbiAgZWRkc2E6IGNyZWF0ZU51bGxFZGRzYSgpLFxuICBodHRwOiBjcmVhdGVOdWxsSHR0cCgpLFxuICBpZGVudGl0eTogY3JlYXRlTnVsbFNpZ25lcigpLFxuICBwYXllcjogY3JlYXRlTnVsbFNpZ25lcigpLFxuICBwcm9ncmFtczogY3JlYXRlTnVsbFByb2dyYW1SZXBvc2l0b3J5KCksXG4gIHJwYzogY3JlYXRlTnVsbFJwYygpLFxuICBzZXJpYWxpemVyOiBjcmVhdGVOdWxsU2VyaWFsaXplcigpLFxuICB0cmFuc2FjdGlvbnM6IGNyZWF0ZU51bGxUcmFuc2FjdGlvbkZhY3RvcnkoKSxcbiAgdXBsb2FkZXI6IGNyZWF0ZU51bGxVcGxvYWRlcigpLFxufSk7XG4iLCAiaW1wb3J0IHtcbiAgTnVtYmVyU2VyaWFsaXplcixcbiAgU2VyaWFsaXplcixcbiAgbWFwU2VyaWFsaXplcixcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzJztcbmltcG9ydCB7IEJpZ0ludElucHV0LCBjcmVhdGVCaWdJbnQgfSBmcm9tICcuL0JpZ0ludCc7XG5cbi8qKlxuICogRGVmaW5lcyBhIHN0cmluZyB0aGF0IGNhbiBiZSBwYXJzZWQgaW50byBhIERhdGUgb2JqZWN0LlxuICogRm9yIGluc3RhbmNlLCBgXCIyMDIwLTAxLTAxVDAwOjAwOjAwLjAwMFpcImAuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIERhdGVUaW1lXG4gKi9cbmV4cG9ydCB0eXBlIERhdGVUaW1lU3RyaW5nID0gc3RyaW5nO1xuXG4vKipcbiAqIERlZmluZXMgYWxsIHRoZSB0eXBlcyB0aGF0IGNhbiBiZSB1c2VkIHRvIGNyZWF0ZSBhIERhdGVUaW1lLlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBEYXRlVGltZVxuICovXG5leHBvcnQgdHlwZSBEYXRlVGltZUlucHV0ID0gRGF0ZVRpbWVTdHJpbmcgfCBCaWdJbnRJbnB1dCB8IERhdGU7XG5cbi8qKlxuICogRGVmaW5lcyBhIHBvaW50IGluIHRpbWUgdmlhIGEgVW5peCB0aW1lc3RhbXAgcmVwcmVzZW50ZWQgYXMgYSBCaWdJbnQuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIERhdGVUaW1lXG4gKi9cbmV4cG9ydCB0eXBlIERhdGVUaW1lID0gYmlnaW50O1xuXG4vKipcbiAqIENyZWF0ZXMgYSB7QGxpbmsgRGF0ZVRpbWV9IGZyb20gYSB7QGxpbmsgRGF0ZVRpbWVJbnB1dH0uXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIERhdGVUaW1lXG4gKi9cbmV4cG9ydCBjb25zdCBkYXRlVGltZSA9ICh2YWx1ZTogRGF0ZVRpbWVJbnB1dCk6IERhdGVUaW1lID0+IHtcbiAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgfHwgaXNEYXRlT2JqZWN0KHZhbHVlKSkge1xuICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSh2YWx1ZSk7XG4gICAgY29uc3QgdGltZXN0YW1wID0gTWF0aC5mbG9vcihkYXRlLmdldFRpbWUoKSAvIDEwMDApO1xuICAgIHJldHVybiBjcmVhdGVCaWdJbnQodGltZXN0YW1wKTtcbiAgfVxuXG4gIHJldHVybiBjcmVhdGVCaWdJbnQodmFsdWUpO1xufTtcblxuLyoqXG4gKiBIZWxwZXIgZnVuY3Rpb24gdG8gZ2V0IHRoZSBjdXJyZW50IHRpbWUgYXMgYSB7QGxpbmsgRGF0ZVRpbWV9LlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBEYXRlVGltZVxuICovXG5leHBvcnQgY29uc3Qgbm93ID0gKCk6IERhdGVUaW1lID0+IGRhdGVUaW1lKG5ldyBEYXRlKERhdGUubm93KCkpKTtcblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBnaXZlbiB2YWx1ZSBpcyBhIERhdGUgb2JqZWN0LlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBEYXRlVGltZVxuICovXG5jb25zdCBpc0RhdGVPYmplY3QgPSAodmFsdWU6IGFueSk6IHZhbHVlIGlzIERhdGUgPT5cbiAgT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHZhbHVlKSA9PT0gJ1tvYmplY3QgRGF0ZV0nO1xuXG4vKipcbiAqIEZvcm1hdHMgYSB7QGxpbmsgRGF0ZVRpbWV9IGFzIGEgc3RyaW5nLlxuICogQGNhdGVnb3J5IFV0aWxzIOKAlCBEYXRlVGltZVxuICovXG5leHBvcnQgY29uc3QgZm9ybWF0RGF0ZVRpbWUgPSAoXG4gIHZhbHVlOiBEYXRlVGltZSxcbiAgbG9jYWxlczogSW50bC5Mb2NhbGVzQXJndW1lbnQgPSAnZW4tVVMnLFxuICBvcHRpb25zOiBJbnRsLkRhdGVUaW1lRm9ybWF0T3B0aW9ucyA9IHtcbiAgICBtb250aDogJ3Nob3J0JyxcbiAgICBkYXk6ICdudW1lcmljJyxcbiAgICB5ZWFyOiAnbnVtZXJpYycsXG4gICAgaG91cjogJ251bWVyaWMnLFxuICAgIG1pbnV0ZTogJ251bWVyaWMnLFxuICB9XG4pOiBzdHJpbmcgPT4ge1xuICBjb25zdCBkYXRlID0gbmV3IERhdGUoTnVtYmVyKHZhbHVlICogMTAwMG4pKTtcblxuICByZXR1cm4gZGF0ZS50b0xvY2FsZURhdGVTdHJpbmcobG9jYWxlcywgb3B0aW9ucyk7XG59O1xuXG4vKipcbiAqIENvbnZlcnRzIGEgbnVtYmVyIHNlcmlhbGl6ZXIgaW50byBhIERhdGVUaW1lIHNlcmlhbGl6ZXIuXG4gKiBAY2F0ZWdvcnkgVXRpbHMg4oCUIERhdGVUaW1lXG4gKi9cbmV4cG9ydCBjb25zdCBtYXBEYXRlVGltZVNlcmlhbGl6ZXIgPSAoXG4gIHNlcmlhbGl6ZXI6IE51bWJlclNlcmlhbGl6ZXJcbik6IFNlcmlhbGl6ZXI8RGF0ZVRpbWVJbnB1dCwgRGF0ZVRpbWU+ID0+XG4gIG1hcFNlcmlhbGl6ZXIoXG4gICAgc2VyaWFsaXplciBhcyBTZXJpYWxpemVyPG51bWJlciB8IGJpZ2ludD4sXG4gICAgKHZhbHVlOiBEYXRlVGltZUlucHV0KTogbnVtYmVyIHwgYmlnaW50ID0+IHtcbiAgICAgIGNvbnN0IGRhdGUgPSBkYXRlVGltZSh2YWx1ZSk7XG4gICAgICByZXR1cm4gZGF0ZSA+IE51bWJlci5NQVhfU0FGRV9JTlRFR0VSID8gZGF0ZSA6IE51bWJlcihkYXRlKTtcbiAgICB9LFxuICAgICh2YWx1ZTogbnVtYmVyIHwgYmlnaW50KTogRGF0ZVRpbWUgPT4gZGF0ZVRpbWUodmFsdWUpXG4gICk7XG4iLCAiLyoqXG4gKiBHZW5lcmF0ZSBhIHJhbmRvbSBzdHJpbmcgb2YgdGhlIGdpdmVuIGxlbmd0aC5cbiAqIFdhcm5pbmc6IFRoaXMgaXMgbm90IGEgY3J5cHRvZ3JhcGhpY2FsbHkgc2VjdXJlIHJhbmRvbSBzdHJpbmcgZ2VuZXJhdG9yLlxuICogQGNhdGVnb3J5IFV0aWxzXG4gKi9cbmV4cG9ydCBjb25zdCBnZW5lcmF0ZVJhbmRvbVN0cmluZyA9IChcbiAgbGVuZ3RoID0gMjAsXG4gIGFscGhhYmV0ID0gJ0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5J1xuKSA9PiB7XG4gIGxldCByZXN1bHQgPSAnJztcbiAgY29uc3QgYWxwaGFiZXRMZW5ndGggPSBhbHBoYWJldC5sZW5ndGg7XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgbGVuZ3RoOyBpICs9IDEpIHtcbiAgICByZXN1bHQgKz0gYWxwaGFiZXQuY2hhckF0KE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIGFscGhhYmV0TGVuZ3RoKSk7XG4gIH1cblxuICByZXR1cm4gcmVzdWx0O1xufTtcbiIsICJpbXBvcnQgeyB1dGY4IH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXJzJztcbmltcG9ydCB7IGdlbmVyYXRlUmFuZG9tU3RyaW5nIH0gZnJvbSAnLi91dGlscyc7XG5cbi8qKlxuICogQSBnZW5lcmljIGRlZmluaXRpb24gb2YgYSBGaWxlIHJlcHJlc2VudGVkIGFzIGEgYnVmZmVyIHdpdGhcbiAqIGV4dHJhIG1ldGFkYXRhIHN1Y2ggYXMgYSBmaWxlIG5hbWUsIGNvbnRlbnQgdHlwZSwgYW5kIHRhZ3MuXG4gKlxuICogQGNhdGVnb3J5IFN0b3JhZ2VcbiAqL1xuZXhwb3J0IHR5cGUgR2VuZXJpY0ZpbGUgPSB7XG4gIHJlYWRvbmx5IGJ1ZmZlcjogVWludDhBcnJheTtcbiAgcmVhZG9ubHkgZmlsZU5hbWU6IHN0cmluZztcbiAgcmVhZG9ubHkgZGlzcGxheU5hbWU6IHN0cmluZztcbiAgcmVhZG9ubHkgdW5pcXVlTmFtZTogc3RyaW5nO1xuICByZWFkb25seSBjb250ZW50VHlwZTogc3RyaW5nIHwgbnVsbDtcbiAgcmVhZG9ubHkgZXh0ZW5zaW9uOiBzdHJpbmcgfCBudWxsO1xuICByZWFkb25seSB0YWdzOiBHZW5lcmljRmlsZVRhZ1tdO1xufTtcblxuLyoqXG4gKiBSZXByZXNlbnQgYSBjdXN0b20gdGFnIHRoYXQgY2FuIGJlIGF0dGFjaGVkIHRvIGEgZmlsZS5cbiAqIEBjYXRlZ29yeSBTdG9yYWdlXG4gKi9cbmV4cG9ydCB0eXBlIEdlbmVyaWNGaWxlVGFnID0geyBuYW1lOiBzdHJpbmc7IHZhbHVlOiBzdHJpbmcgfTtcblxuLyoqXG4gKiBBbGlhcyBmb3IgdGhlIG5hdGl2ZSBGaWxlIGludGVyZmFjZSBmcm9tIHRoZSBicm93c2VyLlxuICogQGNhdGVnb3J5IFN0b3JhZ2VcbiAqL1xuZXhwb3J0IHR5cGUgQnJvd3NlckZpbGUgPSBGaWxlO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIG9wdGlvbnMgdGhhdCBjYW4gYmUgcHJvdmlkZWQgd2hlbiBjcmVhdGluZyBhIHtAbGluayBHZW5lcmljRmlsZX0uXG4gKiBAY2F0ZWdvcnkgU3RvcmFnZVxuICovXG5leHBvcnQgdHlwZSBHZW5lcmljRmlsZU9wdGlvbnMgPSB7XG4gIGRpc3BsYXlOYW1lPzogc3RyaW5nO1xuICB1bmlxdWVOYW1lPzogc3RyaW5nO1xuICBjb250ZW50VHlwZT86IHN0cmluZztcbiAgZXh0ZW5zaW9uPzogc3RyaW5nO1xuICB0YWdzPzogeyBuYW1lOiBzdHJpbmc7IHZhbHVlOiBzdHJpbmcgfVtdO1xufTtcblxuLyoqXG4gKiBDcmVhdGVzIGEgbmV3IHtAbGluayBHZW5lcmljRmlsZX0gZnJvbSBhIGJ1ZmZlciBhbmQgYSBmaWxlIG5hbWUuXG4gKiBAY2F0ZWdvcnkgU3RvcmFnZVxuICovXG5leHBvcnQgY29uc3QgY3JlYXRlR2VuZXJpY0ZpbGUgPSAoXG4gIGNvbnRlbnQ6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gIGZpbGVOYW1lOiBzdHJpbmcsXG4gIG9wdGlvbnM6IEdlbmVyaWNGaWxlT3B0aW9ucyA9IHt9XG4pOiBHZW5lcmljRmlsZSA9PiAoe1xuICBidWZmZXI6IHR5cGVvZiBjb250ZW50ID09PSAnc3RyaW5nJyA/IHV0Zjguc2VyaWFsaXplKGNvbnRlbnQpIDogY29udGVudCxcbiAgZmlsZU5hbWUsXG4gIGRpc3BsYXlOYW1lOiBvcHRpb25zLmRpc3BsYXlOYW1lID8/IGZpbGVOYW1lLFxuICB1bmlxdWVOYW1lOiBvcHRpb25zLnVuaXF1ZU5hbWUgPz8gZ2VuZXJhdGVSYW5kb21TdHJpbmcoKSxcbiAgY29udGVudFR5cGU6IG9wdGlvbnMuY29udGVudFR5cGUgPz8gbnVsbCxcbiAgZXh0ZW5zaW9uOiBvcHRpb25zLmV4dGVuc2lvbiA/PyBnZXRFeHRlbnNpb24oZmlsZU5hbWUpLFxuICB0YWdzOiBvcHRpb25zLnRhZ3MgPz8gW10sXG59KTtcblxuLyoqXG4gKiBDcmVhdGVzIGEgbmV3IHtAbGluayBHZW5lcmljRmlsZX0gZnJvbSBhIHtAbGluayBCcm93c2VyRmlsZX0uXG4gKiBAY2F0ZWdvcnkgU3RvcmFnZVxuICovXG5leHBvcnQgY29uc3QgY3JlYXRlR2VuZXJpY0ZpbGVGcm9tQnJvd3NlckZpbGUgPSBhc3luYyAoXG4gIGJyb3dzZXJGaWxlOiBCcm93c2VyRmlsZSxcbiAgb3B0aW9uczogR2VuZXJpY0ZpbGVPcHRpb25zID0ge31cbik6IFByb21pc2U8R2VuZXJpY0ZpbGU+ID0+XG4gIGNyZWF0ZUdlbmVyaWNGaWxlKFxuICAgIG5ldyBVaW50OEFycmF5KGF3YWl0IGJyb3dzZXJGaWxlLmFycmF5QnVmZmVyKCkpLFxuICAgIGJyb3dzZXJGaWxlLm5hbWUsXG4gICAgb3B0aW9uc1xuICApO1xuXG4vKipcbiAqIENyZWF0ZXMgYSBuZXcge0BsaW5rIEdlbmVyaWNGaWxlfSBmcm9tIGEgSlNPTiBvYmplY3QuXG4gKiBAY2F0ZWdvcnkgU3RvcmFnZVxuICovXG5leHBvcnQgY29uc3QgY3JlYXRlR2VuZXJpY0ZpbGVGcm9tSnNvbiA9IDxUPihcbiAganNvbjogVCxcbiAgZmlsZU5hbWUgPSAnaW5saW5lLmpzb24nLFxuICBvcHRpb25zOiBHZW5lcmljRmlsZU9wdGlvbnMgPSB7fVxuKTogR2VuZXJpY0ZpbGUgPT5cbiAgY3JlYXRlR2VuZXJpY0ZpbGUoSlNPTi5zdHJpbmdpZnkoanNvbiksIGZpbGVOYW1lLCB7XG4gICAgY29udGVudFR5cGU6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcblxuLyoqXG4gKiBDcmVhdGVzIGEgbmV3IHtAbGluayBCcm93c2VyRmlsZX0gZnJvbSBhIHtAbGluayBHZW5lcmljRmlsZX0uXG4gKiBAY2F0ZWdvcnkgU3RvcmFnZVxuICovXG5leHBvcnQgY29uc3QgY3JlYXRlQnJvd3NlckZpbGVGcm9tR2VuZXJpY0ZpbGUgPSAoXG4gIGZpbGU6IEdlbmVyaWNGaWxlXG4pOiBCcm93c2VyRmlsZSA9PiBuZXcgRmlsZShbZmlsZS5idWZmZXIgYXMgQmxvYlBhcnRdLCBmaWxlLmZpbGVOYW1lKTtcblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBjb250ZW50IG9mIGEge0BsaW5rIEdlbmVyaWNGaWxlfSBhcyBhIHBhcnNlZCBKU09OIG9iamVjdC5cbiAqIEBjYXRlZ29yeSBTdG9yYWdlXG4gKi9cbmV4cG9ydCBjb25zdCBwYXJzZUpzb25Gcm9tR2VuZXJpY0ZpbGUgPSA8VD4oZmlsZTogR2VuZXJpY0ZpbGUpOiBUID0+XG4gIEpTT04ucGFyc2UobmV3IFRleHREZWNvZGVyKCkuZGVjb2RlKGZpbGUuYnVmZmVyKSk7XG5cbi8qKlxuICogUmV0dXJucyB0aGUgdG90YWwgc2l6ZSBvZiBhIGxpc3Qgb2Yge0BsaW5rIEdlbmVyaWNGaWxlfSBpbiBieXRlcy5cbiAqIEBjYXRlZ29yeSBTdG9yYWdlXG4gKi9cbmV4cG9ydCBjb25zdCBnZXRCeXRlc0Zyb21HZW5lcmljRmlsZXMgPSAoLi4uZmlsZXM6IEdlbmVyaWNGaWxlW10pOiBudW1iZXIgPT5cbiAgZmlsZXMucmVkdWNlKChhY2MsIGZpbGUpID0+IGFjYyArIGZpbGUuYnVmZmVyLmJ5dGVMZW5ndGgsIDApO1xuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGdpdmVuIHZhbHVlIGlzIGEge0BsaW5rIEdlbmVyaWNGaWxlfS5cbiAqIEBjYXRlZ29yeSBTdG9yYWdlXG4gKi9cbmV4cG9ydCBjb25zdCBpc0dlbmVyaWNGaWxlID0gKGZpbGU6IGFueSk6IGZpbGUgaXMgR2VuZXJpY0ZpbGUgPT5cbiAgZmlsZSAhPSBudWxsICYmXG4gIHR5cGVvZiBmaWxlID09PSAnb2JqZWN0JyAmJlxuICAnYnVmZmVyJyBpbiBmaWxlICYmXG4gICdmaWxlTmFtZScgaW4gZmlsZSAmJlxuICAnZGlzcGxheU5hbWUnIGluIGZpbGUgJiZcbiAgJ3VuaXF1ZU5hbWUnIGluIGZpbGUgJiZcbiAgJ2NvbnRlbnRUeXBlJyBpbiBmaWxlICYmXG4gICdleHRlbnNpb24nIGluIGZpbGUgJiZcbiAgJ3RhZ3MnIGluIGZpbGU7XG5cbi8qKlxuICogUmV0dXJucyB0aGUgZXh0ZW5zaW9uIG9mIGEgZmlsZSBuYW1lLlxuICogQGNhdGVnb3J5IFN0b3JhZ2VcbiAqL1xuY29uc3QgZ2V0RXh0ZW5zaW9uID0gKGZpbGVOYW1lOiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsID0+IHtcbiAgY29uc3QgbGFzdERvdEluZGV4ID0gZmlsZU5hbWUubGFzdEluZGV4T2YoJy4nKTtcblxuICByZXR1cm4gbGFzdERvdEluZGV4IDwgMCA/IG51bGwgOiBmaWxlTmFtZS5zbGljZShsYXN0RG90SW5kZXggKyAxKTtcbn07XG4iLCAiaW1wb3J0IHR5cGUgeyBHZW5lcmljQWJvcnRTaWduYWwgfSBmcm9tICcuL0dlbmVyaWNBYm9ydFNpZ25hbCc7XG5pbXBvcnQgdHlwZSB7IEh0dHBIZWFkZXJWYWx1ZSwgSHR0cFJlcXVlc3RIZWFkZXJzIH0gZnJvbSAnLi9IdHRwSGVhZGVycyc7XG5cbi8qKiBEZWZpbmVzIGEgbnVtYmVyIGluIG1pbGxpc2Vjb25kcy4gKi9cbnR5cGUgTWlsbGlzZWNvbmRzID0gbnVtYmVyO1xuXG4vKipcbiAqIERlZmluZXMgYSBIVFRQIFJlcXVlc3Qgd2l0aCBjdXN0b20gZGF0YS5cbiAqIEBjYXRlZ29yeSBIdHRwXG4gKi9cbmV4cG9ydCB0eXBlIEh0dHBSZXF1ZXN0PEQgPSBhbnk+ID0ge1xuICBtZXRob2Q6IEh0dHBNZXRob2Q7XG4gIHVybDogc3RyaW5nO1xuICBkYXRhOiBEO1xuICBoZWFkZXJzOiBIdHRwUmVxdWVzdEhlYWRlcnM7XG4gIG1heFJlZGlyZWN0cz86IG51bWJlcjtcbiAgdGltZW91dD86IE1pbGxpc2Vjb25kcztcbiAgc2lnbmFsPzogR2VuZXJpY0Fib3J0U2lnbmFsO1xufTtcblxuLyoqXG4gKiBDcmVhdGVzIGEgbmV3IHtAbGluayBIdHRwUmVxdWVzdEJ1aWxkZXJ9IGluc3RhbmNlLlxuICogQGNhdGVnb3J5IEh0dHBcbiAqL1xuZXhwb3J0IGNvbnN0IHJlcXVlc3QgPSAoKSA9PlxuICBuZXcgSHR0cFJlcXVlc3RCdWlsZGVyPHVuZGVmaW5lZD4oe1xuICAgIG1ldGhvZDogJ2dldCcsXG4gICAgZGF0YTogdW5kZWZpbmVkLFxuICAgIGhlYWRlcnM6IHt9LFxuICAgIHVybDogJycsXG4gIH0pO1xuXG4vKipcbiAqIEEgYnVpbGRlciBmb3IgY29uc3RydWN0aW5nIHtAbGluayBIdHRwUmVxdWVzdH0gaW5zdGFuY2VzLlxuICogQGNhdGVnb3J5IEh0dHBcbiAqL1xuZXhwb3J0IGNsYXNzIEh0dHBSZXF1ZXN0QnVpbGRlcjxEPiBpbXBsZW1lbnRzIEh0dHBSZXF1ZXN0PEQ+IHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PEQ+O1xuXG4gIGNvbnN0cnVjdG9yKHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PEQ+KSB7XG4gICAgdGhpcy5yZXF1ZXN0ID0gcmVxdWVzdDtcbiAgfVxuXG4gIGFzSnNvbigpIHtcbiAgICByZXR1cm4gdGhpcy5jb250ZW50VHlwZSgnYXBwbGljYXRpb24vanNvbicpO1xuICB9XG5cbiAgYXNNdWx0aXBhcnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udGVudFR5cGUoJ211bHRpcGFydC9mb3JtLWRhdGEnKTtcbiAgfVxuXG4gIGFzRm9ybSgpIHtcbiAgICByZXR1cm4gdGhpcy5jb250ZW50VHlwZSgnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJyk7XG4gIH1cblxuICBhY2NlcHQoY29udGVudFR5cGU6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLndpdGhIZWFkZXIoJ2FjY2VwdCcsIGNvbnRlbnRUeXBlKTtcbiAgfVxuXG4gIGNvbnRlbnRUeXBlKGNvbnRlbnRUeXBlOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy53aXRoSGVhZGVyKCdjb250ZW50LXR5cGUnLCBjb250ZW50VHlwZSk7XG4gIH1cblxuICB1c2VyQWdlbnQodXNlckFnZW50OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy53aXRoSGVhZGVyKCd1c2VyLWFnZW50JywgdXNlckFnZW50KTtcbiAgfVxuXG4gIHdpdGhUb2tlbih0b2tlbjogc3RyaW5nLCB0eXBlOiBzdHJpbmcgPSAnQmVhcmVyJykge1xuICAgIHJldHVybiB0aGlzLndpdGhIZWFkZXIoJ2F1dGhvcml6YXRpb24nLCBgJHt0eXBlfSAke3Rva2VufWApO1xuICB9XG5cbiAgd2l0aEhlYWRlcihrZXk6IHN0cmluZywgdmFsdWU6IEh0dHBIZWFkZXJWYWx1ZSkge1xuICAgIHJldHVybiB0aGlzLndpdGhIZWFkZXJzKHsgW2tleV06IHZhbHVlIH0pO1xuICB9XG5cbiAgd2l0aEhlYWRlcnMoaGVhZGVyczogSHR0cFJlcXVlc3RIZWFkZXJzKSB7XG4gICAgcmV0dXJuIG5ldyBIdHRwUmVxdWVzdEJ1aWxkZXI8RD4oe1xuICAgICAgLi4udGhpcy5yZXF1ZXN0LFxuICAgICAgaGVhZGVyczogeyAuLi50aGlzLnJlcXVlc3QuaGVhZGVycywgLi4uaGVhZGVycyB9LFxuICAgIH0pO1xuICB9XG5cbiAgZG9udEZvbGxvd1JlZGlyZWN0cygpIHtcbiAgICByZXR1cm4gdGhpcy5mb2xsb3dSZWRpcmVjdHMoMCk7XG4gIH1cblxuICBmb2xsb3dSZWRpcmVjdHMobWF4UmVkaXJlY3RzPzogbnVtYmVyKSB7XG4gICAgcmV0dXJuIG5ldyBIdHRwUmVxdWVzdEJ1aWxkZXI8RD4oeyAuLi50aGlzLnJlcXVlc3QsIG1heFJlZGlyZWN0cyB9KTtcbiAgfVxuXG4gIHdpdGhvdXRUaW1lb3V0KCkge1xuICAgIHJldHVybiB0aGlzLndpdGhUaW1lb3V0KDApO1xuICB9XG5cbiAgd2l0aFRpbWVvdXQodGltZW91dD86IE1pbGxpc2Vjb25kcykge1xuICAgIHJldHVybiBuZXcgSHR0cFJlcXVlc3RCdWlsZGVyPEQ+KHsgLi4udGhpcy5yZXF1ZXN0LCB0aW1lb3V0IH0pO1xuICB9XG5cbiAgd2l0aEFib3J0U2lnbmFsKHNpZ25hbD86IEdlbmVyaWNBYm9ydFNpZ25hbCkge1xuICAgIHJldHVybiBuZXcgSHR0cFJlcXVlc3RCdWlsZGVyPEQ+KHsgLi4udGhpcy5yZXF1ZXN0LCBzaWduYWwgfSk7XG4gIH1cblxuICB3aXRoRW5kcG9pbnQobWV0aG9kOiBIdHRwTWV0aG9kLCB1cmw6IHN0cmluZykge1xuICAgIHJldHVybiBuZXcgSHR0cFJlcXVlc3RCdWlsZGVyPEQ+KHsgLi4udGhpcy5yZXF1ZXN0LCBtZXRob2QsIHVybCB9KTtcbiAgfVxuXG4gIHdpdGhQYXJhbXMoXG4gICAgcGFyYW1zOiBzdHJpbmcgfCBVUkxTZWFyY2hQYXJhbXMgfCBzdHJpbmdbXVtdIHwgUmVjb3JkPHN0cmluZywgc3RyaW5nPlxuICApIHtcbiAgICBjb25zdCB1cmwgPSBuZXcgVVJMKHRoaXMucmVxdWVzdC51cmwpO1xuICAgIGNvbnN0IG5ld1NlYXJjaCA9IG5ldyBVUkxTZWFyY2hQYXJhbXMocGFyYW1zKTtcbiAgICBjb25zdCBzZWFyY2ggPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHVybC5zZWFyY2hQYXJhbXMpO1xuICAgIFsuLi5uZXdTZWFyY2guZW50cmllcygpXS5mb3JFYWNoKChba2V5LCB2YWxdKSA9PiB7XG4gICAgICBzZWFyY2guYXBwZW5kKGtleSwgdmFsKTtcbiAgICB9KTtcbiAgICB1cmwuc2VhcmNoID0gc2VhcmNoLnRvU3RyaW5nKCk7XG4gICAgcmV0dXJuIG5ldyBIdHRwUmVxdWVzdEJ1aWxkZXI8RD4oeyAuLi50aGlzLnJlcXVlc3QsIHVybDogdXJsLnRvU3RyaW5nKCkgfSk7XG4gIH1cblxuICB3aXRoRGF0YTxUPihkYXRhOiBUKSB7XG4gICAgcmV0dXJuIG5ldyBIdHRwUmVxdWVzdEJ1aWxkZXI8VD4oeyAuLi50aGlzLnJlcXVlc3QsIGRhdGEgfSk7XG4gIH1cblxuICBnZXQodXJsOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy53aXRoRW5kcG9pbnQoJ2dldCcsIHVybCk7XG4gIH1cblxuICBwb3N0KHVybDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMud2l0aEVuZHBvaW50KCdwb3N0JywgdXJsKTtcbiAgfVxuXG4gIHB1dCh1cmw6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLndpdGhFbmRwb2ludCgncHV0JywgdXJsKTtcbiAgfVxuXG4gIHBhdGNoKHVybDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMud2l0aEVuZHBvaW50KCdwYXRjaCcsIHVybCk7XG4gIH1cblxuICBkZWxldGUodXJsOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy53aXRoRW5kcG9pbnQoJ2RlbGV0ZScsIHVybCk7XG4gIH1cblxuICBnZXQgbWV0aG9kKCk6IEh0dHBNZXRob2Qge1xuICAgIHJldHVybiB0aGlzLnJlcXVlc3QubWV0aG9kO1xuICB9XG5cbiAgZ2V0IHVybCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnJlcXVlc3QudXJsO1xuICB9XG5cbiAgZ2V0IGRhdGEoKTogRCB7XG4gICAgcmV0dXJuIHRoaXMucmVxdWVzdC5kYXRhO1xuICB9XG5cbiAgZ2V0IGhlYWRlcnMoKTogSHR0cFJlcXVlc3RIZWFkZXJzIHtcbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0LmhlYWRlcnM7XG4gIH1cblxuICBnZXQgbWF4UmVkaXJlY3RzKCk6IG51bWJlciB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMucmVxdWVzdC5tYXhSZWRpcmVjdHM7XG4gIH1cblxuICBnZXQgdGltZW91dCgpOiBNaWxsaXNlY29uZHMgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLnJlcXVlc3QudGltZW91dDtcbiAgfVxuXG4gIGdldCBzaWduYWwoKTogR2VuZXJpY0Fib3J0U2lnbmFsIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0LnNpZ25hbDtcbiAgfVxufVxuXG4vKipcbiAqIERlZmluZXMgYSBIVFRQIG1ldGhvZCBhcyBhIHN0cmluZy5cbiAqIEBjYXRlZ29yeSBIdHRwXG4gKi9cbmV4cG9ydCB0eXBlIEh0dHBNZXRob2QgPVxuICB8ICdnZXQnXG4gIHwgJ0dFVCdcbiAgfCAnZGVsZXRlJ1xuICB8ICdERUxFVEUnXG4gIHwgJ2hlYWQnXG4gIHwgJ0hFQUQnXG4gIHwgJ29wdGlvbnMnXG4gIHwgJ09QVElPTlMnXG4gIHwgJ3Bvc3QnXG4gIHwgJ1BPU1QnXG4gIHwgJ3B1dCdcbiAgfCAnUFVUJ1xuICB8ICdwYXRjaCdcbiAgfCAnUEFUQ0gnXG4gIHwgJ3B1cmdlJ1xuICB8ICdQVVJHRSdcbiAgfCAnbGluaydcbiAgfCAnTElOSydcbiAgfCAndW5saW5rJ1xuICB8ICdVTkxJTksnO1xuIiwgImltcG9ydCB7IENvbnRleHQsIGNyZWF0ZU51bGxDb250ZXh0IH0gZnJvbSAnLi9Db250ZXh0JztcbmltcG9ydCB0eXBlIHsgVW1pUGx1Z2luIH0gZnJvbSAnLi9VbWlQbHVnaW4nO1xuXG4vKipcbiAqIEEgVW1pIGNvbnRleHQgb2JqZWN0IHRoYXQgdXNlcyBhbGwgb2YgdGhlIGludGVyZmFjZXMgcHJvdmlkZWQgYnkgVW1pLlxuICogT25jZSBjcmVhdGVkLCB0aGUgZW5kLXVzZXIgY2FuIHBhc3MgdGhpcyBvYmplY3QgdG8gYW55IGZ1bmN0aW9uIHRoYXRcbiAqIHJlcXVpcmVzIHNvbWUgb3IgYWxsIG9mIHRoZXNlIGludGVyZmFjZXMuXG4gKlxuICogSXQgaW1wbGVtZW50cyB0aGUge0BsaW5rIENvbnRleHR9IGludGVyZmFjZSBhbmQgYWRkcyBhIGB1c2VgIG1ldGhvZFxuICogdGhhdCBhbGxvd3MgcGx1Z2lucyB0byBiZSBpbnN0YWxsZWQuXG4gKlxuICogQGNhdGVnb3J5IENvbnRleHQgYW5kIEludGVyZmFjZXNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBVbWkgZXh0ZW5kcyBDb250ZXh0IHtcbiAgLyoqIEluc3RhbGxzIGEgVW1pIHBsdWdpbi4gKi9cbiAgdXNlKHBsdWdpbjogVW1pUGx1Z2luKTogVW1pO1xufVxuXG4vKipcbiAqIENyZWF0ZXMgYSBVbWkgaW5zdGFuY2UgdXNpbmcgb25seSBOdWxsIGltcGxlbWVudGF0aW9ucyBvZiB0aGUgaW50ZXJmYWNlcy5cbiAqIFRoZSBgdXNlYCBtZXRob2QgY2FuIHRoZW4gYmUgdXNlZCB0byBpbnN0YWxsIHBsdWdpbnMgYW5kIHJlcGxhY2UgdGhlXG4gKiBOdWxsIGltcGxlbWVudGF0aW9ucyB3aXRoIHJlYWwgaW1wbGVtZW50YXRpb25zLlxuICpcbiAqIEBjYXRlZ29yeSBDb250ZXh0IGFuZCBJbnRlcmZhY2VzXG4gKi9cbmV4cG9ydCBjb25zdCBjcmVhdGVVbWkgPSAoKTogVW1pID0+ICh7XG4gIC4uLmNyZWF0ZU51bGxDb250ZXh0KCksXG4gIHVzZShwbHVnaW46IFVtaVBsdWdpbikge1xuICAgIHBsdWdpbi5pbnN0YWxsKHRoaXMpO1xuICAgIHJldHVybiB0aGlzO1xuICB9LFxufSk7XG4iLCAiaW1wb3J0IHR5cGUgeyBQcm9ncmFtIH0gZnJvbSAnLi4vUHJvZ3JhbSc7XG5pbXBvcnQgeyBVbWlFcnJvciB9IGZyb20gJy4vVW1pRXJyb3InO1xuXG4vKiogQGNhdGVnb3J5IEVycm9ycyAqL1xuZXhwb3J0IHR5cGUgVW5kZXJseWluZ1Byb2dyYW1FcnJvciA9IEVycm9yICYgeyBjb2RlPzogbnVtYmVyOyBsb2dzPzogc3RyaW5nW10gfTtcblxuLyoqIEBjYXRlZ29yeSBFcnJvcnMgKi9cbmV4cG9ydCBjbGFzcyBQcm9ncmFtRXJyb3IgZXh0ZW5kcyBVbWlFcnJvciB7XG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZyA9ICdQcm9ncmFtRXJyb3InO1xuXG4gIHJlYWRvbmx5IHByb2dyYW06IFByb2dyYW07XG5cbiAgcmVhZG9ubHkgbG9ncz86IHN0cmluZ1tdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIG1lc3NhZ2U6IHN0cmluZyxcbiAgICBwcm9ncmFtOiBQcm9ncmFtLFxuICAgIGNhdXNlPzogVW5kZXJseWluZ1Byb2dyYW1FcnJvclxuICApIHtcbiAgICBzdXBlcihtZXNzYWdlLCAncHJvZ3JhbScsIGAke3Byb2dyYW0ubmFtZX0gWyR7cHJvZ3JhbS5wdWJsaWNLZXl9XWAsIGNhdXNlKTtcbiAgICB0aGlzLnByb2dyYW0gPSBwcm9ncmFtO1xuICAgIHRoaXMubG9ncyA9IGNhdXNlPy5sb2dzO1xuICAgIGlmICh0aGlzLmxvZ3MpIHtcbiAgICAgIHRoaXMubWVzc2FnZSArPSBgXFxuUHJvZ3JhbSBMb2dzOlxcbiR7dGhpcy5sb2dzXG4gICAgICAgIC5tYXAoKGxvZykgPT4gYHwgJHtsb2d9YClcbiAgICAgICAgLmpvaW4oJ1xcbicpfVxcbmA7XG4gICAgfVxuICB9XG59XG4iLCAiaW1wb3J0IHtcbiAgQ29udGV4dCxcbiAgY3JlYXRlR2VuZXJpY0ZpbGUsXG4gIERvd25sb2FkZXJJbnRlcmZhY2UsXG4gIERvd25sb2FkZXJPcHRpb25zLFxuICBHZW5lcmljRmlsZSxcbiAgcmVxdWVzdCxcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pJztcblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUh0dHBEb3dubG9hZGVyKFxuICBjb250ZXh0OiBQaWNrPENvbnRleHQsICdodHRwJz5cbik6IERvd25sb2FkZXJJbnRlcmZhY2Uge1xuICBjb25zdCBkb3dubG9hZE9uZSA9IGFzeW5jIChcbiAgICB1cmk6IHN0cmluZyxcbiAgICBvcHRpb25zOiBEb3dubG9hZGVyT3B0aW9ucyA9IHt9XG4gICk6IFByb21pc2U8R2VuZXJpY0ZpbGU+ID0+IHtcbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNvbnRleHQuaHR0cC5zZW5kKFxuICAgICAgcmVxdWVzdCgpLmdldCh1cmkpLndpdGhBYm9ydFNpZ25hbChvcHRpb25zLnNpZ25hbClcbiAgICApO1xuICAgIHJldHVybiBjcmVhdGVHZW5lcmljRmlsZShyZXNwb25zZS5ib2R5LCB1cmkpO1xuICB9O1xuXG4gIGNvbnN0IGRvd25sb2FkID0gYXN5bmMgKFxuICAgIHVyaXM6IHN0cmluZ1tdLFxuICAgIG9wdGlvbnM6IERvd25sb2FkZXJPcHRpb25zID0ge31cbiAgKTogUHJvbWlzZTxHZW5lcmljRmlsZVtdPiA9PlxuICAgIFByb21pc2UuYWxsKHVyaXMubWFwKCh1cmkpID0+IGRvd25sb2FkT25lKHVyaSwgb3B0aW9ucykpKTtcblxuICBjb25zdCBkb3dubG9hZEpzb24gPSBhc3luYyA8VD4oXG4gICAgdXJpOiBzdHJpbmcsXG4gICAgb3B0aW9uczogRG93bmxvYWRlck9wdGlvbnMgPSB7fVxuICApOiBQcm9taXNlPFQ+ID0+IHtcbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNvbnRleHQuaHR0cC5zZW5kPFQ+KFxuICAgICAgcmVxdWVzdCgpLmdldCh1cmkpLndpdGhBYm9ydFNpZ25hbChvcHRpb25zLnNpZ25hbClcbiAgICApO1xuICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICB9O1xuXG4gIHJldHVybiB7IGRvd25sb2FkLCBkb3dubG9hZEpzb24gfTtcbn1cbiIsICJpbXBvcnQgeyBVbWlQbHVnaW4gfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWknO1xuaW1wb3J0IHsgY3JlYXRlSHR0cERvd25sb2FkZXIgfSBmcm9tICcuL2NyZWF0ZUh0dHBEb3dubG9hZGVyJztcblxuZXhwb3J0IGNvbnN0IGh0dHBEb3dubG9hZGVyID0gKCk6IFVtaVBsdWdpbiA9PiAoe1xuICBpbnN0YWxsKHVtaSkge1xuICAgIHVtaS5kb3dubG9hZGVyID0gY3JlYXRlSHR0cERvd25sb2FkZXIodW1pKTtcbiAgfSxcbn0pO1xuIiwgImltcG9ydCB7IFB1YmxpY0tleSB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaSc7XG5pbXBvcnQgeyBQdWJsaWNLZXkgYXMgV2ViM0pzUHVibGljS2V5IH0gZnJvbSAnQHNvbGFuYS93ZWIzLmpzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGZyb21XZWIzSnNQdWJsaWNLZXkocHVibGljS2V5OiBXZWIzSnNQdWJsaWNLZXkpOiBQdWJsaWNLZXkge1xuICByZXR1cm4gcHVibGljS2V5LnRvQmFzZTU4KCkgYXMgUHVibGljS2V5O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdG9XZWIzSnNQdWJsaWNLZXkocHVibGljS2V5OiBQdWJsaWNLZXkpOiBXZWIzSnNQdWJsaWNLZXkge1xuICByZXR1cm4gbmV3IFdlYjNKc1B1YmxpY0tleShwdWJsaWNLZXkpO1xufVxuIiwgImltcG9ydCB7IEluc3RydWN0aW9uIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24gYXMgV2ViM0pzVHJhbnNhY3Rpb25JbnN0cnVjdGlvbiB9IGZyb20gJ0Bzb2xhbmEvd2ViMy5qcyc7XG5pbXBvcnQgeyBCdWZmZXIgfSBmcm9tICdidWZmZXInO1xuaW1wb3J0IHsgZnJvbVdlYjNKc1B1YmxpY0tleSwgdG9XZWIzSnNQdWJsaWNLZXkgfSBmcm9tICcuL1B1YmxpY0tleSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBmcm9tV2ViM0pzSW5zdHJ1Y3Rpb24oXG4gIGluc3RydWN0aW9uOiBXZWIzSnNUcmFuc2FjdGlvbkluc3RydWN0aW9uXG4pOiBJbnN0cnVjdGlvbiB7XG4gIHJldHVybiB7XG4gICAga2V5czogaW5zdHJ1Y3Rpb24ua2V5cy5tYXAoKGFjY291bnRNZXRhKSA9PiAoe1xuICAgICAgLi4uYWNjb3VudE1ldGEsXG4gICAgICBwdWJrZXk6IGZyb21XZWIzSnNQdWJsaWNLZXkoYWNjb3VudE1ldGEucHVia2V5KSxcbiAgICB9KSksXG4gICAgcHJvZ3JhbUlkOiBmcm9tV2ViM0pzUHVibGljS2V5KGluc3RydWN0aW9uLnByb2dyYW1JZCksXG4gICAgZGF0YTogbmV3IFVpbnQ4QXJyYXkoaW5zdHJ1Y3Rpb24uZGF0YSksXG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0b1dlYjNKc0luc3RydWN0aW9uKFxuICBpbnN0cnVjdGlvbjogSW5zdHJ1Y3Rpb25cbik6IFdlYjNKc1RyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24ge1xuICByZXR1cm4gbmV3IFdlYjNKc1RyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24oe1xuICAgIGtleXM6IGluc3RydWN0aW9uLmtleXMubWFwKChhY2NvdW50TWV0YSkgPT4gKHtcbiAgICAgIC4uLmFjY291bnRNZXRhLFxuICAgICAgcHVia2V5OiB0b1dlYjNKc1B1YmxpY0tleShhY2NvdW50TWV0YS5wdWJrZXkpLFxuICAgIH0pKSxcbiAgICBwcm9ncmFtSWQ6IHRvV2ViM0pzUHVibGljS2V5KGluc3RydWN0aW9uLnByb2dyYW1JZCksXG4gICAgZGF0YTogQnVmZmVyLmZyb20oaW5zdHJ1Y3Rpb24uZGF0YSksXG4gIH0pO1xufVxuIiwgImltcG9ydCB7IEtleXBhaXIsIHB1YmxpY0tleUJ5dGVzIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pJztcbmltcG9ydCB7IEtleXBhaXIgYXMgV2ViM0pzS2V5cGFpciB9IGZyb20gJ0Bzb2xhbmEvd2ViMy5qcyc7XG5pbXBvcnQgeyBmcm9tV2ViM0pzUHVibGljS2V5IH0gZnJvbSAnLi9QdWJsaWNLZXknO1xuXG5leHBvcnQgZnVuY3Rpb24gZnJvbVdlYjNKc0tleXBhaXIoa2V5cGFpcjogV2ViM0pzS2V5cGFpcik6IEtleXBhaXIge1xuICByZXR1cm4ge1xuICAgIHB1YmxpY0tleTogZnJvbVdlYjNKc1B1YmxpY0tleShrZXlwYWlyLnB1YmxpY0tleSksXG4gICAgc2VjcmV0S2V5OiBrZXlwYWlyLnNlY3JldEtleSxcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRvV2ViM0pzS2V5cGFpcihrZXlwYWlyOiBLZXlwYWlyKTogV2ViM0pzS2V5cGFpciB7XG4gIHJldHVybiBuZXcgV2ViM0pzS2V5cGFpcih7XG4gICAgcHVibGljS2V5OiBwdWJsaWNLZXlCeXRlcyhrZXlwYWlyLnB1YmxpY0tleSksXG4gICAgc2VjcmV0S2V5OiBrZXlwYWlyLnNlY3JldEtleSxcbiAgfSk7XG59XG4iLCAiaW1wb3J0IHtcbiAgYmFzZTU4LFxuICBUcmFuc2FjdGlvbklucHV0LFxuICBUcmFuc2FjdGlvbk1lc3NhZ2UsXG59IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaSc7XG5pbXBvcnQge1xuICBBZGRyZXNzTG9va3VwVGFibGVBY2NvdW50IGFzIFdlYjNKc0FkZHJlc3NMb29rdXBUYWJsZUFjY291bnQsXG4gIE1lc3NhZ2UgYXMgV2ViM0pzTWVzc2FnZUxlZ2FjeSxcbiAgTWVzc2FnZVYwIGFzIFdlYjNKc01lc3NhZ2VWMCxcbn0gZnJvbSAnQHNvbGFuYS93ZWIzLmpzJztcbmltcG9ydCB7IHRvV2ViM0pzSW5zdHJ1Y3Rpb24gfSBmcm9tICcuL0luc3RydWN0aW9uJztcbmltcG9ydCB7IGZyb21XZWIzSnNQdWJsaWNLZXksIHRvV2ViM0pzUHVibGljS2V5IH0gZnJvbSAnLi9QdWJsaWNLZXknO1xuXG5leHBvcnQgZnVuY3Rpb24gZnJvbVdlYjNKc01lc3NhZ2UoXG4gIG1lc3NhZ2U6IFdlYjNKc01lc3NhZ2VMZWdhY3kgfCBXZWIzSnNNZXNzYWdlVjBcbik6IFRyYW5zYWN0aW9uTWVzc2FnZSB7XG4gIHJldHVybiB7XG4gICAgdmVyc2lvbjogbWVzc2FnZS52ZXJzaW9uLFxuICAgIGhlYWRlcjogbWVzc2FnZS5oZWFkZXIsXG4gICAgYWNjb3VudHM6IG1lc3NhZ2Uuc3RhdGljQWNjb3VudEtleXMubWFwKGZyb21XZWIzSnNQdWJsaWNLZXkpLFxuICAgIGJsb2NraGFzaDogbWVzc2FnZS5yZWNlbnRCbG9ja2hhc2gsXG4gICAgaW5zdHJ1Y3Rpb25zOiBtZXNzYWdlLmNvbXBpbGVkSW5zdHJ1Y3Rpb25zLm1hcCgoaW5zdHJ1Y3Rpb24pID0+ICh7XG4gICAgICBwcm9ncmFtSW5kZXg6IGluc3RydWN0aW9uLnByb2dyYW1JZEluZGV4LFxuICAgICAgYWNjb3VudEluZGV4ZXM6IGluc3RydWN0aW9uLmFjY291bnRLZXlJbmRleGVzLFxuICAgICAgZGF0YTogbmV3IFVpbnQ4QXJyYXkoaW5zdHJ1Y3Rpb24uZGF0YSksXG4gICAgfSkpLFxuICAgIGFkZHJlc3NMb29rdXBUYWJsZXM6IG1lc3NhZ2UuYWRkcmVzc1RhYmxlTG9va3Vwcy5tYXAoKGxvb2t1cCkgPT4gKHtcbiAgICAgIHB1YmxpY0tleTogZnJvbVdlYjNKc1B1YmxpY0tleShsb29rdXAuYWNjb3VudEtleSksXG4gICAgICB3cml0YWJsZUluZGV4ZXM6IGxvb2t1cC53cml0YWJsZUluZGV4ZXMsXG4gICAgICByZWFkb25seUluZGV4ZXM6IGxvb2t1cC5yZWFkb25seUluZGV4ZXMsXG4gICAgfSkpLFxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdG9XZWIzSnNNZXNzYWdlKFxuICBtZXNzYWdlOiBUcmFuc2FjdGlvbk1lc3NhZ2Vcbik6IFdlYjNKc01lc3NhZ2VMZWdhY3kgfCBXZWIzSnNNZXNzYWdlVjAge1xuICBpZiAobWVzc2FnZS52ZXJzaW9uID09PSAnbGVnYWN5Jykge1xuICAgIHJldHVybiBuZXcgV2ViM0pzTWVzc2FnZUxlZ2FjeSh7XG4gICAgICBoZWFkZXI6IG1lc3NhZ2UuaGVhZGVyLFxuICAgICAgYWNjb3VudEtleXM6IG1lc3NhZ2UuYWNjb3VudHMubWFwKHRvV2ViM0pzUHVibGljS2V5KSxcbiAgICAgIHJlY2VudEJsb2NraGFzaDogbWVzc2FnZS5ibG9ja2hhc2gsXG4gICAgICBpbnN0cnVjdGlvbnM6IG1lc3NhZ2UuaW5zdHJ1Y3Rpb25zLm1hcCgoaW5zdHJ1Y3Rpb24pID0+ICh7XG4gICAgICAgIHByb2dyYW1JZEluZGV4OiBpbnN0cnVjdGlvbi5wcm9ncmFtSW5kZXgsXG4gICAgICAgIGFjY291bnRzOiBpbnN0cnVjdGlvbi5hY2NvdW50SW5kZXhlcyxcbiAgICAgICAgZGF0YTogYmFzZTU4LmRlc2VyaWFsaXplKGluc3RydWN0aW9uLmRhdGEpWzBdLFxuICAgICAgfSkpLFxuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIG5ldyBXZWIzSnNNZXNzYWdlVjAoe1xuICAgIGhlYWRlcjogbWVzc2FnZS5oZWFkZXIsXG4gICAgc3RhdGljQWNjb3VudEtleXM6IG1lc3NhZ2UuYWNjb3VudHMubWFwKHRvV2ViM0pzUHVibGljS2V5KSxcbiAgICByZWNlbnRCbG9ja2hhc2g6IG1lc3NhZ2UuYmxvY2toYXNoLFxuICAgIGNvbXBpbGVkSW5zdHJ1Y3Rpb25zOiBtZXNzYWdlLmluc3RydWN0aW9ucy5tYXAoKGluc3RydWN0aW9uKSA9PiAoe1xuICAgICAgcHJvZ3JhbUlkSW5kZXg6IGluc3RydWN0aW9uLnByb2dyYW1JbmRleCxcbiAgICAgIGFjY291bnRLZXlJbmRleGVzOiBpbnN0cnVjdGlvbi5hY2NvdW50SW5kZXhlcyxcbiAgICAgIGRhdGE6IGluc3RydWN0aW9uLmRhdGEsXG4gICAgfSkpLFxuICAgIGFkZHJlc3NUYWJsZUxvb2t1cHM6IG1lc3NhZ2UuYWRkcmVzc0xvb2t1cFRhYmxlcy5tYXAoKGxvb2t1cCkgPT4gKHtcbiAgICAgIGFjY291bnRLZXk6IHRvV2ViM0pzUHVibGljS2V5KGxvb2t1cC5wdWJsaWNLZXkpLFxuICAgICAgd3JpdGFibGVJbmRleGVzOiBsb29rdXAud3JpdGFibGVJbmRleGVzLFxuICAgICAgcmVhZG9ubHlJbmRleGVzOiBsb29rdXAucmVhZG9ubHlJbmRleGVzLFxuICAgIH0pKSxcbiAgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0b1dlYjNKc01lc3NhZ2VGcm9tSW5wdXQoXG4gIGlucHV0OiBUcmFuc2FjdGlvbklucHV0XG4pOiBXZWIzSnNNZXNzYWdlTGVnYWN5IHwgV2ViM0pzTWVzc2FnZVYwIHtcbiAgaWYgKGlucHV0LnZlcnNpb24gPT09ICdsZWdhY3knKSB7XG4gICAgcmV0dXJuIFdlYjNKc01lc3NhZ2VMZWdhY3kuY29tcGlsZSh7XG4gICAgICBwYXllcktleTogdG9XZWIzSnNQdWJsaWNLZXkoaW5wdXQucGF5ZXIpLFxuICAgICAgaW5zdHJ1Y3Rpb25zOiBpbnB1dC5pbnN0cnVjdGlvbnMubWFwKHRvV2ViM0pzSW5zdHJ1Y3Rpb24pLFxuICAgICAgcmVjZW50QmxvY2toYXNoOiBpbnB1dC5ibG9ja2hhc2gsXG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4gV2ViM0pzTWVzc2FnZVYwLmNvbXBpbGUoe1xuICAgIHBheWVyS2V5OiB0b1dlYjNKc1B1YmxpY0tleShpbnB1dC5wYXllciksXG4gICAgaW5zdHJ1Y3Rpb25zOiBpbnB1dC5pbnN0cnVjdGlvbnMubWFwKHRvV2ViM0pzSW5zdHJ1Y3Rpb24pLFxuICAgIHJlY2VudEJsb2NraGFzaDogaW5wdXQuYmxvY2toYXNoLFxuICAgIGFkZHJlc3NMb29rdXBUYWJsZUFjY291bnRzOiBpbnB1dC5hZGRyZXNzTG9va3VwVGFibGVzPy5tYXAoXG4gICAgICAoYWNjb3VudCkgPT5cbiAgICAgICAgbmV3IFdlYjNKc0FkZHJlc3NMb29rdXBUYWJsZUFjY291bnQoe1xuICAgICAgICAgIGtleTogdG9XZWIzSnNQdWJsaWNLZXkoYWNjb3VudC5wdWJsaWNLZXkpLFxuICAgICAgICAgIHN0YXRlOiB7XG4gICAgICAgICAgICBhZGRyZXNzZXM6IGFjY291bnQuYWRkcmVzc2VzLm1hcCh0b1dlYjNKc1B1YmxpY0tleSksXG4gICAgICAgICAgICBhdXRob3JpdHk6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGRlYWN0aXZhdGlvblNsb3Q6IEJpZ0ludChgMHgkeydmZicucmVwZWF0KDgpfWApLFxuICAgICAgICAgICAgbGFzdEV4dGVuZGVkU2xvdDogMCxcbiAgICAgICAgICAgIGxhc3RFeHRlbmRlZFNsb3RTdGFydEluZGV4OiAwLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pXG4gICAgKSxcbiAgfSk7XG59XG4iLCAiZnVuY3Rpb24gbnVtYmVyKG46IG51bWJlcikge1xuICBpZiAoIU51bWJlci5pc1NhZmVJbnRlZ2VyKG4pIHx8IG4gPCAwKSB0aHJvdyBuZXcgRXJyb3IoYFdyb25nIHBvc2l0aXZlIGludGVnZXI6ICR7bn1gKTtcbn1cblxuZnVuY3Rpb24gYm9vbChiOiBib29sZWFuKSB7XG4gIGlmICh0eXBlb2YgYiAhPT0gJ2Jvb2xlYW4nKSB0aHJvdyBuZXcgRXJyb3IoYEV4cGVjdGVkIGJvb2xlYW4sIG5vdCAke2J9YCk7XG59XG5cbmZ1bmN0aW9uIGJ5dGVzKGI6IFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQsIC4uLmxlbmd0aHM6IG51bWJlcltdKSB7XG4gIGlmICghKGIgaW5zdGFuY2VvZiBVaW50OEFycmF5KSkgdGhyb3cgbmV3IEVycm9yKCdFeHBlY3RlZCBVaW50OEFycmF5Jyk7XG4gIGlmIChsZW5ndGhzLmxlbmd0aCA+IDAgJiYgIWxlbmd0aHMuaW5jbHVkZXMoYi5sZW5ndGgpKVxuICAgIHRocm93IG5ldyBFcnJvcihgRXhwZWN0ZWQgVWludDhBcnJheSBvZiBsZW5ndGggJHtsZW5ndGhzfSwgbm90IG9mIGxlbmd0aD0ke2IubGVuZ3RofWApO1xufVxuXG50eXBlIEhhc2ggPSB7XG4gIChkYXRhOiBVaW50OEFycmF5KTogVWludDhBcnJheTtcbiAgYmxvY2tMZW46IG51bWJlcjtcbiAgb3V0cHV0TGVuOiBudW1iZXI7XG4gIGNyZWF0ZTogYW55O1xufTtcbmZ1bmN0aW9uIGhhc2goaGFzaDogSGFzaCkge1xuICBpZiAodHlwZW9mIGhhc2ggIT09ICdmdW5jdGlvbicgfHwgdHlwZW9mIGhhc2guY3JlYXRlICE9PSAnZnVuY3Rpb24nKVxuICAgIHRocm93IG5ldyBFcnJvcignSGFzaCBzaG91bGQgYmUgd3JhcHBlZCBieSB1dGlscy53cmFwQ29uc3RydWN0b3InKTtcbiAgbnVtYmVyKGhhc2gub3V0cHV0TGVuKTtcbiAgbnVtYmVyKGhhc2guYmxvY2tMZW4pO1xufVxuXG5mdW5jdGlvbiBleGlzdHMoaW5zdGFuY2U6IGFueSwgY2hlY2tGaW5pc2hlZCA9IHRydWUpIHtcbiAgaWYgKGluc3RhbmNlLmRlc3Ryb3llZCkgdGhyb3cgbmV3IEVycm9yKCdIYXNoIGluc3RhbmNlIGhhcyBiZWVuIGRlc3Ryb3llZCcpO1xuICBpZiAoY2hlY2tGaW5pc2hlZCAmJiBpbnN0YW5jZS5maW5pc2hlZCkgdGhyb3cgbmV3IEVycm9yKCdIYXNoI2RpZ2VzdCgpIGhhcyBhbHJlYWR5IGJlZW4gY2FsbGVkJyk7XG59XG5mdW5jdGlvbiBvdXRwdXQob3V0OiBhbnksIGluc3RhbmNlOiBhbnkpIHtcbiAgYnl0ZXMob3V0KTtcbiAgY29uc3QgbWluID0gaW5zdGFuY2Uub3V0cHV0TGVuO1xuICBpZiAob3V0Lmxlbmd0aCA8IG1pbikge1xuICAgIHRocm93IG5ldyBFcnJvcihgZGlnZXN0SW50bygpIGV4cGVjdHMgb3V0cHV0IGJ1ZmZlciBvZiBsZW5ndGggYXQgbGVhc3QgJHttaW59YCk7XG4gIH1cbn1cblxuZXhwb3J0IHsgbnVtYmVyLCBib29sLCBieXRlcywgaGFzaCwgZXhpc3RzLCBvdXRwdXQgfTtcblxuY29uc3QgYXNzZXJ0ID0geyBudW1iZXIsIGJvb2wsIGJ5dGVzLCBoYXNoLCBleGlzdHMsIG91dHB1dCB9O1xuZXhwb3J0IGRlZmF1bHQgYXNzZXJ0O1xuIiwgIi8vIFdlIHVzZSBXZWJDcnlwdG8gYWthIGdsb2JhbFRoaXMuY3J5cHRvLCB3aGljaCBleGlzdHMgaW4gYnJvd3NlcnMgYW5kIG5vZGUuanMgMTYrLlxuLy8gU2VlIHV0aWxzLnRzIGZvciBkZXRhaWxzLlxuLy8gVGhlIGZpbGUgd2lsbCB0aHJvdyBvbiBub2RlLmpzIDE0IGFuZCBlYXJsaWVyLlxuLy8gQHRzLWlnbm9yZVxuaW1wb3J0ICogYXMgbmMgZnJvbSAnbm9kZTpjcnlwdG8nO1xuZXhwb3J0IGNvbnN0IGNyeXB0byA9XG4gIG5jICYmIHR5cGVvZiBuYyA9PT0gJ29iamVjdCcgJiYgJ3dlYmNyeXB0bycgaW4gbmMgPyAobmMud2ViY3J5cHRvIGFzIGFueSkgOiB1bmRlZmluZWQ7XG4iLCAiLyohIG5vYmxlLWhhc2hlcyAtIE1JVCBMaWNlbnNlIChjKSAyMDIyIFBhdWwgTWlsbGVyIChwYXVsbWlsbHIuY29tKSAqL1xuXG4vLyBXZSB1c2UgV2ViQ3J5cHRvIGFrYSBnbG9iYWxUaGlzLmNyeXB0bywgd2hpY2ggZXhpc3RzIGluIGJyb3dzZXJzIGFuZCBub2RlLmpzIDE2Ky5cbi8vIG5vZGUuanMgdmVyc2lvbnMgZWFybGllciB0aGFuIHYxOSBkb24ndCBkZWNsYXJlIGl0IGluIGdsb2JhbCBzY29wZS5cbi8vIEZvciBub2RlLmpzLCBwYWNrYWdlLmpzb24jZXhwb3J0cyBmaWVsZCBtYXBwaW5nIHJld3JpdGVzIGltcG9ydFxuLy8gZnJvbSBgY3J5cHRvYCB0byBgY3J5cHRvTm9kZWAsIHdoaWNoIGltcG9ydHMgbmF0aXZlIG1vZHVsZS5cbi8vIE1ha2VzIHRoZSB1dGlscyB1bi1pbXBvcnRhYmxlIGluIGJyb3dzZXJzIHdpdGhvdXQgYSBidW5kbGVyLlxuLy8gT25jZSBub2RlLmpzIDE4IGlzIGRlcHJlY2F0ZWQsIHdlIGNhbiBqdXN0IGRyb3AgdGhlIGltcG9ydC5cbmltcG9ydCB7IGNyeXB0byB9IGZyb20gJ0Bub2JsZS9oYXNoZXMvY3J5cHRvJztcblxuLy8gcHJldHRpZXItaWdub3JlXG5leHBvcnQgdHlwZSBUeXBlZEFycmF5ID0gSW50OEFycmF5IHwgVWludDhDbGFtcGVkQXJyYXkgfCBVaW50OEFycmF5IHxcbiAgVWludDE2QXJyYXkgfCBJbnQxNkFycmF5IHwgVWludDMyQXJyYXkgfCBJbnQzMkFycmF5O1xuXG5jb25zdCB1OGEgPSAoYTogYW55KTogYSBpcyBVaW50OEFycmF5ID0+IGEgaW5zdGFuY2VvZiBVaW50OEFycmF5O1xuLy8gQ2FzdCBhcnJheSB0byBkaWZmZXJlbnQgdHlwZVxuZXhwb3J0IGNvbnN0IHU4ID0gKGFycjogVHlwZWRBcnJheSkgPT4gbmV3IFVpbnQ4QXJyYXkoYXJyLmJ1ZmZlciwgYXJyLmJ5dGVPZmZzZXQsIGFyci5ieXRlTGVuZ3RoKTtcbmV4cG9ydCBjb25zdCB1MzIgPSAoYXJyOiBUeXBlZEFycmF5KSA9PlxuICBuZXcgVWludDMyQXJyYXkoYXJyLmJ1ZmZlciwgYXJyLmJ5dGVPZmZzZXQsIE1hdGguZmxvb3IoYXJyLmJ5dGVMZW5ndGggLyA0KSk7XG5cbi8vIENhc3QgYXJyYXkgdG8gdmlld1xuZXhwb3J0IGNvbnN0IGNyZWF0ZVZpZXcgPSAoYXJyOiBUeXBlZEFycmF5KSA9PlxuICBuZXcgRGF0YVZpZXcoYXJyLmJ1ZmZlciwgYXJyLmJ5dGVPZmZzZXQsIGFyci5ieXRlTGVuZ3RoKTtcblxuLy8gVGhlIHJvdGF0ZSByaWdodCAoY2lyY3VsYXIgcmlnaHQgc2hpZnQpIG9wZXJhdGlvbiBmb3IgdWludDMyXG5leHBvcnQgY29uc3Qgcm90ciA9ICh3b3JkOiBudW1iZXIsIHNoaWZ0OiBudW1iZXIpID0+ICh3b3JkIDw8ICgzMiAtIHNoaWZ0KSkgfCAod29yZCA+Pj4gc2hpZnQpO1xuXG4vLyBiaWctZW5kaWFuIGhhcmR3YXJlIGlzIHJhcmUuIEp1c3QgaW4gY2FzZSBzb21lb25lIHN0aWxsIGRlY2lkZXMgdG8gcnVuIGhhc2hlczpcbi8vIGVhcmx5LXRocm93IGFuIGVycm9yIGJlY2F1c2Ugd2UgZG9uJ3Qgc3VwcG9ydCBCRSB5ZXQuXG5leHBvcnQgY29uc3QgaXNMRSA9IG5ldyBVaW50OEFycmF5KG5ldyBVaW50MzJBcnJheShbMHgxMTIyMzM0NF0pLmJ1ZmZlcilbMF0gPT09IDB4NDQ7XG5pZiAoIWlzTEUpIHRocm93IG5ldyBFcnJvcignTm9uIGxpdHRsZS1lbmRpYW4gaGFyZHdhcmUgaXMgbm90IHN1cHBvcnRlZCcpO1xuXG5jb25zdCBoZXhlcyA9IC8qIEBfX1BVUkVfXyAqLyBBcnJheS5mcm9tKHsgbGVuZ3RoOiAyNTYgfSwgKF8sIGkpID0+XG4gIGkudG9TdHJpbmcoMTYpLnBhZFN0YXJ0KDIsICcwJylcbik7XG4vKipcbiAqIEBleGFtcGxlIGJ5dGVzVG9IZXgoVWludDhBcnJheS5mcm9tKFsweGNhLCAweGZlLCAweDAxLCAweDIzXSkpIC8vICdjYWZlMDEyMydcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJ5dGVzVG9IZXgoYnl0ZXM6IFVpbnQ4QXJyYXkpOiBzdHJpbmcge1xuICBpZiAoIXU4YShieXRlcykpIHRocm93IG5ldyBFcnJvcignVWludDhBcnJheSBleHBlY3RlZCcpO1xuICAvLyBwcmUtY2FjaGluZyBpbXByb3ZlcyB0aGUgc3BlZWQgNnhcbiAgbGV0IGhleCA9ICcnO1xuICBmb3IgKGxldCBpID0gMDsgaSA8IGJ5dGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgaGV4ICs9IGhleGVzW2J5dGVzW2ldXTtcbiAgfVxuICByZXR1cm4gaGV4O1xufVxuXG4vKipcbiAqIEBleGFtcGxlIGhleFRvQnl0ZXMoJ2NhZmUwMTIzJykgLy8gVWludDhBcnJheS5mcm9tKFsweGNhLCAweGZlLCAweDAxLCAweDIzXSlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGhleFRvQnl0ZXMoaGV4OiBzdHJpbmcpOiBVaW50OEFycmF5IHtcbiAgaWYgKHR5cGVvZiBoZXggIT09ICdzdHJpbmcnKSB0aHJvdyBuZXcgRXJyb3IoJ2hleCBzdHJpbmcgZXhwZWN0ZWQsIGdvdCAnICsgdHlwZW9mIGhleCk7XG4gIGNvbnN0IGxlbiA9IGhleC5sZW5ndGg7XG4gIGlmIChsZW4gJSAyKSB0aHJvdyBuZXcgRXJyb3IoJ3BhZGRlZCBoZXggc3RyaW5nIGV4cGVjdGVkLCBnb3QgdW5wYWRkZWQgaGV4IG9mIGxlbmd0aCAnICsgbGVuKTtcbiAgY29uc3QgYXJyYXkgPSBuZXcgVWludDhBcnJheShsZW4gLyAyKTtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBhcnJheS5sZW5ndGg7IGkrKykge1xuICAgIGNvbnN0IGogPSBpICogMjtcbiAgICBjb25zdCBoZXhCeXRlID0gaGV4LnNsaWNlKGosIGogKyAyKTtcbiAgICBjb25zdCBieXRlID0gTnVtYmVyLnBhcnNlSW50KGhleEJ5dGUsIDE2KTtcbiAgICBpZiAoTnVtYmVyLmlzTmFOKGJ5dGUpIHx8IGJ5dGUgPCAwKSB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgYnl0ZSBzZXF1ZW5jZScpO1xuICAgIGFycmF5W2ldID0gYnl0ZTtcbiAgfVxuICByZXR1cm4gYXJyYXk7XG59XG5cbi8vIFRoZXJlIGlzIG5vIHNldEltbWVkaWF0ZSBpbiBicm93c2VyIGFuZCBzZXRUaW1lb3V0IGlzIHNsb3cuXG4vLyBjYWxsIG9mIGFzeW5jIGZuIHdpbGwgcmV0dXJuIFByb21pc2UsIHdoaWNoIHdpbGwgYmUgZnVsbGZpbGVkIG9ubHkgb25cbi8vIG5leHQgc2NoZWR1bGVyIHF1ZXVlIHByb2Nlc3Npbmcgc3RlcCBhbmQgdGhpcyBpcyBleGFjdGx5IHdoYXQgd2UgbmVlZC5cbmV4cG9ydCBjb25zdCBuZXh0VGljayA9IGFzeW5jICgpID0+IHt9O1xuXG4vLyBSZXR1cm5zIGNvbnRyb2wgdG8gdGhyZWFkIGVhY2ggJ3RpY2snIG1zIHRvIGF2b2lkIGJsb2NraW5nXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gYXN5bmNMb29wKGl0ZXJzOiBudW1iZXIsIHRpY2s6IG51bWJlciwgY2I6IChpOiBudW1iZXIpID0+IHZvaWQpIHtcbiAgbGV0IHRzID0gRGF0ZS5ub3coKTtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBpdGVyczsgaSsrKSB7XG4gICAgY2IoaSk7XG4gICAgLy8gRGF0ZS5ub3coKSBpcyBub3QgbW9ub3RvbmljLCBzbyBpbiBjYXNlIGlmIGNsb2NrIGdvZXMgYmFja3dhcmRzIHdlIHJldHVybiByZXR1cm4gY29udHJvbCB0b29cbiAgICBjb25zdCBkaWZmID0gRGF0ZS5ub3coKSAtIHRzO1xuICAgIGlmIChkaWZmID49IDAgJiYgZGlmZiA8IHRpY2spIGNvbnRpbnVlO1xuICAgIGF3YWl0IG5leHRUaWNrKCk7XG4gICAgdHMgKz0gZGlmZjtcbiAgfVxufVxuXG4vLyBHbG9iYWwgc3ltYm9scyBpbiBib3RoIGJyb3dzZXJzIGFuZCBOb2RlLmpzIHNpbmNlIHYxMVxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9taWNyb3NvZnQvVHlwZVNjcmlwdC9pc3N1ZXMvMzE1MzVcbmRlY2xhcmUgY29uc3QgVGV4dEVuY29kZXI6IGFueTtcblxuLyoqXG4gKiBAZXhhbXBsZSB1dGY4VG9CeXRlcygnYWJjJykgLy8gbmV3IFVpbnQ4QXJyYXkoWzk3LCA5OCwgOTldKVxuICovXG5leHBvcnQgZnVuY3Rpb24gdXRmOFRvQnl0ZXMoc3RyOiBzdHJpbmcpOiBVaW50OEFycmF5IHtcbiAgaWYgKHR5cGVvZiBzdHIgIT09ICdzdHJpbmcnKSB0aHJvdyBuZXcgRXJyb3IoYHV0ZjhUb0J5dGVzIGV4cGVjdGVkIHN0cmluZywgZ290ICR7dHlwZW9mIHN0cn1gKTtcbiAgcmV0dXJuIG5ldyBVaW50OEFycmF5KG5ldyBUZXh0RW5jb2RlcigpLmVuY29kZShzdHIpKTsgLy8gaHR0cHM6Ly9idWd6aWwubGEvMTY4MTgwOVxufVxuXG5leHBvcnQgdHlwZSBJbnB1dCA9IFVpbnQ4QXJyYXkgfCBzdHJpbmc7XG4vKipcbiAqIE5vcm1hbGl6ZXMgKG5vbi1oZXgpIHN0cmluZyBvciBVaW50OEFycmF5IHRvIFVpbnQ4QXJyYXkuXG4gKiBXYXJuaW5nOiB3aGVuIFVpbnQ4QXJyYXkgaXMgcGFzc2VkLCBpdCB3b3VsZCBOT1QgZ2V0IGNvcGllZC5cbiAqIEtlZXAgaW4gbWluZCBmb3IgZnV0dXJlIG11dGFibGUgb3BlcmF0aW9ucy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvQnl0ZXMoZGF0YTogSW5wdXQpOiBVaW50OEFycmF5IHtcbiAgaWYgKHR5cGVvZiBkYXRhID09PSAnc3RyaW5nJykgZGF0YSA9IHV0ZjhUb0J5dGVzKGRhdGEpO1xuICBpZiAoIXU4YShkYXRhKSkgdGhyb3cgbmV3IEVycm9yKGBleHBlY3RlZCBVaW50OEFycmF5LCBnb3QgJHt0eXBlb2YgZGF0YX1gKTtcbiAgcmV0dXJuIGRhdGE7XG59XG5cbi8qKlxuICogQ29waWVzIHNldmVyYWwgVWludDhBcnJheXMgaW50byBvbmUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb25jYXRCeXRlcyguLi5hcnJheXM6IFVpbnQ4QXJyYXlbXSk6IFVpbnQ4QXJyYXkge1xuICBjb25zdCByID0gbmV3IFVpbnQ4QXJyYXkoYXJyYXlzLnJlZHVjZSgoc3VtLCBhKSA9PiBzdW0gKyBhLmxlbmd0aCwgMCkpO1xuICBsZXQgcGFkID0gMDsgLy8gd2FsayB0aHJvdWdoIGVhY2ggaXRlbSwgZW5zdXJlIHRoZXkgaGF2ZSBwcm9wZXIgdHlwZVxuICBhcnJheXMuZm9yRWFjaCgoYSkgPT4ge1xuICAgIGlmICghdThhKGEpKSB0aHJvdyBuZXcgRXJyb3IoJ1VpbnQ4QXJyYXkgZXhwZWN0ZWQnKTtcbiAgICByLnNldChhLCBwYWQpO1xuICAgIHBhZCArPSBhLmxlbmd0aDtcbiAgfSk7XG4gIHJldHVybiByO1xufVxuXG4vLyBGb3IgcnVudGltZSBjaGVjayBpZiBjbGFzcyBpbXBsZW1lbnRzIGludGVyZmFjZVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEhhc2g8VCBleHRlbmRzIEhhc2g8VD4+IHtcbiAgYWJzdHJhY3QgYmxvY2tMZW46IG51bWJlcjsgLy8gQnl0ZXMgcGVyIGJsb2NrXG4gIGFic3RyYWN0IG91dHB1dExlbjogbnVtYmVyOyAvLyBCeXRlcyBpbiBvdXRwdXRcbiAgYWJzdHJhY3QgdXBkYXRlKGJ1ZjogSW5wdXQpOiB0aGlzO1xuICAvLyBXcml0ZXMgZGlnZXN0IGludG8gYnVmXG4gIGFic3RyYWN0IGRpZ2VzdEludG8oYnVmOiBVaW50OEFycmF5KTogdm9pZDtcbiAgYWJzdHJhY3QgZGlnZXN0KCk6IFVpbnQ4QXJyYXk7XG4gIC8qKlxuICAgKiBSZXNldHMgaW50ZXJuYWwgc3RhdGUuIE1ha2VzIEhhc2ggaW5zdGFuY2UgdW51c2FibGUuXG4gICAqIFJlc2V0IGlzIGltcG9zc2libGUgZm9yIGtleWVkIGhhc2hlcyBpZiBrZXkgaXMgY29uc3VtZWQgaW50byBzdGF0ZS4gSWYgZGlnZXN0IGlzIG5vdCBjb25zdW1lZFxuICAgKiBieSB1c2VyLCB0aGV5IHdpbGwgbmVlZCB0byBtYW51YWxseSBjYWxsIGBkZXN0cm95KClgIHdoZW4gemVyb2luZyBpcyBuZWNlc3NhcnkuXG4gICAqL1xuICBhYnN0cmFjdCBkZXN0cm95KCk6IHZvaWQ7XG4gIC8qKlxuICAgKiBDbG9uZXMgaGFzaCBpbnN0YW5jZS4gVW5zYWZlOiBkb2Vzbid0IGNoZWNrIHdoZXRoZXIgYHRvYCBpcyB2YWxpZC4gQ2FuIGJlIHVzZWQgYXMgYGNsb25lKClgXG4gICAqIHdoZW4gbm8gb3B0aW9ucyBhcmUgcGFzc2VkLlxuICAgKiBSZWFzb25zIHRvIHVzZSBgX2Nsb25lSW50b2AgaW5zdGVhZCBvZiBjbG9uZTogMSkgcGVyZm9ybWFuY2UgMikgcmV1c2UgaW5zdGFuY2UgPT4gYWxsIGludGVybmFsXG4gICAqIGJ1ZmZlcnMgYXJlIG92ZXJ3cml0dGVuID0+IGNhdXNlcyBidWZmZXIgb3ZlcndyaXRlIHdoaWNoIGlzIHVzZWQgZm9yIGRpZ2VzdCBpbiBzb21lIGNhc2VzLlxuICAgKiBUaGVyZSBhcmUgbm8gZ3VhcmFudGVlcyBmb3IgY2xlYW4tdXAgYmVjYXVzZSBpdCdzIGltcG9zc2libGUgaW4gSlMuXG4gICAqL1xuICBhYnN0cmFjdCBfY2xvbmVJbnRvKHRvPzogVCk6IFQ7XG4gIC8vIFNhZmUgdmVyc2lvbiB0aGF0IGNsb25lcyBpbnRlcm5hbCBzdGF0ZVxuICBjbG9uZSgpOiBUIHtcbiAgICByZXR1cm4gdGhpcy5fY2xvbmVJbnRvKCk7XG4gIH1cbn1cblxuLyoqXG4gKiBYT0Y6IHN0cmVhbWluZyBBUEkgdG8gcmVhZCBkaWdlc3QgaW4gY2h1bmtzLlxuICogU2FtZSBhcyAnc3F1ZWV6ZScgaW4ga2VjY2FrL2sxMiBhbmQgJ3NlZWsnIGluIGJsYWtlMywgYnV0IG1vcmUgZ2VuZXJpYyBuYW1lLlxuICogV2hlbiBoYXNoIHVzZWQgaW4gWE9GIG1vZGUgaXQgaXMgdXAgdG8gdXNlciB0byBjYWxsICcuZGVzdHJveScgYWZ0ZXJ3YXJkcywgc2luY2Ugd2UgY2Fubm90XG4gKiBkZXN0cm95IHN0YXRlLCBuZXh0IGNhbGwgY2FuIHJlcXVpcmUgbW9yZSBieXRlcy5cbiAqL1xuZXhwb3J0IHR5cGUgSGFzaFhPRjxUIGV4dGVuZHMgSGFzaDxUPj4gPSBIYXNoPFQ+ICYge1xuICB4b2YoYnl0ZXM6IG51bWJlcik6IFVpbnQ4QXJyYXk7IC8vIFJlYWQgJ2J5dGVzJyBieXRlcyBmcm9tIGRpZ2VzdCBzdHJlYW1cbiAgeG9mSW50byhidWY6IFVpbnQ4QXJyYXkpOiBVaW50OEFycmF5OyAvLyByZWFkIGJ1Zi5sZW5ndGggYnl0ZXMgZnJvbSBkaWdlc3Qgc3RyZWFtIGludG8gYnVmXG59O1xuXG5jb25zdCB0b1N0ciA9IHt9LnRvU3RyaW5nO1xudHlwZSBFbXB0eU9iaiA9IHt9O1xuZXhwb3J0IGZ1bmN0aW9uIGNoZWNrT3B0czxUMSBleHRlbmRzIEVtcHR5T2JqLCBUMiBleHRlbmRzIEVtcHR5T2JqPihcbiAgZGVmYXVsdHM6IFQxLFxuICBvcHRzPzogVDJcbik6IFQxICYgVDIge1xuICBpZiAob3B0cyAhPT0gdW5kZWZpbmVkICYmIHRvU3RyLmNhbGwob3B0cykgIT09ICdbb2JqZWN0IE9iamVjdF0nKVxuICAgIHRocm93IG5ldyBFcnJvcignT3B0aW9ucyBzaG91bGQgYmUgb2JqZWN0IG9yIHVuZGVmaW5lZCcpO1xuICBjb25zdCBtZXJnZWQgPSBPYmplY3QuYXNzaWduKGRlZmF1bHRzLCBvcHRzKTtcbiAgcmV0dXJuIG1lcmdlZCBhcyBUMSAmIFQyO1xufVxuXG5leHBvcnQgdHlwZSBDSGFzaCA9IFJldHVyblR5cGU8dHlwZW9mIHdyYXBDb25zdHJ1Y3Rvcj47XG5cbmV4cG9ydCBmdW5jdGlvbiB3cmFwQ29uc3RydWN0b3I8VCBleHRlbmRzIEhhc2g8VD4+KGhhc2hDb25zOiAoKSA9PiBIYXNoPFQ+KSB7XG4gIGNvbnN0IGhhc2hDID0gKG1zZzogSW5wdXQpOiBVaW50OEFycmF5ID0+IGhhc2hDb25zKCkudXBkYXRlKHRvQnl0ZXMobXNnKSkuZGlnZXN0KCk7XG4gIGNvbnN0IHRtcCA9IGhhc2hDb25zKCk7XG4gIGhhc2hDLm91dHB1dExlbiA9IHRtcC5vdXRwdXRMZW47XG4gIGhhc2hDLmJsb2NrTGVuID0gdG1wLmJsb2NrTGVuO1xuICBoYXNoQy5jcmVhdGUgPSAoKSA9PiBoYXNoQ29ucygpO1xuICByZXR1cm4gaGFzaEM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB3cmFwQ29uc3RydWN0b3JXaXRoT3B0czxIIGV4dGVuZHMgSGFzaDxIPiwgVCBleHRlbmRzIE9iamVjdD4oXG4gIGhhc2hDb25zOiAob3B0cz86IFQpID0+IEhhc2g8SD5cbikge1xuICBjb25zdCBoYXNoQyA9IChtc2c6IElucHV0LCBvcHRzPzogVCk6IFVpbnQ4QXJyYXkgPT4gaGFzaENvbnMob3B0cykudXBkYXRlKHRvQnl0ZXMobXNnKSkuZGlnZXN0KCk7XG4gIGNvbnN0IHRtcCA9IGhhc2hDb25zKHt9IGFzIFQpO1xuICBoYXNoQy5vdXRwdXRMZW4gPSB0bXAub3V0cHV0TGVuO1xuICBoYXNoQy5ibG9ja0xlbiA9IHRtcC5ibG9ja0xlbjtcbiAgaGFzaEMuY3JlYXRlID0gKG9wdHM6IFQpID0+IGhhc2hDb25zKG9wdHMpO1xuICByZXR1cm4gaGFzaEM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB3cmFwWE9GQ29uc3RydWN0b3JXaXRoT3B0czxIIGV4dGVuZHMgSGFzaFhPRjxIPiwgVCBleHRlbmRzIE9iamVjdD4oXG4gIGhhc2hDb25zOiAob3B0cz86IFQpID0+IEhhc2hYT0Y8SD5cbikge1xuICBjb25zdCBoYXNoQyA9IChtc2c6IElucHV0LCBvcHRzPzogVCk6IFVpbnQ4QXJyYXkgPT4gaGFzaENvbnMob3B0cykudXBkYXRlKHRvQnl0ZXMobXNnKSkuZGlnZXN0KCk7XG4gIGNvbnN0IHRtcCA9IGhhc2hDb25zKHt9IGFzIFQpO1xuICBoYXNoQy5vdXRwdXRMZW4gPSB0bXAub3V0cHV0TGVuO1xuICBoYXNoQy5ibG9ja0xlbiA9IHRtcC5ibG9ja0xlbjtcbiAgaGFzaEMuY3JlYXRlID0gKG9wdHM6IFQpID0+IGhhc2hDb25zKG9wdHMpO1xuICByZXR1cm4gaGFzaEM7XG59XG5cbi8qKlxuICogU2VjdXJlIFBSTkcuIFVzZXMgYGNyeXB0by5nZXRSYW5kb21WYWx1ZXNgLCB3aGljaCBkZWZlcnMgdG8gT1MuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByYW5kb21CeXRlcyhieXRlc0xlbmd0aCA9IDMyKTogVWludDhBcnJheSB7XG4gIGlmIChjcnlwdG8gJiYgdHlwZW9mIGNyeXB0by5nZXRSYW5kb21WYWx1ZXMgPT09ICdmdW5jdGlvbicpIHtcbiAgICByZXR1cm4gY3J5cHRvLmdldFJhbmRvbVZhbHVlcyhuZXcgVWludDhBcnJheShieXRlc0xlbmd0aCkpO1xuICB9XG4gIHRocm93IG5ldyBFcnJvcignY3J5cHRvLmdldFJhbmRvbVZhbHVlcyBtdXN0IGJlIGRlZmluZWQnKTtcbn1cbiIsICJpbXBvcnQgeyBleGlzdHMsIG91dHB1dCB9IGZyb20gJy4vX2Fzc2VydC5qcyc7XG5pbXBvcnQgeyBIYXNoLCBjcmVhdGVWaWV3LCBJbnB1dCwgdG9CeXRlcyB9IGZyb20gJy4vdXRpbHMuanMnO1xuXG4vLyBQb2x5ZmlsbCBmb3IgU2FmYXJpIDE0XG5mdW5jdGlvbiBzZXRCaWdVaW50NjQodmlldzogRGF0YVZpZXcsIGJ5dGVPZmZzZXQ6IG51bWJlciwgdmFsdWU6IGJpZ2ludCwgaXNMRTogYm9vbGVhbik6IHZvaWQge1xuICBpZiAodHlwZW9mIHZpZXcuc2V0QmlnVWludDY0ID09PSAnZnVuY3Rpb24nKSByZXR1cm4gdmlldy5zZXRCaWdVaW50NjQoYnl0ZU9mZnNldCwgdmFsdWUsIGlzTEUpO1xuICBjb25zdCBfMzJuID0gQmlnSW50KDMyKTtcbiAgY29uc3QgX3UzMl9tYXggPSBCaWdJbnQoMHhmZmZmZmZmZik7XG4gIGNvbnN0IHdoID0gTnVtYmVyKCh2YWx1ZSA+PiBfMzJuKSAmIF91MzJfbWF4KTtcbiAgY29uc3Qgd2wgPSBOdW1iZXIodmFsdWUgJiBfdTMyX21heCk7XG4gIGNvbnN0IGggPSBpc0xFID8gNCA6IDA7XG4gIGNvbnN0IGwgPSBpc0xFID8gMCA6IDQ7XG4gIHZpZXcuc2V0VWludDMyKGJ5dGVPZmZzZXQgKyBoLCB3aCwgaXNMRSk7XG4gIHZpZXcuc2V0VWludDMyKGJ5dGVPZmZzZXQgKyBsLCB3bCwgaXNMRSk7XG59XG5cbi8vIEJhc2UgU0hBMiBjbGFzcyAoUkZDIDYyMzQpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgU0hBMjxUIGV4dGVuZHMgU0hBMjxUPj4gZXh0ZW5kcyBIYXNoPFQ+IHtcbiAgcHJvdGVjdGVkIGFic3RyYWN0IHByb2Nlc3MoYnVmOiBEYXRhVmlldywgb2Zmc2V0OiBudW1iZXIpOiB2b2lkO1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgZ2V0KCk6IG51bWJlcltdO1xuICBwcm90ZWN0ZWQgYWJzdHJhY3Qgc2V0KC4uLmFyZ3M6IG51bWJlcltdKTogdm9pZDtcbiAgYWJzdHJhY3QgZGVzdHJveSgpOiB2b2lkO1xuICBwcm90ZWN0ZWQgYWJzdHJhY3Qgcm91bmRDbGVhbigpOiB2b2lkO1xuICAvLyBGb3IgcGFydGlhbCB1cGRhdGVzIGxlc3MgdGhhbiBibG9jayBzaXplXG4gIHByb3RlY3RlZCBidWZmZXI6IFVpbnQ4QXJyYXk7XG4gIHByb3RlY3RlZCB2aWV3OiBEYXRhVmlldztcbiAgcHJvdGVjdGVkIGZpbmlzaGVkID0gZmFsc2U7XG4gIHByb3RlY3RlZCBsZW5ndGggPSAwO1xuICBwcm90ZWN0ZWQgcG9zID0gMDtcbiAgcHJvdGVjdGVkIGRlc3Ryb3llZCA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHJlYWRvbmx5IGJsb2NrTGVuOiBudW1iZXIsXG4gICAgcHVibGljIG91dHB1dExlbjogbnVtYmVyLFxuICAgIHJlYWRvbmx5IHBhZE9mZnNldDogbnVtYmVyLFxuICAgIHJlYWRvbmx5IGlzTEU6IGJvb2xlYW5cbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmJ1ZmZlciA9IG5ldyBVaW50OEFycmF5KGJsb2NrTGVuKTtcbiAgICB0aGlzLnZpZXcgPSBjcmVhdGVWaWV3KHRoaXMuYnVmZmVyKTtcbiAgfVxuICB1cGRhdGUoZGF0YTogSW5wdXQpOiB0aGlzIHtcbiAgICBleGlzdHModGhpcyk7XG4gICAgY29uc3QgeyB2aWV3LCBidWZmZXIsIGJsb2NrTGVuIH0gPSB0aGlzO1xuICAgIGRhdGEgPSB0b0J5dGVzKGRhdGEpO1xuICAgIGNvbnN0IGxlbiA9IGRhdGEubGVuZ3RoO1xuICAgIGZvciAobGV0IHBvcyA9IDA7IHBvcyA8IGxlbjsgKSB7XG4gICAgICBjb25zdCB0YWtlID0gTWF0aC5taW4oYmxvY2tMZW4gLSB0aGlzLnBvcywgbGVuIC0gcG9zKTtcbiAgICAgIC8vIEZhc3QgcGF0aDogd2UgaGF2ZSBhdCBsZWFzdCBvbmUgYmxvY2sgaW4gaW5wdXQsIGNhc3QgaXQgdG8gdmlldyBhbmQgcHJvY2Vzc1xuICAgICAgaWYgKHRha2UgPT09IGJsb2NrTGVuKSB7XG4gICAgICAgIGNvbnN0IGRhdGFWaWV3ID0gY3JlYXRlVmlldyhkYXRhKTtcbiAgICAgICAgZm9yICg7IGJsb2NrTGVuIDw9IGxlbiAtIHBvczsgcG9zICs9IGJsb2NrTGVuKSB0aGlzLnByb2Nlc3MoZGF0YVZpZXcsIHBvcyk7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuICAgICAgYnVmZmVyLnNldChkYXRhLnN1YmFycmF5KHBvcywgcG9zICsgdGFrZSksIHRoaXMucG9zKTtcbiAgICAgIHRoaXMucG9zICs9IHRha2U7XG4gICAgICBwb3MgKz0gdGFrZTtcbiAgICAgIGlmICh0aGlzLnBvcyA9PT0gYmxvY2tMZW4pIHtcbiAgICAgICAgdGhpcy5wcm9jZXNzKHZpZXcsIDApO1xuICAgICAgICB0aGlzLnBvcyA9IDA7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMubGVuZ3RoICs9IGRhdGEubGVuZ3RoO1xuICAgIHRoaXMucm91bmRDbGVhbigpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG4gIGRpZ2VzdEludG8ob3V0OiBVaW50OEFycmF5KSB7XG4gICAgZXhpc3RzKHRoaXMpO1xuICAgIG91dHB1dChvdXQsIHRoaXMpO1xuICAgIHRoaXMuZmluaXNoZWQgPSB0cnVlO1xuICAgIC8vIFBhZGRpbmdcbiAgICAvLyBXZSBjYW4gYXZvaWQgYWxsb2NhdGlvbiBvZiBidWZmZXIgZm9yIHBhZGRpbmcgY29tcGxldGVseSBpZiBpdFxuICAgIC8vIHdhcyBwcmV2aW91c2x5IG5vdCBhbGxvY2F0ZWQgaGVyZS4gQnV0IGl0IHdvbid0IGNoYW5nZSBwZXJmb3JtYW5jZS5cbiAgICBjb25zdCB7IGJ1ZmZlciwgdmlldywgYmxvY2tMZW4sIGlzTEUgfSA9IHRoaXM7XG4gICAgbGV0IHsgcG9zIH0gPSB0aGlzO1xuICAgIC8vIGFwcGVuZCB0aGUgYml0ICcxJyB0byB0aGUgbWVzc2FnZVxuICAgIGJ1ZmZlcltwb3MrK10gPSAwYjEwMDAwMDAwO1xuICAgIHRoaXMuYnVmZmVyLnN1YmFycmF5KHBvcykuZmlsbCgwKTtcbiAgICAvLyB3ZSBoYXZlIGxlc3MgdGhhbiBwYWRPZmZzZXQgbGVmdCBpbiBidWZmZXIsIHNvIHdlIGNhbm5vdCBwdXQgbGVuZ3RoIGluIGN1cnJlbnQgYmxvY2ssIG5lZWQgcHJvY2VzcyBpdCBhbmQgcGFkIGFnYWluXG4gICAgaWYgKHRoaXMucGFkT2Zmc2V0ID4gYmxvY2tMZW4gLSBwb3MpIHtcbiAgICAgIHRoaXMucHJvY2Vzcyh2aWV3LCAwKTtcbiAgICAgIHBvcyA9IDA7XG4gICAgfVxuICAgIC8vIFBhZCB1bnRpbCBmdWxsIGJsb2NrIGJ5dGUgd2l0aCB6ZXJvc1xuICAgIGZvciAobGV0IGkgPSBwb3M7IGkgPCBibG9ja0xlbjsgaSsrKSBidWZmZXJbaV0gPSAwO1xuICAgIC8vIE5vdGU6IHNoYTUxMiByZXF1aXJlcyBsZW5ndGggdG8gYmUgMTI4Yml0IGludGVnZXIsIGJ1dCBsZW5ndGggaW4gSlMgd2lsbCBvdmVyZmxvdyBiZWZvcmUgdGhhdFxuICAgIC8vIFlvdSBuZWVkIHRvIHdyaXRlIGFyb3VuZCAyIGV4YWJ5dGVzICh1NjRfbWF4IC8gOCAvICgxMDI0Kio2KSkgZm9yIHRoaXMgdG8gaGFwcGVuLlxuICAgIC8vIFNvIHdlIGp1c3Qgd3JpdGUgbG93ZXN0IDY0IGJpdHMgb2YgdGhhdCB2YWx1ZS5cbiAgICBzZXRCaWdVaW50NjQodmlldywgYmxvY2tMZW4gLSA4LCBCaWdJbnQodGhpcy5sZW5ndGggKiA4KSwgaXNMRSk7XG4gICAgdGhpcy5wcm9jZXNzKHZpZXcsIDApO1xuICAgIGNvbnN0IG92aWV3ID0gY3JlYXRlVmlldyhvdXQpO1xuICAgIGNvbnN0IGxlbiA9IHRoaXMub3V0cHV0TGVuO1xuICAgIC8vIE5PVEU6IHdlIGRvIGRpdmlzaW9uIGJ5IDQgbGF0ZXIsIHdoaWNoIHNob3VsZCBiZSBmdXNlZCBpbiBzaW5nbGUgb3Agd2l0aCBtb2R1bG8gYnkgSklUXG4gICAgaWYgKGxlbiAlIDQpIHRocm93IG5ldyBFcnJvcignX3NoYTI6IG91dHB1dExlbiBzaG91bGQgYmUgYWxpZ25lZCB0byAzMmJpdCcpO1xuICAgIGNvbnN0IG91dExlbiA9IGxlbiAvIDQ7XG4gICAgY29uc3Qgc3RhdGUgPSB0aGlzLmdldCgpO1xuICAgIGlmIChvdXRMZW4gPiBzdGF0ZS5sZW5ndGgpIHRocm93IG5ldyBFcnJvcignX3NoYTI6IG91dHB1dExlbiBiaWdnZXIgdGhhbiBzdGF0ZScpO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgb3V0TGVuOyBpKyspIG92aWV3LnNldFVpbnQzMig0ICogaSwgc3RhdGVbaV0sIGlzTEUpO1xuICB9XG4gIGRpZ2VzdCgpIHtcbiAgICBjb25zdCB7IGJ1ZmZlciwgb3V0cHV0TGVuIH0gPSB0aGlzO1xuICAgIHRoaXMuZGlnZXN0SW50byhidWZmZXIpO1xuICAgIGNvbnN0IHJlcyA9IGJ1ZmZlci5zbGljZSgwLCBvdXRwdXRMZW4pO1xuICAgIHRoaXMuZGVzdHJveSgpO1xuICAgIHJldHVybiByZXM7XG4gIH1cbiAgX2Nsb25lSW50byh0bz86IFQpOiBUIHtcbiAgICB0byB8fD0gbmV3ICh0aGlzLmNvbnN0cnVjdG9yIGFzIGFueSkoKSBhcyBUO1xuICAgIHRvLnNldCguLi50aGlzLmdldCgpKTtcbiAgICBjb25zdCB7IGJsb2NrTGVuLCBidWZmZXIsIGxlbmd0aCwgZmluaXNoZWQsIGRlc3Ryb3llZCwgcG9zIH0gPSB0aGlzO1xuICAgIHRvLmxlbmd0aCA9IGxlbmd0aDtcbiAgICB0by5wb3MgPSBwb3M7XG4gICAgdG8uZmluaXNoZWQgPSBmaW5pc2hlZDtcbiAgICB0by5kZXN0cm95ZWQgPSBkZXN0cm95ZWQ7XG4gICAgaWYgKGxlbmd0aCAlIGJsb2NrTGVuKSB0by5idWZmZXIuc2V0KGJ1ZmZlcik7XG4gICAgcmV0dXJuIHRvO1xuICB9XG59XG4iLCAiY29uc3QgVTMyX01BU0s2NCA9IC8qIEBfX1BVUkVfXyAqLyBCaWdJbnQoMiAqKiAzMiAtIDEpO1xuY29uc3QgXzMybiA9IC8qIEBfX1BVUkVfXyAqLyBCaWdJbnQoMzIpO1xuXG4vLyBXZSBhcmUgbm90IHVzaW5nIEJpZ1VpbnQ2NEFycmF5LCBiZWNhdXNlIHRoZXkgYXJlIGV4dHJlbWVseSBzbG93IGFzIHBlciAyMDIyXG5mdW5jdGlvbiBmcm9tQmlnKG46IGJpZ2ludCwgbGUgPSBmYWxzZSkge1xuICBpZiAobGUpIHJldHVybiB7IGg6IE51bWJlcihuICYgVTMyX01BU0s2NCksIGw6IE51bWJlcigobiA+PiBfMzJuKSAmIFUzMl9NQVNLNjQpIH07XG4gIHJldHVybiB7IGg6IE51bWJlcigobiA+PiBfMzJuKSAmIFUzMl9NQVNLNjQpIHwgMCwgbDogTnVtYmVyKG4gJiBVMzJfTUFTSzY0KSB8IDAgfTtcbn1cblxuZnVuY3Rpb24gc3BsaXQobHN0OiBiaWdpbnRbXSwgbGUgPSBmYWxzZSkge1xuICBsZXQgQWggPSBuZXcgVWludDMyQXJyYXkobHN0Lmxlbmd0aCk7XG4gIGxldCBBbCA9IG5ldyBVaW50MzJBcnJheShsc3QubGVuZ3RoKTtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBsc3QubGVuZ3RoOyBpKyspIHtcbiAgICBjb25zdCB7IGgsIGwgfSA9IGZyb21CaWcobHN0W2ldLCBsZSk7XG4gICAgW0FoW2ldLCBBbFtpXV0gPSBbaCwgbF07XG4gIH1cbiAgcmV0dXJuIFtBaCwgQWxdO1xufVxuXG5jb25zdCB0b0JpZyA9IChoOiBudW1iZXIsIGw6IG51bWJlcikgPT4gKEJpZ0ludChoID4+PiAwKSA8PCBfMzJuKSB8IEJpZ0ludChsID4+PiAwKTtcbi8vIGZvciBTaGlmdCBpbiBbMCwgMzIpXG5jb25zdCBzaHJTSCA9IChoOiBudW1iZXIsIF9sOiBudW1iZXIsIHM6IG51bWJlcikgPT4gaCA+Pj4gcztcbmNvbnN0IHNoclNMID0gKGg6IG51bWJlciwgbDogbnVtYmVyLCBzOiBudW1iZXIpID0+IChoIDw8ICgzMiAtIHMpKSB8IChsID4+PiBzKTtcbi8vIFJpZ2h0IHJvdGF0ZSBmb3IgU2hpZnQgaW4gWzEsIDMyKVxuY29uc3Qgcm90clNIID0gKGg6IG51bWJlciwgbDogbnVtYmVyLCBzOiBudW1iZXIpID0+IChoID4+PiBzKSB8IChsIDw8ICgzMiAtIHMpKTtcbmNvbnN0IHJvdHJTTCA9IChoOiBudW1iZXIsIGw6IG51bWJlciwgczogbnVtYmVyKSA9PiAoaCA8PCAoMzIgLSBzKSkgfCAobCA+Pj4gcyk7XG4vLyBSaWdodCByb3RhdGUgZm9yIFNoaWZ0IGluICgzMiwgNjQpLCBOT1RFOiAzMiBpcyBzcGVjaWFsIGNhc2UuXG5jb25zdCByb3RyQkggPSAoaDogbnVtYmVyLCBsOiBudW1iZXIsIHM6IG51bWJlcikgPT4gKGggPDwgKDY0IC0gcykpIHwgKGwgPj4+IChzIC0gMzIpKTtcbmNvbnN0IHJvdHJCTCA9IChoOiBudW1iZXIsIGw6IG51bWJlciwgczogbnVtYmVyKSA9PiAoaCA+Pj4gKHMgLSAzMikpIHwgKGwgPDwgKDY0IC0gcykpO1xuLy8gUmlnaHQgcm90YXRlIGZvciBzaGlmdD09PTMyIChqdXN0IHN3YXBzIGwmaClcbmNvbnN0IHJvdHIzMkggPSAoX2g6IG51bWJlciwgbDogbnVtYmVyKSA9PiBsO1xuY29uc3Qgcm90cjMyTCA9IChoOiBudW1iZXIsIF9sOiBudW1iZXIpID0+IGg7XG4vLyBMZWZ0IHJvdGF0ZSBmb3IgU2hpZnQgaW4gWzEsIDMyKVxuY29uc3Qgcm90bFNIID0gKGg6IG51bWJlciwgbDogbnVtYmVyLCBzOiBudW1iZXIpID0+IChoIDw8IHMpIHwgKGwgPj4+ICgzMiAtIHMpKTtcbmNvbnN0IHJvdGxTTCA9IChoOiBudW1iZXIsIGw6IG51bWJlciwgczogbnVtYmVyKSA9PiAobCA8PCBzKSB8IChoID4+PiAoMzIgLSBzKSk7XG4vLyBMZWZ0IHJvdGF0ZSBmb3IgU2hpZnQgaW4gKDMyLCA2NCksIE5PVEU6IDMyIGlzIHNwZWNpYWwgY2FzZS5cbmNvbnN0IHJvdGxCSCA9IChoOiBudW1iZXIsIGw6IG51bWJlciwgczogbnVtYmVyKSA9PiAobCA8PCAocyAtIDMyKSkgfCAoaCA+Pj4gKDY0IC0gcykpO1xuY29uc3Qgcm90bEJMID0gKGg6IG51bWJlciwgbDogbnVtYmVyLCBzOiBudW1iZXIpID0+IChoIDw8IChzIC0gMzIpKSB8IChsID4+PiAoNjQgLSBzKSk7XG5cbi8vIEpTIHVzZXMgMzItYml0IHNpZ25lZCBpbnRlZ2VycyBmb3IgYml0d2lzZSBvcGVyYXRpb25zIHdoaWNoIG1lYW5zIHdlIGNhbm5vdFxuLy8gc2ltcGxlIHRha2UgY2Fycnkgb3V0IG9mIGxvdyBiaXQgc3VtIGJ5IHNoaWZ0LCB3ZSBuZWVkIHRvIHVzZSBkaXZpc2lvbi5cbmZ1bmN0aW9uIGFkZChBaDogbnVtYmVyLCBBbDogbnVtYmVyLCBCaDogbnVtYmVyLCBCbDogbnVtYmVyKSB7XG4gIGNvbnN0IGwgPSAoQWwgPj4+IDApICsgKEJsID4+PiAwKTtcbiAgcmV0dXJuIHsgaDogKEFoICsgQmggKyAoKGwgLyAyICoqIDMyKSB8IDApKSB8IDAsIGw6IGwgfCAwIH07XG59XG4vLyBBZGRpdGlvbiB3aXRoIG1vcmUgdGhhbiAyIGVsZW1lbnRzXG5jb25zdCBhZGQzTCA9IChBbDogbnVtYmVyLCBCbDogbnVtYmVyLCBDbDogbnVtYmVyKSA9PiAoQWwgPj4+IDApICsgKEJsID4+PiAwKSArIChDbCA+Pj4gMCk7XG5jb25zdCBhZGQzSCA9IChsb3c6IG51bWJlciwgQWg6IG51bWJlciwgQmg6IG51bWJlciwgQ2g6IG51bWJlcikgPT5cbiAgKEFoICsgQmggKyBDaCArICgobG93IC8gMiAqKiAzMikgfCAwKSkgfCAwO1xuY29uc3QgYWRkNEwgPSAoQWw6IG51bWJlciwgQmw6IG51bWJlciwgQ2w6IG51bWJlciwgRGw6IG51bWJlcikgPT5cbiAgKEFsID4+PiAwKSArIChCbCA+Pj4gMCkgKyAoQ2wgPj4+IDApICsgKERsID4+PiAwKTtcbmNvbnN0IGFkZDRIID0gKGxvdzogbnVtYmVyLCBBaDogbnVtYmVyLCBCaDogbnVtYmVyLCBDaDogbnVtYmVyLCBEaDogbnVtYmVyKSA9PlxuICAoQWggKyBCaCArIENoICsgRGggKyAoKGxvdyAvIDIgKiogMzIpIHwgMCkpIHwgMDtcbmNvbnN0IGFkZDVMID0gKEFsOiBudW1iZXIsIEJsOiBudW1iZXIsIENsOiBudW1iZXIsIERsOiBudW1iZXIsIEVsOiBudW1iZXIpID0+XG4gIChBbCA+Pj4gMCkgKyAoQmwgPj4+IDApICsgKENsID4+PiAwKSArIChEbCA+Pj4gMCkgKyAoRWwgPj4+IDApO1xuY29uc3QgYWRkNUggPSAobG93OiBudW1iZXIsIEFoOiBudW1iZXIsIEJoOiBudW1iZXIsIENoOiBudW1iZXIsIERoOiBudW1iZXIsIEVoOiBudW1iZXIpID0+XG4gIChBaCArIEJoICsgQ2ggKyBEaCArIEVoICsgKChsb3cgLyAyICoqIDMyKSB8IDApKSB8IDA7XG5cbi8vIHByZXR0aWVyLWlnbm9yZVxuZXhwb3J0IHtcbiAgZnJvbUJpZywgc3BsaXQsIHRvQmlnLFxuICBzaHJTSCwgc2hyU0wsXG4gIHJvdHJTSCwgcm90clNMLCByb3RyQkgsIHJvdHJCTCxcbiAgcm90cjMySCwgcm90cjMyTCxcbiAgcm90bFNILCByb3RsU0wsIHJvdGxCSCwgcm90bEJMLFxuICBhZGQsIGFkZDNMLCBhZGQzSCwgYWRkNEwsIGFkZDRILCBhZGQ1SCwgYWRkNUwsXG59O1xuLy8gcHJldHRpZXItaWdub3JlXG5jb25zdCB1NjQgPSB7XG4gIGZyb21CaWcsIHNwbGl0LCB0b0JpZyxcbiAgc2hyU0gsIHNoclNMLFxuICByb3RyU0gsIHJvdHJTTCwgcm90ckJILCByb3RyQkwsXG4gIHJvdHIzMkgsIHJvdHIzMkwsXG4gIHJvdGxTSCwgcm90bFNMLCByb3RsQkgsIHJvdGxCTCxcbiAgYWRkLCBhZGQzTCwgYWRkM0gsIGFkZDRMLCBhZGQ0SCwgYWRkNUgsIGFkZDVMLFxufTtcbmV4cG9ydCBkZWZhdWx0IHU2NDtcbiIsICJpbXBvcnQgeyBTSEEyIH0gZnJvbSAnLi9fc2hhMi5qcyc7XG5pbXBvcnQgdTY0IGZyb20gJy4vX3U2NC5qcyc7XG5pbXBvcnQgeyB3cmFwQ29uc3RydWN0b3IgfSBmcm9tICcuL3V0aWxzLmpzJztcblxuLy8gUm91bmQgY29udGFudHMgKGZpcnN0IDMyIGJpdHMgb2YgdGhlIGZyYWN0aW9uYWwgcGFydHMgb2YgdGhlIGN1YmUgcm9vdHMgb2YgdGhlIGZpcnN0IDgwIHByaW1lcyAyLi40MDkpOlxuLy8gcHJldHRpZXItaWdub3JlXG5jb25zdCBbU0hBNTEyX0toLCBTSEE1MTJfS2xdID0gLyogQF9fUFVSRV9fICovICgoKSA9PiB1NjQuc3BsaXQoW1xuICAnMHg0MjhhMmY5OGQ3MjhhZTIyJywgJzB4NzEzNzQ0OTEyM2VmNjVjZCcsICcweGI1YzBmYmNmZWM0ZDNiMmYnLCAnMHhlOWI1ZGJhNTgxODlkYmJjJyxcbiAgJzB4Mzk1NmMyNWJmMzQ4YjUzOCcsICcweDU5ZjExMWYxYjYwNWQwMTknLCAnMHg5MjNmODJhNGFmMTk0ZjliJywgJzB4YWIxYzVlZDVkYTZkODExOCcsXG4gICcweGQ4MDdhYTk4YTMwMzAyNDInLCAnMHgxMjgzNWIwMTQ1NzA2ZmJlJywgJzB4MjQzMTg1YmU0ZWU0YjI4YycsICcweDU1MGM3ZGMzZDVmZmI0ZTInLFxuICAnMHg3MmJlNWQ3NGYyN2I4OTZmJywgJzB4ODBkZWIxZmUzYjE2OTZiMScsICcweDliZGMwNmE3MjVjNzEyMzUnLCAnMHhjMTliZjE3NGNmNjkyNjk0JyxcbiAgJzB4ZTQ5YjY5YzE5ZWYxNGFkMicsICcweGVmYmU0Nzg2Mzg0ZjI1ZTMnLCAnMHgwZmMxOWRjNjhiOGNkNWI1JywgJzB4MjQwY2ExY2M3N2FjOWM2NScsXG4gICcweDJkZTkyYzZmNTkyYjAyNzUnLCAnMHg0YTc0ODRhYTZlYTZlNDgzJywgJzB4NWNiMGE5ZGNiZDQxZmJkNCcsICcweDc2Zjk4OGRhODMxMTUzYjUnLFxuICAnMHg5ODNlNTE1MmVlNjZkZmFiJywgJzB4YTgzMWM2NmQyZGI0MzIxMCcsICcweGIwMDMyN2M4OThmYjIxM2YnLCAnMHhiZjU5N2ZjN2JlZWYwZWU0JyxcbiAgJzB4YzZlMDBiZjMzZGE4OGZjMicsICcweGQ1YTc5MTQ3OTMwYWE3MjUnLCAnMHgwNmNhNjM1MWUwMDM4MjZmJywgJzB4MTQyOTI5NjcwYTBlNmU3MCcsXG4gICcweDI3YjcwYTg1NDZkMjJmZmMnLCAnMHgyZTFiMjEzODVjMjZjOTI2JywgJzB4NGQyYzZkZmM1YWM0MmFlZCcsICcweDUzMzgwZDEzOWQ5NWIzZGYnLFxuICAnMHg2NTBhNzM1NDhiYWY2M2RlJywgJzB4NzY2YTBhYmIzYzc3YjJhOCcsICcweDgxYzJjOTJlNDdlZGFlZTYnLCAnMHg5MjcyMmM4NTE0ODIzNTNiJyxcbiAgJzB4YTJiZmU4YTE0Y2YxMDM2NCcsICcweGE4MWE2NjRiYmM0MjMwMDEnLCAnMHhjMjRiOGI3MGQwZjg5NzkxJywgJzB4Yzc2YzUxYTMwNjU0YmUzMCcsXG4gICcweGQxOTJlODE5ZDZlZjUyMTgnLCAnMHhkNjk5MDYyNDU1NjVhOTEwJywgJzB4ZjQwZTM1ODU1NzcxMjAyYScsICcweDEwNmFhMDcwMzJiYmQxYjgnLFxuICAnMHgxOWE0YzExNmI4ZDJkMGM4JywgJzB4MWUzNzZjMDg1MTQxYWI1MycsICcweDI3NDg3NzRjZGY4ZWViOTknLCAnMHgzNGIwYmNiNWUxOWI0OGE4JyxcbiAgJzB4MzkxYzBjYjNjNWM5NWE2MycsICcweDRlZDhhYTRhZTM0MThhY2InLCAnMHg1YjljY2E0Zjc3NjNlMzczJywgJzB4NjgyZTZmZjNkNmIyYjhhMycsXG4gICcweDc0OGY4MmVlNWRlZmIyZmMnLCAnMHg3OGE1NjM2ZjQzMTcyZjYwJywgJzB4ODRjODc4MTRhMWYwYWI3MicsICcweDhjYzcwMjA4MWE2NDM5ZWMnLFxuICAnMHg5MGJlZmZmYTIzNjMxZTI4JywgJzB4YTQ1MDZjZWJkZTgyYmRlOScsICcweGJlZjlhM2Y3YjJjNjc5MTUnLCAnMHhjNjcxNzhmMmUzNzI1MzJiJyxcbiAgJzB4Y2EyNzNlY2VlYTI2NjE5YycsICcweGQxODZiOGM3MjFjMGMyMDcnLCAnMHhlYWRhN2RkNmNkZTBlYjFlJywgJzB4ZjU3ZDRmN2ZlZTZlZDE3OCcsXG4gICcweDA2ZjA2N2FhNzIxNzZmYmEnLCAnMHgwYTYzN2RjNWEyYzg5OGE2JywgJzB4MTEzZjk4MDRiZWY5MGRhZScsICcweDFiNzEwYjM1MTMxYzQ3MWInLFxuICAnMHgyOGRiNzdmNTIzMDQ3ZDg0JywgJzB4MzJjYWFiN2I0MGM3MjQ5MycsICcweDNjOWViZTBhMTVjOWJlYmMnLCAnMHg0MzFkNjdjNDljMTAwZDRjJyxcbiAgJzB4NGNjNWQ0YmVjYjNlNDJiNicsICcweDU5N2YyOTljZmM2NTdlMmEnLCAnMHg1ZmNiNmZhYjNhZDZmYWVjJywgJzB4NmM0NDE5OGM0YTQ3NTgxNydcbl0ubWFwKG4gPT4gQmlnSW50KG4pKSkpKCk7XG5cbi8vIFRlbXBvcmFyeSBidWZmZXIsIG5vdCB1c2VkIHRvIHN0b3JlIGFueXRoaW5nIGJldHdlZW4gcnVuc1xuY29uc3QgU0hBNTEyX1dfSCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgVWludDMyQXJyYXkoODApO1xuY29uc3QgU0hBNTEyX1dfTCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgVWludDMyQXJyYXkoODApO1xuZXhwb3J0IGNsYXNzIFNIQTUxMiBleHRlbmRzIFNIQTI8U0hBNTEyPiB7XG4gIC8vIFdlIGNhbm5vdCB1c2UgYXJyYXkgaGVyZSBzaW5jZSBhcnJheSBhbGxvd3MgaW5kZXhpbmcgYnkgdmFyaWFibGUgd2hpY2ggbWVhbnMgb3B0aW1pemVyL2NvbXBpbGVyIGNhbm5vdCB1c2UgcmVnaXN0ZXJzLlxuICAvLyBBbHNvIGxvb2tzIGNsZWFuZXIgYW5kIGVhc2llciB0byB2ZXJpZnkgd2l0aCBzcGVjLlxuICAvLyBJbml0aWFsIHN0YXRlIChmaXJzdCAzMiBiaXRzIG9mIHRoZSBmcmFjdGlvbmFsIHBhcnRzIG9mIHRoZSBzcXVhcmUgcm9vdHMgb2YgdGhlIGZpcnN0IDggcHJpbWVzIDIuLjE5KTpcbiAgLy8gaCAtLSBoaWdoIDMyIGJpdHMsIGwgLS0gbG93IDMyIGJpdHNcbiAgQWggPSAweDZhMDllNjY3IHwgMDtcbiAgQWwgPSAweGYzYmNjOTA4IHwgMDtcbiAgQmggPSAweGJiNjdhZTg1IHwgMDtcbiAgQmwgPSAweDg0Y2FhNzNiIHwgMDtcbiAgQ2ggPSAweDNjNmVmMzcyIHwgMDtcbiAgQ2wgPSAweGZlOTRmODJiIHwgMDtcbiAgRGggPSAweGE1NGZmNTNhIHwgMDtcbiAgRGwgPSAweDVmMWQzNmYxIHwgMDtcbiAgRWggPSAweDUxMGU1MjdmIHwgMDtcbiAgRWwgPSAweGFkZTY4MmQxIHwgMDtcbiAgRmggPSAweDliMDU2ODhjIHwgMDtcbiAgRmwgPSAweDJiM2U2YzFmIHwgMDtcbiAgR2ggPSAweDFmODNkOWFiIHwgMDtcbiAgR2wgPSAweGZiNDFiZDZiIHwgMDtcbiAgSGggPSAweDViZTBjZDE5IHwgMDtcbiAgSGwgPSAweDEzN2UyMTc5IHwgMDtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigxMjgsIDY0LCAxNiwgZmFsc2UpO1xuICB9XG4gIC8vIHByZXR0aWVyLWlnbm9yZVxuICBwcm90ZWN0ZWQgZ2V0KCk6IFtcbiAgICBudW1iZXIsIG51bWJlciwgbnVtYmVyLCBudW1iZXIsIG51bWJlciwgbnVtYmVyLCBudW1iZXIsIG51bWJlcixcbiAgICBudW1iZXIsIG51bWJlciwgbnVtYmVyLCBudW1iZXIsIG51bWJlciwgbnVtYmVyLCBudW1iZXIsIG51bWJlclxuICBdIHtcbiAgICBjb25zdCB7IEFoLCBBbCwgQmgsIEJsLCBDaCwgQ2wsIERoLCBEbCwgRWgsIEVsLCBGaCwgRmwsIEdoLCBHbCwgSGgsIEhsIH0gPSB0aGlzO1xuICAgIHJldHVybiBbQWgsIEFsLCBCaCwgQmwsIENoLCBDbCwgRGgsIERsLCBFaCwgRWwsIEZoLCBGbCwgR2gsIEdsLCBIaCwgSGxdO1xuICB9XG4gIC8vIHByZXR0aWVyLWlnbm9yZVxuICBwcm90ZWN0ZWQgc2V0KFxuICAgIEFoOiBudW1iZXIsIEFsOiBudW1iZXIsIEJoOiBudW1iZXIsIEJsOiBudW1iZXIsIENoOiBudW1iZXIsIENsOiBudW1iZXIsIERoOiBudW1iZXIsIERsOiBudW1iZXIsXG4gICAgRWg6IG51bWJlciwgRWw6IG51bWJlciwgRmg6IG51bWJlciwgRmw6IG51bWJlciwgR2g6IG51bWJlciwgR2w6IG51bWJlciwgSGg6IG51bWJlciwgSGw6IG51bWJlclxuICApIHtcbiAgICB0aGlzLkFoID0gQWggfCAwO1xuICAgIHRoaXMuQWwgPSBBbCB8IDA7XG4gICAgdGhpcy5CaCA9IEJoIHwgMDtcbiAgICB0aGlzLkJsID0gQmwgfCAwO1xuICAgIHRoaXMuQ2ggPSBDaCB8IDA7XG4gICAgdGhpcy5DbCA9IENsIHwgMDtcbiAgICB0aGlzLkRoID0gRGggfCAwO1xuICAgIHRoaXMuRGwgPSBEbCB8IDA7XG4gICAgdGhpcy5FaCA9IEVoIHwgMDtcbiAgICB0aGlzLkVsID0gRWwgfCAwO1xuICAgIHRoaXMuRmggPSBGaCB8IDA7XG4gICAgdGhpcy5GbCA9IEZsIHwgMDtcbiAgICB0aGlzLkdoID0gR2ggfCAwO1xuICAgIHRoaXMuR2wgPSBHbCB8IDA7XG4gICAgdGhpcy5IaCA9IEhoIHwgMDtcbiAgICB0aGlzLkhsID0gSGwgfCAwO1xuICB9XG4gIHByb3RlY3RlZCBwcm9jZXNzKHZpZXc6IERhdGFWaWV3LCBvZmZzZXQ6IG51bWJlcikge1xuICAgIC8vIEV4dGVuZCB0aGUgZmlyc3QgMTYgd29yZHMgaW50byB0aGUgcmVtYWluaW5nIDY0IHdvcmRzIHdbMTYuLjc5XSBvZiB0aGUgbWVzc2FnZSBzY2hlZHVsZSBhcnJheVxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgMTY7IGkrKywgb2Zmc2V0ICs9IDQpIHtcbiAgICAgIFNIQTUxMl9XX0hbaV0gPSB2aWV3LmdldFVpbnQzMihvZmZzZXQpO1xuICAgICAgU0hBNTEyX1dfTFtpXSA9IHZpZXcuZ2V0VWludDMyKChvZmZzZXQgKz0gNCkpO1xuICAgIH1cbiAgICBmb3IgKGxldCBpID0gMTY7IGkgPCA4MDsgaSsrKSB7XG4gICAgICAvLyBzMCA6PSAod1tpLTE1XSByaWdodHJvdGF0ZSAxKSB4b3IgKHdbaS0xNV0gcmlnaHRyb3RhdGUgOCkgeG9yICh3W2ktMTVdIHJpZ2h0c2hpZnQgNylcbiAgICAgIGNvbnN0IFcxNWggPSBTSEE1MTJfV19IW2kgLSAxNV0gfCAwO1xuICAgICAgY29uc3QgVzE1bCA9IFNIQTUxMl9XX0xbaSAtIDE1XSB8IDA7XG4gICAgICBjb25zdCBzMGggPSB1NjQucm90clNIKFcxNWgsIFcxNWwsIDEpIF4gdTY0LnJvdHJTSChXMTVoLCBXMTVsLCA4KSBeIHU2NC5zaHJTSChXMTVoLCBXMTVsLCA3KTtcbiAgICAgIGNvbnN0IHMwbCA9IHU2NC5yb3RyU0woVzE1aCwgVzE1bCwgMSkgXiB1NjQucm90clNMKFcxNWgsIFcxNWwsIDgpIF4gdTY0LnNoclNMKFcxNWgsIFcxNWwsIDcpO1xuICAgICAgLy8gczEgOj0gKHdbaS0yXSByaWdodHJvdGF0ZSAxOSkgeG9yICh3W2ktMl0gcmlnaHRyb3RhdGUgNjEpIHhvciAod1tpLTJdIHJpZ2h0c2hpZnQgNilcbiAgICAgIGNvbnN0IFcyaCA9IFNIQTUxMl9XX0hbaSAtIDJdIHwgMDtcbiAgICAgIGNvbnN0IFcybCA9IFNIQTUxMl9XX0xbaSAtIDJdIHwgMDtcbiAgICAgIGNvbnN0IHMxaCA9IHU2NC5yb3RyU0goVzJoLCBXMmwsIDE5KSBeIHU2NC5yb3RyQkgoVzJoLCBXMmwsIDYxKSBeIHU2NC5zaHJTSChXMmgsIFcybCwgNik7XG4gICAgICBjb25zdCBzMWwgPSB1NjQucm90clNMKFcyaCwgVzJsLCAxOSkgXiB1NjQucm90ckJMKFcyaCwgVzJsLCA2MSkgXiB1NjQuc2hyU0woVzJoLCBXMmwsIDYpO1xuICAgICAgLy8gU0hBMjU2X1dbaV0gPSBzMCArIHMxICsgU0hBMjU2X1dbaSAtIDddICsgU0hBMjU2X1dbaSAtIDE2XTtcbiAgICAgIGNvbnN0IFNVTWwgPSB1NjQuYWRkNEwoczBsLCBzMWwsIFNIQTUxMl9XX0xbaSAtIDddLCBTSEE1MTJfV19MW2kgLSAxNl0pO1xuICAgICAgY29uc3QgU1VNaCA9IHU2NC5hZGQ0SChTVU1sLCBzMGgsIHMxaCwgU0hBNTEyX1dfSFtpIC0gN10sIFNIQTUxMl9XX0hbaSAtIDE2XSk7XG4gICAgICBTSEE1MTJfV19IW2ldID0gU1VNaCB8IDA7XG4gICAgICBTSEE1MTJfV19MW2ldID0gU1VNbCB8IDA7XG4gICAgfVxuICAgIGxldCB7IEFoLCBBbCwgQmgsIEJsLCBDaCwgQ2wsIERoLCBEbCwgRWgsIEVsLCBGaCwgRmwsIEdoLCBHbCwgSGgsIEhsIH0gPSB0aGlzO1xuICAgIC8vIENvbXByZXNzaW9uIGZ1bmN0aW9uIG1haW4gbG9vcCwgODAgcm91bmRzXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCA4MDsgaSsrKSB7XG4gICAgICAvLyBTMSA6PSAoZSByaWdodHJvdGF0ZSAxNCkgeG9yIChlIHJpZ2h0cm90YXRlIDE4KSB4b3IgKGUgcmlnaHRyb3RhdGUgNDEpXG4gICAgICBjb25zdCBzaWdtYTFoID0gdTY0LnJvdHJTSChFaCwgRWwsIDE0KSBeIHU2NC5yb3RyU0goRWgsIEVsLCAxOCkgXiB1NjQucm90ckJIKEVoLCBFbCwgNDEpO1xuICAgICAgY29uc3Qgc2lnbWExbCA9IHU2NC5yb3RyU0woRWgsIEVsLCAxNCkgXiB1NjQucm90clNMKEVoLCBFbCwgMTgpIF4gdTY0LnJvdHJCTChFaCwgRWwsIDQxKTtcbiAgICAgIC8vY29uc3QgVDEgPSAoSCArIHNpZ21hMSArIENoaShFLCBGLCBHKSArIFNIQTI1Nl9LW2ldICsgU0hBMjU2X1dbaV0pIHwgMDtcbiAgICAgIGNvbnN0IENISWggPSAoRWggJiBGaCkgXiAofkVoICYgR2gpO1xuICAgICAgY29uc3QgQ0hJbCA9IChFbCAmIEZsKSBeICh+RWwgJiBHbCk7XG4gICAgICAvLyBUMSA9IEggKyBzaWdtYTEgKyBDaGkoRSwgRiwgRykgKyBTSEE1MTJfS1tpXSArIFNIQTUxMl9XW2ldXG4gICAgICAvLyBwcmV0dGllci1pZ25vcmVcbiAgICAgIGNvbnN0IFQxbGwgPSB1NjQuYWRkNUwoSGwsIHNpZ21hMWwsIENISWwsIFNIQTUxMl9LbFtpXSwgU0hBNTEyX1dfTFtpXSk7XG4gICAgICBjb25zdCBUMWggPSB1NjQuYWRkNUgoVDFsbCwgSGgsIHNpZ21hMWgsIENISWgsIFNIQTUxMl9LaFtpXSwgU0hBNTEyX1dfSFtpXSk7XG4gICAgICBjb25zdCBUMWwgPSBUMWxsIHwgMDtcbiAgICAgIC8vIFMwIDo9IChhIHJpZ2h0cm90YXRlIDI4KSB4b3IgKGEgcmlnaHRyb3RhdGUgMzQpIHhvciAoYSByaWdodHJvdGF0ZSAzOSlcbiAgICAgIGNvbnN0IHNpZ21hMGggPSB1NjQucm90clNIKEFoLCBBbCwgMjgpIF4gdTY0LnJvdHJCSChBaCwgQWwsIDM0KSBeIHU2NC5yb3RyQkgoQWgsIEFsLCAzOSk7XG4gICAgICBjb25zdCBzaWdtYTBsID0gdTY0LnJvdHJTTChBaCwgQWwsIDI4KSBeIHU2NC5yb3RyQkwoQWgsIEFsLCAzNCkgXiB1NjQucm90ckJMKEFoLCBBbCwgMzkpO1xuICAgICAgY29uc3QgTUFKaCA9IChBaCAmIEJoKSBeIChBaCAmIENoKSBeIChCaCAmIENoKTtcbiAgICAgIGNvbnN0IE1BSmwgPSAoQWwgJiBCbCkgXiAoQWwgJiBDbCkgXiAoQmwgJiBDbCk7XG4gICAgICBIaCA9IEdoIHwgMDtcbiAgICAgIEhsID0gR2wgfCAwO1xuICAgICAgR2ggPSBGaCB8IDA7XG4gICAgICBHbCA9IEZsIHwgMDtcbiAgICAgIEZoID0gRWggfCAwO1xuICAgICAgRmwgPSBFbCB8IDA7XG4gICAgICAoeyBoOiBFaCwgbDogRWwgfSA9IHU2NC5hZGQoRGggfCAwLCBEbCB8IDAsIFQxaCB8IDAsIFQxbCB8IDApKTtcbiAgICAgIERoID0gQ2ggfCAwO1xuICAgICAgRGwgPSBDbCB8IDA7XG4gICAgICBDaCA9IEJoIHwgMDtcbiAgICAgIENsID0gQmwgfCAwO1xuICAgICAgQmggPSBBaCB8IDA7XG4gICAgICBCbCA9IEFsIHwgMDtcbiAgICAgIGNvbnN0IEFsbCA9IHU2NC5hZGQzTChUMWwsIHNpZ21hMGwsIE1BSmwpO1xuICAgICAgQWggPSB1NjQuYWRkM0goQWxsLCBUMWgsIHNpZ21hMGgsIE1BSmgpO1xuICAgICAgQWwgPSBBbGwgfCAwO1xuICAgIH1cbiAgICAvLyBBZGQgdGhlIGNvbXByZXNzZWQgY2h1bmsgdG8gdGhlIGN1cnJlbnQgaGFzaCB2YWx1ZVxuICAgICh7IGg6IEFoLCBsOiBBbCB9ID0gdTY0LmFkZCh0aGlzLkFoIHwgMCwgdGhpcy5BbCB8IDAsIEFoIHwgMCwgQWwgfCAwKSk7XG4gICAgKHsgaDogQmgsIGw6IEJsIH0gPSB1NjQuYWRkKHRoaXMuQmggfCAwLCB0aGlzLkJsIHwgMCwgQmggfCAwLCBCbCB8IDApKTtcbiAgICAoeyBoOiBDaCwgbDogQ2wgfSA9IHU2NC5hZGQodGhpcy5DaCB8IDAsIHRoaXMuQ2wgfCAwLCBDaCB8IDAsIENsIHwgMCkpO1xuICAgICh7IGg6IERoLCBsOiBEbCB9ID0gdTY0LmFkZCh0aGlzLkRoIHwgMCwgdGhpcy5EbCB8IDAsIERoIHwgMCwgRGwgfCAwKSk7XG4gICAgKHsgaDogRWgsIGw6IEVsIH0gPSB1NjQuYWRkKHRoaXMuRWggfCAwLCB0aGlzLkVsIHwgMCwgRWggfCAwLCBFbCB8IDApKTtcbiAgICAoeyBoOiBGaCwgbDogRmwgfSA9IHU2NC5hZGQodGhpcy5GaCB8IDAsIHRoaXMuRmwgfCAwLCBGaCB8IDAsIEZsIHwgMCkpO1xuICAgICh7IGg6IEdoLCBsOiBHbCB9ID0gdTY0LmFkZCh0aGlzLkdoIHwgMCwgdGhpcy5HbCB8IDAsIEdoIHwgMCwgR2wgfCAwKSk7XG4gICAgKHsgaDogSGgsIGw6IEhsIH0gPSB1NjQuYWRkKHRoaXMuSGggfCAwLCB0aGlzLkhsIHwgMCwgSGggfCAwLCBIbCB8IDApKTtcbiAgICB0aGlzLnNldChBaCwgQWwsIEJoLCBCbCwgQ2gsIENsLCBEaCwgRGwsIEVoLCBFbCwgRmgsIEZsLCBHaCwgR2wsIEhoLCBIbCk7XG4gIH1cbiAgcHJvdGVjdGVkIHJvdW5kQ2xlYW4oKSB7XG4gICAgU0hBNTEyX1dfSC5maWxsKDApO1xuICAgIFNIQTUxMl9XX0wuZmlsbCgwKTtcbiAgfVxuICBkZXN0cm95KCkge1xuICAgIHRoaXMuYnVmZmVyLmZpbGwoMCk7XG4gICAgdGhpcy5zZXQoMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCk7XG4gIH1cbn1cblxuY2xhc3MgU0hBNTEyXzIyNCBleHRlbmRzIFNIQTUxMiB7XG4gIC8vIGggLS0gaGlnaCAzMiBiaXRzLCBsIC0tIGxvdyAzMiBiaXRzXG4gIEFoID0gMHg4YzNkMzdjOCB8IDA7XG4gIEFsID0gMHgxOTU0NGRhMiB8IDA7XG4gIEJoID0gMHg3M2UxOTk2NiB8IDA7XG4gIEJsID0gMHg4OWRjZDRkNiB8IDA7XG4gIENoID0gMHgxZGZhYjdhZSB8IDA7XG4gIENsID0gMHgzMmZmOWM4MiB8IDA7XG4gIERoID0gMHg2NzlkZDUxNCB8IDA7XG4gIERsID0gMHg1ODJmOWZjZiB8IDA7XG4gIEVoID0gMHgwZjZkMmI2OSB8IDA7XG4gIEVsID0gMHg3YmQ0NGRhOCB8IDA7XG4gIEZoID0gMHg3N2UzNmY3MyB8IDA7XG4gIEZsID0gMHgwNGM0ODk0MiB8IDA7XG4gIEdoID0gMHgzZjlkODVhOCB8IDA7XG4gIEdsID0gMHg2YTFkMzZjOCB8IDA7XG4gIEhoID0gMHgxMTEyZTZhZCB8IDA7XG4gIEhsID0gMHg5MWQ2OTJhMSB8IDA7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLm91dHB1dExlbiA9IDI4O1xuICB9XG59XG5cbmNsYXNzIFNIQTUxMl8yNTYgZXh0ZW5kcyBTSEE1MTIge1xuICAvLyBoIC0tIGhpZ2ggMzIgYml0cywgbCAtLSBsb3cgMzIgYml0c1xuICBBaCA9IDB4MjIzMTIxOTQgfCAwO1xuICBBbCA9IDB4ZmMyYmY3MmMgfCAwO1xuICBCaCA9IDB4OWY1NTVmYTMgfCAwO1xuICBCbCA9IDB4Yzg0YzY0YzIgfCAwO1xuICBDaCA9IDB4MjM5M2I4NmIgfCAwO1xuICBDbCA9IDB4NmY1M2IxNTEgfCAwO1xuICBEaCA9IDB4OTYzODc3MTkgfCAwO1xuICBEbCA9IDB4NTk0MGVhYmQgfCAwO1xuICBFaCA9IDB4OTYyODNlZTIgfCAwO1xuICBFbCA9IDB4YTg4ZWZmZTMgfCAwO1xuICBGaCA9IDB4YmU1ZTFlMjUgfCAwO1xuICBGbCA9IDB4NTM4NjM5OTIgfCAwO1xuICBHaCA9IDB4MmIwMTk5ZmMgfCAwO1xuICBHbCA9IDB4MmM4NWI4YWEgfCAwO1xuICBIaCA9IDB4MGViNzJkZGMgfCAwO1xuICBIbCA9IDB4ODFjNTJjYTIgfCAwO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5vdXRwdXRMZW4gPSAzMjtcbiAgfVxufVxuXG5jbGFzcyBTSEEzODQgZXh0ZW5kcyBTSEE1MTIge1xuICAvLyBoIC0tIGhpZ2ggMzIgYml0cywgbCAtLSBsb3cgMzIgYml0c1xuICBBaCA9IDB4Y2JiYjlkNWQgfCAwO1xuICBBbCA9IDB4YzEwNTllZDggfCAwO1xuICBCaCA9IDB4NjI5YTI5MmEgfCAwO1xuICBCbCA9IDB4MzY3Y2Q1MDcgfCAwO1xuICBDaCA9IDB4OTE1OTAxNWEgfCAwO1xuICBDbCA9IDB4MzA3MGRkMTcgfCAwO1xuICBEaCA9IDB4MTUyZmVjZDggfCAwO1xuICBEbCA9IDB4ZjcwZTU5MzkgfCAwO1xuICBFaCA9IDB4NjczMzI2NjcgfCAwO1xuICBFbCA9IDB4ZmZjMDBiMzEgfCAwO1xuICBGaCA9IDB4OGViNDRhODcgfCAwO1xuICBGbCA9IDB4Njg1ODE1MTEgfCAwO1xuICBHaCA9IDB4ZGIwYzJlMGQgfCAwO1xuICBHbCA9IDB4NjRmOThmYTcgfCAwO1xuICBIaCA9IDB4NDdiNTQ4MWQgfCAwO1xuICBIbCA9IDB4YmVmYTRmYTQgfCAwO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5vdXRwdXRMZW4gPSA0ODtcbiAgfVxufVxuXG5leHBvcnQgY29uc3Qgc2hhNTEyID0gLyogQF9fUFVSRV9fICovIHdyYXBDb25zdHJ1Y3RvcigoKSA9PiBuZXcgU0hBNTEyKCkpO1xuZXhwb3J0IGNvbnN0IHNoYTUxMl8yMjQgPSAvKiBAX19QVVJFX18gKi8gd3JhcENvbnN0cnVjdG9yKCgpID0+IG5ldyBTSEE1MTJfMjI0KCkpO1xuZXhwb3J0IGNvbnN0IHNoYTUxMl8yNTYgPSAvKiBAX19QVVJFX18gKi8gd3JhcENvbnN0cnVjdG9yKCgpID0+IG5ldyBTSEE1MTJfMjU2KCkpO1xuZXhwb3J0IGNvbnN0IHNoYTM4NCA9IC8qIEBfX1BVUkVfXyAqLyB3cmFwQ29uc3RydWN0b3IoKCkgPT4gbmV3IFNIQTM4NCgpKTtcbiIsICIvKiEgbm9ibGUtY3VydmVzIC0gTUlUIExpY2Vuc2UgKGMpIDIwMjIgUGF1bCBNaWxsZXIgKHBhdWxtaWxsci5jb20pICovXG4vLyAxMDAgbGluZXMgb2YgY29kZSBpbiB0aGUgZmlsZSBhcmUgZHVwbGljYXRlZCBmcm9tIG5vYmxlLWhhc2hlcyAodXRpbHMpLlxuLy8gVGhpcyBpcyBPSzogYGFic3RyYWN0YCBkaXJlY3RvcnkgZG9lcyBub3QgdXNlIG5vYmxlLWhhc2hlcy5cbi8vIFVzZXIgbWF5IG9wdC1pbiBpbnRvIHVzaW5nIGRpZmZlcmVudCBoYXNoaW5nIGxpYnJhcnkuIFRoaXMgd2F5LCBub2JsZS1oYXNoZXNcbi8vIHdvbid0IGJlIGluY2x1ZGVkIGludG8gdGhlaXIgYnVuZGxlLlxuY29uc3QgXzBuID0gQmlnSW50KDApO1xuY29uc3QgXzFuID0gQmlnSW50KDEpO1xuY29uc3QgXzJuID0gQmlnSW50KDIpO1xuY29uc3QgdThhID0gKGE6IGFueSk6IGEgaXMgVWludDhBcnJheSA9PiBhIGluc3RhbmNlb2YgVWludDhBcnJheTtcbmV4cG9ydCB0eXBlIEhleCA9IFVpbnQ4QXJyYXkgfCBzdHJpbmc7IC8vIGhleCBzdHJpbmdzIGFyZSBhY2NlcHRlZCBmb3Igc2ltcGxpY2l0eVxuZXhwb3J0IHR5cGUgUHJpdktleSA9IEhleCB8IGJpZ2ludDsgLy8gYmlnaW50cyBhcmUgYWNjZXB0ZWQgdG8gZWFzZSBsZWFybmluZyBjdXJ2ZVxuZXhwb3J0IHR5cGUgQ0hhc2ggPSB7XG4gIChtZXNzYWdlOiBVaW50OEFycmF5IHwgc3RyaW5nKTogVWludDhBcnJheTtcbiAgYmxvY2tMZW46IG51bWJlcjtcbiAgb3V0cHV0TGVuOiBudW1iZXI7XG4gIGNyZWF0ZShvcHRzPzogeyBka0xlbj86IG51bWJlciB9KTogYW55OyAvLyBGb3Igc2hha2Vcbn07XG5leHBvcnQgdHlwZSBGSGFzaCA9IChtZXNzYWdlOiBVaW50OEFycmF5IHwgc3RyaW5nKSA9PiBVaW50OEFycmF5O1xuXG5jb25zdCBoZXhlcyA9IC8qIEBfX1BVUkVfXyAqLyBBcnJheS5mcm9tKHsgbGVuZ3RoOiAyNTYgfSwgKF8sIGkpID0+XG4gIGkudG9TdHJpbmcoMTYpLnBhZFN0YXJ0KDIsICcwJylcbik7XG4vKipcbiAqIEBleGFtcGxlIGJ5dGVzVG9IZXgoVWludDhBcnJheS5mcm9tKFsweGNhLCAweGZlLCAweDAxLCAweDIzXSkpIC8vICdjYWZlMDEyMydcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJ5dGVzVG9IZXgoYnl0ZXM6IFVpbnQ4QXJyYXkpOiBzdHJpbmcge1xuICBpZiAoIXU4YShieXRlcykpIHRocm93IG5ldyBFcnJvcignVWludDhBcnJheSBleHBlY3RlZCcpO1xuICAvLyBwcmUtY2FjaGluZyBpbXByb3ZlcyB0aGUgc3BlZWQgNnhcbiAgbGV0IGhleCA9ICcnO1xuICBmb3IgKGxldCBpID0gMDsgaSA8IGJ5dGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgaGV4ICs9IGhleGVzW2J5dGVzW2ldXTtcbiAgfVxuICByZXR1cm4gaGV4O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbnVtYmVyVG9IZXhVbnBhZGRlZChudW06IG51bWJlciB8IGJpZ2ludCk6IHN0cmluZyB7XG4gIGNvbnN0IGhleCA9IG51bS50b1N0cmluZygxNik7XG4gIHJldHVybiBoZXgubGVuZ3RoICYgMSA/IGAwJHtoZXh9YCA6IGhleDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGhleFRvTnVtYmVyKGhleDogc3RyaW5nKTogYmlnaW50IHtcbiAgaWYgKHR5cGVvZiBoZXggIT09ICdzdHJpbmcnKSB0aHJvdyBuZXcgRXJyb3IoJ2hleCBzdHJpbmcgZXhwZWN0ZWQsIGdvdCAnICsgdHlwZW9mIGhleCk7XG4gIC8vIEJpZyBFbmRpYW5cbiAgcmV0dXJuIEJpZ0ludChoZXggPT09ICcnID8gJzAnIDogYDB4JHtoZXh9YCk7XG59XG5cbi8qKlxuICogQGV4YW1wbGUgaGV4VG9CeXRlcygnY2FmZTAxMjMnKSAvLyBVaW50OEFycmF5LmZyb20oWzB4Y2EsIDB4ZmUsIDB4MDEsIDB4MjNdKVxuICovXG5leHBvcnQgZnVuY3Rpb24gaGV4VG9CeXRlcyhoZXg6IHN0cmluZyk6IFVpbnQ4QXJyYXkge1xuICBpZiAodHlwZW9mIGhleCAhPT0gJ3N0cmluZycpIHRocm93IG5ldyBFcnJvcignaGV4IHN0cmluZyBleHBlY3RlZCwgZ290ICcgKyB0eXBlb2YgaGV4KTtcbiAgY29uc3QgbGVuID0gaGV4Lmxlbmd0aDtcbiAgaWYgKGxlbiAlIDIpIHRocm93IG5ldyBFcnJvcigncGFkZGVkIGhleCBzdHJpbmcgZXhwZWN0ZWQsIGdvdCB1bnBhZGRlZCBoZXggb2YgbGVuZ3RoICcgKyBsZW4pO1xuICBjb25zdCBhcnJheSA9IG5ldyBVaW50OEFycmF5KGxlbiAvIDIpO1xuICBmb3IgKGxldCBpID0gMDsgaSA8IGFycmF5Lmxlbmd0aDsgaSsrKSB7XG4gICAgY29uc3QgaiA9IGkgKiAyO1xuICAgIGNvbnN0IGhleEJ5dGUgPSBoZXguc2xpY2UoaiwgaiArIDIpO1xuICAgIGNvbnN0IGJ5dGUgPSBOdW1iZXIucGFyc2VJbnQoaGV4Qnl0ZSwgMTYpO1xuICAgIGlmIChOdW1iZXIuaXNOYU4oYnl0ZSkgfHwgYnl0ZSA8IDApIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBieXRlIHNlcXVlbmNlJyk7XG4gICAgYXJyYXlbaV0gPSBieXRlO1xuICB9XG4gIHJldHVybiBhcnJheTtcbn1cblxuLy8gQkU6IEJpZyBFbmRpYW4sIExFOiBMaXR0bGUgRW5kaWFuXG5leHBvcnQgZnVuY3Rpb24gYnl0ZXNUb051bWJlckJFKGJ5dGVzOiBVaW50OEFycmF5KTogYmlnaW50IHtcbiAgcmV0dXJuIGhleFRvTnVtYmVyKGJ5dGVzVG9IZXgoYnl0ZXMpKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBieXRlc1RvTnVtYmVyTEUoYnl0ZXM6IFVpbnQ4QXJyYXkpOiBiaWdpbnQge1xuICBpZiAoIXU4YShieXRlcykpIHRocm93IG5ldyBFcnJvcignVWludDhBcnJheSBleHBlY3RlZCcpO1xuICByZXR1cm4gaGV4VG9OdW1iZXIoYnl0ZXNUb0hleChVaW50OEFycmF5LmZyb20oYnl0ZXMpLnJldmVyc2UoKSkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbnVtYmVyVG9CeXRlc0JFKG46IG51bWJlciB8IGJpZ2ludCwgbGVuOiBudW1iZXIpOiBVaW50OEFycmF5IHtcbiAgcmV0dXJuIGhleFRvQnl0ZXMobi50b1N0cmluZygxNikucGFkU3RhcnQobGVuICogMiwgJzAnKSk7XG59XG5leHBvcnQgZnVuY3Rpb24gbnVtYmVyVG9CeXRlc0xFKG46IG51bWJlciB8IGJpZ2ludCwgbGVuOiBudW1iZXIpOiBVaW50OEFycmF5IHtcbiAgcmV0dXJuIG51bWJlclRvQnl0ZXNCRShuLCBsZW4pLnJldmVyc2UoKTtcbn1cbi8vIFVucGFkZGVkLCByYXJlbHkgdXNlZFxuZXhwb3J0IGZ1bmN0aW9uIG51bWJlclRvVmFyQnl0ZXNCRShuOiBudW1iZXIgfCBiaWdpbnQpOiBVaW50OEFycmF5IHtcbiAgcmV0dXJuIGhleFRvQnl0ZXMobnVtYmVyVG9IZXhVbnBhZGRlZChuKSk7XG59XG5cbi8qKlxuICogVGFrZXMgaGV4IHN0cmluZyBvciBVaW50OEFycmF5LCBjb252ZXJ0cyB0byBVaW50OEFycmF5LlxuICogVmFsaWRhdGVzIG91dHB1dCBsZW5ndGguXG4gKiBXaWxsIHRocm93IGVycm9yIGZvciBvdGhlciB0eXBlcy5cbiAqIEBwYXJhbSB0aXRsZSBkZXNjcmlwdGl2ZSB0aXRsZSBmb3IgYW4gZXJyb3IgZS5nLiAncHJpdmF0ZSBrZXknXG4gKiBAcGFyYW0gaGV4IGhleCBzdHJpbmcgb3IgVWludDhBcnJheVxuICogQHBhcmFtIGV4cGVjdGVkTGVuZ3RoIG9wdGlvbmFsLCB3aWxsIGNvbXBhcmUgdG8gcmVzdWx0IGFycmF5J3MgbGVuZ3RoXG4gKiBAcmV0dXJuc1xuICovXG5leHBvcnQgZnVuY3Rpb24gZW5zdXJlQnl0ZXModGl0bGU6IHN0cmluZywgaGV4OiBIZXgsIGV4cGVjdGVkTGVuZ3RoPzogbnVtYmVyKTogVWludDhBcnJheSB7XG4gIGxldCByZXM6IFVpbnQ4QXJyYXk7XG4gIGlmICh0eXBlb2YgaGV4ID09PSAnc3RyaW5nJykge1xuICAgIHRyeSB7XG4gICAgICByZXMgPSBoZXhUb0J5dGVzKGhleCk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGAke3RpdGxlfSBtdXN0IGJlIHZhbGlkIGhleCBzdHJpbmcsIGdvdCBcIiR7aGV4fVwiLiBDYXVzZTogJHtlfWApO1xuICAgIH1cbiAgfSBlbHNlIGlmICh1OGEoaGV4KSkge1xuICAgIC8vIFVpbnQ4QXJyYXkuZnJvbSgpIGluc3RlYWQgb2YgaGFzaC5zbGljZSgpIGJlY2F1c2Ugbm9kZS5qcyBCdWZmZXJcbiAgICAvLyBpcyBpbnN0YW5jZSBvZiBVaW50OEFycmF5LCBhbmQgaXRzIHNsaWNlKCkgY3JlYXRlcyAqKm11dGFibGUqKiBjb3B5XG4gICAgcmVzID0gVWludDhBcnJheS5mcm9tKGhleCk7XG4gIH0gZWxzZSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGAke3RpdGxlfSBtdXN0IGJlIGhleCBzdHJpbmcgb3IgVWludDhBcnJheWApO1xuICB9XG4gIGNvbnN0IGxlbiA9IHJlcy5sZW5ndGg7XG4gIGlmICh0eXBlb2YgZXhwZWN0ZWRMZW5ndGggPT09ICdudW1iZXInICYmIGxlbiAhPT0gZXhwZWN0ZWRMZW5ndGgpXG4gICAgdGhyb3cgbmV3IEVycm9yKGAke3RpdGxlfSBleHBlY3RlZCAke2V4cGVjdGVkTGVuZ3RofSBieXRlcywgZ290ICR7bGVufWApO1xuICByZXR1cm4gcmVzO1xufVxuXG4vKipcbiAqIENvcGllcyBzZXZlcmFsIFVpbnQ4QXJyYXlzIGludG8gb25lLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY29uY2F0Qnl0ZXMoLi4uYXJyYXlzOiBVaW50OEFycmF5W10pOiBVaW50OEFycmF5IHtcbiAgY29uc3QgciA9IG5ldyBVaW50OEFycmF5KGFycmF5cy5yZWR1Y2UoKHN1bSwgYSkgPT4gc3VtICsgYS5sZW5ndGgsIDApKTtcbiAgbGV0IHBhZCA9IDA7IC8vIHdhbGsgdGhyb3VnaCBlYWNoIGl0ZW0sIGVuc3VyZSB0aGV5IGhhdmUgcHJvcGVyIHR5cGVcbiAgYXJyYXlzLmZvckVhY2goKGEpID0+IHtcbiAgICBpZiAoIXU4YShhKSkgdGhyb3cgbmV3IEVycm9yKCdVaW50OEFycmF5IGV4cGVjdGVkJyk7XG4gICAgci5zZXQoYSwgcGFkKTtcbiAgICBwYWQgKz0gYS5sZW5ndGg7XG4gIH0pO1xuICByZXR1cm4gcjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGVxdWFsQnl0ZXMoYjE6IFVpbnQ4QXJyYXksIGIyOiBVaW50OEFycmF5KSB7XG4gIC8vIFdlIGRvbid0IGNhcmUgYWJvdXQgdGltaW5nIGF0dGFja3MgaGVyZVxuICBpZiAoYjEubGVuZ3RoICE9PSBiMi5sZW5ndGgpIHJldHVybiBmYWxzZTtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBiMS5sZW5ndGg7IGkrKykgaWYgKGIxW2ldICE9PSBiMltpXSkgcmV0dXJuIGZhbHNlO1xuICByZXR1cm4gdHJ1ZTtcbn1cblxuLy8gR2xvYmFsIHN5bWJvbHMgaW4gYm90aCBicm93c2VycyBhbmQgTm9kZS5qcyBzaW5jZSB2MTFcbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vbWljcm9zb2Z0L1R5cGVTY3JpcHQvaXNzdWVzLzMxNTM1XG5kZWNsYXJlIGNvbnN0IFRleHRFbmNvZGVyOiBhbnk7XG5cbi8qKlxuICogQGV4YW1wbGUgdXRmOFRvQnl0ZXMoJ2FiYycpIC8vIG5ldyBVaW50OEFycmF5KFs5NywgOTgsIDk5XSlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHV0ZjhUb0J5dGVzKHN0cjogc3RyaW5nKTogVWludDhBcnJheSB7XG4gIGlmICh0eXBlb2Ygc3RyICE9PSAnc3RyaW5nJykgdGhyb3cgbmV3IEVycm9yKGB1dGY4VG9CeXRlcyBleHBlY3RlZCBzdHJpbmcsIGdvdCAke3R5cGVvZiBzdHJ9YCk7XG4gIHJldHVybiBuZXcgVWludDhBcnJheShuZXcgVGV4dEVuY29kZXIoKS5lbmNvZGUoc3RyKSk7IC8vIGh0dHBzOi8vYnVnemlsLmxhLzE2ODE4MDlcbn1cblxuLy8gQml0IG9wZXJhdGlvbnNcblxuLyoqXG4gKiBDYWxjdWxhdGVzIGFtb3VudCBvZiBiaXRzIGluIGEgYmlnaW50LlxuICogU2FtZSBhcyBgbi50b1N0cmluZygyKS5sZW5ndGhgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBiaXRMZW4objogYmlnaW50KSB7XG4gIGxldCBsZW47XG4gIGZvciAobGVuID0gMDsgbiA+IF8wbjsgbiA+Pj0gXzFuLCBsZW4gKz0gMSk7XG4gIHJldHVybiBsZW47XG59XG5cbi8qKlxuICogR2V0cyBzaW5nbGUgYml0IGF0IHBvc2l0aW9uLlxuICogTk9URTogZmlyc3QgYml0IHBvc2l0aW9uIGlzIDAgKHNhbWUgYXMgYXJyYXlzKVxuICogU2FtZSBhcyBgISErQXJyYXkuZnJvbShuLnRvU3RyaW5nKDIpKS5yZXZlcnNlKClbcG9zXWBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJpdEdldChuOiBiaWdpbnQsIHBvczogbnVtYmVyKSB7XG4gIHJldHVybiAobiA+PiBCaWdJbnQocG9zKSkgJiBfMW47XG59XG5cbi8qKlxuICogU2V0cyBzaW5nbGUgYml0IGF0IHBvc2l0aW9uLlxuICovXG5leHBvcnQgY29uc3QgYml0U2V0ID0gKG46IGJpZ2ludCwgcG9zOiBudW1iZXIsIHZhbHVlOiBib29sZWFuKSA9PiB7XG4gIHJldHVybiBuIHwgKCh2YWx1ZSA/IF8xbiA6IF8wbikgPDwgQmlnSW50KHBvcykpO1xufTtcblxuLyoqXG4gKiBDYWxjdWxhdGUgbWFzayBmb3IgTiBiaXRzLiBOb3QgdXNpbmcgKiogb3BlcmF0b3Igd2l0aCBiaWdpbnRzIGJlY2F1c2Ugb2Ygb2xkIGVuZ2luZXMuXG4gKiBTYW1lIGFzIEJpZ0ludChgMGIke0FycmF5KGkpLmZpbGwoJzEnKS5qb2luKCcnKX1gKVxuICovXG5leHBvcnQgY29uc3QgYml0TWFzayA9IChuOiBudW1iZXIpID0+IChfMm4gPDwgQmlnSW50KG4gLSAxKSkgLSBfMW47XG5cbi8vIERSQkdcblxuY29uc3QgdThuID0gKGRhdGE/OiBhbnkpID0+IG5ldyBVaW50OEFycmF5KGRhdGEpOyAvLyBjcmVhdGVzIFVpbnQ4QXJyYXlcbmNvbnN0IHU4ZnIgPSAoYXJyOiBhbnkpID0+IFVpbnQ4QXJyYXkuZnJvbShhcnIpOyAvLyBhbm90aGVyIHNob3J0Y3V0XG50eXBlIFByZWQ8VD4gPSAodjogVWludDhBcnJheSkgPT4gVCB8IHVuZGVmaW5lZDtcbi8qKlxuICogTWluaW1hbCBITUFDLURSQkcgZnJvbSBOSVNUIDgwMC05MCBmb3IgUkZDNjk3OSBzaWdzLlxuICogQHJldHVybnMgZnVuY3Rpb24gdGhhdCB3aWxsIGNhbGwgRFJCRyB1bnRpbCAybmQgYXJnIHJldHVybnMgc29tZXRoaW5nIG1lYW5pbmdmdWxcbiAqIEBleGFtcGxlXG4gKiAgIGNvbnN0IGRyYmcgPSBjcmVhdGVIbWFjRFJCRzxLZXk+KDMyLCAzMiwgaG1hYyk7XG4gKiAgIGRyYmcoc2VlZCwgYnl0ZXNUb0tleSk7IC8vIGJ5dGVzVG9LZXkgbXVzdCByZXR1cm4gS2V5IG9yIHVuZGVmaW5lZFxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlSG1hY0RyYmc8VD4oXG4gIGhhc2hMZW46IG51bWJlcixcbiAgcUJ5dGVMZW46IG51bWJlcixcbiAgaG1hY0ZuOiAoa2V5OiBVaW50OEFycmF5LCAuLi5tZXNzYWdlczogVWludDhBcnJheVtdKSA9PiBVaW50OEFycmF5XG4pOiAoc2VlZDogVWludDhBcnJheSwgcHJlZGljYXRlOiBQcmVkPFQ+KSA9PiBUIHtcbiAgaWYgKHR5cGVvZiBoYXNoTGVuICE9PSAnbnVtYmVyJyB8fCBoYXNoTGVuIDwgMikgdGhyb3cgbmV3IEVycm9yKCdoYXNoTGVuIG11c3QgYmUgYSBudW1iZXInKTtcbiAgaWYgKHR5cGVvZiBxQnl0ZUxlbiAhPT0gJ251bWJlcicgfHwgcUJ5dGVMZW4gPCAyKSB0aHJvdyBuZXcgRXJyb3IoJ3FCeXRlTGVuIG11c3QgYmUgYSBudW1iZXInKTtcbiAgaWYgKHR5cGVvZiBobWFjRm4gIT09ICdmdW5jdGlvbicpIHRocm93IG5ldyBFcnJvcignaG1hY0ZuIG11c3QgYmUgYSBmdW5jdGlvbicpO1xuICAvLyBTdGVwIEIsIFN0ZXAgQzogc2V0IGhhc2hMZW4gdG8gOCpjZWlsKGhsZW4vOClcbiAgbGV0IHYgPSB1OG4oaGFzaExlbik7IC8vIE1pbmltYWwgbm9uLWZ1bGwtc3BlYyBITUFDLURSQkcgZnJvbSBOSVNUIDgwMC05MCBmb3IgUkZDNjk3OSBzaWdzLlxuICBsZXQgayA9IHU4bihoYXNoTGVuKTsgLy8gU3RlcHMgQiBhbmQgQyBvZiBSRkM2OTc5IDMuMjogc2V0IGhhc2hMZW4sIGluIG91ciBjYXNlIGFsd2F5cyBzYW1lXG4gIGxldCBpID0gMDsgLy8gSXRlcmF0aW9ucyBjb3VudGVyLCB3aWxsIHRocm93IHdoZW4gb3ZlciAxMDAwXG4gIGNvbnN0IHJlc2V0ID0gKCkgPT4ge1xuICAgIHYuZmlsbCgxKTtcbiAgICBrLmZpbGwoMCk7XG4gICAgaSA9IDA7XG4gIH07XG4gIGNvbnN0IGggPSAoLi4uYjogVWludDhBcnJheVtdKSA9PiBobWFjRm4oaywgdiwgLi4uYik7IC8vIGhtYWMoaykodiwgLi4udmFsdWVzKVxuICBjb25zdCByZXNlZWQgPSAoc2VlZCA9IHU4bigpKSA9PiB7XG4gICAgLy8gSE1BQy1EUkJHIHJlc2VlZCgpIGZ1bmN0aW9uLiBTdGVwcyBELUdcbiAgICBrID0gaCh1OGZyKFsweDAwXSksIHNlZWQpOyAvLyBrID0gaG1hYyhrIHx8IHYgfHwgMHgwMCB8fCBzZWVkKVxuICAgIHYgPSBoKCk7IC8vIHYgPSBobWFjKGsgfHwgdilcbiAgICBpZiAoc2VlZC5sZW5ndGggPT09IDApIHJldHVybjtcbiAgICBrID0gaCh1OGZyKFsweDAxXSksIHNlZWQpOyAvLyBrID0gaG1hYyhrIHx8IHYgfHwgMHgwMSB8fCBzZWVkKVxuICAgIHYgPSBoKCk7IC8vIHYgPSBobWFjKGsgfHwgdilcbiAgfTtcbiAgY29uc3QgZ2VuID0gKCkgPT4ge1xuICAgIC8vIEhNQUMtRFJCRyBnZW5lcmF0ZSgpIGZ1bmN0aW9uXG4gICAgaWYgKGkrKyA+PSAxMDAwKSB0aHJvdyBuZXcgRXJyb3IoJ2RyYmc6IHRyaWVkIDEwMDAgdmFsdWVzJyk7XG4gICAgbGV0IGxlbiA9IDA7XG4gICAgY29uc3Qgb3V0OiBVaW50OEFycmF5W10gPSBbXTtcbiAgICB3aGlsZSAobGVuIDwgcUJ5dGVMZW4pIHtcbiAgICAgIHYgPSBoKCk7XG4gICAgICBjb25zdCBzbCA9IHYuc2xpY2UoKTtcbiAgICAgIG91dC5wdXNoKHNsKTtcbiAgICAgIGxlbiArPSB2Lmxlbmd0aDtcbiAgICB9XG4gICAgcmV0dXJuIGNvbmNhdEJ5dGVzKC4uLm91dCk7XG4gIH07XG4gIGNvbnN0IGdlblVudGlsID0gKHNlZWQ6IFVpbnQ4QXJyYXksIHByZWQ6IFByZWQ8VD4pOiBUID0+IHtcbiAgICByZXNldCgpO1xuICAgIHJlc2VlZChzZWVkKTsgLy8gU3RlcHMgRC1HXG4gICAgbGV0IHJlczogVCB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDsgLy8gU3RlcCBIOiBncmluZCB1bnRpbCBrIGlzIGluIFsxLi5uLTFdXG4gICAgd2hpbGUgKCEocmVzID0gcHJlZChnZW4oKSkpKSByZXNlZWQoKTtcbiAgICByZXNldCgpO1xuICAgIHJldHVybiByZXM7XG4gIH07XG4gIHJldHVybiBnZW5VbnRpbDtcbn1cblxuLy8gVmFsaWRhdGluZyBjdXJ2ZXMgYW5kIGZpZWxkc1xuXG5jb25zdCB2YWxpZGF0b3JGbnMgPSB7XG4gIGJpZ2ludDogKHZhbDogYW55KSA9PiB0eXBlb2YgdmFsID09PSAnYmlnaW50JyxcbiAgZnVuY3Rpb246ICh2YWw6IGFueSkgPT4gdHlwZW9mIHZhbCA9PT0gJ2Z1bmN0aW9uJyxcbiAgYm9vbGVhbjogKHZhbDogYW55KSA9PiB0eXBlb2YgdmFsID09PSAnYm9vbGVhbicsXG4gIHN0cmluZzogKHZhbDogYW55KSA9PiB0eXBlb2YgdmFsID09PSAnc3RyaW5nJyxcbiAgc3RyaW5nT3JVaW50OEFycmF5OiAodmFsOiBhbnkpID0+IHR5cGVvZiB2YWwgPT09ICdzdHJpbmcnIHx8IHZhbCBpbnN0YW5jZW9mIFVpbnQ4QXJyYXksXG4gIGlzU2FmZUludGVnZXI6ICh2YWw6IGFueSkgPT4gTnVtYmVyLmlzU2FmZUludGVnZXIodmFsKSxcbiAgYXJyYXk6ICh2YWw6IGFueSkgPT4gQXJyYXkuaXNBcnJheSh2YWwpLFxuICBmaWVsZDogKHZhbDogYW55LCBvYmplY3Q6IGFueSkgPT4gKG9iamVjdCBhcyBhbnkpLkZwLmlzVmFsaWQodmFsKSxcbiAgaGFzaDogKHZhbDogYW55KSA9PiB0eXBlb2YgdmFsID09PSAnZnVuY3Rpb24nICYmIE51bWJlci5pc1NhZmVJbnRlZ2VyKHZhbC5vdXRwdXRMZW4pLFxufSBhcyBjb25zdDtcbnR5cGUgVmFsaWRhdG9yID0ga2V5b2YgdHlwZW9mIHZhbGlkYXRvckZucztcbnR5cGUgVmFsTWFwPFQgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCBhbnk+PiA9IHsgW0sgaW4ga2V5b2YgVF0/OiBWYWxpZGF0b3IgfTtcbi8vIHR5cGUgUmVjb3JkPEsgZXh0ZW5kcyBzdHJpbmcgfCBudW1iZXIgfCBzeW1ib2wsIFQ+ID0geyBbUCBpbiBLXTogVDsgfVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVPYmplY3Q8VCBleHRlbmRzIFJlY29yZDxzdHJpbmcsIGFueT4+KFxuICBvYmplY3Q6IFQsXG4gIHZhbGlkYXRvcnM6IFZhbE1hcDxUPixcbiAgb3B0VmFsaWRhdG9yczogVmFsTWFwPFQ+ID0ge31cbikge1xuICBjb25zdCBjaGVja0ZpZWxkID0gKGZpZWxkTmFtZToga2V5b2YgVCwgdHlwZTogVmFsaWRhdG9yLCBpc09wdGlvbmFsOiBib29sZWFuKSA9PiB7XG4gICAgY29uc3QgY2hlY2tWYWwgPSB2YWxpZGF0b3JGbnNbdHlwZV07XG4gICAgaWYgKHR5cGVvZiBjaGVja1ZhbCAhPT0gJ2Z1bmN0aW9uJylcbiAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCB2YWxpZGF0b3IgXCIke3R5cGV9XCIsIGV4cGVjdGVkIGZ1bmN0aW9uYCk7XG5cbiAgICBjb25zdCB2YWwgPSBvYmplY3RbZmllbGROYW1lIGFzIGtleW9mIHR5cGVvZiBvYmplY3RdO1xuICAgIGlmIChpc09wdGlvbmFsICYmIHZhbCA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG4gICAgaWYgKCFjaGVja1ZhbCh2YWwsIG9iamVjdCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYEludmFsaWQgcGFyYW0gJHtTdHJpbmcoZmllbGROYW1lKX09JHt2YWx9ICgke3R5cGVvZiB2YWx9KSwgZXhwZWN0ZWQgJHt0eXBlfWBcbiAgICAgICk7XG4gICAgfVxuICB9O1xuICBmb3IgKGNvbnN0IFtmaWVsZE5hbWUsIHR5cGVdIG9mIE9iamVjdC5lbnRyaWVzKHZhbGlkYXRvcnMpKSBjaGVja0ZpZWxkKGZpZWxkTmFtZSwgdHlwZSEsIGZhbHNlKTtcbiAgZm9yIChjb25zdCBbZmllbGROYW1lLCB0eXBlXSBvZiBPYmplY3QuZW50cmllcyhvcHRWYWxpZGF0b3JzKSkgY2hlY2tGaWVsZChmaWVsZE5hbWUsIHR5cGUhLCB0cnVlKTtcbiAgcmV0dXJuIG9iamVjdDtcbn1cbi8vIHZhbGlkYXRlIHR5cGUgdGVzdHNcbi8vIGNvbnN0IG86IHsgYTogbnVtYmVyOyBiOiBudW1iZXI7IGM6IG51bWJlciB9ID0geyBhOiAxLCBiOiA1LCBjOiA2IH07XG4vLyBjb25zdCB6MCA9IHZhbGlkYXRlT2JqZWN0KG8sIHsgYTogJ2lzU2FmZUludGVnZXInIH0sIHsgYzogJ2JpZ2ludCcgfSk7IC8vIE9rIVxuLy8gLy8gU2hvdWxkIGZhaWwgdHlwZS1jaGVja1xuLy8gY29uc3QgejEgPSB2YWxpZGF0ZU9iamVjdChvLCB7IGE6ICd0bXAnIH0sIHsgYzogJ3p6JyB9KTtcbi8vIGNvbnN0IHoyID0gdmFsaWRhdGVPYmplY3QobywgeyBhOiAnaXNTYWZlSW50ZWdlcicgfSwgeyBjOiAnenonIH0pO1xuLy8gY29uc3QgejMgPSB2YWxpZGF0ZU9iamVjdChvLCB7IHRlc3Q6ICdib29sZWFuJywgejogJ2J1ZycgfSk7XG4vLyBjb25zdCB6NCA9IHZhbGlkYXRlT2JqZWN0KG8sIHsgYTogJ2Jvb2xlYW4nLCB6OiAnYnVnJyB9KTtcbiIsICIvKiEgbm9ibGUtY3VydmVzIC0gTUlUIExpY2Vuc2UgKGMpIDIwMjIgUGF1bCBNaWxsZXIgKHBhdWxtaWxsci5jb20pICovXG4vLyBVdGlsaXRpZXMgZm9yIG1vZHVsYXIgYXJpdGhtZXRpY3MgYW5kIGZpbml0ZSBmaWVsZHNcbmltcG9ydCB7XG4gIGJpdE1hc2ssXG4gIG51bWJlclRvQnl0ZXNCRSxcbiAgbnVtYmVyVG9CeXRlc0xFLFxuICBieXRlc1RvTnVtYmVyQkUsXG4gIGJ5dGVzVG9OdW1iZXJMRSxcbiAgZW5zdXJlQnl0ZXMsXG4gIHZhbGlkYXRlT2JqZWN0LFxufSBmcm9tICcuL3V0aWxzLmpzJztcbi8vIHByZXR0aWVyLWlnbm9yZVxuY29uc3QgXzBuID0gQmlnSW50KDApLCBfMW4gPSBCaWdJbnQoMSksIF8ybiA9IEJpZ0ludCgyKSwgXzNuID0gQmlnSW50KDMpO1xuLy8gcHJldHRpZXItaWdub3JlXG5jb25zdCBfNG4gPSBCaWdJbnQoNCksIF81biA9IEJpZ0ludCg1KSwgXzhuID0gQmlnSW50KDgpO1xuLy8gcHJldHRpZXItaWdub3JlXG5jb25zdCBfOW4gPSBCaWdJbnQoOSksIF8xNm4gPSBCaWdJbnQoMTYpO1xuXG4vLyBDYWxjdWxhdGVzIGEgbW9kdWxvIGJcbmV4cG9ydCBmdW5jdGlvbiBtb2QoYTogYmlnaW50LCBiOiBiaWdpbnQpOiBiaWdpbnQge1xuICBjb25zdCByZXN1bHQgPSBhICUgYjtcbiAgcmV0dXJuIHJlc3VsdCA+PSBfMG4gPyByZXN1bHQgOiBiICsgcmVzdWx0O1xufVxuLyoqXG4gKiBFZmZpY2llbnRseSByYWlzZSBudW0gdG8gcG93ZXIgYW5kIGRvIG1vZHVsYXIgZGl2aXNpb24uXG4gKiBVbnNhZmUgaW4gc29tZSBjb250ZXh0czogdXNlcyBsYWRkZXIsIHNvIGNhbiBleHBvc2UgYmlnaW50IGJpdHMuXG4gKiBAZXhhbXBsZVxuICogcG93KDJuLCA2biwgMTFuKSAvLyA2NG4gJSAxMW4gPT0gOW5cbiAqL1xuLy8gVE9ETzogdXNlIGZpZWxkIHZlcnNpb24gJiYgcmVtb3ZlXG5leHBvcnQgZnVuY3Rpb24gcG93KG51bTogYmlnaW50LCBwb3dlcjogYmlnaW50LCBtb2R1bG86IGJpZ2ludCk6IGJpZ2ludCB7XG4gIGlmIChtb2R1bG8gPD0gXzBuIHx8IHBvd2VyIDwgXzBuKSB0aHJvdyBuZXcgRXJyb3IoJ0V4cGVjdGVkIHBvd2VyL21vZHVsbyA+IDAnKTtcbiAgaWYgKG1vZHVsbyA9PT0gXzFuKSByZXR1cm4gXzBuO1xuICBsZXQgcmVzID0gXzFuO1xuICB3aGlsZSAocG93ZXIgPiBfMG4pIHtcbiAgICBpZiAocG93ZXIgJiBfMW4pIHJlcyA9IChyZXMgKiBudW0pICUgbW9kdWxvO1xuICAgIG51bSA9IChudW0gKiBudW0pICUgbW9kdWxvO1xuICAgIHBvd2VyID4+PSBfMW47XG4gIH1cbiAgcmV0dXJuIHJlcztcbn1cblxuLy8gRG9lcyB4IF4gKDIgXiBwb3dlcikgbW9kIHAuIHBvdzIoMzAsIDQpID09IDMwIF4gKDIgXiA0KVxuZXhwb3J0IGZ1bmN0aW9uIHBvdzIoeDogYmlnaW50LCBwb3dlcjogYmlnaW50LCBtb2R1bG86IGJpZ2ludCk6IGJpZ2ludCB7XG4gIGxldCByZXMgPSB4O1xuICB3aGlsZSAocG93ZXItLSA+IF8wbikge1xuICAgIHJlcyAqPSByZXM7XG4gICAgcmVzICU9IG1vZHVsbztcbiAgfVxuICByZXR1cm4gcmVzO1xufVxuXG4vLyBJbnZlcnNlcyBudW1iZXIgb3ZlciBtb2R1bG9cbmV4cG9ydCBmdW5jdGlvbiBpbnZlcnQobnVtYmVyOiBiaWdpbnQsIG1vZHVsbzogYmlnaW50KTogYmlnaW50IHtcbiAgaWYgKG51bWJlciA9PT0gXzBuIHx8IG1vZHVsbyA8PSBfMG4pIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYGludmVydDogZXhwZWN0ZWQgcG9zaXRpdmUgaW50ZWdlcnMsIGdvdCBuPSR7bnVtYmVyfSBtb2Q9JHttb2R1bG99YCk7XG4gIH1cbiAgLy8gRXVjbGlkZWFuIEdDRCBodHRwczovL2JyaWxsaWFudC5vcmcvd2lraS9leHRlbmRlZC1ldWNsaWRlYW4tYWxnb3JpdGhtL1xuICAvLyBGZXJtYXQncyBsaXR0bGUgdGhlb3JlbSBcIkNULWxpa2VcIiB2ZXJzaW9uIGludihuKSA9IG5eKG0tMikgbW9kIG0gaXMgMzB4IHNsb3dlci5cbiAgbGV0IGEgPSBtb2QobnVtYmVyLCBtb2R1bG8pO1xuICBsZXQgYiA9IG1vZHVsbztcbiAgLy8gcHJldHRpZXItaWdub3JlXG4gIGxldCB4ID0gXzBuLCB5ID0gXzFuLCB1ID0gXzFuLCB2ID0gXzBuO1xuICB3aGlsZSAoYSAhPT0gXzBuKSB7XG4gICAgLy8gSklUIGFwcGxpZXMgb3B0aW1pemF0aW9uIGlmIHRob3NlIHR3byBsaW5lcyBmb2xsb3cgZWFjaCBvdGhlclxuICAgIGNvbnN0IHEgPSBiIC8gYTtcbiAgICBjb25zdCByID0gYiAlIGE7XG4gICAgY29uc3QgbSA9IHggLSB1ICogcTtcbiAgICBjb25zdCBuID0geSAtIHYgKiBxO1xuICAgIC8vIHByZXR0aWVyLWlnbm9yZVxuICAgIGIgPSBhLCBhID0gciwgeCA9IHUsIHkgPSB2LCB1ID0gbSwgdiA9IG47XG4gIH1cbiAgY29uc3QgZ2NkID0gYjtcbiAgaWYgKGdjZCAhPT0gXzFuKSB0aHJvdyBuZXcgRXJyb3IoJ2ludmVydDogZG9lcyBub3QgZXhpc3QnKTtcbiAgcmV0dXJuIG1vZCh4LCBtb2R1bG8pO1xufVxuXG4vKipcbiAqIFRvbmVsbGktU2hhbmtzIHNxdWFyZSByb290IHNlYXJjaCBhbGdvcml0aG0uXG4gKiAxLiBodHRwczovL2VwcmludC5pYWNyLm9yZy8yMDEyLzY4NS5wZGYgKHBhZ2UgMTIpXG4gKiAyLiBTcXVhcmUgUm9vdHMgZnJvbSAxOyAyNCwgNTEsIDEwIHRvIERhbiBTaGFua3NcbiAqIFdpbGwgc3RhcnQgYW4gaW5maW5pdGUgbG9vcCBpZiBmaWVsZCBvcmRlciBQIGlzIG5vdCBwcmltZS5cbiAqIEBwYXJhbSBQIGZpZWxkIG9yZGVyXG4gKiBAcmV0dXJucyBmdW5jdGlvbiB0aGF0IHRha2VzIGZpZWxkIEZwIChjcmVhdGVkIGZyb20gUCkgYW5kIG51bWJlciBuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b25lbGxpU2hhbmtzKFA6IGJpZ2ludCkge1xuICAvLyBMZWdlbmRyZSBjb25zdGFudDogdXNlZCB0byBjYWxjdWxhdGUgTGVnZW5kcmUgc3ltYm9sIChhIHwgcCksXG4gIC8vIHdoaWNoIGRlbm90ZXMgdGhlIHZhbHVlIG9mIGFeKChwLTEpLzIpIChtb2QgcCkuXG4gIC8vIChhIHwgcCkgXHUyMjYxIDEgICAgaWYgYSBpcyBhIHNxdWFyZSAobW9kIHApXG4gIC8vIChhIHwgcCkgXHUyMjYxIC0xICAgaWYgYSBpcyBub3QgYSBzcXVhcmUgKG1vZCBwKVxuICAvLyAoYSB8IHApIFx1MjI2MSAwICAgIGlmIGEgXHUyMjYxIDAgKG1vZCBwKVxuICBjb25zdCBsZWdlbmRyZUMgPSAoUCAtIF8xbikgLyBfMm47XG5cbiAgbGV0IFE6IGJpZ2ludCwgUzogbnVtYmVyLCBaOiBiaWdpbnQ7XG4gIC8vIFN0ZXAgMTogQnkgZmFjdG9yaW5nIG91dCBwb3dlcnMgb2YgMiBmcm9tIHAgLSAxLFxuICAvLyBmaW5kIHEgYW5kIHMgc3VjaCB0aGF0IHAgLSAxID0gcSooMl5zKSB3aXRoIHEgb2RkXG4gIGZvciAoUSA9IFAgLSBfMW4sIFMgPSAwOyBRICUgXzJuID09PSBfMG47IFEgLz0gXzJuLCBTKyspO1xuXG4gIC8vIFN0ZXAgMjogU2VsZWN0IGEgbm9uLXNxdWFyZSB6IHN1Y2ggdGhhdCAoeiB8IHApIFx1MjI2MSAtMSBhbmQgc2V0IGMgXHUyMjYxIHpxXG4gIGZvciAoWiA9IF8ybjsgWiA8IFAgJiYgcG93KFosIGxlZ2VuZHJlQywgUCkgIT09IFAgLSBfMW47IForKyk7XG5cbiAgLy8gRmFzdC1wYXRoXG4gIGlmIChTID09PSAxKSB7XG4gICAgY29uc3QgcDFkaXY0ID0gKFAgKyBfMW4pIC8gXzRuO1xuICAgIHJldHVybiBmdW5jdGlvbiB0b25lbGxpRmFzdDxUPihGcDogSUZpZWxkPFQ+LCBuOiBUKSB7XG4gICAgICBjb25zdCByb290ID0gRnAucG93KG4sIHAxZGl2NCk7XG4gICAgICBpZiAoIUZwLmVxbChGcC5zcXIocm9vdCksIG4pKSB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBmaW5kIHNxdWFyZSByb290Jyk7XG4gICAgICByZXR1cm4gcm9vdDtcbiAgICB9O1xuICB9XG5cbiAgLy8gU2xvdy1wYXRoXG4gIGNvbnN0IFExZGl2MiA9IChRICsgXzFuKSAvIF8ybjtcbiAgcmV0dXJuIGZ1bmN0aW9uIHRvbmVsbGlTbG93PFQ+KEZwOiBJRmllbGQ8VD4sIG46IFQpOiBUIHtcbiAgICAvLyBTdGVwIDA6IENoZWNrIHRoYXQgbiBpcyBpbmRlZWQgYSBzcXVhcmU6IChuIHwgcCkgc2hvdWxkIG5vdCBiZSBcdTIyNjEgLTFcbiAgICBpZiAoRnAucG93KG4sIGxlZ2VuZHJlQykgPT09IEZwLm5lZyhGcC5PTkUpKSB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBmaW5kIHNxdWFyZSByb290Jyk7XG4gICAgbGV0IHIgPSBTO1xuICAgIC8vIFRPRE86IHdpbGwgZmFpbCBhdCBGcDIvZXRjXG4gICAgbGV0IGcgPSBGcC5wb3coRnAubXVsKEZwLk9ORSwgWiksIFEpOyAvLyB3aWxsIHVwZGF0ZSBib3RoIHggYW5kIGJcbiAgICBsZXQgeCA9IEZwLnBvdyhuLCBRMWRpdjIpOyAvLyBmaXJzdCBndWVzcyBhdCB0aGUgc3F1YXJlIHJvb3RcbiAgICBsZXQgYiA9IEZwLnBvdyhuLCBRKTsgLy8gZmlyc3QgZ3Vlc3MgYXQgdGhlIGZ1ZGdlIGZhY3RvclxuXG4gICAgd2hpbGUgKCFGcC5lcWwoYiwgRnAuT05FKSkge1xuICAgICAgaWYgKEZwLmVxbChiLCBGcC5aRVJPKSkgcmV0dXJuIEZwLlpFUk87IC8vIGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1RvbmVsbGklRTIlODAlOTNTaGFua3NfYWxnb3JpdGhtICg0LiBJZiB0ID0gMCwgcmV0dXJuIHIgPSAwKVxuICAgICAgLy8gRmluZCBtIHN1Y2ggYl4oMl5tKT09MVxuICAgICAgbGV0IG0gPSAxO1xuICAgICAgZm9yIChsZXQgdDIgPSBGcC5zcXIoYik7IG0gPCByOyBtKyspIHtcbiAgICAgICAgaWYgKEZwLmVxbCh0MiwgRnAuT05FKSkgYnJlYWs7XG4gICAgICAgIHQyID0gRnAuc3FyKHQyKTsgLy8gdDIgKj0gdDJcbiAgICAgIH1cbiAgICAgIC8vIE5PVEU6IHItbS0xIGNhbiBiZSBiaWdnZXIgdGhhbiAzMiwgbmVlZCB0byBjb252ZXJ0IHRvIGJpZ2ludCBiZWZvcmUgc2hpZnQsIG90aGVyd2lzZSB0aGVyZSB3aWxsIGJlIG92ZXJmbG93XG4gICAgICBjb25zdCBnZSA9IEZwLnBvdyhnLCBfMW4gPDwgQmlnSW50KHIgLSBtIC0gMSkpOyAvLyBnZSA9IDJeKHItbS0xKVxuICAgICAgZyA9IEZwLnNxcihnZSk7IC8vIGcgPSBnZSAqIGdlXG4gICAgICB4ID0gRnAubXVsKHgsIGdlKTsgLy8geCAqPSBnZVxuICAgICAgYiA9IEZwLm11bChiLCBnKTsgLy8gYiAqPSBnXG4gICAgICByID0gbTtcbiAgICB9XG4gICAgcmV0dXJuIHg7XG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBGcFNxcnQoUDogYmlnaW50KSB7XG4gIC8vIE5PVEU6IGRpZmZlcmVudCBhbGdvcml0aG1zIGNhbiBnaXZlIGRpZmZlcmVudCByb290cywgaXQgaXMgdXAgdG8gdXNlciB0byBkZWNpZGUgd2hpY2ggb25lIHRoZXkgd2FudC5cbiAgLy8gRm9yIGV4YW1wbGUgdGhlcmUgaXMgRnBTcXJ0T2RkL0ZwU3FydEV2ZW4gdG8gY2hvaWNlIHJvb3QgYmFzZWQgb24gb2RkbmVzcyAodXNlZCBmb3IgaGFzaC10by1jdXJ2ZSkuXG5cbiAgLy8gUCBcdTIyNjEgMyAobW9kIDQpXG4gIC8vIFx1MjIxQW4gPSBuXigoUCsxKS80KVxuICBpZiAoUCAlIF80biA9PT0gXzNuKSB7XG4gICAgLy8gTm90IGFsbCByb290cyBwb3NzaWJsZSFcbiAgICAvLyBjb25zdCBPUkRFUiA9XG4gICAgLy8gICAweDFhMDExMWVhMzk3ZmU2OWE0YjFiYTdiNjQzNGJhY2Q3NjQ3NzRiODRmMzg1MTJiZjY3MzBkMmEwZjZiMGY2MjQxZWFiZmZmZWIxNTNmZmZmYjlmZWZmZmZmZmZmYWFhYm47XG4gICAgLy8gY29uc3QgTlVNID0gNzIwNTc1OTQwMzc5Mjc4MTZuO1xuICAgIGNvbnN0IHAxZGl2NCA9IChQICsgXzFuKSAvIF80bjtcbiAgICByZXR1cm4gZnVuY3Rpb24gc3FydDNtb2Q0PFQ+KEZwOiBJRmllbGQ8VD4sIG46IFQpIHtcbiAgICAgIGNvbnN0IHJvb3QgPSBGcC5wb3cobiwgcDFkaXY0KTtcbiAgICAgIC8vIFRocm93IGlmIHJvb3QqKjIgIT0gblxuICAgICAgaWYgKCFGcC5lcWwoRnAuc3FyKHJvb3QpLCBuKSkgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgZmluZCBzcXVhcmUgcm9vdCcpO1xuICAgICAgcmV0dXJuIHJvb3Q7XG4gICAgfTtcbiAgfVxuXG4gIC8vIEF0a2luIGFsZ29yaXRobSBmb3IgcSBcdTIyNjEgNSAobW9kIDgpLCBodHRwczovL2VwcmludC5pYWNyLm9yZy8yMDEyLzY4NS5wZGYgKHBhZ2UgMTApXG4gIGlmIChQICUgXzhuID09PSBfNW4pIHtcbiAgICBjb25zdCBjMSA9IChQIC0gXzVuKSAvIF84bjtcbiAgICByZXR1cm4gZnVuY3Rpb24gc3FydDVtb2Q4PFQ+KEZwOiBJRmllbGQ8VD4sIG46IFQpIHtcbiAgICAgIGNvbnN0IG4yID0gRnAubXVsKG4sIF8ybik7XG4gICAgICBjb25zdCB2ID0gRnAucG93KG4yLCBjMSk7XG4gICAgICBjb25zdCBudiA9IEZwLm11bChuLCB2KTtcbiAgICAgIGNvbnN0IGkgPSBGcC5tdWwoRnAubXVsKG52LCBfMm4pLCB2KTtcbiAgICAgIGNvbnN0IHJvb3QgPSBGcC5tdWwobnYsIEZwLnN1YihpLCBGcC5PTkUpKTtcbiAgICAgIGlmICghRnAuZXFsKEZwLnNxcihyb290KSwgbikpIHRocm93IG5ldyBFcnJvcignQ2Fubm90IGZpbmQgc3F1YXJlIHJvb3QnKTtcbiAgICAgIHJldHVybiByb290O1xuICAgIH07XG4gIH1cblxuICAvLyBQIFx1MjI2MSA5IChtb2QgMTYpXG4gIGlmIChQICUgXzE2biA9PT0gXzluKSB7XG4gICAgLy8gTk9URTogdG9uZWxsaSBpcyB0b28gc2xvdyBmb3IgYmxzLUZwMiBjYWxjdWxhdGlvbnMgZXZlbiBvbiBzdGFydFxuICAgIC8vIE1lYW5zIHdlIGNhbm5vdCB1c2Ugc3FydCBmb3IgY29uc3RhbnRzIGF0IGFsbCFcbiAgICAvL1xuICAgIC8vIGNvbnN0IGMxID0gRnAuc3FydChGcC5uZWdhdGUoRnAuT05FKSk7IC8vICAxLiBjMSA9IHNxcnQoLTEpIGluIEYsIGkuZS4sIChjMV4yKSA9PSAtMSBpbiBGXG4gICAgLy8gY29uc3QgYzIgPSBGcC5zcXJ0KGMxKTsgICAgICAgICAgICAgICAgLy8gIDIuIGMyID0gc3FydChjMSkgaW4gRiwgaS5lLiwgKGMyXjIpID09IGMxIGluIEZcbiAgICAvLyBjb25zdCBjMyA9IEZwLnNxcnQoRnAubmVnYXRlKGMxKSk7ICAgICAvLyAgMy4gYzMgPSBzcXJ0KC1jMSkgaW4gRiwgaS5lLiwgKGMzXjIpID09IC1jMSBpbiBGXG4gICAgLy8gY29uc3QgYzQgPSAoUCArIF83bikgLyBfMTZuOyAgICAgICAgICAgLy8gIDQuIGM0ID0gKHEgKyA3KSAvIDE2ICAgICAgICAjIEludGVnZXIgYXJpdGhtZXRpY1xuICAgIC8vIHNxcnQgPSAoeCkgPT4ge1xuICAgIC8vICAgbGV0IHR2MSA9IEZwLnBvdyh4LCBjNCk7ICAgICAgICAgICAgIC8vICAxLiB0djEgPSB4XmM0XG4gICAgLy8gICBsZXQgdHYyID0gRnAubXVsKGMxLCB0djEpOyAgICAgICAgICAgLy8gIDIuIHR2MiA9IGMxICogdHYxXG4gICAgLy8gICBjb25zdCB0djMgPSBGcC5tdWwoYzIsIHR2MSk7ICAgICAgICAgLy8gIDMuIHR2MyA9IGMyICogdHYxXG4gICAgLy8gICBsZXQgdHY0ID0gRnAubXVsKGMzLCB0djEpOyAgICAgICAgICAgLy8gIDQuIHR2NCA9IGMzICogdHYxXG4gICAgLy8gICBjb25zdCBlMSA9IEZwLmVxdWFscyhGcC5zcXVhcmUodHYyKSwgeCk7IC8vICA1LiAgZTEgPSAodHYyXjIpID09IHhcbiAgICAvLyAgIGNvbnN0IGUyID0gRnAuZXF1YWxzKEZwLnNxdWFyZSh0djMpLCB4KTsgLy8gIDYuICBlMiA9ICh0djNeMikgPT0geFxuICAgIC8vICAgdHYxID0gRnAuY21vdih0djEsIHR2MiwgZTEpOyAvLyAgNy4gdHYxID0gQ01PVih0djEsIHR2MiwgZTEpICAjIFNlbGVjdCB0djIgaWYgKHR2Ml4yKSA9PSB4XG4gICAgLy8gICB0djIgPSBGcC5jbW92KHR2NCwgdHYzLCBlMik7IC8vICA4LiB0djIgPSBDTU9WKHR2NCwgdHYzLCBlMikgICMgU2VsZWN0IHR2MyBpZiAodHYzXjIpID09IHhcbiAgICAvLyAgIGNvbnN0IGUzID0gRnAuZXF1YWxzKEZwLnNxdWFyZSh0djIpLCB4KTsgLy8gIDkuICBlMyA9ICh0djJeMikgPT0geFxuICAgIC8vICAgcmV0dXJuIEZwLmNtb3YodHYxLCB0djIsIGUzKTsgLy8gIDEwLiAgeiA9IENNT1YodHYxLCB0djIsIGUzKSAgIyBTZWxlY3QgdGhlIHNxcnQgZnJvbSB0djEgYW5kIHR2MlxuICAgIC8vIH1cbiAgfVxuXG4gIC8vIE90aGVyIGNhc2VzOiBUb25lbGxpLVNoYW5rcyBhbGdvcml0aG1cbiAgcmV0dXJuIHRvbmVsbGlTaGFua3MoUCk7XG59XG5cbi8vIExpdHRsZS1lbmRpYW4gY2hlY2sgZm9yIGZpcnN0IExFIGJpdCAobGFzdCBCRSBiaXQpO1xuZXhwb3J0IGNvbnN0IGlzTmVnYXRpdmVMRSA9IChudW06IGJpZ2ludCwgbW9kdWxvOiBiaWdpbnQpID0+IChtb2QobnVtLCBtb2R1bG8pICYgXzFuKSA9PT0gXzFuO1xuXG4vLyBGaWVsZCBpcyBub3QgYWx3YXlzIG92ZXIgcHJpbWU6IGZvciBleGFtcGxlLCBGcDIgaGFzIE9SREVSKHEpPXBebVxuZXhwb3J0IGludGVyZmFjZSBJRmllbGQ8VD4ge1xuICBPUkRFUjogYmlnaW50O1xuICBCWVRFUzogbnVtYmVyO1xuICBCSVRTOiBudW1iZXI7XG4gIE1BU0s6IGJpZ2ludDtcbiAgWkVSTzogVDtcbiAgT05FOiBUO1xuICAvLyAxLWFyZ1xuICBjcmVhdGU6IChudW06IFQpID0+IFQ7XG4gIGlzVmFsaWQ6IChudW06IFQpID0+IGJvb2xlYW47XG4gIGlzMDogKG51bTogVCkgPT4gYm9vbGVhbjtcbiAgbmVnKG51bTogVCk6IFQ7XG4gIGludihudW06IFQpOiBUO1xuICBzcXJ0KG51bTogVCk6IFQ7XG4gIHNxcihudW06IFQpOiBUO1xuICAvLyAyLWFyZ3NcbiAgZXFsKGxoczogVCwgcmhzOiBUKTogYm9vbGVhbjtcbiAgYWRkKGxoczogVCwgcmhzOiBUKTogVDtcbiAgc3ViKGxoczogVCwgcmhzOiBUKTogVDtcbiAgbXVsKGxoczogVCwgcmhzOiBUIHwgYmlnaW50KTogVDtcbiAgcG93KGxoczogVCwgcG93ZXI6IGJpZ2ludCk6IFQ7XG4gIGRpdihsaHM6IFQsIHJoczogVCB8IGJpZ2ludCk6IFQ7XG4gIC8vIE4gZm9yIE5vbk5vcm1hbGl6ZWQgKGZvciBub3cpXG4gIGFkZE4obGhzOiBULCByaHM6IFQpOiBUO1xuICBzdWJOKGxoczogVCwgcmhzOiBUKTogVDtcbiAgbXVsTihsaHM6IFQsIHJoczogVCB8IGJpZ2ludCk6IFQ7XG4gIHNxck4obnVtOiBUKTogVDtcblxuICAvLyBPcHRpb25hbFxuICAvLyBTaG91bGQgYmUgc2FtZSBhcyBzZ24wIGZ1bmN0aW9uIGluXG4gIC8vIFtSRkM5MzgwXShodHRwczovL3d3dy5yZmMtZWRpdG9yLm9yZy9yZmMvcmZjOTM4MCNzZWN0aW9uLTQuMSkuXG4gIC8vIE5PVEU6IHNnbjAgaXMgJ25lZ2F0aXZlIGluIExFJywgd2hpY2ggaXMgc2FtZSBhcyBvZGQuIEFuZCBuZWdhdGl2ZSBpbiBMRSBpcyBraW5kYSBzdHJhbmdlIGRlZmluaXRpb24gYW55d2F5LlxuICBpc09kZD8obnVtOiBUKTogYm9vbGVhbjsgLy8gT2RkIGluc3RlYWQgb2YgZXZlbiBzaW5jZSB3ZSBoYXZlIGl0IGZvciBGcDJcbiAgLy8gbGVnZW5kcmU/KG51bTogVCk6IFQ7XG4gIHBvdyhsaHM6IFQsIHBvd2VyOiBiaWdpbnQpOiBUO1xuICBpbnZlcnRCYXRjaDogKGxzdDogVFtdKSA9PiBUW107XG4gIHRvQnl0ZXMobnVtOiBUKTogVWludDhBcnJheTtcbiAgZnJvbUJ5dGVzKGJ5dGVzOiBVaW50OEFycmF5KTogVDtcbiAgLy8gSWYgYyBpcyBGYWxzZSwgQ01PViByZXR1cm5zIGEsIG90aGVyd2lzZSBpdCByZXR1cm5zIGIuXG4gIGNtb3YoYTogVCwgYjogVCwgYzogYm9vbGVhbik6IFQ7XG59XG4vLyBwcmV0dGllci1pZ25vcmVcbmNvbnN0IEZJRUxEX0ZJRUxEUyA9IFtcbiAgJ2NyZWF0ZScsICdpc1ZhbGlkJywgJ2lzMCcsICduZWcnLCAnaW52JywgJ3NxcnQnLCAnc3FyJyxcbiAgJ2VxbCcsICdhZGQnLCAnc3ViJywgJ211bCcsICdwb3cnLCAnZGl2JyxcbiAgJ2FkZE4nLCAnc3ViTicsICdtdWxOJywgJ3Nxck4nXG5dIGFzIGNvbnN0O1xuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlRmllbGQ8VD4oZmllbGQ6IElGaWVsZDxUPikge1xuICBjb25zdCBpbml0aWFsID0ge1xuICAgIE9SREVSOiAnYmlnaW50JyxcbiAgICBNQVNLOiAnYmlnaW50JyxcbiAgICBCWVRFUzogJ2lzU2FmZUludGVnZXInLFxuICAgIEJJVFM6ICdpc1NhZmVJbnRlZ2VyJyxcbiAgfSBhcyBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICBjb25zdCBvcHRzID0gRklFTERfRklFTERTLnJlZHVjZSgobWFwLCB2YWw6IHN0cmluZykgPT4ge1xuICAgIG1hcFt2YWxdID0gJ2Z1bmN0aW9uJztcbiAgICByZXR1cm4gbWFwO1xuICB9LCBpbml0aWFsKTtcbiAgcmV0dXJuIHZhbGlkYXRlT2JqZWN0KGZpZWxkLCBvcHRzKTtcbn1cblxuLy8gR2VuZXJpYyBmaWVsZCBmdW5jdGlvbnNcblxuLyoqXG4gKiBTYW1lIGFzIGBwb3dgIGJ1dCBmb3IgRnA6IG5vbi1jb25zdGFudC10aW1lLlxuICogVW5zYWZlIGluIHNvbWUgY29udGV4dHM6IHVzZXMgbGFkZGVyLCBzbyBjYW4gZXhwb3NlIGJpZ2ludCBiaXRzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gRnBQb3c8VD4oZjogSUZpZWxkPFQ+LCBudW06IFQsIHBvd2VyOiBiaWdpbnQpOiBUIHtcbiAgLy8gU2hvdWxkIGhhdmUgc2FtZSBzcGVlZCBhcyBwb3cgZm9yIGJpZ2ludHNcbiAgLy8gVE9ETzogYmVuY2htYXJrIVxuICBpZiAocG93ZXIgPCBfMG4pIHRocm93IG5ldyBFcnJvcignRXhwZWN0ZWQgcG93ZXIgPiAwJyk7XG4gIGlmIChwb3dlciA9PT0gXzBuKSByZXR1cm4gZi5PTkU7XG4gIGlmIChwb3dlciA9PT0gXzFuKSByZXR1cm4gbnVtO1xuICBsZXQgcCA9IGYuT05FO1xuICBsZXQgZCA9IG51bTtcbiAgd2hpbGUgKHBvd2VyID4gXzBuKSB7XG4gICAgaWYgKHBvd2VyICYgXzFuKSBwID0gZi5tdWwocCwgZCk7XG4gICAgZCA9IGYuc3FyKGQpO1xuICAgIHBvd2VyID4+PSBfMW47XG4gIH1cbiAgcmV0dXJuIHA7XG59XG5cbi8qKlxuICogRWZmaWNpZW50bHkgaW52ZXJ0IGFuIGFycmF5IG9mIEZpZWxkIGVsZW1lbnRzLlxuICogYGludigwKWAgd2lsbCByZXR1cm4gYHVuZGVmaW5lZGAgaGVyZTogbWFrZSBzdXJlIHRvIHRocm93IGFuIGVycm9yLlxuICovXG5leHBvcnQgZnVuY3Rpb24gRnBJbnZlcnRCYXRjaDxUPihmOiBJRmllbGQ8VD4sIG51bXM6IFRbXSk6IFRbXSB7XG4gIGNvbnN0IHRtcCA9IG5ldyBBcnJheShudW1zLmxlbmd0aCk7XG4gIC8vIFdhbGsgZnJvbSBmaXJzdCB0byBsYXN0LCBtdWx0aXBseSB0aGVtIGJ5IGVhY2ggb3RoZXIgTU9EIHBcbiAgY29uc3QgbGFzdE11bHRpcGxpZWQgPSBudW1zLnJlZHVjZSgoYWNjLCBudW0sIGkpID0+IHtcbiAgICBpZiAoZi5pczAobnVtKSkgcmV0dXJuIGFjYztcbiAgICB0bXBbaV0gPSBhY2M7XG4gICAgcmV0dXJuIGYubXVsKGFjYywgbnVtKTtcbiAgfSwgZi5PTkUpO1xuICAvLyBJbnZlcnQgbGFzdCBlbGVtZW50XG4gIGNvbnN0IGludmVydGVkID0gZi5pbnYobGFzdE11bHRpcGxpZWQpO1xuICAvLyBXYWxrIGZyb20gbGFzdCB0byBmaXJzdCwgbXVsdGlwbHkgdGhlbSBieSBpbnZlcnRlZCBlYWNoIG90aGVyIE1PRCBwXG4gIG51bXMucmVkdWNlUmlnaHQoKGFjYywgbnVtLCBpKSA9PiB7XG4gICAgaWYgKGYuaXMwKG51bSkpIHJldHVybiBhY2M7XG4gICAgdG1wW2ldID0gZi5tdWwoYWNjLCB0bXBbaV0pO1xuICAgIHJldHVybiBmLm11bChhY2MsIG51bSk7XG4gIH0sIGludmVydGVkKTtcbiAgcmV0dXJuIHRtcDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIEZwRGl2PFQ+KGY6IElGaWVsZDxUPiwgbGhzOiBULCByaHM6IFQgfCBiaWdpbnQpOiBUIHtcbiAgcmV0dXJuIGYubXVsKGxocywgdHlwZW9mIHJocyA9PT0gJ2JpZ2ludCcgPyBpbnZlcnQocmhzLCBmLk9SREVSKSA6IGYuaW52KHJocykpO1xufVxuXG4vLyBUaGlzIGZ1bmN0aW9uIHJldHVybnMgVHJ1ZSB3aGVuZXZlciB0aGUgdmFsdWUgeCBpcyBhIHNxdWFyZSBpbiB0aGUgZmllbGQgRi5cbmV4cG9ydCBmdW5jdGlvbiBGcElzU3F1YXJlPFQ+KGY6IElGaWVsZDxUPikge1xuICBjb25zdCBsZWdlbmRyZUNvbnN0ID0gKGYuT1JERVIgLSBfMW4pIC8gXzJuOyAvLyBJbnRlZ2VyIGFyaXRobWV0aWNcbiAgcmV0dXJuICh4OiBUKTogYm9vbGVhbiA9PiB7XG4gICAgY29uc3QgcCA9IGYucG93KHgsIGxlZ2VuZHJlQ29uc3QpO1xuICAgIHJldHVybiBmLmVxbChwLCBmLlpFUk8pIHx8IGYuZXFsKHAsIGYuT05FKTtcbiAgfTtcbn1cblxuLy8gQ1VSVkUubiBsZW5ndGhzXG5leHBvcnQgZnVuY3Rpb24gbkxlbmd0aChuOiBiaWdpbnQsIG5CaXRMZW5ndGg/OiBudW1iZXIpIHtcbiAgLy8gQml0IHNpemUsIGJ5dGUgc2l6ZSBvZiBDVVJWRS5uXG4gIGNvbnN0IF9uQml0TGVuZ3RoID0gbkJpdExlbmd0aCAhPT0gdW5kZWZpbmVkID8gbkJpdExlbmd0aCA6IG4udG9TdHJpbmcoMikubGVuZ3RoO1xuICBjb25zdCBuQnl0ZUxlbmd0aCA9IE1hdGguY2VpbChfbkJpdExlbmd0aCAvIDgpO1xuICByZXR1cm4geyBuQml0TGVuZ3RoOiBfbkJpdExlbmd0aCwgbkJ5dGVMZW5ndGggfTtcbn1cblxudHlwZSBGcEZpZWxkID0gSUZpZWxkPGJpZ2ludD4gJiBSZXF1aXJlZDxQaWNrPElGaWVsZDxiaWdpbnQ+LCAnaXNPZGQnPj47XG4vKipcbiAqIEluaXRpYWxpemVzIGEgZmluaXRlIGZpZWxkIG92ZXIgcHJpbWUuICoqTm9uLXByaW1lcyBhcmUgbm90IHN1cHBvcnRlZC4qKlxuICogRG8gbm90IGluaXQgaW4gbG9vcDogc2xvdy4gVmVyeSBmcmFnaWxlOiBhbHdheXMgcnVuIGEgYmVuY2htYXJrIG9uIGEgY2hhbmdlLlxuICogTWFqb3IgcGVyZm9ybWFuY2Ugb3B0aW1pemF0aW9uczpcbiAqICogYSkgZGVub3JtYWxpemVkIG9wZXJhdGlvbnMgbGlrZSBtdWxOIGluc3RlYWQgb2YgbXVsXG4gKiAqIGIpIHNhbWUgb2JqZWN0IHNoYXBlOiBuZXZlciBhZGQgb3IgcmVtb3ZlIGtleXNcbiAqICogYykgT2JqZWN0LmZyZWV6ZVxuICogQHBhcmFtIE9SREVSIHByaW1lIHBvc2l0aXZlIGJpZ2ludFxuICogQHBhcmFtIGJpdExlbiBob3cgbWFueSBiaXRzIHRoZSBmaWVsZCBjb25zdW1lc1xuICogQHBhcmFtIGlzTEUgKGRlZjogZmFsc2UpIGlmIGVuY29kaW5nIC8gZGVjb2Rpbmcgc2hvdWxkIGJlIGluIGxpdHRsZS1lbmRpYW5cbiAqIEBwYXJhbSByZWRlZiBvcHRpb25hbCBmYXN0ZXIgcmVkZWZpbml0aW9ucyBvZiBzcXJ0IGFuZCBvdGhlciBtZXRob2RzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBGaWVsZChcbiAgT1JERVI6IGJpZ2ludCxcbiAgYml0TGVuPzogbnVtYmVyLFxuICBpc0xFID0gZmFsc2UsXG4gIHJlZGVmOiBQYXJ0aWFsPElGaWVsZDxiaWdpbnQ+PiA9IHt9XG4pOiBSZWFkb25seTxGcEZpZWxkPiB7XG4gIGlmIChPUkRFUiA8PSBfMG4pIHRocm93IG5ldyBFcnJvcihgRXhwZWN0ZWQgRmllbGQgT1JERVIgPiAwLCBnb3QgJHtPUkRFUn1gKTtcbiAgY29uc3QgeyBuQml0TGVuZ3RoOiBCSVRTLCBuQnl0ZUxlbmd0aDogQllURVMgfSA9IG5MZW5ndGgoT1JERVIsIGJpdExlbik7XG4gIGlmIChCWVRFUyA+IDIwNDgpIHRocm93IG5ldyBFcnJvcignRmllbGQgbGVuZ3RocyBvdmVyIDIwNDggYnl0ZXMgYXJlIG5vdCBzdXBwb3J0ZWQnKTtcbiAgY29uc3Qgc3FydFAgPSBGcFNxcnQoT1JERVIpO1xuICBjb25zdCBmOiBSZWFkb25seTxGcEZpZWxkPiA9IE9iamVjdC5mcmVlemUoe1xuICAgIE9SREVSLFxuICAgIEJJVFMsXG4gICAgQllURVMsXG4gICAgTUFTSzogYml0TWFzayhCSVRTKSxcbiAgICBaRVJPOiBfMG4sXG4gICAgT05FOiBfMW4sXG4gICAgY3JlYXRlOiAobnVtKSA9PiBtb2QobnVtLCBPUkRFUiksXG4gICAgaXNWYWxpZDogKG51bSkgPT4ge1xuICAgICAgaWYgKHR5cGVvZiBudW0gIT09ICdiaWdpbnQnKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgZmllbGQgZWxlbWVudDogZXhwZWN0ZWQgYmlnaW50LCBnb3QgJHt0eXBlb2YgbnVtfWApO1xuICAgICAgcmV0dXJuIF8wbiA8PSBudW0gJiYgbnVtIDwgT1JERVI7IC8vIDAgaXMgdmFsaWQgZWxlbWVudCwgYnV0IGl0J3Mgbm90IGludmVydGlibGVcbiAgICB9LFxuICAgIGlzMDogKG51bSkgPT4gbnVtID09PSBfMG4sXG4gICAgaXNPZGQ6IChudW0pID0+IChudW0gJiBfMW4pID09PSBfMW4sXG4gICAgbmVnOiAobnVtKSA9PiBtb2QoLW51bSwgT1JERVIpLFxuICAgIGVxbDogKGxocywgcmhzKSA9PiBsaHMgPT09IHJocyxcblxuICAgIHNxcjogKG51bSkgPT4gbW9kKG51bSAqIG51bSwgT1JERVIpLFxuICAgIGFkZDogKGxocywgcmhzKSA9PiBtb2QobGhzICsgcmhzLCBPUkRFUiksXG4gICAgc3ViOiAobGhzLCByaHMpID0+IG1vZChsaHMgLSByaHMsIE9SREVSKSxcbiAgICBtdWw6IChsaHMsIHJocykgPT4gbW9kKGxocyAqIHJocywgT1JERVIpLFxuICAgIHBvdzogKG51bSwgcG93ZXIpID0+IEZwUG93KGYsIG51bSwgcG93ZXIpLFxuICAgIGRpdjogKGxocywgcmhzKSA9PiBtb2QobGhzICogaW52ZXJ0KHJocywgT1JERVIpLCBPUkRFUiksXG5cbiAgICAvLyBTYW1lIGFzIGFib3ZlLCBidXQgZG9lc24ndCBub3JtYWxpemVcbiAgICBzcXJOOiAobnVtKSA9PiBudW0gKiBudW0sXG4gICAgYWRkTjogKGxocywgcmhzKSA9PiBsaHMgKyByaHMsXG4gICAgc3ViTjogKGxocywgcmhzKSA9PiBsaHMgLSByaHMsXG4gICAgbXVsTjogKGxocywgcmhzKSA9PiBsaHMgKiByaHMsXG5cbiAgICBpbnY6IChudW0pID0+IGludmVydChudW0sIE9SREVSKSxcbiAgICBzcXJ0OiByZWRlZi5zcXJ0IHx8ICgobikgPT4gc3FydFAoZiwgbikpLFxuICAgIGludmVydEJhdGNoOiAobHN0KSA9PiBGcEludmVydEJhdGNoKGYsIGxzdCksXG4gICAgLy8gVE9ETzogZG8gd2UgcmVhbGx5IG5lZWQgY29uc3RhbnQgY21vdj9cbiAgICAvLyBXZSBkb24ndCBoYXZlIGNvbnN0LXRpbWUgYmlnaW50cyBhbnl3YXksIHNvIHByb2JhYmx5IHdpbGwgYmUgbm90IHZlcnkgdXNlZnVsXG4gICAgY21vdjogKGEsIGIsIGMpID0+IChjID8gYiA6IGEpLFxuICAgIHRvQnl0ZXM6IChudW0pID0+IChpc0xFID8gbnVtYmVyVG9CeXRlc0xFKG51bSwgQllURVMpIDogbnVtYmVyVG9CeXRlc0JFKG51bSwgQllURVMpKSxcbiAgICBmcm9tQnl0ZXM6IChieXRlcykgPT4ge1xuICAgICAgaWYgKGJ5dGVzLmxlbmd0aCAhPT0gQllURVMpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgRnAuZnJvbUJ5dGVzOiBleHBlY3RlZCAke0JZVEVTfSwgZ290ICR7Ynl0ZXMubGVuZ3RofWApO1xuICAgICAgcmV0dXJuIGlzTEUgPyBieXRlc1RvTnVtYmVyTEUoYnl0ZXMpIDogYnl0ZXNUb051bWJlckJFKGJ5dGVzKTtcbiAgICB9LFxuICB9IGFzIEZwRmllbGQpO1xuICByZXR1cm4gT2JqZWN0LmZyZWV6ZShmKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIEZwU3FydE9kZDxUPihGcDogSUZpZWxkPFQ+LCBlbG06IFQpIHtcbiAgaWYgKCFGcC5pc09kZCkgdGhyb3cgbmV3IEVycm9yKGBGaWVsZCBkb2Vzbid0IGhhdmUgaXNPZGRgKTtcbiAgY29uc3Qgcm9vdCA9IEZwLnNxcnQoZWxtKTtcbiAgcmV0dXJuIEZwLmlzT2RkKHJvb3QpID8gcm9vdCA6IEZwLm5lZyhyb290KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIEZwU3FydEV2ZW48VD4oRnA6IElGaWVsZDxUPiwgZWxtOiBUKSB7XG4gIGlmICghRnAuaXNPZGQpIHRocm93IG5ldyBFcnJvcihgRmllbGQgZG9lc24ndCBoYXZlIGlzT2RkYCk7XG4gIGNvbnN0IHJvb3QgPSBGcC5zcXJ0KGVsbSk7XG4gIHJldHVybiBGcC5pc09kZChyb290KSA/IEZwLm5lZyhyb290KSA6IHJvb3Q7XG59XG5cbi8qKlxuICogXCJDb25zdGFudC10aW1lXCIgcHJpdmF0ZSBrZXkgZ2VuZXJhdGlvbiB1dGlsaXR5LlxuICogU2FtZSBhcyBtYXBLZXlUb0ZpZWxkLCBidXQgYWNjZXB0cyBsZXNzIGJ5dGVzICg0MCBpbnN0ZWFkIG9mIDQ4IGZvciAzMi1ieXRlIGZpZWxkKS5cbiAqIFdoaWNoIG1ha2VzIGl0IHNsaWdodGx5IG1vcmUgYmlhc2VkLCBsZXNzIHNlY3VyZS5cbiAqIEBkZXByZWNhdGVkIHVzZSBtYXBLZXlUb0ZpZWxkIGluc3RlYWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGhhc2hUb1ByaXZhdGVTY2FsYXIoXG4gIGhhc2g6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gIGdyb3VwT3JkZXI6IGJpZ2ludCxcbiAgaXNMRSA9IGZhbHNlXG4pOiBiaWdpbnQge1xuICBoYXNoID0gZW5zdXJlQnl0ZXMoJ3ByaXZhdGVIYXNoJywgaGFzaCk7XG4gIGNvbnN0IGhhc2hMZW4gPSBoYXNoLmxlbmd0aDtcbiAgY29uc3QgbWluTGVuID0gbkxlbmd0aChncm91cE9yZGVyKS5uQnl0ZUxlbmd0aCArIDg7XG4gIGlmIChtaW5MZW4gPCAyNCB8fCBoYXNoTGVuIDwgbWluTGVuIHx8IGhhc2hMZW4gPiAxMDI0KVxuICAgIHRocm93IG5ldyBFcnJvcihgaGFzaFRvUHJpdmF0ZVNjYWxhcjogZXhwZWN0ZWQgJHttaW5MZW59LTEwMjQgYnl0ZXMgb2YgaW5wdXQsIGdvdCAke2hhc2hMZW59YCk7XG4gIGNvbnN0IG51bSA9IGlzTEUgPyBieXRlc1RvTnVtYmVyTEUoaGFzaCkgOiBieXRlc1RvTnVtYmVyQkUoaGFzaCk7XG4gIHJldHVybiBtb2QobnVtLCBncm91cE9yZGVyIC0gXzFuKSArIF8xbjtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRvdGFsIG51bWJlciBvZiBieXRlcyBjb25zdW1lZCBieSB0aGUgZmllbGQgZWxlbWVudC5cbiAqIEZvciBleGFtcGxlLCAzMiBieXRlcyBmb3IgdXN1YWwgMjU2LWJpdCB3ZWllcnN0cmFzcyBjdXJ2ZS5cbiAqIEBwYXJhbSBmaWVsZE9yZGVyIG51bWJlciBvZiBmaWVsZCBlbGVtZW50cywgdXN1YWxseSBDVVJWRS5uXG4gKiBAcmV0dXJucyBieXRlIGxlbmd0aCBvZiBmaWVsZFxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0RmllbGRCeXRlc0xlbmd0aChmaWVsZE9yZGVyOiBiaWdpbnQpOiBudW1iZXIge1xuICBpZiAodHlwZW9mIGZpZWxkT3JkZXIgIT09ICdiaWdpbnQnKSB0aHJvdyBuZXcgRXJyb3IoJ2ZpZWxkIG9yZGVyIG11c3QgYmUgYmlnaW50Jyk7XG4gIGNvbnN0IGJpdExlbmd0aCA9IGZpZWxkT3JkZXIudG9TdHJpbmcoMikubGVuZ3RoO1xuICByZXR1cm4gTWF0aC5jZWlsKGJpdExlbmd0aCAvIDgpO1xufVxuXG4vKipcbiAqIFJldHVybnMgbWluaW1hbCBhbW91bnQgb2YgYnl0ZXMgdGhhdCBjYW4gYmUgc2FmZWx5IHJlZHVjZWRcbiAqIGJ5IGZpZWxkIG9yZGVyLlxuICogU2hvdWxkIGJlIDJeLTEyOCBmb3IgMTI4LWJpdCBjdXJ2ZSBzdWNoIGFzIFAyNTYuXG4gKiBAcGFyYW0gZmllbGRPcmRlciBudW1iZXIgb2YgZmllbGQgZWxlbWVudHMsIHVzdWFsbHkgQ1VSVkUublxuICogQHJldHVybnMgYnl0ZSBsZW5ndGggb2YgdGFyZ2V0IGhhc2hcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldE1pbkhhc2hMZW5ndGgoZmllbGRPcmRlcjogYmlnaW50KTogbnVtYmVyIHtcbiAgY29uc3QgbGVuZ3RoID0gZ2V0RmllbGRCeXRlc0xlbmd0aChmaWVsZE9yZGVyKTtcbiAgcmV0dXJuIGxlbmd0aCArIE1hdGguY2VpbChsZW5ndGggLyAyKTtcbn1cblxuLyoqXG4gKiBcIkNvbnN0YW50LXRpbWVcIiBwcml2YXRlIGtleSBnZW5lcmF0aW9uIHV0aWxpdHkuXG4gKiBDYW4gdGFrZSAobiArIG4vMikgb3IgbW9yZSBieXRlcyBvZiB1bmlmb3JtIGlucHV0IGUuZy4gZnJvbSBDU1BSTkcgb3IgS0RGXG4gKiBhbmQgY29udmVydCB0aGVtIGludG8gcHJpdmF0ZSBzY2FsYXIsIHdpdGggdGhlIG1vZHVsbyBiaWFzIGJlaW5nIG5lZ2xpZ2libGUuXG4gKiBOZWVkcyBhdCBsZWFzdCA0OCBieXRlcyBvZiBpbnB1dCBmb3IgMzItYnl0ZSBwcml2YXRlIGtleS5cbiAqIGh0dHBzOi8vcmVzZWFyY2gua3VkZWxza2lzZWN1cml0eS5jb20vMjAyMC8wNy8yOC90aGUtZGVmaW5pdGl2ZS1ndWlkZS10by1tb2R1bG8tYmlhcy1hbmQtaG93LXRvLWF2b2lkLWl0L1xuICogRklQUyAxODYtNSwgQS4yIGh0dHBzOi8vY3NyYy5uaXN0Lmdvdi9wdWJsaWNhdGlvbnMvZGV0YWlsL2ZpcHMvMTg2LzUvZmluYWxcbiAqIFJGQyA5MzgwLCBodHRwczovL3d3dy5yZmMtZWRpdG9yLm9yZy9yZmMvcmZjOTM4MCNzZWN0aW9uLTVcbiAqIEBwYXJhbSBoYXNoIGhhc2ggb3V0cHV0IGZyb20gU0hBMyBvciBhIHNpbWlsYXIgZnVuY3Rpb25cbiAqIEBwYXJhbSBncm91cE9yZGVyIHNpemUgb2Ygc3ViZ3JvdXAgLSAoZS5nLiBzZWNwMjU2azEuQ1VSVkUubilcbiAqIEBwYXJhbSBpc0xFIGludGVycHJldCBoYXNoIGJ5dGVzIGFzIExFIG51bVxuICogQHJldHVybnMgdmFsaWQgcHJpdmF0ZSBzY2FsYXJcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1hcEhhc2hUb0ZpZWxkKGtleTogVWludDhBcnJheSwgZmllbGRPcmRlcjogYmlnaW50LCBpc0xFID0gZmFsc2UpOiBVaW50OEFycmF5IHtcbiAgY29uc3QgbGVuID0ga2V5Lmxlbmd0aDtcbiAgY29uc3QgZmllbGRMZW4gPSBnZXRGaWVsZEJ5dGVzTGVuZ3RoKGZpZWxkT3JkZXIpO1xuICBjb25zdCBtaW5MZW4gPSBnZXRNaW5IYXNoTGVuZ3RoKGZpZWxkT3JkZXIpO1xuICAvLyBObyBzbWFsbCBudW1iZXJzOiBuZWVkIHRvIHVuZGVyc3RhbmQgYmlhcyBzdG9yeS4gTm8gaHVnZSBudW1iZXJzOiBlYXNpZXIgdG8gZGV0ZWN0IEpTIHRpbWluZ3MuXG4gIGlmIChsZW4gPCAxNiB8fCBsZW4gPCBtaW5MZW4gfHwgbGVuID4gMTAyNClcbiAgICB0aHJvdyBuZXcgRXJyb3IoYGV4cGVjdGVkICR7bWluTGVufS0xMDI0IGJ5dGVzIG9mIGlucHV0LCBnb3QgJHtsZW59YCk7XG4gIGNvbnN0IG51bSA9IGlzTEUgPyBieXRlc1RvTnVtYmVyQkUoa2V5KSA6IGJ5dGVzVG9OdW1iZXJMRShrZXkpO1xuICAvLyBgbW9kKHgsIDExKWAgY2FuIHNvbWV0aW1lcyBwcm9kdWNlIDAuIGBtb2QoeCwgMTApICsgMWAgaXMgdGhlIHNhbWUsIGJ1dCBubyAwXG4gIGNvbnN0IHJlZHVjZWQgPSBtb2QobnVtLCBmaWVsZE9yZGVyIC0gXzFuKSArIF8xbjtcbiAgcmV0dXJuIGlzTEUgPyBudW1iZXJUb0J5dGVzTEUocmVkdWNlZCwgZmllbGRMZW4pIDogbnVtYmVyVG9CeXRlc0JFKHJlZHVjZWQsIGZpZWxkTGVuKTtcbn1cbiIsICIvKiEgbm9ibGUtY3VydmVzIC0gTUlUIExpY2Vuc2UgKGMpIDIwMjIgUGF1bCBNaWxsZXIgKHBhdWxtaWxsci5jb20pICovXG4vLyBBYmVsaWFuIGdyb3VwIHV0aWxpdGllc1xuaW1wb3J0IHsgSUZpZWxkLCB2YWxpZGF0ZUZpZWxkLCBuTGVuZ3RoIH0gZnJvbSAnLi9tb2R1bGFyLmpzJztcbmltcG9ydCB7IHZhbGlkYXRlT2JqZWN0IH0gZnJvbSAnLi91dGlscy5qcyc7XG5jb25zdCBfMG4gPSBCaWdJbnQoMCk7XG5jb25zdCBfMW4gPSBCaWdJbnQoMSk7XG5cbmV4cG9ydCB0eXBlIEFmZmluZVBvaW50PFQ+ID0ge1xuICB4OiBUO1xuICB5OiBUO1xufSAmIHsgej86IG5ldmVyOyB0PzogbmV2ZXIgfTtcblxuZXhwb3J0IGludGVyZmFjZSBHcm91cDxUIGV4dGVuZHMgR3JvdXA8VD4+IHtcbiAgZG91YmxlKCk6IFQ7XG4gIG5lZ2F0ZSgpOiBUO1xuICBhZGQob3RoZXI6IFQpOiBUO1xuICBzdWJ0cmFjdChvdGhlcjogVCk6IFQ7XG4gIGVxdWFscyhvdGhlcjogVCk6IGJvb2xlYW47XG4gIG11bHRpcGx5KHNjYWxhcjogYmlnaW50KTogVDtcbn1cblxuZXhwb3J0IHR5cGUgR3JvdXBDb25zdHJ1Y3RvcjxUPiA9IHtcbiAgQkFTRTogVDtcbiAgWkVSTzogVDtcbn07XG5leHBvcnQgdHlwZSBNYXBwZXI8VD4gPSAoaTogVFtdKSA9PiBUW107XG5cbi8vIEVsbGlwdGljIGN1cnZlIG11bHRpcGxpY2F0aW9uIG9mIFBvaW50IGJ5IHNjYWxhci4gRnJhZ2lsZS5cbi8vIFNjYWxhcnMgc2hvdWxkIGFsd2F5cyBiZSBsZXNzIHRoYW4gY3VydmUgb3JkZXI6IHRoaXMgc2hvdWxkIGJlIGNoZWNrZWQgaW5zaWRlIG9mIGEgY3VydmUgaXRzZWxmLlxuLy8gQ3JlYXRlcyBwcmVjb21wdXRhdGlvbiB0YWJsZXMgZm9yIGZhc3QgbXVsdGlwbGljYXRpb246XG4vLyAtIHByaXZhdGUgc2NhbGFyIGlzIHNwbGl0IGJ5IGZpeGVkIHNpemUgd2luZG93cyBvZiBXIGJpdHNcbi8vIC0gZXZlcnkgd2luZG93IHBvaW50IGlzIGNvbGxlY3RlZCBmcm9tIHdpbmRvdydzIHRhYmxlICYgYWRkZWQgdG8gYWNjdW11bGF0b3Jcbi8vIC0gc2luY2Ugd2luZG93cyBhcmUgZGlmZmVyZW50LCBzYW1lIHBvaW50IGluc2lkZSB0YWJsZXMgd29uJ3QgYmUgYWNjZXNzZWQgbW9yZSB0aGFuIG9uY2UgcGVyIGNhbGNcbi8vIC0gZWFjaCBtdWx0aXBsaWNhdGlvbiBpcyAnTWF0aC5jZWlsKENVUlZFX09SREVSIC8gXHVEODM1XHVEQzRBKSArIDEnIHBvaW50IGFkZGl0aW9ucyAoZml4ZWQgZm9yIGFueSBzY2FsYXIpXG4vLyAtICsxIHdpbmRvdyBpcyBuZWNjZXNzYXJ5IGZvciB3TkFGXG4vLyAtIHdOQUYgcmVkdWNlcyB0YWJsZSBzaXplOiAyeCBsZXNzIG1lbW9yeSArIDJ4IGZhc3RlciBnZW5lcmF0aW9uLCBidXQgMTAlIHNsb3dlciBtdWx0aXBsaWNhdGlvblxuLy8gVE9ETzogUmVzZWFyY2ggcmV0dXJuaW5nIDJkIEpTIGFycmF5IG9mIHdpbmRvd3MsIGluc3RlYWQgb2YgYSBzaW5nbGUgd2luZG93LiBUaGlzIHdvdWxkIGFsbG93XG4vLyB3aW5kb3dzIHRvIGJlIGluIGRpZmZlcmVudCBtZW1vcnkgbG9jYXRpb25zXG5leHBvcnQgZnVuY3Rpb24gd05BRjxUIGV4dGVuZHMgR3JvdXA8VD4+KGM6IEdyb3VwQ29uc3RydWN0b3I8VD4sIGJpdHM6IG51bWJlcikge1xuICBjb25zdCBjb25zdFRpbWVOZWdhdGUgPSAoY29uZGl0aW9uOiBib29sZWFuLCBpdGVtOiBUKTogVCA9PiB7XG4gICAgY29uc3QgbmVnID0gaXRlbS5uZWdhdGUoKTtcbiAgICByZXR1cm4gY29uZGl0aW9uID8gbmVnIDogaXRlbTtcbiAgfTtcbiAgY29uc3Qgb3B0cyA9IChXOiBudW1iZXIpID0+IHtcbiAgICBjb25zdCB3aW5kb3dzID0gTWF0aC5jZWlsKGJpdHMgLyBXKSArIDE7IC8vICsxLCBiZWNhdXNlXG4gICAgY29uc3Qgd2luZG93U2l6ZSA9IDIgKiogKFcgLSAxKTsgLy8gLTEgYmVjYXVzZSB3ZSBza2lwIHplcm9cbiAgICByZXR1cm4geyB3aW5kb3dzLCB3aW5kb3dTaXplIH07XG4gIH07XG4gIHJldHVybiB7XG4gICAgY29uc3RUaW1lTmVnYXRlLFxuICAgIC8vIG5vbi1jb25zdCB0aW1lIG11bHRpcGxpY2F0aW9uIGxhZGRlclxuICAgIHVuc2FmZUxhZGRlcihlbG06IFQsIG46IGJpZ2ludCkge1xuICAgICAgbGV0IHAgPSBjLlpFUk87XG4gICAgICBsZXQgZDogVCA9IGVsbTtcbiAgICAgIHdoaWxlIChuID4gXzBuKSB7XG4gICAgICAgIGlmIChuICYgXzFuKSBwID0gcC5hZGQoZCk7XG4gICAgICAgIGQgPSBkLmRvdWJsZSgpO1xuICAgICAgICBuID4+PSBfMW47XG4gICAgICB9XG4gICAgICByZXR1cm4gcDtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlcyBhIHdOQUYgcHJlY29tcHV0YXRpb24gd2luZG93LiBVc2VkIGZvciBjYWNoaW5nLlxuICAgICAqIERlZmF1bHQgd2luZG93IHNpemUgaXMgc2V0IGJ5IGB1dGlscy5wcmVjb21wdXRlKClgIGFuZCBpcyBlcXVhbCB0byA4LlxuICAgICAqIE51bWJlciBvZiBwcmVjb21wdXRlZCBwb2ludHMgZGVwZW5kcyBvbiB0aGUgY3VydmUgc2l6ZTpcbiAgICAgKiAyXihcdUQ4MzVcdURDNEFcdTIyMTIxKSAqIChNYXRoLmNlaWwoXHVEODM1XHVEQzVCIC8gXHVEODM1XHVEQzRBKSArIDEpLCB3aGVyZTpcbiAgICAgKiAtIFx1RDgzNVx1REM0QSBpcyB0aGUgd2luZG93IHNpemVcbiAgICAgKiAtIFx1RDgzNVx1REM1QiBpcyB0aGUgYml0bGVuZ3RoIG9mIHRoZSBjdXJ2ZSBvcmRlci5cbiAgICAgKiBGb3IgYSAyNTYtYml0IGN1cnZlIGFuZCB3aW5kb3cgc2l6ZSA4LCB0aGUgbnVtYmVyIG9mIHByZWNvbXB1dGVkIHBvaW50cyBpcyAxMjggKiAzMyA9IDQyMjQuXG4gICAgICogQHJldHVybnMgcHJlY29tcHV0ZWQgcG9pbnQgdGFibGVzIGZsYXR0ZW5lZCB0byBhIHNpbmdsZSBhcnJheVxuICAgICAqL1xuICAgIHByZWNvbXB1dGVXaW5kb3coZWxtOiBULCBXOiBudW1iZXIpOiBHcm91cDxUPltdIHtcbiAgICAgIGNvbnN0IHsgd2luZG93cywgd2luZG93U2l6ZSB9ID0gb3B0cyhXKTtcbiAgICAgIGNvbnN0IHBvaW50czogVFtdID0gW107XG4gICAgICBsZXQgcDogVCA9IGVsbTtcbiAgICAgIGxldCBiYXNlID0gcDtcbiAgICAgIGZvciAobGV0IHdpbmRvdyA9IDA7IHdpbmRvdyA8IHdpbmRvd3M7IHdpbmRvdysrKSB7XG4gICAgICAgIGJhc2UgPSBwO1xuICAgICAgICBwb2ludHMucHVzaChiYXNlKTtcbiAgICAgICAgLy8gPTEsIGJlY2F1c2Ugd2Ugc2tpcCB6ZXJvXG4gICAgICAgIGZvciAobGV0IGkgPSAxOyBpIDwgd2luZG93U2l6ZTsgaSsrKSB7XG4gICAgICAgICAgYmFzZSA9IGJhc2UuYWRkKHApO1xuICAgICAgICAgIHBvaW50cy5wdXNoKGJhc2UpO1xuICAgICAgICB9XG4gICAgICAgIHAgPSBiYXNlLmRvdWJsZSgpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHBvaW50cztcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogSW1wbGVtZW50cyBlYyBtdWx0aXBsaWNhdGlvbiB1c2luZyBwcmVjb21wdXRlZCB0YWJsZXMgYW5kIHctYXJ5IG5vbi1hZGphY2VudCBmb3JtLlxuICAgICAqIEBwYXJhbSBXIHdpbmRvdyBzaXplXG4gICAgICogQHBhcmFtIHByZWNvbXB1dGVzIHByZWNvbXB1dGVkIHRhYmxlc1xuICAgICAqIEBwYXJhbSBuIHNjYWxhciAod2UgZG9uJ3QgY2hlY2sgaGVyZSwgYnV0IHNob3VsZCBiZSBsZXNzIHRoYW4gY3VydmUgb3JkZXIpXG4gICAgICogQHJldHVybnMgcmVhbCBhbmQgZmFrZSAoZm9yIGNvbnN0LXRpbWUpIHBvaW50c1xuICAgICAqL1xuICAgIHdOQUYoVzogbnVtYmVyLCBwcmVjb21wdXRlczogVFtdLCBuOiBiaWdpbnQpOiB7IHA6IFQ7IGY6IFQgfSB7XG4gICAgICAvLyBUT0RPOiBtYXliZSBjaGVjayB0aGF0IHNjYWxhciBpcyBsZXNzIHRoYW4gZ3JvdXAgb3JkZXI/IHdOQUYgYmVoYXZpb3VzIGlzIHVuZGVmaW5lZCBvdGhlcndpc2VcbiAgICAgIC8vIEJ1dCBuZWVkIHRvIGNhcmVmdWxseSByZW1vdmUgb3RoZXIgY2hlY2tzIGJlZm9yZSB3TkFGLiBPUkRFUiA9PSBiaXRzIGhlcmVcbiAgICAgIGNvbnN0IHsgd2luZG93cywgd2luZG93U2l6ZSB9ID0gb3B0cyhXKTtcblxuICAgICAgbGV0IHAgPSBjLlpFUk87XG4gICAgICBsZXQgZiA9IGMuQkFTRTtcblxuICAgICAgY29uc3QgbWFzayA9IEJpZ0ludCgyICoqIFcgLSAxKTsgLy8gQ3JlYXRlIG1hc2sgd2l0aCBXIG9uZXM6IDBiMTExMSBmb3IgVz00IGV0Yy5cbiAgICAgIGNvbnN0IG1heE51bWJlciA9IDIgKiogVztcbiAgICAgIGNvbnN0IHNoaWZ0QnkgPSBCaWdJbnQoVyk7XG5cbiAgICAgIGZvciAobGV0IHdpbmRvdyA9IDA7IHdpbmRvdyA8IHdpbmRvd3M7IHdpbmRvdysrKSB7XG4gICAgICAgIGNvbnN0IG9mZnNldCA9IHdpbmRvdyAqIHdpbmRvd1NpemU7XG4gICAgICAgIC8vIEV4dHJhY3QgVyBiaXRzLlxuICAgICAgICBsZXQgd2JpdHMgPSBOdW1iZXIobiAmIG1hc2spO1xuXG4gICAgICAgIC8vIFNoaWZ0IG51bWJlciBieSBXIGJpdHMuXG4gICAgICAgIG4gPj49IHNoaWZ0Qnk7XG5cbiAgICAgICAgLy8gSWYgdGhlIGJpdHMgYXJlIGJpZ2dlciB0aGFuIG1heCBzaXplLCB3ZSdsbCBzcGxpdCB0aG9zZS5cbiAgICAgICAgLy8gKzIyNCA9PiAyNTYgLSAzMlxuICAgICAgICBpZiAod2JpdHMgPiB3aW5kb3dTaXplKSB7XG4gICAgICAgICAgd2JpdHMgLT0gbWF4TnVtYmVyO1xuICAgICAgICAgIG4gKz0gXzFuO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gVGhpcyBjb2RlIHdhcyBmaXJzdCB3cml0dGVuIHdpdGggYXNzdW1wdGlvbiB0aGF0ICdmJyBhbmQgJ3AnIHdpbGwgbmV2ZXIgYmUgaW5maW5pdHkgcG9pbnQ6XG4gICAgICAgIC8vIHNpbmNlIGVhY2ggYWRkaXRpb24gaXMgbXVsdGlwbGllZCBieSAyICoqIFcsIGl0IGNhbm5vdCBjYW5jZWwgZWFjaCBvdGhlci4gSG93ZXZlcixcbiAgICAgICAgLy8gdGhlcmUgaXMgbmVnYXRlIG5vdzogaXQgaXMgcG9zc2libGUgdGhhdCBuZWdhdGVkIGVsZW1lbnQgZnJvbSBsb3cgdmFsdWVcbiAgICAgICAgLy8gd291bGQgYmUgdGhlIHNhbWUgYXMgaGlnaCBlbGVtZW50LCB3aGljaCB3aWxsIGNyZWF0ZSBjYXJyeSBpbnRvIG5leHQgd2luZG93LlxuICAgICAgICAvLyBJdCdzIG5vdCBvYnZpb3VzIGhvdyB0aGlzIGNhbiBmYWlsLCBidXQgc3RpbGwgd29ydGggaW52ZXN0aWdhdGluZyBsYXRlci5cblxuICAgICAgICAvLyBDaGVjayBpZiB3ZSdyZSBvbnRvIFplcm8gcG9pbnQuXG4gICAgICAgIC8vIEFkZCByYW5kb20gcG9pbnQgaW5zaWRlIGN1cnJlbnQgd2luZG93IHRvIGYuXG4gICAgICAgIGNvbnN0IG9mZnNldDEgPSBvZmZzZXQ7XG4gICAgICAgIGNvbnN0IG9mZnNldDIgPSBvZmZzZXQgKyBNYXRoLmFicyh3Yml0cykgLSAxOyAvLyAtMSBiZWNhdXNlIHdlIHNraXAgemVyb1xuICAgICAgICBjb25zdCBjb25kMSA9IHdpbmRvdyAlIDIgIT09IDA7XG4gICAgICAgIGNvbnN0IGNvbmQyID0gd2JpdHMgPCAwO1xuICAgICAgICBpZiAod2JpdHMgPT09IDApIHtcbiAgICAgICAgICAvLyBUaGUgbW9zdCBpbXBvcnRhbnQgcGFydCBmb3IgY29uc3QtdGltZSBnZXRQdWJsaWNLZXlcbiAgICAgICAgICBmID0gZi5hZGQoY29uc3RUaW1lTmVnYXRlKGNvbmQxLCBwcmVjb21wdXRlc1tvZmZzZXQxXSkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHAgPSBwLmFkZChjb25zdFRpbWVOZWdhdGUoY29uZDIsIHByZWNvbXB1dGVzW29mZnNldDJdKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC8vIEpJVC1jb21waWxlciBzaG91bGQgbm90IGVsaW1pbmF0ZSBmIGhlcmUsIHNpbmNlIGl0IHdpbGwgbGF0ZXIgYmUgdXNlZCBpbiBub3JtYWxpemVaKClcbiAgICAgIC8vIEV2ZW4gaWYgdGhlIHZhcmlhYmxlIGlzIHN0aWxsIHVudXNlZCwgdGhlcmUgYXJlIHNvbWUgY2hlY2tzIHdoaWNoIHdpbGxcbiAgICAgIC8vIHRocm93IGFuIGV4Y2VwdGlvbiwgc28gY29tcGlsZXIgbmVlZHMgdG8gcHJvdmUgdGhleSB3b24ndCBoYXBwZW4sIHdoaWNoIGlzIGhhcmQuXG4gICAgICAvLyBBdCB0aGlzIHBvaW50IHRoZXJlIGlzIGEgd2F5IHRvIEYgYmUgaW5maW5pdHktcG9pbnQgZXZlbiBpZiBwIGlzIG5vdCxcbiAgICAgIC8vIHdoaWNoIG1ha2VzIGl0IGxlc3MgY29uc3QtdGltZTogYXJvdW5kIDEgYmlnaW50IG11bHRpcGx5LlxuICAgICAgcmV0dXJuIHsgcCwgZiB9O1xuICAgIH0sXG5cbiAgICB3TkFGQ2FjaGVkKFA6IFQsIHByZWNvbXB1dGVzTWFwOiBNYXA8VCwgVFtdPiwgbjogYmlnaW50LCB0cmFuc2Zvcm06IE1hcHBlcjxUPik6IHsgcDogVDsgZjogVCB9IHtcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIGNvbnN0IFc6IG51bWJlciA9IFAuX1dJTkRPV19TSVpFIHx8IDE7XG4gICAgICAvLyBDYWxjdWxhdGUgcHJlY29tcHV0ZXMgb24gYSBmaXJzdCBydW4sIHJldXNlIHRoZW0gYWZ0ZXJcbiAgICAgIGxldCBjb21wID0gcHJlY29tcHV0ZXNNYXAuZ2V0KFApO1xuICAgICAgaWYgKCFjb21wKSB7XG4gICAgICAgIGNvbXAgPSB0aGlzLnByZWNvbXB1dGVXaW5kb3coUCwgVykgYXMgVFtdO1xuICAgICAgICBpZiAoVyAhPT0gMSkge1xuICAgICAgICAgIHByZWNvbXB1dGVzTWFwLnNldChQLCB0cmFuc2Zvcm0oY29tcCkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gdGhpcy53TkFGKFcsIGNvbXAsIG4pO1xuICAgIH0sXG4gIH07XG59XG5cbi8vIEdlbmVyaWMgQmFzaWNDdXJ2ZSBpbnRlcmZhY2U6IHdvcmtzIGV2ZW4gZm9yIHBvbHlub21pYWwgZmllbGRzIChCTFMpOiBQLCBuLCBoIHdvdWxkIGJlIG9rLlxuLy8gVGhvdWdoIGdlbmVyYXRvciBjYW4gYmUgZGlmZmVyZW50IChGcDIgLyBGcDYgZm9yIEJMUykuXG5leHBvcnQgdHlwZSBCYXNpY0N1cnZlPFQ+ID0ge1xuICBGcDogSUZpZWxkPFQ+OyAvLyBGaWVsZCBvdmVyIHdoaWNoIHdlJ2xsIGRvIGNhbGN1bGF0aW9ucyAoRnApXG4gIG46IGJpZ2ludDsgLy8gQ3VydmUgb3JkZXIsIHRvdGFsIGNvdW50IG9mIHZhbGlkIHBvaW50cyBpbiB0aGUgZmllbGRcbiAgbkJpdExlbmd0aD86IG51bWJlcjsgLy8gYml0IGxlbmd0aCBvZiBjdXJ2ZSBvcmRlclxuICBuQnl0ZUxlbmd0aD86IG51bWJlcjsgLy8gYnl0ZSBsZW5ndGggb2YgY3VydmUgb3JkZXJcbiAgaDogYmlnaW50OyAvLyBjb2ZhY3Rvci4gd2UgY2FuIGFzc2lnbiBkZWZhdWx0PTEsIGJ1dCB1c2VycyB3aWxsIGp1c3QgaWdub3JlIGl0IHcvbyB2YWxpZGF0aW9uXG4gIGhFZmY/OiBiaWdpbnQ7IC8vIE51bWJlciB0byBtdWx0aXBseSB0byBjbGVhciBjb2ZhY3RvclxuICBHeDogVDsgLy8gYmFzZSBwb2ludCBYIGNvb3JkaW5hdGVcbiAgR3k6IFQ7IC8vIGJhc2UgcG9pbnQgWSBjb29yZGluYXRlXG4gIGFsbG93SW5maW5pdHlQb2ludD86IGJvb2xlYW47IC8vIGJsczEyLTM4MSByZXF1aXJlcyBpdC4gWkVSTyBwb2ludCBpcyB2YWxpZCwgYnV0IGludmFsaWQgcHVia2V5XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVCYXNpYzxGUCwgVD4oY3VydmU6IEJhc2ljQ3VydmU8RlA+ICYgVCkge1xuICB2YWxpZGF0ZUZpZWxkKGN1cnZlLkZwKTtcbiAgdmFsaWRhdGVPYmplY3QoXG4gICAgY3VydmUsXG4gICAge1xuICAgICAgbjogJ2JpZ2ludCcsXG4gICAgICBoOiAnYmlnaW50JyxcbiAgICAgIEd4OiAnZmllbGQnLFxuICAgICAgR3k6ICdmaWVsZCcsXG4gICAgfSxcbiAgICB7XG4gICAgICBuQml0TGVuZ3RoOiAnaXNTYWZlSW50ZWdlcicsXG4gICAgICBuQnl0ZUxlbmd0aDogJ2lzU2FmZUludGVnZXInLFxuICAgIH1cbiAgKTtcbiAgLy8gU2V0IGRlZmF1bHRzXG4gIHJldHVybiBPYmplY3QuZnJlZXplKHtcbiAgICAuLi5uTGVuZ3RoKGN1cnZlLm4sIGN1cnZlLm5CaXRMZW5ndGgpLFxuICAgIC4uLmN1cnZlLFxuICAgIC4uLnsgcDogY3VydmUuRnAuT1JERVIgfSxcbiAgfSBhcyBjb25zdCk7XG59XG4iLCAiLyohIG5vYmxlLWN1cnZlcyAtIE1JVCBMaWNlbnNlIChjKSAyMDIyIFBhdWwgTWlsbGVyIChwYXVsbWlsbHIuY29tKSAqL1xuLy8gVHdpc3RlZCBFZHdhcmRzIGN1cnZlLiBUaGUgZm9ybXVsYSBpczogYXhcdTAwQjIgKyB5XHUwMEIyID0gMSArIGR4XHUwMEIyeVx1MDBCMlxuaW1wb3J0IHsgbW9kIH0gZnJvbSAnLi9tb2R1bGFyLmpzJztcbmltcG9ydCAqIGFzIHV0IGZyb20gJy4vdXRpbHMuanMnO1xuaW1wb3J0IHsgZW5zdXJlQnl0ZXMsIEZIYXNoLCBIZXggfSBmcm9tICcuL3V0aWxzLmpzJztcbmltcG9ydCB7IEdyb3VwLCBHcm91cENvbnN0cnVjdG9yLCB3TkFGLCBCYXNpY0N1cnZlLCB2YWxpZGF0ZUJhc2ljLCBBZmZpbmVQb2ludCB9IGZyb20gJy4vY3VydmUuanMnO1xuXG4vLyBCZSBmcmllbmRseSB0byBiYWQgRUNNQVNjcmlwdCBwYXJzZXJzIGJ5IG5vdCB1c2luZyBiaWdpbnQgbGl0ZXJhbHNcbi8vIHByZXR0aWVyLWlnbm9yZVxuY29uc3QgXzBuID0gQmlnSW50KDApLCBfMW4gPSBCaWdJbnQoMSksIF8ybiA9IEJpZ0ludCgyKSwgXzhuID0gQmlnSW50KDgpO1xuXG4vLyBFZHdhcmRzIGN1cnZlcyBtdXN0IGRlY2xhcmUgcGFyYW1zIGEgJiBkLlxuZXhwb3J0IHR5cGUgQ3VydmVUeXBlID0gQmFzaWNDdXJ2ZTxiaWdpbnQ+ICYge1xuICBhOiBiaWdpbnQ7IC8vIGN1cnZlIHBhcmFtIGFcbiAgZDogYmlnaW50OyAvLyBjdXJ2ZSBwYXJhbSBkXG4gIGhhc2g6IEZIYXNoOyAvLyBIYXNoaW5nXG4gIHJhbmRvbUJ5dGVzOiAoYnl0ZXNMZW5ndGg/OiBudW1iZXIpID0+IFVpbnQ4QXJyYXk7IC8vIENTUFJOR1xuICBhZGp1c3RTY2FsYXJCeXRlcz86IChieXRlczogVWludDhBcnJheSkgPT4gVWludDhBcnJheTsgLy8gY2xlYXJzIGJpdHMgdG8gZ2V0IHZhbGlkIGZpZWxkIGVsZW10blxuICBkb21haW4/OiAoZGF0YTogVWludDhBcnJheSwgY3R4OiBVaW50OEFycmF5LCBwaGZsYWc6IGJvb2xlYW4pID0+IFVpbnQ4QXJyYXk7IC8vIFVzZWQgZm9yIGhhc2hpbmdcbiAgdXZSYXRpbz86ICh1OiBiaWdpbnQsIHY6IGJpZ2ludCkgPT4geyBpc1ZhbGlkOiBib29sZWFuOyB2YWx1ZTogYmlnaW50IH07IC8vIFJhdGlvIFx1MjIxQSh1L3YpXG4gIHByZWhhc2g/OiBGSGFzaDsgLy8gUkZDIDgwMzIgcHJlLWhhc2hpbmcgb2YgbWVzc2FnZXMgdG8gc2lnbigpIC8gdmVyaWZ5KClcbiAgbWFwVG9DdXJ2ZT86IChzY2FsYXI6IGJpZ2ludFtdKSA9PiBBZmZpbmVQb2ludDxiaWdpbnQ+OyAvLyBmb3IgaGFzaC10by1jdXJ2ZSBzdGFuZGFyZFxufTtcblxuLy8gdmVyaWZpY2F0aW9uIHJ1bGUgaXMgZWl0aGVyIHppcDIxNSBvciByZmM4MDMyIC8gbmlzdDE4Ni01LiBDb25zdWx0IGZyb21IZXg6XG5jb25zdCBWRVJJRllfREVGQVVMVCA9IHsgemlwMjE1OiB0cnVlIH07XG5cbmZ1bmN0aW9uIHZhbGlkYXRlT3B0cyhjdXJ2ZTogQ3VydmVUeXBlKSB7XG4gIGNvbnN0IG9wdHMgPSB2YWxpZGF0ZUJhc2ljKGN1cnZlKTtcbiAgdXQudmFsaWRhdGVPYmplY3QoXG4gICAgY3VydmUsXG4gICAge1xuICAgICAgaGFzaDogJ2Z1bmN0aW9uJyxcbiAgICAgIGE6ICdiaWdpbnQnLFxuICAgICAgZDogJ2JpZ2ludCcsXG4gICAgICByYW5kb21CeXRlczogJ2Z1bmN0aW9uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgIGFkanVzdFNjYWxhckJ5dGVzOiAnZnVuY3Rpb24nLFxuICAgICAgZG9tYWluOiAnZnVuY3Rpb24nLFxuICAgICAgdXZSYXRpbzogJ2Z1bmN0aW9uJyxcbiAgICAgIG1hcFRvQ3VydmU6ICdmdW5jdGlvbicsXG4gICAgfVxuICApO1xuICAvLyBTZXQgZGVmYXVsdHNcbiAgcmV0dXJuIE9iamVjdC5mcmVlemUoeyAuLi5vcHRzIH0gYXMgY29uc3QpO1xufVxuXG4vLyBJbnN0YW5jZSBvZiBFeHRlbmRlZCBQb2ludCB3aXRoIGNvb3JkaW5hdGVzIGluIFgsIFksIFosIFRcbmV4cG9ydCBpbnRlcmZhY2UgRXh0UG9pbnRUeXBlIGV4dGVuZHMgR3JvdXA8RXh0UG9pbnRUeXBlPiB7XG4gIHJlYWRvbmx5IGV4OiBiaWdpbnQ7XG4gIHJlYWRvbmx5IGV5OiBiaWdpbnQ7XG4gIHJlYWRvbmx5IGV6OiBiaWdpbnQ7XG4gIHJlYWRvbmx5IGV0OiBiaWdpbnQ7XG4gIGdldCB4KCk6IGJpZ2ludDtcbiAgZ2V0IHkoKTogYmlnaW50O1xuICBhc3NlcnRWYWxpZGl0eSgpOiB2b2lkO1xuICBtdWx0aXBseShzY2FsYXI6IGJpZ2ludCk6IEV4dFBvaW50VHlwZTtcbiAgbXVsdGlwbHlVbnNhZmUoc2NhbGFyOiBiaWdpbnQpOiBFeHRQb2ludFR5cGU7XG4gIGlzU21hbGxPcmRlcigpOiBib29sZWFuO1xuICBpc1RvcnNpb25GcmVlKCk6IGJvb2xlYW47XG4gIGNsZWFyQ29mYWN0b3IoKTogRXh0UG9pbnRUeXBlO1xuICB0b0FmZmluZShpej86IGJpZ2ludCk6IEFmZmluZVBvaW50PGJpZ2ludD47XG4gIHRvUmF3Qnl0ZXMoaXNDb21wcmVzc2VkPzogYm9vbGVhbik6IFVpbnQ4QXJyYXk7XG4gIHRvSGV4KGlzQ29tcHJlc3NlZD86IGJvb2xlYW4pOiBzdHJpbmc7XG59XG4vLyBTdGF0aWMgbWV0aG9kcyBvZiBFeHRlbmRlZCBQb2ludCB3aXRoIGNvb3JkaW5hdGVzIGluIFgsIFksIFosIFRcbmV4cG9ydCBpbnRlcmZhY2UgRXh0UG9pbnRDb25zdHJ1Y3RvciBleHRlbmRzIEdyb3VwQ29uc3RydWN0b3I8RXh0UG9pbnRUeXBlPiB7XG4gIG5ldyAoeDogYmlnaW50LCB5OiBiaWdpbnQsIHo6IGJpZ2ludCwgdDogYmlnaW50KTogRXh0UG9pbnRUeXBlO1xuICBmcm9tQWZmaW5lKHA6IEFmZmluZVBvaW50PGJpZ2ludD4pOiBFeHRQb2ludFR5cGU7XG4gIGZyb21IZXgoaGV4OiBIZXgpOiBFeHRQb2ludFR5cGU7XG4gIGZyb21Qcml2YXRlS2V5KHByaXZhdGVLZXk6IEhleCk6IEV4dFBvaW50VHlwZTtcbn1cblxuZXhwb3J0IHR5cGUgQ3VydmVGbiA9IHtcbiAgQ1VSVkU6IFJldHVyblR5cGU8dHlwZW9mIHZhbGlkYXRlT3B0cz47XG4gIGdldFB1YmxpY0tleTogKHByaXZhdGVLZXk6IEhleCkgPT4gVWludDhBcnJheTtcbiAgc2lnbjogKG1lc3NhZ2U6IEhleCwgcHJpdmF0ZUtleTogSGV4LCBvcHRpb25zPzogeyBjb250ZXh0PzogSGV4IH0pID0+IFVpbnQ4QXJyYXk7XG4gIHZlcmlmeTogKFxuICAgIHNpZzogSGV4LFxuICAgIG1lc3NhZ2U6IEhleCxcbiAgICBwdWJsaWNLZXk6IEhleCxcbiAgICBvcHRpb25zPzogeyBjb250ZXh0PzogSGV4OyB6aXAyMTU6IGJvb2xlYW4gfVxuICApID0+IGJvb2xlYW47XG4gIEV4dGVuZGVkUG9pbnQ6IEV4dFBvaW50Q29uc3RydWN0b3I7XG4gIHV0aWxzOiB7XG4gICAgcmFuZG9tUHJpdmF0ZUtleTogKCkgPT4gVWludDhBcnJheTtcbiAgICBnZXRFeHRlbmRlZFB1YmxpY0tleTogKGtleTogSGV4KSA9PiB7XG4gICAgICBoZWFkOiBVaW50OEFycmF5O1xuICAgICAgcHJlZml4OiBVaW50OEFycmF5O1xuICAgICAgc2NhbGFyOiBiaWdpbnQ7XG4gICAgICBwb2ludDogRXh0UG9pbnRUeXBlO1xuICAgICAgcG9pbnRCeXRlczogVWludDhBcnJheTtcbiAgICB9O1xuICB9O1xufTtcblxuLy8gSXQgaXMgbm90IGdlbmVyaWMgdHdpc3RlZCBjdXJ2ZSBmb3Igbm93LCBidXQgZWQyNTUxOS9lZDQ0OCBnZW5lcmljIGltcGxlbWVudGF0aW9uXG5leHBvcnQgZnVuY3Rpb24gdHdpc3RlZEVkd2FyZHMoY3VydmVEZWY6IEN1cnZlVHlwZSk6IEN1cnZlRm4ge1xuICBjb25zdCBDVVJWRSA9IHZhbGlkYXRlT3B0cyhjdXJ2ZURlZikgYXMgUmV0dXJuVHlwZTx0eXBlb2YgdmFsaWRhdGVPcHRzPjtcbiAgY29uc3Qge1xuICAgIEZwLFxuICAgIG46IENVUlZFX09SREVSLFxuICAgIHByZWhhc2g6IHByZWhhc2gsXG4gICAgaGFzaDogY0hhc2gsXG4gICAgcmFuZG9tQnl0ZXMsXG4gICAgbkJ5dGVMZW5ndGgsXG4gICAgaDogY29mYWN0b3IsXG4gIH0gPSBDVVJWRTtcbiAgY29uc3QgTUFTSyA9IF8ybiA8PCAoQmlnSW50KG5CeXRlTGVuZ3RoICogOCkgLSBfMW4pO1xuICBjb25zdCBtb2RQID0gRnAuY3JlYXRlOyAvLyBGdW5jdGlvbiBvdmVycmlkZXNcblxuICAvLyBzcXJ0KHUvdilcbiAgY29uc3QgdXZSYXRpbyA9XG4gICAgQ1VSVkUudXZSYXRpbyB8fFxuICAgICgodTogYmlnaW50LCB2OiBiaWdpbnQpID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIHJldHVybiB7IGlzVmFsaWQ6IHRydWUsIHZhbHVlOiBGcC5zcXJ0KHUgKiBGcC5pbnYodikpIH07XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIHJldHVybiB7IGlzVmFsaWQ6IGZhbHNlLCB2YWx1ZTogXzBuIH07XG4gICAgICB9XG4gICAgfSk7XG4gIGNvbnN0IGFkanVzdFNjYWxhckJ5dGVzID0gQ1VSVkUuYWRqdXN0U2NhbGFyQnl0ZXMgfHwgKChieXRlczogVWludDhBcnJheSkgPT4gYnl0ZXMpOyAvLyBOT09QXG4gIGNvbnN0IGRvbWFpbiA9XG4gICAgQ1VSVkUuZG9tYWluIHx8XG4gICAgKChkYXRhOiBVaW50OEFycmF5LCBjdHg6IFVpbnQ4QXJyYXksIHBoZmxhZzogYm9vbGVhbikgPT4ge1xuICAgICAgaWYgKGN0eC5sZW5ndGggfHwgcGhmbGFnKSB0aHJvdyBuZXcgRXJyb3IoJ0NvbnRleHRzL3ByZS1oYXNoIGFyZSBub3Qgc3VwcG9ydGVkJyk7XG4gICAgICByZXR1cm4gZGF0YTtcbiAgICB9KTsgLy8gTk9PUFxuICBjb25zdCBpbkJpZyA9IChuOiBiaWdpbnQpID0+IHR5cGVvZiBuID09PSAnYmlnaW50JyAmJiBfMG4gPCBuOyAvLyBuIGluIFsxLi5dXG4gIGNvbnN0IGluUmFuZ2UgPSAobjogYmlnaW50LCBtYXg6IGJpZ2ludCkgPT4gaW5CaWcobikgJiYgaW5CaWcobWF4KSAmJiBuIDwgbWF4OyAvLyBuIGluIFsxLi5tYXgtMV1cbiAgY29uc3QgaW4wTWFza1JhbmdlID0gKG46IGJpZ2ludCkgPT4gbiA9PT0gXzBuIHx8IGluUmFuZ2UobiwgTUFTSyk7IC8vIG4gaW4gWzAuLk1BU0stMV1cbiAgZnVuY3Rpb24gYXNzZXJ0SW5SYW5nZShuOiBiaWdpbnQsIG1heDogYmlnaW50KSB7XG4gICAgLy8gbiBpbiBbMS4ubWF4LTFdXG4gICAgaWYgKGluUmFuZ2UobiwgbWF4KSkgcmV0dXJuIG47XG4gICAgdGhyb3cgbmV3IEVycm9yKGBFeHBlY3RlZCB2YWxpZCBzY2FsYXIgPCAke21heH0sIGdvdCAke3R5cGVvZiBufSAke259YCk7XG4gIH1cbiAgZnVuY3Rpb24gYXNzZXJ0R0UwKG46IGJpZ2ludCkge1xuICAgIC8vIG4gaW4gWzAuLkNVUlZFX09SREVSLTFdXG4gICAgcmV0dXJuIG4gPT09IF8wbiA/IG4gOiBhc3NlcnRJblJhbmdlKG4sIENVUlZFX09SREVSKTsgLy8gR0UgPSBwcmltZSBzdWJncm91cCwgbm90IGZ1bGwgZ3JvdXBcbiAgfVxuICBjb25zdCBwb2ludFByZWNvbXB1dGVzID0gbmV3IE1hcDxQb2ludCwgUG9pbnRbXT4oKTtcbiAgZnVuY3Rpb24gaXNQb2ludChvdGhlcjogdW5rbm93bikge1xuICAgIGlmICghKG90aGVyIGluc3RhbmNlb2YgUG9pbnQpKSB0aHJvdyBuZXcgRXJyb3IoJ0V4dGVuZGVkUG9pbnQgZXhwZWN0ZWQnKTtcbiAgfVxuICAvLyBFeHRlbmRlZCBQb2ludCB3b3JrcyBpbiBleHRlbmRlZCBjb29yZGluYXRlczogKHgsIHksIHosIHQpIFx1MjIwQiAoeD14L3osIHk9eS96LCB0PXh5KS5cbiAgLy8gaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvVHdpc3RlZF9FZHdhcmRzX2N1cnZlI0V4dGVuZGVkX2Nvb3JkaW5hdGVzXG4gIGNsYXNzIFBvaW50IGltcGxlbWVudHMgRXh0UG9pbnRUeXBlIHtcbiAgICBzdGF0aWMgcmVhZG9ubHkgQkFTRSA9IG5ldyBQb2ludChDVVJWRS5HeCwgQ1VSVkUuR3ksIF8xbiwgbW9kUChDVVJWRS5HeCAqIENVUlZFLkd5KSk7XG4gICAgc3RhdGljIHJlYWRvbmx5IFpFUk8gPSBuZXcgUG9pbnQoXzBuLCBfMW4sIF8xbiwgXzBuKTsgLy8gMCwgMSwgMSwgMFxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICByZWFkb25seSBleDogYmlnaW50LFxuICAgICAgcmVhZG9ubHkgZXk6IGJpZ2ludCxcbiAgICAgIHJlYWRvbmx5IGV6OiBiaWdpbnQsXG4gICAgICByZWFkb25seSBldDogYmlnaW50XG4gICAgKSB7XG4gICAgICBpZiAoIWluME1hc2tSYW5nZShleCkpIHRocm93IG5ldyBFcnJvcigneCByZXF1aXJlZCcpO1xuICAgICAgaWYgKCFpbjBNYXNrUmFuZ2UoZXkpKSB0aHJvdyBuZXcgRXJyb3IoJ3kgcmVxdWlyZWQnKTtcbiAgICAgIGlmICghaW4wTWFza1JhbmdlKGV6KSkgdGhyb3cgbmV3IEVycm9yKCd6IHJlcXVpcmVkJyk7XG4gICAgICBpZiAoIWluME1hc2tSYW5nZShldCkpIHRocm93IG5ldyBFcnJvcigndCByZXF1aXJlZCcpO1xuICAgIH1cblxuICAgIGdldCB4KCk6IGJpZ2ludCB7XG4gICAgICByZXR1cm4gdGhpcy50b0FmZmluZSgpLng7XG4gICAgfVxuICAgIGdldCB5KCk6IGJpZ2ludCB7XG4gICAgICByZXR1cm4gdGhpcy50b0FmZmluZSgpLnk7XG4gICAgfVxuXG4gICAgc3RhdGljIGZyb21BZmZpbmUocDogQWZmaW5lUG9pbnQ8YmlnaW50Pik6IFBvaW50IHtcbiAgICAgIGlmIChwIGluc3RhbmNlb2YgUG9pbnQpIHRocm93IG5ldyBFcnJvcignZXh0ZW5kZWQgcG9pbnQgbm90IGFsbG93ZWQnKTtcbiAgICAgIGNvbnN0IHsgeCwgeSB9ID0gcCB8fCB7fTtcbiAgICAgIGlmICghaW4wTWFza1JhbmdlKHgpIHx8ICFpbjBNYXNrUmFuZ2UoeSkpIHRocm93IG5ldyBFcnJvcignaW52YWxpZCBhZmZpbmUgcG9pbnQnKTtcbiAgICAgIHJldHVybiBuZXcgUG9pbnQoeCwgeSwgXzFuLCBtb2RQKHggKiB5KSk7XG4gICAgfVxuICAgIHN0YXRpYyBub3JtYWxpemVaKHBvaW50czogUG9pbnRbXSk6IFBvaW50W10ge1xuICAgICAgY29uc3QgdG9JbnYgPSBGcC5pbnZlcnRCYXRjaChwb2ludHMubWFwKChwKSA9PiBwLmV6KSk7XG4gICAgICByZXR1cm4gcG9pbnRzLm1hcCgocCwgaSkgPT4gcC50b0FmZmluZSh0b0ludltpXSkpLm1hcChQb2ludC5mcm9tQWZmaW5lKTtcbiAgICB9XG5cbiAgICAvLyBXZSBjYWxjdWxhdGUgcHJlY29tcHV0ZXMgZm9yIGVsbGlwdGljIGN1cnZlIHBvaW50IG11bHRpcGxpY2F0aW9uXG4gICAgLy8gdXNpbmcgd2luZG93ZWQgbWV0aG9kLiBUaGlzIHNwZWNpZmllcyB3aW5kb3cgc2l6ZSBhbmRcbiAgICAvLyBzdG9yZXMgcHJlY29tcHV0ZWQgdmFsdWVzLiBVc3VhbGx5IG9ubHkgYmFzZSBwb2ludCB3b3VsZCBiZSBwcmVjb21wdXRlZC5cbiAgICBfV0lORE9XX1NJWkU/OiBudW1iZXI7XG5cbiAgICAvLyBcIlByaXZhdGUgbWV0aG9kXCIsIGRvbid0IHVzZSBpdCBkaXJlY3RseVxuICAgIF9zZXRXaW5kb3dTaXplKHdpbmRvd1NpemU6IG51bWJlcikge1xuICAgICAgdGhpcy5fV0lORE9XX1NJWkUgPSB3aW5kb3dTaXplO1xuICAgICAgcG9pbnRQcmVjb21wdXRlcy5kZWxldGUodGhpcyk7XG4gICAgfVxuICAgIC8vIE5vdCByZXF1aXJlZCBmb3IgZnJvbUhleCgpLCB3aGljaCBhbHdheXMgY3JlYXRlcyB2YWxpZCBwb2ludHMuXG4gICAgLy8gQ291bGQgYmUgdXNlZnVsIGZvciBmcm9tQWZmaW5lKCkuXG4gICAgYXNzZXJ0VmFsaWRpdHkoKTogdm9pZCB7XG4gICAgICBjb25zdCB7IGEsIGQgfSA9IENVUlZFO1xuICAgICAgaWYgKHRoaXMuaXMwKCkpIHRocm93IG5ldyBFcnJvcignYmFkIHBvaW50OiBaRVJPJyk7IC8vIFRPRE86IG9wdGltaXplLCB3aXRoIHZhcnMgYmVsb3c/XG4gICAgICAvLyBFcXVhdGlvbiBpbiBhZmZpbmUgY29vcmRpbmF0ZXM6IGF4XHUwMEIyICsgeVx1MDBCMiA9IDEgKyBkeFx1MDBCMnlcdTAwQjJcbiAgICAgIC8vIEVxdWF0aW9uIGluIHByb2plY3RpdmUgY29vcmRpbmF0ZXMgKFgvWiwgWS9aLCBaKTogIChhWFx1MDBCMiArIFlcdTAwQjIpWlx1MDBCMiA9IFpcdTIwNzQgKyBkWFx1MDBCMllcdTAwQjJcbiAgICAgIGNvbnN0IHsgZXg6IFgsIGV5OiBZLCBlejogWiwgZXQ6IFQgfSA9IHRoaXM7XG4gICAgICBjb25zdCBYMiA9IG1vZFAoWCAqIFgpOyAvLyBYXHUwMEIyXG4gICAgICBjb25zdCBZMiA9IG1vZFAoWSAqIFkpOyAvLyBZXHUwMEIyXG4gICAgICBjb25zdCBaMiA9IG1vZFAoWiAqIFopOyAvLyBaXHUwMEIyXG4gICAgICBjb25zdCBaNCA9IG1vZFAoWjIgKiBaMik7IC8vIFpcdTIwNzRcbiAgICAgIGNvbnN0IGFYMiA9IG1vZFAoWDIgKiBhKTsgLy8gYVhcdTAwQjJcbiAgICAgIGNvbnN0IGxlZnQgPSBtb2RQKFoyICogbW9kUChhWDIgKyBZMikpOyAvLyAoYVhcdTAwQjIgKyBZXHUwMEIyKVpcdTAwQjJcbiAgICAgIGNvbnN0IHJpZ2h0ID0gbW9kUChaNCArIG1vZFAoZCAqIG1vZFAoWDIgKiBZMikpKTsgLy8gWlx1MjA3NCArIGRYXHUwMEIyWVx1MDBCMlxuICAgICAgaWYgKGxlZnQgIT09IHJpZ2h0KSB0aHJvdyBuZXcgRXJyb3IoJ2JhZCBwb2ludDogZXF1YXRpb24gbGVmdCAhPSByaWdodCAoMSknKTtcbiAgICAgIC8vIEluIEV4dGVuZGVkIGNvb3JkaW5hdGVzIHdlIGFsc28gaGF2ZSBULCB3aGljaCBpcyB4Knk9VC9aOiBjaGVjayBYKlkgPT0gWipUXG4gICAgICBjb25zdCBYWSA9IG1vZFAoWCAqIFkpO1xuICAgICAgY29uc3QgWlQgPSBtb2RQKFogKiBUKTtcbiAgICAgIGlmIChYWSAhPT0gWlQpIHRocm93IG5ldyBFcnJvcignYmFkIHBvaW50OiBlcXVhdGlvbiBsZWZ0ICE9IHJpZ2h0ICgyKScpO1xuICAgIH1cblxuICAgIC8vIENvbXBhcmUgb25lIHBvaW50IHRvIGFub3RoZXIuXG4gICAgZXF1YWxzKG90aGVyOiBQb2ludCk6IGJvb2xlYW4ge1xuICAgICAgaXNQb2ludChvdGhlcik7XG4gICAgICBjb25zdCB7IGV4OiBYMSwgZXk6IFkxLCBlejogWjEgfSA9IHRoaXM7XG4gICAgICBjb25zdCB7IGV4OiBYMiwgZXk6IFkyLCBlejogWjIgfSA9IG90aGVyO1xuICAgICAgY29uc3QgWDFaMiA9IG1vZFAoWDEgKiBaMik7XG4gICAgICBjb25zdCBYMloxID0gbW9kUChYMiAqIFoxKTtcbiAgICAgIGNvbnN0IFkxWjIgPSBtb2RQKFkxICogWjIpO1xuICAgICAgY29uc3QgWTJaMSA9IG1vZFAoWTIgKiBaMSk7XG4gICAgICByZXR1cm4gWDFaMiA9PT0gWDJaMSAmJiBZMVoyID09PSBZMloxO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBpczAoKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gdGhpcy5lcXVhbHMoUG9pbnQuWkVSTyk7XG4gICAgfVxuXG4gICAgbmVnYXRlKCk6IFBvaW50IHtcbiAgICAgIC8vIEZsaXBzIHBvaW50IHNpZ24gdG8gYSBuZWdhdGl2ZSBvbmUgKC14LCB5IGluIGFmZmluZSBjb29yZHMpXG4gICAgICByZXR1cm4gbmV3IFBvaW50KG1vZFAoLXRoaXMuZXgpLCB0aGlzLmV5LCB0aGlzLmV6LCBtb2RQKC10aGlzLmV0KSk7XG4gICAgfVxuXG4gICAgLy8gRmFzdCBhbGdvIGZvciBkb3VibGluZyBFeHRlbmRlZCBQb2ludC5cbiAgICAvLyBodHRwczovL2h5cGVyZWxsaXB0aWMub3JnL0VGRC9nMXAvYXV0by10d2lzdGVkLWV4dGVuZGVkLmh0bWwjZG91YmxpbmctZGJsLTIwMDgtaHdjZFxuICAgIC8vIENvc3Q6IDRNICsgNFMgKyAxKmEgKyA2YWRkICsgMSoyLlxuICAgIGRvdWJsZSgpOiBQb2ludCB7XG4gICAgICBjb25zdCB7IGEgfSA9IENVUlZFO1xuICAgICAgY29uc3QgeyBleDogWDEsIGV5OiBZMSwgZXo6IFoxIH0gPSB0aGlzO1xuICAgICAgY29uc3QgQSA9IG1vZFAoWDEgKiBYMSk7IC8vIEEgPSBYMTJcbiAgICAgIGNvbnN0IEIgPSBtb2RQKFkxICogWTEpOyAvLyBCID0gWTEyXG4gICAgICBjb25zdCBDID0gbW9kUChfMm4gKiBtb2RQKFoxICogWjEpKTsgLy8gQyA9IDIqWjEyXG4gICAgICBjb25zdCBEID0gbW9kUChhICogQSk7IC8vIEQgPSBhKkFcbiAgICAgIGNvbnN0IHgxeTEgPSBYMSArIFkxO1xuICAgICAgY29uc3QgRSA9IG1vZFAobW9kUCh4MXkxICogeDF5MSkgLSBBIC0gQik7IC8vIEUgPSAoWDErWTEpMi1BLUJcbiAgICAgIGNvbnN0IEcgPSBEICsgQjsgLy8gRyA9IEQrQlxuICAgICAgY29uc3QgRiA9IEcgLSBDOyAvLyBGID0gRy1DXG4gICAgICBjb25zdCBIID0gRCAtIEI7IC8vIEggPSBELUJcbiAgICAgIGNvbnN0IFgzID0gbW9kUChFICogRik7IC8vIFgzID0gRSpGXG4gICAgICBjb25zdCBZMyA9IG1vZFAoRyAqIEgpOyAvLyBZMyA9IEcqSFxuICAgICAgY29uc3QgVDMgPSBtb2RQKEUgKiBIKTsgLy8gVDMgPSBFKkhcbiAgICAgIGNvbnN0IFozID0gbW9kUChGICogRyk7IC8vIFozID0gRipHXG4gICAgICByZXR1cm4gbmV3IFBvaW50KFgzLCBZMywgWjMsIFQzKTtcbiAgICB9XG5cbiAgICAvLyBGYXN0IGFsZ28gZm9yIGFkZGluZyAyIEV4dGVuZGVkIFBvaW50cy5cbiAgICAvLyBodHRwczovL2h5cGVyZWxsaXB0aWMub3JnL0VGRC9nMXAvYXV0by10d2lzdGVkLWV4dGVuZGVkLmh0bWwjYWRkaXRpb24tYWRkLTIwMDgtaHdjZFxuICAgIC8vIENvc3Q6IDlNICsgMSphICsgMSpkICsgN2FkZC5cbiAgICBhZGQob3RoZXI6IFBvaW50KSB7XG4gICAgICBpc1BvaW50KG90aGVyKTtcbiAgICAgIGNvbnN0IHsgYSwgZCB9ID0gQ1VSVkU7XG4gICAgICBjb25zdCB7IGV4OiBYMSwgZXk6IFkxLCBlejogWjEsIGV0OiBUMSB9ID0gdGhpcztcbiAgICAgIGNvbnN0IHsgZXg6IFgyLCBleTogWTIsIGV6OiBaMiwgZXQ6IFQyIH0gPSBvdGhlcjtcbiAgICAgIC8vIEZhc3RlciBhbGdvIGZvciBhZGRpbmcgMiBFeHRlbmRlZCBQb2ludHMgd2hlbiBjdXJ2ZSdzIGE9LTEuXG4gICAgICAvLyBodHRwOi8vaHlwZXJlbGxpcHRpYy5vcmcvRUZEL2cxcC9hdXRvLXR3aXN0ZWQtZXh0ZW5kZWQtMS5odG1sI2FkZGl0aW9uLWFkZC0yMDA4LWh3Y2QtNFxuICAgICAgLy8gQ29zdDogOE0gKyA4YWRkICsgMioyLlxuICAgICAgLy8gTm90ZTogSXQgZG9lcyBub3QgY2hlY2sgd2hldGhlciB0aGUgYG90aGVyYCBwb2ludCBpcyB2YWxpZC5cbiAgICAgIGlmIChhID09PSBCaWdJbnQoLTEpKSB7XG4gICAgICAgIGNvbnN0IEEgPSBtb2RQKChZMSAtIFgxKSAqIChZMiArIFgyKSk7XG4gICAgICAgIGNvbnN0IEIgPSBtb2RQKChZMSArIFgxKSAqIChZMiAtIFgyKSk7XG4gICAgICAgIGNvbnN0IEYgPSBtb2RQKEIgLSBBKTtcbiAgICAgICAgaWYgKEYgPT09IF8wbikgcmV0dXJuIHRoaXMuZG91YmxlKCk7IC8vIFNhbWUgcG9pbnQuIFRlc3RzIHNheSBpdCBkb2Vzbid0IGFmZmVjdCB0aW1pbmdcbiAgICAgICAgY29uc3QgQyA9IG1vZFAoWjEgKiBfMm4gKiBUMik7XG4gICAgICAgIGNvbnN0IEQgPSBtb2RQKFQxICogXzJuICogWjIpO1xuICAgICAgICBjb25zdCBFID0gRCArIEM7XG4gICAgICAgIGNvbnN0IEcgPSBCICsgQTtcbiAgICAgICAgY29uc3QgSCA9IEQgLSBDO1xuICAgICAgICBjb25zdCBYMyA9IG1vZFAoRSAqIEYpO1xuICAgICAgICBjb25zdCBZMyA9IG1vZFAoRyAqIEgpO1xuICAgICAgICBjb25zdCBUMyA9IG1vZFAoRSAqIEgpO1xuICAgICAgICBjb25zdCBaMyA9IG1vZFAoRiAqIEcpO1xuICAgICAgICByZXR1cm4gbmV3IFBvaW50KFgzLCBZMywgWjMsIFQzKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IEEgPSBtb2RQKFgxICogWDIpOyAvLyBBID0gWDEqWDJcbiAgICAgIGNvbnN0IEIgPSBtb2RQKFkxICogWTIpOyAvLyBCID0gWTEqWTJcbiAgICAgIGNvbnN0IEMgPSBtb2RQKFQxICogZCAqIFQyKTsgLy8gQyA9IFQxKmQqVDJcbiAgICAgIGNvbnN0IEQgPSBtb2RQKFoxICogWjIpOyAvLyBEID0gWjEqWjJcbiAgICAgIGNvbnN0IEUgPSBtb2RQKChYMSArIFkxKSAqIChYMiArIFkyKSAtIEEgLSBCKTsgLy8gRSA9IChYMStZMSkqKFgyK1kyKS1BLUJcbiAgICAgIGNvbnN0IEYgPSBEIC0gQzsgLy8gRiA9IEQtQ1xuICAgICAgY29uc3QgRyA9IEQgKyBDOyAvLyBHID0gRCtDXG4gICAgICBjb25zdCBIID0gbW9kUChCIC0gYSAqIEEpOyAvLyBIID0gQi1hKkFcbiAgICAgIGNvbnN0IFgzID0gbW9kUChFICogRik7IC8vIFgzID0gRSpGXG4gICAgICBjb25zdCBZMyA9IG1vZFAoRyAqIEgpOyAvLyBZMyA9IEcqSFxuICAgICAgY29uc3QgVDMgPSBtb2RQKEUgKiBIKTsgLy8gVDMgPSBFKkhcbiAgICAgIGNvbnN0IFozID0gbW9kUChGICogRyk7IC8vIFozID0gRipHXG5cbiAgICAgIHJldHVybiBuZXcgUG9pbnQoWDMsIFkzLCBaMywgVDMpO1xuICAgIH1cblxuICAgIHN1YnRyYWN0KG90aGVyOiBQb2ludCk6IFBvaW50IHtcbiAgICAgIHJldHVybiB0aGlzLmFkZChvdGhlci5uZWdhdGUoKSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB3TkFGKG46IGJpZ2ludCk6IHsgcDogUG9pbnQ7IGY6IFBvaW50IH0ge1xuICAgICAgcmV0dXJuIHduYWYud05BRkNhY2hlZCh0aGlzLCBwb2ludFByZWNvbXB1dGVzLCBuLCBQb2ludC5ub3JtYWxpemVaKTtcbiAgICB9XG5cbiAgICAvLyBDb25zdGFudC10aW1lIG11bHRpcGxpY2F0aW9uLlxuICAgIG11bHRpcGx5KHNjYWxhcjogYmlnaW50KTogUG9pbnQge1xuICAgICAgY29uc3QgeyBwLCBmIH0gPSB0aGlzLndOQUYoYXNzZXJ0SW5SYW5nZShzY2FsYXIsIENVUlZFX09SREVSKSk7XG4gICAgICByZXR1cm4gUG9pbnQubm9ybWFsaXplWihbcCwgZl0pWzBdO1xuICAgIH1cblxuICAgIC8vIE5vbi1jb25zdGFudC10aW1lIG11bHRpcGxpY2F0aW9uLiBVc2VzIGRvdWJsZS1hbmQtYWRkIGFsZ29yaXRobS5cbiAgICAvLyBJdCdzIGZhc3RlciwgYnV0IHNob3VsZCBvbmx5IGJlIHVzZWQgd2hlbiB5b3UgZG9uJ3QgY2FyZSBhYm91dFxuICAgIC8vIGFuIGV4cG9zZWQgcHJpdmF0ZSBrZXkgZS5nLiBzaWcgdmVyaWZpY2F0aW9uLlxuICAgIC8vIERvZXMgTk9UIGFsbG93IHNjYWxhcnMgaGlnaGVyIHRoYW4gQ1VSVkUubi5cbiAgICBtdWx0aXBseVVuc2FmZShzY2FsYXI6IGJpZ2ludCk6IFBvaW50IHtcbiAgICAgIGxldCBuID0gYXNzZXJ0R0UwKHNjYWxhcik7IC8vIDAgPD0gc2NhbGFyIDwgQ1VSVkUublxuICAgICAgaWYgKG4gPT09IF8wbikgcmV0dXJuIEk7XG4gICAgICBpZiAodGhpcy5lcXVhbHMoSSkgfHwgbiA9PT0gXzFuKSByZXR1cm4gdGhpcztcbiAgICAgIGlmICh0aGlzLmVxdWFscyhHKSkgcmV0dXJuIHRoaXMud05BRihuKS5wO1xuICAgICAgcmV0dXJuIHduYWYudW5zYWZlTGFkZGVyKHRoaXMsIG4pO1xuICAgIH1cblxuICAgIC8vIENoZWNrcyBpZiBwb2ludCBpcyBvZiBzbWFsbCBvcmRlci5cbiAgICAvLyBJZiB5b3UgYWRkIHNvbWV0aGluZyB0byBzbWFsbCBvcmRlciBwb2ludCwgeW91IHdpbGwgaGF2ZSBcImRpcnR5XCJcbiAgICAvLyBwb2ludCB3aXRoIHRvcnNpb24gY29tcG9uZW50LlxuICAgIC8vIE11bHRpcGxpZXMgcG9pbnQgYnkgY29mYWN0b3IgYW5kIGNoZWNrcyBpZiB0aGUgcmVzdWx0IGlzIDAuXG4gICAgaXNTbWFsbE9yZGVyKCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIHRoaXMubXVsdGlwbHlVbnNhZmUoY29mYWN0b3IpLmlzMCgpO1xuICAgIH1cblxuICAgIC8vIE11bHRpcGxpZXMgcG9pbnQgYnkgY3VydmUgb3JkZXIgYW5kIGNoZWNrcyBpZiB0aGUgcmVzdWx0IGlzIDAuXG4gICAgLy8gUmV0dXJucyBgZmFsc2VgIGlzIHRoZSBwb2ludCBpcyBkaXJ0eS5cbiAgICBpc1RvcnNpb25GcmVlKCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIHduYWYudW5zYWZlTGFkZGVyKHRoaXMsIENVUlZFX09SREVSKS5pczAoKTtcbiAgICB9XG5cbiAgICAvLyBDb252ZXJ0cyBFeHRlbmRlZCBwb2ludCB0byBkZWZhdWx0ICh4LCB5KSBjb29yZGluYXRlcy5cbiAgICAvLyBDYW4gYWNjZXB0IHByZWNvbXB1dGVkIFpeLTEgLSBmb3IgZXhhbXBsZSwgZnJvbSBpbnZlcnRCYXRjaC5cbiAgICB0b0FmZmluZShpej86IGJpZ2ludCk6IEFmZmluZVBvaW50PGJpZ2ludD4ge1xuICAgICAgY29uc3QgeyBleDogeCwgZXk6IHksIGV6OiB6IH0gPSB0aGlzO1xuICAgICAgY29uc3QgaXMwID0gdGhpcy5pczAoKTtcbiAgICAgIGlmIChpeiA9PSBudWxsKSBpeiA9IGlzMCA/IF84biA6IChGcC5pbnYoeikgYXMgYmlnaW50KTsgLy8gOCB3YXMgY2hvc2VuIGFyYml0cmFyaWx5XG4gICAgICBjb25zdCBheCA9IG1vZFAoeCAqIGl6KTtcbiAgICAgIGNvbnN0IGF5ID0gbW9kUCh5ICogaXopO1xuICAgICAgY29uc3QgenogPSBtb2RQKHogKiBpeik7XG4gICAgICBpZiAoaXMwKSByZXR1cm4geyB4OiBfMG4sIHk6IF8xbiB9O1xuICAgICAgaWYgKHp6ICE9PSBfMW4pIHRocm93IG5ldyBFcnJvcignaW52WiB3YXMgaW52YWxpZCcpO1xuICAgICAgcmV0dXJuIHsgeDogYXgsIHk6IGF5IH07XG4gICAgfVxuXG4gICAgY2xlYXJDb2ZhY3RvcigpOiBQb2ludCB7XG4gICAgICBjb25zdCB7IGg6IGNvZmFjdG9yIH0gPSBDVVJWRTtcbiAgICAgIGlmIChjb2ZhY3RvciA9PT0gXzFuKSByZXR1cm4gdGhpcztcbiAgICAgIHJldHVybiB0aGlzLm11bHRpcGx5VW5zYWZlKGNvZmFjdG9yKTtcbiAgICB9XG5cbiAgICAvLyBDb252ZXJ0cyBoYXNoIHN0cmluZyBvciBVaW50OEFycmF5IHRvIFBvaW50LlxuICAgIC8vIFVzZXMgYWxnbyBmcm9tIFJGQzgwMzIgNS4xLjMuXG4gICAgc3RhdGljIGZyb21IZXgoaGV4OiBIZXgsIHppcDIxNSA9IGZhbHNlKTogUG9pbnQge1xuICAgICAgY29uc3QgeyBkLCBhIH0gPSBDVVJWRTtcbiAgICAgIGNvbnN0IGxlbiA9IEZwLkJZVEVTO1xuICAgICAgaGV4ID0gZW5zdXJlQnl0ZXMoJ3BvaW50SGV4JywgaGV4LCBsZW4pOyAvLyBjb3B5IGhleCB0byBhIG5ldyBhcnJheVxuICAgICAgY29uc3Qgbm9ybWVkID0gaGV4LnNsaWNlKCk7IC8vIGNvcHkgYWdhaW4sIHdlJ2xsIG1hbmlwdWxhdGUgaXRcbiAgICAgIGNvbnN0IGxhc3RCeXRlID0gaGV4W2xlbiAtIDFdOyAvLyBzZWxlY3QgbGFzdCBieXRlXG4gICAgICBub3JtZWRbbGVuIC0gMV0gPSBsYXN0Qnl0ZSAmIH4weDgwOyAvLyBjbGVhciBsYXN0IGJpdFxuICAgICAgY29uc3QgeSA9IHV0LmJ5dGVzVG9OdW1iZXJMRShub3JtZWQpO1xuICAgICAgaWYgKHkgPT09IF8wbikge1xuICAgICAgICAvLyB5PTAgaXMgYWxsb3dlZFxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gUkZDODAzMiBwcm9oaWJpdHMgPj0gcCwgYnV0IFpJUDIxNSBkb2Vzbid0XG4gICAgICAgIGlmICh6aXAyMTUpIGFzc2VydEluUmFuZ2UoeSwgTUFTSyk7IC8vIHppcDIxNT10cnVlIFsxLi5QLTFdICgyXjI1NS0xOS0xIGZvciBlZDI1NTE5KVxuICAgICAgICBlbHNlIGFzc2VydEluUmFuZ2UoeSwgRnAuT1JERVIpOyAvLyB6aXAyMTU9ZmFsc2UgWzEuLk1BU0stMV0gKDJeMjU2LTEgZm9yIGVkMjU1MTkpXG4gICAgICB9XG5cbiAgICAgIC8vIEVkMjU1MTk6IHhcdTAwQjIgPSAoeVx1MDBCMi0xKS8oZHlcdTAwQjIrMSkgbW9kIHAuIEVkNDQ4OiB4XHUwMEIyID0gKHlcdTAwQjItMSkvKGR5XHUwMEIyLTEpIG1vZCBwLiBHZW5lcmljIGNhc2U6XG4gICAgICAvLyBheFx1MDBCMit5XHUwMEIyPTErZHhcdTAwQjJ5XHUwMEIyID0+IHlcdTAwQjItMT1keFx1MDBCMnlcdTAwQjItYXhcdTAwQjIgPT4geVx1MDBCMi0xPXhcdTAwQjIoZHlcdTAwQjItYSkgPT4geFx1MDBCMj0oeVx1MDBCMi0xKS8oZHlcdTAwQjItYSlcbiAgICAgIGNvbnN0IHkyID0gbW9kUCh5ICogeSk7IC8vIGRlbm9taW5hdG9yIGlzIGFsd2F5cyBub24tMCBtb2QgcC5cbiAgICAgIGNvbnN0IHUgPSBtb2RQKHkyIC0gXzFuKTsgLy8gdSA9IHlcdTAwQjIgLSAxXG4gICAgICBjb25zdCB2ID0gbW9kUChkICogeTIgLSBhKTsgLy8gdiA9IGQgeVx1MDBCMiArIDEuXG4gICAgICBsZXQgeyBpc1ZhbGlkLCB2YWx1ZTogeCB9ID0gdXZSYXRpbyh1LCB2KTsgLy8gXHUyMjFBKHUvdilcbiAgICAgIGlmICghaXNWYWxpZCkgdGhyb3cgbmV3IEVycm9yKCdQb2ludC5mcm9tSGV4OiBpbnZhbGlkIHkgY29vcmRpbmF0ZScpO1xuICAgICAgY29uc3QgaXNYT2RkID0gKHggJiBfMW4pID09PSBfMW47IC8vIFRoZXJlIGFyZSAyIHNxdWFyZSByb290cy4gVXNlIHhfMCBiaXQgdG8gc2VsZWN0IHByb3BlclxuICAgICAgY29uc3QgaXNMYXN0Qnl0ZU9kZCA9IChsYXN0Qnl0ZSAmIDB4ODApICE9PSAwOyAvLyB4XzAsIGxhc3QgYml0XG4gICAgICBpZiAoIXppcDIxNSAmJiB4ID09PSBfMG4gJiYgaXNMYXN0Qnl0ZU9kZClcbiAgICAgICAgLy8gaWYgeD0wIGFuZCB4XzAgPSAxLCBmYWlsXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignUG9pbnQuZnJvbUhleDogeD0wIGFuZCB4XzA9MScpO1xuICAgICAgaWYgKGlzTGFzdEJ5dGVPZGQgIT09IGlzWE9kZCkgeCA9IG1vZFAoLXgpOyAvLyBpZiB4XzAgIT0geCBtb2QgMiwgc2V0IHggPSBwLXhcbiAgICAgIHJldHVybiBQb2ludC5mcm9tQWZmaW5lKHsgeCwgeSB9KTtcbiAgICB9XG4gICAgc3RhdGljIGZyb21Qcml2YXRlS2V5KHByaXZLZXk6IEhleCkge1xuICAgICAgcmV0dXJuIGdldEV4dGVuZGVkUHVibGljS2V5KHByaXZLZXkpLnBvaW50O1xuICAgIH1cbiAgICB0b1Jhd0J5dGVzKCk6IFVpbnQ4QXJyYXkge1xuICAgICAgY29uc3QgeyB4LCB5IH0gPSB0aGlzLnRvQWZmaW5lKCk7XG4gICAgICBjb25zdCBieXRlcyA9IHV0Lm51bWJlclRvQnl0ZXNMRSh5LCBGcC5CWVRFUyk7IC8vIGVhY2ggeSBoYXMgMiB4IHZhbHVlcyAoeCwgLXkpXG4gICAgICBieXRlc1tieXRlcy5sZW5ndGggLSAxXSB8PSB4ICYgXzFuID8gMHg4MCA6IDA7IC8vIHdoZW4gY29tcHJlc3NpbmcsIGl0J3MgZW5vdWdoIHRvIHN0b3JlIHlcbiAgICAgIHJldHVybiBieXRlczsgLy8gYW5kIHVzZSB0aGUgbGFzdCBieXRlIHRvIGVuY29kZSBzaWduIG9mIHhcbiAgICB9XG4gICAgdG9IZXgoKTogc3RyaW5nIHtcbiAgICAgIHJldHVybiB1dC5ieXRlc1RvSGV4KHRoaXMudG9SYXdCeXRlcygpKTsgLy8gU2FtZSBhcyB0b1Jhd0J5dGVzLCBidXQgcmV0dXJucyBzdHJpbmcuXG4gICAgfVxuICB9XG4gIGNvbnN0IHsgQkFTRTogRywgWkVSTzogSSB9ID0gUG9pbnQ7XG4gIGNvbnN0IHduYWYgPSB3TkFGKFBvaW50LCBuQnl0ZUxlbmd0aCAqIDgpO1xuXG4gIGZ1bmN0aW9uIG1vZE4oYTogYmlnaW50KSB7XG4gICAgcmV0dXJuIG1vZChhLCBDVVJWRV9PUkRFUik7XG4gIH1cbiAgLy8gTGl0dGxlLWVuZGlhbiBTSEE1MTIgd2l0aCBtb2R1bG8gblxuICBmdW5jdGlvbiBtb2ROX0xFKGhhc2g6IFVpbnQ4QXJyYXkpOiBiaWdpbnQge1xuICAgIHJldHVybiBtb2ROKHV0LmJ5dGVzVG9OdW1iZXJMRShoYXNoKSk7XG4gIH1cblxuICAvKiogQ29udmVuaWVuY2UgbWV0aG9kIHRoYXQgY3JlYXRlcyBwdWJsaWMga2V5IGFuZCBvdGhlciBzdHVmZi4gUkZDODAzMiA1LjEuNSAqL1xuICBmdW5jdGlvbiBnZXRFeHRlbmRlZFB1YmxpY0tleShrZXk6IEhleCkge1xuICAgIGNvbnN0IGxlbiA9IG5CeXRlTGVuZ3RoO1xuICAgIGtleSA9IGVuc3VyZUJ5dGVzKCdwcml2YXRlIGtleScsIGtleSwgbGVuKTtcbiAgICAvLyBIYXNoIHByaXZhdGUga2V5IHdpdGggY3VydmUncyBoYXNoIGZ1bmN0aW9uIHRvIHByb2R1Y2UgdW5pZm9ybWluZ2x5IHJhbmRvbSBpbnB1dFxuICAgIC8vIENoZWNrIGJ5dGUgbGVuZ3RoczogZW5zdXJlKDY0LCBoKGVuc3VyZSgzMiwga2V5KSkpXG4gICAgY29uc3QgaGFzaGVkID0gZW5zdXJlQnl0ZXMoJ2hhc2hlZCBwcml2YXRlIGtleScsIGNIYXNoKGtleSksIDIgKiBsZW4pO1xuICAgIGNvbnN0IGhlYWQgPSBhZGp1c3RTY2FsYXJCeXRlcyhoYXNoZWQuc2xpY2UoMCwgbGVuKSk7IC8vIGNsZWFyIGZpcnN0IGhhbGYgYml0cywgcHJvZHVjZSBGRVxuICAgIGNvbnN0IHByZWZpeCA9IGhhc2hlZC5zbGljZShsZW4sIDIgKiBsZW4pOyAvLyBzZWNvbmQgaGFsZiBpcyBjYWxsZWQga2V5IHByZWZpeCAoNS4xLjYpXG4gICAgY29uc3Qgc2NhbGFyID0gbW9kTl9MRShoZWFkKTsgLy8gVGhlIGFjdHVhbCBwcml2YXRlIHNjYWxhclxuICAgIGNvbnN0IHBvaW50ID0gRy5tdWx0aXBseShzY2FsYXIpOyAvLyBQb2ludCBvbiBFZHdhcmRzIGN1cnZlIGFrYSBwdWJsaWMga2V5XG4gICAgY29uc3QgcG9pbnRCeXRlcyA9IHBvaW50LnRvUmF3Qnl0ZXMoKTsgLy8gVWludDhBcnJheSByZXByZXNlbnRhdGlvblxuICAgIHJldHVybiB7IGhlYWQsIHByZWZpeCwgc2NhbGFyLCBwb2ludCwgcG9pbnRCeXRlcyB9O1xuICB9XG5cbiAgLy8gQ2FsY3VsYXRlcyBFZERTQSBwdWIga2V5LiBSRkM4MDMyIDUuMS41LiBQcml2a2V5IGlzIGhhc2hlZC4gVXNlIGZpcnN0IGhhbGYgd2l0aCAzIGJpdHMgY2xlYXJlZFxuICBmdW5jdGlvbiBnZXRQdWJsaWNLZXkocHJpdktleTogSGV4KTogVWludDhBcnJheSB7XG4gICAgcmV0dXJuIGdldEV4dGVuZGVkUHVibGljS2V5KHByaXZLZXkpLnBvaW50Qnl0ZXM7XG4gIH1cblxuICAvLyBpbnQoJ0xFJywgU0hBNTEyKGRvbTIoRiwgQykgfHwgbXNncykpIG1vZCBOXG4gIGZ1bmN0aW9uIGhhc2hEb21haW5Ub1NjYWxhcihjb250ZXh0OiBIZXggPSBuZXcgVWludDhBcnJheSgpLCAuLi5tc2dzOiBVaW50OEFycmF5W10pIHtcbiAgICBjb25zdCBtc2cgPSB1dC5jb25jYXRCeXRlcyguLi5tc2dzKTtcbiAgICByZXR1cm4gbW9kTl9MRShjSGFzaChkb21haW4obXNnLCBlbnN1cmVCeXRlcygnY29udGV4dCcsIGNvbnRleHQpLCAhIXByZWhhc2gpKSk7XG4gIH1cblxuICAvKiogU2lnbnMgbWVzc2FnZSB3aXRoIHByaXZhdGVLZXkuIFJGQzgwMzIgNS4xLjYgKi9cbiAgZnVuY3Rpb24gc2lnbihtc2c6IEhleCwgcHJpdktleTogSGV4LCBvcHRpb25zOiB7IGNvbnRleHQ/OiBIZXggfSA9IHt9KTogVWludDhBcnJheSB7XG4gICAgbXNnID0gZW5zdXJlQnl0ZXMoJ21lc3NhZ2UnLCBtc2cpO1xuICAgIGlmIChwcmVoYXNoKSBtc2cgPSBwcmVoYXNoKG1zZyk7IC8vIGZvciBlZDI1NTE5cGggZXRjLlxuICAgIGNvbnN0IHsgcHJlZml4LCBzY2FsYXIsIHBvaW50Qnl0ZXMgfSA9IGdldEV4dGVuZGVkUHVibGljS2V5KHByaXZLZXkpO1xuICAgIGNvbnN0IHIgPSBoYXNoRG9tYWluVG9TY2FsYXIob3B0aW9ucy5jb250ZXh0LCBwcmVmaXgsIG1zZyk7IC8vIHIgPSBkb20yKEYsIEMpIHx8IHByZWZpeCB8fCBQSChNKVxuICAgIGNvbnN0IFIgPSBHLm11bHRpcGx5KHIpLnRvUmF3Qnl0ZXMoKTsgLy8gUiA9IHJHXG4gICAgY29uc3QgayA9IGhhc2hEb21haW5Ub1NjYWxhcihvcHRpb25zLmNvbnRleHQsIFIsIHBvaW50Qnl0ZXMsIG1zZyk7IC8vIFIgfHwgQSB8fCBQSChNKVxuICAgIGNvbnN0IHMgPSBtb2ROKHIgKyBrICogc2NhbGFyKTsgLy8gUyA9IChyICsgayAqIHMpIG1vZCBMXG4gICAgYXNzZXJ0R0UwKHMpOyAvLyAwIDw9IHMgPCBsXG4gICAgY29uc3QgcmVzID0gdXQuY29uY2F0Qnl0ZXMoUiwgdXQubnVtYmVyVG9CeXRlc0xFKHMsIEZwLkJZVEVTKSk7XG4gICAgcmV0dXJuIGVuc3VyZUJ5dGVzKCdyZXN1bHQnLCByZXMsIG5CeXRlTGVuZ3RoICogMik7IC8vIDY0LWJ5dGUgc2lnbmF0dXJlXG4gIH1cblxuICBjb25zdCB2ZXJpZnlPcHRzOiB7IGNvbnRleHQ/OiBIZXg7IHppcDIxNT86IGJvb2xlYW4gfSA9IFZFUklGWV9ERUZBVUxUO1xuICBmdW5jdGlvbiB2ZXJpZnkoc2lnOiBIZXgsIG1zZzogSGV4LCBwdWJsaWNLZXk6IEhleCwgb3B0aW9ucyA9IHZlcmlmeU9wdHMpOiBib29sZWFuIHtcbiAgICBjb25zdCB7IGNvbnRleHQsIHppcDIxNSB9ID0gb3B0aW9ucztcbiAgICBjb25zdCBsZW4gPSBGcC5CWVRFUzsgLy8gVmVyaWZpZXMgRWREU0Egc2lnbmF0dXJlIGFnYWluc3QgbWVzc2FnZSBhbmQgcHVibGljIGtleS4gUkZDODAzMiA1LjEuNy5cbiAgICBzaWcgPSBlbnN1cmVCeXRlcygnc2lnbmF0dXJlJywgc2lnLCAyICogbGVuKTsgLy8gQW4gZXh0ZW5kZWQgZ3JvdXAgZXF1YXRpb24gaXMgY2hlY2tlZC5cbiAgICBtc2cgPSBlbnN1cmVCeXRlcygnbWVzc2FnZScsIG1zZyk7XG4gICAgaWYgKHByZWhhc2gpIG1zZyA9IHByZWhhc2gobXNnKTsgLy8gZm9yIGVkMjU1MTlwaCwgZXRjXG5cbiAgICBjb25zdCBzID0gdXQuYnl0ZXNUb051bWJlckxFKHNpZy5zbGljZShsZW4sIDIgKiBsZW4pKTtcbiAgICAvLyB6aXAyMTU6IHRydWUgaXMgZ29vZCBmb3IgY29uc2Vuc3VzLWNyaXRpY2FsIGFwcHMgYW5kIGFsbG93cyBwb2ludHMgPCAyXjI1NlxuICAgIC8vIHppcDIxNTogZmFsc2UgZm9sbG93cyBSRkM4MDMyIC8gTklTVDE4Ni01IGFuZCByZXN0cmljdHMgcG9pbnRzIHRvIENVUlZFLnBcbiAgICBsZXQgQSwgUiwgU0I7XG4gICAgdHJ5IHtcbiAgICAgIEEgPSBQb2ludC5mcm9tSGV4KHB1YmxpY0tleSwgemlwMjE1KTtcbiAgICAgIFIgPSBQb2ludC5mcm9tSGV4KHNpZy5zbGljZSgwLCBsZW4pLCB6aXAyMTUpO1xuICAgICAgU0IgPSBHLm11bHRpcGx5VW5zYWZlKHMpOyAvLyAwIDw9IHMgPCBsIGlzIGRvbmUgaW5zaWRlXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgaWYgKCF6aXAyMTUgJiYgQS5pc1NtYWxsT3JkZXIoKSkgcmV0dXJuIGZhbHNlO1xuXG4gICAgY29uc3QgayA9IGhhc2hEb21haW5Ub1NjYWxhcihjb250ZXh0LCBSLnRvUmF3Qnl0ZXMoKSwgQS50b1Jhd0J5dGVzKCksIG1zZyk7XG4gICAgY29uc3QgUmtBID0gUi5hZGQoQS5tdWx0aXBseVVuc2FmZShrKSk7XG4gICAgLy8gWzhdW1NdQiA9IFs4XVIgKyBbOF1ba11BJ1xuICAgIHJldHVybiBSa0Euc3VidHJhY3QoU0IpLmNsZWFyQ29mYWN0b3IoKS5lcXVhbHMoUG9pbnQuWkVSTyk7XG4gIH1cblxuICBHLl9zZXRXaW5kb3dTaXplKDgpOyAvLyBFbmFibGUgcHJlY29tcHV0ZXMuIFNsb3dzIGRvd24gZmlyc3QgcHVibGljS2V5IGNvbXB1dGF0aW9uIGJ5IDIwbXMuXG5cbiAgY29uc3QgdXRpbHMgPSB7XG4gICAgZ2V0RXh0ZW5kZWRQdWJsaWNLZXksXG4gICAgLy8gZWQyNTUxOSBwcml2YXRlIGtleXMgYXJlIHVuaWZvcm0gMzJiLiBObyBuZWVkIHRvIGNoZWNrIGZvciBtb2R1bG8gYmlhcywgbGlrZSBpbiBzZWNwMjU2azEuXG4gICAgcmFuZG9tUHJpdmF0ZUtleTogKCk6IFVpbnQ4QXJyYXkgPT4gcmFuZG9tQnl0ZXMoRnAuQllURVMpLFxuXG4gICAgLyoqXG4gICAgICogV2UncmUgZG9pbmcgc2NhbGFyIG11bHRpcGxpY2F0aW9uICh1c2VkIGluIGdldFB1YmxpY0tleSBldGMpIHdpdGggcHJlY29tcHV0ZWQgQkFTRV9QT0lOVFxuICAgICAqIHZhbHVlcy4gVGhpcyBzbG93cyBkb3duIGZpcnN0IGdldFB1YmxpY0tleSgpIGJ5IG1pbGxpc2Vjb25kcyAoc2VlIFNwZWVkIHNlY3Rpb24pLFxuICAgICAqIGJ1dCBhbGxvd3MgdG8gc3BlZWQtdXAgc3Vic2VxdWVudCBnZXRQdWJsaWNLZXkoKSBjYWxscyB1cCB0byAyMHguXG4gICAgICogQHBhcmFtIHdpbmRvd1NpemUgMiwgNCwgOCwgMTZcbiAgICAgKi9cbiAgICBwcmVjb21wdXRlKHdpbmRvd1NpemUgPSA4LCBwb2ludCA9IFBvaW50LkJBU0UpOiB0eXBlb2YgUG9pbnQuQkFTRSB7XG4gICAgICBwb2ludC5fc2V0V2luZG93U2l6ZSh3aW5kb3dTaXplKTtcbiAgICAgIHBvaW50Lm11bHRpcGx5KEJpZ0ludCgzKSk7XG4gICAgICByZXR1cm4gcG9pbnQ7XG4gICAgfSxcbiAgfTtcblxuICByZXR1cm4ge1xuICAgIENVUlZFLFxuICAgIGdldFB1YmxpY0tleSxcbiAgICBzaWduLFxuICAgIHZlcmlmeSxcbiAgICBFeHRlbmRlZFBvaW50OiBQb2ludCxcbiAgICB1dGlscyxcbiAgfTtcbn1cbiIsICIvKiEgbm9ibGUtY3VydmVzIC0gTUlUIExpY2Vuc2UgKGMpIDIwMjIgUGF1bCBNaWxsZXIgKHBhdWxtaWxsci5jb20pICovXG5pbXBvcnQgeyBzaGE1MTIgfSBmcm9tICdAbm9ibGUvaGFzaGVzL3NoYTUxMic7XG5pbXBvcnQgeyBjb25jYXRCeXRlcywgcmFuZG9tQnl0ZXMsIHV0ZjhUb0J5dGVzIH0gZnJvbSAnQG5vYmxlL2hhc2hlcy91dGlscyc7XG5pbXBvcnQgeyBFeHRQb2ludFR5cGUsIHR3aXN0ZWRFZHdhcmRzIH0gZnJvbSAnLi9hYnN0cmFjdC9lZHdhcmRzLmpzJztcbmltcG9ydCB7IG1vbnRnb21lcnkgfSBmcm9tICcuL2Fic3RyYWN0L21vbnRnb21lcnkuanMnO1xuaW1wb3J0IHsgRmllbGQsIEZwU3FydEV2ZW4sIGlzTmVnYXRpdmVMRSwgbW9kLCBwb3cyIH0gZnJvbSAnLi9hYnN0cmFjdC9tb2R1bGFyLmpzJztcbmltcG9ydCB7XG4gIGJ5dGVzVG9IZXgsXG4gIGJ5dGVzVG9OdW1iZXJMRSxcbiAgZW5zdXJlQnl0ZXMsXG4gIGVxdWFsQnl0ZXMsXG4gIEhleCxcbiAgbnVtYmVyVG9CeXRlc0xFLFxufSBmcm9tICcuL2Fic3RyYWN0L3V0aWxzLmpzJztcbmltcG9ydCB7IGNyZWF0ZUhhc2hlciwgaHRmQmFzaWNPcHRzLCBleHBhbmRfbWVzc2FnZV94bWQgfSBmcm9tICcuL2Fic3RyYWN0L2hhc2gtdG8tY3VydmUuanMnO1xuaW1wb3J0IHsgQWZmaW5lUG9pbnQgfSBmcm9tICcuL2Fic3RyYWN0L2N1cnZlLmpzJztcblxuLyoqXG4gKiBlZDI1NTE5IFR3aXN0ZWQgRWR3YXJkcyBjdXJ2ZSB3aXRoIGZvbGxvd2luZyBhZGRvbnM6XG4gKiAtIFgyNTUxOSBFQ0RIXG4gKiAtIFJpc3RyZXR0byBjb2ZhY3RvciBlbGltaW5hdGlvblxuICogLSBFbGxpZ2F0b3IgaGFzaC10by1ncm91cCAvIHBvaW50IGluZGlzdGluZ3Vpc2hhYmlsaXR5XG4gKi9cblxuY29uc3QgRUQyNTUxOV9QID0gQmlnSW50KFxuICAnNTc4OTYwNDQ2MTg2NTgwOTc3MTE3ODU0OTI1MDQzNDM5NTM5MjY2MzQ5OTIzMzI4MjAyODIwMTk3Mjg3OTIwMDM5NTY1NjQ4MTk5NDknXG4pO1xuLy8gXHUyMjFBKC0xKSBha2EgXHUyMjFBKGEpIGFrYSAyXigocC0xKS80KVxuY29uc3QgRUQyNTUxOV9TUVJUX00xID0gQmlnSW50KFxuICAnMTk2ODExNjEzNzY3MDc1MDU5NTY4MDcwNzkzMDQ5ODg1NDIwMTU0NDYwNjY1MTU5MjM4OTAxNjI3NDQwMjEwNzMxMjM4Mjk3ODQ3NTInXG4pO1xuXG4vLyBwcmV0dGllci1pZ25vcmVcbmNvbnN0IF8wbiA9IEJpZ0ludCgwKSwgXzFuID0gQmlnSW50KDEpLCBfMm4gPSBCaWdJbnQoMiksIF81biA9IEJpZ0ludCg1KTtcbi8vIHByZXR0aWVyLWlnbm9yZVxuY29uc3QgXzEwbiA9IEJpZ0ludCgxMCksIF8yMG4gPSBCaWdJbnQoMjApLCBfNDBuID0gQmlnSW50KDQwKSwgXzgwbiA9IEJpZ0ludCg4MCk7XG5cbmZ1bmN0aW9uIGVkMjU1MTlfcG93XzJfMjUyXzMoeDogYmlnaW50KSB7XG4gIGNvbnN0IFAgPSBFRDI1NTE5X1A7XG4gIGNvbnN0IHgyID0gKHggKiB4KSAlIFA7XG4gIGNvbnN0IGIyID0gKHgyICogeCkgJSBQOyAvLyB4XjMsIDExXG4gIGNvbnN0IGI0ID0gKHBvdzIoYjIsIF8ybiwgUCkgKiBiMikgJSBQOyAvLyB4XjE1LCAxMTExXG4gIGNvbnN0IGI1ID0gKHBvdzIoYjQsIF8xbiwgUCkgKiB4KSAlIFA7IC8vIHheMzFcbiAgY29uc3QgYjEwID0gKHBvdzIoYjUsIF81biwgUCkgKiBiNSkgJSBQO1xuICBjb25zdCBiMjAgPSAocG93MihiMTAsIF8xMG4sIFApICogYjEwKSAlIFA7XG4gIGNvbnN0IGI0MCA9IChwb3cyKGIyMCwgXzIwbiwgUCkgKiBiMjApICUgUDtcbiAgY29uc3QgYjgwID0gKHBvdzIoYjQwLCBfNDBuLCBQKSAqIGI0MCkgJSBQO1xuICBjb25zdCBiMTYwID0gKHBvdzIoYjgwLCBfODBuLCBQKSAqIGI4MCkgJSBQO1xuICBjb25zdCBiMjQwID0gKHBvdzIoYjE2MCwgXzgwbiwgUCkgKiBiODApICUgUDtcbiAgY29uc3QgYjI1MCA9IChwb3cyKGIyNDAsIF8xMG4sIFApICogYjEwKSAlIFA7XG4gIGNvbnN0IHBvd19wXzVfOCA9IChwb3cyKGIyNTAsIF8ybiwgUCkgKiB4KSAlIFA7XG4gIC8vIF4gVG8gcG93IHRvIChwKzMpLzgsIG11bHRpcGx5IGl0IGJ5IHguXG4gIHJldHVybiB7IHBvd19wXzVfOCwgYjIgfTtcbn1cblxuZnVuY3Rpb24gYWRqdXN0U2NhbGFyQnl0ZXMoYnl0ZXM6IFVpbnQ4QXJyYXkpOiBVaW50OEFycmF5IHtcbiAgLy8gU2VjdGlvbiA1OiBGb3IgWDI1NTE5LCBpbiBvcmRlciB0byBkZWNvZGUgMzIgcmFuZG9tIGJ5dGVzIGFzIGFuIGludGVnZXIgc2NhbGFyLFxuICAvLyBzZXQgdGhlIHRocmVlIGxlYXN0IHNpZ25pZmljYW50IGJpdHMgb2YgdGhlIGZpcnN0IGJ5dGVcbiAgYnl0ZXNbMF0gJj0gMjQ4OyAvLyAwYjExMTFfMTAwMFxuICAvLyBhbmQgdGhlIG1vc3Qgc2lnbmlmaWNhbnQgYml0IG9mIHRoZSBsYXN0IHRvIHplcm8sXG4gIGJ5dGVzWzMxXSAmPSAxMjc7IC8vIDBiMDExMV8xMTExXG4gIC8vIHNldCB0aGUgc2Vjb25kIG1vc3Qgc2lnbmlmaWNhbnQgYml0IG9mIHRoZSBsYXN0IGJ5dGUgdG8gMVxuICBieXRlc1szMV0gfD0gNjQ7IC8vIDBiMDEwMF8wMDAwXG4gIHJldHVybiBieXRlcztcbn1cblxuLy8gc3FydCh1L3YpXG5mdW5jdGlvbiB1dlJhdGlvKHU6IGJpZ2ludCwgdjogYmlnaW50KTogeyBpc1ZhbGlkOiBib29sZWFuOyB2YWx1ZTogYmlnaW50IH0ge1xuICBjb25zdCBQID0gRUQyNTUxOV9QO1xuICBjb25zdCB2MyA9IG1vZCh2ICogdiAqIHYsIFApOyAvLyB2XHUwMEIzXG4gIGNvbnN0IHY3ID0gbW9kKHYzICogdjMgKiB2LCBQKTsgLy8gdlx1MjA3N1xuICAvLyAocCszKS84IGFuZCAocC01KS84XG4gIGNvbnN0IHBvdyA9IGVkMjU1MTlfcG93XzJfMjUyXzModSAqIHY3KS5wb3dfcF81Xzg7XG4gIGxldCB4ID0gbW9kKHUgKiB2MyAqIHBvdywgUCk7IC8vICh1dlx1MDBCMykodXZcdTIwNzcpXihwLTUpLzhcbiAgY29uc3QgdngyID0gbW9kKHYgKiB4ICogeCwgUCk7IC8vIHZ4XHUwMEIyXG4gIGNvbnN0IHJvb3QxID0geDsgLy8gRmlyc3Qgcm9vdCBjYW5kaWRhdGVcbiAgY29uc3Qgcm9vdDIgPSBtb2QoeCAqIEVEMjU1MTlfU1FSVF9NMSwgUCk7IC8vIFNlY29uZCByb290IGNhbmRpZGF0ZVxuICBjb25zdCB1c2VSb290MSA9IHZ4MiA9PT0gdTsgLy8gSWYgdnhcdTAwQjIgPSB1IChtb2QgcCksIHggaXMgYSBzcXVhcmUgcm9vdFxuICBjb25zdCB1c2VSb290MiA9IHZ4MiA9PT0gbW9kKC11LCBQKTsgLy8gSWYgdnhcdTAwQjIgPSAtdSwgc2V0IHggPC0tIHggKiAyXigocC0xKS80KVxuICBjb25zdCBub1Jvb3QgPSB2eDIgPT09IG1vZCgtdSAqIEVEMjU1MTlfU1FSVF9NMSwgUCk7IC8vIFRoZXJlIGlzIG5vIHZhbGlkIHJvb3QsIHZ4XHUwMEIyID0gLXVcdTIyMUEoLTEpXG4gIGlmICh1c2VSb290MSkgeCA9IHJvb3QxO1xuICBpZiAodXNlUm9vdDIgfHwgbm9Sb290KSB4ID0gcm9vdDI7IC8vIFdlIHJldHVybiByb290MiBhbnl3YXksIGZvciBjb25zdC10aW1lXG4gIGlmIChpc05lZ2F0aXZlTEUoeCwgUCkpIHggPSBtb2QoLXgsIFApO1xuICByZXR1cm4geyBpc1ZhbGlkOiB1c2VSb290MSB8fCB1c2VSb290MiwgdmFsdWU6IHggfTtcbn1cblxuLy8gSnVzdCBpbiBjYXNlXG5leHBvcnQgY29uc3QgRUQyNTUxOV9UT1JTSU9OX1NVQkdST1VQID0gW1xuICAnMDEwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCcsXG4gICdjNzE3NmE3MDNkNGRkODRmYmEzYzBiNzYwZDEwNjcwZjJhMjA1M2ZhMmMzOWNjYzY0ZWM3ZmQ3NzkyYWMwMzdhJyxcbiAgJzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwODAnLFxuICAnMjZlODk1OGZjMmIyMjdiMDQ1YzNmNDg5ZjJlZjk4ZjBkNWRmYWMwNWQzYzYzMzM5YjEzODAyODg2ZDUzZmMwNScsXG4gICdlY2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjdmJyxcbiAgJzI2ZTg5NThmYzJiMjI3YjA0NWMzZjQ4OWYyZWY5OGYwZDVkZmFjMDVkM2M2MzMzOWIxMzgwMjg4NmQ1M2ZjODUnLFxuICAnMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCcsXG4gICdjNzE3NmE3MDNkNGRkODRmYmEzYzBiNzYwZDEwNjcwZjJhMjA1M2ZhMmMzOWNjYzY0ZWM3ZmQ3NzkyYWMwM2ZhJyxcbl07XG5cbmNvbnN0IEZwID0gRmllbGQoRUQyNTUxOV9QLCB1bmRlZmluZWQsIHRydWUpO1xuXG5jb25zdCBlZDI1NTE5RGVmYXVsdHMgPSB7XG4gIC8vIFBhcmFtOiBhXG4gIGE6IEJpZ0ludCgtMSksIC8vIEZwLmNyZWF0ZSgtMSkgaXMgcHJvcGVyOyBvdXIgd2F5IHN0aWxsIHdvcmtzIGFuZCBpcyBmYXN0ZXJcbiAgLy8gZCBpcyBlcXVhbCB0byAtMTIxNjY1LzEyMTY2NiBvdmVyIGZpbml0ZSBmaWVsZC5cbiAgLy8gTmVnYXRpdmUgbnVtYmVyIGlzIFAgLSBudW1iZXIsIGFuZCBkaXZpc2lvbiBpcyBpbnZlcnQobnVtYmVyLCBQKVxuICBkOiBCaWdJbnQoJzM3MDk1NzA1OTM0NjY5NDM5MzQzMTM4MDgzNTA4NzU0NTY1MTg5NTQyMTEzODc5ODQzMjE5MDE2Mzg4Nzg1NTMzMDg1OTQwMjgzNTU1JyksXG4gIC8vIEZpbml0ZSBmaWVsZCBcdUQ4MzVcdUREM0RwIG92ZXIgd2hpY2ggd2UnbGwgZG8gY2FsY3VsYXRpb25zOyAybioqMjU1biAtIDE5blxuICBGcCxcbiAgLy8gU3ViZ3JvdXAgb3JkZXI6IGhvdyBtYW55IHBvaW50cyBjdXJ2ZSBoYXNcbiAgLy8gMm4qKjI1Mm4gKyAyNzc0MjMxNzc3NzM3MjM1MzUzNTg1MTkzNzc5MDg4MzY0ODQ5M247XG4gIG46IEJpZ0ludCgnNzIzNzAwNTU3NzMzMjI2MjIxMzk3MzE4NjU2MzA0Mjk5NDI0MDg1NzExNjM1OTM3OTkwNzYwNjAwMTk1MDkzODI4NTQ1NDI1MDk4OScpLFxuICAvLyBDb2ZhY3RvclxuICBoOiBCaWdJbnQoOCksXG4gIC8vIEJhc2UgcG9pbnQgKHgsIHkpIGFrYSBnZW5lcmF0b3IgcG9pbnRcbiAgR3g6IEJpZ0ludCgnMTUxMTIyMjEzNDk1MzU0MDA3NzI1MDExNTE0MDk1ODg1MzE1MTE0NTQwMTI2OTMwNDE4NTcyMDYwNDYxMTMyODM5NDk4NDc3NjIyMDInKSxcbiAgR3k6IEJpZ0ludCgnNDYzMTY4MzU2OTQ5MjY0NzgxNjk0MjgzOTQwMDM0NzUxNjMxNDEzMDc5OTM4NjYyNTYyMjU2MTU3ODMwMzM2MDMxNjUyNTE4NTU5NjAnKSxcbiAgaGFzaDogc2hhNTEyLFxuICByYW5kb21CeXRlcyxcbiAgYWRqdXN0U2NhbGFyQnl0ZXMsXG4gIC8vIGRvbTJcbiAgLy8gUmF0aW8gb2YgdSB0byB2LiBBbGxvd3MgdXMgdG8gY29tYmluZSBpbnZlcnNpb24gYW5kIHNxdWFyZSByb290LiBVc2VzIGFsZ28gZnJvbSBSRkM4MDMyIDUuMS4zLlxuICAvLyBDb25zdGFudC10aW1lLCB1L1x1MjIxQXZcbiAgdXZSYXRpbyxcbn0gYXMgY29uc3Q7XG5cbmV4cG9ydCBjb25zdCBlZDI1NTE5ID0gLyogQF9fUFVSRV9fICovIHR3aXN0ZWRFZHdhcmRzKGVkMjU1MTlEZWZhdWx0cyk7XG5cbmZ1bmN0aW9uIGVkMjU1MTlfZG9tYWluKGRhdGE6IFVpbnQ4QXJyYXksIGN0eDogVWludDhBcnJheSwgcGhmbGFnOiBib29sZWFuKSB7XG4gIGlmIChjdHgubGVuZ3RoID4gMjU1KSB0aHJvdyBuZXcgRXJyb3IoJ0NvbnRleHQgaXMgdG9vIGJpZycpO1xuICByZXR1cm4gY29uY2F0Qnl0ZXMoXG4gICAgdXRmOFRvQnl0ZXMoJ1NpZ0VkMjU1MTkgbm8gRWQyNTUxOSBjb2xsaXNpb25zJyksXG4gICAgbmV3IFVpbnQ4QXJyYXkoW3BoZmxhZyA/IDEgOiAwLCBjdHgubGVuZ3RoXSksXG4gICAgY3R4LFxuICAgIGRhdGFcbiAgKTtcbn1cblxuZXhwb3J0IGNvbnN0IGVkMjU1MTljdHggPSAvKiBAX19QVVJFX18gKi8gdHdpc3RlZEVkd2FyZHMoe1xuICAuLi5lZDI1NTE5RGVmYXVsdHMsXG4gIGRvbWFpbjogZWQyNTUxOV9kb21haW4sXG59KTtcbmV4cG9ydCBjb25zdCBlZDI1NTE5cGggPSAvKiBAX19QVVJFX18gKi8gdHdpc3RlZEVkd2FyZHMoe1xuICAuLi5lZDI1NTE5RGVmYXVsdHMsXG4gIGRvbWFpbjogZWQyNTUxOV9kb21haW4sXG4gIHByZWhhc2g6IHNoYTUxMixcbn0pO1xuXG5leHBvcnQgY29uc3QgeDI1NTE5ID0gLyogQF9fUFVSRV9fICovICgoKSA9PlxuICBtb250Z29tZXJ5KHtcbiAgICBQOiBFRDI1NTE5X1AsXG4gICAgYTogQmlnSW50KDQ4NjY2MiksXG4gICAgbW9udGdvbWVyeUJpdHM6IDI1NSwgLy8gbiBpcyAyNTMgYml0c1xuICAgIG5CeXRlTGVuZ3RoOiAzMixcbiAgICBHdTogQmlnSW50KDkpLFxuICAgIHBvd1BtaW51czI6ICh4OiBiaWdpbnQpOiBiaWdpbnQgPT4ge1xuICAgICAgY29uc3QgUCA9IEVEMjU1MTlfUDtcbiAgICAgIC8vIHheKHAtMikgYWthIHheKDJeMjU1LTIxKVxuICAgICAgY29uc3QgeyBwb3dfcF81XzgsIGIyIH0gPSBlZDI1NTE5X3Bvd18yXzI1Ml8zKHgpO1xuICAgICAgcmV0dXJuIG1vZChwb3cyKHBvd19wXzVfOCwgQmlnSW50KDMpLCBQKSAqIGIyLCBQKTtcbiAgICB9LFxuICAgIGFkanVzdFNjYWxhckJ5dGVzLFxuICAgIHJhbmRvbUJ5dGVzLFxuICB9KSkoKTtcblxuLyoqXG4gKiBDb252ZXJ0cyBlZDI1NTE5IHB1YmxpYyBrZXkgdG8geDI1NTE5IHB1YmxpYyBrZXkuIFVzZXMgZm9ybXVsYTpcbiAqICogYCh1LCB2KSA9ICgoMSt5KS8oMS15KSwgc3FydCgtNDg2NjY0KSp1L3gpYFxuICogKiBgKHgsIHkpID0gKHNxcnQoLTQ4NjY2NCkqdS92LCAodS0xKS8odSsxKSlgXG4gKiBAZXhhbXBsZVxuICogICBjb25zdCBzb21lb25lc1B1YiA9IGVkMjU1MTkuZ2V0UHVibGljS2V5KGVkMjU1MTkudXRpbHMucmFuZG9tUHJpdmF0ZUtleSgpKTtcbiAqICAgY29uc3QgYVByaXYgPSB4MjU1MTkudXRpbHMucmFuZG9tUHJpdmF0ZUtleSgpO1xuICogICB4MjU1MTkuZ2V0U2hhcmVkU2VjcmV0KGFQcml2LCBlZHdhcmRzVG9Nb250Z29tZXJ5UHViKHNvbWVvbmVzUHViKSlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGVkd2FyZHNUb01vbnRnb21lcnlQdWIoZWR3YXJkc1B1YjogSGV4KTogVWludDhBcnJheSB7XG4gIGNvbnN0IHsgeSB9ID0gZWQyNTUxOS5FeHRlbmRlZFBvaW50LmZyb21IZXgoZWR3YXJkc1B1Yik7XG4gIGNvbnN0IF8xbiA9IEJpZ0ludCgxKTtcbiAgcmV0dXJuIEZwLnRvQnl0ZXMoRnAuY3JlYXRlKChfMW4gKyB5KSAqIEZwLmludihfMW4gLSB5KSkpO1xufVxuZXhwb3J0IGNvbnN0IGVkd2FyZHNUb01vbnRnb21lcnkgPSBlZHdhcmRzVG9Nb250Z29tZXJ5UHViOyAvLyBkZXByZWNhdGVkXG5cbi8qKlxuICogQ29udmVydHMgZWQyNTUxOSBzZWNyZXQga2V5IHRvIHgyNTUxOSBzZWNyZXQga2V5LlxuICogQGV4YW1wbGVcbiAqICAgY29uc3Qgc29tZW9uZXNQdWIgPSB4MjU1MTkuZ2V0UHVibGljS2V5KHgyNTUxOS51dGlscy5yYW5kb21Qcml2YXRlS2V5KCkpO1xuICogICBjb25zdCBhUHJpdiA9IGVkMjU1MTkudXRpbHMucmFuZG9tUHJpdmF0ZUtleSgpO1xuICogICB4MjU1MTkuZ2V0U2hhcmVkU2VjcmV0KGVkd2FyZHNUb01vbnRnb21lcnlQcml2KGFQcml2KSwgc29tZW9uZXNQdWIpXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBlZHdhcmRzVG9Nb250Z29tZXJ5UHJpdihlZHdhcmRzUHJpdjogVWludDhBcnJheSk6IFVpbnQ4QXJyYXkge1xuICBjb25zdCBoYXNoZWQgPSBlZDI1NTE5RGVmYXVsdHMuaGFzaChlZHdhcmRzUHJpdi5zdWJhcnJheSgwLCAzMikpO1xuICByZXR1cm4gZWQyNTUxOURlZmF1bHRzLmFkanVzdFNjYWxhckJ5dGVzKGhhc2hlZCkuc3ViYXJyYXkoMCwgMzIpO1xufVxuXG4vLyBIYXNoIFRvIEN1cnZlIEVsbGlnYXRvcjIgTWFwIChOT1RFOiBkaWZmZXJlbnQgZnJvbSByaXN0cmV0dG8yNTUgZWxsaWdhdG9yKVxuLy8gTk9URTogdmVyeSBpbXBvcnRhbnQgcGFydCBpcyB1c2FnZSBvZiBGcFNxcnRFdmVuIGZvciBFTEwyX0MxX0VEV0FSRFMsIHNpbmNlXG4vLyBTYWdlTWF0aCByZXR1cm5zIGRpZmZlcmVudCByb290IGZpcnN0IGFuZCBldmVyeXRoaW5nIGZhbGxzIGFwYXJ0XG5cbmNvbnN0IEVMTDJfQzEgPSAoRnAuT1JERVIgKyBCaWdJbnQoMykpIC8gQmlnSW50KDgpOyAvLyAxLiBjMSA9IChxICsgMykgLyA4ICAgICAgICMgSW50ZWdlciBhcml0aG1ldGljXG5cbmNvbnN0IEVMTDJfQzIgPSBGcC5wb3coXzJuLCBFTEwyX0MxKTsgLy8gMi4gYzIgPSAyXmMxXG5jb25zdCBFTEwyX0MzID0gRnAuc3FydChGcC5uZWcoRnAuT05FKSk7IC8vIDMuIGMzID0gc3FydCgtMSlcbmNvbnN0IEVMTDJfQzQgPSAoRnAuT1JERVIgLSBCaWdJbnQoNSkpIC8gQmlnSW50KDgpOyAvLyA0LiBjNCA9IChxIC0gNSkgLyA4ICAgICAgICMgSW50ZWdlciBhcml0aG1ldGljXG5jb25zdCBFTEwyX0ogPSBCaWdJbnQoNDg2NjYyKTtcblxuLy8gcHJldHRpZXItaWdub3JlXG5mdW5jdGlvbiBtYXBfdG9fY3VydmVfZWxsaWdhdG9yMl9jdXJ2ZTI1NTE5KHU6IGJpZ2ludCkge1xuICBsZXQgdHYxID0gRnAuc3FyKHUpOyAgICAgICAvLyAgMS4gIHR2MSA9IHVeMlxuICB0djEgPSBGcC5tdWwodHYxLCBfMm4pOyAgICAgICAvLyAgMi4gIHR2MSA9IDIgKiB0djFcbiAgbGV0IHhkID0gRnAuYWRkKHR2MSwgRnAuT05FKTsgLy8gIDMuICAgeGQgPSB0djEgKyAxICAgICAgICAgIyBOb256ZXJvOiAtMSBpcyBzcXVhcmUgKG1vZCBwKSwgdHYxIGlzIG5vdFxuICBsZXQgeDFuID0gRnAubmVnKEVMTDJfSik7ICAvLyAgNC4gIHgxbiA9IC1KICAgICAgICAgICAgICAjIHgxID0geDFuIC8geGQgPSAtSiAvICgxICsgMiAqIHVeMilcbiAgbGV0IHR2MiA9IEZwLnNxcih4ZCk7ICAgICAgLy8gIDUuICB0djIgPSB4ZF4yXG4gIGxldCBneGQgPSBGcC5tdWwodHYyLCB4ZCk7ICAgIC8vICA2LiAgZ3hkID0gdHYyICogeGQgICAgICAgICMgZ3hkID0geGReM1xuICBsZXQgZ3gxID0gRnAubXVsKHR2MSwgRUxMMl9KKTsgLy8gIDcuICBneDEgPSBKICogdHYxICAgICAgICAgIyB4MW4gKyBKICogeGRcbiAgZ3gxID0gRnAubXVsKGd4MSwgeDFuKTsgICAgICAgLy8gIDguICBneDEgPSBneDEgKiB4MW4gICAgICAgIyB4MW5eMiArIEogKiB4MW4gKiB4ZFxuICBneDEgPSBGcC5hZGQoZ3gxLCB0djIpOyAgICAgICAvLyAgOS4gIGd4MSA9IGd4MSArIHR2MiAgICAgICAjIHgxbl4yICsgSiAqIHgxbiAqIHhkICsgeGReMlxuICBneDEgPSBGcC5tdWwoZ3gxLCB4MW4pOyAgICAgICAvLyAgMTAuIGd4MSA9IGd4MSAqIHgxbiAgICAgICAjIHgxbl4zICsgSiAqIHgxbl4yICogeGQgKyB4MW4gKiB4ZF4yXG4gIGxldCB0djMgPSBGcC5zcXIoZ3hkKTsgICAgIC8vICAxMS4gdHYzID0gZ3hkXjJcbiAgdHYyID0gRnAuc3FyKHR2Myk7ICAgICAgICAgLy8gIDEyLiB0djIgPSB0djNeMiAgICAgICAgICAgIyBneGReNFxuICB0djMgPSBGcC5tdWwodHYzLCBneGQpOyAgICAgICAvLyAgMTMuIHR2MyA9IHR2MyAqIGd4ZCAgICAgICAjIGd4ZF4zXG4gIHR2MyA9IEZwLm11bCh0djMsIGd4MSk7ICAgICAgIC8vICAxNC4gdHYzID0gdHYzICogZ3gxICAgICAgICMgZ3gxICogZ3hkXjNcbiAgdHYyID0gRnAubXVsKHR2MiwgdHYzKTsgICAgICAgLy8gIDE1LiB0djIgPSB0djIgKiB0djMgICAgICAgIyBneDEgKiBneGReN1xuICBsZXQgeTExID0gRnAucG93KHR2MiwgRUxMMl9DNCk7IC8vICAxNi4geTExID0gdHYyXmM0ICAgICAgICAjIChneDEgKiBneGReNyleKChwIC0gNSkgLyA4KVxuICB5MTEgPSBGcC5tdWwoeTExLCB0djMpOyAgICAgICAvLyAgMTcuIHkxMSA9IHkxMSAqIHR2MyAgICAgICAjIGd4MSpneGReMyooZ3gxKmd4ZF43KV4oKHAtNSkvOClcbiAgbGV0IHkxMiA9IEZwLm11bCh5MTEsIEVMTDJfQzMpOyAvLyAgMTguIHkxMiA9IHkxMSAqIGMzXG4gIHR2MiA9IEZwLnNxcih5MTEpOyAgICAgICAgIC8vICAxOS4gdHYyID0geTExXjJcbiAgdHYyID0gRnAubXVsKHR2MiwgZ3hkKTsgICAgICAgLy8gIDIwLiB0djIgPSB0djIgKiBneGRcbiAgbGV0IGUxID0gRnAuZXFsKHR2MiwgZ3gxKTsgLy8gIDIxLiAgZTEgPSB0djIgPT0gZ3gxXG4gIGxldCB5MSA9IEZwLmNtb3YoeTEyLCB5MTEsIGUxKTsgLy8gIDIyLiAgeTEgPSBDTU9WKHkxMiwgeTExLCBlMSkgICMgSWYgZyh4MSkgaXMgc3F1YXJlLCB0aGlzIGlzIGl0cyBzcXJ0XG4gIGxldCB4Mm4gPSBGcC5tdWwoeDFuLCB0djEpOyAgIC8vICAyMy4geDJuID0geDFuICogdHYxICAgICAgICMgeDIgPSB4Mm4gLyB4ZCA9IDIgKiB1XjIgKiB4MW4gLyB4ZFxuICBsZXQgeTIxID0gRnAubXVsKHkxMSwgdSk7ICAgICAvLyAgMjQuIHkyMSA9IHkxMSAqIHVcbiAgeTIxID0gRnAubXVsKHkyMSwgRUxMMl9DMik7ICAgLy8gIDI1LiB5MjEgPSB5MjEgKiBjMlxuICBsZXQgeTIyID0gRnAubXVsKHkyMSwgRUxMMl9DMyk7IC8vICAyNi4geTIyID0geTIxICogYzNcbiAgbGV0IGd4MiA9IEZwLm11bChneDEsIHR2MSk7ICAgLy8gIDI3LiBneDIgPSBneDEgKiB0djEgICAgICAgIyBnKHgyKSA9IGd4MiAvIGd4ZCA9IDIgKiB1XjIgKiBnKHgxKVxuICB0djIgPSBGcC5zcXIoeTIxKTsgICAgICAgICAvLyAgMjguIHR2MiA9IHkyMV4yXG4gIHR2MiA9IEZwLm11bCh0djIsIGd4ZCk7ICAgICAgIC8vICAyOS4gdHYyID0gdHYyICogZ3hkXG4gIGxldCBlMiA9IEZwLmVxbCh0djIsIGd4Mik7IC8vICAzMC4gIGUyID0gdHYyID09IGd4MlxuICBsZXQgeTIgPSBGcC5jbW92KHkyMiwgeTIxLCBlMik7IC8vICAzMS4gIHkyID0gQ01PVih5MjIsIHkyMSwgZTIpICAjIElmIGcoeDIpIGlzIHNxdWFyZSwgdGhpcyBpcyBpdHMgc3FydFxuICB0djIgPSBGcC5zcXIoeTEpOyAgICAgICAgICAvLyAgMzIuIHR2MiA9IHkxXjJcbiAgdHYyID0gRnAubXVsKHR2MiwgZ3hkKTsgICAgICAgLy8gIDMzLiB0djIgPSB0djIgKiBneGRcbiAgbGV0IGUzID0gRnAuZXFsKHR2MiwgZ3gxKTsgLy8gIDM0LiAgZTMgPSB0djIgPT0gZ3gxXG4gIGxldCB4biA9IEZwLmNtb3YoeDJuLCB4MW4sIGUzKTsgLy8gIDM1LiAgeG4gPSBDTU9WKHgybiwgeDFuLCBlMykgICMgSWYgZTMsIHggPSB4MSwgZWxzZSB4ID0geDJcbiAgbGV0IHkgPSBGcC5jbW92KHkyLCB5MSwgZTMpOyAgLy8gIDM2LiAgIHkgPSBDTU9WKHkyLCB5MSwgZTMpICAgICMgSWYgZTMsIHkgPSB5MSwgZWxzZSB5ID0geTJcbiAgbGV0IGU0ID0gRnAuaXNPZGQoeSk7ICAgICAgICAgLy8gIDM3LiAgZTQgPSBzZ24wKHkpID09IDEgICAgICAgICMgRml4IHNpZ24gb2YgeVxuICB5ID0gRnAuY21vdih5LCBGcC5uZWcoeSksIGUzICE9PSBlNCk7IC8vICAzOC4gICB5ID0gQ01PVih5LCAteSwgZTMgWE9SIGU0KVxuICByZXR1cm4geyB4TW46IHhuLCB4TWQ6IHhkLCB5TW46IHksIHlNZDogXzFuIH07IC8vICAzOS4gcmV0dXJuICh4biwgeGQsIHksIDEpXG59XG5cbmNvbnN0IEVMTDJfQzFfRURXQVJEUyA9IEZwU3FydEV2ZW4oRnAsIEZwLm5lZyhCaWdJbnQoNDg2NjY0KSkpOyAvLyBzZ24wKGMxKSBNVVNUIGVxdWFsIDBcbmZ1bmN0aW9uIG1hcF90b19jdXJ2ZV9lbGxpZ2F0b3IyX2Vkd2FyZHMyNTUxOSh1OiBiaWdpbnQpIHtcbiAgY29uc3QgeyB4TW4sIHhNZCwgeU1uLCB5TWQgfSA9IG1hcF90b19jdXJ2ZV9lbGxpZ2F0b3IyX2N1cnZlMjU1MTkodSk7IC8vICAxLiAgKHhNbiwgeE1kLCB5TW4sIHlNZCkgPVxuICAvLyBtYXBfdG9fY3VydmVfZWxsaWdhdG9yMl9jdXJ2ZTI1NTE5KHUpXG4gIGxldCB4biA9IEZwLm11bCh4TW4sIHlNZCk7IC8vICAyLiAgeG4gPSB4TW4gKiB5TWRcbiAgeG4gPSBGcC5tdWwoeG4sIEVMTDJfQzFfRURXQVJEUyk7IC8vICAzLiAgeG4gPSB4biAqIGMxXG4gIGxldCB4ZCA9IEZwLm11bCh4TWQsIHlNbik7IC8vICA0LiAgeGQgPSB4TWQgKiB5TW4gICAgIyB4biAvIHhkID0gYzEgKiB4TSAvIHlNXG4gIGxldCB5biA9IEZwLnN1Yih4TW4sIHhNZCk7IC8vICA1LiAgeW4gPSB4TW4gLSB4TWRcbiAgbGV0IHlkID0gRnAuYWRkKHhNbiwgeE1kKTsgLy8gIDYuICB5ZCA9IHhNbiArIHhNZCAgICAjIChuIC8gZCAtIDEpIC8gKG4gLyBkICsgMSkgPSAobiAtIGQpIC8gKG4gKyBkKVxuICBsZXQgdHYxID0gRnAubXVsKHhkLCB5ZCk7IC8vICA3LiB0djEgPSB4ZCAqIHlkXG4gIGxldCBlID0gRnAuZXFsKHR2MSwgRnAuWkVSTyk7IC8vICA4LiAgIGUgPSB0djEgPT0gMFxuICB4biA9IEZwLmNtb3YoeG4sIEZwLlpFUk8sIGUpOyAvLyAgOS4gIHhuID0gQ01PVih4biwgMCwgZSlcbiAgeGQgPSBGcC5jbW92KHhkLCBGcC5PTkUsIGUpOyAvLyAgMTAuIHhkID0gQ01PVih4ZCwgMSwgZSlcbiAgeW4gPSBGcC5jbW92KHluLCBGcC5PTkUsIGUpOyAvLyAgMTEuIHluID0gQ01PVih5biwgMSwgZSlcbiAgeWQgPSBGcC5jbW92KHlkLCBGcC5PTkUsIGUpOyAvLyAgMTIuIHlkID0gQ01PVih5ZCwgMSwgZSlcblxuICBjb25zdCBpbnYgPSBGcC5pbnZlcnRCYXRjaChbeGQsIHlkXSk7IC8vIGJhdGNoIGRpdmlzaW9uXG4gIHJldHVybiB7IHg6IEZwLm11bCh4biwgaW52WzBdKSwgeTogRnAubXVsKHluLCBpbnZbMV0pIH07IC8vICAxMy4gcmV0dXJuICh4biwgeGQsIHluLCB5ZClcbn1cblxuY29uc3QgaHRmID0gLyogQF9fUFVSRV9fICovICgoKSA9PlxuICBjcmVhdGVIYXNoZXIoXG4gICAgZWQyNTUxOS5FeHRlbmRlZFBvaW50LFxuICAgIChzY2FsYXJzOiBiaWdpbnRbXSkgPT4gbWFwX3RvX2N1cnZlX2VsbGlnYXRvcjJfZWR3YXJkczI1NTE5KHNjYWxhcnNbMF0pLFxuICAgIHtcbiAgICAgIERTVDogJ2Vkd2FyZHMyNTUxOV9YTUQ6U0hBLTUxMl9FTEwyX1JPXycsXG4gICAgICBlbmNvZGVEU1Q6ICdlZHdhcmRzMjU1MTlfWE1EOlNIQS01MTJfRUxMMl9OVV8nLFxuICAgICAgcDogRnAuT1JERVIsXG4gICAgICBtOiAxLFxuICAgICAgazogMTI4LFxuICAgICAgZXhwYW5kOiAneG1kJyxcbiAgICAgIGhhc2g6IHNoYTUxMixcbiAgICB9XG4gICkpKCk7XG5leHBvcnQgY29uc3QgaGFzaFRvQ3VydmUgPSAvKiBAX19QVVJFX18gKi8gKCgpID0+IGh0Zi5oYXNoVG9DdXJ2ZSkoKTtcbmV4cG9ydCBjb25zdCBlbmNvZGVUb0N1cnZlID0gLyogQF9fUFVSRV9fICovICgoKSA9PiBodGYuZW5jb2RlVG9DdXJ2ZSkoKTtcblxuZnVuY3Rpb24gYXNzZXJ0UnN0UG9pbnQob3RoZXI6IHVua25vd24pIHtcbiAgaWYgKCEob3RoZXIgaW5zdGFuY2VvZiBSaXN0UG9pbnQpKSB0aHJvdyBuZXcgRXJyb3IoJ1Jpc3RyZXR0b1BvaW50IGV4cGVjdGVkJyk7XG59XG5cbi8vIFx1MjIxQSgtMSkgYWthIFx1MjIxQShhKSBha2EgMl4oKHAtMSkvNClcbmNvbnN0IFNRUlRfTTEgPSBFRDI1NTE5X1NRUlRfTTE7XG4vLyBcdTIyMUEoYWQgLSAxKVxuY29uc3QgU1FSVF9BRF9NSU5VU19PTkUgPSBCaWdJbnQoXG4gICcyNTA2MzA2ODk1MzM4NDYyMzQ3NDExMTQxNDE1ODcwMjE1MjcwMTI0NDUzMTUwMjQ5MjY1NjQ2MDA3OTIxMDQ4MjYxMDQzMDc1MDIzNSdcbik7XG4vLyAxIC8gXHUyMjFBKGEtZClcbmNvbnN0IElOVlNRUlRfQV9NSU5VU19EID0gQmlnSW50KFxuICAnNTQ0NjkzMDcwMDg5MDkzMTY5MjA5OTU4MTM4Njg3NDUxNDE2MDUzOTM1OTcyOTI5Mjc0NTY5MjEyMDUzMTI4OTYzMTE3MjEwMTc1NzgnXG4pO1xuLy8gMS1kXHUwMEIyXG5jb25zdCBPTkVfTUlOVVNfRF9TUSA9IEJpZ0ludChcbiAgJzExNTk4NDMwMjE2Njg3Nzk4NzkxOTM3NzU1MjE4NTU1ODY2NDc5MzczNTc3NTk3MTU0MTc2NTQ0Mzk4Nzk3MjA4NzYxMTE4MDY4MzgnXG4pO1xuLy8gKGQtMSlcdTAwQjJcbmNvbnN0IERfTUlOVVNfT05FX1NRID0gQmlnSW50KFxuICAnNDA0NDA4MzQzNDYzMDg1MzY4NTgxMDEwNDI0NjkzMjMxOTA4MjYyNDgzOTkxNDYyMzg3MDgzNTIyNDAxMzMyMjA4NjUxMzcyNjU5NTInXG4pO1xuLy8gQ2FsY3VsYXRlcyAxL1x1MjIxQShudW1iZXIpXG5jb25zdCBpbnZlcnRTcXJ0ID0gKG51bWJlcjogYmlnaW50KSA9PiB1dlJhdGlvKF8xbiwgbnVtYmVyKTtcblxuY29uc3QgTUFYXzI1NUIgPSBCaWdJbnQoJzB4N2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZicpO1xuY29uc3QgYnl0ZXMyNTVUb051bWJlckxFID0gKGJ5dGVzOiBVaW50OEFycmF5KSA9PlxuICBlZDI1NTE5LkNVUlZFLkZwLmNyZWF0ZShieXRlc1RvTnVtYmVyTEUoYnl0ZXMpICYgTUFYXzI1NUIpO1xuXG50eXBlIEV4dGVuZGVkUG9pbnQgPSBFeHRQb2ludFR5cGU7XG5cbi8vIENvbXB1dGVzIEVsbGlnYXRvciBtYXAgZm9yIFJpc3RyZXR0b1xuLy8gaHR0cHM6Ly9yaXN0cmV0dG8uZ3JvdXAvZm9ybXVsYXMvZWxsaWdhdG9yLmh0bWxcbmZ1bmN0aW9uIGNhbGNFbGxpZ2F0b3JSaXN0cmV0dG9NYXAocjA6IGJpZ2ludCk6IEV4dGVuZGVkUG9pbnQge1xuICBjb25zdCB7IGQgfSA9IGVkMjU1MTkuQ1VSVkU7XG4gIGNvbnN0IFAgPSBlZDI1NTE5LkNVUlZFLkZwLk9SREVSO1xuICBjb25zdCBtb2QgPSBlZDI1NTE5LkNVUlZFLkZwLmNyZWF0ZTtcbiAgY29uc3QgciA9IG1vZChTUVJUX00xICogcjAgKiByMCk7IC8vIDFcbiAgY29uc3QgTnMgPSBtb2QoKHIgKyBfMW4pICogT05FX01JTlVTX0RfU1EpOyAvLyAyXG4gIGxldCBjID0gQmlnSW50KC0xKTsgLy8gM1xuICBjb25zdCBEID0gbW9kKChjIC0gZCAqIHIpICogbW9kKHIgKyBkKSk7IC8vIDRcbiAgbGV0IHsgaXNWYWxpZDogTnNfRF9pc19zcSwgdmFsdWU6IHMgfSA9IHV2UmF0aW8oTnMsIEQpOyAvLyA1XG4gIGxldCBzXyA9IG1vZChzICogcjApOyAvLyA2XG4gIGlmICghaXNOZWdhdGl2ZUxFKHNfLCBQKSkgc18gPSBtb2QoLXNfKTtcbiAgaWYgKCFOc19EX2lzX3NxKSBzID0gc187IC8vIDdcbiAgaWYgKCFOc19EX2lzX3NxKSBjID0gcjsgLy8gOFxuICBjb25zdCBOdCA9IG1vZChjICogKHIgLSBfMW4pICogRF9NSU5VU19PTkVfU1EgLSBEKTsgLy8gOVxuICBjb25zdCBzMiA9IHMgKiBzO1xuICBjb25zdCBXMCA9IG1vZCgocyArIHMpICogRCk7IC8vIDEwXG4gIGNvbnN0IFcxID0gbW9kKE50ICogU1FSVF9BRF9NSU5VU19PTkUpOyAvLyAxMVxuICBjb25zdCBXMiA9IG1vZChfMW4gLSBzMik7IC8vIDEyXG4gIGNvbnN0IFczID0gbW9kKF8xbiArIHMyKTsgLy8gMTNcbiAgcmV0dXJuIG5ldyBlZDI1NTE5LkV4dGVuZGVkUG9pbnQobW9kKFcwICogVzMpLCBtb2QoVzIgKiBXMSksIG1vZChXMSAqIFczKSwgbW9kKFcwICogVzIpKTtcbn1cblxuLyoqXG4gKiBFYWNoIGVkMjU1MTkvRXh0ZW5kZWRQb2ludCBoYXMgOCBkaWZmZXJlbnQgZXF1aXZhbGVudCBwb2ludHMuIFRoaXMgY2FuIGJlXG4gKiBhIHNvdXJjZSBvZiBidWdzIGZvciBwcm90b2NvbHMgbGlrZSByaW5nIHNpZ25hdHVyZXMuIFJpc3RyZXR0byB3YXMgY3JlYXRlZCB0byBzb2x2ZSB0aGlzLlxuICogUmlzdHJldHRvIHBvaW50IG9wZXJhdGVzIGluIFg6WTpaOlQgZXh0ZW5kZWQgY29vcmRpbmF0ZXMgbGlrZSBFeHRlbmRlZFBvaW50LFxuICogYnV0IGl0IHNob3VsZCB3b3JrIGluIGl0cyBvd24gbmFtZXNwYWNlOiBkbyBub3QgY29tYmluZSB0aG9zZSB0d28uXG4gKiBodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9odG1sL2RyYWZ0LWlydGYtY2ZyZy1yaXN0cmV0dG8yNTUtZGVjYWY0NDhcbiAqL1xuY2xhc3MgUmlzdFBvaW50IHtcbiAgc3RhdGljIEJBU0U6IFJpc3RQb2ludDtcbiAgc3RhdGljIFpFUk86IFJpc3RQb2ludDtcbiAgLy8gUHJpdmF0ZSBwcm9wZXJ0eSB0byBkaXNjb3VyYWdlIGNvbWJpbmluZyBFeHRlbmRlZFBvaW50ICsgUmlzdHJldHRvUG9pbnRcbiAgLy8gQWx3YXlzIHVzZSBSaXN0cmV0dG8gZW5jb2RpbmcvZGVjb2RpbmcgaW5zdGVhZC5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBlcDogRXh0ZW5kZWRQb2ludCkge31cblxuICBzdGF0aWMgZnJvbUFmZmluZShhcDogQWZmaW5lUG9pbnQ8YmlnaW50Pikge1xuICAgIHJldHVybiBuZXcgUmlzdFBvaW50KGVkMjU1MTkuRXh0ZW5kZWRQb2ludC5mcm9tQWZmaW5lKGFwKSk7XG4gIH1cblxuICAvKipcbiAgICogVGFrZXMgdW5pZm9ybSBvdXRwdXQgb2YgNjQtYnl0ZSBoYXNoIGZ1bmN0aW9uIGxpa2Ugc2hhNTEyIGFuZCBjb252ZXJ0cyBpdCB0byBgUmlzdHJldHRvUG9pbnRgLlxuICAgKiBUaGUgaGFzaC10by1ncm91cCBvcGVyYXRpb24gYXBwbGllcyBFbGxpZ2F0b3IgdHdpY2UgYW5kIGFkZHMgdGhlIHJlc3VsdHMuXG4gICAqICoqTm90ZToqKiB0aGlzIGlzIG9uZS13YXkgbWFwLCB0aGVyZSBpcyBubyBjb252ZXJzaW9uIGZyb20gcG9pbnQgdG8gaGFzaC5cbiAgICogaHR0cHM6Ly9yaXN0cmV0dG8uZ3JvdXAvZm9ybXVsYXMvZWxsaWdhdG9yLmh0bWxcbiAgICogQHBhcmFtIGhleCA2NC1ieXRlIG91dHB1dCBvZiBhIGhhc2ggZnVuY3Rpb25cbiAgICovXG4gIHN0YXRpYyBoYXNoVG9DdXJ2ZShoZXg6IEhleCk6IFJpc3RQb2ludCB7XG4gICAgaGV4ID0gZW5zdXJlQnl0ZXMoJ3Jpc3RyZXR0b0hhc2gnLCBoZXgsIDY0KTtcbiAgICBjb25zdCByMSA9IGJ5dGVzMjU1VG9OdW1iZXJMRShoZXguc2xpY2UoMCwgMzIpKTtcbiAgICBjb25zdCBSMSA9IGNhbGNFbGxpZ2F0b3JSaXN0cmV0dG9NYXAocjEpO1xuICAgIGNvbnN0IHIyID0gYnl0ZXMyNTVUb051bWJlckxFKGhleC5zbGljZSgzMiwgNjQpKTtcbiAgICBjb25zdCBSMiA9IGNhbGNFbGxpZ2F0b3JSaXN0cmV0dG9NYXAocjIpO1xuICAgIHJldHVybiBuZXcgUmlzdFBvaW50KFIxLmFkZChSMikpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIHJpc3RyZXR0by1lbmNvZGVkIHN0cmluZyB0byByaXN0cmV0dG8gcG9pbnQuXG4gICAqIGh0dHBzOi8vcmlzdHJldHRvLmdyb3VwL2Zvcm11bGFzL2RlY29kaW5nLmh0bWxcbiAgICogQHBhcmFtIGhleCBSaXN0cmV0dG8tZW5jb2RlZCAzMiBieXRlcy4gTm90IGV2ZXJ5IDMyLWJ5dGUgc3RyaW5nIGlzIHZhbGlkIHJpc3RyZXR0byBlbmNvZGluZ1xuICAgKi9cbiAgc3RhdGljIGZyb21IZXgoaGV4OiBIZXgpOiBSaXN0UG9pbnQge1xuICAgIGhleCA9IGVuc3VyZUJ5dGVzKCdyaXN0cmV0dG9IZXgnLCBoZXgsIDMyKTtcbiAgICBjb25zdCB7IGEsIGQgfSA9IGVkMjU1MTkuQ1VSVkU7XG4gICAgY29uc3QgUCA9IGVkMjU1MTkuQ1VSVkUuRnAuT1JERVI7XG4gICAgY29uc3QgbW9kID0gZWQyNTUxOS5DVVJWRS5GcC5jcmVhdGU7XG4gICAgY29uc3QgZW1zZyA9ICdSaXN0cmV0dG9Qb2ludC5mcm9tSGV4OiB0aGUgaGV4IGlzIG5vdCB2YWxpZCBlbmNvZGluZyBvZiBSaXN0cmV0dG9Qb2ludCc7XG4gICAgY29uc3QgcyA9IGJ5dGVzMjU1VG9OdW1iZXJMRShoZXgpO1xuICAgIC8vIDEuIENoZWNrIHRoYXQgc19ieXRlcyBpcyB0aGUgY2Fub25pY2FsIGVuY29kaW5nIG9mIGEgZmllbGQgZWxlbWVudCwgb3IgZWxzZSBhYm9ydC5cbiAgICAvLyAzLiBDaGVjayB0aGF0IHMgaXMgbm9uLW5lZ2F0aXZlLCBvciBlbHNlIGFib3J0XG4gICAgaWYgKCFlcXVhbEJ5dGVzKG51bWJlclRvQnl0ZXNMRShzLCAzMiksIGhleCkgfHwgaXNOZWdhdGl2ZUxFKHMsIFApKSB0aHJvdyBuZXcgRXJyb3IoZW1zZyk7XG4gICAgY29uc3QgczIgPSBtb2QocyAqIHMpO1xuICAgIGNvbnN0IHUxID0gbW9kKF8xbiArIGEgKiBzMik7IC8vIDQgKGEgaXMgLTEpXG4gICAgY29uc3QgdTIgPSBtb2QoXzFuIC0gYSAqIHMyKTsgLy8gNVxuICAgIGNvbnN0IHUxXzIgPSBtb2QodTEgKiB1MSk7XG4gICAgY29uc3QgdTJfMiA9IG1vZCh1MiAqIHUyKTtcbiAgICBjb25zdCB2ID0gbW9kKGEgKiBkICogdTFfMiAtIHUyXzIpOyAvLyA2XG4gICAgY29uc3QgeyBpc1ZhbGlkLCB2YWx1ZTogSSB9ID0gaW52ZXJ0U3FydChtb2QodiAqIHUyXzIpKTsgLy8gN1xuICAgIGNvbnN0IER4ID0gbW9kKEkgKiB1Mik7IC8vIDhcbiAgICBjb25zdCBEeSA9IG1vZChJICogRHggKiB2KTsgLy8gOVxuICAgIGxldCB4ID0gbW9kKChzICsgcykgKiBEeCk7IC8vIDEwXG4gICAgaWYgKGlzTmVnYXRpdmVMRSh4LCBQKSkgeCA9IG1vZCgteCk7IC8vIDEwXG4gICAgY29uc3QgeSA9IG1vZCh1MSAqIER5KTsgLy8gMTFcbiAgICBjb25zdCB0ID0gbW9kKHggKiB5KTsgLy8gMTJcbiAgICBpZiAoIWlzVmFsaWQgfHwgaXNOZWdhdGl2ZUxFKHQsIFApIHx8IHkgPT09IF8wbikgdGhyb3cgbmV3IEVycm9yKGVtc2cpO1xuICAgIHJldHVybiBuZXcgUmlzdFBvaW50KG5ldyBlZDI1NTE5LkV4dGVuZGVkUG9pbnQoeCwgeSwgXzFuLCB0KSk7XG4gIH1cblxuICAvKipcbiAgICogRW5jb2RlcyByaXN0cmV0dG8gcG9pbnQgdG8gVWludDhBcnJheS5cbiAgICogaHR0cHM6Ly9yaXN0cmV0dG8uZ3JvdXAvZm9ybXVsYXMvZW5jb2RpbmcuaHRtbFxuICAgKi9cbiAgdG9SYXdCeXRlcygpOiBVaW50OEFycmF5IHtcbiAgICBsZXQgeyBleDogeCwgZXk6IHksIGV6OiB6LCBldDogdCB9ID0gdGhpcy5lcDtcbiAgICBjb25zdCBQID0gZWQyNTUxOS5DVVJWRS5GcC5PUkRFUjtcbiAgICBjb25zdCBtb2QgPSBlZDI1NTE5LkNVUlZFLkZwLmNyZWF0ZTtcbiAgICBjb25zdCB1MSA9IG1vZChtb2QoeiArIHkpICogbW9kKHogLSB5KSk7IC8vIDFcbiAgICBjb25zdCB1MiA9IG1vZCh4ICogeSk7IC8vIDJcbiAgICAvLyBTcXVhcmUgcm9vdCBhbHdheXMgZXhpc3RzXG4gICAgY29uc3QgdTJzcSA9IG1vZCh1MiAqIHUyKTtcbiAgICBjb25zdCB7IHZhbHVlOiBpbnZzcXJ0IH0gPSBpbnZlcnRTcXJ0KG1vZCh1MSAqIHUyc3EpKTsgLy8gM1xuICAgIGNvbnN0IEQxID0gbW9kKGludnNxcnQgKiB1MSk7IC8vIDRcbiAgICBjb25zdCBEMiA9IG1vZChpbnZzcXJ0ICogdTIpOyAvLyA1XG4gICAgY29uc3QgekludiA9IG1vZChEMSAqIEQyICogdCk7IC8vIDZcbiAgICBsZXQgRDogYmlnaW50OyAvLyA3XG4gICAgaWYgKGlzTmVnYXRpdmVMRSh0ICogekludiwgUCkpIHtcbiAgICAgIGxldCBfeCA9IG1vZCh5ICogU1FSVF9NMSk7XG4gICAgICBsZXQgX3kgPSBtb2QoeCAqIFNRUlRfTTEpO1xuICAgICAgeCA9IF94O1xuICAgICAgeSA9IF95O1xuICAgICAgRCA9IG1vZChEMSAqIElOVlNRUlRfQV9NSU5VU19EKTtcbiAgICB9IGVsc2Uge1xuICAgICAgRCA9IEQyOyAvLyA4XG4gICAgfVxuICAgIGlmIChpc05lZ2F0aXZlTEUoeCAqIHpJbnYsIFApKSB5ID0gbW9kKC15KTsgLy8gOVxuICAgIGxldCBzID0gbW9kKCh6IC0geSkgKiBEKTsgLy8gMTAgKGNoZWNrIGZvb3RlcidzIG5vdGUsIG5vIHNxcnQoLWEpKVxuICAgIGlmIChpc05lZ2F0aXZlTEUocywgUCkpIHMgPSBtb2QoLXMpO1xuICAgIHJldHVybiBudW1iZXJUb0J5dGVzTEUocywgMzIpOyAvLyAxMVxuICB9XG5cbiAgdG9IZXgoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYnl0ZXNUb0hleCh0aGlzLnRvUmF3Qnl0ZXMoKSk7XG4gIH1cblxuICB0b1N0cmluZygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnRvSGV4KCk7XG4gIH1cblxuICAvLyBDb21wYXJlIG9uZSBwb2ludCB0byBhbm90aGVyLlxuICBlcXVhbHMob3RoZXI6IFJpc3RQb2ludCk6IGJvb2xlYW4ge1xuICAgIGFzc2VydFJzdFBvaW50KG90aGVyKTtcbiAgICBjb25zdCB7IGV4OiBYMSwgZXk6IFkxIH0gPSB0aGlzLmVwO1xuICAgIGNvbnN0IHsgZXg6IFgyLCBleTogWTIgfSA9IG90aGVyLmVwO1xuICAgIGNvbnN0IG1vZCA9IGVkMjU1MTkuQ1VSVkUuRnAuY3JlYXRlO1xuICAgIC8vICh4MSAqIHkyID09IHkxICogeDIpIHwgKHkxICogeTIgPT0geDEgKiB4MilcbiAgICBjb25zdCBvbmUgPSBtb2QoWDEgKiBZMikgPT09IG1vZChZMSAqIFgyKTtcbiAgICBjb25zdCB0d28gPSBtb2QoWTEgKiBZMikgPT09IG1vZChYMSAqIFgyKTtcbiAgICByZXR1cm4gb25lIHx8IHR3bztcbiAgfVxuXG4gIGFkZChvdGhlcjogUmlzdFBvaW50KTogUmlzdFBvaW50IHtcbiAgICBhc3NlcnRSc3RQb2ludChvdGhlcik7XG4gICAgcmV0dXJuIG5ldyBSaXN0UG9pbnQodGhpcy5lcC5hZGQob3RoZXIuZXApKTtcbiAgfVxuXG4gIHN1YnRyYWN0KG90aGVyOiBSaXN0UG9pbnQpOiBSaXN0UG9pbnQge1xuICAgIGFzc2VydFJzdFBvaW50KG90aGVyKTtcbiAgICByZXR1cm4gbmV3IFJpc3RQb2ludCh0aGlzLmVwLnN1YnRyYWN0KG90aGVyLmVwKSk7XG4gIH1cblxuICBtdWx0aXBseShzY2FsYXI6IGJpZ2ludCk6IFJpc3RQb2ludCB7XG4gICAgcmV0dXJuIG5ldyBSaXN0UG9pbnQodGhpcy5lcC5tdWx0aXBseShzY2FsYXIpKTtcbiAgfVxuXG4gIG11bHRpcGx5VW5zYWZlKHNjYWxhcjogYmlnaW50KTogUmlzdFBvaW50IHtcbiAgICByZXR1cm4gbmV3IFJpc3RQb2ludCh0aGlzLmVwLm11bHRpcGx5VW5zYWZlKHNjYWxhcikpO1xuICB9XG59XG5leHBvcnQgY29uc3QgUmlzdHJldHRvUG9pbnQgPSAvKiBAX19QVVJFX18gKi8gKCgpID0+IHtcbiAgaWYgKCFSaXN0UG9pbnQuQkFTRSkgUmlzdFBvaW50LkJBU0UgPSBuZXcgUmlzdFBvaW50KGVkMjU1MTkuRXh0ZW5kZWRQb2ludC5CQVNFKTtcbiAgaWYgKCFSaXN0UG9pbnQuWkVSTykgUmlzdFBvaW50LlpFUk8gPSBuZXcgUmlzdFBvaW50KGVkMjU1MTkuRXh0ZW5kZWRQb2ludC5aRVJPKTtcbiAgcmV0dXJuIFJpc3RQb2ludDtcbn0pKCk7XG5cbi8vIEhhc2hpbmcgdG8gcmlzdHJldHRvMjU1LiBodHRwczovL3d3dy5yZmMtZWRpdG9yLm9yZy9yZmMvcmZjOTM4MCNhcHBlbmRpeC1CXG5leHBvcnQgY29uc3QgaGFzaFRvUmlzdHJldHRvMjU1ID0gKG1zZzogVWludDhBcnJheSwgb3B0aW9uczogaHRmQmFzaWNPcHRzKSA9PiB7XG4gIGNvbnN0IGQgPSBvcHRpb25zLkRTVDtcbiAgY29uc3QgRFNUID0gdHlwZW9mIGQgPT09ICdzdHJpbmcnID8gdXRmOFRvQnl0ZXMoZCkgOiBkO1xuICBjb25zdCB1bmlmb3JtX2J5dGVzID0gZXhwYW5kX21lc3NhZ2VfeG1kKG1zZywgRFNULCA2NCwgc2hhNTEyKTtcbiAgY29uc3QgUCA9IFJpc3RQb2ludC5oYXNoVG9DdXJ2ZSh1bmlmb3JtX2J5dGVzKTtcbiAgcmV0dXJuIFA7XG59O1xuZXhwb3J0IGNvbnN0IGhhc2hfdG9fcmlzdHJldHRvMjU1ID0gaGFzaFRvUmlzdHJldHRvMjU1OyAvLyBsZWdhY3lcbiIsICJpbXBvcnQge1xuICBFZGRzYUludGVyZmFjZSxcbiAgS2V5cGFpcixcbiAgUGRhLFxuICBwdWJsaWNLZXksXG4gIFB1YmxpY0tleSxcbiAgcHVibGljS2V5Qnl0ZXMsXG4gIFB1YmxpY0tleUlucHV0LFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWknO1xuaW1wb3J0IHtcbiAgZnJvbVdlYjNKc0tleXBhaXIsXG4gIGZyb21XZWIzSnNQdWJsaWNLZXksXG4gIHRvV2ViM0pzUHVibGljS2V5LFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktd2ViM2pzLWFkYXB0ZXJzJztcbmltcG9ydCB7IGVkMjU1MTkgfSBmcm9tICdAbm9ibGUvY3VydmVzL2VkMjU1MTknO1xuaW1wb3J0IHtcbiAgS2V5cGFpciBhcyBXZWIzSnNLZXlwYWlyLFxuICBQdWJsaWNLZXkgYXMgV2ViM0pzUHVibGljS2V5LFxufSBmcm9tICdAc29sYW5hL3dlYjMuanMnO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlV2ViM0pzRWRkc2EoKTogRWRkc2FJbnRlcmZhY2Uge1xuICBjb25zdCBnZW5lcmF0ZUtleXBhaXIgPSAoKTogS2V5cGFpciA9PlxuICAgIGZyb21XZWIzSnNLZXlwYWlyKFdlYjNKc0tleXBhaXIuZ2VuZXJhdGUoKSk7XG5cbiAgY29uc3QgY3JlYXRlS2V5cGFpckZyb21TZWNyZXRLZXkgPSAoc2VjcmV0S2V5OiBVaW50OEFycmF5KTogS2V5cGFpciA9PlxuICAgIGZyb21XZWIzSnNLZXlwYWlyKFdlYjNKc0tleXBhaXIuZnJvbVNlY3JldEtleShzZWNyZXRLZXkpKTtcblxuICBjb25zdCBjcmVhdGVLZXlwYWlyRnJvbVNlZWQgPSAoc2VlZDogVWludDhBcnJheSk6IEtleXBhaXIgPT5cbiAgICBmcm9tV2ViM0pzS2V5cGFpcihXZWIzSnNLZXlwYWlyLmZyb21TZWVkKHNlZWQpKTtcblxuICBjb25zdCBpc09uQ3VydmUgPSAoaW5wdXQ6IFB1YmxpY0tleUlucHV0KTogYm9vbGVhbiA9PlxuICAgIFdlYjNKc1B1YmxpY0tleS5pc09uQ3VydmUodG9XZWIzSnNQdWJsaWNLZXkocHVibGljS2V5KGlucHV0KSkpO1xuXG4gIGNvbnN0IGZpbmRQZGEgPSAocHJvZ3JhbUlkOiBQdWJsaWNLZXlJbnB1dCwgc2VlZHM6IFVpbnQ4QXJyYXlbXSk6IFBkYSA9PiB7XG4gICAgY29uc3QgW2tleSwgYnVtcF0gPSBXZWIzSnNQdWJsaWNLZXkuZmluZFByb2dyYW1BZGRyZXNzU3luYyhcbiAgICAgIHNlZWRzLFxuICAgICAgdG9XZWIzSnNQdWJsaWNLZXkocHVibGljS2V5KHByb2dyYW1JZCkpXG4gICAgKTtcbiAgICByZXR1cm4gW2Zyb21XZWIzSnNQdWJsaWNLZXkoa2V5KSwgYnVtcF0gYXMgUGRhO1xuICB9O1xuXG4gIGNvbnN0IHNpZ24gPSAobWVzc2FnZTogVWludDhBcnJheSwga2V5cGFpcjogS2V5cGFpcik6IFVpbnQ4QXJyYXkgPT5cbiAgICBlZDI1NTE5LnNpZ24obWVzc2FnZSwga2V5cGFpci5zZWNyZXRLZXkuc2xpY2UoMCwgMzIpKTtcblxuICBjb25zdCB2ZXJpZnkgPSAoXG4gICAgbWVzc2FnZTogVWludDhBcnJheSxcbiAgICBzaWduYXR1cmU6IFVpbnQ4QXJyYXksXG4gICAgcHVibGljS2V5OiBQdWJsaWNLZXlcbiAgKTogYm9vbGVhbiA9PiBlZDI1NTE5LnZlcmlmeShzaWduYXR1cmUsIG1lc3NhZ2UsIHB1YmxpY0tleUJ5dGVzKHB1YmxpY0tleSkpO1xuXG4gIHJldHVybiB7XG4gICAgZ2VuZXJhdGVLZXlwYWlyLFxuICAgIGNyZWF0ZUtleXBhaXJGcm9tU2VjcmV0S2V5LFxuICAgIGNyZWF0ZUtleXBhaXJGcm9tU2VlZCxcbiAgICBpc09uQ3VydmUsXG4gICAgZmluZFBkYSxcbiAgICBzaWduLFxuICAgIHZlcmlmeSxcbiAgfTtcbn1cbiIsICJpbXBvcnQgeyBVbWlQbHVnaW4gfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWknO1xuaW1wb3J0IHsgY3JlYXRlV2ViM0pzRWRkc2EgfSBmcm9tICcuL2NyZWF0ZVdlYjNKc0VkZHNhJztcblxuZXhwb3J0IGNvbnN0IHdlYjNKc0VkZHNhID0gKCk6IFVtaVBsdWdpbiA9PiAoe1xuICBpbnN0YWxsKHVtaSkge1xuICAgIHVtaS5lZGRzYSA9IGNyZWF0ZVdlYjNKc0VkZHNhKCk7XG4gIH0sXG59KTtcbiIsICJpbXBvcnQge1xuICBIdHRwSW50ZXJmYWNlLFxuICBIdHRwUmVxdWVzdCxcbiAgSHR0cFJlc3BvbnNlLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWknO1xuaW1wb3J0IGZldGNoLCB7IEJvZHlJbml0LCBSZXF1ZXN0SW5pdCB9IGZyb20gJ25vZGUtZmV0Y2gnO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRmV0Y2hIdHRwKCk6IEh0dHBJbnRlcmZhY2Uge1xuICByZXR1cm4ge1xuICAgIHNlbmQ6IGFzeW5jIDxSZXNwb25zZURhdGEsIFJlcXVlc3REYXRhID0gYW55PihcbiAgICAgIHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PFJlcXVlc3REYXRhPlxuICAgICk6IFByb21pc2U8SHR0cFJlc3BvbnNlPFJlc3BvbnNlRGF0YT4+ID0+IHtcbiAgICAgIGNvbnN0IGhlYWRlcnMgPSByZXF1ZXN0LmhlYWRlcnNcbiAgICAgICAgPyBPYmplY3QuZW50cmllcyhyZXF1ZXN0LmhlYWRlcnMpLnJlZHVjZShcbiAgICAgICAgICAgIChhY2MsIFtuYW1lLCBoZWFkZXJzXSkgPT4gKHtcbiAgICAgICAgICAgICAgLi4uYWNjLFxuICAgICAgICAgICAgICBbbmFtZS50b0xvd2VyQ2FzZSgpXTogKEFycmF5LmlzQXJyYXkoaGVhZGVycylcbiAgICAgICAgICAgICAgICA/IGhlYWRlcnMuam9pbignLCAnKVxuICAgICAgICAgICAgICAgIDogaGVhZGVyc1xuICAgICAgICAgICAgICApLnRvTG93ZXJDYXNlKCksXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHt9IGFzIFJlY29yZDxzdHJpbmcsIHN0cmluZz5cbiAgICAgICAgICApXG4gICAgICAgIDoge307XG5cbiAgICAgIGNvbnN0IGlzSnNvblJlcXVlc3QgPVxuICAgICAgICBoZWFkZXJzWydjb250ZW50LXR5cGUnXT8uaW5jbHVkZXMoJ2FwcGxpY2F0aW9uL2pzb24nKSA/PyBmYWxzZTtcblxuICAgICAgbGV0IGJvZHk6IEJvZHlJbml0IHwgdW5kZWZpbmVkO1xuICAgICAgaWYgKGlzSnNvblJlcXVlc3QgJiYgcmVxdWVzdC5kYXRhKSB7XG4gICAgICAgIGJvZHkgPSBKU09OLnN0cmluZ2lmeShyZXF1ZXN0LmRhdGEpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYm9keSA9IHJlcXVlc3QuZGF0YSBhcyBCb2R5SW5pdCB8IHVuZGVmaW5lZDtcbiAgICAgIH1cblxuICAgICAgY29uc3QgcmVxdWVzdEluaXQ6IFJlcXVlc3RJbml0ID0ge1xuICAgICAgICBtZXRob2Q6IHJlcXVlc3QubWV0aG9kLFxuICAgICAgICBib2R5LFxuICAgICAgICBoZWFkZXJzLFxuICAgICAgICBmb2xsb3c6IHJlcXVlc3QubWF4UmVkaXJlY3RzLFxuICAgICAgICBzaWduYWw6IHJlcXVlc3Quc2lnbmFsIGFzIGFueSxcbiAgICAgICAgdGltZW91dDogcmVxdWVzdC50aW1lb3V0LFxuICAgICAgfTtcblxuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaChyZXF1ZXN0LnVybCwgcmVxdWVzdEluaXQpO1xuICAgICAgY29uc3QgaXNKc29uUmVzcG9uc2UgPVxuICAgICAgICByZXNwb25zZS5oZWFkZXJzLmdldCgnY29udGVudC10eXBlJyk/LmluY2x1ZGVzKCdhcHBsaWNhdGlvbi9qc29uJykgPz9cbiAgICAgICAgZmFsc2U7XG5cbiAgICAgIGNvbnN0IGJvZHlBc1RleHQgPSBhd2FpdCByZXNwb25zZS50ZXh0KCk7XG4gICAgICBjb25zdCBib2R5QXNKc29uID0gaXNKc29uUmVzcG9uc2UgPyBKU09OLnBhcnNlKGJvZHlBc1RleHQpIDogdW5kZWZpbmVkO1xuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBkYXRhOiBib2R5QXNKc29uID8/IGJvZHlBc1RleHQsXG4gICAgICAgIGJvZHk6IGJvZHlBc1RleHQsXG4gICAgICAgIG9rOiByZXNwb25zZS5vayxcbiAgICAgICAgc3RhdHVzOiByZXNwb25zZS5zdGF0dXMsXG4gICAgICAgIHN0YXR1c1RleHQ6IHJlc3BvbnNlLnN0YXR1c1RleHQsXG4gICAgICAgIGhlYWRlcnM6IE9iamVjdC5mcm9tRW50cmllcyhyZXNwb25zZS5oZWFkZXJzLmVudHJpZXMoKSksXG4gICAgICB9O1xuICAgIH0sXG4gIH07XG59XG4iLCAiaW1wb3J0IHsgVW1pUGx1Z2luIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pJztcbmltcG9ydCB7IGNyZWF0ZUZldGNoSHR0cCB9IGZyb20gJy4vY3JlYXRlRmV0Y2hIdHRwJztcblxuZXhwb3J0IGNvbnN0IGZldGNoSHR0cCA9ICgpOiBVbWlQbHVnaW4gPT4gKHtcbiAgaW5zdGFsbCh1bWkpIHtcbiAgICB1bWkuaHR0cCA9IGNyZWF0ZUZldGNoSHR0cCgpO1xuICB9LFxufSk7XG4iLCAiaW1wb3J0IHtcbiAgQ2x1c3RlcixcbiAgUHJvZ3JhbSxcbiAgUHJvZ3JhbUVycm9yLFxuICBQdWJsaWNLZXksXG4gIFNka0Vycm9yLFxuICBVbmRlcmx5aW5nUHJvZ3JhbUVycm9yLFxuICBpc1B1YmxpY0tleSxcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pJztcblxuZXhwb3J0IGNsYXNzIFByb2dyYW1Ob3RSZWNvZ25pemVkRXJyb3IgZXh0ZW5kcyBTZGtFcnJvciB7XG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZyA9ICdQcm9ncmFtTm90UmVjb2duaXplZEVycm9yJztcblxuICByZWFkb25seSBpZGVudGlmaWVyOiBzdHJpbmcgfCBQdWJsaWNLZXk7XG5cbiAgcmVhZG9ubHkgY2x1c3RlcjogQ2x1c3RlciB8ICcqJztcblxuICBjb25zdHJ1Y3RvcihpZGVudGlmaWVyOiBzdHJpbmcgfCBQdWJsaWNLZXksIGNsdXN0ZXI6IENsdXN0ZXIgfCAnKicpIHtcbiAgICBjb25zdCBpc05hbWUgPSAhaXNQdWJsaWNLZXkoaWRlbnRpZmllcik7XG4gICAgY29uc3QgdG9TdHJpbmcgPSBpc05hbWUgPyBpZGVudGlmaWVyIDogaWRlbnRpZmllcjtcbiAgICBjb25zdCBjbHVzdGVyU3RyaW5nID0gY2x1c3RlciA9PT0gJyonID8gJ2FueScgOiBgdGhlIFske2NsdXN0ZXJ9XWA7XG4gICAgY29uc3QgbWVzc2FnZSA9XG4gICAgICBgVGhlIHByb3ZpZGVkIHByb2dyYW0gJHtpc05hbWUgPyAnbmFtZScgOiAnYWRkcmVzcyd9IFske3RvU3RyaW5nfV0gYCArXG4gICAgICBgaXMgbm90IHJlY29nbml6ZWQgaW4gJHtjbHVzdGVyU3RyaW5nfSBjbHVzdGVyLiBgICtcbiAgICAgICdEaWQgeW91IGZvcmdldCB0byByZWdpc3RlciB0aGlzIHByb2dyYW0/ICcgK1xuICAgICAgJ0lmIHNvLCB5b3UgbWF5IHVzZSBcImNvbnRleHQucHJvZ3JhbXMuYWRkKG15UHJvZ3JhbSlcIiB0byBmaXggdGhpcy4nO1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICAgIHRoaXMuaWRlbnRpZmllciA9IGlkZW50aWZpZXI7XG4gICAgdGhpcy5jbHVzdGVyID0gY2x1c3RlcjtcbiAgfVxufVxuXG4vKiogQGNhdGVnb3J5IEVycm9ycyAqL1xuZXhwb3J0IGNsYXNzIFByb2dyYW1FcnJvck5vdFJlY29nbml6ZWRFcnJvciBleHRlbmRzIFByb2dyYW1FcnJvciB7XG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZyA9ICdQcm9ncmFtRXJyb3JOb3RSZWNvZ25pemVkRXJyb3InO1xuXG4gIGNvbnN0cnVjdG9yKHByb2dyYW06IFByb2dyYW0sIGNhdXNlOiBVbmRlcmx5aW5nUHJvZ3JhbUVycm9yKSB7XG4gICAgY29uc3Qgb2ZDb2RlID0gY2F1c2UuY29kZSA/IGAgb2YgY29kZSBbJHtjYXVzZS5jb2RlfV1gIDogJyc7XG4gICAgY29uc3QgbWVzc2FnZSA9XG4gICAgICBgVGhlIHByb2dyYW0gWyR7cHJvZ3JhbS5uYW1lfV0gYCArXG4gICAgICBgYXQgYWRkcmVzcyBbJHtwcm9ncmFtLnB1YmxpY0tleX1dIGAgK1xuICAgICAgYHJhaXNlZCBhbiBlcnJvciR7b2ZDb2RlfSBgICtcbiAgICAgIGB0aGF0IGlzIG5vdCByZWNvZ25pemVkIGJ5IHRoZSBwcm9ncmFtcyByZWdpc3RlcmVkIG9uIHRoZSBTREsuIGAgK1xuICAgICAgYFBsZWFzZSBjaGVjayB0aGUgdW5kZXJseWluZyBwcm9ncmFtIGVycm9yIGJlbG93IGZvciBtb3JlIGRldGFpbHMuYDtcbiAgICBzdXBlcihtZXNzYWdlLCBwcm9ncmFtLCBjYXVzZSk7XG4gIH1cbn1cbiIsICJpbXBvcnQge1xuICBDbHVzdGVyLFxuICBDbHVzdGVyRmlsdGVyLFxuICBDb250ZXh0LFxuICBFcnJvcldpdGhMb2dzLFxuICBpc1B1YmxpY0tleSxcbiAgUHJvZ3JhbSxcbiAgUHJvZ3JhbUVycm9yLFxuICBQcm9ncmFtUmVwb3NpdG9yeUludGVyZmFjZSxcbiAgcHVibGljS2V5LFxuICBQdWJsaWNLZXksXG4gIFB1YmxpY0tleUlucHV0LFxuICBUcmFuc2FjdGlvbixcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pJztcbmltcG9ydCB7XG4gIFByb2dyYW1FcnJvck5vdFJlY29nbml6ZWRFcnJvcixcbiAgUHJvZ3JhbU5vdFJlY29nbml6ZWRFcnJvcixcbn0gZnJvbSAnLi9lcnJvcnMnO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRGVmYXVsdFByb2dyYW1SZXBvc2l0b3J5KFxuICBjb250ZXh0OiBQaWNrPENvbnRleHQsICdycGMnPixcbiAgaW5pdGlhbFByb2dyYW1zOiBQcm9ncmFtW10gPSBbXSxcbiAgaW5pdGlhbEJpbmRpbmdzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBQdWJsaWNLZXk+ID0ge31cbik6IFByb2dyYW1SZXBvc2l0b3J5SW50ZXJmYWNlIHtcbiAgY29uc3QgcHJvZ3JhbXM6IFByb2dyYW1bXSA9IFsuLi5pbml0aWFsUHJvZ3JhbXNdO1xuICBjb25zdCBiaW5kaW5nczogUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgUHVibGljS2V5PiA9IHsgLi4uaW5pdGlhbEJpbmRpbmdzIH07XG5cbiAgY29uc3QgaGFzID0gKFxuICAgIGlkZW50aWZpZXI6IHN0cmluZyB8IFB1YmxpY0tleSxcbiAgICBjbHVzdGVyRmlsdGVyOiBDbHVzdGVyRmlsdGVyID0gJ2N1cnJlbnQnXG4gICk6IGJvb2xlYW4gPT4ge1xuICAgIGNvbnN0IHByb2dyYW1zID0gYWxsKGNsdXN0ZXJGaWx0ZXIpO1xuICAgIGNvbnN0IHJlc29sdmVkSWRlbnRpZmllciA9IHJlc29sdmVCaW5kaW5nKGlkZW50aWZpZXIpO1xuICAgIHJldHVybiBpc1B1YmxpY0tleShyZXNvbHZlZElkZW50aWZpZXIpXG4gICAgICA/IHByb2dyYW1zLnNvbWUoKHApID0+IHAucHVibGljS2V5ID09PSByZXNvbHZlZElkZW50aWZpZXIpXG4gICAgICA6IHByb2dyYW1zLnNvbWUoKHApID0+IHAubmFtZSA9PT0gcmVzb2x2ZWRJZGVudGlmaWVyKTtcbiAgfTtcblxuICBjb25zdCBnZXQgPSA8VCBleHRlbmRzIFByb2dyYW0gPSBQcm9ncmFtPihcbiAgICBpZGVudGlmaWVyOiBzdHJpbmcgfCBQdWJsaWNLZXksXG4gICAgY2x1c3RlckZpbHRlcjogQ2x1c3RlckZpbHRlciA9ICdjdXJyZW50J1xuICApOiBUID0+IHtcbiAgICBjb25zdCBjbHVzdGVyID0gcmVzb2x2ZUNsdXN0ZXJGaWx0ZXIoY2x1c3RlckZpbHRlcik7XG4gICAgY29uc3QgcHJvZ3JhbXMgPSBhbGwoY2x1c3RlckZpbHRlcik7XG4gICAgY29uc3QgcmVzb2x2ZWRJZGVudGlmaWVyID0gcmVzb2x2ZUJpbmRpbmcoaWRlbnRpZmllcik7XG4gICAgY29uc3QgcHJvZ3JhbSA9IGlzUHVibGljS2V5KHJlc29sdmVkSWRlbnRpZmllcilcbiAgICAgID8gcHJvZ3JhbXMuZmluZCgocCkgPT4gcC5wdWJsaWNLZXkgPT09IHJlc29sdmVkSWRlbnRpZmllcilcbiAgICAgIDogcHJvZ3JhbXMuZmluZCgocCkgPT4gcC5uYW1lID09PSByZXNvbHZlZElkZW50aWZpZXIpO1xuXG4gICAgaWYgKCFwcm9ncmFtKSB7XG4gICAgICB0aHJvdyBuZXcgUHJvZ3JhbU5vdFJlY29nbml6ZWRFcnJvcihyZXNvbHZlZElkZW50aWZpZXIsIGNsdXN0ZXIpO1xuICAgIH1cblxuICAgIHJldHVybiBwcm9ncmFtIGFzIFQ7XG4gIH07XG5cbiAgY29uc3QgZ2V0UHVibGljS2V5ID0gKFxuICAgIGlkZW50aWZpZXI6IHN0cmluZyB8IFB1YmxpY0tleSxcbiAgICBmYWxsYmFjaz86IFB1YmxpY0tleUlucHV0LFxuICAgIGNsdXN0ZXJGaWx0ZXI/OiBDbHVzdGVyRmlsdGVyXG4gICk6IFB1YmxpY0tleSA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBnZXQoaWRlbnRpZmllciwgY2x1c3RlckZpbHRlcikucHVibGljS2V5O1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBpZiAoZmFsbGJhY2sgPT09IHVuZGVmaW5lZCkgdGhyb3cgZXJyb3I7XG4gICAgICByZXR1cm4gcHVibGljS2V5KGZhbGxiYWNrKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgYWxsID0gKGNsdXN0ZXJGaWx0ZXI6IENsdXN0ZXJGaWx0ZXIgPSAnY3VycmVudCcpOiBQcm9ncmFtW10gPT4ge1xuICAgIGNvbnN0IGNsdXN0ZXIgPSByZXNvbHZlQ2x1c3RlckZpbHRlcihjbHVzdGVyRmlsdGVyKTtcbiAgICByZXR1cm4gY2x1c3RlciA9PT0gJyonXG4gICAgICA/IHByb2dyYW1zXG4gICAgICA6IHByb2dyYW1zLmZpbHRlcigocHJvZ3JhbSkgPT4gcHJvZ3JhbS5pc09uQ2x1c3RlcihjbHVzdGVyKSk7XG4gIH07XG5cbiAgY29uc3QgYWRkID0gKHByb2dyYW06IFByb2dyYW0sIG92ZXJyaWRlcyA9IHRydWUpOiB2b2lkID0+IHtcbiAgICBpZiAoIW92ZXJyaWRlcyAmJiBoYXMocHJvZ3JhbS5wdWJsaWNLZXksICcqJykpIHJldHVybjtcbiAgICBwcm9ncmFtcy51bnNoaWZ0KHByb2dyYW0pO1xuICB9O1xuXG4gIGNvbnN0IGJpbmQgPSAoYWJzdHJhY3Q6IHN0cmluZywgY29uY3JldGU6IHN0cmluZyB8IFB1YmxpY0tleSk6IHZvaWQgPT4ge1xuICAgIGJpbmRpbmdzW2Fic3RyYWN0XSA9IGNvbmNyZXRlO1xuICAgIHJlc29sdmVCaW5kaW5nKGFic3RyYWN0KTsgLy8gRW5zdXJlcyB0aGUgYmluZGluZyBpcyB2YWxpZC5cbiAgfTtcblxuICBjb25zdCB1bmJpbmQgPSAoYWJzdHJhY3Q6IHN0cmluZyk6IHZvaWQgPT4ge1xuICAgIGRlbGV0ZSBiaW5kaW5nc1thYnN0cmFjdF07XG4gIH07XG5cbiAgY29uc3QgY2xvbmUgPSAoKTogUHJvZ3JhbVJlcG9zaXRvcnlJbnRlcmZhY2UgPT5cbiAgICBjcmVhdGVEZWZhdWx0UHJvZ3JhbVJlcG9zaXRvcnkoY29udGV4dCwgcHJvZ3JhbXMsIGJpbmRpbmdzKTtcblxuICBjb25zdCByZXNvbHZlRXJyb3IgPSAoXG4gICAgZXJyb3I6IEVycm9yV2l0aExvZ3MsXG4gICAgdHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uXG4gICk6IFByb2dyYW1FcnJvciB8IG51bGwgPT4ge1xuICAgIC8vIEVuc3VyZSB0aGUgZXJyb3IgYXMgbG9ncy5cbiAgICBpZiAoIUFycmF5LmlzQXJyYXkoZXJyb3IubG9ncykgfHwgZXJyb3IubG9ncy5sZW5ndGggPT09IDApIHJldHVybiBudWxsO1xuICAgIGNvbnN0IGxvZ3MgPSBlcnJvci5sb2dzLmpvaW4oJ1xcbicpO1xuXG4gICAgLy8gUGFyc2UgdGhlIGluc3RydWN0aW9uIG51bWJlci5cbiAgICBjb25zdCBpbnN0cnVjdGlvblJlZ2V4ID0gL0Vycm9yIHByb2Nlc3NpbmcgSW5zdHJ1Y3Rpb24gKFxcZCspOi87XG4gICAgY29uc3QgaW5zdHJ1Y3Rpb24gPSBlcnJvci5tZXNzYWdlLm1hdGNoKGluc3RydWN0aW9uUmVnZXgpPy5bMV0gPz8gbnVsbDtcblxuICAgIC8vIFBhcnNlIHRoZSBlcnJvciBjb2RlLlxuICAgIGNvbnN0IGVycm9yQ29kZVJlZ2V4ID0gL0N1c3RvbSBwcm9ncmFtIGVycm9yOiAoMHhbYS1mMC05XSspL2k7XG4gICAgY29uc3QgZXJyb3JDb2RlU3RyaW5nID0gbG9ncy5tYXRjaChlcnJvckNvZGVSZWdleCk/LlsxXSA/PyBudWxsO1xuICAgIGNvbnN0IGVycm9yQ29kZSA9IGVycm9yQ29kZVN0cmluZyA/IHBhcnNlSW50KGVycm9yQ29kZVN0cmluZywgMTYpIDogbnVsbDtcblxuICAgIC8vIEVuc3VyZSB3ZSBjb3VsZCBmaW5kIGFuIGluc3RydWN0aW9uIG51bWJlciBhbmQgYW4gZXJyb3IgY29kZS5cbiAgICBpZiAoaW5zdHJ1Y3Rpb24gPT09IG51bGwgfHwgZXJyb3JDb2RlID09PSBudWxsKSByZXR1cm4gbnVsbDtcblxuICAgIC8vIEdldCB0aGUgcHJvZ3JhbSBJRCBmcm9tIHRoZSBpbnN0cnVjdGlvbiBpbiB0aGUgdHJhbnNhY3Rpb24uXG4gICAgY29uc3QgaW5zdHJ1Y3Rpb25OdW1iZXI6IG51bWJlciA9IHBhcnNlSW50KGluc3RydWN0aW9uLCAxMCk7XG4gICAgY29uc3QgcHJvZ3JhbUluZGV4OiBudW1iZXIgfCBudWxsID1cbiAgICAgIHRyYW5zYWN0aW9uLm1lc3NhZ2UuaW5zdHJ1Y3Rpb25zPy5baW5zdHJ1Y3Rpb25OdW1iZXJdPy5wcm9ncmFtSW5kZXggPz9cbiAgICAgIG51bGw7XG4gICAgY29uc3QgcHJvZ3JhbUlkID0gcHJvZ3JhbUluZGV4XG4gICAgICA/IHRyYW5zYWN0aW9uLm1lc3NhZ2UuYWNjb3VudHNbcHJvZ3JhbUluZGV4XVxuICAgICAgOiBudWxsO1xuXG4gICAgLy8gRW5zdXJlIHdlIHdlcmUgYWJsZSB0byBmaW5kIGEgcHJvZ3JhbSBJRCBmb3IgdGhlIGluc3RydWN0aW9uLlxuICAgIGlmICghcHJvZ3JhbUlkKSByZXR1cm4gbnVsbDtcblxuICAgIC8vIEZpbmQgYSByZWdpc3RlcmVkIHByb2dyYW0gaWYgYW55LlxuICAgIGxldCBwcm9ncmFtOiBQcm9ncmFtO1xuICAgIHRyeSB7XG4gICAgICBwcm9ncmFtID0gZ2V0KHByb2dyYW1JZCk7XG4gICAgfSBjYXRjaCAoX3Byb2dyYW1Ob3RGb3VuZEVycm9yKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICAvLyBGaW5hbGx5LCByZXNvbHZlIHRoZSBlcnJvci5cbiAgICBjb25zdCByZXNvbHZlZEVycm9yID0gcHJvZ3JhbS5nZXRFcnJvckZyb21Db2RlKGVycm9yQ29kZSwgZXJyb3IpO1xuICAgIHJldHVybiByZXNvbHZlZEVycm9yID8/IG5ldyBQcm9ncmFtRXJyb3JOb3RSZWNvZ25pemVkRXJyb3IocHJvZ3JhbSwgZXJyb3IpO1xuICB9O1xuXG4gIGNvbnN0IHJlc29sdmVDbHVzdGVyRmlsdGVyID0gKGNsdXN0ZXJGaWx0ZXI6IENsdXN0ZXJGaWx0ZXIpOiBDbHVzdGVyIHwgJyonID0+XG4gICAgY2x1c3RlckZpbHRlciA9PT0gJ2N1cnJlbnQnID8gY29udGV4dC5ycGMuZ2V0Q2x1c3RlcigpIDogY2x1c3RlckZpbHRlcjtcblxuICBjb25zdCByZXNvbHZlQmluZGluZyA9IChcbiAgICBpZGVudGlmaWVyOiBzdHJpbmcgfCBQdWJsaWNLZXksXG4gICAgc3RhY2s6IHN0cmluZ1tdID0gW11cbiAgKTogc3RyaW5nIHwgUHVibGljS2V5ID0+IHtcbiAgICBpZiAoaXNQdWJsaWNLZXkoaWRlbnRpZmllcikpIHJldHVybiBpZGVudGlmaWVyO1xuICAgIGlmIChiaW5kaW5nc1tpZGVudGlmaWVyXSA9PT0gdW5kZWZpbmVkKSByZXR1cm4gaWRlbnRpZmllcjtcbiAgICBjb25zdCBzdGFja1dpdGhJZGVudGlmaWVyID0gWy4uLnN0YWNrLCBpZGVudGlmaWVyXTtcbiAgICBpZiAoc3RhY2suaW5jbHVkZXMoaWRlbnRpZmllcikpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYENpcmN1bGFyIGJpbmRpbmcgZGV0ZWN0ZWQ6ICR7c3RhY2tXaXRoSWRlbnRpZmllci5qb2luKCcgLT4gJyl9YFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc29sdmVCaW5kaW5nKGJpbmRpbmdzW2lkZW50aWZpZXJdLCBzdGFja1dpdGhJZGVudGlmaWVyKTtcbiAgfTtcblxuICByZXR1cm4ge1xuICAgIGhhcyxcbiAgICBnZXQsXG4gICAgZ2V0UHVibGljS2V5LFxuICAgIGFsbCxcbiAgICBhZGQsXG4gICAgYmluZCxcbiAgICB1bmJpbmQsXG4gICAgY2xvbmUsXG4gICAgcmVzb2x2ZUVycm9yLFxuICB9O1xufVxuIiwgImltcG9ydCB7IFVtaVBsdWdpbiB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaSc7XG5pbXBvcnQgeyBjcmVhdGVEZWZhdWx0UHJvZ3JhbVJlcG9zaXRvcnkgfSBmcm9tICcuL2NyZWF0ZURlZmF1bHRQcm9ncmFtUmVwb3NpdG9yeSc7XG5cbmV4cG9ydCBjb25zdCBkZWZhdWx0UHJvZ3JhbVJlcG9zaXRvcnkgPSAoKTogVW1pUGx1Z2luID0+ICh7XG4gIGluc3RhbGwodW1pKSB7XG4gICAgdW1pLnByb2dyYW1zID0gY3JlYXRlRGVmYXVsdFByb2dyYW1SZXBvc2l0b3J5KHVtaSk7XG4gIH0sXG59KTtcbiIsICJpbXBvcnQge1xuICBBQ0NPVU5UX0hFQURFUl9TSVpFLFxuICBCbG9ja2hhc2hXaXRoRXhwaXJ5QmxvY2tIZWlnaHQsXG4gIENsdXN0ZXIsXG4gIENvbW1pdG1lbnQsXG4gIENvbXBpbGVkSW5zdHJ1Y3Rpb24sXG4gIENvbnRleHQsXG4gIERhdGVUaW1lLFxuICBFcnJvcldpdGhMb2dzLFxuICBNYXliZVJwY0FjY291bnQsXG4gIFByb2dyYW1FcnJvcixcbiAgUHVibGljS2V5LFxuICBScGNBY2NvdW50LFxuICBScGNBY2NvdW50RXhpc3RzT3B0aW9ucyxcbiAgUnBjQWlyZHJvcE9wdGlvbnMsXG4gIFJwY0NhbGxPcHRpb25zLFxuICBScGNDb25maXJtVHJhbnNhY3Rpb25PcHRpb25zLFxuICBScGNDb25maXJtVHJhbnNhY3Rpb25SZXN1bHQsXG4gIFJwY0RhdGFGaWx0ZXIsXG4gIFJwY0dldEFjY291bnRPcHRpb25zLFxuICBScGNHZXRBY2NvdW50c09wdGlvbnMsXG4gIFJwY0dldEJhbGFuY2VPcHRpb25zLFxuICBScGNHZXRCbG9ja1RpbWVPcHRpb25zLFxuICBScGNHZXRMYXRlc3RCbG9ja2hhc2hPcHRpb25zLFxuICBScGNHZXRQcm9ncmFtQWNjb3VudHNPcHRpb25zLFxuICBScGNHZXRSZW50T3B0aW9ucyxcbiAgUnBjR2V0U2lnbmF0dXJlU3RhdHVzZXNPcHRpb25zLFxuICBScGNHZXRTbG90T3B0aW9ucyxcbiAgUnBjR2V0VHJhbnNhY3Rpb25PcHRpb25zLFxuICBScGNJbnRlcmZhY2UsXG4gIFJwY1NlbmRUcmFuc2FjdGlvbk9wdGlvbnMsXG4gIFNvbEFtb3VudCxcbiAgVHJhbnNhY3Rpb24sXG4gIFRyYW5zYWN0aW9uTWV0YUlubmVySW5zdHJ1Y3Rpb24sXG4gIFRyYW5zYWN0aW9uTWV0YVRva2VuQmFsYW5jZSxcbiAgVHJhbnNhY3Rpb25TaWduYXR1cmUsXG4gIFRyYW5zYWN0aW9uU3RhdHVzLFxuICBUcmFuc2FjdGlvbldpdGhNZXRhLFxuICBjcmVhdGVBbW91bnQsXG4gIGRhdGVUaW1lLFxuICBpc1plcm9BbW91bnQsXG4gIGxhbXBvcnRzLFxuICByZXNvbHZlQ2x1c3RlckZyb21FbmRwb2ludCxcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pJztcbmltcG9ydCB7XG4gIGZyb21XZWIzSnNNZXNzYWdlLFxuICBmcm9tV2ViM0pzUHVibGljS2V5LFxuICB0b1dlYjNKc1B1YmxpY0tleSxcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXdlYjNqcy1hZGFwdGVycyc7XG5pbXBvcnQgeyBiYXNlNTggfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc2VyaWFsaXplcnMnO1xuaW1wb3J0IHtcbiAgQWNjb3VudEluZm8gYXMgV2ViM0pzQWNjb3VudEluZm8sXG4gIENvbm5lY3Rpb24gYXMgV2ViM0pzQ29ubmVjdGlvbixcbiAgQ29ubmVjdGlvbkNvbmZpZyBhcyBXZWIzSnNDb25uZWN0aW9uQ29uZmlnLFxuICBHZXRQcm9ncmFtQWNjb3VudHNGaWx0ZXIgYXMgV2ViM0pzR2V0UHJvZ3JhbUFjY291bnRzRmlsdGVyLFxuICBQdWJsaWNLZXkgYXMgV2ViM0pzUHVibGljS2V5LFxuICBUb2tlbkJhbGFuY2UgYXMgV2ViM0pzVG9rZW5CYWxhbmNlLFxuICBUcmFuc2FjdGlvbkNvbmZpcm1hdGlvblN0cmF0ZWd5IGFzIFdlYjNKc1RyYW5zYWN0aW9uQ29uZmlybWF0aW9uU3RyYXRlZ3ksXG59IGZyb20gJ0Bzb2xhbmEvd2ViMy5qcyc7XG5pbXBvcnQgdHlwZSB7IEpTT05SUENDYWxsYmFja1R5cGVQbGFpbiB9IGZyb20gJ2pheXNvbic7XG5pbXBvcnQgdHlwZSBScGNDbGllbnQgZnJvbSAnamF5c29uL2xpYi9jbGllbnQvYnJvd3Nlcic7XG5cbmV4cG9ydCB0eXBlIFdlYjNKc1JwY09wdGlvbnMgPSBDb21taXRtZW50IHwgV2ViM0pzQ29ubmVjdGlvbkNvbmZpZztcblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVdlYjNKc1JwYyhcbiAgY29udGV4dDogUGljazxDb250ZXh0LCAncHJvZ3JhbXMnIHwgJ3RyYW5zYWN0aW9ucyc+LFxuICBlbmRwb2ludDogc3RyaW5nLFxuICBycGNPcHRpb25zPzogV2ViM0pzUnBjT3B0aW9uc1xuKTogUnBjSW50ZXJmYWNlICYgeyBjb25uZWN0aW9uOiBXZWIzSnNDb25uZWN0aW9uIH0ge1xuICBjb25zdCBjbHVzdGVyID0gcmVzb2x2ZUNsdXN0ZXJGcm9tRW5kcG9pbnQoZW5kcG9pbnQpO1xuXG4gIGxldCBjb25uZWN0aW9uOiBXZWIzSnNDb25uZWN0aW9uIHwgbnVsbCA9IG51bGw7XG4gIGNvbnN0IGdldENvbm5lY3Rpb24gPSAoKSA9PiB7XG4gICAgaWYgKCFjb25uZWN0aW9uKSB7XG4gICAgICBjb25uZWN0aW9uID0gbmV3IFdlYjNKc0Nvbm5lY3Rpb24oZW5kcG9pbnQsIHJwY09wdGlvbnMpO1xuICAgIH1cbiAgICByZXR1cm4gY29ubmVjdGlvbjtcbiAgfTtcblxuICBjb25zdCBnZXRBY2NvdW50ID0gYXN5bmMgKFxuICAgIHB1YmxpY0tleTogUHVibGljS2V5LFxuICAgIG9wdGlvbnM6IFJwY0dldEFjY291bnRPcHRpb25zID0ge31cbiAgKTogUHJvbWlzZTxNYXliZVJwY0FjY291bnQ+ID0+IHtcbiAgICBjb25zdCBhY2NvdW50ID0gYXdhaXQgZ2V0Q29ubmVjdGlvbigpLmdldEFjY291bnRJbmZvKFxuICAgICAgdG9XZWIzSnNQdWJsaWNLZXkocHVibGljS2V5KSxcbiAgICAgIG9wdGlvbnNcbiAgICApO1xuICAgIHJldHVybiBwYXJzZU1heWJlQWNjb3VudChhY2NvdW50LCBwdWJsaWNLZXkpO1xuICB9O1xuXG4gIGNvbnN0IGdldEFjY291bnRzID0gYXN5bmMgKFxuICAgIHB1YmxpY0tleXM6IFB1YmxpY0tleVtdLFxuICAgIG9wdGlvbnM6IFJwY0dldEFjY291bnRzT3B0aW9ucyA9IHt9XG4gICk6IFByb21pc2U8TWF5YmVScGNBY2NvdW50W10+ID0+IHtcbiAgICBjb25zdCBhY2NvdW50cyA9IGF3YWl0IGdldENvbm5lY3Rpb24oKS5nZXRNdWx0aXBsZUFjY291bnRzSW5mbyhcbiAgICAgIHB1YmxpY0tleXMubWFwKHRvV2ViM0pzUHVibGljS2V5KSxcbiAgICAgIG9wdGlvbnNcbiAgICApO1xuICAgIHJldHVybiBhY2NvdW50cy5tYXAoKGFjY291bnQsIGluZGV4KSA9PlxuICAgICAgcGFyc2VNYXliZUFjY291bnQoYWNjb3VudCwgcHVibGljS2V5c1tpbmRleF0pXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBnZXRQcm9ncmFtQWNjb3VudHMgPSBhc3luYyAoXG4gICAgcHJvZ3JhbUlkOiBQdWJsaWNLZXksXG4gICAgb3B0aW9uczogUnBjR2V0UHJvZ3JhbUFjY291bnRzT3B0aW9ucyA9IHt9XG4gICk6IFByb21pc2U8UnBjQWNjb3VudFtdPiA9PiB7XG4gICAgY29uc3QgYWNjb3VudHMgPSBhd2FpdCBnZXRDb25uZWN0aW9uKCkuZ2V0UHJvZ3JhbUFjY291bnRzKFxuICAgICAgdG9XZWIzSnNQdWJsaWNLZXkocHJvZ3JhbUlkKSxcbiAgICAgIHtcbiAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgICAgZmlsdGVyczogb3B0aW9ucy5maWx0ZXJzPy5tYXAoKGZpbHRlcikgPT4gcGFyc2VEYXRhRmlsdGVyKGZpbHRlcikpLFxuICAgICAgfVxuICAgICk7XG4gICAgcmV0dXJuIGFjY291bnRzLm1hcCgoeyBwdWJrZXksIGFjY291bnQgfSkgPT5cbiAgICAgIHBhcnNlQWNjb3VudChhY2NvdW50LCBmcm9tV2ViM0pzUHVibGljS2V5KHB1YmtleSkpXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBnZXRCbG9ja1RpbWUgPSBhc3luYyAoXG4gICAgc2xvdDogbnVtYmVyLFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICBfb3B0aW9uczogUnBjR2V0QmxvY2tUaW1lT3B0aW9ucyA9IHt9XG4gICk6IFByb21pc2U8RGF0ZVRpbWUgfCBudWxsPiA9PiB7XG4gICAgY29uc3QgYmxvY2tUaW1lID0gYXdhaXQgZ2V0Q29ubmVjdGlvbigpLmdldEJsb2NrVGltZShzbG90KTtcbiAgICByZXR1cm4gYmxvY2tUaW1lID8gZGF0ZVRpbWUoYmxvY2tUaW1lKSA6IG51bGw7XG4gIH07XG5cbiAgY29uc3QgZ2V0QmFsYW5jZSA9IGFzeW5jIChcbiAgICBwdWJsaWNLZXk6IFB1YmxpY0tleSxcbiAgICBvcHRpb25zOiBScGNHZXRCYWxhbmNlT3B0aW9ucyA9IHt9XG4gICk6IFByb21pc2U8U29sQW1vdW50PiA9PiB7XG4gICAgY29uc3QgYmFsYW5jZUluTGFtcG9ydHMgPSBhd2FpdCBnZXRDb25uZWN0aW9uKCkuZ2V0QmFsYW5jZShcbiAgICAgIHRvV2ViM0pzUHVibGljS2V5KHB1YmxpY0tleSksXG4gICAgICBvcHRpb25zXG4gICAgKTtcbiAgICByZXR1cm4gbGFtcG9ydHMoYmFsYW5jZUluTGFtcG9ydHMpO1xuICB9O1xuXG4gIGNvbnN0IGdldFJlbnQgPSBhc3luYyAoXG4gICAgYnl0ZXM6IG51bWJlcixcbiAgICBvcHRpb25zOiBScGNHZXRSZW50T3B0aW9ucyA9IHt9XG4gICk6IFByb21pc2U8U29sQW1vdW50PiA9PiB7XG4gICAgY29uc3QgcmVudEZvciA9IChieXRlczogbnVtYmVyKSA9PlxuICAgICAgZ2V0Q29ubmVjdGlvbigpLmdldE1pbmltdW1CYWxhbmNlRm9yUmVudEV4ZW1wdGlvbihcbiAgICAgICAgYnl0ZXMsXG4gICAgICAgIG9wdGlvbnMuY29tbWl0bWVudFxuICAgICAgKTtcbiAgICBpZiAob3B0aW9ucy5pbmNsdWRlc0hlYWRlckJ5dGVzID8/IGZhbHNlKSB7XG4gICAgICBjb25zdCBoZWFkZXJSZW50ID0gYXdhaXQgcmVudEZvcigwKTtcbiAgICAgIGNvbnN0IHJlbnRQZXJCeXRlID0gQmlnSW50KGhlYWRlclJlbnQpIC8gQmlnSW50KEFDQ09VTlRfSEVBREVSX1NJWkUpO1xuICAgICAgcmV0dXJuIGxhbXBvcnRzKHJlbnRQZXJCeXRlICogQmlnSW50KGJ5dGVzKSk7XG4gICAgfVxuICAgIHJldHVybiBsYW1wb3J0cyhhd2FpdCByZW50Rm9yKGJ5dGVzKSk7XG4gIH07XG5cbiAgY29uc3QgZ2V0TGF0ZXN0QmxvY2toYXNoID0gYXN5bmMgKFxuICAgIG9wdGlvbnM6IFJwY0dldExhdGVzdEJsb2NraGFzaE9wdGlvbnMgPSB7fVxuICApOiBQcm9taXNlPEJsb2NraGFzaFdpdGhFeHBpcnlCbG9ja0hlaWdodD4gPT5cbiAgICBnZXRDb25uZWN0aW9uKCkuZ2V0TGF0ZXN0QmxvY2toYXNoKG9wdGlvbnMpO1xuXG4gIGNvbnN0IGdldFRyYW5zYWN0aW9uID0gYXN5bmMgKFxuICAgIHNpZ25hdHVyZTogVHJhbnNhY3Rpb25TaWduYXR1cmUsXG4gICAgb3B0aW9uczogUnBjR2V0VHJhbnNhY3Rpb25PcHRpb25zID0ge31cbiAgKTogUHJvbWlzZTxUcmFuc2FjdGlvbldpdGhNZXRhIHwgbnVsbD4gPT4ge1xuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZ2V0Q29ubmVjdGlvbigpLmdldFRyYW5zYWN0aW9uKFxuICAgICAgYmFzZTU4LmRlc2VyaWFsaXplKHNpZ25hdHVyZSlbMF0sXG4gICAgICB7XG4gICAgICAgIGNvbW1pdG1lbnQ6IG9wdGlvbnMuY29tbWl0bWVudCBhcyAnY29uZmlybWVkJyB8ICdmaW5hbGl6ZWQnIHwgdW5kZWZpbmVkLFxuICAgICAgICBtYXhTdXBwb3J0ZWRUcmFuc2FjdGlvblZlcnNpb246IDAsXG4gICAgICB9XG4gICAgKTtcblxuICAgIGlmICghcmVzcG9uc2UpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmICghcmVzcG9uc2UubWV0YSkge1xuICAgICAgLy8gVE9ETzogQ3VzdG9tIGVycm9yLlxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUcmFuc2FjdGlvbiBtZXRhIGlzIG1pc3NpbmcuJyk7XG4gICAgfVxuXG4gICAgY29uc3QgeyB0cmFuc2FjdGlvbiwgbWV0YSB9ID0gcmVzcG9uc2U7XG4gICAgY29uc3QgbWVzc2FnZSA9IGZyb21XZWIzSnNNZXNzYWdlKHRyYW5zYWN0aW9uLm1lc3NhZ2UpO1xuICAgIGNvbnN0IG1hcFB1YmxpY0tleSA9IChrZXk6IHN0cmluZykgPT5cbiAgICAgIGZyb21XZWIzSnNQdWJsaWNLZXkobmV3IFdlYjNKc1B1YmxpY0tleShrZXkpKTtcbiAgICBjb25zdCBtYXBUb2tlbkJhbGFuY2UgPSAoXG4gICAgICB0b2tlbkJhbGFuY2U6IFdlYjNKc1Rva2VuQmFsYW5jZVxuICAgICk6IFRyYW5zYWN0aW9uTWV0YVRva2VuQmFsYW5jZSA9PiAoe1xuICAgICAgYWNjb3VudEluZGV4OiB0b2tlbkJhbGFuY2UuYWNjb3VudEluZGV4LFxuICAgICAgYW1vdW50OiBjcmVhdGVBbW91bnQoXG4gICAgICAgIHRva2VuQmFsYW5jZS51aVRva2VuQW1vdW50LmFtb3VudCxcbiAgICAgICAgJ3NwbFRva2VuJyxcbiAgICAgICAgdG9rZW5CYWxhbmNlLnVpVG9rZW5BbW91bnQuZGVjaW1hbHNcbiAgICAgICksXG4gICAgICBtaW50OiBtYXBQdWJsaWNLZXkodG9rZW5CYWxhbmNlLm1pbnQpLFxuICAgICAgb3duZXI6IHRva2VuQmFsYW5jZS5vd25lciA/IG1hcFB1YmxpY0tleSh0b2tlbkJhbGFuY2Uub3duZXIpIDogbnVsbCxcbiAgICB9KTtcblxuICAgIHJldHVybiB7XG4gICAgICBtZXNzYWdlLFxuICAgICAgc2VyaWFsaXplZE1lc3NhZ2U6IGNvbnRleHQudHJhbnNhY3Rpb25zLnNlcmlhbGl6ZU1lc3NhZ2UobWVzc2FnZSksXG4gICAgICBzaWduYXR1cmVzOiB0cmFuc2FjdGlvbi5zaWduYXR1cmVzLm1hcChiYXNlNTguc2VyaWFsaXplKSxcbiAgICAgIG1ldGE6IHtcbiAgICAgICAgZmVlOiBsYW1wb3J0cyhtZXRhLmZlZSksXG4gICAgICAgIGxvZ3M6IG1ldGEubG9nTWVzc2FnZXMgPz8gW10sXG4gICAgICAgIHByZUJhbGFuY2VzOiBtZXRhLnByZUJhbGFuY2VzLm1hcChsYW1wb3J0cyksXG4gICAgICAgIHBvc3RCYWxhbmNlczogbWV0YS5wb3N0QmFsYW5jZXMubWFwKGxhbXBvcnRzKSxcbiAgICAgICAgcHJlVG9rZW5CYWxhbmNlczogKG1ldGEucHJlVG9rZW5CYWxhbmNlcyA/PyBbXSkubWFwKG1hcFRva2VuQmFsYW5jZSksXG4gICAgICAgIHBvc3RUb2tlbkJhbGFuY2VzOiAobWV0YS5wb3N0VG9rZW5CYWxhbmNlcyA/PyBbXSkubWFwKG1hcFRva2VuQmFsYW5jZSksXG4gICAgICAgIGlubmVySW5zdHJ1Y3Rpb25zOlxuICAgICAgICAgIG1ldGEuaW5uZXJJbnN0cnVjdGlvbnM/Lm1hcChcbiAgICAgICAgICAgIChpbm5lcik6IFRyYW5zYWN0aW9uTWV0YUlubmVySW5zdHJ1Y3Rpb24gPT4gKHtcbiAgICAgICAgICAgICAgaW5kZXg6IGlubmVyLmluZGV4LFxuICAgICAgICAgICAgICBpbnN0cnVjdGlvbnM6IGlubmVyLmluc3RydWN0aW9ucy5tYXAoXG4gICAgICAgICAgICAgICAgKGluc3RydWN0aW9uKTogQ29tcGlsZWRJbnN0cnVjdGlvbiA9PiAoe1xuICAgICAgICAgICAgICAgICAgcHJvZ3JhbUluZGV4OiBpbnN0cnVjdGlvbi5wcm9ncmFtSWRJbmRleCxcbiAgICAgICAgICAgICAgICAgIGFjY291bnRJbmRleGVzOiBpbnN0cnVjdGlvbi5hY2NvdW50cyxcbiAgICAgICAgICAgICAgICAgIGRhdGE6IGJhc2U1OC5zZXJpYWxpemUoaW5zdHJ1Y3Rpb24uZGF0YSksXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgKSA/PyBudWxsLFxuICAgICAgICBsb2FkZWRBZGRyZXNzZXM6IHtcbiAgICAgICAgICB3cml0YWJsZTogKG1ldGEubG9hZGVkQWRkcmVzc2VzPy53cml0YWJsZSA/PyBbXSkubWFwKFxuICAgICAgICAgICAgZnJvbVdlYjNKc1B1YmxpY0tleVxuICAgICAgICAgICksXG4gICAgICAgICAgcmVhZG9ubHk6IChtZXRhLmxvYWRlZEFkZHJlc3Nlcz8ucmVhZG9ubHkgPz8gW10pLm1hcChcbiAgICAgICAgICAgIGZyb21XZWIzSnNQdWJsaWNLZXlcbiAgICAgICAgICApLFxuICAgICAgICB9LFxuICAgICAgICBjb21wdXRlVW5pdHNDb25zdW1lZDogbWV0YS5jb21wdXRlVW5pdHNDb25zdW1lZFxuICAgICAgICAgID8gQmlnSW50KG1ldGEuY29tcHV0ZVVuaXRzQ29uc3VtZWQpXG4gICAgICAgICAgOiBudWxsLFxuICAgICAgICBlcnI6IG1ldGEuZXJyLFxuICAgICAgfSxcbiAgICB9O1xuICB9O1xuXG4gIGNvbnN0IGdldFNpZ25hdHVyZVN0YXR1c2VzID0gYXN5bmMgKFxuICAgIHNpZ25hdHVyZXM6IFRyYW5zYWN0aW9uU2lnbmF0dXJlW10sXG4gICAgb3B0aW9uczogUnBjR2V0U2lnbmF0dXJlU3RhdHVzZXNPcHRpb25zID0ge31cbiAgKTogUHJvbWlzZTxBcnJheTxUcmFuc2FjdGlvblN0YXR1cyB8IG51bGw+PiA9PiB7XG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBnZXRDb25uZWN0aW9uKCkuZ2V0U2lnbmF0dXJlU3RhdHVzZXMoXG4gICAgICBzaWduYXR1cmVzLm1hcCgoc2lnbmF0dXJlKSA9PiBiYXNlNTguZGVzZXJpYWxpemUoc2lnbmF0dXJlKVswXSksXG4gICAgICB7IHNlYXJjaFRyYW5zYWN0aW9uSGlzdG9yeTogb3B0aW9ucz8uc2VhcmNoVHJhbnNhY3Rpb25IaXN0b3J5ID8/IGZhbHNlIH1cbiAgICApO1xuICAgIHJldHVybiByZXNwb25zZS52YWx1ZS5tYXAoKHN0YXR1cykgPT4ge1xuICAgICAgaWYgKCFzdGF0dXMpIHJldHVybiBudWxsO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgc2xvdDogc3RhdHVzLnNsb3QsXG4gICAgICAgIGNvbmZpcm1hdGlvbnM6IHN0YXR1cy5jb25maXJtYXRpb25zLFxuICAgICAgICBlcnJvcjogc3RhdHVzLmVycixcbiAgICAgICAgY29tbWl0bWVudDogc3RhdHVzLmNvbmZpcm1hdGlvblN0YXR1cyA/PyBudWxsLFxuICAgICAgfTtcbiAgICB9KTtcbiAgfTtcblxuICBjb25zdCBhY2NvdW50RXhpc3RzID0gYXN5bmMgKFxuICAgIHB1YmxpY0tleTogUHVibGljS2V5LFxuICAgIG9wdGlvbnM6IFJwY0FjY291bnRFeGlzdHNPcHRpb25zID0ge31cbiAgKTogUHJvbWlzZTxib29sZWFuPiA9PiAhaXNaZXJvQW1vdW50KGF3YWl0IGdldEJhbGFuY2UocHVibGljS2V5LCBvcHRpb25zKSk7XG5cbiAgY29uc3QgYWlyZHJvcCA9IGFzeW5jIChcbiAgICBwdWJsaWNLZXk6IFB1YmxpY0tleSxcbiAgICBhbW91bnQ6IFNvbEFtb3VudCxcbiAgICBvcHRpb25zOiBScGNBaXJkcm9wT3B0aW9ucyA9IHt9XG4gICk6IFByb21pc2U8dm9pZD4gPT4ge1xuICAgIGNvbnN0IHNpZ25hdHVyZSA9IGF3YWl0IGdldENvbm5lY3Rpb24oKS5yZXF1ZXN0QWlyZHJvcChcbiAgICAgIHRvV2ViM0pzUHVibGljS2V5KHB1YmxpY0tleSksXG4gICAgICBOdW1iZXIoYW1vdW50LmJhc2lzUG9pbnRzKVxuICAgICk7XG4gICAgaWYgKG9wdGlvbnMuc3RyYXRlZ3kpIHtcbiAgICAgIGF3YWl0IGNvbmZpcm1UcmFuc2FjdGlvbihcbiAgICAgICAgYmFzZTU4LnNlcmlhbGl6ZShzaWduYXR1cmUpLFxuICAgICAgICBvcHRpb25zIGFzIFJwY0NvbmZpcm1UcmFuc2FjdGlvbk9wdGlvbnNcbiAgICAgICk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGF3YWl0IGNvbmZpcm1UcmFuc2FjdGlvbihiYXNlNTguc2VyaWFsaXplKHNpZ25hdHVyZSksIHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBzdHJhdGVneTogeyB0eXBlOiAnYmxvY2toYXNoJywgLi4uKGF3YWl0IGdldExhdGVzdEJsb2NraGFzaCgpKSB9LFxuICAgIH0pO1xuICB9O1xuXG4gIGNvbnN0IGNhbGwgPSBhc3luYyA8UmVzdWx0LCBQYXJhbXMgZXh0ZW5kcyBhbnlbXSA9IGFueVtdPihcbiAgICBtZXRob2Q6IHN0cmluZyxcbiAgICBwYXJhbXM/OiBbLi4uUGFyYW1zXSxcbiAgICBvcHRpb25zOiBScGNDYWxsT3B0aW9ucyA9IHt9XG4gICk6IFByb21pc2U8UmVzdWx0PiA9PiB7XG4gICAgY29uc3QgY2xpZW50ID0gKGdldENvbm5lY3Rpb24oKSBhcyBhbnkpLl9ycGNDbGllbnQgYXMgUnBjQ2xpZW50O1xuICAgIGNvbnN0IHJlc29sdmVkUGFyYW1zID0gcmVzb2x2ZUNhbGxQYXJhbXMoXG4gICAgICAocGFyYW1zID8gWy4uLnBhcmFtc10gOiBbXSkgYXMgWy4uLlBhcmFtc10sXG4gICAgICBvcHRpb25zLmNvbW1pdG1lbnQsXG4gICAgICBvcHRpb25zLmV4dHJhXG4gICAgKTtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgY29uc3QgY2FsbGJhY2s6IEpTT05SUENDYWxsYmFja1R5cGVQbGFpbiA9IChlcnJvciwgcmVzcG9uc2UpID0+XG4gICAgICAgIGVycm9yID8gcmVqZWN0KGVycm9yKSA6IHJlc29sdmUocmVzcG9uc2UucmVzdWx0KTtcbiAgICAgIGlmIChvcHRpb25zLmlkKSB7XG4gICAgICAgIGNsaWVudC5yZXF1ZXN0KG1ldGhvZCwgcmVzb2x2ZWRQYXJhbXMsIG9wdGlvbnMuaWQsIGNhbGxiYWNrKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNsaWVudC5yZXF1ZXN0KG1ldGhvZCwgcmVzb2x2ZWRQYXJhbXMsIGNhbGxiYWNrKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfTtcblxuICBjb25zdCBzZW5kVHJhbnNhY3Rpb24gPSBhc3luYyAoXG4gICAgdHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uLFxuICAgIG9wdGlvbnM6IFJwY1NlbmRUcmFuc2FjdGlvbk9wdGlvbnMgPSB7fVxuICApOiBQcm9taXNlPFRyYW5zYWN0aW9uU2lnbmF0dXJlPiA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHNpZ25hdHVyZSA9IGF3YWl0IGdldENvbm5lY3Rpb24oKS5zZW5kUmF3VHJhbnNhY3Rpb24oXG4gICAgICAgIGNvbnRleHQudHJhbnNhY3Rpb25zLnNlcmlhbGl6ZSh0cmFuc2FjdGlvbiksXG4gICAgICAgIG9wdGlvbnNcbiAgICAgICk7XG4gICAgICByZXR1cm4gYmFzZTU4LnNlcmlhbGl6ZShzaWduYXR1cmUpO1xuICAgIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcbiAgICAgIGxldCByZXNvbHZlZEVycm9yOiBQcm9ncmFtRXJyb3IgfCBudWxsID0gbnVsbDtcbiAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEVycm9yICYmICdsb2dzJyBpbiBlcnJvcikge1xuICAgICAgICByZXNvbHZlZEVycm9yID0gY29udGV4dC5wcm9ncmFtcy5yZXNvbHZlRXJyb3IoXG4gICAgICAgICAgZXJyb3IgYXMgRXJyb3JXaXRoTG9ncyxcbiAgICAgICAgICB0cmFuc2FjdGlvblxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgdGhyb3cgcmVzb2x2ZWRFcnJvciB8fCBlcnJvcjtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgY29uZmlybVRyYW5zYWN0aW9uID0gYXN5bmMgKFxuICAgIHNpZ25hdHVyZTogVHJhbnNhY3Rpb25TaWduYXR1cmUsXG4gICAgb3B0aW9uczogUnBjQ29uZmlybVRyYW5zYWN0aW9uT3B0aW9uc1xuICApOiBQcm9taXNlPFJwY0NvbmZpcm1UcmFuc2FjdGlvblJlc3VsdD4gPT5cbiAgICBnZXRDb25uZWN0aW9uKCkuY29uZmlybVRyYW5zYWN0aW9uKFxuICAgICAgcGFyc2VDb25maXJtU3RyYXRlZ3koc2lnbmF0dXJlLCBvcHRpb25zKSxcbiAgICAgIG9wdGlvbnMuY29tbWl0bWVudFxuICAgICk7XG5cbiAgcmV0dXJuIHtcbiAgICBnZXRFbmRwb2ludDogKCk6IHN0cmluZyA9PiBnZXRDb25uZWN0aW9uKCkucnBjRW5kcG9pbnQsXG4gICAgZ2V0Q2x1c3RlcjogKCk6IENsdXN0ZXIgPT4gY2x1c3RlcixcbiAgICBnZXRBY2NvdW50LFxuICAgIGdldEFjY291bnRzLFxuICAgIGdldFByb2dyYW1BY2NvdW50cyxcbiAgICBnZXRCbG9ja1RpbWUsXG4gICAgZ2V0QmFsYW5jZSxcbiAgICBnZXRSZW50LFxuICAgIGdldFNsb3Q6IGFzeW5jIChvcHRpb25zOiBScGNHZXRTbG90T3B0aW9ucyA9IHt9KSA9PlxuICAgICAgZ2V0Q29ubmVjdGlvbigpLmdldFNsb3Qob3B0aW9ucyksXG4gICAgZ2V0TGF0ZXN0QmxvY2toYXNoLFxuICAgIGdldFRyYW5zYWN0aW9uLFxuICAgIGdldFNpZ25hdHVyZVN0YXR1c2VzLFxuICAgIGFjY291bnRFeGlzdHMsXG4gICAgYWlyZHJvcCxcbiAgICBjYWxsLFxuICAgIHNlbmRUcmFuc2FjdGlvbixcbiAgICBjb25maXJtVHJhbnNhY3Rpb24sXG5cbiAgICBnZXQgY29ubmVjdGlvbigpIHtcbiAgICAgIHJldHVybiBnZXRDb25uZWN0aW9uKCk7XG4gICAgfSxcbiAgfTtcbn1cblxuZnVuY3Rpb24gcGFyc2VBY2NvdW50KFxuICBhY2NvdW50OiBXZWIzSnNBY2NvdW50SW5mbzxVaW50OEFycmF5PixcbiAgcHVibGljS2V5OiBQdWJsaWNLZXlcbik6IFJwY0FjY291bnQge1xuICByZXR1cm4ge1xuICAgIGV4ZWN1dGFibGU6IGFjY291bnQuZXhlY3V0YWJsZSxcbiAgICBvd25lcjogZnJvbVdlYjNKc1B1YmxpY0tleShhY2NvdW50Lm93bmVyKSxcbiAgICBsYW1wb3J0czogbGFtcG9ydHMoYWNjb3VudC5sYW1wb3J0cyksXG4gICAgcmVudEVwb2NoOiBhY2NvdW50LnJlbnRFcG9jaCxcbiAgICBwdWJsaWNLZXksXG4gICAgZGF0YTogbmV3IFVpbnQ4QXJyYXkoYWNjb3VudC5kYXRhKSxcbiAgfTtcbn1cblxuZnVuY3Rpb24gcGFyc2VNYXliZUFjY291bnQoXG4gIGFjY291bnQ6IFdlYjNKc0FjY291bnRJbmZvPFVpbnQ4QXJyYXk+IHwgbnVsbCxcbiAgcHVibGljS2V5OiBQdWJsaWNLZXlcbik6IE1heWJlUnBjQWNjb3VudCB7XG4gIHJldHVybiBhY2NvdW50XG4gICAgPyB7IC4uLnBhcnNlQWNjb3VudChhY2NvdW50LCBwdWJsaWNLZXkpLCBleGlzdHM6IHRydWUgfVxuICAgIDogeyBleGlzdHM6IGZhbHNlLCBwdWJsaWNLZXkgfTtcbn1cblxuZnVuY3Rpb24gcGFyc2VEYXRhRmlsdGVyKFxuICBmaWx0ZXI6IFJwY0RhdGFGaWx0ZXJcbik6IFdlYjNKc0dldFByb2dyYW1BY2NvdW50c0ZpbHRlciB7XG4gIGlmICghKCdtZW1jbXAnIGluIGZpbHRlcikpIHJldHVybiBmaWx0ZXI7XG4gIGNvbnN0IHsgYnl0ZXMsIC4uLnJlc3QgfSA9IGZpbHRlci5tZW1jbXA7XG4gIHJldHVybiB7IG1lbWNtcDogeyAuLi5yZXN0LCBieXRlczogYmFzZTU4LmRlc2VyaWFsaXplKGJ5dGVzKVswXSB9IH07XG59XG5cbmZ1bmN0aW9uIHBhcnNlQ29uZmlybVN0cmF0ZWd5KFxuICBzaWduYXR1cmU6IFRyYW5zYWN0aW9uU2lnbmF0dXJlLFxuICBvcHRpb25zOiBScGNDb25maXJtVHJhbnNhY3Rpb25PcHRpb25zXG4pOiBXZWIzSnNUcmFuc2FjdGlvbkNvbmZpcm1hdGlvblN0cmF0ZWd5IHtcbiAgaWYgKG9wdGlvbnMuc3RyYXRlZ3kudHlwZSA9PT0gJ2Jsb2NraGFzaCcpIHtcbiAgICByZXR1cm4ge1xuICAgICAgLi4ub3B0aW9ucy5zdHJhdGVneSxcbiAgICAgIHNpZ25hdHVyZTogYmFzZTU4LmRlc2VyaWFsaXplKHNpZ25hdHVyZSlbMF0sXG4gICAgfTtcbiAgfVxuICByZXR1cm4ge1xuICAgIC4uLm9wdGlvbnMuc3RyYXRlZ3ksXG4gICAgc2lnbmF0dXJlOiBiYXNlNTguZGVzZXJpYWxpemUoc2lnbmF0dXJlKVswXSxcbiAgICBub25jZUFjY291bnRQdWJrZXk6IHRvV2ViM0pzUHVibGljS2V5KG9wdGlvbnMuc3RyYXRlZ3kubm9uY2VBY2NvdW50UHVia2V5KSxcbiAgfTtcbn1cblxuZnVuY3Rpb24gcmVzb2x2ZUNhbGxQYXJhbXM8UGFyYW1zIGV4dGVuZHMgYW55W10+KFxuICBhcmdzOiBQYXJhbXMsXG4gIGNvbW1pdG1lbnQ/OiBDb21taXRtZW50LFxuICBleHRyYT86IG9iamVjdFxuKTogUGFyYW1zIHtcbiAgaWYgKCFjb21taXRtZW50ICYmICFleHRyYSkgcmV0dXJuIGFyZ3M7XG4gIGxldCBvcHRpb25zOiBhbnkgPSB7fTtcbiAgaWYgKGNvbW1pdG1lbnQpIG9wdGlvbnMuY29tbWl0bWVudCA9IGNvbW1pdG1lbnQ7XG4gIGlmIChleHRyYSkgb3B0aW9ucyA9IHsgLi4ub3B0aW9ucywgLi4uZXh0cmEgfTtcbiAgYXJncy5wdXNoKG9wdGlvbnMpO1xuICByZXR1cm4gYXJncztcbn1cbiIsICJpbXBvcnQgeyBVbWlQbHVnaW4gfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWknO1xuaW1wb3J0IHsgY3JlYXRlV2ViM0pzUnBjLCBXZWIzSnNScGNPcHRpb25zIH0gZnJvbSAnLi9jcmVhdGVXZWIzSnNScGMnO1xuXG5leHBvcnQgY29uc3Qgd2ViM0pzUnBjID0gKFxuICBlbmRwb2ludDogc3RyaW5nLFxuICBycGNPcHRpb25zPzogV2ViM0pzUnBjT3B0aW9uc1xuKTogVW1pUGx1Z2luID0+ICh7XG4gIGluc3RhbGwodW1pKSB7XG4gICAgdW1pLnJwYyA9IGNyZWF0ZVdlYjNKc1JwYyh1bWksIGVuZHBvaW50LCBycGNPcHRpb25zKTtcbiAgfSxcbn0pO1xuIiwgImltcG9ydCB7IFJwY0ludGVyZmFjZSwgY2h1bmsgfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWknO1xuXG5leHBvcnQgY29uc3QgY3JlYXRlQ2h1bmtHZXRBY2NvdW50c1JwYyA9IChcbiAgcnBjOiBScGNJbnRlcmZhY2UsXG4gIGNodW5rU2l6ZSA9IDEwMFxuKTogUnBjSW50ZXJmYWNlID0+ICh7XG4gIC4uLnJwYyxcbiAgZ2V0QWNjb3VudHM6IGFzeW5jIChwdWJsaWNLZXlzLCBvcHRpb25zKSA9PiB7XG4gICAgY29uc3QgcHJvbWlzZXMgPSBjaHVuayhwdWJsaWNLZXlzLCBjaHVua1NpemUpLm1hcCgoY2h1bmspID0+XG4gICAgICBycGMuZ2V0QWNjb3VudHMoY2h1bmssIG9wdGlvbnMpXG4gICAgKTtcbiAgICBjb25zdCBjaHVua3MgPSBhd2FpdCBQcm9taXNlLmFsbChwcm9taXNlcyk7XG4gICAgcmV0dXJuIGNodW5rcy5mbGF0KCk7XG4gIH0sXG59KTtcbiIsICJpbXBvcnQgeyBVbWlQbHVnaW4gfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWknO1xuaW1wb3J0IHsgY3JlYXRlQ2h1bmtHZXRBY2NvdW50c1JwYyB9IGZyb20gJy4vY3JlYXRlQ2h1bmtHZXRBY2NvdW50c1JwYyc7XG5cbmV4cG9ydCBjb25zdCBjaHVua0dldEFjY291bnRzUnBjID0gKGNodW5rU2l6ZSA9IDEwMCk6IFVtaVBsdWdpbiA9PiAoe1xuICBpbnN0YWxsKHVtaSkge1xuICAgIHVtaS5ycGMgPSBjcmVhdGVDaHVua0dldEFjY291bnRzUnBjKHVtaS5ycGMsIGNodW5rU2l6ZSk7XG4gIH0sXG59KTtcbiIsICJpbXBvcnQgeyBTZXJpYWxpemVySW50ZXJmYWNlIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pJztcbmltcG9ydCB7XG4gIGFycmF5LFxuICBib29sLFxuICBieXRlcyxcbiAgZGF0YUVudW0sXG4gIGYzMixcbiAgZjY0LFxuICBpMTI4LFxuICBpMTYsXG4gIGkzMixcbiAgaTY0LFxuICBpOCxcbiAgbWFwLFxuICBudWxsYWJsZSxcbiAgb3B0aW9uLFxuICBwdWJsaWNLZXksXG4gIHNjYWxhckVudW0sXG4gIHNldCxcbiAgc3RyaW5nLFxuICBzdHJ1Y3QsXG4gIHR1cGxlLFxuICB1MTI4LFxuICB1MTYsXG4gIHUzMixcbiAgdTY0LFxuICB1OCxcbiAgdW5pdCxcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pL3NlcmlhbGl6ZXJzJztcblxuZXhwb3J0IHR5cGUgRGF0YVZpZXdTZXJpYWxpemVyT3B0aW9ucyA9IHt9O1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRGF0YVZpZXdTZXJpYWxpemVyKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gIG9wdGlvbnM6IERhdGFWaWV3U2VyaWFsaXplck9wdGlvbnMgPSB7fVxuKTogU2VyaWFsaXplckludGVyZmFjZSB7XG4gIHJldHVybiB7XG4gICAgdHVwbGUsXG4gICAgYXJyYXksXG4gICAgbWFwLFxuICAgIHNldCxcbiAgICBvcHRpb24sXG4gICAgbnVsbGFibGUsXG4gICAgc3RydWN0LFxuICAgIGVudW06IHNjYWxhckVudW0sXG4gICAgZGF0YUVudW0sXG4gICAgc3RyaW5nLFxuICAgIGJvb2wsXG4gICAgdW5pdCxcbiAgICB1OCxcbiAgICB1MTYsXG4gICAgdTMyLFxuICAgIHU2NCxcbiAgICB1MTI4LFxuICAgIGk4LFxuICAgIGkxNixcbiAgICBpMzIsXG4gICAgaTY0LFxuICAgIGkxMjgsXG4gICAgZjMyLFxuICAgIGY2NCxcbiAgICBieXRlcyxcbiAgICBwdWJsaWNLZXksXG4gIH07XG59XG4iLCAiaW1wb3J0IHsgVW1pUGx1Z2luIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pJztcbmltcG9ydCB7XG4gIERhdGFWaWV3U2VyaWFsaXplck9wdGlvbnMsXG4gIGNyZWF0ZURhdGFWaWV3U2VyaWFsaXplcixcbn0gZnJvbSAnLi9jcmVhdGVEYXRhVmlld1NlcmlhbGl6ZXInO1xuXG5leHBvcnQgY29uc3QgZGF0YVZpZXdTZXJpYWxpemVyID0gKFxuICBvcHRpb25zOiBEYXRhVmlld1NlcmlhbGl6ZXJPcHRpb25zID0ge31cbik6IFVtaVBsdWdpbiA9PiAoe1xuICBpbnN0YWxsKHVtaSkge1xuICAgIHVtaS5zZXJpYWxpemVyID0gY3JlYXRlRGF0YVZpZXdTZXJpYWxpemVyKG9wdGlvbnMpO1xuICB9LFxufSk7XG4iLCAiLyogZXNsaW50LWRpc2FibGUgbm8tYml0d2lzZSAqL1xuaW1wb3J0IHtcbiAgQ29tcGlsZWRBZGRyZXNzTG9va3VwVGFibGUsXG4gIENvbXBpbGVkSW5zdHJ1Y3Rpb24sXG4gIFNka0Vycm9yLFxuICBTZXJpYWxpemVkVHJhbnNhY3Rpb24sXG4gIFNlcmlhbGl6ZWRUcmFuc2FjdGlvbk1lc3NhZ2UsXG4gIFRyYW5zYWN0aW9uLFxuICBUcmFuc2FjdGlvbkZhY3RvcnlJbnRlcmZhY2UsXG4gIFRyYW5zYWN0aW9uSW5wdXQsXG4gIFRyYW5zYWN0aW9uTWVzc2FnZSxcbiAgVHJhbnNhY3Rpb25NZXNzYWdlSGVhZGVyLFxuICBUcmFuc2FjdGlvblZlcnNpb24sXG59IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaSc7XG5pbXBvcnQge1xuICBzaG9ydFUxNixcbiAgYmFzZTU4LFxuICBTZXJpYWxpemVyLFxuICBtYXBTZXJpYWxpemVyLFxuICBzdHJ1Y3QsXG4gIGJ5dGVzLFxuICBhcnJheSxcbiAgc3RyaW5nLFxuICBwdWJsaWNLZXksXG4gIHU4LFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWkvc2VyaWFsaXplcnMnO1xuaW1wb3J0IHtcbiAgZnJvbVdlYjNKc01lc3NhZ2UsXG4gIHRvV2ViM0pzTWVzc2FnZUZyb21JbnB1dCxcbn0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXdlYjNqcy1hZGFwdGVycyc7XG5pbXBvcnQgeyBWZXJzaW9uZWRUcmFuc2FjdGlvbiBhcyBXZWIzSnNUcmFuc2FjdGlvbiB9IGZyb20gJ0Bzb2xhbmEvd2ViMy5qcyc7XG5cbmNvbnN0IFRSQU5TQUNUSU9OX1ZFUlNJT05fRkxBRyA9IDB4ODA7XG5jb25zdCBUUkFOU0FDVElPTl9WRVJTSU9OX01BU0sgPSAweDdmO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlV2ViM0pzVHJhbnNhY3Rpb25GYWN0b3J5KCk6IFRyYW5zYWN0aW9uRmFjdG9yeUludGVyZmFjZSB7XG4gIGNvbnN0IGNyZWF0ZSA9IChpbnB1dDogVHJhbnNhY3Rpb25JbnB1dCk6IFRyYW5zYWN0aW9uID0+IHtcbiAgICBjb25zdCB3ZWIzSnNNZXNzYWdlID0gdG9XZWIzSnNNZXNzYWdlRnJvbUlucHV0KGlucHV0KTtcbiAgICBjb25zdCBtZXNzYWdlID0gZnJvbVdlYjNKc01lc3NhZ2Uod2ViM0pzTWVzc2FnZSk7XG4gICAgY29uc3Qgd2ViM0pzVHJhbnNhY3Rpb24gPSBuZXcgV2ViM0pzVHJhbnNhY3Rpb24oXG4gICAgICB3ZWIzSnNNZXNzYWdlLFxuICAgICAgaW5wdXQuc2lnbmF0dXJlc1xuICAgICk7XG4gICAgcmV0dXJuIHtcbiAgICAgIG1lc3NhZ2UsXG4gICAgICBzZXJpYWxpemVkTWVzc2FnZTogc2VyaWFsaXplTWVzc2FnZShtZXNzYWdlKSxcbiAgICAgIHNpZ25hdHVyZXM6IHdlYjNKc1RyYW5zYWN0aW9uLnNpZ25hdHVyZXMsXG4gICAgfTtcbiAgfTtcblxuICBjb25zdCBzZXJpYWxpemUgPSAodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKTogU2VyaWFsaXplZFRyYW5zYWN0aW9uID0+XG4gICAgZ2V0VHJhbnNhY3Rpb25TZXJpYWxpemVyKCkuc2VyaWFsaXplKHRyYW5zYWN0aW9uKTtcblxuICBjb25zdCBkZXNlcmlhbGl6ZSA9IChcbiAgICBzZXJpYWxpemVkVHJhbnNhY3Rpb246IFNlcmlhbGl6ZWRUcmFuc2FjdGlvblxuICApOiBUcmFuc2FjdGlvbiA9PlxuICAgIGdldFRyYW5zYWN0aW9uU2VyaWFsaXplcigpLmRlc2VyaWFsaXplKHNlcmlhbGl6ZWRUcmFuc2FjdGlvbilbMF07XG5cbiAgY29uc3Qgc2VyaWFsaXplTWVzc2FnZSA9IChcbiAgICBtZXNzYWdlOiBUcmFuc2FjdGlvbk1lc3NhZ2VcbiAgKTogU2VyaWFsaXplZFRyYW5zYWN0aW9uTWVzc2FnZSA9PlxuICAgIGdldFRyYW5zYWN0aW9uTWVzc2FnZVNlcmlhbGl6ZXIoKS5zZXJpYWxpemUobWVzc2FnZSk7XG5cbiAgY29uc3QgZGVzZXJpYWxpemVNZXNzYWdlID0gKFxuICAgIHNlcmlhbGl6ZWRNZXNzYWdlOiBTZXJpYWxpemVkVHJhbnNhY3Rpb25NZXNzYWdlXG4gICk6IFRyYW5zYWN0aW9uTWVzc2FnZSA9PlxuICAgIGdldFRyYW5zYWN0aW9uTWVzc2FnZVNlcmlhbGl6ZXIoKS5kZXNlcmlhbGl6ZShzZXJpYWxpemVkTWVzc2FnZSlbMF07XG5cbiAgY29uc3QgZ2V0VHJhbnNhY3Rpb25TZXJpYWxpemVyID0gKCk6IFNlcmlhbGl6ZXI8VHJhbnNhY3Rpb24+ID0+ICh7XG4gICAgLi4ubWFwU2VyaWFsaXplcihcbiAgICAgIHN0cnVjdDxPbWl0PFRyYW5zYWN0aW9uLCAnbWVzc2FnZSc+PihbXG4gICAgICAgIFsnc2lnbmF0dXJlcycsIGFycmF5KGJ5dGVzKHsgc2l6ZTogNjQgfSksIHsgc2l6ZTogc2hvcnRVMTYoKSB9KV0sXG4gICAgICAgIFsnc2VyaWFsaXplZE1lc3NhZ2UnLCBieXRlcygpXSxcbiAgICAgIF0pLFxuICAgICAgKHZhbHVlOiBUcmFuc2FjdGlvbik6IE9taXQ8VHJhbnNhY3Rpb24sICdtZXNzYWdlJz4gPT4gdmFsdWUsXG4gICAgICAodmFsdWU6IE9taXQ8VHJhbnNhY3Rpb24sICdtZXNzYWdlJz4pOiBUcmFuc2FjdGlvbiA9PiAoe1xuICAgICAgICAuLi52YWx1ZSxcbiAgICAgICAgbWVzc2FnZTogZGVzZXJpYWxpemVNZXNzYWdlKHZhbHVlLnNlcmlhbGl6ZWRNZXNzYWdlKSxcbiAgICAgIH0pXG4gICAgKSxcbiAgICBkZXNjcmlwdGlvbjogJ1RyYW5zYWN0aW9uJyxcbiAgfSk7XG5cbiAgY29uc3QgZ2V0VHJhbnNhY3Rpb25NZXNzYWdlU2VyaWFsaXplciA9XG4gICAgKCk6IFNlcmlhbGl6ZXI8VHJhbnNhY3Rpb25NZXNzYWdlPiA9PiAoe1xuICAgICAgZGVzY3JpcHRpb246ICdUcmFuc2FjdGlvbk1lc3NhZ2UnLFxuICAgICAgZml4ZWRTaXplOiBudWxsLFxuICAgICAgbWF4U2l6ZTogbnVsbCxcbiAgICAgIHNlcmlhbGl6ZTogKHZhbHVlOiBUcmFuc2FjdGlvbk1lc3NhZ2UpOiBVaW50OEFycmF5ID0+IHtcbiAgICAgICAgY29uc3Qgc2VyaWFsaXplciA9IGdldFRyYW5zYWN0aW9uTWVzc2FnZVNlcmlhbGl6ZXJGb3JWZXJzaW9uKFxuICAgICAgICAgIHZhbHVlLnZlcnNpb25cbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuIHNlcmlhbGl6ZXIuc2VyaWFsaXplKHZhbHVlKTtcbiAgICAgIH0sXG4gICAgICBkZXNlcmlhbGl6ZTogKFxuICAgICAgICBieXRlczogVWludDhBcnJheSxcbiAgICAgICAgb2Zmc2V0ID0gMFxuICAgICAgKTogW1RyYW5zYWN0aW9uTWVzc2FnZSwgbnVtYmVyXSA9PiB7XG4gICAgICAgIGNvbnN0IFt2ZXJzaW9uXSA9IGdldFRyYW5zYWN0aW9uVmVyc2lvblNlcmlhbGl6ZXIoKS5kZXNlcmlhbGl6ZShcbiAgICAgICAgICBieXRlcyxcbiAgICAgICAgICBvZmZzZXRcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3Qgc2VyaWFsaXplciA9IGdldFRyYW5zYWN0aW9uTWVzc2FnZVNlcmlhbGl6ZXJGb3JWZXJzaW9uKHZlcnNpb24pO1xuICAgICAgICByZXR1cm4gc2VyaWFsaXplci5kZXNlcmlhbGl6ZShieXRlcywgb2Zmc2V0KTtcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgY29uc3QgZ2V0VHJhbnNhY3Rpb25NZXNzYWdlU2VyaWFsaXplckZvclZlcnNpb24gPSAoXG4gICAgdmVyc2lvbjogVHJhbnNhY3Rpb25WZXJzaW9uXG4gICk6IFNlcmlhbGl6ZXI8VHJhbnNhY3Rpb25NZXNzYWdlPiA9PlxuICAgIHN0cnVjdDxUcmFuc2FjdGlvbk1lc3NhZ2UsIFRyYW5zYWN0aW9uTWVzc2FnZT4oW1xuICAgICAgWyd2ZXJzaW9uJywgZ2V0VHJhbnNhY3Rpb25WZXJzaW9uU2VyaWFsaXplcigpXSxcbiAgICAgIFsnaGVhZGVyJywgZ2V0VHJhbnNhY3Rpb25NZXNzYWdlSGVhZGVyU2VyaWFsaXplcigpXSxcbiAgICAgIFsnYWNjb3VudHMnLCBhcnJheShwdWJsaWNLZXkoKSwgeyBzaXplOiBzaG9ydFUxNigpIH0pXSxcbiAgICAgIFsnYmxvY2toYXNoJywgc3RyaW5nKHsgZW5jb2Rpbmc6IGJhc2U1OCwgc2l6ZTogMzIgfSldLFxuICAgICAgW1xuICAgICAgICAnaW5zdHJ1Y3Rpb25zJyxcbiAgICAgICAgYXJyYXkoZ2V0Q29tcGlsZWRJbnN0cnVjdGlvblNlcmlhbGl6ZXIoKSwgeyBzaXplOiBzaG9ydFUxNigpIH0pLFxuICAgICAgXSxcbiAgICAgIFtcbiAgICAgICAgJ2FkZHJlc3NMb29rdXBUYWJsZXMnLFxuICAgICAgICBhcnJheShnZXRDb21waWxlZEFkZHJlc3NMb29rdXBUYWJsZVNlcmlhbGl6ZXIoKSwge1xuICAgICAgICAgIHNpemU6IHZlcnNpb24gPT09ICdsZWdhY3knID8gMCA6IHNob3J0VTE2KCksXG4gICAgICAgIH0pLFxuICAgICAgXSxcbiAgICBdKTtcblxuICBjb25zdCBnZXRUcmFuc2FjdGlvblZlcnNpb25TZXJpYWxpemVyID1cbiAgICAoKTogU2VyaWFsaXplcjxUcmFuc2FjdGlvblZlcnNpb24+ID0+ICh7XG4gICAgICBkZXNjcmlwdGlvbjogJ1RyYW5zYWN0aW9uVmVyc2lvbicsXG4gICAgICBmaXhlZFNpemU6IG51bGwsXG4gICAgICBtYXhTaXplOiAxLFxuICAgICAgc2VyaWFsaXplOiAodmFsdWU6IFRyYW5zYWN0aW9uVmVyc2lvbik6IFVpbnQ4QXJyYXkgPT4ge1xuICAgICAgICBpZiAodmFsdWUgPT09ICdsZWdhY3knKSByZXR1cm4gbmV3IFVpbnQ4QXJyYXkoW10pO1xuICAgICAgICByZXR1cm4gbmV3IFVpbnQ4QXJyYXkoW1RSQU5TQUNUSU9OX1ZFUlNJT05fRkxBRyB8IHZhbHVlXSk7XG4gICAgICB9LFxuICAgICAgZGVzZXJpYWxpemU6IChcbiAgICAgICAgYnl0ZXM6IFVpbnQ4QXJyYXksXG4gICAgICAgIG9mZnNldCA9IDBcbiAgICAgICk6IFtUcmFuc2FjdGlvblZlcnNpb24sIG51bWJlcl0gPT4ge1xuICAgICAgICBjb25zdCBzbGljZSA9IGJ5dGVzLnNsaWNlKG9mZnNldCk7XG4gICAgICAgIGlmIChzbGljZS5sZW5ndGggPT09IDAgfHwgKHNsaWNlWzBdICYgVFJBTlNBQ1RJT05fVkVSU0lPTl9GTEFHKSA9PT0gMCkge1xuICAgICAgICAgIHJldHVybiBbJ2xlZ2FjeScsIG9mZnNldF07XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgdmVyc2lvbiA9IHNsaWNlWzBdICYgVFJBTlNBQ1RJT05fVkVSU0lPTl9NQVNLO1xuICAgICAgICBpZiAodmVyc2lvbiA+IDApIHtcbiAgICAgICAgICB0aHJvdyBuZXcgU2RrRXJyb3IoYFVuc3VwcG9ydGVkIHRyYW5zYWN0aW9uIHZlcnNpb246ICR7dmVyc2lvbn0uYCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIFt2ZXJzaW9uIGFzIFRyYW5zYWN0aW9uVmVyc2lvbiwgb2Zmc2V0ICsgMV07XG4gICAgICB9LFxuICAgIH0pO1xuXG4gIGNvbnN0IGdldFRyYW5zYWN0aW9uTWVzc2FnZUhlYWRlclNlcmlhbGl6ZXIgPVxuICAgICgpOiBTZXJpYWxpemVyPFRyYW5zYWN0aW9uTWVzc2FnZUhlYWRlcj4gPT5cbiAgICAgIHN0cnVjdChbXG4gICAgICAgIFsnbnVtUmVxdWlyZWRTaWduYXR1cmVzJywgdTgoKV0sXG4gICAgICAgIFsnbnVtUmVhZG9ubHlTaWduZWRBY2NvdW50cycsIHU4KCldLFxuICAgICAgICBbJ251bVJlYWRvbmx5VW5zaWduZWRBY2NvdW50cycsIHU4KCldLFxuICAgICAgXSk7XG5cbiAgY29uc3QgZ2V0Q29tcGlsZWRJbnN0cnVjdGlvblNlcmlhbGl6ZXIgPVxuICAgICgpOiBTZXJpYWxpemVyPENvbXBpbGVkSW5zdHJ1Y3Rpb24+ID0+XG4gICAgICBzdHJ1Y3QoW1xuICAgICAgICBbJ3Byb2dyYW1JbmRleCcsIHU4KCldLFxuICAgICAgICBbJ2FjY291bnRJbmRleGVzJywgYXJyYXkodTgoKSwgeyBzaXplOiBzaG9ydFUxNigpIH0pXSxcbiAgICAgICAgWydkYXRhJywgYnl0ZXMoeyBzaXplOiBzaG9ydFUxNigpIH0pXSxcbiAgICAgIF0pO1xuXG4gIGNvbnN0IGdldENvbXBpbGVkQWRkcmVzc0xvb2t1cFRhYmxlU2VyaWFsaXplciA9XG4gICAgKCk6IFNlcmlhbGl6ZXI8Q29tcGlsZWRBZGRyZXNzTG9va3VwVGFibGU+ID0+XG4gICAgICBzdHJ1Y3QoW1xuICAgICAgICBbJ3B1YmxpY0tleScsIHB1YmxpY0tleSgpXSxcbiAgICAgICAgWyd3cml0YWJsZUluZGV4ZXMnLCBhcnJheSh1OCgpLCB7IHNpemU6IHNob3J0VTE2KCkgfSldLFxuICAgICAgICBbJ3JlYWRvbmx5SW5kZXhlcycsIGFycmF5KHU4KCksIHsgc2l6ZTogc2hvcnRVMTYoKSB9KV0sXG4gICAgICBdKTtcblxuICByZXR1cm4ge1xuICAgIGNyZWF0ZSxcbiAgICBzZXJpYWxpemUsXG4gICAgZGVzZXJpYWxpemUsXG4gICAgc2VyaWFsaXplTWVzc2FnZSxcbiAgICBkZXNlcmlhbGl6ZU1lc3NhZ2UsXG4gIH07XG59XG4iLCAiaW1wb3J0IHsgVW1pUGx1Z2luIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pJztcbmltcG9ydCB7IGNyZWF0ZVdlYjNKc1RyYW5zYWN0aW9uRmFjdG9yeSB9IGZyb20gJy4vY3JlYXRlV2ViM0pzVHJhbnNhY3Rpb25GYWN0b3J5JztcblxuZXhwb3J0IGNvbnN0IHdlYjNKc1RyYW5zYWN0aW9uRmFjdG9yeSA9ICgpOiBVbWlQbHVnaW4gPT4gKHtcbiAgaW5zdGFsbCh1bWkpIHtcbiAgICB1bWkudHJhbnNhY3Rpb25zID0gY3JlYXRlV2ViM0pzVHJhbnNhY3Rpb25GYWN0b3J5KCk7XG4gIH0sXG59KTtcbiIsICJpbXBvcnQgdHlwZSB7IFVtaVBsdWdpbiB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaSc7XG5pbXBvcnQgeyBodHRwRG93bmxvYWRlciB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1kb3dubG9hZGVyLWh0dHAnO1xuaW1wb3J0IHsgd2ViM0pzRWRkc2EgfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktZWRkc2Etd2ViM2pzJztcbmltcG9ydCB7IGZldGNoSHR0cCB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1odHRwLWZldGNoJztcbmltcG9ydCB7IGRlZmF1bHRQcm9ncmFtUmVwb3NpdG9yeSB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS1wcm9ncmFtLXJlcG9zaXRvcnknO1xuaW1wb3J0IHtcbiAgd2ViM0pzUnBjLFxuICBXZWIzSnNScGNPcHRpb25zLFxufSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktcnBjLXdlYjNqcyc7XG5pbXBvcnQgeyBjaHVua0dldEFjY291bnRzUnBjIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXJwYy1jaHVuay1nZXQtYWNjb3VudHMnO1xuaW1wb3J0IHsgZGF0YVZpZXdTZXJpYWxpemVyIH0gZnJvbSAnQG1ldGFwbGV4LWZvdW5kYXRpb24vdW1pLXNlcmlhbGl6ZXItZGF0YS12aWV3JztcbmltcG9ydCB7IHdlYjNKc1RyYW5zYWN0aW9uRmFjdG9yeSB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaS10cmFuc2FjdGlvbi1mYWN0b3J5LXdlYjNqcyc7XG5cbmV4cG9ydCBjb25zdCBkZWZhdWx0UGx1Z2lucyA9IChcbiAgZW5kcG9pbnQ6IHN0cmluZyxcbiAgcnBjT3B0aW9ucz86IFdlYjNKc1JwY09wdGlvbnMgJiB7IGdldEFjY291bnRzQ2h1bmtTaXplPzogbnVtYmVyIH1cbik6IFVtaVBsdWdpbiA9PiAoe1xuICBpbnN0YWxsKHVtaSkge1xuICAgIHVtaS51c2UoZGF0YVZpZXdTZXJpYWxpemVyKCkpO1xuICAgIHVtaS51c2UoZGVmYXVsdFByb2dyYW1SZXBvc2l0b3J5KCkpO1xuICAgIHVtaS51c2UoZmV0Y2hIdHRwKCkpO1xuICAgIHVtaS51c2UoaHR0cERvd25sb2FkZXIoKSk7XG4gICAgdW1pLnVzZSh3ZWIzSnNFZGRzYSgpKTtcbiAgICB1bWkudXNlKHdlYjNKc1JwYyhlbmRwb2ludCwgcnBjT3B0aW9ucykpO1xuICAgIHVtaS51c2UoY2h1bmtHZXRBY2NvdW50c1JwYyhycGNPcHRpb25zPy5nZXRBY2NvdW50c0NodW5rU2l6ZSkpO1xuICAgIHVtaS51c2Uod2ViM0pzVHJhbnNhY3Rpb25GYWN0b3J5KCkpO1xuICB9LFxufSk7XG4iLCAiaW1wb3J0IHsgVW1pLCBjcmVhdGVVbWkgYXMgYmFzZUNyZWF0ZVVtaSB9IGZyb20gJ0BtZXRhcGxleC1mb3VuZGF0aW9uL3VtaSc7XG5pbXBvcnQgdHlwZSB7IFdlYjNKc1JwY09wdGlvbnMgfSBmcm9tICdAbWV0YXBsZXgtZm91bmRhdGlvbi91bWktcnBjLXdlYjNqcyc7XG5pbXBvcnQgeyBkZWZhdWx0UGx1Z2lucyB9IGZyb20gJy4vcGx1Z2luJztcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZVVtaSA9IChcbiAgZW5kcG9pbnQ6IHN0cmluZyxcbiAgcnBjT3B0aW9ucz86IFdlYjNKc1JwY09wdGlvbnNcbik6IFVtaSA9PiBiYXNlQ3JlYXRlVW1pKCkudXNlKGRlZmF1bHRQbHVnaW5zKGVuZHBvaW50LCBycGNPcHRpb25zKSk7XG5cbmV4cG9ydCAqIGZyb20gJy4vcGx1Z2luJztcbiIsICJpbXBvcnQgeyBQdWJsaWNLZXkgfSBmcm9tICdAc29sYW5hL3dlYjMuanMnXG5pbXBvcnQgeyBTb2xhbmFVdGlscyB9IGZyb20gJ0AvbGliL3NvbGFuYVV0aWxzJ1xuXG5leHBvcnQgY29uc3Qgc3Rha2VBY2NvdW50QmFsYW5jZSA9IGFzeW5jIChcbiAgc29sYW5hVXRpbHM6IFNvbGFuYVV0aWxzLFxuICBzdGFrZUFjY291bnRBZGRyZXNzOiBzdHJpbmcsXG4pID0+IHtcbiAgY29uc3Qgc3Rha2VBY2NvdW50UHVibGljS2V5ID0gbmV3IFB1YmxpY0tleShzdGFrZUFjY291bnRBZGRyZXNzKVxuICBjb25zdCBhY2NvdW50SW5mbyA9IGF3YWl0IHNvbGFuYVV0aWxzLmNvbm5lY3Rpb24uZ2V0QWNjb3VudEluZm8oXG4gICAgc3Rha2VBY2NvdW50UHVibGljS2V5LFxuICApXG5cbiAgaWYgKCFhY2NvdW50SW5mbykge1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgIGBGYWlsZWQgdG8gZmV0Y2ggYWNjb3VudCBpbmZvIGZvciBhZGRyZXNzOiAke3N0YWtlQWNjb3VudEFkZHJlc3N9YCxcbiAgICApXG4gIH1cblxuICByZXR1cm4gc29sYW5hVXRpbHMubGFtcG9ydHNUb1NvbChhY2NvdW50SW5mby5sYW1wb3J0cylcbn1cbiIsICJpbXBvcnQgeyBQdWJsaWNLZXkgfSBmcm9tICdAc29sYW5hL3dlYjMuanMnXG5pbXBvcnQgeyBTb2xhbmFVdGlscyB9IGZyb20gJy4nXG5pbXBvcnQgeyBTdGFrZVJld2FyZFBhcmFtcyB9IGZyb20gJy4vc29sYW5hVXRpbHNUeXBlcydcblxuZXhwb3J0IGNvbnN0IGxhc3RTdGFraW5nUmV3YXJkID0gYXN5bmMgKFxuICBzb2xhbmFVdGlsczogU29sYW5hVXRpbHMsXG4gIHN0YWtlQWNjb3VudEFkZHJlc3M6IHN0cmluZyxcbikgPT4ge1xuICBjb25zdCBjdXJyZW50RXBvY2ggPSBhd2FpdCBzb2xhbmFVdGlscy5nZXRDdXJyZW50RXBvY2goKVxuICBjb25zdCBzdGFrZUFjY291bnRQdWJsaWNLZXkgPSBuZXcgUHVibGljS2V5KHN0YWtlQWNjb3VudEFkZHJlc3MpXG4gIGNvbnN0IHJld2FyZHMgPSBhd2FpdCBzb2xhbmFVdGlscy5jb25uZWN0aW9uLmdldEluZmxhdGlvblJld2FyZChcbiAgICBbc3Rha2VBY2NvdW50UHVibGljS2V5XSxcbiAgICBjdXJyZW50RXBvY2ggLSAxLFxuICApXG5cbiAgaWYgKHJld2FyZHMgJiYgcmV3YXJkcy5sZW5ndGggPiAwICYmIHJld2FyZHNbMF0pIHtcbiAgICBjb25zdCByZXNwb25zZSA9IHtcbiAgICAgIHN0YWtlQWNjb3VudEFkZHJlc3MsXG4gICAgICAuLi5yZXdhcmRzWzBdLFxuICAgIH1cbiAgICByZXR1cm4gcmVzcG9uc2UgYXMg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QUFDLEVBQUksR0FBQUMsRUFBSSxHQUFBQyxFQUFJLEdBQUFDLEVBQUksR0FBQUMsRUFBSSxHQUFBQyxFQUFJLEdBQUFDLEVBQUksR0FBQUMsRUFBSSxHQUFBQyxFQUFJLEdBQUFDLEVBQUksR0FBQUMsRUFBSSxHQUFBQyxFQUFJLEdBQUFDLENBQUUsRUFBSyxLQUMzRSxNQUFPLENBQUNmLEVBQUlDLEVBQUlDLEVBQUlDLEVBQUlDLEVBQUlDLEVBQUlDLEVBQUlDLEVBQUlDLEVBQUlDLEVBQUlDLEVBQUlDLEVBQUlDLEVBQUlDLEVBQUlDLEVBQUlDLENBQUUsQ0FDeEUsQ0FFVSxJQUNSZixFQUFZQyxFQUFZQyxFQUFZQyxFQUFZQyxFQUFZQyxFQUFZQyxFQUFZQyxFQUNwRkMsRUFBWUMsRUFBWUMsRUFBWUMsRUFBWUMsRUFBWUMsRUFBWUMsRUFBWUMsRUFBVSxDQUU5RixLQUFLLEdBQUtmLEVBQUssRUFDZixLQUFLLEdBQUtDLEVBQUssRUFDZixLQUFLLEdBQUtDLEVBQUssRUFDZixLQUFLLEdBQUtDLEVBQUssRUFDZixLQUFLLEdBQUtDLEVBQUssRUFDZixLQUFLLEdBQUtDLEVBQUssRUFDZixLQUFLLEdBQUtDLEVBQUssRUFDZixLQUFLLEdBQUtDLEVBQUssRUFDZixLQUFLLEdBQUtDLEVBQUssRUFDZixLQUFLLEdBQUtDLEVBQUssRUFDZixLQUFLLEdBQUtDLEVBQUssRUFDZixLQUFLLEdBQUtDLEVBQUssRUFDZixLQUFLLEdBQUtDLEVBQUssRUFDZixLQUFLLEdBQUtDLEVBQUssRUFDZixLQUFLLEdBQUtDLEVBQUssRUFDZixLQUFLLEdBQUtDLEVBQUssQ0FDakIsQ0FDVSxRQUFRQyxFQUFnQkMsRUFBYyxDQUU5QyxRQUFTQyxFQUFJLEVBQUdBLEVBQUksR0FBSUEsSUFBS0QsR0FBVSxFQUNyQ3JCLEdBQVdzQixDQUFDLEVBQUlGLEVBQUssVUFBVUMsQ0FBTSxFQUNyQ3BCLEdBQVdxQixDQUFDLEVBQUlGLEVBQUssVUFBV0MsR0FBVSxDQUFFLEVBRTlDLFFBQVNDLEVBQUksR0FBSUEsRUFBSSxH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Q0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSx1QkFBdUIsRUFBRSxDQUFDLENBQUMsR0FBRyxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSx1QkFBdUIsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUseUJBQXlCLENBQUMsR0FBRyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUseUJBQXlCLENBQUMsR0FBRyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUseUJBQXlCLENBQUMsR0FBRyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFlBQVksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUseUJBQXlCLENBQUMsR0FBRyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsWUFBWSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSyxHQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxHQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsS0FBSyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLElBQUksSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLElBQUksSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx1QkFBdUIsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx1QkFBdUIsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLEdBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEdBQUcsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsR0FBRyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEdBQUcsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsR0FBRyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEdBQUcsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsR0FBRyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEdBQUcsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUseUJBQXlCLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLE1BQU0sTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxNQUFNLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQU0sSUFBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sTUFBTSxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxNQUFNLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sTUFBTSxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sTUFBTSxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sTUFBTSxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sTUFBTSxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sTUFBTSxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxNQUFNLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sTUFBTSxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sTUFBTSxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLEdBQUcsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxLQUFLLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLElBQUksS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxJQUFJLEtBQUssSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBTSxJQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQU0sSUFBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsS0FBSyxLQUFLLEtBQUssR0FBRyxLQUFLLEtBQUssS0FBSyxLQUFLLEdBQUcsS0FBSyxLQUFLLEtBQUssS0FBSyxHQUFHLEtBQUssS0FBSyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxLQUFLLEtBQUssR0FBRyxLQUFLLEtBQUssS0FBSyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxLQUFLLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUseUJBQXlCLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLHlCQUF5QixDQUFDLEdBQUcsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLEtBQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsT0FBTyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE9BQU8sTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxPQUFPLE9BQU8sTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxPQUFPLE9BQU8sTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxPQUFPLE9BQU8sTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxPQUFPLE9BQU8sTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxPQUFPLE9BQU8sTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxPQUFPLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsT0FBTyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE9BQU8sT0FBTyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE9BQU8sT0FBTyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE9BQU8sT0FBTyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE9BQU8sT0FBTyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBTyxJQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUseUJBQXlCLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUseUJBQXlCLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUseUJBQXlCLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUseUJBQXlCLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUseUJBQXlCLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUseUJBQXlCLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUseUJBQXlCLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUseUJBQXlCLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSx5QkFBeUIsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLHlCQUF5QixDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sSUFBSSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFPLEtBQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTyxN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T0FBTyxlQUFlTCxHQUFJLFVBQVcsV0FBWSxDQUMvQyxLQUFNLENBQ0osT0FBTyxLQUFLRCxFQUFJLEVBQUUsUUFDcEIsRUFDQSxJQUFJTSxFQUFHLENBQ0xBLEVBQUlULEdBQVksVUFBYVMsQ0FBQyxFQUM5QixLQUFLTixFQUFJLEVBQUUsU0FBV00sQ0FDeEIsRUFDQSxXQUFZLEdBQ1osYUFBYyxFQUNoQixDQUFDLEVBRUQsT0FBTyxlQUFlTCxHQUFJLFVBQVcsV0FBWSxDQUMvQyxLQUFNLENBQ0osT0FBTyxLQUFLRCxFQUFJLEVBQUUsUUFDcEIsRUFDQSxJQUFJTSxFQUFHLENBQ0xBLEVBQUlULEdBQVksVUFBYVMsQ0FBQyxFQUM5QixLQUFLTixFQUFJLEVBQUUsU0FBV00sQ0FDeEIsRUFDQSxXQUFZLEdBQ1osYUFBYyxFQUNoQixDQUFDLEVBRUQsT0FBTyxlQUFlTCxHQUFJLFVBQVcsT0FBUSxDQUMzQyxLQUFNLENBQ0osT0FBTyxLQUFLRCxFQUFJLEVBQUUsSUFDcEIsRUFDQSxJQUFJTSxFQUFHLENBQ0xBLEVBQUlULEdBQVksVUFBYVMsQ0FBQyxFQUM5QixLQUFLTixFQUFJLEVBQUUsS0FBT00sQ0FDcEIsRUFDQSxXQUFZLEdBQ1osYUFBYyxFQUNoQixDQUFDLEVBRUQsT0FBTyxlQUFlTCxHQUFJLFVBQVcsV0FBWSxDQUMvQyxLQUFNLENBQ0osT0FBTyxLQUFLRCxFQUFJLEVBQUUsUUFDcEIsRUFDQSxJQUFJTSxFQUFHLENBQ0xBLEVBQUlULEdBQVksVUFBYVMsQ0FBQyxFQUM5QixLQUFLTixFQUFJLEVBQUUsU0FBV00sQ0FDeEIsRUFDQSxXQUFZLEdBQ1osYUFBYyxFQUNoQixDQUFDLEVBRUQsT0FBTyxlQUFlTCxHQUFJLFVBQVcsT0FBUSxDQUMzQyxLQUFNLENBQ0osT0FBTyxLQUFLRCxFQUFJLEVBQUUsSUFDcEIsRUFDQSxJQUFJTSxFQUFHLENBQ0xBLEVBQUlULEdBQVksVUFBYVMsQ0FBQyxFQUM5QixLQUFLTixFQUFJLEVBQUUsS0FBT00sQ0FDcEIsRUFDQSxXQUFZLEdBQ1osYUFBYyxF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LDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sZ3ZCQUErSCxFQUN2SSxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxndkJBQStILEVBQ3ZJLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLGd2QkFBK0gsRUFDdkksQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sZ3ZCQUErSCxFQUN2SSxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxndkJBQStILEVBQ3ZJLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLGd2QkFBK0gsRUFDdkksQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sZ3ZCQUErSCxFQUN2SSxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxndkJBQStILEVBQ3ZJLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLGd2QkFBK0gsRUFDdkksQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sZ3ZCQUErSCxFQUN2SSxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxndkJBQStILEVBQ3ZJLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLGd2QkFBK0gsRUFDdkksQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sZ3ZCQUErSCxFQUN2SSxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxndkJBQStILEVBQ3ZJLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLGd2QkFBK0gsRUFDdkksQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sZ3ZCQUErSCxFQUN2SSxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxndkJBQStILEVBQ3ZJLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLGdPQUF1QyxFQUMvQyxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxndkJBQStILEVBQ3ZJLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLGdwQkFBK0csRUFDdkgsQ0FBQyxPQUFPLFNBQUksRUFBRSwwQkFBTSxFQUNwQixDQUFDLE9BQU8sU0FBSSxFQUFFLEVBQ2QsQ0FBQyxPQUFPLFNBQUksR0FBRyxFQUNmLENBQUMsT0FBTyxTQUFJLEVBQUUsRUFDZCxDQUFDLE9BQU8sU0FBSSxHQUFHLEVBQ2YsQ0FBQyxPQUFPLFNBQUksRUFBRSxFQUNkLENBQUMsT0FBTyxTQUFJLEdBQUcsRUFDZixDQUFDLE9BQU8sU0FBSSxFQUFFLEVBQ2QsQ0FBQyxPQUFPLFNBQUksR0FBRyxFQUNmLENBQUMsT0FBTyxTQUFJLEVBQUUsRUFDZCxDQUFDLE9BQU8sU0FBSSxHQUFHLEVBQ2YsQ0FBQyxPQUFPLFNBQUksRUFBRSxFQUNkLENBQUMsT0FBTyxTQUFJLEdBQUcsRUFDZixDQUFDLE9BQU8sU0FBSSxFQUFFLEVBQ2QsQ0FBQyxPQUFPLFNBQUksR0FBRyxFQUNmLENBQUMsT0FBTyxTQUFJLEVBQUUsRUFDZCxDQUFDLE9BQU8sU0FBSSxHQUFHLEVBQ2YsQ0FBQyxPQUFPLFNBQUksRUFBRSxFQUNkLENBQUMsT0FBTyxTQUFJLEdBQUcsRUFDZixDQUFDLE9BQU8sUUFBRyxFQUNYLENBQUMsT0FBTyxTQUFJLEVBQUUsU0FBSSxFQUFFLG9RQUE2QyxFQUNqRSxDQUFDLE9BQU8sZ3ZCQUErSCxFQUN2SSxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxndkJBQStILEVBQ3ZJLENBQUMsT0FBTywwRUFBYyxDQUN0QixJQzVIQSxJQUFBQyxHQUFBQyxFQUFBLENBQUFDLElBQUFDLEtBQUEsQ0FBQUEsR0FBQSxTQUNBLENBQUMsSUFBSSxLQUFTLEdBQUcsRUFDakIsQ0FBQyxPQUFPLFNBQUksRUFBRSxFQUNkLENBQUMsT0FBTywyU0FBcUQsRUFBRSwwTUFBcUMsRUFDcEcsQ0FBQyxPQUFPLHNGQUFnQixFQUN4QixDQUFDLE9BQU8sa0RBQVUsRUFDbEIsQ0FBQyxPQUFPLDRDQUFTLEVBQ2pCLENBQUMsT0FBTyw0RkFBaUIsRUFDekIsQ0FBQyxPQUFPLGdEQUFVLEVBQ2xCLENBQUMsT0FBTyxRQUFHLEVBQ1gsQ0FBQyxPQUFPLFNBQUksQ0FBQyxFQUNiLENBQUMsT0FBTyxTQUFJLEVBQUUsRUFDZCxDQUFDLE9BQU8sU0FBSSxFQUFFLEVBQ2QsQ0FBQyxPQUFPLFNBQUksRUFBRSxFQUNkLENBQUMsT0FBTyxTQUFJLEVBQUUsRUFDZCxDQUFDLE9BQU8sU0FBSSxHQUFHLFNBQUksQ0FBQyxFQUNwQixDQUFDLE9BQU8sU0FBSSxHQUFHLFNBQUksQ0FBQyxFQUNwQixDQUFDLE9BQU8sU0FBSSxFQUFFLGVBQUssRUFBRSxFQUNyQixDQUFDLE9BQU8sU0FBSSxFQUFFLGVBQUssRUFBRSxFQUNyQixDQUFDLE9BQU8sa01BQWtDLEVBQzFDLENBQUMsT0FBTyxTQUFJLEdBQUcsU0FBSSxDQUFDLEVBQ3BCLENBQUMsT0FBTyw0SUFBeUIsRUFDakMsQ0FBQyxPQUFPLDZDQUFVLEVBQUUsb0hBQXFCLEVBQ3pDLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyxvVEFBcUQsRUFDN0QsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxP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QUFDLE9BQU8sU0FBSSxFQUFFLEVBQ2QsQ0FBQyxPQUFPLFNBQUksRUFBRSxFQUNkLENBQUMsT0FBTyxTQUFJLEVBQUUsRUFDZCxDQUFDLE9BQU8sU0FBSSxFQUFFLEVBQ2QsQ0FBQyxPQUFPLFNBQUksRUFBRSxFQUNkLENBQUMsT0FBTyxTQUFJLENBQUMsRUFDYixDQUFDLE9BQU8sU0FBSSxFQUFFLEVBQ2QsQ0FBQyxPQUFPLFNBQUksRUFBRSxFQUNkLENBQUMsT0FBTyxTQUFJLEVBQUUsRUFDZCxDQUFDLE9BQU8sU0FBSSxFQUFFLEVBQ2QsQ0FBQyxPQUFPLFNBQUksRUFBRSxFQUNkLENBQUMsT0FBTyxTQUFJLEVBQUUsRUFDZCxDQUFDLE9BQU8sNFJBQWlELEVBQ3pELENBQUMsT0FBTyx5SkFBNEIsRUFBRSxxQkFBTSxFQUFFLEVBQzlDLENBQUMsV0FBVyxRQUFHLENBQ2YsSUN2REEsSUFBQUMsR0FBQUMsRUFBQSxDQUFBQyxJQUFBQyxLQUFBLENBQUFBLEdBQUEsU0FBQyxPQUFTLENBQUMsSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLEtBQUssRUFBRSxRQUFVLENBQUMsRUFBRSxHQUFHLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxHQUFHLEdBQUcsSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLEtBQUssS0FBSyxLQUFLLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLE1BQU0sTUFBTSxNQUFNLEtBQU0sQ0FBQyxJQ0F2cUUsSUFBQUMsR0FBQUMsRUFBQSxDQUFBQyxJQUFBQyxLQUFBLENBQUFBLEdBQUEsU0FDQSxDQUFDLElBQUksS0FBUyxHQUFHLEVBQ2pCLENBQUMsT0FBTyxpQ0FBUSxFQUFFLDZDQUFVLEVBQUUsMEJBQU0sRUFDcEMsQ0FBQyxPQUFPLHlEQUFZLEVBQUUsZUFBSyxFQUFFLFFBQUcs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LE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sc2pCQUFnRyxDQUN4RyxJQ2hSQSxJQUFBQyxHQUFBQyxFQUFBLENBQUFDLElBQUFDLEtBQUEsQ0FBQUEsR0FBQSxTQUNBLENBQUMsSUFBSSxLQUFTLEdBQUcsRUFDakIsQ0FBQyxPQUFPLDBYQUFpRSxFQUN6RSxDQUFDLE9BQU8sNldBQWlFLEVBQUUsMEtBQThCLEVBQ3pHLENBQUMsT0FBTyxtTkFBc0MsRUFBRSxnSUFBdUIsRUFDdkUsQ0FBQyxPQUFPLDZGQUFrQixFQUFFLFNBQUksRUFBRSxTQUFJLEVBQUUsMkJBQU8sR0FBRyxTQUFJLEVBQUUsRUFDeEQsQ0FBQyxPQUFPLGlDQUFRLEdBQUcsU0FBSSxFQUFFLFNBQUksR0FBRyxTQUFJLEVBQUUsU0FBSSxFQUFFLEVBQzVDLENBQUMsT0FBTyxTQUFJLEdBQUcsZ0NBQU8sRUFDdEIsQ0FBQyxPQUFPLFFBQUcsRUFDWCxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FBTyxzakJBQWdHLEVBQ3hHLENBQUMsT0FBTyw0WEFBaUUsRUFDekUsQ0FBQyxPQUFPLHNqQkFBZ0csRUFDeEcsQ0FBQyxPQUFPLDRYQUFpRSxFQUN6RSxDQUFDLE9BQU8sc2pCQUFnRyxFQUN4RyxDQUFDLE9BQU8sNFhBQWlFLEVBQ3pFLENBQUMsT0FB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Q0FDcEQsWUFBYSxtQkFDZCxDQUNILENBUGdCRyxFQUFBRCxJQUFBLGlDQUFoQkQsR0FBQSw4QkFBQUMsdWdCQ1RBRSxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsbWZDMUNBLElBQUFDLEdBQUEsSUFlQUMsR0FBQSxJQVNBQyxHQUFBLEtBZ0JBLFNBQWdCQyxJQUFpRCxDQUkvRCxTQUFPRixHQUFBLGtCQUtMQSxHQUFBLFFBQ0UsQ0FDRSxDQUFDLFNBQU9DLEdBQUEsa0JBQWdCLENBQUUsRUFDMUIsQ0FBQyxVQUFRRCxHQUFBLElBQUUsQ0FBRSxFQUNiLENBQUMscUJBQW1CQSxHQUFBLFdBQU9BLEdBQUEsV0FBbUIsQ0FBRSxDQUFDLEdBRW5ELENBQUUsWUFBYSxzQ0FBc0MsQ0FBRSxFQUV4REcsSUFBVyxDQUFFLEdBQUdBLEVBQU8sSUFBS0YsR0FBQSxJQUFJLHlCQUF5QixFQUFHLENBS2pFLENBdEJnQkcsRUFBQUYsR0FBQSxxREFBaEJHLEdBQUEsa0RBQUFILEdBd0JBLFNBQWdCSSxHQUNkQyxFQUFzQixDQUV0QixTQUFPUixHQUFBLG9CQUNMUSxFQUNBTCxHQUFpRCxDQUFFLENBRXZELENBUGdCRSxFQUFBRSxHQUFBLHdDQUFoQkQsR0FBQSxxQ0FBQUMsR0FTTyxlQUFlRSxHQUNwQkMsRUFDQUMsRUFDQUMsRUFBOEIsQ0FFOUIsSUFBTUMsRUFBZSxNQUFNSCxFQUFRLElBQUksY0FDckNWLEdBQUEsV0FBWVcsRUFBVyxFQUFLLEVBQzVCQyxDQUFPLEVBRVQsU0FBQVosR0FBQSxxQkFBb0JhLEVBQWMsMkJBQTJCLEVBQ3RETixHQUFxQ00sQ0FBWSxDQUMxRCxDQVhzQlIsRUFBQUksR0FBQSxrQ0FBdEJILEdBQUEsK0JBQUFHLEdBYU8sZUFBZUssR0FDcEJKLEVBQ0FDLEVBQ0FDLEVBQThCLENBRTlCLElBQU1DLEVBQWUsTUFBTUgsRUFBUSxJQUFJLGNBQ3JDVixHQUFBLFdBQVlXLEVBQVcsRUFBSyxFQUM1QkMsQ0FBTyxFQUVULE9BQU9DLEVBQWEsT0FDaEJOLEdBQXFDTSxDQUFZLEVBQ2pELElBQ04sQ0Fac0JSLEVBQUFTLEdBQUEsc0NBQXRCUixHQUFBLG1DQUFBUSxHQWNPLGVBQWVDLElBQ3BCTCxFQUNBTSxFQUNBSixFQUErQixDQU0vQixPQUpzQixNQUFNRixFQUFRLElBQUksWUFDdENNLEVBQVcsSUFBS0MsTUFBUWpCLEdBQUEsV0FBWWlCLEVBQUssRUFBSyxDQUFDLEVBQy9DTCxDQUFPLEdBRVksSUFBS0MsT0FDeEJiLEdBQUEscUJBQW9CYSxFQUFjLDJCQUEyQixFQUN0RE4sR0FBcUNNLENBQVksRUFDekQsQ0FDSCxDQWJzQlIsRUFBQVUsSUFBQSxxQ0FBdEJULEdBQUEsa0NBQUFTLElBZU8sZUFBZUcsSUFDcEJSLEVBQ0FNLEVBQ0FKLEVBQStCLENBTS9CLE9BSnNCLE1BQU1GLEVBQVEsSUFBSSxZQUN0Q00sRUFBVyxJQUFLQyxNQUFRakIsR0FBQSxXQUFZaUIsRUFBSyxFQUFLLENBQUMsRUFDL0NMLENBQU8sR0FHTixPQUFRQyxHQUFpQkEsRUFBYSxNQUFNLEVBQzVDLElBQUtBLEdBQ0pOLEdBQXFDTSxDQUEwQixDQUFDLENBRXRFLENBZHNCUixFQUFBYSxJQUFBLHlDQUF0QlosR0FBQSxzQ0FBQVksSUFnQkEsU0FBZ0JDLElBQ2RULEVBQTBDLENBRTFDLElBQU1VLEVBQVlWLEVBQVEsU0FBUyxhQUNqQyxtQkFDQSw2Q0FBNkMsRUFFL0MsU0FBT1YsR0FBQSxZQUFXVSxFQUFTVSxDQUFTLEVBQ2pDLGVBSUUsQ0FDRCxJQUFLLENBQUMsS0FBR2xCLEdBQUEsa0JBQWdCLENBQUUsRUFDM0IsS0FBTSxDQUFDLEtBQUdELEdBQUEsSUFBRSxDQUFFLEVBQ2QsZ0JBQWlCLENBQUMsS0FBR0EsR0FBQSxXQUFPQSxHQUFBLFdBQW1CLENBQUUsQ0FBQyxFQUNuRCxFQUNBLGlCQUE2Q29CLEdBQzVDZCxHQUFxQ2MsQ0FBTyxDQUFDLEVBRTlDLFdBQVcsTUFBT25CLEdBQUEsSUFBSSx5QkFBeUIsQ0FDcEQsQ0FyQmdCRyxFQUFBYyxJQUFBLDBDQUFoQmIsR0FBQSx1Q0FBQWEsSUF1QkEsU0FBZ0JHLEdBQ2RaLEVBQ0FhLEVBS0MsQ0FFRCxJQUFNSCxFQUFZVixFQUFRLFNBQVMsYUFDakMsbUJBQ0EsNkNBQTZDLEVBRS9DLE9BQU9BLEVBQVEsTUFBTSxRQUFRVSxFQUFXLElBQ3RDbkIsR0FBQSxRQUFPLENBQUUsS0FBTSxVQUFVLENBQUUsRUFBRSxVQUFVLFVBQVUsS0FDakRBLEdBQUEsV0FBbUIsRUFBRyxVQUFVbUIsQ0FBUyxLQUN6Q25CLEdBQUEsV0FBbUIsRUFBRyxVQUFVc0IsRUFBTSxJQUFJLEtBQzFDdEIsR0FBQSxRQUFPLENBQUUsS0FBTSxVQUFVLENBQUUsRUFBRSxVQUFVLHNCQUFzQixLQUM3REEsR0FBQSxXQUFtQixFQUFHLFVBQVVzQixFQUFNLG1CQUFtQixFQUMxRCxDQUNILENBcEJnQmxCLEVBQUFpQixHQUFBLG9DQUFoQmhCLEdBQUEsaUNBQUFnQixHQXNCTyxlQUFlRSxJQUNwQmQsRUFDQWEsRUFDQVgsRUFBOEIsQ0FFOUIsT0FBT0gsR0FDTEMsRUFDQVksR0FBaUNaLEVBQVNhLENBQUssRUFDL0NYLENBQU8sQ0FFWCxDQVZzQlAsRUFBQW1CLElBQUEsMkNBQXRCbEIsR0FBQSx3Q0FBQWtCLElBWU8sZUFBZUMsSUFDcEJmLEVBQ0FhLEVBQ0FYLEVBQThCLENBRTlCLE9BQU9FLEdBQ0xKLEVBQ0FZLEdBQWlDWixFQUFTYSxDQUFLLEVBQy9DWCxDQUFPLENBRVgsQ0FWc0JQLEVBQUFvQixJQUFBLCtDQUF0Qm5CLEdBQUEsNENBQUFtQiwyUUM1TEEsSUFBQUMsR0FBQSxJQWFBQyxHQUFBLElBT0FDLEdBQUEsS0FlQSxTQUFnQkMsSUFBK0IsQ0FJN0MsU0FBT0YsR0FBQSxrQkFDTEEsR0FBQSxRQUNFLENBQ0UsQ0FBQyxTQUFPQyxHQUFBLGtCQUFnQixDQUFFLEVBQzFCLENBQUMsWUFBVUQsR0FBQSxXQUFtQixDQUFFLEVBQ2hDLENBQUMsYUFBV0EsR0FBQSxLQUFHLENBQUUsR0FFbkIsQ0FBRSxZQUFhLG9CQUFvQixDQUFFLEVBRXRDRyxJQUFXLENBQUUsR0FBR0EsRUFBTyxJQUFLRixHQUFBLElBQUksU0FBUyxFQUFHLENBRWpELENBZmdCRyxFQUFBRixHQUFBLG1DQUFoQkcsR0FBQSxnQ0FBQUgsR0FpQkEsU0FBZ0JJLEdBQW1CQyxFQUFzQixDQUN2RCxTQUFPUixHQUFBLG9CQUFtQlEsRUFBWUwsR0FBK0IsQ0FBRSxDQUN6RSxDQUZnQkUsRUFBQUUsR0FBQSxzQkFBaEJELEdBQUEsbUJBQUFDLEdBSU8sZUFBZUUsSUFDcEJDLEVBQ0FDLEVBQ0FDLEVBQThCLENBRTlCLElBQU1DLEVBQWUsTUFBTUgsRUFBUSxJQUFJLGNBQ3JDVixHQUFBLFdBQVlXLEVBQVcsRUFBSyxFQUM1QkMsQ0FBTyxFQUVULFNBQUFaLEdBQUEscUJBQW9CYSxFQUFjLFNBQVMsRUFDcENOLEdBQW1CTSxDQUFZLENBQ3hDLENBWHNCUixFQUFBSSxJQUFBLGdCQUF0QkgsR0FBQSxhQUFBRyxJQWFPLGVBQWVLLElBQ3BCSixFQUNBQyxFQUNBQyxFQUE4QixDQUU5QixJQUFNQyxFQUFlLE1BQU1ILEVBQVEsSUFBSSxjQUNyQ1YsR0FBQSxXQUFZVyxFQUFXLEVBQUssRUFDNUJDLENBQU8sRUFFVCxPQUFPQyxFQUFhLE9BQVNOLEdBQW1CTSxDQUFZLEVBQUksSUFDbEUsQ0FWc0JSLEVBQUFTLElBQUEsb0JBQXRCUixHQUFBLGlCQUFBUSxJQVlPLGVBQWVDLElBQ3BCTCxFQUNBTSxFQUNBSixFQUErQixDQU0vQixPQUpzQixNQUFNRixFQUFRLElBQUksWUFDdENNLEVBQVcsSUFBS0MsTUFBUWpCLEdBQUEsV0FBWWlCLEVBQUssRUFBSyxDQUFDLEVBQy9DTCxDQUFPLEdBRVksSUFBS0MsT0FDeEJiLEdBQUEscUJBQW9CYSxFQUFjLFNBQVMsRUFDcENOLEdBQW1CTSxDQUFZLEVBQ3ZDLENBQ0gsQ0Fic0JSLEVBQUFVLElBQUEsbUJBQXRCVCxHQUFBLGdCQUFBUyxJQWVPLGVBQWVHLElBQ3BCUixFQUNBTSxFQUNBSixFQUErQixDQU0vQixPQUpzQixNQUFNRixFQUFRLElBQUksWUFDdENNLEVBQVcsSUFBS0MsTUFBUWpCLEdBQUEsV0FBWWlCLEVBQUssRUFBSyxDQUFDLEVBQy9DTCxDQUFPLEdBR04sT0FBUUMsR0FBaUJBLEVBQWEsTUFBTSxFQUM1QyxJQUFLQSxHQUFpQk4sR0FBbUJNLENBQTBCLENBQUMsQ0FDekUsQ0Fac0JSLEVBQUFhLElBQUEsdUJBQXRCWixHQUFBLG9CQUFBWSxJQWNBLFNBQWdCQyxJQUNkVCxFQUEwQyxDQUUxQyxJQUFNVSxFQUFZVixFQUFRLFNBQVMsYUFDakMsbUJBQ0EsNkNBQTZDLEVBRS9DLFNBQU9WLEdBQUEsWUFBV1UsRUFBU1UsQ0FBUyxFQUNqQyxlQUlFLENBQ0QsSUFBSyxDQUFDLEtBQUdsQixHQUFBLGtCQUFnQixDQUFFLEVBQzNCLE9BQVEsQ0FBQyxLQUFHRCxHQUFBLFdBQW1CLENBQUUsRUFDakMsUUFBUyxDQUFDLE1BQUlBLEdBQUEsS0FBRyxDQUFFLEVBQ3BCLEVBQ0EsaUJBQTJCb0IsR0FBWWQsR0FBbUJjLENBQU8sQ0FBQyxFQUNsRSxXQUFXLE1BQU9uQixHQUFBLElBQUksU0FBUyxDQUNwQyxDQW5CZ0JHLEVBQUFjLElBQUEsd0JBQWhCYixHQUFBLHFCQUFBYSxJQXFCQSxTQUFnQkcsS0FBYyxDQUM1QixNQUFPLEdBQ1QsQ0FGZ0JqQixFQUFBaUIsSUFBQSxrQkFBaEJoQixHQUFBLGVBQUFnQixxWkNuSUEsSUFBQUMsR0FBQSxJQWFBQyxHQUFBLElBU0FDLEdBQUEsS0FRQSxTQUFnQkMsSUFBcUMsQ0FJbkQsU0FBT0YsR0FBQSxrQkFLTEEsR0FBQSxRQUNFLENBQ0UsQ0FBQyxTQUFPQyxHQUFBLGtCQUFnQixDQUFFLEVBQzFCLENBQUMsWUFBVUQsR0FBQSxVQUFNQSxHQUFBLElBQUUsRUFBSSxDQUFFLEtBQU0sRUFBRSxDQUFFLENBQUMsR0FFdEMsQ0FBRSxZQUFhLDBCQUEwQixDQUFFLEVBRTVDRyxJQUFXLENBQUUsR0FBR0EsRUFBTyxJQUFLRixHQUFBLElBQUksYUFBYSxFQUFHLENBRXJELENBbEJnQkcsRUFBQUYsR0FBQSx5Q0FBaEJHLEdBQUEsc0NBQUFILEdBb0JBLFNBQWdCSSxHQUNkQyxFQUFzQixDQUV0QixTQUFPUixHQUFBLG9CQUNMUSxFQUNBTCxHQUFxQyxDQUFFLENBRTNDLENBUGdCRSxFQUFBRSxHQUFBLDRCQUFoQkQsR0FBQSx5QkFBQUMsR0FTTyxlQUFlRSxHQUNwQkMsRUFDQUMsRUFDQUMsRUFBOEIsQ0FFOUIsSUFBTUMsRUFBZSxNQUFNSCxFQUFRLElBQUksY0FDckNWLEdBQUEsV0FBWVcsRUFBVyxFQUFLLEVBQzVCQyxDQUFPLEVBRVQsU0FBQVosR0FBQSxxQkFBb0JhLEVBQWMsZUFBZSxFQUMxQ04sR0FBeUJNLENBQVksQ0FDOUMsQ0FYc0JSLEVBQUFJLEdBQUEsc0JBQXRCSCxHQUFBLG1CQUFBRyxHQWFPLGVBQWVLLEdBQ3BCSixFQUNBQyxFQUNBQyxFQUE4QixDQUU5QixJQUFNQyxFQUFlLE1BQU1ILEVBQVEsSUFBSSxjQUNyQ1YsR0FBQSxXQUFZVyxFQUFXLEVBQUssRUFDNUJDLENBQU8sRUFFVCxPQUFPQyxFQUFhLE9BQVNOLEdBQXlCTSxDQUFZLEVBQUksSUFDeEUsQ0FWc0JSLEVBQUFTLEdBQUEsMEJBQXRCUixHQUFBLHVCQUFBUSxHQVlPLGVBQWVDLElBQ3BCTCxFQUNBTSxFQUNBSixFQUErQixDQU0vQixPQUpzQixNQUFNRixFQUFRLElBQUksWUFDdENNLEVBQVcsSUFBS0MsTUFBUWpCLEdBQUEsV0FBWWlCLEVBQUssRUFBSyxDQUFDLEVBQy9DTCxDQUFPLEdBRVksSUFBS0MsT0FDeEJiLEdBQUEscUJBQW9CYSxFQUFjLGVBQWUsRUFDMUNOLEdBQXlCTSxDQUFZLEVBQzdDLENBQ0gsQ0Fic0JSLEVBQUFVLElBQUEseUJBQXRCVCxHQUFBLHNCQUFBUyxJQWVPLGVBQWVHLElBQ3BCUixFQUNBTSxFQUNBSixFQUErQixDQU0vQixPQUpzQixNQUFNRixFQUFRLElBQUksWUFDdENNLEVBQVcsSUFBS0MsTUFBUWpCLEdBQUEsV0FBWWlCLEVBQUssRUFBSyxDQUFDLEVBQy9DTCxDQUFPLEdBR04sT0FBUUMsR0FBaUJBLEVBQWEsTUFBTSxFQUM1QyxJQUFLQSxHQUNKTixHQUF5Qk0sQ0FBMEIsQ0FBQyxDQUUxRCxDQWRzQlIsRUFBQWEsSUFBQSw2QkFBdEJaLEdBQUEsMEJBQUFZLElBZ0JBLFNBQWdCQyxJQUNkVCxFQUEwQyxDQUUxQyxJQUFNVSxFQUFZVixFQUFRLFNBQVMsYUFDakMsbUJBQ0EsNkNBQTZDLEVBRS9DLFNBQU9WLEdBQUEsWUFBV1UsRUFBU1UsQ0FBUyxFQUNqQyxlQUF3RCxDQUN2RCxJQUFLLENBQUMsS0FBR2xCLEdBQUEsa0JBQWdCLENBQUUsRUFDM0IsT0FBUSxDQUFDLEtBQUdELEdBQUEsVUFBTUEsR0FBQSxJQUFFLEVBQUksQ0FBRSxLQUFNLEVBQUUsQ0FBRSxDQUFDLEVBQ3RDLEVBQ0EsaUJBQWlDb0IsR0FDaENkLEdBQXlCYyxDQUFPLENBQUMsRUFFbEMsV0FBVyxNQUFPbkIsR0FBQSxJQUFJLGFBQWEsQ0FDeEMsQ0FoQmdCRyxFQUFBYyxJQUFBLDhCQUFoQmIsR0FBQSwyQkFBQWEsSUFrQkEsU0FBZ0JHLEtBQW9CLENBQ2xDLE1BQU8sR0FDVCxDQUZnQmpCLEVBQUFpQixJQUFBLHdCQUFoQmhCLEdBQUEscUJBQUFnQixJQUlBLFNBQWdCQyxHQUNkYixFQUNBYyxFQUtDLENBRUQsSUFBTUosRUFBWVYsRUFBUSxTQUFTLGFBQ2pDLG1CQUNBLDZDQUE2QyxFQUUvQyxPQUFPQSxFQUFRLE1BQU0sUUFBUVUsRUFBVyxJQUN0Q25CLEdBQUEsUUFBTyxDQUFFLEtBQU0sVUFBVSxDQUFFLEVBQUUsVUFBVSxVQUFVLEtBQ2pEQSxHQUFBLFdBQW1CLEVBQUcsVUFBVW1CLENBQVMsS0FDekNuQixHQUFBLFdBQW1CLEVBQUcsVUFBVXVCLEVBQU0sSUFBSSxLQUMxQ3ZCLEdBQUEsUUFBTyxDQUFFLEtBQU0sVUFBVSxDQUFFLEVBQUUsVUFBVSxTQUFTLEtBQ2hEQSxHQUFBLFFBQU8sQ0FBRSxLQUFNLFVBQVUsQ0FBRSxFQUFFLFVBQVV1QixFQUFNLGFBQWEsRUFDM0QsQ0FDSCxDQXBCZ0JuQixFQUFBa0IsR0FBQSx3QkFBaEJqQixHQUFBLHFCQUFBaUIsR0FzQk8sZUFBZUUsSUFDcEJmLEVBQ0FjLEVBQ0FaLEVBQThCLENBRTlCLE9BQU9ILEdBQ0xDLEVBQ0FhLEdBQXFCYixFQUFTYyxDQUFLLEVBQ25DWixDQUFPLENBRVgsQ0FWc0JQLEVBQUFvQixJQUFBLCtCQUF0Qm5CLEdBQUEsNEJBQUFtQixJQVlPLGVBQWVDLElBQ3BCaEIsRUFDQWMsRUFDQVosRUFBOEIsQ0FFOUIsT0FBT0UsR0FDTEosRUFDQWEsR0FBcUJiLEVBQVNjLENBQUssRUFDbkNaLENBQU8sQ0FFWCxDQVZzQlAsRUFBQXFCLElBQUEsbUNBQXRCcEIsR0FBQSxnQ0FBQW9CLGlaQzNLQSxJQUFBQyxHQUFBLElBYUFDLEdBQUEsSUFRQUMsR0FBQSxLQVdBLFNBQWdCQyxJQUF1QyxDQUlyRCxTQUFPRixHQUFBLFFBQ0wsQ0FDRSxDQUFDLFNBQU9DLEdBQUEsa0JBQWdCLENBQUUsRUFDMUIsQ0FBQyxZQUFVRCxHQUFBLE9BQU0sQ0FBRSxRQUFNQSxHQUFBLEtBQUcsQ0FBRSxDQUFFLENBQUMsR0FFbkMsQ0FBRSxZQUFhLDRCQUE0QixDQUFFLENBRWpELENBWGdCRyxFQUFBRCxHQUFBLDJDQUFoQkUsR0FBQSx3Q0FBQUYsR0FhQSxTQUFnQkcsR0FDZEMsRUFBc0IsQ0FFdEIsU0FBT1AsR0FBQSxvQkFDTE8sRUFDQUosR0FBdUMsQ0FBRSxDQUU3QyxDQVBnQkMsRUFBQUUsR0FBQSw4QkFBaEJELEdBQUEsMkJBQUFDLEdBU08sZUFBZUUsR0FDcEJDLEVBQ0FDLEVBQ0FDLEVBQThCLENBRTlCLElBQU1DLEVBQWUsTUFBTUgsRUFBUSxJQUFJLGNBQ3JDVCxHQUFBLFdBQVlVLEVBQVcsRUFBSyxFQUM1QkMsQ0FBTyxFQUVULFNBQUFYLEdBQUEscUJBQW9CWSxFQUFjLGlCQUFpQixFQUM1Q04sR0FBMkJNLENBQVksQ0FDaEQsQ0FYc0JSLEVBQUFJLEdBQUEsd0JBQXRCSCxHQUFBLHFCQUFBRyxHQWFPLGVBQWVLLEdBQ3BCSixFQUNBQyxFQUNBQyxFQUE4QixDQUU5QixJQUFNQyxFQUFlLE1BQU1ILEVBQVEsSUFBSSxjQUNyQ1QsR0FBQSxXQUFZVSxFQUFXLEVBQUssRUFDNUJDLENBQU8sRUFFVCxPQUFPQyxFQUFhLE9BQVNOLEdBQTJCTSxDQUFZLEVBQUksSUFDMUUsQ0FWc0JSLEVBQUFTLEdBQUEsNEJBQXRCUixHQUFBLHlCQUFBUSxHQVlPLGVBQWVDLElBQ3BCTCxFQUNBTSxFQUNBSixFQUErQixDQU0vQixPQUpzQixNQUFNRixFQUFRLElBQUksWUFDdENNLEVBQVcsSUFBS0MsTUFBUWhCLEdBQUEsV0FBWWdCLEVBQUssRUFBSyxDQUFDLEVBQy9DTCxDQUFPLEdBRVksSUFBS0MsT0FDeEJaLEdBQUEscUJBQW9CWSxFQUFjLGlCQUFpQixFQUM1Q04sR0FBMkJNLENBQVksRUFDL0MsQ0FDSCxDQWJzQlIsRUFBQVUsSUFBQSwyQkFBdEJULEdBQUEsd0JBQUFTLElBZU8sZUFBZUcsSUFDcEJSLEVBQ0FNLEVBQ0FKLEVBQStCLENBTS9CLE9BSnNCLE1BQU1GLEVBQVEsSUFBSSxZQUN0Q00sRUFBVyxJQUFLQyxNQUFRaEIsR0FBQSxXQUFZZ0IsRUFBSyxFQUFLLENBQUMsRUFDL0NMLENBQU8sR0FHTixPQUFRQyxHQUFpQkEsRUFBYSxNQUFNLEVBQzVDLElBQUtBLEdBQ0pOLEdBQTJCTSxDQUEwQixDQUFDLENBRTVELENBZHNCUixFQUFBYSxJQUFBLCtCQUF0QlosR0FBQSw0QkFBQVksSUFnQkEsU0FBZ0JDLElBQ2RULEVBQTBDLENBRTFDLElBQU1VLEVBQVlWLEVBQVEsU0FBUyxhQUNqQyxtQkFDQSw2Q0FBNkMsRUFFL0MsU0FBT1QsR0FBQSxZQUFXUyxFQUFTVSxDQUFTLEVBQ2pDLGVBQXFELENBQ3BELElBQUssQ0FBQyxLQUFHakIsR0FBQSxrQkFBZ0IsQ0FBRSxFQUMzQixPQUFRLENBQUMsS0FBR0QsR0FBQSxPQUFNLENBQUUsUUFBTUEsR0FBQSxLQUFHLENBQUUsQ0FBRSxDQUFDLEVBQ25DLEVBQ0EsaUJBQW1DbUIsR0FDbENkLEdBQTJCYyxDQUFPLENBQUMsQ0FFekMsQ0FmZ0JoQixFQUFBYyxJQUFBLGdDQUFoQmIsR0FBQSw2QkFBQWEsSUFpQkEsU0FBZ0JHLEdBQ2RaLEVBQ0FhLEVBR0MsQ0FFRCxJQUFNSCxFQUFZVixFQUFRLFNBQVMsYUFDakMsbUJBQ0EsNkNBQTZDLEVBRS9DLE9BQU9BLEVBQVEsTUFBTSxRQUFRVSxFQUFXLElBQ3RDbEIsR0FBQSxRQUFPLENBQUUsS0FBTSxVQUFVLENBQUUsRUFBRSxVQUFVLFVBQVUsS0FDakRBLEdBQUEsV0FBbUIsRUFBRyxVQUFVa0IsQ0FBUyxLQUN6Q2xCLEdBQUEsV0FBbUIsRUFBRyxVQUFVcUIsRUFBTSxJQUFJLEtBQzFDckIsR0FBQSxRQUFPLENBQUUsS0FBTSxVQUFVLENBQUUsRUFBRSxVQUFVLFNBQVMsS0FDaERBLEdBQUEsUUFBTyxDQUFFLEtBQU0sVUFBVSxDQUFFLEVBQUUsVUFBVSxRQUFRLEVBQ2hELENBQ0gsQ0FsQmdCRyxFQUFBaUIsR0FBQSwwQkFBaEJoQixHQUFBLHVCQUFBZ0IsR0FvQk8sZUFBZUUsSUFDcEJkLEVBQ0FhLEVBQ0FYLEVBQThCLENBRTlCLE9BQU9ILEdBQ0xDLEVBQ0FZLEdBQXVCWixFQUFTYSxDQUFLLEVBQ3JDWCxDQUFPLENBRVgsQ0FWc0JQLEVBQUFtQixJQUFBLGlDQUF0QmxCLEdBQUEsOEJBQUFrQixJQVlPLGVBQWVDLElBQ3BCZixFQUNBYSxFQUNBWCxFQUE4QixDQUU5QixPQUFPRSxHQUNMSixFQUNBWSxHQUF1QlosRUFBU2EsQ0FBSyxFQUNyQ1gsQ0FBTyxDQUVYLENBVnNCUCxFQUFBb0IsSUFBQSxxQ0FBdEJuQixHQUFBLGtDQUFBbUIsNlhDL0pBLElBQUFDLEdBQUEsSUFlQUMsR0FBQSxJQVNBQyxHQUFBLEtBZUEsU0FBZ0JDLElBQXFDLENBSW5ELFNBQU9GLEdBQUEsa0JBS0xBLEdBQUEsUUFDRSxDQUNFLENBQUMsU0FBT0MsR0FBQSxrQkFBZ0IsQ0FBRSxFQUMxQixDQUFDLFlBQVVELEdBQUEsS0FBRyxDQUFFLEVBQ2hCLENBQUMsZUFBYUEsR0FBQSxXQUFPQSxHQUFBLEtBQUcsQ0FBRSxDQUFDLEdBRTdCLENBQUUsWUFBYSwwQkFBMEIsQ0FBRSxFQUU1Q0csSUFBVyxDQUFFLEdBQUdBLEVBQU8sSUFBS0YsR0FBQSxJQUFJLGVBQWUsRUFBRyxDQUV2RCxDQW5CZ0JHLEVBQUFGLEdBQUEseUNBQWhCRyxHQUFBLHNDQUFBSCxHQXFCQSxTQUFnQkksR0FDZEMsRUFBc0IsQ0FFdEIsU0FBT1IsR0FBQSxvQkFDTFEsRUFDQUwsR0FBcUMsQ0FBRSxDQUUzQyxDQVBnQkUsRUFBQUUsR0FBQSw0QkFBaEJELEdBQUEseUJBQUFDLEdBU08sZUFBZUUsR0FDcEJDLEVBQ0FDLEVBQ0FDLEVBQThCLENBRTlCLElBQU1DLEVBQWUsTUFBTUgsRUFBUSxJQUFJLGNBQ3JDVixHQUFBLFdBQVlXLEVBQVcsRUFBSyxFQUM1QkMsQ0FBTyxFQUVULFNBQUFaLEdBQUEscUJBQW9CYSxFQUFjLGVBQWUsRUFDMUNOLEdBQXlCTSxDQUFZLENBQzlDLENBWHNCUixFQUFBSSxHQUFBLHNCQUF0QkgsR0FBQSxtQkFBQUcsR0FhTyxlQUFlSyxHQUNwQkosRUFDQUMsRUFDQUMsRUFBOEIsQ0FFOUIsSUFBTUMsRUFBZSxNQUFNSCxFQUFRLElBQUksY0FDckNWLEdBQUEsV0FBWVcsRUFBVyxFQUFLLEVBQzVCQyxDQUFPLEVBRVQsT0FBT0MsRUFBYSxPQUFTTixHQUF5Qk0sQ0FBWSxFQUFJLElBQ3hFLENBVnNCUixFQUFBUyxHQUFBLDBCQUF0QlIsR0FBQSx1QkFBQVEsR0FZTyxlQUFlQyxJQUNwQkwsRUFDQU0sRUFDQUosRUFBK0IsQ0FNL0IsT0FKc0IsTUFBTUYsRUFBUSxJQUFJLFlBQ3RDTSxFQUFXLElBQUtDLE1BQVFqQixHQUFBLFdBQVlpQixFQUFLLEVBQUssQ0FBQyxFQUMvQ0wsQ0FBTyxHQUVZLElBQUtDLE9BQ3hCYixHQUFBLHFCQUFvQmEsRUFBYyxlQUFlLEVBQzFDTixHQUF5Qk0sQ0FBWSxFQUM3QyxDQUNILENBYnNCUixFQUFBVSxJQUFBLHlCQUF0QlQsR0FBQSxzQkFBQVMsSUFlTyxlQUFlRyxJQUNwQlIsRUFDQU0sRUFDQUosRUFBK0IsQ0FNL0IsT0FKc0IsTUFBTUYsRUFBUSxJQUFJLFlBQ3RDTSxFQUFXLElBQUtDLE1BQVFqQixHQUFBLFdBQVlpQixFQUFLLEVBQUssQ0FBQyxFQUMvQ0wsQ0FBTyxHQUdOLE9BQVFDLEdBQWlCQSxFQUFhLE1BQU0sRUFDNUMsSUFBS0EsR0FDSk4sR0FBeUJNLENBQTBCLENBQUMsQ0FFMUQsQ0Fkc0JSLEVBQUFhLElBQUEsNkJBQXRCWixHQUFBLDBCQUFBWSxJQWdCQSxTQUFnQkMsSUFDZFQsRUFBMEMsQ0FFMUMsSUFBTVUsRUFBWVYsRUFBUSxTQUFTLGFBQ2pDLG1CQUNBLDZDQUE2QyxFQUUvQyxTQUFPVixHQUFBLFlBQVdVLEVBQVNVLENBQVMsRUFDakMsZUFJRSxDQUNELElBQUssQ0FBQyxLQUFHbEIsR0FBQSxrQkFBZ0IsQ0FBRSxFQUMzQixPQUFRLENBQUMsS0FBR0QsR0FBQSxLQUFHLENBQUUsRUFDakIsVUFBVyxDQUFDLEtBQUdBLEdBQUEsV0FBT0EsR0FBQSxLQUFHLENBQUUsQ0FBQyxFQUM3QixFQUNBLGlCQUFpQ29CLEdBQ2hDZCxHQUF5QmMsQ0FBTyxDQUFDLEVBRWxDLFdBQVcsTUFBT25CLEdBQUEsSUFBSSxlQUFlLENBQzFDLENBckJnQkcsRUFBQWMsSUFBQSw4QkFBaEJiLEdBQUEsMkJBQUFhLElBdUJBLFNBQWdCRyxHQUNkWixFQUNBYSxFQUdDLENBRUQsSUFBTUgsRUFBWVYsRUFBUSxTQUFTLGFBQ2pDLG1CQUNBLDZDQUE2QyxFQUUvQyxPQUFPQSxFQUFRLE1BQU0sUUFBUVUsRUFBVyxJQUN0Q25CLEdBQUEsUUFBTyxDQUFFLEtBQU0sVUFBVSxDQUFFLEVBQUUsVUFBVSxVQUFVLEtBQ2pEQSxHQUFBLFdBQW1CLEVBQUcsVUFBVW1CLENBQVMsS0FDekNuQixHQUFBLFdBQW1CLEVBQUcsVUFBVXNCLEVBQU0sSUFBSSxLQUMxQ3RCLEdBQUEsUUFBTyxDQUFFLEtBQU0sVUFBVSxDQUFFLEVBQUUsVUFBVSxTQUFTLEVBQ2pELENBQ0gsQ0FqQmdCSSxFQUFBaUIsR0FBQSx3QkFBaEJoQixHQUFBLHFCQUFBZ0IsR0FtQk8sZUFBZUUsSUFDcEJkLEVBQ0FhLEVBQ0FYLEVBQThCLENBRTlCLE9BQU9ILEdBQ0xDLEVBQ0FZLEdBQXFCWixFQUFTYSxDQUFLLEVBQ25DWCxDQUFPLENBRVgsQ0FWc0JQLEVBQUFtQixJQUFBLCtCQUF0QmxCLEdBQUEsNEJBQUFrQixJQVlPLGVBQWVDLElBQ3BCZixFQUNBYSxFQUNBWCxFQUE4QixDQUU5QixPQUFPRSxHQUNMSixFQUNBWSxHQUFxQlosRUFBU2EsQ0FBSyxFQUNuQ1gsQ0FBTyxDQUVYLENBVnNCUCxFQUFBb0IsSUFBQSxtQ0FBdEJuQixHQUFBLGdDQUFBbUIsMlVDbkxBLElBQUFDLEdBQUEsSUFlQUMsR0FBQSxJQVlBQyxHQUFBLEtBK0RBLFNBQWdCQyxJQUFnQyxDQUk5QyxTQUFPRixHQUFBLGtCQUNMQSxHQUFBLFFBQ0UsQ0FDRSxDQUFDLFNBQU9DLEdBQUEsa0JBQWdCLENBQUUsRUFDMUIsQ0FBQyxxQkFBbUJELEdBQUEsV0FBbUIsQ0FBRSxFQUN6QyxDQUFDLFVBQVFBLEdBQUEsV0FBbUIsQ0FBRSxFQUM5QixDQUFDLFVBQVFBLEdBQUEsUUFBTSxDQUFFLEVBQ2pCLENBQUMsWUFBVUEsR0FBQSxRQUFNLENBQUUsRUFDbkIsQ0FBQyxTQUFPQSxHQUFBLFFBQU0sQ0FBRSxFQUNoQixDQUFDLDBCQUF3QkEsR0FBQSxLQUFHLENBQUUsRUFDOUIsQ0FBQyxjQUFZQSxHQUFBLFdBQU9BLEdBQUEsVUFBTUMsR0FBQSxzQkFBb0IsQ0FBRSxDQUFDLENBQUMsRUFDbEQsQ0FBQyx5QkFBdUJELEdBQUEsTUFBSSxDQUFFLEVBQzlCLENBQUMsZUFBYUEsR0FBQSxNQUFJLENBQUUsRUFDcEIsQ0FBQyxrQkFBZ0JBLEdBQUEsV0FBT0EsR0FBQSxJQUFFLENBQUUsQ0FBQyxFQUM3QixDQUFDLG1CQUFpQkEsR0FBQSxXQUFPQyxHQUFBLDRCQUEwQixDQUFFLENBQUMsRUFDdEQsQ0FBQyxnQkFBY0QsR0FBQSxXQUFPQyxHQUFBLHlCQUF1QixDQUFFLENBQUMsRUFDaEQsQ0FBQyxVQUFRRCxHQUFBLFdBQU9DLEdBQUEsbUJBQWlCLENBQUUsQ0FBQyxFQUNwQyxDQUFDLHVCQUFxQkQsR0FBQSxXQUFPQyxHQUFBLGdDQUE4QixDQUFFLENBQUMsRUFDOUQsQ0FBQyx3QkFBc0JELEdBQUEsV0FBT0MsR0FBQSxpQ0FBK0IsQ0FBRSxDQUFDLEdBRWxFLENBQUUsWUFBYSxxQkFBcUIsQ0FBRSxFQUV2Q0UsSUFBVyxDQUFFLEdBQUdBLEVBQU8sSUFBS0YsR0FBQSxJQUFJLFVBQVUsRUFBRyxDQUVsRCxDQTVCZ0JHLEVBQUFGLEdBQUEsb0NBQWhCRyxHQUFBLGlDQUFBSCxHQThCQSxTQUFnQkksR0FBb0JDLEVBQXNCLENBQ3hELFNBQU9SLEdBQUEsb0JBQW1CUSxFQUFZTCxHQUFnQyxDQUFFLENBQzFFLENBRmdCRSxFQUFBRSxHQUFBLHVCQUFoQkQsR0FBQSxvQkFBQUMsR0FJTyxlQUFlRSxHQUNwQkMsRUFDQUMsRUFDQUMsRUFBOEIsQ0FFOUIsSUFBTUMsRUFBZSxNQUFNSCxFQUFRLElBQUksY0FDckNWLEdBQUEsV0FBWVcsRUFBVyxFQUFLLEVBQzVCQyxDQUFPLEVBRVQsU0FBQVosR0FBQSxxQkFBb0JhLEVBQWMsVUFBVSxFQUNyQ04sR0FBb0JNLENBQVksQ0FDekMsQ0FYc0JSLEVBQUFJLEdBQUEsaUJBQXRCSCxHQUFBLGNBQUFHLEdBYU8sZUFBZUssR0FDcEJKLEVBQ0FDLEVBQ0FDLEVBQThCLENBRTlCLElBQU1DLEVBQWUsTUFBTUgsRUFBUSxJQUFJLGNBQ3JDVixHQUFBLFdBQVlXLEVBQVcsRUFBSyxFQUM1QkMsQ0FBTyxFQUVULE9BQU9DLEVBQWEsT0FBU04sR0FBb0JNLENBQVksRUFBSSxJQUNuRSxDQVZzQlIsRUFBQVMsR0FBQSxxQkFBdEJSLEdBQUEsa0JBQUFRLEdBWU8sZUFBZUMsSUFDcEJMLEVBQ0FNLEVBQ0FKLEVBQStCLENBTS9CLE9BSnNCLE1BQU1GLEVBQVEsSUFBSSxZQUN0Q00sRUFBVyxJQUFLQyxNQUFRakIsR0FBQSxXQUFZaUIsRUFBSyxFQUFLLENBQUMsRUFDL0NMLENBQU8sR0FFWSxJQUFLQyxPQUN4QmIsR0FBQSxxQkFBb0JhLEVBQWMsVUFBVSxFQUNyQ04sR0FBb0JNLENBQVksRUFDeEMsQ0FDSCxDQWJzQlIsRUFBQVUsSUFBQSxvQkFBdEJULEdBQUEsaUJBQUFTLElBZU8sZUFBZUcsSUFDcEJSLEVBQ0FNLEVBQ0FKLEVBQStCLENBTS9CLE9BSnNCLE1BQU1GLEVBQVEsSUFBSSxZQUN0Q00sRUFBVyxJQUFLQyxNQUFRakIsR0FBQSxXQUFZaUIsRUFBSyxFQUFLLENBQUMsRUFDL0NMLENBQU8sR0FHTixPQUFRQyxHQUFpQkEsRUFBYSxNQUFNLEVBQzVDLElBQUtBLEdBQWlCTixHQUFvQk0sQ0FBMEIsQ0FBQyxDQUMxRSxDQVpzQlIsRUFBQWEsSUFBQSx3QkFBdEJaLEdBQUEscUJBQUFZLElBY0EsU0FBZ0JDLElBQ2RULEVBQTBDLENBRTFDLElBQU1VLEVBQVlWLEVBQVEsU0FBUyxhQUNqQyxtQkFDQSw2Q0FBNkMsRUFFL0MsU0FBT1YsR0FBQSxZQUFXVSxFQUFTVSxDQUFTLEVBQ2pDLGVBaUJFLENBQ0QsSUFBSyxDQUFDLEtBQUdsQixHQUFBLGtCQUFnQixDQUFFLEVBQzNCLGdCQUFpQixDQUFDLEtBQUdELEdBQUEsV0FBbUIsQ0FBRSxFQUMxQyxLQUFNLENBQUMsTUFBSUEsR0FBQSxXQUFtQixDQUFFLEVBQ2hDLEtBQU0sQ0FBQyxNQUFJQSxHQUFBLFFBQU0sQ0FBRSxFQUNuQixPQUFRLENBQUMsUUFBTUEsR0FBQSxRQUFNLENBQUUsRUFDdkIsSUFBSyxDQUFDLFFBQU1BLEdBQUEsUUFBTSxDQUFFLEVBQ3BCLHFCQUFzQixDQUFDLFFBQU1BLEdBQUEsS0FBRyxDQUFFLEVBQ2xDLFNBQVUsQ0FBQyxRQUFNQSxHQUFBLFdBQU9BLEdBQUEsVUFBTUMsR0FBQSxzQkFBb0IsQ0FBRSxDQUFDLENBQUMsRUFDdEQsb0JBQXFCLENBQUMsUUFBTUQsR0FBQSxNQUFJLENBQUUsRUFDbEMsVUFBVyxDQUFDLFFBQU1BLEdBQUEsTUFBSSxDQUFFLEVBQ3hCLGFBQWMsQ0FBQyxRQUFNQSxHQUFBLFdBQU9BLEdBQUEsSUFBRSxDQUFFLENBQUMsRUFDakMsY0FBZSxDQUFDLFFBQU1BLEdBQUEsV0FBT0MsR0FBQSw0QkFBMEIsQ0FBRSxDQUFDLEVBQzFELFdBQVksQ0FBQyxRQUFNRCxHQUFBLFdBQU9DLEdBQUEseUJBQXVCLENBQUUsQ0FBQyxFQUNwRCxLQUFNLENBQUMsUUFBTUQsR0FBQSxXQUFPQyxHQUFBLG1CQUFpQixDQUFFLENBQUMsRUFDeEMsa0JBQW1CLENBQUMsUUFBTUQsR0FBQSxXQUFPQyxHQUFBLGdDQUE4QixDQUFFLENBQUMsRUFDbEUsbUJBQW9CLENBQUMsUUFBTUQsR0FBQSxXQUFPQyxHQUFBLGlDQUErQixDQUFFLENBQUMsRUFDckUsRUFDQSxpQkFBNEJtQixHQUFZZCxHQUFvQmMsQ0FBTyxDQUFDLEVBQ3BFLFdBQVcsTUFBT25CLEdBQUEsSUFBSSxVQUFVLENBQ3JDLENBN0NnQkcsRUFBQWMsSUFBQSx5QkFBaEJiLEdBQUEsc0JBQUFhLElBK0NBLFNBQWdCRyxHQUNkWixFQUNBYSxFQUdDLENBRUQsSUFBTUgsRUFBWVYsRUFBUSxTQUFTLGFBQ2pDLG1CQUNBLDZDQUE2QyxFQUUvQyxPQUFPQSxFQUFRLE1BQU0sUUFBUVUsRUFBVyxJQUN0Q25CLEdBQUEsUUFBTyxDQUFFLEtBQU0sVUFBVSxDQUFFLEVBQUUsVUFBVSxVQUFVLEtBQ2pEQSxHQUFBLFdBQW1CLEVBQUcsVUFBVW1CLENBQVMsS0FDekNuQixHQUFBLFdBQW1CLEVBQUcsVUFBVXNCLEVBQU0sSUFBSSxFQUMzQyxDQUNILENBaEJnQmxCLEVBQUFpQixHQUFBLG1CQUFoQmhCLEdBQUEsZ0JBQUFnQixHQWtCTyxlQUFlRSxJQUNwQmQsRUFDQWEsRUFDQVgsRUFBOEIsQ0FFOUIsT0FBT0gsR0FBY0MsRUFBU1ksR0FBZ0JaLEVBQVNhLENBQUssRUFBR1gsQ0FBTyxDQUN4RSxDQU5zQlAsRUFBQW1CLElBQUEsMEJBQXRCbEIsR0FBQSx1QkFBQWtCLElBUU8sZUFBZUMsSUFDcEJmLEVBQ0FhLEVBQ0FYLEVBQThCLENBRTlCLE9BQU9FLEdBQWtCSixFQUFTWSxHQUFnQlosRUFBU2EsQ0FBSyxFQUFHWCxDQUFPLENBQzVFLENBTnNCUCxFQUFBb0IsSUFBQSw4QkFBdEJuQixHQUFBLDJCQUFBbUIsbUlDbFFBLElBQUFDLElBQUEsS0FFQSxTQUFnQkMsSUFDZEMsRUFDQUMsRUFLQyxDQUVELFNBQU9ILElBQUEsc0JBQXFCRSxFQUFTLENBQ25DLEtBQU1DLEVBQU0sS0FDWixlQUFnQixPQUFPQSxFQUFNLGFBQWEsRUFBSSxNQUFNLFNBQVMsRUFBRSxFQUNoRSxDQUNILENBYmdCQyxFQUFBSCxJQUFBLHlDQUFoQkksR0FBQSxzQ0FBQUosZ0hDSEEsSUFBQUssSUFBQSxJQUVhQyxHQUFiLGNBQXdDRCxJQUFBLFFBQVEsT0FBQSxDQUFBRSxFQUFBLDJCQUc5QyxZQUFZQyxFQUFpQkMsRUFBYSxDQUN4QyxNQUFNRCxFQUFTLFNBQVUsaUJBQWtCQyxDQUFLLEVBSHpDLEtBQUEsS0FBZSxvQkFJeEIsR0FMRkMsR0FBQSxtQkFBQUosa0lDRkEsSUFBQUssR0FBQSxJQUtBQyxJQUFBLEtBQ0FDLEdBQUEsS0FnQkEsU0FBZ0JDLEtBQXFDLENBSW5ELFNBQU9ILEdBQUEsa0JBQ0xBLEdBQUEsUUFBTyxDQUFFLEtBQU0sVUFBVSxDQUFFLEVBQzFCSSxHQUE4QyxDQUM3QyxHQUFJLE9BQU9BLEdBQVMsU0FBVSxPQUFPQSxFQUNyQyxPQUFRQSxFQUFNLENBQ1osS0FBS0YsR0FBQSxxQkFBcUIsY0FDeEIsTUFBTywwQkFDVCxLQUFLQSxHQUFBLHFCQUFxQixXQUN4QixNQUFPLHNCQUNULEtBQUtBLEdBQUEscUJBQXFCLElBQ3hCLE1BQU8sZUFDVCxLQUFLQSxHQUFBLHFCQUFxQixLQUN4QixNQUFPLGdCQUNULEtBQUtBLEdBQUEscUJBQXFCLG1CQUN4QixNQUFPLCtCQUNULEtBQUtBLEdBQUEscUJBQXFCLFNBQ3hCLE1BQU8scUJBQ1QsS0FBS0EsR0FBQSxxQkFBcUIsZUFDeEIsTUFBTywyQkFDVCxLQUFLQSxHQUFBLHFCQUFxQix1QkFDeEIsTUFBTyw0QkFDVCxRQUNFLE1BQU0sSUFBSUQsSUFBQSxtQkFDUixvQ0FBb0NHLENBQWEsRUFBRSxFQUczRCxFQUNDQyxHQUEyQ0EsQ0FBZ0MsQ0FFaEYsQ0FqQ2dCQyxFQUFBSCxJQUFBLHlDQUFoQkksR0FBQSxzQ0FBQUosK2FDZEEsSUFBQUssR0FBQSxJQWVBQyxHQUFBLElBaUNBLFNBQWdCQyxJQUEwQyxDQUl4RCxTQUFPRCxHQUFBLGtCQUtMQSxHQUFBLFFBQ0UsQ0FDRSxDQUFDLG1CQUFpQkEsR0FBQSxLQUFHLENBQUUsRUFDdkIsQ0FBQyxzQkFBb0JBLEdBQUEsS0FBRyxDQUFFLEVBQzFCLENBQUMsc0JBQW9CQSxHQUFBLEtBQUcsQ0FBRSxFQUMxQixDQUFDLDRCQUEwQkEsR0FBQSxJQUFFLENBQUUsRUFDL0IsQ0FBQyxlQUFhQSxHQUFBLFdBQU9BLEdBQUEsV0FBbUIsRUFBSSxDQUFFLE1BQU8sRUFBSSxDQUFFLENBQUMsRUFDNUQsQ0FBQyxhQUFXQSxHQUFBLEtBQUcsQ0FBRSxFQUNqQixDQUFDLGVBQWFBLEdBQUEsVUFBTUEsR0FBQSxXQUFtQixFQUFJLENBQUUsS0FBTSxXQUFXLENBQUUsQ0FBQyxHQUVuRSxDQUFFLFlBQWEsK0JBQStCLENBQUUsRUFFakRFLElBQVcsQ0FBRSxHQUFHQSxFQUFPLGNBQWUsRUFBRyxRQUFTLENBQUMsRUFBRyxDQUszRCxDQTFCZ0JDLEVBQUFGLEdBQUEsOENBQWhCRyxHQUFBLDJDQUFBSCxHQTRCQSxTQUFnQkksR0FDZEMsRUFBc0IsQ0FFdEIsU0FBT1AsR0FBQSxvQkFDTE8sRUFDQUwsR0FBMEMsQ0FBRSxDQUVoRCxDQVBnQkUsRUFBQUUsR0FBQSxpQ0FBaEJELEdBQUEsOEJBQUFDLEdBU08sZUFBZUUsR0FDcEJDLEVBQ0FDLEVBQ0FDLEVBQThCLENBRTlCLElBQU1DLEVBQWUsTUFBTUgsRUFBUSxJQUFJLGNBQ3JDVCxHQUFBLFdBQVlVLEVBQVcsRUFBSyxFQUM1QkMsQ0FBTyxFQUVULFNBQUFYLEdBQUEscUJBQW9CWSxFQUFjLG9CQUFvQixFQUMvQ04sR0FBOEJNLENBQVksQ0FDbkQsQ0FYc0JSLEVBQUFJLEdBQUEsMkJBQXRCSCxHQUFBLHdCQUFBRyxHQWFPLGVBQWVLLEdBQ3BCSixFQUNBQyxFQUNBQyxFQUE4QixDQUU5QixJQUFNQyxFQUFlLE1BQU1ILEVBQVEsSUFBSSxjQUNyQ1QsR0FBQSxXQUFZVSxFQUFXLEVBQUssRUFDNUJDLENBQU8sRUFFVCxPQUFPQyxFQUFhLE9BQ2hCTixHQUE4Qk0sQ0FBWSxFQUMxQyxJQUNOLENBWnNCUixFQUFBUyxHQUFBLCtCQUF0QlIsR0FBQSw0QkFBQVEsR0FjTyxlQUFlQyxJQUNwQkwsRUFDQU0sRUFDQUosRUFBK0IsQ0FNL0IsT0FKc0IsTUFBTUYsRUFBUSxJQUFJLFlBQ3RDTSxFQUFXLElBQUtDLE1BQVFoQixHQUFBLFdBQVlnQixFQUFLLEVBQUssQ0FBQyxFQUMvQ0wsQ0FBTyxHQUVZLElBQUtDLE9BQ3hCWixHQUFBLHFCQUFvQlksRUFBYyxvQkFBb0IsRUFDL0NOLEdBQThCTSxDQUFZLEVBQ2xELENBQ0gsQ0Fic0JSLEVBQUFVLElBQUEsOEJBQXRCVCxHQUFBLDJCQUFBUyxJQWVPLGVBQWVHLElBQ3BCUixFQUNBTSxFQUNBSixFQUErQixDQU0vQixPQUpzQixNQUFNRixFQUFRLElBQUksWUFDdENNLEVBQVcsSUFBS0MsTUFBUWhCLEdBQUEsV0FBWWdCLEVBQUssRUFBSyxDQUFDLEVBQy9DTCxDQUFPLEdBR04sT0FBUUMsR0FBaUJBLEVBQWEsTUFBTSxFQUM1QyxJQUFLQSxHQUNKTixHQUE4Qk0sQ0FBMEIsQ0FBQyxDQUUvRCxDQWRzQlIsRUFBQWEsSUFBQSxrQ0FBdEJaLEdBQUEsK0JBQUFZLElBZ0JBLFNBQWdCQyxJQUNkVCxFQUEwQyxDQUUxQyxJQUFNVSxFQUFZVixFQUFRLFNBQVMsYUFDakMsd0JBQ0EsNkNBQTZDLEVBRS9DLFNBQU9ULEdBQUEsWUFBV1MsRUFBU1UsQ0FBUyxFQUNqQyxlQVFFLENBQ0QsY0FBZSxDQUFDLEtBQUdsQixHQUFBLEtBQUcsQ0FBRSxFQUN4QixpQkFBa0IsQ0FBQyxLQUFHQSxHQUFBLEtBQUcsQ0FBRSxFQUMzQixpQkFBa0IsQ0FBQyxNQUFJQSxHQUFBLEtBQUcsQ0FBRSxFQUM1Qix1QkFBd0IsQ0FBQyxNQUFJQSxHQUFBLElBQUUsQ0FBRSxFQUNqQyxVQUFXLENBQUMsTUFBSUEsR0FBQSxXQUFPQSxHQUFBLFdBQW1CLEVBQUksQ0FBRSxNQUFPLEVBQUksQ0FBRSxDQUFDLEVBQzlELFFBQVMsQ0FBQyxNQUFJQSxHQUFBLEtBQUcsQ0FBRSxFQUNuQixVQUFXLENBQUMsTUFBSUEsR0FBQSxVQUFNQSxHQUFBLFdBQW1CLEVBQUksQ0FBRSxLQUFNLFdBQVcsQ0FBRSxDQUFDLEVBQ3BFLEVBQ0EsaUJBQXNDbUIsR0FDckNkLEdBQThCYyxDQUFPLENBQUMsRUFFdkMsV0FBVyxnQkFBaUIsQ0FBQyxDQUNsQyxDQTdCZ0JoQixFQUFBYyxJQUFBLG1DQUFoQmIsR0FBQSxnQ0FBQWEsSUErQkEsU0FBZ0JHLEdBQ2RaLEVBQ0FhLEVBS0MsQ0FFRCxJQUFNSCxFQUFZVixFQUFRLFNBQVMsYUFDakMsd0JBQ0EsNkNBQTZDLEVBRS9DLE9BQU9BLEVBQVEsTUFBTSxRQUFRVSxFQUFXLElBQ3RDbEIsR0FBQSxXQUFtQixFQUFHLFVBQVVxQixFQUFNLFNBQVMsS0FDL0NyQixHQUFBLEtBQUcsRUFBRyxVQUFVcUIsRUFBTSxVQUFVLEVBQ2pDLENBQ0gsQ0FqQmdCbEIsRUFBQWlCLEdBQUEsNkJBQWhCaEIsR0FBQSwwQkFBQWdCLEdBbUJPLGVBQWVFLElBQ3BCZCxFQUNBYSxFQUNBWCxFQUE4QixDQUU5QixPQUFPSCxHQUNMQyxFQUNBWSxHQUEwQlosRUFBU2EsQ0FBSyxFQUN4Q1gsQ0FBTyxDQUVYLENBVnNCUCxFQUFBbUIsSUFBQSxvQ0FBdEJsQixHQUFBLGlDQUFBa0IsSUFZTyxlQUFlQyxJQUNwQmYsRUFDQWEsRUFDQVgsRUFBOEIsQ0FFOUIsT0FBT0UsR0FDTEosRUFDQVksR0FBMEJaLEVBQVNhLENBQUssRUFDeENYLENBQU8sQ0FFWCxDQVZzQlAsRUFBQW9CLElBQUEsd0NBQXRCbkIsR0FBQSxxQ0FBQW1CLG1QQzdNQSxJQUFBQyxHQUFBLElBZUFDLEdBQUEsSUE2QkEsU0FBZ0JDLElBQTRCLENBSTFDLFNBQU9ELEdBQUEsUUFDTCxDQUNFLENBQ0UsbUJBQ0FBLEdBQUEsV0FBT0EsR0FBQSxXQUFtQixFQUFJLENBQUUsVUFBUUEsR0FBQSxLQUFHLEVBQUksTUFBTyxFQUFJLENBQUUsR0FFOUQsQ0FBQyxZQUFVQSxHQUFBLEtBQUcsQ0FBRSxFQUNoQixDQUFDLGNBQVlBLEdBQUEsSUFBRSxDQUFFLEVBQ2pCLENBQUMsbUJBQWlCQSxHQUFBLE1BQUksQ0FBRSxFQUN4QixDQUNFLHFCQUNBQSxHQUFBLFdBQU9BLEdBQUEsV0FBbUIsRUFBSSxDQUFFLFVBQVFBLEdBQUEsS0FBRyxFQUFJLE1BQU8sRUFBSSxDQUFFLElBR2hFLENBQUUsWUFBYSxpQkFBaUIsQ0FBRSxDQUV0QyxDQXBCZ0JFLEVBQUFELEdBQUEsZ0NBQWhCRSxHQUFBLDZCQUFBRixHQXNCQSxTQUFnQkcsR0FBZ0JDLEVBQXNCLENBQ3BELFNBQU9OLEdBQUEsb0JBQW1CTSxFQUFZSixHQUE0QixDQUFFLENBQ3RFLENBRmdCQyxFQUFBRSxHQUFBLG1CQUFoQkQsR0FBQSxnQkFBQUMsR0FJTyxlQUFlRSxJQUNwQkMsRUFDQUMsRUFDQUMsRUFBOEIsQ0FFOUIsSUFBTUMsRUFBZSxNQUFNSCxFQUFRLElBQUksY0FDckNSLEdBQUEsV0FBWVMsRUFBVyxFQUFLLEVBQzVCQyxDQUFPLEVBRVQsU0FBQVYsR0FBQSxxQkFBb0JXLEVBQWMsTUFBTSxFQUNqQ04sR0FBZ0JNLENBQVksQ0FDckMsQ0FYc0JSLEVBQUFJLElBQUEsYUFBdEJILEdBQUEsVUFBQUcsSUFhTyxlQUFlSyxJQUNwQkosRUFDQUMsRUFDQUMsRUFBOEIsQ0FFOUIsSUFBTUMsRUFBZSxNQUFNSCxFQUFRLElBQUksY0FDckNSLEdBQUEsV0FBWVMsRUFBVyxFQUFLLEVBQzVCQyxDQUFPLEVBRVQsT0FBT0MsRUFBYSxPQUFTTixHQUFnQk0sQ0FBWSxFQUFJLElBQy9ELENBVnNCUixFQUFBUyxJQUFBLGlCQUF0QlIsR0FBQSxjQUFBUSxJQVlPLGVBQWVDLElBQ3BCTCxFQUNBTSxFQUNBSixFQUErQixDQU0vQixPQUpzQixNQUFNRixFQUFRLElBQUksWUFDdENNLEVBQVcsSUFBS0MsTUFBUWYsR0FBQSxXQUFZZSxFQUFLLEVBQUssQ0FBQyxFQUMvQ0wsQ0FBTyxHQUVZLElBQUtDLE9BQ3hCWCxHQUFBLHFCQUFvQlcsRUFBYyxNQUFNLEVBQ2pDTixHQUFnQk0sQ0FBWSxFQUNwQyxDQUNILENBYnNCUixFQUFBVSxJQUFBLGdCQUF0QlQsR0FBQSxhQUFBUyxJQWVPLGVBQWVHLElBQ3BCUixFQUNBTSxFQUNBSixFQUErQixDQU0vQixPQUpzQixNQUFNRixFQUFRLElBQUksWUFDdENNLEVBQVcsSUFBS0MsTUFBUWYsR0FBQSxXQUFZZSxFQUFLLEVBQUssQ0FBQyxFQUMvQ0wsQ0FBTyxHQUdOLE9BQVFDLEdBQWlCQSxFQUFhLE1BQU0sRUFDNUMsSUFBS0EsR0FBaUJOLEdBQWdCTSxDQUEwQixDQUFDLENBQ3RFLENBWnNCUixFQUFBYSxJQUFBLG9CQUF0QlosR0FBQSxpQkFBQVksSUFjQSxTQUFnQkMsSUFBa0JULEVBQTBDLENBQzFFLElBQU1VLEVBQVlWLEVBQVEsU0FBUyxhQUNqQyxXQUNBLDZDQUE2QyxFQUUvQyxTQUFPUixHQUFBLFlBQVdRLEVBQVNVLENBQVMsRUFDakMsZUFNRSxDQUNELGNBQWUsQ0FDYixLQUNBakIsR0FBQSxXQUFPQSxHQUFBLFdBQW1CLEVBQUksQ0FBRSxVQUFRQSxHQUFBLEtBQUcsRUFBSSxNQUFPLEVBQUksQ0FBRSxHQUU5RCxPQUFRLENBQUMsTUFBSUEsR0FBQSxLQUFHLENBQUUsRUFDbEIsU0FBVSxDQUFDLE1BQUlBLEdBQUEsSUFBRSxDQUFFLEVBQ25CLGNBQWUsQ0FBQyxNQUFJQSxHQUFBLE1BQUksQ0FBRSxFQUMxQixnQkFBaUIsQ0FDZixNQUNBQSxHQUFBLFdBQU9BLEdBQUEsV0FBbUIsRUFBSSxDQUFFLFVBQVFBLEdBQUEsS0FBRyxFQUFJLE1BQU8sRUFBSSxDQUFFLEdBRS9ELEVBQ0EsaUJBQXdCa0IsR0FBWWQsR0FBZ0JjLENBQU8sQ0FBQyxFQUM1RCxVQUFVLEVBQUUsQ0FDakIsQ0EzQmdCaEIsRUFBQWMsSUFBQSxxQkFBaEJiLEdBQUEsa0JBQUFhLElBNkJBLFNBQWdCRyxLQUFXLENBQ3pCLE1BQU8sR0FDVCxDQUZnQmpCLEVBQUFpQixJQUFBLGVBQWhCaEIsR0FBQSxZQUFBZ0IsbVJDekpBLElBQUFDLEdBQUEsSUFhQUMsR0FBQSxJQW9CQSxTQUFnQkMsSUFBZ0MsQ0FJOUMsU0FBT0QsR0FBQSxRQUNMLENBQ0UsQ0FBQyxPQUFLQSxHQUFBLElBQUUsQ0FBRSxFQUNWLENBQUMsT0FBS0EsR0FBQSxJQUFFLENBQUUsRUFDVixDQUFDLG1CQUFpQkEsR0FBQSxNQUFJLENBQUUsRUFDeEIsQ0FBQyxhQUFXQSxHQUFBLFVBQU1BLEdBQUEsV0FBbUIsRUFBSSxDQUFFLEtBQU0sRUFBRSxDQUFFLENBQUMsR0FFeEQsQ0FBRSxZQUFhLHFCQUFxQixDQUFFLENBRTFDLENBYmdCRSxFQUFBRCxHQUFBLG9DQUFoQkUsR0FBQSxpQ0FBQUYsR0FlQSxTQUFnQkcsR0FBb0JDLEVBQXNCLENBQ3hELFNBQU9OLEdBQUEsb0JBQW1CTSxFQUFZSixHQUFnQyxDQUFFLENBQzFFLENBRmdCQyxFQUFBRSxHQUFBLHVCQUFoQkQsR0FBQSxvQkFBQUMsR0FJTyxlQUFlRSxJQUNwQkMsRUFDQUMsRUFDQUMsRUFBOEIsQ0FFOUIsSUFBTUMsRUFBZSxNQUFNSCxFQUFRLElBQUksY0FDckNSLEdBQUEsV0FBWVMsRUFBVyxFQUFLLEVBQzVCQyxDQUFPLEVBRVQsU0FBQVYsR0FBQSxxQkFBb0JXLEVBQWMsVUFBVSxFQUNyQ04sR0FBb0JNLENBQVksQ0FDekMsQ0FYc0JSLEVBQUFJLElBQUEsaUJBQXRCSCxHQUFBLGNBQUFHLElBYU8sZUFBZUssSUFDcEJKLEVBQ0FDLEVBQ0FDLEVBQThCLENBRTlCLElBQU1DLEVBQWUsTUFBTUgsRUFBUSxJQUFJLGNBQ3JDUixHQUFBLFdBQVlTLEVBQVcsRUFBSyxFQUM1QkMsQ0FBTyxFQUVULE9BQU9DLEVBQWEsT0FBU04sR0FBb0JNLENBQVksRUFBSSxJQUNuRSxDQVZzQlIsRUFBQVMsSUFBQSxxQkFBdEJSLEdBQUEsa0JBQUFRLElBWU8sZUFBZUMsSUFDcEJMLEVBQ0FNLEVBQ0FKLEVBQStCLENBTS9CLE9BSnNCLE1BQU1GLEVBQVEsSUFBSSxZQUN0Q00sRUFBVyxJQUFLQyxNQUFRZixHQUFBLFdBQVllLEVBQUssRUFBSyxDQUFDLEVBQy9DTCxDQUFPLEdBRVksSUFBS0MsT0FDeEJYLEdBQUEscUJBQW9CVyxFQUFjLFVBQVUsRUFDckNOLEdBQW9CTSxDQUFZLEVBQ3hDLENBQ0gsQ0Fic0JSLEVBQUFVLElBQUEsb0JBQXRCVCxHQUFBLGlCQUFBUyxJQWVPLGVBQWVHLElBQ3BCUixFQUNBTSxFQUNBSixFQUErQixDQU0vQixPQUpzQixNQUFNRixFQUFRLElBQUksWUFDdENNLEVBQVcsSUFBS0MsTUFBUWYsR0FBQSxXQUFZZSxFQUFLLEVBQUssQ0FBQyxFQUMvQ0wsQ0FBTyxHQUdOLE9BQVFDLEdBQWlCQSxFQUFhLE1BQU0sRUFDNUMsSUFBS0EsR0FBaUJOLEdBQW9CTSxDQUEwQixDQUFDLENBQzFFLENBWnNCUixFQUFBYSxJQUFBLHdCQUF0QlosR0FBQSxxQkFBQVksSUFjQSxTQUFnQkMsSUFDZFQsRUFBMEMsQ0FFMUMsSUFBTVUsRUFBWVYsRUFBUSxTQUFTLGFBQ2pDLFdBQ0EsNkNBQTZDLEVBRS9DLFNBQU9SLEdBQUEsWUFBV1EsRUFBU1UsQ0FBUyxFQUNqQyxlQUtFLENBQ0QsRUFBRyxDQUFDLEtBQUdqQixHQUFBLElBQUUsQ0FBRSxFQUNYLEVBQUcsQ0FBQyxLQUFHQSxHQUFBLElBQUUsQ0FBRSxFQUNYLGNBQWUsQ0FBQyxLQUFHQSxHQUFBLE1BQUksQ0FBRSxFQUN6QixRQUFTLENBQUMsS0FBR0EsR0FBQSxVQUFNQSxHQUFBLFdBQW1CLEVBQUksQ0FBRSxLQUFNLEVBQUUsQ0FBRSxDQUFDLEVBQ3hELEVBQ0EsaUJBQTRCa0IsR0FBWWQsR0FBb0JjLENBQU8sQ0FBQyxFQUNwRSxVQUFVLEdBQUcsQ0FDbEIsQ0FyQmdCaEIsRUFBQWMsSUFBQSx5QkFBaEJiLEdBQUEsc0JBQUFhLElBdUJBLFNBQWdCRyxLQUFlLENBQzdCLE1BQU8sSUFDVCxDQUZnQmpCLEVBQUFpQixJQUFBLG1CQUFoQmhCLEdBQUEsZ0JBQUFnQix5SUNqSUEsSUFBQUMsSUFBQSxJQUVZQyxJQUFaLFNBQVlBLEVBQWEsQ0FDdkJBLEVBQUFBLEVBQUEsV0FBQSxDQUFBLEVBQUEsYUFDQUEsRUFBQUEsRUFBQSxjQUFBLENBQUEsRUFBQSxnQkFDQUEsRUFBQUEsRUFBQSxhQUFBLENBQUEsRUFBQSxlQUNBQSxFQUFBQSxFQUFBLGFBQUEsQ0FBQSxFQUFBLGNBQ0YsR0FMWUEsR0FBQUMsR0FBQSxnQkFBQUEsR0FBQSxjQUFhLENBQUEsRUFBQSxFQVN6QixTQUFnQkMsS0FBMEIsQ0FJeEMsU0FBT0gsSUFBQSxZQUEwQkMsR0FBZSxDQUM5QyxZQUFhLGdCQUNkLENBQ0gsQ0FQZ0JHLEVBQUFELElBQUEsOEJBQWhCRCxHQUFBLDJCQUFBQyxtSUNYQSxJQUFBRSxJQUFBLElBRVlDLElBQVosU0FBWUEsRUFBVSxDQUNwQkEsRUFBQUEsRUFBQSxjQUFBLENBQUEsRUFBQSxnQkFDQUEsRUFBQUEsRUFBQSxZQUFBLENBQUEsRUFBQSxjQUNBQSxFQUFBQSxFQUFBLE9BQUEsQ0FBQSxFQUFBLFFBQ0YsR0FKWUEsR0FBQUMsR0FBQSxhQUFBQSxHQUFBLFdBQVUsQ0FBQSxFQUFBLEVBUXRCLFNBQWdCQyxLQUF1QixDQUlyQyxTQUFPSCxJQUFBLFlBQXVCQyxHQUFZLENBQ3hDLFlBQWEsYUFDZCxDQUNILENBUGdCRyxFQUFBRCxJQUFBLDJCQUFoQkQsR0FBQSx3QkFBQUMsdWdCQ1ZBRSxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLHlQQ0RBLElBQUFDLEdBQUEsSUFlQUMsR0FBQSxJQVFBQyxHQUFBLEtBMEJBLFNBQWdCQyxJQUE2QixDQUkzQyxTQUFPRixHQUFBLFFBQ0wsQ0FDRSxDQUFDLFVBQVFBLEdBQUEsV0FBbUIsQ0FBRSxFQUM5QixDQUFDLFdBQVNBLEdBQUEsV0FBbUIsQ0FBRSxFQUMvQixDQUFDLFlBQVVBLEdBQUEsS0FBRyxDQUFFLEVBQ2hCLENBQ0UsY0FDQUEsR0FBQSxXQUFPQSxHQUFBLFdBQW1CLEVBQUksQ0FBRSxVQUFRQSxHQUFBLEtBQUcsRUFBSSxNQUFPLEVBQUksQ0FBRSxHQUU5RCxDQUFDLFdBQVNDLEdBQUEseUJBQXVCLENBQUUsRUFDbkMsQ0FBQyxjQUFZRCxHQUFBLFdBQU9BLEdBQUEsS0FBRyxFQUFJLENBQUUsVUFBUUEsR0FBQSxLQUFHLEVBQUksTUFBTyxFQUFJLENBQUUsQ0FBQyxFQUMxRCxDQUFDLHFCQUFtQkEsR0FBQSxLQUFHLENBQUUsRUFDekIsQ0FDRSxvQkFDQUEsR0FBQSxXQUFPQSxHQUFBLFdBQW1CLEVBQUksQ0FBRSxVQUFRQSxHQUFBLEtBQUcsRUFBSSxNQUFPLEVBQUksQ0FBRSxJQUdoRSxDQUFFLFlBQWEsa0JBQWtCLENBQUUsQ0FFdkMsQ0F2QmdCRyxFQUFBRCxHQUFBLGlDQUFoQkUsR0FBQSw4QkFBQUYsR0F5QkEsU0FBZ0JHLEdBQWlCQyxFQUFzQixDQUNyRCxTQUFPUCxHQUFBLG9CQUFtQk8sRUFBWUosR0FBNkIsQ0FBRSxDQUN2RSxDQUZnQkMsRUFBQUUsR0FBQSxvQkFBaEJELEdBQUEsaUJBQUFDLEdBSU8sZUFBZUUsSUFDcEJDLEVBQ0FDLEVBQ0FDLEVBQThCLENBRTlCLElBQU1DLEVBQWUsTUFBTUgsRUFBUSxJQUFJLGNBQ3JDVCxHQUFBLFdBQVlVLEVBQVcsRUFBSyxFQUM1QkMsQ0FBTyxFQUVULFNBQUFYLEdBQUEscUJBQW9CWSxFQUFjLE9BQU8sRUFDbENOLEdBQWlCTSxDQUFZLENBQ3RDLENBWHNCUixFQUFBSSxJQUFBLGNBQXRCSCxHQUFBLFdBQUFHLElBYU8sZUFBZUssSUFDcEJKLEVBQ0FDLEVBQ0FDLEVBQThCLENBRTlCLElBQU1DLEVBQWUsTUFBTUgsRUFBUSxJQUFJLGNBQ3JDVCxHQUFBLFdBQVlVLEVBQVcsRUFBSyxFQUM1QkMsQ0FBTyxFQUVULE9BQU9DLEVBQWEsT0FBU04sR0FBaUJNLENBQVksRUFBSSxJQUNoRSxDQVZzQlIsRUFBQVMsSUFBQSxrQkFBdEJSLEdBQUEsZUFBQVEsSUFZTyxlQUFlQyxJQUNwQkwsRUFDQU0sRUFDQUosRUFBK0IsQ0FNL0IsT0FKc0IsTUFBTUYsRUFBUSxJQUFJLFlBQ3RDTSxFQUFXLElBQUtDLE1BQVFoQixHQUFBLFdBQVlnQixFQUFLLEVBQUssQ0FBQyxFQUMvQ0wsQ0FBTyxHQUVZLElBQUtDLE9BQ3hCWixHQUFBLHFCQUFvQlksRUFBYyxPQUFPLEVBQ2xDTixHQUFpQk0sQ0FBWSxFQUNyQyxDQUNILENBYnNCUixFQUFBVSxJQUFBLGlCQUF0QlQsR0FBQSxjQUFBUyxJQWVPLGVBQWVHLElBQ3BCUixFQUNBTSxFQUNBSixFQUErQixDQU0vQixPQUpzQixNQUFNRixFQUFRLElBQUksWUFDdENNLEVBQVcsSUFBS0MsTUFBUWhCLEdBQUEsV0FBWWdCLEVBQUssRUFBSyxDQUFDLEVBQy9DTCxDQUFPLEdBR04sT0FBUUMsR0FBaUJBLEVBQWEsTUFBTSxFQUM1QyxJQUFLQSxHQUFpQk4sR0FBaUJNLENBQTBCLENBQUMsQ0FDdkUsQ0Fac0JSLEVBQUFhLElBQUEscUJBQXRCWixHQUFBLGtCQUFBWSxJQWNBLFNBQWdCQyxJQUFtQlQsRUFBMEMsQ0FDM0UsSUFBTVUsRUFBWVYsRUFBUSxTQUFTLGFBQ2pDLFdBQ0EsNkNBQTZDLEVBRS9DLFNBQU9ULEdBQUEsWUFBV1MsRUFBU1UsQ0FBUyxFQUNqQyxlQVNFLENBQ0QsS0FBTSxDQUFDLEtBQUdsQixHQUFBLFdBQW1CLENBQUUsRUFDL0IsTUFBTyxDQUFDLE1BQUlBLEdBQUEsV0FBbUIsQ0FBRSxFQUNqQyxPQUFRLENBQUMsTUFBSUEsR0FBQSxLQUFHLENBQUUsRUFDbEIsU0FBVSxDQUNSLE1BQ0FBLEdBQUEsV0FBT0EsR0FBQSxXQUFtQixFQUFJLENBQUUsVUFBUUEsR0FBQSxLQUFHLEVBQUksTUFBTyxFQUFJLENBQUUsR0FFOUQsTUFBTyxDQUFDLE9BQUtDLEdBQUEseUJBQXVCLENBQUUsRUFDdEMsU0FBVSxDQUFDLE9BQUtELEdBQUEsV0FBT0EsR0FBQSxLQUFHLEVBQUksQ0FBRSxVQUFRQSxHQUFBLEtBQUcsRUFBSSxNQUFPLEVBQUksQ0FBRSxDQUFDLEVBQzdELGdCQUFpQixDQUFDLE9BQUtBLEdBQUEsS0FBRyxDQUFFLEVBQzVCLGVBQWdCLENBQ2QsT0FDQUEsR0FBQSxXQUFPQSxHQUFBLFdBQW1CLEVBQUksQ0FBRSxVQUFRQSxHQUFBLEtBQUcsRUFBSSxNQUFPLEVBQUksQ0FBRSxHQUUvRCxFQUNBLGlCQUF5Qm1CLEdBQVlkLEdBQWlCYyxDQUFPLENBQUMsRUFDOUQsVUFBVSxHQUFHLENBQ2xCLENBakNnQmhCLEVBQUFjLElBQUEsc0JBQWhCYixHQUFBLG1CQUFBYSxJQW1DQSxTQUFnQkcsS0FBWSxDQUMxQixNQUFPLElBQ1QsQ0FGZ0JqQixFQUFBaUIsSUFBQSxnQkFBaEJoQixHQUFBLGFBQUFnQix1Z0JDdktBQyxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsbU9DSEEsSUFBQUMsR0FBQSxJQU1NQyxHQUF1RCxJQUFJLElBQzNEQyxHQUF1RCxJQUFJLElBR3BEQyxHQUFiLGNBQW9ESCxHQUFBLFlBQVksT0FBQSxDQUFBSSxFQUFBLHVDQUs5RCxZQUFZQyxFQUFrQkMsRUFBYSxDQUN6QyxNQUFNLHlCQUEwQkQsRUFBU0MsQ0FBSyxFQUx2QyxLQUFBLEtBQWUsdUJBRWYsS0FBQSxLQUFlLENBSXhCLEdBUEZDLEdBQUEsK0JBQUFKLEdBU0FGLEdBQWUsSUFBSSxFQUFLRSxFQUE4QixFQUN0REQsR0FBZSxJQUFJLHVCQUF3QkMsRUFBOEIsRUFHekUsSUFBYUssR0FBYixjQUFxRFIsR0FBQSxZQUFZLE9BQUEsQ0FBQUksRUFBQSx3Q0FLL0QsWUFBWUMsRUFBa0JDLEVBQWEsQ0FDekMsTUFBTSwrQ0FBZ0RELEVBQVNDLENBQUssRUFMN0QsS0FBQSxLQUFlLHdCQUVmLEtBQUEsS0FBZSxDQUl4QixHQVBGQyxHQUFBLGdDQUFBQyxHQVNBUCxHQUFlLElBQUksRUFBS08sRUFBK0IsRUFDdkROLEdBQWUsSUFBSSx3QkFBeUJNLEVBQStCLEVBTTNFLFNBQWdCQyxJQUNkQyxFQUNBTCxFQUNBQyxFQUFhLENBRWIsSUFBTUssRUFBY1YsR0FBZSxJQUFJUyxDQUFJLEVBQzNDLE9BQU9DLEVBQWMsSUFBSUEsRUFBWU4sRUFBU0MsQ0FBSyxFQUFJLElBQ3pELENBUGdCRixFQUFBSyxJQUFBLG1DQUFoQkYsR0FBQSxnQ0FBQUUsSUFhQSxTQUFnQkcsSUFDZEMsRUFDQVIsRUFDQUMsRUFBYSxDQUViLElBQU1LLEVBQWNULEdBQWUsSUFBSVcsQ0FBSSxFQUMzQyxPQUFPRixFQUFjLElBQUlBLEVBQVlOLEVBQVNDLENBQUssRUFBSSxJQUN6RCxDQVBnQkYsRUFBQVEsSUFBQSxtQ0FBaEJMLEdBQUEsZ0NBQUFLLGljQ3BEQSxJQUFBRSxHQUFBLElBTU1DLEdBQXVELElBQUksSUFDM0RDLEdBQXVELElBQUksSUFHcERDLEdBQWIsY0FBb0RILEdBQUEsWUFBWSxPQUFBLENBQUFJLEVBQUEsdUNBSzlELFlBQVlDLEVBQWtCQyxFQUFhLENBQ3pDLE1BQU0seUJBQTBCRCxFQUFTQyxDQUFLLEVBTHZDLEtBQUEsS0FBZSx1QkFFZixLQUFBLEtBQWUsQ0FJeEIsR0FQRkMsR0FBQSwrQkFBQUosR0FTQUYsR0FBZSxJQUFJLEVBQUtFLEVBQThCLEVBQ3RERCxHQUFlLElBQUksdUJBQXdCQyxFQUE4QixFQUd6RSxJQUFhSyxHQUFiLGNBQW1EUixHQUFBLFlBQVksT0FBQSxDQUFBSSxFQUFBLHNDQUs3RCxZQUFZQyxFQUFrQkMsRUFBYSxDQUN6QyxNQUFNLHdCQUF5QkQsRUFBU0MsQ0FBSyxFQUx0QyxLQUFBLEtBQWUsc0JBRWYsS0FBQSxLQUFlLENBSXhCLEdBUEZDLEdBQUEsOEJBQUFDLEdBU0FQLEdBQWUsSUFBSSxFQUFLTyxFQUE2QixFQUNyRE4sR0FBZSxJQUFJLHNCQUF1Qk0sRUFBNkIsRUFHdkUsSUFBYUMsR0FBYixjQUE2RFQsR0FBQSxZQUFZLE9BQUEsQ0FBQUksRUFBQSxnREFLdkUsWUFBWUMsRUFBa0JDLEVBQWEsQ0FDekMsTUFBTSxtQ0FBb0NELEVBQVNDLENBQUssRUFMakQsS0FBQSxLQUFlLGdDQUVmLEtBQUEsS0FBZSxDQUl4QixHQVBGQyxHQUFBLHdDQUFBRSxHQVNBUixHQUFlLElBQUksRUFBS1EsRUFBdUMsRUFDL0RQLEdBQWUsSUFDYixnQ0FDQU8sRUFBdUMsRUFJekMsSUFBYUMsR0FBYixjQUE2RFYsR0FBQSxZQUFZLE9BQUEsQ0FBQUksRUFBQSxnREFLdkUsWUFBWUMsRUFBa0JDLEVBQWEsQ0FDekMsTUFDRSxzRkFDQUQsRUFDQUMsQ0FBSyxFQVJBLEtBQUEsS0FBZSxnQ0FFZixLQUFBLEtBQWUsQ0FReEIsR0FYRkMsR0FBQSx3Q0FBQUcsR0FhQVQsR0FBZSxJQUFJLEVBQUtTLEVBQXVDLEVBQy9EUixHQUFlLElBQ2IsZ0NBQ0FRLEVBQXVDLEVBSXpDLElBQWFDLEdBQWIsY0FBbURYLEdBQUEsWUFBWSxPQUFBLENBQUFJLEVBQUEsc0NBSzdELFlBQVlDLEVBQWtCQyxFQUFhLENBQ3pDLE1BQU0sd0JBQXlCRCxFQUFTQyxDQUFLLEVBTHRDLEtBQUEsS0FBZSxzQkFFZixLQUFBLEtBQWUsQ0FJeEIsR0FQRkMsR0FBQSw4QkFBQUksR0FTQVYsR0FBZSxJQUFJLEVBQUtVLEVBQTZCLEVBQ3JEVCxHQUFlLElBQUksc0JBQXVCUyxFQUE2QixFQUd2RSxJQUFhQyxHQUFiLGNBQWdEWixHQUFBLFlBQVksT0FBQSxDQUFBSSxFQUFBLG1DQUsxRCxZQUFZQyxFQUFrQkMsRUFBYSxDQUN6QyxNQUNFLHlFQUNBRCxFQUNBQyxDQUFLLEVBUkEsS0FBQSxLQUFlLG1CQUVmLEtBQUEsS0FBZSxDQVF4QixHQVhGQyxHQUFBLDJCQUFBSyxHQWFBWCxHQUFlLElBQUksRUFBS1csRUFBMEIsRUFDbERWLEdBQWUsSUFBSSxtQkFBb0JVLEVBQTBCLEVBR2pFLElBQWFDLEdBQWIsY0FBaURiLEdBQUEsWUFBWSxPQUFBLENBQUFJLEVBQUEsb0NBSzNELFlBQVlDLEVBQWtCQyxFQUFhLENBQ3pDLE1BQ0UsNkVBQ0FELEVBQ0FDLENBQUssRUFSQSxLQUFBLEtBQWUsb0JBRWYsS0FBQSxLQUFlLENBUXhCLEdBWEZDLEdBQUEsNEJBQUFNLEdBYUFaLEdBQWUsSUFBSSxFQUFLWSxFQUEyQixFQUNuRFgsR0FBZSxJQUFJLG9CQUFxQlcsRUFBMkIsRUFHbkUsSUFBYUMsR0FBYixjQUE4RGQsR0FBQSxZQUFZLE9BQUEsQ0FBQUksRUFBQSxpREFLeEUsWUFBWUMsRUFBa0JDLEVBQWEsQ0FDekMsTUFDRSw2SUFDQUQsRUFDQUMsQ0FBSyxFQVJBLEtBQUEsS0FBZSxpQ0FFZixLQUFBLEtBQWUsQ0FReEIsR0FYRkMsR0FBQSx5Q0FBQU8sR0FhQWIsR0FBZSxJQUFJLEVBQUthLEVBQXdDLEVBQ2hFWixHQUFlLElBQ2IsaUNBQ0FZLEVBQXdDLEVBTzFDLFNBQWdCQyxJQUNkQyxFQUNBWCxFQUNBQyxFQUFhLENBRWIsSUFBTVcsRUFBY2hCLEdBQWUsSUFBSWUsQ0FBSSxFQUMzQyxPQUFPQyxFQUFjLElBQUlBLEVBQVlaLEVBQVNDLENBQUssRUFBSSxJQUN6RCxDQVBnQkYsRUFBQVcsSUFBQSxrQ0FBaEJSLEdBQUEsK0JBQUFRLElBYUEsU0FBZ0JHLElBQ2RDLEVBQ0FkLEVBQ0FDLEVBQWEsQ0FFYixJQUFNVyxFQUFjZixHQUFlLElBQUlpQixDQUFJLEVBQzNDLE9BQU9GLEVBQWMsSUFBSUEsRUFBWVosRUFBU0MsQ0FBSyxFQUFJLElBQ3pELENBUGdCRixFQUFBYyxJQUFBLGtDQUFoQlgsR0FBQSwrQkFBQVcsNEtDckpBLElBQU1FLElBQXVELElBQUksSUFDM0RDLElBQXVELElBQUksSUFNakUsU0FBZ0JDLElBQ2RDLEVBQ0FDLEVBQ0FDLEVBQWEsQ0FFYixJQUFNQyxFQUFjTixJQUFlLElBQUlHLENBQUksRUFDM0MsT0FBT0csRUFBYyxJQUFJQSxFQUFZRixFQUFTQyxDQUFLLEVBQUksSUFDekQsQ0FQZ0JFLEVBQUFMLElBQUEseUNBQWhCTSxHQUFBLHNDQUFBTixJQWFBLFNBQWdCTyxJQUNkQyxFQUNBTixFQUNBQyxFQUFhLENBRWIsSUFBTUMsRUFBY0wsSUFBZSxJQUFJUyxDQUFJLEVBQzNDLE9BQU9KLEVBQWMsSUFBSUEsRUFBWUYsRUFBU0MsQ0FBSyxFQUFJLElBQ3pELENBUGdCRSxFQUFBRSxJQUFBLHlDQUFoQkQsR0FBQSxzQ0FBQUMsOExDMUJBLElBQUFFLElBQUEsSUFNTUMsR0FBdUQsSUFBSSxJQUMzREMsR0FBdUQsSUFBSSxJQUdwREMsR0FBYixjQUEwQ0gsSUFBQSxZQUFZLE9BQUEsQ0FBQUksRUFBQSw2QkFLcEQsWUFBWUMsRUFBa0JDLEVBQWEsQ0FDekMsTUFDRSxtRUFDQUQsRUFDQUMsQ0FBSyxFQVJBLEtBQUEsS0FBZSxlQUVmLEtBQUEsS0FBZSxDQVF4QixHQVhGQyxHQUFBLHFCQUFBSixHQWFBRixHQUFlLElBQUksRUFBS0UsRUFBb0IsRUFDNUNELEdBQWUsSUFBSSxlQUFnQkMsRUFBb0IsRUFNdkQsU0FBZ0JLLElBQ2RDLEVBQ0FKLEVBQ0FDLEVBQWEsQ0FFYixJQUFNSSxFQUFjVCxHQUFlLElBQUlRLENBQUksRUFDM0MsT0FBT0MsRUFBYyxJQUFJQSxFQUFZTCxFQUFTQyxDQUFLLEVBQUksSUFDekQsQ0FQZ0JGLEVBQUFJLElBQUEsc0NBQWhCRCxHQUFBLG1DQUFBQyxJQWFBLFNBQWdCRyxJQUNkQyxFQUNBUCxFQUNBQyxFQUFhLENBRWIsSUFBTUksRUFBY1IsR0FBZSxJQUFJVSxDQUFJLEVBQzNDLE9BQU9GLEVBQWMsSUFBSUEsRUFBWUwsRUFBU0MsQ0FBSyxFQUFJLElBQ3pELENBUGdCRixFQUFBTyxJQUFBLHNDQUFoQkosR0FBQSxtQ0FBQUksa0tDckNBLElBQU1FLElBQXVELElBQUksSUFDM0RDLElBQXVELElBQUksSUFNakUsU0FBZ0JDLElBQ2RDLEVBQ0FDLEVBQ0FDLEVBQWEsQ0FFYixJQUFNQyxFQUFjTixJQUFlLElBQUlHLENBQUksRUFDM0MsT0FBT0csRUFBYyxJQUFJQSxFQUFZRixFQUFTQyxDQUFLLEVBQUksSUFDekQsQ0FQZ0JFLEVBQUFMLElBQUEsb0NBQWhCTSxHQUFBLGlDQUFBTixJQWFBLFNBQWdCTyxJQUNkQyxFQUNBTixFQUNBQyxFQUFhLENBRWIsSUFBTUMsRUFBY0wsSUFBZSxJQUFJUyxDQUFJLEVBQzNDLE9BQU9KLEVBQWMsSUFBSUEsRUFBWUYsRUFBU0MsQ0FBSyxFQUFJLElBQ3pELENBUGdCRSxFQUFBRSxJQUFBLG9DQUFoQkQsR0FBQSxpQ0FBQUMsZ0pDcEJBLElBQU1FLElBQXVELElBQUksSUFDM0RDLElBQXVELElBQUksSUFNakUsU0FBZ0JDLElBQ2RDLEVBQ0FDLEVBQ0FDLEVBQWEsQ0FFYixJQUFNQyxFQUFjTixJQUFlLElBQUlHLENBQUksRUFDM0MsT0FBT0csRUFBYyxJQUFJQSxFQUFZRixFQUFTQyxDQUFLLEVBQUksSUFDekQsQ0FQZ0JFLEVBQUFMLElBQUEsMkJBQWhCTSxHQUFBLHdCQUFBTixJQWFBLFNBQWdCTyxJQUNkQyxFQUNBTixFQUNBQyxFQUFhLENBRWIsSUFBTUMsRUFBY0wsSUFBZSxJQUFJUyxDQUFJLEVBQzNDLE9BQU9KLEVBQWMsSUFBSUEsRUFBWUYsRUFBU0MsQ0FBSyxFQUFJLElBQ3pELENBUGdCRSxFQUFBRSxJQUFBLDJCQUFoQkQsR0FBQSx3QkFBQUMsb0pDcEJBLElBQU1FLElBQXVELElBQUksSUFDM0RDLElBQXVELElBQUksSUFNakUsU0FBZ0JDLElBQ2RDLEVBQ0FDLEVBQ0FDLEVBQWEsQ0FFYixJQUFNQyxFQUFjTixJQUFlLElBQUlHLENBQUksRUFDM0MsT0FBT0csRUFBYyxJQUFJQSxFQUFZRixFQUFTQyxDQUFLLEVBQUksSUFDekQsQ0FQZ0JFLEVBQUFMLElBQUEsNkJBQWhCTSxHQUFBLDBCQUFBTixJQWFBLFNBQWdCTyxJQUNkQyxFQUNBTixFQUNBQyxFQUFhLENBRWIsSUFBTUMsRUFBY0wsSUFBZSxJQUFJUyxDQUFJLEVBQzNDLE9BQU9KLEVBQWMsSUFBSUEsRUFBWUYsRUFBU0MsQ0FBSyxFQUFJLElBQ3pELENBUGdCRSxFQUFBRSxJQUFBLDZCQUFoQkQsR0FBQSwwQkFBQUMsbXRCQzFCQSxJQUFBRSxHQUFBLElBTU1DLEdBQXVELElBQUksSUFDM0RDLEdBQXVELElBQUksSUFHcERDLEdBQWIsY0FBMkNILEdBQUEsWUFBWSxPQUFBLENBQUFJLEVBQUEsOEJBS3JELFlBQVlDLEVBQWtCQyxFQUFhLENBQ3pDLE1BQU0sOENBQStDRCxFQUFTQyxDQUFLLEVBTDVELEtBQUEsS0FBZSxnQkFFZixLQUFBLEtBQWUsQ0FJeEIsR0FQRkMsR0FBQSxzQkFBQUosR0FTQUYsR0FBZSxJQUFJLEVBQUtFLEVBQXFCLEVBQzdDRCxHQUFlLElBQUksZ0JBQWlCQyxFQUFxQixFQUd6RCxJQUFhSyxHQUFiLGNBQStDUixHQUFBLFlBQVksT0FBQSxDQUFBSSxFQUFBLGtDQUt6RCxZQUFZQyxFQUFrQkMsRUFBYSxDQUN6QyxNQUFNLHFCQUFzQkQsRUFBU0MsQ0FBSyxFQUxuQyxLQUFBLEtBQWUsb0JBRWYsS0FBQSxLQUFlLENBSXhCLEdBUEZDLEdBQUEsMEJBQUFDLEdBU0FQLEdBQWUsSUFBSSxFQUFLTyxFQUF5QixFQUNqRE4sR0FBZSxJQUFJLG9CQUFxQk0sRUFBeUIsRUFHakUsSUFBYUMsR0FBYixjQUF5Q1QsR0FBQSxZQUFZLE9BQUEsQ0FBQUksRUFBQSw0QkFLbkQsWUFBWUMsRUFBa0JDLEVBQWEsQ0FDekMsTUFBTSxlQUFnQkQsRUFBU0MsQ0FBSyxFQUw3QixLQUFBLEtBQWUsY0FFZixLQUFBLEtBQWUsQ0FJeEIsR0FQRkMsR0FBQSxvQkFBQUUsR0FTQVIsR0FBZSxJQUFJLEVBQUtRLEVBQW1CLEVBQzNDUCxHQUFlLElBQUksY0FBZU8sRUFBbUIsRUFHckQsSUFBYUMsR0FBYixjQUEwQ1YsR0FBQSxZQUFZLE9BQUEsQ0FBQUksRUFBQSw2QkFLcEQsWUFBWUMsRUFBa0JDLEVBQWEsQ0FDekMsTUFBTSx3Q0FBeUNELEVBQVNDLENBQUssRUFMdEQsS0FBQSxLQUFlLGVBRWYsS0FBQSxLQUFlLENBSXhCLEdBUEZDLEdBQUEscUJBQUFHLEdBU0FULEdBQWUsSUFBSSxFQUFLUyxFQUFvQixFQUM1Q1IsR0FBZSxJQUFJLGVBQWdCUSxFQUFvQixFQUd2RCxJQUFhQyxHQUFiLGNBQTJDWCxHQUFBLFlBQVksT0FBQSxDQUFBSSxFQUFBLDhCQUtyRCxZQUFZQyxFQUFrQkMsRUFBYSxDQUN6QyxNQUFNLHVCQUF3QkQsRUFBU0MsQ0FBSyxFQUxyQyxLQUFBLEtBQWUsZ0JBRWYsS0FBQSxLQUFlLENBSXhCLEdBUEZDLEdBQUEsc0JBQUFJLEdBU0FWLEdBQWUsSUFBSSxFQUFLVSxFQUFxQixFQUM3Q1QsR0FBZSxJQUFJLGdCQUFpQlMsRUFBcUIsRUFHekQsSUFBYUMsR0FBYixjQUF5Q1osR0FBQSxZQUFZLE9BQUEsQ0FBQUksRUFBQSw0QkFLbkQsWUFBWUMsRUFBa0JDLEVBQWEsQ0FDekMsTUFBTSxlQUFnQkQsRUFBU0MsQ0FBSyxFQUw3QixLQUFBLEtBQWUsY0FFZixLQUFBLEtBQWUsQ0FJeEIsR0FQRkMsR0FBQSxvQkFBQUssR0FTQVgsR0FBZSxJQUFJLEVBQUtXLEVBQW1CLEVBQzNDVixHQUFlLElBQUksY0FBZVUsRUFBbUIsRUFHckQsSUFBYUMsR0FBYixjQUEwQ2IsR0FBQSxZQUFZLE9BQUEsQ0FBQUksRUFBQSw2QkFLcEQsWUFBWUMsRUFBa0JDLEVBQWEsQ0FDekMsTUFBTSxpQkFBa0JELEVBQVNDLENBQUssRUFML0IsS0FBQSxLQUFlLGVBRWYsS0FBQSxLQUFlLENBSXhCLEdBUEZDLEdBQUEscUJBQUFNLEdBU0FaLEdBQWUsSUFBSSxFQUFLWSxFQUFvQixFQUM1Q1gsR0FBZSxJQUFJLGVBQWdCVyxFQUFvQixFQUd2RCxJQUFhQyxHQUFiLGNBQTREZCxHQUFBLFlBQVksT0FBQSxDQUFBSSxFQUFBLCtDQUt0RSxZQUFZQyxFQUFrQkMsRUFBYSxDQUN6QyxNQUFNLHFDQUFzQ0QsRUFBU0MsQ0FBSyxFQUxuRCxLQUFBLEtBQWUsaUNBRWYsS0FBQSxLQUFlLENBSXhCLEdBUEZDLEdBQUEsdUNBQUFPLEdBU0FiLEdBQWUsSUFBSSxFQUFLYSxFQUFzQyxFQUM5RFosR0FBZSxJQUNiLGlDQUNBWSxFQUFzQyxFQUl4QyxJQUFhQyxHQUFiLGNBQTREZixHQUFBLFlBQVksT0FBQSxDQUFBSSxFQUFBLCtDQUt0RSxZQUFZQyxFQUFrQkMsRUFBYSxDQUN6QyxNQUFNLHFDQUFzQ0QsRUFBU0MsQ0FBSyxFQUxuRCxLQUFBLEtBQWUsaUNBRWYsS0FBQSxLQUFlLENBSXhCLEdBUEZDLEdBQUEsdUNBQUFRLEdBU0FkLEdBQWUsSUFBSSxFQUFLYyxFQUFzQyxFQUM5RGIsR0FBZSxJQUNiLGlDQUNBYSxFQUFzQyxFQUl4QyxJQUFhQyxHQUFiLGNBQWdEaEIsR0FBQSxZQUFZLE9BQUEsQ0FBQUksRUFBQSxtQ0FLMUQsWUFBWUMsRUFBa0JDLEVBQWEsQ0FDekMsTUFBTSx5QkFBMEJELEVBQVNDLENBQUssRUFMdkMsS0FBQSxLQUFlLHFCQUVmLEtBQUEsS0FBZSxDQUl4QixHQVBGQyxHQUFBLDJCQUFBUyxHQVNBZixHQUFlLElBQUksRUFBS2UsRUFBMEIsRUFDbERkLEdBQWUsSUFBSSxxQkFBc0JjLEVBQTBCLEVBR25FLElBQWFDLEdBQWIsY0FBZ0RqQixHQUFBLFlBQVksT0FBQSxDQUFBSSxFQUFBLG1DQUsxRCxZQUFZQyxFQUFrQkMsRUFBYSxDQUN6QyxNQUFNLDZDQUE4Q0QsRUFBU0MsQ0FBSyxFQUwzRCxLQUFBLEtBQWUscUJBRWYsS0FBQSxLQUFlLEVBSXhCLEdBUEZDLEdBQUEsMkJBQUFVLEdBU0FoQixHQUFlLElBQUksR0FBS2dCLEVBQTBCLEVBQ2xEZixHQUFlLElBQUkscUJBQXNCZSxFQUEwQixFQUduRSxJQUFhQyxHQUFiLGNBQWlEbEIsR0FBQSxZQUFZLE9BQUEsQ0FBQUksRUFBQSxvQ0FLM0QsWUFBWUMsRUFBa0JDLEVBQWEsQ0FDekMsTUFDRSwrREFDQUQsRUFDQUMsQ0FBSyxFQVJBLEtBQUEsS0FBZSxzQkFFZixLQUFBLEtBQWUsRUFReEIsR0FYRkMsR0FBQSw0QkFBQVcsR0FhQWpCLEdBQWUsSUFBSSxHQUFLaUIsRUFBMkIsRUFDbkRoQixHQUFlLElBQUksc0JBQXVCZ0IsRUFBMkIsRUFHckUsSUFBYUMsR0FBYixjQUFnRG5CLEdBQUEsWUFBWSxPQUFBLENBQUFJLEVBQUEsbUNBSzFELFlBQVlDLEVBQWtCQyxFQUFhLENBQ3pDLE1BQU0sc0JBQXVCRCxFQUFTQyxDQUFLLEVBTHBDLEtBQUEsS0FBZSxxQkFFZixLQUFBLEtBQWUsRUFJeEIsR0FQRkMsR0FBQSwyQkFBQVksR0FTQWxCLEdBQWUsSUFBSSxHQUFLa0IsRUFBMEIsRUFDbERqQixHQUFlLElBQUkscUJBQXNCaUIsRUFBMEIsRUFHbkUsSUFBYUMsR0FBYixjQUEwQ3BCLEdBQUEsWUFBWSxPQUFBLENBQUFJLEVBQUEsNkJBS3BELFlBQVlDLEVBQWtCQyxFQUFhLENBQ3pDLE1BQU0sMkNBQTRDRCxFQUFTQyxDQUFLLEVBTHpELEtBQUEsS0FBZSxlQUVmLEtBQUEsS0FBZSxFQUl4QixHQVBGQyxHQUFBLHFCQUFBYSxHQVNBbkIsR0FBZSxJQUFJLEdBQUttQixFQUFvQixFQUM1Q2xCLEdBQWUsSUFBSSxlQUFnQmtCLEVBQW9CLEVBR3ZELElBQWFDLEdBQWIsY0FBc0NyQixHQUFBLFlBQVksT0FBQSxDQUFBSSxFQUFBLHlCQUtoRCxZQUFZQyxFQUFrQkMsRUFBYSxDQUN6QyxNQUFNLHVCQUF3QkQsRUFBU0MsQ0FBSyxFQUxyQyxLQUFBLEtBQWUsV0FFZixLQUFBLEtBQWUsRUFJeEIsR0FQRkMsR0FBQSxpQkFBQWMsR0FTQXBCLEdBQWUsSUFBSSxHQUFLb0IsRUFBZ0IsRUFDeENuQixHQUFlLElBQUksV0FBWW1CLEVBQWdCLEVBRy9DLElBQWFDLEdBQWIsY0FBdUR0QixHQUFBLFlBQVksT0FBQSxDQUFBSSxFQUFBLDBDQUtqRSxZQUFZQyxFQUFrQkMsRUFBYSxDQUN6QyxNQUFNLG9EQUFxREQsRUFBU0MsQ0FBSyxFQUxsRSxLQUFBLEtBQWUsNEJBRWYsS0FBQSxLQUFlLEVBSXhCLEdBUEZDLEdBQUEsa0NBQUFlLEdBU0FyQixHQUFlLElBQUksR0FBS3FCLEVBQWlDLEVBQ3pEcEIsR0FBZSxJQUNiLDRCQUNBb0IsRUFBaUMsRUFJbkMsSUFBYUMsR0FBYixjQUE4Q3ZCLEdBQUEsWUFBWSxPQUFBLENBQUFJLEVBQUEsaUNBS3hELFlBQVlDLEVBQWtCQyxFQUFhLENBQ3pDLE1BQU0seUNBQTBDRCxFQUFTQyxDQUFLLEVBTHZELEtBQUEsS0FBZSxtQkFFZixLQUFBLEtBQWUsRUFJeEIsR0FQRkMsR0FBQSx5QkFBQWdCLEdBU0F0QixHQUFlLElBQUksR0FBTXNCLEVBQXdCLEVBQ2pEckIsR0FBZSxJQUFJLG1CQUFvQnFCLEVBQXdCLEVBRy9ELElBQWFDLEdBQWIsY0FBMkN4QixHQUFBLFlBQVksT0FBQSxDQUFBSSxFQUFBLDhCQUtyRCxZQUFZQyxFQUFrQkMsRUFBYSxDQUN6QyxNQUFNLG9CQUFxQkQsRUFBU0MsQ0FBSyxFQUxsQyxLQUFBLEtBQWUsZ0JBRWYsS0FBQSxLQUFlLEVBSXhCLEdBUEZDLEdBQUEsc0JBQUFpQixHQVNBdkIsR0FBZSxJQUFJLEdBQU11QixFQUFxQixFQUM5Q3RCLEdBQWUsSUFBSSxnQkFBaUJzQixFQUFxQixFQUd6RCxJQUFhQyxHQUFiLGNBQWtEekIsR0FBQSxZQUFZLE9BQUEsQ0FBQUksRUFBQSxxQ0FLNUQsWUFBWUMsRUFBa0JDLEVBQWEsQ0FDekMsTUFDRSwrREFDQUQsRUFDQUMsQ0FBSyxFQVJBLEtBQUEsS0FBZSx1QkFFZixLQUFBLEtBQWUsRUFReEIsR0FYRkMsR0FBQSw2QkFBQWtCLEdBYUF4QixHQUFlLElBQUksR0FBTXdCLEVBQTRCLEVBQ3JEdkIsR0FBZSxJQUFJLHVCQUF3QnVCLEVBQTRCLEVBR3ZFLElBQWFDLEdBQWIsY0FBbUQxQixHQUFBLFlBQVksT0FBQSxDQUFBSSxFQUFBLHNDQUs3RCxZQUFZQyxFQUFrQkMsRUFBYSxDQUN6QyxNQUFNLGlEQUFrREQsRUFBU0MsQ0FBSyxFQUwvRCxLQUFBLEtBQWUsd0JBRWYsS0FBQSxLQUFlLEVBSXhCLEdBUEZDLEdBQUEsOEJBQUFtQixHQVNBekIsR0FBZSxJQUFJLEdBQU15QixFQUE2QixFQUN0RHhCLEdBQWUsSUFBSSx3QkFBeUJ3QixFQUE2QixFQU16RSxTQUFnQkMsSUFDZEMsRUFDQXZCLEVBQ0FDLEVBQWEsQ0FFYixJQUFNdUIsRUFBYzVCLEdBQWUsSUFBSTJCLENBQUksRUFDM0MsT0FBT0MsRUFBYyxJQUFJQSxFQUFZeEIsRUFBU0MsQ0FBSyxFQUFJLElBQ3pELENBUGdCRixFQUFBdUIsSUFBQSw0QkFBaEJwQixHQUFBLHlCQUFBb0IsSUFhQSxTQUFnQkcsSUFDZEMsRUFDQTFCLEVBQ0FDLEVBQWEsQ0FFYixJQUFNdUIsRUFBYzNCLEdBQWUsSUFBSTZCLENBQUksRUFDM0MsT0FBT0YsRUFBYyxJQUFJQSxFQUFZeEIsRUFBU0MsQ0FBSyxFQUFJLElBQ3pELENBUGdCRixFQUFBMEIsSUFBQSw0QkFBaEJ2QixHQUFBLHlCQUFBdUIsdWdCQy9TQUUsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxtS0NQQSxJQUFBQyxHQUFBLElBcUJBLFNBQWdCQyxJQUFjQyxFQUEyQixDQUN2RCxHQUFJQSxHQUFTLEtBQ1gsTUFBTSxJQUFJLE1BQU0sa0RBQWtELEVBRXBFLE9BQU9BLENBQ1QsQ0FMZ0JDLEVBQUFGLElBQUEsY0FBaEJHLEdBQUEsV0FBQUgsSUFXQSxTQUFnQkksSUFDZEgsRUFBa0QsQ0FFbEQsR0FBSSxDQUFDQSxFQUNILE1BQU0sSUFBSSxNQUFNLHVCQUF1QixFQUV6QyxTQUFPRixHQUFBLFdBQVVFLEVBQU8sRUFBSyxDQUMvQixDQVBnQkMsRUFBQUUsSUFBQSxtQkFBaEJELEdBQUEsZ0JBQUFDLElBYUEsU0FBZ0JDLElBQ2RKLEVBQWtELENBRWxELEdBQUksQ0FBQ0EsR0FBUyxDQUFDLE1BQU0sUUFBUUEsQ0FBSyxHQUFLLElBQUNGLEdBQUEsT0FBTUUsQ0FBSyxFQUNqRCxNQUFNLElBQUksTUFBTSxpQkFBaUIsRUFFbkMsT0FBT0EsQ0FDVCxDQVBnQkMsRUFBQUcsSUFBQSxhQUFoQkYsR0FBQSxVQUFBRSxJQXFDQSxTQUFnQkMsSUFDZEMsRUFDQUMsRUFDQUMsRUFBb0IsQ0FFcEIsSUFBTUMsRUFBc0IsQ0FBQSxFQUN0QkMsRUFBb0IsQ0FBQSxFQUUxQixPQUFBSixFQUFTLFFBQVNLLEdBQVcsQ0FDM0IsR0FBSSxDQUFDQSxFQUFRLE1BQU8sQ0FDbEIsR0FBSUosSUFBNEIsVUFBVyxPQUMzQ0UsRUFBSyxLQUFLLENBQUUsT0FBUUQsRUFBVyxTQUFVLEdBQU8sV0FBWSxFQUFLLENBQUUsRUFDbkUsVUFHRVYsR0FBQSxVQUFTYSxFQUFRLEtBQUssR0FDeEJELEVBQVEsS0FBS0MsRUFBUSxLQUFLLEVBRTVCRixFQUFLLEtBQUssQ0FDUixVQUFRWCxHQUFBLFdBQVVhLEVBQVEsTUFBTyxFQUFLLEVBQ3RDLFlBQVViLEdBQUEsVUFBU2EsRUFBUSxLQUFLLEVBQ2hDLFdBQVlBLEVBQVEsV0FDckIsQ0FDSCxDQUFDLEVBRU0sQ0FBQ0YsRUFBTUMsQ0FBTyxDQUN2QixDQTFCZ0JULEVBQUFJLElBQUEsNkJBQWhCSCxHQUFBLDBCQUFBRyw0SUNsRkEsSUFBQU8sSUFBQSxJQUtBQyxHQUFBLElBS0FDLElBQUEsS0FXQSxTQUFnQkMsSUFBbUMsQ0FJakQsU0FBT0YsR0FBQSxRQUErQixDQUFDLENBQUMsVUFBUUEsR0FBQSxRQUFNLENBQUUsQ0FBQyxFQUFHLENBQzFELFlBQWEseUJBQ2QsQ0FDSCxDQVBnQkcsRUFBQUQsR0FBQSx1Q0FBaEJFLEdBQUEsb0NBQUFGLEdBYUEsU0FBZ0JHLElBQ2RDLEVBQ0FDLEVBQTZCLENBRzdCLElBQU1DLEVBQVlGLEVBQVEsU0FBUyxhQUNqQyxVQUNBLDZDQUE2QyxFQUl6Q0csRUFBZ0QsQ0FBQSxFQUdoREMsRUFBdUMsQ0FBRSxHQUFHSCxDQUFLLEVBR2pESSxFQUFxQyxPQUFPLE9BQ2hERixDQUFnQixFQUNoQixLQUFLLENBQUNHLEVBQUdDLElBQU1ELEVBQUUsTUFBUUMsRUFBRSxLQUFLLEVBRzVCLENBQUNDLEVBQU1DLENBQU8sS0FBSWQsSUFBQSwyQkFDdEJVLEVBQ0EsWUFDQUgsQ0FBUyxFQUlMUSxFQUFPZCxHQUFtQyxFQUFHLFVBQ2pEUSxDQUEwQyxFQUl0Q08sRUFBc0IsRUFFNUIsU0FBT2xCLElBQUEsb0JBQW1CLENBQ3hCLENBQUUsWUFBYSxDQUFFLEtBQUFlLEVBQU0sVUFBQU4sRUFBVyxLQUFBUSxDQUFJLEVBQUksUUFBQUQsRUFBUyxvQkFBQUUsQ0FBbUIsRUFDdkUsQ0FDSCxDQXZDZ0JkLEVBQUFFLElBQUEsV0FBaEJELEdBQUEsUUFBQUMsOEpDbENBLElBQUFhLElBQUEsSUFPQUMsR0FBQSxJQU9BQyxJQUFBLEtBbUJBLFNBQWdCQyxJQUE0QyxDQUkxRCxTQUFPRixHQUFBLGtCQUtMQSxHQUFBLFFBQ0UsQ0FDRSxDQUFDLG1CQUFpQkEsR0FBQSxJQUFFLENBQUUsRUFDdEIsQ0FBQyxZQUFVQSxHQUFBLEtBQUcsQ0FBRSxHQUVsQixDQUFFLFlBQWEsaUNBQWlDLENBQUUsRUFFbkRHLElBQVcsQ0FBRSxHQUFHQSxFQUFPLGNBQWUsRUFBRSxFQUFHLENBS2hELENBckJnQkMsRUFBQUYsR0FBQSxnREFBaEJHLEdBQUEsNkNBQUFILEdBNEJBLFNBQWdCSSxJQUNkQyxFQUNBQyxFQUE0RSxDQUc1RSxJQUFNQyxFQUFZRixFQUFRLFNBQVMsYUFDakMsV0FDQSw2Q0FBNkMsRUFJekNHLEVBQWdELENBQ3BELEtBQU0sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFPLE1BQU9GLEVBQU0sTUFBUSxJQUFJLEdBSTFERyxFQUFnRCxDQUFFLEdBQUdILENBQUssRUFHMURJLEVBQXFDLE9BQU8sT0FDaERGLENBQWdCLEVBQ2hCLEtBQUssQ0FBQ0csRUFBR0MsSUFBTUQsRUFBRSxNQUFRQyxFQUFFLEtBQUssRUFHNUIsQ0FBQ0MsRUFBTUMsQ0FBTyxLQUFJZixJQUFBLDJCQUN0QlcsRUFDQSxZQUNBSCxDQUFTLEVBSUxRLEVBQU9mLEdBQTRDLEVBQUcsVUFDMURTLENBQW1ELEVBSS9DTyxFQUFzQixFQUU1QixTQUFPbkIsSUFBQSxvQkFBbUIsQ0FDeEIsQ0FBRSxZQUFhLENBQUUsS0FBQWdCLEVBQU0sVUFBQU4sRUFBVyxLQUFBUSxDQUFJLEVBQUksUUFBQUQsRUFBUyxvQkFBQUUsQ0FBbUIsRUFDdkUsQ0FDSCxDQXpDZ0JkLEVBQUFFLElBQUEsb0JBQWhCRCxHQUFBLGlCQUFBQyxzS0M3REEsSUFBQWEsSUFBQSxJQVFBQyxHQUFBLElBT0FDLElBQUEsS0F1QkEsU0FBZ0JDLElBQWdELENBSTlELFNBQU9GLEdBQUEsa0JBS0xBLEdBQUEsUUFDRSxDQUNFLENBQUMsbUJBQWlCQSxHQUFBLElBQUUsQ0FBRSxFQUN0QixDQUFDLFlBQVVBLEdBQUEsS0FBRyxDQUFFLEdBRWxCLENBQUUsWUFBYSxxQ0FBcUMsQ0FBRSxFQUV2REcsSUFBVyxDQUFFLEdBQUdBLEVBQU8sY0FBZSxDQUFDLEVBQUcsQ0FLL0MsQ0FyQmdCQyxFQUFBRixHQUFBLG9EQUFoQkcsR0FBQSxpREFBQUgsR0E0QkEsU0FBZ0JJLElBQ2RDLEVBQ0FDLEVBQ3FDLENBR3JDLElBQU1DLEVBQVlGLEVBQVEsU0FBUyxhQUNqQyxXQUNBLDZDQUE2QyxFQUl6Q0csRUFBZ0QsQ0FDcEQsT0FBUSxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU0sTUFBT0YsRUFBTSxRQUFVLElBQUksRUFDakUsU0FBVSxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU8sTUFBT0EsRUFBTSxVQUFZLElBQUksRUFDdEUsTUFBTyxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU8sTUFBT0EsRUFBTSxPQUFTLElBQUksR0FJNURHLEVBQW9ELENBQUUsR0FBR0gsQ0FBSyxFQUc5REksRUFBcUMsT0FBTyxPQUNoREYsQ0FBZ0IsRUFDaEIsS0FBSyxDQUFDRyxFQUFHQyxJQUFNRCxFQUFFLE1BQVFDLEVBQUUsS0FBSyxFQUc1QixDQUFDQyxFQUFNQyxDQUFPLEtBQUlmLElBQUEsMkJBQ3RCVyxFQUNBLFlBQ0FILENBQVMsRUFJTFEsRUFBT2YsR0FBZ0QsRUFBRyxVQUM5RFMsQ0FBdUQsRUFJbkRPLEVBQXNCLEVBRTVCLFNBQU9uQixJQUFBLG9CQUFtQixDQUN4QixDQUFFLFlBQWEsQ0FBRSxLQUFBZ0IsRUFBTSxVQUFBTixFQUFXLEtBQUFRLENBQUksRUFBSSxRQUFBRCxFQUFTLG9CQUFBRSxDQUFtQixFQUN2RSxDQUNILENBNUNnQmQsRUFBQUUsSUFBQSx3QkFBaEJELEdBQUEscUJBQUFDLG9MQ2xFQSxJQUFBYSxJQUFBLElBUUFDLEdBQUEsSUFPQUMsSUFBQSxLQTBCQSxTQUFnQkMsSUFBdUQsQ0FJckUsU0FBT0YsR0FBQSxrQkFLTEEsR0FBQSxRQUNFLENBQ0UsQ0FBQyxtQkFBaUJBLEdBQUEsSUFBRSxDQUFFLEVBQ3RCLENBQUMsWUFBVUEsR0FBQSxLQUFHLENBQUUsRUFDaEIsQ0FBQyxjQUFZQSxHQUFBLElBQUUsQ0FBRSxHQUVuQixDQUFFLFlBQWEsNENBQTRDLENBQUUsRUFFOURHLElBQVcsQ0FBRSxHQUFHQSxFQUFPLGNBQWUsRUFBRSxFQUFHLENBS2hELENBdEJnQkMsRUFBQUYsR0FBQSwyREFBaEJHLEdBQUEsd0RBQUFILEdBNkJBLFNBQWdCSSxJQUNkQyxFQUNBQyxFQUM0QyxDQUc1QyxJQUFNQyxFQUFZRixFQUFRLFNBQVMsYUFDakMsV0FDQSw2Q0FBNkMsRUFJekNHLEVBQWdELENBQ3BELE9BQVEsQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFNLE1BQU9GLEVBQU0sUUFBVSxJQUFJLEVBQ2pFLEtBQU0sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFPLE1BQU9BLEVBQU0sTUFBUSxJQUFJLEVBQzlELFNBQVUsQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFPLE1BQU9BLEVBQU0sVUFBWSxJQUFJLEVBQ3RFLE1BQU8sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFPLE1BQU9BLEVBQU0sT0FBUyxJQUFJLEdBSTVERyxFQUEyRCxDQUFFLEdBQUdILENBQUssRUFHckVJLEVBQXFDLE9BQU8sT0FDaERGLENBQWdCLEVBQ2hCLEtBQUssQ0FBQ0csRUFBR0MsSUFBTUQsRUFBRSxNQUFRQyxFQUFFLEtBQUssRUFHNUIsQ0FBQ0MsRUFBTUMsQ0FBTyxLQUFJZixJQUFBLDJCQUN0QlcsRUFDQSxZQUNBSCxDQUFTLEVBSUxRLEVBQ0pmLEdBQXVELEVBQUcsVUFDeERTLENBQThELEVBSTVETyxFQUFzQixFQUU1QixTQUFPbkIsSUFBQSxvQkFBbUIsQ0FDeEIsQ0FBRSxZQUFhLENBQUUsS0FBQWdCLEVBQU0sVUFBQU4sRUFBVyxLQUFBUSxDQUFJLEVBQUksUUFBQUQsRUFBUyxvQkFBQUUsQ0FBbUIsRUFDdkUsQ0FDSCxDQTlDZ0JkLEVBQUFFLElBQUEsK0JBQWhCRCxHQUFBLDRCQUFBQyxnSkN0RUEsSUFBQWEsSUFBQSxJQVFBQyxHQUFBLElBT0FDLElBQUEsS0FxQkEsU0FBZ0JDLElBQXFDLENBSW5ELFNBQU9GLEdBQUEsa0JBS0xBLEdBQUEsUUFDRSxDQUNFLENBQUMsbUJBQWlCQSxHQUFBLElBQUUsQ0FBRSxFQUN0QixDQUFDLFlBQVVBLEdBQUEsS0FBRyxDQUFFLEdBRWxCLENBQUUsWUFBYSwwQkFBMEIsQ0FBRSxFQUU1Q0csSUFBVyxDQUFFLEdBQUdBLEVBQU8sY0FBZSxDQUFDLEVBQUcsQ0FFL0MsQ0FsQmdCQyxFQUFBRixHQUFBLHlDQUFoQkcsR0FBQSxzQ0FBQUgsR0F3QkEsU0FBZ0JJLElBQ2RDLEVBQ0FDLEVBQThELENBRzlELElBQU1DLEVBQVlGLEVBQVEsU0FBUyxhQUNqQyxXQUNBLDZDQUE2QyxFQUl6Q0csRUFBZ0QsQ0FDcEQsUUFBUyxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU0sTUFBT0YsRUFBTSxTQUFXLElBQUksRUFDbkUsS0FBTSxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU0sTUFBT0EsRUFBTSxNQUFRLElBQUksRUFDN0QsVUFBVyxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU8sTUFBT0EsRUFBTSxXQUFhLElBQUksR0FJcEVHLEVBQXlDLENBQUUsR0FBR0gsQ0FBSyxFQUdwREUsRUFBaUIsVUFBVSxRQUM5QkEsRUFBaUIsVUFBVSxNQUFRSCxFQUFRLFVBSTdDLElBQU1LLEVBQXFDLE9BQU8sT0FDaERGLENBQWdCLEVBQ2hCLEtBQUssQ0FBQ0csRUFBR0MsSUFBTUQsRUFBRSxNQUFRQyxFQUFFLEtBQUssRUFHNUIsQ0FBQ0MsRUFBTUMsQ0FBTyxLQUFJZixJQUFBLDJCQUN0QlcsRUFDQSxZQUNBSCxDQUFTLEVBSUxRLEVBQU9mLEdBQXFDLEVBQUcsVUFDbkRTLENBQTRDLEVBSXhDTyxFQUFzQixFQUU1QixTQUFPbkIsSUFBQSxvQkFBbUIsQ0FDeEIsQ0FBRSxZQUFhLENBQUUsS0FBQWdCLEVBQU0sVUFBQU4sRUFBVyxLQUFBUSxDQUFJLEVBQUksUUFBQUQsRUFBUyxvQkFBQUUsQ0FBbUIsRUFDdkUsQ0FDSCxDQWhEZ0JkLEVBQUFFLElBQUEsYUFBaEJELEdBQUEsVUFBQUMsOEpDNURBLElBQUFhLElBQUEsSUFRQUMsR0FBQSxJQU9BQyxJQUFBLEtBeUJBLFNBQWdCQyxJQUE0QyxDQUkxRCxTQUFPRixHQUFBLGtCQUtMQSxHQUFBLFFBQ0UsQ0FDRSxDQUFDLG1CQUFpQkEsR0FBQSxJQUFFLENBQUUsRUFDdEIsQ0FBQyxZQUFVQSxHQUFBLEtBQUcsQ0FBRSxFQUNoQixDQUFDLGNBQVlBLEdBQUEsSUFBRSxDQUFFLEdBRW5CLENBQUUsWUFBYSxpQ0FBaUMsQ0FBRSxFQUVuREcsSUFBVyxDQUFFLEdBQUdBLEVBQU8sY0FBZSxFQUFFLEVBQUcsQ0FLaEQsQ0F0QmdCQyxFQUFBRixHQUFBLGdEQUFoQkcsR0FBQSw2Q0FBQUgsR0E2QkEsU0FBZ0JJLElBQ2RDLEVBQ0FDLEVBQTRFLENBRzVFLElBQU1DLEVBQVlGLEVBQVEsU0FBUyxhQUNqQyxXQUNBLDZDQUE2QyxFQUl6Q0csRUFBZ0QsQ0FDcEQsUUFBUyxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU0sTUFBT0YsRUFBTSxTQUFXLElBQUksRUFDbkUsS0FBTSxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU0sTUFBT0EsRUFBTSxNQUFRLElBQUksRUFDN0QsVUFBVyxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU8sTUFBT0EsRUFBTSxXQUFhLElBQUksR0FJcEVHLEVBQWdELENBQUUsR0FBR0gsQ0FBSyxFQUczREUsRUFBaUIsVUFBVSxRQUM5QkEsRUFBaUIsVUFBVSxNQUFRSCxFQUFRLFVBSTdDLElBQU1LLEVBQXFDLE9BQU8sT0FDaERGLENBQWdCLEVBQ2hCLEtBQUssQ0FBQ0csRUFBR0MsSUFBTUQsRUFBRSxNQUFRQyxFQUFFLEtBQUssRUFHNUIsQ0FBQ0MsRUFBTUMsQ0FBTyxLQUFJZixJQUFBLDJCQUN0QlcsRUFDQSxZQUNBSCxDQUFTLEVBSUxRLEVBQU9mLEdBQTRDLEVBQUcsVUFDMURTLENBQW1ELEVBSS9DTyxFQUFzQixFQUU1QixTQUFPbkIsSUFBQSxvQkFBbUIsQ0FDeEIsQ0FBRSxZQUFhLENBQUUsS0FBQWdCLEVBQU0sVUFBQU4sRUFBVyxLQUFBUSxDQUFJLEVBQUksUUFBQUQsRUFBUyxvQkFBQUUsQ0FBbUIsRUFDdkUsQ0FDSCxDQWhEZ0JkLEVBQUFFLElBQUEsb0JBQWhCRCxHQUFBLGlCQUFBQyw4SUNyRUEsSUFBQWEsSUFBQSxJQVFBQyxHQUFBLElBTUFDLElBQUEsS0FrQkEsU0FBZ0JDLElBQW9DLENBSWxELFNBQU9GLEdBQUEsa0JBS0xBLEdBQUEsUUFBZ0MsQ0FBQyxDQUFDLG1CQUFpQkEsR0FBQSxLQUFHLENBQUUsQ0FBQyxFQUFHLENBQzFELFlBQWEsMEJBQ2QsRUFDQUcsSUFBVyxDQUFFLEdBQUdBLEVBQU8sY0FBZSxDQUFDLEVBQUcsQ0FFL0MsQ0FkZ0JDLEVBQUFGLEdBQUEsd0NBQWhCRyxHQUFBLHFDQUFBSCxHQWlCQSxTQUFnQkksSUFDZEMsRUFDQUMsRUFBa0MsQ0FHbEMsSUFBTUMsRUFBWUYsRUFBUSxTQUFTLGFBQ2pDLHdCQUNBLDZDQUE2QyxFQUl6Q0csRUFBZ0QsQ0FDcEQsUUFBUyxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU0sTUFBT0YsRUFBTSxTQUFXLElBQUksRUFDbkUsVUFBVyxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU8sTUFBT0EsRUFBTSxXQUFhLElBQUksRUFDeEUsVUFBVyxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU0sTUFBT0EsRUFBTSxXQUFhLElBQUksR0FJcEVFLEVBQWlCLFVBQVUsUUFDOUJBLEVBQWlCLFVBQVUsTUFBUUgsRUFBUSxVQUk3QyxJQUFNSSxFQUFxQyxPQUFPLE9BQ2hERCxDQUFnQixFQUNoQixLQUFLLENBQUNFLEVBQUdDLElBQU1ELEVBQUUsTUFBUUMsRUFBRSxLQUFLLEVBRzVCLENBQUNDLEVBQU1DLENBQU8sS0FBSWQsSUFBQSwyQkFDdEJVLEVBQ0EsWUFDQUYsQ0FBUyxFQUlMTyxFQUFPZCxHQUFvQyxFQUFHLFVBQVUsQ0FBQSxDQUFFLEVBRzFEZSxFQUFzQixFQUU1QixTQUFPbEIsSUFBQSxvQkFBbUIsQ0FDeEIsQ0FBRSxZQUFhLENBQUUsS0FBQWUsRUFBTSxVQUFBTCxFQUFXLEtBQUFPLENBQUksRUFBSSxRQUFBRCxFQUFTLG9CQUFBRSxDQUFtQixFQUN2RSxDQUNILENBM0NnQmIsRUFBQUUsSUFBQSxZQUFoQkQsR0FBQSxTQUFBQyxrSkNqREEsSUFBQVksSUFBQSxJQVFBQyxHQUFBLElBTUFDLElBQUEsS0FrQkEsU0FBZ0JDLElBQXNDLENBSXBELFNBQU9GLEdBQUEsa0JBS0xBLEdBQUEsUUFBa0MsQ0FBQyxDQUFDLG1CQUFpQkEsR0FBQSxJQUFFLENBQUUsQ0FBQyxFQUFHLENBQzNELFlBQWEsNEJBQ2QsRUFDQUcsSUFBVyxDQUFFLEdBQUdBLEVBQU8sY0FBZSxDQUFDLEVBQUcsQ0FFL0MsQ0FkZ0JDLEVBQUFGLEdBQUEsMENBQWhCRyxHQUFBLHVDQUFBSCxHQWlCQSxTQUFnQkksSUFDZEMsRUFDQUMsRUFBb0MsQ0FHcEMsSUFBTUMsRUFBWUYsRUFBUSxTQUFTLGFBQ2pDLFdBQ0EsNkNBQTZDLEVBSXpDRyxFQUFnRCxDQUNwRCxRQUFTLENBQUUsTUFBTyxFQUFHLFdBQVksR0FBTSxNQUFPRixFQUFNLFNBQVcsSUFBSSxFQUNuRSxZQUFhLENBQ1gsTUFBTyxFQUNQLFdBQVksR0FDWixNQUFPQSxFQUFNLGFBQWUsTUFFOUIsTUFBTyxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU8sTUFBT0EsRUFBTSxPQUFTLElBQUksR0FJNURHLEVBQXFDLE9BQU8sT0FDaERELENBQWdCLEVBQ2hCLEtBQUssQ0FBQ0UsRUFBR0MsSUFBTUQsRUFBRSxNQUFRQyxFQUFFLEtBQUssRUFHNUIsQ0FBQ0MsRUFBTUMsQ0FBTyxLQUFJZCxJQUFBLDJCQUN0QlUsRUFDQSxZQUNBRixDQUFTLEVBSUxPLEVBQU9kLEdBQXNDLEVBQUcsVUFBVSxDQUFBLENBQUUsRUFHNURlLEVBQXNCLEVBRTVCLFNBQU9sQixJQUFBLG9CQUFtQixDQUN4QixDQUFFLFlBQWEsQ0FBRSxLQUFBZSxFQUFNLFVBQUFMLEVBQVcsS0FBQU8sQ0FBSSxFQUFJLFFBQUFELEVBQVMsb0JBQUFFLENBQW1CLEVBQ3ZFLENBQ0gsQ0ExQ2dCYixFQUFBRSxJQUFBLGNBQWhCRCxHQUFBLFdBQUFDLHdKQ2pEQSxJQUFBWSxHQUFBLElBVUFDLEdBQUEsSUFRQUMsSUFBQSxLQTBCQSxTQUFnQkMsSUFBeUMsQ0FJdkQsU0FBT0YsR0FBQSxrQkFLTEEsR0FBQSxRQUNFLENBQ0UsQ0FBQyxtQkFBaUJBLEdBQUEsS0FBRyxDQUFFLEVBQ3ZCLENBQUMsY0FBWUQsR0FBQSx3QkFBb0JDLEdBQUEsS0FBRyxFQUFJLE1BQU8sQ0FBQyxDQUFDLEVBQ2pELENBQUMsV0FBU0EsR0FBQSxLQUFHLENBQUUsRUFDZixDQUFDLGVBQWFBLEdBQUEsV0FBbUIsQ0FBRSxHQUVyQyxDQUFFLFlBQWEsOEJBQThCLENBQUUsRUFFaERHLElBQVcsQ0FBRSxHQUFHQSxFQUFPLGNBQWUsQ0FBQyxFQUFHLENBSy9DLENBdkJnQkMsRUFBQUYsR0FBQSw2Q0FBaEJHLEdBQUEsMENBQUFILEdBNkJBLFNBQWdCSSxJQUNkQyxFQUNBQyxFQUFzRSxDQUd0RSxJQUFNQyxFQUFZRixFQUFRLFNBQVMsYUFDakMsWUFDQSxrQ0FBa0MsRUFJOUJHLEVBQWdELENBQ3BELE1BQU8sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFNLE1BQU9GLEVBQU0sT0FBUyxJQUFJLEVBQy9ELFdBQVksQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFNLE1BQU9BLEVBQU0sWUFBYyxJQUFJLEdBSXJFRyxFQUE2QyxDQUFFLEdBQUdILENBQUssRUFHeERFLEVBQWlCLE1BQU0sUUFDMUJBLEVBQWlCLE1BQU0sTUFBUUgsRUFBUSxPQUl6QyxJQUFNSyxFQUFxQyxPQUFPLE9BQ2hERixDQUFnQixFQUNoQixLQUFLLENBQUNHLEVBQUdDLElBQU1ELEVBQUUsTUFBUUMsRUFBRSxLQUFLLEVBRzVCLENBQUNDLEVBQU1DLENBQU8sS0FBSWYsSUFBQSwyQkFDdEJXLEVBQ0EsWUFDQUgsQ0FBUyxFQUlMUSxFQUFPZixHQUF5QyxFQUFHLFVBQ3ZEUyxDQUFnRCxFQUk1Q08sRUFBc0IsT0FBT1YsRUFBTSxLQUFLLEVBQUlULEdBQUEsb0JBRWxELFNBQU9BLEdBQUEsb0JBQW1CLENBQ3hCLENBQUUsWUFBYSxDQUFFLEtBQUFnQixFQUFNLFVBQUFOLEVBQVcsS0FBQVEsQ0FBSSxFQUFJLFFBQUFELEVBQVMsb0JBQUFFLENBQW1CLEVBQ3ZFLENBQ0gsQ0EvQ2dCZCxFQUFBRSxJQUFBLGlCQUFoQkQsR0FBQSxjQUFBQyx3S0N6RUEsSUFBQWEsR0FBQSxJQVNBQyxHQUFBLElBUUFDLElBQUEsS0E0QkEsU0FBZ0JDLElBQWlELENBSS9ELFNBQU9GLEdBQUEsa0JBS0xBLEdBQUEsUUFDRSxDQUNFLENBQUMsbUJBQWlCQSxHQUFBLElBQUUsQ0FBRSxFQUN0QixDQUFDLFdBQVNBLEdBQUEsS0FBRyxDQUFFLEVBQ2YsQ0FBQyxlQUFhQSxHQUFBLFdBQW1CLENBQUUsR0FFckMsQ0FBRSxZQUFhLHNDQUFzQyxDQUFFLEVBRXhERyxJQUFXLENBQUUsR0FBR0EsRUFBTyxjQUFlLENBQUMsRUFBRyxDQUsvQyxDQXRCZ0JDLEVBQUFGLEdBQUEscURBQWhCRyxHQUFBLGtEQUFBSCxHQTZCQSxTQUFnQkksSUFDZEMsRUFDQUMsRUFDc0MsQ0FHdEMsSUFBTUMsRUFBWUYsRUFBUSxTQUFTLGFBQ2pDLGtCQUNBLDZDQUE2QyxFQUl6Q0csRUFBZ0QsQ0FDcEQsTUFBTyxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU0sTUFBT0YsRUFBTSxPQUFTLElBQUksRUFDL0QsV0FBWSxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU0sTUFBT0EsRUFBTSxZQUFjLElBQUksRUFDekUsY0FBZSxDQUNiLE1BQU8sRUFDUCxXQUFZLEdBQ1osTUFBT0EsRUFBTSxlQUFpQixPQUs1QkcsRUFBcUQsQ0FBRSxHQUFHSCxDQUFLLEVBR2hFRSxFQUFpQixNQUFNLFFBQzFCQSxFQUFpQixNQUFNLE1BQVFILEVBQVEsT0FFcENHLEVBQWlCLGNBQWMsUUFDbENBLEVBQWlCLGNBQWMsTUFBUUgsRUFBUSxTQUFTLGFBQ3RELFlBQ0Esa0NBQWtDLEVBRXBDRyxFQUFpQixjQUFjLFdBQWEsSUFJOUMsSUFBTUUsRUFBcUMsT0FBTyxPQUNoREYsQ0FBZ0IsRUFDaEIsS0FBSyxDQUFDRyxFQUFHQyxJQUFNRCxFQUFFLE1BQVFDLEVBQUUsS0FBSyxFQUc1QixDQUFDQyxFQUFNQyxDQUFPLEtBQUlmLElBQUEsMkJBQ3RCVyxFQUNBLFlBQ0FILENBQVMsRUFJTFEsRUFBT2YsR0FBaUQsRUFBRyxVQUMvRFMsQ0FBd0QsRUFJcERPLEVBQXNCLE9BQU9WLEVBQU0sS0FBSyxFQUFJVCxHQUFBLG9CQUVsRCxTQUFPQSxHQUFBLG9CQUFtQixDQUN4QixDQUFFLFlBQWEsQ0FBRSxLQUFBZ0IsRUFBTSxVQUFBTixFQUFXLEtBQUFRLENBQUksRUFBSSxRQUFBRCxFQUFTLG9CQUFBRSxDQUFtQixFQUN2RSxDQUNILENBNURnQmQsRUFBQUUsSUFBQSx5QkFBaEJELEdBQUEsc0JBQUFDLG9IQ2pGQSxJQUFBYSxHQUFBLElBRUEsU0FBZ0JDLElBQ2RDLEVBQ0FDLEVBS0MsQ0FFRCxJQUFNQyxFQUNKRixFQUFRLFNBQVMsYUFBYSxvQkFBb0IsRUFDOUNHLEVBQWlCSCxFQUFRLFNBQVMsYUFBYSxVQUFVLEVBQy9ELE9BQU9BLEVBQVEsTUFBTSxRQUFRRSxFQUEwQixJQUNyREosR0FBQSxXQUFTLEVBQUcsVUFBVUcsRUFBTSxLQUFLLEtBQ2pDSCxHQUFBLFdBQVMsRUFBRyxVQUFVSyxDQUFjLEtBQ3BDTCxHQUFBLFdBQVMsRUFBRyxVQUFVRyxFQUFNLElBQUksRUFDakMsQ0FDSCxDQWpCZ0JHLEVBQUFMLElBQUEsMEJBQWhCTSxHQUFBLHVCQUFBTixtSENETyxJQUFNTyxJQUF3QkMsRUFBQSxDQUNuQ0MsRUFDQUMsRUFDQUMsRUFDQUMsSUFDVyxHQUFLRCxFQUFLLFVBQVUsT0FMSSx5QkFBeEJFLEdBQUEsc0JBQXFCTix1Z0JDRmxDTyxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLGlIQ09BLElBQUFDLEdBQUEsSUFTQUMsSUFBQSxLQUNBQyxJQUFBLEtBQ0FDLEdBQUEsS0FrQkEsU0FBZ0JDLElBQ2RDLEVBQ0FDLEVBQStDLENBRy9DLElBQU1DLEVBQVlGLEVBQVEsU0FBUyxhQUNqQyxxQkFDQSw4Q0FBOEMsRUFJMUNHLEVBQWdELENBQ3BELE1BQU8sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFNLE1BQU9GLEVBQU0sT0FBUyxJQUFJLEVBQy9ELElBQUssQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFNLE1BQU9BLEVBQU0sS0FBTyxJQUFJLEVBQzNELE1BQU8sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFPLE1BQU9BLEVBQU0sT0FBUyxJQUFJLEVBQ2hFLEtBQU0sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFPLE1BQU9BLEVBQU0sTUFBUSxJQUFJLEVBQzlELGNBQWUsQ0FDYixNQUFPLEVBQ1AsV0FBWSxHQUNaLE1BQU9BLEVBQU0sZUFBaUIsTUFFaEMsYUFBYyxDQUNaLE1BQU8sRUFDUCxXQUFZLEdBQ1osTUFBT0EsRUFBTSxjQUFnQixPQUs1QkUsRUFBaUIsTUFBTSxRQUMxQkEsRUFBaUIsTUFBTSxNQUFRSCxFQUFRLE9BRXBDRyxFQUFpQixNQUFNLFFBQzFCQSxFQUFpQixNQUFNLE1BQVFILEVBQVEsU0FBUyxXQUU3Q0csRUFBaUIsSUFBSSxRQUN4QkEsRUFBaUIsSUFBSSxTQUFRUCxJQUFBLHdCQUF1QkksRUFBUyxDQUMzRCxTQUFPRixHQUFBLGlCQUFnQkssRUFBaUIsTUFBTSxLQUFLLEVBQ25ELFFBQU1MLEdBQUEsaUJBQWdCSyxFQUFpQixLQUFLLEtBQUssRUFDbEQsR0FFRUEsRUFBaUIsY0FBYyxRQUNsQ0EsRUFBaUIsY0FBYyxNQUFRSCxFQUFRLFNBQVMsYUFDdEQsWUFDQSxrQ0FBa0MsRUFFcENHLEVBQWlCLGNBQWMsV0FBYSxJQUV6Q0EsRUFBaUIsYUFBYSxRQUNqQ0EsRUFBaUIsYUFBYSxNQUFRSCxFQUFRLFNBQVMsYUFDckQsV0FDQSw2Q0FBNkMsRUFFL0NHLEVBQWlCLGFBQWEsV0FBYSxJQUk3QyxJQUFNQyxFQUFxQyxPQUFPLE9BQ2hERCxDQUFnQixFQUNoQixLQUFLLENBQUNFLEVBQUdDLElBQU1ELEVBQUUsTUFBUUMsRUFBRSxLQUFLLEVBRzVCLENBQUNDLEVBQU1DLENBQU8sS0FBSVYsR0FBQSwyQkFDdEJNLEVBQ0EsWUFDQUYsQ0FBUyxFQUlMTyxFQUFPLElBQUksV0FHWEMsS0FBc0JiLElBQUEsY0FBWSxFQUFLRixHQUFBLG9CQUU3QyxTQUFPQSxHQUFBLG9CQUFtQixDQUN4QixDQUFFLFlBQWEsQ0FBRSxLQUFBWSxFQUFNLFVBQUFMLEVBQVcsS0FBQU8sQ0FBSSxFQUFJLFFBQUFELEVBQVMsb0JBQUFFLENBQW1CLEVBQ3ZFLENBQ0gsQ0E3RWdCQyxFQUFBWixJQUFBLHlCQUFoQmEsR0FBQSxzQkFBQWIsMEpDN0JBLElBQUFjLEdBQUEsSUFTQUMsR0FBQSxJQVFBQyxJQUFBLEtBQ0FDLEdBQUEsS0E4QkEsU0FBZ0JDLElBQTBDLENBSXhELFNBQU9ILEdBQUEsa0JBS0xBLEdBQUEsUUFDRSxDQUNFLENBQUMsbUJBQWlCQSxHQUFBLEtBQUcsQ0FBRSxFQUN2QixDQUFDLGdCQUFjQSxHQUFBLEtBQUcsQ0FBRSxFQUNwQixDQUFDLFVBQVFBLEdBQUEsSUFBRSxDQUFFLEdBRWYsQ0FBRSxZQUFhLCtCQUErQixDQUFFLEVBRWpESSxJQUFXLENBQUUsR0FBR0EsRUFBTyxjQUFlLENBQUMsRUFBRyxDQUsvQyxDQXRCZ0JDLEVBQUFGLEdBQUEsOENBQWhCRyxHQUFBLDJDQUFBSCxHQStCQSxTQUFnQkksSUFDZEMsRUFDQUMsRUFBd0UsQ0FHeEUsSUFBTUMsRUFBWUYsRUFBUSxTQUFTLGFBQ2pDLHdCQUNBLDZDQUE2QyxFQUl6Q0csRUFBZ0QsQ0FDcEQsUUFBUyxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU0sTUFBT0YsRUFBTSxTQUFXLElBQUksRUFDbkUsVUFBVyxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU8sTUFBT0EsRUFBTSxXQUFhLElBQUksRUFDeEUsTUFBTyxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU0sTUFBT0EsRUFBTSxPQUFTLElBQUksRUFDL0QsY0FBZSxDQUNiLE1BQU8sRUFDUCxXQUFZLEdBQ1osTUFBT0EsRUFBTSxlQUFpQixPQUs1QkcsRUFBOEMsQ0FBRSxHQUFHSCxDQUFLLEVBR3pERSxFQUFpQixVQUFVLFFBQzlCQSxFQUFpQixVQUFVLE1BQVFILEVBQVEsVUFFeENHLEVBQWlCLFFBQVEsUUFDNUJBLEVBQWlCLFFBQVEsU0FBUVYsSUFBQSwyQkFBMEJPLEVBQVMsQ0FDbEUsYUFBV04sR0FBQSxpQkFBZ0JTLEVBQWlCLFVBQVUsS0FBSyxFQUMzRCxjQUFZVCxHQUFBLFlBQVdVLEVBQWEsVUFBVSxFQUMvQyxHQUVFRCxFQUFpQixNQUFNLFFBQzFCQSxFQUFpQixNQUFNLE1BQVFILEVBQVEsT0FFcENHLEVBQWlCLGNBQWMsUUFDbENBLEVBQWlCLGNBQWMsTUFBUUgsRUFBUSxTQUFTLGFBQ3RELFlBQ0Esa0NBQWtDLEVBRXBDRyxFQUFpQixjQUFjLFdBQWEsSUFFekNDLEVBQWEsT0FDaEJBLEVBQWEsUUFBT1YsR0FBQSxXQUFVUyxFQUFpQixRQUFRLEtBQUssRUFBRSxDQUFDLEdBSWpFLElBQU1FLEVBQXFDLE9BQU8sT0FDaERGLENBQWdCLEVBQ2hCLEtBQUssQ0FBQ0csRUFBR0MsSUFBTUQsRUFBRSxNQUFRQyxFQUFFLEtBQUssRUFHNUIsQ0FBQ0MsRUFBTUMsQ0FBTyxLQUFJZixHQUFBLDJCQUN0QlcsRUFDQSxZQUNBSCxDQUFTLEVBSUxRLEVBQU9mLEdBQTBDLEVBQUcsVUFDeERTLENBQWlELEVBSTdDTyxFQUFzQixHQUFLcEIsR0FBQSxvQkFFakMsU0FBT0EsR0FBQSxvQkFBbUIsQ0FDeEIsQ0FBRSxZQUFhLENBQUUsS0FBQWlCLEVBQU0sVUFBQU4sRUFBVyxLQUFBUSxDQUFJLEVBQUksUUFBQUQsRUFBUyxvQkFBQUUsQ0FBbUIsRUFDdkUsQ0FDSCxDQXhFZ0JkLEVBQUFFLElBQUEsa0JBQWhCRCxHQUFBLGVBQUFDLDZIQy9FQSxJQUFBYSxJQUFBLElBUUFDLElBQUEsS0FpQkEsU0FBZ0JDLElBQ2RDLEVBQ0FDLEVBQXlELENBR3pELElBQU1DLEVBQVlGLEVBQVEsU0FBUyxhQUNqQyxxQkFDQSw4Q0FBOEMsRUFJMUNHLEVBQWdELENBQ3BELE1BQU8sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFNLE1BQU9GLEVBQU0sT0FBUyxJQUFJLEVBQy9ELElBQUssQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFNLE1BQU9BLEVBQU0sS0FBTyxJQUFJLEVBQzNELE1BQU8sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFPLE1BQU9BLEVBQU0sT0FBUyxJQUFJLEVBQ2hFLEtBQU0sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFPLE1BQU9BLEVBQU0sTUFBUSxJQUFJLEVBQzlELGNBQWUsQ0FDYixNQUFPLEVBQ1AsV0FBWSxHQUNaLE1BQU9BLEVBQU0sZUFBaUIsTUFFaEMsYUFBYyxDQUNaLE1BQU8sRUFDUCxXQUFZLEdBQ1osTUFBT0EsRUFBTSxjQUFnQixPQUs1QkUsRUFBaUIsTUFBTSxRQUMxQkEsRUFBaUIsTUFBTSxNQUFRSCxFQUFRLE9BRXBDRyxFQUFpQixjQUFjLFFBQ2xDQSxFQUFpQixjQUFjLE1BQVFILEVBQVEsU0FBUyxhQUN0RCxZQUNBLGtDQUFrQyxFQUVwQ0csRUFBaUIsY0FBYyxXQUFhLElBRXpDQSxFQUFpQixhQUFhLFFBQ2pDQSxFQUFpQixhQUFhLE1BQVFILEVBQVEsU0FBUyxhQUNyRCxXQUNBLDZDQUE2QyxFQUUvQ0csRUFBaUIsYUFBYSxXQUFhLElBSTdDLElBQU1DLEVBQXFDLE9BQU8sT0FDaERELENBQWdCLEVBQ2hCLEtBQUssQ0FBQ0UsRUFBR0MsSUFBTUQsRUFBRSxNQUFRQyxFQUFFLEtBQUssRUFHNUIsQ0FBQ0MsRUFBTUMsQ0FBTyxLQUFJVixJQUFBLDJCQUN0Qk0sRUFDQSxZQUNBRixDQUFTLEVBSUxPLEVBQU8sSUFBSSxXQUdYQyxFQUFzQixFQUU1QixTQUFPYixJQUFBLG9CQUFtQixDQUN4QixDQUFFLFlBQWEsQ0FBRSxLQUFBVSxFQUFNLFVBQUFMLEVBQVcsS0FBQU8sQ0FBSSxFQUFJLFFBQUFELEVBQVMsb0JBQUFFLENBQW1CLEVBQ3ZFLENBQ0gsQ0FwRWdCQyxFQUFBWixJQUFBLG1DQUFoQmEsR0FBQSxnQ0FBQWIsc0tDekJBLElBQUFjLElBQUEsSUFRQUMsR0FBQSxJQU1BQyxJQUFBLEtBQ0FDLEdBQUEsS0FpQ0EsU0FBZ0JDLElBQWdELENBSTlELFNBQU9ILEdBQUEsa0JBS0xBLEdBQUEsUUFBNEMsQ0FBQyxDQUFDLG1CQUFpQkEsR0FBQSxJQUFFLENBQUUsQ0FBQyxFQUFHLENBQ3JFLFlBQWEsc0NBQ2QsRUFDQUksSUFBVyxDQUFFLEdBQUdBLEVBQU8sY0FBZSxDQUFDLEVBQUcsQ0FLL0MsQ0FqQmdCQyxFQUFBRixHQUFBLG9EQUFoQkcsR0FBQSxpREFBQUgsR0FvQkEsU0FBZ0JJLElBQ2RDLEVBQ0FDLEVBQThDLENBRzlDLElBQU1DLEVBQVlGLEVBQVEsU0FBUyxhQUNqQyxpQkFDQSw2Q0FBNkMsRUFJekNHLEVBQWdELENBQ3BELE1BQU8sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFNLE1BQU9GLEVBQU0sT0FBUyxJQUFJLEVBQy9ELE1BQU8sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFPLE1BQU9BLEVBQU0sT0FBUyxJQUFJLEVBQ2hFLEtBQU0sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFPLE1BQU9BLEVBQU0sTUFBUSxJQUFJLEVBQzlELE1BQU8sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFPLE1BQU9BLEVBQU0sT0FBUyxJQUFJLEVBQ2hFLElBQUssQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFNLE1BQU9BLEVBQU0sS0FBTyxJQUFJLEVBQzNELGNBQWUsQ0FDYixNQUFPLEVBQ1AsV0FBWSxHQUNaLE1BQU9BLEVBQU0sZUFBaUIsTUFFaEMsYUFBYyxDQUNaLE1BQU8sRUFDUCxXQUFZLEdBQ1osTUFBT0EsRUFBTSxjQUFnQixNQUUvQixXQUFZLENBQ1YsTUFBTyxFQUNQLFdBQVksR0FDWixNQUFPQSxFQUFNLFlBQWMsT0FLMUJFLEVBQWlCLE1BQU0sUUFDMUJBLEVBQWlCLE1BQU0sTUFBUUgsRUFBUSxPQUVwQ0csRUFBaUIsTUFBTSxRQUMxQkEsRUFBaUIsTUFBTSxNQUFRSCxFQUFRLFNBQVMsV0FFN0NHLEVBQWlCLElBQUksUUFDeEJBLEVBQWlCLElBQUksU0FBUVYsSUFBQSx3QkFBdUJPLEVBQVMsQ0FDM0QsU0FBT04sR0FBQSxpQkFBZ0JTLEVBQWlCLE1BQU0sS0FBSyxFQUNuRCxRQUFNVCxHQUFBLGlCQUFnQlMsRUFBaUIsS0FBSyxLQUFLLEVBQ2xELEdBRUVBLEVBQWlCLE1BQU0sUUFDMUJBLEVBQWlCLE1BQU0sU0FBUVQsR0FBQSxZQUFXUyxFQUFpQixJQUFJLEtBQUssR0FFakVBLEVBQWlCLGNBQWMsUUFDbENBLEVBQWlCLGNBQWMsTUFBUUgsRUFBUSxTQUFTLGFBQ3RELFlBQ0Esa0NBQWtDLEVBRXBDRyxFQUFpQixjQUFjLFdBQWEsSUFFekNBLEVBQWlCLGFBQWEsUUFDakNBLEVBQWlCLGFBQWEsTUFBUUgsRUFBUSxTQUFTLGFBQ3JELFdBQ0EsNkNBQTZDLEVBRS9DRyxFQUFpQixhQUFhLFdBQWEsSUFFeENBLEVBQWlCLFdBQVcsUUFDL0JBLEVBQWlCLFdBQVcsTUFBUUgsRUFBUSxTQUFTLGFBQ25ELHFCQUNBLDhDQUE4QyxFQUVoREcsRUFBaUIsV0FBVyxXQUFhLElBSTNDLElBQU1DLEVBQXFDLE9BQU8sT0FDaERELENBQWdCLEVBQ2hCLEtBQUssQ0FBQ0UsRUFBR0MsSUFBTUQsRUFBRSxNQUFRQyxFQUFFLEtBQUssRUFHNUIsQ0FBQ0MsRUFBTUMsQ0FBTyxLQUFJZCxHQUFBLDJCQUN0QlUsRUFDQSxZQUNBRixDQUFTLEVBSUxPLEVBQU9kLEdBQWdELEVBQUcsVUFBVSxDQUFBLENBQUUsRUFHdEVlLEVBQXNCLEVBRTVCLFNBQU9uQixJQUFBLG9CQUFtQixDQUN4QixDQUFFLFlBQWEsQ0FBRSxLQUFBZ0IsRUFBTSxVQUFBTCxFQUFXLEtBQUFPLENBQUksRUFBSSxRQUFBRCxFQUFTLG9CQUFBRSxDQUFtQixFQUN2RSxDQUNILENBN0ZnQmIsRUFBQUUsSUFBQSx3QkFBaEJELEdBQUEscUJBQUFDLHdKQ3BFQSxJQUFBWSxJQUFBLElBUUFDLEdBQUEsSUFNQUMsSUFBQSxLQWlCQSxTQUFnQkMsSUFBeUMsQ0FJdkQsU0FBT0YsR0FBQSxrQkFLTEEsR0FBQSxRQUFxQyxDQUFDLENBQUMsbUJBQWlCQSxHQUFBLEtBQUcsQ0FBRSxDQUFDLEVBQUcsQ0FDL0QsWUFBYSwrQkFDZCxFQUNBRyxJQUFXLENBQUUsR0FBR0EsRUFBTyxjQUFlLENBQUMsRUFBRyxDQUsvQyxDQWpCZ0JDLEVBQUFGLEdBQUEsNkNBQWhCRyxHQUFBLDBDQUFBSCxHQW9CQSxTQUFnQkksSUFDZEMsRUFDQUMsRUFBdUMsQ0FHdkMsSUFBTUMsRUFBWUYsRUFBUSxTQUFTLGFBQ2pDLHdCQUNBLDZDQUE2QyxFQUl6Q0csRUFBZ0QsQ0FDcEQsUUFBUyxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU0sTUFBT0YsRUFBTSxTQUFXLElBQUksRUFDbkUsVUFBVyxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU8sTUFBT0EsRUFBTSxXQUFhLElBQUksR0FJckVFLEVBQWlCLFVBQVUsUUFDOUJBLEVBQWlCLFVBQVUsTUFBUUgsRUFBUSxVQUk3QyxJQUFNSSxFQUFxQyxPQUFPLE9BQ2hERCxDQUFnQixFQUNoQixLQUFLLENBQUNFLEVBQUdDLElBQU1ELEVBQUUsTUFBUUMsRUFBRSxLQUFLLEVBRzVCLENBQUNDLEVBQU1DLENBQU8sS0FBSWQsSUFBQSwyQkFDdEJVLEVBQ0EsWUFDQUYsQ0FBUyxFQUlMTyxFQUFPZCxHQUF5QyxFQUFHLFVBQVUsQ0FBQSxDQUFFLEVBRy9EZSxFQUFzQixFQUU1QixTQUFPbEIsSUFBQSxvQkFBbUIsQ0FDeEIsQ0FBRSxZQUFhLENBQUUsS0FBQWUsRUFBTSxVQUFBTCxFQUFXLEtBQUFPLENBQUksRUFBSSxRQUFBRCxFQUFTLG9CQUFBRSxDQUFtQixFQUN2RSxDQUNILENBMUNnQmIsRUFBQUUsSUFBQSxpQkFBaEJELEdBQUEsY0FBQUMsZ0pDbkRBLElBQUFZLElBQUEsSUFRQUMsR0FBQSxJQVNBQyxJQUFBLEtBQ0FDLElBQUEsS0FzQkEsU0FBZ0JDLElBQXFDLENBSW5ELFNBQU9ILEdBQUEsa0JBS0xBLEdBQUEsUUFDRSxDQUNFLENBQUMsbUJBQWlCQSxHQUFBLEtBQUcsQ0FBRSxFQUN2QixDQUFDLGVBQWFBLEdBQUEsVUFBTUEsR0FBQSxXQUFtQixFQUFJLENBQUUsUUFBTUEsR0FBQSxLQUFHLENBQUUsQ0FBRSxDQUFDLEdBRTdELENBQUUsWUFBYSwwQkFBMEIsQ0FBRSxFQUU1Q0ksSUFBVyxDQUFFLEdBQUdBLEVBQU8sY0FBZSxDQUFDLEVBQUcsQ0FFL0MsQ0FsQmdCQyxFQUFBRixHQUFBLHlDQUFoQkcsR0FBQSxzQ0FBQUgsR0F3QkEsU0FBZ0JJLElBQ2RDLEVBQ0FDLEVBQThELENBRzlELElBQU1DLEVBQVlGLEVBQVEsU0FBUyxhQUNqQyx3QkFDQSw2Q0FBNkMsRUFJekNHLEVBQWdELENBQ3BELFFBQVMsQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFNLE1BQU9GLEVBQU0sU0FBVyxJQUFJLEVBQ25FLFVBQVcsQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFPLE1BQU9BLEVBQU0sV0FBYSxJQUFJLEVBQ3hFLE1BQU8sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFNLE1BQU9BLEVBQU0sT0FBUyxJQUFJLEVBQy9ELGNBQWUsQ0FDYixNQUFPLEVBQ1AsV0FBWSxHQUNaLE1BQU9BLEVBQU0sZUFBaUIsT0FLNUJHLEVBQXlDLENBQUUsR0FBR0gsQ0FBSyxFQUdwREUsRUFBaUIsVUFBVSxRQUM5QkEsRUFBaUIsVUFBVSxNQUFRSCxFQUFRLFVBRXhDRyxFQUFpQixNQUFNLFFBQzFCQSxFQUFpQixNQUFNLE1BQVFILEVBQVEsT0FFcENHLEVBQWlCLGNBQWMsUUFDbENBLEVBQWlCLGNBQWMsTUFBUUgsRUFBUSxTQUFTLGFBQ3RELFlBQ0Esa0NBQWtDLEVBRXBDRyxFQUFpQixjQUFjLFdBQWEsSUFJOUMsSUFBTUUsRUFBcUMsT0FBTyxPQUNoREYsQ0FBZ0IsRUFDaEIsS0FBSyxDQUFDRyxFQUFHQyxJQUFNRCxFQUFFLE1BQVFDLEVBQUUsS0FBSyxFQUc1QixDQUFDQyxFQUFNQyxDQUFPLEtBQUlmLElBQUEsMkJBQ3RCVyxFQUNBLFlBQ0FILENBQVMsRUFJTFEsRUFBT2YsR0FBcUMsRUFBRyxVQUNuRFMsQ0FBNEMsRUFJeENPLEtBQXNCbEIsSUFBQSx1QkFDMUJPLEVBQ0FHLEVBQ0FDLEVBQ0FGLENBQVMsRUFHWCxTQUFPWCxJQUFBLG9CQUFtQixDQUN4QixDQUFFLFlBQWEsQ0FBRSxLQUFBaUIsRUFBTSxVQUFBTixFQUFXLEtBQUFRLENBQUksRUFBSSxRQUFBRCxFQUFTLG9CQUFBRSxDQUFtQixFQUN2RSxDQUNILENBcEVnQmQsRUFBQUUsSUFBQSxhQUFoQkQsR0FBQSxVQUFBQyxnSkNoRUEsSUFBQWEsSUFBQSxJQVFBQyxHQUFBLElBTUFDLElBQUEsS0FpQkEsU0FBZ0JDLElBQXFDLENBSW5ELFNBQU9GLEdBQUEsa0JBS0xBLEdBQUEsUUFBaUMsQ0FBQyxDQUFDLG1CQUFpQkEsR0FBQSxLQUFHLENBQUUsQ0FBQyxFQUFHLENBQzNELFlBQWEsMkJBQ2QsRUFDQUcsSUFBVyxDQUFFLEdBQUdBLEVBQU8sY0FBZSxDQUFDLEVBQUcsQ0FFL0MsQ0FkZ0JDLEVBQUFGLEdBQUEseUNBQWhCRyxHQUFBLHNDQUFBSCxHQWlCQSxTQUFnQkksSUFDZEMsRUFDQUMsRUFBbUMsQ0FHbkMsSUFBTUMsRUFBWUYsRUFBUSxTQUFTLGFBQ2pDLHdCQUNBLDZDQUE2QyxFQUl6Q0csRUFBZ0QsQ0FDcEQsUUFBUyxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU0sTUFBT0YsRUFBTSxTQUFXLElBQUksRUFDbkUsVUFBVyxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU8sTUFBT0EsRUFBTSxXQUFhLElBQUksR0FJckVFLEVBQWlCLFVBQVUsUUFDOUJBLEVBQWlCLFVBQVUsTUFBUUgsRUFBUSxVQUk3QyxJQUFNSSxFQUFxQyxPQUFPLE9BQ2hERCxDQUFnQixFQUNoQixLQUFLLENBQUNFLEVBQUdDLElBQU1ELEVBQUUsTUFBUUMsRUFBRSxLQUFLLEVBRzVCLENBQUNDLEVBQU1DLENBQU8sS0FBSWQsSUFBQSwyQkFDdEJVLEVBQ0EsWUFDQUYsQ0FBUyxFQUlMTyxFQUFPZCxHQUFxQyxFQUFHLFVBQVUsQ0FBQSxDQUFFLEVBRzNEZSxFQUFzQixFQUU1QixTQUFPbEIsSUFBQSxvQkFBbUIsQ0FDeEIsQ0FBRSxZQUFhLENBQUUsS0FBQWUsRUFBTSxVQUFBTCxFQUFXLEtBQUFPLENBQUksRUFBSSxRQUFBRCxFQUFTLG9CQUFBRSxDQUFtQixFQUN2RSxDQUNILENBMUNnQmIsRUFBQUUsSUFBQSxhQUFoQkQsR0FBQSxVQUFBQyxvSkNoREEsSUFBQVksSUFBQSxJQVFBQyxHQUFBLElBTUFDLElBQUEsS0FrQkEsU0FBZ0JDLElBQXVDLENBSXJELFNBQU9GLEdBQUEsa0JBS0xBLEdBQUEsUUFBbUMsQ0FBQyxDQUFDLG1CQUFpQkEsR0FBQSxJQUFFLENBQUUsQ0FBQyxFQUFHLENBQzVELFlBQWEsNkJBQ2QsRUFDQUcsSUFBVyxDQUFFLEdBQUdBLEVBQU8sY0FBZSxFQUFFLEVBQUcsQ0FFaEQsQ0FkZ0JDLEVBQUFGLEdBQUEsMkNBQWhCRyxHQUFBLHdDQUFBSCxHQWlCQSxTQUFnQkksSUFDZEMsRUFDQUMsRUFBcUMsQ0FHckMsSUFBTUMsRUFBWUYsRUFBUSxTQUFTLGFBQ2pDLFdBQ0EsNkNBQTZDLEVBSXpDRyxFQUFnRCxDQUNwRCxRQUFTLENBQUUsTUFBTyxFQUFHLFdBQVksR0FBTSxNQUFPRixFQUFNLFNBQVcsSUFBSSxFQUNuRSxLQUFNLENBQUUsTUFBTyxFQUFHLFdBQVksR0FBTyxNQUFPQSxFQUFNLE1BQVEsSUFBSSxFQUM5RCxNQUFPLENBQUUsTUFBTyxFQUFHLFdBQVksR0FBTyxNQUFPQSxFQUFNLE9BQVMsSUFBSSxHQUk1REcsRUFBcUMsT0FBTyxPQUNoREQsQ0FBZ0IsRUFDaEIsS0FBSyxDQUFDRSxFQUFHQyxJQUFNRCxFQUFFLE1BQVFDLEVBQUUsS0FBSyxFQUc1QixDQUFDQyxFQUFNQyxDQUFPLEtBQUlkLElBQUEsMkJBQ3RCVSxFQUNBLFlBQ0FGLENBQVMsRUFJTE8sRUFBT2QsR0FBdUMsRUFBRyxVQUFVLENBQUEsQ0FBRSxFQUc3RGUsRUFBc0IsRUFFNUIsU0FBT2xCLElBQUEsb0JBQW1CLENBQ3hCLENBQUUsWUFBYSxDQUFFLEtBQUFlLEVBQU0sVUFBQUwsRUFBVyxLQUFBTyxDQUFJLEVBQUksUUFBQUQsRUFBUyxvQkFBQUUsQ0FBbUIsRUFDdkUsQ0FDSCxDQXRDZ0JiLEVBQUFFLElBQUEsZUFBaEJELEdBQUEsWUFBQUMsOEpDakRBLElBQUFZLElBQUEsSUFPQUMsR0FBQSxJQU1BQyxJQUFBLEtBZ0JBLFNBQWdCQyxJQUE0QyxDQUkxRCxTQUFPRixHQUFBLGtCQUtMQSxHQUFBLFFBQXdDLENBQUMsQ0FBQyxtQkFBaUJBLEdBQUEsSUFBRSxDQUFFLENBQUMsRUFBRyxDQUNqRSxZQUFhLGtDQUNkLEVBQ0FHLElBQVcsQ0FBRSxHQUFHQSxFQUFPLGNBQWUsRUFBRSxFQUFHLENBS2hELENBakJnQkMsRUFBQUYsR0FBQSxnREFBaEJHLEdBQUEsNkNBQUFILEdBb0JBLFNBQWdCSSxJQUNkQyxFQUNBQyxFQUEwQyxDQUcxQyxJQUFNQyxFQUFZRixFQUFRLFNBQVMsYUFDakMsV0FDQSw2Q0FBNkMsRUFJekNHLEVBQWdELENBQ3BELEtBQU0sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFPLE1BQU9GLEVBQU0sTUFBUSxJQUFJLEdBSTFERyxFQUFxQyxPQUFPLE9BQ2hERCxDQUFnQixFQUNoQixLQUFLLENBQUNFLEVBQUdDLElBQU1ELEVBQUUsTUFBUUMsRUFBRSxLQUFLLEVBRzVCLENBQUNDLEVBQU1DLENBQU8sS0FBSWQsSUFBQSwyQkFDdEJVLEVBQ0EsWUFDQUYsQ0FBUyxFQUlMTyxFQUFPZCxHQUE0QyxFQUFHLFVBQVUsQ0FBQSxDQUFFLEVBR2xFZSxFQUFzQixFQUU1QixTQUFPbEIsSUFBQSxvQkFBbUIsQ0FDeEIsQ0FBRSxZQUFhLENBQUUsS0FBQWUsRUFBTSxVQUFBTCxFQUFXLEtBQUFPLENBQUksRUFBSSxRQUFBRCxFQUFTLG9CQUFBRSxDQUFtQixFQUN2RSxDQUNILENBcENnQmIsRUFBQUUsSUFBQSxvQkFBaEJELEdBQUEsaUJBQUFDLDhLQ2pEQSxJQUFBWSxJQUFBLElBT0FDLEdBQUEsSUFNQUMsSUFBQSxLQWdCQSxTQUFnQkMsSUFBb0QsQ0FJbEUsU0FBT0YsR0FBQSxrQkFLTEEsR0FBQSxRQUFnRCxDQUFDLENBQUMsbUJBQWlCQSxHQUFBLElBQUUsQ0FBRSxDQUFDLEVBQUcsQ0FDekUsWUFBYSwwQ0FDZCxFQUNBRyxJQUFXLENBQUUsR0FBR0EsRUFBTyxjQUFlLEVBQUUsRUFBRyxDQUtoRCxDQWpCZ0JDLEVBQUFGLEdBQUEsd0RBQWhCRyxHQUFBLHFEQUFBSCxHQW9CQSxTQUFnQkksSUFDZEMsRUFDQUMsRUFBa0QsQ0FHbEQsSUFBTUMsRUFBWUYsRUFBUSxTQUFTLGFBQ2pDLFdBQ0EsNkNBQTZDLEVBSXpDRyxFQUFnRCxDQUNwRCxRQUFTLENBQUUsTUFBTyxFQUFHLFdBQVksR0FBTSxNQUFPRixFQUFNLFNBQVcsSUFBSSxHQUkvREcsRUFBcUMsT0FBTyxPQUNoREQsQ0FBZ0IsRUFDaEIsS0FBSyxDQUFDRSxFQUFHQyxJQUFNRCxFQUFFLE1BQVFDLEVBQUUsS0FBSyxFQUc1QixDQUFDQyxFQUFNQyxDQUFPLEtBQUlkLElBQUEsMkJBQ3RCVSxFQUNBLFlBQ0FGLENBQVMsRUFJTE8sRUFBT2QsR0FBb0QsRUFBRyxVQUNsRSxDQUFBLENBQUUsRUFJRWUsRUFBc0IsRUFFNUIsU0FBT2xCLElBQUEsb0JBQW1CLENBQ3hCLENBQUUsWUFBYSxDQUFFLEtBQUFlLEVBQU0sVUFBQUwsRUFBVyxLQUFBTyxDQUFJLEVBQUksUUFBQUQsRUFBUyxvQkFBQUUsQ0FBbUIsRUFDdkUsQ0FDSCxDQXRDZ0JiLEVBQUFFLElBQUEsNEJBQWhCRCxHQUFBLHlCQUFBQywwSkNqREEsSUFBQVksR0FBQSxJQVVBQyxHQUFBLElBUUFDLElBQUEsS0EwQkEsU0FBZ0JDLElBQTBDLENBSXhELFNBQU9GLEdBQUEsa0JBS0xBLEdBQUEsUUFDRSxDQUNFLENBQUMsbUJBQWlCQSxHQUFBLElBQUUsQ0FBRSxFQUN0QixDQUFDLGNBQVlBLEdBQUEsSUFBRSxDQUFFLEVBQ2pCLENBQUMsbUJBQWlCQSxHQUFBLFdBQW1CLENBQUUsRUFDdkMsQ0FBQyxxQkFBbUJBLEdBQUEsV0FBT0EsR0FBQSxXQUFtQixDQUFFLENBQUMsR0FFbkQsQ0FBRSxZQUFhLCtCQUErQixDQUFFLEVBRWpERyxJQUFXLENBQUUsR0FBR0EsRUFBTyxjQUFlLENBQUMsRUFBRyxDQUsvQyxDQXZCZ0JDLEVBQUFGLEdBQUEsOENBQWhCRyxHQUFBLDJDQUFBSCxHQTZCQSxTQUFnQkksSUFDZEMsRUFDQUMsRUFBd0UsQ0FHeEUsSUFBTUMsRUFBWUYsRUFBUSxTQUFTLGFBQ2pDLFdBQ0EsNkNBQTZDLEVBSXpDRyxFQUFnRCxDQUNwRCxLQUFNLENBQUUsTUFBTyxFQUFHLFdBQVksR0FBTSxNQUFPRixFQUFNLE1BQVEsSUFBSSxFQUM3RCxLQUFNLENBQUUsTUFBTyxFQUFHLFdBQVksR0FBTyxNQUFPQSxFQUFNLE1BQVEsSUFBSSxHQUkxREcsRUFBOEMsQ0FBRSxHQUFHSCxDQUFLLEVBR3pERSxFQUFpQixLQUFLLFFBQ3pCQSxFQUFpQixLQUFLLFNBQVFYLEdBQUEsV0FDNUIsNkNBQTZDLEdBS2pELElBQU1hLEVBQXFDLE9BQU8sT0FDaERGLENBQWdCLEVBQ2hCLEtBQUssQ0FBQ0csRUFBR0MsSUFBTUQsRUFBRSxNQUFRQyxFQUFFLEtBQUssRUFHNUIsQ0FBQ0MsRUFBTUMsQ0FBTyxLQUFJZixJQUFBLDJCQUN0QlcsRUFDQSxZQUNBSCxDQUFTLEVBSUxRLEVBQU9mLEdBQTBDLEVBQUcsVUFDeERTLENBQWlELEVBSTdDTyxFQUFzQixFQUU1QixTQUFPbkIsR0FBQSxvQkFBbUIsQ0FDeEIsQ0FBRSxZQUFhLENBQUUsS0FBQWdCLEVBQU0sVUFBQU4sRUFBVyxLQUFBUSxDQUFJLEVBQUksUUFBQUQsRUFBUyxvQkFBQUUsQ0FBbUIsRUFDdkUsQ0FDSCxDQWpEZ0JkLEVBQUFFLElBQUEsa0JBQWhCRCxHQUFBLGVBQUFDLDRKQ3pFQSxJQUFBYSxJQUFBLElBU0FDLEdBQUEsSUFRQUMsSUFBQSxLQXlCQSxTQUFnQkMsSUFBMkMsQ0FJekQsU0FBT0YsR0FBQSxrQkFLTEEsR0FBQSxRQUNFLENBQ0UsQ0FBQyxtQkFBaUJBLEdBQUEsSUFBRSxDQUFFLEVBQ3RCLENBQUMsY0FBWUEsR0FBQSxJQUFFLENBQUUsRUFDakIsQ0FBQyxtQkFBaUJBLEdBQUEsV0FBbUIsQ0FBRSxFQUN2QyxDQUFDLHFCQUFtQkEsR0FBQSxXQUFPQSxHQUFBLFdBQW1CLENBQUUsQ0FBQyxHQUVuRCxDQUFFLFlBQWEsZ0NBQWdDLENBQUUsRUFFbERHLElBQVcsQ0FBRSxHQUFHQSxFQUFPLGNBQWUsRUFBRSxFQUFHLENBS2hELENBdkJnQkMsRUFBQUYsR0FBQSwrQ0FBaEJHLEdBQUEsNENBQUFILEdBNkJBLFNBQWdCSSxJQUNkQyxFQUNBQyxFQUEwRSxDQUcxRSxJQUFNQyxFQUFZRixFQUFRLFNBQVMsYUFDakMsV0FDQSw2Q0FBNkMsRUFJekNHLEVBQWdELENBQ3BELEtBQU0sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFNLE1BQU9GLEVBQU0sTUFBUSxJQUFJLEdBSXpERyxFQUErQyxDQUFFLEdBQUdILENBQUssRUFHekRJLEVBQXFDLE9BQU8sT0FDaERGLENBQWdCLEVBQ2hCLEtBQUssQ0FBQ0csRUFBR0MsSUFBTUQsRUFBRSxNQUFRQyxFQUFFLEtBQUssRUFHNUIsQ0FBQ0MsRUFBTUMsQ0FBTyxLQUFJZixJQUFBLDJCQUN0QlcsRUFDQSxZQUNBSCxDQUFTLEVBSUxRLEVBQU9mLEdBQTJDLEVBQUcsVUFDekRTLENBQWtELEVBSTlDTyxFQUFzQixFQUU1QixTQUFPbkIsSUFBQSxvQkFBbUIsQ0FDeEIsQ0FBRSxZQUFhLENBQUUsS0FBQWdCLEVBQU0sVUFBQU4sRUFBVyxLQUFBUSxDQUFJLEVBQUksUUFBQUQsRUFBUyxvQkFBQUUsQ0FBbUIsRUFDdkUsQ0FDSCxDQXpDZ0JkLEVBQUFFLElBQUEsbUJBQWhCRCxHQUFBLGdCQUFBQyxrS0N2RUEsSUFBQWEsR0FBQSxJQVFBQyxHQUFBLElBTUFDLElBQUEsS0FvQkEsU0FBZ0JDLElBQThDLENBSTVELFNBQU9GLEdBQUEsa0JBS0xBLEdBQUEsUUFDRSxDQUNFLENBQUMsbUJBQWlCQSxHQUFBLElBQUUsQ0FBRSxFQUN0QixDQUFDLE9BQUtBLEdBQUEsSUFBRSxDQUFFLEdBRVosQ0FBRSxZQUFhLG1DQUFtQyxDQUFFLEVBRXJERyxJQUFXLENBQUUsR0FBR0EsRUFBTyxjQUFlLENBQUMsRUFBRyxDQUsvQyxDQXJCZ0JDLEVBQUFGLEdBQUEsa0RBQWhCRyxHQUFBLCtDQUFBSCxHQTRCQSxTQUFnQkksSUFDZEMsRUFDQUMsRUFDbUMsQ0FHbkMsSUFBTUMsRUFBWUYsRUFBUSxTQUFTLGFBQ2pDLFdBQ0EsNkNBQTZDLEVBSXpDRyxFQUFnRCxDQUNwRCxTQUFVLENBQUUsTUFBTyxFQUFHLFdBQVksR0FBTSxNQUFPRixFQUFNLFVBQVksSUFBSSxFQUNyRSxLQUFNLENBQUUsTUFBTyxFQUFHLFdBQVksR0FBTyxNQUFPQSxFQUFNLE1BQVEsSUFBSSxHQUkxREcsRUFBa0QsQ0FBRSxHQUFHSCxDQUFLLEVBRzdERSxFQUFpQixLQUFLLFFBQ3pCQSxFQUFpQixLQUFLLFNBQVFYLEdBQUEsV0FDNUIsNkNBQTZDLEdBS2pELElBQU1hLEVBQXFDLE9BQU8sT0FDaERGLENBQWdCLEVBQ2hCLEtBQUssQ0FBQ0csRUFBR0MsSUFBTUQsRUFBRSxNQUFRQyxFQUFFLEtBQUssRUFHNUIsQ0FBQ0MsRUFBTUMsQ0FBTyxLQUFJZixJQUFBLDJCQUN0QlcsRUFDQSxZQUNBSCxDQUFTLEVBSUxRLEVBQU9mLEdBQThDLEVBQUcsVUFDNURTLENBQXFELEVBSWpETyxFQUFzQixFQUU1QixTQUFPbkIsR0FBQSxvQkFBbUIsQ0FDeEIsQ0FBRSxZQUFhLENBQUUsS0FBQWdCLEVBQU0sVUFBQU4sRUFBVyxLQUFBUSxDQUFJLEVBQUksUUFBQUQsRUFBUyxvQkFBQUUsQ0FBbUIsRUFDdkUsQ0FDSCxDQWxEZ0JkLEVBQUFFLElBQUEsc0JBQWhCRCxHQUFBLG1CQUFBQyxvS0M5REEsSUFBQWEsSUFBQSxJQU9BQyxHQUFBLElBTUFDLElBQUEsS0FvQkEsU0FBZ0JDLElBQStDLENBSTdELFNBQU9GLEdBQUEsa0JBS0xBLEdBQUEsUUFDRSxDQUNFLENBQUMsbUJBQWlCQSxHQUFBLElBQUUsQ0FBRSxFQUN0QixDQUFDLE9BQUtBLEdBQUEsSUFBRSxDQUFFLEdBRVosQ0FBRSxZQUFhLG9DQUFvQyxDQUFFLEVBRXRERyxJQUFXLENBQUUsR0FBR0EsRUFBTyxjQUFlLEVBQUUsRUFBRyxDQUtoRCxDQXJCZ0JDLEVBQUFGLEdBQUEsbURBQWhCRyxHQUFBLGdEQUFBSCxHQTRCQSxTQUFnQkksSUFDZEMsRUFDQUMsRUFDb0MsQ0FHcEMsSUFBTUMsRUFBWUYsRUFBUSxTQUFTLGFBQ2pDLFdBQ0EsNkNBQTZDLEVBSXpDRyxFQUFnRCxDQUNwRCxTQUFVLENBQUUsTUFBTyxFQUFHLFdBQVksR0FBTSxNQUFPRixFQUFNLFVBQVksSUFBSSxFQUNyRSxPQUFRLENBQUUsTUFBTyxFQUFHLFdBQVksR0FBTyxNQUFPQSxFQUFNLFFBQVUsSUFBSSxHQUk5REcsRUFBbUQsQ0FBRSxHQUFHSCxDQUFLLEVBRzdESSxFQUFxQyxPQUFPLE9BQ2hERixDQUFnQixFQUNoQixLQUFLLENBQUNHLEVBQUdDLElBQU1ELEVBQUUsTUFBUUMsRUFBRSxLQUFLLEVBRzVCLENBQUNDLEVBQU1DLENBQU8sS0FBSWYsSUFBQSwyQkFDdEJXLEVBQ0EsWUFDQUgsQ0FBUyxFQUlMUSxFQUFPZixHQUErQyxFQUFHLFVBQzdEUyxDQUFzRCxFQUlsRE8sRUFBc0IsRUFFNUIsU0FBT25CLElBQUEsb0JBQW1CLENBQ3hCLENBQUUsWUFBYSxDQUFFLEtBQUFnQixFQUFNLFVBQUFOLEVBQVcsS0FBQVEsQ0FBSSxFQUFJLFFBQUFELEVBQVMsb0JBQUFFLENBQW1CLEVBQ3ZFLENBQ0gsQ0EzQ2dCZCxFQUFBRSxJQUFBLHVCQUFoQkQsR0FBQSxvQkFBQUMsNEpDN0RBLElBQUFhLEdBQUEsSUFRQUMsR0FBQSxJQU1BQyxJQUFBLEtBbUJBLFNBQWdCQyxJQUEyQyxDQUl6RCxTQUFPRixHQUFBLGtCQUtMQSxHQUFBLFFBQXVDLENBQUMsQ0FBQyxtQkFBaUJBLEdBQUEsSUFBRSxDQUFFLENBQUMsRUFBRyxDQUNoRSxZQUFhLGlDQUNkLEVBQ0FHLElBQVcsQ0FBRSxHQUFHQSxFQUFPLGNBQWUsQ0FBQyxFQUFHLENBSy9DLENBakJnQkMsRUFBQUYsR0FBQSwrQ0FBaEJHLEdBQUEsNENBQUFILEdBb0JBLFNBQWdCSSxJQUNkQyxFQUNBQyxFQUF5QyxDQUd6QyxJQUFNQyxFQUFZRixFQUFRLFNBQVMsYUFDakMsV0FDQSw2Q0FBNkMsRUFJekNHLEVBQWdELENBQ3BELFFBQVMsQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFNLE1BQU9GLEVBQU0sU0FBVyxJQUFJLEVBQ25FLEtBQU0sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFPLE1BQU9BLEVBQU0sTUFBUSxJQUFJLEVBQzlELE1BQU8sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFPLE1BQU9BLEVBQU0sT0FBUyxJQUFJLEVBQ2hFLEtBQU0sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFPLE1BQU9BLEVBQU0sTUFBUSxJQUFJLEdBSTNERSxFQUFpQixLQUFLLFFBQ3pCQSxFQUFpQixLQUFLLFNBQVFYLEdBQUEsV0FDNUIsNkNBQTZDLEdBS2pELElBQU1ZLEVBQXFDLE9BQU8sT0FDaERELENBQWdCLEVBQ2hCLEtBQUssQ0FBQ0UsRUFBR0MsSUFBTUQsRUFBRSxNQUFRQyxFQUFFLEtBQUssRUFHNUIsQ0FBQ0MsRUFBTUMsQ0FBTyxLQUFJZCxJQUFBLDJCQUN0QlUsRUFDQSxZQUNBRixDQUFTLEVBSUxPLEVBQU9kLEdBQTJDLEVBQUcsVUFBVSxDQUFBLENBQUUsRUFHakVlLEVBQXNCLEVBRTVCLFNBQU9sQixHQUFBLG9CQUFtQixDQUN4QixDQUFFLFlBQWEsQ0FBRSxLQUFBZSxFQUFNLFVBQUFMLEVBQVcsS0FBQU8sQ0FBSSxFQUFJLFFBQUFELEVBQVMsb0JBQUFFLENBQW1CLEVBQ3ZFLENBQ0gsQ0E5Q2dCYixFQUFBRSxJQUFBLG1CQUFoQkQsR0FBQSxnQkFBQUMsOEpDckRBLElBQUFZLEdBQUEsSUFRQUMsR0FBQSxJQU9BQyxJQUFBLEtBcUJBLFNBQWdCQyxJQUE0QyxDQUkxRCxTQUFPRixHQUFBLGtCQUtMQSxHQUFBLFFBQ0UsQ0FDRSxDQUFDLG1CQUFpQkEsR0FBQSxJQUFFLENBQUUsRUFDdEIsQ0FBQyxXQUFTQSxHQUFBLFdBQW1CLENBQUUsR0FFakMsQ0FBRSxZQUFhLGlDQUFpQyxDQUFFLEVBRW5ERyxJQUFXLENBQUUsR0FBR0EsRUFBTyxjQUFlLEVBQUUsRUFBRyxDQUtoRCxDQXJCZ0JDLEVBQUFGLEdBQUEsZ0RBQWhCRyxHQUFBLDZDQUFBSCxHQTRCQSxTQUFnQkksSUFDZEMsRUFDQUMsRUFBNEUsQ0FHNUUsSUFBTUMsRUFBWUYsRUFBUSxTQUFTLGFBQ2pDLFdBQ0EsNkNBQTZDLEVBSXpDRyxFQUFnRCxDQUNwRCxRQUFTLENBQUUsTUFBTyxFQUFHLFdBQVksR0FBTSxNQUFPRixFQUFNLFNBQVcsSUFBSSxFQUNuRSxLQUFNLENBQUUsTUFBTyxFQUFHLFdBQVksR0FBTyxNQUFPQSxFQUFNLE1BQVEsSUFBSSxFQUM5RCxLQUFNLENBQUUsTUFBTyxFQUFHLFdBQVksR0FBTyxNQUFPQSxFQUFNLE1BQVEsSUFBSSxHQUkxREcsRUFBZ0QsQ0FBRSxHQUFHSCxDQUFLLEVBRzNERSxFQUFpQixLQUFLLFFBQ3pCQSxFQUFpQixLQUFLLFNBQVFYLEdBQUEsV0FDNUIsNkNBQTZDLEdBS2pELElBQU1hLEVBQXFDLE9BQU8sT0FDaERGLENBQWdCLEVBQ2hCLEtBQUssQ0FBQ0csRUFBR0MsSUFBTUQsRUFBRSxNQUFRQyxFQUFFLEtBQUssRUFHNUIsQ0FBQ0MsRUFBTUMsQ0FBTyxLQUFJZixJQUFBLDJCQUN0QlcsRUFDQSxZQUNBSCxDQUFTLEVBSUxRLEVBQU9mLEdBQTRDLEVBQUcsVUFDMURTLENBQW1ELEVBSS9DTyxFQUFzQixFQUU1QixTQUFPbkIsR0FBQSxvQkFBbUIsQ0FDeEIsQ0FBRSxZQUFhLENBQUUsS0FBQWdCLEVBQU0sVUFBQU4sRUFBVyxLQUFBUSxDQUFJLEVBQUksUUFBQUQsRUFBUyxvQkFBQUUsQ0FBbUIsRUFDdkUsQ0FDSCxDQWxEZ0JkLEVBQUFFLElBQUEsb0JBQWhCRCxHQUFBLGlCQUFBQyw4SkNoRUEsSUFBQWEsSUFBQSxJQU9BQyxHQUFBLElBT0FDLElBQUEsS0FvQkEsU0FBZ0JDLElBQTRDLENBSTFELFNBQU9GLEdBQUEsa0JBS0xBLEdBQUEsUUFDRSxDQUNFLENBQUMsbUJBQWlCQSxHQUFBLElBQUUsQ0FBRSxFQUN0QixDQUFDLFdBQVNBLEdBQUEsV0FBbUIsQ0FBRSxHQUVqQyxDQUFFLFlBQWEsaUNBQWlDLENBQUUsRUFFbkRHLElBQVcsQ0FBRSxHQUFHQSxFQUFPLGNBQWUsRUFBRSxFQUFHLENBS2hELENBckJnQkMsRUFBQUYsR0FBQSxnREFBaEJHLEdBQUEsNkNBQUFILEdBNEJBLFNBQWdCSSxJQUNkQyxFQUNBQyxFQUE0RSxDQUc1RSxJQUFNQyxFQUFZRixFQUFRLFNBQVMsYUFDakMsV0FDQSw2Q0FBNkMsRUFJekNHLEVBQWdELENBQ3BELFFBQVMsQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFNLE1BQU9GLEVBQU0sU0FBVyxJQUFJLEVBQ25FLEtBQU0sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFPLE1BQU9BLEVBQU0sTUFBUSxJQUFJLEdBSTFERyxFQUFnRCxDQUFFLEdBQUdILENBQUssRUFHMURJLEVBQXFDLE9BQU8sT0FDaERGLENBQWdCLEVBQ2hCLEtBQUssQ0FBQ0csRUFBR0MsSUFBTUQsRUFBRSxNQUFRQyxFQUFFLEtBQUssRUFHNUIsQ0FBQ0MsRUFBTUMsQ0FBTyxLQUFJZixJQUFBLDJCQUN0QlcsRUFDQSxZQUNBSCxDQUFTLEVBSUxRLEVBQU9mLEdBQTRDLEVBQUcsVUFDMURTLENBQW1ELEVBSS9DTyxFQUFzQixFQUU1QixTQUFPbkIsSUFBQSxvQkFBbUIsQ0FDeEIsQ0FBRSxZQUFhLENBQUUsS0FBQWdCLEVBQU0sVUFBQU4sRUFBVyxLQUFBUSxDQUFJLEVBQUksUUFBQUQsRUFBUyxvQkFBQUUsQ0FBbUIsRUFDdkUsQ0FDSCxDQTFDZ0JkLEVBQUFFLElBQUEsb0JBQWhCRCxHQUFBLGlCQUFBQyxzSkM5REEsSUFBQWEsSUFBQSxJQVFBQyxHQUFBLElBT0FDLElBQUEsS0FxQkEsU0FBZ0JDLElBQXdDLENBSXRELFNBQU9GLEdBQUEsa0JBS0xBLEdBQUEsUUFDRSxDQUNFLENBQUMsbUJBQWlCQSxHQUFBLElBQUUsQ0FBRSxFQUN0QixDQUFDLFlBQVVBLEdBQUEsS0FBRyxDQUFFLEdBRWxCLENBQUUsWUFBYSw2QkFBNkIsQ0FBRSxFQUUvQ0csSUFBVyxDQUFFLEdBQUdBLEVBQU8sY0FBZSxDQUFDLEVBQUcsQ0FFL0MsQ0FsQmdCQyxFQUFBRixHQUFBLDRDQUFoQkcsR0FBQSx5Q0FBQUgsR0F3QkEsU0FBZ0JJLElBQ2RDLEVBQ0FDLEVBQW9FLENBR3BFLElBQU1DLEVBQVlGLEVBQVEsU0FBUyxhQUNqQyxXQUNBLDZDQUE2QyxFQUl6Q0csRUFBZ0QsQ0FDcEQsS0FBTSxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU0sTUFBT0YsRUFBTSxNQUFRLElBQUksRUFDN0QsTUFBTyxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU0sTUFBT0EsRUFBTSxPQUFTLElBQUksRUFDL0QsY0FBZSxDQUNiLE1BQU8sRUFDUCxXQUFZLEdBQ1osTUFBT0EsRUFBTSxlQUFpQixPQUs1QkcsRUFBNEMsQ0FBRSxHQUFHSCxDQUFLLEVBR3ZERSxFQUFpQixjQUFjLFFBQ2xDQSxFQUFpQixjQUFjLE1BQVFILEVBQVEsVUFJakQsSUFBTUssRUFBcUMsT0FBTyxPQUNoREYsQ0FBZ0IsRUFDaEIsS0FBSyxDQUFDRyxFQUFHQyxJQUFNRCxFQUFFLE1BQVFDLEVBQUUsS0FBSyxFQUc1QixDQUFDQyxFQUFNQyxDQUFPLEtBQUlmLElBQUEsMkJBQ3RCVyxFQUNBLFlBQ0FILENBQVMsRUFJTFEsRUFBT2YsR0FBd0MsRUFBRyxVQUN0RFMsQ0FBK0MsRUFJM0NPLEVBQXNCLEVBRTVCLFNBQU9uQixJQUFBLG9CQUFtQixDQUN4QixDQUFFLFlBQWEsQ0FBRSxLQUFBZ0IsRUFBTSxVQUFBTixFQUFXLEtBQUFRLENBQUksRUFBSSxRQUFBRCxFQUFTLG9CQUFBRSxDQUFtQixFQUN2RSxDQUNILENBcERnQmQsRUFBQUUsSUFBQSxnQkFBaEJELEdBQUEsYUFBQUMsb0tDNURBLElBQUFhLElBQUEsSUFRQUMsR0FBQSxJQU9BQyxJQUFBLEtBeUJBLFNBQWdCQyxJQUErQyxDQUk3RCxTQUFPRixHQUFBLGtCQUtMQSxHQUFBLFFBQ0UsQ0FDRSxDQUFDLG1CQUFpQkEsR0FBQSxJQUFFLENBQUUsRUFDdEIsQ0FBQyxZQUFVQSxHQUFBLEtBQUcsQ0FBRSxFQUNoQixDQUFDLGNBQVlBLEdBQUEsSUFBRSxDQUFFLEdBRW5CLENBQUUsWUFBYSxvQ0FBb0MsQ0FBRSxFQUV0REcsSUFBVyxDQUFFLEdBQUdBLEVBQU8sY0FBZSxFQUFFLEVBQUcsQ0FLaEQsQ0F0QmdCQyxFQUFBRixHQUFBLG1EQUFoQkcsR0FBQSxnREFBQUgsR0E2QkEsU0FBZ0JJLElBQ2RDLEVBQ0FDLEVBQ29DLENBR3BDLElBQU1DLEVBQVlGLEVBQVEsU0FBUyxhQUNqQyxXQUNBLDZDQUE2QyxFQUl6Q0csRUFBZ0QsQ0FDcEQsS0FBTSxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU0sTUFBT0YsRUFBTSxNQUFRLElBQUksRUFDN0QsTUFBTyxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU0sTUFBT0EsRUFBTSxPQUFTLElBQUksRUFDL0QsY0FBZSxDQUNiLE1BQU8sRUFDUCxXQUFZLEdBQ1osTUFBT0EsRUFBTSxlQUFpQixPQUs1QkcsRUFBbUQsQ0FBRSxHQUFHSCxDQUFLLEVBRzdESSxFQUFxQyxPQUFPLE9BQ2hERixDQUFnQixFQUNoQixLQUFLLENBQUNHLEVBQUdDLElBQU1ELEVBQUUsTUFBUUMsRUFBRSxLQUFLLEVBRzVCLENBQUNDLEVBQU1DLENBQU8sS0FBSWYsSUFBQSwyQkFDdEJXLEVBQ0EsWUFDQUgsQ0FBUyxFQUlMUSxFQUFPZixHQUErQyxFQUFHLFVBQzdEUyxDQUFzRCxFQUlsRE8sRUFBc0IsRUFFNUIsU0FBT25CLElBQUEsb0JBQW1CLENBQ3hCLENBQUUsWUFBYSxDQUFFLEtBQUFnQixFQUFNLFVBQUFOLEVBQVcsS0FBQVEsQ0FBSSxFQUFJLFFBQUFELEVBQVMsb0JBQUFFLENBQW1CLEVBQ3ZFLENBQ0gsQ0FoRGdCZCxFQUFBRSxJQUFBLHVCQUFoQkQsR0FBQSxvQkFBQUMsMEhDckVBLElBQUFhLElBQUEsSUFRQUMsSUFBQSxLQWtCQSxTQUFnQkMsSUFDZEMsRUFDQUMsRUFBc0QsQ0FHdEQsSUFBTUMsRUFBWUYsRUFBUSxTQUFTLGFBQ2pDLHFCQUNBLDhDQUE4QyxFQUkxQ0csRUFBZ0QsQ0FDcEQsK0JBQWdDLENBQzlCLE1BQU8sRUFDUCxXQUFZLEdBQ1osTUFBT0YsRUFBTSxnQ0FBa0MsTUFFakQsdUJBQXdCLENBQ3RCLE1BQU8sRUFDUCxXQUFZLEdBQ1osTUFBT0EsRUFBTSx3QkFBMEIsTUFFekMsb0NBQXFDLENBQ25DLE1BQU8sRUFDUCxXQUFZLEdBQ1osTUFBT0EsRUFBTSxxQ0FBdUMsTUFFdEQsOEJBQStCLENBQzdCLE1BQU8sRUFDUCxXQUFZLEdBQ1osTUFBT0EsRUFBTSwrQkFBaUMsTUFFaEQsc0JBQXVCLENBQ3JCLE1BQU8sRUFDUCxXQUFZLEdBQ1osTUFBT0EsRUFBTSx1QkFBeUIsTUFFeEMsY0FBZSxDQUNiLE1BQU8sRUFDUCxXQUFZLEdBQ1osTUFBT0EsRUFBTSxlQUFpQixNQUVoQyxhQUFjLENBQ1osTUFBTyxFQUNQLFdBQVksR0FDWixNQUFPQSxFQUFNLGNBQWdCLE9BSzVCRSxFQUFpQixhQUFhLFFBQ2pDQSxFQUFpQixhQUFhLE1BQVFILEVBQVEsU0FBUyxhQUNyRCxXQUNBLDZDQUE2QyxFQUUvQ0csRUFBaUIsYUFBYSxXQUFhLElBSTdDLElBQU1DLEVBQXFDLE9BQU8sT0FDaERELENBQWdCLEVBQ2hCLEtBQUssQ0FBQ0UsRUFBR0MsSUFBTUQsRUFBRSxNQUFRQyxFQUFFLEtBQUssRUFHNUIsQ0FBQ0MsRUFBTUMsQ0FBTyxLQUFJVixJQUFBLDJCQUN0Qk0sRUFDQSxZQUNBRixDQUFTLEVBSUxPLEVBQU8sSUFBSSxXQUdYQyxFQUFzQixFQUU1QixTQUFPYixJQUFBLG9CQUFtQixDQUN4QixDQUFFLFlBQWEsQ0FBRSxLQUFBVSxFQUFNLFVBQUFMLEVBQVcsS0FBQU8sQ0FBSSxFQUFJLFFBQUFELEVBQVMsb0JBQUFFLENBQW1CLEVBQ3ZFLENBQ0gsQ0EvRWdCQyxFQUFBWixJQUFBLGdDQUFoQmEsR0FBQSw2QkFBQWIsOEpDMUJBLElBQUFjLElBQUEsSUFLQUMsR0FBQSxJQU9BQyxJQUFBLEtBd0JBLFNBQWdCQyxJQUE0QyxDQUkxRCxTQUFPRixHQUFBLGtCQUtMQSxHQUFBLFFBQ0UsQ0FDRSxDQUFDLG1CQUFpQkEsR0FBQSxJQUFFLENBQUUsRUFDdEIsQ0FBQyxXQUFTQSxHQUFBLEtBQUcsQ0FBRSxHQUVqQixDQUFFLFlBQWEsaUNBQWlDLENBQUUsRUFFbkRHLElBQVcsQ0FBRSxHQUFHQSxFQUFPLGNBQWUsQ0FBQyxFQUFHLENBSy9DLENBckJnQkMsRUFBQUYsR0FBQSxnREFBaEJHLEdBQUEsNkNBQUFILEdBNEJBLFNBQWdCSSxJQUNkQyxFQUNBQyxFQUFzQyxDQUd0QyxJQUFNQyxFQUFZRixFQUFRLFNBQVMsYUFDakMsbUJBQ0EsNkNBQTZDLEVBSXpDRyxFQUFnRCxDQUFBLEVBR2hEQyxFQUFnRCxDQUFFLEdBQUdILENBQUssRUFHMURJLEVBQXFDLE9BQU8sT0FDaERGLENBQWdCLEVBQ2hCLEtBQUssQ0FBQ0csRUFBR0MsSUFBTUQsRUFBRSxNQUFRQyxFQUFFLEtBQUssRUFHNUIsQ0FBQ0MsRUFBTUMsQ0FBTyxLQUFJZixJQUFBLDJCQUN0QlcsRUFDQSxZQUNBSCxDQUFTLEVBSUxRLEVBQU9mLEdBQTRDLEVBQUcsVUFDMURTLENBQW1ELEVBSS9DTyxFQUFzQixFQUU1QixTQUFPbkIsSUFBQSxvQkFBbUIsQ0FDeEIsQ0FBRSxZQUFhLENBQUUsS0FBQWdCLEVBQU0sVUFBQU4sRUFBVyxLQUFBUSxDQUFJLEVBQUksUUFBQUQsRUFBUyxvQkFBQUUsQ0FBbUIsRUFDdkUsQ0FDSCxDQXZDZ0JkLEVBQUFFLElBQUEsb0JBQWhCRCxHQUFBLGlCQUFBQyxzSkNoRUEsSUFBQWEsSUFBQSxJQUtBQyxHQUFBLElBT0FDLElBQUEsS0FzQkEsU0FBZ0JDLElBQXdDLENBSXRELFNBQU9GLEdBQUEsa0JBS0xBLEdBQUEsUUFDRSxDQUNFLENBQUMsbUJBQWlCQSxHQUFBLElBQUUsQ0FBRSxFQUN0QixDQUFDLFdBQVNBLEdBQUEsS0FBRyxDQUFFLEVBQ2YsQ0FBQyxtQkFBaUJBLEdBQUEsS0FBRyxDQUFFLEdBRXpCLENBQUUsWUFBYSw2QkFBNkIsQ0FBRSxFQUUvQ0csSUFBVyxDQUFFLEdBQUdBLEVBQU8sY0FBZSxDQUFDLEVBQUcsQ0FFL0MsQ0FuQmdCQyxFQUFBRixHQUFBLDRDQUFoQkcsR0FBQSx5Q0FBQUgsR0F5QkEsU0FBZ0JJLElBQ2RDLEVBQ0FDLEVBQWtDLENBR2xDLElBQU1DLEVBQVlGLEVBQVEsU0FBUyxhQUNqQyxtQkFDQSw2Q0FBNkMsRUFJekNHLEVBQWdELENBQUEsRUFHaERDLEVBQTRDLENBQUUsR0FBR0gsQ0FBSyxFQUd0REksRUFBcUMsT0FBTyxPQUNoREYsQ0FBZ0IsRUFDaEIsS0FBSyxDQUFDRyxFQUFHQyxJQUFNRCxFQUFFLE1BQVFDLEVBQUUsS0FBSyxFQUc1QixDQUFDQyxFQUFNQyxDQUFPLEtBQUlmLElBQUEsMkJBQ3RCVyxFQUNBLFlBQ0FILENBQVMsRUFJTFEsRUFBT2YsR0FBd0MsRUFBRyxVQUN0RFMsQ0FBK0MsRUFJM0NPLEVBQXNCLEVBRTVCLFNBQU9uQixJQUFBLG9CQUFtQixDQUN4QixDQUFFLFlBQWEsQ0FBRSxLQUFBZ0IsRUFBTSxVQUFBTixFQUFXLEtBQUFRLENBQUksRUFBSSxRQUFBRCxFQUFTLG9CQUFBRSxDQUFtQixFQUN2RSxDQUNILENBdkNnQmQsRUFBQUUsSUFBQSxnQkFBaEJELEdBQUEsYUFBQUMsb0tDM0RBLElBQUFhLElBQUEsSUFRQUMsR0FBQSxJQU1BQyxJQUFBLEtBaUJBLFNBQWdCQyxJQUErQyxDQUk3RCxTQUFPRixHQUFBLGtCQUtMQSxHQUFBLFFBQTJDLENBQUMsQ0FBQyxtQkFBaUJBLEdBQUEsSUFBRSxDQUFFLENBQUMsRUFBRyxDQUNwRSxZQUFhLHFDQUNkLEVBQ0FHLElBQVcsQ0FBRSxHQUFHQSxFQUFPLGNBQWUsQ0FBQyxFQUFHLENBSy9DLENBakJnQkMsRUFBQUYsR0FBQSxtREFBaEJHLEdBQUEsZ0RBQUFILEdBb0JBLFNBQWdCSSxJQUNkQyxFQUNBQyxFQUE2QyxDQUc3QyxJQUFNQyxFQUFZRixFQUFRLFNBQVMsYUFDakMsV0FDQSw2Q0FBNkMsRUFJekNHLEVBQWdELENBQ3BELE9BQVEsQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFNLE1BQU9GLEVBQU0sUUFBVSxJQUFJLEVBQ2pFLE1BQU8sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFPLE1BQU9BLEVBQU0sT0FBUyxJQUFJLEdBSTVERyxFQUFxQyxPQUFPLE9BQ2hERCxDQUFnQixFQUNoQixLQUFLLENBQUNFLEVBQUdDLElBQU1ELEVBQUUsTUFBUUMsRUFBRSxLQUFLLEVBRzVCLENBQUNDLEVBQU1DLENBQU8sS0FBSWQsSUFBQSwyQkFDdEJVLEVBQ0EsWUFDQUYsQ0FBUyxFQUlMTyxFQUFPZCxHQUErQyxFQUFHLFVBQVUsQ0FBQSxDQUFFLEVBR3JFZSxFQUFzQixFQUU1QixTQUFPbEIsSUFBQSxvQkFBbUIsQ0FDeEIsQ0FBRSxZQUFhLENBQUUsS0FBQWUsRUFBTSxVQUFBTCxFQUFXLEtBQUFPLENBQUksRUFBSSxRQUFBRCxFQUFTLG9CQUFBRSxDQUFtQixFQUN2RSxDQUNILENBckNnQmIsRUFBQUUsSUFBQSx1QkFBaEJELEdBQUEsb0JBQUFDLHNKQ25EQSxJQUFBWSxJQUFBLElBVUFDLEdBQUEsSUFRQUMsSUFBQSxLQUtBQyxJQUFBLEtBd0JBLFNBQWdCQyxJQUF3QyxDQUl0RCxTQUFPSCxHQUFBLGtCQUtMQSxHQUFBLFFBQ0UsQ0FDRSxDQUFDLG1CQUFpQkEsR0FBQSxJQUFFLENBQUUsRUFDdEIsQ0FBQyxtQkFBaUJFLElBQUEsNEJBQTBCLENBQUUsRUFDOUMsQ0FBQyxrQkFBZ0JGLEdBQUEsV0FBT0EsR0FBQSxXQUFtQixDQUFFLENBQUMsR0FFaEQsQ0FBRSxZQUFhLDZCQUE2QixDQUFFLEVBRS9DSSxJQUFXLENBQUUsR0FBR0EsRUFBTyxjQUFlLENBQUMsRUFBRyxDQUUvQyxDQW5CZ0JDLEVBQUFGLEdBQUEsNENBQWhCRyxHQUFBLHlDQUFBSCxHQXlCQSxTQUFnQkksSUFDZEMsRUFDQUMsRUFBb0UsQ0FHcEUsSUFBTUMsRUFBWUYsRUFBUSxTQUFTLGFBQ2pDLFdBQ0EsNkNBQTZDLEVBSXpDRyxFQUFnRCxDQUNwRCxNQUFPLENBQUUsTUFBTyxFQUFHLFdBQVksR0FBTSxNQUFPRixFQUFNLE9BQVMsSUFBSSxFQUMvRCxNQUFPLENBQUUsTUFBTyxFQUFHLFdBQVksR0FBTyxNQUFPQSxFQUFNLE9BQVMsSUFBSSxHQUk1REcsRUFBNEMsQ0FBRSxHQUFHSCxDQUFLLEVBR3RESSxFQUFxQyxPQUFPLE9BQ2hERixDQUFnQixFQUNoQixLQUFLLENBQUNHLEVBQUdDLElBQU1ELEVBQUUsTUFBUUMsRUFBRSxLQUFLLEVBRzVCLENBQUNDLEVBQU1DLENBQU8sS0FBSWhCLElBQUEsMkJBQ3RCWSxFQUNBLFlBQ0FILENBQVMsRUFJTFEsRUFBT2YsR0FBd0MsRUFBRyxVQUN0RFMsQ0FBK0MsRUFJM0NPLEVBQXNCLEVBRTVCLFNBQU9wQixJQUFBLG9CQUFtQixDQUN4QixDQUFFLFlBQWEsQ0FBRSxLQUFBaUIsRUFBTSxVQUFBTixFQUFXLEtBQUFRLENBQUksRUFBSSxRQUFBRCxFQUFTLG9CQUFBRSxDQUFtQixFQUN2RSxDQUNILENBMUNnQmQsRUFBQUUsSUFBQSxnQkFBaEJELEdBQUEsYUFBQUMsb0tDeEVBLElBQUFhLElBQUEsSUFLQUMsR0FBQSxJQU9BQyxJQUFBLEtBa0JBLFNBQWdCQyxJQUErQyxDQUk3RCxTQUFPRixHQUFBLGtCQUtMQSxHQUFBLFFBQ0UsQ0FDRSxDQUFDLG1CQUFpQkEsR0FBQSxJQUFFLENBQUUsRUFDdEIsQ0FBQyxXQUFTQSxHQUFBLEtBQUcsQ0FBRSxHQUVqQixDQUFFLFlBQWEsb0NBQW9DLENBQUUsRUFFdERHLElBQVcsQ0FBRSxHQUFHQSxFQUFPLGNBQWUsQ0FBQyxFQUFHLENBSy9DLENBckJnQkMsRUFBQUYsR0FBQSxtREFBaEJHLEdBQUEsZ0RBQUFILEdBNEJBLFNBQWdCSSxJQUNkQyxFQUNBQyxFQUF5QyxDQUd6QyxJQUFNQyxFQUFZRixFQUFRLFNBQVMsYUFDakMsbUJBQ0EsNkNBQTZDLEVBSXpDRyxFQUFnRCxDQUFBLEVBR2hEQyxFQUFtRCxDQUFFLEdBQUdILENBQUssRUFHN0RJLEVBQXFDLE9BQU8sT0FDaERGLENBQWdCLEVBQ2hCLEtBQUssQ0FBQ0csRUFBR0MsSUFBTUQsRUFBRSxNQUFRQyxFQUFFLEtBQUssRUFHNUIsQ0FBQ0MsRUFBTUMsQ0FBTyxLQUFJZixJQUFBLDJCQUN0QlcsRUFDQSxZQUNBSCxDQUFTLEVBSUxRLEVBQU9mLEdBQStDLEVBQUcsVUFDN0RTLENBQXNELEVBSWxETyxFQUFzQixFQUU1QixTQUFPbkIsSUFBQSxvQkFBbUIsQ0FDeEIsQ0FBRSxZQUFhLENBQUUsS0FBQWdCLEVBQU0sVUFBQU4sRUFBVyxLQUFBUSxDQUFJLEVBQUksUUFBQUQsRUFBUyxvQkFBQUUsQ0FBbUIsRUFDdkUsQ0FDSCxDQXZDZ0JkLEVBQUFFLElBQUEsdUJBQWhCRCxHQUFBLG9CQUFBQyxvS0MxREEsSUFBQWEsSUFBQSxJQUtBQyxHQUFBLElBT0FDLElBQUEsS0FrQkEsU0FBZ0JDLElBQStDLENBSTdELFNBQU9GLEdBQUEsa0JBS0xBLEdBQUEsUUFDRSxDQUNFLENBQUMsbUJBQWlCQSxHQUFBLElBQUUsQ0FBRSxFQUN0QixDQUFDLG1CQUFpQkEsR0FBQSxLQUFHLENBQUUsR0FFekIsQ0FBRSxZQUFhLG9DQUFvQyxDQUFFLEVBRXRERyxJQUFXLENBQUUsR0FBR0EsRUFBTyxjQUFlLENBQUMsRUFBRyxDQUsvQyxDQXJCZ0JDLEVBQUFGLEdBQUEsbURBQWhCRyxHQUFBLGdEQUFBSCxHQTRCQSxTQUFnQkksSUFDZEMsRUFDQUMsRUFBeUMsQ0FHekMsSUFBTUMsRUFBWUYsRUFBUSxTQUFTLGFBQ2pDLG1CQUNBLDZDQUE2QyxFQUl6Q0csRUFBZ0QsQ0FBQSxFQUdoREMsRUFBbUQsQ0FBRSxHQUFHSCxDQUFLLEVBRzdESSxFQUFxQyxPQUFPLE9BQ2hERixDQUFnQixFQUNoQixLQUFLLENBQUNHLEVBQUdDLElBQU1ELEVBQUUsTUFBUUMsRUFBRSxLQUFLLEVBRzVCLENBQUNDLEVBQU1DLENBQU8sS0FBSWYsSUFBQSwyQkFDdEJXLEVBQ0EsWUFDQUgsQ0FBUyxFQUlMUSxFQUFPZixHQUErQyxFQUFHLFVBQzdEUyxDQUFzRCxFQUlsRE8sRUFBc0IsRUFFNUIsU0FBT25CLElBQUEsb0JBQW1CLENBQ3hCLENBQUUsWUFBYSxDQUFFLEtBQUFnQixFQUFNLFVBQUFOLEVBQVcsS0FBQVEsQ0FBSSxFQUFJLFFBQUFELEVBQVMsb0JBQUFFLENBQW1CLEVBQ3ZFLENBQ0gsQ0F2Q2dCZCxFQUFBRSxJQUFBLHVCQUFoQkQsR0FBQSxvQkFBQUMsa0pDMURBLElBQUFhLElBQUEsSUFPQUMsR0FBQSxJQU1BQyxJQUFBLEtBZ0JBLFNBQWdCQyxJQUFzQyxDQUlwRCxTQUFPRixHQUFBLGtCQUtMQSxHQUFBLFFBQWtDLENBQUMsQ0FBQyxtQkFBaUJBLEdBQUEsSUFBRSxDQUFFLENBQUMsRUFBRyxDQUMzRCxZQUFhLDRCQUNkLEVBQ0FHLElBQVcsQ0FBRSxHQUFHQSxFQUFPLGNBQWUsRUFBRSxFQUFHLENBRWhELENBZGdCQyxFQUFBRixHQUFBLDBDQUFoQkcsR0FBQSx1Q0FBQUgsR0FpQkEsU0FBZ0JJLElBQ2RDLEVBQ0FDLEVBQW9DLENBR3BDLElBQU1DLEVBQVlGLEVBQVEsU0FBUyxhQUNqQyxXQUNBLDZDQUE2QyxFQUl6Q0csRUFBZ0QsQ0FDcEQsUUFBUyxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU0sTUFBT0YsRUFBTSxTQUFXLElBQUksR0FJL0RHLEVBQXFDLE9BQU8sT0FDaERELENBQWdCLEVBQ2hCLEtBQUssQ0FBQ0UsRUFBR0MsSUFBTUQsRUFBRSxNQUFRQyxFQUFFLEtBQUssRUFHNUIsQ0FBQ0MsRUFBTUMsQ0FBTyxLQUFJZCxJQUFBLDJCQUN0QlUsRUFDQSxZQUNBRixDQUFTLEVBSUxPLEVBQU9kLEdBQXNDLEVBQUcsVUFBVSxDQUFBLENBQUUsRUFHNURlLEVBQXNCLEVBRTVCLFNBQU9sQixJQUFBLG9CQUFtQixDQUN4QixDQUFFLFlBQWEsQ0FBRSxLQUFBZSxFQUFNLFVBQUFMLEVBQVcsS0FBQU8sQ0FBSSxFQUFJLFFBQUFELEVBQVMsb0JBQUFFLENBQW1CLEVBQ3ZFLENBQ0gsQ0FwQ2dCYixFQUFBRSxJQUFBLGNBQWhCRCxHQUFBLFdBQUFDLGdKQzlDQSxJQUFBWSxJQUFBLElBUUFDLEdBQUEsSUFNQUMsSUFBQSxLQWtCQSxTQUFnQkMsSUFBcUMsQ0FJbkQsU0FBT0YsR0FBQSxrQkFLTEEsR0FBQSxRQUFpQyxDQUFDLENBQUMsbUJBQWlCQSxHQUFBLElBQUUsQ0FBRSxDQUFDLEVBQUcsQ0FDMUQsWUFBYSwyQkFDZCxFQUNBRyxJQUFXLENBQUUsR0FBR0EsRUFBTyxjQUFlLEVBQUUsRUFBRyxDQUVoRCxDQWRnQkMsRUFBQUYsR0FBQSx5Q0FBaEJHLEdBQUEsc0NBQUFILEdBaUJBLFNBQWdCSSxJQUNkQyxFQUNBQyxFQUFtQyxDQUduQyxJQUFNQyxFQUFZRixFQUFRLFNBQVMsYUFDakMsV0FDQSw2Q0FBNkMsRUFJekNHLEVBQWdELENBQ3BELFFBQVMsQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFNLE1BQU9GLEVBQU0sU0FBVyxJQUFJLEVBQ25FLEtBQU0sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFPLE1BQU9BLEVBQU0sTUFBUSxJQUFJLEVBQzlELE1BQU8sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFPLE1BQU9BLEVBQU0sT0FBUyxJQUFJLEdBSTVERyxFQUFxQyxPQUFPLE9BQ2hERCxDQUFnQixFQUNoQixLQUFLLENBQUNFLEVBQUdDLElBQU1ELEVBQUUsTUFBUUMsRUFBRSxLQUFLLEVBRzVCLENBQUNDLEVBQU1DLENBQU8sS0FBSWQsSUFBQSwyQkFDdEJVLEVBQ0EsWUFDQUYsQ0FBUyxFQUlMTyxFQUFPZCxHQUFxQyxFQUFHLFVBQVUsQ0FBQSxDQUFFLEVBRzNEZSxFQUFzQixFQUU1QixTQUFPbEIsSUFBQSxvQkFBbUIsQ0FDeEIsQ0FBRSxZQUFhLENBQUUsS0FBQWUsRUFBTSxVQUFBTCxFQUFXLEtBQUFPLENBQUksRUFBSSxRQUFBRCxFQUFTLG9CQUFBRSxDQUFtQixFQUN2RSxDQUNILENBdENnQmIsRUFBQUUsSUFBQSxhQUFoQkQsR0FBQSxVQUFBQywwSkNqREEsSUFBQVksSUFBQSxJQVFBQyxHQUFBLElBTUFDLElBQUEsS0FxQkEsU0FBZ0JDLElBQTBDLENBSXhELFNBQU9GLEdBQUEsa0JBS0xBLEdBQUEsUUFBc0MsQ0FBQyxDQUFDLG1CQUFpQkEsR0FBQSxJQUFFLENBQUUsQ0FBQyxFQUFHLENBQy9ELFlBQWEsZ0NBQ2QsRUFDQUcsSUFBVyxDQUFFLEdBQUdBLEVBQU8sY0FBZSxDQUFDLEVBQUcsQ0FLL0MsQ0FqQmdCQyxFQUFBRixHQUFBLDhDQUFoQkcsR0FBQSwyQ0FBQUgsR0FvQkEsU0FBZ0JJLElBQ2RDLEVBQ0FDLEVBQXdDLENBR3hDLElBQU1DLEVBQVlGLEVBQVEsU0FBUyxhQUNqQyxrQkFDQSw2Q0FBNkMsRUFJekNHLEVBQWdELENBQ3BELE9BQVEsQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFNLE1BQU9GLEVBQU0sUUFBVSxJQUFJLEVBQ2pFLFlBQWEsQ0FDWCxNQUFPLEVBQ1AsV0FBWSxHQUNaLE1BQU9BLEVBQU0sYUFBZSxNQUU5QixjQUFlLENBQ2IsTUFBTyxFQUNQLFdBQVksR0FDWixNQUFPQSxFQUFNLGVBQWlCLE9BSzdCRSxFQUFpQixPQUFPLFFBQzNCQSxFQUFpQixPQUFPLE1BQVFILEVBQVEsVUFFckNHLEVBQWlCLGNBQWMsUUFDbENBLEVBQWlCLGNBQWMsTUFBUUgsRUFBUSxTQUFTLGFBQ3RELFlBQ0Esa0NBQWtDLEVBRXBDRyxFQUFpQixjQUFjLFdBQWEsSUFJOUMsSUFBTUMsRUFBcUMsT0FBTyxPQUNoREQsQ0FBZ0IsRUFDaEIsS0FBSyxDQUFDRSxFQUFHQyxJQUFNRCxFQUFFLE1BQVFDLEVBQUUsS0FBSyxFQUc1QixDQUFDQyxFQUFNQyxDQUFPLEtBQUlkLElBQUEsMkJBQ3RCVSxFQUNBLFlBQ0FGLENBQVMsRUFJTE8sRUFBT2QsR0FBMEMsRUFBRyxVQUFVLENBQUEsQ0FBRSxFQUdoRWUsRUFBc0IsRUFFNUIsU0FBT2xCLElBQUEsb0JBQW1CLENBQ3hCLENBQUUsWUFBYSxDQUFFLEtBQUFlLEVBQU0sVUFBQUwsRUFBVyxLQUFBTyxDQUFJLEVBQUksUUFBQUQsRUFBUyxvQkFBQUUsQ0FBbUIsRUFDdkUsQ0FDSCxDQTFEZ0JiLEVBQUFFLElBQUEsa0JBQWhCRCxHQUFBLGVBQUFDLG9KQ3ZEQSxJQUFBWSxHQUFBLElBVUFDLEdBQUEsSUFPQUMsSUFBQSxLQW9CQSxTQUFnQkMsSUFBdUMsQ0FJckQsU0FBT0YsR0FBQSxrQkFLTEEsR0FBQSxRQUNFLENBQ0UsQ0FBQyxtQkFBaUJBLEdBQUEsS0FBRyxDQUFFLEVBQ3ZCLENBQUMsWUFBVUQsR0FBQSx3QkFBb0JDLEdBQUEsS0FBRyxFQUFJLE1BQU8sQ0FBQyxDQUFDLEdBRWpELENBQUUsWUFBYSw0QkFBNEIsQ0FBRSxFQUU5Q0csSUFBVyxDQUFFLEdBQUdBLEVBQU8sY0FBZSxDQUFDLEVBQUcsQ0FFL0MsQ0FsQmdCQyxFQUFBRixHQUFBLDJDQUFoQkcsR0FBQSx3Q0FBQUgsR0F3QkEsU0FBZ0JJLElBQ2RDLEVBQ0FDLEVBQWtFLENBR2xFLElBQU1DLEVBQVlGLEVBQVEsU0FBUyxhQUNqQyxZQUNBLGtDQUFrQyxFQUk5QkcsRUFBZ0QsQ0FDcEQsT0FBUSxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU0sTUFBT0YsRUFBTSxRQUFVLElBQUksRUFDakUsWUFBYSxDQUNYLE1BQU8sRUFDUCxXQUFZLEdBQ1osTUFBT0EsRUFBTSxhQUFlLE9BSzFCRyxFQUEyQyxDQUFFLEdBQUdILENBQUssRUFHdERFLEVBQWlCLE9BQU8sUUFDM0JBLEVBQWlCLE9BQU8sTUFBUUgsRUFBUSxVQUkxQyxJQUFNSyxFQUFxQyxPQUFPLE9BQ2hERixDQUFnQixFQUNoQixLQUFLLENBQUNHLEVBQUdDLElBQU1ELEVBQUUsTUFBUUMsRUFBRSxLQUFLLEVBRzVCLENBQUNDLEVBQU1DLENBQU8sS0FBSWYsSUFBQSwyQkFDdEJXLEVBQ0EsWUFDQUgsQ0FBUyxFQUlMUSxFQUFPZixHQUF1QyxFQUFHLFVBQ3JEUyxDQUE4QyxFQUkxQ08sRUFBc0IsRUFFNUIsU0FBT25CLEdBQUEsb0JBQW1CLENBQ3hCLENBQUUsWUFBYSxDQUFFLEtBQUFnQixFQUFNLFVBQUFOLEVBQVcsS0FBQVEsQ0FBSSxFQUFJLFFBQUFELEVBQVMsb0JBQUFFLENBQW1CLEVBQ3ZFLENBQ0gsQ0FuRGdCZCxFQUFBRSxJQUFBLGVBQWhCRCxHQUFBLFlBQUFDLDBKQzdEQSxJQUFBYSxJQUFBLElBUUFDLEdBQUEsSUFPQUMsSUFBQSxLQXFCQSxTQUFnQkMsSUFBMEMsQ0FJeEQsU0FBT0YsR0FBQSxrQkFLTEEsR0FBQSxRQUNFLENBQ0UsQ0FBQyxtQkFBaUJBLEdBQUEsSUFBRSxDQUFFLEVBQ3RCLENBQUMsWUFBVUEsR0FBQSxLQUFHLENBQUUsR0FFbEIsQ0FBRSxZQUFhLCtCQUErQixDQUFFLEVBRWpERyxJQUFXLENBQUUsR0FBR0EsRUFBTyxjQUFlLENBQUMsRUFBRyxDQUsvQyxDQXJCZ0JDLEVBQUFGLEdBQUEsOENBQWhCRyxHQUFBLDJDQUFBSCxHQTJCQSxTQUFnQkksSUFDZEMsRUFDQUMsRUFBd0UsQ0FHeEUsSUFBTUMsRUFBWUYsRUFBUSxTQUFTLGFBQ2pDLFdBQ0EsNkNBQTZDLEVBSXpDRyxFQUFnRCxDQUNwRCxPQUFRLENBQUUsTUFBTyxFQUFHLFdBQVksR0FBTSxNQUFPRixFQUFNLFFBQVUsSUFBSSxFQUNqRSxZQUFhLENBQ1gsTUFBTyxFQUNQLFdBQVksR0FDWixNQUFPQSxFQUFNLGFBQWUsTUFFOUIsVUFBVyxDQUFFLE1BQU8sRUFBRyxXQUFZLEdBQU8sTUFBT0EsRUFBTSxXQUFhLElBQUksR0FJcEVHLEVBQThDLENBQUUsR0FBR0gsQ0FBSyxFQUd6REUsRUFBaUIsVUFBVSxRQUM5QkEsRUFBaUIsVUFBVSxNQUFRSCxFQUFRLFVBSTdDLElBQU1LLEVBQXFDLE9BQU8sT0FDaERGLENBQWdCLEVBQ2hCLEtBQUssQ0FBQ0csRUFBR0MsSUFBTUQsRUFBRSxNQUFRQyxFQUFFLEtBQUssRUFHNUIsQ0FBQ0MsRUFBTUMsQ0FBTyxLQUFJZixJQUFBLDJCQUN0QlcsRUFDQSxZQUNBSCxDQUFTLEVBSUxRLEVBQU9mLEdBQTBDLEVBQUcsVUFDeERTLENBQWlELEVBSTdDTyxFQUFzQixFQUU1QixTQUFPbkIsSUFBQSxvQkFBbUIsQ0FDeEIsQ0FBRSxZQUFhLENBQUUsS0FBQWdCLEVBQU0sVUFBQU4sRUFBVyxLQUFBUSxDQUFJLEVBQUksUUFBQUQsRUFBUyxvQkFBQUUsQ0FBbUIsRUFDdkUsQ0FDSCxDQXBEZ0JkLEVBQUFFLElBQUEsa0JBQWhCRCxHQUFBLGVBQUFDLHdLQy9EQSxJQUFBYSxJQUFBLElBUUFDLEdBQUEsSUFPQUMsSUFBQSxLQTBCQSxTQUFnQkMsSUFBaUQsQ0FJL0QsU0FBT0YsR0FBQSxrQkFLTEEsR0FBQSxRQUNFLENBQ0UsQ0FBQyxtQkFBaUJBLEdBQUEsSUFBRSxDQUFFLEVBQ3RCLENBQUMsWUFBVUEsR0FBQSxLQUFHLENBQUUsRUFDaEIsQ0FBQyxjQUFZQSxHQUFBLElBQUUsQ0FBRSxHQUVuQixDQUFFLFlBQWEsc0NBQXNDLENBQUUsRUFFeERHLElBQVcsQ0FBRSxHQUFHQSxFQUFPLGNBQWUsRUFBRSxFQUFHLENBS2hELENBdEJnQkMsRUFBQUYsR0FBQSxxREFBaEJHLEdBQUEsa0RBQUFILEdBNkJBLFNBQWdCSSxJQUNkQyxFQUNBQyxFQUNzQyxDQUd0QyxJQUFNQyxFQUFZRixFQUFRLFNBQVMsYUFDakMsV0FDQSw2Q0FBNkMsRUFJekNHLEVBQWdELENBQ3BELE9BQVEsQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFNLE1BQU9GLEVBQU0sUUFBVSxJQUFJLEVBQ2pFLEtBQU0sQ0FBRSxNQUFPLEVBQUcsV0FBWSxHQUFPLE1BQU9BLEVBQU0sTUFBUSxJQUFJLEVBQzlELFlBQWEsQ0FDWCxNQUFPLEVBQ1AsV0FBWSxHQUNaLE1BQU9BLEVBQU0sYUFBZSxNQUU5QixVQUFXLENBQUUsTUFBTyxFQUFHLFdBQVksR0FBTyxNQUFPQSxFQUFNLFdBQWEsSUFBSSxHQUlwRUcsRUFBcUQsQ0FBRSxHQUFHSCxDQUFLLEVBR2hFRSxFQUFpQixVQUFVLFFBQzlCQSxFQUFpQixVQUFVLE1BQVFILEVBQVEsVUFJN0MsSUFBTUssRUFBcUMsT0FBTyxPQUNoREYsQ0FBZ0IsRUFDaEIsS0FBSyxDQUFDRyxFQUFHQyxJQUFNRCxFQUFFLE1BQVFDLEVBQUUsS0FBSyxFQUc1QixDQUFDQyxFQUFNQyxDQUFPLEtBQUlmLElBQUEsMkJBQ3RCVyxFQUNBLFlBQ0FILENBQVMsRUFJTFEsRUFBT2YsR0FBaUQsRUFBRyxVQUMvRFMsQ0FBd0QsRUFJcERPLEVBQXNCLEVBRTVCLFNBQU9uQixJQUFBLG9CQUFtQixDQUN4QixDQUFFLFlBQWEsQ0FBRSxLQUFBZ0IsRUFBTSxVQUFBTixFQUFXLEtBQUFRLENBQUksRUFBSSxRQUFBRCxFQUFTLG9CQUFBRSxDQUFtQixFQUN2RSxDQUNILENBdERnQmQsRUFBQUUsSUFBQSx5QkFBaEJELEdBQUEsc0JBQUFDLDhKQ3RFQSxJQUFBYSxJQUFBLElBT0FDLEdBQUEsSUFPQUMsSUFBQSxLQW1CQSxTQUFnQkMsSUFBNEMsQ0FJMUQsU0FBT0YsR0FBQSxrQkFLTEEsR0FBQSxRQUNFLENBQ0UsQ0FBQyxtQkFBaUJBLEdBQUEsSUFBRSxDQUFFLEVBQ3RCLENBQUMsY0FBWUEsR0FBQSxLQUFHLENBQUUsR0FFcEIsQ0FBRSxZQUFhLGlDQUFpQyxDQUFFLEVBRW5ERyxJQUFXLENBQUUsR0FBR0EsRUFBTyxjQUFlLEVBQUUsRUFBRyxDQUtoRCxDQXJCZ0JDLEVBQUFGLEdBQUEsZ0RBQWhCRyxHQUFBLDZDQUFBSCxHQTRCQSxTQUFnQkksSUFDZEMsRUFDQUMsRUFBNEUsQ0FHNUUsSUFBTUMsRUFBWUYsRUFBUSxTQUFTLGFBQ2pDLFdBQ0EsNkNBQTZDLEVBSXpDRyxFQUFnRCxDQUNwRCxLQUFNLENBQUUsTUFBTyxFQUFHLFdBQVksR0FBTyxNQUFPRixFQUFNLE1BQVEsSUFBSSxHQUkxREcsRUFBZ0QsQ0FBRSxHQUFHSCxDQUFLLEVBRzFESSxFQUFxQyxPQUFPLE9BQ2hERixDQUFnQixFQUNoQixLQUFLLENBQUNHLEVBQUdDLElBQU1ELEVBQUUsTUFBUUMsRUFBRSxLQUFLLEVBRzVCLENBQUNDLEVBQU1DLENBQU8sS0FBSWYsSUFBQSwyQkFDdEJXLEVBQ0EsWUFDQUgsQ0FBUyxFQUlMUSxFQUFPZixHQUE0QyxFQUFHLFVBQzFEUyxDQUFtRCxFQUkvQ08sRUFBc0IsRUFFNUIsU0FBT25CLElBQUEsb0JBQW1CLENBQ3hCLENBQUUsWUFBYSxDQUFFLEtBQUFnQixFQUFNLFVBQUFOLEVBQVcsS0FBQVEsQ0FBSSxFQUFJLFFBQUFELEVBQVMsb0JBQUFFLENBQW1CLEVBQ3ZFLENBQ0gsQ0F6Q2dCZCxFQUFBRSxJQUFBLG9CQUFoQkQsR0FBQSxpQkFBQUMsdWdCQzdEQWEsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLEVBQ0FELEdBQUEsS0FBQUMsRUFBQSxFQUNBRCxHQUFBLEtBQUFDLEVBQUEsRUFDQUQsR0FBQSxLQUFBQyxFQUFBLG9OQ3BDQSxJQUFBQyxHQUFBLEtBS2FDLEdBQUEsNkJBQ1gsOENBRUYsU0FBZ0JDLEtBQTRCLENBQzFDLE1BQU8sQ0FDTCxLQUFNLGtCQUNOLFVBQVdELEdBQUEsNkJBQ1gsaUJBQWlCRSxFQUFj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QUEsRUFDQUQsR0FBQSxLQUFBQyxDQUFBLEVBQ0FELEdBQUEsS0FBQUMsQ0FBQSxFQUNBRCxHQUFBLEtBQUFDLENBQUEsRUFDQUQsR0FBQSxLQUFBQyxDQUFBLEVBQ0FELEdBQUEsS0FBQUMsQ0FBQSxFQUNBRCxHQUFBLEtBQUFDLENBQUEsRUFDQUQsR0FBQSxLQUFBQyxDQUFBLEVBQ0FELEdBQUEsS0FBQUMsQ0FBQSxFQUNBRCxHQUFBLEtBQUFDLENBQUEsRUFDQUQsR0FBQSxLQUFBQyxDQUFBLEVBQ0FELEdBQUEsS0FBQUMsQ0FBQSxFQUNBRCxHQUFBLEtBQUFDLENBQUEsRUFDQUQsR0FBQSxLQUFBQyxDQUFBLEVBQ0FELEdBQUEsS0FBQUMsQ0FBQSxFQUNBRCxHQUFBLEtBQUFDLENBQUEsRUFDQUQsR0FBQSxLQUFBQyxDQUFBLEVBQ0FELEdBQUEsS0FBQUMsQ0FBQSxFQUNBRCxHQUFBLEtBQUFDLENBQUEsRUFDQUQsR0FBQSxLQUFBQyxDQUFBLEVBQ0FELEdBQUEsS0FBQUMsQ0FBQSxFQUNBRCxHQUFBLEtBQUFDLENBQUEsRUFDQUQsR0FBQSxLQUFBQyxDQUFBLEVBQ0FELEdBQUEsS0FBQUMsQ0FBQSxFQUNBRCxHQUFBLEtBQUFDLENBQUEsRUFDQUQsR0FBQSxLQUFBQyxDQUFBLEVBQ0FELEdBQUEsS0FBQUMsQ0FBQSxFQUNBRCxHQUFBLEtBQUFDLENBQUEsRUFDQUQsR0FBQSxLQUFBQyxDQUFBLEVBQ0FELEdBQUEsS0FBQUMsQ0FBQSxFQUNBRCxHQUFBLEtBQUFDLENBQUEsRUFDQUQsR0FBQSxLQUFBQyxDQUFBLEVBQ0FELEdBQUEsS0FBQUMsQ0FBQSxFQUNBRCxHQUFBLEtBQUFDLENBQUEsRUFDQUQsR0FBQSxLQUFBQyxDQUFBLEVBQ0FELEdBQUEsS0FBQUMsQ0FBQSxFQUNBRCxHQUFBLEtBQUFDLENBQUEsRUFDQUQsR0FBQSxLQUFBQyxDQUFBLEVBQ0FELEdBQUEsS0FBQUMsQ0FBQSxFQUNBRCxHQUFBLEtBQUFDLENBQUEsRUFDQUQsR0FBQSxLQUFBQyxDQUFBLEVBQ0FELEdBQUEsS0FBQUMs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Q0FDdEMsT0FBT0EsRUFBVyxtQkFDcEIsQ0FDRixFMkdqR0EsSUFBQUMsR0FBMEIsU0FHbkIsSUFBTUMsR0FBc0JDLEVBQUEsTUFDakNDLEVBQ0FDLElBQ0csQ0FDSCxJQUFNQyxFQUF3QixJQUFJLGFBQVVELENBQW1CLEVBQ3pERSxFQUFjLE1BQU1ILEVBQVksV0FBVyxlQUMvQ0UsQ0FDRixFQUVBLEdBQUksQ0FBQ0MsRUFDSCxNQUFNLElBQUksTUFDUiw2Q0FBNkNGLENBQW1CLEVBQ2xFLEVBR0YsT0FBT0QsRUFBWSxjQUFjRyxFQUFZLFFBQVEsQ0FDdkQsRUFoQm1DLHVCQ0huQyxJQUFBQyxHQUEwQixTQUluQixJQUFNQyxHQUFvQkMsRUFBQSxNQUMvQkMsRUFDQUMsSUFDRyxDQUNILElBQU1DLEVBQWUsTUFBTUYsRUFBWSxnQkFBZ0IsRUFDakRHLEVBQXdCLElBQUksYUFBVUYsQ0FBbUIsRUFDekRHLEVBQVUsTUFBTUosRUFBWSxXQUFXLG1CQUMzQyxDQUFDRyxDQUFxQixFQUN0QkQsRUFBZSxDQUNqQixFQUVBLE9BQUlFLEdBQVdBLEVBQVEsT0FBUyxHQUFLQSxFQUFRLENBQUMsRUFDM0IsQ0FDZixvQkFBQUgsRUFDQSxHQUFHRyxFQUFRLENBQUMsQ0FDZCxFQUdLLElBQ1QsRUFuQmlDIiwKICAibmFtZXMiOiBbIm51bWJlciIsICJuIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImJvb2wiLCAiYiIsICJieXRlcyIsICJsZW5ndGhzIiwgImhhc2giLCAiZXhpc3RzIiwgImluc3RhbmNlIiwgImNoZWNrRmluaXNoZWQiLCAib3V0cHV0IiwgIm91dCIsICJtaW4iLCAiYXNzZXJ0IiwgIm5jIiwgImV4cG9ydHMiLCAiY3J5cHRvXzEiLCAidThhIiwgIl9fbmFtZSIsICJhIiwgInU4IiwgImFyciIsICJleHBvcnRzIiwgInUzMiIsICJjcmVhdGVWaWV3IiwgInJvdHIiLCAid29yZCIsICJzaGlmdCIsICJoZXhlcyIsICJfIiwgImkiLCAiYnl0ZXNUb0hleCIsICJieXRlcyIsICJoZXgiLCAiaGV4VG9CeXRlcyIsICJsZW4iLCAiYXJyYXkiLCAiaiIsICJoZXhCeXRlIiwgImJ5dGUiLCAibmV4dFRpY2siLCAiYXN5bmNMb29wIiwgIml0ZXJzIiwgInRpY2siLCAiY2IiLCAidHMiLCAiZGlmZiIsICJ1dGY4VG9CeXRlcyIsICJzdHIiLCAidG9CeXRlcyIsICJkYXRhIiwgImNvbmNhdEJ5dGVzIiwgImFycmF5cyIsICJyIiwgInN1bSIsICJwYWQiLCAiSGFzaCIsICJ0b1N0ciIsICJjaGVja09wdHMiLCAiZGVmYXVsdHMiLCAib3B0cyIsICJ3cmFwQ29uc3RydWN0b3IiLCAiaGFzaENvbnMiLCAiaGFzaEMiLCAibXNnIiwgInRtcCIsICJ3cmFwQ29uc3RydWN0b3JXaXRoT3B0cyIsICJ3cmFwWE9GQ29uc3RydWN0b3JXaXRoT3B0cyIsICJyYW5kb21CeXRlcyIsICJieXRlc0xlbmd0aCIsICJfYXNzZXJ0X2pzXzEiLCAidXRpbHNfanNfMSIsICJzZXRCaWdVaW50NjQiLCAidmlldyIsICJieXRlT2Zmc2V0IiwgInZhbHVlIiwgImlzTEUiLCAiXzMybiIsICJfdTMyX21heCIsICJ3aCIsICJ3bCIsICJoIiwgImwiLCAiX19uYW1lIiwgIlNIQTIiLCAiYmxvY2tMZW4iLCAib3V0cHV0TGVuIiwgInBhZE9mZnNldCIsICJkYXRhIiwgImJ1ZmZlciIsICJsZW4iLCAicG9zIiwgInRha2UiLCAiZGF0YVZpZXciLCAib3V0IiwgImkiLCAib3ZpZXciLCAib3V0TGVuIiwgInN0YXRlIiwgInJlcyIsICJ0byIsICJsZW5ndGgiLCAiZmluaXNoZWQiLCAiZGVzdHJveWVkIiwgImV4cG9ydHMiLCAiVTMyX01BU0s2NCIsICJfMzJuIiwgImZyb21CaWciLCAibiIsICJsZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJzcGxpdCIsICJsc3QiLCAiQWgiLCAiQWwiLCAiaSIsICJoIiwgImwiLCAidG9CaWciLCAic2hyU0giLCAiX2wiLCAicyIsICJzaHJTTCIsICJyb3RyU0giLCAicm90clNMIiwgInJvdHJCSCIsICJyb3RyQkwiLCAicm90cjMySCIsICJfaCIsICJyb3RyMzJMIiwgInJvdGxTSCIsICJyb3RsU0wiLCAicm90bEJIIiwgInJvdGxCTCIsICJhZGQiLCAiQmgiLCAiQmwiLCAiYWRkM0wiLCAiQ2wiLCAiYWRkM0giLCAibG93IiwgIkNoIiwgImFkZDRMIiwgIkRsIiwgImFkZDRIIiwgIkRoIiwgImFkZDVMIiwgIkVsIiwgImFkZDVIIiwgIkVoIiwgInU2NCIsICJfc2hhMl9qc18xIiwgIl91NjRfanNfMSIsICJ1dGlsc19qc18xIiwgIlNIQTUxMl9LaCIsICJTSEE1MTJfS2wiLCAibiIsICJTSEE1MTJfV19IIiwgIlNIQTUxMl9XX0wiLCAiU0hBNTEyIiwgIl9fbmFtZSIsICJBaCIsICJBbCIsICJCaCIsICJCbCIsICJDaCIsICJDbCIsICJEaCIsICJEbCIsICJFaCIsICJFbCIsICJGaCIsICJGbCIsICJHaCIsICJHbCIsICJIaCIsICJIbCIsICJ2aWV3IiwgIm9mZnNldCIsICJpIiwgIlcxNWgiLCAiVzE1bCIsICJzMGgiLCAiczBsIiwgIlcyaCIsICJXMmwiLCAiczFoIiwgInMxbCIsICJTVU1sIiwgIlNVTWgiLCAic2lnbWExaCIsICJzaWdtYTFsIiwgIkNISWgiLCAiQ0hJbCIsICJUMWxsIiwgIlQxaCIsICJUMWwiLCAic2lnbWEwaCIsICJzaWdtYTBsIiwgIk1BSmgiLCAiTUFKbCIsICJBbGwiLCAiZXhwb3J0cyIsICJTSEE1MTJfMjI0IiwgIlNIQTUxMl8yNTYiLCAiU0hBMzg0IiwgIl8wbiIsICJfMW4iLCAiXzJuIiwgInU4YSIsICJfX25hbWUiLCAiYSIsICJoZXhlcyIsICJfIiwgImkiLCAiYnl0ZXNUb0hleCIsICJieXRlcyIsICJoZXgiLCAiZXhwb3J0cyIsICJudW1iZXJUb0hleFVucGFkZGVkIiwgIm51bSIsICJoZXhUb051bWJlciIsICJoZXhUb0J5dGVzIiwgImxlbiIsICJhcnJheSIsICJqIiwgImhleEJ5dGUiLCAiYnl0ZSIsICJieXRlc1RvTnVtYmVyQkUiLCAiYnl0ZXNUb051bWJlckxFIiwgIm51bWJlclRvQnl0ZXNCRSIsICJuIiwgIm51bWJlclRvQnl0ZXNMRSIsICJudW1iZXJUb1ZhckJ5dGVzQkUiLCAiZW5zdXJlQnl0ZXMiLCAidGl0bGUiLCAiZXhwZWN0ZWRMZW5ndGgiLCAicmVzIiwgImUiLCAiY29uY2F0Qnl0ZXMiLCAiYXJyYXlzIiwgInIiLCAic3VtIiwgInBhZCIsICJlcXVhbEJ5dGVzIiwgImIxIiwgImIyIiwgInV0ZjhUb0J5dGVzIiwgInN0ciIsICJiaXRMZW4iLCAiYml0R2V0IiwgInBvcyIsICJiaXRTZXQiLCAidmFsdWUiLCAiYml0TWFzayIsICJ1OG4iLCAiZGF0YSIsICJ1OGZyIiwgImFyciIsICJjcmVhdGVIbWFjRHJiZyIsICJoYXNoTGVuIiwgInFCeXRlTGVuIiwgImhtYWNGbiIsICJ2IiwgImsiLCAicmVzZXQiLCAiaCIsICJiIiwgInJlc2VlZCIsICJzZWVkIiwgImdlbiIsICJvdXQiLCAic2wiLCAicHJlZCIsICJ2YWxpZGF0b3JGbnMiLCAidmFsIiwgIm9iamVjdCIsICJ2YWxpZGF0ZU9iamVjdCIsICJ2YWxpZGF0b3JzIiwgIm9wdFZhbGlkYXRvcnMiLCAiY2hlY2tGaWVsZCIsICJmaWVsZE5hbWUiLCAidHlwZSIsICJpc09wdGlvbmFsIiwgImNoZWNrVmFsIiwgInV0aWxzX2pzXzEiLCAiXzBuIiwgIl8xbiIsICJfMm4iLCAiXzNuIiwgIl80biIsICJfNW4iLCAiXzhuIiwgIl85biIsICJfMTZuIiwgIm1vZCIsICJhIiwgImIiLCAicmVzdWx0IiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInBvdyIsICJudW0iLCAicG93ZXIiLCAibW9kdWxvIiwgInJlcyIsICJwb3cyIiwgIngiLCAiaW52ZXJ0IiwgIm51bWJlciIsICJ5IiwgInUiLCAidiIsICJxIiwgInIiLCAibSIsICJuIiwgInRvbmVsbGlTaGFua3MiLCAiUCIsICJsZWdlbmRyZUMiLCAiUSIsICJTIiwgIloiLCAicDFkaXY0IiwgIkZwIiwgInJvb3QiLCAiUTFkaXYyIiwgImciLCAidDIiLCAiZ2UiLCAiRnBTcXJ0IiwgImMxIiwgIm4yIiwgIm52IiwgImkiLCAiaXNOZWdhdGl2ZUxFIiwgIkZJRUxEX0ZJRUxEUyIsICJ2YWxpZGF0ZUZpZWxkIiwgImZpZWxkIiwgImluaXRpYWwiLCAib3B0cyIsICJtYXAiLCAidmFsIiwgIkZwUG93IiwgImYiLCAicCIsICJkIiwgIkZwSW52ZXJ0QmF0Y2giLCAibnVtcyIsICJ0bXAiLCAibGFzdE11bHRpcGxpZWQiLCAiYWNjIiwgImludmVydGVkIiwgIkZwRGl2IiwgImxocyIsICJyaHMiLCAiRnBJc1NxdWFyZSIsICJsZWdlbmRyZUNvbnN0IiwgIm5MZW5ndGgiLCAibkJpdExlbmd0aCIsICJfbkJpdExlbmd0aCIsICJuQnl0ZUxlbmd0aCIsICJGaWVsZCIsICJPUkRFUiIsICJiaXRMZW4iLCAiaXNMRSIsICJyZWRlZiIsICJCSVRTIiwgIkJZVEVTIiwgInNxcnRQIiwgImxzdCIsICJieXRlcyIsICJGcFNxcnRPZGQiLCAiZWxtIiwgIkZwU3FydEV2ZW4iLCAiaGFzaFRvUHJpdmF0ZVNjYWxhciIsICJoYXNoIiwgImdyb3VwT3JkZXIiLCAiaGFzaExlbiIsICJtaW5MZW4iLCAiZ2V0RmllbGRCeXRlc0xlbmd0aCIsICJmaWVsZE9yZGVyIiwgImJpdExlbmd0aCIsICJnZXRNaW5IYXNoTGVuZ3RoIiwgImxlbmd0aCIsICJtYXBIYXNoVG9GaWVsZCIsICJrZXkiLCAibGVuIiwgImZpZWxkTGVuIiwgInJlZHVjZWQiLCAibW9kdWxhcl9qc18xIiwgInV0aWxzX2pzXzEiLCAiXzBuIiwgIl8xbiIsICJ3TkFGIiwgImMiLCAiYml0cyIsICJjb25zdFRpbWVOZWdhdGUiLCAiX19uYW1lIiwgImNvbmRpdGlvbiIsICJpdGVtIiwgIm5lZyIsICJvcHRzIiwgIlciLCAid2luZG93cyIsICJ3aW5kb3dTaXplIiwgImVsbSIsICJuIiwgInAiLCAiZCIsICJwb2ludHMiLCAiYmFzZSIsICJ3aW5kb3ciLCAiaSIsICJwcmVjb21wdXRlcyIsICJmIiwgIm1hc2siLCAibWF4TnVtYmVyIiwgInNoaWZ0QnkiLCAib2Zmc2V0IiwgIndiaXRzIiwgIm9mZnNldDEiLCAib2Zmc2V0MiIsICJjb25kMSIsICJjb25kMiIsICJQIiwgInByZWNvbXB1dGVzTWFwIiwgInRyYW5zZm9ybSIsICJjb21wIiwgImV4cG9ydHMiLCAidmFsaWRhdGVCYXNpYyIsICJjdXJ2ZSIsICJtb2R1bGFyX2pzXzEiLCAidXQiLCAidXRpbHNfanNfMSIsICJjdXJ2ZV9qc18xIiwgIl8wbiIsICJfMW4iLCAiXzJuIiwgIl84biIsICJWRVJJRllfREVGQVVMVCIsICJ2YWxpZGF0ZU9wdHMiLCAiY3VydmUiLCAib3B0cyIsICJfX25hbWUiLCAidHdpc3RlZEVkd2FyZHMiLCAiY3VydmVEZWYiLCAiQ1VSVkUiLCAiRnAiLCAiQ1VSVkVfT1JERVIiLCAicHJlaGFzaCIsICJjSGFzaCIsICJyYW5kb21CeXRlcyIsICJuQnl0ZUxlbmd0aCIsICJjb2ZhY3RvciIsICJNQVNLIiwgIm1vZFAiLCAidXZSYXRpbyIsICJ1IiwgInYiLCAiYWRqdXN0U2NhbGFyQnl0ZXMiLCAiYnl0ZXMiLCAiZG9tYWluIiwgImRhdGEiLCAiY3R4IiwgInBoZmxhZyIsICJpbkJpZyIsICJuIiwgImluUmFuZ2UiLCAibWF4IiwgImluME1hc2tSYW5nZSIsICJhc3NlcnRJblJhbmdlIiwgImFzc2VydEdFMCIsICJwb2ludFByZWNvbXB1dGVzIiwgImlzUG9pbnQiLCAib3RoZXIiLCAiUG9pbnQiLCAiZXgiLCAiZXkiLCAiZXoiLCAiZXQiLCAicCIsICJ4IiwgInkiLCAicG9pbnRzIiwgInRvSW52IiwgImkiLCAid2luZG93U2l6ZSIsICJhIiwgImQiLCAiWCIsICJZIiwgIloiLCAiVCIsICJYMiIsICJZMiIsICJaMiIsICJaNCIsICJhWDIiLCAibGVmdCIsICJyaWdodCIsICJYWSIsICJaVCIsICJYMSIsICJZMSIsICJaMSIsICJYMVoyIiwgIlgyWjEiLCAiWTFaMiIsICJZMloxIiwgIkEiLCAiQiIsICJDIiwgIkQiLCAieDF5MSIsICJFIiwgIkciLCAiRiIsICJIIiwgIlgzIiwgIlkzIiwgIlQzIiwgIlozIiwgIlQxIiwgIlQyIiwgInduYWYiLCAic2NhbGFyIiwgImYiLCAiSSIsICJpeiIsICJ6IiwgImlzMCIsICJheCIsICJheSIsICJ6eiIsICJoZXgiLCAiemlwMjE1IiwgImxlbiIsICJub3JtZWQiLCAibGFzdEJ5dGUiLCAieTIiLCAiaXNWYWxpZCIsICJpc1hPZGQiLCAiaXNMYXN0Qnl0ZU9kZCIsICJwcml2S2V5IiwgImdldEV4dGVuZGVkUHVibGljS2V5IiwgIm1vZE4iLCAibW9kTl9MRSIsICJoYXNoIiwgImtleSIsICJoYXNoZWQiLCAiaGVhZCIsICJwcmVmaXgiLCAicG9pbnQiLCAicG9pbnRCeXRlcyIsICJnZXRQdWJsaWNLZXkiLCAiaGFzaERvbWFpblRvU2NhbGFyIiwgImNvbnRleHQiLCAibXNncyIsICJtc2ciLCAic2lnbiIsICJvcHRpb25zIiwgInIiLCAiUiIsICJrIiwgInMiLCAicmVzIiwgInZlcmlmeU9wdHMiLCAidmVyaWZ5IiwgInNpZyIsICJwdWJsaWNLZXkiLCAiU0IiLCAiZXhwb3J0cyIsICJtb2R1bGFyX2pzXzEiLCAidXRpbHNfanNfMSIsICJfMG4iLCAiXzFuIiwgInZhbGlkYXRlT3B0cyIsICJjdXJ2ZSIsICJfX25hbWUiLCAibW9udGdvbWVyeSIsICJjdXJ2ZURlZiIsICJDVVJWRSIsICJQIiwgIm1vZFAiLCAibiIsICJtb250Z29tZXJ5Qml0cyIsICJtb250Z29tZXJ5Qnl0ZXMiLCAiZmllbGRMZW4iLCAiYWRqdXN0U2NhbGFyQnl0ZXMiLCAiYnl0ZXMiLCAicG93UG1pbnVzMiIsICJ4IiwgImNzd2FwIiwgInN3YXAiLCAieF8yIiwgInhfMyIsICJkdW1teSIsICJhc3NlcnRGaWVsZEVsZW1lbnQiLCAiYTI0IiwgIm1vbnRnb21lcnlMYWRkZXIiLCAicG9pbnRVIiwgInNjYWxhciIsICJ1IiwgImsiLCAieF8xIiwgInpfMiIsICJ6XzMiLCAic3ciLCAidCIsICJrX3QiLCAiQSIsICJBQSIsICJCIiwgIkJCIiwgIkUiLCAiQyIsICJEIiwgIkRBIiwgIkNCIiwgImRhY2IiLCAiZGFfY2IiLCAiejIiLCAiZW5jb2RlVUNvb3JkaW5hdGUiLCAiZGVjb2RlVUNvb3JkaW5hdGUiLCAidUVuYyIsICJkZWNvZGVTY2FsYXIiLCAic2NhbGFyTXVsdCIsICJfc2NhbGFyIiwgInB1IiwgIkd1Qnl0ZXMiLCAic2NhbGFyTXVsdEJhc2UiLCAicHJpdmF0ZUtleSIsICJwdWJsaWNLZXkiLCAiZXhwb3J0cyIsICJtb2R1bGFyX2pzXzEiLCAidXRpbHNfanNfMSIsICJ2YWxpZGF0ZURTVCIsICJkc3QiLCAiX19uYW1lIiwgIm9zMmlwIiwgImkyb3NwIiwgInZhbHVlIiwgImxlbmd0aCIsICJyZXMiLCAic3RyeG9yIiwgImEiLCAiYiIsICJhcnIiLCAiaXNCeXRlcyIsICJpdGVtIiwgImlzTnVtIiwgImV4cGFuZF9tZXNzYWdlX3htZCIsICJtc2ciLCAiRFNUIiwgImxlbkluQnl0ZXMiLCAiSCIsICJiX2luX2J5dGVzIiwgInJfaW5fYnl0ZXMiLCAiZWxsIiwgIkRTVF9wcmltZSIsICJaX3BhZCIsICJsX2lfYl9zdHIiLCAiYl8wIiwgImkiLCAiYXJncyIsICJleHBvcnRzIiwgImV4cGFuZF9tZXNzYWdlX3hvZiIsICJrIiwgImRrTGVuIiwgImhhc2hfdG9fZmllbGQiLCAiY291bnQiLCAib3B0aW9ucyIsICJwIiwgIm0iLCAiaGFzaCIsICJleHBhbmQiLCAiX0RTVCIsICJsb2cycCIsICJMIiwgImxlbl9pbl9ieXRlcyIsICJwcmIiLCAidSIsICJlIiwgImoiLCAiZWxtX29mZnNldCIsICJ0diIsICJpc29nZW55TWFwIiwgImZpZWxkIiwgIm1hcCIsICJDT0VGRiIsICJ4IiwgInkiLCAieE51bSIsICJ4RGVuIiwgInlOdW0iLCAieURlbiIsICJ2YWwiLCAiYWNjIiwgImNyZWF0ZUhhc2hlciIsICJQb2ludCIsICJtYXBUb0N1cnZlIiwgImRlZiIsICJ1MCIsICJ1MSIsICJQIiwgInNoYTUxMl8xIiwgInV0aWxzXzEiLCAiZWR3YXJkc19qc18xIiwgIm1vbnRnb21lcnlfanNfMSIsICJtb2R1bGFyX2pzXzEiLCAidXRpbHNfanNfMSIsICJoYXNoX3RvX2N1cnZlX2pzXzEiLCAiRUQyNTUxOV9QIiwgIkVEMjU1MTlfU1FSVF9NMSIsICJfMG4iLCAiXzFuIiwgIl8ybiIsICJfNW4iLCAiXzEwbiIsICJfMjBuIiwgIl80MG4iLCAiXzgwbiIsICJlZDI1NTE5X3Bvd18yXzI1Ml8zIiwgIngiLCAiUCIsICJiMiIsICJiNCIsICJiNSIsICJiMTAiLCAiYjIwIiwgImI0MCIsICJiODAiLCAiYjE2MCIsICJiMjQwIiwgImIyNTAiLCAiX19uYW1lIiwgImFkanVzdFNjYWxhckJ5dGVzIiwgImJ5dGVzIiwgInV2UmF0aW8iLCAidSIsICJ2IiwgInYzIiwgInY3IiwgInBvdyIsICJ2eDIiLCAicm9vdDEiLCAicm9vdDIiLCAidXNlUm9vdDEiLCAidXNlUm9vdDIiLCAibm9Sb290IiwgImV4cG9ydHMiLCAiRnAiLCAiZWQyNTUxOURlZmF1bHRzIiwgImVkMjU1MTlfZG9tYWluIiwgImRhdGEiLCAiY3R4IiwgInBoZmxhZyIsICJwb3dfcF81XzgiLCAiZWR3YXJkc1RvTW9udGdvbWVyeVB1YiIsICJlZHdhcmRzUHViIiwgInkiLCAiZWR3YXJkc1RvTW9udGdvbWVyeVByaXYiLCAiZWR3YXJkc1ByaXYiLCAiaGFzaGVkIiwgIkVMTDJfQzEiLCAiRUxMMl9DMiIsICJFTEwyX0MzIiwgIkVMTDJfQzQiLCAiRUxMMl9KIiwgIm1hcF90b19jdXJ2ZV9lbGxpZ2F0b3IyX2N1cnZlMjU1MTkiLCAidHYxIiwgInhkIiwgIngxbiIsICJ0djIiLCAiZ3hkIiwgImd4MSIsICJ0djMiLCAieTExIiwgInkxMiIsICJlMSIsICJ5MSIsICJ4Mm4iLCAieTIxIiwgInkyMiIsICJneDIiLCAiZTIiLCAieTIiLCAiZTMiLCAieG4iLCAiZTQiLCAiRUxMMl9DMV9FRFdBUkRTIiwgIm1hcF90b19jdXJ2ZV9lbGxpZ2F0b3IyX2Vkd2FyZHMyNTUxOSIsICJ4TW4iLCAieE1kIiwgInlNbiIsICJ5TWQiLCAieW4iLCAieWQiLCAiZSIsICJpbnYiLCAiaHRmIiwgInNjYWxhcnMiLCAiYXNzZXJ0UnN0UG9pbnQiLCAib3RoZXIiLCAiUmlzdFBvaW50IiwgIlNRUlRfTTEiLCAiU1FSVF9BRF9NSU5VU19PTkUiLCAiSU5WU1FSVF9BX01JTlVTX0QiLCAiT05FX01JTlVTX0RfU1EiLCAiRF9NSU5VU19PTkVfU1EiLCAiaW52ZXJ0U3FydCIsICJudW1iZXIiLCAiTUFYXzI1NUIiLCAiYnl0ZXMyNTVUb051bWJlckxFIiwgImNhbGNFbGxpZ2F0b3JSaXN0cmV0dG9NYXAiLCAicjAiLCAiZCIsICJtb2QiLCAiciIsICJOcyIsICJjIiwgIkQiLCAiTnNfRF9pc19zcSIsICJzIiwgInNfIiwgIk50IiwgInMyIiwgIlcwIiwgIlcxIiwgIlcyIiwgIlczIiwgIl9SaXN0UG9pbnQiLCAiZXAiLCAiYXAiLCAiaGV4IiwgInIxIiwgIlIxIiwgInIyIiwgIlIyIiwgImEiLCAiZW1zZyIsICJ1MSIsICJ1MiIsICJ1MV8yIiwgInUyXzIiLCAiaXNWYWxpZCIsICJJIiwgIkR4IiwgIkR5IiwgInQiLCAieiIsICJ1MnNxIiwgImludnNxcnQiLCAiRDEiLCAiRDIiLCAiekludiIsICJfeCIsICJfeSIsICJYMSIsICJZMSIsICJYMiIsICJZMiIsICJvbmUiLCAidHdvIiwgInNjYWxhciIsICJoYXNoVG9SaXN0cmV0dG8yNTUiLCAibXNnIiwgIm9wdGlvbnMiLCAiRFNUIiwgInVuaWZvcm1fYnl0ZXMiLCAicmVxdWlyZV9ibiIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgImFzc2VydCIsICJ2YWwiLCAibXNnIiwgIl9fbmFtZSIsICJpbmhlcml0cyIsICJjdG9yIiwgInN1cGVyQ3RvciIsICJUZW1wQ3RvciIsICJCTiIsICJudW1iZXIiLCAiYmFzZSIsICJlbmRpYW4iLCAiQnVmZmVyIiwgIm51bSIsICJsZWZ0IiwgInJpZ2h0IiwgInN0YXJ0IiwgImkiLCAiaiIsICJvZmYiLCAicGFyc2VIZXg0Qml0cyIsICJzdHJpbmciLCAiaW5kZXgiLCAiYyIsICJwYXJzZUhleEJ5dGUiLCAibG93ZXJCb3VuZCIsICJyIiwgInciLCAicGFyc2VMZW5ndGgiLCAicGFyc2VCYXNlIiwgInN0ciIsICJlbmQiLCAibXVsIiwgImxlbiIsICJsaW1iTGVuIiwgImxpbWJQb3ciLCAidG90YWwiLCAibW9kIiwgIndvcmQiLCAicG93IiwgImRlc3QiLCAibW92ZSIsICJzcmMiLCAic2l6ZSIsICJpbnNwZWN0IiwgInplcm9zIiwgImdyb3VwU2l6ZXMiLCAiZ3JvdXBCYXNlcyIsICJwYWRkaW5nIiwgIm91dCIsICJjYXJyeSIsICJncm91cFNpemUiLCAiZ3JvdXBCYXNlIiwgInJldCIsICJsZW5ndGgiLCAiYWxsb2NhdGUiLCAiQXJyYXlUeXBlIiwgImJ5dGVMZW5ndGgiLCAicmVxTGVuZ3RoIiwgInJlcyIsICJwb3N0Zml4IiwgInBvc2l0aW9uIiwgInNoaWZ0IiwgInQiLCAiaGkiLCAidG9CaXRBcnJheSIsICJiaXQiLCAid2JpdCIsICJiIiwgIndpZHRoIiwgImEiLCAiYnl0ZXNOZWVkZWQiLCAiYml0c0xlZnQiLCAiY21wIiwgInNtYWxsTXVsVG8iLCAic2VsZiIsICJsbyIsICJrIiwgIm5jYXJyeSIsICJyd29yZCIsICJtYXhKIiwgImNvbWIxME11bFRvIiwgIm8iLCAibWlkIiwgImEwIiwgImFsMCIsICJhaDAiLCAiYTEiLCAiYWwxIiwgImFoMSIsICJhMiIsICJhbDIiLCAiYWgyIiwgImEzIiwgImFsMyIsICJhaDMiLCAiYTQiLCAiYWw0IiwgImFoNCIsICJhNSIsICJhbDUiLCAiYWg1IiwgImE2IiwgImFsNiIsICJhaDYiLCAiYTciLCAiYWw3IiwgImFoNyIsICJhOCIsICJhbDgiLCAiYWg4IiwgImE5IiwgImFsOSIsICJhaDkiLCAiYjAiLCAiYmwwIiwgImJoMCIsICJiMSIsICJibDEiLCAiYmgxIiwgImIyIiwgImJsMiIsICJiaDIiLCAiYjMiLCAiYmwzIiwgImJoMyIsICJiNCIsICJibDQiLCAiYmg0IiwgImI1IiwgImJsNSIsICJiaDUiLCAiYjYiLCAiYmw2IiwgImJoNiIsICJiNyIsICJibDciLCAiYmg3IiwgImI4IiwgImJsOCIsICJiaDgiLCAiYjkiLCAiYmw5IiwgImJoOSIsICJ3MCIsICJ3MSIsICJ3MiIsICJ3MyIsICJ3NCIsICJ3NSIsICJ3NiIsICJ3NyIsICJ3OCIsICJ3OSIsICJ3MTAiLCAidzExIiwgIncxMiIsICJ3MTMiLCAidzE0IiwgIncxNSIsICJ3MTYiLCAidzE3IiwgIncxOCIsICJiaWdNdWxUbyIsICJobmNhcnJ5IiwgImp1bWJvTXVsVG8iLCAiRkZUTSIsICJ4IiwgInkiLCAiTiIsICJsIiwgInJiIiwgInJidCIsICJyd3MiLCAiaXdzIiwgInJ0d3MiLCAiaXR3cyIsICJzIiwgInJ0d2RmIiwgIml0d2RmIiwgInAiLCAicnR3ZGZfIiwgIml0d2RmXyIsICJyZSIsICJpZSIsICJybyIsICJpbyIsICJyeCIsICJuIiwgIm0iLCAib2RkIiwgIndzIiwgInBoIiwgIl8iLCAicndzdCIsICJpd3N0IiwgIm5yd3MiLCAibnJ3c3QiLCAibml3c3QiLCAicm13cyIsICJpc05lZ051bSIsICJxIiwgImJpdHMiLCAiY2FycnlNYXNrIiwgIm5ld0NhcnJ5IiwgImhpbnQiLCAiZXh0ZW5kZWQiLCAiaCIsICJtYXNrIiwgIm1hc2tlZFdvcmRzIiwgIm1vZGUiLCAiYmhpIiwgImJoaUJpdHMiLCAiZGlmZiIsICJxaiIsICJwb3NpdGl2ZSIsICJkaXYiLCAiZG0iLCAiaGFsZiIsICJyMiIsICJhY2MiLCAiQSIsICJCIiwgIkMiLCAiRCIsICJnIiwgInlwIiwgInhwIiwgImltIiwgImptIiwgIngxIiwgIngyIiwgImRlbHRhIiwgIm5lZ2F0aXZlIiwgIlJlZCIsICJjdHgiLCAicHJpbWVzIiwgIk1QcmltZSIsICJuYW1lIiwgInRtcCIsICJybGVuIiwgImlucHV0IiwgIksyNTYiLCAib3V0cHV0IiwgIm91dExlbiIsICJwcmV2IiwgIm5leHQiLCAiUDIyNCIsICJQMTkyIiwgIlAyNTUxOSIsICJwcmltZSIsICJtb2QzIiwgIm9uZSIsICJuT25lIiwgImxwb3ciLCAieiIsICJpbnYiLCAid2luZG93U2l6ZSIsICJ3bmQiLCAiY3VycmVudCIsICJjdXJyZW50TGVuIiwgIk1vbnQiLCAidSIsICJyZXF1aXJlX3NhZmVfYnVmZmVyIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJtb2R1bGUiLCAiYnVmZmVyIiwgIkJ1ZmZlciIsICJjb3B5UHJvcHMiLCAic3JjIiwgImRzdCIsICJrZXkiLCAiX19uYW1lIiwgIlNhZmVCdWZmZXIiLCAiYXJnIiwgImVuY29kaW5nT3JPZmZzZXQiLCAibGVuZ3RoIiwgInNpemUiLCAiZmlsbCIsICJlbmNvZGluZyIsICJidWYiLCAicmVxdWlyZV9zcmMiLCAiX19jb21tb25KU01pbiIsICJleHBvcnRzIiwgIm1vZHVsZSIsICJfQnVmZmVyIiwgImJhc2UiLCAiQUxQSEFCRVQiLCAiQkFTRV9NQVAiLCAiaiIsICJ4IiwgInhjIiwgIkJBU0UiLCAiTEVBREVSIiwgIkZBQ1RPUiIsICJpRkFDVE9SIiwgImVuY29kZSIsICJzb3VyY2UiLCAiemVyb2VzIiwgImxlbmd0aCIsICJwYmVnaW4iLCAicGVuZCIsICJzaXplIiwgImI1OCIsICJjYXJyeSIsICJpIiwgIml0MSIsICJpdDIiLCAic3RyIiwgIl9fbmFtZSIsICJkZWNvZGVVbnNhZmUiLCAicHN6IiwgImIyNTYiLCAiaXQzIiwgIml0NCIsICJ2Y2giLCAiZGVjb2RlIiwgInN0cmluZyIsICJidWZmZXIiLCAicmVxdWlyZV9iczU4IiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJtb2R1bGUiLCAiYmFzZXgiLCAiQUxQSEFCRVQiLCAiX3NoYTJfanNfMSIsICJ1dGlsc19qc18xIiwgIkNoaSIsICJfX25hbWUiLCAiYSIsICJiIiwgImMiLCAiTWFqIiwgIlNIQTI1Nl9LIiwgIklWIiwgIlNIQTI1Nl9XIiwgIlNIQTI1NiIsICJBIiwgIkIiLCAiQyIsICJEIiwgIkUiLCAiRiIsICJHIiwgIkgiLCAidmlldyIsICJvZmZzZXQiLCAiaSIsICJXMTUiLCAiVzIiLCAiczAiLCAiczEiLCAic2lnbWExIiwgIlQxIiwgIlQyIiwgIlNIQTIyNCIsICJleHBvcnRzIiwgInJlcXVpcmVfZW5jb2RpbmdfbGliIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJpblJhbmdlIiwgImEiLCAibWluIiwgIm1heCIsICJfX25hbWUiLCAiVG9EaWN0aW9uYXJ5IiwgIm8iLCAic3RyaW5nVG9Db2RlUG9pbnRzIiwgInN0cmluZyIsICJzIiwgIm4iLCAidSIsICJjIiwgImQiLCAiYiIsICJjb2RlUG9pbnRzVG9TdHJpbmciLCAiY29kZV9wb2ludHMiLCAiaSIsICJjcCIsICJlbmRfb2Zfc3RyZWFtIiwgIlN0cmVhbSIsICJ0b2tlbnMiLCAidG9rZW4iLCAiZmluaXNoZWQiLCAiZGVjb2RlckVycm9yIiwgImZhdGFsIiwgIm9wdF9jb2RlX3BvaW50IiwgIkRFRkFVTFRfRU5DT0RJTkciLCAiVGV4dERlY29kZXIiLCAiZW5jb2RpbmciLCAib3B0aW9ucyIsICJpbnB1dCIsICJieXRlcyIsICJVVEY4RGVjb2RlciIsICJpbnB1dF9zdHJlYW0iLCAicmVzdWx0IiwgIlRleHRFbmNvZGVyIiwgIm9wdF9zdHJpbmciLCAiVVRGOEVuY29kZXIiLCAidXRmOF9jb2RlX3BvaW50IiwgInV0ZjhfYnl0ZXNfc2VlbiIsICJ1dGY4X2J5dGVzX25lZWRlZCIsICJ1dGY4X2xvd2VyX2JvdW5kYXJ5IiwgInV0ZjhfdXBwZXJfYm91bmRhcnkiLCAic3RyZWFtIiwgImJpdGUiLCAiY29kZV9wb2ludCIsICJjb3VudCIsICJvZmZzZXQiLCAidGVtcCIsICJyZXF1aXJlX2xpYiIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAiX19jcmVhdGVCaW5kaW5nIiwgIm8iLCAibSIsICJrIiwgImsyIiwgIl9fc2V0TW9kdWxlRGVmYXVsdCIsICJ2IiwgIl9fZGVjb3JhdGUiLCAiZGVjb3JhdG9ycyIsICJ0YXJnZXQiLCAia2V5IiwgImRlc2MiLCAiYyIsICJyIiwgImQiLCAiaSIsICJfX2ltcG9ydFN0YXIiLCAibW9kIiwgInJlc3VsdCIsICJfX2ltcG9ydERlZmF1bHQiLCAiYm5fanNfMSIsICJiczU4XzEiLCAiZW5jb2RpbmciLCAiUmVzb2x2ZWRUZXh0RGVjb2RlciIsICJ0ZXh0RGVjb2RlciIsICJiYXNlRW5jb2RlIiwgInZhbHVlIiwgIl9fbmFtZSIsICJiYXNlRGVjb2RlIiwgIklOSVRJQUxfTEVOR1RIIiwgIkJvcnNoRXJyb3IiLCAibWVzc2FnZSIsICJmaWVsZE5hbWUiLCAiQmluYXJ5V3JpdGVyIiwgImJ1ZmZlciIsICJzdHIiLCAiYiIsICJhcnJheSIsICJmbiIsICJlbGVtIiwgImhhbmRsaW5nUmFuZ2VFcnJvciIsICJwcm9wZXJ0eUtleSIsICJwcm9wZXJ0eURlc2NyaXB0b3IiLCAib3JpZ2luYWxNZXRob2QiLCAiYXJncyIsICJlIiwgImNvZGUiLCAiQmluYXJ5UmVhZGVyIiwgImJ1ZiIsICJsZW4iLCAiY2FwaXRhbGl6ZUZpcnN0TGV0dGVyIiwgInN0cmluZyIsICJzZXJpYWxpemVGaWVsZCIsICJzY2hlbWEiLCAiZmllbGRUeXBlIiwgIndyaXRlciIsICJpdGVtIiwgInZhbCIsICJzZXJpYWxpemVTdHJ1Y3QiLCAiZXJyb3IiLCAib2JqIiwgInN0cnVjdFNjaGVtYSIsICJuYW1lIiwgImlkeCIsICJzZXJpYWxpemUiLCAiV3JpdGVyIiwgImRlc2VyaWFsaXplRmllbGQiLCAicmVhZGVyIiwgImFyciIsICJtYXAiLCAibGVuZ3RoIiwgImRlc2VyaWFsaXplU3RydWN0IiwgImNsYXNzVHlwZSIsICJmaWVsZFZhbHVlIiwgImRlc2VyaWFsaXplIiwgIlJlYWRlciIsICJkZXNlcmlhbGl6ZVVuY2hlY2tlZCIsICJyZXF1aXJlX0xheW91dCIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAiYnVmZmVyXzEiLCAiY2hlY2tVaW50OEFycmF5IiwgImIiLCAiX19uYW1lIiwgInVpbnQ4QXJyYXlUb0J1ZmZlciIsICJMYXlvdXQiLCAic3BhbiIsICJwcm9wZXJ0eSIsICJvZmZzZXQiLCAicnYiLCAidmFsdWVzIiwgIm5hbWVXaXRoUHJvcGVydHkiLCAibmFtZSIsICJsbyIsICJiaW5kQ29uc3RydWN0b3JMYXlvdXQiLCAiQ2xhc3MiLCAibGF5b3V0IiwgIkV4dGVybmFsTGF5b3V0IiwgIkdyZWVkeUNvdW50IiwgImVsZW1lbnRTcGFuIiwgInJlbSIsICJzcmMiLCAiT2Zmc2V0TGF5b3V0IiwgIlVJbnQiLCAiVUludEJFIiwgIkludCIsICJJbnRCRSIsICJWMkUzMiIsICJkaXZtb2RJbnQ2NCIsICJoaTMyIiwgImxvMzIiLCAicm91bmRlZEludDY0IiwgIk5lYXJVSW50NjQiLCAiYnVmZmVyIiwgInNwbGl0IiwgIk5lYXJVSW50NjRCRSIsICJOZWFySW50NjQiLCAiTmVhckludDY0QkUiLCAiRmxvYXQiLCAiRmxvYXRCRSIsICJEb3VibGUiLCAiRG91YmxlQkUiLCAiU2VxdWVuY2UiLCAiZWxlbWVudExheW91dCIsICJjb3VudCIsICJpZHgiLCAiaSIsICJlbG8iLCAidiIsICJTdHJ1Y3R1cmUiLCAiZmllbGRzIiwgImRlY29kZVByZWZpeGVzIiwgImFjYyIsICJmZCIsICJmc3AiLCAiZGVzdCIsICJmaXJzdE9mZnNldCIsICJsYXN0T2Zmc2V0IiwgImxhc3RXcm90ZSIsICJmdiIsICJVbmlvbkRpc2NyaW1pbmF0b3IiLCAiVW5pb25MYXlvdXREaXNjcmltaW5hdG9yIiwgIlVuaW9uIiwgImRpc2NyIiwgImRlZmF1bHRMYXlvdXQiLCAiZGlzY3JpbWluYXRvciIsICJib3VuZEdldFNvdXJjZVZhcmlhbnQiLCAiZ3N2IiwgInZsbyIsICJ0YWciLCAiZGxvIiwgImNsbyIsICJjb250ZW50T2Zmc2V0IiwgInZhcmlhbnQiLCAiVmFyaWFudExheW91dCIsICJ2YiIsICJ1bmlvbiIsICJmaXhCaXR3aXNlUmVzdWx0IiwgIkJpdFN0cnVjdHVyZSIsICJ3b3JkIiwgIm1zYiIsICJ2YWx1ZSIsICJiaXRzIiwgImJmIiwgIkJpdEZpZWxkIiwgIkJvb2xlYW4iLCAiY29udGFpbmVyIiwgInRvdGFsQml0cyIsICJ1c2VkQml0cyIsICJzdW0iLCAid29yZFZhbHVlIiwgIkJsb2IiLCAibGVuZ3RoIiwgInNyY0J1ZmZlciIsICJDU3RyaW5nIiwgInNyY2IiLCAiVVRGOCIsICJtYXhTcGFuIiwgIkNvbnN0YW50IiwgInJlcXVpcmVfZmlsZV91cmlfdG9fcGF0aCIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgInNlcCIsICJmaWxlVXJpVG9QYXRoIiwgInVyaSIsICJyZXN0IiwgImZpcnN0U2xhc2giLCAiaG9zdCIsICJwYXRoIiwgIl9fbmFtZSIsICJyZXF1aXJlX2JpbmRpbmdzIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJtb2R1bGUiLCAiZnMiLCAicGF0aCIsICJmaWxlVVJMVG9QYXRoIiwgImpvaW4iLCAiZGlybmFtZSIsICJleGlzdHMiLCAiZGVmYXVsdHMiLCAiYmluZGluZ3MiLCAib3B0cyIsICJpIiwgInJlcXVpcmVGdW5jIiwgInRyaWVzIiwgImwiLCAibiIsICJiIiwgImVyciIsICJwIiwgImUiLCAiYSIsICJfX25hbWUiLCAiY2FsbGluZ19maWxlIiwgIm9yaWdQU1QiLCAib3JpZ1NUTCIsICJkdW1teSIsICJmaWxlTmFtZSIsICJzdCIsICJmaWxlU2NoZW1hIiwgImZpbGUiLCAiZGlyIiwgInByZXYiLCAicmVxdWlyZV9ub2RlIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJjb252ZXJ0ZXIiLCAidG9CaWdJbnRMRSIsICJidWYiLCAicmV2ZXJzZWQiLCAiaGV4IiwgIl9fbmFtZSIsICJ0b0JpZ0ludEJFIiwgInRvQnVmZmVyTEUiLCAibnVtIiwgIndpZHRoIiwgImJ1ZmZlciIsICJ0b0J1ZmZlckJFIiwgIlN0cnVjdEVycm9yIiwgIlR5cGVFcnJvciIsICJjb25zdHJ1Y3RvciIsICJmYWlsdXJlIiwgImZhaWx1cmVzIiwgImNhY2hlZCIsICJtZXNzYWdlIiwgInJlc3QiLCAicGF0aCIsICJtc2ciLCAibGVuZ3RoIiwgImpvaW4iLCAiT2JqZWN0IiwgImFzc2lnbiIsICJuYW1lIiwgIl9jYWNoZWQiLCAiaXNJdGVyYWJsZSIsICJ4IiwgImlzT2JqZWN0IiwgIlN5bWJvbCIsICJpdGVyYXRvciIsICJpc1BsYWluT2JqZWN0IiwgInByb3RvdHlwZSIsICJ0b1N0cmluZyIsICJjYWxsIiwgImdldFByb3RvdHlwZU9mIiwgInByaW50IiwgInZhbHVlIiwgIkpTT04iLCAic3RyaW5naWZ5IiwgInNoaWZ0SXRlcmF0b3IiLCAiaW5wdXQiLCAiZG9uZSIsICJuZXh0IiwgInVuZGVmaW5lZCIsICJ0b0ZhaWx1cmUiLCAicmVzdWx0IiwgImNvbnRleHQiLCAic3RydWN0IiwgImJyYW5jaCIsICJ0eXBlIiwgInJlZmluZW1lbnQiLCAia2V5IiwgInRvRmFpbHVyZXMiLCAiciIsICJydW4iLCAib3B0aW9ucyIsICJjb2VyY2UiLCAibWFzayIsICJjdHgiLCAiY29lcmNlciIsICJzY2hlbWEiLCAiQXJyYXkiLCAiaXNBcnJheSIsICJ2YWxpZCIsICJ2YWxpZGF0b3IiLCAiayIsICJ2IiwgInMiLCAiZW50cmllcyIsICJ0cyIsICJ0IiwgIk1hcCIsICJzZXQiLCAiU2V0IiwgImFkZCIsICJyZWZpbmVyIiwgIlN0cnVjdCIsICJwcm9wcyIsICJfX25hbWUiLCAiYXNzZXJ0IiwgImNyZWF0ZSIsICJpcyIsICJ2YWxpZGF0ZSIsICJ0dXBsZXMiLCAidHVwbGUiLCAiU3RydWN0cyIsICJzY2hlbWFzIiwgIm1hcCIsICJvYmplY3QiLCAiZGVmaW5lIiwgImRlcHJlY2F0ZWQiLCAibG9nIiwgImR5bmFtaWMiLCAiZm4iLCAibGF6eSIsICJfc3RydWN0IiwgIl9zdHJ1Y3QyIiwgIl9zdHJ1Y3QzIiwgIm9taXQiLCAia2V5cyIsICJzdWJzY2hlbWEiLCAicGFydGlhbCIsICJvcHRpb25hbCIsICJwaWNrIiwgImNvbnNvbGUiLCAid2FybiIsICJhbnkiLCAiYXJyYXkiLCAiRWxlbWVudCIsICJpIiwgInNsaWNlIiwgImJvb2xlYW4iLCAiZGF0ZSIsICJEYXRlIiwgImlzTmFOIiwgImdldFRpbWUiLCAiZW51bXMiLCAidmFsdWVzIiwgImRlc2NyaXB0aW9uIiwgImluY2x1ZGVzIiwgImZ1bmMiLCAiaW5zdGFuY2UiLCAiQ2xhc3MiLCAiaW50ZWdlciIsICJOdW1iZXIiLCAiaXNJbnRlZ2VyIiwgImludGVyc2VjdGlvbiIsICJTIiwgImxpdGVyYWwiLCAiY29uc3RhbnQiLCAiS2V5IiwgIlZhbHVlIiwgIm5ldmVyIiwgIm51bGxhYmxlIiwgIm51bWJlciIsICJrbm93bnMiLCAiTmV2ZXIiLCAidW5rbm93bnMiLCAiZGVsZXRlIiwgInJlY29yZCIsICJyZWdleHAiLCAiUmVnRXhwIiwgInN0cmluZyIsICJFbGVtZW50cyIsICJNYXRoIiwgIm1heCIsICJ1bmlvbiIsICJmaXJzdCIsICJwdXNoIiwgInVua25vd24iLCAiY29uZGl0aW9uIiwgImRlZmF1bHRlZCIsICJmYWxsYmFjayIsICJmIiwgInN0cmljdCIsICJyZXQiLCAiY2hhbmdlZCIsICJ0cmltbWVkIiwgInRyaW0iLCAiZW1wdHkiLCAiZXhwZWN0ZWQiLCAicmVmaW5lIiwgInNpemUiLCAidGhyZXNob2xkIiwgImV4Y2x1c2l2ZSIsICJtaW4iLCAicGF0dGVybiIsICJ0ZXN0IiwgInNvdXJjZSIsICJvZiIsICJybmciLCAicG9vbFB0ciIsICJybmRzOFBvb2wiLCAiY3J5cHRvIiwgImltcG9ydF9jcnlwdG8iLCAiaW5pdF9ybmciLCAiX19lc21NaW4iLCAiX19uYW1lIiwgInJlZ2V4X2RlZmF1bHQiLCAiaW5pdF9yZWdleCIsICJfX2VzbU1pbiIsICJ2YWxpZGF0ZSIsICJ1dWlkIiwgInJlZ2V4X2RlZmF1bHQiLCAidmFsaWRhdGVfZGVmYXVsdCIsICJpbml0X3ZhbGlkYXRlIiwgIl9fZXNtTWluIiwgImluaXRfcmVnZXgiLCAiX19uYW1lIiwgInN0cmluZ2lmeSIsICJhcnIiLCAib2Zmc2V0IiwgInV1aWQiLCAiYnl0ZVRvSGV4IiwgInZhbGlkYXRlX2RlZmF1bHQiLCAic3RyaW5naWZ5X2RlZmF1bHQiLCAiaW5pdF9zdHJpbmdpZnkiLCAiX19lc21NaW4iLCAiaW5pdF92YWxpZGF0ZSIsICJpIiwgIl9fbmFtZSIsICJ2MSIsICJvcHRpb25zIiwgImJ1ZiIsICJvZmZzZXQiLCAiYiIsICJub2RlIiwgIl9ub2RlSWQiLCAiY2xvY2tzZXEiLCAiX2Nsb2Nrc2VxIiwgInNlZWRCeXRlcyIsICJybmciLCAibXNlY3MiLCAibnNlY3MiLCAiX2xhc3ROU2VjcyIsICJkdCIsICJfbGFzdE1TZWNzIiwgInRsIiwgInRtaCIsICJuIiwgInN0cmluZ2lmeV9kZWZhdWx0IiwgInYxX2RlZmF1bHQiLCAiaW5pdF92MSIsICJfX2VzbU1pbiIsICJpbml0X3JuZyIsICJpbml0X3N0cmluZ2lmeSIsICJfX25hbWUiLCAicGFyc2UiLCAidXVpZCIsICJ2YWxpZGF0ZV9kZWZhdWx0IiwgInYiLCAiYXJyIiwgInBhcnNlX2RlZmF1bHQiLCAiaW5pdF9wYXJzZSIsICJfX2VzbU1pbiIsICJpbml0X3ZhbGlkYXRlIiwgIl9fbmFtZSIsICJzdHJpbmdUb0J5dGVzIiwgInN0ciIsICJieXRlcyIsICJpIiwgInYzNV9kZWZhdWx0IiwgIm5hbWUiLCAidmVyc2lvbiIsICJoYXNoZnVuYyIsICJnZW5lcmF0ZVVVSUQiLCAidmFsdWUiLCAibmFtZXNwYWNlIiwgImJ1ZiIsICJvZmZzZXQiLCAicGFyc2VfZGVmYXVsdCIsICJzdHJpbmdpZnlfZGVmYXVsdCIsICJfX25hbWUiLCAiRE5TIiwgIlVSTCIsICJpbml0X3YzNSIsICJfX2VzbU1pbiIsICJpbml0X3N0cmluZ2lmeSIsICJpbml0X3BhcnNlIiwgIm1kNSIsICJieXRlcyIsICJjcnlwdG8iLCAiaW1wb3J0X2NyeXB0byIsICJtZDVfZGVmYXVsdCIsICJpbml0X21kNSIsICJfX2VzbU1pbiIsICJfX25hbWUiLCAidjMiLCAidjNfZGVmYXVsdCIsICJpbml0X3YzIiwgIl9fZXNtTWluIiwgImluaXRfdjM1IiwgImluaXRfbWQ1IiwgInYzNV9kZWZhdWx0IiwgIm1kNV9kZWZhdWx0IiwgInY0IiwgIm9wdGlvbnMiLCAiYnVmIiwgIm9mZnNldCIsICJybmRzIiwgInJuZyIsICJpIiwgInN0cmluZ2lmeV9kZWZhdWx0IiwgInY0X2RlZmF1bHQiLCAiaW5pdF92NCIsICJfX2VzbU1pbiIsICJpbml0X3JuZyIsICJpbml0X3N0cmluZ2lmeSIsICJfX25hbWUiLCAic2hhMSIsICJieXRlcyIsICJjcnlwdG8iLCAiaW1wb3J0X2NyeXB0byIsICJzaGExX2RlZmF1bHQiLCAiaW5pdF9zaGExIiwgIl9fZXNtTWluIiwgIl9fbmFtZSIsICJ2NSIsICJ2NV9kZWZhdWx0IiwgImluaXRfdjUiLCAiX19lc21NaW4iLCAiaW5pdF92MzUiLCAiaW5pdF9zaGExIiwgInYzNV9kZWZhdWx0IiwgInNoYTFfZGVmYXVsdCIsICJuaWxfZGVmYXVsdCIsICJpbml0X25pbCIsICJfX2VzbU1pbiIsICJ2ZXJzaW9uIiwgInV1aWQiLCAidmFsaWRhdGVfZGVmYXVsdCIsICJ2ZXJzaW9uX2RlZmF1bHQiLCAiaW5pdF92ZXJzaW9uIiwgIl9fZXNtTWluIiwgImluaXRfdmFsaWRhdGUiLCAiX19uYW1lIiwgImVzbV9ub2RlX2V4cG9ydHMiLCAiX19leHBvcnQiLCAibmlsX2RlZmF1bHQiLCAicGFyc2VfZGVmYXVsdCIsICJzdHJpbmdpZnlfZGVmYXVsdCIsICJ2MV9kZWZhdWx0IiwgInYzX2RlZmF1bHQiLCAidjRfZGVmYXVsdCIsICJ2NV9kZWZhdWx0IiwgInZhbGlkYXRlX2RlZmF1bHQiLCAidmVyc2lvbl9kZWZhdWx0IiwgImluaXRfZXNtX25vZGUiLCAiX19lc21NaW4iLCAiaW5pdF92MSIsICJpbml0X3YzIiwgImluaXRfdjQiLCAiaW5pdF92NSIsICJpbml0X25pbCIsICJpbml0X3ZlcnNpb24iLCAiaW5pdF92YWxpZGF0ZSIsICJpbml0X3N0cmluZ2lmeSIsICJpbml0X3BhcnNlIiwgInJlcXVpcmVfZ2VuZXJhdGVSZXF1ZXN0IiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJtb2R1bGUiLCAidXVpZCIsICJnZW5lcmF0ZVJlcXVlc3QiLCAiX19uYW1lIiwgIm1ldGhvZCIsICJwYXJhbXMiLCAiaWQiLCAib3B0aW9ucyIsICJ2ZXJzaW9uIiwgInJlcXVlc3QiLCAiZ2VuZXJhdG9yIiwgInJlcXVpcmVfYnJvd3NlciIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgInV1aWQiLCAiZ2VuZXJhdGVSZXF1ZXN0IiwgIkNsaWVudEJyb3dzZXIiLCAiX19uYW1lIiwgImNhbGxTZXJ2ZXIiLCAib3B0aW9ucyIsICJtZXRob2QiLCAicGFyYW1zIiwgImlkIiwgImNhbGxiYWNrIiwgInNlbGYiLCAicmVxdWVzdCIsICJpc0JhdGNoIiwgImhhc0NhbGxiYWNrIiwgImVyciIsICJtZXNzYWdlIiwgInJlc3BvbnNlIiwgInJlc3BvbnNlVGV4dCIsICJpc0Vycm9yIiwgInJlcyIsICJpc05vdEVycm9yIiwgInJlcXVpcmVfbGliIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJtb2R1bGUiLCAiY29udmVyc2lvbnMiLCAic2lnbiIsICJ4IiwgIl9fbmFtZSIsICJldmVuUm91bmQiLCAiY3JlYXRlTnVtYmVyQ29udmVyc2lvbiIsICJiaXRMZW5ndGgiLCAidHlwZU9wdHMiLCAibG93ZXJCb3VuZCIsICJ1cHBlckJvdW5kIiwgIm1vZHVsb1ZhbCIsICJtb2R1bG9Cb3VuZCIsICJWIiwgIm9wdHMiLCAidmFsIiwgImMiLCAiaSIsICJTIiwgIm4iLCAiVSIsICJkIiwgImEiLCAiYiIsICJyZXF1aXJlX3V0aWxzIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJtb2R1bGUiLCAiX19uYW1lIiwgInRhcmdldCIsICJzb3VyY2UiLCAia2V5cyIsICJpIiwgImltcGwiLCAid3JhcHBlciIsICJyZXF1aXJlX21hcHBpbmdUYWJsZSIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgInJlcXVpcmVfdHI0NiIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgInB1bnljb2RlIiwgIm1hcHBpbmdUYWJsZSIsICJQUk9DRVNTSU5HX09QVElPTlMiLCAibm9ybWFsaXplIiwgInN0ciIsICJzIiwgIl9fbmFtZSIsICJmaW5kU3RhdHVzIiwgInZhbCIsICJzdGFydCIsICJlbmQiLCAibWlkIiwgInRhcmdldCIsICJyZWdleEFzdHJhbFN5bWJvbHMiLCAiY291bnRTeW1ib2xzIiwgInN0cmluZyIsICJtYXBDaGFycyIsICJkb21haW5fbmFtZSIsICJ1c2VTVEQzIiwgInByb2Nlc3Npbmdfb3B0aW9uIiwgImhhc0Vycm9yIiwgInByb2Nlc3NlZCIsICJsZW4iLCAiaSIsICJjb2RlUG9pbnQiLCAic3RhdHVzIiwgImNvbWJpbmluZ01hcmtzUmVnZXgiLCAidmFsaWRhdGVMYWJlbCIsICJsYWJlbCIsICJlcnJvciIsICJwcm9jZXNzaW5nIiwgInJlc3VsdCIsICJsYWJlbHMiLCAidmFsaWRhdGlvbiIsICJ2ZXJpZnlEbnNMZW5ndGgiLCAibCIsICJ0b3RhbCIsICJyZXF1aXJlX3VybF9zdGF0ZV9tYWNoaW5lIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJtb2R1bGUiLCAicHVueWNvZGUiLCAidHI0NiIsICJzcGVjaWFsU2NoZW1lcyIsICJmYWlsdXJlIiwgImNvdW50U3ltYm9scyIsICJzdHIiLCAiX19uYW1lIiwgImF0IiwgImlucHV0IiwgImlkeCIsICJjIiwgImlzQVNDSUlEaWdpdCIsICJpc0FTQ0lJQWxwaGEiLCAiaXNBU0NJSUFscGhhbnVtZXJpYyIsICJpc0FTQ0lJSGV4IiwgImlzU2luZ2xlRG90IiwgImJ1ZmZlciIsICJpc0RvdWJsZURvdCIsICJpc1dpbmRvd3NEcml2ZUxldHRlckNvZGVQb2ludHMiLCAiY3AxIiwgImNwMiIsICJpc1dpbmRvd3NEcml2ZUxldHRlclN0cmluZyIsICJzdHJpbmciLCAiaXNOb3JtYWxpemVkV2luZG93c0RyaXZlTGV0dGVyU3RyaW5nIiwgImNvbnRhaW5zRm9yYmlkZGVuSG9zdENvZGVQb2ludCIsICJjb250YWluc0ZvcmJpZGRlbkhvc3RDb2RlUG9pbnRFeGNsdWRpbmdQZXJjZW50IiwgImlzU3BlY2lhbFNjaGVtZSIsICJzY2hlbWUiLCAiaXNTcGVjaWFsIiwgInVybCIsICJkZWZhdWx0UG9ydCIsICJwZXJjZW50RW5jb2RlIiwgImhleCIsICJ1dGY4UGVyY2VudEVuY29kZSIsICJidWYiLCAidXRmOFBlcmNlbnREZWNvZGUiLCAib3V0cHV0IiwgImlzQzBDb250cm9sUGVyY2VudEVuY29kZSIsICJleHRyYVBhdGhQZXJjZW50RW5jb2RlU2V0IiwgImlzUGF0aFBlcmNlbnRFbmNvZGUiLCAiZXh0cmFVc2VyaW5mb1BlcmNlbnRFbmNvZGVTZXQiLCAiaXNVc2VyaW5mb1BlcmNlbnRFbmNvZGUiLCAicGVyY2VudEVuY29kZUNoYXIiLCAiZW5jb2RlU2V0UHJlZGljYXRlIiwgImNTdHIiLCAicGFyc2VJUHY0TnVtYmVyIiwgIlIiLCAicGFyc2VJUHY0IiwgInBhcnRzIiwgIm51bWJlcnMiLCAicGFydCIsICJuIiwgImkiLCAiaXB2NCIsICJjb3VudGVyIiwgInNlcmlhbGl6ZUlQdjQiLCAiYWRkcmVzcyIsICJwYXJzZUlQdjYiLCAicGllY2VJbmRleCIsICJjb21wcmVzcyIsICJwb2ludGVyIiwgInZhbHVlIiwgImxlbmd0aCIsICJudW1iZXJzU2VlbiIsICJpcHY0UGllY2UiLCAibnVtYmVyIiwgInN3YXBzIiwgInRlbXAiLCAic2VyaWFsaXplSVB2NiIsICJmaW5kTG9uZ2VzdFplcm9TZXF1ZW5jZSIsICJpZ25vcmUwIiwgInBhcnNlSG9zdCIsICJpc1NwZWNpYWxBcmciLCAicGFyc2VPcGFxdWVIb3N0IiwgImRvbWFpbiIsICJhc2NpaURvbWFpbiIsICJpcHY0SG9zdCIsICJkZWNvZGVkIiwgImFyciIsICJtYXhJZHgiLCAibWF4TGVuIiwgImN1cnJTdGFydCIsICJjdXJyTGVuIiwgInNlcmlhbGl6ZUhvc3QiLCAiaG9zdCIsICJ0cmltQ29udHJvbENoYXJzIiwgInRyaW1UYWJBbmROZXdsaW5lIiwgInNob3J0ZW5QYXRoIiwgInBhdGgiLCAiaXNOb3JtYWxpemVkV2luZG93c0RyaXZlTGV0dGVyIiwgImluY2x1ZGVzQ3JlZGVudGlhbHMiLCAiY2Fubm90SGF2ZUFVc2VybmFtZVBhc3N3b3JkUG9ydCIsICJVUkxTdGF0ZU1hY2hpbmUiLCAiYmFzZSIsICJlbmNvZGluZ092ZXJyaWRlIiwgInN0YXRlT3ZlcnJpZGUiLCAicmVzIiwgInJldCIsICJsZW4iLCAiY29kZVBvaW50IiwgImVuY29kZWRDb2RlUG9pbnRzIiwgInBvcnQiLCAiZmlsZU90aGVyd2lzZUNvZGVQb2ludHMiLCAic2VyaWFsaXplVVJMIiwgImV4Y2x1ZGVGcmFnbWVudCIsICJzZXJpYWxpemVPcmlnaW4iLCAidHVwbGUiLCAicmVzdWx0IiwgIm9wdGlvbnMiLCAidXNtIiwgInVzZXJuYW1lIiwgInBhc3N3b3JkIiwgImludGVnZXIiLCAicmVxdWlyZV9VUkxfaW1wbCIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAidXNtIiwgIl9fbmFtZSIsICJjb25zdHJ1Y3RvckFyZ3MiLCAidXJsIiwgImJhc2UiLCAicGFyc2VkQmFzZSIsICJwYXJzZWRVUkwiLCAidiIsICJpbnB1dCIsICJyZXF1aXJlX1VSTCIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgImNvbnZlcnNpb25zIiwgInV0aWxzIiwgIkltcGwiLCAiaW1wbCIsICJVUkwiLCAidXJsIiwgImFyZ3MiLCAiaSIsICJfX25hbWUiLCAiViIsICJvYmoiLCAiY29uc3RydWN0b3JBcmdzIiwgInByaXZhdGVEYXRhIiwgInJlcXVpcmVfcHVibGljX2FwaSIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAicmVxdWlyZV9zYWZlciIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgImJ1ZmZlciIsICJCdWZmZXIiLCAic2FmZXIiLCAia2V5IiwgIlNhZmVyIiwgInZhbHVlIiwgImVuY29kaW5nT3JPZmZzZXQiLCAibGVuZ3RoIiwgInNpemUiLCAiZmlsbCIsICJlbmNvZGluZyIsICJidWYiLCAicmVxdWlyZV9ib21faGFuZGxpbmciLCAiX19jb21tb25KU01pbiIsICJleHBvcnRzIiwgIkJPTUNoYXIiLCAiUHJlcGVuZEJPTVdyYXBwZXIiLCAiZW5jb2RlciIsICJvcHRpb25zIiwgIl9fbmFtZSIsICJzdHIiLCAiU3RyaXBCT01XcmFwcGVyIiwgImRlY29kZXIiLCAiYnVmIiwgInJlcyIsICJyZXF1aXJlX2ludGVybmFsIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJtb2R1bGUiLCAiQnVmZmVyIiwgIkludGVybmFsQ29kZWMiLCAiY29kZWNPcHRpb25zIiwgImljb252IiwgIkludGVybmFsRW5jb2RlckJhc2U2NCIsICJJbnRlcm5hbEVuY29kZXJDZXN1OCIsICJJbnRlcm5hbERlY29kZXJDZXN1OCIsICJfX25hbWUiLCAiSW50ZXJuYWxFbmNvZGVyIiwgIkludGVybmFsRGVjb2RlciIsICJTdHJpbmdEZWNvZGVyIiwgIm9wdGlvbnMiLCAiY29kZWMiLCAiYnVmIiwgInN0ciIsICJjb21wbGV0ZVF1YWRzIiwgImJ1ZklkeCIsICJjaGFyQ29kZSIsICJhY2MiLCAiY29udEJ5dGVzIiwgImFjY0J5dGVzIiwgInJlcyIsICJpIiwgImN1ckJ5dGUiLCAicmVxdWlyZV91dGYzMiIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAiQnVmZmVyIiwgIlV0ZjMyQ29kZWMiLCAiY29kZWNPcHRpb25zIiwgImljb252IiwgIl9fbmFtZSIsICJVdGYzMkVuY29kZXIiLCAiVXRmMzJEZWNvZGVyIiwgIm9wdGlvbnMiLCAiY29kZWMiLCAic3RyIiwgInNyYyIsICJkc3QiLCAid3JpdGUzMiIsICJvZmZzZXQiLCAiaSIsICJjb2RlIiwgImlzSGlnaFN1cnJvZ2F0ZSIsICJpc0xvd1N1cnJvZ2F0ZSIsICJjb2RlcG9pbnQiLCAiYnVmIiwgImlzTEUiLCAib3ZlcmZsb3ciLCAiYmFkQ2hhciIsICJfd3JpdGVDb2RlcG9pbnQiLCAiaGlnaCIsICJVdGYzMkF1dG9Db2RlYyIsICJVdGYzMkF1dG9FbmNvZGVyIiwgIlV0ZjMyQXV0b0RlY29kZXIiLCAiZW5jb2RpbmciLCAiZGV0ZWN0RW5jb2RpbmciLCAicmVzU3RyIiwgInRyYWlsIiwgImJ1ZnMiLCAiZGVmYXVsdEVuY29kaW5nIiwgImIiLCAiY2hhcnNQcm9jZXNzZWQiLCAiaW52YWxpZExFIiwgImludmFsaWRCRSIsICJibXBDaGFyc0xFIiwgImJtcENoYXJzQkUiLCAib3V0ZXJfbG9vcCIsICJqIiwgInJlcXVpcmVfdXRmMTYiLCAiX19jb21tb25KU01pbiIsICJleHBvcnRzIiwgIkJ1ZmZlciIsICJVdGYxNkJFQ29kZWMiLCAiX19uYW1lIiwgIlV0ZjE2QkVFbmNvZGVyIiwgIlV0ZjE2QkVEZWNvZGVyIiwgInN0ciIsICJidWYiLCAiaSIsICJ0bXAiLCAiYnVmMiIsICJqIiwgIlV0ZjE2Q29kZWMiLCAiY29kZWNPcHRpb25zIiwgImljb252IiwgIlV0ZjE2RW5jb2RlciIsICJVdGYxNkRlY29kZXIiLCAib3B0aW9ucyIsICJjb2RlYyIsICJlbmNvZGluZyIsICJkZXRlY3RFbmNvZGluZyIsICJyZXNTdHIiLCAidHJhaWwiLCAiYnVmcyIsICJkZWZhdWx0RW5jb2RpbmciLCAiYiIsICJjaGFyc1Byb2Nlc3NlZCIsICJhc2NpaUNoYXJzTEUiLCAiYXNjaWlDaGFyc0JFIiwgIm91dGVyX2xvb3AiLCAicmVxdWlyZV91dGY3IiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJCdWZmZXIiLCAiVXRmN0NvZGVjIiwgImNvZGVjT3B0aW9ucyIsICJpY29udiIsICJfX25hbWUiLCAiVXRmN0VuY29kZXIiLCAiVXRmN0RlY29kZXIiLCAibm9uRGlyZWN0Q2hhcnMiLCAib3B0aW9ucyIsICJjb2RlYyIsICJzdHIiLCAiY2h1bmsiLCAiYmFzZTY0UmVnZXgiLCAiYmFzZTY0Q2hhcnMiLCAiaSIsICJwbHVzQ2hhciIsICJtaW51c0NoYXIiLCAiYW5kQ2hhciIsICJidWYiLCAicmVzIiwgImxhc3RJIiwgImluQmFzZTY0IiwgImJhc2U2NEFjY3VtIiwgImI2NHN0ciIsICJjYW5CZURlY29kZWQiLCAiVXRmN0lNQVBDb2RlYyIsICJVdGY3SU1BUEVuY29kZXIiLCAiVXRmN0lNQVBEZWNvZGVyIiwgImJhc2U2NEFjY3VtSWR4IiwgImJ1ZklkeCIsICJ1Q2hhciIsICJiYXNlNjRJTUFQQ2hhcnMiLCAicmVxdWlyZV9zYmNzX2NvZGVjIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJCdWZmZXIiLCAiU0JDU0NvZGVjIiwgImNvZGVjT3B0aW9ucyIsICJpY29udiIsICJhc2NpaVN0cmluZyIsICJlbmNvZGVCdWYiLCAiX19uYW1lIiwgIlNCQ1NFbmNvZGVyIiwgIlNCQ1NEZWNvZGVyIiwgIm9wdGlvbnMiLCAiY29kZWMiLCAic3RyIiwgImJ1ZiIsICJpIiwgImRlY29kZUJ1ZiIsICJuZXdCdWYiLCAiaWR4MSIsICJpZHgyIiwgInJlcXVpcmVfc2Jjc19kYXRhIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJtb2R1bGUiLCAicmVxdWlyZV9zYmNzX2RhdGFfZ2VuZXJhdGVkIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJtb2R1bGUiLCAicmVxdWlyZV9kYmNzX2NvZGVjIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJCdWZmZXIiLCAiREJDU0NvZGVjIiwgIlVOQVNTSUdORUQiLCAiR0IxODAzMF9DT0RFIiwgIlNFUV9TVEFSVCIsICJOT0RFX1NUQVJUIiwgIlVOQVNTSUdORURfTk9ERSIsICJERUZfQ0hBUiIsICJpIiwgImNvZGVjT3B0aW9ucyIsICJpY29udiIsICJtYXBwaW5nVGFibGUiLCAiY29tbW9uVGhpcmRCeXRlTm9kZUlkeCIsICJjb21tb25Gb3VydGhCeXRlTm9kZUlkeCIsICJmaXJzdEJ5dGVOb2RlIiwgInNlY29uZEJ5dGVOb2RlIiwgImoiLCAidGhpcmRCeXRlTm9kZSIsICJrIiwgImZvdXJ0aEJ5dGVOb2RlIiwgImwiLCAic2tpcEVuY29kZUNoYXJzIiwgInZhbCIsICJ1Q2hhciIsICJfX25hbWUiLCAiREJDU0VuY29kZXIiLCAiREJDU0RlY29kZXIiLCAiYWRkciIsICJieXRlcyIsICJub2RlIiwgImNodW5rIiwgImN1ckFkZHIiLCAid3JpdGVUYWJsZSIsICJwYXJ0IiwgImNvZGUiLCAiY29kZVRyYWlsIiwgImxlbiIsICJzZXEiLCAibSIsICJjaGFyQ29kZSIsICJ1Q29kZSIsICJoaWdoIiwgImRiY3NDb2RlIiwgImJ1Y2tldCIsICJsb3ciLCAib2xkVmFsIiwgIm5vZGVJZHgiLCAicHJlZml4IiwgImhhc1ZhbHVlcyIsICJzdWJOb2RlRW1wdHkiLCAibWJDb2RlIiwgInN1Yk5vZGVJZHgiLCAibmV3UHJlZml4IiwgIm9wdGlvbnMiLCAiY29kZWMiLCAic3RyIiwgIm5ld0J1ZiIsICJsZWFkU3Vycm9nYXRlIiwgInNlcU9iaiIsICJuZXh0Q2hhciIsICJyZXNDb2RlIiwgInN1YnRhYmxlIiwgImlkeCIsICJmaW5kSWR4IiwgImJ1ZiIsICJwcmV2Qnl0ZXMiLCAicHJldk9mZnNldCIsICJzZXFTdGFydCIsICJjdXJCeXRlIiwgInB0ciIsICJ1Q29kZUxlYWQiLCAicmV0IiwgImJ5dGVzQXJyIiwgInRhYmxlIiwgInIiLCAibWlkIiwgInJlcXVpcmVfc2hpZnRqaXMiLCAiX19jb21tb25KU01pbiIsICJleHBvcnRzIiwgIm1vZHVsZSIsICJyZXF1aXJlX2V1Y2pwIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJtb2R1bGUiLCAicmVxdWlyZV9jcDkzNiIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgInJlcXVpcmVfZ2JrX2FkZGVkIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJtb2R1bGUiLCAicmVxdWlyZV9nYjE4MDMwX3JhbmdlcyIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgInJlcXVpcmVfY3A5NDkiLCAiX19jb21tb25KU01pbiIsICJleHBvcnRzIiwgIm1vZHVsZSIsICJyZXF1aXJlX2NwOTUwIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJtb2R1bGUiLCAicmVxdWlyZV9iaWc1X2FkZGVkIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJtb2R1bGUiLCAicmVxdWlyZV9kYmNzX2RhdGEiLCAiX19jb21tb25KU01pbiIsICJleHBvcnRzIiwgIm1vZHVsZSIsICJyZXF1aXJlX2VuY29kaW5ncyIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgIm1vZHVsZXMiLCAiaSIsICJlbmMiLCAicmVxdWlyZV9zdHJlYW1zIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJtb2R1bGUiLCAiQnVmZmVyIiwgInN0cmVhbV9tb2R1bGUiLCAiVHJhbnNmb3JtIiwgIkljb252TGl0ZUVuY29kZXJTdHJlYW0iLCAiY29udiIsICJvcHRpb25zIiwgIl9fbmFtZSIsICJjaHVuayIsICJlbmNvZGluZyIsICJkb25lIiwgInJlcyIsICJlIiwgImNiIiwgImNodW5rcyIsICJJY29udkxpdGVEZWNvZGVyU3RyZWFtIiwgInJlcXVpcmVfbGliIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJtb2R1bGUiLCAiQnVmZmVyIiwgImJvbUhhbmRsaW5nIiwgImljb252IiwgIl9fbmFtZSIsICJzdHIiLCAiZW5jb2RpbmciLCAib3B0aW9ucyIsICJlbmNvZGVyIiwgInJlcyIsICJ0cmFpbCIsICJidWYiLCAiZGVjb2RlciIsICJlbmMiLCAiY29kZWNPcHRpb25zIiwgImNvZGVjIiwgImNvZGVjRGVmIiwgImtleSIsICJzdHJlYW1fbW9kdWxlIiwgInN0cmVhbXMiLCAicmVxdWlyZV9lbmNvZGluZyIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgImljb252TGl0ZSIsICJjb252ZXJ0IiwgInN0ciIsICJ0byIsICJmcm9tIiwgImNoZWNrRW5jb2RpbmciLCAicmVzdWx0IiwgImNvbnZlcnRJY29udkxpdGUiLCAiRSIsICJfX25hbWUiLCAibmFtZSIsICJyZXF1aXJlX2xpYiIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgIl9pbnRlcm9wRGVmYXVsdCIsICJleCIsICJfX25hbWUiLCAiU3RyZWFtIiwgImh0dHAiLCAiVXJsIiwgIndoYXR3Z1VybCIsICJodHRwcyIsICJ6bGliIiwgIlJlYWRhYmxlIiwgIkJVRkZFUiIsICJUWVBFIiwgIkJsb2IiLCAiX0Jsb2IiLCAiYmxvYlBhcnRzIiwgIm9wdGlvbnMiLCAiYnVmZmVycyIsICJzaXplIiwgImEiLCAibGVuZ3RoIiwgImkiLCAiZWxlbWVudCIsICJidWZmZXIiLCAidHlwZSIsICJidWYiLCAiYWIiLCAicmVhZGFibGUiLCAic3RhcnQiLCAiZW5kIiwgInJlbGF0aXZlU3RhcnQiLCAicmVsYXRpdmVFbmQiLCAic3BhbiIsICJzbGljZWRCdWZmZXIiLCAiYmxvYiIsICJGZXRjaEVycm9yIiwgIm1lc3NhZ2UiLCAic3lzdGVtRXJyb3IiLCAiY29udmVydCIsICJJTlRFUk5BTFMiLCAiUGFzc1Rocm91Z2giLCAiQm9keSIsICJib2R5IiwgIl90aGlzIiwgIl9yZWYiLCAiX3JlZiRzaXplIiwgIl9yZWYkdGltZW91dCIsICJ0aW1lb3V0IiwgImlzVVJMU2VhcmNoUGFyYW1zIiwgImlzQmxvYiIsICJlcnIiLCAiZXJyb3IiLCAiY29uc3VtZUJvZHkiLCAiY3QiLCAiX3RoaXMyIiwgIl90aGlzMyIsICJjb252ZXJ0Qm9keSIsICJwcm90byIsICJuYW1lIiwgImRlc2MiLCAiX3RoaXM0IiwgImFjY3VtIiwgImFjY3VtQnl0ZXMiLCAiYWJvcnQiLCAicmVzb2x2ZSIsICJyZWplY3QiLCAicmVzVGltZW91dCIsICJjaHVuayIsICJoZWFkZXJzIiwgImNoYXJzZXQiLCAicmVzIiwgInN0ciIsICJvYmoiLCAiY2xvbmUiLCAiaW5zdGFuY2UiLCAicDEiLCAicDIiLCAiZXh0cmFjdENvbnRlbnRUeXBlIiwgImdldFRvdGFsQnl0ZXMiLCAid3JpdGVUb1N0cmVhbSIsICJkZXN0IiwgImludmFsaWRUb2tlblJlZ2V4IiwgImludmFsaWRIZWFkZXJDaGFyUmVnZXgiLCAidmFsaWRhdGVOYW1lIiwgInZhbGlkYXRlVmFsdWUiLCAidmFsdWUiLCAiZmluZCIsICJtYXAiLCAia2V5IiwgIk1BUCIsICJIZWFkZXJzIiwgIl9IZWFkZXJzIiwgImluaXQiLCAicmF3SGVhZGVycyIsICJoZWFkZXJOYW1lcyIsICJoZWFkZXJOYW1lIiwgIm1ldGhvZCIsICJwYWlycyIsICJwYWlyIiwgImNhbGxiYWNrIiwgInRoaXNBcmciLCAiZ2V0SGVhZGVycyIsICJfcGFpcnMkaSIsICJjcmVhdGVIZWFkZXJzSXRlcmF0b3IiLCAia2luZCIsICJrIiwgIklOVEVSTkFMIiwgInRhcmdldCIsICJpdGVyYXRvciIsICJIZWFkZXJzSXRlcmF0b3JQcm90b3R5cGUiLCAiX0lOVEVSTkFMIiwgImluZGV4IiwgInZhbHVlcyIsICJsZW4iLCAiZXhwb3J0Tm9kZUNvbXBhdGlibGVIZWFkZXJzIiwgImhvc3RIZWFkZXJLZXkiLCAiY3JlYXRlSGVhZGVyc0xlbmllbnQiLCAidmFsIiwgIklOVEVSTkFMUyQxIiwgIlNUQVRVU19DT0RFUyIsICJSZXNwb25zZSIsICJfUmVzcG9uc2UiLCAib3B0cyIsICJzdGF0dXMiLCAiY29udGVudFR5cGUiLCAiSU5URVJOQUxTJDIiLCAiVVJMIiwgInBhcnNlX3VybCIsICJmb3JtYXRfdXJsIiwgInBhcnNlVVJMIiwgInVybFN0ciIsICJzdHJlYW1EZXN0cnVjdGlvblN1cHBvcnRlZCIsICJpc1JlcXVlc3QiLCAiaW5wdXQiLCAiaXNBYm9ydFNpZ25hbCIsICJzaWduYWwiLCAiUmVxdWVzdCIsICJfUmVxdWVzdCIsICJwYXJzZWRVUkwiLCAiaW5wdXRCb2R5IiwgImdldE5vZGVSZXF1ZXN0T3B0aW9ucyIsICJyZXF1ZXN0IiwgImNvbnRlbnRMZW5ndGhWYWx1ZSIsICJ0b3RhbEJ5dGVzIiwgImFnZW50IiwgIkFib3J0RXJyb3IiLCAiVVJMJDEiLCAiUGFzc1Rocm91Z2gkMSIsICJpc0RvbWFpbk9yU3ViZG9tYWluIiwgImRlc3RpbmF0aW9uIiwgIm9yaWdpbmFsIiwgIm9yaWciLCAiaXNTYW1lUHJvdG9jb2wiLCAiZmV0Y2giLCAidXJsIiwgInNlbmQiLCAicmVzcG9uc2UiLCAiZGVzdHJveVN0cmVhbSIsICJhYm9ydEFuZEZpbmFsaXplIiwgImZpbmFsaXplIiwgInJlcSIsICJyZXFUaW1lb3V0IiwgInNvY2tldCIsICJmaXhSZXNwb25zZUNodW5rZWRUcmFuc2ZlckJhZEVuZGluZyIsICJzIiwgImhhZEVycm9yIiwgImhhc0RhdGFMaXN0ZW5lciIsICJsb2NhdGlvbiIsICJsb2NhdGlvblVSTCIsICJyZXF1ZXN0T3B0cyIsICJyZXNwb25zZV9vcHRpb25zIiwgImNvZGluZ3MiLCAiemxpYk9wdGlvbnMiLCAicmF3IiwgImVycm9yQ2FsbGJhY2siLCAic3RyZWFtIiwgImNvZGUiLCAicmVxdWlyZV9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCAiX19jb21tb25KU01pbiIsICJleHBvcnRzIiwgIm1vZHVsZSIsICJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwgIm9iaiIsICJfX25hbWUiLCAicmVxdWlyZV90eXBlb2YiLCAiX19jb21tb25KU01pbiIsICJleHBvcnRzIiwgIm1vZHVsZSIsICJfdHlwZW9mIiwgIm8iLCAiX19uYW1lIiwgInJlcXVpcmVfcmVnZW5lcmF0b3JSdW50aW1lIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJtb2R1bGUiLCAiX3R5cGVvZiIsICJfcmVnZW5lcmF0b3JSdW50aW1lIiwgIl9fbmFtZSIsICJuIiwgIm8iLCAidCIsICJlIiwgInIiLCAiaSIsICJhIiwgImMiLCAidSIsICJkZWZpbmUiLCAid3JhcCIsICJHZW5lcmF0b3IiLCAiQ29udGV4dCIsICJtYWtlSW52b2tlTWV0aG9kIiwgInRyeUNhdGNoIiwgImgiLCAibCIsICJmIiwgInMiLCAieSIsICJHZW5lcmF0b3JGdW5jdGlvbiIsICJHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZSIsICJwIiwgImQiLCAidiIsICJ2YWx1ZXMiLCAiZyIsICJkZWZpbmVJdGVyYXRvck1ldGhvZHMiLCAiQXN5bmNJdGVyYXRvciIsICJpbnZva2UiLCAiY2FsbEludm9rZVdpdGhNZXRob2RBbmRBcmciLCAibWF5YmVJbnZva2VEZWxlZ2F0ZSIsICJwdXNoVHJ5RW50cnkiLCAicmVzZXRUcnlFbnRyeSIsICJuZXh0IiwgImhhbmRsZSIsICJyZXF1aXJlX3JlZ2VuZXJhdG9yIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJtb2R1bGUiLCAicnVudGltZSIsICJyZXF1aXJlX2FzeW5jVG9HZW5lcmF0b3IiLCAiX19jb21tb25KU01pbiIsICJleHBvcnRzIiwgIm1vZHVsZSIsICJhc3luY0dlbmVyYXRvclN0ZXAiLCAiZ2VuIiwgInJlc29sdmUiLCAicmVqZWN0IiwgIl9uZXh0IiwgIl90aHJvdyIsICJrZXkiLCAiYXJnIiwgImluZm8iLCAidmFsdWUiLCAiZXJyb3IiLCAiX19uYW1lIiwgIl9hc3luY1RvR2VuZXJhdG9yIiwgImZuIiwgInNlbGYiLCAiYXJncyIsICJlcnIiLCAicmVxdWlyZV9jbGFzc0NhbGxDaGVjayIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgIl9jbGFzc0NhbGxDaGVjayIsICJpbnN0YW5jZSIsICJDb25zdHJ1Y3RvciIsICJfX25hbWUiLCAicmVxdWlyZV90b1ByaW1pdGl2ZSIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgIl90eXBlb2YiLCAiX3RvUHJpbWl0aXZlIiwgImlucHV0IiwgImhpbnQiLCAicHJpbSIsICJyZXMiLCAiX19uYW1lIiwgInJlcXVpcmVfdG9Qcm9wZXJ0eUtleSIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgIl90eXBlb2YiLCAidG9QcmltaXRpdmUiLCAiX3RvUHJvcGVydHlLZXkiLCAiYXJnIiwgImtleSIsICJfX25hbWUiLCAicmVxdWlyZV9jcmVhdGVDbGFzcyIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgInRvUHJvcGVydHlLZXkiLCAiX2RlZmluZVByb3BlcnRpZXMiLCAidGFyZ2V0IiwgInByb3BzIiwgImkiLCAiZGVzY3JpcHRvciIsICJfX25hbWUiLCAiX2NyZWF0ZUNsYXNzIiwgIkNvbnN0cnVjdG9yIiwgInByb3RvUHJvcHMiLCAic3RhdGljUHJvcHMiLCAicmVxdWlyZV9zZXRQcm90b3R5cGVPZiIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgIl9zZXRQcm90b3R5cGVPZiIsICJvIiwgInAiLCAiX19uYW1lIiwgInJlcXVpcmVfaW5oZXJpdHMiLCAiX19jb21tb25KU01pbiIsICJleHBvcnRzIiwgIm1vZHVsZSIsICJzZXRQcm90b3R5cGVPZiIsICJfaW5oZXJpdHMiLCAic3ViQ2xhc3MiLCAic3VwZXJDbGFzcyIsICJfX25hbWUiLCAicmVxdWlyZV9hc3NlcnRUaGlzSW5pdGlhbGl6ZWQiLCAiX19jb21tb25KU01pbiIsICJleHBvcnRzIiwgIm1vZHVsZSIsICJfYXNzZXJ0VGhpc0luaXRpYWxpemVkIiwgInNlbGYiLCAiX19uYW1lIiwgInJlcXVpcmVfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybiIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgIl90eXBlb2YiLCAiYXNzZXJ0VGhpc0luaXRpYWxpemVkIiwgIl9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuIiwgInNlbGYiLCAiY2FsbCIsICJfX25hbWUiLCAicmVxdWlyZV9nZXRQcm90b3R5cGVPZiIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgIl9nZXRQcm90b3R5cGVPZiIsICJvIiwgIl9fbmFtZSIsICJyZXF1aXJlX2V2ZW50ZW1pdHRlcjMiLCAiX19jb21tb25KU01pbiIsICJleHBvcnRzIiwgIm1vZHVsZSIsICJoYXMiLCAicHJlZml4IiwgIkV2ZW50cyIsICJfX25hbWUiLCAiRUUiLCAiZm4iLCAiY29udGV4dCIsICJvbmNlIiwgImFkZExpc3RlbmVyIiwgImVtaXR0ZXIiLCAiZXZlbnQiLCAibGlzdGVuZXIiLCAiZXZ0IiwgImNsZWFyRXZlbnQiLCAiRXZlbnRFbWl0dGVyIiwgIm5hbWVzIiwgImV2ZW50cyIsICJuYW1lIiwgImhhbmRsZXJzIiwgImkiLCAibCIsICJlZSIsICJsaXN0ZW5lcnMiLCAiYTEiLCAiYTIiLCAiYTMiLCAiYTQiLCAiYTUiLCAibGVuIiwgImFyZ3MiLCAibGVuZ3RoIiwgImoiLCAicmVxdWlyZV9jbGllbnQiLCAiX19jb21tb25KU01pbiIsICJleHBvcnRzIiwgIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCAiX3JlZ2VuZXJhdG9yIiwgIl9hc3luY1RvR2VuZXJhdG9yMiIsICJfdHlwZW9mMiIsICJfY2xhc3NDYWxsQ2hlY2syIiwgIl9jcmVhdGVDbGFzczIiLCAiX2luaGVyaXRzMiIsICJfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybjIiLCAiX2dldFByb3RvdHlwZU9mMiIsICJfZXZlbnRlbWl0dGVyIiwgIl9jcmVhdGVTdXBlciIsICJEZXJpdmVkIiwgImhhc05hdGl2ZVJlZmxlY3RDb25zdHJ1Y3QiLCAiX2lzTmF0aXZlUmVmbGVjdENvbnN0cnVjdCIsICJfX25hbWUiLCAiU3VwZXIiLCAicmVzdWx0IiwgIk5ld1RhcmdldCIsICJfX3Jlc3QiLCAicyIsICJ0IiwgInAiLCAiaSIsICJDb21tb25DbGllbnQiLCAiX0V2ZW50RW1pdHRlciIsICJfc3VwZXIiLCAid2ViU29ja2V0RmFjdG9yeSIsICJfdGhpcyIsICJhZGRyZXNzIiwgIl9hIiwgImdlbmVyYXRlX3JlcXVlc3RfaWQiLCAiX2EkYXV0b2Nvbm5lY3QiLCAiYXV0b2Nvbm5lY3QiLCAiX2EkcmVjb25uZWN0IiwgInJlY29ubmVjdCIsICJfYSRyZWNvbm5lY3RfaW50ZXJ2YWwiLCAicmVjb25uZWN0X2ludGVydmFsIiwgIl9hJG1heF9yZWNvbm5lY3RzIiwgIm1heF9yZWNvbm5lY3RzIiwgInJlc3Rfb3B0aW9ucyIsICJtZXRob2QiLCAicGFyYW1zIiwgInRpbWVvdXQiLCAid3Nfb3B0cyIsICJfdGhpczIiLCAicmVzb2x2ZSIsICJyZWplY3QiLCAicnBjX2lkIiwgIm1lc3NhZ2UiLCAiZXJyb3IiLCAiX2xvZ2luIiwgIl9jYWxsZWUiLCAicmVzcCIsICJfY29udGV4dCIsICJsb2dpbiIsICJfeCIsICJfbGlzdE1ldGhvZHMiLCAiX2NhbGxlZTIiLCAiX2NvbnRleHQyIiwgImxpc3RNZXRob2RzIiwgIl90aGlzMyIsICJfc3Vic2NyaWJlIiwgIl9jYWxsZWUzIiwgImV2ZW50IiwgIl9jb250ZXh0MyIsICJzdWJzY3JpYmUiLCAiX3gyIiwgIl91bnN1YnNjcmliZSIsICJfY2FsbGVlNCIsICJfY29udGV4dDQiLCAidW5zdWJzY3JpYmUiLCAiX3gzIiwgImNvZGUiLCAiZGF0YSIsICJvcHRpb25zIiwgIl90aGlzNCIsICJfcmVmIiwgImFyZ3MiLCAiX3JlZjIiLCAicmVhc29uIiwgInJlcXVpcmVfY29uc3RhbnRzIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJtb2R1bGUiLCAicmVxdWlyZV9ub2RlX2d5cF9idWlsZCIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgImZzIiwgInBhdGgiLCAib3MiLCAicnVudGltZVJlcXVpcmUiLCAidmFycyIsICJwcmVidWlsZHNPbmx5IiwgImFiaSIsICJydW50aW1lIiwgImlzRWxlY3Ryb24iLCAiaXNOd2pzIiwgImFyY2giLCAicGxhdGZvcm0iLCAibGliYyIsICJpc0FscGluZSIsICJhcm12IiwgInV2IiwgImxvYWQiLCAiZGlyIiwgIl9fbmFtZSIsICJuYW1lIiwgInJlbGVhc2UiLCAiZ2V0Rmlyc3QiLCAibWF0Y2hCdWlsZCIsICJkZWJ1ZyIsICJwcmVidWlsZCIsICJyZXNvbHZlIiwgIm5lYXJieSIsICJ0YXJnZXQiLCAidHVwbGVzIiwgInJlYWRkaXJTeW5jIiwgInBhcnNlVHVwbGUiLCAidHVwbGUiLCAibWF0Y2hUdXBsZSIsICJjb21wYXJlVHVwbGVzIiwgInByZWJ1aWxkcyIsICJwYXJzZWQiLCAicGFyc2VUYWdzIiwgImNhbmRpZGF0ZXMiLCAibWF0Y2hUYWdzIiwgIndpbm5lciIsICJjb21wYXJlVGFncyIsICJmaWx0ZXIiLCAiZmlsZXMiLCAiYXJyIiwgImFyY2hpdGVjdHVyZXMiLCAiYSIsICJiIiwgImZpbGUiLCAiZXh0ZW5zaW9uIiwgInRhZ3MiLCAiaSIsICJ0YWciLCAicnVudGltZUFnbm9zdGljIiwgInJlcXVpcmVfbm9kZV9neXBfYnVpbGQiLCAiX19jb21tb25KU01pbiIsICJleHBvcnRzIiwgIm1vZHVsZSIsICJyZXF1aXJlX2ZhbGxiYWNrIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJtb2R1bGUiLCAibWFzayIsICJfX25hbWUiLCAic291cmNlIiwgIm91dHB1dCIsICJvZmZzZXQiLCAibGVuZ3RoIiwgImkiLCAidW5tYXNrIiwgImJ1ZmZlciIsICJyZXF1aXJlX2J1ZmZlcnV0aWwiLCAiX19jb21tb25KU01pbiIsICJleHBvcnRzIiwgIm1vZHVsZSIsICJyZXF1aXJlX2J1ZmZlcl91dGlsIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJtb2R1bGUiLCAiRU1QVFlfQlVGRkVSIiwgIkZhc3RCdWZmZXIiLCAiY29uY2F0IiwgImxpc3QiLCAidG90YWxMZW5ndGgiLCAidGFyZ2V0IiwgIm9mZnNldCIsICJpIiwgImJ1ZiIsICJfX25hbWUiLCAiX21hc2siLCAic291cmNlIiwgIm1hc2siLCAib3V0cHV0IiwgImxlbmd0aCIsICJfdW5tYXNrIiwgImJ1ZmZlciIsICJ0b0FycmF5QnVmZmVyIiwgInRvQnVmZmVyIiwgImRhdGEiLCAiYnVmZmVyVXRpbCIsICJyZXF1aXJlX2xpbWl0ZXIiLCAiX19jb21tb25KU01pbiIsICJleHBvcnRzIiwgIm1vZHVsZSIsICJrRG9uZSIsICJrUnVuIiwgIkxpbWl0ZXIiLCAiX19uYW1lIiwgImNvbmN1cnJlbmN5IiwgImpvYiIsICJyZXF1aXJlX3Blcm1lc3NhZ2VfZGVmbGF0ZSIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgInpsaWIiLCAiYnVmZmVyVXRpbCIsICJMaW1pdGVyIiwgImtTdGF0dXNDb2RlIiwgIkZhc3RCdWZmZXIiLCAiVFJBSUxFUiIsICJrUGVyTWVzc2FnZURlZmxhdGUiLCAia1RvdGFsTGVuZ3RoIiwgImtDYWxsYmFjayIsICJrQnVmZmVycyIsICJrRXJyb3IiLCAiemxpYkxpbWl0ZXIiLCAiUGVyTWVzc2FnZURlZmxhdGUiLCAiX19uYW1lIiwgIm9wdGlvbnMiLCAiaXNTZXJ2ZXIiLCAibWF4UGF5bG9hZCIsICJjb25jdXJyZW5jeSIsICJwYXJhbXMiLCAiY29uZmlndXJhdGlvbnMiLCAiY2FsbGJhY2siLCAib2ZmZXJzIiwgIm9wdHMiLCAiYWNjZXB0ZWQiLCAicmVzcG9uc2UiLCAia2V5IiwgInZhbHVlIiwgIm51bSIsICJkYXRhIiwgImZpbiIsICJkb25lIiwgImVyciIsICJyZXN1bHQiLCAiZW5kcG9pbnQiLCAid2luZG93Qml0cyIsICJpbmZsYXRlT25FcnJvciIsICJpbmZsYXRlT25EYXRhIiwgImRlZmxhdGVPbkRhdGEiLCAiY2h1bmsiLCAicmVxdWlyZV9mYWxsYmFjayIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgImlzVmFsaWRVVEY4IiwgImJ1ZiIsICJsZW4iLCAiaSIsICJfX25hbWUiLCAicmVxdWlyZV91dGZfOF92YWxpZGF0ZSIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgInJlcXVpcmVfdmFsaWRhdGlvbiIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgImlzVXRmOCIsICJ0b2tlbkNoYXJzIiwgImlzVmFsaWRTdGF0dXNDb2RlIiwgImNvZGUiLCAiX19uYW1lIiwgIl9pc1ZhbGlkVVRGOCIsICJidWYiLCAibGVuIiwgImkiLCAiaXNWYWxpZFVURjgiLCAicmVxdWlyZV9yZWNlaXZlciIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgIldyaXRhYmxlIiwgIlBlck1lc3NhZ2VEZWZsYXRlIiwgIkJJTkFSWV9UWVBFUyIsICJFTVBUWV9CVUZGRVIiLCAia1N0YXR1c0NvZGUiLCAia1dlYlNvY2tldCIsICJjb25jYXQiLCAidG9BcnJheUJ1ZmZlciIsICJ1bm1hc2siLCAiaXNWYWxpZFN0YXR1c0NvZGUiLCAiaXNWYWxpZFVURjgiLCAiRmFzdEJ1ZmZlciIsICJwcm9taXNlIiwgInF1ZXVlVGFzayIsICJxdWV1ZU1pY3JvdGFza1NoaW0iLCAiR0VUX0lORk8iLCAiR0VUX1BBWUxPQURfTEVOR1RIXzE2IiwgIkdFVF9QQVlMT0FEX0xFTkdUSF82NCIsICJHRVRfTUFTSyIsICJHRVRfREFUQSIsICJJTkZMQVRJTkciLCAiV0FJVF9NSUNST1RBU0siLCAiUmVjZWl2ZXIiLCAiX19uYW1lIiwgIm9wdGlvbnMiLCAiY2h1bmsiLCAiZW5jb2RpbmciLCAiY2IiLCAibiIsICJidWYiLCAiZHN0IiwgIm9mZnNldCIsICJlcnIiLCAiZXJyb3IiLCAiY29tcHJlc3NlZCIsICJudW0iLCAiZGF0YSIsICJlciIsICJtZXNzYWdlTGVuZ3RoIiwgImZyYWdtZW50cyIsICJjb2RlIiwgIkVycm9yQ3RvciIsICJtZXNzYWdlIiwgInByZWZpeCIsICJzdGF0dXNDb2RlIiwgImVycm9yQ29kZSIsICJ0aHJvd0Vycm9yTmV4dFRpY2siLCAidGhyb3dFcnJvciIsICJyZXF1aXJlX3NlbmRlciIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgIkR1cGxleCIsICJyYW5kb21GaWxsU3luYyIsICJQZXJNZXNzYWdlRGVmbGF0ZSIsICJFTVBUWV9CVUZGRVIiLCAiaXNWYWxpZFN0YXR1c0NvZGUiLCAiYXBwbHlNYXNrIiwgInRvQnVmZmVyIiwgImtCeXRlTGVuZ3RoIiwgIm1hc2tCdWZmZXIiLCAiU2VuZGVyIiwgIl9TZW5kZXIiLCAiX19uYW1lIiwgInNvY2tldCIsICJleHRlbnNpb25zIiwgImdlbmVyYXRlTWFzayIsICJkYXRhIiwgIm9wdGlvbnMiLCAibWFzayIsICJtZXJnZSIsICJvZmZzZXQiLCAic2tpcE1hc2tpbmciLCAiZGF0YUxlbmd0aCIsICJwYXlsb2FkTGVuZ3RoIiwgInRhcmdldCIsICJjb2RlIiwgImNiIiwgImJ1ZiIsICJsZW5ndGgiLCAiYnl0ZUxlbmd0aCIsICJyZWFkT25seSIsICJwZXJNZXNzYWdlRGVmbGF0ZSIsICJvcGNvZGUiLCAicnN2MSIsICJvcHRzIiwgImNvbXByZXNzIiwgIl8iLCAiZXJyIiwgImkiLCAicGFyYW1zIiwgImNhbGxiYWNrIiwgImxpc3QiLCAicmVxdWlyZV9ldmVudF90YXJnZXQiLCAiX19jb21tb25KU01pbiIsICJleHBvcnRzIiwgIm1vZHVsZSIsICJrRm9yT25FdmVudEF0dHJpYnV0ZSIsICJrTGlzdGVuZXIiLCAia0NvZGUiLCAia0RhdGEiLCAia0Vycm9yIiwgImtNZXNzYWdlIiwgImtSZWFzb24iLCAia1RhcmdldCIsICJrVHlwZSIsICJrV2FzQ2xlYW4iLCAiRXZlbnQiLCAiX19uYW1lIiwgInR5cGUiLCAiQ2xvc2VFdmVudCIsICJvcHRpb25zIiwgIkVycm9yRXZlbnQiLCAiTWVzc2FnZUV2ZW50IiwgIkV2ZW50VGFyZ2V0IiwgImhhbmRsZXIiLCAibGlzdGVuZXIiLCAid3JhcHBlciIsICJkYXRhIiwgImlzQmluYXJ5IiwgImV2ZW50IiwgImNhbGxMaXN0ZW5lciIsICJjb2RlIiwgIm1lc3NhZ2UiLCAiZXJyb3IiLCAidGhpc0FyZyIsICJyZXF1aXJlX2V4dGVuc2lvbiIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgInRva2VuQ2hhcnMiLCAicHVzaCIsICJkZXN0IiwgIm5hbWUiLCAiZWxlbSIsICJfX25hbWUiLCAicGFyc2UiLCAiaGVhZGVyIiwgIm9mZmVycyIsICJwYXJhbXMiLCAibXVzdFVuZXNjYXBlIiwgImlzRXNjYXBpbmciLCAiaW5RdW90ZXMiLCAiZXh0ZW5zaW9uTmFtZSIsICJwYXJhbU5hbWUiLCAic3RhcnQiLCAiY29kZSIsICJlbmQiLCAiaSIsICJ2YWx1ZSIsICJ0b2tlbiIsICJmb3JtYXQiLCAiZXh0ZW5zaW9ucyIsICJleHRlbnNpb24iLCAiY29uZmlndXJhdGlvbnMiLCAiayIsICJ2YWx1ZXMiLCAidiIsICJyZXF1aXJlX3dlYnNvY2tldCIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgIkV2ZW50RW1pdHRlciIsICJodHRwcyIsICJodHRwIiwgIm5ldCIsICJ0bHMiLCAicmFuZG9tQnl0ZXMiLCAiY3JlYXRlSGFzaCIsICJEdXBsZXgiLCAiUmVhZGFibGUiLCAiVVJMIiwgIlBlck1lc3NhZ2VEZWZsYXRlIiwgIlJlY2VpdmVyIiwgIlNlbmRlciIsICJCSU5BUllfVFlQRVMiLCAiRU1QVFlfQlVGRkVSIiwgIkdVSUQiLCAia0Zvck9uRXZlbnRBdHRyaWJ1dGUiLCAia0xpc3RlbmVyIiwgImtTdGF0dXNDb2RlIiwgImtXZWJTb2NrZXQiLCAiTk9PUCIsICJhZGRFdmVudExpc3RlbmVyIiwgInJlbW92ZUV2ZW50TGlzdGVuZXIiLCAiZm9ybWF0IiwgInBhcnNlIiwgInRvQnVmZmVyIiwgImNsb3NlVGltZW91dCIsICJrQWJvcnRlZCIsICJwcm90b2NvbFZlcnNpb25zIiwgInJlYWR5U3RhdGVzIiwgInN1YnByb3RvY29sUmVnZXgiLCAiV2ViU29ja2V0IiwgIl9XZWJTb2NrZXQiLCAiX19uYW1lIiwgImFkZHJlc3MiLCAicHJvdG9jb2xzIiwgIm9wdGlvbnMiLCAiaW5pdEFzQ2xpZW50IiwgInR5cGUiLCAic29ja2V0IiwgImhlYWQiLCAicmVjZWl2ZXIiLCAicmVjZWl2ZXJPbkNvbmNsdWRlIiwgInJlY2VpdmVyT25EcmFpbiIsICJyZWNlaXZlck9uRXJyb3IiLCAicmVjZWl2ZXJPbk1lc3NhZ2UiLCAicmVjZWl2ZXJPblBpbmciLCAicmVjZWl2ZXJPblBvbmciLCAic29ja2V0T25DbG9zZSIsICJzb2NrZXRPbkRhdGEiLCAic29ja2V0T25FbmQiLCAic29ja2V0T25FcnJvciIsICJjb2RlIiwgImRhdGEiLCAibXNnIiwgImFib3J0SGFuZHNoYWtlIiwgImVyciIsICJtYXNrIiwgImNiIiwgInNlbmRBZnRlckNsb3NlIiwgIm9wdHMiLCAicHJvcGVydHkiLCAibWV0aG9kIiwgImxpc3RlbmVyIiwgImhhbmRsZXIiLCAid2Vic29ja2V0IiwgInBhcnNlZFVybCIsICJpc1NlY3VyZSIsICJpc0lwY1VybCIsICJpbnZhbGlkVXJsTWVzc2FnZSIsICJlbWl0RXJyb3JBbmRDbG9zZSIsICJkZWZhdWx0UG9ydCIsICJrZXkiLCAicmVxdWVzdCIsICJwcm90b2NvbFNldCIsICJwZXJNZXNzYWdlRGVmbGF0ZSIsICJ0bHNDb25uZWN0IiwgIm5ldENvbm5lY3QiLCAicHJvdG9jb2wiLCAicGFydHMiLCAicmVxIiwgImhlYWRlcnMiLCAidmFsdWUiLCAiaXNTYW1lSG9zdCIsICJyZXMiLCAibG9jYXRpb24iLCAic3RhdHVzQ29kZSIsICJhZGRyIiwgImRpZ2VzdCIsICJzZXJ2ZXJQcm90IiwgInByb3RFcnJvciIsICJzZWNXZWJTb2NrZXRFeHRlbnNpb25zIiwgImV4dGVuc2lvbnMiLCAiZXh0ZW5zaW9uTmFtZXMiLCAic3RyZWFtIiwgIm1lc3NhZ2UiLCAibGVuZ3RoIiwgInJlYXNvbiIsICJyZXN1bWUiLCAicmVjZWl2ZXJPbkZpbmlzaCIsICJpc0JpbmFyeSIsICJjaHVuayIsICJyZXF1aXJlX3N0cmVhbSIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgIkR1cGxleCIsICJlbWl0Q2xvc2UiLCAic3RyZWFtIiwgIl9fbmFtZSIsICJkdXBsZXhPbkVuZCIsICJkdXBsZXhPbkVycm9yIiwgImVyciIsICJjcmVhdGVXZWJTb2NrZXRTdHJlYW0iLCAid3MiLCAib3B0aW9ucyIsICJ0ZXJtaW5hdGVPbkRlc3Ryb3kiLCAiZHVwbGV4IiwgIm1zZyIsICJpc0JpbmFyeSIsICJkYXRhIiwgImNhbGxiYWNrIiwgImNhbGxlZCIsICJjaHVuayIsICJlbmNvZGluZyIsICJyZXF1aXJlX3N1YnByb3RvY29sIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJtb2R1bGUiLCAidG9rZW5DaGFycyIsICJwYXJzZSIsICJoZWFkZXIiLCAicHJvdG9jb2xzIiwgInN0YXJ0IiwgImVuZCIsICJpIiwgImNvZGUiLCAicHJvdG9jb2wiLCAiX19uYW1lIiwgInJlcXVpcmVfd2Vic29ja2V0X3NlcnZlciIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgIkV2ZW50RW1pdHRlciIsICJodHRwIiwgIkR1cGxleCIsICJjcmVhdGVIYXNoIiwgImV4dGVuc2lvbiIsICJQZXJNZXNzYWdlRGVmbGF0ZSIsICJzdWJwcm90b2NvbCIsICJXZWJTb2NrZXQiLCAiR1VJRCIsICJrV2ViU29ja2V0IiwgImtleVJlZ2V4IiwgIlJVTk5JTkciLCAiQ0xPU0lORyIsICJDTE9TRUQiLCAiV2ViU29ja2V0U2VydmVyIiwgIl9fbmFtZSIsICJvcHRpb25zIiwgImNhbGxiYWNrIiwgInJlcSIsICJyZXMiLCAiYm9keSIsICJlbWl0Q29ubmVjdGlvbiIsICJhZGRMaXN0ZW5lcnMiLCAic29ja2V0IiwgImhlYWQiLCAiY2IiLCAiZW1pdENsb3NlIiwgInNlcnZlciIsICJpbmRleCIsICJzb2NrZXRPbkVycm9yIiwgImtleSIsICJ2ZXJzaW9uIiwgImFib3J0SGFuZHNoYWtlT3JFbWl0d3NDbGllbnRFcnJvciIsICJhYm9ydEhhbmRzaGFrZSIsICJzZWNXZWJTb2NrZXRQcm90b2NvbCIsICJwcm90b2NvbHMiLCAic2VjV2ViU29ja2V0RXh0ZW5zaW9ucyIsICJleHRlbnNpb25zIiwgInBlck1lc3NhZ2VEZWZsYXRlIiwgIm9mZmVycyIsICJpbmZvIiwgInZlcmlmaWVkIiwgImNvZGUiLCAibWVzc2FnZSIsICJoZWFkZXJzIiwgIndzIiwgInByb3RvY29sIiwgInBhcmFtcyIsICJ2YWx1ZSIsICJtYXAiLCAiZXZlbnQiLCAiaCIsICJlcnIiLCAicmVxdWlyZV93cyIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAibW9kdWxlIiwgIldlYlNvY2tldCIsICJyZXF1aXJlX3dlYnNvY2tldCIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsICJfZGVmYXVsdCIsICJfd3MiLCAiYWRkcmVzcyIsICJvcHRpb25zIiwgIl9fbmFtZSIsICJfYXNzZXJ0X2pzXzEiLCAiX3U2NF9qc18xIiwgInV0aWxzX2pzXzEiLCAiU0hBM19QSSIsICJTSEEzX1JPVEwiLCAiX1NIQTNfSU9UQSIsICJfMG4iLCAiXzFuIiwgIl8ybiIsICJfN24iLCAiXzI1Nm4iLCAiXzB4NzFuIiwgInJvdW5kIiwgIlIiLCAieCIsICJ5IiwgInQiLCAiaiIsICJTSEEzX0lPVEFfSCIsICJTSEEzX0lPVEFfTCIsICJyb3RsSCIsICJfX25hbWUiLCAiaCIsICJsIiwgInMiLCAicm90bEwiLCAia2VjY2FrUCIsICJyb3VuZHMiLCAiQiIsICJpZHgxIiwgImlkeDAiLCAiQjAiLCAiQjEiLCAiVGgiLCAiVGwiLCAiY3VySCIsICJjdXJMIiwgInNoaWZ0IiwgIlBJIiwgImV4cG9ydHMiLCAiS2VjY2FrIiwgIl9LZWNjYWsiLCAiYmxvY2tMZW4iLCAic3VmZml4IiwgIm91dHB1dExlbiIsICJlbmFibGVYT0YiLCAiZGF0YSIsICJzdGF0ZSIsICJsZW4iLCAicG9zIiwgInRha2UiLCAiaSIsICJvdXQiLCAiYnVmZmVyT3V0IiwgImJ5dGVzIiwgInRvIiwgImdlbiIsICJnZW5TaGFrZSIsICJvcHRzIiwgIm1vZCIsICJ1dCIsICJ1dGlsc19qc18xIiwgImN1cnZlX2pzXzEiLCAidmFsaWRhdGVQb2ludE9wdHMiLCAiY3VydmUiLCAib3B0cyIsICJlbmRvIiwgIkZwIiwgIl9fbmFtZSIsICJiMm4iLCAiaDJiIiwgImV4cG9ydHMiLCAibSIsICJkYXRhIiwgIkUiLCAibGVuIiwgInJlcyIsICJoZXgiLCAibCIsICJyIiwgInNCeXRlcyIsICJzIiwgInJCeXRlc0xlZnQiLCAic2lnIiwgInNsaWNlIiwgImgiLCAibnVtIiwgInNobCIsICJyaGwiLCAic2wiLCAicmwiLCAiXzBuIiwgIl8xbiIsICJfMm4iLCAiXzNuIiwgIl80biIsICJ3ZWllcnN0cmFzc1BvaW50cyIsICJDVVJWRSIsICJ0b0J5dGVzIiwgIl9jIiwgInBvaW50IiwgIl9pc0NvbXByZXNzZWQiLCAiYSIsICJmcm9tQnl0ZXMiLCAiYnl0ZXMiLCAidGFpbCIsICJ4IiwgInkiLCAid2VpZXJzdHJhc3NFcXVhdGlvbiIsICJiIiwgIngyIiwgIngzIiwgImlzV2l0aGluQ3VydmVPcmRlciIsICJhc3NlcnRHRSIsICJub3JtUHJpdmF0ZUtleVRvU2NhbGFyIiwgImtleSIsICJsZW5ndGhzIiwgIm5CeXRlTGVuZ3RoIiwgIndyYXBQcml2YXRlS2V5IiwgIm4iLCAicG9pbnRQcmVjb21wdXRlcyIsICJhc3NlcnRQcmpQb2ludCIsICJvdGhlciIsICJQb2ludCIsICJweCIsICJweSIsICJweiIsICJwIiwgImlzMCIsICJpIiwgInBvaW50cyIsICJ0b0ludiIsICJQIiwgInByaXZhdGVLZXkiLCAid2luZG93U2l6ZSIsICJsZWZ0IiwgInJpZ2h0IiwgIlgxIiwgIlkxIiwgIloxIiwgIlgyIiwgIlkyIiwgIloyIiwgIlUxIiwgIlUyIiwgImIzIiwgIlgzIiwgIlkzIiwgIlozIiwgInQwIiwgInQxIiwgInQyIiwgInQzIiwgInQ0IiwgInQ1IiwgInduYWYiLCAiY29tcCIsICJJIiwgImsxbmVnIiwgImsxIiwgImsybmVnIiwgImsyIiwgImsxcCIsICJrMnAiLCAiZCIsICJzY2FsYXIiLCAiZmFrZSIsICJmMXAiLCAiZjJwIiwgImYiLCAiUSIsICJHIiwgIm11bCIsICJzdW0iLCAiaXoiLCAieiIsICJheCIsICJheSIsICJ6eiIsICJjb2ZhY3RvciIsICJpc1RvcnNpb25GcmVlIiwgImNsZWFyQ29mYWN0b3IiLCAiaXNDb21wcmVzc2VkIiwgIl9iaXRzIiwgInZhbGlkYXRlT3B0cyIsICJ3ZWllcnN0cmFzcyIsICJjdXJ2ZURlZiIsICJDVVJWRV9PUkRFUiIsICJjb21wcmVzc2VkTGVuIiwgInVuY29tcHJlc3NlZExlbiIsICJpc1ZhbGlkRmllbGRFbGVtZW50IiwgIm1vZE4iLCAiaW52TiIsICJjYXQiLCAiaGVhZCIsICJ5MiIsICJpc1lPZGQiLCAibnVtVG9OQnl0ZVN0ciIsICJpc0JpZ2dlclRoYW5IYWxmT3JkZXIiLCAibnVtYmVyIiwgIkhBTEYiLCAibm9ybWFsaXplUyIsICJzbGNOdW0iLCAiZnJvbSIsICJ0byIsICJTaWduYXR1cmUiLCAicmVjb3ZlcnkiLCAibXNnSGFzaCIsICJyZWMiLCAiYml0czJpbnRfbW9kTiIsICJyYWRqIiwgInByZWZpeCIsICJSIiwgImlyIiwgInUxIiwgInUyIiwgInV0aWxzIiwgImxlbmd0aCIsICJnZXRQdWJsaWNLZXkiLCAiaXNQcm9iUHViIiwgIml0ZW0iLCAiYXJyIiwgInN0ciIsICJnZXRTaGFyZWRTZWNyZXQiLCAicHJpdmF0ZUEiLCAicHVibGljQiIsICJiaXRzMmludCIsICJkZWx0YSIsICJPUkRFUl9NQVNLIiwgImludDJvY3RldHMiLCAicHJlcFNpZyIsICJkZWZhdWx0U2lnT3B0cyIsICJrIiwgImhhc2giLCAicmFuZG9tQnl0ZXMiLCAibG93UyIsICJwcmVoYXNoIiwgImVudCIsICJoMWludCIsICJzZWVkQXJncyIsICJlIiwgInNlZWQiLCAiazJzaWciLCAia0J5dGVzIiwgImlrIiwgInEiLCAibm9ybVMiLCAiZGVmYXVsdFZlck9wdHMiLCAic2lnbiIsICJwcml2S2V5IiwgIkMiLCAidmVyaWZ5IiwgInNpZ25hdHVyZSIsICJwdWJsaWNLZXkiLCAic2ciLCAiX3NpZyIsICJkZXJFcnJvciIsICJlcnJvciIsICJpcyIsICJTV1VGcFNxcnRSYXRpbyIsICJaIiwgIm8iLCAiYzEiLCAiXzJuX3Bvd19jMV8xIiwgIl8ybl9wb3dfYzEiLCAiYzIiLCAiYzMiLCAiYzQiLCAiYzUiLCAiYzYiLCAiYzciLCAic3FydFJhdGlvIiwgInUiLCAidiIsICJ0djEiLCAidHYyIiwgInR2MyIsICJ0djUiLCAidHY0IiwgImlzUVIiLCAidHZ2NSIsICJlMSIsICJ5MSIsICJtYXBUb0N1cnZlU2ltcGxlU1dVIiwgInR2NiIsICJpc1ZhbGlkIiwgInZhbHVlIiwgIl9hc3NlcnRfanNfMSIsICJ1dGlsc19qc18xIiwgIkhNQUMiLCAiX19uYW1lIiwgImhhc2giLCAiX2tleSIsICJrZXkiLCAiYmxvY2tMZW4iLCAicGFkIiwgImkiLCAiYnVmIiwgIm91dCIsICJ0byIsICJvSGFzaCIsICJpSGFzaCIsICJmaW5pc2hlZCIsICJkZXN0cm95ZWQiLCAib3V0cHV0TGVuIiwgImV4cG9ydHMiLCAiaG1hYyIsICJtZXNzYWdlIiwgImhtYWNfMSIsICJ1dGlsc18xIiwgIndlaWVyc3RyYXNzX2pzXzEiLCAiZ2V0SGFzaCIsICJoYXNoIiwgImtleSIsICJtc2dzIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImNyZWF0ZUN1cnZlIiwgImN1cnZlRGVmIiwgImRlZkhhc2giLCAiY3JlYXRlIiwgInNoYTI1Nl8xIiwgInV0aWxzXzEiLCAibW9kdWxhcl9qc18xIiwgIndlaWVyc3RyYXNzX2pzXzEiLCAidXRpbHNfanNfMSIsICJoYXNoX3RvX2N1cnZlX2pzXzEiLCAiX3Nob3J0d191dGlsc19qc18xIiwgInNlY3AyNTZrMVAiLCAic2VjcDI1NmsxTiIsICJfMW4iLCAiXzJuIiwgImRpdk5lYXJlc3QiLCAiX19uYW1lIiwgImEiLCAiYiIsICJzcXJ0TW9kIiwgInkiLCAiUCIsICJfM24iLCAiXzZuIiwgIl8xMW4iLCAiXzIybiIsICJfMjNuIiwgIl80NG4iLCAiXzg4biIsICJiMiIsICJiMyIsICJiNiIsICJiOSIsICJiMTEiLCAiYjIyIiwgImI0NCIsICJiODgiLCAiYjE3NiIsICJiMjIwIiwgImIyMjMiLCAidDEiLCAidDIiLCAicm9vdCIsICJGcCIsICJleHBvcnRzIiwgImsiLCAibiIsICJhMSIsICJiMSIsICJhMiIsICJQT1dfMl8xMjgiLCAiYzEiLCAiYzIiLCAiazEiLCAiazIiLCAiazFuZWciLCAiazJuZWciLCAiXzBuIiwgImZlIiwgIngiLCAiZ2UiLCAiVEFHR0VEX0hBU0hfUFJFRklYRVMiLCAidGFnZ2VkSGFzaCIsICJ0YWciLCAibWVzc2FnZXMiLCAidGFnUCIsICJ0YWdIIiwgImMiLCAicG9pbnRUb0J5dGVzIiwgInBvaW50IiwgIm51bVRvMzJiIiwgIm1vZFAiLCAibW9kTiIsICJQb2ludCIsICJHbXVsQWRkIiwgIlEiLCAic2Nobm9yckdldEV4dFB1YktleSIsICJwcml2IiwgImRfIiwgInAiLCAibGlmdF94IiwgInh4IiwgImNoYWxsZW5nZSIsICJhcmdzIiwgInNjaG5vcnJHZXRQdWJsaWNLZXkiLCAicHJpdmF0ZUtleSIsICJzY2hub3JyU2lnbiIsICJtZXNzYWdlIiwgImF1eFJhbmQiLCAibSIsICJweCIsICJkIiwgInQiLCAicmFuZCIsICJrXyIsICJyeCIsICJlIiwgInNpZyIsICJzY2hub3JyVmVyaWZ5IiwgInNpZ25hdHVyZSIsICJwdWJsaWNLZXkiLCAicHViIiwgInIiLCAicyIsICJSIiwgImlzb01hcCIsICJpIiwgImoiLCAibWFwU1dVIiwgImh0ZiIsICJzY2FsYXJzIiwgImdlbmVyYXRlUHJpdmF0ZUtleSIsICJlZDI1NTE5IiwgInV0aWxzIiwgInJhbmRvbVByaXZhdGVLZXkiLCAiZ2VuZXJhdGVLZXlwYWlyIiwgInByaXZhdGVTY2FsYXIiLCAicHVibGljS2V5IiwgImdldFB1YmxpY0tleSIsICJzZWNyZXRLZXkiLCAiVWludDhBcnJheSIsICJzZXQiLCAiaXNPbkN1cnZlIiwgIkV4dGVuZGVkUG9pbnQiLCAiZnJvbUhleCIsICJzaWduIiwgIm1lc3NhZ2UiLCAic2xpY2UiLCAidmVyaWZ5IiwgInRvQnVmZmVyIiwgImFyciIsICJCdWZmZXIiLCAiaXNCdWZmZXIiLCAiZnJvbSIsICJidWZmZXIiLCAiYnl0ZU9mZnNldCIsICJieXRlTGVuZ3RoIiwgIlN0cnVjdCIsICJfX25hbWUiLCAiY29uc3RydWN0b3IiLCAicHJvcGVydGllcyIsICJPYmplY3QiLCAiYXNzaWduIiwgImVuY29kZSIsICJzZXJpYWxpemUiLCAiU09MQU5BX1NDSEVNQSIsICJkZWNvZGUiLCAiZGF0YSIsICJkZXNlcmlhbGl6ZSIsICJkZWNvZGVVbmNoZWNrZWQiLCAiZGVzZXJpYWxpemVVbmNoZWNrZWQiLCAiRW51bSIsICJlbnVtIiwgImtleXMiLCAibGVuZ3RoIiwgIkVycm9yIiwgIm1hcCIsICJrZXkiLCAiTWFwIiwgIk1BWF9TRUVEX0xFTkdUSCIsICJQVUJMSUNfS0VZX0xFTkdUSCIsICJpc1B1YmxpY0tleURhdGEiLCAidmFsdWUiLCAiX2JuIiwgInVuZGVmaW5lZCIsICJ1bmlxdWVQdWJsaWNLZXlDb3VudGVyIiwgIl9TeW1ib2wkdG9TdHJpbmdUYWciLCAiU3ltYm9sIiwgInRvU3RyaW5nVGFnIiwgIlB1YmxpY0tleSIsICJkZWNvZGVkIiwgImJzNTgiLCAiQk4iLCAidW5pcXVlIiwgImVxdWFscyIsICJlcSIsICJ0b0Jhc2U1OCIsICJ0b0J5dGVzIiwgInRvSlNPTiIsICJidWYiLCAiYiIsICJ0b0FycmF5TGlrZSIsICJ6ZXJvUGFkIiwgImFsbG9jIiwgImNvcHkiLCAidG9TdHJpbmciLCAiY3JlYXRlV2l0aFNlZWQiLCAiZnJvbVB1YmxpY0tleSIsICJzZWVkIiwgInByb2dyYW1JZCIsICJjb25jYXQiLCAicHVibGljS2V5Qnl0ZXMiLCAic2hhMjU2IiwgImNyZWF0ZVByb2dyYW1BZGRyZXNzU3luYyIsICJzZWVkcyIsICJmb3JFYWNoIiwgIlR5cGVFcnJvciIsICJjcmVhdGVQcm9ncmFtQWRkcmVzcyIsICJmaW5kUHJvZ3JhbUFkZHJlc3NTeW5jIiwgIm5vbmNlIiwgImFkZHJlc3MiLCAic2VlZHNXaXRoTm9uY2UiLCAiZXJyIiwgImZpbmRQcm9ncmFtQWRkcmVzcyIsICJwdWJrZXlEYXRhIiwgInB1YmtleSIsICJfY2xhc3MiLCAiZGVmYXVsdCIsICJraW5kIiwgImZpZWxkcyIsICJBY2NvdW50IiwgIl9wdWJsaWNLZXkiLCAiX3NlY3JldEtleSIsICJzZWNyZXRLZXlCdWZmZXIiLCAiQlBGX0xPQURFUl9ERVBSRUNBVEVEX1BST0dSQU1fSUQiLCAiUEFDS0VUX0RBVEFfU0laRSIsICJWRVJTSU9OX1BSRUZJWF9NQVNLIiwgIlNJR05BVFVSRV9MRU5HVEhfSU5fQllURVMiLCAiVHJhbnNhY3Rpb25FeHBpcmVkQmxvY2toZWlnaHRFeGNlZWRlZEVycm9yIiwgInNpZ25hdHVyZSIsICJkZWZpbmVQcm9wZXJ0eSIsICJwcm90b3R5cGUiLCAiVHJhbnNhY3Rpb25FeHBpcmVkVGltZW91dEVycm9yIiwgInRpbWVvdXRTZWNvbmRzIiwgInRvRml4ZWQiLCAiVHJhbnNhY3Rpb25FeHBpcmVkTm9uY2VJbnZhbGlkRXJyb3IiLCAiTWVzc2FnZUFjY291bnRLZXlzIiwgInN0YXRpY0FjY291bnRLZXlzIiwgImFjY291bnRLZXlzRnJvbUxvb2t1cHMiLCAia2V5U2VnbWVudHMiLCAicHVzaCIsICJ3cml0YWJsZSIsICJyZWFkb25seSIsICJnZXQiLCAiaW5kZXgiLCAia2V5U2VnbWVudCIsICJmbGF0IiwgImNvbXBpbGVJbnN0cnVjdGlvbnMiLCAiaW5zdHJ1Y3Rpb25zIiwgIlU4X01BWCIsICJrZXlJbmRleE1hcCIsICJmaW5kS2V5SW5kZXgiLCAia2V5SW5kZXgiLCAiaW5zdHJ1Y3Rpb24iLCAicHJvZ3JhbUlkSW5kZXgiLCAiYWNjb3VudEtleUluZGV4ZXMiLCAibWV0YSIsICJwcm9wZXJ0eSIsICJCdWZmZXJMYXlvdXQiLCAiYmxvYiIsICJydXN0U3RyaW5nIiwgInJzbCIsICJzdHJ1Y3QiLCAidTMyIiwgIm9mZnNldCIsICJfZGVjb2RlIiwgImJpbmQiLCAiX2VuY29kZSIsICJyc2xTaGltIiwgInN0ciIsICJjaGFycyIsICJzcGFuIiwgImF1dGhvcml6ZWQiLCAibG9ja3VwIiwgIm5zNjQiLCAidm90ZUluaXQiLCAidTgiLCAidm90ZUF1dGhvcml6ZVdpdGhTZWVkQXJncyIsICJnZXRBbGxvYyIsICJ0eXBlIiwgImdldEl0ZW1BbGxvYyIsICJpdGVtIiwgImZpZWxkIiwgIkFycmF5IiwgImlzQXJyYXkiLCAiZWxlbWVudExheW91dCIsICJsYXlvdXQiLCAiZGVjb2RlTGVuZ3RoIiwgImJ5dGVzIiwgImxlbiIsICJzaXplIiwgImVsZW0iLCAic2hpZnQiLCAiZW5jb2RlTGVuZ3RoIiwgInJlbV9sZW4iLCAiYXNzZXJ0IiwgImNvbmRpdGlvbiIsICJDb21waWxlZEtleXMiLCAicGF5ZXIiLCAia2V5TWV0YU1hcCIsICJjb21waWxlIiwgImdldE9ySW5zZXJ0RGVmYXVsdCIsICJrZXlNZXRhIiwgImlzU2lnbmVyIiwgImlzV3JpdGFibGUiLCAiaXNJbnZva2VkIiwgInBheWVyS2V5TWV0YSIsICJpeCIsICJhY2NvdW50TWV0YSIsICJnZXRNZXNzYWdlQ29tcG9uZW50cyIsICJtYXBFbnRyaWVzIiwgImVudHJpZXMiLCAid3JpdGFibGVTaWduZXJzIiwgImZpbHRlciIsICJyZWFkb25seVNpZ25lcnMiLCAid3JpdGFibGVOb25TaWduZXJzIiwgInJlYWRvbmx5Tm9uU2lnbmVycyIsICJoZWFkZXIiLCAibnVtUmVxdWlyZWRTaWduYXR1cmVzIiwgIm51bVJlYWRvbmx5U2lnbmVkQWNjb3VudHMiLCAibnVtUmVhZG9ubHlVbnNpZ25lZEFjY291bnRzIiwgInBheWVyQWRkcmVzcyIsICJleHRyYWN0VGFibGVMb29rdXAiLCAibG9va3VwVGFibGUiLCAid3JpdGFibGVJbmRleGVzIiwgImRyYWluZWRXcml0YWJsZUtleXMiLCAiZHJhaW5LZXlzRm91bmRJbkxvb2t1cFRhYmxlIiwgInN0YXRlIiwgImFkZHJlc3NlcyIsICJyZWFkb25seUluZGV4ZXMiLCAiZHJhaW5lZFJlYWRvbmx5S2V5cyIsICJhY2NvdW50S2V5IiwgImxvb2t1cFRhYmxlRW50cmllcyIsICJrZXlNZXRhRmlsdGVyIiwgImxvb2t1cFRhYmxlSW5kZXhlcyIsICJkcmFpbmVkS2V5cyIsICJsb29rdXBUYWJsZUluZGV4IiwgImZpbmRJbmRleCIsICJlbnRyeSIsICJkZWxldGUiLCAiTWVzc2FnZSIsICJhcmdzIiwgImFjY291bnRLZXlzIiwgInJlY2VudEJsb2NraGFzaCIsICJpbmRleFRvUHJvZ3JhbUlkcyIsICJhY2NvdW50IiwgInZlcnNpb24iLCAiY29tcGlsZWRJbnN0cnVjdGlvbnMiLCAiYWNjb3VudHMiLCAiYWRkcmVzc1RhYmxlTG9va3VwcyIsICJnZXRBY2NvdW50S2V5cyIsICJjb21waWxlZEtleXMiLCAicGF5ZXJLZXkiLCAiaXNBY2NvdW50U2lnbmVyIiwgImlzQWNjb3VudFdyaXRhYmxlIiwgIm51bVNpZ25lZEFjY291bnRzIiwgInVuc2lnbmVkQWNjb3VudEluZGV4IiwgIm51bVdyaXRhYmxlVW5zaWduZWRBY2NvdW50cyIsICJudW1Xcml0YWJsZVNpZ25lZEFjY291bnRzIiwgImlzUHJvZ3JhbUlkIiwgImhhcyIsICJwcm9ncmFtSWRzIiwgInZhbHVlcyIsICJub25Qcm9ncmFtSWRzIiwgIl8iLCAibnVtS2V5cyIsICJrZXlDb3VudCIsICJzaG9ydHZlYyIsICJrZXlJbmRpY2VzQ291bnQiLCAiZGF0YUNvdW50IiwgImtleUluZGljZXMiLCAiZGF0YUxlbmd0aCIsICJpbnN0cnVjdGlvbkNvdW50IiwgImluc3RydWN0aW9uQnVmZmVyIiwgImluc3RydWN0aW9uQnVmZmVyTGVuZ3RoIiwgInNlcSIsICJzaWduRGF0YUxheW91dCIsICJMYXlvdXQiLCAidHJhbnNhY3Rpb24iLCAic2lnbkRhdGEiLCAiYnl0ZUFycmF5IiwgImFjY291bnRDb3VudCIsICJpIiwgImRhdGFTbGljZSIsICJtZXNzYWdlQXJncyIsICJNZXNzYWdlVjAiLCAibnVtQWNjb3VudEtleXNGcm9tTG9va3VwcyIsICJjb3VudCIsICJsb29rdXAiLCAiYWRkcmVzc0xvb2t1cFRhYmxlQWNjb3VudHMiLCAicmVzb2x2ZUFkZHJlc3NUYWJsZUxvb2t1cHMiLCAibnVtU3RhdGljQWNjb3VudEtleXMiLCAibG9va3VwQWNjb3VudEtleXNJbmRleCIsICJudW1Xcml0YWJsZUxvb2t1cEFjY291bnRLZXlzIiwgInJlZHVjZSIsICJ0YWJsZUxvb2t1cCIsICJ0YWJsZUFjY291bnQiLCAiZmluZCIsICJsb29rdXBUYWJsZUFjY291bnRzIiwgImV4dHJhY3RSZXN1bHQiLCAiYWRkcmVzc1RhYmxlTG9va3VwIiwgImVuY29kZWRTdGF0aWNBY2NvdW50S2V5c0xlbmd0aCIsICJzZXJpYWxpemVkSW5zdHJ1Y3Rpb25zIiwgInNlcmlhbGl6ZUluc3RydWN0aW9ucyIsICJlbmNvZGVkSW5zdHJ1Y3Rpb25zTGVuZ3RoIiwgInNlcmlhbGl6ZWRBZGRyZXNzVGFibGVMb29rdXBzIiwgInNlcmlhbGl6ZUFkZHJlc3NUYWJsZUxvb2t1cHMiLCAiZW5jb2RlZEFkZHJlc3NUYWJsZUxvb2t1cHNMZW5ndGgiLCAibWVzc2FnZUxheW91dCIsICJzZXJpYWxpemVkTWVzc2FnZSIsICJNRVNTQUdFX1ZFUlNJT05fMF9QUkVGSVgiLCAic2VyaWFsaXplZE1lc3NhZ2VMZW5ndGgiLCAicHJlZml4IiwgInN0YXRpY0FjY291bnRLZXlzTGVuZ3RoIiwgImluc3RydWN0aW9uc0xlbmd0aCIsICJhZGRyZXNzVGFibGVMb29rdXBzTGVuZ3RoIiwgInNlcmlhbGl6ZWRMZW5ndGgiLCAiZW5jb2RlZEFjY291bnRLZXlJbmRleGVzTGVuZ3RoIiwgImVuY29kZWREYXRhTGVuZ3RoIiwgImluc3RydWN0aW9uTGF5b3V0IiwgImVuY29kZWRXcml0YWJsZUluZGV4ZXNMZW5ndGgiLCAiZW5jb2RlZFJlYWRvbmx5SW5kZXhlc0xlbmd0aCIsICJhZGRyZXNzVGFibGVMb29rdXBMYXlvdXQiLCAibWFza2VkUHJlZml4IiwgInNwbGljZSIsICJhY2NvdW50S2V5SW5kZXhlc0xlbmd0aCIsICJhZGRyZXNzVGFibGVMb29rdXBzQ291bnQiLCAid3JpdGFibGVJbmRleGVzTGVuZ3RoIiwgInJlYWRvbmx5SW5kZXhlc0xlbmd0aCIsICJWZXJzaW9uZWRNZXNzYWdlIiwgImRlc2VyaWFsaXplTWVzc2FnZVZlcnNpb24iLCAiVHJhbnNhY3Rpb25TdGF0dXMiLCAiREVGQVVMVF9TSUdOQVRVUkUiLCAiZmlsbCIsICJUcmFuc2FjdGlvbkluc3RydWN0aW9uIiwgIm9wdHMiLCAiVHJhbnNhY3Rpb24iLCAic2lnbmF0dXJlcyIsICJmZWVQYXllciIsICJsYXN0VmFsaWRCbG9ja0hlaWdodCIsICJub25jZUluZm8iLCAibWluTm9uY2VDb250ZXh0U2xvdCIsICJfbWVzc2FnZSIsICJfanNvbiIsICJoYXNPd25Qcm9wZXJ0eSIsICJjYWxsIiwgIm1pbkNvbnRleHRTbG90IiwgImJsb2NraGFzaCIsICJub25jZUluc3RydWN0aW9uIiwgInNpZ25lcnMiLCAiYWRkIiwgIml0ZW1zIiwgImNvbXBpbGVNZXNzYWdlIiwgIkpTT04iLCAic3RyaW5naWZ5IiwgImNvbnNvbGUiLCAid2FybiIsICJhY2NvdW50TWV0YXMiLCAiaW5jbHVkZXMiLCAidW5pcXVlTWV0YXMiLCAicHVia2V5U3RyaW5nIiwgInVuaXF1ZUluZGV4IiwgIngiLCAic29ydCIsICJ5IiwgIm9wdGlvbnMiLCAibG9jYWxlTWF0Y2hlciIsICJ1c2FnZSIsICJzZW5zaXRpdml0eSIsICJpZ25vcmVQdW5jdHVhdGlvbiIsICJudW1lcmljIiwgImNhc2VGaXJzdCIsICJsb2NhbGVDb21wYXJlIiwgImZlZVBheWVySW5kZXgiLCAicGF5ZXJNZXRhIiwgInVuc2hpZnQiLCAic2lnbmVkS2V5cyIsICJ1bnNpZ25lZEtleXMiLCAiaW5kZXhPZiIsICJpbnZhcmlhbnQiLCAiX2NvbXBpbGUiLCAiZXZlcnkiLCAicGFpciIsICJzZXJpYWxpemVNZXNzYWdlIiwgImdldEVzdGltYXRlZEZlZSIsICJjb25uZWN0aW9uIiwgImdldEZlZUZvck1lc3NhZ2UiLCAic2V0U2lnbmVycyIsICJzZWVuIiwgIlNldCIsICJ1bmlxdWVTaWduZXJzIiwgInNpZ25lciIsICJfcGFydGlhbFNpZ24iLCAicGFydGlhbFNpZ24iLCAiX2FkZFNpZ25hdHVyZSIsICJhZGRTaWduYXR1cmUiLCAic2lncGFpciIsICJ2ZXJpZnlTaWduYXR1cmVzIiwgInJlcXVpcmVBbGxTaWduYXR1cmVzIiwgIl92ZXJpZnlTaWduYXR1cmVzIiwgImNvbmZpZyIsICJfc2VyaWFsaXplIiwgInNpZ25hdHVyZUNvdW50IiwgInRyYW5zYWN0aW9uTGVuZ3RoIiwgIndpcmVUcmFuc2FjdGlvbiIsICJrZXlPYmoiLCAicG9wdWxhdGUiLCAic2lnUHVia2V5UGFpciIsICJzb21lIiwgIlRyYW5zYWN0aW9uTWVzc2FnZSIsICJkZWNvbXBpbGUiLCAiY29tcGlsZWRJeCIsICJjb21waWxlVG9MZWdhY3lNZXNzYWdlIiwgImNvbXBpbGVUb1YwTWVzc2FnZSIsICJWZXJzaW9uZWRUcmFuc2FjdGlvbiIsICJkZWZhdWx0U2lnbmF0dXJlcyIsICJlbmNvZGVkU2lnbmF0dXJlc0xlbmd0aCIsICJ0cmFuc2FjdGlvbkxheW91dCIsICJzZXJpYWxpemVkVHJhbnNhY3Rpb24iLCAic2VyaWFsaXplZFRyYW5zYWN0aW9uTGVuZ3RoIiwgInNpZ25hdHVyZXNMZW5ndGgiLCAibWVzc2FnZURhdGEiLCAic2lnbmVyUHVia2V5cyIsICJzaWduZXJJbmRleCIsICJOVU1fVElDS1NfUEVSX1NFQ09ORCIsICJERUZBVUxUX1RJQ0tTX1BFUl9TTE9UIiwgIk5VTV9TTE9UU19QRVJfU0VDT05EIiwgIk1TX1BFUl9TTE9UIiwgIlNZU1ZBUl9DTE9DS19QVUJLRVkiLCAiU1lTVkFSX0VQT0NIX1NDSEVEVUxFX1BVQktFWSIsICJTWVNWQVJfSU5TVFJVQ1RJT05TX1BVQktFWSIsICJTWVNWQVJfUkVDRU5UX0JMT0NLSEFTSEVTX1BVQktFWSIsICJTWVNWQVJfUkVOVF9QVUJLRVkiLCAiU1lTVkFSX1JFV0FSRFNfUFVCS0VZIiwgIlNZU1ZBUl9TTE9UX0hBU0hFU19QVUJLRVkiLCAiU1lTVkFSX1NMT1RfSElTVE9SWV9QVUJLRVkiLCAiU1lTVkFSX1NUQUtFX0hJU1RPUllfUFVCS0VZIiwgInNlbmRBbmRDb25maXJtVHJhbnNhY3Rpb24iLCAic2VuZE9wdGlvbnMiLCAic2tpcFByZWZsaWdodCIsICJwcmVmbGlnaHRDb21taXRtZW50IiwgImNvbW1pdG1lbnQiLCAibWF4UmV0cmllcyIsICJzZW5kVHJhbnNhY3Rpb24iLCAic3RhdHVzIiwgImNvbmZpcm1UcmFuc2FjdGlvbiIsICJhYm9ydFNpZ25hbCIsICJub25jZUFjY291bnRQdWJrZXkiLCAibm9uY2VWYWx1ZSIsICJzbGVlcCIsICJtcyIsICJQcm9taXNlIiwgInJlc29sdmUiLCAic2V0VGltZW91dCIsICJlbmNvZGVEYXRhIiwgImFsbG9jTGVuZ3RoIiwgImxheW91dEZpZWxkcyIsICJkZWNvZGVEYXRhIiwgIkZlZUNhbGN1bGF0b3JMYXlvdXQiLCAibnU2NCIsICJOb25jZUFjY291bnRMYXlvdXQiLCAiTk9OQ0VfQUNDT1VOVF9MRU5HVEgiLCAiTm9uY2VBY2NvdW50IiwgImF1dGhvcml6ZWRQdWJrZXkiLCAiZmVlQ2FsY3VsYXRvciIsICJmcm9tQWNjb3VudERhdGEiLCAibm9uY2VBY2NvdW50IiwgImVuY29kZURlY29kZSIsICJiaWdJbnQiLCAiYmlnSW50TGF5b3V0IiwgInNyYyIsICJ0b0JpZ0ludExFIiwgInRvQnVmZmVyTEUiLCAidTY0IiwgIlN5c3RlbUluc3RydWN0aW9uIiwgImRlY29kZUluc3RydWN0aW9uVHlwZSIsICJjaGVja1Byb2dyYW1JZCIsICJ0eXBlSW5kZXgiLCAiaXhUeXBlIiwgIlNZU1RFTV9JTlNUUlVDVElPTl9MQVlPVVRTIiwgImRlY29kZUNyZWF0ZUFjY291bnQiLCAiY2hlY2tLZXlMZW5ndGgiLCAibGFtcG9ydHMiLCAic3BhY2UiLCAiQ3JlYXRlIiwgImZyb21QdWJrZXkiLCAibmV3QWNjb3VudFB1YmtleSIsICJkZWNvZGVUcmFuc2ZlciIsICJUcmFuc2ZlciIsICJ0b1B1YmtleSIsICJkZWNvZGVUcmFuc2ZlcldpdGhTZWVkIiwgIlRyYW5zZmVyV2l0aFNlZWQiLCAiYmFzZVB1YmtleSIsICJkZWNvZGVBbGxvY2F0ZSIsICJBbGxvY2F0ZSIsICJhY2NvdW50UHVia2V5IiwgImRlY29kZUFsbG9jYXRlV2l0aFNlZWQiLCAiYmFzZSIsICJBbGxvY2F0ZVdpdGhTZWVkIiwgImRlY29kZUFzc2lnbiIsICJBc3NpZ24iLCAiZGVjb2RlQXNzaWduV2l0aFNlZWQiLCAiQXNzaWduV2l0aFNlZWQiLCAiZGVjb2RlQ3JlYXRlV2l0aFNlZWQiLCAiQ3JlYXRlV2l0aFNlZWQiLCAiZGVjb2RlTm9uY2VJbml0aWFsaXplIiwgIkluaXRpYWxpemVOb25jZUFjY291bnQiLCAibm9uY2VQdWJrZXkiLCAiZGVjb2RlTm9uY2VBZHZhbmNlIiwgIkFkdmFuY2VOb25jZUFjY291bnQiLCAiZGVjb2RlTm9uY2VXaXRoZHJhdyIsICJXaXRoZHJhd05vbmNlQWNjb3VudCIsICJkZWNvZGVOb25jZUF1dGhvcml6ZSIsICJBdXRob3JpemVOb25jZUFjY291bnQiLCAibmV3QXV0aG9yaXplZFB1YmtleSIsICJTeXN0ZW1Qcm9ncmFtIiwgImV4cGVjdGVkTGVuZ3RoIiwgImZyZWV6ZSIsICJVcGdyYWRlTm9uY2VBY2NvdW50IiwgImNyZWF0ZUFjY291bnQiLCAicGFyYW1zIiwgInRyYW5zZmVyIiwgIkJpZ0ludCIsICJjcmVhdGVBY2NvdW50V2l0aFNlZWQiLCAiY3JlYXRlTm9uY2VBY2NvdW50IiwgImluaXRQYXJhbXMiLCAibm9uY2VJbml0aWFsaXplIiwgImluc3RydWN0aW9uRGF0YSIsICJub25jZUFkdmFuY2UiLCAibm9uY2VXaXRoZHJhdyIsICJub25jZUF1dGhvcml6ZSIsICJhbGxvY2F0ZSIsICJDSFVOS19TSVpFIiwgIkxvYWRlciIsICJnZXRNaW5OdW1TaWduYXR1cmVzIiwgIk1hdGgiLCAiY2VpbCIsICJjaHVua1NpemUiLCAibG9hZCIsICJwcm9ncmFtIiwgImJhbGFuY2VOZWVkZWQiLCAiZ2V0TWluaW11bUJhbGFuY2VGb3JSZW50RXhlbXB0aW9uIiwgInByb2dyYW1JbmZvIiwgImdldEFjY291bnRJbmZvIiwgImV4ZWN1dGFibGUiLCAiZXJyb3IiLCAib3duZXIiLCAiZGF0YUxheW91dCIsICJhcnJheSIsICJ0cmFuc2FjdGlvbnMiLCAiYnl0ZXNMZW5ndGgiLCAiYnl0ZXNMZW5ndGhQYWRkaW5nIiwgIl9ycGNFbmRwb2ludCIsICJSRVFVRVNUU19QRVJfU0VDT05EIiwgImFsbCIsICJkZXBsb3lDb21taXRtZW50IiwgImZpbmFsaXplU2lnbmF0dXJlIiwgImNvbnRleHQiLCAiZ2V0U2xvdCIsICJzbG90IiwgInJvdW5kIiwgIkJQRl9MT0FERVJfUFJPR1JBTV9JRCIsICJCcGZMb2FkZXIiLCAiZWxmIiwgImxvYWRlclByb2dyYW1JZCIsICJzIiwgIm0iLCAiaCIsICJkIiwgInciLCAidmFsIiwgInBhcnNlIiwgImZtdExvbmciLCAiZm10U2hvcnQiLCAibWF0Y2giLCAibiIsICJtc0FicyIsICJwbHVyYWwiLCAibmFtZSIsICJpc1BsdXJhbCIsICJ1dGlsIiwgInJlcXVpcmUkJDAiLCAicmVxdWlyZSQkMSIsICJodW1hbml6ZU1zIiwgInIiLCAic2V0dXAiLCAiZW52IiwgImNyZWF0ZURlYnVnIiwgImNvZXJjZSIsICJkaXNhYmxlIiwgImVuYWJsZSIsICJlbmFibGVkIiwgImRlc3Ryb3kiLCAic2VsZWN0Q29sb3IiLCAibmFtZXNwYWNlIiwgImhhc2giLCAicHJldlRpbWUiLCAiZW5hYmxlT3ZlcnJpZGUiLCAibmFtZXNwYWNlc0NhY2hlIiwgImVuYWJsZWRDYWNoZSIsICJkZWJ1ZyIsICJzZWxmIiwgImN1cnIiLCAiZm9ybWF0IiwgImZvcm1hdHRlciIsICJleHRlbmQiLCAidiIsICJkZWxpbWl0ZXIiLCAibmV3RGVidWciLCAibmFtZXNwYWNlcyIsICJzcGxpdCIsICJ0b05hbWVzcGFjZSIsICJyZWdleHAiLCAiY29tbW9uIiwgImV4cG9ydHMiLCAiZm9ybWF0QXJncyIsICJzYXZlIiwgInVzZUNvbG9ycyIsICJsb2NhbHN0b3JhZ2UiLCAid2FybmVkIiwgIm1vZHVsZSIsICJjIiwgImxhc3RDIiwgImZvcm1hdHRlcnMiLCAiZ2V0Q2hyb21lVmVyc2lvbiIsICJtYXRjaGVzIiwgImNvbG9yU3VwcG9ydCIsICJicm93c2VyIiwgInR0eSIsICJpbml0IiwgImxvZyIsICJzdXBwb3J0c0NvbG9yIiwgInJlcXVpcmUkJDIiLCAib2JqIiwgInByb3AiLCAiayIsICJjb2xvckNvZGUiLCAiZ2V0RGF0ZSIsICJyZXF1aXJlJCQzIiwgInNyY01vZHVsZSIsICJyZWxhdGl2ZSIsICJkZXBkXzEiLCAiZGVwZCIsICJiYXNlUGF0aCIsICJjb250YWluc05hbWVzcGFjZSIsICJ2YWxzIiwgIm5zIiwgImNvbnZlcnREYXRhRGVzY3JpcHRvclRvQWNjZXNzb3IiLCAiZGVzY3JpcHRvciIsICJjcmVhdGVBcmd1bWVudHNTdHJpbmciLCAiYXJpdHkiLCAiY3JlYXRlU3RhY2tTdHJpbmciLCAic3RhY2siLCAiZ2V0U3RhY2siLCAic2l0ZSIsICJjYWxsU2l0ZUxvY2F0aW9uIiwgImZpbGUiLCAiZGVwcmVjYXRlIiwgImlzaWdub3JlZCIsICJpc3RyYWNlZCIsICJ3cmFwZnVuY3Rpb24iLCAid3JhcHByb3BlcnR5IiwgImVlaGFzbGlzdGVuZXJzIiwgImVtaXR0ZXIiLCAiaGFzbGlzdGVuZXJzIiwgImNhbGxlciIsICJjYWxsRmlsZSIsICJjYWxsU2l0ZSIsICJkZXBTaXRlIiwgIm1zZyIsICJkZWZhdWx0TWVzc2FnZSIsICJEZXByZWNhdGlvbkVycm9yIiwgImZvcm1hdENvbG9yIiwgImZvcm1hdFBsYWluIiwgIm91dHB1dCIsICJsaW5lIiwgImNvbG0iLCAiZnVuY05hbWUiLCAiZm9ybWF0TG9jYXRpb24iLCAidHlwZU5hbWUiLCAidGltZXN0YW1wIiwgImZvcm1hdHRlZCIsICJsaW1pdCIsICJwcmVwIiwgInByZXBhcmVPYmplY3RTdGFja1RyYWNlIiwgImZuIiwgImRlcHJlY2F0ZWRmbiIsICJzdGFja1N0cmluZyIsICJjb25zdGFudHMiLCAiT3JpZ2luYWxBZ2VudCIsICJJTklUX1NPQ0tFVCIsICJDVVJSRU5UX0lEIiwgIkNSRUFURV9JRCIsICJTT0NLRVRfQ1JFQVRFRF9USU1FIiwgIlNPQ0tFVF9OQU1FIiwgIlNPQ0tFVF9SRVFVRVNUX0NPVU5UIiwgIlNPQ0tFVF9SRVFVRVNUX0ZJTklTSEVEX0NPVU5UIiwgInJlcXVpcmUkJDQiLCAiZGVmYXVsdFRpbWVvdXRMaXN0ZW5lckNvdW50IiwgIm1ham9yVmVyc2lvbiIsICJBZ2VudCIsICJzb2NrZXQiLCAidGltZW91dCIsICJmcmVlU29ja2V0VGltZW91dCIsICJzb2NrZXRBY3RpdmVUVEwiLCAiYWxpdmVUaW1lIiwgImRpZmYiLCAicmVzdWx0IiwgImN1c3RvbVRpbWVvdXQiLCAicmVxIiwgImFnZW50VGltZW91dCIsICJnZXRTb2NrZXRUaW1lb3V0IiwgImlkIiwgImluc3RhbGxMaXN0ZW5lcnMiLCAib25jcmVhdGUiLCAiY2FsbGVkIiwgIm9uTmV3Q3JlYXRlIiwgIm5ld1NvY2tldCIsICJjaGFuZ2VkIiwgImluc3BlY3QiLCAiYWdlbnQiLCAib25GcmVlIiwgIm9uQ2xvc2UiLCAiaXNFcnJvciIsICJvblRpbWVvdXQiLCAibGlzdGVuZXJDb3VudCIsICJyZXFUaW1lb3V0TGlzdGVuZXJDb3VudCIsICJmIiwgIm9uRXJyb3IiLCAib25SZW1vdmUiLCAicmVzIiwgIk9yaWdpbmFsSHR0cHNBZ2VudCIsICJIdHRwQWdlbnQiLCAiQ1JFQVRFX0hUVFBTX0NPTk5FQ1RJT04iLCAiSHR0cHNBZ2VudCIsICJtZXRob2QiLCAiaHR0cHNfYWdlbnQiLCAiYWdlbnRrZWVwYWxpdmVNb2R1bGUiLCAib2JqVG9TdHJpbmciLCAib2JqS2V5cyIsICJpc0FycmF5UHJvcCIsICJtYXgiLCAicHJvcFZhbCIsICJ0b1N0ciIsICJmYXN0U3RhYmxlU3RyaW5naWZ5IiwgInJldHVyblZhbCIsICJNSU5JTVVNX1NMT1RfUEVSX0VQT0NIIiwgInRyYWlsaW5nWmVyb3MiLCAibmV4dFBvd2VyT2ZUd28iLCAiRXBvY2hTY2hlZHVsZSIsICJzbG90c1BlckVwb2NoIiwgImxlYWRlclNjaGVkdWxlU2xvdE9mZnNldCIsICJ3YXJtdXAiLCAiZmlyc3ROb3JtYWxFcG9jaCIsICJmaXJzdE5vcm1hbFNsb3QiLCAiZ2V0RXBvY2giLCAiZ2V0RXBvY2hBbmRTbG90SW5kZXgiLCAiZXBvY2giLCAiZXBvY2hMZW4iLCAiZ2V0U2xvdHNJbkVwb2NoIiwgInNsb3RJbmRleCIsICJub3JtYWxTbG90SW5kZXgiLCAibm9ybWFsRXBvY2hJbmRleCIsICJmbG9vciIsICJnZXRGaXJzdFNsb3RJbkVwb2NoIiwgInBvdyIsICJnZXRMYXN0U2xvdEluRXBvY2giLCAiU2VuZFRyYW5zYWN0aW9uRXJyb3IiLCAibG9ncyIsICJTb2xhbmFKU09OUlBDRXJyb3JDb2RlIiwgIkpTT05fUlBDX1NFUlZFUl9FUlJPUl9CTE9DS19DTEVBTkVEX1VQIiwgIkpTT05fUlBDX1NFUlZFUl9FUlJPUl9TRU5EX1RSQU5TQUNUSU9OX1BSRUZMSUdIVF9GQUlMVVJFIiwgIkpTT05fUlBDX1NFUlZFUl9FUlJPUl9UUkFOU0FDVElPTl9TSUdOQVRVUkVfVkVSSUZJQ0FUSU9OX0ZBSUxVUkUiLCAiSlNPTl9SUENfU0VSVkVSX0VSUk9SX0JMT0NLX05PVF9BVkFJTEFCTEUiLCAiSlNPTl9SUENfU0VSVkVSX0VSUk9SX05PREVfVU5IRUFMVEhZIiwgIkpTT05fUlBDX1NFUlZFUl9FUlJPUl9UUkFOU0FDVElPTl9QUkVDT01QSUxFX1ZFUklGSUNBVElPTl9GQUlMVVJFIiwgIkpTT05fUlBDX1NFUlZFUl9FUlJPUl9TTE9UX1NLSVBQRUQiLCAiSlNPTl9SUENfU0VSVkVSX0VSUk9SX05PX1NOQVBTSE9UIiwgIkpTT05fUlBDX1NFUlZFUl9FUlJPUl9MT05HX1RFUk1fU1RPUkFHRV9TTE9UX1NLSVBQRUQiLCAiSlNPTl9SUENfU0VSVkVSX0VSUk9SX0tFWV9FWENMVURFRF9GUk9NX1NFQ09OREFSWV9JTkRFWCIsICJKU09OX1JQQ19TRVJWRVJfRVJST1JfVFJBTlNBQ1RJT05fSElTVE9SWV9OT1RfQVZBSUxBQkxFIiwgIkpTT05fUlBDX1NDQU5fRVJST1IiLCAiSlNPTl9SUENfU0VSVkVSX0VSUk9SX1RSQU5TQUNUSU9OX1NJR05BVFVSRV9MRU5fTUlTTUFUQ0giLCAiSlNPTl9SUENfU0VSVkVSX0VSUk9SX0JMT0NLX1NUQVRVU19OT1RfQVZBSUxBQkxFX1lFVCIsICJKU09OX1JQQ19TRVJWRVJfRVJST1JfVU5TVVBQT1JURURfVFJBTlNBQ1RJT05fVkVSU0lPTiIsICJKU09OX1JQQ19TRVJWRVJfRVJST1JfTUlOX0NPTlRFWFRfU0xPVF9OT1RfUkVBQ0hFRCIsICJTb2xhbmFKU09OUlBDRXJyb3IiLCAiY29kZSIsICJjdXN0b21NZXNzYWdlIiwgImZldGNoSW1wbCIsICJnbG9iYWxUaGlzIiwgImZldGNoIiwgImlucHV0IiwgInByb2Nlc3NlZElucHV0IiwgIm5vZGVGZXRjaCIsICJScGNXZWJTb2NrZXRDbGllbnQiLCAiUnBjV2ViU29ja2V0Q29tbW9uQ2xpZW50IiwgImdlbmVyYXRlX3JlcXVlc3RfaWQiLCAid2ViU29ja2V0RmFjdG9yeSIsICJ1cmwiLCAicnBjIiwgImNyZWF0ZVJwYyIsICJhdXRvY29ubmVjdCIsICJtYXhfcmVjb25uZWN0cyIsICJyZWNvbm5lY3QiLCAicmVjb25uZWN0X2ludGVydmFsIiwgInVuZGVybHlpbmdTb2NrZXQiLCAicmVhZHlTdGF0ZSIsICJyZWplY3QiLCAibm90aWZ5IiwgIkxPT0tVUF9UQUJMRV9NRVRBX1NJWkUiLCAiQWRkcmVzc0xvb2t1cFRhYmxlQWNjb3VudCIsICJpc0FjdGl2ZSIsICJVNjRfTUFYIiwgImRlYWN0aXZhdGlvblNsb3QiLCAiYWNjb3VudERhdGEiLCAiTG9va3VwVGFibGVNZXRhTGF5b3V0IiwgInNlcmlhbGl6ZWRBZGRyZXNzZXNMZW4iLCAibnVtU2VyaWFsaXplZEFkZHJlc3NlcyIsICJsYXN0RXh0ZW5kZWRTbG90IiwgImxhc3RFeHRlbmRlZFNsb3RTdGFydEluZGV4IiwgImxhc3RFeHRlbmRlZFN0YXJ0SW5kZXgiLCAiYXV0aG9yaXR5IiwgIlVSTF9SRSIsICJtYWtlV2Vic29ja2V0VXJsIiwgImVuZHBvaW50IiwgImhvc3Rpc2giLCAicG9ydFdpdGhDb2xvbiIsICJyZXN0IiwgInByb3RvY29sIiwgInN0YXJ0c1dpdGgiLCAic3RhcnRQb3J0IiwgInBhcnNlSW50IiwgIndlYnNvY2tldFBvcnQiLCAiUHVibGljS2V5RnJvbVN0cmluZyIsICJpbnN0YW5jZSIsICJzdHJpbmciLCAiUmF3QWNjb3VudERhdGFSZXN1bHQiLCAidHVwbGUiLCAibGl0ZXJhbCIsICJCdWZmZXJGcm9tUmF3QWNjb3VudERhdGEiLCAiQkxPQ0tIQVNIX0NBQ0hFX1RJTUVPVVRfTVMiLCAiYXNzZXJ0RW5kcG9pbnRVcmwiLCAicHV0YXRpdmVVcmwiLCAidGVzdCIsICJleHRyYWN0Q29tbWl0bWVudEZyb21Db25maWciLCAiY29tbWl0bWVudE9yQ29uZmlnIiwgInNwZWNpZmllZENvbW1pdG1lbnQiLCAic3BlY2lmaWVkQ29uZmlnIiwgImNyZWF0ZVJwY1Jlc3VsdCIsICJ1bmlvbiIsICJwaWNrIiwgImpzb25ycGMiLCAidW5rbm93biIsICJvcHRpb25hbCIsICJhbnkiLCAiVW5rbm93blJwY1Jlc3VsdCIsICJqc29uUnBjUmVzdWx0IiwgInNjaGVtYSIsICJjcmVhdGUiLCAianNvblJwY1Jlc3VsdEFuZENvbnRleHQiLCAibnVtYmVyIiwgIm5vdGlmaWNhdGlvblJlc3VsdEFuZENvbnRleHQiLCAidmVyc2lvbmVkTWVzc2FnZUZyb21SZXNwb25zZSIsICJyZXNwb25zZSIsICJHZXRJbmZsYXRpb25Hb3Zlcm5vclJlc3VsdCIsICJmb3VuZGF0aW9uIiwgImZvdW5kYXRpb25UZXJtIiwgImluaXRpYWwiLCAidGFwZXIiLCAidGVybWluYWwiLCAiR2V0SW5mbGF0aW9uUmV3YXJkUmVzdWx0IiwgIm51bGxhYmxlIiwgImVmZmVjdGl2ZVNsb3QiLCAiYW1vdW50IiwgInBvc3RCYWxhbmNlIiwgImNvbW1pc3Npb24iLCAiR2V0UmVjZW50UHJpb3JpdGl6YXRpb25GZWVzUmVzdWx0IiwgInByaW9yaXRpemF0aW9uRmVlIiwgIkdldEluZmxhdGlvblJhdGVSZXN1bHQiLCAidG90YWwiLCAidmFsaWRhdG9yIiwgIkdldEVwb2NoSW5mb1Jlc3VsdCIsICJzbG90c0luRXBvY2giLCAiYWJzb2x1dGVTbG90IiwgImJsb2NrSGVpZ2h0IiwgInRyYW5zYWN0aW9uQ291bnQiLCAiR2V0RXBvY2hTY2hlZHVsZVJlc3VsdCIsICJib29sZWFuIiwgIkdldExlYWRlclNjaGVkdWxlUmVzdWx0IiwgInJlY29yZCIsICJUcmFuc2FjdGlvbkVycm9yUmVzdWx0IiwgIlNpZ25hdHVyZVN0YXR1c1Jlc3VsdCIsICJTaWduYXR1cmVSZWNlaXZlZFJlc3VsdCIsICJWZXJzaW9uUmVzdWx0IiwgIlNpbXVsYXRlZFRyYW5zYWN0aW9uUmVzcG9uc2VTdHJ1Y3QiLCAicmVudEVwb2NoIiwgInVuaXRzQ29uc3VtZWQiLCAicmV0dXJuRGF0YSIsICJCbG9ja1Byb2R1Y3Rpb25SZXNwb25zZVN0cnVjdCIsICJieUlkZW50aXR5IiwgInJhbmdlIiwgImZpcnN0U2xvdCIsICJsYXN0U2xvdCIsICJjcmVhdGVScGNDbGllbnQiLCAiaHR0cEhlYWRlcnMiLCAiY3VzdG9tRmV0Y2giLCAiZmV0Y2hNaWRkbGV3YXJlIiwgImRpc2FibGVSZXRyeU9uUmF0ZUxpbWl0IiwgImh0dHBBZ2VudCIsICJhZ2VudE9wdGlvbnMiLCAia2VlcEFsaXZlIiwgIm1heFNvY2tldHMiLCAiSHR0cHNLZWVwQWxpdmVBZ2VudCIsICJIdHRwS2VlcEFsaXZlQWdlbnQiLCAiaXNIdHRwcyIsICJOb2RlSHR0cHNBZ2VudCIsICJmZXRjaFdpdGhNaWRkbGV3YXJlIiwgImluZm8iLCAibW9kaWZpZWRGZXRjaEFyZ3MiLCAibW9kaWZpZWRJbmZvIiwgIm1vZGlmaWVkSW5pdCIsICJScGNDbGllbnQiLCAicmVxdWVzdCIsICJjYWxsYmFjayIsICJib2R5IiwgImhlYWRlcnMiLCAiQ09NTU9OX0hUVFBfSEVBREVSUyIsICJ0b29fbWFueV9yZXF1ZXN0c19yZXRyaWVzIiwgIndhaXRUaW1lIiwgInN0YXR1c1RleHQiLCAidGV4dCIsICJvayIsICJjcmVhdGVScGNSZXF1ZXN0IiwgImNsaWVudCIsICJjcmVhdGVScGNCYXRjaFJlcXVlc3QiLCAicmVxdWVzdHMiLCAiYmF0Y2giLCAibWV0aG9kTmFtZSIsICJHZXRJbmZsYXRpb25Hb3Zlcm5vclJwY1Jlc3VsdCIsICJHZXRJbmZsYXRpb25SYXRlUnBjUmVzdWx0IiwgIkdldFJlY2VudFByaW9yaXRpemF0aW9uRmVlc1JwY1Jlc3VsdCIsICJHZXRFcG9jaEluZm9ScGNSZXN1bHQiLCAiR2V0RXBvY2hTY2hlZHVsZVJwY1Jlc3VsdCIsICJHZXRMZWFkZXJTY2hlZHVsZVJwY1Jlc3VsdCIsICJTbG90UnBjUmVzdWx0IiwgIkdldFN1cHBseVJwY1Jlc3VsdCIsICJjaXJjdWxhdGluZyIsICJub25DaXJjdWxhdGluZyIsICJub25DaXJjdWxhdGluZ0FjY291bnRzIiwgIlRva2VuQW1vdW50UmVzdWx0IiwgInVpQW1vdW50IiwgImRlY2ltYWxzIiwgInVpQW1vdW50U3RyaW5nIiwgIkdldFRva2VuTGFyZ2VzdEFjY291bnRzUmVzdWx0IiwgIkdldFRva2VuQWNjb3VudHNCeU93bmVyIiwgIlBhcnNlZEFjY291bnREYXRhUmVzdWx0IiwgInBhcnNlZCIsICJHZXRQYXJzZWRUb2tlbkFjY291bnRzQnlPd25lciIsICJHZXRMYXJnZXN0QWNjb3VudHNScGNSZXN1bHQiLCAiQWNjb3VudEluZm9SZXN1bHQiLCAiS2V5ZWRBY2NvdW50SW5mb1Jlc3VsdCIsICJQYXJzZWRPclJhd0FjY291bnREYXRhIiwgIlBhcnNlZEFjY291bnRJbmZvUmVzdWx0IiwgIktleWVkUGFyc2VkQWNjb3VudEluZm9SZXN1bHQiLCAiU3Rha2VBY3RpdmF0aW9uUmVzdWx0IiwgImFjdGl2ZSIsICJpbmFjdGl2ZSIsICJHZXRDb25maXJtZWRTaWduYXR1cmVzRm9yQWRkcmVzczJScGNSZXN1bHQiLCAibWVtbyIsICJibG9ja1RpbWUiLCAiR2V0U2lnbmF0dXJlc0ZvckFkZHJlc3NScGNSZXN1bHQiLCAiQWNjb3VudE5vdGlmaWNhdGlvblJlc3VsdCIsICJzdWJzY3JpcHRpb24iLCAiUHJvZ3JhbUFjY291bnRJbmZvUmVzdWx0IiwgIlByb2dyYW1BY2NvdW50Tm90aWZpY2F0aW9uUmVzdWx0IiwgIlNsb3RJbmZvUmVzdWx0IiwgInBhcmVudCIsICJyb290IiwgIlNsb3ROb3RpZmljYXRpb25SZXN1bHQiLCAiU2xvdFVwZGF0ZVJlc3VsdCIsICJzdGF0cyIsICJudW1UcmFuc2FjdGlvbkVudHJpZXMiLCAibnVtU3VjY2Vzc2Z1bFRyYW5zYWN0aW9ucyIsICJudW1GYWlsZWRUcmFuc2FjdGlvbnMiLCAibWF4VHJhbnNhY3Rpb25zUGVyRW50cnkiLCAiU2xvdFVwZGF0ZU5vdGlmaWNhdGlvblJlc3VsdCIsICJTaWduYXR1cmVOb3RpZmljYXRpb25SZXN1bHQiLCAiUm9vdE5vdGlmaWNhdGlvblJlc3VsdCIsICJDb250YWN0SW5mb1Jlc3VsdCIsICJnb3NzaXAiLCAidHB1IiwgIlZvdGVBY2NvdW50SW5mb1Jlc3VsdCIsICJ2b3RlUHVia2V5IiwgIm5vZGVQdWJrZXkiLCAiYWN0aXZhdGVkU3Rha2UiLCAiZXBvY2hWb3RlQWNjb3VudCIsICJlcG9jaENyZWRpdHMiLCAibGFzdFZvdGUiLCAicm9vdFNsb3QiLCAiR2V0Vm90ZUFjY291bnRzIiwgImN1cnJlbnQiLCAiZGVsaW5xdWVudCIsICJDb25maXJtYXRpb25TdGF0dXMiLCAiU2lnbmF0dXJlU3RhdHVzUmVzcG9uc2UiLCAiY29uZmlybWF0aW9ucyIsICJjb25maXJtYXRpb25TdGF0dXMiLCAiR2V0U2lnbmF0dXJlU3RhdHVzZXNScGNSZXN1bHQiLCAiR2V0TWluaW11bUJhbGFuY2VGb3JSZW50RXhlbXB0aW9uUnBjUmVzdWx0IiwgIkFkZHJlc3NUYWJsZUxvb2t1cFN0cnVjdCIsICJDb25maXJtZWRUcmFuc2FjdGlvblJlc3VsdCIsICJBbm5vdGF0ZWRBY2NvdW50S2V5IiwgInNvdXJjZSIsICJDb25maXJtZWRUcmFuc2FjdGlvbkFjY291bnRzTW9kZVJlc3VsdCIsICJQYXJzZWRJbnN0cnVjdGlvblJlc3VsdCIsICJSYXdJbnN0cnVjdGlvblJlc3VsdCIsICJJbnN0cnVjdGlvblJlc3VsdCIsICJVbmtub3duSW5zdHJ1Y3Rpb25SZXN1bHQiLCAiUGFyc2VkT3JSYXdJbnN0cnVjdGlvbiIsICJQYXJzZWRDb25maXJtZWRUcmFuc2FjdGlvblJlc3VsdCIsICJUb2tlbkJhbGFuY2VSZXN1bHQiLCAiYWNjb3VudEluZGV4IiwgIm1pbnQiLCAidWlUb2tlbkFtb3VudCIsICJMb2FkZWRBZGRyZXNzZXNSZXN1bHQiLCAiQ29uZmlybWVkVHJhbnNhY3Rpb25NZXRhUmVzdWx0IiwgImZlZSIsICJpbm5lckluc3RydWN0aW9ucyIsICJwcmVCYWxhbmNlcyIsICJwb3N0QmFsYW5jZXMiLCAibG9nTWVzc2FnZXMiLCAicHJlVG9rZW5CYWxhbmNlcyIsICJwb3N0VG9rZW5CYWxhbmNlcyIsICJsb2FkZWRBZGRyZXNzZXMiLCAiY29tcHV0ZVVuaXRzQ29uc3VtZWQiLCAiUGFyc2VkQ29uZmlybWVkVHJhbnNhY3Rpb25NZXRhUmVzdWx0IiwgIlRyYW5zYWN0aW9uVmVyc2lvblN0cnVjdCIsICJSZXdhcmRzUmVzdWx0IiwgInJld2FyZFR5cGUiLCAiR2V0QmxvY2tScGNSZXN1bHQiLCAicHJldmlvdXNCbG9ja2hhc2giLCAicGFyZW50U2xvdCIsICJyZXdhcmRzIiwgIkdldE5vbmVNb2RlQmxvY2tScGNSZXN1bHQiLCAiR2V0QWNjb3VudHNNb2RlQmxvY2tScGNSZXN1bHQiLCAiR2V0UGFyc2VkQmxvY2tScGNSZXN1bHQiLCAiR2V0UGFyc2VkQWNjb3VudHNNb2RlQmxvY2tScGNSZXN1bHQiLCAiR2V0UGFyc2VkTm9uZU1vZGVCbG9ja1JwY1Jlc3VsdCIsICJHZXRDb25maXJtZWRCbG9ja1JwY1Jlc3VsdCIsICJHZXRCbG9ja1NpZ25hdHVyZXNScGNSZXN1bHQiLCAiR2V0VHJhbnNhY3Rpb25ScGNSZXN1bHQiLCAiR2V0UGFyc2VkVHJhbnNhY3Rpb25ScGNSZXN1bHQiLCAiR2V0UmVjZW50QmxvY2toYXNoQW5kQ29udGV4dFJwY1Jlc3VsdCIsICJsYW1wb3J0c1BlclNpZ25hdHVyZSIsICJHZXRMYXRlc3RCbG9ja2hhc2hScGNSZXN1bHQiLCAiSXNCbG9ja2hhc2hWYWxpZFJwY1Jlc3VsdCIsICJQZXJmU2FtcGxlUmVzdWx0IiwgIm51bVRyYW5zYWN0aW9ucyIsICJudW1TbG90cyIsICJzYW1wbGVQZXJpb2RTZWNzIiwgIkdldFJlY2VudFBlcmZvcm1hbmNlU2FtcGxlc1JwY1Jlc3VsdCIsICJHZXRGZWVDYWxjdWxhdG9yUnBjUmVzdWx0IiwgIlJlcXVlc3RBaXJkcm9wUnBjUmVzdWx0IiwgIlNlbmRUcmFuc2FjdGlvblJwY1Jlc3VsdCIsICJMb2dzUmVzdWx0IiwgIkxvZ3NOb3RpZmljYXRpb25SZXN1bHQiLCAiQ29ubmVjdGlvbiIsICJfY29tbWl0bWVudCIsICJfY29uZmlybVRyYW5zYWN0aW9uSW5pdGlhbFRpbWVvdXQiLCAiX3JwY1dzRW5kcG9pbnQiLCAiX3JwY0NsaWVudCIsICJfcnBjUmVxdWVzdCIsICJfcnBjQmF0Y2hSZXF1ZXN0IiwgIl9ycGNXZWJTb2NrZXQiLCAiX3JwY1dlYlNvY2tldENvbm5lY3RlZCIsICJfcnBjV2ViU29ja2V0SGVhcnRiZWF0IiwgIl9ycGNXZWJTb2NrZXRJZGxlVGltZW91dCIsICJfcnBjV2ViU29ja2V0R2VuZXJhdGlvbiIsICJfZGlzYWJsZUJsb2NraGFzaENhY2hpbmciLCAiX3BvbGxpbmdCbG9ja2hhc2giLCAiX2Jsb2NraGFzaEluZm8iLCAibGF0ZXN0QmxvY2toYXNoIiwgImxhc3RGZXRjaCIsICJ0cmFuc2FjdGlvblNpZ25hdHVyZXMiLCAic2ltdWxhdGVkU2lnbmF0dXJlcyIsICJfbmV4dENsaWVudFN1YnNjcmlwdGlvbklkIiwgIl9zdWJzY3JpcHRpb25EaXNwb3NlRnVuY3Rpb25zQnlDbGllbnRTdWJzY3JpcHRpb25JZCIsICJfc3Vic2NyaXB0aW9uSGFzaEJ5Q2xpZW50U3Vic2NyaXB0aW9uSWQiLCAiX3N1YnNjcmlwdGlvblN0YXRlQ2hhbmdlQ2FsbGJhY2tzQnlIYXNoIiwgIl9zdWJzY3JpcHRpb25DYWxsYmFja3NCeVNlcnZlclN1YnNjcmlwdGlvbklkIiwgIl9zdWJzY3JpcHRpb25zQnlIYXNoIiwgIl9zdWJzY3JpcHRpb25zQXV0b0Rpc3Bvc2VkQnlScGMiLCAiZ2V0QmxvY2tIZWlnaHQiLCAicmVxdWVzdFByb21pc2VzIiwgIl9idWlsZEFyZ3MiLCAicmVxdWVzdEhhc2giLCAidW5zYWZlUmVzIiwgIndzRW5kcG9pbnQiLCAiY29uZmlybVRyYW5zYWN0aW9uSW5pdGlhbFRpbWVvdXQiLCAiSW5maW5pdHkiLCAib24iLCAiX3dzT25PcGVuIiwgIl93c09uRXJyb3IiLCAiX3dzT25DbG9zZSIsICJfd3NPbkFjY291bnROb3RpZmljYXRpb24iLCAiX3dzT25Qcm9ncmFtQWNjb3VudE5vdGlmaWNhdGlvbiIsICJfd3NPblNsb3ROb3RpZmljYXRpb24iLCAiX3dzT25TbG90VXBkYXRlc05vdGlmaWNhdGlvbiIsICJfd3NPblNpZ25hdHVyZU5vdGlmaWNhdGlvbiIsICJfd3NPblJvb3ROb3RpZmljYXRpb24iLCAiX3dzT25Mb2dzTm90aWZpY2F0aW9uIiwgInJwY0VuZHBvaW50IiwgImdldEJhbGFuY2VBbmRDb250ZXh0IiwgImdldEJhbGFuY2UiLCAidGhlbiIsICJjYXRjaCIsICJlIiwgImdldEJsb2NrVGltZSIsICJnZXRNaW5pbXVtTGVkZ2VyU2xvdCIsICJnZXRGaXJzdEF2YWlsYWJsZUJsb2NrIiwgImdldFN1cHBseSIsICJjb25maWdBcmciLCAiZ2V0VG9rZW5TdXBwbHkiLCAidG9rZW5NaW50QWRkcmVzcyIsICJnZXRUb2tlbkFjY291bnRCYWxhbmNlIiwgInRva2VuQWRkcmVzcyIsICJnZXRUb2tlbkFjY291bnRzQnlPd25lciIsICJvd25lckFkZHJlc3MiLCAiX2FyZ3MiLCAiZ2V0UGFyc2VkVG9rZW5BY2NvdW50c0J5T3duZXIiLCAiZ2V0TGFyZ2VzdEFjY291bnRzIiwgImFyZyIsICJnZXRUb2tlbkxhcmdlc3RBY2NvdW50cyIsICJtaW50QWRkcmVzcyIsICJnZXRBY2NvdW50SW5mb0FuZENvbnRleHQiLCAiZ2V0UGFyc2VkQWNjb3VudEluZm8iLCAiZ2V0TXVsdGlwbGVQYXJzZWRBY2NvdW50cyIsICJwdWJsaWNLZXlzIiwgInJhd0NvbmZpZyIsICJnZXRNdWx0aXBsZUFjY291bnRzSW5mb0FuZENvbnRleHQiLCAiZ2V0TXVsdGlwbGVBY2NvdW50c0luZm8iLCAiZ2V0U3Rha2VBY3RpdmF0aW9uIiwgImdldFByb2dyYW1BY2NvdW50cyIsICJjb25maWdPckNvbW1pdG1lbnQiLCAiZW5jb2RpbmciLCAiY29uZmlnV2l0aG91dEVuY29kaW5nIiwgImJhc2VTY2hlbWEiLCAid2l0aENvbnRleHQiLCAiZ2V0UGFyc2VkUHJvZ3JhbUFjY291bnRzIiwgInN0cmF0ZWd5IiwgInJhd1NpZ25hdHVyZSIsICJhYm9ydGVkIiwgInJlYXNvbiIsICJkZWNvZGVkU2lnbmF0dXJlIiwgImNvbmZpcm1UcmFuc2FjdGlvblVzaW5nTGVnYWN5VGltZW91dFN0cmF0ZWd5IiwgImNvbmZpcm1UcmFuc2FjdGlvblVzaW5nQmxvY2tIZWlnaHRFeGNlZWRhbmNlU3RyYXRlZ3kiLCAiY29uZmlybVRyYW5zYWN0aW9uVXNpbmdEdXJhYmxlTm9uY2VTdHJhdGVneSIsICJnZXRDYW5jZWxsYXRpb25Qcm9taXNlIiwgInNpZ25hbCIsICJhZGRFdmVudExpc3RlbmVyIiwgImdldFRyYW5zYWN0aW9uQ29uZmlybWF0aW9uUHJvbWlzZSIsICJzaWduYXR1cmVTdWJzY3JpcHRpb25JZCIsICJkaXNwb3NlU2lnbmF0dXJlU3Vic2NyaXB0aW9uU3RhdGVDaGFuZ2VPYnNlcnZlciIsICJkb25lIiwgImNvbmZpcm1hdGlvblByb21pc2UiLCAib25TaWduYXR1cmUiLCAiX190eXBlIiwgIlBST0NFU1NFRCIsICJzdWJzY3JpcHRpb25TZXR1cFByb21pc2UiLCAicmVzb2x2ZVN1YnNjcmlwdGlvblNldHVwIiwgIl9vblN1YnNjcmlwdGlvblN0YXRlQ2hhbmdlIiwgIm5leHRTdGF0ZSIsICJnZXRTaWduYXR1cmVTdGF0dXMiLCAiYWJvcnRDb25maXJtYXRpb24iLCAicmVtb3ZlU2lnbmF0dXJlTGlzdGVuZXIiLCAiZXhwaXJ5UHJvbWlzZSIsICJjaGVja0Jsb2NrSGVpZ2h0IiwgImN1cnJlbnRCbG9ja0hlaWdodCIsICJCTE9DS0hFSUdIVF9FWENFRURFRCIsICJjYW5jZWxsYXRpb25Qcm9taXNlIiwgIm91dGNvbWUiLCAicmFjZSIsICJjdXJyZW50Tm9uY2VWYWx1ZSIsICJsYXN0Q2hlY2tlZFNsb3QiLCAiZ2V0Q3VycmVudE5vbmNlVmFsdWUiLCAiZ2V0Tm9uY2VBbmRDb250ZXh0IiwgIk5PTkNFX0lOVkFMSUQiLCAic2xvdEluV2hpY2hOb25jZURpZEFkdmFuY2UiLCAic2lnbmF0dXJlU3RhdHVzIiwgImNvbW1pdG1lbnRGb3JTdGF0dXMiLCAidGltZW91dElkIiwgInRpbWVvdXRNcyIsICJUSU1FRF9PVVQiLCAiY2xlYXJUaW1lb3V0IiwgImdldENsdXN0ZXJOb2RlcyIsICJnZXRWb3RlQWNjb3VudHMiLCAiZ2V0U2xvdExlYWRlciIsICJnZXRTbG90TGVhZGVycyIsICJzdGFydFNsb3QiLCAiZ2V0U2lnbmF0dXJlU3RhdHVzZXMiLCAiZ2V0VHJhbnNhY3Rpb25Db3VudCIsICJnZXRUb3RhbFN1cHBseSIsICJleGNsdWRlTm9uQ2lyY3VsYXRpbmdBY2NvdW50c0xpc3QiLCAiZ2V0SW5mbGF0aW9uR292ZXJub3IiLCAiZ2V0SW5mbGF0aW9uUmV3YXJkIiwgImdldEluZmxhdGlvblJhdGUiLCAiZ2V0RXBvY2hJbmZvIiwgImdldEVwb2NoU2NoZWR1bGUiLCAiZXBvY2hTY2hlZHVsZSIsICJnZXRMZWFkZXJTY2hlZHVsZSIsICJnZXRSZWNlbnRCbG9ja2hhc2hBbmRDb250ZXh0IiwgImdldFJlY2VudFBlcmZvcm1hbmNlU2FtcGxlcyIsICJnZXRGZWVDYWxjdWxhdG9yRm9yQmxvY2toYXNoIiwgIndpcmVNZXNzYWdlIiwgImdldFJlY2VudFByaW9yaXRpemF0aW9uRmVlcyIsICJsb2NrZWRXcml0YWJsZUFjY291bnRzIiwgImdldFJlY2VudEJsb2NraGFzaCIsICJnZXRMYXRlc3RCbG9ja2hhc2giLCAiZ2V0TGF0ZXN0QmxvY2toYXNoQW5kQ29udGV4dCIsICJpc0Jsb2NraGFzaFZhbGlkIiwgImdldFZlcnNpb24iLCAiZ2V0R2VuZXNpc0hhc2giLCAiZ2V0QmxvY2siLCAiX2J1aWxkQXJnc0F0TGVhc3RDb25maXJtZWQiLCAidHJhbnNhY3Rpb25EZXRhaWxzIiwgImdldFBhcnNlZEJsb2NrIiwgImdldEJsb2NrUHJvZHVjdGlvbiIsICJleHRyYSIsICJnZXRUcmFuc2FjdGlvbiIsICJnZXRQYXJzZWRUcmFuc2FjdGlvbiIsICJnZXRQYXJzZWRUcmFuc2FjdGlvbnMiLCAiZ2V0VHJhbnNhY3Rpb25zIiwgImdldENvbmZpcm1lZEJsb2NrIiwgImJsb2NrIiwgImdldEJsb2NrcyIsICJlbmRTbG90IiwgImdldEJsb2NrU2lnbmF0dXJlcyIsICJnZXRDb25maXJtZWRCbG9ja1NpZ25hdHVyZXMiLCAiZ2V0Q29uZmlybWVkVHJhbnNhY3Rpb24iLCAiZ2V0UGFyc2VkQ29uZmlybWVkVHJhbnNhY3Rpb24iLCAiZ2V0UGFyc2VkQ29uZmlybWVkVHJhbnNhY3Rpb25zIiwgImdldENvbmZpcm1lZFNpZ25hdHVyZXNGb3JBZGRyZXNzIiwgImZpcnN0QXZhaWxhYmxlQmxvY2siLCAidW50aWwiLCAiaGlnaGVzdENvbmZpcm1lZFJvb3QiLCAiYmVmb3JlIiwgImdldENvbmZpcm1lZFNpZ25hdHVyZXNGb3JBZGRyZXNzMiIsICJnZXRTaWduYXR1cmVzRm9yQWRkcmVzcyIsICJnZXRBZGRyZXNzTG9va3VwVGFibGUiLCAiYWNjb3VudEluZm8iLCAiZ2V0Tm9uY2UiLCAicmVxdWVzdEFpcmRyb3AiLCAidG8iLCAiX2Jsb2NraGFzaFdpdGhFeHBpcnlCbG9ja0hlaWdodCIsICJkaXNhYmxlQ2FjaGUiLCAiZXhwaXJlZCIsICJEYXRlIiwgIm5vdyIsICJfcG9sbE5ld0Jsb2NraGFzaCIsICJzdGFydFRpbWUiLCAiY2FjaGVkTGF0ZXN0QmxvY2toYXNoIiwgImNhY2hlZEJsb2NraGFzaCIsICJnZXRTdGFrZU1pbmltdW1EZWxlZ2F0aW9uIiwgInNpbXVsYXRlVHJhbnNhY3Rpb24iLCAidHJhbnNhY3Rpb25Pck1lc3NhZ2UiLCAiY29uZmlnT3JTaWduZXJzIiwgImluY2x1ZGVBY2NvdW50cyIsICJlbmNvZGVkVHJhbnNhY3Rpb24iLCAib3JpZ2luYWxUeCIsICJzaWdWZXJpZnkiLCAidHJhY2VJbmRlbnQiLCAibG9nVHJhY2UiLCAiam9pbiIsICJzaWduZXJzT3JPcHRpb25zIiwgInNlbmRSYXdUcmFuc2FjdGlvbiIsICJyYXdUcmFuc2FjdGlvbiIsICJzZW5kRW5jb2RlZFRyYW5zYWN0aW9uIiwgInNldEludGVydmFsIiwgIl91cGRhdGVTdWJzY3JpcHRpb25zIiwgIk51bWJlciIsICJNQVhfU0FGRV9JTlRFR0VSIiwgImNsZWFySW50ZXJ2YWwiLCAiX3NldFN1YnNjcmlwdGlvbiIsICJuZXh0U3Vic2NyaXB0aW9uIiwgInByZXZTdGF0ZSIsICJzdGF0ZUNoYW5nZUNhbGxiYWNrcyIsICJjYiIsICJjbGllbnRTdWJzY3JpcHRpb25JZCIsICJjbG9zZSIsICJjb25uZWN0IiwgImFjdGl2ZVdlYlNvY2tldEdlbmVyYXRpb24iLCAiaXNDdXJyZW50Q29ubmVjdGlvblN0aWxsQWN0aXZlIiwgImNhbGxiYWNrcyIsICJzZXJ2ZXJTdWJzY3JpcHRpb25JZCIsICJ1bnN1YnNjcmliZU1ldGhvZCIsICJfaGFuZGxlU2VydmVyTm90aWZpY2F0aW9uIiwgImNhbGxiYWNrQXJncyIsICJub3RpZmljYXRpb24iLCAiX21ha2VTdWJzY3JpcHRpb24iLCAic3Vic2NyaXB0aW9uQ29uZmlnIiwgImV4aXN0aW5nU3Vic2NyaXB0aW9uIiwgIm9uQWNjb3VudENoYW5nZSIsICJyZW1vdmVBY2NvdW50Q2hhbmdlTGlzdGVuZXIiLCAiX3Vuc3Vic2NyaWJlQ2xpZW50U3Vic2NyaXB0aW9uIiwgImFjY291bnRJZCIsICJvblByb2dyYW1BY2NvdW50Q2hhbmdlIiwgImZpbHRlcnMiLCAicmVtb3ZlUHJvZ3JhbUFjY291bnRDaGFuZ2VMaXN0ZW5lciIsICJvbkxvZ3MiLCAibWVudGlvbnMiLCAicmVtb3ZlT25Mb2dzTGlzdGVuZXIiLCAib25TbG90Q2hhbmdlIiwgInJlbW92ZVNsb3RDaGFuZ2VMaXN0ZW5lciIsICJvblNsb3RVcGRhdGUiLCAicmVtb3ZlU2xvdFVwZGF0ZUxpc3RlbmVyIiwgInN1YnNjcmlwdGlvbk5hbWUiLCAiZGlzcG9zZSIsICJvdmVycmlkZSIsICJvblNpZ25hdHVyZVdpdGhPcHRpb25zIiwgIm9uUm9vdENoYW5nZSIsICJyZW1vdmVSb290Q2hhbmdlTGlzdGVuZXIiLCAiS2V5cGFpciIsICJrZXlwYWlyIiwgIl9rZXlwYWlyIiwgImdlbmVyYXRlIiwgImZyb21TZWNyZXRLZXkiLCAic2tpcFZhbGlkYXRpb24iLCAiY29tcHV0ZWRQdWJsaWNLZXkiLCAiaWkiLCAiZnJvbVNlZWQiLCAiTE9PS1VQX1RBQkxFX0lOU1RSVUNUSU9OX0xBWU9VVFMiLCAiQ3JlYXRlTG9va3VwVGFibGUiLCAiYmlnaW50TGF5b3V0IiwgIkZyZWV6ZUxvb2t1cFRhYmxlIiwgIkV4dGVuZExvb2t1cFRhYmxlIiwgIkRlYWN0aXZhdGVMb29rdXBUYWJsZSIsICJDbG9zZUxvb2t1cFRhYmxlIiwgIkFkZHJlc3NMb29rdXBUYWJsZUluc3RydWN0aW9uIiwgImxheW91dFR5cGUiLCAiZGVjb2RlQ3JlYXRlTG9va3VwVGFibGUiLCAiY2hlY2tLZXlzTGVuZ3RoIiwgInJlY2VudFNsb3QiLCAiZGVjb2RlRXh0ZW5kTG9va3VwVGFibGUiLCAiZGVjb2RlQ2xvc2VMb29rdXBUYWJsZSIsICJyZWNpcGllbnQiLCAiZGVjb2RlRnJlZXplTG9va3VwVGFibGUiLCAiZGVjb2RlRGVhY3RpdmF0ZUxvb2t1cFRhYmxlIiwgIkFkZHJlc3NMb29rdXBUYWJsZVByb2dyYW0iLCAiY3JlYXRlTG9va3VwVGFibGUiLCAibG9va3VwVGFibGVBZGRyZXNzIiwgImJ1bXBTZWVkIiwgImZyZWV6ZUxvb2t1cFRhYmxlIiwgImV4dGVuZExvb2t1cFRhYmxlIiwgImFkZHIiLCAiZGVhY3RpdmF0ZUxvb2t1cFRhYmxlIiwgImNsb3NlTG9va3VwVGFibGUiLCAiQ29tcHV0ZUJ1ZGdldEluc3RydWN0aW9uIiwgIkNPTVBVVEVfQlVER0VUX0lOU1RSVUNUSU9OX0xBWU9VVFMiLCAiZGVjb2RlUmVxdWVzdFVuaXRzIiwgInVuaXRzIiwgImFkZGl0aW9uYWxGZWUiLCAiUmVxdWVzdFVuaXRzIiwgImRlY29kZVJlcXVlc3RIZWFwRnJhbWUiLCAiUmVxdWVzdEhlYXBGcmFtZSIsICJkZWNvZGVTZXRDb21wdXRlVW5pdExpbWl0IiwgIlNldENvbXB1dGVVbml0TGltaXQiLCAiZGVjb2RlU2V0Q29tcHV0ZVVuaXRQcmljZSIsICJtaWNyb0xhbXBvcnRzIiwgIlNldENvbXB1dGVVbml0UHJpY2UiLCAiQ29tcHV0ZUJ1ZGdldFByb2dyYW0iLCAicmVxdWVzdFVuaXRzIiwgInJlcXVlc3RIZWFwRnJhbWUiLCAic2V0Q29tcHV0ZVVuaXRMaW1pdCIsICJzZXRDb21wdXRlVW5pdFByaWNlIiwgIlBSSVZBVEVfS0VZX0JZVEVTIiwgIlBVQkxJQ19LRVlfQllURVMiLCAiU0lHTkFUVVJFX0JZVEVTIiwgIkVEMjU1MTlfSU5TVFJVQ1RJT05fTEFZT1VUIiwgInUxNiIsICJFZDI1NTE5UHJvZ3JhbSIsICJjcmVhdGVJbnN0cnVjdGlvbldpdGhQdWJsaWNLZXkiLCAiaW5zdHJ1Y3Rpb25JbmRleCIsICJwdWJsaWNLZXlPZmZzZXQiLCAic2lnbmF0dXJlT2Zmc2V0IiwgIm1lc3NhZ2VEYXRhT2Zmc2V0IiwgIm51bVNpZ25hdHVyZXMiLCAicGFkZGluZyIsICJzaWduYXR1cmVJbnN0cnVjdGlvbkluZGV4IiwgInB1YmxpY0tleUluc3RydWN0aW9uSW5kZXgiLCAibWVzc2FnZURhdGFTaXplIiwgIm1lc3NhZ2VJbnN0cnVjdGlvbkluZGV4IiwgImNyZWF0ZUluc3RydWN0aW9uV2l0aFByaXZhdGVLZXkiLCAicHJpdmF0ZUtleSIsICJlY2RzYVNpZ24iLCAibXNnSGFzaCIsICJwcml2S2V5IiwgInNlY3AyNTZrMSIsICJ0b0NvbXBhY3RSYXdCeXRlcyIsICJyZWNvdmVyeSIsICJpc1ZhbGlkUHJpdmF0ZUtleSIsICJwdWJsaWNLZXlDcmVhdGUiLCAiRVRIRVJFVU1fQUREUkVTU19CWVRFUyIsICJTSUdOQVRVUkVfT0ZGU0VUU19TRVJJQUxJWkVEX1NJWkUiLCAiU0VDUDI1NksxX0lOU1RSVUNUSU9OX0xBWU9VVCIsICJTZWNwMjU2azFQcm9ncmFtIiwgInB1YmxpY0tleVRvRXRoQWRkcmVzcyIsICJrZWNjYWtfMjU2IiwgInJlY292ZXJ5SWQiLCAiY3JlYXRlSW5zdHJ1Y3Rpb25XaXRoRXRoQWRkcmVzcyIsICJldGhBZGRyZXNzIiwgInJhd0FkZHJlc3MiLCAic3Vic3RyIiwgImRhdGFTdGFydCIsICJldGhBZGRyZXNzT2Zmc2V0IiwgImV0aEFkZHJlc3NJbnN0cnVjdGlvbkluZGV4IiwgInBrZXkiLCAibWVzc2FnZUhhc2giLCAiU1RBS0VfQ09ORklHX0lEIiwgIkF1dGhvcml6ZWQiLCAic3Rha2VyIiwgIndpdGhkcmF3ZXIiLCAiTG9ja3VwIiwgInVuaXhUaW1lc3RhbXAiLCAiY3VzdG9kaWFuIiwgIl9jbGFzczIiLCAiU3Rha2VJbnN0cnVjdGlvbiIsICJTVEFLRV9JTlNUUlVDVElPTl9MQVlPVVRTIiwgImRlY29kZUluaXRpYWxpemUiLCAiSW5pdGlhbGl6ZSIsICJzdGFrZVB1YmtleSIsICJkZWNvZGVEZWxlZ2F0ZSIsICJEZWxlZ2F0ZSIsICJkZWNvZGVBdXRob3JpemUiLCAibmV3QXV0aG9yaXplZCIsICJzdGFrZUF1dGhvcml6YXRpb25UeXBlIiwgIkF1dGhvcml6ZSIsICJvIiwgImN1c3RvZGlhblB1YmtleSIsICJkZWNvZGVBdXRob3JpemVXaXRoU2VlZCIsICJhdXRob3JpdHlTZWVkIiwgImF1dGhvcml0eU93bmVyIiwgIkF1dGhvcml6ZVdpdGhTZWVkIiwgImF1dGhvcml0eUJhc2UiLCAiZGVjb2RlU3BsaXQiLCAiU3BsaXQiLCAic3BsaXRTdGFrZVB1YmtleSIsICJkZWNvZGVNZXJnZSIsICJNZXJnZSIsICJzb3VyY2VTdGFrZVB1YktleSIsICJkZWNvZGVXaXRoZHJhdyIsICJXaXRoZHJhdyIsICJkZWNvZGVEZWFjdGl2YXRlIiwgIkRlYWN0aXZhdGUiLCAiU3Rha2VQcm9ncmFtIiwgIlN0YWtlQXV0aG9yaXphdGlvbkxheW91dCIsICJTdGFrZXIiLCAiV2l0aGRyYXdlciIsICJpbml0aWFsaXplIiwgIm1heWJlTG9ja3VwIiwgImRlbGVnYXRlIiwgImF1dGhvcml6ZSIsICJhdXRob3JpemVXaXRoU2VlZCIsICJzcGxpdEluc3RydWN0aW9uIiwgInNwbGl0V2l0aFNlZWQiLCAibWVyZ2UiLCAid2l0aGRyYXciLCAiZGVhY3RpdmF0ZSIsICJWb3RlSW5pdCIsICJhdXRob3JpemVkVm90ZXIiLCAiYXV0aG9yaXplZFdpdGhkcmF3ZXIiLCAiVm90ZUluc3RydWN0aW9uIiwgIlZPVEVfSU5TVFJVQ1RJT05fTEFZT1VUUyIsICJkZWNvZGVJbml0aWFsaXplQWNjb3VudCIsICJJbml0aWFsaXplQWNjb3VudCIsICJ2b3RlQXV0aG9yaXphdGlvblR5cGUiLCAiY3VycmVudEF1dGhvcml0eURlcml2ZWRLZXlPd25lclB1YmtleSIsICJjdXJyZW50QXV0aG9yaXR5RGVyaXZlZEtleVNlZWQiLCAiY3VycmVudEF1dGhvcml0eURlcml2ZWRLZXlCYXNlUHVia2V5IiwgImF1dGhvcml6ZWRXaXRoZHJhd2VyUHVia2V5IiwgIlZvdGVQcm9ncmFtIiwgIlZvdGVBdXRob3JpemF0aW9uTGF5b3V0IiwgIlZvdGVyIiwgImluaXRpYWxpemVBY2NvdW50IiwgInNhZmVXaXRoZHJhdyIsICJjdXJyZW50Vm90ZUFjY291bnRCYWxhbmNlIiwgInJlbnRFeGVtcHRNaW5pbXVtIiwgIlZBTElEQVRPUl9JTkZPX0tFWSIsICJJbmZvU3RyaW5nIiwgIndlYnNpdGUiLCAiZGV0YWlscyIsICJrZXliYXNlVXNlcm5hbWUiLCAiVmFsaWRhdG9ySW5mbyIsICJmcm9tQ29uZmlnRGF0YSIsICJjb25maWdLZXlzIiwgInJhd0luZm8iLCAiYXNzZXJ0VHlwZSIsICJWT1RFX1BST0dSQU1fSUQiLCAiVm90ZUFjY291bnRMYXlvdXQiLCAiVm90ZUFjY291bnQiLCAidm90ZXMiLCAiYXV0aG9yaXplZFZvdGVycyIsICJwcmlvclZvdGVycyIsICJsYXN0VGltZXN0YW1wIiwgInZhIiwgInZlcnNpb25PZmZzZXQiLCAicm9vdFNsb3RWYWxpZCIsICJwYXJzZUF1dGhvcml6ZWRWb3RlciIsICJnZXRQcmlvclZvdGVycyIsICJwYXJzZVByaW9yVm90ZXJzIiwgImVwb2NoT2ZMYXN0QXV0aG9yaXplZFN3aXRjaCIsICJ0YXJnZXRFcG9jaCIsICJpZHgiLCAiaXNFbXB0eSIsICJodHRwIiwgImRldm5ldCIsICJ0ZXN0bmV0IiwgImh0dHBzIiwgImNsdXN0ZXJBcGlVcmwiLCAiY2x1c3RlciIsICJ0bHMiLCAic2VuZEFuZENvbmZpcm1SYXdUcmFuc2FjdGlvbiIsICJjb25maXJtYXRpb25TdHJhdGVneU9yQ29uZmlybU9wdGlvbnMiLCAibWF5YmVDb25maXJtT3B0aW9ucyIsICJjb25maXJtYXRpb25TdHJhdGVneSIsICJMQU1QT1JUU19QRVJfU09MIiwgInNvbWUiLCAidmFsdWUiLCAiX19vcHRpb24iLCAibm9uZSIsICJfX25hbWUiLCAiaXNPcHRpb24iLCAiaW5wdXQiLCAiaXNTb21lIiwgIm9wdGlvbiIsICJpc05vbmUiLCAidW53cmFwT3B0aW9uIiwgIm9wdGlvbiIsICJmYWxsYmFjayIsICJpc1NvbWUiLCAidmFsdWUiLCAid3JhcE51bGxhYmxlIiwgIm51bGxhYmxlIiwgInNvbWUiLCAibm9uZSIsICJ1bndyYXBTb21lIiwgInVud3JhcFNvbWVPckVsc2UiLCAiX19uYW1lIiwgInVud3JhcE9wdGlvblJlY3Vyc2l2ZWx5IiwgImlucHV0IiwgImZhbGxiYWNrIiwgIkFycmF5QnVmZmVyIiwgImlzVmlldyIsICJuZXh0IiwgIngiLCAiaXNPcHRpb24iLCAiaXNTb21lIiwgInZhbHVlIiwgIkFycmF5IiwgImlzQXJyYXkiLCAibWFwIiwgIk9iamVjdCIsICJmcm9tRW50cmllcyIsICJlbnRyaWVzIiwgImsiLCAidiIsICJyZXF1aXJlX2NqcyIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAiY29tbW9uIiwgInVud3JhcE9wdGlvbiIsICJ1bndyYXBPcHRpb25SZWN1cnNpdmVseSIsICJJbnZhbGlkQmFzZVN0cmluZ0Vycm9yIiwgIkVycm9yIiwgIl9fbmFtZSIsICJuYW1lIiwgImNvbnN0cnVjdG9yIiwgInZhbHVlIiwgImJhc2UiLCAiY2F1c2UiLCAibWVzc2FnZSIsICJiYXNlWCIsICJhbHBoYWJldCIsICJiYXNlIiwgImxlbmd0aCIsICJiYXNlQmlnSW50IiwgIkJpZ0ludCIsICJkZXNjcmlwdGlvbiIsICJmaXhlZFNpemUiLCAibWF4U2l6ZSIsICJzZXJpYWxpemUiLCAidmFsdWUiLCAibWF0Y2giLCAiUmVnRXhwIiwgIkludmFsaWRCYXNlU3RyaW5nRXJyb3IiLCAiVWludDhBcnJheSIsICJjaGFycyIsICJ0cmFpbEluZGV4IiwgImZpbmRJbmRleCIsICJjIiwgImxlYWRpbmdaZXJvZXMiLCAiQXJyYXkiLCAiZmlsbCIsICJmcm9tIiwgInRhaWxDaGFycyIsICJzbGljZSIsICJiYXNlMTBOdW1iZXIiLCAiYmFzZVhQb3dlciIsICJpIiwgImluZGV4T2YiLCAidGFpbEJ5dGVzIiwgInVuc2hpZnQiLCAiTnVtYmVyIiwgImNvbmNhdCIsICJkZXNlcmlhbGl6ZSIsICJidWZmZXIiLCAib2Zmc2V0IiwgImJ5dGVzIiwgIm4iLCAicmVwZWF0IiwgInJlZHVjZSIsICJzdW0iLCAiYnl0ZSIsICJqb2luIiwgImJhc2UxMCIsICJiYXNlWCIsICJiYXNlMTYiLCAiZGVzY3JpcHRpb24iLCAiZml4ZWRTaXplIiwgIm1heFNpemUiLCAic2VyaWFsaXplIiwgInZhbHVlIiwgImxvd2VyY2FzZVZhbHVlIiwgInRvTG93ZXJDYXNlIiwgIm1hdGNoIiwgIkludmFsaWRCYXNlU3RyaW5nRXJyb3IiLCAibWF0Y2hlcyIsICJVaW50OEFycmF5IiwgImZyb20iLCAibWFwIiwgImJ5dGUiLCAicGFyc2VJbnQiLCAiZGVzZXJpYWxpemUiLCAiYnVmZmVyIiwgIm9mZnNldCIsICJzbGljZSIsICJyZWR1Y2UiLCAic3RyIiwgInRvU3RyaW5nIiwgInBhZFN0YXJ0IiwgImxlbmd0aCIsICJiYXNlNTgiLCAiYmFzZVgiLCAibWVyZ2VCeXRlcyIsICJieXRlc0FyciIsICJ0b3RhbExlbmd0aCIsICJyZWR1Y2UiLCAidG90YWwiLCAiYXJyIiwgImxlbmd0aCIsICJyZXN1bHQiLCAiVWludDhBcnJheSIsICJvZmZzZXQiLCAiZm9yRWFjaCIsICJzZXQiLCAicGFkQnl0ZXMiLCAiX19uYW1lIiwgImJ5dGVzIiwgInBhZGRlZEJ5dGVzIiwgImZpbGwiLCAiZml4Qnl0ZXMiLCAic2xpY2UiLCAiRGVzZXJpYWxpemluZ0VtcHR5QnVmZmVyRXJyb3IiLCAiRXJyb3IiLCAiX19uYW1lIiwgIm5hbWUiLCAiY29uc3RydWN0b3IiLCAic2VyaWFsaXplciIsICJOb3RFbm91Z2hCeXRlc0Vycm9yIiwgImV4cGVjdGVkIiwgImFjdHVhbCIsICJFeHBlY3RlZEZpeGVkU2l6ZVNlcmlhbGl6ZXJFcnJvciIsICJtZXNzYWdlIiwgImZpeFNlcmlhbGl6ZXIiLCAic2VyaWFsaXplciIsICJmaXhlZEJ5dGVzIiwgImRlc2NyaXB0aW9uIiwgImZpeGVkU2l6ZSIsICJtYXhTaXplIiwgInNlcmlhbGl6ZSIsICJ2YWx1ZSIsICJmaXhCeXRlcyIsICJkZXNlcmlhbGl6ZSIsICJidWZmZXIiLCAib2Zmc2V0IiwgInNsaWNlIiwgImxlbmd0aCIsICJOb3RFbm91Z2hCeXRlc0Vycm9yIiwgIm1hcFNlcmlhbGl6ZXIiLCAic2VyaWFsaXplciIsICJ1bm1hcCIsICJtYXAiLCAiZGVzY3JpcHRpb24iLCAiZml4ZWRTaXplIiwgIm1heFNpemUiLCAic2VyaWFsaXplIiwgInZhbHVlIiwgImRlc2VyaWFsaXplIiwgImJ1ZmZlciIsICJvZmZzZXQiLCAibGVuZ3RoIiwgInJldmVyc2VTZXJpYWxpemVyIiwgInNlcmlhbGl6ZXIiLCAiZml4ZWRTaXplIiwgIkV4cGVjdGVkRml4ZWRTaXplU2VyaWFsaXplckVycm9yIiwgInNlcmlhbGl6ZSIsICJ2YWx1ZSIsICJyZXZlcnNlIiwgImRlc2VyaWFsaXplIiwgImJ5dGVzIiwgIm9mZnNldCIsICJuZXdCeXRlcyIsICJtZXJnZUJ5dGVzIiwgInNsaWNlIiwgInJlcXVpcmVfY2pzIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJieXRlcyIsICJlcnJvcnMiLCAiZml4U2VyaWFsaXplciIsICJtYXBTZXJpYWxpemVyIiwgInJldmVyc2VTZXJpYWxpemVyIiwgImJhc2VYUmVzbGljZSIsICJfX25hbWUiLCAiYWxwaGFiZXQiLCAiYml0cyIsICJiYXNlIiwgImxlbmd0aCIsICJyZXNsaWNlIiwgImlucHV0IiwgImlucHV0Qml0cyIsICJvdXRwdXRCaXRzIiwgInVzZVJlbWFpbmRlciIsICJvdXRwdXQiLCAiYWNjdW11bGF0b3IiLCAiYml0c0luQWNjdW11bGF0b3IiLCAibWFzayIsICJ2YWx1ZSIsICJwdXNoIiwgImRlc2NyaXB0aW9uIiwgImZpeGVkU2l6ZSIsICJtYXhTaXplIiwgInNlcmlhbGl6ZSIsICJtYXRjaCIsICJSZWdFeHAiLCAiSW52YWxpZEJhc2VTdHJpbmdFcnJvciIsICJVaW50OEFycmF5IiwgImNoYXJJbmRpY2VzIiwgIm1hcCIsICJjIiwgImluZGV4T2YiLCAiYnl0ZXMiLCAiZnJvbSIsICJkZXNlcmlhbGl6ZSIsICJidWZmZXIiLCAib2Zmc2V0IiwgInNsaWNlIiwgImkiLCAiam9pbiIsICJiYXNlNjQiLCAibWFwU2VyaWFsaXplciIsICJiYXNlWFJlc2xpY2UiLCAidmFsdWUiLCAicmVwbGFjZSIsICJwYWRFbmQiLCAiTWF0aCIsICJjZWlsIiwgImxlbmd0aCIsICJyZW1vdmVOdWxsQ2hhcmFjdGVycyIsICJ2YWx1ZSIsICJyZXBsYWNlIiwgInBhZE51bGxDaGFyYWN0ZXJzIiwgIl9fbmFtZSIsICJjaGFycyIsICJwYWRFbmQiLCAidXRmOCIsICJkZXNjcmlwdGlvbiIsICJmaXhlZFNpemUiLCAibWF4U2l6ZSIsICJzZXJpYWxpemUiLCAidmFsdWUiLCAiVGV4dEVuY29kZXIiLCAiZW5jb2RlIiwgImRlc2VyaWFsaXplIiwgImJ1ZmZlciIsICJvZmZzZXQiLCAiVGV4dERlY29kZXIiLCAiZGVjb2RlIiwgInNsaWNlIiwgInJlbW92ZU51bGxDaGFyYWN0ZXJzIiwgImxlbmd0aCIsICJyZXF1aXJlX2NqcyIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAiYmFzZTEwIiwgImJhc2UxNiIsICJiYXNlNTgiLCAiYmFzZTY0IiwgImJhc2VYIiwgImJhc2VYUmVzbGljZSIsICJlcnJvcnMiLCAibnVsbENoYXJhY3RlcnMiLCAidXRmOCIsICJJbnZhbGlkUHVibGljS2V5RXJyb3IiLCAiRXJyb3IiLCAiX19uYW1lIiwgIm5hbWUiLCAiY29uc3RydWN0b3IiLCAiaW52YWxpZFB1YmxpY0tleSIsICJyZWFzb24iLCAiUFVCTElDX0tFWV9MRU5HVEgiLCAicHVibGljS2V5IiwgImlucHV0IiwgImFzc2VydFZhbGlkUHVibGljS2V5IiwgImtleSIsICJ0b0Jhc2U1OCIsICJBcnJheSIsICJpc0FycmF5IiwgImJhc2U1OCIsICJkZXNlcmlhbGl6ZSIsICJhc3NlcnRQdWJsaWNLZXkiLCAiZGVmYXVsdFB1YmxpY0tleSIsICJfX25hbWUiLCAiaXNQdWJsaWNLZXkiLCAidmFsdWUiLCAiaXNQZGEiLCAibGVuZ3RoIiwgIkludmFsaWRQdWJsaWNLZXlFcnJvciIsICJwdWJsaWNLZXlCeXRlcyIsICJ1bmlxdWVQdWJsaWNLZXlzIiwgInB1YmxpY0tleXMiLCAiU2V0IiwgImJ5dGVzIiwgInNlcmlhbGl6ZSIsICJiYXNlNThQdWJsaWNLZXkiLCAic2FtZVB1YmxpY0tleSIsICJsZWZ0IiwgInJpZ2h0IiwgInJlcXVpcmVfY2pzIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJjb21tb24iLCAiZXJyb3JzIiwgIkVuZGlhbiIsICJOdW1iZXJPdXRPZlJhbmdlRXJyb3IiLCAiUmFuZ2VFcnJvciIsICJfX25hbWUiLCAibmFtZSIsICJjb25zdHJ1Y3RvciIsICJzZXJpYWxpemVyIiwgIm1pbiIsICJtYXgiLCAiYWN0dWFsIiwgIm51bWJlckZhY3RvcnkiLCAiaW5wdXQiLCAibGl0dGxlRW5kaWFuIiwgImRlZmF1bHREZXNjcmlwdGlvbiIsICJuYW1lIiwgInNpemUiLCAib3B0aW9ucyIsICJlbmRpYW4iLCAiRW5kaWFuIiwgIkxpdHRsZSIsICJkZXNjcmlwdGlvbiIsICJmaXhlZFNpemUiLCAibWF4U2l6ZSIsICJzZXJpYWxpemUiLCAidmFsdWUiLCAicmFuZ2UiLCAiYXNzZXJ0UmFuZ2UiLCAiYnVmZmVyIiwgIkFycmF5QnVmZmVyIiwgInNldCIsICJEYXRhVmlldyIsICJVaW50OEFycmF5IiwgImRlc2VyaWFsaXplIiwgImJ5dGVzIiwgIm9mZnNldCIsICJzbGljZSIsICJhc3NlcnRFbm91Z2hCeXRlcyIsICJ2aWV3IiwgInRvRGF0YVZpZXciLCAiZ2V0IiwgInRvQXJyYXlCdWZmZXIiLCAiYXJyYXkiLCAiYnl0ZU9mZnNldCIsICJieXRlTGVuZ3RoIiwgIl9fbmFtZSIsICJzZXJpYWxpemVyIiwgIm1pbiIsICJtYXgiLCAiTnVtYmVyT3V0T2ZSYW5nZUVycm9yIiwgImV4cGVjdGVkIiwgImxlbmd0aCIsICJEZXNlcmlhbGl6aW5nRW1wdHlCdWZmZXJFcnJvciIsICJOb3RFbm91Z2hCeXRlc0Vycm9yIiwgImYzMiIsICJfX25hbWUiLCAib3B0aW9ucyIsICJudW1iZXJGYWN0b3J5IiwgIm5hbWUiLCAic2l6ZSIsICJzZXQiLCAidmlldyIsICJ2YWx1ZSIsICJsZSIsICJzZXRGbG9hdDMyIiwgIk51bWJlciIsICJnZXQiLCAiZ2V0RmxvYXQzMiIsICJmNjQiLCAiX19uYW1lIiwgIm9wdGlvbnMiLCAibnVtYmVyRmFjdG9yeSIsICJuYW1lIiwgInNpemUiLCAic2V0IiwgInZpZXciLCAidmFsdWUiLCAibGUiLCAic2V0RmxvYXQ2NCIsICJOdW1iZXIiLCAiZ2V0IiwgImdldEZsb2F0NjQiLCAiaTgiLCAiX19uYW1lIiwgIm9wdGlvbnMiLCAibnVtYmVyRmFjdG9yeSIsICJuYW1lIiwgInNpemUiLCAicmFuZ2UiLCAiTnVtYmVyIiwgInNldCIsICJ2aWV3IiwgInZhbHVlIiwgInNldEludDgiLCAiZ2V0IiwgImdldEludDgiLCAiaTE2IiwgIl9fbmFtZSIsICJvcHRpb25zIiwgIm51bWJlckZhY3RvcnkiLCAibmFtZSIsICJzaXplIiwgInJhbmdlIiwgIk51bWJlciIsICJzZXQiLCAidmlldyIsICJ2YWx1ZSIsICJsZSIsICJzZXRJbnQxNiIsICJnZXQiLCAiZ2V0SW50MTYiLCAiaTMyIiwgIl9fbmFtZSIsICJvcHRpb25zIiwgIm51bWJlckZhY3RvcnkiLCAibmFtZSIsICJzaXplIiwgInJhbmdlIiwgIk51bWJlciIsICJzZXQiLCAidmlldyIsICJ2YWx1ZSIsICJsZSIsICJzZXRJbnQzMiIsICJnZXQiLCAiZ2V0SW50MzIiLCAiaTY0IiwgIl9fbmFtZSIsICJvcHRpb25zIiwgIm51bWJlckZhY3RvcnkiLCAibmFtZSIsICJzaXplIiwgInJhbmdlIiwgIkJpZ0ludCIsICJzZXQiLCAidmlldyIsICJ2YWx1ZSIsICJsZSIsICJzZXRCaWdJbnQ2NCIsICJnZXQiLCAiZ2V0QmlnSW50NjQiLCAiaTEyOCIsICJfX25hbWUiLCAib3B0aW9ucyIsICJudW1iZXJGYWN0b3J5IiwgIm5hbWUiLCAic2l6ZSIsICJyYW5nZSIsICJCaWdJbnQiLCAic2V0IiwgInZpZXciLCAidmFsdWUiLCAibGUiLCAibGVmdE9mZnNldCIsICJyaWdodE9mZnNldCIsICJyaWdodE1hc2siLCAic2V0QmlnSW50NjQiLCAic2V0QmlnVWludDY0IiwgImdldCIsICJsZWZ0IiwgImdldEJpZ0ludDY0IiwgInJpZ2h0IiwgImdldEJpZ1VpbnQ2NCIsICJ1OCIsICJfX25hbWUiLCAib3B0aW9ucyIsICJudW1iZXJGYWN0b3J5IiwgIm5hbWUiLCAic2l6ZSIsICJyYW5nZSIsICJOdW1iZXIiLCAic2V0IiwgInZpZXciLCAidmFsdWUiLCAic2V0VWludDgiLCAiZ2V0IiwgImdldFVpbnQ4IiwgInUxNiIsICJfX25hbWUiLCAib3B0aW9ucyIsICJudW1iZXJGYWN0b3J5IiwgIm5hbWUiLCAic2l6ZSIsICJyYW5nZSIsICJOdW1iZXIiLCAic2V0IiwgInZpZXciLCAidmFsdWUiLCAibGUiLCAic2V0VWludDE2IiwgImdldCIsICJnZXRVaW50MTYiLCAidTMyIiwgIl9fbmFtZSIsICJvcHRpb25zIiwgIm51bWJlckZhY3RvcnkiLCAibmFtZSIsICJzaXplIiwgInJhbmdlIiwgIk51bWJlciIsICJzZXQiLCAidmlldyIsICJ2YWx1ZSIsICJsZSIsICJzZXRVaW50MzIiLCAiZ2V0IiwgImdldFVpbnQzMiIsICJ1NjQiLCAiX19uYW1lIiwgIm9wdGlvbnMiLCAibnVtYmVyRmFjdG9yeSIsICJuYW1lIiwgInNpemUiLCAicmFuZ2UiLCAiQmlnSW50IiwgInNldCIsICJ2aWV3IiwgInZhbHVlIiwgImxlIiwgInNldEJpZ1VpbnQ2NCIsICJnZXQiLCAiZ2V0QmlnVWludDY0IiwgInUxMjgiLCAiX19uYW1lIiwgIm9wdGlvbnMiLCAibnVtYmVyRmFjdG9yeSIsICJuYW1lIiwgInNpemUiLCAicmFuZ2UiLCAiQmlnSW50IiwgInNldCIsICJ2aWV3IiwgInZhbHVlIiwgImxlIiwgImxlZnRPZmZzZXQiLCAicmlnaHRPZmZzZXQiLCAicmlnaHRNYXNrIiwgInNldEJpZ1VpbnQ2NCIsICJnZXQiLCAibGVmdCIsICJnZXRCaWdVaW50NjQiLCAicmlnaHQiLCAic2hvcnRVMTYiLCAiX19uYW1lIiwgIm9wdGlvbnMiLCAiZGVzY3JpcHRpb24iLCAiZml4ZWRTaXplIiwgIm1heFNpemUiLCAic2VyaWFsaXplIiwgInZhbHVlIiwgImFzc2VydFJhbmdlIiwgImJ5dGVzIiwgImlpIiwgImFsaWduZWRWYWx1ZSIsICJuZXh0U2V2ZW5CaXRzIiwgIlVpbnQ4QXJyYXkiLCAiZGVzZXJpYWxpemUiLCAib2Zmc2V0IiwgImJ5dGVDb3VudCIsICJieXRlSW5kZXgiLCAiY3VycmVudEJ5dGUiLCAicmVxdWlyZV9janMiLCAiX19jb21tb25KU01pbiIsICJleHBvcnRzIiwgImNvbW1vbiIsICJlcnJvcnMiLCAiZjMyIiwgImY2NCIsICJpOCIsICJpMTYiLCAiaTMyIiwgImk2NCIsICJpMTI4IiwgInU4IiwgInUxNiIsICJ1MzIiLCAidTY0IiwgInUxMjgiLCAic2hvcnRVMTYiLCAiSW52YWxpZE51bWJlck9mSXRlbXNFcnJvciIsICJFcnJvciIsICJfX25hbWUiLCAibmFtZSIsICJjb25zdHJ1Y3RvciIsICJzZXJpYWxpemVyIiwgImV4cGVjdGVkIiwgImFjdHVhbCIsICJJbnZhbGlkQXJyYXlMaWtlUmVtYWluZGVyU2l6ZUVycm9yIiwgInJlbWFpbmRlclNpemUiLCAiaXRlbVNpemUiLCAiVW5yZWNvZ25pemVkQXJyYXlMaWtlU2VyaWFsaXplclNpemVFcnJvciIsICJzaXplIiwgIkpTT04iLCAic3RyaW5naWZ5IiwgIkludmFsaWREYXRhRW51bVZhcmlhbnRFcnJvciIsICJpbnZhbGlkVmFyaWFudCIsICJ2YWxpZFZhcmlhbnRzIiwgImpvaW4iLCAiSW52YWxpZFNjYWxhckVudW1WYXJpYW50RXJyb3IiLCAibWluIiwgIm1heCIsICJFbnVtRGlzY3JpbWluYXRvck91dE9mUmFuZ2VFcnJvciIsICJSYW5nZUVycm9yIiwgImRpc2NyaW1pbmF0b3IiLCAic3VtU2VyaWFsaXplclNpemVzIiwgInNpemVzIiwgInJlZHVjZSIsICJhbGwiLCAic2l6ZSIsICJnZXRSZXNvbHZlZFNpemUiLCAic2l6ZSIsICJjaGlsZHJlblNpemVzIiwgImJ5dGVzIiwgIm9mZnNldCIsICJkZXNlcmlhbGl6ZSIsICJjaGlsZHJlblNpemUiLCAic3VtU2VyaWFsaXplclNpemVzIiwgIkV4cGVjdGVkRml4ZWRTaXplU2VyaWFsaXplckVycm9yIiwgInJlbWFpbmRlciIsICJzbGljZSIsICJsZW5ndGgiLCAiSW52YWxpZEFycmF5TGlrZVJlbWFpbmRlclNpemVFcnJvciIsICJVbnJlY29nbml6ZWRBcnJheUxpa2VTZXJpYWxpemVyU2l6ZUVycm9yIiwgImdldFNpemVEZXNjcmlwdGlvbiIsICJkZXNjcmlwdGlvbiIsICJnZXRTaXplRnJvbUNoaWxkcmVuIiwgImdldFNpemVQcmVmaXgiLCAicmVhbFNpemUiLCAic2VyaWFsaXplIiwgIlVpbnQ4QXJyYXkiLCAiYXJyYXkiLCAiaXRlbSIsICJvcHRpb25zIiwgInNpemUiLCAidTMyIiwgImZpeGVkU2l6ZSIsICJFeHBlY3RlZEZpeGVkU2l6ZVNlcmlhbGl6ZXJFcnJvciIsICJkZXNjcmlwdGlvbiIsICJnZXRTaXplRGVzY3JpcHRpb24iLCAiZ2V0U2l6ZUZyb21DaGlsZHJlbiIsICJtYXhTaXplIiwgInNlcmlhbGl6ZSIsICJ2YWx1ZSIsICJsZW5ndGgiLCAiSW52YWxpZE51bWJlck9mSXRlbXNFcnJvciIsICJtZXJnZUJ5dGVzIiwgImdldFNpemVQcmVmaXgiLCAibWFwIiwgInYiLCAiZGVzZXJpYWxpemUiLCAiYnl0ZXMiLCAib2Zmc2V0IiwgInNsaWNlIiwgInJlc29sdmVkU2l6ZSIsICJuZXdPZmZzZXQiLCAiZ2V0UmVzb2x2ZWRTaXplIiwgInZhbHVlcyIsICJpIiwgInB1c2giLCAiYml0QXJyYXkiLCAiX19uYW1lIiwgInNpemUiLCAib3B0aW9ucyIsICJwYXJzZWRPcHRpb25zIiwgImJhY2t3YXJkIiwgImJhY2t3YXJkU3VmZml4IiwgImRlc2NyaXB0aW9uIiwgImZpeGVkU2l6ZSIsICJtYXhTaXplIiwgInNlcmlhbGl6ZSIsICJ2YWx1ZSIsICJieXRlcyIsICJpIiwgImJ5dGUiLCAiaiIsICJmZWF0dXJlIiwgIk51bWJlciIsICJ1bnNoaWZ0IiwgInB1c2giLCAiVWludDhBcnJheSIsICJkZXNlcmlhbGl6ZSIsICJvZmZzZXQiLCAiYm9vbGVhbnMiLCAic2xpY2UiLCAicmV2ZXJzZSIsICJsZW5ndGgiLCAiTm90RW5vdWdoQnl0ZXNFcnJvciIsICJmb3JFYWNoIiwgIkJvb2xlYW4iLCAiYm9vbCIsICJvcHRpb25zIiwgInNpemUiLCAidTgiLCAiZml4ZWRTaXplIiwgIkV4cGVjdGVkRml4ZWRTaXplU2VyaWFsaXplckVycm9yIiwgImRlc2NyaXB0aW9uIiwgIm1heFNpemUiLCAic2VyaWFsaXplIiwgInZhbHVlIiwgImRlc2VyaWFsaXplIiwgImJ5dGVzIiwgIm9mZnNldCIsICJzbGljZSIsICJsZW5ndGgiLCAiRGVzZXJpYWxpemluZ0VtcHR5QnVmZmVyRXJyb3IiLCAidk9mZnNldCIsICJieXRlcyIsICJvcHRpb25zIiwgInNpemUiLCAiZGVzY3JpcHRpb24iLCAiZ2V0U2l6ZURlc2NyaXB0aW9uIiwgImJ5dGVTZXJpYWxpemVyIiwgImZpeGVkU2l6ZSIsICJtYXhTaXplIiwgInNlcmlhbGl6ZSIsICJ2YWx1ZSIsICJVaW50OEFycmF5IiwgImRlc2VyaWFsaXplIiwgIm9mZnNldCIsICJzbGljZSIsICJsZW5ndGgiLCAiZml4U2VyaWFsaXplciIsICJjb250ZW50Qnl0ZXMiLCAibGVuZ3RoQnl0ZXMiLCAibWVyZ2VCeXRlcyIsICJidWZmZXIiLCAiRGVzZXJpYWxpemluZ0VtcHR5QnVmZmVyRXJyb3IiLCAibGVuZ3RoQmlnSW50IiwgImxlbmd0aE9mZnNldCIsICJOdW1iZXIiLCAiY29udGVudEJ1ZmZlciIsICJOb3RFbm91Z2hCeXRlc0Vycm9yIiwgImNvbnRlbnRPZmZzZXQiLCAibWF4U2VyaWFsaXplclNpemVzIiwgInNpemVzIiwgInJlZHVjZSIsICJhbGwiLCAic2l6ZSIsICJNYXRoIiwgIm1heCIsICJkYXRhRW51bSIsICJ2YXJpYW50cyIsICJvcHRpb25zIiwgInByZWZpeCIsICJzaXplIiwgInU4IiwgImZpZWxkRGVzY3JpcHRpb25zIiwgIm1hcCIsICJuYW1lIiwgInNlcmlhbGl6ZXIiLCAiU3RyaW5nIiwgImRlc2NyaXB0aW9uIiwgImpvaW4iLCAiZml4ZWRWYXJpYW50U2l6ZSIsICJldmVyeSIsICJvbmUiLCAiaSIsICJhbGwiLCAiZml4ZWRTaXplIiwgIm1heFZhcmlhbnRTaXplIiwgIm1heFNlcmlhbGl6ZXJTaXplcyIsICJmaWVsZCIsICJtYXhTaXplIiwgImxlbmd0aCIsICJzdW1TZXJpYWxpemVyU2l6ZXMiLCAic2VyaWFsaXplIiwgInZhcmlhbnQiLCAiZGlzY3JpbWluYXRvciIsICJmaW5kSW5kZXgiLCAia2V5IiwgIl9fa2luZCIsICJJbnZhbGlkRGF0YUVudW1WYXJpYW50RXJyb3IiLCAidmFyaWFudFByZWZpeCIsICJ2YXJpYW50Qnl0ZXMiLCAibWVyZ2VCeXRlcyIsICJkZXNlcmlhbGl6ZSIsICJieXRlcyIsICJvZmZzZXQiLCAic2xpY2UiLCAiRGVzZXJpYWxpemluZ0VtcHR5QnVmZmVyRXJyb3IiLCAiZE9mZnNldCIsICJ2YXJpYW50RmllbGQiLCAiTnVtYmVyIiwgIkVudW1EaXNjcmltaW5hdG9yT3V0T2ZSYW5nZUVycm9yIiwgInZPZmZzZXQiLCAibWFwIiwgImtleSIsICJ2YWx1ZSIsICJvcHRpb25zIiwgInNpemUiLCAidTMyIiwgImZpeGVkU2l6ZSIsICJFeHBlY3RlZEZpeGVkU2l6ZVNlcmlhbGl6ZXJFcnJvciIsICJkZXNjcmlwdGlvbiIsICJnZXRTaXplRGVzY3JpcHRpb24iLCAiZ2V0U2l6ZUZyb21DaGlsZHJlbiIsICJtYXhTaXplIiwgInNlcmlhbGl6ZSIsICJJbnZhbGlkTnVtYmVyT2ZJdGVtc0Vycm9yIiwgIml0ZW1CeXRlcyIsICJBcnJheSIsICJmcm9tIiwgImsiLCAidiIsICJtZXJnZUJ5dGVzIiwgImdldFNpemVQcmVmaXgiLCAiZGVzZXJpYWxpemUiLCAiYnl0ZXMiLCAib2Zmc2V0IiwgIk1hcCIsICJzbGljZSIsICJsZW5ndGgiLCAicmVzb2x2ZWRTaXplIiwgIm5ld09mZnNldCIsICJnZXRSZXNvbHZlZFNpemUiLCAiaSIsICJkZXNlcmlhbGl6ZWRLZXkiLCAia09mZnNldCIsICJkZXNlcmlhbGl6ZWRWYWx1ZSIsICJ2T2Zmc2V0IiwgInNldCIsICJudWxsYWJsZSIsICJpdGVtIiwgIm9wdGlvbnMiLCAicHJlZml4IiwgInU4IiwgImZpeGVkIiwgImRlc2NyaXB0aW9uU3VmZml4IiwgImdldFNpemVEZXNjcmlwdGlvbiIsICJmaXhlZFNpemUiLCAiRXhwZWN0ZWRGaXhlZFNpemVTZXJpYWxpemVyRXJyb3IiLCAiZGVzY3JpcHRpb24iLCAibWF4U2l6ZSIsICJzdW1TZXJpYWxpemVyU2l6ZXMiLCAic2VyaWFsaXplIiwgIm9wdGlvbiIsICJwcmVmaXhCeXRlIiwgIk51bWJlciIsICJpdGVtRml4ZWRTaXplIiwgIml0ZW1CeXRlcyIsICJzbGljZSIsICJVaW50OEFycmF5IiwgImZpbGwiLCAibWVyZ2VCeXRlcyIsICJkZXNlcmlhbGl6ZSIsICJieXRlcyIsICJvZmZzZXQiLCAibGVuZ3RoIiwgImZpeGVkT2Zmc2V0IiwgImlzU29tZSIsICJwcmVmaXhPZmZzZXQiLCAidmFsdWUiLCAibmV3T2Zmc2V0IiwgIm9wdGlvbiIsICJpdGVtIiwgIm9wdGlvbnMiLCAicHJlZml4IiwgInU4IiwgImZpeGVkIiwgImRlc2NyaXB0aW9uU3VmZml4IiwgImdldFNpemVEZXNjcmlwdGlvbiIsICJmaXhlZFNpemUiLCAiRXhwZWN0ZWRGaXhlZFNpemVTZXJpYWxpemVyRXJyb3IiLCAiZGVzY3JpcHRpb24iLCAibWF4U2l6ZSIsICJzdW1TZXJpYWxpemVyU2l6ZXMiLCAic2VyaWFsaXplIiwgIm9wdGlvbk9yTnVsbGFibGUiLCAiaXNPcHRpb24iLCAid3JhcE51bGxhYmxlIiwgInByZWZpeEJ5dGUiLCAiTnVtYmVyIiwgImlzU29tZSIsICJpdGVtRml4ZWRTaXplIiwgIml0ZW1CeXRlcyIsICJ2YWx1ZSIsICJzbGljZSIsICJVaW50OEFycmF5IiwgImZpbGwiLCAibWVyZ2VCeXRlcyIsICJkZXNlcmlhbGl6ZSIsICJieXRlcyIsICJvZmZzZXQiLCAibGVuZ3RoIiwgIm5vbmUiLCAiZml4ZWRPZmZzZXQiLCAicHJlZml4T2Zmc2V0IiwgIm5ld09mZnNldCIsICJzb21lIiwgInB1YmxpY0tleSIsICJvcHRpb25zIiwgImRlc2NyaXB0aW9uIiwgImZpeGVkU2l6ZSIsICJtYXhTaXplIiwgInNlcmlhbGl6ZSIsICJ2YWx1ZSIsICJwdWJsaWNLZXlCeXRlcyIsICJ0b1B1YmxpY0tleSIsICJkZXNlcmlhbGl6ZSIsICJieXRlcyIsICJvZmZzZXQiLCAicHVia2V5Qnl0ZXMiLCAic2xpY2UiLCAibGVuZ3RoIiwgIkRlc2VyaWFsaXppbmdFbXB0eUJ1ZmZlckVycm9yIiwgIlBVQkxJQ19LRVlfTEVOR1RIIiwgIk5vdEVub3VnaEJ5dGVzRXJyb3IiLCAic2NhbGFyRW51bSIsICJjb25zdHJ1Y3RvciIsICJvcHRpb25zIiwgInByZWZpeCIsICJzaXplIiwgInU4IiwgImVudW1LZXlzIiwgIk9iamVjdCIsICJrZXlzIiwgImVudW1WYWx1ZXMiLCAidmFsdWVzIiwgImlzTnVtZXJpY0VudW0iLCAic29tZSIsICJ2IiwgInZhbHVlRGVzY3JpcHRpb25zIiwgImZpbHRlciIsICJqb2luIiwgIm1pblJhbmdlIiwgIm1heFJhbmdlIiwgImxlbmd0aCIsICJzdHJpbmdWYWx1ZXMiLCAiU2V0IiwgImFzc2VydFZhbGlkVmFyaWFudCIsICJ2YXJpYW50IiwgImlzSW52YWxpZE51bWJlciIsICJpc0ludmFsaWRTdHJpbmciLCAiaW5jbHVkZXMiLCAiSW52YWxpZFNjYWxhckVudW1WYXJpYW50RXJyb3IiLCAiZGVzY3JpcHRpb24iLCAiZml4ZWRTaXplIiwgIm1heFNpemUiLCAic2VyaWFsaXplIiwgInZhbHVlIiwgInZhbHVlSW5kZXgiLCAiaW5kZXhPZiIsICJkZXNlcmlhbGl6ZSIsICJieXRlcyIsICJvZmZzZXQiLCAic2xpY2UiLCAiRGVzZXJpYWxpemluZ0VtcHR5QnVmZmVyRXJyb3IiLCAibmV3T2Zmc2V0IiwgInZhbHVlQXNOdW1iZXIiLCAiTnVtYmVyIiwgIkVudW1EaXNjcmltaW5hdG9yT3V0T2ZSYW5nZUVycm9yIiwgInNldCIsICJpdGVtIiwgIm9wdGlvbnMiLCAic2l6ZSIsICJ1MzIiLCAiZml4ZWRTaXplIiwgIkV4cGVjdGVkRml4ZWRTaXplU2VyaWFsaXplckVycm9yIiwgImRlc2NyaXB0aW9uIiwgImdldFNpemVEZXNjcmlwdGlvbiIsICJnZXRTaXplRnJvbUNoaWxkcmVuIiwgIm1heFNpemUiLCAic2VyaWFsaXplIiwgIkludmFsaWROdW1iZXJPZkl0ZW1zRXJyb3IiLCAiaXRlbUJ5dGVzIiwgIkFycmF5IiwgImZyb20iLCAidmFsdWUiLCAibWVyZ2VCeXRlcyIsICJnZXRTaXplUHJlZml4IiwgImRlc2VyaWFsaXplIiwgImJ5dGVzIiwgIm9mZnNldCIsICJTZXQiLCAic2xpY2UiLCAibGVuZ3RoIiwgInJlc29sdmVkU2l6ZSIsICJuZXdPZmZzZXQiLCAiZ2V0UmVzb2x2ZWRTaXplIiwgImkiLCAiYWRkIiwgInN0cmluZyIsICJvcHRpb25zIiwgInNpemUiLCAidTMyIiwgImVuY29kaW5nIiwgInV0ZjgiLCAiZGVzY3JpcHRpb24iLCAiZ2V0U2l6ZURlc2NyaXB0aW9uIiwgImZpeFNlcmlhbGl6ZXIiLCAiZml4ZWRTaXplIiwgIm1heFNpemUiLCAic2VyaWFsaXplIiwgInZhbHVlIiwgImNvbnRlbnRCeXRlcyIsICJsZW5ndGhCeXRlcyIsICJsZW5ndGgiLCAibWVyZ2VCeXRlcyIsICJkZXNlcmlhbGl6ZSIsICJidWZmZXIiLCAib2Zmc2V0IiwgInNsaWNlIiwgIkRlc2VyaWFsaXppbmdFbXB0eUJ1ZmZlckVycm9yIiwgImxlbmd0aEJpZ0ludCIsICJsZW5ndGhPZmZzZXQiLCAiTnVtYmVyIiwgImNvbnRlbnRCdWZmZXIiLCAiTm90RW5vdWdoQnl0ZXNFcnJvciIsICJjb250ZW50T2Zmc2V0IiwgInN0cnVjdCIsICJmaWVsZHMiLCAib3B0aW9ucyIsICJmaWVsZERlc2NyaXB0aW9ucyIsICJtYXAiLCAibmFtZSIsICJzZXJpYWxpemVyIiwgIlN0cmluZyIsICJkZXNjcmlwdGlvbiIsICJqb2luIiwgImZpeGVkU2l6ZSIsICJzdW1TZXJpYWxpemVyU2l6ZXMiLCAiZmllbGQiLCAibWF4U2l6ZSIsICJzZXJpYWxpemUiLCAiZmllbGRCeXRlcyIsICJrZXkiLCAibWVyZ2VCeXRlcyIsICJkZXNlcmlhbGl6ZSIsICJieXRlcyIsICJvZmZzZXQiLCAiZm9yRWFjaCIsICJ2YWx1ZSIsICJuZXdPZmZzZXQiLCAidHVwbGUiLCAiaXRlbXMiLCAib3B0aW9ucyIsICJpdGVtRGVzY3JpcHRpb25zIiwgIm1hcCIsICJpdGVtIiwgImRlc2NyaXB0aW9uIiwgImpvaW4iLCAiZml4ZWRTaXplIiwgInN1bVNlcmlhbGl6ZXJTaXplcyIsICJtYXhTaXplIiwgInNlcmlhbGl6ZSIsICJ2YWx1ZSIsICJsZW5ndGgiLCAiSW52YWxpZE51bWJlck9mSXRlbXNFcnJvciIsICJtZXJnZUJ5dGVzIiwgImluZGV4IiwgImRlc2VyaWFsaXplIiwgImJ5dGVzIiwgIm9mZnNldCIsICJ2YWx1ZXMiLCAiZm9yRWFjaCIsICJzZXJpYWxpemVyIiwgIm5ld1ZhbHVlIiwgIm5ld09mZnNldCIsICJwdXNoIiwgInVuaXQiLCAib3B0aW9ucyIsICJkZXNjcmlwdGlvbiIsICJmaXhlZFNpemUiLCAibWF4U2l6ZSIsICJzZXJpYWxpemUiLCAiVWludDhBcnJheSIsICJkZXNlcmlhbGl6ZSIsICJfYnl0ZXMiLCAib2Zmc2V0IiwgInVuZGVmaW5lZCIsICJyZXF1aXJlX2NqcyIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAidW1pU2VyaWFsaXplcnNDb3JlIiwgInVtaVNlcmlhbGl6ZXJzRW5jb2RpbmdzIiwgInVtaVNlcmlhbGl6ZXJzTnVtYmVycyIsICJhcnJheSIsICJiaXRBcnJheSIsICJib29sIiwgImJ5dGVzIiwgImRhdGFFbnVtIiwgImVycm9ycyIsICJtYXAiLCAibnVsbGFibGUiLCAib3B0aW9uIiwgInB1YmxpY0tleSIsICJzY2FsYXJFbnVtIiwgInNldCIsICJzdHJpbmciLCAic3RydWN0IiwgInR1cGxlIiwgInVuaXQiLCAibWF4U2VyaWFsaXplclNpemVzIiwgInN1bVNlcmlhbGl6ZXJTaXplcyIsICJrIiwgIm1hcFNlcmlhbGl6ZXIiLCAiX21hcFNlcmlhbGl6ZXIiLCAiZml4U2VyaWFsaXplciIsICJfZml4U2VyaWFsaXplciIsICJyZXZlcnNlU2VyaWFsaXplciIsICJfcmV2ZXJzZVNlcmlhbGl6ZXIiLCAibWVyZ2VCeXRlcyIsICJfbWVyZ2VCeXRlcyIsICJwYWRCeXRlcyIsICJfcGFkQnl0ZXMiLCAiZml4Qnl0ZXMiLCAiX2ZpeEJ5dGVzIiwgInV0ZjgiLCAiX3V0ZjgiLCAiYmFzZVgiLCAiX2Jhc2VYIiwgImJhc2UxMCIsICJfYmFzZTEwIiwgImJhc2U1OCIsICJfYmFzZTU4IiwgImJhc2U2NCIsICJfYmFzZTY0IiwgImJhc2UxNiIsICJfYmFzZTE2IiwgImJpdEFycmF5IiwgIl9iaXRBcnJheSIsICJyZW1vdmVOdWxsQ2hhcmFjdGVycyIsICJfcmVtb3ZlTnVsbENoYXJhY3RlcnMiLCAicGFkTnVsbENoYXJhY3RlcnMiLCAiX3BhZE51bGxDaGFyYWN0ZXJzIiwgIkVuZGlhbiIsICJfRW5kaWFuIiwgIlVtaUVycm9yIiwgIkVycm9yIiwgIl9fbmFtZSIsICJuYW1lIiwgImNvbnN0cnVjdG9yIiwgIm1lc3NhZ2UiLCAic291cmNlIiwgInNvdXJjZURldGFpbHMiLCAiY2F1c2UiLCAiZ2V0RnVsbFNvdXJjZSIsICJnZXRDYXBpdGFsaXplZFNvdXJjZSIsICJ0b1VwcGVyQ2FzZSIsICJzbGljZSIsICJjYXBpdGFsaXplZFNvdXJjZSIsICJ0b1N0cmluZyIsICJTZGtFcnJvciIsICJVbWlFcnJvciIsICJfX25hbWUiLCAibmFtZSIsICJjb25zdHJ1Y3RvciIsICJtZXNzYWdlIiwgImNhdXNlIiwgInVuZGVmaW5lZCIsICJVbmV4cGVjdGVkQWNjb3VudEVycm9yIiwgIlNka0Vycm9yIiwgIl9fbmFtZSIsICJuYW1lIiwgImNvbnN0cnVjdG9yIiwgInB1YmxpY0tleSIsICJleHBlY3RlZFR5cGUiLCAiY2F1c2UiLCAibWVzc2FnZSIsICJBY2NvdW50Tm90Rm91bmRFcnJvciIsICJTZGtFcnJvciIsICJfX25hbWUiLCAibmFtZSIsICJjb25zdHJ1Y3RvciIsICJwdWJsaWNLZXkiLCAiYWNjb3VudFR5cGUiLCAic29sdXRpb24iLCAibWVzc2FnZSIsICJBQ0NPVU5UX0hFQURFUl9TSVpFIiwgImRlc2VyaWFsaXplQWNjb3VudCIsICJyYXdBY2NvdW50IiwgImRhdGFTZXJpYWxpemVyIiwgImRhdGEiLCAicHVibGljS2V5IiwgInJlc3QiLCAicGFyc2VkRGF0YSIsICJkZXNlcmlhbGl6ZSIsICJoZWFkZXIiLCAiZXJyb3IiLCAiVW5leHBlY3RlZEFjY291bnRFcnJvciIsICJkZXNjcmlwdGlvbiIsICJhc3NlcnRBY2NvdW50RXhpc3RzIiwgImFjY291bnQiLCAibmFtZSIsICJzb2x1dGlvbiIsICJleGlzdHMiLCAiQWNjb3VudE5vdEZvdW5kRXJyb3IiLCAiY3JlYXRlQmlnSW50IiwgImlucHV0IiwgInRvU3RyaW5nIiwgIkJpZ0ludCIsICJVbmV4cGVjdGVkQW1vdW50RXJyb3IiLCAiU2RrRXJyb3IiLCAiX19uYW1lIiwgIm5hbWUiLCAiY29uc3RydWN0b3IiLCAiYW1vdW50IiwgImV4cGVjdGVkSWRlbnRpZmllciIsICJleHBlY3RlZERlY2ltYWxzIiwgIm1lc3NhZ2UiLCAiaWRlbnRpZmllciIsICJkZWNpbWFscyIsICJBbW91bnRNaXNtYXRjaEVycm9yIiwgIlNka0Vycm9yIiwgIl9fbmFtZSIsICJuYW1lIiwgImNvbnN0cnVjdG9yIiwgImxlZnQiLCAicmlnaHQiLCAib3BlcmF0aW9uIiwgIm1lc3NhZ2UiLCAiaWRlbnRpZmllciIsICJkZWNpbWFscyIsICJjcmVhdGVBbW91bnQiLCAiX19uYW1lIiwgImJhc2lzUG9pbnRzIiwgImlkZW50aWZpZXIiLCAiZGVjaW1hbHMiLCAiY3JlYXRlQmlnSW50IiwgImNyZWF0ZUFtb3VudEZyb21EZWNpbWFscyIsICJkZWNpbWFsQW1vdW50IiwgImV4cG9uZW50QW1vdW50IiwgIkJpZ0ludCIsICJtdWx0aXBseUFtb3VudCIsICJwZXJjZW50QW1vdW50IiwgInBlcmNlbnQiLCAidG9rZW5BbW91bnQiLCAidG9rZW5zIiwgImxhbXBvcnRzIiwgInNvbCIsICJ1c2QiLCAiaXNBbW91bnQiLCAiYW1vdW50IiwgImlzU29sQW1vdW50IiwgInNhbWVBbW91bnRzIiwgImxlZnQiLCAicmlnaHQiLCAiYXNzZXJ0QW1vdW50IiwgIlVuZXhwZWN0ZWRBbW91bnRFcnJvciIsICJhc3NlcnRTb2xBbW91bnQiLCAiYWN0dWFsIiwgImFzc2VydFNhbWVBbW91bnRzIiwgIm9wZXJhdGlvbiIsICJBbW91bnRNaXNtYXRjaEVycm9yIiwgImFkZEFtb3VudHMiLCAic3VidHJhY3RBbW91bnRzIiwgIm11bHRpcGxpZXIiLCAidW5pdHMiLCAidG9TdHJpbmciLCAic3BsaXQiLCAibXVsdGlwbGllckJhc2lzUG9pbnRzIiwgIm11bHRpcGxpZXJFeHBvbmVudHMiLCAibGVuZ3RoIiwgImRpdmlkZUFtb3VudCIsICJkaXZpc29yIiwgImRpdmlzb3JCYXNpc1BvaW50cyIsICJkaXZpc29yRXhwb25lbnRzIiwgImFic29sdXRlQW1vdW50IiwgInZhbHVlIiwgIngiLCAiY29tcGFyZUFtb3VudHMiLCAiaXNFcXVhbFRvQW1vdW50IiwgInRvbGVyYW5jZSIsICJkZWx0YSIsICJpc0xlc3NUaGFuT3JFcXVhbFRvQW1vdW50IiwgImlzTGVzc1RoYW5BbW91bnQiLCAiaXNHcmVhdGVyVGhhbkFtb3VudCIsICJpc0dyZWF0ZXJUaGFuT3JFcXVhbFRvQW1vdW50IiwgImlzWmVyb0Ftb3VudCIsICJpc1Bvc2l0aXZlQW1vdW50IiwgImlzTmVnYXRpdmVBbW91bnQiLCAiYW1vdW50VG9TdHJpbmciLCAibWF4RGVjaW1hbHMiLCAidGV4dCIsICJzaWduIiwgInN0YXJ0c1dpdGgiLCAicmVwbGFjZSIsICJwYWRTdGFydCIsICJzbGljZSIsICJ1bmRlZmluZWQiLCAiYW1vdW50VG9OdW1iZXIiLCAicGFyc2VGbG9hdCIsICJkaXNwbGF5QW1vdW50IiwgImFtb3VudEFzU3RyaW5nIiwgInRlc3QiLCAibWFwQW1vdW50U2VyaWFsaXplciIsICJzZXJpYWxpemVyIiwgIm1hcFNlcmlhbGl6ZXIiLCAiTnVtYmVyIiwgIk1BWF9TQUZFX0lOVEVHRVIiLCAiTUFJTk5FVF9CRVRBX0RPTUFJTlMiLCAiREVWTkVUX0RPTUFJTlMiLCAiVEVTVE5FVF9ET01BSU5TIiwgIkxPQ0FMTkVUX0RPTUFJTlMiLCAicmVzb2x2ZUNsdXN0ZXJGcm9tRW5kcG9pbnQiLCAiZW5kcG9pbnQiLCAiZG9tYWluIiwgIlVSTCIsICJob3N0bmFtZSIsICJpbmNsdWRlcyIsICJJbnRlcmZhY2VJbXBsZW1lbnRhdGlvbk1pc3NpbmdFcnJvciIsICJTZGtFcnJvciIsICJfX25hbWUiLCAibmFtZSIsICJjb25zdHJ1Y3RvciIsICJpbnRlcmZhY2VOYW1lIiwgImNvbnRleHRWYXJpYWJsZSIsICJpbnRlcmZhY2VCYXNlbmFtZSIsICJyZXBsYWNlIiwgIm1lc3NhZ2UiLCAiY3JlYXRlTnVsbERvd25sb2FkZXIiLCAiZXJyb3JIYW5kbGVyIiwgIl9fbmFtZSIsICJJbnRlcmZhY2VJbXBsZW1lbnRhdGlvbk1pc3NpbmdFcnJvciIsICJkb3dubG9hZCIsICJkb3dubG9hZEpzb24iLCAiY3JlYXRlTnVsbEVkZHNhIiwgImVycm9ySGFuZGxlciIsICJfX25hbWUiLCAiSW50ZXJmYWNlSW1wbGVtZW50YXRpb25NaXNzaW5nRXJyb3IiLCAiZ2VuZXJhdGVLZXlwYWlyIiwgImNyZWF0ZUtleXBhaXJGcm9tU2VjcmV0S2V5IiwgImNyZWF0ZUtleXBhaXJGcm9tU2VlZCIsICJpc09uQ3VydmUiLCAiZmluZFBkYSIsICJzaWduIiwgInZlcmlmeSIsICJjcmVhdGVOdWxsSHR0cCIsICJzZW5kIiwgIl9fbmFtZSIsICJJbnRlcmZhY2VJbXBsZW1lbnRhdGlvbk1pc3NpbmdFcnJvciIsICJjcmVhdGVOdWxsUHJvZ3JhbVJlcG9zaXRvcnkiLCAiZXJyb3JIYW5kbGVyIiwgIl9fbmFtZSIsICJJbnRlcmZhY2VJbXBsZW1lbnRhdGlvbk1pc3NpbmdFcnJvciIsICJoYXMiLCAiZ2V0IiwgImdldFB1YmxpY0tleSIsICJhbGwiLCAiYWRkIiwgImJpbmQiLCAidW5iaW5kIiwgImNsb25lIiwgInJlc29sdmVFcnJvciIsICJjcmVhdGVOdWxsUnBjIiwgImVycm9ySGFuZGxlciIsICJfX25hbWUiLCAiSW50ZXJmYWNlSW1wbGVtZW50YXRpb25NaXNzaW5nRXJyb3IiLCAiZ2V0RW5kcG9pbnQiLCAiZ2V0Q2x1c3RlciIsICJnZXRBY2NvdW50IiwgImdldEFjY291bnRzIiwgImdldFByb2dyYW1BY2NvdW50cyIsICJnZXRCbG9ja1RpbWUiLCAiZ2V0QmFsYW5jZSIsICJnZXRSZW50IiwgImdldFNsb3QiLCAiZ2V0TGF0ZXN0QmxvY2toYXNoIiwgImdldFRyYW5zYWN0aW9uIiwgImdldFNpZ25hdHVyZVN0YXR1c2VzIiwgImFjY291bnRFeGlzdHMiLCAiYWlyZHJvcCIsICJjYWxsIiwgInNlbmRUcmFuc2FjdGlvbiIsICJjb25maXJtVHJhbnNhY3Rpb24iLCAiY3JlYXRlTnVsbFNlcmlhbGl6ZXIiLCAiZXJyb3JIYW5kbGVyIiwgIl9fbmFtZSIsICJJbnRlcmZhY2VJbXBsZW1lbnRhdGlvbk1pc3NpbmdFcnJvciIsICJ0dXBsZSIsICJhcnJheSIsICJtYXAiLCAic2V0IiwgIm9wdGlvbiIsICJudWxsYWJsZSIsICJzdHJ1Y3QiLCAiZW51bSIsICJkYXRhRW51bSIsICJzdHJpbmciLCAiYm9vbCIsICJ1bml0IiwgInU4IiwgInUxNiIsICJ1MzIiLCAidTY0IiwgInUxMjgiLCAiaTgiLCAiaTE2IiwgImkzMiIsICJpNjQiLCAiaTEyOCIsICJmMzIiLCAiZjY0IiwgImJ5dGVzIiwgInB1YmxpY0tleSIsICJjaHVuayIsICJfX25hbWUiLCAiYXJyYXkiLCAiY2h1bmtTaXplIiwgInJlZHVjZSIsICJjaHVua3MiLCAiaXRlbSIsICJpbmRleCIsICJjaHVua0luZGV4IiwgIk1hdGgiLCAiZmxvb3IiLCAicHVzaCIsICJ6aXBNYXAiLCAibGVmdCIsICJyaWdodCIsICJmbiIsICJtYXAiLCAidCIsICJ1bmlxdWVCeSIsICJhY2MiLCAidiIsICJzb21lIiwgIngiLCAic2lnblRyYW5zYWN0aW9uIiwgIl9fbmFtZSIsICJ0cmFuc2FjdGlvbiIsICJzaWduZXJzIiwgInJlZHVjZSIsICJwcm9taXNlIiwgInNpZ25lciIsICJ1bnNpZ25lZCIsICJQcm9taXNlIiwgInJlc29sdmUiLCAic2lnbkFsbFRyYW5zYWN0aW9ucyIsICJ0cmFuc2FjdGlvbnNXaXRoU2lnbmVycyIsICJ0cmFuc2FjdGlvbnMiLCAibWFwIiwgIml0ZW0iLCAiYWxsIiwgImluZGV4IiwgImZvckVhY2giLCAiZmluZCIsICJwdWJsaWNLZXkiLCAiaW5kaWNlcyIsICJwdXNoIiwgImxlbmd0aCIsICJzaWduZWQiLCAicG9zaXRpb24iLCAiaXNTaWduZXIiLCAidmFsdWUiLCAidW5pcXVlU2lnbmVycyIsICJ1bmlxdWVCeSIsICJhIiwgImIiLCAiY3JlYXRlTm9vcFNpZ25lciIsICJzaWduTWVzc2FnZSIsICJtZXNzYWdlIiwgImNyZWF0ZU51bGxTaWduZXIiLCAiZXJyb3IiLCAiRXJyb3IiLCAiZXJyb3JIYW5kbGVyIiwgImNyZWF0ZU51bGxUcmFuc2FjdGlvbkZhY3RvcnkiLCAiZXJyb3JIYW5kbGVyIiwgIl9fbmFtZSIsICJJbnRlcmZhY2VJbXBsZW1lbnRhdGlvbk1pc3NpbmdFcnJvciIsICJjcmVhdGUiLCAic2VyaWFsaXplIiwgImRlc2VyaWFsaXplIiwgInNlcmlhbGl6ZU1lc3NhZ2UiLCAiZGVzZXJpYWxpemVNZXNzYWdlIiwgImNyZWF0ZU51bGxVcGxvYWRlciIsICJlcnJvckhhbmRsZXIiLCAiX19uYW1lIiwgIkludGVyZmFjZUltcGxlbWVudGF0aW9uTWlzc2luZ0Vycm9yIiwgInVwbG9hZCIsICJ1cGxvYWRKc29uIiwgImdldFVwbG9hZFByaWNlIiwgImNyZWF0ZU51bGxDb250ZXh0IiwgIl9fbmFtZSIsICJkb3dubG9hZGVyIiwgImNyZWF0ZU51bGxEb3dubG9hZGVyIiwgImVkZHNhIiwgImNyZWF0ZU51bGxFZGRzYSIsICJodHRwIiwgImNyZWF0ZU51bGxIdHRwIiwgImlkZW50aXR5IiwgImNyZWF0ZU51bGxTaWduZXIiLCAicGF5ZXIiLCAicHJvZ3JhbXMiLCAiY3JlYXRlTnVsbFByb2dyYW1SZXBvc2l0b3J5IiwgInJwYyIsICJjcmVhdGVOdWxsUnBjIiwgInNlcmlhbGl6ZXIiLCAiY3JlYXRlTnVsbFNlcmlhbGl6ZXIiLCAidHJhbnNhY3Rpb25zIiwgImNyZWF0ZU51bGxUcmFuc2FjdGlvbkZhY3RvcnkiLCAidXBsb2FkZXIiLCAiY3JlYXRlTnVsbFVwbG9hZGVyIiwgImRhdGVUaW1lIiwgInZhbHVlIiwgImlzRGF0ZU9iamVjdCIsICJkYXRlIiwgIkRhdGUiLCAidGltZXN0YW1wIiwgIk1hdGgiLCAiZmxvb3IiLCAiZ2V0VGltZSIsICJjcmVhdGVCaWdJbnQiLCAibm93IiwgIl9fbmFtZSIsICJPYmplY3QiLCAicHJvdG90eXBlIiwgInRvU3RyaW5nIiwgImNhbGwiLCAiZm9ybWF0RGF0ZVRpbWUiLCAibG9jYWxlcyIsICJvcHRpb25zIiwgIm1vbnRoIiwgImRheSIsICJ5ZWFyIiwgImhvdXIiLCAibWludXRlIiwgIk51bWJlciIsICJ0b0xvY2FsZURhdGVTdHJpbmciLCAibWFwRGF0ZVRpbWVTZXJpYWxpemVyIiwgInNlcmlhbGl6ZXIiLCAibWFwU2VyaWFsaXplciIsICJNQVhfU0FGRV9JTlRFR0VSIiwgImdlbmVyYXRlUmFuZG9tU3RyaW5nIiwgIl9fbmFtZSIsICJsZW5ndGgiLCAiYWxwaGFiZXQiLCAicmVzdWx0IiwgImFscGhhYmV0TGVuZ3RoIiwgImkiLCAiY2hhckF0IiwgIk1hdGgiLCAiZmxvb3IiLCAicmFuZG9tIiwgImNyZWF0ZUdlbmVyaWNGaWxlIiwgIl9fbmFtZSIsICJjb250ZW50IiwgImZpbGVOYW1lIiwgIm9wdGlvbnMiLCAiYnVmZmVyIiwgInV0ZjgiLCAic2VyaWFsaXplIiwgImRpc3BsYXlOYW1lIiwgInVuaXF1ZU5hbWUiLCAiZ2VuZXJhdGVSYW5kb21TdHJpbmciLCAiY29udGVudFR5cGUiLCAiZXh0ZW5zaW9uIiwgImdldEV4dGVuc2lvbiIsICJ0YWdzIiwgImNyZWF0ZUdlbmVyaWNGaWxlRnJvbUJyb3dzZXJGaWxlIiwgImJyb3dzZXJGaWxlIiwgIlVpbnQ4QXJyYXkiLCAiYXJyYXlCdWZmZXIiLCAibmFtZSIsICJjcmVhdGVHZW5lcmljRmlsZUZyb21Kc29uIiwgImpzb24iLCAiSlNPTiIsICJzdHJpbmdpZnkiLCAiY3JlYXRlQnJvd3NlckZpbGVGcm9tR2VuZXJpY0ZpbGUiLCAiZmlsZSIsICJGaWxlIiwgInBhcnNlSnNvbkZyb21HZW5lcmljRmlsZSIsICJwYXJzZSIsICJUZXh0RGVjb2RlciIsICJkZWNvZGUiLCAiZ2V0Qnl0ZXNGcm9tR2VuZXJpY0ZpbGVzIiwgImZpbGVzIiwgInJlZHVjZSIsICJhY2MiLCAiYnl0ZUxlbmd0aCIsICJpc0dlbmVyaWNGaWxlIiwgImxhc3REb3RJbmRleCIsICJsYXN0SW5kZXhPZiIsICJzbGljZSIsICJHcGFCdWlsZGVyIiwgIl9fbmFtZSIsICJjb25zdHJ1Y3RvciIsICJjb250ZXh0IiwgInByb2dyYW1JZCIsICJvcHRpb25zIiwgInJlc2V0IiwgImZpZWxkcyIsICJkZXNlcmlhbGl6ZUNhbGxiYWNrIiwgInJlZ2lzdGVyRmllbGRzIiwgInJlZ2lzdGVyRmllbGRzRnJvbVN0cnVjdCIsICJzdHJ1Y3RGaWVsZHMiLCAib2Zmc2V0IiwgInJlZHVjZSIsICJhY2MiLCAiZmllbGQiLCAic2VyaWFsaXplciIsICJmaXhlZFNpemUiLCAiZGVzZXJpYWxpemVVc2luZyIsICJjYWxsYmFjayIsICJzbGljZSIsICJsZW5ndGgiLCAiZGF0YVNsaWNlIiwgInNsaWNlRmllbGQiLCAiZWZmZWN0aXZlT2Zmc2V0IiwgImdldEZpZWxkIiwgIlNka0Vycm9yIiwgIndpdGhvdXREYXRhIiwgImFkZEZpbHRlciIsICJmaWx0ZXJzIiwgIndoZXJlIiwgImRhdGEiLCAiYnl0ZXMiLCAiYmFzZTU4IiwgInNlcmlhbGl6ZSIsICJiYXNlMTAiLCAiQmlnSW50IiwgInRvU3RyaW5nIiwgIlVpbnQ4QXJyYXkiLCAibWVtY21wIiwgIndoZXJlRmllbGQiLCAid2hlcmVTaXplIiwgImRhdGFTaXplIiwgInNvcnRVc2luZyIsICJzb3J0Q2FsbGJhY2siLCAiZ2V0IiwgImFjY291bnRzIiwgInJwYyIsICJnZXRQcm9ncmFtQWNjb3VudHMiLCAic29ydCIsICJnZXRBbmRNYXAiLCAibWFwIiwgImdldERlc2VyaWFsaXplZCIsICJycGNBY2NvdW50cyIsICJnZXRQdWJsaWNLZXlzIiwgImFjY291bnQiLCAicHVibGljS2V5IiwgImdldERhdGFBc1B1YmxpY0tleXMiLCAibWVzc2FnZSIsICJiYXNlNjQiLCAiZGVzZXJpYWxpemUiLCAiZmllbGROYW1lIiwgImZvcmNlZE9mZnNldCIsICJ1bmRlZmluZWQiLCAiZ3BhQnVpbGRlciIsICJyZXF1ZXN0IiwgIl9fbmFtZSIsICJIdHRwUmVxdWVzdEJ1aWxkZXIiLCAibWV0aG9kIiwgImRhdGEiLCAidW5kZWZpbmVkIiwgImhlYWRlcnMiLCAidXJsIiwgImNvbnN0cnVjdG9yIiwgImFzSnNvbiIsICJjb250ZW50VHlwZSIsICJhc011bHRpcGFydCIsICJhc0Zvcm0iLCAiYWNjZXB0IiwgIndpdGhIZWFkZXIiLCAidXNlckFnZW50IiwgIndpdGhUb2tlbiIsICJ0b2tlbiIsICJ0eXBlIiwgImtleSIsICJ2YWx1ZSIsICJ3aXRoSGVhZGVycyIsICJkb250Rm9sbG93UmVkaXJlY3RzIiwgImZvbGxvd1JlZGlyZWN0cyIsICJtYXhSZWRpcmVjdHMiLCAid2l0aG91dFRpbWVvdXQiLCAid2l0aFRpbWVvdXQiLCAidGltZW91dCIsICJ3aXRoQWJvcnRTaWduYWwiLCAic2lnbmFsIiwgIndpdGhFbmRwb2ludCIsICJ3aXRoUGFyYW1zIiwgInBhcmFtcyIsICJVUkwiLCAibmV3U2VhcmNoIiwgIlVSTFNlYXJjaFBhcmFtcyIsICJzZWFyY2giLCAic2VhcmNoUGFyYW1zIiwgImVudHJpZXMiLCAiZm9yRWFjaCIsICJ2YWwiLCAiYXBwZW5kIiwgInRvU3RyaW5nIiwgIndpdGhEYXRhIiwgImdldCIsICJwb3N0IiwgInB1dCIsICJwYXRjaCIsICJkZWxldGUiLCAiVFJBTlNBQ1RJT05fU0laRV9MSU1JVCIsICJhZGRUcmFuc2FjdGlvblNpZ25hdHVyZSIsICJfX25hbWUiLCAidHJhbnNhY3Rpb24iLCAic2lnbmF0dXJlIiwgInNpZ25lclB1YmxpY0tleSIsICJtYXhTaWduZXJzIiwgIm1lc3NhZ2UiLCAiaGVhZGVyIiwgIm51bVJlcXVpcmVkU2lnbmF0dXJlcyIsICJzaWduZXJJbmRleCIsICJhY2NvdW50cyIsICJzbGljZSIsICJmaW5kSW5kZXgiLCAia2V5IiwgIkVycm9yIiwgIm5ld1NpZ25hdHVyZXMiLCAic2lnbmF0dXJlcyIsICJnZW5lcmF0ZVNpZ25lciIsICJjb250ZXh0IiwgImNyZWF0ZVNpZ25lckZyb21LZXlwYWlyIiwgImVkZHNhIiwgImdlbmVyYXRlS2V5cGFpciIsICJfX25hbWUiLCAia2V5cGFpciIsICJwdWJsaWNLZXkiLCAic2VjcmV0S2V5IiwgInNpZ25NZXNzYWdlIiwgIm1lc3NhZ2UiLCAic2lnbiIsICJzaWduVHJhbnNhY3Rpb24iLCAidHJhbnNhY3Rpb24iLCAic2VyaWFsaXplZE1lc3NhZ2UiLCAic2lnbmF0dXJlIiwgImFkZFRyYW5zYWN0aW9uU2lnbmF0dXJlIiwgInNpZ25BbGxUcmFuc2FjdGlvbnMiLCAidHJhbnNhY3Rpb25zIiwgIlByb21pc2UiLCAiYWxsIiwgIm1hcCIsICJpc0tleXBhaXJTaWduZXIiLCAic2lnbmVyIiwgInVuZGVmaW5lZCIsICJpc0Vycm9yV2l0aExvZ3MiLCAiZXJyb3IiLCAiRXJyb3IiLCAic2lnbmVySWRlbnRpdHkiLCAiX19uYW1lIiwgInNpZ25lciIsICJzZXRQYXllciIsICJpbnN0YWxsIiwgInVtaSIsICJpZGVudGl0eSIsICJwYXllciIsICJzaWduZXJQYXllciIsICJnZW5lcmF0ZWRTaWduZXJJZGVudGl0eSIsICJnZW5lcmF0ZVNpZ25lciIsICJ1c2UiLCAiZ2VuZXJhdGVkU2lnbmVyUGF5ZXIiLCAia2V5cGFpcklkZW50aXR5IiwgImtleXBhaXIiLCAiY3JlYXRlU2lnbmVyRnJvbUtleXBhaXIiLCAia2V5cGFpclBheWVyIiwgIlRyYW5zYWN0aW9uQnVpbGRlciIsICJfX25hbWUiLCAiY29uc3RydWN0b3IiLCAiaXRlbXMiLCAib3B0aW9ucyIsICJlbXB0eSIsICJzZXRJdGVtcyIsICJpbnB1dCIsICJwYXJzZUl0ZW1zIiwgInByZXBlbmQiLCAiYXBwZW5kIiwgImFkZCIsICJtYXBJbnN0cnVjdGlvbnMiLCAiZm4iLCAibWFwIiwgImFkZFJlbWFpbmluZ0FjY291bnRzIiwgImFjY291bnRNZXRhIiwgImluc3RydWN0aW9uSW5kZXgiLCAibGVuZ3RoIiwgIndyYXBwZWRJbnN0cnVjdGlvbiIsICJpbmRleCIsICJrZXlzIiwgImluc3RydWN0aW9uIiwgIkFycmF5IiwgImlzQXJyYXkiLCAic3BsaXRCeUluZGV4IiwgInNsaWNlIiwgInVuc2FmZVNwbGl0QnlUcmFuc2FjdGlvblNpemUiLCAiY29udGV4dCIsICJyZWR1Y2UiLCAiYnVpbGRlcnMiLCAiaXRlbSIsICJsYXN0QnVpbGRlciIsICJwb3AiLCAibGFzdEJ1aWxkZXJXaXRoSXRlbSIsICJmaXRzSW5PbmVUcmFuc2FjdGlvbiIsICJwdXNoIiwgInNldEZlZVBheWVyIiwgImZlZVBheWVyIiwgImdldEZlZVBheWVyIiwgInBheWVyIiwgInNldFZlcnNpb24iLCAidmVyc2lvbiIsICJ1c2VMZWdhY3lWZXJzaW9uIiwgInVzZVYwIiwgInNldEFkZHJlc3NMb29rdXBUYWJsZXMiLCAiYWRkcmVzc0xvb2t1cFRhYmxlcyIsICJnZXRCbG9ja2hhc2giLCAiYmxvY2toYXNoIiwgInNldEJsb2NraGFzaCIsICJzZXRMYXRlc3RCbG9ja2hhc2giLCAicnBjIiwgImdldExhdGVzdEJsb2NraGFzaCIsICJnZXRJbnN0cnVjdGlvbnMiLCAiZ2V0U2lnbmVycyIsICJ1bmlxdWVTaWduZXJzIiwgImZsYXRNYXAiLCAic2lnbmVycyIsICJnZXRCeXRlc0NyZWF0ZWRPbkNoYWluIiwgInN1bSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgImdldFJlbnRDcmVhdGVkT25DaGFpbiIsICJnZXRSZW50IiwgImluY2x1ZGVzSGVhZGVyQnl0ZXMiLCAiZ2V0VHJhbnNhY3Rpb25TaXplIiwgInRyYW5zYWN0aW9ucyIsICJzZXJpYWxpemUiLCAiYnVpbGQiLCAibWluaW11bVRyYW5zYWN0aW9uc1JlcXVpcmVkIiwgIk1hdGgiLCAiY2VpbCIsICJUUkFOU0FDVElPTl9TSVpFX0xJTUlUIiwgIlNka0Vycm9yIiwgInB1YmxpY0tleSIsICJpbnN0cnVjdGlvbnMiLCAiY3JlYXRlIiwgImJ1aWxkV2l0aExhdGVzdEJsb2NraGFzaCIsICJidWlsZGVyIiwgImJ1aWxkQW5kU2lnbiIsICJzaWduVHJhbnNhY3Rpb24iLCAic2VuZCIsICJ0cmFuc2FjdGlvbiIsICJzZW5kVHJhbnNhY3Rpb24iLCAiY29uZmlybSIsICJzaWduYXR1cmUiLCAic3RyYXRlZ3kiLCAidHlwZSIsICJjb25maXJtVHJhbnNhY3Rpb24iLCAic2VuZEFuZENvbmZpcm0iLCAicmVzdWx0IiwgInRyYW5zYWN0aW9uQnVpbGRlciIsICJUcmFuc2FjdGlvbkJ1aWxkZXJHcm91cCIsICJfX25hbWUiLCAiY29uc3RydWN0b3IiLCAiYnVpbGRlcnMiLCAib3B0aW9ucyIsICJwcmVwZW5kIiwgImJ1aWxkZXIiLCAibmV3QnVpbGRlcnMiLCAiQXJyYXkiLCAiaXNBcnJheSIsICJhcHBlbmQiLCAiYWRkIiwgInNlcXVlbnRpYWwiLCAicGFyYWxsZWwiLCAiaXNQYXJhbGxlbCIsICJtZXJnZSIsICJsZW5ndGgiLCAiVHJhbnNhY3Rpb25CdWlsZGVyIiwgInJlZHVjZSIsICJuZXh0IiwgImVtcHR5IiwgImJ1aWxkIiwgImNvbnRleHQiLCAibWFwIiwgInNldExhdGVzdEJsb2NraGFzaCIsICJzb21lIiwgImJsb2NraGFzaCIsICJycGMiLCAiZ2V0TGF0ZXN0QmxvY2toYXNoIiwgInNldEJsb2NraGFzaCIsICJidWlsZFdpdGhMYXRlc3RCbG9ja2hhc2giLCAiYnVpbGRBbmRTaWduIiwgInRyYW5zYWN0aW9ucyIsICJzaWduZXJzIiwgImdldFNpZ25lcnMiLCAic2lnbkFsbFRyYW5zYWN0aW9ucyIsICJ6aXBNYXAiLCAidHJhbnNhY3Rpb24iLCAidHhTaWduZXJzIiwgInNlbmQiLCAicnVuQWxsIiwgInR4IiwgInNlbmRUcmFuc2FjdGlvbiIsICJzZW5kQW5kQ29uZmlybSIsICJibG9ja2hhc2hXaXRoRXhwaXJ5QmxvY2tIZWlnaHQiLCAiZmluZCIsICJzdHJhdGVneSIsICJjb25maXJtIiwgInR5cGUiLCAic2lnbmF0dXJlIiwgInJlc3VsdCIsICJjb25maXJtVHJhbnNhY3Rpb24iLCAiZm4iLCAiZmlsdGVyIiwgImFycmF5IiwgIlByb21pc2UiLCAiYWxsIiwgInByb21pc2UiLCAiYXJncyIsICJyZXNvbHZlIiwgInRyYW5zYWN0aW9uQnVpbGRlckdyb3VwIiwgImNyZWF0ZVVtaSIsICJfX25hbWUiLCAiY3JlYXRlTnVsbENvbnRleHQiLCAidXNlIiwgInBsdWdpbiIsICJpbnN0YWxsIiwgIkludmFsaWRCYXNlU3RyaW5nRXJyb3IiLCAiU2RrRXJyb3IiLCAiX19uYW1lIiwgIm5hbWUiLCAiY29uc3RydWN0b3IiLCAidmFsdWUiLCAiYmFzZSIsICJjYXVzZSIsICJtZXNzYWdlIiwgIlByb2dyYW1FcnJvciIsICJVbWlFcnJvciIsICJfX25hbWUiLCAibmFtZSIsICJjb25zdHJ1Y3RvciIsICJtZXNzYWdlIiwgInByb2dyYW0iLCAiY2F1c2UiLCAicHVibGljS2V5IiwgImxvZ3MiLCAibWFwIiwgImxvZyIsICJqb2luIiwgInJlcXVpcmVfY2pzIiwgIl9fY29tbW9uSlNNaW4iLCAiZXhwb3J0cyIsICJ1bWlPcHRpb25zIiwgInVtaVB1YmxpY0tleXMiLCAic2VyaWFsaXplcnNJbnRlcm5hbCIsICJBY2NvdW50IiwgIkFtb3VudCIsICJCaWdJbnQiLCAiQ2x1c3RlciIsICJDb250ZXh0IiwgIkRhdGVUaW1lIiwgIkRvd25sb2FkZXJJbnRlcmZhY2UiLCAiRWRkc2FJbnRlcmZhY2UiLCAiR2VuZXJpY0ZpbGUiLCAiR3BhQnVpbGRlciIsICJIdHRwSW50ZXJmYWNlIiwgIkh0dHBSZXF1ZXN0IiwgIktleXBhaXIiLCAiUHJvZ3JhbSIsICJQcm9ncmFtUmVwb3NpdG9yeUludGVyZmFjZSIsICJScGNJbnRlcmZhY2UiLCAiU2VyaWFsaXplckludGVyZmFjZSIsICJTaWduZXIiLCAiU2lnbmVyUGx1Z2lucyIsICJUcmFuc2FjdGlvbiIsICJUcmFuc2FjdGlvbkJ1aWxkZXIiLCAiVHJhbnNhY3Rpb25CdWlsZGVyR3JvdXAiLCAiVHJhbnNhY3Rpb25GYWN0b3J5SW50ZXJmYWNlIiwgIlVtaSIsICJVcGxvYWRlckludGVyZmFjZSIsICJBY2NvdW50Tm90Rm91bmRFcnJvciIsICJBbW91bnRNaXNtYXRjaEVycm9yIiwgIkludGVyZmFjZUltcGxlbWVudGF0aW9uTWlzc2luZ0Vycm9yIiwgIkludmFsaWRCYXNlU3RyaW5nRXJyb3IiLCAiUHJvZ3JhbUVycm9yIiwgIlNka0Vycm9yIiwgIlVtaUVycm9yIiwgIlVuZXhwZWN0ZWRBY2NvdW50RXJyb3IiLCAiVW5leHBlY3RlZEFtb3VudEVycm9yIiwgImFycmF5cyIsICJyYW5kb21TdHJpbmdzIiwgImsiLCAicmVxdWlyZV9zZXJpYWxpemVycyIsICJfX2NvbW1vbkpTTWluIiwgImV4cG9ydHMiLCAidW1pU2VyaWFsaXplcnMiLCAiayIsICJzZXJpYWxpemVyc18xIiwgIkF1dGhvcml0eVR5cGUiLCAiZXhwb3J0cyIsICJnZXRBdXRob3JpdHlUeXBlU2VyaWFsaXplciIsICJfX25hbWUiLCAic2VyaWFsaXplcnNfMSIsICJfMSIsICJnZXRBdXRob3JpemF0aW9uRGF0YVNlcmlhbGl6ZXIiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAic2VyaWFsaXplcnNfMSIsICJnZXRCdXJuQXJnc1NlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAiYnVybkFyZ3MiLCAia2luZCIsICJkYXRhIiwgImlzQnVybkFyZ3MiLCAic2VyaWFsaXplcnNfMSIsICJnZXRDb2xsZWN0aW9uU2VyaWFsaXplciIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJzZXJpYWxpemVyc18xIiwgImdldENvbGxlY3Rpb25EZXRhaWxzU2VyaWFsaXplciIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJjb2xsZWN0aW9uRGV0YWlscyIsICJraW5kIiwgImRhdGEiLCAiaXNDb2xsZWN0aW9uRGV0YWlscyIsICJ2YWx1ZSIsICJzZXJpYWxpemVyc18xIiwgIl8xIiwgImdldENvbGxlY3Rpb25EZXRhaWxzVG9nZ2xlU2VyaWFsaXplciIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJjb2xsZWN0aW9uRGV0YWlsc1RvZ2dsZSIsICJraW5kIiwgImRhdGEiLCAiaXNDb2xsZWN0aW9uRGV0YWlsc1RvZ2dsZSIsICJ2YWx1ZSIsICJzZXJpYWxpemVyc18xIiwgIl8xIiwgImdldENvbGxlY3Rpb25Ub2dnbGVTZXJpYWxpemVyIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImNvbGxlY3Rpb25Ub2dnbGUiLCAia2luZCIsICJkYXRhIiwgImlzQ29sbGVjdGlvblRvZ2dsZSIsICJ2YWx1ZSIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgIl8xIiwgImdldENyZWF0ZUFyZ3NTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImNyZWF0ZUFyZ3MiLCAia2luZCIsICJkYXRhIiwgImlzQ3JlYXRlQXJncyIsICJzZXJpYWxpemVyc18xIiwgImdldENyZWF0b3JTZXJpYWxpemVyIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInNlcmlhbGl6ZXJzXzEiLCAiXzEiLCAiZ2V0RGF0YVNlcmlhbGl6ZXIiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAic2VyaWFsaXplcnNfMSIsICJfMSIsICJnZXREYXRhVjJTZXJpYWxpemVyIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAiXzEiLCAiZ2V0RGVsZWdhdGVBcmdzU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJkZWxlZ2F0ZUFyZ3MiLCAia2luZCIsICJkYXRhIiwgImlzRGVsZWdhdGVBcmdzIiwgInNlcmlhbGl6ZXJzXzEiLCAiZ2V0RXNjcm93QXV0aG9yaXR5U2VyaWFsaXplciIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJlc2Nyb3dBdXRob3JpdHkiLCAia2luZCIsICJkYXRhIiwgImlzRXNjcm93QXV0aG9yaXR5IiwgInZhbHVlIiwgInNlcmlhbGl6ZXJzXzEiLCAiS2V5IiwgImV4cG9ydHMiLCAiZ2V0S2V5U2VyaWFsaXplciIsICJfX25hbWUiLCAic2VyaWFsaXplcnNfMSIsICJnZXRMZWFmSW5mb1NlcmlhbGl6ZXIiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJfMSIsICJnZXRMb2NrQXJnc1NlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAibG9ja0FyZ3MiLCAia2luZCIsICJkYXRhIiwgImlzTG9ja0FyZ3MiLCAic2VyaWFsaXplcnNfMSIsICJNZXRhZGF0YURlbGVnYXRlUm9sZSIsICJleHBvcnRzIiwgImdldE1ldGFkYXRhRGVsZWdhdGVSb2xlU2VyaWFsaXplciIsICJfX25hbWUiLCAic2VyaWFsaXplcnNfMSIsICJNaWdyYXRpb25UeXBlIiwgImV4cG9ydHMiLCAiZ2V0TWlncmF0aW9uVHlwZVNlcmlhbGl6ZXIiLCAiX19uYW1lIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAiXzEiLCAiZ2V0TWludEFyZ3NTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgIm1pbnRBcmdzIiwgImtpbmQiLCAiZGF0YSIsICJpc01pbnRBcmdzIiwgInNlcmlhbGl6ZXJzXzEiLCAiZ2V0TWludE5ld0VkaXRpb25Gcm9tTWFzdGVyRWRpdGlvblZpYVRva2VuQXJnc1NlcmlhbGl6ZXIiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAic2VyaWFsaXplcnNfMSIsICJfMSIsICJnZXRQYXlsb2FkU2VyaWFsaXplciIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJzZXJpYWxpemVyc18xIiwgIlBheWxvYWRLZXkiLCAiZXhwb3J0cyIsICJnZXRQYXlsb2FkS2V5U2VyaWFsaXplciIsICJfX25hbWUiLCAic2VyaWFsaXplcnNfMSIsICJfMSIsICJnZXRQYXlsb2FkVHlwZVNlcmlhbGl6ZXIiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAicGF5bG9hZFR5cGUiLCAia2luZCIsICJkYXRhIiwgImlzUGF5bG9hZFR5cGUiLCAidmFsdWUiLCAic2VyaWFsaXplcnNfMSIsICJnZXRQcmludEFyZ3NTZXJpYWxpemVyIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInByaW50QXJncyIsICJraW5kIiwgImRhdGEiLCAiaXNQcmludEFyZ3MiLCAidmFsdWUiLCAic2VyaWFsaXplcnNfMSIsICJnZXRQcmludFN1cHBseVNlcmlhbGl6ZXIiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAicHJpbnRTdXBwbHkiLCAia2luZCIsICJkYXRhIiwgImlzUHJpbnRTdXBwbHkiLCAidmFsdWUiLCAic2VyaWFsaXplcnNfMSIsICJnZXRQcm9ncmFtbWFibGVDb25maWdTZXJpYWxpemVyIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInByb2dyYW1tYWJsZUNvbmZpZyIsICJraW5kIiwgImRhdGEiLCAiaXNQcm9ncmFtbWFibGVDb25maWciLCAidmFsdWUiLCAic2VyaWFsaXplcnNfMSIsICJnZXRSZXNlcnZhdGlvblNlcmlhbGl6ZXIiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAic2VyaWFsaXplcnNfMSIsICJnZXRSZXNlcnZhdGlvblYxU2VyaWFsaXplciIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJzZXJpYWxpemVyc18xIiwgIlJldm9rZUFyZ3MiLCAiZXhwb3J0cyIsICJnZXRSZXZva2VBcmdzU2VyaWFsaXplciIsICJfX25hbWUiLCAic2VyaWFsaXplcnNfMSIsICJnZXRSdWxlU2V0VG9nZ2xlU2VyaWFsaXplciIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJydWxlU2V0VG9nZ2xlIiwgImtpbmQiLCAiZGF0YSIsICJpc1J1bGVTZXRUb2dnbGUiLCAidmFsdWUiLCAic2VyaWFsaXplcnNfMSIsICJnZXRTZWVkc1ZlY1NlcmlhbGl6ZXIiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAic2VyaWFsaXplcnNfMSIsICJnZXRTZXRDb2xsZWN0aW9uU2l6ZUFyZ3NTZXJpYWxpemVyIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInNlcmlhbGl6ZXJzXzEiLCAiVG9rZW5EZWxlZ2F0ZVJvbGUiLCAiZXhwb3J0cyIsICJnZXRUb2tlbkRlbGVnYXRlUm9sZVNlcmlhbGl6ZXIiLCAiX19uYW1lIiwgInNlcmlhbGl6ZXJzXzEiLCAiVG9rZW5TdGFuZGFyZCIsICJleHBvcnRzIiwgImdldFRva2VuU3RhbmRhcmRTZXJpYWxpemVyIiwgIl9fbmFtZSIsICJzZXJpYWxpemVyc18xIiwgIlRva2VuU3RhdGUiLCAiZXhwb3J0cyIsICJnZXRUb2tlblN0YXRlU2VyaWFsaXplciIsICJfX25hbWUiLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJfMSIsICJnZXRUcmFuc2ZlckFyZ3NTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInRyYW5zZmVyQXJncyIsICJraW5kIiwgImRhdGEiLCAiaXNUcmFuc2ZlckFyZ3MiLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJfMSIsICJnZXRVbmxvY2tBcmdzU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJ1bmxvY2tBcmdzIiwgImtpbmQiLCAiZGF0YSIsICJpc1VubG9ja0FyZ3MiLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJfMSIsICJnZXRVcGRhdGVBcmdzU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJ1cGRhdGVBcmdzIiwgImtpbmQiLCAiZGF0YSIsICJpc1VwZGF0ZUFyZ3MiLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJfMSIsICJnZXRVc2VBcmdzU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJ1c2VBcmdzIiwgImtpbmQiLCAiZGF0YSIsICJpc1VzZUFyZ3MiLCAic2VyaWFsaXplcnNfMSIsICJVc2VNZXRob2QiLCAiZXhwb3J0cyIsICJnZXRVc2VNZXRob2RTZXJpYWxpemVyIiwgIl9fbmFtZSIsICJzZXJpYWxpemVyc18xIiwgIl8xIiwgImdldFVzZXNTZXJpYWxpemVyIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInNlcmlhbGl6ZXJzXzEiLCAiXzEiLCAiZ2V0VXNlc1RvZ2dsZVNlcmlhbGl6ZXIiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAidXNlc1RvZ2dsZSIsICJraW5kIiwgImRhdGEiLCAiaXNVc2VzVG9nZ2xlIiwgInZhbHVlIiwgInNlcmlhbGl6ZXJzXzEiLCAiVmVyaWZpY2F0aW9uQXJncyIsICJleHBvcnRzIiwgImdldFZlcmlmaWNhdGlvbkFyZ3NTZXJpYWxpemVyIiwgIl9fbmFtZSIsICJfX2V4cG9ydFN0YXIiLCAiZXhwb3J0cyIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInR5cGVzXzEiLCAiZ2V0Q29sbGVjdGlvbkF1dGhvcml0eVJlY29yZEFjY291bnREYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJkZXNlcmlhbGl6ZUNvbGxlY3Rpb25BdXRob3JpdHlSZWNvcmQiLCAicmF3QWNjb3VudCIsICJmZXRjaENvbGxlY3Rpb25BdXRob3JpdHlSZWNvcmQiLCAiY29udGV4dCIsICJwdWJsaWNLZXkiLCAib3B0aW9ucyIsICJtYXliZUFjY291bnQiLCAic2FmZUZldGNoQ29sbGVjdGlvbkF1dGhvcml0eVJlY29yZCIsICJmZXRjaEFsbENvbGxlY3Rpb25BdXRob3JpdHlSZWNvcmQiLCAicHVibGljS2V5cyIsICJrZXkiLCAic2FmZUZldGNoQWxsQ29sbGVjdGlvbkF1dGhvcml0eVJlY29yZCIsICJnZXRDb2xsZWN0aW9uQXV0aG9yaXR5UmVjb3JkR3BhQnVpbGRlciIsICJwcm9ncmFtSWQiLCAiYWNjb3VudCIsICJmaW5kQ29sbGVjdGlvbkF1dGhvcml0eVJlY29yZFBkYSIsICJzZWVkcyIsICJmZXRjaENvbGxlY3Rpb25BdXRob3JpdHlSZWNvcmRGcm9tU2VlZHMiLCAic2FmZUZldGNoQ29sbGVjdGlvbkF1dGhvcml0eVJlY29yZEZyb21TZWVkcyIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInR5cGVzXzEiLCAiZ2V0RWRpdGlvbkFjY291bnREYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJkZXNlcmlhbGl6ZUVkaXRpb24iLCAicmF3QWNjb3VudCIsICJmZXRjaEVkaXRpb24iLCAiY29udGV4dCIsICJwdWJsaWNLZXkiLCAib3B0aW9ucyIsICJtYXliZUFjY291bnQiLCAic2FmZUZldGNoRWRpdGlvbiIsICJmZXRjaEFsbEVkaXRpb24iLCAicHVibGljS2V5cyIsICJrZXkiLCAic2FmZUZldGNoQWxsRWRpdGlvbiIsICJnZXRFZGl0aW9uR3BhQnVpbGRlciIsICJwcm9ncmFtSWQiLCAiYWNjb3VudCIsICJnZXRFZGl0aW9uU2l6ZSIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInR5cGVzXzEiLCAiZ2V0RWRpdGlvbk1hcmtlckFjY291bnREYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJkZXNlcmlhbGl6ZUVkaXRpb25NYXJrZXIiLCAicmF3QWNjb3VudCIsICJmZXRjaEVkaXRpb25NYXJrZXIiLCAiY29udGV4dCIsICJwdWJsaWNLZXkiLCAib3B0aW9ucyIsICJtYXliZUFjY291bnQiLCAic2FmZUZldGNoRWRpdGlvbk1hcmtlciIsICJmZXRjaEFsbEVkaXRpb25NYXJrZXIiLCAicHVibGljS2V5cyIsICJrZXkiLCAic2FmZUZldGNoQWxsRWRpdGlvbk1hcmtlciIsICJnZXRFZGl0aW9uTWFya2VyR3BhQnVpbGRlciIsICJwcm9ncmFtSWQiLCAiYWNjb3VudCIsICJnZXRFZGl0aW9uTWFya2VyU2l6ZSIsICJmaW5kRWRpdGlvbk1hcmtlclBkYSIsICJzZWVkcyIsICJmZXRjaEVkaXRpb25NYXJrZXJGcm9tU2VlZHMiLCAic2FmZUZldGNoRWRpdGlvbk1hcmtlckZyb21TZWVkcyIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInR5cGVzXzEiLCAiZ2V0RWRpdGlvbk1hcmtlclYyQWNjb3VudERhdGFTZXJpYWxpemVyIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImRlc2VyaWFsaXplRWRpdGlvbk1hcmtlclYyIiwgInJhd0FjY291bnQiLCAiZmV0Y2hFZGl0aW9uTWFya2VyVjIiLCAiY29udGV4dCIsICJwdWJsaWNLZXkiLCAib3B0aW9ucyIsICJtYXliZUFjY291bnQiLCAic2FmZUZldGNoRWRpdGlvbk1hcmtlclYyIiwgImZldGNoQWxsRWRpdGlvbk1hcmtlclYyIiwgInB1YmxpY0tleXMiLCAia2V5IiwgInNhZmVGZXRjaEFsbEVkaXRpb25NYXJrZXJWMiIsICJnZXRFZGl0aW9uTWFya2VyVjJHcGFCdWlsZGVyIiwgInByb2dyYW1JZCIsICJhY2NvdW50IiwgImZpbmRFZGl0aW9uTWFya2VyVjJQZGEiLCAic2VlZHMiLCAiZmV0Y2hFZGl0aW9uTWFya2VyVjJGcm9tU2VlZHMiLCAic2FmZUZldGNoRWRpdGlvbk1hcmtlclYyRnJvbVNlZWRzIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAidHlwZXNfMSIsICJnZXRNYXN0ZXJFZGl0aW9uQWNjb3VudERhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImRlc2VyaWFsaXplTWFzdGVyRWRpdGlvbiIsICJyYXdBY2NvdW50IiwgImZldGNoTWFzdGVyRWRpdGlvbiIsICJjb250ZXh0IiwgInB1YmxpY0tleSIsICJvcHRpb25zIiwgIm1heWJlQWNjb3VudCIsICJzYWZlRmV0Y2hNYXN0ZXJFZGl0aW9uIiwgImZldGNoQWxsTWFzdGVyRWRpdGlvbiIsICJwdWJsaWNLZXlzIiwgImtleSIsICJzYWZlRmV0Y2hBbGxNYXN0ZXJFZGl0aW9uIiwgImdldE1hc3RlckVkaXRpb25HcGFCdWlsZGVyIiwgInByb2dyYW1JZCIsICJhY2NvdW50IiwgImZpbmRNYXN0ZXJFZGl0aW9uUGRhIiwgInNlZWRzIiwgImZldGNoTWFzdGVyRWRpdGlvbkZyb21TZWVkcyIsICJzYWZlRmV0Y2hNYXN0ZXJFZGl0aW9uRnJvbVNlZWRzIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAidHlwZXNfMSIsICJnZXRNZXRhZGF0YUFjY291bnREYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJkZXNlcmlhbGl6ZU1ldGFkYXRhIiwgInJhd0FjY291bnQiLCAiZmV0Y2hNZXRhZGF0YSIsICJjb250ZXh0IiwgInB1YmxpY0tleSIsICJvcHRpb25zIiwgIm1heWJlQWNjb3VudCIsICJzYWZlRmV0Y2hNZXRhZGF0YSIsICJmZXRjaEFsbE1ldGFkYXRhIiwgInB1YmxpY0tleXMiLCAia2V5IiwgInNhZmVGZXRjaEFsbE1ldGFkYXRhIiwgImdldE1ldGFkYXRhR3BhQnVpbGRlciIsICJwcm9ncmFtSWQiLCAiYWNjb3VudCIsICJmaW5kTWV0YWRhdGFQZGEiLCAic2VlZHMiLCAiZmV0Y2hNZXRhZGF0YUZyb21TZWVkcyIsICJzYWZlRmV0Y2hNZXRhZGF0YUZyb21TZWVkcyIsICJnZW5lcmF0ZWRfMSIsICJmaW5kRWRpdGlvbk1hcmtlckZyb21FZGl0aW9uTnVtYmVyUGRhIiwgImNvbnRleHQiLCAic2VlZHMiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAidW1pXzEiLCAiVG9rZW5NZXRhZGF0YUVycm9yIiwgIl9fbmFtZSIsICJtZXNzYWdlIiwgImNhdXNlIiwgImV4cG9ydHMiLCAic2VyaWFsaXplcnNfMSIsICJlcnJvcnNfMSIsICJtZXRhZGF0YURlbGVnYXRlUm9sZV8xIiwgImdldE1ldGFkYXRhRGVsZWdhdGVSb2xlU2VlZFNlcmlhbGl6ZXIiLCAiYXJncyIsICJzZWVkIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAiZ2V0QWRkcmVzc0xvb2t1cFRhYmxlQWNjb3VudERhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImRlc2VyaWFsaXplQWRkcmVzc0xvb2t1cFRhYmxlIiwgInJhd0FjY291bnQiLCAiZmV0Y2hBZGRyZXNzTG9va3VwVGFibGUiLCAiY29udGV4dCIsICJwdWJsaWNLZXkiLCAib3B0aW9ucyIsICJtYXliZUFjY291bnQiLCAic2FmZUZldGNoQWRkcmVzc0xvb2t1cFRhYmxlIiwgImZldGNoQWxsQWRkcmVzc0xvb2t1cFRhYmxlIiwgInB1YmxpY0tleXMiLCAia2V5IiwgInNhZmVGZXRjaEFsbEFkZHJlc3NMb29rdXBUYWJsZSIsICJnZXRBZGRyZXNzTG9va3VwVGFibGVHcGFCdWlsZGVyIiwgInByb2dyYW1JZCIsICJhY2NvdW50IiwgImZpbmRBZGRyZXNzTG9va3VwVGFibGVQZGEiLCAic2VlZHMiLCAiZmV0Y2hBZGRyZXNzTG9va3VwVGFibGVGcm9tU2VlZHMiLCAic2FmZUZldGNoQWRkcmVzc0xvb2t1cFRhYmxlRnJvbVNlZWRzIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAiZ2V0TWludEFjY291bnREYXRhU2VyaWFsaXplciIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJkZXNlcmlhbGl6ZU1pbnQiLCAicmF3QWNjb3VudCIsICJmZXRjaE1pbnQiLCAiY29udGV4dCIsICJwdWJsaWNLZXkiLCAib3B0aW9ucyIsICJtYXliZUFjY291bnQiLCAic2FmZUZldGNoTWludCIsICJmZXRjaEFsbE1pbnQiLCAicHVibGljS2V5cyIsICJrZXkiLCAic2FmZUZldGNoQWxsTWludCIsICJnZXRNaW50R3BhQnVpbGRlciIsICJwcm9ncmFtSWQiLCAiYWNjb3VudCIsICJnZXRNaW50U2l6ZSIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgImdldE11bHRpc2lnQWNjb3VudERhdGFTZXJpYWxpemVyIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImRlc2VyaWFsaXplTXVsdGlzaWciLCAicmF3QWNjb3VudCIsICJmZXRjaE11bHRpc2lnIiwgImNvbnRleHQiLCAicHVibGljS2V5IiwgIm9wdGlvbnMiLCAibWF5YmVBY2NvdW50IiwgInNhZmVGZXRjaE11bHRpc2lnIiwgImZldGNoQWxsTXVsdGlzaWciLCAicHVibGljS2V5cyIsICJrZXkiLCAic2FmZUZldGNoQWxsTXVsdGlzaWciLCAiZ2V0TXVsdGlzaWdHcGFCdWlsZGVyIiwgInByb2dyYW1JZCIsICJhY2NvdW50IiwgImdldE11bHRpc2lnU2l6ZSIsICJzZXJpYWxpemVyc18xIiwgIkF1dGhvcml0eVR5cGUiLCAiZXhwb3J0cyIsICJnZXRBdXRob3JpdHlUeXBlU2VyaWFsaXplciIsICJfX25hbWUiLCAic2VyaWFsaXplcnNfMSIsICJUb2tlblN0YXRlIiwgImV4cG9ydHMiLCAiZ2V0VG9rZW5TdGF0ZVNlcmlhbGl6ZXIiLCAiX19uYW1lIiwgIl9fZXhwb3J0U3RhciIsICJleHBvcnRzIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAidHlwZXNfMSIsICJnZXRUb2tlbkFjY291bnREYXRhU2VyaWFsaXplciIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJkZXNlcmlhbGl6ZVRva2VuIiwgInJhd0FjY291bnQiLCAiZmV0Y2hUb2tlbiIsICJjb250ZXh0IiwgInB1YmxpY0tleSIsICJvcHRpb25zIiwgIm1heWJlQWNjb3VudCIsICJzYWZlRmV0Y2hUb2tlbiIsICJmZXRjaEFsbFRva2VuIiwgInB1YmxpY0tleXMiLCAia2V5IiwgInNhZmVGZXRjaEFsbFRva2VuIiwgImdldFRva2VuR3BhQnVpbGRlciIsICJwcm9ncmFtSWQiLCAiYWNjb3VudCIsICJnZXRUb2tlblNpemUiLCAiX19leHBvcnRTdGFyIiwgImV4cG9ydHMiLCAidW1pXzEiLCAiY29kZVRvRXJyb3JNYXAiLCAibmFtZVRvRXJyb3JNYXAiLCAiU3lzRXhJbnZhbGlkU3lzdGVtUHJvZ3JhbUVycm9yIiwgIl9fbmFtZSIsICJwcm9ncmFtIiwgImNhdXNlIiwgImV4cG9ydHMiLCAiU3lzRXhJbnZhbGlkT3duZXJGb3JTb3VyY2VFcnJvciIsICJnZXRNcGxTeXN0ZW1FeHRyYXNFcnJvckZyb21Db2RlIiwgImNvZGUiLCAiY29uc3RydWN0b3IiLCAiZ2V0TXBsU3lzdGVtRXh0cmFzRXJyb3JGcm9tTmFtZSIsICJuYW1lIiwgInVtaV8xIiwgImNvZGVUb0Vycm9yTWFwIiwgIm5hbWVUb0Vycm9yTWFwIiwgIlRva0V4SW52YWxpZFN5c3RlbVByb2dyYW1FcnJvciIsICJfX25hbWUiLCAicHJvZ3JhbSIsICJjYXVzZSIsICJleHBvcnRzIiwgIlRva0V4SW52YWxpZFRva2VuUHJvZ3JhbUVycm9yIiwgIlRva0V4SW52YWxpZEFzc29jaWF0ZWRUb2tlblByb2dyYW1FcnJvciIsICJUb2tFeEludmFsaWRBc3NvY2lhdGVkVG9rZW5BY2NvdW50RXJyb3IiLCAiVG9rRXhJbnZhbGlkUHJvZ3JhbU93bmVyRXJyb3IiLCAiVG9rRXhJbnZhbGlkVG9rZW5NaW50RXJyb3IiLCAiVG9rRXhJbnZhbGlkVG9rZW5Pd25lckVycm9yIiwgIlRva0V4Q2Fubm90Q3JlYXRlTm9uQXNzb2NpYXRlZFRva2VuRXJyb3IiLCAiZ2V0TXBsVG9rZW5FeHRyYXNFcnJvckZyb21Db2RlIiwgImNvZGUiLCAiY29uc3RydWN0b3IiLCAiZ2V0TXBsVG9rZW5FeHRyYXNFcnJvckZyb21OYW1lIiwgIm5hbWUiLCAiY29kZVRvRXJyb3JNYXAiLCAibmFtZVRvRXJyb3JNYXAiLCAiZ2V0U3BsQWRkcmVzc0xvb2t1cFRhYmxlRXJyb3JGcm9tQ29kZSIsICJjb2RlIiwgInByb2dyYW0iLCAiY2F1c2UiLCAiY29uc3RydWN0b3IiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAiZ2V0U3BsQWRkcmVzc0xvb2t1cFRhYmxlRXJyb3JGcm9tTmFtZSIsICJuYW1lIiwgInVtaV8xIiwgImNvZGVUb0Vycm9yTWFwIiwgIm5hbWVUb0Vycm9yTWFwIiwgIkF0YUludmFsaWRPd25lckVycm9yIiwgIl9fbmFtZSIsICJwcm9ncmFtIiwgImNhdXNlIiwgImV4cG9ydHMiLCAiZ2V0U3BsQXNzb2NpYXRlZFRva2VuRXJyb3JGcm9tQ29kZSIsICJjb2RlIiwgImNvbnN0cnVjdG9yIiwgImdldFNwbEFzc29jaWF0ZWRUb2tlbkVycm9yRnJvbU5hbWUiLCAibmFtZSIsICJjb2RlVG9FcnJvck1hcCIsICJuYW1lVG9FcnJvck1hcCIsICJnZXRTcGxDb21wdXRlQnVkZ2V0RXJyb3JGcm9tQ29kZSIsICJjb2RlIiwgInByb2dyYW0iLCAiY2F1c2UiLCAiY29uc3RydWN0b3IiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAiZ2V0U3BsQ29tcHV0ZUJ1ZGdldEVycm9yRnJvbU5hbWUiLCAibmFtZSIsICJjb2RlVG9FcnJvck1hcCIsICJuYW1lVG9FcnJvck1hcCIsICJnZXRTcGxNZW1vRXJyb3JGcm9tQ29kZSIsICJjb2RlIiwgInByb2dyYW0iLCAiY2F1c2UiLCAiY29uc3RydWN0b3IiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAiZ2V0U3BsTWVtb0Vycm9yRnJvbU5hbWUiLCAibmFtZSIsICJjb2RlVG9FcnJvck1hcCIsICJuYW1lVG9FcnJvck1hcCIsICJnZXRTcGxTeXN0ZW1FcnJvckZyb21Db2RlIiwgImNvZGUiLCAicHJvZ3JhbSIsICJjYXVzZSIsICJjb25zdHJ1Y3RvciIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJnZXRTcGxTeXN0ZW1FcnJvckZyb21OYW1lIiwgIm5hbWUiLCAidW1pXzEiLCAiY29kZVRvRXJyb3JNYXAiLCAibmFtZVRvRXJyb3JNYXAiLCAiVG9rTm90UmVudEV4ZW1wdEVycm9yIiwgIl9fbmFtZSIsICJwcm9ncmFtIiwgImNhdXNlIiwgImV4cG9ydHMiLCAiVG9rSW5zdWZmaWNpZW50RnVuZHNFcnJvciIsICJUb2tJbnZhbGlkTWludEVycm9yIiwgIlRva01pbnRNaXNtYXRjaEVycm9yIiwgIlRva093bmVyTWlzbWF0Y2hFcnJvciIsICJUb2tGaXhlZFN1cHBseUVycm9yIiwgIlRva0FscmVhZHlJblVzZUVycm9yIiwgIlRva0ludmFsaWROdW1iZXJPZlByb3ZpZGVkU2lnbmVyc0Vycm9yIiwgIlRva0ludmFsaWROdW1iZXJPZlJlcXVpcmVkU2lnbmVyc0Vycm9yIiwgIlRva1VuaW5pdGlhbGl6ZWRTdGF0ZUVycm9yIiwgIlRva05hdGl2ZU5vdFN1cHBvcnRlZEVycm9yIiwgIlRva05vbk5hdGl2ZUhhc0JhbGFuY2VFcnJvciIsICJUb2tJbnZhbGlkSW5zdHJ1Y3Rpb25FcnJvciIsICJUb2tJbnZhbGlkU3RhdGVFcnJvciIsICJUb2tPdmVyZmxvd0Vycm9yIiwgIlRva0F1dGhvcml0eVR5cGVOb3RTdXBwb3J0ZWRFcnJvciIsICJUb2tNaW50Q2Fubm90RnJlZXplRXJyb3IiLCAiVG9rQWNjb3VudEZyb3plbkVycm9yIiwgIlRva01pbnREZWNpbWFsc01pc21hdGNoRXJyb3IiLCAiVG9rTm9uTmF0aXZlTm90U3VwcG9ydGVkRXJyb3IiLCAiZ2V0U3BsVG9rZW5FcnJvckZyb21Db2RlIiwgImNvZGUiLCAiY29uc3RydWN0b3IiLCAiZ2V0U3BsVG9rZW5FcnJvckZyb21OYW1lIiwgIm5hbWUiLCAiX19leHBvcnRTdGFyIiwgImV4cG9ydHMiLCAidW1pXzEiLCAiZXhwZWN0U29tZSIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJleHBlY3RQdWJsaWNLZXkiLCAiZXhwZWN0UGRhIiwgImdldEFjY291bnRNZXRhc0FuZFNpZ25lcnMiLCAiYWNjb3VudHMiLCAib3B0aW9uYWxBY2NvdW50U3RyYXRlZ3kiLCAicHJvZ3JhbUlkIiwgImtleXMiLCAic2lnbmVycyIsICJhY2NvdW50IiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAic2hhcmVkXzEiLCAiZ2V0QWRkTWVtb0luc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAiYWRkTWVtbyIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJzaGFyZWRfMSIsICJnZXRBbW91bnRUb1VpQW1vdW50SW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJhbW91bnRUb1VpQW1vdW50IiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInNoYXJlZF8xIiwgImdldEFwcHJvdmVUb2tlbkRlbGVnYXRlSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJhcHByb3ZlVG9rZW5EZWxlZ2F0ZSIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJzaGFyZWRfMSIsICJnZXRBcHByb3ZlVG9rZW5EZWxlZ2F0ZUNoZWNrZWRJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImFwcHJvdmVUb2tlbkRlbGVnYXRlQ2hlY2tlZCIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJzaGFyZWRfMSIsICJnZXRCdXJuVG9rZW5JbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImJ1cm5Ub2tlbiIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJzaGFyZWRfMSIsICJnZXRCdXJuVG9rZW5DaGVja2VkSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJidXJuVG9rZW5DaGVja2VkIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInNoYXJlZF8xIiwgImdldENsb3NlTHV0SW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJjbG9zZUx1dCIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInNoYXJlZF8xIiwgImdldENsb3NlVG9rZW5JbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImNsb3NlVG9rZW4iLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJzaGFyZWRfMSIsICJnZXRDcmVhdGVBY2NvdW50SW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJjcmVhdGVBY2NvdW50IiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInNoYXJlZF8xIiwgImdldENyZWF0ZUFjY291bnRXaXRoUmVudEluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAiY3JlYXRlQWNjb3VudFdpdGhSZW50IiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJzZXJpYWxpemVyc18xIiwgImZpbmRBc3NvY2lhdGVkVG9rZW5QZGEiLCAiY29udGV4dCIsICJzZWVkcyIsICJhc3NvY2lhdGVkVG9rZW5Qcm9ncmFtSWQiLCAidG9rZW5Qcm9ncmFtSWQiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAicmVzb2x2ZUV4dGVuZEx1dEJ5dGVzIiwgIl9fbmFtZSIsICJjb250ZXh0IiwgImFjY291bnRzIiwgImFyZ3MiLCAicHJvZ3JhbUlkIiwgImV4cG9ydHMiLCAiX19leHBvcnRTdGFyIiwgImV4cG9ydHMiLCAidW1pXzEiLCAiaG9va2VkXzEiLCAiYWNjb3VudHNfMSIsICJzaGFyZWRfMSIsICJjcmVhdGVBc3NvY2lhdGVkVG9rZW4iLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAiX19uYW1lIiwgImV4cG9ydHMiLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgImdldENyZWF0ZUVtcHR5THV0SW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJjcmVhdGVFbXB0eUx1dCIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2hhcmVkXzEiLCAiY3JlYXRlSWRlbXBvdGVudEFzc29jaWF0ZWRUb2tlbiIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgImhvb2tlZF8xIiwgInNoYXJlZF8xIiwgImdldENyZWF0ZVRva2VuSWZNaXNzaW5nSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJjcmVhdGVUb2tlbklmTWlzc2luZyIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInNoYXJlZF8xIiwgImdldERlYWN0aXZhdGVMdXRJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImRlYWN0aXZhdGVMdXQiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJob29rZWRfMSIsICJzaGFyZWRfMSIsICJnZXRFeHRlbmRMdXRJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImV4dGVuZEx1dCIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJzaGFyZWRfMSIsICJnZXRGcmVlemVMdXRJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImZyZWV6ZUx1dCIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInNoYXJlZF8xIiwgImdldEZyZWV6ZVRva2VuSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJmcmVlemVUb2tlbiIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInNoYXJlZF8xIiwgImdldEdldFRva2VuRGF0YVNpemVJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImdldFRva2VuRGF0YVNpemUiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJzaGFyZWRfMSIsICJnZXRJbml0aWFsaXplSW1tdXRhYmxlT3duZXJJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImluaXRpYWxpemVJbW11dGFibGVPd25lciIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInNoYXJlZF8xIiwgImdldEluaXRpYWxpemVNaW50SW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJpbml0aWFsaXplTWludCIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJzaGFyZWRfMSIsICJnZXRJbml0aWFsaXplTWludDJJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImluaXRpYWxpemVNaW50MiIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJzaGFyZWRfMSIsICJnZXRJbml0aWFsaXplTXVsdGlzaWdJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImluaXRpYWxpemVNdWx0aXNpZyIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJzaGFyZWRfMSIsICJnZXRJbml0aWFsaXplTXVsdGlzaWcySW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJpbml0aWFsaXplTXVsdGlzaWcyIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInNoYXJlZF8xIiwgImdldEluaXRpYWxpemVUb2tlbkluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAiaW5pdGlhbGl6ZVRva2VuIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAic2hhcmVkXzEiLCAiZ2V0SW5pdGlhbGl6ZVRva2VuMkluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAiaW5pdGlhbGl6ZVRva2VuMiIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJzaGFyZWRfMSIsICJnZXRJbml0aWFsaXplVG9rZW4zSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJpbml0aWFsaXplVG9rZW4zIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInNoYXJlZF8xIiwgImdldE1pbnRUb2tlbnNUb0luc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAibWludFRva2Vuc1RvIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInNoYXJlZF8xIiwgImdldE1pbnRUb2tlbnNUb0NoZWNrZWRJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgIm1pbnRUb2tlbnNUb0NoZWNrZWQiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJyZXNvbHZlZEFyZ3MiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgInVtaV8xIiwgInNoYXJlZF8xIiwgInJlY292ZXJOZXN0ZWRBc3NvY2lhdGVkVG9rZW4iLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAiX19uYW1lIiwgImV4cG9ydHMiLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJzaGFyZWRfMSIsICJnZXRSZXF1ZXN0SGVhcEZyYW1lSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJyZXF1ZXN0SGVhcEZyYW1lIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInNoYXJlZF8xIiwgImdldFJlcXVlc3RVbml0c0luc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAicmVxdWVzdFVuaXRzIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInNoYXJlZF8xIiwgImdldFJldm9rZVRva2VuRGVsZWdhdGVJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInJldm9rZVRva2VuRGVsZWdhdGUiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJzaGFyZWRfMSIsICJ0eXBlc18xIiwgImdldFNldEF1dGhvcml0eUluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAic2V0QXV0aG9yaXR5IiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInNoYXJlZF8xIiwgImdldFNldENvbXB1dGVVbml0TGltaXRJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInNldENvbXB1dGVVbml0TGltaXQiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJyZXNvbHZlZEFyZ3MiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAic2hhcmVkXzEiLCAiZ2V0U2V0Q29tcHV0ZVVuaXRQcmljZUluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAic2V0Q29tcHV0ZVVuaXRQcmljZSIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJzaGFyZWRfMSIsICJnZXRTeW5jTmF0aXZlSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJzeW5jTmF0aXZlIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAic2hhcmVkXzEiLCAiZ2V0VGhhd1Rva2VuSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJ0aGF3VG9rZW4iLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJzaGFyZWRfMSIsICJnZXRUcmFuc2ZlckFsbFNvbEluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAidHJhbnNmZXJBbGxTb2wiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJzaGFyZWRfMSIsICJnZXRUcmFuc2ZlclNvbEluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAidHJhbnNmZXJTb2wiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJyZXNvbHZlZEFyZ3MiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAic2hhcmVkXzEiLCAiZ2V0VHJhbnNmZXJUb2tlbnNJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInRyYW5zZmVyVG9rZW5zIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInNoYXJlZF8xIiwgImdldFRyYW5zZmVyVG9rZW5zQ2hlY2tlZEluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAidHJhbnNmZXJUb2tlbnNDaGVja2VkIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInNoYXJlZF8xIiwgImdldFVpQW1vdW50VG9BbW91bnRJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInVpQW1vdW50VG9BbW91bnQiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJyZXNvbHZlZEFyZ3MiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgIl9fZXhwb3J0U3RhciIsICJleHBvcnRzIiwgImVycm9yc18xIiwgImV4cG9ydHMiLCAiY3JlYXRlTXBsU3lzdGVtRXh0cmFzUHJvZ3JhbSIsICJjb2RlIiwgImNhdXNlIiwgIm5hbWUiLCAiX19uYW1lIiwgImdldE1wbFN5c3RlbUV4dHJhc1Byb2dyYW0iLCAiY29udGV4dCIsICJjbHVzdGVyRmlsdGVyIiwgImdldE1wbFN5c3RlbUV4dHJhc1Byb2dyYW1JZCIsICJlcnJvcnNfMSIsICJleHBvcnRzIiwgImNyZWF0ZU1wbFRva2VuRXh0cmFzUHJvZ3JhbSIsICJjb2RlIiwgImNhdXNlIiwgIm5hbWUiLCAiX19uYW1lIiwgImdldE1wbFRva2VuRXh0cmFzUHJvZ3JhbSIsICJjb250ZXh0IiwgImNsdXN0ZXJGaWx0ZXIiLCAiZ2V0TXBsVG9rZW5FeHRyYXNQcm9ncmFtSWQiLCAiZXJyb3JzXzEiLCAiZXhwb3J0cyIsICJjcmVhdGVTcGxBZGRyZXNzTG9va3VwVGFibGVQcm9ncmFtIiwgImNvZGUiLCAiY2F1c2UiLCAibmFtZSIsICJfX25hbWUiLCAiZ2V0U3BsQWRkcmVzc0xvb2t1cFRhYmxlUHJvZ3JhbSIsICJjb250ZXh0IiwgImNsdXN0ZXJGaWx0ZXIiLCAiZ2V0U3BsQWRkcmVzc0xvb2t1cFRhYmxlUHJvZ3JhbUlkIiwgImVycm9yc18xIiwgImV4cG9ydHMiLCAiY3JlYXRlU3BsQXNzb2NpYXRlZFRva2VuUHJvZ3JhbSIsICJjb2RlIiwgImNhdXNlIiwgIm5hbWUiLCAiX19uYW1lIiwgImdldFNwbEFzc29jaWF0ZWRUb2tlblByb2dyYW0iLCAiY29udGV4dCIsICJjbHVzdGVyRmlsdGVyIiwgImdldFNwbEFzc29jaWF0ZWRUb2tlblByb2dyYW1JZCIsICJlcnJvcnNfMSIsICJleHBvcnRzIiwgImNyZWF0ZVNwbENvbXB1dGVCdWRnZXRQcm9ncmFtIiwgImNvZGUiLCAiY2F1c2UiLCAibmFtZSIsICJfX25hbWUiLCAiZ2V0U3BsQ29tcHV0ZUJ1ZGdldFByb2dyYW0iLCAiY29udGV4dCIsICJjbHVzdGVyRmlsdGVyIiwgImdldFNwbENvbXB1dGVCdWRnZXRQcm9ncmFtSWQiLCAiZXJyb3JzXzEiLCAiZXhwb3J0cyIsICJjcmVhdGVTcGxNZW1vUHJvZ3JhbSIsICJjb2RlIiwgImNhdXNlIiwgIm5hbWUiLCAiX19uYW1lIiwgImdldFNwbE1lbW9Qcm9ncmFtIiwgImNvbnRleHQiLCAiY2x1c3RlckZpbHRlciIsICJnZXRTcGxNZW1vUHJvZ3JhbUlkIiwgImVycm9yc18xIiwgImV4cG9ydHMiLCAiY3JlYXRlU3BsU3lzdGVtUHJvZ3JhbSIsICJjb2RlIiwgImNhdXNlIiwgIm5hbWUiLCAiX19uYW1lIiwgImdldFNwbFN5c3RlbVByb2dyYW0iLCAiY29udGV4dCIsICJjbHVzdGVyRmlsdGVyIiwgImdldFNwbFN5c3RlbVByb2dyYW1JZCIsICJlcnJvcnNfMSIsICJleHBvcnRzIiwgImNyZWF0ZVNwbFRva2VuUHJvZ3JhbSIsICJjb2RlIiwgImNhdXNlIiwgIm5hbWUiLCAiX19uYW1lIiwgImdldFNwbFRva2VuUHJvZ3JhbSIsICJjb250ZXh0IiwgImNsdXN0ZXJGaWx0ZXIiLCAiZ2V0U3BsVG9rZW5Qcm9ncmFtSWQiLCAiX19leHBvcnRTdGFyIiwgImV4cG9ydHMiLCAiX19leHBvcnRTdGFyIiwgImV4cG9ydHMiLCAidW1pXzEiLCAiZ2VuZXJhdGVkXzEiLCAiY3JlYXRlTHV0IiwgImNvbnRleHQiLCAiaW5wdXQiLCAiYWRkcmVzc2VzIiwgInJlc3QiLCAiYXV0aG9yaXR5IiwgImFkZHJlc3MiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAidW1pXzEiLCAiZ2VuZXJhdGVkXzEiLCAiY3JlYXRlTHV0Rm9yVHJhbnNhY3Rpb25CdWlsZGVyIiwgIl9fbmFtZSIsICJjb250ZXh0IiwgImJ1aWxkZXIiLCAicmVjZW50U2xvdCIsICJhdXRob3JpdHkiLCAibHV0QXV0aG9yaXR5IiwgInNpZ25lckFkZHJlc3NlcyIsICJpbnN0cnVjdGlvbiIsICJtZXRhIiwgImV4dHJhY3RhYmxlQWRkcmVzc2VzIiwgImFkZHJlc3MiLCAibHV0QWNjb3VudHMiLCAiY3JlYXRlTHV0QnVpbGRlcnMiLCAiYWRkcmVzc2VzIiwgImluZGV4IiwgImxvY2FsUmVjZW50U2xvdCIsICJsdXQiLCAiZ2VuZXJhdGVjcmVhdGVMdXRCdWlsZGVycyIsICJleHBvcnRzIiwgImx1dEFkZHJlc3MiLCAiYnVpbGRlcnMiLCAiYWRkcmVzc2VzVGhhdEZpdCIsICJsYXN0VmFsaWRCdWlsZGVyIiwgIm5ld0J1aWxkZXIiLCAidW1pXzEiLCAiZ2VuZXJhdGVkXzEiLCAiY3JlYXRlTWludCIsICJjb250ZXh0IiwgImlucHV0IiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInVtaV8xIiwgImNyZWF0ZU1pbnRfMSIsICJnZW5lcmF0ZWRfMSIsICJob29rZWRfMSIsICJjcmVhdGVNaW50V2l0aEFzc29jaWF0ZWRUb2tlbiIsICJjb250ZXh0IiwgImlucHV0IiwgIm1pbnRBbmRPd25lciIsICJhbW91bnQiLCAiYnVpbGRlciIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJ1bWlfMSIsICJnZW5lcmF0ZWRfMSIsICJjcmVhdGVUb2tlbiIsICJjb250ZXh0IiwgImlucHV0IiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAiZ2VuZXJhdGVkXzEiLCAiZ2V0VG9rZW5BY2NvdW50c0J5T3duZXJDYWxsIiwgIl9fbmFtZSIsICJjb250ZXh0IiwgIm93bmVyIiwgInRva2VuQW1vdW50RmlsdGVyIiwgIm9wdGlvbnMiLCAic3BsVG9rZW4iLCAiZmlsdGVyIiwgImFjY291bnQiLCAiZGF0YSIsICJhbW91bnQiLCAiZmV0Y2hBbGxUb2tlbkJ5T3duZXIiLCAibWludCIsICJ0b2tlblN0cmF0ZWd5IiwgInJwY09wdGlvbnMiLCAicHVia2V5IiwgImJ1aWxkZXIiLCAiZXhwb3J0cyIsICJmZXRjaEFsbFRva2VuQnlPd25lckFuZE1pbnQiLCAiZmV0Y2hBbGxNaW50UHVibGljS2V5QnlPd25lciIsICJmZXRjaEFsbE1pbnRCeU93bmVyIiwgIm1pbnRzIiwgInVtaV8xIiwgImZpbmRMYXJnZXN0VG9rZW5zQnlNaW50IiwgIl9fbmFtZSIsICJjb250ZXh0IiwgIm1pbnQiLCAib3B0aW9ucyIsICJhZGRyZXNzIiwgImFtb3VudCIsICJkZWNpbWFscyIsICJleHBvcnRzIiwgInVtaV8xIiwgImdlbmVyYXRlZF8xIiwgIm1wbFRvb2xib3giLCAiX19uYW1lIiwgInVtaSIsICJleHBvcnRzIiwgInVtaV8xIiwgImdldFN5c3ZhciIsICJfX25hbWUiLCAic3lzdmFyIiwgImV4cG9ydHMiLCAiX19leHBvcnRTdGFyIiwgImV4cG9ydHMiLCAibXBsX3Rvb2xib3hfMSIsICJ1bWlfMSIsICJlcnJvcnNfMSIsICJnZW5lcmF0ZWRfMSIsICJDUkVBVE9SU19PRkZTRVQiLCAiTUFYX0NSRUFUT1JfU0laRSIsICJDT0xMRUNUSU9OX09GRlNFVFMiLCAiVkVSSUZJRURfQ09MTEVDVElPTl9PRkZTRVQiLCAiQ09MTEVDVElPTl9BRERSRVNTX09GRlNFVCIsICJmZXRjaERpZ2l0YWxBc3NldCIsICJjb250ZXh0IiwgIm1pbnQiLCAib3B0aW9ucyIsICJtZXRhZGF0YSIsICJlZGl0aW9uIiwgIm1pbnRBY2NvdW50IiwgIm1ldGFkYXRhQWNjb3VudCIsICJlZGl0aW9uQWNjb3VudCIsICJkZXNlcmlhbGl6ZURpZ2l0YWxBc3NldCIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJmZXRjaERpZ2l0YWxBc3NldEJ5TWV0YWRhdGEiLCAiZmV0Y2hBbGxEaWdpdGFsQXNzZXQiLCAibWludHMiLCAiYWNjb3VudHNUb0ZldGNoIiwgImFjY291bnRzIiwgImZldGNoQWxsRGlnaXRhbEFzc2V0QnlDcmVhdG9yIiwgImNyZWF0b3IiLCAiY3JlYXRvckluZGV4IiwgImZldGNoQWxsRGlnaXRhbEFzc2V0QnlWZXJpZmllZENvbGxlY3Rpb24iLCAiY29sbGVjdGlvbkFkZHJlc3MiLCAib2Zmc2V0IiwgImZldGNoQWxsRGlnaXRhbEFzc2V0QnlVcGRhdGVBdXRob3JpdHkiLCAidXBkYXRlQXV0aG9yaXR5IiwgImZldGNoQWxsRGlnaXRhbEFzc2V0QnlPd25lciIsICJvd25lciIsICJmZXRjaEFsbE1ldGFkYXRhQnlPd25lciIsICJwdWJsaWNLZXlzIiwgIm1heWJlQWNjb3VudCIsICJ0b2tlblN0YW5kYXJkIiwgImRpZ2l0YWxBc3NldCIsICJlZGl0aW9uS2V5IiwgImlzRnVuZ2libGUiLCAiaXNOb25GdW5naWJsZSIsICJpc1Byb2dyYW1tYWJsZSIsICJtcGxfdG9vbGJveF8xIiwgInVtaV8xIiwgImRpZ2l0YWxBc3NldF8xIiwgImdlbmVyYXRlZF8xIiwgIk1FVEFEQVRBX1NJWkUiLCAiTUFTVEVSX0VESVRJT05fU0laRSIsICJyZXNvbHZlQ29sbGVjdGlvbkRldGFpbHMiLCAiX19uYW1lIiwgImNvbnRleHQiLCAiYWNjb3VudHMiLCAiYXJncyIsICJyZXN0IiwgImV4cG9ydHMiLCAicmVzb2x2ZUlzTm9uRnVuZ2libGUiLCAicmVzb2x2ZURlY2ltYWxzIiwgInJlc29sdmVQcmludFN1cHBseSIsICJyZXNvbHZlQ3JlYXRvcnMiLCAicmVzb2x2ZUNyZWF0ZVYxQnl0ZXMiLCAiYmFzZSIsICJyZXNvbHZlT3B0aW9uYWxUb2tlbk93bmVyIiwgIl9fZXhwb3J0U3RhciIsICJleHBvcnRzIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAiaG9va2VkXzEiLCAidHlwZXNfMSIsICJnZXRNZXRhZGF0YURlbGVnYXRlUmVjb3JkQWNjb3VudERhdGFTZXJpYWxpemVyIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImRlc2VyaWFsaXplTWV0YWRhdGFEZWxlZ2F0ZVJlY29yZCIsICJyYXdBY2NvdW50IiwgImZldGNoTWV0YWRhdGFEZWxlZ2F0ZVJlY29yZCIsICJjb250ZXh0IiwgInB1YmxpY0tleSIsICJvcHRpb25zIiwgIm1heWJlQWNjb3VudCIsICJzYWZlRmV0Y2hNZXRhZGF0YURlbGVnYXRlUmVjb3JkIiwgImZldGNoQWxsTWV0YWRhdGFEZWxlZ2F0ZVJlY29yZCIsICJwdWJsaWNLZXlzIiwgImtleSIsICJzYWZlRmV0Y2hBbGxNZXRhZGF0YURlbGVnYXRlUmVjb3JkIiwgImdldE1ldGFkYXRhRGVsZWdhdGVSZWNvcmRHcGFCdWlsZGVyIiwgInByb2dyYW1JZCIsICJhY2NvdW50IiwgImdldE1ldGFkYXRhRGVsZWdhdGVSZWNvcmRTaXplIiwgImZpbmRNZXRhZGF0YURlbGVnYXRlUmVjb3JkUGRhIiwgInNlZWRzIiwgImZldGNoTWV0YWRhdGFEZWxlZ2F0ZVJlY29yZEZyb21TZWVkcyIsICJzYWZlRmV0Y2hNZXRhZGF0YURlbGVnYXRlUmVjb3JkRnJvbVNlZWRzIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAidHlwZXNfMSIsICJnZXRUb2tlbk93bmVkRXNjcm93QWNjb3VudERhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImRlc2VyaWFsaXplVG9rZW5Pd25lZEVzY3JvdyIsICJyYXdBY2NvdW50IiwgImZldGNoVG9rZW5Pd25lZEVzY3JvdyIsICJjb250ZXh0IiwgInB1YmxpY0tleSIsICJvcHRpb25zIiwgIm1heWJlQWNjb3VudCIsICJzYWZlRmV0Y2hUb2tlbk93bmVkRXNjcm93IiwgImZldGNoQWxsVG9rZW5Pd25lZEVzY3JvdyIsICJwdWJsaWNLZXlzIiwgImtleSIsICJzYWZlRmV0Y2hBbGxUb2tlbk93bmVkRXNjcm93IiwgImdldFRva2VuT3duZWRFc2Nyb3dHcGFCdWlsZGVyIiwgInByb2dyYW1JZCIsICJhY2NvdW50IiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAidHlwZXNfMSIsICJnZXRUb2tlblJlY29yZEFjY291bnREYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJkZXNlcmlhbGl6ZVRva2VuUmVjb3JkIiwgInJhd0FjY291bnQiLCAiZmV0Y2hUb2tlblJlY29yZCIsICJjb250ZXh0IiwgInB1YmxpY0tleSIsICJvcHRpb25zIiwgIm1heWJlQWNjb3VudCIsICJzYWZlRmV0Y2hUb2tlblJlY29yZCIsICJmZXRjaEFsbFRva2VuUmVjb3JkIiwgInB1YmxpY0tleXMiLCAia2V5IiwgInNhZmVGZXRjaEFsbFRva2VuUmVjb3JkIiwgImdldFRva2VuUmVjb3JkR3BhQnVpbGRlciIsICJwcm9ncmFtSWQiLCAiYWNjb3VudCIsICJnZXRUb2tlblJlY29yZFNpemUiLCAiZmluZFRva2VuUmVjb3JkUGRhIiwgInNlZWRzIiwgImZldGNoVG9rZW5SZWNvcmRGcm9tU2VlZHMiLCAic2FmZUZldGNoVG9rZW5SZWNvcmRGcm9tU2VlZHMiLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJ0eXBlc18xIiwgImdldFVzZUF1dGhvcml0eVJlY29yZEFjY291bnREYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJkZXNlcmlhbGl6ZVVzZUF1dGhvcml0eVJlY29yZCIsICJyYXdBY2NvdW50IiwgImZldGNoVXNlQXV0aG9yaXR5UmVjb3JkIiwgImNvbnRleHQiLCAicHVibGljS2V5IiwgIm9wdGlvbnMiLCAibWF5YmVBY2NvdW50IiwgInNhZmVGZXRjaFVzZUF1dGhvcml0eVJlY29yZCIsICJmZXRjaEFsbFVzZUF1dGhvcml0eVJlY29yZCIsICJwdWJsaWNLZXlzIiwgImtleSIsICJzYWZlRmV0Y2hBbGxVc2VBdXRob3JpdHlSZWNvcmQiLCAiZ2V0VXNlQXV0aG9yaXR5UmVjb3JkR3BhQnVpbGRlciIsICJwcm9ncmFtSWQiLCAiYWNjb3VudCIsICJnZXRVc2VBdXRob3JpdHlSZWNvcmRTaXplIiwgImZpbmRVc2VBdXRob3JpdHlSZWNvcmRQZGEiLCAic2VlZHMiLCAiZmV0Y2hVc2VBdXRob3JpdHlSZWNvcmRGcm9tU2VlZHMiLCAic2FmZUZldGNoVXNlQXV0aG9yaXR5UmVjb3JkRnJvbVNlZWRzIiwgIl9fZXhwb3J0U3RhciIsICJleHBvcnRzIiwgInVtaV8xIiwgImNvZGVUb0Vycm9yTWFwIiwgIm5hbWVUb0Vycm9yTWFwIiwgIkluc3RydWN0aW9uVW5wYWNrRXJyb3JFcnJvciIsICJfX25hbWUiLCAicHJvZ3JhbSIsICJjYXVzZSIsICJleHBvcnRzIiwgIkluc3RydWN0aW9uUGFja0Vycm9yRXJyb3IiLCAiTm90UmVudEV4ZW1wdEVycm9yIiwgIkFscmVhZHlJbml0aWFsaXplZEVycm9yIiwgIlVuaW5pdGlhbGl6ZWRFcnJvciIsICJJbnZhbGlkTWV0YWRhdGFLZXlFcnJvciIsICJJbnZhbGlkRWRpdGlvbktleUVycm9yIiwgIlVwZGF0ZUF1dGhvcml0eUluY29ycmVjdEVycm9yIiwgIlVwZGF0ZUF1dGhvcml0eUlzTm90U2lnbmVyRXJyb3IiLCAiTm90TWludEF1dGhvcml0eUVycm9yIiwgIkludmFsaWRNaW50QXV0aG9yaXR5RXJyb3IiLCAiTmFtZVRvb0xvbmdFcnJvciIsICJTeW1ib2xUb29Mb25nRXJyb3IiLCAiVXJpVG9vTG9uZ0Vycm9yIiwgIlVwZGF0ZUF1dGhvcml0eU11c3RCZUVxdWFsVG9NZXRhZGF0YUF1dGhvcml0eUFuZFNpZ25lckVycm9yIiwgIk1pbnRNaXNtYXRjaEVycm9yIiwgIkVkaXRpb25zTXVzdEhhdmVFeGFjdGx5T25lVG9rZW5FcnJvciIsICJNYXhFZGl0aW9uc01pbnRlZEFscmVhZHlFcnJvciIsICJUb2tlbk1pbnRUb0ZhaWxlZEVycm9yIiwgIk1hc3RlclJlY29yZE1pc21hdGNoRXJyb3IiLCAiRGVzdGluYXRpb25NaW50TWlzbWF0Y2hFcnJvciIsICJFZGl0aW9uQWxyZWFkeU1pbnRlZEVycm9yIiwgIlByaW50aW5nTWludERlY2ltYWxzU2hvdWxkQmVaZXJvRXJyb3IiLCAiT25lVGltZVByaW50aW5nQXV0aG9yaXphdGlvbk1pbnREZWNpbWFsc1Nob3VsZEJlWmVyb0Vycm9yIiwgIkVkaXRpb25NaW50RGVjaW1hbHNTaG91bGRCZVplcm9FcnJvciIsICJUb2tlbkJ1cm5GYWlsZWRFcnJvciIsICJUb2tlbkFjY291bnRPbmVUaW1lQXV0aE1pbnRNaXNtYXRjaEVycm9yIiwgIkRlcml2ZWRLZXlJbnZhbGlkRXJyb3IiLCAiUHJpbnRpbmdNaW50TWlzbWF0Y2hFcnJvciIsICJPbmVUaW1lUHJpbnRpbmdBdXRoTWludE1pc21hdGNoRXJyb3IiLCAiVG9rZW5BY2NvdW50TWludE1pc21hdGNoRXJyb3IiLCAiVG9rZW5BY2NvdW50TWludE1pc21hdGNoVjJFcnJvciIsICJOb3RFbm91Z2hUb2tlbnNFcnJvciIsICJQcmludGluZ01pbnRBdXRob3JpemF0aW9uQWNjb3VudE1pc21hdGNoRXJyb3IiLCAiQXV0aG9yaXphdGlvblRva2VuQWNjb3VudE93bmVyTWlzbWF0Y2hFcnJvciIsICJEaXNhYmxlZEVycm9yIiwgIkNyZWF0b3JzVG9vTG9uZ0Vycm9yIiwgIkNyZWF0b3JzTXVzdEJlQXRsZWFzdE9uZUVycm9yIiwgIk11c3RCZU9uZU9mQ3JlYXRvcnNFcnJvciIsICJOb0NyZWF0b3JzUHJlc2VudE9uTWV0YWRhdGFFcnJvciIsICJDcmVhdG9yTm90Rm91bmRFcnJvciIsICJJbnZhbGlkQmFzaXNQb2ludHNFcnJvciIsICJQcmltYXJ5U2FsZUNhbk9ubHlCZUZsaXBwZWRUb1RydWVFcnJvciIsICJPd25lck1pc21hdGNoRXJyb3IiLCAiTm9CYWxhbmNlSW5BY2NvdW50Rm9yQXV0aG9yaXphdGlvbkVycm9yIiwgIlNoYXJlVG90YWxNdXN0QmUxMDBFcnJvciIsICJSZXNlcnZhdGlvbkV4aXN0c0Vycm9yIiwgIlJlc2VydmF0aW9uRG9lc05vdEV4aXN0RXJyb3IiLCAiUmVzZXJ2YXRpb25Ob3RTZXRFcnJvciIsICJSZXNlcnZhdGlvbkFscmVhZHlNYWRlRXJyb3IiLCAiQmV5b25kTWF4QWRkcmVzc1NpemVFcnJvciIsICJOdW1lcmljYWxPdmVyZmxvd0Vycm9yRXJyb3IiLCAiUmVzZXJ2YXRpb25CcmVhY2hlc01heGltdW1TdXBwbHlFcnJvciIsICJBZGRyZXNzTm90SW5SZXNlcnZhdGlvbkVycm9yIiwgIkNhbm5vdFZlcmlmeUFub3RoZXJDcmVhdG9yRXJyb3IiLCAiQ2Fubm90VW52ZXJpZnlBbm90aGVyQ3JlYXRvckVycm9yIiwgIlNwb3RNaXNtYXRjaEVycm9yIiwgIkluY29ycmVjdE93bmVyRXJyb3IiLCAiUHJpbnRpbmdXb3VsZEJyZWFjaE1heGltdW1TdXBwbHlFcnJvciIsICJEYXRhSXNJbW11dGFibGVFcnJvciIsICJEdXBsaWNhdGVDcmVhdG9yQWRkcmVzc0Vycm9yIiwgIlJlc2VydmF0aW9uU3BvdHNSZW1haW5pbmdTaG91bGRNYXRjaFRvdGFsU3BvdHNBdFN0YXJ0RXJyb3IiLCAiSW52YWxpZFRva2VuUHJvZ3JhbUVycm9yIiwgIkRhdGFUeXBlTWlzbWF0Y2hFcnJvciIsICJCZXlvbmRBbG90dGVkQWRkcmVzc1NpemVFcnJvciIsICJSZXNlcnZhdGlvbk5vdENvbXBsZXRlRXJyb3IiLCAiVHJpZWRUb1JlcGxhY2VBbkV4aXN0aW5nUmVzZXJ2YXRpb25FcnJvciIsICJJbnZhbGlkT3BlcmF0aW9uRXJyb3IiLCAiSW52YWxpZE93bmVyRXJyb3IiLCAiUHJpbnRpbmdNaW50U3VwcGx5TXVzdEJlWmVyb0ZvckNvbnZlcnNpb25FcnJvciIsICJPbmVUaW1lQXV0aE1pbnRTdXBwbHlNdXN0QmVaZXJvRm9yQ29udmVyc2lvbkVycm9yIiwgIkludmFsaWRFZGl0aW9uSW5kZXhFcnJvciIsICJSZXNlcnZhdGlvbkFycmF5U2hvdWxkQmVTaXplT25lRXJyb3IiLCAiSXNNdXRhYmxlQ2FuT25seUJlRmxpcHBlZFRvRmFsc2VFcnJvciIsICJDb2xsZWN0aW9uQ2Fubm90QmVWZXJpZmllZEluVGhpc0luc3RydWN0aW9uRXJyb3IiLCAiUmVtb3ZlZEVycm9yIiwgIk11c3RCZUJ1cm5lZEVycm9yIiwgIkludmFsaWRVc2VNZXRob2RFcnJvciIsICJDYW5ub3RDaGFuZ2VVc2VNZXRob2RBZnRlckZpcnN0VXNlRXJyb3IiLCAiQ2Fubm90Q2hhbmdlVXNlc0FmdGVyRmlyc3RVc2VFcnJvciIsICJDb2xsZWN0aW9uTm90Rm91bmRFcnJvciIsICJJbnZhbGlkQ29sbGVjdGlvblVwZGF0ZUF1dGhvcml0eUVycm9yIiwgIkNvbGxlY3Rpb25NdXN0QmVBVW5pcXVlTWFzdGVyRWRpdGlvbkVycm9yIiwgIlVzZUF1dGhvcml0eVJlY29yZEFscmVhZHlFeGlzdHNFcnJvciIsICJVc2VBdXRob3JpdHlSZWNvcmRBbHJlYWR5UmV2b2tlZEVycm9yIiwgIlVudXNhYmxlRXJyb3IiLCAiTm90RW5vdWdoVXNlc0Vycm9yIiwgIkNvbGxlY3Rpb25BdXRob3JpdHlSZWNvcmRBbHJlYWR5RXhpc3RzRXJyb3IiLCAiQ29sbGVjdGlvbkF1dGhvcml0eURvZXNOb3RFeGlzdEVycm9yIiwgIkludmFsaWRVc2VBdXRob3JpdHlSZWNvcmRFcnJvciIsICJJbnZhbGlkQ29sbGVjdGlvbkF1dGhvcml0eVJlY29yZEVycm9yIiwgIkludmFsaWRGcmVlemVBdXRob3JpdHlFcnJvciIsICJJbnZhbGlkRGVsZWdhdGVFcnJvciIsICJDYW5ub3RBZGp1c3RWZXJpZmllZENyZWF0b3JFcnJvciIsICJDYW5ub3RSZW1vdmVWZXJpZmllZENyZWF0b3JFcnJvciIsICJDYW5ub3RXaXBlVmVyaWZpZWRDcmVhdG9yc0Vycm9yIiwgIk5vdEFsbG93ZWRUb0NoYW5nZVNlbGxlckZlZUJhc2lzUG9pbnRzRXJyb3IiLCAiRWRpdGlvbk92ZXJyaWRlQ2Fubm90QmVaZXJvRXJyb3IiLCAiSW52YWxpZFVzZXJFcnJvciIsICJSZXZva2VDb2xsZWN0aW9uQXV0aG9yaXR5U2lnbmVySW5jb3JyZWN0RXJyb3IiLCAiVG9rZW5DbG9zZUZhaWxlZEVycm9yIiwgIlVuc2l6ZWRDb2xsZWN0aW9uRXJyb3IiLCAiU2l6ZWRDb2xsZWN0aW9uRXJyb3IiLCAiTWlzc2luZ0NvbGxlY3Rpb25NZXRhZGF0YUVycm9yIiwgIk5vdEFNZW1iZXJPZkNvbGxlY3Rpb25FcnJvciIsICJOb3RWZXJpZmllZE1lbWJlck9mQ29sbGVjdGlvbkVycm9yIiwgIk5vdEFDb2xsZWN0aW9uUGFyZW50RXJyb3IiLCAiQ291bGROb3REZXRlcm1pbmVUb2tlblN0YW5kYXJkRXJyb3IiLCAiTWlzc2luZ0VkaXRpb25BY2NvdW50RXJyb3IiLCAiTm90QU1hc3RlckVkaXRpb25FcnJvciIsICJNYXN0ZXJFZGl0aW9uSGFzUHJpbnRzRXJyb3IiLCAiQm9yc2hEZXNlcmlhbGl6YXRpb25FcnJvckVycm9yIiwgIkNhbm5vdFVwZGF0ZVZlcmlmaWVkQ29sbGVjdGlvbkVycm9yIiwgIkNvbGxlY3Rpb25NYXN0ZXJFZGl0aW9uQWNjb3VudEludmFsaWRFcnJvciIsICJBbHJlYWR5VmVyaWZpZWRFcnJvciIsICJBbHJlYWR5VW52ZXJpZmllZEVycm9yIiwgIk5vdEFQcmludEVkaXRpb25FcnJvciIsICJJbnZhbGlkTWFzdGVyRWRpdGlvbkVycm9yIiwgIkludmFsaWRQcmludEVkaXRpb25FcnJvciIsICJJbnZhbGlkRWRpdGlvbk1hcmtlckVycm9yIiwgIlJlc2VydmF0aW9uTGlzdERlcHJlY2F0ZWRFcnJvciIsICJQcmludEVkaXRpb25Eb2VzTm90TWF0Y2hNYXN0ZXJFZGl0aW9uRXJyb3IiLCAiRWRpdGlvbk51bWJlckdyZWF0ZXJUaGFuTWF4U3VwcGx5RXJyb3IiLCAiTXVzdFVudmVyaWZ5RXJyb3IiLCAiSW52YWxpZEVzY3Jvd0J1bXBTZWVkRXJyb3IiLCAiTXVzdEJlRXNjcm93QXV0aG9yaXR5RXJyb3IiLCAiSW52YWxpZFN5c3RlbVByb2dyYW1FcnJvciIsICJNdXN0QmVOb25GdW5naWJsZUVycm9yIiwgIkluc3VmZmljaWVudFRva2Vuc0Vycm9yIiwgIkJvcnNoU2VyaWFsaXphdGlvbkVycm9yRXJyb3IiLCAiTm9GcmVlemVBdXRob3JpdHlTZXRFcnJvciIsICJJbnZhbGlkQ29sbGVjdGlvblNpemVDaGFuZ2VFcnJvciIsICJJbnZhbGlkQnViYmxlZ3VtU2lnbmVyRXJyb3IiLCAiRXNjcm93UGFyZW50SGFzRGVsZWdhdGVFcnJvciIsICJNaW50SXNOb3RTaWduZXJFcnJvciIsICJJbnZhbGlkVG9rZW5TdGFuZGFyZEVycm9yIiwgIkludmFsaWRNaW50Rm9yVG9rZW5TdGFuZGFyZEVycm9yIiwgIkludmFsaWRBdXRob3JpemF0aW9uUnVsZXNFcnJvciIsICJNaXNzaW5nQXV0aG9yaXphdGlvblJ1bGVzRXJyb3IiLCAiTWlzc2luZ1Byb2dyYW1tYWJsZUNvbmZpZ0Vycm9yIiwgIkludmFsaWRQcm9ncmFtbWFibGVDb25maWdFcnJvciIsICJEZWxlZ2F0ZUFscmVhZHlFeGlzdHNFcnJvciIsICJEZWxlZ2F0ZU5vdEZvdW5kRXJyb3IiLCAiTWlzc2luZ0FjY291bnRJbkJ1aWxkZXJFcnJvciIsICJNaXNzaW5nQXJndW1lbnRJbkJ1aWxkZXJFcnJvciIsICJGZWF0dXJlTm90U3VwcG9ydGVkRXJyb3IiLCAiSW52YWxpZFN5c3RlbVdhbGxldEVycm9yIiwgIk9ubHlTYWxlRGVsZWdhdGVDYW5UcmFuc2ZlckVycm9yIiwgIk1pc3NpbmdUb2tlbkFjY291bnRFcnJvciIsICJNaXNzaW5nU3BsVG9rZW5Qcm9ncmFtRXJyb3IiLCAiTWlzc2luZ0F1dGhvcml6YXRpb25SdWxlc1Byb2dyYW1FcnJvciIsICJJbnZhbGlkRGVsZWdhdGVSb2xlRm9yVHJhbnNmZXJFcnJvciIsICJJbnZhbGlkVHJhbnNmZXJBdXRob3JpdHlFcnJvciIsICJJbnN0cnVjdGlvbk5vdFN1cHBvcnRlZEVycm9yIiwgIktleU1pc21hdGNoRXJyb3IiLCAiTG9ja2VkVG9rZW5FcnJvciIsICJVbmxvY2tlZFRva2VuRXJyb3IiLCAiTWlzc2luZ0RlbGVnYXRlUm9sZUVycm9yIiwgIkludmFsaWRBdXRob3JpdHlUeXBlRXJyb3IiLCAiTWlzc2luZ1Rva2VuUmVjb3JkRXJyb3IiLCAiTWludFN1cHBseU11c3RCZVplcm9FcnJvciIsICJEYXRhSXNFbXB0eU9yWmVyb2VkRXJyb3IiLCAiTWlzc2luZ1Rva2VuT3duZXJBY2NvdW50RXJyb3IiLCAiSW52YWxpZE1hc3RlckVkaXRpb25BY2NvdW50TGVuZ3RoRXJyb3IiLCAiSW5jb3JyZWN0VG9rZW5TdGF0ZUVycm9yIiwgIkludmFsaWREZWxlZ2F0ZVJvbGVFcnJvciIsICJNaXNzaW5nUHJpbnRTdXBwbHlFcnJvciIsICJNaXNzaW5nTWFzdGVyRWRpdGlvbkFjY291bnRFcnJvciIsICJBbW91bnRNdXN0QmVHcmVhdGVyVGhhblplcm9FcnJvciIsICJJbnZhbGlkRGVsZWdhdGVBcmdzRXJyb3IiLCAiTWlzc2luZ0xvY2tlZFRyYW5zZmVyQWRkcmVzc0Vycm9yIiwgIkludmFsaWRMb2NrZWRUcmFuc2ZlckFkZHJlc3NFcnJvciIsICJEYXRhSW5jcmVtZW50TGltaXRFeGNlZWRlZEVycm9yIiwgIkNhbm5vdFVwZGF0ZUFzc2V0V2l0aERlbGVnYXRlRXJyb3IiLCAiSW52YWxpZEFtb3VudEVycm9yIiwgIk1pc3NpbmdNYXN0ZXJFZGl0aW9uTWludEFjY291bnRFcnJvciIsICJNaXNzaW5nTWFzdGVyRWRpdGlvblRva2VuQWNjb3VudEVycm9yIiwgIk1pc3NpbmdFZGl0aW9uTWFya2VyQWNjb3VudEVycm9yIiwgIkNhbm5vdEJ1cm5XaXRoRGVsZWdhdGVFcnJvciIsICJNaXNzaW5nRWRpdGlvbkVycm9yIiwgIkludmFsaWRBc3NvY2lhdGVkVG9rZW5BY2NvdW50UHJvZ3JhbUVycm9yIiwgIkludmFsaWRJbnN0cnVjdGlvbnNTeXN2YXJFcnJvciIsICJJbnZhbGlkUGFyZW50QWNjb3VudHNFcnJvciIsICJJbnZhbGlkVXBkYXRlQXJnc0Vycm9yIiwgIkluc3VmZmljaWVudFRva2VuQmFsYW5jZUVycm9yIiwgIk1pc3NpbmdDb2xsZWN0aW9uTWludEVycm9yIiwgIk1pc3NpbmdDb2xsZWN0aW9uTWFzdGVyRWRpdGlvbkVycm9yIiwgIkludmFsaWRUb2tlblJlY29yZEVycm9yIiwgIkludmFsaWRDbG9zZUF1dGhvcml0eUVycm9yIiwgIkludmFsaWRJbnN0cnVjdGlvbkVycm9yIiwgIk1pc3NpbmdEZWxlZ2F0ZVJlY29yZEVycm9yIiwgIkludmFsaWRGZWVBY2NvdW50RXJyb3IiLCAiSW52YWxpZE1ldGFkYXRhRmxhZ3NFcnJvciIsICJDYW5ub3RDaGFuZ2VVcGRhdGVBdXRob3JpdHlXaXRoRGVsZWdhdGVFcnJvciIsICJnZXRNcGxUb2tlbk1ldGFkYXRhRXJyb3JGcm9tQ29kZSIsICJjb2RlIiwgImNvbnN0cnVjdG9yIiwgImdldE1wbFRva2VuTWV0YWRhdGFFcnJvckZyb21OYW1lIiwgIm5hbWUiLCAiX19leHBvcnRTdGFyIiwgImV4cG9ydHMiLCAidW1pXzEiLCAiZXhwZWN0U29tZSIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJleHBlY3RQdWJsaWNLZXkiLCAiZXhwZWN0UGRhIiwgImdldEFjY291bnRNZXRhc0FuZFNpZ25lcnMiLCAiYWNjb3VudHMiLCAib3B0aW9uYWxBY2NvdW50U3RyYXRlZ3kiLCAicHJvZ3JhbUlkIiwgImtleXMiLCAic2lnbmVycyIsICJhY2NvdW50IiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAiYWNjb3VudHNfMSIsICJzaGFyZWRfMSIsICJnZXRBcHByb3ZlQ29sbGVjdGlvbkF1dGhvcml0eUluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAiYXBwcm92ZUNvbGxlY3Rpb25BdXRob3JpdHkiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgImdldEFwcHJvdmVVc2VBdXRob3JpdHlJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImFwcHJvdmVVc2VBdXRob3JpdHkiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJyZXNvbHZlZEFyZ3MiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAic2hhcmVkXzEiLCAidHlwZXNfMSIsICJnZXRCdWJibGVndW1TZXRDb2xsZWN0aW9uU2l6ZUluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAiYnViYmxlZ3VtU2V0Q29sbGVjdGlvblNpemUiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJyZXNvbHZlZEFyZ3MiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAic2hhcmVkXzEiLCAiZ2V0QnVybkVkaXRpb25OZnRJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImJ1cm5FZGl0aW9uTmZ0IiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAiYWNjb3VudHNfMSIsICJzaGFyZWRfMSIsICJnZXRCdXJuTmZ0SW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJidXJuTmZ0IiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgIm1wbF90b29sYm94XzEiLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJob29rZWRfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgInR5cGVzXzEiLCAiZ2V0QnVyblYxSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJidXJuVjEiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJyZXNvbHZlZEFyZ3MiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAiYWNjb3VudHNfMSIsICJzaGFyZWRfMSIsICJnZXRDbG9zZUVzY3Jvd0FjY291bnRJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImNsb3NlRXNjcm93QWNjb3VudCIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInNoYXJlZF8xIiwgImdldENvbGxlY3RJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImNvbGxlY3QiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJzaGFyZWRfMSIsICJnZXRDb252ZXJ0TWFzdGVyRWRpdGlvblYxVG9WMkluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAiY29udmVydE1hc3RlckVkaXRpb25WMVRvVjIiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgImdldENyZWF0ZUVzY3Jvd0FjY291bnRJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImNyZWF0ZUVzY3Jvd0FjY291bnQiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgImdldENyZWF0ZU1hc3RlckVkaXRpb25WM0luc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAiY3JlYXRlTWFzdGVyRWRpdGlvblYzIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgImFjY291bnRzXzEiLCAic2hhcmVkXzEiLCAidHlwZXNfMSIsICJnZXRDcmVhdGVNZXRhZGF0YUFjY291bnRWM0luc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAiY3JlYXRlTWV0YWRhdGFBY2NvdW50VjMiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJyZXNvbHZlZEFyZ3MiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAiaG9va2VkXzEiLCAiYWNjb3VudHNfMSIsICJzaGFyZWRfMSIsICJ0eXBlc18xIiwgImdldENyZWF0ZVYxSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJjcmVhdGVWMSIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJob29rZWRfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgInR5cGVzXzEiLCAiZ2V0RGVsZWdhdGVBdXRob3JpdHlJdGVtVjFJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImRlbGVnYXRlQXV0aG9yaXR5SXRlbVYxIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgImhvb2tlZF8xIiwgImFjY291bnRzXzEiLCAic2hhcmVkXzEiLCAidHlwZXNfMSIsICJnZXREZWxlZ2F0ZUNvbGxlY3Rpb25JdGVtVjFJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImRlbGVnYXRlQ29sbGVjdGlvbkl0ZW1WMSIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJob29rZWRfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgInR5cGVzXzEiLCAiZ2V0RGVsZWdhdGVDb2xsZWN0aW9uVjFJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImRlbGVnYXRlQ29sbGVjdGlvblYxIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgImhvb2tlZF8xIiwgImFjY291bnRzXzEiLCAic2hhcmVkXzEiLCAidHlwZXNfMSIsICJnZXREZWxlZ2F0ZURhdGFJdGVtVjFJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImRlbGVnYXRlRGF0YUl0ZW1WMSIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJob29rZWRfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgInR5cGVzXzEiLCAiZ2V0RGVsZWdhdGVEYXRhVjFJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImRlbGVnYXRlRGF0YVYxIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJtcGxfdG9vbGJveF8xIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAiaG9va2VkXzEiLCAiYWNjb3VudHNfMSIsICJzaGFyZWRfMSIsICJ0eXBlc18xIiwgImdldERlbGVnYXRlTG9ja2VkVHJhbnNmZXJWMUluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAiZGVsZWdhdGVMb2NrZWRUcmFuc2ZlclYxIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgImhvb2tlZF8xIiwgImFjY291bnRzXzEiLCAic2hhcmVkXzEiLCAidHlwZXNfMSIsICJnZXREZWxlZ2F0ZVByb2dyYW1tYWJsZUNvbmZpZ0l0ZW1WMUluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAiZGVsZWdhdGVQcm9ncmFtbWFibGVDb25maWdJdGVtVjEiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJyZXNvbHZlZEFyZ3MiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAiaG9va2VkXzEiLCAiYWNjb3VudHNfMSIsICJzaGFyZWRfMSIsICJ0eXBlc18xIiwgImdldERlbGVnYXRlUHJvZ3JhbW1hYmxlQ29uZmlnVjFJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImRlbGVnYXRlUHJvZ3JhbW1hYmxlQ29uZmlnVjEiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJyZXNvbHZlZEFyZ3MiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgIm1wbF90b29sYm94XzEiLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJob29rZWRfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgInR5cGVzXzEiLCAiZ2V0RGVsZWdhdGVTYWxlVjFJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImRlbGVnYXRlU2FsZVYxIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJtcGxfdG9vbGJveF8xIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAiaG9va2VkXzEiLCAiYWNjb3VudHNfMSIsICJzaGFyZWRfMSIsICJ0eXBlc18xIiwgImdldERlbGVnYXRlU3Rha2luZ1YxSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJkZWxlZ2F0ZVN0YWtpbmdWMSIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAibXBsX3Rvb2xib3hfMSIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgImhvb2tlZF8xIiwgImFjY291bnRzXzEiLCAic2hhcmVkXzEiLCAiZ2V0RGVsZWdhdGVTdGFuZGFyZFYxSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJkZWxlZ2F0ZVN0YW5kYXJkVjEiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJyZXNvbHZlZEFyZ3MiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgIm1wbF90b29sYm94XzEiLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJob29rZWRfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgInR5cGVzXzEiLCAiZ2V0RGVsZWdhdGVUcmFuc2ZlclYxSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJkZWxlZ2F0ZVRyYW5zZmVyVjEiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJyZXNvbHZlZEFyZ3MiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgIm1wbF90b29sYm94XzEiLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJob29rZWRfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgInR5cGVzXzEiLCAiZ2V0RGVsZWdhdGVVdGlsaXR5VjFJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImRlbGVnYXRlVXRpbGl0eVYxIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgImFjY291bnRzXzEiLCAic2hhcmVkXzEiLCAiZ2V0RGVwcmVjYXRlZE1pbnROZXdFZGl0aW9uRnJvbU1hc3RlckVkaXRpb25WaWFQcmludGluZ1Rva2VuSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJkZXByZWNhdGVkTWludE5ld0VkaXRpb25Gcm9tTWFzdGVyRWRpdGlvblZpYVByaW50aW5nVG9rZW4iLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgImdldEZyZWV6ZURlbGVnYXRlZEFjY291bnRJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImZyZWV6ZURlbGVnYXRlZEFjY291bnQiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAibXBsX3Rvb2xib3hfMSIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgImhvb2tlZF8xIiwgImFjY291bnRzXzEiLCAic2hhcmVkXzEiLCAidHlwZXNfMSIsICJnZXRMb2NrVjFJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImxvY2tWMSIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgImdldE1pZ3JhdGVJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgIm1pZ3JhdGUiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJzaGFyZWRfMSIsICJ0eXBlc18xIiwgImdldE1pbnROZXdFZGl0aW9uRnJvbU1hc3RlckVkaXRpb25WaWFUb2tlbkluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAibWludE5ld0VkaXRpb25Gcm9tTWFzdGVyRWRpdGlvblZpYVRva2VuIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInNoYXJlZF8xIiwgInR5cGVzXzEiLCAiZ2V0TWludE5ld0VkaXRpb25Gcm9tTWFzdGVyRWRpdGlvblZpYVZhdWx0UHJveHlJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgIm1pbnROZXdFZGl0aW9uRnJvbU1hc3RlckVkaXRpb25WaWFWYXVsdFByb3h5IiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJtcGxfdG9vbGJveF8xIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAiaG9va2VkXzEiLCAiYWNjb3VudHNfMSIsICJzaGFyZWRfMSIsICJ0eXBlc18xIiwgImdldE1pbnRWMUluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAibWludFYxIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJtcGxfdG9vbGJveF8xIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAiaG9va2VkXzEiLCAiYWNjb3VudHNfMSIsICJzaGFyZWRfMSIsICJ0eXBlc18xIiwgImdldFByaW50VjFJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInByaW50VjEiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJyZXNvbHZlZEFyZ3MiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAic2hhcmVkXzEiLCAiZ2V0UHVmZk1ldGFkYXRhSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJwdWZmTWV0YWRhdGEiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJzaGFyZWRfMSIsICJnZXRSZW1vdmVDcmVhdG9yVmVyaWZpY2F0aW9uSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJyZW1vdmVDcmVhdG9yVmVyaWZpY2F0aW9uIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAiaG9va2VkXzEiLCAiYWNjb3VudHNfMSIsICJzaGFyZWRfMSIsICJ0eXBlc18xIiwgImdldFJldm9rZUF1dGhvcml0eUl0ZW1WMUluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAicmV2b2tlQXV0aG9yaXR5SXRlbVYxIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgImFjY291bnRzXzEiLCAic2hhcmVkXzEiLCAiZ2V0UmV2b2tlQ29sbGVjdGlvbkF1dGhvcml0eUluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAicmV2b2tlQ29sbGVjdGlvbkF1dGhvcml0eSIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgImhvb2tlZF8xIiwgImFjY291bnRzXzEiLCAic2hhcmVkXzEiLCAidHlwZXNfMSIsICJnZXRSZXZva2VDb2xsZWN0aW9uSXRlbVYxSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJyZXZva2VDb2xsZWN0aW9uSXRlbVYxIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgImhvb2tlZF8xIiwgImFjY291bnRzXzEiLCAic2hhcmVkXzEiLCAidHlwZXNfMSIsICJnZXRSZXZva2VDb2xsZWN0aW9uVjFJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInJldm9rZUNvbGxlY3Rpb25WMSIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJob29rZWRfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgInR5cGVzXzEiLCAiZ2V0UmV2b2tlRGF0YUl0ZW1WMUluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAicmV2b2tlRGF0YUl0ZW1WMSIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJob29rZWRfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgInR5cGVzXzEiLCAiZ2V0UmV2b2tlRGF0YVYxSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJyZXZva2VEYXRhVjEiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJyZXNvbHZlZEFyZ3MiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgIm1wbF90b29sYm94XzEiLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJob29rZWRfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgInR5cGVzXzEiLCAiZ2V0UmV2b2tlTG9ja2VkVHJhbnNmZXJWMUluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAicmV2b2tlTG9ja2VkVHJhbnNmZXJWMSIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAibXBsX3Rvb2xib3hfMSIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgImhvb2tlZF8xIiwgImFjY291bnRzXzEiLCAic2hhcmVkXzEiLCAidHlwZXNfMSIsICJnZXRSZXZva2VNaWdyYXRpb25WMUluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAicmV2b2tlTWlncmF0aW9uVjEiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJyZXNvbHZlZEFyZ3MiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAiaG9va2VkXzEiLCAiYWNjb3VudHNfMSIsICJzaGFyZWRfMSIsICJ0eXBlc18xIiwgImdldFJldm9rZVByb2dyYW1tYWJsZUNvbmZpZ0l0ZW1WMUluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAicmV2b2tlUHJvZ3JhbW1hYmxlQ29uZmlnSXRlbVYxIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgImhvb2tlZF8xIiwgImFjY291bnRzXzEiLCAic2hhcmVkXzEiLCAidHlwZXNfMSIsICJnZXRSZXZva2VQcm9ncmFtbWFibGVDb25maWdWMUluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAicmV2b2tlUHJvZ3JhbW1hYmxlQ29uZmlnVjEiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJyZXNvbHZlZEFyZ3MiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgIm1wbF90b29sYm94XzEiLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJob29rZWRfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgInR5cGVzXzEiLCAiZ2V0UmV2b2tlU2FsZVYxSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJyZXZva2VTYWxlVjEiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJyZXNvbHZlZEFyZ3MiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgIm1wbF90b29sYm94XzEiLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJob29rZWRfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgInR5cGVzXzEiLCAiZ2V0UmV2b2tlU3Rha2luZ1YxSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJyZXZva2VTdGFraW5nVjEiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJyZXNvbHZlZEFyZ3MiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgIm1wbF90b29sYm94XzEiLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJob29rZWRfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgImdldFJldm9rZVN0YW5kYXJkVjFJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInJldm9rZVN0YW5kYXJkVjEiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJyZXNvbHZlZEFyZ3MiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgIm1wbF90b29sYm94XzEiLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJob29rZWRfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgInR5cGVzXzEiLCAiZ2V0UmV2b2tlVHJhbnNmZXJWMUluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAicmV2b2tlVHJhbnNmZXJWMSIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgImdldFJldm9rZVVzZUF1dGhvcml0eUluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAicmV2b2tlVXNlQXV0aG9yaXR5IiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgIm1wbF90b29sYm94XzEiLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJob29rZWRfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgInR5cGVzXzEiLCAiZ2V0UmV2b2tlVXRpbGl0eVYxSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJyZXZva2VVdGlsaXR5VjEiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJyZXNvbHZlZEFyZ3MiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAic2hhcmVkXzEiLCAiZ2V0U2V0QW5kVmVyaWZ5Q29sbGVjdGlvbkluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAic2V0QW5kVmVyaWZ5Q29sbGVjdGlvbiIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInNoYXJlZF8xIiwgImdldFNldEFuZFZlcmlmeVNpemVkQ29sbGVjdGlvbkl0ZW1JbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInNldEFuZFZlcmlmeVNpemVkQ29sbGVjdGlvbkl0ZW0iLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJzaGFyZWRfMSIsICJ0eXBlc18xIiwgImdldFNldENvbGxlY3Rpb25TaXplSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJzZXRDb2xsZWN0aW9uU2l6ZSIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgImdldFNldFRva2VuU3RhbmRhcmRJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInNldFRva2VuU3RhbmRhcmQiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJzaGFyZWRfMSIsICJnZXRTaWduTWV0YWRhdGFJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInNpZ25NZXRhZGF0YSIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgImFjY291bnRzXzEiLCAic2hhcmVkXzEiLCAiZ2V0VGhhd0RlbGVnYXRlZEFjY291bnRJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInRoYXdEZWxlZ2F0ZWRBY2NvdW50IiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAic2hhcmVkXzEiLCAiZ2V0VHJhbnNmZXJPdXRPZkVzY3Jvd0luc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAidHJhbnNmZXJPdXRPZkVzY3JvdyIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAibXBsX3Rvb2xib3hfMSIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgImFjY291bnRzXzEiLCAic2hhcmVkXzEiLCAidHlwZXNfMSIsICJnZXRUcmFuc2ZlclYxSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJ0cmFuc2ZlclYxIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJtcGxfdG9vbGJveF8xIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAiaG9va2VkXzEiLCAiYWNjb3VudHNfMSIsICJzaGFyZWRfMSIsICJ0eXBlc18xIiwgImdldFVubG9ja1YxSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJ1bmxvY2tWMSIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJzaGFyZWRfMSIsICJnZXRVbnZlcmlmeUNvbGxlY3Rpb25JbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInVudmVyaWZ5Q29sbGVjdGlvbiIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgImFjY291bnRzXzEiLCAic2hhcmVkXzEiLCAiZ2V0VW52ZXJpZnlDb2xsZWN0aW9uVjFJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInVudmVyaWZ5Q29sbGVjdGlvblYxIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAic2hhcmVkXzEiLCAiZ2V0VW52ZXJpZnlDcmVhdG9yVjFJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInVudmVyaWZ5Q3JlYXRvclYxIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAic2hhcmVkXzEiLCAiZ2V0VW52ZXJpZnlTaXplZENvbGxlY3Rpb25JdGVtSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJ1bnZlcmlmeVNpemVkQ29sbGVjdGlvbkl0ZW0iLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgInR5cGVzXzEiLCAiZ2V0VXBkYXRlQXNBdXRob3JpdHlJdGVtRGVsZWdhdGVWMkluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAidXBkYXRlQXNBdXRob3JpdHlJdGVtRGVsZWdhdGVWMiIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgInR5cGVzXzEiLCAiZ2V0VXBkYXRlQXNDb2xsZWN0aW9uRGVsZWdhdGVWMkluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAidXBkYXRlQXNDb2xsZWN0aW9uRGVsZWdhdGVWMiIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgInR5cGVzXzEiLCAiZ2V0VXBkYXRlQXNDb2xsZWN0aW9uSXRlbURlbGVnYXRlVjJJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInVwZGF0ZUFzQ29sbGVjdGlvbkl0ZW1EZWxlZ2F0ZVYyIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgImFjY291bnRzXzEiLCAic2hhcmVkXzEiLCAidHlwZXNfMSIsICJnZXRVcGRhdGVBc0RhdGFEZWxlZ2F0ZVYySW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJ1cGRhdGVBc0RhdGFEZWxlZ2F0ZVYyIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgImFjY291bnRzXzEiLCAic2hhcmVkXzEiLCAidHlwZXNfMSIsICJnZXRVcGRhdGVBc0RhdGFJdGVtRGVsZWdhdGVWMkluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAidXBkYXRlQXNEYXRhSXRlbURlbGVnYXRlVjIiLCAiY29udGV4dCIsICJpbnB1dCIsICJwcm9ncmFtSWQiLCAicmVzb2x2ZWRBY2NvdW50cyIsICJyZXNvbHZlZEFyZ3MiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAiYWNjb3VudHNfMSIsICJzaGFyZWRfMSIsICJ0eXBlc18xIiwgImdldFVwZGF0ZUFzUHJvZ3JhbW1hYmxlQ29uZmlnRGVsZWdhdGVWMkluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAidXBkYXRlQXNQcm9ncmFtbWFibGVDb25maWdEZWxlZ2F0ZVYyIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgImFjY291bnRzXzEiLCAic2hhcmVkXzEiLCAidHlwZXNfMSIsICJnZXRVcGRhdGVBc1Byb2dyYW1tYWJsZUNvbmZpZ0l0ZW1EZWxlZ2F0ZVYySW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJ1cGRhdGVBc1Byb2dyYW1tYWJsZUNvbmZpZ0l0ZW1EZWxlZ2F0ZVYyIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgImFjY291bnRzXzEiLCAic2hhcmVkXzEiLCAidHlwZXNfMSIsICJnZXRVcGRhdGVBc1VwZGF0ZUF1dGhvcml0eVYySW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJ1cGRhdGVBc1VwZGF0ZUF1dGhvcml0eVYyIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInNoYXJlZF8xIiwgInR5cGVzXzEiLCAiZ2V0VXBkYXRlTWV0YWRhdGFBY2NvdW50VjJJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInVwZGF0ZU1ldGFkYXRhQWNjb3VudFYyIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInNoYXJlZF8xIiwgImdldFVwZGF0ZVByaW1hcnlTYWxlSGFwcGVuZWRWaWFUb2tlbkluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAidXBkYXRlUHJpbWFyeVNhbGVIYXBwZW5lZFZpYVRva2VuIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAiYWNjb3VudHNfMSIsICJzaGFyZWRfMSIsICJ0eXBlc18xIiwgImdldFVwZGF0ZVYxSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJ1cGRhdGVWMSIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJhY2NvdW50c18xIiwgInNoYXJlZF8xIiwgInR5cGVzXzEiLCAiZ2V0VXNlVjFJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInVzZVYxIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAicmVzb2x2ZWRBcmdzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgImFjY291bnRzXzEiLCAic2hhcmVkXzEiLCAiZ2V0VXRpbGl6ZUluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAidXRpbGl6ZSIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgInJlc29sdmVkQXJncyIsICJvcmRlcmVkQWNjb3VudHMiLCAiYSIsICJiIiwgImtleXMiLCAic2lnbmVycyIsICJkYXRhIiwgImJ5dGVzQ3JlYXRlZE9uQ2hhaW4iLCAidW1pXzEiLCAic2VyaWFsaXplcnNfMSIsICJzaGFyZWRfMSIsICJnZXRWZXJpZnlDb2xsZWN0aW9uSW5zdHJ1Y3Rpb25EYXRhU2VyaWFsaXplciIsICJ2YWx1ZSIsICJfX25hbWUiLCAiZXhwb3J0cyIsICJ2ZXJpZnlDb2xsZWN0aW9uIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAiYWNjb3VudHNfMSIsICJzaGFyZWRfMSIsICJnZXRWZXJpZnlDb2xsZWN0aW9uVjFJbnN0cnVjdGlvbkRhdGFTZXJpYWxpemVyIiwgInZhbHVlIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgInZlcmlmeUNvbGxlY3Rpb25WMSIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJ1bWlfMSIsICJzZXJpYWxpemVyc18xIiwgInNoYXJlZF8xIiwgImdldFZlcmlmeUNyZWF0b3JWMUluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAidmVyaWZ5Q3JlYXRvclYxIiwgImNvbnRleHQiLCAiaW5wdXQiLCAicHJvZ3JhbUlkIiwgInJlc29sdmVkQWNjb3VudHMiLCAib3JkZXJlZEFjY291bnRzIiwgImEiLCAiYiIsICJrZXlzIiwgInNpZ25lcnMiLCAiZGF0YSIsICJieXRlc0NyZWF0ZWRPbkNoYWluIiwgInVtaV8xIiwgInNlcmlhbGl6ZXJzXzEiLCAic2hhcmVkXzEiLCAiZ2V0VmVyaWZ5U2l6ZWRDb2xsZWN0aW9uSXRlbUluc3RydWN0aW9uRGF0YVNlcmlhbGl6ZXIiLCAidmFsdWUiLCAiX19uYW1lIiwgImV4cG9ydHMiLCAidmVyaWZ5U2l6ZWRDb2xsZWN0aW9uSXRlbSIsICJjb250ZXh0IiwgImlucHV0IiwgInByb2dyYW1JZCIsICJyZXNvbHZlZEFjY291bnRzIiwgIm9yZGVyZWRBY2NvdW50cyIsICJhIiwgImIiLCAia2V5cyIsICJzaWduZXJzIiwgImRhdGEiLCAiYnl0ZXNDcmVhdGVkT25DaGFpbiIsICJfX2V4cG9ydFN0YXIiLCAiZXhwb3J0cyIsICJlcnJvcnNfMSIsICJleHBvcnRzIiwgImNyZWF0ZU1wbFRva2VuTWV0YWRhdGFQcm9ncmFtIiwgImNvZGUiLCAiY2F1c2UiLCAibmFtZSIsICJfX25hbWUiLCAiZ2V0TXBsVG9rZW5NZXRhZGF0YVByb2dyYW0iLCAiY29udGV4dCIsICJjbHVzdGVyRmlsdGVyIiwgImdldE1wbFRva2VuTWV0YWRhdGFQcm9ncmFtSWQiLCAiX19leHBvcnRTdGFyIiwgImV4cG9ydHMiLCAiX19leHBvcnRTdGFyIiwgImV4cG9ydHMiLCAidW1pXzEiLCAiZ2VuZXJhdGVkXzEiLCAiY3JlYXRlQW5kTWludCIsICJfX25hbWUiLCAiY29udGV4dCIsICJpbnB1dCIsICJleHBvcnRzIiwgImNyZWF0ZU5mdCIsICJjcmVhdGVQcm9ncmFtbWFibGVOZnQiLCAiY3JlYXRlRnVuZ2libGUiLCAiY3JlYXRlRnVuZ2libGVBc3NldCIsICJ1bWlfMSIsICJtcGxfdG9vbGJveF8xIiwgImRpZ2l0YWxBc3NldF8xIiwgImdlbmVyYXRlZF8xIiwgImZldGNoRGlnaXRhbEFzc2V0V2l0aFRva2VuIiwgImNvbnRleHQiLCAibWludCIsICJ0b2tlbiIsICJvcHRpb25zIiwgIm1pbnRBY2NvdW50IiwgIm1ldGFkYXRhQWNjb3VudCIsICJlZGl0aW9uQWNjb3VudCIsICJ0b2tlbkFjY291bnQiLCAidG9rZW5SZWNvcmRBY2NvdW50IiwgImRlc2VyaWFsaXplRGlnaXRhbEFzc2V0V2l0aFRva2VuIiwgIl9fbmFtZSIsICJleHBvcnRzIiwgImZldGNoRGlnaXRhbEFzc2V0V2l0aEFzc29jaWF0ZWRUb2tlbiIsICJvd25lciIsICJmZXRjaERpZ2l0YWxBc3NldFdpdGhUb2tlbkJ5TWludCIsICJkaWdpdGFsQXNzZXRzIiwgImZldGNoQWxsRGlnaXRhbEFzc2V0V2l0aFRva2VuQnlNaW50IiwgImZldGNoQWxsRGlnaXRhbEFzc2V0V2l0aFRva2VuQnlPd25lciIsICJ0b2tlbnMiLCAiYWNjb3VudHNUb0ZldGNoIiwgImFjY291bnRzIiwgIm90aGVyQWNjb3VudHMiLCAiZmV0Y2hBbGxEaWdpdGFsQXNzZXRXaXRoVG9rZW5CeU93bmVyQW5kTWludCIsICJub25FbXB0eVRva2VucyIsICJ0b2tlbkFjY291bnRzIiwgImVycm9yc18xIiwgImZldGNoSnNvbk1ldGFkYXRhIiwgIl9fbmFtZSIsICJjb250ZXh0IiwgInVyaSIsICJlcnJvciIsICJleHBvcnRzIiwgIm1wbF90b29sYm94XzEiLCAiZ2VuZXJhdGVkXzEiLCAibXBsVG9rZW5NZXRhZGF0YSIsICJfX25hbWUiLCAidW1pIiwgImV4cG9ydHMiLCAiX19leHBvcnRTdGFyIiwgImV4cG9ydHMiLCAic3JjX2V4cG9ydHMiLCAiX19leHBvcnQiLCAiU29sYW5hVXRpbHMiLCAiY2hlY2tPd25lck5GVHMiLCAibGFzdFN0YWtpbmdSZXdhcmQiLCAibmZ0T3duZXJBZGRyZXNzIiwgInN0YWtlQWNjb3VudEJhbGFuY2UiLCAiX190b0NvbW1vbkpTIiwgImltcG9ydF93ZWIzIiwgImltcG9ydF93ZWIzIiwgInNvbWUiLCAidmFsdWUiLCAiX19vcHRpb24iLCAibm9uZSIsICJfX25hbWUiLCAiaXNPcHRpb24iLCAiaW5wdXQiLCAiaXNTb21lIiwgIm9wdGlvbiIsICJ3cmFwTnVsbGFibGUiLCAibnVsbGFibGUiLCAic29tZSIsICJub25lIiwgIkludmFsaWRCYXNlU3RyaW5nRXJyb3IiLCAiRXJyb3IiLCAiX19uYW1lIiwgIm5hbWUiLCAiY29uc3RydWN0b3IiLCAidmFsdWUiLCAiYmFzZSIsICJjYXVzZSIsICJtZXNzYWdlIiwgImJhc2VYIiwgImFscGhhYmV0IiwgImJhc2UiLCAibGVuZ3RoIiwgImJhc2VCaWdJbnQiLCAiQmlnSW50IiwgImRlc2NyaXB0aW9uIiwgImZpeGVkU2l6ZSIsICJtYXhTaXplIiwgInNlcmlhbGl6ZSIsICJ2YWx1ZSIsICJtYXRjaCIsICJSZWdFeHAiLCAiSW52YWxpZEJhc2VTdHJpbmdFcnJvciIsICJVaW50OEFycmF5IiwgImNoYXJzIiwgInRyYWlsSW5kZXgiLCAiZmluZEluZGV4IiwgImMiLCAibGVhZGluZ1plcm9lcyIsICJBcnJheSIsICJmaWxsIiwgImZyb20iLCAidGFpbENoYXJzIiwgInNsaWNlIiwgImJhc2UxME51bWJlciIsICJiYXNlWFBvd2VyIiwgImkiLCAiaW5kZXhPZiIsICJ0YWlsQnl0ZXMiLCAidW5zaGlmdCIsICJOdW1iZXIiLCAiY29uY2F0IiwgImRlc2VyaWFsaXplIiwgImJ1ZmZlciIsICJvZmZzZXQiLCAiYnl0ZXMiLCAibiIsICJyZXBlYXQiLCAicmVkdWNlIiwgInN1bSIsICJieXRlIiwgImpvaW4iLCAiYmFzZTU4IiwgImJhc2VYIiwgIm1lcmdlQnl0ZXMiLCAiYnl0ZXNBcnIiLCAidG90YWxMZW5ndGgiLCAicmVkdWNlIiwgInRvdGFsIiwgImFyciIsICJsZW5ndGgiLCAicmVzdWx0IiwgIlVpbnQ4QXJyYXkiLCAib2Zmc2V0IiwgImZvckVhY2giLCAic2V0IiwgInBhZEJ5dGVzIiwgIl9fbmFtZSIsICJieXRlcyIsICJwYWRkZWRCeXRlcyIsICJmaWxsIiwgImZpeEJ5dGVzIiwgInNsaWNlIiwgIkRlc2VyaWFsaXppbmdFbXB0eUJ1ZmZlckVycm9yIiwgIkVycm9yIiwgIl9fbmFtZSIsICJuYW1lIiwgImNvbnN0cnVjdG9yIiwgInNlcmlhbGl6ZXIiLCAiTm90RW5vdWdoQnl0ZXNFcnJvciIsICJleHBlY3RlZCIsICJhY3R1YWwiLCAiRXhwZWN0ZWRGaXhlZFNpemVTZXJpYWxpemVyRXJyb3IiLCAibWVzc2FnZSIsICJmaXhTZXJpYWxpemVyIiwgInNlcmlhbGl6ZXIiLCAiZml4ZWRCeXRlcyIsICJkZXNjcmlwdGlvbiIsICJmaXhlZFNpemUiLCAibWF4U2l6ZSIsICJzZXJpYWxpemUiLCAidmFsdWUiLCAiZml4Qnl0ZXMiLCAiZGVzZXJpYWxpemUiLCAiYnVmZmVyIiwgIm9mZnNldCIsICJzbGljZSIsICJsZW5ndGgiLCAiTm90RW5vdWdoQnl0ZXNFcnJvciIsICJtYXBTZXJpYWxpemVyIiwgInNlcmlhbGl6ZXIiLCAidW5tYXAiLCAibWFwIiwgImRlc2NyaXB0aW9uIiwgImZpeGVkU2l6ZSIsICJtYXhTaXplIiwgInNlcmlhbGl6ZSIsICJ2YWx1ZSIsICJkZXNlcmlhbGl6ZSIsICJidWZmZXIiLCAib2Zmc2V0IiwgImxlbmd0aCIsICJyZW1vdmVOdWxsQ2hhcmFjdGVycyIsICJ2YWx1ZSIsICJyZXBsYWNlIiwgInV0ZjgiLCAiZGVzY3JpcHRpb24iLCAiZml4ZWRTaXplIiwgIm1heFNpemUiLCAic2VyaWFsaXplIiwgInZhbHVlIiwgIlRleHRFbmNvZGVyIiwgImVuY29kZSIsICJkZXNlcmlhbGl6ZSIsICJidWZmZXIiLCAib2Zmc2V0IiwgIlRleHREZWNvZGVyIiwgImRlY29kZSIsICJzbGljZSIsICJyZW1vdmVOdWxsQ2hhcmFjdGVycyIsICJsZW5ndGgiLCAiSW52YWxpZFB1YmxpY0tleUVycm9yIiwgIkVycm9yIiwgIl9fbmFtZSIsICJuYW1lIiwgImNvbnN0cnVjdG9yIiwgImludmFsaWRQdWJsaWNLZXkiLCAicmVhc29uIiwgIlBVQkxJQ19LRVlfTEVOR1RIIiwgInB1YmxpY0tleSIsICJpbnB1dCIsICJhc3NlcnRWYWxpZFB1YmxpY0tleSIsICJrZXkiLCAidG9CYXNlNTgiLCAiQXJyYXkiLCAiaXNBcnJheSIsICJiYXNlNTgiLCAiZGVzZXJpYWxpemUiLCAiYXNzZXJ0UHVibGljS2V5IiwgImlzUHVibGljS2V5IiwgInZhbHVlIiwgImFzc2VydFB1YmxpY0tleSIsICJhc3NlcnRQdWJsaWNLZXkiLCAidmFsdWUiLCAiSW52YWxpZFB1YmxpY0tleUVycm9yIiwgInB1YmxpY0tleUJ5dGVzIiwgInB1YmxpY0tleUJ5dGVzIiwgInZhbHVlIiwgImxlbmd0aCIsICJJbnZhbGlkUHVibGljS2V5RXJyb3IiLCAiYnl0ZXMiLCAiYmFzZTU4IiwgInNlcmlhbGl6ZSIsICJQVUJMSUNfS0VZX0xFTkdUSCIsICJFbmRpYW4iLCAiTnVtYmVyT3V0T2ZSYW5nZUVycm9yIiwgIlJhbmdlRXJyb3IiLCAiX19uYW1lIiwgIm5hbWUiLCAiY29uc3RydWN0b3IiLCAic2VyaWFsaXplciIsICJtaW4iLCAibWF4IiwgImFjdHVhbCIsICJudW1iZXJGYWN0b3J5IiwgImlucHV0IiwgImxpdHRsZUVuZGlhbiIsICJkZWZhdWx0RGVzY3JpcHRpb24iLCAibmFtZSIsICJzaXplIiwgIm9wdGlvbnMiLCAiZW5kaWFuIiwgIkVuZGlhbiIsICJMaXR0bGUiLCAiZGVzY3JpcHRpb24iLCAiZml4ZWRTaXplIiwgIm1heFNpemUiLCAic2VyaWFsaXplIiwgInZhbHVlIiwgInJhbmdlIiwgImFzc2VydFJhbmdlIiwgImJ1ZmZlciIsICJBcnJheUJ1ZmZlciIsICJzZXQiLCAiRGF0YVZpZXciLCAiVWludDhBcnJheSIsICJkZXNlcmlhbGl6ZSIsICJieXRlcyIsICJvZmZzZXQiLCAic2xpY2UiLCAiYXNzZXJ0RW5vdWdoQnl0ZXMiLCAidmlldyIsICJ0b0RhdGFWaWV3IiwgImdldCIsICJ0b0FycmF5QnVmZmVyIiwgImFycmF5IiwgImJ5dGVPZmZzZXQiLCAiYnl0ZUxlbmd0aCIsICJfX25hbWUiLCAic2VyaWFsaXplciIsICJtaW4iLCAibWF4IiwgIk51bWJlck91dE9mUmFuZ2VFcnJvciIsICJleHBlY3RlZCIsICJsZW5ndGgiLCAiRGVzZXJpYWxpemluZ0VtcHR5QnVmZmVyRXJyb3IiLCAiTm90RW5vdWdoQnl0ZXNFcnJvciIsICJmMzIiLCAiX19uYW1lIiwgIm9wdGlvbnMiLCAibnVtYmVyRmFjdG9yeSIsICJuYW1lIiwgInNpemUiLCAic2V0IiwgInZpZXciLCAidmFsdWUiLCAibGUiLCAic2V0RmxvYXQzMiIsICJOdW1iZXIiLCAiZ2V0IiwgImdldEZsb2F0MzIiLCAiZjY0IiwgIl9fbmFtZSIsICJvcHRpb25zIiwgIm51bWJlckZhY3RvcnkiLCAibmFtZSIsICJzaXplIiwgInNldCIsICJ2aWV3IiwgInZhbHVlIiwgImxlIiwgInNldEZsb2F0NjQiLCAiTnVtYmVyIiwgImdldCIsICJnZXRGbG9hdDY0IiwgImk4IiwgIl9fbmFtZSIsICJvcHRpb25zIiwgIm51bWJlckZhY3RvcnkiLCAibmFtZSIsICJzaXplIiwgInJhbmdlIiwgIk51bWJlciIsICJzZXQiLCAidmlldyIsICJ2YWx1ZSIsICJzZXRJbnQ4IiwgImdldCIsICJnZXRJbnQ4IiwgImkxNiIsICJfX25hbWUiLCAib3B0aW9ucyIsICJudW1iZXJGYWN0b3J5IiwgIm5hbWUiLCAic2l6ZSIsICJyYW5nZSIsICJOdW1iZXIiLCAic2V0IiwgInZpZXciLCAidmFsdWUiLCAibGUiLCAic2V0SW50MTYiLCAiZ2V0IiwgImdldEludDE2IiwgImkzMiIsICJfX25hbWUiLCAib3B0aW9ucyIsICJudW1iZXJGYWN0b3J5IiwgIm5hbWUiLCAic2l6ZSIsICJyYW5nZSIsICJOdW1iZXIiLCAic2V0IiwgInZpZXciLCAidmFsdWUiLCAibGUiLCAic2V0SW50MzIiLCAiZ2V0IiwgImdldEludDMyIiwgImk2NCIsICJfX25hbWUiLCAib3B0aW9ucyIsICJudW1iZXJGYWN0b3J5IiwgIm5hbWUiLCAic2l6ZSIsICJyYW5nZSIsICJCaWdJbnQiLCAic2V0IiwgInZpZXciLCAidmFsdWUiLCAibGUiLCAic2V0QmlnSW50NjQiLCAiZ2V0IiwgImdldEJpZ0ludDY0IiwgImkxMjgiLCAiX19uYW1lIiwgIm9wdGlvbnMiLCAibnVtYmVyRmFjdG9yeSIsICJuYW1lIiwgInNpemUiLCAicmFuZ2UiLCAiQmlnSW50IiwgInNldCIsICJ2aWV3IiwgInZhbHVlIiwgImxlIiwgImxlZnRPZmZzZXQiLCAicmlnaHRPZmZzZXQiLCAicmlnaHRNYXNrIiwgInNldEJpZ0ludDY0IiwgInNldEJpZ1VpbnQ2NCIsICJnZXQiLCAibGVmdCIsICJnZXRCaWdJbnQ2NCIsICJyaWdodCIsICJnZXRCaWdVaW50NjQiLCAidTgiLCAiX19uYW1lIiwgIm9wdGlvbnMiLCAibnVtYmVyRmFjdG9yeSIsICJuYW1lIiwgInNpemUiLCAicmFuZ2UiLCAiTnVtYmVyIiwgInNldCIsICJ2aWV3IiwgInZhbHVlIiwgInNldFVpbnQ4IiwgImdldCIsICJnZXRVaW50OCIsICJ1MTYiLCAiX19uYW1lIiwgIm9wdGlvbnMiLCAibnVtYmVyRmFjdG9yeSIsICJuYW1lIiwgInNpemUiLCAicmFuZ2UiLCAiTnVtYmVyIiwgInNldCIsICJ2aWV3IiwgInZhbHVlIiwgImxlIiwgInNldFVpbnQxNiIsICJnZXQiLCAiZ2V0VWludDE2IiwgInUzMiIsICJfX25hbWUiLCAib3B0aW9ucyIsICJudW1iZXJGYWN0b3J5IiwgIm5hbWUiLCAic2l6ZSIsICJyYW5nZSIsICJOdW1iZXIiLCAic2V0IiwgInZpZXciLCAidmFsdWUiLCAibGUiLCAic2V0VWludDMyIiwgImdldCIsICJnZXRVaW50MzIiLCAidTY0IiwgIl9fbmFtZSIsICJvcHRpb25zIiwgIm51bWJlckZhY3RvcnkiLCAibmFtZSIsICJzaXplIiwgInJhbmdlIiwgIkJpZ0ludCIsICJzZXQiLCAidmlldyIsICJ2YWx1ZSIsICJsZSIsICJzZXRCaWdVaW50NjQiLCAiZ2V0IiwgImdldEJpZ1VpbnQ2NCIsICJ1MTI4IiwgIl9fbmFtZSIsICJvcHRpb25zIiwgIm51bWJlckZhY3RvcnkiLCAibmFtZSIsICJzaXplIiwgInJhbmdlIiwgIkJpZ0ludCIsICJzZXQiLCAidmlldyIsICJ2YWx1ZSIsICJsZSIsICJsZWZ0T2Zmc2V0IiwgInJpZ2h0T2Zmc2V0IiwgInJpZ2h0TWFzayIsICJzZXRCaWdVaW50NjQiLCAiZ2V0IiwgImxlZnQiLCAiZ2V0QmlnVWludDY0IiwgInJpZ2h0IiwgInNob3J0VTE2IiwgIl9fbmFtZSIsICJvcHRpb25zIiwgImRlc2NyaXB0aW9uIiwgImZpeGVkU2l6ZSIsICJtYXhTaXplIiwgInNlcmlhbGl6ZSIsICJ2YWx1ZSIsICJhc3NlcnRSYW5nZSIsICJieXRlcyIsICJpaSIsICJhbGlnbmVkVmFsdWUiLCAibmV4dFNldmVuQml0cyIsICJVaW50OEFycmF5IiwgImRlc2VyaWFsaXplIiwgIm9mZnNldCIsICJieXRlQ291bnQiLCAiYnl0ZUluZGV4IiwgImN1cnJlbnRCeXRlIiwgIkludmFsaWROdW1iZXJPZkl0ZW1zRXJyb3IiLCAiRXJyb3IiLCAiX19uYW1lIiwgIm5hbWUiLCAiY29uc3RydWN0b3IiLCAic2VyaWFsaXplciIsICJleHBlY3RlZCIsICJhY3R1YWwiLCAiSW52YWxpZEFycmF5TGlrZVJlbWFpbmRlclNpemVFcnJvciIsICJyZW1haW5kZXJTaXplIiwgIml0ZW1TaXplIiwgIlVucmVjb2duaXplZEFycmF5TGlrZVNlcmlhbGl6ZXJTaXplRXJyb3IiLCAic2l6ZSIsICJKU09OIiwgInN0cmluZ2lmeSIsICJJbnZhbGlkRGF0YUVudW1WYXJpYW50RXJyb3IiLCAiaW52YWxpZFZhcmlhbnQiLCAidmFsaWRWYXJpYW50cyIsICJqb2luIiwgIkludmFsaWRTY2FsYXJFbnVtVmFyaWFudEVycm9yIiwgIm1pbiIsICJtYXgiLCAiRW51bURpc2NyaW1pbmF0b3JPdXRPZlJhbmdlRXJyb3IiLCAiUmFuZ2VFcnJvciIsICJkaXNjcmltaW5hdG9yIiwgInN1bVNlcmlhbGl6ZXJTaXplcyIsICJzaXplcyIsICJyZWR1Y2UiLCAiYWxsIiwgInNpemUiLCAiZ2V0UmVzb2x2ZWRTaXplIiwgInNpemUiLCAiY2hpbGRyZW5TaXplcyIsICJieXRlcyIsICJvZmZzZXQiLCAiZGVzZXJpYWxpemUiLCAiY2hpbGRyZW5TaXplIiwgInN1bVNlcmlhbGl6ZXJTaXplcyIsICJFeHBlY3RlZEZpeGVkU2l6ZVNlcmlhbGl6ZXJFcnJvciIsICJyZW1haW5kZXIiLCAic2xpY2UiLCAibGVuZ3RoIiwgIkludmFsaWRBcnJheUxpa2VSZW1haW5kZXJTaXplRXJyb3IiLCAiVW5yZWNvZ25pemVkQXJyYXlMaWtlU2VyaWFsaXplclNpemVFcnJvciIsICJnZXRTaXplRGVzY3JpcHRpb24iLCAiZGVzY3JpcHRpb24iLCAiZ2V0U2l6ZUZyb21DaGlsZHJlbiIsICJnZXRTaXplUHJlZml4IiwgInJlYWxTaXplIiwgInNlcmlhbGl6ZSIsICJVaW50OEFycmF5IiwgImFycmF5IiwgIml0ZW0iLCAib3B0aW9ucyIsICJzaXplIiwgInUzMiIsICJmaXhlZFNpemUiLCAiRXhwZWN0ZWRGaXhlZFNpemVTZXJpYWxpemVyRXJyb3IiLCAiZGVzY3JpcHRpb24iLCAiZ2V0U2l6ZURlc2NyaXB0aW9uIiwgImdldFNpemVGcm9tQ2hpbGRyZW4iLCAibWF4U2l6ZSIsICJzZXJpYWxpemUiLCAidmFsdWUiLCAibGVuZ3RoIiwgIkludmFsaWROdW1iZXJPZkl0ZW1zRXJyb3IiLCAibWVyZ2VCeXRlcyIsICJnZXRTaXplUHJlZml4IiwgIm1hcCIsICJ2IiwgImRlc2VyaWFsaXplIiwgImJ5dGVzIiwgIm9mZnNldCIsICJzbGljZSIsICJyZXNvbHZlZFNpemUiLCAibmV3T2Zmc2V0IiwgImdldFJlc29sdmVkU2l6ZSIsICJ2YWx1ZXMiLCAiaSIsICJwdXNoIiwgImJvb2wiLCAib3B0aW9ucyIsICJzaXplIiwgInU4IiwgImZpeGVkU2l6ZSIsICJFeHBlY3RlZEZpeGVkU2l6ZVNlcmlhbGl6ZXJFcnJvciIsICJkZXNjcmlwdGlvbiIsICJtYXhTaXplIiwgInNlcmlhbGl6ZSIsICJ2YWx1ZSIsICJkZXNlcmlhbGl6ZSIsICJieXRlcyIsICJvZmZzZXQiLCAic2xpY2UiLCAibGVuZ3RoIiwgIkRlc2VyaWFsaXppbmdFbXB0eUJ1ZmZlckVycm9yIiwgInZPZmZzZXQiLCAiYnl0ZXMiLCAib3B0aW9ucyIsICJzaXplIiwgImRlc2NyaXB0aW9uIiwgImdldFNpemVEZXNjcmlwdGlvbiIsICJieXRlU2VyaWFsaXplciIsICJmaXhlZFNpemUiLCAibWF4U2l6ZSIsICJzZXJpYWxpemUiLCAidmFsdWUiLCAiVWludDhBcnJheSIsICJkZXNlcmlhbGl6ZSIsICJvZmZzZXQiLCAic2xpY2UiLCAibGVuZ3RoIiwgImZpeFNlcmlhbGl6ZXIiLCAiY29udGVudEJ5dGVzIiwgImxlbmd0aEJ5dGVzIiwgIm1lcmdlQnl0ZXMiLCAiYnVmZmVyIiwgIkRlc2VyaWFsaXppbmdFbXB0eUJ1ZmZlckVycm9yIiwgImxlbmd0aEJpZ0ludCIsICJsZW5ndGhPZmZzZXQiLCAiTnVtYmVyIiwgImNvbnRlbnRCdWZmZXIiLCAiTm90RW5vdWdoQnl0ZXNFcnJvciIsICJjb250ZW50T2Zmc2V0IiwgIm1heFNlcmlhbGl6ZXJTaXplcyIsICJzaXplcyIsICJyZWR1Y2UiLCAiYWxsIiwgInNpemUiLCAiTWF0aCIsICJtYXgiLCAiZGF0YUVudW0iLCAidmFyaWFudHMiLCAib3B0aW9ucyIsICJwcmVmaXgiLCAic2l6ZSIsICJ1OCIsICJmaWVsZERlc2NyaXB0aW9ucyIsICJtYXAiLCAibmFtZSIsICJzZXJpYWxpemVyIiwgIlN0cmluZyIsICJkZXNjcmlwdGlvbiIsICJqb2luIiwgImZpeGVkVmFyaWFudFNpemUiLCAiZXZlcnkiLCAib25lIiwgImkiLCAiYWxsIiwgImZpeGVkU2l6ZSIsICJtYXhWYXJpYW50U2l6ZSIsICJtYXhTZXJpYWxpemVyU2l6ZXMiLCAiZmllbGQiLCAibWF4U2l6ZSIsICJsZW5ndGgiLCAic3VtU2VyaWFsaXplclNpemVzIiwgInNlcmlhbGl6ZSIsICJ2YXJpYW50IiwgImRpc2NyaW1pbmF0b3IiLCAiZmluZEluZGV4IiwgImtleSIsICJfX2tpbmQiLCAiSW52YWxpZERhdGFFbnVtVmFyaWFudEVycm9yIiwgInZhcmlhbnRQcmVmaXgiLCAidmFyaWFudEJ5dGVzIiwgIm1lcmdlQnl0ZXMiLCAiZGVzZXJpYWxpemUiLCAiYnl0ZXMiLCAib2Zmc2V0IiwgInNsaWNlIiwgIkRlc2VyaWFsaXppbmdFbXB0eUJ1ZmZlckVycm9yIiwgImRPZmZzZXQiLCAidmFyaWFudEZpZWxkIiwgIk51bWJlciIsICJFbnVtRGlzY3JpbWluYXRvck91dE9mUmFuZ2VFcnJvciIsICJ2T2Zmc2V0IiwgIm1hcCIsICJrZXkiLCAidmFsdWUiLCAib3B0aW9ucyIsICJzaXplIiwgInUzMiIsICJmaXhlZFNpemUiLCAiRXhwZWN0ZWRGaXhlZFNpemVTZXJpYWxpemVyRXJyb3IiLCAiZGVzY3JpcHRpb24iLCAiZ2V0U2l6ZURlc2NyaXB0aW9uIiwgImdldFNpemVGcm9tQ2hpbGRyZW4iLCAibWF4U2l6ZSIsICJzZXJpYWxpemUiLCAiSW52YWxpZE51bWJlck9mSXRlbXNFcnJvciIsICJpdGVtQnl0ZXMiLCAiQXJyYXkiLCAiZnJvbSIsICJrIiwgInYiLCAibWVyZ2VCeXRlcyIsICJnZXRTaXplUHJlZml4IiwgImRlc2VyaWFsaXplIiwgImJ5dGVzIiwgIm9mZnNldCIsICJNYXAiLCAic2xpY2UiLCAibGVuZ3RoIiwgInJlc29sdmVkU2l6ZSIsICJuZXdPZmZzZXQiLCAiZ2V0UmVzb2x2ZWRTaXplIiwgImkiLCAiZGVzZXJpYWxpemVkS2V5IiwgImtPZmZzZXQiLCAiZGVzZXJpYWxpemVkVmFsdWUiLCAidk9mZnNldCIsICJzZXQiLCAibnVsbGFibGUiLCAiaXRlbSIsICJvcHRpb25zIiwgInByZWZpeCIsICJ1OCIsICJmaXhlZCIsICJkZXNjcmlwdGlvblN1ZmZpeCIsICJnZXRTaXplRGVzY3JpcHRpb24iLCAiZml4ZWRTaXplIiwgIkV4cGVjdGVkRml4ZWRTaXplU2VyaWFsaXplckVycm9yIiwgImRlc2NyaXB0aW9uIiwgIm1heFNpemUiLCAic3VtU2VyaWFsaXplclNpemVzIiwgInNlcmlhbGl6ZSIsICJvcHRpb24iLCAicHJlZml4Qnl0ZSIsICJOdW1iZXIiLCAiaXRlbUZpeGVkU2l6ZSIsICJpdGVtQnl0ZXMiLCAic2xpY2UiLCAiVWludDhBcnJheSIsICJmaWxsIiwgIm1lcmdlQnl0ZXMiLCAiZGVzZXJpYWxpemUiLCAiYnl0ZXMiLCAib2Zmc2V0IiwgImxlbmd0aCIsICJmaXhlZE9mZnNldCIsICJpc1NvbWUiLCAicHJlZml4T2Zmc2V0IiwgInZhbHVlIiwgIm5ld09mZnNldCIsICJvcHRpb24iLCAiaXRlbSIsICJvcHRpb25zIiwgInByZWZpeCIsICJ1OCIsICJmaXhlZCIsICJkZXNjcmlwdGlvblN1ZmZpeCIsICJnZXRTaXplRGVzY3JpcHRpb24iLCAiZml4ZWRTaXplIiwgIkV4cGVjdGVkRml4ZWRTaXplU2VyaWFsaXplckVycm9yIiwgImRlc2NyaXB0aW9uIiwgIm1heFNpemUiLCAic3VtU2VyaWFsaXplclNpemVzIiwgInNlcmlhbGl6ZSIsICJvcHRpb25Pck51bGxhYmxlIiwgImlzT3B0aW9uIiwgIndyYXBOdWxsYWJsZSIsICJwcmVmaXhCeXRlIiwgIk51bWJlciIsICJpc1NvbWUiLCAiaXRlbUZpeGVkU2l6ZSIsICJpdGVtQnl0ZXMiLCAidmFsdWUiLCAic2xpY2UiLCAiVWludDhBcnJheSIsICJmaWxsIiwgIm1lcmdlQnl0ZXMiLCAiZGVzZXJpYWxpemUiLCAiYnl0ZXMiLCAib2Zmc2V0IiwgImxlbmd0aCIsICJub25lIiwgImZpeGVkT2Zmc2V0IiwgInByZWZpeE9mZnNldCIsICJuZXdPZmZzZXQiLCAic29tZSIsICJwdWJsaWNLZXkiLCAib3B0aW9ucyIsICJkZXNjcmlwdGlvbiIsICJmaXhlZFNpemUiLCAibWF4U2l6ZSIsICJzZXJpYWxpemUiLCAidmFsdWUiLCAicHVibGljS2V5Qnl0ZXMiLCAidG9QdWJsaWNLZXkiLCAiZGVzZXJpYWxpemUiLCAiYnl0ZXMiLCAib2Zmc2V0IiwgInB1YmtleUJ5dGVzIiwgInNsaWNlIiwgImxlbmd0aCIsICJEZXNlcmlhbGl6aW5nRW1wdHlCdWZmZXJFcnJvciIsICJQVUJMSUNfS0VZX0xFTkdUSCIsICJOb3RFbm91Z2hCeXRlc0Vycm9yIiwgInNjYWxhckVudW0iLCAiY29uc3RydWN0b3IiLCAib3B0aW9ucyIsICJwcmVmaXgiLCAic2l6ZSIsICJ1OCIsICJlbnVtS2V5cyIsICJPYmplY3QiLCAia2V5cyIsICJlbnVtVmFsdWVzIiwgInZhbHVlcyIsICJpc051bWVyaWNFbnVtIiwgInNvbWUiLCAidiIsICJ2YWx1ZURlc2NyaXB0aW9ucyIsICJmaWx0ZXIiLCAiam9pbiIsICJtaW5SYW5nZSIsICJtYXhSYW5nZSIsICJsZW5ndGgiLCAic3RyaW5nVmFsdWVzIiwgIlNldCIsICJhc3NlcnRWYWxpZFZhcmlhbnQiLCAidmFyaWFudCIsICJpc0ludmFsaWROdW1iZXIiLCAiaXNJbnZhbGlkU3RyaW5nIiwgImluY2x1ZGVzIiwgIkludmFsaWRTY2FsYXJFbnVtVmFyaWFudEVycm9yIiwgImRlc2NyaXB0aW9uIiwgImZpeGVkU2l6ZSIsICJtYXhTaXplIiwgInNlcmlhbGl6ZSIsICJ2YWx1ZSIsICJ2YWx1ZUluZGV4IiwgImluZGV4T2YiLCAiZGVzZXJpYWxpemUiLCAiYnl0ZXMiLCAib2Zmc2V0IiwgInNsaWNlIiwgIkRlc2VyaWFsaXppbmdFbXB0eUJ1ZmZlckVycm9yIiwgIm5ld09mZnNldCIsICJ2YWx1ZUFzTnVtYmVyIiwgIk51bWJlciIsICJFbnVtRGlzY3JpbWluYXRvck91dE9mUmFuZ2VFcnJvciIsICJzZXQiLCAiaXRlbSIsICJvcHRpb25zIiwgInNpemUiLCAidTMyIiwgImZpeGVkU2l6ZSIsICJFeHBlY3RlZEZpeGVkU2l6ZVNlcmlhbGl6ZXJFcnJvciIsICJkZXNjcmlwdGlvbiIsICJnZXRTaXplRGVzY3JpcHRpb24iLCAiZ2V0U2l6ZUZyb21DaGlsZHJlbiIsICJtYXhTaXplIiwgInNlcmlhbGl6ZSIsICJJbnZhbGlkTnVtYmVyT2ZJdGVtc0Vycm9yIiwgIml0ZW1CeXRlcyIsICJBcnJheSIsICJmcm9tIiwgInZhbHVlIiwgIm1lcmdlQnl0ZXMiLCAiZ2V0U2l6ZVByZWZpeCIsICJkZXNlcmlhbGl6ZSIsICJieXRlcyIsICJvZmZzZXQiLCAiU2V0IiwgInNsaWNlIiwgImxlbmd0aCIsICJyZXNvbHZlZFNpemUiLCAibmV3T2Zmc2V0IiwgImdldFJlc29sdmVkU2l6ZSIsICJpIiwgImFkZCIsICJzdHJpbmciLCAib3B0aW9ucyIsICJzaXplIiwgInUzMiIsICJlbmNvZGluZyIsICJ1dGY4IiwgImRlc2NyaXB0aW9uIiwgImdldFNpemVEZXNjcmlwdGlvbiIsICJmaXhTZXJpYWxpemVyIiwgImZpeGVkU2l6ZSIsICJtYXhTaXplIiwgInNlcmlhbGl6ZSIsICJ2YWx1ZSIsICJjb250ZW50Qnl0ZXMiLCAibGVuZ3RoQnl0ZXMiLCAibGVuZ3RoIiwgIm1lcmdlQnl0ZXMiLCAiZGVzZXJpYWxpemUiLCAiYnVmZmVyIiwgIm9mZnNldCIsICJzbGljZSIsICJEZXNlcmlhbGl6aW5nRW1wdHlCdWZmZXJFcnJvciIsICJsZW5ndGhCaWdJbnQiLCAibGVuZ3RoT2Zmc2V0IiwgIk51bWJlciIsICJjb250ZW50QnVmZmVyIiwgIk5vdEVub3VnaEJ5dGVzRXJyb3IiLCAiY29udGVudE9mZnNldCIsICJzdHJ1Y3QiLCAiZmllbGRzIiwgIm9wdGlvbnMiLCAiZmllbGREZXNjcmlwdGlvbnMiLCAibWFwIiwgIm5hbWUiLCAic2VyaWFsaXplciIsICJTdHJpbmciLCAiZGVzY3JpcHRpb24iLCAiam9pbiIsICJmaXhlZFNpemUiLCAic3VtU2VyaWFsaXplclNpemVzIiwgImZpZWxkIiwgIm1heFNpemUiLCAic2VyaWFsaXplIiwgImZpZWxkQnl0ZXMiLCAia2V5IiwgIm1lcmdlQnl0ZXMiLCAiZGVzZXJpYWxpemUiLCAiYnl0ZXMiLCAib2Zmc2V0IiwgImZvckVhY2giLCAidmFsdWUiLCAibmV3T2Zmc2V0IiwgInR1cGxlIiwgIml0ZW1zIiwgIm9wdGlvbnMiLCAiaXRlbURlc2NyaXB0aW9ucyIsICJtYXAiLCAiaXRlbSIsICJkZXNjcmlwdGlvbiIsICJqb2luIiwgImZpeGVkU2l6ZSIsICJzdW1TZXJpYWxpemVyU2l6ZXMiLCAibWF4U2l6ZSIsICJzZXJpYWxpemUiLCAidmFsdWUiLCAibGVuZ3RoIiwgIkludmFsaWROdW1iZXJPZkl0ZW1zRXJyb3IiLCAibWVyZ2VCeXRlcyIsICJpbmRleCIsICJkZXNlcmlhbGl6ZSIsICJieXRlcyIsICJvZmZzZXQiLCAidmFsdWVzIiwgImZvckVhY2giLCAic2VyaWFsaXplciIsICJuZXdWYWx1ZSIsICJuZXdPZmZzZXQiLCAicHVzaCIsICJ1bml0IiwgIm9wdGlvbnMiLCAiZGVzY3JpcHRpb24iLCAiZml4ZWRTaXplIiwgIm1heFNpemUiLCAic2VyaWFsaXplIiwgIlVpbnQ4QXJyYXkiLCAiZGVzZXJpYWxpemUiLCAiX2J5dGVzIiwgIm9mZnNldCIsICJ1bmRlZmluZWQiLCAiVW1pRXJyb3IiLCAiRXJyb3IiLCAiX19uYW1lIiwgIm5hbWUiLCAiY29uc3RydWN0b3IiLCAibWVzc2FnZSIsICJzb3VyY2UiLCAic291cmNlRGV0YWlscyIsICJjYXVzZSIsICJnZXRGdWxsU291cmNlIiwgImdldENhcGl0YWxpemVkU291cmNlIiwgInRvVXBwZXJDYXNlIiwgInNsaWNlIiwgImNhcGl0YWxpemVkU291cmNlIiwgInRvU3RyaW5nIiwgIlNka0Vycm9yIiwgIlVtaUVycm9yIiwgIl9fbmFtZSIsICJuYW1lIiwgImNvbnN0cnVjdG9yIiwgIm1lc3NhZ2UiLCAiY2F1c2UiLCAidW5kZWZpbmVkIiwgIkFDQ09VTlRfSEVBREVSX1NJWkUiLCAiY3JlYXRlQmlnSW50IiwgImlucHV0IiwgInRvU3RyaW5nIiwgIkJpZ0ludCIsICJjcmVhdGVBbW91bnQiLCAiX19uYW1lIiwgImJhc2lzUG9pbnRzIiwgImlkZW50aWZpZXIiLCAiZGVjaW1hbHMiLCAiY3JlYXRlQmlnSW50IiwgImxhbXBvcnRzIiwgImNyZWF0ZUFtb3VudCIsICJpc1plcm9BbW91bnQiLCAidmFsdWUiLCAiYmFzaXNQb2ludHMiLCAiQmlnSW50IiwgIk1BSU5ORVRfQkVUQV9ET01BSU5TIiwgIkRFVk5FVF9ET01BSU5TIiwgIlRFU1RORVRfRE9NQUlOUyIsICJMT0NBTE5FVF9ET01BSU5TIiwgInJlc29sdmVDbHVzdGVyRnJvbUVuZHBvaW50IiwgImVuZHBvaW50IiwgImRvbWFpbiIsICJVUkwiLCAiaG9zdG5hbWUiLCAiaW5jbHVkZXMiLCAiSW50ZXJmYWNlSW1wbGVtZW50YXRpb25NaXNzaW5nRXJyb3IiLCAiU2RrRXJyb3IiLCAiX19uYW1lIiwgIm5hbWUiLCAiY29uc3RydWN0b3IiLCAiaW50ZXJmYWNlTmFtZSIsICJjb250ZXh0VmFyaWFibGUiLCAiaW50ZXJmYWNlQmFzZW5hbWUiLCAicmVwbGFjZSIsICJtZXNzYWdlIiwgImNyZWF0ZU51bGxEb3dubG9hZGVyIiwgImVycm9ySGFuZGxlciIsICJfX25hbWUiLCAiSW50ZXJmYWNlSW1wbGVtZW50YXRpb25NaXNzaW5nRXJyb3IiLCAiZG93bmxvYWQiLCAiZG93bmxvYWRKc29uIiwgImNyZWF0ZU51bGxFZGRzYSIsICJlcnJvckhhbmRsZXIiLCAiX19uYW1lIiwgIkludGVyZmFjZUltcGxlbWVudGF0aW9uTWlzc2luZ0Vycm9yIiwgImdlbmVyYXRlS2V5cGFpciIsICJjcmVhdGVLZXlwYWlyRnJvbVNlY3JldEtleSIsICJjcmVhdGVLZXlwYWlyRnJvbVNlZWQiLCAiaXNPbkN1cnZlIiwgImZpbmRQZGEiLCAic2lnbiIsICJ2ZXJpZnkiLCAiY3JlYXRlTnVsbEh0dHAiLCAic2VuZCIsICJfX25hbWUiLCAiSW50ZXJmYWNlSW1wbGVtZW50YXRpb25NaXNzaW5nRXJyb3IiLCAiY3JlYXRlTnVsbFByb2dyYW1SZXBvc2l0b3J5IiwgImVycm9ySGFuZGxlciIsICJfX25hbWUiLCAiSW50ZXJmYWNlSW1wbGVtZW50YXRpb25NaXNzaW5nRXJyb3IiLCAiaGFzIiwgImdldCIsICJnZXRQdWJsaWNLZXkiLCAiYWxsIiwgImFkZCIsICJiaW5kIiwgInVuYmluZCIsICJjbG9uZSIsICJyZXNvbHZlRXJyb3IiLCAiY3JlYXRlTnVsbFJwYyIsICJlcnJvckhhbmRsZXIiLCAiX19uYW1lIiwgIkludGVyZmFjZUltcGxlbWVudGF0aW9uTWlzc2luZ0Vycm9yIiwgImdldEVuZHBvaW50IiwgImdldENsdXN0ZXIiLCAiZ2V0QWNjb3VudCIsICJnZXRBY2NvdW50cyIsICJnZXRQcm9ncmFtQWNjb3VudHMiLCAiZ2V0QmxvY2tUaW1lIiwgImdldEJhbGFuY2UiLCAiZ2V0UmVudCIsICJnZXRTbG90IiwgImdldExhdGVzdEJsb2NraGFzaCIsICJnZXRUcmFuc2FjdGlvbiIsICJnZXRTaWduYXR1cmVTdGF0dXNlcyIsICJhY2NvdW50RXhpc3RzIiwgImFpcmRyb3AiLCAiY2FsbCIsICJzZW5kVHJhbnNhY3Rpb24iLCAiY29uZmlybVRyYW5zYWN0aW9uIiwgImNyZWF0ZU51bGxTZXJpYWxpemVyIiwgImVycm9ySGFuZGxlciIsICJfX25hbWUiLCAiSW50ZXJmYWNlSW1wbGVtZW50YXRpb25NaXNzaW5nRXJyb3IiLCAidHVwbGUiLCAiYXJyYXkiLCAibWFwIiwgInNldCIsICJvcHRpb24iLCAibnVsbGFibGUiLCAic3RydWN0IiwgImVudW0iLCAiZGF0YUVudW0iLCAic3RyaW5nIiwgImJvb2wiLCAidW5pdCIsICJ1OCIsICJ1MTYiLCAidTMyIiwgInU2NCIsICJ1MTI4IiwgImk4IiwgImkxNiIsICJpMzIiLCAiaTY0IiwgImkxMjgiLCAiZjMyIiwgImY2NCIsICJieXRlcyIsICJwdWJsaWNLZXkiLCAiY2h1bmsiLCAiX19uYW1lIiwgImFycmF5IiwgImNodW5rU2l6ZSIsICJyZWR1Y2UiLCAiY2h1bmtzIiwgIml0ZW0iLCAiaW5kZXgiLCAiY2h1bmtJbmRleCIsICJNYXRoIiwgImZsb29yIiwgInB1c2giLCAiY3JlYXRlTnVsbFNpZ25lciIsICJlcnJvciIsICJFcnJvciIsICJlcnJvckhhbmRsZXIiLCAiX19uYW1lIiwgInB1YmxpY0tleSIsICJzaWduTWVzc2FnZSIsICJzaWduVHJhbnNhY3Rpb24iLCAic2lnbkFsbFRyYW5zYWN0aW9ucyIsICJjcmVhdGVOdWxsVHJhbnNhY3Rpb25GYWN0b3J5IiwgImVycm9ySGFuZGxlciIsICJfX25hbWUiLCAiSW50ZXJmYWNlSW1wbGVtZW50YXRpb25NaXNzaW5nRXJyb3IiLCAiY3JlYXRlIiwgInNlcmlhbGl6ZSIsICJkZXNlcmlhbGl6ZSIsICJzZXJpYWxpemVNZXNzYWdlIiwgImRlc2VyaWFsaXplTWVzc2FnZSIsICJjcmVhdGVOdWxsVXBsb2FkZXIiLCAiZXJyb3JIYW5kbGVyIiwgIl9fbmFtZSIsICJJbnRlcmZhY2VJbXBsZW1lbnRhdGlvbk1pc3NpbmdFcnJvciIsICJ1cGxvYWQiLCAidXBsb2FkSnNvbiIsICJnZXRVcGxvYWRQcmljZSIsICJjcmVhdGVOdWxsQ29udGV4dCIsICJfX25hbWUiLCAiZG93bmxvYWRlciIsICJjcmVhdGVOdWxsRG93bmxvYWRlciIsICJlZGRzYSIsICJjcmVhdGVOdWxsRWRkc2EiLCAiaHR0cCIsICJjcmVhdGVOdWxsSHR0cCIsICJpZGVudGl0eSIsICJjcmVhdGVOdWxsU2lnbmVyIiwgInBheWVyIiwgInByb2dyYW1zIiwgImNyZWF0ZU51bGxQcm9ncmFtUmVwb3NpdG9yeSIsICJycGMiLCAiY3JlYXRlTnVsbFJwYyIsICJzZXJpYWxpemVyIiwgImNyZWF0ZU51bGxTZXJpYWxpemVyIiwgInRyYW5zYWN0aW9ucyIsICJjcmVhdGVOdWxsVHJhbnNhY3Rpb25GYWN0b3J5IiwgInVwbG9hZGVyIiwgImNyZWF0ZU51bGxVcGxvYWRlciIsICJkYXRlVGltZSIsICJ2YWx1ZSIsICJpc0RhdGVPYmplY3QiLCAiZGF0ZSIsICJEYXRlIiwgInRpbWVzdGFtcCIsICJNYXRoIiwgImZsb29yIiwgImdldFRpbWUiLCAiY3JlYXRlQmlnSW50IiwgImlzRGF0ZU9iamVjdCIsICJ2YWx1ZSIsICJPYmplY3QiLCAicHJvdG90eXBlIiwgInRvU3RyaW5nIiwgImNhbGwiLCAiZ2VuZXJhdGVSYW5kb21TdHJpbmciLCAiX19uYW1lIiwgImxlbmd0aCIsICJhbHBoYWJldCIsICJyZXN1bHQiLCAiYWxwaGFiZXRMZW5ndGgiLCAiaSIsICJjaGFyQXQiLCAiTWF0aCIsICJmbG9vciIsICJyYW5kb20iLCAiY3JlYXRlR2VuZXJpY0ZpbGUiLCAiX19uYW1lIiwgImNvbnRlbnQiLCAiZmlsZU5hbWUiLCAib3B0aW9ucyIsICJidWZmZXIiLCAidXRmOCIsICJzZXJpYWxpemUiLCAiZGlzcGxheU5hbWUiLCAidW5pcXVlTmFtZSIsICJnZW5lcmF0ZVJhbmRvbVN0cmluZyIsICJjb250ZW50VHlwZSIsICJleHRlbnNpb24iLCAiZ2V0RXh0ZW5zaW9uIiwgInRhZ3MiLCAiZ2V0RXh0ZW5zaW9uIiwgImZpbGVOYW1lIiwgImxhc3REb3RJbmRleCIsICJsYXN0SW5kZXhPZiIsICJzbGljZSIsICJyZXF1ZXN0IiwgIl9fbmFtZSIsICJIdHRwUmVxdWVzdEJ1aWxkZXIiLCAibWV0aG9kIiwgImRhdGEiLCAidW5kZWZpbmVkIiwgImhlYWRlcnMiLCAidXJsIiwgImNvbnN0cnVjdG9yIiwgImFzSnNvbiIsICJjb250ZW50VHlwZSIsICJhc011bHRpcGFydCIsICJhc0Zvcm0iLCAiYWNjZXB0IiwgIndpdGhIZWFkZXIiLCAidXNlckFnZW50IiwgIndpdGhUb2tlbiIsICJ0b2tlbiIsICJ0eXBlIiwgImtleSIsICJ2YWx1ZSIsICJ3aXRoSGVhZGVycyIsICJkb250Rm9sbG93UmVkaXJlY3RzIiwgImZvbGxvd1JlZGlyZWN0cyIsICJtYXhSZWRpcmVjdHMiLCAid2l0aG91dFRpbWVvdXQiLCAid2l0aFRpbWVvdXQiLCAidGltZW91dCIsICJ3aXRoQWJvcnRTaWduYWwiLCAic2lnbmFsIiwgIndpdGhFbmRwb2ludCIsICJ3aXRoUGFyYW1zIiwgInBhcmFtcyIsICJVUkwiLCAibmV3U2VhcmNoIiwgIlVSTFNlYXJjaFBhcmFtcyIsICJzZWFyY2giLCAic2VhcmNoUGFyYW1zIiwgImVudHJpZXMiLCAiZm9yRWFjaCIsICJ2YWwiLCAiYXBwZW5kIiwgInRvU3RyaW5nIiwgIndpdGhEYXRhIiwgImdldCIsICJwb3N0IiwgInB1dCIsICJwYXRjaCIsICJkZWxldGUiLCAiY3JlYXRlVW1pIiwgIl9fbmFtZSIsICJjcmVhdGVOdWxsQ29udGV4dCIsICJ1c2UiLCAicGx1Z2luIiwgImluc3RhbGwiLCAiUHJvZ3JhbUVycm9yIiwgIlVtaUVycm9yIiwgIl9fbmFtZSIsICJuYW1lIiwgImNvbnN0cnVjdG9yIiwgIm1lc3NhZ2UiLCAicHJvZ3JhbSIsICJjYXVzZSIsICJwdWJsaWNLZXkiLCAibG9ncyIsICJtYXAiLCAibG9nIiwgImpvaW4iLCAiY3JlYXRlSHR0cERvd25sb2FkZXIiLCAiY29udGV4dCIsICJkb3dubG9hZE9uZSIsICJfX25hbWUiLCAidXJpIiwgIm9wdGlvbnMiLCAicmVzcG9uc2UiLCAiaHR0cCIsICJzZW5kIiwgInJlcXVlc3QiLCAiZ2V0IiwgIndpdGhBYm9ydFNpZ25hbCIsICJzaWduYWwiLCAiY3JlYXRlR2VuZXJpY0ZpbGUiLCAiYm9keSIsICJkb3dubG9hZCIsICJ1cmlzIiwgIlByb21pc2UiLCAiYWxsIiwgIm1hcCIsICJkb3dubG9hZEpzb24iLCAiZGF0YSIsICJodHRwRG93bmxvYWRlciIsICJfX25hbWUiLCAiaW5zdGFsbCIsICJ1bWkiLCAiZG93bmxvYWRlciIsICJjcmVhdGVIdHRwRG93bmxvYWRlciIsICJmcm9tV2ViM0pzUHVibGljS2V5IiwgInB1YmxpY0tleSIsICJ0b0Jhc2U1OCIsICJ0b1dlYjNKc1B1YmxpY0tleSIsICJXZWIzSnNQdWJsaWNLZXkiLCAidG9XZWIzSnNJbnN0cnVjdGlvbiIsICJpbnN0cnVjdGlvbiIsICJXZWIzSnNUcmFuc2FjdGlvbkluc3RydWN0aW9uIiwgImtleXMiLCAibWFwIiwgImFjY291bnRNZXRhIiwgInB1YmtleSIsICJ0b1dlYjNKc1B1YmxpY0tleSIsICJwcm9ncmFtSWQiLCAiZGF0YSIsICJCdWZmZXIiLCAiZnJvbSIsICJmcm9tV2ViM0pzS2V5cGFpciIsICJrZXlwYWlyIiwgInB1YmxpY0tleSIsICJmcm9tV2ViM0pzUHVibGljS2V5IiwgInNlY3JldEtleSIsICJmcm9tV2ViM0pzTWVzc2FnZSIsICJtZXNzYWdlIiwgInZlcnNpb24iLCAiaGVhZGVyIiwgImFjY291bnRzIiwgInN0YXRpY0FjY291bnRLZXlzIiwgIm1hcCIsICJmcm9tV2ViM0pzUHVibGljS2V5IiwgImJsb2NraGFzaCIsICJyZWNlbnRCbG9ja2hhc2giLCAiaW5zdHJ1Y3Rpb25zIiwgImNvbXBpbGVkSW5zdHJ1Y3Rpb25zIiwgImluc3RydWN0aW9uIiwgInByb2dyYW1JbmRleCIsICJwcm9ncmFtSWRJbmRleCIsICJhY2NvdW50SW5kZXhlcyIsICJhY2NvdW50S2V5SW5kZXhlcyIsICJkYXRhIiwgIlVpbnQ4QXJyYXkiLCAiYWRkcmVzc0xvb2t1cFRhYmxlcyIsICJhZGRyZXNzVGFibGVMb29rdXBzIiwgImxvb2t1cCIsICJwdWJsaWNLZXkiLCAiYWNjb3VudEtleSIsICJ3cml0YWJsZUluZGV4ZXMiLCAicmVhZG9ubHlJbmRleGVzIiwgInRvV2ViM0pzTWVzc2FnZUZyb21JbnB1dCIsICJpbnB1dCIsICJ2ZXJzaW9uIiwgIldlYjNKc01lc3NhZ2VMZWdhY3kiLCAiY29tcGlsZSIsICJwYXllcktleSIsICJ0b1dlYjNKc1B1YmxpY0tleSIsICJwYXllciIsICJpbnN0cnVjdGlvbnMiLCAibWFwIiwgInRvV2ViM0pzSW5zdHJ1Y3Rpb24iLCAicmVjZW50QmxvY2toYXNoIiwgImJsb2NraGFzaCIsICJXZWIzSnNNZXNzYWdlVjAiLCAiYWRkcmVzc0xvb2t1cFRhYmxlQWNjb3VudHMiLCAiYWRkcmVzc0xvb2t1cFRhYmxlcyIsICJhY2NvdW50IiwgIldlYjNKc0FkZHJlc3NMb29rdXBUYWJsZUFjY291bnQiLCAia2V5IiwgInB1YmxpY0tleSIsICJzdGF0ZSIsICJhZGRyZXNzZXMiLCAiYXV0aG9yaXR5IiwgInVuZGVmaW5lZCIsICJkZWFjdGl2YXRpb25TbG90IiwgIkJpZ0ludCIsICJyZXBlYXQiLCAibGFzdEV4dGVuZGVkU2xvdCIsICJsYXN0RXh0ZW5kZWRTbG90U3RhcnRJbmRleCIsICJieXRlcyIsICJiIiwgImxlbmd0aHMiLCAiX19uYW1lIiwgImV4aXN0cyIsICJpbnN0YW5jZSIsICJjaGVja0ZpbmlzaGVkIiwgIl9fbmFtZSIsICJvdXRwdXQiLCAib3V0IiwgImJ5dGVzIiwgIm1pbiIsICJuYyIsICJjcnlwdG8iLCAidThhIiwgIl9fbmFtZSIsICJhIiwgImNyZWF0ZVZpZXciLCAiX19uYW1lIiwgImFyciIsICJpc0xFIiwgInV0ZjhUb0J5dGVzIiwgInN0ciIsICJfX25hbWUiLCAidG9CeXRlcyIsICJkYXRhIiwgInU4YSIsICJjb25jYXRCeXRlcyIsICJhcnJheXMiLCAiciIsICJzdW0iLCAicGFkIiwgImEiLCAiSGFzaCIsICJ0b1N0ciIsICJ3cmFwQ29uc3RydWN0b3IiLCAiaGFzaENvbnMiLCAiaGFzaEMiLCAiX19uYW1lIiwgIm1zZyIsICJ0b0J5dGVzIiwgInRtcCIsICJyYW5kb21CeXRlcyIsICJieXRlc0xlbmd0aCIsICJjcnlwdG8iLCAiX19uYW1lIiwgInNldEJpZ1VpbnQ2NCIsICJ2aWV3IiwgImJ5dGVPZmZzZXQiLCAidmFsdWUiLCAiaXNMRSIsICJfMzJuIiwgIl91MzJfbWF4IiwgIndoIiwgIndsIiwgImgiLCAibCIsICJfX25hbWUiLCAiU0hBMiIsICJIYXNoIiwgImJsb2NrTGVuIiwgIm91dHB1dExlbiIsICJwYWRPZmZzZXQiLCAiY3JlYXRlVmlldyIsICJkYXRhIiwgImV4aXN0cyIsICJidWZmZXIiLCAidG9CeXRlcyIsICJsZW4iLCAicG9zIiwgInRha2UiLCAiZGF0YVZpZXciLCAib3V0IiwgIm91dHB1dCIsICJpIiwgIm92aWV3IiwgIm91dExlbiIsICJzdGF0ZSIsICJyZXMiLCAidG8iLCAibGVuZ3RoIiwgImZpbmlzaGVkIiwgImRlc3Ryb3llZCIsICJVMzJfTUFTSzY0IiwgIl8zMm4iLCAiZnJvbUJpZyIsICJuIiwgImxlIiwgIl9fbmFtZSIsICJzcGxpdCIsICJsc3QiLCAiQWgiLCAiQWwiLCAiaSIsICJoIiwgImwiLCAidG9CaWciLCAic2hyU0giLCAiX2wiLCAicyIsICJzaHJTTCIsICJyb3RyU0giLCAicm90clNMIiwgInJvdHJCSCIsICJyb3RyQkwiLCAicm90cjMySCIsICJfaCIsICJyb3RyMzJMIiwgInJvdGxTSCIsICJyb3RsU0wiLCAicm90bEJIIiwgInJvdGxCTCIsICJhZGQiLCAiQmgiLCAiQmwiLCAiYWRkM0wiLCAiQ2wiLCAiYWRkM0giLCAibG93IiwgIkNoIiwgImFkZDRMIiwgIkRsIiwgImFkZDRIIiwgIkRoIiwgImFkZDVMIiwgIkVsIiwgImFkZDVIIiwgIkVoIiwgInU2NCIsICJmcm9tQmlnIiwgInNwbGl0IiwgInRvQmlnIiwgInNoclNIIiwgInNoclNMIiwgInJvdHJTSCIsICJyb3RyU0wiLCAicm90ckJIIiwgInJvdHJCTCIsICJyb3RyMzJIIiwgInJvdHIzMkwiLCAicm90bFNIIiwgInJvdGxTTCIsICJyb3RsQkgiLCAicm90bEJMIiwgImFkZCIsICJhZGQzTCIsICJhZGQzSCIsICJhZGQ0TCIsICJhZGQ0SCIsICJhZGQ1SCIsICJhZGQ1TCIsICJ1NjRfZGVmYXVsdCIsICJTSEE1MTJfS2giLCAiU0hBNTEyX0tsIiwgInU2NF9kZWZhdWx0IiwgIm4iLCAiU0hBNTEyX1dfSCIsICJTSEE1MTJfV19MIiwgIlNIQTUxMiIsICJTSEEyIiwgIl9fbmFtZSIsICJBaCIsICJBbCIsICJCaCIsICJCbCIsICJDaCIsICJDbCIsICJEaCIsICJEbCIsICJFaCIsICJFbCIsICJGaCIsICJGbCIsICJHaCIsICJHbCIsICJIaCIsICJIbCIsICJ2aWV3IiwgIm9mZnNldCIsICJpIiwgIlcxNWgiLCAiVzE1bCIsICJzMGgiLCAiczBsIiwgIlcyaCIsICJXMmwiLCAiczFoIiwgInMxbCIsICJTVU1sIiwgIlNVTWgiLCAic2lnbWExaCIsICJzaWdtYTFsIiwgIkNISWgiLCAiQ0hJbCIsICJUMWxsIiwgIlQxaCIsICJUMWwiLCAic2lnbWEwaCIsICJzaWdtYTBsIiwgIk1BSmgiLCAiTUFKbCIsICJBbGwiLCAic2hhNTEyIiwgIndyYXBDb25zdHJ1Y3RvciIsICJTSEE1MTIiLCAiXzBuIiwgIl8xbiIsICJfMm4iLCAidThhIiwgIl9fbmFtZSIsICJhIiwgImhleGVzIiwgIl8iLCAiaSIsICJieXRlc1RvSGV4IiwgImJ5dGVzIiwgImhleCIsICJoZXhUb051bWJlciIsICJoZXgiLCAiX19uYW1lIiwgImhleFRvQnl0ZXMiLCAibGVuIiwgImFycmF5IiwgImoiLCAiaGV4Qnl0ZSIsICJieXRlIiwgImJ5dGVzVG9OdW1iZXJCRSIsICJieXRlcyIsICJieXRlc1RvSGV4IiwgImJ5dGVzVG9OdW1iZXJMRSIsICJ1OGEiLCAibnVtYmVyVG9CeXRlc0JFIiwgIm4iLCAibnVtYmVyVG9CeXRlc0xFIiwgImVuc3VyZUJ5dGVzIiwgInRpdGxlIiwgImhleCIsICJleHBlY3RlZExlbmd0aCIsICJyZXMiLCAiaGV4VG9CeXRlcyIsICJlIiwgInU4YSIsICJsZW4iLCAiX19uYW1lIiwgImNvbmNhdEJ5dGVzIiwgImFycmF5cyIsICJyIiwgInN1bSIsICJwYWQiLCAiYSIsICJiaXRNYXNrIiwgIl9fbmFtZSIsICJuIiwgIl8ybiIsICJfMW4iLCAidmFsaWRhdG9yRm5zIiwgInZhbCIsICJvYmplY3QiLCAidmFsaWRhdGVPYmplY3QiLCAidmFsaWRhdG9ycyIsICJvcHRWYWxpZGF0b3JzIiwgImNoZWNrRmllbGQiLCAiX19uYW1lIiwgImZpZWxkTmFtZSIsICJ0eXBlIiwgImlzT3B0aW9uYWwiLCAiY2hlY2tWYWwiLCAiXzBuIiwgIl8xbiIsICJfMm4iLCAiXzNuIiwgIl80biIsICJfNW4iLCAiXzhuIiwgIl85biIsICJfMTZuIiwgIm1vZCIsICJhIiwgImIiLCAicmVzdWx0IiwgIl9fbmFtZSIsICJwb3ciLCAibnVtIiwgInBvd2VyIiwgIm1vZHVsbyIsICJyZXMiLCAicG93MiIsICJ4IiwgImludmVydCIsICJudW1iZXIiLCAieSIsICJ1IiwgInYiLCAicSIsICJyIiwgIm0iLCAibiIsICJ0b25lbGxpU2hhbmtzIiwgIlAiLCAibGVnZW5kcmVDIiwgIlEiLCAiUyIsICJaIiwgInAxZGl2NCIsICJGcCIsICJyb290IiwgIlExZGl2MiIsICJnIiwgInQyIiwgImdlIiwgIkZwU3FydCIsICJjMSIsICJuMiIsICJudiIsICJpIiwgImlzTmVnYXRpdmVMRSIsICJGSUVMRF9GSUVMRFMiLCAidmFsaWRhdGVGaWVsZCIsICJmaWVsZCIsICJpbml0aWFsIiwgIm9wdHMiLCAibWFwIiwgInZhbCIsICJ2YWxpZGF0ZU9iamVjdCIsICJGcFBvdyIsICJmIiwgInAiLCAiZCIsICJGcEludmVydEJhdGNoIiwgIm51bXMiLCAidG1wIiwgImxhc3RNdWx0aXBsaWVkIiwgImFjYyIsICJpbnZlcnRlZCIsICJuTGVuZ3RoIiwgIm4iLCAibkJpdExlbmd0aCIsICJfbkJpdExlbmd0aCIsICJuQnl0ZUxlbmd0aCIsICJfX25hbWUiLCAiRmllbGQiLCAiT1JERVIiLCAiYml0TGVuIiwgImlzTEUiLCAicmVkZWYiLCAiXzBuIiwgIkJJVFMiLCAiQllURVMiLCAic3FydFAiLCAiRnBTcXJ0IiwgImYiLCAiYml0TWFzayIsICJfMW4iLCAibnVtIiwgIm1vZCIsICJsaHMiLCAicmhzIiwgInBvd2VyIiwgIkZwUG93IiwgImludmVydCIsICJsc3QiLCAiRnBJbnZlcnRCYXRjaCIsICJhIiwgImIiLCAibnVtYmVyVG9CeXRlc0xFIiwgIm51bWJlclRvQnl0ZXNCRSIsICJieXRlcyIsICJieXRlc1RvTnVtYmVyTEUiLCAiYnl0ZXNUb051bWJlckJFIiwgIkZwU3FydEV2ZW4iLCAiRnAiLCAiZWxtIiwgInJvb3QiLCAiX19uYW1lIiwgIl8wbiIsICJfMW4iLCAid05BRiIsICJjIiwgImJpdHMiLCAiY29uc3RUaW1lTmVnYXRlIiwgIl9fbmFtZSIsICJjb25kaXRpb24iLCAiaXRlbSIsICJuZWciLCAib3B0cyIsICJXIiwgIndpbmRvd3MiLCAid2luZG93U2l6ZSIsICJlbG0iLCAibiIsICJwIiwgImQiLCAicG9pbnRzIiwgImJhc2UiLCAid2luZG93IiwgImkiLCAicHJlY29tcHV0ZXMiLCAiZiIsICJtYXNrIiwgIm1heE51bWJlciIsICJzaGlmdEJ5IiwgIm9mZnNldCIsICJ3Yml0cyIsICJvZmZzZXQxIiwgIm9mZnNldDIiLCAiY29uZDEiLCAiY29uZDIiLCAiUCIsICJwcmVjb21wdXRlc01hcCIsICJ0cmFuc2Zvcm0iLCAiY29tcCIsICJ2YWxpZGF0ZUJhc2ljIiwgImN1cnZlIiwgInZhbGlkYXRlRmllbGQiLCAidmFsaWRhdGVPYmplY3QiLCAibkxlbmd0aCIsICJfMG4iLCAiXzFuIiwgIl8ybiIsICJfOG4iLCAiVkVSSUZZX0RFRkFVTFQiLCAidmFsaWRhdGVPcHRzIiwgImN1cnZlIiwgIm9wdHMiLCAidmFsaWRhdGVCYXNpYyIsICJ2YWxpZGF0ZU9iamVjdCIsICJfX25hbWUiLCAidHdpc3RlZEVkd2FyZHMiLCAiY3VydmVEZWYiLCAiQ1VSVkUiLCAiRnAiLCAiQ1VSVkVfT1JERVIiLCAicHJlaGFzaCIsICJjSGFzaCIsICJyYW5kb21CeXRlcyIsICJuQnl0ZUxlbmd0aCIsICJjb2ZhY3RvciIsICJNQVNLIiwgIm1vZFAiLCAidXZSYXRpbyIsICJ1IiwgInYiLCAiYWRqdXN0U2NhbGFyQnl0ZXMiLCAiYnl0ZXMiLCAiZG9tYWluIiwgImRhdGEiLCAiY3R4IiwgInBoZmxhZyIsICJpbkJpZyIsICJuIiwgImluUmFuZ2UiLCAibWF4IiwgImluME1hc2tSYW5nZSIsICJhc3NlcnRJblJhbmdlIiwgImFzc2VydEdFMCIsICJwb2ludFByZWNvbXB1dGVzIiwgImlzUG9pbnQiLCAib3RoZXIiLCAiUG9pbnQiLCAiZXgiLCAiZXkiLCAiZXoiLCAiZXQiLCAicCIsICJ4IiwgInkiLCAicG9pbnRzIiwgInRvSW52IiwgImkiLCAid2luZG93U2l6ZSIsICJhIiwgImQiLCAiWCIsICJZIiwgIloiLCAiVCIsICJYMiIsICJZMiIsICJaMiIsICJaNCIsICJhWDIiLCAibGVmdCIsICJyaWdodCIsICJYWSIsICJaVCIsICJYMSIsICJZMSIsICJaMSIsICJYMVoyIiwgIlgyWjEiLCAiWTFaMiIsICJZMloxIiwgIkEiLCAiQiIsICJDIiwgIkQiLCAieDF5MSIsICJFIiwgIkciLCAiRiIsICJIIiwgIlgzIiwgIlkzIiwgIlQzIiwgIlozIiwgIlQxIiwgIlQyIiwgInduYWYiLCAic2NhbGFyIiwgImYiLCAiSSIsICJpeiIsICJ6IiwgImlzMCIsICJheCIsICJheSIsICJ6eiIsICJoZXgiLCAiemlwMjE1IiwgImxlbiIsICJlbnN1cmVCeXRlcyIsICJub3JtZWQiLCAibGFzdEJ5dGUiLCAiYnl0ZXNUb051bWJlckxFIiwgInkyIiwgImlzVmFsaWQiLCAiaXNYT2RkIiwgImlzTGFzdEJ5dGVPZGQiLCAicHJpdktleSIsICJnZXRFeHRlbmRlZFB1YmxpY0tleSIsICJudW1iZXJUb0J5dGVzTEUiLCAiYnl0ZXNUb0hleCIsICJ3TkFGIiwgIm1vZE4iLCAibW9kIiwgIm1vZE5fTEUiLCAiaGFzaCIsICJrZXkiLCAiaGFzaGVkIiwgImhlYWQiLCAicHJlZml4IiwgInBvaW50IiwgInBvaW50Qnl0ZXMiLCAiZ2V0UHVibGljS2V5IiwgImhhc2hEb21haW5Ub1NjYWxhciIsICJjb250ZXh0IiwgIm1zZ3MiLCAibXNnIiwgImNvbmNhdEJ5dGVzIiwgInNpZ24iLCAib3B0aW9ucyIsICJyIiwgIlIiLCAiayIsICJzIiwgInJlcyIsICJ2ZXJpZnlPcHRzIiwgInZlcmlmeSIsICJzaWciLCAicHVibGljS2V5IiwgIlNCIiwgIkVEMjU1MTlfUCIsICJFRDI1NTE5X1NRUlRfTTEiLCAiXzBuIiwgIl8xbiIsICJfMm4iLCAiXzVuIiwgIl8xMG4iLCAiXzIwbiIsICJfNDBuIiwgIl84MG4iLCAiZWQyNTUxOV9wb3dfMl8yNTJfMyIsICJ4IiwgIlAiLCAiYjIiLCAiYjQiLCAicG93MiIsICJiNSIsICJiMTAiLCAiYjIwIiwgImI0MCIsICJiODAiLCAiYjE2MCIsICJiMjQwIiwgImIyNTAiLCAiX19uYW1lIiwgImFkanVzdFNjYWxhckJ5dGVzIiwgImJ5dGVzIiwgInV2UmF0aW8iLCAidSIsICJ2IiwgInYzIiwgIm1vZCIsICJ2NyIsICJwb3ciLCAidngyIiwgInJvb3QxIiwgInJvb3QyIiwgInVzZVJvb3QxIiwgInVzZVJvb3QyIiwgIm5vUm9vdCIsICJpc05lZ2F0aXZlTEUiLCAiRnAiLCAiRmllbGQiLCAiRUQyNTUxOV9QIiwgImVkMjU1MTlEZWZhdWx0cyIsICJzaGE1MTIiLCAicmFuZG9tQnl0ZXMiLCAiYWRqdXN0U2NhbGFyQnl0ZXMiLCAidXZSYXRpbyIsICJlZDI1NTE5IiwgInR3aXN0ZWRFZHdhcmRzIiwgImVkMjU1MTlfZG9tYWluIiwgImRhdGEiLCAiY3R4IiwgInBoZmxhZyIsICJjb25jYXRCeXRlcyIsICJ1dGY4VG9CeXRlcyIsICJfX25hbWUiLCAiZWQyNTUxOWN0eCIsICJlZDI1NTE5cGgiLCAiRUxMMl9DMSIsICJGcCIsICJFTEwyX0MyIiwgIl8ybiIsICJFTEwyX0MzIiwgIkVMTDJfQzQiLCAiRUxMMl9KIiwgIkVMTDJfQzFfRURXQVJEUyIsICJGcFNxcnRFdmVuIiwgIkZwIiwgIlNRUlRfQURfTUlOVVNfT05FIiwgIklOVlNRUlRfQV9NSU5VU19EIiwgIk9ORV9NSU5VU19EX1NRIiwgIkRfTUlOVVNfT05FX1NRIiwgIk1BWF8yNTVCIiwgImNyZWF0ZVdlYjNKc0VkZHNhIiwgImdlbmVyYXRlS2V5cGFpciIsICJfX25hbWUiLCAiZnJvbVdlYjNKc0tleXBhaXIiLCAiV2ViM0pzS2V5cGFpciIsICJnZW5lcmF0ZSIsICJjcmVhdGVLZXlwYWlyRnJvbVNlY3JldEtleSIsICJzZWNyZXRLZXkiLCAiZnJvbVNlY3JldEtleSIsICJjcmVhdGVLZXlwYWlyRnJvbVNlZWQiLCAic2VlZCIsICJmcm9tU2VlZCIsICJpc09uQ3VydmUiLCAiaW5wdXQiLCAiV2ViM0pzUHVibGljS2V5IiwgInRvV2ViM0pzUHVibGljS2V5IiwgInB1YmxpY0tleSIsICJmaW5kUGRhIiwgInByb2dyYW1JZCIsICJzZWVkcyIsICJrZXkiLCAiYnVtcCIsICJmaW5kUHJvZ3JhbUFkZHJlc3NTeW5jIiwgImZyb21XZWIzSnNQdWJsaWNLZXkiLCAic2lnbiIsICJtZXNzYWdlIiwgImtleXBhaXIiLCAiZWQyNTUxOSIsICJzbGljZSIsICJ2ZXJpZnkiLCAic2lnbmF0dXJlIiwgInB1YmxpY0tleUJ5dGVzIiwgIndlYjNKc0VkZHNhIiwgIl9fbmFtZSIsICJpbnN0YWxsIiwgInVtaSIsICJlZGRzYSIsICJjcmVhdGVXZWIzSnNFZGRzYSIsICJjcmVhdGVGZXRjaEh0dHAiLCAic2VuZCIsICJyZXF1ZXN0IiwgImhlYWRlcnMiLCAiT2JqZWN0IiwgImVudHJpZXMiLCAicmVkdWNlIiwgImFjYyIsICJuYW1lIiwgInRvTG93ZXJDYXNlIiwgIkFycmF5IiwgImlzQXJyYXkiLCAiam9pbiIsICJpc0pzb25SZXF1ZXN0IiwgImluY2x1ZGVzIiwgImJvZHkiLCAiZGF0YSIsICJKU09OIiwgInN0cmluZ2lmeSIsICJyZXF1ZXN0SW5pdCIsICJtZXRob2QiLCAiZm9sbG93IiwgIm1heFJlZGlyZWN0cyIsICJzaWduYWwiLCAidGltZW91dCIsICJyZXNwb25zZSIsICJmZXRjaCIsICJ1cmwiLCAiaXNKc29uUmVzcG9uc2UiLCAiZ2V0IiwgImJvZHlBc1RleHQiLCAidGV4dCIsICJwYXJzZSIsICJ1bmRlZmluZWQiLCAib2siLCAic3RhdHVzIiwgInN0YXR1c1RleHQiLCAiZnJvbUVudHJpZXMiLCAiZmV0Y2hIdHRwIiwgIl9fbmFtZSIsICJpbnN0YWxsIiwgInVtaSIsICJodHRwIiwgImNyZWF0ZUZldGNoSHR0cCIsICJQcm9ncmFtTm90UmVjb2duaXplZEVycm9yIiwgIlNka0Vycm9yIiwgIl9fbmFtZSIsICJuYW1lIiwgImNvbnN0cnVjdG9yIiwgImlkZW50aWZpZXIiLCAiY2x1c3RlciIsICJpc05hbWUiLCAiaXNQdWJsaWNLZXkiLCAidG9TdHJpbmciLCAiY2x1c3RlclN0cmluZyIsICJtZXNzYWdlIiwgIlByb2dyYW1FcnJvck5vdFJlY29nbml6ZWRFcnJvciIsICJQcm9ncmFtRXJyb3IiLCAicHJvZ3JhbSIsICJjYXVzZSIsICJvZkNvZGUiLCAiY29kZSIsICJwdWJsaWNLZXkiLCAiY3JlYXRlRGVmYXVsdFByb2dyYW1SZXBvc2l0b3J5IiwgImNvbnRleHQiLCAiaW5pdGlhbFByb2dyYW1zIiwgImluaXRpYWxCaW5kaW5ncyIsICJwcm9ncmFtcyIsICJiaW5kaW5ncyIsICJoYXMiLCAiX19uYW1lIiwgImlkZW50aWZpZXIiLCAiY2x1c3RlckZpbHRlciIsICJhbGwiLCAicmVzb2x2ZWRJZGVudGlmaWVyIiwgInJlc29sdmVCaW5kaW5nIiwgImlzUHVibGljS2V5IiwgInNvbWUiLCAicCIsICJwdWJsaWNLZXkiLCAibmFtZSIsICJnZXQiLCAiY2x1c3RlciIsICJyZXNvbHZlQ2x1c3RlckZpbHRlciIsICJwcm9ncmFtIiwgImZpbmQiLCAiUHJvZ3JhbU5vdFJlY29nbml6ZWRFcnJvciIsICJnZXRQdWJsaWNLZXkiLCAiZmFsbGJhY2siLCAiZXJyb3IiLCAidW5kZWZpbmVkIiwgImZpbHRlciIsICJpc09uQ2x1c3RlciIsICJhZGQiLCAib3ZlcnJpZGVzIiwgInVuc2hpZnQiLCAiYmluZCIsICJhYnN0cmFjdCIsICJjb25jcmV0ZSIsICJ1bmJpbmQiLCAiY2xvbmUiLCAicmVzb2x2ZUVycm9yIiwgInRyYW5zYWN0aW9uIiwgIkFycmF5IiwgImlzQXJyYXkiLCAibG9ncyIsICJsZW5ndGgiLCAiam9pbiIsICJpbnN0cnVjdGlvblJlZ2V4IiwgImluc3RydWN0aW9uIiwgIm1lc3NhZ2UiLCAibWF0Y2giLCAiZXJyb3JDb2RlUmVnZXgiLCAiZXJyb3JDb2RlU3RyaW5nIiwgImVycm9yQ29kZSIsICJwYXJzZUludCIsICJpbnN0cnVjdGlvbk51bWJlciIsICJwcm9ncmFtSW5kZXgiLCAiaW5zdHJ1Y3Rpb25zIiwgInByb2dyYW1JZCIsICJhY2NvdW50cyIsICJnZXRFcnJvckZyb21Db2RlIiwgIlByb2dyYW1FcnJvck5vdFJlY29nbml6ZWRFcnJvciIsICJycGMiLCAiZ2V0Q2x1c3RlciIsICJzdGFjayIsICJzdGFja1dpdGhJZGVudGlmaWVyIiwgImluY2x1ZGVzIiwgIkVycm9yIiwgImRlZmF1bHRQcm9ncmFtUmVwb3NpdG9yeSIsICJfX25hbWUiLCAiaW5zdGFsbCIsICJ1bWkiLCAicHJvZ3JhbXMiLCAiY3JlYXRlRGVmYXVsdFByb2dyYW1SZXBvc2l0b3J5IiwgImNyZWF0ZVdlYjNKc1JwYyIsICJjb250ZXh0IiwgImVuZHBvaW50IiwgInJwY09wdGlvbnMiLCAiY2x1c3RlciIsICJyZXNvbHZlQ2x1c3RlckZyb21FbmRwb2ludCIsICJjb25uZWN0aW9uIiwgImdldENvbm5lY3Rpb24iLCAiX19uYW1lIiwgIldlYjNKc0Nvbm5lY3Rpb24iLCAiZ2V0QWNjb3VudCIsICJwdWJsaWNLZXkiLCAib3B0aW9ucyIsICJhY2NvdW50IiwgImdldEFjY291bnRJbmZvIiwgInRvV2ViM0pzUHVibGljS2V5IiwgInBhcnNlTWF5YmVBY2NvdW50IiwgImdldEFjY291bnRzIiwgInB1YmxpY0tleXMiLCAiZ2V0TXVsdGlwbGVBY2NvdW50c0luZm8iLCAibWFwIiwgImluZGV4IiwgImdldFByb2dyYW1BY2NvdW50cyIsICJwcm9ncmFtSWQiLCAiZmlsdGVycyIsICJmaWx0ZXIiLCAicGFyc2VEYXRhRmlsdGVyIiwgInB1YmtleSIsICJwYXJzZUFjY291bnQiLCAiZnJvbVdlYjNKc1B1YmxpY0tleSIsICJnZXRCbG9ja1RpbWUiLCAic2xvdCIsICJfb3B0aW9ucyIsICJibG9ja1RpbWUiLCAiZGF0ZVRpbWUiLCAiZ2V0QmFsYW5jZSIsICJiYWxhbmNlSW5MYW1wb3J0cyIsICJsYW1wb3J0cyIsICJnZXRSZW50IiwgImJ5dGVzIiwgInJlbnRGb3IiLCAiZ2V0TWluaW11bUJhbGFuY2VGb3JSZW50RXhlbXB0aW9uIiwgImNvbW1pdG1lbnQiLCAiaW5jbHVkZXNIZWFkZXJCeXRlcyIsICJoZWFkZXJSZW50IiwgInJlbnRQZXJCeXRlIiwgIkJpZ0ludCIsICJBQ0NPVU5UX0hFQURFUl9TSVpFIiwgImdldExhdGVzdEJsb2NraGFzaCIsICJnZXRUcmFuc2FjdGlvbiIsICJzaWduYXR1cmUiLCAicmVzcG9uc2UiLCAiYmFzZTU4IiwgImRlc2VyaWFsaXplIiwgIm1heFN1cHBvcnRlZFRyYW5zYWN0aW9uVmVyc2lvbiIsICJtZXRhIiwgIkVycm9yIiwgInRyYW5zYWN0aW9uIiwgIm1lc3NhZ2UiLCAiZnJvbVdlYjNKc01lc3NhZ2UiLCAibWFwUHVibGljS2V5IiwgImtleSIsICJXZWIzSnNQdWJsaWNLZXkiLCAibWFwVG9rZW5CYWxhbmNlIiwgInRva2VuQmFsYW5jZSIsICJhY2NvdW50SW5kZXgiLCAiYW1vdW50IiwgImNyZWF0ZUFtb3VudCIsICJ1aVRva2VuQW1vdW50IiwgImRlY2ltYWxzIiwgIm1pbnQiLCAib3duZXIiLCAic2VyaWFsaXplZE1lc3NhZ2UiLCAidHJhbnNhY3Rpb25zIiwgInNlcmlhbGl6ZU1lc3NhZ2UiLCAic2lnbmF0dXJlcyIsICJzZXJpYWxpemUiLCAiZmVlIiwgImxvZ3MiLCAibG9nTWVzc2FnZXMiLCAicHJlQmFsYW5jZXMiLCAicG9zdEJhbGFuY2VzIiwgInByZVRva2VuQmFsYW5jZXMiLCAicG9zdFRva2VuQmFsYW5jZXMiLCAiaW5uZXJJbnN0cnVjdGlvbnMiLCAiaW5uZXIiLCAiaW5zdHJ1Y3Rpb25zIiwgImluc3RydWN0aW9uIiwgInByb2dyYW1JbmRleCIsICJwcm9ncmFtSWRJbmRleCIsICJhY2NvdW50SW5kZXhlcyIsICJhY2NvdW50cyIsICJkYXRhIiwgImxvYWRlZEFkZHJlc3NlcyIsICJ3cml0YWJsZSIsICJyZWFkb25seSIsICJjb21wdXRlVW5pdHNDb25zdW1lZCIsICJlcnIiLCAiZ2V0U2lnbmF0dXJlU3RhdHVzZXMiLCAic2VhcmNoVHJhbnNhY3Rpb25IaXN0b3J5IiwgInZhbHVlIiwgInN0YXR1cyIsICJjb25maXJtYXRpb25zIiwgImVycm9yIiwgImNvbmZpcm1hdGlvblN0YXR1cyIsICJhY2NvdW50RXhpc3RzIiwgImlzWmVyb0Ftb3VudCIsICJhaXJkcm9wIiwgInJlcXVlc3RBaXJkcm9wIiwgIk51bWJlciIsICJiYXNpc1BvaW50cyIsICJzdHJhdGVneSIsICJjb25maXJtVHJhbnNhY3Rpb24iLCAidHlwZSIsICJjYWxsIiwgIm1ldGhvZCIsICJwYXJhbXMiLCAiY2xpZW50IiwgIl9ycGNDbGllbnQiLCAicmVzb2x2ZWRQYXJhbXMiLCAicmVzb2x2ZUNhbGxQYXJhbXMiLCAiZXh0cmEiLCAiUHJvbWlzZSIsICJyZXNvbHZlIiwgInJlamVjdCIsICJjYWxsYmFjayIsICJyZXN1bHQiLCAiaWQiLCAicmVxdWVzdCIsICJzZW5kVHJhbnNhY3Rpb24iLCAic2VuZFJhd1RyYW5zYWN0aW9uIiwgInJlc29sdmVkRXJyb3IiLCAicHJvZ3JhbXMiLCAicmVzb2x2ZUVycm9yIiwgInBhcnNlQ29uZmlybVN0cmF0ZWd5IiwgImdldEVuZHBvaW50IiwgInJwY0VuZHBvaW50IiwgImdldENsdXN0ZXIiLCAiZ2V0U2xvdCIsICJleGVjdXRhYmxlIiwgInJlbnRFcG9jaCIsICJVaW50OEFycmF5IiwgImV4aXN0cyIsICJyZXN0IiwgIm1lbWNtcCIsICJub25jZUFjY291bnRQdWJrZXkiLCAiYXJncyIsICJwdXNoIiwgIndlYjNKc1JwYyIsICJfX25hbWUiLCAiZW5kcG9pbnQiLCAicnBjT3B0aW9ucyIsICJpbnN0YWxsIiwgInVtaSIsICJycGMiLCAiY3JlYXRlV2ViM0pzUnBjIiwgImNyZWF0ZUNodW5rR2V0QWNjb3VudHNScGMiLCAiX19uYW1lIiwgInJwYyIsICJjaHVua1NpemUiLCAiZ2V0QWNjb3VudHMiLCAicHVibGljS2V5cyIsICJvcHRpb25zIiwgInByb21pc2VzIiwgImNodW5rIiwgIm1hcCIsICJQcm9taXNlIiwgImFsbCIsICJmbGF0IiwgImNodW5rR2V0QWNjb3VudHNScGMiLCAiX19uYW1lIiwgImNodW5rU2l6ZSIsICJpbnN0YWxsIiwgInVtaSIsICJycGMiLCAiY3JlYXRlQ2h1bmtHZXRBY2NvdW50c1JwYyIsICJjcmVhdGVEYXRhVmlld1NlcmlhbGl6ZXIiLCAib3B0aW9ucyIsICJ0dXBsZSIsICJhcnJheSIsICJtYXAiLCAic2V0IiwgIm9wdGlvbiIsICJudWxsYWJsZSIsICJzdHJ1Y3QiLCAiZW51bSIsICJzY2FsYXJFbnVtIiwgImRhdGFFbnVtIiwgInN0cmluZyIsICJib29sIiwgInVuaXQiLCAidTgiLCAidTE2IiwgInUzMiIsICJ1NjQiLCAidTEyOCIsICJpOCIsICJpMTYiLCAiaTMyIiwgImk2NCIsICJpMTI4IiwgImYzMiIsICJmNjQiLCAiYnl0ZXMiLCAicHVibGljS2V5IiwgImRhdGFWaWV3U2VyaWFsaXplciIsICJfX25hbWUiLCAib3B0aW9ucyIsICJpbnN0YWxsIiwgInVtaSIsICJzZXJpYWxpemVyIiwgImNyZWF0ZURhdGFWaWV3U2VyaWFsaXplciIsICJUUkFOU0FDVElPTl9WRVJTSU9OX0ZMQUciLCAiVFJBTlNBQ1RJT05fVkVSU0lPTl9NQVNLIiwgImNyZWF0ZVdlYjNKc1RyYW5zYWN0aW9uRmFjdG9yeSIsICJjcmVhdGUiLCAiaW5wdXQiLCAid2ViM0pzTWVzc2FnZSIsICJ0b1dlYjNKc01lc3NhZ2VGcm9tSW5wdXQiLCAibWVzc2FnZSIsICJmcm9tV2ViM0pzTWVzc2FnZSIsICJ3ZWIzSnNUcmFuc2FjdGlvbiIsICJXZWIzSnNUcmFuc2FjdGlvbiIsICJzaWduYXR1cmVzIiwgInNlcmlhbGl6ZWRNZXNzYWdlIiwgInNlcmlhbGl6ZU1lc3NhZ2UiLCAic2VyaWFsaXplIiwgInRyYW5zYWN0aW9uIiwgImdldFRyYW5zYWN0aW9uU2VyaWFsaXplciIsICJkZXNlcmlhbGl6ZSIsICJzZXJpYWxpemVkVHJhbnNhY3Rpb24iLCAiZ2V0VHJhbnNhY3Rpb25NZXNzYWdlU2VyaWFsaXplciIsICJkZXNlcmlhbGl6ZU1lc3NhZ2UiLCAiX19uYW1lIiwgIm1hcFNlcmlhbGl6ZXIiLCAic3RydWN0IiwgImFycmF5IiwgImJ5dGVzIiwgInNpemUiLCAic2hvcnRVMTYiLCAidmFsdWUiLCAiZGVzY3JpcHRpb24iLCAiZml4ZWRTaXplIiwgIm1heFNpemUiLCAiZ2V0VHJhbnNhY3Rpb25NZXNzYWdlU2VyaWFsaXplckZvclZlcnNpb24iLCAidmVyc2lvbiIsICJvZmZzZXQiLCAiZ2V0VHJhbnNhY3Rpb25WZXJzaW9uU2VyaWFsaXplciIsICJnZXRUcmFuc2FjdGlvbk1lc3NhZ2VIZWFkZXJTZXJpYWxpemVyIiwgInB1YmxpY0tleSIsICJzdHJpbmciLCAiZW5jb2RpbmciLCAiYmFzZTU4IiwgImdldENvbXBpbGVkSW5zdHJ1Y3Rpb25TZXJpYWxpemVyIiwgImdldENvbXBpbGVkQWRkcmVzc0xvb2t1cFRhYmxlU2VyaWFsaXplciIsICJVaW50OEFycmF5IiwgInNsaWNlIiwgImxlbmd0aCIsICJTZGtFcnJvciIsICJ1OCIsICJ3ZWIzSnNUcmFuc2FjdGlvbkZhY3RvcnkiLCAiX19uYW1lIiwgImluc3RhbGwiLCAidW1pIiwgInRyYW5zYWN0aW9ucyIsICJjcmVhdGVXZWIzSnNUcmFuc2FjdGlvbkZhY3RvcnkiLCAiZGVmYXVsdFBsdWdpbnMiLCAiX19uYW1lIiwgImVuZHBvaW50IiwgInJwY09wdGlvbnMiLCAiaW5zdGFsbCIsICJ1bWkiLCAidXNlIiwgImRhdGFWaWV3U2VyaWFsaXplciIsICJkZWZhdWx0UHJvZ3JhbVJlcG9zaXRvcnkiLCAiZmV0Y2hIdHRwIiwgImh0dHBEb3dubG9hZGVyIiwgIndlYjNKc0VkZHNhIiwgIndlYjNKc1JwYyIsICJjaHVua0dldEFjY291bnRzUnBjIiwgImdldEFjY291bnRzQ2h1bmtTaXplIiwgIndlYjNKc1RyYW5zYWN0aW9uRmFjdG9yeSIsICJjcmVhdGVVbWkiLCAiX19uYW1lIiwgImVuZHBvaW50IiwgInJwY09wdGlvbnMiLCAiYmFzZUNyZWF0ZVVtaSIsICJ1c2UiLCAiZGVmYXVsdFBsdWdpbnMiLCAiaW1wb3J0X21wbF90b2tlbl9tZXRhZGF0YSIsICJuZnRPd25lckFkZHJlc3MiLCAiX19uYW1lIiwgInNvbGFuYVV0aWxzIiwgInVzZXJXYWxsZXRBZGRyZXNzIiwgInB1YmxpY0tleSIsICJ1bWkiLCAiY3JlYXRlVW1pIiwgImZyb21XZWIzSnNQdWJsaWNLZXkiLCAibmZ0Q29sbGVjdGlvbk93bmVyQWRkcmVzcyIsICJjb2xsZWN0aW9uQWRkcmVzcyIsICJuZnQiLCAiY29sbGVjdGlvbiIsICJjaGVja093bmVyTkZUcyIsICJuZnRBZGRyZXNzZXMiLCAib3duZXJORlRzIiwgIm5vUGVybWlzc2lvbnMiLCAibmZ0QWRkcmVzcyIsICJyZXN1bHQiLCAiU29sYW5hVXRpbHMiLCAiX19uYW1lIiwgIm9wdGlvbnMiLCAidXNlcldhbGxldEFkZHJlc3MiLCAibmZ0T3duZXJBZGRyZXNzIiwgImNvbGxlY3Rpb25BZGRyZXNzIiwgIm5mdENvbGxlY3Rpb25Pd25lckFkZHJlc3MiLCAibmZ0QWRkcmVzc2VzIiwgImNoZWNrT3duZXJORlRzIiwgImxhbXBvcnRzIiwgImltcG9ydF93ZWIzIiwgInN0YWtlQWNjb3VudEJhbGFuY2UiLCAiX19uYW1lIiwgInNvbGFuYVV0aWxzIiwgInN0YWtlQWNjb3VudEFkZHJlc3MiLCAic3Rha2VBY2NvdW50UHVibGljS2V5IiwgImFjY291bnRJbmZvIiwgImltcG9ydF93ZWIzIiwgImxhc3RTdGFraW5nUmV3YXJkIiwgIl9fbmFtZSIsICJzb2xhbmFVdGlscyIsICJzdGFrZUFjY291bnRBZGRyZXNzIiwgImN1cnJlbnRFcG9jaCIsICJzdGFrZUFjY291bnRQdWJsaWNLZXkiLCAicmV3YXJkcyJdCn0K diff --git a/dist/lib/genPrompt.d.ts b/dist/lib/genPrompt.d.ts deleted file mode 100644 index ef07ecd..0000000 --- a/dist/lib/genPrompt.d.ts +++ /dev/null @@ -1,46 +0,0 @@ -import { OpenAIPromptParams, VertexPromptParams } from './types'; -/** - * Represents the AI platforms supported by the generatePrompt function. - */ -export type AIType = 'VertexAI' | 'OpenAI'; -/** - * Represents an example consisting of input and output content. - */ -export type AIExample = { - /** - * The input content for the AI platform. - */ - input: string; - /** - * The expected output content from the AI platform. - */ - output: string; -}; -/** - * Represents the structure of the AI prompt which includes context and examples. - */ -export interface AIPrompt { - /** - * The context or background information for the AI prompt. - */ - context: string; - /** - * An array of examples, each consisting of input and output pairs. - */ - examples: AIExample[]; -} -export declare function generatePrompt(context: string, examples: AIExample[], content: string, ai: AIType): VertexPromptParams | OpenAIPromptParams; -export declare const migrationPrompt: { - context: string; - examples: { - input: string; - output: string; - }[]; -}; -export declare const namingPrompt: { - context: string; - examples: { - input: string; - output: string; - }[]; -}; diff --git a/dist/lib/openai/exapmle.d.ts b/dist/lib/openai/exapmle.d.ts deleted file mode 100644 index cb0ff5c..0000000 --- a/dist/lib/openai/exapmle.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/dist/lib/openai/exapmleFileUpload.d.ts b/dist/lib/openai/exapmleFileUpload.d.ts deleted file mode 100644 index cb0ff5c..0000000 --- a/dist/lib/openai/exapmleFileUpload.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/dist/lib/openai/exapmleStream.d.ts b/dist/lib/openai/exapmleStream.d.ts deleted file mode 100644 index cb0ff5c..0000000 --- a/dist/lib/openai/exapmleStream.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/dist/lib/openai/index.d.ts b/dist/lib/openai/index.d.ts deleted file mode 100644 index 61af01f..0000000 --- a/dist/lib/openai/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './openAi'; diff --git a/dist/lib/openai/openAi.d.ts b/dist/lib/openai/openAi.d.ts deleted file mode 100644 index 13b98a4..0000000 --- a/dist/lib/openai/openAi.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { OpenAI as OpenAIApi } from 'openai'; -import { OpenAIOptions, OpenAIPromptParams } from '@/lib/types/openaiTypes'; -import { AIPromptable } from '@/lib/skeetai'; -import { Stream } from 'openai/streaming'; -export declare class OpenAI implements AIPromptable { - private options; - aiInstance: OpenAIApi; - constructor(options?: OpenAIOptions); - prompt(promptParams: any): Promise; - chat(content: string): Promise; - generateTitle(content: string): Promise; - promptStream(prompt: OpenAIPromptParams): Promise>; - uploadFile(filePath: string): Promise; - createFineTuningJob(fileId: string, model?: string): Promise; - showFineTuningJob(jobId: string): Promise; -} diff --git a/dist/lib/openai/randomChat.d.ts b/dist/lib/openai/randomChat.d.ts deleted file mode 100644 index 5251054..0000000 --- a/dist/lib/openai/randomChat.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { OpenAIPromptParams } from '@/lib/types/openaiTypes'; -export declare const randomChat: (content: string) => OpenAIPromptParams; diff --git a/dist/lib/openai/sytemContexts.d.ts b/dist/lib/openai/sytemContexts.d.ts deleted file mode 100644 index f653db4..0000000 --- a/dist/lib/openai/sytemContexts.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export declare const systemContentEN = "### Instructions ###\nGive a title to the content of the message coming from the user. The maximum number of characters for the title is 50 characters. Please make the title as short and descriptive as possible. Do not ask users questions in interrogative sentences. Be sure to respond with only the title. Don't answer questions from users.\nHere are some examples: Never answer user questions.\nExample 1: User's question: [Question] I want to start learning Javascript.\nAnswer: How to start learning Javascript\nExample 2: User's question: [Question] Can you write the code to create the file in Javascript?\nAnswer: How to create a file with JavaScript\nPreferred response format: [content] \n:"; -export declare const systemContentJA = "### \u6307\u793A ###\n\u30E6\u30FC\u30B6\u30FC\u304B\u3089\u6765\u308B\u30E1\u30C3\u30BB\u30FC\u30B8\u306E\u5185\u5BB9\u306B\u30BF\u30A4\u30C8\u30EB\u3092\u3064\u3051\u307E\u3059\u3002\u30BF\u30A4\u30C8\u30EB\u306E\u6587\u5B57\u6570\u306F\u6700\u5927\u306750\u6587\u5B57\u3067\u3059\u3002\u3067\u304D\u308B\u3060\u3051\u77ED\u304F\u308F\u304B\u308A\u3084\u3059\u3044\u30BF\u30A4\u30C8\u30EB\u3092\u3064\u3051\u3066\u304F\u3060\u3055\u3044\u3002\u7591\u554F\u6587\u3067\u30E6\u30FC\u30B6\u30FC\u306B\u306F\u8CEA\u554F\u3057\u306A\u3044\u3067\u304F\u3060\u3055\u3044\u3002\u5FC5\u305A\u30BF\u30A4\u30C8\u30EB\u306E\u307F\u3092\u30EC\u30B9\u30DD\u30F3\u30B9\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u30E6\u30FC\u30B6\u30FC\u304B\u3089\u6765\u308B\u8CEA\u554F\u306B\u306F\u7B54\u3048\u3066\u306F\u3044\u3051\u307E\u305B\u3093\u3002\n\u4EE5\u4E0B\u306B\u3044\u304F\u3064\u304B\u306E\u4F8B\u3092\u793A\u3057\u307E\u3059\u3002\u7D76\u5BFE\u306B\u30E6\u30FC\u30B6\u30FC\u306E\u8CEA\u554F\u306B\u7B54\u3048\u3066\u306F\u3044\u3051\u307E\u305B\u3093\u3002\u3059\u3079\u3066\u82F1\u8A9E\u3067\u30E1\u30C3\u30BB\u30FC\u30B8\u304C\u6765\u305F\u5834\u5408\u306F\u82F1\u8A9E\u306E\u30BF\u30A4\u30C8\u30EB\u3092\u4ED8\u3051\u3066\u304F\u3060\u3055\u3044\u3002\n<\u91CD\u8981>\u30EC\u30B9\u30DD\u30F3\u30B9\u306F\u30BF\u30A4\u30C8\u30EB\u306E\u307F\u3092\u8FD4\u3057\u3066\u304F\u3060\u3055\u3044\u3002\n\u4F8B1: \u30E6\u30FC\u30B6\u30FC\u304B\u3089\u306E\u8CEA\u554F: [\u8CEA\u554F]Javascript\u306E\u52C9\u5F37\u3092\u59CB\u3081\u305F\u3044\u306E\u3067\u3059\u304C\u3001\u3069\u3046\u3059\u308C\u3070\u3044\u3044\u3067\u3059\u304B?\n \u7B54\u3048\uFF1A Javascript\u306E\u52C9\u5F37\u306E\u59CB\u3081\u65B9\n\u4F8B2: \u30E6\u30FC\u30B6\u30FC\u304B\u3089\u306E\u8CEA\u554F: [\u8CEA\u554F]Javascript\u3067\u30D5\u30A1\u30A4\u30EB\u3092\u4F5C\u6210\u3059\u308B\u30B3\u30FC\u30C9\u3092\u66F8\u3044\u3066\u304F\u308C\u307E\u3059\u304B?\n \u7B54\u3048\uFF1A JavaScript\u3067\u30D5\u30A1\u30A4\u30EB\u3092\u4F5C\u6210\u3059\u308B\u65B9\u6CD5\n\u4F8B2: \u30E6\u30FC\u30B6\u30FC\u304B\u3089\u306E\u8CEA\u554F: \u4ECA\u65E5\u30821\u65E5\u304C\u3093\u3070\u308B\u305E!\n \u7B54\u3048\uFF1A \u6C17\u5408\u8868\u660E\n\u4F8B3: \u30E6\u30FC\u30B6\u30FC\u304B\u3089\u306E\u8CEA\u554F: \u3042\u306A\u305F\u306E\u4ECA\u65E5\u306E\u4E88\u5B9A\u306F\uFF1F\n \u7B54\u3048\uFF1A \u4ECA\u65E5\u306E\u4E88\u5B9A\n\u671B\u307E\u3057\u3044\u56DE\u7B54\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\uFF1A<\u6587\u7AE0\u3092\u8981\u7D04\u3057\u305F\u30BF\u30A4\u30C8\u30EB>\n<\u8CEA\u554F>:"; diff --git a/dist/lib/skeetai/commonPrompt.d.ts b/dist/lib/skeetai/commonPrompt.d.ts deleted file mode 100644 index 514eb9b..0000000 --- a/dist/lib/skeetai/commonPrompt.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { AIType } from '@/lib/genPrompt'; -import { AiInstance, Example } from '@/lib/types/skeetaiTypes'; -export declare const commonPrompt: (example: Example, content: string, thisAi: AIType, thisAiInstance: AiInstance) => Promise; diff --git a/dist/lib/skeetai/compressAndEncrypt.d.ts b/dist/lib/skeetai/compressAndEncrypt.d.ts deleted file mode 100644 index 33cab53..0000000 --- a/dist/lib/skeetai/compressAndEncrypt.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export declare function compressAndEncrypt(data: object, secretKey: string): string | null; -export declare function decryptAndDecompress(data: string, secretKey: string): object | null; diff --git a/dist/lib/skeetai/debug/example1.d.ts b/dist/lib/skeetai/debug/example1.d.ts deleted file mode 100644 index e97b36f..0000000 --- a/dist/lib/skeetai/debug/example1.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare const example1: () => string; diff --git a/dist/lib/skeetai/debug/index.d.ts b/dist/lib/skeetai/debug/index.d.ts deleted file mode 100644 index a1c08e5..0000000 --- a/dist/lib/skeetai/debug/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import SkeetAI from '..'; -export declare const skeetDebug: (content: string, debugFile: string, skeetAi: SkeetAI) => Promise; diff --git a/dist/lib/skeetai/debug/prompt.d.ts b/dist/lib/skeetai/debug/prompt.d.ts deleted file mode 100644 index 2c2b8fb..0000000 --- a/dist/lib/skeetai/debug/prompt.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -export declare const debugPrompt: (tsconfigJson: string, packageJson: string, debugFile: string) => { - context: string; - examples: { - input: string; - output: string; - }[]; -}; diff --git a/dist/lib/skeetai/fineTune/createFineTuningJob.d.ts b/dist/lib/skeetai/fineTune/createFineTuningJob.d.ts deleted file mode 100644 index e3397b2..0000000 --- a/dist/lib/skeetai/fineTune/createFineTuningJob.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { AIType } from '@/lib/genPrompt'; -import { OpenAI } from '@/lib/openai'; -import { VertexAI } from '@/lib/vertexai'; -export declare const createFineTuningJob: (uploadFileId: string, model: string | undefined, thisAi: AIType, thisAiInstance: VertexAI | OpenAI) => Promise; diff --git a/dist/lib/skeetai/fineTune/index.d.ts b/dist/lib/skeetai/fineTune/index.d.ts deleted file mode 100644 index fff7d72..0000000 --- a/dist/lib/skeetai/fineTune/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export * from './uploadFile'; -export * from './createFineTuningJob'; -export * from './showFineTuningJob'; diff --git a/dist/lib/skeetai/fineTune/showFineTuningJob.d.ts b/dist/lib/skeetai/fineTune/showFineTuningJob.d.ts deleted file mode 100644 index db810c4..0000000 --- a/dist/lib/skeetai/fineTune/showFineTuningJob.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { AIType } from '@/lib/genPrompt'; -import { OpenAI } from '@/lib/openai'; -import { VertexAI } from '@/lib/vertexai'; -export declare const showFineTuningJob: (jobId: string, thisAi: AIType, thisAiInstance: VertexAI | OpenAI) => Promise; diff --git a/dist/lib/skeetai/fineTune/uploadFile.d.ts b/dist/lib/skeetai/fineTune/uploadFile.d.ts deleted file mode 100644 index ad38706..0000000 --- a/dist/lib/skeetai/fineTune/uploadFile.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { AIType } from '@/lib/genPrompt'; -import { OpenAI } from '@/lib/openai'; -import { VertexAI } from '@/lib/vertexai'; -export declare const uploadJsonlFile: (filePath: string, thisAi: AIType, thisAiInstance: VertexAI | OpenAI) => Promise; diff --git a/dist/lib/skeetai/firestore/index.d.ts b/dist/lib/skeetai/firestore/index.d.ts deleted file mode 100644 index eb43f28..0000000 --- a/dist/lib/skeetai/firestore/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import SkeetAI from '@/lib/skeetai'; -export declare const skeetFirestore: (content: string, skeetAi: SkeetAI) => Promise; diff --git a/dist/lib/skeetai/firestore/prompt.d.ts b/dist/lib/skeetai/firestore/prompt.d.ts deleted file mode 100644 index 252b0d9..0000000 --- a/dist/lib/skeetai/firestore/prompt.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { AIPrompt } from '@/lib/genPrompt'; -export declare const firestorePrompt: () => AIPrompt; diff --git a/dist/lib/skeetai/function/auth.d.ts b/dist/lib/skeetai/function/auth.d.ts deleted file mode 100644 index f3cdcaa..0000000 --- a/dist/lib/skeetai/function/auth.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare const auth = "import * as functions from 'firebase-functions/v1'\nimport { authDefaultOption } from '@/routings'\nimport skeetConfig from '../../../skeetOptions.json'\nconst region = skeetConfig.region\n\nexport const = functions\n .runWith(authDefaultOption)\n .region(region)\n .auth.user()\n .onCreate(async (user) => {\n try {\n \n console.log({ status: 'success', user })\n } catch (error) {\n console.log({ status: 'error', message: String(error) })\n }\n })"; diff --git a/dist/lib/skeetai/function/firestore.d.ts b/dist/lib/skeetai/function/firestore.d.ts deleted file mode 100644 index 801eaa5..0000000 --- a/dist/lib/skeetai/function/firestore.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare const firestore = "import { onDocumentCreated } from 'firebase-functions/v2/firestore'\nimport { firestoreDefaultOption } from '@/routings/options'\n\nexport const = onDocumentCreated(\n firestoreDefaultOption('User/{userId}'),\n (event) => {\n console.log(` triggered!`)\n try {\n \n console.log(event.params)\n } catch (error) {\n console.log({ status: 'error', message: String(error) })\n }\n }\n)"; diff --git a/dist/lib/skeetai/function/http.d.ts b/dist/lib/skeetai/function/http.d.ts deleted file mode 100644 index 3fbe48f..0000000 --- a/dist/lib/skeetai/function/http.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export declare const http = "import { onRequest } from 'firebase-functions/v2/https'\nimport { publicHttpOption } from '@/routings/options'\nimport { TypedRequestBody } from '@/types/http'\nimport { } from '@/types/http/Params'\n\nexport const = onRequest(publicHttpOption, async (req: TypedRequestBody<>, res) => {\n try {\n \n res.json({\n status: 'success'\n })\n } catch (error) {\n res.status(500).json({ status: 'error', message: String(error) })\n }\n})\n "; -export declare const httpExample: { - input: string; - output: string; -}; diff --git a/dist/lib/skeetai/function/index.d.ts b/dist/lib/skeetai/function/index.d.ts deleted file mode 100644 index a025b3f..0000000 --- a/dist/lib/skeetai/function/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { InstanceType } from '@/lib/types/skeetaiTypes'; -import SkeetAI from '..'; -export declare const skeetFunction: (content: string, skeetAi: SkeetAI, tsconfig: string, packageJson: string, prettierrc: string, existingFunctions: string, existingModels: string, instanceType: InstanceType) => Promise; diff --git a/dist/lib/skeetai/function/prompt.d.ts b/dist/lib/skeetai/function/prompt.d.ts deleted file mode 100644 index da312f6..0000000 --- a/dist/lib/skeetai/function/prompt.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { Example, InstanceType } from '@/lib/types/skeetaiTypes'; -export declare const firebaseFunctionPrompt: (tsconfig: string, packageJson: string, prettierrc: string, existingModels: string, existingFunctions: string, instanceType: InstanceType) => Example; diff --git a/dist/lib/skeetai/function/pubsub.d.ts b/dist/lib/skeetai/function/pubsub.d.ts deleted file mode 100644 index 5fa27b2..0000000 --- a/dist/lib/skeetai/function/pubsub.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare const pubsub = "import { onMessagePublished } from 'firebase-functions/v2/pubsub'\nimport { pubsubDefaultOption } from '@/routings/options'\nimport { parsePubSubMessage } from '@/lib/pubsub'\nimport { Params } from '@/types/pubsub/Params'\n\nexport const Topic = ''\n\nexport const = onMessagePublished(\n pubsubDefaultOption(Topic),\n async (event) => {\n try {\n const pubsubObject = parsePubSubMessage<Params>(event)\n \n console.log({ status: 'success', topic: Topic, event, pubsubObject })\n } catch (error) {\n console.error({ status: 'error', message: String(error) })\n }\n }\n)"; diff --git a/dist/lib/skeetai/function/schedule.d.ts b/dist/lib/skeetai/function/schedule.d.ts deleted file mode 100644 index 948f5b0..0000000 --- a/dist/lib/skeetai/function/schedule.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare const schedule = "import { onSchedule } from 'firebase-functions/v2/scheduler'\nimport { scheduleDefaultOption } from '@/routings/options'\n\nexport const = onSchedule(\n scheduleDefaultOption,\n async (event) => {\n try {\n \n console.log({ status: 'success' })\n } catch (error) {\n console.log({ status: 'error', message: String(error) })\n }\n }\n)"; diff --git a/dist/lib/skeetai/index.d.ts b/dist/lib/skeetai/index.d.ts deleted file mode 100644 index d190945..0000000 --- a/dist/lib/skeetai/index.d.ts +++ /dev/null @@ -1,78 +0,0 @@ -import { OpenAI } from '../openai'; -import { VertexAI } from '../vertexai'; -import { Example, InstanceType, NamingEnum } from '../types/skeetaiTypes'; -/** - * Configuration options for initializing a SkeetAI instance. - */ -export interface SkeetAIOptions { - /** - * AI platform type (either 'VertexAI' or 'OpenAI'). Default is 'VertexAI'. - */ - ai?: 'VertexAI' | 'OpenAI'; - /** - * Model name to be used by the chosen AI platform. Defaults are 'chat-bison@001' for VertexAI and 'gpt-4' for OpenAI. - */ - model?: string; - /** - * Maximum number of tokens to be returned in the response. Default is 1000. - */ - maxTokens?: number; - /** - * Temperature parameter for the AI platform. Default is 0.2. - * @see https://beta.openai.com/docs/api-reference/completions/create#temperature - */ - temperature?: number; -} -export interface AIPromptable { - prompt(input: string): Promise; -} -/** - * The main SkeetAI class for handling AI interactions. - */ -export declare class SkeetAI { - ai: 'VertexAI' | 'OpenAI'; - model: string; - maxTokens: number; - temperature: number; - private _initOptions; - static readonly PRISMA_SCHEMA_PATH: string; - static readonly MODEL_PATH: string; - static readonly FUNCTION_ROOT = "./functions"; - aiInstance: VertexAI | OpenAI; - functionConfigPaths: (functionName: string) => { - packageJson: string; - tsconfigJson: string; - }; - /** - * Creates an instance of SkeetAI. - * @param options - Configuration options for initializing the SkeetAI. - * @example - * ```typescript - * // Using default settings: - * const defaultSkeet = new SkeetAI(); - * - * // Specifying the AI platform and model: - * const customSkeet = new SkeetAI({ - * ai: 'OpenAI', - * model: 'gpt-4', - * maxTokens: 500 - * }); - * ``` - */ - constructor(options?: SkeetAIOptions); - get initOptions(): SkeetAIOptions; - prisma(content: string): Promise; - skeet(content: string): Promise; - uploadFile(filePath: string): Promise; - createFineTuningJob(fileId: string, model?: string): Promise; - showFineTuningJob(jobId: string): Promise; - typedoc(content: string): Promise; - naming(content: string, namingEnum?: NamingEnum): Promise; - translates(paths: string[], langFrom?: string, langTo?: string): Promise; - firestore(content: string): Promise; - function(content: string, tsconfig: string, packageJson: string, prettierrc: string, existingFunctions: string, existingModels: string, instanceType: InstanceType): Promise; - method(content: string, tsconfig: string, packageJson: string, prettierrc: string, existingFunctions: string, existingModels: string): Promise; - run(example: Example, content: string): Promise; - private handleError; -} -export default SkeetAI; diff --git a/dist/lib/skeetai/method/index.d.ts b/dist/lib/skeetai/method/index.d.ts deleted file mode 100644 index 4b338b7..0000000 --- a/dist/lib/skeetai/method/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import SkeetAI from '@/lib/skeetai'; -export declare const skeetMethod: (content: string, skeetAi: SkeetAI, tsconfig: string, packageJson: string, prettierrc: string, existingFunctions: string, existingModels: string) => Promise; diff --git a/dist/lib/skeetai/method/prompt.d.ts b/dist/lib/skeetai/method/prompt.d.ts deleted file mode 100644 index 8db3a83..0000000 --- a/dist/lib/skeetai/method/prompt.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { Example } from '@/lib/types/skeetaiTypes'; -export declare const typescriptMethodPrompt: (tsconfig: string, packageJson: string, prettierrc: string, existingModels: string, existingFunctions: string) => Example; diff --git a/dist/lib/skeetai/naming/index.d.ts b/dist/lib/skeetai/naming/index.d.ts deleted file mode 100644 index 44eaa21..0000000 --- a/dist/lib/skeetai/naming/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { NamingEnum } from '@/lib/types/skeetaiTypes'; -import SkeetAI from '..'; -export declare const skeetNaming: (content: string, skeetAi: SkeetAI, namingEnum: NamingEnum, functionNames?: string[]) => Promise; diff --git a/dist/lib/skeetai/naming/prompt.d.ts b/dist/lib/skeetai/naming/prompt.d.ts deleted file mode 100644 index fad2d30..0000000 --- a/dist/lib/skeetai/naming/prompt.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -export declare const migrationNamingPrompt: { - context: string; - examples: { - input: string; - output: string; - }[]; -}; -export declare const functionNamingPrompt: (functionNames: string[]) => { - context: string; - examples: { - input: string; - output: string; - }[]; -}; -export declare const modelNamingPrompt: () => { - context: string; - examples: { - input: string; - output: string; - }[]; -}; diff --git a/dist/lib/skeetai/prisma/index.d.ts b/dist/lib/skeetai/prisma/index.d.ts deleted file mode 100644 index 5448ff3..0000000 --- a/dist/lib/skeetai/prisma/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import SkeetAI from '@/lib/skeetai'; -export declare const skeetAiPrisma: (content: string, skeetAi: SkeetAI) => Promise; diff --git a/dist/lib/skeetai/prisma/prisma.d.ts b/dist/lib/skeetai/prisma/prisma.d.ts deleted file mode 100644 index cde7f27..0000000 --- a/dist/lib/skeetai/prisma/prisma.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { OpenAI } from '@/lib/openai'; -import { VertexAI } from '@/lib/vertexai'; -import { AIType } from '@/lib/genPrompt'; -export declare const skeetAiPrisma: (content: string, thisAi: AIType, thisAiInstance: VertexAI | OpenAI) => Promise; diff --git a/dist/lib/skeetai/prisma/prompt.d.ts b/dist/lib/skeetai/prisma/prompt.d.ts deleted file mode 100644 index f78047c..0000000 --- a/dist/lib/skeetai/prisma/prompt.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { AIPrompt } from '@/lib/genPrompt'; -export declare const prismaPrompt: () => AIPrompt; diff --git a/dist/lib/skeetai/skeet/examples/skeet.d.ts b/dist/lib/skeetai/skeet/examples/skeet.d.ts deleted file mode 100644 index b6cf00a..0000000 --- a/dist/lib/skeetai/skeet/examples/skeet.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -export declare const skeetPromptVertex: (content: string) => { - context: string; - examples: { - input: { - content: string; - }; - output: { - content: string; - }; - }[]; - messages: { - author: string; - content: string; - }[]; -}; diff --git a/dist/lib/skeetai/skeet/index.d.ts b/dist/lib/skeetai/skeet/index.d.ts deleted file mode 100644 index b89eaf4..0000000 --- a/dist/lib/skeetai/skeet/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import SkeetAI from '..'; -export declare const skeetPrompt: (content: string, skeetAi: SkeetAI) => Promise; diff --git a/dist/lib/skeetai/tranlsate/extractSectionsFromMd.d.ts b/dist/lib/skeetai/tranlsate/extractSectionsFromMd.d.ts deleted file mode 100644 index c6f530b..0000000 --- a/dist/lib/skeetai/tranlsate/extractSectionsFromMd.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare const extractSectionsFromMd: (path: string) => string[]; diff --git a/dist/lib/skeetai/tranlsate/index.d.ts b/dist/lib/skeetai/tranlsate/index.d.ts deleted file mode 100644 index 3a0e72c..0000000 --- a/dist/lib/skeetai/tranlsate/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import SkeetAI from '@/lib/skeetai'; -export declare const skeetAiTranslates: (paths: string[], langFrom: string, langTo: string, skeetAi: SkeetAI) => Promise; diff --git a/dist/lib/skeetai/tranlsate/organizePaths.d.ts b/dist/lib/skeetai/tranlsate/organizePaths.d.ts deleted file mode 100644 index 71cb8d0..0000000 --- a/dist/lib/skeetai/tranlsate/organizePaths.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export type Paths = { - mdFiles: string[]; - jsonFiles: string[]; -}; -export declare const organizeFilesByExtension: (paths: string[]) => Paths; diff --git a/dist/lib/skeetai/tranlsate/prompt.d.ts b/dist/lib/skeetai/tranlsate/prompt.d.ts deleted file mode 100644 index e8d27cc..0000000 --- a/dist/lib/skeetai/tranlsate/prompt.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -export declare const markdownTranslatePrompt: (langFrom?: string, langTo?: string) => { - context: string; - examples: { - input: string; - output: string; - }[]; -}; -export declare const jsonTranslatePrompt: (langFrom?: string, langTo?: string) => { - context: string; - examples: { - input: string; - output: string; - }[]; -}; diff --git a/dist/lib/skeetai/tranlsate/translateDocument.d.ts b/dist/lib/skeetai/tranlsate/translateDocument.d.ts deleted file mode 100644 index 27a401d..0000000 --- a/dist/lib/skeetai/tranlsate/translateDocument.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import SkeetAI from '..'; -export declare const translateDocument: (content: string, skeetAi: SkeetAI, mode: 'markdown' | 'json', langFrom?: string, langTo?: string) => Promise; diff --git a/dist/lib/skeetai/tranlsate/translateJsonDocuments.d.ts b/dist/lib/skeetai/tranlsate/translateJsonDocuments.d.ts deleted file mode 100644 index b5ebd90..0000000 --- a/dist/lib/skeetai/tranlsate/translateJsonDocuments.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import SkeetAI from '@/lib/skeetai'; -export declare const splitContentIntoChunks: (content: string, linesPerChunk: number) => string[]; -export declare const translateJsonDocuments: (paths: string[], langFrom: string | undefined, langTo: string | undefined, skeetAi: SkeetAI) => Promise; diff --git a/dist/lib/skeetai/typedoc/examples/eslintrc.json.d.ts b/dist/lib/skeetai/typedoc/examples/eslintrc.json.d.ts deleted file mode 100644 index a636f16..0000000 --- a/dist/lib/skeetai/typedoc/examples/eslintrc.json.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare const eslintrc: () => string; diff --git a/dist/lib/skeetai/typedoc/examples/prettierrc.d.ts b/dist/lib/skeetai/typedoc/examples/prettierrc.d.ts deleted file mode 100644 index fd995f6..0000000 --- a/dist/lib/skeetai/typedoc/examples/prettierrc.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare const prettierrc: () => string; diff --git a/dist/lib/skeetai/typedoc/examples/tsconfig.json.d.ts b/dist/lib/skeetai/typedoc/examples/tsconfig.json.d.ts deleted file mode 100644 index 4064a4c..0000000 --- a/dist/lib/skeetai/typedoc/examples/tsconfig.json.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare const tsconfig: () => string; diff --git a/dist/lib/skeetai/typedoc/index.d.ts b/dist/lib/skeetai/typedoc/index.d.ts deleted file mode 100644 index 7eb683c..0000000 --- a/dist/lib/skeetai/typedoc/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import SkeetAI from '@/lib/skeetai'; -export declare const skeetGenTypedoc: (content: string, skeetAi: SkeetAI) => Promise; diff --git a/dist/lib/skeetai/typedoc/prompt.d.ts b/dist/lib/skeetai/typedoc/prompt.d.ts deleted file mode 100644 index 5ae3c15..0000000 --- a/dist/lib/skeetai/typedoc/prompt.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { AIPrompt } from '@/lib/genPrompt'; -export declare const typedocPrompt: () => AIPrompt; diff --git a/dist/lib/translate/example.d.ts b/dist/lib/translate/example.d.ts deleted file mode 100644 index cb0ff5c..0000000 --- a/dist/lib/translate/example.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/dist/lib/translate/index.d.ts b/dist/lib/translate/index.d.ts deleted file mode 100644 index d17b42c..0000000 --- a/dist/lib/translate/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './translate'; diff --git a/dist/lib/translate/translate.d.ts b/dist/lib/translate/translate.d.ts deleted file mode 100644 index bc984fd..0000000 --- a/dist/lib/translate/translate.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -/** - * Translates the provided text into the specified target language. - * - * @param text - The text to be translated. - * @param target - The target language code for the translation (defaults to 'ja' for Japanese). - * @returns A promise that resolves with the translated string. - * @throws Will throw an error if the translation fails. - * - * @example - * ```typescript - * import { translate } from "@skeet-framework/ai" - * - * const translatedText = await translate("Hello", "es") - * console.log(translatedText); // Outputs: "Hola" - * ``` - */ -export declare const translate: (text: string, target?: string) => Promise; diff --git a/dist/lib/types/index.d.ts b/dist/lib/types/index.d.ts deleted file mode 100644 index 92e54f9..0000000 --- a/dist/lib/types/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from './openaiTypes'; -export * from './vertexaiTypes'; diff --git a/dist/lib/types/openaiTypes.d.ts b/dist/lib/types/openaiTypes.d.ts deleted file mode 100644 index 0dba0ab..0000000 --- a/dist/lib/types/openaiTypes.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -export type OpenAIPromptParams = { - messages: OpenAIMessage[]; -}; -export type OpenAIOptions = { - organizationKey?: string; - apiKey?: string; - model?: string; - temperature?: number; - maxTokens?: number; - topP?: number; - n?: number; - stream?: boolean; -}; -export type OpenAIRole = 'function' | 'system' | 'assistant' | 'user'; -export type OpenAIMessage = { - role: OpenAIRole; - content: string; -}; diff --git a/dist/lib/types/skeetaiTypes.d.ts b/dist/lib/types/skeetaiTypes.d.ts deleted file mode 100644 index cc989e9..0000000 --- a/dist/lib/types/skeetaiTypes.d.ts +++ /dev/null @@ -1,33 +0,0 @@ -import { VertexAI } from '@/lib/vertexai'; -import { OpenAI } from '@/lib/openai'; -export type Example = { - context: string; - examples: InputOutput[]; -}; -export type InputOutput = { - input: string; - output: string; -}; -export declare enum NamingEnum { - MIGRATION = "migration", - FUNCTION = "function", - MODEL = "model" -} -export type AiInstance = VertexAI | OpenAI; -export declare enum SkeetAiMode { - Function = "function", - Firestore = "firestore", - Method = "method", - Prisma = "prisma", - Skeet = "skeet", - Translate = "translate", - Typedoc = "typedoc", - YesOrNo = "yesOrNo" -} -export declare enum InstanceType { - AUTH = "auth", - FIRESTORE = "firestore", - PUBSUB = "pubsub", - SCHEDULE = "schedule", - HTTP = "http" -} diff --git a/dist/lib/types/vertexaiTypes.d.ts b/dist/lib/types/vertexaiTypes.d.ts deleted file mode 100644 index 6cb39e4..0000000 --- a/dist/lib/types/vertexaiTypes.d.ts +++ /dev/null @@ -1,35 +0,0 @@ -export type VertexPromptParams = { - context: string; - examples: VertexExample[]; - messages: VertexMessage[]; -}; -export type VertexExample = { - input: VertexExampleMessage; - output?: VertexExampleMessage; -}; -export type VertexExampleMessage = { - content: string; -}; -export type VertexMessage = { - author: string; - content: string; -}; -export type VertexParameterParams = { - temperature: number; - maxOutputTokens: number; - topP: number; - topK: number; -}; -export type VertexAiOptions = { - projectId?: string; - location?: string; - apiEndpoint?: string; - model?: string; - publisher?: string; - temperature?: number; - maxOutputTokens?: number; - topP?: number; - topK?: number; - isJapanese?: boolean; - delay?: number; -}; diff --git a/dist/lib/version.d.ts b/dist/lib/version.d.ts index ee15098..151cd5a 100644 --- a/dist/lib/version.d.ts +++ b/dist/lib/version.d.ts @@ -1 +1 @@ -export declare const VERSION = "0.1.7"; +export declare const VERSION = "0.1.8"; diff --git a/dist/lib/vertexai/delayedStream.d.ts b/dist/lib/vertexai/delayedStream.d.ts deleted file mode 100644 index 67108f3..0000000 --- a/dist/lib/vertexai/delayedStream.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -/// -import { Readable, ReadableOptions } from 'stream'; -export declare class DelayedStream extends Readable { - data: string[]; - delay: number; - currentIndex: number; - constructor(data: string[], delay: number, options?: ReadableOptions); - _read(): void; -} diff --git a/dist/lib/vertexai/example.d.ts b/dist/lib/vertexai/example.d.ts deleted file mode 100644 index cb0ff5c..0000000 --- a/dist/lib/vertexai/example.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/dist/lib/vertexai/exampleJa.d.ts b/dist/lib/vertexai/exampleJa.d.ts deleted file mode 100644 index cb0ff5c..0000000 --- a/dist/lib/vertexai/exampleJa.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/dist/lib/vertexai/genTitle.d.ts b/dist/lib/vertexai/genTitle.d.ts deleted file mode 100644 index 7022d2a..0000000 --- a/dist/lib/vertexai/genTitle.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { VertexPromptParams } from '../types/vertexaiTypes'; -export declare const promptTitleGenerationEn: (content: string) => VertexPromptParams; -export declare const promptTitleGenerationJa: (content: string) => VertexPromptParams; diff --git a/dist/lib/vertexai/index.d.ts b/dist/lib/vertexai/index.d.ts deleted file mode 100644 index 6c462bb..0000000 --- a/dist/lib/vertexai/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './vertexAi'; diff --git a/dist/lib/vertexai/randomChat.d.ts b/dist/lib/vertexai/randomChat.d.ts deleted file mode 100644 index d2aeaa1..0000000 --- a/dist/lib/vertexai/randomChat.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -export declare const randomChat: (content: string) => { - context: string; - examples: { - input: { - content: string; - }; - output: { - content: string; - }; - }[]; - messages: { - author: string; - content: string; - }[]; -}; diff --git a/dist/lib/vertexai/sytemContexts.d.ts b/dist/lib/vertexai/sytemContexts.d.ts deleted file mode 100644 index f0c5499..0000000 --- a/dist/lib/vertexai/sytemContexts.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { VertexPromptParams } from '../types/vertexaiTypes'; -export declare const generateTitlePrompt: (content: string, isJapanese?: boolean) => VertexPromptParams; -export declare const promptTitleGenerationJa: (content: string) => VertexPromptParams; diff --git a/dist/lib/vertexai/vertexAi.d.ts b/dist/lib/vertexai/vertexAi.d.ts deleted file mode 100644 index 1384ccb..0000000 --- a/dist/lib/vertexai/vertexAi.d.ts +++ /dev/null @@ -1,63 +0,0 @@ -/** - * `VertexAI` provides an interface to interact with Google's Vertex AI service. - * This class simplifies the process of making predictions using Vertex AI, allowing - * for easy configuration and prediction. - * - * Usage: - * ```typescript - * const vertexService = new VertexAI({ - * projectId: 'your-project-id', - * location: 'your-location', - * // ... other options - * }); - * - * const prompt = { - * //... your prompt data - * }; - * - * const response = await vertexService.predict(prompt); - * console.log(response); - * ``` - * - * @remarks - * Make sure to set the appropriate environment variables or pass them as options to the constructor. - * - * @class - * @example - * VertexAI - * ```typescript - * import { VertexAI } from '@skeet-framework/ai' - * - * const vertexAi = new VertexAI() - * const result = await vertexAi.chat('Hello') - * console.log(result) - * ``` - * - * OpenAI - * ```typescript - * import { OpenAI } from '@skeet-framework/ai' - * - * const openAi = new OpenAI() - * const result = await openAi.chat('Hello') - * console.log(result) - * ``` - */ -/// -import { VertexAiOptions, VertexParameterParams, VertexPromptParams } from '../types/vertexaiTypes'; -import { AIPromptable } from '@/lib/skeetai'; -export declare class VertexAI implements AIPromptable { - protected options: VertexAiOptions; - protected vertexParams: VertexParameterParams; - constructor(options?: VertexAiOptions); - private initializeOptions; - private initializeVertexParams; - private getEndpoint; - prompt(prompt: any): Promise; - promptStream(prompt: any): Promise; - chat(content: string): Promise; - private validateOptions; - private preparePredictRequest; - private processPredictions; - generateTitlePrompt(content: string, isJapanese?: boolean): Promise; - private handleError; -} diff --git a/docs/classes/SolanaUtils.html b/docs/classes/SolanaUtils.html index 611f63d..191e85e 100644 --- a/docs/classes/SolanaUtils.html +++ b/docs/classes/SolanaUtils.html @@ -26,7 +26,7 @@

Hierarchy

  • SolanaUtils
+
  • Defined in lib/solanaUtils/index.ts:24
  • @@ -69,19 +69,19 @@
    options: Returns SolanaUtils
    +
  • Defined in lib/solanaUtils/index.ts:32
  • Properties

    connection: Connection
    +
  • Defined in lib/solanaUtils/index.ts:25
  • +
  • Defined in lib/solanaUtils/index.ts:26
  • Methods

    @@ -115,7 +115,7 @@

    Returns Promise<

    +
  • Defined in lib/solanaUtils/index.ts:76
  • +
  • Defined in lib/solanaUtils/index.ts:90
  • +
  • Defined in lib/solanaUtils/index.ts:56
  • +
  • Defined in lib/solanaUtils/index.ts:45
    • @@ -185,7 +185,7 @@

      Parameters

      lamports: number

    Returns number

    +
  • Defined in lib/solanaUtils/index.ts:95
  • +
  • Defined in lib/solanaUtils/nftOwnerAddress.ts:48
  • +
  • Defined in lib/solanaUtils/lastStakingReward.ts:5
  • +
  • Defined in lib/solanaUtils/nftOwnerAddress.ts:7
  • +
  • Defined in lib/solanaUtils/stakeAccountBalance.ts:4
  • +
  • Defined in lib/solanaUtils/solanaUtilsTypes.ts:24