From 20f7886890cea99b38768613458e30e451c33eaa Mon Sep 17 00:00:00 2001 From: "T.J. Alumbaugh" <talumbau@google.com> Date: Fri, 2 Aug 2019 12:26:22 -0700 Subject: [PATCH] Update post-training quantization docs for float16 PiperOrigin-RevId: 261369284 --- tensorflow/lite/g3doc/_book.yaml | 6 +- tensorflow/lite/g3doc/guide/get_started.md | 7 +- .../g3doc/performance/images/optimization.jpg | Bin 31527 -> 83722 bytes .../post_training_float16_quant.ipynb | 647 ++++++++++++++++++ .../post_training_integer_quant.ipynb | 0 .../performance}/post_training_quant.ipynb | 0 .../performance/post_training_quantization.md | 43 ++ 7 files changed, 700 insertions(+), 3 deletions(-) create mode 100644 tensorflow/lite/g3doc/performance/post_training_float16_quant.ipynb rename tensorflow/lite/{tutorials => g3doc/performance}/post_training_integer_quant.ipynb (100%) rename tensorflow/lite/{tutorials => g3doc/performance}/post_training_quant.ipynb (100%) diff --git a/tensorflow/lite/g3doc/_book.yaml b/tensorflow/lite/g3doc/_book.yaml index df004b12680..c74057e193c 100644 --- a/tensorflow/lite/g3doc/_book.yaml +++ b/tensorflow/lite/g3doc/_book.yaml @@ -77,9 +77,11 @@ upper_tabs: - title: "Post-training quantization" path: /lite/performance/post_training_quantization - title: "Post-training quantization example" - path: https://github.com/tensorflow/tensorflow/blob/master/tensorflow/lite/tutorials/post_training_quant.ipynb + path: https://github.com/tensorflow/tensorflow/blob/master/tensorflow/lite/g3doc/performance/post_training_quant.ipynb - title: "Post-training integer quantization example" - path: https://github.com/tensorflow/tensorflow/blob/master/tensorflow/lite/tutorials/post_training_integer_quant.ipynb + path: https://github.com/tensorflow/tensorflow/blob/master/tensorflow/lite/g3doc/performance/post_training_integer_quant.ipynb + - title: "Post-training float16 quantization example" + path: https://github.com/tensorflow/tensorflow/blob/master/tensorflow/lite/g3doc/performance/post_training_float16_quant.ipynb status: external - title: "Delegates" path: /lite/performance/delegates diff --git a/tensorflow/lite/g3doc/guide/get_started.md b/tensorflow/lite/g3doc/guide/get_started.md index a8f5daae9df..ce16b795ec9 100644 --- a/tensorflow/lite/g3doc/guide/get_started.md +++ b/tensorflow/lite/g3doc/guide/get_started.md @@ -272,11 +272,16 @@ following Python code quantizes a `SavedModel` and saves it to disk: import tensorflow as tf converter = tf.lite.TFLiteConverter.from_saved_model(saved_model_dir) -converter.optimizations = [tf.lite.Optimize.OPTIMIZE_FOR_SIZE] +converter.optimizations = [tf.lite.Optimize.DEFAULT] tflite_quant_model = converter.convert() open("converted_model.tflite", "wb").write(tflite_quantized_model) ``` +TensorFlow Lite supports reducing precision of values from full floating point +to half-precision floats (float16) or 8-bit integers. There are trade-offs in +model size and accuracy for each choice, and some operations have optimized +implementations for these reduced precision types. + To learn more about quantization, see [Post-training quantization](../performance/post_training_quantization.md). diff --git a/tensorflow/lite/g3doc/performance/images/optimization.jpg b/tensorflow/lite/g3doc/performance/images/optimization.jpg index 1a419f607d6b5981144188ac130911fc153e2d29..f866768509daf58916fd37b8ef74de73273a0603 100644 GIT binary patch literal 83722 zcmeEv2Ut`|ws4bCl1R=XK{Aphwt!>-L2^_PNs==NEg+yskSsYT$yu`GoI@iy=Nubo zn*Tcc&y3ESxBt$*x4Zv)JMDMjUb?F8IaTMJI<dSOznTNxke8N|1|cDXKuEwp(A6YJ z5`>A4j)9JbiGhJ}?HcBFY(gAtEG%rYn*?}-ROB?&ROFPDx9B<U+`7$1M@h*fz|3}+ zi<g&|=8mA~J#G;W9$xNmgCJeIb`2W~n-m9!l$(~4mirHXuD*cqF;VWK-A6&X4MN68 zLcvG6Y5~yzaH1jo^a1_f4-zs8DjGTl=C$isK!frdAY>#I6l7EsG&EFHptT3^JqQ&a z?ItakI68sKQ;gfTgxp@CDVTH;#f?O&gM0Km&+NRfT_+|XB_n5Gyu-xI!pp}ma8FQ3 z@`04JjI5meV>NXRO)YI5qvysiOiazp?HwGQoLyYqeBSu_`M-S^5EdR085R98CN?!K zJtH$KJLgkLX<2zi<>#vErskH`w)T$BuA$+P(J|=w*NORs#iiwy)wT7F{e#1!<C9a^ z+4(oTkU%JZK@0f#7sP&p7e0U&GAb$xD#kawkdU2$3k4q)jg|}jrnm~mQ(J=D++LW3 z5}_%@jo0XSRQHIU*$rMNrsth!*#CywPni8}h<X2AnEis-uXs&>uu+hJ#Y4ddfkCI| zOsTK0|9Sme&jG7Bxo>8q5ySS;I$D{_EZvdb2aFA=r&pk+#=WFV3`_8C8iGi9AqyUE zsf!rD0<A3-#%|~qx4&)ail|Z*OTGg6`pkpRaVH?NGH|9Jo>-U9ne9nE+&n^$G2m=8 z*RDVVPQ!?E@Vv|qPllX>GI#%M1<cF;w3*N$*L>%oZ)Zk3%tvaK9^@?4=8BSOv2=b6 z_L@DoYYsWy03UHF$__<wJdS-YQ>7wBB;%qYMF{%y`ehD~+Fz+%fx;|vA(J$hl#z$} z9?biX5poszSD=@WBRkDr$D30J`wcAyUQ&dr_nHEjl9B(&Ri`}X3=bqvx^xS<#MX?` z%z@)xfkJ&AUx5l$u0SaP#49lCg|w;c)PR8#i9a&%zd>7E;UA^m=DKn~(t%>R^@Y(D zC@rksB0Fj|ItX$52-reH+Xz*pK!4;S+JK-mEIk>y0&R{!)}Gat{IFDyDg~M$MAXYt zgc|-Oe`MHyhqkt}MBt@3^VyU3E07GsE2yFTZ+PfIrAV#yK1nhlXM*ph1~8$xHzA0s z_eFcZ1iM&TvKt+8SY_RljfT5`Lvzn(y;_6)CdR^ZC(X|ttmtB8)zTicXR3v_(;X6( z&%K>hf!Qzga&#(eVADk!8P=`|y%s*A+ovwO0%7aunF2p+b?tK+>2FNa+k7cyR^2_s ze(iS9eMTeiBxIz-!KygyEV8AeSM-d1nO4*OhQHT_N3K$Pvrur#{Kd98nxw^xt`cOW z6MC<MK>M+}s6#dAcJ0%7VG6W}^=M*Sk916Njm;YN;AV_MnxGf$5O<^b5Q@pQ(tE@t z7cYm1FuHIU^_bd~blwvkyJY3=p6MOrOUjj143*WyDc+yf*Uu%(k0O42jr2?ZKIAx; zFF#A`O+L0a_oO7zy*tBV<y+^<%6{OTDPUhmj_PhX&u@(m>49P{%185yr#_UBltn_J zl5Q0_B};8O!S{gV>K(9ym9&rF>#|E|76)r0ExWv9%Br8qjDuvIkw=c!#nmm{=;{d1 zlX8CTa&Oz<b7lC(09<fnH(t@5eKNO44fzYdum_regoitVU>3i;?x-RbC;zCDB#u^- zTi}$0MM)MV%i4~q$Q>;eQPE)E7E7km#A{VBO_+l^)QeiNTVk3huvtFha}F(Yv3UG> z|4#66g6^ZT*s+b7M!z`155|iRlVa2^S30ji?Qiq&C^w=eLcF(cF6c{~oKrN>)mIlC zi0M&vCi)k{MYD@J0#xj(R&oi0t7N~vzV#gYP}L(~t!Lo9S?ws<^Mk%QQQ1PtJ%bd- zj8`1{Qri)U>OGH}R8D-#qEr%H`uT=uU}+kD5dVXAn_R}+W%k3j(L6YVfds)x!j!lx z?@>)#Tlud*x#Rn!3t?ucwsgXY0crFI!Vrp9S~>jCb~LRg0Vh?99=AEEH-rdpneR`x zeKHE<X{WGcyWjq*3NHGoH3EO5+TV*0$CHq}rO5;F49yIgnMuq2Rl0jD8#wo<zG3gB zYn1;ySB@$5tr3nycUOlFx~O|yMm^IF1@5oPdoyZ>9t@>(^O~K;Gt+uz)<ubGwvb2r ziMUlSblpUow4%P{C2h!pi+&%;!|h_MTfZ^6(EnCxRlOo#{*Ctvir~KBwW3w~U^_d! z#l$16!l%TMNyqk`c_O!~{k?H3v3IQck}Fgiy~-;s8~aCdHBRTFzi#uPl|#37j@iZV z#5Q_w1my<C^SdsNdlF@R@`!-5LKP#FiE^M*trP`A?+@l>w}U_C$(BFgJ8kY*7|z?d z-7tpz&e5HXjj-h!1)WjjVu7e~1=77HA-;hH)6@VNrf-_Vf7rwhx_(eNB&KF@;A-xX zgep4J9e=7Czo;7D)UH3SZeZznrnzPqFiiXQR6wr{$xdRdAD!g7wZC)BhddeOBP-Al zQzxAlKmM{Pb{r{%vf@<UFTO9(;{G+gL>bRq(`jtoh?1ayf91ZC>}D|L(i12{x=Xm$ zKzhtkuY|>mq)V$IKqIlk^Hdf)j+P=}QD?a09vcb^(R#l{ZIHr!>Ery>1~U5m$>OF; zdx5zvWAZz9mV#t^C!{Noey7M4XjbMh@0{sQ%qef$K6*Z(1{VXoD+=3SRQw90rmV^` zT^I<Ld2Yf#QP(5A@K~fq_H1g7SPXu>Db*{d^JT9q{Bgn5hK;%EMl`!S@^-K#%$Pdf zX=&Iogup@v7HA$D2xX;V3cUZw!{#o}uD04E%7Yy}AN7WcVJqG>t8@k7FzkVl>Loj# zv+I$^)2hl_m!~C3TU#FCcP^DM>8vjgz$|^KUiM-ub(H~p-HJMvs<V$1g}*k8bx}lL zfm|HGL6RPY8xv6()M?JydJ3*&=z<D!nYhwZ4y!|@*~zblCRUDjgI>vHH?onqwe}Qs z(?souA(xy#!5fRqg0;8ksQZt<baek{S=C}b>wG!nYS>h?mMpmJK2_@&Bvtm6ccnHm zpCP*6<z0svxYh%fIb{w#b#tsp5}gXu(OK<$7t$588IUD~Tm$GZUTB0W_tD&vzU-cn z@`2BfY0gOt*$N-SsIEYC=vh}FgS0D<Bq4k6-fZhnx_ru(@3#(rUcbx%rE{zD8RJCd zW$_hgu+xwaI+XOIrlP{$&q)E7S_8B+x<IDX0MH+~SVs^TkdDTjD-bjrFr`~vjel6H z6f0{#1dC`_08>8R^FK1~|DLuv5DP8HOUQGI?6#DpvxTX6u8@0EqS7u4uQ>+Qb{uuF z6eWh5+_Q&v4xPWwgWVL<*zO;p<m5*Do<aH_C8fYVb=#)u9&whLu{A?$OQJ?cntsoC z<h3v7$QEC&K=YXU%9kKMyo<fjn^T9jq2bwi)ue<PS0FeoHS-lH89n6+<VhX^lMn%{ zulqQX2sj^INSJ=$byf)CMhGFWq9~89Kn*xDKeT_n6m5hYFna}hL)QvE0*!!on*qZO zQzihihLjDN^-C6H82^%5`TgrhAWirSN#`JQn$!7gTsfz^On@=@{cCCV-ne8TUX%M@ z!pu?r9thNk6A7Wa+o~)5vbCSR4lA@$+46mSyhR%c@xJyKhe%li-lJbZ_#XC09RCP- z{`+U-2Zch<@P{R-qnNt_`5$}G=#DUqlugEI&5W~@4Mw8wP+|}3#?8+&sPl(BNey7> z*ZW=0`lRXBmhd!NTT9<S3TJfR){>wCJL5hZ#xUJs*0edl6OT@_y-lc`^PNcKN^Kg{ zIrljN*dw%0|C`;kOClaA{mxmEg=Q~{E!>zba<%c0rBF^o1ui&}Lkd_6vpMs9carQ) zb)O_M1{RUE%}GOaK#R2)795rIiGm{oSiP#ZDjw}jv9t3;-iOrAx`yOXM^0&&_&Yf6 z0ZZkuP0Pr`9&ruyp<w7jnkRTP>lcarH}76{G+0-lr35p>lS#nn6m>lAc*P0$Z5%To zlh&7%M@Z1YKknB;S~0v?hPKZc2xrK0-L>TMMku(y?IS1qAkne7_C=k4pMK)_)F*kw z=!S)x(`U<a3R^fgCjFWJ1)JCtkIUQv>m#)KeX*eYIPaiL85{3gRX1HzF!c6=lJbqs z5y-`(BG&1!oICFB-2@jSQe9K8G4-eRG;LQCahXu^0jn7F=k?<p6iCiP;NkhKh)KxW zYC(M!p6?atK&h<o!V>WJB)%5<_Y9Zhv3h9g)DtL}WQ_A(v*l$OHmv4xwc~vrd83Go zMfvf4iZTtEiB~efo|eyg1wvPa><5SqFM!X{%nV`N;a8x*N9c7#p(jcBzz)YMe+6oc zNP<5LDT9R|ymT}X*y&fGMM9)PsplS9Es&$@Lk)YzcdkIBY1?9Sz^17Yc?I%e2E$rG z7K7R}X8Sak$Yq6aGPx^I8`FjITfl8WlmVIRQbusyCqMcVjz8z)zeXRwk@7Epq{+Mx zY%|Z>dr*H%2QQP1srMdNpgMsA#_hh|;m&&(<C_z&g*I5}enYswAzBoJfQ}yt_qWUg zf~J=I$UrK;VV>7~Yk9w6pdSHE#&P=-j_-uYpY!qGKp&dCx$`+|Cpxb~x=A$ldrJi; zt0av?&j-+||9@6ZJNBS(@0BZ1k?$@dqFd)UbiVKmt@jG_6l?a9ISSyUKWK#iu1fz; z8iSRtDe2&jDdYst=L#g1Z!sq03tmzhxB_j_U?AS>0D|NHW2G)H1P9W=VSRyVa0Oa_ zSYD`2O@0OXpf`JRqwWec6k`eq#y=R_{8zRw5dlp4+fM#hpeHc!k<M7%bC<`62itgv z#y!YdIUsNTr96?>f5TkWj2veg&J;p_txEmSr-O2FQ=B_2P%lYRDd0dErb}K4hiO9= z0p&{u&K{(Tc*WMRe+AmlUX{T+$)stRbDJhwO4_U7vp(A^0b(hDz7_IACn3D;hhWH; z<7(DU@cc{j*~59`D^SQ4D2V2VPQeZ|6CXXVKwg^;nqiQp@zI9WrtT{c%@v6J$8MBs z;PShdS0I$JwL*Fzi=;Rg((fCM03&#R>?Jq=F@Ji2z{npo0F*#1Bf!6sgvAMmz=25I zcb)8$5hKl~a6H}A+HeGM8{hyDBQ}HqZjiwrJFSXe=J@Zzs4IU%juw4@N9B98)Qez| zIc6uj*iIUO`Mjk!Cre}KP3Q_A7N;d(oMcio%(=7wdrg>>>z(fjr=Y*lfU#<yFJT0F zSCT;T*8SUkxYF*i=5nzr?JD_VvZ6|WaQY;S{7+}vg9iLpDx<uR8#C(z<6mo?4qj?_ ze5IR3F9pxrZqgj#7QvIQKmj=`GL*$5&n8};xUshV@J$+mgt{0oZZ`2c0rL4IIM7hW z<P66%Nv$>d@tYre0aW1&1U9_3jx+-yO^ajTHL9m);42W344gyM2;ntG1DHnpY5<)M zq|EM#CI;+>!1UbOFH!QqfcdikICy>A^B@C4%?A(!%Qr3}6h>f_4jOO)^c$iDSVoTi zOMq)poo4UzamYD_mZ$O+s8yxU=R(3C^5y@H1jO_aK=u9F)PUbHR9F(&A79a&vs(bH z`TeYXs&;O*)Kna1XS-cgYPy{wtCHj-s}3UQH(&x7Cq)vV`XHjkA3^vHd;nknFPbkY zm-g?MPdzR9mFg&;hiAKTY+Eng=LqSZxDuqJ&a@cZdmG$ljBe$GDr!!DvybWTiKIMn znM6G3RYp|dU1Dlne*dKEPPzd0<&-(2z9vPeDY)M#MfeEmk6s3ad(jASAbH5i@DjZ? zwa##!6YdQ}hPE2car6X)5Bg6d58)w_sR67;8~<$H#*44D2SQWzg+M5<|A44pQ*trs zjOrM2z61GC;8yIO#HkAlJAMk}P4WEUB-fceO?Ys%%;l^6Cu67H4NHzg;LT;T{O%06 z?0MQcFkFRL`ae<?WJPJ4JzxYf=sF;45|x|ZKZTFC<HMQVz#V(?Ou5n3`a20Yd6kby zhc>v_?$`*A%&q#gtBh6khsc#XJWefS3~^_C&yiQ0QyQQ`AU6MD%4u^-ogAq(e?Udb ze8$CIqhv%n@x)Hf!RY4OIqIhq?(nK)^PA@DWNIpp^}bGh70MW`9S~-6)P9u1;)b6% zMQzI1Z%59QE9BwZmjl6xO!s_#5YMtoy?T^v#=jLXqNxa(^H6G5uBx+$BTK8e0_oAl z+0*vjl@@~XDCQEW#;?~XYB8l|R+LrMeU!AYW;+P|5K8+3{5oAiaqX>XE^&o`bLkmz z#jqmhDV;=%Cvw<9-$K)lf^K$?eVfgiEIoByHVtd}b_yC%j_driuJW+a2q#-2mKo{o zvNy<bs3FmUTkabAC=tdaW~>0`iPQc<@<e>C3BAdIQ<J@zq0U(!eVq%l`&D-DYkwG& z(jLxZ9682h%Rf0A<{z1|;kiF#`IRVl6mjzk)WNB81u6g}V=^>)W<ueqhiLrx;girb zk1V=dbI|Np41gN@Ei|eRM0CY-{ac)ubMoYsdya&@5lQ?%l1P4U?6dB6@PY8g73dhq z>7ms-b`TQ;B>b!<fWqq8_0?RGs)OT(cbpo8Dw;<LBq~r2L~rJVXiM^Q-!Ioi<wWq> zLazbKNT^X!KA&&Yyyf$_#D!S-^Mw!dNe8{jM2YD&sn!YkZ=&SZPsT>1dV+U0!@Dma zJ4FRYGkYUpac67x+HP;7$m@6emGF4csy_@qj$<u;&Z(H!G#d9LzRijFXnI&|6b;D& zjZo9bdT&@Sfp(hx4M9)b(1b;xye8BNhq%fnOAyYoN+l&H!fq|{p<bY^m4Z5XAuaiJ zY6Nl%=-QpvXbO%djz)ss2NM>quTk5%37_B<C$o?E1+25zqAj?0%Ub0hRk*y63gbUC zqKF9e>2@Ozg5xdR+nq1=;PUP17?Msjf7SK5vv13paI04|Nb$^Y%Kk`G++z-czg`jK z=$y&>h*_P(Skk+P(7{@jmGkjXp@YR(>Bz0SQ%u;8itb@#-3pa&>55<6XAE%Ah)2+j zBo`0wl24WCc(J~uqmAjf*EZN^XYSitdlFtta<>z^!)CA}LtFW?C=<bZ-Bf@$ywI#& zSP?S%bclM5A`ACM!vmppn&X4AvE?BIy@$$?FQJMqjp{!#pO46E(fW)42=y<4k7#v| zzkib3GJ1<3tfN_SVQ}&k04Q9*w_%Gs>HIpBOy3+f$LE`nKjxb`{a#jsbjE?r21JF3 z^cK?zOzFHQH*o@QDIVUYhuONm+GDQL7dO%t_HD8~PwJ~a8LAbV;f`*e9oJY8WUp<$ zYgDBK_8;CWxDFwd;|O)mY&Wt*tLq)8YI*Y7|2n_dFb(IXM#H>74G==ix^Un6;5wrj zxxBR9#+9U#J~*mWN2={+sH}_d3!1JE{{$m=G-6qno%f>Xv({kRGX-WAv1e{caYqHY ziWMb8h}&_(x=bGwvhuvz?A{Q>d$_=TUE`^5#m+WIPjEMr1ste{rql1JUXRDSSSizO zCuwgP*tD>|-c2bc_dX%779n~Ck|zvR+gD3nyi*@N+&jBh?9aZ%ZQiv1@`>z&fGd!( z-qx2kO(+IUzME5}kx3z}U3!?q(nt%@R*82zj4Hyq#TBswp)OxO51Mj@9!#}b5Pgyr zztJM5zDNlXnn`LW8S2c^%g--!9=p#}^~hQFHGa8&3ZQjvswz5irRdyPc|6KrZEcd1 z`E(F2m%OPuX~t!Cxc*v>prw7)z{UEpFQ4XodPgE#Fryb$y7VNSW5{)78iPn>)%}Rm zYRA^df+UltRKr$P7LK$TqOM|*G0B_UYvg4*Z@B0SNuLlM`h*70>Nsmko{Wr|DmqM0 zOuM^L<!N$FyO^|b%UDuXp9R#=^>O3!^xG?kHA@Wf<#RUMtqtl^WQX_FI0>I}(Xp;^ zvxZde)1REb$bD8M{aD3grzJj1aG@-}*4-JKf5lR$ZRKPP%z;()C|YH5Q))2XmN%iQ z@~A;$;w(+6S)yW?LX$mnV(Ps`DYmmt;5@DRB3AHr|3Ut?P*bxMEC{DOAznT@O2S5x zV3{WVhX25vCYI46R-8L)oWi8Ar8M)Z0IFWjg5=0P{FC-8TaP<$Umk~AScOkYF1>u@ zRDC#EIU~xXNTiG}ah=`4A}g`Mi!rEBzkQK(p?K2R($(X7FDl*gt-GY1tMT!d77uk= zUH2nex&4&ONE+AV+dq3IYu;fj!h4%GI#=p9+a1HGMb~j(6XTc;93-@9P?OYRncrH0 zm3Hd`>Jl=#@JWV!BHu!os&iT4fiRB2u>8I(^o6&@ezsZTGUI%swE7*Ew4ymLm^+kx zo~bOR92TzqTvtDf+Q?Gk(ucaKz?_=Ds;0QQvT}GUFYy#1mg$9Q<^d5&>KPLY%2Q4? zy!?c@5YD2q80pNKvw^oPX}*}N5uQu7JF6_#Zj!yWM^SfU%G9aoUE$)p0yg7mYi{C; zbVm#-M1!~XTI|b2zI~!N?KaEpZT<PcV0^zR{Il5AT@iheim{3cVvPxpy1Fk_YHtW) zFeK#iF<`!eu?r4Eys*`(x9uX?={!qDg8l1CYtYH3Qw0|Vi3YxV)%>9;E_Mr+xHCJt z%dD(bf^E`DLIl0KV$_32x&1_BY&SP3nC4?Km!9$OV9PJr2ZnU0TZG)4F!LnYn^UmB zkuV*6Cnx*D*Naqy8cd^X9@0ERf0zeX&)(qHk+Zj@d|34GzP1ge<#ixM6gkoFlUh}T ze#LfW4QxZHo@S_42G747lWpjWfzsZTB*CjZLaxQ(9emg@TEV+QDrZF>nSd@uAwlYy z1%Bb+CYj#N*wsR~k%yyL;@F2qBOD(qZ&H$FoT>O@fZLLE5--|G1T>s&CfCO_>}CS> zm62~80LI+IC4@skU|k&!gi2sI%hHjLFD-Q~k$SLe%|_YT!-%4+rv>evs*-S+a=E#S zABCm$<Gr@1lh6m1cV%cJd8%$8%X607xYgJ27n^12c4OP-2O^`g#utIGle!A^U`;y< z?MfkA0}L}sMUpOQs}prd+v~9$zQ?i75uSYs!d8xMZSPb0g7dA$s*S^S(kSGf)}U(| z_v2ReDGAXS>O@UY-DyV94LG<QWoLYj;*HtW?yy-E39-VX5-gB;ybn2vEN`j^%51f_ zt9enSRkAu|lCqeuRk6Q4!lg}Cwn_0mm+u<UNVdWos`}5nN^8TLyo5V>6=O5*FQ2<4 zA*Azl5%tSJ3@^wHugUNXZ3BG#6>>y=NF}|0OeMc^JgTz8U`D2yOutIBK6?$aL;{$w zP{1cNU?#J`^M#Mi7#g$Ypd$6s<EI?Xe_~oD(qVKkWXX9HSlKFsMAgRHs~@Ze4Nm*z zO~_4yJl6Vwgl#eWO(=h!>hjJIGZikW%z<YT4_*rtMc0#hUv$<#sKvG!Z8W26J8^8@ znJ#2M1^3N}aiQ9vvwV{7sDl=-bkM9!EP_{n9sem-Dbp7#pF(Ab+ZKW1-t_8wj#re` zgtqjyH=;kS_TdupFL;3a-4^*m$fh?mY_ukHbj_k3$ueqLl33|EJhPBcen-+%q9>EN zzHeUAx-6C)x*)+7c<Dm86Z}>^gNmYlTF6N{Ro8Ta#;1(+A^~^ee8c@6ZD{&4B&2Z@ zDm;)8pWSXVxd5Dj`qn^7NuUDz+p6Ntk4q?#hB>R$qs@A-*oD>R39H}%>DxsS9bw4M zT=a<$p-THji_H*{#sw}^m8l2FXXZ*npj$q(9~4P|Js~e#zuHwhLA~(JQOvP5&e~($ z+x;gzuAW`8uGeT-2qxnZMAQxGrj^vxwMkpmioV-rpDd&L_MdaNe?}%nff9A}FI*}q z6Vu?gbrQ|Y`=T%ra!h|dYE{g0Dd$trrhP9t%r;?$8m@?KD129NE-^wMC0`~=j<dO2 z^3%TB1fGAbvUR35%x<KEK3F4iYHkU?47WLDb3{YA)#BsQzWbMo!M45Bof!LSy-%Sv z>jRqL1seP*7av{3XcW`jN0!&cOJ0>JD;fLXce5>rjkcn`<#k=mHx)1iqceGu9@-wK zl$b*U)9w{)OgIQFx??9{vMrK3Ry?n{xH}!s8u@hP_+t7}FgGL<X4TyqHG^w;T~Jl_ zwfmU;sx^zQjabrZ1*?DYzFtKl>F0qL#TC_+p)rfD;?r26LESq-0iz)cQs;U0otfhb zpQK14Vtv|UKy5t7fD6Z$M5?V$z{;vS%M#kN$`~w4&|=?A&ov`sVz>Ws>7oSfnPB@+ zo%i_;Bdjq~2TL|e%`1Kid-sVEB;usi<yDEuP;Cj98P$6p>h#3S>YP{3uAG6i`(&lB zl?kP}h?R!;Lyr+G1jPy02YrWkVv5*#>+qVL#b|4XZ;upMl{2$120wF>POh{zj6gig z>z?;uuT{y=*Iql&)1DpoC>noP!KT>G)}9J)4l(Si3gT&VCgwlYaMmD>J`o@wL-gCE zzp-=6xdMUvGL_#7eS*E+=*1~z_StH9{`Kt}eJ8Ku-OGEaYvme2k??Ad-4zG7`h<+h zH65qgYOCmzkGm~5WsJF8=vDFbsM7*^Va4{8iL4hw6D?s<<WULs)ep13fPtmSOL*L7 zXHHH!L_4&#l^<p+@@(pcT1d`n&PpyUuJxu%qJrxVn`Lr!kW(k`eIL$;CSo5iO)a(5 zEyNq!L@kGRh46g2J7#W;5T)CtDTae8QC8(mnsT0px8<$~i?OG-EhfpYitsHk!+AVJ zM{DtWhIPx(p5Fo8#C6#{7;>>_;enZGAO<S^1e3Z=Pdb$D+O8j^h`!6x;W}|%o9@-! z)W;=zVhL_>CV`?aBYABnpbOa9xh!PCvH<r)Z~LVk;1?G!kPr-Xmb(Xvw1J&dLQP!v ziA5#mrVLz+WIlg<jUCpa{gz6Q*HE10Lp-HHYysj$L6YUu%n8`deFxa{#GSeHz^@z6 zA5m-w1vGGkXTf|HILc0=9=Yng6rKRzO$Jnxsx7b*n$2Ta$&M~N@ic7!PkP65uQsK{ z&v!e{0~$C(b|Le$<h|v-8MXcR0V{XYGrovAdrBUpu8nGDJWrf(IH+7Pb!k=@YM7_= zdF02=-LEPKuVUY_(s<y~aqlJW8(V~}9*&iT=k50z6#)~oGQ&qOl^*}C!TFfC?d<E@ zS`IPY1}YJ|H}ZGUARU|O5NOvJ&aVcJZxwIDI~p|)z#7+R9|268Kc0d0xAyto2lh93 z#N<EqHL5G{P=e6qcq3ph!e(4neY+GWFr*DWiFe$7ZSbO^cs@u$x+ZwSw56Y3;?Wb0 zr#^{-D2c4h>?@I2?S#R}b0s;q$d5U1Y&utK29+tiqmRD0*G&3q^@XmDQDRIR-n`0Y zk<@&guITM)zik=y3rVkuyNl*Pss>PfWGj>L7z3-b^(*JP$7(EJ<b?DAUtZT+n=PYT z%%`F`MLJXZRu>{SyUUDg%h<hk15U(ka~1ZlpLfkax5S>bqYpXNVyY5s2lLCUu4~5{ zwLYB-;?@_lfQ4o{MQ+`?Sz599`fR%m%pxd0N9Vk2S~y&4;As-oiaOkN+wV@8<RHEr z_(OUWGwp|VHcN`&Pm8FYL>tW6?bMYESRWngq$jQ|zEu{%%oVLMDwtZuxV7YFvfc|j zpvbV~aNR|lQk_JsX!>_Yo3`U^LJO<X7gK^BviJ(n?^+*L9-oqtzX(OG<~zyvpv%ak zseWhFw*G?7tN-c9g_=-7l9@5u`$_#yVP(uPbr*S8%e8Bp$3%tBAutUgr@o{KycMI1 zNhPrS;C@g>>v5K^W&TswOb=0~RP6ABoYV=NL4)3}=3x-`dvBk_u833OixjxAFdLm+ zw`kiJ1gdLB=5n#|4T9#@qJ|q|(~ILib4G1;C*(iH6JlyZAD$F$FqH4v_wFn(CpXtN zJNKETFq|RFKN0!j@CvW}C@oqcKucHkaeZOdoUM7@7Lhoc5{RnT$>>YP2Sv2tlm#qz zeN~(5I%iT}?j*Cvqaa)h3>6~T9pjj@NP}75IAaXlWvtn@mnEUO!4P|>P*Yb@hwplG zGK|PYolOhZ2jgtu!_ypT6+82tb;m=fWWw+(GKSurd`rlyD8sJ-<eCRPuY;9j=mN13 zyuC6_X6QkT`I+WL8ycZ^wF79SCERS>?Z85tTQ6Vo25Giw_%gVY=F_po9V|b5UevkU zS)g&+GVxLftt~WVeQ2`Xp)o7URe-DQ9!>ON=8)`!gXyq;L)vL|%`|^>sItM{;J|UW zKJWCqz_pMS%#-b@7KhHGd@>O#Y`3<Q6s*c{)c~T{QSWUzPyL=ZcJ@Av{YJWCT*HNq zG$d=M8cwCk*7SF`qj=dGUL`7vH=@7)`l>(ZhASIsZfb?F=WgiPi}$w^spDTjIpRAx zW$a^zM0m_xGp<0U8*VK+uW&fSNx5Rk;---A3L&IRk1vTWQ8c5K6UHQ76FIJRNsFK4 z2Qjd<2RV{06(ycvnZ%mTdkG**zRGC$3TSg0=(#yln?ey#s1>=Hk`g+I>h%d>LZ01- z+9-oD5b<Nb0?iSwr3QpYd~=ks{??fnp_vQ+(Rb&!>Zy%5sE369MNz%~PgGKWs?GTu z6;%KmX~3)fi!&ejQ`D1B*XZYvX0j}>T7%`thipRQg-QDeHf&oJ(jXo7KxnA&;}z(L z)}R-?7;>lO(po;u;{;!8SC<(IlPVdjAYKfw#cnQSv9&O3Rln5o6K(9U-E%#cV!I z`q%xazi!IEEbuL=;vdGcA2MXyhM#Mui)Sko!iD@6^^>-d_&yG%e*kHKqeVqy8idxu zJS-9Pdh4Z4SD?M%%Q)+(LC-mv<zRo(iz!c|a<Ru+^G2+^M^5XrRSTgyQ%YeXcNK0+ zb8o$sRoM-WtXagvX`i3P$Kf85vqB2eBc|cHBl5(9waE2YRCpc{JVSUhlwqpgUYz>G zsLFe1ZvQoyR-ZTY{_Kro*Lv%U)(qOp@sxOvtw;=S&)wBs8Rkb#t!>cJ$$iB&m%g}k z1^WdoD((Zp{Q6-b>B$edpms9QNbK0#6KeXpp_gG6Nw+0(%LTZoKNGE$Zs5-d_@ySY z>sWj&cY)V*U#Q@-CdF{$4Ii9ju`hnL5aXD&@QfOo`c#pUwaxuS`W{^Yu3HG?OHqA3 zmd>T~8MO?(swABZ3%5`_(Nk~mbxY?&!68TYX=|k*s&c_QrFd8}FIAuUTx@Rc?oND` zxE_XiD;SeEwzyj(?oI5?0H*X8-#h<^>gEd1s2oDh&vY7p-D8J!qZMGG$1+1e)0ZBy z|453}zzAwsdibqg`2%3p`C5<t_<W~0m=30T1PPssP?54vqWl?li^+|C4~C4yN)K1Y zm}?iIAGB>SN&Dx-BJK6|>D?*=*vrx6ZuX7071P;G60Rn?C0fL%CiHrgow-8t`Gp`i zVfDLeBfFl>?#{$<wv{({EEk`kJ|SqlwXb#VS(&pgzX>?xs~gy|$5GE0$FfzVX6A)P z8N{59IdwO667sjAiwvh2dXhX<XaRq?p<!EU{Rk%?Ylzs%itanxpdo%)YM%jhbLJbX zjCnJDeKEP>#P2=Q4by{wb1za%_Z~iGnwvWj#ZgC0j<k%GykBpL$}K_1>#+!Y;%*d> zA|)KTZT!5j*lAdE<RwRXRe4<^b9$$<rl2SM9Km~7V4n5p!gYkh6IyAVutN34%|kR- zEPz8khd19=j!lj}%$0sDq3|7FE~|>AWzMt=CaIb>E}^@dCsDN2t-xgxmm1=Qk=+!M z+rm|v+X@wsxXUN2yKcvPssT&{mOEw>F7LIA%P;r}vg`>_QrY~mj*j3gZN7P}X>}{f z55hKH`m%pK$kwHePpm@88X03C+|e`d<=w4ljZ?U&xkev0w4!D3fN3jG+*nln(};@f z`x+oH6M*_{;fR0$!uK}3Mb~e|=V-Hi1KSnI)ezkAmq<tQHzE7ay#Dq`hZNnnBJiKn z-H`@6_PWB_TJ=e}i#9OV%+EK^OE!4Su^{(qWBBFxcVnVKPm;cPswYUHs9L<xArD$u z&(Fe&L5l-_eA?fo3#G2TUNOTkHmii_w^Uu5u>87AhRc5rEG<g_dKN<|FB{*qrb1=Z zO#7qHm41fxp;e$HL!(_e#;Q*W*_p}bzKyl_iA-iBUkks;R=IEAHCC15yde7Gd;=>k zUw%c~a$JP1|CH1jC7Cx0K|987y;AR^@;P_~a$LfC08p?_PwIPrkwW)a@Z@>JNz6z? zS%K$-rghQ^)%a0=R=G)-R+t?9fn0j3m!QC}MSVZ(&c7<;|GbF9(~X%sm4l9#tcrD& zk+dV@tvD+(QH&dOR&zz`8!j0mwQ^`7Z_B2yv$|Rp?n=t4a&w`wj%nUW?nfEfV==r5 z^BitDM;i-w{SeOCdHZrL-mW047z4e^@XgqPp^K?YmP$gwagbW5$QD=mZ6osA!OhF; zJ6Z!6$v?}&zf*4gEWiGi-+wQ=u#&Xa)B7}uk=8&tESEp~O}<!5ZCjbz@F6>Ws;k}# z2cmXiju2qgiIdLNi9i-pE~U!KXbKCt&!8IDOsyhhUiT!MP#%dEkB^lnbj^%UPT!8y zPSXa7-lqeP)w;LK&ma%MWil=4nyZiVc1^qvCJcxeQcpCOLL@L--P(MC6t<HXps+I( zvWEPc_n*PMe=pPi%)Ec~_pjUH_oip;RJCDC$S1K6KP4$h{C6iH<(LU62K#18X08`u zveQm4w~<y%6&rQZAJdOc{33HepM=_CW81=QvpVUd!wZHsxMc(pk!}HKOgW56kNd&% zs=&!g14^q1n9le2M?x&F_??$YehB5B!+w}r1^9@d>Izg(9P-_L9d3Z&4T#BnL-?V{ zA%ciK<PvoUvg-?++Vt~np=4_C1DdZe>m_(UP%`bSU<CLhgp)4jzvayR@?bHrmKKU} z;z@A^=J_iSF)fMzw*tg6f}qsVGAHLNneA&r?B~Zv(A>JAz#+4EgXUd6=XZEkgKq%A zc>5;E2@#MwC0mf2{I3A_UpIdRan01E{>{Y0%{VRL@8ShHKyB#48ry^;svL<og9Pm* z_yMEfvCvNhp0g3F9#x)I=a&Xb9Fvwd?I!Bfz^?Vi!%jvJ*#&@7^44Ol-#Sz|OzRAC z<Sn<s;zQ#peL}r)Wy~v4xh8enQCTaPB5rfozeWe;{ByE$aWS-Ey2g2%BszhykuBCX z7hNpO$Uq38DRvm}l(0JjwX<V&+yQ#oD=zZv(=CT!*kc{YC0aql?gWt1dEElAagxiS zmlrxmUCeeV9`gPNi6%e%9XzjS2G~Hv)j*A{g+YuIWwuy`<e4%Lzyf@LpKd^B6LFbO zvzG~+>vE2z51B15e3%-nMx&Yn&jLi`_h5wl`f6yViVO>0&LhO*9w2k>yBEm7ne)L2 zZ>Ztvw#6`0S|r9uHiUTv^4;)h2*NQS^HAKP@ZzL=Jwm0+XG0Af@z?NTS{6TMq3Lo> z`gQDY4E!tfZpMUm$>))H%Od^X4PFNM9(Z651t0wnn4a8fnWh?cI?eJCx{(5UcUM#| zGD4Jq-L<SPzaj^M>bJn|-UmqZUnT5+;U4AoMXM*}(9X>8Bj{1CLPVpf6(?N~l#Y%? zmd+;@@FZND^#O>`0?4%AGs63p!|C6!B)HIjalQQtl&(=e@CXCQ?EDXn;CDQM#wmqB zc4cEA7_RO>_-DJH5@7!a&I?8XY`Ce^f|}H&Rv}GDGN-1i8-kD7@cgr0W$%}%E^hY^ z!egs{F8IG4fun==p>IfEi>RlBxq!^^A^YkLdRL%epj153B^uGFX?V_@oBYR)?ECLl zQ2)#01usbA)RuUKz12e5Vg-CZZ~8V79#7%Dw$Bc)lS)TwTAWew-i@@#T+a{g3s?lt z^8j0Hk`{zV2F~bgc({qTViA7fj0W%Dd2t2$>XJD7?(3kQ$<N;bJJ`?T(M*2kT!Gl* zZ2^(qmaVk{9t44K;n}hOAy5Kh0w@4tMTi$6+fyWm;41$UgFBTAP7a!6fZR=h!q1z} zV!wOw$qv?8(p2*WC&A>tun=qDckkGXnTGV|fn(DC0@BmV=y%(&gao3t@7@7>xYMvY zM$<ERS>uf`IlYVMZaIM~{XTA{i0MWM&&5ZG@q)YO9TO?rq+j0fEBID(4KbHJ;F5jO z27=Pm&;7r=;5+CmZ47%5D>Oe%P}cnJ8Lmqyq6sKGSSQMNAX*(0qfKl(d|V}K^rE4P z1Q*vPU5ZkRdi*U-%joVeqy4ME{a>)2I<drc{P~W6!<HOX@k@cn{e06En9eBCJyFB( z+nI(2@svwt1}`oNRSaTU{&SCj0UuEP5UvKOqQ*&=N3)A^Wq}sYm<KDtkH4B00_ASL zou42B-2I4i>wTcCgb@gv-|q%rtT(hp3*G%o9Y|Ebej!XRHtP}vaIWoU{!}JqXP$I~ zT?&|ead6Y0%P!c777h2R_>|AlwShCR6u(tTEscWL$N-(!LjX4Ta~+5dYg@zo_x*o_ z;g=$nGR>eL2lx>W8KBzhIu%fy_5VQQ=Q@>=!QajVQ1znt7~vHKIUR-s{ah1boLXz~ z!!!UTFyEsN)O!6?rt*HV;p|Q#5UVLthav*Z*I1h!LjrXCN>dHj?afY#Tiq=gYN~mx z9&M<FCc;N&e}9l}DHrJXK+ya!eLvUX{BNCqgWQx2yiaQy0tdI#rX)(Z3-8PJ6AnL| z2xd$$G35bl#!RdKoUH%Y!KVL+am3xPK-45O$DIwKh3ti@K*eYXR>=9%YzH(7+G)$# zt~`kFuM2<0a|UGm8{Tyn|1LU)^!MKD-|+!2(b)nO43O*st7>I*NQd+y;`0?q#US`G z;zAjEB*=9I+8GwsVM=X~6qEhW+-I!I<mc7(DtRlef?4Bd2rnr@HR``RP@_5I2_zzh z3djH<J=rTz<g2fSaxh`UgJ~K>9UVg5X6mS<KiI%;`rFxuK!wK-XaD`)DOdlhzagRR z!d>(rP)3AwZAG2@DMEw;ycrImGtf0;XlbAV%bZi6DDL$y0mSsGaU0EiE!MI=*-Ejy z;~h3Y3eJIu@<@F=-;cLOv?GM_s~D7R*Y&GB?y0r3@o4HG9<H`_siaOhUxB>EIU<d0 zvy`1Pr{u3dCXHc&5hx)l0jbsM7rGuPmJD1*!WAdSxtiqT?t<*>Z1ZKohR42w>@cXh znI%1Wyoj>UnaDJ61MSIm*1-&)=EXav4keZbP|G7{cQ;O6JGB<|=JuJx^3#$^OK?FJ z5qgZf{mo9Cvfw~jYz#`()(pdb>(y2>R;fTgEa>{CE{`%_;hWUE^7~vh#tgW_A#ou? z<uBP2S%U;$C(et+pRMTKwmp>yuKQ%V9Pvq>tL7_^d2jtH4pAwY6BvJcIdf;0a}z<i zxP7$Qoel3`UkVj?*%f?zYq0$GPHNZ7teG=NpM}-(3=WFQK@6a%nch27y4R6wucvrf zm&O@;VF1#yx<~I5KS){a7oa#hy?qjQe?QXEjMW0h8lO-eG`bWRwI>qT;DR)~smXhZ zyK!>1{ao{Pa(5}C)4A=gK3Y+*f}$#ET9};FVstPwzaSZqIHhGpRV!yqSyYS5-u2-C zo$an|yz{1xYS&t8V{fHX9iLPAcGk>;{c`fKfb#I;i7U{UKMQYnTdliVWoU+SZL-7p zxhf9--t=Yk){rZ#uSu{y-(ljpRfSGuUU3&R(bOd9`NY;o(nk13Ygxg>^cy=}5ss)G zu<I=+x<HcyaKc0GPpT@G<-lTB>P+fvLYD-MGUMdfN!HzWE068N$o2OVo)DL~=EXHF zCe+uD67^=Z#wY5xa8elEy1S_xD>}N}6W!WagB_<&u1Y@{ehT4fuajC}68V_d;4U^M z@qpli4oA}JUV+@)`lUA17vWif$V2EWF1}5wP|L7hH#~>;)aZ-t9C1}tx*{LnvH_FR z4eu;RX${Rt(o1sG04Fk5merV1NCc=6Ooa=ae_S3fz6eLS1q>&|vKwlI;zEhVy{MC^ zEi$7tuMNLhny4#0R9ruG_H^RT35qabN(cN=ybXph`%rz3vmKpj%jew5Xc4$E>#>ER zwPQmcvx3rWN41_nRZ@Gbjugtp99st?cmqndL!&{s%2uqxEnzj?reTvJ9HB<5Ha#*g zLud1!>Y~Y$8XK^07A{&?S`-?FW{5mo*8SSa4(^6X3gHMHY!Js{nb8Nim4qC|QYhBR zM3PT8OVljUOdCGdM{ad?OkRh4Z7rq<Ws+{gbxVRC<{sumYmVJgG7jrO)jJlJMWj~x zX)38G?dn<#&akhqjRs}}g;`tGf9hq2@C5RQzjye25ZC22kso~RD92=IH$V9>vpkXx zu}>vdA32C6m@?>)Yc@XFebT2StttE#Zoc$E#7U>CmcaKQm?27k#tLZ(cRJheF$s;^ z`d6?_w}%6Kd(#71>m)I1cCW4>zfXnNQu_XN?Jn_0U%VR8vq}c63SSm*5ORNnJ(%oH zTr4Eb?_7!GV@D&FQ8SHZ!9|)=x!KDK^Txy?!}1QGzz`H{HN&pK%`$PWu1w<Ot~^FO z=q6KdJ7-TqC>kLviiie<R(j7(J=CHapBP7MOYw(h>oyJbTHKbd(+Wm=sf>EKHo<oH zW+~5SR7#^Ho#K2+SG0JIT*^XYTyochlIMcwt2C?S#%!pR4E%`!!j{g2$HOaMZCmB! zq&GEAx8e|?eL)<siOY1I?xn?V0_t2<*9_`x8}p<hOm<|hBw#x$6#7UZ*Ihd+u=Su? z3Dw<pUHf6QrW=meumF>sZjah4OTms_v&SqM*LdTclpmBkSy=LqU3$p*3EAnS7s9OT z>kXu(8;sGDKJgN7Ja~%KD7dNMnxgl0y=aDif%JvcWC&+GcKm6t@<RU^uE3?e&Omo3 zklKr@pxer5@@xv}vm@L>@TqA({#)OQiD^EC9mB|O^$qDrW<wA7k>D9`E-W80$dH~( z%=5WWd{=GrbFgrS<K$#+7Wiu$w_R@ptJiCcvr7wqQI~>;PB-tl+s$f>)$4oENWSEt z9j)6QwiZjw2KLj#zM_Kg#-sy$VAm}Gk7x>fzb6;UFayeN*5)}SklS)<mXHr@{V7TG z|C#zhbP(jBZ^$%eFA_hz^$O6uffM@h=zn+9&YiFdf#hDMZSk*Im$n&4W228!DKiEM z$TW;m8y8jb@Z!fjM|wSxma`Oqo_5EAy^B{x3i+>=n4T*)0_B`*Kvmv4%|T%t>pB=X z$ukZp8ib}px(X-~qqO(C2PT04mE^=<9p_(qszmDRTR$jXIlxIC?Y=;ItM!sax5d)u z=*27mL&=%WdNR0o08`;d(c}zG<GwLE5lZT^$T4kt9cRCKDC)_A^UD}20jIvk-B!o> zyM48Z6>|DlAWdnaO?UdT8msm@$^`O6YVt4xAKQg$MGNI{m9g!om1-L9>dvB|rKQ-O z+Cd#G!*boJR!2<Bz`>+yk4^c{<Rcjz`f6@hpf3k-%&d1=eAJc{YcHbhY81H0`mXKD zGe+DJr}M?Qg?^8y5I8^cutccc)taH}&c}h2&UR>qoLKmaL<+xs6LCR7_V7a+&-<c~ zCSR`>?aGYE)9v#!oQ3SQs7j~tW^O@Ll4sXC$u>+6X>RSl4E7gg^~B`uEW`S0xt-MK zOGw5bC@5+pbX^fkK`t+|K5R;lyP{*^#YEMP+|kOXd)G_i>B#Q%6lR<Nv0aWgwQ6)^ za=F^$joS1wGX-5&pcxGGpxp+~mD%{6em-Z-%0wJ-#GoZr)e}rv|IXlePj&fQ*x7iu ziVB22L@=(`2d=$|NKLPPzpAj}nrL*EG&5y?Hn`GR+wgI+UjsOy+$Bw^BA76Ch%lrJ z!l5pOl8s7pxT!Q!wrQb^^HR&`LQRTT=DGl&6qxK6N@Qy55af_>dKp|^iX1^~J1LC? zrExglO%9(AEUSMd<>u0$!o0^@uuVto#MYj3hq1!nFLQy;*^2YJHSrRB{QP{>U7u*B z)FNl+c6p#!EBAg?9c#>-E%O1uy$bFpXK@}c-jA)Aciv`YsbR88rhF06O-mm`5$e-# zzRs7=tuXCGVPW(By|IZ^Kr%s?d8`@w*hbfi@Y@2**!df^9>FrG8s&G1<^_m8DM5jg z6%KEcezFS)pUxd`lW`g6=3&L%urVWx8878}Au1=xSO$NP;<%Zd47$FDadA7tzqzE7 zP|SGbM!(Qb0121}Z(Uo2K~uxQY_n?{Ho4C^Is7O{&J6G}p>_qByoDDu%2B+&*Q+<m z#{<dXTaq6L1AzqSP{z{zC96JHIKT0W60FUkZSV2F*AK*}3YE#RgFI}lD!E*pHe)hH zSS~!w7bQuy&Tcw|8+tZGRc?<&YxskC+;R~~dtgcCbZ1hNXFQ3@ZuZJN9_xDh!CFT^ z&Se>^@8=2ySGv!^t73X@T^0*GxRj~}bSRu-DLz}FKD_zJKZ1TCZR2A^+_IbXso`p7 zwFB!Wp##*OwZ~4J<Ew$cD6@t(es^AQo?Fo~9COGMh0F5GxYf+dn##GwO!F^8fJ<SX z(jradna%2I=a$%tsCkN4i<nh><@CwyAz?9ZWcAE!a2rX?t@b|P0O}0pSPfL(VDT-j zv05>zDA|RZ`r<?_-PKHb@E&l6q;;zBWbLUY{zO{|X(^)|n@}*bhcZFx@@)U%_94v} z(<!3CFf^XwgS64jdy=Ehl%8tu=~7E_OZ+yF+RQB`WlE||sRp}_o(rOC1h_c4TBlaX zg}(XVy6}+F2)=ljH}794c&}AB|9YgkieB&9G1u3aKJE83s`m2qz>v6&cntQ9a8`|W zg-Ee>hc>oO`(-v&4)I%uNmi`V?9^k+<(gGts8Rg)u0?89ABHIJ<*yqbZ?NW5>`p+r z6ItQ~MmZ0Qd&!=2z3mBp<e)l**A%1wAoi7}4)I676-==g6tl2km)0kSU*)o9<Sd!d z!YPB_P@8kz6N*rc8|5uO)+~0gy^%eo5n|Xlo(~+afImPq<idlH5TH43KMz>hOy4ts zzp(;uh8z>EErWN<E+LZPG>C1UazMr(@hk!2@%Np=^(uwAxy$5zCgHIjAxYoPi56e_ zy=-}Euf6hT7D0|L>_VwTeSm`)tCkijUXdBkcfS~&lpeLRX5_z#A@_s{dB4wgGvM$F zga-?N;9b^qcnf+$t)5se!IMu(cV+x*rNI8iwPBca5!1S5*p!J#J6tn4JQa~HQsR8& zeceqHVu=n3Ow(&l4-6HHclfZ9Lzvh@rji9a`WIm%_AnF0C}^vYXk@mfq;kTG@(%|q zbb*DRDG|?#^Io}%79?a%Draa-_h!)?DZKNVChge5GeE~H%C>xE?QXJgk#wWg8Z&BM zzVq6hr>J=C+34?6E_6h4JQEF9oK#?sB|h)JinS?!mpsIK>^dUWXv>ANEATXsU{|Z2 zYw)OSZ%Qao<J==SHT=xl+SrakCeX*P{TaA@qG}V5#9RmRcBecWUKzEX)E^)o;b;_= z?&i=w6qgV4!_k-!w$LYTR(hw`@$lMVsS#ymRym0VVXmr;*|$LR>!-kfRCMRY?^)0P zrslUr-3UfgvCcb;L=J(7-9T!K+W`}iCJM3B>VX@NAD5pCCm3xKE9AATyliCn;599N zhAa2Un$HhNw|yQhv0cERVa@i0#T#$66)3TPUMdt;W2@=Bn{m2%7Qf#p!C&e$yf?m` zI^qDcN=R#{RFHZ9(k5Mt#YXTBS)K}Ce!p+n*8&Z}xzP0S=IG5Y@J-x+PgUs~rVIHm zs*fv^6wC%5HA<6bo;$5WIC%_}s=cZ3RK4YpyP5O@An%Ddl58#QQx!7x^xm5sqQ2eY z&Ke(6EYE0Ns#mX7q+7ga(3DX#%*m#%vw|L^HFr~nu{6t|#5>G)k#OP2snl`<VXPD> zaEIDLuI$`k6G1vU!dTo;U0ibUVw`<p9LgX!WxEdZEcdHXoqJl6Qh&k~npjRn<oil8 zpTj8(0;Z4dn#ml=VX<9SmMjvgPds04>gKMCFHW;+Y&#Ytl2+7VE_2T`!<cwpdl<z7 zweAjC*4tLZ$>?p0@}AMYzoCL<bWqS91I=|wFK<{x=uD2rccaM@TW(u7!}~r?n}y_Y zlv%$<;(jvWyfYc7Zdk6pQ7!XzwOUusC?Vr4;)CQ(mv-n;9%_Ib!$BCo*|oL-Zu_H* z*cl5aED`Pp?eRj9;Cwu;9QsM`W#{@6%ZW>euP^!Dc$?V^=jvMCY&c8MwQ%CvOlg@+ z4jXy!94jG<{(z;fFF7<$Yf{Dg`GveN+udy>@eSp|a(hA*wu!QEMRxu3<Fm~}G_TB9 zGlb!i>1JuGW8Rb^mVZ#dygwvD^FH5Oj?~Ho&bjjE_vz(mr@n;j#4cv%<-Fiy9*G}< zP0wuRp9@Ee(BHvqZSWshcbL|IDqkobmAXPn2#lTuzN%V&3y0;f?QXp+bi{I~R%Tqq zBkZa1PIP(VS>COpi9M7@sH!l1yy<?t2{~ZYVv?(vgdR=q2!-cmWL!qaxD)l*M$ORr zn?4M*-5e|3nH#oDjWyk!STOm(YeoaYUR~)mQVX)?z8}u3R4gV@MM>$V)=wi;Y_6jG zX?pTO&AIi6ZBrW#AFId2@%9;&P3<slb!^s&H=60mnX!_1o8VF2XOpted&j+LQ+cX+ zE9%%{d+i_%9HPfPtNgoYg?y*bSm@@`LmQQl2{+wJ#cHaMlh(Qsr^9v#TIp@1+j6)o zs1S!yVH|NC!M7u6a@5ZbWbCPpY?L1f)4YW8NvV~ZmxP7ux;7jRFJYl5GKRxR&Pa}9 z*p^3@-HEV}+V0-Hw(F%cxM?e%EWZ5t!VaHW_zg}{H|Y9Gc7dDAM#P3v`b{OxGsFMG z-h0P2^{x5Bs3=xY1VyR{2vVg<2NmhkrG_R|2m$GxC@4smu2ktYL~7`f-g^loK<G&C zC6L6sy=Uf}-#KUIyz|a`@66nJ?;n0}2X@xlYpuQ3^L(H0_jwRM!Q4XZH0_1}r_?Z2 zj#yyz5T1*pJO{b`)o9_JK^b(Q;mOQVKWN&Hy;gsC!(5Dp9za-Vm*2qBY%~W_+Z>_z z#00EU`slZ;?qtj%a@oPe7{tK!^8G_SPgcmuhT!<OUFu#D@47zH0LAY7>(cS@a<BF7 ziGO};YXCI4SlBsC<JqjNbc{D{4&^8j{KoZ%6SEJcG&_L1JOxEDt#J)?L$S7}#NdZA z1hfqpIBI{|bO9*uzpNkg%`(-~>lRKKU>7=Lk{JZNyTC4CUy;o8o9jntjg+T0*t6#3 zs!gqF0V%GG<R3RxZ~Pp>KZE2O8x%=aHM7vY_FiCJF7yS$I5F=5l?uj`Ky^5QQO{M# zImy%584FV=e%2_~I($dkz`i^mf2HG0Sc!|F;?eV0+iYXUjbRx}H_=l@L64ttXIuiA z-$6_5DlydWa|vm5u4SLsQ6fo;-w?MPvNgH9b1<%Vcc*=^i~oD&ZLcy*OBttrg}IGK z-={mHJ!iIGRMk{f_wts~I6aUasoq>^R9{FElU)n#-Xp?XI+KQ%crVt0y4hv+dNZbR zZrMJdPu*kzIs%lpIppWbMGu!7LMOL)OMI_+6&BEz*LN?Wz-1ThEumQU-Q#>;sltKc zlYK+bs;-jjXe#$DbE8&~*?5}8S@Ool1Lxo|7FT#3;kIO?kJo0pRja^@lm1Dnf{q0h zo}AuW*|DG=ddFjf!FSl_;L%E+XMEg3U(f^EV|@2VhcaSLM`e+9a@D*2;(&lZx%Ia3 z8k+BuWo2XCt526|M-I7Oe=1F5ar&{^E;#7-X6be_%zogZ3Mk~h?eG;ts<UBE%B(e8 zi;9|f%`8Ox7{)ICxh&JOZIdP8QChkFup7y1@+}+PELG*@l(M2?XMO8~#D+c>k)#T= zOiK-Kg<eb_$RM7jo22tY>9xSYos0BY36%UZAbQ^5Ihca!7)Y&3F4Rq{-{yLT)5OkO zu&9ACU2YY~*3fO8HiHM}26qTudv%g!9`<moewb2e)M;6iFTg*bCgRFr+|Xg4$?4J2 zC6Px|SnH}A?i=S9Vk3$IkYDj?nmyO3Et98-WH&NTfJBGJW2l!^Ph(RSd#@In-QIue zG@KXwJjCA3x}i4aTF-+b`tz4wKVm0a-aI))6?I8|_f;A6t%{MUT3y*>9_3QhF^ZV= zAj9biUq_XnxO6z1epPKhX}6+*eEW?2My2m~<ML`9YDZ6U3T+h9dTB<Jf0ePNn#k}b zw13URH56@2E7N%E3fJKQ{B>nbke~EGM~py4LhZ}XofO*Qsag9y6s@le<(dsV$&~7< z>X09Ezb@7!v`@U;Q>xy<ZDMw)oMXO+{vx@X-Xr^d2k}w6Rbx$iARiX~<Z_wf<}H8n zjkGKpj67oQ?ubz9Sh3qRKlPV3d%Zj7uZm>xIqt7<A?1TkS2`dTR!-OYEEs>Xe#rWI zRodUwpP~_bzPo!x{zR{+qoDO@*mSBrVX*f}`AxkP#?&i#={Wto=U1N~6yRB+Ol3xd z<V_}<#Lm^_4GE}pJV4I7+zz~qmnTr}k17Pbe4auGf^{_QSYK4>YKRNPr&tAKO<he} z!X$I#kXF~LBZhqpe!hAeu?E@kY8(*SEZc-(&HC@7pJ@~OIe=By{%HCD>Rq~`V(UD< zJO^2NOkPGRp|CLgiN}FA?3$04HK)Lg;hhc?^_Jmt69aIqf2@z2o6PCmzKacou$U4G z(nIztpWSt%mEf(u^xy~OT=}+6jo+59or$)FJ(`lAB*B$p7<PWQ#5#sO%)_M_Mk{e= zaxB<<PPwQVqdr`+ddhQ@Q`D9#cTK^C<zj20o@1TUXRdMAA~Ej6fjd1O0*x?wr+FVP zr+Su0645gCo}GsbXDIQ(Sc9F?kV?Kvp-o4&>1jla!vj{zJQSHDPRKdp^@HNYQ(~2< z57R}Jhgk)nHSZ6!uCyMftJ5kDiwovE`fu&vA@u^j(%gBWM-mvWpS=nDnN(Ak1mmT| zqxvg-U&OA-+&00!irji5Jyy!{f(?DM^<7}~dY`pt3n*D{oR;Z6dU7Jx5p1XJ824@= zdSXWq=bkaqpKaSNpgShPw?4R%|66MJ*U(m@Jv<u^1dbm#ME$0j|03b6cJMZ^>EM%f z_+6&v&A$l0{Ritv{<S^?{2?f1lJi#q$e4N4$n-1%h0ntin>_%qYcxChqen-c+!6!o z$gxu!>S|!=4TlBjrIBT<t0hrv-k?zWc<mfd%RBwW_ccgqF2)v3kc7m~>sArHug{Tf z9Rf#eyj$#@^w*@C(LC9?s;xVdtP4yLKCY#4ejjW{y`3u#h^Nr#<<XYWqY|fWC_bK; zv!7$@p*=le7&5#ztwbqto<8z&$9SyDF!vVh8z02uQQX`T(}RwK0mF#H^;aTy?<A-) zEH%e_*mN2l-q(_a8-B9)AF|#S{&MbW*GHB}r}Z|wynv$+1Y-jO%*`PgO_25&4W?IT zizgD?579)cGa4T5V&O0^7B5n6(hu|wMkyA9V+;?E=4V^%5W5Dl*8;LKV%al*M_C_X zM)9=uf3vCbK-AxlzY&035$bf45`)c0ZmZ1<#+EKXa)PtGhfmwMT4HQDra?MT@3l>? zO`G*<LWGJ+5)Z;*AkStc1E39QrS+H~?;O=V{Bn6TdY@c8+<V7Xc+y1bVR!eI`V*W| zbe9+h`P(aag(c0V`OC=4rBMfnNX<F(bB#c$7TSXR8GU0e$tN*6El(C$x<S&F)TNK( zIU|MndZ%M+hXIN%vdN!XEj(_{)36J?0`{1sv~|BTY+!6Uv;Fwl`%?02w}Gdjb`t{A zg++*aN)Fk&_rmBHU%m4oQm5wHIia6P!Fn%&4R&juHIaHy=e;iI@F-fXsv4w$m|3H9 z%9QT!*}j%8;%KH+-s&D7$4?(2IP{Lzv|<`64=Rxo;eLWItAjN{2h|eqyiRuc&itbv z8gGEuSt@I>kA3FC9h+~HAaK4dsmQO$5M7mZ5thZ)x;50p>>F;masiuUzMfEy`GFWO z>k_(FX(*-~d||vwyGh<Xolm$<!tv)JBC&tjK{S!B{Rsbi0xe5d#ocludXI@NxVsPe zrkUzRJD4JPQ?n<gTW+24EC%Q@=k$+-yLZ5Br1K-PRV|r0Ez|qR+@I1rt)pQrz<S~S zpX(*<Jaz0<Z)XKKb*gx^v}=+Q8wPebK9H9<)sw<c5BI?$6X8$+V*16L)U<L(R!8>O z)^KtWcwe|TZ2=+msE<!6g6*@{UUkb89eMR<2h`VTmujc&c!bOA?^aJ`d{;2t%|}+@ z>r^g(`&5Kh?7v1IM4BdJnD?o<nxm>XR#(L|LWaP8xW=Yj8*6KahT?dT0&~L$b%^@% z^4mFmh2>=Kq|!4K>uRbZ${|9fk}egApR$&GNz}yfea{}&y$M(bNjwZ)TT-qoU*z?k zFX|~~jmmlaF?b?iYh~LkGCls0Zd3av2Vym+rhXicK;j~_Tcw0mP{zpKI!Fe_53UjM zA@PR&4~6s9x@JDhWrtuNAMm$?RY|ja9{QeuywlJsHy<T9Z%%c&dHG{2S9_&<9Tsx^ zr4TRZ^~5_6wt9ZtYg*ZwhOT0;pO$Nl*|5imLM1l-2mw_|RL8XY4yzV<xgTz?u9*)h zzt#WzSmLVk9>r5&uX_5=0gnHDfK%+G$<!*!*3Cwu$%)auGnmxUjQC-6JgGhFwFl2w z&f?&};|B`zO>foI{JaWZX$U{8vQA5$=dn->nIAd4x4GaF^9jrA=QJ@s6F9$+`^Ip? zd20F>i7i&h@%oyx$9ZQJ8{y6&wWa3bg>s>lUGh?w0=fLY{3)qL*<0P9IL4V&Rh=k} z`d|%_U1Q}$tDdj%pCBCt1C4f-RG*w<r<1&+KDk90WP&&4=Ur}1Gp_v5UL)DwRtHMq z)D%pHsZ47vgZ%{}@lT}uptN0?VNqyxV-MkCyk?2MfnVf^PHhmD=5iTR;_B*&j>716 z_DEacwDNd>y3h*{7xD~iqWUWH-Ab%(O(y!N@btsoO{iEM;%T%>-Ll-hSs!Ppc<J3R z;h&DYybEIvls+k5{dC*2W|pqAPWq#oZ*?BlCTXpo)*rj0wAMuUob36p7cZ7kSOBtP z9`o%@6aNfBLNQ0m?bi1|A_apu&9^Iw&giwou3YIPgmV}>WRt`(4ne=L!xXQc>lvsw z6g{Fg%8pPFvy#Ut9d^7t8;4L`QB#^0RKv7-_oeo=^)==>$4=d}{;cRBEpB<du5)+; zNQkWyZ#BxtUgJii&6R+bYT(SFy3wy{&~T$-H~3QwN2am$4y){C(%?w`6QZyd#(0c- zW6OSXJ2w*j^On$4JUlwEqk6vlXXe}{`*gCVXI<-KObe-Z8@hwyR{rN5{&1ggcVX(N zkV=?f-`SlUr^{c%s&!{e*PPaY0*RVVXG+Ib6T%V77){7?y7dqB<|;2)C6c9_eTc$r zM-7E*dQQeOc6TWUuJo!IEeoQ!BGW(GXg-tNt1PiK@(k9i9i1D^Lw?;h(<tpr5qO_Q zwhR@|lH8j%QgV`vU>)Z7a2MlN*Rm7mAbWTW=v_4K|E+<6D{GA1@xX`F$`HI2@P%_V zt5)gs4L52zGApFMW&W=b4E#eC+P|}n^VhH^JHO+cs`v;mh<E%S_%V$tA^zh2Q3p~R z$#dzQz#f1L{KsKJ4ds-8XNOdA+9d4k>_A-fx3jEx{$InKe}Dc*dXv$#Yua@n<zqw# z!HJmJK%YlAN{9b+21H}ix$YI3a{fWSpZ^{lb&-BDRLP^F7`gqT##1;#{F%#}3!h_e zjkDit(xrF7Qk@&oG_irqU-4%*Ssgd@K-(V_X(WpGobM#Qk>Sbpl<}mT*dTj}%GEe$ z%7Gdi+l#Of?CO*582DXX``h00f7JPZ^t(SUhN9)}zY4?_1+C;H_&OgvS*;sXWSOb! z>@?bs$`P+m@6e^K#I{LXYq<JcSXJaj%+U-t9&yn|=S}it{DhyAA>+_m+mNwFS&;oE z>7IYw+P;|Ey3B1))LcKzTs>ZV?VkMEQ1ypP@(iEEE;R_e`>z_(y(i@FO8G+VLV?k# zr5=EJTsD%~$FUQ3WZG*(xe{*$WQ5p`M{KS+D%{qM7!v`fAo0v^e~}C<rXK_44uSmr z*Mf;qAXk4Q*$E1e{6j5fp)1(=UnISlGuhjCY&4KExA`swo~ZPT#Fqjfyxy#auI#Cw z%|avGs5A*t?*W!LH0&1%z<h1}MIy5345({9wg8!=VxZUyztj1D;AO($V~HnB3&wI( zfBANq3VxYB9Q{A+4AaC36Ylr~xlgfqU47qQf$xtG2b5r(1KRGA*?vzH9@SJhk|rbi z5&7^f|F_%!ceMZc4fx-=NWij+gDk@ijIUC&d6VDj(X0rU%Gs)LH)|!OFk9DSanX_x z?`WsE3V(nrs^``H&j#Nge>yi_9@?&eo+uKh9Ty4ZMm2STE4tX*o9L<A;j=qlM<s>8 zNe6!n(7go#O8B!7fK1*Ayt4<VkA%L)8&a)dQcXI(K%2h;wDNDj+jqPO1qyfM+5;*# zei;IeX~862j`x)nAUEv6rM(7pl-2{pK)?yYM*n7-|M4zwzkkvk;s^e&HJQ1WlYp|) z9D24V)7~KcPr^f@&HqEge^O>b1$+PMen55k1bRS|PQ*v;!qxvtnu+|n{8!xuWS7Y@ zr`Od1wWz`gDsSjd;!M-teTqNa4Ja@B(g~N?0U;<09z62%PwGs*Wv}4Bx?5t_H27%d z@s3qc0~@{y?zU`A{j|xwvkMiqwXzF$g3Fu$jC9uE=K%3Aiog-`C#`7C|NDl9{%UxI zR}cOq1x?(SZ24nHferC*=kia2(Eqb$$Rs#>bv=9aPLj8xCCD@3@uFGPB|$xo+!*<| zor6`0CVj3nKl0Va2QBcRunpVnE=xTp?6Oej>;g?Y)p1EssC7rWNDC&+G<2MieWc`p zD)+tR+6wb$28-btt~4Eeds{#;?tbv#o6P^Rr|y4*H6YfB*Ku+lNoKkZzWY|ri3gc} z8(mnZz#>0EAzmfIMgDXZctt)014@+)K|rsD95=;BD+EFp$y|WSSjH*<U&p#6;GGyy z@I=u~{q(l*z!|~n7fBZtv{@EVuzW3nV%PbIiX{P|Br5=?gc(qtyhO=tA0`4XgeIVA zA_tT$&#h~IkwA-)xCgaYIW7Q7=f7<Z&nlirxRSI&AeI3Eq0pZk-^igvN(OD>hdvkL zFA@Xjo*dK8=e6{Mhv4+%Q^1&r;rf>O-=|M{{5!k9Z7$Eds)KMmTVbCIczN5$YonWC zxGwxo3S+p08(iVP(ewTvvo6l(#^<*bzd15Y{qA&esovvOFpXJBMvy|u4NwX6NBW++ zBrt7eML=i}5Ptu=)g}L4Rmy+ZebkFsYO5G2cOczv*2eU?j$PqL5?m=Kg~aCcipl|l z%tpJjm%m8%(duVEhkhrKS*b`r9?Cxo{z@oA#_j?v8b2;M-?2acCTmj=a2;%AwzCu} zC^qBq=~4I#tA<?5@QQ(7BvRRc7ZJf^n@;oroCQBxsc%qw_#z%U%cMMHD(sgF#ci?^ z4&MBw!OaV2R#5hZUnC@_x}mtDzkD|uuy)dhp;-B-H%u5VoD9<m*>HtkpXr~!T6#nV ze-ukR74msXoHXq^0SKeg@&EF}WTDB9x{2x?#B*DXHvoT_VSw<_jgP>SRC^VdV-qib zNACjbEdQF95c1F8{$H)*2Qcb=y}yjfU&fkoP^L<6&tGPTBIgY}sqvo&<<CQX^!{I- zMtD|n&36QVQmEiRzOr&bkVTyKfD^{q0Wx*u?B63FbCRkql7@>t^m`9JnoxH#TztDs zGZvU#DC}qNI`??smh_9wjOig0&=CfX!zB}mw9*(izylP7Vp~i^PJ1YDN5DyNLY75{ z;9J2{Xl2$THW8-#`yvFqkYCk0(H{s6AcLX~6PWfl34r@};f&UF;Dj+p&dU+wfLvL2 zJUe-F20`KReZWz4gK3>xW(9KwWQ8O<5<;f$NGXTzVXFW+a4+_FXXwvekQvv94j_(! zg+Z}l3zeDmj;CHiLVjzSzaqEivi{rwXz_R8GskUUsWVLs6M<TIoLoKrf9}7+pL+nD zWq=7Sjl}}XRi-ot4{%r4Ug;$e{_+5S?gX){h3JPw5=o#IDmXxIS+>KDj~%!Ho!~?P z6(4zAsh4csoan*yF5RELUDR<Vx$vE8`=4(f`M0+-{BQr$p}+0YXg-|h4`ce5fgxB0 z<IkW_JPENqai2(5p!qLOtHPgW_1ynoC-uMM2*RHZGGq^K8cdW^i?J@Ise0e@cch0X zsLGG)O)a&}GSXgE(;FQI$ge2Loxk5E{+DEN`TqpU!dXvBfqF^ne5Z#%l7gfLhx*w0 z4t#JiavgZ_tnETJyl{DE<v4l(NYzh&{6|mx-}-;*gVaR4CkTpSBR>Bf7T-WFG-HT0 ze0$V6g6J+pde0%SiE?RA|DAiV|BHkQNPGoQzV&cd53c^z<&I|<VF()H|ME~EY5}Rf z$6v53%e{AbE@III&yk(psm%p$M(#005!#75do*^+m2XBIP_~Q&yU0{ARabe-aSz=! zS|8g?vJ6)){MyyEG$)%pY==*woYxAoex}m(4<e${6U4YGL!Q)Lr>95G^22h~s;obx z{hnVKuA9+c5vElK*`I<P5)E+^%lcz9HLpxP@O1P!)V1SiH)QZ;iB*+Hb+w+3*&@m0 zeM&)0XdNNUhOK^=5HTAgdOeIaHjtTR?A)xbMvvXVi?NM#lfv~p{Q0Hu4<737wXP#I z-9yHbPiPHq@QT4073!lBC_hu}_RG+Q`pEzlXtY3{tdZcm*OrC8?u&J>eEVrzUzHhw zOU!MksdK*=9_U_<m%t!hQnSeJbx@<yDJELwvZG&zdx6W}p1VO@_SW%vPfDa8fsJFq zDvu)Qdf6=;njC%iJM71LI14WFda({8jkn^f_OXubgQbJ9MnxV=EAY8B7b-miw~Pr^ zkDJ`m+H#DG)!=t3-x;p1gy#9!<``lo<p(=sjoRocF#R_vMd<wmHMO~l)V7?JXBrbQ zM6$0M?al5>>Za>R{O$D2S}ASS@}O?p`{i##72;i}n&ljigFNwEGV&Fn%LXs2hK(+d zFw1_>B<|n-QJnX_;A(f6-8KpjKjxEFoPW*fkSDiFw6>xiD+w__g~j0XgXZtJe^RMF zPiD;^_slA96@|2|4IS%!%$eD|580=aQgPn|L9KL`muefZ{vi^Zlc%_Q1n*S1&4~vB zATO~bXI8rP(D^9c_j!9$`Rkhx?~fj@3C_S}^Hv9CbLE^I_Emj?1g>1&APslI!mQ{o zDrmjJs3f4*ArObeaYBQNXFkWHY#`RB+V32SZ5)9xe;>_>6kw!_rnhmL^PJCyJRCGd zKS1|zHYD|SMuj5^Sa&#)<%Rps)2`cNm6%Rbqdf3B0l<{CQ!;B4hKfzLUpie@+`2ce z7z0`VAw~0w($F?4Z$_OuE6bp_(B+Zzo9O_Gyt!9<-K7nS6^G+pDhQkL)?#~x;`F(h z>9a47F?~(~ZP)GhMC2~SzPw*_^BL*eXC>W>pefI&mmi+*mIk^X#J|T>ey@j$_YK1; z&hk=u?L!n*gb+M}B$w1g4~x<aZ1?2tj_pn{FVbzWgI^Z>W^C@3`H5H6;ph*khxJ#h z^qw4xtlL?I_3h2Q&z&Gyh-n?c$dAm{)>fNYRR*2oiz&0*5~EY0$XnMatL^7hDv~j- zL_sPJ_Z}_S=8mPJRxnT**)$)61w`cB!h=UHr43Hw8BOg@ZLZ=y%|yl#+RNdZcl`1} z?lXQqBb(XpPM(-S%6tjw>z8{zKgI?rFpjERV6vOdsdxp)zGyPH>daoKhn-9;ukOmS z?iFh?d(q5t&?l`T%ML0>6BQmSI$ZZUQ~%<BBzWv?UV7kp0bI3H^E%`*8%<!l_bpBC z>vLL<W7W13)uL2j_4pypHhGP>m`T&6sc%1r>R1YNwF4+LY`@(e)RR9-@@t46TWTxs z@ABO}w;Ub41?_^-ae-824C+HUuIQET%Ny;~TR|DcU<FIgaWT$HGN7WFY02=VNM)XU z1c8fab63u_O58Xl35rP?=)0}_{JF!E%cHla79Iu<yPiE9<;}UYJaZ#cbZj?fCfnOO z!z#Y!)mHK0dS!CsbfQY*lAn9JU_>e^_qY<V<?>2Tt(GTZX*`KJVlLD($>0(`<+@XP zdjjNPTU$A-8e!oaUGaQYso}~6NyZy88-?Qz>$|8IXI_Vh&wk#i!{x*hU`iXPhm~xz z80__NkgM$=7s>1^6jlSTUmX^4z%1U!bgSsuFM6d}+Dj#i_1S2j6Mq|ri`8^@M<ynw zn?}EFlh@KL*E{${B1nH;jqD-7v-Yw6&9iQ`B-6@{YEQm<y7-I4Q_l*HX3*87vN#^! ze?Sj)`mwT~btCZTz(y45W!TfOeR?1E=}3p=Zg~S1g6v(GL3_>{SO&d_Ag-6)r2A>d zxpAntFbcDWWJ)lfnZ{(h>ySca4S<D+P|AM>c4QSa;ClSI6V!`A-9K0bp}ME6?3`6y zk$T`dXj5stq+OgN09#%F*}Vo~dfdcY&fkqL|HyFCC*Q3Z`n`#aRL?XIJz<L;i^%-3 z>1xhvGvgGK$Kv?Xt?&q~T2l$`f;A5BtIa-2c|rY*MQngQRHiI<J_ek$bv9|h$AvXX zyo<`rDI8Jpnj!idtGP=UEC(25g;zLP_)yFZC<g&t4eI#Fy6cpVpSZ2mT$%=`d-NW1 z-8gikI=00wq6y@o)D3V!5SPCaF~cNc4vQl}Lu;X5;bL(4oo)O(h|IK1FACO@zAXSK zTGk@3FP!in67J;zF!^M<_`mfe{*U}SpeFPknMEl8JTpO_3F^U6F~0hMD|whm0Hlf= zeVS5HGD5#d+@UP*fW!ax@;{8x{%c{*##jJAi@N4`x`^!5>x=(`ol%kNWAJ1j=bwE5 z6#Mka_*?A21UjFNqfjNT0hW)+`@g!PxCO1{+vV#@%hkkttP<sgK_iY>)q2pEA>(%} zH%5{Qv^u~}LJ(FB<)28e_$wFIzzep@PD$}n<9UO9a%}}0os$SLN9`m`SnG%aw+o$$ zd+P1iae*;hOr6O+29kMu6Pvo|x9Z=7=4_ltXyoeKH3T%6r(~|8BkT^0SEo&;rRO=d zb2JV8t}KscC$x{F%nLE4R<B1Fm*MG@odc{v{n)+)8D6DJ&Mh>D#n1<i5?y=gef>`$ z66FVZbP~~`?=Zb=EYb$Db$f+D?6(=rv2qA2tCKe`^M|~JrwONJD@VO`8+6_32mBw` z_g&X<+R)0Jy+hKyk-M;(Q+$1F$BGV1RhrH;J*D^-CjPm+pLC^##_*QwdWIwCmi1Zj zySav7`jMmRyt`5mq8&Ejeb+N31vpNEXqAgf(@z{IuS#-L4X`mv@i|R;FKlDXV;|0s zNWf&qrgpldab}N?V7?n<#5|F@P(Vs_EjOG3<=euR!bP6{l!uCIwVHz<h|087z*lV= zrKS~UTmMCJ-Lz)BZ&ZDG(l9yL7$!aN<&5CBb}d57V5uV3oC_qM|7At=u<z9^MRS2q zQ|);df6Ow$BsLIqlae7Gg<D+T7b#409+~sso^J3BrhS!FCd4a@NI-j<R|Z^g3KV?k z?}!QwR2!Z7@iOg|i=4p67?Gb&Be<~-L$qtlGuQN-Ek7x4a=(19o~M>}5RxTfD==lB zy!l8bj`>>GEMuw<N;Z<e@6}pt`S3J0(e!Kl&YEQECa}-!u`#m5JMiR!^z}B@Ityzq zTq>Bbi_ypREOl@TURR<Dygw$!;+g&Efq>{*@nbn923Tw9Jr+d#f=O|{B2&cc!{V2@ zsnaN&0r6^kT6<^&4A4vmGx@k9oQrtsA9I!rMql^$&#gG<1A`|)MlBbL1xR9*#)a9F zx<ZHN-EL6Vmpzhr_JTcK*)f_gbrGk&yh8URb@Egz&!j;-ZOm<NDAKh+O)@HP)_!XJ z!L`lj%v2(}BPz%nodfv~vZPs3rmsZQOZY}HXEmXF2wacRM#b|N9693lSU5bGn&S+n z@7>{tJUOO|cc+hDyJ)xjrE0pQa&yJUU*hKX14<O)5Jzje^H~uPCuj4+$^{>kJY8gz zF)S2Tx|p+sOsI26kzic!_slLIE`d8XcCx%#YzOsfo!`Yqay&UN!S(f_AnQ)GMw({R zK*6SLL0F1c@`y=KPSRNgxsjwPCsutxy|qH}8DF~XTS$f=sALeo6m+=>zpvz2@`XET ztoU2P6X(r38K8gy0E&&JKpaRJy%2G-0N(b50h!8aV605l0TB$kr&Ssoz4nM(m-kcz zs&-^tJ9%R;!|_B4IoI=jU7ke}YWW^!ZPtFCd`xsrhLd@GF=)#`3q2*r>E%db^vHC# z@D@m2A};6(tJPZmhiIJkJqG$LF0R0UY_mWE0{CW(2L?!va%QjhJrko#M3&^N6LjFP z*N8JojgBj9FU%qVf_fHcb!1YAzlSRC?erLkrjx)q>d%zwu#r{M-Qj$0>f4fNKe+-K zI^SfX&sL}=)RfKA(%|0Z8-bAxT!vwHFRiQlHR>8m=zkKYH0hT{M&Xh!w0e+Sksdf# zcjdcLJg$@|oNVQOq*pr48Eh%m;*p!I5>1u{S-J^8lB&UuE4sWw$wd%py2-o8&Nkun zaH*38VakHg{LyJFZ(|yCM_D6-!VNStLL@0)D^s@;E{!<f^VWvdjr8bL=l%SZUnCVD zS7Pr;tH*S@1R3^5&e+CPXmrlryrRQSdQc$U;#Gs%DBpUPz-Z7-@Oz|iD|A@XF;5MJ zSR;>TNHX2|MKa7Q3!|Bjxxzi0FqtjDsz%Nt-Cn%vL9{=9-xsc_cFF7ub@;*v1HVC! zH9U{|r<E<*lw1A*E2B&UP)V0;GLNvbWl6xE4t&O^n<@{BhRccE<<a^@!j9?5n^nnD zR#vhlKn;^?b4#j@-FYlnUmgv8Zs$L1^r6svWi?Kn6Qo$olfmCz78BNU)7$3zQQ^3I z>6EPV*50E~scuSvAL-8G6yD|&)8D(%{qob3x6;y(%5F}gNl~c~9{bA5ibIfZ+f^a6 z8bBb&bjZyM<6Lu|!D;d*GB3Q2zkgJ~HvTf*Is$TE#goaqB|w(RcNFjulyap`Gxo+x z5w=~7S&?an1`r3@3j$4#KDoUOeuD>#=uuPKKz)qsw~tL1wLV^vQ6-HrKIVBW_p)&| z^f8&(k0Y4riQ-nGX4390>ZPb2uKr8nOfW0pP!bSqBP|IVi@$RIJ^1a&7gEZv!TQY% z*mybd>QL{dN)Kona=9l}Tzgn|u%fnN)e7S9?hzufPj5R7+Foq5KHNvz#ZYlms^hj2 zjhJ`e8Ba&jkQXKHlRy`+gF30kJYx2XY44nN|K5~$nDWwmY`O~1gL}hgAy<bn2HX~N zCQ8+N@6qEkN^`~m)@1Hj<$xQu3m<3G&~%^f^@he!)T(C`^4L0m4oRBP`E=m?;St_e zw|%o+cijD=ho!taBT^X&Gsh@zZ*A|P9J0@@Udue|F-7lPhFjcxUgUvz`|Mry0d=ZY zo1^4h_~Wkonh6ux3+thX;?>n$)5|RGZWDAosHASYN<;r)5Rdc`cEx#qwb?g%nwS9K zls2d=PY>eLC+S=1%iw<SP`$)2lKXV($LjmS8*f+6dXX)sSp)qtflQ`DNv@i5eqZ<h z&Sv;q8{$9X+C*vBf+#y~dI%hg<-*?6UhHjAI0^$O3Qp`DyFIbLuYPQ^Ckg;5rP5}< z+5MawwQ>jIFT{&Kn|IsrckmwKzSxA@$Ta)taBjNE;8<%#2>!_Zm?Zhpf`S5(A=6z2 z!Pi+ccDe|}olY1-iobnpHI0e44P5pWSJ6&t1Z*Z`UdiFU65}<gT|sh<xk!aY8P1<s zh#~vzoyzi`?&Xa+kedm5{m+=aI$kcW2mxI5>wJ<_aK{rLMk_--TJkK&rF1S(;@vgF zX$y(TQ+N86XyZEDQ?|if-uOFF*O?~2*GC(XJ$(M-c9&E+W;nYHQ8rQ{d0R;L@jZum ztLV-ZkF8F}{4RW-wAMnv)-RGGOzCo23+ru3LHXV8U@%L;MfD7_9BGim7sz~d!pxhw zWND+w4_pf+6tW<bCp9YR)L7E0Pzp}@h<YUMjV#lbvlL=HYAwpK*wdx?NWOjMA~Lb( z`n%<G4KC$tk3cS>b8$JMc{`gcu&Boc8=LIN`q1G?$*v`{{F)2wYo2iV(3a<8zR&VK zO{8e)UX#9Lu9KHGbL(I|rbpeIqrlNsz)w#MxgWi*v7wqCaUa<g<l|xgUY{_$Bv~_W zUQ$CwwkDcCAEdOb_&Q=SzJKh6mI~8TGQ)!ci0eG@@hG3`Ny%bm?WM<ykpuy;HgS%M zpKg3t?T*ko6@2-(=~`>h5%Deghx9~OoT`5gye)45Jh8tnMW=-vjZAm6;W7^23JDsn zUau4FSkPJ{GLE@E47Ym{aXEJD$!s_DredErbt)=(Vc@3B<Q$?bXk2k?`MInarN?m( z^rQJnG^C@2ARzTnuV#d$7BZsR8phuD5fe$qevlQf@7(-MI}TomoZUpMy^YfY&G}rr ze82!QX{-RX*i=4v-+$MI-tzR22?hbJ(yA5l1s#4m_z7ERNS&*$q;GG%v`CJ1CC0_Q zeElJA*tV!KO|O!;-_HS;2TRfEF|v+47@7qXwUqTDw{BO*vHH$*Fi25Us^r?%%8kcb z)><d#*}aGDd(aJ({Zxu{U-<?E(hMWD#;+i(*iMeCFewi4bH-p$6*%nLotT?W^|jyF z2OU_16Wzd4@x2Ksej#mnj4_S#4Ob##;wJ4o#HjE+h-<^6q*b2jANEByZ|JRRWMCGa zfx6<$b#D1zTFtHLv<FE@1{z7ShfCvDM_$FnZxc)hdox2H(a-(f227PEp&cI)1ZUGl zE`VvN)<cx!L9WLD&V`}2RB^Hw9;xNcky$A<__qKsTxM4t9}FbBbc23|KmDsKvQNnA zyC;c@1KJ!!3Ba>vp{)Zyk(sQunCx)j%$ys)LapcFH+#4u+&Yq=@bq~dhtyNiKHtV` z_YQ59(8p)TNNXR@6qza|Q;X7J2I_6LnpdI2Dy55A`ynnErj<}gXfN~FgT#I?5Oi|E zk>8s1Y|`>^E0F=TwAGsomprMqpQxVU+p&a=ePgFSElo8EQ$X2}r?R@_HrlLz2jek= z4L&TGyke+=8+-l6k=Rnj$3I%f=+(KcvD!}LQCC$}Ry^K}HM96C4!uRx>D+>xAs8n6 zUHZ5r%D1h}XR`Mdj^On<-CL>0Lu+Y;nAK`O1qC{oo+FoSNrxh2s{(u7*ei6W=jd~{ ztl80`#j0V<9Y#*QuTe2Ox9n7W>vjYYgY(rv2@3tI_sUW1V%Y)`7q4$TKOjBGx!(V{ zEZjJer*Z?E2qLVKepl0TPADNrU<NwZOW3L-xEFkE>)UE?(9OKeV`mVMc;(&w60JH~ zeEj$V$294pK+V7o<2OCdJ;`9+jaI1Va!~XX$yP7f%ar-JePNF7C*DO4b)Zbs@o=Xm z=WgD0bv}th>+PU1zB}7$adT`svFS(p))kI?%;`#XV;0R_oOBvwxj?|SEZQib{84ud zMQN4`1QUx8YxnGvqwgBY+NkjshW2dLopl!kY8MRn7ZEA2R>us*0%hPNWin2<<+*!5 z9LPD}Cmap5cmyd~M=qMYPWGBU)<cd^_uZratWu?yF`!IqKy$Od17JND6eZYtR>Z1< zz|(A}{;VArtt&T2${i1%)NAgW8rGZ**oAkDE{@lq-^IxLNqs8QNA+Eu(13<{;MR@6 zf?^lHq+EBl)m6~pENN2LptzKIFCfBp%*p?-%H3OH+o3@@;a08F$D_S1w}~|42WMv- zjjH?9d&y*u3{r)|6{Z+1mYa_L%~Tur`Tbo2N2IvoR8_NvZv<qJ_AQ58FpK05*J0?Z zb649~5nHY`0bh2mF52{S1#Q3@>%J6U&*@FBA~uMeRY~Zx#-6Dwhk|`RxY@clw7yS? z2o~#@dsWO<*O;yqUt;4PwRG$GQ}=t47a~cHN-TSr{g&nVfW@j<@)Hw32^yuR?OIL* zD_CN%X9YZoD*hjfZ^Vw7OxI(!N4KukdmqKn)ZRsK&ZV<{rnv6&8EV*fjoX_yA5qs6 z_T_k6OcY2+q`dqx(tQcDv^t=yn;_r6Vo_J3ZpfbW2s=GP@M+_n(ZhX@yx5LDTAiE% z{Jr6zN}*vSUimt`Z%YrR!u@nPpRIQg<mtv7Kg9Yu_^MO2gJvKuX{o+rvfRg>xaFDU zgGUPbB0bX5m0kMa{`!@E9$O=2BM|PyFA5jH#zaO{zthxr`*Q6Cw6a{SD3a1jzp{cK zD-0a~pz^)`d6`_Xs868aNA2o&G){vH4b~x+dc0+iEk*<T9>=IDbrtiA9vUXH!C=Sx zj)-(^Wl=pfU(_mQ1Rpu#){3INj#>1432q3pyo<qNVXu5bO6-MCmg7?`zL1hT-(8WC z62H3qqKxw+`Hu^q&;7I&X{2#*OomH=4XhK@6=2(N&pp6Fe;~@`hMtxL;=m+Z!&hQJ zpBBL(3s17WO1fDb#5vFDBl=uqJ``ITu)1nBThz(4y-y#m*%kUm!s<&-*6W!~K6mvJ zBrm3Bb_A9rpKbKYP*oV|p6<w7TerpO$$lxvElb@|=QKIVX!zM2OiR)7&6JR*l_(4A z)rm8!j-#qiX)c=yQ$k^BG@EOF;Lz($%0bNPnrS!qzTn7wtUSr2I60Ob;w-4r64udb zrV$%DFKJU!l4l4KMbIX3l{lA7@uw7D3As(@4+lisK&a!c?B4H^5N?Nb$b=aCo2FA& zK)hLVjx{g~VRX2?uJ8q5YWHJBW>(<i$-RlJ89lpPjzCVwm1Emc>0DeKyu5KH9aT{I z4G37t06-Vq0v`d+>0K>+^Om)wRH`uHsi(}NHJPgmvH}6rpU46O#}j*f0~^ZfFQml_ z2{KuzJyrp`5rGigEP2Uov{F~YFOu#K4b|S-J9+dJ%>2{e(XeBSE$LKGm>{!WWzz7q z5ZDVEok*Qq7EG-a-gBgpb>BBc{5BYohNO`<zqw!a&X=S`r$M@oOnTtf=xOQGuLI}$ zP&-=<YGt?Fc$0Hdxyzc%5NY`nEXzc`7GXzD)M>ZEGF^<t{pWL*Tor!9;IH4u?w5bm z*`PF_MsVT6YoyA^E)`78sJeNvja0F@cX72#$HR}}MYY2W8+hvsdBu%w8&0DS#kwI< zcWRHvq})(D;wLt-XF4iPtlA1@`0l2!?^s9|kcNwlwvN2xO3PClKkoWF9p=|}Oo4nH zq}05G(EGdkE5>X?PmZw;;~Q=oEu5-ImimNy2~tXIA_DNqNVfR)4hiVTr}Kp!E|MPT z>yNmK)$Qv(Gtw<>NuZclRNhH;%$oUjykAvXmVUKu4<}j4aaR{n&7-MAm~NY3d?P() zxr?!LOBThhwGe@MDUPyU#K7_=4A_F5DOkC0*9IRX?~PL-fT<MM^n=YnB@~A8))ooo z>NO?4@=`jPt9z9QW1+_GX~%*}ZmvA-G{PwuhU`>6a3lxj{n7|w1mEY?=PeQpUA$mR z1R_**)h>i((>a1>PYU#sG%`!*XJ+V`;L7uV4blA1{QR#2zlXJZ>S0WKi~zz4Hzj;6 zWG`J=PTv|>d<%fc=Dt6E%V6|W@=n@Scqnf?gm5<R&0MlEt;ldtVwZB70`heTZ5WHk z<Zj<_HQh<*q8UxVsFqbl5~rTAzRl3l4D7tOzW>Vkq;L%sL2E&Je^oK$<~>~V0$t6~ zroND-yD6fe60q*E`y%tZR#SSl4TAxc=xhl6x0TCuXZ2^t*@<l)We-E|aA;PfA9A0Q zAa2jB5YlEU1Lf|TA06@lMvWeF*$#{zINHiOYO%RkR5sVjvR$Rb?T0H0Y)fQmIYJv$ zy=y26uBz?We!v{)gtJ&RB2XCzSEWwDi>B5cB>jB2wJQw$A{q``{f$u33L*EP832_f zzJE1w&(=G&;Xo12O3t8DODScSLuLG7{Z+D7>=*-S8c$sUR{sO$$EEzaB^DWGrs);j z2wj_AE=J+wgO6%)m^ph&{Y9qabi3xvu<u8QfEx<*)Q!F4t_rNH;Mr@NyXkl1T`mo4 z`75zC;0lulLLZJ5Gmp%dSCy8A;G1sL&fYm>-xUU)(<0$Pajfc={Tq`9HG{+<TG<<Y zu<nmZGj83|;{L)lIVU-XGSokt=OFg3X9^EQvv4dg17no7jf|-tcBtRdx}!JbidX9~ z*$q!~FMVxcV{vtAfYo{W2U2J#=)Ow|eI#Me&#nOx>0k!3wH&dxMpi|22W<{+>$HnC zHAyBdy~+9-F<)5YVl+}Vo;J3<m@tlBQ<<2&xAHQMr_1U<_^TXMxKXn1Yrs7IpDCa9 zhTTnf=O92%=|tSs-%2%LUHubsuNyZ2emDc=8%+b0@#?O>{nkJJ;~Kzg1D5nEavHF% z2mk7-X`b&`j>v`+9PO5gB*=8O7u;7|Or<oCtgs03t3gZ0GjOInmJVv<<$0Ja9kJmt zw-BZex|}A%_L>#*sTA=(u&xmtUpb_uqG(gwpz>OR`lIq4p2GubpEKtHBBc@^P~~y4 zLV~QP|E+|Mr{lqT@-<OD{DIGN_b)$~o5VU0&rIb$!Ghs@UU@cLToo`+4CtuNnD3ZT zj@GS!=eC~mDHwHFYV7J3xi(LS>D<HzoSQ9|_J(Kz!NMDtW~7WTGs<NdVZEO&zOJX= z?|5mE!|HulF=ARD1h%Q>D${?*O+~_g>R+*pD(<fYyGt&I@Zj^frOmunX3BD|lhVeI z9M>Mz85SLtPx>D6I=3kaTUV^k^f;!DFP}qDc=K##?+1#$@XPVAnK*#a!N^6K)4P$O z2AjA9o*btGc9^D8R{7|#kNL0y)%(xYO=eQy=frizFH^=Z5-HsHrwZ|x2V6P~XS1%7 z-(EoopEXdYO&=Z-)Cyw?`WQi&k^RlQZ@Y5?UqHz}+i<G$K(3kvkC&tFXnJR~;ega$ z(@~J64u6ctg>e70F_$y2sz^_fz`#*klw%ADrjDlHk2Bfsb3?*cI){Cp6<fB2@Vf)l zlN@H|7+oKXUSYlcOdTd^edn=Oo0RbWkh=!}*+(X}G>dMHIcE7JTk-Ca%6Py{jokAT z=6-%L3?9`IbI7Eiw-#_#>=#TQPbZXu30Z{$`x`YMvY~up?P5jceXs3>e3GlaC{Y&* zaFWP65rwlk%$B_5xcEfCE{11YC_F!9(Wi)5hwU!+hN`XCQ?`7N+{&pKk{+@5Ssl*> z`=M7+6@xs?4Yi266h$p;uj%KA8X_-+qq=typ~%YbwUeXYioD@$f9`z>lc}*FlzqBk zg3EH47o<Ms`Ci_twmc1ulDd4w^y$p{7K4(xWr`bUbFUJ4TYN;Rs^$zGXIuL``u#m? zhqqUlnkgDg%7-A7C~cL=I8}$IQ`AujVl7T6>9kRUwedSunm=NVS{8ftzr<Y-Sc$-X zWI`Va%-Dr-DStNskR20wvb+U34zt-zESEP{4`Pl#mEc;%Jx(d5bXGnBl7rXRfl&t! z5>?Z-Fp5Dk?1EgIT#UmcO>B`~`Mg4}KsMDC4JvUV%_<)_HDV(Pat2|>0TZ@t)Klo9 z;w+j@d)NHMQK5B}dz%}+D<ZtboA)o62c}SHYl_Y;CPPf7r-{^HkK>Yb#|N3aSF#gL zurnUW?r|pepy-Eb)54@aU$XW|O$_eQ9R8Fs>>c5TR=_WQkCX4sE?^P6Z$n+;RwO%r zEet#3CGczs4!nCZ&84nq>7{Eoja)uW-HuZGMUrD-{F+*SkFBS7q}<2YV0&UXwpHAD z*?STs*AO=J=608(#S{Fsf+rS^Q|kjrlB7W}o#~0f_`Q;0DwTFq$#%63OINDWlbC6~ ztrQk7M#C^C#8z2=40&!@4l)EUL7kxAkGLco-ToMm?hg4<)AUSE)(IE+aU=I22JxlT zw96wpC)mA-Wa6z=J&hVff~z8ARHCmUI&dV))X~n{)3wLTkzUVk$B0G9g_I>vL&2`v zSI%A-R72JK-AKM@`Tn`V_b8^2T)7gETp^|#rRUN{``!98dEVevxJ9A~Y9tw{=4f2w z+h~6Dr4BNJ0C_t?WujBvvOCC=_#oSq^Ze`yXBs8rM+1fd&E0evECXH)wGYK3da-i! zNl6kv^;*g%QfFM$m&rxj$xdFOrL!QmHZG)aZpzMQ2J;&F=g`$z*M*8?EmIuErr{;Y zScG;)cZF?_`*vR5^yxMB;8gbNPew&T?m#B>sB6ShsPqjvLU>_<Jg75Mgu_zW?1$WD zzgM4ex)DNrI(1QAH-!0?GQG2c*y&+zNu@2IgCIjEJvkGQTata>Ye9cgMy9{kO68m% z?Fp<7qu_UD4AtY;ZUgBI0|6P>X>>`{kx$sQFrT=zdwI8lJU_MA)TU(?Pqmb*j0bZ2 zjL*qyy1(!IDWUnK()x8-)IiPGZ?y&{N_q*JX(?w1g~zm&#R;cLB#TpOW%pU~Ng2WN zI~5CTmnzlao-!h+zL<u3w6i)uuFc_7`(W`bQpM}#-Cb2lO<V*mGbZxH;lmj20ONy^ zdMHvCIiv7_^U-q^1Y;_v{O-l~wqLDlu5e!x4tz6tubs2lJ0W2;w|?_2YuU4Aj+R@2 zQN23(W^<lxZCF3!iWrp7X36i&wl3yuHmnDGd;S0_KG*ISF}Jfcb^Tp`Vy3i23VB?Y zuS6+Z1fS+Mb5w5(N$~rP={`!ZQ<sg)UbJLlfUD74l6C>;)k-fokmQ%Oz{7{G)(jL5 zxe@MmP>gO;liqKLQ5l)pH{8Sy*3FwA=+^xr;WHKico&!EX&!`L3SCt0{~G-~`unNR z*qJdkYh{2>(P-7#vj@~1`Uuo;;o1|YNx!c;6ZN0DW4NGKq>7$1$g0(pl>?cN29&tF zFiY=b!&exmFFI-FDCxw3S(B8zs^SkC5sfIH?PCUEb`e!^$SKAI37=K5$wcQgW+x68 z4qUqQymYU_8pztp>2<K~GcBVSu@y5tBT#Tw_VUBR2#_83&0!HJ8TN8Ige7uU=he3^ zjryx0hbrc-_Ks~|2`fEY;{G}_g=P!t36F#kASAQ|aRN-&`;6|nPtJ7>$9pE*>S-S| zep(W8wzhO<=)5Ge9yXsPPh9;fDZ0GonYJdRICq;n$6r?)i^(wvG(}MO+*Xmi)hCu9 zmU-drfVs@ourq6{A91zB$^i0`zv3IE8b#i-Sd9X!Ro=S8!+i|ccHc^DKG{#&B+aBj z89Nci>eK~xXIH4XgS!%LX(Q#WDIIi_dARt+d@NcIAhH<L<@rBC^THWZA?`8f4T65Y z6%1}-8c#UZk6f3ps66+f`$w-6>dlW8Bz0)ym7x{1t^>+H;cSC&D`%H8k8iT^^mn#q zT!N#kN9{OoYfKx}TlwNmDt7wFZi>S~rA)8m)r*yjf-i<}L7Moh;#&;Qj*4Q|?`W;x z6?vfY<;AB=F^jcqa_5FN$&(<ol%d!VtLvU`K@OUFYRAK3rzE81f>@0bJY?OYlHlXz zdwNe^|4SQdt^2y;I=rXgD>R1(mhItwtm5J@Q2zG$2a((x*5mE4{5BVd&uv~FPWujy zq9j=(yT#snrJ*rJb|C*oLu6lSwTB1=6uLgLclBR&b{hQY0gEZ|1p4Z&4O3GT{AZsy zkRhlS_jj=8-@>5(8Q1?^c(3`Hp(nAc=l|e1Uel%ZJq?G^OUSoP^{!ma8chn&#}}jt zbhpuzEQygZG#$XU$)~(@X}|2f_WS%*U_EupZ)9^*d-Zd(S*6z|w}!E@yw%08O;R^4 zmO9283_WRd^2qh9x3G{6Cv|ELH9bQv&{oZRhVWs1Rqs0A{4ZRV`>{Zppu9C*l&;4$ zhzGOB3p)9|CIvGthk4SfA>n*;nin-1S%a23b-TY0hZ`eCnUwcUd2*f)6+tUQ$CidP zDmM-qYaIb^XqB@ad<O>y!~EQ%a48Ujw05wMiqF?4IF|rzvNS2Xtva%JZgQS)pCrAo z4!B75xBP8(gj`XfRBFayy7!MPrR`QOu!tT5DIYoZM?Xy0XrWACJcu>0q{`BVOav4l zQLw~i*2Y>~j2O>ccLXnXJSgmORpDH`P{BbaWoK}J;SlC3`iM|agpsb3OFy4FI#|eS zFg?;y@l{@(++KmF^`^sR%ZV_eji8kkZ-#5t4rHGOV7roYUb?7Xutv^RFti-Hu3MVQ zE#13OcInNCy<^i^rM3wosC|5f&eOs*mKUW@T4(c_!t9ayIqD#{EUrmp_mhzo__GeG zX-DgEK+NHYqX{7`d$E`8Fw_yTaq0O=uATVL3NW0j1)X>*NwKscBW~lbbT(7HsY}VF zqLM12enu+DHmW?Vyq>_;Kw+;HWRiDTRSjht2I1>u3v-IgTqq~-IyZnVh_{NSt8ID4 zpVsxttEW)p=(vGyK!&K<^m92$1Mi0~B&}H{Lqi?R_p(fRCmY?21g-Q6wj;+pxfveq z`xuYL`JVwLctlfPEI8U!CgYL4^Bg5HY*iy06-`Gp4u(6+3eg^nSsxE1N7K!Mn%6a~ z0!CYI7ZxL4l$AV{c>ca?x!l0MxM69fG0~`J2lrrx-~C{J9Q(Deg%ojJmu5!(0xQP= zW2JSEQp4!2H1zqOc^AVj-aA;X{lXH^W11l0<M~|0c9}2}oJRHy@WfjlC$5ZAE=x(J zl=0NgU0A8|Y!}=%R6nN{rkvFXlXz26g(x2}Y3-mEPh8Z+?Cx<r{OZHDZUC#ptslqc zO6`wOCDyvlq;(@S;-&=h?gyTPPK~K$Jw)<U7G0leFZ#%!&Cs=q6;?2)`N*^B+R3`F zi;`F(?lV>&Q48<H**51Mhm|>udv7|_+F@tK-PY7JFghMfKrqKYf&V8A^Xy{KJK+o9 z8@<EoOY>G!h5W1QZMJmRIQV#%?nIZ-F;!ePvgC64aj>eb&J#DEE-*e&5;BARyb`Vn z0iEgsNBZZ?+WcaOuzp2PA|iA;Cq72*6GV^X_6YF;z^Keu$dju7DHrY{cmHPCTUiTH z<}xv1b?!u#ba8~b6d%t2!Rgwv=90(y5-idr?z|$2Wm-UOT_+4{YAlXbK`_%Oc1Vc$ zHgwXH12kI9hsrxoP`fRbdpVuqIR0q5^Wrz1Vx(;AOY`{rd|<G271J%`;kN`~X;Tj< z%Hlka_?Az|{k_m0%DZl#H}8{3`DYgDSvWta-4#9%z%(~=X+4|lVJLL=>#)nCHJkw1 zIuU}d1$qUtbk;~lH=kMv>j+HbZt~o=+wRJ)K)7>Q&?&F$CZs>?w+mg%sjL{`u6%T7 z{9f-}PL_Q=QBpp}dh7CfS;y-hcZQp;wz4A(?%gy43Nl{B`Q|rubs0M}Lj2#1C-4fh z#u&=%sUPwKTjGBIw?7^#e<V?+{E-Uq)AOJ3xy6<LswdV3nOEZnn|C+T(IO9~jQgv0 z{s(*S8P-(0=6$26*svfV9hF{{-ULKMnt&jL5_*vmAoNg#C@Lbo_oDO`kP<>idanTj z3B5yT(p%!Y?!D)p*?Z43^Stkuch5Y}e8_PmIkK{@b**b%?fjp=e>o48pqK*dO@7~B z>Z1p#vU2D&Kz~t9ec0Wd9TdlwFiS$h8l~}!TN*B3_KW=sEX(fhc4f61BCNnWfaw#% z-7TJhI%ey_<9H*zb5&v3-D4FC2#uCfO${SI1Jk@<6~lR3D2aDeMEBMHs{<^Q6#zu% z?{o%u_rH^NYHL^w^vO=8cg_O4HmxUsob&&CQp?{ah3r}RasaAPChD1kE_eijD{V}z zj%boE4H$c+t*w~cd;Ctpp~%yinS8RwSXsI?V8-j33rk?v(vR&bE>h`ho2td06%e}H zAKe|8)_punka#6)1(%`=(@Y$sgCTb}!Nw2KCH!^Hv-nQFX;p~CR?@uO@RPBP!u0$H zx@`05SL_ZOB!;$y#c$T|Etf;#dCwYmx1U;H(Ojj~+d4AwCOH5?x&M}8|943#|GONO z|HW8MjVU+ikbLn>KiXo^`cV-M0vn54yQIb6+5g7nqVB4iwI*2pE-1B{b+oQ`NrmD# z%4)(LoS#wkb;4s(+>1oBiw1xwMBwAwH@98|87o{}e@$g7tzfOGb5MY3lsY58`v@Dx z&1sW`r@u)86q0++f{#F{AFhgK6uhVOxd1{O;LmK#1H{xKZ$7XjV*=vny%{miBAH_1 zT~h~DQ*@5p{M?;`9}ODb_r3@sx;i>P3b<VFmF?g{C;@HvF}dW%M`Ye?_yj9j=PELC zi(2va3Le+0Khd4EW%M|oYI9xYwE3X@`aSnYOi;1=jet^!sOez*^aY0eL+JtpW%gGD z&$Nb#3^3+(+J%Z#Xgc<2Rij%ot{9btNS67NYh0<#1A~hMx@%vX(MC|qZ9qhW9)3k! ziUB~iZQR0(+nhO4K3>UPY~?BG2DOAzufw&+VkN1M>@6xRXh?zV2+q9E`Ym%F_&sjz z1-_y0wul-1XAgrEICD7}N$q7OvQT4Chq}!&vU{Q{6r84DOxnTopds_ZLN>7+?1t)h zwdr35NgRd^VqKn=CKC60`iJ}*K54ZS&pfll4#h^IVk|Gq9grg54yl>rbKS*`zRs<Q zIBMIpAZA)%e1kE<!y!U~A3Ji9f=4>ljbAO2d$5Qq`w*^yIc=M)Upgs<3{&X|qjYwL z-P}t!KG3$tOC_UM_AZ(uPX<av;Ob+E?2XkmDTEBY>+Lw#JrA1p%VtA5s<Z~tq1hP| zZbT&I&i;xIq6Z^czc~_7+fCWhYyO0i>tH_J6)|Jfw$!~=5dpR%(F;o~TIV+Au5D~M zm@(?u;9A>4+~@$+Nyg(^-y6anzPwGdwx4T=*Nu1bq7b}#^yR`G{@ay2GC?N#h_}^K zX{Xyxhr(Ow+=FOe?^EUTWw*Vj<#!!EMmVPswQ*{Wr~Q-iltG&6Z(OcS?DzfA@M_K{ zC%1?hr}aE8yM@$YnJ#1H;ELoZ>pf-`R#dT_8N#?|sGCu~<9<}G=@~LzL8TQ0Rwn!= z5lp3ndIH@x59zbN?L+=M_uV8#zV}*w*~Hhhjkwl@=1<e3KqQx>beyCc495SZ6A1vT zLITJ|>a?EFTppy5l}rk{H0%=#FSm!UbmNGG$H$t4WD6kj0Gc^kgEu2IpH*9o7yj*6 z;Tt&Slif-nA6S)0Wfw#mCmqx{Q7OB(1Z=kZ#h-H$`+)qubROv0e&ZY{@0-Lw`|!QS z0MHJA-e|Ts477;v{w2NPd=f-&PM)Bd_TF39{ckU=D*bc%p5$+maf~mZpV0mGnxS+< z=Wnk^@z5ds`~(c2$p(5sq{4+BrZ$tmsSZl`+i_rLBNjzCHQ6cD{x5bo=sgL^6_QN_ zN^;gpK(hDY^FOlP<=L_;ij7r0Q^P@)mqtdkVzgtEs?ZSg#&N*UW@Y&H*`aK6_z!*H z3bUAxHsGK2GBPLL5Ot2IHaR9s4sXbw?0+N@!gn$^sNs8SWP~&3IS}Vxe?eA}?(!f1 zOSqK=(1SA#`vNKm({iBkD9LUE^>|&T31AG!M8IcCiB#r6(y_8jCQd%eM?3`o0iy2% zpaEK(bDmvJKR=ZNT3*MoP7vpzHsI9h+w?!>`JejvFW7z(@3K6LEGP&I$|QM{R}jL& zsP!Wy>kqc34#oeUnNt7JxlGmOZ3D7>t*quYbzh%R7T!dI>&w2m(kXvfepTeBe?P?{ zN#h?VMV>xH`81$&_)!EuRe%^>CUFI(R)0ql;{10wBBRTc7XSg}-|>wy{{ctjM){gd z_TS-+!vFs4RD+t&fDOQZpc~2lJtRq2PT_wF^+!!HInTCY&VjA_Yqzlg1gVRVjWAq) zaw0U5TH1xOtF&eo>vjzZcQumzhx+`#jTZIahn^G=TF`;8E%afmJN!*jA9p{%w{~bD zGSkT;&Y1T0gGgO``VRE`{T6(KCm+6MKl*<PLWyccb|=zqX73n)DFPFQ&tAvp-Dx-C zvFs-$sMy9{eDmze*G3kVj!aEspf|ckjQ|wK;Q$!5<oJ(U`!^qTQ;DT>jd3PlPEz6H z2aSn-vWwm#|M>6Be|IisJQMwi)iFE)ZZSr*0!k3MI-;8bbY=>L@Bu(`JHtbyg#X=# zB2Va2{2bAY5Dq?xUmz;}Z%d{5XQ93vN<)`T!cUk&6}$${Sq)I<L|MXa<DBB(zCY~< zAnN-uFEjt2ash7Bz@|XNO0et(4>K{+03&B?d#eNv<!k*hN$K<TQu!0jc+-N!r|#Gw z*$Z0#Q1Sm$*Z=h!3#cOi3BgajZgX`S=7>|j%IG3pXh*ww{lG#+0OpszY^@70JZ?E4 zWQ#ih7O`%n*T2t;^0F`QTan$iJnJ|P723Q9{|oEP<jHXy7jA+GaJFnM2LPhe?PHFD zA!D7xuZ@4<rDgv4Lsf!R`1u(?JiC2H3-k<gfDh?`0Z(_skl0^oWxg5EzcSE(xa%M5 z;NK+7#}^18z^VjDAN2P|P%W9*B>xLNP3F&o;6;C|dEw!IAerC;$M7a;P|$8kh1$OY z*Z%bofO!S1pBg*<08h!ToXgIp6)Je?V%h(Msr}6{cwT_=40I|0$|`-2$h@PWlTlar z=Vd7V+aU*WvU}UV{sPDP&n_I`LH$8${tIo(`W#5^J-;_<Q^I}rV&-4aa(~v;pA|%Q zC`5#}5U*j6#fZ;fvWHY7jr)~$t2|xb`YPUv>qp+G_{76p*Q*~suPhs?{AWey9RFFI z#~c6IX|joB9RLhkc8Bc$>dIZO(2f1qCik!R;?KGv{cqhyLHpH9lE?(X>ML%Yyzn~i zxmM?t7~eD^eCJx+>jmn+KBU=z1?YZm$bYmb`Dc7jwK$3wSsdN11D;?0#?9@)BS9!? zm+%~L+K!cOaaxUgjWy_V&rcw4Ceztf^<Zo|Dv%6|6;1c9JlTWg*-Tu4k#2%(K8-zD zlT^exFunUJx*1U{Zip5>n>g?_00$0C4AZ+5MCQS8X~Aj4gKeE=vuw7PTwF3>gCp$L zk;i`N61qfRVZ<8&L!!!%NQsWhGzn^n2a&9fL7j54pUELk2~(E}t2Sw$3j(wROiz6I z&{SLdocA~S^n-*h{E7B+AKU<ynj^mlD}B(r_YqIXn9j#sy633lg+{X~jC9U2#zfV` ztTJFHQVd0v=;rRSCRY0?(ubFZlci#H-&Q7Y`_8|f^J|D5HCk4?e#O~Msm>?|zkNW| zag?h4IFBo|;GwxhdpGU<oW?<czK)D#N?KjM?UXce-dNJZLBST@JhSXf0Uo$ssCqLH zaiq#cLg4c26aUh`%evdx_+#@NpAj%uQYScUqGWl)^IN%xNxW?DSX(dgWyWk%p4x?A zCPU}^PsLKMDrvgvkW{saY_t)yaZ>wNdGOK_#^jHG-?bIfw2ho8BW~j8onRLRIKonN zG##AG_C8V2eE9{~nMtl%#m$>sHHg>~^lGzu5FOa=eddNJ{Ms;(r?Aul=Vby>i?e_} z70Vzsd$_dA)v|3)@ca#*>Kv4egp+H}Z{6i{WPROrsVG;R`_sp;3O+<jtCbR)O^5DP zC7}3ehhW+3IFZZ>Ro4FcD;`T#g@*`d!3lX{thHdvCxQ1n;vH|oWF`C4!0Ilqmtkc- zu)W3=NIb9Qd`c0*1GPzTt8N`BfjBcf*Y(#4*?;@|!nvL2!^ne}PfyL|#f`?hS75oh zNca9SVS@@+k;(6-61MN}Mt?javunBb{_t0{L!s@l*eRWEn-6=GZsSRc`NWirDEQR` zeE<sw3uf(A*tHy&$QN4+1qD$MMAX*&m7NVul`e+Jc1FdQG@5-fn!HZ<w?CPYKxmq* zuVNvWC~fqZCwEvwZJ)R;nsgr0P%D!Usci5VSwZrNO7Yyd7SpwC$a5b=q!2*w72Lt~ zIVlCuva;kUa4^S0JtKOtjuDPxUhQHtRi-OTc#YvG&kAM{tD5mWQ$?FhKVRkjg%gnb z6Q?*nbdW7;I#Hz&q%A-ZdReT{p`<NkHAwz(42uQ3Gm2ql?Tte2l(H9N{^w!kt0a<l z-)p?tG>TcjZ`A0i?OU<|&iJ{AVhJBEGpiaM-EZ-}{;*m{*N^o<n%s7H%W$!mC6@}? zVg1lRUl_UZ%DF75PRqdEPj|52h*jR#*}-%7VVGd|&`Ujm^BSKqFMlgeIu0i5$?o*z zHN26(7qE8`x$Xx|EZ;yZZS{-(LSr+AKEY1iWA>hqsYjyj5hgADs?H0R;?OCC6vosg zXtb({0&JJff{kXc$LRiiI{tePUv^LT5MLeQ(ZRD%k;gj0<lHN-Yauomi@YA%3m5$A zoWUMilLNU%GhQgEw^g#W6`IS|VF(PPY!^asBaQ#Fyx>=d3+@Bc4=RPW6>gTrRCBOz zV9%00&i#u;otJ}D)@1AT7C~*)?aRs`UC#GN@|PGGPSZyJNb0}$FG>B(scr&ZD=kTl z*t!9+KDFt$Fn1FZJ9NYhf1@>H9(-e)*TRM{J;~I#GMppf#?4s|3braPi>k$BBk9{! z_|8w)GBh;m<`)1c3ps<JIEM{)*5aua4ZD6_+}GCX_U2sJlF`#6a@%i4^)Ue=XRh3W z%yWl@T0Mez5bT<xBg6Pd_OT14X-Wfch$1|^xf#o_;Zu{BSaiwrG*N>FBN6=gLbgBP ziz}@4QsddW;$Bt|t+j7N`>t397sr0_N3b$j(cjGVX#}m(HMfLF_1k{)$=^E!*TkZ; z%8PuOV=6V51r{332KI`WF8f+cKp-YLV~ucpY3`Uw=?dP*eVYJJ4B*QZqIn_cm092* z!Tg!|ZMru{H2V>)&bUj<h&RURK9QSIy8DMmg%pag-7#HWp<4Y|JyUpB=}47ETi`<- zyZZC+lKtZNSUGL&$tfJf@hiuSuf2Kcu(PY?5ZiGrL&cA-8yj(Ap^Y``ayhzkCF*SG zO{&>?3YI4nQxCLSs%8m1=_O)R3YrCT_uX^nJznRn%O@6Ih91ik<rRrls6DC=U?RZ8 zh!_F@uYBii4sq~?HwQ00XO6s18AmBKO)}CS{o}~z^{Nq{PFQ%A+e57WO)@RqeO?JJ z-yCaFpwtfG_Th|!;5}2Um~=p=_k#S3);j32ze_&_#DjyMZIwB+xQ<?^Vfj0rjY&Qn z?N2;}#Kud#_^>M!GNyRQHi<%s9(FBXWhj(*sE9YHX$*YK=dK#)(92!$?A9IXRjCm= zwW?Y)f6jv`Ls}PyX_p{x#*WBzBGSh_e-00FGexR{`Hk+YJ%)n~_wxIZl77P)FXOgO zkJg}deUj3rGklS#M;`RCuv?17u0hU&2X}>ECtED5WXHm8&U){47$1x{0vn6MIa4&6 z_AQ(fubn)vlnN(|?djC+<+z*~7MW|M*$%uq)z*0Yoi>lBa>=Ry+jTf&a?E%=j6X9t z8X46v?Eu^5G+ets_V%GL%^uk9&QE_|L2{L8=20rf(9CzK&rCIDg$CxpFuQw-Wk6yH zwd&{;CA8MsIF}<$aYZA*-n09pt|^>_WF;(Ehmic`jf&d(JPNzkP?%l&$gf(b4e9Xs zSY%~o*%jukb`ZiN(t4T2;ysM?<Ery;nwzwe0pS}K6_0{x)-qM$4X9l*j<rA$TR6`m z?KGtmR|3S&npD$4<*Gx7v9SVr@(E4H6t`^4LAEM?%ZMSy!&b^&w|+Vp4DK1d<yrH? zqipJY6DlhUu<F#VfCkmSk<tp)IzGGj<Qkt&=HLOB!{=s$(vZ-W$SCP&cmvIL$8#3$ zmU1^3ISc=W*|R=-r7mYLXr4in;}EZ*p>&fbGuaaN?ft?4ljjA&qduh*+dfkphxn5W ztKh;bW8u2LNiH~|h{Z0TB!z>0W2=hGXuoFIg^wXeBCH0~nd0Vg3)hzfjb7?8+!6Fb zP*+dQ1s}fD5j2keBprtCK<W>l<3ib|#VRWszUuv2wvS>+0~(!5dmPzqu9tL`3%=40 zWopE?(XFE)h7|_5odeZfiLc+Irr!oway?=YOdEAUD~vogy(f3Yg5$dC<*EIyOmNsV zpMhm%OczZD8_IMcGVK6m2BFYf!(7dGB6W;X&TVe$Tm>Eh@uDZkoC9|yU9i&WskKss z8E1syi%b<EaO300IwuKtZFSK-!p^vI<=dxioq#6?b8~PX_hFM}u^G0cIie}RSG+iK z#%eoI@5!a+>k;1Px!IZlmf<bbY7Z}4G~Co3w-%|}p?s9$xV<g4=D_BF!1Z>E7lh_o zImlAENDH;ZYxqJBac{xa{o4ta?{aBLBl~%%-R@4R1P>X0IKfykR;2I5geq>{rB~Kn zgg$vU!!P>bU}dNH`2x8wC*OO^r>Cx(VJ&aIE5GEP-jAI^f<V5)8zAb60<~(HV8>)4 zTj@8ux3|R&QfpxrPE+AIuCFI-b!+^~!Ox7eXG<U4JhjA_*g_eL5%k<FFNWqEm#QXr zod<6MmERe3Wu#7mF}08b`!J;<GVZ$4O8SVOPTg*|CdA`l__PvHjshS0*jO>xF9Hb? zn?Bnm@sYZ(cFvD<_vGBd?|gPSZdaBjTNscTy?+Q%%$+=`EIABZ);k{%@F;d}TA4vW zY=caHQAYIm@n?y)iADdEVCIx4fZQ-Rws?(-w~2M6ymJd)tGXUzp|Z}8Pdm*m8*+f0 zdYz}E@>UvmkJb+aaj)vYzsyZ#ZKdzApru{IV%Zvk;ck|9<s#`R&5fQ-t)=W8>&h{1 zaHtqrCHR(ck~c`j50IS_MKshal-(2(?>c7hsUI(;6ewVpSy%uAvd{5DD=K`oxqQU_ zxYdK{Q#T&Gy9C&7%;V%>y@JO!jX4dk8HZgnet5NKHe_$m@9Ey_REckBD4mb)-dv=1 zC!<G>a}(`KiQU>$psCC~Ca-s9%b{HHhj$jaecpU3l8@`FP$_@#;ED8DWxju=I=O<w zKyfM+Mx%CRx1S~{I?7?YC%16q`<2i6hPbcuNDEq8!ylKzP1Wt_eFYCUR2RYJ34yw_ zB>tYOknCzywB{(UJH2XPTb5l``jgv_$s&V7rrMqwKTIOK!0<rpmY9>AZ0L)!^=lI- z2k#OuPLz8N286FxrPV}Gtj(y_>i;HD`dKp!wa2n0UA&olts-F3S3I9%@POWv&X#W{ zP;lIx&F>o>T3_YZM~O#J@sVK^?ZAy5_rt;?Ck4LxMO5VwnDJ9^0{i?M+|qWsw`NaX zpBVi{5(ZMZzIig?6*|AJkhNKB;#vtv^_QJHLs^3Yvs1%J7?lf;B$+ZHj_5vUAZGi{ z&&|{Kc8r4JOCyM3{SZz=tEMLAaJzNmyHM-Gjzz^=tK<25sJd^~%M!9HB7Oc%&+8@B zb%8XD*fZHaFS>bW!E6y4Km>$qT<v#oQ&T`R4D$UZaa}s8?I{*L7%;deKaw_X$X7_y zy~Pj`i4Q}<!3m*4iqB3oujtDi8cfEHL5`91HV#+;YK5Ljs%uRrD&afD1zvtkt}*=k zOZX|H`g=q0mI@1ABbzpr9x#zn3{PNpiqVd)ikjCYA?a5l{kEK0LS87vGHd`yLAY*m zPsakue?E^-x0#8bxU<2-jf;-~b(j&b4>S1LLH@Y(z$B5%@0vGLDzH1X*3kxFivQOJ z>Hm!Hy+pkGyhPrW+=KU&ocZia_a<+iH@*fGE=w9tQL0~almMsIF@aAvC$3B91$a3u zQpmHkFJy8x<*jd}XHVM6m<47i()4t(IA|K6Lsg<x?z@~TC4XY^vI(5gtdFMOT6RFx zS#`B|6YK=s#jDPqCCQ1pE;~w<A0Wtf2<sXScb{xkPc229Fx*@bF_z|^e^KYo6|8ZP zC~KS^iC9vk@=*p9*HMj2`7w5{D?{PxGl>jIpBKM<<<D_aGN<jLWh56iF}e|uV%W3t zq$%2KQgN)LZ4NhK{*wG+*CVKs!7HiTuesu|j8mg|RiFUzqZoEYTt&D+iCKt)EzdUQ z6n`9yog4Np!4qk|aU?u5rKtLp+9vic>vTSw?(-~a_wvZJx<I*CyEKnMM@tB{+`zb| zpuq8j!K$hM`l2g3>B|Pw%j7)b@-&od#B2UlY`>)QfC2JTYx~pwHM^R9UC8NRym9cm zLZile0{mMnA7+&o_0qQ=SbRKwgMM8XcKacJj$Uc#hkgMAuDRrD%9yGO(@YKuz&bXl z#QOWxG_GiUu#KKE&&s!U0QtPd;+`@`0UCWCbU5yj>_BPYm2~+-wkt(S!M&fdDsj@! zcR8OXY~|?H*x!0qNPWt-+19$VsT9JDr+e94vY_i;NLe;4Jh#-!E`_Qw-Cp~cwl7Z} zsJ)~=#aSY=20q=OKq#gO?>hj`+Lo!mT&FloJ=j5u&`!7OBD%ROj~=eztx(#kkSMvi zTJ~}G?K7&EPB7;te0cNs${oUHU!BXxn|`Lfwk&fgKG#`3wJGqwAT0Sxk(S7zddI@B zG2~M%G+)!6oBa&u_0!1BRdF#f>X1^87c4>?rATz0j%c;+bpKMyHo8TtVF89EJv}mr z!r^doj`QP6nwG3j`h`;5^Rm_JRjb6@#*(H1o&~pS_6;tBenN<Cac<Rh_9W$tD~^X8 zw0L#@!}ST;2UT$*(7L;USBm?-P02B630E#lFuy&B=KeA{8VZ&><Iki*Mth|}uYYcG z@`+yM(I}W7UDuz|_rjOTOn<E4FWO%F9)m%tN%mqW5?`AcR(CQRC~s}?8$R9ZVtM?$ zS6wF7<w(A^3?)=9&uWJ=Y(1-FmVc8Q@OY-@@;7}3$6f5JCrnvdr<MF_EwM-NZ$9>t zD!K|+MxaJV$jP?KjsCsVhFD72J$Z)64xS99C+kJe%(n5me8S*DWNeE9gL7pIYYEbI zmFw5){as@<o4c1v`FC$PwN#R;d=E~|e!E?{a9F|O?*3inMo;qV<{Mwl$&dU6XunNQ z33mxp0aKx73D;Pr_7d`o+x>}jU^gY_22k|XYpX(d?d>8CbnadCD@v0^xeveOWlQQM zIn_mLnqZd2`$Lwj-i}9^7<IE!7<M;n-SF=q4@*4%d=2i!!1UbcRjCC%X^MIB+hD$p zyH(v4L0R7Z5J+p1PJOaGTa1r|xrO_s6fsTA2=j13D)#}GdY#qI>H%ydu|LM{Wi*(8 zrSW?=tr)r77@dj}dsltX_H^1XktJeMwL##M!wR?bW$5~;bavd=yFt8Dg;_37SeF93 zXx7%W>04m<yU@u*Dp-R2($7;+tdn?w>!Pj$>wZIOeEyTx!4$8wr21ZbaBXrKdF!r< zqS}T!C#tp@$?LEZ#W&?4KwB8+%{Dsqqvj383$WcuILd3E3a&S7u+T~lvAAiI@uY)< zJMTa^^K)xA(+s#0Q9refniMk*iZ2_+&Xkpg6TbV@GjF;=<&a>nPA32FLAItb%9LSY zl7cC8n2(BaXzkLoXF(9JY!X4n&dFWwxDq;r!YM_%PYMz53!YrI28G(lW3?TGH&>8b z+T3qqsvn_D@{Q-$eR9d2g`<AV-ZyvF)KqZkR#)GJy<KB1@<*LN1V)uiAR8Tg67&-R zm=VD{0h=)lHPO7*W#FjWFK@a1H%aZl;1(d+B~YH+`CCCE@Se0A7=r)}+cuq*jLE?O z@mG%SQrT3xW94-oH&1U?A0MAkxkt4r7a#3*{gfdhNo^90ln9x`r-96_+XqKLMv42= zD-WT}Z5|CZYv29bw0z-Y(=&<D3O1sNs8<zrdn3LX&y)2``LEG($c);rf_A}^^*I?F zQBz`7ckg6fhz{uEoGnzf8a_iLHTt^Ix4r>4@}+<Os$k!dfeWSw*QP#u9=&*Bi9)Vl zig~QWHi@mi0p;ufd!%F@?q>S^;RgWufu63&jl-m5B&i&(*Ay1wN9|wyipfZx#;l&& zxKe_!;Ln3d(#y@tj?tWxW)G7iJ0%v@g5sEOPiQ#swHj2}WH3u5yO5msvBi%?t57>) zrua)7+;PrzI^t73^_70c29B=#ptgqKYe-bw?lBnIMd<djDwEd8wNnzNCGW!;ssB*0 zC6>K%#G^^4znem8eQHmNF&HCZ4A@3@%ob8S-H-&sltwDJ=^pOL&54Il6m>hglwHOu zHO+>N-VZ3+<j<~#1ZWMlsuVsH|4jnf**`+ae3x~&&Q;jOu{5&+ut@UGB(y8PjyGo@ z5&NF30g!y?Cy>$^g$Zx;!$V`_mFyh)+w3nAtx<_EMeY#mbt#ZwGbltl)4;n#6$cnn z+0yMV@xM4Y0T>OtoSFt>no85mBbK_)g5J0!>}p7dd7c;i+#%E`+eO<wq+6qGZ_wo6 zKpCe>AXq*Wirl|k)3D}<T|fWonV^8=Pb<mr4WZ-7MhhqFp>@KxwD(LwYSa2qUW@H; zlU!r&5J~CA3DElbx!lcSt$Ryx{1?_0&D53-V$Ao)2%tC*jPY-h(biJ8EeyoXd&)%q zQP6mJ%O2cj609cJMpfe#r4|xeAIQ9t&59M4SM$Mxhn#659_5APvz{*g8p~Z54;Je| zo))e(B(DOsYs9ndNbnHkL@dmW?D=&*9$cpvJE6ZNX-!{mM{h(y>o(F*-9Y^-o>ML) zg}Fcd(C^WCUHvJLC~U;%?)DfljNCq!$&sc)F@3y>4Dbma`)a*(^?lig@zMdRaA9+< zRMNuFtYpStCP6w*qnugG2)MA3<X|2)TrLI_5I_p?`0)Ng*C0mG$Bc2h(M<ADAWE{6 zWI>=5e^4AEYQn4V*!DhR7==KdzbZ73<=PbiCaCGatbl3+ANS?WNX7A{rtZKO_$w00 z#nEeS;s!Uqls1AB`PwZ38s^V+xori*nj&k?mTA@Epi>hCpL(fF0!}e+;zEgZxHr^6 z*e@>wq<r*?x8trkJ{fxXIwfpEx?l^DO+dBYe;_G$Nr0z|eVWo@_;WnS?WAVPHdlMP zW-Vj=_I)*#DG>}>BfWE(6Oq2rib`r<pPn_u_DJSzCM((RKNw+p@VaJm@HNRzab`Jv z?Pm2<F^MD9ZMEs8<~nN;nnU=<(qskurtht$m5|ycR2)9RVz<ZAgY|HLvQt<r4O|Nq z=UZw}`U0i6ZIQmVrm-%ve+1hzDw*-IN0}WY8Q@VR-=h^EJ>LcGs1NT>@=PgJM|#XE zw0o~4sirbfRiyby4Y?k=T<TehWvNum%i0kchJ{T-GHUUNxI<hXuNsE~?0|?|o9xP{ zZ2x!(auenq1fJ|o9uxfZUdpOg$7G|(R%nKHB;oC@2WO{aO29xpMU!qAKGO%mS6s8U zR>i9(R(?*KssPnr{lPYtfVqDmY7Mp_ke12JFSngmVQ8~s2)XZ1pQUQ!vL_q&EI4}i z!%Vg<A=M=AP`4i8?pxw}cJH9(-PrE*Kz*aom7uZs7n5V5wl3vOE<}S)?c%ZhN2$J< zIQ<U($6u59OS`TC@t&>dv2stkH3^XnpeAx^*2c5H=3te#7YQPpdjjkK+2X+JuZx3h z6My3`xj<0s)cKd(KZDu%ADz=!&A8lH&4j0QW*1MKCfs&qKLZ#jKn~5xo5|}_!%RG> z)Mx6p3;wpWMszQK+FOJWnGt51;5qym?ViC}PSUPjyN>Od683O{&|$evorb*-XM+_# zZxiI|-X-bx74#mtB5uDag1}UkiF8iUWxY?aYBYwVRgbXOR8&?*JWzFden&#$;Jg6g zts^A9=M!18w&clK9!0|e^)|tX3}GikLhg&Y%8B^n0(S;j{LVaXyP|<HQa^sLd73ef zElG$2r(YRxX@Mg>+qDAZE+ob&&dHht*+!jEF;IlWq?DlM;CoW+^+*$naV5t`yKTkI zbL|&a{Cz;4cd<4#^@WDdc4_YvcaXsz{K6Y<QsyRh>(;@R0k_52^ph}gHhKtd2PWB3 z7RJbEZ;zzEY%5U}xk7^a(e4R^@z)$2zt;@&E_|){O(HqN-QyJ*?!H{j%~doIryIhH z05+l5XJqS4v}(o-rq38na4aL4qxOrnmC8$;TCY_yH#<s(^C2%OhxT!vTV{##lQiuU zq}itEL`H#Xeb~*A5KC?CUN%rlCg=KSN%7?5OycWiPG#YJ1Kg5@tMYEK@Qt&3&Ntsk z@jOn#$&q{{aN}?Isu&3#JVwl^TFUXd$c$;_KE1v)Olzs=7CLcn`-#?b0Dv4L&$Mv0 z`E`xTlzVy2S!%PMv8@Cb*rZQC-rXl}TLcmu*f?7IE_dWY2r(9&++(u26219kgV;Y& z>)F0JC4@J$QRFn_u_wD+`ZH%_sG~n-Nwj!z8yKGw*3B%$^Jc7|J?Ei$%YmNH^<I5l zPEPqWDP}>M0;+FYDw27G90~1x4CVDR>7K9@2L=~IcPi~YE;-gr6kp>ekapVprm0=6 z@~CkEx+__TkG8g!=@QOl2+Or<fOQI`9Q-W&p+G+K)of(8?!$uHy!4EWM`VZ}vK3V3 z8L%r}ndQ;NK9%OuO1gkI(iW0*gcSgEBEAE)Mt-2l7;?|%WZFS>-H0AQ{;k3A`nCND z`w!)N3sr9?U`KisUQFlcD1yQ6v4*Q{Y}xMUcX2H*aoVS8KDv+8)in%wsFM0Pi;Wuj z98QwzZaN-JP7N-Z**eorVwV!$V%Pi>nZB)*9BZvpdx&|L$wS<s7f--hY<o1&XOJsF zD|&4kI$Y1!yc%0jJsK<~g^f1rTn0d)dP^;z+fi?{UZ%)rO(T0$)8uQxUk)d49ZGih z+<N5DLLaLuE=^1~m|xAj5f;bvG~WbFBnSVxer%;bRci}vlO0^cz4^NDxy9-xNT_=? z<VatdvcF%bGWG)>g;#w20Wl$XN48&m(t@f(6I?XxE%9<wzeL9u&KQz*MREc_bf(K^ zL0NQ$_^2FbQ9jldk5tBIQx?6)g4abYjOs)BE`S56v|dU@KVZ5g<!Y!S5jn_ZWlCd7 zAsOV<$3ZW0*_Z!pLS%R7(+^E=30p*i<8P8A$wdB;duxZgJvl`X7gioSjjpi8=no@f z)IZkPOFdSbVmg(qB(CHQ86Jn&7s^K#^33d%A{Yd7`TqcBRRMiuv)kwYFeU<9O5ctF zKxU!8Nnq*Ur~c?sxpp7^L+?fw^Jg^V-Cv_4B|TQPGE?^M%CMYuZ^Y+?KJKZDfu`4* z>~~z(k}Qm|ZFvw7%tct)Wt`&jl)n(}SFxQ06Bo78cwv5b<Op5bGJTl^;G@L8unc+{ z|C>ajMDwjsj91Kkk*$3Xm|^khL8B^ziFQzIbp<lMYewD}Oc3F9JG1E-V5~dKx|J{~ z=;DlSRH<c0S|qofy(?3E${VS;M5R<F36C`F_0Scp%Zn(riKz%4%wu$YtzFb!FYTq( zkm}6?!>l;hF><-Xzv%k4XCG|bTdnb}uz&Sqds+a^5i}w>`t=vjR3iPxHd%b5Ef8Kx ztwg46nQ%`Fu`Gx)#gbbyxZ8+GJuXL|=)|w&L&?>RH-XgY#eN{9**<Kf*OWCqj%X2& zvgE{F?e-V+tsOn<K~OLE(~ECs`(tHimBM>{0ajN{q10ss-qu+XLA9ING=&#w81DGc zIrnnVAUhEdckCt(F7TAsu%vg}XMcKZ!|kwUs&?F<`DjlcSvB6oGRdlmCMzx2u{$gW z3{u=#o2OUF%YNMK2}>m1DfSCuvNqbC#(Lwkkr))@V$&O4lnDS}bR=v!Oi$~PUl2ai zH&#?WinDB=`#69y2!2+NDyvPHELB?ioH=>LNnHx0Miq~--ptft^IVNreMBr_e!EtA zAZAvJ&O&DmZ}GD#ML`8=o2_LvG1Ud9NJ8D%VI{~1d&ATZM#Hc14x~e=K`-%UvCP1L zV4pfXL%f}!NKVs}wB0yRop0@PNs@|CSW40R`dfz~lU>_%wgZ1=R&SUJILlnV;@8J$ zJ-64TNJ>iKGSn>Ye0-Yemb%gQaUmmvWOlF}-H*7pO3?duop(~)H;>VqBEinN3buzQ zh?}>bMOsX<zWUW+Vc17i;VL-<Q+D4Toypv?+|i!VMWYlPr^3>@2~ZLG{cG;d5Me3W zWBzZjpPOB|N_-o2j~^oUl<up@tJJDSevFV7Cy={(90?h8v-yKUJ80horOogDCehSF z_waVnbnTmXkI@FXB}LT%Ax!`UGb^jb_Q}pR*JkaQ@g|l~RD@yCtO=n6C}`Sp5#t-J z7F3ba=Yq$M^lFQfd`*!7Qtze!+wy^^G0$&7u#h6H6$`izqa9s$gPE~IJ_3^tmRdir zv0b!Py{00%<Ri-uz$b^-k`M?4vdZYCk8e8O%=5erexw1Y<PPwX%SMui>%_T`i0Hl= z&bctDUw>dk%T|k4!cx}SQ=-ZaHXTpjA@Vhw+XY?KrcPmv(BA57Lq$jdcz~<b=EVF8 z#8KK0E5)ZS-P*-khOEYVi|rm1n+NH=b2ohIWwvr$c&nI>%0#%akdgUtsqQ}3^4C_R z8S1VINfU!>2%2I~75%U_s@uytY3@3AnZw<W>pmFSH;Ry_gQ`!R<AQjhX6F(Jiv->1 zVXk@u0D_7=;YU53v&}9nI|uR!)#B^X(4wNGb$yGpq31NCLdzG>WGI!&cXD<j$<@^Q z)HecSFBQ~fUciv8Lt--mm)$epMl~cIl|hVrWa7yDbM_r@Cb2+$3Vo{|edtjx2X}U3 zNwkcd5-lMsTaYN4GGFHDGnk*J=A)0$jtpzg8`9Hl*GAl@wa5B;^SIj&r!i4tA*a<N zIDCY%l}$KYI`i3g))(Qh1hQ95qw1J975=;1TCgZ^nnI0|ptl9DBBSgdbG4`a<x7s3 z@Z!TVA1og2D&n709B*>$!+6i`PykPTn)MJRIX}<q#%l3kU$`c$@WzA&gLi6QkBU>? z>qiBr3}Nu=E1ch#byBS8AA1vy?E1Db1B*Av)YlFPqLLEZ!oKQC{M%NstYJ^0p5>{Z zd*2=YR#A^$94_8qkKEK!t{d;vI%aS_1=*mByWU@=7b6vLJ1MA(tkbG<;m5q>{(1N) z<yUM>_0nYodI;~1F~+Vr&WAB28<s}zVjwc<JC1Jm)+-<RGBghhd!)!LHFYo$V|gW! zp*gwUX4TPMb@U-U%mOkR79*~PoAq@VSKcQNz39a?r!%cM+w@F7`g0Yv*Z84hp%eR{ zN&<>Ny6%=<?UxShwg>^!fH$ZZY&!-6vx$O6{=Bx26-e0wZHW|W{4jcfDe*4j(#wcq zpp?n3ov-e4u=eN7juXs(!Y(S?D%+K3;}z<uq6>mzP{lQ{MkhTLEtLVNIx*>85fxMg z2;$er6JUVC{5h2tV$Edtei;zc2jrNm&#Us_)G~#8l6L15`_httdJG*N1SH=5TQc`Q z`~9xn0WhsUF$UD9@g|2yt3HWhxD&tcU`fYt%2OW`BVi(l5E#L}%z;_c8?DZP+-b=b z3GJC|{eF~H*%!dnfvw}cp1BG4MW&V@&j;Sz+mw)n&FnC_(YuX)j)}i@X$XpP5g5q4 zZl829do=ca0-?;T#__WSBV2ZGIuHq_Igt09fg~s}J-pYjYci6u!!=OSiUAqC|JpEd zhfDnDb$n;1OydgDoBHR(^vwPA7I%2s;qD1Te4CNMnV+b~32cvgTMk7Hqrgh{pSkXR z&BQWzBPeWY94h?#mroYz1h#me-Ob-;PtLO&i)wm2vE|MlB_9!`y36r2#5(ESX-=dM zXMIg&>Q-HS&Vy&6;l<wQsHQy`9s0Fe59HJ#9s+L(dVJT)2WN~~gT^g!?RU-%7ZraB zF@{;0wO_f$0Gf)6&Yf6~uPkOVk8q?PRl3oxbX3&oE-h)qK0UT8(Snn(+;tA<;vkcj z91Y*Z%a>?)bUmI}{@DGLyd_uKH-FGm#U*45xpd-FlJuKIKu7OuE~7VKa`eG?;3YC? zOm)I|6-RshMI`$gjdxPwJJFBYo^;kvuD(0KHcH)o#k7x;HXo)}=4DdtoTZ=+umM9p ztlHhp*Q?AJRz6$_RIHRRFt>V1+*x7%tfI$u)rft+p~M$DqdxOkFn!D`yS~Qu=v_B9 zH8uN3C?Y%A)%u-K4o0KIE)Jut+9%324-*pU{EYcQ*0|1v?Jp$XL?Y{6+P;!tw=JzM z#{~(inF&`F$Gv#FM@h4Dp(SL#dbpY3(5~hpQnR|be!4b3T0?9S`NeS>J!u07#{3NQ zZ{B%c_OgZ6+?(|HqrqK+R(CZn{-vl{=}HTL{w==hxfb4$ZP|z5ZD3Tr$S_bv<|58{ zjU~N1$Jb?M^VF(2>$8LT#DfPHJ)1g2FxSV$mBsZRyAyV6jo;-pYyYAE#hsS4DDGL| z^)^1yt+RB-&E~miTe?h;+?tLJFIcNQtgJ+NM0M_{-@5eP@sclh&wAY5mI6hRl;9uN z<4J*=w6k1bY<FkUW=u4Yx%YkLydp!|XdFA@+K`h+jr!R3K-r1lYIBjDE9C7cK?2^J zgyo`d#;9{RGh-=f-qXm!(h`B8Pv>ywFiC_Zmr%U0c{4eBiG~4oP*m&tlBVL?hMsIP zYxA>b3#80*y2(aJ8FnK@`v#?ON72xUCZ>wjf$IymZLN25eO60&i2nI>NAYZ!*8P1D zL6NO8t$`|bQFo8pJiD2H^LX|4k<FKuxOpkhEvxGL_ljpN!Z{OHX-4%#ctnRCi;6*J z4R3fIXc&D+)3d=w-edFAq^^ADLNC7SJ7i(YEHFvK6ioxM{aA&^9pDojG*K|@k=Rnh z_U<5pIv5ItNcU$y4UFtH)4X%3l<_3rq$RQ;(-sPqN?7{R??vOr)Uun;Ye^Ru?+kT@ zcnLr9U1QaQT{@J&9~>1L#AVf}mzsBfj^+F0qL`jQx{d!?5PFlNOoxrxbqWLCF6lvk z7c4ZvigRp3us9p*$yK0lwz@A`;&PWwZ&4p@+w{QFdHXfQz#$;XfX2}(YVk?;lUXi6 zR)gNlhl;3*D(LaMbGbe$zqZu<nM}Oh3jjgsFupzHlh=-0zSG3OPkNJygsLYfj#_wW zV|W>TP;2tV)%$vF(uyON7}q$jVU`1yNoD^I7mobN+@lkCu@_EP&HTkQ`VH!<BO}7` zkzo5Q$)tyDLO~o|Xzrn9lKW}TV*K9S`F3rhNJ+MxfHA)E2kvE;1C*52hxlvO1^y6h zW;@5t?QAQ0;xm0TMg$3!Nd8)hYKY%QR-jUQtKE_%+`5X3_}L<7P0M(LuDG@<7@6Dz ze*r5dEo|B+qXK`ExZRSxr^7Z<<lr{3>9(KVo7&_N&&+>YE(irk_S~qwtVYZe_~|&= zupz$QztnG#!r{OU*EFsc*FQ#?#y-8d3BwZj;5?IsOyL&P(Tq!*t)=BcIc>B(7hg*H zXvY~)#bOoc`rLLqKi7=}A1OHxMr#+l)8q~!iU60yw_zZUx2rB1aASzU<2&Qm5RN9B zHai_l39rKey;Zvx{=C43pxnpBIl*}ZEZgrJ4e7{~Wnk;KfH~$}Ia@R40LPH-Wu@iu zt-S1yH=T0Pxp-yKM3LVlha%P09{LZa_AUgDTtG9z=}K<pnvaPc!X7zAzp@IAxOp(k zK)5XJe*8UJHHvd8w8+@-`+M3>((vwl?dGaBwL$|foG%-KXb|0Hq+Eq?oFS^_&MS&W zTZqK=p1SuIAJ%o2eds)(Ii*7pKICNYQ@a=$dZF7HNi;uT^3S;|YT{BM7O-2X3};(a zuKZ7eR|O7)*W3$rG4>_TdzR$xyu5UCWqEC&o^{6=lK7Iix#{D$4UH{+bK0WbhXXtK z#x~N2Rt(OG9tlk%Tm5N6r1)Z}7pe#BdK&$2Kq|wg;gS!Bf+7@4nUJ~A{PC~FmKHE5 zPwz1ApcrpfG%_YdNBS*MT2&Jgn8{iDJakH3Dru>;NNf~SjuJV?;Q`CG+)U97ypQgH z54;6#l9>K?ia=8kkT@&5C=AC3!v*xM{<0MQe<KeBdr0aue9xUwru2+3Jkh-*u;jgh z3s-54CjiNCb#}zqqMmF;r^s*4+_RPowkzpljpEJfArKKGpAsVTKC1Wh{Dqw)yk-)U zuJ|Khc^%(9WgeHIgz+&goxQmt-Dm)|`R4C?q1S#{N7~Z<%EG1FYkIp7!G^%3w?C=C zY<pd_9DtrfnoAv+1pVUYq4;Qp=8!t|GvXOMou(FC_E)t=8Czoam2F%I#<ig62E1RK zt!%OwVtVRe)8tOVkg0q8?WmQfC~2A4XjiC(>o@u{$QvlDtJe#!�TXO%Ni;r8A?x zR*))f)u;9aucy&HZUwe^ltYW?^B?j(%i9C$B<-@-la6cd1%I?XH<CoTI|vhtB|W_( z?Nsn{_@e{9W5-KXqt}&dp)nmxF1dS`v?IW4JD%P=XTfiTb6gTAsK}e}CpzShH6^Vk zs`OgFm>J#+tC0C-q8P5R`}5l4<VI;v7MgQNTB!GvjA+$FF2|C>C6orcgI27vb`4Iw z0R?z#4v+N@w2tvzy2RI39eKg^tW0iY=0kY<HxzmkS}a1}WL<6U`xUxkDr6m{x4?u< zCe(7^Hj3jeUl|jiF`Dr-4R1k6xVP$WIa|;ot4Vv`S1+D^9LLzT%`w+(_Vi96rnv{K z%L&4^4AaduqsE7-eghcPx#VNj?_jk&+x6f@zV>a=yAOOnzx0&Z2jgtTF!zVpKE8CA zclpw1P7fI6FauU{>#Cx;Z^wQ$nMX44SjYmdD84+t%V4GLl_V)nkW#{x&%49bYX)Xx zOocI-RF(%r(h|N@$l3|NPde_VF_u%CISqa_YxvU`gfPT&|4f3l?7oJRm{Pklb6jrD zm6zV=2gAb0jv{7~iStMu&+clnOZUQLxd%{Vkq)N*TkTRM<>^yG0$L3nBihaoa=MxD z@^+c=S|yDb4&#r%is413QJ<sGJ!c3=4k|wRgzk)2b-5M}PgnEtdYq`WrN>@vjr!Ob zxNvuiFHB-_Y`-!Il<W*KbGF$7ETyBMPeQX&oX8B83ms+eaOu%4H*;-0AW;+&xMY!| z=)Kqs%1TL9W#6o+nbCo`ujNj<>E=o)Jl}jQCCjI(X)^{Iw!^!H3SuwWbei9~%E8>J zZLL;5vcXqeG$&ewxp?iKm)U@GdUJZ#x&i{3To_H?^C*9O<pS}DX1{~#`HF#cz*RoJ zv0+Y=-s?qraR;mz`;||jtXPok8q{ar1JmV2SP`}ebf>GWsYIdYbkUg3iFEmL_W4Nz zuZzO$QqfM=-ZB-Y32DEgvr7A74U<kxvi-=#WJW5n?iXvkU>M|{q_Hu6d87xq#QNj( z^HWkCNB4WqIoOGW=HPd8<wxaj!1q3>t0(D}SEkuvU9#Oui1r0;kct=_@&MCy($Kim zi9@^fC}$v*-P&>7=jc9}W{orM+mF&M`Rw;o&F@zVX5DjevSjJK@I%tA&AKEo-nU}F z?B3+h@0YR%<TlYF40Q9YN6lc7I3CpWP&^Bn1l~ZN>Qin{=jg`hiBCKBte)U&)ERqy zw^7iSi2&R*Z)$jXX3dWwi<|4{@-J*%B&6f_J{)TgO{|I4gq&)F!YL!Sw5#^6vBeiF zz5=P*?GlpOIR{w`1gzezNJy-KaIMdT%jL{&ibWOEIkgg$7(=aZzN9$CZOo`nab^vp z75!?w<GJ<1;_(h1u%U+aDUp4qIIM5ZN2rgp&D(_Dp$Jy)+Z-iJZ+fzAzm~|+6SuH7 zmkQ~tNnzrKr=X`v!OEE}xhJMq7X_gMhAXHAkR|3-{EtbItXHMY4+R=~X}r(q0_UGp zDre_%s5jc3+KIia$Eo4_Fk8G313N61_oKS#W+RiO%XUb3M}%EYur2i6k?1h{TN~A9 z6D&7n(*coNFv5rx-4}|;z&#tN??^C=KHe|z5QAFyP<7v|a7eMv+v1@^IsrcnStxRA zNb<rdobaicU2kY=TjNh6Oqnc0D?gB~9X<kvRu$`zeiu*O0mqM2PcL@UJ2+c>BE*U6 zj2HXa`=lI*B;Ws<8~nPa_D=rZ2!G!sKiQQ$oShof3<g=+K2sN5s-`J!M9i*rNh<TP zR&FGP6EFKTwyqq~d}Yr$bKg@VOv#dJ8SxLFk_-Cisr{&lXkTZje4@c3D-SBJ0KW{| zVk@U^r()+K4$^cgnpZD~1c`jrYVOAhUmq)@rGB--!McBL2Trx4T}UZTzG$c}z?v0z z{!E(ul`{<oHCETwL}P0`E)08!%A4X<7*@k>m!!pGjHG>Uyq$Sfj;_FcEeaVnyh!7f zbt^L+VU4fU)Uz9IB6;-m%4>D!$l*lSd}Lc{Y;_<fvY%eo2MEPqf197jsD4sxAV6z+ zWzcoFx>O`jJvxM<W~nmnOy;n1dvZEdvNXvBia6Lq?})e+(%bURdAW_n`^+sTLHS4q zcJ}(DD}sgK1-5Indkb=GwbT-;*G%Nc@)ZyT6JU9f7*}O`<<Ap=r0Zk`VQOz*Vy@&x zUV7*M#zT(8G~_I3O1G&!<<Z80E*dO6QsbCbs5`xE+;eAzqhK0)(2xp$p_kN*#iG@| z&PHw(-%bS5UN^sdBh8f^E}66i0VeB><Cn7{*pGjc!0Um@ppE5x8QWM+yuOjrqk!k4 z-z7*cguo?J4_51HE52wbeIAZ{NI{`2eR8^=t6oX&nhUY7SdERIs6`cyzH8(540lHy zd7o@HI*7gvt-IUiKDVNV%X$vxS6Y?4=n2e<JWAE_?V_YVP6<wm8+I+VHwvt~j^!6u zb)UL=krJ+{gePzBkj)LpNjto&t#afYwsB+^vY*z4+yl&HN{Z%;V)yG0(X*=M_{Fo} zaf|`(7je%QqakdM8wXE#Cae3nT`hm!|5|4D7JBfAN(sD%O|lbcu^Sw4L_F%Y<nX)g zJgDP3&n`9wGqF+-?R@>H^1>yHoi;%=H+sk?|87q9Dw-r6)-A>zDV-jwPvt?7xJ_Jq zofcY6WS{MIiQCk+WeHpiP_eArDqGfkVq&WF;0~vcV<{$iL*R<Xs^yo}x|dUjll9U2 zev?fgGYm<g>y=z=a{EofEuvU<iN{*1JY;2;VC#5b!{KlFMa}<y!m_eZ)e25p_WIZP zA5kI6qZ4j3ld5V={RG|KyrEWwLWkcZII$U2NoTGrTP6;Ns3T`6$a>XQUiYhWC2W6_ zhxq)^<X~Esa8)~g7$+SY^dhpT^GhG6<bJzG2{S@58{TQ$L#ze%Kfhn!bFhEmt}%yO zBFGAr6OClkfUPO?ABrE=<Jo^u{E+-JKbNqV=mW3VdFTlM#)kTRsgCw-j9;e&m3%4s z-Y{}FNj}s;8&Psp8YXK{Igim9;@^tv=CO51pc1%wg{-vXdfas#E+5rwp9$EKu66#? z=bug-u)wr1%n#U%v+fmcg2(K>N;4MPds~zL0F7zo$$`Jcow#&VHAs+=0b;^|%Y5%d zlLwU<VCRK5w=UKI=95%n{9eYBIFpwE30D?lSnZ`#0<E4o53>uxJMQCDFXWrhSlG~s zoIPQAK+V`lw^$fV^(l@vuWx<(1UR$I7q#oZiju=-b{-$!-*AI$J{MxElL%pOG$-Ns zRd57~o=`Wd3h8*TLRNK%2(^hBtZ)mNXQ4GGdp^!QZ)YTPBUS5g$X#i?iSqJ7_iSe- z<Jke#C@+;5+w=P?NA7EgbO%1TR08j-5#J(2PjRZ-dB0=Os-b~h4c}7tgaU-G^ztkD z3m-OoAzDiI_kqg|6`kpclWzOfDb5kD9wX1|TK)#)QH}vuHVR8vXgj7Djc%h<Wk=@o zilcC9A77*6I5RXw>c_(rN#jD&a`yn!UQrJrV>?~t%Rf}jAAMz&vLLI5w#Nw8M3pat z;ET931oU;B=-ryinPtS$<f2V+gA|{nFIa=S(telhUJL1$SD#rKJPJJa*50faM`3Ze zBBic7uDe3k{v%J3?U*E85AdPJ!P)-hkcJ^|9wMJ#06DTQ9wyL4E!OEI=)}eGd2=O- zR-m4y&=hdg<c-s;%*{C&qh4iop`EpFdvM5@pMxE4Cs#Sgb_lVd<ry4h6lnL)ZR?PE zwYB=S^&ZGWBw+KC&`?!egj&lvsyvbi;wk>9QC2k~+!JXR7_a&NwD+A+O|9G7xYbP& zK@p^j(z^(RUKFJZ2uKY@2rWQBdK0oiQ9%Le(xrrI2p|wjAe2pS(h>;-PzXo~NN7^M z%X`kgd*3s@@BFxb?j84@A8U+c%w&~!y=%U6&G|gfR1Ee>J;(4a0%W3D+cJ8S=$Ri$ zwmIjtsuh;IgGkdAoJj|JBa_k>591(?1RGRIKN&T|78sapZ!3VIV&^F~q(ZdR%E=4< znkk~gRcnyAbBIGfLtLmhh_JpDpsvVOd1hs|Ogze_h5UJZy-kBz1zFF0temWu#=s)1 zrF%5y-5MkIgUbHfLfOj{(LPXt{-$T&I3Ff={f@JYw%F7DUQ-1`x>2Lt#ZsNszNHXY zn!qb~Ug+214A+yElEia@$}ic8%+9oDOZUn>`L12PLE&X>fVF0j!NB~dXc(97Ev*&D zN<g=z59ef)qh^UJa|c{RBUe|6-7#<{deC#hr)}P)3EUi}3zOs+9v=QO3F((*j44!D zom$&@4`;l?(v3c6s#T+P*V)pECj~ECr8aWeFePUqlW;<A!Ls-{$1Wj65FR(jtGUw> ze8QG5ee2>9V&q3fQ?HplI?}L-u7j$qlYiy)jd)v`h9h17wo#z@p1x|3)#E1PHe<`q z$X7AG&KjEC=Eo52*}&t@jiZFnv0!WCR5r~uiMipq{97nRt)k2^<#4=Md$Em;z%<n* zLK&2W!Wf~3F;iN1XwYiL6OjwkT+UXk*VQigh7Xy0h}jzA^|Qe}p5ud%H}|Ay*a4Xa zTxE!-Gs`-n605AAe*7~27BG=ABP<j{#ZWD^<F75!Hk$l@0jcS03vbIa42tn|ntz*F zyTG;eKBhVz$IcRczv%&zPNi=f`u!75p`ky!91P)&U0F!$Hed)_KulBDr-%v<Gdx!F zwyRU$GfQ16DH&K4_ZfmMtLU}~#jD$o)mqsgymU*#f~K17y%sU<aR&vHsObXiqA$p? zdszRdm+T<Q|75<pZT`xMm<OyFRWy4)&DeUt^I@Tu6pd;E6576}&v@B-rE2OPUA|h# z(E%Z3B($8}J!L_}z*nvgc&d@44}z7qO8bP5`cG<Wu&eQMmV+i3SX^(Hp=x;;w;JpY zNk{K2my6bnPg`Xyp?_9cISU^@rd!nL&*KqZ`tHi%1g>hTtHKtP{JZhGRfgl^eq`dC zi)P}e*;iSkJ8Q0CS5$(UCd@0!x`7PMf20j8S+GD;*o!=eU*-laB&|*lj3zl3;Kb#x zK@W{JBVwPt{Ml6NFWVWCG*G&L@5f2!-8@_dQbXfnlqs(fG#DT`m`MFxkPrYxt4HXy z`Th(1z=sL1&$ss<zoSI5i)AlHn%gaf>?nXZ-%Bi7+;B{JcRu}inS#<vJ8zhjm4=i@ z-&@~pJ++VNQ!#x#W3mQ2tP5{u_xYNfV=KF2%Vci*d;IMMh4(9vTY6tZ2wi?_v1FHA z*DXY?q){@*tvm70N>nD<Py!ROWOuPRBp08*9y3*TZr+>9{;2@Q&`U6oh(HOYXnl7V zkAmdpN){(2jg7*?JkayL4GP1;l|-lbZdGYESEpE=PPU{ucwTO!TAd-mxw;y+RA-Pc zV9L=HKAv}X<wQ)x*<C`!sAb2NZ>SiX6L%F<7r<lGO2iJ5l#Fe?-j1LMzk9LC)}uAF zgc9CtCk#fUI)2f47Q}IELo4y5c6ZiL=8%prwXBoS9kFrb4{kYB{l#*b-B)3){v_0Y zt+CI@n@etwg6Pm0i?U*UAKYX8Ta;3iSQ)>#8aKoXPbL1WyO4i}OvZmJ0||PZNbj_V zFY{~rCmJzus6Pruh&M^-c3T(KZf=yR&gJPJTJpVu7UAMrB4GaZIq}-m>^;mDzII|F zp0I+9v|pd`d_dH1$%SSg;(3B<xV0c&>?{HTXX#nm=O5wNFm#>#2dGgp;bd+BVxuNB zEswyWjJCyzE4r>FojwwTgYoPBzuj2m2_3#3nZyXfyUVkpgE%y6WIbJC1e_DK#@bwk zjzx7z^44}pF1&=V1NUc|(oU6|eq+s|q=^zmQLjG9={inq-NDVo5hGTGF29PoZx(3p z!FCSL4F8>N{0T_@EP7)rb0qid`H3o5pSXS}h6aVoGWfz~Cwv!(n4Fmh^xu-Pwa1;R zRUY*}sPyAi+x+&8sE;#6op<bFC~Mf0raTMSoVoCqRS9b>&>eoXZ*pQhW9P-hxu@>> zB+nk9-~0|IM=p1Y5<6v+dZaR?26zQKIwumW8;cE8vCk@9>Ul8W?B~--n47$fPzT<M z;Z*&jGHk~_us(q~M=lHL$-FSfBC&TfS8yr7oszM2`Zn~0Aiku~O1$pat@-&k_C6le zf>Co8IrM7D(hO+)UMIZ+&86jneI&eQCwXbg7K&{in%ze`^&V~zLR6oSr;p>+fg8mV zsH#{rCODzec2)5g<{qJv@A$hxK4A`OdC+1Fl-IYXA0F{)_+{ty?jpw0K0#RvjWuHh zFb50vO(mp-mCU9PPu0Q_A!P1qpR#?}Dz@T^ic=%=*eZsIg2ihfC7unHsP6aQ(5A&F zxi7zr!|!1#e0^C@9`N`Jd74Mpk;a0h?{a3p@4gXDO>?_<Wy2#g?P^|qnIY_`Y-bgN zI?OV}v}6l0*LiFyW?%W}U(huDDhmm!9SE1ZwHLx?u5kOwSm@%3dJZJ`ISp*LY~i=_ zhP1{XnWUkPkJY*v^emu7JN2uF%4^>l;)Mu$xLNX(oVs<|BB4E-pbxf1c2Hj7JtoU| zrM>dQoTt!qq~{p5=$V;cm2jk`eE(VQale~~dtyTUYL7VMXD34~M=`o^sW_)x&IjM} z*#`hwp2-8ee-*Q+rdDpk3?3)Z0-(MOXI(|R9=`I;o!!fg6ZrT=hp)6tl0oKag7u2E z)vh`Nai~;Sx{LRvlQ8pQuBQ8xZ1pN_$;^zHBTptl_!h_OAPBAsky@T)o?MG`b)Kv% z$ENFNj&RK9ER?tGl3}&mYmhiFJMf0HnW9n2x7G(LWPIV2rts9ZEnP+^gX`i%!it5- z#)=A`RNTmb;)`f%+IVfFh`MVp&UZa8WHz13*}w31>D(2LHzC}bw&DWkO|oskCVHE; zoDufEtvP);p_NR~qVd3OH0q11mD{G@IrNng?%K<0-685NU(eqygN{Kzy!TpNUFGIh zk^&XF7OD=B2?H`Gv9nrC3Vo7yzEUI2a2vB5Te^|+&t++uq}mB$bhRR#7l(ui7UQ<N z_<ka0$idtM=`2>+YTN4K%xrAu@aZSZ{GV5`>+_E-4^e}$*mEt6h5(mrXW>iKU%G$% z^56X#liA{e$!xWV!IJPNEr-{Z4E6x|cE^5-$AzMX$ln5XziQ`K1ZB?P1B<7wN6lV^ z4ObP*=Y<XywED8eRy{3YcN=khm@gtyR}KQ(HNtE`d|Y<!k{=tCLocswKBz~??%6vy z$3Q|bW6LU6PDG<wj99H^DYN?roBN+qH8Shc=8Ajnyq^;{zsm6>=<*C36_lOfVdBTI zEz5m0EZiS|k;^BoXMnA(qNz0=CtsuKnLI!z?Bd(lGZAUE1qSkng6#Y~wy}olqH~-| zl=79KK=ZlJ<4dkD;snksVDl;wYpPxzU}F#dOEzsKqRGYN5<=qc0Dc0}GF!eCS6Z(2 zp!MxeIW2vSK8fFJ%%8xVd|)hYqH!b;x8S|e^v2^R(lLZ-DbT)nE=c1f?wZSb<<Ny8 zFOO#PdY$X&m}$TFB5}*J*@WEz_mwiXFWbg}(e2Y86YN8WC`A;^oCF555TP(q44rds zAfkKI1Bu^1MQozRvbr3d4k{1To4qIOx?|02*1m7pRN=h*SC-RQG+d6_Bij^*wU>=Q zxhJn|-ngB_U&y3=y&sLM(DhakMT$%FqKV=~t}A*tH0`C-`BaE1S3cD#NVJ|;?n4Bb zKxqZ~`WWU2g&|N2klP+Lh#l5jV6f)mb6O5T*2Lkk$uI+xFy$D8W*qL(y~Kw8Dv)Kn zlrX&^eV!jlU49&wVm-suc1J`su!<&FE#;*3MxSzX3B2<-edeaKrkEAn{+j_c-c`oB z_Hie3;GnfaqK-|T9rQY0@<t{pQ`k9{G|)%?Ds?!_>?}-a@P?F*fa;}u;=zNx@h-L` z9jAM$>~DU9bHJ^->@zowC}<KQdfknHv&R)D9P_in372ixUxtX9C`7%9rRlj3G^0{< z{LoZS6D_GDsiVlX99x-&X1e!>mJClEf8h3DbHQ_M_UTlUke#9}whUD;5XHrQIF{u= zXnLll9fR%>0**6bgqhz<htIG*S;)*Cut*yg$(QPsmEj)Zsz}VUb{pLo&csjCXoe%` za^`Fx2s3?;7+&cjCRs>DITQ7Qq4e*gB)zr3)=(+;IDNG1=y9CP7v;hrnBQXCH6oob z-R<kI{f8_#S~{jKn9;m5Sf-}hxQHw3@|HcII3^ija(>RwmWq{8DA}FQ)m!c|pI6Vh z$s^B)pG7gl1Mr;muP^uf`2;R_oLZk2)qH>c<z70hrPl9$Gk?Yv`p)fgIo28|J|=*v zLdo?^lkY9#E||&z#Ubf_z^9@GN^y~NuO+`>m!hYL!XeHC^)kEA7#&bufY7_;qp#iQ z>7IOnv%(;zhSXWz-m6HR&|d+z(e?1-+Pd5-M=vv$WGVPtq^uD;-*u(Lyx~-2CDRSD zcHZt##h;=&0!l;0o582taOo6i(b(GeOzE|8o&EduxUG|7bxDJAt<Y^e3S@s|K5sc~ z{qEsaO32HFO;>&(3ya(X$7LPI1j2~T4&AB|DIjD=hoGClWu67$z|(-DYPJm9`n}_u z@WE)k*inHK=mCek(hmATFB0lj)7xz4z&fanD~A%EH93E3j4{ssMe3jj#NVVjsN`ue zh;8<ZYfw%J%~dk>USEjXx#K>rM;9gEZ5DILF;-M<(_cGVj@zs(OFpkLoNXQtXuHLf z4qVGpeR+?v^mx5T@f@UtWXkQkuItKsPOCOyK;z88^IIdNhehaIR$6gsKD4Iu^-NP& z-||7&5?x+!ih@1TslxGUOpC;KWmJy|QOU?W4O<z#HstG3@pnJqAI03gy=mI>#iQt! zGI&~LG_KW8Xjr@0&oaf-a$O@`ItzP1``N8-pdUKz;Wr&q=$4<$ZquwOO1h(#QdVii zJ%gq_N9Xja?^9W{*<P3Ps7ZC|n0}T6MpbaS{`3F8wh8`QZ8KN?WH#bO06?n#TGAW+ z59H}<rhk7Q5di>?|Ner4l}KAZ3aA1=!F)dvRf6?Rxx)^C><;Hn|M<r4h2}l;rktYb zkJqS<&zl$2nz`in7Lf^u;lER~voZ<$H|y(4F>iYD_wBgW9e>r*VswvEo_?7YpsQom zEx^Vjf6!OHW2Ut0w6S=)zjENFhcFNmMm4l}zjwb{6>^EFq&*d^aOjG-jZVLC?qdvi z;O*1vDjTZqbRtT-*1CNw#S0JL<&53i!=ta}x=xX99lWZmo_XLcdGT$nbl!&wFWPC) zdFE6rM1NM*0WWdgQhr|(h97<;u}y-+<r(!CH{w7SdY@!$SS_epP`LuEcdb~Ix0zsL zPVQlKn6RyyS$-(Dt1%i);cX6hO@F3`=kA0VlP-U9l3N7;NtdU*B^O9bu`A3omdW~= zy`PXIO}U?bw$4!=(3~;HHicY&GdMl}pgOVpqte5%wa}E+HGy&Irc~#)cAopDlKvIb zx(m;P=`ba<y*Co@2tz<bg-PDe?UUg<DWPxd%ioX-Trd(_S;*%1<JVc8U*~S7%|(Kb z^tJ<<Lzd+hE^{%am?C$<YgYV8oX^cuU#U|?g+C5P)Qq75&bih<s}X5;Y}X1`EK1OC zNm~U!L_<{ctUkV>;R@Yd6@~0#1AUh8uBguxk)w-_<l>`CMB9-t`79qXo$uX74kpv? zLG?Z%f%_LZyyqh00gS*&bm>XO`kd>@#?Yd-&6y3qNTY;1EvKVVV{We_yp<!*!MJsn zv(2>PW%6=F1cBa@rv(90#~5UVH;it~9SB7c<1>mmYHK?^V?|lk6JAXB(pEC~ZQmEs zU*74mR}!wDlteDprMcm*CP~x?D-55#rj2FEaW1lVr?Dga(#s&v#O%6-6wqg9_q8*q z-$>o9PndW)!YDB0><sf?73UZ(gn2LC4P0ZJXJAl!QCfPQ)K(YfAVP71t+$rocgn8l zw}jz7T#_d+JLO;Z`98iO8+HV?uO0F-mz4IUW#8r2bi_#-H!szCHBANC*}0^@%hSgi zgk7?+9r3Rgr?6g@oakjgJC^5NN+jIjzhv0QoEP$#Mg`JhR#0W;F5*|Fyx&?JpUpw? z(AaIQF15Y`<igi@oaYx-a#MAQIRnjCT@?AVlc2%{X6^>U{RW8oW(KL(V5n71ASP!% z_SZLW^ZC0QcqF0Z(plB{W_iZF$nLH7@>*lEJ6vW3Uq2UgCrlymG?&yoWVm-MIx{01 zi-~OGc~kbhrJU+1Iq6A`Qba2@&ehnw8Z?pJNSw=JtuFEKtq8sPd16!IOPX+r7}xLV zHuPM(ho)a}0c;YjBiu8uF0q}Br><TVjbko+iR3Om-D8N8$5_nR)=zG(f1w~ZIAn(( zQvot}7D0IVVU(XpV#*^Xs<va%7G@xd=888YqDp2!dUQ5@Vt^;Hy86E~#w`WBAEl(> z=hX#y2l)Wv#!=P>$VIjq2>D}XK7{!r)Tc>5fYdVJ89REL?_9#$L!aY{%%gzO238(u zIxv-8wwrmZEm4)9wRI|;H6tv=-dqez06i-v@$V;Flf%H2X~>`@yKqtFR0JzfsX*q; zUJNsKBNqh|n3+`Q&&4E8-dXz|YOehfk^-L6!7~|L5%atvIK^6GZ{2qkK1Wa+-OIqN zLn5}bLtQdd2lq|9b1hPvoTou)Lbsx={i2M_36y56!3p=#Tt0$}zie2#X*42Dp7%L8 zkNRAcd}0?)?_J*t*rQ1TCM`8k9C1&oQWT)an>j~)v3wdp^Setrc|X@RW3LRoKGhsD zJZFTk<?7D?vG#AISe%}PZwnSP_<5Vb;GCR&K0aZeBl(Ax`_ZwigQ}rE$-Br4g+77l zU3RNDV+N<^0gMb(r&m6Pd&IF`p`ri9f}%TP8pOWar7xHtB7W_Dx~Z(K94o)cb5|Bl zUHJm=#^m899^32Nt~@J8#14=?t~jAHL!Ky$8!LAw_B5tANy;s&rOJRhIxDjbPJ=T7 z*V(<MdOl~8_$F@Nc&5oc(Z{ApS9zNy5O3usJJ6f4ByZYO)6b|uv+9>SSts88%4^@C zWS`=@a>zbHYb@{q08^pLM(-?vW~1<r04#qqnqE#Wx6ZO|?UM(@m?`8skJu0!dtdk5 zSXJ$b**n~gR!oS?CmIz}qlxl~`-LHmFXSBS5Njq<DtpY?T!jLwRCOm3a$~3U^h+G+ zAm-8X2uz|FySE*vZN+CVh%6R(319y~B@r=yaBEKex#)+PED1jIw5|>q=7!bn1!ce3 zB?uN1dxbv8lwbQhOD_vsL&hVwbCtZ1hIcAg)?$aP%ApM<K@rVz$dW{#wie0B)YiZt z{NUGj4VbJBR)!=!3T>}|F2Cfjp@ECI>Xe^Z@htz=U=;)*t+!b22UVC5(npFo1Mc4H zRCyUM)&Kssy0yQ>{+oM_&sW_R)H^C~7sPw83HSrmz^|L%cj?};3X(l+u`S$UDxDfR zJ8wzxS{T^ZSKFn_uNgbaf>9xjAGYDR@NBQc#ii;;n8rHdq7gs1b+4OGcB)daLDVI6 zQB<ySPw4DeHR`PvlG<>XeA9r($W$-bg04Ks9FI3Gx){duqISF}M%orLC+xH_0{1?x zgC?S_CWfj`eo#%FQC43rQAg>0A#Zvi?_LN41RN&#E@w6)R$n>Yyx;1ftD?!0LSfq% z0*${IEZf%9Tk~oX(?qJ?cb{K|f+|ld$*SQOt6L3(43+9PWyrrV$~x2^Eu(+Nq4qXx zB&_bE375EnM-RJ;1=v;@JYF|6H#9lRU+EJuj%<nPQr*4Kcb#%=)#Vl2Cz}NpF}YYn z5!JL7+tfPFw!YeFTYoZgN9m&BDoI>6Ovjlfxh=At>S;%Oc!jaKeeK*`8RF0@U-qI0 zH-vaPsNttAkH>5bqzeYb8eYS059JhoeE5TkkpBHF8O=q{ID0L{bjT6#5r<&Aeq8-5 zB==WC5y7U@AUQ8YQ+j*-YXH2u_3Rl_!~;Va@>tyx&(?$4+DDxE&TswJMvTT9ikchZ ziSGd66#IV{PI-V&zp0Q@DImj;#H##a!IXaN)(0pWz!ol+A=Qo!<1Iy$SDQ{H0P<VP zOzVpa?sty2f^&6K9I6xZ)+|g`LsTrnTqrW&mkO_Ujw((C8>UcRmHbwM4Qbj&O;#~I zW07J0k{t6kdV&tme+tUrzm;&|Zu!)ND(p@c0p(Ztyig=ec^Z6-g0+4|dMJSf2JUsR z3YcxRgIIK2Q{P!yTig=q&-XfW_%L8$ARTxp?(aY%@&U~~dNFth4~0X0w+s9BJ>A^5 z7st;NPJFzV#IWLk*nG)qyp8t}=7eDtfc=jeCH^DqU#0kOG7hGsKXe@;z!Fn?YmW+I zMYVo<^#9k!f-OjG7z16PDYD!^5KR3b!Q5JK_2DYv%GV$`M9srqtJT1=zfK)`4Lt3- z&wV$c8cOiW^Wm-g*lh6$**pLUNbIg|)ur(;50vTpu+?fRf9h2@@TpBefx7RCL<N(m zm|nA;oudXx>`vR;4fw9I6e(W!=W=WjUV1oj#Rn%TXL0&)KM?;-f%G&v71b0JxN*pb zsCNtCzI-E!p!`CYn0fVW_ig?+GnaE|${sZlzi<{y&;+l?E(wWC)2JGSF1VG(d+--- ztRknuVv^~{Rz|<%$u%jTs;hsT`G~}AaCWS3-)DxQw_|CQc2(E(b`u$*be@CaJ(ao- z9xnQ1A6f8eI_qC68{Ko~*#AL=MiEZIpBg{gtom(3r%7HwiTzXO+3Db?rXh6EnM5MP z=ic6O4eCjZI^=vx%+l?lrQdBthJ(Gg*KCL^CWDUSuU<55h6hZRv@}<CSZcjLs54)g z0?iGQ9U7xC`cSqErzB2Ou9~y$-l&5$%flzp80Cu1Cm)zqa!XWjEX+pIDa09g7HXRx zd*Mlk0*J+9@0j}s71Jc~bsF@n&Q?{%*~-prMtEq2Cd;xxS96yYccOuWZAYwdDcfJF zE`P1SP?@#-i6=1AL;n>#KzOkQS;b0={!b;7bO4nn{rf+tis$y{0Jnv9doSitibvPQ z25xv5*6CR+1~x_m!Y63}O5Omwi9N03`4$7s+nGKEh>C0GWR@3uUW}*VsD|;iw+YKG ztjE08t|!1!0HlHrC*U0d#qe?Oqs<>wNN_FCq3kK3(BQGbSm~&q^Va?^`!W7cNAMce z{`*eV8eg6UI{bAv+J8O3WV0sERD=4#UhDkf65qkpKRZ#N$=5v44vTQ~^j|0XuMzz( z%u%z7i@y#SG;EWPhmQ1)hZ1AQ3o6;@#rY8&P|%`?V}&jt9MldZLac`WaS<?9Qp?m8 z?55A#JJ0ip;C=kP9aw7US~MZM?&`g*i%@boT;`}>{ZEs6b?w~2*3;APETOUX=7q<v zHtzh>->4zA4_IfOPCq<#-A{r4@n>c@1d82Wpg#E~y2~7Hoj|$SNL^ocJhCbLgX#~9 z@M-rre7T$PXx?m9_^^&=(cYI4W_pk}Yy2Mu<CC~zp!dORp8d9p3FE(=@-;%qwmPQp zPfOturvdP6v#D=JT9g*9PQVkxdsXX<mf#`Ue_FKn<gx%zj}(0F7nHH~Wa$qo-lI2R z?s<c!l!QM`3F|QV(<hGr7joXNAfdweRCE9O-lTfQ35n-V%YPb2o_`I||BfLl5lk-W z;q6U(Tv2vj=gu2Vn}W>FQR~t_<}DD7)yw>2NcOMq|AUyR|J}^k|0Bm&|1tG%vP2Mw literal 31527 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 Au>b%7 diff --git a/tensorflow/lite/g3doc/performance/post_training_float16_quant.ipynb b/tensorflow/lite/g3doc/performance/post_training_float16_quant.ipynb new file mode 100644 index 00000000000..22246f2edee --- /dev/null +++ b/tensorflow/lite/g3doc/performance/post_training_float16_quant.ipynb @@ -0,0 +1,647 @@ +{ + "nbformat": 4, + "nbformat_minor": 0, + "metadata": { + "colab": { + "name": "post-training-fp16-quant.ipynb", + "version": "0.3.2", + "provenance": [], + "private_outputs": true, + "collapsed_sections": [], + "toc_visible": true + }, + "kernelspec": { + "display_name": "Python 2", + "name": "python2" + } + }, + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "6Y8E0lw5eYWm" + }, + "source": [ + "# Post Training FP16 Quantization" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "CIGrZZPTZVeO" + }, + "source": [ + "<table class=\"tfo-notebook-buttons\" align=\"left\">\n", + " <td>\n", + " <a target=\"_blank\" href=\"https://colab.research.google.com/github/tensorflow/tensorflow/blob/master/tensorflow/lite/tutorials/post_training_float16_quant.ipynb\"><img src=\"https://www.tensorflow.org/images/colab_logo_32px.png\" />Run in Google Colab</a>\n", + " </td>\n", + " <td>\n", + " <a target=\"_blank\" href=\"https://github.com/tensorflow/tensorflow/blob/master/tensorflow/lite/tutorials/post_training_float16_quant.ipynb\"><img src=\"https://www.tensorflow.org/images/GitHub-Mark-32px.png\" />View source on GitHub</a>\n", + " </td>\n", + "</table>" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "BTC1rDAuei_1" + }, + "source": [ + "## Overview\n", + "\n", + "[TensorFlow Lite](https://www.tensorflow.org/lite/) now supports\n", + "converting weights to 16-bit floating point values during model conversion from TensorFlow to TensorFlow Lite's flat buffer format. This results in a 2x reduction in model size. Some harware, like GPUs, can compute natively in this reduced precision arithmetic, realizing a speedup over traditional floating point execution. The Tensorflow Lite GPU delegate can be configured to run in this way. However, a model converted to float16 weights can still run on the CPU without additional modification: the float16 weights are upsampled to float32 prior to the first inference. This permits a significant reduction in model size in exchange for a minimal impacts to latency and accuracy.\n", + "\n", + "In this tutorial, we train an MNIST model from scratch, check its accuracy in TensorFlow, and then convert the saved model into a Tensorflow Lite flatbuffer\n", + "with float16 quantization. We finally check the\n", + "accuracy of the converted model and compare it to the original saved model. We\n", + "run the training script [mnist.py](https://github.com/tensorflow/models/blob/master/official/mnist/mnist.py) from\n", + "[Tensorflow official MNIST tutorial](https://github.com/tensorflow/models/tree/master/official/mnist).\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "2XsEP17Zelz9" + }, + "source": [ + "## Building an MNIST model" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "dDqqUIZjZjac" + }, + "source": [ + "### Setup" + ] + }, + { + "cell_type": "code", + "metadata": { + "colab_type": "code", + "id": "gyqAw1M9lyab", + "colab": {} + }, + "source": [ + "! pip uninstall -y tensorflow\n", + "! pip install -U tf-nightly" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "code", + "metadata": { + "colab_type": "code", + "id": "WsN6s5L1ieNl", + "colab": {} + }, + "source": [ + "import tensorflow as tf\n", + "tf.enable_eager_execution()" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "code", + "metadata": { + "colab_type": "code", + "id": "00U0taBoe-w7", + "colab": {} + }, + "source": [ + "! git clone --depth 1 https://github.com/tensorflow/models" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "code", + "metadata": { + "id": "c6nb7OPlXs_3", + "colab_type": "code", + "colab": {} + }, + "source": [ + "tf.lite.constants.FLOAT16" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "code", + "metadata": { + "colab_type": "code", + "id": "4XZPtSh-fUOc", + "colab": {} + }, + "source": [ + "import sys\n", + "import os\n", + "\n", + "if sys.version_info.major >= 3:\n", + " import pathlib\n", + "else:\n", + " import pathlib2 as pathlib\n", + "\n", + "# Add `models` to the python path.\n", + "models_path = os.path.join(os.getcwd(), \"models\")\n", + "sys.path.append(models_path)" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "eQ6Q0qqKZogR" + }, + "source": [ + "### Train and export the model" + ] + }, + { + "cell_type": "code", + "metadata": { + "colab_type": "code", + "id": "eMsw_6HujaqM", + "colab": {} + }, + "source": [ + "saved_models_root = \"/tmp/mnist_saved_model\"" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "code", + "metadata": { + "colab_type": "code", + "id": "hWSAjQWagIHl", + "colab": {} + }, + "source": [ + "# The above path addition is not visible to subprocesses, add the path for the subprocess as well.\n", + "!PYTHONPATH={models_path} python models/official/mnist/mnist.py --train_epochs=1 --export_dir {saved_models_root} --data_format=channels_last" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "5NMaNZQCkW9X" + }, + "source": [ + "For the example, we only trained the model for a single epoch, so it only trains to ~96% accuracy.\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "xl8_fzVAZwOh" + }, + "source": [ + "### Convert to a TensorFlow Lite model\n", + "\n", + "The `savedmodel` directory is named with a timestamp. Select the most recent one: " + ] + }, + { + "cell_type": "code", + "metadata": { + "colab_type": "code", + "id": "Xp5oClaZkbtn", + "colab": {} + }, + "source": [ + "saved_model_dir = str(sorted(pathlib.Path(saved_models_root).glob(\"*\"))[-1])\n", + "saved_model_dir" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "AT8BgkKmljOy" + }, + "source": [ + "Using the [Python `TFLiteConverter`](https://www.tensorflow.org/lite/convert/python_api), the saved model can be converted into a TensorFlow Lite model.\n", + "\n", + "First load the model using the `TFLiteConverter`:" + ] + }, + { + "cell_type": "code", + "metadata": { + "colab_type": "code", + "id": "_i8B2nDZmAgQ", + "colab": {} + }, + "source": [ + "import tensorflow as tf\n", + "tf.enable_eager_execution()\n", + "tf.logging.set_verbosity(tf.logging.DEBUG)\n", + "\n", + "converter = tf.lite.TFLiteConverter.from_saved_model(saved_model_dir)\n", + "tflite_model = converter.convert()" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "F2o2ZfF0aiCx" + }, + "source": [ + "Write it out to a `.tflite` file:" + ] + }, + { + "cell_type": "code", + "metadata": { + "colab_type": "code", + "id": "vptWZq2xnclo", + "colab": {} + }, + "source": [ + "tflite_models_dir = pathlib.Path(\"/tmp/mnist_tflite_models/\")\n", + "tflite_models_dir.mkdir(exist_ok=True, parents=True)" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "code", + "metadata": { + "colab_type": "code", + "id": "Ie9pQaQrn5ue", + "colab": {} + }, + "source": [ + "tflite_model_file = tflite_models_dir/\"mnist_model.tflite\"\n", + "tflite_model_file.write_bytes(tflite_model)" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "7BONhYtYocQY" + }, + "source": [ + "To instead quantize the model to float16 on export, first set the `optimizations` flag to use default optimizations. Then specify that float16 is the supported type on the target platform:" + ] + }, + { + "cell_type": "code", + "metadata": { + "colab_type": "code", + "id": "HEZ6ET1AHAS3", + "colab": {} + }, + "source": [ + "tf.logging.set_verbosity(tf.logging.INFO)\n", + "converter.optimizations = [tf.lite.Optimize.DEFAULT]\n", + "converter.target_spec.supported_types = [tf.lite.constants.FLOAT16]" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "xW84iMYjHd9t", + "colab_type": "text" + }, + "source": [ + "Finally, convert the model like usual. Note, by default the converted model will still use float input and outputs for invocation convenience." + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "yuNfl3CoHNK3", + "colab_type": "code", + "colab": {} + }, + "source": [ + "tflite_fp16_model = converter.convert()\n", + "tflite_model_fp16_file = tflite_models_dir/\"mnist_model_quant_f16.tflite\"\n", + "tflite_model_fp16_file.write_bytes(tflite_fp16_model)" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "PhMmUTl4sbkz" + }, + "source": [ + "Note how the resulting file is approximately `1/2` the size." + ] + }, + { + "cell_type": "code", + "metadata": { + "colab_type": "code", + "id": "JExfcfLDscu4", + "colab": {} + }, + "source": [ + "!ls -lh {tflite_models_dir}" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "L8lQHMp_asCq" + }, + "source": [ + "## Run the TensorFlow Lite models" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "-5l6-ciItvX6" + }, + "source": [ + "We can run the TensorFlow Lite model using the Python TensorFlow Lite\n", + "Interpreter. \n", + "\n", + "### Load the test data\n", + "\n", + "First, let's load the MNIST test data to feed to the model:" + ] + }, + { + "cell_type": "code", + "metadata": { + "colab_type": "code", + "id": "eTIuU07NuKFL", + "colab": {} + }, + "source": [ + "import numpy as np\n", + "_, mnist_test = tf.keras.datasets.mnist.load_data()\n", + "images, labels = tf.cast(mnist_test[0], tf.float32)/255.0, mnist_test[1]\n", + "\n", + "mnist_ds = tf.data.Dataset.from_tensor_slices((images, labels)).batch(1)" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "Ap_jE7QRvhPf" + }, + "source": [ + "### Load the model into the interpreters" + ] + }, + { + "cell_type": "code", + "metadata": { + "colab_type": "code", + "id": "Jn16Rc23zTss", + "colab": {} + }, + "source": [ + "interpreter = tf.lite.Interpreter(model_path=str(tflite_model_file))\n", + "interpreter.allocate_tensors()" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "code", + "metadata": { + "colab_type": "code", + "id": "J8Pztk1mvNVL", + "colab": {} + }, + "source": [ + "interpreter_fp16 = tf.lite.Interpreter(model_path=str(tflite_model_fp16_file))\n", + "interpreter_fp16.allocate_tensors()" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "2opUt_JTdyEu" + }, + "source": [ + "### Test the models on one image" + ] + }, + { + "cell_type": "code", + "metadata": { + "colab_type": "code", + "id": "AKslvo2kwWac", + "colab": {} + }, + "source": [ + "for img, label in mnist_ds:\n", + " break\n", + "\n", + "interpreter.set_tensor(interpreter.get_input_details()[0][\"index\"], img)\n", + "interpreter.invoke()\n", + "predictions = interpreter.get_tensor(\n", + " interpreter.get_output_details()[0][\"index\"])" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "code", + "metadata": { + "colab_type": "code", + "id": "XZClM2vo3_bm", + "colab": {} + }, + "source": [ + "import matplotlib.pylab as plt\n", + "\n", + "plt.imshow(img[0])\n", + "template = \"True:{true}, predicted:{predict}\"\n", + "_ = plt.title(template.format(true= str(label[0].numpy()),\n", + " predict=str(predictions[0])))\n", + "plt.grid(False)" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "code", + "metadata": { + "colab_type": "code", + "id": "3gwhv4lKbYZ4", + "colab": {} + }, + "source": [ + "interpreter_fp16.set_tensor(\n", + " interpreter_fp16.get_input_details()[0][\"index\"], img)\n", + "interpreter_fp16.invoke()\n", + "predictions = interpreter_fp16.get_tensor(\n", + " interpreter_fp16.get_output_details()[0][\"index\"])" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "code", + "metadata": { + "colab_type": "code", + "id": "CIH7G_MwbY2x", + "colab": {} + }, + "source": [ + "plt.imshow(img[0])\n", + "template = \"True:{true}, predicted:{predict}\"\n", + "_ = plt.title(template.format(true= str(label[0].numpy()),\n", + " predict=str(predictions[0])))\n", + "plt.grid(False)" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "LwN7uIdCd8Gw" + }, + "source": [ + "### Evaluate the models" + ] + }, + { + "cell_type": "code", + "metadata": { + "colab_type": "code", + "id": "05aeAuWjvjPx", + "colab": {} + }, + "source": [ + "def eval_model(interpreter, mnist_ds):\n", + " total_seen = 0\n", + " num_correct = 0\n", + "\n", + " input_index = interpreter.get_input_details()[0][\"index\"]\n", + " output_index = interpreter.get_output_details()[0][\"index\"]\n", + " for img, label in mnist_ds:\n", + " total_seen += 1\n", + " interpreter.set_tensor(input_index, img)\n", + " interpreter.invoke()\n", + " predictions = interpreter.get_tensor(output_index)\n", + " if predictions == label.numpy():\n", + " num_correct += 1\n", + "\n", + " if total_seen % 500 == 0:\n", + " print(\"Accuracy after %i images: %f\" %\n", + " (total_seen, float(num_correct) / float(total_seen)))\n", + "\n", + " return float(num_correct) / float(total_seen)" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "code", + "metadata": { + "colab_type": "code", + "id": "T5mWkSbMcU5z", + "colab": {} + }, + "source": [ + "print(eval_model(interpreter, mnist_ds))" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "Km3cY9ry8ZlG" + }, + "source": [ + "We can repeat the evaluation on the float16 quantized model to obtain:\n" + ] + }, + { + "cell_type": "code", + "metadata": { + "colab_type": "code", + "id": "-9cnwiPp6EGm", + "colab": {} + }, + "source": [ + "# NOTE: Colab runs on server CPUs. At the time of writing this, TensorFlow Lite\n", + "# doesn't have super optimized server CPU kernels. For this reason this may be\n", + "# slower than the above float interpreter. But for mobile CPUs, considerable\n", + "# speedup can be observed.\n", + "print(eval_model(interpreter_fp16, mnist_ds))\n" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "L7lfxkor8pgv" + }, + "source": [ + "In this example, we have quantized a model to float16 with no difference in the accuracy.\n", + "\n", + "It's also possible to evaluate the fp16 quantized model on the GPU. To perform all arithmetic with the reduced precision values, be sure to create the `TfLiteGPUDelegateOptions` struct in your app and set `precision_loss_allowed` to `1`, like this:\n", + "\n", + "```\n", + "//Prepare GPU delegate.\n", + "const TfLiteGpuDelegateOptions options = {\n", + " .metadata = NULL,\n", + " .compile_options = {\n", + " .precision_loss_allowed = 1, // FP16\n", + " .preferred_gl_object_type = TFLITE_GL_OBJECT_TYPE_FASTEST,\n", + " .dynamic_batch_enabled = 0, // Not fully functional yet\n", + " },\n", + "};\n", + "```\n", + "\n", + "Detailed documentation on the TFLite GPU delegate and how to use it in your application can be found [here](https://www.tensorflow.org/lite/performance/gpu_advanced?source=post_page---------------------------)" + ] + } + ] +} \ No newline at end of file diff --git a/tensorflow/lite/tutorials/post_training_integer_quant.ipynb b/tensorflow/lite/g3doc/performance/post_training_integer_quant.ipynb similarity index 100% rename from tensorflow/lite/tutorials/post_training_integer_quant.ipynb rename to tensorflow/lite/g3doc/performance/post_training_integer_quant.ipynb diff --git a/tensorflow/lite/tutorials/post_training_quant.ipynb b/tensorflow/lite/g3doc/performance/post_training_quant.ipynb similarity index 100% rename from tensorflow/lite/tutorials/post_training_quant.ipynb rename to tensorflow/lite/g3doc/performance/post_training_quant.ipynb diff --git a/tensorflow/lite/g3doc/performance/post_training_quantization.md b/tensorflow/lite/g3doc/performance/post_training_quantization.md index 69ebf7ee4a0..30f8c0992e0 100644 --- a/tensorflow/lite/g3doc/performance/post_training_quantization.md +++ b/tensorflow/lite/g3doc/performance/post_training_quantization.md @@ -8,6 +8,20 @@ conversion. ### Optimization options +There are several post training quantization options to choose from. Here is a +summary table of the choices and the benefits they provide: + +| Technique | Benefits | Hardware | +| ---------------------- | ------------------------- | ------------------- | +| Post training "hybrid" | 4x smaller, 2-3x speedup, | CPU | +: : accuracy : : +| Post training integer | 4x smaller, More speedup | CPU, Edge TPU, etc. | +| Post training fp16 | 2x smaller, Potential GPU | CPU/GPU | +: : acceleration : : + +This decision tree can help determine which post-training quantization method is +best for your use case: +  ### Quantizing weights @@ -78,6 +92,35 @@ Note: `target_spec.supported_ops` was previously `target_ops` in the Python API. This makes the converter throw an error if it encounters an operation it cannot currently quantize. +### Float16 quantization of weights + +We can reduce the size of a floating point model by quantizing the weights to +float16, the IEEE standard for 16 bit floating point numbers. The advantages of +this quantization are as follows: + +- reduce model size by up to half (since all weights are now half the original + size) +- minimal loss in accuracy +- some delegates (e.g. the GPU delegate) can operate directly on float16 data, + which results in faster execution than float32 computations. + +This quantization may not be a good choice if you need maximum performance (a +quantization to fixed point math would be better in that case). To enable +float16 quantization of weights, specify "DEFAULT" optimization as above and +then specify that float16 is in supported types for the target_spec: + +``` +import tensorflow as tf +converter = tf.lite.TFLiteConverter.from_saved_model(saved_model_dir) +converter.optimizations = [tf.lite.Optimize.DEFAULT] +converter.target_spec.supported_types = [tf.lite.constants.FLOAT16] +tflite_quant_model = converter.convert() +``` + +By default, a float16 quantized model will "dequantize" the weights values to +float32 when run on the CPU. The GPU delegate will not perform this +dequantization, since it can operate on float16 data. + ### Model accuracy Since weights are quantized post training, there could be an accuracy loss,