From bd0bf3c7e78f6d87f72c476da20cdc3fdec1280c Mon Sep 17 00:00:00 2001 From: Julien Hillairet Date: Wed, 27 Mar 2024 21:17:56 +0100 Subject: [PATCH] Adding COMSOL test example --- doc/COMSOL_WEST_port_index.png | Bin 0 -> 86754 bytes doc/coupling_to_plasma_from_COMSOL.ipynb | 274 ++++++++++++++++++ .../COMSOL/ORNL_front_face_conventional.s4p | 5 + .../COMSOL/ORNL_front_face_plasma_inside.s4p | 5 + 4 files changed, 284 insertions(+) create mode 100644 doc/COMSOL_WEST_port_index.png create mode 100644 doc/coupling_to_plasma_from_COMSOL.ipynb create mode 100644 west_ic_antenna/data/Sparameters/front_faces/COMSOL/ORNL_front_face_conventional.s4p create mode 100644 west_ic_antenna/data/Sparameters/front_faces/COMSOL/ORNL_front_face_plasma_inside.s4p diff --git a/doc/COMSOL_WEST_port_index.png b/doc/COMSOL_WEST_port_index.png new file mode 100644 index 0000000000000000000000000000000000000000..f4a6ce3f30c14df8eb49d7e8af53de5f9129cbfb GIT binary patch literal 86754 zcmZU52{hDi8+OB>k)_5KS<7G$+1KpFj3N8J?|XK#)DX%N8iUBb?~S!lWXLYck`S^c zd&pMk`%V4d_xs-ecTOE=oSFIE&-GmQbuZ8Th}F?nr>10~Ja_IKH9|v8@7y`C)46jb zoaae^-)Q_i+6I1r{PfgS&eaUDt^zN>&dOTK=g!q8T{y8N171VCHB9}^onwR%|AP>E z+~3cg`(2DsQ#J^;+Bgjz3z)S06gzI+1W9P;NMuJZ=!Ciyc6+aQ(9b*-^+M^GEWdAxkEcG@x6gSOFb>~ zeJrY!>cplarANNJlP>p2Ep;?n0hT!8uD)c?@oQp{$)ZF%^x4!t$$4^p7s2e z9$xUw)-D}wHhCo)Ae&vk7@2YxalXVLrPu{2R>!SRQaQq@nO20p=~@iWN67HHXswi> zzIQOa`7V-l?_DALe%brqC+|y3Tbf2!{biZ7jZ3sk{Q@l zNncJwJ^YmLj5CDy2b)h!{}}N0Y`S~_{nAkxIU%0oG+!I!UY&s$jISSa(^Wvf?h4E# zN%YNwIsdA1;+t0e6L0n#5#KRc7YR{az_)09$=#$BF#gCRI&)Pt{d6qk^qA* zs{MbT5IGjChkZZ1m#3BNnjy3e)zJvZuA4Gi>%*!zc5*5$O3Tq3I2nI zQs2uKl@e~#xVK0QfJm1uECXtiN^V-mOSXX+EO8KFvFG5oRju&0a9{hoB>Umi^3l~S zw$M9ooE=<6tHiHq9u$40_%4V5T^T{o@U&3q zGU3Ynz~@dgFx7l-X$;f@4Hiwt$B5tTFWXb_7qo-au)8s7Ud@i8Rotdib^yZum-XwY z3~^Kvg>kPLgyL#Y#GRF4BtB+nvNm-0y7RLKyJe%>)_CGm zS2iYOk7uc_&-iM3njq@1&!OU((211sXT;^O7_^Vni!nKA8JlOkx)=!91|R*4nR!vE zZrTD4;{eYbd56QGAZ{gqjV2fp$s+VVU%Q=nw}L@OoZmU2?#w^?qrGC{@3`hK>)ccE zLp&AOA58Hd;6!0K{#1uP3_XsUtV*4fu~5XQfa-$QmETTMLWF;PRNX#=-&FP+4g-V# zp#=HHZAcUFZXGs(A&`z=^Cpeb|E|mgbtm=oC9QyE0(>&Adm?Jh#6>9Xt?9qk{|s@* z&y=4=pbyKL3UFq_4*3^n$Fis{$D6-jfwo_DM*N$jVte;2{YG?X)Q{GeGS%$X*K_sZ5pHc zeIty-hh%H@gbH1!A};=uduVg0zL zRr8@ighvx`H~+o&$%41^F@kKp*uOprunX9AO3`?R6~d9j;Ksnec0dga>|A_Z!)v%{ z(qHsN7!zeBpA{|?2-Y(F%dg1F1sk73S$na9x9vSHGgQG#9}P$iZ2d23n-??y8jak_ z!~m@E!rBz~;u0HnqFNUo)^sk{)E7zw5LuHwRQrwSvo(UcX*_R{&G7blR3Gr}N4>bP zcXrjy7sL7`@I3Ywn=`ZWv;VK_HAiZs@sx;*RdMS_-qNq*BKxyWGy_-rL9*>fK3g9d zkVPK3MJ32s!PfnM?YCfaKyvEaef?14pvr<{q?)+WJ#n3XLU&wsXeRP-mXfJ9(Or7Z z=(6{f@GpnM!do~Ao#6MDw`u}60a;q9`{O4TWRZN6*bxz!QBEY>6fU}Pl^XnIQc)p9 zOeiR3U1l!kvbPxZ2lS8l&>CjsdUIv(#~Mq(Gc5xD_{@Nocd+OgXLeB<%z#xd#Li_*lf~3FQ@Q8D@(T*_sh_<;}T32)>VeIup_$mc8)C z1HEu>i{H1={S%;Q>Dhp23{CowVZ`7c3gBAZ*rQ%9RNujk?igLWLLT>{Ew=AmMhlTn zcrTFgeS#L9cO^AmnPPgJ)IUxx07CioAKUz-+25QtB|VtUO&r~KKMZ*bo1b@I-2HO@ z@Y?K%%yr`WoqLwGh9dbqpNYU+p=$cj5pD(dJ7%s($%mlOx0mB@b$6?<;FejTx#b|H zaDoJ@w*YuriPY;g`m;Y_Fgq_XPk*|-UWflbd-Bj{`$?yila0NoRzUnQZSuB8dmk=S9HfS)gAZgWXnL)k4?)hSpbPD2ORjbv5vM|y06~G* zJC>wYv()K=Z}%bi4v>^O;kv}!Z7T4sSFu;Z38zo3FMBiRuYG4 zY+v~#NwGh#L8Zt1-7r&3{T%X&shc>gbkkiouTo6INVh6P{NsMT0mFVw8!owhsu`8J3yz747J)sktY4NTkUU;;**qjl&_d4(d$W}FY|JsLZG?7sHk^h4DgJSQ$519lWqPN~AzwRH} z3XhJq4#ydRQJe*nEaLx(yN zT2u4xXDKB~vxxFltkhgJejS)S)b0{``nK`x=cAz-VvHI})Yl~PjxQ4<4#Dcl&9I~T zR__rqLhX=4JETLW6jfwjezj($w@JoCJpp`C8abhBw3{uk(=$G|3&V?oK1t@0U-Bv; z?Zy1`iTouEJWaG)$Lzm6948C+Z(iBD@^UuqjOy#p>X$S4 z!0l_-6(2VLj(GH9rv0qYdKeeH&PF@4N65^|S)2}E3{-f=%8On4xf!Gw_Ip*{h9}Uy z!4rSpQLlIbZgK6d#n-35w!)%(U(#{!=g?y! zjb(hRP5`tb;WD3wP<`b;e}Z5G${n{^x^3v`QEpG|_R4G=WvDGmK*pSZ_h0Hmjziy! zWZrB-S-k$(zSxIriOAMZ+ zlT#c=$rNoc`?IZP&+e9j;jOk%545JDP-aV;t-&&*W9InI&&JT!Wgh#0Sc;7G!I&V8 zclYJTLb64l{MMQsF^GLc_-3IRv_vMI{RxuuM_K%q7WM!~d|8wUMrNn#$qf(PFItih zUjY?A5lX1N!>yxoL7nU~;>wp=+OR5^#T(Ek-nl8SU-ht;_X(Cz9Vy76g;FcCE|dE7 z4l`u}Ye**uNHzVGldbNE^)C3gVwZ)T8&>_@C1i%8oNfF4rqyef)%mi89)J!vo3#b& z>V|hyhG?jl0}yMU3sB}8bW?84QY+PPxx12neLR*&&s8V=Di7QR>;c?4BZL3{tQqn!fpC)lWW}*VkGn*{RSf)nq}k_tYZM0 zrjpe75w1hM?G4G(r>8-O?IEVV9JFQY`VMOGAJ`I$fbG1HFS7py)og}6JI#$Quc90% z50qTK7dX$E@zrzBz+~v>?STQwMfQ7KquKSUo0=JvFL;Etmf52^zG;0n*owrEzDIQ( zyjwGgov1=N-q-wo#g!+-6T%|qAMx#)yo&f z>@Nr7SxJRL2p_LFAS};$WuEq7Ufsc~lddg4ex-2hDz?yBB3|eIEqaNOcd3BbZH?gi z@A34HJ+pPzcWvO8id%*&YQy{3okvW=<5it6czkqeb~L<`Ew$0BM^l6nC@HY163_DI zhmSH2H>$F|{tuXs2Hs-}AL=<25A~O3+r7B=V+avW=(|rKzk%C%2nGV1`K_42YY`ox zUKGkd45DQZ-*pfT`u<*Kf(q;M2p$?yeIwV$RBFlP!n z_fLd5_W4VCrGh>WTpVqBVsx>3d^ok%!n0Vl(tp8d%KDc<2(ETnwLbXQ^xdr8Kt74x z>L706P(CI>vD^^09w1}A`bT0MwvSCUhNY6P%K3PO{usLV^Cy#xPBi^`$K_w0moKP8 zLi>WkC>VAu*fif;?c{6XACuOg2#s3g=|}5MEVt84`mA5Bj=WEsR%I~Ndr5iduM|mN zdxd)9J~HaT>tK*!|8O8f^Hk$&R(j0Q?x>w;n(l%X3mBilQHt$$*af9=+FaXthT$m9 z1J$SYOK!S8F0UP?Tn&ZmzxTBDJ*oCDGtJnQgi~=Ws|)P=8oe&?6m{%xxG^M|oa?{l zYv_oaedn{S>TX3IZ1g7xJiYnVd8tk*uByc}qakHIoR&{_gFap*lI`l-oTs*IaOGlg z`{&Ij{%eo_l06Vju4|32CGqOy)bv<*@my|BVWLuSGMU`t79=olU*~?$v|-fNp2dnr zRj`3zVe)OJ+w3S?`HDAw+485?6G!MN_%!hK`(1)zv6d{=vR_ZC>F4`kmz$Pa-a0Up^+yovLhmzT_NbAWska4c0}EzuN&}?-!ZGn} z7=6mw4y0xwPi@J{?HwUHa_=n#g^+}08e(>)pj2Nb{LClC@P1RLg4?~r&MLujspy|f zV>2BR99&^338v5=GnrGFZ~?y%U(?8eX%@@fkt-*Z4H;iWWA0!DN21vuP*PE zTQj|8TJ_iPoc@Oo;rg~5wI=I^JIU_viY{f!y~=Y-xvAOT@T4Xe{+BH4CxQ-Nuk=1k zRh289byMmCyddN391K;<3S`<)4+dt*B+5Xn?AVwe>2EjZuslj3Q$oObd=BVk$3{wU z2X!`;P;LFIw=?xtX+Vwpx7rav;(l(Niw@$nlKH0mJ|M9}o2CBQzIN}SwLObdI!g9= zMaYeTnyr^*jPbrC*DLB@gm>DN8|`n~DK;?)O1oE}%hiCm z=fZPN+2K8;9J*5Fp9rlcA>?;5xi=62#7@aXK=;W9L)DjGd``zdiz;TI_J6#blPq+tXTFMa)t&BURnbV^4$AVW#44MO;b&T9)Kx| zzNDesT<=+`iGOvfwY_<`X*!`(^!m($R5>M>j{mWI;Gno=rD{vg6`&yFS=EL*tT+ zMDv_iqMIpy{77%$y^7?Uc7(s9QlINlQzlsZH|cmJSW`7Jm6%qxM~);Emx4VPnp2NH zkP1zrD=&E)l6pNJNeMm)cuqb&o*~@)Xsyi@89G@ZE&#NHBuX3>;XcM>cWdSr6RROA zC`+$p{Kj(I4_4ERG~cZf*V`F&7Wc%ppzBTtd8qw|OHXtZf{jbo{KKd0EHeU$eIvg_ z)UFs*Cm(DEZ`@n=P(m=vNUPFHdn#7&m?BwlgH=%nI~HOJU(gp=yd6nuya|JsyzMtn zxO3!0L#dKT&HnVhuHQsEt5TZSkqb&e((*lbbfNxNDYw6~o!1RC?ONPTJMn)Uo0o3< zl(%Gaa_JR4Go$ZThpPX}*}z4!-4_d9CdfuQN=4>OlzAD=#)yklUx1hX)27nhxe5XO zO4+6lsjj?#0`KG9`sAp)CS%;*qE;+AzLXs2O)GugDB93o#$Dw$;q0Ec!9Q_pZNl;Z z?77@bZV`!&mz#S9B$?>vP7m%ZG|R2GnJ)Ck0~=cL9AoH2s1f_R>i*ri`{)~KR(gj( zjy`>;6<*$=TQrxxP|f>-dq3T1v+{G1N=5UusEFh0r-6?Bv?kB^RYV7bo}}r7pnM)p zu~}xAh3Zrpmu%iFZB5K3A*xROHHWz?S!#Fp_qchtL9p@;*E2M=4Z$hd=58;}9E*!K zz`YRP6E;?PeNU*phs9f$++qt|$>dE36qcZuGZBu65^z?5W!jR4jSn+!oXRBpARicYzT-v;uR9StpaWaQWyJ~z^JZx0%LWkL`Td`!h zp8tV!avfBuDsY_z2gp!?C`0B;x1xcm45{4&^x&vfk9Gu+m(3SPwyBYMsdofg$xA;E zD&EmU@@LJ_O7GmkF(%YXIZRwfnke&67(3N2Y><0?Yev)FoErgKY=J)Am@{%ogXu8g zjag=Q@)Bdlu!IWn1i^WYEcXlgb)Dc1Df^t->t|t+cf{tP@671<6k5HfEYf^)SPD;s zGg|JEMT@^&;3uO@8u^%;(;vj1?b6n7aHWv%RK@93X;k}3TC#b&e?_{dwd`08U3~u- zJ8d-iyPrPRPpJMw-!4e=A-SHju`TNI2qnvAP5nUO}P#9ajV5)>qE~tyt+Ah zzYmitxD$#^>v(kRL*@-+PN6xRg-b-cVZ|IL2HmKwwnK7L4-A;;fuO;=T@E}}vS=u4i6YNRG;X_!tfM*3!-tJ@jQO_6B>K&5hJE@(b z`!yXk+d>wtUi8fCwaI*=m5a9O+_d=B5PMwJG$h}kWXQh|` zuD3|t_A}j{x)Jm(XO5%CeU+RRnV@uqxe)ScM$pSoUW(>=E0I5^D#my;MPcU)k&-Y< zn>%LqNTV#!uMbT}e549J=sRuI5)qM;7fL%_)7He9m&5v&2IX+#<03iTt4=<7<+g4d zVJ2BT@LfA6YkA!qXJMRXA?)49kb~Iv6oZn+LD5V~OWeodUA+LusaT?)7;-LszTzYf z$qJ#!N}|XrqQL6k&Kl;Gp5(A+xNL9CXIormb6j@K*tN5!o>bw(_jd8`gG0_WgRKgQos?W0D2|Wo+dF3}` zKK;hO%#t?~TP`YYkm=QCAGT%}{z<&9v<4MgLR9=%NZ$du^9Rk6A~pGiAM$zJq6_{C z?HOm6LzQAI^P^G=BA4wM1vIaub;ZJ$X^Rtp z9ypvqK?>ly+-Fmo{3Q<6%(%mZd*jgAy9s|J%i=LcqS}xrKkcxiRwf&hC0gh~bRXfW zUjHi(>bhKMQUuRyBDNImgM zp+GAmPdWT;o21-m5`4bLrts#6Xfy$#fp^%&RrlUJTf5S0;WmC3NU(G#$y zQq1-ID93_C1_#D?O|hn2r;}Q$T!r@NvxB>(7sMAsXz;hlr@h@BAY-XpQ|;;8nz(F1 zpiM6U!-auO3p|=q`q7wECjw2w6@_v1d;0IIv^H9KR_BB{Vhfq(I+>U6E%t?OTxu=j zl+%^9Y-`QDqZp>u#+{KZ*|A7#Pc8xj9v;BQPlUh%nAQ2Did{CkC&L@*;L`r$});{yq}9evR5@C-G6uOc6c7$_9`{TOQTL8NB(+@=y!nKD63a?Xiu0E*Y-S2XwK;802fI_-nFKq}g~ zNzMC5kKh#+U0YDxD7Z?FH0W-$qWqjH1<>FhS1aagdXeR+yB$1FBGZo$CR;4}{&i_E zTR?3d-X2}LE1Ml(_{T~$fN?caeD;AqEgqzkhVt(*YIjqpK!fQ@zuOZ{1Y>bR1~~Jv z+Na_+&rM_ZT?p=CVTn}fqU{Wt-l|j|$h;cWQq;cnJrQhHB-yGc4w5%XH6pr`uPMe7 z?eKP2q!+Wv{S4~(^#wJLO+CaU1e!CNpqM=OkUXqTDY=ANXq;19=!cC~%}7oa#J@Or zUIjllYDrl#=_h(GX(;vTuj0X7{d?I%UBC&X-|ehmJ?O4miW^iqmE9dGy-M>P&bt_q zy!*uaOrcxm?6Rg3WL<@9y-P3+LtZ7ZKBjQA5nG6ViMqeCVVY7d2HGs6ZgC2gBZ8PyB}RR5(hDyv&d`D zG_cV*w#;zIgYY#8SIp?}hRhQzCSrvyq>RaE&rUao&|9T>ljZcUTd@71HXRD7a@$km zX{yKt-eHjQIH>e9=};#rEB8|HwXBXLpUhla20mNYGMm0#DX8^0`ELqEa}#Nf;NNN3-A2jz{ZTT&)|MOpywzxq4dOG879` zK>(=QdeD(oYVIEGG}56wQte8LEFW5FI*#**8S=z(X6GIItgp@{WXOptYbFv-wS^6~ z1Cz`gUI`b(yCs+xf70TM$*1!`5_p}Lkw3dy8%MA%DfoMll3AnKuW-Qb$>_6<_4OZzXFXb8%*_nV)69efLrwGuI3 z-m?E&#h}zr=?|WZJTR`OlK?DklrrQRG7g;MPv2py zgdg(gUOO`jBF|}KIQvetwqMfS*AYpoq?loeax1KdAfDw$bMpGG>IM!K3t`jfVfEIUNzGrjW;X;xyJ_MVs^n8Aa# z-b5}9S0`@2@7m2FFb_@eS?$43LA**p60V)s*}c=L>Wa?ny2G1|^&>4E5G7pe=Mayx zIwLU|&#nBs|h^UzY*{KrR=a3$9r&}psAiF z61w|!$gt$copXl|92@=YfZk2kC8jj2$H)q(v=6j01X>v*?Qgm^)Jdm;k?eqn#X!Tg zt1}))=Owb)F%I-V8Pg?99;SVtWmfQs8MxWapzVDHhL->U1qC6LTC1%5tYeriSESGE zfI>&SO2DssF`cUHcJMw_A3GgxTK@O(SnsUZ_iI44LLT-3{T}-`g>tduNj0KT=ZS&b zM}tPA3uu<8wET%TJhbS@_6u_LJ*t+sOICMp-1A$h5Ibfvd#k9ptd%_!3!Dr2-DVYs zPjU~D4m~ABW=GSlftDvPt;|8VV9yr>72amtCxHzoH0DK0*fIW6CzX7bI`Ie@oCH;H zjJa^LyHQJLu?P>Rm|h@Sep>t{(3*UDupK*5bPmV+Z1LG)J|l zByxR84n-TNIoW9;P<{Mj?CL6^Wlv8itnlOyoCxYvN2my-Z4@n{+jk%Iu#np zF4M4>lvAh)h%AMjz83Y)?t<%E{(ACw-AE~e?-`;N(;_u1mtPK{Kl=~{Z_Wup%G$?iY?wcr@!?w?>peTt;- z`2k0+SwPt$>)dID!D!XV&w*v;s_qdcf1v9&ANzfeO7>y!zM4B9))qBrgZ2&aA}G{G zSr$=W7(^ayY0M!LeMY(QY!uVeq+6-zUxHVReD8dEP}DheP!#?QBYw_-Ocb1aLxY_g zdP|=K@i1=Mj$-`;|B`0{f#O)hQUQ68X6e={f8@LirCg-6ohw zo36|S!8cKRr_i*APOgY2rgueGCsMcjh%5k)kxj`5;*nJyrmief?>{gfUdVZZtunj|Hn#eAdR$(sP-E zZ;p;?VF_B*z+-6o(OAFC(XAhhon$&7D>%2;0o@F>3gk(o=e@fH@H(Z4m{FLZkdl)- z=)DDW$}$KxdZ}~*qD|Ja_ffiT19UFuY~q~jt6oM-1DSUYnXX!S9?z05WR2$f8(<>dPsw~Ana*mkVP zjaVL2e-g=jk>B%*Clvf$Um&wtbA{lrALyYn61;f*cu`1sW`$?~V7uvYmE_&}9Xyp@R=uJjT?;XE zPVf9`lsKe_S&wG*kwK@Go(Rlci|~qWtgJWb_feAmwX@qTwh2kl@A-5-Ba?=g(*j&;Y!UT=W}pU+Qx{AlsUEe`vy4VWd>BVL4@J`k1#_Xd<&p_DOQ*D%^yfSlh(^>X$EGzv~z&SSZ|YZ zfmfPsHkT&?lh4Y#%aHZ!Q>}=&&5B9n+TN$FI_NJQ$hNL>Y0W&P10K?ipYO(3(@hJI zZndCaOXl6rRU-o?fy7{3`U^*Zg>WLOj3ZQVie4q6yge;Lw{)?mxL^W!IobM;+vv)$ zpAvVtNEG~ewE1HxOH?Y}@js|QCG*o2^@E@E7g>F0n=j*2YrT>DqFEFr4hOP0;^YRg zp(HTCbAjFaYL*OCI!N2wDSNI(PPP0_BHc0N(5Z8+c!TYpOAL8!e^tAe_*^4HSP3OC zry`I$A9H1~N!$Ac6@HI=`ZXw^)sB>v)jR_V09X!(TN`f;#bW!ny^tdiSEz>V<@TsF`kW12RO5 zo0%gCJP1vtG?J#YIG)L15~BhUMVW4QQUjzIU~dmwXWvSVNlHcDnm9jQgFwnJ9zHr9 zn=cC5J9BUo6_CdQ)rSGerMmEcoyTT9qqLT6Y4NO(eGE0mequ zc{?r%|j~gKOL3D$|T0e?6u;QL*g*-0K&LrsIRuqn+|&vNjDEJ?X%B9 zCi!$*szCawwAa=r$ft0I;`Yj>Ngqo=ER(tAiz5c!Gf4asBtE$)~9< z@9re+Oo{xIPF;ABqyVI$dAnu7{1wO=GmXD+yXf*r)Un7L@&r5yLAI8#8$8l8`{Jcd z9{I%&WJzO%=l;Kh&HxC#SdZ|a!|q1v&w*EZ?X%RKr5AS)0A$)N(&d5Cfuxfa;Zt)-v+Vwdd z-lw|6y-Sx|gWh)()L_g84d}!&IR~poChZn5>B4huF7l=--_nB^nx%%RJLR|vqVLNlgd)#FUqIqUFf_}I{06~=mSO-WJsQ4CELrlh7!R;cul_JXYKb+q2rNG zg3Ru?Mvv%fzV<6l`AlJ3lr<Yb)Vad|HW~fnDMj7(%nTq@^e9Oo2HB2=Frc2LVOe7wfIYF zjm%8f9<+x_1>Xc;(YT)8^oPzTZWea;5SQgfF6 zR5Pbmn7H?oT##bWM8e4K;UwjiktRje0&Dq~+!}MY;qz&O-suTG!ihfVw9=yFtg@u% zF_9HBSQ~d>ywNmM1opT@EyEFsfkEDOVwV^y#oP^6dhQ5Z zU$*oE>%@b<&X3m;o91BN>Jr)72lw=#N%?U1mb`AjfU(~VM12VuIKWnVxa+DDQf*)k zylQ9Cg7DOdi@*q=j_-ZlSiWN?9eD4^cnLQ#8jf|bi!pLnz9+mFU!+agQ6^O|y~xX7 zj489>FQOE5jLZ~mFAy#FF>XIW!`${vX0pooc1{(=J(h0*9R`B z!?X~ieb0rtfJ4`w{pSqLo865RE%|nUj#Yvj0*f)te1>sAh+fo+H3MSlW(l`ggh7g+h`n;%Pq0-J^npi0 z(v|PW@po~5iN)LIqEUJ6G#a$YOT^Xrb4Skj{Iy2@W6-3e~PJ*7G`~@ ztB{GB4P$Qpz15j6K6CKlbT)Wi{(JAupfC9SCf%ndEvH+LwkBWp&OF#w{j~KgXMNA> z_5F1=shXKzy~AcUOh8R>a0igGv&p6Um(vRkK?3R|D^mk5bB2=4poIahmVqHw+SmZ+h^8>)Kd>6yJXTXqiruEvnW_ZNz_AOIA zD2EpO@BBBApX(P0?UjfRb0hW*gEXzv$c(ym|S7bo(QkZwYxMW%34bb>&(7 z^;k#|3K!(4C)Jm(WGPdKN=z82LaC(ZGYQ4%@(|a1uX!aA@#LA;^x_kyzF=IX_)JKT zg2fgvly*Iv5B2G8+hN`DZQ`nkQgQxy=Rulz7Co)BPtBag>qN{$#;jE-`v8;JCl2O< zH{HMUI{VB!`7{cA@bT(_ZY4msdPTN=i2#=nfU5y8SEYGzdn6F4{pM2@4M`k7KPkcX zk9173|0(% zsfh6gql~d5J)Qt9-Hfs3HJAO@c1m3N=ef-IDz;5~V&Vt<)`uHcqe;b(swn_hB}(&A zDID|fP*Q;`Uat%(Bq2J`gZ z-bpQ+OMpwbVX}FAxaD-_7=U5NZt`V1u)kh9XFZP_wjuTIyRq7DQqKGkIx*eDhQOcKYP|sjIY7x?f@={;V-gBj`>#uO;ZP9#>~#A8#g12)9}tj^?VCr8(lg7t%aYo zOoKlM3n{}^AtW%OeVIjnC4bIoZyY+DQQ}cn~&&0c(vA;vA=s(-JPXaeM$Y?kq zQWj)~%8*y@kp>+`SX(J1j(F{cT=M;Aws%-gU{X0|#sygp%<}`+W-eLJPfOx>wh(y-hf=^sewG4uI$9XP3)aGm3VpGW`9wW zRw{yx3ve|=##rnw4A9V!Tn!x?X`Sx=q7MaSZ~WM3g>Jv!B(ivVW^20de?zxqeO^%N$-)_h8!d%ZoA`^18~tOGik2BQg1=5ltS-QN zTSQl{w6c}{Uaz(Ch^PJv+&ZYoE7ap_oqQ+^aJ1AP9_E-YYS;jaWry`*(e-E;JWtJt zuaN;6*xq-y9?+E4F|3VlS^>PcuE;}yDhm5$ozt{~0yr~?8q6Cx0=3*YS1$sq$bF8H zSJS?#__U_i%0bko9>Lm2Lq8|#(US`~GI=PsY9ZSgmw#2c0#(Oj7=_#{Ln&*j_ZQuN zDq8-j2(@N(3@uxa1w}_)RRa|s`N&&ZIznG9wc@T9wuoi4G}jALzEud4-|&2jG4ecY znf?mz{OmNlu5(}Q`-uGWPpReg4_=8{n$ql$P1C?1V{SNMg|0B(P+xXnFd_)gNynm22~LbeH&&>5XX`IgUVfNd-T@ z25{reZoa(hFYvvCz5@Gkqx;8)n(%OtCJ;lR9- zj+A$oUatl}mnu@U2y56r3*|tX`|b(tvsrt+Nfn)WLEn9BM4IG7 zq~}}YFreCh5rih(kl)jrQv1op@H7o24q3XP$71PdvkK9OyZWMH@g_9vG2k_f*}Bfg zw!ZFh{ow2U^a;KdD7T4N(Y|y}{uEj5{-PYfcWjk3_*Cd`#BoHYT-)%#BEB)sN0Zy# zm&|B6b`uTf-2B;C#}!3&^wsOQ;SAIic2suoHXlV!vrkueqIS!XCH3Sh&TtstA?})` zUh{GGV(@307hsEW)S*2tYVyB@>bbQs9*OEnS@V$cTV%Zj0qG?V#L!hnos z%@m&UD(8ld0iViaMzW+1#PBj&&KQuFN_2V;Dg|e|`?V6Knq$c!pMhFGd+?yfc7OWi z{-rl;@C;joji{lEUjGyRhF0D1*F7}PQ_Ho`>iWkzrgGvj$YPuQ_Lr08?2_3tzyO|O zc{rOD6*otb7P1L_D_r%VrLFS@>=%ItJ3pw2SE9y4oNCWqx23MIr>h{|lN3PaQ5?Jf z2{N4<`Zu=U`4gDkl}xL2tS%t^fF24K{Lt49xS6A)0I;T65U&1(ia#}{{WBH+lSip; zb=)_T;e)gSxAZ%1Iv^WNfYuOqa(AyAAuUCEG`HSoMwTNOGE0|wWcEgl zR3=JLgCz19$XioQY;jjJnKq1AQJ>j^gS$(F27k#2!HDrm{g@;%IShsE8^MWLE?xJ%oIGOU z168l1rEd9?H>y%?73rTV9i23U#$nA;un-5W`2HfE3b_6c*fTzWM+Kt8^=mHhl&cZR zI#GN!=h?e31)A+&kFH?*xUT4M>l=LO5MtdT&w1_bFP!<+>g`hYP-K_9+@1Klnhzf5 zo^`Kc_(!kJQ!m1vy8QM`EnN!I+H0eKb^N?|SIqbGSPdd0jzm6Wuk-823%3;edfu${ z`@4s&-dc7sC94<8$*H+WYAf3tZ10>$lr15F7Y`8`XdWCgpzoZ%N z^smo}#{=M{@~P@!>FAJy=XsxlBq6ZEj$>CPnMxf-0qiGA0JU{8SUaZ{$#PHfbEsgZ zo)FQ~W~??Z-quNbl-gnQ?sl333-BxApv&ZAp|n^y!e&X#rVSz9$3uTqOy07NP7=kZ z3>BnQoCDl0qEO;GKizfJ;sW780sSAv|LFBAtNx-1&OekQBT}kV$KOBk(KGP!kLw#9 z^NjP&_BRkMKu2<=LoX-$wC(qTu;-7E21CUT)BUO$tJLzGZ%HK?YuKb4*B=DPJG5>mOSM|NsD;qJs$X!E zw}d;Rb`q#cC@4>S#m64Wpd*XXh< z-=vAcp^qv5+5< zpm@h@?`qc}-Q>uBVkJXbRmD!>^`%C;ltrfqad}MUkVbsbK*X zhL!ZK^}zTh0Mbtq#v(RAvT$H`4|aFl_y&ZdA%at3z$Bc7$R?0k$DjDGtcP7}@JZO~ z2mRE25M6f%R(Q#=>{4;HN^Dg!PsE5tekYRy@`gP!4;(U#^(Fe;<_Xm-kns<`NF^o$ z{;q2Jm@FH(cvaCYl50eKG95saE%&LNMt$BSgZ|wdAMH2(ysS6zmV(oFfWHz@ z1UHslJ^PwH^!Sha1>L)Jprvh+A$?SmxW6bo5ZlX8tk-j*XjpulWI5HL{npWvKDj`hRh%Q}cKg^x4dJGiQ3exr24({@Va;Bp zKl;-z7Ob1*&(#ZnLZ?r{eBnB)7Q)DWfLU(jMcPp#_yzJiFR5%^;tRh)lN2o63`m9w zK(4p>Q-6*Wh~Bb}EJJkyt(rf26P0`wDRR37PQs8DXQ)FZhu2g^Mf(1{9T?%gw=+GD z5UcK6x(W5S|Ixuv%C&y|w91h<3+j2s+{CZ0U!sVADHxGjj!l=U>_EWvx8g2%;>Z1* zXz;;ht2D(iZo?HrIY7uym037sm7#D=fp(r3@Vvp`p~5^njeav@j{DJI3vgv^6iw#B z2x!gFF26K~;5^_#zR0|K@ZOLVoyiLa1HPLK(4xnBCOWr?TnYONPH`6ijt3V&h`73< zX-hz5IsiDhe_~*}XBKJR5C5b@9>55rbJ9sG_{>+2k% zTMszHx2+|YRYi<%Wu#5r*e6YFu8Et4pePG$ogsvgCM++dQ7Y_jA=le?@n}pA&;Iw zXC>!oofqh<5st~C$_6|WDnOEG&Zobosg$Id@t7i7{RfOQi{7U5`Bfc}awWqbvTvL@ z`be#vdT=~j203!vi{k6RFr4PM#I3=}WU553g$YA)fbQ<+k8WPm_=-+@Uy8RPIeehZfhQ zS1aeHZ@lfZCpo=}wZ4t@FX3Zm*myx@*!wg}&x8vQ79ZtIuqaH2Ur;M@44e0l(x%?W zVF#cxtqus&`&wx@ptn?}^2eK+Y>R=ETAVyLKe}4l9!PdzE%{L|sgK@fNU!?q@#x%h z(BiMCa;+8}_D|vBxtXe7{52diwjaMOE2w1dT@a`NPi+=Wiz1)<+q&?klLN%_oS!0M9k8&pzh>H!$Fi=%2B#gM+ zDQ(Q#<(AMl@wXK^FJ#jb0V2F#yn{{c^LGxC^ z1NK9vO6j?(%O}~@-}rPMpOQ6M^0;)sM%UZLq>o7rb(e>#U_riGj5?Cgm#lsuG_98P zc#0X34FG>hIHeVgumajm2GDM_pj!6V$vaIp`RkXONREN$DIHHyc;}MhqtIClP2;0T zJDX6j(ipDh4thfMXl^Oc5>BT%g-Mpz6U!{3W8v=w79aCx+ zerZ$A_mg)|&scQA0|9SSaa^UHpT_O^$QNJ`uZ; z+!Iz|kaGX5@5jN5H*4>C$J0KIjFqHqD(K?WMJbM4C{;9$&g4t;p22gbkuuF$xJ)n^ z5ebtP%F-C#$C#S?!Gq%0eGEJTvXs8vc>VGC+h;-9uI#C5-{9{?+n;Bo{it}{W&$d3 zw^bEWn}K&fdwCDLODlg`woSiH_vV%-Hmi6rk^g+o3ES&$uDE$0`72`M$-Cz-^x_}Q zq_a9Dea*nCz$^bFvkhP z3*Gu`k2j{A_D%sG#NVFwRRAi1rfq+q@NSE{X~=WVX|ny=;CK)TCyiGWuuYKrl5o-T zC)`SOrrwqFLCigL{{4mN{L9!Zr$WHP)>Df_i!HOf-j@LMIxk2){t0{x^bUga1Pq}= zIVe8M6WLWnZ#7b0V%@gnzp7F@i_iYv9lD){#x_BN)6vt$8K-lmYTt{!?mhhrb;|U< zj6w33uiLg@r=+J+?f1&gO1aOa)HR#li84Pss%6kx<$K5NA={5X9}rTb?YQ*sbpiqc zq?3p8hyzIS@pCmB%1-ZWZ&~Dekfl{-PL#7tdEwOy?&|kDvLj<6KJyO9gbbMbXB8GH ziD|~7)PVoM`enWl`DBdg!8}E(wygsA1vIX~=(~35dZBD`;Nw07dKZ&^lwzOWxAhYV zrIiL}=PxIBjA3X5N_hRSs9ycGHS<$T2_NuvcM~A5`>yI?bySpJ~r5};!kgHYw zIvsV-q;oPAd84Ygp5~7}XIK|gdEA+z=+5}Gk^^;*1+uvte+ADnesIId#8tn<@l-EW zv}28xaHOeAxR=qFAE}bt20z(9Oibx8>Jy5u>4D==QhkX;a+m>#(sQM{i4uJ-#}z^; zSlwbMXYGJ*4Z<{7*NG5-qI6{j(*LJ`ZHj^l6)~0c9N}Z0N;!H{DGiB@gE7r2`5$^} zq8%a~A(ZAUlUDePY^~{P+@!uBt8pLtz?IO)Ema&TGtct6K9z?U6$W;wh*STB*LLER zfbCD#<3X3q;RD{}ji-)}@ zzg}|O(0AM@;0TGiwmb0R7op?DA%vNvSTEZRSM<^|wEknp4~XxIFf&+Bw$0^cRU4ry6NT8q84x9#cBJCWI_1J0hD{L)kn6Gf}s@5gxb zSd}WdyncGNDzT=K+M=T>K ze+G##K;WI>DWdL`3srbbMPf9UrayN~&*U`P!#p&Lgrtz$IV&#mHOQ@{2c*V-> zK=Y_ni(+c(?dKMcP7JP8mk`cibjv30-5LQ7Uiq^u~^MiyK264jLMu=e3kTj)tR^lR=Dt*}^VZhxgZQFl*qM0UaAy0Y+t z3C>h9X(Ew|`Ch2#9fP(i&Q=H~L$U5AtC6ndCHzsDKHk4i3<89=Q_8mxp3Lu#1bbqK z-@zw)uh!|+WZc+PjuVu;s3qNgH+ylb>guyN)z+K8pYSd0C~QS231&fEFZ0-y&A~!-&9JG-VO8O8V2R^js>*EwrCHfRPoy6+XL*> zF0Hwd$|mnP>&1%uGGkUA3XYv;I$s^$PW2xYTb|yK(7Qfhm&0D!o@J?I(mrMOz9A;1 zS%AzoYOfo|H5Ydrd^1WWx(0l?`&G6r37Qa@24Kh_7kCsBWu6WxmlytiO9dd^8VKD2t(%NTSnl}+7b!9qAYALHF}*t z4ch{vWz0gwZc#}zcLD(mDtY>MI^XAoLFY16aim~F)`1{u;Yi=1N5%ZYIMNp;idfnp zN?4s3RY$6Pbza5E%Q!|}aU3;f2p+>$%P~%lK_7Pana1-x0KDeHtBVFh|NabhjI-Ya zNBCTo^DcktVZXp1I?wT2RP1$mpv$qP^QsAzp*0^a7|STG>0Ys_sTq%mv2`QPG^msmi!_+s6J;)QYuyfV9daFN({HaXa0v-*}SWK zLOsRIKMTqv>`iVmvZNnuioo9Vrv#Up zr}xcj-%NR);s&xvdQmMEX(dYcg9`y!}?TaOHm^NpD!BUjFWi zCOetpoIF2_9O#$-x#&GbCcOVd98sr|*RKBk`r&ugw;g$fV4+pQhc1;Ta8cfuzf`dfp0c_c^z{8yj^OzE#0~qG;6n` zyOIE}2#wqEKP@@%D^Mnj@9@p%LpHv*Dnf^_nwipT41Z;chE zp-O#vn`{oH5TTPC57@U6R)oDy4gS$( z+Z5;mpdzwyAIKNRZrB#U?NJQ)=WYt}#^@yZy{f_Yd@3Kv7?iWb;t#*y zePGXPJU(2sUbeqU(R?k?9d|pkh@k8pEPcnN>%rO#C--mt4LoyhxQEEk?+PUPUk`%=1LGiR|Vhq;MDI0 zkdj9tbNGB)-ElfuExS)!->~s_i2r>1Z2PKz4}E^9w5Q|WyMMWUTb$TNe|Gm~``XIy zto^9Rd*|~Cy;{{^3-Mdo_kHhz?hk+d#IGxq(^10zLnW|``EY4-q3hjV9nHZ2_a`$# zBiVgQpVL5OX(BL~gjyHQdh=4BOqo|rMEE}yni4IPt&Udg7P>wHo6CT_8U(|IQYaWg zxDR~J&-7>os~BiJZ|`Fs1Rrq_I5nvnvmg4DeeT#6OEPjhB}amq60Z-kwm>;i46j<$ z_J*71P?Ik3g0?aBL(kK<2lm zIrykXSuv=>I3tT?u2@WQN7_N_bKL7s!~z%>c1AZ#$|qli&fs%cCUy|3=nvxudIHrJ zu?=9hx}|Q~s9Wvx@57*^9_@A>yvi%u-<8ycwTTo1|Q4IdEI-Y1x)fOIm zZym5rXQqTaMC{OH^0KmOW;tWwzB4Ozs^2kjz|rJEttpvQXhJUij8A>ACaFirA@fae za?6?W5AzcxSq(z5S@VM%r6)kcUqm8?oiz(2)^J!+A-NHm!aMr})~FF6ybwF4zxe!y zndArC2w>=KDWFR&{rwp@iWNMeR)6bJcS2B#bT=4PQ3BC+IwRzD#>qwVJ3DV*{I;KI z_XT}I-T4>4n@;@{$ono3x}fkIS!g1o32x^3L3WhWqKK}|>ctKRk@YL}1ppX%V<*yo zpPD?45ht@vn6+ezD`bmk;>;HXzz3Q&(uD)|j^u7R(jAs)VnZkX5e%#ok26# zP0W2zC?Ml`-(y;;*c>$N-Jcu{!QMI2Un{q=jE}gr)e?Ac>f-o+29Qm@9Hqqy^Q^EF z;$9;{%l9!4qH7B(%?#@Kj+<)Yrau>CQ-6F;=HfM<$OL`0WI+mQmyj$D2VNi!r&M?3 z*16$yi!o`w5K`v@>eB~5$r;ZxR$_OzYzwa;J2<$3xIoo+3n;Ip zzWduo*r$UY(DM{_w9~QdsA%?d<%qQ78sbVsNnTTGQHm)9p02zAz@V;IR5BtGuq-T6 ztk_JhE3kr&6cjRmceJaiioS{q#N3U5_C=RhE4nSP6lAqr{WkbBZ++S-4m>FMZ-Jfu zF>1P}=!MtxbA&VbWM5wDOTlD%ika~Xb`)EMsJL|D3IB*?lzt$OxujsSxPB4X2Z8-4 z3WHQD0^Rl9V#bd@26rd$H-JKk2hZ4jm&o0NJNxC>Z{bU#g5hIHv~MA7mkwh;Bb@Ir;}uNuau@qzbQg^YjJF+93doR%_ak#9*2U*9q83v&$E-u2BYuM~^m2+)n~#-oY~1 zk$Nqm#*H0!?X>W>V<&Q%eT1BHC-Nss6|w0UOIib2`BWDsu0KP)kxb$q8LCqqly?OF z%fF3yCJDK2_lAmt=|N5o^Q@R7E~G}W0hZ&eSZzchtTG~tMQZEH6+gxW|1teCU;C>h zs}^tz)D;+x>taJ7%V(fx!@bFRlP{}~p6&VEiS%`RNYgh38@{}Xc?RS!G%Xw5j_r$y zMcvH-feS<}P=bPSv_uJ-p8s7GMTS!nWX*lE5Cb6dd5Zxbw%@beP1BkG_%iqqc7L;P zgBiURH>!9{r@ak?G3!#WjVU6rZWD_#Xwx z+|@`aKbvSz#yBm?)@|Q-arr_)w>4+V4N|(vmMzTv)nr zzoMZJSxgi6NR%B+;QLDeqIgt7)B;r7fF3V~so2ujxRt$yL?y|FgHQ!BSa<5RkqlKm z{B0ro>QHR@aoC&@nE>^)O`hK99R8fIO=_gR3h2r z{e9X|Y>=g8hLA+bIlc0vkLPZ$Ra^B13z~PRh5H0um`K(plJ|m=%^d{DJc&HXlF-Hr z6oV^pgEbOIkv`A%EV&>0`}^j0r79$U==?QJ+<>gs`DT-ZE&Utf3_dVFZL9N&d*RoC zr9}%YEKa(W>^+j#e`Oc>bjV5Zl?4C0mF6|| zjQ+WSMcQ$FQ6;4wk|+yV7d1g~V41@D;5;tq`3PZwOkht2WK;y$lOVu}5Y*7_A*AsG z6jro+iVAR9ybuVmkXTww8HEbxqtmmG^u*l)|0-Kn$2h%>p1k^X|3#zK+YCZU(N=ME z>vg>6bvLtKy?n5Su~GU?vCN8X!7O33)GLBX6UBpb_yFeLh!B#?FbR+)z8WWY5L~(? zoT@OyCH;7=i;+i0jDiu5x{e|xrkjKs&oGXQ8XU%GCK3qey6w3t*tInTT&Z_VxRK*={k4w^zSta`q#KV|hZ?1nHzV>W6W&xv3EPUY#D;Sq(_k zh0Jx%N|H2~Xmq7Pdul9($BS!snBzC6%BFq98Vzp0HV1gYMNcs4pS<#K?@OqGxxKJ# znx`QlD3t;=PVAT0cbwWUR~dZp;z-8K^k_i{yty}w;}}gY4JR%A(??32xF%$G5a;#p zkA#&fjPxmA*+4$IWs_yI8oTilNLgpDl>HCzpVa!XE~DNR5lnt(*f>n56`cPo=uD>{CR zg<(oqROTMWm&7!CMf|V+j6rMx?FQ)Z`$QiCV@uzUs5fy(Z&Dzygno`T)VcVfe|u@Z=-~ZMY^`cZ%`i^2P|$VPg<=k;gt7PxhAIVoP|Q z$`<@SV@vZpvYgnKs|+TsUAcXtQx}1#jpnA%b{;MC7*b@$c)!e3F@e01CGZ~^Y;e+` zeBb4Uw)bPv#Ao_NdfF-{)kM(LWPal$VG1x;;HO{?JsSq}33%cZ&~qffJ>1|vpl5xW zwFc8I1=x_-8uHGlhnM$>#_<_Et3*HXE55Ovw1t>V0DI$fN5s~VLq@3=0+iZLu9dh4BNeE- zT}6^rVMdbVcoS=*L1T8~4oV^;RHLgdPQmt0&t!P^M+4R)+kJ-W_1`Ys`0w8Gf)F@O z3Ss}ZRXzTz2=^ltO*-CDomNT02I zaLgdfOT&(&>U@?z{|DB24!}OKsj_*zvI;XHgk&*n3*&6Yf8gSAHulCN7aJoh=VhOy#+qX>&(*a0@*80M&d)%0MNi!~Rs^zdOf6 z{ljSsi=D5UzsL)XviVmy=~b?Bm6~WO=By;GR_Okzjj{J)@{tDh8?A&(7N+zii$V7L zKac?Gp92nH7-XCvM$5c^s|n zX-S8|o+EmA>1D^ILqZ4Qo!!6U>kb+lDwzZWKAzjLuod(TLl@?OmN{l3Gye;ISoFnG zZIEFkpTc`=;c-#Vaj(QPK>JF;+$b0=%^f%V6_5-t8FR)3Gd3PQwa4$W{-D z{;$RZEhUjeO|h4+>HAIDYVxnUVYqx2n>>u^X#p52*otDHoJwmrR7;;n;*Wm9=MQM5 zQN}Z3_+nbXG@zr{rHen2Fc6zKmgn(Ah|FE?mbMUZq4zaA1ZI(LAL5V?A2PvON@pt@ zjTN8wRujA};1HI7&%y@O>FhQj2s_Q-1BAZdLP&=nEJ?Lspn{ao*9{=3jP1eW#xPoau(O=jZ3 znA}=cfuRYb8&k>ja$>?|I#eU~G|ggQ(4fBp@BY2w{F0O*>;ed0O5i^=%~oy7|z0|KG9ejts}k~qt}t5jSL`p&g6i3 zk;rlqTN2*pZybiY0oaf%L?NMI>yTrL;>t+I?5Q)=yN5*nyYxSV1x(F9cI?lVA~#pR zvWg}pCB0luJm)EwlE){ZtJD`m1mI~_pS#F_8{m0BXYIkky+G`Sb2*zXl7aLBlL}vo zXHtNU0al>g{tki%n!829-EISby*Pz%p&ng}P-z91V}hT~!?iHlh7%<1FILAS@YGu1Mj?(soLri3tYe!l#(Ca(S_0P5=oNXq|P8(0hc2IaJ*LU zZ$-&xW%Q!wM8I8g9cBjZ~_2}yz!pkN6jv_FL5!7s)Lpj%0JKfpy! z2I=6A6}{p`>G$*aqHn%Hks#p^i%AL;s)SUsLb$y?)tQ7P!(}z-*oFmv^@rV2*KCA= zQ86rIC5~a#dSHou+*7Lh<_uo>9MGz8BCuy+hYjS+Z5y#V7A3&COGv`aXVRS{JK#5~ z4#KfUTF#N6Rp9-gH3(~x zZI^bWC;Cat12{-h7H(KYqQ~MDuvx07oLB+i!BQ=u$x`fTZK`N0-Cb}BLCJ~Rt^mb2g6H)yq!Tifs4@y>(u2-=D%E;Hg614E<=z_5z=sr>xa7j_L zO%r6wh@g{m74W%5-2OVzL)-JEqfR$LjKjYTHW3n=F7* zKRkr;lVs_x6rA)9{4?4N&XUw#UqcFB@5z{NyzVGw5+g8kJ726PMy=ycm;?rH$EbA4 z6^Q3w#)1w@q?6v|$#CmJ>+^23qMDBN)Bi7D5@ThA zDfVK6L2fN$N}d6TJ4Ugws5F@LQd1Zpj3UTlh7hOnPr$WF6Lf=WHOq7-Um#5Ky>DNE zTu>%i#k`-FBD`Tg79OwvgPt#ON86&yTDj*9SZM(#LuK$H5L7lpml>qeR~na(1`R9; z!j7ngrztBu9o$8noSeZ&au?_qab4>Yb;jl+o<%B;4Ar-7c5HUnm;U|Dbvx6td28Y} z)DU9jm`lr})8L5%>PgyHDI129B9iiMYcV#1y-~$esU)T zu#eCWFipq|p&wfKYF`|iLBzD=cj^I!o$hq+#N{iN7?F+jtsWuqBN>*)i}-Hu7w{+hLt2himcJVA2$OUUP_x4cC<+lp1{%q)BzExZJ3o*qU zhoo&~F|KSwq9w)$3X@4hax^p(^WWsKm+@$I2xL_NRQ4m3_skLlf(kU&?Pw?D5;30P zl%^P7NpUlFdWEeHwOloUYnio4^+l&?yIYuBo$CkncZ!1fB^CMvZ0l-9&x2%d)6Z9s zPn2D4TJI^)jp$c%-N1-{$95t5G3wu6xOccyo?EnZkwpH)fu`t!!!^hyq8V>i-S zlMwhn$eTslB|b@Z+bD0oXsr@A;Pc9Eq4=jL@h7dB&qH+z%AyWT8_wc6<4Y?D>311c?|s<5$Kwq$`e@}vUc+X6aCpb$K~xpN zv%Nd?$Zcg022yt-Rig9tfl@%1|Mk_;u+)Q`k*w>EG=fME5NZr#AyWB21yn)ZL2&u@ zsw3F2C_xAJUJbtO0a_ctRB4fADh*EbO-Ty-g{h(s%m|B;bb5}hW{~^%j5)Y5%+!Kb zf3fCKfeu0D3~LyTV%T7l`>=NI@NeMS`Yd#MtDHt%yv_#GT(K}IopL8Yk9u9z1%tE+?}RfuYWjxGISxd5C91yY)H5Tz681}8J$qV<9xD+5_9t_9Yl$Qx3s zpC#D>23o@_^q9ol>9a@}##y-zY3}L|;O2Vv_g?7KqN%ljH9hYct4tcv2YN(sK+Yu% z0cCO7ZAktoI#%KNH)K2IaDOLgTv}WcyZBsG(v9Rw&2TcvT2_1Nj4V?E&DZVp$Gn#9 zmw|@Hj$@xF-ecrn4G~&PXFq#*a@I?;S(#(2@vVoU#0lSIM!CYbkDzc8xTh(Q^ZuO_ z3Qhne(O{HOdj7i%r%HuzKK(L6{`(L5S=ue4Ka*~U)xq4*BHna(LYs$@(}L}tQ%6<{ z7&PwV&61HXb8<>3^hkWw)6Cx3cV`pn93XVL&`^ zs@6qaie)coNQ1@ojI-ZkPtQA_$oKX7wef`@VvKV}o;3N!4aYEY6=sUwWRWV2yCzN# z$GccL6Ot~A`hE0USg78CLuGUJ7KD!=9784VfZZzzNBVccvIKUj+qc*0pr*zCeBzMV z6a`+YH2K0qiy||->a)^^n(Yl2$coc))3r~RhGE_>q$PCMQE3&TDpb&pD|rY*>x1fj zk06&IZ?Zxm6Bs8=q1%W7u;oP?6blASHC-ham|zHMb;ttysY&5|2HO7g{=C&sp+n(k zOrniZop*b;Y#6i#C&_zx@TH4+dYE-=4Zx^>W8{Q;9d`=9f2c!(ZMq1|F+CP8a~Nn< zaUybJZ6dO~z7$RqQxq1GPXwb696Nurt!~5U>@FvFO_%NGJSqdYmg(T>3DFeqW&&^9 zU8{n6R#IU1yVj}oL$4^__L8>0aMlZhu!&CQx#Paci|20hlmOm}ostQ9j@(9s(u>s+ z;!wpPHd+)zz=ADHnwt9&lj(u$$i5Je7R(i@rP;kGMrl}q6VDW6O3>Uz6B6$9+tF_s zio`|{)x{DMFzc+a-yZS8UVPuOr^T6qi&ZV?t)$by#c`rWW2A8Sdo0Sm&_Xb8P#kou zTnt1($I2BWdOp)DsAdJFc>{gwQ~V zTcdDDdPexOJYhQJL^C|5+D_ogW5fQ8LXNRtuAe(!(D^`i)Ok)?>*<#;8eiXak|WCCu1 zfm4(F1X%uY)-WVEV2uTfKA-NeZ#B~8T^yD$E48O$(k+Ewny65yK6HCHj&cjkVAY=* zG~!sxxZa?6e~GIIi>{FHU=i)+O*UBON`jSjWU7CO9q!FbYZe2oV=_QDuV~hrI^8^y zq5Tu79;wKc!)=I@Y6zsg=~-I{DfivaOMM2a*RG#2k|lr9(fDv6ujc1~SpRFrZBuco zxF=Lb34{A@bek{Zh0yv7=V%m02Y7E)ny~^0TE^!~ze0hDrri_;x|dw-DF)Z{oWQ0g za8Fn5rz+v#M0X_?Ae*iuhiT77yd!JZn^D|w`LU*MG_7t=BN9v%hJ}^I@AWx;-Yhwb z$yN^EjFk~fSQVEfSurZnyqX*_{g?2hKH39x`Wlg9cO761Y|42}3KSU40&W-~WrpRm?2{yp_ zMP4Ue3p)W@M$$F0PCC%@Wy6++thYGn@#-p!=Y&kVlg#>Wz_Xv?7ClSa^di zq$r)o$JrspzX)D&x|%B-BgqBEl(y9J9zvmY6FB5Gv4=ZG@8iL^2q5U(Nc78vgv2H$ z8p(e+|HPB-m7&Am9@7#g%pq$iq6c_q__@`!T#-j+LsF7)39IO*LxM#bZwlNVL9yq$ zIoE42^j85&DJQI8wFLWQDpLiH4m86W>P|U=G6L9ZlA?KXjM5;mRZ!y+-RT!1$LZY! zMZWL5&SHdb%SO<`D?{Kt@O}+ba3UsEd+ySCSi6Mim0*w zj;Mcj)g=xeYHq#=409XKhh1(S-k(>)gar322Q0GQq?6d8$l-a?w_Nz~XC!g!ks(Ez?+SGshw0b3U^`Q@fZ7wu9 zcu*|3%fD91KeryRg~?nms}H&NB}+OPS{}Dac|=pwGL{Yqb-r{44@}Z01{8ku(AZ?( zLTQZOMAkHWc(!7=tgZnaVt>-bunh(`@s0>ZKB;Qz{z?D9&R#)q*V&jpZEUWp4^a$_ zZh~RhFpmsbItM-QEY`eEkdpGE+_{-sK5hjJI zHnuq!K9z

~aXzd8Poa(}xil&K)MHgs(_Axx*)2!4qJbpE}vM-01iV2cauOvv{93 zpljt=;y5q9gMVjudbHNZK=nIUVo!4w4y+UEE;Yd#6McYiR6tlMf2UaK5zL?=C9?)S z6m`?JZgrH3C>{r5JuerZ z=g}~NhLZ0rS_fsRy0M3D^BB4soJJa@5^YNVeyhF*vfUJvXHyhFN8HKT#|&V_S_P=Q zYbdmZl!lg0u+xgvRvjo>nPndUzc6vMXR4x_q@LfI zn3Yw@S4p-h8t!zF}1ME7%Oi-4~fkk$bR zT97;&k+O9-qoC$`LAaGB%{pfQNzqOE@Ye7bPV$jRr$t0&N6?G<_CMBntUvDFd$do* z61eTeIgRN_Y;SsN&|D-b|5ZXAN*7T+(g@wPzaAIg}e}W zM-=zFNb^tm9(rBn+Q4r{~Ln`5MF7%ox8}cHBO&)kVkeH7wyb;(0r* zAqkm(XI|mTk!PiVOXJ-a3DYU;nH3jGxP0s(8#jbr>>;Y|I#gB@p*+;qVR>5e-CK~= ziCL1gkuWf;7@jiEr*RXKNqkdq4&Q+nAtxHq=eJ9{;WcJS`ws#mGC!CZKeemNHm@pknj82b*(_ z)h-Mt*(9x_ujaH#DoQCRxBUssKc;&3w=;94O7^uYdYB0n2Fi0z%Z4zc9m4b*wx?lmtjKebmjeF zX~=fnROfHrZAT7%y3et-L6>n(#)7^+b1LbF<$77Y_w~)FC(*gYUJ!(AHSC_5o`;|%_YYm&OYXE1 z8SK@3>ELQj!OHgi%F*|zez|A2rjs|UU1)ZzLpqlTLq|!={5FQvi83t0a?Oo_Due9D z2E;Rv2amb}S#L2TH^dH(F;RB&mybv=Say+C_W6d@dPyRIU&<_1N5F(Q8GfX}-VmZG z4?vHi^9xHOjE?`putc>~f-!u8iWp{FNLR(!MQ%*&C0XEWg}=Bu3MutV&9hFi}I z)VZRZ&%P?2x=z0Y8p&Xow}>DID3gDp?XKw91XUSuhc){u4bL|+N;mV49)#`=aGZ#KCXM;Bha&5V7a7;o1 zaO^YYo*Q>jTVHY3m`UiG4>?XVAn&UcknL%bDIEC^hIFmk0^8I|) z^G)B8?I)xPPYld=!0Iov%6J9?egj-L079?M^J-wOC9k5u^!+@FVZu?4$t z0!vsgomHa2QDcx!*m{5CBp>?)+Pd6af(14(u}^ych+Xky|52cUbB^mv^e6uzx(|kd zQliN}mVhp-utU8_1PNrQlz}<~#;D0p+1%H4w@;$pfpv(a{V`yT#O%O}G&1~mb>jX$ zB2fq_5O@!Id@HynEDn(*4pvu|v98d%!MK@^T78kAwXrcsl;bLkvO6ZiW%9*iy!$aR zVz={IE3a{fZ>qFJbISoR|+q}l!t(}CK& zbPBW_0ukNvLO*4)-gfkRz#CFHt~NEzR$Lu0%8qyA*v?0p!rAcXA{m} z?yS)9AuubNVA_Bw~f(Ndinj3gEu(!0Y#Fu@FqFLqP zJ*zw-^UM!nx2G{+lNO+^y45C2 zSPJcvK;0GU>>#7ZHXbWX^INX1krmYC@J|kX|eCR|0G6oHVQfU zT9BuDP>6}mOlh>>I{6)6vWT&WR52BoC{E3^AY&f@H={O*oIFrL~Rkc`6yy= zL6PGm1HC_k=$U{Ch8 zc$g1Sr6$`!xZu5cXesxC^_9mR+FXUx@bju`d5tB;rRwI_{wz+xR?<7Dg^+lqQ1D3F zLD*yl-jKd?M!@~k!}F!eT~MTa9jgd{v!BnOKhO8AKWSYt2@3Vla#)6XOK33ZWv~AA z>d~es%P(r7>uQvf$EO}J{-_&X<^>jcP8W}QSXuB^%`oej)kM76XpWd6&OG{F;ecjg zfIUj*4$7CG`bix3HEJ|Ol#Y`~?~G^Z6AD{Y|0@idSYDFd{WrAZe(9SO$#5?#-{`(= zk|eAzizPuX!Ay{~SBldu-;}k#WL)ImBtJ2ISN2tsiRUnD?y%jVaqHxM!Ijk5v0kko z#~gCsi-)Iy#jiDF=656tlJQ3+%^Eko5=4xrn^TbOg+PI+AM$KdAJXJ{1V}^RW^Xdy zicKYY_wX}bu|!~D_yjIE4y9yLK>cO){)7(tN-S}OhceAIH^+rs;&NZ*qHJ=_?Q|@J zYU4N`pWl{_FmhXLU=+XdMECFlD%X=Kxu| zvMBJf#aCIp*!etocN(YGRlKyx`=mDN+YFJPd%8IA5d58EQ~x*=uaNsMSgs+RC>Q-S zl|nD)ewc!wBpbLVCvd6jn}a{w)1g1)e(B5mWKW(E<+sC-F0vzgxl3w@U*Oa-Dbz<3 zbFstbfw_ehCkrjlsy{tqHhLr(j#*}=!*_0&k50q(}|&H1oHQ9M7_oxt)l5l$)QUso!)h)_;R%?kkt)1_N$Gocc#R zFoF&o7ZY~T_5rp;&q0lh{EvUsx9^|42nYmflAwNtAwyY=-@9}WuX8WVJ&_H6V)M-O zT;z|&Iqtlz$o%4z2CVh>$W-t7cuj!&}oC5lyH3$fEX9K|pnd9|5qHt=!bMaiFz z4q%hZJK?iV+@lcUn#%Fz_0ChjI=f#K1F9aPK|%g$eXyooKtIYvRsDqj_`$6P)Gpo? z1ipNYoQ}(MH;D9_^M4vN%P$Q1(CxX2E^vMWq3>tX-$o3KKH+vs_|k*oUh9xu_P%xe z=#SjZz9>F(4|~1WwfWRsHucuS_h)ZJtgZ1#EyHnh7CE0dP@ATYxc5);A}Y8T5b-Q8 zu?3ddO+dnGDaef0dMo@Blglt3XJWhuT6_xQM#E7PCibOfM-Xu<1M0`<4{bmFvU zZ8wpRMY`*jU^eUVo+molTqkFnY$pdzYELa|JQd~g(aHM0AD3@YQty%D;)!C+%U?dx z?Y(t8DV`n%+trD9>D&gclTqm`4PUD&iESc3&W32q$SE_V=h`+e$@1NY@dvc= zvNT46C*+loein&&?F?5Eo}RZ(*N%H}~2fiHWEcz5bvK3Jr^f>O#gJiY<*8Fch~EkNzKoKtkioGEW+T&vwSG$Kl*y(-Bm z;h^gau)|uCh`8XP?JKE%{m8K3pDF(dR{`lqj|z{;FNMi)`<-XF5cdQfp8d{2@n$J-9rHh9H@lCve97k;FC&{v?1=vxc1W$)K^} z2A2TePL<*Cy{qjpd^cLEfuAS_#I7 z*(~00WP$n?Ok_%SFFcJ7?d6jtq+LBVna~4vfMmT|V%)GfWJOYf>Xl22Ao6yC>>jT^ z^BCR4*bg484d2W?WO3$H_`7pQZ+AVZWuTJI_#qr_Ti&&k`I0*w+#E^#0Uw(0RsV3r z^$>V%_n>RmLDx42U4{EAuo!nDK$j;GukikX?NJ9miAgp}(w$bBZZIOi-;!nA`*V4Q z1-aZ8nqGv+hkp3`=jZzAm3;$e?ns~05?E!%Ro532+I9*R!Zi-a5^nq!1^JH29eN<9 zab9UcO-AQTZBN964*Q`!;cXUIW)yTJIsLE~8M;b+Whg_d%&YuIHFsm)Tuq`2^DM z>@T}tcUNF!?Xu+Wv>&oA+-1}L@s|pi?H`B99PwL%y$!x%L4S2N$QCisy7Thk=Z8}| zkq#FgiCPV7{n2K+JC)YoK;8oA<3KT#@y4!l{7sZAf>*i&;xt(m89 zv?g~4k6*Lke*p0D>q7t@$9%eZE5+F+pr=~vLzf^zQeoU#?a+%b_c`!t?b*2XdE1F-*L#?Mq9tbi_kK2=Xo_g3i+Kktk0qIT=q&v^O@cq7boN>-G_T%t}Ki0a}J?FgU zHRrr0JEmxn(2NoP@Bck^uuUu z2IviRM2W7NgmGsW9P_(4rjQioj11-{dGuejhwDzOiRIq;;9s;rp{z`t(fdg7iH`qP z%p%sk*(XSR#;s*kui@NyY)y-39K)aqOnP#u}KwfzIMT#AL}XxRi|1|E+u!K-BskgZ>WNv z4vlTP)0(c+Rwnh%vuJPSWZZj(ATk}lV zFI%`MqiUB?-AP;2|6)|R2(W6O!nBXR!>J3*EU=pwg7Xe2CiMmZ}Jyf{RviF=)nK8u9p zW_V35yjSv!lMxUtA&I35DBHJ(Vz-AEk4&V}OjQSpoaqc~BulbVqEN?H=wG zbc$gGN)0q{@gq&Iub`a3)$0^0Y;9sLEmRT{0yZ8XyBjT|q8xamxrjmqu{Nktom@t9 zA|)QoqUCfSNkAl+C14ngsP?hr?sp_<`j@RfHC8W_@Yu8KMjYzg-U~#S@ z%Wh^*&eMovGZMusPo*Fdu!34B%7 zxAS{P8n`^%@{{qP%4sFCbv^`d7PXUS&8992vYb^yDyw{GVa?{g`>eF?F&ev4!*vWm z4FQ}`?Eql6=`13eT1}>tp0rg(uudNOjEpaEEC_5h?x0&Cn1noB4mFN4C(}V-by1Uu zp>5|P-nH;kH?tsu`6SEEx1^epFk9(Hf~DE193~BtvScQa;eK(}pgD}d&0-HW{ReEO z8^`+GO7=^ntBf~`mvpD%y@a&IaDc-DMKnNHrw=UhMpa1}lwV&jF;*Wc8XXYa6a-a1 zWOVOH8U74JLk$f)S@GDF*cPszLb-Dir!lgEHgw%rn~4&E;zVr@!FX;Y{ATD@K=#nb zK~;@oh#Iq|?C#RX1J=Bee>s^>KA5-=StthG!}NV3gSk;rtEh?z2dzrSgk;&rK|XqN z>o%sJ@1@NR?FEo*85~T|6ZTbKV`XL?i@v}lnYg@Ei*YxbwrOH6r3o!fsk)?MBefGnM~2`49$j9fV+)4~bYW z?w~mb=3tv!aJW!|lZ@kV=$skOc!EQ=jCv~FvXm1ng7^Jvf{tp5Gto0odE6xKY z7_?8&G;I`Aum*S&REt<~Uh6GPoS+^b%wlG_p4{DTAe=lHLGOznXWj@xM&+883C$2A zk#0dnz~Pi;*VL&IZGGW#|G^AqS_Lk4PpzCKMYaq+h(q00hu+Pox{oB4pS2ALE@n`I z3q5EdPmxkOM)%cQ63{Bd)k90>^65-^iRjfMK@U4FKvGpp1b~20Dlp4Xc-@d-mGu8xUy4KpU zy`2z%4~yrLEx~tRDc}H`%nW-878PkOhC}$jLXTPEvD2yc<=5Eg5x)#%QE9QFU0LplS9?EB1Og;;L98jgydd4{1 zPujc}bk1a&PEORDf8RQaPuF@%)>^gVVbp#tgo*yH_e6-jB11ZpF^{Y7S2^ql}l`V+Nv<5 zZE}yfMVEBr@>S8-jd8*sW|?}Pt^pL%7CA9#HtI~;CBc-=kvOonlIkP7{9eO_3!MS? z==Tmx;+J1bk;?Yhu?~fPW4Pu%o91rQ;f`>7%)`lcdLRiNtZQ@OK0tN75Wpx^%HFOs zQ3laN6HJJJ(avoda-Do6m8JCQn=IQ5A=5FmJKN#PWgGQy?&J`*;L<_pAI#~wY;7Gx!@lvJ*khun9S6b?+DR_8m z4xn+swx8Qc!9-r+%<6VK)0u8z?Bt&I;cQ>-hdsz{5I_%iFk;2`SFEj`vn6b&_DtXP zwT8F$>t!+Qnv+>ad-FB(EU?hR_fMg(0@q^{Wyh}scTe{IgS{lhaKD_bf+y>)cDW}p z{H4Do+QB@E!KR3Ubx7#3bz~i*UcmUG>Sw5-@XliX<%lKc1fXFa^8J0uXX&8JuNf>g zHJ4O)o`kw_KF+Fh>9H1OY|l;e5m)P=&*$LVa>xcYCtnX=<_`00ib*{9QIQ zyYgQQnRV&nBi2&X&}|bwaIW!3&~$k6t-bGJ=>Q=WsV$Csu?9sw>1jSjM7etx8_};P zQjfOXBiA^uex7SE(G^$>C zkt-&Fp3Piwg@E-JyQvt0YM1aPt9$&t^wGlY#-!Hw!SpBU9r!JU2v5jrTr~=IuLgJX z#;8>afMJLH2tvp}C+^UREXqhf6gw!?KRUMsjF z%Jtd2tC*-*0KQZRzbNEE38#5YA{Kl+o{I{KxuTAe3d0w2&U&D?9#zQutb=B~T=6Lr zl?mRmxje-%E{r$hadX?+J}(;z|j3a(uvx6IxU~jH;w% zyvjrxBy)V_wNA7Hcw@%{=t8~#i_SihG9M($Oq>2JZpCFVG9t4+PvF{dS^o3uq6dD} zQ>>*`a4U564RfTD$!h6VLGf;H3#9z7@mUGX1%uij z;a_Uj-}Qze`+WZqlWQOEx3;`2q&^7KFL z!Q8Czz_n#?zs{oJL?S+#O?>`xJ%~qm$2s~khvR~7`kWNLPbzlEC3eVD?hyrcJboOk z1U}Ri(d)*Q8X^q=lXwqPlN(KY>C|cGLErQ2<&1{=li`-xGW~<8e#s!Rf|Qd^Y_Uc> zb$J1PyL&4FUz00lzy2M4Q)Fq2x2PY++W5$CNOVhoXhb~cTzCzp`jdjx@i|+KVN_q? zQEccMvCaek%CXTyanLKE;6r8-`NUIpmYr%z<6CCg= z#AXipqSrvxv)jtM`;+mt?VYTrSIB3EAEFyBq8o>zyNA9@q`ph(&70}`$FCk9rnoh( zP~T}UbOVw=NM*Gl)u|Mc%X9rmu>IV3JqSt1^E0Yp0M=i^!t+8L;?vnp(|ZQd$nRVB z2*vgZ(^5Tnqj@e8hACqErQw z&bOz#^hv`tn1WtdY#WKN3^UH_hP~)XEa3b==RrXfE1DKVXWGB3so`M=ZLbih*- z6Ftn<*_xNx8fAgSL_(ji8tz9;(OkVPNPIx8clg6fbQGK19w*Hud-DDVEbwlakCvuz zZ*gJI^W}zfdB7s$axKyJv@`w3-N!Muae!n!tOA+CaA9kXrugO6Wb}24r54$6j+;Wt zl>uyy++1|#nKM~|s_#KOM2LZU5d5&r$!Dwls=vGuFe2l`L_eoA_4GACzXdC6yhE{R zXxL$J$N?{4LG16m5zhsXb_JjH)5w2?hXZyCh(U+*2i)U3I8N>;kFPFUZZ8d1OT2%) zdYF6O)Dia3^Ea*KSJazcnsa)C^XZA^6YQ2fY@P*>gb@Nuqb@w0`;k0;3Zyr`yM|YE zXl7n$aiHqC{GI0ENH7U`#98Riv%II~JoJ)({3CVDhEkRcp~b~{=B>vN4u3L@iSilR z=z6U1W7{T^pBY;C%#F*KqzI36etg{q@NxKLX?J36V}gzquin5-w$77?g-9r)m*6>Vx|YWQfeRjDl0_ z5`kL0=a zeQwBnX)ikZNCo(82V}NEg>|t{WiUBh_{-nflX01#L7p%^RfXpE?4HPcJB{0t4iU5Q&-~d48vibQP zhRUB>Z+6Hsfe2-EbHxIuO#w8!Yy+r@DQAs^0dJ>R+CK1&0yfYOcwqK5tUM2@*H$YM zN&~~ac4GA0Tw6KE-lIpzeLcsnj)H6m)dL$(Q)gv1!^xZK}@pD?2qSYBk4ES{?|u`q_QzHj+B*_A>{NrFT&%M(e?n? z*r-w%3#g)=VjsT4Ulwz)w(&xdzcxk~73)(&zO|&BldRO!K~Y~3_mdJC0oufU|IUif zUIOR$l3dfe7pR3c;w+0&ST0hS0(}Wy?NgxzAraMwP25#>%H6 zoAU8^-9SnKl&dtERI=3zvJ@#n3G0012Lwu4SnrxgfWdibEM{KC!`}=S9=x~p+-bZE zVcXxEx7C5{?}qQr20@3>46rL^AW-;aWvn?}UaC}xancib9}o-H>Fujdx6`AVsVFIx z(EjYyH<_(KT~L%d`TzYwTANLSZz>v>q!Q&H;EyjVKJI7W4Z$!Yw4ystBUu;AFN2Mw zQ}Nb^8o~%KU-5{Y1&Fx=1S|@W(5rzjnb+GJVz=kq+p0IKswxc3nWE4Q0v6_VIkRxH z)pE0SyD4^EXnYoA{2XC)T%x;KVRnG847yZ$pwMAj!lGGZF$J|3PflohoG${|lK+g6 z2iGXaO|uIAx7&UjDAQQJ!9Sp-RK;}Nn|E>Nu*Bb`$ z$5JmC{*I?*UKD4J{J8q!vE;BsSaJDS!ys4b{q5xrj<_=x9wMIm;bM(U*IXS#QN zU7M*x-b~9?U~F)nSfcdPoQIcQm%$-)y<;QJBA!awu8FCf2{aoT8g@B}C-{+3!K9KwC3t`)^Om82t@7{cxx zc#ZpPDjpg1K!kZ`3X*{t*}E1NXbO(H@O(~5L!xa}Sit@mGKqF3p6MC7uR@dTeE$oaF<`uu;65MLaqcRj=vMBL$H#LiNA|6>eDOJSYOST+Z$Kc2Lg8 zG)KJXAr-ZdPSv7@QUx8{XYx?9CON?0Bj%x?cm$H`W?1Xp3ye+te_mkFe6!DFtHy4k z@qx*}VaBO2hk3=Xd8ib6$<#YIpS66FL0y4T)~2B4r-8ZdApH*HLf%i;rx1!2{CTOnXNO|EXYT+yj(dAYY;9PaO3Ymoz zxL5Rr=Qzr?60R2DvwVUAK0dF0ibAi)Noc;6D(dMJ0qbY-nIWCYz_dy{G?w>!Z~V)O zKA;w3+>7iVJ1gf}Qfy$0HxU60vOzq-4~xv#N}0{dsgP4M5gPJd=fY=Ry@w_dI7~Yh z`dtB+ix}mq;$mpah8L%Ij;L%->6cFJ2)y^vcSkZ%;?&9y-pIAq8IBFoh6#{)^ z?@eT*tN;GbZPJDwoB0w)*_93~TIH(@E*%6lbp|2Zw)rp2+af~rhf~OZK9d7}z+S>Z zE`+~$*z7}|HF|@37|mrR%}Vd;l%VvLfM)m@T{{JA)FtzBb{Us&Qha%7jbQ01n*Wz= znh)EA95BLkqqBC>H;>hfwKnvJJV}<1jta#@!U<)ngZT4z=?VvoZw``yT3qJ*<^1Wq z+k(&j%hgaqE+W-jC9wYnG;$5+7eMo^^h1!uE7TPl$d0M91~sv6nnHUTw!#-0v&XP1LqV`p}n)ThP53-_e$V_ptPrvQ?Ci3gB+VYqNu7fOqrmt zQ1rN%fEm?B22sJ}K5_;&g~VmBb%RZA+?3mPGT1d9UL z)N(gF1}5W&N&rRRv%=@w!RL)qxYx89qh|4MAYKckG#?P#eB78=j zKa5liw6LfI)|{+Ih!j;pQIXHLlHU%xte)WR^wMkEiwV)+PN4}6>!4y9y#MC)#DvgR zMi7;Xd0G1vP_5L9WR;5w2i!Od%4QAL;WBB99v7@C0>ds(No|%ksB8p}Ll+}t>Vdt5 zmv_RmdETtVO^+s8zr@KEMdJ$%idAV2Py9Cdz~KOHAsn)AK1c)(su0TO(XfWm<))7_LQn3vAzZ4l_>j?D*M@%!0*4V;jI zL=Q;*WmV28)410Lg?6h?BTWgLm_#pFLCtN5Q7*)GFBT(0Cx;PS zKJe90xmaJRDrA|M>a~wESSDcVdAL0{jJU+$?R(z%!jD?&K@#zAO{g*;dfumclYDz% z43hF}AOgSO1xPTllgj9(+w0xvfTwza5`4Z4BIUTmrZ_??tPqFAs8aMD6wu;cAgr6t z6hu1Z%g1IeUaoGJ>;6$k?+gR`lMuKLxk609MQ8#1a_}2!P|brzzN@5;t-Oo*I}u&Ps?SCKj{hDL;bKff7*Q7 z0cefgo1I-5=Wo8(7tlt9Q;_UCdCkl$Kf3?((}YXm#xedqy#Oa`tIkd0a(8J~m3SKd zpVQontBIb#SMMi!{#^#BA#z@N&~(#rP!5S@2;hXx=F1(g>n-EV<_O_Cru!2ZZwJT* z(-`QrErm5kfhioU0q^e<@au`g3BFwH?0>>vqL4Em)h&Sd!&MCd`?N+q1kb9!5m`sU zqWFx-y=juLVFP;!yBKWctmTaF&qF3DVjr#bhLXgR4m{#1F%@BjHoKu^L~<&}m`Ldn zMiy(QuF@K5`7z@jqKq=9FyyqA~n7W*m; zGE}~n^8v_Ep~)L2P#Z0V6smqJf=vnTbVHI#n~MZhsK%%7jC&fLWJp1I5#mpM?$ATI zQl4{v4iku8&G*J*OuZlvG@tj}@YTI(EbzkYl6En;`QS36=|#$glVGY;zwavgFjf=_ zeyFgJc3F!YE1r0|%CHKV{-bRxv4*dbfy&~NCk0B=${dQrhU>qXsMbN}2BX!+d;sa2jGdaI0K4J^ccXt14)_-wJWzMZj1ojO>5Dk|LlA>lYKX9%6-Z@ zF{M*O<9!zsA_yN-E!?lXWINVy?q87pfD1v8qbG0r%WcP@jm?!a=Aq!KX%yse0Bw}M zvyn<~%x{oO8r%fB#Z&^gb{h~!G~oc*aGUlcBSH5u^462PsYG50ExL{ zUF-Z9{Ks^#G%$tJ+4azh%D7I=JSXqJ0u3Cv+U}>oCjsbv3n-JxC`!Hxrr~s2(X%$ZX6PTUP%ad~ zCqhlSS>C>GgZZxM`mP<9!$mB+vL7%ju@f`TvJ)3RHY#RzZcj7lluuj>pz>Skbc^j- zstIFKE*LK2Yj|$Y2NWxSPFF^6x)+1fvf|5B;C>4=0TCqd29~f1P*2hiE97)xzL;|S z(q#5Ey?|N?x@xpH*{=RrWzS`#%IFQ^>0t()W?HgFS{;sBw0G}{&NDLeOH1fku2O5i zi4tj{l6}+@zjsPTN$)e&-29Q^X{GQp>cA4TN&F8-VIU0$=@QX+LNodD-PgV9cKW@* zV+KEhWvoFq20zw?YcB`tOFNs<{AG8ZzE1SC>w>{aJ*bS*Q#24-#hBUoPVzpOOwjb^ zKS`V4vBJ2-7MOZRBEOM0`^P{ATc`^89}O15shMss0Nfw01K=*q7ko^RM_wv!h%ao- zbCPZ8kMsDsGJRYQzowK-btrUCti*e3y*S=#ITUI+oN2k9ae`mY;OF(F)6Rpd zTyX#)cc$e|$724Mdu+!COEqUt-XNmd)egcqo)sU5SKI=Zqi?om9$MT5sik-`M6XC0 zUrd)@Ph8M` zVl2pYZ6?FdlXLkiQ9^zVlHMvbdAmD|yxlh(|Nibw>yM&3h>QBE&FhM{7sj_Vw;>?5 z4&g9Un4EK51+|>GfxEs*?_sa#gQ>UDFw_OG&e7M??gyC}j!l>NPT|$tpyFhj_QX$i zr+(#Pzz1yM{fp%EH4p*~Pii>ZfN`2{K*q_Y&P9-2GZ{Gkh}!lZb&enq1jU!fzqBq0 z?y?5*m@aZrw!I(1^`be=Wd+Vgq*9HpmPzfHq#X%OqY^N~g)qi@wr4*n1ftjv55k~@ zGWt$la&ppiA6kE0t=~iQ>=Byxd*pMJOY@8E__OAuwE=&E*;a`%_3iRX&*Q7FH<24ZS7G@7ToUWqbku{3m zgRh!bY0!*Ea=3ei9LLbS7Oo|aRixld5aY+#sPO}~VrcM)tgVzt-<_RZEM8hd3 zHnbA?jS}_O~k!|L6Um1aZbz_IU&KN{|R5jk`PE-;%!Q5ljQ2>$?$B;5QF_=m9!ReF>l^jgy*$bBVP{uX9sq+sc&iO zk!!mA^Ud_7VH}FBB$iSVPw>0KRM%S0!^+3J4$~J9%^Ir9d3=)Iizqa$#lsA)qfSX@ z>EW7JewxaNlVb&uKRixh9xe{|dfJj>7%kC_r^yH-w$2WX5tk!CoDrDmrn9{TD`Q%Q z<8Dg|r=G<$=Y-QjVU;Td_|5`&Pr8!1+k}ObO0r189^25Nuw zL_Bmtkgg_PPbJv^9guyt)uK;PC*D#I1J24`jvVakCCrzyi2EhyL{};L zG?AK=h~UqU{=7Nx;EwC0^50nFfD1SV?9GB4_H+Rb_s)NK=Z>j&-S7Da;>+JLxzf%C z&{Zy8OY{sKB`F{KK4VMDuk~4J;Ua%4aWiS?y#4l6+4v&uKRcgM0rZ!tD$y&fny#yF z|MZ(bbhj47a_i}sAFC&$c;a_sVzhzvdf9k{2(R~*{~1w=y;fgjbUNV72?PhJEPUP0hqDLGvA1)@XRu_uIaDCb^yMq ze&^MvuF6{N$g_TM(^&vT4hEm~YCD2Lm)8-rM!}@XK+u{0E#Cq~kHy}qC zqG_dZm$`zJGbno}FvbnzSW$@$LM*_heVEkPvR_ZBd$G_Wco|}Mth3MI5h=>OK6K-BkYA2lK{xO6q1}0C z9_B1%(T^*X`i(R7vy$wF+U>-mIbZ?`5Yx%rYkd(?tddD2omN=sax35#gW-(|(UhOa zN!dJdAtc%V!GI|Os{}H-uLW=VBY;5Xz=Iz};Q;n;7lq=$=+D%Vut)V$fAbIIO**0L z(Hr|ORwERhM} zABBbc`|Ery?75PONHLi5oh5!qerGctsJ^fShkm#{Vy}XIV(*hATLN2g>M3M(4V3B@1pi1S}mx|Af z+x1L9)Td1MPqrZBc!4*jRe1nj6BN}bH6_9sR9g6bxjL8Gj+vZ-^}O?qsEi~L6`hl! zA@2ivXbaBaUv-)xM$ipwMG3qlt)lUv9@p7+;9w)bzKz#%to&nyMJziUR=-h6Z2v&>2Ba4C-rM`n@1T0}2uC+{4cV+@Y z*j_F&Z(d}UqD<6%q8~1pNucl}V=%5 zclplEnTMxnaE%R$vrl!mt%o*zDj|IjCdq!LFI=skHg1UUk3hrvkadJR1-pZa9_T6K zlT_-IAKE1D3j4T{PCE|F%)i9hK&`9wJ5I$RMDu|Z@h82-$fRIdY=&k{YWS*^y{j$db7C3;?gJ&M+u>Z5UgY(-hT{y^V7`d9i zC+NLPpN_>A`YG_VZ-}H&LC5F5MOxzrec73GPGyA#@)&*hA*q!0vXxk`stt6j0zp|OfY6v@Zu`@ zZSQkl_j;TWiV@DfAyi%uz+uwsao8c(53~BykmC~Xmqac~DT72dmS_O1T6j(iHb+2q zTmn|ZRypTl5#&)}Y5-LN*(!#y8(2jD+s9A8NdD+;DnS;qwz_$8v(5~E>i{C}!bKvZ zA=Xvj?X{2-@XGWqBr1Z3fK(cI06H`b)#=}2I4_60A2%Bp%l4RtC2&?RQ|r=tRlA6+;>>G)K6Rk= zV}(PM6hY-6=YdzCgvWEHk@829#BRGwvp%fA!t3iBbE16d!)2hcQHA?5!@$4r=&gmb ztv$l$p#zh311Is_*{p)I5v&!XPE~%82`goObtqwCsd}!VP?2qMW*?qsjZdzQ9hW1$ zDt!ndwL~g(F2BGJgP?uWJ{2BlQ+ ztvX+}W(~X}OAM_)e)k?eS24Q1nD|oo8N0EFNhO|7vcly%+c8UiS|z%WS}?T8ILgLB z0RR~cNKK{kI34BoH)spv@cproVD#)}3Vyx||0Qey-o4 zrBKQtNQy{%ev~5#8%-;A@9yptNl!Cq;G}j>*fePy6;2E;!}YHItYmk0WQSf;zUecAVtD?fMMtV?5}33?=ug5iSJIn%XkO{r{J^N^0b=# z*37dwC$>h7=vO2B2<(t-26tSNqd~W3E}#5|oqUqOukCt_rq2^C+!rSX;o&*r2&M1^ zLPPOKR~TIhj$H*x&xRDyqwx5Tn+{H|9y;3!ghF!O8NHIJj+fZ>dh1`rZk;}#o~=-4-BrFEa8OOMc2793;U-` zPM$0W%r}EAEZ__|S4@WBH-|QYo|#`XQzn{r-dXoSL@^*`t~c3^!KKq_-g>z!5kINC zwy`UP@U^%Gmn~iM9gFBMm#e0y^St8zA+irAbo)`YWB;-f(4U8@M44~4hmgCbF z+Z9Ejn~oZ<#xK$*zO61yc?apIBwC|Y-YI6^g`J%07mvD@H(R^16Jc;RNgFaN!6c1? zq=N=JgAY1v=~PM$v+!NXQMb05)uSzbt-U}PO*E^px%ye4J3!CW}tndBJMfht<7p zoJujt>TdfEma-8fP^D_BchW-Rm{ zf)kG*fqXttBA;-<)X1e6&m{n$4*b~`jindIxhh8pMw$L7WVL1}#>|7|oviUBHAWR= z|8R)f%g<)>%OjRuJd63I6%nC?Ynmt|rfj+-ICRcA z_11h8F##a1oC4^34mj<2{>Kk(|0pgTJicA6gul~IMc?tRb7B{&f{2VA#78XVL~Ipo zE}x|B_x)Nv?rB z+h*pUnBZa^vjjr0w?7n!we!$HrdbX4fjumS*ajaqLOG!F9P@@jP5`hD0wYjY;jzNP ze@J<|8A6SmzkClhz1~J;(f#+EpCXetPq~PxCWildw53*H9e%3YvQ62-3>ZSYmPZJd zr2^<7*3s zHsujoQ{L`T?GU||*iWF_$%`Du|C8T4W_?+WfLVp8%Vyo$K0JE$86Kta^wp;tc;_9?5n!mx{WB5|67YbM)C| zzVv>8igm#1=mC!kl0N_?{$)XmBV?%>feOl@{S1|{OHz7YWGxJ?2JmP}Wlc!BHqkiT zmqA}8u$zUwAi+`Pf_~J^*MNv1g!l<1qhi@9mXk=BazPINT2d&#I)9B3e(j&K-$(pG z*=W{S)2kU?JK_iyV&xuFf#%M;BWTXkT}3mVUW5m2QZ_F^1+qIPc24Xn#Q3J}ws7dy z-j%&d)@Hh5Wniz}G0&>|E)$TfTX4P}pW#GGQR?YOW0vhDoE=p!$g@8m4+`ffIGCw1 zS5#@?3Bi2`Myuk$|K3wOUV^LWl#SlBF)K0F3ceZ#$ED%|jWMkk$*BG~WvvQh&tK-@V8(x zIfSiKa29pZ%M;5`r;Mv+OpA+UxY2o`lj3qhi-sx|_kK=SSae?E<8ZF>F(wc_2go>o66Vy0jXAN`U2zKn$so(nR>g65-l#;0JvbdB*LkMZFz7Ceknlfn~j5jIzk z7F-{DkXd}oTEu^u3RVQA4kp(ujMCEZ59$iRaA5_j5cf`Mg1@jQfxMNkBq2B!nporq z5+J#7;HazL&lL@JN3r&!{$CID4}RjCKL2-n@lT&BK9j665rmUf{11}o2Xt8f&G8)gUwY2E@mq_2Mr1* z)q&#wLEtE*3GDfLVbd5Y)sbb^VIb7&MOtE7YDwEl&GB#nbLj}ylJHNUzq<`!T>sVjfq~5Yma1iie7Se1B--l^WsUQ{25%Pn-)6Ug+VD$GP+H@NSQuSWywz&{-sfyD_DV0> z&z)9nHa>AA4|612hC%uFk#<&{tr}hqdcqt(c)Xdyd3syaipMbSi)`UA%|@HOad!r; zB-pSMV&UcCxY0x#NISv!V0SZ$8LiPI^+TVH4662ys?`u=XmDaI!gdc@-DzI z+`P6DyPTSgmFd=SM($UYE{ZiO=5yiZ1#7NxpKZoA&L)fQ`Qh!s9H}i{2~IkthW}X5 zRXt4dI`7pu?{5k61gG#bvG@s@;_VYn-y&fi)m}9FX*DQri1E7oY@^40EFeTxCLd|| zq4woQ1~d?reB>qQot=3!!7GnTKzE+n$^A^)%0C&M&juG4iz?B0-`S;UOP{SSyBGL!Lf2ca>ucle&rYB^KHF7db}*9&Zwg5^GB0Wg-nj9u<4S3ut$mQ z(}hN<3Ae>0&=@D0gIfEjcI8z)N2Cxb6KuyMctOy*wB{wso9Nqf7svB$vD+Z{<#(rx z5m3<86$MQjQO!s9cAtnQy0vwi+ty7HwwxMKJW1vx4zF}Iu)xr_N$p2_@>k%dMq`P* z_F^dY;NutHsn3jt_p?*KXcxT6O*G45(*)&DnT3V+Pby?pR8rChTz+?1z{n<)1pq&S zU-JNAO%6=QHCGUnhQNU^W;lrRG^y4^=Msae6Vv&jO1Ay zlfI^bemHStL3p@|1?UI_?MowPMB2+h*HD3Y{2LE()FS3$5&LHVr{Ee%;*J z*#<~hw8VV9sx*r2y~O~a>waC#6no`Q+V~z>bLw;gH0&!h0;F%FW@Uir?ea|StcSre(nop zq&PAv0S4_;Qd9f#HsrnsJ8lf7=BQhUp{wT1h28Uar{!LrmYxL-R-)ye3O|m(e-;@V z=S`cb9degZ|$pC&)ekdO+##E`vf1(PW!mN$@z*B zSOB@}_T>J>R(XRmnK!=>?*mo2QUT80oQNmwQiBG_TnR@bR?z~MrRKJW_cb%FxzUZ1 z!xF9+_Op#6J}PxIgWXGt8P+BHiDaG8P0S&mCHo?_;w-OLpFL*K{PRV`))$tVpoE=! z7E$lkQuu7T@~p4zZ60uuJM@LtXs5Zb+|@f*NqF4u?x>|RMs-@I}g&< zW-+#SbS7TOiELYKi)@o`qhd3A1!xW!y;1CN8y(Sg46fq%(HC`8@d!H|E9GAL)oQ%z z&UDRpkt5FSKtsoRv?00|>q=`+RpmKwMCo>OTh7@WV{6_OC;KnsS&@&Xbci!*o=;$) z94#3$av&((R0~vax{PxfMk6zY3!=b&bK|El%Xetf{@ZxSQt zaLxY+AE&;T*9x%9St653B$HX2lv!hs>IYx9;;)XZJovt!av8Am=wvjK&@^zdi(5Hi z-E#dBkM(#M^=I^cp{9(OaMFf6kmij=!f(5u@-RemiW1SzENQ;5_;x<~kiXHyoIuR7< zNdIn{5pE=S00w*cmqTw4;pb6qEi*~Fn~MR_`V(z0C@N^Wb~dWpZ8Z8Os4be&%O$sl z^j>@Rz3rW@3(kbG?xar2{dzl@fn$Nhb(2vlI-AQlsszp?(VQY9?dC(2z0LLUE)wIY z@TVK<*#_ewvXd-Rvgi6=!;-09NO$ikppH%{DeJ~dtMde_Gb-kC+UFAJ$XZnV1xJFN z#{jN8ng%|&@)WR;pahGkgbumzuP-QCWx5=jj&&N|$2MJ4b|j$3V_pY5z*_1I4xP0B zTCBoPEK0uYFIIiY;c@$Hf$R#6S(tYJMSDC_579l0ODZA4%RI}&)p3&KN;5si((Yl# zz=jY;lbTY8;3@|U{&!?Q^yd^$&fP&1F+5mcqD*)_B>->GcOK<4jrWiK#Fq|?;c%kU zot`(R2~D(Cdut0Ht6ZFf`Bfs9o=RHMex-NP*RaayTbnn0Gg(Bwm@oTz*Pg%r?a>Q6 z>xRR!Uu%jO#)?kK3hjDg^YN427hYAYGcvc_p_{@U{d^lAe}!~;IZccuuWM^*9?jSO zXfFHWSmu-dBQ(y&`S@AtQ*-lc^Cc#ugK*8(qz8KVzuKObn7`DDGSwO!DMCIh3jAk6 zS|;xjI)N2EXEkH6(5GK}8dpUoum9VR3VrlzAFAW$usBRLQMpHfYEKxlO8zrNB>mp9K37K1r1()eLZ( zEWPvW`-||srTc!((*0}x`t=Tix^A~iO_XBqFU5V-o`|S(wHvX^xeab9l;0h$AFEwE zeR$4FgGBV?KJVc6`9A6#yZ`VyW}AuX&B6Rgyg>(he|*oHBhe?qztvq?<_6Z+7hREl z_~;R(ne4Njibl>@lLThKTb4$YJd0%2r_eT`OswE$?GRRIt2KN?{4837JtkaFP9NMJ z84VJ8SVSz5DTBqclx`o>hhOWN6qwS<2jaILRN#h9y?lytzY0dIGR4RL^5|K^P+Y)= zra@71vprJ8nAxe@14F5JeGnx&&SmeGRAb=9M{{R2+QdX$!oygvlnNmoZWyBHL zlrj!V_Q;-P6Hy77Ig~w*c_b@9(_HMd1QFFZ}BzfhXfV#GKIkjRlXq@coUGR#WJ(}Y`b$R)vae-r&YROD#k-}#$^AZkp zD)5`0%7nlSCiQQlkJv!$^Rx<-RwqMN`rm7hM?0rGs%aF*}|$%?1D8Pduv!`e|LI>u@)L&DVQZ~zrQ0LefMy-7n#VT z(=5fB*#!&dmSa#S252d;;suFO7uNbJ7PuHTo%WiSl-VB-NzC_uKo30h z9>ymzDwf)+S%JM(CiM*b81G|FQltDqpR32rILP>#B|f9cGgK3lY5SD9_J3gO_&^Eg zLdF*k_JkaQl^Ejdl(3HbxCZ5$=*U>VP&1>n6!zNCSna_bBHO7$I!`%(>pt4{eu*X^ zMyXL69=E@>-m}yxzBB6PpS|+5tzzx_eGHG|gT=x6v&&g2_LY+fhKn`6@2~vrV@^FO zUy4;sT>GkX{lezYj5U>?eJBVA$JVh;MQ=W-rSEM|JJ+nhq`dpCJE`)f%v`0)C})PY zc&NH6?%gN%^*s8FOxT&vn>@r)OELa=ZOq1@rn0cUS8tx-vj7|q7+V;)37n8*D&i*m zrho;&z41{DJmte{hBJIv-9JTIL{)K#9KHNv>g0;fRrk8tYx&aBEXp2#w3WtP*0dd} zeE3>QI&$WT-V4JZ<>Pt|^WWbiO~pmQj&qCK4bHCc2W3CpXW=k0rR=Fj+vEn{@4u~C zgCRw^zZ0>2baIt;g1yaajhwbAL2F-(da(@55^dn~5tshwH@C@i?{QPpWFO)df1--V zaPcL=x%Hy_cOL2nxdE7g*mM@}<8;@q{PPz`XprE|d9Ea>o+@oKP5h(X#LpEJYUXRN zZztO%MOZC_WiCEz;y#lppqDQVxms+{XQ`R~GgXR|gK{wE@W|2pOcJ`sGf9W%C^YX1 z)q7!%Hj&c>l9xRB+89I0k2F7h!pf`w`&;^MmUx=RQ0HCsfBrCy+_}~>vzSp_hxsx`OWzqEtJmy`?#ZrqpQd$PrZ=~ zwvRdUUd;D6b&gnVaiMcuI`Fs;RpXnOOfACw+})8ugAZ=eaaMl1kbz9utuP3JGsnlb z00_rCSBkC>ZN257}e=|3_8LiH+w-n~jS51TIN0N|O zM7sg~O(Y2cYKMS+D${hJAleC^hmfdF_L}9tn8I^KFxDIfn^`4~70J&lbVz6taR-@I z-hMv=q2;F|npRpTPMzMwQ%rl}UAN}ACuPbgoSW=;#M!4DqZj1Q)HL97b2w6qIyP|+ z;FQvQcK@QLKZw+A|H^}j-e>oV+(A*Yx4sb z_j25tnMUcm&6=am$;7b^Ur(pdXmW6LzlL<{wJj9>nRb?ktXu1R^%zaIuLcVwt|&8I zT)Y+^giUv^kxZ75FqAB10j(E2sWTC)G~cl_lhqE^ zPaUHv3ROg)1^qs>$b}q@0WN}^DkDDK(IF5WAn87|FyL;6VC$mIshPz|7Q?_D#9oCz zO&SylW6EPAoCa|f=_j7-=Ppdf@ zcqRi~$P9a`s1J*#BH1+3wv&4^PZ-?ST)F^-8T+Cp(%ce+KUg`o#kg7s$wjmzl6hw? ziM)K~vhaiTA|p1-f4+;s0gbV&d9c0II)3k?@#6~h$JSE!oQ7X9vi zVFghu;lN{uNJEDjTFQ{s;aab%g3-d;Rf5Q06s4H+q`8if@}%CF%UoPfjFSDu3xEgY zE9A0}#)ZFaMlJQ{BoB6C3h`$)pKSApgPmabu@n{@D)qxP0sE036@%Xr z0&*A3y#K#|hTjYs@NO5x;#;nT6~%IpXMHwF(&tH@yB85igPBR%i#XdUy$Wd({7y}{ z;wUq6_W*~@4W*yQ<^qrk283D(bH0ufKY2N?{-)5BXe2E;JjKQ&Q~m*NWb(fw?!u>M zI@ul%37{>ITG-^l=PQczfyG$O#-JBF=(fcNSgFr;WkaP8XZ7;8EuLHmYAwDVbV-^$ z-Prr@V9*a`%L+GR3q!SvFupL8Gd)tDe)s&Wm^8W+R~vR=PpBD z-rN|Vu@GeTrloaI?TiSeyV8TY5}zN=Ulgf|Vv2{L22>S7+Ee8|^!?XK-~ePfz7XRh z<18X+N|f6%>S35zjycXJ?-#MsdXj)tJrXmvmNc|M`HK z{!GLh;IU9cFXLB$s&WxxYP2RYboF(;bgeJFcBs@YB~a%Lx2X_J|IjmBu?=wy;*CFwkU;&44a=N>+{(Zrksnh-)MZ_2HPxr#o8$-j1swa?uPUrt zm(VF}U7m6jg%wjwM^90;VRJeaI_38~J3L1N={d?yYUb$`RQ}4%I~mZY&EjSI2c|Kk z?7jzRkZk<|r)pF@B79nWK9>EI=VF79VX0~7fPEFko_VRcNI#oNu4tm-UcYTzE(AR) z)vPPus)jQdYz+R=?4NdcvbwKb8QI}~XWEDd^I+q1uStNBX#O$c6>6ZP?e819a+QcX zDq7t))c3*@pK&R{e$rRaIB$O4*kk^E^S6;^TiLmxs`Zaj!%AA!kaF5WVS%gijIT83 zO>Mvr-rb}&z3EUfNypL(m!&W#-gfE##5F>;{38GK@oY7b8k(U%p=KwvQqd*39*5e$ z))Q=%Kclan!UU6zu0V>rxVOE0{o-HFUKXps$mUau(q@fME^hvWM5dahGU7MoL>v~< z;TvP~dG)sxZ;<(2TF}_+70CW&>tDLD549xraSC2$Q0d4Z0HjGsRXQYmRPeRnx2vQF zFeR?}T9{}IN5tz8EA5D!3A6ApL8p8v^CW3wamK-bY>M40%%^Q{Nb{bwb@)S}CYBP# zwG9mpSLCX9H)o+}&~;LCgFey3buEWVMt~+LDE)O)4J zi0-Btb38C+qq#gnRx(QVp=rDpLW9fuT`xv;P0vcwQ3!VQ zx1DfYxa&cEMP`cIxRb6%oS<#~j%EL(wst%8@z^8R%nFv-vf_g%_BG4$)`Oa@f>25Z zh2|gwSbd`eqP*2}6Xd;#d8kFWk6z&P4-Op(VQRRhYhkD}&9F!pZ52MkUdaSTF?A&o zjU@Fp=I!$<6l#lb=Lk_*%Uk0r$hU|GpC?_0kp7ZwZLZ%ROVJ)h)3kuX&OtPSUtxqQCQ`L1648YB zWkWjc8cQS);ZyWJ%y!WZcs^lprg=;oYZcMy_w9L#Lv6n>Y5-;0BGH<-lZY;=R{bg{p9LxC*e6%o{FVCISL55q|F?1*@h zs`X+>MHQ1O$gQuX1>mWvBKkE}g@N-^=kxRF9=~Ncl^}gWV3+_N_W`_ZC5BW@dFD1) z-(48b%gwQt?!WrWZ2fzBYqMYDS>i6|ElU#H$LD1vP1DKE5*u7@)#v26Jo^ysb@d-U zI0%x_4A;y~S}*AY7`ovEG!Lt%)>)dLqAhyLVk<48vE6V2V#a-hiiSU*fIJ`^m!L|T z*sqedN`*e2eFhg`IG#|1E{+u~e+ax2Wj80lGP$@kcsCS+0zooDNI1LUY-}9R?z?}d zDRq;kAt-c$Lcfwr8eTINCQww0x}$rtx6WGHtP}Qox_C0M>?U;5M!3 ziMsik3YP9i_YMq*?}oTg<&PbgCf;M1h84d0g6aucV5a=ZAfgLC1sxqgoD76@pwF6N zC~iWOipA*BInFL~99l1%3>T1sqRL1O=&yDwdEX?zJ1$=fQM_u1N71*YVW$61dNcVN z5zkh4*&0!{4JUO%=tIL2YYIK8(FgrjiDu8EJ=@rA)gDSWhcftxH%WXm@*j`N=BRy{ zyKWr)vCF}mt2_VAGbJS_Bv3uU1-vrdq#4meq|8Iq_qnM7YV4y8Jl;ksA9xORTyjwO zzajt~qRyB{(pYd_=~Kzk7KfGG$BlXw3)<$RAv*V1VjmDGH9genQDI;?E*A|VaWBvb zW}%fn07yG4-Mm~|mLYKQ(;Z&kt?Hw?u|TLUGQL`}#1dc{G5VA;Bs^b_V@dPEHZBve z2i#EVd-XCq1w_va{zQ3w4n1fQ?`45xYm)mCi5`YZmU8$^Y7)jE|B^T9B4K%aB2cFK zrrucGmwj6XnG9qL!aj7>esKLynL#3Jm}z`OU@W8;a8^FTYUhN&NLo#DYJHhzH?$1- zCz+h1)+A?JZ;&KiY*9(t7_R^wNs{I>@}M*8c^A2@xso;9Nj&G-3>T^0fO5tU%AJ`3 zqCC=YY;?0$b&C9xQ z#!Wz`!7KD2XcQ}lLFCDgChu)R@ewAd96paLQ4i~al*M@!~f$jc-_>-n7gc=oU9N#@q0V7e~O?D$W-~(OO4$O$P7OEP!$) zv?HQvaPd^ahDe4;v(oMm=d1TU6^_N)CHn>}c0z6+hS{#q*Lh@d7x!$lCwG@mc0RD3G3zbVu zuwykBb#FV}DO4Y7v`O?ctxh8@ATKsG0E1TbZXYZt`%wv}5q!%1?$+A;TDAiqO%R^S z?>V3qGy;x>)hV3jsuMl3TV>W51l2UFoy}FLp$F7yi>^P$7(;ky)A(HpMn=XK&Af^l z=P5MLc!?|7U)3N{8^7-N_sd&0Y#~Sx7s|%hYVxlCaBefJ^4=M)E?#-qSE#7@qhxdK zkqf#|*y(=l?9;|qJ-brnm3LOZm)$a$|GFtSuhPlstbk83A5JuKlTRU@NZWW3K|Z&e z1kyCl`GXR7Tes!Q8}b3(X1r&bBhpm6lUE#|UNG3xlTc>_6aYm2182PjBd8cRwTaH- zEO^`!RG>fGbQI;|5m%3GImQzd%AOo{)-){ggIi5N)%}afpJc|L2Vm~;*EZmGSA?R@ zqy@m{_`r=3z-1@^#DNG5lIiXe+a9F^Wvli^7&G5`ppT^8_jiutEeJ%nb6NfQZgQEArX4FA#c#}EIhE!mM z$G~Kc&vX4(J=qVrC{|j7)9{-_-6rSYGxv*Y1eT*52B{6@Z8|zZ#pfSQgHb<*_l5df zP8-(<=TZdKTTimZEdSe*S#9zW@m@9o0~abHA+yn@m^Q2i4vme$@Ya-M}X|7Jgr zqN!q$R$rehy#z`45q!LBH2xXBg$33+}sb~t_)|*E-her4wt=hc5QA{GX5i) znS!%?7-#9HYl&#4XdI<0H_m6j6Y-r8*h;V+OIGkspnP)To!_#!dbHwm7k(CK8 z#o4TZ^@&p)yZj#ITHiba`ciP4BYA%>@Cn@zSLyN|?JsI=&nA&Fd)g{s?BuPUdQaSd z3E{p5tVl4yXJZ4pYmm-Np~NN}{Ri--BVUDm?rP3hVN3$-ff1Jw*hhXG!Nu)jD+mCw zw~KNy)wqTg>sV5HG))mR#;53SpKQK-@4Y|QlN&phm{V&?C2S&wkNl_nH*yen=%ACEc5Zvh2WkOD997b8Ca z+|Zn0);RyzF*MH1FK(R5hLp}cKQ2N-y8~|!?`_0Ii;#-EYxEY6g4nU2= z&4;n}t({F#SnqllvyT{e3!iqDTvAaU>`aWB@MY;{2Q>C&Q!MpO|F3Qvqru}))xQ@u zJhCzlx2EoHEnGd`92vK*AZ^!Q+>GV(_V2z1Al3nW?0oj)fk4J;GlmWv+fhZ`qp>kI zw~VADiiD~jEnM7QY)lj}@rIim#$Gtz>wOt~sy(B^w*N3OOMQ;UvuVrk58H4aQgcSK zv?UhPhCG?$FReYko)z@g4voowwn3q=z-dyVKdaO&JsT_7)vy`B!QY=8`CG*%I7VeN zQJo>a*h3p032CuXYAE9>iY=#^eXMND}mk<$LBkK{Phw*V{$uuSE z$BekFielx!fyDV>r$p6>3vV>#w*2A77d&@`YTYT$pFB@I5LM8~jZ!a`E-55GkVa9B=|IiKUMsgG<8rZf_R#+R$}(n`D^}uq@)$X;%5-cc1_uZP z0UiD^W@&@MJZ0kwTMB6Lv-Ls9K}> z(n(kM)7GNJ)qA^J7<&LJwUDYvvY`$%02Mx6-dMN;idg8~=LXSpjG9S20XpDx&%n?; zvK|k(`Co{z6fciJZ^Csh@+-BzZX5nDR44hkZ-{H8&t^H6-Un$G?)H^Wd*iZttyQ@7 z9%pxFncmwWXYJj_PcE#FZBbjjQ7`vC`23Esd86xkPV!Ti$o528*a>~l{3ia)CkkR( zL8(2A4qj9zbpM1^xvL3`UhG59%-rch{Ybz7N^lJd4rY)mtJ+~)x{z%d)2zV_2sJ@j z1q3_LYxASRj99qv$!rpEkii*7+w$AUzMVNdMQX%hwV&$sRTzQy;K9!{Y^0U8DaNuq zfijP28{|6*Zt4L2w_Mk;rY9_}n@^h#VEj2dN2+jIRH#S^qHzxl2vV$JJlQK-w(5ypS)D zv53I+6WjI(F>-Nn(b;4T`CYL>bMxn1i^P{Jj6_*IJH-C#XsTuzFj{mk3O2K2V|xq7 za&|{g`1A?4K2;}XLDze4&966{@IKk4sQK_m|Bc!1bQ770i6&DiF=de*Cihck#M_xo zvsSboHf9>X=~Wk>l=3N>{iSqe=_ZGe4WLm}qUgM6ia%(OLrA1UwCN2sr(q0k+PK~!wN;19=tDmWCrFY*ew>N0CJnTO7 zkDEbaIM`e5fSd`Snd)3m?z3QW9Unq5`XhJuH6F8~o<8CHy*@wy=wd19W{_#A8nH{4 zT#fQu5`+vtae{Y$1kMTSpBqFi(UbzYQjP%XEaY|$Wa=L~vn10(cIc3Hi;B`^T^RZZ z9Uie94N!`ZXCxTrcEyhOhfj05gxu6%?C`ZR$GOHqT=+Q}%!ce=5?Qt^8MwUo-)|GF zC50RO7r1nS*>fF3yrE*$cXQiQ`sWM(Ij7HQ7d#dfN02T}NUoPtwAa#7i{E;#Mf_nT z&8R+a^}0*+?kv2@&ULlF#i^p^o|w)Vt$Ve{>`!YkO;$M$uKJD5Iy$nqDT zQ!R%79wZzq3JyLp=1v7Cv;+i9K=MGZfW|{Zl_?rfH9^r++L^j)W)Khfgt?`Ag#fpaCd( zs*Lh6bb|z}oX6lEgsxow;Q?x^CUn$EmnD$#%$>}8#yNQJ$>S?#$tdYlyaBQEeX>0P zhJO{=3mDXMq$K&0Wm_&v9Q8&X`VwyEG2PeYhi?g{r!6t__Mj1@2ygzg zbP4`|EL$a(Z|_-kyuW6ndWWmO{FHAggnC*89Ji57raI5R6H}qmd*}3L>pm@>)&&Xvv|s84Yvoth zo+^~Ydq)1*j=L47{w3a|kL9DQWMOgQlIe}W=wW!`!+h_^muK1PjzsDWBk}rjDX4!6 z9nx6#A1p3HDj;rs6ZNXNqNl~+^iT-_LMhH?iWIsDTw)-wlIq|}w8eYX>gSgPZH&H8 zn7RAoP4ap{IoB8(YlhXTuWc@D>};5_$bjc=Ya2+_8q=CGMkuxHQ39UCqaHllGXqdX z=#pEGu+tBciIrF=kwN_X}D;lI6P1+_8MB-;d!KP%i?JWc4z9tSdag zQj{-wlNj()Q#CTekJMp>M{+zMYL9XWwZ_;GfN=|D?Fxl*lSBK)cpTo)CqdIcp zn#V)bYL#V==qz;jZnX!re~q1CU4Pk^Q=rMydiT%P+1v)%P;J4!FOj*4>ePi#Vx>Qy z1BBW2YhbwF(PJ#%)cv{I6Wf*AtO0@H__CF>%+c$%HjiUezHbM9q>S*#um+_`24F)d z#L2&AY#=( z(46AqaGXY0PLDp0*B;rYXn4woj}8zQ5IfiW1ILjSV}UtZdb?$3skagrmr6`+hj5d@ zn!ly#VX>kmp8h%{JT&^Cq`KbXu=ymjkp}ilS7T{-IDtd#N0DuEAUvxO7|Zo4kh<2a zF`P>5?1GVR%A5s%QH|@ZF_|YdenXFo0Mt4aUD}dA%Wnk%D3jrhT$RCQ!I}(BV$Mx&x|4WlCME%N3NT1c$A=VRG-`brKOF~SJps! z6GMqeeOWH!M~N3?KDmnb7@b~YUl0v7;jhY71Q5py)7JjYR5~ll)CEjr#{&rf?v~+NG#c8@%5PA`V3@QEINavH6 z(xgQ22)PirkgSorP_EI^S;-SG^3tj`f-J42%cQQ#jpI9hGxp2}15O?Dq!c!@6FwO} z{rZ~^4KfuM7jLeXr6|Xer445FsK#09vy@70DwQ{cK3}=xO%s#j2XFQ6Z8&V-tl*(e zNszP5;ki`IeE%ZG$`dwoPp})L)Kcf^PAKpEnaNJ~2JIT@Q-W&t!^EwS38`VvW#nFc zfPg;$pzQ4q@13`HIoQ-U?E;kQk3!?7$9N;{5b@2=EpA_pfh^|~dd~MFDX1_&7z(Pt zE*ldJ^d)gczSkh9{!De_!V^SvIcn{@`0M>As!>k$yQE~Dof|@^SGQ`s3CubxHmAvK5@tibElWmTH9wWSoP_WRDi* z@*C5q$N+$#twOz%s@KF3(U@13`=SiK?hMhkMe|Re$|<~F1vFeVp2a0*9Uh}-lw=8R z5e|5bArn()IjZA~Tk!|D2^dIO8h~xUx0#nm=N`KEpHM?pO}*VKTd(O#&?TIF&{7VV z4EiZRnEfIsryO|xdqT@7O}b$oO5DEqVWX@?LD5BhBgeoUR%1EmMb0MbQ^6vh;&3_B znBG=Jv_36jdNbF=X%kH(Y3y~MTaJBGI`Vt_QeEE>32LhV+Dxf%dYJj%>g$ z9-XD0P^+$31!MkXrYy^t1Q5>&Bi}g;*P5R>oMkF&zXR_$+Ar&?b?Qh)KcA=&=Wj-O zte`q@3}8OgF9kV?^H`x&i>S7o{vM+y%Gv?YngksxNY5DwepdjCB00%To$H`CiLm!9 zouo|C4_on_#b9~z9$hag?scMUP%fuR7Rs!?uE?L-`bG`z7+y5Nz?^Vnun%otVE(t9 zRG?A9c{Jdr!r@nA=#9mr^|8mgu6te`sd50pvnRZmjfwCtXFG9pjLqeF&pVCZYj~bl z&pw^F!`x&7QxTDg6B;VNmPy;|TD-366cTG&tbY%U>C=B-J4S5htYU6@#!WSA zS4&)F3un1%uA^|K2A=Ty`39V-`{K|nbmvi=g}u;|{H)4n%AAR>1VRZH1_%VFv@Q$B z3Z{ZG0~)rT>fr=@Hz<;aksX1)JGXz^0BssM6A-6nxr$f`*0jR*HzUfp*t;lC@&Ys= zKIlZsyWSIVfjXX4+OP5SgXwr@b+#?tqki4gWI$nCt*0%4P$LDrsH}amr4*gnM^ab$C#FO=8(nmArg_ zdFVI8JFCAuC6OgPf7^20Hs8o;{V=#N=TM#Yz{!j{p|^T;RmEFw=tVex=Xu&k88JCN zaq8lqdKYXXj1_87XXb~hzU@BfKpHloIqCw^90090)Ys*fpxP6doX2%XAf-*$sZW{D zHiHJ{E2iKEF6iBuFk2-6*?|C=C};*qXafKc0ywn%@*r#*saSx-x$jR9yv1>%@p1z) zeyb6I8ppFT5}DMw>#g##jHCm*HE>eWJM)gjOS>7a3!~E!OZ2Jes{^laW?DFjW_ATj<<|Dk9chD)q*$=&`0;dny0Vn5th{>v4+}J2GtT(zEyJU&U%#mR33AI8 zJy-Vj^EV;-BV1c{ah6UlweOj3$I09&pFO#CccGzRvNiAXs>+21@v1j-u?@>=I^wI) zG)#0$o%^T?Nm8PT_uoKzW7nzVJ87POa7dj9I&>LcnW3yjb}{`ys+|Us(eJ+|Cr+5f z6Bt?HYsO$N5w8UWlkpYIeTU)P2XCzhVFd_9lIrpEIKwKJf_YwQ_ZHy^Q}>@-Rrl!4 zlNgkzQ{x^RHthc7FE7zh6FOY+Z3ZegE00Vze1{y*?M+?pVqFrE9@Q+B(P$uWW)4T^ zdeaPsP0Jl$qSZI@doL73opt&RdiK-g;#Fn6+MpOA=t5)}U!khCex{z2n0!-E=Ci&; zol8NX@Y8^mJ3}a5mau7@`c8&rjGr(k^$0(aC4-~+ ziwfu*{|F5ia3^-Jp~LMmdsh1~^+wKV!IU=BXFY0vlCBz{BI~gLT!BhaLS2!JkIXON zDn?rzHUX)Q{(*mXiNS9Ilz!^Lj#N(R;J`*gh}F2~?8>Ht-kofjH7(c?4C^oQb4?gKZ5~*#1a-$%wn~=WwzjtC=KOr@T;14f5gUn} z3P&Xj@4^fQQ>}ij$s5t4!aa$5zb;h@D-SLbQCY35-=ID9AV+}7D1Gde>LaJIdMll) zxUcf6+>Af3i9<;B4IDiqPLyFrL!i8u)RuDpTBngDrob4hNDRHn(5woBW>C`xZqG#e zCa=uKeEF+Z{Xd;o>5OT6oi^giXnQ^qu#P)Dso`ZU@glW0gJ)q|O6D z=g7jFTfS?e1Eu@=ezh{?m-|2Wb+{)t`N;$6SAd4)0BY+IR&BI^kMRVJ;a$t;Av|0< ziedg=Rc_s7!o|t{6`kn0TcVM*(ztp$Ic)lOLc*uPO&Ye$eB&1ki>g_*I^wuXk77t| z1uYsMMSONlmiii-T4y`f;ZC}UKK#L^=?TppcBH2ZpHAvC1_<$WKvSqV^SB}G1~CZ1 zSaN)j0Kym_W5zF2%5x-Qe14ci-9auH-Qdng(j7ahyF-+%ks>LyLzrE10&~S`rzKm2 zb$iBe&SefYcWI7mE&y1zXr5g&%+Qo#?5~qUKkg`c7U2JTk9B*aL$({xFB77Hs&SX- z?ZuLI%RD0Os86Stq2Scvd8UH<8WFZk&ImLaRMoSv+y}QG$S3pPuc%n%)4S2^&VBq5 z_mlX2pU~ur#T=$sbhpD*#c8mJBqQC7XYLfOL9=dv+ds(A#&Ji>ZFf$VqzuX=<>K8x?k}0hca@6W9#uXXbm5L|% z$qRdB?byCF;vpahyk3)w3{W$<;J`DR*r^z2`4Fr`m266G#nY6+sTK1)-N0B7b1q zq=F5p9zb{qbx0BLHCVl4{5yom^2^|h*!UO-r+rx@@|illtfXSItyvP1C3{YX*&aK> z@z_wTMmBXrwq}etI(-Q0y?~%yy5dX(RQC{I*Av^x8kI`7qQqmsV zP_ZAPM!QNM?`i@Keq~4Mum7uK%UQ3r z==EH$a@`zd44fuSJ0x8$?IJBJeY6kL=a=-Mw~ooWM53wEte{BsXW8cZM|cPG{M2HQ zDvT)cec^WCu1U0sdQFs5rCE7_TyePnX;On%=GB_eHW^ON))5EBo0C^H?+x+Sa@&+p zeLnP@EtHa?>JjZb>Mg|$p#8@CerxAXt@gdtudYJ3?sy$r72lAZ zn5bcP5=aWsoDT0S-rU#eu^>t^maOexh$T`10GhvXfcgWSWnb^F@4>;Ug>~`pFh> z65EIkWu(OP6Y->M&tyrbhP~|`s9crz61%Csus0|5?X8JVw}zA#G=ECplNRp#oAj}_ zE<%XEEVn#@wsDiZ<~%aE__gAjYmwz{MA8khd|66WwK#PO#;sNT8B5hVRiRCO<_d1k z;O~R~TQ9nuKoOJ(H}w!7np^R<~f4@sZS+KpjkS?C~aBUc%9!m?lj-lYqSL zuUD2IX$m|I1B4uO*TfKiq3RtLJ}8#I_JzfB6XNX#6AQGX70HqS6)gB=fDXQAB`c!z zEPv`hBfygK(pD18r3mjceW?Sbc6rpANf+C)+NGo^jI$r%_I@Wkcm7!c{e47iO11Vw zNciL7PjhvZ9aVYEbLhCRb#c6iKjY#_Gdt(Ju)HMH9d_VxiVNbBg30n{xDnWJ=EU3i z`vKqdnoYXZvL48(TjpcD-A@irT0T2Xl@*U(yXhGPY7pKVxS^Z=5T4qoktB1Iu3D-uAJc6DgBt__-Scx9lF+* zB5rSzX$GRPwxxem%2(mBr0k+ay#@BNo_|@U>QS5RG2piS@HE!?@7piOp3QqCE5m3Ut-{CE9LG(uJqg$L zrCQ4UlQtELB^4bqCq>H?p%0i8Yyh-I0s^4Z4gh3~UpnxJ(kKK1>?31Hg80n<^57EF zh)AZ84Cg zP{avO%!G)vP>tpZ=l=G%26ER@3sUF-fKr=BQ7H+}2f2JjRF~|B%MY4ErB{S4>c#(d zH|*Sfwvr7sP0U>W-6MOwSag<74So|bTm5aN=Eiu->8L>q z*3zFOh7fb`ko`>)l5uIP4^*)sG20}J`glV!rJ=yAZQnaO zd_TO2hT?zATTjKXiO$iZE{_K9LF3lw=t5fRv8>^XOY-r%gxN@2Czf>C@g|_5v=*dq z;x^hu@Mz?tg_?D9J4*S|QnQ=E!p8(mLm99+o5C5`FB=)`W0f|8=~}8;gzu1Mo3n03 z_ZNLOTjd^(x3n&qu80cSIXu*T&>uB0e9OzpCEPXxcF{eq>s=DpsZT~!FXEioYD5ij z@0p+*-~9f7ky!F^u2}MS8|RsiFifc_#*hhm(5Tm$#dWok?I&1-a`9mgI*XA88)faI zegPV#(7DI?BpR9~<&^g!Hi9epVV{7YgK=ePOD5=@?>jcmpEYSIo>c6%Z2kJ0v>&zh zQNaZBB)0C`QtYXP+tg(pse9wvK-}j{&Gpi;bFZqqY9Mv$7(F~=M|{zDULisI7EweXTyU4jqP9W(Uqhq zwKSpWx}CBfw!NpfJ2oDf>_$Ne=C29b33>!lJ?DT*d4(SdI1`mkot6o$yW`M#?>S&s zW=7g9C4EznLJDlX0&XkBFx{>AMf*miY+JlAWhz%}%GOy)X(|R`j@!>89b*^ z|Lw-5y~dl=xxYYo_5JDp7WluIAO|vwMoZoQnDTzc!^cHfCQyT%2|x_6%v-l=Heq}X ztLOXhTKSED6qsh%mUSkur?5C!sphe_#saksq3_>KSPKhJUoQmF$v|Q#eTPgF2FsJ8 zPb5D!6si3A>SmsvS+-g5xbzs#mxnp61v*RMBD=xI4u=EavWxCdnM)~>kGV`Wau-ln zoknS=_|C$BBF9j+CDpyzZ<0Z(!p6_EO5cUe2)+)<)S_DE-FMpkwrPOA_{0WdJl2^s zrm>7bb@)IwKRCX9)`w9?>~()#+B9k>-ANT1`vO_iuZjd(@}~&ZlbdZExGwF}bJwCF zrww_w*G+#Bzvw*~`P+j1P)|Tr>nKf~=85G$4ch2gh;-o>&^VZNgi)QoOle-}TGy$O zoRDmHklz&(TO7URiM%=f3b| zy*)2^y*ZWWY`|qX9zf-0Q}=*D*TVSrNf|hh&&;X4*&Z{BJ{8BE$>EHIQ$^3S0hCFb zKAj5V3mB(KRrRLAmImz0*4Sg$zb<&MSB)MlhsM@sbtpDB(I9v>%bVxw@HZ1BOG@74 zfbW~{BgMKYqz3CBCo?3ps2R|9C#wQB^@W<`E0UDJ0BwtJAHrv2 zyiQYsKb`%+5o3YiRD4$Y3*$IP(LG{v$-g>mL=_oYowZ3jPFkNj<_r&IVW7!9@1lJ; zZgV}m&u58O54zNjz3pyH^-Lldd;pTR#R-(eVeAZ)2dd|aKNOw7>^YuX%CFZs-en0c zxcX&-)iB4LR3@opN_-YQ^m_3mWwec!I4K|SD-h&h&KCqZx@F!E2*{>^_Iy}H1ZNjA zEA|H&I>4LPKWvSMO;LD}AxX7SQ<#z2&am>5r%ceyZ}RTb3|N|~8*nC{56{x0ni^fQhn6ciRw06qYWw$%D?jxvUn;$-@`3;R3XC=BmKV?5Qo;jk&@D9L7}q2-~&pICX{aRCRn-rUUcA4``VqUwn|2@rL7~ zeKf^3(-Lnq_~y5M}Gv2iYxEghHh|tqf_D>9>&S%0z zS#76Ssz^_&Ig0GWJAb#ye(vu2i$a}E*6sFC-N-u{&7{t&8Vv<-c|kojY1K|K3|>Ql zDg13W8MJj)@_JXT1;E^?(z8rUs%QR|*jJ((Q}M{X76uS>+hMW*QVM?GNq~G1@U=kR z!tJ&xX`;_~6_B52CP0h6Vj|2E2L-6G;qA8pL;yNz@d zf`~SX^BoG`@m0pUV3Jt^bXJ`Xon0JwuWuxU%+9?&tjhhew1v*zDDii))=k0eId1hk zoLBxOe-PEe@ldkpDJUv{j*!-UP+2+C)xm6{!EErLdOyhG<4`cPi|{dKY2$EQfUGxz z?J;DqE3l?HGxL5gG1e!6K9p)LmDnMR8DW(Ni(7!?1W{1Jl?18f4wCK^7YEJ_DbJg!eECLnEif6 z|6jI)Q796;^d*=;F4>Q-B7nKzV-13U_vwxqVng^ZKTJG#{QgXsfNQ4rds`y}0s8aeo?d5ZZ}0 z5}hH_Y|}kIgLI*DaELP@yVyt)(UET~XwjnMwO$PBPJZIQhzLfFAX>yTDFMCWBMY>Q zi<1`NHWHstK!QS2(}7JNSOx-!v}kEcoK;)N0BF4>sB&FoqcR|h_Cr`AVTNRbnrbLE>4{qu1;+7J(RLeLGw8_JPh*G|D}?>?V$cO4 ze<{b@K>!ov>;G{aIIjbaL!E9!kS`g)QVjlkLMLZpBBq(@MPj{iXt2l4RHI_!VxIXo zJc(l{*`+4x&tUiCPvn1?&m>tyH7G7uVJ}O-Jr%d1>u3Sq#oPF#c;W(du#)iPaWn8G zx5OHzS6BweAlB5*mmFX%^PnjDSl>Qd|An!miMIqE24Ab43U;f1wGAgb6n%z`h~$VsG0E!{}9)-H7Tkc6!ZjGh1< zeYktBn?d;&#!Y+atg4a{U22R?Pr-)FMB^|+q2T=R_VQ-(gPkl-yw`&F z)wuA?L0smqGNC0m`D2EW=NGD-;Z6sn;}bggi!g&v;Ci3GPs7_?B;JOEgh;D$8+@6& z^m4cDNX9w32>n!Tv!5NbXGgdXjPySTgDZ#v5NZr~@gGIL6A7cFWCw}opNHW=ZhR9J z+V;2dbPKd#B^1}3yC)vWs&*p+BDHive&Qh6(x10YYPEK7@*fvMk_w34N&_SZ^{uhR z$wBh4+PH;awOCXfqzaC3NiHxyHQ00wsg{9V;?ts) z9|*?(#l8cY1T~RE10N9m^ItH)6M6i8sy0*gHuQxrC89fd7X6oSXZP=oX~hB zT&HI5ijw8apO0P(CZjz~&ybI-eizlN8VzD*5TjI|&UB*g^iN4rb>373mJ>X0#oy!2 zbqa~VUw*!AYE)zv;4nV=M z{q@*Dlb)|We?M`wMQni^w_hOoWz5YzbVx`WOZQt91M#&sQ>+$Y(0!aG!Qjzq?Hi6d z`R=5#>s0%o`G5HBpqvOJm}yp2rQd}2LnR(T9K@R#6!r{L#D`?n927yX_E)tKF8``v zUViE+%)a~LYEC-5D-$vhWcArzqQ%hkH7>#RR@$wgAKI-)5w8;ptEomjx~rsQY5!9y zQ;^X@{ZrdDf-|MXP?pRchs&=s6`E7aVam1{z$Q}sMKBp8vx5wVH@f}Y1p|Dgkjn6y z?tdT$p^0p2{*B{(<*9)56Zo$Si^b~|R!_vJ6+M*>i<#rzHl$N~I+yu!KaWXG*r_eu zk<)F}?l|=w{RM?BEIje(@DG!F46C9VuIeDNoL||}PWZYiL`@&`8fKivqJ9s%jV{Y;o(-M6=Ym`n%9$if_);S`*6&RvjE zP)JEjyPT9Bvh43nOR%*5ZfQUXF&^y3GXn`H)q3G}Zdd7FZ!$LC6}IXfa`hsp7&4|f zyKFE1N|rb;$AX`OgZ1U`v*OnUFApg@JdClCLrIGOH-TsY--MTe_F>|GegVbfe{}mq zWI&`)3)Q|PvakN}g>eb?8{OPEnTQlTN&d}ipg1#@;aeb@;GEjx2^ZnTayGA( z&z}6>Oixf$r`>ea@$$c|_t^Ow^_ag^VnbnANL%V>hZ_dkYg^vm6%R*DKtlr1-~BJb z^TvZ?`!A;9(-#a1*$V2|JVs#^pjot0_t~7CT8lZUaOF=9j~CLB=4Kqi0jS4DA~#!O zR=_4vTyXUef+Az5-msyQL&lXPH>oTa81B)iZONwSRJj%<_h0 zk2r}Zi~(XPK@8@O-01`?F4IUb@I+GyN_HyAVq>MC;nXwzd(7j);%ZA~Jq=Wp$qo?h zsrEM0mq-pN8Y`=JBVUoMx=f{3ujzzPi3B|3MAD5DnjTy%NtL?VE;L8?lo}eY`}l(i zhD%*_VcFUb1p{N%6fJC2?|H~k)cw<1og4}5Y=T!rHqg)QI>2;Bm0_4WG_@C|M^Du-v9p3^Y=V? zJfH7-mvhd0_V=7>WNs-CtT`q^VAg7g>&QF{Z_KELsnf{$Ck1Z#V{1gs$|cn!xpj!Z8!@zvJsMFZKr_jhQNB`$`0X^n1?DOy~a>Xiumpe(H;aswHSW5j2^r9MKRx=}6}%(;_nw=d>~mCX{lm;@UDLjAEDGcLUOv|K#;bmNEkdnFxkBYWeZky3!vZavF6PS8Tirc<@9G%TP%yrWu8vLT7CRcCSEHUf7@Bn z&b)^D;LtQK*+IP6@AIi^VYy>@!E)jlR$BO1q3b7U7E&8)2iQ(?HuaK%-sLtWWfvqm z8XmU7xgFh#j-wRJMTiFtid`taD)Ii@dW9(FaG#qE?i5D^B@-lQ%ogIb<*&wocT8H1(4Z;a2kQ@&!#~EkBtH)qU9SDq$b0*4z~B5QCs>9me5We~S|iB0vgy(t|ws;o;$&>2!2c z*9@8KfwWMabNk@bhMr)uPSz$O(j&|r48|re>^gt*PhDfp7N46_Xf&O5oESM9CLB&{zU7q z1$*Phe)W(15)G$ev79Y!5R>Z82PLe5s2quRGiFsIcoG*`p=172n4`-7(PvnCFD{jA zC+E5T*$3YoeBwACn55I%iQhNgx3b`Q;P%u=YP2J^Z3ZZ0Cug!A z(TsQD6t1R9V#4`mk#koN)%dqe3H}|{()mJ1Tyvlh|7~E9K^1W$uqaG8wN6-5jD{(8 zDas9M658;Y68Rqv?cO*a{1vj*X4v_*@07i5S+g}G3hXaWl_SLr1f~~`q%87bTU+_2 zM$bop!p>QTAFSgug-cB7D}gYVt6Lla{`_4&z(x?K72=!aC`(V2L5Kg(Qu5;dY9)}> zjC1^0CgbRfrP909ayMJ&d^hq=j(dI2O2qkGiDA!S9|JHYG_t!UrGe;aw$G^TYJ?8GjRgCK|!)-XIJzq^v0Cngx z0swL1DT1K{(LT*Xq&+HavukOnic{ygt>M`T;X8suyS`r*wTtD+_*(wXlXA6V(WO~M zTPrggSw9hy6uSMp_&tp^hRKa-`;x@AG|gm%(PrV!2JXyHC_=1o z*zVLcZ9Fr~GKeQK(@CbQ9(@9#VF0TX@PL(b!{L#$A?TwrRuV&GYuTu|QT|OYVZY$p zVXl2jZb+cl(4hn-+yh)1FCu$|_;y>)isH1{~V?w9U`+{kwd z#>kvCWbkBjb|=T-`^dTfho(3)elDQ9+9z=5sl_34ZH!`?W6(DBC$1Ddx}B^m6V2=u zOWaK4`#hI!S}9c;n2JTQ*Fl!He5?sKIs}L!=!5|EJ{`BCZeU=3rq6)TVfZo6Y`p$9>4~ZhlH8jep(i>z6<%S3;F5$ zZ=cTVTxmaeQEo z(sQvyY~nFY4U3YU@F0FjT|0ubo;92B=<+%_af={(7xJaU7A&R1XZx?7wRj>zy#*$8 zAO~&hB4ZU-&_=qX>7E})#7f8fW(h0QvVyxzmPHVc9y;I*Z)&B<`S*Op`c{G~wr1*7 zzJz3d9)(qHe?m3rO+jrm-)MLG+vmAiOHwGDGiP6?6`+^{g0*2$ULf+{Cmkd>2WwRb zIDa#pOsnjKz#L>(JtPS@YMYXTs+nu0YUq4@L#>2ei4Wq#S>Ryw=e;j#5%h`wnstu9 zMAv-@(V^nuPs+)av$))G{I*TNh1JsIBf}4aul@Fa2 z8UOFLV6rx~TwvI5vk#LMOfjpCbG|5hpCas2N`w+jcMs;qN1)?L;>6Vg0jl%2%TW83 zf>hOmLdm(3tiK*= zBkM6-0KD~tdM6ht8!m`e2T8DMz7QH(wo__FkD&PE340vW zBWQX$oU!a`ynSoyS1=8r-nD}1m38V|LWD?8SStY{1bQ#BfP{!I&}+)_2)`q<*fLf(M&_amh6NfQus+ZQ%rCx;VD_vonE!(NTjNH z@hX+Gc*n9TrT+3vO!p5I$_5Hr0N@Q3i_%>I@Ek1wv=GiL98Rr708COJkn`OLffEf0 zLT|Ci!k_yk{G>AREG3$B=u3~yL3awO#@IY_0;WrcZ11`6gy;oai!Lj=l3;zKkARH( zn|u970{lhd@?=*dTx0yE(7Dn}$Zxk%2>ffPOlvG(|HJqwv}Chjm*!W3-^pX!&E|Hw zg`R#{VCHV9rS%y!9P#(J((syzPZg2D1?~o-BlMsOjEQJ0z z+@WxWtE@P_lE5pbtc!toNyh+R3{yk)&=KzpH_gIbuM6;Bb+WH(ipcAH8`TM;nXD{K zP4O2jY`Y{aO{vQ)Auvs;2ca<7sLFWERU7pPzBB;n1Z8lNqGt600MWtXsEY&vk4V`frfk#9LL z6fKNLP@6MKx@HZkB?d5>7Uj&4P83x@=Xne!P*YxI=rl{e^rA0@(`W_9>!o>}qp15R z03u<@;54NRnAL}=4@lQ^2>@(ELZ?U;Nf%HG0EhqQ%i=5Bub#HEo{uT6OX=>>->VIN zMimYg9k^}0>|QCoGlJ<6=B)qercmS=f}sfb6S`I@RkK@K2|+rSiU(xvq_E?LDmNPE-?;j%bjgL%6SlJ3OQSxRjrt^*?z4R@a$ zcEp{`@~3&ch1l~VXZD@k89%zDjc@8!BHYQ?@0O6BB=O+U&TtAM1oU&_&+Utz>_7J; z)v-;xNEWO|s-1u|MEO9tNf#(zex7%w8#pK2SY~nNHpX|ktUNZMva%Q45U zE_z{&k!OA{VBfxRWU_a-6F*Im^$6fAeUMw;(f%F)x)E5z^&*I)4ZPmT0M4b}48eN9 zZ5Dghrrto#N*J5iJ2v%2p;AnXy%|?utmy2*U8s7dEqdg|Oq&s)lb?gm43Wq=`x_7* z2crn$vNga7vqXqbNn9Xigxb|_p4yXcJaok=C3nrVZ@{d3q5UJ{!}pBkq);d>4waQ% z(^zhza}@1v8d?s0mxgdPbL>^WrM{hsc2KHwtWvIAd54)II<4bL+JXUuFiORrwETc0<*z~VTnARq(~ zB}H`%qKUlFNilIem+&x#=4apFr0;EeW$z1>#L=l;lT#_Lx1-}|SjghbEL6s8Naneu zgrFZoe1~L<1*HX{Y>wQFCKI@ta_x7ysm5hM^Dr7gXhyAvm>@9lR_^j;zk?m%Ve?1 zE9Ty~<1}c?n}{`Vmew=f8!*`y8|@q0Lr;tJluhy+uC5&WY8!nZ_dO)85zOae2|q*e9}IRc!QFNA0q@~nLt~p)k%xL@-HHxv z5wRzhYSv4mB6RDesm^>_SxI_NN!KXIk@}$Q?TU>uAvmWQuJ4^Dy>BGBc8cU>nuidWYp{^OlrsHgeYRk2e;pVqSl7vOz zRiZ0M5pUJWN@0GmxSX_`c|-SxUtizdtdi5L=^Xh0E06OpJ-CU zV<*%(Hd$<7-12s^u<+v+#Bl@LJ&)7HK-<2j`vfmA0ABJ*&3R+{di zAfxHEe%>!i8$0caK22N=?6AdkGhlQTbX@#-S8qihWh>r#VM1Nz_v=EqFo7<*k=K`V zEuW@K3MltNkA`~t7P!FZ8uZ?riZ>nT2`Xe95pn8rUMcT(-u2Z zJxDPwznFi>FJAZfQ-8H>T8<_iJaOVO5+6mVpWrnKmN5kRAgMHx!X-8WdBWR z|9!Q)5a&1_eiI5sf*eL>$)S)ue8W5EC40>Spc2R_$DDoDMM-prKyxPCn9dXqw;37Q zJQ@+cCcCQJ7LP}v=$RBDs_EQr{WZnudnDW8k1`S%LBV<>Tv$QYaNUDpC$@&?_(oaX zlOuN_I&vG{e!eY(r8tS2$k((xsJn3DrGb_f(ze4`nE$qN;8^gGk-S0dvlf=HAQZl= z!*<@?0D&KnYgu;|Mn)>V%C%b;F zwYZhVP`v?R<+qUKy4_TvwougPY&1F5}~wM(Ln^N!AknHx$CkiBP00dpyI zx7w&G8C9mu&RNr!lK>eYreqjd5Go!7UIj9Yvj4-cc!uz#TAbh>{=8Gmw# zNMT2)X4rIK{##4T!slbc%@mK3JE8Jl`40}RG5~-{LZ_DxbJnX=RieslmhkOMXL^2k zzBSVJ{~)!)2TGws>BHHFUgeHohhHJ(v`V0JgAV|2L9bpqpP~_xxgnp?wooeUK7Qs2 zTmoPEHn0rM)(h@y<2?@nDg+r~aFNk6fG6!ZcmS36cF%LWU3~EAoUpGm)TM;zdrzTb z(%G|x=i5Tne_EA_YvLp>R<1_sP4K9He?Io8BHb9`j-h9WSzF{ziF^{zV znSSvFZyBomuQ&Dqd%KHXcg;6<4bRp=MYx)Segjp$Jfbkh4iLRDUJ_+ zFfA9DPyy;j9DvpZMuY?}s~=xJDwNL($%BJb9a=nou~eI`T;mxxYp^5qLQ!+&*aoLb zuWJ$xgL6M{k9yi{m0#m(kfxYv(CwrQ2+O~9c*ECU-(!}&A@#6$8v0;=n+jN7bpC7h zv}MSJ3)2sb>}ty<<9zxa-dxw!G}#Ft`tq?c^jQ)ngo1Pl@kSt-^@_64?Dg#H9RdG8 zwnB^6UxQ^|n;(a<9VK>@cwC-4bKvBneR>fyYhCXLkvp;UTgl(vKy4K0H&PXhTp%9F zi0Oyg4Nx2fZlRP|{`zRyE{B0(@4uq>0w4oEp1xuWZF82#Z!JB}PWKHrW-j9oUTAg5 zfA(zZ?mG4Mh_Z>t1^+Gdk^X%O7fiY4;y-3qF=tj$2sOu+o2Pz8tNqf@%IxUYllcyb zPCqB15hk)@pR>cqy+U$<{v}684aP>#A23+d02rI@m2HLQ-S43eDGW3)T~b_+8rPOo$d*=wOt71Q=o#jz z^|L@&mp>cd!b9NK`|NOsQ>`;Vc(wJ{lBcIViXGX}kgUTnbgVD1f1M6*8ce)1$knrS$cAYnb3bk!uK$aAxh3oBAhz(?6En-J&szI|vuqEd>)Pe! z7`YfX#u~l4@}!3aZ4`MOPJ+T1d2flb5LdBm>7y%BFCC;3_2bNe$C~>d^PExYz7NDO zhhbzYXGDiMUm5hE_L#&3N6!^d1tQ?czYU|1l=tT2;hPD(qiCod$Rk{L4}7CpcvG*P z2-iDKD>~dS)-B1%vB|9J6PfT76pURD<)*@WZ@=P8SB@Nu;*IIJ?v+$Ox(RqlJas?g zm_klUb?5C@7wNMN+g@IXEUlXzfg}goW>|%s(*uNq<_rtIWldrww!&cKP&%(=nTCj- z>xlVH)Dp>m?R}R7`4&Zh8LxYyZnudlww0DUbxFHLVq&#LQgbV~&IPX~s{dO3mKc#U zY>4n{Q_r=0vbqB!onf@PYpGQfUx>>r*HnDp3MpSZ<<+6YF_Jj;yAb+(|i=)0yS49e$BG)$8Kx;F|(R^pZkP?09@#?P4 zh|wp2ks!74vP`R>w)hP6oEP63t+wD$y7Q~H&17`)hod8Z00roLn^Rz1xipv^Zdvx~ zDYOo#s%NVD&Ho$=SbDS!i)_C@|B<2S6=5!?U$QJ_3fQ34&CX&OmzWgGGJTPR+TO<< z-_<$z^w(;r#-F;CLY9%nUPRkq0 zdPb%aokguwEt>og&i@xYEqLfwpGl^3d)SW*Y?XiuROVp{*5p_XmE>KM}x>>?{SCvc38UG8q@?+sOs1 zzm;8>Iwnyq-)brY+`{Ipp3EO@nHT9fXRfb);>h&rZ+bdVY4Mv+&siYv5GC|w;x=S| z&(|>?_O4WYnR=?=pjo%6gS5YOIyjM;2C{Ly%*_EaDzPC=U4cD?>=)>2>kA%Utnd+-WC=CkUdYeB<<3*0^=R z#Fqq?->I8JUw|@s+(V1VqCeMZQkM}jyza};+wyDnx>X$mHDWBJV&w%xQEvegFpxoVlw89ketfFxAL%LayU#q3= zNc=P+3OAn*=-zXJUuv=(p~DMAP??d;pNYkOLD2jz&Rmn zw^JSTYZ){{QeC z+D^v9^7%7Ju5_##%rYDFBIi9)=@XQg0iRE4D-})wawt?eWcH2<|7mRR3~}VHd|Swb z&%X~{dlsO^kW-S4PSzU!gXb!i<`<#nr#ECxxZOim+pfOUx-8Hd)ELgx+LE~n{^=e! L(0X|6+_nD!5S;-S literal 0 HcmV?d00001 diff --git a/doc/coupling_to_plasma_from_COMSOL.ipynb b/doc/coupling_to_plasma_from_COMSOL.ipynb new file mode 100644 index 0000000..5412e4b --- /dev/null +++ b/doc/coupling_to_plasma_from_COMSOL.ipynb @@ -0,0 +1,274 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Plasma Coupling Using COMSOL Results" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In this example, we use a COMSOL front-face coupling calculation provided by ORNL, exported as a standard Touchstone file.\n", + "\n", + "The Touchstone file is first import as a scikit-rf Network, which is then modified to fit the WEST ICRH antenna electrical model requirements." + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "import skrf as rf\n", + "\n", + "# WEST ICRH Antenna package\n", + "import sys; sys.path.append('..')\n", + "from west_ic_antenna import WestIcrhAntenna" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "4-Port Network: 'ORNL_front_face_conventional', 55000000.0-55000000.0 Hz, 1 pts, z0=[50.+0.j 50.+0.j 50.+0.j 50.+0.j]\n" + ] + } + ], + "source": [ + "front_face_conventional = rf.Network(\n", + " '../west_ic_antenna/data/Sparameters/front_faces/COMSOL/ORNL_front_face_conventional.s4p')\n", + "print(front_face_conventional) # 50 Ohm S-param component at a single frequency of 55 MHz" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The ports have been defined as:\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "So before to use the S-parameters directly to feed the electrical model, we need to:\n", + "- deembed the ports by 0.3m.\n", + "- renomalize port reference impedance to the front-face coax characteristic impedances. \n", + "- reverse ports 2 and 3." + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": {}, + "outputs": [], + "source": [ + "# creating a 50 Ohm dummy coax line to be removed from the front face \n", + "media_coax = rf.DefinedGammaZ0(frequency=front_face_conventional.frequency) # 50 Ohm TEM media\n", + "extra_line = media_coax.line(d=0.3, unit='m')\n", + "# deembedding all the 4 pourts\n", + "for port_idx in range(4):\n", + " front_face_conventional = rf.connect(front_face_conventional, port_idx, extra_line.inv, 0)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We expect the port to have a characteristic impedance of about 46.64 ohm, so we renormalize the Network to fit this need:" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": {}, + "outputs": [], + "source": [ + "front_face_conventional.renormalize(46.64) # done inplace" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "And finally, for historical reasons (may change in a near future ;), the S-matrix port ordering should be ajusted:" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": {}, + "outputs": [], + "source": [ + "front_face_conventional.renumber([1, 2], [2, 1]) # done inplace" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "OK, so now we can create the WEST antenna object:" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": {}, + "outputs": [], + "source": [ + "ant = WestIcrhAntenna(front_face=front_face_conventional,\n", + " frequency=front_face_conventional.frequency) # restrict to single frequ" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Let's match the antenna for this coupling:" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Looking for individual solutions separately for 1st guess...\n", + "Wrong solution (out of range capacitor) ! Re-doing...\n", + "False solution #1: [150. 150.]\n", + "True solution #1: [52.57986227 45.88696785]\n", + "True solution #1: [52.30894839 46.0700872 ]\n", + "Searching for the active match point solution...\n", + "Reducing search range to +/- 5pF around individual solutions\n", + "True solution #1: [53.67807308 46.12207788 53.62800637 46.30935881]\n" + ] + } + ], + "source": [ + "Cs = ant.match_both_sides(f_match=55e6)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The coupling resistance of the antenna for this coupling in a nominal dipole excitation is:" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([0.70081638, 0.6878438 ])" + ] + }, + "execution_count": 32, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "power = [1, 1]\n", + "phase = [0, np.pi]\n", + "\n", + "# Coupling resistance\n", + "ant.Rc(power, phase)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The voltage and currents are:" + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[22.16126386, 23.75535708, 20.56902439, 25.21223565]])" + ] + }, + "execution_count": 44, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "power = [1, 1] # MW, to adjust to fit with experiment\n", + "phase = [0, np.pi] # rad\n", + "\n", + "abs(ant.voltages(power, phase)) # results in kV" + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[0.70248687, 0.75556107, 0.65298786, 0.80405425]])" + ] + }, + "execution_count": 41, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "abs(ant.currents(power, phase)) # results in kA" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.7" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/west_ic_antenna/data/Sparameters/front_faces/COMSOL/ORNL_front_face_conventional.s4p b/west_ic_antenna/data/Sparameters/front_faces/COMSOL/ORNL_front_face_conventional.s4p new file mode 100644 index 0000000..fed11bc --- /dev/null +++ b/west_ic_antenna/data/Sparameters/front_faces/COMSOL/ORNL_front_face_conventional.s4p @@ -0,0 +1,5 @@ +# Hz S MA R 50 +5.5E7 0.9833673750492276 80.96377443955839 0.008159649655058979 7.738772614443071 0.0145413437349296 16.766538738668693 0.0010505712330604862 -169.75560162791115 + 0.005398399959278055 22.968885177373394 0.9848074824065548 80.65809524512109 0.002317451028156058 3.2454593187084524 0.013899534074545427 14.553096258345233 + 0.015466057366109193 15.352573092351177 0.0017852444452037635 2.802734655640837 0.9830347719457835 80.74299676938419 0.00812386410086659 7.621156795969611 + 0.0010813303292888372 -61.44581050964589 0.014724345533904457 13.318047129975318 0.005359073489960678 22.934149123418244 0.9850374253641254 80.8905612330192 diff --git a/west_ic_antenna/data/Sparameters/front_faces/COMSOL/ORNL_front_face_plasma_inside.s4p b/west_ic_antenna/data/Sparameters/front_faces/COMSOL/ORNL_front_face_plasma_inside.s4p new file mode 100644 index 0000000..43d6755 --- /dev/null +++ b/west_ic_antenna/data/Sparameters/front_faces/COMSOL/ORNL_front_face_plasma_inside.s4p @@ -0,0 +1,5 @@ +# Hz S MA R 50 +5.5E7 0.9531014698199719 74.68128260423282 0.011727825824109023 22.140672391691247 0.0042213470494665405 11.518713731671811 0.002189631421892682 42.58156998869071 + 9.251508660246946E-4 -70.21624695384136 0.958437677141582 73.97406838963975 1.7232083904810094E-4 -60.95155708607013 0.005781121306569129 11.04470231400275 + 0.003550071050919271 -5.440992958402874 0.0031673180639685814 30.852889750516837 0.9523110682604861 74.3856493165878 0.011744626700427849 22.11148013138784 + 1.7657833450556378E-4 -67.23316376248191 0.005247609440270916 0.5440706526584136 9.356608093953542E-4 -69.87439488938504 0.9590992784229622 74.23536526952307