From 015f5d79c5c101e8877a530a8e306fb671a5b4cb Mon Sep 17 00:00:00 2001 From: DanielHabenicht Date: Thu, 8 Jul 2021 20:17:25 +0000 Subject: [PATCH 1/9] remove unecessary files --- EnoLandingPageFrontend/wwwroot/decode.min.js | 1 - 1 file changed, 1 deletion(-) delete mode 100644 EnoLandingPageFrontend/wwwroot/decode.min.js diff --git a/EnoLandingPageFrontend/wwwroot/decode.min.js b/EnoLandingPageFrontend/wwwroot/decode.min.js deleted file mode 100644 index 6ec8df2..0000000 --- a/EnoLandingPageFrontend/wwwroot/decode.min.js +++ /dev/null @@ -1 +0,0 @@ -export let BrotliDecode=(()=>{function f(f){this.data=f,this.offset=0}let w=Int32Array.from([256,402,436,468,500,534,566,598,630,662,694,726,758,790,822,854,886,920,952,984,1016,1048,1080]),b=Int32Array.from([1,2,3,4,0,5,17,6,16,7,8,9,10,11,12,13,14,15]),j=Int32Array.from([0,3,2,1,0,0,0,0,0,0,3,3,3,3,3,3]),l=Int32Array.from([0,0,0,0,-1,1,-2,2,-3,3,-1,1,-2,2,-3,3]),m=Int32Array.from([131072,131076,131075,196610,131072,131076,131075,262145,131072,131076,131075,196610,131072,131076,131075,262149]),p=Int32Array.from([1,5,9,13,17,25,33,41,49,65,81,97,113,145,177,209,241,305,369,497,753,1265,2289,4337,8433,16625]),q=Int32Array.from([2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,6,6,7,8,9,10,11,12,13,24]),o=Int16Array.from([0,0,0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,7,8,9,10,12,14,24]),n=Int16Array.from([0,0,0,0,0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,7,8,9,10,24]),g=new Int16Array(2816);function k(f){let w=-1,b=16;for(;b>0;)f>>>b!=0&&(w+=b,f>>>=b),b>>=1;return w+f}function s(f,w,b){return 16+w+2*(b<>w),l=k(j)-1;return((l-1<<1|j>>l&1)-1<=16&&(f.g=f.k[f.v++]<<16|f.g>>>16,f.s-=16),0!=_(f,1)){let w=_(f,3);return 0==w?1:_(f,w)+(1<>>b.s;j+=255&l;let m=f[j]>>16,p=65535&f[j];return m<=8?(b.s+=m,p):(j+=p,j+=(l&(1<>>8,b.s+=8+(f[j]>>16),65535&f[j])}function H(f,w,b){b.s>=16&&(b.g=b.k[b.v++]<<16|b.g>>>16,b.s-=16);let j=d(f,w,b),l=q[j];return b.s>=16&&(b.g=b.k[b.v++]<<16|b.g>>>16,b.s-=16),p[j]+(l<=16?_(b,l):X(b,l))}function a(f,w){let b=f[w];for(;w>0;w--)f[w]=f[w-1];f[0]=b}function u(f,w,j,l,p){let q=new Int32Array(f),o=new Int32Array(18),n=32,g=0;for(let f=w;f<18&&n>0;f++){let w=b[f];p.s>=16&&(p.g=p.k[p.v++]<<16|p.g>>>16,p.s-=16);let j=p.g>>>p.s&15;p.s+=m[j]>>16;let l=65535&m[j];o[w]=l,0!=l&&(n-=32>>l,g++)}if(0!=n&&1!=g)throw"Corrupted Huffman code histogram";return function(f,w,b,j){let l=0,m=8,p=0,q=0,o=32768,n=new Int32Array(33);for(c(n,n.length-1,5,f,18);l0;){j.v>2030&&C(j),j.s>=16&&(j.g=j.k[j.v++]<<16|j.g>>>16,j.s-=16);let f=j.g>>>j.s&31;j.s+=n[f]>>16;let g=65535&n[f];if(g<16)p=0,b[l++]=g,0!=g&&(m=g,o-=32768>>g);else{let f=g-14,n=0;16==g&&(n=m),q!=n&&(p=0,q=n);let k=p;p>0&&(p-=2,p<<=f),j.s>=16&&(j.g=j.k[j.v++]<<16|j.g>>>16,j.s-=16),p+=_(j,f)+3;let s=p-k;if(l+s>w)throw"symbol + repeatDelta > numSymbols";for(let f=0;f2030&&C(l),l.s>=16&&(l.g=l.k[l.v++]<<16|l.g>>>16,l.s-=16);let m=_(l,2);return 1==m?function(f,w,b,j,l){let m=new Int32Array(w),p=new Int32Array(4),q=1+k(f-1),o=_(l,2)+1;for(let f=0;f=16&&(l.g=l.k[l.v++]<<16|l.g>>>16,l.s-=16);let b=_(l,q);if(b>=w)throw"Can't readHuffmanCode";p[f]=b}!function(f,w){for(let b=0;b2030&&C(j);let l=e(j)+1;if(1==l)return b.fill(0,0,f),l;j.s>=16&&(j.g=j.k[j.v++]<<16|j.g>>>16,j.s-=16);let m=0;0!=_(j,1)&&(m=_(j,4)+1);let p=l+m,q=w[p+31>>5],o=new Int32Array(q+1),n=o.length-1;z(p,p,o,n,j);for(let w=0;w2030&&C(j),j.s>=16&&(j.g=j.k[j.v++]<<16|j.g>>>16,j.s-=16);let l=d(o,n,j);if(0==l)b[w]=0,w++;else if(l<=m){j.s>=16&&(j.g=j.k[j.v++]<<16|j.g>>>16,j.s-=16);let m=(1<=f)throw"Corrupted context map";b[w]=0,w++,m--}}else b[w]=l-m,w++}return j.s>=16&&(j.g=j.k[j.v++]<<16|j.g>>>16,j.s-=16),1==_(j,1)&&function(f,w){let b=new Int32Array(256);for(let f=0;f<256;f++)b[f]=f;for(let j=0;j=16&&(f.g=f.k[f.v++]<<16|f.g>>>16,f.s-=16);let m=d(f.l,2*w,f),p=H(f.l,2*w+1,f);return 1==m?m=j[l+1]+1:0==m?m=j[l]:m-=2,m>=b&&(m-=b),j[l]=j[l+1],j[l+1]=m,p}function r(f){f.u=i(f,0,f.h);let w=f.H[5];f.i=w<<6,f.I=255&f.R[f.i];let b=f.K[w];f.T=b<<9,f.W=f.T+256}function I(f){f.B=i(f,1,f.Y),f.S=f.H[7]}function R(f){f.A=i(f,2,f.V),f.D=f.H[9]<<2}function K(f){if(0!=f.F)return f.P=10,void(f.j=12);f.U=new Int32Array(0),f.C=new Int32Array(0),f.J=new Int32Array(0),f.v>2030&&C(f),function(f){if(f.s>=16&&(f.g=f.k[f.v++]<<16|f.g>>>16,f.s-=16),f.F=_(f,1),f._=0,f.X=0,f.M=0,0!=f.F&&0!=_(f,1))return;let w=_(f,2)+4;if(7==w){if(f.M=1,0!=_(f,1))throw"Corrupted reserved bit";let w=_(f,2);if(0==w)return;for(let b=0;b=16&&(f.g=f.k[f.v++]<<16|f.g>>>16,f.s-=16);let j=_(f,8);if(0==j&&b+1==w&&w>1)throw"Exuberant nibble";f._|=j<<8*b}}else for(let b=0;b=16&&(f.g=f.k[f.v++]<<16|f.g>>>16,f.s-=16);let j=_(f,4);if(0==j&&b+1==w&&w>4)throw"Exuberant nibble";f._|=j<<4*b}f._++,0==f.F&&(f.X=_(f,1))}(f),0==f._&&0==f.M||(0!=f.X||0!=f.M?(G(f),f.j=0!=f.M?5:6):f.j=3,0==f.M&&(f.G+=f._,f.G>1<<30&&(f.G=1<<30),f.Of.G){let b=f.G;for(;w>>1>b;)w>>=1;0==f.F&&w<16384&&f.Z>=16384&&(w=16384)}if(w<=f.O)return;let b=new Int8Array(w+37);0!=f.L.length&&b.set(f.L.subarray(0,0+f.O),0),f.L=b,f.O=w}(f)))}function T(f,w,b){let j=f.l[2*w];if(b<=1)return f.l[2*w+1]=j,f.l[2*w+2]=j,1<<28;let l=b+2;j+=z(l,l,f.l,2*w,f),f.l[2*w+1]=j;return j+=z(26,26,f.l,2*w+1,f),f.l[2*w+2]=j,H(f.l,2*w+1,f)}function y(f){f.h=e(f)+1,f.u=T(f,0,f.h),f.Y=e(f)+1,f.B=T(f,1,f.Y),f.V=e(f)+1,f.A=T(f,2,f.V),f.v>2030&&C(f),f.s>=16&&(f.g=f.k[f.v++]<<16|f.g>>>16,f.s-=16),f.N=_(f,2),f.$=_(f,4)<=16&&(f.g=f.k[f.v++]<<16|f.g>>>16,f.s-=16),f.K[w]=_(f,2);f.v>2030&&C(f)}f.R=new Int8Array(f.h<<6);let w=h(f.h<<6,f.R,f);f.ff=1;for(let w=0;w>6){f.ff=0;break}f.wf=new Int8Array(f.V<<2);let b=h(f.V<<2,f.wf,f);f.U=Y(256,256,w,f),f.C=Y(704,704,f.Y,f);let j=s(f.N,f.$,24),l=j;1==f.bf&&(j=s(f.N,f.$,62),l=v(2147483644,f.N,f.$)),f.J=Y(j,l,b,f),function(f,w){let b=f.p,j=f.q,l=f.N,m=f.$,p=1<>>f.s,f.s+=8,j--;if(0==j)return;let l=ff(x(f),j>>1);if(l>0){let m=f.v<<1,p=l<<1;w.set(f.o.subarray(m,m+p),b),b+=p,j-=p,f.v+=l}if(0==j)return;if(x(f)>0){for(f.s>=16&&(f.g=f.k[f.v++]<<16|f.g>>>16,f.s-=16);0!=j;)w[b++]=f.g>>>f.s,f.s+=8,j--;return void J(f,0)}for(;j>0;){let l=wf(f.input,w,b,j);if(-1==l)throw"Unexpected end of input";b+=l,j-=l}}(f,w,f.jf,b),f._-=b,f.jf+=b,f.jf==f.O)return f.P=6,void(f.j=12);M(f),f.j=2}function B(f){let w=ff(f.lf-f.mf,f.pf-f.qf);return 0!=w&&(f.nf.set(f.L.subarray(f.qf,f.qf+w),f.gf+f.mf),f.mf+=w,f.qf+=w),f.mf>5],p=new Int32Array(j+j*m),q=j;for(let w=0;w2147483644)throw"Invalid backward reference";let b=f.sf-f.maxDistance-1-f.vf;if(b<0)!function(f,w,b){-1==f.tf&&function(f){f.ef=new Int8Array(256);let w=8;for(;f.vf-1>>>w!=0;)w++;w-=8,f.tf=w;let b=0,j=0;for(;b>>w]=j,b+=1<>>f.tf];for(;w>=f.df[j+1];)j++;if(f.vf>w+b)throw"Invalid backward reference";f.m=f.m+1&3,f.H[f.m]=f.sf,f._-=b,f.Hf=j,f.af=w-f.df[j],f.uf=b,f.zf=0}(f,-b-1,f.hf),f.j=14;else{let j=L,l=f.hf;if(l>31)throw"Invalid backward reference";let m=$[l];if(0==m)throw"Invalid backward reference";let p=N[l],q=b>>>m;p+=(b&(1<=o.if)throw"Invalid backward reference";let n=function(f,w,b,j,l,m,p){let q=w,o=m.rf,n=m.If,g=m.Rf,k=3*p,s=o[k],v=o[k+1],t=o[k+2],e=g[s],d=g[s+1],H=g[t],a=g[t+1],u=v-11,z=v-0;(u<1||u>9)&&(u=0);(z<1||z>9)&&(z=0);for(;e!=d;)f[q++]=n[e++];u>l&&(u=l);j+=u,l-=u;let h=l-=z;for(;h>0;)f[q++]=b[j++],h--;if(10==v||11==v){let w=q-l;for(10==v&&(l=1);l>0;){let b=255&f[w];b<192?(b>=97&&b<=122&&(f[w]^=32),w+=1,l-=1):b<224?(f[w+1]^=32,w+=2,l-=2):(f[w+2]^=5,w+=3,l-=3)}}else if(21==v||22==v){let w=q-l,b=m.Kf[p],j=16777216-(32768&b)+(32767&b);for(;l>0;){let b=1,m=255&f[w];if(m<128)j+=m,f[w]=127&j;else if(m<192);else if(m<224)if(l>=2){let l=f[w+1];j+=63&l|(31&m)<<6,f[w]=192|j>>6&31,f[w+1]=192&l|63&j,b=2}else b=l;else if(m<240)if(l>=3){let l=f[w+1],p=f[w+2];j+=63&p|(63&l)<<6|(15&m)<<12,f[w]=224|j>>12&15,f[w+1]=192&l|j>>6&63,f[w+2]=192&p|63&j,b=3}else b=l;else if(m<248)if(l>=4){let l=f[w+1],p=f[w+2],q=f[w+3];j+=63&q|(63&p)<<6|(63&l)<<12|(7&m)<<18,f[w]=240|j>>18&7,f[w+1]=192&l|j>>12&63,f[w+2]=192&p|j>>6&63,f[w+3]=192&q|63&j,b=4}else b=l;w+=b,l-=b,21==v&&(l=0)}}for(;H!=a;)f[q++]=n[H++];return q-w}(f.L,f.jf,j,p,l,o,q);if(f.jf+=n,f._-=n,f.jf>=w)return f.P=4,void(f.j=12);f.j=4}}function V(f,w){let b=f.jf,j=b;for(;f.uf!=f.zf;){let j=w-b,n=f.df[f.Hf+1]-f.df[f.Hf]-f.af,g=f.uf-f.zf;if(g>n&&(g=n),g>j&&(g=j),l=f.L,m=b,p=f.Tf[f.Hf],q=f.af,o=f.af+g,l.set(p.slice(q,o),m),b+=g,f.af+=g,f.zf+=g,g==n&&(f.Hf++,f.af=0),b>=w)break}var l,m,p,q,o;return b-j}function D(f){if(0==f.j)throw"Can't decompress until initialized";if(11==f.j)throw"Can't decompress after close";if(1==f.j){let w=function(f){let w=f.bf;if(f.bf=0,f.s>=16&&(f.g=f.k[f.v++]<<16|f.g>>>16,f.s-=16),0==_(f,1))return 16;let b=_(f,3);return 0!=b?17+b:(b=_(f,3),0!=b?1==b?0==w?-1:(f.bf=1,1==_(f,1)?-1:(b=_(f,6),b<10||b>30?-1:b)):8+b:17)}(f);if(-1==w)throw"Invalid 'windowBits' code";f.Z=1<2030&&C(f),0==f.B&&I(f),f.B--,f.s>=16&&(f.g=f.k[f.v++]<<16|f.g>>>16,f.s-=16);let p=d(f.C,f.S,f)<<2,q=g[p],o=g[p+1],n=g[p+2];f.Wf=g[p+3],f.s>=16&&(f.g=f.k[f.v++]<<16|f.g>>>16,f.s-=16);let k=255&q;f.Bf=o+(k<=16?_(f,k):X(f,k)),f.s>=16&&(f.g=f.k[f.v++]<<16|f.g>>>16,f.s-=16);let s=q>>8;f.hf=n+(s<=16?_(f,s):X(f,s)),f.Yf=0,f.j=7;case 7:if(0!=f.ff){for(;f.Yf2030&&C(f),0==f.u&&r(f),f.u--,f.s>=16&&(f.g=f.k[f.v++]<<16|f.g>>>16,f.s-=16),m[f.jf]=d(f.U,f.I,f),f.jf++,f.Yf++,f.jf>=w){f.P=7,f.j=12;break}}else{let j=255&m[f.jf-1&b],l=255&m[f.jf-2&b];for(;f.Yf2030&&C(f),0==f.u&&r(f);let b=O[f.T+j]|O[f.W+l],p=255&f.R[f.i+b];if(f.u--,l=j,f.s>=16&&(f.g=f.k[f.v++]<<16|f.g>>>16,f.s-=16),j=d(f.U,p,f),m[f.jf]=j,f.jf++,f.Yf++,f.jf>=w){f.P=7,f.j=12;break}}}if(7!=f.j)continue;if(f._-=f.Bf,f._<=0){f.j=4;continue}let v=f.Wf;if(v<0)f.sf=f.H[f.m];else{f.v>2030&&C(f),0==f.A&&R(f),f.A--,f.s>=16&&(f.g=f.k[f.v++]<<16|f.g>>>16,f.s-=16);let w=255&f.wf[f.D+v];if(v=d(f.J,w,f),v<16){let w=f.m+j[v]&3;if(f.sf=f.H[w]+l[v],f.sf<0)throw"Negative distance"}else{let w,b=f.p[v];f.s+b<=32?w=_(f,b):(f.s>=16&&(f.g=f.k[f.v++]<<16|f.g>>>16,f.s-=16),w=b<=16?_(f,b):X(f,b)),f.sf=f.q[v]+(w<f.maxDistance){f.j=9;continue}if(v>0&&(f.m=f.m+1&3,f.H[f.m]=f.sf),f.hf>f._)throw"Invalid backward reference";f.Yf=0,f.j=8;case 8:let t=f.jf-f.sf&b,e=f.jf,H=f.hf-f.Yf,a=t+H,u=e+H;if(ae&&u>t)for(let f=0;f=w){f.P=8,f.j=12;break}8==f.j&&(f.j=4);continue;case 9:A(f,w);continue;case 14:if(f.jf+=V(f,w),f.jf>=w)return f.P=14,void(f.j=12);f.j=4;continue;case 5:for(;f._>0;)f.v>2030&&C(f),f.s>=16&&(f.g=f.k[f.v++]<<16|f.g>>>16,f.s-=16),_(f,8),f._--;f.j=2;continue;case 6:W(f);continue;case 12:f.pf=ff(f.jf,f.O),f.j=13;case 13:if(0==B(f))return;f.jf>=f.yf&&(f.maxDistance=f.yf),f.jf>=f.O&&(f.jf>f.O&&m.copyWithin(0,f.O,f.jf),f.jf&=b,f.qf=0),f.j=f.P;continue;default:throw"Unexpected state "+f.j}if(10==f.j){if(f._<0)throw"Invalid metablock length";G(f),J(f,1)}}!function(f){let w=new Int16Array(24),b=new Int16Array(24);b[0]=2;for(let f=0;f<23;++f)w[f+1]=w[f]+(1<>>6,m=-4;l>=2&&(l-=2,m=0);let p=(170064>>>2*l&3)<<3|j>>>3&7,q=(156228>>>2*l&3)<<3|7&j,g=b[q],k=m+(g>4?3:g-2),s=4*j;f[s+0]=o[p]|n[q]<<8,f[s+1]=w[p],f[s+2]=b[q],f[s+3]=k}}(g);let F=new function(f,w,b){this.if=0,this.rf=new Int32Array(0),this.If=new Int8Array(0),this.Rf=new Int32Array(0),this.Kf=new Int16Array(0),this.if=f,this.rf=new Int32Array(3*f),this.Kf=new Int16Array(f),this.If=new Int8Array(w),this.Rf=new Int32Array(b+1)}(121,167,50);function Q(f,w){let b=1<>=1;return(f&b-1)+b}function P(f,w,b,j,l){do{f[w+(j-=b)]=l}while(j>0)}function U(f,w,b){let j=1<0;n[w]--)P(f,q+m,j,s,w<<16|o[p++]),m=Q(m,w);let t=v-1,e=-1,d=q;for(let w=b+1,j=2;w<=15;w++,j<<=1)for(;n[w]>0;n[w]--)(m&t)!=e&&(d+=s,k=U(n,w,b),s=1<>b),j,s,w-b<<16|o[p++]),m=Q(m,w);return v}function C(f){if(0!=f.t){if(x(f)>=-2)return;throw"No more input"}let w=f.v<<1,b=4096-w;for(f.o.copyWithin(0,w,4096),f.v=0;b<4096;){let w=4096-b,j=wf(f.input,f.o,b,w);if(j<=0){f.t=1,f.Sf=b,b+=1;break}b+=j}!function(f,w){let b=f.o,j=w>>1,l=f.k;for(let f=0;f>3)-4;if(b>f.Sf)throw"Read after end";if(0!=w&&b!=f.Sf)throw"Unused bytes after end"}function _(f,w){let b=f.g>>>f.s&(1<>>16,f.s-=16,b|_(f,w-16)<<16}function E(f){f.v>2030&&C(f),J(f,0),f.g=f.k[f.v++]<<16|f.g>>>16,f.s-=16,f.g=f.k[f.v++]<<16|f.g>>>16,f.s-=16}function M(f){32==f.s&&E(f)}function G(f){let w=32-f.s&7;if(0!=w){if(0!=_(f,w))throw"Corrupted padding bits"}}function x(f){let w=2048;return 0!=f.t&&(w=f.Sf+1>>1),w-f.v}!function(f,w,b,j,l){let m=j.length,p=1,q=0;for(let b=0;b#\n#]# for # a # that #. # with #\'# from # by #. The # on # as # is #ing #\n\t#:#ed #(# at #ly #="# of the #. This #,# not #er #al #=\'#ful #ive #less #est #ize #ous #'," !! ! , *! &! \" ! ) * * - ! # ! #!*! + ,$ ! - % . / # 0 1 . \" 2 3!* 4% ! # / 5 6 7 8 0 1 & $ 9 + : ; < ' != > ?! 4 @ 4 2 & A *# ( B C& ) % ) !*# *-% A +! *. D! %' & E *6 F G% ! *A *% H! D I!+! J!+ K +- *4! A L!*4 M N +6 O!*% +.! K *G P +%( ! G *D +D Q +# *K!*G!+D!+# +G +A +4!+% +K!+4!*D!+K!*K");let O=new Int32Array(2048);function Z(){this.L=new Int8Array(0),this.K=new Int8Array(0),this.R=new Int8Array(0),this.wf=new Int8Array(0),this.p=new Int8Array(0),this.nf=new Int8Array(0),this.o=new Int8Array(0),this.k=new Int16Array(0),this.Af=new Int32Array(0),this.H=new Int32Array(0),this.l=new Int32Array(0),this.U=new Int32Array(0),this.C=new Int32Array(0),this.J=new Int32Array(0),this.q=new Int32Array(0),this.j=0,this.P=0,this.g=0,this.s=0,this.v=0,this.Sf=0,this.t=0,this._=0,this.F=0,this.X=0,this.M=0,this.u=0,this.h=0,this.B=0,this.Y=0,this.A=0,this.V=0,this.jf=0,this.maxDistance=0,this.m=0,this.ff=0,this.I=0,this.S=0,this.Yf=0,this.Bf=0,this.i=0,this.D=0,this.T=0,this.W=0,this.Wf=0,this.$=0,this.N=0,this.sf=0,this.hf=0,this.yf=0,this.Z=0,this.O=0,this.G=0,this.gf=0,this.lf=0,this.mf=0,this.qf=0,this.pf=0,this.kf=0,this.bf=0,this.Vf=0,this.vf=0,this.Hf=0,this.af=0,this.uf=0,this.zf=0,this.Tf=new Array(0),this.df=new Int32Array(0),this.tf=0,this.ef=new Int8Array(0),this.input=null,this.L=new Int8Array(0),this.H=new Int32Array(10),this.H[0]=16,this.H[1]=15,this.H[2]=11,this.H[3]=4}!function(f,w,b){for(let w=0;w<256;++w)f[w]=63&w,f[512+w]=w>>2,f[1792+w]=2+(w>>6);for(let b=0;b<128;++b)f[1024+b]=4*(w.charCodeAt(b)-32);for(let w=0;w<64;++w)f[1152+w]=1&w,f[1216+w]=2+(1&w);let j=1280;for(let w=0;w<19;++w){let l=3&w,m=b.charCodeAt(w)-32;for(let w=0;w!pfwp6s{8-ip<73s{je#+pllmpfbwmlmfwvafyfqlpfmwqffgeb`wjmwldjewkbqn2;s{`bnfkjooalogyllnuljgfbpzqjmdejoosfbhjmjw`lpw0s{8ib`hwbdpajwpqloofgjwhmftmfbq?"..dqltIPLMgvwzMbnfpbofzlv#olwpsbjmibyy`logfzfpejpkttt-qjphwbapsqfu23s{qjpf16s{Aovfgjmd033/abooelqgfbqmtjogal{-ebjqob`hufqpsbjqivmfwf`kje+"sj`hfujo\'+! tbqnolqgglfpsvoo/333jgfbgqbtkvdfpslwevmgavqmkqfe`foohfzpwj`hklvqolppevfo21s{pvjwgfboQPP!bdfgdqfzDFW!fbpfbjnpdjqobjgp;s{8mbuzdqjgwjsp :::tbqpobgz`bqp*8#~sksolpfmvooubpwtjmgQPP#tfbqqfozaffmpbnfgvhfmbpb`bsftjpkdvoeW109kjwppolwdbwfhj`haovqwkfz26s{$$*8*8!=npjftjmpajqgplqwafwbpffhW2;9lqgpwqffnboo53s{ebqn\x0elupalzpX3^-$*8!SLPWafbqhjgp*8~~nbqzwfmg+VH*rvbgyk9\n.pjy....sqls$*8\x0eojewW2:9uj`fbmgzgfaw=QPPsllomf`haoltW259gllqfuboW249ofwpebjolqbosloomlub`lopdfmf#\x0elxplewqlnfwjooqlpp?k0=slvqebgfsjmh?wq=njmj*\x7f"+njmfyk9\x04abqpkfbq33*8njoh#..=jqlmeqfggjphtfmwpljosvwp,ip,klozW119JPAMW139bgbnpffp?k1=iplm$/#$`lmwW129#QPPollsbpjbnllm?,s=plvoOJMFelqw`bqwW279?k2=;3s{"..?:s{8W379njhf975Ymj`fjm`kZlqhqj`fyk9\b$**8svqfnbdfsbqbwlmfalmg904Y\\le\\$^*8333/yk9\vwbmhzbqgaltoavpk965YIbub03s{\t\x7f~\t&@0&907YifeeF[SJ`bpkujpbdloepmltyk9\x05rvfq-`pppj`hnfbwnjm-ajmggfookjqfsj`pqfmw905YKWWS.132elwltloeFMG#{al{967YALGZgj`h8\t~\tf{jw906Yubqpafbw$~*8gjfw:::8bmmf~~?,Xj^-Obmdhn.^tjqfwlzpbggppfbobof{8\t\n~f`klmjmf-lqd336*wlmziftppbmgofdpqlle333*#133tjmfdfbqgldpallwdbqz`vwpwzofwfnswjlm-{no`l`hdbmd\'+$-63s{Sk-Gnjp`bobmolbmgfphnjofqzbmvmj{gjp`*8~\tgvpw`ojs*-\t\t43s{.133GUGp4^=?wbsfgfnlj((*tbdffvqlskjolswpklofEBRpbpjm.15WobapsfwpVQO#avoh`llh8~\x0e\tKFBGX3^*baaqivbm+2:;ofpkwtjm?,j=plmzdvzpev`hsjsf\x7f.\t"331*mgltX2^8X^8\tOld#pbow\x0e\t\n\nabmdwqjnabwk*x\x0e\t33s{\t~*8hl9\0effpbg=\x0ep9,,#X^8wloosovd+*x\tx\x0e\t#-ip$133sgvboalbw-ISD*8\t~rvlw*8\t\t$*8\t\x0e\t~\x0e1327132613251324132;132:13131312131113101317131613151314131;131:130313021301130013071306130513041320132113221323133:133;133413351336133713301331133213332:::2::;2::42::52::62::72::02::12::22::32:;:2:;;2:;42:;52:;62:;72:;02:;12:;22:;32:4:2:4;2:442:452:462:472:402:412:422:432:5:2:5;2:542:552:562:572:502:512:522:532:6:2:6;2:642:652:662:672:602:612:622:632333231720:73333::::`lnln/Mpfpwffpwbsfqlwlglkb`f`bgbb/]lajfmg/Abbp/Aujgb`bpllwqlelqlplollwqb`vbogjilpjgldqbmwjslwfnbgfafbodlrv/Efpwlmbgbwqfpsl`l`bpbabilwlgbpjmlbdvbsvfpvmlpbmwfgj`fovjpfoobnbzlylmbbnlqsjpllaqb`oj`foolgjlpklqb`bpj<[<\\!sbqhpnlvpfNlpw#---?,bnlmdaqbjmalgz#mlmf8abpfg`bqqzgqbewqfefqsbdf\\klnf-nfwfqgfobzgqfbnsqlufiljmw?,wq=gqvdp?"..#bsqjojgfboboofmf{b`welqwk`lgfpoldj`Ujft#pffnpaobmhslqwp#+133pbufg\\ojmhdlbopdqbmwdqffhklnfpqjmdpqbwfg03s{8tklpfsbqpf+*8!#Aol`hojmv{ilmfpsj{fo$*8!=*8je+.ofewgbujgklqpfEl`vpqbjpfal{fpWqb`hfnfmw?,fn=abq!=-pq`>wltfqbow>!`baofkfmqz17s{8pfwvsjwbozpkbqsnjmlqwbpwftbmwpwkjp-qfpfwtkffodjqop,`pp,233&8`ovappwveeajaofulwfp#2333hlqfb~*8\x0e\tabmgprvfvf>#x~8;3s{8`hjmdx\x0e\t\n\nbkfbg`ol`hjqjpkojhf#qbwjlpwbwpElqn!zbkll*X3^8Balvwejmgp?,k2=gfavdwbphpVQO#>`foop~*+*821s{8sqjnfwfoopwvqmp3{533-isd!psbjmafb`kwb{fpnj`qlbmdfo..=?,djewppwfuf.ojmhalgz-~*8\t\nnlvmw#+2::EBR?,qldfqeqbmh@obpp1;s{8effgp?k2=?p`lwwwfpwp11s{8gqjmh*#\x7f\x7f#oftjppkboo 30:8#elq#olufgtbpwf33s{8ib9\x0fnpjnlm?elmwqfsoznffwpvmwfq`kfbswjdkwAqbmg*#">#gqfpp`ojspqllnplmhfznlajonbjm-Mbnf#sobwfevmmzwqffp`ln,!2-isdtnlgfsbqbnPWBQWofew#jggfm/#132*8\t~\telqn-ujqvp`kbjqwqbmptlqpwSbdfpjwjlmsbw`k?"..\tl.`b`ejqnpwlvqp/333#bpjbmj((*xbglaf$*X3^jg>23alwk8nfmv#-1-nj-smd!hfujm`lb`k@kjogaqv`f1-isdVQO*(-isd\x7fpvjwfpoj`fkbqqz213!#ptffwwq=\x0e\tmbnf>gjfdlsbdf#ptjpp..=\t\t eee8!=Old-`ln!wqfbwpkffw*#%%#27s{8poffsmwfmwejofgib9\x0fojg>!`Mbnf!tlqpfpklwp.al{.gfowb\t%ow8afbqp97;Y?gbwb.qvqbo?,b=#psfmgabhfqpklsp>#!!8sks!=`wjlm20s{8aqjbmkfoolpjyf>l>&1E#iljmnbzaf?jnd#jnd!=/#eipjnd!#!*X3^NWlsAWzsf!mftozGbmph`yf`kwqbjohmltp?,k6=ebr!=yk.`m23*8\t.2!*8wzsf>aovfpwqvozgbujp-ip$8=\x0e\t?"pwffo#zlv#k1=\x0e\telqn#ifpvp233&#nfmv-\x0e\t\n\x0e\ttbofpqjphpvnfmwggjmda.ojhwfb`kdje!#ufdbpgbmphffpwjpkrjspvlnjplaqfgfpgffmwqfwlglpsvfgfb/]lpfpw/Mwjfmfkbpwblwqlpsbqwfglmgfmvfulkb`fqelqnbnjpnlnfilqnvmglbrv/Ag/Abpp/_olbzvgbef`kbwlgbpwbmwlnfmlpgbwlplwqbppjwjlnv`klbklqbovdbqnbzlqfpwlpklqbpwfmfqbmwfpelwlpfpwbpsb/Apmvfubpbovgelqlpnfgjlrvjfmnfpfpslgfq`kjofpfq/Muf`fpgf`jqilp/Efpwbqufmwbdqvslkf`klfoolpwfmdlbnjdl`lpbpmjufodfmwfnjpnbbjqfpivojlwfnbpkb`jbebulqivmjlojaqfsvmwlavfmlbvwlqbaqjoavfmbwf{wlnbqylpbafqojpwbovfdl`/_nlfmfqlivfdlsfq/Vkbafqfpwlzmvm`bnvifqubolqevfqbojaqldvpwbjdvboulwlp`bplpdv/Absvfglplnlpbujplvpwfggfafmml`kfavp`bebowbfvqlppfqjfgj`kl`vqpl`obuf`bpbpof/_msobylobqdllaqbpujpwbbslzlivmwlwqbwbujpwl`qfbq`bnslkfnlp`jm`l`bqdlsjplplqgfmkb`fm/Mqfbgjp`lsfgql`fq`bsvfgbsbsfonfmlq/Vwjo`obqlilqdf`boofslmfqwbqgfmbgjfnbq`bpjdvffoobppjdol`l`kfnlwlpnbgqf`obpfqfpwlmj/]lrvfgbsbpbqabm`lkjilpujbifsbaol/Epwfujfmfqfjmlgfibqelmgl`bmbomlqwfofwqb`bvpbwlnbqnbmlpovmfpbvwlpujoobufmglsfpbqwjslpwfmdbnbq`loofubsbgqfvmjglubnlpylmbpbnalpabmgbnbqjbbavplnv`kbpvajqqjlibujujqdqbgl`kj`bboo/Ailufmgj`kbfpwbmwbofppbojqpvfolsfplpejmfpoobnbavp`l/Epwboofdbmfdqlsobybkvnlqsbdbqivmwbglaofjpobpalopbab/]lkbaobov`kb/mqfbgj`fmivdbqmlwbpuboofboo/M`bqdbglolqbabilfpw/Edvpwlnfmwfnbqjlejqnb`lpwlej`kbsobwbkldbqbqwfpofzfpbrvfonvpflabpfpsl`lpnjwbg`jfol`kj`lnjfgldbmbqpbmwlfwbsbgfafpsobzbqfgfppjfwf`lqwf`lqfbgvgbpgfpflujfilgfpfbbdvbp%rvlw8glnbjm`lnnlmpwbwvpfufmwpnbpwfqpzpwfnb`wjlmabmmfqqfnlufp`qloovsgbwfdolabonfgjvnejowfqmvnafq`kbmdfqfpvowsvaoj`p`qffm`kllpfmlqnbowqbufojppvfpplvq`fwbqdfwpsqjmdnlgvofnlajofptjw`ksklwlpalqgfqqfdjlmjwpfoepl`jbob`wjuf`lovnmqf`lqgelooltwjwof=fjwkfqofmdwkebnjozeqjfmgobzlvwbvwklq`qfbwfqfujftpvnnfqpfqufqsobzfgsobzfqf{sbmgsloj`zelqnbwglvaofsljmwppfqjfpsfqplmojujmdgfpjdmnlmwkpelq`fpvmjrvftfjdkwsflsoffmfqdzmbwvqfpfbq`kejdvqfkbujmd`vpwlnleepfwofwwfqtjmgltpvanjwqfmgfqdqlvspvsolbgkfbowknfwklgujgflpp`klloevwvqfpkbgltgfabwfubovfpLaif`wlwkfqpqjdkwpofbdvf`kqlnfpjnsofmlwj`fpkbqfgfmgjmdpfbplmqfslqwlmojmfprvbqfavwwlmjnbdfpfmbaofnlujmdobwfpwtjmwfqEqbm`fsfqjlgpwqlmdqfsfbwOlmglmgfwbjoelqnfggfnbmgpf`vqfsbppfgwlddofsob`fpgfuj`fpwbwj``jwjfppwqfbnzfooltbwwb`hpwqffweojdkwkjggfmjmel!=lsfmfgvpfevouboofz`bvpfpofbgfqpf`qfwpf`lmggbnbdfpslqwpf{`fswqbwjmdpjdmfgwkjmdpfeef`wejfogppwbwfpleej`fujpvbofgjwlqulovnfQfslqwnvpfvnnlujfpsbqfmwb``fppnlpwoznlwkfq!#jg>!nbqhfwdqlvmg`kbm`fpvqufzafelqfpznalonlnfmwpsff`knlwjlmjmpjgfnbwwfq@fmwfqlaif`wf{jpwpnjggofFvqlsfdqltwkofdb`znbmmfqfmlvdk`bqffqbmptfqlqjdjmslqwbo`ojfmwpfof`wqbmgln`olpfgwlsj`p`lnjmdebwkfqlswjlmpjnsozqbjpfgfp`bsf`klpfm`kvq`kgfejmfqfbplm`lqmfqlvwsvwnfnlqzjeqbnfsloj`fnlgfopMvnafqgvqjmdleefqppwzofphjoofgojpwfg`boofgpjoufqnbqdjmgfofwfafwwfqaqltpfojnjwpDolabopjmdoftjgdfw`fmwfqavgdfwmltqbs`qfgjw`objnpfmdjmfpbefwz`klj`fpsjqjw.pwzofpsqfbgnbhjmdmffgfgqvppjbsofbpff{wfmwP`qjswaqlhfmbooltp`kbqdfgjujgfeb`wlqnfnafq.abpfgwkflqz`lmejdbqlvmgtlqhfgkfosfg@kvq`kjnsb`wpklvogbotbzpoldl!#alwwlnojpw!=*xubq#sqfej{lqbmdfKfbgfq-svpk+`lvsofdbqgfmaqjgdfobvm`kQfujftwbhjmdujpjlmojwwofgbwjmdAvwwlmafbvwzwkfnfpelqdlwPfbq`kbm`klqbonlpwolbgfg@kbmdfqfwvqmpwqjmdqfolbgNlajofjm`lnfpvssozPlvq`flqgfqpujftfg%maps8`lvqpfBalvw#jpobmg?kwno#`llhjfmbnf>!bnbylmnlgfqmbguj`fjm?,b=9#Wkf#gjboldklvpfpAFDJM#Nf{j`lpwbqwp`fmwqfkfjdkwbggjmdJpobmgbppfwpFnsjqfP`kllofeelqwgjqf`wmfbqoznbmvboPfof`w-\t\tLmfiljmfgnfmv!=SkjojsbtbqgpkbmgofjnslqwLeej`fqfdbqgphjoopmbwjlmPslqwpgfdqfftffhoz#+f-d-afkjmggl`wlqolddfgvmjwfg?,a=?,afdjmpsobmwpbppjpwbqwjpwjppvfg033s{\x7f`bmbgbbdfm`zp`kfnfqfnbjmAqbyjopbnsofoldl!=afzlmg.p`bofb``fswpfqufgnbqjmfEllwfq`bnfqb?,k2=\t\\elqn!ofbufppwqfpp!#,=\x0e\t-dje!#lmolbgolbgfqL{elqgpjpwfqpvqujuojpwfmefnbofGfpjdmpjyf>!bssfbowf{w!=ofufopwkbmhpkjdkfqelq`fgbmjnbobmzlmfBeqj`bbdqffgqf`fmwSflsof?aq#,=tlmgfqsqj`fpwvqmfg\x7f\x7f#x~8nbjm!=jmojmfpvmgbztqbs!=ebjofg`fmpvpnjmvwfafb`lmrvlwfp263s{\x7ffpwbwfqfnlwffnbjo!ojmhfgqjdkw8pjdmboelqnbo2-kwnopjdmvssqjm`feolbw9-smd!#elqvn-B``fppsbsfqpplvmgpf{wfmgKfjdkwpojgfqVWE.;!%bns8#Afelqf-#TjwkpwvgjlltmfqpnbmbdfsqlejwiRvfqzbmmvbosbqbnpalvdkwebnlvpdlldofolmdfqj((*#xjpqbfopbzjmdgf`jgfklnf!=kfbgfqfmpvqfaqbm`ksjf`fpaol`h8pwbwfgwls!=?qb`jmdqfpjyf..%dw8sb`jwzpf{vboavqfbv-isd!#23/333lawbjmwjwofpbnlvmw/#Jm`-`lnfgznfmv!#ozqj`pwlgbz-jmgffg`lvmwz\\oldl-EbnjozollhfgNbqhfwopf#jeSobzfqwvqhfz*8ubq#elqfpwdjujmdfqqlqpGlnbjm~fopfxjmpfqwAold?,ellwfqoldjm-ebpwfqbdfmwp?algz#23s{#3sqbdnbeqjgbzivmjlqgloobqsob`fg`lufqpsovdjm6/333#sbdf!=alpwlm-wfpw+bubwbqwfpwfg\\`lvmwelqvnpp`kfnbjmgf{/ejoofgpkbqfpqfbgfqbofqw+bssfbqPvanjwojmf!=algz!=\t)#WkfWklvdkpffjmdifqpfzMftp?,ufqjezf{sfqwjmivqztjgwk>@llhjfPWBQW#b`qlpp\\jnbdfwkqfbgmbwjufsl`hfwal{!=\tPzpwfn#Gbujg`bm`fqwbaofpsqlufgBsqjo#qfboozgqjufqjwfn!=nlqf!=albqgp`lolqp`bnsvpejqpw#\x7f\x7f#X^8nfgjb-dvjwbqejmjpktjgwk9pkltfgLwkfq#-sks!#bppvnfobzfqptjoplmpwlqfpqfojfeptfgfm@vpwlnfbpjoz#zlvq#Pwqjmd\t\tTkjowbzolq`ofbq9qfplqweqfm`kwklvdk!*#(#!?algz=avzjmdaqbmgpNfnafqmbnf!=lssjmdpf`wlq6s{8!=upsb`fslpwfqnbilq#`leeffnbqwjmnbwvqfkbssfm?,mbu=hbmpbpojmh!=Jnbdfp>ebopftkjof#kpsb`f3%bns8#\t\tJm##sltfqSlophj.`lolqilqgbmAlwwlnPwbqw#.`lvmw1-kwnomftp!=32-isdLmojmf.qjdkwnjoofqpfmjlqJPAM#33/333#dvjgfpubovf*f`wjlmqfsbjq-{no!##qjdkwp-kwno.aol`hqfdF{s9klufqtjwkjmujqdjmsklmfp?,wq=\x0evpjmd#\t\nubq#=$*8\t\n?,wg=\t?,wq=\tabkbpbaqbpjodbofdlnbdzbqslophjpqsphj4]4C5d\bTA\nzk\vBl\bQ\x7f\vUm\x05Gx\bSM\nmC\bTA\twQ\nd}\bW@\bTl\bTF\ti@\tcT\vBM\v|j\x04BV\tqw\tcC\bWI\npa\tfM\n{Z\x05{X\bTF\bVV\bVK\t\x7fm\x04kF\t[]\bPm\bTv\nsI\vpg\t[I\bQp\x04mx\v_W\n^M\npe\vQ}\vGu\nel\npe\x04Ch\x04BV\bTA\tSo\nzk\vGL\vxD\nd[\x05Jz\x05MY\bQp\x04li\nfl\npC\x05{B\x05Nt\vwT\ti_\bTg\x04QQ\n|p\vXN\bQS\vxD\x04QC\bWZ\tpD\vVS\bTW\x05Nt\x04Yh\nzu\x04Kj\x05N}\twr\tHa\n_D\tj`\vQ}\vWp\nxZ\x04{c\tji\tBU\nbD\x04a|\tTn\tpV\nZd\nmC\vEV\x05{X\tc}\tTo\bWl\bUd\tIQ\tcg\vxs\nXW\twR\vek\tc}\t]y\tJn\nrp\neg\npV\nz\\\x05{W\npl\nz\\\nzU\tPc\t`{\bV@\nc|\bRw\ti_\bVb\nwX\tHv\x04Su\bTF\v_W\vWs\vsI\x05m\x7f\nTT\ndc\tUS\t}f\tiZ\bWz\tc}\x04MD\tBe\tiD\v@@\bTl\bPv\t}t\x04Sw\x04M`\vnU\tkW\ved\nqo\vxY\tA|\bTz\vy`\x04BR\x04BM\tia\x04XU\nyu\x04n^\tfL\tiI\nXW\tfD\bWz\bW@\tyj\t\x7fm\tav\tBN\vb\\\tpD\bTf\nY[\tJn\bQy\t[^\vWc\vyu\x04Dl\x04CJ\vWj\vHR\t`V\vuW\tQy\np@\vGu\x05pl\x04Jm\bW[\nLP\nxC\n`m\twQ\x05ui\x05\x7fR\nbI\twQ\tBZ\tWV\x04BR\npg\tcg\x05ti\x04CW\n_y\tRg\bQa\vQB\vWc\nYb\x05le\ngE\x04Su\nL[\tQ\x7f\tea\tdj\v]W\nb~\x04M`\twL\bTV\bVH\nt\x7f\npl\t|b\x05s_\bU|\bTa\x04oQ\x05lv\x04Sk\x04M`\bTv\vK}\nfl\tcC\x04oQ\x04BR\tHk\t|d\bQp\tHK\tBZ\vHR\bPv\vLx\vEZ\bT\x7f\bTv\tiD\x05oD\x05MU\vwB\x04Su\x05k`\x04St\ntC\tPl\tKg\noi\tjY\vxY\x04h}\nzk\bWZ\t\x7fm\ve`\tTB\tfE\nzk\t`z\x04Yh\nV|\tHK\tAJ\tAJ\bUL\tp\\\tql\nYc\x04Kd\nfy\x04Yh\t[I\vDg\x04Jm\n]n\nlb\bUd\n{Z\tlu\tfs\x04oQ\bTW\x04Jm\vwB\tea\x04Yh\x04BC\tsb\tTn\nzU\n_y\vxY\tQ]\ngw\x04mt\tO\\\ntb\bWW\bQy\tmI\tV[\ny\\\naB\vRb\twQ\n]Q\x04QJ\bWg\vWa\bQj\ntC\bVH\nYm\vxs\bVK\nel\bWI\vxY\x04Cq\ntR\vHV\bTl\bVw\tay\bQa\bVV\t}t\tdj\nr|\tp\\\twR\n{i\nTT\t[I\ti[\tAJ\vxs\v_W\td{\vQ}\tcg\tTz\tA|\tCj\vLm\x05N}\x05m\x7f\nbK\tdZ\tp\\\t`V\tsV\np@\tiD\twQ\vQ}\bTf\x05ka\x04Jm\v@@\bV`\tzp\n@N\x04Sw\tiI\tcg\noi\x04Su\bVw\x04lo\x04Cy\tc}\vb\\\tsU\x04BA\bWI\bTf\nxS\tVp\nd|\bTV\vbC\tNo\x05Ju\nTC\t|`\n{Z\tD]\bU|\tc}\x05lm\bTl\tBv\tPl\tc}\bQp\t\x7fm\nLk\tkj\n@N\x04Sb\x04KO\tj_\tp\\\nzU\bTl\bTg\bWI\tcf\x04XO\bWW\ndz\x04li\tBN\nd[\bWO\x04MD\vKC\tdj\tI_\bVV\ny\\\vLm\x05xl\txB\tkV\vb\\\vJW\vVS\tVx\vxD\td{\x04MD\bTa\t|`\vPz\x04R}\vWs\x04BM\nsI\x04CN\bTa\x04Jm\npe\ti_\npV\nrh\tRd\tHv\n~A\nxR\vWh\vWk\nxS\vAz\vwX\nbI\x04oQ\tfw\nqI\nV|\nun\x05z\x7f\vpg\td\\\voA\x05{D\ti_\x05xB\bT\x7f\t`V\x05qr\tTT\x04g]\x04CA\vuR\tVJ\tT`\npw\vRb\tI_\nCx\x04Ro\vsI\x04Cj\x04Kh\tBv\tWV\x04BB\x05oD\x05{D\nhc\x04Km\v^R\tQE\n{I\np@\nc|\x05Gt\tc}\x04Dl\nzU\x05qN\tsV\x05k}\tHh\v|j\nqo\x05u|\tQ]\vek\x05\x7fZ\x04M`\x04St\npe\tdj\bVG\veE\t\x7fm\vWc\x04|I\n[W\tfL\bT\x7f\tBZ\x04Su\vKa\x04Cq\x05Nt\x04Y[\nqI\bTv\tfM\ti@\t}f\x04B\\\tQy\vBl\bWg\x04XD\x05kc\vx[\bVV\tQ]\t\x7fa\tPy\vxD\nfI\t}f\x05oD\tdj\tSG\x05ls\t~D\x04CN\n{Z\t\\v\n_D\nhc\vx_\x04C[\tAJ\nLM\tVx\x04CI\tbj\tc^\tcF\ntC\x04Sx\twr\x04XA\bU\\\t|a\vK\\\bTV\bVj\nd|\tfs\x04CX\ntb\bRw\tVx\tAE\tA|\bT\x7f\x05Nt\vDg\tVc\bTl\x04d@\npo\t\x7fM\tcF\npe\tiZ\tBo\bSq\nfH\x04l`\bTx\bWf\tHE\vF{\tcO\tfD\nlm\vfZ\nlm\veU\tdG\x04BH\bTV\tSi\x05MW\nwX\nz\\\t\\c\x04CX\nd}\tl}\bQp\bTV\tF~\bQ\x7f\t`i\ng@\x05nO\bUd\bTl\nL[\twQ\tji\ntC\t|J\nLU\naB\vxY\x04Kj\tAJ\x05uN\ti[\npe\x04Sk\vDg\vx]\bVb\bVV\nea\tkV\nqI\bTa\x04Sk\nAO\tpD\ntb\nts\nyi\bVg\ti_\v_W\nLk\x05Nt\tyj\tfM\x04R\x7f\tiI\bTl\vwX\tsV\vMl\nyu\tAJ\bVj\x04KO\tWV\vA}\vW\x7f\nrp\tiD\v|o\x05lv\vsI\x04BM\td~\tCU\bVb\x04eV\npC\vwT\tj`\tc}\vxs\vps\vvh\tWV\vGg\vAe\vVK\v]W\trg\vWc\x05F`\tBr\vb\\\tdZ\bQp\nqI\x04kF\nLk\vAR\bWI\bTg\tbs\tdw\n{L\n_y\tiZ\bTA\tlg\bVV\bTl\tdk\n`k\ta{\ti_\x05{A\x05wj\twN\v@@\bTe\ti_\n_D\twL\nAH\viK\vek\n[]\tp_\tyj\bTv\tUS\t[r\n{I\nps\x05Gt\vVK\npl\x04S}\vWP\t|d\x04MD\vHV\bT\x7f\x04R}\x04M`\bTV\bVH\x05lv\x04Ch\bW[\x04Ke\tR{\v^R\tab\tBZ\tVA\tB`\nd|\nhs\x04Ke\tBe\x04Oi\tR{\td\\\x05nB\bWZ\tdZ\tVJ\x05Os\t\x7fm\x04uQ\vhZ\x04Q@\x04QQ\nfI\bW[\x04B\\\x04li\nzU\nMd\x04M`\nxS\bVV\n\\}\vxD\t\x7fm\bTp\x04IS\nc|\tkV\x05i~\tV{\vhZ\t|b\bWt\n@R\voA\vnU\bWI\tea\tB`\tiD\tc}\tTz\x04BR\vQB\x05Nj\tCP\t[I\bTv\t`W\x05uN\vpg\vpg\vWc\tiT\tbs\twL\tU_\tc\\\t|h\vKa\tNr\tfL\nq|\nzu\nz\\\tNr\bUg\t|b\x04m`\bTv\nyd\nrp\bWf\tUX\x04BV\nzk\nd}\twQ\t}f\x04Ce\ved\bTW\bSB\nxU\tcn\bTb\ne\x7f\ta\\\tSG\bU|\npV\nN\\\x04Kn\vnU\tAt\tpD\v^R\vIr\x04b[\tR{\tdE\vxD\vWK\vWA\bQL\bW@\x04Su\bUd\nDM\tPc\x04CA\x04Dl\x04oQ\tHs\x05wi\x04ub\n\x7fa\bQp\x05Ob\nLP\bTl\x04Y[\vK}\tAJ\bQ\x7f\x04n^\vsA\bSM\nqM\bWZ\n^W\vz{\x04S|\tfD\bVK\bTv\bPv\x04BB\tCP\x04dF\tid\vxs\x04mx\vws\tcC\ntC\tyc\x05M`\vW\x7f\nrh\bQp\vxD\x04\\o\nsI\x04_k\nzu\x04kF\tfD\x04Xs\x04XO\tjp\bTv\x04BS\x05{B\tBr\nzQ\nbI\tc{\x04BD\x04BV\x05nO\bTF\tca\x05Jd\tfL\tPV\tI_\nlK\x04`o\twX\npa\tgu\bP}\x05{^\bWf\n{I\tBN\npa\x04Kl\vpg\tcn\tfL\vvh\x04Cq\bTl\vnU\bSq\x04Cm\twR\bUJ\npe\nyd\nYg\x04Cy\vKW\tfD\nea\x04oQ\tj_\tBv\x04nM\vID\bTa\nzA\x05pl\n]n\bTa\tR{\tfr\n_y\bUg\x05{X\x05kk\vxD\x04|I\x05xl\nfy\x04Ce\vwB\nLk\vd]\noi\n}h\tQ]\npe\bVw\x04Hk\x04OQ\nzk\tAJ\npV\bPv\ny\\\tA{\x04Oi\bSB\x04XA\veE\tjp\nq}\tiD\x05qN\v^R\t\x7fm\tiZ\tBr\bVg\noi\n\\X\tU_\nc|\vHV\bTf\tTn\x04\\N\x04\\N\nuB\x05lv\nyu\tTd\bTf\bPL\v]W\tdG\nA`\nw^\ngI\npe\tdw\nz\\\x05ia\bWZ\tcF\x04Jm\n{Z\bWO\x04_k\x04Df\x04RR\td\\\bVV\vxs\x04BN\x05ti\x04lm\tTd\t]y\vHV\tSo\v|j\x04XX\tA|\vZ^\vGu\bTW\x05M`\x04kF\vhZ\vVK\tdG\vBl\tay\nxU\x05qE\x05nO\bVw\nqI\x04CX\ne\x7f\tPl\bWO\vLm\tdL\x05uH\x04Cm\tdT\x04fn\vwB\x05ka\vnU\n@M\nyT\tHv\t\\}\x04Kh\td~\x04Yh\x05k}\neR\td\\\bWI\t|b\tHK\tiD\bTW\x05MY\npl\bQ_\twr\vAx\tHE\bTg\bSq\x05vp\vb\\\bWO\nOl\nsI\nfy\vID\t\\c\n{Z\n^~\npe\nAO\tTT\vxv\x04k_\bWO\v|j\vwB\tQy\ti@\tPl\tHa\tdZ\x05k}\x04ra\tUT\vJc\ved\np@\tQN\nd|\tkj\tHk\x04M`\noi\twr\td\\\nlq\no_\nlb\nL[\tac\x04BB\x04BH\x04Cm\npl\tIQ\bVK\vxs\n`e\viK\npa\x04Oi\tUS\bTp\tfD\nPG\x05kk\x04XA\nz\\\neg\vWh\twR\x05qN\nqS\tcn\x04lo\nxS\n^W\tBU\nt\x7f\tHE\tp\\\tfF\tfw\bVV\bW@\tak\vVK\x05ls\tVJ\bVV\veE\x04\\o\nyX\nYm\x04M`\x05lL\nd|\nzk\tA{\x05sE\twQ\x04XT\nt\x7f\tPl\t]y\vwT\x05{p\x04MD\vb\\\tQ]\x04Kj\tJn\nAH\vRb\tBU\tHK\t\\c\nfI\x05m\x7f\nqM\n@R\tSo\noi\x04BT\tHv\n_y\x04Kh\tBZ\t]i\bUJ\tV{\x04Sr\nbI\vGg\ta_\bTR\nfI\nfl\t[K\tII\x04S|\vuW\tiI\bWI\nqI\v|j\x04BV\bVg\bWZ\x04kF\vx]\bTA\tab\tfr\ti@\tJd\tJd\vps\nAO\bTa\x05xu\tiD\nzk\t|d\t|`\bW[\tlP\tdG\bVV\vw}\vqO\ti[\bQ\x7f\bTz\vVF\twN\x05ts\tdw\bTv\neS\ngi\tNr\x05yS\npe\bVV\bSq\n`m\tyj\tBZ\vWX\bSB\tc\\\nUR\t[J\tc_\x04nM\bWQ\vAx\nMd\tBr\x05ui\vxY\bSM\vWc\v|j\vxs\t}Q\tBO\bPL\bWW\tfM\nAO\tPc\veU\x04e^\bTg\nqI\tac\bPv\tcF\x04oQ\tQ\x7f\vhZ\x05ka\nz\\\tiK\tBU\n`k\tCP\x04S|\x04M`\n{I\tS{\x04_O\tBZ\x04Zi\x04Sk\tps\tp\\\nYu\n]s\nxC\bWt\nbD\tkV\vGu\x05yS\nqA\t[r\neK\x04M`\tdZ\x05lL\bUg\bTl\nbD\tUS\vb\\\tpV\ncc\x04S\\\tct\t`z\bPL\vWs\nA`\neg\bSq\x05uE\x04CR\vDg\t`W\vz{\vWc\x04Sk\x04Sk\tbW\bUg\tea\nxZ\tiI\tUX\tVJ\nqn\tS{\vRb\bTQ\npl\x05Gt\vuW\x05uj\npF\nqI\tfL\t[I\tia\x04XO\nyu\vDg\ved\tq{\x04VG\bQ\x7f\x05ka\tVj\tkV\txB\nd|\np@\tQN\tPc\tps\x04]j\tkV\toU\bTp\nzU\x05nB\vB]\ta{\bV@\n]n\x04m`\tcz\tR{\x04m`\bQa\vwT\bSM\x05MY\x05qN\tdj\x05~s\vQ}\x05MY\vMB\tBv\twR\bRg\vQ}\tql\vKC\nrm\x05xu\x04CC\vwB\vvh\tBq\x04Xq\npV\ti_\x05Ob\x05uE\nbd\nqo\v{i\nC~\tBL\veE\x05uH\bVj\x04Ey\x04Gz\vzR\v{i\tcf\n{Z\n]n\x04XA\vGu\vnU\thS\vGI\nCc\tHE\bTA\tHB\x04BH\x04Cj\nCc\bTF\tHE\nXI\tA{\bQ\x7f\tc\\\vmO\vWX\nfH\np@\x05MY\bTF\nlK\tBt\nzU\tTT\x04Km\vwT\npV\ndt\vyI\tVx\tQ\x7f\tRg\tTd\nzU\bRS\nLM\twA\x04nM\tTn\ndS\t]g\nLc\vwB\t}t\t[I\tCP\x04kX\vFm\vhZ\x05m\x7f\ti[\np@\vQ}\vW\x7f\t|d\nMO\nMd\tf_\tfD\tcJ\tHz\vRb\tio\tPy\x04Y[\nxU\tct\v@@\tww\bPv\x04BM\x04FF\ntb\x05v|\vKm\tBq\tBq\x04Kh\x04`o\nZd\x04XU\ti]\t|`\tSt\x04B\\\bQ\x7f\v_W\tTJ\nqI\t|a\tA{\vuP\x04MD\tPl\nxR\tfL\vws\tc{\td\\\bV`\neg\tHK\x05kc\nd|\bVV\ny\\\x05kc\ti]\bVG\t`V\tss\tI_\tAE\tbs\tdu\nel\tpD\vW\x7f\nqs\x05lv\bSM\x04Zi\vVK\x05ia\vQB\tQ\x7f\n{Z\bPt\vKl\nlK\nhs\ndS\bVK\x05mf\nd^\tkV\tcO\nc|\bVH\t\\]\bTv\bSq\tmI\vDg\tVJ\tcn\ny\\\bVg\bTv\nyX\bTF\t]]\bTp\noi\nhs\veU\nBf\tdj\x05Mr\n|p\t\\g\t]r\bVb\x05{D\nd[\x04XN\tfM\tO\\\x05s_\tcf\tiZ\x04XN\vWc\tqv\n`m\tU^\x05oD\nd|\vGg\tdE\vwf\x04lo\x04u}\nd|\x05oQ\t`i\x04Oi\vxD\ndZ\nCx\x04Yw\nzk\ntb\ngw\tyj\tB`\nyX\vps\ntC\vpP\vqw\bPu\bPX\tDm\npw\x05Nj\tss\taG\vxs\bPt\noL\x04Gz\tOk\ti@\ti]\x04eC\tIQ\tii\tdj\v@J\t|d\x05uh\bWZ\veU\vnU\bTa\tcC\x04g]\nzk\x04Yh\bVK\nLU\np@\ntb\ntR\tCj\vNP\ti@\bP{\n\\}\n{c\nwX\tfL\bVG\tc{\t|`\tAJ\t|C\tfD\x05ln\t|d\tbs\nqI\x05{B\vAx\np@\nzk\vRb\x05Os\vWS\x04e^\vD_\tBv\vWd\bVb\vxs\veE\bRw\n]n\n|p\vg|\tfw\x05kc\bTI\x05ka\n\\T\x04Sp\tju\vps\npe\x05u|\vGr\bVe\tCU\x04]M\x04XU\vxD\bTa\tIQ\vWq\tCU\tam\tdj\bSo\x04Sw\vnU\x04Ch\tQ]\x05s_\bPt\tfS\bTa\t\\}\n@O\x04Yc\tUZ\bTx\npe\vnU\nzU\t|}\tiD\nz\\\bSM\vxD\x04BR\nzQ\tQN\x04]M\x04Yh\nLP\vFm\vLX\x05vc\vql\x05ka\tHK\bVb\ntC\nCy\bTv\nuV\x04oQ\t`z\t[I\tB`\vRb\tyj\tsb\vWs\bTl\tkV\ved\ne\x7f\x05lL\vxN\t\x7fm\nJn\tjY\vxD\bVb\bSq\vyu\twL\vXL\bTA\tpg\tAt\tnD\x04XX\twR\npl\nhw\x05yS\nps\tcO\bW[\v|j\x04XN\tsV\tp\\\tBe\nb~\nAJ\n]e\x05k`\x05qN\tdw\tWV\tHE\vEV\x05Jz\tid\tB`\tzh\x05E]\tfD\bTg\x05qN\bTa\tja\x04Cv\bSM\nhc\bUe\x05t_\tie\x04g]\twQ\nPn\bVB\tjw\bVg\vbE\tBZ\vRH\bP{\tjp\n\\}\ta_\tcC\t|a\vD]\tBZ\ti[\tfD\vxW\no_\td\\\n_D\ntb\t\\c\tAJ\nlK\x04oQ\x04lo\vLx\vM@\bWZ\x04Kn\vpg\nTi\nIv\n|r\v@}\x05Jz\x05Lm\x05Wh\x05k}\x05ln\vxD\n]s\x04gc\vps\tBr\bTW\vBM\x05tZ\nBY\x04DW\tjf\vSW\x04C}\nqo\tdE\tmv\tIQ\bPP\bUb\x05lv\x04BC\nzQ\t[I\vgl\nig\bUs\x04BT\vbC\bSq\tsU\tiW\nJn\tSY\tHK\trg\npV\vID\v|j\x04KO\t`S\t|a`vbmglfmujbqnbgqjgavp`bqjmj`jlwjfnslslqrvf`vfmwbfpwbglsvfgfmivfdlp`lmwqbfpw/Mmmlnaqfwjfmfmsfqejonbmfqbbnjdlp`jvgbg`fmwqlbvmrvfsvfgfpgfmwqlsqjnfqsqf`jlpfd/Vmavfmlpuloufqsvmwlppfnbmbkba/Abbdlpwlmvfulpvmjglp`bqolpfrvjslmj/]lpnv`klpbodvmb`lqqfljnbdfmsbqwjqbqqjabnbq/Abklnaqffnsoflufqgbg`bnajlnv`kbpevfqlmsbpbglo/Amfbsbqf`fmvfubp`vqplpfpwbabrvjfqlojaqlp`vbmwlb``fplnjdvfoubqjlp`vbwqlwjfmfpdqvslppfq/Mmfvqlsbnfgjlpeqfmwfb`fq`bgfn/Mplefqwb`l`kfpnlgfoljwbojbofwqbpbod/Vm`lnsqb`vbofpf{jpwf`vfqslpjfmglsqfmpboofdbqujbifpgjmfqlnvq`jbslgq/Msvfpwlgjbqjlsvfaolrvjfqfnbmvfosqlsjl`qjpjp`jfqwlpfdvqlnvfqwfevfmwf`fqqbqdqbmgffef`wlsbqwfpnfgjgbsqlsjbleqf`fwjfqqbf.nbjoubqjbpelqnbpevwvqllaifwlpfdvjqqjfpdlmlqnbpnjpnlp/Vmj`l`bnjmlpjwjlpqby/_mgfajglsqvfabwlofglwfm/Abifp/Vpfpsfql`l`jmblqjdfmwjfmgb`jfmwl`/Mgjykbaobqpfq/Abobwjmbevfqybfpwjoldvfqqbfmwqbq/E{jwlo/_sfybdfmgbu/Agflfujwbqsbdjmbnfwqlpibujfqsbgqfpe/M`jo`bafyb/Mqfbppbojgbfmu/Alibs/_mbavplpajfmfpwf{wlpoofubqsvfgbmevfqwf`ln/Vm`obpfpkvnbmlwfmjglajoablvmjgbgfpw/Mpfgjwbq`qfbgl2%bns8Kjpwlqz#>#mft#@fmwqbovsgbwfgPsf`jboMfwtlqhqfrvjqf`lnnfmwtbqmjmd@loofdfwlloabqqfnbjmpaf`bvpffof`wfgGfvwp`kejmbm`ftlqhfqprvj`hozafwtffmf{b`wozpfwwjmdgjpfbpfPl`jfwztfbslmpf{kjajw%ow8"..@lmwqlo`obppfp`lufqfglvwojmfbwwb`hpgfuj`fp+tjmgltsvqslpfwjwof>!Nlajof#hjoojmdpkltjmdJwbojbmgqlssfgkfbujozfeef`wp.2$^*8\t`lmejqn@vqqfmwbgubm`fpkbqjmdlsfmjmdgqbtjmdajoojlmlqgfqfgDfqnbmzqfobwfg?,elqn=jm`ovgftkfwkfqgfejmfgP`jfm`f`bwboldBqwj`ofavwwlmpobqdfpwvmjelqnilvqmfzpjgfabq@kj`bdlklojgbzDfmfqbosbppbdf/%rvlw8bmjnbwfeffojmdbqqjufgsbppjmdmbwvqboqlvdkoz-\t\tWkf#avw#mlwgfmpjwzAqjwbjm@kjmfpfob`h#lewqjavwfJqfobmg!#gbwb.eb`wlqpqf`fjufwkbw#jpOjaqbqzkvpabmgjm#eb`wbeebjqp@kbqofpqbgj`boaqlvdkwejmgjmdobmgjmd9obmd>!qfwvqm#ofbgfqpsobmmfgsqfnjvnsb`hbdfBnfqj`bFgjwjlm^%rvlw8Nfppbdfmffg#wlubovf>!`lnsof{ollhjmdpwbwjlmafojfufpnboofq.nlajofqf`lqgptbmw#wlhjmg#leEjqfel{zlv#bqfpjnjobqpwvgjfgnb{jnvnkfbgjmdqbsjgoz`ojnbwfhjmdglnfnfqdfgbnlvmwpelvmgfgsjlmffqelqnvobgzmbpwzklt#wl#Pvsslqwqfufmvff`lmlnzQfpvowpaqlwkfqplogjfqobqdfoz`boojmd-%rvlw8B``lvmwFgtbqg#pfdnfmwQlafqw#feelqwpSb`jej`ofbqmfgvs#tjwkkfjdkw9tf#kbufBmdfofpmbwjlmp\\pfbq`kbssojfgb`rvjqfnbppjufdqbmwfg9#ebopfwqfbwfgajddfpwafmfejwgqjujmdPwvgjfpnjmjnvnsfqkbspnlqmjmdpfoojmdjp#vpfgqfufqpfubqjbmw#qlof>!njppjmdb`kjfufsqlnlwfpwvgfmwplnflmff{wqfnfqfpwlqfalwwln9fuloufgboo#wkfpjwfnbsfmdojpktbz#wl##Bvdvpwpznalop@lnsbmznbwwfqpnvpj`bobdbjmpwpfqujmd~*+*8\x0e\tsbznfmwwqlvaof`lm`fsw`lnsbqfsbqfmwpsobzfqpqfdjlmpnlmjwlq#$$Wkf#tjmmjmdf{solqfbgbswfgDboofqzsqlgv`fbajojwzfmkbm`f`bqffqp*-#Wkf#`loof`wPfbq`k#bm`jfmwf{jpwfgellwfq#kbmgofqsqjmwfg`lmplofFbpwfqmf{slqwptjmgltp@kbmmfojoofdbomfvwqbopvddfpw\\kfbgfqpjdmjmd-kwno!=pfwwofgtfpwfqm`bvpjmd.tfahjw`objnfgIvpwj`f`kbswfquj`wjnpWklnbp#nlyjoobsqlnjpfsbqwjfpfgjwjlmlvwpjgf9ebopf/kvmgqfgLoznsj`\\avwwlmbvwklqpqfb`kfg`kqlmj`gfnbmgppf`lmgpsqlwf`wbglswfgsqfsbqfmfjwkfqdqfbwozdqfbwfqlufqboojnsqluf`lnnbmgpsf`jbopfbq`k-tlqpkjsevmgjmdwklvdkwkjdkfpwjmpwfbgvwjojwzrvbqwfq@vowvqfwfpwjmd`ofbqozf{slpfgAqltpfqojafqbo~#`bw`kSqlif`wf{bnsofkjgf+*8EolqjgbbmptfqpbooltfgFnsfqlqgfefmpfpfqjlvpeqffglnPfufqbo.avwwlmEvqwkfqlvw#le#">#mvoowqbjmfgGfmnbqhuljg+3*,boo-ipsqfufmwQfrvfpwPwfskfm\t\tTkfm#lapfquf?,k1=\x0e\tNlgfqm#sqlujgf!#bow>!alqgfqp-\t\tElq#\t\tNbmz#bqwjpwpsltfqfgsfqelqnej`wjlmwzsf#lenfgj`bowj`hfwplsslpfg@lvm`jotjwmfppivpwj`fDflqdf#Afodjvn---?,b=wtjwwfqmlwbaoztbjwjmdtbqebqf#Lwkfq#qbmhjmdskqbpfpnfmwjlmpvqujufp`klobq?,s=\x0e\t#@lvmwqzjdmlqfgolpp#leivpw#bpDflqdjbpwqbmdf?kfbg=?pwlssfg2$^*8\x0e\tjpobmgpmlwbaofalqgfq9ojpw#le`bqqjfg233/333?,k0=\t#pfufqboaf`lnfppfof`w#tfggjmd33-kwnonlmbq`klee#wkfwfb`kfqkjdkoz#ajloldzojef#lelq#fufmqjpf#le%qbrvl8sovplmfkvmwjmd+wklvdkGlvdobpiljmjmd`jq`ofpElq#wkfBm`jfmwUjfwmbnufkj`ofpv`k#bp`qzpwboubovf#>Tjmgltpfmilzfgb#pnboobppvnfg?b#jg>!elqfjdm#Boo#qjklt#wkfGjpsobzqfwjqfgkltfufqkjggfm8abwwofppffhjmd`bajmfwtbp#mlwollh#bw`lmgv`wdfw#wkfIbmvbqzkbssfmpwvqmjmdb9klufqLmojmf#Eqfm`k#ob`hjmdwzsj`bof{wqb`wfmfnjfpfufm#jedfmfqbwgf`jgfgbqf#mlw,pfbq`kafojfep.jnbdf9ol`bwfgpwbwj`-oldjm!=`lmufqwujlofmwfmwfqfgejqpw!=`jq`vjwEjmobmg`kfnjpwpkf#tbp23s{8!=bp#pv`kgjujgfg?,psbm=tjoo#afojmf#leb#dqfbwnzpwfqz,jmgf{-eboojmdgvf#wl#qbjotbz`loofdfnlmpwfqgfp`fmwjw#tjwkmv`ofbqIftjpk#sqlwfpwAqjwjpkeoltfqpsqfgj`wqfelqnpavwwlm#tkl#tbpof`wvqfjmpwbmwpvj`jgfdfmfqj`sfqjlgpnbqhfwpPl`jbo#ejpkjmd`lnajmfdqbskj`tjmmfqp?aq#,=?az#wkf#MbwvqboSqjub`z`llhjfplvw`lnfqfploufPtfgjpkaqjfeozSfqpjbmpl#nv`k@fmwvqzgfsj`wp`lovnmpklvpjmdp`qjswpmf{w#wlafbqjmdnbssjmdqfujpfgiRvfqz+.tjgwk9wjwof!=wllowjsPf`wjlmgfpjdmpWvqhjpkzlvmdfq-nbw`k+~*+*8\t\tavqmjmdlsfqbwfgfdqffpplvq`f>Qj`kbqg`olpfozsobpwj`fmwqjfp?,wq=\x0e\t`lolq9 vo#jg>!slppfppqloojmdskzpj`pebjojmdf{f`vwf`lmwfpwojmh#wlGfebvow?aq#,=\t9#wqvf/`kbqwfqwlvqjpn`obppj`sql`ffgf{sobjm?,k2=\x0e\tlmojmf-<{no#ufkfosjmdgjbnlmgvpf#wkfbjqojmffmg#..=*-bwwq+qfbgfqpklpwjmd eeeeeeqfbojyfUjm`fmwpjdmbop#pq`>!,Sqlgv`wgfpsjwfgjufqpfwfoojmdSvaoj`#kfog#jmIlpfsk#wkfbwqfbeef`wp?pwzof=b#obqdfglfpm$wobwfq/#Fofnfmwebuj`lm`qfbwlqKvmdbqzBjqslqwpff#wkfpl#wkbwNj`kbfoPzpwfnpSqldqbnp/#bmg##tjgwk>f%rvlw8wqbgjmdofew!=\tsfqplmpDlogfm#Beebjqpdqbnnbqelqnjmdgfpwqlzjgfb#le`bpf#lelogfpw#wkjp#jp-pq`#>#`bqwllmqfdjpwq@lnnlmpNvpojnpTkbw#jpjm#nbmznbqhjmdqfufbopJmgffg/frvbooz,pklt\\blvwgllqfp`bsf+Bvpwqjbdfmfwj`pzpwfn/Jm#wkf#pjwwjmdKf#boplJpobmgpB`bgfnz\t\n\n?"..Gbmjfo#ajmgjmdaol`h!=jnslpfgvwjojyfBaqbkbn+f{`fswxtjgwk9svwwjmd*-kwno+\x7f\x7f#X^8\tGBWBX#)hjw`kfmnlvmwfgb`wvbo#gjbof`wnbjmoz#\\aobmh$jmpwboof{sfqwpje+wzsfJw#bopl%`lsz8#!=Wfqnpalqm#jmLswjlmpfbpwfqmwbohjmd`lm`fqmdbjmfg#lmdljmdivpwjez`qjwj`peb`wlqzjwp#ltmbppbvowjmujwfgobpwjmdkjp#ltmkqfe>!,!#qfo>!gfufols`lm`fqwgjbdqbngloobqp`ovpwfqsksbo`lklo*8~*+*8vpjmd#b=?psbm=ufppfopqfujuboBggqfppbnbwfvqbmgqljgboofdfgjoomfpptbohjmd`fmwfqprvbojeznbw`kfpvmjejfgf{wjm`wGfefmpfgjfg#jm\t\n?"..#`vpwlnpojmhjmdOjwwof#Allh#lefufmjmdnjm-iptfbqjmdBoo#Qjd8\t~*+*8qbjpjmd#Bopl/#`qv`jbobalvw!=gf`obqf..=\t?p`ejqfel{bp#nv`kbssojfpjmgf{/#p/#avw#wzsf#>#\t\x0e\t?"..wltbqgpQf`lqgpSqjubwfElqfjdmSqfnjfq`klj`fpUjqwvboqfwvqmp@lnnfmwSltfqfgjmojmf8slufqwz`kbnafqOjujmd#ulovnfpBmwklmzoldjm!#QfobwfgF`lmlnzqfb`kfp`vwwjmddqbujwzojef#jm@kbswfq.pkbgltMlwbaof?,wg=\x0e\t#qfwvqmpwbgjvntjgdfwpubqzjmdwqbufopkfog#aztkl#bqftlqh#jmeb`vowzbmdvobqtkl#kbgbjqslqwwltm#le\t\tPlnf#$`oj`h$`kbqdfphfztlqgjw#tjoo`jwz#le+wkjp*8Bmgqft#vmjrvf#`kf`hfglq#nlqf033s{8#qfwvqm8qpjlm>!sovdjmptjwkjm#kfqpfoePwbwjlmEfgfqboufmwvqfsvaojpkpfmw#wlwfmpjlmb`wqfpp`lnf#wlejmdfqpGvhf#lesflsof/f{soljwtkbw#jpkbqnlmzb#nbilq!9!kwwsjm#kjp#nfmv!=\tnlmwkozleej`fq`lvm`jodbjmjmdfufm#jmPvnnbqzgbwf#leolzbowzejwmfppbmg#tbpfnsfqlqpvsqfnfPf`lmg#kfbqjmdQvppjbmolmdfpwBoafqwbobwfqbopfw#le#pnboo!=-bssfmggl#tjwkefgfqboabmh#leafmfbwkGfpsjwf@bsjwbodqlvmgp*/#bmg#sfq`fmwjw#eqln`olpjmd`lmwbjmJmpwfbgejewffmbp#tfoo-zbkll-qfpslmgejdkwfqlap`vqfqfeof`wlqdbmj`>#Nbwk-fgjwjmdlmojmf#sbggjmdb#tkloflmfqqlqzfbq#lefmg#le#abqqjfqtkfm#jwkfbgfq#klnf#leqfpvnfgqfmbnfgpwqlmd=kfbwjmdqfwbjmp`olvgeqtbz#le#Nbq`k#2hmltjmdjm#sbqwAfwtffmofpplmp`olpfpwujqwvboojmhp!=`qlppfgFMG#..=ebnlvp#btbqgfgOj`fmpfKfbowk#ebjqoz#tfbowkznjmjnboBeqj`bm`lnsfwfobafo!=pjmdjmdebqnfqpAqbpjo*gjp`vppqfsob`fDqfdlqzelmw#`lsvqpvfgbssfbqpnbhf#vsqlvmgfgalwk#leaol`hfgpbt#wkfleej`fp`lolvqpje+gl`vtkfm#kffmelq`fsvpk+evBvdvpw#VWE.;!=Ebmwbpzjm#nlpwjmivqfgVpvboozebqnjmd`olpvqflaif`w#gfefm`fvpf#le#Nfgj`bo?algz=\tfujgfmwaf#vpfghfz@lgfpj{wffmJpobnj` 333333fmwjqf#tjgfoz#b`wjuf#+wzsflelmf#`bm`lolq#>psfbhfqf{wfmgpSkzpj`pwfqqbjm?walgz=evmfqboujftjmdnjggof#`qj`hfwsqlskfwpkjewfggl`wlqpQvppfoo#wbqdfw`lnsb`wbodfaqbpl`jbo.avoh#lenbm#bmg?,wg=\t#kf#ofew*-ubo+*ebopf*8oldj`boabmhjmdklnf#wlmbnjmd#Bqjylmb`qfgjwp*8\t~*8\telvmgfqjm#wvqm@loojmpafelqf#Avw#wkf`kbqdfgWjwof!=@bswbjmpsfoofgdlggfppWbd#..=Bggjmd9avw#tbpQf`fmw#sbwjfmwab`h#jm>ebopf%Ojm`lomtf#hmlt@lvmwfqIvgbjpnp`qjsw#bowfqfg$^*8\t##kbp#wkfvm`ofbqFufmw$/alwk#jmmlw#boo\t\t?"..#sob`jmdkbqg#wl#`fmwfqplqw#le`ojfmwppwqffwpAfqmbqgbppfqwpwfmg#wlebmwbpzgltm#jmkbqalvqEqffglniftfoqz,balvw--pfbq`kofdfmgpjp#nbgfnlgfqm#lmoz#lmlmoz#wljnbdf!#ojmfbq#sbjmwfqbmg#mlwqbqfoz#b`qlmzngfojufqpklqwfq33%bns8bp#nbmztjgwk>!,)#?"X@wjwof#>le#wkf#oltfpw#sj`hfg#fp`bsfgvpfp#lesflsofp#Svaoj`Nbwwkftwb`wj`pgbnbdfgtbz#elqobtp#lefbpz#wl#tjmgltpwqlmd##pjnsof~`bw`k+pfufmwkjmelal{tfmw#wlsbjmwfg`jwjyfmJ#glm$wqfwqfbw-#Plnf#tt-!*8\talnajmdnbjowl9nbgf#jm-#Nbmz#`bqqjfp\x7f\x7fx~8tjtlqh#lepzmlmzngfefbwpebulqfglswj`bosbdfWqbvmofpp#pfmgjmdofew!=?`lnP`lqBoo#wkfiRvfqz-wlvqjpw@obppj`ebopf!#Tjokfonpvavqapdfmvjmfajpklsp-psojw+dolabo#elooltpalgz#lemlnjmbo@lmwb`wpf`vobqofew#wl`kjfeoz.kjggfm.abmmfq?,oj=\t\t-#Tkfm#jm#alwkgjpnjppF{solqfbotbzp#ujb#wkfpsb/]lotfoebqfqvojmd#bqqbmdf`bswbjmkjp#plmqvof#lekf#wllhjwpfoe/>3%bns8+`boofgpbnsofpwl#nbhf`ln,sbdNbqwjm#Hfmmfgzb``fswpevoo#lekbmgofgAfpjgfp,,..=?,baof#wlwbqdfwpfppfm`fkjn#wl#jwp#az#`lnnlm-njmfqbowl#wbhftbzp#wlp-lqd,obgujpfgsfmbowzpjnsof9je#wkfzOfwwfqpb#pklqwKfqafqwpwqjhfp#dqlvsp-ofmdwkeojdkwplufqobspoltoz#ofppfq#pl`jbo#?,s=\t\n\njw#jmwlqbmhfg#qbwf#levo=\x0e\t##bwwfnswsbjq#lenbhf#jwHlmwbhwBmwlmjlkbujmd#qbwjmdp#b`wjufpwqfbnpwqbssfg!*-`pp+klpwjofofbg#wlojwwof#dqlvsp/Sj`wvqf..=\x0e\t\x0e\t#qltp>!#laif`wjmufqpf?ellwfq@vpwlnU=?_,p`qploujmd@kbnafqpobufqztlvmgfgtkfqfbp">#$vmgelq#boosbqwoz#.qjdkw9Bqbajbmab`hfg#`fmwvqzvmjw#lenlajof.Fvqlsf/jp#klnfqjph#legfpjqfg@ojmwlm`lpw#lebdf#le#af`lnf#mlmf#les%rvlw8Njggof#fbg$*X3@qjwj`ppwvgjlp=%`lsz8dqlvs!=bppfnaonbhjmd#sqfppfgtjgdfw-sp9!#<#qfavjowaz#plnfElqnfq#fgjwlqpgfobzfg@bmlmj`kbg#wkfsvpkjmd`obpp>!avw#bqfsbqwjboAbazolmalwwln#`bqqjfq@lnnbmgjwp#vpfBp#tjwk`lvqpfpb#wkjqggfmlwfpbopl#jmKlvpwlm13s{8!=b``vpfgglvaof#dlbo#leEbnlvp#*-ajmg+sqjfpwp#Lmojmfjm#Ivozpw#(#!d`lmpvowgf`jnbokfosevoqfujufgjp#ufqzq$($jswolpjmd#efnbofpjp#boplpwqjmdpgbzp#lebqqjuboevwvqf#?laif`welq`jmdPwqjmd+!#,=\t\n\nkfqf#jpfm`lgfg-##Wkf#aboollmglmf#az,`lnnlmad`lolqobt#le#Jmgjbmbbuljgfgavw#wkf1s{#0s{irvfqz-bewfq#bsloj`z-nfm#bmgellwfq.>#wqvf8elq#vpfp`qffm-Jmgjbm#jnbdf#>ebnjoz/kwws9,,#%maps8gqjufqpfwfqmbopbnf#bpmlwj`fgujftfqp~*+*8\t#jp#nlqfpfbplmpelqnfq#wkf#mftjp#ivpw`lmpfmw#Pfbq`ktbp#wkftkz#wkfpkjssfgaq=?aq=tjgwk9#kfjdkw>nbgf#le`vjpjmfjp#wkbwb#ufqz#Bgnjqbo#ej{fg8mlqnbo#NjppjlmSqfpp/#lmwbqjl`kbqpfwwqz#wl#jmubgfg>!wqvf!psb`jmdjp#nlpwb#nlqf#wlwboozeboo#le~*8\x0e\t##jnnfmpfwjnf#jmpfw#lvwpbwjpezwl#ejmggltm#wlolw#le#Sobzfqpjm#Ivmfrvbmwvnmlw#wkfwjnf#wlgjpwbmwEjmmjpkpq`#>#+pjmdof#kfos#leDfqnbm#obt#bmgobafofgelqfpwp`llhjmdpsb`f!=kfbgfq.tfoo#bpPwbmofzaqjgdfp,dolabo@qlbwjb#Balvw#X3^8\t##jw/#bmgdqlvsfgafjmd#b*xwkqltkf#nbgfojdkwfqfwkj`boEEEEEE!alwwln!ojhf#b#fnsolzpojuf#jmbp#pffmsqjmwfqnlpw#leva.ojmhqfif`wpbmg#vpfjnbdf!=pv``ffgeffgjmdMv`ofbqjmelqnbwl#kfosTlnfm$pMfjwkfqNf{j`bmsqlwfjm?wbaof#az#nbmzkfbowkzobtpvjwgfujpfg-svpk+xpfoofqppjnsoz#Wkqlvdk-`llhjf#Jnbdf+logfq!=vp-ip!=#Pjm`f#vmjufqpobqdfq#lsfm#wl"..#fmgojfp#jm$^*8\x0e\t##nbqhfwtkl#jp#+!GLN@lnbmbdfglmf#elqwzsfle#Hjmdglnsqlejwpsqlslpfwl#pklt`fmwfq8nbgf#jwgqfppfgtfqf#jmnj{wvqfsqf`jpfbqjpjmdpq`#>#$nbhf#b#pf`vqfgAbswjpwulwjmd#\t\n\nubq#Nbq`k#1dqft#vs@ojnbwf-qfnlufphjoofgtbz#wkf?,kfbg=eb`f#leb`wjmd#qjdkw!=wl#tlqhqfgv`fpkbp#kbgfqf`wfgpklt+*8b`wjlm>allh#lebm#bqfb>>#!kww?kfbgfq\t?kwno=`lmelqneb`jmd#`llhjf-qfoz#lmklpwfg#-`vpwlnkf#tfmwavw#elqpsqfbg#Ebnjoz#b#nfbmplvw#wkfelqvnp-ellwbdf!=Nlajo@ofnfmwp!#jg>!bp#kjdkjmwfmpf..=?"..efnbof#jp#pffmjnsojfgpfw#wkfb#pwbwfbmg#kjpebpwfpwafpjgfpavwwlm\\alvmgfg!=?jnd#Jmelal{fufmwp/b#zlvmdbmg#bqfMbwjuf#`kfbsfqWjnflvwbmg#kbpfmdjmfptlm#wkf+nlpwozqjdkw9#ejmg#b#.alwwlnSqjm`f#bqfb#lenlqf#lepfbq`k\\mbwvqf/ofdboozsfqjlg/obmg#lelq#tjwkjmgv`fgsqlujmdnjppjofol`boozBdbjmpwwkf#tbzh%rvlw8s{8!=\x0e\tsvpkfg#babmglmmvnfqbo@fqwbjmJm#wkjpnlqf#jmlq#plnfmbnf#jpbmg/#jm`qltmfgJPAM#3.`qfbwfpL`wlafqnbz#mlw`fmwfq#obwf#jmGfefm`ffmb`wfgtjpk#wlaqlbgoz`llojmdlmolbg>jw-#Wkfqf`lufqNfnafqpkfjdkw#bppvnfp?kwno=\tsflsof-jm#lmf#>tjmgltellwfq\\b#dllg#qfhobnblwkfqp/wl#wkjp\\`llhjfsbmfo!=Olmglm/gfejmfp`qvpkfgabswjpn`lbpwbopwbwvp#wjwof!#nluf#wlolpw#jmafwwfq#jnsojfpqjuboqzpfqufqp#PzpwfnSfqkbspfp#bmg#`lmwfmgeoltjmdobpwfg#qjpf#jmDfmfpjpujft#leqjpjmd#pffn#wlavw#jm#ab`hjmdkf#tjoodjufm#bdjujmd#`jwjfp-eolt#le#Obwfq#boo#avwKjdktbzlmoz#azpjdm#lekf#glfpgjeefqpabwwfqz%bns8obpjmdofpwkqfbwpjmwfdfqwbhf#lmqfevpfg`boofg#>VP%bnsPff#wkfmbwjufpaz#wkjppzpwfn-kfbg#le9klufq/ofpajbmpvqmbnfbmg#boo`lnnlm,kfbgfq\\\\sbqbnpKbqubqg,sj{fo-qfnlubopl#olmdqlof#leiljmwozphzp`qbVmj`lgfaq#,=\x0e\tBwobmwbmv`ofvp@lvmwz/svqfoz#`lvmw!=fbpjoz#avjog#blm`oj`hb#djufmsljmwfqk%rvlw8fufmwp#fopf#x\tgjwjlmpmlt#wkf/#tjwk#nbm#tkllqd,Tfalmf#bmg`buboqzKf#gjfgpfbwwof33/333#xtjmgltkbuf#wlje+tjmgbmg#jwpplofoz#n%rvlw8qfmftfgGfwqljwbnlmdpwfjwkfq#wkfn#jmPfmbwlqVp?,b=?Hjmd#leEqbm`jp.sqlgv`kf#vpfgbqw#bmgkjn#bmgvpfg#azp`lqjmdbw#klnfwl#kbufqfobwfpjajojwzeb`wjlmAveebolojmh!=?tkbw#kfeqff#wl@jwz#le`lnf#jmpf`wlqp`lvmwfglmf#gbzmfqulvpprvbqf#~8je+dljm#tkbwjnd!#bojp#lmozpfbq`k,wvfpgbzollpfozPlolnlmpf{vbo#.#?b#kqnfgjvn!GL#MLW#Eqbm`f/tjwk#b#tbq#bmgpf`lmg#wbhf#b#=\x0e\t\x0e\t\x0e\tnbqhfw-kjdktbzglmf#jm`wjujwz!obpw!=laojdfgqjpf#wl!vmgfejnbgf#wl#Fbqoz#sqbjpfgjm#jwp#elq#kjpbwkofwfIvsjwfqZbkll"#wfqnfg#pl#nbmzqfbooz#p-#Wkf#b#tlnbmgjqf`w#qjdkw!#aj`z`ofb`jmd>!gbz#bmgpwbwjmdQbwkfq/kjdkfq#Leej`f#bqf#mltwjnfp/#tkfm#b#sbz#elqlm#wkjp.ojmh!=8alqgfqbqlvmg#bmmvbo#wkf#Mftsvw#wkf-`ln!#wbhjm#wlb#aqjfe+jm#wkfdqlvsp-8#tjgwkfmyznfppjnsof#jm#obwfxqfwvqmwkfqbszb#sljmwabmmjmdjmhp!=\t+*8!#qfb#sob`f_v330@bbalvw#bwq=\x0e\t\n\n``lvmw#djufp#b?P@QJSWQbjotbzwkfnfp,wlloal{AzJg+!{kvnbmp/tbw`kfpjm#plnf#je#+tj`lnjmd#elqnbwp#Vmgfq#avw#kbpkbmgfg#nbgf#azwkbm#jmefbq#legfmlwfg,jeqbnfofew#jmulowbdfjm#fb`kb%rvlw8abpf#leJm#nbmzvmgfqdlqfdjnfpb`wjlm#?,s=\x0e\t?vpwlnUb8%dw8?,jnslqwplq#wkbwnlpwoz#%bns8qf#pjyf>!?,b=?,kb#`obppsbppjufKlpw#>#TkfwkfqefqwjofUbqjlvp>X^8+ev`bnfqbp,=?,wg=b`wp#bpJm#plnf=\x0e\t\x0e\t?"lqdbmjp#?aq#,=Afjijmd`bwbo/Lgfvwp`kfvqlsfvfvphbqbdbfjodfpufmphbfpsb/]bnfmpbifvpvbqjlwqbabiln/E{j`ls/Mdjmbpjfnsqfpjpwfnbl`wvaqfgvqbmwfb/]bgjqfnsqfpbnlnfmwlmvfpwqlsqjnfqbwqbu/Epdqb`jbpmvfpwqbsql`fplfpwbglp`bojgbgsfqplmbm/Vnfqlb`vfqgln/Vpj`bnjfnaqllefqwbpbodvmlpsb/Apfpfifnsolgfqf`klbgfn/Mpsqjubglbdqfdbqfmob`fpslpjaofklwfofppfujoobsqjnfql/Vowjnlfufmwlpbq`kjul`vowvqbnvifqfpfmwqbgbbmvm`jlfnabqdlnfq`bgldqbmgfpfpwvgjlnfilqfpefaqfqlgjpf/]lwvqjpnl`/_gjdlslqwbgbfpsb`jlebnjojbbmwlmjlsfqnjwfdvbqgbqbodvmbpsqf`jlpbodvjfmpfmwjglujpjwbpw/Awvol`lml`fqpfdvmgl`lmpfileqbm`jbnjmvwlppfdvmgbwfmfnlpfef`wlpn/Mobdbpfpj/_mqfujpwbdqbmbgb`lnsqbqjmdqfpldbq`/Abb``j/_mf`vbglqrvjfmfpjm`ovplgfafq/Mnbwfqjbklnaqfpnvfpwqbslgq/Abnb/]bmb/Vowjnbfpwbnlplej`jbowbnajfmmjmd/Vmpbovglpslgfnlpnfilqbqslpjwjlmavpjmfppklnfsbdfpf`vqjwzobmdvbdfpwbmgbqg`bnsbjdmefbwvqfp`bwfdlqzf{wfqmbo`kjogqfmqfpfqufgqfpfbq`kf{`kbmdfebulqjwfwfnsobwfnjojwbqzjmgvpwqzpfquj`fpnbwfqjbosqlgv`wpy.jmgf{9`lnnfmwpplewtbqf`lnsofwf`bofmgbqsobwelqnbqwj`ofpqfrvjqfgnlufnfmwrvfpwjlmavjogjmdslojwj`pslppjaofqfojdjlmskzpj`boeffgab`hqfdjpwfqsj`wvqfpgjpbaofgsqlwl`lobvgjfm`fpfwwjmdpb`wjujwzfofnfmwpofbqmjmdbmzwkjmdbapwqb`wsqldqfpplufqujftnbdbyjmff`lmlnj`wqbjmjmdsqfppvqfubqjlvp#?pwqlmd=sqlsfqwzpklssjmdwldfwkfqbgubm`fgafkbujlqgltmolbgefbwvqfgellwaboopfof`wfgObmdvbdfgjpwbm`fqfnfnafqwqb`hjmdsbpptlqgnlgjejfgpwvgfmwpgjqf`wozejdkwjmdmlqwkfqmgbwbabpfefpwjuboaqfbhjmdol`bwjlmjmwfqmfwgqlsgltmsqb`wj`ffujgfm`fevm`wjlmnbqqjbdfqfpslmpfsqlaofnpmfdbwjufsqldqbnpbmbozpjpqfofbpfgabmmfq!=svq`kbpfsloj`jfpqfdjlmbo`qfbwjufbqdvnfmwallhnbqhqfefqqfq`kfnj`bogjujpjlm`booab`hpfsbqbwfsqlif`wp`lmeoj`wkbqgtbqfjmwfqfpwgfojufqznlvmwbjmlawbjmfg>#ebopf8elq+ubq#b``fswfg`bsb`jwz`lnsvwfqjgfmwjwzbjq`qbewfnsolzfgsqlslpfgglnfpwj`jm`ovgfpsqlujgfgklpsjwboufqwj`bo`loobspfbssqlb`ksbqwmfqpoldl!=?bgbvdkwfqbvwklq!#`vowvqboebnjojfp,jnbdfp,bppfnaozsltfqevowfb`kjmdejmjpkfggjpwqj`w`qjwj`bo`dj.ajm,svqslpfpqfrvjqfpfof`wjlmaf`lnjmdsqlujgfpb`bgfnj`f{fq`jpfb`wvbooznfgj`jmf`lmpwbmwb``jgfmwNbdbyjmfgl`vnfmwpwbqwjmdalwwln!=lapfqufg9#%rvlw8f{wfmgfgsqfujlvpPlewtbqf`vpwlnfqgf`jpjlmpwqfmdwkgfwbjofgpojdkwozsobmmjmdwf{wbqfb`vqqfm`zfufqzlmfpwqbjdkwwqbmpefqslpjwjufsqlgv`fgkfqjwbdfpkjssjmdbaplovwfqf`fjufgqfofubmwavwwlm!#ujlofm`fbmztkfqfafmfejwpobvm`kfgqf`fmwozboojbm`felooltfgnvowjsofavoofwjmjm`ovgfgl``vqqfgjmwfqmbo\'+wkjp*-qfsvaoj`=?wq=?wg`lmdqfppqf`lqgfgvowjnbwfplovwjlm?vo#jg>!gjp`lufqKlnf?,b=tfapjwfpmfwtlqhpbowklvdkfmwjqfoznfnlqjbonfppbdfp`lmwjmvfb`wjuf!=plnftkbwuj`wlqjbTfpwfqm##wjwof>!Ol`bwjlm`lmwqb`wujpjwlqpGltmolbgtjwklvw#qjdkw!=\tnfbpvqfptjgwk#>#ubqjbaofjmuloufgujqdjmjbmlqnboozkbssfmfgb``lvmwppwbmgjmdmbwjlmboQfdjpwfqsqfsbqfg`lmwqlopb``vqbwfajqwkgbzpwqbwfdzleej`jbodqbskj`p`qjnjmboslppjaoz`lmpvnfqSfqplmbopsfbhjmdubojgbwfb`kjfufg-isd!#,=nb`kjmfp?,k1=\t##hfztlqgpeqjfmgozaqlwkfqp`lnajmfglqjdjmbo`lnslpfgf{sf`wfgbgfrvbwfsbhjpwbmeloolt!#ubovbaof?,obafo=qfobwjufaqjmdjmdjm`qfbpfdlufqmlqsovdjmp,Ojpw#le#Kfbgfq!=!#mbnf>!#+%rvlw8dqbgvbwf?,kfbg=\t`lnnfq`fnbobzpjbgjqf`wlqnbjmwbjm8kfjdkw9p`kfgvof`kbmdjmdab`h#wl#`bwkloj`sbwwfqmp`lolq9# dqfbwfpwpvssojfpqfojbaof?,vo=\t\n\n?pfof`w#`jwjyfmp`olwkjmdtbw`kjmd?oj#jg>!psf`jej``bqqzjmdpfmwfm`f?`fmwfq=`lmwqbpwwkjmhjmd`bw`k+f*plvwkfqmNj`kbfo#nfq`kbmw`bqlvpfosbggjmd9jmwfqjlq-psojw+!ojybwjlmL`wlafq#*xqfwvqmjnsqlufg..%dw8\t\t`lufqbdf`kbjqnbm-smd!#,=pvaif`wpQj`kbqg#tkbwfufqsqlabaozqf`lufqzabpfabooivgdnfmw`lmmf`w--`pp!#,=#tfapjwfqfslqwfggfebvow!,=?,b=\x0e\tfof`wqj`p`lwobmg`qfbwjlmrvbmwjwz-#JPAM#3gjg#mlw#jmpwbm`f.pfbq`k.!#obmd>!psfbhfqp@lnsvwfq`lmwbjmpbq`kjufpnjmjpwfqqfb`wjlmgjp`lvmwJwbojbml`qjwfqjbpwqlmdoz9#$kwws9$p`qjsw$`lufqjmdleefqjmdbssfbqfgAqjwjpk#jgfmwjezEb`fallhmvnfqlvpufkj`ofp`lm`fqmpBnfqj`bmkbmgojmdgju#jg>!Tjoojbn#sqlujgfq\\`lmwfmwb``vqb`zpf`wjlm#bmgfqplmeof{jaof@bwfdlqzobtqfm`f?p`qjsw=obzlvw>!bssqlufg#nb{jnvnkfbgfq!=?,wbaof=Pfquj`fpkbnjowlm`vqqfmw#`bmbgjbm`kbmmfop,wkfnfp,,bqwj`oflswjlmboslqwvdboubovf>!!jmwfqubotjqfofppfmwjwofgbdfm`jfpPfbq`k!#nfbpvqfgwklvpbmgpsfmgjmd%kfoojs8mft#Gbwf!#pjyf>!sbdfMbnfnjggof!#!#,=?,b=kjggfm!=pfrvfm`fsfqplmbolufqeoltlsjmjlmpjoojmljpojmhp!=\t\n?wjwof=ufqpjlmppbwvqgbzwfqnjmbojwfnsqlsfmdjmffqpf`wjlmpgfpjdmfqsqlslpbo>!ebopf!Fpsb/]loqfofbpfppvanjw!#fq%rvlw8bggjwjlmpznswlnplqjfmwfgqfplvq`fqjdkw!=?sofbpvqfpwbwjlmpkjpwlqz-ofbujmd##alqgfq>`lmwfmwp`fmwfq!=-\t\tPlnf#gjqf`wfgpvjwbaofavodbqjb-pklt+*8gfpjdmfgDfmfqbo#`lm`fswpF{bnsofptjoojbnpLqjdjmbo!=?psbm=pfbq`k!=lsfqbwlqqfrvfpwpb#%rvlw8booltjmdGl`vnfmwqfujpjlm-#\t\tWkf#zlvqpfoe@lmwb`w#nj`kjdbmFmdojpk#`lovnajbsqjlqjwzsqjmwjmdgqjmhjmdeb`jojwzqfwvqmfg@lmwfmw#leej`fqpQvppjbm#dfmfqbwf.;;6:.2!jmgj`bwfebnjojbq#rvbojwznbqdjm93#`lmwfmwujftslqw`lmwb`wp.wjwof!=slqwbaof-ofmdwk#fojdjaofjmuloufpbwobmwj`lmolbg>!gfebvow-pvssojfgsbznfmwpdolppbqz\t\tBewfq#dvjgbm`f?,wg=?wgfm`lgjmdnjggof!=`bnf#wl#gjpsobzpp`lwwjpkilmbwkbmnbilqjwztjgdfwp-`ojmj`bowkbjobmgwfb`kfqp?kfbg=\t\nbeef`wfgpvsslqwpsljmwfq8wlPwqjmd?,pnboo=lhobklnbtjoo#af#jmufpwlq3!#bow>!klojgbzpQfplvq`foj`fmpfg#+tkj`k#-#Bewfq#`lmpjgfqujpjwjmdf{solqfqsqjnbqz#pfbq`k!#bmgqljg!rvj`hoz#nffwjmdpfpwjnbwf8qfwvqm#8`lolq9 #kfjdkw>bssqlubo/#%rvlw8#`kf`hfg-njm-ip!nbdmfwj`=?,b=?,kelqf`bpw-#Tkjof#wkvqpgbzgufqwjpf%fb`vwf8kbp@obppfubovbwflqgfqjmdf{jpwjmdsbwjfmwp#Lmojmf#`lolqbglLswjlmp!`bnsafoo?"..#fmg?,psbm=??aq#,=\x0e\t\\slsvsp\x7fp`jfm`fp/%rvlw8#rvbojwz#Tjmgltp#bppjdmfgkfjdkw9#?a#`obppof%rvlw8#ubovf>!#@lnsbmzf{bnsofp?jeqbnf#afojfufpsqfpfmwpnbqpkboosbqw#le#sqlsfqoz*-\t\tWkf#wb{lmlnznv`k#le#?,psbm=\t!#gbwb.pqwvdv/Fpp`qlooWl#sqlif`w?kfbg=\x0e\tbwwlqmfzfnskbpjppslmplqpebm`zal{tlqog$p#tjogojef`kf`hfg>pfppjlmpsqldqbnns{8elmw.#Sqlif`wilvqmbopafojfufgub`bwjlmwklnsplmojdkwjmdbmg#wkf#psf`jbo#alqgfq>3`kf`hjmd?,walgz=?avwwlm#@lnsofwf`ofbqej{\t?kfbg=\tbqwj`of#?pf`wjlmejmgjmdpqlof#jm#slsvobq##L`wlafqtfapjwf#f{slpvqfvpfg#wl##`kbmdfplsfqbwfg`oj`hjmdfmwfqjmd`lnnbmgpjmelqnfg#mvnafqp##?,gju=`qfbwjmdlmPvanjwnbqzobmg`loofdfpbmbozwj`ojpwjmdp`lmwb`w-olddfgJmbgujplqzpjaojmdp`lmwfmw!p%rvlw8*p-#Wkjp#sb`hbdfp`kf`hal{pvddfpwpsqfdmbmwwlnlqqltpsb`jmd>j`lm-smdibsbmfpf`lgfabpfavwwlm!=dbnaojmdpv`k#bp#/#tkjof#?,psbm=#njpplvqjpslqwjmdwls92s{#-?,psbm=wfmpjlmptjgwk>!1obyzolbgmlufnafqvpfg#jm#kfjdkw>!`qjsw!=\t%maps8?,?wq=?wg#kfjdkw91,sqlgv`w`lvmwqz#jm`ovgf#ellwfq!#%ow8"..#wjwof!=?,irvfqz-?,elqn=\t+\vBl\bQ\x7f*+\vUm\x05Gx*kqubwphjjwbojbmlqln/Nm(ow/Pqh/Kf4K4]4C5dwbnaj/Emmlwj`jbpnfmpbifpsfqplmbpgfqf`klpmb`jlmbopfquj`jl`lmwb`wlvpvbqjlpsqldqbnbdlajfqmlfnsqfpbpbmvm`jlpubofm`jb`lolnajbgfpsv/Epgfslqwfpsqlzf`wlsqlgv`wls/Vaoj`lmlplwqlpkjpwlqjbsqfpfmwfnjoolmfpnfgjbmwfsqfdvmwbbmwfqjlqqf`vqplpsqlaofnbpbmwjbdlmvfpwqlplsjmj/_mjnsqjnjqnjfmwqbpbn/Eqj`bufmgfglqpl`jfgbgqfpsf`wlqfbojybqqfdjpwqlsbobaqbpjmwfq/Epfmwlm`fpfpsf`jbonjfnaqlpqfbojgbg`/_qglabybqbdlybs/Mdjmbppl`jbofpaolrvfbqdfpwj/_mborvjofqpjpwfnbp`jfm`jbp`lnsofwlufqpj/_m`lnsofwbfpwvgjlps/Vaoj`blaifwjulboj`bmwfavp`bglq`bmwjgbgfmwqbgbpb``jlmfpbq`kjulppvsfqjlqnbzlq/Abbofnbmjbevm`j/_m/Vowjnlpkb`jfmglbrvfoolpfgj`j/_mefqmbmglbnajfmwfeb`fallhmvfpwqbp`ojfmwfpsql`fplpabpwbmwfsqfpfmwbqfslqwbq`lmdqfplsvaoj`bq`lnfq`jl`lmwqbwli/_ufmfpgjpwqjwlw/E`mj`b`lmivmwlfmfqd/Abwqbabibqbpwvqjbpqf`jfmwfvwjojybqalofw/Ampboubglq`lqqf`wbwqbabilpsqjnfqlpmfdl`jlpojafqwbggfwboofpsbmwboobsq/_{jnlbonfq/Abbmjnbofprvj/Emfp`lqby/_mpf``j/_mavp`bmglls`jlmfpf{wfqjlq`lm`fswlwlgbu/Abdbofq/Abfp`qjajqnfgj`jmboj`fm`jb`lmpvowbbpsf`wlp`q/Awj`bg/_obqfpivpwj`jbgfafq/Mmsfq/Alglmf`fpjwbnbmwfmfqsfrvf/]lqf`jajgbwqjavmbowfmfqjef`bm`j/_m`bmbqjbpgfp`bqdbgjufqplpnboolq`bqfrvjfqfw/E`mj`lgfafq/Abujujfmgbejmbmybpbgfobmwfevm`jlmb`lmpfilpgje/A`jo`jvgbgfpbmwjdvbpbubmybgbw/Eqnjmlvmjgbgfpp/Mm`kfy`bnsb/]bplewlmj`qfujpwbp`lmwjfmfpf`wlqfpnlnfmwlpeb`vowbg`q/Egjwlgjufqpbppvsvfpwleb`wlqfppfdvmglpsfrvf/]b<_!?,pfof`w=Bvpwqbojb!#`obpp>!pjwvbwjlmbvwklqjwzelooltjmdsqjnbqjozlsfqbwjlm`kboofmdfgfufolsfgbmlmznlvpevm`wjlm#evm`wjlmp`lnsbmjfppwqv`wvqfbdqffnfmw!#wjwof>!slwfmwjbofgv`bwjlmbqdvnfmwppf`lmgbqz`lszqjdkwobmdvbdfpf{`ovpjuf`lmgjwjlm?,elqn=\x0e\tpwbwfnfmwbwwfmwjlmAjldqbskz~#fopf#x\tplovwjlmptkfm#wkf#Bmbozwj`pwfnsobwfpgbmdfqlvppbwfoojwfgl`vnfmwpsvaojpkfqjnslqwbmwsqlwlwzsfjmeovfm`f%qbrvl8?,feef`wjufdfmfqboozwqbmpelqnafbvwjevowqbmpslqwlqdbmjyfgsvaojpkfgsqlnjmfmwvmwjo#wkfwkvnambjoMbwjlmbo#-el`vp+*8lufq#wkf#njdqbwjlmbmmlvm`fgellwfq!=\tf{`fswjlmofpp#wkbmf{sfmpjufelqnbwjlmeqbnftlqhwfqqjwlqzmgj`bwjlm`vqqfmwoz`obppMbnf`qjwj`jpnwqbgjwjlmfopftkfqfBof{bmgfqbssljmwfgnbwfqjbopaqlbg`bpwnfmwjlmfgbeejojbwf?,lswjlm=wqfbwnfmwgjeefqfmw,gfebvow-Sqfpjgfmwlm`oj`h>!ajldqbskzlwkfqtjpfsfqnbmfmwEqbm/KbjpKlooztllgf{sbmpjlmpwbmgbqgp?,pwzof=\tqfgv`wjlmGf`fnafq#sqfefqqfg@bnaqjgdflsslmfmwpAvpjmfpp#`lmevpjlm=\t?wjwof=sqfpfmwfgf{sobjmfgglfp#mlw#tlqogtjgfjmwfqeb`fslpjwjlmpmftpsbsfq?,wbaof=\tnlvmwbjmpojhf#wkf#fppfmwjboejmbm`jbopfof`wjlmb`wjlm>!,babmglmfgFgv`bwjlmsbqpfJmw+pwbajojwzvmbaof#wl?,wjwof=\tqfobwjlmpMlwf#wkbwfeej`jfmwsfqelqnfgwtl#zfbqpPjm`f#wkfwkfqfelqftqbssfq!=bowfqmbwfjm`qfbpfgAbwwof#lesfq`fjufgwqzjmd#wlmf`fppbqzslqwqbzfgfof`wjlmpFojybafwk?,jeqbnf=gjp`lufqzjmpvqbm`fp-ofmdwk8ofdfmgbqzDfldqbskz`bmgjgbwf`lqslqbwfplnfwjnfppfquj`fp-jmkfqjwfg?,pwqlmd=@lnnvmjwzqfojdjlvpol`bwjlmp@lnnjwwffavjogjmdpwkf#tlqogml#olmdfqafdjmmjmdqfefqfm`f`bmmlw#afeqfrvfm`zwzsj`boozjmwl#wkf#qfobwjuf8qf`lqgjmdsqfpjgfmwjmjwjboozwf`kmjrvfwkf#lwkfqjw#`bm#aff{jpwfm`fvmgfqojmfwkjp#wjnfwfofsklmfjwfnp`lsfsqb`wj`fpbgubmwbdf*8qfwvqm#Elq#lwkfqsqlujgjmdgfnl`qb`zalwk#wkf#f{wfmpjufpveefqjmdpvsslqwfg`lnsvwfqp#evm`wjlmsqb`wj`bopbjg#wkbwjw#nbz#afFmdojpk?,eqln#wkf#p`kfgvofggltmolbgp?,obafo=\tpvpsf`wfgnbqdjm9#3psjqjwvbo?,kfbg=\t\tnj`qlplewdqbgvboozgjp`vppfgkf#af`bnff{f`vwjufirvfqz-ipklvpfklog`lmejqnfgsvq`kbpfgojwfqboozgfpwqlzfgvs#wl#wkfubqjbwjlmqfnbjmjmdjw#jp#mlw`fmwvqjfpIbsbmfpf#bnlmd#wkf`lnsofwfgbodlqjwknjmwfqfpwpqfafoojlmvmgfejmfgfm`lvqbdfqfpjybaofjmuloujmdpfmpjwjufvmjufqpbosqlujpjlm+bowklvdkefbwvqjmd`lmgv`wfg*/#tkj`k#`lmwjmvfg.kfbgfq!=Efaqvbqz#mvnfqlvp#lufqeolt9`lnslmfmweqbdnfmwpf{`foofmw`lopsbm>!wf`kmj`bomfbq#wkf#Bgubm`fg#plvq`f#lef{sqfppfgKlmd#Hlmd#Eb`fallhnvowjsof#nf`kbmjpnfofubwjlmleefmpjuf?,elqn=\t\npslmplqfggl`vnfmw-lq#%rvlw8wkfqf#bqfwklpf#tklnlufnfmwpsql`fppfpgjeej`vowpvanjwwfgqf`lnnfmg`lmujm`fgsqlnlwjmd!#tjgwk>!-qfsob`f+`obppj`bo`lbojwjlmkjp#ejqpwgf`jpjlmpbppjpwbmwjmgj`bwfgfulovwjlm.tqbssfq!fmlvdk#wlbolmd#wkfgfojufqfg..=\x0e\t?"..Bnfqj`bm#sqlwf`wfgMlufnafq#?,pwzof=?evqmjwvqfJmwfqmfw##lmaovq>!pvpsfmgfgqf`jsjfmwabpfg#lm#Nlqflufq/balojpkfg`loof`wfgtfqf#nbgffnlwjlmbofnfqdfm`zmbqqbwjufbgul`bwfps{8alqgfq`lnnjwwfggjq>!owq!fnsolzffpqfpfbq`k-#pfof`wfgpv``fpplq`vpwlnfqpgjpsobzfgPfswfnafqbgg@obpp+Eb`fallh#pvddfpwfgbmg#obwfqlsfqbwjmdfobalqbwfPlnfwjnfpJmpwjwvwf`fqwbjmozjmpwboofgelooltfqpIfqvpbofnwkfz#kbuf`lnsvwjmddfmfqbwfgsqlujm`fpdvbqbmwffbqajwqbqzqf`ldmjyftbmwfg#wls{8tjgwk9wkflqz#leafkbujlvqTkjof#wkffpwjnbwfgafdbm#wl#jw#af`bnfnbdmjwvgfnvpw#kbufnlqf#wkbmGjqf`wlqzf{wfmpjlmpf`qfwbqzmbwvqboozl``vqqjmdubqjbaofpdjufm#wkfsobwelqn-?,obafo=?ebjofg#wl`lnslvmgphjmgp#le#pl`jfwjfpbolmdpjgf#..%dw8\t\tplvwktfpwwkf#qjdkwqbgjbwjlmnbz#kbuf#vmfp`bsf+pslhfm#jm!#kqfe>!,sqldqbnnflmoz#wkf#`lnf#eqlngjqf`wlqzavqjfg#jmb#pjnjobqwkfz#tfqf?,elmw=?,Mlqtfdjbmpsf`jejfgsqlgv`jmdsbppfmdfq+mft#Gbwfwfnslqbqzej`wjlmboBewfq#wkffrvbwjlmpgltmolbg-qfdvobqozgfufolsfqbaluf#wkfojmhfg#wlskfmlnfmbsfqjlg#lewllowjs!=pvapwbm`fbvwlnbwj`bpsf`w#leBnlmd#wkf`lmmf`wfgfpwjnbwfpBjq#Elq`fpzpwfn#lelaif`wjufjnnfgjbwfnbhjmd#jwsbjmwjmdp`lmrvfqfgbqf#pwjoosql`fgvqfdqltwk#lekfbgfg#azFvqlsfbm#gjujpjlmpnlof`vofpeqbm`kjpfjmwfmwjlmbwwqb`wfg`kjogkllgbopl#vpfggfgj`bwfgpjmdbslqfgfdqff#leebwkfq#le`lmeoj`wp?,b=?,s=\t`bnf#eqlntfqf#vpfgmlwf#wkbwqf`fjujmdF{f`vwjuffufm#nlqfb``fpp#wl`lnnbmgfqSlojwj`bonvpj`jbmpgfoj`jlvpsqjplmfqpbgufmw#leVWE.;!#,=?"X@GBWBX!=@lmwb`wPlvwkfqm#ad`lolq>!pfqjfp#le-#Jw#tbp#jm#Fvqlsfsfqnjwwfgubojgbwf-bssfbqjmdleej`jboppfqjlvpoz.obmdvbdfjmjwjbwfgf{wfmgjmdolmd.wfqnjmeobwjlmpv`k#wkbwdfw@llhjfnbqhfg#az?,avwwlm=jnsofnfmwavw#jw#jpjm`qfbpfpgltm#wkf#qfrvjqjmdgfsfmgfmw..=\t?"..#jmwfqujftTjwk#wkf#`lsjfp#le`lmpfmpvptbp#avjowUfmfyvfob+elqnfqozwkf#pwbwfsfqplmmfopwqbwfdj`ebulvq#lejmufmwjlmTjhjsfgjb`lmwjmfmwujqwvbooztkj`k#tbpsqjm`jsof@lnsofwf#jgfmwj`bopklt#wkbwsqjnjwjufbtbz#eqlnnlof`vobqsqf`jpfozgjpploufgVmgfq#wkfufqpjlm>!=%maps8?,Jw#jp#wkf#Wkjp#jp#tjoo#kbuflqdbmjpnpplnf#wjnfEqjfgqj`ktbp#ejqpwwkf#lmoz#eb`w#wkbwelqn#jg>!sqf`fgjmdWf`kmj`boskzpj`jpwl``vqp#jmmbujdbwlqpf`wjlm!=psbm#jg>!plvdkw#wlafolt#wkfpvqujujmd~?,pwzof=kjp#gfbwkbp#jm#wkf`bvpfg#azsbqwjboozf{jpwjmd#vpjmd#wkftbp#djufmb#ojpw#leofufop#lemlwjlm#leLeej`jbo#gjpnjppfgp`jfmwjpwqfpfnaofpgvsoj`bwff{solpjufqf`lufqfgboo#lwkfqdboofqjfpxsbggjmd9sflsof#leqfdjlm#lebggqfppfpbppl`jbwfjnd#bow>!jm#nlgfqmpklvog#afnfwklg#leqfslqwjmdwjnfpwbnsmffgfg#wlwkf#Dqfbwqfdbqgjmdpffnfg#wlujftfg#bpjnsb`w#lmjgfb#wkbwwkf#Tlqogkfjdkw#lef{sbmgjmdWkfpf#bqf`vqqfmw!=`bqfevooznbjmwbjmp`kbqdf#le@obppj`bobggqfppfgsqfgj`wfgltmfqpkjs?gju#jg>!qjdkw!=\x0e\tqfpjgfm`fofbuf#wkf`lmwfmw!=bqf#lewfm##~*+*8\x0e\tsqlabaoz#Sqlefpplq.avwwlm!#qfpslmgfgpbzp#wkbwkbg#wl#afsob`fg#jmKvmdbqjbmpwbwvp#lepfqufp#bpVmjufqpbof{f`vwjlmbddqfdbwfelq#tkj`kjmef`wjlmbdqffg#wlkltfufq/#slsvobq!=sob`fg#lm`lmpwqv`wfof`wlqbopznalo#lejm`ovgjmdqfwvqm#wlbq`kjwf`w@kqjpwjbmsqfujlvp#ojujmd#jmfbpjfq#wlsqlefpplq\t%ow8"..#feef`w#lebmbozwj`ptbp#wbhfmtkfqf#wkfwllh#lufqafojfe#jmBeqjhbbmpbp#ebq#bpsqfufmwfgtlqh#tjwkb#psf`jbo?ejfogpfw@kqjpwnbpQfwqjfufg\t\tJm#wkf#ab`h#jmwlmlqwkfbpwnbdbyjmfp=?pwqlmd=`lnnjwwffdlufqmjmddqlvsp#lepwlqfg#jmfpwbaojpkb#dfmfqbojwp#ejqpwwkfjq#ltmslsvobwfgbm#laif`w@bqjaafbmboolt#wkfgjpwqj`wptjp`lmpjmol`bwjlm-8#tjgwk9#jmkbajwfgPl`jbojpwIbmvbqz#2?,ellwfq=pjnjobqoz`klj`f#lewkf#pbnf#psf`jej`#avpjmfpp#Wkf#ejqpw-ofmdwk8#gfpjqf#wlgfbo#tjwkpjm`f#wkfvpfqBdfmw`lm`fjufgjmgf{-sksbp#%rvlw8fmdbdf#jmqf`fmwoz/eft#zfbqptfqf#bopl\t?kfbg=\t?fgjwfg#azbqf#hmltm`jwjfp#jmb``fpphfz`lmgfnmfgbopl#kbufpfquj`fp/ebnjoz#leP`kllo#le`lmufqwfgmbwvqf#le#obmdvbdfnjmjpwfqp?,laif`w=wkfqf#jp#b#slsvobqpfrvfm`fpbgul`bwfgWkfz#tfqfbmz#lwkfqol`bwjlm>fmwfq#wkfnv`k#nlqfqfeof`wfgtbp#mbnfglqjdjmbo#b#wzsj`botkfm#wkfzfmdjmffqp`lvog#mlwqfpjgfmwptfgmfpgbzwkf#wkjqg#sqlgv`wpIbmvbqz#1tkbw#wkfzb#`fqwbjmqfb`wjlmpsql`fpplqbewfq#kjpwkf#obpw#`lmwbjmfg!=?,gju=\t?,b=?,wg=gfsfmg#lmpfbq`k!=\tsjf`fp#le`lnsfwjmdQfefqfm`fwfmmfppfftkj`k#kbp#ufqpjlm>?,psbm=#??,kfbgfq=djufp#wkfkjpwlqjbmubovf>!!=sbggjmd93ujft#wkbwwldfwkfq/wkf#nlpw#tbp#elvmgpvapfw#lebwwb`h#lm`kjogqfm/sljmwp#lesfqplmbo#slpjwjlm9boofdfgoz@ofufobmgtbp#obwfqbmg#bewfqbqf#djufmtbp#pwjoop`qloojmdgfpjdm#lenbhfp#wkfnv`k#ofppBnfqj`bmp-\t\tBewfq#/#avw#wkfNvpfvn#leolvjpjbmb+eqln#wkfnjmmfplwbsbqwj`ofpb#sql`fppGlnjmj`bmulovnf#leqfwvqmjmdgfefmpjuf33s{\x7fqjdknbgf#eqlnnlvpflufq!#pwzof>!pwbwfp#le+tkj`k#jp`lmwjmvfpEqbm`jp`lavjogjmd#tjwklvw#btjwk#plnftkl#tlvogb#elqn#leb#sbqw#leafelqf#jwhmltm#bp##Pfquj`fpol`bwjlm#bmg#lewfmnfbpvqjmdbmg#jw#jpsbsfqab`hubovfp#le\x0e\t?wjwof=>#tjmglt-gfwfqnjmffq%rvlw8#sobzfg#azbmg#fbqoz?,`fmwfq=eqln#wkjpwkf#wkqffsltfq#bmgle#%rvlw8jmmfqKWNO?b#kqfe>!z9jmojmf8@kvq`k#lewkf#fufmwufqz#kjdkleej`jbo#.kfjdkw9#`lmwfmw>!,`dj.ajm,wl#`qfbwfbeqjhbbmpfpsfqbmwleqbm/Kbjpobwujf)Mvojfwvuj)_(`f)Mwjmb(af)Mwjmb\fUh\fT{\fTN\n{I\np@\x04Fr\vBl\bQ\x7f\tA{\vUm\x05Gx\tA{\x01yp\x06YA\0zX\bTV\bWl\bUd\x04BM\vB{\npV\v@x\x04B\\\np@\x04Db\x04Gz\tal\npa\tfM\tuD\bV~\x04mx\vQ}\ndS\tp\\\bVK\bS]\bU|\x05oD\tkV\ved\vHR\nb~\x04M`\nJp\x05oD\x04|Q\nLP\x04Sw\bTl\nAI\nxC\bWt\tBq\x05F`\x04Cm\vLm\tKx\t}t\bPv\ny\\\naB\tV\x7f\nZd\x04XU\x04li\tfr\ti@\tBH\x04BD\x04BV\t`V\n[]\tp_\tTn\n~A\nxR\tuD\t`{\bV@\tTn\tHK\tAJ\vxs\x04Zf\nqI\x04Zf\vBM\v|j\t}t\bSM\nmC\vQ}pfquj`jlpbqw/A`volbqdfmwjmbabq`folmb`vborvjfqsvaoj`bglsqlgv`wlpslo/Awj`bqfpsvfpwbtjhjsfgjbpjdvjfmwfa/Vprvfgb`lnvmjgbgpfdvqjgbgsqjm`jsbosqfdvmwbp`lmwfmjglqfpslmgfqufmfyvfobsqlaofnbpgj`jfnaqfqfob`j/_mmlujfnaqfpjnjobqfpsqlzf`wlpsqldqbnbpjmpwjwvwlb`wjujgbgfm`vfmwqbf`lmln/Abjn/Mdfmfp`lmwb`wbqgfp`bqdbqmf`fpbqjlbwfm`j/_mwfo/Eelml`lnjpj/_m`bm`jlmfp`bsb`jgbgfm`lmwqbqbm/Mojpjpebulqjwlpw/Eqnjmlpsqlujm`jbfwjrvfwbpfofnfmwlpevm`jlmfpqfpvowbgl`bq/M`wfqsqlsjfgbgsqjm`jsjlmf`fpjgbgnvmj`jsbo`qfb`j/_mgfp`bqdbpsqfpfm`jb`lnfq`jbolsjmjlmfpfifq`j`jlfgjwlqjbopbobnbm`bdlmy/Mofygl`vnfmwlsfo/A`vobqf`jfmwfpdfmfqbofpwbqqbdlmbsq/M`wj`bmlufgbgfpsqlsvfpwbsb`jfmwfpw/E`mj`bplaifwjulp`lmwb`wlp\fHB\fIk\fHn\fH^\fHS\fHc\fHU\fId\fHn\fH{\fHC\fHR\fHT\fHR\fHI\fHc\fHY\fHn\fH\\\fHU\fIk\fHy\fIg\fHd\fHy\fIm\fHw\fH\\\fHU\fHR\fH@\fHR\fHJ\fHy\fHU\fHR\fHT\fHA\fIl\fHU\fIm\fHc\fH\\\fHU\fIl\fHB\fId\fHn\fHJ\fHS\fHD\fH@\fHR\fHHgjsolgl`p\fHT\fHB\fHC\fH\\\fIn\fHF\fHD\fHR\fHB\fHF\fHH\fHR\fHG\fHS\fH\\\fHx\fHT\fHH\fHH\fH\\\fHU\fH^\fIg\fH{\fHU\fIm\fHj\fH@\fHR\fH\\\fHJ\fIk\fHZ\fHU\fIm\fHd\fHz\fIk\fH^\fHC\fHJ\fHS\fHy\fHR\fHB\fHY\fIk\fH@\fHH\fIl\fHD\fH@\fIl\fHv\fHB\fI`\fHH\fHT\fHR\fH^\fH^\fIk\fHz\fHp\fIe\fH@\fHB\fHJ\fHJ\fHH\fHI\fHR\fHD\fHU\fIl\fHZ\fHU\fH\\\fHi\fH^\fH{\fHy\fHA\fIl\fHD\fH{\fH\\\fHF\fHR\fHT\fH\\\fHR\fHH\fHy\fHS\fHc\fHe\fHT\fIk\fH{\fHC\fIl\fHU\fIn\fHm\fHj\fH{\fIk\fHs\fIl\fHB\fHz\fIg\fHp\fHy\fHR\fH\\\fHi\fHA\fIl\fH{\fHC\fIk\fHH\fIm\fHB\fHY\fIg\fHs\fHJ\fIk\fHn\fHi\fH{\fH\\\fH|\fHT\fIk\fHB\fIk\fH^\fH^\fH{\fHR\fHU\fHR\fH^\fHf\fHF\fH\\\fHv\fHR\fH\\\fH|\fHT\fHR\fHJ\fIk\fH\\\fHp\fHS\fHT\fHJ\fHS\fH^\fH@\fHn\fHJ\fH@\fHD\fHR\fHU\fIn\fHn\fH^\fHR\fHz\fHp\fIl\fHH\fH@\fHs\fHD\fHB\fHS\fH^\fHk\fHT\fIk\fHj\fHD\fIk\fHD\fHC\fHR\fHy\fIm\fH^\fH^\fIe\fH{\fHA\fHR\fH{\fH\\\fIk\fH^\fHp\fH{\fHU\fH\\\fHR\fHB\fH^\fH{\fIk\fHF\fIk\fHp\fHU\fHR\fHI\fHk\fHT\fIl\fHT\fHU\fIl\fHy\fH^\fHR\fHL\fIl\fHy\fHU\fHR\fHm\fHJ\fIn\fH\\\fHH\fHU\fHH\fHT\fHR\fHH\fHC\fHR\fHJ\fHj\fHC\fHR\fHF\fHR\fHy\fHy\fI`\fHD\fHZ\fHR\fHB\fHJ\fIk\fHz\fHC\fHU\fIl\fH\\\fHR\fHC\fHz\fIm\fHJ\fH^\fH{\fIl`bwfdlqjfpf{sfqjfm`f?,wjwof=\x0e\t@lszqjdkw#ibubp`qjsw`lmgjwjlmpfufqzwkjmd?s#`obpp>!wf`kmloldzab`hdqlvmg?b#`obpp>!nbmbdfnfmw%`lsz8#132ibubP`qjsw`kbqb`wfqpaqfbg`qvnawkfnpfoufpklqjylmwbodlufqmnfmw@bojelqmjbb`wjujwjfpgjp`lufqfgMbujdbwjlmwqbmpjwjlm`lmmf`wjlmmbujdbwjlmbssfbqbm`f?,wjwof=?n`kf`hal{!#wf`kmjrvfpsqlwf`wjlmbssbqfmwozbp#tfoo#bpvmw$/#$VB.qfplovwjlmlsfqbwjlmpwfofujpjlmwqbmpobwfgTbpkjmdwlmmbujdbwlq-#>#tjmglt-jnsqfppjlm%ow8aq%dw8ojwfqbwvqfslsvobwjlmad`lolq>! fpsf`jbooz#`lmwfmw>!sqlgv`wjlmmftpofwwfqsqlsfqwjfpgfejmjwjlmofbgfqpkjsWf`kmloldzSbqojbnfmw`lnsbqjplmvo#`obpp>!-jmgf{Le+!`lm`ovpjlmgjp`vppjlm`lnslmfmwpajloldj`boQfulovwjlm\\`lmwbjmfqvmgfqpwllgmlp`qjsw=?sfqnjppjlmfb`k#lwkfqbwnlpskfqf#lmel`vp>!?elqn#jg>!sql`fppjmdwkjp-ubovfdfmfqbwjlm@lmefqfm`fpvapfrvfmwtfoo.hmltmubqjbwjlmpqfsvwbwjlmskfmlnfmlmgjp`jsojmfoldl-smd!#+gl`vnfmw/alvmgbqjfpf{sqfppjlmpfwwofnfmwAb`hdqlvmglvw#le#wkffmwfqsqjpf+!kwwsp9!#vmfp`bsf+!sbpptlqg!#gfnl`qbwj`?b#kqfe>!,tqbssfq!=\tnfnafqpkjsojmdvjpwj`s{8sbggjmdskjolplskzbppjpwbm`fvmjufqpjwzeb`jojwjfpqf`ldmjyfgsqfefqfm`fje#+wzsflenbjmwbjmfgul`bavobqzkzslwkfpjp-pvanjw+*8%bns8maps8bmmlwbwjlmafkjmg#wkfElvmgbwjlmsvaojpkfq!bppvnswjlmjmwqlgv`fg`lqqvswjlmp`jfmwjpwpf{soj`jwozjmpwfbg#legjnfmpjlmp#lm@oj`h>!`lmpjgfqfggfsbqwnfmwl``vsbwjlmpllm#bewfqjmufpwnfmwsqlmlvm`fgjgfmwjejfgf{sfqjnfmwNbmbdfnfmwdfldqbskj`!#kfjdkw>!ojmh#qfo>!-qfsob`f+,gfsqfppjlm`lmefqfm`fsvmjpknfmwfojnjmbwfgqfpjpwbm`fbgbswbwjlmlsslpjwjlmtfoo#hmltmpvssofnfmwgfwfqnjmfgk2#`obpp>!3s{8nbqdjmnf`kbmj`bopwbwjpwj`p`fofaqbwfgDlufqmnfmw\t\tGvqjmd#wgfufolsfqpbqwjej`jbofrvjubofmwlqjdjmbwfg@lnnjppjlmbwwb`knfmw?psbm#jg>!wkfqf#tfqfMfgfqobmgpafzlmg#wkfqfdjpwfqfgilvqmbojpweqfrvfmwozboo#le#wkfobmd>!fm!#?,pwzof=\x0e\tbaplovwf8#pvsslqwjmdf{wqfnfoz#nbjmpwqfbn?,pwqlmd=#slsvobqjwzfnsolznfmw?,wbaof=\x0e\t#`lopsbm>!?,elqn=\t##`lmufqpjlmbalvw#wkf#?,s=?,gju=jmwfdqbwfg!#obmd>!fmSlqwvdvfpfpvapwjwvwfjmgjujgvbojnslppjaofnvowjnfgjbbonlpw#boos{#plojg# bsbqw#eqlnpvaif`w#wljm#Fmdojpk`qjwj`jyfgf{`fsw#elqdvjgfojmfplqjdjmboozqfnbqhbaofwkf#pf`lmgk1#`obpp>!?b#wjwof>!+jm`ovgjmdsbqbnfwfqpsqlkjajwfg>#!kwws9,,gj`wjlmbqzsfq`fswjlmqfulovwjlmelvmgbwjlms{8kfjdkw9pv``fppevopvsslqwfqpnjoofmmjvnkjp#ebwkfqwkf#%rvlw8ml.qfsfbw8`lnnfq`jbojmgvpwqjbofm`lvqbdfgbnlvmw#le#vmleej`jbofeej`jfm`zQfefqfm`fp`llqgjmbwfgjp`objnfqf{sfgjwjlmgfufolsjmd`bo`vobwfgpjnsojejfgofdjwjnbwfpvapwqjmd+3!#`obpp>!`lnsofwfozjoovpwqbwfejuf#zfbqpjmpwqvnfmwSvaojpkjmd2!#`obpp>!spz`kloldz`lmejgfm`fmvnafq#le#bapfm`f#leel`vpfg#lmiljmfg#wkfpwqv`wvqfpsqfujlvpoz=?,jeqbnf=lm`f#bdbjmavw#qbwkfqjnnjdqbmwple#`lvqpf/b#dqlvs#leOjwfqbwvqfVmojhf#wkf?,b=%maps8\tevm`wjlm#jw#tbp#wkf@lmufmwjlmbvwlnlajofSqlwfpwbmwbddqfppjufbewfq#wkf#Pjnjobqoz/!#,=?,gju=`loof`wjlm\x0e\tevm`wjlmujpjajojwzwkf#vpf#leulovmwffqpbwwqb`wjlmvmgfq#wkf#wkqfbwfmfg)?"X@GBWBXjnslqwbm`fjm#dfmfqbowkf#obwwfq?,elqn=\t?,-jmgf{Le+$j#>#38#j#?gjeefqfm`fgfulwfg#wlwqbgjwjlmppfbq`k#elqvowjnbwfozwlvqmbnfmwbwwqjavwfppl.`boofg#~\t?,pwzof=fubovbwjlmfnskbpjyfgb``fppjaof?,pf`wjlm=pv``fppjlmbolmd#tjwkNfbmtkjof/jmgvpwqjfp?,b=?aq#,=kbp#af`lnfbpsf`wp#leWfofujpjlmpveej`jfmwabphfwabooalwk#pjgfp`lmwjmvjmdbm#bqwj`of?jnd#bow>!bgufmwvqfpkjp#nlwkfqnbm`kfpwfqsqjm`jsofpsbqwj`vobq`lnnfmwbqzfeef`wp#legf`jgfg#wl!=?pwqlmd=svaojpkfqpIlvqmbo#legjeej`vowzeb`jojwbwfb``fswbaofpwzof-`pp!\nevm`wjlm#jmmlubwjlm=@lszqjdkwpjwvbwjlmptlvog#kbufavpjmfppfpGj`wjlmbqzpwbwfnfmwplewfm#vpfgsfqpjpwfmwjm#Ibmvbqz`lnsqjpjmd?,wjwof=\t\ngjsolnbwj``lmwbjmjmdsfqelqnjmdf{wfmpjlmpnbz#mlw#af`lm`fsw#le#lm`oj`h>!Jw#jp#boplejmbm`jbo#nbhjmd#wkfOv{fnalvqdbggjwjlmbobqf#`boofgfmdbdfg#jm!p`qjsw!*8avw#jw#tbpfof`wqlmj`lmpvanjw>!\t?"..#Fmg#fof`wqj`boleej`jboozpvddfpwjlmwls#le#wkfvmojhf#wkfBvpwqbojbmLqjdjmboozqfefqfm`fp\t?,kfbg=\x0e\tqf`ldmjpfgjmjwjbojyfojnjwfg#wlBof{bmgqjbqfwjqfnfmwBgufmwvqfpelvq#zfbqp\t\t%ow8"..#jm`qfbpjmdgf`lqbwjlmk0#`obpp>!lqjdjmp#lelaojdbwjlmqfdvobwjlm`obppjejfg+evm`wjlm+bgubmwbdfpafjmd#wkf#kjpwlqjbmp?abpf#kqfeqfsfbwfgoztjoojmd#wl`lnsbqbaofgfpjdmbwfgmlnjmbwjlmevm`wjlmbojmpjgf#wkfqfufobwjlmfmg#le#wkfp#elq#wkf#bvwklqjyfgqfevpfg#wlwbhf#sob`fbvwlmlnlvp`lnsqlnjpfslojwj`bo#qfpwbvqbmwwtl#le#wkfEfaqvbqz#1rvbojwz#leptelaif`w-vmgfqpwbmgmfbqoz#bootqjwwfm#azjmwfqujftp!#tjgwk>!2tjwkgqbtboeolbw9ofewjp#vpvbooz`bmgjgbwfpmftpsbsfqpnzpwfqjlvpGfsbqwnfmwafpw#hmltmsbqojbnfmwpvssqfppfg`lmufmjfmwqfnfnafqfggjeefqfmw#pzpwfnbwj`kbp#ofg#wlsqlsbdbmgb`lmwqloofgjmeovfm`fp`fqfnlmjbosql`objnfgSqlwf`wjlmoj#`obpp>!P`jfmwjej``obpp>!ml.wqbgfnbqhpnlqf#wkbm#tjgfpsqfbgOjafqbwjlmwllh#sob`fgbz#le#wkfbp#olmd#bpjnsqjplmfgBggjwjlmbo\t?kfbg=\t?nObalqbwlqzMlufnafq#1f{`fswjlmpJmgvpwqjboubqjfwz#leeolbw9#ofeGvqjmd#wkfbppfppnfmwkbuf#affm#gfbop#tjwkPwbwjpwj`pl``vqqfm`f,vo=?,gju=`ofbqej{!=wkf#svaoj`nbmz#zfbqptkj`k#tfqflufq#wjnf/pzmlmznlvp`lmwfmw!=\tsqfpvnbaozkjp#ebnjozvpfqBdfmw-vmf{sf`wfgjm`ovgjmd#`kboofmdfgb#njmlqjwzvmgfejmfg!afolmdp#wlwbhfm#eqlnjm#L`wlafqslpjwjlm9#pbjg#wl#afqfojdjlvp#Efgfqbwjlm#qltpsbm>!lmoz#b#eftnfbmw#wkbwofg#wl#wkf..=\x0e\t?gju#?ejfogpfw=Bq`kajpkls#`obpp>!mlafjmd#vpfgbssqlb`kfpsqjujofdfpmlp`qjsw=\tqfpvowp#jmnbz#af#wkfFbpwfq#fddnf`kbmjpnpqfbplmbaofSlsvobwjlm@loof`wjlmpfof`wfg!=mlp`qjsw=\x0e,jmgf{-sksbqqjubo#le.ippgh$**8nbmbdfg#wljm`lnsofwf`bpvbowjfp`lnsofwjlm@kqjpwjbmpPfswfnafq#bqjwknfwj`sql`fgvqfpnjdkw#kbufSqlgv`wjlmjw#bssfbqpSkjolplskzeqjfmgpkjsofbgjmd#wldjujmd#wkfwltbqg#wkfdvbqbmwffggl`vnfmwfg`lolq9 333ujgfl#dbnf`lnnjppjlmqfeof`wjmd`kbmdf#wkfbppl`jbwfgpbmp.pfqjelmhfzsqfpp8#sbggjmd9Kf#tbp#wkfvmgfqozjmdwzsj`booz#/#bmg#wkf#pq`Fofnfmwpv``fppjufpjm`f#wkf#pklvog#af#mfwtlqhjmdb``lvmwjmdvpf#le#wkfoltfq#wkbmpkltp#wkbw?,psbm=\t\n\n`lnsobjmwp`lmwjmvlvprvbmwjwjfpbpwqlmlnfqkf#gjg#mlwgvf#wl#jwpbssojfg#wlbm#bufqbdffeelqwp#wlwkf#evwvqfbwwfnsw#wlWkfqfelqf/`bsbajojwzQfsvaoj`bmtbp#elqnfgFof`wqlmj`hjolnfwfqp`kboofmdfpsvaojpkjmdwkf#elqnfqjmgjdfmlvpgjqf`wjlmppvapjgjbqz`lmpsjqb`zgfwbjop#lebmg#jm#wkfbeelqgbaofpvapwbm`fpqfbplm#elq`lmufmwjlmjwfnwzsf>!baplovwfozpvsslpfgozqfnbjmfg#bbwwqb`wjufwqbufoojmdpfsbqbwfozel`vpfp#lmfofnfmwbqzbssoj`baofelvmg#wkbwpwzofpkffwnbmvp`qjswpwbmgp#elq#ml.qfsfbw+plnfwjnfp@lnnfq`jbojm#Bnfqj`bvmgfqwbhfmrvbqwfq#lebm#f{bnsofsfqplmboozjmgf{-sks!owqOjfvwfmbmw\t?gju#jg>!wkfz#tlvogbajojwz#lenbgf#vs#lemlwfg#wkbw`ofbq#wkbwbqdvf#wkbwwl#bmlwkfq`kjogqfm$psvqslpf#leelqnvobwfgabpfg#vslmwkf#qfdjlmpvaif`w#lesbppfmdfqpslppfppjlm-\t\tJm#wkf#Afelqf#wkfbewfqtbqgp`vqqfmwoz#b`qlpp#wkfp`jfmwjej``lnnvmjwz-`bsjwbojpnjm#Dfqnbmzqjdkw.tjmdwkf#pzpwfnPl`jfwz#leslojwj`jbmgjqf`wjlm9tfmw#lm#wlqfnlubo#le#Mft#Zlqh#bsbqwnfmwpjmgj`bwjlmgvqjmd#wkfvmofpp#wkfkjpwlqj`bokbg#affm#bgfejmjwjufjmdqfgjfmwbwwfmgbm`f@fmwfq#elqsqlnjmfm`fqfbgzPwbwfpwqbwfdjfpavw#jm#wkfbp#sbqw#le`lmpwjwvwf`objn#wkbwobalqbwlqz`lnsbwjaofebjovqf#le/#pv`k#bp#afdbm#tjwkvpjmd#wkf#wl#sqlujgfefbwvqf#leeqln#tkj`k,!#`obpp>!dfloldj`bopfufqbo#legfojafqbwfjnslqwbmw#klogp#wkbwjmd%rvlw8#ubojdm>wlswkf#Dfqnbmlvwpjgf#lemfdlwjbwfgkjp#`bqffqpfsbqbwjlmjg>!pfbq`ktbp#`boofgwkf#elvqwkqf`qfbwjlmlwkfq#wkbmsqfufmwjlmtkjof#wkf#fgv`bwjlm/`lmmf`wjmdb``vqbwfoztfqf#avjowtbp#hjoofgbdqffnfmwpnv`k#nlqf#Gvf#wl#wkftjgwk9#233plnf#lwkfqHjmdgln#lewkf#fmwjqfebnlvp#elqwl#`lmmf`wlaif`wjufpwkf#Eqfm`ksflsof#bmgefbwvqfg!=jp#pbjg#wlpwqv`wvqboqfefqfmgvnnlpw#lewfmb#pfsbqbwf.=\t?gju#jg#Leej`jbo#tlqogtjgf-bqjb.obafowkf#sobmfwbmg#jw#tbpg!#ubovf>!ollhjmd#bwafmfej`jbobqf#jm#wkfnlmjwlqjmdqfslqwfgozwkf#nlgfqmtlqhjmd#lmbooltfg#wltkfqf#wkf#jmmlubwjuf?,b=?,gju=plvmgwqb`hpfbq`kElqnwfmg#wl#afjmsvw#jg>!lsfmjmd#leqfpwqj`wfgbglswfg#azbggqfppjmdwkfloldjbmnfwklgp#leubqjbmw#le@kqjpwjbm#ufqz#obqdfbvwlnlwjufaz#ebq#wkfqbmdf#eqlnsvqpvjw#leeloolt#wkfaqlvdkw#wljm#Fmdobmgbdqff#wkbwb``vpfg#le`lnfp#eqlnsqfufmwjmdgju#pwzof>kjp#lq#kfqwqfnfmglvpeqffgln#le`lm`fqmjmd3#2fn#2fn8Abphfwaboo,pwzof-`ppbm#fbqojfqfufm#bewfq,!#wjwof>!-`ln,jmgf{wbhjmd#wkfsjwwpavqdk`lmwfmw!=\x0e?p`qjsw=+ewvqmfg#lvwkbujmd#wkf?,psbm=\x0e\t#l``bpjlmboaf`bvpf#jwpwbqwfg#wlskzpj`booz=?,gju=\t##`qfbwfg#az@vqqfmwoz/#ad`lolq>!wbajmgf{>!gjpbpwqlvpBmbozwj`p#bopl#kbp#b=?gju#jg>!?,pwzof=\t?`boofg#elqpjmdfq#bmg-pq`#>#!,,ujlobwjlmpwkjp#sljmw`lmpwbmwozjp#ol`bwfgqf`lqgjmdpg#eqln#wkfmfgfqobmgpslqwvdv/Fp;N;};D;u;F5m4K4]4_7`gfpbqqlool`lnfmwbqjlfgv`b`j/_mpfswjfnaqfqfdjpwqbglgjqf``j/_mvaj`b`j/_msvaoj`jgbgqfpsvfpwbpqfpvowbglpjnslqwbmwfqfpfqubglpbqw/A`volpgjefqfmwfppjdvjfmwfpqfs/Vaoj`bpjwvb`j/_mnjmjpwfqjlsqjub`jgbggjqf`wlqjlelqnb`j/_mslaob`j/_msqfpjgfmwf`lmw','fmjglpb``fplqjlpwf`kmlqbwjsfqplmbofp`bwfdlq/Abfpsf`jbofpgjpslmjaofb`wvbojgbgqfefqfm`jbuboobglojgajaojlwf`bqfob`jlmfp`bofmgbqjlslo/Awj`bpbmwfqjlqfpgl`vnfmwlpmbwvqbofybnbwfqjbofpgjefqfm`jbf`lm/_nj`bwqbmpslqwfqlgq/Advfysbqwj`jsbqfm`vfmwqbmgjp`vpj/_mfpwqv`wvqbevmgb`j/_meqf`vfmwfpsfqnbmfmwfwlwbonfmwf!2s{#plojg# -dje!#bow>!wqbmpsbqfmwjmelqnbwjlmbssoj`bwjlm!#lm`oj`h>!fpwbaojpkfgbgufqwjpjmd-smd!#bow>!fmujqlmnfmwsfqelqnbm`fbssqlsqjbwf%bns8ngbpk8jnnfgjbwfoz?,pwqlmd=?,qbwkfq#wkbmwfnsfqbwvqfgfufolsnfmw`lnsfwjwjlmsob`fklogfqujpjajojwz9`lszqjdkw!=3!#kfjdkw>!fufm#wklvdkqfsob`fnfmwgfpwjmbwjlm@lqslqbwjlm?vo#`obpp>!Bppl`jbwjlmjmgjujgvbopsfqpsf`wjufpfwWjnflvw+vqo+kwws9,,nbwkfnbwj`pnbqdjm.wls9fufmwvbooz#gfp`qjswjlm*#ml.qfsfbw`loof`wjlmp-ISD\x7fwkvna\x7fsbqwj`jsbwf,kfbg=?algzeolbw9ofew8?oj#`obpp>!kvmgqfgp#le\t\tKltfufq/#`lnslpjwjlm`ofbq9alwk8`llsfqbwjlmtjwkjm#wkf#obafo#elq>!alqgfq.wls9Mft#Yfbobmgqf`lnnfmgfgsklwldqbskzjmwfqfpwjmd%ow8pvs%dw8`lmwqlufqpzMfwkfqobmgpbowfqmbwjufnb{ofmdwk>!ptjwyfqobmgGfufolsnfmwfppfmwjbooz\t\tBowklvdk#?,wf{wbqfb=wkvmgfqajqgqfsqfpfmwfg%bns8mgbpk8psf`vobwjlm`lnnvmjwjfpofdjpobwjlmfof`wqlmj`p\t\n?gju#jg>!joovpwqbwfgfmdjmffqjmdwfqqjwlqjfpbvwklqjwjfpgjpwqjavwfg5!#kfjdkw>!pbmp.pfqje8`bsbaof#le#gjpbssfbqfgjmwfqb`wjufollhjmd#elqjw#tlvog#afBedkbmjpwbmtbp#`qfbwfgNbwk-eollq+pvqqlvmgjmd`bm#bopl#aflapfqubwjlmnbjmwfmbm`ffm`lvmwfqfg?k1#`obpp>!nlqf#qf`fmwjw#kbp#affmjmubpjlm#le*-dfwWjnf+*evmgbnfmwboGfpsjwf#wkf!=?gju#jg>!jmpsjqbwjlmf{bnjmbwjlmsqfsbqbwjlmf{sobmbwjlm?jmsvw#jg>!?,b=?,psbm=ufqpjlmp#lejmpwqvnfmwpafelqf#wkf##>#$kwws9,,Gfp`qjswjlmqfobwjufoz#-pvapwqjmd+fb`k#le#wkff{sfqjnfmwpjmeovfmwjbojmwfdqbwjlmnbmz#sflsofgvf#wl#wkf#`lnajmbwjlmgl#mlw#kbufNjggof#Fbpw?mlp`qjsw=?`lszqjdkw!#sfqkbsp#wkfjmpwjwvwjlmjm#Gf`fnafqbqqbmdfnfmwnlpw#ebnlvpsfqplmbojwz`qfbwjlm#leojnjwbwjlmpf{`ovpjufozplufqfjdmwz.`lmwfmw!=\t?wg#`obpp>!vmgfqdqlvmgsbqboofo#wlgl`wqjmf#lel``vsjfg#azwfqnjmloldzQfmbjppbm`fb#mvnafq#lepvsslqw#elqf{solqbwjlmqf`ldmjwjlmsqfgf`fpplq?jnd#pq`>!,?k2#`obpp>!svaoj`bwjlmnbz#bopl#afpsf`jbojyfg?,ejfogpfw=sqldqfppjufnjoojlmp#lepwbwfp#wkbwfmelq`fnfmwbqlvmg#wkf#lmf#bmlwkfq-sbqfmwMlgfbdqj`vowvqfBowfqmbwjufqfpfbq`kfqpwltbqgp#wkfNlpw#le#wkfnbmz#lwkfq#+fpsf`jbooz?wg#tjgwk>!8tjgwk9233&jmgfsfmgfmw?k0#`obpp>!#lm`kbmdf>!*-bgg@obpp+jmwfqb`wjlmLmf#le#wkf#gbvdkwfq#leb``fpplqjfpaqbm`kfp#le\x0e\t?gju#jg>!wkf#obqdfpwgf`obqbwjlmqfdvobwjlmpJmelqnbwjlmwqbmpobwjlmgl`vnfmwbqzjm#lqgfq#wl!=\t?kfbg=\t?!#kfjdkw>!2b`qlpp#wkf#lqjfmwbwjlm*8?,p`qjsw=jnsofnfmwfg`bm#af#pffmwkfqf#tbp#bgfnlmpwqbwf`lmwbjmfq!=`lmmf`wjlmpwkf#Aqjwjpktbp#tqjwwfm"jnslqwbmw8s{8#nbqdjm.elooltfg#azbajojwz#wl#`lnsoj`bwfggvqjmd#wkf#jnnjdqbwjlmbopl#`boofg?k7#`obpp>!gjpwjm`wjlmqfsob`fg#azdlufqmnfmwpol`bwjlm#lejm#Mlufnafqtkfwkfq#wkf?,s=\t?,gju=b`rvjpjwjlm`boofg#wkf#sfqpf`vwjlmgfpjdmbwjlmxelmw.pjyf9bssfbqfg#jmjmufpwjdbwff{sfqjfm`fgnlpw#ojhfoztjgfoz#vpfggjp`vppjlmpsqfpfm`f#le#+gl`vnfmw-f{wfmpjufozJw#kbp#affmjw#glfp#mlw`lmwqbqz#wljmkbajwbmwpjnsqlufnfmwp`klobqpkjs`lmpvnswjlmjmpwqv`wjlmelq#f{bnsoflmf#lq#nlqfs{8#sbggjmdwkf#`vqqfmwb#pfqjfp#lebqf#vpvboozqlof#jm#wkfsqfujlvpoz#gfqjubwjufpfujgfm`f#lef{sfqjfm`fp`lolqp`kfnfpwbwfg#wkbw`fqwjej`bwf?,b=?,gju=\t#pfof`wfg>!kjdk#p`klloqfpslmpf#wl`lnelqwbaofbglswjlm#lewkqff#zfbqpwkf#`lvmwqzjm#Efaqvbqzpl#wkbw#wkfsflsof#tkl#sqlujgfg#az?sbqbn#mbnfbeef`wfg#azjm#wfqnp#lebssljmwnfmwJPL.;;6:.2!tbp#alqm#jmkjpwlqj`bo#qfdbqgfg#bpnfbpvqfnfmwjp#abpfg#lm#bmg#lwkfq#9#evm`wjlm+pjdmjej`bmw`fofaqbwjlmwqbmpnjwwfg,ip,irvfqz-jp#hmltm#bpwkflqfwj`bo#wbajmgf{>!jw#`lvog#af?mlp`qjsw=\tkbujmd#affm\x0e\t?kfbg=\x0e\t?#%rvlw8Wkf#`lnsjobwjlmkf#kbg#affmsqlgv`fg#azskjolplskfq`lmpwqv`wfgjmwfmgfg#wlbnlmd#lwkfq`lnsbqfg#wlwl#pbz#wkbwFmdjmffqjmdb#gjeefqfmwqfefqqfg#wlgjeefqfm`fpafojfe#wkbwsklwldqbskpjgfmwjezjmdKjpwlqz#le#Qfsvaoj`#lemf`fppbqjozsqlabajojwzwf`kmj`boozofbujmd#wkfpsf`wb`vobqeqb`wjlm#lefof`wqj`jwzkfbg#le#wkfqfpwbvqbmwpsbqwmfqpkjsfnskbpjp#lmnlpw#qf`fmwpkbqf#tjwk#pbzjmd#wkbwejoofg#tjwkgfpjdmfg#wljw#jp#lewfm!=?,jeqbnf=bp#elooltp9nfqdfg#tjwkwkqlvdk#wkf`lnnfq`jbo#sljmwfg#lvwlsslqwvmjwzujft#le#wkfqfrvjqfnfmwgjujpjlm#lesqldqbnnjmdkf#qf`fjufgpfwJmwfqubo!=?,psbm=?,jm#Mft#Zlqhbggjwjlmbo#`lnsqfppjlm\t\t?gju#jg>!jm`lqslqbwf8?,p`qjsw=?bwwb`kFufmwaf`bnf#wkf#!#wbqdfw>!\\`bqqjfg#lvwPlnf#le#wkfp`jfm`f#bmgwkf#wjnf#le@lmwbjmfq!=nbjmwbjmjmd@kqjpwlskfqNv`k#le#wkftqjwjmdp#le!#kfjdkw>!1pjyf#le#wkfufqpjlm#le#nj{wvqf#le#afwtffm#wkfF{bnsofp#lefgv`bwjlmbo`lnsfwjwjuf#lmpvanjw>!gjqf`wlq#legjpwjm`wjuf,GWG#[KWNO#qfobwjmd#wlwfmgfm`z#wlsqlujm`f#letkj`k#tlvoggfpsjwf#wkfp`jfmwjej`#ofdjpobwvqf-jmmfqKWNO#boofdbwjlmpBdqj`vowvqftbp#vpfg#jmbssqlb`k#wljmwfoojdfmwzfbqp#obwfq/pbmp.pfqjegfwfqnjmjmdSfqelqnbm`fbssfbqbm`fp/#tkj`k#jp#elvmgbwjlmpbaaqfujbwfgkjdkfq#wkbmp#eqln#wkf#jmgjujgvbo#`lnslpfg#lepvsslpfg#wl`objnp#wkbwbwwqjavwjlmelmw.pjyf92fofnfmwp#leKjpwlqj`bo#kjp#aqlwkfqbw#wkf#wjnfbmmjufqpbqzdlufqmfg#azqfobwfg#wl#vowjnbwfoz#jmmlubwjlmpjw#jp#pwjoo`bm#lmoz#afgfejmjwjlmpwlDNWPwqjmdB#mvnafq#lejnd#`obpp>!Fufmwvbooz/tbp#`kbmdfgl``vqqfg#jmmfjdkalqjmdgjpwjmdvjpktkfm#kf#tbpjmwqlgv`jmdwfqqfpwqjboNbmz#le#wkfbqdvfp#wkbwbm#Bnfqj`bm`lmrvfpw#letjgfpsqfbg#tfqf#hjoofgp`qffm#bmg#Jm#lqgfq#wlf{sf`wfg#wlgfp`fmgbmwpbqf#ol`bwfgofdjpobwjufdfmfqbwjlmp#ab`hdqlvmgnlpw#sflsofzfbqp#bewfqwkfqf#jp#mlwkf#kjdkfpweqfrvfmwoz#wkfz#gl#mlwbqdvfg#wkbwpkltfg#wkbwsqfglnjmbmwwkfloldj`boaz#wkf#wjnf`lmpjgfqjmdpklqw.ojufg?,psbm=?,b=`bm#af#vpfgufqz#ojwwoflmf#le#wkf#kbg#boqfbgzjmwfqsqfwfg`lnnvmj`bwfefbwvqfp#ledlufqmnfmw/?,mlp`qjsw=fmwfqfg#wkf!#kfjdkw>!0Jmgfsfmgfmwslsvobwjlmpobqdf.p`bof-#Bowklvdk#vpfg#jm#wkfgfpwqv`wjlmslppjajojwzpwbqwjmd#jmwtl#lq#nlqff{sqfppjlmppvalqgjmbwfobqdfq#wkbmkjpwlqz#bmg?,lswjlm=\x0e\t@lmwjmfmwbofojnjmbwjmdtjoo#mlw#afsqb`wj`f#lejm#eqlmw#lepjwf#le#wkffmpvqf#wkbwwl#`qfbwf#bnjppjppjssjslwfmwjboozlvwpwbmgjmdafwwfq#wkbmtkbw#jp#mltpjwvbwfg#jmnfwb#mbnf>!WqbgjwjlmbopvddfpwjlmpWqbmpobwjlmwkf#elqn#lebwnlpskfqj`jgfloldj`bofmwfqsqjpfp`bo`vobwjmdfbpw#le#wkfqfnmbmwp#lesovdjmpsbdf,jmgf{-sks!Wkjp#jp#wkf#?b#kqfe>!,slsvobqjyfgjmuloufg#jmbqf#vpfg#wlbmg#pfufqbonbgf#az#wkfpffnp#wl#afojhfoz#wkbwSbofpwjmjbmmbnfg#bewfqjw#kbg#affmnlpw#`lnnlmwl#qfefq#wlavw#wkjp#jp`lmpf`vwjufwfnslqbqjozJm#dfmfqbo/`lmufmwjlmpwbhfp#sob`fpvagjujpjlmwfqqjwlqjbolsfqbwjlmbosfqnbmfmwoztbp#obqdfozlvwaqfbh#lejm#wkf#sbpwelooltjmd#b#{nomp9ld>!=?b#`obpp>!`obpp>!wf{w@lmufqpjlm#nbz#af#vpfgnbmveb`wvqfbewfq#afjmd`ofbqej{!=\trvfpwjlm#letbp#fof`wfgwl#af`lnf#baf`bvpf#le#plnf#sflsofjmpsjqfg#azpv``fppevo#b#wjnf#tkfmnlqf#`lnnlmbnlmdpw#wkfbm#leej`jbotjgwk9233&8wf`kmloldz/tbp#bglswfgwl#hffs#wkfpfwwofnfmwpojuf#ajqwkpjmgf{-kwno!@lmmf`wj`vwbppjdmfg#wl%bns8wjnfp8b``lvmw#elqbojdm>qjdkwwkf#`lnsbmzbotbzp#affmqfwvqmfg#wljmuloufnfmwAf`bvpf#wkfwkjp#sfqjlg!#mbnf>!r!#`lmejmfg#wlb#qfpvow#leubovf>!!#,=jp#b`wvboozFmujqlmnfmw\x0e\t?,kfbg=\x0e\t@lmufqpfoz/=\t?gju#jg>!3!#tjgwk>!2jp#sqlabaozkbuf#af`lnf`lmwqloojmdwkf#sqlaofn`jwjyfmp#leslojwj`jbmpqfb`kfg#wkfbp#fbqoz#bp9mlmf8#lufq?wbaof#`fooubojgjwz#legjqf`woz#wllmnlvpfgltmtkfqf#jw#jptkfm#jw#tbpnfnafqp#le#qfobwjlm#wlb``lnnlgbwfbolmd#tjwk#Jm#wkf#obwfwkf#Fmdojpkgfoj`jlvp!=wkjp#jp#mlwwkf#sqfpfmwje#wkfz#bqfbmg#ejmboozb#nbwwfq#le\x0e\t\n?,gju=\x0e\t\x0e\t?,p`qjsw=ebpwfq#wkbmnbilqjwz#lebewfq#tkj`k`lnsbqbwjufwl#nbjmwbjmjnsqluf#wkfbtbqgfg#wkffq!#`obpp>!eqbnfalqgfqqfpwlqbwjlmjm#wkf#pbnfbmbozpjp#lewkfjq#ejqpwGvqjmd#wkf#`lmwjmfmwbopfrvfm`f#leevm`wjlm+*xelmw.pjyf9#tlqh#lm#wkf?,p`qjsw=\t?afdjmp#tjwkibubp`qjsw9`lmpwjwvfmwtbp#elvmgfgfrvjojaqjvnbppvnf#wkbwjp#djufm#azmffgp#wl#af`llqgjmbwfpwkf#ubqjlvpbqf#sbqw#lelmoz#jm#wkfpf`wjlmp#lejp#b#`lnnlmwkflqjfp#legjp`lufqjfpbppl`jbwjlmfgdf#le#wkfpwqfmdwk#leslpjwjlm#jmsqfpfmw.gbzvmjufqpboozwl#elqn#wkfavw#jmpwfbg`lqslqbwjlmbwwb`kfg#wljp#`lnnlmozqfbplmp#elq#%rvlw8wkf#`bm#af#nbgftbp#baof#wltkj`k#nfbmpavw#gjg#mlwlmNlvpfLufqbp#slppjaoflsfqbwfg#az`lnjmd#eqlnwkf#sqjnbqzbggjwjlm#leelq#pfufqbowqbmpefqqfgb#sfqjlg#lebqf#baof#wlkltfufq/#jwpklvog#kbufnv`k#obqdfq\t\n?,p`qjsw=bglswfg#wkfsqlsfqwz#legjqf`wfg#azfeef`wjufoztbp#aqlvdkw`kjogqfm#leSqldqbnnjmdolmdfq#wkbmnbmvp`qjswptbq#bdbjmpwaz#nfbmp#lebmg#nlpw#lepjnjobq#wl#sqlsqjfwbqzlqjdjmbwjmdsqfpwjdjlvpdqbnnbwj`bof{sfqjfm`f-wl#nbhf#wkfJw#tbp#bopljp#elvmg#jm`lnsfwjwlqpjm#wkf#V-P-qfsob`f#wkfaqlvdkw#wkf`bo`vobwjlmeboo#le#wkfwkf#dfmfqbosqb`wj`boozjm#klmlq#leqfofbpfg#jmqfpjgfmwjbobmg#plnf#lehjmd#le#wkfqfb`wjlm#wl2pw#Fbqo#le`vowvqf#bmgsqjm`jsbooz?,wjwof=\t##wkfz#`bm#afab`h#wl#wkfplnf#le#kjpf{slpvqf#wlbqf#pjnjobqelqn#le#wkfbggEbulqjwf`jwjyfmpkjssbqw#jm#wkfsflsof#tjwkjm#sqb`wj`fwl#`lmwjmvf%bns8njmvp8bssqlufg#az#wkf#ejqpw#booltfg#wkfbmg#elq#wkfevm`wjlmjmdsobzjmd#wkfplovwjlm#wlkfjdkw>!3!#jm#kjp#allhnlqf#wkbm#belooltp#wkf`qfbwfg#wkfsqfpfm`f#jm%maps8?,wg=mbwjlmbojpwwkf#jgfb#leb#`kbqb`wfqtfqf#elq`fg#`obpp>!awmgbzp#le#wkfefbwvqfg#jmpkltjmd#wkfjmwfqfpw#jmjm#sob`f#lewvqm#le#wkfwkf#kfbg#leOlqg#le#wkfslojwj`boozkbp#jwp#ltmFgv`bwjlmbobssqlubo#leplnf#le#wkffb`k#lwkfq/afkbujlq#lebmg#af`bvpfbmg#bmlwkfqbssfbqfg#lmqf`lqgfg#jmaob`h%rvlw8nbz#jm`ovgfwkf#tlqog$p`bm#ofbg#wlqfefqp#wl#balqgfq>!3!#dlufqmnfmw#tjmmjmd#wkfqfpvowfg#jm#tkjof#wkf#Tbpkjmdwlm/wkf#pvaif`w`jwz#jm#wkf=?,gju=\x0e\t\n\nqfeof`w#wkfwl#`lnsofwfaf`bnf#nlqfqbgjlb`wjufqfif`wfg#aztjwklvw#bmzkjp#ebwkfq/tkj`k#`lvog`lsz#le#wkfwl#jmgj`bwfb#slojwj`bob``lvmwp#le`lmpwjwvwfptlqhfg#tjwkfq?,b=?,oj=le#kjp#ojefb``lnsbmjfg`ojfmwTjgwksqfufmw#wkfOfdjpobwjufgjeefqfmwozwldfwkfq#jmkbp#pfufqboelq#bmlwkfqwf{w#le#wkfelvmgfg#wkff#tjwk#wkf#jp#vpfg#elq`kbmdfg#wkfvpvbooz#wkfsob`f#tkfqftkfqfbp#wkf=#?b#kqfe>!!=?b#kqfe>!wkfnpfoufp/bowklvdk#kfwkbw#`bm#afwqbgjwjlmboqlof#le#wkfbp#b#qfpvowqfnluf@kjoggfpjdmfg#aztfpw#le#wkfPlnf#sflsofsqlgv`wjlm/pjgf#le#wkfmftpofwwfqpvpfg#az#wkfgltm#wl#wkfb``fswfg#azojuf#jm#wkfbwwfnswp#wllvwpjgf#wkfeqfrvfm`jfpKltfufq/#jmsqldqbnnfqpbw#ofbpw#jmbssql{jnbwfbowklvdk#jwtbp#sbqw#lebmg#ubqjlvpDlufqmlq#lewkf#bqwj`ofwvqmfg#jmwl=?b#kqfe>!,wkf#f`lmlnzjp#wkf#nlpwnlpw#tjgfoztlvog#obwfqbmg#sfqkbspqjpf#wl#wkfl``vqp#tkfmvmgfq#tkj`k`lmgjwjlmp-wkf#tfpwfqmwkflqz#wkbwjp#sqlgv`fgwkf#`jwz#lejm#tkj`k#kfpffm#jm#wkfwkf#`fmwqboavjogjmd#lenbmz#le#kjpbqfb#le#wkfjp#wkf#lmoznlpw#le#wkfnbmz#le#wkfwkf#TfpwfqmWkfqf#jp#mlf{wfmgfg#wlPwbwjpwj`bo`lopsbm>1#\x7fpklqw#pwlqzslppjaof#wlwlsloldj`bo`qjwj`bo#leqfslqwfg#wlb#@kqjpwjbmgf`jpjlm#wljp#frvbo#wlsqlaofnp#leWkjp#`bm#afnfq`kbmgjpfelq#nlpw#leml#fujgfm`ffgjwjlmp#lefofnfmwp#jm%rvlw8-#Wkf`ln,jnbdfp,tkj`k#nbhfpwkf#sql`fppqfnbjmp#wkfojwfqbwvqf/jp#b#nfnafqwkf#slsvobqwkf#bm`jfmwsqlaofnp#jmwjnf#le#wkfgfefbwfg#azalgz#le#wkfb#eft#zfbqpnv`k#le#wkfwkf#tlqh#le@bojelqmjb/pfqufg#bp#bdlufqmnfmw-`lm`fswp#lenlufnfmw#jm\n\n?gju#jg>!jw!#ubovf>!obmdvbdf#lebp#wkfz#bqfsqlgv`fg#jmjp#wkbw#wkff{sobjm#wkfgju=?,gju=\tKltfufq#wkfofbg#wl#wkf\n?b#kqfe>!,tbp#dqbmwfgsflsof#kbuf`lmwjmvbooztbp#pffm#bpbmg#qfobwfgwkf#qlof#lesqlslpfg#azle#wkf#afpwfb`k#lwkfq-@lmpwbmwjmfsflsof#eqlngjbof`wp#lewl#qfujpjlmtbp#qfmbnfgb#plvq`f#lewkf#jmjwjboobvm`kfg#jmsqlujgf#wkfwl#wkf#tfpwtkfqf#wkfqfbmg#pjnjobqafwtffm#wtljp#bopl#wkfFmdojpk#bmg`lmgjwjlmp/wkbw#jw#tbpfmwjwofg#wlwkfnpfoufp-rvbmwjwz#leqbmpsbqfm`zwkf#pbnf#bpwl#iljm#wkf`lvmwqz#bmgwkjp#jp#wkfWkjp#ofg#wlb#pwbwfnfmw`lmwqbpw#wlobpwJmgf{Lewkqlvdk#kjpjp#gfpjdmfgwkf#wfqn#jpjp#sqlujgfgsqlwf`w#wkfmd?,b=?,oj=Wkf#`vqqfmwwkf#pjwf#lepvapwbmwjbof{sfqjfm`f/jm#wkf#Tfpwwkfz#pklvogpolufm(ajmb`lnfmwbqjlpvmjufqpjgbg`lmgj`jlmfpb`wjujgbgfpf{sfqjfm`jbwf`mlold/Absqlgv``j/_msvmwvb`j/_mbsoj`b`j/_m`lmwqbpf/]b`bwfdlq/Abpqfdjpwqbqpfsqlefpjlmbowqbwbnjfmwlqfd/Apwqbwfpf`qfwbq/Absqjm`jsbofpsqlwf``j/_mjnslqwbmwfpjnslqwbm`jbslpjajojgbgjmwfqfpbmwf`qf`jnjfmwlmf`fpjgbgfppvp`qjajqpfbpl`jb`j/_mgjpslmjaofpfubovb`j/_mfpwvgjbmwfpqfpslmpbaofqfplov`j/_mdvbgbobibqbqfdjpwqbglplslqwvmjgbg`lnfq`jbofpelwldqbe/Abbvwlqjgbgfpjmdfmjfq/Abwfofujpj/_m`lnsfwfm`jblsfqb`jlmfpfpwbaof`jglpjnsofnfmwfb`wvbonfmwfmbufdb`j/_m`lmelqnjgbgojmf.kfjdkw9elmw.ebnjoz9!#9#!kwws9,,bssoj`bwjlmpojmh!#kqfe>!psf`jej`booz,,?"X@GBWBX\tLqdbmjybwjlmgjpwqjavwjlm3s{8#kfjdkw9qfobwjlmpkjsgfuj`f.tjgwk?gju#`obpp>!?obafo#elq>!qfdjpwqbwjlm?,mlp`qjsw=\t,jmgf{-kwno!tjmglt-lsfm+#"jnslqwbmw8bssoj`bwjlm,jmgfsfmgfm`f,,ttt-dlldoflqdbmjybwjlmbvwl`lnsofwfqfrvjqfnfmwp`lmpfqubwjuf?elqn#mbnf>!jmwfoof`wvbonbqdjm.ofew92;wk#`fmwvqzbm#jnslqwbmwjmpwjwvwjlmpbaaqfujbwjlm?jnd#`obpp>!lqdbmjpbwjlm`jujojybwjlm2:wk#`fmwvqzbq`kjwf`wvqfjm`lqslqbwfg13wk#`fmwvqz.`lmwbjmfq!=nlpw#mlwbaoz,=?,b=?,gju=mlwjej`bwjlm$vmgfejmfg$*Evqwkfqnlqf/afojfuf#wkbwjmmfqKWNO#>#sqjlq#wl#wkfgqbnbwj`boozqfefqqjmd#wlmfdlwjbwjlmpkfbgrvbqwfqpPlvwk#Beqj`bvmpv``fppevoSfmmpzoubmjbBp#b#qfpvow/?kwno#obmd>!%ow8,pvs%dw8gfbojmd#tjwkskjobgfoskjbkjpwlqj`booz*8?,p`qjsw=\tsbggjmd.wls9f{sfqjnfmwbodfwBwwqjavwfjmpwqv`wjlmpwf`kmloldjfpsbqw#le#wkf#>evm`wjlm+*xpvap`qjswjlmo-gwg!=\x0e\t?kwdfldqbskj`bo@lmpwjwvwjlm$/#evm`wjlm+pvsslqwfg#azbdqj`vowvqbo`lmpwqv`wjlmsvaoj`bwjlmpelmw.pjyf9#2b#ubqjfwz#le?gju#pwzof>!Fm`z`olsfgjbjeqbnf#pq`>!gfnlmpwqbwfgb``lnsojpkfgvmjufqpjwjfpGfnldqbskj`p*8?,p`qjsw=?gfgj`bwfg#wlhmltofgdf#lepbwjpeb`wjlmsbqwj`vobqoz?,gju=?,gju=Fmdojpk#+VP*bssfmg@kjog+wqbmpnjppjlmp-#Kltfufq/#jmwfoojdfm`f!#wbajmgf{>!eolbw9qjdkw8@lnnlmtfbowkqbmdjmd#eqlnjm#tkj`k#wkfbw#ofbpw#lmfqfsqlgv`wjlmfm`z`olsfgjb8elmw.pjyf92ivqjpgj`wjlmbw#wkbw#wjnf!=?b#`obpp>!Jm#bggjwjlm/gfp`qjswjlm(`lmufqpbwjlm`lmwb`w#tjwkjp#dfmfqboozq!#`lmwfmw>!qfsqfpfmwjmd%ow8nbwk%dw8sqfpfmwbwjlml``bpjlmbooz?jnd#tjgwk>!mbujdbwjlm!=`lnsfmpbwjlm`kbnsjlmpkjsnfgjb>!boo!#ujlobwjlm#leqfefqfm`f#wlqfwvqm#wqvf8Pwqj`w,,FM!#wqbmpb`wjlmpjmwfqufmwjlmufqjej`bwjlmJmelqnbwjlm#gjeej`vowjfp@kbnsjlmpkjs`bsbajojwjfp?"Xfmgje^..=~\t?,p`qjsw=\t@kqjpwjbmjwzelq#f{bnsof/Sqlefppjlmboqfpwqj`wjlmppvddfpw#wkbwtbp#qfofbpfg+pv`k#bp#wkfqfnluf@obpp+vmfnsolznfmwwkf#Bnfqj`bmpwqv`wvqf#le,jmgf{-kwno#svaojpkfg#jmpsbm#`obpp>!!=?b#kqfe>!,jmwqlgv`wjlmafolmdjmd#wl`objnfg#wkbw`lmpfrvfm`fp?nfwb#mbnf>!Dvjgf#wl#wkflufqtkfonjmdbdbjmpw#wkf#`lm`fmwqbwfg/\t-mlmwlv`k#lapfqubwjlmp?,b=\t?,gju=\te#+gl`vnfmw-alqgfq9#2s{#xelmw.pjyf92wqfbwnfmw#le3!#kfjdkw>!2nlgjej`bwjlmJmgfsfmgfm`fgjujgfg#jmwldqfbwfq#wkbmb`kjfufnfmwpfpwbaojpkjmdIbubP`qjsw!#mfufqwkfofpppjdmjej`bm`fAqlbg`bpwjmd=%maps8?,wg=`lmwbjmfq!=\tpv`k#bp#wkf#jmeovfm`f#leb#sbqwj`vobqpq`>$kwws9,,mbujdbwjlm!#kboe#le#wkf#pvapwbmwjbo#%maps8?,gju=bgubmwbdf#legjp`lufqz#leevmgbnfmwbo#nfwqlslojwbmwkf#lsslpjwf!#{no9obmd>!gfojafqbwfozbojdm>`fmwfqfulovwjlm#lesqfpfqubwjlmjnsqlufnfmwpafdjmmjmd#jmIfpvp#@kqjpwSvaoj`bwjlmpgjpbdqffnfmwwf{w.bojdm9q/#evm`wjlm+*pjnjobqjwjfpalgz=?,kwno=jp#`vqqfmwozboskbafwj`bojp#plnfwjnfpwzsf>!jnbdf,nbmz#le#wkf#eolt9kjggfm8bubjobaof#jmgfp`qjaf#wkff{jpwfm`f#leboo#lufq#wkfwkf#Jmwfqmfw\n?vo#`obpp>!jmpwboobwjlmmfjdkalqkllgbqnfg#elq`fpqfgv`jmd#wkf`lmwjmvfp#wlMlmfwkfofpp/wfnsfqbwvqfp\t\n\n?b#kqfe>!`olpf#wl#wkff{bnsofp#le#jp#balvw#wkf+pff#afolt*-!#jg>!pfbq`ksqlefppjlmbojp#bubjobaofwkf#leej`jbo\n\n?,p`qjsw=\t\t\n\n?gju#jg>!b``fofqbwjlmwkqlvdk#wkf#Kboo#le#Ebnfgfp`qjswjlmpwqbmpobwjlmpjmwfqefqfm`f#wzsf>$wf{w,qf`fmw#zfbqpjm#wkf#tlqogufqz#slsvobqxab`hdqlvmg9wqbgjwjlmbo#plnf#le#wkf#`lmmf`wfg#wlf{soljwbwjlmfnfqdfm`f#le`lmpwjwvwjlmB#Kjpwlqz#lepjdmjej`bmw#nbmveb`wvqfgf{sf`wbwjlmp=?mlp`qjsw=?`bm#af#elvmgaf`bvpf#wkf#kbp#mlw#affmmfjdkalvqjmdtjwklvw#wkf#bggfg#wl#wkf\n?oj#`obpp>!jmpwqvnfmwboPlujfw#Vmjlmb`hmltofgdfgtkj`k#`bm#afmbnf#elq#wkfbwwfmwjlm#wlbwwfnswp#wl#gfufolsnfmwpJm#eb`w/#wkf?oj#`obpp>!bjnsoj`bwjlmppvjwbaof#elqnv`k#le#wkf#`lolmjybwjlmsqfpjgfmwjbo`bm`foAvaaof#Jmelqnbwjlmnlpw#le#wkf#jp#gfp`qjafgqfpw#le#wkf#nlqf#lq#ofppjm#PfswfnafqJmwfoojdfm`fpq`>!kwws9,,s{8#kfjdkw9#bubjobaof#wlnbmveb`wvqfqkvnbm#qjdkwpojmh#kqfe>!,bubjobajojwzsqlslqwjlmbolvwpjgf#wkf#bpwqlmlnj`bokvnbm#afjmdpmbnf#le#wkf#bqf#elvmg#jmbqf#abpfg#lmpnboofq#wkbmb#sfqplm#tklf{sbmpjlm#lebqdvjmd#wkbwmlt#hmltm#bpJm#wkf#fbqozjmwfqnfgjbwfgfqjufg#eqlnP`bmgjmbujbm?,b=?,gju=\x0e\t`lmpjgfq#wkfbm#fpwjnbwfgwkf#Mbwjlmbo?gju#jg>!sbdqfpvowjmd#jm`lnnjppjlmfgbmboldlvp#wlbqf#qfrvjqfg,vo=\t?,gju=\ttbp#abpfg#lmbmg#af`bnf#b%maps8%maps8w!#ubovf>!!#tbp#`bswvqfgml#nlqf#wkbmqfpsf`wjufoz`lmwjmvf#wl#=\x0e\t?kfbg=\x0e\t?tfqf#`qfbwfgnlqf#dfmfqbojmelqnbwjlm#vpfg#elq#wkfjmgfsfmgfmw#wkf#Jnsfqjbo`lnslmfmw#lewl#wkf#mlqwkjm`ovgf#wkf#@lmpwqv`wjlmpjgf#le#wkf#tlvog#mlw#afelq#jmpwbm`fjmufmwjlm#lenlqf#`lnsof{`loof`wjufozab`hdqlvmg9#wf{w.bojdm9#jwp#lqjdjmbojmwl#b``lvmwwkjp#sql`fppbm#f{wfmpjufkltfufq/#wkfwkfz#bqf#mlwqfif`wfg#wkf`qjwj`jpn#legvqjmd#tkj`ksqlabaoz#wkfwkjp#bqwj`of+evm`wjlm+*xJw#pklvog#afbm#bdqffnfmwb``jgfmwboozgjeefqp#eqlnBq`kjwf`wvqfafwwfq#hmltmbqqbmdfnfmwpjmeovfm`f#lmbwwfmgfg#wkfjgfmwj`bo#wlplvwk#le#wkfsbpp#wkqlvdk{no!#wjwof>!tfjdkw9alog8`qfbwjmd#wkfgjpsobz9mlmfqfsob`fg#wkf?jnd#pq`>!,jkwwsp9,,ttt-Tlqog#Tbq#JJwfpwjnlmjbopelvmg#jm#wkfqfrvjqfg#wl#bmg#wkbw#wkfafwtffm#wkf#tbp#gfpjdmfg`lmpjpwp#le#`lmpjgfqbaozsvaojpkfg#azwkf#obmdvbdf@lmpfqubwjlm`lmpjpwfg#leqfefq#wl#wkfab`h#wl#wkf#`pp!#nfgjb>!Sflsof#eqln#bubjobaof#lmsqlufg#wl#afpvddfpwjlmp!tbp#hmltm#bpubqjfwjfp#leojhfoz#wl#af`lnsqjpfg#lepvsslqw#wkf#kbmgp#le#wkf`lvsofg#tjwk`lmmf`w#bmg#alqgfq9mlmf8sfqelqnbm`fpafelqf#afjmdobwfq#af`bnf`bo`vobwjlmplewfm#`boofgqfpjgfmwp#lenfbmjmd#wkbw=?oj#`obpp>!fujgfm`f#elqf{sobmbwjlmpfmujqlmnfmwp!=?,b=?,gju=tkj`k#booltpJmwqlgv`wjlmgfufolsfg#azb#tjgf#qbmdflm#afkboe#leubojdm>!wls!sqjm`jsof#lebw#wkf#wjnf/?,mlp`qjsw=\x0epbjg#wl#kbufjm#wkf#ejqpwtkjof#lwkfqpkzslwkfwj`boskjolplskfqpsltfq#le#wkf`lmwbjmfg#jmsfqelqnfg#azjmbajojwz#wltfqf#tqjwwfmpsbm#pwzof>!jmsvw#mbnf>!wkf#rvfpwjlmjmwfmgfg#elqqfif`wjlm#lejnsojfp#wkbwjmufmwfg#wkfwkf#pwbmgbqgtbp#sqlabaozojmh#afwtffmsqlefpplq#lejmwfqb`wjlmp`kbmdjmd#wkfJmgjbm#L`fbm#`obpp>!obpwtlqhjmd#tjwk$kwws9,,ttt-zfbqp#afelqfWkjp#tbp#wkfqf`qfbwjlmbofmwfqjmd#wkfnfbpvqfnfmwpbm#f{wqfnfozubovf#le#wkfpwbqw#le#wkf\t?,p`qjsw=\t\tbm#feelqw#wljm`qfbpf#wkfwl#wkf#plvwkpsb`jmd>!3!=pveej`jfmwozwkf#Fvqlsfbm`lmufqwfg#wl`ofbqWjnflvwgjg#mlw#kbuf`lmpfrvfmwozelq#wkf#mf{wf{wfmpjlm#lef`lmlnj`#bmgbowklvdk#wkfbqf#sqlgv`fgbmg#tjwk#wkfjmpveej`jfmwdjufm#az#wkfpwbwjmd#wkbwf{sfmgjwvqfp?,psbm=?,b=\twklvdkw#wkbwlm#wkf#abpjp`foosbggjmd>jnbdf#le#wkfqfwvqmjmd#wljmelqnbwjlm/pfsbqbwfg#azbppbppjmbwfgp!#`lmwfmw>!bvwklqjwz#lemlqwktfpwfqm?,gju=\t?gju#!=?,gju=\x0e\t##`lmpvowbwjlm`lnnvmjwz#lewkf#mbwjlmbojw#pklvog#afsbqwj`jsbmwp#bojdm>!ofewwkf#dqfbwfpwpfof`wjlm#lepvsfqmbwvqbogfsfmgfmw#lmjp#nfmwjlmfgbooltjmd#wkftbp#jmufmwfgb``lnsbmzjmdkjp#sfqplmbobubjobaof#bwpwvgz#le#wkflm#wkf#lwkfqf{f`vwjlm#leKvnbm#Qjdkwpwfqnp#le#wkfbppl`jbwjlmpqfpfbq`k#bmgpv``ffgfg#azgfefbwfg#wkfbmg#eqln#wkfavw#wkfz#bqf`lnnbmgfq#lepwbwf#le#wkfzfbqp#le#bdfwkf#pwvgz#le?vo#`obpp>!psob`f#jm#wkftkfqf#kf#tbp?oj#`obpp>!ewkfqf#bqf#mltkj`k#af`bnfkf#svaojpkfgf{sqfppfg#jmwl#tkj`k#wkf`lnnjppjlmfqelmw.tfjdkw9wfqqjwlqz#lef{wfmpjlmp!=Qlnbm#Fnsjqffrvbo#wl#wkfJm#`lmwqbpw/kltfufq/#bmgjp#wzsj`boozbmg#kjp#tjef+bopl#`boofg=?vo#`obpp>!feef`wjufoz#fuloufg#jmwlpffn#wl#kbuftkj`k#jp#wkfwkfqf#tbp#mlbm#f{`foofmwboo#le#wkfpfgfp`qjafg#azJm#sqb`wj`f/aqlbg`bpwjmd`kbqdfg#tjwkqfeof`wfg#jmpvaif`wfg#wlnjojwbqz#bmgwl#wkf#sljmwf`lmlnj`boozpfwWbqdfwjmdbqf#b`wvboozuj`wlqz#lufq+*8?,p`qjsw=`lmwjmvlvpozqfrvjqfg#elqfulovwjlmbqzbm#feef`wjufmlqwk#le#wkf/#tkj`k#tbp#eqlmw#le#wkflq#lwkfqtjpfplnf#elqn#lekbg#mlw#affmdfmfqbwfg#azjmelqnbwjlm-sfqnjwwfg#wljm`ovgfp#wkfgfufolsnfmw/fmwfqfg#jmwlwkf#sqfujlvp`lmpjpwfmwozbqf#hmltm#bpwkf#ejfog#lewkjp#wzsf#ledjufm#wl#wkfwkf#wjwof#le`lmwbjmp#wkfjmpwbm`fp#lejm#wkf#mlqwkgvf#wl#wkfjqbqf#gfpjdmfg`lqslqbwjlmptbp#wkbw#wkflmf#le#wkfpfnlqf#slsvobqpv``ffgfg#jmpvsslqw#eqlnjm#gjeefqfmwglnjmbwfg#azgfpjdmfg#elqltmfqpkjs#lebmg#slppjaozpwbmgbqgjyfgqfpslmpfWf{wtbp#jmwfmgfgqf`fjufg#wkfbppvnfg#wkbwbqfbp#le#wkfsqjnbqjoz#jmwkf#abpjp#lejm#wkf#pfmpfb``lvmwp#elqgfpwqlzfg#azbw#ofbpw#wtltbp#gf`obqfg`lvog#mlw#afPf`qfwbqz#lebssfbq#wl#afnbqdjm.wls92,]_p(\x7f_p(\',df*xwkqlt#f~8wkf#pwbqw#lewtl#pfsbqbwfobmdvbdf#bmgtkl#kbg#affmlsfqbwjlm#legfbwk#le#wkfqfbo#mvnafqp\n?ojmh#qfo>!sqlujgfg#wkfwkf#pwlqz#le`lnsfwjwjlmpfmdojpk#+VH*fmdojpk#+VP*#evm`wjlm+*-isd!#tjgwk>!`lmejdvqbwjlm-smd!#tjgwk>!?algz#`obpp>!Nbwk-qbmgln+*`lmwfnslqbqz#Vmjwfg#Pwbwfp`jq`vnpwbm`fp-bssfmg@kjog+lqdbmjybwjlmp?psbm#`obpp>!!=?jnd#pq`>!,gjpwjmdvjpkfgwklvpbmgp#le#`lnnvmj`bwjlm`ofbq!=?,gju=jmufpwjdbwjlmebuj`lm-j`l!#nbqdjm.qjdkw9abpfg#lm#wkf#Nbppb`kvpfwwpwbaof#alqgfq>jmwfqmbwjlmbobopl#hmltm#bpsqlmvm`jbwjlmab`hdqlvmg9 esbggjmd.ofew9Elq#f{bnsof/#njp`foobmflvp%ow8,nbwk%dw8spz`kloldj`bojm#sbqwj`vobqfbq`k!#wzsf>!elqn#nfwklg>!bp#lsslpfg#wlPvsqfnf#@lvqwl``bpjlmbooz#Bggjwjlmbooz/Mlqwk#Bnfqj`bs{8ab`hdqlvmglsslqwvmjwjfpFmwfqwbjmnfmw-wlOltfq@bpf+nbmveb`wvqjmdsqlefppjlmbo#`lnajmfg#tjwkElq#jmpwbm`f/`lmpjpwjmd#le!#nb{ofmdwk>!qfwvqm#ebopf8`lmp`jlvpmfppNfgjwfqqbmfbmf{wqblqgjmbqzbppbppjmbwjlmpvapfrvfmwoz#avwwlm#wzsf>!wkf#mvnafq#lewkf#lqjdjmbo#`lnsqfkfmpjufqfefqp#wl#wkf?,vo=\t?,gju=\tskjolplskj`bool`bwjlm-kqfetbp#svaojpkfgPbm#Eqbm`jp`l+evm`wjlm+*x\t?gju#jg>!nbjmplskjpwj`bwfgnbwkfnbwj`bo#,kfbg=\x0e\t?algzpvddfpwp#wkbwgl`vnfmwbwjlm`lm`fmwqbwjlmqfobwjlmpkjspnbz#kbuf#affm+elq#f{bnsof/Wkjp#bqwj`of#jm#plnf#`bpfpsbqwp#le#wkf#gfejmjwjlm#leDqfbw#Aqjwbjm#`foosbggjmd>frvjubofmw#wlsob`fklogfq>!8#elmw.pjyf9#ivpwjej`bwjlmafojfufg#wkbwpveefqfg#eqlnbwwfnswfg#wl#ofbgfq#le#wkf`qjsw!#pq`>!,+evm`wjlm+*#xbqf#bubjobaof\t\n?ojmh#qfo>!#pq`>$kwws9,,jmwfqfpwfg#jm`lmufmwjlmbo#!#bow>!!#,=?,bqf#dfmfqboozkbp#bopl#affmnlpw#slsvobq#`lqqfpslmgjmd`qfgjwfg#tjwkwzof>!alqgfq9?,b=?,psbm=?,-dje!#tjgwk>!?jeqbnf#pq`>!wbaof#`obpp>!jmojmf.aol`h8b``lqgjmd#wl#wldfwkfq#tjwkbssql{jnbwfozsbqojbnfmwbqznlqf#bmg#nlqfgjpsobz9mlmf8wqbgjwjlmboozsqfglnjmbmwoz%maps8\x7f%maps8%maps8?,psbm=#`foopsb`jmd>?jmsvw#mbnf>!lq!#`lmwfmw>!`lmwqlufqpjbosqlsfqwz>!ld9,{.pkl`htbuf.gfnlmpwqbwjlmpvqqlvmgfg#azMfufqwkfofpp/tbp#wkf#ejqpw`lmpjgfqbaof#Bowklvdk#wkf#`loobalqbwjlmpklvog#mlw#afsqlslqwjlm#le?psbm#pwzof>!hmltm#bp#wkf#pklqwoz#bewfqelq#jmpwbm`f/gfp`qjafg#bp#,kfbg=\t?algz#pwbqwjmd#tjwkjm`qfbpjmdoz#wkf#eb`w#wkbwgjp`vppjlm#lenjggof#le#wkfbm#jmgjujgvbogjeej`vow#wl#sljmw#le#ujftklnlpf{vbojwzb``fswbm`f#le?,psbm=?,gju=nbmveb`wvqfqplqjdjm#le#wkf`lnnlmoz#vpfgjnslqwbm`f#legfmlnjmbwjlmpab`hdqlvmg9# ofmdwk#le#wkfgfwfqnjmbwjlmb#pjdmjej`bmw!#alqgfq>!3!=qfulovwjlmbqzsqjm`jsofp#lejp#`lmpjgfqfgtbp#gfufolsfgJmgl.Fvqlsfbmuvomfqbaof#wlsqlslmfmwp#lebqf#plnfwjnfp`olpfq#wl#wkfMft#Zlqh#@jwz#mbnf>!pfbq`kbwwqjavwfg#wl`lvqpf#le#wkfnbwkfnbwj`jbmaz#wkf#fmg#lebw#wkf#fmg#le!#alqgfq>!3!#wf`kmloldj`bo-qfnluf@obpp+aqbm`k#le#wkffujgfm`f#wkbw"Xfmgje^..=\x0e\tJmpwjwvwf#le#jmwl#b#pjmdofqfpsf`wjufoz-bmg#wkfqfelqfsqlsfqwjfp#lejp#ol`bwfg#jmplnf#le#tkj`kWkfqf#jp#bopl`lmwjmvfg#wl#bssfbqbm`f#le#%bns8mgbpk8#gfp`qjafp#wkf`lmpjgfqbwjlmbvwklq#le#wkfjmgfsfmgfmwozfrvjssfg#tjwkglfp#mlw#kbuf?,b=?b#kqfe>!`lmevpfg#tjwk?ojmh#kqfe>!,bw#wkf#bdf#lebssfbq#jm#wkfWkfpf#jm`ovgfqfdbqgofpp#le`lvog#af#vpfg#pwzof>%rvlw8pfufqbo#wjnfpqfsqfpfmw#wkfalgz=\t?,kwno=wklvdkw#wl#afslsvobwjlm#leslppjajojwjfpsfq`fmwbdf#leb``fpp#wl#wkfbm#bwwfnsw#wlsqlgv`wjlm#leirvfqz,irvfqzwtl#gjeefqfmwafolmd#wl#wkffpwbaojpknfmwqfsob`jmd#wkfgfp`qjswjlm!#gfwfqnjmf#wkfbubjobaof#elqB``lqgjmd#wl#tjgf#qbmdf#le\n?gju#`obpp>!nlqf#`lnnlmozlqdbmjpbwjlmpevm`wjlmbojwztbp#`lnsofwfg#%bns8ngbpk8#sbqwj`jsbwjlmwkf#`kbqb`wfqbm#bggjwjlmbobssfbqp#wl#afeb`w#wkbw#wkfbm#f{bnsof#lepjdmjej`bmwozlmnlvpflufq>!af`bvpf#wkfz#bpzm`#>#wqvf8sqlaofnp#tjwkpffnp#wl#kbufwkf#qfpvow#le#pq`>!kwws9,,ebnjojbq#tjwkslppfppjlm#leevm`wjlm#+*#xwllh#sob`f#jmbmg#plnfwjnfppvapwbmwjbooz?psbm=?,psbm=jp#lewfm#vpfgjm#bm#bwwfnswdqfbw#gfbo#leFmujqlmnfmwbopv``fppevooz#ujqwvbooz#boo13wk#`fmwvqz/sqlefppjlmbopmf`fppbqz#wl#gfwfqnjmfg#az`lnsbwjajojwzaf`bvpf#jw#jpGj`wjlmbqz#lenlgjej`bwjlmpWkf#elooltjmdnbz#qfefq#wl9@lmpfrvfmwoz/Jmwfqmbwjlmbobowklvdk#plnfwkbw#tlvog#aftlqog$p#ejqpw`obppjejfg#bpalwwln#le#wkf+sbqwj`vobqozbojdm>!ofew!#nlpw#`lnnlmozabpjp#elq#wkfelvmgbwjlm#le`lmwqjavwjlmpslsvobqjwz#le`fmwfq#le#wkfwl#qfgv`f#wkfivqjpgj`wjlmpbssql{jnbwjlm#lmnlvpflvw>!Mft#Wfpwbnfmw`loof`wjlm#le?,psbm=?,b=?,jm#wkf#Vmjwfgejon#gjqf`wlq.pwqj`w-gwg!=kbp#affm#vpfgqfwvqm#wl#wkfbowklvdk#wkjp`kbmdf#jm#wkfpfufqbo#lwkfqavw#wkfqf#bqfvmsqf`fgfmwfgjp#pjnjobq#wlfpsf`jbooz#jmtfjdkw9#alog8jp#`boofg#wkf`lnsvwbwjlmbojmgj`bwf#wkbwqfpwqj`wfg#wl\n?nfwb#mbnf>!bqf#wzsj`booz`lmeoj`w#tjwkKltfufq/#wkf#Bm#f{bnsof#le`lnsbqfg#tjwkrvbmwjwjfp#leqbwkfq#wkbm#b`lmpwfoobwjlmmf`fppbqz#elqqfslqwfg#wkbwpsf`jej`bwjlmslojwj`bo#bmg%maps8%maps8?qfefqfm`fp#wlwkf#pbnf#zfbqDlufqmnfmw#ledfmfqbwjlm#lekbuf#mlw#affmpfufqbo#zfbqp`lnnjwnfmw#wl\n\n?vo#`obpp>!ujpvbojybwjlm2:wk#`fmwvqz/sqb`wjwjlmfqpwkbw#kf#tlvogbmg#`lmwjmvfgl``vsbwjlm#lejp#gfejmfg#bp`fmwqf#le#wkfwkf#bnlvmw#le=?gju#pwzof>!frvjubofmw#legjeefqfmwjbwfaqlvdkw#balvwnbqdjm.ofew9#bvwlnbwj`boozwklvdkw#le#bpPlnf#le#wkfpf\t?gju#`obpp>!jmsvw#`obpp>!qfsob`fg#tjwkjp#lmf#le#wkffgv`bwjlm#bmgjmeovfm`fg#azqfsvwbwjlm#bp\t?nfwb#mbnf>!b``lnnlgbwjlm?,gju=\t?,gju=obqdf#sbqw#leJmpwjwvwf#elqwkf#pl.`boofg#bdbjmpw#wkf#Jm#wkjp#`bpf/tbp#bssljmwfg`objnfg#wl#afKltfufq/#wkjpGfsbqwnfmw#lewkf#qfnbjmjmdfeef`w#lm#wkfsbqwj`vobqoz#gfbo#tjwk#wkf\t?gju#pwzof>!bonlpw#botbzpbqf#`vqqfmwozf{sqfppjlm#leskjolplskz#leelq#nlqf#wkbm`jujojybwjlmplm#wkf#jpobmgpfof`wfgJmgf{`bm#qfpvow#jm!#ubovf>!!#,=wkf#pwqv`wvqf#,=?,b=?,gju=Nbmz#le#wkfpf`bvpfg#az#wkfle#wkf#Vmjwfgpsbm#`obpp>!n`bm#af#wqb`fgjp#qfobwfg#wlaf`bnf#lmf#lejp#eqfrvfmwozojujmd#jm#wkfwkflqfwj`boozElooltjmd#wkfQfulovwjlmbqzdlufqmnfmw#jmjp#gfwfqnjmfgwkf#slojwj`bojmwqlgv`fg#jmpveej`jfmw#wlgfp`qjswjlm!=pklqw#pwlqjfppfsbqbwjlm#lebp#wl#tkfwkfqhmltm#elq#jwptbp#jmjwjboozgjpsobz9aol`hjp#bm#f{bnsofwkf#sqjm`jsbo`lmpjpwp#le#bqf`ldmjyfg#bp,algz=?,kwno=b#pvapwbmwjboqf`lmpwqv`wfgkfbg#le#pwbwfqfpjpwbm`f#wlvmgfqdqbgvbwfWkfqf#bqf#wtldqbujwbwjlmbobqf#gfp`qjafgjmwfmwjlmboozpfqufg#bp#wkf`obpp>!kfbgfqlsslpjwjlm#wlevmgbnfmwboozglnjmbwfg#wkfbmg#wkf#lwkfqboojbm`f#tjwktbp#elq`fg#wlqfpsf`wjufoz/bmg#slojwj`bojm#pvsslqw#lesflsof#jm#wkf13wk#`fmwvqz-bmg#svaojpkfgolbg@kbqwafbwwl#vmgfqpwbmgnfnafq#pwbwfpfmujqlmnfmwboejqpw#kboe#le`lvmwqjfp#bmgbq`kjwf`wvqboaf#`lmpjgfqfg`kbqb`wfqjyfg`ofbqJmwfqubobvwklqjwbwjufEfgfqbwjlm#letbp#pv``ffgfgbmg#wkfqf#bqfb#`lmpfrvfm`fwkf#Sqfpjgfmwbopl#jm`ovgfgeqff#plewtbqfpv``fppjlm#legfufolsfg#wkftbp#gfpwqlzfgbtbz#eqln#wkf8\t?,p`qjsw=\t?bowklvdk#wkfzelooltfg#az#bnlqf#sltfqevoqfpvowfg#jm#bVmjufqpjwz#leKltfufq/#nbmzwkf#sqfpjgfmwKltfufq/#plnfjp#wklvdkw#wlvmwjo#wkf#fmgtbp#bmmlvm`fgbqf#jnslqwbmwbopl#jm`ovgfp=?jmsvw#wzsf>wkf#`fmwfq#le#GL#MLW#BOWFQvpfg#wl#qfefqwkfnfp,wkbw#kbg#affmwkf#abpjp#elqkbp#gfufolsfgjm#wkf#pvnnfq`lnsbqbwjufozgfp`qjafg#wkfpv`k#bp#wklpfwkf#qfpvowjmdjp#jnslppjaofubqjlvp#lwkfqPlvwk#Beqj`bmkbuf#wkf#pbnffeef`wjufmfppjm#tkj`k#`bpf8#wf{w.bojdm9pwqv`wvqf#bmg8#ab`hdqlvmg9qfdbqgjmd#wkfpvsslqwfg#wkfjp#bopl#hmltmpwzof>!nbqdjmjm`ovgjmd#wkfabkbpb#Nfobzvmlqph#alhn/Iomlqph#mzmlqphpolufm)M(ajmbjmwfqmb`jlmbo`bojej`b`j/_m`lnvmj`b`j/_m`lmpwqv``j/_m!=?gju#`obpp>!gjpbnajdvbwjlmGlnbjmMbnf$/#$bgnjmjpwqbwjlmpjnvowbmflvpozwqbmpslqwbwjlmJmwfqmbwjlmbo#nbqdjm.alwwln9qfpslmpjajojwz?"Xfmgje^..=\t?,=?nfwb#mbnf>!jnsofnfmwbwjlmjmeqbpwqv`wvqfqfsqfpfmwbwjlmalqgfq.alwwln9?,kfbg=\t?algz=>kwws&0B&1E&1E?elqn#nfwklg>!nfwklg>!slpw!#,ebuj`lm-j`l!#~*8\t?,p`qjsw=\t-pfwBwwqjavwf+Bgnjmjpwqbwjlm>#mft#Bqqbz+*8?"Xfmgje^..=\x0e\tgjpsobz9aol`h8Vmelqwvmbwfoz/!=%maps8?,gju=,ebuj`lm-j`l!=>$pwzofpkffw$#jgfmwjej`bwjlm/#elq#f{bnsof/?oj=?b#kqfe>!,bm#bowfqmbwjufbp#b#qfpvow#lesw!=?,p`qjsw=\twzsf>!pvanjw!#\t+evm`wjlm+*#xqf`lnnfmgbwjlmelqn#b`wjlm>!,wqbmpelqnbwjlmqf`lmpwqv`wjlm-pwzof-gjpsobz#B``lqgjmd#wl#kjggfm!#mbnf>!bolmd#tjwk#wkfgl`vnfmw-algz-bssql{jnbwfoz#@lnnvmj`bwjlmpslpw!#b`wjlm>!nfbmjmd#%rvlw8..?"Xfmgje^..=Sqjnf#Njmjpwfq`kbqb`wfqjpwj`?,b=#?b#`obpp>wkf#kjpwlqz#le#lmnlvpflufq>!wkf#dlufqmnfmwkqfe>!kwwsp9,,tbp#lqjdjmbooztbp#jmwqlgv`fg`obppjej`bwjlmqfsqfpfmwbwjufbqf#`lmpjgfqfg?"Xfmgje^..=\t\tgfsfmgp#lm#wkfVmjufqpjwz#le#jm#`lmwqbpw#wl#sob`fklogfq>!jm#wkf#`bpf#lejmwfqmbwjlmbo#`lmpwjwvwjlmbopwzof>!alqgfq.9#evm`wjlm+*#xAf`bvpf#le#wkf.pwqj`w-gwg!=\t?wbaof#`obpp>!b``lnsbmjfg#azb``lvmw#le#wkf?p`qjsw#pq`>!,mbwvqf#le#wkf#wkf#sflsof#jm#jm#bggjwjlm#wlp*8#ip-jg#>#jg!#tjgwk>!233&!qfdbqgjmd#wkf#Qlnbm#@bwkloj`bm#jmgfsfmgfmwelooltjmd#wkf#-dje!#tjgwk>!2wkf#elooltjmd#gjp`qjnjmbwjlmbq`kbfloldj`bosqjnf#njmjpwfq-ip!=?,p`qjsw=`lnajmbwjlm#le#nbqdjmtjgwk>!`qfbwfFofnfmw+t-bwwb`kFufmw+?,b=?,wg=?,wq=pq`>!kwwsp9,,bJm#sbqwj`vobq/#bojdm>!ofew!#@yf`k#Qfsvaoj`Vmjwfg#Hjmdgln`lqqfpslmgfm`f`lm`ovgfg#wkbw-kwno!#wjwof>!+evm`wjlm#+*#x`lnfp#eqln#wkfbssoj`bwjlm#le?psbm#`obpp>!pafojfufg#wl#affnfmw+$p`qjsw$?,b=\t?,oj=\t?ojufqz#gjeefqfmw=?psbm#`obpp>!lswjlm#ubovf>!+bopl#hmltm#bp\n?oj=?b#kqfe>!=?jmsvw#mbnf>!pfsbqbwfg#eqlnqfefqqfg#wl#bp#ubojdm>!wls!=elvmgfq#le#wkfbwwfnswjmd#wl#`bqalm#gjl{jgf\t\t?gju#`obpp>!`obpp>!pfbq`k.,algz=\t?,kwno=lsslqwvmjwz#wl`lnnvmj`bwjlmp?,kfbg=\x0e\t?algz#pwzof>!tjgwk9Wj\rVSmd#Uj\rWkw`kbmdfp#jm#wkfalqgfq.`lolq9 3!#alqgfq>!3!#?,psbm=?,gju=?tbp#gjp`lufqfg!#wzsf>!wf{w!#*8\t?,p`qjsw=\t\tGfsbqwnfmw#le#f``ofpjbpwj`bowkfqf#kbp#affmqfpvowjmd#eqln?,algz=?,kwno=kbp#mfufq#affmwkf#ejqpw#wjnfjm#qfpslmpf#wlbvwlnbwj`booz#?,gju=\t\t?gju#jtbp#`lmpjgfqfgsfq`fmw#le#wkf!#,=?,b=?,gju=`loof`wjlm#le#gfp`fmgfg#eqlnpf`wjlm#le#wkfb``fsw.`kbqpfwwl#af#`lmevpfgnfnafq#le#wkf#sbggjmd.qjdkw9wqbmpobwjlm#lejmwfqsqfwbwjlm#kqfe>$kwws9,,tkfwkfq#lq#mlwWkfqf#bqf#boplwkfqf#bqf#nbmzb#pnboo#mvnafqlwkfq#sbqwp#lejnslppjaof#wl##`obpp>!avwwlmol`bwfg#jm#wkf-#Kltfufq/#wkfbmg#fufmwvboozBw#wkf#fmg#le#af`bvpf#le#jwpqfsqfpfmwp#wkf?elqn#b`wjlm>!#nfwklg>!slpw!jw#jp#slppjaofnlqf#ojhfoz#wlbm#jm`qfbpf#jmkbuf#bopl#affm`lqqfpslmgp#wlbmmlvm`fg#wkbwbojdm>!qjdkw!=nbmz#`lvmwqjfpelq#nbmz#zfbqpfbqojfpw#hmltmaf`bvpf#jw#tbpsw!=?,p`qjsw=\x0e#ubojdm>!wls!#jmkbajwbmwp#leelooltjmd#zfbq\x0e\t?gju#`obpp>!njoojlm#sflsof`lmwqlufqpjbo#`lm`fqmjmd#wkfbqdvf#wkbw#wkfdlufqmnfmw#bmgb#qfefqfm`f#wlwqbmpefqqfg#wlgfp`qjajmd#wkf#pwzof>!`lolq9bowklvdk#wkfqfafpw#hmltm#elqpvanjw!#mbnf>!nvowjsoj`bwjlmnlqf#wkbm#lmf#qf`ldmjwjlm#le@lvm`jo#le#wkffgjwjlm#le#wkf##?nfwb#mbnf>!Fmwfqwbjmnfmw#btbz#eqln#wkf#8nbqdjm.qjdkw9bw#wkf#wjnf#lejmufpwjdbwjlmp`lmmf`wfg#tjwkbmg#nbmz#lwkfqbowklvdk#jw#jpafdjmmjmd#tjwk#?psbm#`obpp>!gfp`fmgbmwp#le?psbm#`obpp>!j#bojdm>!qjdkw!?,kfbg=\t?algz#bpsf`wp#le#wkfkbp#pjm`f#affmFvqlsfbm#Vmjlmqfnjmjp`fmw#lenlqf#gjeej`vowUj`f#Sqfpjgfmw`lnslpjwjlm#lesbppfg#wkqlvdknlqf#jnslqwbmwelmw.pjyf922s{f{sobmbwjlm#lewkf#`lm`fsw#letqjwwfm#jm#wkf\n?psbm#`obpp>!jp#lmf#le#wkf#qfpfnaobm`f#wllm#wkf#dqlvmgptkj`k#`lmwbjmpjm`ovgjmd#wkf#gfejmfg#az#wkfsvaoj`bwjlm#lenfbmp#wkbw#wkflvwpjgf#le#wkfpvsslqw#le#wkf?jmsvw#`obpp>!?psbm#`obpp>!w+Nbwk-qbmgln+*nlpw#sqlnjmfmwgfp`qjswjlm#le@lmpwbmwjmlsoftfqf#svaojpkfg?gju#`obpp>!pfbssfbqp#jm#wkf2!#kfjdkw>!2!#nlpw#jnslqwbmwtkj`k#jm`ovgfptkj`k#kbg#affmgfpwqv`wjlm#lewkf#slsvobwjlm\t\n?gju#`obpp>!slppjajojwz#leplnfwjnfp#vpfgbssfbq#wl#kbufpv``fpp#le#wkfjmwfmgfg#wl#afsqfpfmw#jm#wkfpwzof>!`ofbq9a\x0e\t?,p`qjsw=\x0e\t?tbp#elvmgfg#jmjmwfqujft#tjwk\\jg!#`lmwfmw>!`bsjwbo#le#wkf\x0e\t?ojmh#qfo>!pqfofbpf#le#wkfsljmw#lvw#wkbw{NOKwwsQfrvfpwbmg#pvapfrvfmwpf`lmg#obqdfpwufqz#jnslqwbmwpsf`jej`bwjlmppvqeb`f#le#wkfbssojfg#wl#wkfelqfjdm#sloj`z\\pfwGlnbjmMbnffpwbaojpkfg#jmjp#afojfufg#wlJm#bggjwjlm#wlnfbmjmd#le#wkfjp#mbnfg#bewfqwl#sqlwf`w#wkfjp#qfsqfpfmwfgGf`obqbwjlm#lenlqf#feej`jfmw@obppjej`bwjlmlwkfq#elqnp#lekf#qfwvqmfg#wl?psbm#`obpp>!`sfqelqnbm`f#le+evm`wjlm+*#x\x0eje#bmg#lmoz#jeqfdjlmp#le#wkfofbgjmd#wl#wkfqfobwjlmp#tjwkVmjwfg#Mbwjlmppwzof>!kfjdkw9lwkfq#wkbm#wkfzsf!#`lmwfmw>!Bppl`jbwjlm#le\t?,kfbg=\t?algzol`bwfg#lm#wkfjp#qfefqqfg#wl+jm`ovgjmd#wkf`lm`fmwqbwjlmpwkf#jmgjujgvbobnlmd#wkf#nlpwwkbm#bmz#lwkfq,=\t?ojmh#qfo>!#qfwvqm#ebopf8wkf#svqslpf#lewkf#bajojwz#wl8`lolq9 eee~\t-\t?psbm#`obpp>!wkf#pvaif`w#legfejmjwjlmp#le=\x0e\t?ojmh#qfo>!`objn#wkbw#wkfkbuf#gfufolsfg?wbaof#tjgwk>!`fofaqbwjlm#leElooltjmd#wkf#wl#gjpwjmdvjpk?psbm#`obpp>!awbhfp#sob`f#jmvmgfq#wkf#mbnfmlwfg#wkbw#wkf=?"Xfmgje^..=\tpwzof>!nbqdjm.jmpwfbg#le#wkfjmwqlgv`fg#wkfwkf#sql`fpp#lejm`qfbpjmd#wkfgjeefqfm`fp#jmfpwjnbwfg#wkbwfpsf`jbooz#wkf,gju=?gju#jg>!tbp#fufmwvboozwkqlvdklvw#kjpwkf#gjeefqfm`fplnfwkjmd#wkbwpsbm=?,psbm=?,pjdmjej`bmwoz#=?,p`qjsw=\x0e\t\x0e\tfmujqlmnfmwbo#wl#sqfufmw#wkfkbuf#affm#vpfgfpsf`jbooz#elqvmgfqpwbmg#wkfjp#fppfmwjbooztfqf#wkf#ejqpwjp#wkf#obqdfpwkbuf#affm#nbgf!#pq`>!kwws9,,jmwfqsqfwfg#bppf`lmg#kboe#le`qloojmd>!ml!#jp#`lnslpfg#leJJ/#Kloz#Qlnbmjp#f{sf`wfg#wlkbuf#wkfjq#ltmgfejmfg#bp#wkfwqbgjwjlmbooz#kbuf#gjeefqfmwbqf#lewfm#vpfgwl#fmpvqf#wkbwbdqffnfmw#tjwk`lmwbjmjmd#wkfbqf#eqfrvfmwozjmelqnbwjlm#lmf{bnsof#jp#wkfqfpvowjmd#jm#b?,b=?,oj=?,vo=#`obpp>!ellwfqbmg#fpsf`jboozwzsf>!avwwlm!#?,psbm=?,psbm=tkj`k#jm`ovgfg=\t?nfwb#mbnf>!`lmpjgfqfg#wkf`bqqjfg#lvw#azKltfufq/#jw#jpaf`bnf#sbqw#lejm#qfobwjlm#wlslsvobq#jm#wkfwkf#`bsjwbo#letbp#leej`jbooztkj`k#kbp#affmwkf#Kjpwlqz#lebowfqmbwjuf#wlgjeefqfmw#eqlnwl#pvsslqw#wkfpvddfpwfg#wkbwjm#wkf#sql`fpp##?gju#`obpp>!wkf#elvmgbwjlmaf`bvpf#le#kjp`lm`fqmfg#tjwkwkf#vmjufqpjwzlsslpfg#wl#wkfwkf#`lmwf{w#le?psbm#`obpp>!swf{w!#mbnf>!r!\n\n?gju#`obpp>!wkf#p`jfmwjej`qfsqfpfmwfg#aznbwkfnbwj`jbmpfof`wfg#az#wkfwkbw#kbuf#affm=?gju#`obpp>!`gju#jg>!kfbgfqjm#sbqwj`vobq/`lmufqwfg#jmwl*8\t?,p`qjsw=\t?skjolplskj`bo#pqsphlkqubwphjwj\rVSmd#Uj\rWkw!kwws9,,!=?psbm#`obpp>!nfnafqp#le#wkf#tjmglt-ol`bwjlmufqwj`bo.bojdm9,b=#\x7f#?b#kqfe>!?"gl`wzsf#kwno=nfgjb>!p`qffm!#?lswjlm#ubovf>!ebuj`lm-j`l!#,=\t\n\n?gju#`obpp>!`kbqb`wfqjpwj`p!#nfwklg>!dfw!#,algz=\t?,kwno=\tpklqw`vw#j`lm!#gl`vnfmw-tqjwf+sbggjmd.alwwln9qfsqfpfmwbwjufppvanjw!#ubovf>!bojdm>!`fmwfq!#wkqlvdklvw#wkf#p`jfm`f#ej`wjlm\t##?gju#`obpp>!pvanjw!#`obpp>!lmf#le#wkf#nlpw#ubojdm>!wls!=?tbp#fpwbaojpkfg*8\x0e\t?,p`qjsw=\x0e\tqfwvqm#ebopf8!=*-pwzof-gjpsobzaf`bvpf#le#wkf#gl`vnfmw-`llhjf?elqn#b`wjlm>!,~algzxnbqdjm938Fm`z`olsfgjb#leufqpjlm#le#wkf#-`qfbwfFofnfmw+mbnf!#`lmwfmw>!?,gju=\t?,gju=\t\tbgnjmjpwqbwjuf#?,algz=\t?,kwno=kjpwlqz#le#wkf#!=?jmsvw#wzsf>!slqwjlm#le#wkf#bp#sbqw#le#wkf#%maps8?b#kqfe>!lwkfq#`lvmwqjfp!=\t?gju#`obpp>!?,psbm=?,psbm=?Jm#lwkfq#tlqgp/gjpsobz9#aol`h8`lmwqlo#le#wkf#jmwqlgv`wjlm#le,=\t?nfwb#mbnf>!bp#tfoo#bp#wkf#jm#qf`fmw#zfbqp\x0e\t\n?gju#`obpp>!?,gju=\t\n?,gju=\tjmpsjqfg#az#wkfwkf#fmg#le#wkf#`lnsbwjaof#tjwkaf`bnf#hmltm#bp#pwzof>!nbqdjm9-ip!=?,p`qjsw=?#Jmwfqmbwjlmbo#wkfqf#kbuf#affmDfqnbm#obmdvbdf#pwzof>!`lolq9 @lnnvmjpw#Sbqwz`lmpjpwfmw#tjwkalqgfq>!3!#`foo#nbqdjmkfjdkw>!wkf#nbilqjwz#le!#bojdm>!`fmwfqqfobwfg#wl#wkf#nbmz#gjeefqfmw#Lqwklgl{#@kvq`kpjnjobq#wl#wkf#,=\t?ojmh#qfo>!ptbp#lmf#le#wkf#vmwjo#kjp#gfbwk~*+*8\t?,p`qjsw=lwkfq#obmdvbdfp`lnsbqfg#wl#wkfslqwjlmp#le#wkfwkf#Mfwkfqobmgpwkf#nlpw#`lnnlmab`hdqlvmg9vqo+bqdvfg#wkbw#wkfp`qloojmd>!ml!#jm`ovgfg#jm#wkfMlqwk#Bnfqj`bm#wkf#mbnf#le#wkfjmwfqsqfwbwjlmpwkf#wqbgjwjlmbogfufolsnfmw#le#eqfrvfmwoz#vpfgb#`loof`wjlm#leufqz#pjnjobq#wlpvqqlvmgjmd#wkff{bnsof#le#wkjpbojdm>!`fmwfq!=tlvog#kbuf#affmjnbdf\\`bswjlm#>bwwb`kfg#wl#wkfpvddfpwjmd#wkbwjm#wkf#elqn#le#jmuloufg#jm#wkfjp#gfqjufg#eqlnmbnfg#bewfq#wkfJmwqlgv`wjlm#wlqfpwqj`wjlmp#lm#pwzof>!tjgwk9#`bm#af#vpfg#wl#wkf#`qfbwjlm#lenlpw#jnslqwbmw#jmelqnbwjlm#bmgqfpvowfg#jm#wkf`loobspf#le#wkfWkjp#nfbmp#wkbwfofnfmwp#le#wkftbp#qfsob`fg#azbmbozpjp#le#wkfjmpsjqbwjlm#elqqfdbqgfg#bp#wkfnlpw#pv``fppevohmltm#bp#%rvlw8b#`lnsqfkfmpjufKjpwlqz#le#wkf#tfqf#`lmpjgfqfgqfwvqmfg#wl#wkfbqf#qfefqqfg#wlVmplvq`fg#jnbdf=\t\n?gju#`obpp>!`lmpjpwp#le#wkfpwlsSqlsbdbwjlmjmwfqfpw#jm#wkfbubjobajojwz#lebssfbqp#wl#kbuffof`wqlnbdmfwj`fmbaofPfquj`fp+evm`wjlm#le#wkfJw#jp#jnslqwbmw?,p`qjsw=?,gju=evm`wjlm+*xubq#qfobwjuf#wl#wkfbp#b#qfpvow#le#wkf#slpjwjlm#leElq#f{bnsof/#jm#nfwklg>!slpw!#tbp#elooltfg#az%bns8ngbpk8#wkfwkf#bssoj`bwjlmip!=?,p`qjsw=\x0e\tvo=?,gju=?,gju=bewfq#wkf#gfbwktjwk#qfpsf`w#wlpwzof>!sbggjmd9jp#sbqwj`vobqozgjpsobz9jmojmf8#wzsf>!pvanjw!#jp#gjujgfg#jmwl\bTA\nzk#+\vBl\bQ\x7f*qfpslmpbajojgbgbgnjmjpwqb`j/_mjmwfqmb`jlmbofp`lqqfpslmgjfmwf\fHe\fHF\fHC\fIg\fH{\fHF\fIn\fH\\\fIa\fHY\fHU\fHB\fHR\fH\\\fIk\fH^\fIg\fH{\fIg\fHn\fHv\fIm\fHD\fHR\fHY\fH^\fIk\fHy\fHS\fHD\fHT\fH\\\fHy\fHR\fH\\\fHF\fIm\fH^\fHS\fHT\fHz\fIg\fHp\fIk\fHn\fHv\fHR\fHU\fHS\fHc\fHA\fIk\fHp\fIk\fHn\fHZ\fHR\fHB\fHS\fH^\fHU\fHB\fHR\fH\\\fIl\fHp\fHR\fH{\fH\\\fHO\fH@\fHD\fHR\fHD\fIk\fHy\fIm\fHB\fHR\fH\\\fH@\fIa\fH^\fIe\fH{\fHB\fHR\fH^\fHS\fHy\fHB\fHU\fHS\fH^\fHR\fHF\fIo\fH[\fIa\fHL\fH@\fHN\fHP\fHH\fIk\fHA\fHR\fHp\fHF\fHR\fHy\fIa\fH^\fHS\fHy\fHs\fIa\fH\\\fIk\fHD\fHz\fHS\fH^\fHR\fHG\fHJ\fI`\fH\\\fHR\fHD\fHB\fHR\fHB\fH^\fIk\fHB\fHH\fHJ\fHR\fHD\fH@\fHR\fHp\fHR\fH\\\fHY\fHS\fHy\fHR\fHT\fHy\fIa\fHC\fIg\fHn\fHv\fHR\fHU\fHH\fIk\fHF\fHU\fIm\fHm\fHv\fH@\fHH\fHR\fHC\fHR\fHT\fHn\fHY\fHR\fHJ\fHJ\fIk\fHz\fHD\fIk\fHF\fHS\fHw\fH^\fIk\fHY\fHS\fHZ\fIk\fH[\fH\\\fHR\fHp\fIa\fHC\fHe\fHH\fIa\fHH\fH\\\fHB\fIm\fHn\fH@\fHd\fHJ\fIg\fHD\fIg\fHn\fHe\fHF\fHy\fH\\\fHO\fHF\fHN\fHP\fIk\fHn\fHT\fIa\fHI\fHS\fHH\fHG\fHS\fH^\fIa\fHB\fHB\fIm\fHz\fIa\fHC\fHi\fHv\fIa\fHw\fHR\fHw\fIn\fHs\fHH\fIl\fHT\fHn\fH{\fIl\fHH\fHp\fHR\fHc\fH{\fHR\fHY\fHS\fHA\fHR\fH{\fHt\fHO\fIa\fHs\fIk\fHJ\fIn\fHT\fH\\\fIk\fHJ\fHS\fHD\fIg\fHn\fHU\fHH\fIa\fHC\fHR\fHT\fIk\fHy\fIa\fHT\fH{\fHR\fHn\fHK\fIl\fHY\fHS\fHZ\fIa\fHY\fH\\\fHR\fHH\fIk\fHn\fHJ\fId\fHs\fIa\fHT\fHD\fHy\fIa\fHZ\fHR\fHT\fHR\fHB\fHD\fIk\fHi\fHJ\fHR\fH^\fHH\fH@\fHS\fHp\fH^\fIl\fHF\fIm\fH\\\fIn\fH[\fHU\fHS\fHn\fHJ\fIl\fHB\fHS\fHH\fIa\fH\\\fHy\fHY\fHS\fHH\fHR\fH\\\fIm\fHF\fHC\fIk\fHT\fIa\fHI\fHR\fHD\fHy\fH\\\fIg\fHM\fHP\fHB\fIm\fHy\fIa\fHH\fHC\fIg\fHp\fHD\fHR\fHy\fIo\fHF\fHC\fHR\fHF\fIg\fHT\fIa\fHs\fHt\fH\\\fIk\fH^\fIn\fHy\fHR\fH\\\fIa\fHC\fHY\fHS\fHv\fHR\fH\\\fHT\fIn\fHv\fHD\fHR\fHB\fIn\fH^\fIa\fHC\fHJ\fIk\fHz\fIk\fHn\fHU\fHB\fIk\fHZ\fHR\fHT\fIa\fHy\fIn\fH^\fHB\fId\fHn\fHD\fIk\fHH\fId\fHC\fHR\fH\\\fHp\fHS\fHT\fHy\fIkqpp({no!#wjwof>!.wzsf!#`lmwfmw>!wjwof!#`lmwfmw>!bw#wkf#pbnf#wjnf-ip!=?,p`qjsw=\t?!#nfwklg>!slpw!#?,psbm=?,b=?,oj=ufqwj`bo.bojdm9w,irvfqz-njm-ip!=-`oj`h+evm`wjlm+#pwzof>!sbggjmd.~*+*8\t?,p`qjsw=\t?,psbm=?b#kqfe>!?b#kqfe>!kwws9,,*8#qfwvqm#ebopf8wf{w.gf`lqbwjlm9#p`qloojmd>!ml!#alqgfq.`loobspf9bppl`jbwfg#tjwk#Abkbpb#JmglmfpjbFmdojpk#obmdvbdf?wf{w#{no9psb`f>-dje!#alqgfq>!3!?,algz=\t?,kwno=\tlufqeolt9kjggfm8jnd#pq`>!kwws9,,bggFufmwOjpwfmfqqfpslmpjaof#elq#p-ip!=?,p`qjsw=\t,ebuj`lm-j`l!#,=lsfqbwjmd#pzpwfn!#pwzof>!tjgwk92wbqdfw>!\\aobmh!=Pwbwf#Vmjufqpjwzwf{w.bojdm9ofew8\tgl`vnfmw-tqjwf+/#jm`ovgjmd#wkf#bqlvmg#wkf#tlqog*8\x0e\t?,p`qjsw=\x0e\t?!#pwzof>!kfjdkw98lufqeolt9kjggfmnlqf#jmelqnbwjlmbm#jmwfqmbwjlmbob#nfnafq#le#wkf#lmf#le#wkf#ejqpw`bm#af#elvmg#jm#?,gju=\t\n\n?,gju=\tgjpsobz9#mlmf8!=!#,=\t?ojmh#qfo>!\t##+evm`wjlm+*#xwkf#26wk#`fmwvqz-sqfufmwGfebvow+obqdf#mvnafq#le#Azybmwjmf#Fnsjqf-isd\x7fwkvna\x7fofew\x7fubpw#nbilqjwz#lenbilqjwz#le#wkf##bojdm>!`fmwfq!=Vmjufqpjwz#Sqfppglnjmbwfg#az#wkfPf`lmg#Tlqog#Tbqgjpwqjavwjlm#le#pwzof>!slpjwjlm9wkf#qfpw#le#wkf#`kbqb`wfqjyfg#az#qfo>!mleloolt!=gfqjufp#eqln#wkfqbwkfq#wkbm#wkf#b#`lnajmbwjlm#lepwzof>!tjgwk9233Fmdojpk.psfbhjmd`lnsvwfq#p`jfm`falqgfq>!3!#bow>!wkf#f{jpwfm`f#leGfnl`qbwj`#Sbqwz!#pwzof>!nbqdjm.Elq#wkjp#qfbplm/-ip!=?,p`qjsw=\t\npAzWbdMbnf+p*X3^ip!=?,p`qjsw=\x0e\t?-ip!=?,p`qjsw=\x0e\tojmh#qfo>!j`lm!#$#bow>$$#`obpp>$elqnbwjlm#le#wkfufqpjlmp#le#wkf#?,b=?,gju=?,gju=,sbdf=\t##?sbdf=\t?gju#`obpp>!`lmwaf`bnf#wkf#ejqpwabkbpb#Jmglmfpjbfmdojpk#+pjnsof*"y"W"W"["Q"U"V"@=i=l<^<\\=n=m!?gju#jg>!ellwfq!=wkf#Vmjwfg#Pwbwfp?jnd#pq`>!kwws9,,-isd\x7fqjdkw\x7fwkvna\x7f-ip!=?,p`qjsw=\x0e\t?ol`bwjlm-sqlwl`loeqbnfalqgfq>!3!#p!#,=\t?nfwb#mbnf>!?,b=?,gju=?,gju=?elmw.tfjdkw9alog8%rvlw8#bmg#%rvlw8gfsfmgjmd#lm#wkf#nbqdjm938sbggjmd9!#qfo>!mleloolt!#Sqfpjgfmw#le#wkf#wtfmwjfwk#`fmwvqzfujpjlm=\t##?,sbdfJmwfqmfw#F{solqfqb-bpzm`#>#wqvf8\x0e\tjmelqnbwjlm#balvw?gju#jg>!kfbgfq!=!#b`wjlm>!kwws9,,?b#kqfe>!kwwsp9,,?gju#jg>!`lmwfmw!?,gju=\x0e\t?,gju=\x0e\t?gfqjufg#eqln#wkf#?jnd#pq`>$kwws9,,b``lqgjmd#wl#wkf#\t?,algz=\t?,kwno=\tpwzof>!elmw.pjyf9p`qjsw#obmdvbdf>!Bqjbo/#Kfoufwj`b/?,b=?psbm#`obpp>!?,p`qjsw=?p`qjsw#slojwj`bo#sbqwjfpwg=?,wq=?,wbaof=?kqfe>!kwws9,,ttt-jmwfqsqfwbwjlm#leqfo>!pwzofpkffw!#gl`vnfmw-tqjwf+$?`kbqpfw>!vwe.;!=\tafdjmmjmd#le#wkf#qfufbofg#wkbw#wkfwfofujpjlm#pfqjfp!#qfo>!mleloolt!=#wbqdfw>!\\aobmh!=`objnjmd#wkbw#wkfkwws&0B&1E&1Ettt-nbmjefpwbwjlmp#leSqjnf#Njmjpwfq#lejmeovfm`fg#az#wkf`obpp>!`ofbqej{!=,gju=\x0e\t?,gju=\x0e\t\x0e\twkqff.gjnfmpjlmbo@kvq`k#le#Fmdobmgle#Mlqwk#@bqlojmbprvbqf#hjolnfwqfp-bggFufmwOjpwfmfqgjpwjm`w#eqln#wkf`lnnlmoz#hmltm#bpSklmfwj`#Boskbafwgf`obqfg#wkbw#wkf`lmwqloofg#az#wkfAfmibnjm#Eqbmhojmqlof.sobzjmd#dbnfwkf#Vmjufqpjwz#lejm#Tfpwfqm#Fvqlsfsfqplmbo#`lnsvwfqSqlif`w#Dvwfmafqdqfdbqgofpp#le#wkfkbp#affm#sqlslpfgwldfwkfq#tjwk#wkf=?,oj=?oj#`obpp>!jm#plnf#`lvmwqjfpnjm-ip!=?,p`qjsw=le#wkf#slsvobwjlmleej`jbo#obmdvbdf?jnd#pq`>!jnbdfp,jgfmwjejfg#az#wkfmbwvqbo#qfplvq`fp`obppjej`bwjlm#le`bm#af#`lmpjgfqfgrvbmwvn#nf`kbmj`pMfufqwkfofpp/#wkfnjoojlm#zfbqp#bdl?,algz=\x0e\t?,kwno=\x0e"y"W"W"["Q"U"V"@\twbhf#bgubmwbdf#lebmg/#b``lqgjmd#wlbwwqjavwfg#wl#wkfNj`qlplew#Tjmgltpwkf#ejqpw#`fmwvqzvmgfq#wkf#`lmwqlogju#`obpp>!kfbgfqpklqwoz#bewfq#wkfmlwbaof#f{`fswjlmwfmp#le#wklvpbmgppfufqbo#gjeefqfmwbqlvmg#wkf#tlqog-qfb`kjmd#njojwbqzjplobwfg#eqln#wkflsslpjwjlm#wl#wkfwkf#Log#WfpwbnfmwBeqj`bm#Bnfqj`bmpjmpfqwfg#jmwl#wkfpfsbqbwf#eqln#wkfnfwqlslojwbm#bqfbnbhfp#jw#slppjaofb`hmltofgdfg#wkbwbqdvbaoz#wkf#nlpwwzsf>!wf{w,`pp!=\twkf#JmwfqmbwjlmboB``lqgjmd#wl#wkf#sf>!wf{w,`pp!#,=\t`ljm`jgf#tjwk#wkfwtl.wkjqgp#le#wkfGvqjmd#wkjp#wjnf/gvqjmd#wkf#sfqjlgbmmlvm`fg#wkbw#kfwkf#jmwfqmbwjlmbobmg#nlqf#qf`fmwozafojfufg#wkbw#wkf`lmp`jlvpmfpp#bmgelqnfqoz#hmltm#bppvqqlvmgfg#az#wkfejqpw#bssfbqfg#jml``bpjlmbooz#vpfgslpjwjlm9baplovwf8!#wbqdfw>!\\aobmh!#slpjwjlm9qfobwjuf8wf{w.bojdm9`fmwfq8ib{,ojap,irvfqz,2-ab`hdqlvmg.`lolq9 wzsf>!bssoj`bwjlm,bmdvbdf!#`lmwfmw>!?nfwb#kwws.frvju>!Sqjub`z#Sloj`z?,b=f+!&0@p`qjsw#pq`>$!#wbqdfw>!\\aobmh!=Lm#wkf#lwkfq#kbmg/-isd\x7fwkvna\x7fqjdkw\x7f1?,gju=?gju#`obpp>!?gju#pwzof>!eolbw9mjmfwffmwk#`fmwvqz?,algz=\x0e\t?,kwno=\x0e\t?jnd#pq`>!kwws9,,p8wf{w.bojdm9`fmwfqelmw.tfjdkw9#alog8#B``lqgjmd#wl#wkf#gjeefqfm`f#afwtffm!#eqbnfalqgfq>!3!#!#pwzof>!slpjwjlm9ojmh#kqfe>!kwws9,,kwno7,ollpf-gwg!=\tgvqjmd#wkjp#sfqjlg?,wg=?,wq=?,wbaof=`olpfoz#qfobwfg#wlelq#wkf#ejqpw#wjnf8elmw.tfjdkw9alog8jmsvw#wzsf>!wf{w!#?psbm#pwzof>!elmw.lmqfbgzpwbwf`kbmdf\n?gju#`obpp>!`ofbqgl`vnfmw-ol`bwjlm-#Elq#f{bnsof/#wkf#b#tjgf#ubqjfwz#le#?"GL@WZSF#kwno=\x0e\t?%maps8%maps8%maps8!=?b#kqfe>!kwws9,,pwzof>!eolbw9ofew8`lm`fqmfg#tjwk#wkf>kwws&0B&1E&1Ettt-jm#slsvobq#`vowvqfwzsf>!wf{w,`pp!#,=jw#jp#slppjaof#wl#Kbqubqg#Vmjufqpjwzwzofpkffw!#kqfe>!,wkf#nbjm#`kbqb`wfqL{elqg#Vmjufqpjwz##mbnf>!hfztlqgp!#`pwzof>!wf{w.bojdm9wkf#Vmjwfg#Hjmdglnefgfqbo#dlufqmnfmw?gju#pwzof>!nbqdjm#gfsfmgjmd#lm#wkf#gfp`qjswjlm#le#wkf?gju#`obpp>!kfbgfq-njm-ip!=?,p`qjsw=gfpwqv`wjlm#le#wkfpojdkwoz#gjeefqfmwjm#b``lqgbm`f#tjwkwfof`lnnvmj`bwjlmpjmgj`bwfp#wkbw#wkfpklqwoz#wkfqfbewfqfpsf`jbooz#jm#wkf#Fvqlsfbm#`lvmwqjfpKltfufq/#wkfqf#bqfpq`>!kwws9,,pwbwj`pvddfpwfg#wkbw#wkf!#pq`>!kwws9,,ttt-b#obqdf#mvnafq#le#Wfof`lnnvmj`bwjlmp!#qfo>!mleloolt!#wKloz#Qlnbm#Fnsfqlqbonlpw#f{`ovpjufoz!#alqgfq>!3!#bow>!Pf`qfwbqz#le#Pwbwf`vonjmbwjmd#jm#wkf@JB#Tlqog#Eb`wallhwkf#nlpw#jnslqwbmwbmmjufqpbqz#le#wkfpwzof>!ab`hdqlvmg.?oj=?fn=?b#kqfe>!,wkf#Bwobmwj`#L`fbmpwqj`woz#psfbhjmd/pklqwoz#afelqf#wkfgjeefqfmw#wzsfp#lewkf#Lwwlnbm#Fnsjqf=?jnd#pq`>!kwws9,,Bm#Jmwqlgv`wjlm#wl`lmpfrvfm`f#le#wkfgfsbqwvqf#eqln#wkf@lmefgfqbwf#Pwbwfpjmgjdfmlvp#sflsofpSql`ffgjmdp#le#wkfjmelqnbwjlm#lm#wkfwkflqjfp#kbuf#affmjmuloufnfmw#jm#wkfgjujgfg#jmwl#wkqffbgib`fmw#`lvmwqjfpjp#qfpslmpjaof#elqgjpplovwjlm#le#wkf`loobalqbwjlm#tjwktjgfoz#qfdbqgfg#bpkjp#`lmwfnslqbqjfpelvmgjmd#nfnafq#leGlnjmj`bm#Qfsvaoj`dfmfqbooz#b``fswfgwkf#slppjajojwz#lebqf#bopl#bubjobaofvmgfq#`lmpwqv`wjlmqfpwlqbwjlm#le#wkfwkf#dfmfqbo#svaoj`jp#bonlpw#fmwjqfozsbppfp#wkqlvdk#wkfkbp#affm#pvddfpwfg`lnsvwfq#bmg#ujgflDfqnbmj`#obmdvbdfp#b``lqgjmd#wl#wkf#gjeefqfmw#eqln#wkfpklqwoz#bewfqtbqgpkqfe>!kwwsp9,,ttt-qf`fmw#gfufolsnfmwAlbqg#le#Gjqf`wlqp?gju#`obpp>!pfbq`k\x7f#?b#kqfe>!kwws9,,Jm#sbqwj`vobq/#wkfNvowjsof#ellwmlwfplq#lwkfq#pvapwbm`fwklvpbmgp#le#zfbqpwqbmpobwjlm#le#wkf?,gju=\x0e\t?,gju=\x0e\t\x0e\t?b#kqfe>!jmgf{-skstbp#fpwbaojpkfg#jmnjm-ip!=?,p`qjsw=\tsbqwj`jsbwf#jm#wkfb#pwqlmd#jmeovfm`fpwzof>!nbqdjm.wls9qfsqfpfmwfg#az#wkfdqbgvbwfg#eqln#wkfWqbgjwjlmbooz/#wkfFofnfmw+!p`qjsw!*8Kltfufq/#pjm`f#wkf,gju=\t?,gju=\t?gju#ofew8#nbqdjm.ofew9sqlwf`wjlm#bdbjmpw38#ufqwj`bo.bojdm9Vmelqwvmbwfoz/#wkfwzsf>!jnbdf,{.j`lm,gju=\t?gju#`obpp>!#`obpp>!`ofbqej{!=?gju#`obpp>!ellwfq\n\n?,gju=\t\n\n?,gju=\twkf#nlwjlm#sj`wvqf<}=f!t0-lqd,2:::,{kwno!=?b#wbqdfw>!\\aobmh!#wf{w,kwno8#`kbqpfw>!#wbqdfw>!\\aobmh!=?wbaof#`foosbggjmd>!bvwl`lnsofwf>!lee!#wf{w.bojdm9#`fmwfq8wl#obpw#ufqpjlm#az#ab`hdqlvmg.`lolq9# !#kqfe>!kwws9,,ttt-,gju=?,gju=?gju#jg>?b#kqfe>! !#`obpp>!!=?jnd#pq`>!kwws9,,`qjsw!#pq`>!kwws9,,\t?p`qjsw#obmdvbdf>!,,FM!#!kwws9,,ttt-tfm`lgfVQJ@lnslmfmw+!#kqfe>!ibubp`qjsw9?gju#`obpp>!`lmwfmwgl`vnfmw-tqjwf+$?p`slpjwjlm9#baplovwf8p`qjsw#pq`>!kwws9,,#pwzof>!nbqdjm.wls9-njm-ip!=?,p`qjsw=\t?,gju=\t?gju#`obpp>!t0-lqd,2:::,{kwno!#\t\x0e\t?,algz=\x0e\t?,kwno=gjpwjm`wjlm#afwtffm,!#wbqdfw>!\\aobmh!=?ojmh#kqfe>!kwws9,,fm`lgjmd>!vwe.;!<=\tt-bggFufmwOjpwfmfq!kwws9,,ttt-j`lm!#kqfe>!kwws9,,#pwzof>!ab`hdqlvmg9wzsf>!wf{w,`pp!#,=\tnfwb#sqlsfqwz>!ld9w?jmsvw#wzsf>!wf{w!##pwzof>!wf{w.bojdm9wkf#gfufolsnfmw#le#wzofpkffw!#wzsf>!wfkwno8#`kbqpfw>vwe.;jp#`lmpjgfqfg#wl#afwbaof#tjgwk>!233&!#Jm#bggjwjlm#wl#wkf#`lmwqjavwfg#wl#wkf#gjeefqfm`fp#afwtffmgfufolsnfmw#le#wkf#Jw#jp#jnslqwbmw#wl#?,p`qjsw=\t\t?p`qjsw##pwzof>!elmw.pjyf92=?,psbm=?psbm#jg>daOjaqbqz#le#@lmdqfpp?jnd#pq`>!kwws9,,jnFmdojpk#wqbmpobwjlmB`bgfnz#le#P`jfm`fpgju#pwzof>!gjpsobz9`lmpwqv`wjlm#le#wkf-dfwFofnfmwAzJg+jg*jm#`lmivm`wjlm#tjwkFofnfmw+$p`qjsw$*8#?nfwb#sqlsfqwz>!ld9<}=f!wf{w!#mbnf>!=Sqjub`z#Sloj`z?,b=bgnjmjpwfqfg#az#wkffmbaofPjmdofQfrvfpwpwzof>%rvlw8nbqdjm9?,gju=?,gju=?,gju=?=?jnd#pq`>!kwws9,,j#pwzof>%rvlw8eolbw9qfefqqfg#wl#bp#wkf#wlwbo#slsvobwjlm#lejm#Tbpkjmdwlm/#G-@-#pwzof>!ab`hdqlvmg.bnlmd#lwkfq#wkjmdp/lqdbmjybwjlm#le#wkfsbqwj`jsbwfg#jm#wkfwkf#jmwqlgv`wjlm#lejgfmwjejfg#tjwk#wkfej`wjlmbo#`kbqb`wfq#L{elqg#Vmjufqpjwz#njpvmgfqpwbmgjmd#leWkfqf#bqf/#kltfufq/pwzofpkffw!#kqfe>!,@lovnajb#Vmjufqpjwzf{sbmgfg#wl#jm`ovgfvpvbooz#qfefqqfg#wljmgj`bwjmd#wkbw#wkfkbuf#pvddfpwfg#wkbwbeejojbwfg#tjwk#wkf`lqqfobwjlm#afwtffmmvnafq#le#gjeefqfmw=?,wg=?,wq=?,wbaof=Qfsvaoj`#le#Jqfobmg\t?,p`qjsw=\t?p`qjsw#vmgfq#wkf#jmeovfm`f`lmwqjavwjlm#wl#wkfLeej`jbo#tfapjwf#lekfbgrvbqwfqp#le#wkf`fmwfqfg#bqlvmg#wkfjnsoj`bwjlmp#le#wkfkbuf#affm#gfufolsfgEfgfqbo#Qfsvaoj`#leaf`bnf#jm`qfbpjmdoz`lmwjmvbwjlm#le#wkfMlwf/#kltfufq/#wkbwpjnjobq#wl#wkbw#le#`bsbajojwjfp#le#wkfb``lqgbm`f#tjwk#wkfsbqwj`jsbmwp#jm#wkfevqwkfq#gfufolsnfmwvmgfq#wkf#gjqf`wjlmjp#lewfm#`lmpjgfqfgkjp#zlvmdfq#aqlwkfq?,wg=?,wq=?,wbaof=?b#kwws.frvju>![.VB.skzpj`bo#sqlsfqwjfple#Aqjwjpk#@lovnajbkbp#affm#`qjwj`jyfg+tjwk#wkf#f{`fswjlmrvfpwjlmp#balvw#wkfsbppjmd#wkqlvdk#wkf3!#`foosbggjmd>!3!#wklvpbmgp#le#sflsofqfgjqf`wp#kfqf-#Elqkbuf#`kjogqfm#vmgfq&0F&0@,p`qjsw&0F!**8?b#kqfe>!kwws9,,ttt-?oj=?b#kqfe>!kwws9,,pjwf\\mbnf!#`lmwfmw>!wf{w.gf`lqbwjlm9mlmfpwzof>!gjpsobz9#mlmf?nfwb#kwws.frvju>![.mft#Gbwf+*-dfwWjnf+*#wzsf>!jnbdf,{.j`lm!?,psbm=?psbm#`obpp>!obmdvbdf>!ibubp`qjswtjmglt-ol`bwjlm-kqfe?b#kqfe>!ibubp`qjsw9..=\x0e\t?p`qjsw#wzsf>!w?b#kqfe>$kwws9,,ttt-klqw`vw#j`lm!#kqfe>!?,gju=\x0e\t?gju#`obpp>!?p`qjsw#pq`>!kwws9,,!#qfo>!pwzofpkffw!#w?,gju=\t?p`qjsw#wzsf>,b=#?b#kqfe>!kwws9,,#booltWqbmpsbqfm`z>![.VB.@lnsbwjaof!#`lmqfobwjlmpkjs#afwtffm\t?,p`qjsw=\x0e\t?p`qjsw#?,b=?,oj=?,vo=?,gju=bppl`jbwfg#tjwk#wkf#sqldqbnnjmd#obmdvbdf?,b=?b#kqfe>!kwws9,,?,b=?,oj=?oj#`obpp>!elqn#b`wjlm>!kwws9,,?gju#pwzof>!gjpsobz9wzsf>!wf{w!#mbnf>!r!?wbaof#tjgwk>!233&!#ab`hdqlvmg.slpjwjlm9!#alqgfq>!3!#tjgwk>!qfo>!pklqw`vw#j`lm!#k5=?vo=?oj=?b#kqfe>!##?nfwb#kwws.frvju>!`pp!#nfgjb>!p`qffm!#qfpslmpjaof#elq#wkf#!#wzsf>!bssoj`bwjlm,!#pwzof>!ab`hdqlvmg.kwno8#`kbqpfw>vwe.;!#booltwqbmpsbqfm`z>!pwzofpkffw!#wzsf>!wf\x0e\t?nfwb#kwws.frvju>!=?,psbm=?psbm#`obpp>!3!#`foopsb`jmd>!3!=8\t?,p`qjsw=\t?p`qjsw#plnfwjnfp#`boofg#wkfglfp#mlw#mf`fppbqjozElq#nlqf#jmelqnbwjlmbw#wkf#afdjmmjmd#le#?"GL@WZSF#kwno=?kwnosbqwj`vobqoz#jm#wkf#wzsf>!kjggfm!#mbnf>!ibubp`qjsw9uljg+3*8!feef`wjufmfpp#le#wkf#bvwl`lnsofwf>!lee!#dfmfqbooz#`lmpjgfqfg=?jmsvw#wzsf>!wf{w!#!=?,p`qjsw=\x0e\t?p`qjswwkqlvdklvw#wkf#tlqog`lnnlm#njp`lm`fswjlmbppl`jbwjlm#tjwk#wkf?,gju=\t?,gju=\t?gju#`gvqjmd#kjp#ojefwjnf/`lqqfpslmgjmd#wl#wkfwzsf>!jnbdf,{.j`lm!#bm#jm`qfbpjmd#mvnafqgjsolnbwj`#qfobwjlmpbqf#lewfm#`lmpjgfqfgnfwb#`kbqpfw>!vwe.;!#?jmsvw#wzsf>!wf{w!#f{bnsofp#jm`ovgf#wkf!=?jnd#pq`>!kwws9,,jsbqwj`jsbwjlm#jm#wkfwkf#fpwbaojpknfmw#le\t?,gju=\t?gju#`obpp>!%bns8maps8%bns8maps8wl#gfwfqnjmf#tkfwkfqrvjwf#gjeefqfmw#eqlnnbqhfg#wkf#afdjmmjmdgjpwbm`f#afwtffm#wkf`lmwqjavwjlmp#wl#wkf`lmeoj`w#afwtffm#wkftjgfoz#`lmpjgfqfg#wltbp#lmf#le#wkf#ejqpwtjwk#ubqzjmd#gfdqffpkbuf#psf`vobwfg#wkbw+gl`vnfmw-dfwFofnfmwsbqwj`jsbwjmd#jm#wkflqjdjmbooz#gfufolsfgfwb#`kbqpfw>!vwe.;!=#wzsf>!wf{w,`pp!#,=\tjmwfq`kbmdfbaoz#tjwknlqf#`olpfoz#qfobwfgpl`jbo#bmg#slojwj`bowkbw#tlvog#lwkfqtjpfsfqsfmgj`vobq#wl#wkfpwzof#wzsf>!wf{w,`ppwzsf>!pvanjw!#mbnf>!ebnjojfp#qfpjgjmd#jmgfufolsjmd#`lvmwqjfp`lnsvwfq#sqldqbnnjmdf`lmlnj`#gfufolsnfmwgfwfqnjmbwjlm#le#wkfelq#nlqf#jmelqnbwjlmlm#pfufqbo#l``bpjlmpslqwvdv/Fp#+Fvqlsfv*VWE.;!#pfwWjnflvw+evm`wjlm+*gjpsobz9jmojmf.aol`h8?jmsvw#wzsf>!pvanjw!#wzsf#>#$wf{w,ibubp`qj?jnd#pq`>!kwws9,,ttt-!#!kwws9,,ttt-t0-lqd,pklqw`vw#j`lm!#kqfe>!!#bvwl`lnsofwf>!lee!#?,b=?,gju=?gju#`obpp>?,b=?,oj=\t?oj#`obpp>!`pp!#wzsf>!wf{w,`pp!#?elqn#b`wjlm>!kwws9,,{w,`pp!#kqfe>!kwws9,,ojmh#qfo>!bowfqmbwf!#\x0e\t?p`qjsw#wzsf>!wf{w,#lm`oj`h>!ibubp`qjsw9+mft#Gbwf*-dfwWjnf+*~kfjdkw>!2!#tjgwk>!2!#Sflsof$p#Qfsvaoj`#le##?b#kqfe>!kwws9,,ttt-wf{w.gf`lqbwjlm9vmgfqwkf#afdjmmjmd#le#wkf#?,gju=\t?,gju=\t?,gju=\tfpwbaojpknfmw#le#wkf#?,gju=?,gju=?,gju=?,g ujftslqwxnjm.kfjdkw9\t?p`qjsw#pq`>!kwws9,,lswjlm=?lswjlm#ubovf>lewfm#qfefqqfg#wl#bp#,lswjlm=\t?lswjlm#ubov?"GL@WZSF#kwno=\t?"..XJmwfqmbwjlmbo#Bjqslqw=\t?b#kqfe>!kwws9,,ttt?,b=?b#kqfe>!kwws9,,t\fTL\fT^\fTE\fT^\fUh\fT{\fTN\roI\ro|\roL\ro{\roO\rov\rot\nAO\x05Gx\bTA\nzk#+\vUm\x05Gx*\fHD\fHS\fH\\\fIa\fHJ\fIk\fHZ\fHM\fHR\fHe\fHD\fH^\fIg\fHM\fHy\fIa\fH[\fIk\fHH\fIa\fH\\\fHp\fHR\fHD\fHy\fHR\fH\\\fIl\fHT\fHn\fH@\fHn\fHK\fHS\fHH\fHT\fIa\fHI\fHR\fHF\fHD\fHR\fHT\fIa\fHY\fIl\fHy\fHR\fH\\\fHT\fHn\fHT\fIa\fHy\fH\\\fHO\fHT\fHR\fHB\fH{\fIa\fH\\\fIl\fHv\fHS\fHs\fIa\fHL\fIg\fHn\fHY\fHS\fHp\fIa\fHr\fHR\fHD\fHi\fHB\fIk\fH\\\fHS\fHy\fHR\fHY\fHS\fHA\fHS\fHD\fIa\fHD\fH{\fHR\fHM\fHS\fHC\fHR\fHm\fHy\fIa\fHC\fIg\fHn\fHy\fHS\fHT\fIm\fH\\\fHy\fIa\fH[\fHR\fHF\fHU\fIm\fHm\fHv\fHH\fIl\fHF\fIa\fH\\\fH@\fHn\fHK\fHD\fHs\fHS\fHF\fIa\fHF\fHO\fIl\fHy\fIa\fH\\\fHS\fHy\fIk\fHs\fHF\fIa\fH\\\fHR\fH\\\fHn\fHA\fHF\fIa\fH\\\fHR\fHF\fIa\fHH\fHB\fHR\fH^\fHS\fHy\fIg\fHn\fH\\\fHG\fHP\fIa\fHH\fHR\fH\\\fHD\fHS\fH\\\fIa\fHB\fHR\fHO\fH^\fHS\fHB\fHS\fHs\fIk\fHMgfp`qjswjlm!#`lmwfmw>!gl`vnfmw-ol`bwjlm-sqlw-dfwFofnfmwpAzWbdMbnf+?"GL@WZSF#kwno=\t?kwno#?nfwb#`kbqpfw>!vwe.;!=9vqo!#`lmwfmw>!kwws9,,-`pp!#qfo>!pwzofpkffw!pwzof#wzsf>!wf{w,`pp!=wzsf>!wf{w,`pp!#kqfe>!t0-lqd,2:::,{kwno!#{nowzsf>!wf{w,ibubp`qjsw!#nfwklg>!dfw!#b`wjlm>!ojmh#qfo>!pwzofpkffw!##>#gl`vnfmw-dfwFofnfmwwzsf>!jnbdf,{.j`lm!#,=`foosbggjmd>!3!#`foops-`pp!#wzsf>!wf{w,`pp!#?,b=?,oj=?oj=?b#kqfe>!!#tjgwk>!2!#kfjdkw>!2!!=?b#kqfe>!kwws9,,ttt-pwzof>!gjpsobz9mlmf8!=bowfqmbwf!#wzsf>!bssoj.,,T0@,,GWG#[KWNO#2-3#foopsb`jmd>!3!#`foosbg#wzsf>!kjggfm!#ubovf>!,b=%maps8?psbm#qlof>!p\t?jmsvw#wzsf>!kjggfm!#obmdvbdf>!IbubP`qjsw!##gl`vnfmw-dfwFofnfmwpAd>!3!#`foopsb`jmd>!3!#zsf>!wf{w,`pp!#nfgjb>!wzsf>$wf{w,ibubp`qjsw$tjwk#wkf#f{`fswjlm#le#zsf>!wf{w,`pp!#qfo>!pw#kfjdkw>!2!#tjgwk>!2!#>$(fm`lgfVQJ@lnslmfmw+?ojmh#qfo>!bowfqmbwf!#\talgz/#wq/#jmsvw/#wf{wnfwb#mbnf>!qlalwp!#`lmnfwklg>!slpw!#b`wjlm>!=\t?b#kqfe>!kwws9,,ttt-`pp!#qfo>!pwzofpkffw!#?,gju=?,gju=?gju#`obppobmdvbdf>!ibubp`qjsw!=bqjb.kjggfm>!wqvf!=.[?qjsw!#wzsf>!wf{w,ibubpo>38~*+*8\t+evm`wjlm+*xab`hdqlvmg.jnbdf9#vqo+,b=?,oj=?oj=?b#kqfe>!k\n\n?oj=?b#kqfe>!kwws9,,bwlq!#bqjb.kjggfm>!wqv=#?b#kqfe>!kwws9,,ttt-obmdvbdf>!ibubp`qjsw!#,lswjlm=\t?lswjlm#ubovf,gju=?,gju=?gju#`obpp>qbwlq!#bqjb.kjggfm>!wqf>+mft#Gbwf*-dfwWjnf+*slqwvdv/Fp#+gl#Aqbpjo*!wf{w,?nfwb#kwws.frvju>!@lmwfqbmpjwjlmbo,,FM!#!kwws9?kwno#{nomp>!kwws9,,ttt.,,T0@,,GWG#[KWNO#2-3#WGWG,{kwno2.wqbmpjwjlmbo,,ttt-t0-lqd,WQ,{kwno2,sf#>#$wf{w,ibubp`qjsw$8?nfwb#mbnf>!gfp`qjswjlmsbqfmwMlgf-jmpfqwAfelqf?jmsvw#wzsf>!kjggfm!#mbip!#wzsf>!wf{w,ibubp`qj+gl`vnfmw*-qfbgz+evm`wjp`qjsw#wzsf>!wf{w,ibubpjnbdf!#`lmwfmw>!kwws9,,VB.@lnsbwjaof!#`lmwfmw>wno8#`kbqpfw>vwe.;!#,=\tojmh#qfo>!pklqw`vw#j`lm?ojmh#qfo>!pwzofpkffw!#?,p`qjsw=\t?p`qjsw#wzsf>>#gl`vnfmw-`qfbwfFofnfm?b#wbqdfw>!\\aobmh!#kqfe>#gl`vnfmw-dfwFofnfmwpAjmsvw#wzsf>!wf{w!#mbnf>b-wzsf#>#$wf{w,ibubp`qjmsvw#wzsf>!kjggfm!#mbnfkwno8#`kbqpfw>vwe.;!#,=gwg!=\t?kwno#{nomp>!kwws.,,T0@,,GWG#KWNO#7-32#WfmwpAzWbdMbnf+$p`qjsw$*jmsvw#wzsf>!kjggfm!#mbn?p`qjsw#wzsf>!wf{w,ibubp!#pwzof>!gjpsobz9mlmf8!=gl`vnfmw-dfwFofnfmwAzJg+>gl`vnfmw-`qfbwfFofnfmw+$#wzsf>$wf{w,ibubp`qjsw$jmsvw#wzsf>!wf{w!#mbnf>!g-dfwFofnfmwpAzWbdMbnf+pmj`bo!#kqfe>!kwws9,,ttt-@,,GWG#KWNO#7-32#Wqbmpjw?pwzof#wzsf>!wf{w,`pp!=\t\t?pwzof#wzsf>!wf{w,`pp!=jlmbo-gwg!=\t?kwno#{nomp>kwws.frvju>!@lmwfmw.Wzsfgjmd>!3!#`foopsb`jmd>!3!kwno8#`kbqpfw>vwe.;!#,=\t#pwzof>!gjpsobz9mlmf8!=??oj=?b#kqfe>!kwws9,,ttt-#wzsf>$wf{w,ibubp`qjsw$=&*&'&^&\x88\u0178\u0c3e&\u01ad&\u0192&)&^&%&'&\x82&P&1&\xb1&3&]&m&u&E&t&C&\xcf&V&V&/&>&6&\u0f76\u177co&p&@&E&M&P&x&@&F&e&\xcc&7&:&(&D&0&C&)&.&F&-&1&(&L&F&1\u025e*\u03ea\u21f3&\u1372&K&;&)&E&H&P&0&?&9&V&\x81&-&v&a&,&E&)&?&=&'&'&B&\u0d2e&\u0503&\u0316*&*8&%&%&&&%,)&\x9a&>&\x86&7&]&F&2&>&J&6&n&2&%&?&\x8e&2&6&J&g&-&0&,&*&J&*&O&)&6&(&<&B&N&.&P&@&2&.&W&M&%\u053c\x84(,(<&,&\u03da&\u18c7&-&,(%&(&%&(\u013b0&X&D&\x81&j&'&J&(&.&B&3&Z&R&h&3&E&E&<\xc6-\u0360\u1ef3&%8?&@&,&Z&@&0&J&,&^&x&_&6&C&6&C\u072c\u2a25&f&-&-&-&-&,&J&2&8&z&8&C&Y&8&-&d&\u1e78\xcc-&7&1&F&7&t&W&7&I&.&.&^&=\u0f9c\u19d3&8(>&/&/&\u077b')'\u1065')'%@/&0&%\u043e\u09c0*&*@&C\u053d\u05d4\u0274\u05eb4\u0dd7\u071a\u04d16\u0d84&/\u0178\u0303Z&*%\u0246\u03ff&\u0134&1\xa8\u04b4\u0174",w,"AAAAKKLLKKKKKJJIHHIHHGGFF"),function(f,w){if(w.length>31)throw"sizeBits length must be at most 31";for(let f=0;f<4;++f)if(0!=w[f])throw"first 4 must be 0";let b=N,j=$;j.set(w.subarray(0,0+w.length),0);let l=0,m=f.length;for(let f=0;f=31)throw"newSizeBits values must be less than 31";if(l+=f<m)throw"newSizeBits is inconsistent: overflow"}}for(let f=w.length;f<32;++f)b[f]=l;if(l!=m)throw"newSizeBits is inconsistent: underflow";L=f}(f,w)}function ff(f,w){return f<=w?f:w}function wf(f,w,b,j){if(null==f)return-1;let l=ff(f.offset+j,f.data.length),m=l-f.offset;return w.set(f.data.subarray(f.offset,l),b),f.offset+=m,m}return function(w,b){let j=new Z;if(t(j,new f(w)),b){let f=b.customDictionary;f&&function(f,w){if(1!=f.j)throw"State MUST be freshly initialized";if(0==f.Vf&&(f.Tf=new Array(16),f.df=new Int32Array(16),f.tf=-1),15==f.Vf)throw"Too many dictionary chunks";f.Tf[f.Vf]=w,f.Vf++,f.vf+=w.length,f.df[f.Vf]=f.vf}(j,f)}let l=0,m=[];for(;;){let f=new Int8Array(16384);if(m.push(f),j.nf=f,j.gf=0,j.lf=16384,j.mf=0,D(j),l+=j.mf,j.mf<16384)break}!function(f){if(0==f.j)throw"State MUST be initialized";11!=f.j&&(f.j=11,null!=f.input&&(f.input,f.input=null))}(j);let p=new Int8Array(l),q=0;for(let f=0;f Date: Thu, 8 Jul 2021 21:05:24 +0000 Subject: [PATCH 2/9] add attack info --- .gitignore | 3 +- EnoLandingPageBackend/Cache/AttackCache.cs | 64 ++++ .../Controllers/AttackInfoController.cs | 81 ++++++ EnoLandingPageBackend/Startup.cs | 1 + mock/generate_scoreboard.py | 123 -------- mock/simulate_ctf.py | 273 ++++++++++++++++++ 6 files changed, 421 insertions(+), 124 deletions(-) create mode 100644 EnoLandingPageBackend/Cache/AttackCache.cs create mode 100644 EnoLandingPageBackend/Controllers/AttackInfoController.cs delete mode 100644 mock/generate_scoreboard.py create mode 100644 mock/simulate_ctf.py diff --git a/.gitignore b/.gitignore index ec44649..f371fe7 100644 --- a/.gitignore +++ b/.gitignore @@ -357,4 +357,5 @@ MigrationBackup/ /scoreboard /sessions .env -mock/*.json \ No newline at end of file +mock/*.json +mock/*.info \ No newline at end of file diff --git a/EnoLandingPageBackend/Cache/AttackCache.cs b/EnoLandingPageBackend/Cache/AttackCache.cs new file mode 100644 index 0000000..02a0c5b --- /dev/null +++ b/EnoLandingPageBackend/Cache/AttackCache.cs @@ -0,0 +1,64 @@ +using System; +using System.Threading.Tasks; +using EnoCore.AttackInfo; +using Microsoft.Extensions.Caching.Memory; +using Microsoft.Extensions.Options; + +namespace EnoLandingPageBackend.Cache +{ + public class AttackCache + { + private readonly string defaultKey = "default"; + private MemoryCache _cache { get; set; } + public AttackCache() + { + _cache = new MemoryCache(new MemoryCacheOptions + { + SizeLimit = 1024 + }); + } + + public AttackInfo TryGetDefault() + { + AttackInfo cacheEntry; + this._cache.TryGetValue(defaultKey, out cacheEntry); + return cacheEntry; + } + public void InvalidateDefault() + { + this._cache.Remove(defaultKey); + } + + public void CreateDefault(AttackInfo attackInfo) + { + var cacheEntryOptions = new MemoryCacheEntryOptions() + .SetSize(1); + _cache.Set(this.defaultKey, attackInfo, cacheEntryOptions); + } + + public AttackInfo GetOrCreate(object key, Func createItem) + { + AttackInfo cacheEntry; + if (!_cache.TryGetValue(key, out cacheEntry))// Look for cache key. + { + cacheEntry = createItem(); + + var cacheEntryOptions = new MemoryCacheEntryOptions() + .SetSize(1) + .SetPriority(CacheItemPriority.Normal); + + _cache.Set(key, cacheEntry, cacheEntryOptions); + } + return cacheEntry; + } + + public async Task GetOrCreateAsync(object key, Func> createItem) + { + var func = await createItem(); + return this.GetOrCreate(key, () => + { + return func; + }); + } + } +} \ No newline at end of file diff --git a/EnoLandingPageBackend/Controllers/AttackInfoController.cs b/EnoLandingPageBackend/Controllers/AttackInfoController.cs new file mode 100644 index 0000000..f0ba28b --- /dev/null +++ b/EnoLandingPageBackend/Controllers/AttackInfoController.cs @@ -0,0 +1,81 @@ +namespace EnoLandingPageBackend.Controllers +{ + using System; + using System.Collections.Generic; + using System.Linq; + using System.Threading.Tasks; + using Microsoft.AspNetCore.Authorization; + using Microsoft.AspNetCore.Mvc; + using EnoCore.AttackInfo; + using Microsoft.Extensions.Logging; + using EnoLandingPageCore; + using Microsoft.Extensions.Caching.Memory; + using EnoLandingPageBackend.Cache; + using EnoLandingPageBackend.Database; + using System.Threading; + + /// + /// Retrieve the AttackInfo. + /// + [ApiController] + [Route("/api/[controller]")] + public class AttackInfoController : ControllerBase + { + private readonly ILogger logger; + private readonly LandingPageSettings settings; + private AttackCache _cache; + + /// + /// Initalizes the AttackInfoController. + /// + /// + /// + /// + public AttackInfoController(ILogger logger, LandingPageSettings settings, AttackCache cache) + { + this.logger = logger; + this.settings = settings; + this._cache = cache; + } + + /// + /// Gets the current AttackInfo. + /// + /// The AttackInfo of the current round. + [HttpGet] + public async Task> GetCurrentAttackInfo(CancellationToken cancellationToken) + { + AttackInfo attackInfo; + attackInfo = this._cache.TryGetDefault(); + if (attackInfo == null) + { + return NotFound(); + } + return this.Ok(attackInfo); + } + + /// + /// Sets the Attack Info. + /// + /// The admin secret for authenticating the request. + /// The body of the request. + [HttpPost] + public async Task PostScoreboard(string adminSecret, [FromBody] AttackInfo attackInfo, CancellationToken cancellationToken) + { + if (adminSecret != this.settings.AdminSecret) + { + this.logger.LogInformation("Somebody unauthorized tried to update the AttackInfo."); + return this.Unauthorized(); + } + // await this.database.SaveattackInfo(attackInfo, cancellationToken); + this._cache.CreateDefault(attackInfo); + this.logger.LogDebug("New AttackInfo set."); + return Ok(); + } + } + + public class AttackInfoNotFoundException : Exception + { + + } +} diff --git a/EnoLandingPageBackend/Startup.cs b/EnoLandingPageBackend/Startup.cs index 10cd21b..23213c1 100644 --- a/EnoLandingPageBackend/Startup.cs +++ b/EnoLandingPageBackend/Startup.cs @@ -153,6 +153,7 @@ public void ConfigureServices(IServiceCollection services) }); services.AddSingleton(); services.AddSingleton(); + services.AddSingleton(); services.AddSpaStaticFiles(configuration => { diff --git a/mock/generate_scoreboard.py b/mock/generate_scoreboard.py deleted file mode 100644 index 04f715f..0000000 --- a/mock/generate_scoreboard.py +++ /dev/null @@ -1,123 +0,0 @@ -# -*- coding: utf-8 -*- -import json -import random -from datetime import date, datetime -import time -import requests -import json -import glob - - -SERVICE_COUNT = 11 -TEAM_COUNT = 100 -ROUND_LENGTH_SECONDS = 15 -currentRound = len(glob.glob("./*")) - 1 - -services = [] -for i in range(1, 1 + SERVICE_COUNT): - services.append({ - "serviceId": i, - "serviceName": f"service{i}", - "flagVariants": 1, - "firstBloods": [] - }) - -teams = [] -for i in range(1, 1 + TEAM_COUNT): - teams.append({ - "teamName": f"Team {i}", - "teamId": i, - "logoUrl": "https://ctftime.org//media/team/discord_icon_only.png", - "countryCode": "US", - "totalScore": 0, - "attackScore": 0, - "defenseScore": 0, - "serviceLevelAgreementScore": 0, - "serviceDetails": [ - { - "serviceId": s["serviceId"], - "attackScore": 0, - "defenseScore": 0, - "serviceLevelAgreementScore": 0, - "serviceStatus": "OK", - "message": None - } - for s in services - ] - }) - -scoreboard = { - "currentRound": currentRound, - "startTimestamp": datetime.now().isoformat(), - "endTimestamp": datetime.now().isoformat(), - "roundLength": ROUND_LENGTH_SECONDS, - "dnsSuffix": "", - "services": services, - "teams": teams -} - - -def generate(scoreboard, currentRound): - for t in range(0, TEAM_COUNT): - attack_sum = 0 - defense_sum = 0 - sla_sum = 0 - - for s in range(0, SERVICE_COUNT): - attack = random.randint(0, 5) - defense = random.randint(0, 5) - sla = random.randint(0, 5) - - scoreboard["teams"][t]["serviceDetails"][s] = { - "serviceId": scoreboard["teams"][t]["serviceDetails"][s]["serviceId"], - "attackScore": scoreboard["teams"][t]["serviceDetails"][s]["attackScore"] + attack, - "defenseScore": scoreboard["teams"][t]["serviceDetails"][s]["defenseScore"] + defense, - "serviceLevelAgreementScore": scoreboard["teams"][t]["serviceDetails"][s]["serviceLevelAgreementScore"] + sla, - "serviceStatus": random.choice(["OK", "OK", "OK", "OK", "OK", "OK", "MUMBLE", "OFFLINE", "RECOVERING", "INTERNAL_ERROR"]), - "message": None - } - - attack_sum += attack - defense_sum += defense - sla_sum += sla - - scoreboard["teams"][t]["attackScore"] = scoreboard["teams"][t]["attackScore"] + attack_sum - scoreboard["teams"][t]["defenseScore"] += defense_sum - scoreboard["teams"][t]["serviceLevelAgreementScore"] += sla_sum - scoreboard["teams"][t]["totalScore"] += attack_sum + \ - defense_sum + sla_sum - - return scoreboard - - -def save(scoreboard, currentRound): - # with open('EnoLandingPageBackend/ClientApp/src/assets/scoreboard.json', 'w') as f: - with open('scoreboard.json', 'w') as f: - json.dump(scoreboard, f) - # with open(f"EnoLandingPageBackend/ClientApp/src/assets/scoreboard{currentRound}.json", 'w') as f: - with open(f"scoreboard{currentRound}.json", 'w') as f: - json.dump(scoreboard, f) - - print(f"Created scoreboard for round {currentRound}") - - -startTimestamp = datetime.now() -endTimestamp = datetime.now() - -save(scoreboard, currentRound) - -while True: - scoreboard = generate(scoreboard, currentRound) - - time.sleep(ROUND_LENGTH_SECONDS) - - currentRound += 1 - startTimestamp = endTimestamp - endTimestamp = datetime.now().astimezone() - scoreboard["currentRound"] = currentRound - scoreboard["startTimestamp"] = startTimestamp.isoformat() - scoreboard["endTimestamp"] = endTimestamp.isoformat() - - save(scoreboard, currentRound) - requests.post("http://localhost:5000/api/scoreboardinfo/scoreboard?adminSecret=secret", - json=scoreboard) diff --git a/mock/simulate_ctf.py b/mock/simulate_ctf.py new file mode 100644 index 0000000..88c7158 --- /dev/null +++ b/mock/simulate_ctf.py @@ -0,0 +1,273 @@ +# -*- coding: utf-8 -*- +import json +import random +from datetime import date, datetime +import time +import requests +import json +import glob + + +SERVICE_COUNT = 11 +TEAM_COUNT = 100 +ROUND_LENGTH_SECONDS = 15 + +try: + with open("currentRound.info", 'r') as f: + line = f.readline().strip() + currentRound = int(line) - 1 + +except: + currentRound = 0 + + +services = [] +for i in range(1, 1 + SERVICE_COUNT): + services.append({ + "serviceId": i, + "serviceName": f"service{i}", + "flagVariants": 1, + "firstBloods": [] + }) + +teams = [] +for i in range(1, 1 + TEAM_COUNT): + teams.append({ + "teamName": f"Team {i}", + "teamId": i, + "logoUrl": "https://ctftime.org//media/team/discord_icon_only.png", + "countryCode": "US", + "totalScore": 0, + "attackScore": 0, + "defenseScore": 0, + "serviceLevelAgreementScore": 0, + "serviceDetails": [ + { + "serviceId": s["serviceId"], + "attackScore": 0, + "defenseScore": 0, + "serviceLevelAgreementScore": 0, + "serviceStatus": "OK", + "message": None + } + for s in services + ] + }) + +scoreboard = { + "currentRound": currentRound, + "startTimestamp": datetime.now().isoformat(), + "endTimestamp": datetime.now().isoformat(), + "roundLength": ROUND_LENGTH_SECONDS, + "dnsSuffix": "", + "services": services, + "teams": teams +} + + +def generateScoreboard(scoreboard, currentRound): + for t in range(0, TEAM_COUNT): + attack_sum = 0 + defense_sum = 0 + sla_sum = 0 + + for s in range(0, SERVICE_COUNT): + attack = random.randint(0, 5) + defense = random.randint(0, 5) + sla = random.randint(0, 5) + + scoreboard["teams"][t]["serviceDetails"][s] = { + "serviceId": scoreboard["teams"][t]["serviceDetails"][s]["serviceId"], + "attackScore": scoreboard["teams"][t]["serviceDetails"][s]["attackScore"] + attack, + "defenseScore": scoreboard["teams"][t]["serviceDetails"][s]["defenseScore"] + defense, + "serviceLevelAgreementScore": scoreboard["teams"][t]["serviceDetails"][s]["serviceLevelAgreementScore"] + sla, + "serviceStatus": random.choice(["OK", "OK", "OK", "OK", "OK", "OK", "MUMBLE", "OFFLINE", "RECOVERING", "INTERNAL_ERROR"]), + "message": None + } + + attack_sum += attack + defense_sum += defense + sla_sum += sla + + scoreboard["teams"][t]["attackScore"] = scoreboard["teams"][t]["attackScore"] + attack_sum + scoreboard["teams"][t]["defenseScore"] += defense_sum + scoreboard["teams"][t]["serviceLevelAgreementScore"] += sla_sum + scoreboard["teams"][t]["totalScore"] += attack_sum + \ + defense_sum + sla_sum + + return scoreboard + + +def generateAttackInfo(attackInfo, currentRound): + attackInfo = json.loads("""{ + "availableTeams": [ + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1", + "10.1.9.1" + ], + "services": { + "gosship": { + "10.1.9.1": { + "619": { "0": ["olive-holy-elijah-108777"], "1": ["SEaSoN-rIVer-myTH-208810"] }, + "620": { "0": ["glaze-spark-james-093894"], "1": ["PeRiDOt-SwAMP-KitteN-656692"] } + } + }, + "orcano": { + "10.1.9.1": { + "619": { "0": [":i886806348:i-815075466"], "1": [":i2091792785:i744951361"] }, + "620": { "0": [":i-996168990:i1318233268"], "1": [":i1950306626:i2113958100"] } + } + }, + "shatranj": { + "10.1.9.1": { + "619": { "0": ["Q97UzzFYY5Zgyw"], "1": ["635OCU12naEQzQ"] }, + "620": { "0": ["fuCexsesVsoGeQ"], "1": ["CuWTqHC5l4QPKQ"] } + } + }, + "stldoctor": { + "10.1.9.1": { + "619": { "0": ["Model 5af679f3f8.. is kinda sus"], "1": ["User 46b3988c4d.. is kinda sus"] }, + "620": { "0": ["Model 267fd7767d.. is kinda sus"], "1": ["User 40cf917aa8.. is kinda sus"] } + } + } + } +} +""") + + return attackInfo + + +def save(scoreboard, currentRound): + # with open('EnoLandingPageBackend/ClientApp/src/assets/scoreboard.json', 'w') as f: + with open('scoreboard.json', 'w') as f: + json.dump(scoreboard, f) + # with open(f"EnoLandingPageBackend/ClientApp/src/assets/scoreboard{currentRound}.json", 'w') as f: + with open(f"scoreboard{currentRound}.json", 'w') as f: + json.dump(scoreboard, f) + + +startTimestamp = datetime.now() +endTimestamp = datetime.now() + +# save(scoreboard, currentRound) + +while True: + scoreboard = generateScoreboard(scoreboard, currentRound) + attackInfo = generateAttackInfo({}, currentRound) + + currentRound += 1 + startTimestamp = endTimestamp + endTimestamp = datetime.now().astimezone() + scoreboard["currentRound"] = currentRound + scoreboard["startTimestamp"] = startTimestamp.isoformat() + scoreboard["endTimestamp"] = endTimestamp.isoformat() + + # save(scoreboard, currentRound) + try: + requests.post("http://localhost:5000/api/scoreboardinfo/scoreboard?adminSecret=secret", + json=scoreboard) + requests.post("http://localhost:5000/api/attackinfo?adminSecret=secret", + json=attackInfo) + except: + print("There was a problem sending this round...") + print(f"Posted scoreboard for round {currentRound}") + with open("currentRound.info", 'w') as f: + f.write(str(currentRound)) + time.sleep(ROUND_LENGTH_SECONDS) From e4a381924218553816a7b4bb40a043ac28f26269 Mon Sep 17 00:00:00 2001 From: DanielHabenicht Date: Fri, 9 Jul 2021 00:22:13 +0000 Subject: [PATCH 3/9] use scoreboad files locally * Performance improvements * development database seeding --- .gitignore | 1 + EnoLandingPageBackend/Cache/AttackCache.cs | 24 ++++----- .../Cache/ScoreboardCache.cs | 13 +++-- .../Controllers/AttackInfoController.cs | 23 ++++----- .../Controllers/ScoreboardInfoController.cs | 50 +++++++++++++------ .../Database/LandingPageDatabase.cs | 27 ---------- .../Database/LandingPageDatabaseContext.cs | 2 - .../Database/LandingPageDatabaseInitalizer.cs | 20 ++++++++ .../EnoLandingPageBackend.csproj | 1 + EnoLandingPageBackend/Models/ErrorDto.cs | 38 -------------- EnoLandingPageBackend/Program.cs | 31 ++++++++++-- EnoLandingPageBackend/Startup.cs | 2 +- EnoLandingPageBackend/Utils.cs | 4 ++ loadtest/artillery.yml | 8 +-- static.docker-compose.yml | 4 +- 15 files changed, 123 insertions(+), 125 deletions(-) create mode 100644 EnoLandingPageBackend/Database/LandingPageDatabaseInitalizer.cs delete mode 100644 EnoLandingPageBackend/Models/ErrorDto.cs diff --git a/.gitignore b/.gitignore index f371fe7..0203df6 100644 --- a/.gitignore +++ b/.gitignore @@ -351,6 +351,7 @@ MigrationBackup/ # EnoLandingPage /EnoLandingPageBackend/data +/EnoLandingPageBackend/enginedata /EnoLandingPageBackend/appsettings.Development.json /EnoLandingPageBackend/wwwroot /data diff --git a/EnoLandingPageBackend/Cache/AttackCache.cs b/EnoLandingPageBackend/Cache/AttackCache.cs index 02a0c5b..ee2279a 100644 --- a/EnoLandingPageBackend/Cache/AttackCache.cs +++ b/EnoLandingPageBackend/Cache/AttackCache.cs @@ -1,16 +1,14 @@ -using System; -using System.Threading.Tasks; -using EnoCore.AttackInfo; -using Microsoft.Extensions.Caching.Memory; -using Microsoft.Extensions.Options; namespace EnoLandingPageBackend.Cache { - public class AttackCache + using System; + using System.Threading.Tasks; + using Microsoft.Extensions.Caching.Memory; + public class CustomMemoryCache { private readonly string defaultKey = "default"; private MemoryCache _cache { get; set; } - public AttackCache() + public CustomMemoryCache() { _cache = new MemoryCache(new MemoryCacheOptions { @@ -18,9 +16,9 @@ public AttackCache() }); } - public AttackInfo TryGetDefault() + public T TryGetDefault() { - AttackInfo cacheEntry; + T cacheEntry; this._cache.TryGetValue(defaultKey, out cacheEntry); return cacheEntry; } @@ -29,16 +27,16 @@ public void InvalidateDefault() this._cache.Remove(defaultKey); } - public void CreateDefault(AttackInfo attackInfo) + public void CreateDefault(T attackInfo) { var cacheEntryOptions = new MemoryCacheEntryOptions() .SetSize(1); _cache.Set(this.defaultKey, attackInfo, cacheEntryOptions); } - public AttackInfo GetOrCreate(object key, Func createItem) + public T GetOrCreate(object key, Func createItem) { - AttackInfo cacheEntry; + T cacheEntry; if (!_cache.TryGetValue(key, out cacheEntry))// Look for cache key. { cacheEntry = createItem(); @@ -52,7 +50,7 @@ public AttackInfo GetOrCreate(object key, Func createItem) return cacheEntry; } - public async Task GetOrCreateAsync(object key, Func> createItem) + public async Task GetOrCreateAsync(object key, Func> createItem) { var func = await createItem(); return this.GetOrCreate(key, () => diff --git a/EnoLandingPageBackend/Cache/ScoreboardCache.cs b/EnoLandingPageBackend/Cache/ScoreboardCache.cs index 3e3333c..7e76c90 100644 --- a/EnoLandingPageBackend/Cache/ScoreboardCache.cs +++ b/EnoLandingPageBackend/Cache/ScoreboardCache.cs @@ -1,6 +1,5 @@ using System; using System.Threading.Tasks; -using EnoCore.Scoreboard; using Microsoft.Extensions.Caching.Memory; using Microsoft.Extensions.Options; @@ -18,9 +17,9 @@ public ScoreboardCache() }); } - public Scoreboard TryGetDefault() + public string TryGetDefault() { - Scoreboard cacheEntry; + string cacheEntry; this._cache.TryGetValue(defaultKey, out cacheEntry); return cacheEntry; } @@ -29,16 +28,16 @@ public void InvalidateDefault() this._cache.Remove(defaultKey); } - public void CreateDefault(Scoreboard scoreboard) + public void CreateDefault(string scoreboard) { var cacheEntryOptions = new MemoryCacheEntryOptions() .SetSize(1); _cache.Set(this.defaultKey, scoreboard, cacheEntryOptions); } - public Scoreboard GetOrCreate(object key, Func createItem) + public string GetOrCreate(object key, Func createItem) { - Scoreboard cacheEntry; + string cacheEntry; if (!_cache.TryGetValue(key, out cacheEntry))// Look for cache key. { cacheEntry = createItem(); @@ -52,7 +51,7 @@ public Scoreboard GetOrCreate(object key, Func createItem) return cacheEntry; } - public async Task GetOrCreateAsync(object key, Func> createItem) + public async Task GetOrCreateAsync(object key, Func> createItem) { var func = await createItem(); return this.GetOrCreate(key, () => diff --git a/EnoLandingPageBackend/Controllers/AttackInfoController.cs b/EnoLandingPageBackend/Controllers/AttackInfoController.cs index f0ba28b..c79b08a 100644 --- a/EnoLandingPageBackend/Controllers/AttackInfoController.cs +++ b/EnoLandingPageBackend/Controllers/AttackInfoController.cs @@ -1,29 +1,25 @@ namespace EnoLandingPageBackend.Controllers { using System; - using System.Collections.Generic; - using System.Linq; - using System.Threading.Tasks; - using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using EnoCore.AttackInfo; using Microsoft.Extensions.Logging; using EnoLandingPageCore; - using Microsoft.Extensions.Caching.Memory; using EnoLandingPageBackend.Cache; - using EnoLandingPageBackend.Database; using System.Threading; + using System.Text.Json; /// /// Retrieve the AttackInfo. /// [ApiController] [Route("/api/[controller]")] + [Produces("application/json")] public class AttackInfoController : ControllerBase { private readonly ILogger logger; private readonly LandingPageSettings settings; - private AttackCache _cache; + private CustomMemoryCache _cache; /// /// Initalizes the AttackInfoController. @@ -31,7 +27,7 @@ public class AttackInfoController : ControllerBase /// /// /// - public AttackInfoController(ILogger logger, LandingPageSettings settings, AttackCache cache) + public AttackInfoController(ILogger logger, LandingPageSettings settings, CustomMemoryCache cache) { this.logger = logger; this.settings = settings; @@ -43,15 +39,15 @@ public AttackInfoController(ILogger logger, LandingPageSet /// /// The AttackInfo of the current round. [HttpGet] - public async Task> GetCurrentAttackInfo(CancellationToken cancellationToken) + public ActionResult GetCurrentAttackInfo(CancellationToken cancellationToken) { - AttackInfo attackInfo; + string attackInfo; attackInfo = this._cache.TryGetDefault(); if (attackInfo == null) { return NotFound(); } - return this.Ok(attackInfo); + return Content(attackInfo, "application/json"); } /// @@ -60,15 +56,14 @@ public async Task> GetCurrentAttackInfo(CancellationTok /// The admin secret for authenticating the request. /// The body of the request. [HttpPost] - public async Task PostScoreboard(string adminSecret, [FromBody] AttackInfo attackInfo, CancellationToken cancellationToken) + public ActionResult PostScoreboard(string adminSecret, [FromBody] AttackInfo attackInfo, CancellationToken cancellationToken) { if (adminSecret != this.settings.AdminSecret) { this.logger.LogInformation("Somebody unauthorized tried to update the AttackInfo."); return this.Unauthorized(); } - // await this.database.SaveattackInfo(attackInfo, cancellationToken); - this._cache.CreateDefault(attackInfo); + this._cache.CreateDefault(JsonSerializer.Serialize(attackInfo, EnoCore.EnoCoreUtil.CamelCaseEnumConverterOptions)); this.logger.LogDebug("New AttackInfo set."); return Ok(); } diff --git a/EnoLandingPageBackend/Controllers/ScoreboardInfoController.cs b/EnoLandingPageBackend/Controllers/ScoreboardInfoController.cs index a0b056a..da3fff6 100644 --- a/EnoLandingPageBackend/Controllers/ScoreboardInfoController.cs +++ b/EnoLandingPageBackend/Controllers/ScoreboardInfoController.cs @@ -13,6 +13,8 @@ using EnoLandingPageBackend.Cache; using EnoLandingPageBackend.Database; using System.Threading; + using System.IO; + using System.Text.Json; /// /// Retrieve the scoreboard. @@ -24,7 +26,6 @@ public class ScoreboardInfoController : ControllerBase { private readonly ILogger logger; private readonly LandingPageSettings settings; - private readonly LandingPageDatabase database; private ScoreboardCache _cache; /// @@ -32,11 +33,10 @@ public class ScoreboardInfoController : ControllerBase /// /// /// - public ScoreboardInfoController(ILogger logger, LandingPageSettings settings, LandingPageDatabase db, ScoreboardCache cache) + public ScoreboardInfoController(ILogger logger, LandingPageSettings settings, ScoreboardCache cache) { this.logger = logger; this.settings = settings; - this.database = db; this._cache = cache; } @@ -48,18 +48,22 @@ public ScoreboardInfoController(ILogger logger, Landin [Route("scoreboard.json")] public async Task> GetDefaultScoreboard(CancellationToken cancellationToken) { - Scoreboard scoreboard; + string scoreboard; scoreboard = this._cache.TryGetDefault(); if (scoreboard == null) { - scoreboard = await this.database.GetCurrentScoreboard(cancellationToken); - this._cache.CreateDefault(scoreboard); + using (var reader = System.IO.File.OpenText(this.getScoreboardFilePath())) + { + scoreboard = await reader.ReadToEndAsync(); + this.logger.LogInformation(scoreboard); + this._cache.CreateDefault(scoreboard); + } } if (scoreboard == null) { return NotFound(); } - return this.Ok(scoreboard); + return Content(scoreboard); } /// @@ -71,24 +75,31 @@ public async Task> GetDefaultScoreboard(CancellationTok [Route("scoreboard{roundId}.json")] public async Task> GetScoreboard(CancellationToken cancellationToken, int roundId = -1) { - Scoreboard scoreboard; + string scoreboard; try { scoreboard = await this._cache.GetOrCreateAsync(roundId, async () => { - var scoreboard = await this.database.GetScoreboard(roundId, cancellationToken); - if (scoreboard == null) + try + { + using (var reader = System.IO.File.OpenText(getScoreboardFilePath())) + { + var scoreboard = await reader.ReadToEndAsync(); + return scoreboard; + } + } + catch (FileNotFoundException) { throw new ScoreboardNotFoundException(); } - return scoreboard; }); } - catch (ScoreboardNotFoundException) + catch (Exception e) { + logger.LogError(e.Message); return NotFound(); } - return this.Ok(scoreboard); + return Content(scoreboard); } /// @@ -107,11 +118,22 @@ public async Task PostScoreboard(string adminSecret, [FromBody] Sc this.logger.LogInformation("Somebody unauthorized tried to update the Scoreboard."); return this.Unauthorized(); } - await this.database.SaveScoreboard(scoreboard, cancellationToken); + + using (var createStream = System.IO.File.Create(getScoreboardFilePath())) + using (var scoreboardRoundFile = System.IO.File.Create(getScoreboardFilePath(scoreboard.CurrentRound))) + { + await JsonSerializer.SerializeAsync(createStream, scoreboard, EnoCore.EnoCoreUtil.CamelCaseEnumConverterOptions); + await JsonSerializer.SerializeAsync(scoreboardRoundFile, scoreboard, EnoCore.EnoCoreUtil.CamelCaseEnumConverterOptions); + } this._cache.InvalidateDefault(); this.logger.LogDebug("New Scoreboard set."); return Ok(); } + + private string getScoreboardFilePath(long roundId = -1) + { + return Path.Combine(Utils.path, "scoreboard" + (roundId < 0 ? "" : roundId) + ".json"); + } } public class ScoreboardNotFoundException : Exception diff --git a/EnoLandingPageBackend/Database/LandingPageDatabase.cs b/EnoLandingPageBackend/Database/LandingPageDatabase.cs index 33f5ff0..375026d 100644 --- a/EnoLandingPageBackend/Database/LandingPageDatabase.cs +++ b/EnoLandingPageBackend/Database/LandingPageDatabase.cs @@ -99,32 +99,5 @@ public async Task CheckIn(long teamId, CancellationToken token) dbTeam.Confirmed = true; await this.context.SaveChangesAsync(token); } - - public async Task SaveScoreboard(Scoreboard scoreboard, CancellationToken token) - { - // TODO: Maybe save locally to make exporting it easier? - this.context.Scoreboards.Add(new DatabaseScoreboard(scoreboard.CurrentRound, JsonSerializer.Serialize(scoreboard))); - await this.context.SaveChangesAsync(token); - } - - public async Task GetCurrentScoreboard(CancellationToken token) - { - var scoreboard = await this.context.Scoreboards.OrderByDescending(u => u.roundId).FirstOrDefaultAsync(); - if (scoreboard == null) - { - return null; - } - return JsonSerializer.Deserialize(scoreboard.scoreboardString); - } - - public async Task GetScoreboard(long roundId, CancellationToken token) - { - var scoreboard = await this.context.Scoreboards.Where(s => s.roundId == roundId).FirstOrDefaultAsync(); - if (scoreboard == null) - { - return null; - } - return JsonSerializer.Deserialize(scoreboard.scoreboardString); - } } } diff --git a/EnoLandingPageBackend/Database/LandingPageDatabaseContext.cs b/EnoLandingPageBackend/Database/LandingPageDatabaseContext.cs index 6076d72..c757347 100644 --- a/EnoLandingPageBackend/Database/LandingPageDatabaseContext.cs +++ b/EnoLandingPageBackend/Database/LandingPageDatabaseContext.cs @@ -24,8 +24,6 @@ public LandingPageDatabaseContext(DbContextOptions o public DbSet Teams { get; set; } - public DbSet Scoreboards { get; set; } - public DbSet Vulnboxes { get; set; } protected override void OnModelCreating(ModelBuilder modelBuilder) diff --git a/EnoLandingPageBackend/Database/LandingPageDatabaseInitalizer.cs b/EnoLandingPageBackend/Database/LandingPageDatabaseInitalizer.cs new file mode 100644 index 0000000..8e25aa0 --- /dev/null +++ b/EnoLandingPageBackend/Database/LandingPageDatabaseInitalizer.cs @@ -0,0 +1,20 @@ +using Microsoft.AspNetCore.Builder; +using Microsoft.AspNetCore.Identity; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; + +namespace EnoLandingPageBackend.Database +{ + public class LandingPageDatabaseInitializer + { + public static async Task Seed(LandingPageDatabase context) + { + if (!(await context.GetTeams(new System.Threading.CancellationToken())).Any()) + { + await context.GetOrUpdateLandingPageTeam(1, "testTeam", null, null, null, new System.Threading.CancellationToken()); + } + } + } +} diff --git a/EnoLandingPageBackend/EnoLandingPageBackend.csproj b/EnoLandingPageBackend/EnoLandingPageBackend.csproj index ef422e7..64755f9 100644 --- a/EnoLandingPageBackend/EnoLandingPageBackend.csproj +++ b/EnoLandingPageBackend/EnoLandingPageBackend.csproj @@ -8,6 +8,7 @@ ClientApp\ $(DefaultItemExcludes);$(SpaRoot)node_modules\** EnoLandingPageBackend + $(NoWarn);1591 diff --git a/EnoLandingPageBackend/Models/ErrorDto.cs b/EnoLandingPageBackend/Models/ErrorDto.cs deleted file mode 100644 index 8668fe2..0000000 --- a/EnoLandingPageBackend/Models/ErrorDto.cs +++ /dev/null @@ -1,38 +0,0 @@ -using Newtonsoft.Json; -using Newtonsoft.Json.Serialization; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; - -namespace EnoLandingPageBackend.Models -{ - /// - /// A DTO representing errors. - /// - public class ErrorDto - { - /// - /// Gets or sets the HTTP StatusCode representing the error. - /// - public int StatusCode { get; set; } - - /// - /// Gets or sets the error Message. - /// - public string Message { get; set; } - - /// - /// Gets or sets a CorrelationId to find the issue in the log. - /// - public Guid CorrelationId { get; set; } - - public override string ToString() - { - return JsonConvert.SerializeObject(this, new JsonSerializerSettings() - { - ContractResolver = new CamelCasePropertyNamesContractResolver(), - }); - } - } -} diff --git a/EnoLandingPageBackend/Program.cs b/EnoLandingPageBackend/Program.cs index 4db6353..9a2dbaf 100644 --- a/EnoLandingPageBackend/Program.cs +++ b/EnoLandingPageBackend/Program.cs @@ -1,19 +1,42 @@ namespace EnoLandingPageBackend { using System; - using System.Collections.Generic; - using System.Linq; using System.Threading.Tasks; + using EnoLandingPageBackend.Database; using Microsoft.AspNetCore.Hosting; using Microsoft.Extensions.Configuration; + using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Logging; public class Program { - public static void Main(string[] args) + public static async Task Main(string[] args) { - CreateHostBuilder(args).Build().Run(); + var host = CreateHostBuilder(args).Build(); + + using (var scope = host.Services.CreateScope()) + { + var services = scope.ServiceProvider; + var hostingEnvironment = services.GetService(); + + if (hostingEnvironment.IsDevelopment()) + { + try + { + var context = services.GetRequiredService(); + await LandingPageDatabaseInitializer.Seed(context); + } + catch (Exception ex) + { + var logger = services.GetRequiredService>(); + logger.LogError(ex, "An error occurred while seeding the database."); + } + + } + } + + host.Run(); } public static IHostBuilder CreateHostBuilder(string[] args) => diff --git a/EnoLandingPageBackend/Startup.cs b/EnoLandingPageBackend/Startup.cs index 23213c1..ddee994 100644 --- a/EnoLandingPageBackend/Startup.cs +++ b/EnoLandingPageBackend/Startup.cs @@ -153,7 +153,7 @@ public void ConfigureServices(IServiceCollection services) }); services.AddSingleton(); services.AddSingleton(); - services.AddSingleton(); + services.AddSingleton>(); services.AddSpaStaticFiles(configuration => { diff --git a/EnoLandingPageBackend/Utils.cs b/EnoLandingPageBackend/Utils.cs index ab957c5..1a72863 100644 --- a/EnoLandingPageBackend/Utils.cs +++ b/EnoLandingPageBackend/Utils.cs @@ -1,3 +1,5 @@ +using System.IO; + namespace EnoLandingPageBackend { public class Utils @@ -13,5 +15,7 @@ public static string TeamSubnetForId(long id) { return $"::ffff:10.1.{id}.0"; } + + public static string path = Directory.GetCurrentDirectory() + "/enginedata"; } } diff --git a/loadtest/artillery.yml b/loadtest/artillery.yml index 943095e..4141d0f 100644 --- a/loadtest/artillery.yml +++ b/loadtest/artillery.yml @@ -1,11 +1,13 @@ config: - target: "http://localhost" + target: "https://localhost:5001" phases: - duration: 10 - arrivalRate: 500 + arrivalRate: 1000 scenarios: - flow: - get: url: "/" - get: - url: "/api/scoreboardInfo/scoreboard.json" \ No newline at end of file + url: "/api/scoreboardInfo/scoreboard.json" + # - get: + # url: "/api/attackinfo" \ No newline at end of file diff --git a/static.docker-compose.yml b/static.docker-compose.yml index 89e0d4d..479c3df 100644 --- a/static.docker-compose.yml +++ b/static.docker-compose.yml @@ -1,10 +1,10 @@ -version: '3.7' +version: "3.7" services: static-enoportal: build: context: . dockerfile: static.Dockerfile ports: - - 80:80 + - 8000:80 volumes: - ./scoreboard:/usr/share/nginx/html/api/scoreboard/ From a954b0c24c530b0f67ef6eb0a292b945ddddd2c3 Mon Sep 17 00:00:00 2001 From: DanielHabenicht Date: Fri, 9 Jul 2021 00:28:01 +0000 Subject: [PATCH 4/9] add nologo graphic Co-authored-by: Louis Burda --- .../pages/page-teams/page-teams.component.html | 6 +++++- .../ClientApp/src/assets/nologo.png | Bin 0 -> 34054 bytes 2 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 EnoLandingPageBackend/ClientApp/src/assets/nologo.png diff --git a/EnoLandingPageBackend/ClientApp/src/app/pages/page-teams/page-teams.component.html b/EnoLandingPageBackend/ClientApp/src/app/pages/page-teams/page-teams.component.html index fcdad9a..c71ee87 100644 --- a/EnoLandingPageBackend/ClientApp/src/app/pages/page-teams/page-teams.component.html +++ b/EnoLandingPageBackend/ClientApp/src/app/pages/page-teams/page-teams.component.html @@ -22,7 +22,11 @@ - +

{{ team.name }} diff --git a/EnoLandingPageBackend/ClientApp/src/assets/nologo.png b/EnoLandingPageBackend/ClientApp/src/assets/nologo.png new file mode 100644 index 0000000000000000000000000000000000000000..45e06cd23010c736995e9fb1783d8ba330eacf02 GIT binary patch literal 34054 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 R;SVa{D9fwMmCKj~|38G?p;Q0> literal 0 HcmV?d00001 From 737152f95e6cbce5478fbd374645d449a614f195 Mon Sep 17 00:00:00 2001 From: DanielHabenicht Date: Fri, 9 Jul 2021 00:34:59 +0000 Subject: [PATCH 5/9] add buttons --- .../src/app/pages/page-profile/page-profile.component.html | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/EnoLandingPageBackend/ClientApp/src/app/pages/page-profile/page-profile.component.html b/EnoLandingPageBackend/ClientApp/src/app/pages/page-profile/page-profile.component.html index 981a42a..8cf1482 100644 --- a/EnoLandingPageBackend/ClientApp/src/app/pages/page-profile/page-profile.component.html +++ b/EnoLandingPageBackend/ClientApp/src/app/pages/page-profile/page-profile.component.html @@ -170,6 +170,12 @@ Download Vpn Configuration + + Download WireGuard Configuration + + + Attackinfo + From 8f0cf9f5f101a98d93da3986e77adceb717ac1ae Mon Sep 17 00:00:00 2001 From: DanielHabenicht Date: Fri, 9 Jul 2021 01:04:17 +0000 Subject: [PATCH 6/9] add readme --- README.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/README.md b/README.md index fd99601..602c58a 100644 --- a/README.md +++ b/README.md @@ -46,3 +46,8 @@ docker push ghcr.io/enowars/enoportal:- The Fronted App is inside the `EnoLandingPageBackend/ClientApp` folder. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/enowars/EnoLandingPage) + + +### Loadtest + +`npx artillery run loadtest/artillery.yml --insecure` \ No newline at end of file From 3f79e778666114a4f995ba6d7a4bda5b401afa84 Mon Sep 17 00:00:00 2001 From: DanielHabenicht Date: Fri, 9 Jul 2021 01:04:27 +0000 Subject: [PATCH 7/9] add comments --- docker-compose.yml | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index d85e78e..4b32db4 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,4 +1,4 @@ -version: '3.7' +version: "3.7" services: enoportal: build: @@ -8,15 +8,17 @@ services: - .env volumes: - ./sessions:/root/.aspnet/DataProtection-Keys + # For the Database - ./data:/app/data + # For Scoreboard and AttackInfo (if they are not supplied via the HTTP Endpoint) - ./scoreboard:/app/wwwroot/scoreboard # volumes: # - ./EnoLandingPageBackend/appsettings.Development.json:/app/appsettings.json labels: - - 'traefik.enable=true' - - 'traefik.http.routers.whoami.rule=Host(`enowars.aquiver.de`)' - - 'traefik.http.routers.whoami.entrypoints=websecure' - - 'traefik.http.routers.whoami.tls.certresolver=myresolver' + - "traefik.enable=true" + - "traefik.http.routers.whoami.rule=Host(`enowars.aquiver.de`)" + - "traefik.http.routers.whoami.entrypoints=websecure" + - "traefik.http.routers.whoami.tls.certresolver=myresolver" ports: - 80:80 # traefik: From 3a290e746a24e77c1b10588a48648af943025dd9 Mon Sep 17 00:00:00 2001 From: DanielHabenicht Date: Fri, 9 Jul 2021 19:34:03 +0000 Subject: [PATCH 8/9] remove seed actions for now --- .../Database/LandingPageDatabaseInitalizer.cs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/EnoLandingPageBackend/Database/LandingPageDatabaseInitalizer.cs b/EnoLandingPageBackend/Database/LandingPageDatabaseInitalizer.cs index 8e25aa0..1022862 100644 --- a/EnoLandingPageBackend/Database/LandingPageDatabaseInitalizer.cs +++ b/EnoLandingPageBackend/Database/LandingPageDatabaseInitalizer.cs @@ -11,10 +11,11 @@ public class LandingPageDatabaseInitializer { public static async Task Seed(LandingPageDatabase context) { - if (!(await context.GetTeams(new System.Threading.CancellationToken())).Any()) - { - await context.GetOrUpdateLandingPageTeam(1, "testTeam", null, null, null, new System.Threading.CancellationToken()); - } + // Comment in after enowars5 is over + // if (!(await context.GetTeams(new System.Threading.CancellationToken())).Any()) + // { + // await context.GetOrUpdateLandingPageTeam(1, "testTeam", null, null, null, new System.Threading.CancellationToken()); + // } } } } From f6466ffdef862524fb762efdfe84a3c221ef2d96 Mon Sep 17 00:00:00 2001 From: DanielHabenicht Date: Fri, 9 Jul 2021 19:53:21 +0000 Subject: [PATCH 9/9] add check in link --- .../modules/app-navigation/app-navigation.component.html | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/EnoLandingPageBackend/ClientApp/src/app/modules/app-navigation/app-navigation.component.html b/EnoLandingPageBackend/ClientApp/src/app/modules/app-navigation/app-navigation.component.html index e34d1c3..5181071 100644 --- a/EnoLandingPageBackend/ClientApp/src/app/modules/app-navigation/app-navigation.component.html +++ b/EnoLandingPageBackend/ClientApp/src/app/modules/app-navigation/app-navigation.component.html @@ -165,7 +165,6 @@ CTF Registration closing in    Register Now! @@ -173,7 +172,11 @@ CTF CheckIn closing in  - .  Check in now! + .  + Check in now!