use IO::Socket::UNIX; -my $sock = IO::Socket::UNIX->new(Peer => '/tmp/i3-ipc.sock');+chomp(my $path = qx(i3 --get-socketpath)); +my $sock = IO::Socket::UNIX->new(Peer => $path);
From fdb8f31619e2335615f85f04a1b2b10dfb68f42b Mon Sep 17 00:00:00 2001
From: Michael Stapelberg This variable overwrites the IPC socket path (placed in
-/tmp/i3-%u/ipc-socket.%p by default, where %u is replaced with your UNIX
-username and %p is replaced with i3âs PID). The IPC socket is used by external
-programs like i3-msg(1) or i3bar(1). The method of choice for IPC in our case is a unix socket because it has very
little overhead on both sides and is usually available without headaches in
most languages. In the default configuration file, the ipc-socket gets created
-in /tmp/i3-%u/ipc-socket.%p where %u is your UNIX username and %p is the
-PID of i3.7.1. I3SOCK
IPC interface (interprocess communication)
<michael+i3@stapelberg.de>
-March 2010
+October 2011
All i3 utilities, like i3-msg and i3-input will read the I3_SOCKET_PATH X11 property, stored on the X11 root window.
use IO::Socket::UNIX; -my $sock = IO::Socket::UNIX->new(Peer => '/tmp/i3-ipc.sock');+chomp(my $path = qx(i3 --get-socketpath)); +my $sock = IO::Socket::UNIX->new(Peer => $path);
+ Gets a list of marks (identifiers for containers to easily jump to them + later). The reply will be a JSON-encoded list of window marks (see + reply section). +
++ Gets the configuration (as JSON map) of the workspace bar with the + given ID. If no ID is provided, an array with all configured bar IDs is + returned instead. +
+So, a typical message could look like this:
+ Reply to the GET_MARKS message. +
++ Reply to the GET_BAR_CONFIG message. +
+The reply consists of a single array of strings for each container that has a +mark. The order of that array is undefined. If more than one container has the +same mark, it will be represented multiple times in the reply (the array +contents are not unique).
If no window has a mark the response will be the empty array [].
This can be used by third-party workspace bars (especially i3bar, but others +are free to implement compatible alternatives) to get the bar block +configuration from i3.
Depending on the input, the reply is either:
+ An array of configured bar IDs +
++ A JSON map containing the configuration for the specified bar. +
+Each bar configuration has the following properties:
+ The ID for this bar. Included in case you request multiple + configurations and want to differentiate the different replies. +
++ Either dock (the bar sets the dock window type) or hide (the bar + does not show unless a specific key is pressed). +
++ Either bottom or top at the moment. +
++ Command which will be run to generate a statusline. Each line on stdout + of this command will be displayed in the bar. At the moment, no + formatting is supported. +
++ The font to use for text on the bar. +
++ Display workspace buttons or not? Defaults to true. +
++ Should the bar enable verbose output for debugging? Defaults to false. +
++ Contains key/value pairs of colors. Each value is a color code in hex, + formatted #rrggbb (like in HTML). +
+The following colors can be configured at the moment:
+ Background color of the bar. +
++ Text color to be used for the statusline. +
++ Text color/background color for a workspace button when the workspace + has focus. +
++ Text color/background color for a workspace button when the workspace + is active (visible) on some output, but the focus is on another one. + You can only tell this apart from the focused workspace when you are + using multiple monitors. +
++ Text color/background color for a workspace button when the workspace + does not have focus and is not active (visible) on any output. This + will be the case for most workspaces. +
++ Text color/background color for workspaces which contain at least one + window with the urgency hint set. +
+Example of configured bars:
["bar-bxuqzf"]+
Example of bar configuration:
{ + "id": "bar-bxuqzf", + "mode": "dock", + "position": "bottom", + "status_command": "i3status", + "font": "-misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1", + "workspace_buttons": true, + "verbose": false, + "colors": { + "background": "#c0c0c0", + "statusline": "#00ff00", + "focused_workspace_text": "#ffffff", + "focused_workspace_bg": "#000000" + } +}+
T!5_yp%;;(vqJiRh9wZamPz-&-ui^pyzrp39R3PT^ zMtI>OM4|_k&Hl>JJc?+rj3m>6QH^Uo=i7fax~A zigc)y^n*s{ubg{mGiY>tkVD|@{1S+u^wXUu(RSlRr=l2Rx$}#Bjn(;yGZys>CtylQ z)d9#%NZ5H88=&%Z`^GoO*NsMI&P|dg5coHsdI(&m#4rp)6PqCin+ep`GwIZUIp+8I z`TmqxdK_nc=RP!=pQ^i*SA$aKGVo3=_FwX3l}8&{V>f%d#xVLQzG$7(+u5M;ueP~7 zzt=uHIX`d6J4?5;OxlNm{h5(Rp8l46_lGM!`K1K6E5fGkvQ-kcw2WcJB*t&MI+V1Q zX6`nYnPG&mBw5T&6(0F!j8+!LCU7wiTx-JEG|@QD+vRZB$;AK0btqeKVyZC*`S;E= z6f^87B~H2~l~>|xle&FbBvp=pO^Ff_;0r@qzDU^5+ztPTvyu%qpleT^iPc-x7C& zuDl)X_8|O-$ST%d8Ag((oU^w3r+*Ed-QBkY?udw(hLEa>tpbq=H$rE;^5@LR%JnCi zTrf!qGSZjn%M&|b)aMCl#@$zD%7d{e)(j;)HF!&Go?pp?DYsM1VI4=0$IE}y$8Sxo zKhJqv_q;0}?s)NYmuB#j8zYxR`P0HJ?4`1!`TB2aO^U=Rk!W&x#TK1SI@c&-rE6!o zs_|;=7#U@3FnL=x@WR*lXGs!F+G;Q&7lGr|^RI7jk94EM!_{6q5spVhZ|x1t;^y5_ z=QFN?tG7dWIC&qB6Mqf-HZtFZkLHsdxaVok^zMH)?1BdJb8$GO)68WwBslKLi$vo4 z_%UjR;Q0LJO9 z9c7CioO1Q*@#+Jin0DHpy|U2MLAB7cz&ryc-C8`i$F0OyG8SV}PdtV8oMBAVQJ50R z!WBjtK9M`|zb{oQdFi1Fvk+YZ)+Wk9EZ`?u5POkZa}BR73s+w^bsfw;HFL*jvb(sY zJwxyI8nv7{#XY`loJ!-p3j?lopHRy sj%a#VC{X^rZ?7wZeZ}RqbayZ^gb9@o?PhES#{Ad_($a) z4%$a>u1RNpXZd>gClWaM@|H&`>YkP77D7+W2NF_ka12xOz9`pz{rPTZGSyoUd>c0A z?WR+!$p)-fDqk%yqgL251dJ3!?mZR?ZHe7#)gM-RfI;)cfxkRYDxW=5`7 y12_#BiDT+l{ z5~OpH$2v88Mbk-a{E>jAeJeSW=RMh5d2t9)z6sX^m?zX}ch4A05hRO)f%>2_$SNEH z1VOr!k7vm}RZy#b4L?NU?eyqzxn;1C44XV{S0_27cWjiD5}X{Gi4DR(6j+wT`QA+} zVrK`8x?zVJ-s4SNcu^iaSFt>}B9o!tQNZd>$czDg6TsQas?-LM@h8PPzo|3!kI-i8 zWV{JCPFp@seMAjUrQcX^b?xk)?xqVisP2kkEruwb;UZrT=k4_@=@A9$>Y$WTN&q~% zy7rE7=|E*MS?XXtV;b?rNf;opnC6iQa=WMP5lB(;%Et*4KawgWxs%HQ@(d19+eS+0 z2w(z(2I0BxAYkaO@ZKOrz-*e>ab&K{m16{JhYTFcYeO^2{1_n4VVRVRl!IbxkYuja z@fSTV&A8B)QnT&i*V^pLG zwGpz*ruENeoZ`m=KEGMq(R%R5=031v?dl5`5-!3AFmc#Pf&>oWng7H7|E~Lc-_O<= z=$gFMogX?|-{pULd|SjBaz+lEM}9WE)JI=ORjOp`C~J|9`A@L=PhQ0O{TTM%d(HZf zuQBzOw$+$vi2j9(J_Q6_v3?eRz-19G^uLVmKlJ&1KYtkedgbwyd84HGcWWPX+4&>i zZ?ol-H_A`mb$T{5F)LhFx~f*;dT{s}cc>o0x&&-BW6B~8Skl=}0k+)_=sjNkaX(zs z?d!q#!9P5YXRMFO@VV_GdiqV{r_nZD_?6i0X?@FgnlNp{7d#G9yfpDlVkUL`PY@DS zM3D@|CO |g1PVEp=d%5-=J0EwSpzeP) zKattl6XPL>gM^rY4``iO{C`II*ap-DSf5dtX;4(r+_qNS4)Qc_Lk+-w#8ZzRp8vtA z*H;=zfa`J3S)#;b4qmR!bubJ-F@PSVyn6q!zn*&(`YvQaAwWI i(U9K@Q)-o0i *&@ d0paj#AydpoVhg3mP2#cVcSI7AOuSq zOGL~}{&~R0vT!F(0I@R|_4OlEgRJ+N`~<*e+#4E05 BEqUzcaU(9*$h%dLUPhjLE0Rs&$ZW6EJG7~ zx0hTR$dLzW95-QMp!pEbUS=8=r9}vxC}WWX5}=Adh$;D;ew(M>a&N>w!JViq-Qr0m z_>uR-+cNYWz%lB6Q%_;|A4+^(Uaqth?%)R$>2{=8et(H|pr7G;eP4L>+w1dr{e~Tx z(X6jIW+5sLfOOrX9G!RDs9Y8)B}WU{*_gjJf^eI%5%Eq~d0ftzjhK?=T#n5hf%-n0 zeIAG6FXv_nfq}sb ASY?z#&U`Tl#XERWr8B8iXbbCLa|^dADt6H9-OC~41w(T zvG8?%QAko!fmA@%N)=E@QA8}gUw7!JZhAHKKHi5Ah4VAG%W=;+XguIYCmF}S!3;=U z-t)}eVrOnFIrOu)29sAAFRpS=d{7exE M~~4-F~q?c&E|Xk378u z F8ZT>o` zj6RrBP`keLj8M@f50iFmhChB?Ua9q;3l>bT?rt{>RB}L=?_JlS;rJiv jcX1n5^u~W5*?lo~iSk?c_&MNcPqT3RM80VZu;59r+i4CGY-iknzkwt+VPxzF zBt7DE`FF_mvi7zN7`E6}9Zyz_5I*;CF#M(W8T%ODYMb@+Z>Td3GhrbNnFgfTqSDu* z5wwZw6Kp19svfFM-G6xS$Oe)F(I(lPLHp&@n2+I9loUBhKRQXB@2dj-W51amhwW#~ zd`6GZeu1--w)qc)hoeFLxe8Xj5Ml Y5=YLuv=B?gF;D<@-DG^(O=L} ~hf tq--d$t zdP4g+r6&oJd}uFU3fwiS8>I0M1IW`eV%>MNH$6T-C#bpd%rC;kH*5%T=I13DOqXoQ z(p|80Dd3A6J7-Ub>~!bRgW?eG>w<$HG7le7(loS%DhQyUqJoFc!l1DbK3i0VSdgh= zt&Bk>6+ulwZKPyGx9!Lc!z^tI&H2vfs#C}A&fLk+ }k%2r$$hZ+8bwRHjlaTn8+X&7Q5uI3EfIBn)T2F=x0E z5Q?x*TB~R@idbZ`^Pe4UF&eP>5@a?EqfMD4!mA80Qv00AtUfwUa%k#CGeVJO2ORjm zDvG^Pvh4&!4kO@UXLo~%VGt0SJ*6oO&H54B 8h z!U=sg69v#M||L-1@~$Wc$bN|3_)oF%?EHnf*_r?DMC-*+lB?aO`(dUMG?LF8KLM zsvwuwjOl8~q{^-a9(-bJ`v+qFKl3^#{^yZ1{D-^u{})0(-2Uq^`Wb`LbsnzCe0+Z` zx+-ng4!%{day*~T{zc<8`~Mr@r0qYRvXA9|+Z#-OT;9KDr^_Q2rM%=%&++a4KWd?> z`aZ9-%dfj`A6htheA1Efe*d$7xWSmJ%-z$Y0gsd7?D)z@3X-Qs;_`g&+xReey #odIRaI40RS|u5Rj^R$ z`xO1p_pec24U@uqUWZ-0fa%HcMK+ytGkyP}n9mb;uXderI@)<3x%2VEx{&4=N#m$I zMud{^WzSwGsno}KZI`-8ZxP4#4QF&SjIGs3IomoBJh2FuqDe0+gm^Pc@D!?!CP|^1 zog*`@H6K)Y 5rXlA%|kQR}mbCY`d8f>RbwKidr% z7-S!sxYFW?xLy(0y6agrC*iibUh|XmuJH4)lVyE!Wybt?Eb*7UA8eS}M^(4P*@uld zyYpVz{XZOY>QoJ!x5n{;5_+Pnqjc)ox tIXTYa#);M`Yt~ 5`siEVVuDjRc2vwbFO~7 z!*+3-s$>gs{_eO7D1*~fd}*0Orb!3w(veAfk5IPkK5H_X4bK7OQWj{8=6&O$4> z>;j1xl5wRoBxR{zHW;_phmt5MU3AXs!bM+xDwUl~Gxm{E&@`KCZ}rt4(Ys=2P06G2 zZA+f(Ycf=?UkoM)h!OVg0r0R)LV^>=+W2w)ew^|tK@CLMT&E7X$t5q<^U*$L@U;D* z&n0nlyqI06{Df3jnI7Dz>Zk2TlQkRTSQ4vo*)i+O;y5#FMa82R@dQ9m6wd~X1dTeH z&NynST2Y4dd*&h;V&l(PNA8Sii_*mWH+y#KCQ!~A#H7o^7wu{~m~fnL{qen?zr)Y| z=cT=$h~3QP)A@Z%@pbndS2`9Ba*w{43!<4j_&V>Hh$g!x?cP?HqaR0@owt=Yd;HqS z#I2IdmwfdZwm_vK0wH1+Aqa?)DmEh>ve0qioc_x?^W2>rd|_V|=v1xQrhb}=o~}6l zIq0O6Oz1GR3GvzD+@ZMmNV%aq;QQ&g#HlqV(~G?yhwAfXCU_b79y;rnm~2B+ZbK@( z&HmtQD6QTexZ@{m$|aVn1wNj|pQS|Lqw;+nefAWtMN24RThwRd3t->CQ>4yQFdsN) zzuZpQ5~0g7B=7tai|xbl8bry^XD(l-qe9gkh?$DwIbwy*vl!lsW7X3bT%p3GX8#hN zvu>3YcXLMHv`J^G$F6fU7PvtMHl@gyTLCU-fo!;=JAR(M8e-|UxeyQG@8X5*pRm+e z&DDI-#cR!TC5m`IHpdsyp{{JD#+;<_24Pg!>#mm^#*afZ8op9B@@}4co3U3rQ|A3s z+{r9~2@H_bhdn8=OmS2Cj5mBH^Laq$FFeSc&D%4`&!5rPZE&kF^dE5pjPGn^=9BHc zLPu4uz9y;0&n{G={$^03L^$Bn5uK?qJdui~#bM=ZRTB`D8Xlx#i58JFcTsMP9;v)3 z!eU^uB)cf1#;a)LSlau-#c0@rMhzq=Hk!dyoP27})orZ{5ps?%3C=Sdj98Gww(I3X zuML%;U%V4$-ok6p=0phAaoyQo>W^8u4*k_EF=bRd`zcP01s)Vawr4e;D6jBVw^QK? zHzB=`g<}u4t@&9pjd!~w`kQf7GklIZ<2B3TPCu56Q~MM3kaxpevuvsyj;e$4H&4td zDP!iWX53O+A}OsJR%hSfiCwZOO5sCgi@i7|ainjHZ1$UAdS!2;Cn$ob(@N mvYhhgm3oq!F*t7)So9Z8#CPae9Wrt zzC&i`I+FD9Hfl ~Q#|^Gj0;JQJ7oG ^g zvcHcwi9dAZKb@*3f`{+hu&8C%`5f<`$1|d2()LkP5hzG)+@5abgKZcTRMWgEMH~#6 zEJR?5P=L~-B8p`fR7_Zqtf8_JDnS(_%|w+7Cgy0kYGH-BR16YK)3J^Qg;nZVdUmC? z6`|@FiI)aVl~Aaui4v)DTL+3^5XE#R|D9&$rr|K&?6I|XRZj;rIg-h%c_!ddiV6wd znQg !gR_q2ollmJp~W|mGW0v!tk=6`lb($qpj*Uwx*l1!);mv~!z?d}>`&X! zW^bBKgxk#-piB@-^zQD#kDsWNG2PGmEgn-DGAH}Z+;r*Lk5MAhf0b`DnetifJ9(@6 z`#+2MU&Hh9>+C*}0Lcgh*dTWt-vI!jgxVqHjYDx=c%Do@8SV04oV=?)NA2^-nW2%C zEj+jp_L;jB(=FcLah{g2@4tn;gsLEY4lr&fHjE(V(D_QZ>p#u>owt) GJ;b2j +yPVm%Voz z&Dpj_^JFB+0!DJ%%K;>bD=F&JZdQy3?K6?h602}9V+Q%M59FqlcV}gpGXWepq8h#F zx_&RHniisCi%AwkK>CLIsmf{b^>i{7uP2p 8|a z!xRSD8X^WA9oeZV@X};;W_{TrF~X>`@wh~bmx{b`Doml_z072LOY{a6)nM4@Vs(Bo z+f%b#Sh$4D^BKc1XTF-kk6KrKs9_j_CT185sZqN1^%LF>dnbi4Urq~def-C0{Oc8{ zf{51!vC>j1jC1s5a^s+~q{!k>$xy*{%uug%RH?7%a>``H$y}4M?oA^sipW1Y{+J!C z?!YEnA)PZ_UIzv?zH%h~U(S`u*^ z6Gb|?%Gd<`6g|eXYI(=cu4%mL*_?phxGb4J`|s(dF`CUZtUFp7C#75Qh+KH zB9S^-*Q_yeyi3|6e|hIwi+&{7w^OzC(}cNX@?m!?*9~g(x6vO 2NW|Atcd?=DxVj|x?@bl2+}U}r y*(G4lk>8xcT9OvKqUJOQVBFagh!z zVk;0BmkGM% kJ_B493n>hLzlCWj&=Dk z^PH!ydi*j~PrL5@d^1~rt9)FG36La##=uS8fyt=Md)C`+hREr6J^T2VD@HfFYEJ>k z5#T1~ZF-sKA`2OY)7H9A9PfaLxi0L^i1EWcM^^j>oXQ?d`^^s+2o5_l*EgQF_HWh( z-KH5imGIQUS Y&*XEdM>UMGQ_~Kct^L_UShgFpF@Tgra!3D%bQq+=-RQ qBh@93>*;j)v z1su7v_%M2ju=tdJPV~)JdklRibKm96+0xu_J)XNpw#vtUXV3eK6eb)vN-nqSKCY^s zY^|=Q8HvU`Wlw*2S=&z(*I0tLnV~EB%Lj& zN`$70yF!DxaO_mzamNFhX2S_uQWfnN#(ShbVPx4qk|zZ7;Q3!|581BTyW=~M_^87t z3M0n-FeG>nj|Uc$*gEtmb>~Lp%bI6zLLVve-@~0@SACwFw%AwLEoxbjcS9_NfwF=R zn&shCrZ*>KdIyo~T+FPFQKaSScUgIn($ZJfTs4`xvv=XrO2uey;TB9xDCU}2tf{Yk zu3!|p({q#9=e)a7*p0~OLiG}fhj;O|(#AYKvv#4{YE?fSnOTv4zeC=AbkU6G06L~> zmtL0++u(isoU$Ay?2!FF9+|i#Q9kP>4?8TeEGc2k?V@>H88V~?!99FxeQ9Y*l^-+6 z`96 8&&JsBOClunuu`re@Jgz!sQ}I gx!$2`ILysu{{-+W*0B}EzAomgf~itOn$G9VtYEOi0@UemFBTi9P2nlc66;2A z*lEB)36mJJw>?LZJvY{eLvEj4?ln7?70Ry2(R!QREd8Ubs21EFM0e|c=)+EzZ|<_Q zI8&|3=i9xYMz7Y z7lwo(?`HV=8dYgDm)^VzABG!IAf%{&Ic)e3v+fgN0fZAxwmQ}3&M$W21P2gIG6XP_ z0C1gt^CJsp`1{>e`IV#Idc4B>KwPOQgoK$k&W}a(*O|enrfbnMDXv$4FSQ4y!r8f7 zsOK)UD}(uP_(f%b+$B6sDBmRfdNyv24BT-4gy%MDB-upIsve6?9I7%3XH^GRsez@} z6S%vrhX*+I&dZ}^oXs5YBwb)W0XX1rieR#=X_8Wg!AA!pTE!CXPE4D%N~SJqso%w1 z9Ix;Q(MHQEYkO1}U@Jve7Bm_eNuX*vX66|yzMUvvNAZq4lwRqeeJr6>P|Z8vAIxtr z!L#^}QAC`GXp@d)zf(En{XS>ghI#dJ#pNq~_woH3CjLR0Qc@+qwQoFob?6(?aNRMr z-C%-EW*J8$(9W7AX1}S~!Bq*UU?y@xhG42;nT|pZon`N>uK1h~(rcpa47s`AW`feS zXPmE?^X@D=CIlc%egw?&`uwcx^kFC1Uy2vdnwtFB!qjORgnG7p33A^Q>Ch6+LW3L5 z-JNU~rVem|DzQ_LVsQyHrUj9+KTPgTEAEIr&gmJTDYMrm_(ZEh DbI`feeh%-w+T@FoqBFu$fjvAk>>AyIq0r~4eEa#)1E$y)3Tu+zJ=1#* z#`WjLtq!WXnGY1hfelpK)JfWF;9_N&j1($z5F}!CV{;o$cwkMH%f#>IITxsGWo&Yr z9itF9{;584-M{3sWMG1i+9wK3X+#pB rEJo=ZN1{2~Ur81WGnb)4&ux5tIOB(!AR8h(c7KDBawV@9U#rDRK6%p!R6PSY`D z411Gdo6O8cJ8m~f(WXJ;X?4?yD3p(CaY;69*j8Qm?+$ItzMK0_W`$6u+sw5H%E *CgBlk@Fg5)l;U=yj8v15 z$siFVsZAw8rGiaM1fV6)@9{azo0dn(4dj4K3Rf|2yGPVbW^4vQqPeUhWDe3M-bptJ zR=E&bIPjIEIrxojDX&83v;K8&miS>X@_Ab}gwxt}@EAyA3US}BmBeF)Ig5Vpzsc~# zw%M0KEJQcLMn+mjtUeCZHYgb2UbohNgI{4|K1IH5-JKpgYJB#ojGK=F7=MoVs9 Rc%0ot+rRFl(G|MY&ldNn*ehSR>Kh0a! zrHh-f)=lK;E3@0VHWwuV-}UW&vV&7Upgy#O*zU+SOcYZr YZS(KPG%VDLv)ubMX|>fO_cAQLj!CKC >bJ_Ur+HWWlP?oXyog!QbfEID6!XACTU5p)u>CahIt ziCJM=JF_zc-e$ecnY|6K&6_smr(yHPLI~@;!jo;>hXhI8pP0j$vk#|8k xv$+&!-R>Yfb(&VSYQI1IcP<|%;dx#qTjNybPhnC?8 zzXp)WxDz!XDu_v1+rq{CjVoYk SB zHsLWd;l8r{Q+D6a<$&Whh#-f=U!=|Du{KNw_AKDj+wf55+?(WNR0M{DK5hlT%dTx$ zEPLQ_;VjJ(B*~aU5;sU)V&Y~|jIxb47+979pq;nA`t34ARtQxp@z*{?bV}V-uHvzM z9OOzCYEh-U%=&F7dv_u?Jo7P`QAm@93DN7pYa)v}Er>G6>mhtSMWZ@HYz69vR}fGQ zD+r8cr6%3z%aN;fbv6DP8XOD>{eP~O)cAXFl##g+ehsS~_2uO?-xjG_=v=Y&G$D2H z7rUxZZa`);_2Yv}b2W`eB2G}Oi7@?A@HbBbV* ($ARvU$f6Y(J0U{8KN~-%}?0evYVP$cHF)CTHlIcXV!yr`t2fj9NqUX09QD zAq$Yq2S9}KI>Asx6BRTRtt?O!F%Xp$u*n?$Lg?$$0dC`PTIbc1Zi%L-u{`ob*q&r4 zVUmR<)czkPXKB2i?hdbnv0#(!{k{CV`92=^*rE4=g^Lh5QS@^y^44Z8C|`tyT7-j% zb0Pk7=BIljSNH~1mMHm`&EThvx>B|1Gd=fPu%V{JRae5$QV@wahEh2SnG_9{e*De5 z^u{CbryrFk@@EnkF->cOyobUW*q~x(Zq4BIVWjvqM5#ZA%FjkmF(*9_2yalaJlI3U zDsj8q_u86Ct0#4y)>=wBv-0uAO`cb51k=|o9K_737XwI(^5#6Ta)u{p?@az~vc-+M ze%!I4O5#3-uerl}^x=Ms9_WzU&%80x^P$@F%z5v7qOS&(Ak|8pLjJzbfa`baY%h$e zWYA(qUT-PjSNk(;K04(kY@MJ?Xd!S9K3X>Z7Y9Y>ik!Laopt2#q6cwHf8!-vmD0Fw zA&Dj-y?YlIOPut=#>ffWW-rm=Yx9^DSa5rXYYWM&sA3MqR{>+ob!D;|iKw__T7hh+ z(SM(|t>g+9pzN@0dZjb*cm0-c^Mc#6yH8!^C9Z+k?o04~PWH8{{p8x@*%Krtbn7Vg zhfZ!2c ia|0kr9ZmZljb&Af^bq{)6-zh7c7;Yo%=IlD8V;ms4OSkhB%R)6uo+L z+uPGz9%+Iys$`sdEFVP-k;e@-Q#fG26-?P6G({6T65j!cadzOkpR7FQT2g#nq>a#U z+;2ZKqhS0i(o$@LFsw}y1d0B`?5LMq>zV5pDF(e;so5HJT*@cgkvDhQ{?6P?dD;jb zo>Xes6=Xzyh_d+*UZw@@vK6N5b#30CHt9@>%B_o(w4oYdabK$Of7NW|^I@J&^mKV+ zI@>3BYkBDQQ*&L 5mS5ec-t#SVy?YCUhW-o zV6S=6`19_Zo!RlH0?DUZv<)5hik4`F2C-W7@b1fb6~RlDpq(2@7Oog}<71u}wgoV` zi8|DmZL4=TUGr_-e!1ggt1Wfe5ZE`2_h3 WnDVFVH*@&M&KE_}7LmgPiRt7+O2!DZM3EK5f2gzi%>o z@(}3C?>~E#Et^TSHEYxFI6;_iF3eJ`KUOjuYBk}AOIbigA`&6p0im%SD?Hr^R^)4@ znn>EFVrxn*6VDt>cW)lImP6Y-q{q4DX)u6` };pE ^i0TdJM5K#|6TW3UCTDBf)XD2E%nt;9C)PCMp8!NY z#zFG1oQx5Yd7CL S+t^cnQ2kKcj76Kp5$ zMVXrCnar}RqHbq0RaA-zF(r;eV2MXJ$l~Gkpv4&BlU3RXbAa)|LaR2?L2f7Z{wj|w z7 LMy()+26<2NI&kDmOmd(gZ?B*UYC=}H_(NoMUjseG$Ula7YE^fSZPJz^sg zGH0^N$*&8E)qrV|6X)7QWbDD5J~uZVF#XuQsc}D1GL|<} ztDyApMGZ+x12g1-c?be|4#32O!95!;Momm7)b!HlLFK^3vpF->mZi;^bqJb`+_zZb z&D&XTnZj8{{T;>E+|-JbTEp@}XVz`MVdR*H_>kN7)DN;$I3!PTM$CM*E2#y>K{Hmg zT m @Z{-t25F*qUc V?@s*j^u&W2n!Q+YPUvdeDCKCXF>m}LFW%=r=D z?3vcRQ;g7Ack)n7-T1n*=NO4;HOkS+WNO*PlSXS&wUq 2b8CBQeHiht~Si6JnlVk+K&{Qp23JQ5kk!&hvjE^40Zh;zl)3?Jy;Ku zMw2r`i2^Iw-Te3|6Y^@z*l1wC9yhz(FvYlwAdUkJ9XYUM#gjV(ew=Ple?~8nb5b^L zv)s(>G YpooD%e>iiP)nf77Pb=#Lt z4L)6*`g!qvdTepiJ&uCZ6{0D&op O)Pv2j>C_HH>c z%ZMJ$w91?wt6uws7U5YwuHAQM6Nnt22~UZ~r=KQf`K_(AEVEcecom*>dC4cOz= z*7?`;^;p#6Xg8@5qsT^^sqH?>V1qHHH*0aXYc}B)&~_za)gd}_LwkgkifW3lW)}{d zQZNp wi( zW5bNH^SM0Cne8Ht%yU|6J9immX4(yba|G>^kDfN~s9!3UWyMS3`e&5cHV$YRk|!%M znv**OAjSe@Cy_^VXjH84#O|qPO-C=i_s@>}rmPwLou)UhSsT?)YK^s=FsqV!#n~Wt@#ZnQ*)gWUJ@Pw1KMW9B`aWUD-!C*85}I^R|Wkt#v4A7 z!c8Zc`~IE_!2O0fSTUpV8~xJBM<+OH?K?D5XChmrD4fa96&CM2Ywp3yHzZWEk1)o4 zu~V;yp0`BxcPjEw2`Y5t%1Lng=~@_ wWR!kM1M_y5zXi!YrBXNokl;Zi<=R0(k z=4hJD8!lqbUU$pmjsq&4NK9-hmM&X3Xs_Ifi5LiHBou8+HbkieW}{E7!eY4~{wwsD zeyC33GZ2a@i#A%P#9SsC=Y|5I@R^6Zbo0+59Ebi)y>>HtH!AuNMRu2{>u= Bjgxte+1{tkKQ6bkytW=4#ek}#4qr!gc;0UHvW{cz$33 Bw5%x!i5Un+;{_S|-9rZ(7dG z3o `{rhL*XQbvGwq++ z=Q~+%irTtYlPVHE@SK}tCLYFL3eM=ZA0ZG;(~eKdZr>u7#vLVF2u@hbK)fwalEW0A z>7hS*iM8p>s}yuUeA*_il;zKKX4#<^q5wxgxW9j9TBa=9DgT`&IKCDVel~0+KTcAR z=Rv-$0!H^msrVfC-+k{prDU7a?$M=1dcVd8+U*3ylfXcP+Dzzq&yhogsfRdg6pG-Z z1ruS$!mOnxkgRN+$J<)5RnGCbMV_Xf8}B7ovzA)^cZ>~L?^Rw(L)dg-`X+QoXaa|P z+NyeCU!vQoSe_A;h197mPgb^+(Lz`cohPf)s!^UIb9YuW%K2NV;Jys=W2XCI!+u!d zjq#UGNpxd}PAxtntgTkZCn28s9}_mnt-q?|CbhA|F)|1h=A-hOvcztFL>3qNKHO2~ zJjrS_q(HyHESfrz9W*AAk(Lyk*X>Tc34KoIIkCYVvWPb9##t5Tt*xKQiGa(q5?uuk z4gr7{k&%IVVLu&y>fth?|LRL`Gqlk@+>JXu`xBK Xi6f$4oq*19D4_BE>As$x8& zjd-0UIOpR&qi3)`XysK@QRPw5n2*?CZ#bOxw(4xyj|i)42KSc*M8ve=1K50MN)50d z**xIyp;myJF+?GaITOevn{lam2CbH(W7X44-f$zH_!-RK8(uyJxL7+V78Kj5m5L!r zV_QfRr~A@%nr)X{o2G8d_PesShIdh#X$oqC vd1Wq)k6)mzBy640DDLC& z9w2H(_i8oiy1N>b?RO;MKdbKw7e_S&X%cXV Py)+gxmo8pRSIl9!cB17(>BYoNZ z_;JbC!skvdL!qr%%Q?anlQZ-DK2clW)b^RMhuywec1-&=ye0{uEfxtjJPbOn)Ce`^ zQQH~WeP;U>%Fkekub+IJ(lyIRS4<9lkpvHOBJ|JLx|h~fEL@uFX3_m$UCDkm#BZ-o zHB6^hdqi<(ru=q>QhY)1i(iK7P`729*kI4an2}tUy8hlacFUpXQq6-{J7uNtf{cS3 zyy}ginnNaIi(vNAzNQXTN`TAXp!^H{njh`wn9oA8qi})RrWB0 6a9Lnga-5{~o_SM (K}se*7vMCf%P~xnfRDx z60X}J$JNaV*;)8?j0|oOM9kO=u0)PT8?jf!j{J(HiLNftQdXtKCdP5Tdm6l;^>L$1 zJs&TquTA*Imm>0f1JB&Mv_1(|_|XUM*W!G-JPi5Ui{@v-Yp~YHk0R{&aC`uP{5lqo z2Lg@se{%^x$i@=JXYSO_lyTTN?jLQ@`e?fbqik_AaojQ`Jfz(V@Jx2R>5(Hbx~61f zQiF2iZh_in%pna=N7Ge{wAaDw4n0U@aZMC8M5H)#{f_;0I8xJkbUhkg?%ajue NkY6mbYaLlO_qxz3gAm0ig(6_LQ1rfIs0 z8=7HYm}Vp|34Hz&Q`aSSzTT`jBXXYp8Il~DH^G#+>6F@g%`(lptOg(*5xs=bF10pVs8GXt4b7`7-Xu}0b`T9!6 zP+J7oC2tu>j%G5A5c78rpBFZ9^`?3;;=X>D*^I60y339{pswv~M$eUnS<&w83%NZ< zk(!imp9q#@jc}Rw_&u=3$xhbv3l=q!fpe_7Mfnf|y65+#nodumu zscDp-T5{v*%#yx6Wfk)OXj1Q=YKLt1;$#*1kc)6rpIs{cNW*1bry#!`3^9AdNaRk- zkSLQW5b_`dWjAeSI1Q;-Q%sYme!Rm$dPU{@92>YL#0%EkUVks&xxa~v p)56xipzvyU3AKqLJqeGGNm~@@yn>TZEbE)8E(jtce97j6}!A~NT zr)Ls9wnhydgm}`0@QkxevqUqfj6}~&iM%(EQu<}lD_!ZRZum5t7F{|XHD+>188a~d zO613+Z`w?5Jg)||PrP1YP0yJlDY+%my3tv)oP@=>-c-P#Hxx}J)SZm!RZW~56WhAw z!#wYqj{`!cUS)>-o1HRBc`4#MPE$s2n0rK!Y*s@p~b Qyg?iUfIGsW}u9iT^ q6rSuLAZdc;RNfB#ZmfHMk)kNPk$2qik zqi4^B5K%iai!YI3yN*XQVKLHhpjh2D_+jiQ98e<=^xX}liPn|iee|+wpmAY=St4?q zO+A@|tv6U?%lx0%_1=Fc<2tBE$Cp&fr!@bmc1&QVCF_q9d jw*4bSu?w_@p{fp0_j16G7)4q&Sv<`GG&oAAV_v6f|r_`$(r@S z(rKYy=k9EW>W3DNHqoG#H~k&V)LGoYUso80gB9P`)!&pdHjip$U%x;UxI2 #eFk%&rE!KgY{obz#WE_DN? zB!K_FPQfqd4<*E6L9vn&eLT^#_v^W#Vo?$IP)WBGD4Sde_k-`#pSHqdkAZPigh EOBu7td4 c(Je@L?2wY`%KPGy3eRdfBLZ6K>4wsJ(;Px!C zj1PXZJgxW*+n;OA-konw2qN;CkUJxV2GUR0=qg8XGMatJx{g%*s(e4g= OC(lH7rYRfEfEci#}^At_3)Yir{a$ne5SFBpGBBr`zg;z>t=||O3 zO&a|y;HWxjktoCF6O;P#GWLHjQKPftG*RWoaKFl4Fsq~;P?ULQ=0C%xr6Py))rhea z&D9Hosz=RDYDN6+WZ3AskBwYR6%%I>Qlmvgmr*d3Bqct&{3Fq`LuD8aGRL4vs9sf^ zUY!a?qmr(TW8U%|Y`?ttK7SnK^YU q_6jF{3 z$T4ikoY~B3Uj@HKIqLOSxr4rcs~mJ~a%ZZ>FdI0D@T1hOW(9g{F+rg3v3c`dyX4xE zyftk32vbX!#ZvWT=zm)EIBetVG1#e6HJ=v_sNP18;Lm MRYPY&Imy5lDTBQzHLYq%Dphq|e|JXD*~cr| ziCRMOe^TnaVc@+sNHHaK;#^Vuo6FU; KAEJK=*I0PLj*g)Bd*taxVRFOo zCH?Qde%m~H#&HW=QFw+Fidof59$kIxTJM|IpBpzs!ljE3!SSptKerq0XrudEks71+ zeAN9N78Sd%P3wL`HSwU8ly@{PZs^*opqk<`*8S3)-?7i`@%wZgEfcnIdS|a5gm$_* z8POBQ=LJ*NJXj@rE2w2vtm}o&r+lWoTkCs2HNAgQcgj4oo=36W7^dP8_a4dIcP89S zRh|*b_o=!pSX1*Xst=S-qldKu-*1DCo~w=L-Jj3Q#GcLW+v_SbZO0u+g`{VhQHmSe zg+7%v=V@`NCJ4ftN@}{Qo fr?Y!&(@Sra(aP&AEK!BCy%=-%3fR3K zcSxVr+ - zn VReY( zy>JkVO)%fHjP5pS>60eiQ%|+(-KA^4BVlDWpCp*O$&f+`qKCVDRNR>5onrKVp+BaI z54jjr@(=R_al5Sz+w$N|t0jp)M?oqZsoY5zWu&j3ERw>u>oJyCzc-mtUs|6KQj#5N z X$P}E1w$I;u9al92SpK`))A e7N61m@$2B$>`&$O#w-$y!M-%rr2PMFO5aXwN@FbsJ=;od*Nz zdzjPoR#YU-K1Q=DP-XZd97gyiDB1Y6+Y~oA3+SS!SvGc=hv9HC$Y*Ul+u1KEr1W~Z zuNaA^YDR=kdOj+CrzoMQN~8GZMJ4Ahb`7YXD-n_T{-IimsH%qYh@&Z#n>0vpwe2?A zZa}=!I?a2iQIE@;PUMc6JQpFHL D#^LKF{+j3r!#a)_;5XSdflp9z1w8jDNJ%@ ztMc(Qy~`HW`V3tC-Tx$LaB7gorJMMpS${-u;a;3FrTVgi^YiJ;1L!&{w41ny+c^0; zxbOX}ZtUU2I^uxblrNfHLKP>^#r^pF|3-aHdN@(7tZhYW=DLFJOmO#2c~LcFV<#qp z!qF&qW9oZ|qdU(29uJU{9l3LB1c{jvkm%vt4IBLb4^8fhFx)qf3v&;j8H-t|s&1QY zAH}ygV+7cX99>70BoZ(rd8sDPpx-Y&V7D`Tap`)#W9Xo}>QY_Uf=M%T`Tz;7e>8jC zl&2lUfgY#CY-%)6+QfjO72deMoc;Jouzs@z0D {|k6v-lcBcJ!$;Z{ H9oS9LrPjvqI*! 6V)-Xb9^aT z-@Ne5-6y}J_$}(L;n)NCG7ntbu)_0&Mmg*`pr_`@){zeB-Q6T4cJ3l2ZgP=f9cbw> zPWm77W7#3MFnW+A%hsPG%k*t_&795$OQ)6=t*;?pdv!(JQ0mwF~&qovfBE5At z?tKl;d`+~@Ru#&tL66qw^*(0dp8qIfKW3%(=R!2{Ibhwhz(P0~c19cr(FM+W_R}mx z+9C6LUPLwq#=?`#u5L)S7)*MrTY38#Cydt&d*2X^2;MH*-$x#&X9;kIBYaOd*Q@*} z7p&QK*M*0ekIx6<=5pyvX>m0?YRCw)5E*L*57_VMZT}(msef2*`l`6`e%yIEbX&X zBgkpHk79nl9LOhR-GwM%c6usSZ0$yKqe)nV b&|MZ`?yX7Ju@&|+VsZTRB?)O6t{)cXiIR2qAYnLk+hh?ri9 z697a_L`6_k2?S9ALPZck6j2jQfsmL?nK5rhqlJ*w(@1Hw&ss1m(i3*Doa8w(3XT+& zBX%-iHH~A 7X;`JFjCnF*EF|>|nECvN ze;*I~f44zj$=4(uq6V`}hPeFem`WlAKX=j&tYm|PE_3GkvF;a#KU(~k?|y0CdCA|` zu` _+Uf5T;3sRhjg^O^Wu)oyDe<; z^7itkI*ag;ja+Ro$G($U#^Q$kX%#YCw@wuI#Us&GDoOA)AseLoMoO|*IHVyuG4pLs zT)A5r$j?lNz8T!^!iBlMjm@N5Q6sI+%1(rbMI@KvlqS(h8475$Q`s7i$(Id!vkg+5 zp4+Bp)wwm1Q#$(_%tVEurM~tH<5YeMz}jf!#evpuSx|H<#U`~Gh3`y45{m5j{O*!l zAzh9>3jL$-u2)7kcJm0$65PqD1_rr~@XgyNnMxQJL+b8bJNs#)3Y5E&H}vC4{O9X5 z&Ns@1%uHgEE5{IdVo~U)MYK_mI%uu^j1$wJx><-ZTR8<8=^k7OGDt)&9dabnTl5%( zOW^jes`gE{%M&HI^Q`A7pM?p3bd$62&(6L*Uz@q2deO4b`8J73K&VX* 0t1XoA+stq8n0q!>cM=U6J(TWmt7sl9I z!f7_9xdc*2E7+|wEBrSl9aayYHcyC4^huzT&AMY6M-aVNl2ec4!+G `Q1v_wX0McwBzWN zdMYq@^6340YRDOmn!6+_V>_t=lk_GBVi`LIT|d;)ZMa$qyqge3)%s&>o>@{-pS{_r zra `{ls-4d~uq-}>c3VA@&HG_QLuscXL=ql#}^vj DLeFYS*0bQ-=~AKG$DZqW u^a@IzyXfCIIX{gPya@3rl#Le2UOnn;}9Jx0Zx@u%>vJ{Kn`RJX| z{c4Ddfd^2aaUaS!1cMHj!Q4^ahX=t0_V9li@#n?AlbP4_zOgQMBLMI(GBLdY958U( z3C=+z5G74$dXSO!CX4gm)1znex6rS7nNf8syra-|NS{XbvNgoxg{GJ+j9f(QaJgH` zTm^9(e;jX7f-< vSqch& zM4pVj@#TT^y!OF~?7Y7pag*<#jnVyhGUHVQ%l(JCMSeB;y10@%y@6kUdZ0fg+K3!P z6w>25EKtv=V>0zY*ur2fL%+C#N%Ic%>d%fa`K<2GM4b30qs MLRV(bSxFF)kWWa zQY+ZtmPZHat@e^q%5&m;-#MFm@9r4Kp$8QElM^?iaPB*BoW}^(T2oWdREEFKLqcY5 zWA{|%Ja5VL*o?<~G9H0MH==2}RAhC%YE=lm^MAp3GtXRi>i32_R3Dn5$Ckw>Dt^zY z9z5ek2+|(}_IqEjQL-mnV^doet6>!AGM5_X%0m!wXZI=yfqNRJRbdCFLtYo(=PbLA zkv?zlM*xY(CcjL`sxLwu?l?s+lvMoZ@FIo%PUITr%VZY=;kie1Nb}I_wQ&olTDZCI zFzT}!4LyoY#-?OW59hc#p5_-9IxjkP{rB@O{r*+v{R^3+*QXB* (=sG$bT2WxJV*6Hh zH#xO(3tV@IjO{654~CvHzB}tIPltb$_^+Qj+y{=2hZ9#i+3<|Uj``x@p{>l#r|D`@ zMhN7eH}G@#Xx*D||2Lv~@#|)nO3^udH8gcZeM}@g;_DAPIfQ2k?0$tOR5%G2<831? z$Rh%{=V>{XCkkr`F_AjNWf8=Dj1c (t#2 zIIQwzqs+YbqrDS$bdF7il=u|K0QJVVbJh9E5X}9)IO9u+-vSV$GtK5>B@xE5&yT zj$=_f^U+v%!>B?kiSL7oJm-CQ>8j}0g~CTQ*+MiP5K+Gd9H%aRHS*%P>BCEofKSpl zi45Z9Xt4<8G3P@icl6N)6nk+f>_@Wqvc=JZCr&Et@}&q}(ZQ}Z?P8^!r&x{UmmyjY zrR>^U-$`upj1`=mYG6tQ3H!{x^!o3MJLtV~I6gLa#x*sY@7H!HHPfl<#C_nY)?q#l zVrnIQZum3SwMHWso=fj2vqunZdYG-6L4?-NcZ1#acN-s4ZgQ!rC6B_H5lC>jYh7eL zHPp~+Ug^T2!9-6sccSZ>3$IC?t?s#X#^X6#MdPuJn-Fz|^9wkVV&G{CCr6^qhucS; z@O{b;*)~}cLI=QtPa&v|V#~FHL`Z pf4;A)oAanK z+4S&P$dSg`#09 ZhCL50hSbzD@Y%Z-|o^+dC-KNy5TQxs*77 z=-FROE@S3N-A5l1dy~h5dclb>ayU;nJk{**Z#2pKM}oZi@vhF_9Ip6uH9YVcRPx8% z$ZF*X+N$I2SXXGBK)I)3e^({Pjb|`-J-k}=!I#8OpBvB3>v|cdHvACgNgC+sWq9n; z-B-cPccTNQ9duQ#^B&DtOa$Z5 nCg53gPGnF?Q zBBQTd9IlOqk=i(2>zmHz4YA~0#GaPTt9}gdtvJq7%)SwUqmq zLN3+8$< +GK?8MJ1_ DPleij+W z5YBY_+we(?uaff(l6X_6zI8RF7OyDlB z5nXHkzsDYo^SIpDrJHO+lzMlm#Z&a-%9Ws3Qwbbm#Tn51-Lu$P-kDPh 8z~Gr w)W`dF&vP{xuj!ac(_!tu@QzhuSIgFJuh6cP&kuk zJ;lh%m_<$y+e;Ki^wg={yhd5fo(5f%oX!{;sm=vc7D1s|ElC^76Gcgfi8U8PEKKHIPGpl5 zDO1_UtecAK2snAQnLe61i9*DQC!p=Plghdh;w^1L63QdG&|!QH*De&34?d{EetczV z8)!;MOuY*YI<`9vIPIDBJcf=xwesL2R^KTS!!?0faZNQ9-y>Y-Dh3-nNZkeTCoJzi zR(amO9H}LY+H&uSkoJQDxa1B{l{1cayv-r7!m}i6uSq@!c}S|xvA+~sF{-ueeFSDE z3(?rftFyzVN=cmSK -GY5()ZdOuL5=OXmZ^n2EuA1D6-ZbCZR^m0wq_cUJ1S)Kpz0Ef}+o>q} z8dWBRCg*_qEvnyn*~wvmPL4z;t?K&DG&>GOD-^t+Y%s?YSFcT}c|2(*zf7^|(-y&} z%6BB!!-G;9d-lFJvmy69=8cP)O}cR(rqo~8b}7IJ?lM9|Pi}r9#I1UFGiRPX z-E*zW;%x1*2_}@eLZ25f43lCakdvo{h#METWeUst-yGI!=bn9h z=b<%s63L}3kJ9;CWa3!sZ%%fM_;lR%a%)D{&1)kOYi7>%f44IqI}1k>MC;;1oV0yR z+~-(fqPR SC}Zw;7A>*b#>Bh zQ h9c;v^!(Z z^Cv4UK^ikV4a<1!VQWJ_oi?}7N_JzMydaRF$4tqPXCIOi*39IQx0{ql{p8%UsxE0W zFg}J520|hlfJkaoK*3zD-uV~L&$q3YkBxUJ7L*P^_#N#7N)3^E%J@e+NwhRqC3>#O zVJY>#Gm(C}EVo7)Wq`35V?nS+T{*Xqr@Wq<7}A6`3E0~X5-}4YkSp#y!9bPitG@Sh z7Vj~d$t^3CVXaJ?+gg7^f_Msy7JQZQ)oX&+$6Aa_3}!zOVJ*#^Np#{-Q!1A-@xXx@ z-RjV5TexH$`83h^vG7vuM?>765tGtcBkau$9XmE>2YRh74y^8i`!lwltBH@#hTNJ; zgd`<%-&f{1#jWl%+Hdi1Y8HCm_Ne#gR<#Poa^@6bmJ+M4z`gdL89R=rl1^McOk=tr z*O#j=CFNwsjb@Eo{1k0wxykqogp3yo9eO$E7-p?lq{>u06UioTy)t%AhED0mt270+ zws>gar!j*}dG+O}Z91XGSCk>EcAfi;{OrH$LrVW zpBmS;Ga&Ch% VqbKywuPuj<-GS` z8;TtA7?n!LbTNdhQN@IE%sAtxq{HywH9_)J$DC>@U^$z+aPsmzUlTd-%K5LAHSRf> z=KOZ2M|aw|h>aG>mM8 2{irMljJy)j$z7w41j zv%)_PT@c|saq~(*%*Ul=;V#PGo(ByUt)?=`@f63BH{lN_W0c4hTqRC!%#226I+{8C zGd@;gSbF8 9xFYpH3S}Ro$KaRpF7ZJh& V zl6IFR9vvgJ8Pf+M(wVTj1yetgDrOd9%|zNMF-7+9p%QmIavhBpYIJHf(B_V{m6P>j zSeDJ4@bcf`$t7m%j&c%=S-zW*h;-PD{>u(2!tp#*a8C#B>cV2Al-OU= 9f48o>!>;Kc`-O!4y)aZvDSZFsFI$X-#;o}6$!T0v+W>Re38!W(X= z%9?QhVxy}3v%1~a122JzVvk66GhPt(eg{?MTj{0y5l)+mQN9_{;~1B0*(tu#Lbg#* zDC5JA!AFH-e**0IZ^fMJOFJ-fc=5(DTEh 8uMdiBr)(r?d?=1mj;)>S=;?^V@5hb%B;-V#^r!9k zI2`1!$G6QJg&3&p!#VMCQg6o6h7-)+Ds;@SO4gF#dZr_{PTXu+tJ|itGKL?xzZIl? zd_0q<^sJt4tIByl!4_8?Js8hQBcw(b=5w{(^SUMlc@o0}RE~)%d)f7x!fPXaTOYEvGj!uc3ubBbW1 z$tH7o={A{u;tjFJ I; z3!U(nw*$AQ9u13<&P>gCA7We)L`%;G^9dMNNY(ZA6^OY+Xy*uanyEpWOmQWrJ<;T$ zV`0Xsp2BFp-EdI$oqq4nKMnY^>aUhVvdvf|?xoFM2b9eXW0qD`?C86AbZx0@dUcEl zZ7)LAGtOFd!7ceiL(H!YuQ@#%MT{3})zx_^n44Gg7|zsN)OQ%qd);8MDNk|uu&(}f zlVwZA|C<>`r{JZDolqt=EvHe rfm6{Uihv@v`(E+QT%%!e^`ntTDDQ`| Jm2goHcwB-`R&j}9)q$$rHUKp}XOu9?kTjQK;)MyIuX z@#mR~AKl=ZrZ*|1+ezUU 5^QUJDI?jfZd_PFv1$4% xsb`!$_?^Z$=JpLP z`dHE{JfVzX?< w4~dOdB!)eDnn4~e3U$@jsX>ouoTQ8%QV>stQF{!v?w3?z{Z*lhm9 zzfTQDq`ea!nI#WIi@AHL`b)eiR~C*smfZEh6fKk1^kTK0y6n GD?3{hZ13=m z6P@?P_M!KZZI9jh^YX?o2lq9Gzjmnk=3~L*pUms%eT{!YOZ23_YD@N{zkMaD_-Yz^ zIyOmp`o3CpCD7(Az(VSrVb;8k7C!mIcr4a8O?2?oFe#ihQ%x _jH1Z(Z01QOu8wJ&sPmBu4=c|MV)zc|bXS^^pVuE2 zeK+DwuPg7s mQBfpG0Kg&y}lT{K|c9#oqo0#gs`%oe^ {bfIo?VEbd!i)(y{xS4$0@~x9FTy$`VNo2HI zDt+G-Q-t!idl+G^v4HX%(HJT-)=$Ld&t32I!1<=Yck-W?q>T-zyf)}G9s2GuZ0L2) zSE3RnFq!{1WFN5-5QKy(vp0)|C^zDaF|C;7QUpRlS8&&ZQj9TA5g#v F5; P(xZtE zBTbyQ;#>-FMu$=+_N&x#L81=t;MmXd&$bzJx;3m8$#e!n0XejtAiyvP?vaSqqY%j< zB!V!yo=2WU@bNd~ToU03gMY=>>gUiqD397-)AIPtsXkA$IM>|!UT< b zHc8OM#5FhYgR1tocVz-g1jiK7Od*+}+{n)WoL+K*cX=ea$?C(mti#Fbr4vyXSRrM( z=}LB^jeUFthXu1MhW$}Xn}fOT!{?rL9Fkj(x6N8CS?NUODEC)2=DGE8%#2F=T+D9d z#L|=C_^M!>BE+2I%(zha$@nQ=qS0Dy$!%H?P8wCJp9I>&<{-UoJupjYVP?3~skR0a zrI}Uv+LkwGeQHkjPLZT*+q84Y?eXt? )8R`9RS(9nxPHFOBQc1vvuVV1z;e_|I;>Zx_ zkkc;d4#oClE7IF%^G9d09!Jho+@g26d?%4l=a0795_wBVr1V0e$A0+?7=5L%gXO%F z!aoxxWuc;)6Se~qG e4-#- zB?{3(KSHC(3`0X9-7$&+Ag5p{NPj|B2th(pP<(fCR+?0%gbG5MD8%9#5TIIu1*JlT zpr9h4s%b(=DJZAeVonjEDJW k{m334m2|Yr{ln}B?Jb; &GWB*a7nyn^ z9RI2M+&sN&`rQ=#8Ol Qp^zmwn;gv(gd9;G?+N9G5X@Bd zB};n7ku oyQl4I`ore >Ow!xZqE_C3JmB;^W zQb-BY0EpLdneP_{l(VZ+3INJ0Tn`hFJb&x{-%)`j;O+m9U+;=+;1}<6xiMu