From b9042c6ae86117ad17ab1f8278cb7c0fd5ed645c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=85=E6=B2=BB=E6=98=8E=E5=8D=83=E6=A0=91=E6=B1=90?= Date: Sun, 9 Oct 2022 11:37:19 +0800 Subject: [PATCH 01/13] Earcut: Upgrade version to fix infinite loop. --- src/extras/Earcut.js | 107 ++++++++++++++++++++++--------------------- 1 file changed, 55 insertions(+), 52 deletions(-) diff --git a/src/extras/Earcut.js b/src/extras/Earcut.js index f42b21f7f357f1..410e3177628c2f 100644 --- a/src/extras/Earcut.js +++ b/src/extras/Earcut.js @@ -1,5 +1,5 @@ /** - * Port from https://github.com/mapbox/earcut (v2.2.2) + * Port from https://github.com/mapbox/earcut (v2.2.4) */ const Earcut = { @@ -36,11 +36,11 @@ const Earcut = { // minX, minY and invSize are later used to transform coords into integers for z-order calculation invSize = Math.max( maxX - minX, maxY - minY ); - invSize = invSize !== 0 ? 1 / invSize : 0; + invSize = invSize !== 0 ? 32767 / invSize : 0; } - earcutLinked( outerNode, triangles, dim, minX, minY, invSize ); + earcutLinked( outerNode, triangles, dim, minX, minY, invSize, 0 ); return triangles; @@ -125,9 +125,9 @@ function earcutLinked( ear, triangles, dim, minX, minY, invSize, pass ) { if ( invSize ? isEarHashed( ear, minX, minY, invSize ) : isEar( ear ) ) { // cut off the triangle - triangles.push( prev.i / dim ); - triangles.push( ear.i / dim ); - triangles.push( next.i / dim ); + triangles.push( prev.i / dim | 0 ); + triangles.push( ear.i / dim | 0 ); + triangles.push( next.i / dim | 0 ); removeNode( ear ); @@ -182,11 +182,20 @@ function isEar( ear ) { if ( area( a, b, c ) >= 0 ) return false; // reflex, can't be an ear // now make sure we don't have other points inside the potential ear - let p = ear.next.next; + const ax = a.x, bx = b.x, cx = c.x, ay = a.y, by = b.y, cy = c.y; - while ( p !== ear.prev ) { + // triangle bbox; min & max are calculated like this for speed + const x0 = ax < bx ? ( ax < cx ? ax : cx ) : ( bx < cx ? bx : cx ), + y0 = ay < by ? ( ay < cy ? ay : cy ) : ( by < cy ? by : cy ), + x1 = ax > bx ? ( ax > cx ? ax : cx ) : ( bx > cx ? bx : cx ), + y1 = ay > by ? ( ay > cy ? ay : cy ) : ( by > cy ? by : cy ); + + let p = c.next; - if ( pointInTriangle( a.x, a.y, b.x, b.y, c.x, c.y, p.x, p.y ) && + while ( p !== a ) { + + if ( p.x >= x0 && p.x <= x1 && p.y >= y0 && p.y <= y1 && + pointInTriangle( ax, ay, bx, by, cx, cy, p.x, p.y ) && area( p.prev, p, p.next ) >= 0 ) return false; p = p.next; @@ -205,14 +214,14 @@ function isEarHashed( ear, minX, minY, invSize ) { if ( area( a, b, c ) >= 0 ) return false; // reflex, can't be an ear // triangle bbox; min & max are calculated like this for speed - const minTX = a.x < b.x ? ( a.x < c.x ? a.x : c.x ) : ( b.x < c.x ? b.x : c.x ), - minTY = a.y < b.y ? ( a.y < c.y ? a.y : c.y ) : ( b.y < c.y ? b.y : c.y ), - maxTX = a.x > b.x ? ( a.x > c.x ? a.x : c.x ) : ( b.x > c.x ? b.x : c.x ), - maxTY = a.y > b.y ? ( a.y > c.y ? a.y : c.y ) : ( b.y > c.y ? b.y : c.y ); + const x0 = ax < bx ? ( ax < cx ? ax : cx ) : ( bx < cx ? bx : cx ), + y0 = ay < by ? ( ay < cy ? ay : cy ) : ( by < cy ? by : cy ), + x1 = ax > bx ? ( ax > cx ? ax : cx ) : ( bx > cx ? bx : cx ), + y1 = ay > by ? ( ay > cy ? ay : cy ) : ( by > cy ? by : cy ); // z-order range for the current triangle bbox; - const minZ = zOrder( minTX, minTY, minX, minY, invSize ), - maxZ = zOrder( maxTX, maxTY, minX, minY, invSize ); + const minZ = zOrder( x0, y0, minX, minY, invSize ), + maxZ = zOrder( x1, y1, minX, minY, invSize ); let p = ear.prevZ, n = ear.nextZ; @@ -220,13 +229,13 @@ function isEarHashed( ear, minX, minY, invSize ) { // look for points inside the triangle in both directions while ( p && p.z >= minZ && n && n.z <= maxZ ) { - if ( p !== ear.prev && p !== ear.next && - pointInTriangle( a.x, a.y, b.x, b.y, c.x, c.y, p.x, p.y ) && + if ( p.x >= x0 && p.x <= x1 && p.y >= y0 && p.y <= y1 && p !== a && p !== c && + pointInTriangle( ax, ay, bx, by, cx, cy, p.x, p.y ) && area( p.prev, p, p.next ) >= 0 ) return false; p = p.prevZ; - if ( n !== ear.prev && n !== ear.next && - pointInTriangle( a.x, a.y, b.x, b.y, c.x, c.y, n.x, n.y ) && + if ( n.x >= x0 && n.x <= x1 && n.y >= y0 && n.y <= y1 && n !== a && n !== c && + pointInTriangle( ax, ay, bx, by, cx, cy, n.x, n.y ) && area( n.prev, n, n.next ) >= 0 ) return false; n = n.nextZ; @@ -235,8 +244,8 @@ function isEarHashed( ear, minX, minY, invSize ) { // look for remaining points in decreasing z-order while ( p && p.z >= minZ ) { - if ( p !== ear.prev && p !== ear.next && - pointInTriangle( a.x, a.y, b.x, b.y, c.x, c.y, p.x, p.y ) && + if ( p.x >= x0 && p.x <= x1 && p.y >= y0 && p.y <= y1 && p !== a && p !== c && + pointInTriangle( ax, ay, bx, by, cx, cy, p.x, p.y ) && area( p.prev, p, p.next ) >= 0 ) return false; p = p.prevZ; @@ -245,8 +254,8 @@ function isEarHashed( ear, minX, minY, invSize ) { // look for remaining points in increasing z-order while ( n && n.z <= maxZ ) { - if ( n !== ear.prev && n !== ear.next && - pointInTriangle( a.x, a.y, b.x, b.y, c.x, c.y, n.x, n.y ) && + if ( n.x >= x0 && n.x <= x1 && n.y >= y0 && n.y <= y1 && n !== a && n !== c && + pointInTriangle( ax, ay, bx, by, cx, cy, n.x, n.y ) && area( n.prev, n, n.next ) >= 0 ) return false; n = n.nextZ; @@ -267,9 +276,9 @@ function cureLocalIntersections( start, triangles, dim ) { if ( ! equals( a, b ) && intersects( a, p, p.next, b ) && locallyInside( a, b ) && locallyInside( b, a ) ) { - triangles.push( a.i / dim ); - triangles.push( p.i / dim ); - triangles.push( b.i / dim ); + triangles.push( a.i / dim | 0 ); + triangles.push( p.i / dim | 0 ); + triangles.push( b.i / dim | 0 ); // remove two nodes involved removeNode( p ); @@ -307,8 +316,8 @@ function splitEarcut( start, triangles, dim, minX, minY, invSize ) { c = filterPoints( c, c.next ); // run earcut on each half - earcutLinked( a, triangles, dim, minX, minY, invSize ); - earcutLinked( c, triangles, dim, minX, minY, invSize ); + earcutLinked( a, triangles, dim, minX, minY, invSize, 0 ); + earcutLinked( c, triangles, dim, minX, minY, invSize, 0 ); return; } @@ -344,8 +353,7 @@ function eliminateHoles( data, holeIndices, outerNode, dim ) { // process holes from left to right for ( i = 0; i < queue.length; i ++ ) { - eliminateHole( queue[ i ], outerNode ); - outerNode = filterPoints( outerNode, outerNode.next ); + outerNode = eliminateHole( queue[ i ], outerNode ); } @@ -362,16 +370,15 @@ function compareX( a, b ) { // find a bridge between vertices that connects hole with an outer ring and link it function eliminateHole( hole, outerNode ) { - outerNode = findHoleBridge( hole, outerNode ); - if ( outerNode ) { + const bridge = findHoleBridge( hole, outerNode ); - const b = splitPolygon( outerNode, hole ); + if ( ! bridge ) return outerNode; - // filter collinear points around the cuts - filterPoints( outerNode, outerNode.next ); - filterPoints( b, b.next ); + const bridgeReverse = splitPolygon( bridge, hole ); - } + // filter collinear points around the cuts + filterPoints( bridgeReverse, bridgeReverse.next ); + return filterPoints( bridge, bridge.next ); } @@ -393,12 +400,9 @@ function findHoleBridge( hole, outerNode ) { if ( x <= hx && x > qx ) { qx = x; - if ( x === hx ) { - - if ( hy === p.y ) return p; - if ( hy === p.next.y ) return p.next; + m = p.x < p.next.x ? p : p.next; - } + if ( x === hx ) return m; // hole touches outer segment; pick leftmost endpoint m = p.x < p.next.x ? p : p.next; @@ -412,8 +416,6 @@ function findHoleBridge( hole, outerNode ) { if ( ! m ) return null; - if ( hx === qx ) return m; // hole touches outer segment; pick leftmost endpoint - // look for points inside the triangle of hole point, segment intersection and endpoint; // if there are no points found, we have a valid connection; // otherwise choose the point of the minimum angle with the ray as connection point @@ -432,7 +434,8 @@ function findHoleBridge( hole, outerNode ) { tan = Math.abs( hy - p.y ) / ( hx - p.x ); // tangential - if ( locallyInside( p, hole ) && ( tan < tanMin || ( tan === tanMin && ( p.x > m.x || ( p.x === m.x && sectorContainsSector( m, p ) ) ) ) ) ) { + if ( locallyInside( p, hole ) && + ( tan < tanMin || ( tan === tanMin && ( p.x > m.x || ( p.x === m.x && sectorContainsSector( m, p ) ) ) ) ) ) { m = p; tanMin = tan; @@ -462,7 +465,7 @@ function indexCurve( start, minX, minY, invSize ) { let p = start; do { - if ( p.z === null ) p.z = zOrder( p.x, p.y, minX, minY, invSize ); + if ( p.z === 0 ) p.z = zOrder( p.x, p.y, minX, minY, invSize ); p.prevZ = p.prev; p.nextZ = p.next; p = p.next; @@ -546,8 +549,8 @@ function sortLinked( list ) { function zOrder( x, y, minX, minY, invSize ) { // coords are transformed into non-negative 15-bit integer range - x = 32767 * ( x - minX ) * invSize; - y = 32767 * ( y - minY ) * invSize; + x = ( x - minX ) * invSize | 0; + y = ( y - minY ) * invSize | 0; x = ( x | ( x << 8 ) ) & 0x00FF00FF; x = ( x | ( x << 4 ) ) & 0x0F0F0F0F; @@ -582,9 +585,9 @@ function getLeftmost( start ) { // check if a point lies within a convex triangle function pointInTriangle( ax, ay, bx, by, cx, cy, px, py ) { - return ( cx - px ) * ( ay - py ) - ( ax - px ) * ( cy - py ) >= 0 && - ( ax - px ) * ( by - py ) - ( bx - px ) * ( ay - py ) >= 0 && - ( bx - px ) * ( cy - py ) - ( cx - px ) * ( by - py ) >= 0; + return ( cx - px ) * ( ay - py ) >= ( ax - px ) * ( cy - py ) && + ( ax - px ) * ( by - py ) >= ( bx - px ) * ( ay - py ) && + ( bx - px ) * ( cy - py ) >= ( cx - px ) * ( by - py ); } @@ -761,7 +764,7 @@ function Node( i, x, y ) { this.next = null; // z-order curve value - this.z = null; + this.z = 0; // previous and next nodes in z-order this.prevZ = null; From 790f7f3ac8b85cba9b3303ddb86e0aae4bdc4a00 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=85=E6=B2=BB=E6=98=8E=E5=8D=83=E6=A0=91=E6=B1=90?= Date: Sun, 9 Oct 2022 14:49:45 +0800 Subject: [PATCH 02/13] fix: redefine var parameters --- src/extras/Earcut.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/extras/Earcut.js b/src/extras/Earcut.js index 410e3177628c2f..e11986da4b482c 100644 --- a/src/extras/Earcut.js +++ b/src/extras/Earcut.js @@ -213,6 +213,8 @@ function isEarHashed( ear, minX, minY, invSize ) { if ( area( a, b, c ) >= 0 ) return false; // reflex, can't be an ear + const ax = a.x, bx = b.x, cx = c.x, ay = a.y, by = b.y, cy = c.y; + // triangle bbox; min & max are calculated like this for speed const x0 = ax < bx ? ( ax < cx ? ax : cx ) : ( bx < cx ? bx : cx ), y0 = ay < by ? ( ay < cy ? ay : cy ) : ( by < cy ? by : cy ), From 7f6c01fb3b1d7fca3baf66c253ce74e2771d36d2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=85=E6=B2=BB=E6=98=8E=E5=8D=83=E6=A0=91=E6=B1=90?= Date: Sun, 9 Oct 2022 15:09:30 +0800 Subject: [PATCH 03/13] fix: this testcase had many faulty triangles --- .../webgl_modifier_tessellation.jpg | Bin 37386 -> 37348 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/examples/screenshots/webgl_modifier_tessellation.jpg b/examples/screenshots/webgl_modifier_tessellation.jpg index 39405b3d5bbcf2b3ca127db7cdd28175d275e6da..868e7af001f2cee96cbbdc82bad82759a356e116 100644 GIT binary patch delta 35243 zcmX_HcQjjn*wTa(_j#Vr_(tVk{+o082jm(cG~(H>X*S9;>=~#M&{&*y z)tfjz#Kxc0^V8V)YK72O<|i4#t-a1Y&hzatcESS8-UC%jtlL|JEu2z~D@B_mzodI- z^OEkDQBS`dM&x5=ElZXoNR#46OF6L_vELS^=0lmaRr>#qCfCb9b>iSVUzdY6yJeRo zX?#&_tjpT>3HITVhmHA>b{24r{>9JP>ob;DK7IQ1XQ}y0YIXwt8b`w3HO`BR6}W#R zR7u&5z-U^H_X)4gRGB{8)UBA+_k0`r)XK^%Kcz49I<-CgdlRxZhfh&kVGi4PMm3hU z-f+B)g5v_smo>**_@Vpac|#wMlsVoEV?-4TZk24o-Jk$JV+cK)pVFA|La@gK+ju#1 zt}z*WCYdxjEwxeWC+kc+r;>>S5^&|)TZ{BGu)R`*7HM#C=lX&sZ=g7bL5f)&fhRDO z@6mb+!wCynZ`}6tukvQ3!+;Kbhu~>I6W@XFqmfHt-Vu z`QV~tjJV4YIG{C)886z=Z-d*Y20|)*0bzDBZFl`#;vMbukir3CuT#bghn{wFMdpF@Mjgb|$eh7}&bx z^rtiGLb4Mj@HFCZFJ|j@VVSBNQHJuDj2iae2rz3YK$(Y#8hP zE6=GSR2V7j!_viIcR2}+#Y?oskYx4Fm!tq+7xCEA31rPd&)?vcKi&M%|Cv$_=f`$5 z3=&7z?Cour0qIiI$oPh`r&3tD3S!*T?@*@|s@z|VThe-$&M~}Vr>Xh6*S+A=r(PMh z+r~+z%=aVb7{;O!I}!+t_mNDukxVqets-zRt!)Nv2L10pSF0um;oNC_Z5mHId~U9N z$%@iCr@9^Xf#)l=_*+&GHGK8j}CDw z<#u+XyvBRgTio<8)>`q0Mj z2!@P~tNmwE>O&2S)@Ouzv&+Q9etwwVRJ$*F`x!^+XwqBPCsDZaxFl++Wk9FroN7@x zsK8i^-%(vw(SN<=6yTkRJ*TpD;U<0R@M*b?KaL7wgSyzZDZ(W+n?D&f*iT~lK?-&y zv7X%CJBvRoABv^&HkIgk>0Dw0Ry0axc35FP&U%kx8)Z=IscX;V_uJggsU*>mBr+F_ z03%A0=J234Srs|LSXn&G8mgcs1yY!mNy(e5DeAWIeAkE?J#l;Z`d-bS5>4kD3hg$V z4>TB}1IH!?4BVqmFn_I0;;YD7{~$*%_x*{qmp@2(7JCM8d?tuW{b9PuU3(j9KKc8u zt{k^uYB_YeTU^flGkP;)@GvstzcdoxIN>rAAc!V+Vi#d(0L0$6*i6~y-=-3CCtJTc z6Ldf%(?R34$M+KfuOQ<M6F^OmSh zy4qg`?%YP-e9ipntGdHiT#KPjv54rM=cgrAw6_%{3qVr`g7sx%+sU=s3XO+4Kr2bk z%uSVUsW?DnKj+tpZNjm|jQwt-PfeBu+7Jf8fVK&^#zE36&sh2wDz`{{1e&wE*ei|- zanZ~RnI6s!{(w5*<-FhVDtLcm#rESBzlXvCcA*00GExL4WE=}a%nGY0Bw6=Bt9X5T z+Oml3(7biuEb)hL49v7)wnxFuJ=!oTXyBGJrC%o*Ub8fvlv!_NvU8E3kF=_N$Qbx`eQ^qn3 zteh~~UytAWsXr}rMtx#K7V}kG>W(}UMd*?&;RxMjT@ab!ABXO{)yLO%!z3haqJ-Pc zXPbaWPf-hhwUnB1#dFyodR&d~J4$T~uQlh^yKJUUxbIKP^={sd6$TOE@)9P?0>rO# zrS>cn%k?KlWT&9t=T!JS>0(uG=#z*h`K98%PJCY8Yz5{pnV7;bJ#cXH;;UU2YrOpY zPtjjjs_fU@XPqkEoY)gOC17yxveNw%ZzXOO{yw}Z?ZCHI$Yi}vLi+5u-T<*>V8g3s z<4GHAL@D9RIsZ5NmAgTOYFx0iO7coQBbr!}hzpZDa zRw{ccQQ|$3Vk8x-1o=UPpHl_Qtx)#%F_aRY_DjOJ)1vgl@pGz_<%-rGyib?;U7bNr zGtF!>CB2P+;_gS0#Kmh|&lQoTA8y_oG^FD9>}CruIRT(LX+&KJ;c*rXv$oRFf6H7u zih)FBO&tA)bE@|inHp28z&%nsC^ieGN~4C~;T!g1%US!Cen5W5fqjtqeTj$hgL`f* zU7vZgqj^tmwrB8ttrfXn z{L=NqfkQ=$VALpMba5Z5F~(iyi!c>8ivNAX!+}gk$6Ud`XbWtg{;!ok2{`o6dJLAv zf}$QyR3lhnuGU_@=YnxzYR`wtriguSla4JN)?$k7b}}k{oAHpQ%e1#L2CNGEH9e=X z<5xTf8I%6&`6q7&oK1rTtCpv&bKh;bNwQf2veI%lMuG;oXh;U-P?-wxQ*@}3PNC9- zYqISOuO()`8uwad@3GiPsO`IsD+g)HVnJqxxkbxG@3Iv!JAAtCEj6yOsy-HG1u&?c z$Cw$|{BSq>UXQ2l+(}?wpaNz!P?RhSv^HTeam9hT2z3=f{L1(zzUJL8(sMEFoz=kS z?xy-Wi^=3(c}Ay*KfS|F3EsHaw&wKuBz>DfJ?cJP$+DJ|k=;Y3mFKWIpW1?x$$!U7 zLKFsA+w?-40r}P02si$<NU3`*3-C@7cX z_qkTic1AWyn6{w>xoPn4u)#T1PcqOft6evBL80v z#+WZeRF{9mVjxk61Wx_a!s3MmOjl-+*;A$-q87K#h*M^cZW%7Sj(V+_vog7)qJH+r zV6x+#Ayt1}X&<}5YPeL{*aTKULJ9g3l=q4g&+k0!E{=RbvmbtR=v~Yu?z%TT_(Zt7VSYQ$s^{3@tj4NvY;?h zk@!;lzZO&7v6b1?H~J#;YRz-z@1oOgj93dL+Z|eK($1pBMRxTDi&vfdCI)){aiiBB z{T{bB%u+Tl;TEgbno}utKBsCf9m70BN zX$L_b3?hUt9F2j14+pw^%Rn%Br8{jMTZ{&&Eu$bbB%>E3JDe`p@XIEbLd(-iN(X}U z);6ri8~gfJ87Npy(4$*bh*rubx-ha-s85fjR=;|t*2}w@?JzY)Q-w>;9~!g|!dgYm zr*i{mQ|3M&ffnwdLG&dh{Q!c(hz=eS*`#b=0zG5P;ue1av*WCR3Umy!Kf&cjTSah_(wJAjsE%!}20iD%!1a z0yhFY#$q564N}97^8t>B1o~hWY&Eg?yAA<@({Bf6JkhP`P17ln;z#6wi0RF75LxN& zY~!zx1VBl6MaikfM)Zem@Y98&KLyXjAkxx~uCa#}4~RNB78V7C_|)Hh-0>a41G)pc z#mzG=K66L#6K_R*k}#ISunD<-)|*8~>cRJQh!>D@wCaN)cYGi1a*6i)_b*r0vc4Z> zum?t)`h4Hly={S=?8fW|W{J<6s6`itWE(86`329#h=Kabgh8Q_2%xH|24a~NS z$GHAU1S2sM$x*~T%qe_`o0+t?%pHu705D2w1fdQi(ui7hCAu96OaI(}9G(|-P)Dlq z8#M8#H?$RHY>Qkev_rO(`Pv&ybxIuqL#M}-ATpPi(s;9o-kmJeX40XSsIs?7Eu5TH zftNkIwT5#Ewh~OxsKl35PBV$Q8B)dJQqj&F<71#YwfdT^jCJkC zsX0@Yt?-J_3DclYEI|N;*r<(ja|n0i?*PnwFsC3ZBh=jZeXK_lt#J@xGCx7Xlqi z9Ik>&Hk?zfk+`I_4+^!V=6h;dyf0?Ujsu0+p9!s(c>qp)KPOb|%j1#{sgs45KFG-( zt$w)gVee!2U)28iOVgOpq+1!bac7J1Z66qJBF$v9T))uo)j0vnU(>0M;={6ToThlW zTrrnvUIy4V=M|chmQ@&so9N+ykqMW8)-b`$>~ zg<~4A3WXYg(lBa0Wh>z9MuD&98Fgzu#G#6!LFy+gv_t5mtbGlYuXM5+&1`NrvOHUv znR|A1Bsez7!8&E=gWO;y=eRK{mfhLPCmMpVpqR@hU&C$gzkBoboGN+#cy{}o>Pj?0 zavO`w1UhRgDV)`WpzOtUftuPH!nJ}B>HAuFXITgHsbEHhr*&>_**~H3RS%P#9+-OG+&NV{khalsdjf-HLMRZp zw*fK%MeN77B+-gsCmV#KDT*=$xxcitHGW_*VNlPWoOeDCUNSn|GJm?mYy)9546!lH zq}C(v*UkACYRjI0Kj#T%Sd9EW5QR(?7>`?+jwmUYm;4J0&6``WOyg1i(Hu5!tbrWZ zerd8K^V}9B^5J8g|2WCXutPI_9NaRz4#UH*&?NEtb&x(O^MsQ&QTCfF1N4J*uJ3LO2x ztI?M}84@sIDRh``zgxdPTD`ga;hkYc(T6wnJ>s9Nf}VAtrzfXYs)_*xX8FuS4#fD- zyz@@)mKA)w`#lGBXra+*cJ4SzV`1flTVX@BIwb^H{H}_b2yeN1HlP5C@{$ahryJ$a z$4+>{w&Zp>?1s{pLFt>s;e$tr-M1kn*WyN)A_k(lHyGNxuUxG#(se0mUQIz7U>XnL z%>(vEH0D(W;qH|)>OkM>++KlQ-+^-9*)4Uv2QGa3;v-!hA=GwagU=)h{imnN#koM6 z=u*E+_e4UUo1a(ljJm*YSM~qGUWh;1?<-D7es}9_%|TvxhmiCQn3=G$7^b-aEH3SD z@#0Y72U{}iLsh7sCZwvWC4I)Lcz9gJmlR6SCq@w_!h>!H0l$*b)yI((MlZ6yuL4;k z_@CnBXJ{5rO=E3c@>>$a3rT_0X(fXOh9OGbOrNirfYGqbYA6 zjBTLnDh*r&(l8ug?U7bu-~A=<#yoFBt=Z1iqI_;?8y7S+x$y76&)+v9yDat5)^d9{ zKD0~P>u&W+2D>M+SJiB?&iIHbnyELt$1s%OhdM?Q3S@Trno6dJ4krRjFq0=(;vG_L zo@LNP&|Q*CDK?zKhvUA4;Ap8Bqi6w3Lq#1a6X`%~b*Vt->}$jXvK{6)`~V)M_oQ0W z($ctHuBnf&Lua~vtYe9Xf8_?v^E*f_jh+1h;RhRKdnQxI^;SH8r~dM>JHF1=0KLw5 ze^MY#(0O@arrrlu@YMW+#-QVrcoqlm&-+#pL8mn(dkE^UzT%j@2oU5}5T|Uc^ui9c z?L#2o*o$ykRaKL@n)KIZ7NDrrt9 zrF_#84PsSQ@HiG<3&^4dcRhQ`l|z0^YM5yS?yNP|;s4hD`UgIt;VjC(49|_V{mZ$i z#k+VHxwsbRR@m2gNbU=lK3#y+{c9wepQcH1$NR$@VP_&OBLaBm&_FvMy13+H;IS0c zlVH)%5gzbk|1b9gfw(7ogp&a~u^YQgMr(=Adv*=(V;eBAA2&F-k0+*8%p$X%_i)S3 zv*83WqY`nk&97(E=Tvl92P`w`$_3+yvXhN$;UvkbjpT=Def`0D{17~2)(+==m3CL1 zQ&vo)ldi_f{d?ak{tOb;iW31w%XddTd?pG+0~O~iKn)G+?rMx8lL!?yApwp?O&{Sm zM>v5jU{b82aC;2#-Y zBx(%(pgp)5gAl$ij}bX^*DCq}3f46{j5aTq_VF0~^(fVJbu^C+0SEHaN9HZO=S2OY zt#R0pi?`HfVmno5#$n`mcHgt%Qx#5xELd@e?sk&(1%TA?a&sK0`E!~ZIYt>0ndQw= z_5FOX=s3V6@IZ2IC~o)cRI3!ekSwD=R$f(}ZBkCmvOe-m+UgNvw(rqHwUEo~_bhr( zJ@?V12L&-f*L>RnGrZ6CP5}O(qoFIqO9zTjbHTBaol*Jxe0^~@M((8X0V2xvwU5Lc z^cX#gd4jY2j3i2Ma)rhFGADKtr3-zHhM+mqz8H5(WwJG!^?ye?>7u5c+c|+_JKua@ zaQ$TLVi`AHUzw38g6D2uxaSM$b|+!mStnQ(w4rM4)IdQ$&hP789b&*%s;!%c_#dPn z^AwNwJ{$2vNz!4xpx>wdWdV-onDPf3K?{lwEjwlLi35)=89HX=D|Na}(yV8_Z-`Kd*RuUbrRRDr@Ty-uNaj?Zsr=2Qr`M>Ms9yiy za>1Bi2d>82`+gQ5nf}G=miRe)x}D#aixRBzEorRV9`=8)?wU{xSbFnMa;Y&Tx5;GhoGHS_D24<-U%pByaB=KmK+!-~A^& zzEyQHp)Kh81O}{1Y$HW4sj{G+O1(VXy8*O*o3xz0dOO-frXYZ`)!^x`D0$OeaL!ky zhs9|!8MvEeHO~6yR9cYiCTN@9gwKiO??rJ{dsQmOY1`wfv!M%)R=l)?K^`L-%dJNc z*d`LtDPrF`x^mp8lI__3yR3gB-7HyLbq-h5H!;;2xT|$WyI1%z@7}bRaQ9HJ{w@G| zv2f{}%5E=eft6xZux|1Pys2PId^kJZ3N5)w`$h3ud>CB?qWuRlXLUVb!p{Fk3^#9e zvxMFASS_g{**>_qXpj#jzS?V#Bmki>k)IEHVnZO8Rjqd<+iM!~iYzTjeb4IS4cNb= z>jqPoyU=?7d7OB_B{kWqy~qjY5(gBdnC&eX4c!AC^b&OX#pj4yg&QUvqiwAQZ36m@ zF(>6)fs9rrhf>upr2o)6%48+qWgWuaP6EN@)zIObTh`bzJ|(=wtM6AXKce({&R_Ev zL9bu^Y3h7-CHSdx)Jco+GZACKuk$@U`8(4CJN}agnY32Cmb0^`3+h_|eCxnD73VzA zDht?g2NSV02yyaz(g=uf%esq2DebF?a%zyEqt9L;L~q1|9~;5 zr+bwxI=AR;1`lh2w7wT)+`qY|RFdR*$|NcUq}|KGsIUsG4@G3rGbLI-d!Bx_xmF9Shn!PghM&x+eIgZH z%n{;0sw%3QPLq_L1>*N!jBYawb}iggvhngO-8io4UsD>+J-(9!M4kA2nemF^xFudn> z(9Mr7#(Dfs&SM6ma&`-x;o^P3Dp*iR4QzF{{yL|EqGv>xj(^6-tFoy` zuV>xIcZNmh18|aLYr0RSUtvwoH=RODeSz6HlVNISc62}LO$u{2 zkw_8-$Xp0!QiT_R&L(cn1V4u<2z9FNt70Ch`jA;aS8j( zSHvv;aqLS0evID4O0Dytq3dLk)c%P=)Q+t4u>-|690%H|IH$VC_U8~1uUdOf6^pRX zLnwqX$G5Q?=f~e~jyCVS!@YjzCF!H_?UBd8)9uB#jc@O+ypKa)!__~wl)A5-(zGUS zaYjr@$w>s+?2xW}1hMIrBAixkNtOKl_6?=?uRvH-oNFjyU!{knPPPo{HjA4enG#pLy+P%^5?M4r&K%I6RjBz{@k>4Of5;=a;Y6UB*hkzvFt{l{D|J3>Bk* zVZBnFgU0>*#Jt{e-QwI*c;GAFuJGHoQ_W5)U*smODVZ>2mg-ZY zHtO%t`otn-Fe*zVndkd+ad7GMZW9pZaKTuu>I&^s~qk zf|7ZGVY-`9(3aMm*i zMAiaH5kv1W*??_d3?Vg2p1m+EmK`)_6eDy&llt}dx`)Fwku!Bi3g}P>E#R~RYM=ja zR7oD5N1?-mf_LrWAwP!CL^$9=hMAF?4N=3&@1`UoHRy;yq2Oe11fP%M>wDWXlC8_u zdXVPCGGqwv+*mD~f?Npd{utWh@v1E$Q{?s?ivc}tVITO0i)tNZhBTe*MlmOF`a9Rd zi>Avko;3~4iCmVTbwMxkbNa`6oWWBEoF45DTg!{u`$u!w1`isj22hpXv zhNTaLh53PFP}KoQYi5j(wLOcKz#Sv~@=*1b1M76&VfS4#XpM`~fbW%?9}ngi4SiBm$`H?sEAwPaog8aF3!&A7Zttn{0j~!i8bRv~KbKvcAyHqweZpfn=%J zkN0do(~G%P7rj%CVT3!*p+zp{yqciM+P^R*WpluwX{;&hoXUI6@1lq@w@frq7yE8* zy=;DY^hGAtrqI$%zEX?k=TA28q}lcXe%s8?TCIOUEY=Z)w|*2bj|B;r@00r z{r+cjQ6dTGZmz4O6fg4AP4nN=dZ`tsElaCiy|Vfu1B%gw-qa>9kNXhM3sMW-tuzRC z_Y(kdB?*ZP{H|;Q)N9_vWO(ppzdkUdvDIW=j8IDPjtK-{(xLZaKR|BFIP5-1M6?oe5^ESPETBOuz zz4mu(ebrJZxX|3Z#dO2oPh)G|@gLM4Xw;i{^6N>|tbB()>vNU;*cS~J=^5YBvG4cx zhr4^xTv&T?fcWS%`-o1?cg>XKD7E9gcXsEXOiOZFV0e7hbSZhKM0~Qdp5}h+6;T$i zcaJw!I>$qOwKTZKysDxn)+F@`Pn;0F+Ke$R96m#5xB9Hksh&(9?oGE7I~qxM0o=k( zlInB3OBAY=os-DLLRbm^C|CU&b^!U;&$b)V!o@{_{(GP)KJKPIBW5KIN z?v@JHH4}h{YACBZq|)(859bfSqB>%LNc`M^V{3taD&sYlK!|k<{#>f~T+XSk*%!#D zjsmIrM0kIwOxXrohojnU3m)+c);t6{jeBbLV z&3*X$nnzl24t3tj4?ccz-7&N_-VZ%S@Z4XEE!6&MAO3tm_4V?HTT~az?N90?1HzLI z1vOH%2A-u<2F2832{fcuxWPCUWyVuKM7j35>bbU$*B9A5Omqy8?-y1{nb@73mh(S| zmwLA|KOMM=2x6Xa_L3f|CiD2Y?|%O>`6`7YHRHkc$3KxTsqB$%79w99&#BU32T$Cf zlZQYgq~gX77;l3ME$;$i&{Pxy96jwOd$s?2RH1M2tFwMtz(=pLLCnDNu@*0L*mFDM z2aS3b`R}C*do2s+BJ*SRLRBw$UWgwJ!6e`*sTOB(-=Y_4(rz56>4|%j{9@lJ)2wct zGa>6qPhqK*6wjbCYoMwLSj4%c-l(>)eyMyaq5JGQK^+}@wBw;Ovde|LkZKNe162m- zzEoX42352HPepR!L1oWBn-wGFD9Wbt28c7Q0zel|LMf?=l?subd>szrAZgs7 zYR@j8S!BBY3%#D;p0LN-N0P%1{v}EU37ie1E0h2P>O?oAWCO<%k4KL!iWfHbz{bdpYmNHFexGVcF;Oqql zFp=CZ`eOfb&9zCp&p&LXmo&qFR6jB*HNlt(&S;G~iu}th85^DfzAPKH_kJ7sM~(w^ zpz(UDld>I*Gn8k9H3}1v+&T{GRbN?%P@#i?Djic0RhbfUxLR1Ftx2d(>hdkf$6Dt= zKbz**Yz?%M;heUxq>vBxa3C}!hK~$v$Pq`*ZrLZF%|WgLi)rUnw}S4Ftn??_iD86^ zm?m54NM3?DsY*Spi*3h>YH09U!;;0@veYS=RcqJV8o%%VNG-ywj^@~{1OyVRPM(Mi zwRee5)lBVo`edxB;mfs#jxG?!)H?g-dz!=aIn}8&oEr^&ZvK-vQn%XE`&eK*A)j)q z>a-A{iYuQEX!Xx(Tr7@#GYP9nS1Bawd>?-P&MYUvz3i`hiE#w&B`a#??s%`|PZ{5P zhqX61x73`JWzCzQ$KE^j|3=7SXRVMQtlf~vWEI}i;3m;)6X8;@_0EY%6&{3K-MAQH z^!A9xFu0Y|@MYot$;;g~Egpbx_N6czHR6J{5Q4TH;qq6qtU0^Do5?Sj%XQS{Z{%Hd&_j(x&3jhNv&Wc1yt~kqn z8MMjV&U?vXJyY+3{9=oRhMl>b{U^j%O~Wm$XER*9@k`w?m>rsKfZi5X40bTL)ceg#uvYQM-{X7m|bdStp;r@;I}OYRM*YPe5FOOc4F4e-lk19Rpu zQ>(F3*FS^yP4pBi3IL@GnGKd?wRYeRU_W`mT7Or#v0b3r9v}IrrKFZi3_of}LK!RQ zjsi9buhVr^_2P{J>@Ul)G4ME}m1v`iE`M6ai7b04v3I@koOS6DEGwXcJKH8;=I7F# z*M`fFc;l{@icI?d=;)FyfO;5y->%i4|8&yhQZqQLB5*Ov0#8*J6S!E$Fn#4QLA;~8 z6i}{|=Btt2Gdf2bi{Z2vg*ETFY>6jM@e=m6PGKi6<;yb=kK#K)32nxia)M)JiRP8g zvm?mlt$D2@t9ZFA+&!w zVG?SYgMRWDFmt)L#a>#HqQZ=agd$|6%uhGX+ogZkY%o14NfEEN^|EZ~)a^{&wJC%C zO#O|+ZGcu|Y#JN<=cFazesCDM5QeE%DWFMpl@{?LAj_#+zI!_DP>B${SK0e!EQ1(FLm!&`6)SyKv0hA=%HbUdK{2w486UnRyPdfdA1ixKMOCUKUc6N^J&;rGpa71` z3yAhD6=d8a{2H5BW;@*CL{i2fbiAR+r>h53Be-7{XC0ZxZuIGzQ#yOH_cSt zh8KS+|1MhM?5eStGE$pJBtv5CtmTpzYN9T5oWDz8DgEXvGiVVO0DrzyYIk|) zuK``>zIW{PfnA2!+wU^`6=Ql)r>w_$H%9WtG_mPKZ@WYQ4hM!r$7#>ilW zD$BXvH4$#=d)$q3GgVi^LEIhky0TVz_sG`>R@y9>y=h@+F?Jz)k3grwSfJqRRH$N` zpr>;DBs0Cy$47e_`u^Wz?2ay8b6NJoe6mb%oJ_MMpgz%aehOM%%R1~$orCtid=f!m$FK< zv$c&3(WgpPl@rFkxhco#pv|}&IDHBOBXOKCU*)n4F#9g+HN=UcB^ERZW$^*bo#gM+ z73k_`D++&O(9$2@P60jSF4>qLb&giOOaj;c%~OjKSABvqnrk+8%cut3_K9O|Z&u)Y zDp3AfxLUfFxTIv*-qKu#eaAV~4a#eh*|H0p!2<*12C--;e3g zdH}j?6Jgn?(dk|Eq1U(EMa;eQIRh~cv9r1J4Wu_)C{Sc#0vxG4VGAoxo~SNa;ZT-@ z*C&$;=AIm)m$BPGdBL{)ITbzAg!Fxtt=DyUV&+n_O`F0i4LPqj&AiRr{f<`b#+tVx1?EcQqpuIbkWTe z;mnYK+rvk%XGZhtNbKH(Ml)Bz6Y|5LKM=gWOYp)KfMSP#@)J@6iVOO0^Nfd}@;&|I zV~H3-b6p(WG05cMGl3@l&ix7`OP!%x-NTvV`oyBe!T`wo+4Lb{4+l!_eCBpmL17z- z-7HHP7gTZcxk9~`mige)v8D0Ow>6}RSkREiMVWuB!hLZUQ?kTzsqi{*iH%9gR-rn$ zZq@*VSwr7wQ|u?h&gRll18sp&+K}su_oHZR`j{72>aVLj`nL;lG%hlOq`WN1@!!a` z2yh(Gdo)mCnlWG&XlYa)mMzqSpPCbGyfD^ba(pVMHfJa_q?Ba{Ga`T#TIl<4O?`OV zeDk%qCzxek5vD6M>Bfw~G@z09CT?B+^b_b~&=NWlV`0d;LdX6HKI1*NA~aSzhTT$I z{JUbJr zQI&ST!`MlJW-Gu0yWgMu&ED*3)Vn=eQt(rWUAs+le0E-KEr(tON zCY{2qpc_L+EMO6bCO(%uz9lH|f|jrH<*;RWYVpG`<<_5y&&!l!3Wqc#RNB1}2bA`A_{oB`NdYwllN_n%$tJGiR)I7NSveyY3U-}M}8T=R23 zFOFuz%UjHCYOXOn*HjKGdERRXaXBqLoLcnD(8#3CuTeqiIX?FGpTYC1Nq_FdGwLi~7No9c88k*>w}_ahawZJ`~nKFp0RYxNahM<4&E-*GJmj3yX`9_zJx zWARU-P#30H=X66bdu44u)BCLnY*`c~nC{uD^%;C2O0k`@S>WIw0s)S_q+fX*yt!u7^Q>e$Az7pBg9kJ;vN%rX*GwJeqh{u9ju{Jh50#B4XxrfD}jvr zO1Eu`2J&F_Qqw{3y|r1A;_FdqI>>9Z$yj-QLqkJaUVVLCViWRLN3ypK^0yX$LXTkc zFQDsTRE#lF?j`iY|LbB;xxwIRFv642xfXd;9syjbE>&!Mq*l-gTfQ$bqVY1Z8d(>v zQ;}{~2KIUUt4;p4@tc}O(X}7)UP{bt8mJ7v%o%rg7ah@h!SNZeMaAY=xt6i6`@r0? zZ8Jl1ODUg4yDG+{w#c#ICzm2ng(YF2ESa(t-WG0>Tfq1Ahi2NVstSQW%+v#v-aW`Q ziL6mamLD*Sh~!_+;|`#gW|=R84mOwibqe`393GgDb&Yqo8l^YH_3$?b-J9DPO9O6t zsE?Jg33sc- zoW=`b5>h}+*xL&Ma(2%Rjx&=Qn<0HbGvDmlLx+Z=q&e(`>X1iyND|NS?dwp8Vb_bM z4{uU)b4>RfiC8kCJBt}7R^^<8BJz=llVA5|*n(bKj~01oTMk)l?``G<*0!MFGn(e* z6|NqYJLM-9eP@>j0g}$y&04YpWQ!dVjku2|x1Wimg0t%&mr377yP{WxeZ#Wl8fxN< z&2Fn*|BS$jzAg2eif6?W!RB&Kdb|%4)3qgb8mk-3r>DS;u)>*;o=0^N z5aO1z{*cC+E3k+H@P;nedkUbk3paPpxS`_{-h zo4iT1zz@0Ck5-nSv@nN)%uP{sR+iiz*j@+#4o(YC!@+pFe3Wmk8Zr+6AZ`mKToa)G2*kM2e4VI)K=3pX)IcX z!$J>#11&Zz0(|eT*giOLt)mnx#JEX4v>H#Zaz|HJt~l;KD!ezBe~3A%8u1wZeO93t zGS9~D#SKRdHBWWqKYps$((C4Kw)U?hWm8?yoJL~F{pA(=E95%-}aSv z=Dut0ohOJ+$vZoSiJR1DE(Ea=ZcrGmbfVb~wE*aSlj9EdqvjtqDy*kpn`{J2{obW% z@G1uE6w?0gVSC^{yckATUxk0N9$Y?T9|xP}rC<)ca>HZAq>8CO=o~H7bB{SeC6!`I;g&|awRuFP z-+By5mMvb(tjyF8s%s|3Y6~E5fFQxMp*xnk%f1*?raU|!tu?ZQjkTFVjgIW-_H^qX zmCfG1bd`$gGFBsGH21=@CUj0kJD4s{e{1vM`kBy(7c7#^27?W=wKAeYq!<9&*CT_^+FoWl6eyt|3cT8b$=~jqu zLr-Esr{B)093*4CM@U9weWP(NxQXB2G^tpX@oD2Z zGJ;Dx{WOmkz(QKn4gmJTg02q1rBMKF`z7||A8-r}N6)p+>Ii;yGcjiy-#DgwJmO(L zt)h?xoKpBH%hL=?=+LLi70{}o+eEG%J>{B(E@fL?;h?Qf3-*4&GpVHIaIi-;3SgCj zTdGguNw2^u+1QtfB?SH)`)MHy*uB zeugwX>-pSkddrwaxX8zG!e81hz%e;)<7n#1>VYLK0BehG^>~A*O-g{v7U_!4Xp}CP zAX;ULi_hA)n1+MI5t0?8Qk+ZVkfoK`q;Cr(!sN%)B>%S;qAqa9FLTuFv-`GR3?jJs z_y`lB9jkKNU6z>aZI<4LDT=Uw{#qJ{jzEByE*G=8L$_&t#_;gN@lZolV}C3#rX)IuSDzvP`jgbv4 zmylZbRINs+j`JmLADx<5)R^)QOGWNzTgC&AvVK$ZBIOSFf0K>1EGtsQYNgx?BBBrt z81H4TS_KlsB(c1rF^)I%UQc6ZqofM)aQMt+l&pDnD~0T@j#nc}lXM6vM57x0YcGeO zJ}M9Ju}RfJWW}d(ihdGOwMglQt-Q)}m3~i4kUI~edWUV6d<#M!J8iL_RwIiI6M^+s znD@-8uG#!hbs14>uBwqvlO>@;L-w`hU?tdP$QcQ?ilBI$q7j!QJH%n_XLK!uSKi5I zBKR1Ygp!doiL3#(>@QPYt^3UbD_2$pN>lNdE67bIJbw&P7J(BUCS)Y#m1~`Jbf-}c z8$wSMJOULWVSk>Aj$mzO=r25o-7O3aq(K7Azyf=VBx~^J2w+%mJo_`O4d)B~C(NCc zJT9tekePepw*2jZYWVw;aE3oiDWDq~dXGzWTYEQUv>ji!%>TGR_; zE$#U7Q-bGlL>e)FSLR!Y{vQ)aux|v&6=Ph4Y(8Bnt8JO~gTcUaD~AqmpG5tEYTtE_ zGKxY%bp~G?E)e9gG3MM+h(}~rM^!o%+Mxa*4!mZE>OG3i2t^1-lSl9>L&3hQi~oh# zH)U<`FkDS)>VWwU2?2?J^T)rKH`6xA-H0-EOvsoo8`zQD>YD>wt%af#hB^mIkyVvi z{H6OxTZO+Zd{gu;_!0#N;0AUv7pO`3gz#Dpq%j$BQBt)jb*xcPj{6kgcBPxTs^;c| z4~OA;hfqEA-VTFovY(Zb_w{=Sr}ag=w_&A6jMYH@+!k|L17M*`?{h8mSE1dTiX?)r zN#+Ev)@gon)VR5e&}!LWzv_iWVW$VLzr1!~O=a~}BO>rbbT-NSVrCtl)h{#^O7L0o zambI_KikMP5bU8Pg~{NUeL_KgqFWCS9j({Z%PWz4Gy9u}Gv2&gm5IEy6NIg;k%~hs zg^^5*BSivaGY9tai}oFb=02LU;=a-?6X}L;Mt0rjI?#NGGL60ox2X>-L4H96w~le5 zQ$;933~tv{*orkm9WQ$dNt>IeZ8L_T+|Hf zg9?-kT99NR=`2gm=o5KK)P!gp>vkhqmQ*PYFrKmeZWv3>3tWV2?5Y0|`_pH~tL7mw z(SUNCj{W0dB5S2tVaNke{x5;@=IC?Nc{f-eTR z+EmLb!?HjBE9_aLPihz23D3j4PB;6b3Xj&|IOgv-Lxa;14}IGNx7eK#J-dbMAq)O4 z>kESi2-;POLYCxcbxqF?XHN7B{^Pn&zL>RIm79DB981o{WFrfN?jNJqq=Kb6qYecP zRPnEh!9tqI{yt5ZwbSv4m;p7%S|%`NDpFMTa_;DaOG4)c`|S*5h~Y$!MIWGZtdwB_ z?oqKfr%yX{UP$h%-v%m)q2$+&R`>8n$q5&`3B)T!x)tc&poodnwEl2NX&6N})JB=a z8&}mwXs&`^RB`CI@unqyy3WS&Yss?eN?Z=YnYUWFv(UXO_bV#8THZ|D^EPU2)0U1lbd?B%UgLL6Va4+WMUZkFwB1VXYmd%X&AIiZDpwtIGfG6x3L zjA_Z#{|da*=MEai)<|}#0#gNxkZ>gz9E8@_qg9p8iw4UAfsUI@u;Ram?(8@d2V|XI zOhBtufNu2eA_L8l>)zO!!EI~uo6Uuq=7o=kF4Hs`gz~mMwy7GRxM*%G<@0G{`{ya> z20fa*BI%-pgval^UX`J3c_({Q{*hT6I2kAZc6PI~3=C=ZQxw+TFcaMn+LO*{?u=_+ zHQp@Lj>^xvzJ_;1-wId&>8hAF9lpMcMpy`)(IF zUqFM$8{)kn>o!D@JnDxc9K{$SOg6hnR&wMUsjl+#UCmtBmP_j#}? zgFUApTbJkG)|=s{FnTHW8<*CE7a6=e{Lar}0YqrG%&364nQAyD^{_6ld1A_ZyQr!p zKMBwK;~wAr^oE@Utm7%-*Ip2HU31lyyAFokC?vln+K@zdL5s|Ixv)a2VJN;;sF1kR zW!yHoH~k;+x@!mBt8>mQfXg29So~gqNmWINI{gorQ1j{CsCDZ zw_^PBW8O+SQ!_&4;k>hK*a+_BeuTx#l}}9O&-lgGo5DYSG5AvC7<>E*$*2b}f9G~s zSU2s{f;@!@lm{Hiw{OqcY*o(=S@Q#+?#WGHd@l{{a!giLX_pClkH6lFxHktmpMQ+$ zDsqxlkWIFQ(DmJd7gf^V73RUUMESpAK#1g?9LrmZKK|jJfNfHhrG{&k10JQb$Ckxq zTQMA1>o?Sy$43obZ#0`oTcu=Mozxil z`qVU?%2U|7H@@;&%r!0)4Xqc}qh&X&k4}7Q8>x|(chn@3pGA)VArO~{UGc?7cBlK^ zIm@LddN2F!K_3B*CUMHcCv6EuH|fGcUmfvJ(y6=-ulUvBZsOAG-fj3(;U1=@%-TSA zVcR)qe&j$`x@F{fG?nWqGqmauQz zua{&0JWJ05YzD2E8!$yyQG?tg*4#C?%{G>5yhX?2RpPC0`l9LQi*1f&!Od^?at*sg zkEGP>eB}jyiQAfLB;TpsY<;;V6=au6XR`5B#xBJnFK4mJ+P5KR>|CjlBf2I?6wfx) zo+HnTNdd~AVYaZMtw<;}INQ{In@TB>2xQ2!CAm^-)@gza8#dv~@|%oS(I5l#z2v6bJ~%SPl%4<7Ioot*BB#p!FO6%zGPVWv6VzQ^ zpJKG34_~0HV^1%(9 zig6aOJ^O>oO4D5$MvfDHpZ`OUr5-n~klv-5w35}t=z!cv?=|iyYuQQhddAztK^wqM zO3mAS>nzdnvS7qeV!h>6I~z&U=Pk3KS)(FngD|)q90G<)lNpmM%*95eQwszF1FV<4 zmli{=QuD=gKtpSk0QSDYkr=foCSA-nLWcAXJ}tNZF20w2nfdo^=n zJB=uPgj6rL;)59-aaejY;t%*^HxS5a-Y|?vE5XWPFO^Y-se_0L-!}Ix6d3pzz!=lY zv|8cNfJ>+@bHXk4Hm{0~>lY2w_Qm=pNpm}V(c^P+jL&#rdpGDBy+}V!((jk8y%z5# zHI~zi3`XmFL&aP2JTq)XCaQk;l}mced5W~}>Pt^F?|LpDa65&F5`+H&G*^BT`ZB?660WdPX&vWK5@lB*}NqWJWfBXUhguev#imX@t zrLo>x=h`@-pb%EDH9J3o7+Gd{ zTzOsU;ZK;v6H9f4-wBt!CRHX5j1ZHg+H>MQ3Zr+;aHp9&CNiLRx(dpgV9 zb6EuMwj8uy_kGvsA}h=J7Y`gv9dp6^FAe+I2crBlYMy_%R_C<(xFUKN499A>WYN; z{GaQjr)hx$%M`29b*+aLyQWhfWH#$+Rbj1{GLC0@66dO=N3W1Qi18%Po%ZovCBr@mCiu;Zgx} z6dTSe*TOaPTY?pG>=p6@hiIX~bp!PU)1^>Az<66*z#k{F zCiOdL&aUD1<=Rnbtl?MKX0i zFBTKlnU67;S}JKf9XQxu@?@pZx8a|>%InHyzKHZ1jL>KHGcsyzY5%QseWeRhjJ9Ck z=hoMPl4pFUHMnj#$T}*Vq>q!X3X<&l(CR!*EQL+ZRSJ>nGr?swK~yGH0V#tq$&S*@f8pHw=v@!5?&2 zvb?%a%#|)k(U*9mIPhdM4#Dv!x$U5SdUu$+$PIbT-7&f``Z@EqoJhObWE?Mgm#uJp zygo~-Fp+w6LNfr$^k16#L~IuBliEe@3bAixiB@xEsg^3}@u#ot>No{yz4Lu%&+GOo zX_Qb)(3x(mv#F!0Eo?wUdM9a|9tson%QcW~aUWGbNNaAcIJ4EZz?=(2dh85a24L)dfyNi5t(O=-c{5(K>MC=# zemK>xBpZ%!K20ksY-njfQX>{G$&GP_S!R!tof%b>JGFa6b$UmcBYL$fIZnZy*-sx8 zHCgFt^@|)hdRJw>!7s{PGP-*INoS9)nDf)ojI+Zd4Fxflcs6b>YSJlju7Z$**UQJV z5}pxLf#?}a`oO?d2x)`PY6zi{U#3gQ0`tCRU$k$0!6P+m)RC=v+p%s(CZVITFBRo6 z0n<&fh{J5#>zy7>fsOb&FSJ$#XAIo~dW8P8Gwjt1--nFb)Q;{=;0&dSB{&kH z6*rpD`Vx72(fPi9go|sH*ou1Q%dzmT7g4`~W`$~(eKQ_G<_OMSHEM1n*D?{qM54E|cV{?cVJ^SMLKkSNp;8 z@e%amw%DE3rJ54*9h()oxOP^{Aj_;Zcid=r>l65mlcshaKXmWztB8F$M!xJs@DnxO zUCs!NhRiw7j~v*gIsMfr|EN*JPvxzIQ3hFkL$pklEXhV#yUi} zJnyG29L^!`Zay_iLR{A!wAQt(Y(7$!Ic(NxFDVNv2_50tFngx+0`6o%S%^m**+{<) zqQi~$0H08G*As)}NKYxiltN+`>KfSGzS3F{&z+zI_LcTIO|r4n;BU}r!-*pJvLQ%{ zd2s)OFHMBUw3}wq!c*GfC2dY5c!m00<6OgmBQojLP8^E_v#@8f!KWCItCsV`IJ6KM zT&KIhWksD?ZxIu5qsv=e2ed(k7lkNT8*ELszFe&;k8bu)JHR;RGQR0|Tis>m$(yT5 zP7jl82ODERS3~XDA-{&o@C+~`lA=IYXO4ED+gV)^?(* z-1**KThDS|eEI@3ux;~;B%*&&qVxzypo)=;5@P_Ey1fr_C4O8xU@`A1c(x2&>4&_7 zFc+?Bj=v}A3<{gKhIrHu(UELDr9|#sA@jdWekTc>#Vg2^@jXw)7^OBL3X%=RNoI0m z0+8CBqPU+^`J(Cp3Eo=}!Jflj^x?v(MSY+v!uF@?av?Rt(S!PFLlhcb!al;;uKk>9 z1><&}k`-4FH@7p55yeipvnQDOE~Rn*XGLPtNv6j-(H#MhcnzKih)H{nlB(wgJ1oN!$Vb=>rgs&83h+DTX8pOJ~hT!0MPGPev{ zP@nsG4_{)2;ve!A`n=!xdLp2-KGVcj+M_PQ8*~J1scDNSkj;72>elsdlB{NepUGtC z4c^Q0E=&<@?HqJ^ySwH>cd5nP+l~ zt+AwFzRc6x+g~8Z*OM0!=lW%kduT#SEb3A5{|nIm-#G2{V`khMg+YYKN?k!Qn^T5| zsVge|sa9|P_C>CA%AH*i_V&5*%FTb6%e0WMu6zi8Uz8R4--rm#a zp;%!+lvStR_d5i{MfQPy>U|4d!To-nC>mUdJ}nXv>6Hky2?Suw!aVFqD&{Y zG)X995RrcQuwx#Tey)Ba(Bi3L!C~h9o$(CZ68SEIFp0+^uqD)Ufaajkso_=M;Pbk~ z9A@5(*JE}1?pi{AfNS9~R$Xq;mnmHtSA>%a0ichc;h#HwUlsH-<8KM`78R%K))(wH zl%Ip=$HTQ_z|+2oxeena?(eF%sT#{FVpeBG)T3l?4&Snx)%@S^)w&6cv-yinB`ibc zr}>4SUq=UBe{5(9JcOiu8eS<(mn*L&EeVr#opmlL*HK!i;gEmueSLX#>gnA}m?g^# z;78s1#J^dFL^x~g-KCdi@8k4&ldZMiYkl5x4+dyW<CI(r@F(q)aaPqiT-1oKs-x9|IkES zJ0G84uTrhKN6*}m`bjl`teN2sBG~;IWScKrlo9F(l)Eu!p^opw)O$N1ygd(*D!8|52jL*e) z)UbvK&gpn7&yhWZStinJ`508ZTEDlL_emv*s7igaM~RFi>FstgVj@0q^;RmpXC|y9 zc{M${4g+ME%KhFGh{0oX?ik)ngrRvdZFu{o|NGpL6CczdcPnz}=!Rjw;D|9K@Qt{u zqpz-}#p1B85MQ8E(q2$y5f)P>?{OMvvtM&EzPE~UK~Qs+>DYg8s;gDuBztmTJ5jmN zucFtNeg$q#QcK&15TWqB<%V2E@A!2u*xqI~&^Zui+h|x>vdOitpJG3k_U_Y=(4=AR z{U^=~R>rGXk==o;_Vd{j{H)TT@IcD0W?Jqe^~EvpLRI?q^i1Z&!7)+yT%cam zC)R0hHtwD;JF3@RTDgn;5^jl_$C9A(N!*xjD90|iqdU7htrPgEO7r+ci`HdrV?u38?^|a)>QU@6Gk{;{o7#A<>*SXJB zTzr#ZWU&hJ!y!AD=IHgfY3pplY%ZO^qMCbSZ`I6V)V!s5)EvvyX(b1$TP0gdG1LF? zF0^`D1N0kyN;87Jww^YGGQARBd%VuP{$lY)rNySRm>FEmws!~zc|3w^as_U6-J)~z zbTy58CTqzxKXgS|fo6lLV#yw^`{!~STTS?*Rlnz-x<=@< zRAYpAu?<_)!p4NNpEK21XI=#p0Bj6&tY8? z6MkI32fwg@kIexcf*~A1G8Zwbb{7Dl4Zqb1$zMLW;pdE@+@S}oL^Ks5P{HL^>WqYw z@u&!Mo!H5SYIUpXsN+H)O?JU12cPQvrWKvb5^m3~TO=pMcclOacWIj%7RUCVbEf>6 z$YcdM{F=h7Ba`1XH{^j%_5X2X5L%l1C3|X(ccR8H+b#<&jxHJs z{K{FJrYQcV%*dk_+6Os2;5gk#ogS{p`--Yb{~7PQ3W^dS%B-l~wDL=6&_9)}^=C!oC$uY+J& z0GK*ep%%r^A4JWcRGb#dNo11v53XNDu%TBmfeAaGFc2$}LON&P(vUZ1hZVjk{G|3-c)(sMmq{2Uq{L zhEEH@EnyKXiydnU8btta8D}wsw-;Ypne%r6+)^`Ze305Ibu1dK^84piE&$#$s2mqk zv($t=imqx0-!Z+B$um^dQFurwNzGL9k!>??jFT2J`gB?(Bv6bgZBb2L@|1sDra32L z4%Kx@+6*zUJkarm`oCDCQo^WUYk{uOQ103`WUmC1&7l1%chq5hPJI39Y;=B@RWI(@ zee>SkUs+pV7_Z>K;hkr?x_HN4uBQ`sJxegq zP~M5-h9)x~f64FBuGTl-y-`yuHEVpl269RGk^o5?y(>^K52LbQM>C zu30Qx>A$qwZ*1l*>M6-C>`AjWzY;yAG2bKn-7rUb5f&NmtdvTw(>5C?Sz_nvPBv2N z^ivgilfhmpM%9d%EDdqN*;Xu-qJq98wjkYChw)O6&9IU<$G_6XE+ipln11${S*1efhY%!-Q33tG$OM# z@~(4yOED+03);G-8>?w%mm^qjSMG+hy}r`&gJzlGgPVMr*XmRbg%tANB2vhDaejyC z;`_br4wtuA|0^%}El6`|@0xH&!>`iY$;(&o0hdk>dJ~Bvavu!`HdNp1&kbthY@%3t zu+Sj?%^v<*2>qvfHNEd9u;a6JuYOqser)}G&F{=bm7z1_&bOK3;dw#omc%XNbX%XU+v|~_(^j4`l1sSTfN`L(f zutG8PKl*n{va>;LQQjeN`IY0GJn>9xbWl}La2siuBByGBdOI4aiZeWjwZZAx+#+&N zXg5gD{hm`uD+z7o3y{UjQ(yF1JfX%BwdKRwBdl*!keKAaXJ5N9mWq8 z!>SI+Iav^mg*5m++SGinZkA9}*#$@q3X@!TXQcj&J1;37ESQ~T=GC#1@19cVMoCbz z%EZ2kbPx}&uk)7AiCCqQiDxmf-}OEITJnRRId>t7M(zzdV2hzB_OHoGv4^4B#JLDn zv6W``3bP}tb`z*S9G>S;2Rz!5oEuS%xhFU*{3NyDsgU{I(4fH#xZS*ntc8Q7VVqh zQdIXgsrx1;gVZyw1%>z3X`dbH7RrSlowiVDV@c|Miq9{;wBM)v22|PF6}AH&P_kBb zTLObYJrussNlS~Y-CifND$AfRv1v5d{^5)HIF5QWbhv|vT6m?9zK>w*717bg{z(V% zhm?FmXwr85E{aY{aTn6#Qd&G=+I!{2F8z^ZP zs>JHGytzIKEs7-R6oBd;yii$s^_wC68+azY^scTR<-Z2t_kqWQ!|u8o)e)1snu?*> z6vnQm1J2EM9({q1Lp_yo=#f$E>*5@YD`z}f%)-RqqpHN}6%`AW`#|AjgU>D%1Ndfa z0=+sZkM3yf++cM>S*UG2qE zZ{nF~SYK5R8sko)xg7wksevW9A8l2%;D9 z=W`lVs&u+(UNUUsNS}O< zgF>%{mmp+by~r@wA*85#FC%Q1zJ)>>VECzg!K0OqOK#An)U)*X1OxFNGsOrK3}+ zjh)00HnJZ+FLI{C=;f&I^1<~#pTUx5MNKjPAw(i`mW3kkM2FVCXd-2wn_xD5%quLY z6NF7MC7rG|T#jQ~Y^Jz^JlcR-jshA`*esHb^LWTG`g%7b{U2HC%_*G7^K0>3pYA_X zl3dhu0=7k7lpDV8;e8_Yl2mA0dsk958}EB{{b|i+cSnDdP>|u`VslA({dCrwbJ46P z5pI9q9G#Zo6yCFS8y9PB3OoqS} zUP00H#!U@2b=Sg%`g!htH5pAAVh+)auHC;2;0O^m&k-VosYlGZf>kds%HhsQvEWna zpM@+{y`Szc8b4hH(VocYJ+>S$NXwoXvq&#*NBSPN=VdMZ7>)7fo+GV6r}nE?EE18< zOv5WV;^^tUhm$LT`oCe>L^O9o*3+eE|=)x1z=47y1BT zh+Hc;D9N4+yV*=DG~8HxU|%pbCufh)gmC{)BsO9sQ!nqJ(Rt= zZ6aX59=g}?XJ6O6(S>^d!<(|Bii#d^{mBf9ELl+CN4@yyh@>AxM?JFuOouzt`rjEC zf6j}{nb=l_b9+ju>=RK_IS`Lbn(PhZl%~h!#dGZU?jMW@t^SZ^s<1}GH;UVJeCK#E zf2soJOrMDKn0g|@W5aXuL|P!w<66x3{Sih&K6Tn$4(Z~qjqHS7_LJx`S4T$4(EGDY zlR8xxn#NCP>lAOiw;TKBR*8Uh+S3V>%yCI)v?f7jv>V?U-7Z^ zw{6_mR#nteSC;TDSnYLiA1Eii;#1ep@-qU@i6<=Xh6JEwirV?9kE9xwJ6u#QQ|7p7 z$;vA>G(jTxrSKEP750MPa2aHM?toqD!{;^PgtvHqNd*-SHo*Shvkb1hn{FXM@@kQ& zHIK|Y5kO7~sa{k$0ZCV9Hr}>CBR}X`)KF=i=2#gt_Rcyuh=OeM>S z(cVy3d0QMMGxtHdZuOW?U9pzs?BKoguM@?Ny#=`vrZq~8-M9&T-HPS0$!f9Ux9$;G8`a})?5)LQa$CH05ysm-p+vecs zUykb~T%&R4Uw#rQ<+-h({dyy}Vw8*;+VYkV>9P2|MmEBWtg^<}&jlH*F+PAOG!#jy z_!N~pCtF%-Wp8;UN!rfLWEN>>CJJjWh8=02HbrT@H%rjk(RF(H{{yI0Olvas>TTf4 zc}TuWh8Hqz?B~e0WlIa*{$G6}{|Wrq9HOoO?fYU(r`F6TM(6*n!^e{6^z8 zoPFuE&A+UsaddW+DBIV)MAy#dyu=*jy9(oiWNOANkGY7}*&V$iAkzX;c+QttDArs~ zl&-04K{NYb1`i#Gxk4j7OdY6P1?LJ7D~f0ToG1UH@J=0PL3M^$z`+n{!^dAWe0hCm zgyn=Ty>hZy_qOfn^5=TjId3MMTCQPSt!)sF2<#AG*-z5#QLI22wLBgwTWfsx_FK*$ z8G$*Qg;eBNLp^1in1^>g0D1xl1=KbuD)*Vh+qKGHmVF!6sbE;K{TCHZQEC#5vkMKl^!bTjU#amMxhJFEdcNE0v}`|>Tn4~6@CLy zMZH!tS9@D~d1TtZhkfq6ADAAA(1w0ijU9j+?R-V~P}lr>2!|x=@@)w*#*l0g2Q$YW z<~^3-xyB}~1uL|kxc&=-<4nn)l8=9BU>sD3-d3EFE{W@p%@1UE#RUUqjiKlpnP)w@<@8o;P(q%X!hoENw zbFBlItM>!#1^&-{_V0NEv%=#FwYAAhN!*<^v(HSqi(&MYBhX_97 zr6L|&57SN26EAFIJ>zZcC2G%iLL4aLU|hwDJ~h97`wyxb)?;&T!H;Lw!W``^*DsTn z@3T67#|1pPjr|VZmPbm=~~^26q3$rC`fzTZGmnH_be}h+Qi(YZtsfPua3h`b|E4Uy#vrGkB6q?{lUzI z>8!Ua{<9S{=k;2=A!x}-ZqYMau;g`1U|t4_IC{5tDi>PMsXhjff?IXn!SG;PCZ+u^ z&9*AWX10Z(eL*#pI;)~t*SN8Y%MuYGoD$w^yfrvb^fK;Pay0)B&d*b~E{5LT9>YSa z4Ss0P?#|&V%4=l#W?-^9g;}18PsW%pMW#*v8P%wBe|qg5SO&{;8ruwpPp0h{0KU4e z8D~`I+*N7f$r>!dhGjEr6%;9B--kYkr5->%X+^?5+VSgms1&@1s#AdNA%pT~73}n~1NaPK~(L zq|MWUG*nZT8#x{i%OkiI`o|*fyQT8kB`4KY!U4~;>4q|Cq%M~+F_zUZ(|buVsTLMo z4{fsuaiIiyLxw@GaQt~IEmXLIX3fkAOx)z{z<4W*`!Aa1ghz?VJCEggP~W!|ye02u z`?@DC_*>`P5B!qYL<@h*D8Jv4KOLm5J{=jh&A0RIma+06x-Yr< ze0meec!B5H<(?P|iw)G~opjG*80AJHo_iVD3DIZXX-C%tr$ zHAiLh#eE)q)WiAib$nCMra~Zxp7zTUzE20OFY%Ns0s4MjgvYvWj^3aJ{30C zPI_&_dE_qtSp?g)rdL+sk{?TIx4Xxiy|hBz=_M*{3H)5f-TNVpPuY1&(&S%Wy;ua@ zhnIHgK>;xljAOa0$)PpRkjVQot=~14)iE(v0b=&>tdM=eg!kboHk|a5%zu%mBE5*F zMnhtutFv`BtZL;&BRPJxZ>+S$dS(wDueb(AEgNuXcawYiO{AdQ-`D3tM3~Y$YU@AHX+YyBk*L5L#|XhJl(2 zB_&6}z4fLupljHh@#SIBcwcPvaIK53))d^NNf*h#SOYWNnASb@bsqe%_TQjW^x1Pv5!OfYKFw0gnqc*01j+9}~Q# zE%t(*5=bJicT3C~MT=gHk6?ZTerWvXkLTn`)p5~OE+B0%#}Qf#5^=!sU$?5~|{}@t2__={OouEk)x?#7jRb%xO~oFQh(s<|;RE<%dQ* z)5|yUVXpL(Wy^nQ^hc7p)wa23CDzE?*HBJNk-2<$nUkUBknnQZoH7ed4_jIoZ;gh- z`z|MRdU7f6=f^4rlf;Z(P{fGTz^wV;LK%0{eqOmVr39J0Ia^sESrGH>Vh84WF>#pW zbFAvF>PThsPzy;lW9KL<`8hyD;f(r1#E7sJWi3}PwfyaEnR&_2cxebBLu?gd;uT@I z5^W@nN#S2WWw}{Hm2|I%_6V?R=xXRn7iK|4cFTRO;Py=~a zA9~v!yBqu0bR&3xqG*+2-Zb+Z*)_ifUvsknjP9w$iP8=}#XTwRRCnoM@@(f#CO_R; zQay{o3HSYCtb#2Fz%2im={>Y zfPqc^pLg56MMCQPCpHp9pTO%sxgYo?_5#!!B~|W@lI(Y^AK;Pk?E*HC_N&BXTRB2o zUby=HH#qE8?XNl64ZF;zw=Y#oh->)CoN+cLzg{R9nu1q25u+~-UNasb0&xSU(jRX9rDkz=`Aye_w?50klr`Y}#*lme8 zhRSv^obFe=aYH(XSUvr)ia+$1pFzY7>B);E5x1Z%8e6uDK%Rn_0zEHx=BFF1fz;&h zfj(c274_c07`V`Y43Gt+<$XDW;~`yW$H;mSpp9in=L*`o+8646rRFiUlhAHdm+UpZ z(HZsMyZO}Rw`=GUp#fKt7b*QLyZ+yNzZ1QsnR$1d(l=~$l(Gf~+oR7RZGggD;m~M4 z%3dONk(US|X%kg@xHxbvJ3g6?ani)i@l>i%;$*&H{YdmG4|gk*CU5oEgcs2dpBLT* z7~?a>3qE&0Rj?{i0MvPKYZM11 zUs_eY@rSBR_C+gk;@j$2nEEQWS8l2W!c-mGntga(Z@#&D6>n3tV$FSBpZ1f<(~GTZ zi&zicgDv~-7mW1mskT4rc1+;cxxKY)P|^}5=}*ja|7Td4{Y|0akM;yp0}@~b73A^~ z<93-CDoiFT{LEz~10hi#IOv3bq;`+~Ml|n$*5+N=ul-!6{!wpUK}AiuIH#!hr%>ob zh8Iep0kXjY4Ej$-q;6_}ESUCi)UJAf#hNt67mW2nLd7O6loeO?``Q#KbUir6HN@T$ z_2K(Otx|Bai@AM6TV)5}S*TvJeLC^1EVz7e04;AL6sRKJ(85zeIo9ge)Xy1dY>14M zZcr5f*04 zrY(^n-@%_VQIp&p?Avyp_b9|!*QbSaX0YitfJ0?5rM^3Txd#*laAa>zCB_N_OObTi zn|MS>S!Uw@-hEj;gipIz&tg;+kym0$=k*YNYUtc!qv?s9YF8$k*5R0!x)SNh`Zd*K zt~2*j5n+2PB;@<)tsCv{}Mt& zv8cc}Wl3&s-}O=MD)(b-k}<=bS>Lz3pZ}p?0;Uw)JdLP5T3&Mf%*fzAt5OOltYBup z4JCJ)y3@~@G{uylsDVGLNgcY;@tCb{df5OBFS{qp?IV+%PgK4X>T zZ0_;oS%~L1TyN=lkehO9?}g5A?n1%)oki;&CtkzrT$ZK7pVe*(ZjbXO>v{>v*6)NI zQTkL_QSX*8yV{Yf%IUp1uD3j9I`Pl&Pkv?=|9IChExPh78Ya3Sr77z4Yl3g+D!+zH zT@01oPezeM9spmA%Q%{z8+s%}A0nG$wa>8wnE1MvBn2;z*3~I{xuLYOwxA^|iK^Vl zqL6u@&IVhA*IDCB>^h*K#_ZvUJv@RaY^AS*w~m)VrB-T>KR4`L>C|aoV3C`*<=}0| z=@8vb-Rp4Iu%V{6GgHeuEo*e;(WexM;_-neGQtB8ezRv;u{v-2JjF5#YHqmr_^7QO zsRKu=K2Tl$X2W=5^MRW~vlDK%Jn0(pU|#?34$9%VD~p6U#NIZ($JU}%$V0_ME%gyJ zaPG=l!cS34mHXAP$nu%P?aiQK2z!@QX-S11=xByQi!bVm=3A6KtjH;+8M)?11LRrP zp9li@!2px_+tDoetU;1ef7oli&A2_XT=-};`R0fiToJLm|6sHoSpH~J=bBGa4VfW; z&hw&ICXV%QgVO_)$>R$*UO)Wkcyr@}@z2ewOEy* zC5%({$5X7+z(?wHW^Q|K!99ecA|O4mSf;qslF?IXfU!>;SOaGk)5G(@c?@V`|| zCJxyJ+^4plvecT*ooK^!%zX>db4$OgS%i3CT-VT0KPf{zs3SVcrQiH7O}C~%uA|-JwuHLXo$XSsH=r&j6;EN~@6Dy1Y-rXH z{i*MAv)m)D%;Y6@bUprQ(lxk}ZGNT&InQxRuTF|RKn(1js2Ydd0f3G`z}DttvJ)5G zR1qGCb(Ls+ajGJRmuX00)ir6(&iZ)Ivwv$Cb`w@3NG?(oTm8Av6CwcmAiu?$p??Rv zrWeL!ynWO{Dj!RWP1V!&)LPi(Z%|h6Hp{W>!%S6(TSL(MgT=A^&~4jJU>T8zGfAAa zA&d|M+Am$?w6g)kkz4wDtxU7KnHTU@mar!RS$ALXC0QjD2>1+1gL|LY6yl1Fy3IUb zQrUdPX)Wo)a}tf%QTYV+b_QuamU*kmh7)VwGw39hK)_w60q3eNQ|-bAKZ3$`H3*yX@aZ?7f{M;QfuDAmaRPUkkKG4wSR+Dg2GFq}H#Jv5kvpkg`8|Y}cQz?A z@`-;_Iyk1K6(Xr_6KPW~hh@hV{A`ZwV*HrL(WVj2ZK^uDy^1=Vj_CRQcJCa zqLGd*8st~f>QpTgDlHXLB@IC3l=|Q8>^!(1b&WrO0oa=h- zSI_JFdam#1x$o~+2XXZZS>qtk}*9%(7) zqJO>#K7fQTB|xmudvl&LY?X)>U!q0m6K*y(_h-l4hj-IvpV2b4>VxxAd+v57pBVH?vLTI`$lXO#a$a$vb`j(oJ6}dA{N1zfK`^` zN5WR?)u0y%P*vAQj;*b5JrMh;u=rB*Mjv&2_D+JYTDpEExP5xQcx9uqg>lV__bhSgc=k5w2ya{_R7Z^ssUXv)mrX~KB$+lvBqQ#*K4ms2drMNP(ho%=hW6 z9hZgxve#@f#k$Ct*!;x?brdrfgOn=pB@UTjR_oS9p61G2pYvQ#jAIEoGi5*IFJedC z>M1sWP>MoHhtcx#N~e*;vhnD;_F}iPh}eH7Io!#-0kSqLZy+Y31eX zrJ?$Oz1iK?_Xc^c8n7sk=xTDriOU|-O;296Z>@H`&3+u2mxRZpo+R`|2k$a(wH$Ie zFbsG`HTY8|>$dx<1r|M7N3vn`Pa!(lBWbOJ!!!_Rk zv++-AM#()>$2(h{!*KaUUSYjHl_ft@(-nXEk>HM&@l(?J{hJ_IHbXBocj{$bZDg`Q zp{7hEt5dcqs|%JKAP1kf3iYIk9C~nu`N)W$j zKs$mYs5ULC9rB$`QS&F2+I^K73!)Y+gg9FVR9aX7>CvV4%ef^1WRN>clSU2dZ+xq= z^l=b*r;m0fGvwm~igrpfI+eSG3ZHPZU^hmGD?Fs*FOmkrXsp*zC5@$)YZA+et zn+77zW?Y59mX(RH0lr+@Xd-`7CC=4tm?;U`wIscRuGKasBrRLB(FB)+ek#40-|^k;$ae-=4{8EtK9%

MV(gKL;Ll%%2kTb5f#L0> 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 LaROTc13&-SDL(cT From b0c999321b41ad3fafcf1014cc971db828af074b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=85=E6=B2=BB=E6=98=8E=E5=8D=83=E6=A0=91=E6=B1=90?= Date: Sun, 9 Oct 2022 15:35:26 +0800 Subject: [PATCH 04/13] fix: this testcase had many faulty triangles --- .../webgl_modifier_tessellation.jpg | Bin 37348 -> 37042 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/examples/screenshots/webgl_modifier_tessellation.jpg b/examples/screenshots/webgl_modifier_tessellation.jpg index 868e7af001f2cee96cbbdc82bad82759a356e116..6cd13e166a61ef8055ffefb89a3701ad02103956 100644 GIT binary patch delta 31421 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%0D~| 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 aCiQZMP$r#d4JnOyE}fX>bK%_Ing0W1q;nwv delta 31772 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 From e4b6fca86e3dc428592eeb9688f37c2d5d39cbd0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=85=E6=B2=BB=E6=98=8E=E5=8D=83=E6=A0=91=E6=B1=90?= Date: Mon, 10 Oct 2022 18:52:51 +0800 Subject: [PATCH 05/13] fix: restore the modified jpg file --- .../webgl_modifier_tessellation.jpg | Bin 37042 -> 37386 bytes src/extras/Earcut.js | 10 ++++++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/examples/screenshots/webgl_modifier_tessellation.jpg b/examples/screenshots/webgl_modifier_tessellation.jpg index 6cd13e166a61ef8055ffefb89a3701ad02103956..39405b3d5bbcf2b3ca127db7cdd28175d275e6da 100644 GIT binary patch delta 35128 zcmW)ncRXAF_s4Z;tE#%}ReRIgYJECT(n!se2yN9&N$nuqR*TlG-I^_8rKI+j+C^1~ z89OOzCq{%AKi}W|=l$os_wjz8^Ln21I`8tYrz7)Df466T%KyFRr=x`y6zlhewZ=}M zv1U+oR2a}5|7n#X8xY#rex|bGrfsNai}u@zv#mv!LqN;AP{g*(gf)D+=esqmaZpoO zwG@)5kIPtYk(GJqg_d)lSQ1-e9|7lP!d2M386ln1U?n0)6KYs| zB(x1tZgQqEA=$!AlfBk~=d6{ljFh?8+5~jdCMgjN7d)gY(k{|xNJ&-H>`+~PI@EAb zd@!dm2&`;*OYZhhzr1kSl_JILfW4@fo0itr53R%kP>*`v5#p2+o9gurC8zAtcXf=% zG@-j>fWt(ssfw}Vm5878%0AtAn<3Ys6&Gn0B1u)K$kzl`VMe(Y&HdqJ2go+ z*?B4Vd}zBryuW&x$=vTxO*D=4-?#jKaus4gfEQ-dFj1!R)^>W9Z~?X=bzu+bu@A(r z%3*J}DFi&j@mR}ZH^wEgYeiof`o~NyT#W$~XzPB>8s99Q4=pt46XmWMZO2X(EK}{Z zYb*~Tu?lHAx_W%7bcxrDi4y+FS1lweMb_rj-9!G+-3fSLOkFchMSIm__!SWmniP-<_PCHz-VZOhVnPKhTRWC3KHM<-X41dexxgMnd4?vbY-wwGh+rk zQnG<;m>QE&ml71`aHISfUBsGh3<`#2|mX#Cw--_Klf5a zzGEWWpy0u@1lV{162_hat%`fxaLg3y95Q}K;cXuMZAbPcIiF{xt}`Bk+cB`tK-JO` z`DXsTlKg&Ds%O5acOA(VVD2}jeC?=Xv#BUB!KTVqxN-0+PGsu0Yz!JY^p=%HdcB1b zY51wSzadie;BP1+klUtf`|EaAHa{Z$7JG$ewX-GD?(;LAZ-3&vQbaP5;m1rWql*qH zkCW6zDC<#0EB;u-+?0e?@BH%>XLp2r`#Wi#J-_-Z-a~&q`e6-ZNJ?d!e~yaPF6iauqlvn<7+5QJL|WJpUswRa34JQkbOXi z`6N~@>N#dd>Xl2rUDss~>Gk1IT?sEJ+(2NYAq6w+K#p`ekndude)R(Kbe7B7GW}wmf27rLC$hW+Cb~ z(cn*5PlQ8~kIo;QrTBL$emLTx3$ee})(ZA6q=!z=v;|5;-K?odvk1SrOURWNw#-72 zH?uv>MT!$;bF9YpKmCGx*sygjPxiqXGfvVvQ&s)|2&8kprXu;7*MT4psX!sHsQHQ5 zYQpePx@T1a-GQ(7b3U;gvaCp#h-ha+kZNKYVRQZOnhjsOAMw%grUTk{^C0|YM#!8e z_uXIZ^2UVzx|zWuiU(7Aa5uKjU0&1PQ17Ec&XkH}^4ADSn?w`5U27{>N3|XKR0#97 zB^rQ{mc|mF<6(uN&35kUo<~Aln!DZlhNaU+jyra`^Kuj;7;Sfm)n=K65Y6Yh+E>^w zcYCw_B}Rn8z-8)C;-vYf!4ZOay(~Y=H5JGEpZsOZ;>%Kzdct$jscru(d%s_uKY0?N zXdKDEA_F6djYcOqe5F}C0pS*}kU~6wwv2h>Gh_&6DhVgmA*H2N=b2~wFv?}DS00z{vhVlBuh2R;AH3E zZG9xB1;m{Ew5jRh?Zkz+#so-;8R&C$=~~c45M0ZxueLuH>-_2GP|=;@cTJ|_gGm!H z30349d*;JazHSPOWdGQFLeA*=HtteeVau1UAoK9bhMfoxsRc+!bpAwFly7xF5H#}C0QR;e;o{{T+ z@gV$<4JQh|ZDS1E&e_aMbzT*nLw>LUzP;)d$HnAQ9jA*h%U1L~h3AzI|ArYtc6!Et zYF&9@^~u&sPw5NRETJHnEM;dJjB!h0G}9b42n7o81H!<*i)S-09nJt94FXqoHlhL6 zVizAJ~YwnUeUY;E_7MU-qVe7q4WZZ7nz z|0653%gOc`RN>d$>zIdDH67f=e~PM0V8noiDR%^swptJxX6)ew*3G_@`Y-r8CH;tP zj53``>4nhKsftGzEnQUt8*djx_#o`hFZ}`2x&vZagQ7kcJh6^y065=h^4zRGg*0dB z++))>of`zJWp4Z?mJf?9;tWP1_qkphPZCDw_XM#F5uim*Z#L5m1+=>|4A2hrHzWur zUDUX7L^b>TGO;~zy8YvSOWL%NpW1tNI;9_OKA6O-Jj;m}L*C1LL{@s6T3^(Q^fId5 zu3zvACae{M$9;Q&>*1|=30{bXpd$h8)IExQnb0ch96;oSaE1)(U6!v(M@De+<~g+1 z3&xQQLwDN+ZIrv8(SG`ey;S<(WO)W9BN{e9l*c~DSA19Y42>SFF74i}n!xwLEK6cD zuq+_W&OuBpZq-E-p=+@R4YK0`mDa4L|2bfs$bZApC{TXjPMxDWV_Z`2NMt&c%uM&? zE**&uIhMsDtNJd)f`S@)F|N-yr_k-2=YNlVuqYG=xa8^kd}SmuX3eo-TxZajxD6Tl zNBX6HaejxBPa1n?4PIYjkRe!NqjIqMSuLLGtjYZVM|NZ%14O+O>Kc52rB^y1ulwJ5c^Xtp=#P+=58 zsN9A%=?crY1bn}OX^-J{av@GNKW4z%@-Y$ZwffE0ol1fE6CRNAftebRebL6Opul{O zcBJ=0a$4sx6(6muC=)X)Zx9qLd6&}nZa=x>2n%?{ zi%tfoO^JQfza)L-jElK;;v>3C&1k#xlY_16hRbw~?q+{RUy`NPxVM&Ubw&-{2Bwno zshDF4_bkl*nYXHcP!*88S~89p#wY5zW+G^zbS}nIv>}~^p)}@Z$3f}L%^gEIbm>t- zmpKu*l^QMyP~ir0a4O`FQ^WmNz>%$RTmn_J_?8sjJHhZ)>=Wz)hfq~Ura`*ft>(y! zzei$IAts0>A8p&#WZoxnjy(y{W`m>15a*RWYavY(7Y#%IO3~{`4NN#Ntf)^DP+dRw zfqJ?XHT`?xA^Ahx_{NovSL1tD;BvJw1A29d-v~|PbEjKWf{pjxd&b5aK(WV6--b0J zw`m~B)9tpKlHZiC|oVw!tsqgi4p@R%w5K(8bd)KafZ z4|-wq@_pHd=TKB`f(FK{q5WF92J4pNU4hDSTah;71hY6L|J}@ECbi7Q^@zwmPmP|8 zVGEnJ-W!ca9DL}iE!~%+nj71}#@lxP_SI>D_3UcHl1c_8$4rlU(JjFoQQx~1+DCE5 zs-k=*(5IO#Hdw{LwpSBbjJ%r;b{VnJNo96eITiJJ`d3QwQ#(7y^h$9P5Xh2D+W5ekob_;bW#V9zt}<1$?RNRaC=|nab4GO#ge0865?7OU>e0pt{Lh z25k9Unp^GX=skO2??om zI?*R(jyj?>GY|KRL8*Or3+n>3Fe_!tra%7tc&_O!h)_tHbOa>Dh;|6*Kfn{Hbc&;F z!RTM=^;U=TQE_cYLR6-3E#MqIbYbal=-fj=v&us4q2E(qQeSoP=qUs#X*g>FT6Iy>=>H>rp}* zbO=*@ElNjZ&oSw?^EpL8Zthp^Gl^TQOm{mk;0(BzmGYL2H1gIqWYG*5oTe0DB~Q`` zQ^9Dx%$$MCH*Js0Cb|Kqnk8JbFN@GiRa{Cd4H^?hNQ;oh*trt1|DqpYdBnM{N%rmD zeVP}(=a!;=nJU=P0P^*HaVXfgha4FhBFFHSLsH}?09lWj_#Hs;;Mxkwuq%!qH9b0u zY-0}>IwvtAT*-Au{e8$y`ZcvIqUr`myW0Arj?lFfeP?0o``2G<%Z;+!XL*lWG%HD~ zh<-5{91s|=Iqtt4YzI!;nmxkEsPLIkGam*`dDJD>)x*+`nc`_R9eBEE|JrrN13IEp zNDy%CkD~ci+W{=)^-YA;otg9Z3#{)uB6&V`s}!c}vT?R+JraKu#j;qpSLEqytDqLn znZ;>UB+l34Dj71G*l@Iw#wigaXQ^pY@=zixp~uWajO5!`tyxpDt~F)#Q|xhONZg^seg*%x_YD` za}lbBvL(sG52~Q}#=(IVgkY8(_27PFL6T!7uxun*UQxb&I9d~=ALtQ~dcXl9$F;|W z)!Vl%q4mg3A*)mA2vnuJxpkA;esa1SYy|PX5mx~>?y%&wCK{Sva_&8xb6T9;Pwb;| zc-DS0xG2AgwevTvK>uDd3=-REXmAz9$0{|RzcgHsI_Od2OYJ_mJvwKER7gl{N=^Wb zs{KNQ=uuQf68R+7)3nd$d}`FeO_WSc?gl=%vljcdu+R0W9Pnqua&=lY)@c1jl?yGA z)rcqdo+HjU`j)kyqqucxfR;pN9%(N<_(&|buPF`oq>D9mwj#P{IQLvrrnGTjgG4bQ zGzjBiy`?(bv7;47SI`U7l|*YEGXbFxv?%>NrMJ^c_a^=QG1Cnn_?eD)lzH2$CFN;b z_}H?t!ABdLVpbQiv>}mC6tT?-vG0kzua4kvbF)TD6OFcvcl|t;5CkD0=<*prrMcg~v5OdY1d zXs6Aur~B7@YQNVlYqAP(ii^c+8(1eh?*xC7@s^c$5IbgKv)a{eH2-yL=`oH=&@M(5 zk=-9sM4CdH)s3p!bBU$;?+=-XeO|m;>8&&AuP7XSIr@Ig7nuccTRuCX^>%2b36D|t zRK}sH@PC5Y423D%C3{Y^kT0f>-(P)N5~L|G8Zy=$MGq+`HG}}|URF^>(s$Qfs#g4u z9ui}cN@+v;4KyXHdMo=lK*qg0W^%zt?dx<_<)I`khJ4EkmR{vTzQG$)L)#4(?i4fi zBZL`?;!IYHf(o~v-yT{vYij^KNFNtV#QT?K2TX9wxO$f;ihDHa;o^6C={V9*$Z2}7 zdh0RMDf?b>KR{&I4mW0A1V08Vyv?_D;~cQbOFU*O{vas(x$V)d_X^K0dtZFJ@U*z| zM$xmx1)rS6`XRyJG0G5Tq~0Zl>>VX(iP_4EVS-^5X8|!}v=bVx6}-CA(Db zBq^<$@SS=8)^3pUc3L*sm6NuR1_9y2`>kckZ#zc91u;(=@)8qP{AQXwisko^^BBdj zY>LT-C~byXuu7(Gk$Mh5QHG-`+3$s}s)m<0Ru81?!(`J_B8T|K&n7$~Ha;3`Fx)&7 zX1s3cA%c)w}Y zKh1n}KN68lwhvVpIntU6;g)N&X>&bGJhP4h^8NEiSRzP=a6jh53Yj7OIr2pbPe_oO9)g3Y7$ z+}4Iwc9v$g5aiKSh$BVsM4TW|3N?1JQSI0C9sMtMcr%w^r}V`_rwS5#P>yCx+Be%m z2@fS6-OE{ADW4=|DGR{ZWIV1%EjNo*E`VL<5lz<+JydH>S@tBeUth&#%+RI%PlS6b zATZV91gk*olnS~;J$a!fzQKuH0oeNe)*5X@Ik+UopS}TDTKQdwG?HXGH4^ih$C^90 z=q&#gLu2*Rh@gj(8j0qif-JwHg#VovlF6zQrRa{QN>oD`_+RHUg&rr|_IECr0(rE* zFHmbg*JbyaKNzgCJ>=(CyXM?RJP|9$ST;bvp*$dGOBjari~IE`zRCYoo!5n*~$BjX`fO%b7@vuPzw{8CDICF5q@EH7xI1nc=vk zyb<(kR;-j{e2-Zh$PDzbDks= zryxf6s~J3O_z#FuqPq?9Ej&3$uQ_Hitg}`U{m23HPk#4+!r6GhV0)je=N=l(;foBk z7zPY`O9pMXXW%*vL`7Zi-M+5mnqDGp@0jV~ei8mDBvSAC4p_7WUlG?a6Lx1pyND*Q z{$tdgC1K zWO?+vTpjwjPsPlTpZq)0Fw;){8^-z*%7VTk@abtWNoln{Z*}iEhU>D&CS7bev+`91 zw6gS@-$0utM%oC5O)uYuqWg#CFK!+EsLrlZk3Nv}M;EsI?-qLpxlGRI#kD1OZ z)$dxSLxV&nb@5iWJRr$#a~GDI%%YB&e&CjagQ;9J%aaoRc}N>jmK@h=9}DoHg{izF z{pi3)*<5<%xDAOq@jOHjE8`R3`QqZbr9O)ESUE{iEN0_zU-2R;f?q-So@djr*!-`O z29L|qv;piy(Ad8$*qheD1)PazoS~$^Aur@_c7M^LJWxv0j{Vi=;gUl zOZIq)mZv^v&A#FqezRo|1hx|}K|K#6Z5|X|Ba+$p<+-ahJ!5o*dw|UhP>kCS?@Avt zM@Ug2Arg4IwYF^4;+&x$5m8aZ8zT$LQceIN1Ad#^_!x_-FUx?S!Ttw0WSrCtTR-o%pQNmp5Z?_IeXd^5K?7 z;>9D>AZ!5^t}^})z!AuvwU?||3M^eFhE)hl1m{thT2&2n9bZPvq@Je*A2u|qQ$}0u zRH^RyiHNxvtFCrIp_(kX+M*RqqB-VfnpEBkS2UUS{;jf1eP_?OrQ3S@^JIS65>u&e z@kM7@*O1ZgreArJg-sN8-C^DCd-&SJgouvj>y(;Rb}FD}aWoW8>w){XA6=<^`>1*A zevZApYc)Y`^=Hq3;gxXv&+%CkK2AD)+1<6hr`|rP4=CZ$7{bW7t8$2oOXQ_B_h~KT z{!P^FHcGec#c`52&#-B1^;}0}Ss9r(5&ZnzZ6?Hn2X*b}xRYbUf>xr8hOX(dEFIl! z8bBL8%LVQipx&BCv<0eoKV1wtHqR^1>P^VB!3Wm06-!Ofdie-mqcCz<73_w+gq=tVljTF- zfGZ#8{a>VQKYRD%*{f?s?~K%MWYrJ>rL90lpX+XRI@$Y@mBXjs)e_L8yuaJk$=>iATr^fJ@-Kfjn>TDI6RGj4jve&$R<9eE!=&dW9foUHDU_* zDCNb-!Er_}elpGuciT!%!`R#aCe#i38((Q!RkC2Ls5A zJA0T7JOjdcxel(2b_h`(_Y>nt1~_Lb7wH^EH+>FUMuK}AbE)6#bGvk84)*pG!JlC5 z6H9;Mp8lhtifuw$qdZF0#zf0N;g%rw4}`6vldIby+w9U}$ILqYX;n{oJ>Xv2dTG|>778@6S!_r!5xAgt(a zAI8*Z$4IdQfz--K79(G_WH%iByMN4NBP4qCC$PV3yz!Y(n4XJ(xy{kQ!0grWr8|x7 zfOG4Zu*17+-({If!p^*snG9vwmV)NK&nq@dRk7=Pc_?I_P$g3-)06pxXzH%A3w9xB z1U*?3IA$Vv*a0d#k@9PM*UqolG;AyBRLo|tdXqPzrmxjdwMPZdQt;uvT(xlJ&S_1m z*_eEL*=@ml4-y+bvnu?$@Z|Il&Rzxdodf-p!Os5kT+&uy8M)lmgDJmh##8>p!_P~z zUiI{qN-{Sl#8pcX0xd6}xwjFDck2HzbDuEJI!8qJMA5*k zrUubcs3ra3y4O*N`y;9;e_pO1T%B9l5Pw-EBp317qj~sd%vIrXYiof#GvS;3W#)b2 z#_xtDrhpRJhVgBGd)a-y$Ec{zMl<)G<$Y|)dRAP1+Ds8GHF}XgOjR_a>b0{+Oy8u; z|BlDCs?2b}*xz#=34N!mbQQAwXY0DF$dk1M8PEUk*UAY!{7JTQpbY$;OMW&lGc?bk z;LOGAmG0l1fptn4K-BM+4(fr(ZXY|Gx5>tpfb6|1x$Lp>TKBFcy1N`6x%9&2Ymj{i z;Ptc?J%AcvR!-NUN~}C7t4;&Uz#Zm%^Xh-4(l)s7Bg=U#6@^h0z8Bxr&yzJR_xA%j z&v2v~RLg89HLY0M^>s||Z((`}Q0S6#HE!#hKFjQF?6{4qOIm{&$gnstzY>jW{yj!`??2MeaL@r-L)s1av z(70^VhQl`Uh-LAFK}4G9tqzCrRY3o^e`^Q}r4KVde}or|!;CEvozmjvyzbsHba%hx z)wo)o@}$|v;?!%t1H8Hb?ACtkJeK92706c-yD;9AU{wwsp-t@v_z5u^oB2u^D?_KI zgtra>=&JnEB3B+Qh!p7WS3GMm2h?(&UT(fXVY!Vb^|sfx%znA5{KPJV)wKB zBn3X-S4=Xm;w|^+#mP=jacsjRd$v6!7n*aPBdSp%p{l-CS0^fx9u;aCY?>In@`7mM zDnmVE(($+hRw3=X7N>y!n3--cJwA1^SXT|~ASRrfDhSRA7h=UTMZ`sqnF8t+$!3ce z8q^Ef;EJXnIm3I5Zd|q#n`~-`jwNpu_-JX_-Y;-FJvN=r)0o`3gwCyWF3{1;`DZ0o zRi18NNM?vBL3btwgf8B66#KgxzoA!t!r!a%u2&4ET8lB`st zbiSK9Gf<^CISpU8cwUyD=+Sw!@hkYld*SDA+N009wFhXXc&9o(G5(YRMzvmnCc5j3 zPj&xm4$6wD zdJE?emRRt3VT)=>n*TyMScTxHn~=)#d@-d>=+5?66StK#Kcvra2^Op}SU39bPU;W* zyXosd)Lixty$R>pe>LS*h)f7cC`y;Z?Uh?O{MW`&gbUxJA!kNJI#2BN!4^?5snA}Hk|1??oO@h$ri{e`nfC)`*jw!IdL;1X#8B#5W1aiu zDfxaoj`%f1WMy;e8`RDutVmxdv1&Y@p-%@49q?zIQ*`&V9nLS^D)S-#EGkq?{TnUG zEuM$lJu3K=^eXgTfvecLuCuZDUm?CDPU1{~{i_bt#rByBt}ZRb7`q$QRkip*`Sk9x zp~rl%H)0>I%l!!Tlk%2;UgA}i>G@A}E5r2TQ+l>^3jBRiE|1F4mpw<$roW_}ia}yN zkmjyJC|h>aNc+SOYQHNni*qW?DzYvm&ioDOIAEt+GM*oeo>&6gd_qKavScJA+_yxw zclcX4-T_(A_PRMRQ;CEq$Q1omSYEAO`Si+z*V+BIEH=?`>@fD%1&p!o0vC&Puc(0@ zx7!7R?nL;u;S^b!-_KRhm&bU;@&WAXY}V9(uxt5?JylBqV|YalUs8nCTiBk@31_?l6~g}>051r<(b-alBrO|{t_`^|NE zo!tdwFSt_aCspxGOpI0Hyl1`JQYkV(bv*x=$smr%9&Ud|&#gps?wF~4<0@T|7E0Ak z#~Nt}3RY3+Z`*Brw?`;iK(6Z-TUb>@cAbb%y|tyFsthav(CP7>=IdO%K@Z8p@IP{` zPm{+iE)wd2__`a6{5pwTtuImll8);oEmcyrg!RbLE!cw(bR zAI2TYqD|;!R6a7W_J$#XNEMX$lQsz{MuRDq*%9*J6fe|$1Y>~du#Cx8%-z~}`1g{t zk$7L&zb)Gat377Y6Kv!i9H;TdU8HD30<->$=r z7K~HxiPt#!`2wupll3Q>o6XO^A!*}Ot6|1DIjcE~(vVa{os9=))3&MI%Pl*Fe3`g1 zteJL#|2!zwZsV78=LY?z;c5*7ju<&PoXxjG#_Vq#=>H`qS2k6Q`d}(z|M0K9V^x3f zSa<7Eik|Y{jO;(`}>NH1^uBO6AKcwFM3SApb#KCxmbR$?@*s3O-n&yixZ@;9L~k2{==Gb~(!GzvKD3N)<>ck@V_5F{i0rovJtjdmo2H97Fm~Vm(6Vy`W-_iC%^64s%j9rS}f66>>4I} zA$XBtf`(IOI`I+qH*`-QJfu6Ko7w3g>iMHkx{ zQ`^h^wIQ`xm!I6UkgDYGPXMhT)lW9;%fWrB1-@Dy*MfVO{e7`z=7!Dk9ggOz(p3B( zmEa(#`l#}hZGgP!hg`$S7s_&gV@xXuTXH*f(mXX-JOJ2HF^~7|y zE5cexHllqfx+z9Ox}YR;cN=WKfW|QHqHhqY@X>yPr|CF`JUyy4g;%HW&iZG{)|%k$ z#)#c_Z3s_)@ik0NW7(SzxkhhVGj3nbUAr|*NtP~p`i-H(!5H6c!j%FeW5kAHtdv9E zs83>|y`)r0u=NaGlm@3`zo2DCSC1|q_2apG7N}QZS>=UD$k56O0Yz}xLv&YjUCN>G zJGD-vg4Egv)-9d(?j)Sntzt?M65~VFxJm*X z20a*Vs74i>@PTtWfWPc2c$Mnh0pYRfE2L-J$Lh!^URvUM+*K$wBq#3Z?RoZUt9C=f zbIjw=^A`;zmdRKK(jfwa($}ifTkmy;`FXmQ$azE9tfFj}`^FDSza6<2l*A3rOqkC> zU*jEdr$YMi*R@^ZurAfvSGMh$5fpI2k3aU-Q?3bpm;B>_-bO=SEwMuKCr5qRs>nNN zr*kQaA8I`+hXi;E@y=p1>MHgfeB!xP_$JPgzL|CD(G~~KPqxk9GIZ!&pKZFw3)O=Y z62W`+mbrEnxDWzBft-YE$Q26vk7FkGDcA1@kP(#_z=m#F==$f0c0Ii9SMy6)h2+?} zN6FZuoELzp$OiMYG1?|JQ$-Vot>TC0*N59f&71Rw95RK+~b|Ne>e!Q5CwnKydPC=== z&s1BgQN4Ddy1R|~HpNC_>|qDe@_;bjb>lXxT}Xe__I`QJt)C~Va9C=En-E=^x;v3zRv#qe+DTL|ISRK{6I!NLj;cixr)H{S z6c1QoYYsm{?i_V*9<>78jZn(U1M1~W>b3oca*lNrTKrrCOqLH@`NZSY`_>8n&gQ3= zR~ z0N;x!nfLR|GzKa<#4<9XEK`Gku*!fcx$Bs{N^&eeX(@x@$=R9wmnD)}`i%@n!Mw|P zsW3#aU{vuoJ`!M8Xg+)Nr#^dip22)@YGmi6kl}0OC_xOYj6nO&B^Ue~S=b(%de-e% zpZw*$HWDae;znerRq``Da*8bimuP0YFn?2sVb0PJwboXE+4u_j zx7HRMJ^`<rZXzrJEv4vr;-1hGZOl zZgEJD8{{UB4fI@!5E=SrI~dR< zZnOgI2X_?n#$BKt&D?}icMYw$aUyMDUE=ADzpGP~b4m?yzviArG%O}t<2Phd7_hqEz68x!20`J#+EYnN7Hs`+|#`D>y)jz_fe$XHAAXmTb5W9 zvm9DIhdwx8+PK^H4d;n;^k(T~2i6V#Og~i=S-VLyDU~s$p^VX49@1DK%tS9J5caU5 zB{JDKi*QwIe@pF9Wpo47AVhVbh10dDiLFHEA91WGm_ZpK-7eh4{2|>HGiF~W9@@TN z-@8yRbZgN^=5@kD4UTWpWa$D;Bm2IFK;jI;|JN!in)ykwc~gVIRd6#fIqEU884~do z%{EYlV{xOlFqA_2z~`e?y7^s32hhst?RTOkE3=Gc`-2y3Bm@ThgHx{U&2~PyHP_M0 z3T0J~EJ4BStZS`dR&~6olZTgNj59TD-tpUmuz1jT2vmzb2B;7^;K(L%oD93YZ@ziJ zOm!zuw_F1Q0Xa(}TtFI3uH{C@xvcWubAMiitlZKhg04&U%_{$93DY+YdoW+R?y+wV zHN_sRr%b7g&ng#hPeB|d8Yb)&^|rJ}XS-JQ81QZ?=swjh(?KAm!l77So42|ucW

E}-JhLEgqgK8IUp(e3PjP`hRb@7p2;SH*Swuqww^0&oc*u_f1u6PMbbDJZT; z{oS=>-?8yFOMOt!nOz7Cqn}vz%-890UtRsO1R5G^C^7hVm0&BWIoW12cTs}-v#>`& zqd)DXZa#e!$q|NLzs{4iP+N?y+ zIkI%92fa*7T&V}6`%mo97sxTu{|*z56j8Y(NS7WkcBU0iiJ+TZSg$0Mbi0!fQRWM| zAQd*|_v$9t6srImjbZ+Ho{Q|ApyjN#Q^STT%=?=ySU4}T>Hvgiu%J)m9`XLT)yNmlHy)S`0ZlOOY#M&0sY#uXBWIL=-0{Q^ktW1{H zK{If-WJ&7Z4WQu{yF>!vh?jOZh+wNr2hUbn< z9&ZMGcrf{)kv{gY5FhL}53GjxE)!=u`i0O)t_6;`_O#fFLiy&XXD&xC&BWpZtjhA$ zE4ZoG96x`)7hS{G)MF{_Wn?tn!xg;Y3p6iw+Em_NSF7*}MAP(Oz*8I>+K$528e_+p z1v-Fh)2LL^d}eGz;S`-Hy)#_i6y#E&bhlnp>ADO^nV)%D>}oLpo!7)@43YwQk_z=3 z?_{cWulFWEEOr-+mMaIQM;h?!PcFqt#2U&u-uca)79TydY)lze^tZFX4RqH8A>1#+ zPAGIu^(06+DItke@+_olV*>f$nCTsBmp47pV6e(PP+Bpu&CmZ0DU#N+Bo+>{jDg3? zce@Z+%bv?70<<#H`$9s@MHByMpYa)7(Dun5qluIT%`C|KK5yQE{Lv&6MN&tuZJLDl<+s#Do)?|)8g zA@4^1?XOK&!Gsln6q9*#opoV?unb`Tu#Ly&Js#f9sKu0#~*;ZthL$JGZZHt*_R5NvF1 z4ZQiP)w3S_tK$nkz;VRk!XrlZ#I2_H-<9Stx;`5i>8y^#fvSqOcrg45Tmn*aL%ERE zEm^>*ba39?9evc^d(wG(&Vw0N_K)GnvMu0Fjf%o?m^Xd(&`A>?kOICaCQ*A@;7e zJX*P3#w_`(Y@xVHiNr`z(UuObXQr_R(BY#I4ogGMhxF@Fz;Ndymaby-^U)LQ3~H?e z){9iR<(vS1xNK?<-(y@XNhq|65xMO6FzY6iJ8%yjaXyO7fAY1Thg)Qxpw%l)n+egR zA*d`gIja;j<%R#c#k2P0@w*|cv_+BAppn!>4(K7KJkq$Q+XZdNutVsvHUi#Mr8aUw zD?-y<%7V0EcO3hPp7 zw^rgvD2Kru7RAjcjLp(Lb}MGA_VN07?`^F)&ZvT;PJCJEXNGn6VJb;4s$Ts^6#mlk z^hNk{epF=V^pVaZ;~NWxK>!RCFt2qZH6rke+E>WJ%aKwb-800ojl16W+3OBVjLefT z6R#NQuJLY+thIrMcFFXg?8a>`T_Wnvo`GPjf_-~vpk0rRM>dqBGy;S<(0e;)-%;Cm zm8#sOCdgA)rf#F&rg!xu?Y99e1EKX}u;lpM+m&iHET>8TML)mD0r*L5_~AH4x=cgA zVa$?5*5JzA`~k@XBxtv}dY5V|85?d~w#Q-AXC9S|GEn!~!-!!7peg~^yo_|g z1h<1MJhg)M<|J-j9mpPjZbX#ONi!|`)2VZycSEWZLSfSWJ$q?_dN6GImD{`BFl|@s|bS|<_ov>JUn4?*jNk; zh>f{VV&a`Z_Ji!k4dRkce^v+=&|<3^7YE#^jKYNqUZTHsrV#tvFYN(kb3E9t7u0=F+0_3*&%Hk;OO1YlG|aqI`OzqC z`;wV1N0Ph5BDi7bS(>8ASW7{#S6PRy+BbWL#C7H~3qMwMkC_xfT(4sSsx)5&0TCY{2;1v>HIIxEK&8|T32mWiz(71 zIqyrxhJbtzX|zsUUUg(wbF(qW`nS?!^MvFXK*p-Ub9kZ;nUDKwPyVY{4tb+Do2z@7 zaNs~1Ke$?g<{MO*VQa%qb@t`c(+0_4BcIxJ$&X>>DT93ZRjw}r9uzs1*S)##(27ZP z-djBT{5#!M`p}E8n-(W_m}d#cp{g^sjejpm5Or*^Y6Xc@JHh;C(i(GhgM*v%ZeFIq zzh-G&V)t^&EexUJ`+8cot+bjEFYmvW4iu&5OmcPSb@SBfj zJ1$X^FTKg*&o+GL72WVw7;@fR;Lh;N!(pjnx06de(oF*U-teZEabHOh*`Agx4$Z}d zkG+h%rMJ4blM@)18n@rdf9Ay}zMJW$>hq9#T%B23-gtp?7ej|xBJI==UulX`mzL_&&(E1x` z6Xqel*;dZ39D1t|mF4*%`i27#RuSZ-VJutW4%X6XW)s|Z^Bazp(OV%VL zAQyq3yT?r9=SjPf&7vW{vg8h953VzG+_I#oi|;(-+~=GBsDiZ&)tGGUa!~o>8>P9E z|Ck%~Zi*AH*4}V3T_jWfkEyecYPx^pzO9IYbc523bPBft2na|w6OkMt-TU66bSbIS zL^=in8_gyyEu&-;MkBe6958l2`&{6P&^0y{FaI4)yR4~82A(nFtdEI$Wd*J;?f&CG|lHHI6Qua(u~0E?mAc1KwvS1;&BE=<->qm4eTFqjA?M`E`x-*w zbG#sx2u*F%Z)GdYnfaw91wtd}rmanfriBy8j71N;r7W}fiE&{H$4q|S$piMS%nYlO zrio_X@KNtIfUl`}_k4*yks?Mo86XnR4wj7*73n|BG}*3Yz8x>uE%kI&l|ozwb5HQ= zGO*p{AK>wrfIhtw0BCzGGuEA3B^^d zpIXdRior8;JCPDn87T2bNfa9D)1->6iB>;Aag9JE{VarkZZ6d4{GZs#?%9xBr}T{; zWukq%;k}oF9_gVQ9*iCxOI*DbBR|NkzNL3!j9p~fBfc(G64qrD z%XKv?Rh<5~@VZO1=+y-qdj5GmKVLhaK5HIjMg76c)cAlQ-zE8=t|7+fntLaK?gvY0 zOn_oeZ`$o`-UkzV0z{EGVZ?q}b2?hR67N!w)!e79Q(u$n=zMU4`!}bGhK@vGAXkob zO4ppjd^KVSHmw{nFXiLEu5$bIO=oiT<676wIWZA$W_UZiISG;5I0vPrOoIqkpcGAh zQre2iqC_=78_7lV`J$P(h`(!1idBySEblT#RN8c!WSza@L6YdW+yWSKnp|K|V9 zm(R4Ls0|}+>Ya*<)avkdUMWDukyVeMWjh5#Nqxy)zf%F!3xD4CG*y;-XUc4!{H928 zKTCc`arXu`a`0$`cOQ*6kj8&ixdb1r?64&C4G@L@TUi%bM{iHDO^+m4?Y+x4xY^#bi`Nt%ud52 zj~$ZpiGXbKX21SSb9X1G>5pTh%#&&!g`^>>OK@`kKiO^2z9B^v*VBdB;1{tZ4V-D-NX+C!#zc)!LV zO+7Ox*wTJ>|D-l&5H!l8klUOK+yYTkxwqdecHbpJf6XsDd+v@q3~rDvktp;Dz4%syt~ zaOPgODKsCb8F_&~Kry;qg_nuG(bOcO*NXGz`yk-9!*7Ssx+U)pM}f&@yCnH*qY~mk zSvBXstBl8MvSXpD7ZS8zTw2|88)5j?JgAfYMa5ZVx`l23kll0%Eo&|Y0`iKj6Jv5-l<9N=+Jz0KU>D{$b zfmi5Lvl^Al8Fv=lxMvZ$F7U=k7O!hSUdqeRP+yp<5j+1PDvk&bGsZ8B6G zCPCch0m92VD$RbJdhtce4WNk(Ac>Wex|e701})9c?-QofVsqT8^!)q0%Cl9Ho0d2O zQ|DcTgrX(2`8BL_4tDrxj313`O^g&7z5Gy9mL6kdPL&${nYHq6!es5`+X8E6J9!EI zJJ74~MJYXM=zP0!i6LS^Cw8tb7;iDtuS{kxUi|M;-)CSk1vA@|#_nDX(-3o89%uXQ zVf!KG@UFQ-Pe{e1ik57LCIhYou^6rCM#=a*+OHQkB@6D*2{RYiU3_ju1UDsm3xzZo zhs@xu4pa*{^WDWpOBNdRj)3hqxTO=mEQk_Sb>B&l?^6q+pw1<6p)K}pQ|g&-OaWbxc%qSBwVf{&cI1#cR|pLl zXoKVE6vjywl&hVcxk5=#2>q>?fcN1b~GdGEhV%4dAeRDMzec#}krwd(>g18=A#zPmBw-x*Hd zL>SgC5ogFTy_?(+x$q3%g!X#`zofLXPs7mTqmve=Sm3FW7+MurEIwhGCf{IKtqw<6 z`fh;3E*7+Pn&cnU#gv+5>5mx{>)}=>L5hJVhEdlS0pnX_9nvE=BJSAmA`x%}F?uqQ z6(=00JFI|L-@1Gb3wXQwY79A{&5rYfcRVYuFycGk*{`exjB!_{j909)ZxNG42Xen5 zEA^&M@_gr$Ep|J1y%pUMvCDs5RM?jqFy8yr`&a|rTe(J_pF+BAD846+@nLAYd4-95 zad!b^$;`{pG+X0F1)YVz&H1jz(uxesN}p=yTTbahxWz6Q<$9dn&c@cmO`DqaN)X#b z#|s}wRBAyu>BzCJPb+HEB`jiW*dVy!_k}Zojm#~3PHRt@q4pH-Qtm>A3i+oFec3%z zoGK%q!O_dnXY0!m$^D#T&zKCr2`_5)hXF2~_O$f3+F>?G3;lbc@uRxIdpm9OxXzJ3 z2i)jR4UMoW{UO=Zx(T7bk$&gYLbB^F$~TQ6@(O9Ylx*EhH2&a3)yD_oE|Hvj6Wn-n zmJJ^df5tP0+1I?~AD{_g*v%Uo|E!J6UlHDn6tX#+7Hewa#3X2I~He zajh6tSds}>+e6Qc`iA0X&RO9yBqi)}YVlHvz%nJ_+$0pFJuA5*U8i~96DdP{#u{vC zD%E@1(xhhIkiqO%G5$s4pSx)vOL{vL3!tBQsMQF$pY7J+&XFp$lNnhTWmtzk=2TuA9~MJVLI zOD5+c!$MzXUNqmc0lxhaY*wNK_hj5S?f{`gI z``Cr{cE#?oQql6eZ;qyMWQxaL_;@mEv2a0vDuGw?%+*SPFbbEWUIID2xuaz8m*-{` z5Eyx&I$3TC{_{SoV9MbnM}DKt%F<&<&&EAedDrS(o%+1kkypsp)R(O(-Rscd23L~0 z%$>ich8M+d(fnKa3bI8RkJ)zQh7?b>LQGV-XMdw zGA!GElNYl2WV$PjS!h%PQwM#CK{L3Z!!3v>WmJn-`Ur%v(<8+NEn;b9?%0x2@g_}# zrh->VzOL#0Njx>W9xt!-vFijz!EURX8o15Dj2KFX7Dj^roLytubxTK#S-1#?S9`h3 zNeN_}@)Jie24R5X?28&C6XXw@7Ca{|(t;o}5@m~DN=x*W_CioY)uD&?O0Hsa%p&qL zZ1(fIZVJbn>_>UF9W_aOSu2EqP!G>?QT_8u?YZ*PItlrS(fYYm0ggM`+I#)t!=a_V zv(;M^U0{$}b0Xpf=;uVJwme!c_&L5Mx~#8%9a)IdB}n#+-UWvC8LA+m!%QrC%=KMO zQE%B(<{WJc*5}hDre(UP8anh3a_-Iay%vu^H)KYY2zWe(=h+V#s?5y^A8tjJu_>;o zeGz=vYQbSrs^Z`JL=N#RKeuBC-7KF3xxr*N&nVYl^|Mi9;@$-8+n7>)VzAKJTn$TM}pbr)W5pwM}CpYm{ud4n3w)d1E*Z z+D9uUeZ1Ar(Rv5!C3xYrpeV=kYa&SlEnQ=#24q8-XYf-AfnF+#P&bE`iEXn?Ao5Qh zXQC;Bq3?Uo2AhemF~frUe?y+{-b@FiHTn%IpbTw4KQK0MOLsRYcjg#h)ZtUx6Dg_iS65u>{%vCE!MHLrLjBtQdr-CL{ zd})Ypj$W?V5@eI2ry>f5I9k?qX4;)Va~;wci8uS9samWuUWXt$vMed==7&fd;{8oc z-svOX+gtLUZIC)}2v4#v#Ak`s?{jjxWPrDN54U*Mo4Tt4Ll12pc`SY3uT;uW{F5V4 zE&*Tuc8b_`$K!OI^H+#AFd)gMWT?FjZ^~dmt69g6k*Onm$b%RJZZ_bZ2LJd)1+JkTPsA zr4>HHei-J!@Kgj00?V(L8`JE%XlNU>2S$!JRY_#e+j@IUH%saG-@Qo z^+37T2=L?4fDocq|1VPMp}GOK+7;03{i82^4PrjA1pC^2)5}%F`{z0`;_~Np>yf$c z5*A(K=amvIfvDcrJtW$}%xDz!yU)qfN$#h45sg`~m6gK99NycztnxhZ+-5g`+FoA# ztc<$?p(BeE=z(6Cb6+k#9*&C-|41l*uPF6c`USgxmi0J8`dX`hG zx7x&(B%!5L!CuRyJ`p4TFDQ;mO+scV;=AoI zZ0BwuBBB%=nfo`4t%sf@4(c+Vdw;w{N~j_6gB1x;*>MqzsJIiK291!jXZ{S%m4EtF z6E^Yz*at>^TWd02)|~xKu1@8^ntcD0+j7m483&e~|6QW-D9>vh*X0pc?5qjQ(fxhM zhmoM%HltRFn*{nD=VD{R`=z+v@dSv>bjKTt2=PYIGLFd_OC_qeF6TZCf!t3&R%lLi ziCJk#v3PrKYq-9OVwI2kPR&}1VJf9=!^J>uxJ@Tt&q#(5v2(g0^}kEC&Z297Qa!qT z$Q={G%~@EhU}Wx`LpvW6S>vKf^HQjMcW!p)vZ!>9Ba!yGZ=mnp#~~Ww_Ciqa60gJ=cedZ-J7&ODmRlmV&<^;elhW?Or8}U=UZZ<-O7nRA%>-5k9N{hd{XM$KF-DNNA|4wvU|6#XcYS4 zL6rk}SphzP%J?V4eQ)$Rb{rV-G?X-@an8!h;j*#2X6B*jD)`4?BI4!D(p0&!vYNTm z2QlvF(!wq;i~0I@aIuRwOJBTNh5^7&>EyHe|Ht6}UlbpB9jrD2;rz9y2ueV~SyD5c zDsD9E%&tzpvP(#IyN(@B$zOEiI=R=WYfFycxg#m7ALyYvWwg8CgNq0uqXZ7wJ2dG$ z12Kk=)I~^ql4LNoq+f(|@m+R9{Gv`Co`>2xI6tdTAFx9MWHy$=<$dB4$&EnP$@@YR z$M}!e?pR6sAI&9q`DuE=Vv-DR0 zUOL@RF0Bwi&Kzvm20zNI8XYYwfHszwct_2(ZDcZoGn8GCJb_YBhgKbg+lz(^2~kV?2s*i>mv5T6~;&QG!}5!(9P9)uWV;=O)M!B7MpeQY-a&y}b7mSBxfV z);YA?zEAQvTLpjM5axAqOS=5Sp;*$2evOnXL4Q-x=mc&F+pf-sPufYq)Y#sQ`+XJ* zPyuwzY(<1IiSrm)MBViEwsSYxj(TBKh%fs6U*%l4gh~NgZD%rshNyyo82JYb zL`x?I9gn?jM|st$W~iTu(18?hMSLnBz(loepjnP#kV2${dkkx3*EiNQ4Bme-a+Ui@ zh^*i;GBNfl?T3_#ZrMXU02Fr6LG%S}pB*Y9=^>Mj>LkDAPKo8XSe>Gaf<+F6Bf2iB%P{lKNGc=ybVh@NBkhdLe4wTPj?NW7JN#_vsDdCr~?f6zppUGPX<`&|(3) z*iqo|WL|m_u;NX-%=cqg-Dsvm9enXgD?w9G!8HWgH`*cF<=yhr3K-pANmzL>qj(DP zW4XA|=+zc8Z4)uHS&BE9_l^|b^;iW<^Nop{rG&oBY0S#aFw~wGDJjS}m7mb$0lIDh z?!I$p`Z(puK3Qc0=V+_OY4%0!(pcWb$UuQPpcFZUcnU#Rkjx@QIBUnI=qr zoA0;l!17eU7LFE46L}AQkq-yxpK_o&CjhrDH{mkuzqfPFQdUtI`WUYvr`Hda@9DoM zn5;mx@@-E2K}*yWS15S%USmH6w+2@p_bu;*p**Y%)0uy>-+$8(I1$NbYCH zFqgQQ-hQ81fZ>qcyp3SG;e7RhAd(dl6d8K)4Tw}HzF#TLNjqXulPgQ8#Cm+U!zjqx z{kAm#I1`5PVu3TKR;G{dzWpKk=NocGybCK8BVPAK`!T3ExNI^74$iYXYM45;_mQiW zVd9vRw%)IMUXDD&0>93kDKwv!ecx%_J`^EZ))59?PLp5eta%;M(~tso&rT9L@*d$m7{4`F3oBm8Y)2-p zV!st=NHwbcvB!_RdNxw?BkMIvF{&Jxd3##Oqh_e5UcI~B2|Lh|>N$U*B&A#~jar51 zhU!voqX@up+(nM2EZLB>L@>oZA+Tmu7#6z&^w+dJ+Y9@b1@~Wna&_AHGbnKL);(SJ zOO09A((*_4JIv)d72c+S67-tV!4A`h_)|WQ*glPI(K;*6^m4s{CDNMIHyF@hTXOJ(3nHzl6r8LAa_W0CZxD!D6?IchOKW8)gB4%)|senBk;WJ zz3lt@55{I>))uQ&A}w3Em0VJXAH+njmfphn*ajGfNjwTOYdeU*^mizy{iI%a{qNPS zDOu;OgsXl*2nf&h(tuL7>ZC>0fD%l1?Afla99a>A+mX(=E z*zH;4@5$~b`#+xwbsl~kRL-^$w28!h?8tw5R;Xtxoo6H_QQdN&ET**Li@5Gyo1(In zuF@#B>^B! zW5mtLA83>E5v16VS&Dl9iIKu-otVv5tEmqem8XTcfg+Cg;us^rOOMYVkcw9dK49Qy zjDNOsQHhE)Qni8SJ>GnI8p@j1E&G8f(iFMeMzszgc(5{h4Qerm>XaHqoV24>M_?^ZY95z6 z9vjG1r|q&xPqUTV*EeN4EH70$y3N)EE<4v6_4fAC|9;)=&(P>1dReXY_^z(_herjc zE@GoXtm&QKa^!JgD)W!pB*k7itD!5lS}L}KxVAg93hLG-tGB|^$jrJ+ZshxX4Yfed zN<8w`HYaZ}QKCQGGGQr7Yk(8pJo~Fxq}e4O^RwYmao9f0yVM37{Xo z?-x`Eoy`dvOhs61XijhVSc}4i`cpv9%Y^|q?)Q*OAbwYpS)nR5x&GciwT_~Lm9Buf zVOf!At8Ptp!kq0W=1d*bdZ@wF$Km=kalmp!^-q;)MWz2-9oThgJUIXL8W^63GH|GS z2fT)HEsE^CBN&?#WzwigBd1mWt(_nP=Vb%vF6}Cn?sbO{jvRtMX ze`xL~GeQmo?4L?@Muler4@?d>{0(M?0U_bGgFr`_d(QijK63KieHEo{Z_>jzeNk1X ze3v~?gqQTcul762{!iMJilaj+h2r`w54LP`63Fru+nlDMMiTAk*rdvIE`@isB2NV? z`qnMkUzUiA_m`Yy`WI#_n(tvzGy6yv0;a~lrlU<*jy%xT!5Z>YHvHN1QW zFFjJFqaZf)&=fH2n~Th_YB=>EQ7sOpad1fKxlQQ7Q)YPmtpD z7lUlf$7#ll2X|S4%O}SDS|kap4`h=naG?ZA{nt+MWSXdD zwbo|oEmAu>hplY_sUNC(pi_*zgY>t@<~6q|y4%!T>R$123u$7J{++E=k8z?cDpr6L zK}}9s>f){wr*rY<&C|ZTtOz|i!!~Pgzgrl}YeR82hByhrT%qBIUbo4>tudx*7Nwe2 z&cwA~puH_)qFpf8u)Qhb)JT9$+^pPCA=6h(3ca3efzuAt_Mn0<#hmnH=ANZT&ASZC zs5z?_gq#H5J+i>k?;t)lQks5av;jajs8IU}qlf&be{ID?{JPaYu-5q7-A(3|Z`j=| z;jNXOS)IGe`{4GrN8Hf+BLVs2TkK*ENB+TpUS~%5)&>0tlq3P7+D1~LSa=9oF)m*7 z-drenX|#qR^yyM_%C1yC$Wb^i!e9DRmPke*(J)As>&crRRjeko$z*Z2|4d5(#>I@bv;#J%Qkx87H@R8ZIKZJftqrw_GpucCPy0{ntD=tl-kZQQdCJ?~KphW>`R!-P_fKUJ%+(fHH+ z%-M;r%~Pcp_GgCykKD*kDZ?$%NHeSX0##+2W*3#2m{U{q9-W~uRJ$qex62m@ADg!R zIcB@c15fgbYCL}kbZH^E$vVWX$iQi&;P$a2+w_|(8BKaU7WkRyw4@@y6~B9QH=`t0 z%-n9S=@o--Hg3d!-O_f>)qIPvtD&GO&VQx~ahJUKdL^&5#2R3i1vPg~3x2tPXN9#r_omGjYlnJc=9 zC`nBC_tTdW*$Rfr>-0-1RiL^2o2jLR>s3LXllc#faT!PeGgPinu35NS#8!)9yr5Sf zB(`eG(O|6V%KQwJes2?@;K`~eg?bUN$9ti_Nf6BSOhj&03sc_aL z&+wNb_$QZH>Wrx^N1eBGy69Iqai8RDx!RX8Yj#Ggi-m$iEv`+svv1tnNNJris|+c{ zQ4OkX+HC-#8+bk${X+FPiFI=i1E!tL<`5BxoethkDnH#Zs!af7RmWF_ey zzrD!q5P{*WZOL|M7h--mx4dDVnRjID(w&dp=+d@Ez5BOyIJgAdJHOZfR%E#e0}bCQBv2z;qCkl43VAP>B&>HY;mn`=wNdR4$z>yiY$DpUb&=$i{LN1$cZh@ z3Q(UcH#XR*6Rn_r=E6b2ks*vTKURnt1B;d7fkLJw{OL`fl6i2B9svRB+ps2Gya<`0 z`dE*kyYuN>stK`NU^H|LaLs$10ljJ+P5lxxdT{KcY_uEzv%pxhs2go~SIL0~vejvF z*9!-j^ogDeDax?vTw}s7qQ_EwV3mrA;hfS=ov)b|h4%fqge?V)YxMa<;HOYYg6y`j z&I-^x3D84#Jb#@iDp_MVKRHP0XwyEpKH zM-K3_Cxm-jl1*v6IZ36Gskp*sbMAz`q@>`N(EKP83l;FVu;%y+;I@-3N>K zIq0!EAt$i|s0gj5dIRyXf-wclfLo|OdS*D#GKcPgy`zDjP{XYaXTjH@b4VK{e!N)ZuzJ+k=iDnahVUQ@Clof zlqnSb&)KVA%!UsVW-EDJL55p4StohD}tD**l)iS0O^)JSlCc2UOGv%s8!Fm%xr zAu;tr_?0LE#12OHm$*&k8N%GpgCXZHPn&ZDy<4tJw30uaYB8+Np>7e5oj9d6hB&y9+G`aW zLetW3zx^#4=9xb+zc8eHpczhxBQxIwD7Sftam&7mTFz;|pDxqCi!=l;ia8$G5J9Ov zn1CSe^@mL#jh!DPK3~om<9L?vj~`=y^(~n*de-Ir7u7KprsD$gy?+duIpYM>~IFN*Y-NSQl&EaLO6bk2@aV0q9;jn*GMYb%cBN(l>;h=PB@Wb;xgPk7Zt1e%7BAW~( zisFwATl;2AK5%(RaYmvo4Xn!wnssA7!1Qy?%UOozu?D#yi8;W*I1lB`N0JEHi6Vv^ z8xypC;N~KJENG%@k<6hRx!4-)&@f8+;Qm1=R1jF>cw^6b7VnhB zp{i{+UQI>V4bzf?)Bl{Jj`J>x$l!CUNIly~N7tg`TP4zeuQw;gsDiTh@!k|b`LEa`RkL3Q4myTv80I*=={>jCdIg1-88_Hh z)`iaZ{rXi_-_@9f4+_&3>eUPY) z4xY@QMV-zxQV)OnIdS|zAtMnQ|Axp*)qsB@`jI2##%t;Cc|G=HnJRT2+7%~WkzX4; zU=sNZUR9~>v}bk!-D^$P(~-4WM-EEk>rQ#T$S^qVkMMjqcTsH~!9q@y2SG-8A;2#J zh$IQ>t)vJ5U21})AVSve5@GxUL~zd2@nNnMza98O?jCycASU(sBx6{^gFHW7x-UMq zh$Wk4!tYim*|(n3WAp|N+7b>vHCct#hNCUWKzTJ8xo$(%?On!QW#Pkcn2X@d*2W5? zm4LNHze%zr7EI^bZ($V2%AI(CqG4S@s~lD^?FPH>b3wn8ciKAWvbedOua};J zimgzqNZ+628HVGOGvyQBDE^pFnRHk0X}$tXX4+Z%g=aD%Zsb&M=62{e=#>w1pFDgZ zZa19wRkI}EkYo2{T}V{Q>bFH$TPNk<*p70m@!XsoMG)zdp{EvP<2!humP&{_xvX47 z=uRKi-HL5N{_+uW-}7EOm+c;S9eMCz@XqQO^WHxV5R<-+t37`Vp}I_;XY;vVr6=3! z;X{J+ARcx_TZ{7CI*ds%qGeP^%ebA(#FG_Ng636H^|D*P@vRcpyDL0Kz!lHnq+78Y zPt%t$b0rK+-@h&ubZ1KfHy7^O!yBY|e>UdU7e5MfVlFwF!G~1)H+2RcXpT$4l19E0 z&$bO3+opxigid6HBlW1Mlnyo7U#3h@-;VKUMf`8!G31{iZgp$3E883)*DzG>gGh{>3- z<=*jpp^Z!`07FDMn-b~c55bkTTOND9D@|_@*J}l>y1$w}@p(1W-ijUjr!NY^clXXC z(aEyIM77 zYoQTguUrdWb$Vk9)#D?7@|e)E3_IWM>PX&TkW^v?*oVD~(R-tTSPvU=nt^1G0aIeA zg@ogUS3x^PWD`W~c~NMc2x-TkNPb#mCXp4bogAXDaXhaerX$e^K58(d#ct7XY`JhFguT|OzfbIwuXmJJU;0p^|*d7wIo>S z8+rn#j_Kiwfs+xBEaL`11WWvT%2g5@VR8wG)uf-ZwQ)aQ;Ah+_WP#@d^;O3AFzJcc z%dxum%Izx`<7S9zDX~bzy>PE2zY?GRhw^MJZy4h<5bKI_~AKBReb~d+$tx_-5{h<`Z8Y zc(T>yFN{x$MKtXW_U~yK|Co-kt^~Rk7?bTmI&kF0P#WAEG)w1`Hk8S(sF_7EEIIro#Zs zs8mTskc)+033~of%?TyDIuKG0bhYp`fp+H3MI)aQeW@j%aeuKk`ZYlc*v(`!v##z_ z)vMVkRB=v*HyX4`u{=oBa5Xg^*+OhgIgYap4;{^1XnJn~6Tv#8=PxwR0jM_CA&@$c zyU5b=kohfPd(n(kfXwCsyD}m@dEknrDTPrk9laeX-x*T@myDiY;tn{+pZo76-~sw* zo!W0gf$^bVW*7@Ya*Ti!&;251R02(l%4uaem+kx?hl|yTzpttn_cyDuUTrA{u0YJ; z6GtHqxw`9GyD7w^rSWd6Nqs+#i^5=s+eG6+8(+5mB0sJ4NFNVv9$y__8}|-=o!)iD zLEoAFs*1Y+yAW$=@Xv?SRW8gclBT^v%$d_Lb@#QXu)O&}rF@_c>`CMzb5*_wwW;zYfoISV~ale9r?7DN~;X;&Fw(P z_TlHh4f<$W{i`KE)x<=i9!B;>iNksMectPvW8fKj0TT6kRdyY zRm&ZkhT;uEk*M$)*^_9MRCn+xX!%k2^3lMrq20toX8yLD8t3`RvmsWu>i^jP+(HF8 z3|`&LWq!aG_-@SK(kr#%BXt*@Fd(&g!jFDl=aeMZBaW(2dGK$)*4)YVuIcolScuj? zT8q&*UIpKO0fNcA`aoN7t4A?rtEt)Y1n|sO(u0-qZ`rxYJQOcmVBMc9sMkujQ+F_a zUtk2&XdTqe%f>)>+EFcgT@%(-`(+CaM&qO4I#}*0G!QZu?%VB45aOW>H1sAK6NM3)|yBc(4T<2nlYP`!^(Gm%+zGNn*oK(T{zz%F48KxDBy6 z{6F2r&Y9H0z>X@NP5LX656sBMbmW0BIwMDzKMN*m)@E}29dc$jDs5f1y1NG@nBg!V z$kd${l>6=g6XcFz5kR7@U+HO9GVu&QMtEzMOP)OJu>3YQY0L(GJF5CF8cuWqLiJDG zc!RGp=p&tP2fkTT6g)JPQk)*F7OacnIo8x-pjmnt z>j{I{=#Niewxgt~Lo}sJmE$~Wn?d1LRO z%1s>B-SRAC2PPHgbUJ~%iNlqB*CvJ;4b?A|=?T3ElImC4Byr1w`SXz`@) z5zt%6jn?oET1ilR{LRxgQ`x;fOKEL(r-nGf`f5}Scoy8Wye1&KIGsG=@_D9e9Ua&5 zE$brBXcoDTs4H##GO8~D*0*1>Df`T#+f|44B(V1KEL}I>a?dvQeCZw|Ov^IQFP2Q7V`eX` zes&xHGTAn2=HfCDS;}isreuKWfa;-OO{B}Jw*RNCy@c?GC4G77^Kb+A)sHOSZ%4~d z{^C62bI~vH6{6NytdUdeD^cv* zR$uX{J7<7QQg}!U8nM$Fd;uP?C+TYIXEQ25uE*}vS04pa#deM4ti~_hN!8fV4`TMJ zt!q9yA*Z&0GNTBWe(nY2;W zTtNzYP3$$_J~zm|u9kSpcX?Lp^9KBF9n+l^W>{>peZk>+Q++gE3>AXDNUIqpe9i}E zI=NAIPOF9{@I!Sq&`dMb(0tlB)kY%iIPm>a43(D)8dH+T7bQlW%#PQE3iOE=+ zcce0$|6JrX7Z}OZNrUG2EzmFcDSC0g9a2fKl^T@7uJ1R4wFdXX?0M8$B&l;bZT4y$ z9Ck2k5Ml+^4rn3{kXcr`wGb!K8dUu1+R8;b$}J_rwu3kx8x+N*GbIef>sG)w4BOgm zyuDXa)_XJT#D|nCWCycvYRP<&%tqcwk#q>t5zqfRKV`ROn&`I<+?{TUC`k_Jpu|2J zQwb3Y##ifG8HXOtx*nqn(tf6}*+pqBr6rJWLSVF`)gC9K*FIEpNM-NcEe%!W^Ah=8 z_jDBU@2tX9_6$%&)cXyr@6^6|m#b*~^OHVQ;mwuD92-Te2YAcr-h$MgrMlhgMCZk^ z_VUo-CEYZHH?8fYaJGTOHrIf0RTXANHZ^$8-$EueuaM%X`z(6^wvOiuvQuy%ED$@+=Bdfw-ZEuN zW2;QX@=zgxuPW~Ej)gt24*OlpHAwtzy#${4P|>fi&;4n&BRIHmI>gW$vpLx}lX<#| z%?ZW=2|q}a1CG+fT{7k*g&b4~woMr++Q>ay)-%}OO&<&Rh}OLEP`T;Wn8e%%^FaNd z3H$!@L;Hu5_~4tfYX=XjpWdU!A{ihXy^4Kq9Vl?~--!P%LG?|oo*MOCC`q}>UP|rv zZJc+2i`vRr+Axa-ZA5py;po40a3jKeuWkedD%u{h8LhaJkY|uD>Ybk69$X)Iz+imPAMkDjS#8FWISrVW8_!p> zwt7C^9Bqdeqqj!|sreYhudhSbioxJ+YSAr|isj|0uocm!&cB264q-x~ooKfg&_=#q z+&u^upw+le-5#2b9#~S24oYhdm47}h{FKVt3b%)HW2~za*vGtjm5tauPyJ2}4&tOh zE?uAhXiCUruGBu*lqOeU0POj!RrogSj8C=iUbp!uZn~5*hDh{WI6$@4P58hq4JF(m zPC(Zy2;*NA&3~6X3{Y`1wlTla9U?2t6Yx(Gs#lFt7q}u`e*DQ?t?lgM!j!HVoF@3u zB5&`l;)W^wYj!Oir2~z?6=3(LNHzU*8Vv;}2CKy^XOZKHWW5R?#o0uyx>)i+Jn!q6 zo?Oi3-y8XjR~Dd3Dt!_4_EiHJruO^m0uwr$A}<&D8d^;*mNmT~nPod4A3JVLP?Z&Y zbL$|i@e2Mu%GCn_-8opcse`3fC>*ycnIydubh;A2AM<-Ly@>Yt>bFX#wUv_Z#LP(w zXcR@_%~m5+Z!-ZYH+DlV00%{_VwpMTW2cKkD$)(5CV9qMwA2=pI#SD>mG54l4C6Lu zrrZKJ+$qj@M!LKseO>eq13z{guJc+a>U{ZPvRznLeYEOaI&{L@E~46Jy8U!v5WE$B zZ*Xz@T-ibz<9ila3(*I4s%9?tgThx$VZkqV@5_ZfIowypn~n%fx%&MrcJP^gS)6RsDj=-!6o5>abRf35{*HeF78?M9 z8FbF>c!@Bb7EATyr2m(~PpHYIs~23cBMP^I@1#H56!f<%gK}hR(>;@W^AotDV6dM` zbL7t*U1sAj<8PTxvaD_kIiIy~g*fE71=Sz2+)lElc842{2?uSO7Nn==Z$r12SlfZx zzin@sws>h!1oC9*aNNaF%32NM;yu_J7p&*4R-p5x%Z^PVqCLxEPZ&XWGC(B843Ii+ zV1PK$PB!M2)N?NOi;>gsbw5Vc%Z+)>^OmBMF{9#xK9kEaOUVvh!7vP zL>S7C271&!lYO4L-=HIK?fJg~KOcs?ZOkt$42rc5Z}f}V+Xc6K)#A$?pig7v)Ybmd7#gSIQHpqC**8_grBpjMQu%_0+P7u=iPVhw^JNEcMeBf#9514yk%>!LRk4 z9ezs+Y0$BGV7F)&{o*yQjRa#0^tmPhPsWjAX(rr66x_hUs^*-1Al>Y#4AK07r!2Or> zzZ85o_`k0Bx5wTV(#@r=m*V?tM)7r?p>V!jQY?0nMI5ph^3iT!K)JzYQd+)ejrbQg zpp6f%+tHo;>A1;^<* zMmH0Qz|R#JT2tobv;P1SS8Xk&8!p`1m~llMCJ!A?2Tiu22y-^Kmagi}=;I}Rw_TDx zC4cd{>Dum)d~a)%xV+YG9^%;-5kVBeWQiAd%yA&POp6R0kSad9hI zq^35!ic2XO0yYRwHGGlnuxB8!JQ(~c#edM1J+8m6yY)B2)pTm9_CH|$1pffRX8u3^ z(mxC!Z;t-}0{$L&H^MsA{8sjnc&hoXB)SIYago|@CMY9D3L`9x{{SG9c0gwMJnKG| z21_o>E}CSH9N2H-G;C z1;+iZ{{Y~h`p@jQbEJOFKOVjx4~TjXh-`IOto$CZNgk~fQmab~T)`QD%!~WfR+U}0 zGNxI=w}->IK5L51Ra|`;xVXwHQf~3)R@uARtsaeR`X3pL#r;a1YFKL5gPN(Py7V(W&VQu{n@;k83mxIPiP@Wd;MX(W-$Nh6$=Vsc46&TF+Km67vvl&2>tJGZ+TOpudd0zH4+@J5?usq1j0x6<0Q zV7ziB32A}-*clk**#|$@BO23{I5{PKzV5$v=CrA*lI6dDo9MoKAEN^Gds&U;^{ms{+1)_12?&jT%^J-Vk*YjwBz1qdQ{uS4 zHq5X&WHA^kS>1oi={q$ZXuWjOOI((bIvAITx|}2K>t%QDwEO-28TX&;Q~v-2 z6#bF^0ASDC6T^Nr@TbM5@ehbDd`mt50EF#4OFg>kT5g?hXDhUEMuZEe7X}|P&R@yDSb-RDjE=b0OEIg9<-k&bNGvQD8 zFF)+r@h|pQ{i6IU`(k*Xb^QD1wL;i=M%N-5qlZb?70dvhh_e|dJf>t~siGkhi=6yl>=oMTFDTi@kRl5a)t za;{gs`BQ&x?(g%T_Mq@xkHViELExVZYmIfJ>V6&3_1IQIzGO!K08O>JXrxh{tgjfcTFewYxvyr3iM1(GveK5 zJL?@=Pq}+L-98AThWgT0j!@B)<;WNutE%llMmS_a-zJkufNGldvEu9R?N1o^w({~| zyG-}9NpUvNM*y+ssUQ{ugVT(~Dm17^mYh^qlDFh*R=sRQxvI&@_iew-ZmT|%jhb|J z>PqDK5XeV3z$R8FI43w5$QUFXib?e{Gpc}-!2(8qy%n{yXl<%RcN}*%*HOph?*Zgi z4%@=_3Qz(^_tzkIPkRk%sqY`KFYUP(?0frH_-po(*Yqo`ULOx=myq0PHgYUYs7^Hb zV6#H!I~UGdQzU?H*pI^;2Jmydm-|;No)RwH(oH_smF4(3S$DSGH;yK8ZrxH( z*_n@CU6kedP7*k35lJrlx83)D@XJFh$-ACIt@w*nzLxE-^{DS;y_0q2(MEYEZQF~y zl8-Qwz#hHNPL=2?X*=up{+kr)K3-L8dVa4eQJyIAkBPi#b8C6xonl+rY_#YsZKRtU zlHL>v6nO)XssfDU-~rmSGBcCG0#F+O5~MPc2s{x$51M)I2x;bbD!Wv>6M^Z?05Y?2 K0$TzDKmXZH{q;To delta 34872 zcmYJ4S6Guv_qTCd=}PZx1ys69?>0a{Kzb+A2_Zy~PRQd{igfAHw{!?aS|VMk8xW9C zLNAGc^n?-u3E|KCoqR{Rt{l!hv*!NYYfWtNU-e)9`U<)VFwpIF2p|T}=^AVMG~_pz zZfIT(M)xL*^JBYJnU44G>gfDgwhG|+F>pD`Z0sMEuu%2+w!yVu-By+D|DpfXyhRe$ z`)-n}skf>(p6N`AI5*gmV{sbtJu`iRHQ5T!@->|w4k*(lo8~$RLC-kP=|q(1#r@ia z^P{Bd8Xq+p-84^krnh8LJ`{Pc(Q7-A+?YCcRW)_*DjVQMHrD>7u;4SQkA+(ZB{L5X z79StXHYVHMe$9v)|F-O-Om|4<7o4Tn>)5TQS=JVe{IT@4;2m6s#?vs?W{B4?9pjk~ z?h^i((ITakdD}+c4!l=7{~z=N({6fEa%}zTqvrj4XO%?wuWC-?lkl{hbGq-%Q=O6_ zLb+}kRrdg?3WHfdsnPP{?+~E^wUgYvF3`++pO!GyBnT(_VTozi=~p$+!$wrgd%V-S zx1rd4^7WBEXM5;>{Tbb>vJZX|KJ&rT%fK3q0L2Toi*1U0KeXxWHZu8dbyE#CeY=B{ z`8&+G8;C4G!J>rD>2%JLI^Fkf7JnLaBC^gM0@B>(iTiivc$6WxCGAwe99QphOW+>p zqtx}YY8YAY0zabGj>#bGr96a3ivU2T=sS^xi+=uOTC;Q{yO^*S{Ji!6tDds1A==Xz>;5Ao30s z_(1o-d~hq%dEeGAUs|Pfp}A7uA*Cfg?_X4>L~K}7;D~qs)sGd*PdQyojSZf;o@zVJ zFG+5dmURiUpVN83VhUJld`4r{Z(sW)mGINAOTly3zkq)n|xLD6pTbgqoZRq>B`3`E~t{`l0f(!6X0I6qv}wCl&+giq;A zmze}^eL_Us1o-|K%H={+e_T}ut{X2Wy+5bpM2N^KeSp)KFMLnVy4UgG#PX{Sor@@% z4H_#-_ugju{&i7YeT8khY@!|~kG`EqAsIpuqD_E!VLnv|Huw#qY|L<4O{ScuD#W2H zhaaMp!{s9W>CH-Peh)S|%U6lz_kO%DdC)w!DkT@sH8&$V3r*)!5Zwln=eEx2>bW`z zrZ1#AJ%PymKQafOWklP^=_R)IeQ)2}_GkyZDdT^4iDy0e_(e^NN`=3wf{Mt zMko6iGIfo|Qzu|US-bV_A+~;Vsqhg^5YY`{Lnu2e)P6sw;|&(EMmIin|2C!h_l7E) zRNiy?Go-KgxF)8+*S8t?zD#rwws}uZb*wn2>lSGGnm^zuXL<4mk%;sMbf8k;u$zJ0cgvnLM^0{y z+M$N}CEfN!%c>CVpd0ru7ZR?eoTe@sGN%Qx&Gs`5aP(gBQ6~df2n>Iv{zJZGeq$A` zw*8#$4z33A9xh2(|EI|iVn)_Fr(-Z!v7c2;D6?C%-^|9%*)48Vpj}39Uj4wyE`rX2 zzQH&}i@pO?`kZ`aAC|;sNVM6e=Q`cnUac7+2DVr44obFYw1oIo=)X;<70TQwIb3?S z(@DO6Et;bIX9=i7zf*v{2hlZ!hpqIXzf6}!@2RVld!fF99Om^cJ$-ikH>BV4XPuf#oyVn`q!dd2tLcV3T`+g}U#s!A5KXK!eODi3T+pD=7W`<7|WD+{ZXzj-7 zfX6xAj4&>8^g~qZ_3sIP&;Q|rQAJf{qvZ2UUR6THbCAGXSpsKqT0Q@#h#~eWrcWV0KTA)b-^hg8ozf;q- zOk9uXe9cM+*MATD7>fRI^dD8PkgUlFv5QmN5|jy>Fk?p|5juASDavFQQXpZy*Rp|FlP=hs6tUN4@>=GIQ4)DA zf6+#4^z-Ys#09(Kh(1hJBC&8MST{g z`KHJm)6-s_fkh?Xx2qe{{@B)rx#tU=(uiBZuodhMJKi|)oQ~sAQbUJi9A)bjJZC_L z0;RgEoQ}XgX{*P&J^&uNnzO5Y%Sor+$G&$TN}qC*Qem{nsq^{-@IGTvpg!+Ar(-Ro$6$ zGb;O3rKXyWolpnx7s9tlgIOhg>W$36j`h#jn%AjBcEJ=5mK2U_fWM|7*#j@jWqMtrt1!DWmez2v1S z_`z&&W8TDx7Z${Z*=u|EozT*ht> zEJrl75@kAt4u)b@1@>a$=k#~2u@nhino5e?(rXjU?$UOISHwk~wK6VEQ zi!$LZhQ?MfWD_O9G4I&8+u8v;(CPemu}$vAj7xK5m%h#>02UvR^w-=Aw=s3*l30j)g0UzJ}1wf)c_iTWMUn~LAt@V9jHONBT#+XZT7#|=t`cp>fWOJ+gp>QKH^ zAIa_7!M%e94PhMJS@vCmF-bN8!QeG(c-9w%1jC?&B7<+}$x>#a-h9heyP-#-!EIfP zml`x}q<>@p;^q}f>d!0v(5p~V!zy@Y&LB_u^s{vzTT#@j7Mh1B&2%O|fx;iGL}U0; zL53L+Mt^9{uo@EzqGV)CzO@luh5pLakG6^kKU7Vh{qJKhy@h9?Y~C_;0V1Do5Eb3n zQ$A?mA*lu|+k$DjI_%6@?ne{i;|T@(KXi?)`*Q%t(<9BK@pC$-1WA0=RM6t1U+Ybo zFWV?m`L_w9F?WdZeDJZCMsr|Tt#tLk3u;^ClZf!G)ufbX#OaaSE8dCl^tHm-PATx_ z_|gk)F~lxx*hl5Jql}gIr;tR zB5#f@ajG2_=2SG&%P{-=>mXW*&Fy_UV9B)Y!FTr0;J{JI?H_OVBAF5?zh zOYy{oUwW^-Rq#`f6U0S6w#*n|r=p{{Af|M0sdji9;eJl{<3HicZI=jUGzQ_7q$pI2 zb_5H8wYMg?QsegTM8*V*l8N7vd~(8KicfsrvCOSQJhJA(LwNBc4`GhX%7N39dGGFe01x)VEGH}pRoe-?Lp z{eVmH@}AW?^_jT3l=xUi#~6H}xC5|+QAeu>eOVH0D#q7HpVETJustPIC+mq&FGUV9 zO}Z$1G`?VA5}0VwOG_v0t@!*Cgo8da`lWu-*I5oym^{kJQjdSixnL`Ysh58w4>CsIsO>6RtyyZ(DG_%$8B*&VtuoP89=y?$Ab@)UuGKuu^X+Va1@@u<~>vp++ zOF$R3|4wb!nLg$1yZhe88NLf2F>A_M%Upr@!?A~&l_=j>YleoR-HD1DCYIwVxgy+Z zf$J%HA#ZES)@0%cNSqe%eQ8b>*FH+Ut6DL!ZD$p2O8yXl4_DLqrW$^VdvxF^;pCDCf}UeFfFun72G(c>m;Usx8Mt-rXFjz^?; z5ur$DGMfj@5YwWnUm=I}df0 z9IiQ~60Y)JM5SxMdXy(#&ow69^-5pw3#Lmy`fKIswsO>3#jjXp)IaTUl`1#Kiv}HE zL2z6O1TlerlxbIvhLuS@`Zs{F@`va<_M~jlw|5Ghn+1&pFy92VBD6e!7@7*pRKHzP}e}|({v)8we2zk(* zj(b$*DYz3}bU|<}t2}rSYdBW@o9QV>%1p#T-WU6{40YF)M0#}vNoUcyh?FEle&BZ} z`((G%*BWts=Fx^+=T7b*G8^22{IC%IbZQUoQ*eoDKp-jpV;GgZoOEfy!PBoRwmd~Q zpnP*!Jjm^nBEZ}Ih#=PzYdz~5YnBUJJEBzi;l3V3TAp}kLcURRLURL42$ym0|9r6y zF6!>QO0~}RsoInW*u6rTyPp57uGi7~@~P)>_X>uHoK-P_hs_&+q zy1R>#UlqmEFyE&tQzysG+Ervw5xc279{d_I>BANKBaS0TlLH9M4&p;H z9?Q20qTHvte^@c>?`xHo)9)m#HvP`nciiZ>(~vjw>4kljq-@UL7BLH`iu>=>A}mc2 z`RUeEK+>a@eXrrrQa9W9a^nn31b9J9C&}+D6>#gE2_n5e%d2gQ17a8dHvXs@SaP*` z^gXQcJBockP1W`%+Id$Q!~VBha_OzlL-9WLbqBryb^b&F?nCP903r#+MS z*}c(oI@HKL>_y6nrm{hLY|qlsU8BOZ0b2wRQ@+%bsYuiMHkI>gJgc|uGb*HUNAtDx zYFfgok4TCFV+;>9Va25qXX-~voc&W=TeM{3cj_o}mN*+MF`b?1&)+d+Uw1g82H#to z*$KTzWtYT9Z=Y2TLzNN_msla6x&?cS&*_*tSmx&!^+Y6AohEO;e;)A}&rt1O{H7Hk zv45kkx#hckhHEK4s=mMEX4)F$z#khIiUxvyZ-?>*^7hrXb5(7hu*1SM913T#x?$V1 z^Q6&t!USzlM2Ac(2L6Ny`H_F~+vL&ErJz~^BI}RYKs5X`w{qn94)p4`gPV9M8NPdd z=6z(AMSzt^y8f`=KsM5|#xl)~(+o(l19Pju!r6SWB`6WiE;q6*Ho|=mqHlByrXAKL zVc9T_3u@Y{&a5I^krd97&*|KZW3mh0LFHkro3=H1rFKRwQ)mKK{~b6JcA$GLtfC*6+hLe=y}&KT!Q*lf#>Re<&5i56une3Oiu1tJ zBJ!%ZgIc?+52Tbd=GSz#>sB+gQ!llyIpk@4HL^BXKE0+oaQnn=_DsFWz#&LogrZH> zrO`iIKBtQT-8iQMCow?s|0Z(BYAOdOfe5hZHjUEgzGVMjfC2ceD7F^**VDO=3j&Es zA<6F?#WU2EQzIV=Jjv@rw=($u>9?Ui%3f>q4{F*Oo?5Ky95PApbk9wRC=1yvtT};I zw?NU)mPcpDNv)tbnly2wfoMl^CRbOHKlElpcWOUSpAlId5?ADN?27J)<>&C~7u3MI^r(Om!X?1k3w;+KV$tbO;eT00GPKh3v)wYNV;-;3+GOO?W`V%5dq zP8fxq7HIq7<7@ld((5VKxvtkgh7g%t0GjPze%kQOA5IU=^Hes+4NnIaX)SV7J=k<6 zg9HuKiQi0Z&)KcB&sxiQAT~{g3%2Av9A*3=lUhc7LjHi83pcYS>XeCg=%hm>s#|z! z`aPuzZ3HA=1I49}7eIMZ?pn(DEccE+gUd#_UwGwH(o&~}kZ+;)d}0n&zkVtMo-tI& zm#Fx6ECQmnFuDIOC;}kgU;hZW8OP@$sn00YUeMA zh_fqY`f@4R?U=K+<=(ARS-6+0li7f5@LiA1Lyu>VqYdorkZST%PImXZUL`VSiAg)G z&?{>wn4%vU`dfuM4j24In-%^#8iha0fu7TOcSiirOm}bXUANJNd2mPg;3>i%MY8Rp zp2sRY2ss{maBw$P3zEUcA3V+Fa;f$g!6sMI!aU8+=NMd?YF7b;wN`G9ruM8JiLa#F z=!rpkmA^G>x84)fSPeV+LlNe*Y7Du3!BJcQn?fG$G1?gNcTAt@(`X1&@~5!<8>g{W zR)Tpox-XwRzDmbI_v*SXq2DxC_Ev8pMC(=)jM+02BTE{lr7{|A@I`fp{AC^S+jYet zsm*sU9p+hqHWD8y^cmV~K+g}xVZ(%!xj9$%Q>364G zMB`aDoDu2yc1uaPF{nEXA}N?uzTim`5^2j{FuF8f;PmjH3|^^0x$hdt6q}m63M#jw zD#Y!cpXFLD{w`P^H7d2?8C%cY=ye<}1H=_dXB~iUp$o#fG7d}VQ2qvs6mHPn79^b0 z;k1(2mIsQ1kv-Kg#W08EfpkPBruUp5u%echy^;# zCtz7lfK#2V$m}vhLtJ2vU&1&l#l+VSZ5#sgc)N3EOafiR$(CS`moc55Fb2SWBRl

N8Q*&VFtXQxAjWHwqJ1eVRqoi%enfTi0R=F0$v~X+OhCMc;#V8_1-QZ4ev_Qd<2T zIwQt}7qqSVnm>}};y!NJZ@0rMkvkV)Y!~2BK;<9@QLNyPiH=Q5(NJ~%icJKkO+s1H z-&l3y!at`LZ5deh`I*P^8Gtl`$#P^lWK8vAF3Lp>`>U&b!Z%+~KP3$LWPk)6vRHSe z9mJ{kI&WcPk;;>+hIcC}eX*7)@h$;t7<6gb7sQAb1F)RFM?eUF6c)yRB`*-PrF{Vo>%M>l2an~XN_df&jb4z4`W6^-zS|%`|Sk0LR_se zcb*Sg+GwcII#zn}z$?##XC$XWI(&Lz4#RIp(8OGmw(6*Us2k@&DgG9OCK86Qf*Zb`EjU-1*~fhpurpH(bHd4)LAv~I&Nt?8b3p} z!9$-5-v}<8P)x;D8;#-6QM`BGKd!$Kzv`&?INqe>^4{gY)r{v>Lpp?2yC}A7lm468 zyN!WIx_J`%idG$?duUu>C&4(3QZPM^FD)tEauiPLxdrLq6LvLE^@^*?T4r))x%c=E zEGr1OrgzDHoioEXBFf{RH>oD@+L2)-=r={^n03u;u#WA`ht%|x1}_qP3hcF4M;TE! zWQnB6f;+hp%2bzcguKjdJ?E(oQAns}S|(!^7$xM|^IV!boNRyN-=KZVr-X*Scf8Na z*4S{_b^YT*_g`;X)U4ju>rU?yKv|`g+(!aP>h|vz5O%oEI@VuoTjCzCS8-=1kXbb8 zJ^GKPn%7d}y`6-MeI6vhdS%J?f_A`e9v3IGN0_M*3hB{QMJ3Dlx63|`TEj_}*RW|z zRAIU{QS~R@9;u%q@2HhrXdUy}Je3Ckt}F-&j}q2vz3M18Qfq z(3<{wvKD@{=cIEPNz))IMV`}nf!N^21f{O68@uv`BHxoeNgcvtMH4%_&M^wtpxUnO zElERp9G|n&QJuS!U94FZU7X6svXL@^WrpTK?Y7k|2}i5;xyY#v|5eO-nc0>~;v)+$ zWD}I#(rU&Bo{6g^ODx6GxDmiy0h^2_C;T2cfr#$SSHRjbE64`ifX7Kb5#fPWvn_V5 z5qo^2=GcwuD(1U5e=u)g{(G1e1&X3gRu$bB8%Fx2ZUz1>tX9*$I|JM zG_ywnk+)XP>E5Aek0uU{uY!V&dlObD9AU)ZS@qe-s)utO>L+lD=qE$|ORO`ikDm_L zfAdw=+OfZ;b=~+DFko8jTDVtz;qe^2s%8;^o4bKiU!;V%GVUDP@A>4mgzsYa(OEyJ z-k7G^*|3%9KH<5b-X$h=ZNg9=N>i?3Op}XTWFBXO!tOMN1&by(F+##1{5f&f)=gif zxRl-G<}1=cQQeUb$TEV1e^%2gyGq5%Op8NO+lsOB`KQ3$i91WrQ)Crw5?($h*5s}* zmRHDQbzM;lcej(63EV$mvy|@a{3eQtmyiH)sYgnX2uc%O-(rpJL5QYLm9G)$?nT@O^LW0qzXTIuUDcnmb6v zYsIvw;FkFHkijlLrcR|hKh-sIVMqP$1xPXV0&@vJAATzMyPuPkHv7ibnz~upq*GH+ z(rKuPzkZ>HV-#BT_6|X;OO8(;#i zw;-}dI8~aq9)buqGf`>x`^qlv4)1mtFdz(rU&6qZ@UqiGj|tqp%wh_kVd~HTnT}IP zUna`3euK0l(%%-z^Ms#0sZ+}2Hw>6ZI76Swy-mQ3$zXz7D5(9(Lygsp!O9dvxH<+H z;v^~^d$yobCiB~g+&Ee$K8Y-n`Qe<-1(u{J%%%Wh^HdymSBc+i2caBPE-`k@Sh2Uoi=ik^ zPjb#qCeyBDTxW9TP${b8E?oZX+qObM>;>3%#)=Rkm!cXyp@9EnyDB^|JD{uo0p&Rg z1D-mNQ|M0_si|e*ozhw3jONs(PhOqO6L^$rpsg<Jyi zo6(J~0g0kO_6?l*?Wb9GUaJU4?++1m%IdQ`@y~7JOjGT5_J#W~PmW-W#Y zd<=N|vNFmpBEmuytecZ86Wq7uzUq0@uyvq$pS(htGLFc9)I`u;n14H88|`2HbkkZt zZ7JM^neYTniSsLe@`EYj=EHwZz4^V?S1qKfGNDF*X4TL8bpQVKj)CsthvkDd*@P(9 zqxy^-r$gYXR?Ok(uy6TX=L_LqR-F3$F80mf8>2VfQ_Ynw57NBCREEVhGqJn#v&x|d zN%GD+i?iWta0DmTCqQAWk#al4Z?`;o`ei2n=iK|(9(_-FLFbX;YbTNHbxxNJIgs-O zPagt645;qnm4b}wTck|vAL-rUjC$&3 zalh5buJmHz2kk2sVoKxpBDF4Ed`xjI@5#VpGJ3^M&~6ZH*=-T7>%U^2@qFJq&*s}7 zfz*7tfr@HJ`P-u!+~Hc54iY|9&1UF|W*ksEliE+aM$|5Nf3)+~V0>3-WsdUnz%X2M zggLq4uVbsauE!F^P(;nsPd3ODWvYg?iV2*iR|XhD$vNs;Qq}j!a{pow{AAsgy^puY zk2(d&=$@N)I_}teWG5-YfSWhH?7p7c@2@8hTn|v?Pp6?@SZ-B(#<8aq7p+RFoda}p zV>xKrUo^YCH>Z);QvFi*xQEEfouj`=@(3{+rl3x}fF7<(K(Fj=KT)?`LwbFh4L+xH zARhIul|iKZbZ}+@s2?|J+d2chj|c5tFUS7*Vj!?qVhR=;lh&lrJPf`2C4z0nqPQ>s zbh!C${wdPGp(&|YotyIPLiLUV6b16jy9Jc{a4F0(VOueEODR+_H4K+$Jttg09N_Df zag5CvmVCbd7wYP?+o!Lt3OL>9uZ<7Qsx6yr?#}5=cuAZVS50E(fMmQ`_h8}pDJ9XW zr+{FjHLcXcK1Y2*T&Hr7C_kpG2DMi&+!!;&s@^LT-jFAwyn=?bx&oGw1{XdN^bgu6 zJjA6v;fqdzy6J+xxa_^4&cl(&h6h*|w zx49}@^z>}W4cbwCygQC`W20AFaCWb2KF=twIlW=g`6>AIb7j-oM3LKSSU9QSL{4I? zyH9ckHM8Fvl)L^6Ak^xO9i7t&%>3cobZ0!wUeKD!TJdFMEiRQyB=i^(Son01a*)%MXj1z)4DbLVv)$3lTYHzt_f|$D+7w7IPIBqi zciZQFn?N#%8{OO#HLIqQ@@S9rs61n{X4N9*)eC#2Y|D{9-TcvB=9_m{hIn;0W-&qF znXSNu*@kV~BCQI2PK^b#_ERsE{#=s_VRS{eJ8nS|U+}R_n+U=+Eq=f)F$FI|!r$(2 zJyMuI{>#re!};0jK*z|-FfzT4O^ zvHE?iOx1p;aUum$o!@$q*{japkQpgT2uwi}x<^BJ1$0rzy;(UoRgF?o=NC6aN29A` zYxBErluiu)F1$X%DI=!GLvJtGqhqzUUv=?i1Ze+?cjH-Fu!SKT#{Bn!CcSChazAiD zu*YSI&-$Y&etL`8F*VVh>ZWkbumW%L+UPQ9yS#(>R}-XN@`olfK{FE>oPA(AQFe1~ zt{(yu{2-5MWvb)L4^lMXxLh-Px_y<^%~VfkQO_>uoR02<2QP_#sJV2@WT2!qXw0)o z^Cj~Jqfi~$ISU?cL-2cz7;kBd67oTaID_MYlS;ivUpkT-&3OMFES3cm$KMvUVqkCSfzffL>V+@7L= zTJl)49*56a_EGS2x@UM1ebiqDw+t0Z@Pof=nrxLRQ(l{6hZ84WCh4k!Qxq(2e0*(e zpL_d=Lcev|zF4x7#7*`26>v@`4A-m6AWdG(V3cBQS}-Z*!LA)0ZSh~5&{h$BLXt^} zugDJ?dKlr8@KcVj#9mvUMG1Xs1&zKy(N(;H$EpZUmY3{`Zt zp;3j>S4Cka|IjkXtQV#PIuWopopQVa?069O0j?*Ivj0p+CTsZS3^K%JvMr+w-lxzH z*xmo}pto`Mg>h~@&uA*s7VBr1d!LsvrR7UG+Qaut3IhZ6D8R78K;u+0_*T>q#E2o? zBkWIG3m98SNgA!4DeEh`2>P(d4vve_tvcsf=^a!VfRy7chUhhRYTn?wQ>kfn@LPud z%6yI1tK;hJ|GYDBB5Xj@WjiSA&)0Xqh48;2M)!Fxlyb9uRW} z7j25~5*Y&Ev>2=RA_E-MxKdlKe~_%bcU>5m0-txku^&`l(TMt9rAh;$`pP_{KwbfKB!v0HUjBX#{Eetkd; z3g6JY(uD4kjncYFeTL&f2n4GR84^)Zi$cxOdI0R^fUm;#{=B21=mRu+qvwAKcY6Ni zhPDL~3OJ^I{xP@}qtAHD)U>pDJhMUXsbYLc!3?%!DQkI@F~g*AeoHf~v1o8HW_L9V z0s)7GTnuww>s-z(XarF?*k6oqHzu&{{m^9lT4zUb0PM&Ru&c-W=e`1U$#3qqe~`S- zG7czT`amcPJCwQm{Ws4N33XDb25`OAAN3gd!lMyTzht zVCJl79<{;jH2MRI;e{Dd?~vZK>}&|wOF9}Beu1fmj>c4Dy0tOeTq_ad8ofu;4W|EU zj;bzhI#AMi6G!j+tM7;GrwgdQN(n{Z2NoApoYNgZU>#9|ma3X^!U?D=) zE#S{@8{DjRUk{TOX#5b{5azg}EykDqrk$Dkgx@WTkYjwM%;yw`>+y2 zo++ZLVKiB(D&rlGzF@W$m;tV>SNS}SCM0l#Y-q*~?2gg?3z39>Uv0bSX_^*z*hzJ* z9C##ERDCftTZ5(Rjp*CgAKRxl`-f_P-eS6>EVZJ_oj6KVRE*#;jwTW8_G6QG+t+uu zP}z5|JKD>837{J*1S=~0Ig_c@nnfEypHD`H(SYC|in^my5PA(GTbD%yu$N91srl{pCb4`n277V!5 zPPeWkmQ|6%R*t(DJIrv7Y4%)p`EjLhh>m51LpPde0cQXc3jele1GXleK-h3YW3Ihp`xCctosIk+vT zWS0>4#F9+|jQn}Yv*q<9bJE^|dhdRmtoAE`TO%vYZ~EGUvR04o_f>7)@6zAOS?C8G; zjsll6#2TNxi2}u58#}Rk-I;iH~h|k z;?NbZ)H`j-4Gk;m(~P@dO}Ce~98?r#uj)66MWriuiT9_luc76}76<1fb@ZS`9(f;s zjAw8T9OxqUT~4^%qqrfadXF3VQ--mv(J<>gzZwcl$NFhOy)NR9DUgVrOBml^H)Cy@+tWy8a} zVRN3lwSOjH7;KA1_m6Wrp+>{MfLI#WIN(~X)Wb$*cR;mZsP>qpC(!UJ#SE;K&YFln z@oUgHgAC@{&_|_;x#kWR=@MPeOedgl(>CC?Li_4qj!AvJUX4$TWSMKgdNML{^r3}> zn0S{-`yMi^)vLO6f!)Atw$n9f#${P)CyU@tA^l31m7(f>0V#Bp5%L*_1SO{S4_L+G zw8OznL4My!M)d$tB6tLF-?x1VIojtmEIy6zJU>S%- zer>mH1XyJDqTS+Aim#liwNSST$1uh@-iv%I9pY@U$chgluoDJ6Xr?ac$Dn zh~dX^O=p${Tfp4L^Gqw#qh!)M-*Lu14xzw*@*x}eFt1?0prD5vAOC+gXRWE(k?Bwk z#vSyWVtcgynYGMY;rTL-Ya%9Qf{R4;ZT0M*l}ryyVP#sgT%81>B`WRSa2`wxwB$3y z7a5MIkL)z7D3zqor$V4L)ze2_*y764W)HxJSnn8P0J2Q3UMZMG+D$5$Ewc*FEKzM6 zw?M2^<@O1G9;uSI!g-q0QibjL4>?RFpU>SHusVrN=QO)yn$#Yh9S5_LUtgSR z!=<(^goadm;UO-|6~hj?t|^Y4Og^N|pPdn^!U=F=$_wkQ#lO!|HF-h(r7&Io;i{7Do>Jmp(*)>g>P}G8PmKYtMc3AVW8DTb`dJtn!&h&{_Cxa#eNbQtqf%`oB#H=NTE@ZWo z;e7b|(2W7Hj@p?)JsX9h7CW!R_-of6<>I$DwAGMGYVxP@&A8fd%Z$$CIk+BhiGrz+Isgvzt4!15AOh@c2 zO;c-gO6v-ZE7+&okj%a;97kg$)W-Rb-XJsT)sHJU=$u-BYuHUtGyWA2SeO8e!&z&w zgN4wO^!BRZ*iWuIY0jJGWhy%G;lZidDO8O(P&$X92)W;**RKJo660bc(roP@n{(r} zm0Ik8=SP{l#5UXEkzCZcaq$Kb)K|AXya^_i{>GP`VtuaDy{DtQ1S)#!WeN__Ncf{gyV*3z)pQ#*C2kX`y{a;MinDZRW7pc~&^&QqJ+Wy-{GnY;pb#3`7|Yw&GM9s?YGvwvXRV+q(WD(EiOW|E>;mT5ZYQjP zNh!hBS^9&TA`!mUaG*XmK74aB09I((;s_gR4Vpf)i`!^hXW#DN<3ORU8W4H1GvM~o z(b2iozJk91p9PP;PE>y{>s+W7JzQqIO8)HncO(wRys)&9z5B%_oP=!sTn+Vc3d>?L z_J}kWmY#Ub{=5F(f@MY4_`kUFmXx&W;uNs*NofiQTkw4iF!w95jO(7z*Bse1sPO@V zi&`;DQ_;hS+e9>#^ExS}!1x;(LZldtYjS{eWeQfHc0CQ?MQ+rC-ka|&X}z%GYVQ2qEN{`PkDLQW}@HcN#Opcq&0Q!m9bl(e43m!IdYjsiy5J3jU29IZ9-Cn#cc!#>|;@Nu&R7z$r8%fmndw z>t-~xw9BES<^1ql_>-Ca@!|YjrS_!*&553cZmFctKm9VCckPvl-<(kvR`My`ra*xd zCeE}mV*r90Q1d+e)1+Ew9pfUXe`Fh74Ewi zZ!9|}&i*@#>0HhhW&_-{rq@@}fhlwim=6?pn8aqJ9>UqQtwfJwy`kAEh8Nt4H(<`) zUCCrA)a6}hv|6_zv0u$yJM@){O9Kx+GO+M)&7n-SW6&;p%35lJ_!QiJd>>L8r#_6AXw1SMZgGStw1*3$+ut@Hrqyv!(sDBQPE z&I{vk@~{^i01oFj3QFNjZfmsg-haZcA%MPWFgtVuXbDatv97cVGvx76l_oRu`~`_UsVBV*9jE1zlPU zv*ZuYQ4<|f!A1J1fK}6!x`u1{V)#Oi!CQrrq8k|N4DZKRd{=F3A8gGe4f_3@yT!-z zQ((6EBxS8#Me%UW1d;>UZ^ZhKW0%F95BOqVkt!c%oU!K8ZgyX|>1h1*nA;Oto`x4) zV#W@^t%D`Fa^l65)6Y;^;nbLXcJI%xl_ficfU%KwX`gOhc~g18a~=WNDG5 z{=oejiy1ouwL{DC@WV6R?md>eHWM4XuZ8)Ww6k?_gGDbbZYeXLDT=9O2Nu;Sh?oTg z*UpNyAVEZ{XmyX`tqfa_j~EAKJ3A@H!2Jz(tM<2lTMmY}`d#Yrtt@vtY1iZ#B-;4c zh`WfcI_e();n|djsF-`DIjtQnaBiM;Wq~=l-$SpzL`6>AsSO$%G2C30)krVG?Co}v zMY*>Ns)A*|pBD58hLS*>fB0xEEd{Y~PEtX=A<}+&*w_23eD}}01ErSPo)&THl*TJl{ZwO`}RPgHD8(@R3c6)HghBeuOJRkf)5Tlw;XqY_8?a-2-_ z`mpEVqm(y3;&a*a1FiS=0|I@6@dPFBL@0<2Uh5z-ro3I%l4&)aMW>pxmRJ)^U0ls?;Q)z@d#?FeX!+}S0VlH7N~P{|CvYs_6w zrOcRXlM?&zWx;YxH|9q;h}GzUv4^3KG}M1Gzt$?Ca?aqbAg8Cx?O2OCwzq5Kj&bAC zSd$La6lrsO<^%}p7bf4;K~tot?vt9b!9}EELVvdn*8m<<)Y%kYvNNYkDtEETD*|rg zV{wxldl~A@Oh&iVUm~0=8S?+C;j@nOnuRWiZG<@5XZi&~C2MN`JW%Gd_HN-#6y~aU zd!SuXT(qaWxYMflV;Ct}KBTi(mPqwJ`S>wgGM_OSeAH@sYa+7JGE=qE-_=(2#FFQk)G#& zu5-R5-*R0^?&qGr5v-73xRc~`ZQ^)(!NguNEzp!Nw{5BF)~zwCBI)rQva60~-B&Hy z`i)g@yP1J~fGS!+=Lw~RQ#qHX$0*e#WMMoI>A7?XZQNq^aO6~4ClBS@e|08%jmZ3Y zM>g*PHwg&#Xp#NNj<#ZKYVgS?yGRFFJ@8huv(t--@(Y^9t~FA>PFK{n>t8)|tI4#N zR>&dxU}`gFdfqX9iPW0)C{m?!=v+KYyF?qBHeGitn#+rS=Mxg&b`C{m5h$7P{TIlF zTx!Y_vn_dcRpn9NRk1r~J)X&Ytc|oCP&-{B?8kFqNNwtatV5*M1};!WWA?uHT@6p8 zg2t|<1@8^_trZV2P@V(ch+pOm-QWKMB)OPf*|Onb2sQEut71p}M4h<7?a$thkB{)$ z9P05aH~s98>z7Ywyu^g_I_BzHSplWug4)Yv4q3T=)_uF5oz(Y?dPhP9u-cjb4PX}w*ZT>!W?ah z78myaj{*1}6yT(+5-ge*!UEf(#p+1w9ThVI9XeMgRZBl(GZu>*OA7oID6*H?9s96K z>^J|sE4s39^DL20aI}6K#}PKrju6-M4_IxqR&mP8cRHxD3=OGjIMiV9cCNk`cbKl9 zLk_GI*UqS|LjN29A=ULDl=8`6rZZsKpM)ZIGy z_Tc|0XO~&t#60{XG0vj%C>H&r&ENWYw|}R_cTFyQRVmcmWNyO?HaoOyqS7>Xuy@@E zW3cTmDZ6hzHqi>#DLKgpi%3k}@s&8-HHIej^}{5a(RskheoX&o51xo>aK1TtYaLgY zUZ|v2q}t5AV|hKC#Q>Mw*|;yx*IVlo?#J3#ZWpLXzew3}=`}5Iy_;tm;A!WBp6-KS z%X<c`Zazhl%mqSDA3Pz5#>je_3U~**Mfz|>IF?`n7JNR{?Tr<|^ z=+|*WD?8nYsu+0%;X?Bb%Of17s`3(3(-&F|4NUj~&R>n8XrsP2k*ML=^x)#HO`4tC-fg=$D8bosr}B+lZ ze&&1=a<}Q1%`Z!&m-!paGmN*Vj|!bF6KyX)q>^1E85sdx2ws?vW@hx_ID!{q7D#sT zic8#;7vG7b3@&*n7Ea60^LTGzZUN8QgW~#^7Hjb{+8z5muZh@G62Wv6+*AcB><$R+f5@7P=b= za-(L*zUrQ&&U%C>Hqsf;yl1upK2ctp!lqreRPliIt8OT@7>-&`y(*Zz;8GD2rv zBFfCnvtDsSL}g7P+x%w{ow+`Yw%Et{txR*5m1o(ZJUb3qLyrrwFa8%YejzkJMc58vzZW(x-gwoOCmiK2VS!n?mrLNFWD7QkLRC&N{* z28ouNSg(XU)o_xPC{(opwh3|p^BkJ?i*#md8O;${S=iQ^)!E` zo(>w<8Ow4k#E!Ay9it9GB^XU_6UB~&8ZP5Sk?A~2a7)2VSSP=40@BHG z_P&rC#J$jS=Yd5pU*FsC4^?+xo~!X7+(74X+Vz%~_ePDFJ4GzGPFa?xa@VPuqd*l1 z+2@&2&h#@o&QwXjZ<|QgS_TDjx+`8TT!fhke>%w~uw4u*3zO~SudEw|nR`;2lG3W? z9&*^!T{UCQQ|^u*wB?sPBSmHaU4jlLNpIWlVw;R`HArdk@Vmx2a6`|?QmyhF6X>8; z$7GgJZlj4|IT5<>VSk}ZWV*1!lr-F(mH=Qe#MEp809={(n&elf2!>it>-m+3MGM`c ze@Wy+CRFSyWQ#l=p6*x-Iihzc+4%;>^nPQVuaK*dm2C`Mk01u~mW;N*X=vKDPc}C| zg`1Vy#EV10)Pqigeq0aym6S4j@Rpu)~P7Gy<=#^^nRc|^}5yR-ei{CAi5NE1hX zS0)Gkn2Ht{1z8)t$Zt8^nfC50%-t9ra#BbKC`ZZj4)93+O#grsOlu=_uE~Rl8P=o@ zlPDs1_;LrXdSTm}gzsjYrW(_9U=m{ox>v&dx;5=La$_0juqhr(xoXoNtv+K0&v$R+ z{E$8S=GyE9%AX!F)zzTQWX)jI1@TLzlr_SAD`IK)pJ!O z#2&gc1H?`v|BO=#Bq`U(vCSbM{)+`{A3#`<8f1iOL0EoBK76G*=epZ`YpMShY^wpI z>d>7rMr8f>ZC{z;?M`oL1s990y?)G`dzYa24^lh@mFMUR@N9BYYI zVGM`aXpI1C(eMSlK~?62Q!7ULHX>&XIIDAse(R(F)H~t~gYT_x z%%4pjD;sqHZmp!MH;%g@hygl3zsq&F@x1zTpv;qk;U_l8Y7EZwmYi(Kw%Y1xh)4QX zpqq}LH(K;6UnnzjObMs~sh4V*5$Zt)Ax*7$zhOQ!Yq|qffCdH8^v)z?a`SaHW z_DXf*l&YHi?HBZOY`gG8H3lFMi+a<46h2le@9I{V11r_}I&;*d1J`+c@~T3I6ZV|C z-FQ%!w&=&~$w4)Z1Vi|D=v9LoV>_4~j?wwKwH7g7Lju4EGt4v$~$cR5`P*3jEV$5TE9|;VTLg!i^`$s8HfGbjCRnaj%2# znSXtc%p?%BJ!VsrS(gH$ZY~{*{L7d{aDi`;Fqs40k4_(mLG zd{2AQ!hm&Ks> zG)H$Zu-Q#@snRmQD$hKT>JsH(G>gs)88z7%0`j0>=>-Y+Z6Sas@Di(gD!WYk6bb!+ ze<|C;l1&$_U=#RMf;QresZtUpGaGZEz7#gT z$}A9U;dvCKal;O(&Swb^wE9FJTLW3L;>pFktK3ahIc*|TS%YNYnc4Jun@FW543Mgu zqF?kznxN*x;yR3QNsqG2eI?=H7{&yL&(o=Y^e=l^zHaDkzl(ObX@Ta`&$DTENJeDO zI%Svby2~CyZs#O0x>7Wi(zN9!h#FqU=ou5)?NJQ?Z~B*s;zmUf+{dCX(Eq6;`8Ie_ z8F)muc}*kc4cv#zQ$GJu+#eT!x%di1LThE#QRZ{EnYOizm$l>|&$LIu+}u871IchG zG*wfPMOw&9g3S_o?k|&^!|p07D(xq3dY$t24u6P@!U0nARVW?a-B!WC5c+!p`j z>(XmFg0;%?&ckw*>#I6}ypL^6Qoju0zh9Ec}5ft55R7R9VuR%L(A z@;jRmGW9`R_U=d~V65jY?DSkhR=mCEaML1XyI}^FLDM1TMmTNpZdMGG1!$h9bKofj zBwUw(yd~lMYaKqA1}QB;^*wQ)==>k4w&YW}L-#l3vXDB+ROpR+Yf_=^w5ZXp)ty;( z_Q=5GKbNvsIlI**c|ql#IU=PD|Cb4Cedsi-%Vs8GX%q&8>Ge&*N^4PivNNonZ& zZqSQKFP;6o413tz%zi6s0Nh*|nNg(;I{bbOcL1ExtaNjdL}~D+u%>o3eZ0lDx5h$1 zHUl9y#T^(mN;U{Mw7ffTk!4K3>w#jOMy3oVe^t4?L7d26duY0`QCBM8h^Eh5z8~wm zx%t)S%bb>vc*Wx3o+qrek9rFPzPur?r|R6KibAQ^7j@%9?1dQFflGN(70q`7CMQ|t zJ2};g!ULmRpKYuhU2&4nxZj}k^#dR9(UK=K%hg+^NL%c>)U;%1f0UL~U*rN&)g4ni zHQDLn?H2Z)a7{ozG-YR-1~m~!xi)S^+4KM;yIrbu9EKKr8_^*j*~Jhcp9zz+EFiRy z*55cksEu)*YGGDA%*2jv`4&uSt&*=w60 z;eFiPj)g*k2S0DCeycDp`EmF2 z!XG0ntDZLTJ^X(V{r~sI_FHzThc0MCQtV*J)Sl$!Q4FaFbl9dzRP${`y67ZCIjY*) zZs44(MW*lji>Fw+jMdM+%C}i;$ceiJf0B4SAv5A>Z@yLl7>Hq=I7|+VP3MLKh4R3IciA62zTtq6j~CQR=0IC{1p=>_6L%dTzo!1HsV zN%ScK%#Hv=IZztF3N!|@siEr8)VvB+NbcJQ0LSLMGffvo0^x*>$WtL zFF}Y+wnqlczD+#hJk@e2{df^BbC=k56!kpkqJDVRHSK4F@rGyXLeRcmeVVg@drj{6 z@%;5cDkANL;#I9EXeN|URc%gP9duXl@$trtR<|(jfZsC*XmioI6#c#N+QN44|2A*V zRLdo4ZEM0DbFh3Q!R*yOS}TcFVMbYFk4V5;ryb|d>lane|KlOOb-GQqqZgD1E zI$r65wfKX-OsNkA&xxkp2tugx1N>Ho#wH4R-Ud@X*85`(NS17_v9eu}+dfE&?)~WN zU}Mnb{4J;5cGYaUdO5U9J?K^LB~Mh{cum4U_>7S1`G%%fHxcl;Cw-}=cct*19EkW#gSd=fQVDE%qu8n11)ZE;q1IRaCQ9hy9F z-&M`|?l+Uvrduc3LG+_Io_tv+_r%odGEZ+gU)2^R3lruSX!_lRV=}*!nwFM$sx)zE z$|_{G`vyjKO<(st*^CW%=4hN=R+76~wn6i<@N=&=*|(T6cEV#D(>{aw6MJ*hc5|-@ zrOKL7o4s7+q&age+8wQIyqv~H=OgPT*Djn@s9aR!>@5ZV%!?^wb{&yRNP{|8Y{87P z3<)j2*~gS>SOn)3eAtw0svXBAvrPI^G{`S+kof_{2QxAv1IgiTHLFS0Ye`!!L~5E6 zp<=st1b(x@vf0ZrhT?m*sxE0c7VEV+2;E#?_3JRBO7su`n%-}ozf4za%(%le@usPN z`g0Xow%|OOjsvUKS$at21d+hU7kO`;&76|lhw1xdt!7w#l~^!!1%*k+cqN9yCNJnaT==qy`!FosGqW_6TI3uu7Yw$9A;Jp`wo&CUn(GomBC44W5xK| zQvF~tOwp=wlpk-OMMO|z-OlFkWBk&|VS;ur68H_A2cFtC10~*#Wutc_k;3=$^>Yk*KaC()57bWShm2jbWW3CAy6Fm5sLF z6((KY(=EE^qQpr6<066tN_>sM9LOTeBAo)V4oMXk%_O@NIX$sTWqzN2nO$4PYyMjd zNDD92=&7_CW_Y~1{#uLw=((=|+lMuF3?gANfY&~pmc0bX<2KxSQ3T*?frx!IKb=#(0eQBk@Yb zY9qvS_@1;_B17LrGv0N!pX0RbA3CGXwS(`>_tny9||g$ck9BU6=R=$aILThfL}Pdx!-iE1>K#&!HFM{5#S)vmDpG#`RKDoss?{6gQ@I#AZa^*PYOKc#W?IG|kU2EH zsU#{b>6SVRDfYtRx7rGe5dY$gfS8t}hU_fM+UzOi1*<$L5$umHg1_k-Pu=R_6ovp@ z^`t7A#mP(^NOAwEdMQuKQ`kwQ#S{Py{D`g2OzG2<94%n|Lw9qNsN?1Jonm6SvVi~iL zw6AzA3T0k}=$N!=y;@T<1<~q9_XoqnRkl1tV*_w*RSnNLYKr?pzm{*v?(8)@CEfUR zS!@^3Kn~@O8b+2oG#RQPk>xqEQ}DTQ(u3qr(uhG3@<&){J*r+t|kFA6>%%40FEcfa~cGQDSXJ+aoYuJ{Sr zD#Lto3f}~ouCTmvv1d_fNV4c{kEdzAmos3zwY>%}aLCTkH3#SJ_n%VArq z-Lrl2wH-PFwV`6f=2}+f%F7B{@+SEGCApeux~1>OQ2ge;BX2ko&41Sz?QO0c0#Vr+ zi@3!)fRC=VT%fo#SxaM%9y6)%`b;w)QDuvRaum2IdW*MZmkUqC9Ki|qgJuUrvk?J) z|J{vZyZm@Pp{+Yrhs6{=mfM`^MX_kCwrL$i7LAk9>lzd4kZec;G4l2{raX6}s5SX0 z-hM1vjxjc`I>O+G!Kh+5Ruv#cX@i^X9M#lGU9Ta-?QOl<)N$W%Bqd!iF{C|}W#`PQ zPw%$2gor|BfyAcC&T1$=SU`U!IBmr}wnNUu+0$n3b(B1ieR$-=@ZMnK2HO4wRd^Pr zGarFc-~{I+2vlek=7Z@%{Z{ghP+>?-2799uo+f${64#`j>HlFt06H3?Mpcro}*sUK_}sCk0YFY;es+7HN>fY9u`~SSxL6f^lx1VzzPxnwXNn!}r?dDTo!tjr#YWfEig!B(PXELr$%6Ac0*lxag;2QTBsxH4G_b@p| zeePbgAW?F(Z-@BD&dc5A-+>#pKpA2AN6o4Qbp@Vd zJ|{jm9n$pk7x)n0WpwB=)6JIrlAHy#eU|QdW2gWDf-JV%RQxh)uWcWi?)^gaa&j@3 z0z&OYsK%{jL6~{2l-v7`V96w-yMb@k6&<_ag2QeiT5#66Yw7*|511kOOcyK4 zlfg44PtoHGS77Oo)y+whSAZ@Jh#o32TRNXNj`i2pbH=aRCJbGrKH=S@Z&y_0r8JNH zE*sP8|6-Y3)E``wQSHAm!+JPf-C z>wU6xqGeTIUl_hT_NlR&$L8|th_D^6ME5^x=QDKBXF8~KZtk)hHPT;9`z9;{{SCzj z#v80L!LB&d;-`ULwtZI1Pzzt4D#%Kc57sR&)X!lbJT?)4#Tw^2$?Z^@SxLe&`1}7l z?AFmo7?{>%Mr%{*g(aO=GI*631l1>Z}I2Ej_9Zgq95 z(NlbHqj5VtY-XfX|7whsWEZrDo~Wi1|(LzLDUqfA-|4Qk5m|pca4HTDYh$S%!hHR#sx|{ zm%{&{xgmnZESmkA0x|?%-n-g;N+`+$6aOh8Ufi}+7Uh;{V~?tE3oM!Jkk{4=^bmjd z%ihdimSZXuPHkq?A%?+*^CZYWNuq?VEhs)Bon5$DH^#mzvWN z%iY_sp5(TK*E64-<_6es(JDZjT{8>ZMw-SEJ!EeaL;tT%(c61@SWQ|r&(@I_ z30J;?@P&7McDsw8WnFox+|&Pr8p7pOYF%+lAKYeUR_`q^1ZhUiHvI2BEsNf~aUTt_ zNy~-Q(vL;>9Tw)oihArrlNf4Yg?}7sax7AUn@SHt8yho(mWn%H0!_ZZoZ`%^wO0r& z+xO51o;_^E+ebm8l(E&oW#aCK zLbjkJ?lQ5Oao4y%E7)3nIHannCd1ny;WOOaceC5o&cA7ZU<+f0deT(#xAFFB+qHfn zqg7L`B|Wv-fEyp&&IbQPq9I2=6LPc=y*WHEe)19Iw&6$+0PnX%LHLu4mU!ZH*uAl( zK2Hef0`+d=K%TcM?|07r&a|7!OQ~`&nt%4+K<9@Q=PVAJ?tz;}eyn3D_QScvJ+$|r z&vQ^R`$)t*b;zIo=###uc|L}(*XU;!=bB?L@y7vR-!ilL;(rK32LQydSKAOp7uf`0 z0#x2(FKXa_i1vsq3w*B+D@_26s#hCip4?E%E$Wag;D-msDpse7#8mEenWIgS!P3%! zs!b`&u7hC*=8dbq{gIA;>QSD{0vcMQRduL}&AvF1Qm`J%J%e;zOTXI!9c zj9p8vd97MPG&dA!Ss*=ho{?>v;n@aKNK=$o)GqRr@y}gQi_!^?-)vPR%W;1u%q~Ec z?+ykmuOvHuW4gg7XLTj}NZ38c8m7PbWE>Y9)_v37-p22KV}tU6wortIsc@{^!>pnN zBVV(yrur`RD4$+j=1=kho{e!4+~+c%KdGt}i3iV2?F*^LK0UE?6GCK52(Z>ZY}Poo zH1_@RtVwRpi)V-(f=GPk!O+RDjfd&W5d(s zLGPNQtnkpLsa1_M%^r8#dd;7SrKaSyl(8&GQXVAFX#%^C-T2GYl_tm-(j|cu#_6Pc z6ATIG4a%|G%b=Dsrp+z?0U2JQd(3t5k?(fl;>dJHz?Y0$vs~*WusI7`S0!_V>#$|` zQ!@Q>^X+3*cJMD&d`G-y(EZuLnw#!NS)`4r3Taufay+ehSni|+@Z7ydef?cCHGy^` zZ0ezt=!0+kB`AW4s8#AZF~zGts1DN4)1PqpuKEWgldRH_UqL@`Vq$sYlfJW+KTf@= zHlr00j~ZxJ<5BBca<>~_O+lc?b`7_8D8C~_I?`sEmRS)y43+4%c}-GuPPyl36LoT- zQ&R_B)k$?5yP2LczWhslUgAzd}HPPa|QQYnw)E- zB%c;CvZlOfL|oP(&ja(EA`Pb7{x1nE%gM24L ze8sBku}CybY^3!Jj33O0khDbpg;%P(ytXi-so?%$mJN`J<61cxmwR}~5%s}WzBtv~ z+qbeNlj-3dTiN?ZSL;;$?Sf?npWd?icw`L_R~Pg`KkvHKC4I7F?$v0x?F2vB2^UEL zXWiGWw@(tHd0@VybS(nfFOlClPQ_41z`=QIDaW{}K12FRB0=Sq{A$ureX69tZ-(Ya zxgXb7%n&{P!Zt69Y-XCqzHCas_a3cTdXMNe&Ev&GMu8}(hGX5WXmu8RSC>W5&JK{Z z?8A>$l(VlMgC5UPUD^SXmF^p$`ml}FeW~Xa&Lv8+Q-tS0$Zf%TQb&#c-#7u+R6Btw zClv5^cRIXZO1$;N@jTq@#$_EVIqzd}8Q#!0DVknCz3*3VmoMjOo8j{J`@H_Ar+oU7!Z&X5$b0@mp;xG`M8*9Pg9Lj5`sU#x99W`(`0of%zn&_F2$vA#>3 zYo$1Qbq5)Smi26*cmvLX@q4rSuA0BJna9V&D=K9Cf8!%=Ibjf{IXeGC>+n)_yPetp zGWh^PRO3$WxI?R{vICD@-(cP%Z)Dgf91r)N^7&vT1Le~nX1cY7&Am6mDmAA~_`hXi z+_1IyB-5GaleDe1;ddw_FYDW%C;Xyzqs%H9YX5hFa9aRUMJg9kQ6$CfiY1yKPnbg| zKLqiaitErENS{qnklvPPs#lbKTlipGEdQujBa8X*vuLw|ob`rSO>&BTsu|n_?J-wS zXYcKekuUFek7*z4a?A3t@`DE^hRjLIYK8BD+;x!(q65M2Rj$qU5@~sP9)rYpAhksa z_qLwi20|DYkRCrmYf`j(UfEB#6nHHPPLWavW z$!9q68*IO4@O9kMkK;#ri7HJoI%UfR^HJd9PWK}WIu*E;7P z{MCygLl!RbKka0?K9J$P)hoQT{IK*E{+n>(DWH4+V4qm6g)AtW8>$YD*lWt-NBW1> zg|)8tS2>ng7FqmhIjHfABH}7m(nL={rL{#gt_no4u+8Xp6mp#89w<&PJ5U>zhA+>T zeIlZ`kJX*Av|y#0H}Mg`ZN<$B*QJKlzG835ngTYXY0 zBsDYF{0u_orc9iDW6hX>wonlAbRM7pO{DUi#W@~JvQBCFK>DvuIPb{5&p-B^iSOFZ z=nsnajb@Dg*d8d`<6L8Q7P-0jT+JI{*<}MXp_rc)Ru#-2wk9~}ZB$Jau@xG#nb@}|Z+xUTV3T7lnMWOR;I}p;=X(62v*| z(fcHVkexe^Vh~jC(bbhl(p}-_wGXs|bxJT}uOXF*S?LhM8ezxs_Q0Sh7800gm62G* z>C;pRuFc7uf`A!nlXD}-INV3@^5zxhuBwOm$pKZTQDm-DpXXJ`N)AzQdGjJ{U;_p- z@ibYeJYRlf|1(_i}${TxvIYRkE zRxci{e=Q>h<;Yi1a-AAyX_nSt+Ng@2(B(WJ8XJQsl*Js8tIc;OrxeddtS1Jeea`DQ zUTv_vjp@XX63(6aAjS+EsJI}odNe!sPnW-H*s{#iEU8|}3&ks=wNpxmK9W&EA^1<@ zB)e=)p!)N-9kS2ujFIW-?Wx=d#BH#Bc#d-$g#KBCd>{acjXtSqrP^r(6KBJ^@#Z$S zoXKiE(Ti`~0}P@9iUQtob;mLcAli=V>1%@WT^XhJ#jeI&NM8HHW)6Sf4Y66v#-;dSqFT5;Sg7w2DFL}i~$J46Y1JMSP8{xWd`J9L{0FC}Mc!V1SpdXaZj;@i*CCAx}3 zhE_*+UuSUtcgmFsxAi{S%sq@4G&Rf+VenE78v+CROX3Tr?9#Ew&BI1FqApxT?te|PhSw$j-h_JMHU=cU3)O_*{So}2Oyxm5QU!H#r3SOmk z6kIZC&JHdvq)^t)$1$UxmqQ@`8Z^|~_T4Yeex>#Rw&>asK*~A)gbJ9}Dc(Sufb4er zCP>vA4kPtQiCyVnAB>8=23BK&VnNdd{W1KA5(t)7F1jE2N)nBmZcR3sijj}4#gr7m zGVQ#0eC4n6TnZGtbL~z853_#s`tumseL-!n$xk8}y+F#Gyb}i0O!yjDvU}d|-fsk0 z`r0}Gl4TkXOl%B@J`XnZ-1`-*9uUpvn)03eB5^+2_`IuUL$(C^12PSpyl%N&R_D33 ze7Zrm@|*Y7VX*}#XD8o%Z1CZwyt$tk@a)1zbp^Jq)CkYTtSyxrXV}mKZcX`lb z3Z8Cn=>NFliG>Ce#~%De-)eSyRyx|G`Uqx^Q5YpY-DITI$JFp3yIv? z=ONw%2g64vAGEbV1#^_a@KDcmt#v%M^lTTrkw?qIYd?=;thF4`(x4U5oLsn4~fR3dxN z7JW`U^qku~Av!l97h0m8M{`8~Ak2SyeG@+>RX^NQG7t2dJla3#*i|4pVQ+LEES^R(gNhJkIrUn~=n&+((Nk%eoN#LXeK=;wOQ;PwyPhqT>D0 zqMu?0WHm>NGuE-Pxk({wPGZa6ySu^e-wD-%THRCm|BibFdPV}%Exrh+C>6TSL+T(c zj4_83Du)1X!JGV0YkD&}*uP|BUP5is!nEFYCDIte-o3%~q7(U!{ats%BFk~I8qb+n zPIMsKHHx!8Wl_d7BoaH6!^CNx~IR}}7c%grUj40D4c)Bm(2aN1T>KcQGozg?Yq z(~1P3)(z7>?Wb+?kQr>RoooC$hB>IY$7@cycP9i)$1z0>H{W10>_nAsKB@6B?j7fN zz$+rP346FK+u_dV`dr?1XFP58&}>2#u*CQNc@8muKhpIm`am5Uy>Voy6(LfOsKybm zF9W~gm)w&W*I~{8ReBl6O;;xs7GpK9|J>it-QoQama9s82q&w4ZM-M_qO&yDr;pQj zVX$6Ntx)21+tbYCB8ei2Tnm%B?1Krd^2w^%lg!S(@DLk*rGDA=0F3FC7s<=gmKli_ zA@)dd_j&rRp3CPGG~iMiEz1~K;8NYivkY61QU)0)`9t6h%nsa^>K|HFPjOmg2B&8F zdxp#PKO@f>diwehv;NyXYjWwraE8uM$(6u?QV5#Xb@nJCz-Z7Z0*!95KA2fw4zp1; z3d$-&75$mgJH+3QW`;SX1gE8Grp1;6)dv^L4y5J8s^cu=pRs3Uc)LDm`z0CF5WIJI zMxx`YMJIr8%P^KV>>eZNkX4_>|Bv$A!UReHy*`ktMr_o3H~p6HaFT-bV|sn9|mv zy+1srH_z$*yZXRAp`&&2;*nAI?VG<+4Wa|>`qUd;MJY)P*1V}^ zzig59`7oj)hpu(|^&(qpv%#|NG_FhJqWekJf#MY^zI%bQqITgl-LNu`1|4qyeE0~0 zjhkM1o)=JMBKVf+S5A(oHa|Vp(LkNhk%eI~kFU(g9?P)Fra2iNPROh4KB`zUV_yn0 zLI78veATxq&%vx2CYK-cq581za)Et5G+uG5f3O@?z>=Z6yO}_d=7m6!*KI-QFbD=7yYnKD2 zdV++B5YkwwP6t{h%H901Ku;qin2F?lE3U#%r?bspEXuGQF!=ZWyH6Gu&vy?18|H8p zYj+)}6+TC=uV6PiDRO^y3l%CK%{9UBqo@4_Dcd$w1Az7)-JFc}ni3WohlPKo=Crp8 z{0zSI!Cb}Tah#T|&-TA3GsFMt-{fZw7FFsT?8~Jm5V*n?0y$0-14Uw{>ttF3GZJr)KntrZ0!b7>oA7y3GImp-Ht&2xyfY z@>lt0eY?7CMpahv)p%}35P>n4QX$dui&m;0>KA#fYy1ZNwu5-P-dEKIPP6;@l6)5pZ0%Z$}nlV_lRR$T?AasDO81Vi5@`Bq-j$to1;j91mT9I6R0syb>Xu9xUU@4 zJDi2@A5Tn4s=0vA$~l3$ml0&-1I>5-EzMJOu92HLa{n`Bg6adE6-m16(F)!dF`x?t zW1Q0I*a)tqnW?F13!|wzZ}C}+|KSkF&-?OD|)&)5AE_0vp6s8_+{|jy~|P? zqhgsRLDFiqo6&z5J-R%&Ckyy3qjI&NAwz9X|{PmraJBD&WO?t;F6OEZehPT%KZXh-;0FbfWc0?0qUG8Q% z=K0uL%-{IaQj0al%;*Z~E`D@oJ8*s}B4E&tv0EJXjTV|UGRPc6nN$GNN zXqFDpvA&lr>JvGAb~*LCoTCnZWfJ!5)ZWG#ti&6%jr)Q^o7(&VCFjV}wLNsf zSEiwJVN3u5T6-V`kozO7XW0|D$$9-W?cO(!OxKdP>FTk=mGsL)@))g(tsSA^R$%d! zbB*sOnr`$I#pW21ur#)B#_pLDahpCmcj3|XSMHZrUs`=nx_&4v>>x#35gDfI*|q5K zqb=o1r64J}{x)!mr(X*#7909bE(HnFdoJCdnzZP5AUrfo|vO zG@|mNHQ5TjH%Cods>w~MnaUa2;jys^DKveS=&JX=AuHTBMKq&IVT}<*+PauFR2|*} z0${A)EHpWl&L~=C?TltY;hul=rtP{mXb>NQ$W>Q6R_${($*~&kf~`X`+Jn9;g&5<= z6L>|n0U!>}AGx517yxea+rV|JyGWWd=e`JQMHj1CN24rt*Q%zju6A6Nx?4kaSI@cp zAKav>NcQ2t#q^c4DSw$1_Z9Ryx3mXketzQ4mb91OoKn?HylJzuIF4C6tfZ4xW)2$> z??4FQL5q8*&c9C1_E?XS-1ZT%;SaQ_#Iv!$Y>rrUPRe2a$=<=?NVScDc0>7&JJkll zXd|m3FkBFBY>Ww1X=;=J+sqalGN+7 z;nI#xwhNv%apr?dx95Anp#f{Z6H&#yu(>xwm!?HQ_)8&S*+uSu9#(_9GOP~W-6){k{-QLr?0XCOGOP&4mb~$fx`L4N7*POAR^?H<+&-jr*yK|jlQuHO5 z)mZCwxyn}W|i#>1YA$NTcuO24)RXXT2)nJ)q_MR7_?K$&o8PP4+z zzTvsdW#pA27zaN2W1!2+C3pK9EaGVfm*0#$P zmOH;=vFFL7Nndbz_}G2B@>(4<|B3QKa*SWRhH)I#?9_oE;u1es#h?dfg^2du^X-+b z+cymQ*Lu^?>n~Hq5AuRSol}xq6_3&d=pE5^!8Z!0P9^UDxcpssTBmm3@!k4*U6V5g zSDbu=?C+1du$hoqd0Gu%HrSihU?SdXE1sBm`8!C}xc@_NhIUh)z*|3lr_G`#+3d@L z?m_9;kEhV;L1o^&Xfy(aAQ_7MI;23y%NZ;%i%GD?yh*YqZ}8+cZXI@O)HpObd3oEs za=9y-!6%xqCa>_oG1dA#+Z%%EKdI-{kue2&rt+Y+RHjXJQzT#ywh@#mitnXG`|x%Iy>M_EQorseCoQ z6H$FqSENwtUOWpM>n*j_b{)!nC7NZ(na+9i+FMr4d}^4?sv|WhzEuD-(%ilqf1vrBO}DjHPB2M+IFRlrGT_ zYKgVwq$);jv8J)4wpt=VR7oq+`SqOn6XwJHbiY04J@0+aeeQGbjM3F!%c(*{?)eTO zqYiYqhmE)%UqBdEoH%Oki_P-T*m`1=EmK2J3+!?VgRh6>fr-5h&x zj)_7^*2gK+qB=jq%9Ex1uHtvF$Qxa8Rnr0vC3ZNwhdr0-XeQBNZfM@SqO$a{02&a$ zH!b3eS^N+;|F**5fRYH&^_3CN=#7z`;lyMz4Cr*$m^1|C$Q^+8gf~#uC<{3hu6^W} zpv=?VHLX{pku>_@Cp@mfdvV}qUS1dMbCe4g>UD9^(gDycmS4P<_LYktBMTE^;cq0X`i|LuS2;b9xE#PyNHK6V0` zvf?j?1-)xV%?H=sLzQy3u>@aBN%I_IC3zo!tW@?>1(hTVmFmtia$Mp8Mf0o%<^-89 z#-N4#y$b>%dOmW}1tz(265=T^JuPS7k_jPzT?}1O!3d;TTC|3&d~pYp3^UTm?dDf>TuS2(f|wVh|8^EMsV>C z5%Q5wBk&dmuL;8Xjdjh->~C4It2~<~CZpQd7E=JO$GIT)mfo4?i&qKEl+g~WVc09u z+%(Q`bffV(;YZQZzC_MKI1lqoKhJNWhXEUY5&Z?^fF?h6P|qIv8`j1dp&x=uvg&sC zK-#q>BBZ{FO$}K>{$@PZ*tP={7U$*ng@GCgZp4y2@zDttsr{LuXBI@K}pk!!uW z`PhWWVz+Lq1AUuQG{_4dLZbXfIu-=AkxxG;@Qc*W#$AZR5#cPxC;oGR z;;mbw8!%UZpVUR{KZc!Fo5IV0opI8b#?E6?E^&u!Z9X(zNkHrPDI*rcVreMQ8WvrO z*IH1qHk&E83SqG5D0Z9eG8uD!?5(u#d({DlF> z(ULQud<@a;;^xe&&b;3CSixI1M};D1S>j7tdaLb9!F_g7@u8zj>x)7KhP=vK8F0E| zH?YtfQWFC6v}xj})T-A8Qa|IQa~X7wDgprHpmya3XgW7wHajg>onum{1o Date: Tue, 11 Oct 2022 10:59:28 +0800 Subject: [PATCH 06/13] chore: test --- src/extras/Earcut.js | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/extras/Earcut.js b/src/extras/Earcut.js index 44974839327420..edbf5cf01ccbe2 100644 --- a/src/extras/Earcut.js +++ b/src/extras/Earcut.js @@ -4,9 +4,7 @@ const Earcut = { - triangulate: function ( data, holeIndices, dim ) { - - dim = dim || 2; + triangulate: function ( data, holeIndices, dim = 2 ) { const hasHoles = holeIndices && holeIndices.length; const outerLen = hasHoles ? holeIndices[ 0 ] * dim : data.length; @@ -377,7 +375,9 @@ function eliminateHole( hole, outerNode ) { const bridge = findHoleBridge( hole, outerNode ); if ( ! bridge ) { + return outerNode; + } const bridgeReverse = splitPolygon( bridge, hole ); @@ -438,8 +438,7 @@ function findHoleBridge( hole, outerNode ) { tan = Math.abs( hy - p.y ) / ( hx - p.x ); // tangential - if ( locallyInside( p, hole ) && - ( tan < tanMin || ( tan === tanMin && ( p.x > m.x || ( p.x === m.x && sectorContainsSector( m, p ) ) ) ) ) ) { + if ( locallyInside( p, hole ) && ( tan < tanMin || ( tan === tanMin && ( p.x > m.x || ( p.x === m.x && sectorContainsSector( m, p ) ) ) ) ) ) { m = p; tanMin = tan; From 7e9026e096c3fb0ac459adc9994179d2b25df1fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=85=E6=B2=BB=E6=98=8E=E5=8D=83=E6=A0=91=E6=B1=90?= Date: Tue, 11 Oct 2022 11:29:22 +0800 Subject: [PATCH 07/13] chore: revent microoptimizations --- src/extras/Earcut.js | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/extras/Earcut.js b/src/extras/Earcut.js index edbf5cf01ccbe2..d817f260fd7407 100644 --- a/src/extras/Earcut.js +++ b/src/extras/Earcut.js @@ -125,9 +125,9 @@ function earcutLinked( ear, triangles, dim, minX, minY, invSize, pass ) { if ( invSize ? isEarHashed( ear, minX, minY, invSize ) : isEar( ear ) ) { // cut off the triangle - triangles.push( prev.i / dim | 0 ); - triangles.push( ear.i / dim | 0 ); - triangles.push( next.i / dim | 0 ); + triangles.push( prev.i / dim ); + triangles.push( ear.i / dim ); + triangles.push( next.i / dim ); removeNode( ear ); @@ -278,9 +278,9 @@ function cureLocalIntersections( start, triangles, dim ) { if ( ! equals( a, b ) && intersects( a, p, p.next, b ) && locallyInside( a, b ) && locallyInside( b, a ) ) { - triangles.push( a.i / dim | 0 ); - triangles.push( p.i / dim | 0 ); - triangles.push( b.i / dim | 0 ); + triangles.push( a.i / dim ); + triangles.push( p.i / dim ); + triangles.push( b.i / dim ); // remove two nodes involved removeNode( p ); From 09f41c992850253fc63d4f2c936d7890707c750d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=85=E6=B2=BB=E6=98=8E=E5=8D=83=E6=A0=91=E6=B1=90?= Date: Tue, 11 Oct 2022 13:27:53 +0800 Subject: [PATCH 08/13] chore: test --- src/extras/Earcut.js | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/extras/Earcut.js b/src/extras/Earcut.js index d817f260fd7407..cf6d99c6a24bf0 100644 --- a/src/extras/Earcut.js +++ b/src/extras/Earcut.js @@ -125,9 +125,9 @@ function earcutLinked( ear, triangles, dim, minX, minY, invSize, pass ) { if ( invSize ? isEarHashed( ear, minX, minY, invSize ) : isEar( ear ) ) { // cut off the triangle - triangles.push( prev.i / dim ); - triangles.push( ear.i / dim ); - triangles.push( next.i / dim ); + triangles.push( prev.i / dim | 0 ); + triangles.push( ear.i / dim | 0 ); + triangles.push( next.i / dim | 0 ); removeNode( ear ); @@ -278,9 +278,9 @@ function cureLocalIntersections( start, triangles, dim ) { if ( ! equals( a, b ) && intersects( a, p, p.next, b ) && locallyInside( a, b ) && locallyInside( b, a ) ) { - triangles.push( a.i / dim ); - triangles.push( p.i / dim ); - triangles.push( b.i / dim ); + triangles.push( a.i / dim | 0 ); + triangles.push( p.i / dim | 0 ); + triangles.push( b.i / dim | 0 ); // remove two nodes involved removeNode( p ); @@ -356,6 +356,7 @@ function eliminateHoles( data, holeIndices, outerNode, dim ) { for ( i = 0; i < queue.length; i ++ ) { outerNode = eliminateHole( queue[ i ], outerNode ); + outerNode = filterPoints( outerNode, outerNode.next ); } @@ -383,8 +384,9 @@ function eliminateHole( hole, outerNode ) { const bridgeReverse = splitPolygon( bridge, hole ); // filter collinear points around the cuts + const filteredBridge = filterPoints( bridge, bridge.next ); filterPoints( bridgeReverse, bridgeReverse.next ); - return filterPoints( bridge, bridge.next ); + return outerNode === bridge ? filteredBridge : outerNode; } From 60c341a5c86546fac0b79b8dc227b7e949f09177 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=85=E6=B2=BB=E6=98=8E=E5=8D=83=E6=A0=91=E6=B1=90?= Date: Tue, 11 Oct 2022 14:00:01 +0800 Subject: [PATCH 09/13] chore: test --- src/extras/Earcut.js | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/extras/Earcut.js b/src/extras/Earcut.js index cf6d99c6a24bf0..44dfa1b9e9b04b 100644 --- a/src/extras/Earcut.js +++ b/src/extras/Earcut.js @@ -356,7 +356,7 @@ function eliminateHoles( data, holeIndices, outerNode, dim ) { for ( i = 0; i < queue.length; i ++ ) { outerNode = eliminateHole( queue[ i ], outerNode ); - outerNode = filterPoints( outerNode, outerNode.next ); + // outerNode = filterPoints( outerNode, outerNode.next ); } @@ -384,9 +384,12 @@ function eliminateHole( hole, outerNode ) { const bridgeReverse = splitPolygon( bridge, hole ); // filter collinear points around the cuts - const filteredBridge = filterPoints( bridge, bridge.next ); - filterPoints( bridgeReverse, bridgeReverse.next ); - return outerNode === bridge ? filteredBridge : outerNode; + // const filteredBridge = filterPoints( bridge, bridge.next ); + return filterPoints( bridgeReverse, bridgeReverse.next ); + + // Check if input node was removed by the filtering + // return outerNode === bridge ? filteredBridge : outerNode; + // return filterPoints( bridge, bridge.next ); } From ef94f5fd346fb20b7629390e3cdb0fd3252ccb44 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=85=E6=B2=BB=E6=98=8E=E5=8D=83=E6=A0=91=E6=B1=90?= Date: Tue, 11 Oct 2022 14:34:23 +0800 Subject: [PATCH 10/13] fix: filter collinear points around the cuts --- src/extras/Earcut.js | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/src/extras/Earcut.js b/src/extras/Earcut.js index 44dfa1b9e9b04b..8d31f8bbc12d7e 100644 --- a/src/extras/Earcut.js +++ b/src/extras/Earcut.js @@ -1,5 +1,7 @@ /** * Port from https://github.com/mapbox/earcut (v2.2.4) + * + * There is one bug fix that is different from Earcut v2.2.4. Line 388-389. */ const Earcut = { @@ -356,7 +358,6 @@ function eliminateHoles( data, holeIndices, outerNode, dim ) { for ( i = 0; i < queue.length; i ++ ) { outerNode = eliminateHole( queue[ i ], outerNode ); - // outerNode = filterPoints( outerNode, outerNode.next ); } @@ -384,11 +385,7 @@ function eliminateHole( hole, outerNode ) { const bridgeReverse = splitPolygon( bridge, hole ); // filter collinear points around the cuts - // const filteredBridge = filterPoints( bridge, bridge.next ); - return filterPoints( bridgeReverse, bridgeReverse.next ); - - // Check if input node was removed by the filtering - // return outerNode === bridge ? filteredBridge : outerNode; + return filterPoints( bridgeReverse, bridgeReverse.next ); // there is different from the implementation of Earcut v2.2.4 // return filterPoints( bridge, bridge.next ); } From 7292e4cea492f6e79074c7c56c2a28b825669592 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=85=E6=B2=BB=E6=98=8E=E5=8D=83=E6=A0=91=E6=B1=90?= Date: Thu, 13 Oct 2022 16:02:16 +0800 Subject: [PATCH 11/13] fix: simplify hole elimination --- .../webgl_modifier_tessellation.jpg | Bin 37386 -> 37379 bytes src/extras/Earcut.js | 6 ++---- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/examples/screenshots/webgl_modifier_tessellation.jpg b/examples/screenshots/webgl_modifier_tessellation.jpg index 39405b3d5bbcf2b3ca127db7cdd28175d275e6da..c100f8d3b0818465b2bfaedf5b5de232c9dd3529 100644 GIT binary patch delta 35166 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Ù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
csd=_0b1A^4_FbCy99Hzs(v-W7wP;n&=d;OR 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 O05Y?20$TzDKmXaY6!rQ5 diff --git a/src/extras/Earcut.js b/src/extras/Earcut.js index 8d31f8bbc12d7e..edbf5cf01ccbe2 100644 --- a/src/extras/Earcut.js +++ b/src/extras/Earcut.js @@ -1,7 +1,5 @@ /** * Port from https://github.com/mapbox/earcut (v2.2.4) - * - * There is one bug fix that is different from Earcut v2.2.4. Line 388-389. */ const Earcut = { @@ -385,8 +383,8 @@ function eliminateHole( hole, outerNode ) { const bridgeReverse = splitPolygon( bridge, hole ); // filter collinear points around the cuts - return filterPoints( bridgeReverse, bridgeReverse.next ); // there is different from the implementation of Earcut v2.2.4 - // return filterPoints( bridge, bridge.next ); + filterPoints( bridgeReverse, bridgeReverse.next ); + return filterPoints( bridge, bridge.next ); } From 9592017cea08cc39ab1c2b71752f0430c0c038fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=85=E6=B2=BB=E6=98=8E=E5=8D=83=E6=A0=91=E6=B1=90?= Date: Thu, 13 Oct 2022 16:03:16 +0800 Subject: [PATCH 12/13] chore: format the code --- src/extras/Earcut.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/extras/Earcut.js b/src/extras/Earcut.js index edbf5cf01ccbe2..358108fa2fcb34 100644 --- a/src/extras/Earcut.js +++ b/src/extras/Earcut.js @@ -4,7 +4,9 @@ const Earcut = { - triangulate: function ( data, holeIndices, dim = 2 ) { + triangulate: function ( data, holeIndices, dim ) { + + dim = dim || 2; const hasHoles = holeIndices && holeIndices.length; const outerLen = hasHoles ? holeIndices[ 0 ] * dim : data.length; From 429d8c335b1653b71829b6439876571a1b79323b Mon Sep 17 00:00:00 2001 From: Michael Herzog Date: Thu, 13 Oct 2022 10:56:25 +0200 Subject: [PATCH 13/13] Update Earcut.js Clean up. --- src/extras/Earcut.js | 44 ++++++++++++++++++-------------------------- 1 file changed, 18 insertions(+), 26 deletions(-) diff --git a/src/extras/Earcut.js b/src/extras/Earcut.js index 358108fa2fcb34..0a824aca20631d 100644 --- a/src/extras/Earcut.js +++ b/src/extras/Earcut.js @@ -4,9 +4,7 @@ const Earcut = { - triangulate: function ( data, holeIndices, dim ) { - - dim = dim || 2; + triangulate: function ( data, holeIndices, dim = 2 ) { const hasHoles = holeIndices && holeIndices.length; const outerLen = hasHoles ? holeIndices[ 0 ] * dim : data.length; @@ -193,7 +191,6 @@ function isEar( ear ) { y1 = ay > by ? ( ay > cy ? ay : cy ) : ( by > cy ? by : cy ); let p = c.next; - while ( p !== a ) { if ( p.x >= x0 && p.x <= x1 && p.y >= y0 && p.y <= y1 && @@ -234,13 +231,11 @@ function isEarHashed( ear, minX, minY, invSize ) { while ( p && p.z >= minZ && n && n.z <= maxZ ) { if ( p.x >= x0 && p.x <= x1 && p.y >= y0 && p.y <= y1 && p !== a && p !== c && - pointInTriangle( ax, ay, bx, by, cx, cy, p.x, p.y ) && - area( p.prev, p, p.next ) >= 0 ) return false; + pointInTriangle( ax, ay, bx, by, cx, cy, p.x, p.y ) && area( p.prev, p, p.next ) >= 0 ) return false; p = p.prevZ; if ( n.x >= x0 && n.x <= x1 && n.y >= y0 && n.y <= y1 && n !== a && n !== c && - pointInTriangle( ax, ay, bx, by, cx, cy, n.x, n.y ) && - area( n.prev, n, n.next ) >= 0 ) return false; + pointInTriangle( ax, ay, bx, by, cx, cy, n.x, n.y ) && area( n.prev, n, n.next ) >= 0 ) return false; n = n.nextZ; } @@ -249,8 +244,7 @@ function isEarHashed( ear, minX, minY, invSize ) { while ( p && p.z >= minZ ) { if ( p.x >= x0 && p.x <= x1 && p.y >= y0 && p.y <= y1 && p !== a && p !== c && - pointInTriangle( ax, ay, bx, by, cx, cy, p.x, p.y ) && - area( p.prev, p, p.next ) >= 0 ) return false; + pointInTriangle( ax, ay, bx, by, cx, cy, p.x, p.y ) && area( p.prev, p, p.next ) >= 0 ) return false; p = p.prevZ; } @@ -259,8 +253,7 @@ function isEarHashed( ear, minX, minY, invSize ) { while ( n && n.z <= maxZ ) { if ( n.x >= x0 && n.x <= x1 && n.y >= y0 && n.y <= y1 && n !== a && n !== c && - pointInTriangle( ax, ay, bx, by, cx, cy, n.x, n.y ) && - area( n.prev, n, n.next ) >= 0 ) return false; + pointInTriangle( ax, ay, bx, by, cx, cy, n.x, n.y ) && area( n.prev, n, n.next ) >= 0 ) return false; n = n.nextZ; } @@ -375,7 +368,6 @@ function compareX( a, b ) { function eliminateHole( hole, outerNode ) { const bridge = findHoleBridge( hole, outerNode ); - if ( ! bridge ) { return outerNode; @@ -393,10 +385,11 @@ function eliminateHole( hole, outerNode ) { // David Eberly's algorithm for finding a bridge between hole and outer polygon function findHoleBridge( hole, outerNode ) { - let p = outerNode; - const hx = hole.x; - const hy = hole.y; - let qx = - Infinity, m; + let p = outerNode, + qx = - Infinity, + m; + + const hx = hole.x, hy = hole.y; // find a segment intersected by a ray from the hole's leftmost point to the left; // segment's endpoint with lesser x will be potential connection point @@ -409,7 +402,6 @@ function findHoleBridge( hole, outerNode ) { qx = x; m = p.x < p.next.x ? p : p.next; - if ( x === hx ) return m; // hole touches outer segment; pick leftmost endpoint } @@ -591,18 +583,18 @@ function getLeftmost( start ) { function pointInTriangle( ax, ay, bx, by, cx, cy, px, py ) { return ( cx - px ) * ( ay - py ) >= ( ax - px ) * ( cy - py ) && - ( ax - px ) * ( by - py ) >= ( bx - px ) * ( ay - py ) && - ( bx - px ) * ( cy - py ) >= ( cx - px ) * ( by - py ); + ( ax - px ) * ( by - py ) >= ( bx - px ) * ( ay - py ) && + ( bx - px ) * ( cy - py ) >= ( cx - px ) * ( by - py ); } // check if a diagonal between two polygon nodes is valid (lies in polygon interior) function isValidDiagonal( a, b ) { - return a.next.i !== b.i && a.prev.i !== b.i && ! intersectsPolygon( a, b ) && // doesn't intersect other edges - ( locallyInside( a, b ) && locallyInside( b, a ) && middleInside( a, b ) && // locally visible - ( area( a.prev, a, b.prev ) || area( a, b.prev, b ) ) || // does not create opposite-facing sectors - equals( a, b ) && area( a.prev, a, a.next ) > 0 && area( b.prev, b, b.next ) > 0 ); // special zero-length case + return a.next.i !== b.i && a.prev.i !== b.i && ! intersectsPolygon( a, b ) && // dones't intersect other edges + ( locallyInside( a, b ) && locallyInside( b, a ) && middleInside( a, b ) && // locally visible + ( area( a.prev, a, b.prev ) || area( a, b.prev, b ) ) || // does not create opposite-facing sectors + equals( a, b ) && area( a.prev, a, a.next ) > 0 && area( b.prev, b, b.next ) > 0 ); // special zero-length case } @@ -659,7 +651,7 @@ function intersectsPolygon( a, b ) { do { if ( p.i !== a.i && p.next.i !== a.i && p.i !== b.i && p.next.i !== b.i && - intersects( p, p.next, a, b ) ) return true; + intersects( p, p.next, a, b ) ) return true; p = p.next; } while ( p !== a ); @@ -687,7 +679,7 @@ function middleInside( a, b ) { do { if ( ( ( p.y > py ) !== ( p.next.y > py ) ) && p.next.y !== p.y && - ( px < ( p.next.x - p.x ) * ( py - p.y ) / ( p.next.y - p.y ) + p.x ) ) + ( px < ( p.next.x - p.x ) * ( py - p.y ) / ( p.next.y - p.y ) + p.x ) ) inside = ! inside; p = p.next;