From 68cbfb887f832c660d370b65a82dd36bdde9ae7a Mon Sep 17 00:00:00 2001
From: ShenCiao <3294833183@qq.com>
Date: Sat, 16 Dec 2023 14:59:19 +0800
Subject: [PATCH] Change toc and add eye-catching figure.
---
docs/Basics/Basics/Basics.mdx | 29 +++++++++++++++------------
docs/Basics/Basics/bunny-compare.png | Bin 0 -> 393534 bytes
docs/Introduction/Introduction.mdx | 9 +++++----
docs/Tessellation/Tessellation.mdx | 1 +
docs/brushes.jpg | Bin 0 -> 43292 bytes
docs/toc.mdx | 18 ++++++-----------
6 files changed, 28 insertions(+), 29 deletions(-)
create mode 100644 docs/Basics/Basics/bunny-compare.png
create mode 100644 docs/brushes.jpg
diff --git a/docs/Basics/Basics/Basics.mdx b/docs/Basics/Basics/Basics.mdx
index 21b0118..c7adf9d 100644
--- a/docs/Basics/Basics/Basics.mdx
+++ b/docs/Basics/Basics/Basics.mdx
@@ -1,5 +1,6 @@
---
sidebar_position: 0
+title: Problem Statement
---
## Brush strokes
@@ -13,17 +14,23 @@ Learning how to render these stylized strokes with GPU is valuable.
However, there are over thousands of brushes available in Photoshop, which can be overwhelming to explore.
Luckily, more than 90% of the brushes are designed under the "stamp model", and we call them "stamp brushes".
-In the upcoming Stamp section, I will introduce the stamp model and how to implement it in a shader program.
-But for your better understanding, I will introduce the basic solid stroke called "vanilla" first.
+In the upcoming Stamp section, I will introduce the basic solid stroke called "vanilla" first,
+then the stamp model and how to implement it in a shader program.
The vanilla and stamp strokes share the exact same vertex placement method.
-It's much easier to start with the vanilla stroke, later the stamp stroke.
+For your better understanding, avoid jumping right into the stamp part.
+
Maybe the stamp strokes with various styles don't interest you, feel free to ignore it and learn the vanilla stroke only.
-It's very useful when drawing UIs or debugging your 3D scenes.
+Knowing how to render a line is very handy when drawing UIs or debugging your 3D scenes.
-While you may recognize a brush stroke by its stylization, another crucial property could be ignored: the "variable radius" along the stroke.
-(I also ignored it in my paper.)
-The radii are typically generated from the pressure values as a stylus presses and moves on a tablet.
+While you may recognize a brush stroke by its stylization, another crucial property could be ignored:
+the "variable width" along the stroke.
The property is critical for experienced artists drawing professional illustrations or animations.
+For instance, you can tell the difference from the figure below.
+The one with variable width on the right has much better appearance.
+
+![bunny](./bunny-compare.png)
+
+The width values are typically generated from the pressure values as a stylus presses and moves on a tablet.
After the artists install a new painting program,
one of the highest priorities is to configure the mapping function from pen pressure to brush radius.
@@ -37,13 +44,9 @@ If you're unfamiliar with tablets and styluses, you can watch the video below fo
-![variable radius](./variable-radius.png)
-
-_Variable radius along a stroke._
-
## Geometric data
-To store the variable radius in brush stroke, we will render a unique type of vector curve:
+To store the variable radius in brush stroke, we will render an uncommon type of vector curve:
An ordered list of points (polyline) with radius values assigned to each point.
As a user presses a stylus on a tablet and moves, a paint program generates a sequence of points to record the trace of movement.
Meanwhile, the pen pressure is transformed into the radius value assigned to each point.
@@ -61,5 +64,5 @@ import { ArticulatedLine2D } from "@site/src/components/ArticulatedLine2D";
-Blender Grease Pencil team has developed a lot of novel tools to edit this polyline with radius representation.
+Blender Grease Pencil team has developed a lot of novel tools to edit polylines.
Remember to check out if you were a researcher and want to develop novel techniques for digital painting.
\ No newline at end of file
diff --git a/docs/Basics/Basics/bunny-compare.png b/docs/Basics/Basics/bunny-compare.png
new file mode 100644
index 0000000000000000000000000000000000000000..9dbacf0b10107b567fc5bea70e49d87925b4d287
GIT binary patch
literal 393534
zcmX_o2RPPk`@e>iiUtuPDQOrfLZXxvk?JNRWQA-cvQnXBl_FV%Qn!$u$4XWbLPD}v
zR`$yJe=fbh|9c$o`y6l2^W69MzP{IWo}YDI56-E`Z=`3Vr=g+QsHkxIJPi%4It|S#
znzd{2Csk6CpYWG;HVT^dG&JkClK-xtc^=M6vxa6w@$|`yj^TsNPL3CPLr0c|#eW(r
zwoEs(3O#cz9o)_BL9>oqDM&QJ+-!Ln8@t-OuprNM?!8t5zC=H@ai+1#t%OR6S5QwMGeH%7xu$dXT!mAqjwZxBI+-+X$
z)vH%V#>S6=gS}dZOZ9~|ZCJDKz=1;ZbOYf~8!?X6cTWyF9HVic@8lA@!bSZ*NR(
zA1eok(a_KIui@fbQyZ0cZ@DtulFPJhTZ%z3{eS=cC+0kL(9+UUa;m|Q&*Y;gXGu?dm?%g9tj=Z;M6y7GN>sw)Bh*e=?
zVcE*y?bP*1z9HB7s7hSWT{^~isi1G523GmLB2tZ7I#qU;SFVucWHd<)9UQc<
zeBi!&3-^Ho4^Qm;`0*pn!ootskb^Ss)?2xpG1Usz)`A`OP$9RSVo~zY8H)(j{=Wx2u+eY5%-#72J6xhTh%l%jFs&MEt
zQA@U)t*%FLa!yj}s#z1sku2J)vU8Ju?d!AiBi_Qr3FPoZhurM}URKEk6p+pJrA&GPm&ix&)r<
z`0?XunVCV6kt$dM_4udQOMn0Vo%vgzU-@@(V2?B2XOZmkLZ*^i_2Hvh8*u%PEWp9te%X4dQPfT177P#zF*uL}7p+}XKDl#uO;TU42
zv46}gEV@2F;^FhTQ*FBXMNG_Htl&jTol1rvwt$Dnij>q;MOD?SQ-h5;Q$MeL&=Fu`
zV^dI3kyB&B8Nilt8Fp^%tUNaSL_8X=VS2X*g}cbOe0X|1YH2oVe!f?FFB82VtI*`E
zi=$-Z^ui3@dtYtbxZu*5;JeG&>M0tYZmx{n$zaC=B~%DUpjws##R30FS(sR
ze;(%_Wy?j1%PpTPzg1O?gO_zfigEcix3Qq8Z@+%|M)SqS#n}(%PLI_kxjjuwOH-QY
zUoK-(;`46O?lXm4j%^-vLaZD3e4=TUR`3s8@A(?)vM```wfVmr!*k-;IBDf2C2}o}
zof{c;NED&uC@3oz=?me*mHC)<9X%S7{pY`jK0fsRJC2nsO)o9Dhl|FK3v4Dqu%`d`k~yD!wc?-)XFI(;yzitYqz0h$l1pPY}6&$Ak9|3i)HXiLhm+fG~qB!l`!2lJ7Y$3d(8Q14bw(KVAp{NiQNavaFaZ<9n
zx-D;ZtY0pa@rv&5(l>wE(pl$>mIU@hC)?TEJ9RwRdnv=B@qU2)#Ba5!Kg|!R)Zdf0
z@GPd5mU}j>eZfb6wJP#eYHEh?%N8-GvE6ugMitLRbnGico;-Qt67H>l3dAh8GG69>xmQ(h
z=OcN}c5mr<2wSAOfej?IZ)RKT@3LWjjLyLK%GJFJw`*_X7$UUiX13sLiH*ZPKs<8pI%
z;B@gZ)%3UkJ>|D1)qP|1F2wf0Vw+yOW@uxxDXIQpG~YYzO#fl`r8(an$4LEj!$Gp2
z8q~ysqF|$P<2Yfxx2qnXeDZ@&37avH^s|)F{`e$298&Yf7#pk5rJ2!AaR7uJJ9eC!
z;yUJV5bu5U-2(2QF@@cCqWN&%`41Fy+eJ*f$i+NDAG69|aLAj^9j>meElhHoJg|sr
zT+`f~Fm(9Jr`5}~;=cibvGH-~5}uvp?AzWL=)TuoA~&cmoGii(vGw^
z_3rrc<%`_-CcwiFz6!t@wwid7U-nhU2{7ty7IjHE?)vvS`F&P7qjG>*=}pmda;xIo
zZJtF&az20lTnwO&LZM7dP1*gOFjI+=N@y;%%1m_}HCX&Jyy#E1BwEhmT>erRj)Z?k
zhG?5kMPf>daNbO@;MiMLSNiN`w|xu`m-h#y``gP?E}iVHZTRcVf*XJWFd#~q7)ObP
z=s226xVBZ6r}LjI@1H-lBqSu#Uc9a9<>6q!&jK{9R>|>};kI0iqf@*|d50Z+Y;d
zw(ps+v5!M`fqvUyV=5}hj|A<~ko{#wQyXPblXK?Zsz^?LzrZ2wHh*W%b@ZWL*Gq3sgT9(qT|GSpnN7(}L)gk34Bk^W
zCxj0l4to4}3)$Bq^*V(>&6hH*c9aM6$Gm#wiOSkBJqOs|-F&mv7>M*qNXYodRgCZL
zy3e4+mj-Z^cH33|_)(HQoLAmn=&hM%`e^mPCfTw#sUDxAEq48P;I_4Xr+1y|Pw46C
zA$Zo#&aUBuEsw{E6YJlsS-Ij~yJSy95`RHIBl7VrQ-C11!A-Kf7Tj}}D7$XV1m3QAK^aF?#EygcT^hnXC!jAhil
zD-S!T#bx{~4sx1r4IhP4-FF?w8OY?*r5OW+c#97Mhg?{g6lVL8m4P0
zs;Km!R{63Y^+y#ArK1O03?~>fgjQDVeWQisXwg=dU&FOgi$^ZRsnD_tZw@&6)^B4X
zLzUP4A3e`Su5F7~PxxezZ1ejYx6I2;&CSi&ecn5cIlR{|SovBd;tT$7sKkx^larHx
z1n2bhsuC|}lbRkKy)r^&T5ZQNVY?q6+-wzx7j(46aaDxM(b&a(C(fVWGX2Y*@mhW2
z9ubkJnJu>-VzcEfEetQe3~UDVcb5vTN{w&-QeOVx^e$8d?5kV3ktkE(VZPO-u}Mh*
z=lEie2UMHx-tqvjI$i7CNT#^q&P^YO96If?2mlBT4c*PldtO(!68#>q_K1iG!B<%P
zOX=p!yg_Ey8DfF=%I_>MiC=W|E`o;ClXNS}g7%u3n@d=80l;f&ZpVw!Qol>34iD%J
zp8jbe8Wa*z3QWf;?I!8x=a-g|(J^@or{NWq>f^bd<#9-eJpLsdlGo|!PqDD1pyI&x
z4GtQ8d9n|Wq}zXrce#SfRu4>~=!|{8p!$+Zbyz7W`q5l8Oi@AM1%6)Z!k?S?;fYy2
zY`|FHw**gsHgxqX|(u}awW#T
zpy6+P^?+`YMto_$RkH+`31E&`gi3~Wt3SvT*!DTT(_l!3rT$NE#mlT6UB|l&fKRD0
zVf&-y53G1&R%_=+GMynXjBHYH_CR8=Y7*K9se
zqa8M?B_}I`cd}MOgM}z~4~F%=aW~c
zN2thOzPtl}54av}=b4!8ENbaLGi&Rs(|?))fJq}cVT~_CMLfCRh!c
ziRtO_&pZJmZFd=0LYZ(JDWIGEb2C4_`KG@9?W3(OL3CU$f#?o2IJK*+<0V>idZ+MoKdAGHG-{E+^)-Fk&Cg|g05hUV9;
zfdrS?ay^skXjw3`QL@mlsnj#<@j$)fY;Zle!DS*z>oOY;|+@<-7gId0F-yKvt6&25#{
zy^a4qJH4mlc*Riy!?ts9px&ubD6&pYv)*h0%l)=45sJsP#4Il=b^nGncej1^6^;9^
z?{yejv)f56EjAip&+fNzkp``KuGo1m>j&Pxef#pmhi9NxT3T8Fg~oU#gzi)@{*5z~=Ir&a~V2_j!%D!CKla<)Q!QlVhcB3Wi)(}a&e)V8qnVTD6UtyEc
z^s?>f>h5m05kpZX^Cp
z9;@j1_U*eeKQpRjb7Qa}8Bo5-I{)nME$!F@?{ssY-@A9OTFhd(18LmT7y68@tOTtD
zB=E#eq1Ya3Z68YLdw?Ap5EDW@Q8+my9RquMOaLXoUoNVvpTB(hEF>G}=|9GJW&$`i
zvWuS6&?x=WoZSck2oDQn>*{(OtDvAXb@}vkI1KPmV
zDA#TItpW7|#=rvaE+wNm->H@eC#&^<$b16YO&OMkppNKcQ8%@(N3&O0edrF>o|$%E
zx(V&jDpR|OQzXY>Tlh798*4YYcx5Kfo-L5~#i{=Bi
zA?F^fXrG{9FC;3h@wZ^If9K{r?DsrhMky-VWlx?xyI*Hs$7a|!dFzal5_Bs(IyO$<
zpFg}H`wZTw^x%X1Z`d}D$n^#QdDhgNcbkaeI&`D|BH1$;R?R+TM!U8=7=cO|oa8!m
zP5GHndkvQ|3Sf-fGVx0w1R95t+oP_i=rr`4O=~x3W*8q~!-3xo2CbQD@+c}wx=Rmq
zEigZ(K2ACG)7Q|$zy{G-S)na0x_D;sTN8Y9)5E1k!iSuvEYJ#n|Ni{~=LfYW_@HL=
zjeF^r4uV|0H>>3(f?VoV#-q*Gw_-!Y*fx-s#Vz0r!L2#_<^@g72d%^P&(#aEBxb18
zn(FF;>KOUANl9_(>6GS@9px?}T-fBloe(z_q~6@erV@D9EVkqq8o6EYNul
z9oigK6-R3yv;AGQzL|yGHK@gX*HiEm5I}N1S`V(#{o?wCcT8Q326>
zViA?xb95_LVDpM!|GkMEDu7mWTL>v>=V_`H9Vdo=pKde~R@2c@mX)P7Ha1R6Pp@uh
zxDOG1qOTTMm-p=RqGZET5UPtB8fcAg-n{w7TM7Nd2%i*w+&LI42G$#T>}I0!yJa1$
z0~C+wY$$9S$~O4%w=(5MLQp5mZ+8w2AHN%l)9?QNnw6<0soPO>#W;SLQ-2OQ@GI3B
z3Ac|ro@1g7D79}1-&9F^-Y`kNbW85_EFA(piADqjl5(wH;JU;Ph|c`l8A8Tim_VNe
zDo!#%)u#U24f}j#05P*2hB|Nneom3@K=@X8I0uLg#QGR)dC&tIaw4ECU_%uTIoQ{p
zJ&Ky1u4q44#QIH`iN->dJ!r2gp{0ZlXUDp=rk3T+do%3tNl+)n?Yce(4keHC-YvLYpsx>Yig46-I$4jO
z9?-CxZoYZgZQgO)!Al>BEW^+LDk(|zz$&1FG-f40U#PQfZ9Ad+p~(Obf>JNH=iUlN
z!-4VA!$LwQz=_ZucJAHl4dJ1tw)T{jm4J4p)gA~dqn)MY9OvKw*bxUn=LddSdV0D=
z^MA}I;%`jmFV-&^Ec~53sGIW)kAk=J39K#M*nkG8vo~+<4-x!7X01!1Qco>zjFOZO
z3BXP{DcB6kW@h^!SSUX~@&M>A)uvr0F@NzE
zSsmyL1bIVM2dRN0<6Ue}{bj{HnU^0#F2|g_n5)ZZqg&E%15pF@^1tkC&1{E+Z67y!
z7k>Z#9g?Y_e)6Sfhp+k*LfWzaAJjcdWQg_d06A&?$)Gt#Mn>>z0C&lHq7aF>1N)t-d|F&O;(N%BEIUCEa#c(zTK=9kjihP+gW@ZEA$~`{e0U
zTR>89{E=A~XuS`Xm9F-Y_QJ1G(orBYG$sB!ly2M*!OMWw4!`Hp2b-6oYAmE3ZR#aI
z9(az3Y6&MP*HyM{ytwA>Ni^wau!#UCtNVYKo~Jy;u7(Z}D&;Cc6i$$-1EgjT)F<^q
zh8f;>@Zjp5a3`?c@%Ucf?LiHw74%BmQ4-7N;q)Dr-C-W(u0OdH4qK+KB97t$rCIP
zj1O%A_~xRvz_tpb--Cm(*j}%cLJU$HA&*=E!oj|M3gO0Ku;JvHGxQ)@a+Er?WB$vF
z7Q!y8Mm#7K<{pUMMcsBd(udgmK(ldr@zd_zTaEVt#PssTi?%!V`(@RH*!-YY0t#;v
zijZ^?2K+w!kVTM}pWjbmw+ys)SW-~!VJ%b|C&;C03o_|!Tyqz1Qyn5E(6p(A#dq@$
z3>!9(rm3EwB`YUaBJbQrc+0lsYBbn)T>_v*Fn?ay;{=V^QIDbi{*I>_y6w~XOUDKC
zW_DTU&AwKr|2QzYEVnWC20LXnTM;Y<`w%tEptmyOe|^jw3K-cAP_&^ZmcnvO*IL1M
z@SqX;7&ry&)q?S0@4D~bh45B#oW{{|0W4oq_miGKp^5yr6vLfK=uZ0Z`YhE;eq
z4VmC8K4!g+Eo9dOnZJ_S_)OYeiZ`flm2^m9yFL&xsZxqTylUspoj7&suDZR*-|*xc
zGo8S45Vo*JI5fXpr<=)+1&63@NyD4my6G4fXb#!>$taX
z*NN4?Fb68<5VyOB_n9ETa=Y28KKL@Qw;$RqQ5k$5J}j%K0LN*w%UZkUF1#D8%bR~(
z8^wPF)gr~RNtA!pkG|{Y@o?tm`;~$Zo{X!tg}k3|WJUP;i9b!5i~*&EkM}5{IRnjg
zPR}*wxgG7Kz-1YC)eLHMlF*GG5
z1JaLYpA;Kh0RcFum3AKmh*u^2er@0Pp0H}>Gd$QItCDzw)L`^=g{MgjrXX;U0^>2d;_Zxq+H0pN7=Hh5mkmz8Q?Ww9#U*M7)tjXcl&puj-f@P
zw}6_js*JeA=qdB_@jOn(g$qPTfDqov6R($4KM*QxO#g5jzrn8$w&CLTULa1_(luhv
zs(3%V?8(I74QSX44B#@L-D-e#0w!7gPsbAt^ZWbv7P#wy@e?RDKFbQOEO}Q?pH{cD
zR3c$em3^5)A>@_Oedd%&Ww@f6+GaEdP<%_Spt92-OR#r|bHi?(^JtG!un-(|7*K_G
zXxH=Y-~XxI25uV!AZVkc;Ug_@?B<^?C}a2l9N1zY9Y{RwU1dS1O6;Ig5X=LhkEH|1
z@tT}(5G7IKJ0aestX4}d`0?8~tp%Vs78((H?qg8+a>0CM2M1A~=x+@T
z3UFyjq~Xw^Q68>rs8mX-#OFBRg<}Pqh(*t3b5i}Wt_+;Mn>UFg{1Q7&U+4{gbB#o{
zSJlFfgr~27xSNIm=7p~PI7k{N482P!M(c<#_UYa_z%y)eT4D!#Gwd+HW+iWp^jhpJ
zY#ed>9$(RIV4wip-QC>~o*)Rzz>Y&Hi9<#H^5qN|R&40g<#QwCkiFw!@h2d~-^0Uu
z!Tabv(`Lh{ROn0umd7dv0Tj%AEv5*x-g-h*pLfewpOzNAAoBO-AVAN*n{Hqyi4SRi?AT
zs<(&=P^oA)OtM#y-1vR{zW^7=5+3We@)CI(tGR4{1?VPWnfx#9+6noR-jmqpAZf#H
z)7em~nFC5sX=tzj;^2!eK;!AJi$@RRnr#5W){$5)qiR6FcrP$to?+G6bXXeQ5#i|4
zZvDFr`UVdjg;{{L$hX4AuO%rbM@PG+71@dM?wY9phr}Ba5!m@41>VYu1O5GPl9I00
z#3};g9D=k6Z;2#2;AKlM%~s)Ip4xVnDE6RW!EIYYLqYsxY%sM7%pM_vpOX9zZW`L!
zN+(aQKnP*(QVE(3UMA@VhJEJ63#_27M24@j!@mv8O>=s3r>dP9Zs4!7eO0_qnBTdOUg
zD$4^d67&NggDr;!4@diF9&`u1QO3q?6g(jWK8TUKjvWijvhTHnYCtk0P)QoEMj1nw
zg~+da2l6L?S9n;E?6q*zQC31jBo)<|0JyQJI_?XTT$()b?a{Adz#~GT5?-wgZwJNb
zt>BTb`To5K^``(o>{6bKI9v(2xY}xLBrq0|Y++_*ZWx*hFrLSENa-%W!$&xRAYMQ1s;)b{KAJXAYT>lWn;7iyhE
z&YtDniVcBMln835^msD#(W3&AkifgHtE(H%a=)Gf3m>2<)wFt-+sIw6a~CcYP7O8L
zA~CUHL*Vo0Ur?E1ci+aTy0YAj4X}3s7#rVTSp|&-IT8{da&VXmRGc2sim%>jmUDgu
z&(k&c|FBp-3k(V>>Cq<{|QDtRZ&%>t%6=+O|M2ec|luN
zvRO_+b-2T-hxXX8j6+U`@jx}gan?-=!8c;B0XPrs*&bBb4z@oIpRfB)d~h_RCXl|U
zDtYu`&{AG(WXOVTHe$f9P+3snZx2ykc4W
zsRZ7`;pwo;LcRLYBVU~r+H55sSNjP3{%86%!N&Q0JUpv{%8H;#g7L82hyqSfQX=t{
zU(Un1fT9GJ0lcDe0DOQl^J?PA+0rh@h^8-K%61{S5kW)%KMKwbAyqoChXQ31ebz+Vut3yp+b2Mtp$9YoqLNMA?+`3V4`VW+6y
zE~)6!2qzM05mb6~Zo$aJ1RsDlwuhhpEGZkdp35G*&+GbuGU!UEg)nx2gR4N=aoS)f
zM`aFji3uvOWmhQ#H8>X3HCR@+^+T^3b(EZ0SX}R){ra_+m)9Bq$~VS|KkDll*Cn2*
zSk5Niw+94`Q;CR%+W`ekh!uJ*@+f%kXft3{XVAO=xAJ!z3bXlST(nt
zQi(-B8wB0?x!jrs1+yM6kiDP$Q|AL+2ORniih>6{=FzEzS$usH{
z4pk=REB2iE-m+FCBcQjSxI-o8pghGcMV0V6*oJ?F
zS_j&6r$GN#@=>HXK~mBALqT+}{do5hUK^eQ5eQSbTu1_larg(!|9@;7zy%sd_A-fe
zsq;Jnjsmv{XdT`QL7}LqNJ%0Cubvci9C)y@I(3oatw4UG_4W1F&L+H84n@#}L*n{<
zLfAe)VBKK(H&0>(rD3KzyfvbGKcx^RyL_T1iR)TwmGMH8;5WIRcBavYti>1($0+|SdeO=Yp-}&dus|LICRBALIJvJqu
zj|}7m^bdR`kvN5}-1)kM&lFx3jVPz^$x2F%=;K;m;fJY+@&M365)motr(SMCI{+{O242r1P-G#hH#WLw?_MyBhD>WNVA0Q(
zg{p(4mD`zRU#6yR4Xcp5a)mql=CBD~bBN@)I@&~W5W!kRenBd=tvf`oWO%w3>Mwkd
z=hqUqpWmYIIA#9b^9xPU8qhcvQ$O8+V7g~QS5~4qlavd@Vn0@$jjLA<{>lovG4SJ2
zSXem%d~k@NwY>+8gaa!*vjWux#Eu@ul-EXf^aYe81YVYL?^^G|>({Rb1_ze_ZVNb-
zAoW5D3epyk)zX6cM|&Ps+ntB}2~>@Q=Ez8Y7)z!8J5YB>&=bi|V3;@5Te>5M%^fvww+FCiSB>Py%=uo77h(HWf#dh?
zov-WMl-Uh^Lr67f20qa?0|}X9eX8!y@jg)6h(?A)9^C!t`T^-*9{+yP9cC7m@xKE}
zXs)(dI;VQ9(dc2byjG2>gxVnBq)$;}f(s%mD+`uEx6=&m4Ito{GuaxQi%g81}8M(`Mzbu^ndcBxk_gsnn7PozesAH_cf)dR_Y^
zyt0sYB00n-8U%voQjX)H*1tb8p$17>bAW9U8bpHR2Q^bxqa`m)w^jkZtyoUM4*?a!CMJRY=~%9+W8{e}I;ujNg}H_7Euz
zQdUwuF-r9HX#h%uSYu;iPW8B>6K;QuNPQ8d%qr6m;`Ig(;7KiQZOtsZJ?il{6clf_
zZ+z=jf59);H)M#-x=CUBVKD78oIx-SP;Fr`u{X_Cz2nKyUx~5)I5>FC2|&w#G>-*b
z5YJwDZ{1e#$z|7>``%2EofwDY{750}ilNn_^9lZD&;nY9ZNY*E^!L2vqW}3e7AV(E~XLj9R)RI)Kg+ocrgS3J4
z{kL!5gbXU`-ZV5Jy8teNUIuHRtLQ)MeYs`mYL1*CX}l!*2^$-)g+j@K4-O?o>qq~{
z$6kfTcr}7uZ@SL7Mpvk;_&5Qi}s6&P&
zLRUWB8xNjmWTeVv1~9q!vFPt`n;V&9aF?P`kSp7K)ggjSf~cwWNR##;(8
zO~Zj|dAQ7oL>?B)px)*qzk!4v$Q_)-Qp}}1P>IXdKTZ*I-{(FtW{^?JmUmqA{xw8S
z4qs&eWq~ZVaeFPSzO*)KVf%~N*n4O``wtvI@*x&WOOlAN^8@+=AwPXs9o@PDFAaVk
z-Wcc#WHct(M}JynbaulV!bk_o#x8Mj%`oCh^P6Tl4E-$cS?$$m!HWz%mJhpF{)U5Fx;-H^@zKnYIs9%+Rv8x=FR)Pk*qmKw
z+(uI<-u1>i`lLcbLov>iYTYUYZ0(ifW!lq^mq%Q@yu3)lF|SJ?)!gaDZWZ_{hR`)O
z=$Y2}3!*4;yAMDGc6h(zYsu1*_*1a~>x!EA56
z;8BO{2x1n5hx<}>XL@HxDC({AJx9^_xq3$kQl~4sl>2qoMT!`h80e_zD1M00N6hiv
z+=&VRFrb-{E@O%`D4#S3G!l0M&e@2$=r&(y%lTT{-sEK+pj#6E_OEWi4^z#R6bejg
z9{4B6ou|T&UXem52VsVHdijyS+hl-_q}eSji~!|O?cDD3pph6HLAh1a()xmY&%^R=
z18BU%+l@BM%==NPNTLPcqfE>DW9$zgf%`AG*>60XM_wfcv2yd&TY`K){OMCYu3E1Q<3|S-jQHD15VYVmC!@kiBOPDgKasOc~bwB1}
z;-cKN!tVWD&JCQ_)NFK0kM|NB<>K7nXXTt^Lg9JJ#Jb3u>`{*hIwsU|ayT&30{77S
zx-YW8#0SDM1q!`h$Melne`-U~driV6`^)c>~lV)79M^$?_jX>JFB^hHHIchbVvojL!`a(ibHQ_45
z^4&4U0g%_!HKz
zMmh0l1CwK44_ATGre|G5KnS)Dy(i|#$du1=DYep}QqSW9Ado$M`V`97r}h!2bPBVq
zxZtrHP?a_?Frt+;`mgK4F67w03(?GHd&W<(?Gp$he(RQHHLdnB%+u&pY
zix}z@I_tl&A8=$q3%nNYJu84i=!4)0{7Y#R1M*%eTm$(R8eA~^!C`J3f8=0CKrnzE
zys1>=a3S7cUm?Yq?6&Z?{BKukfj$`~Z2L$Md4ax-!eN0KZCJ5|19eTcEjHFQ4DrxXy!GVn#uFRK#%3hvD+L@BCK7}9D*SesQ6S944_ShOgQqL)
zb{gA@FJR&mlp=D}3%xc%w$(qvmhPoqxQbe++Rp{R0!M$FfDYeYL#*hQz>odRCz9$9
z!}B789Y{UVKwBW^9^YEMBYcwvMEz4p8pBwx$$;72eqBN{_m;?-yH^xaZ$DZY$FiSA
z2++0HJcFTWTlTOstvz%PsP1URESXJb!NP3*lxAXnsB;uM5rQa`LO@m|T!0l%3pXKE
zLf>U0M&@P_tVO7Lw3BP;nLL;46Tlic>kwMv;^Mp!lE9?JyK|d5+|eH~#D^J_55ei?
zNb@274XB4o0xWy@XQ7Mgg9i@?FasFJuuL$MP|cS&4Fj;G)34R*{s_%NM@|pi-oPxA
zRF9Fcc`v<%ehusus64YBEcv9o$~&9N=%@h{3~GPe)fq6<&K$
z(juB8PO-2N)ylpx<7yz-dLU-!&u{y&2VudKAJog!VULG7&-+UyZY%6EA=WNLYCGt_
z?(xfqhj$V@dJqgBxW1rup}7?kK9~eBMyd$*vk-z!#3)5>1!GR^LoexV8{tioyb%lm
zP-JjxctP015J-@gMhTU7em0C(?nj0xwYJ|iZT{XcYXZ`CKB+zxUV7eK^RWMiB;r8$
z8@H2s)MF;!vFZrbh04z+BQ9gwgYn2~OKXu@MML2eQGKUtnnH
z+d8csd0+cwLf@$+&y{BD4Q8}Y2WZ6Km|4W!A#f!LW|nvFVxl+m+Zequ2~#5Y!K84G
zIzkvNFm8H-AVtyVe{(23D2={NAJ^!^;f4iyMKtVHV)RVW1qw5~FX)LRU8|eK5>ifk
z8x!w%2JBrp3`f84xLN~+;jK*#w+1u~@iNgzupIP@xQd}!Gzy#tG>Jp->R}jRVln2B
z3uy0Yve!#YkEFocfSDkM1P&R|Xh^rRadzJut*kLbp6P
zjbjS1fI5Ms8|E!YU|=~H&ujv=)mjg&Rs#Om}y6h
zi2L~Q2?i;gH4Z~$CIgyx`k
zV<(~7QK^r^!XB0xMQ3J)EX++Ke)kcQ&+ZQx?$-!}5J(2!43jUVG1C{KsuHL1+O-4N
zk#MjdAouk)d%sjQ7!?VhlQ%PY3yVocG&29g@QbC>LiblBbWy{I_JkEc+dRj2y+v`M
z;k85cbe?WfFK87uCzMZa6407qB`W~OpG>x36CkloRsiETSb_iGfsAtEVg<0iy^)T0
zP+5rVjM*eaa1g^TGwOia{$na2w&X4Y`F7|*)ktc8J9)OcuP1Cs^N#|
zUwJo5bm!zPAg?!6s;m6zkh%RncW|EqvN!;5*qJl^8u?#(rKZJkp5^9@aZ3XVTfL6`
zM!;1d2uz@%b|c9LF2!8mUebf0sn2?um-1{2x@eLHLsM)
zzI>4od?9|mr+;LpY0lvHhJiw^15<}OpRTyC(F6$sy_FQ1@tz9&E0FVnxQ`=ihkb$*
zwgMTPXdrAT4md&xngsdM;-S9oTOL%X0PzDpf|GS!B4VnUX(0q2E}S|Hj2NSuV6&o}
zqd!1$Ch>$phdI-H4sHQ)gp!b@Kqv`g^8m3ZNq`1q#t2>WZk_p#e|yF@yBY4aCq4z~
zRHyh*uPW}C6+e)g!Ini_(FnpUv<}}AC3KSb$E($oR#vx}<3a@-N{HLZNG>9=STbHE
zT?JuJjmeXM2u|vz5N2>v%yhwG)3>oXH&@NJb~PdP5Cc|J>XmQ}kL6mi>#FSh*|7h=
zR)vE4_5c=kM=%^zO)?^EYTAbRC6pAL!Yy&mSIy4R8r67lL7ls(pe>nY?Y2J>ch7)W{f+iCa(4wH@pqNW?Rt3JRd-VME
zf6Z2ZK6EnRUI6*dJ%9-m`IYe+n-RH0&8>1@JggFD|Jf2&Qx3>9Y22t%a464Sx$<%~
zrD*SSWP~uDhZ?r_MEogcdQW7lu43RCg5(B%x);7V_oQ!aPvSU{Ge)DxNH#o9SUy{!#=~t-d}drFy~@W(?}A
zfOjk}@BO1qh=T#86NLi45yJ6g3{@^hO=_-qFQHvfpI%^cZoPoq;q2O)8o=QaQ^rwO
z%)>y69>onLm<>z&nOyx?ou@*?P+Hn5cTydnB6np182`qj3l}v)AqT_SM>NU^emalI
z9x~zQzS!&Dw)^$&^_~95zmu&c;MORJjW$rdydJ_{MMZ6|ym@hbF=~Iq20>`H7H1uBO<03q%txVklC>`51>IxX*E-S{_p&0-%~to-ko^;DC~g
zkjP*SW&v&%1&zq)_@P(8NW!!jW{Fxf(3EfveWymG0x_~XmOJdqh_g~>UJNTqG^{GV
zluPiT2qm8O>fF=65YpkhhD^*#bExf!PQIENM7p?SCW6fC#SpPH(X1AzYTnY
zt2OR|CeYa6S^zhU2Rx35s0eVI-~rzh>q=rQ2zJY;4EJtQj)v+utB{e1z^sut}(SH<@_DowW(??1y
zg!W5BV
zrc&hYdQTZ#rSu1PKHxT!PJz0B)4TY>Zg1^7R1;v#8d6vmIO{}m_di%sHae+our>h65~b7*<4FIBOQXV!UUasFm+Zn!2U%K{b4ZXk^%4_9F3``6MJ~##6#wwFt?5NXH%XHq}728H1fSwVC
ze)K5IjP|BlNO`!d#C%RiIVPa}WYweKCHW=)grHl=>6-GlT1;(3z|YVi#~~hIc#_}?
zavu!pDq=yQ*0}oS=K@aOtozdNQttFg*zvZC>6w`*y#V7Rta3VL<69c5?4gYH4u_Ba
z3q>J-wtUGDv}=?qWVoQa09v9tLNtatfozR4!OUeqdxDeG#T0opCZKP~{_ox$#9Ba*
z1xWXw`X==R8v}MaG+5XKj{^f~!j+=&y;>W8m{#w4JO*_}|yvxf8LNDARr@sCKRU7WINm-5|?W9S#oKOfU4(<6CTRej1MqWOqR
zj+`SB5ol`2dEg}L3&E%cbI1RKY6f2gS^QZS$k5vA{6J~myG7KKcHx9Y5wQ+v#lMmP
zBk2xn?4b;ki%Eo7KY#sdgsB1&;SlOZh9O+yh7a~9{rdHS`%kIfkN1e?gNsA7FS+<^
z<^;8;h?Bs;y8S4mOV9MJ+r5|RluqLpB|j?I_gy+xV_C?x^&^JnQOa>UAja1|;l>Du
z>@3V?6X`82?TLn->r;>wI5l`2SgwC!#Giq~NgaV%QL8FVu7^l}m7N?liPKMdZ{F`0
z=Z-j2koIk8cq5Vka0C|gsr|jWVO_T!nHvKe12DuhmWQ9y8I3;ROq`&$Upi&O(-1~J
zk(;U1_U;qVKzYH96BG(FGD=|gDB1`h0<0%&zc!J&`&JFP^#W+u3ghkTP4bC{84Aj>
zi(EDM7J-0b^-N@*kK2?GkkFi(qT;fNOA@^M7@FInu;(x3|#yZk9gN~
zY(2R={kAlzwYdWSp>6Z4#fPFn5G<0gX(
zF(LT3324DUJ5c~&Sim1AoERk>GhJW{FlTKB8xG-`3e{zld4ixjJ}4RToKE+kWwu#Q
z=EndR#A_t+?%mrP-D_UW7KEycG%x=Pwv9Q^0fFY*ZCKG>5R()~O$Gqnl{`50oIos=nay%;Zc;V^hUDIeAN@zj
z3%?9U8zP0drb!{v6z~IDZw6mR(OMR@Qw{@Z~(PZ-&C
zXtjQzZe>xm#f0fO5sB%G6ig`;0;b715p>%97>v*gM;5z$mHU7Id+rABLaf|)A=hG{
z`;51{nBa&0QO6nFa#0Rv=gU@ANsrn-4o{7pMXyk{(?9lmK0m#2TDLKFbVHTnj=ro8
z{<(lm)f{~bT&@Vwj5Gr+!$f3!$Ki2pCbOSIlPk$kFxS#dX|J&?5uhh8%iR%eGWd7
z>wTVm*!zX%*4Dk`cBx;KQ`Pzd2(2iptN);*x|<8JUP?BgMFjzErWLz+hiDCW5rCk`
zr|iZMKjtJWOvv?TnXPVNgiS(r14{rLrXF?eN>f)%H(hu1t835H<6~t{((NCi=^r^^kyFaKCcf8
zb*TZDCsN&F|GurZNCl`ax-5%ukeGeX27n(yh>YYy&n~2uc!IOaDl2=c<+-|1T6f`I
zGi)}9Ke)~DTkt|Wm3m|Q(NJYbUy-!Ma?MCKd~J8q*5^@K}Mb7qQ@M!Kym7TM86*k
z|AO{`!0SUQX(g55HWj%4W<4ev#k(93K&vyStu!u81lJ?;BCruGwU$_1g^CmIrRSvN|6dqdrm}u$yAqO=-;XbGp(A^{_zMVp|yOP-i
zStBocXbx+Eds0HjIWItjdbRm@bqL%G-J}3#;R*{;qKSWawUXpaD{tl%BEp1SMUvs}
zOVjT8`lmRdbxzjnRjIm-Z6&uP;-mu3!Cr?mg(8J)o8b{Qxa8oQ315{lr$q+o0r9x{
zY=2|M4k9jeVDV5vsq+Wa-(eJeJ#wRT#R!ox$J5Wr**{O;wqH1hiChanyakg~r=mS&g{zKK
z(@^AigkOyC*z2x3$enn^C;I)30d-*Qv;oY9
ztX+*+Dqw2d^u>}X)vw?eFGnBEkj1&;$+KzGE*+a2u|MNk=u=8eYD!vK&C}rpm6KR1
z+9}#II^f}(e{>-FIkkJTzy(ErupjGE#6*zlnKNI!kH-=)c^fWVr1Kx~+uW1GF()Yi
zIYd}Mx%d7hC?T(npRzp3k70BGtNGvZ(!0=3g$lv3yA_`GSkwSa&?zp_TIw^pw7jUpb5EM4A@Zl48#2Z+^5zR
zC%v!_tt6g@VZ_6iH<4
zPDn&0MJPfkWR?bFC9_h5BxDL1BNdXV5{jnxxAOnK_kFhQdA9qxZ|b_v^ElS9@B7-<
zw+(-HS;jx#v3>h+{C&{6Gq5L`Jx9lm`0(t{$C3c!Sbj9Z4$*nV6`tUBmUR(i#ziF1
zSBp0q^yZVssSQtl7lcf6#gJaJ8#`5iDTcv`FXPdm4@QUkYVQo-Z;Bb9BB@)LTC-v#
z0yNa{qN?qA7?dZ4@3B7Z>H57PIm$pJXa-k)s*1r=*o-AuMjup9*!uj!;NO2OO|xF4
zXI9&+9n^X2+?>?Z^_NrA`+2)?dy$7T?@oXqH6eFP_;&HNOd>ED#lxzDBofL%M|`h!YNZ
zka*kV!E=~To7E|2&V+#8(Mi&*Gh0BAb=80Lx%3ZsxcRXsCDeF7@G2GkdY1DrgHIJc
z{GkaGnnAdul;I!f{H=3ldFz6+z@RaH00v4bLUB&DCK?@-fue@8t*p63dj!G{GeZf1
zW1iF`s!HU1*k6=#bpQMVQZgpUE%eO6IOlXj{$oC;UJRg@5dO%Om8YL=Z!~z*w>*tu
za|b6^e+I1-I1_m2Fcv>a@f0!0bLfrvJQR`ggm`IvmgS)zPEs>gw~gjE0q+L;R?f}F
z`bMTr(f%UmY1TY9_0hr;B
z=3r{bTy8xfc<81Qa{b%swwnpB)(6mv6xVKm%b=ptq3xUP;5|^8@rv5?E%@Pe#U(pI
z%uUh$u3bKViDXDIrNrGG!U&}3gP*AmT^&Xq+k2I`P0c`RMdB&!Z}uYE9(0!wzVbs>2N*L
z9iyvEB1YhK5*@88lbq5M(bm$vl0uNR;YI)UtxwwX-K{`=3qO}%Y}V-?q#~KbR-=
zKQMo*@@b+Rf8pWK(xzg09$r&fAcBiDj)}P_DQRsf7^Y6WQ0Fm1QK?fovX8oGaqxjg
z_5(jq72KhZ7yB;s6A!&V_8VG!tsbSU$4%|0qdL-atW2Wpu6%LG%=;{=1o#DNk!y*U
zqxo)j111?J8T~CQ9=_1!meY#xPv6cwpR25L=+=_pxZOh@tGvrKeU)1?Cww5bvjb}N
zijZ;qOc^%E2)h0?ye>fVtGB1updspp2z*1rO*|U!OD(o*MPT3|!!oZc%gzm`@)0G~
z9C%o>i=*mU2v<#$F|_>M`d6XVP5LnSwqOA!;*}eqCJu5Ad#%-2ys2Kn*~-YeLaR`0
zfQrF747^&REOG%Fgum;8%(=n>KnN|9zzl;2=8sI$zHjKI*D(^@N5+-tTd3N=FOiyn
zL|9o{_kERGahsq?3=t7HzFvq&fes4Mt#dY>-u1+Pj9f*@ZaaPwN@@N2e{LoR()BrC
z4+gbbw5`#cdU}}#chJVIFY+!hI$*rUE~y5Hx)v8SDoQrPswyyHRHqhnaW}DjxCL2q
zS76*_XbUJ78eRikl;JI)&Uv^B(oF!MidvNibAMBZMJBOaa0Zam1xLdD3ERno^KJ(Q
zZ+Nq0A(l~faG6Ao=WVfQTK$rKBS$r!XOY&xa@6Ib;&d&CeL8P{g)}wj(7V!eIqf?8
z8b&S7!797Wu_v2pa(nWywrhQnpb{THv34f4(OxuTFJZQe0aJ4C7pPaH}xrSYAW4l(SAmoe5!$e_fgzLEsF%QL)u5_1Yn6Q(XW$8HDO
zTCqAnA;~Q-IaBG=wiogmnX#uW$4nM@RV+DVa2U<&qM|oIB^e*`HmW;pFWb$efUaaL
zkiy@qs6^1dC+iKII<*jM9YIhM6Q^f5pkOCUG8j_+`%=n%d_*o(F*S!ql%fKWrZ^XI&aR17oAa0#uWH2lb$L@M&6))S`6(jkU$kI+jTp0e?t5Em~d
z4vN-He7bQHJ0*H!HeCl~84%B|K~MWZUsiayuJGvH*P)JkLWsiA)Ox2|dfsv#j
zs>=`S8fv~H?3*nyAWxEH$=xOBWKW~u-r_KGo}oq}(|j+^|JO2j*zYzd6sVK_n;r)b
zGFvh;o*VC827VW@oglhA%Ldz$KH!tls
z(nkn)gk(JP$38Xoy#TJmtG+H|PEvv6f0O+6>J>%%Tv3rW3Wjunr-SX%{PEga6m!v@
zSyNdbq8Skvr@U6cd9Wk}v;7|lWlUbnXC;t8rdJo$RHbCQW%QCl{_Wcdh%M;}GY
zx_{6qb!{zxCcZ=1EC`v4ava?yl?X-@ST2Ad3p@y>B3T0DDH8n>V}ngrMqX(n262>K
znxUJ;#Y!B4_Kw4&q36{X$!&&Z*5u1#gY!p%03{id!ci?TKgb9Juy)od9?>5smyD@<
zbCGeYRkNxW&Z=J?o|9$vd)x30A^T^Wr!AUuw@4pU9~k{{iUJ}LAlNmIuyGRWu{7lTvh3Ww_K{wp_op%3Rq4S=J$fODv$^y`DaMhItnMKy0KC
zR50XH^X_-Wx+T4#7qHCO)DEA83g^(4-&}mC#*w^OKo8=j!Nr^PbFNa|g11t%y5w91
z4Dt*hj8lV&37MoeYNM!OH-o1b_FRQE=+~SSt+mkg!k!OUl5M$a)ujOqzu~R}jNXaj
z$Y(Mv;A)hMQ{M|C3No@uMPNE%^0UaXsGc;I)~DO@{toAJ0_&8T|gJT>*SCqeeWv
zF4Jjfe1)gs;hnhV(3z@S1Cgg}$KcrtOHvVy85kUkh^R}W2|~lFmG)>|xEAO!O05KL2Lg7Mm
zW`3izNXA50&KBd)i|$XBfqIId(+lovhyWS4F|aFEIqje;wz}@vF_IPnZ=gsT7fN}C
z0J%?SG@I|gKR`0=hmRkB04!_=4?%!IJ1@78nFiONpE5hnKPC&4h~EZ(uK+5BPZ5lc
zN-ia{uT4Nho2ctMow~0TP@0#``~(d7F_;%ja>Sv7oQ*~fwhb@sbV6I^m!Ab$E?XCz
z2H}(G5PqFZhoF+8P9mF*;?mO{q49w-VMZJavLBSB;wpb{LFsnAz%5g4Y%HiwrCya%
z3`FQCMHTUjj^E?=%Y}(3l??u-uWJs5g-eF`1U|yRo`#+%PMHBr@t{fUtp*dK%7WD&
zZC$W8a%=ky+XjZ^GIGCE>urK_`CNxjed*Bokz60Vh!IWJ-g>l4wAW~Dw3{nEdh_PK
zsBTP6*U6Azp6aFrtCqY?{*&A}5$ea>ioA;4Xc_!)nzF*oPo+ctc6gMXeUGVWp{eGa
z=}mJLXY@A>gG>xfxqu10ZobQ{!W9_ulZ@Luo;h@1n#Pq`P=`#{J$q(D8BE=;?*4e#
z-(kd47Hxgxeh6;<&yZ*njbKraWmW)}j8YD*sVwCwg6vUBGLBwzGGp4tl!H^^V`Fa?
zuK2-Q>IXa{TNH#^m*o3aW?i^$!LM~E64i4AT6;4
zOXmv;&Di3V_^(qLy(7+H`qzc$PrkAyLNGgtGzbKZ=1od3&+#2LB(&is3os2(LC;F^
zMaD9AtN?|&{rkIH>YSLCx<33mJpXjSCvi4H$S$qkGE%4v$ur8=vuCc;?pkc0eOv
zesTN6upNOr);)~=ZD6R8;`0XPpGUH;17x*l9Dk>lc!Efq&loCk1HsFp*9aV+J-u60
z##o%J%K^h-H4a&mFHgyXFQpI-yan0zwI%JxRgCF7btzpNN0r~Wc}CX(mo=DY
zlq-vz9JrKPjA>Pa&xuc-JV7(hXt5hkj#m-llvb8LJjZSWBpe?q#w2&0Iu-O-UNWFv
z{)!=DNe@*8Y5V2g2uuqQ^10G)_O%f
zRNL)wS-d!_uVP*=)1V2iSZtuTi4fHnCkq_4axI2|b!A=_i|<(?t~+`1)$*p{+N`(W
zv=K{WJxAs1l&W?Fji-Gr9v&EM#zj7P(s}H8s&td`>nb8=Mt+{~=6l&Muen`^oIELr
zloVs?sm=j>MgcWq$lfg~x=6N|a80&4s;A+ZC!Xfde*a;ik$AQO+%N(5-`H#N!^iGuPQQc2a^`2RQRa)@
zRCpWzgSar>5TlcI;m3II44MUSCMgE-dy@v7{VrAY9!5|oOottp)-Svwy8!mO{jwaV
zCkH5sMEcQ(Nkh=`h+Qo`4A5Z6h|eQ4l@Mfq%q__rC;Kx@;?L}EULt5HSAmM%A_}`V
zu0iV5iW+Kw00S5s$Tdhw3^wF4({><4SPQ|v;2b86+NRR5DTSW#s->RJdu>8Ghx7o^
ze1PJb+Erw=A@1>Gg=-WK@S_pzY?wOr&clc43?hMq(z}wIDZh}I_nG&y+OqBpa1wqM
zcB;Kd`S4rF9nWjkIWzV~9Yg|u*g7-{z?IuwH7Vm#WXpBJn0Z`rprN}98E-jm+|Hv$
zd285s0dfooIqSdIk!@o#t?QJWwFr1VxkLBa8jGTb#AGf`JvTmo{`sJvFG_Cp_nw7P
z32U*5CRK(g{CNB{>B5&`*)sIc`yFIVo{rG60KGqaRB6Vq<(Cw5>PrE`lwWGjENodd
zG=~9M-?CM{Wmos%fi++Q1U-kwk5ebX#nkkA!zH4fr^8u5`OFlhjOpO&IpL9c%BaZB
z%EXWX`;`$pO49~{L#5da=rg9Rkt(WmGy@z4+=1TNhpuC60nd)B=WcFdtO-JzdZE^S
zsjOlzS~!`^!5yg0x7;-@L_!`g8Wf~ZV!l$l`)4d=7nHwj&PsVVx&>Oh0tu);n1&XZ
zv<`k2wF{X~ulQE&zs1hOGJ%N-TDqpYGt$sGOj0v%a_Uxt
zMF9=hMb^;Ql@>f)D1h9NBan_4_RT1fLB~oKD$a+)ofh{@1#zi?feQYAK=q7CRbst9
z5Qu`&+U8N29#i!TTWAfdoyd>{Xtz2PET0#A)I;Au{M*Cf2n{QGc>eWl8$OiY2gp+5_f^y&dv*S)bs^FS&E?o-PWu_1Amr9&Udn2RMT16sba>;siM;Dk`ABl+7Ee
z?Ny8JaJGPG8Hp6DL1vq@jwj#RHG<7SUX1&FHMM%sU-vtEo|2Lnu^f$zoGK;Tr{bH|
zaV>v<C-+NpwEFcJ;L$SfU@PU*>{Q!Eoi6?Ylq<&JMaj=;yzYYH2#P|`896np
zY*@(i!WBZ}BiKPU58qe2KJJ$n1u58a*x~I7-N2Gpz4ZzB>+kh$>AEbB{x$)M);cBU
zM&{4oduvg*R=*rxo>ad)F?sEm;(~2!e7KktRCMkQ{xP7quU-SI6$TF47JmB)A3{)_
z!sb2E(5^js67ctjZ}r2P!9^EyyWZhNi01+1hF19>4kR60+JbXuFmuHLQp6tOnuSTm
zyY!9AsZ8SmhMl_I_Ka^I`rxF!Y160n@
zLG$<|)A9AeV;<2X0vHEIig7rDBmo*J3747L5G4y(4Y@eh?!xDj&0>25j^GQ*8oqPq
zCim-knV7_CJOB
zwH$>QBm)6qXS^cne73y)#AAGP-ux(wnyY(UvT`lFCf-WgT77&x>JaS05Q`vvU?%oG
z(5m>*{d_VJp$4`R-i2dl!Oog?c_}3hXtQkf;~rjEoSM-a=XGKjMKjgHN3(;KV=OJj
zzz^`28DIbwh$RvgKE0mvau_l~7hn|af~SRX(akIPt@5rVGKnBu
zl*P5*p9x&Hl#X6xyaH_%6ANRZjKH)c65@~q#!r=7Jt<$^HlFP)QmArf(8Tjz$9!qE
z>_Xt7DLI#xhCf@H5A07!AX5Jmy2BlGTy9L_tRv8pe?uE&P?%)3wbpX-nBCQDW#0kE
zH8PwpP+yv2{4gq5lZ~FIaZR9_IY$q*%x}ohVze*S&iE%2?V&7mpqt@mkSadx**u3*
z9vRDW5jPmG`MbSj7V~Z5AT4IglzqY!@JDolhu+{{;s9TD?L&i`UCj{K&Ffo&uR?2&
zB8`|czQH?t4SAeX;&)VM*jvl__2wu)oU^TLTIz|Dcj*W`gmNSVF&r+HG_)I4iiwkZ
z391Mj79(pXBRZp`VE!wg5zfHXtADc6p*P7q0jV3Th}P%9zo^oofEiOoGQk^>Rf5!+
zfRnz*(}Qp`!&O#FnPuR69hDOpv)*)MQ60V)nhN?JME&dwfM1KV`66bENwVaGm?y)t
zoP3OW+igkf)b+W!z1XA3<^_JZoR@mf)vsDpGlNMIRAeLrl?Y#haTh8HI&e&V=5URF
z9BMIQQxgFZ=6TG%fKZX@m^vk5{_bWfZ|$94x*C4s9k8n4FkbOvO3qn_e-5E!+&TaLgITq*H$jA|2ru^~2xa|yKhl@K1#kK^_
z^1Ll1ufF7$M$I<2FyHT3iKq!%w&KV!b+@Y3+1O;^zFRRz{yJ2oeR<{`Q4u_42!jVi
z4PG&Gc?ty@xo^mS$*?wbxH3&SO;2>op;uU|w|h7XUrwD0Vp7KQ_UKQ!F>PsesEEfm
zFlkD+!ewHPLRw2yZUCDv5XMrk>vZn?!EBh19^VM}0NRJ;c%txs{Xu!MthcQSJxi+$
zD$oaHl3>W}0!<#BA@mfqmJHMv6*6VPxZsNvCZkssiTOGD5t=YmO^^TBOD_!k2b`}r
z?etm%P&2cR)QRNWgDLQxq}^cO#qXpCMP*W$Bl*$&zZVIOq$dS$AKe$y&NI8i*BE5*
zu4OBOq!k|TIuA(Rt7O$-{w1Xd)K7E?+z4#EJ$NCP|P3bFa>L+
z(x)PU!xe3W!OJH9i-53#o?r`nQ1%d%esrT=heDgbH*Qu+wOPXvY9H)drqh{{Lx3D3
z4oVlF(6
z8GT-*{(V8*rmli8wmX;SbYj3-)ZE~_|4%rC8ON+K$ws~5gRFpL<^l*H?amfizKq6}
zvnFV<6FE1HwGli68CC~G=W?M6DVU$u%=ba=b!}wd#5C!5WVeD0w$7OGdi&Qb{v^)V
z_dtKeCR^mt;Bzt?4Nz4Un|2asaooWKetetEe(l)$ww;$x-KzWQ(YMWA4?*-X7a&Rr
z5I!@Xr&nz!^}oD0x@EJ>^i4~)sBh>{J#FOLJ@<=t9n>gVqqQ`JdYooOe1OmptOn8o
z71nOkv@i3!;&XOlYFDXMBD+C8mx#^~ZZ|zY(>R5dQ?;Z9{Xg%YJ2d^O_n%R%%kdPE
z%}rndto=NDHk4Lm8*>_y?Ck!A3~hM8=*+^}^*mz0J0EeW6xf|>t5JW$1O+Nm=|e=)
z#1HAS;9eV)yF6WyCQpFjwszU()aSTIq0uP5~
zidj@*lGENMne*@QwVO1?GuPg7h1(yRWNf?86^Vk8zmf2vf8KnT^d^^scA9G#M0wvF
ze*A`KMbH$@+2uJU3YX7Ru!|J+7=j;+_C!g*LdF{3-*1hEo+`asT6Lh`ng&SK1kFfwhfI9x$dNp)nAdxJgxg=H#EK@C#-ncWSWeyub&b>V^uo)1@RJXn3TsI00A
zuVW!HzCNrTcjt8M;lqbrgE>g#d-S_HomZ(UntpzY4$wON@|Yux2%lrvKYsBh)_sc1
z#QyS%&FDsGLbcZXYyohA^_%xMh3Ia96f}W*_Ovms_}Y){6;CHLHU2`cgkA)*0pi?|
z-v_VHX5K82vI>)#l?41jtG>6Vl`VJE4Z|U5*|LzAFQ=1MQ&UszuXwcrNMm>(Jdq(K
zbFVHvV(mcz_-|5tK?0)EmWB3&RMdnyMW5faM6L86btsY!cVp2Vdv^?p=
z6f3PyHRuk;VfaNqK?cBPemJw>KlftMEDA!dPEN(!GSRo`>?#}O`*T#~6O*cz`n$gj
z9Q?C!&o-vbp=Lru-I;j8pbnL7h{LqhgNNNBox6qHSTJ&Vtp6$XO3f1oifi0TcBB@i
zPa0`855`o;4%6ldo~2#LgVY2HW4|vw(sBe3AonfCccMw#vwwfRY0us&M8BVE7st{w
zAv>=N;dx>4tmcZ`kn&YE-*ZBkgNG?wv0`V<&+zJ&GADPZvNG8v{q0f)PHR;XHRZuI
z-8L$&Ju>00aj-^buwONm)Y(ws^dXPku0N=l
zZ5@LupY?u?98iCVZ)!Ef=Uy5_**5?LhW~(DW`j`|x(&@%@*9re2=I^M$@SZ-{>V*G
zy7KdpUu$xrL+;ss{g%k`&3qZx(-k&uBA^XE%Nd@*`Bh$4)TOd`Kj}TSZ%e%PRoy%
zw{&^Wp%cFkhc&;Z!bY&XV$7uGCpt3Pa>T>_dJWDH%-I1NF1_-rHT+N~V`EL8@x6OZ
z>p)zH*E{ohJw`WG3&XtNPk?WE!@{&>JZ0cmgGH{R0vGjIrFCb#iqG9fXCl7bb+_DL
zpl;VS@tgVI4nxMrWc3|9_zncok#QNc#(Vd+HPle{{d>&!eg-B9Q*E#ez6;UI?Oya)l9yLJeuE)Br$NHU_^8>}S>bY7ZC?#$Pfne^<|k$(kQ{2-Uh)!A^kf0US#DYsGWomlvH|NOqH4(wEeA(iziY
z^Dpl`d^k4fDc_Re!UtS}o$jsQQJ$eUIZFw8#41)BTYz%l7kdadp|8qMtt4Wh4e=rxp;o?T^%qi6jGyB!DkluE~
zR6xd!t0m|C_)y!0hrRa!<+DPKNv9-OG~+(7--C4rl-Zb8xy&TAoVKsdDOs`|@B<*(Z*`4+}QNdf1d6
zyLP@G8H@
z>pLV{`ud7^FpB>`g?FMu+a7Cs4&6hIOaJc4a*Mjr9)Cgmf~U0E6cN#psvSi0RzYcm
zO^nrvDR^ZT`&Nh76zI6?$&J6-IPmmkzei4ntb%X1H8_|bc`qC_g&;q-Z!19~k|-um
zo~-lB(xRnbC*?lPW(^>MGc&_y4BH$7o<$vOsa)-p8XdXWG$OaLUurfESc0ZR&l|Eb
zsp?|ixpU@}tJLJ06o=Q8`hG0)DJm%NZ%skBJ!w+;o7@#c{(yr>%SwqK{;;d^W@J#I
zbs}wIj(9>Lkd0ZZTYVwvyI(|I*#(6t%goG-%0~9e$jclzt|?O!jNHbXZ*5^N(-UGa
zWD%7M7U6W^)%<3ehqpX;GJH(qE5b=qBc5Tq7H72GW&sG9%IoZ&HiH#j)DzuTekGpt
z>(`IUZ}hchT^cb}xhZnf!-6QfUPSJUvnDRfZ%|WcQq}cAxQRrD^DdKq+IaMC+pb+c
zjpE3tOe(@V;wgcqO6x>f9V;~~O9s*8X8fKJXM@k&L`TQmHL(ZT&v|40mQJy!dJA%o
zSc2b@A52Q3BZPJ5v2d{kt7$PaCL%lTcsee&l?C`lh*-)|Q8lG3+WDJh*#W
z&n9U8M9_y3WIoU=t7uSpK|r7Eq&qB1FA+9W`}bXBKrTd%?m
z(`+fMTdQl=ARsBp9x=it-B_