From 24091c60a0a38a503628b2cc5903bafa15565aaa Mon Sep 17 00:00:00 2001 From: CyC2018 <1029579233@qq.com> Date: Sun, 24 Feb 2019 11:07:49 +0800 Subject: [PATCH] auto commit --- docs/notes/Java 虚拟机.md | 51 ++++++++++-------- .../805812fa-6ab5-4b8f-a0aa-3bdcadaa829d.png | Bin 0 -> 91136 bytes .../805812fa-6ab5-4b8f-a0aa-3bdcadaa829d.png | Bin 0 -> 91136 bytes 3 files changed, 28 insertions(+), 23 deletions(-) create mode 100644 docs/notes/pics/805812fa-6ab5-4b8f-a0aa-3bdcadaa829d.png create mode 100644 docs/pics/805812fa-6ab5-4b8f-a0aa-3bdcadaa829d.png diff --git a/docs/notes/Java 虚拟机.md b/docs/notes/Java 虚拟机.md index 023b3831..8a903300 100644 --- a/docs/notes/Java 虚拟机.md +++ b/docs/notes/Java 虚拟机.md @@ -103,9 +103,7 @@ Class 文件中的常量池(编译器生成的字面量和符号引用)会 # 二、垃圾收集 -垃圾收集主要是针对堆和方法区进行。 - -程序计数器、虚拟机栈和本地方法栈这三个区域属于线程私有的,只存在于线程的生命周期内,线程结束之后也会消失,因此不需要对这三个区域进行垃圾回收。 +垃圾收集主要是针对堆和方法区进行。程序计数器、虚拟机栈和本地方法栈这三个区域属于线程私有的,只存在于线程的生命周期内,线程结束之后就会消失,因此不需要对这三个区域进行垃圾回收。 ## 判断一个对象是否可被回收 @@ -113,7 +111,7 @@ Class 文件中的常量池(编译器生成的字面量和符号引用)会 为对象添加一个引用计数器,当对象增加一个引用时计数器加 1,引用失效时计数器减 1。引用计数为 0 的对象可被回收。 -在两个对象出现循环引用的情况下,此时引用计数器永远不为 0,导致无法对它们进行回收。正因为循环引用的存在,因此 Java 虚拟机不使用引用计数算法。 +在两个对象出现循环引用的情况下,此时引用计数器永远不为 0,导致无法对它们进行回收。正是因为循环引用的存在,因此 Java 虚拟机不使用引用计数算法。 ```java public class Test { @@ -131,9 +129,9 @@ public class Test { ### 2. 可达性分析算法 -将 GC Roots 作为起始点进行搜索,可达的对象都是存活的,不可达的对象可被回收。 +以 GC Roots 为起始点进行搜索,可达的对象都是存活的,不可达的对象可被回收。 -Java 虚拟机使用该算法来判断对象是否可被回收,在 Java 中 GC Roots 一般包含以下内容: +Java 虚拟机使用该算法来判断对象是否可被回收,GC Roots 一般包含以下内容: - 虚拟机栈中局部变量表中引用的对象 - 本地方法栈中 JNI 中引用的对象 @@ -148,9 +146,9 @@ Java 虚拟机使用该算法来判断对象是否可被回收,在 Java 中 GC 主要是对常量池的回收和对类的卸载。 -为了避免内存溢出,在大量使用反射、动态代理的场景都需要虚拟机具备类卸载功能。 +为了避免内存溢出,在大量使用反射和动态代理的场景都需要虚拟机具备类卸载功能。 -类的卸载条件很多,需要满足以下三个条件,但是满足了也不一定会被卸载: +类的卸载条件很多,需要满足以下三个条件,并且满足了条件也不一定会被卸载: - 该类所有的实例都已经被回收,此时堆中不存在该类的任何实例。 - 加载该类的 ClassLoader 已经被回收。 @@ -158,7 +156,7 @@ Java 虚拟机使用该算法来判断对象是否可被回收,在 Java 中 GC ### 4. finalize() -类似 C++ 的析构函数,用于关闭外部资源。try-finally 等方式可以做的更好,并且该方法运行代价很高,不确定性大,无法保证各个对象的调用顺序,因此最好不要使用。 +类似 C++ 的析构函数,用于关闭外部资源。但是 try-finally 等方式可以做得更好,并且该方法运行代价很高,不确定性大,无法保证各个对象的调用顺序,因此最好不要使用。 当一个对象可被回收时,如果需要执行该对象的 finalize() 方法,那么就有可能在该方法中让对象重新被引用,从而实现自救。自救只能进行一次,如果回收的对象之前调用了 finalize() 方法自救,后面回收时不会再调用该方法。 @@ -464,9 +462,10 @@ G1 把堆划分成多个大小相等的独立区域(Region),新生代和 加载过程完成以下三件事: -- 通过一个类的全限定名来获取定义此类的二进制字节流。 -- 将这个字节流所代表的静态存储结构转化为方法区的运行时存储结构。 -- 在内存中生成一个代表这个类的 Class 对象,作为方法区这个类的各种数据的访问入口。 +- 通过类的完全限定名称获取定义该类的二进制字节流。 +- 将该字节流表示的静态存储结构转换为方法区的运行时存储结构。 +- 在内存中生成一个代表该类的 Class 对象,作为方法区中该类各种数据的访问入口。 + 其中二进制字节流可以从以下方式中获取: @@ -483,9 +482,7 @@ G1 把堆划分成多个大小相等的独立区域(Region),新生代和 类变量是被 static 修饰的变量,准备阶段为类变量分配内存并设置初始值,使用的是方法区的内存。 -实例变量不会在这阶段分配内存,它将会在对象实例化时随着对象一起分配在堆中。 - -注意,实例化不是类加载的一个过程,类加载发生在所有实例化操作之前,并且类加载只进行一次,实例化可以进行多次。 +实例变量不会在这阶段分配内存,它会在对象实例化时随着对象一起被分配在堆中。应该注意到,实例化不是类加载的一个过程,类加载发生在所有实例化操作之前,并且类加载只进行一次,实例化可以进行多次。 初始值一般为 0 值,例如下面的类变量 value 被初始化为 0 而不是 123。 @@ -493,7 +490,7 @@ G1 把堆划分成多个大小相等的独立区域(Region),新生代和 public static int value = 123; ``` -如果类变量是常量,那么会按照表达式来进行初始化,而不是赋值为 0。 +如果类变量是常量,那么它将初始化为表达式所定义的值而不是 0。例如下面的常量 value 被初始化为 123 而不是 0。 ```java public static final int value = 123; @@ -505,9 +502,15 @@ public static final int value = 123; 其中解析过程在某些情况下可以在初始化阶段之后再开始,这是为了支持 Java 的动态绑定。 +
+ ### 5. 初始化 -初始化阶段才真正开始执行类中定义的 Java 程序代码。初始化阶段即虚拟机执行类构造器 <clinit>() 方法的过程。在准备阶段,类变量已经赋过一次系统要求的初始值,而在初始化阶段,根据程序员通过程序制定的主观计划去初始化类变量和其它资源。 + + +初始化阶段才真正开始执行类中定义的 Java 程序代码。初始化阶段是虚拟机执行类构造器 <clinit>() 方法的过程。在准备阶段,类变量已经赋过一次系统要求的初始值,而在初始化阶段,根据程序员通过程序制定的主观计划去初始化类变量和其它资源。 + +在准备阶段,已经为类变量分配了系统所需的初始值,并且在初始化阶段,根据程序员通过程序进行的主观计划来初始化类变量和其他资源。 <clinit>() 是由编译器自动收集类中所有类变量的赋值动作和静态语句块中的语句合并产生的,编译器收集的顺序由语句在源文件中出现的顺序决定。特别注意的是,静态语句块只能访问到定义在它之前的类变量,定义在它之后的类变量只能赋值,不能访问。例如以下代码: @@ -604,23 +607,25 @@ System.out.println(ConstClass.HELLOWORLD); - 应用程序类加载器(Application ClassLoader)这个类加载器是由 AppClassLoader(sun.misc.Launcher$AppClassLoader)实现的。由于这个类加载器是 ClassLoader 中的 getSystemClassLoader() 方法的返回值,因此一般称为系统类加载器。它负责加载用户类路径(ClassPath)上所指定的类库,开发者可以直接使用这个类加载器,如果应用程序中没有自定义过自己的类加载器,一般情况下这个就是程序中默认的类加载器。 + + ## 双亲委派模型 -应用程序都是由三种类加载器相互配合进行加载的,如果有必要,还可以加入自己定义的类加载器。 +应用程序是由三种类加载器互相配合从而实现类加载,除此之外还可以加入自己定义的类加载器。 -下图展示的类加载器之间的层次关系,称为类加载器的双亲委派模型(Parents Delegation Model)。该模型要求除了顶层的启动类加载器外,其余的类加载器都要有自己的父类加载器。这里类加载器之间的父子关系一般通过组合(Composition)关系来实现,而不是通过继承(Inheritance)的关系实现。 +下图展示了类加载器之间的层次关系,称为双亲委派模型(Parents Delegation Model)。该模型要求除了顶层的启动类加载器外,其它的类加载器都要有自己的父类加载器。类加载器之间的父子关系一般通过组合关系(Composition)来实现,而不是继承关系(Inheritance)。 -@y35R_#2N}o6uoG(eQGQ zp*ETo=TnPt8vI1{tD32oGBmn_WYSJ6t-(Lq^N&EV=buR5+hdz!xyr!)BElAz3*5j~ z3ClNzkm1*{=F)2GSvQlDwdj@3v+BFq)r^q5zj((!d!Em)50%m@{@6P^k_$=X)IZ`o zw_TajUi6O_nHy*u;mtDCq6w*64*Z--@tQ$^MQ#7VhDtNz)84zy((tq1pqMQ1L0Nc< z8^)a9``ABN*<0q0KEp9qeHaHAjX4@hJk{+rcBPFQ8q+N&vZB>Z7RaOy0D;+?q5De- z=9f)=$7rGcKWD?HpIN=y_-H^Px6YNKhQsnEr!sg?KE!jKT)6r|k5t^Wb8pQ^kJyv? zLI2bksJynS&yBZBbGFW*LZI4fGuy+np{#Sc9Yr)Jc58nt@pNP-vWLwxQ(!N0`PY`A zVz%ojkC q>wLH`{EHzfsg7t3p##$goY5i>SX1LV)RZB$7#&%2p97|d2~s~ znsLACNgd0oFb~JSIb7Vw(w_yb^J5!Rb^yp}Rt$<+2{LGJe~goE
(v!9 z!L4k>{P-wJ9;e3>8&YZGs&|R6=6A_;d(0L%EcUg0F<{h~1j5J^-*`l5^L!1bw6-%u zcymL-0XTtM$(<%v%xHk~-t_?|Q~Jle6elY_=!bN?yyVXD9;VmAkZu#ob^-_iOE^m3 ztONgkBDgr&n%J;!%=rf4Kb&p^daiKe&4Nw!T~a@TvL-A}T(7R;U7tuwwdPoQVO7IR z9T#I>){8iDEE<>fTNO QCjktswNr^ab#wwwRqtba& Z*~>H*TiUWL^dVHP(i5@*d-$-12b|J==FZG=~lrb5{%B=~xj9 z6{K_m2>u2zgh(x(r8`>HxN7(a%#s>#TISy29B8`fTPRy }5g zkg8GC-osoQzc`;%%V(}dTs`T{QUB3TXPPGt0+CUipAupDW7WT)c^m1PId0_IL}`?3 zS1oj&^u4ME`LoD0REYkqw(`#O$p-)kG2Zss?>!EaUxzR4=q~S7C}qVwlkp!Fl|Xg< z7uH&h@_BYGVJ)G(a;N&$HW|eP_`Kmtrq_Vdh#-X%B|I7eYLVM5+NW}DbXv#|t8h8p zJL&{O2j|2kHac#y%8E@7E* O1_C{Rn)4oY&*#tr0y>QE_nb}5aWPq?nH-^6`wjCAR>GRrD|F8p;dO`oW#FlsZ7 z-27#D_UCx-Z4rgwGL`x1*f6K?3gJyyT-=5GnQdcT3}Y$8mUv&yU-cuavKRCu= i@4I3CVH} zZFE4V51-7(#m&s { zVGcs2rGGA&wUk a^;VovUPA+c|I^Z1(wr=xzo&->L-~|VE}eSczrHJ*nuxx9 z`GP*P_oFu)%lKlmze Bh4{x77_C8EJ&Z z)r<$7J3h8^6*oW6 !3ib z)niDz^mmF?jN}%Pn7GU7#hID7_)MYC+soZpix+3T!-nY0{5=0E08o$dZ)#`Ej+Yv- z4h|0Jk9)qUsD#`c%`>^bQUR@){_A)wjmLiVLvKwR50`dv1cc>Zohy%fqbm?@m=Hi} zm+TI#N%q bdv9;ixi~x#xqIJL|B%BxNZOTsaXN7{)3YCe &KUN1-pUwVlIK_}y;|3@VSj&iQx&0rd#~2IC@MP*9Nj>lggn{h-kK#UQ2e zW?#g_flF+$o2RGeLbEgd^2!Q_^&GRn%k}j6<)t#kmvQLB`2NRd|I^9Yxp&FFGe(xR zSsZ1G-b-1pSKZH~wBDxO?`n((KuS77e*~E1{r91X@2PzKI{GEp#d^E#(lX*?snPzJ zKvdkN;+**(LiPVYhU))Y7))^ye$W~SOm({6R~lsEqck-)-#Ter3;S)-W16ZP79Wr8 z;pLU5-Dsy+x=7*D5fK}^>qwj0|8G?ubt6&sZS;nBPcJ--Sk*HMsWPh8X1n+$5Xxlx zzw$ySoZR^T%zz~ZrVsT)*Y^4dTc?U2PBRd?%$zha0{IHvDeKOJ0?JdxSqsmH4BwY) zV(_$Q1*Yqe{KtBQ36nFy-s~@(21w>Rex(MgS6%I8I~eSs?z{4}Jsy@iI6HqEkP;U^ zhy9_0>ivd0=_&GXzS9*LY>k0gQ`y$`d3 a{VddaOc(IOiA?iY;?R@j$pA8eEp7sXOCT= zV-lGfj8>33^M{sYu (@3Utc6Z7lC z`|4|e{>*tZr2C9GXLBL3_Tw$w&hYO*i>kd3A=+LMv_yPnAnh(VgE1yb2Nx}Q;W&4R zJ2r;vm5Dy82~mZ0A^86Kgy!^&XtbZ?cRp2;i^4^HH2Wuk3`A@kMrXM7j0Ztl3;r;T zyG~s=e{xUO$s&X*8x>FPzcLM$@x{ovO*gP@VCuVFbtdIQ;8`oWmf|O5>j_L|%E5ng zGapTZY1fOpzxNQAl8RcxKNWByhk71hi(&+xg|$rqKCkDVkB$C0T*LSq4F7k=9KyiG zlv?zRz46{T%ANZYhFY*A0j?D)6cbTKC|!gt-RTR?t;5DgFlGN?8>6XCxrpnyQUAGN zA7k{%f~KVZqm3HJ5b@~4=j+93jb=W=-62-w3$+i_Z3%L7n&V3X%WC#d@Xpy@@N0q> z4z-4hVFG{<=Y-enxa!NTyXxny{-Fv&m?j4_?zcU$GVCoka)v;OIT7Y*_b!*~NPKFq ztD=RfdUS$n|54W+2r~nG5Fd4$vwGcCg@~#l_2FS(omMp^YDrGqK{S|EccYY*V0zd9 zZ%J015c8k PmE%y8Xu1iFs0k7G5)$>Eym z2GXZn8J67%8;HMKMqCYHvLk~LQWgAKb2OOyaKGFAbiRdE%pO(cwLksi{_xfNqTko( z{xv6UungYTcJ!SK1qhaWQ?L&q82zxOBa{6+#@*qn?C#=D^G)2n9rJL(GVOAg`Qp|0 zD;X(5jEzhMcUK;! zFbVW>PKJi*f}lc0HB|C)v7qR9G$=K9sDg{voQQW8mgjeDp6C<*h*!b{%$# z$+lfngdI{Hi>Ru`*->)~;yL)a%LH-Ve?TE2ZpqTVXA(BDJl%{SucWF{Wii^_+F=kb zu%Kk;vd_BO
v29`55e2i3lh&ut9k zFzTS-k-?DeDo+A}aRrI4U*;UjcW^1sNfq#p1@bk?x@C=q4>4QYd|Xc6ecl;1#FT-u zt1XCrOJ>HCamAaPVl%1))e(;oE$;2!+?&c2-H{lQ)q=N{w{usY(Y 6>oIl!DG3nPbvSDHywS)UT68XogzaX_}88) z?CSwq ^<@qT3;jYFXMwK2vmv+b4J(i7piCSERKAR z6-vGn|7EQr^@=5rbqfSG@n0s 7SCMalGZz)1{qXOuD;)-2@QUWaCMP*?p>tTAVbED^=#X#3=o ztjJO?HE$V=ZBQOsEgxnxXi>~ajKo7OlF3T4B1tc-ofQ#8L(JfQ6i$IcJ@Mof6+a~G z!H5oJNj_^%!$O(iIFq9?WcJ&(ydW7pu*R#nM=_JIqt-{Kxb1ws!m-QzAz4{bJ1aV? zou{ya;wL2);OY{zAUFdzsVkOSDgX{f+cokx!dC%-CPs$$T_%zW*4KOfRJ;A=!&CF_ zs+7eN4~cYOnQGT659~L=X1WcS6Px}O`mlYyp>&?GqpHdv`!_ECsn#$l+s`QTV_mUP zOTI7I=0lw5V8pz^&^vviGLC(ZgLm*MXI+mxYdzoH^#<9_xQRi}m`^-ql829!)sO8w z)z3ouM$ D-?*de)U9vtp`p>ejWHVpEY>@A$VOoAsTM2GbS`nApGQ@KE7S-{f?SfgWLHf z!0^$f5{B87LFS9-KuSA9@wZ- KaFywcjBDwf4^-&cB!(pVS%eYLN?hX`Mv_Dn*oxD+v(zO?yMOlLJ? z=(>
9^&`%EiWW(23Ol8QX0-t7IRbbE&pWIF9ARUu7~Bie=v;Nz@bQwMrz(EO zMOS0&>306d %Xc2(7Jb~5-PH&}Mp7*(>D}KFus<|(`?E_5K9CiH9^vWM zd`ZLPiK5@dAP`t=2s)tiA+|;-+6H(JPVPIOkQ2SFZ>2q6M>Rbzen6hLR^Y$FO|Ukm z{1 O-YMU!evy8U2)a6_Je6HZGCfoOhjzuU zS=PC?R&`q?=rh{f=Vc?evvl4QdUF-Nu8?~R>Bi=H)!JaHA<{C;tLMlx+#mW%RHbfc zM&nV+4f}86%HRu9q^^7 >d~JaGO4(l$da%WreD zK1;^c-Rbwu&3JXu!|OrBRqFvHYuFww#n>*tU-r!(l|NMaC`>zJ4}e^8H=kV<3;qoL z#G21teNQ*UcObAn?}&{vpdh^Gp%1aGXIN||TJl>B>|reUy*6&mNhjcs-?L0yq7dc_ zIq>Nw_~-8A7CgTC-mF38sG?;8`CA3GA5MxTb+3rMy(0h@g)YSew%uBhX !yAk2E#{S?_tk5A!kA^OAd6yufad<1oY4 zX~Z520aMKrba|O&+;OreEOvt4aof8zJ2GA`b%-b{!+hPyXZJ9mg5qbqTn<-`;RWYZ zn0|Kzw Dd+WWsE{S+ zasyEVPwArq>5?eM)L< w8Cr{D9Y_G8&G2z8 z|3whPbpfz?TXVm@u7)?wa_G2Dzw@x}mr}A}>${JNFN+fIX|LQ&SsdJJzS*cop3qFF zw?_L4tdev)f-gs&f#MU&afOVx6 ldUc*8l%*Q%a5}wi+E|~y|Gt6(@ddJTm6tOc;H1DSrOl%cG(8+@CPX)10&4ufm z7$Ei@RkDT{%Ui9~c0 UMJ&R2wc4scYJWW(xUceqRiT;+?F7EpJxrPprY2KDp;M&7rS#^K8^~ z>W6CVRBr)2qNpkx=JEtgKQ)Yd!AI>Ki`FwD2HQ2k8J~4x8n(bfIe9Vy-x~NIysA}^ zaUTknq%S1jpT@H+W^NeDipy`B9qUxjug?BL+1g+k?zL2&&RCAD^dVIfx_iG1x?$)b z?ERh{#}Ee)`nYHL{CtXZ|1zc!pQetMtVUl!=tg7Ne DkyexBe;S2KJN E`+yd-wnCY1(BdJ``t20BET#L zys_Gj4ag1qAVjKK^VB!~aDP(Tyx=b!({!ZQvwif`{YN)u*mlkEU ~ zlcGl*OE9dTa!f=<5(Arq#5mgvd4*;r$C3vpRnQZOFC3zj*@k|k?~k)4aQ?32jRSC_ zRzF2lPRWhAQodAm+qnk30JlAbWAzvXCs(n0Vzm$$L)F*b@J9aEB(X~AK1|XuRvO8i zkp;_ro<0h%rI=RTQEv=Bcu4Mn6BixG1;0mti$SXveGw7O<;9Dp?qU;&^klXu_V6d_ zB=EUunQj`h*Qdo@mOAe$Y}d2_rs{quWZ7x&jj8V{Ft;m_dsvHkdG!>BZUEJ4H8nR zDtd-cd-V~yfbnzrgpg);^@#kAG~f{ide_ug5BW&|es+*>tRSP7yxwG i&4b1 zWl`)&cRW7YKCtVeffJU9^dN-=A>G_kIe%Wuh_^vwxO%_dulK18?zji5`EZ+I(V~sH zP{f`xZh>``eVd>MPk=1Hf*4UBP*wgA@i~1j7!$WBcYZ {dVxVO+;rvM|DynyWett28U&Jc{ z+#jfbsr{`!&zhHLp0`rArQ+XJgQ9Fq39=C{Up_37nI?A`>!)0Xf-Y{csHMl5D7RLs zbaqC3V;{C#PK@8Ai{tXk1}0^g*P?EQq>`ERnUl7?d6j <@qD=+sf^9d)AM4VOtuo$iC|PH$V0yA~#H>VlwD#4Z`syvL#!lQ_Zvdkbmm zz}ZFkg|xK4xJRw^)r{Hgzl<-rG;g-otR{w9et|wYHdbl4=9sNdwi%s+^Q+3P(C??h zB)*?HHyR)4=a`1Mzh5zp;7pT^BrDje3^P?~%j2G%&_?XT{);jGFLkF(d_ I|5G&N zt5#felC88nvvP-tha}XKVkrm(H47E=EFY(MnlDsmE_B#^z 38SXo#T) zI{)q-P!*OpQvb=}VzkKdg$b&vBE1DBs4ECJmKNsucA<1I%%_*>SD$|YoD=-2Z=%2a zVahxbSX_awieFeeWu(=9<;?7NL<&fEHpC{xc1?Dz(i&F!u7A`t9o~jJqzM5p4APb2 zyM}q~$Wxfhx{9PUX~Zw>6N!l1;{3B?i|e~EJUbHfedq@fX_yJ;=T{=aPZay?k22`Q z(*O$k);DL_dM-%4hNAm@+ND8qEv-XORMW;RkHdw5kj3~pJ@{h6=lS+TUWHf?TW|+P z=js-z$x0cWlSI(Pi`;_=16qUqAAA$*jX~-onMuV$sIoOWpUxa^2S#JCb<;|EzUANV z_ktb%#vm);BhAM?Ie7wf=*Bl#0>3Q8%KeYWkJqHfiy1J+F@T12nxVyJl;8X^8%srK zKG#Ogg*e-`dcnWQz2h^JLbcre;UB#jkE(wC84OAViCIchdXQ@e#psU{jxYwQ53-(L z#W(uHl_aJZpV`Y+-|Xop)Y)N7eH6rA{RDezg _77OQnw7%4_a)H#9L?QB6h%de5 z`?YMO(ovUT1-zE!Px!lJ9JzEcWNdA$yCUXCRj9jom49zTrtmClnfDz%9*GKa)+6#j zOhj jq#lX22Birx^d43SH=MX|6dLETQS|SD@nT zf2y+I ~Ode6YlM>pgL;Mospx+I3`hQ1aG+}$|O1(bYm?v zX&gVbYeFi=MGWmQU?0B Z^&&;_UXxGQ#`Hi6P|# zhFYxiR-(RgF+>8`yhc>85)Qf#mq-ik^u(dzaXI_ajIp*WVCKfGeY`z1v8j*8{E7jW z!5NMg_H>L)rAq2fMB!+n6Xp8vt>)V!vpbezpUXsNR8^yd)r0@G$=st82O0cvB75EF zT&T@Q)`RQwX2Y;@^NsC48 f2jAXVi7qijehhKAVbds%RBL-k{(@ywvD#0D@vqG=0t6VP|coTu&FFo z9z$iD<5FqtA-3BW*cr>xgr6Gd)-yS{h*kyO!%t}OSsp(6+f8@XXJ`d>XyPj!qMKP^ zEhn|}<+Tv)0K`I04&Pe=6SLi3s(Jl%mP6%ympd>K2u10n4zhAdP2krCAO7uQUv=`x z=YYDgr`!V&d~U~}!}$sCLZ@~4y{>lnXy4Z)0{q-<155!#41&Qk|9xeb6n4ewhdd1b zM{Gc*0!fSMHnsN)-}~~#u%B%{D%*rP6%BZ_w7}01Z=B?n14*r6-78M;&>aw1bH3N; zYW5$(SZp{41fB5nkk%qdSG|yU1o#lBwE*!zI^#=i=w3vgH!N~EjG?qQ8mAIl WuKzn@nd{j^}%ZFxFe`&azjVN#Cwu aJ?y%T1lbp<>jMp;@ zQ=L2Mv_5vtFsamj( W-a@{cLoa+C*|UeIbTM}xbt8r z4fHV)LwNMP&c(zmaOUt>VRO2 jVwc80l$4H_fR)mg`YN&CpzE><9N9#Q^;KGS{S=tRM}{T+T*IgE?xyzbw+= z$zElq)hx!P9dlr--f<}yKICDkHTP$1-dJZ|mqF0ky}!YA8Y?pLd0?v^0cLPxC2C1i z);=($2vmnHtM>xmilsv1urRwnw<;Dg=OK=D7b=q&lxg1)J=;kx?z@eQ-U5NUmeZON z6zJ!0XtOIZ+Oxt-8#B^h4pWNtopcB5oKh!&eU<8zX3FQ5%k1oGNSheZK_H_DC=JJ2 z-^FL}@zEWNU{D3kb?BYTA@$tJXB$_f1}gRAv-RrK9v)*9KmQx@V|gx-9U-#zr$@2r z2?VKmEE u`YTr7;hb|ar)Cic$Cr)txMzPbwWsraj6P!4PeNy-wIjHnKV}$2HAVurGNclZ( ze^)x99oXyg5cNb6ZjZ*EfJ2?9_O{+Fn!f%o({ViHoWQo8_D_g{*9>8C;J^}2l&7~V zV28gm^=0X3UJ74`f-jExGCOSdUmO#*CnB_LAAEl09mguR9g`$q>er| k>J&wOKg%+ZpJ-`^5mN0n91>68Z<;5PD`vTC%t(Y>?Ywn|6?iK} zFu1gDpy*tU-hglCDYCip1cTa48;KkR!biJQ961PfrcL+&FFXIlu5ldN)Pw5@aE^1& zYcBp%^~G3RyoODf_Zv0X>07?th`C1nsRu;$zFsUoS{j(o9qT$B=|N{fGqI75#17rM z@7RBBh>SVWqh_x#R-X(sjan~^Lk|zfSr*T^`Yu$fsAPygqTJg!C?4&*YpdgXW@=GX z*;CD{PgBsh{9fblQN^q`0~-^gM7*k%p|IlspxVbBT7_#Z!J!og(viGsEe ?cX}%clb>v$1i_RCjmP;-)8<;G;UPxw zy5(&B0FKpoyeuH^5Z;bz-NNv8QvPez*hMB-_P1^yI0>%oX>k=i7{2^mkWW*D74s ztE5WPl|F7nM4&Kp $*8=f3_y|>S9$&zOk$DVTc!syLsw9EHrQXD20%mS`z zX(Vis?>W?at;DNRUlK`IaVCHKSDfUAN1#>=>l=N)oixPOJKMt`s^w+`tidwtrg~}` zZZ&FqCZ0mIJtqUfCE7Qk (=|#RsG)nO~^iH@3oj~&N0Un@f20PL^^W`W*~Eii6R3z&tMlA z%{DU|&8L7V_*u1}O{-vA`<$u`%GvCKFsG*H(3hOT;kOC5nD6kdc3=Ht$iSgMqk3hq zeq^kJoc0uyPtH|~KMfzG>CDHR;-xR68D;0B{`$txV(5I)85R7|9?Sw!jdA?Z-A?s+ zs#|K{oM-eoX{oEY{rA=7gp$5G{-3Iz(+>SajGAE74>3&gHL@)S3pKB9B zJB-d%MXD!m8?1?DS}u6hnKZ+Ow(@A%2juWJyX!bj8F>SLc4bK2o1&_>-q5zC-M?$| zIsz9Rjgg%=8ZbPG9Yr t&xr*Vvm=z z1)A_>R_@S=b|Xw%UNL8maR=>HDY~k_jN$}+n1fsiEkqxp1lv0Ruye$#MA5YR50|`{ zbKRSmB?E;b17n*8(&gN<)OVkC$YaCM`?g}XY9kM=a${4Y(o!@HULMq-J!Q^$4x#HI zN9NvWvA$x%Q{G^T-lCc$B{#(L67shgQ?>67`-tACIEb1Q>cs(RL*!GDync+0flqkt zW%8zZ0EVw|g(@lWCJ`nTW?6WyWqe|i7$Nd2?YxmbQjHdpiz$Jl+jC${mT!2{YPpbb z2%$bDlg2=?TH6^SR>&2pqLui0!+FEqK>1i&jf3;D_Ak=DFr`HVD7$9p03H BIaOa{cS)XSuZHT6E+BbCdB!Z^USgrkYc~BrnmN6EpNR! z(w5W+E!@--xdAn(sj(A4@zMn!rK}%4F`ln;S2(t87U90b7IAx`!{K>HBxQNWGV(fp znRXEaM>Po@7X%eQ;aAU$bb3}DANnnYD%ZdsmlFrs&xeTGR@xt>pj91we>J*1J#@Iz zgo&oc@osVvSKLKt5IaGNn!`Js<-QS@L~gmpgx+UAQ$5&$(8(-X^dokunLkVh`;b|d z1?+h~3XajQkR(5e{px>C)19~*BNZ)!2+xQ{n7s`G*CBHs`e9#VFIGA-4-Dl OYxJ=oivEMlP(PN^VHR4h0yA^zC9QoFQLbvN(I96{DM z2Ob42RGl8OO84tA>n~eo$!0_THTqL6Mwvt^O2+xfKA>|Cf)d#yOiB4Grp$%ELKxSb zhb2jlrnRUK`vGGnsB6Ht!zghY(n_4;qMGi@%sr^c2fKy1zBVWyQi}++qjeM=`jLC5 zVpzPVjRE?K*#F%rb=h25WrXP>12w*toOJl?;KM-jeyB*Yrz)=MU&>F=JljM+ZrFC7 zDEsJ(0~VMu*Oh!(a0+rnW(jhH>E;eD6chCWJ WFAtV hMbPq>L{7cTc?Pic%!JiP$rpM4h*&?nfIKN^; erJGNn$m%0Mm0YQ#_X7s1#^gJds4 zZJoqCrkE0oI)U@1?W+R9!rGs-J?zBv+&_z+KHr3Nu$DPEmRx4^@C{sH#kjRl=hlP* zRX*VQ-|V6iHpTjnbZ98;V|-d##N3L{nAa0@(I>)QY>*>N8n4@%>*;^UNph5b6FXtl z`uuxngpjqrlrPb2#mXfl(9@@jp)Fu7|M{D?stF<46^zBoV*qf7 XkMZ)9kuU+;vn>ytmXjrm-rKYPJ{p;6z*n>-1 z3yTkJ&o?@$!(U~8eEN)_i>$R<5o$arBv<|>&e0`>y1uvApU9W`{8=g1N>LHrw&h&H zyjHtcmB-*8j#%#=9$qvYUp5Iqen5hhii(QM^NN=F2S5!1kRe7R-+bJU!s^SxQmvXw z!%kSuGWA~kY?VTJ_x=2oMCS7G`xw6na*en2pO}rbygVwY`x?X>LfA9c&-6|~@cGlj z?P-O#M@)E8*&4wc`j`lVg!|WojeCWJX3=kFIK9yObA0%Jql0U8j(!PyL|LX}3D*NBF`U1qtwgCWluK*M~{WX_?X1 z`SP-|CiLtWwFGY*)f9Eh D7bfenJNu(0?CFaC3!jc|LI#fAEg^Lt+XJ({m!^?A7JdBiYq z9v8n`3qoVDUE(tTL}
~njIy{KsBX6s&q>RP?Y{A3fCg-Se%>7b3msN{ZYkK zlQILr6@d-Di4vHR5#V~iX8`y&3gue$%kC361*fXuE&_}ACJ9WO~L zEH59sNs?h#s!nfdWtBAR*-A>6Bu(%~yNoS%gv_#*@b!MwZ|&sd1YdMZ`yaP5{F56i zEiG-$BD$~E!_#vkin+}{EG*0zIo|4xp-q`aFEaML4pp#cQQZ&(Ig+TC!1N!^w#!xY zrWpA43&{cgqkkg0Y#>O4%d=}Gv5e_q4GGt6FQ ;LJ9xPi zzXrN)$?9^}Qhp*#GB(1(S*(2NG^J(JA*Ph4!sI_`L?J teSZRe`LaF*`OOu8(&DCF5ml1y=6MZ vi?4znV!8LaC{~LrCNmDGVxzaw_b(u(6os&Cu1;6ZL1kMiPS| z@Oko?TRvHuFQk3DKERVg&59luO{lUkM4Srx`ekAo;cTi{seV)Dsci$Efl gK>7 zL{!qDkw3N-I72$aZ0} ;M`iVlajtMm=%L5+41#Gm^OmE1N zo+N8sW08Y)6dRCoXMEU!Qfc0@wwZ^Q#dM>*Qw*F9q4Z8OZP2Q=iNxQ%V8Bo-tq4SY z0d! qcbu-Y z*FmXO)@20`+7iVn8pw&NDYmZLFx;`?kesH5 v7zOzcbgI~&GN{AoQVA1E6T%;jx}08nR`q>J zX2IU{JeK0`YQ?i}1r2&uU#NQdV_#SoHpy@eI~~TC(TtaHs-($LGB5DUeRkxX5uBiB zUpS2hR7MRKJ~GpG7Ex5^PtSn((!U@a1;>hp=3Z7B8sW#5Q%dHh6H6ewMO*Q7b*hvO zX`A_DjPJSZ3Xah*p=L i2j@lGcv%4KQw#`c}kJmLYkcUliOJE?xD=q zdP 5N{}pI)ilniBb;Tg#;?7etRjTFfe5n+kWj9v=a+U@ z=^`~PJ(GsgF-{S6d4lm=+K4#ycftaf2EMimzDPlVQT5gi)ncb^UqWmMBru%Cv6C3P zEn_fel4fk?Eg3k0Jd2ubo+h|7U}Au{21{^w9#zJLptwX%@e#URR4w8M9hP g5MWELIv5^+dSP;Zaum z)oIpyLNodL@I2Ll!^8y(BFC5u1`+2Oq;JvYjmT0i;MJ{J=mu4&wM@g~I?1cD=0%2a zEgc#EMZ@?-BsuP9dJQ|EkEpw~qPGxAMaw)yf};vyy}^>K` A)Vq96D<1>i5c8{iB_Vc95Nl@VzPibT5 zZ?f1szOQ@zqXaEtbxHmUS~mNTpAqtU&C9_l%f$P2-ZNEUAx;N+sPJp94sSL!JAo;z zq*Z-BuJ|JEnvil5W+hI*@|e?=VlZqY`;0Kw3QjzQc7AQ+-E866;(()b%drje%yS@j zR>U#B^XRz{Bji;V>pDmgoac-Zf7&ZfWw`nxlHbx;j45%hvbm4cIzl=JfhB!oE2?A) z4+?b)jDx?vIX@o1J`jdSzb?gcu`Qq@h)9pik;jW*%EQd29~5f`tRKzSqG%4?8#}v{ zkYB(1xRV+Ki@cj`fe8rCx~EP$Mzjo!W;v0*soMsaS(`OPeABL@M8E;PTTt}x0OAUn z*p6ZcH*Cx7fR#}^Qlqo0%V2E;R&8@1qMm!<5*tiwZ=*4XK6EkY2%!%WheoEH5t(O) zoO=6^=eKUFos6eL0s<|M0)QgH2l<$y!+B8QXQeRy^)1m@YiptAh!pbUV+Ow0BXV?; zEwTuoiE%khad Z*W()f#Gun zk)rA*!fQD{Issir?NJIN6M89ikmhf=Kl(;1f*i~B(qyDmBGnCRiW+%*+vL@#TYqVF zz}-ExqSk0#VSNwcIh$QpEGF4x2k1elDX3yX!}8YdyCe)gr)4{xG^?9`d#0t9E8iUo zxD(NXp9pn)wPU)(v)1cxS35TRUZcJ9S}K8#jJIUw)&U -*`Hr%ACzP$n-}0h zkRgavNr-QBVU9$h+k>($l9G{-R|ZvYD}D(|hkvD0`*3hD@a^Fc(ZohOW{GZ|jk!55 zHK~1q1;0d5PaUpAT(+V@!lgE~{3g&$=v_; VN0_lX>0**9-S%LK$&_G+>LO9JhY{xLo+C`pn!sT`x|~N zxAvbBrOXdKBng{rO6tq+SAI_wE!+^H&d!S(oKLt_x{nLvs|v*8+ORhCpV3W}wB;n} zAPW$ho8C`&E19Kr%P9R|2;5h~5@BvcUFLOfceG}&8`6u&rDFs!WyH!KA1EdJ!gIsb zDAFHnv%7;ZjhZP8C-_qz4leP%K1;gaOOU&E!8;$5Auw04i0ONOq;7peq+aDCjc=96 zQTciFLZP7>7)e}ZQ%COZ$?iNWMDH`Cb4C>0uF@=QrPS`TN0Ms4Y~JOpAan{AjQOp= zA6HU-gm#J^Gsi6Xt=3+^wSXXp^b>&|WtVt3Ew8d}sjSDAgKX2GIx>MEJOm*UgOP$e z8gWc)`$;7Miv1}IVrxY!REoeEZ9%xHyw_K@jzocDu`Rl}Fd)94fmscE7~}K4ZYN9) zdxG) *5^C=wstfss5@^Qzz1+{=lBfG-#!wq#BhS%gGKL6O@%60C!OoV#T zk6+T;gTA1Feg~9*k*_$Lgb#{dq<jW|RL2ok02FmA&TuVHr zJU~`>BVtK}&7THR1U5_zi~PRSR@z;cnrp-PZR9g>yqD-QH%rrROW3P3A-R@dw)yRT z6^FL?;|GIxs{OWjj> d(j~Jy zi KkS|T*chseS=Mt>96E CStY_(t5X7jpOThp^gu_)W<4SU`&_dE{y_RNs4}-wYDgzIa)T$;g#IO7 zl^6@B(lu5zyE?|TFxHv}BNJ+kgcw?(m6myyDrIwTfTF&i=96^em&*B;@$HBHF}qjP z{tqxLAu)fmUm%RU7%NlN#=M$=&aLpS#+pjz$-rEkQ^U<-Y*j1%oD{~{YMJnUI0vjS zilXzVT(K?0w+f!Fs+N8oycLK0<3r?GexO;0_#U? jh9phmHj3O}V%oS~3LAlS7;>8$uD+;8L&7p#nttz6u=R2gx< z7~L B)XMzQ}a9?=nt6gnE`i+E5>PN;Rglt&x6Mbe?yW5iH+Rh}87L!Vr zrbP{1B(K!a)+6Cadw-?H84h*FOYg;{U6J>!xRW%An;On`*no7S2C?*Lf?dx18||50 zeJ&{9IAJbjVxlCPKsZzhT@ke4`?b-RN~_SR>JKyyteepR`-` H&lFdfkGb*%`>p`PaNk z qvd-Z DQ1jUvaSXa$OFhmlp3aW2Qh_z+S0yO%)VH*IHt0oWc)ysnk*%2`T>>TR z72o2>J#mv}I0Mr;D6`_FeKIa2#!b57xB=JP_e_1d%1F&7gVjj Amt?GK?BzeB(kWuZe2wkM=UfoPDha(~Ybd&tM+pr4yej_z(L z?;h4^&MqaLzA=bYFnYi5;X5a9l57+u;=shpY(U8f^e^sOty&*0JUb5h$m-?`I$)&R zmM442+5GlpIo9R%85a(1u-Wg9oPk4Xsx$LTE1X>K-s0CUbCs?)zN-ml&_-}*!Zi0? zJ>x3lZk5kQIm_MkMpI=Plq(7_fK{sDsr@(nrD~r0HJi!wkDS9 4G!E}fscpJKA7FZ=Mwwvny=Wvq1wl_i1c2blq(?8f^7DO>JIKDx* z!&e9MIfCkJkB2a$v)fCL95OE#1Di24RWrD&2gKELu20a#2B#O=HcnN9LKaefE+EYk zQimM^R0D6&56{oU#{AP+Ha55#2Akt)8K;fD(NDor&e3Z?TTqI?=|{G6F2$~=+z4k^ zc>l;tW!k+)7M-db-$O5vP_soX9_D8~+Npv^jSR}FCC)MK0mOuHJQy=Uxy{*~IJ0>g zG-T#OwJiHV7%KoQ?G_i16^8Sbv#KqYe~hV=M5Kv|yx0p(%*6`rG}1@vGm~)FT>5yc z8C(~zUzLkC{bgn$WzA?c?4u9 O5$}n-^qk^(n<^p|RpsiKGCy`t*m|$RzP1fuP{%w83 z%+8So>ouF6JSd=W&P4W~DiuhBDsV0faWVluKPIOl9=VlmYyj8lUi(HkIS7B2ZK?02 zp9h0(`(e8}(UFE|i_Mh#yh$s=l%H^hvg5v=w2=|A$|v)Cu*K(j4zE_CuU5!qF)m4i z_OdR~R=QsY0ZFK}o7E(6Gn(I8M{@lqHkgu2TJS#h_13*QEFjFth}rzh-2eB?6y2Za zXUe5d_6Uf@%uAB$I>e*m!u__^4|`T7Tj_DDX YKfaWHAN?rU94*OV*bCS&4S817 zLc>QG- khAh(^b8#{{wr$5ua{uIBO23U*t9v+$>9g1_>OYcMF(s6QY@{>(YFkPs`8Liq z`W1=RpaBcX8d+mnoVKi7+{FQg!B1_Ycs}NOlt0!^aKZoJYrX5oPDN!zV;9`wVjHvk z?mwQhDR=i7cHbOX@M_s>SrTVEjOfH2gv*{~k{k_wh6G!Ej6y Ka!iB?@G}XhfQ0G-&7G}JdAw7k8C5J)c3&gYqqif4p+(b zyA5_47K`C?uOd^&!TEw0`AJWT!?D$?1o(#Lu6o6wFSY3%*smTc$>k*c$CHAr-yy$j zD;q3f3@J|rYA+bY9XDfImtMVxSZ-?POyFPrbz5MnClN;TW|Cs6 eCC+4dWAn*KC>aMJ(l*+g`-G##3w9#1q|sRxo2nY(D+B_XTFt zViW~F*AL8v_^agsg4UFqmida!`7Rc-TzJ(S@ zxa4w)I&N$VjNw@)Cg4c|JH%UIWg9b~NdTo;FfDG04$ZmQfo%zuI !y-?}>Rswz^S3OZ$0GK`L=SJZ@ z;^Zh2@TsV2zIS!@5;>AAJ7`LcXl?P I zzW%jo@K!c+-y^vt(fFO?F!=#OR=~c%BfDJmMWJGS_EdedFGse@M)Dij?qfn-8ait( z7N5+_W{O6eu;+r3s(M6|>TGs7A71F#`W}9s=uO<{m-~qz+9Ae}oF?rweHYcR%BW7o zT3ZqzEXpRe&lR!}I K~3?wJJV0Z1B`nv{ @oeey77}jT|~_6Rz)#rw#;~ T`Dgly1xq`m~R%Y2H_ z^&PYa1yN1NlPm6coNeAjJO^UtVuH~g*Car$8q8Xm*BTX8EfAGQB(+a%{bY+rcesSk zzU~>_c&;359z&~p2Q@Kx %Ak8Dhd|Sr=EvqUA zJ*I;v$uCDAjk2Py6`D<1TDruebaSc)DCsNphm7q{LvqlbktWGr0U<}xmy+d(pA1#t zZGj}Tz4*t)JferC8}iU=jNaj|0mBS yOdjAQVC?OV0y4TR=#Q!&nOooS~o6yOl`<^dm2e*BeeX7={ylLhylW zjyg*VOyKJk56&g=T;;=2qOjDY>s|!fxIQpr&AX^;QevXx+BcOIOU6Iw5FW@;?D_N_ z1CDnDW vNc+YypkH+X?deX z!TG!gu0&0|2L*hy1sU-Bxwh Ypes+3#n&Fh9XBC~c05#R6pv5>06&;4He>@ecSRuif=Z6reB3avYie%ytb6)rd z@`isp@-?QoI2;Di5-KJqhHtcZr>bhR4u|F%YgJolw4essl^z{hhT^cji}<#=4&&As zPDeRZ_;Ur(w9!9347I3FL^vP5x|LbvQRort!6ees8}rLKD|X+^HlPE&ad6gA6iG(( zbZhlqCzlu~ri8=6kqfF?B0TR|R7um-QF>o6kDfIKp?yCkh|%ZMNh$8YngTH8Mb&r* ze6SgL*NTq&`%43jBjKL+Dzh!GRUIb&N@;T)*+GyTB----_Yq2L;-5%~t-7Tow1s_%#}6 ztM`^;)^=Z<&{u_@5W~kDt>mE!3ni8YY1ZXzxi5pdeZPHPco8%u+Fm@!wPxkVercBr ztm1o#O{sqMxv%13RbXVp^NBqsV*7G&7$M-s7esW@3Jq~$^vb&v%+)3=umO?+Y}gcT zMgv0@;mN&=tZCst|Fz@6YAWASESm&QTS51 !csf&oY4Bm%Lmba=eaAfXcqm+q#pT^zBx1#v=VTJBdGdS#+ZGr zK&44E5ofUWQzGW2cw~HaR#0Dr- `H8vR~+8w;dQK}6}R@Wt-WX1v@#M2C20h&U9`Nn zE5)FF3yk6)#)=d{_8O_Hf 5wZZePI0ixutl`}+{E8iywwMqQeR-E{xU2s{KMVm zIygOxb88hsbt9q3V!3NOut+CDnX@7rzG?|%l8;LUE_Btyu{^GTW(7ah1gzn566TTm zkZ|(3@Os|HV)u^HqIqD+9Tf3hw0xeU1{J<_4m@uc+nWq~PDO}e@!2vMLAK^hA10M! z{TL$+k5ds SDYollvOq+9QGMQed$)TY}m8&5n zDHayNlEj5azf&&S6Cn2M`HE>r;6>r-Y|v2Cn-b%IF*&{&wt4nQ?53S@uGyPx=)!m8 zF+r&`*!MHcVgJKY ixxwgq7!7Ins8fB;p8>>GVITCnFdvNA zzavJA)6G? w|JF-^_6;+jUpr19kb9MyB3shT zeA-3o<;2)p{|sto)RV}|DMs;{C>p A1a(3dKc-@!%`23$H( pyi-v#7H5q+t z)(X#qsa16O5gf&QOgq5wvq0gK9)nI9)+B$n`a?jtMu4FazvtfdMcdH&p6}ss_%&yq z$zh!4>wMT;0~?G>-Ob(-6*`>_pQoN6WZQ`vSJM`K>C; {2dK^f8CK8M?=(7ktEp zn=H=0Ad6jjeiFy&h7p=q0-UZiH;a;*oPN9mLxg{tjXnXYHiE`Qhj-0_xTfGcQm>g) z@z0-Y!{-9R_wXTBA!d#5)?CMu3(4h z|IRh{P|kG*S3{-8|8b?PMk2}_&_oEDGa!Ys?P@r$8cTQj*619oIl?*D$POh@!GzCM z`f(}-EGXto{oC5?Y9A8N(2xAzWak^ vLvsP*wWVFdpcg2Lm7|1U=E8c5q{LtRH0bZm z_?hJ$rtz>6@q&J=Yo}+&= 2JLn2;yNYqV3#we}I!D$&ehhBVGw+b_rJMJeJxBf6nUnQvC#TcqG(A`EbdKf86U znf+`XX+6w=Ln7hp%V?cR0Uw1BqJQMJ?Uq~HbRXGd%5y+{6CzDYWXxZD8JFE6i&W77 zf44ZGsJk6DM*HYfm*fK?Yf(vL+!>$WJ$DR~m=eyf&f&OxCw=V@9*%wax}I{rwD4c! zRLkaafGL6Kcme-q{M4RmwV6)ZGx &Qs;qy3F@-Hk&mlGqYM5)43)X z6QwKHE$VxiDqq?-O{pnIpfBbU-c;Y1a;%bp&^Z&aQeX!@RiQ9O(wi!@t!`g*Bbhcm zKa=gKBvbg(4W?8aUvf-ZXHsvu=ljOq+Q7d}^}DMl2dtRFu%rY#TVvYaxbCke2S|;m z2}~5QRTE7)5o-NX6_N$Za6Z#$r}zMKF&h2UQj@iR=aq)(N_PI*xptgV`(0tIigi<6 zW*s$WZ~+<-n7h@Z@7{*gW y{pYx4E0NZB+U6h ;4y3=|RZrXVD#!AYT}iQ!f9DnRNFO2a3Is2RLOoY5}M%$ 4jRY#o@uiafQI@bA^qV!+)tb8uiy`2L-sX!Iiv4vuD< zccbIaFjSJr)KvV?(#uqBn^$c-;J5#CNP4g-(oj*cDrT9Pq}tvM28D&eQOo`K_2 Mw;RC}rBxr6upOU6RZv_~_{9 zE5yR+C>ol;UG@c)IFDa{IoZq03-F^U9RTOR6jxYv8D$;eyPc%* >tk@Y;<&gJOgi~##TZMC7pH|?>FW;mV`I-=g*&5 zFVi_KEyP|oM}~N0AWN0E=Uz1Y?G~3aO*Yoe?|slsM+j1qmkMyZ{}_QO>b{x%rKKg6 zn+UTv7MuM)EcV-AWg43dTg#KB#{XDh|53{ThOMWnI#ue@w10dK{43&$qpi)Id4Ptt zdFzD7$Z%TqeYB~;-7P6^DxUw2!Q6brw&ZzOHXL{z2!r%SP22n @z95#E{o7q ^Q*JJIWbWSwfD46r}a{vbyYj! tF$ZZsLC*L8UtDD$66W0eJ?+rxak?seo7R z?fU;RM_a)2XZX)*>v^^}E}u6SEDyYo9Cj $}D=NA_uaish&Q$b($I>y_4 zyqpiFBEU4xGr$fIuaeB9SB#82eWmf8OaTR~!6wW3MJiXN@pi>4{@b^|t2jJXZ!h`> zHd$t^>R{kGEkr+_G{*(}7@>PxEz*-h&m+92LM78Y1?bN%xXk*|OG~=J!NFe!5 J+s*XK9tW7(@E0Cnsfg(7XHKLvS M9vPH*a}FjBx$C+d(15pjcpZvN7Gb0VN}&+&6 z1NlTZJM#xBanJ`rK?82Qej$E`4Y9k22R6k?t+ykTyal6TZ&w#BlqlM>+7DmV^V>*m z%GXF%uN&)pv}+s wTina&D%*;&ShqzU4cC-A{Z>Hy&9v==Xj0ck$rL|%t@}gBr zrWJpy4jeLrpD^|H^#=} ^9H{6;vcN4G>MIWJU(5Ht^*sm`|MI9 z-Q!^em=5e_)_gRPFO#%7kCpU1>h}UAC@2Wrqls3de$Bl1#Jz4imI7ZubaXUUroz_g z9WY@Xk&~0NH+5&r_gimH?em_jmIqV3se-crkA~?sxA05bpz-QN8Uy`kz{S#-ww9Je za?+sr2Y!CN`=Jl?^eQ9534CbmEdp9v`zD7;z1KCP0=$Ovr{Gt8?zqgNQr**tk(}M) zqoqctq-yH#{j56;DoM}lVPuJ;B{Ks9qfU(#BPLoNx~9+aSNHZz=Km&{zc`j?R7kkG z)?LKuWsd0(8TIH!>*gWM*M &?tPinyIlqf1XpiZKpTPW%Q6sv`c8gtM6LmvCK>W!+k+qW&{chn|T3 z;HO>PAAODw2>Xwtvh#aN#){;=UuS2YtE?T_CT>o7A5FzG6x2C(-kbViwij^;DsW2x zojv@9@QyIRGa-tMjFi87{EF31f03(1!^eEITm#putfI3VSIE%pRzd4kbX^T17K 8O4bo6j>VKC+n7g3YSYa$Q~F=knZpZz>s!xw|Tui6_m#p_;6by|#y8x{|z`_dO}8 z^W}S)#?#Bs($eZI1#Q qlF`s&1a->2`z zOp|!Ba;lvKUf|VmaEzGV_8A)MXkI)ZUt^ZoqQ6Kf5WH2PRdJ3*sKc0kAb2iaM8cTP zxLsIC!OOiL%qYEEY%Qo%m&0C{{}k i|(lE9u)~Mn IZv_G!NQ;$vYgc#2z1{m5Y3ZBroyr&o%&WM(T|=x0`@=gc6J z#~}(f=}55t&n$%-ydfu`m^M Hh zZQqCYCG}q_c8;l!NWKLmz$O1y7s|y#jEE7 xMpw AsX;mleo}6?B;RYwK8N< z{8uy$l(Z%Kdq+=XJ_m5n;s+JTx%CTTVCn6By1qUe;ieX3LC3-h8XFtqxE2bTq$0Cm zI2Ap{A&FVRV%ja^i_rZxqFCa5uc%e_)=(-X74FD8>I4iBe_JQsbXo`PL9{%cVy->T z(NrLf?c-w<1qFp(-r0m7KO(QXf@ntu9OrdjF~%J(gjH-PWMzOZP>Fst#_iuyM&ux# z6v7i7D{zBZHnpRR&3?to|NDEC)~`o35V*%*NoPl@t*wo%0?ym3E33&HQD&JvlBeLf zhX>Ezxw?PtUh;jGwSTQYbpYLfJwS6Bk$MdmSz0tp`fx0(4cuGI^q*4tesp9^jJS6S z6MST3@+ztQ+f7q7`%FzwbFVZe-yAPemOJ4=2Zu#XVhFy3>*~3 pUJ2iP-jhj8W=SDj!>ST5hqM^Y;|;T(e9|g*w0B>{ zNL47zo`#nBej4*;ruv>3+ydG>2WFo3jszb>n{2)R+IeQC@~vo>Y-ZX>*X1)#mc%k5 z!H;dcyOHZKoD8S}Wo)y=zt+#IFNUcXDqY|*)x^Y4_qVQ1UEF_FlY^e#pPxSa=~gi4 zq}7q!QzcL8*wuKIXyh A>S?% +7;0{rpI9&Kur(CpN({9Sz6AuZ`gxvgMvccMfb}AJ6DD|3K8LIp*j+-vDpq}VD z=C2`NjKz;(8ylPjlp-{<#%6$R+~|H2V$9uLM1>O4Nj>EG&ZMIKU{z&}`%D}81c&@4 z4%N57=WhQH1-|71)mi!lc5%Xa&$$;1KXDDJwiuCMb*SUTcq3@OO)AV6|3%YntCbrr zjFGWGTsQE1 wWF5p6a~`V;S4yPRm4M zSmB@L&02eur?eo~PI5%Hn>eesb}1E6T8K2{Wc-^oD?T`(#cBm%VB#Q g4M_}JICm=?{IrXjv*ypp`dDIsyvS| zQiq3UiM*~i_a^(x`aSNRvOi7%%{O$tAqqMcIbVUlQwP9dv9m1^+dL?c)qKG@<>{S3 zeDSrN(MudbWri)i^b&jO%^Ln)|93lJ%E3oO`==)}QJ)J1O)v+Nx>)WbiVDW|;?>q# zRCchGd-$_P{U#E|RvZZ$w2LV%Gix~2-Z~B`v`>^mmVeY~Z&CY;qK0i}6Ix2nFD)ON zN_CvP+zIH0`wqdrl5W;Wu{bYV@j@XCBl a$Am0(5>lm*H*~N|)i#=qYLAL tX{TQ$&&1}(qVxZ$2T zESVGeB@YcDv({|R$#2+qepaznZlj;nXkz0Gp |}FV_#-#TQuBST%J}P7{l&rN z)slI=Ue_7JosT;&|aWI)FD#Y*wNXPXnvq#XVdSo={l}LHb~KE9g8F5P6-PO12bL%TU%Q# zPP^7K+*X7?yPzEXzL3+dGfI%l& Tpa&+U`DH91#9xFx)lL2pA=J)nTsa@ zpV(TN1&08w+@CX|?`D{JL#WPkPvb)? `qoY)Gf$xjFZ9LCd&uhr`yuZGR54G@oc{}yKx@D0oBOfjunLmdcj592B7}GX zx<-_I^bZ`$>4w;CJ{CO?i<&1%P%Ecn;a@L+_~(CO-@aO??5APYUDqPaYml%fTlVq4 zcfn=lV_0#X-zh;|x*lJ=vlnXhuvPqK+=44F^+na&FH*x@1s&aFgO=GXu`uI|kiQuh zVOqoYI9@p&3tm|XeE$k|ACbd;-rYEVRRnA**W(kqCVZzNG|&d(u5y$VG{WtICoo6$ zHGcZO6t-bA=$S~MZ_GwTWiKLb`Wt2>*iLFe9U2-6Pft(S*w_rKyUsn5X9&~ZoN+`> zP7aETi*fYmQ4|yuSPZeTv149<&cyol>ye+EO9BRnoRKl^)B9^sR~ eg_QGuECny zuSCLmixD5#Mfq)j!FM@UK6nGBEu?M9HfYQ&MZZ%VVlzxavFAAU{q1Aq9m_<;@uL)u zp{A+}dZr8wa cTz604uYN6 <;Y4S$g zdC`zG9HKJb4Vx)55Eg0=c}^}IF1Q;rQoJG4QH3O>W7q!)>)+Xlnl=&%hB{R3+=|@I zn~}456O=)-U{$;ewQW+krlcVt#0O}rMX$mUe)BTm6&Ov|S&YObOOP1akG!lJs(c>7 z#W!7o Gjni5VDcc=>0l-A78)|FciP$6c|yL+ zUw-)|%8IFhZ*7CnlxdU9jinv+n~$JH>y5;_9>%=$my%7I2CIrpDz`cWU-2xKT)qs6 z3m3tye-COKbZ}2ujsS0JWYVK-+x{YUet#Hc$4oXSs}P+^V{f; 0RXDn`zUMs&;FF(o}1Hg-Ocw(UVpeG{4u(TI)cK f}2g769d5B+3_Gn2OY%30-u`?a>pT8TkRxGFeuISF%kGghO1k6uIa7-BNJu{Fp zhwP{|iSD)nvR9R`Prn?q=1+saT_Xze>R}T(2f>m86c@I`YvIjE&4`Dqwh(1yU2vPa zl%6lMXTt5AG)S}>$a>`i4SWX&s^7+eJ>oso;}j;OUw--J5hp9Z?6S*n<&{^C`$~ t$oIS|^ibQHzIg@wsS@gCJ>y@O zK|hs*{DpDG9#;$0|M(d89o50((r0o00&j>rOxFy!7#H3>7fzIpkxNepivRu`j#LC8 z{iz2L$J{wY26S$G8sBeffn?e(Sbg185|7=e*_8!R 8?-RLKm+S3CV|H00oG{*cMXw5MwKJe-6WzVrXFOWm-$|}A6|>S$F)#) zbwI6=!p7YRqTUWDR0hP{u@){{SQ-P6`uLv^ r=VZ>tJBdE8})tbEzkt>lqv_(?cYa(tR>e`k1Jv=kUf<)IIP| z6p&~T3%%uf=+$%`(-(-z-b2kA@*W-@6H-v$fB*d?G|CVdpMdjjzJ-e0WSX_41ey1} ziF}nmQlGdVaZEficd0j6IaVX$<~J}S!3NCyG=6(Gw(L &UG55)i9?TGOn!9}C HqqCa1SAbXi$^P0YY5IgoMp(R^nAUmWNkysYfJI>x? zx@!{Vf}z(!rxzJ}klFQT+={Cf_29sNHlwAt6TNaZ#CC2Zc9l?cDxeFx6c?{($4~F= zgJ#-Ixcag ;Cb XK|M}kLi& ~2vD9p_Od^ex8>A$*jF5;VLv09I zBZ%xFf;xbV@O|@0c#j}%JNDt{=e|a>ZqDg~I%*Xb&kq@~_o02yKXJTZkf4^=pr*Wo z(kmI1wvk{0QZ0Ovl=;WN&(lh%U=6Liu#wW!qW43}Bab1;pYqMhsF*5+svq#>-!`L9 z8-|Q$??to+s}u-TE9wjDp)vVo=+spx|8^_t`pkoI0Eg(sh)JIUCo6MiWN?j%gOiLz zx1kzYPyG#f-7~T9waX#?@d0e#uR+vpW pd{yAjoFaFR|7 zg}h%lr_9+F14|6C#>!D@tawBtDv}9A)Ao@0m^s}Ky1t&FW0nX-(M}XMDIoQlg}4|i z^i-6grKSm1$%_!=X$Lze8_Umeg2M&%M8GVlsbMN(y^`$tm_-_E#FEf884H6>B{XcK zZ#`X5hu!d3OdmzuHm<)P+xIHrdf{+E?TD}|)*!@<8pWn#haf+JBVQgsw vS5IsMc~z8hCu9s?_rFSnvL7cI;-2-T|=z4@DQEVEu{;0xIJVaj<65a{c8s cPF%mM|Yjf_lktLCtzn*!>(Ks?hU76^7?! zCP7`Y4j=z#4{iH(uRQAk5e5yi%GjVn<;M?Wccv1Oc&fl|NrS!6Thfk#f2_rkVilw_ z@5JgW6JR}%C)U$qfUcz!WqURv`)D~73K6WGq)>J%Afd`%FZefG!6kM9Vi(WAlps$M z{pJBg#W-@$8_2hskL5333d8z)uw~Dg1oZ<5@7j%=+&1WYDo~nJ2d!H)qGL`8L60ym z6o2?FS`z<&tFB8y_l|c_>bw*wR1t}CKE{@9)g(lQ-Yac)EBciNNE|$2Z!e ba?SZ B8=YVJcljxh`7hK2^T zwzi_JtqmO=9YSD#v-Rs)U;~84Yvs0k_ii*bHNoD+1(6xECS)Z%66)%MC@AQJA^j$- zx$QE<&6|%{e>qMbuYn=pLaco7512ZS1Y)8s8uk~W&v}p!wW1oOyYtYeRYKQOkH(?` z)E8O^#RX`n>3|l&2wxsA^kfUyWxm_t%P{|f1qe+}L5PLm+@FQ!b_484qzXRNGJCiL z#ULbU>d<37dr(>03cYJ8W~^S0h^d42QSb{5gp-45V39})7e6c1A1;8rsSs^WDF_d= zN8iD>v1?y58S)s+ykP~r9L&8dj1H UetFw z!=L#~+pA1|&&J;_O?!}i=p>pd+Mtoz!@*jG-u5>1w6zMsE+Q7{oLux+M<6n$5t$$D zLQSg+!ZRWuYdnVHk`5C3tQU(aUl#hi(ATFC8V7on3VJIUiGFKHZEYYE8;{X@B_lS< zZJ^?v475~Mpf>L$bR?+L($e7P=Lb7Gy9xO&Z{508u%FIe-Uyw>e5fbWpu~36Z#jZi zogb#&`w-@=Sctf}^j?)5Kx3y4Vb?x~MVBrT?38=o4ph|+^`Y)9*i7%07HXvu^4cQQ zk7$$1(bYqCC1xHXLLKQIcF=V*(W-Su=*3qeab~Jzn-p$^_M!%;^?{hOl=)Cw!^$}T z-f_uflLj9f0ZCmxI^-I7op(J_=MFz#1U&p)g;|gUljPtJ$KFg-Rd=AJL;=tAXgKLB zk^SDcsP9t4dhT_Yo9;7Y_99)`_xSF$50Q7Q5S?8*IA{D3OK(mC_GP18n}+$%-$b@t zicYe>btjLZbni~Gb*TvUw-w%Pb=5u;7IwmW`uPZSZb13IeDpd{gFQlllI$Aj{iY!) z-W!t6LgXH+f=>7?LH&kZs3 ?Dui} zSP}Fg83^)KqM4;l%{oa;_DHWHG2H`=;7X^3Mk6A7L^jEW?2#2|2iAbm+ruj@1s?V$ z(LM=iC@Ml@S&48DSmU0J=@<_K5*d@HyKs`iM73Nl7X)=@XQ#!$8Dl!@&|F%IrqVJr z)wLS8^*5r8{br$}0m_j+1of7qbkA-S?Am2H94s3-uCo_>!z17u5os|vI}bB3PC*Dt zN`!mQZXEvUdsM4~5tx*O;Ba4~F>(lkAMFoHrfq|Qzc(AnZ#oAd@|;JN^%Sbi$jE>H z2~O_&20yPWfl4cd$EwQ_=5BKJ7{Cn?%jUr~Y7SCwdIDEJc?;qrU11-PjOaOY5FF$J z8^2h@U-uZUTKh0&EsTW!oSE>jGP%KYG?OH!d*JR2JKA78x9p78%O>@5q(@7kGuR{Q zx_dA)BMt%4%dz0$CvfqjPhx6{tI$9}RW35ueTOEs3=u2l3Dfo2rd^MV9(fF_NSG|V zb~Tbx=^in+9jQCQ=1hm9wGKL!1H9*~#LVme59j~sF z zSPyAv%HS9gkDvr=G=8@pS)1!&9ZSEHW8mRroY})UlzuZCHN+-`2vbuIoJnL2zh!F> z?o2kJV;>G|+=rZZ-$Fr?5;~_0WGsz5HM55aN!S8RjR{2Xk}GijGq2);)v0iI@PJpw zEJU3b2`76Gc&1*2WzW2fi*C6L;ZZXX74JOIQ0{JQAVKE>TW312**Malqkl6FLc$;C z3Iof#B(a*F1Qv8?|A?hK1%lJ@tYAfcyXAiun+Y*WRKJKKKARg@v&8^uo+5t{S)L{4ET)d<=HIFip<} z5p825?btT+r_RAHA7x+TlQ(uj9WWQO7e&E(r28Vz#nEpLp+|3FP$DGM;2K#~ntdk+ zTt0+LXi)R 45Knjch?5=0 zmghc4gNg*Qk2?(Atx&10V8=d 3r1%w7Es6AyO}iPFT$3WCzv=sjv2Cxy z=pI9964`pdJ9!?G7R`jGixdWVEy{oX7RR%zC|{ Luu-i_54PA*ZMziTHlzgs8t z*57{n?ScMSNQ}T0S0mKaYi)_ngYV%)k;XXP V!G6 z%`P8Cmkl&+!}^zhKxgO`SabVKdjGmm^u}5oE>*!GKIQjqBnYVw-;Efb;UZBFW&St# z@tr;B)zSNCpgc>0k$T^~h!3(G=DxzF`TG=QeG2HvPO~x~yubQ>^tH;3?h@_}#(PB= z$foPr;Av?pW N&t-y< zwP6Etw{H>pQ*OQW)`2k{te1MM8M!v*oHL$%_E~J)xDlC|nHEJen`1E{Apwbri5A0n z7OB@>do6B# {>dYYQhMUBI* zhDOMHsnR2nrs-@#w`p5fV-tE>+8}RkLa#zCh}qWC9QsEO{~-TCWoTI1Eg_~#$JGrE z9!`*uNM{WlCf0Ro4YX{|T!TBD1K4?}@^YMoxfk1^{L4LPXi>p^#>EJ6reif~Xhk-# zw$h-dcoz=*XB*m3gS@vsL0(xGq;@1Kso|nkQ*ca1%5?u>0$}n{U0p4>p-sfTm|JeS z1vfnOFs4m9F-@>Rd%_=H@JXL;vPo(1a5M@=r^s}Kn{1Mw_iz^gdhhC(Q1gQ4)C9}6 z$P|*Ue*tTreHn{q4_eSfKnjTivm2+|A|W_h7Ioc4S&-9vDW&&xxSbT)4zfi;uw$>a z1;nuN34@OV*+{w%tg!&s061BbXg}?mDzd-L=xHT8)6#Ov_B3@tO}0$0lB0+0kg$zH zcT)@G%yu=(p=M>ivkdhuWJ}ya;Kr_JK0p0oA$vm*%bZ~E?hZR!*2!YDe{A+3!G4g4 zhNlla*i9nA?6K-9gf#qw-0W)f*~TDwUWoA-lUWoy+C$t^hpJ8Q )<>4GK2>k{qih5Taj1>8S{y=JykIb_)w?ch&8t|-|Yp6 zojd=u;4a^a%9=qw)D*w>@aH&iq78aOH@Xa=h=}rnv?CuUj#k0oe*soL@CQttKj?fh z9vHls14CK89|!*RZ)E1S2&3ZJphAOQjoz{&C_df*v1brGJx=-9$^z1muy`qwmMu4i zB`L6P$whs$67C6!Ffe22I}hhQa4%+GumZ`Z<03;z2y0Iw`;)_HS4SiMvJAM}>Cka( z3o09&;6HCFL?`#4zEcH_x(8ilC8#g0Mz7KZ{_`{7<=_tAl$nT}IU7+kVjwO)jOLz1 zOn-PaBK`g0(7g|bHkYHH4cJOpf|*GMRDAXYj< !%e>IBei!QX9tcc`geM7oac2YiU1lP6Q3Px!naf9ORi)rN%LFv@p=Nf<(a{lZ zZf*n5c%s0*8nu%>>LM{S>FCHq?w$hlim8m>wHh&riDZ)kpwHijhE5%VF1ioX=O-g5 zJ|1?h+fX^!hr0Rz_U|u)$|ebkD-z(urgCHU$5OB&d&F$g!0ZvscboZ8GvDn8O}^Vh zZIKWX?a_3w2z@%U4>eswU531mx1*_#8n4YAuu4dWr;{4(NA{qu!{qmUiP7)dc%EtS z94^c?9cb9}A8h<&H(Gi%&`V{IFdyUo2GktfjoLmZc=-Fl*4iw7UE#Z65fYXy8?Z?+ z5jr%VtVX|8Bm({AkoVXk;L^Ks{*9|Kb-BrIElY$83G|-KFOgNy0r9jINR9J^w6_>} z2a2F%b4~lSAup>MI%OZU?KNm9E=EgJ4-5gcFV+n<{;3F0XZC0oqI|khl-~%)`L|%f z;&^!ZiP5s@Ym_u9$Ub`@`oiUKY21K=>-R$!z8F)S8iaG(Q^P1I#0M_Y9yC@rK{90) z0`$jl@^~%T+GO~K1yLhPL$<0H{^zYmsIQeURpMl!v7`je73D(Xh51mkciP3pWn2tQ z &c5)zw9 `#TIcK6!g{FLJ5gTN1_jQFtN|h1|OnkDJS|oucJH*nLm_KOWq4^ zep2-BdkgE{_y{>UO>`U`$XrC&Jgn6CF@_Fw78jwes*QH_pd p ( zhjY3i3b_<>{&+K1Tp9*(^M34l`DN_co`WuhNI0IkP4phwfeIy6j*%|VQ(Eee{D6}u zSr5A@PXc{tIlKo2yAP0HrejT8dyl<`b Qyu%hQDJQr#N#VlP#mFfZnx{{a>&P-Qe|2f4WddVuJ zte|~v?06 %Mzm_^-8CJ}XxsiN3OmV0`1rwD zQ-!QIUck=pcA>eO*+()-D)vR`luc5$RiTj@cU^Klv@K;QS@$NsesV3gZYf5eg3jZT zhK&1P#^v{4h5!c<#py%ao=>si=?C${+drVVydD~@2x2QM!CkJuDF^wVyoT@J-ig+J zTSQ!O4d&l^D`GrUX!zlEto!FTC@yUkTu-EIZfIo@3U}2(r?rNUZ5L{bvXH-dFM6nv zHaK5sE Z|r*AxN4(8%sjDM zP_Sz=inE)@_WHuvm7b$X6}wGcj^t$*ASEr>w9R;B*5GxWx=h$NEj>i&2obT48euQz zT)=y%#~Akcbmz{U!ppF7 R7k3{@Zk@)o4|zO}{1wx|2U*_d({ik&J}Pr@_@c zfUeEd+e<<$!eK9d{O4CF%&vi&%?st1hN)=*5RvH2Ia~#O@ w|b%dg_6rHTnR(7DH zs1%~e40yHvgr8o23rDx^MR{HodKG}n>>IJ-x|wjXmBA(`9pPS`sLm}yTS+cT_iRJX zjswsH&w_jJ5z4Cqk(XWxn}h$vfxYFBt4K6Br<0HkhT ?uR};C<{1#AIA4k!%xNW<1ct9l_M- zXFWnrPEHfDhnm4`Q774?$wf0tzW5Gx?HbrmzW_;*t|r$bw&Le*p|{sPEg9V(y^7si z_o0EUJgT>a_w2>+cke^<-o2=8b4A=`7r@W`*RHH*?x9vg({EvALv!d;nHu=P2xC3e zisLx?=^=Dz1CVmtpD;DF4K=ytXs@h9N3T&(cNOeK;cl}%+K$5ghf$uRh3A|Aw0-qY zWM -s`gW-4nJZf>(AesQ&}lZPdixb@ z|MExVAIL^SLl^Xpu}Hc3c1(@+fR&vG{8C~eZ9I ghh+cSk(c$luIyU@l-hV6w{qd!`wSp!nQOAEfr;G>n6JrejcXJCcDyAB+MAn zk++Y;`VQoup!$azDE2Y)gq0FYirUeczkkR+kJM$8Zly$~l^h-ES$KLNFd#tq3O-(X zsJWmXW7zB+W >;LAOvPCMr49FtW`>gr~eVNr%?sv z6$tCvov71=A>zEtF#Gzek(lHUJGPuIi%oH@eB%%`Hw_-*7IZYULmPV~=FJa)eV`X~ zU7?6SF9vp^ZmRewO%dssx_T*m9Hr2bI+uDzQ{|a~z+f-Pv`WZ4L*X404j1nr_{YQ{ zFfJZ`p|0p>E*zaPNW5+#0;fzxM8<4HMSH_OBoThLU1)Dr!a3u5%$Vs7D~T3eg(uKq zmx`&Y=sqQf!>+dp3UM$(=lP-kcnSJ^sDU(ipHn2FQi5PL$pp0>RaSn%B!XO>AvO6O zb3r}cu!noNKeRQy@LRSJUQVa{W;N^`@d$)x ^g_Hzm__C{zl i5=Wx z0-+T}Aui2t(ERbg6tkcXz_f>-#KKEg4!CU%3F*#gIW)-S!!7{6ZoTM@T7_vb?yw6? zLiD^;_y?1%3GsxTrytoL{~`8But~`?5FHr^FA~2!$GhORcs1r;e;Hz;ykTo?$~PNq zD7A-ER2pK*uK2jfpw &$rKNTvEHNYWqE)uW24s$P<179x(lTSF=Giw)k zPCXA1(QeRmRHLia9dXxRieOJ~xI1(~GIa$){jDKVO5qp~h=94Pk&^BU8-tSUzdhWd zrz37!B;4pZsKgF%3ywlipbuOkV&ESePc|tM9-?{@-_@|6b`hpcr|oGOh?-7z)zb$7 z3G_Ugs?l#7iD_$A(S5RlSYC;W@^*O7x*SQfQV|*;MrW5A4&k#9WL1T_Min)XRu9?d zmN<_Z7}7~4s2#}e1Ox^m)a8^t8ZUyH&+;+G {Y&XWC#hdazG?%%F=6(6LW}lyN2+2S$^#!zeEMwD(&K z9UGx9d`1+r&$=UfZ5e0zU`u;jnS`%#0HMe{0|0}4BBlfiJ=7MV%Egp!VP*izuSi09 z8_jSD_ki-vmh&}L&O%y*)ywEy>{Fz$bvTp`x-Y_NWpr )3 z_tTgr+D7L+mByjJPeJDqmJT;B>pK+TS+YSbbX}v*IJ>U#c;?0