From 1058f1660502297218f5f0010c1fdcbef19c485a Mon Sep 17 00:00:00 2001 From: Jonas Jenwald Date: Mon, 17 Aug 2020 08:49:19 +0200 Subject: [PATCH] Add (basic) support for transfer functions to Images (issue 6931, bug 1149713) This is *similar* to the existing transfer function support for SMasks, but extended to simple image data. Please note that the extra amount of data now being sent to the worker-thread, for affected /ExtGState entries, is limited to *at most* 4 `Uint8Array`s each with a length of 256 elements. Refer to https://www.adobe.com/content/dam/acom/en/devnet/acrobat/pdfs/PDF32000_2008.pdf#G9.1658137 for additional details. --- src/core/evaluator.js | 51 +++++++++++++++++- src/display/canvas.js | 91 ++++++++++++++++++++++++++++++-- test/pdfs/.gitignore | 1 + test/pdfs/issue6931_reduced.pdf | Bin 0 -> 56202 bytes test/test_manifest.json | 6 +++ 5 files changed, 143 insertions(+), 6 deletions(-) create mode 100644 test/pdfs/issue6931_reduced.pdf diff --git a/src/core/evaluator.js b/src/core/evaluator.js index 72b69cbcf..45de604b1 100644 --- a/src/core/evaluator.js +++ b/src/core/evaluator.js @@ -668,6 +668,51 @@ class PartialEvaluator { ); } + handleTransferFunction(tr) { + let transferArray; + if (Array.isArray(tr)) { + transferArray = tr; + } else if (isPDFFunction(tr)) { + transferArray = [tr]; + } else { + return null; // Not a valid transfer function entry. + } + + const transferMaps = []; + let numFns = 0, + numEffectfulFns = 0; + for (const entry of transferArray) { + const transferObj = this.xref.fetchIfRef(entry); + numFns++; + + if (isName(transferObj, "Identity")) { + transferMaps.push(null); + continue; + } else if (!isPDFFunction(transferObj)) { + return null; // Not a valid transfer function object. + } + + const transferFn = this._pdfFunctionFactory.create(transferObj); + const transferMap = new Uint8Array(256), + tmp = new Float32Array(1); + for (let j = 0; j < 256; j++) { + tmp[0] = j / 255; + transferFn(tmp, 0, tmp, 0); + transferMap[j] = (tmp[0] * 255) | 0; + } + transferMaps.push(transferMap); + numEffectfulFns++; + } + + if (!(numFns === 1 || numFns === 4)) { + return null; // Only 1 or 4 functions are supported, by the specification. + } + if (numEffectfulFns === 0) { + return null; // Only /Identity transfer functions found, which are no-ops. + } + return transferMaps; + } + handleTilingType( fn, args, @@ -887,7 +932,10 @@ class PartialEvaluator { } else { warn("Unsupported SMask type"); } - + break; + case "TR": + const transferMaps = this.handleTransferFunction(value); + gStateObj.push([key, transferMaps]); break; // Only generate info log messages for the following since // they are unlikely to have a big impact on the rendering. @@ -898,7 +946,6 @@ class PartialEvaluator { case "BG2": case "UCR": case "UCR2": - case "TR": case "TR2": case "HT": case "SM": diff --git a/src/display/canvas.js b/src/display/canvas.js index 83d95edfc..cca53d40d 100644 --- a/src/display/canvas.js +++ b/src/display/canvas.js @@ -416,6 +416,7 @@ var CanvasExtraState = (function CanvasExtraStateClosure() { this.lineWidth = 1; this.activeSMask = null; this.resumeSMaskCtx = null; // nonclonable field (see the save method below) + this.transferMaps = null; } CanvasExtraState.prototype = { @@ -484,7 +485,7 @@ var CanvasGraphics = (function CanvasGraphicsClosure() { this._cachedGetSinglePixelWidth = null; } - function putBinaryImageData(ctx, imgData) { + function putBinaryImageData(ctx, imgData, transferMaps = null) { if (typeof ImageData !== "undefined" && imgData instanceof ImageData) { ctx.putImageData(imgData, 0, 0); return; @@ -514,6 +515,24 @@ var CanvasGraphics = (function CanvasGraphicsClosure() { var dest = chunkImgData.data; var i, j, thisChunkHeight, elemsInThisChunk; + let transferMapRed, transferMapGreen, transferMapBlue, transferMapGray; + if (transferMaps) { + switch (transferMaps.length) { + case 1: + transferMapRed = transferMaps[0]; + transferMapGreen = transferMaps[0]; + transferMapBlue = transferMaps[0]; + transferMapGray = transferMaps[0]; + break; + case 4: + transferMapRed = transferMaps[0]; + transferMapGreen = transferMaps[1]; + transferMapBlue = transferMaps[2]; + transferMapGray = transferMaps[3]; + break; + } + } + // There are multiple forms in which the pixel data can be passed, and // imgData.kind tells us which one this is. if (imgData.kind === ImageKind.GRAYSCALE_1BPP) { @@ -524,13 +543,20 @@ var CanvasGraphics = (function CanvasGraphicsClosure() { var fullSrcDiff = (width + 7) >> 3; var white = 0xffffffff; var black = IsLittleEndianCached.value ? 0xff000000 : 0x000000ff; + + if (transferMapGray) { + if (transferMapGray[0] === 0xff && transferMapGray[0xff] === 0) { + [white, black] = [black, white]; + } + } + for (i = 0; i < totalChunks; i++) { thisChunkHeight = i < fullChunks ? FULL_CHUNK_HEIGHT : partialChunkHeight; destPos = 0; for (j = 0; j < thisChunkHeight; j++) { var srcDiff = srcLength - srcPos; - var k = 0; + let k = 0; var kEnd = srcDiff > fullSrcDiff ? width : srcDiff * 8 - 7; var kEndUnrolled = kEnd & ~7; var mask = 0; @@ -565,6 +591,11 @@ var CanvasGraphics = (function CanvasGraphicsClosure() { } } else if (imgData.kind === ImageKind.RGBA_32BPP) { // RGBA, 32-bits per pixel. + const hasTransferMaps = !!( + transferMapRed || + transferMapGreen || + transferMapBlue + ); j = 0; elemsInThisChunk = width * FULL_CHUNK_HEIGHT * 4; @@ -572,16 +603,51 @@ var CanvasGraphics = (function CanvasGraphicsClosure() { dest.set(src.subarray(srcPos, srcPos + elemsInThisChunk)); srcPos += elemsInThisChunk; + if (hasTransferMaps) { + for (let k = 0; k < elemsInThisChunk; k += 4) { + if (transferMapRed) { + dest[k + 0] = transferMapRed[dest[k + 0]]; + } + if (transferMapGreen) { + dest[k + 1] = transferMapGreen[dest[k + 1]]; + } + if (transferMapBlue) { + dest[k + 2] = transferMapBlue[dest[k + 2]]; + } + } + } + ctx.putImageData(chunkImgData, 0, j); j += FULL_CHUNK_HEIGHT; } if (i < totalChunks) { elemsInThisChunk = width * partialChunkHeight * 4; dest.set(src.subarray(srcPos, srcPos + elemsInThisChunk)); + + if (hasTransferMaps) { + for (let k = 0; k < elemsInThisChunk; k += 4) { + if (transferMapRed) { + dest[k + 0] = transferMapRed[dest[k + 0]]; + } + if (transferMapGreen) { + dest[k + 1] = transferMapGreen[dest[k + 1]]; + } + if (transferMapBlue) { + dest[k + 2] = transferMapBlue[dest[k + 2]]; + } + } + } + ctx.putImageData(chunkImgData, 0, j); } } else if (imgData.kind === ImageKind.RGB_24BPP) { // RGB, 24-bits per pixel. + const hasTransferMaps = !!( + transferMapRed || + transferMapGreen || + transferMapBlue + ); + thisChunkHeight = FULL_CHUNK_HEIGHT; elemsInThisChunk = width * thisChunkHeight; for (i = 0; i < totalChunks; i++) { @@ -597,6 +663,21 @@ var CanvasGraphics = (function CanvasGraphicsClosure() { dest[destPos++] = src[srcPos++]; dest[destPos++] = 255; } + + if (hasTransferMaps) { + for (let k = 0; k < destPos; k += 4) { + if (transferMapRed) { + dest[k + 0] = transferMapRed[dest[k + 0]]; + } + if (transferMapGreen) { + dest[k + 1] = transferMapGreen[dest[k + 1]]; + } + if (transferMapBlue) { + dest[k + 2] = transferMapBlue[dest[k + 2]]; + } + } + } + ctx.putImageData(chunkImgData, 0, i * FULL_CHUNK_HEIGHT); } } else { @@ -1040,6 +1121,8 @@ var CanvasGraphics = (function CanvasGraphicsClosure() { } this.tempSMask = null; break; + case "TR": + this.current.transferMaps = value; } } }, @@ -2362,7 +2445,7 @@ var CanvasGraphics = (function CanvasGraphicsClosure() { } else { tmpCanvas = this.cachedCanvases.getCanvas("inlineImage", width, height); var tmpCtx = tmpCanvas.context; - putBinaryImageData(tmpCtx, imgData); + putBinaryImageData(tmpCtx, imgData, this.current.transferMaps); imgToPaint = tmpCanvas.canvas; } @@ -2447,7 +2530,7 @@ var CanvasGraphics = (function CanvasGraphicsClosure() { var tmpCanvas = this.cachedCanvases.getCanvas("inlineImage", w, h); var tmpCtx = tmpCanvas.context; - putBinaryImageData(tmpCtx, imgData); + putBinaryImageData(tmpCtx, imgData, this.current.transferMaps); for (var i = 0, ii = map.length; i < ii; i++) { var entry = map[i]; diff --git a/test/pdfs/.gitignore b/test/pdfs/.gitignore index 377367262..3da0e6cab 100644 --- a/test/pdfs/.gitignore +++ b/test/pdfs/.gitignore @@ -45,6 +45,7 @@ !issue7492.pdf !issue7544.pdf !issue7507.pdf +!issue6931_reduced.pdf !issue7580.pdf !issue7598.pdf !issue7665.pdf diff --git a/test/pdfs/issue6931_reduced.pdf b/test/pdfs/issue6931_reduced.pdf new file mode 100644 index 0000000000000000000000000000000000000000..9304e3e0e039301f2d8a5a1df66780b1506a97e2 GIT binary patch literal 56202 zcmeFYWmuKnx;Bi8s7M$fAgv(M-6h>MX(lO5x}+NsX=wpzY3c6nn1pn9cXz!5pJ%PT z)?WMj^Bu?g{@VOu#y#)2#u(RiUgvoZQdvP^YI+)0RAkbm;?_}AWO^bxB8!j4sK{Jg zv7+IJL>e#^E3vw{f(X-Go&@s?6(}S1fw12*~uzC;f z)yUS2oL1J#LeEwg_RkOg^|W_a`j6WIH*W<4xAWKC(@MegjCA-d9H8J>IwBT&1|n8= z1`S$>g$=kq5gjcAW^G|>r3m)o(9*ECO(D1q!>2mi0Zk_Q)E3f6Zl)TwA*{mk- zOdf3_k1XcUjja`hf6lv&OHq!L$G$b_5bk-$YQ(Ri0k)p{2@driY`LJnP z`&&+Y(zldenQA`|llTtzqf9hG8zs*poZ6VunKGN2tVrDVJ#^Sp*w0z6?4#`7Y=gE| zC!9V>#Lz;}!kyKuqrKv|%Dg%}%YXV9+2Lu)6FiJFN<(s$cNMC8o*@acdB0yLu{Lou zu{UjgoejYD|L$vwbxvwbHbLdY|4oKU&@^&P;FHuo|GvhH?iV~S21y9SH$;_02|{0d z_YYTldn_>_@8o^-6z6HQbTqVxqv*IOYDr<4V!5}I60Y2ps4Of0OR*yBSN2%CgH|WR z$bY~YM!O87=%#o=aj5`P$X2w-RL$&Bx=bO+cKaY8mLj#7mY%qxPyHm9BR6A$X98-Y zXQO62vnjkmFfuq8o7R`Em2>;MVOBdoDQF(=EkTM}%4wTlTa?t4lwI^jEDe1)(DFm1r!|MIJ)8ZSHO$@Pk?J;|NrSTdpj}N~_j-|=w0n5>tRDp4 z4}R48&=qy(iQJQM+}E!zh;umAsjp-OU0M=5ROMdDji$hLNj}=O3Af((#S-q~-Et+7 z^}pX2hPW1~9aMflQ1BX(H%ePaUN>N%U>s)1*JC!oh4FSp$8CmPQd;hsCD60Mx3aa`o&D5aLGwtZNId8~@cflBzAl~s{xvW%`g z&NzPT)p*{}O_i>Rfk2dfxx;CALSXH&tJ}5J_3pc^L^d7BfZiZ^ocxaTG*hmw(-g{J zbPZ!-&jhdYO58%_&0)z(ai4q9++LGcz-ufrnonw3HQ&s};mZa}rt0iwiai^t%n2r_ zqhh%Rnzwe%fq^0{W@B9T5~CwsW;m10_6}PmQ)#tO^WZtnk=pu`+S%K!hG|b_w0Lfp ztqzZr>L4@Dy7iW-a1-fVj@pCnu42l*T#ovcri*}B8nfz}%dW=k_Wby2x9zst*ggx_ zn(I}XOYZqgWb`9~39bW2ylawGqwV6G)c{RXXUC1<>rt)QgBp1^i)-Q~-Ii}(?C;n7MmE;6Fe`Z-GfPt#5gV<%krVieftf|)pOuD*?%%4)+3o4>tQIeii^K84 zc(c!L-ObtcLVtL!pIB{uJ-6fWYF{vGuz`fD+wtmYh5>rL%jL!DVz{-C7pnzUoV!v6 zA(d;kTWh0daNP#?t>N0$`XF(%s=+D~ms@C!)nud=cb}VA&H2er{NO=`Yoc;x%@YQW z#DeqPV$PsPuMIY8bg-Ea5WeRqGyRXl`6qV&Z{otp`X6yggs!Idb@&~_v^OTKc2wh% zd&*Lm>M|bXTJgH^Ky$f7TvSgoRwb@gSn$WL4APg+7m}g&$h2G*zn?}{Ocxyd);Z6u z>f?RQ=6YkJVti6r8E8yTo?T{9JHG15nYtlspRwp~a1B@H97V*@6rH*l-wbMQOjn&K zMe#&JK(HF(H~OE0@~=Sc|L$aAWclww>DwKwhEvvTes+XUZ)e()*>2zt2cda%3RVxDAp(L6El=D3 z9FzY*ng6wZWn`s@=>Kiy{u`77P!J@F|DF&2eDsf*CvW@F<_>xPL7V>yGynP>t+J8c z9f)J0W1|&?85tPb5HT~c(Ehy`1uV=gEzIx0F5CYA@o4`-dH@ca{RM6T64te`umTA6 z?n1U^=GK3m_z$?XCSn9A^>5I~Ovl0mp6eee&>?PX`rI0CIsR;4OgIB(q}Ms{cvHKO zWEPF*BeBSscWGejM94z{Qes8KEK%dzgy}3(Orc@#Y0?mvm)iF%8oZIUzXdiTeF?On zs~b6Z11)>Anc%{kO=eVn8N*{xC9*q;p4E>x-N!X8b9(5q!d`bcz3ayM5aG`sNss+w z(|dnj68Zh}Rp|e|BKqGLApCC(5dJp?AUFK~n+H9wX3u-=Zw{jBF*q@OvGNVP4lmi; z|D>9S!rD&>k})H9OD@@Tf>h`U(OCP|67AW3;+foi|3U8ASWI9E-Pd!Ec~msQ@~g-9 zg0QU|W!b*mefznExPW=n0onTO%vZqW>rb(@gO%d?_j)sLTays)4rsaOkqfZ)Gk*Bv zsA*@sGIIAPUSE4%ExXRKjgs=d@6h3()t-bcr$4s+llYK>8%9h;xZbS0*w=&=CBm1v zwwv}E1|KWkoeP0qMB8MfUxaXA{m9-tW9BD8s;SepVSh+bQIVgYUssp-ap>k~{^WK* zh)CmFF-Lgk6|8M+><3pqva_OM1Xtt(gVE#-^qU zqwm?3(=gO4t->p#~x4VamkJ5Q`D)nTyZo>XeGgM9O=G6Um zv?o&Fd#7F(9G+9HLk24Pz6NW$p~=_@YZwBSI}OTdBcCetrdG z!MsZB1COM}ef_%1?b-=t@xI+Y8=OsAUOxPaa#jdx-$zrUD9#sBbNz!Mx*I%|u5Jp9 zQ=Jf7T=jU*KPH2H&Z<(~z+kmMMP!>t#i<=@pHKTK0zyNtKPF`m9y?@90m0+hm_Mhr ze0_E{WfVLxDCl)0GnLZkW=fwqA!lc2Rn=&h{HItn6^`ykbncB46BC`Coh=bkt21_4 z4@T$aw86thGaBGs5Z|AFQ*Z|%zSG@@iiLIR35$sARxF~GA|?o+M^)qstQx7MrKhJ? zRaIpx=WEtD$ldlPy9c~qt5;A~9tH7=q*6@|zQmrv$$svFwx}0>8_(;0bBuGLyto%A z8}=9cApO>$#Gt3|a=Bg3!-Jcsnyv0V&vdxjM+p9~v3+@rT2tSNbK39333M=&@e$@f z8LW4Y#M8pS_sB)8yxgf?)?Qau%FWM@GC(8bQEySWhaih#GMX0=J2yA?^W@vqD|lBI z&&`=`e(c8j`gt!(?#}eUfYrg0*max7(i<@3U^++9YOzp#X3NHQIvo@HxF({hR-o;{ zRIDhP-S8yf342{cM8wMYvPZ$QF>(Kum6e#7*Ode}eYaP^7umHoU?~{S5Lba)A(gwbHEKO;*4tdq|_CQFRM)nsR+q0q^hTIXrgtc(m1HOPYp z54;HjnOe$Z?>{ze^{pdK?9o4NrZ=3-&|jIUvRNNkTGH#sLPX&wtt%@lOG@%UDs!9m zwA~!(^yIzS4e7ZB;7#@fLX1#CiBLasHsD=dr!eS=$QE+@N2fE$#R8(gB9rfcea}yAxME4uV z0+Q9ni2z>=kKD0NJq8epb(@&=5>y3q(VLE0coZ#eLa>2mbcQl5B_$;-ZIo4e(P#fx z@mp(aA;LvdNn~VX85tS!`#eRW&+bF@8=GH2%S=Nze=KFNKTgYMs=ne@wH*yZ@6r|U zg4Rn_ir1XZINy^Gy1UwBnc1Y@OR}o!>eH=p`K=O!g5R^V?pJ5~k&%%P9-#>qUOysq zkuA%=t_CsEZ4Zjpg_xTcadUG!n(!3CDlWf7&T|p^0 zeTqmhM-8#V7=L2+%IEJ{F4cY8&O4PNSv3={Q0_5oH-c5J>3)6unOwxbLFt>=VSY`G zI&x49vd@EiErG8F!qjS~V&71tPL^BT9>8f2>vHSrZU$v|ZQW#Mp4PpPdng9ad!sp6 zk=OeI+~%9`PDx2g!|ksMaY~F-Z+zBd(+vG<*)d^6I83bubsC z5zF}XM;p6}q;Ad@gW;Hh(2Hj`zus+vNWx&Sdkll@HOaN0P+V-6&!!Kq{~DBUD(N;g zHhxV=IGT@*P$8lXrxNXfKr=cUzdU?;vOT%#7JGetEg&Fp(T}X3xy8B+0stU;YgjtQMQ^G_DkL-#+Q1oLCNX4>9NlSB} z5ZmxB)q`Xib2X7Kvhq~g#Kc5J;*GeSt-bvuX*Jy_Q(kuQOOM>gIBIj`(=PM)`1q08 zi;b+*xWmXtE2{!i0n;dk8x{bCsH&>2RSO%ZYbC@eN?l6`Vw*o3V>ndKW*qt^U)5E3 zLexQm-_z3r033NXN4ZNpz&h@+UN|1PXTMqR_ZaXzy8piF21mY_DJUN8QarA`2$cHM6; ztL=Bo@Ulf;a${_7Z-YWN!XYWdbg%wA1ms;%j(Osxt?>jhV3}7D{Ha<~h?c_I@NTW# zUPm_X1>0xI9;xbCq!+bAqoaM%jAR`wI>OqNJVz4r?XQ;$`-IR3H!@fyD zNtq^=E_@Ky*%8nX86B(^uM_K?sWPnV?)gm40i-p7V{`2elxI+(t-=UFD=BD+VJO%8 z1?IrN!o%do&=?D*gJ!=Ra4}m|LlO4p8a=c4mVf)aPmA@*)_y``c0pdA{MaZ>f8<`rvK3y@Z}y|&@J9ge)I01i z3=JuSLVQ|?z%(vZDtEm+0YE0Y+R$hzy0DP`dSk+u5iBE}gkW!C#t%8qNcTz5!rQGi z;^RSH;pd1qH!-meGB)xBKqAD#$~ODgFWF)SuY}qQTZDsj#GT6Sw(6a#&9(lNhob0V zcY(`L(~yyoc^4ik@oU*?v8xCMx7(grCd++~1TMoDi{s0VoJsbnBabcho|g!iRx2YF zJXwlowLX`s)j0c$gzfv>ixr3E&I^8Iny$yg+G0=1NX>b|?4Ks#b%{Q51CT@d*g4q7 zUK9_M_#KfdtTo{xFo=*!c_WB*!AR((U5g(Uh z664#c<^1;C%1cgOxH#VAV|mlLv$a*@u%GO9uO->qw;g1JT#&ANSZBX`#>RAh6$*F- z7O7@XdR2SJb3A-}MXgm4-i!Xdy@DF{*q)8aTb?&R9^jUhJuH<@w$7q^`h1MR zS}S{SI0 z{VJd38{N23KW0U}15w0-YC`}UdwP1>nGgwAnH<(fN<11F9@eO~%LM?>*mz^1HNaab zv?oSg53}I=_L6CCn_>AfLZ~LT%H9zs);VU20@)~P|k$uUkzA^ z!Af6ZerwrdQ@&s@jBvGS0d(%veEAq%C@za>1$fk0i@J5%`1h}zOj{qJ(h;q^PfcJ$ z5u#GT3lU)91Qq28oMgq4C)kkaA0zsyQ7sl-ENdyja9*hRPD5$7lpl0Sh z(Qpg7F1%0SqxGu^&NrL&Hzt=S+xhi3RdBrw$!NULTxhx5K_{7AiWI%c-AKu2Pu4gV zf1d&?y!y$a5CC7RiS9eRN&6$Sv$y;0gtQt}M=gFYCzwhuaE<`5SkkA!ngO{TWCu(h zFRP!+&pLDlGGqs*r>PAtLC;lpd%cUR|6#IF*XOVZ_xbSU<;BGkkJa`>>GkDlHmn#W zBa+MUY;XQ}b5sHo)*Hu8?-wo3BN34faN^PW;6*8)OgsmvSgp(XL8Ip*R|_t0R62Ia zbsM$bILE`4&SUwygNBCB)3Iq7qGdxvLn!Fz5~PfxN@wpLiAw(fr3ij*J=bt=+i`oV zOTQQ*0`Wv)i2lYkI5R`Dsw3y0D}1184EH|Bu5aoXJwFQ&U#q$xdZA~6MR zaZxn@!JTfPsHAXg$Ap*bG<)-c(tQd#955;iKBKGHZr)}*{i4BjbH_J?sr#3b=EvxT-V1NZJ z2UwP~Z?Pt9Az9Vb#!zja67A~vvXv*LgnNNK^2J7 zbRvggju*yb1z&5~D~i7w`n`kr1J6XPd|GxN@VP@RUAo}So#qz3m% zRI|MtW2Q!x4LMqpUJIfJH6v>&N9KFLi9p+m6%?tC_~(-H0Z<)n9?2DXIe$oO$tt(h0C`Gx zGczM0jDd}tJNLf8h0CDwS`S$)UJhu`LBB)W(z5jzRldtKW&s4Y^Y zkcVlP?S;)CpLmug5fu~|C>B^!Tx{*&z?M@gh#X1air3<@!io2;nsxJ5(GNvaba}#d zspEO&;f8w~oq^EIP+3Vy2aH;jn0Yqm@W6&U^t5BtrZ-PeT^UeQ+*ZeQ-<=LKKi&ur zOoZu)Zom1i_x-LEZ?3J;DWnJRANPe#?txWuzn215?n?bF%xaWWBrnw}SkASAid9k6 zy}yTacS?d1GuE-RB&T=TYI%8?A_3+Wyt{SG`m3O{)E2ahR*xXA6<_6cfj;s4&h@rj^5YZ3kkN{8_(aH7rG5DruX5h2VZMm_u`V?(`@U& zn-;pIAM?;nT70xl_~cpW%Sn0c)&eYRj-FSvnp-J!c`Ahq3C=sAEtAZjG~P8_ZLIXf zE(->h5UE$$bh0Bwm9tf(;%|aw46*^GXwl{6B|6|tKvftkYTkXcvf50I7E^7oHC;Wb zGaAW%j-R}?E@w~Z-lz_*jXkGK&5YKPO5I3Kc24LuUS$OY96Ach+0!ZPBDlw)*bb3} zUF%7e@lV=gM_O4sCuiq0cC9IbbiWS(Ie`A1*ZIV>-#I{ZvaYgHm6xIiX4!acD!((U z{rClpA-ca`&WKC!x%r{sz~ID0)<*$HU5?@5VWHjZ;h`atQkhB&@fhxS-Fq30MVlqC zF<*t9&CSgK%;Dh-Gf;qU_X%(1zUvWrKQ@hC&RsUKZp$#GNC)tI{v<_gd{q8WIE9K` z?+a{!&}EOW(pJs8q&w3pFU)(mSU^U|H`U5incV(Y4sKhjXsZk||2-$ukRNdYrf*XG?IPjr zS?Q=|fKzbhWVHy+0FiyqCgU3^Vau?sN=B;i4K8$LU+&KYPHRb^PH0qEHaf!ZSXwQI zc`wC&PFgY@m8%W!GKS0_YRH} zjc+Myxu)6T7GiJ}lv=M!U*oYl4z54@{5t`VVz526NP%^gTBl<;ZGBvkzcIVzpf23x z4YTqC%Otyg;^)btBqP>nuiPWx4vqH3H@kkS?@9G~WmQ&d8F z3ksS#RPkHeUateB6W;y%bcSN@a|vl29lhx&BhA&E-T@IHP)sNw=6?X9Uhu8R)1q(aUIS()Brj`Fb%Q3 z8lPo2%j)k~fh4+m#^ZAO{<;THZz2oLofQ9j0iJfHr{(sKZou@Dlv$g0M|tv;@&ZrX z6khW@Kb{gl54X=Etw4@0 zyodn)ypSJNuD{6jK{tcci@#M55R0;c0^7Gw&>}rCLHSjToc2gAl>+U?I@e2ucDz$X z%iQ}hMKM7WdkG+QgDNyBAJapHdx&-^HLZzRX40^F-NknwO0nA0X<2N-+WuzF62)hL zo{Ni$)zx}%g2r)UcFoDO(sVCJrLbw4qm^b*pGR}&fk0&6QsDLSFkt(xFKjb|&kgBf z1H3Z=4J}UW7owF5e_M=5(Gstop3$I%r2$lbxe{xkZkPATaa!JD@6$bUbEh}2cd+)B z;?4yaWXo`u9D9sSdt_I8J z({N;!l$6exn3$QxhQ|vG%P(O!{v8ZX!_(8XfM(=&KKY@=T*KJ1n^p#}p54X}d9!{L zHB{+GWA_TNGteKbEKvoB7hFCtujrDnN|57I7)SfBK*w^oGSkBfU92mfe24?+vN#(g zL;uNA-M6p5{=y(CNSmTB7N0vhDmna&MaZp+(kFWVOAZ$)b!}1-F{a)pb0p`B&?%|I z8GCJsM15MjdJG2@wY3_(&894rKG59TMSVR zoQHp*!fJbuL`)HiR90h$5q7e7c2=Qa))&u7Rz3k5{p|Y8=(=A6(mZxsKQubTUKViQ zcDxOCIT<%FuWK5~g{Hl`2E0zLR=uW#F`$xwz8H511PD7_iS08qQ=I$H>0n+;_+nc!~DJnIq9*agj#3^2{0>kkz23M1o zNJu7l+LAZF{uMSsc7O_nN`{a%@vt3nxhc7l6?Mdd5u5vxCXwSCGh|y#+e6BrOa2Yr z30j$c8rH%IFd0y%XSVAqrfyQ_$wj2HwME6E0=fZ~C-Z@poqXs$0kn3%$bmSnNA8Ez zLXuP4%Aac{`f|H+J%mR<{3Wfe-1&Vio@WU0>oj%(=*edW~mdL;~(!t<9ZY0+4;hIm;5lo%lUT8#t}v zzD{0Sg|JiRw0V*!@=Ws;eDm=?62qr!s>{e&Gebi*o3)UrueZY~!8}>EL4$6o%)7~@ zrHZd@d$-Srx>J=Qv*8>5@Y>6#rba1wcvb3Rt*$OESAdKyoAixs?O)yp0>;&`Hyp|l z7hSJ5LjdiK8zn`lqf(x!H8I;A>elWC8Uk4qyi;Sq^)a+afhW!FvE(=g;&{=nQ26i~ zq7Q4u?rU;`sHunD@dpYq+vd;yra~?eDI*JQt!WDYfy$$n5%qE=rnm@(6>>YVkBzJw3so@4<&G=Iiv2PiHXnb`Lb96SyjY)XBa8AYB4- zW{F80G)U*TgT)}~#!xt3!_Me8*}JOEEJqTzE{w=9$Q>0{KH~&8e+$`|1lpGC>Gb#E zWrb{X#H|;aKsG$jh-tTK{r>s`acoynby*pU(J$yu30*kk;Zo7tuw{fk(MLsq+!vq@ zQvs_-I^$`y&ww|(<=p3K9cJI{{T^q%>Z+YZ>u5xjY)c^Rx-;;|)cb)i4j1N0H6WOGh2J z9?YBT>vC9T)q}(Bj~lhF7O?DeDn2t-tQ&FDP|MShg(*m@pDc7%|4JTR&>m-3zEsXT z3FC5)w+4xFWPJP_u5~jon6VH^;F*jCsidb?EfS z&_Go@V-Qf=5GaKt7yrqd(NN%75auwXvAx8K%9;VG(At)+avmH0eKTW;79~^b=3=y7 z+K}K4(OvY_;$wuTcdjA0;S{C8!kJ_bp_u(2Cccj5X&iD(FGU+9$a%(6mGAC;4{s*M z*`Y&8N=qXR?>sZ{_*JLf>$s3IlUVNVKT6=<%O^mHTOyf3N}XzZxFWUsQxOoIK#d4V z*ZwrwOEU!2FsX1I{&`9!({lKlaBye1lJhh~BMS`m*jbL4VX}(leH0 z=*cvig}HfNW@aJEuD4Ze0VSHT){VcwjJXsI=P<`9qH3*^?GW!y8yB~Jnuh4{6(+=! zO;1^FV9xSojjn!Y%x{Y?5IdgprI-1WR62-dT!S%P4^^JX%~C1LBM4VjkA=B}IJp4% zh`dyEI4aC!(-ixS!TC05FbSSfCRwr4*Ujr771x6?o?vAn=xs3Xp>#FbGrwdalAaz2rz)>tiGcbe=-q6 ztyuU$fkqxHwy@NgEEM2&oUP?Jy`>w>ZMXKD*hh;GX?>}>g{-;OAuTjF>_b^dsBrdbZ@BnGhDUUe-5}^_I~qS z@gB5r1SI0^?(KEGWqI(~+X7g6{;+D95c5Dser9I>$nyXNj|Wge|3 zynH~wL?~Q`d2(Wx8@dv9hzC6=Z$MpVW4hn` zu@~xExkvx@n_Gz5THqdF2;sSn2Lo7^;(V)`aeV#)78dz#l}zpr;!!+EJev}&K1l=v zRur-t;QoG)1*{3=L~l`vYy0|3jcUj0FSoxH#UGnG{*^&uCgBb&(#R z#X?e^ANPGNwVMR!s>HUoCu)SKb$;H5@Ma-^7E;xeHX8t6&}Maxuh+#;pBm6r689RC zO^2k*Go6hB{Rfi=HIkK2>OCtToMFM@t8V6-f@OcVny@P%{l_OHj68bVWJYWPl~2Me zg(O_C=4g<3!P+AGEFA<)GdtHy$4D3FFxWfuHETEaoHcxxl*oF3pRDgdKz0J~8%CuZ zKEFJ;BKZs5Z*SHHj6#kYA}hCZ37oU~Ir`oY4Gg^Kdfx9=f^Kr);B!1(Jig`e;L%n3 z(QWzz#;b!Qnc`rS&T5J`9=Sv)wOFWLO`D_rTD3i^8$kSVp<>UXw^2f+|6$$y(eRQHXcTv)*pn&%hNrH+sfFwQV7H@-&3tIxQtXJb#H7Bn^Ch5HO=Fd&!q^dP z{uaLdOn!oS!hC(3gPJnt`lYGsa0*az3X<$Nf=wo)mYNw4Z+*`xJGWzPF3l&J;7Wp zB)8fVt31b^3u@*JpwXEPFdNER6Mi)y*HClQ`H@zSsO7W+R z!S&CLZ1C2(k{0J})n?fi(RF9qjl|PY++Lj%(sAv(>PJ3rXD4{x#vV)Yu} z*GCnUKy#$DulD!%Z$i;|%J2T+N%~l5T&P5`S~&3lzM_&63kyr{isPm}E+}UgYSV9n zxemq+64`4UfkOZ!v!~RbPQq}?RnJQouiG{X2 zvpS%EF&O6Pkj_)CA^js4ush`N{Fhy_g2kURA`d040k;9c%gWC7)I!}F3sh2?!g#cb z-~_ytF)Hux*+kt96@)r9vYh%pl*ce_hCxDr{1^z3c8lq?Gl&w{pk%+<&Pxlu|5HiR z=K*HeZ|?&3`rMEwj9Vo|MOFa%*Pr)T=+ATQ^Kb!U#3OWqA%67d%RfepB%1liLCxzv zDy^!qpixODpK=jBJ^}4jB zdH}8C+{D4|MQpa&0uQiHiw2mY3DW5ze1fil?44FnUoZw#%y_+xWYcEMd2TEvY8^?6 zb^{deC@U!e0Z%u@()T4LB`&}#61tO&h#e`;B*|_5gD2CskUF9Us8P>`t6N1WrZ{vmW60=|(B#SdCQ4lC6LAVyp`##fFP5eZ5h zH>AJ~0!jj(*eeJpFqDkP*L_8rjc1veJ!o1uey7s(*mOAwJ#@-`)|JrpNDiY%J6G|x z<)sYQ>6A57ajn&lgiK$Zr)F~S8`5467R#n*dOW*rcEFokL|Z8Ls^nTK98_Akj`x z+V%5>bJa@4s~c5M%2fU`P4P>nj#HtVavu-LlgT77t=8zcCCfHFBi8Q))(~LbrCxm~ z;ia$;_W-JC&!-JX?M&y?M0W=Z@k`-UGvBx(`llDf{gDMRnS!qV+Jql-|B-Rf)Oy?*61bmfYK04b##`gr}No?g;8Uluo$rp6Z`k+Hwa&6_u zKJymj^#S^Z22rq7+V7wVsuY_HxExcRNs}uzOV>{)2%jRr$B$<;2pTF8*jm7v{PS!V zlnK3wAnQde*Fxb-^Yc1BoYfM++$Up60zO-s@ubX9*1P%ZMVytDl`2iBA^OEb?gl%3 z5K>6Zo?ZG@@$3V{*|}Q%V@ZO&H^wUl(kID@x)ShTpu?+l6p6Bc{8FUl4U#ar8(`IJ z`Qq@29ybbMVd18jnyCRWw(Mjoc|Mn?yQkr7yO-jQfG+q|>T@Y^0PKDsz2Uz`(u@TO zn2MQ&1(@hYto+NLou6^k*4Ey+I-{pO`v_+T2jv0j;+XrCfm-_BLd}ZC8O^7^JVxGR zJ%?X#5~4Wl1o6{BN|bUzUI!j6&}o{SXT{#%T;WD6tC;|Taml;x(U51&5fE%{&GBqOk*MOjR1NN z*f;DzoB0S0?>Fzdm0=R859{R_M{fW^o_gg0P&y8)r1tlk(cSl3u_o%hnG6`B`*<$9 z+x3qPqMCydlMcDhMnh`t_TL^pQuN7;iHWhS-fyGk7RN(25)x`%hDXKsk)9UjT0YI> z>o3l3FtV)3KqS9h39uB$ni{P)_D5k)1DG?utZ=lo2e2L0Ogtgw=9{H}^0e zMQTg}4iwmllPff{YnQAle~q#W_5Wd6huO=C<)7cuvB4ied*xNzSqfn6_motq&uh#I zfX7t(H7;&-b@d}8q^%j*sU+XbXb)u|TMd%6g`@(>9FUal31#O)@-pjD@=O+Gxw$=g zTHhE~&*zXE+P(Ozw=UU60H=^uH=oz>s{APRqmtST|>rjGKc3XOps7~Fv1%9f(~rp zLw&wR9g{@SInwruJ%$=>Yro}+F0W|4Jaunn$(J! zz1RKBh)b8$kq%!Ofb=1jsa2rOr}ITM^6z_pg(3wT&O>7rO)`@*Zv$Q!updF^b^5bR z({BA@FxidC39S_?SVx@;Ru6mu28q7KD@E76=o#Ve>GlGoMMbwe5IvzVqC zhM^gIryVFRfUO^Z=>;1i;BF8(mv~?U-aFf0^j27(C5qq{ONbpC0YO>;rXRwuhBKxn zCY#`hxwrA;?eENWkVq1^90#;ACK3_|$UDsSA@grJaGt}(cA7R`jSdYR0oxGb`2COId7=e!^Xlu}4GlZ?Ul&%KcMhX`}PukeITd7lfUCD;St>hzdTYx_l4UdfoH4(^mn4inG%F^qkE2b%W zCd=iWJgBc_TfPXD9`$vH#pL25mYM4k%%+z9O2O_(@7Zl`a_pyX5lrrwx8a~3{r)De zStaXexykC)xop*Rr&gvP0k;#AtlD#30CeI^Yyrrxx7&^pD3uI6Msp3)ybs+FEH!-s z(zWC?g&fvrx=DDqh#; z?zgDL<2gf8)U(ksnH6U<0bD=80+Baa4jPABJXiA<6n`rqx&WM4-zVKMJ|R~xkNNr`>Wmhe?@U#O z&1V)ApJwo0uY<6)?^AqByuDhbt=Z#$AIp%4go=uawi!y?|3~~E7TYx3Uuf-pYnUo- zc5}_;3+DR(*;q}1y{WTlXF6!FwkVFGXf%+y5ney@pk8g2xr?aT<`R)J#c6o&DPhz#WOGc~FkZE4>V&M+X`IcN+o)rYhU${v<&?T~N8ss9b-rttBeja9Wy;beeqPqA#B zdkJ%#km*t?tv6+uAuyyE&e?}?MiSJ&GH&-n9$;lkzGGx(H|kxQV@&US!2TV;KNPYg zUmO6M%#Cejc+OMRXYt;ZM*sNnxX|Q-e?w#sSL4Pf@Ti$m<2_DqN4M{)q&xrH585W1 zBe`hT3BbgS7fIAjnVjVN+N}5TGs^5l`+$FB30poaj&vQL5=cWszkh4L?~ja^1a7`- zu!kT@(g|5h6u4b`n@V?{1vb^I)`s0f6aFw-S)#9USJ-IkGmGii&tuE-fMCIL2Xnar`8ob7qrr5b z@Z%&5xtD(Sq+Bn=G=FWkHKvpBOPNzMO>QInOT&m63V!+!Tg!X9p|P=F`lW)zFb15= zLY$z?`Ja;yUmf?cf}M9#Hcn0xS1;ZGfdOnuc{|}?Vv;@GT_nl`#)ihk7Hm=bcBtJ9 z+>gL_=PVI-mw43x!vMDY4KMnx91R0G7IQN43Sd8+NN>70Bfd6P@=!N?=J>Kpc9VlT z`QAQY{@k7{rxndQO7){m8?*ANb9nX09V|wx$~d**X=%WrT<+FuyoP3cbnwVRHVNFO4*??L_cnoV#uE7&4hQdrt1nb?cWF#+5#1qGEBL${K-o8qN1 z%SZN5cI2PHbJjCLSc8a@96g}}xR8>H?tNXIXC~*{Rkz!GjRhCu=+kQFvu$nMpFV#U_kt+{BsQ0r`NnB z@>)>??Ne@{C~!`6xq2)LI`$kiL@FisEHyAQF(Klq1i4Sn5{hfT;i=AJ{$+{)iauCrh!qmGmX6c`Nbb%5oZ&0wSL2!DI;;7vxNp zBE3$+n>`<*NwNY=r`KEQ)bcWskj!9qfaCgEVaq$_tf-N@)NoJWK?kt`o&9e$8f06d zrCwGhrlsGEaGI=ENy*kUG@mK5JgxdX_jhwhrS29pH8@OuzJy>RHfA7=LJL0%?X5qR zM=bk4Onr4+Ra>+*q8La>ODm}~NT-UDBGMAl4U*C&AT1)@V9?zmaX>)2>(G+YAl-cP z+$)wt$MY2YC9D zrLVf+hl)CziyAiiW-7Q-4m%79bJ`2nJk6TZJv5&T7QX|w4#t;BQtA#XtTJw*KVUOE z4Lc~DU287=Ol)_``NH?>5IK(evaD1SjyJ1CnAnB$GYfn3bC2a)iqC-T2711XqOl;Q z49i;D!O+$91WY_wD$E5yB$bqKZOr`6r7=(Yp*xm{8-#KqD1j5<^#`(1kem?IPD|*n z{YSzM8Q4$cRaYOwz;q{Bs&2XGj(v&vx+!rmtk05l`Lwo3T3T9Li${lthqA++6d!Mk z_If;{V2k^@V3Qa3-T6c*cbig$Mn*pG$0ca@^~m;;*SqR?Wb=kvN#Ux^%QOfzW3C@> zZ*z1neUr@`gl-i_PRo8z=2NmNIm3YhOT@07QfgAt&;|C|V|SBZsQsv~^5YyzGnK7s z@>)WUJTj}WF8{yYB^s%D(=vOpZvCVcyb;IMe^Pein0m2G}y8P1G=lBHxMo+H}BA6r3dI#JF==;s4c?HZOB(on<7Tb$XPTzI?AX<74YPN z9uHwtH^uqf-cmKP!fNUSxVjS=W4fD`D-&ng2+BO?82$c<2_X&+U1vo_O>OOqX}2wx zDUB<4ufHT~wm(X@)QR`~? z>1XWg>@a8+M*w*cv>4M@s(9T==x)((bBUF`wqPgl_9xG$H~sDRoljOWbzE1{AMmm{ z81Zwg8dDG(J*hjC-C(Z{HJ>&z>TqLLn{tGFRuk!+`Aj zQ(a~wv2vG5bWP|102#=rCu@Lq|I;jgb5sHUgQck00dCEI!K8*ex+Y$F=IbdY)|Mho zBkxM;CT@U;8w>4`IM#u~|FAwK_eko2u6|GLd&{!6(_LxCq%2ag>E0cbO~U&4HK)jD}zk$0CG zN}v<8?Dd1$oLKBUy9ok_qZamq^)Z7(^E?UKU#vw&%gJ~S`YA3;qyaCz6dz(%J$}+C zW4m2G`>hm)@6{_v%8}PZ0q^%Zml6=xv*OP1OB($4wt!8etf&SZ-OTx>(~}BozJOT# zv$eR=-0eq&L`R>4QqL9`p)KbS&i44L$n?+R@<~V#oV*|_DF>PfK$-lBNuW*36Y$jJ z<$)oyPeSpoRHC7-?t5P%K67sU<;7)CS9r|&k?>EZe}KvxhVq?+bqJnsi;FK-)zk<{ zAwfZ7YH10Mj^a0=T3qhH5ns{d$-c>zSzTS7k@0I&rJXuky(P^{4jvPRHsiG2qMTeq zP%ii{=&dP#IJ%w-F5S%Ylx}{(KoA+(@t7GWW_Cr3jilFX%Y%dcdh7tU)j6;Sva})? zn->Pv7w;X}{TiPH&BwYR33#Ipaj882(1B1uT>2n>AbGbqU?Zi>~`4 zn$~{xI?H&-6Xs!IRWI1^p@1&ee7?Txb@9h5{A%KDXbenS!|^+;GB)oRAC^~rqobq!{kFdwyzdD4n%?LvDa7i2==)>w4JVw0sDHbZfR)ds9gailHwf+V4EW!n(qLy#^hHz{!_~XCH)O=7^EO zuA-DztEphmY?xFRUz-@{@1HeLJgBd)hfIcc7=)>IxJ|GA$t_to&?nti1hpy3I$}9f z<5c(qBTHKu)L^j)SiGjFoft1Uay*XT{%2GiVZgnlQ!^Y~+?x1iUc8lChnT6O@VE>~ za|ePO+S&q7Ma;tsfm{H$=$}4&rgfOGA&Hl|*tZ>2Ch}BQv43hLU+uYRc^*AN@T{jA z1f&U4B}O6o_Y11BW!C|-eHlII$CYilbM++l-HY7}=r`AjknJ=>ZE*|)vb!98`< zk|?M)&)44|wI>=oG-W{743?>WGa)XrRjAE|O`bi=f2mb?)JD;%t$Sj9|8VS`V4d}h zXrU&K8rD@!oc?%VCV<2iYo1z(Eh<|uxWaCq#hnM#(nO}Uz18Ol+d#jE0BY=Xj;0Um zolf>vih585MDQK8(pCKVR}}7G5NQQ0y5XPRiHL~zTTjI|b4@DT{wjaS;HS(sgfpmo zoYmgOo38L(C!VhPsrhf=fLKJIO9S^ak2fl1@z=T@ea^YTS$!)8vH>LQB*VVRfkomz ztBttfhu6}1%eZwEWYyVVE?%B#_!~?f8=~O~9iPg!BLMVC4`7Uove6?bKcj+3yVv9@?J3b_|!iq=-et+124zALS_gkR$R}jF_huu;bsMa} zPpbRi=J;$q$Xg@mWhY4jD1{ukd3ihN({pky%nf!U8B2)>CIXP17EeAA%8|z&3(Jdoa}7% zAMdhH^p>DM$&UX@Y&R|&`HQ1Ev-1~XtIPHxUpv(wdOWaxPPzO^);N_D<>wUFJ^}gx z3~O7`X3=|^R{4hLnkToTjKb)6p8uej93R(kuu*z6CBKmF?|V(RGlGS z;IxR(Wa0R1$j8Sgd(qaSL$7&3C17U=nkYMlqc*lqZo;DosYMlTl7ZX%wNhj3B zsDEtRB!NYJ=;6P&waN5$=k-iXvy?F@a>_f=6HFZaw_TmTr z_{fe#x|+7YS^W}ly)mm5IBPtmgW|$LsK`h1y2i_cL{VPI!Bdkrkw@#>J~giA73Hx- z_aQCOd7&besI?sZ`dehK(bol{PSjS4jbP#OLc^7F_XGa$08A?$j88YL8@{gP3Z_!A z(~Ht4KQUGyEPYf&7V`TI^LiVq=CiCKsvlBgBNe=-K!DNEg->j z11aK$PJm#s(Va%FN9AQae0-?10&_}naUZ2dF2=3B1-3Bkw}On)W!%1PmV zCS686*bIEEH zj(cXN+%M9s#Qd@7)wrjrAT1p;wCvo1@Lnaf%6v}#J3Jv+j@^We#AOq(Kp zY8fmre*NZAd%I749_jB2PX>}`oGyi`^+LCYHlhUz&8A_Sg`^(J={r_{>J(;$ilPS` zKH2Ze7N*$Knn09BVcmg-y?rUSHOmYshy7554I3?k_El^qYWLBVU7TiScU@Uc6%O5i zhw>t~hy402bmF2O)|4@(7o0ZUpuXGlx+(K)@vWEFC8)Lb=WTaV9`z_F1X$}$=WX4| zSt@R&5&~)QDcUz&ZGy3(p){ZID~A?6)3UK_$IJQzpx;>pZoXgI>&@q~@euK|9)fb? z;uAK<=d@9`znn%ZDt($U1&|2#Ro4b?!kr&EoI~L(_7mOoojdcGA{AXI3}jx9LZDXn zEIzY#`n6ZPhUyn%Y2N7!L`a3}xf~N$Bx48^YPEHOF8};1DkKPoQm+uAD zF5!#net9{$_{f4I+`_nI?m$|Q(cH5Ojs?h?Mg>G3Jw$Dzws%7qC=D>No{U`o-G(FjOka2+TL z=k+g}opD`bJ>QL~TX-rg4$WlxoBMt}E~IjNSdCE`84O;b*qsAktp^C{i=s~^#=T-l z7yEwRnl9A^y$GOF|AS2NL#X=T7PNE6r4r8a>IDhshDPbvuBgm`dyMb(5cS~L(zCNu z>~z_!jIpZ($=+|Fh&dZb7lPfibFyNxoLrFtD4O+^zBM-~mkkbmQ9c+lLvQ6n@d@N5 zJpgK$n3#spleNPVToV!dq%eeR1Z*(&TsJwjj3o`GqK=~rceXw<)o5v-u@(wki7kCW zwDlur?B7_UuJma+E(%`qg@3qG)ZLTeqMM9)%Mkh3HukB)ogp+CT&Q71<^?WJX;mNB zKTH_pHi+YGM6lwLk&(Ig78~8eo_{AO0(3-40$Xoavd|&09kMYj#YyXyKpnDH|AoAr4&T4K2DWllV&{?*P6 zCcR5v!#92TtF_pqY(E>YF8&3{PjYf{{U6=%iXU2<35kim0iQwTa03OuySev%+Y{VW z^;2e|yNECmeYr&Q{@T%8)j(oM(^v!8CWBJQoRWC@E168%1{Lno3R;-_;!-qd4MOl2KC_rp zd^3uB_^q>wcc)J`iYi9w zVXB}5Q*h@I41qsUi6o%X^4g#2uEoH@P7$zYIC9)8W_8ih(Mff>e;w`dvwuFjTsUz( zS2f>tFP-^|PmjMC3H_zD%g@U-TxUqMT`1CeruoL$96%Tf+d_Zk};?>PP8 zQ1b{Tzkx;vaXy+LhjbFHuai45K7Igpn2vgQsll?ta%%n% zhP|LIbF}xof;RUa)&o4NFMFs`w=}K#zhB|IOJ`hKw zSy69fc})%slt2-F?{)?4Stxv5;aUYyS&*?oxXF73Z4(ur*L*w%3PH$PSWD&X@{aB{ zmXwqfyF9b^n%IH>LC`RRa>t_5BmMjLd2oa8R^CQ?+z3z+e#HpnVKg^CtD3lmO2oR2 zhHnC$kzEVb-McoPnlK$4Dw|@DK>i!+;q>m^>mKji{hLa7Y*wUbpCORKDu||Ncx=pN zp)K4-P2<165n&3N1DKd|2%80pJcPMCyg87U0$D#wy~@hUhNWZP-rgWo0ek>7oP;(i zW)1XyLlO&xi?tf#F^lscqV#CP`sX#Vy2V*UADV?YTV&r++suF_XLaUP1s2-&2h9p7B=dBJ;V{fh zu21r#ec48V&`B03xJ}*IV@nGQbRw`O0#VET7P8i5_vq*dqGZZVYOh!C5%jJF&_Hqc zZx3_X?dEHe=R>>a3g3C$>UGu%tMvx%Q?o~{ojTR(s8=|T5FHJ2#W2w54Zt!28GkT| zS_-P1Y_5)Bd*ix}?kR!wDHW+KaRXOVJBv-0aRgf!{ju6&p{x#(7a8; zgbE=%vRLl6#%17!1!`GHHfAny@HgZh)7uPgtcuR91?xq znR|b~FLOzX91tSM!Qu`(>`%EcI%9ZeK$&~1ic+8uD9?JM&KMNK#O0@9$;?BLW%n|o zi5x=TT#k2)ern?Ue_wsl5Mz$vH(-#PpO2bEHCFlt0$_ju%G-WpY91cvnW>(u^S&oB z)x=BNlm?2_prr#!+-CRUpD5D=snZg(>>WZRNMjO&oUE1~s+SsfLvozk4E0RKTTONK zG1S1$SzKNqduw8GyAd*++A(9V%9?<(AAbGgTeL+EvJ8>&Nl93u==~h$XK>4Sz3%8Q zd*7h?Tv1R@t@Lh|d?wV~J}m$DidMP#Fmqw;+)^^|cnD}%K6_Lz)Dy%HOiZj9l;qR` zbl-zn%kk+tOmGys3~&34+m?veLw3Mqa24rL5Nb=99S3EiEnc za&vEsT!E=F$u(n$QJsXUb&4DX2RFn@3U6>*M+~f#CEol*e9HX7veQFXw)>38JVoxWc4T~uVR^<>rTyzdp0(*qKuE5yW! zp01bPYv-_!#BWO5f8zMZ|MW}Kzu=C{6bVf(IkYx>~<<4GIvMQ=;)>A4Dew*Fwyn0P7=YQY-7zNN% zy?&%;7HQs{Ds~An%~e}-W1b%zikO$s(V~8!(DhlK;ICepo$>itLlm0YVvC>g`MTXa z*of{K($?_1?4*H&v}|n8cT4#qr|^H&fX7i^X*IFt)lXU@)SwXA*(#}k(E*TgT8Az4 zuOLoZ`4jm0)Q&B7SHS`ut&8_s#f8l6r|ly9(A1nTdRWU{eoPP({qTVX>)$Bkua->K zubS?d-X$gdtMFV&q(X7FdvSpwuoTo-O#!%)l;!=_ULYVUtlbGtlz+}CHV)h3^&2;K zJr`0hR#HKH$J)sncgf1pS!Yr@_JZNN{H~?A?(N44Rq97AGuJTamtbI9P*9-CJRIkh z@>lRYoxTb8L(C2O-^C9a*wD}%FTC8GF6dfp|6C$?UE^l^I4GL*mhNF;2U?JLKfc$j zXKzaJN#v!0ftURURXxhn;)NpmBEQ#~F`qdr=sWQ>e&Pq{HZaHO zh5L$|65sWYAG7vk+?Z6Pgy2tgk*VR{R@~;k!8a;k?@T^k?Q+7m#BgwQ4DQL#oz+-H zq$|RdBFqmj_k-4}-jmsH)|Q-}GQ74DPR%hiJq`avUCv}i@T4vLYH@2eY#sp&-Oa2Q zp9m?~n$~sch+e>*ZXoA_J!X~k8&T_}Ykch_hC~sDu5z5aW8}Ldixht))?<6n9awvv zPO!NBMG)H>(W6wTYBhmPo!Dps_mL-JT-M-Sw=^}~o|!Y8x8wa5DR-Z?d?59W;v<7! zA3+$NSBsh}5s3e;z&fF)h2pB2G zEr!cmy01ezh6&r+XxrHZwJNQqP`<&|7z^}9;`a(q2Ewy)b7kFgRwuA_n)+>&9g;9> ziEAg(ID&6hTs#d;H@C8)qM&$Je{NTO1}{{2vBvN{jyn(Yvz0P~c}E~+(DLHWVOQ9@@9ok$6|?tmv&)wwZL{Xp@7h;>tT3H{Oo8s!-Bc3CCvlltQbIj*C^C#Q;~ zXAKg0EJjdP#BTAS_(&1AVCJZpHN#$*pCI7L3%srE7}kUEqHzMr6zd)W`CXU6)enHW z>YK=Hz`F&48aropJy3d$BfJo~=jeKLltC$;Co9c73B!^VRS|1q**yPU_eEH6JnUX3 zQ|Y5sYXvnZ^RvJVi()Y|Il^Z4=X`5eXDXj1^4`hQk`4X1XUY?Sti4~%hR4U5TocXg ziT~b65p*zzPT0|44om#TzNMkG&siAHG1Y6FJ^MJ3mbXlq&KAEuk|H4CC)v7!VMwnC zc8vXY#?-h;dq9{#57}2)G=)T83OfmzTf%=zhEWY;jVdBaa-DC+(XL3*wW^U#3v|*T zu0f-3c})`!0HGYDg1{xXZcYlQ2&c?yeE)elr8|D@$)rxLAt1Q|(;B2)IRUTL%VrjVR@pL7aC)GgQ##{ydHzojZjlj}^8!luwuM)K&QP4pY4B^AAa#2| zlF^NXeGP_Pu=c!oB>GvYg&ZvbNc;*75K!l=BOW#>N=LlNCU71rF#??7P_A_T8Cm5N zI-#Mqx;TP6PDVvlFv0mT>u$uSXLI&_XS-!}b?1DD38QY04qi0i6qWH$b?r5Lp$empBYMzd8); z`7LFHL5Y7}v4nFGFNbs6vOA7bT+5uM)9+gFwdy(EpIP_!NiEGf7SfXgEP6HvW)JSp z74&-ZSx?ndzLJKOiyGxXxaqmaP$FM3S;qB7=y%8)Rm(sMaIZMdNaI@=CkKbk+6Zf9 zqTl_slD`*pPd%HcO>5F}%8dF8QC7YQQp2FD-&0&yvmwv@wWYe_D=15@kf{_Bka$g# zAyij3~PEIr*_OMCh4^iKISUIUePCW}LIK7y=l_tNZ z%5)pi)k@K^5zaP3mw18C2EyCUnydyh#!hVOjAez1N37#W#AvM_t79|bpOec+JK`M4>Z3qqG_7W$Rq#za({5I(6JrJ%#N|)gwo-np-ZIbJY02p| z`n~!Hxl`|+KJbq0O)}A{3{iC zG&AZ(?)Rh&phYgGg=14?!gxn#pw^p4WFzlzspQ@S&FX`V$rETgCv#$$4nOO z+9MFH%hx8(&RH!r&uB75=P_@M6#T%hz#%0a~IM&k`fMP1^m7cAe|+@j=V4_|Vrb zpnGPI?KBJVI^C)T(@m_7r~1V@HQv1op2;r`MT_puF-vHQ-TSwN<4YQ1lEh6egip8P z`OU?#_3czT-pr)O=3?`+^zKmbTo$O5& z+gix$3*#h=O|JSIHh1^eC(2x%rp7+L`oE!2$(;Y{=(bH{Q-pQEwKFDA&vm09D=1>J z54X~!BjH$^WUPnu|K9vyV5?Rt)Us(xp(HKf#Xm6sz6*eVwp|w5C5eBwgynI2g~m8n zyOnRgU3H%NU6^WPLriFSNV*|5*V=cY!~|iNos08Rp2K5Eftj9}p-xdTtQ7idQ{0M* z64=3klV|EZ&worv2Wl%y7dBksXD?l}`KgATJ)tX$eKLqp#~+pFD1&i`&5L#12yWSg zVDjey2giR>d!4cTeFc-T(5~Qzzf;EjuNot6c40@^U*CN|whsN$9n5Rj#6d+4(KHDE#G3Qo2k54KVE5^;8cK4rRzmD5hrkv(#| zMfJM$>|*a(Y~Tcx#Xn+~F29bgsd!*!%tnq`5i9SJIfm=sn{A z9)YE4Q1#mG)^jlhwmYwk=_(*BIG?oqeroW#(2lIo%MZGpL9n8QeU;i&8XpQEA8l4b zckTs(&E}R_xSVh$S`o?bSumGMOiY}=?w3uzW>18nOeHP3fA8OwFkohG&J-=IYPyx5HXYuCi=#Rw%1> zcvZ)Y<0|V&_^JR>#(f_7CJJ5o+X8!U=0%uj9&Q#PF*TOsK zm^(Rw47N~)D8375tNqDur9HopcI0|yBT8foyb=()W_-&nd#NqBw~1LmjO~ecd`AG6 zQw8I^xh{nIR~YprP+94&M^jES8$}s$t%3O`w=4FH@`t1gbfoTwYa#D%R{n?5&yG=h z>AU4u&cff%1PsoP+L~_aTxr(M`lk?QQT+#hb>?uR7kV$o0&)1*E+_i>?#Z?h7%%F9 zEF6qsWjz?mP7gTX2PfyzhAB`K6W#S#Is|hrm9TT)X4nqNXs=yag08F%lN39J!toyo zKY>Ea#W4mMJFMi$Vh#M3`88JLPDF-5XQc4_AU>PXve#BwMMXVi9PRu8-s@!MrgtS0 zXnT~ze62~U_NZ;j?CD!VB*^(FJf9l|rhRw)Z+oK$HZ`d!NH>N37x;!KU;v_7cRM&& z_(2~gYAy|bOmUIYyGL_eG_46wGvN(r@nnhG4i$|BFXm3nH=b51;idiy*V4u{=vn_id6pw6y6v2-UwLfqx{w+`El^=TLk;B8N@z;b^ja-uP+#sVJ>8rm@u*N|qcaIGN#1l+r-Q;lZvm$k6 zYbn{@{3tW+|E6fPe#u*Zs#F_w2uTWO>(vK<-zN*;-t)r^eX7V>WyW)EZjk(Zfr z?eB-Ih~5*n0&T6L^wgKptFIOn%*>UA+$+vmRFm!RT0Y!Yf0NbY%c^p~wuv*QMyIT< zauiCfjr9)b1AuA4!q?d+PCn+Sk-B(%s!3Z5?chl5FL67x>Zh-F+0AhGo&&@9SANBF zVR(mOPv}h&*adB?ywI*7>)+~o1;gJC3+yJg*QgGqSp|2&+e65x`HP1DUqyW2N_InI zjOkD49fEof|IW7t6c%WAk@FTLR{**JU+Ui_npyN$nl~#V1d>9tvgkT>o~Af=e#Iu| zO%ieAJ#{=Y2&WsCuAmxiyqT~U{GtSz&DJBQzFAZ>PbR=6V`nEhmaTYadABeGP? zbMwDpur;zfNg(h-unY0K{Z!EUBFM68aupI4!l*=Y5b_6NIl7H8{M0Z@W1BXDl@YF| zDgoH^j@PH=qZd0;S0fIzc9i4NqJ@gGOtIWUBTq&Tm%Fq?Wt zKSIzg**1<9>4}3r78LlA`R#;TklsG0QgPdHf0BVRJauR`R$S*9mr#>!_iTTH?TeSr zKCB2BQMBXNIqqJ^&khJAQP_LGLxsGF_VSJ;J%OCf-zVUeOS@R(_5J}%X_9{|hB@4# zSJRTw&NM8t>b^=R!+aoXXh>KH>z)kc$;D1R6wfGeKuEpr7<=2pao&%4SKyF>vGFIc9$D!+K}%%)DrZ*te4ZYLJlQzq-u}o`=cHz!4Y-q3#Ria z#F19jw~E6dWu)7w?OO=j=5Is#XO~yl|7$mDFam5-N?<%sqV3$c!JA9n7}H*DIAyI> zY8>k9+Vp62p?B8RaW>e~+o|$RYj2u0MI7JTtgOZnh)OvFrXc5%!Sh=4ekhNJaX{k; zjP&4Sl3kPvWwZZemwEeh)syZKc&f8wfwqNFOQ(q+9k-@gD=D0bhP>(!JqA2U0n2!n z=_b<;Fk{K~B((2!Hw`<5UYrj7v9U%g_tWhRG%Xi{EE?3g4EE!m_V)G%ig>TiT7pWi z(S%2;{-lj~aV_CJ5l+S4>ApO()Ue1Mrw6f}?Da?bN2VL~QXhqDVdND|935HIPW~|7 z3Fh5ZGpn5%nbGMDF^7wK??|(0@l32+Vy@=Gz6T!X1vrR;XUppE4D2dtIXP@opr?lY z?&D+zq07!%@7o&ba0UZ2h(`u#?R1$Yn_*G9VtyO`>4n<~dw-AY67&-37Srn&!$Bcu_}I z@-sb@Bt>N|EI7l+(U^jCJBMh)glRIjtCBe$RPw@6b~R5P-`wrBZ|6^BDLL08v2@X~ zQh_%Zvy#6>f+i%R({ANN0K*n_T8P*AsMr3?4#a&>g2crgje#bWxRPgxCz)8_b8~wi zhqP6Pt9i7vlVCoJY|k*8PksQE>jSQ`9mLp13h6Ly==#GJ3~BFjrK{G0HB@;FNX0r2 zIS-N0ISfsh93bo#WsVM-L%g(R_^l)heDbTj2ZEYf=LEM;Qh7R;G8TnbZuZ6=e$&2v zPWDh8bq^AL%TtQy=(}9gG#lf=onxyGAF5(a*J6XSkUFnZp()?@$v0$bCxZ>$`A1T0 zBmM+r_fP^yt1X`?D)5ke%g_89bBSz>xza4}vmEzE{jhKvp{KKEPqHCx`ybw5MqlLZ zE8$fb-rkyF3(2`wAN#Ug{qj3^wB*ll({YdIn<92kEodT*`dM%!-mTxNSmi+CpGycZ zDS4@C?o~D03t5chRrM%peNNNyq1_zMjde~Y6gmN1!*YF|kOjF44n}M1u+x(#1X$|p zozg`_0?*po1M{o$gG4+bd>GE8lK4e?XeT8|qsAX}R=6*i=?ZeQTWXuV$hP}PnNDFO z7xibOl5&<1H?+soH!Bp6#z*T9P|igGWfv0iTA=zMx4-G_NTy1zD%3RoAi6o#c80d3k?}^<80FW?S1sXzCOZ&9 z@~I{)DPqN@Ii?KQVNj{_YxQ9UKwQU6+YD>XSjVHpWPE`6Y9f~7=5$i49l0*BgLY}D+4t)f|gl+-v%uU z%ZHVgs~w!81RJ;1Yle=0wY1L0aT)+V>i!w1p2gsH;7qeQ@sg3gP6>)ZM0cl_>noxyYw;22Z?jglPD;}@B+TKGNR!y>JG9`M~mz*NSSUf2t+blIR4! zN^fIr(22o5)J(nrqg6<`okJ{1wtQhlQwh=SjQW@gRP@zd--V44gQ_!JLO3<+tr4O6 z*~Di(kKhKjb^Nkm49$zC5EgbKf&2!W&PYc27{5Pflh-vFHr^00L@OnYmYvABKR8530Gz<4q+R1Ex4-eoA8$#LIR)F+MPAsXnG^;^te5F3y8?@8S5qYi zzV;k6&{rGuWy4AU0h{B-#R8sR)}-yxQet(_*=?keB{QQz9G2UIk1vyeopbLOp+!faD^RjMBsV2Pkt+v+xj8mvhKo8(BKzVKVMIk zdk#Mz$|P11Y2^2$noxSKMQme?W|u3nH)`D|$4*8N3vp~yqY=pPs`GVaiY_y&%I+)* z-3*Kl3`Cs!5f^TOY=RaMdb4(Jb}k3)6*hoUjHl_K+`pburgh_O_DsZE`XA65!l5Rm zQMj+>WSX3f)6MbI&A(NXL43q_iwq(>*+^5p_q6-4o1n@d zG~8w&-7IXJF?7v`wbxR>r!3Rri-uB83-&otW79K|wbPl)`s45;+6w*=`T$G=tvcIpp*@l;L-wbOje@$IZAbYSBOGny$Qq z4bpwH`j6tn1 z;zSoY9B#AjcGcNzo&^ppve zrI#3?dA??Ho=$g>3eE@s)MkGg@hnwv1Wp`KD z?D|`QpsrQ#lM9{Flk)o>0gZ^&)Qv_}Ze+yI(yLq}MzQCqHl%iI*@3e!_hGUBR` zy88^S%@**;$5YI$Q7aR$A>%mO&qLlE#>**RR+&>^{tfd=(?SE9QBIn#Oun zE#cpv##pkjMx9`n5dKg-XUYWwv*PEQk?ma_`eFM8^ww#eK}9i#uDKj2Np!$_roR7{ z51yAocE5s42|5K&=>TK?(n}+h{)*hXRLmFpDTYoXIVGxg!ew?L>`}_3xWJN(x;;8#7h5;+G#`9kh@MM=J?&eY2j3)*vN?QI9xY3 z2Y7~Ht4|lA4iiaeuextmSO)sP6c=xT(OKyY`S6u!va%K%R`KxsZ#F{gT{8qqPJj zu2f{76oX_Hq9I4L=ppDVFTjwP0g2h{H9NL97jX($Azfr#xXn6;d-q(<{~E&p``SbL zPY1)D>?^NmE#@%qOBZz9NBJa8O&|RAMOuC4YE)HGNF_{AK?fQQAQmg?xM73LfZ@Az*E4iE6ORqFv9k_-+q1NWj5PAOrzf{M2Qg0-L`!Bnb{qFdlnOSL0u0EWOXND$sWy8S!Fz ze`$)ygGP79!*lNM-2*g&)~Phi^`B55F^uo}6>_NHTOJeiZrjjBwmj~NXTeTN$4#{u zn5E{)KCW%U?|R6vg}(Ou?yZWPVCm>yrfOBR_s~bt_sgv=FIT~di((FTiI1mX$cmzg zcaV0C%ZLL$lL4&*#(U~^H+Fdt^{0Tw)I9g8^}eK<4J3?OJ}PLinM`^W`NST?J2P-b z#??eS{7pJXS$x@EWbvA7HQ9HPSG{ZY1eOnj>IUJ&gmq|IPcyKDtWQGkI=0D8bE(Ui zk}x16>a4n7k27T#r(dTrGk#j_`g76b$Hg21oUxhnJ z^WOMK6sf43(WoXT+qt#G#c$zG1A1KK{k0h; zN!FgbiCc)vdRU{+@w_tjPq40Osu+PUE{G8e6eCQ}ij3sbaRk&4Z-}Y?nkdhVqNKxis&KTexwK9O=?eT$QDlKIg`es?!GW_@4ro8na#+w zWoDt?7RFe95OS%uT9ltz`#d7jd_PueZIo{-Z612<7@dh_lJ??L4#mCQPm2YmwGZG2 zw50K0{rBplrQr-*unFzVNd!-Q12g z>j&|{H@__1u{44K;6sh=o>Fl5S?cQE8@(0Alb@Tr1{9&1?5PoHnGwGe3kUZ-*>(M+ zmLt$z&nwc|dn??9;DSrA_oZD}?5Jg(F6a7^j+BHhu%oBT1jLC6NAUZDi}{?JzBg|^ zA?D3{noeCI>H;HCp1jXDD+v3&lQ{Hzj12>hqNNcq`FrENg?7f6f1E`Pd>Dam&_};t z@Z>Pq*uzKTw`FLFG8n$P{iUV>-||VkZFZZU?@4aKJ{9xl|LOlv!alMzWe$HH(%u!i(_dCyZv6ba|^UZ zBVo0DItei>>I2i$1*x4$Ie!lJ3%%ahdqsYHQR}roTKsWv4W6CLud7c>W63LxOQHhm z2{Wds_796wI^KAvHPJbb|Jx5*RG!m2v zmI+3`XUpfHyZ+i}<1K41v1QE$SvD5TuY*7JK-w3x{rJ5T!2dVoDV=74m>2}5pLGN@7MSBfFDY`e0#$oeXK zs#w~(hUV=yKfFh(A2F+7)FldM>;mGuajpVG<)qLDpPCWxKUPEfM6T^$TQ1{Pcw_va zssR;lcW-ME&kr8|W$TNVi>nqPSf&&&$Nyh@Zy8oq_k@ijiUA^mQc6jwbhm&=NJxip zC~1)H5(E@!M5IxWkPe9h2!cq5AV{Yi0TDz(y3RYtz~}ir?{)pZ{Xe~YP}pamz4uys z*37J#d+y<~tU4~|X*%r15K!0y`Q_gL_JX6!?YG4->7`rt}mzAG;k-O{0+DT;Y={#EO zY?WgO+aRS9a1xdm$xAP<+pjDEXc2|fO*s|U8DG;Gkk!}lr8@=Pe9>-h>6=}72EHve zgd^{$9`G3#GZ1teP&Wz*5hm#X4;Xj1NP1PIzzF0Vwg)5meI54}>Csw^ffs{olG?&z zSa6njzm?GUKkV}1u)+)c!HE}U*rDVrOPGZzQidMc#_vgJh3)3O<%N+_&A1Miy^TBs z(C;esEhw*bH{p6p;Ua6IPJISeh2Y&~Ri$)v1?qw$>>DBK1(jBBjUsdCBd$2>b8-x- zXL8B5z+wfcK#|?!Ay&N9tL&*83=;u6%+j>}tQE2B25f~o;D)2}1t9QMrK?Ec6i4z) z-Ob#eqc1BjkCDq1XXf6mWI`L;g`b?Pzqoz>)u_)RglaB8E@()ULw8y~Q-WNLwYyR~ zRp^qdSJYlZKK8mrCv!{En)|+!P_L+z6_Zir{nz93;eq?qTI)5~EQ*ScWKh)V?x5#; z^k%L52(7m*6}de|pbwQb^d3%ReUQbt-CY3%O6uItrxWic3eQc-q1TkqYade%c)aQ5 zHXK#JQEkln0v<}g6Ol(|c=dG1GoXPnc(8v04w8%mDKDKkF(eO3#=P?wQJTOX>qW05ml@0+~0R;2wVB#No0v?L&PQSd}nkEzKczt2~3lXU`q&!^~mC>=n+6-YiR0 zG^9XJ#t+fRBXlQy`TNnQ>2D1Ld_G+#J)qS2%6M>H)ds~PgYtbnT{plRfEQrMZ1@X# z;=tY07@p|%+UykHLJv=_gt7^LzB-fT6Yc$))`xhc2cQgPMn0dqq7TE;Z&{8zk$8^I z{xfVMl%9)xb-jbzz-z^QCQ)(s?K}apkG4nuN|8D`WH*~wM>4r)G!N@St zPRV^nTykpi;FX{(=llfav)JHvH8{Fl+tDt>*JWO`;o;laKk#QRUP;6(03x>ot`x7oLsbx12PJv$CXOeoX--etBO!g0%f3 z!zf5tI9Rk&t_`U!68KU#zx$QN$*)uTWT9qi?zsCa<{mOmxZ`GC%ab(PuK7eNseAD) z=ejz;bSQwTrr+%D`Fc%p)M>g~A(X9@*h>!4E;k$c45KU0c#N6NNSuoreTuN}-DR?e zhY!2|9NZhxIu5M_-YeGzLx&i1VXr?;C;CeH<&(1O0#%>>eKQ4~~W=`F}1H+YD>J2Q0- z+NS)mLYf}r1BPbA=Aq~dT{huKGge4Q--aIVTU*8P?!;tT*{xH4sCy>YmNdlp=nJvD zjeG^XX55SB>SOtdSf2mNjHcY%&_-RLoJu*`=nC6omepHd!Mjo9?W^Fjg3Fy~yc5WK zwkC@FB~Y5}d>L-TIFiia%Y#IT?7A}qC{|26Jn;EzYejo#)ZOk{S%u`+X(z-T#Y(0d zax7A33RVi$b-Sb!evVOL?)&#H7xw-fXvGYnFJjxi*?RlazRh)mVuDvXZt^z_*vGDZ zDJeHsnGjW|xvmh4{dn~xvez~19BD517rUM_r%yux{Ru@r#K)7!cc|m~ZPciCo#0wq zV5B3BcF6FY#QDit8gg%1y|PmA>E81jPUQ*0ZiU;8c>)g!kQo@Add7aMBXZgO>^&Un zl_H8a2VmWAQv}KuYj~_yew z<+7YK3D&DcAr^grlLN!qIT}HuBgk0p_whL5pt{W*W2Xl088_6bNnq9bg4 zDH%Gj=x@p!V#v%=Lh(HJ2=yjQ&eqjE@s$8s@>+p|sY_FC*L6RTXwk6SQ0o^d`m@S< zw|2#IeuiG0VB>en``1=9M}%fV?yR`mO-q&!)#ALWhJgMO^x;Ikf+SxbJ@5Xdg#75F zty@EYZB2m+oW4h7kR?>sJ$lvtYS-=Mh+n>4yHu5KE$mexs58zMmfdOt?;_h%-{oDK z{qy-KgJR+{VSUPgZpd`X&!P?K>V!Q1qM#1BJ-p`G0GwP12~39XhSr+rQ!Is--AB(D z95mU|;oK-DepwaU&b^GuFQMfW$-*u&J~o|5`6kz7%HR-fb@X}?+PyQ&>vC?Mp?rdn zORfcVqCs~<(KEdxFGWZmz3-~w(GY(aQ1EsnD5OrPRu+r3OWfgJ&}q*8-MqRwF|To~ za$)}h$sGxbc^5*x0H}UjsCr8U-cF)aaZH?`)2wc#{iUo|>W-x@0+&{RcmDP0LBkx^ zHlojHgM9OeDgD!Jx1|ydbIxx!U35CKE1OE6546V=YUs0t= z6cd}NxI)lp5kxp5UzMeUY53MPHHhkSzE32GT1ak}6ev9TG_OMZ+6jazG|mH#WA?<* z9JUzOfZ3BsF5I%Gw9KJ05iM)ccGB-3scg)!@1H~x3fZu)6PunqjRhk23dnb{slKtBWYhN0|PPux6Q6BIEohk z(LaD{HAQ?@+->!FTKl2$4(kiaV~BQGN==A1gINRL1g^dKA9O?Qm@1fLk)1ec^eKif z+<`Jjx2tprRA`6f&JQXsI}!5{S|7peEd+@c>+J3=AfO_(&4nH1YhsBQJ~_G8fXzNn^Nw znO$^m9z#T}*;Uxr%>YOdu<2oWq|fhVV($~-PLbL|XZXY;9XV{ekorCXGzCOj-{@o_ z;`^RNGVf7eUKx!V@x;>-1(=u_ou};Q0wS3fVKnN2A#+q+tnZlD`(hF+*dkzNo|)9@ zL+qScDDnV;3j6#*{30S_lanbev3WA}?alJAAIF4!4n!6G3&8vcm8_MV>S^Bp6hLr# z$@*T|szCo)qUvyW%^!3MwI^>eJC3N+FAT?d7B=UeKU%Mu0mu`*H=exTE2b)*Fgl#I zL#&)Or>K8%_0?r0yXY+T^?tx_1Db-&t;v2%;+(Yz+R0)J zJ5m&+YOk-kaIdEXL%Gv=JJ$*Wh?;)=dc*swjekBsNq=f&dGEbY0>K{IxF}7ZVNK}q zQkQS%BYc7NK!+*)9!pnzBlS)dU$AZ6{szQ%_3C`aJ?V1fG__A4pt^_9{2P!zEm9T6 zUzQ8Wf0E=-cVt#0&uwu8`aCbr=f~PT{$10f$afn8Ur}r3waHES2i1@~1^K&+oXv15 zthyiMoq4aVgX$XM{~ku3V(l z;hOeK+K{ZfsK#Ja&c~-F5#CQ3ftMXeY8W7djtZu?h-j(J7nT-<*uh8#_NI z*R+0V=0-0Y?ThQhnXdo_4b$d6vXrb!X*HJc^5Cw@W1sWkn#Gy5XHMr=LsWU&Uh$vx_FXr{x+XC@6@pz$j%Uwlb z#GV9d(9#lwKasCdD?A`&ER7G-c0Y!20OAOuZM`7CpHg!84nMQk8t&K5%F$un;N{@> zRJ56;eR*)vn%AH8O{0`p>12LG)Cg>ot-u@Bf0y$SI)Q*hl5UQMUDT2+qUm_;sBzO-&is9% zMvZz0cThN&8C%*6lTNm!u-HMMwTw&)bYkkHPGT4$^0jQ<>b3O=(T)3H!OyTa0&=E&Dl!l4h>JGr52cxhR?}iR z@g;lHOo{cEuWO1eORE+v^Zkg&Af`-5S?G{h;(_SK7#JfHx`Y+-9^Mo#jSkE!Gg5{isXzTKtdFtxP*;vCTw zPIHcZ0T@M1a%cFIjVm?j{R;%5aAr*^1}@4@Xei0nmeVN>l5?Bg?n8#2t5CdYcsAi> z{F}-wiy?v2qOe@1KdJ3!vh@Fm-g+?j;ayNVnf2GWG2)^)_X`H@Q#j~w0G1H2PoW|k zAk0r?JOdkdyI4X57VP_SYP?W6jYOHz zF-^G@`edrS$`P5x;Id@FkBYi2_Vnk&Y6x;I142m`g<>2Ij?*afe3LBmNaMbkgT1Qp zXknn|#v2*TBU8L82T(3B9XG5Wd*^F75-1;=4vms5N7`5Xj&}8SJE(rQ>JzjcBspEL zNl}iiGrfLG@5tV^)>fCTm%xsPjn(-Kk&McYlF?0n*<#*bWlatJR11J0(mu*&v)|Ig z6;dBdTFRH^IryMOXD5z3>KInAVO}pxw3=FUoYOQtpQzV{b=CRT zzWa?M?Nth~2(IZ#e~Zpw^a0fD$XW|cLi2=!ZIzY1u{(!)=SpoxUip^pFf5Q#gBJ;4zt1eU2?IHy`J#i*Q z)aDR*0Bg^W9)kbD4z>(H{E^KayrV0W~etP zdFQgPW_L^-uFKY~I~5i;lA)=c1No^XX8W69LsK~JNK6a&c^qMk*3TS&lJ5XzPIk!x z4idimIWSC<`x+x%-nu!wVhfS0a^NV*vxTGT7?z*zl;#5D)S%W|`^SSXJOog0Cb#4cvqbgObk(rrIQ>QXf{Zl-j-$!9;NCV$u9xN zoPaYm&h(+5r+9JZ)YALFZja#;KMZ!5I8JC9klm!}g)}A5N~W^o&xUM~+1T0+OqxS; z4Ga%KGbJFh?*Xtcu;ZS3TLQ}$2VrVmlEN1x9wCa)gw_F|QY^gMPPT3+FCqm6ZBNBy zy5`hVo}=!;9;mW)kh2bx=3%{t4$bcQ35kADc5(CEQZPts-a`Dj zEcy(SpixK4K-Gm*!osAadr2P5aUDSS0Zk_NEU0g4(1F}~kLLdHh2mC}!7ZHEBGP!a zzp8K?Zn%JbUWIMb-NNQBEftQMGoeR?y|;?j^(7}Y%5XbdhBRT+Y)Po%buIboH7Cdc zqwM;8TWEY36nmhZ7sFyRvsoW(XssKUqjMO^+P|hajJDbR)IyDQYz57b00ma9B-hV! zxyLX63fuGIs+aKqqHcRn_*Bx~#Z!CWsv97hkb4d0=P!S@$gk^Z&#A>UxOwR;(QMeE zOM`tb>rqoi0PYFI{Cz!*ieaF!0Y|sgF6&82cYXeeV+hZk#}<%LNwm{ly&bCN%RpF% z;T;28z>3cMnq6(gr7J-J(E|Q&M6N5FAq1qpncUHlg4NvG-jB75s4lufM__{*cg_{% zMYbLoVf13`+jB%dA!8&0(EwK7hh9)uccD2+0IQt|Uz)eiJ33@77pC)2On9M60!E<8 zZ|)gs)Ve}=jZBs^5hfI`DaViDt5VV3JlXw2AS{@6zC(H%ASBa$oH!e*WE;;#y< zHX!h#2V45WlE9|p{YMKHD84)$nH%iQydYm~bq)8m(!$o*jd; zBtr?_Tk=5G!Ns7{KvqUqB(ZAivDVf=T(mF4AUfD6V?NeD)YdqS^}~+0ml4yCT)_2P z{J6LZj93@dh*JvOY3fWcA6>8K(E!-q-Q9(TOZaY9guDPQc?0oW++;(ChR2Y;+5Sw8 z7FcA%ZlqpML2svkYexZ4B&bA5)@6nuN$=&-RVPW`l$s9kxfpsCjFe68NIIP2LYLfu zC;{q+%8zv`ieEA7yHDRI3zlLB=t@?Y{3=ZLSZa-FWtcDN=v91wb*MMe?JRx-p3$@rPxDZx&yV-cKFZ}O1tuVE4U%l5Ik&T z4ZNhKr4=`KdF;TU(hGCc)Hz3j}yHU}|i|PE%)VYez<*1L93!zI9 z+BQEPt8}W>1taOEhVy+nP?hx|F8PPI)(Z$F>7gS?%xm49zv(G4iJeHByQ0EMHpeYIn;xTls0XQ)oWOQ3hiAWYF- zBX)%hxQOr0MNCIDzM=$lK=LWTeQFxtXsjnVeL9G`u^yPTLx0qpDC9MG_(x4TT0SRV zQHO0^=;tM1jO?yM7cEO$aRC=Z7D@|Zu_%^adQ(7a)MTuPqOc@)F|oF&tTH`Ie{~3{ zfSwK3Qf^-GlUFu;Bkw{CbsV#k2aA(b!mbKzkFW7aB%@Ki8LBStT@+I2phWejsaN7D z2L1Kqqe#8D5$H>|{dujrc4L_{+tp`n-zRXlEX&Up1GPo92Mcqd9fdk0(-ZX{O|MD3 zaA;rH%LCF|`;2_^P53{Gk_xRj{+%`y3geMwWw*O8<=y~ko3DOgUrg&M`Lnjmkg7bK ze!pfGiA0KbX85$`%qM$?pop?t5hx4KCkH9e&1DCia7zG&HpWh=koSsc)!$=s-+P=u|0(dYcjYb9%DJ<@6r~2STxKuS zO8(HVRJKJzvS;jm_H#l+RKG^@Z(#P_efuiqxQ5SBYvD)V7eCy)U17v5W^@+{5HPfR z&z9by`z?5v`L9X2xj}~%b!K9WEz)rNh4#~`BeLV<)n^=QYopVQ-D4JfAgtqv<&Qo% zFr{!3$`Fs!s8cu4?f#HaarHoGB{_7Vcq?OIZ1TGT&`iq+~dj75CVL9LHFfPkPl)mX2)~9lp&Iq9M)v&bRhytP}D19 zt9Dig3eDryHnO4&*4Hpa9zTjbOIR`Ol?C7LF##V25KUZPizC{V@)MpOxkQkUZ5E$9 z?RGQj-csf5%MSiZ)5dS2>UID>f`*dYHyJJ;zIB-he(t>Z^@G*H*=VYg1A-L_V&^yv zn+Y(13UH3%Qp9WyihV?vZm*DD9a=3bCFI?9nOL|acMK5-z35I=6}pYdCb{p+jy)70 zmuy)E_rLV(M4O&gf0(Bhe3XjYOo8fSL!@JfA>RY{=X>@MW zd}pg5;0taTo`Yz7hK}D&=EW#x$Xa7BP+jP{p7-|WD|00c^e7YkvWiCPvH@Oa->q&} z57iDkT}%pElbA5&3K$H>Q8t1MU>ib3e}jDYlyF$#UVF2-!BNqyKIuv4!rR4}I(*s# zBYF14>-|MO>)>N{xsYNaesA1(RZ~}|7q|ed>VVC?|KUQtW*USzm!N+}POjw4_$!ZJ z7*Z{)c9xlAE-fU|F!436^;HW>X?I#N&#t#J-~MF+d1v8i+P0?G+vTt+++6} zQKZU4WM39re8q6UWcygY9&rB0e4wYVgYogt&-0-8PXwq2J*Y3%$5y?)cxm-px!2uL z(V(sKj~k?pa$1o6S%m7Z=|yh>H57BH+DdN+aS>Cg@VV`n@Cvq|!a33gq$Wds?32t3 z&WcJZ@z!}jEosrNBdq?aj@cTPA)w|>QZ=QIA%Z10d2Qd12?)kmYN0$e6WMfg)Z4wB zWsPc#I8RwXfhYthecU~CJ!Tw)RoLpf&$}d}+M(A%VoPEHstr?ULsQ)+R-w&R?T>@d z?;Q!c6Z6ya$UL7=Jo;>YUd2z!a++CU#T`>Kl{X(ou99#s*!I4~>n2kKlWksSb|F}H z3=`#W#kp+_jg9_lNqId3hqsC`kP)cTDK_+5Z%xH*!BG0R16eFnDSJ=r!s24MF8;Nc z)?sS>?5$9KB1^CW0$B`S=JDYr!HSb+3w`;(OW7mt=?3+a+NV!;Vxm=Nf+dR_$0{8h z7>4j4DP~`7Mtv4#3-f}I=-y<@F{JX82H~ymz`N`XHnXNk2b>cND=Ssr7vJK~kFx0( z6IbvVB?Et>arg6URa8$*h^$$)OH3wf?`dxsl^onCtdAW_kB&p=KE#lx*(+G87%xC; zt$ENQ*jM|(V$bA9REGaH5B(P3hF+muf|I1?LUia~6&0~_j^^Hnu8|Tv8qbcMm_nN^ z1ytR#>GRW&EoLy?^F+RrNn!{nrSrrAYgKaNu3j?liYO}`S>_C2El%CbS-t-)y82cl zrRtbVtyX!46b*w@~mO}et9qFCt9iXNW1w_VNrh<$TseF2a^zA)a_3iD~! zkeXKo1vUVZEAhbado1tD+l2hlK?f&g%Lsu(6})chgBT~2ab;GPjPu~_1psX6P2G zg7j^noKrFMav!%p>p4ba{F=Irk5H7V@5f(VN0&>WDg0J$n z!FLBC-Ek|B7qiKNWq$C;tCq?!mRs9eyM_+R7xy4SZ)J6Iz9rRzF2w*g*ma)kxne;E zB_^^spy@$^ATkUorWh^bg#>LB0pTX8);jnofnOe&sc6t4MM{T*<|PY;9$C+1(E^LQ ztFRF;9Jm}fE{#>G)f`#R(*Cqa<4F#CHITvHGX6Ez*WZrLVZ9XuWFB2WhH4JIsN;0E zhm3rhiU92A#2uK?g?YJeMU)vZRi2(%00_ivt1WU92?n2_fnr-}O&&su{U1MmMlwId z@@Jj4f)q#ERS0U*Omw9&lYM{R1x|2XoxvKW#yMeO@0PIdrkgK6%*o1CG*DFqtGt8hkAAylMy!21L#cc1E!xv{=rdkD2d9&joMa$dP;X1 z4XRyYF#r$*5!BctXTrVZV;4BFaEd*Cm?fxEiuvd|@%LP`wzIRdu*iOX=FTi@?R#VYlm-k)NJ!Y+(^({S(Ic=Mm+;${4fiyObW(=hCt!!+rK~!)82&%t8h6b2TvFV0#Wz(Xe#&itA5&a0Y z3NN~&`85>SMVKBbnQ{8VY&3~)>WRSzVY=QXUxVmpzm6L?qx7``Vg ztn*~`n)v7Rcvn`-D=PAQ5`7yr72~5%rXv47kQa79>CZ5w8fu*4yPLhey`kaTsn{bl zVux>u__~u5CZfAzSNM@=rdd8y)xf|&u^J2O(ch=`;Id4F_#H&IYvhPWSEZ#xqHK<2 z`y5`QpU;Z~oNc^IdS^d)9h%f=ih5~3(u&|U3k0Bnavc-YQ zMw>~R9=Gwpe0K5hGpUag6F$(o2G&eU*_>;nQBvBZ``VmJkw0-Q)?0Ame_sPyI_qR zbtpfL)2pm8Kbh-*uu`POQa=TbGZt3r+mlFKdFN>=-@TPLUYnZkS)H=Slr;|Lhl#5v zu6hwU3j01Lq_7}cm|!s0Pd1oe!)zKH8_O>#*c*^OO*4wE%y9Uhi$5lSXjWCur=MP*?~h!Tp`TuX&|ydTynK8V!WzB&3&Sp0ZurnM)VjswYUcBf;u~ z;4C~PMgZ9*>k5I+9K?Mh&NzSXxI!DN?*d}d6M}3<14_vW*%DxZF87SC+mOuuHldAgn>uNKORS@@d z*?3y>gYnf0tj`1+oQ<1(I5Y%*MXX31NqjPXH8cV8DlpM|!z5VKj}C=whr!bm!g82i zTR;{6P)7b?iw(}1uonm{-M@N9F=shjmn}{%6OtX4-=iOaMgr=;)A;yO-y^K??lT|W z>{8l<<^*~4*er0Q0GGG#YIMq3<0GvEhf=qNh9w7J)2nQwj*8!JTKfWc8{E+v`zZ-U zVQer?zolkg%kcI9P|nO$7Kmreh)m(y6{|A=>+Qoh854Ta``-@d;9cCj4bCk6@$aAP z4g74{tvlM-u-+c7Ay#i$T_kbaVo>gHO_4kF9jouJaGs?vWpyyxgASl}V`YsZvzJ4B zsi8i-(mGTf?>^<>)0{0REyeWCJ07yH zWZi@)IBe+1*GV|Dsl`j&sF`9fhF zWrD*~B#xm4axhIc4-Pi#mg=tUl{P%fMMGbWMM&`jzCns=7h75E@98YWmvcN3#G~n| zOfg`oYw9%PE>B=T27EHy6Qe#jR-Y|-gE(Fz?ugktHTdb%CxG}n>Vy-DPaUoZ9J(}w z`>0I?RAl9#1CPGkn{Tf`B7uR1&#_KY4-4Sme+G~vj?Apf$}5(&k=q-E5YqTK@ccSrxIy| zvZLw>rdP23p>*r@ffn}K=2)rSWUb2ZE^xX@nuAoviQwJGP%HkLqnq{Am)cTBM@KR4 zRDv}#g<&un($K(HSB~v3fD9f;7*5>0TG%5*kClGtwy>HIlhN~nI|i9?TxZIL zm~TyWu!65a8U5)&vR627e`^|u1axK7e8nVdf%Q>p=@r+xqen+mz(0Ue1E{!ucj9>J znZJ_JViE$;0tgyaK|4-#I5A%Qf!Tw(de00U@$p05g=hQV^6}V?88Fxm{u+jv?^?rw zP60xDK+pN5Obv_o&|0%j-*jda77}99ugR`c^6}HE(v4-Ppxu0D$d*cVICl?qx46@R zddSAzUEne8LmBrOXRO@m*w>lwe$XBXV>=Y2$E3cG%YeoTLI_1%4KHc=uXH(SJ9hX| zm$3fxYI0}av;$UIHHU|TL)lOAs^cyy7SyMl?UD7sKe~}sy$dMVcS=+C71lX^q*90Q z+KiM$ugC^?<+UMa&@}j}L>>a^-S*Mvy(6FAxad4DtvPe|G4C;R%M|MS=j# zs0I_?jHAu#1E2{Ac>%bBgL+4^kN;JoZc!bCm`xXu9OO;M=ZL?A2oPG2+?rF6iMAVv3j|z6jR9d-+qn{V+QQ-SXShWDP43FXI6_0klc|c$CC21Prk2 z3e`WoEs1_hJ3G=W)6{8A29Q=MjHmzWiF5ms1)U(7#=%t0ID{SY;PA5QMZw_KKNrzn zmpF=dbr#Ix6{5q*RqhA>2y~TtmihqC3(XdCJAF&zgGkuOhmYDBysCV2aaxD$&1&Z>3SC z`+ae7KZ(%Robi7?is>w^{qbz61_-XB>PjZK>PeL8|4Kz*8`fRuHwAkqFK868yXt=@WF8N_P@t}=Ne2a^mTwnPFfXYXFh?G z`j1zAK3t(_x(-~OOx3U8=J`#|SNwb4uOu$#27$9~ZDmFDM%#Bba~KG_|2Y}=_j+RX zsxmWYAfj_ns&~%r-$E9mWP00JntmeX-$JC|aI^$=62`{q0*kz*g#VU?^*M}~P*Fwf zvi|#CY{!n6NP)zL*IfoGU(r~HFK^!5-Hm1cp#Qayk08|Il8UFhU=4|^QL%glfh=>UA9@jTF zm7WR3z{z*uUBZX3ZD#Ew<+YGMI7`;hKQQ15$!j2I0H-m0f)m>w6DOIER;-x;4I>u$ z_j>ECDdssTO!|8EZdf0P3> zwZ*u3C_b*Kt%;Mfqv;)+pTF7}S>fYy^3!n8{QONsgk6=BgN9Q84ye+IivHsq%%MN$ zNZfHUmA12WX1{4_?P}_5X?%xW-NW9L{pT?$TVp#DOIvdqPQjm7VOMi8a>jg$Ife6I z*TkIg=bAq+@aMbil9py>rjDkz#->gP8crTTb|V*SYg1<$E-r3%b5lo~JGLf9)=u!J z0Q(&iOE}ZX68_@lVt4uTm)<|`#KrNCJ1Lmjnmb$2aB=>6JZVd7XH!RZY3n=Arjn-c z?53ike`d%%`PuFFsucWZYnRkIS-Ep`wCh;g_=R5*VJo(qUD9~r_!ckzK?*(#GH;K{ zqgHp7OfZ8Xyf3kw#6F|}S9aXW#dqK3uB~vFWJ|;3R&@<*6z*1U-rZXncf1xFI_~Mg zUHvS0t$VAq=DR+d{lx?3W6_0(rv|i8(*Y)WSuT2NXoc698=u%YS2CP@`1lYx?7XJ zF|*g;(UFr~2?ul`H)pFJ7`^69|4Kzaq05aGdE)ug9{d~;26C>?9E!NMy-ld#LH9G} znsTIks33W@(dH1IuYw^R$%sMSgS($PwJ&j~@_2}I$x~R7&^lb#d_wSn@8uiu1Oe42 zp(Cl)Qx#2-+%Nn*$Ul_}NLlAc%SA@ju*;BWr91{;7>hAOqALj{OGb9V)3T2}%i0cM zX>H-VxPF{PjLZ%O*o~IGv9h~p35_!?rjq)+>)57*LL)mYs0@6cdcvC;e&6n`9XatL zi>mpVbXIEEi`!2ExaVi)tQd$K-wJDelP-EGa6vu3;C>j=pI3F(v z`9zt47n<&!$nNwq?DfgxHEiu3gYQ|nkALL#Lj~;>Tba(2rpkV$bjEws#&brojeEg= zERw$3$|J(n_K8Z+2lFR|d!n+FVG&H*Dg2H$MUPQ!jbX>ULnd$GRi2QlB-9_i&P~-GO^Wvcie9r1H9p5#)a&+p3}rSsb&yP9-vT`gtz9V{v}0APy7PK&D;BYT8~!xA=#1 zUbSjYJ$a}3_4$Dug6s=;s%t{m8-!kN1%*rUJCy~Tx=DG&{>Ul5N5N>8N0ucr&t0PV zk6k0WGJLTyh5D4rM^nrEfxb6&9Z#Jlcr-mjJKlY{C_?x2yw5xCDs{UT2|=P?XqFW| zNuBdxoJ5|_BI#ED5Qx8Kt-$x{YYxlJ=`o3=?XOwHy`EVLo-NlhDQ;5g`)H#o`#+05 zY@zC!y0B08d3#{JF^LW~-+;u_wLbtly*$ zbuAHmxP8McG~q$jRr1J2?Y2he6Yn1^SDjy$ARMNC5`P8forAm@Vu)o^%AjQUPX0w5 zrQj2#;dk@6E*~37e5`H8ab>pW%DAyPr`I{6>yIK?D!6SPpW@+D?lNMh=LlGlVIueW z-u2qxb<(iSi8CMK;~78qs?5v7)w|PyP7I3&qiqVnmeRE3a5B`(8ve?+>F!Kl>2A`eeP= z?oWzCzQeDej>GlNIl?4e(mTP(oaQYaePfBwL)3))-H-IH1bp_dPZIc0`{zCOew=$$ zjV{@{)j-IC_x6K$zSn5+UM({Hm&u&8YmJp^^1#m2I)8I*W{vxaT%e<~tPoXH+CpgZ z00NI?qVwQrgVW~R|JCsQGyy*i5ZD+2uD{mK-OpZxy8 zSWe6jjqTrKe0={o#>vI?pJQAcVEz8*yFCB5V?6);E)PFg<9~mbQ-GJ}KgR?)!N&d1 zd4hcZImX4o{hx7gasPL0T)cw+xd)d3KiJlP--An#llQ;Jc>njlyxjbP|2-za^}o-; z%l+SR@bYl{=lOuNng1Vi@9cQT(%RG!A6G;KAD3O#&d!+z?na{uf5_UJ+0k(S{zJ{u z(-dAbyR0NaM3Rq_i<3`^kBf_olZT&=kCU52k_&o=a`N*_@JR~@i2i?{@zd{ca=zo} W{7Z;